csdwren / PReNet

Progressive Image Deraining Networks: A Better and Simpler Baseline (CVPR 2019)
234 stars 53 forks source link

class PReNet(nn.Module): class PReNet_r(nn.Module): class PRN(nn.Module): class PRN_r(nn.Module): #3

Open jilner opened 5 years ago

jilner commented 5 years ago

作者你好,在network.py中上述四个网络结构,为什么输出的时候倒数第三行的结果要加上input呢?x = x + input,这个应该是已经derain后的结果,在加上输入的图,是不是多余了?

csdwren commented 5 years ago

这是用了residual learning,网络学的是negative rain streak layer。直接输出x 不加input也可以,数据集指标稍降一点,视觉上没区别。

jilner commented 5 years ago

谢谢 再麻烦问下 negative rain streak layer 是哪篇文章呢?

csdwren commented 5 years ago

目前几乎所有的去雨网络都用了residual learning,DDN是第一个用在去雨的。DnCNN第一个把这个策略用到去噪 https://github.com/cszn/DnCNN

jilner commented 5 years ago

以前只注意到中间的残差会加上之前的输入 但是好像第一次见到在最后输出的时候还要加上最开始的输入

Rocky1ee commented 4 years ago

这是用了residual learning,网络学的是negative rain streak layer。直接输出x 不加input也可以,数据集指标稍降一点,视觉上没区别。

这是用了residual learning,网络学的是negative rain streak layer。直接输出x 不加input也可以,数据集指标稍降一点,视觉上没区

您好,有个小疑问: x 为 negative rain streak,input + x = deraining image。 要是不进行此操作,直接输出x如何得到deraining image呢?

csdwren commented 4 years ago

请看networks.py中的 class PReNet_LSTM

Rocky1ee commented 4 years ago

请看networks.py中的 class PReNet_LSTM image

csdwren commented 4 years ago

是的