1、 武汉理工大学专业综合课程设计说明书 目 录摘要 I1 绪论 .12 图像的噪声与退化 .22.1 图像的噪声 22.2 图像的退化模型 32.2.1 一般退化模型 .32.2.2 匀速直线运动模糊图像的退化模型 .52.3 点扩展函数 52.4 图像的运动模糊处理 63 运动模糊图像的恢复 .83.1 运动模糊退化函数的参数估计 83.2 运动模糊图像复原方法 103.2.1 逆滤波 103.2.2 维纳滤波 .114 运动模糊图像恢复实现 .134.1 逆滤波恢复实现 .134.2 维纳滤波恢复实现 .145 振铃效应 .176 心得体会 .18参考文献 .19武汉理工大学专业综合课程设计
2、说明书 摘要图像复原技术也常被称为图像恢复技术,图像恢复技术能够去除或减轻在获取数字图像过程中发生的图像质量下降(退化)问题,从而使图像尽可能地接近于真实的场景。在拍摄过程中,相机和景物的相对运动会导致运动模糊,这种运动模糊现象是成像过程中普遍存在的,例如:在飞机或太空飞行器上拍摄的照片、战场上高速飞行的物体的运动照片。运动模糊图像的恢复是图像恢复的主要研究课题之一,其具有重要的现实意义。目前对于运动模糊图像的恢复研究主要是针对于水平方向的匀速运动产生的模糊图像,尝试使用各种图像恢复方法对图像进行恢复处理。而对于诸如运动模糊图像的退化过程、点扩展函数的建立以及任意直线方向运动模糊图像的恢复、仿
3、真图像的正确生成等问题需要进一步的深入和关注。运动模糊图像产生的原因有很多,但根本原因都是因为在曝光时间内所拍摄的景物和相机的图像传感器之间发生了相对位置移动,一般这种相对运动用点扩散函数(point spread function, PSF)或运动模糊核来描述,这种相对位置移动有两种情况,一种是所拍摄的景物在相机曝光时间内相对于相机有相对运动,或者相机相对于所拍摄物体有旋转,这种情况下整幅照片不能用统一的 PSF 来描述;另一种情况是相机曝光时间内所拍摄的景物及背景之间没有相对运动,并且相机相对于所拍摄的景物没有旋转,此时整幅运动模糊图像具有统一或者近似统一的 PSF。对于退化的复原,一般采
4、用两种方法,一种方法适用于对图像缺乏先验知识的情况,此时可以对退化过程建立模型,进行描述,进而寻找一种去除或消弱其影响的过程;另一方面,若对于原始图像有足够的先验知识,则对原始图像建立一个数学模型,并根据它对退化图像进行拟合会更有效。本文则主要针对图像的运动模糊来进行逆滤波和维纳滤波方面的研究。关键字:图像的运动模糊 维纳滤波 逆滤波武汉理工大学专业综合课程设计说明书 01 绪论图像复原是图像处理中的重要内容,它的主要目的就是改善图像的质量,研究如何从所得到的变质图像中复原出真实的图像,或说是研究如何从获得的信息中反演出有关真实目标的信息。从历史来看,数字图像处理研究有很大部分是在图像恢复方面
5、进行的,包括对算法的研究和针对特定问题的图像处理程序的编写。数字图像处理中很多值得注意的成就就是在这方面取得的。近年来,在数字图像领域,关于运动模糊图像的复原问题成为了国内外研究的热点问题之一,也出现了一些行之有效的算法和方法,但是这些算法和方法在不同的情况下具有不同的复原效果,因为这些算法都是在作者假定的前提情况下提出的,而实际上的模糊图像,并不一定能够满足这些算法的前提,或者只能满足其中的一部分前提。作为一个使用的图像复原系统,就得提供多种复原算法,使用户可以根据情况来选择最适当的算法以得到做最好的复原效果。运动造成图像的退化是非常普遍的现象,例如无人侦察机在高速运动中进行拍摄,由于振动、
6、飞机的运动及相机的摆动等原因使相机在曝光时被照物影像与感光介质之间存在相对运动,这种相对运动会造成图像的模糊,使图像产生拖尾效应,极大地影响了相机的成像质量,这种图像会造成目标很难识别或无法提取,所以必须对其进行恢复。除此之外,对于运动模糊图像的复原方法研究具有非常大的现实意义,因为运动模糊图像在日常生活中普遍存在,给人们的实际生活带来了很多不变甚至是危及人的生命安全,一个典型的例子就是随着我国经济迅速发展,城市中的汽车越来越多,汽车的增加引发了很多交通事故,其中一个很重要的原因就是有些司机缺乏交通安全意识,在灯控路口乱闯红灯或超速行驶,这些交通事故不仅危害到人们的生命安全,而且给国家带来了大
7、量的经济损失。现在很多城市的重要交通路口都设置了“电子眼”交通监视系统,它能够及时记录下闯红灯车辆的车牌号,由于车辆在闯红灯时速度较高,所以摄像机摄取的画面有时是模糊的,这就需要运用运动模糊图像复原技术进行图像复原,所以很有必要对运动模糊图像的恢复做深入的研究。武汉理工大学专业综合课程设计说明书 12 图像的噪声与退化2.1 图像的噪声噪声可以理解为妨碍人的视觉器官或传感器对所接受图像源信息进行理解或分析的各种因素。一般噪声是不可预测的随机信号,它只能用概率统计的方法去认识。噪声对运动模糊图像处理的各种环节以及输出结果的全过程都有影响。因此,一个良好的图像处理系统不论是模拟处理还是计算机处理无
8、不把减少噪声作为主攻目标,去噪已经成为运动模糊图像处理中的极其重要的步骤,也是图像处理的一个研究重点。按照不同的分类方式,可以对噪声按以下几种方法分类:(1) 按干扰源分类图像噪声按其干扰源可分为外部噪声和内部噪声。外部噪声是指从处理系统外来的影响,如天线干扰或电磁波从电源线串入系统的噪声。内部噪声主要有四种基本形式。1) 由光和电的基本性质引起:如电流可看作电子或空穴运动,这些粒子运动产生随机散粒噪声;导体中电子流动的热噪声;光量子运动的光量子噪声等。2) 机械运动产生的噪声:接头震动使电流不稳,磁头或磁带、磁盘抖动等。3) 元器件噪声:如光学底片的颗粒噪声,磁带、磁盘缺陷噪声,光盘的疵点噪
9、声等。4) 系统内部电路噪声:如 CRT 的偏转电路二次发射电子等噪声。(2) 按对信号的影响分类按噪声对信号的影响可分为加性噪声和乘法噪声两大类。设 f (x, y)为信号,n(x, y)为噪声,影响信号后的输出为 g(x, y) 。1) 加性噪声g( x, y) = f (x, y) + n(x, y) (2-1)形成的波形是噪声和信号的叠加,其特点是 n(x, y)和信号无关,如一般的电子线性放大器的噪声。不论输入信号大小,其输出总是与噪声相叠加。2) 乘性噪声g( x, y) = f (x, y)1+n(x, y) = f (x, y) + f (x, y)n(x, y) (2-2)其
10、输出是两部分的叠加,第二个噪声项信号受 f (x, y)的影响,f (x, y)越大则第二项越武汉理工大学专业综合课程设计说明书 2大,即噪声项受信号的调制。如光量子噪声、底片颗粒噪声都随信号增大而增大。乘性噪声模型和分析计算都比较复杂,当信号变化很小时,第二项近似不变,此时可用加性噪声模型来处理。通常总是假定信号和噪声是相互独立的。(3) 按统计特征分类从噪声的幅度分布的统计特性来看又可以分为以下几种:白噪声 (White Noise):它具有常量的功率谱。白噪声的一个特例是高斯噪声(Gaussian Noise)。它的直方图曲线服从一维的高斯型分布:(2-3)2(x)1(x)pe椒盐噪声(
11、Pepper Noise):是一种在图像中产生黑、白点的脉冲噪声。该噪声在图像中显现较为明显,对图像分割、边缘检测、特征提取等后续处理具有很严重的破坏作用。冲击噪声 (Impulsive Noise) :是指一副图像被个别噪声像素破坏,而且这些像素的亮度与其邻域的显著不同。量化噪声 (Quatization Noise):在量化级别不同时出现的噪声。例如将图像的亮度级别减少一半的时候会出现伪轮廓。2.2 图像的退化模型2.2.1 一般退化模型对于一幅图像来说,在使用数学方法表示它的信息时,可以将其看作是空间每个坐标点上强度的集合。图像最普遍的表达式可记为:I = f ( x, y, z, ,
12、t) (2-4)该式中( x, y, z)表示空间坐标, 表示波长,t 表示时间,I 表示图像的强度。此式能代表一幅活动的、立体的、彩色图像。如果研究的图像是静止的,很明显式(2-4)与时间 t没有关系;若对于图像是单色的情况,I 与波长 显然没有关系,而平面图像显然与坐标z 没有关系。于是,对于一幅静止的、平面的、单色图像而言,可以将其描述为:I = f ( x, y) ( 2-5)基于这样的数学表达式,可建立的图像退化模型如图 2.1 所示:武汉理工大学专业综合课程设计说明书 3图 2.1 图像退化模型其中,g( x, y)表示一幅退化之后的图像,f (x, y)代表原始清晰图像,H 为退
13、化系统,n( x,y)指的是加性噪声。如果已知了退化图像 g(x, y)并估计出退化系统 H 的参数,就可以近似地恢复出 f (x, y)。对于图 2.1 所描述的退化系统来说,可通过式 ( 2-6)来表示出来:g( x, y) = H f (x, y) + n(x, y) (2-6)如果暂且不考虑加性噪声 n(x, y)的影响,即令 n(x, y)=0 时,则式(2-6)就变为:g( x, y)= H f (x, y) (2-7)当输入信号为 f1(x,y)、f 2(x,y)时,所对应的输出信号为 g1(x,y)、g 2(x,y),如果通过系统后可以使下式成立:Hk1 f1(x, y)+k2
14、 f2(x, y) = Hk1 f1(x, y)+Hk2 f2(x, y)=k1 g1(x, y)+k2 g2(x, y) (2-8)那么,可以说系统 H 就是一个线性系统。其中 k1,k 2 为常数。对于一维函数来说,如果一个系统的参数不会随时间的变化而改变,那么该系统为时不变系统或者非时变系统;否则就称之为时变系统。相对应的,在二维函数中,如果满足:H f (x- , y-) = g(x- , y-) (2-9)那么 H 就是空间不变系统,式中的 和 分别代表空间位置的位移量,式 (2-9)表明图像中任一点经过该系统后的响应只依赖于其输入值的大小,而和该点的位置没有关系。在进行图像复原处理
15、时,虽然实际中的空间变化、非线性的系统模型更具有准确性和普遍性,但常常出现没有解的情况或者很难通过计算机来处理,给具体工作带来很大的困难,所以一般采用线性和空间不变的系统模型。对于一个线性系统而言,完全可以使用其冲激响应来表征,从而达到简化问题的效果。当系统为时不变时,则有H(x- , y-) = h(x- , y-) (2-10)此时,显然武汉理工大学专业综合课程设计说明书 4(2-11)(x,y)(,)x,y)dgfh从式(2-11)可以看出,系统 H 的输出就等于输入信号及其冲激响应进行卷积积分所得到的结果。当受到加性噪声干扰时,式(2-11)的线性退化模型就变为:(2-12) (x,y
16、)(,)x,y)dn(x,y)hngff2.2.2 匀速直线运动模糊图像的退化模型对于所有的运动模糊来说,由于任何变速的、非直线运动在一定条件下可以被分解成分段匀速直线运动,因而匀速直线运动所导致的图像复原比较普遍,用 h( x, y)来表示退化过程的点扩散函数 PSF,假设不受噪声影响时,由摄像设备与被拍对象之间存在相对运动而产生的退化模型可通过 图 2.2 来描述:图 2.2 匀速直线运动模糊退化模型该模型中,原图像 f (x, y)在水平方向上进行匀速直线运动,在 x 方向和 y 方向上的运动分量分别用 x0(t)和 y0(t)表示,在相机快门开启的时间 T 内,底片上像素点( x ,
17、y )的总曝光量等于作用在这一点的像点亮度之和,所以对于匀速直线运动模糊图像而言,其连续退化函数模型可以用式(2-13) 表示:(2-13)000(x,y)x(t),y(t)dTgf对式(2-13)的左右两边求傅里叶变换得到:其中,x 0(t)表示目标在 x 方向的运动分量,y 0(t)表示目标在 y 方向的运动分量。2.3 点扩展函数不同的点扩散函数(PSF)会产生不同的模糊图像。明确的知道退化函数是很有用的,有关它的知识越精确,则复原结果就越好。我们首先讨论几个典型的点扩散函数。假设 V 是沿 x 轴方向的恒常速度,时间 T 内 PSF 的傅立叶变换 H(u,v)由下式给出:(2-14)s
18、in(Vu)(u,v)H离焦模糊的点扩散函数:由于焦距不当导致的图像模糊可以用如下函数表示:武汉理工大学专业综合课程设计说明书 5(2-15)1(ar)(u,vJH其中 J1 是一阶 Bessel 函数,r2 = u2 + v2,a 是位移。该模型不具有空间不变性。大气扰动的点扩散函数:大气的扰动造成的图像模糊在遥感和天文中是需要复原的。它是由大气的不均匀性使穿过的光线偏离引起的,以下给出了数学模型,其表达式为:(2-16)25/6(uv)(,)cHe其中 c 是一个依赖扰动类型的变量,通常通过实验来确定。幂 5/6 有时用 1 代替。当我们得到一幅退化图像的时候,首先要判断其退化类型然后通过
19、已知的先验知识进行恢复。2.4 图像的运动模糊处理选择一幅 256 级的灰度图像,在 MATLAB 中编程对其进行运动模糊加噪处理。此处采用点扩展函数对其进行运动模糊加噪处理。首先通过调用 info=imfinfo(man.tif),来观察图像的相关属性,结果图如图 2.3 示:图 2.3 图像属性图设置模糊长度为 20,模糊角度为 45 度,对所选图像进行运动模糊加噪处理,程序如下:I=imread(man.tif);figure(1);subplot(2,2,1);imshow(I,);title(原图像);武汉理工大学专业综合课程设计说明书 6PSF=fspecial(motion,20
20、,45);%表示物体逆时针方向以 45 度角 度运动了 20 个像素MF=imfilter(I,PSF,circular);subplot(2,2,2);imshow(MF,);title(运动模糊图像);noise=imnoise(zeros(size(I),gaussian,0,0.001);MFN=imadd(MF,im2uint8(noise);subplot(2,2,3);imshow(MFN,);title(运动模糊加噪图像 );结果图如图 2.4 所示:图 2.4 模糊参数为 20、45 的运动模糊图像武汉理工大学专业综合课程设计说明书 73 运动模糊图像的恢复图像复原是通过计算
21、机处理,对质量下降的图像加以重建或恢复的处理过程,因摄像机与物体的相对运动、系统误差、畸变、噪声等因素的影响,使图像往往不是真实景物的完善图像。在图像复原中,需建立造成图像质量下降的退化模型,然后运用相反过程来恢复原来的图像,并运用给一定的准则来判定是否得到图像的最佳复原。图像复原的一般过程可用图 3.1 表示。图 3.1 图像复原的流程3.1 运动模糊退化函数的参数估计运动模糊的处理可以从两方面着手,一方面是从空间域的角度,另外一方面就是从频域的角度来估计参数。前者的理论基础是:由于图像的运动导致了图像的边缘信息大量丢失,而图像的边缘在图像频谱中是属于高频成分的,也就是运动模糊导致了高频成分
22、的丢失。因此对运动模糊图像进行方向微分,灰度值最小的方向即为我们要找的模糊方向,最后用自相关的方法来确定模糊长度。后者则是从大量运动图像的频谱中可以观察到:运动模糊图像的频谱会呈现出明暗相间的条纹,其中暗条纹的倾斜角刚好与模糊方向之和为 90 度,暗条纹的个数与模糊长度差 1,当然这只是对于长和宽相等的图像来说的。下面我们来观察不同运动方向下图像的频谱图。选择一副 256 级的灰度图像,对此图像进行模糊长度为 10,方向分别为 00 和 450 的运动模糊处理,然后分别求其运动模糊处理后图像的频谱图,参考程序如下:I=imread(man.tif);figure;subplot(2,2,1);
23、imshow(I,);title(原图像);PSF=fspecial(motion,10,0);MFN=imfilter(I,PSF,circular);subplot(2,2,2);imshow(MFN,);title(运动模糊图像);武汉理工大学专业综合课程设计说明书 8s=fft2(MFN);e=fftshift(s);%将变换后图像频谱中心从矩阵的原点移动到矩阵的中心A=abs(e);%得到图像的幅度谱B=log(1+A);subplot(2,2,3);imshow(B,);上述程序是角度为0 0时的程序,若要编写模糊角度为45 0的程序,只需要将上述程序的第四行最后一个参数改为45就
24、可以了。结果图如图3.2和图3.3所示:图3.2 模糊角度为0 0时的频谱图武汉理工大学专业综合课程设计说明书 9图3.3 模糊角度为45 0时的频谱图从上面的图形可以看出,频谱中出现了明暗相间的条纹,而且随着模糊角度的不同,图像频谱中暗条纹的方向也不一样,我们要做的就是提取其倾斜角,估计其运动模糊的角度参数,观察期暗条纹的个数,估计其模糊长度。根据这种在频域的方式来进行的估计,比较简便,但是此方法具有一定的缺陷,那就是模糊长度较大时,不能准确地估计模糊长度,并且在角度估计时会有一定的误差。特别是当图像收到噪声的影响时估计误差更大。3.2 运动模糊图像复原方法3.2.1 逆滤波逆滤波复原也称为
25、反向滤波法,是一种简单直接的无约束图像复原方法,其基本原理为:在假设不受噪声影响的理想情况下,用退化图像的傅里叶变换 G(u, v)除以退化系统的传递函数 H(u, v),得到原始图像的傅里叶变换 F(u, v),然后对 F(u, v)进行傅里叶反变换就可以得到原始图像 f (x, y)。根据图像的退化模型式(2-12)可得其傅里叶变换为:G (u, v) = H (u, v) F (u, v) + N (u, v) (3-1)即(3-2),(,)()()武汉理工大学专业综合课程设计说明书 10式中,G (u, v)、F ( u, v)、H (u, v )、N (u, v)分别是 g(x, y
26、)、f (x, y)、h(x, y )、n( x, y)的傅里叶变换,而 H (u, v)为系统的传递函数。在忽略噪声影响时,退化模型的傅里叶变换可以简化为:G (u, v) = H (u, v) F (u, v) (3-3)即(3-4),(,)()从逆滤波算法的基本处理过程可以看出,该方法的最大特点就是通过 FFT 来实现,运算速度很快,比较适合大尺寸的二维图像。实际上即便知道了退化函数 H (u ,v),也未必准确地恢复出原图像。因为 N (u ,v)是一个随机函数,不知道它的傅立叶变换。另外,在用逆滤波法复原图像时会出现一个问题:由于 u, v 平面上有些点或区域会使得 H (u ,v)
27、 = 0,或者当 H (u ,v)非常小时,即使没有噪声也无法精确恢复原图像。在有噪声时,在 H (u ,v)的领域内,H (u ,v)的值可能会比 N (u, v)小很多,此时 N (u, v)/H (u ,v)就会变的很大,噪声被放大了很多,那么图像的复原效果就会很差。如果 H (u ,v)有零点,那么在 H (u ,v)零点处,N (u, v)/H (u ,v)就趋近于无穷大,公式就失去了意义,呈现病态,因此在这些点的图像无法得到正确复原。因为逆滤波复原方法存在病态问题,所以一般适用于信噪比很高的模糊图像恢复中。实际上,逆滤波法不能正确地估计 H (u ,v)的零点,所以必须采用一个折中
28、的方法加以解决。一般情况下,H (u ,v) 会随着 u, v 与原点距离的变大而下降得很快,而噪声 N (u, v)的幅度变化通常是较缓慢的。在这种情况下,在远离 u, v 平面的原点时 N (u, v)/H (u ,v)的值会变得很大,然而对于大多数图像而言 F (u, v)却会变小,也就是说噪声反而占了优势,复原只能在与原点较近(接近频域中心)的范围内进行,那么得到的复原结果自然无法令人满意。3.2.2 维纳滤波逆滤波复原法对噪声极为敏感,要求信噪比较高,通常不满足该条件,因此希望找到一种方法,在有噪声的条件下,从退化图像复原出原图像的估计值,此时就要用到维纳滤波,也可称为最小乘方滤波,
29、或者最小均方差滤波,它是一种原始图像与复原图像之间的均方误差最小的图像复原方法。维纳滤波的基本思想是:认为图像和噪声是随机武汉理工大学专业综合课程设计说明书 11过程,在这个前提下寻找一个原图像的近似估计值,使得两者之间的均方误差达到最小值。均方误差的表示如下式:(3-5)22(f)eE在频率域上,式(3-5)的误差函数的最小值可用下式来计算:(3-6)22(u,v)S,(u,v) G(u,v)|H|1,(,)|(,)|()/(,)ff nnfFS 式(3-6)称为维纳滤波,括号中的项组成的滤波器通常称为最小均方误差滤波器。从上式可以看出,维纳滤波防止了退化函数等于零的问题出现(除非对于相同的
30、 v 值,H (u ,v)和 Sn(u ,v)都是 0),从而不会出现逆滤波复原的病态问题。式中的各项函数说明如下:H (u ,v):退化函数H *(u ,v):H (u ,v)的复共轭|H (u ,v)|2:H *(u ,v)和 H (u ,v)的乘积Sf (u ,v):原图像的功率谱Sn (u ,v):噪声的功率谱G (u, v):退化图像的傅里叶变换当图像中没有噪声时,维纳滤波退化为逆滤波。在实际的应用过程中,往往不知道原图像及噪声的功率谱,并且估计起来十分困难,所以通常使用一个特殊的常量 K 来表示 图像的信噪比。那么维纳滤波可以近似表达为:(3-7)21|H(u,v)|G(,)(,)
31、FK虽然维纳滤波避免了逆滤波处理的病态问题,但是在针对具体的问题时,有时获得的效果却达不到要求,因为维纳滤波是以假定图像退化模型是线性系统为基础的,然而实际上图像的存储以及进行主观评价的视觉系统一般情况下都是非线性的,而且维纳滤波的准则在某种程度上并一定和人类的视觉判断准则相一致,人眼对暗处以及高梯度区域的误差在很大程度上能够承受,然而均方差准则对所有的误差所加的权值是相同的,即对图像进行的这种平滑并非是最适合人眼的。武汉理工大学专业综合课程设计说明书 124 运动模糊图像恢复实现4.1 逆滤波恢复实现首先,将该部分的图像分为加噪和不加噪的运动模糊图像,分别对其进行逆滤波,比较两种不同情况下逆
32、滤波的恢复效果。程序编写如下:I=imread(man.tif);m,n=size(I);F=fftshift(fft2(I);k=0.0025;for u=1:m for v=1:nH(u,v)=exp(-k)*(u-m/2)2+(v-n/2)2)(5/6);endendG=F.*H;I0=real(ifft2(fftshift(G);subplot(2,2,1);imshow(I0,);title(不加噪运动模糊图像);F0=fftshift(fft2(I0);F1=F0./H;I1=ifft2(fftshift(F1);subplot(2,2,2);imshow(uint8(I1);ti
33、tle(不加噪全逆滤波复原图);I2=imnoise(uint8(I0),gaussian,0,0.001);subplot(2,2,3);imshow(uint8(I2);title(模糊退化且添加高斯噪声的图像);F2=fftshift(fft2(I2);F3=F2./H;I3=ifft2(fftshift(F3);subplot(2,2,4);imshow(uint8(I3);title(加噪全逆滤波复原图);结果图如图 4.1 所示:武汉理工大学专业综合课程设计说明书 13图 4.1 逆滤波恢复图由图 4.1 可知,运动模糊图像不被噪声干扰时,进行逆滤波恢复能得到较好的结构,但是模糊图
34、像如果受到噪声的干扰,则逆滤波就不再试用了,不能得到理想的结果。4.2 维纳滤波恢复实现用维纳滤波复原图像时,主要的任务是估计 K 值得大小,一般情况下 K 值可取经验值或者通过人机对话进行手工调节,前者虽然实施起来比较简单但是复原效果不是很好,后者复原效果要好一些。下面将对运动模糊加噪的图像进行维纳滤波处理。利用第二种方法得到 K 的值最好在 0.001 左右,下面取两个 K 值对图像进行维纳滤波,根据维纳滤波表达式编写程序如下:Blurred=imread(man.tif);subplot(2,2,1);imshow( Blurred);title(原图像);%自编 函数进行维纳滤波%k=
35、0.0025;m,n=size(Blurred);F=fftshift(fft2(Blurred);武汉理工大学专业综合课程设计说明书 14spectrum=zeros(m,n);H=zeros(m,n);for u=1:m for v=1:nH(u,v)=exp(-k)*(u-m/2)2+(v-n/2)2)(5/6);spectrum(u.v)=(abs(H(u,v)2;endendG=F.*H;I0=real(ifft2(fftshift(G);I1=imnoise(uint8(I0),gaussian,0,0.001);subplot(2,2,2);imshow(uint8(I1);ti
36、tle(模糊退化且添加高斯噪声的图像);f=double(I1);F1=fftshift(fft2(f);HW=spectrum/(H(u,v)*(spectrum+0.001);restore1=HW.*F1;restored=real(ifft2(ifftshift(restore1);subplot(2,2,3);imshow(restored,);title(K=0.001自编函数进行维纳滤波);HW1=spectrum/(H(u,v)*(spectrum+0.3);restore2=HW1.*F1;restored3=real(ifft2(ifftshift(restore2);su
37、bplot(2,2,4);imshow(restored3,);title(K=0.3自编函数进行维纳滤波);结果图如图4.2所示:武汉理工大学专业综合课程设计说明书 15图4.2 维纳滤波恢复图由图4.2所知,选择不同的K值对运动模糊图像的维纳滤波处理会造成一定程度上的影响,所以在进行维纳滤波时,要注意K值得选取。而从另外一方面可以得知,运动模糊加噪后的图像进行维纳滤波的效果比逆滤波的效果好得多,所以这种最小均方误差滤波的方法可以适用于加噪干扰的信号恢复。武汉理工大学专业综合课程设计说明书 165 振铃效应运动导致图像模糊本质就是对原始图像进行对点平滑的过程,在数学上这个过程叫做卷积,所以图
38、像复原就是去卷积(也称为逆卷积) 。在恢复图像的过程中,每一个像素都需要相邻像素的信息才可以进行逆卷积,但由于位于图像边边界的像素并没有充分多的相邻像素可以采用,这就会导致复原图像的边缘效果变差,并且整个图像都会出现明暗相间的条纹,这就是振铃效应。根据振铃的位置不同可将振铃分为两种。图像边界出现的横条纹称为边界振铃,图像色度或灰度变化较大的部分产生的振铃称为边缘振铃。振铃效应是图像复原领域需要解决的一个非常重要的问题。因其振铃现象的原因有很多种,例如:图像在退化的过程中高频分量的丢失、在估计退化函数的时候误差的影响以及图像复原模型的选取不当均是引起振铃现象的因素。总结起来,引起复原图像质量变差
39、的原因可归结为以下四点:(1)边界效应。模糊图像产生的过程中,每个像素都是由相邻像素的加权值得到的。因此运动方向左右两侧的边界图像在复原的过程中由于没有足够的像素信息会导致在临近边界处产生振铃,称为边界振铃。(2)点扩散函数问题。首先,在估计点扩散函数的时候,估计误差不能保证为零。这样就会产生由于模糊精度的估计误差所产生的图像复原质量变差。其次,由于图像是离散信号,构造的点扩散函数需要离散化,对于非水平方向的运动模糊就会出现点扩散函数的离散化误差。(3)运算精度。实验中进行各种运算都是浮点运算,有一定的舍入误差。(4)退化模型的建立。图像复原质量要建立在正确模型的建立之上,现实生活中图像的获取
40、会受到一系列问题的干扰,我们只能最大程度地去逼近退化过程,但不能准确无误地模拟各种复杂的退化过程。这样实际图像的复原质量就和我们所模拟的退化过程与实际过程之间的近似度有很大的关系。所以要消除振铃效应在建立正确的图像退化模型,在提高退化函数估计精度的基础上,尽可能的保持图像的边缘信息(既图像的高频分量)。武汉理工大学专业综合课程设计说明书 176 心得体会本次课程设计主要是针对运动模糊图像进行研究。通过对图像的运动模糊以及对运动模糊后的图像进行复原,掌握了运动模糊的方法和逆滤波、维纳滤波进行图像复原的相关原理。由于之前的课程有涉及到相关的知识,所以基本的原理刚开始是知道的,但是如果是涉及到在 M
41、atlab 中编写程序,还有一些知识我并不是很懂,所以在进行设计之前,我查阅了相关的文章,但是一般的文章都是只进行算法的研究,而没有实际的代码,而且可能由于我看到的都是硕士的论文,所以研究的方面很全,涉及到的知识也很多,对于我这次做课程设计来说,显得复杂了一些。所以我花了很大部分的精力在看这些论文上面。在设计程序的时候,由于设计题目有要求说维纳滤波不能直接调用 Matlab 库中的函数,所以要根据维纳滤波的公式进行编写,而且对于逆滤波,Matlab 中没有直接可以调用的函数,也要根据公式来进行编写,刚开始不知道从何下手,后来进过查找一些相关的资料,然后根据自己设计题目的要求进行一些改动,得到了
42、我所需要的结果,并且根据这些程序进行了一些分类比较,使得结果更具有代表性。在查找资料的过程中,我对数字图像处理的认识更加清楚,了解到了更多的图像处理方法和思想。选择的几种方法是比较常用的,也是比较有代表性的方法,在利用这几种方法实现运动模糊图像复原的过程中,学到了逆滤波和维纳滤波的特点以及适用的范围。在MATLAB程序实现过程中,调试相应的程序,完成相应的参数设置,并观察不同参数下的图像处理效果,从而加深对各种滤波算法原理和过程的理解。其实每次做课程设计的时候,刚开始都是从资料的收集开始的,通过了解相关的知识之后,自己再开始动手做,这收集资料和解决问题的过程就是自己进步的开始,就是在这次课程设
43、计中学到的东西,累计的经验。在这样的实践课程中,提高了我独立思考问题和解决问题的能力,锻炼了我动手实践的能力,在这个过程中受益颇多。武汉理工大学专业综合课程设计说明书 18参考文献1 杨杰,黄朝兵 .数字图像处理及MATLAB实现 . 北京:电子工业出版社 ,2010. 2 陈天华. 数字图像处理.北京:清华大学出版社,2007.3 许录平. 数字图像处理.北京:科学出版社,2007.4 阮秋琦,阮宇智 .数字图像处理(第二版). 北京:电子工业出版社,2005.5 刘卫国.MATLAB 程序设计与应用 M.北京:高等教育出版社,2005.武汉理工大学专业综合课程设计说明书 19本科生课程设计成绩评定表姓 名 性 别专业、班级课程设计题目:课程设计答辩或质疑记录:成绩评定依据:最终评定成绩(以优、良、中、及格、不及格评定)指导教师签字: 年 月 日