圖像的退化和復原


圖像的退化和復原

im=imread('board.bmp');

subplot(2,3,1);

imshow(im,[]);

title('圖a原始的未退化圖像');

length=28;

theta=45;

h=fspecial('motion',length,theta);

imBlur=imfilter(im,h,'circular','conv');

subplot(2,3,2);

imshow(imBlur,[]);

title('圖b運動模糊圖像');

mu = 0;

sigma2 = 0.001;

imZeros = zeros(size(im));

noise = imnoise(imZeros,'gaussian',mu,sigma2);

subplot(2,3,3);

imshow(noise,[]);

title('圖c高斯噪聲圖像');

imBlur=im2double(imBlur);%將imBlur轉換成和noise一樣的數據類型

imNoisedBlur=noise + imBlur;

subplot(2,3,4);

imshow(imNoisedBlur,[]);

title('圖d高斯噪聲+運動模糊圖像');

imDeblur1 = deconvwnr(imNoisedBlur,h);

subplot(2,3,5);

imshow(imDeblur1,[]);

title('圖e直接逆濾波的復原圖像');

K=sum(noise(:).^2)/sum(im2double(im(:)).^2);%計算信噪比

imDeblur2 = deconvwnr(imNoisedBlur,h,K);

subplot(2,3,6);

imshow(imDeblur2,[]);

title('圖f維納濾波的復原圖像');


結果圖


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章