问题和挑战
基于样例的人脸风格化旨在渲染人脸照片使其风格与指定的艺术人像样例的画风一致,在日常生产生活中具有诸如头像设计、动漫海报广告制作等广泛的应用。目前行业主流的技术采用图像转换的方法,训练网络学习真实人脸和艺术人像之间的映射关系,这类方法依赖大量的训练数据且只适用于小尺寸图像,难以满足实际需求。近年研究者们提出了另一套基于迁移学习的技术[1],使用StyleGAN在小规模艺术人像数据集上微调达到高清人脸风格化,然而该技术只能学习数据集的一个总体风格,无法精确模拟数据集中指定的艺术人像样例的风格。如何在小规模数据上实现基于样例的高清人脸风格化技术是一个难题。
图 1 基于样例的高清人脸风格化
方法介绍
针对以上提出的问题,我们提出了一个基于双路风格的人像风格化算法,包含两个部分。第一部分搭建DualStyleGAN网络。第二部分训练DualStyleGAN网络,采用渐进的微调策略,依次通过初始化、人脸数据内部的风格迁移和人脸与风格数据之间的风格迁移三个步骤,学习小规模风格数据集的风格特征,实现自然准确的人脸风格化。
图 2 DualStyleGAN网络结构示意图
1. 双路风格生成网络和外部风格控制模块的搭建
如图2所示,DualStyleGAN在StyleGAN的基础上添加了右侧的外部风格控制模块,根据描述人脸特征的内部风格编码和描述艺术风格的外部风格编码生成艺术人像,实现风格的融合与迁移,并通过权重w调整不同层的权重控制不同尺度的风格。
1.1 外部风格控制模块的设计思路:
a. 层次化:外部风格遵循StyleGAN的18层的内部风格层次结构,前7层控制大尺度结构方面的风格,后11层控制小尺度颜色和纹理方面的风格。
b. 残差化:我们希望外部风格控制模块能模拟对StyleGAN本身进行微调的行为。最近研究发现StyleGAN微调前后的特征具有高度相关性且其中卷积层变化最大[2]。因此,微调前后卷积特征的差异也应该与原始特征高度相关。由此我们想到可以根据StyleGAN的卷积特征预测残差来模拟微调行为本身。
1.2 外部风格控制模块的设计方案:
外部风格控制模块的输入为风格图像S经过编码器E得到的外部风格编码,通过映射网络得到18个外部中间风格编码,用于外部风格的结构和颜色控制:
a. 结构控制:前7个外部中间风格编码经过线性层Ts编码为外部结构风格编码。StyleGAN前7层的卷积特征经过ModRes模块得到残差特征乘以权重wi (i < 8)之后加到原特征之上,完成人脸结构的调整。其中,ModRes是添加了AdaIN的残差模块。
b. 颜色控制:遵循StyleGAN本身的设计,后11个外部中间风格编码经过线性层Tc编码为外部颜色风格编码,与StyleGAN的内部中间风格编码以wi (i > 7)加权后,输入到基于AdaIN的风格调整模块,控制颜色风格。
2. 渐进的微调策略
添加外部风格控制模块会改变StyleGAN预训练的生成空间,无法直接应用迁移学习的微调策略。为此,我们提出渐进的微调策略,包含三个步骤:
a. 外部风格控制模块的初始化:初始化ModRes卷积层的卷积核接近0,线性层Tc的参数矩阵为单位矩阵。上述初始化使得残差特征数值接近0,且外部中间风格编码经过Tc后保持不变,从而保持结构几乎不变,使添加了外部风格控制模块的StyleGAN仍然保持了原本的生成空间。
b. 人脸数据内部的风格迁移:利用StyleGAN的风格交换(style mixing)技术生成数据集,在人脸数据内部训练双路风格生成网络实现风格迁移。随机采样两个风格编码z1和z2,通过风格交换得到风格融合的图像。训练DualStyleGAN根据内部风格编码z1和外部风格编码E(g(z2))重建该融合图像,其中E和g分别是编码器和StyleGAN。
c. 人脸与风格数据之间的风格迁移:为了使网络学到每张图像各自的风格,使用去风格化构建成对的训练数据作为监督,训练双路风格生成网络实现人脸风格化。去风格化采用风格化[1]的逆向操作:找到风格图像S在微调后的StyleGAN的风格编码,并将该编码应用到原始的StyleGAN上,得到对应去风格后的人脸图像Is。接着训练DualStyleGAN根据Is的内部风格编码和S的外部风格编码重建S。除了重建损失之外,我们还使用对抗损失、风格一致性损失和内容一致性损失进行约束训练。
最后,我们训练采样网络N,学习建模外部风格编码的分布,将随机噪声映射为外部风格编码,使DualStyleGAN不仅能通过图片输入实现风格化,还能通过随机噪声输入生成随机艺术人像。
实验结果
图3比较了DualStyleGAN与其他风格化方法的表现,其中StarGAN2 [3], GNR [4], U-GAT-IT [5]和FS-Ada [6]生成256*256的图像,其他方法支持1024*1024的图像。Toonify [1], FS-Ada和U-GAT-IT学习数据集整体的风格,因此它们的结果与样例在风格上不一致。基于图像转换的StarGAN2和GNR受到训练集内容图像和风格图像数量失衡的影响,出现对风格图像过拟合的问题。UI2I-style [7]能够很好地模拟颜色风格,但是无法很好地模拟结构风格。DualStyleGAN在颜色和结构两方面都取得了更好的人脸风格化结果。
图 3 主观视觉比较
图4展示了DualStyleGAN在6个风格数据集上的人脸风格化结果。这6个数据集的图像数量约为100~320,尺度为1024*1024,我们的方法在有限的数据下实现了有效的高分辨人像风格化,能够准确地模拟输入的风格图像的画风,不仅模拟了颜色,还调整了人脸的结构,如讽刺画的大额头、皮克斯的大眼睛等等。
图 4 DualStyleGAN支持多种风格的人脸风格化
图5展示了DualStyleGAN对风格的灵活控制。通过将外部颜色风格编码替换为内部颜色风格编码,我们能保持原照片的颜色,只模拟结构上的画风变化。通过降低权重w,我们能削弱风格,使结果看上去与原图更接近。灵活的调整给予用户更多的选择,找到每个人最理想的风格化效果。
图 5 DualStyleGAN支持灵活的风格控制
小结
在这项工作中,我们扩展StyleGAN使之在保持其自身人脸领域的风格建模的同时能接受外部艺术人像领域的风格上的条件控制,实现了基于样例的高清人像风格化的应用。我们提出的DualStyleGAN能够很好地建模和控制外部风格和内部风格,实现了灵活多变的艺术人像生成。通过有针对性的模型设计以及渐进的训练策略,我们成功在有限的数据上训练了DualStyleGAN。我们希望这项工作的模型扩展思路能够启发相关任务的研究,也希望这项工作为想要定制自己头像的用户提供便利。