Zero-Shot Enhancement of Low-Light Image Based on Retinex Decomposition

Zero-Shot Enhancement of Low-Light Image Based on Retinex Decomposition

摘要:微光图像增强是两项具有挑战性的任务,一是不仅要考虑亮度恢复,还需要同时考虑图像对比度、图像去噪和颜色失真等问题。其次,现有的弱光增强方法的有效性依赖于泛化性能较差的成对或非配对训练数据。为了解决这些难题,本文提出了一种新的基于学习的零射弱光增强分解方法,称为ZERRINNet。==为此,我们首先设计了N-Net网络,并结合噪声损失项,通过估计低光图像的噪声来对原始低光图像进行去噪。==此外,利用RI-Net来估计反射分量和照明分量,为了解决颜色失真和对比度,我们使用纹理损失项和分段平滑损失来约束反射分量和照明分量。最后,我们的方法是一个零参考增强方法,不受训练数据的配对和未配对数据集,所以我们的泛化性能大大提高,在本文中,我们有效地验证了自制的真实低光数据集,另外与先进的视觉任务,如人脸检测、目标识别和实例分割。我们在大量的公共数据集上进行了比较实验,结果表明,我们的方法的性能与目前最先进的方法相比具有竞争力。代码为at:https://github.com/liwenchao0615/ZERRINNet

由于缺乏环境光,拍摄的图像通常是弱光图像。这些图像的特点是低对比度、高噪声和细节不清楚。这些问题不仅影响了人类的视觉感知,而且阻碍了高级计算机视觉任务的应用,如自动驾驶和人类行为识别。因此提高这些闪烁图像的质量是提高在低光场景中高级视觉任务的准确性的必要条件

==提高低光图像的质量需要解决两个挑战:==提高图像亮度和恢复图像细节。然而,提高图像亮度往往会引入噪声、颜色失真和区域模糊等问题,最终导致原始细节信息的丢失。近年来,研究者提出了一系列有效的低光增强方法,如直方图均衡化、Retinex理论和深度学习增强技术[1]、[2]等。然而,这些方法都不能同时有效地解决这两个主要问题。在用于增强低光图像的各种方法中,最令人信服的一种是基于Retinex分解理论及其改进版本。根据Retinex理论,一幅图像可以分为两部分:光分量和反射分量。反射分量是图像的固有特征,无论外部环境照明的变化如何,它都保持不变。相比之下,照明分量随外部环境的变化而变化

提出了几种基于视网膜反射分量不变性原理的弱光图像增强方法。例如==,直接利用反射分量作为增强结果是一种简单而有效的方法。然而,这种方法会导致一些图像细节信息的丢失。==为了解决这个问题,可以将通过分解弱光图像得到的照明分量变亮,然后与反射分量相乘,得到最终的增强结果。该方法有效地减轻了当反射分量直接作为增强结果时所产生的细节损失。然而,这些方法都没有考虑到图像[3]、[4]、[5]、[6]的噪声。

考虑到传统的Retinex方法需要更多的参数和图像去噪,人们结合了深度学习和Retinex理论。Chen[7]等人提出了一个基于Retinex理论的卷积神经网络模型,并在调整模块中引入了传统的BM3D方法来消除噪声,而噪声确实产生了增强过程中的颜色失真等问题。最近,Wu等人[8]将分解问题表述为一个隐式的先验正则化模型。该方法能有效地进行了噪声抑制和细节保存。然而,这些方法需要准备成对的数据集,这限制了这些方法的进一步使用。

现有的弱光增强方法并不同时存在充分解决了图像噪声、颜色失真等问题,其结果在很大程度上依赖于配对和非配对数据集的训练。为了解决这些问题,本文提出了一个简单的基于零镜头统一学习的Retinex弱光增强框架。该方法是基于等式的1将网络结构分为三个模块:输入、Retinex分解和图像噪声提取以及最终的增强部分

image-20231108221806088

具体地说,对于Retinex分解和噪声提取模块,该过程分别提取反射分量R (x)、照明分量I (x)和噪声分量N (x)。输入的图像并不相同,其中噪声分量N (x)是从原始发光图像中提取的。这是因为直接在反射分量中去噪不可避免地会导致细节信息的丢失。同时,我们将原始闪烁图像与v通道图像融合,作为Retinex分解的输入,以增加图像的细节信息。为了解决图像中的颜色失真问题,我们设计了一个纹理增强项,该损失项可以有效地指导图像的分解,如图1所示。

Retinex分解主要去除照明组件,并使用反射组件增强图像。或者,通过调整照明分量并将其乘以反射分量来得到增强结果。然而,Retinex分解往往会产生大量的噪声,这是一个难题。人们主要通过对反射分量进行去噪和增强照明分量的对比度来解决这个问题。然而,仍有一些未解决的问题。首先,它不能同时处理颜色失真、去噪和图像对比度。其次,该方法需要成对的数据集作为训练数据,这限制了其在高级视觉任务中的应用

本文的主要贡献可以总结为: 1)我们提出了一个基于重构分解和深度学习相结合的优雅的统一零参考深度框架,称为ZERRINNet,用于闪烁的图像增强,避免了收集成对数据集的挑战。2)考虑到Retinex分解中的噪声和颜色失真问题,设计了噪声提取网络N-Net来去除闪烁图像中的噪声,并设计了纹理增强损失项来指导Retinex分解。3)进行了综合的实验,实验结果表明,我们的方法大大优于现有的方法。此外,我们在自制的真实闪烁图像、人脸检测、目标识别和实例分割数据集上测试了我们的方法,证明了该方法的鲁棒性和泛化能力。

III. PPROPOSED APPROACH

A. Network Architecture

在弱光增强领域,基于视网膜理论和深度学习相结合的增强方法已被广泛使用。然而,对于这些增强方法,一方面发现有些方法在图像恢复过程中没有考虑图像的噪声问题,即使随后添加去噪方法,结果也不令人满意,甚至导致重建图像的伪影和颜色失真,不能同时有效处理对比度、去噪和颜色失真的问题。.另一方面,一些增强方法依赖于成对和非成对的数据集训练,但泛化性能较差,不利于方法的泛化。

image-20231109100912910

针对上述动机,本文提出了一个统一的基于retinex的深度学习zero-shot 框架,即ZERRINNet。ZERRINNet的总体框架如图2所示。如前所述,我们将整个框架分为三个部分,即输入、图像分解、噪声提取和基于Eq 1的最终增强。首先,我们精心设计了两个子网络,RI-Net和N-Net,用于Retinex分解和噪声提取输入图像,然而,我们发现反射组件包含更多的信息比照明组件,为了充分学习反射组件的特征从输入图像,我们深化用于R-Net网络提取反射,相比I-Net网络用于提取照明组件。我们加深了用于提取反射的R-Net网络,并与用于提取照明成分的I-Net网络进行了对比。此外,为了增强细节信息,避免伪影,一方面,网络的输入略有不同,我们首先提取弱光图像的v通道,然后将v通道与原始低光照图像融合,然后将融合的合成图像作为RI-Net网络的输入。在微光图像噪声提取中,我们将原始的微光图像本身作为网络的输入。此外,为了从原始闪烁图像中提取尽可能多的集成噪声,我们在实验中比较了一些现有的去噪方法,并使用了多层卷积加BN和激活结构。

与现有的基于深度学习的图像增强方法[43],[34],我们的去噪策略去噪原来的低光图像而不是反射组件,以避免图像信息的损失,此外,我们的方法不需要训练任何外部图像,但测试输入图像直接获得增强的图像。我们的方法消除了从外部数据集训练中学到的先验知识,使ZERRINNet网络通过一个特殊设计的损失函数实现了从低光图像到增强图像的映射。

B. Loss Functions

我们不仅需要提高对比度,还需要考虑图像噪声和颜色失真,基于我们的分解策略和增强方法,本文中使用的损失函数简单而常见,如下所述。我们设计了一个整体损失函数评估网络的分解和去噪,以引导网络生成更准确的组件。我们设计了一个损失函数,总损失由三部分组成为

image-20231109083413126

其中Lrecon、Lslasos、Ltexecs和L噪声对应的重建损失、平滑损失、图像噪声损失和纹理增强损失

重建损失。图像的分解策略需要满足图像重建的要求,才能得到合理的分解结果,重建损失设计基于Retinex分解的基本思想,不仅需要考虑R(x1)和I(x1)两个分量,还需要添加原始低光图像的噪声。因此,为了保证观测图像与重建图像之间的相似性,将重建损失定义为:

image-20231109083805259

==平滑的损失。==对于自然图像,照明通常是局部平滑的。相反,对于弱光图像,图像的内容和细节往往较弱,对比度较低。平滑性损失鼓励照明在小梯度的像素上平滑,在大梯度的像素上不连续。因此,我们利用分割的平滑损失来估计照明分量和反射分量,以提高图像的对比度。总损失函数可以定义为:

image-20231109084014296

其中,λi和λr,分别对应于段平滑光损失和段平滑反射损失的系数。Lis和Lrs分别为段平滑光损耗和段平滑反射损耗。分割平滑光映射在黑暗区域恢复更好的细节信息,这是因为当相邻像素具有相似的强度时,它们的对比度在相同的光照值下被放大。此外,L1损耗用于计算照明分量与原始低光图像的最大值之间的差值。照明分量的整体平滑损失可以表示为

image-20231109084043827

其中Sm是原始弱光图像的最大通道,这里∇(h,w)是水平和垂直方向上的梯度,w(x1)是权重函数。根据RTV损失[44],可以看出权重项与梯度成反比。因此,我们设计的权重函数可以表示为

image-20231109084448280

其中G是一个高斯滤波器,◦表示卷积算子,Ig是输入的灰度版本。∂是这些参数。

类似地,分段反射平滑损失类似于照明损失(旨在恢复结构和细节信息)与照明平滑不同,它关注点与小水平和垂直梯度,确保真正的噪声点平滑而不是边缘,但需要约束照明地图。整个方程可以表示为image-20231109085458239

其中λrs为该反射分量的损失系数,wr(x1)为反射分量梯度的权重参数,用归一化表示最小-最大归一化,如下式示

image-20231109085619131

其中,∇(h,w)S0为原始弱光下的水平梯度和垂直梯度,则ϵ作为一个常数,其值为0.0001。

Texture enhancement loss.

在弱光图像重建过程中,==经常面临暗区图像的颜色失真和细节模糊等问题。==因此,本文设计了一种主要由色损失和暗区域损失[42]组成的纹理增强损失。颜色损失[45]通过桥接不同的颜色通道来减少增强图像中的颜色误差。我们使用 Charbonnier损失有助于高质量的图像重建,提取区域损失提高闪烁区域的质量考虑不均匀照明的图像,和分割图像的最暗的像素值40%(经验值)近似整个图像的黑暗区域,也限制反射map的值的范围[0,1],以避免过度增强。总的纹理增强损失可以表示为

image-20231109090643341

其中Lcolor、Lreia和Lmaxa代表颜色损失、低光区域损失和低光注意损失。

颜色损失 的设计是为了确保在增强的结果中避免了颜色的扭曲。定义为:

image-20231109090833687

其中ϵ是一个惩罚项,根据经验设置为10−6。

为了引入区域损失来提高低光区域的质量,我们利用分割图像的方法来构建区域损失,并将区域损失定义为

image-20231109090937572

其中,RL和S0为反射图像和原始弱光图像的弱光区域,RH和S0H为图像的其余部分。在我们的例子中,我们建议使用wL = 4和wH = 1。

为了避免图像恢复中的过度增强,我们在原始区域损失上增加了注意力损失,这限制了反射图的值,允许正确增强未曝光区域,避免正常暴露区域的过度增强,将注意力损失定义为

image-20231109093709240

其中,maxc (x)返回三个颜色通道中的最大值,S0为原始明亮图像,R(x1)为反射图像。

==图像噪声损失。==在弱光图像恢复过程中,拉伸对比度增强了图像黑暗区域的细节,同时,隐藏在黑暗区域的噪声被放大。因此,有必要抑制噪声,特别是在黑暗区域的噪声。在本文中,我们主要基于设计的噪声提取网络设计损失函数,我们利用图像的照明图作为权值来提取低光图像噪声。将图像的整体去噪损失函数定义为

image-20231109094523388

其中 ∣ ∣ X ∣ ∣ F ||X||_F ∣∣XF表示矩阵X的弗罗比尼乌斯范数,N表示提取的噪声。

C. Low-Light Image Enhancement

文中详细描述了RI-Net的分解过程和N-Net对原始发光图像的噪声提取过程。在本节中,我们将描述如何对图像的最终增强。在这个增强模块中,我们基于Eq 1来设计我们的增强思想。我们参考[39]提出的Retinex分解增强策略,通过实验,我们发现结合调整的照明组件和去噪反射组件得到最终的增强结果有更好的结果,对于我们的方法,首先,考虑图像的对比度和亮度的增强,我们转换单通道光映射三通道图像,然后调整三通道光地图的亮度通过伽玛变换,

image-20231109094926945

其中γ为预定义参数,I (X)为三通道照明分量,Ib (x)为伽马变换的照明分量,低光图像的噪声隐藏在反射分量中,需要对反射分量进行去噪。然而,直接去噪通过Retinex分解得到的反射分量会导致图像细节的丢失。因此,根据上述描述,本文提出了对原始低光图像进行去噪,使无噪声的原始低光图像可以计算为

image-20231109095033113

其中, S 0 ( x ) S_0(x) S0(x)为原始的低光图像,N (x)和S (x)表示有噪声的图像和去噪的低光图像。为了抑制噪声的放大,通过将无噪声的原始低光图像与三通道照明分量 I 3 ( x ) I^3 (x) I3(x)分割,得到反射分量R (x),

image-20231109095310910

通过结合调整后的三个通道的照明分量,得到最终的增强结果E (x)通过与反射分量的伽马变换,方程如下:

image-20231109095510097

总之,算法1描述了ZERRINNet的实现。总之,算法首先将输入图像分解为照明分量和反射分量,同时提取原始图像的噪声分量,然后通过局部调整照明分量,然后将调整后的照明分量与去噪反射分量相结合,生成增强图像.

A.研究我们的算法,

为了获得更好的增强效果,我们分析了整个增强过程,通过解耦得到反射分量、光分量和噪声分量,如图3所示,理想亮度成分分割光滑,只包含图像的结构信息,反射分量包含建筑物最原始的颜色信息,图第一行进行Retinex分解非常好。低光图像中存在噪声,该噪声隐藏在阴影细节中,如图3(d).所示这里包含了弱光图像的噪声信息,通过简单的解耦可以实现更彻底的去噪。

等待代码开源中 https://github.com/liwenchao0615/ZERRINNet

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值