Abstract
图像超分辨率技术是计算机视觉中提高图像和视频分辨率的一类重要的图像处理技术。近年来,深度学习技术在图像超分辨率方面取得了显著进展。本文旨在对基于深度学习的图像超分辨率研究进展进行综述。一般而言,我们可以将现有的SR技术研究大致分为三大类:监督SR、无监督SR和特定领域SR。此外,我们还讨论了一些其他重要问题,如公共可用的基准数据集和性能评估度量。最后,我们在总结这项调查时,强调了几个未来的方向和开放的问题,这些问题应该由社区在未来进一步解决。
1 INTRODUCTION
图像超分辨率(Image Super-resolution,SR)是计算机视觉和图像处理领域中一类重要的图像处理技术,是指从低分辨率(Low-resolution,LR)图像恢复高分辨率(High-resolution,HR)图像的过程。它具有广泛的现实应用,例如医学成像[1]、[2]、[3]、监控和安全[4]、[5])等。除了改善图像感知质量,它还有助于改善其他计算机视觉任务[6]、[7]、[8]、[9]。通常,这个问题是非常具有挑战性的并且固有地是不适定的,因为总是存在与单个LR图像相对应的多个HR图像。在文献中,已经提出了多种经典的SR方法,包括基于预测的方法[10],[11],[12],基于边缘的方法[13],[14],统计方法[15],[16],基于块的方法[13],[17],[18],[19]和稀疏表示方法[20],[21]等。
近年来,随着深度学习技术的快速发展,基于深度学习的SR模型得到了积极的探索,并且常常在SR的各种基准上实现最先进的性能。各种深度学习方法已经被应用于处理SR任务,范围从早期的基于卷积神经网络(CNN)的方法(例如,SRCNN [22],[23])到最近使用生成式对抗网络(GAN)[24]的有前途的SR方法(例如,[25])。一般而言,使用深度学习技术的SR算法家族在以下主要方面彼此不同:不同类型的网络结构[26]、[27]、[28],不同类型的损失函数[8]、[29]、[30],不同类型的学习原则和策略[8]、[31]、[32]等。
在本文中,我们全面给予了利用深度学习实现图像超分辨率的最新进展。尽管文献中已有一些SR调查,但我们的工作不同之处在于,我们专注于基于深度学习的SR技术,而大多数早期工作[33]、[34]、[35]、[36]旨在调查传统SR算法,或者一些研究主要集中于提供基于全参考度量或人类视觉感知的定量评估[37]、[38]。与现有调查不同,本调查采用基于深度学习的独特视角,以系统和全面的方式回顾SR技术的最新进展。
这项调查的主要贡献有三个方面:
1)本文对基于深度学习的图像超分辨率技术给予了全面的综述,包括问题设置、基准数据集、性能指标、一系列具有深度学习的SR方法、特定领域的SR应用等。
2)我们以分层和结构化的方式系统地概述了基于深度学习的SR技术的最新进展。和总结了有效SR解决方案的每个组件的优点和局限性。
3)我们讨论挑战和开放的问题,并确定新的趋势和未来的方向,为社会提供有见地的指导。
在接下来的章节中,我们将从多个方面介绍利用深度学习实现图像超分辨率的最新进展。图1以分层结构的方式显示了本次调查所涵盖的图像SR的分类。第2节给出了问题定义,并回顾了主流数据集和评估指标。第三节模块化地分析了有监督SR的主要组成部分。第四节简要介绍了无监督SR方法。第5节介绍了一些流行的特定于领域的SR应用,第6节讨论了未来的方向和未决问题。
![](https://i-blog.csdnimg.cn/blog_migrate/3e3634fd6234fdda88979977d0403bcb.png)
2 PROBLEM SETTING AND TERMINOLOGY
2.1 Problem Definitions
![](https://i-blog.csdnimg.cn/blog_migrate/47749ff45b8f4640b8851a97f6b90681.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f13b49e75f77a1e7bccbcf55c91c6bda.png)
2.2 Datasets for Super-resolution
目前可用于图像超分辨率的数据集有很多种,它们在图像数量、质量、分辨率、多样性等方面差异很大,有的提供LR-HR图像对,有的只提供HR图像,这种情况下LR图像通常是通过MATLAB中默认设置的imresize函数获得的(即具有抗混叠的双三次插值)。在表1中,我们列出了SR社区常用的许多图像数据集,并特别指出了它们的HR图像数量、平均分辨率、平均像素数、图像格式和类别关键字。
除了这些数据集,一些广泛用于其他视觉任务的数据集也被用于SR,例如ImageNet [51]、MS-COCO [52]、VOC 2012 [53]、CelebA [54]。此外,结合多个数据集进行训练也很流行,如结合T91和BSDS 300 [26]、[27]、[55]、[56],结合DIV 2K和Flickr 2K [31]、[57]。
![](https://i-blog.csdnimg.cn/blog_migrate/a6a68a9b627e34481b35df8649d5d847.png)
2.3 Image Quality Assessment
图像质量是指图像的视觉属性,侧重于观看者的感知评价。通常,图像质量评估(IQA)方法包括基于人类感知的主观方法(即,图像看起来有多逼真)和客观的计算方法。前者更符合我们的需要,但往往费时费钱,因此后者是目前的主流。然而,这些方法之间并不一定一致,因为客观方法往往无法非常准确地捕捉人类的视觉感知,这可能导致IQA结果存在较大差异[25],[58]。
此外,客观IQA方法进一步分为三类[58]:使用参考图像执行评估的全参考方法、基于所提取特征的比较的简化参考方法,以及无参考方法(即,盲IQA),没有任何参考图像。接下来我们将介绍几种最常用的IQA方法,包括主观方法和客观方法。
2.3.1 Peak Signal-to-Noise Ratio
峰值信噪比(PSNR)是有损变换(如图像压缩、图像修复)中最常用的重建质量度量之一。 对于图像的超分辨率,PSNR通过图像间的最大像素值(表示为L)和均方误差(MSE)来定义。 给定N像素的地面真值图像I和重建I,I与I之间的PSNR定义如下:
![](https://i-blog.csdnimg.cn/blog_migrate/8f9b8091d45a6d6b7d6ee3ba3303589e.png)
其中在使用8位表示的一般情况下L等于255。由于PSNR只与像素级的MSE有关,只关心对应像素之间的差异,而不关心视觉感知,因此在真实的场景中往往无法很好地表征重建质量,而真实场景中我们通常更关心人的感知。但由于需要与文献进行比较,且缺乏完全准确的感知指标,PSNR仍然是目前使用最广泛的SR模型评价标准。
2.3.2 Structural Similarity
![](https://i-blog.csdnimg.cn/blog_migrate/aa50cd88363904b8b819b545560d406d.png)
![](https://i-blog.csdnimg.cn/blog_migrate/08521360f1684a083744310fea7cd190.png)
2.3.3 Mean Opinion Score
平均意见得分(MOS)测试是一种常用的主观IQA方法,其中要求人工评分员为测试图像分配感知质量得分。通常,评分为1(差)至5(好)。最终MOS计算为所有额定值的算术平均值。
MOS测验是一种可靠的IQA方法,但也存在一些固有的缺陷,如量表感知的非线性、评定标准的偏差和变异性。实际上,有些SR模型在常用IQA指标方面表现不佳(例如:PSNR),但在感知质量方面远远超过其他方法,在这种情况下,MOS测试是准确测量感知质量的最可靠IQA方法[8]、[25]、[46]、[62]、[63]、[64]、[65]。
2.3.4 Learning-basedPerceptual Quality
为了在减少人工干预的同时更好地评估图像感知质量,研究者尝试通过在大数据集上学习来评估感知质量。具体而言,Ma等人[66]和Talebi等人[67]分别提出了无参考Ma和NIMA,它们从视觉感知评分中学习,并直接预测质量评分,而无需地面实况图像。相比之下,Kim等人[68]提出了DeepQA,其通过对失真图像、客观误差图和主观评分的三元组进行训练来预测图像的视觉相似性。Zhang等人[69]收集了大规模感知相似性数据集,通过训练的深度网络根据深度特征的差异评估感知图像块相似性(LPIPS),并表明通过CNNs学习的深度特征对感知相似性的建模要比没有CNNs的度量好得多。
尽管这些方法在捕获人类视觉感知方面表现出更好的性能,但是我们需要什么样的感知质量(例如,更逼真的图像或与原始图像一致的同一性)仍然是有待探索的问题,因此客观IQA方法(例如,PSNR,SSIM)仍然是目前的主流。
2.3.5 Task-based Evaluation
根据SR模型通常可以帮助其他视觉任务[6]、[7]、[8]、[9]的事实,通过其他任务评估重建性能是另一种有效的方式。具体而言,研究人员将原始和重建的HR图像输入训练模型,并通过比较对预测性能的影响来评估重建质量。用于评估的视觉任务包括物体识别[8]、[70]、人脸识别[71]、[72]、人脸对齐和解析[30]、[73]等。
2.3.6 Other IQA Methods
除了上述IQA方法,还有其他不太流行的SR指标。多尺度结构相似性(MS-SSIM)[74]在纳入观察条件变化方面比单尺度SSIM提供了更大的灵活性。特征相似度(FSIM)[75]根据相位一致性和图像梯度幅度提取人类感兴趣的特征点,以评估图像质量。自然图像质量评价器(NIQE)[76]利用自然图像中观察到的统计规律的可测量偏差,而不暴露于失真图像。
最近,Blau等人【77】从数学上证明了失真(例如:PSNR,SSIM)和感知质量(例如,MOS)是不一致的,并表明随着失真的减少,感知质量一定更差。因此,如何准确地测量SR质量仍然是一个亟待解决的问题。
2.4 Operating Channels
除了通常使用的RGB颜色空间之外,YCbCr颜色空间也广泛用于SR。在该空间中,图像由Y、Cb、Cr通道表示,分别表示亮度、蓝差和红差色度分量。虽然目前没有公认的最佳实践来执行或评估在哪个空间上的超分辨率,但早期模型倾向于在YCbCr空间的Y通道上操作[26]、[43]、[78]、[79],而较新的模型倾向于在RGB通道上操作[28]、[31]、[57]、[70]。值得注意的是,在不同的颜色空间或通道上操作(训练或评估)会使评估结果差异很大(高达4 dB)[23]。
2.5 Super-resolution Challenges
在本节中,我们将简要介绍图像SR的两个最流行的挑战,NTIRE [80]和PIRM [47],[81]。
NTIRE Challenge.
图像恢复和增强新趋势(NTIRE)挑战[80]与CVPR结合,包括SR、去噪和彩色化等多项任务。对于图像SR,NTIRE挑战建立在DIV2K [42]数据集上,由双三次缩减轨迹和具有真实未知退化的盲轨迹组成。这些轨迹在衰减和标度因子方面有所不同,旨在促进理想条件和实际不利情况下的SR研究。
PIRM Challenge.
感知图像恢复和处理(PIRM)挑战与ECCV结合,也包括多个任务。与NTIRE相比,PIRM的一个子挑战[47]集中于生成准确度和感知质量之间的权衡,另一个[81]集中于智能手机上的SR。众所周知[77],以失真为目标的模型经常产生视觉上令人不愉快的结果,而以感知质量为目标的模型在信息保真度方面表现较差。PIRM根据均方根误差(RMSE)阈值将感知失真平面划分为三个区域。在每个区域中,获胜算法是由NIQE [76]和Ma [66]评估的实现最佳感知质量[77]的算法。而在另一个子挑战[81]智能手机上的SR中,要求参与者使用有限的智能手机硬件(包括CPU、GPU、RAM等)进行SR,评价指标包括PSNR、MS-SSIM和MOS测试。通过这种方式,PIRM鼓励对感知失真权衡的高级研究,并推动智能手机上轻量级和高效的图像增强。
3 SUPERVISED SUPER-RESOLUTION
目前,研究人员已经提出了多种具有深度学习功能的超分辨率模型。这些模型集中于监督SR,即,用LR图像和对应的HR图像两者训练。尽管这些模型之间的差异很大,但它们本质上是一组组件的一些组合,如模型框架、上采样方法、网络设计和学习策略。从这个角度出发,研究者将这些组成部分结合起来,建立一个适合特定目的的整合SR模型。在本节中,我们将集中于模块化地分析基本组件(如图1所示),而不是孤立地介绍每个模型,并总结它们的优点和局限性。
3.1 Super-resolution Frameworks
由于图像超分辨率是不适定问题,因此如何执行上采样(即,从LR输入产生HR输出)是关键问题。尽管现有模型的架构差异很大,但基于所采用的上采样操作及其在模型中的位置,它们可以归结为四种模型框架(如图2所示)。
![](https://i-blog.csdnimg.cn/blog_migrate/099cca31c8b0dc5c5500e3b4cc750436.png)
3.1.1 Pre-upsampling Super-resolution
由于直接学习从低维空间到高维空间的映射很困难,利用传统的上采样算法获得高分辨率图像,然后使用深度神经网络对图像进行细化是一种直接的解决方案。因此,Dong等人[22]、[23]首先采用预上采样SR框架(如图2a所示),并提出SRCNN来学习从插值LR图像到HR图像的端到端映射。具体地,使用传统方法将LR图像上采样为具有期望尺寸的粗略HR图像(例如,双三次插值),然后在这些图像上应用深CNN以重构高质量细节。
由于最困难的上采样操作已经完成,神经网络只需要对粗糙图像进行细化,大大降低了学习难度。此外,这些模型可以将具有任意大小和比例因子的插值图像作为输入,并给出与单尺度SR模型性能相当的精细结果[26]。因此,它逐渐成为最流行的框架之一[55]、[56]、[82]、[83],这些模型之间的主要差异是后验模型设计(第3.3)和学习策略(第第3.4节)。然而,预定义的上采样经常引入副作用(例如,噪声放大和模糊),并且由于大多数操作在高维空间中执行,因此时间和空间成本远高于其他框架[43]、[84]。
3.1.2 Post-upsampling Super-resolution
为了提高计算效率,充分利用深度学习技术自动提高分辨率,研究者提出在模型末端集成端到端的可学习层,取代预先定义的上采样,在低维空间进行大部分计算。在该框架的先驱工作[43]、[84]中,即图2b所示的后上采样SR,LR输入图像被馈入深度神经网络而不增加分辨率,并且端到端可学习上采样层被应用于网络末端。
为了提高计算效率,充分利用深度学习技术自动提高分辨率,研究者提出在模型末端集成端到端的可学习层,取代预先定义的上采样,在低维空间进行大部分计算。在该框架的先驱工作[43]、[84]中,即图2b所示的后上采样SR,LR输入图像被馈入深度神经网络而不增加分辨率,并且端到端可学习上采样层被应用于网络末端。
由于计算量巨大的特征提取过程只发生在低维空间,分辨率只在最后增加,因此大大降低了计算量和空间复杂度。因此,该框架也成为最主流的框架之一[25]、[31]、[79]、[85]。这些模型的主要区别在于可学习的上采样层(3.2)、前部CNN结构(第3.3)和学习策略(第3.4节)等。
3.1.3 Progressive Upsampling Super-resolution
虽然后上采样SR框架极大地降低了计算量,但仍存在一些不足。一方面,仅在一个步骤中执行上采样,这极大地增加了大比例因子的学习难度(例如,4、8)。另一方面,每个比例因子需要训练一个单独的SR模型,这无法科普多尺度SR的需要。为了解决这些缺点,拉普拉斯金字塔SR网络(LapSRN)[27]采用了渐进上采样框架,如图2c所示。具体而言,该框架下的模型基于级联的神经网络,并逐步重建更高分辨率的图像。在每个阶段,图像被上采样到更高的分辨率,并由CNN细化。MS-LapSRN [65]和渐进SR(ProSR)[32]等其他工作也采用了该框架,并取得了较高的性能。与LapSRN和MS-LapSRN使用中间重建图像作为后续模块的“基础图像”相比,ProSR保留了主信息流,并通过单独的头部重建中间分辨率图像。
该框架下的模型通过将困难任务分解为简单任务,大大降低了学习难度,尤其是在大因子的情况下,并且能够在不引入过多空间和时间开销的情况下科普多尺度SR问题.此外,一些具体的学习策略,如课程学习(第3.4.3节)和多重监督(3.4.4)可直接集成,进一步降低学习难度,提高最终成绩。但这些模型也存在多阶段模型设计复杂、训练稳定性差等问题,需要更多的建模指导和更先进的训练策略。
3.1.4 Iterative Up-and-down Sampling Super-resolution
为了更好地捕获LR-HR图像对的相互依赖性,SR [44]中包含一种名为反投影[12]的高效迭代程序。这种SR框架,即迭代上下采样SR(如图2d所示),试图迭代地应用反投影细化,即,计算所述重建误差,然后将其融合回去以调谐所述HR图像强度。具体而言,Haris等人[57]利用迭代上下采样层并提出DBPN,其交替连接上采样和下采样层,并使用所有中间重建来重建最终HR结果。类似地,SRFBN [86]采用具有更密集跳跃连接的迭代上下采样反馈块,并学习更好的表示。用于视频超分辨率的RBPN [87]从连续视频帧中提取上下文,并通过反向投影模块将这些上下文组合以产生循环输出帧。
该框架下的模型能够更好地挖掘LR-HR图像对之间的深层关系,从而提供更高质量的重建结果。然而,back-projection模块的设计标准仍不明确。由于该机制刚刚被引入到基于深度学习的随机学习中,因此该框架具有很大的潜力,需要进一步的探索。
3.2 Upsampling Methods
除了模型中的上采样位置外,如何进行上采样也是非常重要的。虽然已经有了各种传统的上采样方法[20]、[21]、[88]、[89],但是利用CNN学习端到端上采样已经逐渐成为一种趋势。在本节中,我们将介绍一些传统的基于插值的算法和基于深度学习的上采样层。
3.2.1 Interpolation-based Upsampling
图像插值,又名图像缩放是指调整数字图像的大小,并且被图像相关应用广泛使用。传统的插值方法包括最近邻插值、双线性和双三次插值、Sinc和Lanczos重采样等,由于这些方法易于解释和实现,其中一些方法在基于神经网络的SR模型中仍被广泛应用。
Nearest-neighbor Interpolation.
最近邻插值是一种简单直观的插值算法。它为每个要插值的位置选择最近像素的值,而不考虑任何其他像素。因此,该方法非常快,但通常产生低质量的块状结果。
Bilinear Interpolation.
双线性插值(BLI)首先在图像的一个轴上执行线性插值,然后在另一个轴上执行线性插值,如图3所示。由于该方法是一种感受野大小为2×2的二次插值方法,因此在保持较快速度的同时,其性能优于最近邻插值方法。
Bicubic Interpolation.
类似地,双三次插值(BCI)[10]在两个轴上执行三次插值,如图3所示。与BLI相比,BCI考虑了4 × 4像素,结果更平滑,伪影更少,但速度更低。事实上,具有抗混叠功能的BCI是构建SR数据集的主流方法(即:将HR图像降级为LR图像),并且还广泛用于预上采样SR框架(第第3.1.1节)。
事实上,基于插值的上采样方法仅仅基于其自身的图像信号来提高图像分辨率,而没有带来任何更多的信息。
相反,它们常常引入一些副作用,如计算复杂度、噪声放大、模糊结果。因此,当前的趋势是用可学习的上采样层来代替基于插值的方法。
3.2.2 Learning-based Upsampling
为了克服插值方法的不足,以端到端的方式学习上采样,在SR域中引入了转置卷积层和亚像素层。
Transposed Convolution Layer.
转置卷积层,又名去卷积层[90]、[91]试图执行与正常卷积相反的变换,即,基于大小类似于卷积输出的特征图来预测可能的输入。具体地,它通过插入零来扩展图像并执行卷积来增加图像分辨率。以3 × 3核的2 × SR为例(如图4所示),输入首先被扩展为原始大小的两倍,其中添加的像素值被设置为0(图4b)。然后应用核大小为3 × 3、步长为1、填充为1的卷积(图4c)。通过这种方式,输入被上采样2倍,在这种情况下,感受野最多为2 × 2。由于转置卷积以端到端的方式扩大了图像尺寸,同时保持了与普通卷积兼容的连通性模式,因此其被广泛用作SR模型中的上采样层[57]、[78]、[79]、[85]。然而,该层很容易在每个轴上造成"不均匀重叠"[92],并且两个轴上的相乘结果进一步产生变化幅度的棋盘状图案,从而损害SR性能。
![](https://i-blog.csdnimg.cn/blog_migrate/019f2fa1a0f7b785f7fe9e432098d93e.png)
Sub-pixel Layer.
子像素层[84]是另一个端到端可学习的上采样层,其通过卷积生成多个通道然后对其进行整形来执行上采样,如图5所示。在该层内,首先应用卷积以产生具有s x s倍信道的输出,其中s是缩放因子(图5b)。假设输入大小为h × w × c,则输出大小为h × w × s x s x c。之后,整形操作(又称shuffle [84])以产生大小为sh × sw × c的输出(图5c)。在这种情况下,感受野可以达到3 × 3。由于端到端上采样方式,该层也被SR模型[25]、[28]、[39]、[93]广泛使用。与转置卷积层相比,子像素层具有更大的感受野,提供了更多的上下文信息,有助于生成更真实的细节。然而,由于感受野的分布是不均匀的,并且块状区域实际上共享相同的感受野,这可能导致在不同块的边界附近的一些伪影。另一方面,独立地预测块区域中的相邻像素可能导致不平滑的输出。因此,Gao等人[94]提出PixelTCL,其将独立预测替换为相互依赖的顺序预测,并产生更平滑和更一致的结果。
Meta Upscale Module.
先前的方法需要预定义缩放因子,即,针对不同的因子训练不同的上采样模块,这效率低下并且不符合实际需要。因此Hu等[95]提出了meta upscale模块(如图6所示),该模块首先基于元学习求解任意比例因子的SR。具体而言,对于HR图像上的每个目标位置,该模块将其投影到LR特征图上的小块(即,k × k × cin),预测卷积权重(即,k × k × cin × cout),并执行卷积。以这种方式,元放大模块可以通过单个模型以任意因子连续地放大它。并且由于大量的训练数据(同时训练多个因子),该模块可以在固定因子上表现出相当甚至更好的性能。虽然该模块需要在推理过程中预测权值,但上采样模块的执行时间只占特征提取时间的1%左右[95]。然而,该方法基于独立于图像内容的若干值来预测每个目标像素的大量卷积权重,因此当面对较大的放大倍率时,预测结果可能不稳定并且效率较低。
目前,这些基于学习的层次已经成为应用最广泛的上采样方法。特别是在后上采样框架中(第3.1.2),这些层通常在最终的上采样阶段中用于基于在低维空间中提取的高级表示来重建HR图像,并且因此实现端到端SR,同时避免在高维空间中的压倒性操作。
3.3 Network Design
网络设计已经成为深度学习的重要组成部分。在超分辨率领域,研究人员在四种SR框架之上应用各种网络设计策略(第3.1)来构建最终的网络。在本节中,我们将这些网络分解为网络设计的基本原则或策略,逐一介绍并分析其优点和局限性。
![](https://i-blog.csdnimg.cn/blog_migrate/37f19c9435ec7b51af1fb18e9c1bc03c.png)
3.3.1 Residual Learning
在He等人[96]提出用ResNet来学习残差而不是彻底映射之前,残差学习已经被SR模型[48]、[88]、[97]广泛采用,如图7a所示。其中,残差学习策略大致可分为全局残差学习和局部残差学习。
Global Residual Learning.
由于图像SR是图像到图像的平移任务,其中输入图像与目标图像高度相关,因此研究者尝试仅学习它们之间的残差,即全局残差学习。在这种情况下,它避免了学习从一个完整图像到另一个完整图像的复杂变换,而是仅需要学习残差图来恢复丢失的高频细节。由于大部分区域的残差接近于零,因此大大降低了模型的复杂度和学习难度。因此,它被SR模型广泛使用[26]、[55]、[56]、[98]。
Local Residual Learning.
局部残差学习类似于ResNet [96]中的残差学习,用于缓解网络深度不断增加导致的退化问题[96],降低训练难度,提高学习能力。它也广泛用于SR [70]、[78]、[85]、[99]。
在实际应用中,上述方法都是通过shortcut connections(通常按一个小常数缩放)和逐元素相加来实现的,不同之处在于前者直接连接输入和输出图像,而后者通常在网络内部不同深度的层之间添加多个捷径。
3.3.2 Recursive Learning
为了在不引入压倒性参数的情况下学习更高级的特征,递归学习(其意味着以递归方式多次应用相同的模块)被引入SR领域,如图7b所示。
其中,16-递归DRCN [82]采用单卷积层作为递归单元,接收野达41 × 41,远大于SRCNN [22]的13×13,且参数不多。DRRN [56]使用ResBlock [96]作为25次递归的递归单元,并获得比17-ResBlock基线更好的性能。后来Tai等人[55]提出了基于记忆块的MemNet,它由一个6递归的ResBlock组成,每个递归的输出被连接起来,并经过一个额外的1 × 1卷积,用于记忆和遗忘。级联残差网络(卡恩)[28]也采用了类似的递归单元,包括几个ResBlock。最近,Li等人[86]采用迭代上下采样SR框架,并提出了一种基于递归学习的反馈网络,其中整个网络的权重在所有递归中共享。
此外,研究者还在不同的部分使用了不同的递归模块。具体而言,Han等人[85]提出了双态递归网络(DSRN),用于在LR和HR状态之间交换信号。在每个时间步长(即,递归),更新并交换每个分支的表示,以便更好地探索LR-HR关系。类似地,Lai等人[65]采用嵌入和上采样模块作为递归单元,从而以很少的性能损失为代价大大减小了模型大小。
一般来说,递归学习确实可以学习更高级的表示而不引入过多的参数,但是仍然不能避免高的计算成本。并且其固有地带来消失或爆炸梯度问题,因此一些技术例如残差学习(第3.3.1节)和多重监督(3.4.4)通常与递归学习相结合,以缓解这些问题[55],[56],[82],[85]。
3.3.3 Multi-path Learning
多路径学习是指通过多个路径传递特征,这些路径执行不同的操作,并将它们融合回来以提供更好的建模能力。具体而言,它可以分为全局多路径学习、局部多路径学习和尺度特定多路径学习。
Global Multi-path Learning.
全局多路径学习是指利用多个路径来提取图像不同方面的特征。这些路径在传播过程中可以相互交叉,从而大大增强了学习能力。具体而言,LapSRN [27]包括以从粗到细的方式预测子带残差的特征提取路径和基于来自两个路径的信号重建HR图像的另一路径。类似地,DSRN [85]利用两条路径分别提取低维和高维空间中的信息,并不断交换信息以进一步提高学习能力。像素递归超分辨率[64]采用条件路径捕捉图像的全局结构,采用先验路径捕捉生成像素的序列依赖性。相比之下,Ren等人[100]采用具有不平衡结构的多路径来执行上采样并在模型结束时融合它们。
Local Multi-path Learning.
在初始模块[101]的激励下,MSRN [99]采用了一个新的块来进行多尺度特征提取,如图7e所示。在该块中,采用核大小为3 × 3和5 × 5的两个卷积层同时提取特征,然后将输出级联并再次进行相同的操作,最后进行额外的1×1卷积。shortcut connects通过元素级加法连接输入和输出。通过这种局部多路径学习,SR模型可以更好地从多个尺度提取图像特征,并且进一步提高性能。
Scale-specific Multi-path Learning.
考虑到不同尺度的SR模型需要经过相似的特征提取,Lim等[31]提出了尺度相关的多路径学习,以科普单个网络的多尺度SR。具体地说,它们共享模型的主要组件(即,用于特征提取的中间层),并且分别在网络的开始和结束处附加尺度特定的预处理路径和上采样路径(如图7f所示)。在训练过程中,仅启用和更新与选定比例对应的路径。通过这种方式,拟定的MDSR [31]通过共享不同尺度的大部分参数,极大地减少了模型大小,并表现出与单尺度模型相当的性能。卡恩[28]和ProSR [32]也采用了类似的特定尺度多路径学习。
3.3.4 Dense Connections
自从Huang等人[102]提出基于稠密块的稠密网络后,稠密连接在视觉任务中变得越来越普遍。对于稠密块中的每一层,前面所有层的特征地图都被用作输入,并且它自己的特征地图被用作后面所有层的输入,因此它导致l层稠密块中的l·(l − 1)/2个连接(l ≥ 2)。密集连接不仅有助于减轻梯度消失、增强信号传播和鼓励特征重用,而且通过采用小的生长速率(即,密集块中的通道数),并在连接所有输入特征图之后压缩通道。
为了融合低层和高层特征以提供更丰富的信息来重建高质量的细节,如图7d所示,在SR场中引入了密集连接。Tong等[79]不仅采用密集块构造了一个69层的SRDenseNet,而且在不同的密集块之间插入了密集连接,即:对于每个密集块,所有先前块的特征图被用作输入,并且其自身的特征图被用作所有后续块的输入。MemNet [55]、CARN [28]、RDN [93]和ESRGAN [103]也采用了这些层级和块级的密集连接。DBPN [57]也广泛采用密集连接,但其密集连接是在所有上采样单元之间,下采样单元也是如此。
3.3.5 Attention Mechanism
Channel Attention.
考虑到不同通道之间特征表示的相互依赖性和相互作用,Hu等人[104]提出了一种“squeeze-and-excitation”模块,通过显式建模通道相互依赖性来提高学习能力,如图7c所示。在该块中,每个输入声道被压缩成声道描述符(即,常数),则这些描述符被馈送到两个密集层中,以产生用于输入声道的声道式缩放因子。最近,Zhang等[70]将信道注意机制与SR结合起来,提出了RCAN,显著提高了模型的表示能力和SR性能。为了更好地学习特征相关性,Dai等人[105]进一步提出了二阶信道关注度(SOCA)模块。SOCA通过使用二阶特征统计量而不是GAP来自适应地重新缩放通道式特征,并且使得能够提取更多信息和区别性表示。
Non-local Attention.
大多数现有的SR模型具有非常有限的局部感受野。但是,一些远距离对象或纹理对于局部面片生成可能非常重要。因此,Zhang等人[106]提出了局部和非局部注意块来提取捕捉像素之间的长期依赖性的特征。具体地,他们提出了用于提取特征的主干分支,以及用于自适应地重缩放主干分支的特征的(非)局部掩码分支。其中,局部分支采用编码器-解码器结构学习局部注意力,非局部分支采用嵌入式高斯函数评估特征映射中位置索引的成对关系,从而预测缩放权值。通过这种机制,该方法能够很好地捕捉空间注意力,进一步提高了表征能力。类似地,Dai等人[105]也引入了非局部注意机制来捕获远距离空间上下文信息。
3.3.6 Advanced Convolution
由于卷积运算是深度神经网络的基础,因此研究人员也尝试改进卷积运算以获得更好的性能或更高的效率
Dilated Convolution.
众所周知,背景信息有助于为SR生成逼真的细节。因此,Zhang等人[107]在SR模型中用扩张卷积代替普通卷积,将感受野增加两倍以上,并实现更好的性能。
Group Convolution.
受到轻量级CNNs [108]、[109]的最新进展的推动,Hui等人[98]和Ahn等人[28]分别提出了IDN和CARN-M,方法是用群卷积代替普通卷积。正如一些先前的工作已经证明的,群卷积以少量性能损失为代价大大减少了参数和运算的数量[28],[98]。
Depthwise Separable Convolution
由于霍华德等人[110]提出了用于有效卷积的深度可分离卷积,因此其已经扩展到各个领域。具体地说,它由因子分解深度卷积和点向卷积(即,1 × 1卷积),因此减少了大量参数和运算,精度仅略有降低[110]。最近,Nie等人[81]采用了深度可分离卷积,大大加速了SR架构。
3.3.7 Region-recursive Learning
大多数SR模型将SR视为与像素无关的任务,因此不能适当地找出生成的像素之间的相互依赖性。受PixelCNN [111]的启发,Dahl等人[64]首先提出像素递归学习,通过使用两个网络分别捕获全局上下文信息和串行生成依赖性来执行逐像素生成。以这种方式,所提出的方法在超分辨率的非常低分辨率的面部图像(例如,8×8),并且远远超过了之前的MOS测试方法[64](第2.3.3节)。
在人类注意力转移机制[112]的激励下,Attention-FH [113]也采用了这种策略,即借助于递归策略网络来顺序地发现关注的补丁并执行局部增强。该算法能够根据图像自身的特点自适应地为每幅图像选择最优的搜索路径,充分利用了图像的全局相关性.
虽然这些方法在一定程度上表现出了更好的性能,但递归过程需要长的传播路径,这大大增加了计算成本和训练难度,特别是对于超分辨率HR图像。
3.3.8 PyramidPooling
受空间金字塔池化层[114]的启发,Zhao等人[115]提出了金字塔池化模块,以更好地利用全局和局部上下文信息。具体而言,对于大小为h×w×c的特征图,每个特征图被划分为M×M个箱,并经过全局平均合并,从而得到M×M×c个输出。然后执行1×1卷积以将输出压缩到单个通道。然后,通过双线性插值将低维特征图上采样到与原始特征图相同的大小。通过使用不同的M,该模块有效地集成了全局和局部上下文信息。通过合并该模块,提出的EDSR-PP模型[116]进一步改善了基线的性能。
3.3.9 Wavelet Transformation
众所周知,小波变换(WT)[117]、[118]是通过将图像信号分解成表示纹理细节的高频子带和包含全局拓扑信息的低频子带而高效表示图像的方法。Bae等[119]首次将小波变换与基于深度学习的SR模型相结合,以插值后的LR小波的子带作为输入,预测相应HR子带的残差。小波变换和逆小波变换分别用于分解LR输入和重构HR输出。类似地,DWSR [120]和Wavelet-SRNet [121]也在小波域中执行SR,但是具有更复杂的结构。与上述独立处理每个子带的工作相比,MWCNN [122]采用多级WT,并将级联的子带作为单个CNN的输入,以更好地捕捉它们之间的依赖性。由于小波变换的有效表示,使用该策略的模型通常大大减少模型大小和计算成本,同时保持有竞争力的性能[119]、[122]。
3.3.10 Desubpixel
为了加快推理速度,Vu等人[123]提出在低维空间中执行耗时的特征提取,并提出去子像素,这是子像素层洗牌操作的逆操作(Sec.第3.2.2节)。具体而言,去子像素操作在空间上分割图像,将它们堆叠为额外通道,从而避免信息丢失。通过这种方式,它们在模型开始时通过去子像素对输入图像进行下采样,学习较低维空间中的表示,并在结束时上采样到目标大小。提出的模型在智能手机上的PIRM挑战赛[81]中取得了最好的成绩,具有非常高速的推理和良好的性能。
3.3.11 xUnit
为了将空间特征处理和非线性激活结合起来,更有效地学习复杂特征,Kligvasser等人[124]提出用于学习空间激活函数的xUnit。 具体来说,RELU被视为确定一个权重图,以与输入执行元素相乘,而XUnit通过卷积和高斯选通直接学习权重图。 尽管XUnit的计算要求更高,但由于它对性能的显著影响,它允许在与RELU匹配性能的同时大幅减小模型大小。 这样,作者将模型尺寸缩小了近50%,而没有任何性能下降。
3.4 Learning Strategies
3.4.1 Loss Functions
在超分辨率领域,利用损失函数度量重构误差,指导模型优化。 早期研究人员通常采用像素L2损失,但后来发现它不能很准确地衡量重建质量。 因此,为了更好地测量重建误差并产生更真实和更高质量的结果,采用了各种损失函数(例如,内容损失[29]、对抗性损失[25])。 目前,这些损失函数已经发挥了重要作用。 在本节中,我们将仔细研究广泛使用的损失函数。 本节中的符号遵循Sec 2.1,只是为了简洁起见,我们忽略了目标HR图像和生成的HR图像
的下标Y。
![](https://i-blog.csdnimg.cn/blog_migrate/a16cc9d00669945d82e1b0dd6499c550.png)
像素损失约束生成的hr图像在像素值上足够接近地面真值I。 与L1 loss相比,L2 loss对较大的错误有惩罚作用,但对较小的错误有更大的容忍度,因此往往导致结果过于平滑。 在实践中,L1 loss比L2 loss显示出更好的性能和收敛性[28],[31],[126]。 由于PSNR的定义(第2.3.1节)与像素差异高度相关,使像素损失最小直接使PSNR最大,因此像素损失逐渐成为应用最广泛的损失函数。 然而,由于像素损失实际上没有考虑图像质量(例如,感知质量[29],纹理[8]),结果通常缺乏高频细节,并且对于过高纹理[25],[29],[58],[74]在感知上不令人满意。
![](https://i-blog.csdnimg.cn/blog_migrate/2956f58dbe72538557ad03ac9e54f42c.png)
实质上,内容loss将学习到的分层图像特征知识从分类网络φ转移到SR网络。 与像素损失相反,内容损失鼓励输出图像i在感知上与目标图像i相似,而不是强迫它们精确匹配像素。 因此,它产生视觉上更易感知的结果,并且在这个领域也被广泛应用[8]、[25]、[29]、[30]、[46]、[103],其中VGG[128]和RESNet[96]是最常用的预训练CNNs。
![](https://i-blog.csdnimg.cn/blog_migrate/0f91b591557b4ce89fe87ab0583e12fe.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5b29e5e6632f9bc7671a5d46f364e2c6.png)
Sajjadi等人提出的增强网[8]利用纹理损失。 创建更真实的纹理,并产生视觉上更令人满意的结果。 尽管如此,确定贴片大小以匹配纹理仍然是经验性的。 太小的贴片会导致纹理区域的伪影,而太大的贴片会导致整个图像的伪影,因为纹理统计是对不同纹理区域的平均。
Adversarial Loss.
近年来,由于其强大的学习能力,GANS[24]受到越来越多的关注,并被引入到各种视觉任务中。 具体地说,GAN包括执行生成(例如,文本生成、图像变换)的生成器,以及将生成的结果和从目标分布采样的实例作为输入并鉴别每个输入是否来自目标分布的鉴别器。 在训练过程中,交替执行两个步骤:(a)固定生成器并训练鉴别器以更好地鉴别;(b)固定鉴别器并训练生成器以欺骗鉴别器。 通过充分的迭代对抗训练,生成器可以产生与真实数据分布一致的输出,而鉴别器不能区分生成的数据和真实数据。
在超分辨率方面,采用对抗性学习很简单,在这种情况下,我们只需要将SR模型视为生成器,定义额外的鉴别器来判断输入图像是否生成。 因此,莱迪格等人[25]首先提出了基于交叉熵的基于对抗损失的SRGAN,如下所示:
![](https://i-blog.csdnimg.cn/blog_migrate/b08ba9ee434855baee4516b6548428b8.png)
与上述侧重于对抗损失具体形式的著作形成对比的是,Park等人[133]认为像素级鉴别器导致产生无意义的高频噪声,并附加另一个特征级鉴别器对由预先训练的CNN提取的高级表示进行操作,该CNN捕获真实HR图像的更有意义的属性。 徐等人[63]包括由发生器和多个特定类别的鉴别器组成的多类别GAN。 ESRGAN[103]利用相对论性GAN[134]来预测真实图像比假图像相对更真实的概率,而不是输入图像的真实或假的概率,从而指导恢复更详细的纹理。
广泛的MOS测试(Sec.2.3.3)表明,尽管与有像素损失训练的SR模型相比,有对抗性损失和内容损失训练的SR模型获得了更低的PSNR,但它们在感知质量方面有显著的提高[8],[25]。 事实上,鉴别器提取真实HR图像中一些难以学习的潜在模式,并推动生成的HR图像符合,从而帮助生成更真实的图像。 然而,目前GAN的训练过程仍然困难且不稳定。 虽然关于如何稳定GAN训练已经有了一些研究[135]、[136]、[137],但是如何保证GAN正确地训练到SR模型中并发挥积极的作用仍然是一个问题。
Cycle Consistency Loss.
![](https://i-blog.csdnimg.cn/blog_migrate/094c1d201b2a447a8872592f8847143d.png)
Total Variation Loss.
![](https://i-blog.csdnimg.cn/blog_migrate/49a562a1ecb1cf4e5d860e25e79522a5.png)
Prior-Based Loss.
除上述损失函数外,还引入了外部先验知识来约束生成。 具体来说,布拉特等人[30]重点研究人脸图像SR,引入人脸对准网络(FAN)来约束人脸地标的一致性。 该FAN被预先训练并集成以提供人脸对准先验信息,然后与SR联合训练。 这样,所提出的Super-FAN在LR人脸对准和SR人脸图像上都有了较好的性能。
事实上,内容损失和纹理损失都引入了一个分类网络,本质上为SR提供了图像分层特征的先验知识。 通过引入更多的先验知识,可以进一步提高SR的性能。
在这一节中,我们介绍了SR的各种损失函数。 在实际应用中,研究人员常采用加权平均的方法将多个损失函数组合在一起[8]、[25]、[27]、[46]、[141]来约束生成过程的不同方面,特别是在失真-感知权衡方面[25]、[103]、[142]、[143]、[144]。 然而,不同损失函数的权重需要大量的经验探索,如何合理有效地组合仍是一个问题。
3.4.2 Batch Normalization
为了加速和稳定深部CNNS的训练,Sergey等[145]提出批归一化(BN)以减少网络的内部协变量移动。 具体地说,它们为每个小批处理执行规范化,并为每个通道训练两个额外的转换参数以保持表示能力。 由于BN校正了中间特征分布并减轻了消失梯度,因此它允许使用更高的学习速率和对初始化不太小心。 因此,SR模型[25]、[39]、[55]、[56]、[122]、[146]广泛地使用了这种技术。
然而,Lim等人[31]认为BN丢失了每幅图像的尺度信息,并从网络中摆脱了距离灵活性。 因此,他们删除了BN,并使用节省的内存成本(高达40%)来开发一个更大的模型,从而大大提高了性能。 其他一些模型[32]、[103]、[147]也采用了这种经验并实现了性能改进。
3.4.3 Curriculum Learning
课程学习[148]是指从较容易的任务开始,逐渐增加难度。 由于超分辨率问题是一个不适定问题,并且经常会遇到诸如大比例因子、噪声和模糊等不利条件,因此课程训练是为了降低学习难度而引入的。
为了降低标度因子大的SR的难度,Wang等人。 [32],Bei等。 [149]和Ahn等人。 [150]分别提出了PROSR、ADRSR和渐进CARN,它们不仅在体系结构上是渐进的(Sec.3.1.3),而且在训练过程上也是渐进的。 训练从2×上采样开始,训练结束后,逐步安装具有4×或更大比例因子的部分,并与先前的部分混合。 具体地说,PROSR通过线性组合该级别的输出和[151]之后的先前级别的上采样输出来混合,ADRSR将它们连接起来并附加另一个卷积层,而渐进CARN用产生双分辨率图像的块替换先前的重建块。
此外,Park等人。 [116]将8×SR问题分解为3个子问题(即1×to 2×,2×to 4×,4×to 8×),并为每个问题训练独立的网络。 然后将其中的两个串联并微调,然后与第三个。 此外,他们还将困难条件下的4×SR分解为1×~2×,2×~4×和去噪或去模糊子问题。 相反,SRFBN[86]将这种策略用于不利条件下的SR,即从容易降解开始,逐渐增加降解复杂度。
与普通训练程序相比,课程学习大大降低了训练难度,缩短了总训练时间,尤其是对大因素的训练。
3.4.4 Multi-supervision
多监督是指在模型中加入多个监督信号,以增强梯度传播,避免梯度消失和爆炸。 为了防止递归学习引入的梯度问题(第3.3.2),DRCN[82]将多监督与递归单元结合在一起。 具体地说,它们将递归单元的每个输出馈入重构模块以生成HR图像,并通过合并所有中间重构来构建最终预测。 同样基于递归学习的MEMNET[55]和DSRN[85]也采取了类似的策略。
此外,由于渐进上采样框架(Sec.3.1.3)下的LAPSRN[27],[65]在传播过程中会产生不同尺度的中间结果,因此采用多监督策略是很简单的。 具体地说,中间结果被迫与从地面真理HR图像下采样的中间图像相同。
在实际应用中,这种多监督技术往往通过在损失函数中加入一些项来实现,这样可以更有效地反向传播监督信号,从而降低训练难度,提高模型的训练效果。
3.5 Other Improvements
除了网络设计和学习策略外,还有其他技术可以进一步改进SR模型。
3.5.1 Context-wise Network Fusion
上下文网络融合(Context-Wise Network Fusion,CNF)[100]指的是一种将来自多个SR网络的预测进行融合的堆叠技术(即,在第3.3.3节中多路径学习的一种特殊情况)。 具体地说,他们分别训练不同结构的独立SR模型,将每个模型的预测输入到独立的卷积层中,最后将输出相加就是最终的预测结果。 在这个CNF框架内,由三个轻量级SRCNN[22],[23]构建的最终模型以可接受的效率[100]实现了与最先进模型相当的性能。
3.5.2 Data Augmentation
数据增强是提高深度学习性能的最广泛使用的技术之一。 对于图像超分辨率,一些有用的增强选项包括裁剪、翻转、缩放、旋转、颜色抖动等[27]、[31]、[44]、[56]、[85]、[98]。 此外,Bei等人[149]还对RGB信道进行随机洗牌,既增加了数据,又缓解了由于数据集颜色不平衡而造成的颜色偏差。
3.5.3 Multi-task Learning
多任务学习[152]是指通过利用相关任务的训练信号中包含的领域特定信息来提高泛化能力,如目标检测和语义分割[153]、头部姿态估计和面部属性推断[154]。 在SR领域,Wang等人。 [46]结合一个语义分割网络,用于提供语义知识并生成特定于语义的细节。 具体来说,他们提出了以语义图为输入的空间特征变换,并预测在中间特征图上进行仿射变换的空间参数。 因此,所提出的SFT-GAN在具有丰富语义区域的图像上生成更加逼真和视觉愉悦的纹理。 另外,DNSR[149]考虑到直接超分辨含噪图像可能会造成噪声放大,提出分别训练去噪网络和自适应滤波网络,然后将它们串联起来进行微调。 类似地,cycle-in-cycle GaN(CinCgan)[131]结合cycle-in-cycle去噪框架和cycle-in-cycle SR模型来联合执行降噪和超分辨率。 由于不同的任务往往关注数据的不同方面,将相关的任务与SR模型相结合通常通过提供额外的信息和知识来提高SR的性能。
3.5.4 Network Interpolation
基于PSNR的模型产生的图像更接近实际情况,但引入模糊问题,而基于GAN的模型带来更好的感知质量,但引入令人不快的伪影(例如,无意义的噪声使图像更“逼真”)。 为了更好地平衡失真和感知,Wang等人。 [103],[155]提出了一种网络插值策略。 具体来说,它们通过微调训练一个基于PSNR的模型和一个基于GaN的模型,然后对两个网络的所有相应参数进行插值,得到中间模型。 通过调整插值权值而不重新训练网络,它们产生有意义的结果,伪影少得多。
3.5.5 Self-Ensemble
自我合奏,又称自我合奏。 增强预测[44],是SR模型常用的一种推断技术。 具体来说,对LR图像进行不同角度的旋转(0°、90°、180°、270°)和水平翻转,得到一组8幅图像。 然后将这些图像输入到SR模型中,对重建后的HR图像进行相应的逆变换得到输出。 最后的预测结果由这些输出的平均值[31]、[32]、[44]、[70]、[78]、[93]或中位数[83]进行。 这样,这些模型进一步提高了性能。
3.6 State-of-the-art Super-resolution Models
近年来,基于深度学习的图像超分辨率模型受到越来越多的关注,并取得了最先进的性能。 在前面的章节中,我们将SR模型分解为具体的组件,包括模型框架(Sec.3.1)、上采样方法(Sec.3.2)、网络设计(Sec.3.3)和学习策略(Sec.3.4),分层分析这些组件并确定它们的优点和局限性。 事实上,今天大多数最先进的SR模型基本上都可以归因于我们上面总结的多种策略的组合。 例如,RCAN[70]最大的贡献来自信道注意机制(Sec.3.3.5),它还采用了其他策略,如亚像素上采样(Sec.3.2.2)、残差学习(Sec.3.3.1)、像素L1丢失(Sec.3.4.1)和自集成(Sec.3.5.5)。 以类似的方式,我们总结了一些有代表性的模型及其关键策略,如表2所示。
![](https://i-blog.csdnimg.cn/blog_migrate/ad4f01c09e81dd3a50421cde167c1ab1.png)
除了SR精度外,效率是另一个非常重要的方面,不同的策略对效率有或多或少的影响。 因此,在前面的章节中,我们不仅分析了所提出的策略的准确性,还指出了对效率影响较大的策略对效率的具体影响,如后上采样(Sec.3.1.2)、递归学习(Sec.3.3.2)、密集连接(Sec.3.3.4)、XUnit(Sec.3.3.11)。 我们还对一些有代表性的SR模型在SR精度(即PSNR)、模型规模(即参数个数)和计算代价(即多重加数)上进行了比较,如图所示 8. 精度是用4个基准数据集(即SET5[48]、SET14[49]、B100[40]和Urban100[50])的PSNR平均值来衡量的。 并用Pytorch-OPCOUNTER[157]计算了模型大小和计算量,输出分辨率为720p(即1080×720)。 所有统计数据均来自原始论文或在官方模型上计算,标度因子为2。 为了更好地查看和比较,我们还提供了一个交互式在线版本1。
4 UNSUPERVISED SUPER-RESOLUTION
现有的超分辨率研究主要集中在监督学习上,即利用匹配的LR-HR图像对进行学习。 然而,由于难以采集同一场景但分辨率不同的图像,SR数据集中的LR图像通常是通过对HR图像进行预定义的退化来获得的。 因此,训练的SR模型实际上学习预定义退化的反向过程。 为了在不引入人工退化先验知识的情况下学习真实世界的LR-HR映射,研究者们越来越关注无监督的SR,在这种情况下,只提供未配对的LR-HR图像进行训练,这样得到的模型更有可能处理真实世界场景中的SR问题。 接下来,我们将简要介绍几种现有的深度学习的无监督SR模型,更多的方法还有待探索。
4.1 Zero-shot Super-resolution
考虑到单个图像内部的内部图像统计已经为SR、Shocher等人提供了足够的信息。 [83]提出零镜头超分辨率(ZSSR)来处理无监督的SR问题,通过在测试时间训练图像特定的SR网络,而不是在大型外部数据集上训练一个通用模型。 具体地说,他们使用[158]从单个图像中估计退化核,并使用该核通过在该图像上执行不同缩放因子的退化和增强来构建一个小数据集。 然后在此数据集上训练用于SR的小CNN,并用于最终预测。
这样,ZSSR利用了每幅图像中的跨尺度内部递归性,从而在非理想条件下(即非双三次退化获得的图像,受到模糊、噪声、压缩伪影等影响)的图像上大大优于以往的方法(估计核1 dB,已知核2 dB),更接近真实场景,而在理想条件下(即双三次退化获得的图像)给出了有竞争力的结果。 但是,由于在测试过程中需要针对不同的图像训练不同的网络,因此推理时间较长。
4.2 Weakly-supervised Super-resolution
为了在不引入预定义退化的情况下处理超分辨率问题,研究人员试图用弱监督学习来学习SR模型,即使用未配对的LRHR图像。 其中,一些研究人员首先学习HR-to-LR退化,并将其用于构造训练SR模型的数据集,而另一些研究人员则设计循环网络来同时学习LR-to-HR和HR-to-LR映射。 接下来我们将详细介绍这些模型。
Learned Degradation.
由于预先定义的退化是次优的,从未配对的LRHR数据集学习退化是一个可行的方向。 布拉特等人。 [159]提出了一个两阶段的过程,首先使用未配对的LR-HR图像训练HR-to-LR GaN以学习退化,然后使用基于第一GaN进行的配对的LR-HR图像训练用于SR的LR-to-HR GaN。 具体来说,对于HR-to-LR GAN,HR图像被馈送到生成器中以产生LR输出,所述LR输出不仅需要匹配通过降低HR图像比例(通过平均池化)获得的LR图像,而且还需要匹配真实LR图像的分布。 训练完成后,该生成器作为退化模型生成LR-HR图像对。 然后,对于LR-to-HR GAN,生成器(即SR模型)将生成的LR图像作为输入,并预测HR输出,不仅要求匹配相应的HR图像,还要求匹配HR图像的分布。
通过采用这种两阶段的过程,所提出的无监督模型有效地提高了超分辨率真实世界LR图像的质量,并取得了较大的改进。
Cycle-in-cycle Super-resolution.
无监督超分辨的另一种方法是将LR空间和HR空间看作两个域,利用循环中循环的结构来学习彼此之间的映射。 在这种情况下,训练目标包括推动映射结果与目标域分布相匹配,并通过往返映射使图像可恢复。
动机是Cyclegan[138],Yuan等。 [131]提出了一种由4个发生器和2个鉴别器组成的循环中循环SR网络(CINCGAN),分别构成了噪声LR clean LR和Clean LR clean HR映射的两个CYCLEGAN。 具体来说,在第一个CYCLLEGAN中,噪声LR图像被送入一个发生器,并要求输出与真实干净LR图像的分布一致。 然后,它被送入另一个发生器,并被要求恢复原始输入。 为了保证系统的循环一致性、分布一致性和映射有效性,采用了若干损失函数(如对抗性损失、循环一致性损失、同一性损失)。 另一个Cyclegan的设计类似,只是映射域不同。
由于避免了预定义的退化,无监督CINCGAN不仅获得了与有监督方法相当的性能,而且适用于各种情况,即使是在非常恶劣的条件下。 然而,由于SR问题的病态本质和CINCGAN复杂的结构,需要一些先进的策略来降低训练难度和不稳定性。
4.3 Deep Image Prior
Ulyanov等人考虑到CNN结构足以在反问题之前捕获大量低级图像统计信息。 [160]在执行SR之前使用手工制作的随机初始化CNN。 具体来说,他们定义了一个生成器网络,它以随机向量Z作为输入,试图生成目标HR图像IY。 目标是训练网络找到一个I,Y,即下采样IY与LR图像IX相同。 由于网络是随机初始化的,从不训练,唯一优先的是CNN结构本身。 虽然该方法的性能仍然比监督方法(2 dB)差,但它比传统的双三次上采样方法(1 dB)要好得多。 此外,它还说明了CNN体系结构本身的合理性,并提示我们将深度学习方法与CNN结构或自相似性等手工先验知识相结合来改进SR。
5 DOMAIN-SPECIFIC APPLICATIONS
5.1 Depth Map Super-resolution
深度图记录了视点与场景中物体之间的深度(即距离),在姿态估计[161]、[162]和语义分割[163]、[164]等许多任务中发挥着重要作用。 然而,由于经济和生产的限制,深度传感器产生的深度图往往分辨率较低,并受到噪声、量化和缺失值等退化影响。 因此,为了提高深度图的空间分辨率,引入了超分辨率技术。
目前最流行的深度图SR方法之一是使用另一个经济的RGB相机获取相同场景的HR图像,用于指导超分辨率的LR深度图。 具体来说,宋等人。 [165]利用深度图和RGB图像之间的深度场统计和局部相关性来约束全局统计和局部结构。 许等人。 [166]利用两个CNNs同时上采样LR深度图和下采样HR RGB图像,然后使用RGB特征作为相同分辨率上采样深度图的指导。 和Haefner等人。 [167]进一步利用颜色信息,通过从阴影中提取形状的技术来指导SR。 相比之下,Riegler等人。 [168]将CNNS与能量最小化模型以一种强大的变分模型的形式结合起来,在没有其他参考图像的情况下恢复HR深度图。
5.2 Face Image Super-resolution
人脸图像超分辨率。 面部幻觉(FH),通常可以帮助其他与面部相关的任务[72],[73],[169]。 与一般图像相比,人脸图像具有更多的人脸结构化信息,因此将人脸先验知识(如地标、解析图、身份等)引入到跳频算法中是一种非常流行和有前途的方法。
最直接的方法之一是约束生成的图像具有与地面真相相同的人脸相关属性。 具体地说,CBN[170]通过交替地优化FH和密集对应场估计来利用面部先验。 Super-FAN[30]和MTUN[171]都引入了FAN,通过端到端的多任务学习来保证人脸标志的一致性。 FSRNet[73]不仅使用面部地标热图,还使用面部解析图作为先验约束。 SICNN[72]以恢复真实身份为目标,采用超身份损失函数和域集成训练方法来稳定联合训练。
除了显式地使用面部先验外,隐式方法也得到了广泛的研究。 TDN[172]结合了用于自动空间变换的空间变压器网络[173],从而解决了面部不对齐问题。 基于TDN,TDAE[174]采用了解码器-EncoderDecoder框架,第一个解码器学习上采样和去噪,编码器将其投射回对齐的无噪声LR面,最后一个解码器生成幻觉HR图像。 相比之下,LCGE[175]使用特定于部件的CNNs对五个面部部件执行SR,在HR面部部件数据集上使用K-NN搜索来找到相应的贴片,合成细粒度部件并最终将它们融合到FH结果中。 同样,Yang等人。 [176]将解块后的人脸图像分解为人脸分量和背景,利用分量地标在外部数据集中检索足够的HR样本,对背景进行泛型SR,最后将它们融合成完整的HR人脸。
此外,研究者还从其他角度对FH进行改进。 Attentif-FH[113]在人的注意力转移机制[112]的激励下,利用一个循环策略网络来依次发现被关注的人脸斑块并进行局部增强,从而充分利用了人脸图像的全局相关性。 UR-DGN[177]采用了一种类似于SRGAN[25]的具有对抗性学习的网络。 和徐等人。 [63]提出了一种基于GAN的多类跳频模型,该模型由一个通用发生器和一个特定类的鉴别器组成。 都是李等人。 [178]和Yu等人。 [179]基于条件GAN[180]利用附加面部属性信息来执行具有指定属性的FH。
5.3 Hyperspectral Image Super-resolution
与全色图像(即3个波段的RGB图像)相比,包含数百个波段的高光谱图像(HSIS)提供了丰富的光谱特征,有助于各种视觉任务[181]、[182]、[183]。 然而,由于硬件的限制,采集高质量的HSIS比PANS要困难得多,分辨率也较低。 因此,超分辨率被引入到这一领域,研究人员倾向于将HR PANS和LR HSIS结合起来预测HR HSIS。 其中,Masi等人。 [184]使用SRCNN[22]并结合几张非线性辐射指数图来提高性能。 曲等人。 [185]联合训练两个编解码器网络分别在PANS和HSI上进行SR,并通过共享解码器和应用角度相似损失和重构损失等约束,将SR知识从PAN传递到HSI。 最近,傅等人。 [186]评估相机光谱响应(CSR)函数对HSI SR的影响,并提出一个CSR优化层,该层可以自动选择或设计最优的CSR,并优于现有技术。
5.4 Real-world Image Super-resolution
通常,用于训练SR模型的LR图像是通过手动下采样RGB图像(例如,通过双三次下采样)来生成的。 然而,现实世界中的相机实际上捕获的是12位或14位RAW图像,并通过相机ISP(图像信号处理器)执行一系列操作(如去马赛克、去噪和压缩),最终产生8位RGB图像。 在此过程中,RGB图像丢失了大量原始信号,与摄像机拍摄的原始图像有很大差异。 因此,直接使用人工下采样的RGB图像进行SR是次优的。
为了解决这一问题,研究者们研究如何利用真实世界的图像进行SR。 其中,陈等人。 [187]分析了成像系统中图像分辨率(R)与视场(V)之间的关系(即R-V退化),提出了进行真实世界数据集City100的数据采集策略,并通过实验证明了所提出的图像合成模型的优越性。 张等人。 [188]通过相机的光学变焦建立另一个真实世界的图像数据集SR-RAW(即配对的HR RAW图像和LR RGB图像),并提出上下文双边损失来解决失调问题。 相比之下,Xu等人。 [189]提出了一种流水线,通过模拟成像过程生成逼真的训练数据,并开发了一种双重CNN来利用原始图像中最初捕获的辐射信息。 他们还提出学习空间变体颜色变换,以有效的颜色校正和推广到其他传感器。
5.5 Video Super-resolution
对于视频超分辨率而言,多帧提供了更多的场景信息,不仅存在帧内的空间相关性,还存在帧间的时间相关性(如运动、亮度和颜色变化)。 因此,现有的工作主要集中在更好地利用时空相关性,包括显式运动补偿(如基于光流的、基于学习的)和递归方法等。
在基于光流的方法中,Liao等。 [190]使用光流方法产生HR候选并通过CNNS集成它们。 VSRNet[191]和CVSRNet[192]通过DRULEAS算法[193]处理运动补偿,并利用CNNs将连续帧作为输入,预测HR帧。 而刘等人。 [194],[195]执行整流光流对准,并提出一种时间自适应网络以产生各种时间尺度的HR帧并自适应地聚合它们。
另外,也有人尝试直接学习运动补偿。 VESPCN[156]利用可训练的空间变换器[173]来学习基于相邻帧的运动补偿,并将多个帧输入到时空ESPCN[84]中用于端到端预测。 和陶等人。 [196]从精确的LR成像模型出发,提出了一个亚像素模块,以同时实现运动补偿和超分辨率,从而更有效地融合对齐帧。
另一种趋势是使用递归方法来捕获时空相关性,而不需要显式的运动补偿。 具体地,BRCN[197]、[198]采用双向框架,并使用CNN、RNN和条件CNN分别对空间、时间和时空依赖性进行建模。 类似地,STCN[199]使用深度CNN和双向LSTM[200]来提取空间和时间信息。 并且FRVSR[201]使用先前推断的HR估计来通过两个深CNNs以重复的方式重建随后的HR帧。 最近的FSTRN[202]采用了两个更小的三维卷积滤波器来代替原来的大滤波器,从而通过更深的CNNs来提高性能,同时保持较低的计算成本。 而RBPN[87]通过循环编码器-解码器提取空间和时间上下文,并将它们与基于反投影机制的迭代细化框架相结合(Sec.3.1.4)。
此外,FAST[203]利用压缩算法提取的结构和像素相关性的紧凑描述,将一帧的SR结果转移到相邻帧,大大加快了现有的SR算法,而性能损失很小。 和乔等人。 [204]基于每个像素的局部时空邻域生成动态上采样滤波器和HR残差图像,也避免显式运动补偿。
5.6 Other Applications
基于深度学习的超分辨率也被应用于其他领域,并显示出良好的性能。 具体地说,感知GAN[205]通过对小物体的超分辨表示来解决小物体检测问题,以具有与大物体相似的特征,并对检测具有更高的区分度。 同样,FSR-GAN[206]在特征空间而不是像素空间中对小尺寸图像进行超分辨,从而将原始的差特征转换为高分辨特征,极大地提高了图像检索的效率。 此外,Jeon等人。 [207]利用立体图像中的视差先验来在配准中以亚像素精度重建HR图像。 王等人。 [208]提出了一种视差-注意力模型来解决立体图像的超分辨率问题。 李等人。 [209]合并三维几何信息和超分辨率三维物体纹理图。 和张等人。 [210]将一个光场中的视图图像分成组,学习每个组的固有映射,最后组合每个组中的残差来重建更高分辨率的光场。 总之,超分辨率技术可以在各种应用中发挥重要作用,尤其是当我们可以很好地处理大对象而不能处理小对象时。
6 CONCLUSION AND FUTURE DIRECTIONS
本文综述了近年来基于深度学习的图像超分辨率技术的研究进展。 主要讨论了有监督和无监督SR的改进,并介绍了一些特定领域的应用。 尽管取得了巨大的成功,但仍有许多未解决的问题。 因此,在这一节中,我们将明确指出这些问题,并介绍未来发展的一些有希望的趋势。 我们希望本研究不仅能让研究者更好地了解图像SR现象,而且能促进该领域未来的研究活动和应用开发 。
6.1 Network Design
良好的网络设计不仅可以确定一个性能上界较大的假设空间,而且可以在不增加空间和计算冗余的情况下有效地学习表示。 下面我们将介绍一些有希望的网络改进方向。
Combining Local and Global Information.
大的感受野提供了更多的上下文信息,有助于产生更真实的结果。 因此,将局部信息和全局信息相结合,为图像重建提供不同尺度的上下文信息是有希望的。
Combining Low- and High-level Information.
CNNS中的浅层倾向于提取低层特征,如颜色和边缘,而深层学习更高层次的表征,如对象身份。 因此,将底层细节与高层语义结合起来,对HR重构有很大的帮助。
Context-specific Attention.
在不同的语境中,人们往往会关注图像的不同方面。 例如,对于草区,人们可能更关心当地的颜色和纹理,而在动物身体区,人们可能更关心物种和相应的毛发细节。 因此,引入注意机制来增强对关键特征的注意,有利于生成逼真的细节。
More Efficient Architectures.
现有的SR模型往往追求最终性能,而忽略了模型大小和推理速度。 例如,在带有Titan GTX GPU[80]的Div2K[42]上,EDSR[31]对于4×SR,每张图像需要20秒,而DBPN[57]对于8×SR[211]需要35秒。 如此长的预测时间在实际应用中是不可接受的,因此更高效的体系结构势在必行。 如何在保持性能的同时减少模型大小并加快预测速度仍然是一个问题。
Upsampling Methods.
现有的上采样方法(Sec.3.2)或多或少都有缺点:内插方法计算量大,不能端到端学习,转置卷积产生棋盘伪影,亚像素层带来感受野分布不均匀,元上采样模块可能导致不稳定或效率低下,有进一步改进的空间。 如何执行有效和高效的上采样仍然需要研究,特别是在高比例因子的情况下。
最近,用于深度学习的神经架构搜索(NAS)技术越来越流行,在很少人工干预的情况下大幅提高了性能或效率[212]、[213]、[214]。 对于SR领域来说,将上述方向的探索与NAS相结合是大有可为的。
6.2 Learning Strategies
除了良好的假设空间外,稳健的学习策略也是取得满意效果所必需的。 接下来,我们将介绍一些有前途的学习策略的发展方向。
Loss Functions.
现有的损失函数可以看作是在LR/HR/SR图像之间建立约束,并根据这些约束是否满足来指导优化。 在实际应用中,这些损失函数往往是加权组合的,对于SR的最佳损失函数尚不清楚。 因此,最有希望的方向之一是探索这些图像之间的潜在相关性,寻求更精确的损失函数。
Normalization.
尽管BN在视觉任务中得到了广泛的应用,它大大加快了训练速度,提高了性能,但对于超分辨率[31]、[32]、[147]来说,它是次优的[31]、[32]、[147]。 因此,需要研究其他有效的SR归一化技术。
6.3 Evaluation Metrics
评价指标是机器学习最基本的组成部分之一。 如果不能准确地测量性能,研究人员将很难验证改进。 超分辨率度量面临着这样的挑战,需要更多的探索。
More Accurate Metrics.
PSNR和SSIM是目前应用最广泛的信噪比度量指标。 然而,PSNR往往导致过度平滑,结果可能在几乎无法区分的图像之间发生巨大变化。 SSIM[58]在亮度、对比度和结构方面进行评估,但仍然不能准确地测量感知质量[8],[25]。 另外,MOS是最接近人类视觉反应的,但需要付出很多努力,而且不可复制。 虽然研究者们提出了各种各样的度量标准(Sec.2.3),但目前还没有统一的、公认的SR质量评价标准。 因此,迫切需要更准确的评价重建质量的指标。
Blind IQA Methods.
今天,大多数用于SR的度量都是全参考方法,即假设我们有质量完美的LR-HR图像配对。 但由于获取此类数据集的难度较大,常用的评估数据集往往是通过人工退化来进行的。 在这种情况下,我们执行评估的任务实际上是预定义降级的逆过程。 因此,开发盲IQA方法也有很大的需求。
6.4 Unsupervised Super-resolution
正如SEC4提到的采集同一场景不同分辨率的图像往往比较困难,因此双三次插值被广泛应用于SR数据集的构建。 然而,在这些数据集上训练的SR模型可能只能学习预定义退化的逆过程。 因此,如何进行无监督超分辨率(即在没有配对LR-HR图像的数据集上训练)是一个很有前途的发展方向。
6.5 Towards Real-world Scenarios
图像的超分辨率在实际场景中受到很大的限制,如遭受未知的退化,丢失配对的LR-HR图像。 下面,我们将介绍一些关于现实世界场景的方向。
Dealing with Various Degradation.
现实世界的图像往往遭受退化,如模糊,加性噪声和压缩伪影。 因此,在数据集上人工训练的模型在实际场景中往往表现不佳。 为了解决这一问题,人们提出了一些工作[39]、[131]、[149]、[159],但这些方法都有一些固有的缺点,如训练难度大、假设过于完善等。 这个问题迫切需要解决。
Domain-specific Applications.
超分辨率不仅可以直接应用于特定领域的数据和场景,而且对其他视觉任务也有很大的帮助(第5节)。 因此,将SR应用于视频监控、目标跟踪、医学成像和场景绘制等更具体的领域也是一个很有前途的方向。