论文阅读笔记:Kindling the Darkness: A Practical Low-light Image Enhancer

摘要

在弱光条件下拍摄的图像通常能见度较差。除了不令人满意的照明,由于有限的相机质量,还有多种类型的退化,如噪音和颜色失真,被隐藏在黑暗中。换句话说,仅仅提高黑暗区域的亮度将不可避免地放大隐藏的退化。这项工作建立了一个简单而有效的"点燃黑暗"的网络(该网络为KinD),受Retinex理论的启发,将图像分解为两个部分。一个部分(照明 illumination)负责光照调节,而另一个部分(反射 reflectance)负责去除退化。这样,原始空间被解耦成两个更小的子空间,期望得到更好的正则化/学习。值得注意的是,“我们”的网络是用在不同条件下拍摄的成对图像来训练的曝光条件,而不是使用ground-truth的真实反射率和照明信息。大量的实验证明了“我们”的设计的有效性和它优于目前最先进的算法。“我们”的产品对严重的视觉缺陷具有很强的鲁棒性,并且用户友好,可以任意调整光照水平。此外,“我们”的模型在2080Ti GPU上处理VGA分辨率的图像所花费的时间不到50ms。以上优点使“我们”的成果具有实用价值。

论文要点

论文旨在解决的问题

  1. 实际上弱光图像并不存在绝对的ground-truth,对于不同的人/需求,最喜欢的照明水平可能是多种多样。
  2. 在没有ground-truth的情况下,该如何去训练网络
  3. 黑暗区域中的噪声往往更难去除,要如何设置模型对其进行降噪、颜色保真

论文中所采用的方案

  1. 引入一个人为设置的参数来控制照明的增强程度。用一对不同光照强度的图像来训练模型。
  2. 根据先验知识来寻求不同光照图像的关系,构建合适的损失函数来指导模型训练。
  3. 噪声是复杂分布在反射图R中,分布很大取决于光照L分布,故利用L来辅助重构R。此外,还解决了颜色失真的问题。

网络设计


KinDLayer Decomposition(层次分解) 、Illumination Adjustment(照明度调节)、 Reflectance Restoration(反射率恢复)三个部分组成。
该网络用两张不同光照程度 I l 、 I h I_l、I_h IlIh的成对图像来训练网络,而 I h I_h Ih不再需要是ground-truth。

Layer Decomposition

网络结构

在这里插入图片描述
论文中并没有对网络中的细节有很详细的阐述,于是我去github找了该论文的源码,仔细阅读了源码,发现图中网络与源码在某些细节上(如层数)有细微的差别,这可能是因为原作者后续又细微修改了代码的原因。

损失函数

  1. 根据先验知识,不同光照程度的图像分解出的反射率map应该相同,故有反映其相似度的 l o s s loss loss:
    在这里插入图片描述
    R l 、 R h R_l、R_h RlRh分别为 I l 、 I h I_l、I_h IlIh在Layer Decomposition 层分解出的反射率map。

  2. 对于分解出的照明度map来说,照明度map具有结构光滑的性质。于是作者引入了相对于输入图像照明结构的平滑度项 l o s s loss loss:
    在这里插入图片描述

  3. 同时引入了分解出的光照图L的相互平滑度 l o s s loss loss:
    在这里插入图片描述

  4. 分解出的 R 、 L R、L RL,应该要具备通过 I = R ∘ L I=R\circ L I=RL式子可还原为原来图像 I I I的性质。故引入了反映分解准确度的 l o s s loss loss:
    在这里插入图片描述
    最后结合以上 l o s s loss loss,Layer Decomposition 的损失函数为:
    在这里插入图片描述

Illumination Adjustment

网络结构

在这里插入图片描述
作者在Illumination Adjustment部分中引入一个人为设置的参数 α \alpha α来控制照明的增强程度。该参数在网络中直接与 L L L map 联合一起作为Illumination Adjustment的输入。在训练过程中, α \alpha α α = L t / L s \alpha=L_t /L_s α=Lt/Ls来定义。其中 L t L_t Lt为调整目标, L s L_s Ls为待调整的图像, L t 与 L s 都 可 以 为 L l o r L h L_t与L_s 都可以为L_l or L_h LtLsLlorLh α \alpha α大于1还是小于1反映着该网络是增强亮度还是降低亮度。

损失函数

引入反映增强后的相似度项 l o s s loss loss:
在这里插入图片描述
L ^ \hat{L} L^Illumination Adjustment层的调整结果。

Reflectance Restoration

网络结构

在这里插入图片描述在这里插入图片描述
根据先验知识,噪声是复杂分布在反射图 R R R中,分布很大取决于照明度 L L L分布,故利用 L L L来辅助恢复R。因此在Reflectance Restoration层中,作者将分解出的 R 、 L R、L RL一同联合作为输入,来重建 R R R

损失函数

采用恢复结果 R ^ \hat{R} R^与目标结果 R h R_h Rh L 2 L_2 L2距离以及SSIM、两map梯度的 L 2 L_2 L2距离作为该模块的损失函数:
在这里插入图片描述

相关试验

训练模型所使用的数据集:LOLdataset。

实验结果:

  1. 在LOL数据集中验证得出的结果(源码显示:使用的ratio=5.0):
    在这里插入图片描述
  2. 与各前沿算法的增强结果的视觉比较:
    在这里插入图片描述
    从上图来看,KinD的增强结果噪声更少、颜色更加真实。
  3. 除了在LOLdataset中验证外,作者还将KinD与其他前沿算法在LIME、NPE、MEF数据集中验证,并比较各算法的验证结果:
    在这里插入图片描述
    NIQE为一个常用的无参考图像的图像质量评价指标,NIQE值越小代表该图像质量越好。

个人对该模型的评价

优点

  1. 用一对不同光照强度的图像来训练模型,无需ground-truth。
  2. 根据先验知识来寻求不同光照图像的关系,构建了合适的损失函数来指导模型训练。
  3. 噪声是复杂分布在反射图R中,分布很大取决于光照L分布,故利用了L来辅助重构R。此外, 还解决了颜色失真的问题。
  4. 模型较轻量,处理效率高。

缺点/不足之处

  1. 作者通过引入一个人为设置的参数来控制照明的增强程度,来辅助指导无需ground-truth的模型训练,虽说可以算是"用户友好",但这也会导致在验证时或实际应用时,将难以人工选取较合适的参数α。
  2. 在论文中没有对α的选择做探讨,特别是验证过程时α的选择
  3. 对各 l o s s loss loss功能还可以进一步作消融实验,以验证 l o s s loss loss设计的合理性。

相关链接

  1. Paper: Kindling the Darkness: A Practical Low-light Image Enhancer
  2. Code
  • 6
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值