M2Retinexformer:面向低光图像增强的多模态 Retinexformer M2Retinexformer: Multi-Modal Retinexformer for Low-Light Image Enhancement
在Retinexformer上引入深度、亮度、语义三模态跨注意力融合以提升低光增强。
前置知识
Retinex 理论与 Retinex-based 分解
Retinex 理论由 Edwin Land 在 1971 年提出,假设图像可分解为反射率 $R$ 与照度 $L$,即 $S = R \odot L$。基于此的低光增强方法先估计照度图再恢复反射率。Retinexformer 用 IG-MSA 把照度先验注入自注意力的 Value。
本文是 Retinexformer 的多模态扩展,必须先理解 Retinexformer 的 one-stage 框架 $(I_{lu}, F_{lu}) = E(I, L_p),\; I_{en} = R(I_{lu}, F_{lu})$ 与照度先验 $L_p$ 的角色,才能明白 MMCAB 把照度特征 $F_{lu}$ 与多模态特征 $F_m$ 并联注入的真正意义。
自注意力与跨注意力 (Self/Cross-Attention)
自注意力 Q/K/V 都来自同一输入;跨注意力 Q 来自 RGB、$K_m,V_m$ 来自另一模态 $X_m$。MMCAB 同时跑 IG-MSA 与跨注意力两条路径,再用门控 $g$ 融合 $F_{out} = g \odot S + (1-g) \odot U$。
整个 M2Retinexformer 的核心机制就是用跨注意力做异构模态融合、用门控做可靠性加权,不理解 Q/K/V 的来源与门控公式就读不懂 MMCAB 与 Adaptive Gating。
单目深度估计与 Depth Anything V2
单目深度估计是从 RGB 图预测每个像素到相机的距离。Depth Anything V2 是 SOTA 基础模型,提供对光照鲁棒的几何先验。本文冻结它提取中间 ViT 特征作为几何模态 $F_m$,因为深度图在不同光照下基本一致,能区分阴影/遮挡/距离造成的暗区。
深度模态是本文消融中贡献最大 (+2.00 PSNR) 的单一组件,理解它对光照不变的几何结构才能解释为什么把 RGB 无法分辨的暗区用深度区分开能带来这么大的增益。
自监督视觉表征与 DINOv3
DINOv3 是 Meta 的自监督 ViT 骨干,无需人工标注就能学到富含语义与物体边界信息的特征。本文冻结它作为语义特征提取器,把中间层特征当作辅助模态 $F_m$,目的是增强时保留物体级颜色一致与结构完整。
DINOv3 在 ablation 里单独贡献 +1.05 PSNR(加 perceptual loss 后),但和 Depth 同时加入时反而掉到 +1.08,说明自监督语义特征和深度几何特征之间存在冗余/冲突,需要理解这一现象才能解释文中"模态选择仍然关键"的结论。
图像质量指标 PSNR 与 SSIM
PSNR 衡量重建图与真值的像素级误差,单位 dB;SSIM 从亮度、对比度、结构三方面综合评估,取值 $[0,1]$。两者数值越高代表增强质量越好,是低光增强领域事实上的标准指标,对短曝光视频噪声敏感。
表 1 全部 7 个数据集的对比都基于 PSNR/SSIM,图 1 的柱状图也是 PSNR。要正确解读 M2Retinexformer 在 SMID/SDSD-out 上 PSNR 略低于 Retinexformer (-0.25 / -0.56) 这一"反常"现象,必须先理解 PSNR 对短曝光视频噪声的敏感性。
研究动机
低光图像增强是底层视觉经典难题——欠曝图像里同时混着低可见度、低对比度、噪声放大与颜色畸变,不仅影响观感,还会拖垮下游的目标检测、语义分割、识别等任务。Retinex 理论提供了物理可解释的分解思路,过去十年里 RetinexNet、KinD、URetinex-Net、SNR-Net、Retinexformer 等模型把这件事做到很高水平,其中 Retinexformer [ICCV 2023] 凭借 One-stage Retinex-based Framework (ORF) 与 IG-MSA 在主流基准上一度 SOTA。然而 Retinexformer 与几乎所有 Retinex-based 方法都共享根本缺陷——只吃 RGB:照度估计来自 RGB、IG-MSA 的 Q/K/V 也来自 RGB,无法显式区分距离/遮挡/阴影造成的暗区与真实低光暗区。表 1 印证:LOL-v2 Real 上 Retinexformer 仅 21.85 PSNR;SMID/SDSD-out 上已被 SNR-Net 反超,RGB-only 瓶颈已显现。
本文的目标是本文的具体目标是设计一个多模态扩展版本 M2Retinexformer (Multi-Modal Retinexformer),在不破坏 Retinexformer 单阶段 ORF 流水线的前提下,把三类互补的辅助模态——深度 (Depth)、亮度先验 (Luminance)、语义特征 (Semantic)——通过跨注意力与自适应门控注入到腐蚀修复器 (Corruption Restorer) 中,使得网络在增强亮度时还能感知几何结构、内容分布与物体语义。具体性能目标是在 LOL-v1/v2 Real/v2 Syn、SID、SMID、SDSD-in/SDSD-out 共 7 个数据集上整体超过 Retinexformer 与 SNR-Net,并把可训练参数控制在 2M 量级 (冻结的 DepthAnything-V2 + DINOv3 提供其余约 46M 参数),做到计算高效、可扩展且端到端可训练。
与已有工作不同的是,现有最相近的工作是 ModalFormer [Brateanu et al., 2025],它通过预训练的 4M-21 模型一次性提取 8 种辅助模态再融合,缺点是 198M 参数带来的巨大计算开销使效率不在其设计目标内。本文选择了一条差异化路线:只挑选三种对低光增强最关键的轻量模态(深度、亮度、语义),通过统一的 Multi-Modal Cross-Attention Block (MMCAB) 接口和模块化 Modality Extractor 把它们插进 Retinexformer 的修复器;更进一步,作者提出了 Adaptive Gating——根据辅助模态的可靠性动态平衡 IG-MSA 自注意力和跨注意力的权重——以及 Progressive Refinement (τ 阶段复用同一份 $F_m$),把如何选择性融合与如何高效融合这两个 ModalFormer 未系统解决的问题变成本文的核心贡献。
核心方法
直觉上,作者把低光增强看作几何+内容+亮度三要素联合重建:几何由深度图、内容结构由语义特征、亮度分布由 NTSC/Sobel 增强亮度图提供,三者在不同光照下都比 RGB 更稳定。技术上 M2Retinexformer 保留 Retinexformer 的 Illumination Estimator E 估计 $(I_{lu}, F_{lu})$,新增 Modality Extractor 在多尺度 $s \in \{0,1,2\}$ 上提取三种模态 $F_m^s$,用 MMCAB 跨注意力注入 U 型编码器-瓶颈-解码器每一级;MMCAB 内部并行计算 IG-MSA 输出 $S$ 与跨注意力输出 $U$,由门控 $g_f = \sigma(W_f X + b_f)$ 加权融合。流水线由 τ 个 refinement stage 级联,模态特征只提取一次、多阶段复用。训练用 $\mathcal{L} = \mathcal{L}_1 + 0.5 \mathcal{L}_{per}$,整体可训练参数仅 2M、总参 48M,单卡 RTX 5090 完成全部实验。
核心创新可以凝练成两点。第一是把多模态选择性融合显式建模为带门控的双分支跨注意力:IG-MSA 自注意力 S (RGB 内部) 与跨注意力 U (RGB 查询 × 辅助模态 key/value) 同时存在,最终输出由一个最终门控 $g_f$ 加权融合 $\text{Output} = g_f \odot S + (1-g_f) \odot U$,其中每个跨注意力分支又有自己的子门控 $g_m$ 控制单模态可靠性;这与 ModalFormer 那种平等拼接所有模态或 Restormer 那种全自注意力形成本质区别。第二是 Modality Extractor 的模块化接口设计——每个模态只需实现一个轻量 encoder 并把特征投影到统一维度 $H/2^s \times W/2^s \times 2^s C$,就能在任意尺度被 MMCAB 调用,新增模态无需修改核心网络;这与 ModalFormer 把所有模态绑死在 4M-21 一个 backbone 上完全不同,是插件式多模态的工程化实践。
方法步骤详情
流程分六步。(1) 预处理:构造 $F_{in} = [I, L_p]$ 送入 E 得 $(I_{lu}, F_{lu})$。(2) 模态提取:Depth 用冻结 DepthAnything-V2 取中间 ViT 特征 $F_m^1$;Luminance 用 NTSC 权重叠 Sobel 与多尺度金字塔得 $F_m^2$;Semantic 用冻结 DINOv3 取中间层得 $F_m^3$。(3) 跨尺度对齐:投影到 $H/2^s \times W/2^s \times 2^s C$。(4) MMCAB 融合:并行算 IG-MSA 与跨注意力,子门控 $g_m$ 加权得 $U$,最终门控 $g_f$ 融合 $\text{Output} = g_f \odot S + (1-g_f) \odot U$。(5) Progressive Refinement:级联 τ∈{1,2,3} stage 复用 $F_m$。(6) 优化:$\mathcal{L} = \mathcal{L}_1 + 0.5\mathcal{L}_{per}$。
技术新颖性
技术新颖性体现在四点。第一,把光照不变几何 (深度) 作为独立模态注入低光增强——以往 Retinexformer/Restormer/SNR-Net 都默认几何由 RGB 隐式编码,本文用图 2 可视化与表 2 的 +2.00 PSNR 消融给出直接证据。第二,Adaptive Gating 设计可解释:每个跨注意力分支有自己的 $g_m$ 控制单模态可靠性,再由 $g_f$ 在 self/cross 之间二选一,这种层级化门控在 Restormer/SwinIR 里都不存在;表 2 中加 Depth +1.44 → 加 Depth+DINOv3 +1.08 的反向变化正是 gating 抑制冗余的副作用。第三,Modality Extractor 的模块化接口 (统一维度 + 任意尺度 + 插件式注册) 让模型真正可扩展,新增红外/热成像等异构传感只需实现轻量 encoder。第四,把总参控制在 48M、可训练 2M 是工程贡献——ModalFormer 用 198M 4M-21,本文效率做到近 1/4。
实验结果
表 1 性能:M2Retinexformer 在 LOL-v1 达 PSNR 24.89 / SSIM 0.859,相比 Retinexformer (23.61/0.836) 提升 +1.28 dB;LOL-v2 Real 上 23.85 / 0.891 提升 +2.00 dB (七数据集中最大);LOL-v2 Syn 27.12 / 0.950 提升 +1.60 dB;SDSD-in 30.48 / 0.908 提升 +1.74 dB。两个反常:SMID 上 28.76 比 Retinexformer (29.01) 低 0.25 dB,SDSD-out 上 27.39 比 Retinexformer (27.95) 低 0.56 dB,归因于两数据集是视频驱动多曝光使深度先验不稳定。表 2 消融 (LOL-v2 Real):基线 21.85;+PercLoss 22.81;+PercLoss+Depth 23.85 (+2.00) 深度单独贡献最大;全开仅 23.35~23.67。图 4 显示 M2Retinexformer 在颜色保真、纹理细节、噪声抑制上肉眼可见更接近真值。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| 低光图像增强 (LOL-v1) | PSNR / SSIM (越高越好) | 24.89 / 0.859 | Retinexformer 23.61 / 0.836;SNR-Net 24.61 / 0.842 | 比 Retinexformer +1.28 dB PSNR / +0.023 SSIM;比 SNR-Net +0.28 dB / +0.017 |
| 低光图像增强 (LOL-v2 Real) | PSNR / SSIM | 23.85 / 0.891 | Retinexformer 21.85 / 0.839;SNR-Net 21.48 / 0.849 | 比 Retinexformer +2.00 dB PSNR / +0.052 SSIM;比 SNR-Net +2.37 dB / +0.042 (本文最大提升) |
| 低光图像增强 (LOL-v2 Synthetic) | PSNR / SSIM | 27.12 / 0.950 | Retinexformer 25.52 / 0.929;SNR-Net 24.14 / 0.928 | 比 Retinexformer +1.60 dB / +0.021;比 SNR-Net +2.98 dB / +0.022 |
| 低光图像增强 (SID) | PSNR / SSIM | 24.84 / 0.678 | Retinexformer 24.44 / 0.680;SNR-Net 22.87 / 0.625 | 比 Retinexformer +0.40 dB / -0.002 SSIM;比 SNR-Net +1.97 dB / +0.053 |
| 低光图像增强 (SMID) | PSNR / SSIM | 28.76 / 0.814 | Retinexformer 29.01 / 0.814;SNR-Net 28.49 / 0.805 | 比 Retinexformer -0.25 dB / 持平;比 SNR-Net +0.27 dB / +0.009 (本文少数负向项) |
| 低光图像增强 (SDSD Indoor) | PSNR / SSIM | 30.48 / 0.908 | Retinexformer 28.74 / 0.883;SNR-Net 29.44 / 0.894 | 比 Retinexformer +1.74 dB / +0.025;比 SNR-Net +1.04 dB / +0.014 |
| 低光图像增强 (SDSD Outdoor) | PSNR / SSIM | 27.39 / 0.843 | Retinexformer 27.95 / 0.863;SNR-Net 28.66 / 0.866 | 比 Retinexformer -0.56 dB / -0.020;比 SNR-Net -1.27 dB / -0.023 (本文最大负向项) |
| 消融研究 (LOL-v2 Real, 单独模态贡献) | PSNR 增益 ΔPSNR | Depth +2.00 / Luminance +1.44 / DINOv3 +1.05 (各组件独立加到基线+PercLoss) | Retinexformer + PercLoss 22.81 (Δ=+0.96) | Depth 是最大单一贡献者;全模态 +1.50~+1.82 表明模态交互存在冗余/冲突 |
局限与改进
从作者自陈与表中数据看,局限性有三条。第一,多模态融合并不单调提升:表 2 中 Depth 单独贡献 +2.00 PSNR,同时加入 DINOv3 后反而掉到 +1.08,全开三模态仅 +1.50~+1.82,gating 虽抑制冗余但无法完全抵消跨模态交互噪声。第二,方法在 SMID (-0.25 dB) 与 SDSD-out (-0.56 dB) 上 PSNR 反而低于 Retinexformer;作者归因于这两个数据集是视频驱动的多曝光合成数据,曝光分布与退化模式与 LOL 系列差异大,导致 DepthAnything-V2 在长曝光图像上几何先验不稳定——这是模态可靠性依赖于数据集分布的隐性缺陷。第三,作者承认与最相近的 ModalFormer 无法直接对比,因后者缺乏公开代码权重。隐性局限:本文未给出推理延迟、FLOPs、显存等效率指标,无法定量评估 2M 可训练 + 48M 总参 + 冻结 backbone + 三尺度 + τ 阶段在 RTX 5090 之外的部署友好度。
独立分析的弱点
独立审视,弱点有四个具体场景。第一,Adaptive Gating 失效:表 2 中 +PercLoss+Depth+DINOv3 (22.93) 比 +PercLoss+Depth (23.85) 低 0.92 dB,说明两模态提供相似信息时门控 $g_m$ 无法识别冗余,造成跨注意力噪声污染;改进方向是引入模态间正交化约束或互信息最小化项。第二,模态选择缺乏自适应:固定选 Depth/Luminance/Semantic,但 SMID/SDSD-out 上深度不可靠,应让网络根据输入自动决定启用哪些模态,可参考 MoE 稀疏路由。第三,训练缺少多模态对齐损失:当前仅 L1 + VGG perceptual loss 监督 $I_{en}$,未约束 $F_m^s$ 与 $I_{en}$ 几何/语义一致性;可加 depth-aware loss 或 semantic consistency loss 稳定融合。第四,复现细节不全:paper 未给出 DINOv3/DepthAnything-V2 取哪几层、$C'$ 数值、τ 最优选择等关键超参。
未来方向
未来方向分作者提出与基于成果延伸两类。作者在结论指出模态可靠性依赖于场景,未来工作可纳入红外/热成像/事件相机等异构传感模态。基于本文成果可延伸的方向至少四个:(1) 把模态选择做成动态路由——类似 MoE 的 top-k gating,根据输入图像自适应启用最相关辅助模态,彻底解决 SMID/SDSD-out 上的负向问题;(2) 用更轻量的预训练 backbone 替换 DepthAnything-V2 + DINOv3 (二者冻结后仍有约 46M 参数),探索知识蒸馏或 LoRA 适配,进一步压低推理成本;(3) 把多模态 Retinexformer 推广到更一般的图像恢复任务如去雨、去雾、去噪,统一视角处理光照 + 退化耦合问题;(4) 引入视频时序信息,把 SMID/SDSD-out 这种视频数据上的负向性能通过跨帧一致性约束扭转过来,升级到 video 版本;(5) 把 MMCAB 与 diffusion/flow-matching 风格的去噪器结合,吸收 RetiDiff 与 PWC-Diff 的生成式思路,把多模态先验注入扩散采样过程。
复现评估
复现评估整体偏正面但仍有关键细节缺失。作者明确承诺代码与权重将在 https://github.com/YoussefAboelwafa/M2Retinexformer 开源(论文脚注 + 摘要末尾都提到),给出 7 个标准 benchmark 名称 (LOL-v1、LOL-v2 Real/Synthetic、SID、SMID、SDSD Indoor/Outdoor),并报告硬件 (单卡 RTX 5090)、优化器 (Adam)、损失组成 ($\mathcal{L}_1 + 0.5 \mathcal{L}_{per}$) 等关键训练设置。但缺失细节较多:(a) DepthAnything-V2 取的具体层编号与特征维度 $C$;(b) DINOv3 取的具体层与通道数;(c) Modality Extractor 每尺度 $2^s C$ 中 $C$ 数值;(d) encoder/decoder 通道数与 MMCAB 堆叠数量;(e) τ 最优值(ablation 仅报告 τ=3 结果)。代码开源后会大幅降低复现难度,但仅凭正文无法复现。
论文图表
图 2 包含两个子图:(a) 正常光照图像的深度图;(b) 同一场景低光图像的深度图。两张深度图在结构上几乎完全一致——物体边界、远近层次、阴影区域的几何轮廓都保持稳定,说明单目深度估计对光照变化具有天然的鲁棒性。
这是支撑为什么选 Depth 作为多模态先验的核心论据,对应 motivation 部分的核心观察 (i),没有这张图读者无法直观相信深度是光照不变的几何线索。