Online-updated High-order Collaborative Networks for Single Image Deraining
单图像去雨的实时更新高阶协作网络
摘要
大多数现有的基于深度学习的方法对生成的去雨图像进行监督,但很少有人从中间层, 不同的阶段, 不同的模块中探索有利于去除雨水条纹的特征
本文中, 我们提出一种具有多尺度紧凑约束的高阶协作网络, 和一个双向尺度内容相似度挖掘模块来利用深度网络的外部和内部特征去除降雨条纹。
- 在外部, 我们设计了一个以协作方式训练的三个子网络的分层框架, 其中底层网络向中间网络传输中间特征, 中间网络也从顶层网络接收较浅的雨特征, 并将特征发送回底层网络。
- 在内部, 对深度网络的中间层施加多尺度紧凑约束,通过拉普拉斯金字塔学习有用的特征。
- 此外, 开发了一个双向尺度内容相似性挖掘模块, 以自上而下和自下而上的方式来探索不同尺度的特征。此外,为了提高在真实雨天图像上的性能,我们提出了一种在线更新的学习方法。
前言
- 虽然目前的方法能够通过引导网络去除雨水条纹,但当引导过程不能准确估计时,他们表现不佳;
- 虽然多尺度架构已经被证明是有效的,但是现有的方法通常采用一种直接的方式来融合来自不同尺度的特征,而不探索多尺度特征的特性;
- 现有的方法通常使用合成数据集来训练深度模型,然而, 合成数据和真实数据之间的差距限制了这些方法的性能。
具体来讲, 高阶协作网络包含三个子网络(下, 中, 上),以协作的方式进行学习, 其中底层网络传输中间特征 ,中间网络也从顶层网络接收较浅的雨特征,并将特征发送回底层网络。中顶层网络为底层网络提供深度监督,更好地学习并将浅层雨特征传输到更高的阶段, 便于图像去雨。为了在内部从深度网络中生成更有用的特征,我们建议在中间层上施加多尺度紧凑约束,以利用拉普拉斯金字塔图像学习更好的特征,此外,我们开发了一种双向尺度内容相似度挖掘模块以上下两种方式捕获不同尺度的特征之间的长期依赖关系,该模块嵌入到编码解码体系中, 以探索有用的特性。
提出的方法
在本节中, 我们将介绍: ** 高阶协作网络 **,多尺度紧凑约束, 具有双向尺度内容相似度挖掘模块的编解码结构, 监督损失, 在线更新学习
高阶协作网络
如何以协作的方式利用中间层和不同模块的特性对图像恢复非常重要, 在这里,我们设计了一个有效的高阶协作网络, 以帮助每个子网络以外部的方式学习特征, 来更好的实现图像去雨,
高阶协作网络由三个结构相似的子网络组成, 底部的(B)、中间(M)和顶部(T)子网络分别包含三个、两个、一个编码解码组件。三个子网络可以传输较浅和较深的雨特性以协作的方式提高去雨的性能。B、M和T受标签的监督, 这被视为一种深度监督的外部方式。
多尺度紧凑约束
虽然高阶协同设计使底层子网络B能够利用其它两个子网络的特性, 但每个中间卷积层的特征由于没有任何约束,使得解空间太大。
为了规范中间卷积层的解空间,我们设计了内部多尺度紧凑约束(MSCC), 以加强子网络B和M的网络模块 N 11 N_{11} N11, N 12 N_{12} N12和 N 21 N_{21} N21, 以学习更有用的特征,方便图像去雨。多尺度紧凑约束采用多尺度拉普拉斯图像,可以比原始尺度图像更好地建模图像结构,我们用它们来约束网络的中间卷积层,我们首先得到拉普拉斯金字塔图像,然后利用缩放图像对模块 N 11 N_{11} N11, N 12 N_{12} N12和 N 21 N_{21} N21进行约束。具体来说,多尺度紧凑约束采用以下方式进行约束:
具有双向尺度内容相似度挖掘模块的编解码结构
通过自上而下和自下而上挖掘模块能够捕获从大到小和从小到大尺度特征, 丰富雨特征。我们还使用位置嵌入来编码雨条纹特征之间的关系,最后,我们在不同的尺度上融合了学习到的特征。
监督损失
基于上述网络设计,对合成数据集进行训练的总体损失函数为:
L s y n t h e t i c = L c o l l a b o r a t i v e + L m s c c L_{synthetic} = L_{collaborative} + L_{mscc} Lsynthetic=Lcollaborative+Lmscc
在线更新学习
由于在合成数据集上训练的去雨模型通常不能很好的推广到真实世界的图像,我们提出一种在线更新学习方法来对真实世界的多雨图像上的模型进行微调。关键挑战有两个方面:
- 没有可用于训练的真实无雨图像
- 如何保持训练稳定,提高模型性能
为了解决这些问题,我们使用在合成数据集上训练的模型,来推理真实的雨天图像,结果作为伪标签, 并使用微调模型更新每个epoch的伪标签,损失函数基于KL散度,定义为:
B k ^ \hat{B^{k}} Bk^和 B k − 1 ^ \hat{B^{k-1}} Bk−1^是真实雨天图像在第K轮和第K-1轮的去雨结果。 B 0 ^ \hat{B^{0}} B0^为在合成数据集上得到的去雨结果(伪标签)
通过以下步骤进行在线学习更新:
已知:初始的在合成数据集训练模型上得到的伪标签( B 0 ^ \hat{B^0} B0^); 求: 最终的去雨图像 B ^ \hat{B} B^
当k = 1时, 随机裁剪训练的数据集对{ O O O, B k − 1 ^ \hat{B^{k-1}} Bk−1^}
随机选择真实雨天图像 O r a n d o m O_{random} Orandom以及对应它的 R r a n d o m k − 1 ^ \hat{R^{k-1}_{random}} Rrandomk−1^
怎么获取的当前epoch的 B k ^ \hat{B^{k}} Bk^和 R k ^ \hat{R^k} Rk^???
$以及对应它的 R r a n d o m k − 1 ^ \hat{R^{k-1}_{random}} Rrandomk−1^
怎么获取的当前epoch的 B k ^ \hat{B^{k}} Bk^和 R k ^ \hat{R^k} Rk^???