资源描述:
《频域分析及图像的频域处理》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、频域分析及图像的频域处理一・实验目的1.了解离散傅立叶变换及离散余弦变换的基木原理;2.掌握进行FFT及逆变换的方法;3.了解图像在频域屮处理方法,应用MATLAB语言作简单的低通滤波器。4.有能力的同学可用VC实现傅立叶变换二.实验原理1.傅立叶变换的基木知识在图像处理的广泛应用领域屮,傅立叶变换起着非常重要的作用,具体农现在包括图像分析、图像增强及图像压缩等方面。假设/(x,y)是一个离散空间中的二维函数,则该函数的二维傅立叶变换的定义如下:M-bV-l(竺+空)F[f(x,y)]=F(u,v)=Mna=0
2、y=0离散傅立叶反变换的运义如下:F^[F(u9v)]=f(x,y)=1~MN辭D加(竺+空)£^F(u,v)eMAM=0v=0(2-1)(2-2)式屮,式屮:u,x=0,1,2,为时域变量,u,v为频域变量。像一维离散傅立叶变换一样,系数1/MNnJ"以在止变换或逆变换中,也可以在正变换和逆变换前分别乘以系数"J而,只要两式系数的乘积等于1/MN即可。一维离散函数的傅立叶频谱、相位谱和能量谱分别为(2-3)(2-4)(2-5)IF(U,V)1=J/?2(s)+/2(“°)(p{u,v)=arctanE(u,v
3、)=/?2(w,v)+/2(m,v)式中,R(u,”)和/(“,u)分别是F(u,u)的实部和虚部。1.离散余弦变换(DiscreteCosineTransform,DCT)离散余弦变换核为余弦函数。DCT除了具有-•般的正交变换性质外,它的变换阵的菇向量能很好地描述人类语音信号和图像信号的相关特征。因此,在对语音信号、图像信号的变换中,DCT变换被认为是一-种准最佳变换。近年颁布的一系列视频压缩编码的国际标准建议中(JPG图像格式就是基于DCT),都把DCT作为其中的一个基本处理模块。二维DCT。英止变换核为
4、.、2一、(2x+l)«龙(2y+l)wg(兀y,u,y)=/C(w)C(v)cos-―——cos°—(2-6)JMN2M2N式中,C(u)和C(v)的定义同式(7-48);x,u=0,y,v=0,1,2,N-lo二维DCT定义如下:设f(x,y)为MXN的数字图像矩阵,则cosIN(2-7)N_°(2y+1)m~2NF3—龙/(s)CSC(gs時欄」2y+»VMNx=oy=02M式中:x,w=0,1,2,…,M~1:yv=0,1,2,二维DCT逆变换定义如下:C(m)C(v)F(w,v)cos(2兀+1)
5、"兀cos2M(2-8)式中:x,w=0,1,2,M~1;y,v=0,1,2,N~1□三.实验提示1.MATLAB提供的快速傅立叶变换函数fft2fft2函数用于计算二维快速傅立叶变换,其语法格式为:B=fft2(T)返回图像T的二维fft变换矩阵,输入图像T和输出图像B大小相同。例如,计算图像的二维傅立叶变换,并显示其幅值的结果,其命令格式如Floadimdemossaturn2imshow(saturn2)B=fftshift(fft2(saturn2));imshow(log(abs(B)),[],'no
6、truesize')fftshiftMATLAB提供的fftshift函数用于将变换后的图像频谱中心从矩阵的原点移到矩阵的中心,其语法格式为:B=fftshift(I)对于矩阵I,B=fftshift(I)将I的一、三象限和二、四象限进行互换。ifft2ifft2函数用于计算图像的二维傅立叶反变换,其语法格式为:B=ifft2(I)B=ifft2(A)返回图像I的二维傅立叶反变换矩阵,输入图像I和输出图像B大小和同。其语法格式含义与fft2函数的语法格式和同,nJ以参考fft2函数的说明。2.简单低通滤波器的设
7、计一个图像经过傅立叶变换后,就从空域变到了频域,因此我们对以用信号处理中对于频域信号的处理方法对一幅图像进行处理。比如对图像进行低通滤波等。虽然在计算机中必定能够模拟一个锐截止频率的理想低通滤波器,但它们不能用电子元件來实现。实际中比较常用的低通滤波器有:巴特沃思(Butterworth)滤波器、指数滤波器(ELPF)、梯形低通滤波器等。衣实验屮我们设计一个理想的低通滤波器。设计理想的低通滤波器山其定义町知只要设计一个与频域图像大小完全相同的矩阵。在某一个域值内该矩阵的值为1,其余为0即可。例:若图像的大小为1
8、28*128,则可以这样设计一个低通滤波器:H=zeros(128);11(32:96,32:96)=1;%此处的范围是人为取定的,可以根据需要更改。若图像矩阵T的傅立叶变换是B(己经丿
9、Jfftshift将频谱屮心移至矩阵的屮心),则对这幅图像做低通滤波,再做傅立叶逆变换命令为LOWPASS二B.*H;%此处设变换后的矩阵为LOWPASS,另注意这儿是矩阵的点乘。C=ifft2(L0