实验五--图像复原(共8页).doc
《实验五--图像复原(共8页).doc》由会员分享,可在线阅读,更多相关《实验五--图像复原(共8页).doc(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上 信息工程学院实验报告成 绩:指导老师(签名):课程名称:数字图像处理 实验项目名称:实验五 图像复原 实验时间:2016.12.02 班级: 姓名: 学号: 一、实验目的1.了解图像退化/复原处理的模型; 2. 掌握图像复原的原理及实现方法;3. 通过本实验掌握利用MATLAB编程实现图像的恢复。4. 掌握matlab代码的调试方法,熟悉常见代码错误及改正方法。二、实验步骤及结果分析MATLAB图像处理工具箱包含四个图像复原函数,请参照教材第126页例6.8编程实现图像复原。1用点扩散(PSF)函数创建运动模糊图像,修改参数改变模糊程度。a) 无噪声运动模糊图像b)
2、 有噪声运动模糊图像程序代码:专心-专注-专业I=imread(cameraman.tif); %读取图像subplot(1,3,1);imshow(I,);%显示图像title(原始图像);PSF=fspecial(motion,25,11); %运动模糊函数,运动位移是25像素,角度是11Blurred=imfilter(I,PSF,conv,circular); %对图像运动模糊处理subplot(1,3,2);imshow(Blurred,);title(无噪声运动模糊图像); %显示无噪声运动模糊图像Noise=0.05*randn(size(I); %正态分布的随机噪声Blurre
3、dNoisy=imadd(Blurred,im2uint8(Noise);%对退化后的图像附加噪声subplot(1,3,3);imshow(BlurredNoisy,);title(有噪声运动模糊图像); %显示运动模糊且加噪声后图像执行结果:图1 无噪声和有噪声的运动模糊图像实验结果分析:采用仿真的方法对清晰的图像加以运动模糊,形成模糊的图像。用这种模型来描述由于目标或摄像头运动,而导致的图像模糊。 同时在加入正态分布的随机噪声图像显得更加灰暗。2用维纳滤波复原函数deconvwnr 对模糊图像进行复原重建。a) 对无噪声运动模糊图像用deconvwnr(I,PSF)进行复原;程序代码:I
4、=imread(cameraman.tif); %读取图像subplot(1,3,1);imshow(I,); %显示图像title(原始图像); PSF=fspecial(motion,25,11); %运动模糊函数,运动位移是25像素,角度是11Blurred=imfilter(I,PSF,conv,circular); %对图像运动模糊处理subplot(1,3,2);imshow(Blurred,); %显示无噪声运动模糊图像title(无噪声运动模糊图像); WI1=deconvwnr(Blurred,PSF); %不带参数的维纳滤波(逆滤波)复原subplot(1,3,3); im
5、show(WI1,); %显示逆滤波复原结果title(逆滤波复原结果); 执行结果:图2 对无噪声的运动模糊图像进行逆滤波复原实验结果分析:由实验结果可以看出,当图像无噪声或噪声较小,即轻度降质时,采用逆滤波恢复的方法可以获得较好的结果。b) 对有噪声运动模糊图像用deconvwnr(I,PSF)、deconvwnr(I,PSF,NSR) 和deconvwnr(I,PSF,NCORR,ICORR)函数进行复原。程序代码:I=imread(cameraman.tif); %读取图像subplot(2,3,1);imshow(I,); %显示图像title(原始图像);PSF=fspecial(
6、motion,25,11); %运动模糊函数,运动位移是25像素,角度是11Blurred=imfilter(I,PSF,conv,circular); %对图像运动模糊处理Noise=0.05*randn(size(I); %正态分布的随机噪声BlurredNoisy=imadd(Blurred,im2uint8(Noise);%对退化后的图像附加噪声subplot(2,3,2);imshow(BlurredNoisy,); %显示运动模糊且加噪声后图像title(运动模糊且加噪声后图像);WI1=deconvwnr(BlurredNoisy,PSF); %不带参数的维纳滤波(逆滤波)复原s
7、ubplot(2,3,3); imshow(WI1,); %显示逆滤波复原结果title(逆滤波复原结果);NSR=sum(Noise(:).2)/sum(im2double(I(:).2);%计算噪信比WI2=deconvwnr(BlurredNoisy,PSF,NSR); %带噪信比参数的维纳滤波复原subplot(2,3,4);imshow(WI2,); %显示带噪信比参数维纳滤波复原结果title(带噪信比参数维纳滤波复原结果);NP=abs(fftn(Noise).2;NCORR=real(ifftn(NP); %计算噪声的自相关函数IP=abs(fftn(im2double(I).
8、2;ICORR=real(ifftn(IP); %计算信号的自相关函数WI3=deconvwnr(BlurredNoisy,PSF,NCORR,ICORR); %带自相关函数的维纳滤波复原subplot(2,3,5);imshow(WI3,); title(带自相关函数的维纳滤波复原);执行结果:图3 对运动模糊退化且加噪声的图像进行维纳滤波实验结果分析:比较复原结果可以发现,在对图像和噪声信息都未知的情况下采用不带参数的维纳滤波(逆滤波)形式进行复原效果很不好,在已知信噪比NSR参数的情况的维纳滤波复原效果有了较大的改善,在已知噪声和原图像的自相关函数等参数的情况下的维纳滤波复原效果最佳。c
9、) 在实际应用过程中,常常无法准确得知噪声图像和理想图像的功率谱,试着用常数K来代替NSR,并通过实验观察不同K对图像复原效果的影响。程序代码:I=imread(cameraman.tif); %读取图像subplot(1,3,1);imshow(I,);%显示图像title(原始图像);PSF=fspecial(motion,25,11); %运动模糊函数,运动位移是25像素,角度是11Blurred=imfilter(I,PSF,conv,circular); %对图像运动模糊处理Noise=0.05*randn(size(I); %正态分布的随机噪声BlurredNoisy=imadd(
10、Blurred,im2uint8(Noise);%对退化后的图像附加噪声WI1=deconvwnr(BlurredNoisy,PSF); %不带参数的维纳滤波(逆滤波)复原NSR=sum(Noise(:).2)/sum(im2double(I(:).2); %计算噪信比WI2=deconvwnr(BlurredNoisy,PSF,NSR); %带噪信比参数的维纳滤波复原subplot(2,3,1);imshow(WI2,); %显示带噪信比参数维纳滤波复原结果title(NSR取均值复原结果);WI3=deconvwnr(BlurredNoisy,PSF,0.005); %噪信比取0.005参
11、数的维纳滤波复原subplot(2,3,2);imshow(WI3,); title(NSR=0.005复原结果);WI4=deconvwnr(BlurredNoisy,PSF,0.001); %带噪信比取0.002参数的维纳滤波复原subplot(2,3,3);imshow(WI4,); %显示带噪信比参数维纳滤波复原结果title(NSR=0.001复原结果); WI5=deconvwnr(BlurredNoisy,PSF,0.01); %带噪信比取0.01参数的维纳滤波复原subplot(2,3,4);imshow(WI5,); %显示复原结果title(NSR=0.01复原结果);WI
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 图像 复原
限制150内