数字图像处理笔记(上)

简介: 数字图像处理笔记

一,绪论

1.1, 什么是数字图像处理

一副图像可以定义为一个二维函数 f(x,y)f(x,y)f(x,y),其中 xxxyyy 是空间(平面)坐标,任意一对空间坐标 (x,y)(x,y)(x,y) 处的幅度值 fff 称为图像在该坐标点的强度或灰度。当 x,yx,yx,y 和灰度值 fff 都是有限的离散量时,我们称该图像为数字图像。数字图像处理是指借助于数字计算机来处理数字图像。注意,数字图像由有限数量的元素组成,每个元素都有一定的位置和数值,这些元素称为像素

图像处理止于何处或其他相关领域(如图像分析和计算机视觉)始于何处,目前人们的看法并不一致。在本书中,将数字图像处理定义为其输入和输出都是图像的处理。

1.2,数字图像处理的起源

略。

1.3,数字图像处理技术应用实例

目前数字图像处理已经应用于各行各业,在本书中,为了更简单表述,将数字图像处理的应用领域根据数字图像源分类(如可见光或 X 射线等)。目前最主要等图像源是电磁波谱,其他重要的图像源还有声波、超声波和电子(电子显微镜中所用的电子束)。

基于电磁波谱辐射的图像是我们比较数字的图像,比如 X 射线和可见光谱段的图像。电磁波可定义为以各种波长传播的正弦波,或可视为无质量的粒子流,每个粒子流以波的形式传播并以光速运动。每个无质量的粒子都包含一定的能量(或一束能量),每束能量称为一个光子。根据每个光子的能量对光谱波段进行分组,得到图 1.5 所示的光谱,其范围从伽玛射线(最高能量)到无线电波(最低能量)。

网络异常,图片无法展示
|


根据以上电磁波谱,可得到以下电磁波谱成像:

  1. 伽玛射线成像:伽玛射线成像的主要用途包括核医学和天文观测。在核医学中,方法是将放射性同位素注入人体,同位素衰变时会发射伽玛射线,图像则由伽玛射线检测器收集到的放射线产生。下图展示了一幅使用伽玛射线成像得到的人体骨骼扫描图像。
  2. X 射线成像:X 射线成像除了应用于医学诊断,还被广泛应用于工业和其他领域,如天文学。
  3. 紫外波段成像。
  4. 可见光和红外波段成像:应用领域最广,如光学显微镜、遥感图像、气象监测图像、工业自动视觉检测等。
  5. 微波波段成像:主要应用是雷达。
  6. 无线电波成像:应用领域如医学等磁共振成像(MRI)。

一些图像实例效果图如下图所示。

网络异常,图片无法展示
|


网络异常,图片无法展示
|


1.4,数字图像处理的基本步骤

本书中的数字图像处理步骤如下图所示。

网络异常,图片无法展示
|


1.5,图像处理系统的组成

略。

二,数字图像基础

相机成像的原理:针孔相机( Pinhole Camera )通过投影变换,可以将三维相机(Camera)坐标转换为二维的图像坐标,这个变换矩阵是相机的内在属性,称为相机内参(Camera Intrinsic) K。

yaw 航向角,pitch 俯仰角,roll 翻滾角。

2.1,视觉感知要素

通过这节内容了解图像被人类感知的基本原理及人类视觉的物理限制。

2.1.1,人眼的结构

下图显示了人眼的简化剖面图。

网络异常,图片无法展示
|


眼镜最靠内部的膜是视网膜,它布满了整个后部的内壁。眼睛聚焦时,来自物体的光在视网膜上成像。模式视觉由分布在视网膜表面上的哥哥分立光感受器提供,分为两类:锥状体和杆状体。锥状体视觉称为明视觉或亮视觉。杆状体视觉称为暗视觉或微光视觉

2.1.2,人眼中图像的形成

数码相机中,既有固定焦距的镜头,也有可变焦距的镜头,不同距离的聚焦时通过改变镜头和成像平面之间的距离来实现的。在人眼中,晶状体和成像区域(视网膜)之间的距离是固定的,正确的聚焦是通过改变晶状体的形状得到(远离压扁晶状体,接近目标则加厚晶状体),晶状体中心和沿视轴的视网膜之间的距离约为 17mm,焦距范围为 14~17 mm。下图所示的几何关系说明了在视网膜上所形成的图像的尺寸。令 hhh 表示视网膜图像中物体的高度, 根据几何关系:15/100=h/1715/100 = h/1715/100=h/17,得到 h = 2.5 mm。

网络异常,图片无法展示
|


2.1.3,亮度适应与辨别

以下两种现象表明人眼的感知亮度不是十几灰度的简单函数:

  • “下冲”或“上冲”现象(马赫带效应)。
  • 同时对比现象。

网络异常,图片无法展示
|


网络异常,图片无法展示
|


2.2,电磁波谱

更详细的电磁波谱图如下图所示。波长常用的单位是米(m),常用的单位是微米(表示为 μm\mu mμm1μm=10−6m1\mu m=10{^-6}m1μm=106m)。

网络异常,图片无法展示
|


  • 感知的物体颜色由物体反射的光的性质决定。
  • 没有颜色的光称为单色光或无色光
  • 彩色光源的三个属性:频率、辐射、光通量和亮度

2.3,图像感知与获取

将照射能量转换为数字图像主要由三种传感器配置:

  • 使用单个传感器获取图像
  • 使用条带传感器获取图像:如磁共振成像(MRI)和正电子发射断层成像(PET)等。
  • 使用阵列传感器获取图像: 如单反相机和手机相机。

网络异常,图片无法展示
|


2.3.1,一个简单的成像模型

如 1.1 节所述,我们用形如 f(x,y)f(x,y)f(x,y)二维函数来表示图像,在空间坐标 (x,y) 处 fff 的值是一个标量,其范围 0≤f(x,y)<∞0\leq f(x,y) < \infty0f(x,y)<

2.4,图像取样和量化

多少传感器的输出都是连续的电压被判刑,这些波形的幅度和空间特性都与正被感测的物理现象相关。要产生一幅数字图像,就需要把感测得到的连续数据转化为数字形式,这包括两个步骤:取样和量化

2.4.1,取样和量化的概念

一幅连续图像 fff,对坐标值进行数字化称为取样(或采样),对幅度值进行数字化称为量化

2.4.2,数字图像表示

在计算机中,数字图像可用一个 M×NM\times NM×N矩阵表示,图像长为 MMM,宽为 NNN,矩阵中的每个元素即为图像的像素。

网络异常,图片无法展示
|


2.5,像素间的一些基本关系

  • 像素的相邻像素
  • 邻接、连通、区域和边界
  • 距离测度:两个像素的距离,通过欧几里得(欧式)距离计算:D(p,q)=[(x−u)2+(y−v)2]D(p,q) = \sqrt{[(x-u)^2 + (y-v)^2]}D(p,q)=[(xu)2+(yv)2]

2.6,数字图像处理所用的基本数学工具

2.6.1,对应元素运算和矩阵运算

涉及一幅或多幅图像的对应元素运算是逐个像素操作的,有因为在数字图像处理中,图像可以等效为矩阵,所以图像之间的运算是可以用矩阵理论执行的

2.6.2,线性运算和非线性运算(一般两个图像之间)

网络异常,图片无法展示
|


线性运算更为重要,包含了大量适用于图像处理的理论与实践成果;非线形运算范围比较有限。

2.6.3,数字图像处理数学工具-算术运算(一般两个图像之间)

算术运算常用在特定的天文、医学等领域,将两幅图像经过算术运算从而得到更为清晰的图像,两幅图像的算术运算表示如下:

网络异常,图片无法展示
|


这些加减乘除运算都是对应的像素运算,算术运算一般有以下应用:

  1. 使用图像相加(平均)降低噪声。
  2. 使用图像相减比较图像。
  3. 使用图像相乘/相除校正阴影和模板。

3 种算法运算的实际应用效果对比图如下所示:

网络异常,图片无法展示
|


网络异常,图片无法展示
|


网络异常,图片无法展示
|


2.6.4,集合运算和逻辑运算(一般两个图像之间)

注意这里的集合运算针对的是二值图像,或者图像中所有像素具有相同的灰度值且

假设有两个集合 A 和,在数字图像处理中常见的集合运算有:

  • 交集运算: C=A∩BC = A\cap BC=AB,满足交换律、结合律和分配律。
  • 并集运算: C=A∪BC = A\cup BC=AB

如果想要知道一幅二值图像中的两个目标 A 和 B 是否重叠,可通过计算 A\cap B$。如果结果不是空集,则可确定两个目标的某些元素是有重叠的。

2.6.5,空间运算(单幅图像)

空间运算是直接对单幅图像的像素执行数学操作,分为三类:(1)单像素运算;(2)领域运算;(3)几何空间运算。

2.6.5.1,单像素操作

用一个变化函数TTT改变图像中各个像素的灰度:

s=T(z)s = T(z)s=T(z)

上述公式对应单像素操作,zzz是原图像中像素的灰度,sss是处理后图像中对应像素的(映射)的灰度。

2.6.5.2,领域运算

SxyS_{xy}Sxy 代表图像 fff中以任意一点 (x,y)(x,y)(x,y) 为中心的一个邻域的做标集,领域处理后,输出图像ggg中的相同坐标处会生成一个新的像素,该像素的值由输入图像中邻域像素的规定运算和集合SxyS_{xy}Sxy中的坐标确定。假设领域运算对应的是计算大小为m×nm\times nm×n、中心为(x,y)(x,y)(x,y)的矩形领域中像素的平均值,且这个区域中的像素坐标是集合SxyS_{xy}Sxy的元素,那么其对应的领域运算公式如下:

g(x,y)=1mn∑(r,c)∈Sxyf(r,c)g(x,y) = \frac{1}{mn} \sum_{(r,c)\in S_{xy}}f(r,c)g(x,y)=mn1(r,c)Sxyf(r,c)

上述公式中,rrrccc是像素的行和列坐标,属于集合SxyS_{xy}Sxy,图像ggg是通过移动坐标(x,y)(x,y)(x,y),使得领域的中心逐个移过图像fff中的所有像素,然后在每个新位置都重复这一领域运算得到,对应的示意图如下:

网络异常,图片无法展示
|


简单理解所谓的领域运算就是对特定 roi 区域的所有像素,做特定操作,而这个操作就是以指定位置 (x,y)(x,y)(x,y) 为中心,邻域范围为 m×nm\times nm×n,对这个范围内的像素取平均/求和/最大值/等。

典型的就是 CNN 模型中卷积层的滤波器操作。

2.6.5.3,几何变换

几何变换即改变图像中像素的空间排列,由两种基本运算组成:

  1. 坐标的空间变换;
  2. 灰度内插,即为变换后的像素赋灰度值(灰度图)。

坐标变换公式可表示为:

网络异常,图片无法展示
|


最为重要的是放射变换,它包括缩放变换、平移变换、旋转变换和剪切变换。式(2.44)无法表示平移变换(需要在公式右侧添加一个常数二维向量),所以需将上式升级为,如下所示的齐次坐标变换。

网络异常,图片无法展示
|


常见图像几何操作对应的仿射矩阵 A 、变换坐标公式以及示意图如下表所示:

网络异常,图片无法展示
|


三,灰度变换与空间滤波

空间域指的是图像平面本身,空间域中的图像处理方法是直接对图像中的像素进行处理。空间域图像处理的两个主要类别是:

  • 灰度变换: 如对比度处理和图像阈值处理等任务,直接对图像的给个像素进行操作。
  • 空间滤波: 如图像平滑和锐化,对图像中的每个像素的邻域进行操作。

3.1,背景

本章中讨论的所有图像处理技术都是在空间域中实现的,所谓的空间域即包含图像中像素的平面。空间域技术直接操作图像中的像素,而频率域技术操作的是图像的傅立叶变换而非图像本身。

由图像的坐标张成的实平面部分称为空间域,xxxyyy称为空间变量或空间坐标。

尽管灰度变换和空间滤波的应用范围广泛,但本书中的大多数例子是关于图像增强的。所谓图像增强技术,是为了某些特定应用对原图像进行加工的技术,不具备通用性。

3.2,一些基本的灰度变换函数

通过灰度变换函数TTT将原来的像素值rrr映射为像素值sss。灰度变换中常用的 3 类基本函数是线性(反转和恒等变换: 输入灰度和输出灰度相同)函数、对数(对数和反对数变换)函数和幂律(n次幂或n次根)函数。

网络异常,图片无法展示
|


3.2.1,图像反转

假设原图像像素值为rrr,灰度级在区间为 [0, L-1],则起反转后的图像形式为s=L−1−rs=L-1-rs=L1r

图像反转实例效果图如下所示:

网络异常,图片无法展示
|


3.2.2,对数变换

对数变换的形式如下:

s=clog(1+r)s = clog(1+r)s=clog(1+r)

图3.3中对数曲线的形状表明,对数变换会将输入中范围较窄的低灰度值映射为输出中范围较宽的灰度级。例如区间 [0, L/4]中的输入灰度级映射到 [0, 3L/4] 中的输出灰度级;相反输入中的高灰度级被映射为输出中范围较窄的灰度级。

3.2.3,幂律变换(伽玛变换)

幂律变换形式如下:

s=crγs = cr^\gammas=crγ

3.2.4,分段线性变换函数

  1. 对比度拉伸对比度拉伸可以拓展图像中的灰度级范围,使其覆盖记录介质或显示设备的整个理想灰度范围。

网络异常,图片无法展示
|


  1. 灰度级分层

有些图像增强应用的目的是为了突出图像中的特定灰度空间,比如增强卫星图像中的特征、增强 X 射线图像中的缺陷等。灰度级分层可以基于两个基本方法及其变体来实现。

  • 一种方法是将感兴趣范围内的所有灰度值显示为一个值(如白色),而将其他范围的灰度值显示为另一个值(黑色),这种变换会得到一个二值图像。
  • 另一种方法是基于图3.11(b)中的变换,使期望的灰度范围变亮(或变暗),但保持图像中的其他灰度级不变。

网络异常,图片无法展示
|


灰度级分层的实际应用例子如下图所示

我个人感觉这个应用得根据实际专业场景结合起来使用,难点在于灰度级范围的选择

网络异常,图片无法展示
|


  1. 比特平面分层

略。

3.3,直方图处理

rk(k=0,1,2...L−1)r_k(k = 0,1,2...L-1)rk(k=0,1,2...L1) 表示一幅LLL级灰度数字图像 f(x,y)f(x,y)f(x,y) 的灰度。 fff非归一化直方图定义为

h(rk)=nk,k=0,1,2...L−1h(r_{k}) = n_{k}, k = 0,1,2...L-1h(rk)=nk,k=0,1,2...L1

式中,nkn_knkfff中灰度为rkr_krk的像素的数量,并且细分的灰度级称为直方图容器。类似地,归一化直方图定义为

p(rk)=h(rk)MN=nkMNp(r_{k}) = \frac{h(r_{k})}{MN} = \frac{n_{k}}{MN}p(rk)=MNh(rk)=MNnk

式中,MMMNNN 分别是图像的行数和列数。对kkk的所有值,p(rk)p(r_{k})p(rk)的和总是 1.

下显示了具有 4 个基本灰度特性的图像:

网络异常,图片无法展示
|


从上图的分析我么可以得出这样一个结论: 即像素占据整个灰度级范围并且均匀分布的图像,将具有高对比度的外观和多种灰色调。最终结果将是显示了大量灰度细节并具有高动态范围的一副图像。

3.3.1,直方图均衡化

1,直方图均衡化所用的变换函数如下(推导过程复杂,跳过,感兴趣的可以阅读原书了解过程)

网络异常,图片无法展示
|


2,直方图均衡化的目的是为了生成一幅具有均匀直方图的输出图像。

3,直方图均衡化效果示例如下图所示:

网络异常,图片无法展示
|


网络异常,图片无法展示
|


直方图均衡化效果总结分析:尽管 4 个直方图都不同,但直方图均衡化后的图像是很相似的,因为原来的 4 个图的基本区别是对比度而非内容。


相关文章
|
3月前
|
算法 计算机视觉 Python
心得经验总结:数字图像处理
心得经验总结:数字图像处理
22 2
|
存储 传感器 XML
遥感数字图像处理教程复习整理1
遥感数字图像处理教程复习整理
274 0
遥感数字图像处理教程复习整理1
|
存储 机器学习/深度学习 编解码
数字图像处理(二) 数字图像处理基础(下)
数字图像处理(二) 数字图像处理基础(下)
159 0
|
机器学习/深度学习 存储 人工智能
数字图像处理(一) 绪论
数字图像处理(一) 绪论
158 0
|
传感器 算法 定位技术
遥感数字图像处理教程复习整理2
遥感数字图像处理教程复习整理
118 0
|
存储 机器学习/深度学习 传感器
数字图像处理(二) 数字图像处理基础(上)
数字图像处理(二) 数字图像处理基础(上)
127 0
|
机器学习/深度学习 存储 编解码
遥感数字图像处理教程复习整理3
遥感数字图像处理教程复习整理
138 0
|
资源调度 算法 网络协议
数字图像处理笔记(中)
数字图像处理笔记
102 0
|
存储 数据安全/隐私保护 计算机视觉
数字图像处理笔记(下)
数字图像处理笔记
204 0