0
空間領域のimnoise
から伝達関数 'motion'を使用しました。 これを周波数領域でデコンボリューションしようとしましたが、動作しません!! 私のコードはここにある:MATLABでの逆フィルタの問題による画像の再構成
clc
close all
clear
display('Welcome to wiener and invert reconstruction image ...');
path = input('Enter pictures path:','s');
info=imfinfo(path);
resolution=info.Width*info.Height;
i=imread(path);
if strcmpi(info.ColorType,'truecolor')
i=rgb2gray(i);
end
psf=fspecial('motion',70,45);
f=imfilter(single(i),psf);
%f=imnoise(f,'gaussian',0,0.001);
%invert filtering
PQ=paddingsize([info.Height info.Width],'pwr');
F=fft2( single(f) ,PQ(1),PQ(2) );
PSF=fft2( psf ,PQ(1),PQ(2) );
Fhat=F./PSF;
fhat=ifft2(Fhat);
imshow(fhat(1:info.Height,1:info.Width));