shiyang_liu 发表于 2008-11-6 17:14

matlab实现逆滤波(不调用系统函数)

这是我的代码,想实现逆滤波,但结果不对,不知道问什么。
clear
close all
J=imread('111.bmp');
I=rgb2gray(J);
imshow(I);
a=0.1,b=0.1,T=1;
=size(I);
if m>n
    max=m;
    I(:,n+1:m)=0;
else
    max=n;
    I(m+1:n,:)=0;
end
H=zeros(max,max);
for u=1:max
    for v=1:max
      j=3.1415926*(u*a+v*b);
      H(u,v)=T*sin(j)*exp(-i*j)/j;
    end
end
G=fft2(double(I));
F2=G.*(inv(H));
F3=ifft2(double(F2));
imwrite(F3,'wiener.bmp');
figure,imshow(F3);

题目:
图6是理想图象的傅氏变换与函数 相乘后的模糊图象,其中,a=b=0.1, T=1, 利用逆滤波方法实现图象复原。如果有高手知晓,请联系我867737039@qq.com
thank you very much!

[ 本帖最后由 shiyang_liu 于 2008-11-6 17:16 编辑 ]

sigma665 发表于 2008-11-6 18:04

回复 楼主 shiyang_liu 的帖子

你的是什么样的结果,应该的结果是什么
页: [1]
查看完整版本: matlab实现逆滤波(不调用系统函数)