实验4DFT及频域滤波.docx
- 文档编号:9160378
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:13
- 大小:768.18KB
实验4DFT及频域滤波.docx
《实验4DFT及频域滤波.docx》由会员分享,可在线阅读,更多相关《实验4DFT及频域滤波.docx(13页珍藏版)》请在冰豆网上搜索。
实验4DFT及频域滤波
实验名称:
数字图像DFT及频域滤波
一.实验目的
1.了解数字图像各种正交变换的概念、原理和用途。
2.深熟练掌握数字图像的DFT/DCT的原理、方法和实现流程,熟悉两种变换的性质,并能对数字图像DFT及DCT的结果进行必要解释。
3.熟悉熟悉和掌握利用MATLAB工具进行数字图像FFT及DCT的基本步骤、MATLAB函数使用及具体变换的处理流程,并能根据需要进行必要的频谱分析和可视化显示。
4.熟悉利用空域滤波器构建对应的频域滤波器的方法和关键步骤。
5.熟悉和掌握几种典型的频域低通滤波器及高通滤波器的原理、特性和作用。
6.搞清空域图像处理与频域图像处理的异同,包括处理流程、各自的优势等。
掌握频域滤波的基本原理和基本流程,并能编写出相应的程序代码。
二.实验原理
1、FFT实验
●傅立叶变换:
非周期函数表示为正弦和/或余弦乘以加权函数的积分。
●一维连续Fourier变换
对函数f(x)进行傅立叶变换得到F(u)
逆变换,即将F(u)变换到f(x)为
●一维离散Fourier变换
正变换(DFT)
逆变换(IDFT)
●用幅值和相位表示傅立叶变换
●用途:
频域滤波,图像增强,频谱分析。
三.实验步骤
1.模型图像的FFT实验
2.
图1
利用MATLAB程序自行生成如图
(1)的(a)、(b)所示的二值图像,分别对其分别进行离散傅立叶变换(DFT)计算。
(a)(b)
1)对变换结果做频谱中心化处理,并分别显示出其2D频谱图以及对应的3D频谱图。
2)
对以上两幅原始图像FFT后的频谱图进行分析,可以得出什么样的结论或验证了DFT的什么性质。
图2
3.实际图像的FFT实验
1)读任意读取一幅灰度图像,对其进行FFT变换,分别画出变换前的原始图像及其FFT后频谱的2D平面图,要求变换结果做频谱中心化处理。
2)画出对应的3D中心化频谱。
图3
4.数字图像的频域滤波处理
1)设定截止频率D0=100,试分别构建256×256的频域理想低通滤波器(ILPF)和频域理想高通滤波器(IHPF)。
编写MATLAB代码,分别画出它们的频域滤波器响应3D图及其对应的2D投影平面图。
2)任意读取一幅数字图像。
编写MATLAB代码,分别利用理想低通滤波器(ILPF)和理想高通滤波器(IHPF)对其进行频域滤波处理。
具体可参考如下步骤:
(1)消除折叠现象的填充:
P=2M,Q=2N,其中M、N为原图像的尺寸;
(2)原图f(x,y)的傅立叶变换,产生F(u,v);
(3)频谱中心化处理(当然也可以不变换,则H(u,v)要改变);
(4)用滤波器函数H(u,v)乘以F(u,v);
(5)傅立叶反变换;
(6)取实数部分,绝对值很小的虚数部分是浮点运算存在误差造成的;
(7)空间域中心还原变换(反中心化)。
3)分别显示ILPF和IHPF两种滤波器滤波前的原始图像、滤波器频域响应(2D)及滤波结果图像。
4)对滤波结果进行必要分析,如振铃现象、图像模糊、图像变暗等说明原因,以及尽可能克服这些现象的有效措施等。
图4
四.实验结果及分析
1.模型图像的FFT实验
图7
●分析I1的白色矩形面积小与I,可以认为I1是I的缩小。
●而傅立叶有如下的变换性质:
从图(5)和图(6)可以验证该性质。
2.
实际图像的FFT实验
3.
数字图像的频域滤波处理
4.
图11
●振铃现象:
已知频域上的方波对应着空域的sinc波,频域:
,傅立叶反变换到时域有:
,频域相乘相当于时域作卷积。
图像经过理想低通滤波器后,时域上相当于原始图像与sinc函数卷积,由于sinc函数振荡,则卷积后图像也会振荡;或者说由于sinc函数有两个负边带,卷积后图像信号两侧出现“过冲现象”,而且能量不集中,即产生振铃效应。
可以使用高斯低通滤波解决该现象。
●图像模糊:
由于理想低通滤波器,滤去高通成分,削弱了图像的细节,从而使图像变得模糊
●图像变暗:
由于高通滤波器会滤去低通成分,只突出图像细节,所以图像变暗,为改善这种情况,将高通滤波器的转移函数加上一常数量以便引入一些低频分量,也就是高频提升滤波器。
六.实验心得体会和建议
●心得体会:
通过这次实验使我明白了可以利用傅立叶变换将空域滤波转换在频域滤波,更加符合人们的认知,而且便于在实际中实现。
●建议:
可以让大家编写相关代码解决振铃现象,图像变暗。
七.程序源代码
1.模型图像的FFT实验
fs=1000;
I=zeros(256,256);%创建I矩阵
I(98:
158,98:
158)=1;
I1=zeros(256,256);%创建I1矩阵
I1(118:
138,118:
138)=1;
subplot(121),imshow(I);title('I');%分别在同一幅图中画出I和I1矩阵
subplot(122),imshow(I1);title('I1');
F=fft2(I);F_1=abs(fftshift(F));%分别对I和I1矩阵做二维傅立叶变换,并对结果中心化处理
F1=fft2(I1);F1_1=abs(fftshift(F1));
figure,%分别显示2D频谱图
subplot(121),imshow(log(1+F_1),[]);title('The2DSpectrumofI');
subplot(122),imshow(log(1+F1_1),[]);title('The2DSpectrumofI1');
figure,%分别显示3D频谱图
subplot(121),mesh(F_1);title('The3DSpectrumofI');
xlabel('fx'),ylabel('fy'),zlabel('amplitude');
subplot(122),mesh(F1_1);title('The3DSpectrumofI1');
xlabel('fx'),ylabel('fy'),zlabel('amplitude');
2.实际图像的FFT实验
clc,clear,closeall;
I=imread('barbara.jpg');
I=double(I);
I1=fft2(I);
I2=abs(fftshift(I1));
subplot(121),imshow(I,[]);title('原图')
subplot(122),imshow(log(1+I2),[]);title('频谱图')
[M,N]=size(I2);
m=71;n=71;
Fx=(0:
m-1)-floor(m/2);
Fy=(0:
n-1)-floor(n/2);
figure
[x,y]=meshgrid(Fx,Fy);
surfl(x,y,I2(M/2-floor(m/2):
M/2+floor(m/2),N/2-floor(n/2):
N/2+floor(n/2))/max(I2(:
)));
title('3D频域图'),xlabel('fx'),ylabel('fy'),zlabel('振幅')
3.数字图像的频域滤波处理
M=256;N=256;
foru=1:
2*M
forv=1:
2*N
D(u,v)=sqrt((u-M)^2+(v-N)^2);
end
end
d0=100;
foru=1:
2*M
forv=1:
2*N
ifD(u,v)>d0
H1(u,v)=0;%H1低通滤波
H2(u,v)=1;%H2高通滤波
else
H1(u,v)=1;
H2(u,v)=0;
end
end
end
figure,%分别显示ILPF和IHPF的2D投影平面图
subplot(121),imshow(H1,[]);title('2DILPF频谱图')
subplot(122),imshow(H2,[]);title('2DBLPF频谱图')
figure,%分别显示ILPF和IHPF的3D图
subplot(121),mesh(H1);title('3DILPF频谱图')
xlabel('u'),ylabel('v'),zlabel('振幅')
subplot(122),mesh(H2);title('3DBLPF频谱图')
xlabel('u'),ylabel('v'),zlabel('振幅')
I=imread('cameraman.tif');%读入要处理的图像
I=double(I);
Ip=zeros(2*M,2*N);%预分配内存
Ip(1:
M,1:
N)=I;%加0处理
F=fft2(Ip);%2Dfft
F0=fftshift(F);%频域中心化处理
F1=F0.*H1;
F2=F0.*H2;
Fa=real(ifft2(ifftshift(F1)));%傅立叶反变换取实部
Fb=real(ifft2(ifftshift(F2)));
figure,
subplot(231),imshow(I,[]);
title('原图');
subplot(232),imshow(log(1+F1),[]);
title('中心化频率谱');
subplot(233),imshow(Fa(1:
M,1:
N),[]);
title('ILPF滤波结果');
subplot(235),imshow(log(1+F2),[]);
title('中心化频率谱');
subplot(236),imshow(Fb(1:
M,1:
N),[]);
title('IHPF滤波结果');
八.思考题
1.简要说明数字图像频域滤波相对空域滤波的优势所在。
答:
a)信频域滤波可以容易被电路实现;
b)在频域滤波时,更具有全局属性,不必考虑边界点
2.数字图像的频域滤波中,为什么原始图像和对应的空域滤波器均需要采取补零延拓数据。
答:
防止发生频率纠缠。
3.若一幅原始图像的尺寸太小,傅立叶变换后的u,v分辨率会较低,可采用什么办法提高其频谱的u,v分辨率。
答:
采用插值补零法。
报告评分:
指导教师签字:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 DFT 滤波