摘要:将微分进化算法应用到图像的增强处理中,利用微分进化算法的快速搜索能力,对给定的测试图像自适应地变异、交叉、搜索,直至最终确定Beta函数的最佳参数α,β值,从而实现图像的自适应增强。最终通过软件仿真实验验证了上述方法的有效性。
关键词:图象增强;微分进化算法;变异;交叉;自适应增强
中图分类号:TP312文献标识码:A文章编号:1672-7800(2011)01-0085-03
作者简介:朱作付(1968-),男, 江苏徐州人,硕士,徐州工业职业技术学院副教授,研究方向为软件工程、图像处理;龙浩(1984-),男,江苏徐州人,徐州工业职业技术学院硕士研究生,研究方向为机器视觉,图像识别。1图像增强技术
图像增强是指对图像的某些特征,如轮廓、对比度、边缘等进行强调或突显,以便于检测或进一步地分析与处理。增强将不增加图像数据中的相关信息,但将所选择特征的动态范围进行适当的扩充,从而使这些特征检测或识别更加容易,为后续分析检测与处理打下良好的基础。
1.1图像增强的常用方法
图像增强方法主要分为点运算、空域滤波、频域滤波3类。点运算包括对比度展
宽、直方图模型化、噪声限幅及图像差影技术。空域滤波包括低通滤波、中值滤波、高通滤波(图像锐化)。频域滤波包括同态滤波、多尺度多分辨率应用于图像增强。
1.2微分进化算法
1.2.1算法介绍
微分进化(Differential Evolution,DE)最早是由Price和Storn提出的,与其它的进化算法进行比较,DE算法具有很强的空间搜索能力、且易于实现、容易理解。DE算法是一种新颖的搜索算法,它首先随机的在搜索空间内产生初始群体,然后计算任意两个成员间的差向量,并将该差向量添加到第3个成员上,通过这种方法来形成新的个体。如果发现新个体的适应度值比原来成员的更优,那么就用生成个体代替原个体。
DE算法有3个主要操作:变异(Mutation)、交叉(Crossover)和选择(Selection),但是这些进化操作的实现和遗传算法(GA)等其它进化算法是完全不同的。设群体规模为NP,向量的维度为D,那么群体中的目标向量可以用xi=[xi1,xi2,…,xiD](i=1,…,NP)表示。对于任意一个目标向量xi而言,按公式(1)生成变异向量vi:vi=xr1+F×(xr2-xr3),i=1,…,NP(1) 其中xr1,xr2,xr3是群体中随机选择的3个个体,并且r1≠r2≠r3≠i。F是一个介于[0, 2]间的实型常量因子,用于控制差向量(xr1-xr2)的影响,一般称为放缩因子。显然xr1和xr2之间的差向量越小,扰动也就越小,这意味着如果群体靠近优化值,扰动会自动减小。向量vi的生成如图1所示。
图1向量vi的生成
DE算法的交叉操作的目的是通过变异向量vi和目标向量xi的结合以提高变异向量的多样性。算法通过下面公式生成新的向量ui=[ui1,ui2,…,uiD]: ui=vij if randb ≤CR or j=randr
i=1,…,NP ,j=1,…,D
xij if randb > CR or j≠randr(2) 这里,randb是[0,l]间的随机数;CR是范围在[0,1]间的常数,称为交叉常量,CR的值越大,发生交叉的可能就越大,CR=0表示没有交叉;randr是在[1, D]随机选择的整数,它保证ui至少要从vi中获得一个元素,否则就不会有新的向量生成,群体也就不会发生变化,如图2所示:
图2DE的交叉过程示意图
DE算法中的选择操作是一种“贪婪”选择模式,当且仅当新的向量个体ui的适应度值比目标向量个体xi的更好时,ui才会被保留到下一代群体中。否则,目标向量个体xi仍然保留在原群体中,再一次作为下一代的父向量。
1.2.2参数设置
DE算法中主要的控制参数是NP(群体规模),F(放缩因子)和CR(交叉常数)。实验表明DE算法的收敛速度和优化能力与这些参数的选择紧密相关。
(1)群体规模:一般来说,群体规模越大,算法搜索能力就越强,但大的群体规模也需要大量的运算,因此NP大小推荐选取由问题空间决定的维度D的3到10倍。
(2)放缩因子:放缩因了F的选择应该不小于某一特定值,这样才能够有效的避免算法过早收敛。较大的F增加了从局部最优逃脱的可能性,然而,若F>1,算法的收敛速度会明显降低。对一个群体来说,当扰动大于两个成员间的距离时,收敛会更困难。经验表明,F最好在0.4和1.0之间选取,一个比较好的初始值是F = 0.6。
(3)交叉常量:交叉常量CR的值较大常常会加速收敛,一般情况下,交叉常量较好的选择是[0.3,0.9]之间,CR=0.5就是个不错的选择。
1.2.3算法流程
算法流程为:①初始化参数D, NP, F, CR;②在决策空间中随机生成初始群体P;③计算每个个体的适应度值;④随机选择三个不同的个体xr1,xr2,xr3(r1≠r2≠r3≠i);⑤进行变异操作:vi=xr1+F×(xr2-xr3),i=1,…,NP;⑥进行交叉操作;⑦进行选择操作:当新的向量个体ui的适应度值比目标向量个体xi更好时,保留ui到下一代群体中,否则,目标向量个体xi仍然保留在群体中,再一次作为下一代的父向量;⑧如果到达最大迭代次数或满足误差要求,退出,否则返回(3)。
2基于微分进化算法的图像增强技术的实现
由于图像增强是保证物体检测快速进行的基础,因此需要选用一个实时性和效果都非常好的增强算法。针对不同的系统的实际要求,很多算法都需要人为的确定参数和阈值。可以采用一种非完全Beta函数,它能完全覆盖图像增强的典型变换类型,但是要确定Beta函数参数仍然存在许多待解决的问题。本节提出一种能根据Beta函数自适用的进行图像增强的方法,利用微分进化算法的自适应搜索能力,自动地确定变换函数的参数值从而实现图像的自适应增强。
图像增强的目的就是改善图像的质量,也就是使指定的特征更加突出、恢复降质图像的细节等等。在降质图像中一个普遍的特征就是对比度降低,通常表现为偏亮、偏暗或灰度比较集中。低对比的降质图像可以通过拉伸动态的灰度直方图来实现增强,例如灰度等级的改变。使用ixy表示输入图像中像素点(x,y)的灰度级,最简单的比例变换为: Ixy=f(ixy) (3)其中I是输出的增强图像中像素点(x,y)的灰度值,f是线性或非线性的转换。对于灰度图像的4种通用的非线性转换如图3所示:
图3灰度非线性转换
图3中,横坐标为原图像的灰度,纵坐标为处理后图像的灰度,(a)类变换拉伸偏暗区域;(b)类变换拉伸较亮区域;(c)拉伸中间区域压缩两端区域的变换;(d)拉伸两端区域压缩中间区域的变换。通常为了实现增强不同类型的降质图像,需要不同类型的非线性变换。每一种都可以被一组参数所描述。在这个研究中,输入图像像素灰度级ixy首先被规格化到区间[0,1]并被重写成: ixy=imin+ T (imax-imin) ixy(4) 这里,imax和imin分别是ixy的最大值和最小值,T(0≤T≤1)对应图3所示的4种非线性转换的任何一种。
用归一化的非完全Beta函数来自动拟合图像增强的这4类变换曲线。该归一化的非完全Beta函数f( u)定义为: f(u)=B-1(α,β) ∫u0tα-1(1-t)β-1dt 0<α;β<10(5) 式中的B(α,β)均为Beta函数,其定义为:B(α,β)= ∫10tα-1(1-t)β-1dt(6)对应于不同的α,β值,归一化的非完全Beta函数f(u)具有相应图3的变换曲线。
首先利用上节所提出的微分进化算法自适应地搜索确定Beta函数最佳的α,β值,然后将各像素的灰度值代入Beta函数进行相应的图3的变换,从而得到理想的增强图像。具体过程描述如下:
假设原始图像像素点(x,y)的像素灰度级通过公式(4)记为ixy,(x,y)∈Ω,这里Ω为图像的定义域。增强后的图像记为Ixy。先对图像灰度值进行归一化处理,将其变换到[0,1]区间。gxy=ixy-iminimax-imin(7)式中,imax,imin分别为该图像灰度值的最大值和最小值。
定义非线性变换函数为f(u) (0≤u≤1),对归一化的原始图像进行变换得到Gxy=f(gxy),式中的0≤Gxy≤1。
利用微分进化算法相应地确定Beta函数f(u)的最佳参数值α,β。将增强变换后的图像Gxy反归一化处理,即假设输出图像的灰度值在[0,255]区间,于是有Ixy= 255Gxy,Ixy即为增强图像。
3实验结果与分析
在仿真中,采用了两组不同降质类型的灰度图像,程序执行了50次,设置种群大小为30个,进化迭代次数为600。结果表明提出的方法能够很有效地增强不同类型的降质图像。
图4单个个体的处理结果
图5多运动物体处理结果
在图4和图5中,a为原始图像,b为使用本节提出的方法增强后的图像。
图4中原始图像a的大小为320×320,它的对比度转低,并且一些细节较模糊,特别是围巾的纹理等细节不明显,视觉效果差,使用本节所提出的方法,能够克服上述的一些问题并且得到满意的图像效果,如图5(b)所示,视觉效果得到了很好地改善。从直方图上看,图像灰度范围分布的更均匀了,明暗灰度区域的分配更加合理。微分进化算法自动地找出非线性变换的函数曲线,求得的α和β的值分别先9.837、5.7912,从曲线可以得出,它符合图3中的c类,即拉伸中间区域压缩两端区域的变换,这与直方图的变化一致,原始图像整体对比度较低,拉伸中间区域压缩两端区域符合人的视觉感觉,增强后的效果明显改善。
图5中原始图像a的大小为320×256,整体灰度偏低,使用本节提出的方法得到的图像b,可以看出地面、椅子和衣服等细节的清晰度和对比度较原始图像都有明显改善,原始图像的灰度分布集中在较低区域,而增强后的图像的灰度分布均匀,灰度的前后变换基本和非线性变换曲线图3(a)类一致,即对图像的偏暗区域进行拉伸,α和β的值分别为5.9409,9.5704,非线性变换对图像的降质类型推理正确,增强后的图像视觉效果好,鲁棒性增强。
图像增强的质量很难评价,现在还没有通用的图像评价标准,常用峰值信噪比(PSNR)来讲行评价,然而峰值信噪比并没有反映人类视觉系统的误差。因此,本文中对实验结果用边缘保护指数和对比度提升指数进行评价,其定义如下:
(1)边缘保护指数EPI定义如下:
EPI=
∑(|ID(i,j)-ID(i+1,j)|+|ID(I,j)-ID(i,j+1)|) ∑(|IO(i,j)-IO(i+1,j)|+|IO(i,j)-IO(i,j+1)|),(i,j)∈Z
(8)
式(8)中IO表示原始图像,ID表示增强后的图像。
(2)对比度提升指数E的定为: E=CDCO,C=Gmax-GminGmax+Gmin(9)式(9)中Gmax和Gmin分别表示把图像分成3×3的小块后该块内图像灰度的最大值和最小值,C表示每个3×3小块的对比度,CD表示增强后的图像灰度均值,CO表示原始图像的灰度。
图6视频图像处理结果
实验结果如图6所示,评价指数比较如表1所示。其中图6(a、c)分别显示了原始图像和微分进化算法增强后的结果,从中可以看出增强后对比度明显提高,图像细节更加清晰,边缘特征更加突出。b、c则显示了基于小波变换和基于微分进化算法图像增强结果比较:基于小波的增强方法,增强出了一些图像细节,图像视觉效果也较原始图像有所改善,但增强效果不明显;而基于微分进化算法变换的自适应图像增强效果非常好,图像的细节、纹理、清晰度都较基于小波变换的增强结果有很大改善,对图像的后期分析处理很有帮助。实验中小波变换增强实验中用“sym4”小波,微分进化算法增强实验中,参数和的值分别为5.9409,9.5704。对于一幅256×256大小的图像,基于微分进化算法变换的自适应图像增强在Matlab 7.0软件中其运算时间大约为2秒钟,运算非常快。而从表1的客观评价标准中可以看出,无论是边缘保护指数还是对比度提升指数,基于微分进化算法的自适应方法相比于传统的基于小波变换的方法都有较大提升,这也从客观上说明了本节方法的优越性。
表1边缘保护指数(EPI )和对比度提升指数(E)的对比评价方法增强方法小波变换微分进化变换边缘保护指数(EPI )1.45671.9876对比度提升指数(E)0.76853.9804
4结束语
文章从保持图像信息完整性的角度出发,采用微分进化算法对图像进行增强,从实验结果可以看出,基于微分进化算法的图像增强方法具有明显的效果。和其它的进化算法相比,DE算法的性能突出,它的过程简单,鲁棒性好,收敛速度快,几乎每次运行都能找到最优解,而DE算法只有很少的参数需要设置,并且同样的参数设置可以用到许多的不同的问题中。利用微分进化算法的快速搜索能力,对给定的测试图像自适应地变异、搜索、直至最终确定变换函数的最佳参数α,β值。和穷举法相比,大大节约了求解的时间和计算的复杂度。因此,论文提出的图像增强方法具有一定的实用价值。
参考文献:
[1]何斌,马人朴,王运坚,等.Visual C++ 数字图像处理[M].北京:人民邮电出版社,2001.
[2]STORN R, PRICE K. Differential Evolution—a Simple and Efficient Adaptive Scheme for Global Optimization over Continuous Space[R]. International Computer Science Institute, Berlaey, 1995.
[3]TUBBS J D. A note on parametric image enhancement [J].Pattern Recognition,1997(6).
[4]唐明,马颂德,肖庆.基于模型的远红外序列图像自适应增强算法及其分析[J].计算机学报,2000(8).
[5]周激流,昌航.一种基于新型遗传算法的图像自适应增强算法的研究[J].计算机学报,2001(9).
[6]陈志坚,成培,李峰.基于小波变换的图像增强算法[J].长沙理工大学学报:自然科学版,2006(2).
[7]谢美华,王正明.图像分辨率增强的偏微分方程方法[J].遥感学报,2005(6).
(责任编辑:王钊)