MATLAB下实现巴特沃斯低通滤波器并对图像滤波

clear;
I1=imread('Fig3.35(a).jpg');

n4=2;w4=80;%ER阶巴特沃斯(Butterworth)低通滤波器,截止频率为80

f=im2double(I1);
g=fft2(f);%傅立叶变换
g=fftshift(g);%转换数据矩阵
[M,N]=size(g);
m=fix(M/2);
n=fix(N/2);
for i=1:M
   for j=1:N
        d=sqrt((i-m)^2+(j-n)^2);
        h1=1/(1+0.414*(d/w1)^(2*n1));%计算低通滤波器传递函数
        s1(i,j)=h1*g(i,j);
        T1(i, j) = h1;

  end
end


y1=im2uint8(real(ifft2(ifftshift(s1))));

figure,subplot(1,2,1),mesh(T3),title('滤波器透视图');
subplot(1,2,2),imshow(T3),title('滤波器示意图');

figure,subplot(3,2,1),imshow(I1),title('原图');
subplot(3,2,2),imshow(y1),title('半径为5的BLPF滤波器');

  • 10
    点赞
  • 73
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值