non-blind SR
不同的HR图像使用不同的模糊核可以得到同一张LR,一张LR可以对用无数张HR
退化过程可以用模糊、下采样和加性噪声建模
有了这个建模过程,我们可以使用模糊核得到LR图像,进行盲超分
但这个方法有一个缺点,SR结果太过依赖退化估计的精度,一旦退化估计出现问题,SR结果会很差
提出的方法
退化估计方法:
- 依赖GT作为监督进行退化训练,因此退化估计方法不适用于真实场景,因为真实场景下GT很难获得
- 退化估计方法实际上是对退化信息的一种像素级表示,计算比较耗时
退化表示方法:
- 不依赖GT作为监督进行退化训练,可以无监督的从LR中学习退化信息
- 退化表示方法学习的是一种退化的抽象表示,而不是细节表示,学习难度更低,计算较快
首先假设同一张图像的退化过程相同,不同图像的退化过程不同,将patch输入encoder得到退化表示,我们想让同一图像的patch在表示空间中尽量的接近,而不同图像的patch在表示空间中距离较远。根据这种对比学习的方式,我们可以无监督的从图像中学到退化信息
退化感知超分网路
将encoder输出的退化表示向量输入到SR网络,辅助超分下面是Degradation Aware Block的结构
这个block可以同时利用退化表示向量以及图像的Feature Map,将退化表示适配到对应的Feature Map
在第一个分支中,从退化表示里学习一个卷积核,利用这个卷积核对图像的Feature Map进行卷积;在第二个分支中,从退化表示学习一个调制的系数,利用这个系数对输入特征图进行逐通道的调制
通过两个分支,可以让将退化表示适配到对应的Feature Map,并辅助重建
实验部分
退化表示可视化
将图像用不同的退化方法进行退化,然后输入encoder得到退化表示,然后展示其特征空间。作者的encoder可以区分出用不同噪声以及不同模糊核退化特征,隐式提供LR->SR的信息
分析encoder对图像内容是否敏感
我们希望encoder只提取图像的退化信息,而对图像的内容信息不敏感,因为图像的退化方式和图像的内容是没有任何关系的
我们将相同退化方式的的10张LR图片输入encoder,得到10个退化表示特征,用这10个特征分别重建,得到10个SR结果
从结果可以看出,对于不同图像提取出来的退化表示,最后超分的结果都是差不多的,也就是说encoder提取的退化表示对图像内容不敏感
分析纹理丰富程度和退化表示之间的关系
理论上来说,纹理越丰富,退化前和退化后的区别会越大,也就是退化影响的主要是高频信息。纹理按理说更有助于退化信息的提取,因为纹理是受退化影响最大的部分
实验过程如下:
从一张图像中获取多个patch,然后输入encoder得到退化表示,用这些退化表示对LR进行超分,得到多个SR
从结果来看,纹理较多的patch得到的退化表示对LR的超分效果更好。这就是说,更丰富的退化后的纹理有助于网络提取退化信息,从而超分重建LR
可以看到当高斯模糊核的时,高斯模糊核就成了Bicubic,RCAN取得了最好的结果38.27,但是随着变成1.8,RCAN的性能急剧恶化,这时因为RCAN是基于Bicubic训练的
与IKC相比,本文的方法也得到了更好的结果