1绪论1.1课题研究目的及其意义数字图像锐化处理也可以称为算计图像处理,它最早出现在20世纪50年代,当时的计算机水平已经有了一定的基础,人们已经可以使用计算机来简单的处理一些图像图形信息,随着计算机技术的飞速发展,图像处理技术也开始运用在如航天、医疗工程,生物技术,工业检验,军事文化艺术等众多领域,并取得重大的成就,这些都渐渐的使图像处理成为一门引人注目、前景广阔的新型学科。本论文就是研究图像锐化的算法,并比较分析各个算法的特点,更好地改善图像的质量,使模糊图像变得清晰,目标物体边缘更加鲜明,便于之后对图像的分割、区域识别、区域形状提取等操作。以MATLAB为实验平台,在众多图像锐化的算法中总结不同的方法并对比分析。1.2国内外研究现状图像的处理,就是对图像信息进行加工,使图像看起来更加生动美好,因为计算机技术的不断提高,图像处理学也已经随着计算机提升到了数字图像处理阶段,而数字图象处理的应用越来越广泛,工业、农业、军事、医疗等领域无处不在。数字图像锐化算法可能在图像处理知识中只是冰山一角,但也是必不可少的一部分,在我们日常的学习生活中,数字图像锐化算法为我们对数字图像的处理提供了非常大的帮助。在产品应用上,现在国外流行的数字图象处理软件品种繁多,例如美国MathWorks公司出品的MATLAB软件,它主要应用于工程计算、信号处理、图像处理等领域。MATLAB有着强大的矩阵运算和处理功能,而数字图像处理与矩阵运算有密切的联系,并且MATLAB图像处理工具箱提供了丰富的图像处理函数,这些几乎可以完成所有图像处理工作。其他的图像处理软件还有微软的MSVC,Adobe公司的Photoshop,Ulead公司的PhotoImpact,美图公司的美图秀秀等。这些软件在图像处理方面各有千秋。我国虽然在数字图象处理方面起步比较晚,但现在发展十分迅速,目前已经可实现:分别对灰度图像不同阶调进行不同程度的锐化、分别对彩色图像的不同阶调进行不同程度的锐化、分别对彩色图像的不同通道进行不同程度的锐化等一些列不同的锐化。2数字图像锐化概述2.1图像锐化概念图像在传输过程中,传递函数对高频成分有衰减作用,造成图像模糊,细节轮廓不清楚。图像锐化就是补偿图像的轮廓,增强图像的边缘及灰度跳变的部分,使图像变得清晰。图像的模糊一般就是因为收到平均或积分运算造成的,因此可以对图像进行模糊的逆运算,如微分运算来使图像清晰化。从频谱角度来分析,图像模糊的实质是其高频分量被衰减,因此可以通过高通滤波操作使图像清晰化。2.2图像锐化目的在数字图象处理中,图像锐化的目的有两个:一是加强图像中景物细节的边缘和轮廓,使因为操作错误或者因为特殊图像获取方法的固有影响造成的模糊变得清晰起来;二是提取物体的边界,把它们进行分割,更好的识别目标区域,或者便于之后对图像的分割、区域识别、区域形状提取等操作。总之图像经过锐化后,变得更利于人眼的观察和研究。2.2图像锐化原理和几种常用算法图像锐化又分为线性锐化滤波和非线性锐化滤波,线性锐化滤波器的中心系数必须为正数,其他系数为负数。非线性锐化滤波器的就是用微分运算来处理图像,所以在数字图像处理中,通常采用一阶或者二阶微分锐化算法来锐化图像。图像锐化有空域锐化和频域锐化两种,其中空域锐化有梯度运算(Roberts算子),Sobel算子,prewitt算子,Laplacian算子等,频域锐化中几种常见高通滤波器有巴特沃斯滤波器(BHPF),指数滤波器(EHPF),梯形滤波器(THPF)等。3图像锐化算法3.1微分法图像模糊的实质就是图像受到平均或积分运算,为实现图像的锐化,必须用它的反运算——微分。微分运算是求信号的变化率,有加强高频分量的作用,从而使图像轮廓清晰。3.1.1一阶微分图像锐化这是空间域锐化算法中比较常见的一种,计算公式为:𝑓′(𝑥,𝑦)=𝜕𝑓𝜕𝑥+𝜕𝑓𝜕𝑦(3.1)离散化之后的差分方程:𝛥𝑓(𝑖,𝑗)=[𝑓(𝑖+1,𝑗)−𝑓(𝑖,𝑗)]+[𝑓(𝑖,𝑗+1)−𝑓(𝑖,𝑗)](3.2)单方向一阶微分锐化:单方向的一阶锐化是指对某个特定方向上的边缘信息进行增强,因为图像为水平垂直两个方向组成,所以单方向锐化包括水平方向和垂直方向的锐化,这种锐化算法需要进行后处理,以解决像素值为负的问题。处理方法一:整体加一个正整数,以保证所有的像素值均为正。结果:获得类似浮雕效果。方法二:将所有像素值取绝对值。结果:获得对边缘的有方向提取。无方向一阶微分锐化:单方向一阶锐化处理结果对于人工设计制造的具有矩形特征五题(如:楼房、车辆等)的边缘提取很有效,但对不规则形状(如:树木)的边缘提取存在信息的缺损,而无方向的锐化算法对边缘的方向没有选择。Roberts算子:Roberts边缘算子是一个2x2的模板,是一种利用局部差分算子寻找边缘的算子,他采用对角线方向相邻两象素之差近似梯度幅值检测边缘。检测垂直边缘的效果好于斜向边缘,定位精度高,但其对噪声敏感,无法抑制噪声的影响。差分公式:𝑔(𝑖,𝑗)=|𝑓(𝑖+1,𝑗+1)−𝑓(𝑖,𝑗)|+|𝑓(𝑖+1,𝑗)−𝑓(𝑖,𝑗+1)(3.3)对应的卷积算子为:𝑓𝑥:[100−1],𝑓𝑦:[01−10](3.4)利用Roberts算子对图像111.jpg进行边缘检测,程序代码如下:ima=imread('C:\Users\iilii\Desktop\111.jpg');[H,W]=size(ima);F=double(ima);G=F;fori=1:H-1forj=1:W-1G(i,j)=abs(F(i,j)-F(i+1,j+1))+abs(F(i+1,j)-F(i,j+1));end;end;subplot(1,2,1);imshow(ima);title('原图');subplot(1,2,2);imshow(uint8(G));title('Roberts处理后');运行结果如下:图3.1Roberts算子锐化效果图由实验可以看出,用Roberts算子,以求得梯度,方法简单。其缺点是对噪声较敏感,常用于不含噪声的图像边缘点检测。Sobel算子:在边缘检测中,常用的一种模板是Sobel算子。Sobel算子同样使噪声、条纹等得到增强,但它不像普通梯度算子那样用两个像素之差值,而用两列或两行加权和之差值,这由于引入了平均因素,因而对图像中的随机噪声有一定平滑作用,而它又是相隔两行或两列之差分,故边缘两侧的元素得到了增强,故边缘显得粗而亮。计算公式:𝑔(𝑖,𝑗)=[𝑑𝑥2(𝑖,𝑗)+𝑑𝑦2(𝑖,𝑗)]12(3.5)x方向算子为[−1−2−1000121],y方向算子为[−101−202−101]。利用Sobel算法对图像111.jpg进行边缘检测,程序代码如下:ima=imread('C:\Users\iilii\Desktop\111.jpg');[H,W]=size(ima);F=double(ima);G=F;fori=2:H-1forj=2:W-1G(i,j)=abs(F(i-1,j+1)-F(i-1,j-1)+2*F(i,j+1)-2*F(i,j-1)+F(i+1,j+1)-F(i+1,j-1))+abs(F(i-1,j-1)-F(i+1,j-1)+2*F(i-1,j)-2*F(i+1,j)+F(i-1,j+1)-F(i+1,j+1));end;end;subplot(1,2,1);imshow(ima);title('原图');subplot(1,2,2);imshow(uint8(G));title('Sobel处理后');运行结果如下:图3.2Sobel算子锐化效果图Sobel算子在检测边缘点的同时具有抑制噪声的能力,检测出的边缘宽度至少为二像素。由于它是先平均后差分,平均时会丢失一些细节信息,但由于Sobel算子的加权作用,使边缘的模糊程度只是有点低。Prewitt算子:Prewitt算子是利用像素点上下、左右邻点的灰度差,在边缘处达到极值检测边缘,去掉部分伪边缘,对噪声具有平滑作用。其原理是在图像空间利用两个方向模板与图像进行邻域卷积来完成的,这两个方向模板一个检测水平边缘,一个检测垂直边缘。计算公式:𝑔(𝑖,𝑗)=[𝑑𝑥2(𝑖,𝑗)+𝑑𝑦2(𝑖,𝑗)]12(3.6)x方向算子为[−1−11000111],y方向算子为[−101−101−101]。利用Priwitt算子对图像111.jpg进行边缘检测,程序代码如下:ima=imread('C:\Users\iilii\Desktop\111.jpg');[H,W]=size(ima);F=double(ima);G=F;fori=2:H-1forj=2:W-1G(i,j)=abs(F(i-1,j+1)-F(i-1,j-1)+F(i,j+1)-F(i,j-1)+F(i+1,j+1)-F(i+1,j-1))+abs(F(i+1,j-1)-F(i-1,j-1)+F(i+1,j)-F(i-1,j)+F(i+1,j+1)-F(i-1,j+1));end;end;subplot(1,2,1);imshow(ima);title('原图');subplot(1,2,2);imshow(uint8(G));title('Prewitt处理后');运行结果如下:图3.3Priwitt算法锐化效果图Priwitt算法和Sobel算法类似,Priwitt算法有一定的抗干扰性质,图像效果较干净,但边缘的模糊程度要稍高于Sobel算法。一阶锐化几种方法效果比较:1.单方向锐化经过后处理之后,也可以对边界进行增强。2.Roberts算子的模板为2*2,提取出的信息较弱。3.Sobel算子和Prewitt算子一样,都在检测边缘点的同时具有抑制噪声的能力,检测出的边缘宽至少为二像素,由于它们都是先平均后差分,平均时会丢失一些细节信息,使边缘有一定的模糊。3.1.2二阶微分图像锐化因为有些图像景物细节的灰度变化特性,一阶微分的描述不是很明确,为此采用二阶微分能够获得更加丰富的景物细节。算法方程:∇2𝑓=4𝑓(𝑖,𝑗)−𝑓(𝑖+1,𝑗)−𝑓(𝑖−1,𝑗)−𝑓(𝑖,𝑗+1)−𝑓(𝑖,𝑗−1)(3.7)Laplacian算子:Laplacian算子是一种各向同性的二阶导数算子,在只对边缘位置考虑而不考虑其周围的象素灰度差值时比较合适。Laplacian算子一般只适用于无噪声图像,因为Laplacian算子对孤立象素的响应要比对边缘或线的响应要更强烈。存在噪声情况下,使用Laplacian算子检测边缘之前需要先进行低通滤波。由𝑓=4𝑓(𝑖,𝑗)−𝑓(𝑖+1,𝑗)−𝑓(𝑖−1,𝑗)−𝑓(𝑖,𝑗+1)−𝑓(𝑖,𝑗−1)写成模板系数形式:𝐻1=[0−10−14−10−10]。用Laplacian算法对图像111.jgp进行锐化处理,程序代码如下:ima=imread('C:\Users\iilii\Desktop\111.jpg');[H,W]=size(ima);F=double(ima);G=F;fori=2:H-1forj=2:W-1G(i,j)=4*F(i,j)-[F(i+1,j)+F(i-1,j)+F(i,j+1)+F(i,j-1)];end;end;subplot(1,2,1);imshow(ima);title('原图');subplot(1,2,2);imshow(uint8(G));title('锐化处理后的图');运行结果如下:图3.4Laplacian锐化处理的效果图以下是对加了高斯噪声的图像进行Laplacian锐化和Sobel锐化的程序:ima=imread('E:\sharpen\lena.jpg');ima1=imnoise(ima,'salt&pepper',0.003);ima2=imnoise(ima,'gaussian');[H,W]=s