第六章-图像复原课件_第1页
第六章-图像复原课件_第2页
第六章-图像复原课件_第3页
第六章-图像复原课件_第4页
第六章-图像复原课件_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

图像增强内容回顾第一章绪论第二章图像及其数字处理基础第三章图像处理基本运算第四章图像变换第五章图像增强第六章图像复原第七章图像分割第八章彩色图像处理第六章图像复原概述图像退化:图像在形成、记录、处理和传输过程中,由于成像系统、记录设备、传输介质和处理方法的不完善,从而导致的图像质量下降。典型表现:图像模糊、失真、有噪声等。图像退化原因产生原因光学系统中的衍射传感器非线性畸变光学系统的像差摄影胶片的非线性大气的湍流效应图像运动造成的模糊几何畸变图片示例受大气湍流影响及其复原图图片示例受正弦干扰的影响与复原图目的:对退化的图像进行处理,试图恢复损坏的图像,还原其真面目。方法:根据不同的退化模型,处理技巧和估计准则,导出各种不同的恢复方法。图像复原(图像恢复)基本思路高质量图像退化了的图像复原的图像图像退化图像复原因果关系研究退化模型图像复原和图像增强的联系和区别:二者的目的都是为了改善图像的质量。但图像增强不考虑图像是如何退化的,只通过试探各种技术来增强图像的视觉效果。因此,图像增强可以不顾增强后的图像是否失真,只要看得舒服就行。而图像复原就完全不同,需知道图像退化的机制和过程的先验知识,据此找出一种相应的逆过程方法,从而得到复原的图像。如果图像已退化,应先作复原处理,再作增强处理。图像退化与数学模型通常将退化原因作为线性系统退化的一个因素,从而建立系统退化模型来近似描述图像函数的退化。一幅清晰的图像f(x,y)由于通过一个系统H以及引进了加性噪声n(x,y)而退化为一幅图像g(x,y)H{.}+f(x,y)n(x,y)g(x,y)图像退化与数学模型可以表示为线性位移不变系统的退化模型:不考虑加性噪声:g(x,y)=f(x,y)*h(x,y)考虑加性噪声:g(x,y)=f(x,y)*h(x,y)+n(x,y)卷积等同于频域内乘积:G(u,v)=F(u,v)H(u,v)+N(u,v)噪声和图像数字图像中的噪声源来自于图像获取(将连续转为数字)以及传输过程图像传感器会受到环境的干扰图像在传输过程中会受到的干扰噪声模型我们认为一幅噪声图像可以为如下模型:g(x,y)=f(x,y)*h(x,y)+n(x,y)其中f(x,y)为原始图像的像素值,n(x,y)为噪声项,而g(x,y)为最终的含有噪声的像素值。如果我们求得这个模型中的噪声,这将有助于我们了解如何恢复图像。噪声模型对于图像中的噪声项有多种不同模型:高斯(Gaussian)噪声瑞利(Rayleigh)噪声伽马(爱尔兰)噪声指数(Exponential)噪声均匀(Uniform)噪声脉冲(椒盐)噪声GaussianRayleighErlangExponentialUniformImpulse噪声举例右图为额外噪声演示的理想情况,下面我们会对各个噪声模型作用于图像时的结果进行演示。下图为原始图像和其直方图Histogramtogohere噪声举例(续…)高斯瑞利爱尔兰噪声举例(续…)指数均匀噪声椒盐噪声去除举例(续…)受椒噪声干扰的图像受盐噪声干扰的图像3*3最小值滤波器滤波的结果3*3最大值滤波器滤波的结果在Matlab中使用函数添加噪声J1=imnoise(I,‘salt&pepper’,d);d是噪声密度,默认值0.05.J2=imnoise(I,‘gaussian’,m,v);默认均值是0,方差是0.01.J3=imnoise(f,‘poisson’);从数据中生成泊松噪声

J4=imnoise(I,‘speckle’,v);用方程f*n*f将乘性噪声添加到图像f上,其中n是均值为0,方差为v的均匀分布的随机噪声。V的默认值为0.04.I=imread('cameraman.tif');J1=imnoise(I,'salt&pepper',0.02);subplot(221);imshow(J1);J2=imnoise(I,'gaussian',0.02);subplot(222);imshow(J2);J3=imnoise(I,'poisson');%添加泊松噪声subplot(223);imshow(J3);J4=imnoise(I,‘speckle’);%添加斑点噪声subplot(224);imshow(J4);去除由匀速运动引起的模糊在获取图像过程中,由于景物和摄像机之间的相对运动,往往造成图像的模糊。其中由均匀直线运动所造成的模糊图像的恢复问题更具有一般性和普遍意义。因为变速的、非直线的运动在某些条件下可以看成是均匀的、直线运动的合成结果。设图像f(x,y)有一个平面运动,令x0(t)和y0(t)分别为在x和y方向上运动的变化分量。t表示运动的时间。记录介质的总曝光量是在快门打开到关闭这段时间的积分。则模糊后的图像为

其中g(x,y)为模糊后的图像。上式就是由目标物或摄像机相对运动造成图像模糊的模型。

令G(u,v)为模糊图像g(x,y)的傅立叶变换,对上式两边傅立叶变换得去除由匀速运动引起的模糊改变积分次序,则有由傅立叶变换的位移性质,可得可得

G(u,v)=H(u,v)F(u,v)令

这是已知退化模型的傅立叶变换式。去除由匀速运动引起的模糊沿水平方向匀速运动造成的模糊图像的恢复处理例子。(a)是模糊图像,(b)是恢复后的图像。

去除由匀速运动引起的模糊(a)原始图像(b)模糊图像(c)复原图像去除由匀速运动引起的模糊Matlab运动模糊(1)预先定义的空间滤波函数psf=fspecial(type,parameters)其中,type表示滤波器的类型,其值可以是gaussian,average,sobel,laplacian,prewitt,log,motion等。

fspecial返回指定滤波器的单位冲激响应。当type为motion时,fspecial返回运动滤波器的单位冲激响应。参数:运动位移运动角度(2)图像滤波函数imfilter(I,psf,'circular','conv')

其中,选项circular用来减少边界效应;选项conv表示使用psf对原始图像I进行卷积来获得退化图像。滤波类型'corr'滤波器通过使用相关来完成。该值是默认值。'conv'滤波器通过使用卷积来完成

imfilter与filter2区别imfilter

可进行多维图像(RGB等)进行空间滤波,且可选参数较多filter2只能对二维图像(灰度图)进行空间滤波originalRGB=imread('peppers.png');

imshow(originalRGB)

h=fspecial('motion',50,45);%创建一个滤波器

filteredRGB=imfilter(originalRGB,h);

figure,imshow(filteredRGB)I=imread('cameraman.tif');subplot(221);imshow(I);H=fspecial('motion',30,45);MotionBlur=imfilter(I,H,’circular’,’conv’);subplot(222);imshow(MotionBlur);H=fspecial(‘disk’,10);%圆盘状模糊bulrred=imfilter(I,H);subplot(223);imshow(bulrred);H=fspecial(‘unsharp’);%钝化模糊Unsharpened=imfilter(I,H);subplot(224);imshow(Unsharpened);复原方法在假设具备g,H和n的某些知识的情况下,寻求原始图像的估计值。图像复原模型退化复原复原方法无约束复原逆滤波(去卷积);有约束复原维纳滤波(均方误差最小);

逆滤波复原法

G(u,v)=F(u,v)H(u,v)+N(u,v)

H(u,v)称为系统的传递函数,从频率域角度看,它使图像退化,因而反映了成像系统的性能。在无噪声的理想情况下:

G(u,v)=F(u,v)H(u,v)

则F(u,v)=G(u,v)/H(u,v)1/H(u,v)称为逆滤波器,对上式再进行傅里叶逆变换可得到f(x,y)。但实际上碰到的问题都有噪声,因而只能求F(u,v)的估计值这就是逆滤波复原的基本原理。其复原过程可归纳如下:(1)对退化图像g(x,y)作二维离散傅立叶变换,得到G(u,v);(2)计算系统点扩散函数h(x,y)的二维傅立叶变换,得到H(u,v)。这一步值得注意的是,通常h(x,y)的尺寸小于g(x,y)的尺寸。为了消除混叠效应引起的误差,需要把h(x,y)的尺寸延拓。(3)计算(4)计算的逆傅立叶变换,求得。

逆滤波复原法性质(1)H(u,v)=0:无法确定复原图像;(2)H(u,v)0:放大噪声;逆滤波的Matlab实现:

deconvblind盲目去卷积函数

[J,PSF]

=

deconvblind(I,

INITPSF)

用最大似然算法对图像I做卷积,返回去除抖动后的图像J和一个储存有点扩展的函数PSF。[J,PSF]

=

deconvblind(I,

INITPSF,

NUMIT)

指定迭代次数,默认是10。读出一幅图(‘cameraman.tif’),做位移30个像素,运动45度的运动图像模糊效果,并将模糊图像保存。I=imread('cameraman.tif');figure(1);imshow(I);a=30;%设置运动位移为30个像素b=45;%设置运动角度为45度psf=fspecial(‘motion’,a,b)%建立二维仿真线性运动滤波器psfI1=imfilter(I,psf,’circular’,’conv’);%用psf产生退化图像figure(2);imshow(I1);%显示运动后的图像I=imread('untitled.jpg');figure(1);imshow(I1);a=30;b=45;initpsf=fspecial('motion',a,b)[J,P]=deconvblind(I1,initpsf,30);figure(2);imshow(J);figure(3);imshow(P,[],‘notruesize’);图片去适应窗口大小复原点扩散函数

维纳滤波复原方法维纳滤波是一种最早,也是最为人们熟知的线性图像复原方法。维纳滤波器寻找一个使统计误差函数最小的估计。当图像的频率特性和噪声已知(至少部分已知)时,维纳滤波的效果非常好。因此维纳滤波器又称为最小均方误差滤波器H(u,v):退化函数;sn(u,v)=|N(u,v)|2:噪声功率谱;为0时,变为逆滤波复原法;sf(u,v)=|F(u,v)|2:未退化图像的功率谱;sn(u,v)/sf(u,v):噪信功率比。复原过程步骤计算图像g(x,y)的二维离散傅立叶变换得到G(u,v)。计算点扩散函数h(x,y)的二维离散傅立叶变换。估算图像的功率谱密度sf和噪声的谱密度sn。计算图像的估计值计算的逆傅氏变换,得到恢复后的图像。(a)运动模糊及均值为0,方差为650的加性高斯噪声污染的图像;(b)逆滤波的结果;(c)维纳滤波的结果;(d)-(f)噪声幅度的方差比(a)小1个数量级(g)-(i)噪声幅度的方差比(a)小5个数量级维纳滤波matlab实现J=deconvwnr(I,PSF)此函数用维纳滤波算法对图片I进行解模糊化处理,返回一幅清晰的图像J.I可以是一个N维数组。PSF是点扩展函数。wiener2二维自适应噪声消除滤波,处理恒量加性噪声。

J=wiener2(I,[mn],noise)

输入:I——图像矩阵、[mn]——邻域大小(默认为3*3)、noise——加性噪声(高斯白噪声)I=imread('cameraman.jpg');figure(1);imshow(I);PSF=fspecial('motion',30,75);MF=imfilter(I,PSF,'circular','conv');figure(2);imshow(MF);wnr=deconvwnr(MF,PSF);figure(3);imshow(wnr);读一幅彩色图像,设置运动模糊,然后用wiener滤波进行恢复主要函数PSF=fspecial('motion',len,theta);MF=imfilter(I,PSF,'circular','conv');wnr=deconvwnr(MF,PSF);PSF为退化过程的点扩散函数I=imread('lena

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论