阅读论文“Blind Super Resolution Kernel Estimation using an Internal-GAN”

   2019 NIPS oral,task是无监督超分,非常推荐一读。论文的出发点是要发掘patch上的自相关分布,通过生成器G生成LR downsample后的版本和LR自己相应的patch在分布上更相似(通过D网络判别学到),从而学习出LR的降质过程,和ZSSR一样,这个工作也是在单图上进行训练和测试,不同的是,这里像ZSSR一样使用bicubic作为默认降质,而是利用GAN利用自身分布去学习自己降质的过程。其中G网络用来学习降采样,当G网络被训练好之后,可以获得降质的kernel参数,该参数可以被用来引导进行超分辨(类似于ZSSR)。论文提出的方法是image specific的,即可以根据测试图片自身的特性生成相应的核,并利用该核作用在自己使用如ZSSR的方法进行超分辨,这应该是论文最大的insight(之前的方法image specific的sr都是使用默认bicubic核进行降质,而通用SR方法都是事先训练好然后再用在测试图片上,这样它们的分布可能不一样)。整体的框架如下所示:

   其中D网络和G网络分别如下所示:

   其中D网络输入的是label(从LR中直接crop出来)或者是generator里输出的结果,输出是一个0-1矩阵,反映的是否该像素周边的patch(判别器感受野计算出来是7x7大小的patch)是真正LR里crop出来的。对于G网络,这里是一个深度线性网络,虽然理论上一层的stride网络也会work,但是实际其表现不行,可能是因为一层网络更难优化。其次也去除了relu层,因为加入其中不符合G网络downsample缩放的目的,会引入额外的artifacts(作者也不放实验说明这点)。整体训练的loss如下所示:

其中R是对kernel进行约束,使其更符合kernel分布的先验规律,该部分如下所示:

最后,对G网络里的卷积层参数进行矩阵连乘,从而生成一个kernel,使用这个kernel可以对图像进行downsample,从而进行SR。一些实验结果如下所示:

0%