结合风驱动优化的低复杂度图像增强方法
2021-10-15许剑锋
赵 靖 许剑锋
1(三江学院计算机科学与工程学院 江苏 南京 210012) 2(北京交通大学电气工程学院 北京 100044)
0 引 言
图像增强是图像处理中的一个重要技术,由于日常生活中拍摄到的图像受到环境、光照、雾天的影响,使得拍摄到的图像亮度低、对比度不强[1-5]。通过图像增强的方法可以提高图像的对比度,扩大图像中不同物体的清晰度,使得图像中各物体更加清晰。
空域处理和变换域处理是现有的图像增强的两大方法。空域处理的增强方法主要包括伽马校正、直方图均衡化、反锐化掩膜、灰度变换等。如Huang等[6]提出了一种自适应伽马校正增强图像对比度的方法,该方法对图像的灰度直接进行处理,选取合适的伽马参数值,提高图像的对比度。Mahamdioua等[7]提出了一种均值方差伽马校正图像增强方法,该方法将图像的均值与方差联合伽马校正对图像进行对比度提升,取得较好的效果。Raju等[8]利用直方图分析,并对直方图进行均衡化来提高图像的对比度。顾明等[9]提出了基于颜色空间转换的交通图像增强算法,该算法先对RGB三个通道进行对比度拉伸,然后再转换颜色空间到HSV对V分量进行对比度自适应直方图均衡化操作,取得了良好的效果。基于变换域处理的方法一般是先把图像的空域信息经过一系列的变换到频域空间对图像的高频和低频信息进行处理。如Loza等[10]提出了利用小波变换,根据小波系数在频域增强图像的方法。曹风云等[11]利用以原始图像的显著图为引导,结合照度和色度图,作为图像融合的权重图,将生成的权重系数对两幅图进行相加,达到图像增强的目的。还有基于Retinex增强图像对比度的方法如多尺度Retinex方法、基于双边滤波的Retinex方法、基于引导滤波的Retinex方法等[12-15],能够有效地增强图像的细节对比度,改善图像性能。但基于变换域处理的方法算法复杂度高,计算量大。还有一些学者针对图像增强方法中参数的选择问题,将群智能算法如粒子群算法、人工蜂群算法等,引入图像增强中增强了图像的自适应性[16-17]。
本文提出一种新的图像增强算法,利用简单函数实现图像的增强,该算法利用四个简单函数(双曲正弦函数、伽马函数、标准Sigmoid函数、对比度拉伸函数)对图像进行对比增强,针对其中伽马函数的参数以及对比度拉伸函数的动态因子参数的选择问题,利用风驱动算法对这两个参数进行寻优,提高算法的自适应性。
1 图像增强流程
本文图像对比度的增强分为四个步骤,流程如图1所示。
图1 图像增强流程
令I表示一幅图像,图像的中的像素用x表示,首先利用双曲正弦函数对图像的对比度进行简单的调整:
(1)
式中:s为经过调整后的图像。经过该函数调整后图像动态范围增大,对比度有一定的改善,然后对图像利用伽马函数进行校正:
y=sλ
(2)
式中:y为输出图像;λ的值能够提高图像的动态范围,调整整幅图像的对比度。然后再对图像利用标准Sigmoid函数进行校正,使像素映射为一个S型分布提高图像对比度,校正数学表达式如下:
(3)
式中:w为输出图像。最后利用对比度拉伸函数,提升整幅图像的对比度,对比度拉伸的过程如式(4)-式(8)所示,设图像的尺寸为m×n。求取图像平均值:
(4)
求取图像标准差值:
(5)
以平均值和标准差值构造对比度动态范围:
wmin=u-β×std
(6)
wmax=u+β×std
(7)
进行对比度拉伸:
(8)
式中:u、std为图像的均值和标准差;β为动态调整因子;f为最终的输出图像。由上述过程可以看到,需要调整的参数为λ和β。本文选用风驱动算法针对这两个值进行寻优,得到最优参数值。
2 结合风驱动优化的图像增强方法
为了解决λ和β的参数选择的问题,本文引入风驱动搜索算法对这两个值进行寻优,改善人为选择参数的不确定性。
2.1 适应度函数
本文利用图像信息熵和图像的标准差构造适应度函数,图像的熵值越大,表明图像的信息越多,图像的标准差越大表明图像越丰富,对比度越大。图像的标准差用E1表示,计算公式如式(5)所示,图像信息熵用E2表示,计算公式如下:
(9)
式中:P(i)表示灰度值为i的像素占所有像素的比例;L表示图像的灰度级数目,设为256。为了实现图像的自适应增强,定义适应度函数为:
fitness=a×E1+E2
(10)
式中:a为一个平衡标准差和信息熵的平衡因子,经多次实验分析,本文中a的取值为0.01。
2.2 风驱动搜索算法
风驱动搜索算法(WDO)[18]是一种自然启发的全局优化算法。其原理是模拟自然界中风的流动,即空气之间存在压差促使空气流动,最终达到平衡的过程。空气粒子达到平衡的最终位置值即为每个空气粒子的最优解。风驱动搜索算法的原理如下。
一个由N个空气单元、D维搜索空间组成的空气种群可以表示为:
(11)
每个空气粒子p有两个特征,分别为空气粒子的速度和空气粒子的位置。空气粒子的速度矩阵U和位置矩阵X分别为:
(12)
式中:1≤k≤T,T为最大迭代次数。
风驱动搜索算法将影响大气运动的力(摩擦力、气压梯度压力、重力和科氏力)代入牛顿第二定律结合理想气体状态方程得出速度更新方程。空气粒子速度和位置的更新公式为:
(13)
(14)
2.3 结合风驱动优化的图像增强算法流程
结合风驱动优化的图像增强算法流程如图2所示。具体步骤如下:
(1) 输入待增强图像,设定参数个数、随机初始化空气粒子数量、最大迭代步数,风驱动参数RT、g、c。
(2) 将随机产生的λ和β的值代入图像增强流程,得到增强图像,并根据适应度函数计算适应度值。
(3) 对每个空气粒子位置与其个体历史最优位置比较,记录个体历史最优位置。
(4) 对每个空气粒子与总体历史最佳位置比较,记录总体最优位置。
(5) 根据式(13)、式(14)对空气粒子速度和位置进行更新。
(6) 判断是否达到结束条件,如果达到则结束,否则继续循环。
(7) 将获得的最优参数代入图像增强流程得到最终增强图像。
图2 算法流程
3 实验及结果分析
为了验证本文算法的可行性,本文算法在MATLAB 2014a,Windows 7、处理器主频为2.2 GHz、内存2 GB的测试平台上运行。本文选用4幅待增强的彩色图像如图3所示,各算法的实验结果如图4-图7所示。为了定量地分析各算法的好坏,本文选用图像信息熵和图像标准差作为算法的评价标准。其中多尺度Retinex算法的高斯环绕尺度分别为15、80、200;引导滤波Retinex算法的参数为20、0.01;本文算法的风驱动算法参数为:空气单元数量为30,RT的值为3,g的值为0.3,c的值为0.42,α的值为0.4,最大迭代次数为30,粒子最大速度vmax为0.5,λ和β的参数的搜索范围为[0, 3]。表1为各图的实验数据,图8为实验数据的曲线图。
图5 多尺度Retinex算法结果
图7 本文算法结果
表1 实验结果数据
由图3-图7可以看出,4种算法均能对图像起到增强效果。从图像1的4种算法的实验结果来看,直方图均衡化后汽车尾灯和红灯的颜色均受到了一定的削弱,其他三种算法直观上看起来均比较清晰,色彩均匀。但是本文算法相对于多尺度Retinex算法和引导滤波Retinex算法,图像看起来更加明亮、清晰。从图像2的4种算法实验结果来看,直方图均衡化后的图片相对其他算法偏暗,其中多尺度Retinex算法的实验结果最清晰,但是图像出现明显的色彩失真和光晕,而引导滤波Retinex算法色彩均比较均匀,本文算法相对引导滤波Retinex算法更加清晰。从图像3的4种算法实验结果来看,直观上,4种算法结果差不多。从图像4夜间图像的实验结果来看,4种算法均能起到图像增强的作用,其中多尺度Retinex算法和引导滤波Retinex算法处理后的图像比较接近,但图像看起来没有本文算法和直方图均衡后的图像清晰,同时其他三种算法增强后图像的色彩失真比较严重,而本文算法的颜色保留程度好。从表1中的数据和图8的实验数据曲线定量分析来看,直方图均衡化后的图像信息熵最小,甚至有时会降低原图的图像信息熵,本文算法处理后的图像信息熵最大,其他两种算法次之。从图像标准差来看,4种算法均使图像的标准差增大,对比度增强。直方图均衡化处理后的标准差最大,本文算法次之,其他算法的标准差均比这两种算法低。综合来看,本文算法既提高了原图像的图像信息熵,又提高了图像的标准差,相对其他3种算法具有明显的优势,而且经过本文算法处理后的图像,直观上来看也比较清晰,对比度较好。
4 结 语
图像增强是图像处理的一个重要手段,本文提出一种结合风驱动优化的低复杂图像增强方法,该方法的图像增强流程简单,容易计算,复杂度低。该方法利用双曲正弦函数、伽马函数、标准Sigmoid函数和对比拉伸函数作为图像增强的主要步骤,并且融合风驱动优化算法对伽马函数参数和对比度拉伸参数进行智能寻优,提高算法的自适应性。将本文算法与传统的直方图均衡算法、多尺度Retinex算法和引导滤波Retinex算法进行比较,实验结果表明,本文算法相对其他算法图像增强效果较好,对比度较好,具有一定的实用性。