利用自然语言文本描述进行图像编辑
2020-06-11周作为钱真真
文/周作为 钱真真
(北京交通大学计算机与信息技术学院、交通数据分析与挖掘北京市重点实验室 北京市 100044)
1 概述
随着智能手机的普及,越来越多的人开始使用手机拍摄照片,也开始对拍摄完成的照片有着越来越多的个性化需求。这一系列的需求催生了许多移动端图像编辑软件的发展,这些移动端图像编辑软件的产生,在满足了人们需求的同时,也使得人们无需再掌握在PC 端才能运行的Photoshop 等专业工具,就能轻松实现图像编辑。但是目前移动端图像编辑软件在操作上大多也需要使用者进行手动操作,从而在众多的功能效果中挑选并通过不同的尝试,实现对图像的编辑操作。这种方法,通常情况下都比较费时,且不一定能够满足使用者的需求。我们注意到,语言使人们用于描述一个物体最简单、最有效的方式。通过简单的语言描述,人们能够轻松地将脑海中的画面构建出来。因此,在这篇文章中,我们尝试实现一种利用自然语言文本描述来对图像进行编辑操作的方法。
近年来,包括生成对抗网络[1]、变分自动编码器[2][3]、自回归模型[4][5]在内的深度生成模型得到了广泛的研究。这其中,关于生成对抗网络的研究尤为火热。简单来说,生成对抗网络由一个生成器和一个判别器构成,通过生成器和对抗器的交叉对抗训练过程,最终达到一个纳什均衡,此时生成器生成的图片足以达到迷惑判别器的效果。生成对抗网络的产生为深度学习(尤其是视觉)领域的研究打开了一扇神奇的大门。自生成对抗网络产生之后,越来越多的研究人员将生成对抗网络应用在不同场景,解决了很多在前生成模型时代很难解决的问题。这些研究进一步丰富了生成对抗网络的研究内容。可以说,生成对抗网络的发展推动了对图像生成[6]、图像翻译[7]、图像编辑[8]及图像修复[9]等多个领域的进一步研究。
本文所研究的利用自然语言文本描述进行图像编辑的问题,是一个综合文本与图像的多模态问题。解决这个问题的主要难点在于以下两个方面:
(1)模型需要有将给定文本描述与图像的相应区域对应匹配的能力,这就要求模型能够将包含在文本和图像中的语义解开;
(2)模型需要能够学习到解开的文本和图像语义之间的关系,以便能够生成更加真实的图像。
目前的研究多采用条件深度生成模型来解决文本与图像结合的多模态问题。[8]是第一篇提出使用一种端到端的深度神经网络结构,利用对抗学习自动学习隐式损失函数从而实现使用自然语言文本编辑图像的目的。他们的方法建立在条件生成对抗网络[10]的基础上,使用图像和文本描述作为条件约束,通过优化组合的成对损失来预训练一个文本编码器以及一个图像编码器,计算实现视觉语义文本嵌入。[11]通过引入在解决复杂视觉问答任务中提出的特征对线性调制,在不使用额外空间信息的情况下,将图像特征和文本特征更好地联系起来并进行转换,使得模型能够合成令人信服的图像。另外,其他研究[12]通过对以往视觉语义文本嵌入方法的理论分析,证明所有的条件方法都可以使用基于[13]提出的的双线性变换通用形式来建模。
图1:研究目标示意图
图2:本文所提出模型的网络结构图
目前,关于利用自然语言文本描述进行图像编辑的研究在与文本相关的图像区域编辑效果以及与文本无关的图像区域保持效果上仍具有不足之处。为了更好地解决这些问题,在这篇论文中,我们通过为生成器以及判别器设计并提供更加有效的损失函数,从而实现更有力地指导生成器和判别器的训练,最终实现更好的编辑效果。本文在Caltech-200 鸟类数据集[14]以及Oxford-102 数据集[15]上开展了大量的实验,结果表明,本文的方法在多个方面均优于现有方法。
2 问题描述
图3:基准方法和本文方法在Caltech-200 鸟类数据集上的对比结果
图4:基准方法和本文方法在Oxford-102 花卉数据集上的对比结果
图1 形象地说明了本文研究的问题,在给定一个原始图像和一个目标文本描述的情况下,我们希望能够合成一张与文本描述一致的目标图像,并且要求目标图像能够在于文本描述无关的区域保持与原始图像一致。我们采用与[8]一致的定义方法,将原始图像定义为x,目标图像定义为,将与原始图像对应的真实文本描述、语义相关文本描述以及不匹配文本描述分别定义为t,其中,原始图像x 和真实文本描述t 由数据集给出。可以通过真实文本描述t 构建。本文研究的目标是在给定原始图像和对应文本描述对的情况下,通过生成对抗网络的对抗训练过程,使得生成器最终能够生成在视觉上满足要求的图像
3 方法分析
为了能够解开在文本和图像中包含的语义关系,与以往方法相同,我们利用了在文本与图像相关性研究方面现有的方法[16]。首先利用给定的图片以及对应的文本描述分别利用卷积神经网络CNNs[17]构建的图像编码器φ 和长短时记忆网络LSTM[18]构建的文本编码器φ 编码到相同的维度,然后计算成对的文本-图像之间的余弦相似度,进一步构建一个成对排序损失函数。利用训练集中相匹配的文本和图像对进行训练,最终获得一个能够成功解开蕴含在文本和图像中语义信息的文本编码器。利用这个预训练的文本编码器,我们就能够在进一步训练生成对抗网络的过程中,实现对文本的编码操作。预训练模型的目标函数如下:
其中,s 用于计算图像嵌入向量φ(x)和文本嵌入向量φ(t)之间的余弦相似度。xk和tk分别表示不匹配的图像和文本。θ 代表图像编码器和文本编码器中的所有参数,α 是一个边际值。
我们基于条件生成对抗网络设计了整体模型结构。图2 是我们模型的整体网络结构图。与以往的方法相同,我们的模型在生成器部分也采用了编码器-解码器的结构。编码器将原始图片编码成高维度特征,与经过预训练文本编码器编码的文本特征连接之后,经过四个残差块进一步提取隐藏的图像特征,最终输入到解码器进行解码操作。判别器部分输入图片和相应的文本描述,在给出输入图片、文本是否匹配的同时,对输入图片的真实性进行判断。与以往的方法相比,我们设计的模型在训练生成器的过程中,通过加入对生成器生成的图像以及文本的之间的相似度度量损失,为生成器提供更为有效的半监督指导,从而使得生成的图像与文本描述具有更好的相关性。同时,如果我们将图像与其真实描述输入生成器,希望得到的图像能够尽量保持与原始图像的一致性。因此,我们进一步引入了重构损失,通过将生成的图像和原始图像计算L1 损失附加给生成器,使得生成器在训练的过程中能够进一步理解语义,保持与文本描述无关的区域的特征。通过在判别器部分加入对生成图像的判别损失,提高判别器对生成图像和真实图像的判别能力,从而为生成器提供更有力的对抗损失,提高生成图像的真实性。值得说明的是,两个判别器共享了图像下采样层的参数。
综上所述,本文提出的模型的损失函数定义如下:
其中,Lpwrloss可以通过等式(1)计算得到, Lrec是计算生成的图形与原始图像的L1 损失。
4 实验
4.1 数据集和实验细节
我们通过在Caltech-200 数据集以及Oxford-102 数据集上进行实验来验证我们的方法。其中,Caltech-200 数据集包含200 个类别,共11788 张鸟类图像,我们将其中150 个类别的鸟类图像作为训练数据,将剩下的50 个类别的鸟类图像作为测试数据。Oxford-102数据集包含102 个类别,共8189 张花卉图像,我们将其中82 个类别的花卉图像作为训练数据,将剩下的20 个类别的花卉图像作为测试数据。针对Oxford-102 和Caltech-200 数据集里的每张图像,数据集均提供十条用于描述该图像的文本。我们使用Adam 优化器在一台安装有一个NVIDIA GeForce GTX 1080Ti 高性能显卡以及ubuntu18.04 操作系统的服务器上对我们的模型进行了400 轮训练。初始学习率设置为0.0002,每100 轮衰减为当前的0.5 倍。
4.2 定性比较
为了进行实验评估,我们选取方法[8][11]作为基准方法来与我们的方法进行比较。图3,4 展示了我们的方法以及基准方法在Caltech-200 和Oxford-102 数据集上的定性结果。正如图[3]中所展示的,方法[8][11]生成的图像能够在一定程度上符合文本描述,但是他们的方法生成的图片往往不能满足我们的期望,这主要是因为他们的方法生成的图像对原始图像的编辑过于粗糙,而且对文本描述无关区域的保持较差,图像变化巨大。例如,生成的经过编辑鸟类图像结构发生了改变。相反,我们的方法生成的图像比基准方法生成的图片更加真实和生动,在实现根据文本描述进行图像编辑的同时,更有效地保持了与文本描述无关区域的细节。
4.3 定量比较
我们选取了在[6][7]中使用的Inception Scrore(IS)来将我们的实验结果与基准方法进行定量比较。IS 可以通过IS=exp(ExDKL(p(y|x)||p(y) ) )计算得到。其中,x 表示生成器生成的图像,y 表示由inception-v3 模型预测得到的标签。IS 指标用来度量模型生成图片的清晰度和多样性,越好的模型拥有越高的分数。表1 展示了我们的模型连同基准方法的模型在IS 指标计算得到的结果。
表1:基准方法和本文方法在IS 评分上的对比
我们的模型在两个指标上均取得了最好的实验结果,这表明我们的模型在生成与自然语言文本描述更具匹配性且保持了与文本描述无关的原图细节的同时,生成了更加真实、更高质量的图像。
5 结论
在本文中,我们研究了使用自然语言文本描述编辑图像的任务,基于现有方法设计并提出我们基于条件生成对抗网络的网络结构。通过引入文本图像相关度损失,实现了对文本图像的精确匹配并且为生成器提供半监督损失,通过引入生成图像与原始图像的重构损失,实现了对文本无关区域图像特征的保持效果。通过对抗损失的计算,进一步优化判别器,从而为生成器提供更有效的对抗损失,使得生成器生成的图像更加真实。我们的模型很好地解决了现有方法存在的不足,在Caltech-200 数据集和Oxford-102 数据集上的结果表明,不管是在定性和定量比较上,我们的方法均优于现有的方法。