Retinexformer: One-stage Retinex-based Transformer for Low-light Image Enhancement (上)
ICCV 2023 论文 有监督的低光图像增强方法
这篇论文写的不错,调理和逻辑表述的蛮清晰的,
不足之处在于,文章对于一些问题并没有讲清楚,这个loss只用一个就取得了这个效果,
摘要:
在增强弱光图像时,许多深度学习算法都是基于Retinex理论的。然而,Retinex模型没有考虑隐藏在黑暗中或由点亮过程引入的损坏。此外,这些方法通常需要繁琐的多阶段训练管道,并依赖于卷积神经网络,这表明在捕获长程依赖性方面存在局限性。
在本文中,我们提出了一个简单而有原则的基于Retinex的一阶段框架(ORF)。ORF首先估计照明信息以点亮低光图像,然后恢复损坏以产生增强图像。我们设计了一种照明引导变换器(IGT),该变换器利用照明表示来指导具有不同照明条件的区域的非局部交互的建模。通过将IGT插入ORF,我们得到了我们的算法,Retinexformer。
全面的定量和定性实验表明,我们的Retinexformer在13个基准上显著优于最先进的方法。用户对微光物体检测的研究和应用也揭示了我们方法潜在的实用价值。
算法分为两个步骤:1、估计照片,2、恢复图像
照明引导变换器(IGT)是什么?照明表示来指导具有不同照明条件的区域的非局部交互的建模
引言
微光图像增强是计算机视觉中一项重要而富有挑战性的任务。它旨在改善微光图像的低可见性和低对比度,并恢复隐藏在黑暗中或由点亮过程引入的损坏(如噪声、伪影、颜色失真等)。这些问题不仅挑战了人类的视觉感知,也挑战了其他视觉任务,如夜间物体检测。
因此,已经提出了大量用于微光图像增强的算法。然而,这些现有的算法有其自身的缺点。直方图均衡和伽玛校正等简单方法往往会产生不希望的伪影,因为它们几乎不考虑照明因素。传统的认知方法依赖于Retinex理论[27],该理论假设彩色图像可以分解为两个分量,即反射率和照度。与普通方法不同,传统方法侧重于光照估计,但通常会引入严重的噪声或局部失真颜色,因为这些方法假设图像没有噪声和颜色失真。这与真实的曝光不足的场景不一致。
随着深度学习的发展,卷积神经网络已被应用于微光图像增强。这些基于CNN的方法主要分为两类。第一类直接使用CNN来学习从低光图像到正常光图像的蛮力映射函数,从而忽略人类的颜色感知。这类方法缺乏可解释性和理论证明的性质。第二类是受Retinex理论的启发。这些方法[54,65,66]通常受到多阶段训练管道的影响。它们分别使用不同的细胞神经网络来分解彩色图像、去噪反射率和调整照明。这些细胞神经网络首先被独立训练,然后连接在一起进行端到端的微调。培训过程既繁琐又耗时。
此外,这些基于CNN的方法在捕捉长程依赖性和非局部自相似性方面表现出局限性,这对图像恢复至关重要。最近兴起的深度学习模型Transformer可能为解决基于CNN的方法的这一缺陷提供了一种可能性。然而,直接应用原始视觉转换器进行微光图像增强可能会遇到问题。计算复杂度是输入空间大小的二次方。这种计算成本可能是负担不起的。由于这一限制,一些CNN转换器混合算法,如SNR-Net[57],仅在U形CNN的最低空间分辨率下使用单个全局转换器层。因此,Transformer在微光图像增强方面的潜力仍有待探索。
为了解决上述问题,我们提出了一种用于微光图像增强的新方法Retinexformer。首先,我们制定了一个简单而有原则的基于Retinex的一阶段框架(ORF)。我们通过在反射率和照明中引入扰动项来修正原始的Retinex模型,以对腐蚀进行建模。我们的ORF估计照明信息,并使用它来照亮低光图像。然后ORF使用损坏恢复器来抑制噪声、伪影、曝光不足/曝光过度和颜色失真。与以前基于Retinex的深度学习框架不同的是,我们的ORF是以一个阶段的方式进行端到端训练的。其次,我们提出了一种照明引导变换器(IGT)来对长程依赖关系进行建模。IGT的关键部件是照明引导的多头自注意(IG-MSA)。IG-MSA利用照明表示来指导自我注意的计算,并增强不同曝光水平的区域之间的相互作用。最后,我们将IGT作为损坏恢复程序插入到ORF中,以导出我们的方法Retinexformer。如图6所示,1,我们的Retinexformer在各种数据集上以很大的优势超过了最先进的(SOTA)基于Retinex的深度学习方法。特别是在SID[9]、SDSD[48]-室内和LOL-v2[59]-合成上,改善幅度超过6dB。
我们的贡献可以总结如下:
?我们提出了第一个基于Transformer的算法Retinexformer,用于微光图像增强。
?我们制定了一个基于Retinex的一阶段微光增强框架ORF,该框架具有简单的一阶段训练过程,并能很好地模拟腐蚀。
?我们设计了一种新的自注意机制IG-MSA,该机制利用照明信息作为关键线索来指导长程依赖性的建模。
?定量和定性实验表明,我们的Retinexformer在13个数据集上优于SOTA方法。用户研究和弱光检测的结果也表明了我们的方法的实用价值。
问题:
我们通过在反射率和照明中引入扰动项来修正原始的Retinex模型,以对腐蚀进行建模。
这是理论
我们的ORF
1、估计照明信息,并使用它来照亮低光图像。
2、使用损坏恢复器来抑制噪声、伪影、曝光不足/曝光过度和颜色失真。
IGT的关键部件是照明引导的多头自注意(IG-MSA)。
IG-MSA利用照明表示来指导自我注意的计算,并增强不同曝光水平的区域之间的相互作用。
这里我的疑问有很多,首先就是光照先验的作用是什么?
点亮亮度的特征的作用?
在这里的照明表示来指导自我注意的计算。计算的是啥,目的是什么?
相关工作
2.1微光图像增强
**简单方法。**直方图均衡[1,8,12,40,41]和伽马校正(GC)[19,42,53]等简单方法直接放大曝光不足图像的低可见性和对比度。然而,这些方法几乎没有考虑照明因素,使得增强的图像在感知上与真实的正常光场景不一致。
**传统认知方法。**与普通算法不同,传统方法[15,23,24,29,50]考虑了光照因素。他们依赖于Retinex理论,并将微光图像的反射率分量视为增强结果的合理解决方案。例如,Guo等人[18]提出通过在初始估计的照度图上施加结构先验来对其进行细化。然而,这些方法天真地假设低光图像没有腐败,导致增强过程中出现严重的噪声和颜色失真。此外,这些方法依赖于手工制作的先验,通常需要仔细调整参数,并且泛化能力较差。
**深度学习方法。**随着深度学习的快速发展,CNN[16,17,22,33,35,38,45,49,61,66,68]已被广泛应用于微光图像增强。例如,Wei等人[54]和后续工作[65,66]将Retinex分解与深度学习相结合。然而,这些方法通常受到乏味的多阶段训练管道的影响。几个细胞神经网络分别用于学习或调整Retinex模型的不同组成部分。王等人[49]提出了一种基于Retinex的单阶段CNN,称为DeepUPE,用于直接预测照明图。尽管如此,DeepUPE没有考虑腐败因素,这会导致在曝光不足的照片中发光时放大噪音和颜色失真。此外,这些基于CNN的方法在捕捉不同区域的长程依赖性方面也显示出局限性。
2.2.视觉转换器
[46]中提出了用于机器翻译的自然语言处理模型Transformer。近年来,Transformer及其变体已应用于许多计算机视觉任务,并在高级视觉(例如,图像分类[2,4,14]、语义分割[7,55,67]、对象检测[3,13,62]等)和低级视觉(例如图像恢复[6,11,60]、图像合成[20,21,64]等)中取得了令人印象深刻的成果。例如,徐等人[57]提出了一种用于微光图像增强的SNR感知CNN Transformer混合网络SNR-Net。然而,由于普通全局变换器的巨大计算成本,SNR-Net仅在U形CNN的最低分辨率下使用单个全局变换器层。Transformer在微光图像增强方面的潜力尚未得到充分探索。
3. Method
图2展示了我们方法的总体架构。如图2(a)所示,我们的Retinexformer基于我们制定的基于一阶段Retinex的框架(ORF)。ORF由照明估计器(i)和损坏恢复器(ii)组成。我们设计了一个照明引导变压器(IGT)来扮演腐败恢复器的角色。如图2(b)所示,IGT的基本单元是IlluminationGuided Attention Block(IGAB),它由两层归一化(LN)、Illumination Guided Multihead Self Attention(IG-MSA)模块和前馈网络(FFN)组成。图2(c)显示了IG-MSA的细节。
图2:我们的方法概述。(a) Retinexformer采用了所提出的ORF,该ORF由照明估计器(i)和损坏恢复器(ii)IGT组成。(b) IGT的基本单元是IGAB,它由两层归一化(LN)、IG-MSA和前馈网络(FFN)组成。(c) IG-MSA使用ORF捕获的照明表示来指导自我注意的计算。
3.1.基于Retinex的一阶段框架
根据Retinex理论。弱光图像I∈RH×W×3可以分解为反射图像R∈RH
其中⊙表示按元素相乘。这个Retinex模型假设我没有腐败,这与真实的曝光不足的场景不一致。我们分析腐败主要来源于两个因素。首先,暗场景的高ISO和长曝光成像设置不可避免地会引入噪声和伪影。其次,点亮过程可能会放大噪声和伪影,也会导致曝光不足/过度和颜色失真,如图2(a)的放大补丁i和ii所示。
为了对腐蚀进行建模,我们重新公式化了方程。(1)通过分别引入R和L的扰动项,如下所示
其中,^ R∈RH×W×3和 ^L∈RHxW表示扰动。与[15,18,49]类似,我们将R视为曝光良好的图像。为了点亮I,我们明智地将等式的两边相乘。(2)乘以点亮图-L,使-L⊙L=1为
其中,^R⊙(L+ ^L)表示隐藏在黑暗场景中的噪声和伪影,并-L放大。 R⊙ ( ^L⊙-L )表示点亮过程中导致的曝光不足/曝光过度和颜色失真。我们将等式(3)简化为
其中Ilu∈RH×W×3表示点亮的图像,C∈RH X W×3指示整体损坏项。随后,我们将ORF制定为
其中E表示照明估计器,R表示损坏恢复器。E以I及其照明先验映射Lp∈RH×W为输入。Lp=meanc(I),其中meanc指示计算沿着通道维度的每个像素的平均值的操作。E输出点亮图像Ilu和点亮特征Flu∈RH×W×C。然后将Ilu和Flu输入到R中以恢复损坏并产生增强图像Ien∈RH×W×3。
**我这里的疑问:**这里作者并没有解释为什么,^R⊙(L+ ^L)表示隐藏在黑暗场景中的噪声和伪影,R⊙ ( ^L⊙-L )表示点亮过程中导致的曝光不足/曝光过度和颜色失真,难道是根据 ⊙-L嘛。
在自己写论文的时候,并不需要照抄,要更具自己的定义来
算法原理
在这里作者,首先提出了自己的想法,认为低光照图像噪声和伪影不仅仅是输入图像本身拥有,而且还有在增强过程中,也会放大噪声和产生伪影!!因此作者的思路是先增量,然后在修复!
E的体系结构如图2(a)(i)所示。E首先使用conv1×1(核大小=1的卷积)来融合I和Lp的级联。我们注意到,暴露良好的区域可以为暴露不足的区域提供语义上下文信息。因此,采用深度可分离的conv5×5来对具有不同照明条件的区域的相互作用进行建模,以生成点亮特征Flu。然后E使用conv1×1来聚合Flu以产生点亮映-L∈RH×W×3。我们-L设置为三通道RGB张量,而不是像[15,18]那样的单通道张量,以提高其在模拟RGB通道之间的非线性以进行颜色增强时的表示能力。然后使-L来点亮等式中的I。(3)。
讨论(i) 与以前基于Retinex的深度学习方法[30,49,54,65,66]不同,我们的ORF估计-L,而不是照明图L,因为如果ORF估计L,那么照亮的图像将通过元素分割(i/L)获得。计算机很容易受到这种操作的影响。张量的值可以很小(有时甚至等于0)。划分可能很容易导致数据溢出问题。此外,计算机随机产生的小误差会被这种运算放大,导致估计不准确。因此,建-L更健壮。(ii)先前基于Retinex的深度学习方法主要集中于抑制反射图像上的诸如噪声的腐蚀,即方程中的ξR。它们忽略了照明图上的估计误差,即方程中的ξL。因此在点亮过程中容易导致曝光不足/曝光过度和颜色失真。相反,我们的ORF考虑了所有这些腐败,并使用R来恢复它们。
这里的照度图为什么不用L,这里他说了这个原因,划分可能很容易导致数据溢出问题,而且会放大误差。
第二点就是你需要同时考虑L和R的抑制,并且使用R来修复两者,我这里有疑问,你是怎么修复的。
我的疑问:你这个光照先验图是怎么得来呢??Lp=meanc(I),其中meanc表示计算沿通道维度的每个像素的平均值的操作。
3.2照明导向变压器
以前的深度学习方法主要依赖于细胞神经网络,显示出在捕获长期依赖性方面的局限性。由于全局多头自注意(MSA)的巨大计算复杂性,一些CNN转换器混合工作,如SNR-Net[57],仅在U形CNN的最低分辨率下使用全局转换器层。变压器的潜力尚未得到充分挖掘。为了填补这一空白,我们设计了一个照明引导变压器(IGT),以在等式中扮演腐败恢复器R的角色。(5)
网络结构。如图2(a)(ii)所示,IGT采用三级U型架构[44]。IGT的输入是点亮的图像Ilu。在下采样分支中,Ilu经历一个conv3×3、一个IGAB、一个跨conv4×4(用于向下缩放特征)、两个IGAB和一个跨conven4×4以生成分层特征Fi∈R H 2i×W 2i×2iC,其中i=0,1,2。然后F2通过两个IGAB。随后,对称结构被设计为上采样分支。利用步长为2的decov2×2来升级功能。跳过连接为用于减轻由下采样分支引起的信息丢失。上采样分支输出残差图像Ire∈RH×W×3。然后通过Ilu和Ire之和导出增强图像Ien,即Ien=Ilu+Ire。IG-MSA。如图2(c)所示,由E估计的点亮特征Flu∈RH×W×c被馈送到IGT的每个IG-MSA中。请注意,图2(c)描绘了最大规模的IG-MSA。对于较小的尺度,使用步长为2的conv4×4层来缩小Flu以匹配空间大小,该图中省略了这一点。如上所述,全局MSA的非平凡计算成本限制了Transformer在微光图像增强中的应用。
为了解决这个问题 IG-MSA将单个通道特征图视为令牌,然后计算自注意力。首先,将输入特征Fin∈RH×W×C重构为记号X∈RHW×C。然后将X拆分为k个头:
其中Xi∈RHW×dk,dk=Ck,且i=1,2,···,k。注意,图2(C)显示了k=1的情况,并省略了一些细节以简化。对于每个headi,使用三个无偏差的全连通(fc)层来将Xi线性投影为查询元素Qi∈RHW×dk、关键元素Ki∈RHW×dk和值元素Vi∈
其中WQi、WKi和WVi∈Rdk×dk表示f c层的可学习参数,T表示矩阵转置。我们注意到,同一图像的不同区域可能具有不同的照明条件。黑暗区域通常具有更严重的腐蚀,并且更难恢复。具有更好照明条件的区域可以提供语义上下文表示,以帮助增强暗区域。因此,我们使用照明特征Flu编码照明信息和具有不同照明条件的区域的相互作用来指导自我注意的计算。为了与X的形状对齐,我们还将Flu重塑为Y∈RHW×C,并将其拆分为k个头:
其中Yi∈RHW×dk,i=1,2,··,k。则每个头i的自注意公式为
其中αi∈R1是自适应缩放矩阵乘法的可学习参数。随后,k个头被连接以穿过一个f c层,然后加上位置编码P∈RHW×c(可学习参数),以产生输出标记Xout∈RHW×c。最后,我们对Xout进行整形,得到输出特征Fout∈RH×W×C。
问题:
我们使用照明特征Flu编码照明信息和具有不同照明条件的区域的相互作用来指导自注意的计算。
这里的自注意的计算是怎么回事,计算的是啥呢?
**复杂性分析。**我们分析说,我们的IG-MSA的计算复杂度主要来自于等式(9)中两个矩阵乘法的k次计算,即。,Rdk×HW×RHW×dk和RHW×。因此,复杂度O(IG-MSA)可以公式化为
而以前的一些CNN Transformer方法(如SNR-Net)使用的全局MSA(G-MSA)的复杂性为
将等式(10)与等式(11)进行比较。O(G-MSA)是输入空间大小(HW)的二次方。这种负担是昂贵的,并且限制了Transformer用于微光图像增强的应用。因此,以前的CNN Transformer混合算法仅在U形CNN的最低空间分辨率下使用G-MSA层,以节省计算成本。相反,O(IG-MSA)与空间大小成线性关系。这种低得多的计算复杂度使我们的IG-MSA能够插入网络的每个基本单元IGAB。通过这种方式,可以进一步探索Transformer在微光图像增强方面的潜力。
在这里的点乘和叉乘有什么区别,为什么计算复杂度由叉乘来决定呢?
为什么他这个计算复杂度可以被定为这个(10),???
对于这个10和11的公式,确实可以说明计算复杂度的开销小
4.实验
4.1.数据集和实施细节
我们在LOL(v1[54]和v2[59])、SID[9]、SMID[10]、SDSD[48]和FiveK[5]数据集上评估了我们的方法。LOL。LOL数据集有v1和v2版本。LOL-v2分为实子集和合成子集。在LOL-v1、LOL-v2-real和LOL-v2-synthetic上,训练集和测试集按比例划分为485:15、689:100和900:100。SID。采用索尼α7SⅡ相机拍摄的SID数据集子集进行评估。有2697个短/长曝光RAW图像对。通过使用与SID[9]相同的相机内信号处理将RAW转换为RGB来获得低光/正常光RGB图像。2099个和598个图像对用于训练和测试。
傻笑。SMID基准收集20809个短曝光/长曝光RAW图像对。我们还将RAW数据传输到低光/正常光RGB图像对。15763对用于训练,左对用于测试。SDSD。我们采用静态版本的SDSD。它是由佳能EOS 6D Mark II相机拍摄的,带有ND滤镜。SDSD包含室内和室外子集。我们分别使用62:6和116:10低/常光视频对在室内和室外SDSD上进行训练和测试。FiveK。麻省理工学院Adobe FiveK数据集分为训练集和测试集,分别有4500和500个低光/正常光图像对。这些图像由五名摄影师手动调整(标记为A~E)。我们使用专家C的调整图像作为参考,并采用sRGB输出模式。除了上述八个基准之外,我们还在五个没有基本事实的数据集上测试了我们的方法:LIME[18]、NPE[50]、MEF[36]、DICM[28]和VV[47]。
**实施细节。**我们通过PyTorch[39]实现了Retinexformer。使用Adam[25]优化器(β1=0.9和β2=0.999)对模型进行2.5×105次迭代训练。学习率最初设置为2×10?4,然后在训练过程中通过余弦退火方案[34]稳步降低至1×10?6。从低光/正常光图像对中随机裁剪大小为128×128的补丁作为训练样本。批量大小为8。通过随机旋转和翻转来增强训练数据。训练目标是最小化增强图像和地面实况之间的平均绝对误差(MAE)。我们采用峰值信噪比(PSNR)和结构相似性(SSIM)[51]作为评估指标。
我这里的疑问是,他这个的loss是什么呢,难道就是一个mas吗??
4.2.微光图像增强
**定量结果。**在表1和表2中,我们将所提出的方法与广泛的SOTA增强算法进行了定量比较。我们的Retinexformer在八个数据集上显著优于SOTA方法,而需要适度的计算和存储器成本。与最近的最佳方法SNR-Net相比,我们的方法在LOL-v1、LOL-v2-real、LOLv2 synthetic、SID、SMID、SDSD室内、SDSD室外和FiveK数据集上实现了0.55、1.32、1.53、1.57、0.66、0.33、1.18和1.13dB的改进。然而,我们的方法仅花费40%(1.61/4.01)的帕尔马和59%(15.57/26.35)的FLOPS。
与基于SOTA Retinex的深度学习方法(包括DeepUPE[49]、RetinexNet[54]、RUAS[30]和KinD[66])相比,我们的Retinexformer在表1中的七个基准上分别提高了4.30、4.43、8.54、6.00、3.27、6.60和6.00 dB。特别是在被噪声和伪影严重破坏的SID和SDSD数据集上,改进超过6dB,如图所示。1。
与基于SOTA Transformer的图像相比恢复算法(包括IPT[11]、Uformer[52]和Restormer[60]),我们的Retinexformer在表1中的七个数据集上增益了2.73、2.86、4.26、2.17、1.95、3.66和2.29 dB。然而,Retinexformer只需要1.4%和6.2%的Params,0.2%和10.9%的IPT和Restormer的FLOPS。所有这些结果清楚地表明了我们的Retinexformer卓越的有效性和效率优势。
表1。LOL(v1[54]和v2[59])、SID[9]、SMID[10]和SDSD[48](室内和室外)数据集的定量比较。最高的结果是红色,而第二高的结果是蓝色。我们的Retinexformer显著优于SOTA算法。
表2。在具有sRGB输出模式的FiveK[5]数据集上的结果。
**定性结果。**Retinexformer和SOTA算法的视觉比较如图3、4、5和7所示。请放大以获得更好的视图。先前的方法要么导致如图3中的RUAS那样的颜色失真,要么包含过曝光/欠曝光区域,无法抑制如图4中的RetinexNet和DeepUPE那样的噪声,要么生成如图4的Restormer和SNR-Net那样的模糊图像,或者引入如图5中的DRBN[58]和SNR-Net那样的黑点和非自然伪影。相比之下,我们的Retinexformer可以有效地增强低能见度和低对比度或低光区域,可靠地去除噪声而不引入斑点和伪影,并稳健地保持颜色。请注意,图7中的五个数据集没有根据真相因此,图7中的视觉结果更具说服力和公平性,可以证明其有效性。可以看出,在各种场景中,我们的方法比其他SOTA监督和非监督算法表现得更好。
图3。LOL-v1[54](顶部)和LOL-v2[59](底部)的结果。我们的方法有效地提高了可见性并保留了颜色。
图4。SID[9](顶部)和SMID[10](底部)上的视觉结果。以前的方法要么因噪声而崩溃,要么使颜色失真,要么产生模糊和曝光不足/过多的图像。而我们的算法可以有效地去除噪声,重建出曝光良好的图像细节。
图5。SDSD[48]上的视觉结果——室内(顶部)和室外(底部)。其他算法要么生成过度曝光和噪声图像,要么引入黑点损坏和非自然伪影。而Retinexformer可以恢复暴露良好的结构内容和纹理。
图7。LIME[18]、NPE[50]、MEF[36]、DICM[28]和VV[47]数据集上的可视化结果。我们的Retinexformer性能更好。
用户学习分数。我们进行了一项用户研究,以量化来自七个数据集的增强微光图像的人类主观视觉感知质量。23名人类受试者被邀请对增强结果的视觉质量进行独立评分。这些测试人员被告知从以下方面观察结果:(i)结果是否包含曝光不足/过度区域,(ii)结果是否包括颜色失真,以及(iii)结果是否被噪声或伪影破坏。分数从1(最差)到5(最好)不等。对于每个弱光图像,我们将其和通过各种算法增强的结果显示给人类测试人员,但没有它们的名称。总共有156张测试图像。用户研究得分如表3a所示。我们的Retinexformer平均得分最高。此外,我们在LOL-v2real(L-v2-R)、LOL-v2-synthetic(L-v2-S)、SID、SMID和SDSD室外(SD-out)数据集上,结果最受人类受试者青睐,在LOL-v1(L-v1)和SDSD室内(SD-in)基准上,结果第二受试者喜爱。
表3。(a) 比较了各种微光增强算法的人类感知质量。(b) 比较了不同方法对高级视觉理解的预处理效果。最高的结果是红色,第二高的结果是蓝色。
4.3.微光物体检测
**实验设置。**我们在ExDark[32]数据集上进行了微光物体检测实验,以比较不同增强算法的预处理效果,从而实现高级视觉理解。ExDark数据集由7363张曝光不足的图像组成,这些图像用12个对象类别边界框进行注释。5890个图像被选择用于训练,而左边的1473个图像被用于测试。YOLO-v3[43]被用作检测器,并从头开始训练。不同的微光增强方法作为具有固定参数的预处理模块。定量结果。表3b列出了平均精度(AP)分数。我们的Retinexformer平均获得了最高的结果,66.1 AP,比最近的最佳自监督方法SCI[37]高0.5 AP,比最新的最佳全监督方法SNRNet[57]高0.8 AP。此外,Retinexformer在五个对象类别上产生最佳结果:自行车、船、瓶子、猫和狗。定性结果。图6描绘了低光(左)场景和Retinexformer增强的场景(左)中检测结果的视觉比较。探测器很容易错过一些船只,或者在曝光不足的图像上预测不准确的位置。相反探测器可以重新能够预测放置良好的边界框,以覆盖我们的Retinexformer增强的图像上的所有船只,显示了我们的方法在提高高级视觉方面的有效性。
图6。我们的方法在Exdark数据集上对弱光(左)和增强(右)场景中的物体检测进行的视觉比较。
4.4.消融研究
我们在SDSD室外数据集上进行了消融研究,以证明Retinexformer在其上具有良好的收敛性和稳定的性能。结果如表4所示。
分解消融。我们进行了分解消融,以研究每个部件对更高性能的影响,如表4a所示。基线-1是通过从Retinexformer中去除ORF和IG-MSA而获得的。当我们分别应用ORF和IG-MSA时,基线-1实现了1.45和2.39dB的改善。当联合使用这两种技术时,基线-1的增益为3.37 dB。这一证据表明了我们的ORF和IG-MSA的有效性。
基于Retinex的一阶段框架。我们进行消融术来研究ORF。结果列于表4b中。我们首先从Retinexformer中去除ORF,并将R的输入设置为Ilu=I。该模型产生28.86dB。然后我们应用ORF,但设置E来估计照明图L。R的输入是I/L,其中./表示按元素划分。为了避免计算机抛出异常,我们添加了一个小常数ε=1×10?4的L。然而,正如第3.1节所分析的那样,计算机很容易受到小值划分的影响。因此,该模型获得了0.11dB的有限改进。为了解决这个问题,我们估计了点亮-L,并将R的输入设置为Ilu=I⊙772 L。模型增益为0.40dB。在使用Flu来指导R之后,该模型继续实现了0.58dB的PSNR和0.007SSIM的改进。自我关注计划。我们进行消融来研究自我注意方案的效果。结果如表4c所示。
基线-2是通过从Retinexformer中删除IGMSA而获得的。为了进行公平的比较,我们将以前的CNN Transformer混合方法使用的全局MSA(G-MSA)插入R的每个基本单元中。G-MSA的输入特征图被缩小到14大小,以避免内存不足。我们还将我们的IG-MSA与Swin Transformer[31]提出的基于**局部窗口的MSA(W-MSA)**进行了比较。如表4c所示,我们的IG-MSA比G-MSA和W-MSA分别高1.41和1.34 dB,同时成本更低2.08G和0.86G FLOPS。这些结果证明了所提出的IG-MSA的成本效益优势。
表4。我们对SDSD[48]户外数据集进行消融研究。报道了PSNR、SSIM、Params和FLOPS(大小=256×256)。
5.结论
在本文中,我们提出了一种新的基于Transformer的方法,Retinexformer,用于微光图像增强。我们从Retinex理论开始。通过分析隐藏在曝光不足场景中并由点亮过程引起的损坏,我们将扰动项引入到原始的Retinex模型中,并建立了一个新的基于Retinex的框架ORF。然后,我们设计了一个IGT,该IGT利用ORF捕获的照明信息来指导具有不同照明条件的区域的长程依赖性和相互作用的建模。最后,我们的Retinexformer是通过将IGT插入ORF而获得的。大量的定量和定性实验表明,我们的Retinexformer在13个数据集上显著优于SOTA方法。用户研究和弱光检测的结果也证明了我们的方法的实用价值。