赵工的个人空间


专业技术部分转网页计算转业余爱好部分


 图像处理与人工智能

首页 > 专业技术 > 图像处理与人工智能 > 图像增强复原与重建
图像增强复原与重建
  1. 图像中的噪声特性:
  2. 空间域图像增强:
  3. 变换域图像增强:
  4. 其他图像增强方法:
  5. 图像复原:
  6. 图像重建:
  7. 图像修补:

一、图像中的噪声特性:

图像增强的目的是消除噪声,显现被模糊的细节或简单地突出一幅图像中用户感兴趣的特征。由于噪声的影响,图像像素的灰度会发生变化。噪声是随机的,一般用统计特性来描述。

1. 高斯噪声:

高斯噪声的随机变量的概率密度函数可表示为:
高斯噪声概率密度函数
其中,z代表灰度,μ是z的均值,σ是z的标准差。具有高斯分布特性的噪声的灰度值多集中在均值附近,且随着离均值的距离增加而数量减少。电子设备噪声或传感器噪声是典型的高斯噪声。

2. 椒盐噪声:

椒盐噪声的随机变量概率密度函数表示为:
椒盐噪声概率密度函数
椒盐噪声相当于在z=a和z=b处的两个脉冲,因此也称脉冲噪声。椒盐噪声可正可负,一般表现为图像中的极限灰度,黑或白,就像椒盐颗粒随机撒在图像上。负脉冲显示为黑色,称椒噪声;正脉冲显示为白色,称为盐噪声。发射噪声和尖峰噪声等都可用椒盐噪声描述。

3. 均匀噪声:

对应的随机变量概率密度函数表示为:
均匀噪声概率密度函数
其中,a和b分别是随机变量取值的上下限。均匀噪声的均值和方差分别为(a+b)/2和(b-a)2/12。
均匀噪声的灰度值在所定义的范围内是均衡分布的,即统计上所有值出现的概率相等。

4. 瑞利噪声:

瑞利噪声对应的随机变量的概率密度函数表示为:
瑞利噪声概率密度函数
瑞利噪声的均值和方差分别是:
瑞利噪声的均值和方差
瑞利噪声分布与原点有一定偏移,且整体形状右拖尾。
其他还有指数概率密度函数、伽马概率密度函数、K分布等。

二、空间域图像增强:

增强处理并不能增强原始图像的信息,只能增强对某种信息的辨识能力,同时有可能损失一些其他信息。因为很难找到一个评价图像增强效果的客观标准,所以没有通用的模式化的图像增强方法,要根据用户的具体期望做出取舍。
空间域图像增强主要包括灰度变换增强、直方图修正、图像锐化及图像平滑化等。增强过程中可以采用单一方法处理,更多情况下是需要采用几种方法联合处理才能达到预期效果。

1. 灰度变换增强:

1)线性灰度变换:
把灰度范围[a,b]的原图像f(x,y)变换到灰度范围[c,d]的图像g(x,y):
线性灰度变换
对灰度范围[0,M]的图像,大部分灰度在[a,b]范围,而少数图像灰度超出范围:
线性灰度变换
有时为了保持高端和低端灰度值不变,可以采用:
线性灰度变换
2)分段线性灰度变换:
为了突出感兴趣的灰度空间
分段线性灰度变换
对于0~255范围的8位整数表示的图像,x=f(i,j)为原图像灰度值,y=F(i,j)为变换后图像灰度值,函数h=h(x)关系为:
分段线性灰度变换
其中,(x1,y1)和(x2,y2)是两个转折点,这两个转折点决定了3个直线段的斜率。
3)对比度线性展宽:
有时所获得的图像画面效果不好,期望观察到的对象对比度不够清晰,可以通过对比度展宽方法获得画质的改善。
设原图像灰度为f(i,j),处理后的图像为g(i,j),原图中重要景物的灰度假设在[fa,fb]范围内,对比度展宽的目的是使处理后的图像的重要景物灰度分布在[ga,gb]范围内,当Δf=(fb-fa,)<Δg=(gb-ga),即可达到对比度展宽的目的。对比度展宽的计算公式为:
对比度线性展宽
其中,α=ga/fa<1,β=(gb-ga)/(fb-fa)>1,γ=(255-gb)/(255-fa)<1,图像大小为m×n。
4)灰级窗:
实际上是通过一个映射关系,只将灰度值落在一定范围内的进行灰度级增强。经过灰级窗处理之后,将原灰度值分布在[fa,fb]范围内的像素值映射到[0,255]范围内,该范围内的景物因对比度展宽而更加清晰。公式:
灰级窗变换
其中,β=255/(fa-fb),图像大小为m×n。灰级窗技术在医学图像处理中用的比较多。
5)灰级窗切片:
图像处理中,经常要对某个目标物的形状、边界、截面面积以及体积进行测量,从而得到该目标物功能方面的重要信息,因此对感兴趣目标正确分类是图像处理的一个重要内容。所谓灰级窗切片是指将所需要检测的目标与画面中其他部分分离开。设原图像灰度为f(i,j),处理后的图像为g(i,j),将原图像中灰度值分布在[fa,fb]范围内的像素值映射到255,在此范围之外的像素值映射到0,成为二值图像。灰级窗切片的映射关系为:
灰级窗切片
其中,图像大小为m×n。
6)灰度非线性变换:
对数变换常用来扩展低值灰度并压缩高值灰度:
灰度对数变换
指数变换可用来压缩低值灰度区域而扩展高值灰度区域,一般形式:
灰度指数变换
7)线性动态范围调整:
动态范围即一幅图像中所描述的从最暗到最亮的变化范围,由于人眼可分辨的亮度变化范围是有限的,会因为很高的灰度值区域的信号掩盖暗区的信号,从而影响到目标区域的表现效果,特别是暗区的细节难以辨认。动态范围调整,就是利用动态范围对人视觉的影响特性,将动态范围进行压缩,将所关心部分的灰度级的变化范围扩大,达到改善画面效果的目的。
线性动态范围调整,首先进行亮暗限幅,将图像中黑的像素值调大,由0调整到a,白的像素值调小,由255调整到b,然后将区域[a,b]进行线性映射到[0,255]范围内,这样一部分较暗的像素点以及较亮的像素点进入饱和,中间部分像素值进行对比度扩展,而使得细节部分看得更加清楚。
设原图像灰度为f(i,j),处理后的图像为g(i,j),原图中灰度值在0~a范围的部分压缩为0,原图中灰度值大于b的部分压缩为255,而将原图中灰度值分布在[a,b]范围内的目标区域增强。线性动态范围调整的映射关系为:
线性动态范围调整
其中,图像大小为m×n。
8)非线性动态范围调整:
线性动态范围调整为分段特性,在灰度映射上存在不平滑。而非线性动态范围调整是通过一个平滑的映射曲线,使得处理后的图像灰度变化比较光滑。人眼接收图像信号在大脑中形成形象,近似对数映射特性,一般情况下可采用对数运算来实现非线性动态范围调整。计算公式为:
非线性动态范围调整
其中,原图像灰度为f(i,j),处理后的图像为g(i,j),c为增益常数,lg(x)为以10为底的对数,图像大小m×n。
非线性动态范围调整抑制高亮度区域,扩展低亮度区域,这在一定程度上解决了景物中高亮度区的信号掩盖暗区信号的问题。

2. 直方图增强:

图像直方图是图像各灰度值统计特性与图像灰度值之间的函数,用来统计一幅图像中各个灰度级出现的次数或概率。从图形上是一个二维图,横坐标是图像中各个像素点的灰度级,纵坐标为具有该灰度级的像素个数或出现这个灰度级的概率。
1)直方图均衡化:
若一幅图像中,像素占有全部可能的灰度级且分布均匀,那么图像显示的灰度级丰富且动态范围很大。直方图均衡是对原始图像中的像素灰度进行变换,使变换后的图像灰度的概率密度均匀分布,使图像灰度范围得到增强。
图像面积A,共有L个灰度级,ni表示灰度级ri的像素点数目,直方图均衡化公式:
直方图均衡化公式
将原图像的灰度级通过变换变为另一种灰度值。
大部分图像由于灰度分布集中于较窄区间,引起图像细节不够清晰。采用直方图均衡化后,可使图像灰度间距拉开或使灰度均匀分布,从而增大反差,使图像细节清晰。
2)局部直方图均衡化:
先定义一个邻域,通常取矩形,大小w×w,一般w为奇数。然后将这个区域的中心从一个像素移到另一个像素。在每个位置上,先在定义的邻域内计算灰度直方图,然后利用这一直方图来获得关于直方图均衡化的灰度变换函数,利用这个变换函数就可以实现该邻域内中心像素点的增强。接下来将邻域中心移到相邻的像素重复这个过程。
3)直方图规定化:
将直方图变换为某种特定的形状。

3. 图像锐化:

图像锐化是补偿图像的轮廓、增强图像边缘及灰度跳变的部分,使图像变得清晰。常用通过有限差分来实现,如梯度锐化和拉普拉斯掩模锐化。
图像锐化的目的是加强图像中的目标边界和图像细节。由于锐化将使噪声受到比信号还强的增强,所以一般都是先进行图像平滑,去除或减轻图像中的干扰噪声,然后才能进行锐化处理。
1)微分算子方法:
图像处理中常用的微分方法是求梯度,图像中采用差分运算近似:
微分算子图像锐化方法
上面方法称为水平垂直差分法。还有一种为Robert梯度法,是一种交叉差分计算法:
Robert梯度图像锐化方法
这是计算±45度方向的差分和。
使用上述方法,最后一行最后一列的梯度无法求得,一般使用前一行和前一列的梯度近似。
梯度计算出来后,锐化图像的输出有多种方法:
  ·  直接梯度输出:仅显示灰度变化强的边缘轮廓,灰度平缓处呈黑色
  ·  门限判断:梯度值超过门限用梯度代替原图像像素,轮廓得到增强又不破坏原灰度平缓区
  ·  边缘规定一个特殊灰度值:
  ·  背景规定特殊灰度值:突出了边缘
  ·  二值化处理:梯度超过门限输出一个值,低于门限输出另一个值
微分算子法不仅可以使用Robert梯度算子,也可以使用Sobel算子、Prewitt算子、拉普拉斯算子、LOG算子等其他边缘检测算子进行图像锐化。使用边缘提取算子锐化的步骤:
  ⑴  图像进行拉普拉斯操作,得到细节保留的图像
  ⑵  基于上一步的结果,寻找最小值,减去最小值后,根据最大值将图像scale到0~255之间
  ⑶  将上一步输出的像素数组与原像素值一一相减,再减去最小值,根据最大值归一化到0~255
  ⑷  输出到处理以后的像素数组
  ⑸  直方图拉伸,让锐化以后的图像看上去跟原图的亮度保持一致
一阶导数通常会产生较宽的边缘;二阶导数对于阶跃性边缘中心产生零交叉,而对于屋顶状边缘(细线)取极值;二阶导数对细节有较强的响应,如细线和孤立噪声点。对于图像增强而言,二阶导数应用更多一些,在边缘检测时更多利用一阶导数。一阶导数常常与二阶导数结合,以达到更好的锐化增强效果。
使用上述锐化模板后,原图像的平滑区域近乎为黑色,而原图像中所有的边缘、细节和灰度跳变点都作为黑背景中的高灰度部分突出显示。图像锐化增强中,常常希望在增强边缘和细节的同时仍然保留原图像中的信息,因此可以把原图像加上锐化算子处理后的图像。注意具有正的中心系数和具有负的中心系数的模板之间的区别,对于中心系数为负的模板,要达到上述增强效果,应当将原图像减去锐化算子处理后的图像。
由于锐化后边缘和细节处的高灰度值的存在,经灰度伸缩后,原灰度图像被压缩在一个很窄的范围内,整体上显得较暗。为了改善这种情况,在复合两个图像时适当地提高原图像的比重,这种处理称为高提升滤波。
2)统计差分法:
对二维图像,以(i,j)为中心构成一个(2r+1)×(2s+1)的邻域,计算邻域内的像素灰度均值为E(i,j),方差σ(i,j),则锐化后灰度值为:
统计差分锐化方法
式中,Ed(i,j)为所需的理想局部均值,σd为所需的标准差,A为增益系数,ɑ为用来控制增强图像中边缘和背景组成的比例常数。
3)掩膜匹配法:
一个像素有8个相邻点,从该点出发有8个方向。所谓掩膜,就是以像素为中心的窗口对应的模板,锐化前要有8个不同方向的3×3模板,对于每个模板累计求和,图像中心像素值:
掩膜匹配法
掩膜匹配在增强图像边缘同时,还具有平滑噪声作用。常用掩膜有3种,分别为Robison、Prewitt和Kirsch掩膜,每种有8个模板,可参考图像边缘检测部分。
同一幅图像,使用这三种掩膜,得到的结果不同,需要根据人机交互进行选择。
4)USM锐化:
USM锐化,即Unsharp Masking,可以去除细小的干扰和噪声,边界清晰噪声较小。经典USM锐化技术是通过增强图像的高频内容来增强图像的视觉效果。框图:
USM锐化
图中,x为输入信号,y为输出信号,z为校正信号,λ表示锐化强度因子。z一般通过对x使用高通滤波器得到,常使用拉普拉斯算子。公式:
  y(n,m)=x(n,m)+λz(n,m)
  z(n,m)=4x(n,m)-x(n-1,m)-x(n+1,m)-x(n,m-1)-x(n,m+1)
PS中的USM锐化有半径Radius、数量Amount和阈值Threshold三个参数。原图为S,锐化结果为D,计算步骤:
  ⑴  根据半径Radius,对S进行高斯滤波得到图A。
  ⑵  计算校正信号Z:Z=S-A
  ⑶  根据Z和Threshold计算二值蒙版Mask M:
USM锐化
  ⑷  根据半径Radius对M进行高斯滤波,得到Alpha通道:Alpha=Gauss(M)
  ⑸  根据Amount和Alpha计算D:
USM锐化
也可以简化上述过程,先从原图像减去其平滑后的副本,这个过程称为掩膜;然后将此掩膜叠加到原图像上,就得到边缘锐化的图像。平滑最常用滤波半径为σ的高斯滤波器,σ典型值取1~20;而掩膜叠加时要使用权重因子α,取值范围通常为0.2~4.0。有时还会使用阈值参数t,仅当某点处的局部对比度(常用梯度的模值描述)大于阈值t才进行USM锐化,否则保持原值。
5)Wallis锐化算子:
人眼在处理所看到的景物过程中,包含了对数运算环节,Wallis算子就在锐化过程中加入了对数处理,通过对数运算进行非线性的动态范围调整,使得图像中暗区目标的边缘、轮廓信息仍旧可以很好地检测出来。Wallis算子表达式:
Wallis锐化算子

4. 空间域图像平滑:

图像平滑用来消除图像采集、传输及处理过程存在的噪声干扰,包括空间域法和频域法两类。空域主要是邻域平均法、加权平均法、选择式掩模平滑法、中值滤波法,频域主要是通过各种低通滤波器来消除噪声。
滤波是将信号中特定波段频率滤除的操作,数字信号处理中通常通过傅里叶变换及其逆变换实现。空间域滤波主要直接基于邻域对图像中像素执行运算,实际上和通过傅里叶变换实现的频域下的滤波是等效的,也就称为滤波。
一幅图像可以看成二维数组f(x,y),而x-y平面表明了空间位置信息,称为空间域,基于x-y空间邻域的滤波称为空间域滤波。一般是使用一个模板进行空间域滤波滤波过程就是在图像f(x,y)中逐点移动模板,使模板中心点和点(x,y)重合,在每一个点(x,y)处,滤波器在该点的响应是根据模板的内容并通过预先定义的关系来计算。一般来说,模板中的非0元素指出了邻域处理的范围,模板中的系数给出了加权模式,即(x,y)处的响应由模板系数与模板下面的相应像素值的乘积之和给出。对于一个大小为m×n的模板,滤波操作为:
空间域滤波
对于大小为M×N的图像,对x=1,2,...,M-1和y=0,1,2,...,N-1依次应用公式,完成对所有像素的处理而得到新图像。
执行滤波处理时,如果模板位于图像边缘,会出现某些元素位于图像之外的情况,这时需要对边缘附近的滤波单独处理,以免引用到本不属于图像的无意义的值。一般处理方式有:
  ·  收缩处理范围:处理时忽略位于图像边缘附近的会引起问题的点
  ·  使用常数填充图像:根据模板形状为图像虚拟出边界,虚拟边界像素值为指定的常数,如0,得到虚拟图像
  ·  使用复制像素的方法填充图像:与上面方法基本相同,但用来填充虚拟边界像素值的是图像本身边界
还有一种卷积滤波,表示为:
卷积滤波
卷积时模板是相对于其中心点做镜像后再对图像位于模板下的子图像做加权和,或者说在做加权和之前模板以其中心点为原点旋转180°。只有当模板本身是关于中心点对称时,卷积与前面的相关处理方式结果才相同。
1)卷积滤波:
离散卷积可以表示为:
离散卷积滤波
其中C(k)代表卷积核,g(i)代表样本数据,f(x)代表输出结果。卷积本质上就是将两个不同的数组乘积计算而产生一个新的数组的方法。对于二维数组,卷积计算公式为:
离散卷积滤波计算公式
其中X表示图像像素点坐标(m,n)的值,H表示输入的卷积核,k、l分别表示卷积核的高和宽。图像在空间域的卷积就是改变了图像空间域的频率特征。当卷积核从左至右、从上到下在图像上移动时,处理边界像素常用零扩展、换行、剪裁等处理方法。卷积滤波有多种方式:
平均平滑:
在空间域一般采用邻域平均来达到平滑目的:
空间域邻域算术平均平滑
该滤波器在消除噪声的同时也模糊了图像。
使用平均模板:
空间域邻域平均模板
也就是使用每个像素和它周围的像素计算出平均值替换图像中的像素。使用中可根据需要选择不同的模板尺寸,如3x3、5x5、7x7等,还有4邻域或8邻域两种方法。8邻域3x3模板为:
空间域邻域平均8邻域3x3模板
也可以使用8邻域加权平均模板:
空间域邻域加权平均8邻域3x3模板
这种均值滤波不仅可以使用算术平均值,还可以使用几何平均值,也就是乘积的开方:
空间域邻域几何平均
还有一种调和均值滤波器:
空间域调和均值滤波器
调和均值滤波器对高斯噪声有较好滤除效果,但对椒盐噪声的两部分作用不对称,对盐噪声的处理效果比椒噪声要好很多。
逆调和均值滤波器:
空间域逆调和均值滤波器
其中,k为滤波器的阶数。逆调和均值滤波器对椒噪声滤除效果比较好,但不能同时滤除椒噪声和盐噪声。当k为正数时,滤波器可滤除椒噪声;当k为负数时,滤波器可用滤除盐噪声;当k=0时,退化成算术均值滤波器;当k=-1时,退化成调和均值滤波器。
高斯平滑:
为了减小平滑处理中的模糊以得到更自然的平滑效果,可以适当加大模板中心点的权重,随着离开中心点距离的增大权重逐渐减小,这样的模板为高斯模板。
一维高斯分布公式为:
一维高斯分布公式
其中,x的取值范围为[-n.n],σ表示标准方差。当n=1,σ=1时得到的Kernel数据为0.24197073,0.3989423,0.24197073。
二维高斯分布公式为:
二维高斯分布公式
其中,x、y的取值范围决定了卷积核大小。
3x3的高斯模板为:
3x3的高斯模板
高斯模板的名称来自二维高斯函数,即二维正态分布密度函数。高斯模板是将二维高斯函数离散化。任意大小的高斯模板可以通过建立一个(2k+1)x(2k+1)矩阵M得到,其(i,j)位置的元素值按下式确定:
高斯模板元素值
当标准差σ取不同值时,二维高斯函数的形状会有很大变化,值过小接近于点运算,值过大则接近于平均模板。对3x3模板,取值为0.8;对于更大的模板可以取更大的值。
生成二维高斯卷积核的代码为:
  function get2DKeinalData(n,sigma){
    var size=2*n+1;
    var sigma22=2*sigma*sigma;
    var sigma22PI=Math.PI*sigmal22;
    var kernalData=new Array(size);
    var row=0;
    for(var i=-n;i<=n;i++){
      var colArray=new Array(size);
      var column=0;
      for(var j=-n;j<=n;j++){
        var xDistance=i*i;
        var yDistance=j*j;
        kernalData[row][column]=Math.exp(-(xDistance+yDistance)/sigma)/sigma22PI;
        column++;
      }
      row++;
    }
    return kernalData;
  }

当n=1,σ=1时得到的高斯卷积核矩阵为:
高斯卷积核矩阵
高斯双边滤波:
高斯滤波没有考虑像素变换的影响,只考虑了像素距离对中心像素的影响,因此图像边缘也被模糊了。加入像素变化权重后形成双边滤波:
高斯双边滤波
其中,Wp的倒数为归一化因子,为所有权重系数之和,前面一项是基于空间位置的权重系数的高斯分别,后面一项是基于像素值变化的权重系数的高斯分布,Iq为输入像素。σs指空间位置高斯分布参数,取值与图像大小成正比,通常为图像对角线长度的2%;σr指图像像素高斯分布参数,取值与图像振幅成正比,通常为图像梯度的中值或平均值。模板中权重计算:
高斯双边滤波模板中权重计算
其中,σd和σr是平滑参数,I(i,j)和I(k,l)分别是像素(i,j)和(k,l)的强度函数。计算权重后,要对结果归一化。
空间低通滤波:
输入图像f(i,j),低通滤波冲激响应h(i,j)为L×L二维矩阵,则低通滤波器为:
空间低通滤波
通常采用低通滤波器冲激响应矩阵,又称为低通卷积模板:
低通卷积模板
其中,h1常称为Box模板,h3称为高斯Gauss模板。
空间高通滤波:
图像高通在空间域也是采用卷积方法,几种常用卷积模板为:
空间高通滤波模板
空间高通滤波模板
2)掩膜平滑法:
掩膜平滑以5×5窗口为基准,中心位置(j,k),可以在窗口中确定9种不同的掩膜模板。首先计算每种模板的均值和方差,输出为具有最小方差的模板对应的灰度平均值。
掩膜平滑法
3)统计滤波:
中值滤波:
中值滤波采用一个包含奇数个点的邻域A,称为滑动窗口,用窗口中各点灰度的中值来替代窗口中心点像素的灰度值。中值滤波对滤除脉冲干扰及颗粒噪声最有效。
中值滤波本质上是一种统计排序滤波器。对于原图像中某点(x,y),中值滤波以该点为中心的邻域内的所有像素的统计排序中值作为(x,y)点的响应。中值滤波并非线性滤波器。
二维中值滤波窗口可以有多种形状,如线、方、十字、圆、菱形等。也可以将几种窗口尺寸大小和形状不同的中值滤波器复合使用,只要窗口都与中心对称。
中值滤波在降噪的同时引起的模糊效应较低,典型应用是消除椒盐噪声。中值滤波效果依赖于滤波窗口大小,太大会使边缘模糊,太小则去噪效果不好。
中值滤波是一个排列顺序的统计量,可以理解为由所涉及像素的大多数决定,而个别特别高或特别低的像素值不会对结果产生太大影响,仅仅使结果向前或向后推一个值。普通的中值滤波中,滤波区域内的每个像素对结果的影响是相同的,而忽略它们与中心距离。还有一种带权中值滤波,其为滤波区域内的每个位置分配一个独立的权值,可以理解为“投票数”,在滤波结果的计算过程中,每个有个的像素值被插入到扩展的像素向量中,插入次数为其权值,然后对此向量排列,再将中间元素取做中值。这种方法也可以用于非矩形区域的中值滤波。
自适应中值滤波:
因为噪声点几乎是邻域像素的极值,而边缘往往不是,因此可以用来限制中值滤波。改进方法是,逐行扫描图像,当处理每一个像素时,判断该像素是否是滤波窗口所覆盖下邻域像素的极大或者极小值。如果是,则采用正常的中值滤波处理该像素;如果不是,则不予处理。这种方法可以有效地去除突发噪声点,尤其是椒盐噪声,而几乎不影响边缘。这种方法也称为自适应中值滤波。
统计排序滤波器还有最大值、最小值和中点滤波器。
最大值滤波:
取序列中的最大值就得到最大值滤波器:
最大值滤波器
最小值滤波:
如果取序列中的最小值就得到最小值滤波器:
最小值滤波器
最大值滤波器对消除椒噪声比较有效,最小值滤波器对消除盐噪声比较有效。
中间点滤波:
如果以覆盖区域中像素的最大值和最小值的平均值作为滤波结果,就是中点滤波器:
中间点滤波
中点滤波器对消除高斯噪声和均匀随机分布噪声都比较有效。
最大值最小值滤波:
用最大最小值之差作为卷积核覆盖像素下的中心像素值,这也是一种很好地边缘检测的滤波方法。
4)消除孤立噪声:
一幅图像往往可能受到各种噪声源的干扰,这些噪声使图像表现为一些孤立像素点。在二值图像中,消除孤立于周围的黑像素点有4邻域和8邻域方法。4邻域情况下,若黑像素的上下左右4个像素全为白,则此像素也取白;在8邻域情况下,若黑像素周围8个像素全为白,则此像素也取白。
5)混合滤波器:
不同的滤波器结合使用以取长补短,能获得比单个滤波器更好的效果和性能。常用将线性滤波器和中值滤波器串联起来,使得计算较快的线性滤操作作用在几个较大的模板上,而几个线性滤波器输出的中值就是混合滤波器的最终结果:
混合滤波器
最简单的包括相同的平均滤波器HL、HR和HC,滤波器表示为:
混合滤波器
实际的2D图像应用中,常取滤波器模板中元素个数为5,使用下面的滤波器:
混合滤波器
使用的典型模板:
混合滤波器模板
6)选择性滤波器:
线性滤波器能有效消除高斯噪声和均匀分布噪声,但对椒盐噪声消除效果差;中值滤波能有效消除椒盐噪声等脉冲类噪声,且不会对图像带来过多的模糊效果,但对高斯噪声的消除效果不是很好。当图像受到不同噪声干扰影响时,可以采用选择滤波器的方式在受到不同噪声影响的位置选择不同的滤波器滤除,以发挥不同滤波器的各自特点,取得好的综合效果。
利用图像中相邻像素间灰度的相关性,比如一个8邻域,如果其中有较多的像素与该像素的灰度值有较大差别,则该像素为受椒盐噪声影响的可能性比较大。可以设置两个阈值,一个阈值用以判断邻域像素间灰度值的差别是否够大,另一个阈值用于判断差别足够大的像素个数是否足够多。如果一个待检测像素的灰度值与其邻域中像素的灰度值的差别大于阈值的像素个数又大于个数阈值,则很有可能受椒盐噪声影响的像素。
对受椒盐噪声影响的像素,可利用周围未受椒盐噪声影响的像素进行插值来消除椒盐噪声;对没有受到椒盐噪声影响的像素,可以利用自适应维纳滤波来消除高斯噪声。最后将两个结果合并得到消噪输出图。
7)小波阈值去噪:
小波去噪的方法分为三类,第一类是利用小波变换模极大值原理去噪,根据信号与噪声在小波变换尺度上的不同传播特性,剔除由噪声产生的模极大值点,保留信号所对应的模极大值点,然后利用所余模极大值重构小波系数,进而恢复信号。这种方法对噪声的依赖性小,无须知道噪声方差,适合于低信噪比的信号去噪,但计算速度慢,小波分解尺度的选择比较难。
第二类方法是对含有噪声的信号做小波变换后,计算相邻尺度间小波系数的相关性,根据相关性大小区别小波系数的类型,从而进行取舍,然后重构信号。相关性去噪方法去噪效果稳定,在分析信号边缘方面有优势,但计算量大,并且需要估算噪声方差。
第三类是小波阈值去噪方法,该方法认为信号对应的小波系数包含信号的重要信息,幅值较大,但数目较少,而噪声对应的小波系数是一致分布的,个数较多,但幅值小。因此,在众多的小波系数中,把绝对值较小的系数置为零,而让绝对值较大的系数保留或收缩,估算小波系数,然后利用估计小波系数直接进行信号重构。1995年,Donoho和Johnstone提出了小波阈值收缩去噪法,在最小均方差意义下可达近似最优,取得良好的视觉效果。小波阈值去噪方法实现比较简单,计算量较小,适用于信号中混有白噪声的情况,但去噪效果依赖于信噪比,对低信噪比信号去噪效果不好,去噪后在信号不连续处会出现伪吉布斯现象。
8)自适应滤波:
平滑滤波会使图像变模糊,为此要选择性平滑,只在有噪声的区域进行平滑,无噪声的区域不平滑,将模糊降到最小,这就是自适应滤波。
判断噪声的方法:
  ·  局部区域最大值与最小值之差大于某阈值T
  ·  局部区域方差大于某阈值T
实现方法为:逐行扫描图像,对每一像素,以该像素为中心计算周围区域R的统计特征,如最大值、最小值和方差等。如果区域R的特征满足选定的噪声判据,根据选定的模板计算邻域加权和作为该点的响应,否则不处理该点。
噪声门限法: 对孤立分散的单点噪声效果好
首先设定门限值,然后顺序检测图像的每一个像素,将该像素与其邻域内的其他像素进行比较判断,以确定是否噪声点。若为噪声,则以其邻域所有像素的灰度平均值替代,否则以原灰度值输出。
像素(x,y)处灰度为f(x,y),以该像素为中心取窗口N×N,N为奇数,其中像素集合为A,灰度差值门限定为T,误差计算值定为Cnt,计数器门限值定为Y。对集合A中的每个像素:
噪声门限法自适应滤波
如满足上式,误差计数器Cnt加1,位置(x,y)处平滑输出为:
噪声门限法自适应滤波
当窗口顺序移过整幅图像,即可完成噪声平滑。其中门限值T的选取至关重要,如果太大,噪声平滑不够;如果太小,图像会出现模糊。计数器门限一般选择窗口像素的一半左右。
超限邻域平均法:
为了尽可能减小模糊失真,规定一个非负门限值T,只有所在点与其邻域的差值超过T时才进行噪声处理,否则保留原值:
超限邻域平均法自适应滤波
加权平均法:
根据选择参加平均的点数以及邻域各点的权重系数,可以分为灰度K个邻点平均法、梯度倒数加权平滑、最大均性平滑、小斜面模型平滑等多种。一般来说,待处理像素赋予较大权值,其他像素权值较小;可以按与待处理像素远近确定权值,距离近权值大;或按与待处理像素灰度接近程度确定权值,灰度接近权值大。
如果以灰度梯度倒数作为权值就是梯度倒数加权法。窗口内某像素的梯度为:
像素的梯度
其倒数设为d(i+m,j+n),则对应权值为:
梯度倒数加权法
平滑输出则为:
梯度倒数加权平均法自适应滤波
9)边界保持平滑滤波:
图像上的景物之所以可以辨认清楚,是因为目标物之间存在灰度变化显著的边界,而对边界上的像素进行平滑滤波时使用简单的均值算法都会在一定程度上降低边界的灰度显著值,从而导致图像模糊。要保持图像的清晰,就希望在进行平滑处理的同时,检测出景物的边界,然后只对噪声部分进行平滑处理。由于这种方法保持了边界原有的灰度特性,因为称为边界保持平滑滤波。
基于灰度最小方差的均值滤波:
核心思想是设置一个模板,如果模板中的像素属于同一个区域,则模板中不包含边界像素,可以平滑处理;如果模板中的像素属于至少两个不同的区域,则模板中包含边界像素,这时要对其进行保持,不进行平滑处理。
要判断模板中的像素是否属于同一个区域,最常用的方法是计算模板中所有像素的灰度方差,如果方差大,则表明模板像素属于不同区域的可能性大,而如果方差小,则模板中像素属于同一区域的可能性大。
区域模板
考虑到景物的不规则性,选择如上图的9个不同形状的模板,圆圈包围的像素为当前待处理的像素。对这9个模板所覆盖区域中的像素,分别计算其灰度分布方差,之后选择出方差最小的模板中的像素灰度均值替代原像素值。基于灰度最小方差的均值滤波算法步骤:
  ·  以圆圈包围的像素f(x,y)为中心,计算9个模板中的所有像素的灰度方差
  ·  找出方差值最小的模板位置
  ·  将所选择出的模板中像素的灰度平均值替代f(x,y)
  ·  对图像中所有处于滤波范围内的像素点都进行相同的处理
K近邻均值滤波:
K近邻均值滤波KNN的核心是,在一个与待处理像素邻近的范围内,寻找出其中像素值与之最邻近的K个邻点,用该K个邻点的均值替代原像素值。
如果待处理的像素点为非噪声点,则通过选择像素值与之邻近的邻点,可以保证在进行平滑处理时,基本上是同一个区域的像素值的计算,这样就可以保证图像的清晰度。而如果待处理像素是噪声点,则因为噪声本身具有孤立点的特点,因此与邻点进行平滑处理,可以对其进行抑制。K近邻均值滤波算法步骤:
  ·  设f(x,y)为当前待处理像素,以其为中心,构造一个N×N的模板,N为奇数
  ·  在模板N×N个像素中,选择出K个与f(x,y)相邻的像素值。一般当N=3时取K=5;当N=5时,取K=7;当N=7时,取K=25
  ·  将这K个像素的均值替代原像素值f(x,y)
  ·  对图像中所有处于滤波范围内的像素点都进行相同的处理
对称近邻均值滤波:
对称近邻SNN滤波器的核心思想是,在同一个局部范围内,通过几对对称点像素值的比较,获得对相同区域及不同区域的判别,之后将均值计算在所判定的同一个区域内进行,这样可以在边界的保持更加灵活的同时又可以降低计算量。
对称近邻SNN滤波器区域模板
以待处理像素f(x,y)为中心,构造一个(2N+1)×(2N+1)的模板,这(2N+1)×(2N+1)个像素,除中心点外,可以构成2N×(2N+1)对点,坐标为(x-i,y-i),(x+i,y+i),(x-i,y+i)及(x+i,y-i),如上图中的p1、p2、q1、q2。
获得对称点之后,在每一对对称点中,选择一个与f(x,y)接近的像素点,用选择的2N×(2N+1)个点的灰度均值替代原像素值作为处理结果。
西格玛均值滤波:
西格玛Σ均值滤波是根据模板中像素值的统计特性来进行边界保持平滑滤波的。算法步骤为:
  ·  以待处理像素f(x,y)为中心,构造一个(2N+1)×(2N+1)的模板
  ·  计算该模板中的像素值的标准差σ
  ·  对模板中的像素做处理:如果f(i,j)-Δ≤f(x,y)≤f(i,j)+Δ,则δ(i,j)=1;否则δ(i,j)=0。f(i,j)为像素点(i,j)上的灰度值,Δ为2σ
  ·  如果模板中δ(i,j)=1的像素个数不小于K个,则f(x,y)的值用下式计算的值替代:
西格玛均值滤波
其中的K,对于7×7模板取值不大于4,对于5×5模板取值不大于3
  ·  如果模板中δ(i,j)=1的像素个数少于K,则表明模板中f(i,j)是一个孤立点,满足噪声特性,g(i,j)用整个模板中像素的均值替代
10)基于神经网络的方法:
可以使用多层感知器、LLNet等实现自动去噪增强。
11)其他方法:
NL-means、BM3D等方法。

三、变换域图像增强:

变换域增强,是首先经过某种变换,将图像从空间域变换到变换域,然后在变换域对频谱进行操作和处理,再将其反变换到空间域,从而得到增强后的图像。
傅里叶变换可以将图像从空间域变换到频率域,而傅里叶反变换则可以将图像的频谱逆变换为空间域。

1. 频域低通滤波:

在数字图像中,图像经傅里叶变换后,景物的概貌部分集中在低频区域,景物细节及噪声部分集中在高频区域,可以通过低通滤波将图像中的景物概貌提取出来。将处理过的频谱进行傅里叶逆变换,就能衰减噪声、平滑图像,但也会损失边缘等高频信息,使得图像变模糊。常用的低通滤波器包括理想低通滤波器、梯形低通滤波器、巴特沃斯低通滤波器、指数低通滤波器等形式。
1)理想低通滤波器:
所谓理想低通滤波器,就是截止频率内的所有频率都能无损失地通过,而在截止频率之外的所有频率分量都完全被衰减。计算机中对数字图像处理利用阶跃函数来实现理想低通滤波器:
理想低通滤波器
式中,D0是一个非负的量,称为低通滤波器的截止频率,D(u,v)是从频率域的原点到(u,v)的距离,即:
理想低通滤波器
依据理论和经验,使用理想滤波器会产生严重的振铃模糊现象,因为空间域中存在卷积关系,理想的矩阵特性注定其反变换产生无限振铃。
2)梯形低通滤波器:
梯形低通滤波器传递函数的形状介于理想低通滤波器和具有平滑过渡带的低通滤波器之间:
梯形低通滤波器
式中,传递函数的第一个转折点为D0,D1可为大于D0的任意值,即D0<D1。梯形低通滤波器的处理结果存在一定的振铃现象。
3)巴特沃斯低通滤波器:
Butterworth低通滤波器又称为最大平坦滤波器,其通带与阻带之间没有明显跳跃,即有一个平滑过渡带。n阶巴特沃斯低通滤波器的传递函数为:
Butterworth低通滤波器
或者
Butterworth低通滤波器
式中,D0为低通滤波器的截止频率。通常把H(u,v)下降到原来值的时的D(u,v)定为截止频率。经巴特沃斯低通滤波器处理的图像的模糊度会大大减小,其尾部包含大量的高频信息,并不会有振铃现象,因为通带与阻带之间存在平滑过渡。
4)指数低通滤波器:
指数低通滤波器是一种具有更快衰减率的滤波器,传递函数为:
指数低通滤波器
或者
指数低通滤波器
与巴特沃斯低通滤波器处理的图像相比,经指数低通滤波处理的图像要模糊一些,但也没有振铃现象。

2. 频域高通滤波:

数字图像经傅里叶变换后,景物细节处于高频区域,可以通过高通滤波器将这些细节提取处理。常用的高通滤波器包括理想高通滤波器、梯形高通滤波器、巴特沃斯高通滤波器、指数高通滤波器等形式,可以通过高通滤波实现图像的锐化,增强图像边缘信息。
1)理想高通滤波器:
理想高通滤波器的传递函数为:
理想高通滤波器
式中D0也表示截止频率。
2)梯形高通滤波器:
梯形高通滤波器传递函数为:
梯形高通滤波器
式中参数与梯形低通滤波器相同,也有D0<D1
3)巴特沃斯高通滤波器:
n阶Butterworth高通滤波器传递函数为:
Butterworth高通滤波器
或者
Butterworth高通滤波器
4)指数高通滤波器:
指数高通滤波器传递函数为:
指数高通滤波器
或者
指数高通滤波器

3. 频域带通滤波:

4. 频域带阻滤波:

5. 频域同态滤波器:

同态滤波是一种在频域中同时将图像亮度范围进行压缩并将图像对比度增强的方法。
人能看到景物是因为光照在该景物上,并经过景物的反射或透射作用之后,在人眼的视网膜上产生感知信号。因此,可以对一幅图像看成是由入射到景物上的光强度和景物反射的光强度组成,即f(x,y)=i(x,y)·r(x,y)。一般假定入射光的动态范围很大但变化缓慢,对应于图像频域的低频分量;而反射光变化迅速与图像的细节部分和局部的对比度相关,对应图像频域的高频成分。图像增强时的基本思路是减少入射分量,并同时增加反射分量来改善图像的表现效果。
同态滤波实现过程是,通过对图像取对数,将图像模型中的入射分量i(i,j)和反射分量r(i,j)的乘积运算变成简单的对数相加,然后对数图像通过傅里叶变换到频域,在频域中选择合适的滤波函数,减弱低频并增加高频,最后对滤波结果进行傅里叶反变换和对数逆运算(指数运算),就可得到预期的同态滤波结果。也即图像对数变换--傅里叶变换--滤波--傅里叶逆变换--指数变换。
同态滤波处理的效果取决于滤波函数的选择,通常选取低频部分小于1,而高频部分大于1。

四、其他图像增强方法:

1. 灰度图的形态学滤波:

灰度的形态学处理是将形态学作用于图像的灰阶信号,包括灰度腐蚀、灰度膨胀、灰度开运算、灰度闭运算。
灰度形态学处理的要点是设计一个结构元素,通过结构元素与待处理图像之间的相互作用,形成相应形态学滤波器,滤波的效果很大程度上取决于结构元素。
结构元素包括模板形状与模板参数两部分,模板形状可以按照问题的需要设计成圆形、矩形,或者任意所需要的形状,可以以N×N矩形模板示例。结构元素的模板参数即为模板上所设置的权值。
1)灰度腐蚀滤波:
设待处理图像为f,结构元素为b,灰度图像腐蚀的定义为:
灰度腐蚀滤波
2)灰度膨胀滤波:
设待处理图像为f,结构元素为b,灰度图像膨胀的定义为:
灰度膨胀滤波
3)灰度开运算滤波:
设待处理图像为f,结构元素为b,灰度图像开运算的定义为:
灰度开运算滤波
也就是对待处理图像先进行灰度腐蚀运算,再做灰度膨胀运算。
4)灰度闭运算滤波:
设待处理图像为f,结构元素为b,灰度图像闭运算的定义为:
灰度闭运算滤波
也就是对待处理图像先进行灰度膨胀运算,再做灰度腐蚀运算。
对于纹理简单的平坦区,灰度闭运算的去噪效果优于SNN滤波效果。对于QR码定位图形检测中,采用结构5×5的正方形结构元素,对图像分别进行开运算和闭运算处理,之后将二者信息进行融合,可以有效去除打印着墨不均匀导致的干扰。

2. 彩色增强:

人眼能够识别和区分的灰度差异有限,一般只有三四十级,但识别和区分色彩的能力却很强,可达数百种甚至上千种,因此将灰度图像通过一定映射关系转变为彩色图像,可以将人眼难以区分的灰度差异变为极易区分的色彩差异。将一幅灰度图像变成彩色图像,就可以达到增强图像的效果。
1)真彩色增强:
自然物体的彩色为真彩色。对真彩色图像增强,比如将RGB图像转到HSI颜色空间,因为其中亮度与色度无关,可以单独对亮度进行处理,或者通过调整图像对比度、亮度,然后转换回RGB颜色空间。
2)假彩色增强:
将一幅多光谱图像通过映射函数变换成三基色分量。
3)伪彩色增强:
人眼可以感知的亮度范围大约为0.01~106cd/m2,范围非常宽。但人眼并不是同时感受到这么宽的亮度范围,在人眼适应了某个平均亮度环境后,能感知的亮度范围要小得多,当平均亮度适中时,能分辨的亮度上下限之比为1000:1;而当平均亮度较低时,该比值为10:1。通过灰阶测试条测试,人眼能够直接分辨的灰阶只有16个左右。
除了亮度信息,人眼还能分辨不同的颜色,把人眼无法分辨的灰度变化,赋以不同的颜色,可以提高识别率,这就是伪彩色增强的依据。伪彩色增强有多种颜色选择方案,可以是一种特定的色调或某一范围的饱和度或光亮度,目标是达到将一个物体与背景分开以便于分辨。但也要注意,避免使用极端的光谱色,因为会导致眼睛的晶状体快速改变形状而造成疲劳,需要减低饱和度或使用光谱上接近的颜色;也要避免文字、细线和小物体这些细节部分使用纯蓝色,因为人眼的视网膜中心没有蓝色锥细胞,细节很难被看到,但蓝色作为背景色很好;避免使相近的彩色只在蓝色的数量上有区别,因为蓝色不对亮度有贡献,会产生模糊边缘;也要避免在大显示区域的周边使用红色和绿色,避免在相近的区域使用浓烈的蓝色或浓烈的红色,这会出现不期望的深度效果;对立色可以放在一起。一般情况下,红色集中在前景,绿色和黄色集中在中部,蓝色集中的背景。为用彩色准确表达灰度值,彩色应在感知上保持灰度值的顺序,也应反映灰度值间的距离,灰度数据中不存在边界在伪彩色后也不应感知到。使用RGB模型设计的伪彩色,RGB作为灰度的变换函数不应该同时下降,而亮度应单调下降,彩色应是RGB三元混合而不是逐对混合以避免夸张的饱和度。对HSI模型设计的变换,亮度I应该单调,色调H作为灰度的函数应该循环通过一个特定范围的色调,饱和度S也应是单调的。
伪彩色增强是将一幅灰度图像变换为彩色图像,把灰度图像的各个不同灰度级按照线性或非线性的映射函数变换成不同的彩色。因为原图像没有颜色,是通过人为控制的着色过程变为彩色图像,因此称为伪彩色。伪彩色增强可以分为空间域增强和频率域增强,常用的有密度分割法、灰度变换法和频率域滤波法等方式。
密度分割法:
密度分割法是把黑白图像的灰度范围划分为M个区间,对划分的每一个区间指定一种颜色。
灰度变换法:
对原图像的灰度值可用三个独立的变换来处理,利用三种变换函数来控制三种颜色的分量,从而控制合成后的输出颜色。可以依照对温度的描述方式,在温度比较低时使用冷色调,在温度比较高时使用暖色调,将亮度低的映射为蓝色,亮度高的映射为红色。
比如,在[0, L/2]时红色为常数0,[L/2, 3L/4]线性增强,[3L/4, L]输出常数L;绿色[0, L/4]随灰度级从暗到亮线性变换,[L/4, 3L/4]为常数L,[3L/4, L]线性降低到0;在[0, L/2]时蓝色为常数L,[L/2, 3L/4]线性减弱,[3L/4, L]输出常数0。这样就能合成出一种伪彩色。
频率域滤波法:
首先将灰度图像从空间域经傅里叶变换到频率域,用三个不同传递特性的滤波器将图像分离成三个独立分量,对每个范围的频率分量分别进行反变换,再经后处理,最后合成一幅伪彩色图像。
灰度调色板法:
将灰度图像中的像素灰度值对应于不同的颜色索引值,使用BMP图像文件中的位图调色板即可实现伪彩色。
区域分割法:
经过灰级窗处理后,对每个分离后的区域,采用不同的色调进行着色处理,这在医学图像处理方面经常使用,更便于对各组织进行观察。
X光图像的伪彩色处理:
使用X光行李扫描是一种广泛使用的安检手段,根据各种材料的物体对X光的反射透射特性获得的是一种灰度图像,因为人眼只能区分几十级灰度值但可以分辨几千种彩色的特点,一般使用伪彩色方法来增加所能辨识的目标种类。常用的伪彩色X图像是使用低能量和高能量X光系统,利用获取的两幅图像可以确定物质的原子数,根据原子数赋予相应的颜色。但这种系统比较复杂,成本较高,也可以使用单能量灰度图像进行伪彩色处理。
  ⑴  基于RGB的彩色映射:
  ·  线性映射:
使用Hot和Jet色标,其中Hot平滑地从黑色,通过不同深浅的红、橙和黄,到达白色;Jet的范围是从蓝色到红色,经过蓝绿、黄和橙色。Hot色标用下式计算:
X光图像的伪彩色处理
其中,I表示灰度值,m是Hot色标的彩色数量,n=f1(m×3/8),其中f1(x)将x舍入到趋向0的整数。Jet色标计算公式:
X光图像的伪彩色处理
其中,I表示灰度值,n=f2(m/4),Δ=f2(n/2)-[mod(m,4)==1],其中m为Jet色标的彩色数量,f2(x)将x舍入到最接近整数。
通过分别向左和向右移动绿色分量n/max(G)可以得到红色分量和蓝色分量的值。
  ·  非线性映射:
Warm色标从深蓝色通过品红和橙色变化到浅黄色,其中相邻彩色之间的距离是精确相等的,一般使用16个步长的色标。用这16种颜色为基色,中间彩色借助对RGB亮度值的线性插值来计算,中间颜色C的计算公式:
X光图像的伪彩色处理
其中,R、G、B是彩色C中3个通道的亮度值,Ri、Gi、Bi和Ri+1、Gi+1、Bi+1代表任意两个相邻的基彩色,Ii汇入Ii+1代表它们对应的灰度级。
  ·  代数变换:
将数学上的代数公式用于单独或成组的像素值以生成各种原始像素的组合,用所获得的结果彩色来对应赋值。示例公式:
X光图像的伪彩色处理
其中,N是1到L的整数,灰度级被分成对应L种彩色的L个相等的间隔,对于所有属于相同间隔的I只赋一个单彩色。
这种方式中,基彩色的数量保持不变,但在彩色范围上有变化。
  ·  正弦/余弦变换:
正弦函数在峰附近以及接近谷处有剧烈变化的区域,在物体相互重叠时这种连续色标优势明显。正弦函数的典型形式为:
X光图像的伪彩色处理
其中,ωR、ωG、ωB是R、G、B通道的辐射频率,θR、θG、θB是它们对应的相位角。改变每个正弦函数的频率和相位角可以用彩色增强某些范围的灰度。
  ·  彩虹变换:
彩虹变换可以看作正弦/余弦变换的一种特例,变换函数为:
X光图像的伪彩色处理
这三个周期函数总会在所选择的彩色间隔中处于峰的位置来使用。
  ⑵  基于HSI的彩色映射:
基于HSI的彩色变换可分为2类,一种是提供灰度值和对应彩色之间的直接映射,另一种则是采取一系列增强操作并将结果输入HSI分量以产生组合的彩色。
  ·  基于直方图的彩色映射:
从像素直方图数据选择并自动赋予一定的彩色。要先设定阈值、确定使用的彩色数量、确定每组像素使用的色调,设定饱和度为1,亮度为像素的灰度值,显示时将HSI图像变换到RGB空间。
  ·  基于函数的映射:
亮度选择单调增加,可以使用对数、指数变换、线性增加或其他非线性变换;关键是色调的设计,选择左半椭圆或右半椭圆;饱和度设为常数。为了可视化低密度危险物品,可对亮度进行对数变换以增加低灰度值的识别效果。一种称为Springtime的色标就是基于这种方法。
  ·  固定饱和度增强操作:
E1和E2是两幅使用某些增强操作之后的图像,将E1输入色调分量,将E2输入亮度分量,固定饱和度在[0.6,1]之间的常数。
一种CS1方法,H为E1经过直方图均衡化、对比度伸展;S设为常数;亮度I是对E2求反、H-domes、对比度伸展。
一种CS2方法,H为E1求反;S设为常数;亮度I为E2直方图均衡化、对比度伸展。
通过使用分割图像替换亮度变换中的图像层,并对应赋予色调值,就可以获得一幅包含N类目标的彩色图像。
  ·  变化饱和度增强操作:
E1输入色调和饱和度通道,E2输入到亮度通道,两组变换为:
VS1,H为E1直方图均衡化、对比度伸展;S为E1直方图均衡化、对比度伸展;亮度I为E2求反、H-domes、对比度伸展。
VS2,H为E1求反、对比度伸展;S为E1求反;亮度I为E2直方图均衡化、对比度伸展。

3. Retinex图像增强方法:

Retinex是视网膜Retina和大脑皮层Cortex的缩写,这是EdwinLand提出的人类视觉系统调节感知到物体颜色和亮度的模型,这种算法可以在动态范围压缩、边缘增强和颜色恒定性3个方面达到平衡,可对不同类型的图像进行自适应增强。
Retinex原理是将一幅图像分为亮度分量和反射分量两部分,然后通过抑制亮度图像对反射图像的影响来达到增强图像的目的。
设照射图像空间是平滑的,拍摄得到的原始图像为f(i,j),反射分量为r(i,j),亮度分量为l(i,j),三者之间满足下面的关系式:f(i,j)=r(i,j)×l(i,j)
两边取对数:R(i,j)=log(r(i,j))=log(f(i,j))-log(l(i,j))
由于物体反射后呈现的颜色是由物体本身的性质决定的,不因光源或光线亮度的变化而变化,考虑到照射空间的平滑性,亮度分量可简化为:l(i,j)=g(i,j)*f(i,j)
其中,g(i,j)为环绕函数,起平滑作用,算子*为卷积运算。
一般情况下,g(i,j)选择高斯函数:
Retinex图像增强
其中,c为尺度常量。λ为常量矩阵,使得:
Retinex图像增强
一般情况下,尺度因子越小,灰度动态范围压缩得越多,图像细节增强越明显,但过小就会导致画面失真;c越大,则图像处理效果越平滑,但如果过大,则处理效果不明显。建议尺度常量在80~100之间,灰度动态范围压缩和对比度增强可达到较好的平衡。

五、图像复原:

图像是通过摄像机等图像采集设备获取的,但由于设备固有缺陷、周围环境变化及人为因素影响,获取的图像都会有噪声或模糊等现象,称为图像退化或图像降质。以观测的图像为已知数据来恢复反映客观场景的真实图像称为图像复原,对于一种退化图像,如果能够确定其退化模型并对退化模型的参数进行准确估计,就可以选择一种合适的方法对退化模型进行复原。

1. 图像复原的典型方法:

典型的图像复原方法主要包括频域复原法、代数复原法、非线性复原法、盲复原法及其他一些复原方法。其中频域复原法比较典型的有逆滤波法、维纳滤波、等功率谱滤波、几何均值滤波等;代数复原法比较常用的有无约束的代数复原法和有约束的代数复原法,如约束最小二乘复原、能量约束复原、平滑约束复原、有约束最小平方滤波、均方误差最小滤波等;非线性复原法主要包括最大后验法、最大熵复原、投影复原等;其他还有Richardson-Lucy方法、图像几何畸变校正、盲去卷积图像复原等。
1)逆滤波法:
逆滤波复原法也称反向滤波法。根据图像退化模型,原始图像f(x,y)通过系统H并与加性噪声n(x,y)相叠加而形成退化图像:
图像退化模型
由傅里叶变换推导出:
图像退化模型
逆滤波方法就是直接将退化过程H的逆变换直接与退化图像反卷积,可以表述为:
图像退化模型
F'(u,v)就是恢复后图像的傅里叶变换,而F(u,v)是原始图像的傅里叶变换,G(u,v)是退化图像的傅里叶变换,N(u,v)是噪声的傅里叶变换,H(u,v)是退化过程的傅里叶变换。如果不考虑噪声影响,并对上式进行傅里叶反变换,即可得到恢复后的图像:
逆滤波法图像复原
因此,如果已知退化图像的傅里叶变换和退化模型,就可以求得原始图像的复原图像,在这里G(u,v)/H(u,v)起到反向滤波的作用。
利用上式进行复原处理时,u-v平面上的有些点或区域可能会出现H(u,v)=0或H(u,v)非常小的情况,这时即使没有噪声也无法准确恢复原图像;而当有噪声存在时,在H(u,v)的邻域内H(u,v)的值可能比噪声N(u,v)的值小很多,这样得到的噪声项会非常大,造成恢复出来的图像面目全非。
一般情况下,H(u,v)的幅度随着离u-v平面原点距离的增加而迅速下降,而噪声项N(u,v)的幅度变化比较平缓。在远离u-v平面的原点时,N(u,v)/H(u,v)就会变得很大,对大多数图像而言F(u,v)值很小,这时噪声占优势,无法获得满意的复原效果。因此,逆滤波仅在原点邻域内采用1/H(u,v)才有效,使用函数:
逆滤波法图像复原
w的选择应将H(u,v)的零点排除在此邻域外,但这种方法的恢复结果中振铃比较明显。一种改进方法是取:
逆滤波法图像复原
其中k和d均为小于1的常数,且d选择较小为好。
这样,对G(u,v)M(u,v)进行傅里叶逆变换,就可以复原图像。通常功率谱的低频部分以信号为主,而高频部分则主要被噪声占据,由于逆滤波的赋值随着频率的升高而升高,因此会增强高频部分的噪声,不适合用来恢复含有噪声的图像,因为噪声常常会淹没图像信号。
2)维纳滤波法:
维纳滤波方法也叫最小二乘方法,由C.W.Helstrom于1967年提出,它使原始图像及其恢复图像之间的均方误差最小,是一种有约束的复原方法,该方法不仅要求了解降质传递函数,还需要知道噪声的统计特性和噪声与图像的相关情况。
维纳滤波复原是寻找一个滤波器,使得复原后的图像和原图像的均方差最小,即:
维纳滤波法图像复原
也称为最小均方估计法MMSE。
维纳滤波器:
维纳滤波法图像复原
其中,H(u,v)*表示H(u,v)的复共轭,Snn(u,v)和Sff(u,v)分别是噪声和图像的功率谱。
维纳滤波器的复原公式为:
维纳滤波法图像复原
其中,G(u,v)是退化图像的傅里叶变换。因为实际中Snn(u,v)和Sff(u,v)很难求得,因此可用一个比值k替代二者之比,从而得到简化的维纳滤波公式:
维纳滤波法图像复原
其中,k通常利用先验知识近似取信噪比的值。使用维纳滤波恢复图像,随着k值增大,图像边缘越来越模糊;随着k值不断减小,噪声越来越明显,但图像轮廓越来越清晰,极端情况下k=0退化为逆滤波。对一些运动模糊图像,k=0.01时恢复效果最好。
维纳滤波可以有效抑制图像复原过程中的噪声放大,且能以小的代价获得好的复原效果。但使用最小均方误差只在平均意义上是最优的,不能达到人眼要求的最佳效果,为此有了参数维纳滤波方法:
维纳滤波法图像复原
即在信噪比的倒数之前加一个参数γ,γ=1为标准的维纳滤波器;γ≠1为含有参数的维纳滤波器。一般γ取值在0~0.3之间,从而达到修正该项、平滑滤波效果。
3)等功率谱滤波法:
利用图像的等功率谱进行复原的基本思想是,原始图像估值的功率谱等于原始图像的功率谱,因此称为等功率谱滤波,因为是斯托克哈姆及库尔提出的,国外文献称这种滤波器为斯托克哈姆-库尔滤波器。
等功率谱滤波的先验是假设图像和噪声均属于均匀随机场,噪声的均值为零,且与图像不相关。根据图像的退化模型和均匀随机场互相关函数的定义,同时考虑噪声与图像不相关且均值为零的特性,设恢复滤波器的传递函数为M(u,v),可得:
等功率谱滤波法图像复原
等功率滤波公式为:
等功率谱滤波法图像复原
等功率谱滤波器在没有噪声情况下,Snn(u,v)=0,这就简化为逆滤波;当有噪声存在时,在H(u,v)很小或等于零的区域,滤波器简化为:
等功率谱滤波法图像复原
因此,根据退化图像计算出退化图像的功率谱Sgg(u,v)后,就可以对图像进行恢复了。图像的自功率谱Sgg(u,v)和互功率谱Sfg(u,v)分别为:
等功率谱滤波法图像复原
图像功率谱通常都是利用原始图像统计性质相同的一类图像按定义计算的,如果不知道随机场的统计特性,也常用下式近似:
等功率谱滤波法图像复原
式中,k是根据信噪比的某种先验知识适当确定的常数,这一简化公式与维纳滤波的简化方式相同。这种等功率谱滤波器也是没有相移的,可以用于无相移的或者相移可以用其他方法确定的退化函数。等功率谱滤波器具有相当强的图像恢复能力,在某些情况下优于维纳滤波器,尤其对衰减很大的信号高频成分的恢复能力超过维纳滤波,但对高频噪声也更加敏感。
4)几何均值滤波器:
将维纳滤波器进一步泛化,即可得到几何均值滤波器:
几何均值滤波器
式中,α和γ为正的实常数。
几何均值滤波器是前面几种滤波器的一般形式,其传递函数具有参数α和γ。当α=1时,就成为逆滤波器;α=0时,就得到参数化的维纳滤波器;当γ=1时,成为标准的维纳滤波器;α=1/2而γ=1,就成为等功率谱滤波器。α=1/2时,上式为普通逆滤波和维纳滤波的几何平均,因此定义为几何均值滤波器;当γ=1而α衰减到1/2以下时,滤波器性能越来越接近逆滤波器;当α增加到1/2以上时,越来越接近维纳滤波。一般来说,可以通过γ的数值来获得所希望的维纳平滑效果。
几何均值滤波器是一个一般的滤波器,可以适用于具有线性、空间不变的模糊函数和加性、不相关噪声的情形。
5)无约束最小二乘复原方法:
前面的几种图像复原方法都是在频域进行的,需要在复原之前进行傅里叶变换,使图像在空域和频域之间转换。图像的代数复原方法是在空域中进行的,分为无约束的最小二乘复原和有约束的最小二乘复原方法,代数复原方法是由Andrews和Hunt等人推导出的一种基于离散退化系统模型的图像复原方法。
用矩阵形式描述图像f被H降质同时被噪声n污染的退化图像g,根据离散退化模型,退化图像表示为:
离散退化模型
其中,g、f、n都是N2维列矩阵,H是N2×N2矩阵。
若n=0或者对噪声一无所知,可把复原问题当作一个最小二乘问题来解决,最终求得:
无约束最小二乘图像复原
其中,(HTH)-1HT称为H的广义逆。由于H是N×N的方阵,所以:
无约束最小二乘图像复原
上面公式在频域与逆滤波相同,也就是线性代数的无约束最小二乘复原算法与逆滤波等价。
6)有约束最小二乘复原方法:
如果不考虑噪声的影响,按照离散系统的退化模型,要恢复原始图像f,需要对矩阵H求逆:
无约束最小二乘图像复原
数学上要求这个逆矩阵存在且唯一。但事实上,由于退化图像即使存在非常小的扰动,在恢复结果中都会产生不可忽视的强扰动,而实际中这种扰动是不可避免的。由于噪声的随机性,也会导致恢复问题的病态。还有一种可能,即逆矩阵不存在,但确实存在与f非常近似的解,这称为问题的奇异性。为了克服复原问题的病态,需要在恢复过程中对运算施加某种约束,从而在一组可能的结果中选择一种,这就是有约束的复原方法。
假设对图像施加某种线性运算Q,考虑噪声存在下的极小化过程,在两端范数相等的约束条件下将约束复原问题看成函数||Qf'||2求极小值问题。得到:
有约束最小二乘图像复原
式中,γ=1/λ,这是有约束最小二乘复原解的一般形式。其频域等价为:
有约束最小二乘图像复原
为了确定优化参数γ,可以使用迭代法实施复原过程。由于噪声功率||n||2是γ的单调减函数,可先取初始的γ代入复原公式,根据求得的解计算||g-Hf'||2,当结果大于||n||2时,可规定二者的差小于给定的阈值。当线性运算Q取不同的值时,代表不同的约束方式,于是得到不同的约束复原算法,常用的有三种。
能量约束:
若取线性运算矩阵为单位矩阵E,复原方程变为:
能量约束最小二乘图像复原
频域解为:
能量约束最小二乘图像复原频域解
与逆滤波相比,参数γ起正则化作用。当γ=0时退化为逆滤波,所以这种方法常称为伪逆滤波。
平滑约束:
线性运算取为Laplace算子:
Laplace算子
相应的复原方程为:
平滑约束最小二乘图像复原
频域估计为:
平滑约束最小二乘图像复原频域估计
式中,C(u,v)为算子矩阵C(m,n)填充零后的离散傅里叶变换,这种复原算法也称为CLS算法。
噪声约束:
选取Q为信噪比:
信噪比
其中,Rn=E(ffT),Rf=E(nnT)分别是图像和噪声的自相关矩阵,并且是正定对称的。
复原方程表示为:
噪声约束最小二乘图像复原
频域估计为:
维纳滤波法图像复原
上式是维纳滤波的解。
因此,在最小二乘准则前提下,对复原施加能量约束导致伪逆滤波算法,施加平滑约束导致CLS算法,施加噪声约束导致维纳滤波。
7)投影复原法:
投影复原法是一种极为有效的非线性代数复原方法,是基于迭代的空域恢复方法。忽略噪声的图像退化模型写为矩阵形式:
图像退化模型矩阵形式
其中,f是原始图像采样,g是模糊图像采样;hij为常数,表示点扩散函数矩阵的元素;f和g的采样数目为图像大小,即m和n。f={f1,f2,...,fn}可以看成n维空间中的一个向量和一个点,而上面的每一个方程代表一个超平面。选取初始估值f0={f01,f02,...,f0n},通常会选取模糊图像作为g的初值,即f0={g1,g2,...,gn},由其前次迭代值f0对f1进行估计,取f0的第一个超平面h11f1+h12f2+...+h1mfm=g1上的投影,即:
图像退化投影复原法
其中,h1=(h11,h12,...,h1m),圆点代表向量的点积,然后再取f1在第二个超平面h21f1+h22f2+...+h2mfm=g2上的投影,并称f2,依次推导下去,直到得到fn满足最后一个方程式,这就实现了迭代的第一个循环。然后再从第一个方程式开始第二次迭代,取fn在h11f1+h12f2+...+h1mfm=g1上的投影,取fn+1在h21f1+h22f2+...+h2mfm=g2上的投影,直到最后一个方程式,这就实现了第二个迭代循环。按照上述方法依次迭代下去,便得到一系列向量f0、fn、f2n...,可以证明,对于任何给定的n、m和向量hij、fkn都收敛于f。如果有唯一解,f就是这个解;假设有无穷多个解,就要找出与初值的方差和最小的解,取下式最小值时的f:
图像退化投影复原法
对灰度进行复原时,图像灰度限定在范围[0,255]内。
投影法避免了传统频域方法的振铃效应,缺点是恢复后的图像有较大噪声。由于投影法是一个迭代过程,处理速度相对频域法要慢。在相同模糊长度情况下,模糊角为斜45°时算法计算量达到最大,因此要避免对较大模糊角度的恢复,或者在恢复前先将模糊角度进行旋转,使模糊方向与水平方向平行,再用投影法进行恢复。
8)Richardson-Lucy算法:
Richardson-Lucy(RL)算法是目前应用很广泛的一种图像复原方法,也是一种迭代法。Richardson和Lucy先后独立提出基于最大似然理论的反卷积方法,Fish等将其用于图像盲复原中。该方法的理论基础是假设原始图像是满足泊松分布的数学模型,通过最大化图像模型的似然函数得到估计原始图像信息的迭代表达式:
Richardson-Lucy算法图像退化复原法
f'的迭代公式为:
Richardson-Lucy算法图像退化复原法
其中,f'k(x,y)是K次迭代后复原图像的估计值,g(x,y)为采集到的退化图像,h(x,y)为退化图像的点扩散函数。该方法的缺点是不提供结束迭代的条件阈值,需要人工根据图像复原效果决定需要的迭代次数。
在无噪声情况下,RL的每次迭代都会提高解的似然性,随着迭代次数的增加,最终将会收敛于最大似然的解。

2. 常用的图像退化模型:

图像复原就是要将图像退化过程模型化,并由此采取相反的过程以得到原始图像。主要包括3个步骤:
  ·  建立图像退化模型
  ·  估计退化模型中的未知参数
  ·  选择合适的图像恢复方法复原图像
点扩散函数PSF是对图像退化过程的一种建模,对应了不同的退化模型。
1)运动模糊退化函数:
在曝光过程中,摄像机与被拍摄物体之间的相对运动导致所拍摄的照片发生运动模糊。假设物体是沿x轴方向的恒定速度,时间T内的PSF的傅里叶变换为:
运动模糊退化函数
运动模糊不仅与运动的速度、大小有关,而且也与运动方向有关。
2)匀速线性运动退化函数:
线性运动模糊是运动模糊的特例,当成像系统与目标之间的相对运动为匀速直线运动时,系统的点扩散函数表示为:
匀速线性运动退化函数
其中,L为退化函数的模糊长度。如果噪声较低时,这种类型的退化函数可在频域辨识,即由h(x,y)傅里叶变换的带状调制来确定L。
3)大气湍流退化函数:
大气的随机运动造成了大气湍流,大气湍流导致大气折射率的随机变化,使在大气中传输的光束也随机起伏引起光束抖动、强度起伏、光束扩展等效应,使得获取的图像产生严重的退化和降质。退化模型的傅里叶变换为:
大气湍流退化函数
其中,c为与湍流相关的常数。
4)Gauss退化函数:
Gauss退化函数也是大气扰动模型,是许多光学系统最常见的退化函数,这些系统中决定系统PSF的因素很多,综合作用的结果使PSF趋于Gauss型:
Gauss退化函数
其中,K为归一化常数,a是一个正常数,σ2是表示模糊程度的方差,C是h(x,y)的圆形或方形支撑域。Gauss退化函数与大气湍流退化函数具有相同的形式,很多时候都可以用Gauss型PSF近似大气湍流退化模型。
由于Gauss函数的傅里叶变换仍然是Gauss函数,并且没有过零点,因此辨识不能利用频域过零点进行。不过,Gauss函数总可以分解为两个Gauss函数的卷积,因此如果退化函数估计偏窄,反卷积总可以消除一部分Gauss退化,使图像的分辨率得到改善。
5)光学系统散焦模糊退化函数:
散焦模糊是由于成像区域中存在不同深度的对象造成的图像退化,几何光学分析表明,散焦造成的图像退化相应的点扩散函数是一个均匀分布的圆形光斑:
光学系统散焦模糊退化函数
其中,R为散焦半径。如果退化图像的信噪比比较高,可由h(x,y)的傅里叶变换在频域图上产生圆形轨迹来确定R。其傅里叶变换为:
光学系统散焦模糊退化函数
式中,J1()表示一阶第一类Bessel函数。H(u,v)是圆对称的,它的第一个过零点的轨迹形成一个圆,假设该圆的半径为dr,则:
光学系统散焦模糊退化函数
式中,假定计算离散傅里叶变换的尺寸是M×M。利用轨迹测出dr,即可根据上式计算得到散焦半径R,从而决定散焦的PSF。
6)二维模糊的退化函数:
二维模糊也是散焦造成图像退化的一个近似模型,表示了更严重的退化形式,点扩散函数表示为:
二维模糊的退化函数
其中,L假定为奇数。

3. 运动散焦模糊退化图像的复原:

1)去除由均匀直线运动造成的模糊:
在获取图像过程中。由于景物与摄像机之间的相对运动,往往造成图像的模糊,其中均匀直线运动所造成的模糊图像的复原问题具有普遍意义。
设图像f(x,y)有一个平面运动,令x0(t)和y0(t)分别为在x方向和y方向上运动的变化分量,t表示运动时间。记录介质的总曝光量是在快门打开到关闭这段时间的积分,则模糊图像为:
由均匀直线运动造成的模糊图像
这就是由目标物或摄像机相对运动造成图像模糊的数学模型。
令G(u,v)为模糊图像的g(x,y)的傅里叶变换,由傅里叶变换的位移性质,得到:
由均匀直线运动造成的模糊图像

由均匀直线运动造成的模糊图像
可得
由均匀直线运动造成的模糊图像退化模型
上式是已知退化模型的傅里叶变换式。如果x(t)、y(t)的性质已知,则传递函数可直接求出,这样f(x,y)可复原出来。
由水平方向匀速直线运动造成的图像模糊的模型及其复原使用下式:
由水平方向匀速直线运动造成的图像模糊的模型
由水平方向匀速直线运动造成的图像模糊的复原
式中,a为总位移量;T为总运动时间;m为x/a的整数部分L=ka是x的取值范围。
由水平方向匀速直线运动造成的图像模糊的模型
上面公式的离散式为:
由水平方向匀速直线运动造成的图像模糊模型的离散式
由水平方向匀速直线运动造成的图像模糊复原的离散式
由垂直方向匀速直线运动造成的图像模糊的模型及其复原使用下式:
由垂直方向匀速直线运动造成的图像模糊模型的离散式
由垂直方向匀速直线运动造成的图像模糊复原的离散式
2)任意方向上的直线运动模糊退化图像的复原:
运动模糊退化函数:
以水平匀速直线运动为例,假设图像f(x,y)运动始终是在一个平面上,x0(t)、y0(t)分别表示图像在x和y方向上运动的变化量,t表示运动时间,则实际形成的图像就是在相机快门开、闭这段曝光时间的积分。在没有噪声情况下,实际形成的模糊图像:
匀速直线运动模糊退化函数
当被摄物体在水平方向上做匀速直线运动时形成模糊,此时图像为:
水平匀速直线运动模糊退化函数
若被摄物体在曝光时间T内总的位移量为s,则运动的速度为x0(t)=st/T,y0(t)=0,代入:
水平匀速直线运动模糊退化函数
对数字图像来说,对上式进行离散化:
水平匀速直线运动模糊退化函数离散化
其中,L为曝光瞬间以像素度量的被摄物体移动的距离。
因此,可近似认为运动模糊与物体运动的时间、速度无关,而只与曝光时间内运动的距离有关。水平方向上的直线匀速运动模糊的点扩散函数h(x,y)可表示为:
水平匀速直线运动模糊退化函数离散化
其中,L为模糊尺度。
因此,对于水平方向匀速运动模糊,只要估计得到运动模糊尺度L,则可确定其退化点扩散函数。
任意方向上的直线运动模糊图像点扩散函数可以认为是模糊方向上同一景物图像经过一系列的距离延迟后再叠加。对于任意方向上直线运动产生的模糊,只能在运动方向上直接恢复。
任意方向上的直线运动模糊图像的点扩散函数的确定方法有两种,一种是将图像旋转到水平方向,另一种是直接在运动方向上求点扩散函数。这时的点扩散函数可以表示为:
任意方向上的直线运动模糊图像的点扩散函数
其中,L为模糊尺度,θ为模糊运动方向角。
运动模糊退化函数的估计:
对于运动模糊而言,主要就是估计模糊尺度和模糊方向。运动模糊在频域上具有较为明显的特性,在频域上估计模型参数较为可靠。
在频域,运动模糊点扩散函数h(x,y)的傅里叶变换的模|H(u,v)|,在线性运动方向上是一个sinx/x型函数,因此运动模糊图像g(x,y)的傅里叶变换的模|G(u,v)|有着带条纹的外观,中央的条带宽度,也就是中间两条过零线之间距离与方向,可以用来决定运动模糊的两个参数。如果|G(u,v)|的中央的条带宽度是d,二维傅里叶变换的尺寸是m×m,则有模糊尺度L=2m/d,模糊方向与条带方向正交垂直。
根据这种特点,提出了很多利用频谱的模糊参数估计方法,如基于Radon变换或Hoff变换的参数估计方法,基于自相关的匀速运动模糊尺度参数识别,基于方向微分的运动图像方向鉴别方法等,但都只能判别单一模糊尺度或模糊方向的一个参数。3种运动模糊参数估计方法:
⑴ 水平方向运动参数估计:
对于水平方向的运动模糊,因为在频域其点扩散函数h(x,y)的傅里叶变换的模|H(u,v)|垂直方向上是一个sinx/x型函数,因此运动模糊图像g(x,y)的傅里叶变换的模|G(u,v)|有着带条纹的外观。将该频谱朝着垂直方向进行投影,即可得到投影曲线。投影曲线的中间最高峰的宽度,对应着|G(u,v)|中央条纹的宽度d,二维傅里叶变换的尺度为m×m,则有模糊尺度L=2m/d。
根据频谱的对称性,可以在曲线中点处搜索得到其主峰值点,计算主峰位置,沿着主峰点的两侧搜索其谷底值,便可得到其条带宽度是d,由此就可得到对水平方向运动模糊参数。
⑵ 基于频谱同态变换的任意方向运动模糊参数的估计:
任意方向运动模糊参数,包括对模糊运动方向与水平方向的夹角,以及模糊运动尺度L两个参数。对傅里叶变换取对数,对数运算实际上是对其进行了同态变换,目的是对|G(u,v)|进行数据的分布范围压缩,这样可在保持频谱条纹间距不变前提下,使其频谱图的纹理更加清晰,并且乘运算转换为加运算,也便于分析。
点扩散函数h(x,y)的傅里叶变换为:
点扩散函数的傅里叶变换
这是个偶函数,根据傅里叶变换的对偶性,sinc()函数再做一次傅里叶变换所得到的函数为h(x,y)。据此,对log|G(u,v)|做傅里叶变换,由于同态变换把大于数字1的数压缩了,而小于1的数扩大,且具有单调递增性可以得到沿着运动方向角θ上出现条纹。对其进行二值化处理,便可得到直线,对该直线上的点进行最小二乘拟合,便可求出其夹角,该交角就是模糊运动方向角θ,这就确定了运动模糊方向。
在获得了模糊方向后,对原始频谱按照所求得的模糊方向进行旋转,使之在旋转后的图像中频谱的间隔条纹为垂直方向,然后按照水平方向运动模糊尺度的方法计算,即可得到运动模糊尺度L。
⑶ 基于倒谱的任意方向运动模糊参数估计:
倒谱Cepstrum是指将信号的傅里叶变换谱经对数运算后再进行傅里叶反变换所得到的谱。经过求倒谱运算,运动模糊过程在时域表示为f(x,y)与h(x,y)的卷积,在频域变成f(x,y)与h(x,y)频谱的乘积,在倒谱域则成为f(x,y)与h(x,y)倒谱的相加关系。
这种相加关系在模糊图像的倒谱三维图上明显反映出来。其中高幅值部分反映了原始图像的特性,低幅值部分则反映了模糊退化系统的特性。因此通过分析低幅值部分,就可以估计得到点扩散函数的参数。倒谱出现了两个极小值点,理论证明,在倒谱图像上会出现两个最小值点,以倒谱图像的中心坐标点为原点,右边为X轴正方向,则这两个最小值点关于原点对称,且最小值点所处的位置与原点连线的长度即为模糊长度,该连线与X轴正向的夹角即为模糊角度。
复原算法:
在估计得到模糊退化模型后,在忽略噪声情况下,模糊复原问题转化为去卷积。有几种去卷积复原算法。
3)运动模糊退化图像的其他算法:
频域特征估计:
复杂景物的图像频谱比较平滑,如果引起退化的传递函数具有零点,就会迫使退化图像在某些特定频率上其频谱幅度变为零。因为线性运动模糊算子具有零点,所以运动模糊图像频谱图在相应的位置必然为零。水平方向匀速运动退化图像的频谱上,每隔N/L个点就会出现一个零点,因此频谱图上两条暗纹的距离为d=N/L。而当运动方向与水平方向成θ角时,根据三角关系,运动模糊图像频谱图上任意行上每隔N/Lcosθ个点就必然存在一个零点值,通过暗线之间的间隔即可计算出图像的模糊长度L。
然而实际中,运动模糊图像的频谱图上比一定存在零点,而是在本该出现零值的位置出现一个极小值,且两个极小值之间存在一个极大值。假设两个极小值之间的距离为d,可以得到:
运动模糊频域特征估计
因此,只要判断出运动方向θ,就可以计算出运动模糊长度,进而求出运动模糊退化的点扩散函数。如果将这些暗条纹看成直线,通过检测直线的方式就可鉴定出模糊方向,可以使用Hough变换,也可以使用Radon变换,由于Radon变换不需要进行边缘检测,更适合于这类场合。
通过Radon变换,图像所在x-y平面上的一条直线都可以使用极坐标(θ,ρ)表示,从而生成一个新的坐标空间(θ,ρ)平面。定义沿θ方向的Radon变换为:
运动模糊频域特征估计Radon变换
对退化图像G(u,v)的频谱图进行0~180°的Radon变换,取每个角度上Radon变换的最大值,由这些最大值形成曲线,取曲线上最大值对应的角度即为所求的模糊方向。这种方法为基于Radon变换的极大值算法简称MRT算法。
对二值图像来说,Radon变换的实质就是沿各个方向图像投影的集合,实现过程为:
  ·  对退化图像进行傅里叶变换,并将频谱图原点移至图像的中心位置
  ·  对图像二值化
  ·  对频谱图进行Radon变换
  ·  检测Radon变换极大值对应的投影轴角度
  ·  计算出退化图像运动模糊角度
  ·  将频谱图在θ方向进行灰度值积分投影,根据两个极小值之间距离d与模糊长度L之间的关系计算模糊长度
也可以利用Hough变换来检测暗条纹的方向,以暗条纹的方向φ为参数,采样Hough变换计算φ的极值φmax,θ=φmax-90°即是所求的运动方向。
基于空域特征的运动模糊参数估计:
运动模糊最大程度上抑制了沿运动方向上的图像分辨率,降低了运动方向上图像的高频成分,而对其他方向上图像的高频成分影响比较小,对于垂直于运动方向上的图像高频成分并不影响。空域的微分可以减小低频分量而增加高频分量,当微分方向同运动模糊方向一致时,由于此方向模糊图像对应的高频成分最小,微分使图像能量损失最大,得到的微分图像灰度值之和必然最小。因此,方向微分得到图像的灰度值之和最小对应的方向即为模糊图像的运动方向,这种方法称为MDD方法。
图像方向微分定义为沿规定方向上的相邻像素灰度值之差,角度α范围取[90°,90°],步长取1°。而规定方向上的相邻像素值可以通过线性插值或双线性插值计算得到,坐标:
基于空域特征的运动模糊参数估计
其中,Δr是进行方向微分时的微元长度,可取1、1.5、2,选取得到可以提高鉴别精度。
计算出每个像素的方向微分后,就可以计算整幅图像的α角度的方向微分的绝对值之和,找出其中的最小值,该值对应的角度即为运动模糊图像中运动方向与水平轴的夹角,也就是模糊方向。在精度允许情况下,通过限制求和范围可以减小计算量。
各种随机因素会引起鉴别误差,在以上方法基础上可以采用加权平均方法,对不同的方向微元选取不同的权值,相乘后相加,最后以得到的最小α值为模糊方向。
基于微分自相关的运动模糊长度估计:
利用运动方向上相邻像素之间的相似性和相关性,将旋转后的模糊图像在水平方向上进行一阶微分,然后在水平方向上进行微分图像的自相关运算,并将各列加起来,得到一条鉴别曲线。在鉴别曲线上的零频尖峰两侧会对称出现一对共轭的负相关峰,两负相关峰间的距离等于运动模糊点扩散函数尺度的2倍。因此只要鉴别出两个相关峰的位置,就可以估计出运动模糊的尺度。计算自相关公式:
基于微分自相关的运动模糊长度估计
其中,Li(k)代表微分图中第i行第k列像素灰度值,超出微分图范围时取值为0。这种方法称为PDA方法,计算步骤:
  ·  利用MDD方法或其他方法先鉴别出运动模糊方向,再通过图像旋转,将模糊方向角转到水平方向
  ·  对旋转后的模糊图像进行水平方向的一阶微分,获得微分图像
  ·  将微分图进行水平方向的自相关运算,得到自相关图像
  ·  把行像素自相关的结果在列方向求和,从而得到整个图像的方向微分自相关,微分自相关方向始终保持水平向右
  ·  根据自相关函数性质可知关于y轴对称,并在零点取得最大值,利用运动模糊的方向微分自相关曲线与零点一定距离的位置会出现最小值,该距离用来估计模糊尺度
利用微分方法来估计运动模糊参数比较准确,更接近于真实值,有一定抗噪声能力,但计算周期比较长,不利于实时计算。
4)模糊退化图像的复原:
图像在成像过程中,由于实际成像系统及环境影响,经常会形成失真、散焦、运动模糊、噪声干扰的图像,也就是图像退化。图像复原技术就是以待复原模糊图像为已知数据,利用图像退化的先验知识,建立相应的图像退化数学模型,再根据退化模型的逆过程进行复原处理,得到复原结果图像。
图像的模糊退化模型:
采集到的图像,如果产生模糊,可以认为是清晰图像f(x,y)经过退化系统h(x,y),再加上一些噪声n(x,y),形成模糊图像g(x,y)。图像模糊退化的数学模型可表示为:
图像模糊退化的数学模型
其中,h(x,y)为退化系统的退化函数,称为点扩散函数PSF(Point Spread Function)。
模糊图像的复原,首先估计图像的退化点扩散函数h(x,y),再忽略噪声情况下,图像复原就是一个去卷积过程。
散焦模糊退化图像的复原:
⑴ 散焦模糊退化函数:
当像点无法在像平面上聚焦时,就形成一个模糊像,一个点扩散成一个圆形光斑,并且像平面离聚焦像平面距离越大,图像越模糊。散焦模糊的点扩散函数为:
散焦模糊的点扩散函数
其中,R为散焦模糊半径。只要确定了R,即可确定散焦模糊点扩散函数,从而可采用去卷积技术,复原模糊图像。
⑵ 散焦模糊退化函数的估计:
对给出的散焦退化模糊函数模型求傅里叶变换:
散焦退化模糊函数模型求傅里叶变换
式中,J1(x)表示一阶第一类Bessel函数。
由于Bessel函数的类周期特性,散焦模糊图像的频谱是圆对称的,它的第一个过零点的轨迹形成一个圆,该圆半径为d,傅里叶频谱大小m×m,则模糊半径与d的关系为:
散焦模糊图像的傅里叶频谱模糊半径与d的关系
这样,通过计算散焦模糊图像的傅里叶频谱,从频谱图上测得d,即可求得散焦模糊图像的半径R,从而确定点扩散函数。
虽然肉眼能够看到频谱图上明显的圆环纹理,但圆环的提取却不容易,频域直接测量半径只适用于信噪比比较高的情况。可用倒谱法对散焦模糊退化模型的参数进行估计。实施步骤:
  ·  按照公式求得f(x,y)的倒谱,也就是对傅里叶变换求对数再做反变换
  ·  对倒谱矩阵按列求和,得到一维行向量S
  ·  对S求取最小值点,因为一维向量关于中间对称,只从1~n/2搜索
  ·  S最小值点对应的横坐标除以2,即为散焦模糊半径
⑶ 散焦模糊复原算法:
  ·  逆滤波图像复原方法:
散焦模糊复原逆滤波方法
因此,如果已知模糊退化图像的傅里叶变换和滤波传递函数,就可以求得原始图像的傅里叶变换,经傅里叶逆变换就可以求得原始清晰图像。这里的G(u,v)除以H(u,v)就起到了反向滤波的作用,这是逆滤波复原的基本原理。
如果H(u,v)在uv平面上取零值或者值很小时,公式呈现病态,此时采用下式进行处理:
散焦模糊复原逆滤波方法病态处理
选择合适的ω值,就可以避免H(u,v)值过小或者零值现象的出现。但使用上式处理,改变了点扩散函数频域的部分值,有时会造成一定的影响。
  ·  维纳滤波图像复原方法:
维纳滤波器是Wiener首先提出来的一种逆滤波的方法,Helstrorn首先建立将维纳滤波器用于信号,包括图像复原。维纳滤波器可以表示为:
图像复原维纳滤波器
维纳复原公式为:
图像维纳滤波器复原公式
其中,F(u,v)为清晰图像f(x,y)估计值的傅里叶变换,G(u,v)为退化模糊图像的傅里叶变换,H(u,v)为点扩散函数的傅里叶变换,H*(u,v)为H(u,v)的共轭复数,Snn(u,v)为噪声的功率谱,Sxx(u,v)为原始清晰图像的功率谱。实际中,两个功率谱很难得到,因此一般估计一个常数将其替换掉:
常数替换图像维纳滤波器复原公式
对上式进行傅里叶逆变换,就可以得到复原图像。
维纳滤波可以看作规整化的逆滤波,k起到规整化的作用。如果图像信噪比很高,Snn(u,v)与Sxx(u,v)的比值趋近于0,维纳滤波转化为逆滤波。选择合适的噪声功率谱与清晰图像功率谱的比值参数k对维纳滤波复原效果影响很大,k值越接近真实图像的信噪比复原效果越好,通常取值范围0.1~0.0001之间。维纳滤波有良好的抗噪声能力。
  ·  Lucy-Richard迭代复原方法:
该算法假设图像服从泊松分布,采用最大似然对图像进行估计,是一种基于贝叶斯概率模型的迭代算法:
图像复原Lucy-Richard迭代方法
其中,h(-x,-y)为h(x,y)频域转置的时域形式。
对于理想无噪声模糊图像,随着迭代次数增加,图像也逐渐清晰,并逐渐收敛到一个稳定状态。对于实拍图像,由于噪声的存在,在复原的同时也放大了噪声,因而要根据实际情况选择合适的迭代次数,以达到最理想的复原效果。
5) 振铃效应抑制:
由于相机视角的限制,图像边界处没有足够多的信息可以利用,因此造成边界截断,故这些模糊图像的边界处实际上是不完全符合模糊模型,在采用基于频域的去卷积复原算法,会因离散傅里叶变换的截断效应而产生振铃效应。常用两种抑制振铃的方法:
边界循环方法:
将待复原模糊图像按反射对称方式进行延拓,即将原图延拓为原来的4倍大小,然后将延拓后的图像作为初始待复原的模糊图像,复原后再取复原图像的左上1/4为最终的复原结果。
图像反射对称方式延拓
但是边界循环方法将图像大小扩为原来的4倍,计算量增大了很多。
最优窗方法:
该方法的设计思想是对图像进行加窗处理,在图像边界处赋予一定的权重,使得图像像素值向外逐步过渡到零,这样图像的边界结合处就不会出现灰度值的跳变,从而达到抑制振铃效应的目的。
最优窗法设计一个与图像同等大小的矩阵,将其分成如图9个区域:
最优窗9个区域
9个子区域的权值设置规则为,区域9的权值全为1,区域1至区域8用点扩散函数h(x,y)累加填充:
最优窗区域点扩散函数累加填充
其中,点扩散函数的有效部分为m×n,图像大小为M×N。
最优窗抑制振铃方法能够减小计算量,同时获得好的处理效果。但由于最优窗法对边界部分的权值较小,是以牺牲图像的边界信息为代价的,因此实际中可根据情况选择采用边界循环法或者最优窗法来进行振铃抑制。

六、图像重建:

传统重建算法包括傅里叶反投影重建、卷积反投影重建、代数重建、超分辨率重建等。

1. 图像超分辨率重建概述:

通过融合同一场景下具有相互位移的多帧低分辨率图像间的冗余信息,并在融合中尽可能消除模糊及噪声等多种降质因素对图像质量的影响,重建得到一帧高分辨率图像,获得更多的图像细节信息。超分辨率重建技术最早只应用于卫星图像分辨率的增强,现在扩展到视频监控、遥感、医学及高清电视等领域。
超分辨率技术需要将低分辨率图像配准到亚像素精度,并内插到高分辨率的网格上,从而获得高分辨率图像,也就是需要经过亚像素精度的配准以及配准后利用低分辨率图像信息融合成高分辨率图像两个环节。
超分辨率图像重建技术主要划分为基于重建和基于学习的两种方法。基于重建的方法是通过对低分辨率图像的获取过程进行建模,利用正则化方法来构建高分辨率图像的先验约束,由低分辨率图像估计高分辨率图像,最终将图像超分辨率复原问题转变为对一个约束条件下的代价函数最优化问题。这又分为频域法和空域法两种,频域法原理是通过在频域中去除频谱混叠来恢复图像高频信息,提高图像分辨率,但如果图像中存在局部运动就不再适用。近些年的研究集中在引入图像先验约束的空域法上,比较成熟的算法有迭代反向投影IBP方法、非均匀样本内插法、自适应滤波方法、凸集投影POCS方法、代数正则化方法、还有基于贝叶斯框架的最大后验概率估计MAP方法、马尔可夫随机场MRF理论和混合ML/MAP/POCS的方法等。
基于学习或基于示例的超分辨率图像重建,基本思想是通过学习过程获得图像的先验知识,通过学习算法获取低分辨率与高分辨率图像间的映射关系,进而指导高分辨率图像的重建。基于学习的方法主要针对如文本、人脸、车牌等特定图像进程超分辨率重建,在放大倍数较高时,仍可获得较好效果。

2. 最大后验概率估计的超分辨率重建算法:

这是根据贝叶斯估计理论下得到的超分辨率重建模型来实现的。
初始高分辨率图像估计可采用双线性插值得到,然后根据迭代算法来求最优解:
高分辨率图像估计用双线性插值迭代
其中,fk为第k次迭代所求的重建图像,λk+1为第+1次迭代的正则化参数。Q为高通滤波算子,可以使用拉普拉斯算子:
拉普拉斯算子模板
正则化参数必须能够根据逼近项和正则项之间的关系动态调整,自适应的均衡高频信息和低频信息对重建结果的影响。正则化参数应大于0,当观测数据与估计数据之间的误差增大时,信号的高频噪声增多,应加大此值以增强正则项的作用;当正则项变小时,信号的高频信息丢失严重,应减小此值以消弱正则项的平滑作用。动态调整:
图像超分辨率重建迭代
其中,γ是一个很小的数,保证分母不为零;α为收敛因子。

3. 凸集投影的超分辨率重建算法:

原理是对超分辨率重建的解空间加入多个限制条件,以确定多个解中的真解,而每一个限制条件则定义为向量空间中的凸集合。超分辨率重建问题的解空间就是这些凸的限制集的交空间。这是一个迭代过程,给定超分辨率图像空间上的任意一点,来定位一个能够满足所有凸限制集合的点。
首先对低分辨率图像序列进行配准,并将配准中所采用的基准图像进行双线性插值,作为高分辨率图像估计的初值。构造一个适合的点扩散函数,对估计的高分辨率图像进行退化,通过比较退化图像和初始低分辨率图像之间的误差来修正估计的图像,最终得到重建的高分辨率图像。
点扩散函数大多取高斯函数形式:
点扩散高斯函数
投影算子:
点扩散高斯函数投影算子
对当前估计的高分辨率图像x按照上面的公式进行投影,这样对于低分辨率图像上的每一点都可以映射到估计的高分辨率图像上,经过若干次迭代后就可使其落在凸集所约束的范围内。可以引入其他约束,如能量、相位和幅度等,例如图像的取值在[0,255]这个约束,可加入幅值约束。
在使用凸集投影重建高分辨率图像中,边缘会有振荡现象,而且重建图像的边缘振荡现象随着放大倍数的上升而明显加剧扩散。梯形滤波器在高低频间有个过渡可减弱振荡现象,同时适当地保持图像的清晰,传递函数为:
梯形滤波器传递函数
其中,D0为一非负整数,表示截至频率;D1为对应分段线性函数的分段点。

4. 非均匀插值法:

将期望得到的图像看成具有很高分辨率,而将不同的低分辨率观测图像看成在其不同位置的采样。先从配准的低分辨率图像获得相当于超分辨率图像采样网格点上的采样值,再对这些采样值进行插值并映射以得到超分辨率图像采样网格点上的采样值。这样重建得到的高分辨率图像会存在噪声、模糊等问题,还需要通过图像恢复技术进行一定的修复。

5. 迭代反投影法:

该方法使用输出图像的一个初始估计值作为当前结果,并将其投影到低分辨率图像上,根据得到的低分辨率图像与实际观测观测图像的差值调整投影直到收敛,从而得到最终输出的超分辨率图像。

6. 基于学习的超分辨率技术:

借助于预先的训练学习来寻找或建立低分辨率图像与其对应的高分辨率图像之间的映射关系,提取高频信息,从而在给定低分辨率图像的情况下,通过优化方法获取响应的高分辨率图像。

七、图像修补:

图像的采集、存储、传输及加工过程中,都有可能发生图像中部分区域发生像素缺损或缺失。对这样的图像进行加工、填补缺失的部分,恢复图像的原貌,就是图像修补。

1. 面向小尺寸修补的图像修复:

去除划痕或尺寸较小区域的修补,常用方法多基于偏微分方程或变分模型,这类方法是通过对区域进行逐个像素的扩散来达到修补图像的目的。

2. 面向大尺寸修补的区域填充:

目前实现大尺寸修补的基本原理包括两种:
将图像分解为结构部分和纹理部分,对结构强的部分仍采用扩散方法进行区域填充,而对纹理明显的部分则借助纹理合成技术进行区域填充。
在图像未退化部分选择一些范例块为样本,用这些范例块来替代拟填充区域边界处的图像块,并逐渐向拟填充区域内部递进填充,这种方法可称为基于范例的图像补全方法,或者基于样本的图像补全。

Copyright@dwenzhao.cn All Rights Reserved   备案号:粤ICP备15026949号
联系邮箱:dwenzhao@163.com  QQ:1608288659