一种改进的生成对抗网络的图像上色方法研究

2020-07-15 05:01蒋文杰罗晓曙戴沁璇
计算机技术与发展 2020年7期
关键词:黑白照片卷积图像

蒋文杰,罗晓曙,戴沁璇

(广西师范大学 电子工程学院,广西 桂林 541004)

0 引 言

近年来,深度学习在图像处理领域表现出了巨大的优越性,目前手工对其进行上色将花费巨大的时间和人力成本,所以还无法做到对黑白照片/图像的批量上色处理。如果能够借助深度学习的方法将上色这一过程无监督化,将在效率和时间上给黑白照片/图片带来质的提升,提高其艺术观赏价值。

文献[1-2]提出了使用人工干预和灰度直方图对灰度图进行上色,效率不高,很难进行大规模推广应用。文献[3-5]提出一种艺术风格转化的方法,这种方法是通过卷积神经网络分别提取两张图片的特征,然后再将得到的特征结合起来组合成新的图片,并没有实现真正的上色功能。在文献[6]中针对高分辨率图片上色的问题,突破了难以生成高分辨率图像的限制,虽然实现了对高分辨率图片上色,但也增加了训练难度同时对计算机硬件提出了更高的要求。

生成对抗网络作为深度学习中的一种概率生成模型,最早由Ian Goodfellow等人[7]于2014年提出,它能够自动学习图片的输入到输出的映射,不需要构造复杂的目标函数,构建了泛化模型。GAN由两个网络构成,分别是生成器G,其作用是抓取数据分布特征,另外一个是判别器D,其作用是估计图片来自训练数据还是来自于生成器G生成的图片。两者进行极大极小值博弈[7]最终达到动态平衡,具体表达式如下所示:

min(G)max(D)V(D,G)=Ex~pdata[logD(x)]+Ez~pz(z)[log(1-D(G(z)))]

(1)

对黑白照片/图像进行上色需要考虑两个因素:输出的彩色图像与原来的黑白照片/图片的底层轮廓信息不变,另外就是上色的合理性。文中在兼顾底层信息不变和上色合理性的前提下,构建了基于改进生成对抗网络的黑白照片/图片无监督上色模型。该模型包含了带有U型[8]结构的生成器模型和以块的方式(PatchGAN)[9]的判别器模型。该模型是以黑白照片/图像作为生成器模型的输入,然后生成器输出彩色图像,接下来通过判别器判断该输出彩色图是来自真实分布还是生成器输出图像,生成器和判别器两者以对抗的方式相互进行训练,不断优化黑白图像和彩色图像的映射关系,最后得到稳定的网络模型。由于黑白照片/图像到彩色照片的数据集较少,文中所用的数据集是从各大网站抓取并进行加工处理后得到,使用tensorflow在GPU上对模型进行训练。

1 研究方法

利用GAN对黑白照片/图像样本集进行无监督上色训练,最终输出彩色图像。训练好的GAN模型虽然能够将输入的黑白图像转化为彩色图像,但是却无法保持上色的合理性。为了解决这个问题,这里引入了条件对抗网络CGAN(conditional generative adversarial nets)[10]。该网络是在GAN的生成器和判别器都额外添加一个条件y,即生成器必须要生成和条件y匹配的样本,判别器不仅要判别图像是否真实,还要判别图像和条件y是否匹配。CGAN的基本结构如图1所示。

生成器G,输入为一个噪声z,输出一个图像G(z),判别器D,输入为一个图像x,输出该图像为真实的概率D(x),CGAN的损失函数可以定义为:

LCGAN(G,D)=Ex,y[logD(x,y)]+Ex,z[log(1-D(x,G(x,z))]

(2)

图1 CGAN基本结构

文中算法在CGAN基础上进行改进,原始的CGAN为了能够加快训练网络时的收敛速度以及归纳统一样本的统计分布性,采用批量归一化BN(batch normalization)[11],它能将数据强行归一化为均值为0、方差为1的正态分布上,这样有利于数据分布一致,也避免了梯度消失。BN的缺点也很明显,首先,它对样本的数量的大小比较敏感,因为每次计算的方差和均值都在一个批量上,所以如果批量太小,这会导致方差和均值不足以代表整个数据分布。其次BN只对固定深度的前向神经网络很方便。

基于此,文中采用了实例归一化IN(instance normalization)[12]替换BN,这是因为在无监督上色中,输出图像主要依赖于某个图像实例,IN是对一个批次中单张图片进行归一化,而不是像BN对整批图片进行归一化然后提取平均值,所以IN更适合于无监督上色,提高输出图片上色的合理性和更好地保留底层信息,IN的计算公式如下:

(3)

(4)

(5)

其次,该算法还在生成器中引入了自注意力Self-Attention[13]机制,传统的生成对抗网络的问题表现在卷积核的大小选取上,小的卷积核很难发现图像中的依赖关系,但是大的卷积核又会降低卷积网络的计算效率。

为了提升上色效果,该算法将Self-Attention加载到生成器网络中,具体网络如图2所示,即在前一层的特征图上加入Self-Attention机制,使得生成对抗网络在生成时能区分不同的特征图。

图2 Self-Attention机制结构

图中f(x)=Wfx,g(x)=Wgx,Wf、Wg都是网络的参数,Self-Attention机制的注意力计算如下:

(6)

注意力层的输出如下所示:

(7)

最后得到加入了Self-Attention机制的特征图:

yi=γoi+xi

(8)

这里γ的值初始化为0,再逐渐增大权重,由于Self-Attention一开始可能训练得不太好,用它作指引效果不好,所以等Self-Attention层训练得越来越好后再加大γ的值。

2 网络结构

在对图像彩色化的问题上,为了保持原图像的底层轮廓信息不变和上色的合理性,一般是采用U-Net结构,如图3所示,其好处是不需要所有的信息都通过生成器的所有层,这样就能使得输入和输出图像的底层信息和突出边缘位置信息能够被共享。U-Net型网络对于提升输出图像的细节起到了良好的效果。

图3 生成器模型结构

对于判别器D,文中采用PatchGAN的方法,即对每张输出图像的每个N*N小块(Patch)计算概率,然后再将这些概率求平均值作为整体的输出,其优点在于可以加快模型收敛和计算的速度。判别器模型结构如图4所示。

图4 判别器网络结构

3 损失函数

文中算法的损失函数基于CGAN进行改进,和CGAN相比少了噪声输入,文中定义了和CGAN相同的损失,另外为了加快模型的收敛速度并提高图像的清晰度,在CGAN损失函数的基础上还添加了L1损失:

LL1(G)=Ex,y,z[‖y-G(x,z)‖1]

(9)

最终得到的目标函数为:

G=arg min(G)max(D)LCGAN(G,D)+λLL1(G)

(10)

4 实 验

4.1 实验平台

由于在模型训练中需要大量的卷积计算,相对于CPU而言,GPU的运用将极大地缩短训练时间,加快训练速度。本实验中所使用的计算机配置是双E5-2637 v4 CPU,操作系统为Ubuntu 16.04,同时还使用了GTX1080Ti显卡、12 GB内存来加快训练。所使用的平台是谷歌开发的机器学习框架tensorflow1.9。

4.2 实验效果

该算法所用到的图像数据集是使用爬虫从各大网站上随机抓取的,经过筛选并剔除不适用于训练的图像,最后剩下大约2万张的数据图像,最终典型的实验效果如图5所示。

图5 上色方法效果比较

4.3 实验对比

为了进一步验证该算法的有效性,这里进行了简化模型测试,使用控制变量法单独分出了CGAN模型,分别使用IN项和GN(group normalization)[14]项代替原模型的BN项,最终的实验效果如图6所示。

图6 不同算法效果比较

从上面对比分析可知,CGAN模型经过训练后虽然也能对黑白图像进行上色,但色彩较为单一;将CGAN模型的BN项替换成IN项,其色彩要比原模型鲜艳,但色彩分布不均匀;采用GN项替换后虽然色彩分布较为均匀但是色调偏暗,最后文中把IN项和添加的Self-Attention项结合起来,其效果比原先算法都要好。

5 量化对比分析

为了更加准确地分析生成图片的质量好坏,该算法采用了衡量图片质量的若干指标:均方差(MSE)[15],数值越小表示越接近原图,峰值信噪比(PSNR)[16]和结构相似度(SSIM)[17],数值越大表示画质越好。该算法选取了测试集作综合比较,最终将实验结果进行定量计算,结果如表1所示。

表1 不同算法对数据平均客观指标对比

从表1可知,使用实例归一化IN进行网络优化以及在生成器中引入自注意力Self-Attention机制的效果相较于CGAN、GN和IN在测试集的评价结果,MSE分别减少了60.35,139.07和50.04,PSNR分别提高了2.21 dB,3.91 dB和2.03 dB,SSIM指标略有提高,这是因为实例归一化能够较好地保留底层信息,另外由于黑白图像到彩色图像的映射关系复杂,引入自注意力机制能够提高生成图像的上色效果,进一步体现了该算法的优越性。

6 结束语

文中研究了基于改进生成对抗网络的上色算法,实现了对黑白照片/图像的上色。该算法通过理论分析及对比试验发现,当采用实例归一化IN以及在生成器中引入自注意力机制Self-Attention,最终的实验效果在指标评价上均要比原始模型有较大提高,这充分说明了该算法的可行性和有效性。由于目前的上色方法中,研究对象均是低分辨率图像,后续将对高分辨率图像上色作进一步研究。

猜你喜欢
黑白照片卷积图像
基于全卷积神经网络的猪背膘厚快速准确测定
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
浅析p-V图像中的两个疑难问题
传统制作让我着迷
巧用图像中的点、线、面解题
剧坑太深请小心
静夜
让历史鲜活起来