基于MATLAB图像处理的几种滤波器的比较*
2013-08-29张兵兵武昕伟赵建春
张兵兵 武昕伟 赵建春
(1.陆军军官学院研究生管理大队 合肥 230031)(2.陆军军官学院电子工程教研室 合肥 230031)
1 引言
图像去噪[1]是图像增强技术中的主要内容之一,主要分为空域去噪和频域去噪,空域去噪中最常用的是中值滤波法[2~3],其运算简单且速度快,但是滤波效果受到滤波窗口大小的影响,太小滤波效果可能不理想,太大又会造成图像的模糊,丢失重要的细节信息。数字图像经傅里叶变换后,其绝大部分能量集中在图像的中心,即能量集中在低频部分,通常认为噪声的频谱具有丰富的高频分量,因此,通过使用低通滤波,保留低频信号,阻断高频信号,从而达到平滑抑噪的效果。
MATLAB是由MathWorks公司开发的一种用于数值计算及可视化图形处理的工程语言[4~5],它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为众多科学领域提供了一种全面的解决方案。本文主要利用MATLAB对图像进行傅里叶变换以及滤波窗口的设计,并对四种滤波器的特点进行分析和比较。
2 低通滤波原理
由卷积定理可知,低通滤波器[6~7]的数学表达式是:
式中,F(u,v)为含有噪声的原始图像的傅里叶变换;H(u,v)为滤波函数;F′(u,v)为低通滤波输出图像的傅里叶变换。即空域的滤波算子经傅里叶变换之后,与图像的傅里叶变换相乘,再经过傅里叶反变换,可得到滤波后的图像。其处理流程如图1所示。
图1 低通滤波流程图
图中,f(x,y)为原图像的输入矩阵;F(u,v)为傅里叶变换后的矩阵;FFT 为傅里叶变换;F′(u,v)为滤波后的傅里叶矩阵;H(u,v)为滤波函数;IFFT 为傅里叶反变换;g(x,y)为处理后的输出矩阵,实现低通滤波原理的部分源程序及相关功能的注解如下:
图2 加噪图像
I=imread('*.tif');y=fft2(double(I));%读入图像(如图2所示),并对图像进行傅里叶变换
y=fftshift(y);%频谱平移
ya=y.*hd;%滤波
ya=ifftshift(ya);Iout=ifft2(ya);%傅里叶反 变换
3 MATLAB环境下的滤波器设计
在MATLAB 工具箱中,图像的频域滤波没有专门的函数,在使用中必须自己构造。常用的低通滤波器[8~9,11]有下面几种。
3.1 理想低通滤波器
理想低通滤波器的传递函数为
3.2 Butterworth低通滤波器
Butterworth低通滤波器的传递函数为
其中,D0为截止频率;n为正整数,n越大衰减速度越快。源程序及相关功能的注解如下。
3.3 指数低通滤波器
指数低通滤波器的传递函数为
其中,σ0为截止频率。源程序及相关功能的注解如下。
3.4 梯形低通滤波器
梯形低通滤波器的传递函数为
其中,D0和D1预先给定,D0为截止频率。源程序及相关功能的注解如下。
4 实验结果及分析
本实验所用图片为含0.2椒盐噪声的灰度图像,经四种滤波器滤波,效果如图3所示。
图3 滤波效果
上图均为调整参数后的最佳效果图,可以看出:
1)经过理想低通滤波器作用后,噪声部分得到较好的平滑,但图像振铃效应及边缘模糊程度严重。
2)Butterworth低通滤波器在带通和带阻之间有平滑的过渡带,高频信号没有完全滤除,在抑噪效果良好的同时,边缘模糊程度大大降低了。
3)指数滤波器作用后的图像噪声平滑效果最好,但存在边缘模糊。
4)梯形滤波器作用后的图像去噪效果一般,但边缘模糊程度较轻。
5 结语
滤波器的设计是频域去噪的关键环节。一般情况下,高频分量包含噪声信号、边缘和细节信息,不同的图像高频分量有不同的特点,因此,在选取滤波器时,应根据具体问题结合滤波器的特点进行选取。
[1]韩晓军.数字图像处理技术与应用[M].北京:电子工业出版社,2009.
[2]刘进,厉树忠,张媛.基于混合中值滤波的图像去噪处理[J].甘肃科技,2006,22(9):41-43.
[3]高浩军,杜宇人.中值滤波在图像处理中的应用[J].电子工程师,2004,30(8):35-36.
[4]张兆礼.现代图像处理技术及MATLAB实现[M].北京:人民邮电出版社,2001.
[5]陈超.MATLAB 应用实例精讲[M].北京:电子工业出版社,2011.
[6]Pratt W K.Digital image processing:3rd edition[M].New York:Wiley Inter-science,1991.
[7]张毓晋.图像工程[M].北京:清华大学出版社,2006.
[8]余成波.数字图像处理及MATLAB实现[M].重庆大学出版社,2003.
[9]李茂清.基于MATLAB程序的FIR 滤波器设计实现[J].电力学报,2008,32(2):87-89.
[10]邓伟,田正文.利用MATLAB辅助设计IIR 数字带通滤波器[J].计算机与数字工程,2009,37(6).
[11]冈萨雷斯.数字图像处理[M].北京:电子工业出版社,2003.