当前位置:首页 > 遥感图像处理实验报告 - 图像的频率域滤波处理
%什么也不做; end end end
%显示频率域图像 figure(9);
imshow(abs(real(highpass_100)), [0 50000]);
title('频率域图像截止频率为100的理想高通滤波器'); %傅立叶逆运算反算图像
image = ifftshift(highpass_100); %还原矩阵 image = ifft2(image); %傅立叶逆运算 image = abs(real(image)); %复数取实部 %显示处理结果图像 figure(10);
imshow(image, []);
title('处理结果截止频率为100的理想高通滤波器')
%%%%%%截止频率为50的巴特沃斯低通滤波器%%%%%% for u = 1:m, for v = 1:n
D=sqrt((u-p)^2 + (v-q)^2); Butterworth(u,v)=1/(1+D/50)^(2*2); end end
%显示频率域图像 figure(11);
imshow(abs(real(Butterworth)), []);
title('频率域图像截止频率为50的巴特沃斯低通滤波器'); %傅立叶逆运算反算图像 image = F.*Butterworth; image = ifftshift(image); image = abs(ifft2(image)); %显示处理结果图像 figure(12);
imshow(image, []);
title('处理结果截止频率为50的巴特沃斯低通滤波器')
%%%%%%截止频率为50的高斯低通滤波器%%%%%% for u=1:m, for v=1:n
D=sqrt((u-p)^2 + (v-q)^2); Gaussian(u,v)=exp(-D^2/(2*50^2)); end end
%显示频率域图像 figure(13);
imshow(abs(real(Gaussian)), []);
title('频率域图像截止频率为50的高斯低通滤波器'); %傅立叶逆运算反算图像 image = F.*Gaussian; image = ifftshift(image); image = abs(ifft2(image));
%显示处理结果图像 figure(14);
imshow(image, []);
title('处理结果截止频率为50的高斯低通滤波器');
四:实验结果(仅列一例)
五:实验心得
1:相较空域滤波,频率域滤波的算法复杂度更高。相较标准的傅立叶变换,快速傅立叶变换节省了更多时间与空间,大大降低了算法的复杂度。
2:空域滤波是
领域+算子->新像素灰度值 的运算模式,而频率域滤波则是
原始图像+傅立叶变换->频谱信号 频谱信号+滤波器->新的频谱信号
新的频谱信号+傅立叶逆变换->新的图像
这样的运算方式。空域滤波处理中,新图像某一像素的灰度值,取决于该位置上以原像素为中心的领域的所有像素的灰度值,而在频率域滤波处理中,新图像上任何一个像素的灰度值,与原图像的所有像素的灰度值,都有关系。
3:把图像抽象成频谱信号,可以从频谱信号上统计出在空域上难以发现的一些周期性变动,如在空域看起来杂乱无章的椒盐噪声等。也能更好的界定出一些在空域滤波上难以准确界定的边缘,例如条带噪声等。总的来说,频域处理的结果要比空域处理的结果要好,也更灵活,但其相对于空域的运算代价十分巨大。
共分享92篇相关文档