无人船环境感知算法依赖高质量图像,如果观感器获取的图像质量不佳,会给后续的高级视觉任务产生严重的影响。在实际应用过程中,光电传感器所获取的图像会受到环境能见度、目标背景光谱对比度和天气状况等因素影响。图像对比度为图像中明暗区域最亮的白和最暗的黑之间不同亮度层级的差距[1],在海面常见的雨、雾和低照度等环境条件下,光电传感器捕获的图像较暗,对比度较低,导致图像质量退化[2],对后续的高级视觉任务造成不利影响。因此本文将对上述问题产生的图像退化现象进行低对比度图像增强技术的研究。
针对低对比度图像增强技术的需求,本文研究MSR(Multi-Scale Retinex)图像增强算法。由于MSR模型参数是人工设置的(一般为高斯核),没有依赖实际的退化图像数据,因此算法对图像的增强程度具有局限性。针对上述问题,本文提出一种基于卷积神经网络的MSSEN(Multi-Scale Squeeze and Excitation Networks)模型来进行低对比度图像增强。首先,根据MSR的结构,利用inception(多尺度特征图)模块[3]与res-block(残差块)模块[4]构建MSRN(Multi-Scale Retinex Networks)。其次,增加了多尺度模块滤波器的尺度多样性,使得算法从图像的局部到全局都可以有更佳的增强效果。最后,对不同尺度的滤波器引入通道级的视觉注意力机制技术,使得算法主动筛选出更佳的滤波器,从而达到更好的图像增强效果。训练好的MSSEN既可以单独处理对比度图像,也可以后续接入高级视觉任务的网络,2个网络共享权重,进行参数微调之后便可以端到端的在低对比度图像上进行高级视觉任务。
1 基本理论 1.1 基于Retinex理论的低对比度水面图像增强原理对比度指图像灰度反差的大小,其受入射光影响[1]。Retinex理论认为图像可以分解为入射光部分与反射光部分[5],如图1所示。
上述的Retinex成像原理将入射部分与反射部分分离开建模,可表示为:
$ I(x,y) = R(x,y) \cdot L(x,y)。$ | (1) |
其中:
$ r(x,y) = \log R(x,y) = \log \frac{{I(x,y)}}{{L(x,y)}}。$ | (2) |
式中,
根据单尺度Retinex(SSR)理论,可利用中心环绕函数辅助求解,其公式转化为:
$ R(x,y) = \log I(x,y) - \log [F(x,y) * I(x,y)]。$ | (3) |
这里
$ F(x,y) = \lambda {e^{ - \frac{{{x^2} + {y^2}}}{{2{\sigma ^2}}}}}。$ | (4) |
式中:
$ \iint {F(x,y){\rm{d}}x{\rm{d}}y = 1}。$ | (5) |
由以上公式可以分析出,SSR算法中通过高斯核与入射图像的卷积运算,计算像素点与其邻域加权平均的作用,估计图像中光照强度的变化程度。同时去掉
$ R(x,y) = \log I(x,y) - \log [F(x,y)] * I(x,y)。$ | (6) |
中心环绕函数
多尺度Retinex(MSR)算法基于SSR发展而来,其在实现颜色恒常性的色彩增强的同时,也能够提升图像信噪比、抑制背景干扰。MSR具体可表示成多个SSR算子的加权和:
$ {R_{{\text{MS}}{{\text{R}}_i}}} = \sum\limits_{n = 1}^N {{\omega _n}{R_{{n_i}}}}。$ | (7) |
式中:
$ {R_{{\text{MS}}{{\text{R}}_i}}} = \frac{1}{3}\sum\limits_{n = 1}^3 {\left\{ {\log {I_i}(x,y) - \left[ {\log {I_i}(x,y)} \right]*{F_n}(x,y)} \right\}}。$ | (8) |
将不同的高斯环绕函数
$ {R_{{\text{MS}}{{\text{R}}_i}}} = \log {I_i}(x,y) - \frac{1}{3}\log {I_i}(x,y)*\left[ {\sum\limits_{n = 1}^3 {{\lambda _n}{e^{ - \frac{{{x^2} + {y^2}}}{{2{\sigma _n}^2}}}}} } \right]。$ | (9) |
由式 (9) 可知,只需设置好高斯环绕函数的参数,便可进行图像增强计算。整个MSR算法流程如图2所示。
MSR算法采用多尺度结构,其中的高斯环绕函数的参数是人工设置的。监督学习通过误差反向传播技术[6]能够很好地指导模型参数进行学习。鉴于此,本文提出了多尺度知识抽取网络(Multi-Scale Squeeze and Excitation Networks,MSSEN), 使得模型参数可以从大量数据中自动学习。MSEEN提升了网络抽取图像特征的能力,使得模型能够更好地对低对比度水面图像进行增强。
图3展示了MSSEN的整体结构,MSSEN是一个能进行端到端训练的全卷积网络,它主要由MSRN、IEM与SRM串联而成。
1)MSRN
对于MSRN模型,由于初始的MSR算法采用3个不同尺度的高斯环绕函数,本文也采用3种不同尺度的卷积核,其感受野从小到大设置为
$ MSFEM = \sum\limits_{n = 1}^N {SS{R_n}\left( X \right)} 。$ | (14) |
多尺度的并行特征抽取结构使得模型能够提取到不同尺度的局部图像的特性细节。MSFEM卷积核感受野尺度
$ k = 2s + 1,\;\;{s_{{\text{low}}}} \leqslant s \leqslant {s_{{\text{up}}}}。$ | (15) |
式中:
每个尺度通过一层卷积层完成特征抽取,输出通道数为16的特征图,进入下一个模块。
2)IEM
特征重要性抽取模块,引入SENet[7]中通道级的注意力机制,给不同尺度的特征图以及不同通道特征进行权重的重新分配。
在MSR算法中,对3个不同尺度的高斯环绕函数结果采用平均加权的策略,后来改进的带颜色恢复的MSR算法中提出了颜色恢复因子来调节不同色彩通道的权重比例,公式为:
$ {R_{{\text{MSRC}}{{\text{R}}_i}}}\left( {x,y} \right) = {c_i}\left( {x,y} \right){R_{{\text{MS}}{{\text{R}}_i}}}\left( {x,y} \right) ,$ | (16) |
式中,
因此,改进在MSR中对每个通道进行平均加权的方法,对每个尺度输出的特征图进行特征通道级的注意力机制计算,为每个特征通道分配权重,使得网络能够学习到不同通道的重要程度,如图4所示。
首先是进行知识嵌入的操作,从输入的特征图
$ {{\boldsymbol{z}}_c} = F\left( {{u_c}} \right) = \frac{1}{{W \times H}}\sum\limits_{i = 1}^W {\sum\limits_{j = 1}^H {{u_c}\left( {i,j} \right)} } 。$ | (17) |
式中:
式 (13) 将
获得特征向量
$ s = F\left( {z,W} \right) = \sigma \left( {{W_2}\delta \left( {{W_1}z} \right)} \right) 。$ | (18) |
式中:
学习出权重系数向量
$ {u'_c} = {s_c} \cdot {u_c} 。$ | (19) |
式中:
3)SRM
特征转化与残差模块作用为减少特征图通道并将其恢复到RGB颜色空间。由于图像增强任务是点对点(point-to-point)的回归,采用3层编解码(encode-deconde)结构[9]来提升网络性能。
最后引入的残差结构,可从两方面阐述其意义。首先,残差模块可以减缓梯度消失的程度,使得网络参数更容易学习。其次,如果去掉残差模块,网络估计的是增强后的图像,损失函数如下:
$ L{{o}}ss = \frac{1}{N}\sum\limits_{i = 1}^N {\left\| {{f_1}\left( {{X_i}} \right) - {Y_i}} \right\|_F^2 + \lambda \left\| W \right\|_F^2}。$ | (20) |
式中:
根据Retinex理论,观测图像由物体的反射部分与入射图像组成。加入残差模块,损失函数如下:
$ L{{o}}ss = \frac{1}{N}\sum\limits_{i = 1}^N {\left\| {\left( {{X_i} - {f_2}\left( {{X_i}} \right)} \right) - {Y_i}} \right\|_F^2 + \lambda \left\| W \right\|_F^2}。$ | (21) |
2个损失函数的差异在于均方根误差MSE函数中,
水面目标的检测、识别与跟踪是无人船自主巡航时需要完成的最核心任务。在海面常见的雨、雾和低照度等环境条件下,光电传感器捕获的图像较暗,对比度较低,导致图像质量退化,对后续的高级视觉任务造成不利影响。此时,增强算法处理后的图像是为后续的高级视觉任务服务,本文提出的MSSEN模型是端到端的神经网络模型。因此,可以作为一个模块与高级视觉任务(如目标检测识别)的神经网络相结合,共享参数,端到端的处理低对比度环境下水面目标的检测识别任务。
如图5所示,首先训练好低对比度图像增强的网络MSSEN,然后训练目标检测识别的网络。最后用两部分预训练权重初始化2个网络组合成的网络参数,然后用检测识别任务的损失函数作为监督进行训练,减小参数更新的学习率,进行参数微调。
为了对MSSEN模型进行监督训练,需低对比度图像(样本)与高质量图像(标签)的配对图像组合,由于没有这种类型的公开数据集,本文生成一个用于低对比度增强任务的数据集。从BSD数据集[10]与UCID数据集[11]中采集水面图像,并且结合从网络中收集一些高质量图像作为标签,然后为上述每一张图像生成与其对应的低对比度图像。首先,将图像转换到HSV空间,并且将V通道的值乘上一个范围在0.3~1之间的随机缩放因子;然后对图像进行伽马变换(Gamma Transform),变换参数Gamma值在1~3的范围中随机选取。由上述方式一共生成5372对样本对,如图6所示。
实验环境为64位的Linux(Ubuntu16.04)系统,Inter酷睿i7-7700K处理器,32 GB内存,Nvidia GTX GeForce 1080显卡,8 GB显存。
在MSSEN模型中,采用Adam优化器[12]更新网络参数,一个批次16个样本,学习率初始化为
图7展示了本文提出的MSEEN算法与MSR算法分别在图像增强数据集中与实拍图像中的低对比度图像增强实验的效果对比。可以看出,MSR算法在一定程度上提升了图像对比度,但存在着涂抹感严重,图像边缘不分明的情况。本文提出的基于卷积网络的图像增强算法不仅提升了图像对比度,而且能使得增强后的图像更接近真实图像。相比之下,MSEEN模型在色彩、饱和度等视觉观感上都显得更加自然,其边缘与纹理等结构信息也更加清晰。
除了视觉上主观的对比,本文还采用峰值信噪比(PSNR)与结构相似性(SSIM)2个图像恢复指标对不同算法的效果进行量化,在测试集上计算这2个指标,然后取平均值记录在表1中。在2个指标中本文提出的MSEEN模型都取得了最高分,说明经过MSEEN算法增强后的低对比度图像能够最大程度消除背景噪声,保留有效信息。同时,具有高信噪比的图像有利于进行图像检测识别任务[13]。
无人船的环境感知模块中加入低对比度增强算法的意图是为后续的高级视觉任务输出高质量图像,以提升高级视觉任务算法的性能。因此,评价低对比度图像增强算法不仅需要从输出的图像质量方面进行比较,也可从图像增强对高级任务带来的提升方面进行比较。
表2为检测算法作用于不同低对比度图像增强算法增强测试集后得到的mAP。实验结果表明,在低对比度成像环境中,本文提出的MSSEN模型能为后续高级视觉任务的提升带来较大贡献。独立2个网络的权重直接结合使用存在局限,而采用2个网络的权重作为参数初始化,再进行微调训练,使得2个网络的权重相互作用,算法性能进一步提升,更加接近高质量成像环境下的算法性能。
本文针对无人船视觉任务中遇到的低对比度成像环境问题进行探讨并提出解决方案,首先探讨了MSR算法的理论与一些不足,然后利用卷积网络重构MSR算法,提出MSRN模块,使得MSR算法的参数能够自适应学习。随后,提出MSSEN模型,引入视觉注意力机制与编解码结构等,这些改进使得提出的MSSEN模型能有效利用卷积计算的信息,提升了网络抽取特征的性能,并且在模型训练时易于收敛。通过大量实验验证,提出的MSSEN模型能有效增强低对比度图像,使其不但在视觉观感上更加接近没有退化的高质量图像,而且在PSNR与SSIM等量化指标上取得不错的表现。除此之外,基于提出的图像增强网络,提出了一种低级视觉任务与高级视觉任务结合的模式,使得低对比度图像增强与检测识别任务能够端到端的训练并运行,提升了整个算法的性能与效率。
[1] |
王俊平, 李锦. 图像对比度增强研究的进展[J]. 电子科技, 2013, 26(5): 160-165. WANG J P, LI J. Research progress of image contrast enhancement[J]. Electronic Science and Technology, 2013, 26(5): 160-165. DOI:10.16180/j.cnki.issn1007-7820.2013.05.045 |
[2] |
李力, 金伟其, 黄有为, 等. 一种低对比度可见光超视距成像的实时图像增强方法[J]. 兵工学报, 2010, 31(2): 242-247. LI L, JIN W Q, HUANG Y W, et al. A real-time image enhancement method for low-contrast visible light over-the-horizon imaging[J]. Journal of Military Engineering, 2010, 31(2): 242-247. |
[3] |
SZEGEDY C, LIU W, JIA Y, et al. Going deeper with convolutions[C]// Boston: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2015: 1–9.
|
[4] |
HE K, ZHANG X, REN S, et al. Deep residual learning for image recognition[C]// Las Vegas: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2016: 770–778.
|
[5] |
LAND, EDWIN H. The retinex theory of color vision[J]. Scientific American, 1977, 237(6): 108-128. DOI:10.1038/scientificamerican1277-108 |
[6] |
RUMELHART D E, HINTON G E, WILLIAMS R J. Learning representations by back-propagating errors[J]. Nature, 1986, 323(6088): 533-536. DOI:10.1038/323533a0 |
[7] |
HU J, SHEN L, SUN G. Squeeze-and-excitation networks[C]// Salt Lake City: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2018: 7132–7141.
|
[8] |
SIMONYAN K, ZISSERMAN A. Very deep convolutional networks for large-scale image recognition[J]. Computer Science, 2014.
|
[9] |
LONG J, SHELHAMER E, DARRELL T. Fully convolutional networks for semantic segmentation[C]// Boston: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2015: 3431–3440.
|
[10] |
MALIK J. Contour detection and hierarchical image segmentation[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2011, 33(5): 898-916. |
[11] |
GERALD SCHAEFER M S. UCID - an uncompressed colour image database[J]. Storage & Retrieval Methods & Applications for Multimedia, 2003. |
[12] |
KINGMA D P, BA J. Adam: a method for stochastic optimization[J]. Computer Science, 2014.
|
[13] |
苏正青, 马巧梅. 基于卷积神经网络的交通标志模糊影像识别[J]. 计算机仿真, 2020, 37(1): 117-120. SU Z Q, MA Q M. Traffic sign blurred image recognition based on convolutional neural network[J]. Computer Simulation, 2020, 37(1): 117-120. DOI:10.3969/j.issn.1006-9348.2020.01.024 |