基于小波域的深度残差网络图像超分辨率算法*

2019-05-20 06:56段立娟武春丽乔元华张韵东陈军成
软件学报 2019年4期
关键词:小波残差分辨率

段立娟,武春丽,恩 擎,乔元华,张韵东,陈军成

1(北京工业大学 信息学部,北京 100124)

2(可信计算北京市重点实验室,北京 100124)

3(信息安全等级保护关键技术国家工程实验室,北京 100124)

4(北京工业大学 应用数理学院,北京 100124)

5(数字多媒体芯片技术国家重点实验室(北京中星微电子有限公司),北京 100191)

1 引 言

在图像处理领域,为了获得更高分辨率的图像,通常采用超分辨率方法来重建低分辨率图像的细节信息.一般来讲,超分辨技术(super-resolution,简称 SR)是指从一副或者多幅低分辨图像重建出高分辨图像的数字图像处理技术.单幅图像超分辨率(single image super-resolution,简称SISR)的重点在于如何从一张低分辨率图像重建出高分辨率图像的局部细节.该问题已经发展成为图像处理领域一个重要的研究方向[1].因其可以恢复一些高频细节,该技术被广泛应用于需要大量细节信息的图像处理领域,如医学成像[2]、卫星成像[3]、人脸认证[4-8]以及公关安全监控领域等等.

基于实例的 SR方法通过使用大型图像数据集学习从低分辨率(low resolution,简称 LR)图像到高分辨率(high resolution,简称HR)图像的映射,已经证明能够达到较好的效果.许多机器学习算法,包括字典学习[9]、局部线性回归[10]和随机森林[11]等都被应用到这个领域中.近些年来,基于卷积神经网络(convolutional neural network,简称 CNN)的方法,凭其强大的学习能力被广泛应用于计算机视觉任务之中,在目标识别、分割、光流和超分辨率领域,均取得了卓越的进步.尽管基于卷积神经网络的图像超分辨率方法较传统方法取得了较大的突破,但仍存在许多问题.大部分现有的 SISR方法[12-19]的训练过程是在图像空间中依靠逐像素均方误差的方式使网络输出尽可能地接近HR图像,但这种方式趋向于产生模糊和过平滑的输出,缺乏细节信息.而且,目前的工作只适合一些小且特定的缩放系数(如x2或者x4).因此,SISR问题仍然有待进一步的探究和发展.

小波变换已被证明是一种高效的特征提取算法,常被用来重现和存储多分辨率图像[20].如图1所示,它可以表示一张图像在不同水平上的上下文和纹理信息.空间小波系数本身是稀疏的,因此,它能够使网络学习更加容易.

Fig.1 The example of Haar wavelet transform图1 Haar小波变换示例

DWSR[21]利用小波变换的方式将重建HR图像转变为推断HR图像一系列相关的小波系数.该方法在与当前最优算法超深度超分辨率网络(VDSR)效果相当的情况下,实现了更简单的运算量和更快的速度.本文提出的方法在此方法的基础上加以改进.在输入方面,为减少计算量从而实现LR到HR的实时处理,本文直接将LR图像作为网络的输入.在网络架构方面,本文设计的框架分为3部分.特征提取网络、推理网络和重建网络.为了更好地捕捉上下文之间的信息,以及更好地推断出缺失的细节,特征提取网络采用残差块相连的方式[22],同时将每个残差块的输出进行跨连,作为推理网络的输入.此外,网络最终输出的小波系数个数(即网络最终输出的通道数)不再是固定值,而会随尺度而发生改变.在损失函数方面,本文不仅只考虑小波系数之间的残差损失,同时考虑最终经过小波逆变换后的SR图像与HR图像之间的残差损失,进行双重约束,实现更优的效果.

本文第1节对解决单幅图像的超分辨率问题的方法进行概述和总结,并简单概述本文方法的基本思想.第2节对已有的基于卷积神经网络的超分辨率方法进行总结.第 3节具体描述本文方法的框架和损失函数的设计.第 4节展示本文方法与其他相关方法在不同数据集上的结果对比,总结本文方法的优势和不足.第 5节对本文进行总结,并对未来值得关注的研究方向进行初步探讨.

2 相关工作

从观察到的低分辨率图像推测合成的高分辨率图像是典型的病态逆问题.现有的算法可以根据技术手段分为两类:基于重建的方法和基于学习的方法[23].传统学习模型的特征提取和表达能力有限,很大程度上限制了图像超分辨率重建效果的大幅度提升.而近年来基于深度学习的方法因其具有从大规模数据中学习知识的强大能力被引入到解决SR的问题中.

随着基于深度卷积神经网络在高视觉水平任务上的迅速发展,大量基于CNN的方法也被应用到计算机低视觉水平的任务中,如图像超分辨率、图像去噪等.SRCNN[12]是首个将卷积神经网络引入到图像超分辨率重建领域的神经网络模型.其网络结构由 3个卷积层组成,分别代表图像块的特征提取、表示和重构.通过引入卷积神经网络,该方法显著提高了传统方法的重构进度.虽然 SRCNN运作良好,但仍存在缺乏语境信息、单一尺度放大以及收敛速度慢等问题.为了解决这一问题,有研究者提出具有深层次网络的 VDSR[14](超深度超分辨率网络).该方法基于用于图像分类的VGG[24]网络结构设计,通过训练HR和LR图像之间的残差,并使用更高的学习速率来加速收敛.同时,通过权重共享,实现网络参数较少且重构性能较好的图像多尺度放大.此外,DRCN[15]在VDSR的基础上增加递归连接,实现图像层之间的信息反馈以及上下文信息关联,进一步提升效果.同时,将模型压缩成5层,降低训练难度.

上述方法均利用卷积神经网络学习MR图像(middle resolution image)到HR图像的映射,其中,MR图像是通过对LR图像利用双三次插值的方法进行上采样获取的.为了实现从LR到HR的直接映射,FSRCNN[14]利用反卷积层替代 SRCNN模型中双三次插值的操作.在移除上采样的操作之后,该模型可以学习从低分率图像到高分辨率图像的直接映射,同时实现超过 40倍速度的提升.FSRCNN模型仅包括卷积层和反卷积层,其中卷积层对于不同的放大倍数共享卷积层的权重,因此,FSRCNN能够利用一个单独的模型处理不同的尺度.ESPCN[17]是在FSRCNN的基础上设计sub-pixel卷积层实现上采样的操作,该方法有效地减少了总计算复杂度,能够合成一个没有棋盘伪像的干净图像.LapSRN[19]是最近提出的单幅图像超分辨率方法之一,该模型包括一个基于拉普拉斯金字塔的特征提取和图像重建部分的级联框架,并且使用Charbonnier损失函数代替L2范数损失函数,取得了较好的超分辨率重构效果.

上述基于卷积神经网络的超分辨方法针对图像的空间域进行处理,目的是将像素值直接作为网络输出进行重构,这通常会使结果趋向于模糊和过平滑.为了解决这一问题,PLSR[25]将感知损失代替逐像素差损失,进而优化超分辨率网络,以保证获取更多的语义信息.该策略虽然未能在 PSNR指标上取得较好的效果,但在视觉上更加逼真,能够带来更多好的细节和边缘.SRGAN[26]在PLSR的基础上,将感知损失和GAN模型相结合,生成更真实和锐利的图像.该方法利用GAN中的Generator网络生成高分辨图像,再由Discriminator网络进行判断,最终得到满足条件的高分辨率图像.但是该方法提出的基于VGG分类网络的感知损失不能够精确地捕捉超分辨率任务中必要的细节信息.于是,SRPGAN[27]提出一种基于GAN模型中Discrimination网络的感知损失,并且使用Charbonnier损失函数.该方法重建的超分辨率图像更加锋利和逼真.

综上所述,目前解决该问题主要有 3种思路:第一,设计不同的网络架构去重建高分辨率图像;第二,利用感知损失和 GAN生成模型生成更真实和锐利的图像;第三,考虑在变换域的情况下处理该问题.小波变换将提供的图像内容“过程”和“细节”分离的特性,与输入 LR图像恢复图像细节的超分辨率问题具有一定相似性.因此,本方法考虑变换到小波域进行超分辨率重构.目前已有一些基于小波的方法解决超分辨率问题.但其中大部分集中在多幅图像的超分辨问题,这些方法[28-31]利用多帧低分辨率图像推断出高分辨率图像缺失的细节.针对单幅图像超分辨问题,虽然也有一些小波域的插值方法被研究,但其训练有限和预测程序简单,不足以处理普通输入图像,其SR结果也远差于基于深度学习的超分辨率方法.

DWSR[21]是首个在小波域下利用深度卷积神经网络结合低频和高频信息子带之间的互补信息的方法.该方法把重建高分辨率图像的问题转换为推理一系列小波变换系数,这样产生的图像边缘具有更少的伪像.该方法采用的网络是由一系列相同大小的卷积层直接连接而成,缺乏层与层之间的信息融合,而且没有考虑尺度与小波分解级数之间的对应关系,所有尺度经过最终网络训练后的结果都是尽可能地接近HR图像与MR图像一级小波分解系数之间的残差.为了更好地捕捉上下文之间的信息,并推断出更多缺失的细节,本方法在DWSR[21]的基础上作了进一步的改进,直接将 LR图像作为网络的输入,并且设计更为合理的网络结构.此外,本文提出的网络结构输出的小波系数个数不再是固定值,而是随着尺度的变化而发生改变.

3 基于小波域的深度残差网络模型

本文提出的基于小波域的深度残差网络,将小波变换的思想与深度残差网络相结合,并结合图像空间损失和小波系数损失,对网络训练加强约束.该模型应用于图像超分辨率重构问题,能够将图像各个层次的特征分隔开来进行训练,捕捉更多缺失的细节信息.

3.1 小波变换

图1显示二维小波变换的结果,可以直观地看出,如果把变换后第1个小波图像表示为LR图像,那么其他的小波图像就是想要得到的缺失的细节.因此,本文将小波变换引入到 SISR问题当中.本文方法的重点在于强调小波变换对于超分辨率重建问题的有效性,因此,选择最简单的哈尔小波即可满足实现描述不同频带信息的要求,当然也可以使用其他的小波.将 HR图像利用哈尔小波变换为一系列尺寸相同的小波图像作为神经网络的训练目标.如图2所示,更高水平的变换就是循环地进行低通滤波和高通滤波以及下采样的操作.

Fig.2 The procedure of 1-level 2D DWT图2 1级二维小波变换过程

3.2 网络架构

本文提出的方法基于空域到小波域的变换来实现超分辨率图像的重建.为了更加有效地提取特征并降低运算的复杂度,本文直接将LR图像作为网络的输入,最终映射到HR图像的小波域下.从LR到最终重建HR的整个过程其实是多个网络,但是我们把这多个网络当作一个网络进行统一、有效的学习.整个网络的学习属于多阶段,利用推理网络输出的一系列小波图像属于第1阶段,第2阶段是根据第1个阶段的结果进行小波逆变换,得到最终的超分辨率图像(SR).最后将小波系数的损失和图像空间像素的损失一起以梯度的形式反传回整个网络进行更新.如图3所示,本文提出的神经网络结构包括特征提取网络、推理网络和重建网络3部分.其中,特征提取网络从低分辨率图像中提取特征,推理网络则将提取的特征表示为一系列HR图像与对应MR图像小波系数的差异,重建网络利用小波逆变换重建 SR图像.为了捕捉更多缺失的细节,本文利用小波系数和图像空间像素的两种损失构建一个鲁棒的损失函数来计算SR与HR的相似度,从而优化本文提出的神经网络.在第3节中将会详细阐述损失函数.

Fig. 3 Overall framework. The two parts corresponding to the two-way arrow are used to calculate the loss during network training图3 总体框架.其中双向箭头对应的两部分在网络训练时进行损失计算

3.2.1 特征提取网络

特征提取网络将 LR图像作为输入,通过神经网络前向传播表示为一系列特征图.特征提取网络由多个残差块级联构成.其中,残差块由两个具有相同核大小以及过滤器数目的卷积构成,其输出是由输入和经过连续两个卷积之后的结果相加构成.每个残差块作为一个单元,每个单元的输出都被传递到下一个单元,并同时进行跨连作为推理网络的输入.所有的卷积层共享相同的核大小:3×3.而为了保持特征图的大小与输入一致,将步长(stride)和边缘填充(pad)都设置为 1.同时,为了获取更多、更丰富的信息,卷积层过滤器的数目随着网络的深入不断增长.

3.2.2 推理网络

推理网络将特征提取网络的输出作为输入,但因其维度比较大,所以使用 1×1的卷积实现减少特征维度的目的.同时,为了保证推理出的小波图像与 LR图像具有相同尺寸,对推理网络中所有卷积层参数的设置与特征提取网络保持一致,即卷积核大小设置为 3×3,步长和边缘填充设置为 1.因为小波分解系数的高度独立性,所以无需考虑通道之间的关系.不同尺度网络最终输出通道的个数是缩放倍数的平方,每个通道表示一一对应的小波图像.如图3所示,将网络最终的输出与MR图像的小波分解系数相加,然后通过小波逆变换转换到原始图像空间.正如典型的残差学习网络一样,本文提出的模型也致力于学习残差输出.因为不同尺度的小波变换图像尺寸是不同的,其对应网络最终输出的通道数也是不同的,所以需要学习多个网络.但是,不同尺度图像的训练只有最后一层卷积的参数设置有所不同,其他卷积层对于不同尺度共享权重,因此只对一个尺度的网络从头开始训练,其他尺度在已训练好的模型上进行微调即可.

3.2.3 重建网络

重建网络是将推理网络的输出与 LR经上采样和小波变换后的结果相加作为输入,利用小波逆变换,将一系列小波图像生成对应的一张超分辨率图像,得到最终的结果.依据中间结果(一系列的小波系数)和最终SR图像,本文提出一种灵活且约束能力更强的损失函数去优化网络,它由小波系数损失和图像空间像素损失两部分组成,总的损失函数被定义为

其中,λ和1-λ分别代表小波系数损失和图像空间损失的权重,具体细节会在第4节加以详细说明.

小波系数损失.本文设定输入LR图像为x,标签高分辨图像为y,输入LR经双三次插值上采样后的MR图像为yb,θ是待优化的一系列网络参数.通用单幅图像超分辨率网络旨在学习给定低分辨率输入x与高分辨率图像y之间的映射关系.而本文方法提出的网络结构是学习低分辨率输入x与高分辨率图像y小波变换后系数之间的关系,网络的输出尽可能地与对应高分辨率图像小波分解后的系数接近.本文定义缩放系数{r,r≥2}、小波变换的级数为m以及变换后小波系数的个数为WN,它们之间的映射关系为.

同时,将图像y和yb进行小波分解后的系数分别表示为

两者分解后系数的差异(即残差)可计算为

式(2)的结果为神经网络致力于学习的目标,即fθ(x)~.在图像空间里最常用的损失函数是对 HR图像和 SR图像逐像素进行均方误差操作.本文同样采用这种方式,不同之处是对图像对应的小波系数进行这一操作.即:

其中,n为batchsize的大小,i代表批处理图像中的第i张图像,j为小波系数序列中的第j个系数.

图像空间损失.本文提出的神经网络结构学习到的是MR图像与HR图像小波变换后系数之间的差异,将输出的结果经过小波逆变换即可得到学习到的残差图像IΔSR,即:

在得到残差图像后,与原始输入图像经过双三次插值上采样后的 MR图像yb相加即可得到最终的超分辨图像ISR:

考虑到之前图像空间的损失计算,为获取纹理与平滑之间的一个平衡,在小波系数损失的基础上,添加原始图像空间的损失,计算图像空间的残差损失.

其中,n和i的含义参考公式(3).

4 实验结果及分析

本文使用D2VIK数据集中的800张图像作为训练集,其所有图像至少有一个轴上存在2K像素(垂直或水平).本文采用 64的步长将数据集切割成大小为 128×128的图像块,获得大约 50万左右的切块用于网络训练.在批训练中,每次随机选择 256个高分辨图像块作为标签,利用双三次内核插值法进行下采样获取低分辨率图像块,作为网络的输入.

对于测试集,本文对 5个公共基准数据集进行了实验:SET5[32]、SET14[33]、BSD100[34]、URBAN100[35]和MANGA109[36].SET5、SET14和BSD100数据集中的图像由自然场景组成,URBAN100数据集包含具有挑战性的城市场景图像以及不同频段的细节,MANGA109是日本漫画的数据集.

4.1 训练细节

在训练时,本文将 HR图像对应的小波系数作为训练标准,其中小波分解级数通过与缩放系数的映射关系来获取.然后对每一次迭代后的结果利用公式(1)进行损失计算.同时采用ADAM的优化器(参数设置:β1=0.9,β2=0.999)更新权重和偏置.学习率lr初始化为2e-4,并将学习率衰减因子设置为0.005.网络的输入可以是单通道的灰度图或3通道的彩色图像,本文网络的训练选择后者.如表1所示,特征提取网络由3个残差块组成,其中过滤器数目从64~256依次呈二倍增多.特征提取网络融合的特征经过1×1卷积实现降维,作为推理网络的输入.推理网络同样由3个残差块组成,与特征提取部分相反的是,过滤器数目从256~64依次呈2倍减少,最后再经过一个卷积获取指定的通道数3×r2(r是缩放倍数).

同时,开始时先利用单个的损失函数进行训练,即(λ=0)和(λ=1),通过训练好的结果来设定权重,获取最优的参数选择.最终,设定参数为λ=0.99.

Table 1 The specific settings of the network parameters proposed by this method表1 本文方法提出的网络参数的具体设置

4.2 损失函数分析

为证明所使用损失函数的优越性,本文针对不同的损失函数做了一系列对比实验.在表 2中展示了分别利用小波系数损失函数、图像空间损失函数以及结合两者的损失函数训练后的结果(缩放系数为x4,数据集Set 5和 Set 14).实验结果表明,无论是峰值信噪比还是结构相似性,采用结合方式产生的效果都是最优的,进一步证明两者结合这一策略是可行且有效的.

Table 2 Quality evaluation of different loss functions表2 不同损失函数的质量评价

4.3 质量评价

本文采用广泛被用于评价图像质量的两个指标来判断 SR结果的好坏:峰值信噪比(PSNR)和结构相似性(SSIM).将本文提出的方法与相关优异的方法进行比较分析.对于缩放尺度,采用2x、4x和8x测试模型.

表3中总结了本文方法与其他方法在不同数据集(Set 5,Set 14,BSD100,Urban100,Manga109)以及不同尺度上(x2,x4和 x8)结果的(峰值信噪比和结构相似性)比较.最好的3个结果分别以加粗、下划线和阴影表示.可以直观地看出,本文提出的方法在结果上并没有超过EDSR[37].究其原因,在网络结构上,两者都采用残差块作为网络的基本组成单元.所不同的是,本文提出的方法仅使用了6个残差块,EDSR[37]使用了32个.而之前的相关工作已经可以证明,结构很深的网络使得能够根据更多的像素即更大的区域来预测目标像素信息,超分辨率重建的效果也更好.但在其他方面,本文提出的方法也具有一定的优势,如训练速度和运行速度更快、硬件要求低等.而与其他方法相比,本文方法对于缩放尺度x4和x8,实验结果最优.

Table 3 Quality evaluation of different algorithms表3 不同方法的质量评价

图4~图9展示了从上述几种数据集挑选的例子图像在不同方法重建后视觉效果的比较情况.如图4和图7所示,本文方法生成的图像线条不仅没有扭曲,而且更加清晰和锐利,而其他结果中线条边缘比较模糊,有的甚至还有重影的现象.图 5所示本文方法产生的结果比较好地保留了字母的边缘信息,视觉上看起来更加完整和规范.从图 6中可以看出,本文的结果较好地保留了两个桥洞之间的石缝,而其他方法显示的结果并不能很好地体现这一细节信息.如图8所示,本文的结果将斑马身上的纹路更加清晰地恢复出来,而其他的结果则较为模糊.在图 9中,能够明显地看出来,本文方法产生的结果将人行道上白色线条笔直且清晰地恢复出来,边缘的部分也更加锐利.而其他结果则比较模糊,线条边缘呈锯齿状.

总的来说,由示例图可以很明显地看出,无论是缩放系数为 x4还是 x8,相较除EDSR[37]以外的其他方法,本文采用的方法能够更好地保留细节信息,同时使边缘部分更加锐利和清晰,拥有更好的重建效果.

Fig.4 Super-resolution results of “img_005.png (Urban 100)” with scale factor x4图4 缩放因子为x4的图像img_005.png(Urban100)的超分辨率结果

Fig.5 Super-resolution results of “ppt3.png (Set14)” with scale factor x4图5 缩放因子为x4的图像ppt3.png(Set14)的超分辨率结果

Fig.6 Super-resolution results of “img_034.png (BSD100)” with scale factor x4图6 缩放因子为x4的图像img_034.png(BSD100)的超分辨率结果

Fig.7 Super-resolution results of “Hamlet.png (Manga 109)” with scale factor x8图7 缩放因子为x8的图像Hamlet.png(Manga 109)的超分辨率结果

Fig.8 Super-resolution results of “zebra.png (Set14)” with scale factor x8图8 缩放因子为x8的图像zebra.png(Set14)的超分辨率结果

Fig.9 Super-resolution results of “img_93.png (Urban 100)” with scale factor x8图9 缩放因子为x8的图像img_93.png(Urban 100)的超分辨率结果

4.3.1 与SRGAN对比

对于利用对抗网络生成的SR图像,单从PSNR和SSIM指标上来看,效果并不好.但从图10所示的视觉效果上来看,重建后的 SR图像更加逼真和锐利.但是如图 11所示,对细节部分进行放大操作后可以看出,SRGAN生成的图像多了一些伪像,合成了很多奇怪的纹路.这一结果不利于后续高水平计算机视觉任务的进行.

Fig.10 Super-resolution results of “00016.png (CelebA)” with scale factor x2图10 缩放因子为x2的图像00016.png(CelebA)的超分辨率结果

Fig.11 Result of zooming in the details of image generated by SRGAN图11 对SRGAN生成图像细节放大的结果

4.4 局限性

从结果可以看出,本文提出的网络在缩放系数x4和x8的情况下,效果会有大幅度的提升.对于小的缩放倍数 x2,效果也不错.但是并没有超越其他最优的方法.通过分析小波变换的特性可以发现,随着缩放因子的增大,小波变换的水平也在提高,图像的细节信息进一步被细化,可以通过网络更好地去推理图像缺失的细节,从而实现更好的效果.实验结果也进一步说明,利用小波分解的方式更适合于较大的缩放系数.同时,考虑到缩放倍数与最终输出的小波系数个数的映射关系,本文的方法只能处理特定的 2n的缩放倍数,无法处理一般方法中采用的x3的情况.

5 结 论

本文提出一种基于小波域的深度残差网络的图像超分辨率算法.在网络设计方面,不仅结构简单,并且与其他神经网络结构相比,能够更加有效地捕捉图像细节信息.同时,使用跨连和残差学习的方式来减少训练模型的难度.在损失函数方面,本文同时使用原始图像空间域和小波域下产生的损失,加强网络训练的约束.实验结果表明,本文提出的算法在视觉效果和峰值信噪比(PNSR)方面都取得了更好的效果.

猜你喜欢
小波残差分辨率
我可以重置吗
基于生成对抗网络的无监督图像超分辨率算法
基于残差-注意力和LSTM的心律失常心拍分类方法研究
基于双向GRU与残差拟合的车辆跟驰建模
构造Daubechies小波的一些注记
基于残差学习的自适应无人机目标跟踪算法
基于Haar小波的非线性随机Ito- Volterra积分方程的数值解
基于深度卷积的残差三生网络研究与应用
ARM发布显示控制器新品重点强化对分辨率的支持
青蛙历险