增强壁画图像艺术性的超分辨率重建
2021-08-23曹建芳张自邦赵爱迪
曹建芳,张自邦,赵爱迪
(1.太原科技大学 计算机科学与技术学院,山西 太原 030024; 2.忻州师范学院 计算机系,山西 忻州 034000)
0 引 言
我国古代壁画图像已经存在了不同程度的损坏,现在壁画保护提出了更高的要求,不仅仅是对破损的壁画进行修复[1],还有进一步的优化工作。所谓优化壁画图像就是对壁画图像进行超分辨率重建,图像的超分辨率重建技术是指输入一张或多张低分辨率图像通过特定的算法输出对应的高分辨率图像。
Chao D等[2]在以往研究的基础上,为了降低计算成本、增强超分辨率的实时性,在网络的末端引入一个反卷积层,然后去除双三次插值,直接从原始的低分辨率图像到高分辨率图像学习映射,并且采用较小的卷积核和更多的映射层。Jiwon Kim等[3]使用一个更深的卷积神经网络,得到更大的感受野,通过残差学习的方法解决深度网络梯度消失的问题同时提高学习率,加快网络收敛速度,最终在视觉效果上有了更好的表现。Mao XJ等[4]提出了一个非常深的完全卷积的编码-解码框架,网络由多个卷积层和反卷积层组成。卷积层捕获图像内容的抽象,同时消除损坏。反卷积层能够对特征图进行上采样并恢复图像细节。Ying T等[5]提出了一种非常深的卷积神经网络模型,获取更好的图像超分辨率效果。特别是,在全局和局部两方面采用残差学习,既降低了训练深层网络的难度又能减少经过深层网络后图像在细节方面的损失。Tong T等[6]通过在非常深的网络中引入密集跳跃连接来实现一种单图像超分辨率重建方法。在所提出的网络中,每层的特征图被传播到所有后续层中,提供了组合低级特征和高级特征以提高重建性能的有效方式并且缓解非常深的网络的梯度消失问题。
在壁画优化中应用现有超分辨率重建方法仍存在很多缺陷,本文提出了一种超分辨率重建算法,将其应用于古代壁画图像的超分辨率重建。提出的算法主要在以下几个方面改进:①模型的构建过程中采用迁移学习的思想;②引入残差模块加深网络优化网络结构;③去除卷积前的批量标准化,减少显存的使用率加快模型训练。
1 相关理论
1.1 生成对抗网络
生成对抗网络(generative adversarial networks,GAN)是采用了博弈论的思想,该网络包括生成网络和判别网络两部分,其中生成网络用于生成目标数据,例如在超分辨率重建中的目标就是生成高分辨率图像,判别网络的任务是对生成数据和真实数据的分类,通过梯度优化的过程逐渐增强判别网络的分类能力。生成网络和判别网络在网络训练过程中相互促进,最终共同优化出一对既能生成目标数据,又能判别是否为生成数据的网络模型。从而生成网络更能够在常规损失函数和判别网络的共同约束下,大大提高了生成接近完美的目标数据的准确度。
GAN的基本结构如图1所示。
图1 GAN的基本结构
GAN的目标函数定义如式(1)所示
(1)
1.2 残差网络
在卷积神经网络中可以通过增加网络层数的方法,提取更加抽象的、更具有语义信息的图像特征。但是简单的增加网络的层数会产生梯度弥散和退化问题,最终可能导致模型在训练集上的准确率饱和甚至下降。
为了解决以上问题He K等[7]提出了残差网络并在ImageNet比赛分类任务上取得很好的成绩,ResNet因其简单实用的特点,现已在目标检测、图像分割、文本识别等领域被广泛的应用。残差模块的基本结构如图2所示。
图2 残差模块基本结构
其中,x表示这一层残差块的输入,F(x)为该残差模块的残差,weight layer表示的是该层的权重。x为输入值,F(x)是经过第一层线性变化并激活后的输出,然后在第二层进行线性变化之后激活之前,F(x)加入了这一层输入值x,然后再进行激活后输出。
2 增强艺术性壁画图像超分辨率重建算法
2.1 网络结构设计
增强艺术性超分辨率重建算法已生成对抗网络为框架,并在传统的生成对抗网络(GAN)的基础上并对其进行改进,分为两部分:即生成网络和判别网络,生成网络目的是输出已完成超分辨率重建的壁画图像,判别网络的目的是逐渐优化生成网络,使其输出更接近于真实壁画图像的数据。
生成网络的设计架构遵循encoder-decoder结构,主要分为特征提取和图像重建两部分,网络输入为低分辨率壁画图像,经卷积神经网络特征提取、上采样输出高分辨率壁画图像。生成网络的基本结构如图3所示。
图3 生成网络基本结构
判别网络由输入层、卷积层和全连接层组成,网络输入层为真实的高分辨率图像和生成网络产生的高分辨率图像。判别网络主要目的是将真实超分辨率图像和生成网络输出的超分辨率图像正确的分类。判别网络的分类准确率不断提高,促进生成网络模型优化,从而产生更高质量的高分辨率图像。
2.2 损失函数
(2)
内容损失函数采用均方差损失函数(MSE loss)和VGG损失函数结合优化模型参数。通常情况下会采取均方差损失优化网络,获取在像素级别上相似度较高的高分辨率图像。MSE是每个样本目标变量与预测值之间距离平方之和。计算MSE,即求出各个样本的所有平方损失之和,然后除以样本数量。MSE损失函数如式(3)所示
(3)
其中,N表示样本的个数;(x,y)表示样本,x指的是训练样本中的特征集,y是指训练样本中的真实值;prediction(x)是样本x的预测值。
但是MSE损失函数经常产生局部区域平滑,很难恢复丢失的高频细节信息(比如纹理信息),因此加入了VGG损失函数,即获取对比真实高分辨率图像和生成的高分辨率图像在特征图上的差异,通过梯度下降算法在更高的特征维度上对模型进行优化。具体过程是将生成的高分辨率图像和真实高分辨率图像分别输入到已经完成预训练的19层VGG网络中,然后对经过VGG网络后得到的特征图求欧式距离,将其作为VGG损失。VGG损失的计算公式如式(4)所示
(4)
其中,i,j表示第i个池化层之前通过第j个卷积(激活之后),W和H分别表示特征图的宽和高,IHR表示真实的高分辨率图像,ILR表示低分辨率图像,GθG(ILR)表示低分辨率图像经过网络模型生成的超分辨率图像,φi,j(IHR)x,y-φi,j(GθG(ILR))x,y表示真实超分辨率图像和生成的超分辨率图像在通过VGG19网络的获得的特征图的差值。
最后在生成网络中引入对抗学习的思想,将生成对抗损失加入损失函数的计算中,进一步优化生成网络模型。生成对抗损失计算公式如式(5)所示
(5)
其中,DθG>(GθG>(ILR))表示判别网络将生成网络产生的高分辨率图像判别为真实的高分辨率图像的概率。
结合MSE损失、VGG损失和生成对抗损失来增强像素级别和高维特征上高分辨率图像的统一性,使得最终超分辨率图像在细节的重建上有更好的效果。
2.3 改进之处
2.3.1 采用迁移学习的思想
尽管壁画图像的超分辨率重建和普通图像的超分辨率重建区别并不大,但是为了专门学习不同分辨率的壁画图像之间存在着怎样的关系,尽量采用壁画图像完成模型的训练和测试,得到专门用于壁画图像超分辨率重建的模型。但是现有壁画图像具有数量少、质量低、破损严重的特点,因此壁画图像的收集和筛选工作较困难。图像的超分辨图像重建需要同一幅壁画的不同分辨率的壁画图像使得大量数据的收集整理工作更加困难。
如何在少量的壁画图像数据的情况下,训练得到适用于壁画图像的超分辨率重建网络模型是一个重要问题。受到自创数据集的启发[8],采用迁移学习的思想解决壁画图像数据少的问题。具体使用DIV2K数据结合少量壁画图像数据集方式的完成数据集的构建,800对公开的DIV2K数据集中包含的图像种类广泛、数量众多,100对专有的壁画图像具有更加明显的壁画图像特征。
在训练过程中首先使用DIV2K数据完成网络的初步训练,待模型相对稳定后使用50对壁画图像进行再训练,完成网络模型调优,最终模型用于生成高分辨率壁画图像。在测试过程中使用另外50对壁画图像,采集数据结果然后进行数据分析,最后完成网络模型的测试部分的工作。网络训练、调优、测试过程如图4所示。
图4 网络训练、调优、测试过程
2.3.2 引入残差模块
根据经验可知,合理加深生成网络,提取更加丰富的图像特征对于超分辨率重建至关重要,同样的适当在判别网络中增加网络层数也能使得判别网络的判断更加准确,进而更好优化生成网络。但是简单增加神经网络的层数会出现梯度弥散等问题,最终导致模型收敛时间大大减慢,降低网络的训练效率。例如在判别网络中采用了残差学习的思想,使得判别网络能够全方位、更加精确区分真实的高分辨率图像和生成的高分辨率图像。
在避免过拟合的情况下,为了能提取更高维的图像特征,判别网络采用了11层的卷积层,其中第9-第11层组成残差模块,将第8层和第11层的输出结果相加得到最终的图像特征,最后通过全连接层进行分类完成判别网络设计。判别网络参数信息见表1。
表1 判别网络参数信息
2.3.3 去除批量标准化
在处理高层的计算机视觉问题,例如图像分类等问题时,通常在神经网络的卷积层的每个激活函数前加入批标准化(batch normalization,BN)[9],从而加快网络模型训练时间,解决梯度爆炸和梯度弥散的问题。
但在超分辨率重建领域,尤其GAN框架下训练的比较深的网络时,加入批标准化会产生伪影,降低图像的超分辨率重建的效果。而且还会消耗更多的计算性能,使得网络训练的时间成本更高,增加了网络模型的收敛时间。因此在生成网络中去除了批标准化操作进一步优化网络结构。传统残差模块和本文使用残差模块对比如图5所示。
图5 残差模块对比
2.4 算法描述与训练流程
网络模型的训练流程分为两个阶段,依次为生成网络模型训练、生成网络和判别网络联合训练。在生成网络训练阶段主要是初步训练生成网络,使得生成图像接近于目标高分辨图像。联合训练阶段是进一步优化生成网络模型,发挥生成对抗网络的优势,使得生成的高分辨率图像更加接近真实的高分辨率图像。这种分阶段的模型训练方式节约了网络训练的计算机资源,在一定程度降低了模型更新的复杂度,加速了模型的收敛。具体网络模型训练算法描述如下。
输入:低分辨率图像和对应的高分辨率图像。
输出:生成网络模型、判别网络模型。
(1)读取图像数据集中的低分辨率图像;
(2)通过卷积神经网络提取图像特征;
(3)通过亚像素卷积[10]将图像特征上采样,得到目标大小的高分辨率图像;
(4)与数据集中对应的高分辨率图像对比,计算均方差损失,更新生成网络模型,输出重建后高分辨率壁画图像;
(5)重复(1)-(4),优化生成网络模型,直至MSE趋于相对稳定;
(6)分别将生成的高分辨率图像和对应的真实高分辨率图像作为判别网络的假样本和真样本输入;
(7)高分辨率图像特征提取,最后网络连接全连接层输出一个特征向量;
(8)通过sigmoid函数将特征向量转化为概率值,然后判断输入的图像是否为真实的超分辨率图像;
(9)计算内容损失值与对抗网络损失值的和,更新保存生成网络和判别网络模型;
(10)重复(5)-(9),更新优化生成网络和判别网络模型参数,直至模型的loss值趋于稳定并保持一段时间。
模型训练流程如图6所示。
图6 模型训练流程
经过网络模型的训练最终得到了生成网络模型和鉴别网络模型,因此下一步对生成网络模型进行测试。 在模型测试流程中,除了不再更新网络模型的参数,其它基本流程和模型训练流程基本一致,最终在主观、客观两个角度对重建后的高分辨率壁画图像进行评价。
3 实验结果与分析
3.1 实验环境
为了验证本文提出的算法在壁画图像的超分辨率重建上的有效性,本实验使用的硬件环境主要有中央处理器(CPU)为英特尔Corei5-9400F@ 2.90 GHz,内存为16 GB,显卡为Nvidia GeForce RTX2070等;软件环境为在Windows10系统上使用Python 3.7语言编写、TensorFlow作为框架,完成壁画图像的超分辨率重建工作。
3.2 对比实验
本文实验验证集以古代壁画图像为实验对象,分为客观指标对比和主观评价对比以使得实验更具完整性,实验结果更具说服力,选取双三次插值法(bicubic interpolation,BI)算法、SRGAN算法[11]、EDSR算法[12]和本文算法在不同风格类型、不同色彩对比度、纹理细节丰富的10张局部壁画图像放大4倍上对比壁画图像的超分辨率重建效果,实验效果如图7所示。
图7 不同算法下不同壁画图像的超分辨率重建效果对比
可以看出,使用基于差值的BI算法复原的超分辨率图像会出现模糊,图像纹理出现锯齿的现象,这是由于该算法假设图像像素的灰度值的变化连续的,平滑的,但这并不符合实际情况。另外该算法不考虑图像的降质退化模型,最终导致壁画的超分辨率图像一般。现阶段较为流行的基于深度学习的EDSR算法和SRGAN算法相对BI算法修复效果有了很大的改进,但由于算法中采用的较少的网络层数来提取图像特征,因此更多的图像细节信息不能获取,造成了图像中边缘区域超分辨率重建效果模糊,有时在图像色彩上的优化也存在较大的偏差,重建的图像细节的恢复有待提高。相比于以上超分辨率重建算法,本文算法在壁画图像纹理信息和色彩饱和度的超分辨率重建效果上明显有更好的效果。
3.2.1 客观指标对比
选取10张壁画图像的超分辨率重建结果对比,通常情况下选择峰值信噪比[13](peak signal-to-noise ratio,PSNR)和结构相似性[14](structural similarity index,SSIM)这两种常见的图像质量评估指标。其中PSNR通过比较两幅图像对应像素点之间的差异来评估图像的好坏,PSNR越高,图像失真越小,对应图像的超分辨率重建效果就越好。具体计算公式如式(6)所示,实验结果见表2
表2 不同算法下各个样本的PSNR对比
(6)
其中,W表示图像的宽度,H表示图像的高度,X(i,j)和Y(i,j)分别表示两张高分辨率图像的像素点的值。
SSIM从亮度、对比度和结构这3个角度来评估图像的相似性,SSIM取值范围为[0,1],值越大,表示图像相似性越高。具体计算公式如式(7)所示,实验结果见表3
表3 不同算法下各个样本的SSIM对比
(7)
增强艺术性壁画图像超分辨率重建算法学习了EDSR和SRGAN的核心思想,使用其它网络优化技巧解决了一部分网络训练过程中的问题,采用数据集公开数据集与壁画图像数据联合训练模型的方法和更加科学的网路训练流程,最终呈现出了较好的结果。通过对比实验结果中的PSNR和SSIM的每个样本值和平均值可知,本文算法相较于其它3种算法都有了较明显提升,PSNR分别平均提升了1.0 dB-3.0 dB,SSIM分别平均提升了0.01-0.03。因此本文算法在客观的实验指标上体现了较好的优异性。
3.2.2 主观评价对比
由于客观参数的对比并不能完全替代人眼视觉对壁画超分辨率重建图像的感受,为了使得超分辨率图像的重建更具普遍性,因此本文采用评分法,随机选取100名视力正常的各行业人员(男生50人,女生50人),对3种不同算法修复效果的整体一致性和结构连续性打分。评分分为5个等级(非常满意、满意、一般、不满意、非常不满意),对应的分数依此为5,4,3,2,1。
经统计对4个不同算法的整体美观性和纹理细节结构的评分结果分别求平均值,为了直观对比满意度测评的详细信息,做出柱状图如图8所示。
图8 不同算法下壁画图像超分辨率重建效果 主观评价对比
壁画图像优化的目的是不仅仅用于古代文物的保护工作,同时也希望更多的普通人喜欢学习、欣赏古代壁画的美。通过比较在整体美观性和纹理细节结构上本文算法都评分较高,因此本文提出的算法在主观评价上得到了更好的效果。
4 结束语
本文针对壁画图像的优化问题,提出了增强一致性生成对抗网络来实现壁画的超分辨率重建。通过迁移学习的方式解决了壁画图像数据少的重要问题,该算法首先通过卷积神经网络作为基础架构实现壁画图像的特征提取,其中采用残差模块的方式优化生成网络结构,并去除了批标准化操作进一步优化,然后用提取的特征通过亚像素卷积的上采样方式实现壁画图像的超分辨率重建;在判别网络中采用较深的卷积神经网络并应用残差学习的思想,来更加准确区分生成的高分辨率图像和真实高分辨率图像。通过与已有的算法比较,在壁画图像超分辨率的主观视觉效果、峰值信噪比和结构相似性都有明显提高,结果表明本文算法在颜色丰富、纹理结构强的壁画图像超分辨率重建上有更好的效果。
本文算法在进行壁画图像的超分辨率重建时,对于局部色彩单一、对比度较强的区域往往会出现其它颜色的噪点,使得图像颜色不纯,艺术研究价值降低。还存在对抗神经网络训练时间不确定等问题。今后将在结合超分辨率重建和图像降噪算法融合,解决生成的高分辨率图像存在噪点的现象;采用更加科学的生成对抗网络训练终止条件等角度研究,实现壁画的超分辨率重建。