概述
实验原理:
在一幅图像中,低频部分对应图像变化缓慢的部分即图像大致外观和轮廓,高频部分对应图像变化剧烈的部分即图像细节,图像噪声也属于高频部分。低通滤波器的功能是让低频率通过而滤掉或衰减高频,效果是图像去噪平滑增强,但同时也抑制了图像细节信息,造成图像不同程度上的模糊。对于大小为M*N的图像,频率点(u, v)与频率中心的距离为D(u, v),其表达式为:
理想低通滤波器的产生公式为:
其中D0为理想低通滤波器的截止频率,理想低通滤波器在半径为D0的范围内,所有频率都可以没有衰减地通过滤波器,该半径之外的所有频率都完全被衰减掉。
实验代码:
clear;clc;close
%导入原图
img_raw = imread('08.png');
%加入高斯白噪声
img_noise = imnoise(img_raw, 'gaussian');
%imwrite(img_noise,'gaussian08.png')
%对图像做傅里叶变换
fftimg_noise = fft2(img_noise);
fftshiftimg_noise = fftshift(fftimg_noise);
%设置理想低通滤波器的截止频率d0=50
lpfshiftimg_noise = fftshiftimg_noise;
d0 = 40;
%lpf
for i = 1:512
for j = 1:512
distance = sqrt((i-256)^2+(j-256)^2);
if distance <= d0
h = 1;
else
h = 0;
end
lpfshiftimg_noise(i,j) = h*fftshiftimg_noise(i,j);
end
end
%对图像做傅里叶反变换
lpfimg_noise1 = ifftshift(lpfshiftimg_noise);
lpfimg_noise = ifft2(lpfimg_noise1);
%% 画图
subplot(221),imshow(img_noise),title('高斯白噪声')
subplot(222),imshow(log(abs(fftshiftimg_noise)),[]),title('噪声图fft')
subplot(223),imshow(abs(lpfimg_noise),[]),title('滤波后的噪声图')
subplot(224),imshow(log(abs(lpfshiftimg_noise)),[]),title('滤波后的噪声图fft')
实验结果:
最后
以上就是自觉楼房为你收集整理的【matlab图像处理】理想低通滤波器的全部内容,希望文章能够帮你解决【matlab图像处理】理想低通滤波器所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复