杨 燕,李一菲,岳 辉
(兰州交通大学 电子与信息工程学院,甘肃 兰州 730070)
雾、霾是由大气中悬浮的气溶胶和固体颗粒等介质对光线吸收和散射作用而形成的一种自然现象[1]。该现象会导致计算机视觉系统捕捉到的户外图像严重降质,出现诸如细节丢失、色彩失真以及对比度下降等,这使得对图像的分析形成了一定的障碍[2]。因此,研究有效快速的图像去雾算法具有一定的实际应用价值和现实意义。
近年来,图像去雾技术取得了重大突破[3]。目前,针对不同的单幅图像去雾方法大体可以分为4类:图像复原、图像增强、图像融合以及机器学习方法[5]。目前较为主流的是基于图像复原的方法:Zhu等人[6]通过观察HSV颜色通道时,发现S分量和V分量的差值能近似估计图像的深度信息,在此基础上提出了颜色衰减先验去雾算法,该方法取得了一定的去雾效果,但因约束条件过多,导致算法时间复杂度较高。Wang等人[7]利用同一场景下的多幅图像统计出场景深度信息进而复原出无雾图像,虽然该方法取得了一定的去雾效果,但由于需要同一场景的多幅图像,因此在实际应用中有一定的局限性。He等人[8]提出了暗通道先验理论,利用先验知识解决了大气散射模型的病态问题,虽然该方法取得了显著去雾效果,但是对于包含大片天空区域的图像算法失效,同时复原图像在景深突变区域出现残雾,且由于使用Soft Matting方法,导致算法的时间复杂度增加。
针对上述问题,为了快速有效地复原出雾霾天气下的退化图像,本文提出了一种自适应线性透射率估计去雾方法,该方法利用线性变换约束有雾图像最小值通道近似估计无雾图像最小值通道操作;其次,利用有雾图像的混合通道得到自适应参数,结合自适应参数和线性变换模型估计出透射率,通过高斯函数衰减有雾图像最小值通道对大面积天空等明亮区域透射率进行补偿,可以解决透射率估计不足的问题,然后利用交叉双边滤波器消除透射率纹理效应,得到局部平滑,边缘保持良好的优化透射率;本文采用四叉树大气光策略估计大气光值,避免了由于全局大气光值估计不准确引起的误差;最后,结合大气散射模型复原出无雾图像。
在计算机视觉系统中,通常使用大气散射物理模型[9]描述在雾霾环境下的图像成像机制,具体表示如下:
I(x)=J(x)t(x)+A(1-t(x))
(1)
式中:I表示有雾图像;J表示清晰的无雾图像;t表示透射率;A表示大气光值。J(x)t(x)称为直接衰减项,表示场景反射光经过介质传输衰减后到达成像系统的部分;A(1-t(x))称为大气光项,描述环境光由于大气介质散射作用对观测点所接收到的光强影响。根据(1)式,可得透射率表达式:
(2)
已知在有雾图像中,大气光对图像成像的影响随着观测点到场景距离的增加而增大,且图像中雾浓度越高导致图像像素值越大。场景反射率β和透射率之间存在如下关系式[10]:
t(x)=e-βd(x)
(3)
式中:d表示场景深度。在彩色图像中,由于在色彩鲜艳的图像范围内,至少有一个颜色通道的反射系数非常小,基于此结论,对(2)式进行最小值操作:
(4)
式中:c表示有雾图像的RGB颜色通道。由于有雾条件下,雾浓度随着观测点到场景距离增加而增大,且雾浓度越大图像像素的亮度值越高。基于此结论,文献[11]提出一种假设关系,即有雾图像和无雾图像的最小值通道之间存在一种线性关系,将该线性关系用数学表达式表示为:
(5)
式中:a反映图像对比度,01。由于(5)式中含有2个未知数,是不可解方程,故提出用二次函数的分段区域求解:
(6)
为了有效快速地复原出雾霾天气下的退化图像,本文提出一种自适应线性传输去雾方法。该方法解决了线性传输模型中控制因子为定值这一问题,并且提出了用高斯函数补偿有雾图像中明亮区域的透射率,进一步提升了透射率估计的准确性。
在线性传输模型中,控制因子δ的值能直接影响复原效果,为了进一步说明δ值对图像复原效果的影响,图1展示了选取不同δ值本文算法所得不同实验结果。
图1 选取不同δ值时去雾效果Fig.1 Dehazing effects with differentδvalues
由图1可以看出,当有雾图像为景深变化平缓场景下的图像时,δ值较小时能获得去雾效果较好的复原图像。当有雾图像为包含天空区域且景深变化剧烈场景下的图像时,δ值在0.6能获得去雾效果较好的复原图像。基于此实验结果,通过对大量有雾图像的统计观察发现,δ值与图像景深存在相关关系。于是,提出一种包含景深信息的自适应δ值获取方式:由于有雾图像的最大值通道大致包含了有雾图像的深度信息,而为了进一步消除局部区域内白色物体对δ值的影响,并且同时保证局部区域内具有相同的δ值,本文选用最小滤波器作用于有雾图像的最大值通道,其数学表达式为:
(7)
式中,Ω=15。由于使用了最小值滤波,δ′(x)的边缘特征较为模糊,且伴有块状效应,为了解决这个问题,将δ′(x)和含有纹理细节及边缘特征的有雾图像最大值通道进行联合双边滤波得到含有深度信息的自适应调整参数δ(x),于是,将(6)式改写为:
(8)
根据以上所述,可将透射率进一步表示为:
(9)
(10)
(11)
(12)
联合双边滤波具有保持图像边缘、平滑细节和降低图像噪声等优点,本文采用联合双边滤波对透射率进行进一步优化,得到如图2所示的较为平滑的透射率图。
图2 透射率对比Fig.2 Transmission comparison
从图2中可知,相较于He等人[12]方法的透射率,本文所得透射率细节更丰富,在边缘处更平滑,并且对于天空区域透射率的估计更准确。
获得透射率精确估计以及利用四叉树算法求得大气光值后,根据下式来获得图像的复原:
(13)
式中,由于当透射率趋近于零时,会使(1)式中的衰减项J(x)t(x)也趋于零,导致J(x)可能出现噪声干扰,因此对透射t(x)率设定下限值t0,t0=0.1。
本文算法选用文献[6-8]中的经典图像进行了仿真实验,实验平台为Matlab(R2014a),运行环境为Windows7,计算机配置为Intel(R) Core(TM) i5-3210M CPU @ 2.50 GHz。为了进一步验证本文算法的有效性和实时性,本文从主观评价和客观评价两个方面进行实验对比,对比方法选用目前比较主流的去雾方法:He等人[12]的暗通道先验算法、Zhu等人[6]的颜色衰减算法、Meng等人[13]的边界约束算法以及Sun等人[14]的局部大气光遮罩估计算法。经典图像选取不同场景下的有雾图像:图从左至右分别是包含明亮区域的有雾场景图像、景深变化剧烈的有雾场景图像、景深变化平缓的有雾场景图像以及包含天空区域的有雾场景图像。
视觉分析是从人眼的主观意识出发,可以直观看出图像复原效果的好坏。图3为原始的有雾图像,场景中的对比度较低,色彩淡化,细节模糊。图3(b)至图3(f)是不同方法的实验结果:图3(b)是He等人的暗通道先验去雾方法的复原结果,从实验结果来看,图像整体细节增多,色彩自然,基本消除了雾霾对图像的影响,但是景深交替处留有残雾,并且对于包含明亮区域场景的图像恢复出的色调偏暗,这是因为错误定位大气光而造成的。
图3 实验结果对比Fig.3 Comparison of experimental results
对于景深变化平缓的有雾图像角度而言,He等人方法在景深雾较浓处,算法基本失效,如图3(b)第2幅图像所示,在图像树枝处,图像细节丢失,边缘模糊。对于包含天空区域的有雾图像,该方法对透射率的估计不足,导致复原图像出现偏色现象,并且在天空区域出现噪声。图3(c)是Zhu等人提出的颜色衰减去雾方法的复原结果,该方法在颜色不失真的条件下取得了一定的去雾效果,但复原的图像整体雾感较浓,亮度较低,细节较少。图3(d)是Meng等人的基于边界约束的去雾方法的复原结果,该方法通过增加大气散射模型中参数的约束条件来解决其病态问题,复原图像细节增多,但颜色过饱和,图像亮度偏亮,且出现严重的色彩失真现象,因此该方法在应用上有一定的局限性。图3(e)是Sun等人的局部大气光遮罩估计的去雾方法的复原结果,该方法复原的图像亮度较亮,图像细节丰富,但是部分图像中出现了严重的色彩失真,这是由于该方法在对图像处理的过程中使用形态学操作导致的。图3(e)是本文所提方法的复原结果,从图中可以看出,本文方法恢复的图像细节丰富,色调自然,亮度适宜,在近景处,细节增多;在远景处,有较好亮度,特别是在天空区域有丰富的云彩纹理细节等。相比暗通道先验,本文方法色调更自然细节更丰富,在天空区域复原效果更好;相比颜色衰减方法,本文方法去雾效果更明显;相比边界约束方法,本文方法有良好色彩保真度性能,并且复原图像的细节更多;相比局部大气光遮罩估计方法,本文在饱和度和实现效果上都具有一定优势。
由于主观评价具有一定的局限性,为了进一步论证本文所提方法的有效性,本文采用客观评价对算法进行说明。采用图像去雾领域经常采用的无参考的图像质量评估方法[15],通过可见边集合数e,平均梯度r,饱和像素点个数σ以及时间复杂度(单位:秒)作为评价指标。其中,e和r的值越大表明算法去雾效果越好,而复原图像的饱和点个数σ和时间复杂度越小越好。其对应的数学表达式如下:
(14)
(15)
(16)
图4 客观评价(实验图像为图3(a)图像,从左到右依次为图1~图4)Fig.4 Objective evaluation ( experimental image is Fig.3, from left to right, Fig.1~Fig.4)
在图4所示的客观评价数据中,Meng方法复原图像的可见边参数出现负数,与主观评价中的严重偏色现象相对应。从图4(a)至图4(c)可知,本文方法的复原结果优于He等人方法和Zhu等人方法,且在饱和像素点方面,本文方法比其他4种方法取得的实验效果更好。图4(d)表示各方法的运行时间,从图中可以看出,本文方法取得较低时间复杂度。综上,可以说明本文方法的去雾效果相对较好,具有一定优异性。
本文通过有雾图像的混合通道得到包含深度信息的自适应参数,并结合高斯函数,提出了一种自适应线性传输的透射率估计方法。通过有雾图像的最小值通道结合线性变换理论近似估计无雾图像最小值通道的操作,可以消除局部最小值滤波引起的Halo效应,并通过有雾图像的混合通道得到包含深度信息的自适应参数,同时使用高斯函数衰减有雾图像最小值通道以对明亮区域透射率进行补偿,从而得到粗略透射率,最后采用交叉双边滤波器以得到透射率的精确估计。实验结果表明,本文方法复原的图像色彩自然,细节明显,并且在客观评价中也体现出了优势。但是本文算法依然存在不足,对于浓雾图像有一定的局限性,如何处理浓雾图像是接下来的研究方向。