基于光照估计和快速引导滤波的夜间图像去雾算法

2019-03-04 10:56段柳
现代计算机 2019年36期
关键词:梯度滤波光照

段柳

(四川大学计算机学院,成都610065)

0 引言

夜间有雾低照度条件下,由于人造光源、雾霾、捕获设备等因素的影响,图像采集设备所捕获的图像常伴随低光照、光照不均匀、对比度下降、颜色失真、部分信息丢失等情况,严重影响户外计算机视觉系统的应用,如视频监控、目标识别、智能交通分析及自动驾驶等。因此,复原夜间图像对计算机视觉系统有着重要的研究价值。

目前对于夜间雾天图像去雾主要有以下研究:Pei等人[1]提出一种基于颜色转换和暗原色先验的方法,首先利用颜色转换技术作为夜间图像去雾的预处理,把颜色映射到白天有雾图像中,然后利用改进的暗通道先验方法去雾,由于颜色转换没有使用有效的物理模型,导致复原后的颜色不真实。Zhang 等人[2]引入一种新的夜间雾天图像退化模型,模型中首次考虑了夜晚图像的不均匀光照和颜色失真现象,并利用Retinex 和暗原色先验等技术反解该模型得到复原图像,该方法的处理结果真实自然,对比度明显提升,但在人造光源区域存在辉光现象。Li 等人[3]把人造光源加入到大气散射模型中,该算法首先利用基于相对平滑约束的层次分解算法分离并去除辉光项,然后采用暗原色先验进行去雾。该方法对因辉光较大遮挡住图像细节的夜晚雾天图像有很好的适应力,但在噪声抑制方面处理欠佳。Zhang 等人[4]通过对大量白天无雾图像块进行统计并提出最大反射先验理论,利用其进行夜间图像去雾,该算法处理结果整体偏暗且存在很大的噪声。Yang 等人[5]将超像素分割引入大气光和透射率的估计中,使图像保留更多的细节信息,但处理结果仍存在噪声被放大的问题。

综上分析,本文提出了一种基于光照估计和快速引导滤波的夜间图像去雾算法,包括四个步骤:辉光分解、图像增强、亮度补偿、去噪。实验表明,本文提出的算法具有很好的夜间雾天图像清晰化效果,使去雾后的图像整体协调自然,细节更加丰富。

1 夜间雾天模型

1.1 Retinex理论

Retinex 理论认为人眼对物体亮度的感知取决于照明环境和物体表面对照射光的反射,将原图像看成是照射光分量和反射光分量的组成,这一过程可由图1描述,其中照射光分量会影响图像整体的亮度,对图像的动态范围起决定性作用,反射光分量表示图像中目标本来的细节信息,如式(1):

图1 Retinex 原理图

其中I(x)表示相机捕获的图像,L(x)表示照射分量,R(x)表示反射分量。

1.2 新模型

我们注意到在夜间雾天环境中,夜晚环境光占主导因素,周围环境的可视度较低。在某些情况下环境光的存在致使我们看不见附近的物体,为了提高可视性,首先要尽可能消除人造光源的影响。于是在Retinex 理论的基础上引入人造光源发光因子项建立新模型,如图2 所示。

图2 基于Retinex的夜晚雾天新模型

由新模型可知,捕获的图像由两部分组成,即去掉辉光层的新雾天图像(Iˉ(x))和发光因子项图像(G(x)),I(x)为相机所捕获的图像。借此本文提出的算法步骤为:首先进行辉光层分解尽最大可能减少人造光的影响,其次针对低光照问题进行图像增强,伽马光补偿,最后利用快速引导滤波进行保边去噪得到最终结果,算法流程图如图3 所示。

图3 本文算法基本流程图

2 新模型求解

2.1 辉光层分离

由公式(2)可知捕获的场景图由新雾天图像和辉光层图像两部分构成,所以去除夜晚辉光G(x)就变成层分离问题。夜间雾霾下的发光具有“短尾”效应,并且辉光围绕光源多次散射后逐渐平稳,因此我们可以利用这种平滑特性和“短尾”效应建立模型,使目标函数层分离出来,环境光层光滑,把较大梯度的光留在新雾天图像中:

其中f1,2是双向一阶导数滤波器,f3是二阶拉普拉斯滤波器,计算符“*”表示卷积,第二项G 使用ℓ2范数正则化来处理环境光的梯度,由于G(x)=I(x)-Iˉ(x),这将促使环境光层能够平滑的输出,第一项使用鲁棒函数r(s)=min(s2,i),该函数将保留输入图像在得到的新雾天图像中最大梯度的存在。同时还增加了一个不等式约束来确保解决方案处于适当的范围内,然而由于这个约束被独立的应用于每个颜色通道,在对夜间雾霾图像测试时,易导致颜色的偏移。受颜色恒常性假设的启发,添加了第二个约束条件来控制颜色的偏移问题。将两个约束条件结合在一起,就可以得到具有较少的颜色偏移的环境光的分离结果,式(4)可通过Li等人[7]提出的半二次分解算法来进行求解,分离出的环境光如图4 所示。

从实验结果图4 可以看出,输入的夜间图像在去除图4(b)辉光层后,展现了图像更多的细节信息,图像整体的清晰度也得到了提高,图4(c)分别是两组图像辉光层分离后得到的新雾天图像。

图4 辉光层分离结果图

2.2 图像增强

得到的新雾天图像具有低照度特性,利用Guo 等人[6]对低照度图像的思考进行图像增强,该方法建立在Retinex 基础之上,表示为:

Iˉ表示去除辉光层的新雾天图像,R 表示理想中得到的图像,L(L̂)表示光照图,运算符“*”表示各元素相乘。在该算法中,对于彩色图像,三个颜色通道假设使用相同光照图,用L(L̂)来同时表示单通道和三通道,在式(5)中新的雾天图像分解为两部分,希望得到的复原图像和光照图。我们的目的仅是增强低光照图像,所以求出L 才是关键因素,Iˉ/L 就是我们最终所求结果。

(1)光照估计

我们采用局部估计法来获得更准确的局部光照图,表示如下:

对于每一个像素点x,亮度值是在某一确切位置三通道的最大值,得到的L̂(x)确保了复原结果不会饱和,因此:

为了避免分母为零,e 是一个很小的常数。

这些改进中的大多数方法皆是通过考虑目标像素周围小区域内的相邻像素来估计照明的局部一致性。为了同时保留整体结构特征和平滑纹理细节,依据最初的光照图,可通过以下公式求解:

a 是平衡这两项的系数,‖ ‖*F和‖ ‖*1分别是Frobenious 和ℓ1范式。W 是权重矩阵,∇L 是一阶导滤波器,它包括水平方向的∇hL 和垂直方向的∇vL。在式(8)中,第一项关注的是初始光照图和改进后L 的保真度,第二项关注的是平滑结果。

细看式(8),最初的迭代进程是稀疏加权梯度项‖ ‖W ∘∇L1,范数ℓ1与L 上的梯度同时运算使其有些复杂。显然下面的关系是成立的:

虽然目标函数与原始函数相比发生了变化,但从初始照明估计T̂中提取照明结构的目标与原始图像一致。当很小时,值会被抑制。换句话说,目标L 被约束以避免产生初始照明梯度图中的小幅度梯度。相反,当 ||∇dL̂(x) 值很大时,上述抑制会减弱。

问题式(10)仅涉及二次项,可通过以下方式求解:

(2)权重选择

对于初始光照图的结构性修复,权重W 的设计很关键。受相对总变分(RTV)的启发,权重可通过以下方式设置:

Gs(x,y)由高斯核和标准差s 产生,表示为:

Dist(x,y)函数用于测量空间欧几里德距离。我们知道,不同于RTV,此处的权重矩阵是根据L̂构造的,而不是利用L 迭代更新,这意味着W 只需计算一次。

根据重新定义的光照图T,我们可通过式(3)恢复R,效果如图5(c)所示,与图5(b)相比,利用光照估计后得到的实验结果图细节信息更加突出。了多张具有代表性的图片,利用刚提到的三种先进的夜间去雾算法与文本算法进行实验对比,实验结果如图6。

图5 整个算法处理结果图

2.3 亮度补偿

在去除辉光层,利用光照估计的方法进行图像增强后,仍存在图像整体亮度偏暗问题,因此,利用伽马矫正方法来提高图像整体亮度,表示如下:

通过对比图5(c)和(d)我们可以看出,亮度补偿后的图像在暗区域的细节信息得以更加突出,整体视觉效果也得到了改善。

2.4 快速引导滤波

我们发现图像去除辉光层、利用光照估计算法增强、伽马光补偿后,仍存在一定的噪声,针对这一问题,通过采用具有保边去噪效果的滤波算法进行细化处理。为了在去噪的同时提高算法效率,本文采用了He等人[10]提出的快速引波滤波算法图5(e)为利用快速引导滤波的处理结果,从图中可以看出,相比原夜晚雾天图像,噪声得到极大抑制。

3 实验结果与分析

3.1 主观评价

为了进一步说明本文算法的有效性,从网上收集

图6 本文算法与三种算法的夜间去雾结果对比图

从实验结果对比图6 我们可以看出,Zhang 算法1去除了夜晚雾霾图像大部分雾霾和一些人造光,但光源周围仍存在可见的辉光伪影以及被放大了的噪声。Li 算法消除了大部分人造光源的影响,但仍存在噪声被放大的特点。Zhang 的另一算法2 虽比他之前提出的效果好,但仍没有解决辉光伪影问题,并存在噪声放大、图像整体亮度偏暗的问题。本文提出的算法很好地避免了并不适用于夜晚的白天大气成像模型和基于白天高清无雾提出的暗通道先验方法,利用以Retinex为基础的增强方法,并考虑了辉光现象、亮度以及噪声问题,可以很好地解决夜晚图像去雾问题。同时我们分别对部分图像处理结果进行局部放大处理,如图6,通过对比局部放大区域,可以发现对比其他三种方法,本文算法处理结果细节更突出,并有效抑制了噪声。

3.2 客观评价

为了客观说明去雾结果的优劣,本文采用了4 种客观评价标准进行验证,即无参考的雾感知浓度指标(Fog Aware Density Evaluator,FADE)、平均梯度、标准差和信息熵。FADE 值越小代表图像雾密度越低,去雾效果较好。平均梯度反映了图像的清晰度和纹理变化,平均梯度越大说明图像越清晰,标准差反映了图像像素值与均值的离散程度,数值越大说明对比度越高,图像质量越好。信息熵反映图像信息量,值越大,表明图像信息越多。

根据上述4 个评价指标,表1-4 分别给出了基于图6 各算法的评价结果,表中加粗部分为各评价结果对应的最优分值。

由表1 可知,四种算法FADE 值均小于输入图像,表明在一定程度上进行了去雾操作,Li 等人算法的处理结果优于Zhang 等人提出的两种算法,这是因为Li算法针对夜间雾天图像进行了辉光去除,有效避免了人造光对图像去雾的阻碍。本文算法FADE 值取得最优结果,这是由于在去除辉光的同时还进行了图像增强、伽马光补偿和快速引导滤波去噪等处理,使得本文算法相比其他三种算法结果更优。

由表2-4 可知,与原有雾图像相比,经各算法处理结果后的图像在各个评价指标上均得到不同程度的提升。其中本文算法的去雾结果在平均梯度、标准差上皆明显优于Zhang 算法和Li 算法,在信息熵上明显优于Li 算法,略优于Zhang 算法。由此更加客观地说明利用本文算法进行夜间图像去雾能得到细节更清晰的无雾图像。

表1 图6 中各算法去雾结果的FADE 值客观评价

表2 图6 中各算法去雾结果的平均梯度客观评价

表3 图6 中各算法去雾结果的标准差客观评价

表4 图6 中各算法去雾结果的信息熵客观评价

4 结语

本文提出了一种基于光照估计和快速引导滤波的单幅夜间雾天图像去雾算法。首先针对夜间辉光效应可能造成图像信息被严重遮挡的问题,进行辉光层的分解以提升图像清晰度,接着对夜晚低能见度问题在Retinex 基础上通过估计光照图进行图像增强,从而避免使用并不适用于夜晚的在白天基础上总结的暗原色先验规律,然后对图像整体进行光补偿,最后对图像中存在的噪声利用快速引导滤波进行处理,在抑制噪声的同时还提高了效率。将本文提出的算法与多种先进的夜间去雾算法进行实验对比,主客观分析,验证了本文算法的优越性。但本文算法仍有待进一步完善,夜间图像成像模型条件复杂,本文建立的新模型将其划为两大部分,但在实际场景中会更细杂,因此在对夜间图像成像模型的构建上可做更加深入的研究。

猜你喜欢
梯度滤波光照
肉种鸡的光照不应性对养殖生产的不良影响分析
基于HP滤波与ARIMA-GARCH模型的柱塞泵泄漏量预测
基于应变梯度的微尺度金属塑性行为研究
隐蔽的力量
一种考虑GPS信号中断的导航滤波算法
一个具梯度项的p-Laplace 方程弱解的存在性
内容、形式与表达——有梯度的语言教学策略研究
航磁梯度数据实测与计算对比研究
基于多窗口中值滤波和迭代高斯滤波的去除图像椒盐噪声的方法
水禽舍的光照及其控制