学习笔记之——SRGAN深度调研报告

SRGAN这个网络的最大贡献就是使用了生成对抗网络(Generative adversarial network)来训练SRResNet,使其产生的HR图像看起来更加自然,有更好的视觉效果(SRResNet是生成网络,对抗网络是用来区分真实的HR图像和通过SRResNet还原出来的HR图像,SRGAN网络的最终目标就是要让对抗网络无法区分真实的HR图像和SRResNet还原的HR图像)。

通俗来讲:GAN所要完成的工作,原文举了个栗子:

G网是印假钞的人,D网是检测假钞的人。G的工作是让自己印出来的假钞尽量能骗过D,D则要尽可能的分辨自己拿到的钞票是银行中的真票票还是G印出来的假票票。

开始的时候呢,G技术不过关,D能指出这个假钞哪里很假。G每次失败之后都认真总结经验,努力提升自己,每次都进步。直到最后,D无法判断钞票的真假……

SRGAN的工作就是:

G网通过低分辨率的图像生成高分辨率图像,由D网判断拿到的图像是由G网生成的,还是数据库中的原图像。当G网能成功骗过D网的时候,那我们就可以通过这个GAN完成超分了。

首先介绍一下作者为什么要采用GAN来训练SRResNet。因为当前监督SR效果的算法(损失函数)的优化目标是使恢复后的HR图像与ground truth间的均方差(MSE)最小化,因为酱紫可以取得很高的峰值信噪比(PSNR,这也是评价SR算法的效果的最常用指标)。但是由于PSNR是基于像素级图像(pixel-wise image)的差异来定义的,因此PSNR捕捉到和人的感官非常密切的差异(纹理细节)的能力十分有限,因此最高的PSNR不一定能反映人感官上最好的结果。下图可以说明:

学习笔记之——SRGAN深度调研报告_第1张图片

可以看到图三的PSNR虽然比图二低了近0.1,但是图二的脸和手明显是模糊的,看起来很不真实,但是图三的各个细节都很清晰,看起来就很真实。后面一张图更加清晰的说明了这种情况,一旦放大倍数超过4,那么基于MSE优化的网络产生出来的HR图像在纹理细节方面就会过于平滑,看起来就像是糊成一团,但是这样峰值信噪比还很高,特别让人崩溃,下图展示的更加清晰。如果想将做一个将AV画质转成1080p+的软件来卖钱利用MSE做损失函数的话效果会很不理想。

学习笔记之——SRGAN深度调研报告_第2张图片

并且,作者通过请26位评判者打分的方式(MOS得分),证明高PSNR并不能带来良好的感官效果。评分如下图所示:

学习笔记之——SRGAN深度调研报告_第3张图片

还有一张不同网络的MOS得分图,说明在26位评委眼中,SRGAN产生的图像更真实:

学习笔记之——SRGAN深度调研报告_第4张图片

但是感官这个东西是一个很主观的玩意儿,是没法来给出具体的数学公式的,那么该如何实现以感官的标准来指定监督算法(损失函数)呢?作者所选择的是基于VGG的内容损失。先基于预训练的19层VGG网络的ReLU激活层来定义损失函数。这部分的理论来源于” Very deep convolutional networks for large-scale image recognition”这篇论文。在这篇论文里面,作者创建了一个从VGG19网络里提取的特征图之间欧式距离的损失函数,无论是超分辨率还是艺术风格的转移,效果都非常好。SRGAN的作者直接使用了这个作为损失函数的一部分。后面会具体分析。

学习笔记之——SRGAN深度调研报告_第5张图片

学习笔记之——SRGAN深度调研报告_第6张图片

的计算公式如下:

其中最重要的就是特别定制的损失函数,可以说就是为了这个损失函数才采用GAN的。在论文里作者将他们特制的损失函数称为Perceptual loss function。结构如下:

是内容损失,是对抗损失。下文具体分析:

内容损失

因为上文已经讲过基于最小化MSE的损失函数虽然可以获得很高的PSNR,但是高放大倍数下视觉效果并不好。因此采用作者选择的是基于VGG的内容损失。先基于预训练的19层VGG网络的ReLU激活层来定义损失函数。再发一次图:

学习笔记之——SRGAN深度调研报告_第7张图片

对抗损失

除了目前描述的内容损失外,作者还在感知损失中加入了GAN的生成成分。这鼓励该网络倾向于基于自然图像流形的解决方案,试图愚弄鉴别器网络。衍生的损失函数是基于概率鉴别器在所有样本上的概率值来定义的,公式如下:

这个公式里,表示的是重构图像是自然的HR图像的概率。是一个分类网络,结构如下:

学习笔记之——SRGAN深度调研报告_第8张图片

生成网络是SRResNet,结构如下:

学习笔记之——SRGAN深度调研报告_第9张图片

 

 

这里可以看到,作者的主要创新点抛弃了MSE转而用基于VGG的内容损失定义损失函数。并且使用了GAN对抗网络来分辨自然HR图像和重建出来的HR图像,并且把分类网络的结果引入生成网络的损失函数,将使得训练出来的结果从视觉上来说更接近自然HR图像。虽然这样做会降低峰值信噪比,因为放大倍数越大,越不平滑的情况下PSNR越低。不过从视觉上说最为真实,因为过于平滑会使得图像内部物体的边缘看起来模糊。

 

你可能感兴趣的:(深度学习,卷积神经网络,超分辨率重建)