2017 CVPR:JORDER
JORDER: JOint Rain DEtection and Removal
文章主要提出了一种多任务的联合检测和去除的去雨网络。
创新之处:
1、对雨的建模进行改进,增添了一个二值映射,形成了一个区域依赖的雨模型用于提供雨纹位置。同时还对大雨情况下因为雨纹的累积以及不同形状和方向雨纹的重叠形成的大气面纱进行了建模。使得建模更贴近于真实。
2、方法联合了单幅图像中的雨纹检测以及去除。
3、使用了上下文扩张网络来扩大感受野接受更多的上下文同时保存更丰富的局部细节。
4、引入了循环检测和去除网络来解决大雨问题。
前人工作
去雨工作有基于视频序列的雨图复原及单幅图像的去雨。
单幅图像的去雨工作是看作是信号分解问题或是使用非局部均值平滑进行解决。
将单幅图像的去雨工作看作是一个分层问题。
Huang 从高频层中分离雨纹通过稀疏编码,从HOG特征算子进行一个字典学习。
形态学成分分析、层分离、字典学习是有局限的,会导致背景图像的过度平滑。
然后提出了一个低秩模型,雨纹层被看做是低秩的。
Kim在一个非局部均值滤波器上完成了雨纹的检测和去除。
Luo提出了一种判别稀疏编码。
后来还提出了一种高斯混合模型GMM的去雨方法。
基于深度学习的去雨方法也在不断的发展。
局限:
1、由于雨纹和背景纹理图案的固有重叠,许多方法去除雨纹导致了区域的过度平滑。
2、雨图的退化较为复杂,常用的模型不足以覆盖真实雨图中的重要特征因素。
3、现有方法的基本操作是基于一个局部的图像patch或者一个限制的感受野。较大区域的空间纹理信息很少被使用。
网络结构:
具体工作:
1、区域依赖的雨的模型
引入了一个新的区域依赖的变量R,其中R中的元素为二进制的数值,1表示该区域有雨,0表示该区域无雨。O是含雨图像,B是背景层,S为雨纹层。
这样为网络了解雨纹区域提供了额外的信息。同时允许新的雨去除通道先进行雨纹的检测,然后可以对雨纹区域和非雨纹区域进行不同的操作,以保留背景细节。
对于雨纹积累以及大雨的情况下:
新的模型基于Koschmieder模型,该模型适用于许多混浊介质,包括雾、雾和水下。
其中,St是具有相同方向的雨纹层,t是雨纹层的层数,s是雨纹层的最大层数。
A是全局大气光,α是大气透射值。
2、JORDER
2.1、联合雨的检测和去除的多任务网络
目的是通过给定的O,对B,S和R进行估计。采用极大后验估计方法:
其中Pb,Ps,Pr是B、S、R的先验。
之前的方法中,使用卡通纹理分解、数据驱动模型像字典学习、GMM等。
深度学习方法中,B、S、R的先验从训练数据中学习,并隐含在网络中。
如图所示,首先是利用上下文扩张网络提取出雨纹特征F,然后R、S、B按照顺序预测,雨纹的检测估计和去除是一个连续的过程:
基于F的卷积过程估计得到R^
[F,R^]卷积过程预测得到S ^
[F,R^,S ^,O-R ^ S ^]卷积过程计算得到B ^
2.2 上下文扩张网络
主要目的是聚合上下文信息在多尺度下对雨特征的学习。
网络通过两种方法获取上下文信息:
1)通过一个循环的结构,类似于循环的ResNet,为后续的层提供一个越来越大的感受野;
2)在每次循环中,输出特征都是将三种不同的扩张因子和感受野的卷积路径表示集合起来。
三个扩张路径由两个具有相同内核大小3×3的卷积组成。然而,不同的扩张因子,不同的路径有自己的感受野。路径P2由两个卷积和扩张因子2组成。卷积核表示为DF= 2的情况。
因此,级联两个卷积,三条路径的感受野分别为5×5,9×9,13x13
3、循环结构
循环JORDAR网络可以理解为卷积联合雨检测和去除网络的级联,它可以执行渐进式的雨检测和去除,并恢复背景层,具有越来越好的可视性。
网络通过计算O与B之间的差值,生成残差图像T(·)。
循环如下:
其中,Et代表预测的残差。迭代t次得到最终的预测:
4、损失函数:
结合一个时间变量t:
实验
数据集:
Rain12:包含12张合成的雨图,雨纹只有一种类型
Rain100L: 只有一种雨纹类型
Rain100H: 有五个不同雨纹方向的雨纹
分页符