张微微,祝开艳
(大连海洋大学 信息工程学院, 辽宁 大连 116023)
海洋在给我们带来大自然馈赠的同时,也给身处信息时代的我们带来了无限挑战,由于水下环境中存在的物理特性,水下机器人进行目标识别和检测充满了挑战性。与陆地图像不同,水下图像成像不仅受到水下环境的影响,而且还因为自然光的衰减,人眼无法清晰观察水下图像。另外,水体对自然光具有吸收和散射作用,光线随距离和深度呈指数衰减,所以水下图像呈现雾状。而水下环境中存在各种介质,导致光线沿人眼的视线从水下散射回来的部分会显著降低场景对比度,因为水下介质的这些特性,水下图像会存在对比度差的特点。在普通海水中,距离超过10 m的物体几乎无法区分,而颜色则会产生色偏,因为水下图像的色彩通道特征波长会根据水深进行切割,所以水下拍摄的图像会呈现出蓝绿色。为了能够更精确地识别摄像机拍摄的海洋生物,拍取到的水下图像都要经过一系列的处理,比如进行图像增强或图像复原操作,以增强图片的对比度、亮度、细节等。图像增强算法根据是否基于图像成像模型,主要分为两大类,一类是图像增强,一类是图像复原,这两类方法的共同目的都是为了突出图像中感兴趣的部分,改善图像总体质量,提高图像的可视效果。海洋的特性给水下图像增强研究带来了无限挑战,也带来了无限可能。
低照度图像增强,是目前图像处理领域中热门研究方向之一,低照度图像增强的应用场景包括海洋、道路交通、监控视频等计算机视觉相关领域。低照度图像增强属于特殊环境下的图像增强,低照度环境包括自然光不足、室内光线不足,两种情况下拍摄出的图像亮度都比较低,整体亮度低影响了人眼的视觉感知。低光照图像亮度低和细节模糊,不仅严重影响人眼的识别能力,而且降低了计算机系统对其的后期处理性能。光线不足情况下抓拍的水下图像被称为低照度水下图像,因为海水和光照的原因,导致颜色失真,更加难以识别,对低照度水下图像进行增强有着重要的科学研究意义和实用价值。传统的水下图像增强算法在处理一些极限环境下的水下图像时存在局限性。
本文介绍了一种新的方法,在传统的水下图像增强算法的基础上,添加低光照图像增强算法,最终实现低照度水下图像增强。主要贡献如下:
(1)本文算法建立在融合原理的基础上,提出了白平衡算法融合Retinex理论的低照度水下图像增强方法。
(2)使用灰度世界对水下图像进行增强,消除了水下图像的蓝绿色调,在白平衡处理的基础上,对图像进行锐化处理,增强图像的细节。
(3)设计了一个亮度增强模块,该模块将经过白平衡处理的图像进行Gamma校正,对图像的亮度进行初步处理,再基于Retinex理论对图像进行分解,基于HSV颜色空间下对照度分量V进行增强,有效增强图像的亮度。
(4)设计了一个融合模块,提出基于拉普拉斯金字塔的多尺度融合策略进行融合增强,改善了图像颜色,提高了图像的亮度,更大化地保留了图像的细节信息。
(5)采用图像质量评价指标对实验结果进行评价,结合主观评价,证明了本文算法在低照度环境下对水下图像增强的优越性。
低照度图像增强比较具有代表性的算法有:传统算法、基于深度学习的算法、基于图像融合的算法。
用于图像增强的传统算法包括:直方图均衡化[1](Histogram Equalization,HE)、白平衡[2]、灰度边缘假设[3]、基于Retinex理论[4]的算法等。图像增强研究早期阶段,应用最多的是直方图均衡化,但是经过HE增强后的图像会出现过度增强、细节丢失、颜色失真等问题。为了解决这些问题, Banik等人[5]采用光照调整结合直方图均衡来增强不同类型的低照度图像,经颜色空间转换,即在HSV颜色空间下进行低照度图像增强。为了缓解对比度过度增强的现象,Reza等人[6-7]提出了限制对比度自适应直方图均衡化算法(Contrast Limited Adaptive Histogram Equalization,CLAHE),该算法的原理是裁剪直方图时添加了阈值,通过阈值限制裁剪。随后Chang等人[8]提出了自动对比度限制自适应直方图均衡算法,提升了对比度增强的效果,但该算法在处理低照度图像时,难以兼顾色彩和对比度,会导致颜色失真。综上,直方图均衡化算法可以对水下图像和低照度图像有效增强,但是处理结果在细节和颜色上还存在问题。
Retinex算法最先在1963年的时候被Edwin.H.Land提出,基于Retinex理论的增强方法包括单尺度Retinex理论(Single-Scale Retinx,SSR)[9]、多尺度Retinex理论(Multi-Scale Retinex,MSR)[10]、带有色彩恢复因子的多尺度Retinex理论(Multi-Scale Retinex with Color Restoration,MSRCR)[11]。Retinex是基于人类视觉系统的算法,它不仅可以调整图像的动态灰度范围,而且在细节上处理较好。基于Retinex理论的方法在水下图像和低照度图像增强方面效果有明显提升,但是这类算法容易产生光晕效应。
用于水下图像增强的神经网络主要为卷积神经网络和生成式对抗网络,常见的网络模型有:U-NET[12]、DehazeNet[13]、DenseNet[14]、RetinexNet[15]、Grid Network[16]、DCNN[17]、残差网络[18]等。基于传统算法的图像增强存在局限性,于是很多研究者开始使用卷积神经网络对低照度图像进行增强,提出了各种网络结构。由于基于Retinex的理论比较实用,一些网络结构融合了Retinex理论,这类算法的思路是通过训练好的网络模型提取出入射光,然后对其进行调整,接着根据Retinex模型计算出反射率,最后得到增强图像。Li C等人[24]提出了LNET算法,该算法就是结合Retinex理论对图像进行增强的。首先使用卷积神经网络估计光照图像,然后使用引导滤波优化光照图像,最后根据Retinex模型进行融合得到增强图像。随后Wang提出了一种端到端的可训练神经网络GLADNet[25]。该网络以低光照图像作为网络的输入,直接端到端地输出正常光照图。现有的基于卷积神经网络的低照度图像增强算法还有很多局限性,会导致增强后的图像不符合人眼视觉特性,缺乏鲁棒性。由于水下环境比较特殊,可用于研究的真实水下数据集较少,Li等人[27]建立了水下图像增强测试集(UIEB),基于此还提出了新的网络模型Water-Net,此网络采用UIEB数据集进行网络模型训练,该模型的水下图像增强性能优于大部分现有水下图像处理方法,但是对于一些特殊环境下的水下图像处理不是很好。
图像融合包括决策级融合、特征级融合、数据级融合(又叫像素级融合)。由于单一的传统算法处理效果不佳,Ancuti等人[19]第一次提出了一种基于融合的方法。该算法的思路是:首先,从输入图像中生成两幅用于融合的图像;然后,根据两幅待融合图像的对比度、显著特征和曝光量确定四个融合权重;最后,采用多尺度融合策略,将两幅图像和确定的权重进行融合,得到对比度增强和细节突出的增强图像。随后,Ancuti等人[20]在原有的实验步骤上进行了改进,提出了一种用于水下图像增强的颜色平衡与融合新方法。融合的思想随之深化,Dong等人[21]于2020年在U-Net架构上提出基于密集特征融合的多尺度增强去雾网络,提出的密集特征融合模块可以同时弥补高分辨率特征缺失的空间信息,从而达到图像去雾效果。以上基于融合的方法在低照度图像中得到很好的对比度增强效果,但是还是会出现细节丢失的问题。
本文在Ancuti提出的图像融合基础上,对现有的水下图像增强算法进行改进,提出一种新的可用于低光照环境下的水下图像增强算法。该算法主要包含颜色恢复、细节增强模块和亮度增强模块,将后面两个模块得到的图像作为融合模块的输入图像,以得到增强后的低照度水下图像。本文选取了UIEB数据集结合U45数据集作为实验数据,以验证本文算法的有效性。
水下图像成像的环境主要是海洋,海水的成分比较复杂,除了液态水外,还有很多杂质,包含多种悬浮粒子、细菌、浮游生物等。自然光源在照射海水时,因为水中悬浮粒子的存在,光线受悬浮粒子的影响在水下很容易发生散射,同时水体本身对光线具有一定的衰减特性,导致水下机器人采集到的水下图像对比度不佳。一些研究表明,水的衰减是光波长的复函数,因为水体对光具有散射和吸收作用,所以光线在海水中传输时的能量按指数规律迅速地衰减。影响海水衰减的比例显示,散射作用和吸收作用的比例是6∶4。
水下图像质量不佳表现为颜色失真、对比度低、细节模糊。水下图像呈现蓝绿色是因为光线的吸收和衰减作用,水下图像对比度低是因为光线后向散射作用,水下图像细节模糊是因为光线前向散射作用。水体对光的散射作用是水下图像质量不佳的主因子。另外,水体对自然光的散射作用主要是因为受到水体中悬浮粒子的影响。水下图像成像过程可参见Jaffe-McGlamery水下成像模型。
图1 Jaffe-McGlamery水下成像模型
图1反映了水下环境中光源、相机和物体之间的直接关系,水下图像总照度=直接衰减分量+前向散射分量+后向散射分量。直接衰减分量是指海水经过物体本身反射而未发生散射的光照;前向散射分量是指物体反射光到达相机的过程中射入悬浮粒子而发生小角度散射的光照;后向散射分量是指海洋环境的反射光经悬浮粒子散射后进入相机的光照。Jaffe-McGlamery水下图像成像模型可以用如下表达式表示:
I(x)=D(x)t(x)+B(1-t(x))
(1)
表达式中,I(x)表示相机拍摄的物体图像,D(x)表示物体自身光源,t(x)表示直接传输映射,B表示环境光,D(x)t(x)表示直接传输光,B(1-t(x))表示背景散射光。其中t(x)会受衰减效应的影响,公式如式(2)所示:
t(x)=e-βd
(2)
表达式(2)中,β表示衰减系数,d表示传输距离,可以看出直接传输映射与传输距离密切相关。光线的衰减在空气中和水下是不同的,在海洋环境下,光线是呈指数衰减的,相机距离物体的距离也得到了限制,所以图像成像的性能在水下环境是非常低的。
本文提出的算法主要包含了四个部分,分别是颜色恢复模块、细节增强模块、亮度增强模块、融合模块。算法设计如图2所示。
图2 本文算法框架
针对水下图像呈现蓝绿色调的特点,自适应地进行颜色补偿和颜色校正,这里选取了传统算法中的白平衡算法,考虑了大量现有的白平衡方法,并确定了有效又适合现存问题的解决方案,本文选取的是灰度世界算法。
水下图像经过颜色恢复模块,已经改善了整体颜色,为了保留图像的细节信息,在颜色恢复的图像基础上进行锐化处理,让图像细节更加突出。
在颜色恢复模块经过白平衡处理过的低照度水下图像会呈现亮度比较高的现象,需要对全局对比度进行调整,使用伽马校正对图像进行初步调整。接着基于Retinex理论对图像进行分解,分为照度分量和反射分量,本文重点对照度分量进行增强,将RGB颜色空间转变为HSV颜色空间,在HSV颜色空间下,对亮度通道V进行增强,对通道H和S进行归一化,通过此步骤得到亮度增强图像。
首先,从输入图像中生成两幅融合图像:input 1是原图经过白平衡和锐化处理得到的增强图像,input 2是原图经过亮度增强后的图像。然后,根据多尺度融合策略,定义图像的融合权重,这里主要包括拉普拉斯对比度权重(Laplacian contrast weight,Wl)、显著权重(Saliency weight,Ws)和饱和权重(Saturation weight,Wsat)。最后,根据多尺度融合策略,将两种图像和确定的权重进行融合,得到全局对比度和细节信息更好的增强图像。
为了描述图像在卷积和下采样操作中丢失的高频细节信息,人们定义了拉普拉斯金字塔。本文多尺度融合基于拉普拉斯金字塔,金字塔表示将图像分解为带通图像之和。实际中,金字塔每一层都对图像用参数为2的低通高斯滤波核进行滤波,从输入中减去一个高采样版本的低通图像,并用低通图像作为后续输入。然后,它从输入中减去低通图像的上采样版本,从而近似拉普拉斯(倒数),并使用抽取的低通图像作为金字塔后续级别的输入。形式上,使用G1表示一系列低通滤波和抽取,然后进行后续采样操作,我们将金字塔的级别定义如下:
I(x)=I(x)-G1{I(x)}+
G1{I(x)}≜L1{I(x)}+G1{I(x)}=
L1{I(x)}+G1{I(x)}-G2{I(x)}+
G2{I(x)}=L1{I(x)}+L2{I(x)}+
(3)
式(3)中L1和G1分别表示拉普拉斯金字塔和高斯金字塔的第一层,融合过程如图3所示。
图3 融合模块
本文使用公开的数据集进行实验,并选择在相同条件下与其他传统算法进行对比实验。我们对实验结果进行主观评价以及客观评价,另外还引入了视觉感知任务进行对比实验,根据观察和分析,实验效果比较好。
我们选取的是Li等人提出的UIEB[27]数据集,数据集中包括890张raw图像、890张reference图像和60张challenging图像,在测试时也选取了U45水下图像数据集中的相关图片。
为了证明水下图像处理方法的有效性和速度,通常需要借助水下质量评价指标来进行。图像质量评价的方式包括主观评价和客观评价。主观评价建立在个体参与图像质量评价的基础上,根据人眼观察来进行评价;而客观评价建立在选定的指标上。水下数据集可以分为两类,为参考图像数据集和无参考图像数据集,根据有无参考图像,客观评价又可以分为全参考评价和无参考评价。
全参考评价包括峰值信噪比(PSNR)、均方误差(MSE)、结构相似性(SSIM)[28]等。无参考评价包括基于人类视觉系统的水下图像质量评价度量(UIQM)[29]、水下彩色图像质量评价度量(UCIQE)[30]等。由于水下图像很难获取对应的参考图像,所以一般情况下都是采取无参考评价。表1根据测量分量和方式将UIQM和UCIQE算法进行对比。
表1 图像质量评价指标对比
在进行视觉效果分析时,本文所提出的算法与基于对比度约束的自适应直方图均衡(CLAHE)、带颜色恢复的Retinex(MSRCP)、自动白平衡(AWB)进行比较。图4中的图片来自UIEB数据集,第一列为输入水下原始图像,后四列分别为不同算法增强结果。通过人眼观察图4可以看到,本文算法不仅还原了水下图像的颜色,而且提高了图像的整体亮度,水下图像细节更加明显。图5是在图4基础上进行了细节放大处理,根据鱼的眼睛和岩石可以看出本文算法在细节上处理效果最佳。
图4 UIEB图像不同算法效果图对比
图6中的图片来自U45数据集,第一列为原图,图像中主要包含了水下海胆和扇贝。和传统的水下增强算法对比,本文算法有效去除了水体绿色。图7是放大细节图,通过观察扇贝和水下人像衣服,可以明显看到图像细节。
将本文所提算法和其他算法使用不同指标进行比较。我们使用水下图像质量测量指标(Underwater Image Quality Measure, UIQM)和水下彩色图像质量评价指标(Undewater Color Image Quality Evaluation,UCIQE)对各个算法的测试结果进行了定量比较。UIQM代表水下图像质量指标,它只需要一张图像,是一个非参考评价指标,更适合用于开放的水下任务。UIQM 的评价分为三部分,即图像颜色指标(UICM)、清晰度指标(UISM) 和对比度指标(UIConM),ULQM的值为三部分指标线性之和,其值越大,表示图像的颜色平衡、清晰度、对比度越佳。UCIQE是利用色度、饱和度和对比度的线性组合进行定量评估,分别量化不均匀的偏色、模糊和低对比度,其值也为三部分指标之和。
图5 UIEB图像不同算法细节图对比
图6 U45图像不同算法效果图对比
图7 U45图像不同算法细节图对比
表2为各种算法在测试集上的比较结果,我们选取了基于对比度限制的直方图均衡化算法(CLAHE)、带色彩恢复的多尺度视网膜增强算法(MSRCP)、自动白平衡算法(AWB)和水下参考图像与本文算法进行比较,从以下两个评价指标进行图像质量的评价。从表2中可以看到:本文算法在UIQM和UCIQE评价指标上均优于其他对比算法,这说明本文算法能有效增强图像,和主观评价结果相一致。
表2 不同水下图像增强算法在测试集上的定量比较
将水下图像进行增强是为了使水下机器人进行目标检测作业时更加容易,增强图像的对比度和亮度有利于提高水下机器人的视觉感知能力,本文利用图像特征点匹配来证明算法的效果。
这里选取的图像为U45水下数据集中编号为5和6的图像,图像中包含了海胆和扇贝等信息。采用不同的算法进行图像特征点匹配,图8是算法对比效果,图8(e)中海胆和扇贝的匹配线段最多,可以看出本文算法处理效果比较好。
可以看到图8(c)和力学8(e)中的特征点匹配数都较多,表3将几组图像特征点匹配对数进行展示,从而通过主观观察结合客观指标反映了本文算法的优势。
(c)MSRCP增强图像
(d)AWB增强图像
(e) 本文算法增强图像
表3 图像特征点匹配对数对比
本文算法不仅很好地解决了水下图像呈现蓝绿色的问题,而且增强了图像的整体亮度,大量实验结果表明,该算法可以获得高质量的水下图像,在视觉感知任务中表现良好。根据图像质量评价指标显示,本文算法在UIQM指标达到了1.1304,UCIQE指标达到了0.4295,都优于传统算法。未来,我们将考虑融合Retinex理论与深度学习方法对低照度水下图像进行增强。