图像增强图像增强的定义
图像增强是指按特定的需要突出⼀幅图像中的某些信息,同时削弱或去除某些不需要的信息的处理⽅法,也是提⾼图像质量的过程[9]。图像增强的⽬的是使图像的某些特性⽅⾯更加鲜明、突出,使处理后的图像更适合⼈眼视觉特性或机器分析,以便于实现对图像的更⾼级的处理和分析。图像增强的过程往往也是⼀个⽭盾的过程:图像增强希望既去除噪声⼜增强边缘。但是,增强边缘的同时会同时增强噪声,⽽滤去噪声⼜会使边缘在⼀定程度上模糊,因此,在图像增强的时候,往往是将这两部分进⾏折中,找到⼀个好的代价函数达到需要的增强⽬的[10]。传统的图像增强算法在确定转换函数时常是基于整个图像的统计量,如:ST 转换,直⽅图均衡,中值滤波,微分锐化,⾼通滤波等等。这样对应于某些局部区域的细节在计算整幅图的变换时其影响因为其值较⼩⽽常常被忽略掉,从⽽局部区域的增强效果常常不够理想,噪声滤波和边缘增强这两者的⽭盾较难得到解决。
常⽤的图像增强⽅法
图像增强可分成两⼤类:空间域法和频率域法。基于空间域的算法处理时直接对图像灰度级做运算;基于频率域的算法是在图像的某种变换域内对图像的变换系数值进⾏某种修正,是⼀种间接增强的算法。
基于空间域的算法分为点运算算法和邻域去噪算法。点运算算法即灰度级校正、灰度变换和直⽅图修正等,⽬的或使图像成像均匀,或扩⼤图像动态范围,扩展对⽐度。邻域增强算法分为图像平滑和锐化两种。平滑⼀般⽤于消除图像噪声,但是也容易引起边缘的模糊。常⽤算法有均值滤波、中值滤波。锐化的⽬的在于突出物体的边缘轮廓,便于⽬标识别。常⽤算法有梯度法、算⼦、⾼通滤波、掩模匹配法、统计差值法等。
基于频率域的算法把图像看成⼀种⼆维信号,对其进⾏基于⼆维傅⾥叶变换的信号增强。采⽤低通滤波(即只让低频信号通过)法,可去掉图中的噪声;采⽤⾼通滤波法,则可增强边缘等⾼频信号,使模糊的图⽚变得清晰。
图像增强的⽅法是通过⼀定⼿段对原图像附加⼀些信息或变换数据,有选择地突出图像中感兴趣的特征或者抑制(掩盖)图像中某些不需要的特征,使图像与视觉响应特性相匹配。在图像增强过程中,不分析图像降质的原因,处理后的图像不⼀定逼近原始图像。
彩⾊图像灰度图像处理对象局部处理全局处理处理策略频率域模板处理(滤波)点处理(变换)空间域处理⽅法图像增强
题⽬要求对图像增强不包括去噪,因此在本⽂中只考虑图像变换、灰度变换、直⽅图变换和锐化这四种⽅法。图像增强原理
1、图像变换是指图像的⼆维正交变换,它在图像增强、复原、编码等⽅⾯有着⼴泛的应运。如傅⽴叶变换后平均值正⽐于图像灰度的平均值,⾼频分量则表明了图像中⽬标边缘的强度和⽅向,利⽤这些性质可以从图像中抽取出特征;⼜如在变换域中,图像能量往往集中在少数项上,或者说能量主要集中在低频分量上,这时对低频成分分配较多的⽐特数,对⾼频成分分配较少的⽐特数,即可实现图像数据的压缩编码。
2、灰度变换可使图像动态范围增⼤,对⽐度得到扩展,使图像清晰、特征明显,是图像增强的重要⼿段之⼀。它主要利⽤点运算来修正像素灰度,由输⼊像素点的灰度值确定相应输出点的灰度值,是⼀种基于图像变换的操作。灰度变换不改变图像内的空间关系,除了灰度级的改变是根据某种特定的灰度变换函数进⾏之外,可以看作是“从像素到像素”的复制操作。
3、图像的灰度直⽅图是反映⼀幅图像的灰度级与出现这种灰度级的概率之间的关系的图形。直⽅图反应了图像的整体灰度分布情况,对于暗⾊图像,直⽅图的组成集中在灰度级低(暗)的⼀侧,相反,明亮图像的直⽅图则倾向于灰度级⾼的⼀侧。由于图像的视觉效果不好或者特殊需要,常常要对图像的灰度进⾏修正,以达到理想的效果,即对原始图像的直⽅图进⾏转换。4、图像平滑往往使图像中的边界、轮廓变得模糊,为了减少这类不利效果的影响,这就需要利⽤图像锐化技术,使图像边缘变得清晰。图像锐化处理的⽬的是为了使图像的边缘、轮廓线以及图像的细节变得清晰,经过平滑的图像变得模糊的根本原因是图像受到了平均或积分运算,因此可以对其进⾏逆运算(如微分运算)就可以使图像变得清晰。从频率域来考虑,图像模糊的实质是因为其⾼频分量被衰减,因此可以⽤⾼通滤波器来使图像清晰。为了要把图像中间任何⽅向伸展的边缘和轮廓变得清晰,我们希望对图像的某种运算是各向同性的。图像增强流程图
实例分析
根据项⽬要求,以下进⾏灰度变换、直⽅图变换和锐化这三种图像增强⽅法的分析。1、灰度线性变换
为了突出图像中感兴趣的⽬标或灰度区间,相对抑制那些不感兴趣的灰度区间,可采⽤分段线性变换,把0-255整个灰度值区间分为若⼲线段,每⼀个直线段都对应⼀个局部的线性变换关系,常⽤的是三段线性变换⽅法。
以下是在MATLAB中进⾏灰度线性变换的处理结果:
上图左边是⽤到的原是彩⾊图⽚,右边是该彩⾊图⽚的灰度图像。
从上图可以看出原始图像动态范围较⼩,整体较暗,反映在直⽅图上像素主要集中在低灰度的⼀侧。
线性变换图像[0.01 0.3]的动态范围较⼤,整体明暗对⽐较强,图像变亮,可以看到更多的细节反映在直⽅图上像素分布较平均。
线性变换图像[0.3 0.7]的动态范围更⼤,明暗对⽐更强,图像与上⼀张变换图像相⽐,只突出整幅图⽚最亮的区域,即图⽚中的云彩部分的细节。
优势:可以充分利⽤图像中的亮度信息,明显改善图像质量,是⼀种常⽤的图像增强算法。
不⾜:对于受噪声影响明显的图像,该算法增强效果不明显。即不能有效地抑制噪声。⽽且,仅仅利⽤了图像中的局部信息。2、直⽅图均衡化直⽅图均衡化过程如下:
(1)计算原图像的灰度直⽅图P r(r k);
(2)计算原图像的灰度累积分布函数ks,进⼀步求出灰度变换表;(3)根据灰度变换表,将原图像各灰度级映射为新的灰度级。以下是在MATLAB中进⾏图像直⽅图均衡的处理结果:
从直⽅图统计可以看出,原始图的灰度范围⼤约是0到100之间,灰度分布的范围⽐较狭窄,所以整体上看对⽐度⽐较差,⽽直⽅图均衡化后,灰度⼏乎是均匀的分布在0到255的范围内,图像明暗分明,对⽐度很⼤,图像⽐较清晰明亮,很好的改善了原始图的视觉效果。
优势:能够使得处理后图像的概率密度函数近似服从均匀分布,其结果扩张了像素值的动态范围,是⼀种常⽤的图像增强算法。
不⾜:不能抑制噪声。3、锐化
图像锐化处理的作⽤是使灰度反差增强,从⽽使模糊图像变得更加清晰。图像模糊的实质就是图像受到平均运算或积分运算,因此可以对图像进⾏逆运算,如微分运算以突出图像细节使图像变得更为清晰。
由于拉普拉斯是⼀种微分算⼦,它的应⽤可增强图像中灰度突变的区域,减弱灰度的慢变化区域。因此,锐化处理可选择拉普拉斯算⼦对原图像进⾏处理产⽣描述灰度突变的图像,再将拉普拉斯图像与原始图像叠加⽽产⽣锐化图像。拉普拉斯锐化的基本⽅法可以由下式表⽰
这种简单的锐化⽅法既可以产⽣拉普拉斯锐化处理的效果,同时⼜能保留背景信息:将
原始图像叠加到拉普拉斯变换的处理结果中去,可以使图像中的各灰度值得到保留、灰度突变处的对⽐度得到增强,最终结果是在保留图像背景的前提下,突现出图像中⼩的细节。
由于上⾯⽤到的图⽚锐化后效果不明显,很勉强只分辨出⾬伞的轮廓因此在下⾯分析中换了⼀张图⽚。以下是在MATLAB中
进⾏图像锐化的处理结果:原始灰度图像
拉普拉斯锐化滤波图像
拉普拉斯锐化滤波结果
⽐较原始模糊图像和经过拉⽒算⼦运算的图像,可以发现,图像模糊的部分得到了锐化,特别是模糊的边缘部分得到了增强,边界更加明显。特别明显的是原图的最下⾯左右各有⼀⾏很模糊的⽔印,锐化后⾮常明显。但是,图像显⽰清楚的地⽅,经过滤波发⽣了失真,这也是拉⽒算⼦增强的⼀⼤缺点。总结
图像增强,拟⼈说法是给图像“化妆”,是按照特定的需要有选择的突出图像中的某些信息,削弱或去除某些不需要的信息的处理⽅法。数字图像增强技术是数字图像处理的基本技术,图像增强的⽬的是突出图像中⼈或者机器感兴趣的特征部分,为后续的图像识别、理解、输出显⽰等服务。
图像增强的⽅法有很多种,针对不对图像的情况运⽤不同的增强技术,使图像更容易让⼈识别、更清晰,是本课题主要的研究⽬的。对⽐度增强法适合于对⽐度较低的图像,通过线性和⾮线性的变化,修改每⼀个像素的灰度,从⽽改变图像的动态范围达到图像增强的⽬的。直⽅图均衡化针对在低值灰度区间上频率较⼤、图像中较暗区域中细节看不清楚的图像,有较好的增强效果。但是上述两种⽅法的缺点都是不能抑制噪声,对于图像中呈孤⽴分散分布的噪声点,可以⽤平滑的⽅式去除,其中线性滤波实现简单,去噪效果明显,但是去噪的同时会导致结果图像边缘位置的改变和细节模糊甚⾄丢失;⾮线性滤波能够较好的保持图
像边缘位置和细节,但是算法的实现相对线性滤波⽐较困难。平滑处理的时候经常会使图像的边缘变的模糊,图像锐化处理的作⽤就是使灰度反差增强,从⽽使模糊图像变得更加清晰。
最后,图像处理是⾯向对象和问题的⼀门学科。图像处理的研究,也就是针对某⼀问题最多也就是某⼀类型问题的算法的研究。图像处理⼴阔的领域中,还有很多需要研究和探索的领域,例如:找到⼀种客观的评价标准,该标准能对图像能够客观的正确的评价⼀幅图像的好与坏;如何对图像进⾏分类,以便能在成千上万的图像库中实现检索等等。参考⽂献
1、《Digital Image Processing·Third Edition》·Rafael C.Gonzalez·Richard E.Woods·培⽣教育出版集团(PearsonEducation)
2、王耀南·《计算机图像处理与识别技术》·北京: ⾼等教育出版社, 20013、夏德深, 傅德胜.《计算机图像处理及应⽤》南京:东南⼤学出版社, 2004.4、张娜. 《图像增强技术的研究》. 计算机仿真, 2007, 24(1): 02-04.
5、孙蕾, 李丙春. 《图像增强算法与评价⽅法研究》. 计算机⼯程, 2007,33(08): 21-236、余成波. 《数字图像处理及MA TLAB实现.》重庆:重庆⼤学出版社, 2003附录代码⼀:
% 灰度线性变换,利⽤imadjust函数对图像局部灰度范围进⾏扩展% MA TLAB 程序实现如下:I=imread('9.jpg');%显⽰原始图像imshow(I);title('原始图像');
I1=rgb2gray(I);%显⽰原始图像的灰度图像
subplot(2,3,1),imshow(I1);title('灰度图像');axis on;
subplot(2,3,4),imhist(I1);%画出灰度直⽅图title('灰度图像直⽅图');axis on;
J=imadjust(I1,[0.01 0.3],[]);%局部拉伸,把[0.1 0.5]内的灰度拉伸为[0 1] subplot(2,3,2),imshow(J);title('线性变换图像[0.01 0.3]');axis on;
subplot(2,3,5),imhist(J);%画出灰度直⽅图title('线性变换图像[0.01 0.3]直⽅图');axis on;
K=imadjust(I1,[0.3 0.7],[]); %局部拉伸,把[0.3 0.7]内的灰度拉伸为[0 1] subplot(2,3,3),imshow(K);title('线性变换图像[0.3 0.7]');axis on;
subplot(2,3,6),imhist(K);%画出灰度直⽅图title('线性变换图像[0.3 0.7]直⽅图');axis on;代码⼆:%直⽅图均衡化I=imread('9.jpg');
I1=rgb2gray(I);%显⽰原始图像的灰度图像subplot(2,2,1),imshow(I1);title('灰度图像');axis on;
subplot(2,2,3),imhist(I1);%画出灰度直⽅图title('灰度图像直⽅图');
J=histeq(I1,64);%对图像进⾏均衡化处理,返回有64级灰度的图像Jsubplot(2,2,2),imshow(J);title('均衡化处理后图像');axis on;
subplot(2,2,4),imhist(J);%画出灰度直⽅图title('均衡化处理后图像直⽅图');axis on;代码三:
%锐化
I=imread('1.jpg');
I1=rgb2gray(I);%显⽰原始图像的灰度图像imshow(I1);
J=double(I1);%将图像矩阵转化为double类型K=size(J);
L=zeros(K(1,1),K(1,2));for x=2:K(1,1)-1for y=2:K(1,2)-1
L(x,y)=(-J(x+1,y)-J(x-1,y)-J(x,y+1)-J(x,y-1)+4*J(x,y));end
end %⽤拉⽒算⼦对图像进⾏滤波,这个过程相当于运⽤了⼀个3*3的掩膜[0,-1,0;-1,4,-1;0,-1,0]imshow(L) %显⽰拉普拉斯锐化滤波图像
因篇幅问题不能全部显示,请点此查看更多更全内容