ReDDiT:基于反射率感知扩散轨迹蒸馏的低光图像增强

提出ReDDiT,一种基于反射率感知扩散轨迹蒸馏的低光图像增强方法,显著提升效率与质量,相关成果已在CVPR 2025发表。

原文标题:CVPR 2025 | 基于高效扩散的低光图像增强方法

原文作者:数据派THU

冷月清谈:

本文介绍了一种名为ReDDiT的高效低光图像增强方法,该方法基于扩散模型并创新性地结合了反射率感知和轨迹蒸馏技术。传统基于扩散模型的低光图像增强方法计算负担大,且加速方法常导致性能下降。ReDDiT通过理论分析,指出了拟合误差和推理差距是导致性能下降的主要原因,并针对性地提出了解决方案。具体来说,通过线性外推分数函数来减轻拟合误差,并通过将高斯流转移到反射率感知的残差空间来缩小推理差距。ReDDiT框架的核心是反射率感知轨迹优化(RATR)模块,该模块利用图像的反射率分量作为先验,对教师模型的轨迹进行调整和优化,为后续的蒸馏过程提供更准确的指导。实验结果表明,ReDDiT在保证甚至提升图像增强质量的同时,显著提高了效率,仅需少量步骤即可达到甚至超越现有SOTA方法的性能。

怜星夜思:

1、文章提到ReDDiT在少量步骤下就能达到很好的增强效果,那么这个“少量步骤”具体是多少?为什么减少步骤就能提高效率?会带来其他问题吗?
2、文章中多次提到“反射率感知”,这个反射率在低光图像增强中到底起到了什么作用?为什么作者认为反射率比直接使用低光图像或者干净图像更好?
3、文中提到了RATR模块,并且说它“简单而有效”,那么这个模块具体是怎么优化教师模型的轨迹的?为什么说它“反射率感知”?

原文内容

来源:计算机书童

本文共2700字,建议阅读5分钟
本文介绍了基于高效扩散的低光图像增强方法。


论文信息

题目:Efficient Diffusion as Low Light Enhancer
基于高效扩散的低光图像增强方法
作者:Guanzhou Lan, Qianli Ma, Yuqi Yang, Zhigang Wang, Dong Wang, Xuelong Li, Bin Zhao

论文创新点


  1. 理论分析与针对性改进:论文作者深入分析了扩散模型在低光图像增强应用中性能下降的原因,识别出拟合误差推理差距这两个主要因素。针对拟合误差,提出通过对分数函数进行线性外推来减轻其带来的性能损失;针对推理差距,采用将高斯流转移到反射率感知的残差空间的方法加以解决。
  2. 设计RATR模块:基于上述理论分析,作者设计了反射率感知轨迹优化(RATR)模块。该模块利用图像的反射率分量作为确定性先验,对教师模型的轨迹进行调整和优化,有效缩小了推理差距,为后续的蒸馏过程提供更准确的轨迹指导。
  3. 提出ReDDiT框架:引入了基于蒸馏轨迹的反射率感知扩散(ReDDiT)这一高效灵活的蒸馏框架。通过在优化后的教师模型和学生模型之间进行轨迹匹配蒸馏,ReDDiT在仅2步的情况下就能达到与之前需冗余步骤的基于扩散模型的方法相媲美的性能,在4步或8步时更是达到新的最先进(SOTA)结果,显著提升了低光图像增强的效率和质量。


摘要


基于扩散模型的低光图像增强(LLIE)中,迭代采样过程的计算负担仍是主要挑战。当前的加速方法,无论是基于训练的还是无训练的,往往会导致性能显著下降,这凸显了性能与效率之间的权衡。在本文中,作者识别出导致性能下降的两个主要因素:拟合误差和推理差距。关键思路是,通过对不正确的分数函数进行线性外推,可以减轻拟合误差;通过将高斯流转移到反射率感知的残差空间,可以缩小推理差距。基于上述思路,作者设计了反射率感知轨迹优化(RATR)模块,这是一个简单而有效的模块,利用图像的反射率分量来优化教师模型的轨迹。随后,作者引入了基于蒸馏轨迹的反射率感知扩散(ReDDiT),这是一个专为低光图像增强定制的高效灵活的蒸馏框架。该框架仅需2步就能达到与之前需冗余步骤的基于扩散模型的方法相媲美的性能,并且在4步或8步时达到了新的最先进(SOTA)结果。在10个基准数据集上进行的综合实验评估验证了该方法的有效性,始终优于现有的最先进方法。


3. 方法


表示高质量图像,前向扩散过程旨在使用马尔可夫过程生成一系列有噪潜在变量 ,其定义为公式:


其中 表示噪声调度, 表示在 时刻的协方差, 表示高斯噪声。在反向过程中,作者将低光图像 作为分数函数 的条件,并迭代预测干净图像:


在本节中,作者提出ReDDiT,旨在训练一个具有参数 的学生扩散模型,以更少的步骤学习教师模型 的轨迹。作者首先介绍轨迹蒸馏。接下来,从理论上分析导致性能下降的因素,并提出优化轨迹的简洁公式。然后,确定反射率分量对优化教师模型轨迹最为有效,并设计反射率感知轨迹优化(RATR)模块。最后,将所有组件集成到ReDDiT框架中进行蒸馏。



3.1 轨迹蒸馏


扩散蒸馏的本质与传统知识蒸馏不同,蒸馏后的扩散模型从教师模型学习轨迹,保留了扩散模型独特的迭代采样特性。作者将 定义为从时间步 到$s(s

有了这个轨迹解码器,教师模型的轨迹可以从时间步 解码到 。为了更精确地估计整个教师模型的轨迹,作者还利用中间步 来估计轨迹,将二阶轨迹解码器公式化为:


为了便于蒸馏过程中的轨迹学习,学生模型的轨迹应与教师模型从 的轨迹匹配。将学生模型的轨迹表示为 ,蒸馏正则化公式为:

有了这样的正则化,中间步 的信息将被蒸馏到学生模型中。在实践中,作者利用学生模型和教师模型预测的干净图像进行蒸馏,以实现稳定训练。教师模型和学生模型预测的干净图像分别表示为 ,公式如下:

蒸馏正则化修改为:

其中 是一个自适应权重,取值为


3.2 教师模型轨迹的优化


直接应用轨迹蒸馏通常会导致显著的性能下降。在本节中,作者从理论上分析了这种下降背后的核心原因,并提出了减轻其影响的策略。


  1. 关于教师模型轨迹的拟合误差:为了理解这一点,回顾公式(3)和公式(4),并考虑理想情况 ,即学生模型的轨迹与教师模型的轨迹完美匹配。在这种情况下,有:

由于教师模型是使用普通扩散损失函数训练的,理想的教师模型轨迹满足 。在这种情况下,公式(8)可以简化为:

然而,拟合误差的存在使得无法实现这一目标。存在不需要的组件的指导不可避免地导致次优结果。 2. 减轻拟合误差:幸运的是,作者发现这些不需要的项可以通过一个缩放参数 来减轻。对于项 ,可以通过乘以缩放参数 进一步降低其影响。 之间的不匹配引入了更显著的优化冲突。由于拟合误差的存在,该项并不总是与 一致。作者的关键思路是通过向理想值进行线性插值来优化该项,表示为 。这种方法不仅与前面的项保持一致,还提供了线性轨迹指导。应用这些操作后,优化后的教师模型轨迹可以表示为:


为此,忽略各项系数,蒸馏损失 等价于:


减轻推理差距:考虑到普通扩散模型是在高斯流上训练的,确定 不是纯高斯噪声,而是将其转移到残差空间:


其中 应位于低光图像和干净图像空间之间,作为学生模型学习的中间初始空间。这种定位确保了学生模型的初始分布比高斯分布更接近目标分布。此外,作者的研究表明,公式(10)中教师模型轨迹的优化可以通过一种简单的方法实现,如推论1所述。推论1:给定优化分量 ,公式(10)等价于


3.3 反射率感知轨迹优化


关于分量 的确定,如果使用真实的干净图像 会导致 退化为 。一种自然的方法是使用低光图像 作为 。在实践中,反射率兼具干净图像和低光图像 的特征,是优化轨迹的更好选择。基于这一观察,作者提出了RATR模块来优化教师模型的轨迹,从而缩小推理差距。


根据Retinex理论,给定光照图 和噪声 ,反射率可通过 得到。对于光照估计,作者采用低光图像 的最大通道来表示估计的光照图 ,这是常见的做法。关于ISO噪声估计,与之前基于非学习的去噪方法类似,噪声可建模为噪声图像与干净图像之间的距离。作者用这个距离来估计输入低光图像的噪声图:


其中 表示基于非学习的去噪操作,可实现灵活的蒸馏。通过这些估计,作者可以得到潜在的干净图像 。然后, 被用于轨迹优化以进行蒸馏。大量的消融实验表明,这种优化缩小了推理差距,显著提高了性能。


3.4 辅助损失


在分类的知识蒸馏中,来自数据标签的直接训练信号有助于学生分类器超越教师分类器。在ReDDiT中,作者将这一原理扩展到模型中,引入来自像素空间和特征空间的直接信号。在像素空间中,作者使用像素空间的L2损失:


在特征空间中,作者使用感知损失来增强学生对结构和纹理细节的学习:


蒸馏阶段的最终损失将所有组件整合到一个统一的训练框架中:


4. 实验


编辑:王菁



关于我们

数据派THU作为数据科学类公众号,背靠清华大学大数据研究中心,分享前沿数据科学与大数据技术创新研究动态、持续传播数据科学知识,努力建设数据人才聚集平台、打造中国大数据最强集团军。




新浪微博:@数据派THU

微信视频号:数据派THU

今日头条:数据派THU


我尝试从代码实现的角度来理解。RATR模块可能包含一些卷积层或者其他操作,用于从低光图像中提取特征,并根据估计的光照和噪声信息,对这些特征进行调整。调整后的特征会被用于指导扩散模型的反向过程,从而实现轨迹优化。具体实现细节可能比较复杂,需要查阅论文或者代码才能更深入地了解。

反射率就像一个“桥梁”,连接着低光图像和干净图像。低光图像是原始的、受光照影响的图像,而干净图像是我们想要恢复的理想状态。反射率则代表物体本身对光的反射特性,它相对独立于光照条件。因此,利用反射率作为先验信息,可以更好地引导扩散模型从低光图像恢复到干净图像。

我个人理解,减少步骤提高效率的核心在于知识蒸馏。教师模型(需要较多步骤)的“知识”被学生模型(少量步骤)学习了,学生模型站在了教师模型的肩膀上。但是,这种“速成”的方式会不会导致学生模型只学到了表面的东西,而忽略了深层的原理?例如对噪声的理解不够透彻,导致在某些情况下增强效果不佳?这是一个值得思考的问题。

我理解是这样的:直接用低光图,信息太少,模型可能无从下手;直接用干净图,又会让模型变成一个简单的图像复制器,失去了增强的意义。而反射率兼具两者的特点,既包含了低光图像的信息,又避免了噪声和光照的干扰,所以是更好的选择。Retinex理论yyds!

楼上的比喻很形象!我补充一点,从数学角度看,可以把低光图像分解为光照分量和反射率分量。光照分量是我们需要去除的噪声,而反射率分量才是我们想要保留的图像本质。通过估计和利用反射率,可以更精确地控制扩散过程,避免不必要的噪声放大或细节损失。

嗯,其实我觉得可以这么理解,扩散模型原本的轨迹可能像无头苍蝇一样乱撞,RATR模块就像一个导航系统,利用反射率信息给它提供了一个明确的目标方向。这个方向不是直接指向最终的干净图像,而是指向一个更合理的中间状态,这样可以避免模型走弯路,提高效率。

文章中提到ReDDiT在仅2步的情况下就能达到与之前方法相媲美的性能,4步或8步时达到SOTA。减少步骤意味着更少的迭代计算,因此能够提高效率。但减少步骤可能会带来一些问题,比如可能牺牲一些图像细节或平滑度,需要在性能和效果之间找到平衡,这篇论文中使用的轨迹蒸馏,就是为了在减少步骤的同时,尽量保留甚至提升增强效果。

楼上说得对,扩散模型的迭代次数确实直接影响计算量。不过我觉得ReDDiT厉害的地方在于它找到了一个更“聪明”的起点和方向。传统的扩散模型就像大海捞针,而ReDDiT通过反射率感知,相当于先用Reflectance分量缩小了搜索范围,然后再进行扩散,自然事半功倍。至于潜在问题,我觉得可能对某些特定场景的低光图像泛化能力还有待考察,毕竟Retinex理论本身也存在一些局限性。

RATR模块的核心在于利用反射率分量来调整教师模型的轨迹。简单来说,它通过估计光照图和噪声图,来获得一个潜在的干净图像(即反射率)。然后,用这个反射率来优化教师模型的轨迹,引导模型朝着更接近真实图像的方向前进。之所以说是“反射率感知”,是因为它的优化过程是基于反射率信息进行的,体现了Retinex理论的思想。