实验五 图像复原

2018-12-29 19:58

信息工程学院实验报告

课程名称:数字图像处理

成 绩: 实验项目名称:实验五 图像复原 实验时间:2016.12.02 班级: 姓名: 学号:

指导老师(签名):

一、实验目的

1.了解图像退化/复原处理的模型; 2. 掌握图像复原的原理及实现方法;

3. 通过本实验掌握利用MATLAB编程实现图像的恢复。 4. 掌握matlab代码的调试方法,熟悉常见代码错误及改正方法。 二、实验步骤及结果分析

MATLAB图像处理工具箱包含四个图像复原函数,请参照教材第126页例6.8编程实现图像复原。

1.用点扩散(PSF)函数创建运动模糊图像,修改参数改变模糊程度。 a) 无噪声运动模糊图像 b) 有噪声运动模糊图像 程序代码:

I=imread('cameraman.tif'); %读取图像 subplot(1,3,1); imshow(I,[]);%显示图像 title('原始图像');

PSF=fspecial('motion',25,11); %运动模糊函数,运动位移是25像素,角度是11 Blurred=imfilter(I,PSF,'conv','circular'); %对图像运动模糊处理 subplot(1,3,2);

imshow(Blurred,[]);title('无噪声运动模糊图像'); %显示无噪声运动模糊图像 Noise=0.05*randn(size(I)); %正态分布的随机噪声

BlurredNoisy=imadd(Blurred,im2uint8(Noise));%对退化后的图像附加噪声 subplot(1,3,3);

imshow(BlurredNoisy,[]);title('有噪声运动模糊图像'); %显示运动模糊且加噪声后图像

执行结果:

第 1 页 共 8 页

原始图像无噪声运动模糊图像有噪声运动模糊图像

图1 无噪声和有噪声的运动模糊图像

实验结果分析:

采用仿真的方法对清晰的图像加以运动模糊,形成模糊的图像。用这种模型来描述由于目标或摄像头运动,而导致的图像模糊。 同时在加入正态分布的随机噪声图像显得更加灰暗。

2.用维纳滤波复原函数deconvwnr 对模糊图像进行复原重建。 a) 对无噪声运动模糊图像用deconvwnr(I,PSF)进行复原; 程序代码:

I=imread('cameraman.tif'); %读取图像 subplot(1,3,1);imshow(I,[]); %显示图像 title('原始图像');

PSF=fspecial('motion',25,11); %运动模糊函数,运动位移是25像素,角度是11 Blurred=imfilter(I,PSF,'conv','circular'); %对图像运动模糊处理 subplot(1,3,2);imshow(Blurred,[]); %显示无噪声运动模糊图像 title('无噪声运动模糊图像');

WI1=deconvwnr(Blurred,PSF); %不带参数的维纳滤波(逆滤波)复原 subplot(1,3,3); imshow(WI1,[]); %显示逆滤波复原结果 title('逆滤波复原结果');

执行结果:

原始图像无噪声运动模糊图像逆滤波复原结果

图2 对无噪声的运动模糊图像进行逆滤波复原

实验结果分析: 滤波复原结果带噪信比参数维纳法可以获得较好的结果。

带自相关函数的维纳滤波复原由实验结果可以看出,当图像无噪声或噪声较小,即轻度降质时,采用逆滤波恢复的方

第 2 页 共 8 页

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('motion',25,11); %运动模糊函数,运动位移是25像素,角度是11 Blurred=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); %不带参数的维纳滤波(逆滤波)复原 subplot(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))).^2;

ICORR=real(ifftn(IP)); %计算信号的自相关函数

WI3=deconvwnr(BlurredNoisy,PSF,NCORR,ICORR); %带自相关函数的维纳滤波复原 subplot(2,3,5);imshow(WI3,[]); title('带自相关函数的维纳滤波复原');

执行结果:

原始图像运动模糊且加噪声后图像逆滤波复原结果

带噪信比参数维纳滤波复原结果带自相关函数的维纳滤波复原第 3 页 共 8 页

带噪信比参数维纳滤波复原结果带自相关函数的维纳滤波复原

图3 对运动模糊退化且加噪声的图像进行维纳滤波

实验结果分析:

比较复原结果可以发现,在对图像和噪声信息都未知的情况下采用不带参数的维纳滤波(逆滤波)形式进行复原效果很不好,在已知信噪比NSR参数的情况的维纳滤波复原效果有了较大的改善,在已知噪声和原图像的自相关函数等参数的情况下的维纳滤波复原效果最佳。

c) 在实际应用过程中,常常无法准确得知噪声图像和理想图像的功率谱,试着用常数K来代替NSR,并通过实验观察不同K对图像复原效果的影响。 程序代码:

I=imread('cameraman.tif'); %读取图像 subplot(1,3,1);imshow(I,[]);%显示图像 title('原始图像');

PSF=fspecial('motion',25,11); %运动模糊函数,运动位移是25像素,角度是11 Blurred=imfilter(I,PSF,'conv','circular'); %对图像运动模糊处理 Noise=0.05*randn(size(I)); %正态分布的随机噪声 BlurredNoisy=imadd(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参数的维纳滤波复原

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复原结果');

WI6=deconvwnr(BlurredNoisy,PSF,0.05); %带噪信比取0.05参数的维纳滤波复原 subplot(2,3,5);imshow(WI6,[]); title('NSR=0.05复原结果');

第 4 页 共 8 页

WI7=deconvwnr(BlurredNoisy,PSF,0.1); %带噪信比取0.1参数的维纳滤波复原 subplot(2,3,6);imshow(WI7,[]); %显示复原结果 title('KNS=0.1复原结果');

执行结果:

原始图像运动模糊且加噪声后图像逆滤波复原结果

NSR取均值复原结果NSR=0.005复原结果NSR=0.001复原结果NSR=0.01复原结果NSR=0.05复原结果KNS=0.1复原结果

图4 不同噪信比参数的维纳滤波复原

实验结果分析:

由实验结果可知,在带噪信比参数的维纳滤波复原中,当NSR取均值时滤波效果是最好的,随着滤波中NSB由均值减小时,图像的模糊运动减小但同时噪声增强了;反之,当NSB由均值增大时,图像的模糊运动增强噪声减小了。 三、实验中遇到问题及解决方法

第 5 页 共 8 页


实验五 图像复原.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:建筑工程管理及施工质量提升的有效措施 - 0

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: