Unsupervised Single Image Deraining with Self-supervised Constraints
[pdf]
本文可能是第一篇基于无监督深度学习的去雨算法。
Abstract
Most existing single image deraining methods require learning supervised models from a large set of paired synthetic training data, which limits their generality, scalability and practicality in real-world multimedia applications. Besides, due to lack of labeled-supervised constraints, directly applying existing unsupervised frameworks to the image deraining task will suffer from low-quality recovery.
Therefore, we propose an Unsupervised Deraining Generative Adversarial Network (UD-GAN) to tackle above problems by introducing self-supervised constraints from the intrinsic statistics of unpaired rainy and clean images.
Specifically, we firstly design two collaboratively optimized modules, namely Rain Guidance Module (RGM) and Background Guidance Module (BGM), to take full advantage of rainy image characteristics: The RGM is designed to discriminate real rainy images from fake rainy images which are created based on outputs of the generator with BGM. Simultaneously, the BGM exploits a hierarchical Gaussian-Blur gradient error to ensure background consistency between rainy input and de-rained output.
Secondly, a novel luminance-adjusting adversarial loss is integrated into the clean image discriminator considering the builtin luminance difference between real clean images and derained images.
Comprehensive experiment results on various benchmarking datasets and different training settings show that UD-GAN outperforms existing image deraining methods in both quantitative and qualitative comparisons.
现有的单一图像解训练方法大多需要从大量的成对合成训练数据中学习监督模型,这限制了其在现实多媒体应用中的通用性、可扩展性和实用性。此外,由于缺乏标签监督约束,直接将现有的无监督框架应用于图像解约束任务,恢复质量较低。
因此,本文提出了一种无监督脱机生成对抗网络 (UD- GAN) 来解决上述问题,该网络从未配对的雨和干净图像的内在统计信息中引入了自监督约束。
首先,设计两个协作优化模块,即雨引导模块 (RGM) 和背景引导模块 (BGM),充分利用雨的形象特点:RGM 旨在区分真正的雨图像假雨图像(基于 BGM 的生成器的输出)。同时,BGM 利用分层高斯模糊梯度误差来确保雨天输入和雨天输出之间的背景一致性。
其次,考虑到干净图像与非干净图像之间的亮度差异,在干净图像判别器中引入了一种新的亮度调节对抗损耗算法。
在不同的基准数据集和不同的训练设置下的综合实验结果表明,UD-GAN 方法在定量和定性上都优于现有的图像去解算法。
3. UD-GAN
如图 3 所示,本文的目标是,给定随机和不成对训练样本 和 ,学会从雨域 R 变换到目标清洁域 C。第一个生成器 Gc 是用于将雨输入图像转换到干净输出图像,即 deraining 变换: R→C。相应地,对抗判别器器 Dc 用于区分真正的干净图像 C 和生成的 de-rain 图像C˜:
然而,仅用对抗成本训练去雨生成器 Gc 可能会在生成的去雨输出的某些区域引入视觉伪影 [22],但干净的图像判别器 Dc 最终仍然会将其分类为真实数据而不是生成数据。
为了解决这一问题,下面将介绍脱轨问题的内在统计的自监督约束。
3.1. Self-supervision by Rainy Image
3.1.1 Rain Guidance Module (RGM)
As discussed above, existing unsupervised frameworks tend to suffer from the under-constrained problem due to lack of labeled-supervised constraints and hard to capture the varied transformations from rainy inputs to clean outputs due to the diversity of rain streaks. Hence, we introduce a Rain Guidance Module (RGM) to take full advantage of the intrinsic statistics of original rainy inputs, and in turn use the learned rain characteristics to guide in better deraining.
如前所述,由于缺乏标签监督约束,现有的无监督框架往往会遇到约束不足的问题,而且由于降雨条纹的多样性,难以捕捉从降雨输入到清洁输出的各种转换。
因此,本文引入一个雨引导模块 (RGM) 来充分利用原始降雨输入的内在统计信息,进而利用学习到的雨特征来指导更好的去雨。
基于广泛使用的雨模型: R = C + S,本文利用干净图像 C 和雨条纹 S 之间的内部相互依赖来间接约束生成器 Gc 的去雨输出 C˜ 。
如图 3 所示,RGM 主要依赖于一个独立的判别器 Ds。
首先,获得雨输入 R 之间的差异 (即删除的雨条纹 S˜) 和去雨输出 C˜ : S˜= R−C˜。
然后,叠加雨条纹 S˜ 到真正的干净的图像 C,来创建假的雨天图像 :S˜+C,并通过雨条纹判别器 Ds 将它们从真实的雨天图像 R 区分开来:
作者认为,如果去雨生成器 Gc 被训练得足够好,当叠加删除的雨条纹 S˜ 到任何真正干净的图像C,得到的假雨天图像 S˜+ C 应区别真正的雨图像 R。
也就是说,RGM 真正作为 “指导老师” 间接帮助 Gc 获得更好的去雨输出 C˜ 通过鼓励了雨条纹 S˜= R−C˜ 接近真正的雨条纹。
3.1.2 Background Guidance Module (BGM)
除了从 rainy 域到 clean 域的转换,image deraining 的另一个重要目标是保证内容的一致性,避免在 deraining 之后丢失重要的细节。
为了实现这一目标,设计了另一个背景引导模块 (Background Guidance Module, BGM),进一步利用输入的降雨图像为去雨生成器 Gc 提供更合理、更可靠的我监督约束。
受到 [24,40,7,8] 的启发,作者发现在应用适当的低通滤波器,如高斯模糊核或导向滤波后,雨天图像和干净图像的低通版本都是无雨的,并且近似相等,它们只包含背景/内容特征。可以利用这一事实来指导去雨过程。
具体来说,分层次地使用不同尺度的高斯模糊核 σ 来过滤雨天输入 R 和 derain 输出 C˜,分别获得它们的背景特征。从图 4 可以看出,随着高斯模糊尺度 σ 的增大,不仅背景特征开始变得相似,而且背景特征之间的平均梯度误差也在减小。
在此基础上,通过背景引导损失 L^B 对去雨生成器 Gc 形成一个引导,该引导强制雨输入和去雨输出的高斯模糊梯度在不同尺度的 σ 下匹配:
式中,∇, B_σ 表示梯度计算和高斯模糊运算。利用 λ_σ 值来平衡不同高斯模糊水平下的误差。
作者认为有必要分层利用这些梯度误差,因为不同层次的背景特征包含不同层次的重要细节信息。因此,在实验的基础上,σ 分别为 3,5,9 时,λ_σ 取值为 [0.01,0.1,1]
3.2. Self-supervision by Clean Image
如公式 1 所示,去雨生成器 Gc 和干净图像判别器 Dc 形成一个完整的 GAN,对它们应加一个对抗损失,其值表示去雨生成器 Gc 的去雨输出在多大程度上看起来是一个干净的图像。
然而,仅仅通过像 [11,53,22] 这样的标准对抗损失来训练 Dc 来分离生成的去雨图像和真正的干净图像是不够的,因为它们之间存在内在的亮度差异。
具体来说,作者发现:
(1) 真实的雨景图像几乎是多云的,它们的平均亮度通常较低。如果直接使用真实干净的图像 (通常在收集的真实世界数据集中是晴天),通过标准的对抗损失来约束经过雨水处理的输出,经过雨水处理的输出通常太亮,与阴天不匹配 (图 5 (左));
(2) 人工合成雨图像的雨条纹总是以一些明亮的线条呈现 (图1 (a))。因此,那些高光照度的降雨图像可能会留下更多的残余降雨条纹。
本文探索利用一些 “干净图像约束” 来规避上述问题。具体来说,从干净的训练样本 {c_j}^M{j=1}C中,额外生成一个负的训练样本集 E:{e_k}^K_{k = 1}。E 通过增强图像的亮度在 C。
如图 5 所示 (右),在训练期间,干净图像判别器 Dc 应该最大限度地分配正确标签给假的去雨图像C ~,真正的干净图像 C 和亮度增强的干净图像 E 的概率。这样可以正确引导去雨生成器 Gc 将多雨的输入转换为干净的输出。因此,重新定义亮度调整对抗性损失如下
本文讨论了加入亮度调节对抗性损失可以保证:
(1) 真实雨景中去雨后的图像具有更真实自然的亮度;
(2) 合成雨景图像去雨后的图像留下更少的雨条纹。
在实验部分,图 7、8 验证了主观效果的改善。
【关于损失函数,没有难度,可参考原文】
相关博客: