文章目录
CSU数字图像处理考试前总结复习
空间域滤波
空间域滤波基础
- 空间域:空间域指图像平面本身,这类方法直接操作图像中的像素,这是相对于变换域的图像处理而言的。
- 灰度变换与空间域滤波:灰度变换对图像中的单个像素进行操作,主要以对比度和阈值处理为主。空间滤波涉及改善性能的操作。严格上来讲,灰度变换是空间域滤波的特例。
- 图像的增强结果没有通用的理论,观察者是好坏的裁判员。这一点与图像恢复相互区分。
灰度变换 intensity trasformation
- 图像反转 image inverse:灰度级范围为
[
0
,
L
−
1
]
[0,\ L-1]
[0, L−1],从r到s的映射为以下形式。
s = L − 1 − r s = L-1-r s=L−1−r - 对数变换 log transform:对数函数的一般现状的任何曲线,都能完成图像灰度级的扩展和压缩,同样幂律变换也有同样的效果。对数函数有个重要特征,即它压缩像素值变化较大的图像的动态范围。对数变换一个重要应用是,在傅里叶分析图像信号时,对幅度谱进行log变换,使得暗区的细节体现。
s = c l o g ( 1 + r ) s = clog(1+r) s=clog(1+r) - 幂律(伽马)变换 power-law transform:伽马变换在用于校正幂律响应现象的处理称为伽马校正,幂律变换也可用于通用的对比度操作。当γ大于1时,图像原本偏亮的地方对比度增大,图像整体变暗;当γ小于1时,图像原本偏暗的地方对比度增大,图像整体变亮。可以从二次函数
y
=
x
2
y=x^2
y=x2曲线的形状来记忆不同幂的效果。应用的例子是:伽马矫正,可以看我有一篇关于伽马矫正的文章,即显示器响应曲线是
γ
\gamma
γ为2.2,所以计算机里面存储的是经过伽马矫正过的,即原图像的
1
/
2.2
1/2.2
1/2.2次方。
s = c r γ s=cr^{\gamma} s=crγ - 分段线性变换函数 piecewise-linear transform:对于前面三种方法的一种补充方法是采用分段线性函数,其形式可以任意复杂。
-
对比度拉伸:对感兴趣的范围变换到较大的灰度级范围,使得该区域图像对比度增大,便于观察。
-
灰度级分层 gray-level slicing:为了突出感兴趣的灰度范围,可以增强某些特征,通过采用灰度级分层的操作:譬如将感兴趣范围的所有灰度值显示为一个值(如白色),而将其他灰度值显示为另一个值(如黑色)。或者使感兴趣的灰度范围变亮或者变暗,而保持其他灰度级不变。
-
比特平面分层 bit-plane slicing:以灰度级为八比特0-255为例,在不考虑压缩的情况下,每个像素点使用八位比特存储,其中实际上每一位比特的效果和作用各不相同。很明显,4个高比特平面特别是最后两个比特平面包含了在视觉上很重要的大多数数据,低比特平面贡献了更加精细的灰度细节。将所有平面叠加起来又恢复成原来的图像。
-
直方图、
- 直方图是数据点出现频次的图,a graph that counts the number of occurrences of data points.
- 直方图均衡化 histogram equalization:当图像的灰度级概率分布越均匀时,图像对比度越大,通过将图像的直方图进行均衡化,可以使得图像的直方图向着均匀分布靠拢,从而提高图像的对比度。这里对图像的变换函数存在一定的要求为:变换函数为单调增函数,并且变换前后灰度级范围不发生改变,在涉及反变换的情况下,要求变换函数为严格单调递增函数()。直方图均衡化的公式如下所示。
实际上从连续或者离散的公式形式可以看出,系数L-1和归一化权重将使得变换满足灰度级别范围的约束,并且从概率分布和累计概率可以知道,如果在某个灰度级别范围内的像素点数目很多,那么它们实际上变换后的灰度级就会分得越开,可以从这里来直观理解直方图均衡化的效果。
直方图均衡化的公式可以从连续的情况来推导: 1 L − 1 × s = ∫ 0 s p r ( r ) d r \frac{1}{L-1} \times s = \int_0^s{p_r(r)dr} L−11×s=∫0spr(r)dr。
值得注意的是,直方图均衡化并没有得到固定的映射关系,对于不同直方图的图像,其映射关系也不同,这样的过程可以认为是一种自适应的方法(为了某一目的自动寻找合适的映射)。并且均衡化后的直方图也不是完全的均匀分布,而是变化的方向是均匀分布。
由于直方图均衡化的映射函数 mapping function是递增的,所以不改变累积概率 cumulative probability,因此执行两次直方图均衡化与一次直方图均衡化没有差别,因为第二个映射函数是恒等映射identity mapping。
- 直方图规则化/直方图匹配 histogram specification:某些情况下,均匀直方图增强的方法不一定能满足所有需求,有时我们会考虑使用一些规定的直方图来做图像增强。想象这样一种情况,当一张图像比较暗同时对比度较低,想要通过直方图均衡化来增强对比度,但是由于绝大部分的像素处于像素值为0的地方,所以导致变换函数在0处产生跃变,这样的结果是,图像整体偏亮,并且绝大部分素值移动到较大的值的区间中,使得图像对比度没有得到明显的增强。
造成这个现象的根本原因就是离散函数是对连续函数的采样和和量化,采样频率的大小决定了细节丢失的程度。所以离散的直方图知识PDF的一个近似,而且处理过程中还不允许造成新的灰度级,所以在实际的直方图应用中很少看到完美平坦的直方图。它只能代表了一种趋势,比如做到了变换后的灰度级跨越了更宽的灰度级范围,最终达到了增大对比度的目的。来自知乎博客
一种思路是这样的,如果有一个和这种变化过程我们可以借助均衡化作为中间变换来完成,获得原图像均衡化映射、目标图像均衡化映射,然后求目标图像均衡化映射的反函数,最终得到首尾相接的两次变换,经过这两次变换可以获得接近目标直方图分布的变换图像。
值得注意的是,均衡化映射函数不一定严格递增,而有可能是非递减函数,所以其反函数不一定存在,但是在离散(discrete)的情况下,我们总能设计一种查找表(look up table)来表示这个映射过程,所以反函数不一定存在也不会产生影响。
r
→
s
→
z
r\rightarrow s\rightarrow z
r→s→z
- 直方图操作一般来说是全局性操作global operation,在特定情况下可以对局部做直方图均衡化。
空间滤波器简介
- 优点:空间域技术在计算上更有效,而且执行所需要的资源较少。
- 空间滤波步骤:领域原子从一个像素向另一个像素移动,对领域中的像素应用算子T,并在该位置产生输出,这样对于任意指定的位置,输出图像为这些座标处的值,等于原图像结果算子处理后的结果。在图像边界处,可以忽略外邻点,或者使用某些值填充。
- 空间滤波机理:空间滤波通过空间滤波器来实现,空间滤波器执行上述的步骤,产生滤波后的图像,常见的操作有:平滑、模糊、降噪等等,空间滤波器的别名有:空间掩膜、核、模板、窗口等,并且线性空间滤波器核频率域滤波之间存在一一对应的关系。
- 空间滤波器机理:空间滤波器由领域、预定义操作组成。
- 空间域滤波器的分类:线性空间滤波器,使用权重核的都属于线性空间滤波器,包括卷积、相关、微分等;非线性空间滤波器,如统计排序滤波器。
- 卷积与相关:卷积和相关是两个相近的概念,在神经网络中的卷积层操作实际上是相关运算而非卷积运算。二者都包括关键的滑动相乘相和的操作,因此有时不必太过区分二者。卷积前后图像尺寸变化(HW -> H’W’)关系:
H
′
=
H
+
2
p
−
k
s
+
1
H' = \frac{H+2p-k}{s}+1
H′=sH+2p−k+1
平滑空间滤波器
- 平滑线性滤波器/均值滤波器 mean/box filter:求解包含在滤波器邻域内的像素的平均值,可以把他们归入低通滤波器,形式有多种,最简单是全部权重相同,变体有按照距离赋权重。用处:降噪、模糊;模板越大,模糊程度越大。对于高斯噪声处理的效果不错,但是不太适合处理椒盐噪声,原因是降低了噪声的方差variance。空间均值滤波器的一个重要应用是:模糊图像以便得到感兴趣物体的粗略描述,较小物体的灰度会与背景混合在一起,较大物体则变得像斑点而易于监测。
- Gaussian filter 高斯滤波器:KaTeX parse error: Unexpected end of input in a macro argument, expected '}' at end of input: …^2]{2\sigma^2}},高斯滤波器的参数包括滤波器尺寸以及标准差
σ
\sigma
σ,方差越大,滤波器越矮胖,平均效果越明显。高斯滤波器是Isotropic各向同性,均值滤波器是non-isotropic各向异性。并且这两个滤波器都是线性可分离的平滑滤波器。
- 统计排序滤波器(非线性):将模板邻域内的像素按照大小排序,按照某一规则选取其中的某个像素值作为滤波后的该位置像素值。其中中值滤波器使用中心像素值作为结果,在处理脉冲噪声/椒盐噪声时效果很好,但是不适合处理高斯噪声。
锐化空间滤波器 sharpening filter
- 锐化空间滤波器用于识别和增强非连续性(identify and enhance discontinuity)
- 基础:锐化处理的目的是突出灰度的过渡部分,在逻辑上与均值处理相对,均值处理与积分类似,而微分可以实现与模糊相反的操作——锐化。这里主要考虑一阶微分和二阶微分,离散化后为一阶差分和二阶差分。均匀灰度、斜坡灰度、台阶灰度上两种差分方法各有不同的结果。
- 拉普拉斯算子/二阶微分锐化滤波器 Laplacian/2nd-order filter:通过应用上述的结论,并且拓展到二维空间即可得到基于拉普拉斯算子的二阶微分锐化滤波器,在增强图像边缘时,通常的做法是将原图像加上或者减去结果拉普拉斯算子或者其变体作用后的图像。
- 一阶微分锐化滤波器(非线性):一阶微分锐化滤波器通过梯度来定义,其中梯度是一个向量,包含方向和大小,结果梯度算子得到的是包含每个位置的梯度大小的梯度图像
M
(
x
,
y
)
=
g
x
2
+
g
y
2
M(x,\ y)=\sqrt{g_{x}^{2}+g_{y}^{2}}
M(x, y)=gx2+gy2。根据x,y方向的偏导定义近似的不同出现了Rober交叉梯度算子和Sobel梯度算子,二者的本质含义是一致的,不过是实现方式不同。
-
罗伯特Robert交叉梯度算子:这里的定义与先前的偏导差分定义不同。
-
索贝Sobel算子:Sobel将两个偏导定义成以下模样,但是计算过程与Robert相同。
-
- 非锐化掩蔽和高提升滤波:当然,在增强图像边缘时,存在一些使用非直接锐化手段的方法。通过原图像减去模糊图像即可得到边缘图像,通过将该图像叠加到原图像即可得到边缘增强图像。
- 混合空间增强:在实际应用中,图像一般需要使用多种增强方法,比如同时存在椒盐噪声和高斯噪声等,混合空间增强即使用多种图像增强方法来实现最终效果。
频率域滤波
傅里叶变换
- 一维傅里叶变换:
- 一维卷积定理:时域卷积等同于频域乘积,时域乘积等同于频域卷积。
采样定理
- 香农-奈奎斯特理想低通采样定理:无失真恢复信号的条件是采样率大于信号最大频率的两倍。
- 频域混叠分析:空域的采样等同于频域的扩展,当采样率没有大于信号最大频率的两倍时,频域会发生混叠,即频谱的交叠(overlap)
频率域滤波基础
- 频域滤波的基本过程:padding,(-1)(x+y)*,DFT,multiplication,IDFT,(-1)(x+y),top-left crop.
- 理想低通滤波器:存在频域的截断,因此导致ringing effect,或者理解成空域和sinc函数的卷积。
- 高斯低通滤波器:高斯低通滤波器的傅里叶变换还服从高斯分布。 H ( u , v ) = e − D 2 / D 0 H(u, v)=e^{-D^2/D_0} H(u,v)=e−D2/D0。
- 巴特沃斯低通滤波器 butterworth: H ( u , v ) = 1 1 + [ D / D 0 ] 2 n H(u,v)=\frac{1}{1+[D/D_0]^{2n}} H(u,v)=1+[D/D0]2n1
- 通过低通滤波器可以构建高通滤波器: H P F = 1 − L P F HPF = 1 - LPF HPF=1−LPF,可以用于提取边缘信息
- 带通带阻滤波器band-pass/band-reject:理想带通带阻滤波器可以通过高通+低通的方式构建。带通带阻高斯滤波器则需要通过另外的方式构建,要满足带频区域的增益满足满足带通或者带阻,此外还要满足0频区域的增益为1或者0.所以高斯带阻滤波器设计: H ( u , v ) = 1 − e − D − C 0 W 2 H(u,v)=1-e^{-\frac{D-C_0}{W^2}} H(u,v)=1−e−W2D−C0。此外还有陷波器notch filter,用于去除特定成分的频率。
图像复原与重建 image restoration
- 图像复原的目标是去除图像中的退化(degradation)与噪声(noise)。
- 为什么高斯噪声这么重要:中心极限定理central limit law,idd independent identically distribution iid 独立同分布的噪声之和趋势服从正态分布。此外高斯噪声很常见(common),并且易于处理(easy to handle)。
图像退化/复原模型 degradation model
- 退化模型和复原模型:
- 噪声模型:高斯噪声 (sensor noise,electronic noise due to poor illumination or high temperature),伽马噪声,指数噪声(激光照明),均匀噪声,脉冲噪声/椒盐噪声。对于只存在噪声的情况,可以通过各种滤波器去除,比如均值滤波器、高斯滤波器、中值滤波器等。
逆滤波 inverse filter
- 逆滤波:在噪声未知的情况下,通过对退化函数进行建模,在频域得到估计图像的频域再反变换回空域得到估计图像。
- 如何估计退化函数:物理建模,比如运动模糊(积分模型),大气湍流(turbulence);此外还有实验的方法 H = O / I H=O/I H=O/I
- 注意事项:逆滤波中可能存在噪声放大的问题(noise amplification),当退化函数为0或者非常小时,噪声在重建图像中占主导地位,因此一种常见的做法是:限制滤波的频率,因为在能量主要集中在低频范围内,这样就减少了遇到零值的概率。
最小均方误差滤波(维纳滤波)weiner filter
- 维纳滤波:建立在图像和噪声都是随机变量的基础上,目标是使得估计图像和原始图像之间的均方误差最小。维纳滤波的权重不仅仅包含系统函数,而且还包含噪信比(noise-to-sigal ratio),用于调节权重大小,当噪信比很小时,维纳滤波等同于逆滤波,不存在噪声放大,当噪信比很大时,维纳滤波等同于不滤波,避免噪声放大。
W ( u , v ) = 1 1 + N S R / H 2 W(u, v) = \frac{1}{1+NSR/H^2} W(u,v)=1+NSR/H21 - 注意事项:与直接逆滤波相比,最小均方误差滤波效果要好得多。但是维纳滤波存在其他的困难:未退化的图像和噪声的功率谱必须已知。
约束最小二乘方滤波
- 约束最小二乘方滤波:通过拉普拉斯算子作为目标优化函数,同时通过估计图像、待复原图像、退化函数、噪声构造约束,通过优化理论得到满足约束条件的使得优化函数最小的估计图像。
- 注意事项:本方法需要已知噪声的方差和均值的知识。
彩色图像处理 Color image processing
图像压缩和水印 image compression and watermarking
图像压缩基础
- 数据冗余来源:编码冗余、空间和时间冗余、不相关信息。
基本压缩方法
- 哈夫曼编码 Huffman coding:最小频率对之间相组,组建哈夫曼树和哈夫曼编码
- 游程编码 Run-length coding
- 预测编码 predictive coding
- JPEG