掌握生成退化图像和复原图像的方法.
二、 实验内容
2. 使用decovwnr 复原模糊的带噪图像
李安喜
三、 实验步骤临沂史晓东
1.模糊噪声图像建模fspecial imfilter pixeldup
clc
clear
f = checkerboard(8);
PSF = fspecial('motion',7,45);
gb = imfilter(f,PSF,'circular');
imshow (gb)
title('使用PSF = fspecial(motion,7,45) 模糊后的图像') noise = imnoise(zeros(size(f)),'gaussian',0,0.001);
imshow (noise,[])
title('高斯纯噪声图像')
g = gb + noise;
imshow (g,[])
title('模糊加噪声的图像')北大投毒
2.使用deconvwnr 函数复原模糊噪声图像
clc
蓝国土clear
f = checkerboard(8);
PSF = fspecial('motion',7,45)
gb = imfilter(f,PSF,'circular');
noise = imnoise(zeros(size(f)),'gaussian',0,0.001);
g = gb + noise;
imshow (g,[])
声波测井title('模糊加噪声的图像')
% ***************
fr1 = deconvwnr(g,PSF);
imshow(fr1,[])
title('简单的维纳滤波(逆滤波)后的结果') Sn = abs(fft2(noise)).^2;
nA = sum(Sn(:))/prod(size(noise));
Sf = abs(fft2(f)).^2;
fA = sum(Sf(:))/prod(size(f));
R = nA/fA;
fr2 = deconvwnr(g,PSF,R);
imshow(fr2,[])
title('使用常数比率的维纳滤波后的结果') NCORR = fftshift(real(ifft(Sn)));
ICORR = fftshift(real(ifft(Sf)));
fr3 = deconvwnr(g,PSF,NCORR,ICORR); imshow(fr3,[])
title('使用自相关函数的维纳滤波后的结果') 3.当模糊但不含噪声时使用维纳滤波还原clc
clear
f = checkerboard(8);
imshow (f)
PSF = fspecial('motion',7,45)
gb = imfilter(f,PSF,'circular');
imshow (gb)
% ***************
g = gb;
凌斌 胡雪fr1 = deconvwnr(g,PSF);
imshow (fr1,[])
四、 实验总结
通过本次实验,我掌握了生成退化图像和复原图像的方法.知道了如何生成带噪声的运动退化图像,知
道了使用decovwnr 复原模糊的带噪图像。通过本次实验,我对高斯噪声有了进一步的了解,同时,对维纳滤波也有了初步的认识。不过要想对理论有个呢过深入的认识,还得多加思考,多加研究。