一种基于多级阈值的中值滤波算法设计
来源:用户上传
作者:
摘 要: 虽然加权中值滤波在一定程度上对图像有着良好的去噪效果,但是不能在对图像去噪的基础上很好地保留图像细节。针对该算法存在的缺点,提出了基于多级阈值的中值滤波算法。采用Matlab软件编程,通过设定多级阈值方法来检测当前像素点是否为噪声点,使算法在去噪的基础上对图像细节有良好的改善。实验结果表明改进的加权中值滤波算法对图像细节有明显的提高。
关键词: 图像去噪; 加权中值滤波; Matlab; 多级阈值
Abstract: Although the weighted median filter has good denoising effect on the image to some extent, but it cannot retain the details of the image on the basis of the image denoising. For the shortcomings of the algorithm, a median filtering algorithm with multi-level threshold is proposed. Programming with Matlab software, through the method of setting multistage threshold to detect whether the current pixel is a noise point, the algorithm can well improve the image details on the basis of denoising. The experimental results show that the improved weighted median filtering algorithm has an obvious improvement on image details.
0 引言
数字图像在众多领域中都有着它的身影,例如醫学影像、军事和天文学等领域。然而数字图像在采集产生、加工处理、转换传输等过程中不可避免地会受到噪声污染,严重破坏了图像的原始信息特征,造成了图像视觉效果下降,难以辨别,不利于人和机器的识别处理,导致图像的使用价值下降。因此研究数字图像的增强,去除噪声对图像的污染,提高图像整体的视觉辨别度与感知度,就成为图像处理技术研究领域的一个重要课题[1]。
标准中值滤波属于非线性空间滤波器,相较于其他线性滤波器,对图像处理后有着良好的平滑效果,对随机噪声有着较好的去噪能力,但标准中值滤波器相比于窗口形状更容易受到窗口尺寸的影响[2]。
当窗口尺寸过小时,中值滤波容易受到周围像素点的干扰,从而使原为信号点的灰度值被替换成噪声点的灰度值,使得图像去噪能力受到限制,而无法正确的去除噪声。当窗口尺寸过大时,噪声点的干扰能力会大幅降低,能在很大程度上提高图像去噪能力,但会导致图像细节(例如边缘,线条,角等)遭到破坏[3]。因此,中值滤波很难在图像去噪和保留图像细节中有着较好的表现[4]。针对这些缺点,一些学者相继提出了一些滤波算法。①多重中值滤波算法,通过对滤波窗口内所有像素点进行多次中值滤波操作,将每次中值滤波后得到的中值进行保留,最后将保留的中值进行最后一次中值滤波操作,所得到的便是最终的结果,该算法极大地降低了信号点的误判,但本质上还是标准中值滤波操作。②开关中值滤波算法,通过噪声检测系统,来判断当前点属于信号点还是噪声点,然后通过循环对图像进行处理,当图像噪声较大时,其去噪能力接近标准中值滤波。③中心加权中值滤波算法,通过对图像中心像素点赋予权重,权重的大小受窗口尺寸的影响,当该点为信号点时,通过权重的性质,极可能使该点排在中间位置,相反,当该点为噪声点时,会排在较后位置,但也会因为权值的影响破坏了图像的细节[5-6]。
为了解决上述存在的问题,在中心加权滤波算法的基础上,本文通过采用多级阈值方法,对算法进行改进,更大程度上降低了对信号点的误判,在保持图像去噪的同时更好地保护了图像细节,从而可以更好地提高图像质量[7-8]。
1 中值滤波
1.1 一维中值滤波
中值定义:一组数,把n个数的值按从小到大进行排序:,y称为序列的中值,即:
1.2 二维中值滤波
二维中值滤波即是将中值滤波算法推广到二维矩阵上,形成二维中值滤波算法,也称作标准中值滤波算法[5],其实现步骤如下。
步骤一:选取尺寸合适的滤波窗口。常见的滤波窗口大小有3?3和5?5的方形滤波窗口。
步骤二:对滤波窗口内像素点p(i,j)排序。
步骤三:排序后的中间值作为中值。
步骤四:将步骤三中求出的中值代替像素p(i,j)的灰度值。SM公式如下:
1.3 中心加权中值滤波
2 多级阈值判断的加权中值滤波算法
2.1 多级阈值确定方法
阈值T的选择:该阈值是噪声点检测的第一步,目的是为了找出疑似的噪声点,大部分噪声点检测系统会根据极值来判断当前点,但例如在颜色变化、亮度变化等地方,像素点的灰度值会有很大的差异,此时再依靠极值判断就会破坏图像细节。因此,可以计算每一个像素点灰度值与最大值和最小值的平均差,用平均差来代替阈值T。
阈值T1的选择:该阈值是噪声点检测的第二步,当确定该点为疑似噪声点后,通过计算滤波窗口内所有像素点灰度值的平均值,若该点的灰度值与平均值差异较大,就可判定为当前点为噪声点,需要用中值替换。设定该阈值的大小为阈值T的40%。
2.2 改进思路及原理
图像去噪中,以往会基于极值去判断该点是否为噪声点,但这并不能成为噪声点的依据,如一些图像的亮度突变或颜色差异等,在这些地方,由于这种差异自然会导致像素灰度值的差异变大,若采用极值去判断灰度值,会将信号点误判为噪声点。因此,仅凭极值点的条件不能判断它是否是噪声点。由于噪声的特性,像素值往往会趋于极值。所以根据这个特点,可以先判断当前像素灰度值是否接近极值。从而判断该点是正常的信号点或是噪声点。 接下来,在该点可能是被噪声污染的像素点情况下去判断为信号点或是噪声点,因为也有可能是图像的边缘或细节地方。这时就不能单一的靠极值判断,而是需要去与该像素点周围的像素灰度值去比较,若该点如周围点差异较大则视为噪声点。
2.3 改进步骤
步骤一:将图像中的灰度值的最大值max和最小值min找出,与当前像素点f(i,j)比较,设定阈值T,若或者,则该点可能为噪声点,跳到步骤二。
步骤二:计算滤波窗口内所有像素灰度值平均值ave。
步骤三:设定另一阈值T1,若,对该点进行中值替换,并重复上述步骤。
3 实验结果与分析
3.1 效果图
本文采用Matlab R2016a软件平台,对算法进行编程和仿真,图片大小为256*256,以椒盐浓度为15%为例,通过使用不同滤波算法对图片进行去噪实验,最后对滤波后的图片进行对比,其效果如图3所示:
3.2 图表分析
为了客观的评价图像去噪质量,本文选取了均方误差(MSE)和峰值信噪比(PSNR)作为评价图像质量的方法,公式如下:
为了更加直观的看出多种滤波算法在面对不同椒盐浓度噪声情况下,各滤波算法的表现,给出了均方误差(MSE)和峰值信噪比(PSNR)的折线图,以及该两种评价方法的数据表格。均方误差(MSE)和峰值信噪比(PSNR)的折线图如图4和图5所示。
当MSE值越小和PSNR值越大時,代表图像越接近原始图像,而从图中和表中都可以明显看出,多重中值滤波算法在不同污染情况下,MSE值和PSNR值都变得极大或极小,表现的不如其他算法好。尽管标准中值滤波从表1数据中可以看出数值比改进的加权中值滤波算法高,但从图3例子中,可以明显看出图像在细节之处有了明显的提升,说明该算法能够在保证去除噪声良好的同时,又能保留更多的图像细节,从而证明了该算法的可用性。
4 结束语
本文在中心加权中值滤波的基础上,用多级阈值的方法改善图像去噪后细节保留的能力,从实验结果可以明显的看出,尽管改进的加权中值滤波算法在图像细节之处有了明显的提升,但该算法的提升效果只适用于噪声污染相对较小时,当噪声污染加重时,该算法还是无法能够在去除噪声和保留图像细节中进行很好的处理,本质原因是该算法依旧属于中值滤波算法,无法保持低噪声和细节的同时存在,因此,如何使图像能够在受到污染较重的时候,更好地去除噪声和保留更丰富的图像细节是今后的研究内容。
参考文献(References):
[1] Sajid Khan, Dong-Ho Lee. An adaptive dynamicallyweighted median filter for impulse noise removal[J]. EURASIP Journal on Advances in Signal Processing,2017.2017(1).
[2] 龙雪玲.低照度环境下的图像去噪及增强算法研究[D].华中师范大学,2018.
[3] 王志军,于之靖,马凯,吴军,诸葛晶昌.一种自适应中值梯度倒数加权的图像滤波算法[J].激光与光电子学进展,2017.54(12):148-154
[4] 屈正庚,牛少清.一种改进的自适应加权中值滤波算法研究[J].计算机技术与发展,2018.28(12):86-90
[5] Zhenghao Shi,Yaowei Li,Changqing Zhang,Minghua Zhao,Yaning Feng,Bo Jiang. Weighted median guided filtering method for single image rain removal[J]. EURASIP Journal on Image and Video Processing,2018.1.
[6] 江巨浪,辛倩,朱柱.一种改进的方向加权中值滤波算法[J].安庆师范大学学报(自然科学版),2019.25(1):60-63
[7] 张缓缓,马金秀,景军锋,李鹏飞.基于改进的加权中值滤波与K-means聚类的织物缺陷检测[J].纺织学报,2019.40(12):50-56
[8] 卞长林,王超,厉丹.基于改进中值滤波的影像预处理方法研究[J].电子世界,2018.18:22-23,26
转载注明来源:https://www.xzbu.com/8/view-15229029.htm