用于单幅图像去雨的多尺度渐进融合网络
概括
文章主要结合金字塔结构、信道注意力机制进而协同地表示出多尺度的雨纹信息,提出了一种MSPFN网络。
对于雨的成像原理,由于雨和相机之间的距离不同,导致图片中的雨水会呈现出不同的模糊度和分辨率,因此可以利用多分辨率和多尺度之间的互补信息来表示雨纹。本文主要提出了一个框架从输入图像尺度和层次深度特征的角度,探讨了雨纹的多尺度协同表示,进而完成去雨。
对于不同位置的相似雨纹,采用了递归计算来获取全局纹理,从而探索空间维度上的互补和冗余信息来表征目标雨纹。构建了多尺度的金字塔结构,并进一步引入了注意机制来指导不同尺度的相关信息的精细融合。
多尺度渐进融合策略提高协同表示并促进端到端训练。
创新
- 基于雨纹的相关性,通过挖掘不同尺度雨纹之间的互补信息,包括相似的外观组成等,并通过循环计算,对雨纹分布进行更好的建模。
- 通过三个不同的模块CFM+FFM+RM,结合金字塔结构、信道注意力机制进而协同地表示多尺度的雨纹信息,提出了MSPFN网络。
- 将去雨方法用于检测、分割进行全面的评估。
不足
- 使用此代码训练的Rain200H,测试结果很差:因为数据集不一样,收敛趋势也不同。可以数据增广,而不是重叠采样和缩放采样(上采样和下采样),效果应该会好一些。
- 模型在合成数据集上进行训练,从配对图像中学习映射关系。但是,现实世界样本中的降雨条纹具有多样性,显示出不同的方向,密度和样式。因此,仍然存在通过统一模型应对所有条件的困难。未来的工作中将通过考虑现实世界样本的特征摆脱对训练数据集的依赖,来提高实用性和鲁棒性。
- 对于多尺度金字塔特征融合,输入图像的W和H应该被8整除。需要将测试图像裁剪为合适的图像尺寸(根据左上角使用边缘修剪),然后重试。
模型
为了解决现有工作的这些局限性,我们在一个统一的框架中从输入图像尺度和深度神经网络表示中探索多尺度表示,并提出一种多尺度渐进融合网络(MSPFN)以利用雨条纹的相关信息跨尺度进行单幅图像消除。
雨纹间的协同表示
雨纹之间的模式相似,都在相同的规模(以青色突出显示,粉红色和深蓝色的框)或跨不同尺度(高亮显示为红色,黄色,橙色和绿色框),可以帮助重建目标雨条纹(原雨中白盒图片)互补信息(如类似的外观,形成等)。
具体来说,我们首先通过高斯核进行下采样构建出高斯金字塔结构,以按顺序对原始雨图像进行下采样,通过初始层的卷积层提取出浅层特征。
将不同尺度的特征进行粗融合CFM,由多个并行的RRU组成,通过Conv-LSTM从多尺度中提取出全局纹理信息。 粗融合模块(CFM)旨在通过递归计算(Conv-LSTM)从这些多尺度降雨图像中捕获全局纹理信息,从而使网络能够使用相似的对应对象来共同表示目标降雨条纹来自全局特征空间。同时,高分辨率金字塔层的表示受先前输出以及所有低分辨率金字塔层的指导。
将CFM提取到的特征进行细融合FFM,多个URAB模块级联,进行渐进尺度的融合。 精细融合模块(FFM),以进一步整合来自不同规模的这些相关信息。通过使用信道注意机制,网络不仅可以从所有先前的金字塔层中有区别地学习特定于尺度的知识,而且可以有效地减少特征冗余。此外,多个FFM可以级联形成渐进的多尺度融合。
通过RM模块进行重构聚合。 最后,附加一个重建模块(RM),以汇总分别从CFM和FFM提取的学习雨季雨量图像的粗雨信息和细雨信息,这是实际降雨条纹分布的近似值。
图中I*R为剩余雨图。从原始降雨中减去I*R来生成无降雨图像IDerain图片IRain。目标是使IDerain尽可能接近无雨图像IClean。
粗融合模块(CFM)
首先使用高斯核生成高斯金字塔降雨图像,以将原始降雨图像下采样为不同的比例,例如1/2和1/4。网络将金字塔雨图像作为输入,并通过多个并行的初始卷积层提取浅层特征(参见“初始层”的第一块)。
根据每个尺度的初始特征,粗融合模块(CFM)通过几个并行的剩余递归单元(RRU)对多尺度雨量信息进行深度提取和融合。
设计CFM的原因有三个方面:
- (a)为了利用相同尺度下的雨纹重复,我们应用循环计算和残差学习来捕获全局纹理信息,从而有可能合作地表示目标雨纹。更准确地说,我们引入了Conv-LSTM,通过递归内存在空间维度上对上下文纹理的信息流进行建模,其中上下文纹理的相关性被转换为结构化的循环依赖性,以捕获互补或冗余的降雨信息(例如,图1中的实心箭头)。
- (b)多尺度结构提供了一种替代解决方案,可在保持深度较浅的同时,大大增加接收覆盖更多内容的范围。
- (c)高分辨率表示通过迭代采样和融合而受益于前一阶段的输出以及所有低分辨率金字塔层。
细融合模块(FFM)
- CFM的输出通过级联多个细化融合模块(FFM)进行进一步的特征提取融合。为方便起见,FFM与CFM享有类似的多尺度结构。
- 与CFM不同,我们引入了频道注意单元(CAU),以通过关注最具信息量度的特定规模知识来增强网络的判别性学习能力,从而使协作表示更加有效。为了减轻计算负担,我们应用了大步卷积来减小特征的空间维数,最后利用反卷积层来提高分辨率以避免丢失分辨率信息,从而形成了U形残留注意块(URAB)。URAB由几个CAU以及短跳过连接组成,以帮助精细表示多尺度降雨信息。
- 在级联的FFM之间使用长跳连接来实现多尺度降雨信息的渐进融合,并有助于梯度的有效反向传播。
URAB由几个级联的通道注意单元(CAU)组成,以通过关注最有用的通道来促进多尺度降雨信息的融合并减少特征冗余。
雨条纹重建模型(RM)
- 整合来自CFM和FFM的低阶和高阶多尺度特征。
- 将来自CFM的输出与来自最后一个FFM的输出级联,然后使用一个卷积层来学习两个模块中学习信道的相互依赖关系, 并重新调整两个模块的特征值。
- 同样地,对不同金字塔层的雨信息的迭代采样和融合来估计剩余雨图像。
损失函数
均方误差
MSE: 由于平方惩罚会产生产生模糊和过度平滑的视觉效果及高频纹理的丢失。
利用 Charbonnier罚函数 对实际雨纹分布IR进行逐次逼近,该方法对小误差有较好的容忍度,且在训练过程中收敛性较好。
I*R表示预测的残留雨图像。通过从受雨水污染的对应物IRain中减去I*R生成的预测无雨图像IDerain。惩罚因子ε根据经验设置为10-3。
边缘损失
约束真实图像和预测的无雨图像之间的高频分量。
为了在消除雨水条纹的同时进一步提高高频细节的逼真度和真实性,我们提出了额外的边缘损失,以将高频成分限制在地面实况IClean和预测的无雨图像IDerain之间。边缘损失定义为
Lap(IClean)和Lap(IDerain)分别表示通过拉普拉斯算子从IClean和IDerain中提取的边缘图。
总损失函数
其中权重参数λ根据经验设置为0.05以平衡损失项。
实验
- 没有针对所有竞争方法的统一训练数据集。收集了约13700个清洁/雨水图像对,用于训练我们的网络以及其他竞争方法以进行公平比较。
- 采用常用的评估指标,例如峰值信噪比(PSNR),特征相似度(FSIM),结构相似度(SSIM)。
- 消融实验。
- 与最新技术比较。合成数据&真实数据。
- 视觉任务(即对象检测和分割)上的实验。
结果
- 在合成数据集上的恢复结果,包括Rain100H,Rain100L,Test100和Test1200。
- 使用RESCAN [19],UMRL [37]和PreNet [26]在四种实际情况下的比较结果。
- 联合去雨、目标检测和分割的示例。第一行表示BDD150数据集上Mask R-CNN [12]的实例分割结果。第二和第三行是BDD150数据集上RefineNet [21]进行语义分割的比较结果。最后两行是使用YOLOv3 [25]对COCO350数据集进行对象检测。 MSPFN *表示与MSPFN相比具有更浅深度和宽度的轻型模型。