融合自注意力机制和相对鉴别的无监督图像翻译
2021-11-13林泓任硕杨益张杨忆
林泓 任硕 杨益 张杨忆
1.武汉理工大学计算机科学与技术学院武汉430063
图像翻译(Image-to-image translation)[1]是一类将源图像域的输入图像转化为目标图像域输出图像的计算机视觉处理任务,其应用包括图像风格转换[2]、图片域适应和数据预处理等多个领域.生成对抗网络[3]作为当前图像翻译任务的主流模型,通过生成器和判别器之间的零和博弈,提高判别器鉴别真伪的能力,指导生成器学习真实的数据分布从而生成逼真图像.
根据训练数据集中输入图像和输出图像的对应关系,图像翻译分为有监督和无监督两种[4].Isola等[1]在2017年基于条件生成对抗网络(Conditional generative adversarial network,CGAN)[5]提出的pix2pix 是典型的有监督图像翻译方法,其模型将U-net[6]作为生成器、PatchGAN 作为判别器,在保持图像结构一致性的情况下完成有标注的成对数据间转换工作.
有监督的图像翻译方法需要一一配对的训练图像,然而在艺术风格转换、目标转换等任务中难以得到大规模匹配成对的有标注图像数据集.
无监督的图像翻译任务避免了需要获取配对训练数据集的问题,其目标是学习两个图像域(Image domain)之间的映射,训练集中输入图像和目标图像不必拥有明确的对应关系.Zhu 等[7]结合对偶学习提出CycleGAN 无监督图像翻译方法,使用相互对应的生成器和判别器完成图像域转换,并使用循环重构一致性的约束条件保留图像内容结构信息,从而只改变目标图像域.为更好地建立图像域之间的映射关系,Liu 等[8]提出UNIT 方法共享中间层的网络权重,在生成器中的编码器结构提取不同图像域共享的低维潜在向量后,使用对应的解码器结构建立低维潜在向量与各个图像域的映射关系,完成无监督图像翻译.
当前无监督图像翻译方法能够较好地建立不同图像域之间相互映射关系,但是在翻译效果以及生成图像质量方面依然存在不足.首先,由于生成器网络卷积神经结构受卷积核大小的限制,在生成图像过程中只能关注局部依赖关系而忽略了全局相关性,导致翻译图像指定图像域变化不完全,图像协调性与真实性降低;其次,由于训练数据中没有配对的目标图像,翻译过程中目标图像域信息定位不准确,存在无关图像域信息改变,翻译效果不理想的问题;另外,当前GAN 博弈对抗过程中,生成器通过判别器与真实数据间接地建立关系,判别器未利用输入数据一半为真一半为假的先验知识,导致训练过程稳定性不足,翻译图像质量不佳.
为了提升无监督图像翻译方法生成图像的视觉效果,解决训练过程中模型不稳定、无关图像域发生较大改变的问题,本文以GAN 为基本模型,基于对偶学习,提出一种融合自注意力机制和相对鉴别的无监督图像翻译方法,主要工作如下:
1)在生成器网络设计中,针对卷积结构只关注局部依赖的问题,引入自注意力机制计算目标图像像素位置间的关联权重,建立远近距离的依赖关系从而提高图像整体协调性;同时在生成器的下采样区最后一层和上采样区第一层之间增加跳跃连接来降低原图像特征在中间卷积过程中的信息损失,更好地还原图像细节.
2)在判别器网络设计中,采用PatchGAN 网络结构对图像进行真假二分类鉴别,并引入谱规范化(Spectral normalization)[9]使训练过程中的参数矩阵在结构不被破坏的前提下满足Lipschitz 条件,防止因判别器能力突变造成的梯度消失,提高训练过程的稳定性.
3)针对整体模型博弈对抗过程不合理,导致训练不稳定的问题,采用相对鉴别对抗损失,将绝对的真假判断转化为差值关系的相对真假,提高训练收敛速度、增加训练过程稳定性,与最小二乘法相融合,严格决策远离边界的假样本,从而增强生成图像的真实性.
4)由循环重构和自我重构组成重构损失,基于对偶学习采用循环重构建立图像域相互映射关系,在翻译过程中保留图像的固有特征,并增加自我重构降低无关图像域信息的改变,进一步引导图像翻译的方向,提高图像翻译效果.
1 融合自注意力机制的图像翻译模型
1.1 对偶模型的整体结构
2016年,微软亚洲研究院提出的对偶学习(Dual learning)[10]在翻译系统自动学习无标注数据的方面取得了巨大的成就,其利用大量无标注数据及少量标注数据训练即可得到高效的神经翻译模型.本文将对偶学习引入到基于卷积结构的生成对抗网络中,无需一一配对的训练数据集,两组GAN共同作用完成无监督的图像翻译任务.
本文设计的对偶模型用于完成图像域X和Y的相互翻译任务,生成器G、F和判别器DX、DY构成结构相同的两组GAN,分别进行特定方向的图像翻译工作.生成器负责将源图像转换为目标图像,完成图像域的映射工作,而判别器实质为一个二分类网络,负责对输入的图像进行真假判断,模型的整体结构如图1所示.
以图像域X →Y的单向图像翻译为例,生成器G只负责学习X →Y的映射关系,将域X中的图像转换为域Y中的图像,判别器DX负责鉴定来自域X输入图像的真假,并将域X中的真实图像作为正样本,其余生成图像作为负样本对其进行训练,使DX获得对所有不属于域X的图像认定为虚假图像的识别能力.同理,生成器F负责完成图像域Y →X的反向映射,判别器DY负责对域Y中的图像进行鉴别.
如图1所示,模型遵循对偶学习建立循环重构过程,并增加自我重构降低无关图像域改变.在a →F(G(a))→a表示的循环重构过程中,源图像域X的真实图像a经过生成器G映射到图像域Y,得到翻译图像G(a),然后再经过生成器F转换回域X,得到重构图像F(G(a)).通过让循环重构的图像与原图像保持一致,也就是F(G(a))≈a,使生成器在无标注的非成对数据集上获得图像域之间相互映射的能力.在a →F(a)→a表示的自我重构过程中,对于已经属于图像域X的真实图像a经过生成器F得到重构图像F(a),内容结构信息不发生改变,即F(a)≈a.通过自我重构一致性让生成器在转换指定图像域的过程中,更准确地获取该域间差异性,并保持其他图像域的信息不发生改变.
图1 模型整体结构Fig.1 The structure of model
本文对偶形式的模型结构单一化一组GAN 的功能,使其专注于特定方向的翻译任务,在转换图像域过程中,循环重构保留了内容结构信息,自我重构减少了无关图像域变化,两者共同指导整体模型建立图像域之间映射关系,完成无监督图像翻译.
1.2 生成器模型
为了在图像域转换过程中提高生成图像真实性,获取高质量的翻译图像,本文的生成器基于Johnson 等[11]提出的卷积神经网络架构,引入自注意力机制,并在生成器的下采样区最后一层和上采样区第一层间增加跳跃连接.生成器网络结构由三部分组成,分别为由卷积神经网络组成的下采样区域、由残差网络块结构[12]组成的中间区域、由反卷积神经网络与自注意力机制网络层组成的上采样区域,如图2所示.
生成器网络结构参数设置如表1所示,除第12 层输出层使用Tanh 激活函数外,包括残差网络在内的卷积神经网络均使用实例归一化(Instance normalization,IN)[13]和ReLU 激活函数.
表1 生成器网络结构参数设置Table 1 The parameter setting of generator
1)跳跃连接.虽然中间区域的残差网络层与层之间已经有了跳跃连接,仍会出现原图像部分特征信息遗失的问题.为了更好地保留图像内容结构信息以及翻译过程中无关图像域信息,本文在生成器网络的下采样区最后一层(第2 层)和上采样区第一层(第9 层)之间增加了图2 中所示的额外跳跃连接,将第2 层的输出以α的权重叠加到第9 层的输出中,作为下一层网络的输入
图2 生成器网络Fig.2 Generator
式中,L2表示生成器网络第2 层的输出张量,L9表示第9 层的输出张量,权重参数α初始值为0.5,在迭代训练过程中自适应调整得到.
本文在生成器网络中增加的跳跃连接将低层提取的输入图像特征与高层转换后的图像特征加权结合,减少不必要的内容结构和无关图像域信息损失,从而提高翻译图像视觉效果.
2)自注意力机制.由于生成器网络中使用的卷积神经网络受到卷积核大小的限制,不能在有限的网络层次结构中捕获图像生成过程中全局的依赖性,本文将自注意力机制网络结构引入到生成器的上采样区,如图2所示,整合全局和局部空间信息,建立图像各个位置像素间远近距离关联关系,提高生成图像的协调性和质量.
图2 中自注意力模块将前一隐含层通道数为C、尺寸大小为N=height(高)×width(宽)的输出特征张量x ∈RC×N作为输入,分别使用两个卷积核大小为1×1、通道数为C′=C/8 的卷积网络获取特征空间f和g,如式(2)所示
式中,Wf ∈RC′×N,Wg ∈RC′×N.然后通过张量相乘的方法计算得到f和g两个特征空间的相似度sij,并使用softmax 函数对计算j位置的值时i位置的值所占权重βj,i进行归一化处理:
由βj,i构成注意力权重矩阵,最终自注意力机制的输出为
式中,Wh ∈RC×N,h为输入信息x与权重矩阵Wh∈RC×C的乘积.
常规卷积关注局部相关性,而自注意力机制通过计算注意力权重矩阵来关注全局相关性.为了在生成图像的过程中,更好地在局部依赖基础上增加全局依赖,本文将自注意力机制模块的输出与原特征张量x相结合,加入初始值为0 的学习参数γ,通过网络训练过程中的反向传播算法来进行自适应调整
1.3 判别器模型
本文的判别器网络使用PatchGAN 结构对图像进行真伪鉴别,引入谱规范化(Spectral normalization,SN)来缓解梯度消失从而增加模型的稳定性.
判别器网络将输入的真实图像或生成图像划分为N ×N的多个区域,分别对每个区域进行真伪判断,结构如图3所示.其输出二维矩阵中每一个元素代表对应N ×N大小区域的图像真实性概率估计,最终整体图像的判定结果为每个区域的真实概率平均值.判别器网络能够对任意尺寸图像的高频结构信息进行建模,更关注图像局部的关键区域,使模型拥有更少的训练参数,从而更快得到图像的真伪判断结果.
图3 判别器网络Fig.3 Discriminator
判别器网络结构参数设置如表2所示,0~3 层使用斜率为0.2 的LeakyReLU 激活函数.
表2 判别器网络结构参数设置Table 2 The parameter setting of discriminator
判别器的训练是一个对生成数据分布与目标数据分布之间密度比率进行评价估计的过程[3].当生成分布与目标分布重叠部分可忽略时,判别器能够完全区分这两种分布,此时生成器的获得梯度为0,无法继续学习.为了克服梯度消失的问题,本文在判别器1~3 中间层网络中加入谱规范化,在训练过程中稳定、逐步地提升判别器的鉴别能力.谱规范化对各层权重矩阵W进行如下操作:
式中,σ(W)是权值的谱范数,其值为矩阵的最大奇异值.将f(·)作为判别器的函数表示,并假设其服从Lipschitz 连续分布,如式(7)所示,其中使不等式成立的最小K值称为Lipschitz 常数.
通过谱规范化操作,可以限制判别器网络的K值为1,防止在训练过程中因判别器能力突变造成梯度消失,进而提高整个模型的稳定性.
2 损失函数
本文图像翻译模型基于对偶学习,使用两组GAN 结构分别负责X →Y与Y →X的单向映射过程,共同完成图像域X和图像域Y之间的相互转换工作,因此整体损失函数中每组GAN 结构的对抗损失相类似,并使用重构损失指导生成器G和F的协同工作,整体损失为
式中,LGAN(G,DY,X,Y)表示生成器G和判别器DY的生成对抗损失,LGAN(F,DX,Y,X)表示生成器F和判别器DX的生成对抗损失,Lcyc(G,F)和Lself(G,F)分别表示重构损失中的循环重构和自我重构,λ1和λ2为循环重构损失和自我重构损失相对于对抗损失的权重比例超参数.
2.1 对抗损失
GAN 中的对抗损失代表生成器网络和判别器网络之间的零和博弈过程,最终目的是让生成器学习到真实的数据分布.在图像翻译任务中,就是生成足以以假乱真的目标图像域图像.
定义pdata(x)表示图像域X的样本分布,pdata(y)表示图像域Y的样本分布,以生成器G和判别器DY为例,使用真实图像y和生成图像G(x)对DY进行训练,并将DY对G(a)的判定结果反馈给G来指导其训练,Goodfellow 等[3]提出的原始生成对抗损失为
在实际训练中,式(9)损失函数minLGAN(G)的第1 项与G无关,因此不参与计算,即G的损失函数可写为minLGAN(G)=.
但是式(9)的对抗损失在一定程度上是不合理的.首先,在DY使用真实数据y和生成数据G(x),G仅使用G(x)进行训练的情况下,G通过DY间接与y建立关系,这需要DY必须记住关于y的所有属性信息才能更好地指导G的训练,从而导致对DY性能要求过高.其次,根据DY的输入数据一半为真实数据、一半为生成数据的先验知识,当生成数据足够真实时,DY无法区分输入数据的真伪,其对数据真伪判断的概率应为0.5,但式(9)中DY期望输出为1,即DY没有利用该先验知识,造成对抗损失函数设计不合理.最后,在训练过程中仅不断提高生成数据为真的概率DY(G(x)),加大了最小化不同分布之间JS(Jensen-Shannon)散度的难度,降低了整体模型收敛速度.
针对原始生成对抗损失设计不合理的问题,本文引入相对鉴别思想[14],提高生成数据为真的概率同时降低实际数据为真的概率,在对抗损失函数中使用DY(y)- DY(G(x))代替DY(y),使用DY(G(x))-DY(y)代替DY(G(x)),将绝对真假改变为相对真假的概率,如式(10)所示.
相对鉴别对抗能够让G直接借助于实际数据获得生成数据,从而提高G的能力;将真实数据y与生成数据G(x)混合输入DY中进行判别,进而充分利用GAN 的先验知识,增强整体模型训练过程的稳定性;提高生成数据为真的概率DY(G(x))的同时,降低实际数据为真的概率DY(y),有利于最小化真实分布与生成分布之间的JS 散度,加快模型收敛速度.
为了进一步增强生成图像的真实性,本文在相对鉴别对抗的基础上融合最小二乘损失[15],将对数运算变为残差平方运算,设计得到本文的对抗损失
使用最小二乘法可以在更严格地惩罚远离决策边界的假样本的同时,对判别器鉴定为真却远离决策边界的样本继续进行优化,更好地把控梯度下降的方向从而提高生成图片的质量.
2.2 重构损失
1)循环重构.在无监督的图像翻译任务中,因为在指定图像域转变的同时需要保留图像结构和图像内容等其他信息,仅有对抗损失不能保证生成图像与原图像之间保留固有的特征属性.为了更好地建立图像域之间的相互映射关系,本文引入对偶学习中循环一致性条件约束,使用循环重构损失引导模型在两个图像域相互转换过程中保留图像固有特征,同时采用L1 函数作为循环重构损失在像素级上获取图像的低频信息,与判别器网络对图像高频信息进行建模形成互补.
对于属于图像域X的真实图像x,经过生成器G转换为属于图像域Y的生成图像G(x)后,再经过生成器F将G(x)转换回原图像域,得到重构图像F(G(x)),那么图像x与F(G(x))应保持一致,即对于任一进行图像域转换的输入图像,在依次经过两个相反映射方向的生成器后,应得到与输入图像尽可能相同的结果.循环重构损失如式(12)所示
2)自我重构.循环重构在翻译过程中保留了图像内容结构等信息,但由于生成器网络不能明确区分图像中的多种图像域信息,在转换指定域的同时,往往伴随部分无关域信息的变化.因此,为了让生成器对相互转换的图像域具有一定的鉴别能力,明确所需转变的目标图像域信息,本文在循环一致条件约束的基础上,引入自我重构一致性约束条件,进一步引导图像翻译工作.
当完成X →Y方向翻译任务的生成器G在获得来自域Y的输入图像时,应输出与输入图像一致的翻译图像以达到自我重构一致性,生成器F同理.由于翻译过程中,受到图像域间地理环境和气候等拍摄条件不同的影响,像素级别的像素点控制的图像整体颜色作为无关域信息最容易发生改变,本文使用像素级的L1 函数作为自我重构损失,减少无关图像域的改变,即
3 实验结果及分析
本文在Horse &Zebra[7]数据集上进行局部范围的目标转换图像翻译,在Summer &Winter[7]数据集上进行整体范围的季节变换图像翻译,在AerialPhoto &Map[1]数据集上进行卫星图与路网图相互转换图像翻译.分别与无监督图像翻译方法、有监督图像翻译方法进行对比试验,验证本文方法的有效性,数据集具体说明如下:
1)Horse&Zebra(马和斑马数据集).分别使用“wild horse” 和“zebra” 作为标签在ImageNet[16]数据集中检索得到,包含1 187 幅马的图片和1 474幅斑马的图片.取120 幅马的图片和140 幅斑马的图片作为测试数据集,其余为训练数据集.
2)Summer &Winter(夏天和冬天风景数据集).在Flickr(www.flickr.com)网络相册上检索美国约塞米蒂国家公园的原始风景图片,根据日期划分为1 540 幅夏季图片和1 200 幅冬季图片.取309幅夏季图片和238 幅冬季图片作为测试数据集,其余为训练数据集.
3)AerialPhoto &Map(卫星航拍图与路网图数据集).在Google Maps 网站上获取的纽约市及其附近的卫星航拍图与导航路网图匹配图像数据,包含1 096 幅卫星图片和与之一一配对的1 096 幅路网图片.为了验证本文方法在较大数据集上的翻译效果,通过四角剪裁与中心剪裁的方式对数据集进行扩充,得到5 480 幅卫星图与5 480 幅路网图,分别取480 幅图片作为测试数据集,其余为训练数据集.
3.1 实验环境与训练细节
实验环境配置如下:
1)硬件环境:谷歌云服务器;CPU:2 个vCPU,7.5 GB 内存;GPU:NVIDIA Tesla K80,12 GB;磁盘:SSD,60 GB.
2)软件环境:操作系统:Ubuntu 16.04 LTS;开发框架:PyTorch 0.4.1,python 3.6.5.
输入图像和输出图像尺寸设置为128×128 像素,批量大小batch size 为1,每个生成器中间区域的残差块数量为6 个,判别器PatchGAN 的判别区域设置为70×70.在训练过程中,所有网络模型的权重使用均值为0、方差为0.02 的高斯分布进行随机初始化.在模型训练学习率的设定上,采用Heusel 等[17]提出的TTUR 策略补偿判别器学习慢的问题,生成器和判别器网络分别采用0.0001 和0.0002 的学习率进行单独训练.采用Adam 算法[18]对训练过程中的梯度下降进行优化,一阶矩估计的指数衰减率beta1 设定为0.5,二阶矩估计的指数衰减率beta2 设定为0.999.
3.2 评价指标
本文使用分类准确率(Classification accuracy,CA)、感知距离(Perceptual distance,PD)和用户调研评价(User study,US)作为翻译图像质量的评估指标.
分类准确率是无监督图像翻译方法中最广泛的评估翻译效果指标.首先使用数据集中真实图像在图像分类模型上进行训练,将真实图像在该模型的分类准确率作为基准值,然后将生成的翻译图像送入该模型中进行分类,得到其分类准确率并与基准值进行对比.准确率越高,代表所属图像域越容易区分,图像翻译效果越好.本文采用Xception[19]网络作为分类模型,获得图像的分类准确率.
感知距离是评估数据分布相似度指标,通过计算相同图像域中真实图像与生成图像特征空间中的平均距离,衡量图像域的一致性和真实性,感知距离分数越高代表图像分布越相似,图像质量越高.在计算相似度时,依次对x,y两幅图像不同层次特征向量xxxi,yyyi进行余弦相似度计算,最后相加得到两者的感知距离:
本文基于在ImageNet 数据集上预训练的VGG-16(Visual geometry group 16-layer net)[20]网络模型提取特征.对于一幅图像,获取其在每个最大池化层之前的特征向量作为不同层次图像特征.将随机组合的2 000 对图像间感知距离平均值作为最后分数,以真实图像之间的感知距离为基准,对比每组实验生成图像与真实图像间的数据分布相似度.
用户调研评价是图像翻译效果的主观评价方法,可以直接反映人眼对图像质量的评价.挑选N名用户,针对每个数据集随机选择M幅测试图像,将每幅图像不同模型输出的翻译图像作为一组提供给每个用户进行比较.统计各个模型输出图像被用户评选为最佳效果图的数量,得到用户对不同模型翻译效果的评价:
式中,n代表模型中被评为最佳效果图像个数.本文选择10 名学生、30 幅测试图像,共进行10×30=300 组翻译效果图对比.
3.3 自注意力机制和对抗损失评估
本文在生成器网络中引入自注意力机制模块,并在最小二乘对抗的基础上融合相对生成对抗损失,为验证其对训练过程和翻译效果的影响,在Horse&Zebra 和Summer &Winter 两个数据集上进行图像域转换实验.
首先,验证相对生成对抗损失对模型收敛性的影响,相同实验环境中在Summer&Winter 数据集上,分别使用最小二乘生成对抗损失和本文设计的相对最小二乘对抗损失进行训练,对比在16 万~22万不同迭代次数时本文方法采用相对对抗损失前和采用后的翻译效果图.从多组图像中挑选差异明显、有代表性的输出结果进行收敛效果对比分析,如图4所示.
观察图4 可知,本文方法采用相对生成对抗前经过20 万和22 万次训练后,翻译图像中山体色彩变化明显,模型开始进入收敛状态;采用相对生成对抗后,16 万次迭代时山体已经基本完成转变,18 万~20 万次训练过程中树叶和河岸草地等细节更加清晰,20 万~22 万次训练过程中图像基本相同,模型在20 万次达到收敛状态.观察测试数据集中所有图像翻译效果,本文选择耗时约23 小时的20 万次作为模型最终迭代训练次数.
图4 相对对抗收敛效果Fig.4 Relative discriminator convergence effect
其次,验证自注意力机制和相对生成对抗对训练稳定性和翻译效果的有效性,相同实验环境下,在Horse&Zebra 和Summer&Winter 数据集上,对比本文方法采用自注意力机制模块前后和采用相对对抗损失前后的翻译效果,实验结果如图5所示.
在图5 的第1、2 行马和斑马相互转换实验中,观察图5(b)和图5(d),采用自注意力机制模块后,减少了草地和土堆等图像背景的变化,提高了轮廓细节清晰度和斑马条纹的协调性;观察图5(c)和图5(d),采用相对生成对抗后,解决了训练过程不稳定导致的图像整体结构信息缺失的问题,增加了图像真实性.在第3、4 行夏冬季节转换实验中,观察图5(b)和图5(d),采用自注意力机制模块后,降低了图像整体色彩基调的变化,提升了树木细节清晰度和整体季节变化效果;观察图5(c)和图5(d),采用相对生成对抗后翻译效果更为明显.
图5 本文不同条件实验结果Fig.5 Experimental results under different conditions
为了进一步体现自注意力机制和相对生成对抗的有效性,在主观评价的基础上计算不同方法输出图像的分类准确率,如表3所示.采用自注意力机制模块前后准确率平均提高0.056,使用相对生成对抗损失前后准确率平均提高0.025.
表3 本文不同条件分类准确率Table 3 CA under different conditions
实验结果表明,自注意力机制解决了目标图像域变化不完全和无关图像域变化较大的问题,提升了输出图像整体的协调性;相对生成对抗损失在增强训练稳定性的同时,加快了整体模型的收敛速度,提高了输出图像真实性.自注意力机制和相对生成对抗损失两者结合有效提高了本文方法翻译图像的效果与质量.
3.4 翻译效果评估
1)配对数据集图像翻译
选择有监督图像翻译方法pix2pix[1]和无监督的图像翻译方法CycleGAN[7]与本文方法,在AerialPhoto &Map 配对图像数据集上进行卫星图与路网图相互转换实验,pix2pix 与CycleGAN 使用原作者开源代码进行复现.部分实验结果如图6所示,每列依次是原始输入图像,pix2pix、CycleGAN 和本文方法的输出翻译图像,以及数据集中与输入图像配对真实图像.
图6 中,在第1、2 行将卫星图翻译成路网图的实验中,pix2pix 仅大体上完成了转换工作,但是翻译图像与真实图像相差明显,大部分表示道路的白色线条与真实图像不符;CycleGAN 翻译效果较好,但是第1 行翻译图像中出现了部分真实图像没有的道路白色线条,第2 行中没有显示真实图像中代表高速公路的橘黄色部分;本文方法道路线条与真实图像基本保持一致,虽然每个房屋区域与真实图像略有差异,但是与输入图像对应区域相符,并且在第2 行中的高速公路对应区域出现了淡黄色.在第3、4行将路网图翻译成卫星图的实验中,pix2pix 同样仅能大体上完成转换工作,房屋与道路大体轮廓与真实图像相同,但是整体失真严重;CycleGAN 房屋的细节更加清晰,但是道路与树木依然较为模糊,第4行中海岸线未得到明确的体现;本文方法房屋更加立体,树木与真实图像有所差异,但是相较于Cycle-GAN 更加清晰,在第4 行中的海岸线公路轮廓明显,整体图像真实度更高.
图6 卫星图与路网图翻译效果对比Fig.6 Comparison of AerialPhoto &Map image translation
通过与pix2pix 和CycleGAN 进行卫星图和路网图相互转换对比实验,证明了本文方法提高翻译图像效果与质量的有效性.
2)非配对数据集图像翻译
选择具有代表性且同样适用于多种无监督图像翻译任务的CycleGAN[7]和UNIT[8]与本文方法进行对比实验.分别使用CycleGAN 和UNIT 原作者开源代码,相同的实验环境下,在Horse &Zebra 和Summer &Winter 两个非配对图像数据集上进行图像域转换实验,对比所有测试数据集图像的翻译效果,部分差异明显的实验结果如图7所示,每行依次是输入图像,CycleGAN、UNIT 和本文方法的输出图像.
图7 中,第1 行是将马转换成斑马,CycleGAN虽然斑马条纹最为明显,但是整体图像发黄,UNIT并没有出现斑马条纹,而且河水的背景变白,本文方法图像背景变化最小,在马脖子位置处的斑马条纹最清晰;第2 行是将斑马转换成马,CycleGAN 和UNIT 图像变化十分明显,绿色草地背景变白,斑马条纹虽然基本消失,但是马的颜色并不协调,本文方法在保留草地、影子等背景的情况下,马的毛色最为真实;第3 行是将夏天转换成冬天,CycleGAN 变化不明显,UNIT 丢失了树叶形态等图像细节信息,并且冬季图像特征不明显,本文图像树叶与水中倒影更加清晰、积雪更加明显;第4 行是将冬天转换为夏天,CycleGAN 整体图像变绿,UNIT 图像失真,本文方法去除了地面和树上的积雪,且远处的雪山和蓝色天空背景基本没有变化.
图7 多种方法翻译效果对比Fig.7 Comparison of multiple image translation methods
为体现实验的公正性原则,对于每项翻译任务,各选择30 幅测试输入图像及3 种方法的翻译效果图构成30 组评价样本,选择10 名研究生作为学生用户分别对其翻译效果进行评选,得到10×30= 300组翻译效果图对比主观评价结果.用户评选最佳效果图像标准如下.
在图像局部范围变化的马与斑马翻译实验中,选择图像背景变化最小,马和斑马形体轮廓保持完整,仅发生斑马条纹变化的翻译图像为效果最佳图像.
在图像整体范围变化的春季与冬季季节变换实验中,选择翻译图像更符合真实的春季或冬季景象,图中树木、地面、湖水、天空和山体等信息与原图更为一致的翻译图像为效果最佳图像.
通过用户调研得到3 种方法翻译图像效果的主观评价,数据如表4所示.在不同翻译任务效果对比中,均有55% 以上的评选结果认为本文方法的输出图像是最佳图像,从而证明本文方法相较CycleGAN 与UNIT,有效地提高了翻译图像的视觉效果.
表4 用户调研评价(%)Table 4 User study(%)
为了进一步验证本文方法的有效性,以真实图像分类准确率作为基准,比较每个数据集上不同方法输出图像的分类准确率,实验数据如表5所示.从表中数据可知,本文方法的分类准确率最接近真实图像的分类准确率,相比于CycleGAN 平均提高0.066,相比于UNIT 平均提高0.123,其中在Summer &Winter 数据集上提升更加明显.
表5 分类准确率对比Table 5 Classification accuracy comparison
最后计算3 种方法在相同图像域中输出图像与真实图像之间的感知距离,实验数据如表6所示.
观察表6 可知,本文方法输出图像与真实图像间感知距离相较于CycleGAN 平均提高0.017,相较于UNIT 平均提高0.071,两者分布最为接近,再次证明了其在提高图像翻译效果和图像真实性方面的有效性.
表6 感知距离对比Table 6 Perceptual distance comparison
4 结论
本文基于对偶学习使用两组GAN 完成无监督图像翻译.针对生成图像整体协调性差和图像细节不清晰,造成真实性低的问题,在生成器网络中引入自注意力机制,建立远近距离像素间关联关系,增加额外的跳跃连接降低无关图像域信息损失,提高细节清晰度.针对整体模型梯度消失问题,在判别器网络中采用谱规范化逐步提升判别能力,提高训练稳定性.在循环重构的基础上增加自我重构损失,共同建立图像域之间的映射关系;采用相对生成对抗损失加快模型收敛速度,提高图像翻译效果.马、斑马局部图像翻译和夏、冬全局图像翻译实验结果表明,本文方法相比CycleGAN 和UNIT 模型建立了更真实的图像域映射关系,提升了翻译图像视觉效果和质量.但本文仍存在较大提升空间,对其局限性及未来工作归纳如下:
1)本文方法在循环重构的基础上增加自我重构减少了与目标域无关的图像信息变化,但是依然无法完全避免无关信息的改变.如何在图像翻译过程中只改变目标图像域,并与原图进行融合,将有助于提升图像翻译效果.
2)本文方法仅适用于单图像域的翻译任务,在同时建立多个图像域之间映射关系时需要针对每对图像域进行训练,不能完成端对端的图像翻译.改进整体模型结构和损失函数以适应多图像域翻译将是下一步的研究工作.