1. 引言
在实际生活中,夜间拍摄是不可避免的。在夜间光照条件下,光线来源复杂,强度参差不齐,造成了图像的总体亮度偏弱,成像质量差,缺乏足够的色彩,从而造成了对影像的准确判别。为此,越来越多的研究人员投入到图像增强工作中,针对低照度图像的特点,提出不同的算法以提升图像的亮度、对比度、饱和度、细节,消除噪声的影响以及矫正出现的色彩偏差等等。不少犯罪分子选择在夜间进行违法活动,为了打击违法犯罪,同时为了更好地进行人脸识别、行为识别、刑侦分析、信息检索、车牌识别,对低照度图像增强的研究具有重要的现实意义。
在此之前,大量的传统低照度图像增强算法已被提出,主要包括色调映射、背景融合、直方图均衡化、模型四类算法 [1] [2] [3] [4] [5]。色调映射技术产生于20世纪90年代,该算法就是为了使图像真实地出现在显示器上而生。此外,另一种常用的处理方法是直方图均衡化,经过统计我们发现低照度图像灰度直方图往往集中在灰度值较小的区域,该方法就是通过某种函数将整体图像的灰度值范围拓展,达到提高图像清晰度的目的。2005年,李江等人提出了一种基于背景融合的低照度图像增强技术,该方法利用在相同地点的普通光照条件下,将低照度图像的亮度与普通照度图像进行融合,从而达到提高亮度的目的。在20世纪60年代,Edwin. H. Land提出Retinex理论,通过模仿人类视觉系统发展了Retinex算法,该理论以色感一致性为基础,认为人类眼睛所看到的对象的色彩和亮度是由对象在各种波长上的反射率决定的,而与照明的强弱没有关系。暗通道先验算法早期被用于图像去雾,后来有人将低照度图像灰度直方图进行反转,得到的反转后的低照度图像灰度直方图与雾天图像灰度直方图近似,因此可以先对灰度直方图反转后的图像使用算法进行去雾处理,再进行翻转可以间接实现图像增强。
近年来,随着深度学习的快速发展,Lore等人 [6] 在2017年提出了一种利用深度学习进行图像增强的算法LLNet,它能够从低光照的图像中辨识出信号的特性,并不对高动态范围图像中较亮区域进行过度放大,实验表明基于合成数据训练的自编码器能够去噪并对图像进行增强。在2018年,Wei等人 [7] 提出Retinex-Net网络,该网络利用不同光照强度的图像反射率保持不变这一特性让正常/低光照图像对共享反射率,然后整体结构使用分解网络和调整网络,最终在自己搜集制作的数据集上实验得到良好的效果。受到Retinex-Net算法启发,Zhang等人设计了KinDNet [8],该算法与Retinex-Net算法类似,同样采用分阶段模式,包括图像分解、光照图调整、反射图恢复三个模块,实验表明增强效果表现良好。2018年,Jiang等人 [9] 提出了基于生成对抗网络的EnlightenGAN算法引入不成对的学习来训练光照增强模型,使用全局–局部鉴别器和自正则注意力机制对模型进行训练,和之前的深度学习算法有所不同的是,那些都需要配对的图像数据对模型训练,该算法是无监督的不需要成对的数据,减小了合成数据集对于实验的影响。
虽然上述的这些方法在一定程度上能较好地实现低光照图像增强,但是仍存在一些问题。对于Retinex-Net算法,噪声与光照强度有很大关系,因此,在图像中较暗区域的噪声要多于亮区域的。使用Retinex-Net算法对图像增强有一定的效果,但是也会出现噪声大、图像亮度增强不足、图像色彩出现偏差的问题 [10]。因此,为了解决此算法存在的问题,在Retinex-Net基础上进行改进,以提高算法的实际效果。
2. 改进的Retinex-Net网络结构
Retinex-Net最初是由Wei等人提出的一种基于端对端有监督学习的低光图像增强网络,该算法在Retinex理论的基础上,使用卷积神经网络(Convolutional Neural Network, CNN)对图像进行增强。Retinex理论以物体具有颜色恒常性为基础,物体的颜色亮度只和物体在各种波长的反射率有关,因此要排除光照强度的影响。将观测到的图像可以分解为反射和照度两部分,那么它可以表示为公式(1),其中,S代表原图像,R代表反射分量,I代表光照分量,
代表逐项素乘积。
(1)
为此,去除光照分量的影响可得到增强后的图像。Retinex-Net模型利用CNN特征提取的优势,通过端到端的学习,输入大量不同场景的正常/低光图像对进行模型训练,使得增强后的图像越来越接近正常光照图像并提高模型泛化能力。
Retinex-Net模型由两个相互分离的子网组成:分解网和调整网 [11]。首先,在分解网络中通过数据训练的方式,分别将正常/低光照图像对分解为反射分量和照度分量两个部分。然后将低照度图像的反射分量
和照度分量
作为输入进入调整网络中,分别进行反射分量去噪和照度分量增强操作。最后,将调整后的反射分量和照度分量重构得到增强图像。改进的Retinex-Net网络结构图如图1所示。

Figure 1. Improved Retinex-Net network structure diagram
图1. 改进的Retinex-Net网络结构图
2.1. 分解网络
在分解模块中,将正常/低光照图像对作为分解网络的输入。首先通过卷积提取图像的特征,然后经过5个以ReLU作为激活函数的卷积层变换图像的尺度,分别学习反射分量和照度分量的特征。接着利用卷积将特征映射成
和
[12] [13]。其中,根据Retinex理论图像反射率保持一致,低照度图像和正常图像之间共享权值。最后的激活函数由原本的Sigmoid变为LeakyReLU [14],可以解决Sigmoid函数产生梯度消失以及大量运算耗时长的问题,同时避免了ReLU函数对于小于0的值,神经元无效的问题。LeakyReLU函数定义如公式(2)所示。
(2)
分解网络的损失函数
沿用原算法的损失,包括重建损失
、不变反射率损失
以及平滑度损失
三个部分 [7]。
、
分别为
和
的权重系数。在L1、L2范数的选择方面,由于L2范数对图像质量的感知和人眼感知相关性不足,训练过程会出现局部最小值,因此使用L1范数进行约束。通过分解网络输出的低光照反射图
和正常光照反射图
与光照图结合可以形成新的图像,则分解网络损失函数
如公式(3)和重构损失
如公式(4)所示。
(3)
(4)
共享反射率损失
用来约束反射率的一致性,
采用结构感知平滑损失。良好的光照图要同时具备一致性和结构完整性,不但在细节上要保持光滑,而且结构的边界也要得到保留。
将反射分量的梯度项作为权重,在梯度项变化较大的区域,图像中的光照会出现不连续的现象,
能够保证光照图的亮度平滑,进而保证图像结构信息的完整。最终
、
如公式(5)、(6)所示。
(5)
(6)
在
中
代表梯度,
表示平衡结构感知系数。权重为
时,结构感知损失放宽了对应反射率梯度较陡的平滑度的约束。
2.2. 调整网络
在调整网络中,增强网络整体采用编解码的结构。首先,将
作为输入,通过一系列由卷积和LReLU激活函数组成的下采样块进行下采样得到小尺度特征图,此时看到大规模的光照信息。然后借助大规模的光照信息,通过上采样调整特征图尺度的大小,重建局部的光照分布。上采样部分由最近邻插值和卷积操作构成。接着将特征图进行拼接并与最终尺寸的特征图相连。最后,先将特征图通道降为3通道,然后通过卷积重建出增强后的光照分量 [15]。对于反射图存在的噪声,采用BM3D算法对图像进行去噪处理。
调整网络与分解网络相互独立,其是基于局部一致性和结构感知性的假设。调整网络的损失由增强图像重构损失、结构感知损失和颜色损失三部分构成,调整网络损失
如公式(7)和增强图像重构损失
如公式(8)所示。
(7)
(8)
为增强图像的重构损失,
为正常图像照度分量,
为增强后的照度分量,
表示
的梯度值,
表示
的梯度值。颜色损失
如公式(9)所示。
(9)
颜色损失
[16] 是用来衡量增强图像和正常图像之间的颜色差异。考虑到人眼对颜色的变化不敏感,因此使用高斯核处理图像之后再进行度量颜色损失。对增强后的图像使用高斯模糊操作能够去掉边缘细节纹理等高频信息,剩下能作为比较的颜色信息。最后计算两者之间的均方误差。其中,F(x)为高斯模糊操作,
为增强后的图像,
为正常照度的图像。
3. 实验及结果
3.1. 数据集和实验环境
本实验采用LOL数据集对网络进行训练。共包含500对正常/低光图像,使用485对图像进行训练,15张图像用于测试。在训练过程中,patchsize设置为16,优化器为Adam。分解网络中
,
,
,增强网络中
,epoch为200。
本实验的操作系统为Windows,深度学习框架采用PyTorch,处理器为Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz,显卡NVIDIA GeForceGTX 1060 GPU。
3.2. 评价指标
对于图像质量的评估,本文采用峰值信噪比(Peak Signal-to-Noise Ratio, PSNR)和结构相似性(Structural Similarity, SSIM)两个指标进行量化评价。PSNR是一种利用相应的像素点间的偏差来评估图像品质的方法。PSNR的值越大,说明图像失真越少,图像效果也更佳。SSIM是一种定量描述两个图形结构相似度的指数,它是利用人的眼睛在视觉范围内获得的结构特征进行比对,分别从结构、亮度和对比度三个角度进行比较。SSIM的值最小为0,图像失真最严重,最大值为1表示图像没有失真,图像相似度高。
3.3. 实验分析
通过实验,将改进的Retinex-Net算法与Retinex-Net算法分别进行定性定量比较。通过实验结果可以看出,利用本文算法在PSNR和SSIM两个指标的表现均优于Retinex-Net,这说明本文改进算法的有效性。通过配对的图像之间建立映射关系,低照度图像学习正常光照的全局信息,达到增强亮度的目的。实验评价指标对比结果如表1所示。

Table 1. Image evaluation index comparison
表1. 图像评价指标对比
此外,通过对比图2可以发现改进算法增强后的图像颜色恢复更好,图像失真有所减少,说明加入的颜色损失的有效性。该算法在Retinex-Net基础上保留图像丰富的信息,提高增强亮度,减少颜色偏差,更加符合人眼的视觉系统。
4. 结论
针对Retinex-Net算法现存的一些问题,本文在Retinex-Net基础上提出改进的算法。该算法在分解网络中使用LeakyReLU激活函数,在增强网络中使用跳跃连接,强制网络学习残差,并加入颜色损失。将本算法与Retinex-Net算法结果进行对比,通过人的主观视觉感受可以看到改进算法增强效果更好,图像色彩偏差有所改善,对比PSNR和SSIM两个指标也均有所提升。本文算法较好地提升了图像增强的亮度,但仍存在图像噪声的问题。在之后的研究中,考虑如何兼顾亮度增强和降低分解过程产生的噪声问题,给未来图像多属性增强提供发展思路。

Figure 2. Algorithm enhancement rendering comparison
图2. 算法增强效果图对比
NOTES
*通讯作者。