中值滤波一、实验目的:①掌握中值滤波的原理、滤波过程;②熟悉Matlab编程。二、实验内容:利用中值滤波,对图像进行滤波;三、实验原理:中值滤波是一种非线性滤波,由于它在实际运算过程中并不需要图像的统计特性,所以比较方便。中值滤波首先是被应用在一维信号处理技术中,后来被二维图像信号处理技术所应用。在一定的条件下,可以克服线性滤波器所带来的图像细节模糊,而且对滤除脉冲干扰及图像扫描噪声最为有效。但是对一些细节多,特别是点、线、尖顶细节多的图像不宜采用中值滤波的方法。中值滤波的基本原理是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替。设有一个一维序列1f,2f,…,nf,取窗口长度为m(m为奇数),对此序列进行中值滤波,就是从输入序列中相继抽出m个数,vif,…,1if,…,1f,…,1if,…,vif,其中i为窗口的中心位置,21mv,再将这m个点按其数值大小排列,取其序号为正中间的那作为出。用数学公式表示为:viiviifffMedY,,,,21,mvZi(2-2)例如:有一个序列为{0,3,4,0,7},则中值滤波为重新排序后的序列{0,0,3,4,7}中间的值为3。此例若用平均滤波,窗口也是取5,那么平均滤波输出为8.2570430。因此平均滤波的一般输出为:mffffZviivivii1Zi(2-3)对于二位序列ijX进行中值滤波时,滤波窗口也是二维的,但这种二位窗口可以有各种不同的形状,如线状、方形、圆形、十字形、圆环形等。二维数据的中值滤波可以表示为:为滤波窗口AXMedYijAji},{,(2-4)在实际使用窗口时,窗口的尺寸一般先用33再取55逐渐增大,直到其滤波效果满意为止。对于有缓变的较长轮廓线物体的图像,采用方形或圆形窗口为宜,对于包含尖顶角物体的图像,适宜用十字形窗口。使用二维中值滤波最值得注意的是保持图像中有效的细线状物体。与平均滤波器相比,中值滤波器从总体上来说,能够较好地保留原图像中的跃变部分。四、实验结果及分析(1):窗口形状对滤波效果的影响:原始图像原图像加椒盐噪声图片方形窗口十字形窗口线性窗口方形窗口适合于有缓变的较长轮廓线物体的图像,而对于包含尖顶角物体的图像,更适宜用十字形窗口。中值滤波虽然去除脉冲的效果很好,然而抑制噪声和保留细节确实一对矛盾点,为了既能有效地取出噪声又能很好的保留噪声,更适合用x形改进后自适应滤波法。(2)窗口大小对滤波效果的影响:在实际使用窗口的时候,窗口的尺寸一般先用3*3再取5*5逐渐增大,直到滤波效果满意为止。窗口越大,滤波效果越明显,但计算时间越长,而且图像越迷糊。窗口太小,滤波效果不好,会残留很多脉冲噪声,但是图像清晰,与原图像相似度更高。程序运行后显示图片:3*35*57*7分析:由图片可以看出在对椒盐噪声滤除的时候窗口为3*3的时候还残留一些噪声。5*5的效果最好。7*7窗口虽然滤出效果非常好,但是图像模糊程度非常大。(3):中值滤波对噪声的选择:运行程序输出结果加椒盐噪声图片加高斯噪声图片3*35*57*7滤除噪声效果差一般很好保留细节能力很好一般差方形窗口滤除后效果方形窗口滤除后效果一般我们将噪声分为椒盐噪声和高斯噪声。中值滤波的输出与输入噪声的密度分布有关,而且它更适用于椒盐噪声,对于高斯噪声,不论从滤出效果或是保留细节效果都不是很好。六、实验小结:中值滤波是一种非线性滤波,由于它在实际运算过程中并不需要图像的统计特性。通过本次实验了解了中值滤波的原理(是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替。)、滤波过程,在给定阈值时,中值滤波的滤波过程,熟悉了Matlab编程,学会了利用中值滤波,对图像进行滤波,给定阈值时利用中值滤波,对图像进行滤波。