杨微,姚冰莹,朱晓凤
(广州大学华软软件学院软件工程系,广州 510990)
随着技术的进步,高质量的图像采集设备获取的图像分辨率能够更高,获取的图像质量能够更好,但是实际获取图像的质量除取决于图像采集设备之外,有一个关键影响因素——光线。现实中,良好的光线有助于获得高质量的图像,相反光线不好会导致图像成像出现亮度低、图像模糊、对比度低、伪影、颜色失真等整体质量偏低的情况。一般将图像成像过程中,由于周围环境光照强度不足或是照射到物体上的光线不均匀等情况采集的图像称为低照度图像,例如逆光图像成像、夜间图像成像、光线遮挡的非一致光照图像成像、雾天等光线不足的图像成像等。图像或视频影像是计算机视觉任务的输入,如“无人驾驶”、“医疗影像诊断”、“工业视觉”、“图像检索”、“图像识别”“视频内容理解”等多个视觉应用领域,主要任务就是通过对采集的图片或视频进行处理以进一步完成相应的视觉任务,高质量的图像是计算机视觉任务处理获得更好结果的重要保证[15]。因此,对获取的低照度图像执行增强处理是计算机视觉研究领域的一个重要领域,低照度图像增强也被广泛应用于各类计算机视觉任务的预处理中。
低照度图像增强是针对照明不足的图像存在的低亮度、低对比度、噪声、伪影等问题进行处理,将原来不清晰的图像变得清晰或者强调某些感兴趣的特征,改善图像质量、丰富图像信息量,提高采集图像的视觉质量,使得增强后的图像利于后续的分析处理。低照度图像增强对其进行数学建模,如公式(1)所示:
通常处理图像一般是空间二维数字图像,(x,y) 表示空间位置,S(x,y)表示像素值,c 指图像不同的通道(R、G、B)。公式(1)中,S表示原始低照度图像,S~ 表示经过低照度增强处理后的图像,T表示低照度图像增强处理操作。低照度图像增强技术包括直方图均衡化(HE)及其系列算法[19,27,30],通过累积分布函数映射变换图像直方图,拉伸了图像灰度的动态范围,适合处理整体灰度较均匀偏低的图像,处理后对比度得到增强,但对非均匀图像中亮度区域存在过曝光现象;基于非线性变换的算法,通过非线性变换函数对图像各个像素点执行变换操作,增强图像亮度,如伽马变换、对数变换,常和其他算法结合使用作为图像增强的后处理[9,16,30];基于去雾模型算法[28-29],依据反转后图像和带雾图像的相似性,使用去雾算法处理反转后的图像再反转得到增强图像。
1963 年E.Land 研究人类视觉系统发现人类视觉系统能够在各种不同的照明条件下实际识别和匹配颜色,物体的颜色是由物体构成反射不同光照的能力决定的,与光密度关系不大,这一特性通常被称为颜色恒常性现象[1],基于该特性提出视网膜皮层(Retinex)理论。Horn 等人[2]基于人眼感知到的物体的亮度和色彩是由环境的照度和物体对表面的反射光决定的思想,将Retinex 理论用照明-反射Retinex 模型来表征,即观察图像可以表达为反射图和光照图L两部分按像素乘*作用得到,并运用该理论到低照度图像处理中。Retinex 模型如公式(2)所示,S为观察图像,R是由反射图,L为光照图,*为像素乘。
当光照不理想时就会导致低照度成像的噪声、整体灰度暗、对比度清晰度不足等问题,基于Retinex 模型低照度图像增强建模如公式(3)所示,T 指基于Retinex 模型的低照度图像增强算法,随着Retinex 理论的不断发展,基于Retinex 理论的低照度图像增强技术分支凸显其旺盛的生命力,吸引了众多相关领域的研究者,出现了系列的“基于Retinex 理论的低照度图像增强算法”。本文在对研究问题分析的基础上,对基于Retinex 理论的低照度图像增强主要技术分支进行研究,最后给出基于Retinex 的低照度图像增强未来发展方向的分析。
基于Retinex 模型,研究者认为图像的本质是“反射图”,提出“光照图”去除图像增强算法,即从低照度图像S中估计“光照图”并通过运算去除它,得到图像本质“反射图”为增强后的图像S~(S~=S÷L)。基于Retinex 理论从观察图像S中估计L分离出R是不适定问题,光照图估计都是不完全准确的,低照度图像增强就转换成如何更准确从S中估计L并分离得到R的问题。研究者通过log 运算将除法(S~=S÷L)运算变为减法运算(logS~=logS-logL)完成S中L和R的分离。如图1 所示,S表示输入图像,s为Log 变换后图像,l为估计得到光照图,r 和R 分别表示Log 变换后反射图及EXP 变换后的反射图。
图1 “光照图”去除图像增强
围绕光照图估计研究者提出多种策略,包括基于路径思想(path-based)[33]、基于偏微分方程思想(PDE-based)[32]、基于中心环绕思想(center/surround)[4-6]。其中“中心环绕”思想最经典,将图像与具有“径向递减”特性的径向基函数(RBF)为核做卷积运算估算光照图[3],不同核函数得到不同算法和性能,代表算法是单尺度Retinex 算法(SSR)及其改进算法。1997 年 Jobson 提出单尺度Retinex 算法(SSR)[4],认为光照图代表了图像中的低频分量,具有空间平滑的特性,以高斯环绕函数F(x,y)作为低通滤波进行光照图估计核函数。如公式(4-6)所示:r(x,y)表示log 变换后的反射图,F(x,y)为高斯核函数,c为高斯函数的标准变差,取值大小对图像增强的效果影响关键,K 为使得F(x,y)满足公式6的值。
单尺度SSR 算法图处理细节增强和颜色保真受c选择影响且两者矛盾,Jobson 等人基于SSR 提出基于线性加权平均的折中策略—多尺度Retinex 算法(MSR)[5],通过对不同尺度核处理的结果进行加权求和,平衡不同尺度的c对颜色保真和细节增强的综合效果,如公式(7)所示。为了缓解不加区别处理彩色图像R、G、B 三个通道导致增强图像色彩失真,Jobson 等人进一步提出MSRCR 算法[6],通过引入色彩恢复因子等一系列参数确保增强图像的色彩保真度更好。
单尺度Retinex 算法及其改进系列算法基于全局光照变化平滑的假设与图像由于自身结构光照图实际是分段光滑的事实不一致,导致处理后的增强图像常出现光晕(holo)现象。文献[22-23]采用双边滤波器作为核函数替代高斯滤波器,同时考虑领域的距离和像素变化情况,符合光照平滑特性同时更好地保护图像边缘结构。He 等人提出一种局部线性滤波器[24],平滑图像和保留边缘的同时能够一定程度上保留图像细节信息,后方帅等人在文献[24]研究基础上提出一种基于两次图像引导滤波的Retinex 算法,通过实验证明能有效抑制图像伪影[25]。
基于“光照图”去除图像增强算法能够在一定程度上增强图像,但忽略了光照图对图像自然度及纹理细节保持的作用,导致图像丢失纹理细节;没有考虑图像反射率为[0,1]的范围的事实,导致增强图像出现过增强等不自然的情况。
“光照图”反映图像低频部分与图像的全局特征相关,也是图像自然保持度的重要因素,基于“光照图去除”思想只保留反射图会导致增强的图像出现过增强、光晕、颜色失真、图像场景失真等非自然现象[7-8]。基于此研究学者提出“光照图”改善Retinex 模型低照度图像增强,认为好的光照图低照度图像增强的关键,通过直接或设计算法估计得到初始光照图Linit,对Linit执行增强处理后得到Lfinal后与反射图R得到增强图像S~[7-9]。如公式(8)所示,S~ 为增强后图像,R为反射图,f(L) 代表对图像中的光照图进行“修复”增强处理,算法流程图如图2 所示。
Wang 等人[7]研究图像的自然度和图像的光照顺序,认为增强后的图像光照顺序应该保持不变,提出NPEA 算法,设计LOE 用于评价增强图像的光照顺序一致性,滤波器BPF 对以R、G、B 三通道最大值作为光照值的光照图进行滤波得到Linit后,采用“log+直方图均衡化思想”处理得到“修复的光照图”Lfinal与反射图形作用得到增强图像,NPEA[7]算法流程如下:
1)获取初始光照图:以图像R、G、B 三通道每个位置最大值作为该位置像素值,获得初始光照图;
2)图像光照图估计:精心设计“亮度滤波器BPF”如公式(9),Q(L(x,y),L(i,j))表示在局部区域 Ω 中,(x,y)位置像素和(i,j)位置像素相邻的评率,反映像素之间关系的强弱,U(L(x,y),L(i,j))只有(i,j)位置像素值大于(x,y)位置像素值时,L(i,j)参与影响(x,y)光照,W(x,y)为归一化权重值,保证权重和为1,通过滤波器BPF 滤波后得到得到估计的光照图Lr(x,y);
3)增强光照图:对估计光照图Lr(x,y)采用“log+直方图均衡化思想”处理得到“修复的光照图”,即增强光照图f(Lc(x,y));
4)基于Retinex 理论,利用通过公式(10)变换后获得反射图Rc(x,y);
5)最后基于公式(8),将增强后光照图和反射图合成得到增强后的图像S~ 。
图2 “光照图”改善图像增强
基于Retinex 理论对观察图像分离是不适定向问题,研究学者提出不同算法用于求解该不适定向问题。其中普遍采用的方法是正则化方法,利用对解和光照图空间光滑性、反射率小于1 等先验估计设计目标函数,并基于目标函数把求解限定在某个较小范围内,将原本不适定的问题就转化为适定的最优化问题求解。Kimmel 等人[21]提出变分模型(VM),基于结合光照的空间平滑、图像反射率的范围为[0,1]等先验建立目标函数,将光照图和反射图分离问题转化为二次规划优化问题进行求解并证明其有效性。Guo 等人[9]融合变分法和Retinex 理论提出LIME 算法,在光照图结构光滑的先验的基础上对目标函数加入结构先验,通过二次规划最优求解方法进行求解。LIME 运用gamma变换提升光照图L的亮度;增强图像运用数学运算变换而没有进行实际光照图和反射图的分离降低了算法的计算量;针对低照度导致反射图中遗留的噪声及去噪操作引起图像颜色失真则将增强图像转换到YUV 空间域并利用BM3D 算法[10]对独立的Y 亮度分量进行去噪增强处理再变换到RGB 空间的后操作处理。Fu 等人[20]针对传统的加权变分模型中log 变换导致惩罚项引入误差问题提出新的加权变分模型(WVM),运用带近似策略的交替极小化算法求解进行光照图和反射图同时估计,证明能够较好保留图像细节抑制噪声。Ren 等人[31]认为基于正则化方法同步进行反射图和光照图分解会导致反射图保留较多的噪声,虽然可以通过后处理进行去噪但是会破坏反射图细节,提出采用相继优化手段进行光照图和反射图分解,按顺序估计分段平滑照明和噪声抑制反射率,能够有效抑制噪声提高增强图像对比度。
表2 Retinex-Net[13]网络结构
基于数学运算Retinex 低照度增强模型,通过设计优化滤波器、构建变分函数等方式获得光照图和反射图,最后获得增强后的图像,算法具有完善数学体系支撑,能够获得较好的增强效果。但随着数学模型越来越复杂,涉及的参数多,且实验过程需要通过反复试验(trial and error)进行参数取值,算法执行处理时间长。
随着数据和计算资源的廉价化,基于数据驱动的机器学习相关技术不断发展被运用到低照度图像增强处理任务中[11-15,27]。Liang 等人[11]基于 MSR 算法模型[5],将多尺度加权高斯环绕处理转化为等价的“高斯差分”结构,设计带残差结构卷积神经网络“MSR-Net”,基于端到端数据驱动学习“差分高斯环绕函数卷积核”参数进行低照度图像增强,并在网络结构加入了颜色恢复模块,取得了较好的增强效果。Kin 等人[27]设计深度自编码器从合成的低光照及噪声图像中学习到稀疏编码,能够用于自然场景下低光照图像的增强,并且视觉及定量效果分析较好。随着卷积神经网络的发展,尤其是 AlexNet、VGG、ResNet、U-Net[18]等优秀网络结构的出现,结合卷积神经网络和Retinex 理论的低照度图像增强成为端到端低照度图像增强模型的热门研究方向,称之为基于卷积神经网络Retinex 模型。基于卷积神经网络的Retinex 图像增强算法流程是:基于“先验”理论设计网络损失函数,通过数据驱动训练网络,采用机器学习优化方法指定网络训练策略求解损失函数求最优值求解为目标,学习数据特征,最终获得具有图像分解、图像增强等表征能力的网络结构,测试验证网络模型能力后运用到新的数据中。算法运用的先验理论主要有:①图像可以分解成光照图和反射图,从图像中分离光照图和反射图是属于典型的不适定问题;②图像光照图是图像的低频部分,具有空间光滑性、一致性,但局部如边缘部分光照应保留强灰度变化;③反射图是图像高频部分,和图像呈现的细节纹理相关;④不同光照环境下同一个场景中反射图应该趋于一致。
Shi 等人[12]结合Retinex 理论与生成对抗网络设计了Retinex-GAN 网络,采用U-Net[18]网络结构进行图像分解,采用卷积神经网络在对抗网络结构中获得较好实验效果。Chen 等人[13]基于卷积神经网络技术和自建数据集LOL 设计训练了深度学习网络Retinex-Net 进行低照度图像增强。如表1 所示,Retinex-Net 由“Decom-Net”和“Enhance-Net”两个阶段组成,基于 1、2、4先验构建损失函数,输入低照度/正常图像对训练网络,通过“Decom-Net”结构中分解为光照图和反射图,光照图经过“Enhance-Net”网络增强得到“修复”的光照图再和经过BM3D[10]算法去噪处理的反射图按像素做乘运算得到增强后得到增强图像。
Zhang 等人[14]指出降质的光线会导致反射图每个像素非一致性地受到噪音的影响,基于卷积神经网络设计了侧重于光照图像的灵活调整和反射图像细节增强的网络结构KinD network。不同于Retinex-Net:①以光照条件好的图像的反射图作为低照度反射图的参照标签,进行低照度反射图的增强网络的训练,增强低照度反射的纹理细节;②在图像分解阶段,光照图和反射图分离设计两条不同分支网络结构,为了避免光照图中丢失纹理信息光照图分支结构中融入了反射图的featuremap 以补偿光照图的细节部分;③对优质“参考图像”要求不高,只需要输入不同光照条件下的图像对;④用户可以控制目标光照和源光照比例(Lt/Ls)值,达到自适应调节目标光照程度的目的;⑤在实验分析阶段使用了多个图像质量评价指标评价。如表3 所示,通过实验指出该算法性能优于目前其他算法。
表3 KinD network[14]结构
基于卷积神经网络Retinex 低照度图像增强算法图像增强效果和训练数据高度相关,对数据完备性要求高。现实中数据完备性不足成为限制算法性能的一个关键因素。对此,有研究者依据低照度图像成因,分析低照度图像特点,利用合成低照度图像进行数据增强。但是由于图像成像的复杂性过程,难以模拟真实的低照度图像,这会带来处理误差。
单独采用一种低照度图像增强算法无法获得低对比度增强、噪声抑制、颜色自然性等综合性能更优解,研究学者提出融合多种成熟低照度增强技术的基于图像融合的Retinex 低照度增强模型。基于图像融合的Retinex 理论的低照度图像增强技术提升图像处理粒度到图像的层面,在图像层面设计合适的加权系数是算法性能的关键问题。针对各种单一方法都不能获取综合性能效果的问题,Fu 等人[16]基于Retinex 理论提出融合多种方法的低照度图像增强算法,在算法中作者研究认为好的光照图是提高照度图像的关键,因此先采用形态学闭合算法进行“光照图”的估计,再采用多种成熟的图像增强方法对“光照图进行增强”得到各自对应的光照图Li,设计亮度权重、对比度权重得到综合权重系数对不同“光照图”Li进行加权获得“好的光照图”L。实验发现处理后图像的阴影问题,对此作者引入多尺度高斯金字塔和拉普拉斯金字塔对光照图和权重系数再上采样得到Lfinal,实现光照图细节融合及平滑减少图像阴影,最后将反射图R 和光照图Lfinal按像素乘后得到增强的图像。冯维等人[17]为解决弱光图像增强过程中对比度增强和自然度保持问题,针对文献[16]中由于没有考虑融合图像结构信息引起的局部光照突变处细节信息不清晰问题提出一种基于Retinex的多图像自适应加权最小二乘滤波算法,通过加权最小二乘滤波方法对多幅照明图进行加权估计。由于传统RGB 图像的光照和颜色融合在一起,为了图像的颜色保真常采用变换图像的空间域,如转换图像的处理域到YCrYCb 空间或HSV 空间分离出独立的光照通道进行增强处理[10,30]。
Retinex 理论应用到低照度图像增强,衍生出基于传统数学运算Retinex 模型算法、基于卷积神经网络Retinex 模型、基于图像融合Retinex 模型等,彰显出Retinex 理论的旺盛生命力。基于传统数学运算Retinex 模型是结合低照度图像增强问题域先验与数学工具,将低照度图像增强转变为数学领域问题进行求解,具有完善的数学体系支撑,但模型中包含多个超参数,算法复杂度高,尤其随着图像分辨率越来越高,算法执行时间长。对此,寻找更符合最优解的先验,设计更科学正则化模型,获得细节丰富、噪声少的反射图和图像结构关联的空间光滑的光照图,降低算法复杂度、提高算法执行效率是基于传统数学运算Retinex 模型的研究方向。基于卷积神经网络Retinex 模型以数据集作为驱动取得可喜的增强效果,但是利用卷积网络的特征表达能力对低照度图像进行增强缺少严谨的解释性,鲁棒性不强。基于卷积神经网络Retinex 模型需要解决的问题包括:如何构建更完备领域数据集;如何优化卷积神经网络结构获得更强大网络表征能力;挖掘生物视觉理论指导设计先验提升模型的鲁棒性;联合终端计算机视觉处理任务驱动引导针对性低照度图像增强等。而在单一低照度增强算法不能很好取得综合优解的情况下,基于图像融合的Retinex 模型获取综合性能也成为一个重要研究方向。此外,基于Retinex 模型低照度图像增强需要针对不同场景的低照度图设计适应不同场景的、具有鲁棒性、算法的执行时间效率高的算法。