关于使用LSTM迭代去雨的论文的介绍

1,070 阅读3分钟

这篇汇报包含了同一个作者(天津大学)的先后两篇论文:《Progressive Image Deraining Networks: A Better and Simpler Baseline》和《Single Image Deraining Using Bilateral Recurrent Network》,其中前者发表于2019年6月,后者发表于2020年6月。

因此我们先介绍发表于2019年6月的《Progressive Image Deraining Networks: A Better and Simpler Baseline》

motivation

作者认为在去雨任务中时常有算法无法完全去雨,会残留部分的雨点,而迭代去雨能够消除这个问题。

Model

如上图所示,在图(a)中,可以看到网络进行了T次迭代过程,其中每次输入均为原始有雨图像和上一轮去雨后的图像。在每个网络去雨过程中,其网络结构如图(a)左图所示,由普通卷积组成。

在图(b)中,和图(a)不同的是添加了LSTM的模块。其中不同迭代轮次的去雨网络的LSTM模块中,存在信息的向后传输。

在LSTM模块中,c^{t-1}h^{t-1}为上一轮短连接传递过来的特征图,c^{t}h^{t}为要传递到下一轮的特征图。x^ty^t为当前网络中LSTM的输入和输出。

值得注意的是,网络对每个输出结果进行了约束,即给上loss。并且每个阶段的网络权重均相同。第一轮去雨的c^{t-1}h^{t-1}初始化为0

文章使用了MSE和SSIM作为损失函数。其中MSE仅对最后一轮约束,SSIM对每一轮均做约束。

文章设定了循环为6次,即T=6。训练图像大小为100*100,批大小设置为18

消融实验

文章展示了每次迭代次数不同的表现。

文章发现当七次迭代的结果略差于六次迭代的结果。

文章展示了是否使用每轮SSIM约束的表现,网络的总轮数为6,横坐标表示的是当前轮,纵坐标表示PSNR和SSIM:

可以发现,对网络进行更多的约束能够提高网络前几轮的表现,但在第六轮中,不对前几轮进行约束反而表现更好,我认为这是目标统一的结果。

在上一篇论文的基础上,作者进一步更新了网络,提出了《Single Image Deraining Using Bilateral Recurrent Network》

文章在整体框架上和上一篇论文上如出一辙,仅仅在LSTM上进行了修改,将LSTM修改为BLSTM,并将两个模块进行组合,如上图所示。用公式可以表达为:

r^t=\mathcal{F}_r(y,r^{t-1})
x^t=\mathcal{F}_x(y,x^{t-1},r^t)

其中r^t为雨层,x^t为去雨结果,y为原始有雨图像。

文章设计的思路为:

  • 网络可以估计去雨结果,当然也可以估计雨层,原始有雨图像减去雨层即可得到去雨图像,而对残差进行估计能够减轻网络重建场景的负担。
  • 而每次估计得到的雨层可能会包含部分场景结构,导致去雨图像丢失细节。
  • 因此,文章使用了以上方法,来保持去雨细节的同时适当降低去雨负担。

该网络在实验中在每一轮中使用MSE和SSIM损失,这一点和上一篇论文不同。

消融实验

文章展示了上一篇论文和当前论文的网络的区别,上一篇网络被称为SRN,当前网络被称为BRN:

可以看到其效果有一定提高。

也由于BRN的参数较SRN的参数量提高,所以指标上也有一定的提高。文章又给出了SRN+版本,以对比表示BRN的作用。