贺长秀
(中国人民解放军63636部队,酒泉732750)
雾霾天气条件下,户外采集的图像会受到空气中悬浮微粒(水蒸气或烟尘)的影响而降质,这是由于光线在空气传播过程中受到微粒的散射和吸收作用,导致目标场景表面的反射光衰减,同时大气环境光受悬浮微粒的散射而混入到成像光路中,使得户外采集到的图像出现模糊、颜色退化、对比度下降等现象。这些缺陷会严重影响室外计算机视觉系统的工作性能。因此,针对雾霾图像研究图像去雾技术对计算机视觉系统的应用有着重要意义。
图像去雾算法是通过一定的技术或手段对雾天图像进行处理,去除图像中雾的遮挡和干扰,得到对比度、颜色和细节等各方面都满意的图像。目前现有的图像去雾算法可分为三类:基于图像增强的方法、基于物理模型的方法和基于深度学习的方法。
基于图像增强的去雾方法是从图像的特征出发,通过利用或改进传统的增强算法来改善雾天图像的对比度和颜色信息,以此来达到去雾的目的。常用的图像增强算法有直方图均衡化、同态滤波、小波变换和基于Retinex 的算法[1]。图1 展示了利用传统图像增强方法进行去雾的例子。从图1 中可以看出,处理后的雾天图像对比度得到了提升,但是整体去雾效果不自然。这是由于基于图像增强的去雾方法没有考虑到雾天图像降质的原因,仅从图像特征出发,来改善对比度和颜色信息,在增强过程中忽略了图像中场景的深度信息,导致增强后的图像在景深跳跃的区域不自然,不是实质意义上的去雾处理。
图1 传统图像增强方法应用于雾天图像的处理结果
基于物理模型的图像去雾方法是从雾天图像降质或退化的机理出发,研究可以描述雾天图像退化的物理模型,进而通过估计模型中的未知参数,来反演降质过程,最终复原出无雾清晰的图像。目前,此类方法中使用较多的是大气散射模型,该模型最先由McCartney等人[3]根据米氏大气散射理论提出,后续Narasimhan 和Nayar[4]进行推导得到的。如图2 所示,大气散射模型描述的是采集设备接收到的图像可由两部分组成,一部分是目标场景的反射光在大气传播过程中经过悬浮粒子衰减后到达接收设备,另一部分是光路周围的大气光经过悬浮粒子的散射混入到了成像光路,与目标场景的反射光一起到达接收设备。在数学上,可用如下公式表示:
式(1)中,I(x)为观察到的图像,即雾天图像,t(x)为透射率,A为大气光,J(x)为复原后的无雾图像。式(1)右侧有两部分组成,J(x)t(x)表示直接衰减项,描述目标场景反射光衰减后的部分,A(1-t(x))表示大气光项,描述混入到成像光路的部分。图像去雾的目的是从输入的雾天图像I(x)出发,估计模型中的未知参数,复原无雾图像J(x)。根据目前基于物理模型的去雾方法所基于的假设或先验,又可将此类方法分为三类:基于深度信息的方法、基于偏振光的方法和基于先验知识的单幅图像去雾方法[5]。
基于深度信息的方法是通过一定的方法得到图像的景深信息,进而估计物理模型中的参数,进而将参数代入模型,反演得到清晰无雾的结果图像。常用的深度估计方法有以下几种,1998 年,Oakley 等人[6]利用雷达和飞机的飞行参数来估计场景的深度信息。Nara⁃simhan 和Nayar 在文献[7]中提出了一种基于用户交互方式估计场景深度的方法。该方法通过用户手动指定天空区域和消失点的方法来得到场景的深度信息。随后,Narasimhan 和Nayar[8]利用在相同场景不同天气条件下的两幅或多幅图像,通过相应的约束条件,计算场景的三维结构信息,进而复原得到清晰无雾的图像。Kopf 等人[9]利用已经场景的三维纹理信息,得到相应的深度信息。
虽然基于深度信息的去雾方法可以得到较好的复原效果,但是此类方法应用场景单一,针对性强,且需要额外的硬件或者用户交互信息,因此难以推广和应用。
雾霾天气条件下,目标场景光线强度随着场景距离增大而指数衰减,相应的环境光强度随着距离增大而指数增加,通常认为接收设备采集到的光线偏振度大部分是由空气中散射例子的环境光造成的。基于这一假设,Schechner 等人[10]从大气光的偏振特性出发,通过估计两幅或多幅图像在不同偏振方向偏振度、大气光以及透射率等参数,进而将估计的参数代入到降质模型中复原得到清晰的图像。然而,这些基于偏振光的图像去雾方法仅适用于薄雾的场景,在浓雾场景下效果较差。
由于前两类方法都需要额外的信息或者多幅输入图像,在真实的应用场景下很难满足,因此基于单幅图像的去雾方法得到更多研究者的关注。针对单幅图像去雾而言,由于仅有输入的单幅图像信息可用,因此模型的反演求解属于病态问题。为了实现单幅图像去雾的目的,需要有效的先验知识或合理的假设来估计模型中的关键参数,进而代入到降质模型中进行反演复原得到无雾图像。Tan[11]通过观察发现无雾图像的对比度与雾天图像相比较高,进而提出了一种最大化局部对比度的方法来达到去雾的目的。Fattal 等人[12]假设场景表面阴影与透射率呈统计不相关性,然后利用独立成分分析(Independent Component Analysis,ICA)的方法来估计透射率和大气光参数。Tarel 等人[13]首次引入了大气光幕的概念,并利用快速中值滤波的方法来对大气光幕进行估计,进而将估计的大气光幕参数代入到模型中进行求解。He 等人[14]通过对大量无雾自然图像进行观察发现在大多数非局部天空局部区域内,总存在一些像素点至少在某个颜色通道的亮度值很小,甚至会趋近于0,称之为暗通道先验规律(Dark Channel Prior)。数学上,暗通道先验规律可表示为:
式(2)中,Ω(x)为像素点x 的邻域,Jc为图像的颜色通道,Jdark为暗通道图,由暗通道先验理论可得,Jdark趋近于0。He 等人进而将暗通道先验理论来简化大气散射模型,具体的,将模型(1)两边进行两次最小值运算,可得:
式(3)中假设透射率在局部块内是恒定不变的,结合式(2)中的暗通道先验规律,可对式(3)进行简化再推导,可得:
式(4)中可以粗略求出透射率参数,如果将此粗略透射率直接代入模型中,则会出现明显的块效应,严重影响复原效果。因此,He 等人利用软抠图算法来细化透射率图,即求解矩阵方程:
式(5)中L为拉普拉斯稀疏矩阵,λ为参数,U是和L同样大小的单位矩阵,为式(4)求出的粗略透射率,t为细化后的透射率图。
由于该方法简单有效,迅速被国内外研究者关注。然而,软抠图细化透射率图的方法复杂度较高,耗时较大,因此,He 等人随后又提出了导向图滤波(Guid⁃ed Image Filter,GIF)[15]来细化透射率图,大大提高了算法的执行效率。然而,该方法在某些场景下会失效,如含有大片天空区域的雾天图像。当输入的雾天图像中含有大片天空区域时,暗通道先验规律不成立,导致基于暗通道先验的方法在对此类图像处理时会出现颜色失真,噪声放大等现象。后续研究者针对该方法的缺陷也提出了一系列的改进算法。
近年来,一些有效的先验知识被先后提出,如颜色衰减先验(Color Attenuation Prior,CAP)[16]、雾线先验(Haze-lines Prior)[17]等。图3 是利用不同先验知识得到的去雾结果图像。如图3 所示,基于先验知识的去雾方法可去除雾气对图像的遮挡,有效改善雾天图像的视觉效果。
基于先验知识的方法目前是传统图像去雾领域研究的趋势,通过探索有效的先验知识来估计模型的参数,便可以很好的复原图像。但是,先验知识的应用场景往往受限,其通用性有待进一步探究。
图3 基于先验知识的图像去雾方法处理结果
随着计算能力的提升和硬件成本的下降,以数据为驱动的基于学习的图像去雾方法得到了迅猛的发展,成为了近年来主流的方法。特别的,卷积神经网络(Convolutional Neural Networks,CNNs)和生成对抗网络(Generative Adversarial Networks,GANs)[18]已成功应用于图像去雾领域。Cai 等人[19]首次尝试利用CNN 来构造端到端的去雾网络,实现从输入单幅雾天图像到透射率图之间的映射。Ren 等人[20]提出了一种多尺度CNN 去雾网络,包括两个子网络,分别用于粗略估计透射率图和细化透射率图。随后,Li 等人[21]通过推导大气散射模型公式,将透射率和大气光两个参数进行合并,统一到一个参数中,并构造了一体化CNN 去雾网络,实现从输入单幅雾天图像到无雾图像之间的映射。基于GAN 网络,Li 等人设计了条件生成对抗式去雾网络,实现雾天图像到透射率之间的映射。Zhu 等将可微编程的思想与生成对抗网络进行结合用于图像去雾领域。Pan 等人[22]为了求解通用的图像复原问题,将GAN 网络与物理模型进行结合,改进了GAN 网络的结构,成功应用于图像去雾、去噪、超分辨以及去模糊任务。基于深度学习的方法由于需要大量配对的雾天和无雾图像作为训练数据,现有的方法通常是利用物理模型通过设计不同的参数值来得到仿真的雾天图像。由于真实的配对数据很难获取,基于循环一致性的生成对抗网络(CycleGAN)[23]应运而生,该网络的所需的训练数据无需成对出现,大大放松了基于深度学习的方法对训练数据集的限制。
基于深度学习的图像去雾方法目前是该领域研究的主流,此类方法通过大量的仿真雾天数据集进行学习得到的网络结构在应用于仿真雾天图像时可以得到很好的去雾效果,但应用于真实雾天图像时往往效果欠佳,这是由于仿真的雾天图像无法有效如实反映真实雾天图像的雾霾分布。
图4 为基于深度学习的去雾方法得到的处理结果。如图4 所示,基于深度学习的方法在应用于真实雾天图像时会出现过饱和或去雾不彻底的现象。
图4 基于深度学习的去雾方法处理结果
本文针对近年来图像去雾算法的研究进展进行了综述,其中包括基于图像增强的方法,基于物理模型的方法和基于深度学习的方法,并阐述了各自的优缺点。图像去雾领域的发展对户外计算机视觉系统的应用具有重要的意义。然而,该领域仍存在一些难点亟待解决。
(1)物理模型的准确性。目前广泛使用的大气散射模型仅考虑空气中粒子的单散射作用,忽略了粒子与粒子之间的再次散射影响。此外,现有的物理模型也基于大气中悬浮粒子具有空间不变性的假设,而真实的雾霾天气往往更加复杂,不一定满足现有模型的假设条件。
(2)算法的实时性。目前现有的大多数算法均关注图像去雾的效果,而对算法的执行效率和处理时间研究的较少,算法的可实时性对计算机视觉系统的应用具有很大的影响,在保证效果的前提下提高算法的处理效率,使其可以实时应用于户外视觉系统是未来的研究方向。
(3)图像去雾算法的客观评价标准。目前现有的算法在进行对比时,客观评价指标无法全面的评价算法性能,只能反映单方面的优劣,因此,研究针对图像去雾算法的客观评价指标有利用该领域的发展。