1、遥感数字图像处理matlab频域处理目录实验五:频域图像增强 2一、 实验目的 2二、 实验内容 21. 傅立叶变换 2实验代码 2实验图像 3算法分析 32. 图像填充 4实验代码 4实验图像 5算法分析 63. 频域中滤波 6实验代码 6实验图像 6算法分析 74. 滤波比较 7实验代码 8实验图像 8算法分析 105. 低通滤波 10实验代码 10实验图像 11算法分析 146. 高通滤波 15实验代码 15实验图像 17算法分析 19三、 实验总结 20实验五:频域图像增强2024-蓝建航-地理科学一、 实验目的1、 理解傅立叶变换的基本原理,掌握频域的频谱,相位和能量谱等基本概念;
2、2、 掌握傅立叶变换的主要性质,掌握傅立叶变换进行图像填充的必要性和方法,对比填充前后进行图像傅立叶变换的差别(折叠误差) ; 3、 掌握不同滤波器的特征和频域进行图像滤波的基本步骤; 4、 掌握用 MATLAB 实现低通滤波,高通滤波和高频增强滤波,比较和分析滤波结果(模糊、纹理和振铃等); 二、 实验内容1. 傅立叶变换对一幅图像进行傅立叶变换,求其频谱和相位谱,并通过傅立叶反变换重构图像。本例中主要熟悉 MATLAB 的几个傅立叶变换函数: fft2, fftshift, ifft2, ifftshift实验代码close all;f=imread(C:实验五DIPLab5_Datape
3、a_red.jpg); figure,imshow(f,); F=fft2(double(f); % 傅立叶变换到频域 S=log(1+abs(F); % 对输出的傅立叶频谱的原点不调整 figure,imshow(S,); Fc=fftshift(F); % 对输出的傅立叶频谱的原点进行调整(平移) Sc=log(1+abs(Fc); % 求傅立叶谱并进行对数拉伸变换 figure,imshow(Sc,); ff=real(ifft2(F); % 傅立叶反变换重构图像,取实部 figure,imshow(ff,); % figure,imshow(angle(F),) %求相位谱 figur
4、e, imshow(gscale(uint8(abs(double(f)-double(ff); % 变换前后两图像的差异 实验图像原孔雀图像傅立叶频谱的原点不调整 傅立叶频谱的原点进行调整傅立叶反变换重构图像,取实部 相位谱 变换前后两图像的差异 算法分析图像通过傅立叶变换后的图像原点不在中心,须通过原点调整,其实部不能直接看不出与原图的关系。观察可知反变换后的图像与原图像无差别(相减为0),2. 图像填充掌握折叠误差产生的原因及处理方法,以矩形函数图像为例,对比图像填充前后,进行傅立叶变换的差异。实验代码close all;%没填充的滤波: f=imread(C:实验五DIPLab5_Da
5、tasquare.tif); M,N=size(f); imshow(f,) impixelinfo; F=fft2(double(f); Fc= log(1+abs(fftshift(F); figure, imshow(Fc); sig=5; H=lpfilter(gaussian,M,N,sig); G=H.*F; g=real(ifft2(G); g=gscale(g); figure,imshow(g,); %填充后的频域滤波PQ=paddedsize(size(f); Fp=fft2(double(f),PQ(1),PQ(2); %计算 FFT Hp=lpfilter(gaussi
6、an,PQ(1),PQ(2),2*sig); Gp=Hp.*Fp; gp=real(ifft2(Gp); gp=gscale(gp); figure,imshow(gp,); gpc=gp(1:size(f,1),1:size(f,2); figure,imshow(gpc,); %填充后的空域滤波 h=fspecial(gaussian,25,10); gs=imfilter(f,h); figure,imshow(gs,); 实验图像原始数据傅立叶变换不填充的滤波使用填充后的完整图像 裁剪图像 填充后的空域滤波算法分析原黑白相间图像的傅立叶是一条直线,使用不填充的高斯低通滤波器后发现图像有
7、些模糊,但垂直边缘并不模糊,其原因是DFT计算中暗含了周期性。再观察使用填充后的完整图像,因为填充的缘故,目标图像是左上角部分,其余部分的黑色是由于使用填充的缘故。对比频域滤波及空域滤波,设置相应的参数变换后可使两者的作用相同。在一定范围内频域滤波与空域滤波可能通用。3. 频域中滤波实验代码close all;f=imread(C:实验五DIPLab5_Datapea_red.jpg); PQ=paddedsize(size(f); % 填充 Fp=fft2(double(f),PQ(1),PQ(2); % 傅立叶变换 Ff=fftshift(Fp); % 图像进行原点调整 Fs=log(1+
8、abs(Ff);figure,imshow(Fs,); % 对数拉伸并显示 sig=30; % 定义滤波器的大小 Hp=lpfilter(gaussian,PQ(1),PQ(2), 2*sig); % 产生高斯低通滤波器 Hf=fftshift(Hp); % 滤波器进行原点调整 Hs=log(1+abs(Hf);figure,imshow(Hs,); % 滤波器对数拉伸并显示 Gp=Hf.*Ff; % 频域滤波 Gs=log(1+abs(Gp); figure,imshow(Gs,); gg=real(ifft2(ifftshift(Gp); % 原点调整且反变换重构图像 figure,ims
9、how(gg,) gx=gg(1:size(f,1),1:size(f,2); % 裁剪图像至原图像大小 figure,imshow(gx,); 实验图像 原始图像傅立叶变换 滤波器频域滤波重构图像裁剪后图像算法分析本例利用高斯低通滤波来说明频域滤波的工作原理。包括以下六个步骤:用乘以输入图像来进行中心变换;计算图像的 DFT,即 F(u,v);用滤波器函数 H(u,v)乘以 F(u,v);计算中结果的反 DFT;得到中结果的实部;用乘以中结果,得滤波后图像。在MatLab中可通过相应的函数实现。4. 滤波比较空域滤波与频域滤波的比较(以 sobel 算子为例).实验代码close all;f
10、=imread(C:实验五DIPLab5_Datapea_red.jpg); % 读一幅图像 figure,imshow(f,); F=fft2(double(f); % 傅立叶变换 S=fftshift(log(1+abs(F); % 对数增强且中心化 G=gscale(S); imshow(S,) % 调整显示 h=fspecial(sobel); % 使用函数 fspecial 来生成空域滤波器 figure,freqz2(h); % 查看相应频域滤波器的图形 PQ=paddedsize(size(f); % 获得输入图像填充后的大小 H=freqz2(h,PQ(1),PQ(2); %
11、获得同样大小的频域滤波器 figure,imshow(abs(H),); H1=ifftshift(H); %重排数据,使原点位于频率矩形的左上figure,imshow(abs(H1),) gs=imfilter(double(f),h); %空域滤波,默认边界填充为 0 figure,imshow(gs,) gf=dftfilt(double(f),H1); %频域滤波,周期性扩展 figure,imshow(gf,) ;d=abs(gs-gf); %求差值 figure,imshow(d,); max(d(:) min(d(:) %显示最大最小值。 实验图像 原始图像傅立叶变换图像 频域
12、滤波器的图形 同样大小的频域滤波器 重排数据,使原点位于频率矩形的左上空域滤波,默认边界填充为 0频域滤波,周期性扩展显示最大最小值算法分析频域和空域滤波器都能实现对象边界的提取,但两者并不是完全相同的,观察最后一张图可以看出,相差呈现出条纹形状。5. 低通滤波实验代码生成三种类型的低通频域滤波器(理想、巴特沃斯和高斯滤波器)close all;%产生三种低通滤波器,且中心化处理 Li=fftshift(lpfilter(ideal,500,500,50); Lb=fftshift(lpfilter(btw,500,500,50,2); Lg=fftshift(lpfilter(gaussia
13、n,500,500,50); %画剖面图 plot(Li(250,:); Hold on; plot(Lb(250,:); plot(Lg(250,:); %显示图像 figure,imshow(Li,) figure,imshow(Lb,) figure,imshow(Lg,) 在频域中直接滤波 close all;f=imread(C:实验五DIPLab5_Datapea_red.jpg); % 读一幅图像 figure,imshow(f,); PQ=paddedsize(size(f); %填充 %产生不同截止频率的理想滤波器 Hi5=lpfilter(ideal,PQ(1),PQ(2)
14、,5); Hi15=lpfilter(ideal,PQ(1),PQ(2),15); Hi30=lpfilter(ideal,PQ(1),PQ(2),30); Hi80=lpfilter(ideal,PQ(1),PQ(2),80); Hi230=lpfilter(ideal,PQ(1),PQ(2),230); %频域滤波 gi5=dftfilt(double(f),Hi5); figure,imshow(gi5,) gi15=dftfilt(double(f),Hi15); figure,imshow(gi15,) gi30=dftfilt(double(f),Hi30); figure,ims
15、how(gi30,) gi80=dftfilt(double(f),Hi80); figure,imshow(gi80,) gi230=dftfilt(double(f),Hi230); figure,imshow(gi230,) %产生 2 阶不同截止频率的巴特沃斯滤波器 Hb5=lpfilter(btw,PQ(1),PQ(2),5,2); Hb15=lpfilter(btw,PQ(1),PQ(2),15,2); Hb30=lpfilter(btw,PQ(1),PQ(2),30,2); Hb80=lpfilter(btw,PQ(1),PQ(2),80,2); Hb230=lpfilter(b
16、tw,PQ(1),PQ(2),230,2); %频域滤波 gb5=dftfilt(double(f),Hb5); figure,imshow(gb5,) gb15=dftfilt(double(f),Hb15); figure,imshow(gb15,) gb30=dftfilt(double(f),Hb30); figure,imshow(gb30,) gb80=dftfilt(double(f),Hb80); figure,imshow(gb80,) gb230=dftfilt(double(f),Hb230); figure,imshow(gb230,) %产生不同截止频率的高斯滤波器
17、Hg5=lpfilter(gaussian,PQ(1),PQ(2),5); Hg15=lpfilter(gaussian,PQ(1),PQ(2),15); Hg30=lpfilter(gaussian,PQ(1),PQ(2),30); Hg80=lpfilter(gaussian,PQ(1),PQ(2),80); Hg230=lpfilter(gaussian,PQ(1),PQ(2),230); %频域滤波 gg5=dftfilt(double(f),Hg5); figure,imshow(gg5,) gg15=dftfilt(double(f),Hg15); figure,imshow(gg
18、15,) gg30=dftfilt(double(f),Hg30); figure,imshow(gg30,) gg80=dftfilt(double(f),Hg80); figure,imshow(gg80,) gg230=dftfilt(double(f),Hg230); figure,imshow(gg230,) 实验图像剖面图理想低通巴特沃思低通高斯低通lpfilter(ideal,PQ(1),PQ(2),5/15/30/80/230)/原图lpfilter(btw,PQ(1),PQ(2),5/15/30/80/230)/原图lpfilter(gaussian,PQ(1),PQ(2),
19、5/15/30/80/230)/原图算法分析本例中对理想、巴特沃思、高斯三个低通滤波器做了对比,并分析不同的截止频率对频域滤波的影响。截止频率越小,滤去的频率信息越多,图像越平滑但更加模糊。滤波器的性能对比如下:滤波器噪声平滑效果图像模糊程度是否有振铃理想低通滤波器最好最严重严重巴特沃思低通滤波器好轻阶数越高振铃越大高斯低通滤波器一般较轻无振铃理想低通滤波器的变换函数为巴特沃思低通滤波器的变换函数为高斯低通滤波器的变换函数为出现以上情况的原因可以由剖面图来解释,理想低通滤波在截止频率时直接从1变为0,而巴特沃思与高斯低通是渐变的,由此产生不同的平滑效果与模糊程度,及振铃的影响。在实际选择低通滤
20、波的种类及截止频率大小的时候,要综合考虑对平滑效果与图像模糊程度的取舍。6. 高通滤波实验代码close all;Hi=fftshift(hpfilter(ideal,500,500,50); Hb=fftshift(hpfilter(btw,500,500,50,2); Hg=fftshift(hpfilter(gaussian,500,500,50); %画剖面图,标注不同的滤波器类型 plot(Hi(250,:); Hold on; plot(Hb(250,:); plot(Hg(250,:); %显示图像 figure,imshow(Hi,) figure,imshow(Hb,) fi
21、gure,imshow(Hg,) % 查看在频域中的三维形状 mesh(Hi(1:10:500,1:10:500); axis(0 50 0 50 0 1) colormap(0 0 0) axis off; grid off figure,mesh(Hb(1:10:500,1:10:500); axis(0 50 0 50 0 1) colormap(0 0 0) axis off; grid off figure,mesh(Hg(1:10:500,1:10:500); axis(0 50 0 50 0 1) colormap(0 0 0) axis off; grid off %高斯高通滤
22、波: close all;f=imread(C:实验五DIPLab5_Datapea_red.jpg); % 读一幅图像 figure,imshow(f,); PQ=paddedsize(size(f); %填充 %产生不同截止频率的高斯高通滤波器 Hg5=hpfilter(gaussian,PQ(1),PQ(2),5); Hg15=hpfilter(gaussian,PQ(1),PQ(2),15); Hg30=hpfilter(gaussian,PQ(1),PQ(2),30); Hg80=hpfilter(gaussian,PQ(1),PQ(2),80); Hg230=hpfilter(ga
23、ussian,PQ(1),PQ(2),230); %频域滤波 gg5=dftfilt(double(f),Hg5); figure,imshow(gg5,) gg15=dftfilt(double(f),Hg15); figure,imshow(gg15,) gg30=dftfilt(double(f),Hg30); figure,imshow(gg30,) gg80=dftfilt(double(f),Hg80); figure,imshow(gg80,) gg230=dftfilt(double(f),Hg230); figure,imshow(gg230,) %高频加强滤波:传递函数:H
24、hfe(u,v)=a+bHhp(u,v) PQ=paddedsize(size(f); %填充 D0=0.05*PQ(1); %定义截止频率 HBW=hpfilter(btw,PQ(1),PQ(2),D0,2); %2阶 BTW 高频滤波器 gbw=dftfilt(double(f),HBW); %滤波 gbws=gscale(gbw); %灰度标定 gbwe=histeq(gbws,256); figure,imshow(gbwe,); H=0.5+2*HBW; %高频加强滤波器 ghf=dftfilt(double(f),H); %高频加强滤波 ghfs=gscale(ghf); %灰度标
25、定 figure,imshow(ghfs,) ghe=histeq(ghfs,256); %直方图均衡化 figure,imshow(ghe,) 实验图像剖面图 理想高通 巴特沃思高通高斯高通理想高通巴特沃思高通高斯高通原图/hpfilter(gaussian,PQ(1),PQ(2),5/15/30/80/230)2阶 BTW 高频滤波高频加强滤波 直方图均衡化 算法分析本例中对高斯高通滤波器及高频加强滤波做了对比,并分析不同的截止频率对频域滤波的影响。截止频率越大,锐化效果越好。理想低通滤波器的变换函数为巴特沃思低通滤波器的变换函数为高斯低通滤波器的变换函数为三种高通滤波器中,理想高通滤波器
26、和理想低通滤波器一样有相同的振铃,会导致物体失真,边界加粗;巴特沃思高通滤波器相比更加平滑且振铃较;而高斯高通滤波器相比于前两个滤波器更平滑,即使是对微波物体和细条用高斯滤波器过滤也是比较清晰的。有时用一幅图像的高频成分强调增强的作用是有益的。在这种情况下,在高通滤波器函数前简单乘以一个常数,再增加一个偏移,以使零频率不被滤波器除掉。这种处理称为高频加强,有如下的传递函数在实际选择高通通滤波的种类及截止频率大小的时候,要综合考虑对目标图像的要求。3、实验总结所有的函数都可以用正弦或余弦乘以加权函数的积分来表示,这一情况下的公式即是傅立叶变换。对于函数的变换还可通过傅立叶反变换来还原原始函数而不
27、丢失任何信息。这一重要特征可以实现图像空域变换到频率变换的转变而进行图像变换与增强。频域滤波的基本步骤为:输入图像前处理傅立叶变换滤波函数傅立叶反变换后处理增强图像滤波函数主要包括平滑的频域滤波器(理想低通滤波器、巴特沃思低通滤波器、高斯低通滤波器)及频域锐化滤波器(理想高通滤波器、巴特沃思高通滤波器、高斯高通滤波器)。此外还通过锐化图像与原始图像的综合处理出现钝化模板、高频提升滤波、高频加强滤波和同态滤波等技术。绝大多数的空域滤波可以转化为频域滤波实现,但频域滤波在处理周期噪声等问题上表现出不可代替的作用。总之,空域滤波与频域滤波是图像增强处理的两个重要部分,两种方法的灵活运用可以多种多样的图像增强。此外,频域滤波在图像修复方面也有具体应用。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1