改进的快速中值滤波算法在图像去噪中的应用
2011-11-15宋丽华
杨 明,宋丽华,2
(1.信息工程大学 测绘学院,河南 郑州 450052;2.军事经济学院 襄樊学院,湖北 襄樊 441118)
改进的快速中值滤波算法在图像去噪中的应用
杨 明1,宋丽华1,2
(1.信息工程大学 测绘学院,河南 郑州 450052;2.军事经济学院 襄樊学院,湖北 襄樊 441118)
在图像处理中,传统的中值滤波算法都是建立在排序理论上,并没有充分考虑到各数据之间的相关性。提出一种改进的快速中值滤波算法,充分利用数据的相关性,避免传统算法因排序所需大量数据比较。先用分治法计算第一个窗口的中值,然后利用数据的相关性计算余下窗口的中值,大大提高了效率。最后分别用传统的中值滤波算法和改进的快速中值滤波算法对同一幅有椒盐噪声的图像做去噪实验。实验表明,该算法能快速实现图像去噪。关键词:快速中值滤波算法;椒盐噪声;图像去噪
在把获取的图像转换成可用计算机处理的数字图像的整个过程中,由于种种原因图像的质量会出现不尽人意的退化,输入的图像中会包含各种噪声。噪声对图像质量产生了较大的影响。一方面影响了人们观赏图像的视觉效果;另一方面,用计算机对图像进行处理时,这些噪声有可能影响到图像处理的结果。首要的任务就是对图像进行去噪处理,所谓的图像去噪就是保留图像中的有用信息,消除或减少图像中的干扰和噪声。在实际应用中,去噪往往作为图像处理与识别的预处理,它是图像后续处理的基础。在众多图像去噪的方法中,中值滤波就是最常用的方法。它突出优点是不同于普通的模板卷积,每一个像素的值用的是该像素周围邻域内像素的中间值而不是平均值来代替,所以它能够保留高频信号,使图像保持原有的清晰轮廓。但是它在数据排序和数据比较上面比较浪费时间,且没有考虑到数据之间的相关性,所以它对图像的快速处理只能望洋兴叹。本文就是在对传统的中值滤波算法研究的基础上实现改进。
1 传统的中值滤波算法
1.1 方法原理
中值滤波是对中心像素邻域进行处理,它无法用一个线性表达式得到处理的结果,因此,它是一种非线性滤波。它的基本原理是:对于图像中任一像素,为了能够对它实现中值滤波,首先选定一个滤波窗口(窗口尺寸为(2n+1)(2n+1)),把该像素和窗口内所有的像素的灰度值进行排序(从大到小或者从小到大),再决定其中间值,然后将这一中间值赋予该像素。
例如,假设在一个邻域内,像素的灰度值如下:{11,22,23,22,22,14,18,22,26,98}。这些灰度值必须按如下的方式进行存储:{11,14,18,22,22,22,22,26,98},最后得到该邻域内像素灰度的中值为22并将其作为该点的灰度值。
1.2 中值滤波的适用范围
中值滤波是抑制噪声的非线性处理方法,它的最主要功能就是使得那些与其周围像素明显不同的像素与其周围像素更加相近,从而达到去除图像中的孤立毛刺(例如噪声)的目的。因为图像的噪声包括强烈的毛刺状成分,并且所要保持的图像特征是边沿和图像的锐度,这种方法特别有效[1]。
1.3 中值滤波的优缺点
中值滤波由于可对长拖尾概率分布的噪声起到良好的去噪平滑效果且可对图像中的某些细节起到保护作用,因此,它在图像降噪处理中得到广泛应用。但对一些细节多,特别是点、线、尖顶细节多的图像不宜采用中值滤波方法,而且当噪声密度超过50%,采用该方法会丢失相当多的图像细节信息。
2 改进的快速中值滤波算法
对于一幅包含噪声的图像,在不考虑边界滤波的情况下,图像数据需要每次都对窗口的像素值进行排序,显然,当图像数据量较大时,用传统的中值滤波算法是相当费时的。因此,要想实现对图像去噪的快速处理,就必须花费一些精力在图像数据的排序和数据比较上面。看能否不用对所有的图像数据进行排列,就能快速得到滤波窗口中的中间值。
2.1 用分治法计算第一个窗口的中值
分治法是对数据进行快速的“排序”,但并不是真正的完全的排序,而是对数据进行分块的排序。从严格意义上来说,分治法得到的中值并不是真正的中值,只能说是近似的中值,但是它在不影响图像质量的前提下是可以去除噪声的,而且达到了与理论中值一样的去噪精度,并且大大提高了滤波的速度,节省了运行时间。设选定的滤波窗口的尺寸为(2n+1)(2n+1),得到图像的灰度矩阵为 A,aij为(i,j)点的灰度值,灰度矩阵形式如下:
首先对矩阵A中的每一行元素都进行排序,这样每一行的中值都存放在 ai(n+1)这个位置,其中i=1,2,…,2n+1。进行(2n+1)次排序后得到新矩阵B,再对B矩阵中所有位于行中间位置的元素进行排序,这样就能很快得到该像素点的“中值”即a(n+1)(n+1)。
2.2 利用数据的相关性计算余下窗口的中值
因为滤波窗口移动都是一个像素紧挨一个像素,每次移动后的变化都是窗口右边插入一列元素,窗口的左边移出一列元素,但是窗口中大部分元素还是不变的。因此,可以只考虑插入和删除的元素对前一个窗口中值的影响,这样就不用比较滤波窗口中的所有元素,大大节省滤波处理的运行时间。
若插入的值和移出的值都大于或者小于前一个窗口的中值,则将两值进行交换;若一个较大,一个较小,通过在大于或小于中值的部分求最大值或者最小值,则中值相应的向左或右移一位。
设滤波窗口移动时,右侧插入的一列元素为Ri,i=1,2,…,2n+1;左侧移出的一列元素为Li,i=1,2,…,2n+1。
具体的步骤如下:
1)首先判断 Ri是否等于Li,若等于,则立即输出原中值。若不等于,则转2)。
2)若不等,则用新插入的值代替不等的值。
3)对新值用分治法,得到新的中值,将此值赋给该像素点。
4)滤波窗口继续移动,进行新的比较,重复1)、2)、3)直到最后。
3 图像质量评价标准
对一幅包含噪声的图像进行去噪处理后,评价去噪效果的好坏,需要一个好的图像质量评价标准。图像质量评价标准一般有主观评价和客观评价2种。
3.1主观评价
主观评价:顾名思义,就是用人眼去评价图像质量的好坏。图像信息往往是通过人眼来接收的,所以主观评价更具有权威性。
主观评价的方式分为比较和绝对2种方式。所谓的比较方式就是让观察者评定一系列图像,在给定的条件下,评出该图像组的优劣。而绝对方式是先预先规定评定标准,然后找到一组观察者,让这一组观察者用眼睛去观看一幅图像,分别给出他们对所观察的图像的质量作出好的或坏的评价,最后综合所有的意见给出一个综合的结论。
3.2 客观评价
客观评价主要是找一套标准来衡量,一般都是用待评价图像偏离原始标准图像的误差来衡量图像的质量。常用的是计算均方误差(M SE)和峰值信噪比(PSNR)。
1)均方误差(M SE):
式中:^f(i,j)和 f(i,j)分别表示待评价图像和原始标准图像,M和N分别表示该图像的长度和宽度。2)峰值信噪比(PSNR):
式中:Q表示图像量化的灰度级。
不难知道,均方误差(M SE)值越小说明图像恢复质量越好,峰值信噪比(PSNR)值越高图像质量相对较高。
3.3 本文采用的评价标准
因为主观评价的结果受被测图像类别和实验条件影响,且没有具体的数学模型对其进行描述,所以单单从主观评价来看去噪效果未免太过绝对。而客观评价可以从具体的数学模型对去噪的效果进行描述,因此,采取将主观评价和客观评价相结合的办法,即先主观评价,然后用相应的客观参数来作为评价质量的依据,可以大大提高评估效果的可靠性。
均方误差与主观评价的相关性较差,它计算的结果往往和人的感觉不一样,而峰值信噪比的评价结果比较符合人的主观评价结果,所以在接下来的实验中,将会采用主观评价和峰值信噪比结合来评价图像去噪效果的好坏。
4 实验结果与分析
将该改进的算法用于去噪处理,并与传统的中值滤波算法比较。实验是在 Pentium(R)4 CPU 2.4 GHz,512 MB内存的机子上进行的。首先对本实验要采用的图像cameraman介绍一下,该图为,分辨率为72像素/英尺的图像。首先对此图像做一些处理,即对该图添加0.04的椒盐噪声,再分别用两种算法对该图进行滤波处理。两种算法对cameraman图像处理的结果如图1~9所示。
得到2种算法在不同滤波尺寸窗口下所用的时间如表1所示。
表1 两种算法去噪运行时间比较
由上面的图像处理结果和表1,可看出改进算法在去噪时间上比传统中值滤波算法要快得多,从峰值信噪比上看,二者在去噪效果上大体一致。整个实验过程中,在保证图像数据不失真的前提下,随着滤波窗口的尺寸逐渐增大,即图像的数据越来越多时,这种优越更加明显,而且保持了较高的信噪比。
单从峰值信噪比这一项来看,无论是传统的中值滤波算法还是改进算法,当窗口尺寸增大到7×7,处理后的峰值信噪比已经开始降低,但是并不影响图像的去噪精度。如果再继续增大窗口尺寸(例如当窗口尺寸增大到9×9),峰值信噪比就会大幅降低,严重影响图像质量,导致去噪后图像失真。虽然该改进算法能快速提高去噪的速率,但是在保证图像质量的大前提下,最佳的窗口尺寸只能选择不大于7×7,这一点有待后续实验的综合改进。
5 结束语
本文在传统的中值滤波算法基础上提出一种改进的快速算法,即在没有将所有的数据进行排序的基础上用分治法快速计算出第一个滤波窗口的中值,然后充分利用图像数据的相关性,依次算出剩下窗口的中值,大大提高滤波的速度,减少了运行时间,实践效果良好。
[1]秦志远,李超群.数字图像处理[M].北京:解放军出版社,2004:46-64.
[2]董付国,原达,王金鹏.中值滤波快速算法的进一步思考[J].计算机工程与应用,2007,43(26):48-64.
[3]朱冰莲,潘哲明,李单单.一种中值滤波的快速算法[J].信号处理,2008,24(4):684-686.
[4]张明艳,吴莉,谢玉鹏.一种图像快速中值滤波算法[J].吉林省教育学院学报,2007,23(1):91-92.
[5]张丽,陈志强,高文焕,等.均值加速的快速中值滤波算法[J].清华大学学报,2004,44(9):58-59.
[6]刘丽梅,孙玉荣,李莉.中值滤波技术发展研究[J].云南师范大学学报,2004,24(1):83-84.
[7]VESE L.A study in the BV space of a denoising-deblurring variational p roblem[J].App1 math optm,2001,44(2):131-161.
[8]祈大勇,韩月秋.一种图像快速中值滤波算法 [J].北京理工大学学报,1996(2):57-59.
[9]荆仁杰,徐胜荣.计算机图像处理[M].杭州:浙江大学出版社,1990:45-163.
[10]贺兴华,周媛媛.MA TLAB7.x图像处理[M].北京:人民邮电出版社,2006:45-50.
The application of an improved fast algorithm of median filter on removing image noise
YANGM ing1,SONG Li-hua1,2
(1.Institute of Surveying and Mapping,Info rmation Engineering University,Zhengzhou 450052,China;2.M ilitary Economy Academy,Xiangfan Affiliated College,Xiangfan 441118,China)
In the image p rocessing,the traditionalmedian filtering algorithm is based on sorting algotithm,the correlation of datas are not considered.In the paper,we w ill list an imp roved fast algorithm of median filter;the co rrelation of datas are full used in this algo rithm;we don’t need comparing many datas.First w indow’smedian value can be computed by divide-and-conquermethod,then use the co rrelation of datas to compute the left w indow s’smedian values.Thismethod can greatly imp rove the speed of median filtering.A t last,w e w ill use traditional median filtering algo rithm and fast algo rithm of median filter to deal w ith the same image w ith salt-and-pepper noise.It can conclude that the fast algortihtm of median filter can remove image noise quickly by the trial.
fast algorithm of median filter;salt-and-pepper noise;removing image noise
TP391
A
1006-7949(2011)03-0065-05
2010-04-20
杨 明(1988-),男,硕士研究生.
[责任编辑刘文霞]