神经风格迁移模型综述
2021-10-14唐稔为刘启和
唐稔为,刘启和,谭 浩
电子科技大学 信息与软件学院,成都 610054
绘画是艺术的一种表现形式,优秀的画作总是会吸引到大众的目光,在过去,一幅优秀的画作需要耗费一个专业的画家大量的时间来精雕细琢。现在随着计算机视觉的兴起,科学家们开始研究如何利用计算机技术将普通图像转换为艺术画作,风格迁移技术应运而生。风格迁移技术不仅可以用于绘制艺术风格图像,也可用于娱乐行业,例如影视、动漫的制作,将需要由人工逐步制作的背景渲染、漫画上色等交由风格迁移网络来批量完成,极大地缩短了制作时间,降低了制作成本。
图像风格迁移可以理解为对图像进行重新渲染,在保持其内容特征不变的情况对其颜色、纹理等进行改变的过程。风格迁移技术主要分为传统风格迁移技术和神经风格迁移技术(Neural Style Transfer,NST)。
传统迁移技术主要包括早期的非真实感渲染(Non-Photorealistic Rendering,NPR)[1-3]和纹理迁移[4-6]。NPR可对特定艺术风格,如水彩画、油墨画以及中国风的古典画等各种画风进行数字化模拟。根据渲染方式不同,NPR 可细分为三类:笔触渲染、图像类比和图像滤波。Meier[7]提出基于笔触渲染的画笔模型,可以模拟油画生成的过程;Hertzmann等人[8]提出图像类比的概念,在有监督的状态下改变原图风格;Winnemöller等人[9]引入双边滤波器和高斯差分滤波器来自动生成卡通风格图像。
纹理迁移技术主要用于纹理合成,即根据参考图像来对输入图像进行纹理填充,使得生成图像具有类似于样图的纹理风格,适用于处理纹理简单且重复的图像,如木纹、砖块和墙面等。Efros和Leung[10]采用马尔科夫随机场(Markov Random Field,MRF)模型,选取与待填充像素点的邻域最接近的纹理片段来对该点进行像素填充。这是早期纹理合成的经典算法,但该方法每填充一个像素值就需要遍历一次纹理片段,时间成本很高。Wei 等人[11]为了解决以上问题,利用矢量量化的方法提升了纹理合成的速度。Ashikhmin[12]提出了适用于自然景观的纹理合成算法。徐晓刚等人[13]提出以多种纹理样图为参考,得到混合纹理图像的算法。Han 等人[14]提出一种新的基于样例的多尺度纹理合成算法,实现了基于不同尺度的低分辨率图像的纹理合成。
尽管以上传统迁移技术能够用于生成各类艺术作品,但仍有如下不足:(1)模型泛化程度差,只能进行某种特定风格的渲染;(2)这些技术只考虑了低层细节特征,没有提取图像高层语义特征;(3)以上方法采用逐像素编译来转换图像,速度较慢。为了解决这些不足,神经风格迁移技术应运而生。
Gatys等人[15]发现深度神经网络可同时提取图像底层纹理信息和高层语义信息,并将该技术引入风格迁移领域,率先研究出一种基于VGG(Visual Geometry Group)网络的神经风格迁移模型,效果图如图1 所示。Gatys等人[15-18]的工作吸引了学术界和艺术界的广泛关注。
图1 Gatys神经风格迁移效果图Fig.1 Generated results of Gatys’neural style transfer
目前主流的神经风格迁移算法,根据图像生成方式的不同可分为两类:(1)基于图像迭代的慢速风格迁移;(2)基于模型迭代的快速风格迁移。其中基于图像迭代的慢速风格迁移通过在噪音图像上进行像素迭代来生成风格化图像,根据风格化方式的不同可再细分为基于统计参数和非统计参数的方法。其中基于统计参数的方法主要根据全局统计信息来进行风格匹配,以Gatys等人[15]的算法为代表。基于非统计参数的方法主要根据区域块相似性来进行风格迁移,当内容图像在形状上与风格图像接近时效果较好,以Li 和Wand 等人[19]的研究为代表。
第二类基于模型迭代的快速风格迁移算法包括基于前馈风格化模型和基于GAN(Generative Adversarial Network)的方法。其中,基于前馈风格化模型的算法通过预先训练生成模型的方式来快速风格化图像,以Johnson等人[20]和Ulyanov等人[21]为代表;基于GAN网络的方式主要是通过生成器与鉴别器之间的博弈来转换输入图像风格,以条件式生成对抗网络(Conditional Generative Adversarial Nets,CGAN)[22]和StarGAN[23]为代表。
本文的贡献在于概述了现有的神经风格迁移算法,对其进行了详细的分类,并系统地讲解了各类代表性模型的算法原理。同时提出了针对神经风格迁移算法的评估方法,为模型的选择提供了参考。最后,总结了现阶段神经风格迁移技术的不足之处,并提出了相应的改进措施。
本文第一部分对现阶段神经风格迁移算法进行分类和解释;第二部分阐述了神经风格迁移技术的商业前景;第三部分提出了风格迁移算法的评价方法,总结了各代表性模型的优缺点;第四部分指出了当前风格迁移方法存在的问题并提出解决方法;最后进行了总结并指出风格迁移算法具有良好的研究前景。
1 神经风格迁移方法
本章概述了当前主流的神经风格迁移方法,包括基于图像迭代的慢速神经风格迁移和基于模型迭代的快速神经风格迁移。前一类方法在图像上逐像素迭代得到风格化图像,计算效率低下[24];后一类方法则是利用生成模型来风格化图像,生成速度上提升明显,但同时也存在生成质量不佳以及灵活度不够的缺点。
1.1 基于图像迭代的慢速神经风格迁移
基于图像迭代的慢速神经风格迁移首先利用深度神经网络提取图像特征,然后在随机噪声图像上采用反卷积神经网络(Convolutional Neural Networks,CNN)来迭代更新噪声图像像素,使其拥有内容图像的语义特征与风格图像的风格特征。这种采用反向CNN来进行图像重建的方法由DeepDream首次提出[25]。
基于图像迭代的慢速神经风格迁移定义了两类损失函数:内容损失函数和风格损失函数。其中,风格损失函数是神经风格迁移的关键,根据风格损失函数的不同再细分为以下两类:基于统计参数的方法、基于非统计参数的方法。
1.1.1 基于统计参数的方法
基于统计参数的方法根据全局统计信息来进行风格迁移。其中,基于Gram矩阵的方法、基于最大均值差(Maximum Mean Discrepancy,MMD)的方法都属于基于统计参数的方法。
Gram 矩阵Gatys 等人[15]于2015 年第一次将VGG网络和Gram矩阵[16]应用到风格迁移中,他使用VGG网络的中高层激活函数的输出来表示图像的内容特征,主要包括其宏观结构和轮廓等,然后使用Gram 矩阵来描述其风格特征。最小化生成图像与输入图像的内容特征与风格特征差异即可实现图像风格迁移。下式具体展示了计算内容特征差异的内容损失函数:
等式左侧p表示内容图像,x表示风格化图像,l表示在VGG网络的第l层;等式右侧和分别表示风格化图像以及内容图像在VGG 网络的l层中第i个特征映射的第j个激活值。风格损失函数定义如下:
其中,Lstyle表示总损失;ωl表示l层风格损失函数所占的权重;El表示l层的风格损失;Nl表示第l层的所有滤波器;Ml表示第l层的特征映射大小。和分别表示风格图像和风格化图像的Gram矩阵。下式给出了Gram矩阵的定义:
其中,表示风格图像在VGG网络的l层中第i个特征映射的第k个激活值。总损失函数定义如下:
其中,a、p和x分别表示风格图像、内容图像和生成图像;β和α为风格损失函数和内容损失函数各自在总损失函数中所占的权重。
但Gatys 等人的方法不能捕获图像的长期相关性;同时,采用Gram矩阵来表示风格特征的方法在稳定性、生成纹理质量等方面都具有局限性。此外,Gatys 等人的方法只提取了图像高层特征,摒弃了低层信息,因此风格化后的图像会出现细节丢失的情况。而且Gatys等人的算法没有考虑图像的笔触变化、语义信息以及深度位置信息等,这会导致不合理的风格化。因此,后续的算法针对Gatys等人算法的缺点来进行了改进。
Berger 和Memisevic 等人[26]在Gatys 的基础上进 行改进,通过在高级特征上加入马尔可夫结构,使得生成图像满足长期一致性,可用于具有全局对称性的纹理生成以及图像季节的变换。
Risser 等人[27]通过研究发现Gram 矩阵不稳定的主要原因在于Gram矩阵在表征图像特征时不能体现该图像数据的分布信息,这可能导致两张数据分布不同的图像具有完全相同的Gram 矩阵。因此Risser 等人[27]额外引入了统计直方图损失来表征图像特征的分布信息,解决了Gram 矩阵不稳定的问题,但是该算法在计算上十分复杂。
针对内容图像低层信息丢失的问题,Li等人[28]引入拉普拉斯损失对低层特征附加约束,使用拉普拉斯矩阵额外描述了内容图像中的低层信息,对VGG 网络中提取的高层语义信息进行了细节上的补充。
后续研究引入语义信息来加强对生成图像的控制。Castillo等人[29]在Gatys等人[15]的方法上引入基于实例的语义分割来实现针对特定区域的风格迁移。Luan等人[30]通过人为控制将内容图像和风格图像的语义特征——映射,使得风格迁移发生在语义相同的子区域,防止各区域块风格的溢出。Penhouest和Sanzenbacher[31]在Luan等人[30]的基础上进行改进,引入图像语义自动分割,简化了工作流程。
最大均值差Li等人[32]通过研究提出一种针对神经风格迁移的新解释,将其视为一个领域适应问题,采用MMD来比较源域和目标域的风格差异。通过使MMD最小化,即缩小领域差距来完成从源域到目标域的图像迁移。Li等人[32]的算法从数学层面对Gram矩阵匹配原理进行了解释,证明了匹配风格图像和生成图像的Gram矩阵本质上是最小化两个域分布之间的MMD。因此采用不同核函数的MMD算法都可以用于风格迁移,该结论增加了对神经风格迁移网络的理论描述,使学术界对风格迁移的理解更加透彻。
尽管以上方法对Gatys 等人的算法进行了改进,解决了其不稳定、细节丢失、缺乏语义信息等问题,但仍未解决笔触变化以及深度位置信息缺失的问题,这对于生成图像质量的影响是不可忽略的。
1.1.2 基于非统计参数的方法
与基于统计参数的方法不同,基于非统计参数的方法首先将两幅图像分割成许多区域块,然后对两幅图像之间最相似的区域块进行匹配来实现风格迁移,在保持图像局部特征方面效果较好。其中基于深度神经网络的马尔可夫随机场(Markov Random Fields,MRFs)、语义风格迁移和深度图像类比都属于非统计参数方法。
马尔可夫随机场Li 和Wand[19]发现早期的基于马尔可夫随机场的传统风格迁移方法仅捕获每个像素特征的相关性,而没有约束其在空间上的布局,因此提出将马尔可夫随机场与dCNN(deep Convolutional Neural Network)相结合来进行风格迁移。他们采用马尔可夫随机场模型对dCNN提取到的图像特征映射进行分割,得到许多区域块,并通过捕获图像局部像素的特征信息的方式对两幅图像的区域块进行匹配。公式(6)为Li和Wand引入的马尔可夫随机场损失:
其中,m表示区域块的总数量;Fl(I)为神经网络模型中l层的区域块集合;Ψi(Fl(I))表示Fl(I)中的第i个区域块;ΨNN(i)(Fl(Is))是与Ψi(Fl(I))区域块最佳匹配的区域块,采用归一化互相关计算得到。结果如图2所示。
图2 Li和Wand的风格迁移效果图Fig.2 Generated results of Li and Wand’s style transfer
但Li和Wand[19]的算法在内容图像与风格图像差异过大时,风格化结果并不理想,而且该算法不能很好地保留图像的细节以及全局语义信息。
语义风格迁移由于Li 和Wand[19]的算法没有对图像进行精确的掩码分割,有时会导致错误的语义匹配,因此Champandard[33]将语义分割与Li 和Wand 的MRFs算法相结合,实现了语义风格迁移。但MRFs的算法复杂度较高,因此Chen和Hsu[34]提出一种新的基于内容感知的语义映射模型来代替MRFs,即利用掩码来约束源图像与目标图像之间的空间对应关系,同时引入风格特征的高阶统计信息来加强风格匹配的一致性,简化了生成过程。之后,Merchrez等人[35]提出一种新的上下文损失,这种损失只考虑图像特征之间的相似性,忽略特征的空间位置,实现了无需进行空间对齐的语义风格迁移。
深度图像类比与基于MRFs 的方法不同,Liao 等人[36]提出的深度图像类比通过最近邻算法来寻找两幅图像之间最相似的区域块,使两幅图像的特征对齐来进行风格迁移。但该方法并不能很好地保存图像全局语义信息,因此Gu等人[37]在此基础上提出特征重排损失,即在最近邻算法的基础上引入约束,尽量让每一个区域块都被匹配,来保持图像的全局语义。
尽管以上基于非统计参数的方法为慢速神经风格迁移拓宽了思路,但仍存在很多局限性:(1)要求内容图像与风格图像在形状上具有一定的相似性;(2)在图像全局语义特征的展示上有所欠缺;(3)生成图像的风格模式较为单一,风格特征不够丰富。
1.2 基于模型迭代的快速神经风格迁移
尽管基于图像迭代的神经风格迁移方法的生成效果十分可观,但由于其需要对图像中的每个像素进行迭代,耗时久成为了亟待解决的缺点。Johnson 等人[20]提出了解决办法,以牺牲风格选择的灵活性为代价,将图像生成过程交由经过训练的前馈风格化网络来完成,极大地提高了风格迁移速度。
本章详述了基于模型迭代的方法,包括基于前馈生成模型的方法和基于GAN 的方法。其中,基于生成模型的方法首先需要大量的图像数据集来训练前馈风格化网络,输入的内容图像经过该网络后可直接输出风格化的结果。基于GAN的方法则需要对生成器和鉴别器进行训练,直到其达到一个纳什平衡的状态,此时的生成图可以以假乱真。
1.2.1 基于前馈风格化模型的方法
基于前馈风格化模型算法的代表性工作有两个,分别是Johnson等人[20]和Ulyanov等人[21],这两个模型思路相似,都是通过预训练前馈风格化模型的方式来对图像进行风格化,其不同之处在于模型结构。Johnson等人[20]在Radford等人[38]提出的模型结构上使用了残差块和分步卷积,Ulyanov 等人[21]则使用多尺度架构作为生成网络。
Johnson等人[20]以Gatys等人[17]的算法为基础来进行改进,率先提出了基于前馈风格化模型的快速风格迁移方法,实现了实时风格转换。Johnson 等人[20]引入感知损失函数,该损失函数与Gatys 等人[17]提出的两个损失函数一致。其最终目标函数为:其中,λs、λc和λTV分别表示风格损失函数、内容损失函数和图像平滑函数在总损失中所占的权重;yc代表VGG 网络从内容图像中提取到的内容特征;ys代表VGG网络从风格图像中提取到的风格特征;f(x)代表输出图像的特征表示;为图像的风格损失函数;为图像的内容损失函数;lTV(y)为总变差正则化项,可以使输出图像的空间结构更加平滑,达到抗噪的效果。结果图如图3所示。
图3 Johnson的风格迁移效果图Fig.3 Generated results of Johnson’s style transfer
Ulyanov等人[21]提出的图像生成模型使用了多尺度架构,可以学习到输入图像在不同维度上的特征,使生成图像拥有更加丰富的细节。相比于Johnson 等人[20],Ulyanov 等人[21]的模型采用了更多的并行通道,减少了模型参数,进一步提升了风格迁移速度。
随后,Ulyanov 等人[39]发现用实例归一化(Instance Normalisation,IN)代替原模型[21]中的批量归一化(Batch Normalization,BN)[40],即单独对每张图像进行归一化处理,可以极大地提升生成图像质量。
但是Johnson等人[19]和Ulyanov等人[21,39]的算法设计仍遵循Gatys等人[15]的模型,因此具有和其一样的局限性,即底层信息丢失、无笔触变化以及缺乏深度位置信息等。同时,其生成图像质量略差于Gatys等人[15]的算法。
尽管上述生成模型方法比以往基于图像迭代的风格迁移方法快两个数量级,但只能生成特定风格的图像,想得到其他风格需重新训练一个前馈生成网络,灵活性差且非常耗时。因此单模型多风格的生成网络开始出现,它将多种风格整合到一个模型中来提高前馈网络的效率。Dumoulin 等人[41]在Ulyanov 等人[39]的基础上进行改进,提出了条件实例归一化(Conditional Instance Normalization,CIN),通过只改变IN 层的参数得到能生成32 种不同风格的图像转换网络。Chen 等人[42]提出StyleBank 层的概念,将风格特征与StyleBank层中的一组参数绑定,内容特征共享,想要实现新的风格迁移只需单独训练一个新的StyleBank层即可。以上算法将风格特征与少量模型参数绑定,减少了训练量,但随着其学习的风格数量的增加,模型参数会越来越冗余。因此,Li等人[43]提出了一种包含多种风格的风格选择模型,将图像像素作为信号输入来控制风格化图像生成,该模型可以合成300多种纹理并能生成16种风格的前馈网络。Zhang 和Dana[44]提出CoMatch 层的概念,首先让模型学习多种风格,然后把目标风格图像特征作为信号输入,指导输入图像在CoMatch 层匹配该风格特征,实现风格迁移。
随后,Chen 和Schmid[45]首次提出任意风格迁移模型,他们使用预训练的VGG 网络从内容特征和风格特征中分别提取出多个激活块,然后将每个内容激活块与最相似的风格激活块进行匹配,文中称为“Style Swap”,得到生成图像,但该模型风格化速度较慢。Huang 和Belongies[46]在Dumoulin[41]的基础上对CIN进行改进,提出自适应实例归一化(Adaptive Instance Normalization,AdaIN)层,该模型速度优于Chen和Schmidt[45]的方法,实现了对输入图片进行实时任意风格转换。但是AdaIN[46]算法是由数据驱动的,在对未出现过的数据进行泛化时有局限性。此外,AdaIN仅对特征映射的均值和方差进行改变,难以得到具有丰富细节和复杂结构的生成图。Lu等人[47]将语义风格迁移引入前馈生成模型,实现了基于语义对应的任意风格迁移。Li 等人[48]提出一种基于编码器/解码器的模型,用白化和上色转换(Whitening and Colouring Transformations,WCT)第一次实现了无需针对特定风格进行训练的任意风格迁移。Li等人[49]研究发现AdaIn[46]和WCT[48]等算法都是将内容图像特征与一个转换矩阵线性相乘来实现风格迁移,因此提出一个针对以上线性风格迁移的一般优化方法,即训练线性前馈模型来代替风格迁移过程中的矩阵计算,进一步简化了前馈风格化模型的生成流程,提高了生成速度。Shen 等人[50]提出一个新的元网络来实现任意风格迁移,相比于以往模型,该元网络具有更小的模型尺寸,方便移植并且能在移动端上运行。Park 等人[51]发现之前的算法并没有很好地平衡全局和局部的风格模式,因此提出风格注意力网络(Style-Attentional Network,SANet),其可以根据内容图像的语义空间分布,灵活地将风格特征匹配到内容特征上。
可以看出,前馈风格化模型的灵活度有了很大的提升,实现了任意风格迁移,但其生成图像质量仍略逊于基于图像迭代的慢速风格迁移算法。
1.2.2 基于GAN网络的风格迁移方法
2014 年,GAN 被Goodfellow 等人[52]首次提出,该网络由两部分组成:生成器和鉴别器,模型结构如图4 所示。其训练过程可以视作生成器和鉴别器之间的博弈。前者致力于生成以假乱真的数据,相应地,后者致力于辨别出虚假数据。两者在对抗中共同学习、进步,使生成结果达到最好。
图4 基于GAN的图像风格迁移基本框架图Fig.4 Basic framework of image style transfer based on GAN
Goodfellow 等人[52]引入对抗损失函数来训练GAN网络,具体如下所示:
其中,x为真实图像;z为输入的噪音图像;G(z)为通过生成器之后的生成图像,D(x)为鉴别器给出的真实图像x判别为真的概率,D(G(z))为鉴别器给出的生成图像G(z)为真实图像的概率。
Li和Wand[53]通过对抗性训练来训练基于马尔可夫随机场的前馈网络,得到了具有真实感的图像。结果表明,他们的算法优于Johnson 等人[20]的前馈生成模型算法,可以在复杂图像中保留连贯的纹理。然而,Li 和Wand 等人的算法没有考虑语义相关性,因此在非纹理样式例如面部合成方面效果较差。
Mirza 等人[22]提出CGAN 来进行图像生成,该模型在原始GAN模型的基础上为生成器和鉴别器都加入了额外信息y,来引导模型生成方向。但该监督学习算法需要在预先处理过的成对数据集上进行训练,然而很多情况下,并没有这样完美的成对数据集。因此,继续深入研究基于无监督学习的风格迁移GAN。Zhu 等人[54]提出无需在成对数据集上进行训练的CycleGAN,该网络分别采用两个生成器和两个判别器。两个生成器用于在两个域之间互相转换,两个判别器用于分辨两个域中图片的真假。该模型不仅要求图像可以从源域转换到目标域,同时也要求目标域图像可以转换回源域,称之为循环一致性损失,该损失具体如下:
其中,x和y分别为两个图像域;G(x)为x向y的映射;F(G(x))为生成的G(x)反向映射回x;G(F(y))同理。DiscoGAN[55]和DualGAN[56]在模型架构和实验思路上与CycleGAN 相似。Liu 等人[57]设计出基于GAN 和VAE的UNIT 框架,通过构建一个共享的潜在空间实现了无监督图像到图像的转换。以上生成对抗训练模型解决了CGAN 只能在成对数据集上训练的局限性。但是,它们一次只能学习两个不同域之间的关系,难以处理多个域之间的转换,随后,Choi等人[23]提出SartGAN,该模型在多个跨域数据集上进行训练,实现多领域转换。
StarGAN 增加目标领域标签c作为生成器的输入,使生成器可以随着目标领域标签的变换产生不一样的输出,并训练鉴别器D来识别图像真假,同时判断其属于哪个领域。在风格迁移过程中,StarGAN只改变领域差异部分,具体实施如下所示。
该模型引入两种类别损失:鉴别器D的损失和生成器G的损失。训练鉴别器D时,使用输入图片在源域的监督信号进行训练;而训练生成器G的时候,使用生成图片在目标域的监督信号进行训练。鉴别器D的损失如下:
其中,x为输入图像,c′为源域标签信息,Dcls(c′|x)是由鉴别器D计算的在源域标签上的分布概率。生成器G的损失如下:
其中c为目标域标签信息,G(x,c)为生成器生成图片。Dcls(c|G(x,c))是由鉴别器D计算的在目标域标签上的分布概率。
此外,StartGAN 模型引入重构损失函数Lrec,即CycleGAN[54]中的循环一致性损失函数,来让生成图像在域无关的部分与输入图像保持一致;以及对抗性损失函数Ladv,使得生成图片与真实图像难以区分。
综上,StarGAN 中鉴别器D和生成器G的总损失函数分别为:
其中,λcls、λrec分别是类别损失函数和重构损失函数的权重。
之后,Chen等人[58]提出CartoonGAN,用于将现实图片转化为漫画风格。该模型在CycleGAN 的基础上增加了两个基于卡通图像特征设计的损失值,分别是边缘对抗损失和内容损失,使得生成图像具有漫画图像的清晰边缘以及内容特征。Pęśko 等人[59]在CartoonGAN 的基础上,通过提取视频关键帧的方法,实现了将视频转换为动漫风格;Li等人[60]使用注意力对抗网络(Attentive Adversarial Network,AAN)将关注点放在面部区域的重要部分,忽略细节信息,实现了对自拍进行卡通化,即SCGAN(Selfie Cartoonization Generative Adversarial Network)。Wang 等人[61]在CartoonGAN 的基础上进行改进,提出了一种新型的轻量级生成对抗网络,称为AnimeGAN,该模型实现了保持原图色彩,只对纹理进行动漫化。该过程通过引入三种新颖的损失函数实现,分别是灰度风格损失Lgra、颜色重建损失Lcol和灰度对抗损失Ladv。其中灰度风格损失Lgra使得生成图像具有与动漫图像一样的纹理和线条;颜色重建损失Lcol使得生成图像具有原始图片的色彩;灰度对抗损失Ladv保证了生成图像为彩色图像。图5 展示了AnimeGAN 生成的宫崎骏风格的结果图。之后,Zhao 等人[62]提出基于对抗一致性的不成对图像转换网络,即ACL-GAN(Adversarial Consistency Loss-GAN)。相比于CycleGAN,ACL-GAN 更加鼓励生成图像保留源图像的重要特征,而不是要求生成图像可以完全翻译回源域,这使得两个域的图像可以关注特征层面的相似性而不是像素层面的相似性,因此ACL-GAN 灵活度更高,可以实现更多功能。
图5 AnimeGAN风格迁移效果图Fig.5 Generated results of AnimeGAN style transfer
但以上模型仅对图像风格进行变换而忽略了真实图像与动漫图像之间的几何差距。因此Cao 等人[63]提出CariGAN,对人脸照片同时进行风格迁移和几何迁移,使得生成的图像不仅具有漫画图像的纹理风格,也具有其夸张的几何外观。其几何形变的核心在于提出了一个新的损失函数,即特征损失,其通过计算输入图像面部坐标与人脸平均面部坐标的差距,找出其最显著的特征进行夸大来实现面部几何形变,具体如下:
表1 从有无监督、适用场景、是否可形变以及各自优缺点这几个方面来比较了几种GAN 网络。其中,只有CGAN[22]为有监督图像转换网络,其他GAN 均可实现无监督的图像到图像转换。CycleGAN[54]适用范围较广,包括人脸转换以及场景风格转换等都可以使用,因此可用来与其他GAN 进行比较;UNIT[57]适用于真实图像间的相互转换;StarGAN[23]、CariGAN[63]以 及ACLGAN[62]适用于面部处理,其中CariGAN[63]可以实现真实人脸到漫画人脸的夸张形变;CartoonGAN[58]和Anime-GAN[61]适用于动漫场景化。表1 最详细地列出了各个算法的优缺点。
表1 各类GAN模型优缺点比较Table 1 Comparison of advantages and disadvantages of GAN algorithms
GAN 的使用为风格迁移领域的提供了新思路,其不仅提高了风格迁移速度,也保证了生成图像质量,同时,研究者针对各个场景设计出许多满足特殊需求的GAN,提高了模型的实用性,促进了风格迁移技术投入实际商业应用。
2 应用分析
近年来,神经风格迁移技术在生成图像质量和生成图像速度方面都有了很大的提升,同时其基于深度神经网络的智能化标准化的作业流程也优于复杂繁琐的人工制作,因此越来越多的商业应用中开始出现风格迁移技术的影子,例如数字化模拟、视频制作以及图像处理软件等。下面详细介绍神经风格迁移技术在这三个方面的商业应用:
(1)数字化模拟。风格迁移可用于水墨画、油画、中国传统画作等艺术画作的重建。曹毅[65]通过分析笔和宣纸的特点,利用神经网络模拟了中国传统水墨画的绘制过程,能够自动生成水墨风格的输出;王涛等人[66]对图像进行预处理,使其拥有手绘油画的质感,然后经过P-M 和Weickert[67-68]的加权模型让生成画作很好地模拟了梵高油画风格;Lin 等人[69]提出了一种多尺度的深度神经网络来将素描转化为中国古典画;Li等人[70]通过引入新型滤波器和三个完全可微的损失项来模拟中国古典画作的风格特征,绘制出具有传统中国风的图像。这些都是以技术为载体,传承和发扬中国文化的代表。在技术的帮助下,人们可以轻松绘制自己想要的图像风格,而不需要具备专业的技能。
(2)影视制作。在影视娱乐行业中,不管是电影动漫还是游戏,都需要用到大量的人工来手绘所需要的视频帧,这不仅需要专业人才,也十分耗费时间精力,因此,如若能使用风格迁移来代替人工手绘,提高效率,会使制作成本极大地减少。例如,Tang等人[71]提出局部纹理修补技术来改善视频中纹理层的扭曲缺失现象;Ruder等人[72]通过使用光流引导让视频风格化后仍然具有时间连贯性;但Ruder 等人的方法耗时久,因此Huang 等人[73]和Gupta等人[74]受Ruder等人[72]的启发,分别提出一种基于前馈网络的实时视频风格迁移模型,避免了动态计算光流,在保证视频具有时间连贯性的同时,极大地提高了视频生成效率。但以上方法严重依赖于训练集中对于光流的手工注释,并且对于遮挡以及快速运动等十分敏感,容易导致伪像,因此,Xu 等人[75]提出基于自监督的时空卷积神经网络,可以在未标记的数据集中训练,并实时地生成连贯的风格化视频。可以看出,风格迁移在影视领域的应用是十分广泛的。
(3)图像处理软件。基于深度神经网络的风格迁移算法让图像处理软件不再局限于简单地为图片加一层滤镜,而是利用神经网络来学习艺术作品的风格、纹理等细节,让一张普通的照片也拥有高级的艺术感。例如Prisma[76]、Deepart[77]等软件可以在几秒之内将用户拍摄的普通照片转化为大师风格的画作,这在同质化日益严重的美图应用中,树立了新的审美趋向;国内也紧跟热点,研发出包含中国传统画风的风格迁移软件——造画,提供超过400多种风格种类,涵盖油画、版画、插画、素描以及独具特色的水墨中国风等艺术滤镜,为照片添墨加彩,制造一种传统东方美感,传承和发扬了中国文化。
总而言之,风格迁移技术具有良好的商业前景,可应用于各行各业,因此需要对现阶段存在的问题进行继续改进,加快其投入商业应用。
3 评估方法
风格迁移模型评估通常采用两种评估方法,即定性评估和定量评估。定性评估主要用于评价生成图像质量,由于缺乏系统性的风格迁移图像质量评价体系,因此采用个人参与的方式来判断生成图像是否符合人眼欣赏水平。其评价结果与许多因素有关,如评价者的年龄、职业、文化教育程度、成长环境、观察条件、情绪等等。定量评估主要用于评估模型生成速度、损失变化等,可以通过精确的数字指标表示,十分客观。采用定性评估和定量评估相结合的方式可以更全面地评价模型好坏。表2从所采用训练集、风格化速度、训练时间、风格类型是否多样以及各自优缺点等方面来比较各个风格迁移算法。
表2 各算法优缺点比较Table 2 Comparison of advantages and disadvantages of each algorithms
在图像风格化速度方面,早期的非真实感渲染和传统非参数纹理合成速度较慢。基于模型迭代的快速风格迁移算法远快于Gatys 等人[15]的算法。其中,Chen和Schmidt[45]以及Li等人[48]的算法慢于其他快速风格迁移算法,难以实现实时风格迁移。同时,任意风格迁移算法转换速度普遍低于单模型单风格和单模型多风格算法。
在训练时间方面,主要对基于模型迭代的快速风格化算法进行比较。Jing等人[78]的实验结果表明,单模型单风格算法训练时间差距不大,都较快;单风格多模型算法中,Li 等人[43]的算法训练时间较长;任意风格迁移算法训练时间远长于单模型单风格和单模型多风格算法。
在图像生成质量方面,以Gatys 等人[15]的算法作为评价标准,可以看出Meier[7]的非真实感渲染算法和Efros等人[10]的传统非参数算法相比于Gatys等人[15]基于图像迭代的神经风格迁移算法不太理想;而基于模型迭代的快速风格化算法相比于基于图像迭代的算法,虽然在速度方面有了巨大的提升,但在生成图像质量上仍略差于Gatys等人[15]的算法。CycleGAN网络[23]生成图像质量略优于Gatys 的算法,但其无法处理图像形状改变的情况,CartoonGAN 则是由于加入了漫画图像特有的特征损失,因此在生成漫画风格图像方面效果好于Gatys的算法。其他详见表2分析[79-85]。
以上评估指标为模型的选择提供了参考。神经风格迁移网络未来可在以上指标上继续优化,提升模型综合表现,使其能尽早地投入大规模商业应用。
4 存在问题及未来研究方向
虽然现阶段神经风格迁移技术已有了一定的研究成果,但在某些方面的研究还不够深入,仍然存在一些尚未解决的问题,以下对这些问题进行了描述并提出一些针对性的改进方法。
4.1 生成图像质量评估标准欠缺
现阶段风格迁移模型的生成图像质量缺少一套标准的评估系统,多是由人类参与完成,受主观影响较大,不够科学与规范。因此规范评价流程与指标是一个重要的后续研究方向,可以通过制定一套固定的评价体系来实现。首先,指定一个算法作为比较的标准,同时制定一套用于比较评估的标准图像数据集。然后,在选取质量评估者时,要尽量涵盖多类型的普通人群以及相关艺术家,并制定一个固定的评价表格,要求评估者根据表格来进行多方面的评价。
4.2 生成模型的语义风格迁移研究欠缺
现阶段的语义分割大多应用于慢速风格迁移模型,在快速风格迁移模型中的应用较少。因此在快速风格迁移模型的基础上实现语义风格迁移,提高快速风格迁移模型的生成质量,减少风格溢出问题是下一个重要的研究方向。可以使用一个前馈风格化网络来进行风格迁移,然后构建一个图像语义风格网络来分割输入的内容图像,确定需要进行风格化的区域,最后再对各个区域进行图像融合并平滑融合边缘。
4.3 仅对纹理进行风格迁移
现有的神经风格迁移算法会同时对颜色、纹理等进行迁移。但是,有时人们希望保留内容图像色彩,仅对纹理进行风格化处理。因此在保持图像色彩不变的前提下只对纹理进行迁移,提高模型生成图像的可选择度是未来的一个发展趋势。使用灰度图像或许可以实现单独转移纹理的功能,首先将内容图像与风格图像转为灰度图,仅将其纹理特征迁移到内容图像上,然后采用颜色迁移算法,以内容图像为参考来对风格化后的图像进行颜色重构,这样就可以使得风格化图像既具有风格图像的纹理特征,同时保持了内容图像的原有色彩。
4.4 个性化处理过程
为了使得图像效果更好,更适用于各领域的特殊需求,未来可以继续深入研究在风格迁移过程中增加一些额外处理。Zhang等人[86]引入图像颜色迁移来实现风格化图像的颜色控制;Luan等人[87]在风格迁移中使用图像融合来使前后景图像更加和谐;Zhang 等人[88]引入图像分割来进行多模态风格迁移,即对分割后的模块分别采用不同风格区域作为参考来进行转移。在图像风格迁移中引入以上图像处理方法对于风格迁移商业化有着重要的推动作用。
4.5 形状改变的限制
现阶段大部分风格迁移只是针对图像的纹理,颜色等进行改变,而忽略了其形状的影响。但是在特定场景下,人们希望生成图像形状向目标图像形状靠近,例如将真实人脸转化为动漫人脸时,其不仅是风格上的转变,在外形轮廓上也需要像动漫人物一样夸张。因此,将图像几何变换与图像风格迁移相结合是推动神经风格迁移模型进一步发展的重要途径。可以考虑训练一个形变网络,将其与风格迁移网络相结合,使输入图像在风格和形状方面都接近于目标图像,适用于艺术创作领域,如漫画制作、电影制作等。
综上,完善评估体系、提高模型生成速度以及质量是神经风格迁移领域的未来研究方向,同时,提高模型的灵活性和多样性,使得神经风格迁移技术满足各种商业需求是未来的发展趋势。
5 总结与展望
在过去的几年中,随着人们对图像艺术化需求渐增,神经风格迁移不管是在学术研究还是商业应用领域都有着飞速的发展。本文首先对基于图像迭代和基于生成模型迭代的风格迁移方法进行了汇总;然后对各个代表性网络进行了详细的讲解,包括其工作机理、目标函数、改进方式和模型结构等方面;并介绍了神经风格迁移在商业上的应用,展示了其研究潜力;其次对各类风格迁移模型进行了评价,指出其优缺点;最后讨论了现阶段神经风格迁移网络中存在的问题以及改进策略。
总体而言,基于深度学习的图像风格迁移不仅促进了计算机图像学的发展,也真正地推动了艺术文化的传播和普及,在商业上也有良好的应用前景,应继续对其进行深入探索,进一步优化神经风格迁移模型综合指标,在保证生成质量的同时,提升其生成速度以及泛化程度。