SRGAN阅读笔记

论文:Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial
Github:SRGAN

Abstract

CNN在传统的单帧超分辨率重建上取得了非常好的效果,可以取得较高的峰值信噪比(PSNR)。他们大都以MSE为最小化的目标函数,这样虽然可以取得较高的峰值信噪比,但是当图像下采样倍数较高时,重建的得到的图片会过于平滑,丢失细节。本文提出了利用GAN来进行超分辨率重建的方法,该网络是第一个能恢复4倍下采样图像的框架。作者提出的损失函数有两部分组成:对抗损失,内容损失。
对抗损失将图像映射到高位流形空间,并用判别网络去判别重建后的图像和原始图像。而内容损失则是基于感觉相似性(perceptual similarity)而非像素相似性(pixel similarity)。

Intruction

所谓超分辨率重建就是将低分辨率图像恢复成对应的高分辨率图像。但是由于低分辨率图像信息的缺失,这是一个病态的求逆问题,尤其是在恢复的倍数较高的时候。传统的方法考虑加入一些先验信息以恢复高分辨率图像(如插值法),此外,还有基于回归方法的随记森林也可以用于超分问题。稀疏学习,CNN在超分上也取得了非常好的效果,特别是CNN,使得超分已经可以达到实时应用。

Method

作者提出的网络结构如下:

SRGAN阅读笔记_第1张图片
网络结构

生成网络由残差结构组成,并结合BN,生成的图像丢到判别网络中,交给判别器判断是生成的高分辨率图像还是真正的高分辨率图像。

作者主要的创新点在于代价函数的设计,尤其是将逐像素损失替换为内容损失。作者提出的损失函数由以下三部分加权组成:

  • Content Loss


    1794530-160387590f1ea1c8.png
    内容损失函数

    这一项说白了就是对某一层的特征图的逐像素损失作为内容损失(而不是最后输出结果的逐像素损失)。这样可以学得图像所在的流形空间。(这句话我也没太懂是什么意思!个人理解,大概就是可以学得一些高层的语义特征,结构信息)

  • Adversarial Loss


    1794530-35eb29b33222eebe.png
    对抗损失项

    作者用的对抗损失项用:


    1794530-f6d0ff118a5b9e7d.png
    负对数求和替换原来的代价函数,这样有利于训练。(作者给的参考文献提到了原因,有兴趣可以看看)。
  • Regularization Loss
    作者利用基于全变差的正则项以鼓励产生具有空间相似性的结果。具体公式如下:

1794530-987b0f3975ee45fb.png
正则损失

Experiments

作者用sub-pixel网络作为生成网络,用VGG作为判别网络构建GAN得到了非常好的结果,但是这个用的是逐像素差作为损失函数。

之后,作者尝试了自己提出的感知损失函数作为优化目标,虽然PSNR和SSIM不高,但是视觉效果都要优于其他网络,避免了其他方法的过度平滑的特性。

Conclusion

作者本文的贡献主要有两点:

  • 提出的SRResNet取得了state-of-art的结果
  • 将感知损失引入GAN,实现了4倍超分辨率重建

你可能感兴趣的:(SRGAN阅读笔记)