周 妍 顾鑫涛 李庆武②
①(河海大学物联网工程学院 常州 213022)
②(常州市传感网与环境感知重点实验室 常州 213022)
水体对光的吸收和散射效应使得水下光学图像具有色偏严重、光照不均、细节模糊、对比度低等问题[1]。因此,水下直接采集得到的光学图像不仅难以满足消费者的应用需求,而且限制了特征匹配和目标识别算法的性能[2]。
现有的水下图像增强方法主要分为基于图像处理技术的增强方法[3,4]和基于物理模型的复原方法[5–8]。基于图像处理的方法包括直方图均衡、线性拉伸等;而基于物理模型的方法主要包括暗通道去雾、雾线模型等。单幅水下图像复原通常利用先验假设来解决不适定问题。Peng等人[9]发现散射效应作用下图像的模糊程度随着距离的增加而增加,他们忽略了传输的光谱依赖性而通过图像的模糊度来估计场景深度。He等人[6]假设在小图像块内,至少有一个像素在某些颜色通道中具有较低的值,并且使用最小值来估计透射率。Berman等人[7]基于雾线先验假设将图像表示为以背景光为中心的球坐标形式,并选取每根雾线中距离背景光最远处的像素点作为对清晰像素点的估计。
针对恶劣环境中水下图像的复原问题,本文首先依据对雾天成像的观察发现大量雾天图像的大气光在RGB坐标轴中拟合为一条直线,并基于此提出了水下背景光偏移假设。随后,依据水下背景光偏移假设提出背景光修正的水下成像模型,将水下图像分解为雾天图像和水下偏移分量两部分。再者,使用单目深度估计网络获得水下图像深度图,并利用非线性最小二乘拟合获得水下偏移分量的估计值从而实现水下图像去水。最后,优化去水后含雾图像的透射率并结合修正后的背景光进行图像复原。
本文从相关文献的实验图像以及谷歌搜索中获得了大量自然含雾图像组成的数据集,手动标记每张图像无穷远处的大气光并记录其3通道值。图1(a)展示了数据集中部分自然含雾图像示例。其中,每幅雾图中红色五角星处为手动标记的无穷远处的大气光,标记像素点在RGB坐标轴中的表示如图1(b)所示。通过观察可以发现,不同自然含雾图像无穷远处的大气光的3通道值都近似相等,且它们在RGB坐标轴中的拟合直线近似为通过原点的正立方体对角线。本文将这根直线定义为雾度线,即图1(b)中的虚线。
然而,水下图像无穷远处的背景光显然不符合地面雾天图像大气光的观察结果。与地面雾天成像相比,不同水体对光具有不同的吸收和散射作用,从而导致水下图像的背景光通常具有不同程度的色偏。基于上述观察结果,本文提出了水下图像背景光偏移假设:地面无穷远处的真实大气光位于雾度线上,经大气散射作用后沿雾度线衰减,随后由于水体对光的吸收和散射作用,其从雾度线上发生偏移并最终获得实际拍摄得到的水下图像背景光。图2所示为水下背景光偏移的假设过程。其中,点A为地面成像时的大气光,点B′为A点沿着雾度线衰减后的结果,点则代表点B′发生偏移后的真实水下背景光。
为了进一步验证上述假设,如图3(a)和图3(b)所示,分别选取雾天图像和水下图像中场景深度不同的各7块区域,求取每一区域内所有像素各通道的平均值。其中,每幅图像中黑色方框内的局域均值为图像的背景光。如图3(c)所示,两幅图像不同场景深度处的局域通道均值可拟合为两条不同的直线(雾天图像为绿色虚线,水下图像为蓝色虚线)。值得注意的是,雾天图像的背景光位于上文定义的雾度线(图3(c)中的黑色实线)上,而水下图像的背景光会依据水体的不同而发生变化。随着场景深度的增加,它们的局域通道均值都沿着拟合的直线向对应图像的背景光方向移动。
综上所述,基于水下背景光偏移假设可以得到如图4所示的建模示意图。当在地面大气中成像时,受大气散射作用的影响,随着场景深度的增大,真实像素点Jc(x)被推向位于雾度线上的背景光B′,得到雾天图像中的像素点Ic′(x);而当同一真实像素点Jc(x)在水下成像时,受到水体的吸收和散射作用的影响,依据水下背景光偏移假设,背景光从雾度线上发生偏移,原本被推向B′的像素点因此被推向了,最终成为水下图像中的像素点Ic(x)。
水下成像模型的一般表达式为[10]
式(4)可细化并变形为
综上所述,基于水下背景光偏移假设构建的背景光修正的水下成像模型可表示为
由背景光修正的水下成像模型式(6)可知,只要合理估计水下偏移分量Bbias的值,即可实现水下图像去水,从而将水下图像复原问题转化为雾天图像复原问题。
3.2.1 场景深度估计
文献[10]使用一种3维重建方法来生成场景深度图并将其用于水下图像的复原。该方法生成的深度值通常是非常精确的,因此其被普遍地应用于地形重建等领域。然而针对水下图像复原的大多数方法并不需要如此精确的绝对深度值,常见的利用暗通道或亮度通道估计得到的精度相对较低的深度图在应用于水下图像复原时同样取得了令人瞩目的成就。因此,本文利用单目深度估计网络 (Monodepth2[11]),将自适应直方图均衡预处理后的单幅水下图像作为输入,获得相应的深度图输出[5]。与利用3维重建方法得到的以米为单位的绝对深度不同,单目深度估计网络输出的是归一化的相对深度[12]。因此必须根据输出的相对深度估计绝对深度。由于水下的能见度随着场景深度的增加而迅速下降,即直接分量随景深的增加呈指数衰减而后向散射分量随景深的增加呈指数增大,当场景深度超出一定范围时,后向散射分量占据主体地位且趋近于饱和。此时,随着景深的进一步增大,像素值的变化可忽略不计。因此我们定义了一个最大能见距离(默认值为10 m),以此来衡量相对深度。此外,通过观察水下RGBD数据集[10]中利用3维重建得到的景深图,发现所有景深图中的深度距离都不是从0开始的。这是因为水下成像时相机受特定视场的限制,深度较小的物体通常不可见。为此定义了一个最小成像距离(默认值为1 m)。最后,将单目深度估计网络输出的相对深度图线性映射到最小成像距离和最大能见距离之间从而获得绝对深度。与使用3维重建方法获得的非常精确的绝对深度相比,本文利用单目深度估计网络输出的相对深度图以及人工设置的最大能见和最小成像距离,生成了精度相对较低的绝对深度估计值,其在满足水下图像复原需要的同时,降低了测量成本和时间成本,在后续的复原步骤中同样取得了较好的效果。
3.2.2 水下背景光修正
3.2.3 水下偏移分量Bbias的估计
然而在针对水下图像复原的实验中,本文发现部分距离背景光B′最远处的像素点通常具有较小的像素值。这是因为,与在地面上成像不同,水下成像受水体对光的吸收作用的影响,成像后的图像通常光照不均且部分区域的像素点的值趋近于0,我们称之为暗像素点,即图5中黄色圆点所示的像素点。依据霍夫投票[14],非局域暗像素点同样参与投票,并最终被划分入不同的雾线中。并且这些暗像素点通常是其所在雾线中距离背景光B′最远的像素点,将属于该雾线的其他像素点都复原到以暗像素点为中心的紧密簇中会使得复原后图像中部分区域偏暗,从而导致细节丢失。
由于背景光通常为图像中亮度最大的点,因此,本文定义d的值为背景光B′到亮度为0的像素点(RGB坐标原点)距离的一半,用于界定每根雾线中距离背景光最远处的像素点作为对清晰像素点的估计是否合适。对于一根给定雾线H,若该雾线中距离背景光B′最远的像素点到背景光的距离(x)>d,则认为此时距离背景光最远处的像素点亮度较低,不适合作为对这根雾线中清晰像素点的估计,进而可以通过调整µ的值将其映射到亮度更高的像素点处,依据实验所得的经验值,本文取µ=0.85。否则,则认为选取该雾线中距离背景光最远处的像素点作为对清晰像素点的估计是合适的。改进后每根雾线中清晰像素点到背景光B′的距离为
从而优化后的透射率表达式为
为验证提出的复原方法的有效性, 本文制作了一个包含多种颜色的色卡板,使用专业水下相机(相机型号为OLYMPUS IM005)在不同水体中进行了水下实验,如图7(b)所示。其中,水体1为常见的流动湖水,拍摄距离为1 m;水体2为能见度较低的不流动池塘,拍摄距离为0.5 m;水体3和水体4是在实验室水箱中加入不同浓度的硫酸铜模拟得到的两种偏蓝色水体,拍摄距离为1 m。在所有水体中相机均在距离水面0.5 m深处拍摄目标物体。考虑到照明条件的影响,在所有水体中相机均使用了闪光灯。对于这组不同水体中拍摄的图像,本文应用了以下方法:多尺度视网膜增强[4]、通道迁移加暗通道去雾[16],以及色彩补偿加多尺度融合[17]分别对它们进行处理。在将其复原后的结果与本文方法进行比较的同时,还与空气中拍摄的参考图进行对比。为了定量分析不同水体中图像复原结果的有效性和鲁棒性,本文选用国际照明委员会(CIE)开发的CIEDE2000色差公式来评价复原后的结果。参考如图7(a)所示在空气中拍摄的色卡原图,通过手动定位,测量空气中的参考图与复原后的每幅图像中对应色块之间的色差。值得注意的是,CIEDE2000的值越小则代表复原后的结果与空气中拍摄的色卡的色差越小。由图7和表1可知,较其他方法而言,本文方法在不同水体中的处理结果与空气中原图的差距更小,在不同水体中对色卡的复原结果均能得到最优或次优的CIEDE2000色差值。并且由于结合了背景光修正、水下偏移分量去除以及图像去雾,本文方法在处理不同水体中的图像时更加稳健。
表1 不同水体中各算法复原结果的CIEDE2000色差指标对比
4.2.1 定性分析
为进一步说明本文算法的优越性,本文选取了4种常用的水下图像复原方法与本文算法进行对比。所有实验图像均来自相关论文或真实水下数据集,限于篇幅,文中给出了部分实验结果,如图8所示。其中,Image1—Image 4为常见的低质量水下图像,Image5—Image 6为低照度图像。从图8所示的实验结果来看,所有复原方法均不同程度地提高了水下图像的视觉效果,处理后的水下图像清晰度和对比度均有所提高。
其中,文献[16]在利用颜色通道迁移进行预处理的基础上使用暗通道去雾算法去模糊,尽可能地保留原始图像的细节,然而该方法可能造成颜色通道的过度增强,如图8(b)中Image1和Image3经过此算法复原后的图像中部分区域出现白色高光,导致细节丢失。文献[17]在颜色补偿的基础上对图像进行多尺度融合从而增强细节,该方法通过颜色补偿一定程度上校正了原始图像的色偏,然而多尺度融合的步骤在突出图像细节的同时也放大了图像中的噪声,如图8(c)中Image1和Image6经过此方法复原后的结果均出现了不同程度的噪声,并且该方法复原后的图像整体偏暗,其在处理低照度图像时拥有最差的视觉效果。文献[18]基于直方图分布先验改善图像的对比度和亮度,并基于最小信息损失原则恢复水下图像的可见性、颜色及自然外观。如图8(d)所示,该方法复原后的图像色彩更加丰富,然而Image4和Image5经过此方法复原后背景处均出现了红色伪影。文献[19]利用图像的亮度分量估计场景深度,再结合场景深度获得后向散射分量,最后对去除后向散射分量的图像进行颜色校正。如图8(e)所示,该方法能够突出远景和近景处的细节且亮度较为均匀,然而使用该方法处理后的Image4和Image5色偏去除效果较差,处理后的结果仍有明显色偏,并且经过该方法复原后Image5中的鱼群和礁石难以分辨。
相较而言,本文方法将水下图像复原问题转化为雾天图像复原问题,有效地去除了水下图像的色偏和模糊,显著地提高了图像的对比度。当应用于图8中Image5~Image6所示的低照度水下图像时也获得了较好的效果,复原后图像的亮度得到了提高,光照更加均匀,细节部分也更加突出。
4.2.2 定量分析
为进一步验证本文方法的性能,本文选取了4种常用的水下图像评价指标:平均梯度(Average Gradient, AG)、图像信息熵(Information Entropy,IE)、水下图像增强评价指标(Underwater Color Image Quality Evaluation, UCIQE)、水下彩色图像质量评价指标(Underwater Image Quality Measurement, UIQM)。其中,平均梯度是指图像边界两侧灰度值的差异,即灰度变化率,平均梯度值越高的图像越清晰。图像信息熵反映了图像中的平均信息量,携带更多信息的图像拥有更高的图像信息熵值。UCIQE用于评估算法恢复水下图像色度、饱和度和对比度的综合性能;而UIQM则是基于人眼视觉系统激励,以RGB色彩空间中的色彩、清晰度以及对比度为测量指标。这两种评价方法通过将各自的测量指标线性组合而得到最终的值,对于颜色平衡,饱和度、清晰度和对比度更高的图像,其UCIQE和UIQM的值更高。基于此,本文将不同方法的复原结果进行客观评价,比较结果如表2所示。从表2可以看出,5种复原方法复原后的图像与原始图像相比各项指标均有所提升。其中,本文方法处理后图像的平均梯度指标较其他方法而言最高,这表明处理后图像的灰度变化率较高,可以很好地区分图像的边界差异。同时,通过信息熵指标可以看出,本文方法较其他方法而言显著地提高了图像的信息量,因此复原后的图像中细节信息更加丰富。而在UCIQE和UIQM指标中,本文方法均获得了最优值或次优值,这表明复原后的图像色彩更加均衡,拥有更好的视觉效果。
表2 各方法客观评价指标平均值比较
针对水下图像颜色失真和模糊等问题,本文提出了一种基于水下背景光偏移假设的水下图像复原算法。首先,通过对比雾天图像和水下图像背景光的观察结果提出水下背景光偏移假设,并建立背景光修正的水下成像模型;随后,利用单目深度估计网络生成水下图像的景深图,结合深度图获得水下图像背景光的估计值,并利用几何校正方法将水下背景光修正为雾天背景光;再者,利用非线性最小二乘拟合获得水下偏移分量,并基于背景光修正的水下成像模型实现水下图像去水;最后,优化去水后的含雾图像的透射率,并结合修正后的背景光计算最终的复原结果。实验结果证明,所提方法在水下图像色偏校正和模糊去除方面效果良好。