阅读论文 ESRGAN:Enhanced Super-Resolution Generative Adversarial Networks

idea

   这是2018年PIRM-SR challenge的优胜方案,主要是为了提高SR任务里的感知质量,论文的核心contribution可以归纳为以下几个点:
1.首先论文引入了密集残差连接模块,该模块去掉BN层,从而方便网络进行学习。
2.其次论文里使用了relative GAN代替了一般的GAN,有利于恢复更多的纹理细节。
3.论文的VGG loss 是在激活函数层之前的,可以恢复更多的细节。
4.最后是对RSNR的模型和GAN的模型进行参数混合,从而获得具有不同感知程度的模型。

下面依次介绍这几个contribution:

Network Architecture

   首先是对生成网络的改进,这里做了两个点:首先是去除了BN层,BN层在low level问题里会损害网络的性能,因为它会把一个batch的均值和方差当成每一个图片的均值和方差,从而导致结果有artifacts。另外一个改进点是提出了一个残差密集连接模块在网络里,可以结合多次层的特征,两个改进的示意图如下所示:

   此外,网络还对残差进行放缩,给每个残差乘上一个0到1之间的数去防止不稳定;以及将初始化时的方差去降低训练的难度。

Relativistic Discriminator

   其次网络引入relative GAN,这个结构和一般的GAN相比,其是获得真实的图片相对于fake的图片更加真实的概率,也就是说通过其不仅可以增加fake图片真实的概率,还可以减少真实图片不真实的概率,这个GAN的示意图如下所示:

   判别器和生成器的loss分别表示如下:

优点是可以从生成数据和真实数据对抗的gradient中获得学习。

Perceptual Loss

   这里的perceptual loss是基于VGG网络的feature loss,当然这里论文使用了激活函数之前的层作为feature loss的差别,这是因为:1.激活之后的feature变得非常sparse,从而不利于监督学习;2.激活后的feature会导致生成图像和真实图像之间的亮度出现不一致。激活前后的feature表现如下图所示:

所以最终的loss公式为:

Network Interpolation

   这里先预训练一个基于PSNR的网络然后再加上GAN进行fine tune,对于这两个模型,进行参数插值,从而获得具有不同感知程度的模型,参数表示为:

这里的$\alpha$是插值系数,在【0,1】之间,使用最后这个方法有两个好处,首先是对于任意插值系数都可以避免artifatcs,其次是可以获得不同的感知质量而不用重新训练。而如果使用生成图像插值的方法,则会产生artifatcs。

Experiments

   论文提出的方法可以产生更加真实的细节,一个例子如下所示,其余内容不再阐述:

0%