图像超分辨率技术的回顾与展望*
2020-02-20林庆帆李莹华王富平1津1
刘 颖,朱 丽,林庆帆,李莹华,王富平1,,卢 津1,
1.西安邮电大学 电子信息现场勘验应用技术公安部重点实验室,西安 710121
2.陕西省无线通信与信息处理技术国际合作研究中心,西安 710121
3.西安邮电大学 图像与信息处理研究所,西安 710121
4.新加坡Silicon Vision有限公司,新加坡 787820
1 引言
图像超分辨率(super-resolution,SR)是指利用算法将图像从低分辨率(low resolution,LR)恢复到高分辨率(high resolution,HR)的过程,是计算机视觉和图像处理的重要技术之一[1]。它不仅在提高图像感知质量的很多领域具有广泛应用,如医学成像[2-4]、监控视频与安全等[5-8],还有助于改进其他计算机视觉任务,如图像检索、图像分割等[9-12]。
图像超分辨率技术根据其输入输出不同大致可分为三类,即多图像、视频和单图像超分辨率[13]。其中,单图像超分辨率重建技术(single image superresolution,SISR)由于其增强图像细节和纹理方面具有很高的实用价值,因此一直是图像处理领域的研究热点[14]。在过去的工作中,传统的单图像超分辨率算法已经取得了巨大的成功,但随着放大因子的增大,人为定义的先验信息和观测模型所能提供用于高分辨图像重建的信息越来越少,这使得传统算法很难达到重建高频信息的目的[15-16]。近年来,随着深度学习技术的飞速发展,基于深度学习的超分辨率网络模型得到了积极的探索,并在各种标准数据集上实现了更优的性能。从早期基于卷积神经网络(convolutional neural networks,CNN)的图像超分辨率方法[17-18]到最近基于生成对抗网络(generative adversarial networks,GAN)[19]的图像超分辨率方法[20],越来越多基于深度学习方法已被应用于解决超分辨率问题。基于深度学习的超分辨率方法在放大因子较大的情况下能产生相对好的输出结果,使输出图像更加逼真,同时利用GPU加速可以相对快速地得到结果。
基于图像超分辨率技术的研究成果,有学者从不同角度对现有技术进行了总结。其中,文献[21]根据不同的输入输出情况,对超分辨率算法进行系统分类,并分别介绍其发展历程;文献[22]根据成像系统模型,主要对基于学习的图像超分辨率算法进行对比分析;文献[23]主要介绍了基于深度卷积神经网络的图像超分辨率(super-resolution convolutional neural network,SRCNN)和基于更深层次网络的超分辨率(very deep convolutional networks super-resolution,VDSR)两种基于深度学习的单图像超分辨率技术;文献[24]主要介绍了SRCNN、基于高效亚像素卷积神经网的图像超分辨率(efficient sub-pixel convolutional neural network,ESPCN)和基于生成对抗网络的图像超分辨率网络(super-resolution generative adversarial network,SRGAN)三种典型的单图像超分辨率网络模型;文献[25]对基于重建的图像超分辨率中的迭代反向投影法(iterate back projection,IBP)、凸集投影法(projection onto convex sets,POCS)等算法,以及基于学习的图像超分辨率中的稀疏表示、基于深度神经网络等算法进行介绍;文献[26]就自然图像、视频和更高维度图像的超分辨率技术进行综述。本文将基于深度学习的单图像超分辨率算法成果分为有监督学习和无监督学习两大类并进行了详细介绍,同时分类论述了部分具有代表性的前沿超分辨率技术,并对图像评价指标和典型数据集进行列举,进而对几种典型算法的实验结果进行对比分析。
2 超分辨率技术的分类
图像超分辨率技术的主要任务是生成真实、清晰且人为痕迹尽可能少的HR图像,根据输入输出的不同,其定义有所区别,主要可分为三类。图1给出了具体的超分辨率问题的分类算法。
2.1 多图像超分辨率
Fig.1 Classification of super-resolution problems图1 超分辨率问题的分类
多图像超分辨率方法利用多幅LR图像得到一幅真实且清晰的HR图像,主要采用基于重建的算法,即试图通过模拟图像形成模型来解决LR图像中的混叠伪像问题。多图像超分辨率重建算法根据重建过程所在域不同可分为频域法和空域法。相比于频域法,空域法在图像适应性方面更好,并且能够产生更好的超分辨率重建结果,因此近年应用更为广泛。目前典型的空域重建算法有迭代反向投影(IBP)方法[27]、凸集投影(POCS)方法[28-29]和贝叶斯最大后验(maximum a posterior,MAP)估计方法[30-32]。表1就三种典型的空域多图像算法做出比较,列出各自典型特点,少量特殊算法可能有特例情况。
Table 1 Comparison of 3 classic multi-image super-resolution algorithms表1 三种经典多图像超分辨率算法对比
2.2 视频超分辨率
视频超分辨率输入的是一个视频序列,该技术不仅可以提高视频中每一帧的分辨率,还可以利用算法在时域中增加图像帧的数目,从而达到提高视频整体质量的目的。视频超分辨率方法可以分为以下两大类:一是增量视频超分辨率方法;二是同时视频超分辨率方法[33]。增量视频超分辨率方法的优点是速度快,相比于同时视频超分辨率方法更适合对实时性要求高的应用,但输出的HR视频视觉效果较差。而由于同时视频超分辨率方法考虑到了不同视频帧之间的一致性,因此可以生成较清晰的、质量较高的视频,但其计算速度比较慢,不适合实时应用场景[13]。表2对两种视频超分辨率算法的优缺点进行对比[21]。
Table 2 Comparison of 2 video super-resolution algorithms表2 两类视频超分辨率算法对比
2.3 单图像超分辨率
单图像超分辨率输入的是一幅LR图像,仅利用一幅LR图像来重建得到HR图像。目前单幅图像超分辨率方法主要分为三类,即基于插值的图像超分辨率算法、基于重建模型的图像超分辨率算法和基于学习的图像超分辨率算法[13]。表3中列举了三种单图像超分辨率算法的优缺点。
2.3.1 基于插值的单图像超分辨率算法
基于插值的单图像超分辨率算法利用基函数或插值核来逼近损失的图像高频信息,从而实现HR图像的重建。最近邻插值、双线性插值和双三次插值都是典型的插值算法。Keys首先提出双三次差值算法[34],至今仍然应用于各个领域;Li等人提出了基于边缘指导的插值算法[35];Sun等人利用了局部结构的图像梯度框架先验正则化实现插值过程[36];Wang等人采用先插值后修改的策略增强图像的视觉效果,提高相邻图像区域间的颜色或亮度的过渡[37];Giachetti等人提出基于曲率的迭代插值方案,同时利用GPU加速提高算法速度[38];季成涛等人提出基于正则化的边缘定向插值算法[39]。近年来,也有很多学者利用机器学习的方法,Dong和Romano等人利用了基于稀疏表示的方法来对图像插值实现图像超分辨率[40-41]。
Table 3 Performance comparison of 3 single image super-resolution algorithms表3 三种单图像超分辨率算法性能对比
2.3.2 基于重建模型的单图像超分辨率算法
基于重建模型的图像超分辨率算法通过将图像的先验知识作为约束条件加入到图像的超分辨率重建过程中,使得超分辨率重建这个不适定问题变得可解。Xu等人提出了一种内核估计方法,该方法基于空间先验和迭代支持检测内核细化,避免了内核元素硬阈值强制稀疏[42]。Shan等人利用重尾梯度分布对图像进行超分辨率处理[43]。Kim等人利用图像大梯度的稀疏性作为算法的先验知识来降低算法复杂度[44]。Xiong等人利用图像大梯度的稀疏性作为算法的先验知识来归一化输入的LR图像[45]。
2.3.3 基于学习的单图像超分辨率算法
基于学习的图像超分辨率算法通过训练图像数据集学习低分辨与高分辨图像之间的映射关系,来预测低分辨图像中丢失的高频信息,从而达到重建高分辨率图像的目的。文献[46]首次将机器学习方法成功应用到图像超分辨率中。流形学习也被用于图像超分辨率中,Chang等人提出了一种基于局部线性嵌入的图像超分辨率算法[47]。稀疏表示和字典训练也被用于图像超分辨率方法中,Yang等人将局部线性嵌入和压缩感知理论结合,利用信号的稀疏表示训练样本集得到学习字典[48]。近年来,越来越多的学者开始重视深度学习的研究,并将其应用于不同领域。Dong等人首先提出基于深度卷积神经网络的图像超分辨率算法(SRCNN)[17-18]是卷积神经网络在超分应用的开山之作。总体而言,基于学习的超分辨率重建方法是目前研究的主流方向,其效果也是最好的[49]。
3 基于深度学习的单图像超分辨率重建
在超分辨率的研究工作中,传统超分辨率重建方法主要依赖于约束项的构造以及图像之间配准的精确度达到重建效果,但其不适用于放大倍数较大的超分辨率重建[21]。随着放大因子的增大,人为定义的先验知识和观测模型所能提供的用于超分辨率重建的信息越来越少,即使增加LR图像的数量,亦难以达到重建高频信息的目的[15-16]。如果想从本质上突破基于重建的超分辨率重建方法的局限性,需要寻求新的思路与方法[50]。此时,基于深度学习的单图像超分辨率重建技术应运而生,它的出现解决了传统超分辨率技术中的许多瓶颈问题,在近几年取得了巨大的成功,在本章将详细介绍基于深度学习的单图像超分辨率技术。
深度学习(deep learning,DL)源于人工神经网络,其概念由Hinton等人[51]在2006年提出,由于深度学习在其他计算机视觉领域中取得了突破性进展,人们尝试引入深度神经网络,通过构建深层次的网络进行训练来解决图像超分辨率重建问题。目前,越来越多具有深度学习功能的超分辨率模型被提出,根据是否依赖于LR图像和对应的HR图像训练网络模型,可以粗略地将其分为有监督的超分辨率和无监督的超分辨率,由于有监督的超分辨率技术能够取得较好的重建效果,是目前研究的主流方向。在本章中根据基于深度学习的有监督超分辨率和无监督超分辨率分别进行介绍,并对目前图像超分辨率重建领域部分具有代表性的最新研究成果汇总论述。
3.1 有监督学习的单图像超分辨率
不同的网络模型之间有很大的差异,但其本质上而言都是一组不同模块的相互组合,其中最基本也是重要的模块即为模型框架、网络设计和学习策略[1]。在本节中,先对基本模块进行模块化分析,再总结它们的优点和局限性,最后详细介绍几个不同模块组合的典型的超分辨率网络模型。
3.1.1 网络模型基本模块
(1)网络模型框架
单图像超分辨率是从LR到HR空间的一对多映射,由于其不适定性,如何进行上采样,即从低分辨率输入产生高分辨率输出是关键问题。虽然现有超分辨率模型的架构差异很大,但它们可归纳为四个模型框架,即预上采样、后上采样、渐进上采样和迭代上下采样超分辨率[1]。在预上采样超分辨率中,预定义的传统算法完成了难以进行的上采样任务,深度CNN仅需要细化大致略图,降低学习难度,Dong等人[17-18]首先采用预上采样超分辨率框架,并提出SRCNN来学习从内插LR图像到HR图像的端到端映射。后上采样超分辨率通过替换预定义的上采样操作在低维空间中执行大部分映射[52-53],使计算复杂度和空间复杂度大大降低,并且也带来了相当快的训练速度。对于渐进上采样超分辨率,该框架下的模型基于CNN级联并逐步重建出更高分辨率的图像,通过将困难的任务分解为多个简单的任务,在每个阶段图像被上采样到更高的分辨率并由CNN细化,拉普拉斯金字塔超分辨率网络(Laplacian pyramid super-resolution networks,LapSRN)[54]是典型采用渐进上采样超分辨率框架的网络模型。迭代上下采样超分辨率试图迭代地计算重建误差,然后将其融合以调整HR图像,该框架下的模型可以更好地挖掘LR-HR图像对之间的深层关系,从而提供更高质量的重建结果[55]。
(2)网络设计策略
网络的设计策略在深度学习的网络模型中有着举足轻重的作用。在超分辨率领域,研究人员在超分辨率框架之上应用各种网络设计策略来构建最终的超分辨率网络模型。大致地可将超分领域目前流行的网络设计策略归纳为以下几类:残差学习、递归学习、密集连接、生成对抗、注意力机制等。残差网络(residual network,ResNet)[56]提出了网络的残差学习,可以分为局部残差和全局残差,全局残差要求输入图片与重建的目标图片有极大的相关性,通过分析其相关性进行学习。局部残差主要用于缓解由于网络的加深而带来的退化问题,提高其学习能力。为了缓解更深的网络带来的过度拟合和模型复杂的问题,提出了递归学习。Kim等人[57]提出了深度递归卷积网络(deeply-recursive convolutional network,DRCN),首次将之前已有的递归神经网络(recursive neural network,RNN)结构应用在超分辨率处理中,得到了很好的效果。文献[58]提出了密集网络(dense network,DenseNet),通过密集块中的信道数量和连接后挤压信道大大减少了参数数量,有效缓解了梯度消失问题。基于密集网络的图像超分辨率(superresolution dense network,SRDenseNet)[59]将密集连接引入超分辨率中,融合低级和高级特征以提供更丰富的信息来重建高质量细节。SRGAN[20]首次将生成对抗网络用于图像的超分辨率重建工作中,利用生成对抗学习策略对网络模型进行优化,网络实现了较大放大因子下的图像重建,模型产生了相对较好的重建效果。随着注意力机制在各个视觉任务上产生好的结果,部分学者也将其应用于图像超分辨率领域。文献[60]考虑到不同通道之间特征表示的相互依赖性和相互作用,利用通道注意力机制提出了一个深度残差通道注意力网络(deep residual channel attention networks,RCAN),该模型不仅在表达能力上得到了极大提高,而且SR性能也得到了优化。
(3)学习策略
在网络训练中,往往采用特定的学习策略,如最小化损失函数、批量标准化、多监督和数据集处理等,通常在模型中会用到不止一种的学习策略,多种策略的组合使得模型产生更好的输出。
损失函数:在超分辨率中,损失函数用于测量生成的超分辨率图像和真实HR图像之间的差异,并指导模型优化。在超分的模型中常见的损失函数有像素损失、内容损失、对抗损失等。两个图像之间像素损失主要包括L1损失(即平均绝对误差)和L2损耗(即均方误差),像素损失约束产生的超分辨率图像在像素级上与原来的真实的HR图像更加相似。基于对评估的图像质量感知,内容损失被引入超分辨率[61-62],内容损失主要表示为两个图像的特征表示的欧式距离。生成对抗网络(GAN)[19]在图像超分上的应用使得对抗损失也进入了图像超分辨率领域,SRGAN[20]中通过生成器和鉴别器的相互对抗学习产生相当好的输出。
批量标准化:在网络训练中,随着参数的不断更新,网络中层与层之间的数据会产生较大的差异,导致网络不断地适应新的数据分布,进而使得训练变得异常困难,而且网络越深,这种现象就越明显,这种现象也称为网络的内部协变量偏移。为了解决这个问题,文献[63]提出批量归一化(batch normalization,BN)以减少网络的内部协变量偏移。通过此策略可以避免梯度消失和梯度爆炸,加速网络的收敛,提高网络的泛化能力,优化网络结构,目前批量标准化策略这种技术被超分辨率网络模型广泛使用[64-66]。
多监督:多监督是指增加多个额外监督模型中的信号用于增强梯度传播并避免梯度消失和爆炸,DRCN[57]为了防止梯度问题引入递归学习,包含了对递归单元的多监督。在实际中往往是在损失函数中添加所需的特定条件来实现的,可以通过反向传播监督信号来达到加强模型的训练效果。
数据集:在深度学习中,数据集也同样发挥着重要的作用。通过增大数据集,可以使得网络学习到更多的图像特征,增强网络模型的性能。提前对数据集的图片进行预处理,增加图片的多样性,在数据增强的帮助下,超分辨率模型的性能可以得到极大的提高。
3.1.2 典型网络模型
针对模型框架、网络设计和学习策略等不同的模块的组合,本小节主要介绍四种具有代表性的有监督学习的典型超分辨率网络模型。
(1)基于深度卷积神经网络的图像超分辨率
卷积神经网络的兴起对图像超分辨率产生了很大的影响,基于卷积神经网络的超分辨率方法中最为典型的就是SRCNN方法。该方法中构建了一种基于三层卷积神经网络的图像超分辨率模型,可以实现一种由低分辨率图像到高分辨率图像端到端的映射。在实现过程中,主要分为三个步骤:特征提取、非线性变换和图像生成。基于卷积神经网络的超分辨率算法将这三个步骤都统一到一个模型中,显著地提高了模型效率。不需要另外学习参数,因此用时较短。但该方法的弊端是在网络的层数加深时模型的学习效果会下降,并且对于较大图片的处理速度不够好。图2为基于卷积神经网络超分辨率模型结构示意图。
基于卷积神经网络的快速图像超分辨率重建(fast super-resolution convolutional neural network,FSRCNN)[52]与SRCNN[17-18]都是由香港中文大学Dong、Tang等人所提出的网络模型。FSRCNN是对之前SRCNN的改进,借助于反卷积核之间的协作,网络不需要预处理就可以学习到一个原始LR与HR之间的端对端的映射。该模型保证精度的同时还实现了加速。通过该网络的卷积层来实现不同上采样因子之间的快速训练和测试,没有重建质量的损失,但效果相比于SRCNN没有具体的改进。
Fig.2 Schematic diagram of super-resolution model based on convolutional neural network图2 基于卷积神经网络的超分辨率模型结构示意图
(2)基于深度递归卷积网络的图像超分辨率
SRCNN的网络层数较少,同时感受野也较小。更深的网络可能会得到高精度,但可能会产生过度拟合和模型巨大问题。针对此问题,Kim等人[57]提出了深度递归卷积网络(DRCN)。第一次将之前已有的递归神经网络(RNN)结构应用在超分辨率处理中。DRCN通过采用文献[67]的递归监督策略和文献[68]中的跳跃层来处理模型训练问题,特别是解决爆炸/消失的梯度问题。利用残差学习的思想(跳跃连接),加深了网络结构(16个递归),增加了网络感受野,提升了性能。网络模型中使用更多的卷积层增加网络感受野,利用递归模块实现权重共享,避免了过多网络参数,并采用跨层连接的方式实现多层特征融合,其重建效果相比于SRCNN有了较大提高。图3为基于深度递归卷积网络超分辨率模型结构示意图。
Fig.3 Schematic diagram of super-resolution model based on deep recursive convolution network图3 基于深度递归卷积网络超分辨率模型结构示意图
(3)基于高效亚像素卷积神经网络的图像超分辨率
在SRCNN和DRCN中,低分辨率图像都是先通过上采样插值得到与高分辨率图像大小相同的图像,再将其作为网络输入,这意味着卷积操作在较高的分辨率上进行,与在低分辨率的图像上计算卷积相比,这将会在很大程度上降低效率。ESPCN[53]提出了一种在低分辨率图像上直接计算卷积得到高分辨率图像的高效率方法,其核心概念是亚像素卷积层。网络输入原始低分辨率图像,通过两个卷积层以后,得到的特征图像大小与输入图像相同。通过使用亚像素卷积层,实现图像从低分辨率到高分辨率放大的过程,插值函数被隐含在前面的卷积层中,可以自动学习到。只在最后一层对图像进行大小变换,由于前面的卷积运算在低分辨率图像上进行,因此效率会得到提高。在重建效果上,用峰值信噪比(peak signal to noise ratio,PSNR)衡量重建性能,ESPCN比SRCNN更优。图4为基于高效亚像素卷积网络超分辨率模型结构示意图。
(4)基于生成对抗网络的图像超分辨率
生成对抗网络(GAN)是Goodfellow等人[19]在2014年提出的一种生成对抗式模型。该模型是由两个网络组成的深层次神经网络结构,将一个网络与另一个网络相互对立。一个神经网络称为生成器,生成新的数据实例;另一个神经网络称为鉴别器,评估它们的真实性,即鉴别器决定它所审查的每个数据实例是否属于实际训练数据集。基于生成对抗网络的图像超分辨率(SRGAN)[20]将生成对抗网络(GAN)应用到图像超分辨率领域。生成器模型根据输入的低分辨率图像生成其对应的高分辨率图像,而鉴别器用于判断图像属于生成的高分辨率图还是真实的高分辨率图像,两者相互迭代训练,直到鉴别器无法分辨出输入的图像是生成的图像还是真实的图像,则认为两者达到了纳什均衡[19],最后生成器模型能够生成出以假乱真的高分辨率图像。从SRGAN模型中引入感知损失(perceptual loss)[69]到损失函数中,使生成图片和目标图片在语义和风格上更相似,使得生成的图像更具真实感。图5给出基于生成对抗网络的图像超分辨率的模型结构示意图。
3.1.3 典型网络模型性能对比
算法的网络模型是不同模块之间的相互组合,从而形成各网络模块的性能各异。本小节主要针对3.1.1小节中的四种典型网络模型进行模块和性能的总结分析,针对其模块和性能进行总结分析。表4中从多个角度对四种网络模型进行对比,可以看出其各有优势。SRCNN是卷积神经网络在超分领域的开山之作,使用三层网络设计结构,采用预上采样超分辨率的模型框架,相比于其他网络结构较简单,但对于较大放大因子的图像重建的效果不够理想。DRCN模型框架采用后上采样超分辨率,运用了递归连接的网络设计,其特点在于层间链接信息共享,这使得运算的复杂度相对简单,同时也能够取得好的重建效果。ESPCN模型框架采用亚像素卷积的上采样方式,将从LR图像中提取到的特征图重新排列成HR图像,该方法加快了算法的运算速度,在保证较好视觉效果的前提下,满足了实时视频处理的要求。SRGAN的模型设计同样采用了后上采样超分辨率,使用的独有的GAN结构网络设计,对于较大的放大因子的图像重建能够得到较好的主观感受。
3.2 无监督学习的单图像超分辨率
Fig.4 Schematic diagram of super-resolution model based on efficient sub-pixel convolution network图4 基于高效亚像素卷积网络超分辨率模型结构示意图
Fig.5 Schematic diagram of super-resolution model based on generative adversarial network图5 基于生成对抗网络的图像超分辨率的网络模型结构示意图
Table 4 Comparative analysis of 4 super resolution algorithms network models表4 四种超分辨率算法网络模型对比分析
现有的超分辨率重建工作主要集中于有监督学习,即使用匹配的LR-HR图像对学习出LR到HR的映射。然而,由于难以获取相同场景下的不同分辨率的图像,因此常通过对HR图像进行下采样来获取数据集中的LR图像。但由于实际中提供网络训练的图像通常为非配对图像,因此相比有监督的学习,在真正的现实样例中无监督的学习训练建立的模型更加符合实际。在本节中,将介绍几种具有代表性的无监督学习单图像超分辨率技术。“零样本(zeroshot)”超分辨率技术和弱监督超分辨率技术是超分领域具有代表性的两类无监督学习方法。
3.2.1 “零样本”超分辨率技术
Shocher等[70]提出的“零样本”超分辨率技术是第一个基于CNN的无监督超分辨率方法,算法利用了深度学习的强大学习功能,但不依赖于之前的训练。在单个图像中利用信息的内部重现,并在测试时训练一个特定于图像的小型CNN,仅从输入图像本身提取一个样本。因此,它可以适应每个图像的不同设置,如旧照片、噪声图像、生物数据以及获取过程未知或不理想的其他图像。随着超分辨率技术的发展,其他类型无监督超分辨率技术也得到了积极的探索。文献[71]通过最小化源图像和下采样目标图像之间的差异来学习其权重构建网络模型,从而产生清晰自然的图像。文献[72]提出了一种简单而有效的双重(即高分辨率和低分辨率)网络架构,该架构可有效利用高分辨率数据并直接生成高分辨率深度图。通过网络模型生成的深度图相当清晰,并且可以很好地处理细小物体和远处的物体。
3.2.2 弱监督超分辨率技术
研究人员尝试使用未配对的LR-HR图像学习具有弱监督学习的超分辨率模型,提出了弱监督超分辨率技术。Bulat等人[73]提出了一个两阶段的过程,首先训练HR到LR的GAN,然后使用未配对的LRHR图像来学习退化,通过应用两阶段过程,模型有效提高了实际LR图像超分辨率重建图像的质量。Yuan等人[74]提出了一个周期内超分辨率网络(cyclein-cycle generative adversarial network,CinCGAN),该网络由4个发生器和2个鉴别器组成,分别构成两个循环GAN来进行弱监督学习的超分辨率重建。该网络模型通过学习一个从源域到目标域的映射来进行图像的迁移,在没有任何配对训练数据集图像的情况下,捕捉一个图像集的特殊特征,并将这些特征转化为另一个图像集。通过实验对已有方法的定量比较,证明了该方法的极大优越性。
3.3 单图像超分辨率最新成果
超分辨率重建技术正在蓬勃发展,本节中主要通过以下三方面对目前具有代表性的最新超分辨重建技术的研究成果进行分类论述。
3.3.1 真实图像的超分辨率重建
大部分图像超分辨率在训练数据的选取上,往往是通过对HR图像进行简单且统一的降级来生成LR图像。但是,真实世界中LR图像的降级更为复杂,当其结果应用于实际场景时,在模拟数据上训练的SISR模型可能会变得无效。针对这一现实问题,现有许多学者开始倾向于研究基于真实图像的超分辨率重建。文献[73]首次聚焦于利用真实的HR获取自然的LR图像问题上,设计了一个基于GAN的High-to-Low网络从HR图像获取较自然的LR图像来模拟真实低分辨率数据。与以往的文章不同,作者提出GAN-Centered网络,即以GAN损失作为主导,Pixel损失作为辅导来优化网络得到较好的重建效果。为了提高深层超分辨率CNN对真实照片的泛化能力和鲁棒性,文献[75]提出了一种将模糊核模型引入到训练中的核建模超分辨率网络(kernel modeling super-resolution,KMSR),该方法在未知模糊核的照片上具有有效性。文献[76]通过调整数码相机的焦距来拍摄同一场景中的一对LR-HR图像,建立了一个真实世界的超分辨率数据集。此外文中提出了一种图像配准算法,用于在不同分辨率下逐步对齐图像对,并且建立了一个基于拉普拉斯金字塔的核预测网络,通过该网络模型可以有效地学习每像素内核以恢复HR图像,在现实世界场景上具有很好的效果。文献[77]从相机镜头的角度研究SR,即CameraSR,旨在缓解现实成像系统中分辨率(Resolution)与视场(field-of-view)之间的内在权衡。利用实际数据对常用的合成退化模型进行定量分析,用于在现实成像系统中促进现有的基于学习的SR方法。CameraSR能够进一步提高所捕获图像的分辨率。
针对SISR研究一直存在的问题,即在模拟数据集上训练的模型很难推广到真实世界的图像,基于真实图像的超分辨率研究能够很好地解决这一问题。但该研究也存在一些固有的缺点,例如训练难度较大和假设的过度完善[1],目前迫切需要解决此类问题。随着超分辨率重建技术在实际应用中的迫切需要,基于真实图像的超分辨率研究也将得到进一步的探索。
3.3.2 基于网络模型改进的图像超分辨率
针对许多典型的图像超分辨率网络模型,许多学者对其进一步研究并加以改进,取得了新的研究成果。GAN网络在超分辨率重建上的应用将超分领域推向了一个新的高度,随后基于GAN网络的超分辨率重建网络框架不断涌现。为了进一步增强图像超分辨率的视觉效果,文献[78]深入研究并改进了SRGAN网络模型,提出了一个增强型超分辨率生成对抗网络模型(enhanced super-resolution generative adversarial networks,ESRGAN),引入新网络结构单元RRDB(residual-in-residual dense block)。Residu借鉴相对生成对抗网络(relativistic GAN)进行预测,还使用了激活前具有更强监督信息的特征表达来约束感知损失函数。ESRGAN模型能够恢复更加真实自然的纹理,取得比SRGAN模型更好的视觉效果。文献[79]设计了一个可以在特征域中起作用的额外的鉴别器,在特征图中加入了对抗性损失,使得生成网络能够生成与图像结构相关的高频特征。针对现有的方法不能直接优化一些无差异的感知度量问题,文献[80]提出了带有排序器的超分辨率重建网络——RankSRGAN。用感知指标优化生成器并生成更加自然的纹理,同时所提出的方法可以结合不同SR的优势产生更好结果的方法。文献[81]提出了一种更客观地从感知损失中获益的新方法,优化了一个基于深度网络的解码器,并且该方法利用文章中提出的对象、背景和边界标签,在考虑背景纹理相似性的同时,估计一个合适的边界感知损失。该方法可以得到更真实的纹理和更清晰的边缘,并且在重建效果上展现了优良的性能。文献[82]提出了一种新的基于小波域样式传输的方法(wavelet domain style transfer,WDST),实现了比SRGAN更好的感知失真(perception distortion,PD)权衡。该方法在现有的SISR方法中实现了最佳的失真和感知质量的权衡。利用残差网络和反馈网络的优良特性,最先进的超分辨率重建研究也取得了一定的成果。文献[60]提出一种由几个具有长跳跃连接的残余组组成残差残差(residual in residual,RIR)结构,从而形成非常深的网络。此外,文中提出了一个通道注意机制,通过考虑信道间的相互依赖性自适应地调整信道特征。通过实验表明网络模型能够达到更好的重建精度和效果。注意到成对操作在各种图像处理任务中的有效性,文献[83]设计了一个可以将任意成对的操作插入其中的模块,并用这种模块实现一种称为“双重残差连接”新的残差连接方式。实验结果表明,所提出的具有正确选择的配对操作的网络展现了优良的性能。文献[84]提出了一种基于嵌入块残差网络的模型(embedded block residual network,EBRN)来实现图像超分辨率重建,该模型巧妙地使用图像频率分离思想从不同复杂度的子网络中恢复图像不同频率段的信息,克服了当前SR模型中存在的图像低频信息过拟合,高频信息欠拟合问题。文献[85]提出了一种利用反馈网络构建超分辨率重建网络(feedback network for image super-resolution,SRFBN),用高级信息通过反馈连接来细化低层次信息,所提出的SRFBN具有很强的早期重建能力,可以逐步创建最终的高分辨率图像。文中还引入了一种学习策略,以使网络能够很好地适应更复杂的任务,广泛的实验结果表明SRFBN方法具有很强的优越性。
基于网络模型改进的图像超分辨率研究成果不断涌现,极大地促进了超分辨率重建性能的优化。但目前大多数该类网络模型普遍存在网络架构相对复杂,参数量大,预测时间较长等问题。如何减少模型大小并加快预测速度,同时保持性能是一个重要问题,如果期望解决这些问题,轻量级体系结构就势在必行。
3.3.3 超分辨率重建研究领域拓展
随着超分辨率重建网络模型日趋完善,越来越多的学者对新的超分辨率重建领域开始探索。文献[86]首次针对深度超分辨率方法易受到对抗性攻击进行研究,从理论上和实验上对几种先进的超分辨率重建方法受对抗性攻击的鲁棒性进行了全面的分析,并探讨了攻击的可传递性,针对性攻击和普遍攻击的可行性。文献[87]使用SR技术来增强小型感兴趣区域(region of interest,RoI)的特性,提出了一种新的特征级超分辨率方法,对于小目标检测具有明显的改进效果。文献[88]提出了一种新颖的双重定向胶囊网络模型,利用胶囊层和卷积层的组合来学习有效的极低分辨率(very low resolution,VLR)识别模型,并且合并了两个新颖的损失函数,网络模型对低分辨率图像分类效果优良。文献[89]提出一种视差-注意力立体SR网络(parallax attention stereo superresolution network,PASSRNet),它将立体匹配结合到SR任务中,利用视差的注意力机制来建模立体图像的对应关系,取得了优良的性能。为了解决现有算法缺乏考虑实际应用的问题,文献[90]提供了一种快速、精确且轻量级的网络,在保证网络模型重建效果的同时大量减少网络参数和操作。针对大多数现有SISR方法只考虑一些特定的整数因子(X2,X3,X4…)的问题,文献[91]提出了动态预测每个尺度系数滤波器权重的Meta-SR网络,首次通过单一模型解决了超分辨率的任意缩放因子问题(包括非整数因子),通过大量实验证明了Meta-SR网络模型的优越性。
超分辨率重建研究领域的拓展带来许多超分辨率上的新成果,同时也实现了超分辨率领域的新突破。随着国内外研究机构和学者的不断探索,进一步的拓展研究成果也将会相继面世。
4 其他相关研究
算法整体模型不仅仅就算法本身的模型设计,其他与算法相关的模块也同样重要。本章中就超分辨率重建的其他相关研究进行论述,主要介绍了图像质量评价标准、公共数据集以及典型算法实验对比分析。
4.1 图像质量评价标准
常用的图像质量评价方法可分为主观评价方法和客观评价方法。主观评价方法是观察人员根据评价标准或者个人经验主观地对图像给出质量评价,常用的有主观平均意见分数法(mean opinion of score,MOS)和信息保真度准则(information fidelity criterion,IFC)。客观评价法是通过建立数学模型,对图像质量进行定量的评价,主要有均方误差(mean square error,MSE)、峰值信噪比(PSNR)、结构相似度(structural similarity,SSIM)等。
4.1.1 主观评价指标
主观平均意见分数法具有较高的使用率和可信度,然而也存在明显的不足,实验中需要邀请众多实验人员,因此时间成本较高。2005年Sheikh等人[92]基于原始参考图像与超分辨率图像之间的互信息提出了信息保真度准则,通过对图像进行小波变换,采用高频分量计算图像之间的相似性,用以衡量失真图像保留参考图像的信息,这种度量方式能够更好地匹配对高频信息更加敏感的人类视觉系统,虽然计算比较复杂,但是评价更加符合主观评测效果。
4.1.2 客观评价指标
均方误差是图像客观质量评价常用的指标,好处在于它的数学意义简明,计算方法方便易行,其缺点在于客评价值和主观评价的一致性较差。
峰值信噪比也是一个被广泛用来客观地评价重建图像失真程度的指标。PSNR基于两幅图像的均方误差来计算相似度,单位为分贝(dB),PSNR的值越大,则说明超分辨率的图像失真越少,效果越好。
自然场景下图像的物体往往具有很强结构特征,而这种结构特征与光照信息是相互独立的。结构相似度[93]通过结合图像的结构信息、亮度信息和对比度信息估计原始图像和失真图像之间的相似度,从这三个角度综合估计参考图像和失真图像之间结构相似度。SSIM值越大,效果越好。
4.2 公用数据集介绍
在表5中,列出了在基于深度学习的单图像超分辨率重建中常用的图像数据集。一些数据集已经被其使用者划分为训练、验证和测试集。然而,不同网络模型可以针对不同数据集划分进行训练,没有特别的规定。研究人员有时在数据集上任意划分,例如在文献[51]中,91 Timofte数据集被分解为24 800幅和ImageNet的395 909幅进行训练。另外,一些作者也结合多个训练数据集,例如文献[94]中的训练集291结合了数据集Timofte91和BSD 200,是训练文献[95-96]的最主流选择。
4.3 典型算法实验结果分析
实验对比最近邻域插值(Nearest)、双线性插值(Bicubic)、SRCNN、DRCN、ESPCN、SRGAN共六种典型的图像超分辨率重建方法,其中最近邻域插值、双线性插值是典型的传统超分辨率算法,其他四种为具有代表性的基于深度学习的单图像超分辨率算法。分别在Set5、Set14、BSD100三种常用的公共数据集上采用四倍放大因子进行测试,并采用PSNR、SSIM、MOS三种常用的评价指标对实验结果进行评估。实验结果如表6所示。
Table 5 Summary of common public datasets表5 常用的公用数据集汇总
表6分别列举了六种算法在Set5、Set14、BSD100测试数据集上的实验结果,针对不同的测试集,不同方法的表现各有差异。图6中的(a)、(b)、(c)对比了六种算法在PSNR、SSIM和MOS三种评价指标下的表现,其中PSNR和SSIM为客观评价指标,MOS为主观评价指标。此外,为了更为直观地反映各算法在重建图像方面的有效性,图7对六种算法的重建图像质量效果进行比较。由实验结果可以得出如下结论:
(1)对比实验数据表以及对比图,明显看出相比于传统算法,基于深度学习的方法在各种评价指标上的表现均优于传统算法,尤其是在图6(c)中的MOS主观评价指标上的提升最为明显,这是由于对于较大的放大因子,传统的算法很难重建出高频信息,而基于深度学习的方法却表现优良,这与网络模型强大的学习能力密切相关。
(2)SRCNN效果相对其他的网络稍差,但其作为神经网络在超分上的应用的开山之作,为后续的网络设计奠定了深厚的基础。三种评价指标上,DRCN的表现总体较好,这与其独特的层间链接信息共享结构有关。ESPCN也都展现出其优良的性能,表现也较为稳定,独有的亚像素卷积层在超分中有着重要的作用,同时ESPCN也在视频超分中有着很好的表现。
(3)SRGAN在PSNR和SSIM评价指标下的表现并不是特别突出,从图6(b)中可以看到,SRGAN在SSIM的评价指标上的表现并不具优势,这是由于SRGAN的生成器生成的图片为与真实图像相类似的“假”图像,其结构相似性与真实的高分辨率图像存在一定的差异,故SSIM评价指标上表现较差。但传统的超分辨率算法可以实现SRGAN的生成器,通过借助鉴别器网络可以避免输出图像过度平滑,使输出图像更加逼真,故SRGAN在主观评价MOS上的表现最好。从图7中也可看出SRGAN的重建图像具有良好的视觉特性,这也是生成对抗网络用在较大放大因子条件下最有价值之所在。
Table 6 Experimental results of 6 algorithms on different test data set表6 六种算法在不同测试数据集上的实验结果
Fig.6 Performance of different evaluation indicators of 6 algorithms on different test sets图6 六种算法在不同测试集上不同评价指标的表现
Fig.7 Comparison of experimental results using 6 algorithms图7 六种算法实验效果对比图
5 未来研究趋势探讨与总结
5.1 未来趋势探讨
尽管基于深度学习的单图像超分辨率技术取得了巨大的成功,但目前仍存在很大的发展空间。本节主要在现有研究成果进行调研的基础上,总结讨论该领域以下几点未来研究趋势:
(1)无监督学习的超分辨率技术的研究
由于图像在同一场景下不同分辨率的图像很难获取,因此插值法被广泛用于构建超分辨率数据集。目前主要的研究是有监督学习的超分技术,但实际上,有监督学习的超分与实际情况有所差异。相比之下,无监督学习的超分技术利用无监督的学习训练建立的模型更加符合实际,这对于现实需求具有很大影响,因此基于无监督学习的超分辨率技术研究具有很大的价值。
(2)特定领域的超分辨率技术研究
目前绝大多数的超分研究主要针对自然图像,虽然具有普适性,但同样也存在弊端,即面对特定的需求场景超分辨率效果存在很大缺失。随着智能交通、视频监控、光学文字识别等应用需求的增加,对特定某一类图像的超分辨率算法研究,例如针对人脸、文字、指纹、车牌或其他特定区域的超分辨率算法研究具有着重要的意义[21]。在这些专用场景中,具有较多的先验知识,将这些先验的知识与超分辨率的算法紧密结合起来,得到的输出图像质量可能会有较大提高,在实际应用中也更有意义。
(3)超分辨率算法与其他计算机视觉任务结合
超分辨率重建技术应用十分广泛,除了在实际清晰化场景中的应用,同样超分辨率重建技术可以和其他计算机视觉任务相结合产生好的结果。例如,低分辨率图像的识别分类、小目标检测上的应用等,对于此类应用目前也已有学者在进行探索研究。充分利用超分辨率重建技术改进其他计算机视觉任务,或者利用其他计算机视觉任务辅助图像的超分辨率重建这也将是一个十分重要的方向。
(4)算法改进方向研究
好的算法设计可以最大程度地利用图像先验知识,快速得到所需结果,产生好的重建效果。面对目前的算法在重建效果上存在的局限性,通过结合局部和全局信息,大型感受野提供更多的上下文信息,有助于生成更逼真的HR图像。它有望结合局部和全局信息,为超分辨率提供不同尺度的上下文信息;不同的背景图像关注超分辨率的不同信息。例如,风景图像可能更关注颜色和纹理,而动物身体区域可能更关注毛发细节。因此,结合注意机制来利用上下文信息,以增强对关键特征的关注,这有助于产生更加真实的细节信息;结合低级和高级信息,深层CNN中的浅层倾向于提取诸如颜色和边缘的低级特征,而较深层提取诸如对象身份之类的更高级别的表示。因此,将低级细节与高级抽象语义相结合可以对HR重建有很大帮助。
5.2 结束语
基于深度学习的图像超分辨率近年来取得了突破性进展。本文就基于深度学习的单图像超分辨率技术作出探讨,主要将其分为有监督学习和无监督学习的超分辨率技术,分别对其进行分析与论述,同时还讨论了超分领域其他一些相关的研究,最后就未来的超分研究进行展望。
基于深度学习的单图像超分辨率技术已经展现出了巨大的潜力,在未来很长一段时间内,超分辨率图像重建问题将是计算机视觉与图像处理领域的研究热点。伴随着多媒体大数据的发展,最终超分辨率技术会不断地发展与完善,图像超分辨率重建技术将会广泛应用于各个领域。