个人学习记录

超分辨率综述

 

 

概念

图像超分辨率(image super resolution, SR)是计算机视觉和图像处理中一类重要的图像处理技术,是指从低分辨率(low resolution, LR)图像中恢复高分辨率(high resolution, HR)图像的过程。它有广泛的现实世界的应用,如医学成像,安防等。除了提高图像感知质量外,它还有助于提高其他计算机视觉任务。总的来说,这个问题是非常具有挑战性的,而且是一个ill-posed问题,有多个HR图像对应到单个LR图像。


引言:

近年来,随着深度学习技术的迅速发展,基于深度学习的SR模型得到了积极的探索,并在各种SR基准上取得了最先进的性能。从早期的基于卷积神经网络(CNN)的深度学习方法开始,各种深度学习方法被应用于SR任务的处理方法(如SRCNN)到最近使用GAN(如SRGAN)。一般来说,使用深度学习技术的SR算法家族在以下几个主要方面有所不同:网络架构、损失函数、学习原则和策略等。

本文综述了深度学习在图像超分辨率方面的新进展。虽然已有文献对SR算法进行了研究,但我们的工作不同之处在于,我们主要研究基于深度学习的SR技术,而早期的研究大多是针对传统的SR算法进行研究,或者一些研究主要集中在基于全参考度量或人类视觉感知的定量评价。与现有的调查不同,本次调查以一种独特的基于深度学习的视角,系统全面地回顾了SR技术的最新进展。

本综述的贡献有3个方面:

(1)我们对基于深度学习的图像超分辨率技术进行了全面的回顾,包括问题设置、基准数据集、性能指标、一系列具有深度学习的SR方法、特定领域的SR应用等。

(2)我们以分层和结构化的方式系统地概述了基于深度学习的SR技术的最新进展,并总结了每个组件的优势和局限性,以实现有效的SR解决方案。

(3)我们讨论挑战和未解决的问题,并确定新的趋势和未来的方向,为社区提供深刻的指导。

SR总览:

下图是基于深度学习的SR方法总览:

图片1.jpg 

 

问题定义:

图像超分辨率的目的是从LR图像中恢复相应的HR图像。设存在某一HR图像 Iy,则LR图像Ix可以建模为如下的退化过程:

Ix = D(Iy;δ)

其中D是退化映射函数,δ是退化过程的参数(比如缩放系数或噪声分布参数)。一般来说,退化过程是未知的,只知道LR图像。这种情况下也称为blind SR,研究者需要从LR图像中(近似地)恢复出HR图像Iy_,如下:

Iy_ = F(Ix;θ)

其中F是SR模型,θ是F的参数。

尽管退化过程是未知的,并且可能受到各种因素的影响(例如,压缩伪影、各向异性退化、传感器噪声和散斑噪声),研究人员正试图对退化过程进行建模。大多数工作直接将退化过程建模为单次下采样操作,如下:

D(Iy; δ) = (Iy) ↓s, {s} ⊂ δ,

s是系数为s的下采样操作。事实上,大多数通用SR的数据集都是基于这种模式构建的,最常用的下采样操作是抗混叠的双三次插值。然而还有其他一些工作将退化过程建模为几个操作的组合:

D(Iy; δ) = (Iy ⊗κ) ↓s + nς , {κ, s, ς} ⊂ δ,

Iy ⊗κ 表示使用模糊卷积核κHR图像Iy进行卷积, nς表示均值为0,协方差为ς的高斯噪声。这种建模更接近现实世界的情况,并且可以提高SR方法的性能。

因此SR的目标是:

图片2.jpg 

L(Iy_,Iy)表示生成的HR图像Iy_和groud truth图像Iy之间的损失函数。φ(θ)是正则化项,λ是权衡参数。虽然SR最常用的损失函数是像素均方误差(即像素损失),但更强大的模型往往使用多个损失函数的组合。

 

SR的数据集

目前有多种图像超分辨率数据集,这些数据集在图像数量、质量、分辨率和多样性等方面都存在很大差异。其中一些数据集提供LR-HR图像对,而有些只提供HR图像,这种情况下LR图像通常是通过MATLAB中默认的imresize()函数获得(即bicubic interpolation with anti-aliasing)。如下表所示:

图片3.jpg 

除了这些数据集,一些广泛用于其他视觉任务的数据集也被用于SR, 比如ImageNet , MS-COCO, VOC2012, CelebA。还有些使用多个数据集一起训练。

 


图像质量评估(IQA)

图像质量是指图像的视觉属性,主要是观察者的感知评价。一般来说,IQA方法包括基于人类感知的主观方法(即图像看起来有多逼真)和客观计算方法。前者更符合我们的需要,但往往费时费力,因此后者是目前的主流。然而,这些方法之间并不一定一致,因为客观的方法往往无法非常准确地捕捉人类的视觉感知,这可能导致IQA结果的巨大差异。

客观的IQA方法分为三类:使用参考图像进行评估的full-reference方法,基于提取特征比较的reduced-reference方法,以及没有参考图像的no-reference方法(即blind IQA)。

1. PSNR

峰值信噪比(PSNR)是测量有损变换(如图像压缩、图像修复)重构质量最常用的方法之一。对于图像的超分辨率,通过图像之间的最大像素值(L)和均方误差(MSE)来定义PSNR。

给定ground truth图像I和重构的图像I_,则I和I_的PSNR定义如下:

图片4.jpg 

在一般情况下使用8位表示L等于255。由于PSNR只与像素级的MSE有关,只关心对应像素之间的差异,而不关心视觉感知,往往导致在真实场景中表征重构质量较差,在真实场景中我们通常更关心人的感知。然而,由于需要与文献中其他方法进行比较,且缺乏完全准确的感知指标,PSNR仍然是目前应用最广泛的SR模型评价标准。

2. 结构相似度SSIM

针对人类视觉系统(HVS)高度适应于图像结构的提取,提出了基于亮度、对比度和结构独立比较的 结构相似度指数(SSIM)来度量图像之间的结构相似度。

对于N个像素的图像I,亮度µI和对比度σI是图像灰度的均值和标准差,即:

图片5.jpg 

图片6.jpg 

I(i)是第i个图像的强度。然后ground truth图像I和重构的图像I_的亮度和对比度的比较如下:

图片7.jpg 

其中C1 = (k1L)2C2 = (k2L)2是用于避免数值不稳定的常数。k1<<1,k2<<1。

图像结构由归一化像素((I-µI )/σI)表示,其相关性(即内积)可以用来测量图像结构相似度,等价于I和I_之间的相关系数。因此图像结构相似度定义如下:

图片8.jpg 

其中σI,II和I_之间的协方差,C3是用于稳定系的常数。

最终SSIM定义为:

图片9.jpg 

α,β,γ是调节相对重要性的控制参数。由于SSIM从HVS的角度来评价重构质量,较好地满足了感知评估的要求,也得到了广泛的应用。

3.平均意见评分MOS

平均意见评分(MOS)测试是一种常用的主观IQA方法,其中要求人类评分者为测试图像分配感知质量分数。通常,分数从1(差)到5(好)。最后的MOS值是所有评分的算术平均值。虽然MOS测试似乎是一种可靠的IQA方法,但它有一些固有的缺陷,如非线性感知量尺度、评分标准的偏差和方差。在现实中,有一些SR模型在常见的IQA指标(如PSNR)中表现较差,但在感知质量方面却远远超过其他模型,在这种情况下,MOS测试是准确测量感知质量的最可靠的IQA方法。

4.基于学习的感知质量

为了在减少人工干预的同时更好地评估图像的感知质量,研究者试图通过在大数据集上学习来评估感知质量。虽然这些方法在捕捉人类视觉感知方面表现出了更好的性能,但我们需要什么样的感知质量(如更真实的图像,或与原始图像一致)仍然是一个有待探索的问题,因此客观的IQA方法(如PSNR, SSIM)仍然是目前的主流。

5. 基于任务的评估

SR模型通常可以帮助其他视觉任务,通过其他任务评估重建性能是另一种有效的方法。研究人员将原始和重构后的HR图像输入训练好的模型,通过比较对预测性能的影响来评价重构质量。用于评价的视觉任务包括物体识别,人脸识别,人脸对齐和解析等。

6.其它IQA方法

除了以上的IQA方法之外,还有其他不那么流行的SR指标。多尺度结构相似性(MS-SSIM)在合并viewing conditions的变化方面比单尺度SSIM提供了更多的灵活性。特征相似度(feature similarity, FSIM)基于相位一致性和图像梯度大小提取人类感兴趣的特征点来评价图像质量。 Natural Image Quality Evaluator(NIQE)利用自然图像中观察到的统计规律的可测量偏差,而不暴露在扭曲的图像中。

最近,Blau等人通过数学方法证明了失真质量(如PSNR、SSIM)和感知质量(如MOS)是不一致的,表明随着失真度的降低,感知质量一定会变差。因此,如何准确地测量SR质量仍然是一个迫切需要解决的问题。

 


图像空间

除了常用的RGB颜色空间外,YCbCr颜色空间也广泛用于SR。在该空间中,图像由Y、Cb、Cr通道表示,分别表示亮度、蓝差和红差色度分量。尽管目前不知道哪个空间的超分辨率最好,但早期的模型倾向于在YCbCr空间的Y通道上操作,而较新的模型倾向于在RGB通道上操作。值得注意的是,在不同的颜色空间或通道上操作(训练或评估)会使评估结果相差很大(高达4 dB)。

 


SR竞赛

NTIRE ChallengeThe New Trends in Image Restoration and Enhancement (NTIRE)挑战赛与CVPR一起举办的,包括多个任务,如SR,去噪和着色。对于图像SR,该比赛是建立在DIV2K数据集上的,由双三次下采样比赛和带有真实未知退化的blind比赛组成。这些比赛在退化和比例因子上有所不同,旨在促进理想条件和现实不利情况下的SR研究。

PIRM ChallengeThe Perceptual Image Restoration and Manipulation (PIRM)挑战赛与ECCV联合举办的。 与NTIRE不同,PIRM的一个子挑战赛侧重于生成准确性和感知质量之间的权衡,而另一个子挑战赛侧重于智能手机上的SR。众所周知,以失真为目标的模型通常会产生令人不快的视觉效果,而以感知质量为目标的模型在信息保真度方面表现较差。具体来说,PIRM根据均方根误差(RMSE)的阈值将感知失真平面划分为三个区域。在每个区域中,获胜的算法是获得最佳感知质量的算法,由NIQE和Ma评估。而在另一个子挑战赛中,智能手机上的SR要求参与者使用有限的智能手机硬件(包括CPU、GPU、RAM等)执行SR,符合的评估包括PSNR、MS-SSIM和MOS测试。通过这种方式,PIRM鼓励对感知失真的权衡进行高级研究,并推动智能手机上的轻量级高效图像增强。

 



基于监督学习的超分辨率

目前,研究人员提出了多种具有深度学习的超分辨率模型。这些模型集中于监督SR,即用LR图像和相应的HR图像训练。虽然这些模型之间的差异非常大,但它们本质上是一系列组件的组合,如模型框架、上采样方法、网络设计和学习策略。从这个角度出发,研究人员将这些组件组合起来,建立一个集成的SR模型,以适应特定的目的。

 

超分辨率的框架

由于图像的超分辨率是一个病态问题,如何进行上采样(即从LR输入生成HR输出)是关键问题。尽管现有模型的架构差异很大,但根据所采用的上采样操作及其在模型中的位置,可以将其归结为四种模型框架(如图2所示)。 

 

1. Pre-upsampling SR

由于直接学习从低维空间到高维空间的映射很难,利用传统的上采样算法获得更高分辨率的图像,然后使用深度神经网络进行细化是一个简单的解决方案。

图片10.jpg 

Dong等人[22],[23]首先采用Pre-upsampling SR框架,并提出SRCNN来学习从插值LR图像到HR图像的端到端映射。具体来说,使用传统方法(如双三次插值)将LR图像上采样为所需尺寸的粗糙HR图像,然后在这些图像上应用深度CNN来重建高质量的细节。由于最困难的上采样操作已经完成,CNNs只需要对粗糙图像进行细化,这大大降低了学习难度。

此外,这些模型可以将任意大小和比例因子的插值图像作为输入,得到与单尺度SR模型性能相当的结果。因此,它逐渐成为最流行的框架,这些模型之间的主要区别是后验模型设计和学习策略。然而,预定义的上采样通常会引入副作用(例如,噪声放大和模糊),而且由于大多数操作都是在高维空间中执行的,时间和空间成本比其他框架要高得多。

2. Post-upsampling SR

为了提高计算效率,充分利用深度学习技术自动地提高分辨率,研究人员提出在低维空间中进行大部分的计算,将Pre-upsampling替换为模型末尾集成的端到端的可学习层。将LR输入图像送入深度CNNs,在网络末端采用端到端可学习的upsampling层。由于计算量大的特征提取过程只发生在低维空间中,最后才增加分辨率,大大降低了计算量和空间复杂度。因此,该框架也成为最主流的框架之一。

图片11.jpg 

3.Progressive Upsampling SR

后上采样SR框架虽然大大降低了计算成本,但仍存在一些不足。一方面,上采样只需一步完成,大大增加了对大尺度因子的学习难度。另一方面,每个比例因子都需要训练一个单独的SR模型,这不能满足多尺度SR的需要。为了解决这个问题,提出了Laplacian pyramid SR network(LapSRN),如上图2c所示。具体来说,该框架下的模型是基于CNN的级联,逐步重构高分辨率图像。在每个阶段,图像被上采样到更高的分辨率,并由CNNs细化。MS-LapSRN和progressive SR (ProSR)等工作也采用了该框架,并取得了较高的性能。与LapSRN和MS-LapSRN使用中间重建图像作为后续模块的“基础图像”不同,ProSR保留主要信息流并通过独立的网络头部重建中间分辨率图像。

图片12.jpg 

该框架下的模型通过将困难的任务分解为简单的任务,极大地降低了学习难度,特别是在大的缩放系数的情况下,能在不引入过多的时间和空间代价的情况下处理多尺度SR。此外,一些具体的学习策略,如curriculum leaning和多监督学习,可以直接整合到该框架,进一步降低学习难度,提高最终性能。但是,这些模型也存在一些问题,如多阶段的模型设计复杂,训练稳定性差,需要更多的建模指导和更先进的训练策略。

4. Iterative Up-and-down Sampling SR

为了更好地捕捉LR-HR图像对的相互依赖性,一种高效的反向投影迭代方法被引入到SR中,称为迭代上下采样SR。尝试迭代地应用反向投影优化,即计算重构误差,然后将其融合回来调整HR图像的强度。具体来说,Haris等人利用迭代上下采样层,提出DBPN,将上采样层和下采样层交替连接,利用所有中间重构结果来重构最终的HR结果。类似地,SRFBN采用迭代上下采样反馈块,具有更密集的跳跃连接,并学习更好的表示。用于视频超分辨率的RBPN从连续视频帧中提取context,并通过反向投影模块将这些context组合起来生成周期性输出帧。

图片13.jpg 

2 基于深度学习的超分辨率模型框架。多维数据集大小表示输出大小。灰色层表示预定义的上采样层,绿色层、黄色层和蓝色层分别表示可学习的上采样层、下采样层和卷积层。用虚线框括起来的块代表可堆叠的模块。

该框架下的模型能够更好地挖掘LR-HR图像对之间的深层关系,从而提供更高质量的重建结果。然而,反向投影模块的设计标准仍然不清楚。由于该机制刚刚被引入到基于深度学习的SR中,因此该框架具有很大的潜力,需要进一步的探索。

 

 


上采样方法

除了上采样在模型中的位置之外,如何进行上采样也非常重要。尽管有各种传统的上采样方法,利用CNN学习端到端上采样逐渐成为一种趋势。

1.基于插值的上采样方法

图像插值(Image interpolation),又称图像缩放(Image scaling),是指对数字图像进行大小调整,被图像相关应用程序广泛使用。传统的插值方法有最近邻插值、双线性插值和双三次插值,Sinc和Lanczos重采样等。由于这些方法具有可解释性和易于实现的特点,其中一些方法仍被广泛应用于基于CNN的SR模型中。

最近邻插值:最近邻插值是一种简单直观的算法。它为每个要插值的位置选择最近的像素值,而不考虑其他像素。因此,这种方法非常快,但通常产生低质量的块状结果。

双线性插值:双线性插值(BLI)首先在图像的一个轴上执行线性插值,然后在另一个轴上执行,如下图所示:

图片14.jpg 

由于它的结果是一个2×2大小的接受域的二次插值,它表现出比最近邻居插值更好的性能,同时保持相对较快的速度。

双三次插值:类似地,双三次插值(BCI)在两个轴上执行三次插值,如上图所示。与BLI相比,BCI考虑了4×4像素,结果更平滑,人工痕迹更少,但速度更慢。事实上,抗混叠BCI是构建SR数据集的主流方法(将HR图像降级为LR图像),也广泛应用于Pre-upsampling SR框架。

事实上,基于插值的上采样方法只根据自身的图像信号来提高图像分辨率,而不带来更多的信息。相反,它们经常带来一些副作用,如计算复杂度、噪声放大、结果模糊。因此,目前的趋势是用可学习的上采样层取代基于插值的方法。

2.基于学习的上采样方法

为了克服基于插值的方法的缺点,学习端到端的上采样方法,将转置卷积层和亚像素层引入SR域。

转置卷积:转置卷积层,又称反卷积层,执行与普通卷积相反的转换,即根据与卷积输出一样大小的特征图来预测可能的输入。具体来说,它通过插入零来扩大图像并进行卷积来提高图像的分辨率。

图片15.jpg 

3×3卷积的2×SR为例,首先将输入特征图扩展为原始大小的两倍,其中添加的像素值设置为0。然后应用大小为3×3、步长1和填充1的卷积。这样,输入的上采样系数为2,在这种情况下,感受野最多为2×2。由于转置卷积以端到端的方式放大图像大小,同时保持与普通卷积兼容的连接性模式,因此它被广泛用作SR模型中的上采样层。然而,这一层很容易导致每个轴上的“不均匀重叠”,两个轴上相乘的结果进一步创建一个大小不一的棋盘状模式,从而损害SR性能。

亚像素层:亚像素层是另一个端到端可学习上采样层,它通过卷积生成多个通道,然后对通道进行整形来进行上采样,如图5所示。

图片16.jpg 

在这一层中,首先应用卷积来产生s2通道的输出,其中s是比例因子。设输入大小是h*w*c,输出的大小是h*w*s2c,然后执行reshaping操作生成sh*sw*c。在这种情况下,感受野可以达到3×3。由于端到端的上采样方式,这一层也被SR模型广泛使用。与转置卷积层相比,亚像素层具有更大的接受域,提供更多的上下文信息,有助于生成更真实的细节。然而,由于感受野的分布不均匀,而块状区域实际上共享同一个感受野,这可能会导致在不同块的边界附近出现一些伪影。另一方面,在块状区域中独立预测相邻像素可能会导致输出不平滑。因此Gao等人提出了PixelTCL,用独立预测代替相互依赖的顺序预测,产生更平滑、更一致的结果。

Meta Upscale Module:之前的方法需要预先定义缩放比例因子,针对不同的因子训练不同的上采样模块,这种方法效率低下,不符合实际需要。因此,Hu等提出了meta upscale模块,基于元学习解决任意比例因子的SR问题。

图片17.jpg 

具体来说,对于HR图像上的每个目标位置,该模块将其投影到LR特征图(即k×k×cin)上的一个小面片上,根据投影偏移量和稠密层的比例因子预测卷积权重(即k×k×cin×cout),并进行卷积。这样,meta upscale模块可以连续放大任意因子的单个模型。并且由于训练数据量大(同时训练多个缩放系数),该模块在固定缩放系数上可以表现出相当甚至更好的性能。虽然该模块在推理过程中需要预测权重,但执行时间仅占特征提取时间的1%左右。然而,该方法基于多个独立于图像内容的值对每个目标像素进行大量的卷积权值预测,因此在面对较大的放大倍数时,预测结果可能不稳定,效率较低。

目前,这些基于学习的层已经成为最广泛使用的上采样方法。特别是在post-upsampling框架中,通常在最后的上采样阶段使用这些层来基于低维空间提取的高层表示来重建HR图像,从而实现端到端SR,同时避免了高维空间的过度操作。

 

 



网络设计

目前,网络设计已经成为深度学习的重要内容之一。

1.残差学习

He等人提出ResNet来学习残差而不是彻底的映射之前,残差学习已经被SR模型广泛使用。残差学习策略大致可以分为全局残差学习和局部残差学习。

图片18.jpg 

全局残差学习:由于图像SR是一种图像到图像的转换任务,输入图像与目标图像高度相关,研究者试图只学习它们之间的残差,即全局残差学习。在这种情况下,它避免了学习从一个完整的图像到另一个复杂的转换,而只需要学习一个残差映射来恢复缺失的高频细节。由于大部分区域的残差都接近于零,大大降低了模型的复杂度和学习难度。因此它在SR模型中得到了广泛的应用。

局部残差学习:局部残差学习类似于ResNet中的残差学习[96],用于缓解由于网络深度不断增加而导致的退化问题,降低训练难度,提高学习能力。它也广泛用于SR。

在实际操作中,上述两种方法都是通过shortcut连接(通常通过一个小常数进行缩放)和逐像素加法来实现的,不同之处是前者直接连接输入输出图像,而后者通常在网络中不同深度的层之间添加多个shortcut。

2.递归学习

为了在不引入过多参数的情况下学习更高层次的特征,SR领域引入了递归学习,即以递归的方式多次应用相同的模块。

图片19.jpg 

在各种递归SR方法中,16递归的DRCN采用单个卷积层作为递归单元,其感受野为41×41,远大于SRCNN的13×13,且参数不多。DRRN使用ResBlock作为25次递归的递归单元,获得了比17个ResBlock基线更好的性能。后来Tai等人提出了基于内存块的MemNet,内存块由一个6递归的ResBlock组成,每个递归的输出都连接在一起,并经过额外的1×1卷积用于记忆和遗忘。级联残差网络(CARN)也采用了类似的递推单元,包含了几个ResBlock。最近,Li等人采用迭代上下采样SR框架,提出了一种基于递归学习的反馈网络,在所有递归中共享整个网络的权值。

此外,研究人员还在不同的部分使用了不同的递归模块。具体而言,Han等提出了双态循环网络(dual-state recurrent network, DSRN),用于LR和HR状态之间交换信号。在每个时间步骤(即递归),每个分支的表示都会更新和交换,以便更好地探索LR-HR关系。同样,Lai等采用嵌入和上采样模块作为递归单元,在性能损失很小的情况下大大减小了模型的尺寸。因此,一些技术,如残差学习和多监督经常被集成到递归学习中以缓解这些问题。

3.Multi-path Learning

Multi-path learning是指通过执行不同操作的多条路径传递特征,并将它们融合回来,以提供更好的建模能力。具体来说,它可以分为全局、局部和Scale-specific的多路径学习,如下所示。

全局多路径学习:全局多路径学习是指利用多条路径提取图像不同方面的特征。这些路径在传播过程中可以相互交叉,从而大大提高了学习能力。具体地说,LapSRN包括以coarse-to-fine的方式预测sub-hand残差的特征提取路径和基于来自两条路径的信号重建HR图像的另一条路径。类似地,DSRN利用两条路径分别在低维和高维空间中提取信息,并不断交换信息以进一步提高学习能力。像素递归超分辨率[64]采用调节路径来捕获图像的全局结构,并采用先验路径来捕获所生成像素的序列相关性。相比之下,Ren等人采用具有不平衡结构的多条路径来执行上采样,并在模型末尾对其进行融合。

局部多路径学习:受inception模块的启发,MSRN采用了一个新的块进行多尺度特征提取:

图片20.jpg 

在这个block中,我们同时使用两个核大小为3×3和5×5的卷积层来提取特征,然后将输出串接起来,再次进行相同的操作,最后再额外使用1×1的卷积。有一个Shortcut通过逐像素加法连接输入和输出。通过这种局部多路径学习,SR模型可以更好地从多个尺度提取图像特征,进一步提高性能。

Scale-specific多路径学习:考虑到不同尺度的SR模型需要进行相似的特征提取,Lim等提出了scale-specific多路径学习来处理单网络下的多尺度SR。具体来说,它们共享模型的主成分(即特征提取的中间层),并分别在网络的起始和末端附加特定尺度的预处理路径和上采样路径:

图片21.jpg 

在训练过程中,只启用和更新所选尺度对应的路径。这样,所提出的MDSR通过共享不同尺度的大部分参数,大大减小了模型的尺寸,表现出与单尺度模型相当的性能。CARN[28]和ProSR也采用了类似的scale-specific多路径学习。

4.Dense Connections

自从Huang等人提出基于dense blocks的DenseNet,密集连接在视觉任务中越来越受欢迎。对于dense blocks中的每一层,将前面各层的特征作为输入,将其自身的特征图作为输入到后续各层,从而导致l层dense block(l≥2)中的l*(l - 1)/2个连接。密集连接不仅有助于缓解梯度消失、增强信号传播和鼓励特征重用,而且通过使用小增长率(即密集块中的通道数量)和在连接所有输入特征映射后压缩通道,大幅减小模型大小。

为了融合低层和高层特征,为重建高质量的细节提供更丰富的信息,在SR域中引入了密集连接:

图片22.jpg 

Tong等人不仅采用dense block构造69层SRDenseNet,而且在不同的dense block之间插入密集连接,即对于每个dense block,将前面所有块的特征映射作为输入,将其自身的特征映射作为后续所有块的输入。MemNet、CARN、RDN和ESRGAN也采用了这种层级和块级的密集连接。DBPN也广泛采用密集连接,但它们的密集连接是在所有上采样单元之间,下采样单元也是如此。

5.注意力机制

通道注意力:考虑到不同通道之间特征表示的相互依赖性和相互作用,Hu等人提出了一个“squeeze-and-excitation”模块,通过显式建模通道相互依赖性来提高学习能力,如图7c所示。

图片23.jpg 

在该块中,使用GAP将每个输入通道压缩到一个通道描述符(即系数),然后将这些描述符输入到两个密集层中以产生输入通道的通道尺度因子。最近,Zhang等人将通道注意机制与SR结合起来,提出了RCAN,显著提高了模型的表征能力和SR性能。为了更好地了解特征相关性,Dai等人进一步提出了一种二阶通道注意力(SOCA)模块。SOCA采用二阶特征统计量代替GAP自适应地对通道特征进行重缩放,从而提取出更具信息性和区分性的表示。

No-local注意力:大多数现有的SR模型都有非常有限的局部感受野。然而,一些远处的物体或纹理可能对局部块生成非常重要。因此,Zhang等人提出了局部和非局部注意块来提取捕捉像素之间长期依赖关系的特征。具体地说,他们提出了一个用于提取特征的主干分支和一个(非)局部掩码分支用于自适应地重新缩放主干分支的特征。其中,局部分支采用编解码器结构来学习局部注意,非局部分支采用嵌入高斯函数来估计特征映射中每两个位置指标之间的成对关系来预测缩放权重。通过这种机制,该方法较好地捕获了空间注意,进一步提高了表达能力。类似地,Dai等人也结合了非局部注意机制来捕获长距离的空间上下文信息。

6.先进的卷积

由于卷积运算是深度神经网络的基础,研究者也试图改进卷积运算以获得更好的性能或更高的效率。

膨胀卷积:众所周知,context信息有助于为SR生成真实的细节。因此,Zhang等在SR模型中用膨胀卷积代替普通卷积,将感受野增加了两倍以上,获得了更好的性能。

分组卷积:受最近轻量级CNNs的启发,Hui等人和Ahn等人提出了IDN和CARN-M,将标准卷积替换为分组卷积。正如之前的一些工作所证明的那样,分组卷积可以大大减少参数和操作的数量,但会损失一些性能。

图片24.jpg 

深度可分离卷积:自从霍华德等人提出深度可分离卷积用于高效的执行卷积操作,它已经扩展到各个领域。具体地说,它由一个分解的深度卷积和一个逐点卷积(即1×1卷积)组成,从而减少了大量的参数和运算,而精度只降低了一点点。最近,Nie等人采用了深度可分离卷积,大大加快了SR结构的发展。

7.区域回归学习

大多数SR模型将SR视为独立于像素的任务,因此不能正确地确定生成像素之间的依赖关系。受PixelCNN的启发,Dahl等人首先提出了像素递归学习,通过使用两个网络分别捕获全局上下文信息和序列生成依赖性来执行逐像素生成。这样,所提出的方法在超分辨率非常低分辨率的人脸图像(如8×8)上合成真实的头发和皮肤细节,远远超过了以往的MOS测试方法。

受人类注意力转移机制的启发,Attention-FH也采用了这种策略,借助于一个循环策略网络,依次发现attended patches并执行局部增强。这样,它能够根据图像自身的特点自适应地对每个图像的最优搜索路径进行个性化设置,从而充分利用图像的全局内相关性。

虽然这些方法在一定程度上表现出了较好的性能,但是递归过程需要较长的传播路径,这大大增加了计算量和训练难度,特别是对于超分辨率的HR图像。

8.金字塔池化

受空间金字塔池层的启发,Zhao等人提出了金字塔池模块,以更好地利用全局和局部上下文信息。具体来说,对于大小为h×w×c的特征图,每个特征图被划分为M×M个单元,并经过GAP,得到M×M×c的输出。然后执行1×1卷积,将输出压缩到单个通道。然后,通过双线性插值将低维特征图上采样到与原始特征图相同的大小。通过使用不同的M,该模块有效地集成了全局和局部上下文信息。通过合并该模块,提出的EDSR-PP模型进一步提高了基线性能。

图片25.jpg 

9.小波变换

众所周知,小波变换(WT)是一种高效的图像表示方法,它将图像信号分解为表示纹理细节的高频子带和包含全局拓扑信息的低频子带。Bae等人首先将小波变换与基于深度学习的SR模型相结合,以插值LR小波的子带作为输入,预测相应的HR子带的残差。小波变换和逆小波变换分别用于分解LR输入和重构HR输出。类似地,DWSR和小波SRNet也在小波域中执行SR,但是具有更复杂的结构。与上述独立处理每个子带的工作不同,MWCNN采用多级WT,并将级联的子带作为单个CNN的输入,以便更好地捕捉它们之间的依赖关系。由于小波变换的有效表示,使用这种策略的模型往往大大减小了模型的大小和计算量,同时保持了具有竞争力的性能。

10.Desubpixel

为了加快推理速度,Vu等人提出在低维空间中进行耗时的特征提取,并提出去亚像素(desubpixel),这是亚像素层shuffle操作的逆运算。 具体地说,去亚像素操作在空间上分割图像,将它们堆叠为额外通道,从而避免信息丢失。通过这种方式,他们在模型开始时对输入图像进行亚像素减采样,在低维空间中学习表示,并在模型结束时对目标大小进行上采样。该模型在智能手机上的PIRM挑战中取得了最好的成绩,具有非常高的推理速度和良好的性能。

11.xUnit

为了将空间特征处理和非线性激活结合起来,更有效地学习复杂的特征,Kligvasser等人提出了xUnit来学习空间激活函数。具体地说,ReLU被视为确定一个权重映射来与输入进行元素相乘,而xUnit通过卷积和高斯选通直接学习权重映射。尽管xUnit的计算要求更高,但由于其对性能的显著影响,它允许在将性能与ReLU匹配的同时大大减小模型大小。通过这种方式,作者将模型大小减少了近50%,而没有任何性能下降。

 



 

学习策略

1.损失函数

在超分辨率领域,利用损失函数测量重建误差,指导模型优化。在早期,研究人员通常采用逐像素L2损失,但后来发现它不能很准确地测量重建质量。因此,为了更好地测量重建误差并产生更真实和更高质量的结果,采用了各种损失函数(例如,content loss、adversarial)。如今,这些损失函数已经发挥了重要作用。

Pixel LossPixel Loss测量两幅图像的像素差异,主要包括L1损失(即MAE)和L2损耗(即MSE):

图片26.jpg 

其中h,w,c是图像的高、宽、通道数。此外,pixel L1 loss的一个变体,称为Charbonnier loss如下:

图片27.jpg 

其中根号里有一个小常数用于数值稳定性。

Pixel loss使得生成的HR图像在像素值上足够接近ground truth。与L1损失相比,L2损失惩罚较大的误差,但更能容忍较小的误差,因此往往导致过于平滑的结果。在实践中,L1损失显示出比L2损失更好的性能和收敛性。因为PSNR的定义与像素级差异高度相关,pixel loss最小化直接导致PSNR最大化,pixel loss逐渐成为应用最广泛的损失函数。然而,由于像素丢失实际上没有考虑图像质量(例如,感知质量,纹理),因此结果通常缺乏高频细节,并且对于过平滑纹理在感知上不满意。

Content Loss:为了评估图像的感知质量,content loss被引入SR中。具体来说,它使用预训练的图像分类网络来衡量图像之间的语义差异。记该网络为φ,第l层抽取的高层次表示记为φ(l)(I),则content loss是两个图像的高层次表示的欧式距离:

图片28.jpg 

其中hl, wl ,cl分别是l层的高、宽、通道数。本质上讲,content loss将层次图像特征的知识从分类网络φ转移到SR网络。与pixel loss相比,content loss鼓励输出图像ˆI在感知上与目标图像I相似,而不是强迫它们精确地匹配像素。因此,它产生了更直观的结果,也被广泛应用于这个领域,其中VGG和ResNet是最常用的预训练CNNs。

Texture Loss:由于重建后的图像应该与目标图像具有相同的风格(如颜色、纹理、对比度),受到Gatys等人的风格化表示的启发,将texture loss(即风格重建损失)引入到SR中。 图像纹理被看作是不同特征通道之间的相关,定义为Gram矩阵G(l)∈Rclxcl,其中G(l)ij是层l中不同特征图i,j向量化后内积的结果:

图片29.jpg 

其中vec()表示向量化操作,φ(l)i表示层l第i个通道。则texture loss定义为:

图片30.jpg 

Sajjadi等人提出的EnhanceNet通过使用texture loss,创建了更逼真的纹理,产生更令人满意的视觉效果。尽管如此,确定patch大小以匹配纹理仍然是经验性的。太小的patch会导致纹理区域中的artifacts,而太大的patch会导致整个图像中的artifacts,因为纹理统计是在不同纹理的区域上平均的。

Adversarial Loss:近年来,由于强大的学习能力,GANs受到越来越多的关注,并被引入到各种视觉任务中。具体地说,GAN包括用于生成(例如,文本生成、图像变换)的生成器和一个判别器,判别器接收生成结果和从目标分布中采样的实例作为输入,并判别他们是否来自目标分布。在训练过程中,两个步骤交替进行:(a)固定生成器并训练判别器以更好地辨别,(b)固定判别器并训练生成器以欺骗判别器。通过充分的迭代对抗训练,得到的生成器可以产生与真实数据分布一致的输出,而判别器不能区分生成的数据和真实数据。

在超分辨率方面,采用对抗式学习是很简单的,在这种情况下,我们只需要将SR模型作为一个生成器,并定义一个额外的判别器来判断输入图像是否生成。因此,Ledig等人首先提出了基于交叉熵的对抗损失SRGAN,如下所示:

图片31.jpg 

其中Lgan_ce_gLgan_ce_d分别表示生成器和判别器的对抗损失。Is表示从ground truths分布中随机采样的图片。此外,Enhancenet也采用类似的对抗损失函数。

此外,Wang等人和Yuan等人使用基于最小二乘误差的对抗损失来获得更稳定的训练过程和更高质量的结果:

图片32.jpg 

与上述专注于对抗性损失的具体形式的工作不同,Park等人认为像素级判别器导致产生无意义的高频噪声,并附加另一个特征级判别器对预训练的CNN提取的高层表示进行操作,该CNN捕获真实HR图像的更有意义的属性。Xu等人整合了一个multi-class GAN,由一个生成器和多个class-specific判别器组成。ESRGAN使用relativistic GAN来预测真实图像比假图像更真实的概率,而不是输入图像是真的或假的概率,从而指导恢复更详细的纹理。

广泛的MOS试验结果表明,尽管与pixel loss训练的SR模型相比,adversarial losscontent loss训练的SR模型获得较低的PSNR,但它们在感知质量方面带来了显著的提高。事实上,判别器从真实的HR图像中提取出一些难以学习的潜在模式,并将生成的HR图像更加令人信服,从而有助于生成更真实的图像。然而,目前GAN的训练过程仍然是困难和不稳定的。虽然已经有一些关于如何稳定GAN训练的研究,但是如何保证融入SR模型的GAN得到正确训练并发挥积极作用仍然是一个问题。

Cycle Consistency Loss:受CycleGAN的启发,Yuan等人提出了用于SR的cycle-in-cycle方法。具体地说,他们不仅将LR图像I超分辨率到HR图像I_,而且通过另一个CNN将I_进行下采样得到I’。重新生成的I’被要求与输入I相等,因此cycle consistency loss可以限制它们的像素级一致性:

图片33.jpg 

Total Variation Loss:为了抑制生成的图像的噪声,total variation(TV) loss被引入到SR中。它定义为相邻像素之间的绝对差之和,用来衡量图像中有多少噪声,如下所示:

图片34.jpg 

Lai等[25]和Yuan等[131]也采用TV损失来增强空间平滑度。

Prior-Based Loss:除了上述损失函数外,还引入了外部先验知识来约束生成图像。具体而言,Bulat等人关注人脸图像SR,并引入人脸对齐网络(FAN)来约束人脸标志的一致性。FAN经过预训练和集成,提供人脸对齐的先验信息,然后与SR联合训练。这样,该Super-FAN在LR人脸对齐和人脸图像SR两方面都提高了性能。

事实上,content loss和texture loss都引入了一个分类网络,本质上是为SR提供层次图像特征的先验知识。通过引入更多的先验知识,可以进一步提高SR的性能。

在实践中,研究人员通常通过加权平均来组合多个损失函数,以约束生成过程的不同方面,特别是在失真-感知的权衡方面。然而,不同损失函数的权重需要大量的实证探索,如何合理有效地组合仍然是一个问题。

2.Batch Normalization

为了加速和稳定深层CNN的训练,Sergey等人提出了batch normalization (BN)来减少网络的内部协变量移动( internal covariate shift)。具体地说,它们为每个mini-batch执行归一化,并为每个通道训练两个额外的变换参数以保持表示能力。由于BN校准了中间特征分布并减轻了消失梯度,因此它允许使用更高的学习率并且可以更加随意的进行参数初始化。因此,这一技术在SR模型中得到了广泛的应用。

然而,Lim等人认为BN丢失了每幅图像的尺度信息,并从网络中消除了距离灵活性。因此,他们删除了BN,并使用节省的内存成本(高达40%)来开发更大的模型,从而大大提高了性能。

3. Curriculum Learning

Curriculum learning是指从一项更容易的任务开始,逐渐增加难度。由于超分辨率问题是一个病态问题,并且经常遇到诸如大缩放因子、噪声和模糊等不利条件,因此为了降低学习难度,将curriculum training纳入其中。

为了降低具有大缩放因子的SR的难度,Wang等人、Bei等人和Ahn等人分别提出了ProSR、ADRSR和渐进式CARN,它们不仅在架构上是渐进的而且训练过程也是。训练从2×上采样开始,训练结束后,将比例因子为4×或更大的部分逐渐加入并与之前的部分混合。具体地说,ProSR通过线性组合这个级别的输出和前面级别的上采样输出来进行混合,ADRSR将它们连接起来并附加另一个卷积层,而渐进CARN将前面的重建块替换为产生双分辨率图像的块。

此外,Park等人将8×SR问题分为三个子问题(即1× to 2×, 2× to 4×, 4× to 8×)并为每个问题训练独立的网络。然后将其中两个连接起来并进行微调,然后再连接第三个。除此之外,他们还将困难条件下的4×SR分解为1×到2×,2×到4×和去噪或去模糊子问题。相反,SRFBN在不利条件下对SR使用这种策略,即从简单退化情况开始,逐渐增加退化复杂性。

与一般的训练过程相比,Curriculum learning大大降低了训练难度,缩短了总的训练时间,尤其是对大缩放系数的训练。

4.多监督

Multi-supervision是指在模型中加入多个监督信号,以增强梯度传播,避免梯度消失和爆炸。为了防止递归学习带来的梯度问题,DRCN采用了递归单元的多重监督。具体地说,它们将递归单元的每个输出馈送到重建模块中以生成HR图像,并且通过合并所有中间重建来构建最终预测。MemNet和DSRN也采用了类似的策略,它们同样基于递归学习。

此外,由于渐进上采样框架下的LapSRN在传播过程中会产生不同尺度的中间结果,因此采用多监督策略是非常简单的。具体地说,中间结果被强制与从ground truth HR图像下采样的中间图像相同。

在实际应用中,这种多监督技术往往通过在损失函数中加入一些项来实现,这样可以更有效地对监督信号进行反向传播,从而降低训练难度,增强模型训练效果。

 


Context-wise Network Fusion

基于上下文的网络融合(CNF)是指将多个SR网络的预测进行融合的叠加技术(即multi-path learning学习的特例)。具体地说,它们分别训练具有不同结构的SR模型,将每个模型的预测结果反馈到各个卷积层,最后将输出结果相加,得到最终的预测结果。在这个CNF框架内,由三个轻量级SRCNNs构造的最终模型以可接受的效率达到了与最先进模型相当的性能。

 

 Data Augmentation

数据增强是使用深度学习提高性能的最广泛的技术之一。对于图像的超分辨率,一些有用的增强选项包括裁剪、翻转、缩放、旋转、颜色抖动(color jittering)等。此外,Bei等人还随机打乱RGB通道,既增强了数据,又缓解了由于数据集颜色不平衡而导致的颜色偏置。

 

Multi-task Learning

多任务学习是指利用相关任务(如目标检测,语义分割,头部姿势估计,面部属性推理)的训练信号中包含的特定领域信息来提高泛化能力。在SR领域,Wang等人整合了一个语义分割网络,用于提供语义知识和生成特定于语义的细节。具体来说,他们提出了空间特征变换,以语义特征图为输入,并预测在中间特征图上进行仿射变换的空间参数。提出的SFT-GAN算法可以在具有丰富语义区域的图像上生成更真实、更美观的纹理。此外,考虑到直接超分辨率噪声图像可能导致噪声放大,DNSR提出将去噪网络和SR网络分别训练,然后将二者串联起来进行微调。同样地,cycle-in-cycle GAN(CinCGAN)结合了cycle-in-cycle去噪框架和cycle-in-cycle SR模型来联合进行降噪和超分辨率处理。由于不同的任务往往侧重于数据的不同方面,因此将相关任务与SR模型相结合通常可以通过提供额外的信息和知识来提高SR性能。

 

Network Interpolation

基于PSNR的模型产生的图像更接近ground truths,但会产生模糊问题,而基于GAN的模型带来更好的感知质量,但会产生令人不快的伪影(例如,无意义的噪声使图像更“逼真”)。为了更好地平衡失真和感知,Wang等人提出了一种网络插值策略( network interpolation strategy)。具体地说,他们通过微调来训练基于PSNR的模型和基于GAN的模型,然后内插两个网络的所有相应参数来得到中间模型。通过调整插值权重而无需重新训练网络,它们可以产生有意义的结果,同时产生更少的伪影。

 

Self-Ensemble

Self-ensemble,又称增强预测(enhanced prediction),是SR模型常用的一种推理技术。具体地,对LR图像应用具有不同角度(0°、90°、180°、270°)的旋转和水平翻转以获得一组8个图像。然后将这些图像输入到SR模型中,对重构后的HR图像进行相应的逆变换得到输出。最终的预测结果是通过这些输出的平均值或中位数来进行的。这样,这些模型进一步提高了性能。

 


SOTA的SR模型

近年来,基于深度学习的图像超分辨率模型得到了越来越多的关注,并取得了最先进的性能。事实上,今天大多数最先进的SR模型基本上都可以归因于我们上面总结的多种策略的组合。我们总结了一些有代表性的模型及其关键策略,如表2所示。

图片35.jpg 

除了SR精度,效率是另一个非常重要的方面,不同的策略或多或少地影响效率。所以在前面的章节中,我们不仅分析了所提出的策略的准确性,还指出了对效率影响较大的策略对效率的具体影响,如post-upsampling,递归学习,密集连接,xUnit。我们还对一些具有代表性的SR模型进行了精度基准测试(即PSNR)、模型尺寸(即参数个数)、计算代价(即多相加个数)如图8所示。

图片36.jpg 

精度由四个基准数据集(Set5 Set14 B100 Urban100)的平均PSNR得到,模型大小和计算量由Pytorch-OpCounter计算得到,其中输出分辨率是720P。所有统计数据均来自原始论文或根据官方模型计算,比例系数为2。

 

 

无监督SR

现有的超分辨率算法主要集中在有监督学习上,即使用匹配的LR-HR图像对进行学习。然而,由于难以采集同一场景不同分辨率的图像,SR数据集中的LR图像通常是通过对HR图像进行预定义的退化过程来获得的。因此,经过训练的SR模型实际上学习了预定义退化的反向过程。为了在不引入手工退化先验的情况下学习真实世界的LR-HR映射,研究人员越来越关注无监督SR,在这种情况下,只提供未配对的LR-HR图像进行训练,这样得到的模型更容易处理真实场景中的SR问题。接下来我们将简要介绍几种现有的无监督深度学习SR模型,还有更多的方法有待探索。

1.Zero-shot SR

考虑到单个图像中的内部图像统计为SR提供了足够的信息,Shocher等人提出了zero-shot super-resolution(ZSSR),通过在测试时训练image-specific的SR网络来应对无监督SR,而不是在大型外部数据集上训练通用模型。具体来说,他们使用[158]从单个图像中估计退化核,并使用退化核通过对该图像执行具有不同缩放因子的退化和增强来构建一个小数据集。然后在这个数据集上训练一个小的神经网络来用于SR,并用于最终的预测。

通过这种方式,ZSSR利用了每幅图像内部的跨尺度内循环( cross-scale internal recurrence),从而在非理想条件下(即通过非双三次退化获的图像,并受到模糊、噪声、压缩伪影等影响)的图像上比以前的方法有很大的优势(1dB或2dB),更接近真实场景,同时在理想条件下(即通过双三次退化获得的图像)提供竞争性结果。然而,由于测试过程中需要针对不同的图像训练不同的网络,因此推理时间要比其他方法长得多。

2. Weakly-supervised Super-resolution

为了在不引入预定义退化的情况下处理超分辨率问题,研究人员尝试用弱监督学习方法学习SR模型,即使用未配对的LR-HR图像。其中,一些研究者首先学习了HR-LR的退化,并用它来构造训练SR模型的数据集,而另一些研究者则设计了cycle-in-cycle网络来同时学习LR-HR和HR-LR的映射。

Learned Degradation:由于预定义的退化是次优的,从未配对的LR-HR数据集中学习退化是一个可行的方向。Bulat等人[159]提出了一个两阶段的过程,首先使用未配对的LR-HR图像训练一个HR-to-LR GAN学习退化过程,然后使用基于第一个GAN的配对的LR-HR图像训练一个LR-to-HR GAN进行SR。具体地,对于HR-to-LR GAN,HR图像被喂入生成器以产生LR输出,其不仅需要匹配通过从HR下采样(通过平均池化)获得的LR图像,而且还需要匹配真实LR图像的分布。在完成训练后,利用生成器作为退化模型生成LR-HR图像对。然后,对于LR-to-HR GAN,生成器(即SR模型)将生成的LR图像作为输入并预测HR输出,这不仅需要匹配相应的HR图像,而且需要匹配HR图像的分布。

通过应用这两阶段的过程,所提出的无监督模型有效地提高了真实世界LR图像的超分辨率质量,比以往的研究有了很大的改进。

Cycle-in-cycle Super-resolution:无监督超分辨的另一种方法是将LR空间和HR空间看作两个域,利用cycle-in-cyle结构来学习它们之间的映射关系。在这种情况下,训练目标包括推送映射结果以匹配目标域分布,并通过round-trip映射使图像可恢复。

CycleGAN的启发,Yuan等人提出了一种由4个生成器和2个判别器组成的cycle-in-cycle SR网络(CinCGAN),分别构成了noisy LR - clean LR和clean LR - clean HR映射的两个CycleGAN。具体地说,在第一个CycleGAN中,noisy LR图像被喂入生成器,且输出被要求与真实的clean LR图像的分布一致。然后它被送入另一个生成器中,需要恢复原始输入。为了保证循环一致性、分布一致性和映射有效性,采用了多种损失函数(如 adversarial loss, cycle consistency loss, identity loss)。另一个CycleGAN的设计类似,只是映射域不同。

 由于避免了预先定义的退化,非监督CinCGAN不仅达到了与监督方法相当的性能,而且适用于各种情况,即使在非常恶劣的条件下。然而,由于SR问题的病态本质和CinCGAN的复杂结构,需要一些先进的策略来降低训练的难度和不稳定性。

3.Deep Image Prior

   考虑到CNN结构足以对逆问题捕获大量的低级图像统计先验,Ulyanov等人应用随机初始化CNN作为人工先验来执行SR。具体而言,他们定义了一个生成器网络,该网络以随机向量z为输入,并尝试生成目标HR图像Iy。目标是训练网络找到一个Iy_,其下采样的图像与LR图像Ix相同。由于网络是随机初始化的,从未训练过,唯一先验的是CNN结构本身。虽然这种方法的性能仍然比有监督的方法差(2db),但是它比传统的双三次上采样有很大的优势(1db)。此外,它还显示了CNN结构本身的合理性,并提示我们将深度学习方法与手工构建的先验知识(如CNN结构或自相似性)相结合来改进SR。

 

 

 

特定领域的应用

1.深度图超分辨率

深度图记录了场景中视点和物体之间的深度(即距离),在姿态估计和语义分割等任务中发挥着重要作用。然而,由于经济和生产的限制,深度传感器生成的深度图往往分辨率较低,并且会受到噪声、量化和缺失值等退化影响。为了提高深度图的空间分辨率,引入了超分辨率技术。

目前最流行的深度图SR方法之一是使用另一种经济的RGB相机获取同一场景的HR图像,以指导超分辨率的LR深度图。具体而言,Song等人利用深度图和RGB图像之间的深度场统计和局部相关性来约束全局统计和局部结构。Hui等人利用两个CNN同时向上采样LR深度图和向下采样HR RGB图像,然后使用RGB特征作为相同分辨率向上采样深度图的指导。Haefner等人进一步利用了颜色信息,并借助于阴影技术中的形状来引导SR。相比之下,Riegler等人将CNN与能量最小化模型以强大的变分模型的形式结合起来,在没有其他参考图像的情况下恢复HR深度图。

2.人脸图像超分辨率

人脸图像的超分辨率,又称为 face hallucination(FH),通常可以帮助其他与人脸相关的任务。与一般图像相比,人脸图像具有更多的与人脸相关的结构化信息,因此将人脸的先验知识(如 landmarks, parsing maps, identities等)融合到FH中是一种非常流行和有前途的方法。

最直接的方法之一是约束生成的图像具有与ground-truth相同的人脸相关属性。具体而言,CBN通过交替优化FH和密集对应场估计来利用面部先验。Super-FAN和MTUN都引入了FAN,通过端到端的多任务学习来保证人脸标志的一致性。FSRNet不仅使用facial landmark heatmaps,还使用 face parsing maps作为优先约束。SICNN以恢复真实身份为目标,采用 super-identity损失函数和域集成训练方法来稳定联合训练。

除了显式使用人脸先验知识外,隐式方法也得到了广泛的研究。TDN结合了用于自动空间变换的spatial transformer networks,从而解决了面部不对齐问题。基于TDN,TDAE[174]采用decoder-encoder-decoder框架,第一个解码器学习上采样和去噪,编码器将其投影回对齐且无噪声的LR面部,最后一个解码器生成hallucinated HR图像。相比之下,LCGE使用component-specific CNN对五个面部组件执行SR,对HR面部组件数据集使用k-NN搜索来找到相应的补丁,合成更细粒度的组件,最后将它们融合到FH结果中。类似地,Yang等人将解块的人脸图像分解为人脸组件和背景,使用组件标记在外部数据集中检索足够的HR样本,在背景上执行一般SR,最后将它们融合成完整的HR人脸。

此外,研究人员还从其他角度改进了FH。在人类注意力转移机制的激励下,注意力FH借助于一个循环策略网络,依次发现有人参与的人脸斑块并进行局部增强,从而充分利用了人脸图像的全局相关性。UR-DGN采用了一种类似于SRGAN的具有对抗性学习的网络。Xu等人提出了一种基于GAN的多类FH模型,该模型由泛型生成器和类特定鉴别器组成。Lee等人[178]和Yu等人都基于条件GAN,利用额外的面部属性信息来执行具有指定属性的FH。

3.超光谱图像超分辨率

与全色图像(panchromatic images,PANs,即具有3个波段的RGB图像)相比,包含数百个波段的高光谱图像(HSI)提供了丰富的光谱特征,有助于完成各种视觉任务。然而,由于硬件的限制,采集高质量的hsi要比PANs困难得多,分辨率也很低。这样超分辨率被引入到这一领域,研究者们倾向于结合HR-PANs和LR-hsi来预测HR-hsi。其中,Masi等人[184]采用了SRCNN[22],并结合了一些非线性辐射指标图来提高性能。Qu等人[185]联合训练两个编码器-解码器网络,分别对pan和HSI执行SR,并通过共享解码器和应用角度相似性损失和重构损失等约束从PANto-HSI传输SR知识。最近,Fuet al.[186]评估了相机光谱响应(CSR)函数对HSI-SR的影响,并提出了一种CSR优化层,它可以自动选择或设计最优CSR,并且优于现有技术。

4.真实世界图像超分辨率

通常,用于训练SR模型的LR图像是通过手动下采样RGB图像(例如,通过双三次下采样)来生成的。然而,现实世界中的相机实际捕获12位或14位原始图像,并通过相机ISP(图像信号处理器)执行一系列操作(例如,去噪、去噪和压缩),最后生成8位RGB图像。在这个过程中,RGB图像丢失了大量的原始信号,与相机拍摄的原始图像非常不同。因此,直接使用人工下采样的RGB图像进行SR是次优的。

为了解决这一问题,研究者们研究了如何利用现实世界的图像进行SR。Chen等人分析了图像分辨率和感受野的关系,提出数据采集策略来进行一个真实的数据集City100,并通过实验证明所提出的图像合成模型的优越性。Zhang等人通过摄像机的光学变焦建立了另一个真实世界的图像数据集SR-RAW(即成对的HR RAW图像和LR RGB图像),并提出了 contextual bilateral loss来解决错位问题。相比之下,Xu等人提出了一种通过模拟成像过程生成真实训练数据的管道,并开发了一种双CNN来利用原始图像中最初捕获的辐射信息。他们还建议学习一种空间变化的颜色变换,以便对其他传感器进行有效的颜色校正和推广。

5.视频超分辨率

对于视频超分辨率,多帧提供了更多的场景信息,不仅有帧内的空间依赖,还有帧间的时间依赖(如运动、亮度和颜色变化)。因此,现有的工作主要集中在更好地利用时空相关性,包括显式运动补偿(如基于光流的、基于学习的)和循环方法等。

在基于光流的方法中,Liao等人利用光流方法生成HR候选对象,并通过CNN进行集成。VSRnet[191]和CVSRnet[192]采用Druleas算法[193]进行运动补偿,并利用CNNs将连续帧作为输入,预测HR帧。而Liu等人对光流对准进行了优化,提出了一种时间自适应网络来生成不同时间尺度的HR帧并进行聚合适应的。另外也有人尝试直接学习运动补偿。VESPCN[156]利用可训练的空间变换器[173]来学习基于相邻帧的运动补偿,并将多个帧输入到时空ESPCN[84]中以进行端到端预测。tao等人[196]从精确的LR成像模型出发,提出了一种亚像素级的模块来同时实现情感补偿和超分辨率,从而更有效地融合对齐的帧。

另一个趋势是使用递归方法来捕获时空相关性,而无需显式的运动补偿。具体而言,BRCN采用双向框架,并分别使用CNN、RNN和条件CNN来建模空间、时间和时空依赖。类似地,STCN[199]使用深度CNN和双向LSTM来提取空间和时间信息。FRVSR使用先前推断的HR估计,以循环的方式重建两个深cnn的后续HR帧。最近,FSTRN[202]使用了两个更小的3D卷积滤波器来代替原来的大滤波器,从而通过更深的cnn来提高性能,同时保持较低的计算成本。而RBPN[87]则通过循环编码器-解码器提取空间和时间上下文,并将其与基于反投影机制的迭代细化框架相结合。

此外,FAST[203]利用压缩算法提取的结构和像素关联的紧凑描述,将SR结果从一帧传输到相邻帧,大大加快了最先进的SR算法的速度,几乎没有性能损失。Jo等[204]基于每个像素的局部时空邻域生成动态上采样滤波器和HR残差图像,同时避免显式运动补偿。

6.其他应用

基于深度学习的超分辨率算法也被应用于其他领域,表现出很好的性能。具体地说,Perceptual GAN通过超分辨小对象的表示来解决小对象检测问题,使其具有与大对象相似的特征,并且对检测更具辨别性。类似地,FSR-GAN在特征空间而不是像素空间中对小尺寸图像进行超分辨,从而将原始差分特征转换为高分辨特征,这大大有利于其图像检索。此外,Jeon等人利用立体图像中的视差先验来重建配准中具有亚像素精度的HR图像。Wang等人[208]提出了一种视差注意模型来解决立体图像的超分辨率问题。Li等人结合了3D几何信息和超分辨率3D对象纹理图。Zhang等人将一个光场中的图像分成若干组,学习每个组的固有映射,最后将每个组中的残差进行组合,重建出更高分辨率的光场。总之,超分辨率技术可以在各种应用中发挥重要的作用,特别是当我们可以很好地处理大对象,但不能处理小对象时。

 

 

 

总结和未来方向

本文对基于深度学习的图像超分辨率研究进展进行了综述。重点讨论了有监督和无监督SR的改进,并介绍了一些特定领域的应用。尽管取得了巨大的成功,但仍然有许多问题没有解决。因此,在本节中,我们将明确指出这些问题,并介绍未来发展的一些有希望的趋势。我们希望藉此调查,让研究人员对SR有更深入的了解,并促进未来的研究及应用发展。

1.网络设计

良好的网络设计不仅确定了一个具有良好性能上界的假设空间,而且有助于有效地学习没有过多空间和计算冗余的表示。下面我们将介绍一些有前景的网络改进方向。

Combining Local and Global Information:大的感受野提供了更多的背景信息,有助于产生更真实的结果。因此,将局部信息和全局信息结合起来,为图像SR提供不同尺度的context信息是很有前景的。

Combining Low- and High-level InformationCNN中的浅层倾向于提取低级特征,如颜色和边缘,而深层则学习更高级的表示,如对象标识。因此,将低层细节与高层语义相结合,有助于HR重构。

Context-specific Attention:在不同的背景下,人们往往会关注图像的不同方面。例如,对于草地区域,人们可能更关注局部的颜色和纹理,而在动物身体区域,人们可能更关注物种和相应的毛发细节。因此,引入注意机制来增强对关键特征的注意,有利于产生真实的细节。

More Efficient Architectures:现有的SR模式倾向于追求最终的性能,而忽略了模型的大小和推理速度。例如,对于使用Titan GTX GPU,对于DIV2K上的4×SR,EDSR每幅图像需要20秒,对于8×SR,DBPN每幅图像需要35秒。如此长的预测时间在实际应用中是不可接受的,因此更高效的体系结构势在必行。如何在保持性能的同时减小模型尺寸和加快预测速度仍然是一个问题。

Upsampling Methods:现有的上采样方法或多或少有一些缺点:插值方法计算量大,不能进行端到端学习,转置卷积产生棋盘效应,亚像素层带来感受野分布不均匀,而meta upscale模块可能会导致不稳定或无效,并有进一步的改进空间。如何进行有效和高效的上采样仍然需要研究,特别是在高缩放因子下。

近年来,用于深度学习的神经结构搜索(NAS)技术越来越流行,它在不需要人工干预的情况下大大提高了学习的性能和效率。对于SR来说,将上述方向的探索与NAS相结合具有很大的潜力。

2.学习策略

除了良好的假设空间,稳健的学习策略也需要达到令人满意的结果。接下来我们将介绍一些有前途的学习策略方向。

损失函数:现有的损失函数可以看作是在LR/HR/SR图像之间建立约束,并根据这些约束是否满足来指导优化。在实践中,这些损失函数往往是加权组合和最佳损失函数的SR仍然不清楚。因此,最有希望的方向之一是探索这些图像之间的潜在相关性,并寻求更准确的损失函数。

归一化:虽然BN被广泛应用于视觉任务中,大大加快了训练速度,提高了性能,但对于超分辨率来说,BN是次优的。因此,需要研究其它有效的SR归一化技术。

3.评估指标

评价指标是机器学习最基本的组成部分之一。如果不能准确测量性能,研究人员将很难验证改进。超分辨率的度量标准面临着这样的挑战,需要更多的探索。

更准确的指标:目前,PSNR和SSIM是SR中应用最为广泛的度量指标,然而,PSNR往往会导致过度平滑,并且在几乎不可分辨的图像之间,结果会有很大的差异。SSIM在亮度、对比度和结构方面进行评估,但仍然无法准确测量感知质量。此外,MOS是最接近人类视觉反应的,但需要付出很大的精力,而且是不可复制的。虽然研究者们提出了各种评价指标,但目前还没有一个统一的、公认的SR质量评价指标。因此,迫切需要更精确的重建质量评价指标。

Blind IQA Methods:今天大多数用于SR的度量都是参考方法,即,假设我们有一对质量完美的LR-HR图像。但由于这些数据集的获取比较困难,常用的评价数据集往往采用人工退化的方法。在这种情况下,我们执行评估的任务实际上是预定义退化的逆过程。因此,开发blind IQA方法也有很大的需求。

5.无监督SR

如第4节所述,同一场景下不同分辨率的图像往往难以收集,因此双三次插值被广泛应用于SR数据集的构建。然而,在这些数据集上训练的SR模型可能只能学习预定义退化的逆过程。因此,无监督超分辨率(即在没有配对LR-HR图像的数据集上训练)是未来发展的一个有希望的方向。

5.对真实世界的场景

图像的超分辨率在现实场景中受到极大的限制,例如遭受未知的退化,缺少配对的LR-HR图像。下面我们将介绍一些现实场景的方向。

Dealing with Various Degradation:真实世界的图像往往会出现模糊、附加噪声和压缩伪影等退化现象。因此,在手工操作的数据集上训练的模型在真实场景中往往表现不佳。已经有人提出了一些解决这个问题的方法,,但这些方法存在一些固有的缺陷,如训练难度大,假设过于完美等。这个问题迫切需要解决。

Domain-specific Applications:超分辨率不仅可以直接用于特定领域的数据和场景,还可以极大地帮助其他视觉任务。因此,将SR应用于更具体的领域,如视频监控、目标跟踪、医学成像和场景渲染,也是一个很有前景的方向。

 

 

 

 

 

 

 

 


上一篇:
下一篇:

首页 所有文章 机器人 计算机视觉 自然语言处理 机器学习 编程随笔 关于