Retinexformer: One-stage Retinex-based Transformer for Low-light Image Enhancement
- 清华大学、维尔兹堡大学和苏黎世联邦理工学院在ICCV2023的一篇transformer做暗图增强的工作,开源。
- 文章认为,Retinex的 I = R ⊙ L I=R\odot L I=R⊙L假设干净的R和L,但实际上由于噪声,并不干净,所以分别为L和R添加干扰项,把公式改成如下:
- 本文采用先预测 L ‾ \overline L L再使用 I ⊙ L ‾ I\odot\overline L I⊙L来预测增强结果的retinex范式。结合上面公式可以得到:
- 其中第一项是因为假设 L ⊙ L ‾ = 1 L\odot\overline L=1 L⊙L=1,所以第一项是我们要的增加结果,是干净的R,而第二项是由于 L ^ \hat L L^引进的干扰,即过曝或欠曝的干扰,第三项是 R ^ \hat R R^引进的干扰,即噪声和伪影。第二项第三项统称为corruption,得到下式:
由于 I l u I_{lu} Ilu还包含corruption,它并不是我们要的最终增强结果。我们可以先估计 I l u I_{lu} Ilu,再将其中的C去掉,得到最终的增强结果 - 网络结构如下图所示,其中 L p L_p Lp是图片的三通道均值。下面的图对模块的展开方式有点奇怪。其实就是对concate后的亮度图和原图,提取 L ‾ \overline L L和特征 F l u F_{lu} Flu,然后用 F l u F_{lu} Flu对后面的修复过程中transformer 的V 进行rescale,也就是用在了illumination-guided attention block。后面的修复过程就是把初步的增强结果进行细化,抑制过曝区域,去噪的过程。
- 实验结果如下图所示,只给了PSNR和SSIM,不过没有和LLFlow比,所以区区22的PSNR也敢称SOTA。
- 也比较了exdark上的增强结果和多个数据集上的user study
- 个人感觉这篇工作没什么亮点,就是搞网络结构,但思路又不是特别亮眼,效果也没有特别好,还没有给lpips niqe LOE等指标。