暗光增强论文“Kindling the Darkness:A Practical Low-light Image Enhancer”
还是retinex-based的思想,将图像调节分解为2个部分:一个部分是负责光照的调节,一份部分是负责退化的去除。在这样的方法下,最原始的空间是被分成两个类似的子空间,以便更好的正则化或者学习。值得注意的是,论文网络训练所需的图像对是用不同曝光条件下拍摄的图像,而不是使用真实的反射图像和光照信息。(无illumination和reflectance的GT)
论文的所提出的KinD网络能达到较快的处理速度,同时也能达到较好的处理效果。
Introduction
如何在低光照下获取高质量的图片?在使用相机的时候,可以设置较高的ISO,长曝光时间,以及使用闪光灯,但是多少都会有一些副作用。
https://github.com/google/night-sight介绍的更为清楚,这里重复一下:
比如使用高ISO的时候,感光度增加的同时噪声也被放大了,会导致较低的信噪比。一般来说许多自动曝光的算法也是在调整曝光时间和ISO的时候优先调节曝光时间。
使用长时间的曝光,需要场景是静止不动的,否则输出的图片是模糊的图像。
使用闪光灯的话,打光会带来一些不自然的光线。
如下 图所示,暗光下的图片几乎无法看清图片的细节。
对于用户而言,每个用户所认为的well-exposed的是不同的,因此没有很好的ground truth。
暗光增强的三个不同的挑战也因此被提出来了:
1.如何有效的从单张图像中估计出光照图成分;
2.如何在变亮图像的同时去除噪声和颜色失调;
3.如何在没有明确定义GT的情况下进行模型训练。
本文对应的贡献点如下几点:
1.提出的网络将图像分成两个部分,即反射部分和光照部分。
2.网络没有使用reflectance 和 illumination图的GT,只是使用一对不同光照程度的图像。
3.设计的模型可以提供灵活映射的模型,可根据使用者进行调节,用户喜欢什么样的光照条件是可以调节的。
4.图像提出一个模块可以有效去除暗区放大的噪声。
5.实验效果在LOL [21], LIME [11], NPE [9], and MEF [30]等数据集上自称达到sota的效果。
网络结构图
Data Usage & Priors
感觉这里作者的想法很巧妙。
由于缺乏光照条件的well-defined的ground truth,也缺乏反射图和光照图的ground truth。因此这种图层分解的问题本质上是一个不确定解的问题,因此需要先验知识或者正则化。假设图片没有退化效果,对于某个场景获得的反射图(reflectance map)应该是相同的。而光照图则是可以是多种多样的,简单而具有相互一致的结构性。在实际情况中,暗光条件下的退化结果是要比在亮一点的图像中要强的,而这种退化效果被转移到反射图reflectance component了。
因此作者提出了一个假设:
在使用暗光——正常光的图片对进行训练的时候,正常光的图片中的反射图(reflectance map)可以用来作为暗光图复原后的ground truth!!
在正常光图片中的reflectance map和暗光图中的reflectance map是不同的!!
不使用合成的数据的原因是作者认为这种退化作用是比较复杂的,使用不同的相机效果也是不一样的。
因此作者提出Illumination Guided Reflectance Restoration和Arbitrary Illumination Manipulation两个不同的模块,前者用于恢复噪声部分(pollution component),后者用于获得或者操作一个Illumination Manipulation。
Illumination Guided Reflectance Restoration
作者通过公式
I = R ∘ L + E = R ~ ∘ L = ( R + E ~ ) ∘ L = R ∘ L + E ~ ∘ L \mathbf{I} =\mathbf{R} \circ \mathbf{L}+\mathbf{E}=\mathbf{\tilde{R}}\circ\mathbf{L}=(\mathbf{R}+\mathbf{\tilde{E}})\circ\mathbf{L}=\mathbf{R} \circ \mathbf{L}+\mathbf{\tilde{E}}\circ \mathbf{L} I=R∘L+E=R~∘L=(R+E~)∘L=R∘L+E~∘L
认为,即使是使用最简单的高斯白噪声 E ∼ N ( 0 , σ 2 ) \mathbf{E}\sim\mathcal{N}(0,\sigma^2) E∼N(0,σ2),最后 E ~ \mathbf{\tilde{E}} E~由于光照图 L \mathbf{L} L的存在会导致reflectance restoration无法独立成为一个新任务,而需要通过照明图来作为一个guider。由于 L \mathbf{L} L一直在改变,我们无法获得用于去噪的合适的reference。
Arbitrary Illumination Manipulation
对于不同的用户和设备而言,最佳的照明图是不一样的。因此,一个实际上可用的系统需要提供一个接口用于任意的照明图的操作。作者认为传统的fusion、light level appointment和gamma correction都无法有效的获得照明图,因此本文实际上从真实数据中学到了一个灵活的mapping function,用户可以使用任何等级的光照条件和曝光度。
(这个curve通过KinD网络学习得到,比传统的gamma校正效果更好,可以更灵活的调整light levels)
Layer Decomposition Net
主要的重点是损失函数的设计:
L L D : = L r e c L D + 0.01 L r s L D + 0.08 L i s L D + 0.1 L m c L D \mathcal{L}^{LD}:=\mathcal{L}_{rec}^{LD}+ 0.01\mathcal{L}_{rs}^{LD}+0.08\mathcal{L}_{is}^{LD}+0.1\mathcal{L}_{mc}^{LD} LLD:=LrecLD+0.01LrsLD