蒋文杰,罗晓曙,戴沁璇
广西师范大学 电子工程学院,广西 桂林541004
在实际的视频监控中,受到摄像机分辨率、物体运动、目标人物与摄像机的距离等条件的影响,采集得到的人脸图像比较模糊、分辨率低、难以进行有效识别。为了解决这一问题,诞生了图像超分辨率重建。它是一种提高图像分辨率的技术[1],能够实现图像由低分辨率向高分辨率的转化。Harris等人[2]在20世纪60年代最早提出图像超分辨率重建,现有的传统图像分辨率重建算法主要分为插值法[3]、学习法[4]和重建法[5]。但这些方法在重建时会产生过度平滑和锐化的问题,另外重建效果波动比较大,只适用于特定场所,具有较大的局限性,难以进行推广使用。
近年来卷积神经网络在计算机视觉领域展现出了巨大的优越性。Dong等[6]提出了超分辨率卷积神经网络(Super-Resolution Convolutional Neural Network,SRCNN),首次将卷积神经网络应用于图像超分辨率重建,该算法在性能和效果方面均超过了传统方法,极大提升了重建图像的视觉效果和量化指标。Dong等[7]在SRCNN基础上改进并提出了快速超分辨率卷积神经网络(Fast Super-Resolution Convolutional Neural Networks,FSRCNN),该算法在提升重建效果的同时也加快了重建速度。Ledig等[8]提出了基于生成对抗网络架构的超分辨率图像重建方法(Super-Resolution Generative Adversarial Network,SRGAN),进一步提升重建图像的视觉效果。由于SRGAN在训练时存在梯度消失和训练不稳定的问题,本文提出了一种改进SRGAN的人脸图像超分辨率重建方法,主要改进工作如下:
(1)在SRGAN基础上结合WGAN并引入Wasserstein散度,去掉了Lipschitz约束,直接得到Wassertein距离。
(2)对生成网络目标函数进行优化,具体的措施是通过最小化Wassertein距离得到生成网络的目标函数。
生成对抗网络(Generative Adversarial Network,GAN)是由Goodfellow等人[9]于2014年提出的一种概率生成模型,它由拟合数据分布的生成网络G和用来判断输入是否“真实”的判别网络D构成。在训练过程中,生成网络G通过接受一个随机的噪声来尽量模仿训练集中的真实图片去“欺骗”判别网络D,而判别网络D则尽可能分辨真实数据和生成网络的生成图像,从而形成两个网络的博弈过程,具体的表达式如式(1)所示:
GAN存在训练不稳定的问题,为了解决这个问题,WGAN[10](Wasserstein Generative Adversarial Networks)提出了使用Wasserstein距离作为网络训练的优化目标,其具体表达式如式(2)所示:
当c(x,y)=||x-y||,可以转化为对偶问题:
从而生成器网络的训练即可转化为以Wassertein距离下的最大-最小问题:
其中,T(x)是一个标量函数,||T||L是Lipschitz范数:
其中T(x)满足:
WGAN使用Wassertein距离去衡量生成数据分布和真实数据分布之间的距离,理论上解决了网络训练不稳定的问题。为了将Wassertein距离作为优化方式来训练网络,WGAN需要满足Lipschitz连续性,最后只能将权重压缩到一个范围来强制满足Lipschitz连续性。但这会造成对深度神经网络拟合能力的极大浪费,另外对权重进行强制剪切容易导致梯度消失或者爆炸。
为了保留WGAN中Wasserstein距离的优良性质,研究者将WGAN与SRGAN进行了结合。SRGAN是基于CNN采用GAN方法进行训练来实现图像的超分辨率重建的,生成网络G通过输入的低分辨率图像生成高分辨率的输出图像,判别网络D则判断输出图像是真实的高分辨率图像还是生成网络G生成的高分辨图像,SRGAN的流程图如图1所示。
图1 SRGAN流程图
相较于GAN的输入为随机噪声,SRGAN的输入是将高分辨率人脸图像进行1/4采样得到低分辨率人脸图像,通过输入低分辨率人脸图像,最终输出高分辨率人脸图像。但SRGAN在进行超分辨率图像重建时,生成分布和真实分布都采用JS散度进行衡量,从而不能产生大量不可忽略的重叠,导致梯度指向随机方向,判别器更容易分辨生成图像和真实图像,进而梯度问题将进一步放大,导致梯度消失或者爆炸,使得模型不可控、不收敛、难以训练。
相较于WGAN使用Wassertein距离去衡量真实和生成分布,WGAN-GP[11]采用了梯度惩罚来满足Lipschitz连续性。为了尽可能将判别器的梯度∇D(x)变大,但Lipschitz连续性限制是要求判别器的梯度∇D(x)不能超过K,最终的目标函数如下所示:
WGAN-GP的提出虽然解决了网络训练时出现的梯度消失或爆炸,并且网络实现了收敛速度更快和生成更高质量的样本。但是为了满足Lipschitz约束,需要在真实和生成分布之间进行随机插值惩罚,该方法是一种经验方案,缺乏完整的理论支持。
为了解决上述问题,本文在SRGAN结合WGAN的基础上引入了Wasse-rtein散度[12]对真实分布和生成分布进行衡量,它表述为D[P,Q]≥0且D[P,Q]=0⇔P=Q,其并不满足三角不等式,目标函数如下所示:
由于Wk,p是对称的散度,当对Wk,p进行最小化时,最终会缩小真实分布和生成分布的距离,而大多数对抗网络只是对某个散度进行优化,并不能有效地缩短真实分布和生成分布的距离。为了得到T的最优解,需要最大化Wk,p,因此T的目标函数可表示为:
其中k和ρ是常数,相较于WGAN-GP在真假样本之间随机插值,r(x)是非常宽松的分布,减小了随机性,提高了其泛化能力。最大化Wk,p得到T的最优解后,因为Wk,p是具有对称散度,其性质类似于Wassertein距离,可将T直接代入式(2)得到Wassertein距离,这样就可以去掉Lipschitz约束,并保持Wassertein距离的优良性质,接下来最小化Wassertein距离即可得到生成器网络的目标函数。
由此可知,加入Wassertein散度并对其最大化可得到最优化的标量函数T,随后可将T直接代入式(2)可直接得到Wassertein距离,这样就避免为得到Wassertein距离而对判别器进行权重裁剪,梯度惩罚和谱归一化等Lipschitz约束,简化了计算量,同时提高了输出图像的质量。
改进的SRGAN网络包括生成器和判别器两部分,生成器中包含了多个残差模块[13],每个残差块中包含两个3×3的卷积层,具体的残差网络如图2所示。
图2 残差网络结构
卷积层后接批规范化层(Batch Normalization,BN)[14]和PReLU[15]作为激活函数,两个2×亚像素卷积层(Sub-pixel Convolution Layers)被用来增大特征尺寸,生成器通过训练两个子像素卷积层来提高分辨率,生成器网络结构如图3所示。
图3 生成器网络结构
判别器的网络结构如图4所示,在判别网络部分包含8个卷积层,随着网络层数加深,特征个数不断增加,特征尺寸不断减小,选取激活函数为LeakyReLU[16],最终通过两个全连接层和最终的Sigmoid[17]激活函数得到预测为自然图像的概率。
图4 判别器网络结构
判别器的损失函数可以定义为:
由式(10)可知,当k取1/2,ρ取2时可得到T的最优解,所以目标函数如式(12)所示:
由于在模型训练中需要大量的卷积计算,相对于CPU而言,GPU的运用将极大地缩短训练时间,加快训练速度。本实验中所使用的计算机配置是双E5-2637 v4 CPU,操作系统为Ubuntu 16.04,同时还使用1张GTX1080Ti显卡、12 GB内存来加速训练。
实验使用的数据集包含了年龄、种族、性别等类型,为了保证实验数据的真实性和多样性,将数据集图像样本顺序随机打乱,按照8∶2的比例进行划分,进行1/4采样,同时使用DCRN[18]、FSRCNN、SRGAN_WGAN、VDSR[19]、DRRN[20]重构出的超分辨率图像作为结果对比。
评价图像超分辨率图像质量主要分为主观评价和客观评价,前者是通过观察人员的主观感受来评价重构图像质量,后者是根据量化指标来衡量输出图像质量。各种超分变率重建方法结果对比图如图5所示。其中被红色矩形框选标注的是感兴趣区域。
图5 各种超分辨率重建方法结果
在主观评价方面,对比模型虽然能重建人物的眼睫毛、瞳孔和鼻子的斑点,但视觉效果均较为模糊,体现不出细节纹理。本文方法相比其他模型,在眼睫毛、瞳孔和斑点的重建效果都比较清晰,能较为清楚地分辨出眼睫毛之间的间距,瞳孔的清晰度和鼻子的斑点,重建效果最接近高清图。
在客观评价方面,本文选取了均方误差MSE(Mean Squared Error)、峰值信噪比PSNR(Peak Signal to Noise Ratio)和结构相似度SSIM(Structural Similarity Index)来综合评价重构图像性能,其中,MSE如式(13)所示:
其中,h、w、k分别表示图像的长、宽和通道。
PSNR表示为:
其中,n=8。
SSIM如式(15)所示:
其中,l(x,y)、c(x,y)、s(x,y)分别表示图像的亮度、对比度和结构相似度。
MSE越小代表重建图像和原图像误差越小,PSNR和SSIM越大表示重构图像越接近原始图像。
为了更加客观和准确地评价各种重建算法的效果,本文随机选取了100张图像进行测试,然后在不同指标上对各种算法进行了对比,对比结果如表1所示。
从表1可知,相较于DRCN、FSRCNN、SRGAN_WGAN、VDSR、DRRN算法的评价结果,本文提出的算法MSE分别减少了5.58、8.34、31.05、4.68和3.09;PSNR分别提高了0.63 dB、0.91 dB、2.73 dB、1.07 dB和0.48 dB;SSIM指标略有提高。在耗时方面,同类型网络是在已有预训练模型基础上直接进行训练,而改进的模型需要重新训练,比较耗时。
表1 各超分辨率重建方法客观指标分析
综合上述的主观视觉效果和客观评价指标,本文的改进网络模型的综合性能均优于其他对比网络模型,兼顾了主观和客观两者的评价指标,证实了改进的生成对抗网络算法能够有效提升模型的稳定性和准确性。
针对SRGAN与WGAN网络存在的缺陷,本文进行了算法改进。通过SRGAN与WGAN的结合并在其中引入Wasserstein散度,不仅可去掉L约束并且还很好保留Wasserstein距离的优良性质,解决了网络训练过程中的梯度消失的问题,提升了训练效果,实现了人脸图像超分辨率重建。实验结果表明,本文提出的人脸超分辨重建方法,在视觉效果和客观评价指标均优于其他对比算法,证明了本文提出的改进算法的优越性和可靠性。