3.1-图像的复原解析

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

3.1图像的复原主要内容图像退化的原因图像退化模型的建立图像复原的方法重点与难点•重点:–图像退化的原因–图像退化模型–图像恢复的方法•难点–图像退化模型的建立–图像复原的方法1图像的退化1.1图像退化的原因(1)目标或拍摄装置的移动造成的运动模糊、长时间曝光引起的模糊等。(2)焦点没对准、广角引起的模糊、大气扰动引起的模糊、曝光时间太短引起拍摄装置捕获的光子太少引起的模糊;(3)散焦引起的图像扭曲;(4)图像在成像、数字化、采集和处理过程引入的噪声。•光学散焦造成的图像退化散焦对应的点扩展函数目标相对运动造成的图像退化运动形成的模糊示例图像退化效果对应的点扩展函数1.2图像退化的数学模型图像复原的关键是建立图像的退化模型,一幅清晰的图像通过一个退化系统H,然后加入加性噪声能够生成一幅退化图像,图像的退化模型如下图所示。以上模型可以用下面的数学表达式表述:g(x,y)=h(x,y)*f(x,y)+n(x,y)g(x,y)指退化的图像,h(x,y)失真函数,f(x,y)原图像,n(x,y)加性噪声,*代表卷积1100(,)(,)(,)(,)MNmngxyfmnhxmynnxy由于数字图像都是离散形式的,因此在实际应用中,图像的退化模型可以写成如下表达式,离散形式的退化模型若图像中不含有噪声,即n(x,y)=0,则数学表达式简化为如下形式:1100(,)(,)(,)MNmngxyfmnhxmyn在空间域中,卷积运算对应于频域的相乘,上面的模型可以用空间域的模型表示为:G(u,v)=H(u,v)F(u,v)+N(u,v)G(u,v),H(u,v),F(u,v),N(u,v)分别用g(u,v),h(u,v),f(u,v),n(u,v)的频域表示。上面的退化模型可以简写为如下形式:g=Hf+ng图像质量退化的图像H失真函数,即点扩散函数,点扩散函数描述的是一个光学系统对真实图像的模糊程度。f指真实图像n是加性噪声。图像去模糊的主要任务是用点扩散反卷积模糊的图像。1.3图像的噪声数字图像的噪声主要来自数字图像的获取和传输过程。图像中的噪声种类很多,常见的噪声有高斯噪声、瑞丽噪声、伽马噪声,指数分布噪声、椒盐噪声等,并由此建立相应的模型。imnoise函数可以在图像中加入噪声。例1:通过均值和方差来产生高斯噪声a)图像0200040006000800010000b)图像直方图050100150200250c)含方差为0.01的高斯噪声图像02004006008001000d)0.01的噪声图像直方图050100150200250e)含方差为0.03的高斯噪声图像0100200300400500600700800f)0.03的噪声图像直方图050100150200250clearall;I=uint8(100*ones(256,256));%建立均值为100的图像数据J=imnoise(I,'gaussian',0,0.01);%加入方差为0.01的高斯噪声K=imnoise(I,'gaussian',0,0.03);%加入方差为0.03的高斯噪声figure;subplot(231);imshow(I);xlabel('a)图像');subplot(232);imhist(I);xlabel('b)图像直方图');subplot(233);imshow(J);xlabel('c)含方差为0.01的高斯噪声图像');subplot(234);imhist(J);xlabel('d)0.01的噪声图像直方图');subplot(235);imshow(K);xlabel('e)含方差为0.03的高斯噪声图像');subplot(236);imhist(K);xlabel('f)0.03的噪声图像直方图');•例2:通过位置信息来产生高斯噪声clearall;I=imread('coins.png');I=im2double(I);V=zeros(size(I));fori=1:size(V,1)V(i,:)=0.02*i/size(V,1);endJ=imnoise(I,'localvar',V);figure;subplot(121);imshow(I);xlabel('a)图像');subplot(122);imshow(J);xlabel('b)噪声图像')a)图像b)噪声图像•例3:根据亮度值来产生高斯噪声clearall;I=imread('cameraman.tif');I=im2double(I);h=0:0.1:1;v=0.01:-0.001:0;J=imnoise(I,'localvar',h,v);figure;subplot(121);imshow(I);xlabel('a)图像');subplot(122);imshow(J);xlabel('b)噪声图像')a)图像b)噪声图像•例4:添加椒盐噪声clearall;I=imread('cameraman.tif');I=im2double(I);J=imnoise(I,'salt&pepper',0.01);K=imnoise(I,'salt&pepper',0.03);figure;subplot(121);imshow(J);xlabel('a)0.01噪声图像');subplot(122);imshow(K);xlabel('b)0.03噪声图像')a)0.01噪声图像b)0.03噪声图像2图像复原的模型图像的复原是图像退化的逆过程,它尽可能地恢复退化图像的本来面目。一般来说,图像复原是指在建立系统退化模型的基础上,以退化图像为依据,运用某些先验知识,将劣化了的图像以最大的保真度复原图像。图像的复原关键取决于对于图像退化过程的先验知识所掌握的精度和建立的退化模型是否合适。图像的复原模型:g(x,y)是指退化的图像,w(x,y)是指图像复原滤波器,恢复的图像由于引起图像质量退化的原因很多,因此为了消除图像质量的退化而采取的图像复原方法有很多种,而恢复的质量标准也不尽相同,因此图像的复原是一个复杂的数学过程,其方法技术也各不相同。在给定退化模型的情况下,图像复原可以分为无约束和有约束两大类;而根据是在频域恢复还是在空域恢复图像,图像复原可以划分为频域复原方法和空域复原方法。3图像的复原方法4种图像复原的函数:※维纳滤波器复原※规则化滤波器复原※Lucy-Richardson方法复原※盲反卷积复原3.1维纳滤波使用deconvwnr函数进行维纳滤波器图像复原常见的调用格式:J=deconvwnr(I,PSF)J=deconvwnr(I,PSF,NSR)J=deconvwnr(I,PSF,NCORR,ICORR)I指退化的图像,是原图像卷积一个点扩散函数PSF然后加上加性噪声得到的。NSR是噪声信号功率比,可为一标量,也可为与I同样大小的矩阵,默认值为0NCORR和ICORR分别是信号和原图像的自相关函数。J是返回的复原图像。例1:维纳滤波复原图像维纳(wiener)滤波最早是由Wiener提出,针对一维、二维信号进行复原,计算量较低,但效果较好。例:通过维纳滤波对运动模糊进行复原。clearall;I=imread('onion.png');I=rgb2gray(I);I=im2double(I);LEN=25;THETA=20;PSF=fspecial('motion',LEN,THETA);J=imfilter(I,PSF,'conv','circular');NSR=0;K=deconvwnr(J,PSF,NSR);figure;subplot(131);imshow(I);xlabel('a)原图像');subplot(132);imshow(J);xlabel('b)退化图像')subplot(133);imshow(K);xlabel('c)复原图像')a)原图像b)退化图像c)复原图像3.2规则化(最小二乘)滤波规则化滤波是在知道噪声信息的情况下有效的反卷积方法,规则化滤波器滤波的函数是deconvreg。deconvreg的调用方法:J=deconvreg(I,PSF)J=deconvreg(I,PSF,NOISEPOWER)J=deconvreg(I,PSF,NOISEPOWER,LRANGE)J=deconvreg(I,PSF,NOISEPOWER,LRANGE,REGOP)[J,LAGRA]=deconvreg(I,PSF,NOISEPOWER,LRANGE,REGOP)I是退化的图像PSF是点扩散函数NOISEPOWER是加性噪声的能量,默认值为0;LANGE是函数优化过程中拉格朗日算子的范围,默认值为[1e-9,1e9]REGOP是约束优化中的规则化操作,默认值为laplacian操作;J是去模糊后返回的图像LAGRA是返回的拉格朗日算子。例2:规则化复原图像clearall;I=imread('rice.png');I=im2double(I);PSF=fspecial('motion',8,4);J=imfilter(I,PSF,'conv');%退化figure;subplot(221);imshow(I);xlabel('a)原图像');subplot(222);imshow(J);xlabel('b)退化图像')v=0.02;K=imnoise(J,'gaussian',0,v);%噪声NP=v*prod(size(I));L=deconvreg(K,PSF,NP);subplot(223);imshow(K);xlabel('c)噪声图像');subplot(224);imshow(L);xlabel('d)复原图像')a)原图像b)退化图像c)噪声图像d)复原图像3.3Lucy-RichardsonLucy-Richardson(简称L-R)滤波器方法假设噪声服从泊松分布,基于贝叶斯理论使产生图像的似然性达到最大。在matlab图像处理工具箱中,使用Lucy-Richardson滤波器方法复原图像的函数为deconvlucy。该函数在最初的Lucy-Richardson方法的基础上进行了一下改进:(1)减小放大噪声的影响(2)对图像质量不均匀的像素进行修正。deconvlucy函数的调用方式:J=deconvlucy(I,PSF)J=deconvlucy(I,PSF,NUMIT,DAMPAR)J=deconvlucy(I,PSF,NUMIT,DAMPAR,WEIGHT)J=deconvlucy(I,PSF,NUMIT,DAMPAR,WEIGHT,READOUT)J=deconvlucy(I,PSF,NUMIT,DAMPAR,WEIGHT,READOUT,SUBSMPLI是指要复原的退化图像PSE是点扩散函数NUMIT是指迭代的次数,默认值为10DAMPAR规定了原图像和恢复图像之间的偏差WEIGHT是一个权重矩阵,它规定了图像I中的坏像素的权值为0,其它的为1,默认值为跟I同样维数的全1矩阵;READOUT是与噪声和读出设备有关的参数,默认值为0;SUBSMPL是指二次抽样频率,默认值为1;J是反卷积后恢复出来的图像例3:Lucy-Richardson方法复原图像clearall;I=imread('rice.png');I=im2double(I);LEN=30;THETA=20;PSF=fspecial('motion',LEN,THETA);J=imfilter(I,PSF,'circular','conv');%图像退化figure;subplot(221);imshow(I);xlabel('a)原图像');subplot(222);imshow(J);xlabel('b)退化图像');K=deconvlucy(J,PSF,20);L=deconvlucy(J,PSF,35);subplot(223);imshow(K);xlabel('c)20次迭代复原图

1 / 31
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功