实验5傅立叶变换.docx

上传人:b****5 文档编号:4103768 上传时间:2022-11-27 格式:DOCX 页数:20 大小:2.16MB
下载 相关 举报
实验5傅立叶变换.docx_第1页
第1页 / 共20页
实验5傅立叶变换.docx_第2页
第2页 / 共20页
实验5傅立叶变换.docx_第3页
第3页 / 共20页
实验5傅立叶变换.docx_第4页
第4页 / 共20页
实验5傅立叶变换.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

实验5傅立叶变换.docx

《实验5傅立叶变换.docx》由会员分享,可在线阅读,更多相关《实验5傅立叶变换.docx(20页珍藏版)》请在冰豆网上搜索。

实验5傅立叶变换.docx

实验5傅立叶变换

实验五傅立叶变换与频率域滤波

一、实验目的

1.理解傅立叶变换;

2.熟悉MATLAB中各种傅立叶变换相关的函数;

3.掌握频域滤波的步骤以及MATLAB的实现方法;

4.理解频域滤波器与空域滤波器的关系。

二、实验内容及步骤

1、傅立叶变换及傅立叶反变换

(1)傅立叶变换相关函数

MATLAB提供了几个和傅立叶变换相关的函数。

其说明如下:

F=fft2(f);二维傅立叶变换

real(F);傅立叶变换的实部

imag(F);傅立叶变换的虚部

abs(F);获得傅立叶频谱

fftshift(F);将变换的原点移至频率矩形的中心

ifft2(F);二维傅立叶反变换

iffshift(F);反中心平移

(2)傅立叶频谱

傅立叶频谱(傅立叶变换的幅度)反映了图像的频率成分。

幅值谱的能量往往集中于中低频部分,并且中低频部分的能量反映了图像的实体。

图像的噪声往往集中于高频部分。

下面的例子对课本中123页的图Fig4.03(a).jpg进行傅立叶变换,得到傅立叶频谱。

例:

x=imread('Fig4.03(a).jpg');

F=fft2(x);%二维傅立叶变换

FP=sqrt(real(F).^2+imag(F).^2);%计算傅立叶频谱,或者使用abs()函数

imshow(uint8(FP))%显示傅立叶频谱,直流成分分布在四个边角

figure

(2);imshow(uint8(fftshift(FP)))%中心平移的频谱图

 

思考题1:

对课本125页的图Fig4.04(a).jpg进行傅立叶变换,得到傅立叶频谱,为清楚地显示该谱,将其进行对数变换处理,增强其灰度细节。

结果类似于图5_1。

图5_1Fig4.04(a)的傅立叶谱

x=imread('Fig4.04(a).jpg');

F=fft2(x);

FP=sqrt(real(F).^2+imag(F).^2);

PP=fftshift(FP)

imshow(x)

figure

(2);

imshow(log(abs(PP)+1),[])

(3)傅立叶变换对

将一幅图像进行傅立叶变换,再进行傅立叶反变换,可以得到原始图像。

下面的例子对课本中134页的图Fig4.11(a)进行傅立叶变换,然后再进行傅立叶反变换,观察并了解实现过程。

理论上,经过傅立叶变换和傅立叶反变换,应该得到原始图像。

比较fa和f,基本差不多。

查看变量C的内容,可以看到他们之间还是有细微的差别的。

例:

closeall

f=imread('Fig4.11(a).jpg');

F=fft2(f);%傅立叶变换

ff=ifft2(F);%反傅立叶变换

fa=real(ff);%取实部

subplot(2,2,1),imshow(f);

subplot(2,2,2),imshow(F);%只显示变换的实部

subplot(2,2,3),imshow(ff,[]);

subplot(2,2,4),imshow(fa,[]);

figure

(2)

C=fa-double(f);%反变换回来的图像和原图相减

imshow(C,[]);%两者是有差别的

2、频率域滤波

按照频域滤波的步骤,在MATLAB中是很容易编程实现频域滤波。

由于滤波器就是频率域中的函数,关键是如何构造滤波器函数。

频域滤波的步骤为:

Ø对图像进行傅立叶变换DFT,即F(u,v);

Ø傅立叶变换原点中心平移;

Ø用滤波器函数H(u,v)乘以F(u,v);

Ø将原点反中心平移;

Ø傅立叶反变换;

Ø取上一步结果中的实部,即频域滤波后的结果。

(1)低通滤波

低通滤波是使低频部分通过,而使高频部分受到抑制,从而使图像变得平滑。

常用的低通滤波有理想低通滤波、巴特沃斯低通滤波和高斯低通滤波。

下面的例子实现了对课本135页图Fig4.11(a)进行理想低通滤波处理,截止频率D0=30。

例:

closeall

clearall

f=imread('Fig4.11(a).jpg');

%------构造理想低通滤波器----------

[HhHw]=size(f);%以图像的行列值作为滤波器的行列

H(1:

Hh,1:

Hw)=0;%滤波器的初值为0

x0=Hh/2;y0=Hw/2;%滤波器的中心点

forx=1:

Hh

fory=1:

Hw

if(sqrt((x-x0)*(x-x0)+(y-y0)*(y-y0))<30)%理想低通滤波器D0=30

H(x,y)=1;

end

end

end

%-----------傅立叶变换及频域滤波---------

F=fft2(f);

F=fftshift(F);%中心平移

FF=F.*H;%频域滤波。

注意必须是点乘

FFS=ifftshift(FF);

g=ifft2(FF);%傅立叶反变换

g=abs(real(g));%取变换后的实部,并取绝对值

%显示并比较结果

figure

(1),imshow(f);title('原图')

figure

(2),imshow(H);title('理想低通滤波器')

figure(3),imshow(log(abs(F)+1),[]);title('频率谱')%对数变换,便于显示结果

figure(4),imshow(log(abs(FF)+1),[]);title('频域滤波')

figure(5),imshow(g,[]);title('滤波结果')

思考题2:

参考上例,使用理想低通滤波器对图Fig4.11(a).jpg进行频域滤波。

将理想低通滤波器的截止频率D0分别设为50、70、90,对结果进行分析与比较。

(1).50:

(2)70:

(3)90:

(2)高通滤波

高通滤波是使高频部分通过,而使低频部分受到抑制,从而使图像边缘锐化。

常用的高通滤波有理想高通滤波、巴特沃斯高通滤波和高斯高通滤波。

思考题3:

参考理想低通滤波器的构造方法,构造理想高通滤波器,并使用它对图Fig4.11(a).jpg进行理想高通滤波处理。

截止频率D0分别为15、30、80,对结果进行分析和比较。

closeall

clearall

f=imread('Fig4.11(a).jpg');

%------构造理想高通滤波器----------

[HhHw]=size(f);%以图像的行列值作为滤波器的行列

H(1:

Hh,1:

Hw)=0;%滤波器的初值为0

x0=Hh/2;y0=Hw/2;%滤波器的中心点

forx=1:

Hh

fory=1:

Hw

if(sqrt((x-x0)*(x-x0)+(y-y0)*(y-y0))>30)%理想高通滤波器D0=15,D1=30,D2=80

H(x,y)=1;

end

end

end

%-----------傅立叶变换及频域滤波---------

F=fft2(f);

F=fftshift(F);%中心平移

FF=F.*H;%频域滤波。

注意必须是点乘

FFS=ifftshift(FF);

g=ifft2(FF);%傅立叶反变换

g=abs(real(g));%取变换后的实部,并取绝对值

%显示并比较结果

subplot(2,3,1),imshow(f);title('原图')

subplot(2,3,2),imshow(H);title('理想高通滤波器')

subplot(2,3,3),imshow(log(abs(F)+1),[]);title('频率谱')%对数变换,便于显示结果

subplot(2,3,4),imshow(log(abs(FF)+1),[]);title('频域滤波')

subplot(2,3,5),imshow(g,[]);title('滤波结果')

(1)15:

(2)30:

(3)80:

思考题4:

构造巴特沃思高通滤波器,并使用它对图Fig4.11(a).jpg进行高通滤波处理。

其中阶数n=2,截止频率D0分别为15、30、80,和思考题3使用理想高通滤波器滤波结果进行比较和分析。

注:

巴特沃思高通滤波器(BHPF)的传递函数为:

closeall

clearall

f=imread('Fig4.11(a).jpg');

%------构造理想高通滤波器----------

[HhHw]=size(f);%以图像的行列值作为滤波器的行列

H(1:

Hh,1:

Hw)=0;%滤波器的初值为0

x0=Hh/2;y0=Hw/2;%滤波器的中心点

forx=1:

Hh

fory=1:

Hw

if(sqrt((x-x0)*(x-x0)+(y-y0)*(y-y0))>D)%理想高通滤波器D0=15,D1=30,D2=80

H(x,y)=1/(1+[D/sqrt((x-x0)*(x-x0)+(y-y0)*(y-y0))]^4);

end

end

end

%-----------傅立叶变换及频域滤波---------

F=fft2(f);

F=fftshift(F);%中心平移

FF=F.*H;%频域滤波。

注意必须是点乘

FFS=ifftshift(FF);

g=ifft2(FF);%傅立叶反变换

g=abs(real(g));%取变换后的实部,并取绝对值

%显示并比较结果

subplot(2,3,1),imshow(f);title('原图')

subplot(2,3,2),imshow(H);title('理想高通滤波器')

subplot(2,3,3),imshow(log(abs(F)+1),[]);title('频率谱')%对数变换,便于显示结果

subplot(2,3,4),imshow(log(abs(FF)+1),[]);title('频域滤波')

subplot(2,3,5),imshow(g,[]);title('滤波结果')

(1)15:

(2)30:

(3)80:

三、频域滤波器的空间形式

由卷积定理我们知道,空间域滤波和频域滤波之间存在对应关系。

频域滤波器在空间域存在对应的空间域滤波器。

例:

closeall

clear

%-------构造理想低通滤波器----

H(1:

256,1:

256)=0;

x0=256/2;y0=256/2;

forx=1:

256

fory=1:

256

if(sqrt((x-x0)*(x-x0)+(y-y0)*(y-y0))<30)%注1

H(x,y)=1;

end

end

end

figure

imshow(H,[])

fh=ifft2(H);%频域滤波器进行傅立叶反变换

fh=fftshift(fh);

figure

imshow(log(1+abs(real(fh))),[])

title('理想低通滤波器的空间形式')

 

程序:

closeall

clear

%-------构造理想低通滤波器----

H(1:

256,1:

256)=0;

x0=256/2;y0=256/2;

forx=1:

256

fory=1:

256

if(sqrt((x-x0)*(x-x0)+(y-y0)*(y-y0))<30)%注1

H(x,y)=1;

end

end

end

subplot(1,2,1),imshow(H,[])

fh=ifft2(H);%频域滤波器进行傅立叶反变换

fh=fftshift(fh);

subplot(1,2,2),imshow(log(1+abs(real(fh))),[])

title('理想低通滤波器的空间形式')

 

思考题5:

观察截止频率分别为15、30、50时,理想低通滤波器的空间形式。

了解:

频域滤波器越窄,在空域的滤波器越宽,即空域滤波模板越大,滤除的低频成分越多,图像越模糊;以及理想低通滤波器的截止频率越小振铃现象越明显。

15:

30:

50:

四、实验报告及要求

1、按照上述实验步骤把实验结果截图,并附上文字说明。

2、回答思考题,写出实现的命令及实验结果截图。

3、使用word文档写报告,交电子文档;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1