资源描述:
《数字图像实验:图像退化和还原》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、%1.使用函数fspecial创建退化滤波器PSF,然后调用imfilter对图像进行卷积运算,就可以%得到一幅运动退化图像,观察并记录结果。I=imread('C:DocumentsandSettingsAdministrator桌面16学时实验实验六fig0222b.jpg');%读入图像LEN=31;THETA=11;PSF=fspecial('motion',LEN,THETA);%生成退化函数blurred=imfilter(I,PSF,'circular','conv');figur
2、esubplot(1,2,1),imshow(I);title('原图像');subplot(1,2,2),imshow(blurred);title('6.1运动退化图像');%2.使用imnoise函数对图像添加随机噪声,观察并记录结果。fnblurred=imnoise(blurred,'gaussian',0,0.001);%产生随机噪声图像figure,imshow(fnblurred);title('6.2加噪之后');%3.使用函数deconvwnr对无噪声的运动模糊图像进行复原,观察并记录结
3、果。同时采用不同的%LEN和THETA参数,进行实验,体会一下退化函数PSF的重要性,观察并记录结果。LEN=31;THETA=11;PSF=fspecial('motion',LEN,THETA);wnr1=deconvwnr(blurred,PSF);wnr2=deconvwnr(blurred,fspecial('motion',2LEN,THETA));wnr3=deconvwnr(blurred,fspecial('motion',LEN,2THETA));figureimshow(wnr1);t
4、itle('6.3.1无噪运动模糊图像复原1');figuresubplot(1,2,1),imshow(wnr2);title('6.3.2无噪运动模糊图像复原2');subplot(1,2,2),imshow(wnr3);title('6.3.3无噪运动模糊图像复原3');%4.使用函数deconvwnr对一幅有噪声的运动模糊图像进行维纳滤波复原,观察并记录结果。wnr4=deconvwnr(fnblurred,PSF);figure,imshow(wnr4);title('6.4维纳滤波复原');%5
5、.为了使维纳滤波复原的效果变好,必须使用deconvwnr函数的可选参数NSR、NCORR和ICORR,%通过改变参数获得不同的复原效果,观察并记录结果。%使用deconvblind函数进行盲目去卷积,采用不同的退化函数,观察并记录结果。PSF=fspecial('gaussian',7,10);blurred01=imfilter(I,PSF,'circular','conv');%图像退化UNDERPSF=ones(size(PSF)-4);[J1P1]=deconvblind(blurred01,UN
6、DERPSF);%使用较小的PSF进行逆滤波OVERPSF=padarray(UNDERPSF,[44],'replicate','both');[J2P2]=deconvblind(blurred01,OVERPSF);%使用较大的PSF进行逆滤波INITPSF=padarray(UNDERPSF,[22],'replicate','both');[J3P3]=deconvblind(blurred01,INITPSF);%使用真实的PSF进行逆滤波figure,imshow(blurred01);tit
7、le('6.5.1图像退化');figure,imshow(J1);title('6.5.2盲目卷积(使用较小的PSF进行逆滤波)');figure,imshow(J2);title('6.5.3盲目卷积(使用较大的PSF进行逆滤波)');figure,imshow(J3);title('6.5.4盲目卷积(使用真实的PSF进行逆滤波)');