王松林,蒋 峥
(武汉科技大学 信息科学与工程学院,湖北 武汉 430081)
改进的自适应加权中值滤波算法*
王松林,蒋 峥
(武汉科技大学 信息科学与工程学院,湖北 武汉 430081)
在分析了自适应算法和中心加权算法的原理和优势后,提出了一种改进的自适应加权中值滤波(IAWMF)算法。采用扩展边缘的方式,使原图像的所有像素点能够用噪声检测因子进行噪声检测,对含有噪声的图像采用自适应窗口(N×N)的中心加权算法进行滤波,可以有效降低邻域噪声点对滤波图像质量的影响。仿真结果表明:改进算法在高浓度椒盐噪声条件下获得的实验效果峰值信噪比(PSNR)、均值平方误差(MAE)、均值绝对误差(MSE)显著优于其他算法,在降噪和保持细节中取得很好的平衡。
中值滤波; 自适应加权中值滤波算法; 噪声检测因子; 扩展边缘; 降噪滤波
图像在实际工作环境的采集、传输、转化过程[1]中,由于受到外界因素(外界光照、传感器元件的质量等)的干扰而出现图像模糊、破损等现象。因此,这些污染的图像在进行后续的图形分析之前必须要经过图像降噪、滤波等处理。常见的图像滤波算法根据空间域去噪可以分为线性滤波和非线性滤波两种。中值滤波是一种非线性滤波的常用方法,相对于其他线性平滑滤波的方法而言,中值滤波在处理随机噪声方面具有很强的降噪滤波能力。
中值滤波器是一种次序滤波器,将图像上的像素点f(I,j)作为窗口中心并采用固定大小的窗口WN对邻域内的像素点进行排序,获得中值像素点作为滤波输出值。传统的中值滤波在处理图像的过程中,其窗口的形状和大小是预先设定的,在滤波的同时会丢失图像细节(边缘、细线等)。为了解决降噪和保留细节的这一矛盾,研究人员提出许多关于改进的中值滤波的算法:文献[2]为标准的自适应中值滤波器(SMF)算法,对于判定含有噪声的像素点采用窗口内的中值作为响应,其效果对于较低密度的噪声具有良好的滤波效果,在高密度的噪声图像中滤波过后的图像变得更加模糊;文献[3]为改进的自适应中值滤波(AMF)算法,能够根据噪声浓度调节扩大滤波窗口的大小,但是容易将极值点错误判断为噪声点进行滤波处理;文献[4]为经典的开关极值滤波(PSMF)算法,采用一个固定的阈值作为噪声检测因子,导致错检、漏检噪声的概率增加,图像变得模糊;文献[5]为中心加权中值滤波(CWMF)算法,通过加权使得中心像素点在窗口所占的比重增大,但易受到噪声点的影响;文献[6]为递归中值滤波(RAMF)算法,该融合递归的方法在高密度椒盐噪声下容易丢失细节;文献[7]为基于方向加权滤波器(MDWF)算法,该算法在一定程度上提高了滤波的性能,但是增加了运算的复杂度,消耗大量的计算资源。
本文在上述算法的基础上提出了一种改进的自适应加权中值滤波(IAWMF)算法,在降噪滤波的同时,能够尽可能缓解图像的边缘和细节丢失。
自适应滤波器改变噪声检测的窗口WN(1≤N≤Nmax)的尺寸对邻域内的像素点进行噪声检测,对于检测出噪声点的窗口,使用中值像素点作为滤波的输出值,对于无噪声点的窗口则原值输出。该算法在降噪和滤波的过程中可以分为2个层次,相关变量定义如下所示:f(I,j)为图像坐标上的像素点,WN为滤波窗口,Nmax为自适应窗口尺寸的最大值,Imin为当前窗口最小像素值,Imax为当前窗口最大像素值,Imed为当前窗口像素中值。
自适应中值算法的操作如下
Lev1∶Z1=Imed-Imin,Z2=Imed-Imax
在对图像区域进行初次的噪声检测中,采用3×3的窗口模板进行遍历。当Z1>0,Z2<0,则跳转到lev2执行判断;否则,增大窗口WN的尺寸继续判断,直到N>Nmax,将窗口中心点的像素值Ii,j作为输出值(表明该窗口有噪声点)。
Lev2∶Z3=Ii,j-Imin,Z4=Ii,j-Imax
如果Z3>0,Z4<0,判断该窗口不存在噪声点,将原始灰度值Ii,j作为输出值;否则,将该窗口内像素点的中值Imed作为滤波的响应输出值。
根据自适应窗口的极值点作为噪声点的判断依据进行降噪滤波,有如下三点缺陷:1)自适应的窗口将图像的点作为中心点,采用N×N的模板逐步进行滤波,会忽略图像邻近外层边缘的像素点,影响图像整体的降噪效果。2)将局部极值点当作是噪声点并对认定含有噪声点的窗口滤波,该方法容易将图像边缘点误认为是噪声点,增加漏检和错检的可能性。3)对于判定含有噪声点的窗口,取其所在区域像素点的灰度中值作为滤波的处理结果,中值Imed的大小对于噪声的滤波输出效果有较大的影响。
针对传统的自适应中值滤波算法所存在的问题,本文提出一种改进的自适应加权中值滤波(improved adaptive weighted median filtering,IAWMF)算法,该算法在以下三个方面进行改进:
1)根据图像邻域像素点的相关性扩展图像的边界,使受污染的图像上的所有像素点都能够在滤波的窗口内进行噪声检测,本算法采用复制边界的方法[8](使用邻近分块的边界填充扩展的矩阵),在保持原图像像素值不变的条件下,确保图像上的所有像素点进行噪声检测和滤波。
2)窗口上的中值点满足lev1内的条件,表明窗口中能够找到中值;在lev2层的判断中,当窗口的中心点为极值点,该算法将此像素点所在窗口判定为噪声窗口,从而对其像素点进行相应的滤波处理,容易丢失图像的细节,产生模糊不清的现象。改进算法将该极值点判定为可疑噪声点,通过自适应噪声检测因子进一步确认该点是否为噪声点
d(I,j)=|rm-wi-r,j-r|
(1)
式中 d(i,j)为自适应窗口的噪声因子,Wi,j为窗口内元素的灰度值,r∈(Nmax,Nmax),rm为窗口的中值,当中值rm等于0或255时,rm设定为128。
当噪声检测因子的值大于或者等于阈值点 ,则判定该窗口含有噪声点。阈值点τ随着滤波窗口的改变而不断地变化着,取两者的最大值,具体公式如下
(2)
最小阈值τmin根据公式(3)获得
(3)
式中 mean(w(i,j))为当前待检测滤波窗口的中值点。
(4)
3)对于待检测图像上的点根据式(4)判断其所在滤波窗口区域是否含有噪声点。若该区域没有噪声点,则采用图像上原有像素点进行输出;若含有,采用加权方法处理的值来代替噪声点,其步骤如下所示:以图像上点f(i,j)作为该窗口WN的中心点,首先对该窗口内的灰度值进行排序,找出中值点Imed和平均值点Imean
Imed=medium{f(i,j)|f(i,j)∈WN}
(5)
Imean=average{f(i,j)|f(i,j)∈WN}
(6)
(7)
w(i,j)=
(8)
式中 Tmean取滤波窗口各个像素值与其均值的差平方的平均值,表示如下
(9)
从式(8)中可以看出来,当前窗口领域内某点的像素值f(i,j)与中值Imed差平方小于Tmean,则当前的权值由Tmean归一化所得的值来决定。该算法很大程度上避免了传统的加权算法直接使用邻域像素点与中值点之差作为权值系数的方法,降低了含噪像素点对滤波输出值的影响,从而提升滤波后图像的质量。该算法具体步骤如下所示:
1)滤波窗口通过复制原图像边缘的点,并将其作为扩展后图像的像素点,从而弥补原有算法不能进行完全滤波的缺陷。其操作如下:在原有图像的上方选择一个大小为Nmax×Nmax的矩阵,放置到该边缘的上方作为扩展的矩阵;根据此方法依次复制原有图像的边缘作为扩展的边界。实现效果如图1所示。
其中,□·为自适应窗口,■为扩展的矩阵,□为原有图像。
2)自适应窗口WN遍历图像上的点f(i,j)时,以其作为该窗口的中心点,形成一个N×N(初始值为3)大小的检测窗口,窗口内的元素的总个数为Nr,在所有的元素中找出最大值Imin,最小值Imin,平均值Imean,中间值Imed。
3)在lev1层中,如果Z1>0,Z2>0,跳转到lev2层进行噪声判断;否则增大窗口WN(N=N+2)的大小,继续判断,直到N>Nmax时,保持窗口内像素值不变,原值f(i,j)输出。在lev2层中,窗口内中心点的灰度值满足Z3>0,Z4<0的条件,则将式(4)作为噪声的检测因子,对窗口的所有像素点进行进一步的判断。
4)如果当前像素点所在滤波窗口被检测出含有噪声点,滤波窗口的像素点根据式(9)进行加权求和,所求出的值代替中心像素点输出。如果不含噪声点,则扩大窗口WN(N=N+2)的大小,重复步骤(3),直到N>Nmax时,如果此时还未检测出噪声点,则判定该窗口为不含噪声点,使用原始中心灰度值输出。
为了验证IAWMF算法的有效性,本文选取大小512×512标准lena灰度图像作为测试模板,在不同浓度的噪声条件下采用以下方式比较滤波效果的优劣:主观衡量和客观衡量。
3.1 图像的主观衡量法
该方法通过人的视觉方式来评价图像的质量的优劣。对lena图像添加浓度为90 %的椒盐噪声并通过主观衡量法验证各算法滤波效果的优劣,如图2所示。
图2 多种算法滤波效果图Fig 2 Filtering effect diagram of a variety of algorithms
从图像的滤波效果可以看出:1)普通的中值滤波法对于低密度的噪声有一定的降噪作用,但是在高密度噪声的条件下,其滤波性能大大下降;2) 自适应中值滤波算法、改进的开关中值滤波法、极值滤波法和中心加权滤波法在原有滤波算法的基础上进行了相应的改进,其滤波效果较好一些;3)改进的算法对能够准确的检测出窗口内是否含有噪声点,并根据邻域像素点的相关性采取所有元素的加权之和作为滤波的输出值,从而提高了去除噪声和保护图像细节的能力,图像的质量显著提高。
3.2 图像的客观衡量法
为了客观地验证不同滤波算法降噪滤波的特性,本文对滤波后的图像进行定量分析,其方法如下:1)峰值信噪比(PSNR);2)均值平方误差(MSE);3)均值绝对误差(MAE)。
(10)
(11)
(12)
本文采用Matlab7.0的平台,依据不同算法的原理进行编程和仿真测试。如图3、图4、图5所示。
图3 峰值信噪比的折线图Fig 3 Line chart of PSNR
图4 均值绝对误差的折线图Fig 4 Line chart of MAE
图5 均值平方误差的折线图Fig 5 Line chart of MSE
从图中可以直观地看出降噪滤波的效果:1)普通的中值滤波算法由于滤波窗口是固定的,处理噪声密度较小的图像能够获得较好的滤波效果,在浓度大于20 %时,滤波后的图像含有大量噪声,降噪的效果不理想;2)基于中心权值的中值滤波算法滤波效果最差;3)在噪声的浓度较低时,自适应中值滤波的降噪效果比不上开关中值滤波和极值中值滤波的效果。随着浓度的增加,自适应滤波算子能够自动调整滤波窗口的大小,去除掉大量的噪声点。4)本文的算法能够有效辨别噪声点和非噪声点,并对污染像素点进行加权滤波输出,使得其值更接近实际像素值,因而其图像质量相比较上述的滤波算法有显著提高,信噪参数也相应提高。
图4和图5可以直观地反映滤波后的图像与原始图像之间的差别,由式(10)、式(11)、式(12)可知,MSE,MAE的参数值越小,信噪比(PSNR)的参数值越大。本文算法的实验参数同其他算法的相比,MSE、MAE的参数值随着噪声浓度的增加不断的增大,但增加幅度远远小于其他的算子,表明该算法能够检测出噪声点,并通过自适应加权算法对噪声点进行滤波输出,有效地抑制噪声和保持图像细节,极大地提高了降噪滤波的性能。
针对当前传统的中值滤波算法在高密度椒盐噪声的条件下难以获得良好的降噪图像,本文提出了一种IAWMF算法。其优点在于采用噪声因子能够准确地检测出窗口是否含有噪声,提高了噪声检测的准确度和效率;在噪声滤波过程中,能够根据区域噪声的密度自动地调整窗口尺寸,并将窗内的像素值与加权系数乘积的值作为该窗口的中心像素点滤波后的输出值,从而避免邻域噪声的影响,保留更多图像细节。实验结果表明:与其他几种算法相比,本文的算法不仅在主观视觉上图像效果清晰,而且实验参数显示出良好的降噪滤波的性能。
[1] Motta G,Ordentlich E,Ramirez I,et al.The iDUDE framework for grayscale image denoising[J].IEEE Transactions on Image Processing,2011,20(1):1-21.
[2] 王东东,王福明.基于Matlab的数字图像噪声去除技术研究[J].机械工程与自动化,2015(2):98-99.
[3] Hwang H,Haddad R.Adaptive median filters:New algorithms and results[J].IEEE Transactions on Image Processing,1995,4(4):499-502.
[4] Sun T,Neuvo Y.Detail-preserving median-based filters in image processing[J].Pattern Recognition Letters,1994,15(4):341-347.
[5] Ko S J,Lee Y H.Center weighted median filters and their applications to image enhancement[J].IEEE Transactions on Circuits and Systems,1991,38(9):984-993.
[6] Meher S K,Singhawat B.An improved recursive and adaptive median filter for high density impulse noise[J].AEU-International Journal of Electronics and Communications,2014,68(12):1173-1179.
[7] Li Z,Liu G,Xu Y,et al.Modified directional weighted filter for removal of salt &pepper noise[J].Pattern Recognition Letters,2014,40:113-120.
[8] 余俊荣,何彦行,潘 丰.一种新的区域图像插值算法[J].传感器与微系统,2014,33(3):150-153.
Improved adaptive weighted median filtering algorithm*
WANG Song-lin,JIANG Zheng
(School of Information Science and Engineering,Wuhan University of Science and Technology, Wuhan 430081,China)
An improved adaptive weighted median filtering(IAWMF)algorithm is proposed,after analyzing the principle and advantages of the adaptive algorithm and the central weighted algorithm.Adopting the way of expanding edge,it can make all the pixels of the original image detected by noise detection factor and adopt center weighted filtering algorithm of adaptive window (N×N) for filtering image containing noise,which can effectively reduce influence of the neighborhood noise point on quality of filtering image.Simulation results show that the experimental effect (PSNR,MAE,MSE)acquired by proposed algorithm is better than other algorithms and achieve a good balance between noise reduction and preserving details.
median filtering;adaptive weighted median filtering algorithm;noise detection factor;extended edge;noise reduction filtering
10.13873/J.1000—9787(2016)11—0128—04
2015—11—19
教育部冶金装备与控制重点实验室项目(2013B06);国家级大学生创新创业训练计划项目
TP 301.6
A
1000—9787(2016)11—0128—04
王松林(1989-),男,湖北黄石人,硕士研究生,主要研究方向为图像处理。