基于扩张卷积神经网络的图像超分辨率

摘要:

图像超分辨率(SR)由于其广泛的实际应用而引起了人们的广泛关注。SR的目的是从低分辨率图像重建高分辨率图像。利用深度学习方法,特别是卷积神经网络(CNNs)在计算机视觉领域取得的巨大成功,是利用CNNs解决SR问题的好方法。本文提出了一种具有跳跃连接的七层扩张卷积神经网络(DCNN),用于从插值低分辨率图像恢复高分辨率图像。扩展卷积允许我们任意地控制网络的视场(FOV)。据我们所知,这是第一次应用扩展卷积和跳过连接的图像超分辨率。我们探索不同的FOV网络通过调整伸缩率和不同组合的上下文信息使用跳过连接,以实现性能和速度之间的权衡。我们还设计了一个级联模型(CDCNN)来解决不同的放大因子问题。与现有方法相比,实验结果表明所提出的模型在定量和定性测量方面都取得了显著的改进。

关键词:

超分辨率;卷积神经网络;扩张卷积;跳过连接

1.介绍

高分辨率(HR)图像可以提供更多细节,可能在各种实际应用中发挥关键作用。例如,HR医学图像,例如HR计算机断层扫描(CT)和HR磁共振成像(MRI),对于医生做出正确的分析或诊断非常有帮助,并且如果提供了HR视频监控,识别罪犯的脸部或汽车的牌照的任务可能更容易。然而,由于实际成像技术的局限性或成本较高,并不总是能够满足实际需求的HR图像。超分辨率(SR)的目标是通过基于关于成像过程的合理假设或先验知识,推断所有丢失的高频内容,从一个或多个低分辨率(LR)图像中恢复原始的高分辨率(HR)图像。

逆过程通常是不适定的问题,因为具有重建约束的解决方案不是唯一的。已经提出了许多方法来解决反演问题。根据理论基础的不同,现有的SR方法分为[1]中的三类:基于插值的方法,基于重建的方法和基于学习的示例方法。基于插值的SR方法[2],[3]通常利用不同的核函数或平滑先验,简单而快速,但这种类型的SR方法缺乏生成的HR输出中的细节,并且容易产生模糊纹理和边缘的细节。基于重建的SR方法[4]、[5]基于成像退化模型,通常利用各种平滑先验和约束条件来求解HR图像的上采样、去模糊和去噪的不适定反问题。基于插值和基于重建的技术在非光滑区域(例如纹理和边缘)的重建精度方面仍然笨拙。

为了提高图像SR的重建精度,最近的现有技术方法大多采用基于实例的方法。这些方法或者基于跨越不同尺度的自相似结构来制定LR和相应HR特征空间之间的编码系数,或者直接从低分辨率和高分辨率示例对中学习映射函数。杨等人[6]提出了一种稀疏编码算法,用于从一对低分辨率和高分辨率的学习词典构建HR图像。受到卷积神经网络(CNN)在计算机视觉任务中取得的巨大成功的启发,Dong等人[7],[8]提出了一种用于图像SR的CNN模型(名为SRCNN),该模型利用具有端到端训练的浅层3层CNN来直接学习映射函数,并取得了良好的性能。SRCNN有两个原因可以提供卓越的性能。一种是使用端到端训练,另一种是在[6]中使用比9×9更大的感受野大小(13×13)。因此,它表明可以通过增加CNN模式的视野(FOV)来提高SR精度。放大FOV的一种简单方法是堆叠更多层以设计更深的CNN模型。但是,在CNN模型中简单地堆叠更多层并不能提供更好的性能,这已经在[8]中进行了研究。在本文中,由扩张卷积[9],[10]的特点驱动,允许我们通过调整输入步幅任意控制CNN模型的FOV,提出了一种带跳跃连接的扩张卷积神经网络(DCNN)用于图像超分辨率。为了应对不同的放大因子,为所需的比例因子训练不同的SRCNN模型是耗时的。在本文中,我们还提出了一系列DCNN(命名为CDCNN)来实现任意因子的SR,这在SRCNN的恢复精度和人类感知方面都取得了显著的进步,如图1所示。第一行是原始图像和相应的感兴趣区域(ROI)。其余三行中的每一列分别是根据双三次插值方法、SRCNN 9-5-5ImageNet模型和我们提出的CDCNN得到的ROI结果。CDCNN生成具有稀有伪影的锐利边缘,并且在主观视觉评价和PSNR指数方面即使在大比例因子下也最接近真是数据。注意,对于特定的上采样因子,利用相应的SRCNN模型来恢复SR图像。然而,CDCN的三个不同的放大结果仅通过使用CDCNN模型来实现。CDCNN的详细信息在第4.5节中给出。

2.相关工作

2.1.图像超分辨率

在图像处理中已经深入研究了图像SR问题。图像SR的目标是从LR中重建HR图像。为了提高图像SR的重建精度,最近的现有技术方法大多采用示例学习方法。作为统计学习模型,高斯过程回归(GPR)已成功应用于图像SR。He等人[11]提出了一个基于GRP的两步SR模型,称为SRGPR。该模型依次进行SR重建的上采样和去模糊。首先,SRGPR对由LR图像的每个3×3块形成的预测器 - 目标训练对运行学习算法,并组合基于块的结果以给出上采样的估计图像。在模拟模糊处理之后,它细化估计的图像以获得HR图像。该流水线需要两次学习和优化编码系数以产生LR图像的HR图像。特别地,从LR图像及其模糊图像捕获的训练集在第二步骤中被放大两次,并且计算成本太耗时。为了降低计算复杂度,Wang等人[12]提出了一种用于SR重建的自学框架NGPR,它允许不同的网格采样间隔在质量和效率之间进行权衡。

最近,深度卷积神经网络(CNN)[13]是一种流行的机器学习方法,并且最近引起了极大的关注,主要是由于它在各种视觉识别问题上的成功,例如非盲去卷积[14],[15] ,去模糊[16],图像分类[17],[18],[19],[20]和物体检测[21],[22]。对于人体姿势恢复,Hong等人[23],[24]提出了融合多个特征空间的多视图超图低级表示(MHLRR),并利用深度自动编码器架构学习了从2D图像到3D姿态的非线性映射,有效地减少了恢复误差。使用手工制作的特征对高光谱图像进行分类具有挑战性,Yu等人[25]训练了一个6层CNN架构,采用1×1卷积层,丢失技术和全局平均汇集层,以提高其对高光谱图像分类的判别能力。在医学领域,Qayyum等[26]模拟CNN提取医学图像的特征以进行检索任务。在视觉问答(VQA)中,Yu等人[27],[28]通过提出多模态因子化双线性池(MFB)来融合多模态特征,并利用KL散度作为损失函数训练深度神经网络架构以共同学习注意力,从而实现了卓越的VQA性能对于图像和问题。

由于CNN允许LR输入和HR输出之间的所有模型组件的端到端训练,因此基于CNN的SR方法表现出优异的性能。崔等人[29]采用深度学习技术逐层逐层升级低分辨率图像,直到所需的图像比例。董等人[7],[8]提出了一种称为SRCNN的图像SR的CNN模型,该模型利用三层完全卷积网络直接学习从LR补丁到HR补丁的非线性映射,并获得最新的SR性能。增加CNN的深度可以提高视觉任务的性能。如图像复原,毛等人[30]采用卷积层和反卷积层之间的对称跳过连接来训练非常深的残差编码器 - 解码器网络,用于图像去噪,图像超分辨率,JPEG去块和图像修复。Kim等人[31]提出了一种具有迭代监督和跳跃式传递(跨越传递)(其效果是为了防止网络层数增加而导致的梯度弥散问题与退化问题)的深度递归卷积网络(DRCN),并取得了视觉上令人满意的结果。为了缓解由每像素损失函数引起的过度平滑问题,Ledig等人[32]提出了具有感知损失函数的生成对抗网络(GAN)[33]。约翰逊等人[34]建议使用预训练的16层VGG网络[18]作为感知损失函数。然而,为了应对不同的放大因子,通常需要从头开始训练不同的CNN模型以获得所需的比例因子。王等人 [35]结合稀疏编码和深度学习技术的领域专业知识来设计基于级联稀疏编码的网络(CSCN)。 CSCN不仅解决了任意比例因子问题,而且还实现了重建精度的显着提高。

2.2.计算机视觉中的扩张卷积

扩张卷积被称为“ATrry卷积”,并已发展为小波变换[36 ],[37 ]。与纯卷积网络相比,利用扩张卷积以指数方式扩展网络的接收域并增加线性参数是一个很好的想法。池化操作是以指数方式增加网络视野(FOV)的另一种策略[38],然而,然而,它丢失了大量的上下文信息,并且需要诸如反卷积或上采样之类的其他操作来获得具有相同输入维度的输出。相比之下,扩张卷积不仅有效地扩大了网络的视野(FOV),而且可以保持特征映射的大小不变。为此,扩张卷积在注重从更广的输入视图以较少的成本集成更多上下文信息的应用程序中高效地工作。为了解决稠密预测问题,Yu和Koltun[9]提出了一种新的卷积网络模型,它利用扩张的卷积来合并多尺度上下文信息,从而提高了现有语义分割系统的精度。陈等人[39],[40]提出了一种“深度实验室”系统,它使用“异常卷积”作为控制CNN内计算的特征图分辨率的有力工具,并为PASCAL VOC 2012中的语义图像分割任务设置了新的技术状态。

直观地,通过在稠密预测任务中利用更大的上下文信息可以获得更好的性能,例如SRCNN [8]具有13×13的感受野并且获得令人鼓舞的重建精度。“DeepLab”系统集成了多个扩张速率,以扩大网络的FOV,并实现语义分割任务的进一步提升。受到扩张卷积在语义分割中所取得的成就的启发,提出了一种新的扩张卷积神经网络(DCNN)用于图像超分辨率。与先前基于CNN模型的方法相比,所提出的DCNN在图像SR上产生了不错的性能。虽然学习先验的过程是耗时的,但是该技术的一个显着优点是该过程只能离线计算一次,然后训练的模型可以在SR应用中有效地执行。

3.方法

图像超分辨率的目的是从低分辨率输入图像ILR重建高分辨率图像ISR。这里ILR从相应的原始HR图像IHR降低分辨率。值得注意的是,估计的ISR与相应的IHR具有相同的维度,并且预计与其高度相似。为了从IHR产生ILR,通过将高斯滤波器应用于IHR然后将图像下采样r因子来获得ILR。通常,图像可以具有C颜色通道,因此ILR可以被描述为尺寸为H×W×C的实值张量,并且IHR是rH×rW×C。

为了解决图像超分辨率问题,我们提出了具有跳跃连接的7层扩张卷积神经网络(DCNN),如图2所示,用于从ILR的插值版本重建ISR。对于所提出的DCNN,每个层可以描述如下:

其中l∈[2,3,4,7]在方程式(2)中。 Θ= {Wi,bi}是可学习的网络权重和偏差,其中Wi是第i个卷积层的权重,bi是相应层的偏差项,并且i∈[1,2,3,4,5,6,7]。 fi(Wi,bi)是DCNN中第i层的输出。 权重Wi是大小为ni-1×ni×ki×ki的2D卷积张量,其中ni是第i层的特征映射的数量,ki是层i的滤波器大小,并且n0 = C. 偏置bi是长度为ni的向量。 联合运算符⋃在方程式中使用。(3)和(4)表示在指定的轴上连接输入。 函数σ(•)是一个非线性激活函数,它应用于每一层的元素方面。

                                                 

图2.提出的扩张卷积神经网络(DCNN),由七个具有不同扩张率的卷积层和两个由黄色箭头指向的跳跃连接组成

3.1.有效扩张卷积层

近年来,深度卷积神经网络(CNN)在计算机视觉领域取得了巨大成功。影响CNN在许多视觉任务中的表现的关键因素之一是网络中某个层中的单元的视场(FOV)或感知场。为方便起见,我们在此探索一维(1D)离散信号。考虑到内核大小为k = 3且步幅大小为s = 1的双层1D标准卷积网络,很容易看出第一层中每个单元的FOV为3,第二层中的FOV为5,如图所示图3(a)。对于完全标准的卷积网络,其仅由具有核大小k的卷积层组成,每个单元的FOV的大小是k +(l-1)×(k-1),其中l是卷积层的索引。因此,单位的有效感受域只能与层线性增长。扩张卷积允许我们以指数方式扩展感受域而不增加网络参数的数量。图3(b)显示了1D扩张的卷积网络,其由两个扩张的卷积层组成,其核大小为k = 3。第一层中的膨胀率是d = 1,并且第二层中的d = 2。可以看出,第一层中的有效内核大小ke仍然等于3,然而,在第二层中ke已经被放大到5.第一层和第二层中的单元的FOV是3和7 , 分别。有效内核大小ke可以如下获得:ke = k +(k-1)(d-1)。因此,当膨胀率呈指数增长时,ke相应地以指数趋势增长,这将导致网络FOV的指数增长。

                                                        

图3.(a)1D标准卷积模型和(b)1D扩张卷积模型的视场(FOV)。 两个模型在每一层利用内核大小k = 3并且步幅大小s = 1。 d表示膨胀率。 对于标准卷积,扩张率d固定为1。

对于一维离散信号,扩张卷积算子可以定义为:

其中y[i]是具有长度为K的滤波器w[k]的一维输入数据x[i]上的扩展卷积的输出。扩展速率d对应于用于采样输入数据的步长。从方程(5)可以看出,标准卷积是扩张率D=1时扩张卷积的一种特殊情况。因此,在CNNs中使用扩张卷积将不会增加计算量。

3.2.激活函数

在CNN模型中,卷积层通常包括卷积运算和激活函数,其负责非线性地变换输入数据。 无参数整流器线性单元(ReLU)[41],定义如下:

结果发现,与经典的函数,如:sigmoid,或双曲正切[17]相比,训练速度更快,性能更好。然而,当单元不活动时,ReLU的梯度为零,这可能损害梯度流动以及随后的权重调整。为了避免零梯度,我们使用称为参数整流线性单元(PReLU)[42]的替代非线性来处理它,该非线性单元在函数的负部分引入一个小斜率。PROLU定义为:

其中α是可学习的参数。 当α很小并且固定时(例如,α= 0.01),PReLU变为Leaky ReLU(LReLU)[43]。 在LReLU中非常仔细地选择固定值α(通过交叉验证)可以产生比ReLU更好的结果,但需要繁琐的重复训练[42]。 PReLU改进模型拟合,几乎没有额外的计算成本和过度拟合风险,特别是当系数α由一层的所有通道共享时。 值得注意的是,PReLU仅在通道共享情况下向每个层引入一个额外参数。 参数α可以通过端到端训练学习,这将导致更专业的激活并获得更好的结果。

3.3.训练

给定由数据真值HR图像{IHRn}及其对应的插值LR图像{ILR n},n=1...N组成的训练集,我们的目标是找到能够精确估计值ISR=f(ILR)的最佳映射函数f(·)。在SR任务中,均方误差(MSE)通常被用作训练网络的目标函数。对于DCNN模型,我们有损失函数:

其中Θ是网络参数,Θ= {Wi,bi,αi},i∈[1,2,3,4,5,6,7]。 Wi是第i个卷积层的权重,bi是每个层的偏差项,αi是第i层激活函数PReLU的系数。为了通过端到端训练获得最佳映射函数f(·),需要通过最小化损失函数(8)来优化网络参数Θ。使用Adam [44]算法使损失最小化,该算法与局部最小值方向上的梯度的负值成比例地采取步骤,并且包括“自适应低阶矩估计”以加速收敛。在训练阶段,β1= 0.9,学习率总是等于10-4,小批量大小为128.卷积滤波器从零均值高斯分布中随机初始化,标准偏差为0.01(对于偏差为0) )。所提出的模型DCNN使用N对高分辨率图像和低分辨率图像{IiHR,IiLR}的数据集进行训练,其中IiHR表示高分辨率地面实况图像,IiLR是相应的内插低分辨率图像。高分辨率和低分辨率色块的大小设置为32×32像素,这可以在计算效率和小批量多样性之间提供良好的折衷。虽然训练图像尺寸是固定的,但CNN模型可以在测试期间应用于任意尺寸的图像。

3.4.DCNS级联

显然,当从低分辨率(LR)图像直接处理流水线时,恢复高分辨率(HR)图像(例如,r=4)比恢复低分辨率图像(即,r=3)更具挑战性。因为当缩放因子增加时,丢失详细信息的趋势越来越大。为了在图像超分辨率复原处理中尽可能地从LR图像中估计出细节信息,将复原流水线分解为两个或多个步骤是可行的。例如,为了获得大的放大因子(即4x)HR图像,可以通过将4x内插的LR图像馈送到所提出的DCNN来直接对其进行处理。有另一种方式来实现它。首先,利用放大因子2从LR图像中得到临时输出,然后对临时图像再次进行放大,并将其反馈给DCNN,得到结果。在图4中示出了具有R=4的四个超分辨率流水线之间的比较。从比较结果可以看出,使用级联的DCNNs可以优于单DCNN。因此,级联的DCNNs(命名为CDCNN)被设计来提高SR性能。级联的管道在图5中示出。在DCNN处理之前,采用双三次或反卷积来提高分辨率。为了处理任意的放大因子,LR图像可以重复地用因子2进行放大,直到它至少与期望的大小一样大。然后,采用双三次插值的降尺度将其调整成目标分辨率,如果必要的话。例如,为了处理3x尺度,用因子2对LR图像进行两次放大,然后使用双三次插值的缩放来将其大小调整到3x尺度。

                                                       

图4.不同放大方法与放大因子4的比较。(a)由双三次插值放大。(b)依次用DCNN和双三次处理,放大倍数为2。(c)一次使用DCNN。(d)利用两个DCNNs级联操作。

                                            

                                               图5.DCNN级联的流水线。在将LR图像馈送到DCNN之前,需要进行上采样。

CDCNN可以被视为用于多任务的深度卷积网络,其中每个DCNN的输出是不同的缩放HR图像。 为了构建级联,除了叠加几个单独训练的DCNN以最小化目标函数(8)之外,还可以通过端到端训练来优化它。 根据MSE成本,可以给出多尺度损失函数:

其中,L(Θ)是CDCNN的总损耗,i表示在流水线中堆叠的DCNN的数量,IjLR表示总共放大2j的第j个DCNN的输入图像,IjHR是相关联的地面真值图像。CDCNN适合于处理任意比例因子并获得令人满意的性能。然而,当比例因子大于4时,训练是耗时的,因为CDCNN由三个以上的DCN组成,在这种情况下,它将是一个深度卷积网络。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值