图像的噪声及恢复[精选].doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
图像的噪声及恢复[精选]

实验7 图像的噪声及恢复一、实验目的:了解图像的噪声模型,学习降低噪声、恢复图像的处理方法 二、实验内容:学习并使用imnoise、spfilt等产生噪声和滤波的函数 1、噪声模拟 图像增强操作主要是针对图像的各种噪声而言的。数字图像产生噪声的途径有很多种。MATLAB图像处理工具箱提供imnoise函数,可以用该函数给图像添加不同种类的噪声,该函数的调用格式如下:g=imnoise(f, ‘type’, parameters)。f是输入图像,type和parameters的说明见下表: type parameters 说明 gaussian m, v 均值为m,方差为v的高斯噪声 localvar v 均值为0,方差为v的高斯白噪声 Psson 无 泊松噪声 saltpepper d 噪声密度为d的椒盐噪声 speckle v 均值为0,方差为v的均匀分布随机噪声 函数imnoise在给图像添加噪声前,将它转换为范围[0 1]内的double类图像。指定噪声参数时必须考虑到这一点。例如要将均值为64、方差为400的高斯噪声添加到一幅uint8类图像上,我们可将均值标度为64/255,将方差标度为400/(255)2,以便作为函数imnoise的输入。 读入一幅图像,使用上述函数对它添加各类噪声。 退化函数建模 在图像复原问题中,一个重要的退化模型是在图像获取时传感器和场景之间的均匀线性运动而产生的图像模糊。我们可以使用函数fspecial对图像模糊建模:PSF=fspecial(‘motion’,len,theta)。调用fspecial将返回PSF,它近似于由有着len个像素的摄像机的线性移动的效果。参数theta以度为单位,以顺时针方向对正水平轴度量。len的默认值是9,theta的默认值是0,它对应于在水平方向上的9个像素的移动。 我们使用函数imfilter来创建一个已知PSF或用刚刚描述的方法计算得到的PSF的退化图像:g=imfilter(f, PSF, ’circular’)。其中,’circular’用来减少边界效应。然后通过添加适当的噪声来构造退化的图像模型:g=g+noise。噪声的产生方法见内容1。 例如,我们先产生一个测试板图像:f=checkerboard(8)。 退化图像使用如下命令产生:PSF=fspecial(‘motion’,7,45); gb=imfilter(f, PSF, ‘circular’)。 噪声模式使用下面命令产生:noise=imnoise(zeros(size(f)), ‘gaussian’, 0, 0.001)。通常,我们会直接使用imnoise(gb, ‘gaussian’, 0, 0.001)将噪声加到gb上,然而由于稍后需要噪声图像,所以在此我们单独计算噪声。 加了噪声的模糊图像如下产生:g=gb+noise。 运行上述命令,观察实验结果,注释每条命令。仿照上述命令自己产生一个模糊噪声图像。 直接逆滤波和维纳滤波: 维纳滤波使用函数deconvwnr来实现。函数deconvwnr有三种可能的语法形式。在这些形式中,g代表退化图像,fr是复原图像。第一种语法形式fr=deconvwnr(g, PSF)假设信噪比为零,从而维纳滤波器就是逆滤波器。第二种语法形式fr=deconvwnr(g, PSF, NSPR)假设信噪比功率已知,或是个常数或是个数组,函数接受其中的任何一个,这是一个参数维纳滤波器。最后,语法形式fr=deconvwnr(g, PSF, NACORR, FACORR)假设噪声和未退化图像的自相关函数NACORR和FACORR是已知的。 我们可以使用内容2中的例子建立加了噪声的模糊图像模型,使用deconvwnr函数来复原模糊噪声图像。如下命令: fr1=deconvwnr(g, PSF);fr1是直接逆滤波的结果,g是污染了的图像,PSF是上例中计算出的点扩散函数。由于噪声的影响,结果并不理想。那么如果g不含噪声,使用直接逆滤波效果又是如何呢?实验验证你的结论。 我们还可以用第二种语法形式的参数维纳滤波器进行滤波,命令如下: %计算信噪比 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); fr2和fr1相比较效果要优越得多。 运行上述命令,观察实验结果,注释每条命令,并回答相关问题。仿照上述命令对自己产生的模糊噪声图像进行恢复。 实验要求:写出处理过程,提交原图像、噪声图像、模糊图像和恢复后

文档评论(0)

dart004 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档