基于极值的椒盐噪声滤波改进算法①
2017-10-13殷美琴
殷美琴
基于极值的椒盐噪声滤波改进算法①
殷美琴
(三江学院计算机科学与技术学院, 南京 210019)
为了在有效滤除椒盐噪声的同时更好地保护图像细节, 提出一种基于极值的椒盐噪声滤波改进算法. 算法首先进行噪声检测, 将灰度值为0和255附近的像素点, 且不构成5像素或以上直线的点作为噪声点, 其余点作为信号点; 然后进行噪声滤波, 为了保护图像中的边缘、细节或细线, 信号点不做任何处理, 而对噪声点使用梯度法进行处理. Matlab仿真实验结果表明, 新算法不仅能有效滤除椒盐噪声, 在保护细节方面也取得了优于传统中值滤波算法的效果.
椒盐噪声; 中值滤波; 极值滤波; 噪声检测; 梯度法
1 引言
数字图像在生成、处理和传输过程中, 极易产生脉冲噪声[1], 从而在图像中产生黑白相间的亮暗点, 通常称为椒盐噪声(Salt and Pepper Noise). 椒盐噪声对图像视觉效果以及图像处理结果产生了极大的影响, 因此保护信号与抑制噪声具有重要意义. 去除噪声的方法一般分为线性滤波和非线性滤波. 中值滤波是目前针对椒盐噪声去噪使用较为广泛的一种非线性滤波方法. 标准中值滤波(SMF)算法主要基于排序统计算法, 对所有像素点进行统一处理, 用其滤波窗口中心像素点邻域中值代替, 使得没有被噪声污染的像素点灰度值也发生变化, 且图像中的轮廓、边缘、细线, 滤波过程中都会被去掉, 从而造成图像模糊. 同时该算法需要进行大量的排序工作, 去噪效果受滤波模板大小影响较大, 在抑制噪声和保护细节方面存在一定的矛盾. 针对这些问题, 学者们对标准中值滤波算法进行了改进, 提出了加权中值滤波算法[2]、自适应中值滤波算法(RAMF)[3]、极值中值滤波算法[4]、基于极值的自适应中值滤波(AEM)算法[5]等. 然而这些算法在保护图像细节方面均存在一定的缺陷, 无法兼顾到图像细节的各个方面, 尤其是无法保护图像中的黑线或白线.
本文针对中低噪声率椒盐噪声图像去噪时图像细节(细线)保护的问题, 提出一种基于极值的椒盐噪声滤波改进算法. 算法首先进行噪声检测, 将灰度值为0和255附近的像素点, 且不构成5像素或以上直线的点作为噪声点, 其余点作为信号点. 然后进行噪声滤波, 为了保护图像中的边缘、细节或细线, 信号点不做任何处理, 而对噪声点使用梯度法进行处理. 实验结果表明, 本文算法不仅能够有效去除中低噪声率的椒盐噪声, 而且较好地保留了图像细节. 特别是在含有黑色或白色细线的图像中, 本文算法的峰值信噪比(PSNR)有明显提高, 滤波效果优于中值滤波和其他一些改进的算法.
2 基于极值的椒盐噪声滤波改进算法
2.1 噪声检测
椒盐噪声在图像中一般表现为随机分布的黑点(胡椒点)和白点(盐点). 对于一个8位图像, 其概率密度函数满足:
如果图像被椒盐噪声污染, 则被污染像素的灰度值将处于图像灰度取值范围内的极值(最大值或最小值)附近. 但在噪声图像中, 灰度值为极值的像素点并不一定为噪声点. 因此在进行滤波前, 应该首先进行疑似噪声点的检测. 极值中值()[6]滤波算法进行滤波时, 将图像中的一些轮廓边缘、细节或细线(细白线或细黑线)均作为噪声点加以处理, 引起了一定的边缘模糊, 误检率较高. 本文对极值中值算法的噪声检测进行改进, 提出一种新的噪声检测算法.
在灰度图像中, 椒盐噪声点的灰度值均集中在极值点附近, 因此可以确定所需处理的图像噪声点, 从而将整幅图像像素点分为可疑噪声点与信号点, 即进行可疑噪声点的初次检测. 初次检测噪声点可以得到可疑盐噪声标记矩阵和可疑椒噪声标记矩阵. 对于某一像素点, 如果标记矩阵值为1, 则认为该像素点可能受到噪声污染; 如果标记矩阵值为0, 认为没有受到污染.
一幅图像中的纹理或边界一般都大于5个像素, 因此将可疑噪声点中构成相邻5个像素或以上直线的点作为信号点. 可得噪声标记矩阵如下:
2.2 噪声滤波算法实现
(1) 为了使用*窗口判断噪声点是否是连续5像素或以上直线, 将大小为*的图像以及对应的二值矩阵均扩大为()*(). 设为原始图像,为像素点的灰度值,为扩大后的图像:
(2) 镜像反射扩展. 由于在滤波过程中, 所选用的滤波窗口最大尺寸为5*5, 因此为了有效滤除噪声图像边界上的噪声点, 在滤波前对噪声图像和噪声标记矩阵通过围绕前后边界进行两像素镜像反射来扩展.
(4) 梯度法滤波. 观察一幅未受污染的图像可以发现, 图像中每一像素灰度值都不会是孤立的, 它总是与其相邻某一方向的灰度值相近. 如图1所示, 取窗口尺寸为5*5, 定义像素八个方向邻域像素的梯度[8]为、、、、、、、. 其中,
3 仿真实验与分析
3.1 Matlab仿真实验
在实验中, 采用大小为256*256个像素、灰度级为256的Lena图像和rice图像进行仿真实验. 为了突出文中滤波算法对图像细节或细线的保护作用, 在原图加一条白色直线和一条黑色直线, 并分别添加噪声率为0.05和0.2的椒盐噪声, 滤波效果如图2-图5所示.
(a) lena原始图片 (b)加0.05噪声图像
(c)标准中值滤波算法 (d)5*5中值滤波算法
(e)自适应滤波算法 (f)本文算法
(a) lena原始图片 (b)加0.2噪声图像
(c)标准中值滤波算法(d)5*5中值滤波算法
(e)自适应滤波算法 (f)本文算法
(a)rice原始图像 (b)加0.05噪声图像
(c)标准中值滤波算法 (d)5*5中值滤波算法
(e)自适应滤波算法 (f)本文算法
(a)rice原始图像 (b)加0.2噪声图像
(c)标准中值滤波算法 (d)5*5中值滤波算法
(e)自适应滤波算法 (f)本文算法
由图2-图5可以看出:
1) 使用标准中值滤波算法处理后的图像上残留部分噪声, 图像较模糊, 且随着噪声率的增大, 残留噪声点增多, 此外原始图像中的细直线丢失, 无法很好地保护图像细节;
2) 使用窗口为5的中值滤波算法处理后的图像较清晰, 但原始图像中的细直线也被滤除;
3) 使用自适应滤波算法处理后的图像虽然很好的保护了原图中的细直线, 但整体图像比较模糊;
4) 使用本文算法进行处理后的图像, 不仅比较清晰, 而且能够很好地保存图像中的细直线, 有效解决了去除噪声点和保护细节的矛盾.
3.2 性能指标分析
对于椒盐噪声的滤除效果, 采用峰值信噪比()作为评价指标,值越大, 图像去噪效果越好, 图像质量越高.值定义为:
为验证本算法的效果, 在Matlab7上对Lena图像分别添加不同噪声率的椒盐噪声, 使用标准中值滤波器、5*5中值滤波算法、自适应滤波算法以及本文算法进行仿真实验, 得出如图6所示峰值信噪比曲线图.
图6 不同噪声率下, 各种滤波算法PSNR值
从图6可以看出, 采用本文算法进行滤波的效果明显优于其他三种算法, 随着噪声率的增加, 峰值信噪比的值减少. 实验结果表明, 对于中低噪声率噪声图像, 本文算法去噪和细节保护的综合效果最佳.
4 结语
本文主要针对数字图像滤波中去除椒盐噪声并保持图像细节(细线)方面进行了研究, 文章分析椒盐噪声及图像细节的不同特点, 提出一种噪声检测和滤波的有效方法. Matlab仿真结果表明, 新算法在滤除噪声的同时很好地保护了图像细节, 特别是在图像中含有黑、白细线时, 本文算法滤波效果明显优于其他典型滤波算法. 但算法也存在一定的局限性, 对严重椒盐噪声污染(噪声率大于0.5)的图像, 去噪效果有待提高.
1 Gonzalez RC, Wood RE. Digital Image Processing. Beijing: Publishing House of Electronics Industry, 2002.
2 Brownrigg D. The weighted median filter. Communications of the ACM, 1984, 27(8): 807–818.
3 Hwang H, Haddad RA. Adaptive median filters: New algorithms and results. IEEE Trans. on Image Processing, 1995, 4(4): 499–503.
4 邢藏菊,王守觉,邓浩江,罗予晋.一种基于极值中值的新型滤波算法.中国图象图形学报,2001,6(6):533–536.
5 苟中魁,张少军,李忠富,金剑.一种基于极值的自适应中值滤波算法.红外与激光工程,2005,34(1):98–101.
6 Xing CJ, Wang SJ, Deng HJ. A new filtering algorithm based on extremum and median value. Journal of Image and Graphics, 2001, 6(6): 533–536.
7 罗玲,王修信.一种高效去除椒盐噪声的中值滤波方法.微电子学与计算机,2011,28(11):118–121.
8 郭红伟.数字图像中椒盐噪声的滤波算法研究[硕士学位论文].昆明:云南大学,2010.
9 陈健,郑绍华,余轮,潘林.基于方向的多阈值自适应中值滤波改进算法.电子测量与仪器学报,2013,27(2):156–161.
10 陈健,郑绍华.基于方向中值的图像椒盐噪声检测算法.计算机应用,2012,(10):114–116.
Improved Algorithm Based on the Extreme Value of Salt and Pepper Noise Filtering
YIN Mei-Qin
(School of Computer Science and Technology, Sanjiang University, Nanjing 210019, China)
In order to effectively remove salt and pepper noise and protect image details, this paper proposes an improved algorithm based on the extreme value of salt and pepper noise filtering. Firstly, the algorithm detects noise, each pixel is classified to be possible noise pixel and signal pixel, and the value of possible noise pixels is near 0 and 255, and does not constitute 5 pixels or more straight points, the remaining points is as the signal point. Then, the noise filtering is taken, in order to protect the image edge details, or thread, signal pixel without any treatment, and the noise pixels using the gradient method for processing. The experimental results show that the new algorithm not only can effectively remove salt and pepper noise, and effect made in detail preservation is superior to traditional median filtering algorithm.
salt and pepper noise; median filtering; extremum filtering; noise detection; gradient method
2016-06-27;
2016-08-31
[10.15888/j.cnki.csa.005707]