Generative Adversarial Network-based Image Super-Resolution using Perceptual Content Losses

这个周开始写随笔记录下看的论文(本文仅为本人防止自己忘记写的禁止转载)
该论文主要思路是超分时图像可能出现失真或者过平滑致使图像细节模糊的状况,而近期发现感知(特征)和失真可以存在一中折中的情况既不至于失真但细节完整的情况,因此就这个提出了一个模型(大部分都是别人的模型)。
首先时RB块由两个卷积层和一个**函数relu组成残差网络其实后面还有个relu没画出来因为残差操作是发生在线性映射之后非线性映射之前,RM块是由多个RB块级联与一个 卷积层和跳转连接组成,RB快主要为了提取浅层特征,RM为了通过增加深度从而提取深层特征,EUM主要是通过级联RM块并且将每个RM块的特征图提取出来拼接起来做一个pixel shuffle这里与亚像素层操作很像Generative Adversarial Network-based Image Super-Resolution using Perceptual Content Losses亚像素层的原理是生成s(上采样因子)2的通道数的特征图之后将特征图相同位置的像素点拼接起来作为上采样后的某个区域的特征点如图既假设输入为hwc特征图则输出大小为hw2sc,从而经过整形输出为2h2wc从而使图像放大两倍,这里类似于亚像素层上采样,不过这里不是一个图片卷积出而是用多组特征图此处应该有一步concat未画出因为一张图片特征图本身是对齐的所以可以提取相同位置的像素而这里应该也需要进行一步拼接后的特征图的对齐从而能够选出相同位置的像素点进行pixel shuffle由上面式子可知s2=特征图数(此处为特征图组)因此s=2也就是上采样因子为2也就是说一个EUM产生的效果是上采样为2的亚像素层效果因此这就是为什么4倍用2个8倍用三个EUM的原因后面conv是为了把多通道卷机回RGB形成图像Generative Adversarial Network-based Image Super-Resolution using Perceptual Content Losses

下面这幅图是其他文章的一副详解EUM的图(该文作者引用的EUM)

Generative Adversarial Network-based Image Super-Resolution using Perceptual Content Losses
该文章运用了Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network中的鉴别器作为该文章的鉴别器首先经过一个 卷积层卷积特征后经过leakyrelu**这个**函数与relu不同在于赋予小于0的部分一部分梯度不至于全为0之后经过多个卷积全连接和**函数的块,通过全连接层降维(分类问题)从而输出一个概率值令真实图像ihr尽量逼近1超分图片isr尽量逼近0采用级联多层网络是为了进一步鉴别深层特征从而促使生成器增加纹理细节逼近真实图像从而欺骗鉴别器Generative Adversarial Network-based Image Super-Resolution using Perceptual Content Losses 利用这个公式交替训练生成器与鉴别器从而使生成器生成的纹理细节越来越多Generative Adversarial Network-based Image Super-Resolution using Perceptual Content Losses
以上暂无他本身的创新点只是作者搬运他人的模型,作者的创新点在于后面的损失函数Generative Adversarial Network-based Image Super-Resolution using Perceptual Content Losses首先是内容损失利用简单的1范数损失使像素间的差异最小化从而来约束生成图片与真实图片这是像素级损失为从整体上约束像素基本相同就是轮廓大致相同而无法约束细节纹理特征,Generative Adversarial Network-based Image Super-Resolution using Perceptual Content Losses 第二个损失函数在空域上约束纹理dx,dy为梯度微分算子首先了解梯度微分学中梯度就是一阶方程的导数二阶方程的偏导数,因此在空间域上可以将图像看成一个离散的二维函数所以利用偏导数求其梯度:Generative Adversarial Network-based Image Super-Resolution using Perceptual Content LossesGenerative Adversarial Network-based Image Super-Resolution using Perceptual Content Losses
上图公式因为图像为离散的二维函数像素与像素之间的最小值为1既两个像素之间的值不可能小于1所以在x方向上和y方向上的梯度就是矩阵在x与y上的像素值的差Generative Adversarial Network-based Image Super-Resolution using Perceptual Content Losses
而计算梯度的方法也有很多比如用第一行减第三行也是一种梯度算法把这些梯度算法称为梯度微分算子,以上算子图例来自https://blog.****.net/saltriver/article/details/78987096
https://blog.****.net/saltriver/article/details/78987170
所以回到损失函数在x和y上用x和y的像素值乘以算子(这里应该是一阶算子因为一阶算子为绝对值所以x和y要分开计算)简述下梯度的作用:图像之所以模糊是因为边缘轮廓不明显,也就是灰度值变化不剧烈通常引入梯度是通过将梯度加到像素值上使梯度变化剧烈从而可使轮廓更加明显,因此此处微分算子可能就为简单的两像素在x与y上 的差值用这个自定义的算子乘与y上的像素值在与标准图像的乘积做对比这样可以约束超分图像灰度值变化程度与标准图像一致防止图像过平滑以及可使两梯度保持在同一量级从而防止过于锐化。
Generative Adversarial Network-based Image Super-Resolution using Perceptual Content Losses 第三个损失函数为离散余弦式变换简称DCT该变换类似于傅里叶变换可以把图像从空域转换到以cos与sin为基准的频域上不过DCT有很强的去相关性经过DCT压缩(DCT主要功能是用来压缩图片)后的图片纹理细节(高频部分)会被归0而轮廓(低频部分)会主要集中于矩阵右上角,本文中利用超分DCT生成的系数矩阵与高分辨率图像的系数矩阵相比从而实现两矩阵的高频与低频的分布相同防止失真,另外此处只是利用dct进行损失并不是真把图像变成DCT后的形式只是为了利用DCT学习频率分布,例如高频部分被归0那么就令量dCT系数矩阵0的分布尽量相似。
Generative Adversarial Network-based Image Super-Resolution using Perceptual Content Losses最后一个损失函数为GAN的对抗损失d代表的为鉴别器鉴别出的测试值为真实值的概率该概率是用交叉熵算出的。