《数字图像处理实验三:图像的复原.doc》由会员分享,可在线阅读,更多相关《数字图像处理实验三:图像的复原.doc(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精品文档,仅供学习与交流,如有侵权请联系网站删除南 京 工 程 学 院 通信工程学院 实 验 报 告 课 程 名 称 数字图像处理C 实验项目名称 实验三 图像的复原 实 验 班 级 算通111 学 生 姓 名 夏婷 学 号 208110408 实 验 时 间 2014年5月5日 实 验 地 点 信息楼C322 实验成绩评定 指导教师签名 年 月 日实验三、图像的恢复一、实验类型:验证性实验 二、实验目的 1. 掌握退化模型的建立方法。 2. 掌握图像恢复的基本原理。 三、实验设备:安装有MATLAB 软件的计算机 四、实验原理 一幅退化的图像可以近似地用方程g=Hf+n 表示,其中g 为图像
2、,H为变形算子,又称为点扩散函数(PSF ),f 为原始的真实图像,n 为附加噪声,它在图像捕获过程中产生并且使图像质量变坏。其中,PSF 是一个很重要的因素,它的值直接影响到恢复后图像的质量。 I=imread(peppers.png); I=I(60+1:256,222+1:256,:); figure;imshow(I); LEN=31; THETA=11; PSF=fspecial(motion,LEN,THETA); Blurred=imfilter(I,PSF,circular,conv); figure;imshow(Blurred);MATLAB 工具箱中有4 个图像恢复函数,
3、如表3-1 所示。这4 个函数都以一个PSF 和模糊图像作为主要变量。deconvwnr 函数使用维纳滤波对图像恢复,求取最小二乘解,deconvreg 函数实现约束去卷积,求取有约束的最小二乘解,可以设置对输出图像的约束。deconvlucy 函数实现了一个加速衰减的Lucy-Richardson 算法。该函数采用优化技术和泊松统计量进行多次迭代。使用该函数,不需要提供有关模糊图像中附加噪声的信息。 deconvblind 函数使用的是盲去卷积算法,它在不知道PSF 的情况下进行恢复。调用deconvblind 函数时,将PSF 的初值作为一个变量进行传递。该函数除了返回一个修复后的图像以外
4、,还返回一个修复后的PSF。下面以维纳滤波和约束去卷积为例说明图像恢复的实验原理。deconvwnr使用维纳滤波对图像恢复deconvreg对图像进行约束去卷积deconvlucy用Lucy-Richardson 算法实现图像恢复deconvblind用盲去卷积算法实现图像恢复1. 维纳滤波 使用deconvwnr 函数可以利用维纳滤波方法恢复图像。在图像的频率特征和附加噪声已知的情况下,Wiener 滤波比较有效。本例演示了维纳滤波器的性能,同时也演示了PSF 的重要性。得到准确的PSF 时,恢复的结果会比较好。 I=imread(peppers.png); I=I(10+1:256,222
5、+1:256,:); LEN=31; THETA=11; PSF=fspecial(motion,LEN,THETA); Blurred=imfilter(I,PSF,circular,conv); wnrl=deconvwnr(Blurred,PSF); imshow(wnrl);2. 约束去卷积 采用deconvreg 函数可以对图像进行约束去卷积。当知道附加噪声的部分信息时,使用约束去卷积实现图像恢复比较有效。 (1)将一幅图像读入MATLAB 工作空间。本例使用裁剪来减小要恢复的图像的大小。 I=imread(flowers.tif); I=I(10+1:256,222+1:256,:
6、); figure;imshow(I);(2 )创建PSF PSF=fspecial(gaussian,11,5); (3)模糊化图像并添加噪声。 Blurred=imfilter(I,PSF,conv); V=0.02; BlurredNoisy=imnoise(Blurred,gaussian,0,V); figure;imshow(BlurredNoisy);(4 )用deconvreg 函数恢复图像,指定PSF 和噪声幂次NP 。 NP=V*prod(size(I); reg1 LAGRA=deconvreg(BlurredNoisy,PSF,NP); figure,imshow(re
7、g1);五、实验内容 选择一幅清晰图像,对该图像进行模糊化处理,然后分别采用逆滤波、 维纳滤波和约束去卷积恢复原来图像,比较各图像恢复方法的恢复效果。六、实验步骤与结果 将一张图片1、(1)选择一幅清晰图像,对该图像进行模糊化处理I=imread(b.jpg); %读入图像I=I(60+1:256,222+1:256,:); %裁剪图像。figure;imshow(I); %创新建图像并显示LEN=31;THETA=11;PSF=fspecial(motion,LEN,THETA); %对图像进行模糊Blurred=imfilter(I,PSF,circular,conv); %创建PSF的退
8、化图像figure;imshow(Blurred); %创建图像并显示模糊后的图像(2)、使用deconvwnr 函数可以利用维纳滤波方法恢复图像。I=imread(b.jpg); %读入图像I=I(10+1:256,222+1:256,:); %裁剪图像LEN=31;THETA=11;PSF=fspecial(motion,LEN,THETA); %创建PSF的退化图像Blurred=imfilter(I,PSF,circular,conv); %使用IPF对图像进行模糊建模 wnrl=deconvwnr(Blurred,PSF); %维纳滤波imshow(wnrl); %显示滤波后的图像结
9、果如图所示:2,、(1)将一幅图像读入MATLAB 工作空间。本例使用裁剪来减小要恢复的图像的大小。 I=imread(b.jpg); %读入图像I=I(10+1:256,222+1:256,:); %裁剪图像figure;imshow(I); %并显示创建图像结果如图所示:(2)创建PSFPSF=fspecial(gaussian,11,5);(3)模糊化图像并添加噪声Blurred=imfilter(I,PSF,conv); %创建PSF的退化图像v=0.02;BlurredNoisy=imnoise(Blurred,gaussian,0,v); %添加噪声figure;imshow(BlurredNoisy); %创建图像并显示添加噪声后的图像(4)用deconvreg函数恢复图像,指定PSF和噪声幂次NPNP=V*prod(size(I); %噪声幂次reg1 LAGRA=deconvreg(BlurredNoisy,PSF,NP); %对图像进行约束去卷积figure,imshow(reg1); %建立并显示图像六、实验总结 通过这次实验,能够实际掌握退化模型的建立方法,图像恢复的基本原理。【精品文档】第 4 页
限制150内