原创文章,转载、引用请注明出处!
2020,ACCV
真实世界单幅图像超分辨率退化模型学习
立意
在做超分问题的时候,数据集是非常重要的一部分。
目前绝大多数图像或视频超分辨率重建工作,都假定了LR是由对应HR经过某种固定的已知退化所得(超分问题的一般流程,《基础:图像超分辨率》有提)。然而事实证明,当测试数据的退化设置与训练阶段存在差异时,超分辨率重建的性能会显著下降。
举例解释:现在一组HR图像,首先通过双三次差值(绝大部分文章所用到的数据集都是这个选择)将这组图像下采样,得到对应的LR图像。但实际上真实的HR到LR的退化过程是非常复杂的,是一个非线性问题。文章的意思是这种普遍存在的常规做法会明显的影响SR模型的性能。
为了解决上述问题,本文从真实数据集中学习一个真实的退化模型,并使用所学习的退化模型来合成真实的HR-LR图像对。
本文的重点在从HR图像到LR图像的这个过程。
It is well-known that the single image super-resolution (SISR) models trained on those synthetic datasets, where a low-resolution (LR) image is generated by applying a simple degradation operator (e.g., bicubic downsampling) to its high-resolution (HR) counterpart, have limited generalization capability on real-world LR images, whose degradation process is much more complex. Several real-world SISR datasets have been constructed to reduce this gap; however, their scale is relatively small due to laborious and costly data collection process. To remedy this issue, we propose to learn a realistic degradation model from the existing real-world datasets, and use the learned degradation model to synthesize realistic HR-LR image pairs.
超分数据集构建
上述问题又来源于超分问题的数据集构建问题,简言之就是LR到底是怎么来的。
文中所提到的,超分数据集的构建和合成问题的大致方法有如下几种:
- 通过设置模糊核,直接由HR图像生成LR图像。这是最常见的方法。会产生的问题是模糊核的可解释性差。
Most of the existing CNN based SISR models are trained on synthetic HR-LR image pairs, which are generated by applying a simple degradation model (e.g., bicubic downsampling) to the HR images [14, 15, 18, 19, 21, 23, 24]. However, the authentic HR to LR image degradation process is much more complicated than these simple uniform downsample operators. As a result, the SISR networks trained on such synthetic datasets have low generalization capability to real-world LR images, largely limiting their value in practical applications.
- 进行真实的pair的数据对的构建,通常是通过相机捕捉相同场景,变量则设置为相机本身的某些参数。这种方法产生的问题是:构建数据集的成本太高,以至于该类数据集的容量都不会太大。以及在进行拍照的时候,物理条件的限制因素太多,包括但不限于天气、光照、场景多样性等。
Very recently, researchers have started to construct real-world datasets by using digital cam- eras to capture images of the same scene under different focal lengths [25–27]……However, constructing such datasets of real-world HR-LR pairs is laborious and costly, and the existing datasets of this kind [25–27] are all limited in number of image pairs, diversity of scenes and illuminating conditions.
- 从unpair的HR和LR中学习图像的退化过程,并且将学习到的退化过程用到SR的流程之中。一般选取GAN来完成这件事情。会出现的问题是,这种方法的训练过程是非常困难的,最终的结果可能不会收敛,以及使用网络来完成退化过程,忽略了图片的一些先验信息,导致了可解释性差。
While constructing real-world datasets of HR-LR image pairs, researchers have also proposed to learn the image degradation process from unpaired HR and LR images, and use the learned degradation model to generate HR-LR image pairs for SISR model learning [28–31]. All these methods employ the Generative Adversarial Network (GAN) [32] to learn the degradation process by differentiating the distribution between generated LR and real LR images. Unfortunately, training such a GAN with unpaired data is very difficult and may not converge to the desired result. Moreover, using a network to model the degradation from HR to LR images makes it hard to interpret the degradation process, ignoring some prior knowledge on the image formation.
网络模型
模型叙述
目前被广泛认可的从HR到LR的泛用退化模型可进行如下表示。其中,“*”是卷积算子,k是退化核,↓d是下采样算子,v是加性随机噪声,L和H分别代表低分和高分图像。
上面提到,大多数现有工作对HR使用的是双三次下采样以采集LR图像,即这些工作都假设退化核k在整个图像上是均匀的,即空间不变的。
而在现实世界的SISR问题中,退化核要复杂得多,与场景的深度和局部内容相关。因此,退化核是典型的非均匀和空间变异的。对于图像上的每个像素点(i,j),应该有相应的模糊核和噪声。
经过上述改动后,从HR到LR的空间变化的图像退化可以表示如下。其中,H(i,j)表示以(i,j)为中心的局部图像窗口,其大小与核k(i,j)相同,“⊙”是内积算子。
从上式可以看出,对真实世界的图像退化过程建模的关键是如何预测像素级退化核k(i,j)。
一个直观的想法是直接通过真实HR-LR对作为监督去学习退化核参数。但这种做法的问题是需要求解的参数量太大,且解空间非常大,在有限的数据量条件下易出现过拟合的问题。
文章提出,由于光学系统成像的原理限制,退化过程普遍可以用一个钟形函数(bell-shaped smooth functions)进行描述。所以可以进一步缩小解空间范围,即可以通过一系列基础退化核的线性组合实现对任意退化核的描述。综上所述,pixel-wise的退化核可以进行如下表示,其中Φm表示第m个基础退化核,C表示系数矩阵。
上式将原本复杂的退化过程的解空间约束在一个较小的子控件中,使得在数据量不大的条件下更容易被学习。
Degradation Model Learning
退化模型学习(DML)方法如上所示。
整个网络以H作为输入,学习具有参数Θ的CNN F来预测权重,即C=F(H|Θ),其中C是权重向量C(i,j)的集合。
还学习了基核φm,从而可以根据式(3)预测核k(i,j)。将预测的退化核应用于HR图像H以输出预测的LR图像,用ˆL表示。
上图中的F为基于编解码结构的权值预测网络。以HR图像作为输入,并在每个位置输出一个权重向量。为了获得大的接收野,使用最大池层进行特征下采样,并使用双线性上采样层来提高特征分辨率和保证像素级的输出。采用3×3滤波器的卷积层,用ReLU作为激活函数。为了输出每像素的权值,在最后一个卷积层之后使用sigmoid函数进行归一化。通过SGD或ADAM优化器可以很容易地对整个网络进行优化。
目标函数
假设有N对HR-LR训练图像,则目标函数为:
SISR Model Learning
为了进一步缩小合成与真实的差距LR图像,根据式(1)中描述的LR图像形成过程向合成的LR图像ˆL添加随机噪声。
设置为加性高斯白噪声(AWGN),并根据经验将噪声级设置为σ=5。
To address this issue and further diminish the gap between synthetic and real
LR images, we add random noise to the synthesized LR image ˆILn according to the LR image formulation process described in Eq. (1). Without additional in- formation on the imaging system (e.g., sensors, lens), we simply assume additive white Gaussian noise (AWGN) and empirically set the noise level as σ = 5.
实验结果
两部分实验。
实验设置和数据集
数据集
验证DML在退化过程学习和SISR模型训练中的性能,一共用到了三个数据集。
RealSR(v2、pair):包含由两台相机采集的559个场景的对齐HR-LR图像对,具有3个缩放因子:×2、×3和×4。RealSR的划分:训练集/测试集=459/100。这个数据集的主要用来训练DML退化模型,并使用测试部分来定量评估DML的性能及其在实际SISR中的应用。
Flickr2K+互联网图片(unpair):DML学习完成后,这部分数据主要用来监测这个退化学习模型,即通过HR生成HR-LR对。该HR数据集总共包含3150张图片,其中Flickr2k含有2650张不同场景的高质量图像,分辨率大多为1500×2000。互联网图像是从[39]下载了500张4K分辨率的原始图像。然后将PhotoShop CameraRaw工具应用于这些原始图像,获得4K分辨率的未压缩高质量RGB图像。
SR-RGB:该数据集由真实世界的LR图像和通过DSLR光学变焦获得的未对齐HR图像组成。由于HR和LR图像没有对齐,因此无法计算PSNR、SSIM、LPIPS度量,但HR图像可以用作视觉比较的参考。这个数据集验证DML对现实世界SISR的有效性。
SR-RGB来自《Zoom to learn, learn to zoom》,下篇会提到
实验细节
Y通道训练、DA=左右 or 上下翻转、Adam、learning rate=1e−4、epoch=100K or 300K、batch size=16 or 2、进行测试的网络=VDSR + RCAN。
对于所有缩放比例×2、×3和×4,我们将要学习的基核的大小设置为15×15。对基核进行随机初始化,然后归一化为求和1,以便进一步更新。使用Xavier初始值设定项初始化权重预测网络。在DML和SISR网络的训练中,我们将RGB图像转换成YCbCr颜色空间,在Y通道上进行训练或测试。将图像裁剪成192×192块,用于所有模型的训练。左右翻转和上下翻转用于数据扩充。使用带有默认参数设置(β1=0.9,β2=0.999)的Adam优化器作为优化器。我们使用1e−4的固定学习率分别为100K和300K次迭代来训练DML和SISR模型。在DML训练中,批大小设置为16。对于SISR模型,我们采用了两种具有代表性的网络结构:VDSR和RCAN。我们用100个卷积层来实现RCAN。批大小分别设置为16和2,用于训练VDSR和RCAN模型。
RCAN来自《Image Super-Resolution Using Very Deep Residual Channel Attention Networks》,残差通道注意力网络
DML
DML中基核数的选择
研究DML中基核的合适数目。
利用RealSR数据集的训练部分,学习了N=4、8、16基核及其相关的权值预测网络。然后将学习到的模型应用于RealSR数据集测试部分的HR图像,生成LR图像。PSNR、SSIM结果在表1中列出。
从N=4到N=8,可以获得更好的LR生成性能,N=16基核的性能略差于N=8。
N=8,表一中第三行,红色的数据。
有8个基核的DML在不同缩放倍数下的效果
随着缩放因子从2增加到4,核变得更加分散和复杂,这符合我们对图像退化过程的共同认识。
用DML方法对基核的预测组合权重进行×2的可视化。最左边的图像是输入的HR图像,右侧8图像可视化对应于每个基核的预测权重。亮度越高,权重越高。通过实例分析,我们的权重预测网络可以根据场景内容和局部结构自适应地分配不同的权重。
The brighter intensity denotes larger weight.
与其他两种LR图像生成模型的对比
一种是学习CNN,直接将HR图像映射到LR图像,表示为DirectNet。另一种是学习内核预测网络[42],以预测退化内核,表示为DirectKPN。
加上DML,这三种方法,都在RealSR的训练集上进行训练,并在RealSR测试集上进行测试。
比较这三种方法在LR图像生成中的性能。DML在所有三个缩放倍数上都始终优于其他两个,以及DirectKPN的性能略优于DirectNet。这表明,通过考虑图像退化过程,通过学习预测像素核可以获得比直接预测LR图像像素更好的LR生成性能。
三种LR图像生成模型在SISR任务下的效果
将上述三种LR图像生成模型应用于采集的HR图像数据集,使用Flickr2K+互联网图片的那个数据集,生成了三组,每组3150对HR-LR图像。在这些HR-LR对中添加了小AWGN(additive white Gaussian noise),并训练了三个VDSR模型。最后,将这三种VDSR模型应用于RealSR数据集测试部分的LR图像,得到超分辨率的HR图像。
这部分的实验过程:
(1)LR生成模型+HR图像 = 3组LR-HR图像对
(2)LR-HR图像对添加AWGN
(3)根据3组LR-HR图像对训练3个VDSR
(4)用VDSR测试RealSR的459张测试图片的LR并计算指标
结果表明,在DML方法生成的HR-LR图片对上训练的VDSR网络的性能,比DirectNet或DirectKPN生成的对上训练的VDSR网络好(PSNR约为0.15dB)。验证了DML在提高SISR性能方面优于DirectNet和DirectKPN。
DML对SISR任务的影响
测试集
首先做了5个不同的训练数据集:only RealSR、only Syn DSGAN、only Syn DML、RealSR+DSGAN、RealSR+Syn DML。
RealSR:就是上面提到的RealSR以及划分。
Syn DSGAN:一种基于GAN的HR-LR对合成方法,称为DSGAN,来自《Frequency separation for real-world super- resolution》,2019。
Syn DML:DML在Flickr2K+互联网图片上的合成,共3150对。
以RealSR为测试集做定量比较
这部分实验是:用VDSR(20层)和RCAN(100层)对5个不同的数据集做了10个模型,计算并对比指标。
结论:
- LPIPS(Syn-DML上的VDSR/RCAN,任意情况下) < LPIPS(RealSR),使用这个指标证明DML的效果。
LPIPS是一个感知指数,衡量图像的感知质量(越低越好)。
PSNR/SSIM(Syn-DML上的VDSR/RCAN,任意情况下) = PSNR/SSIM(RealSR),因为后者的训练集合和测试集合都是本身,换句话DML在测试集劣势的情况下得到的结果却没有劣势。
Syn-DML > Syn-DSGAN,证明DML比DSGAN优越。
RealSR+合成 > only
以RealSR为测试集做定性比较
在Syn-DML和RealSR+Syn-DML上训练的模型比仅使用RealSR数据集训练的模型能有效地恢复更多的图像细节和更令人愉快的感知质量。特别是RealSR+Syn-DML上训练的模型达到了最佳的视觉质量。
以SR-RGB为测试集做定性比较
测试数据集用了两个,一个是RealSR,另一个是SR-RGB。
SR-RGB由许多LR图像及其未对齐的HR对应图像组成,做不了指标评价,只能做定性的视觉评价,但原文中提到这部分实际上更看重。使用该数据集的原因:由于SR-RGB数据集是独立于RealSR数据集,通过使用不同的摄像机和镜头构建的,结果可以更公平地证明SISR模型对真实场景的泛化能力。
Another is the SR-RGB dataset , which consists of many LR images and their unaligned HR counterparts. Qualitative visual comparisons can be made on it for the different SISR models. Wed like to stress that the testing on the second dataset is more important (though qualitative) because it is independent of the RealSR dataset, part of whose samples are used to train the DML and VDSR/RCAN models. The testing results on the SR-RGB dataset can more faithfully reflect the generalization capability of competing SISR models than those on the RealSR dataset.
在RealSR数据集上训练的模型只能适度地恢复一些细节。在Syn Dsgan上训练的模型会产生严重的伪影。在Syn-DML上训练的SISR模型可以得到更为精细的细节,从而获得令人满意的结果。特别是,在RealSR+Syn-DML上训练的模型提供了最佳的超分辨率HR图像感知质量。
结论
DML能够有效地提高SISR模型在实际应用中的泛化性能。
感想
思路挺新,感觉方法论做烂了之后,大家都开始从超分的最基础流程开始下手写东西了,也许会成为以后的小热点。
这篇的实验做的是又细又好,看着很舒服。尤其是针对训练集和测试集的设置方面,确实比较亮眼。
但是第一部分实验的细节又没有说的很清楚,就是Table 1的那部分,导致了对不上哪部分是哪部分的数据。