前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >最强AI人脸技术:一张图像合成动图

最强AI人脸技术:一张图像合成动图

作者头像
用户1324186
发布2019-07-31 16:48:07
4.8K0
发布2019-07-31 16:48:07
举报
文章被收录于专栏:媒矿工厂

引言

本文总结了来自三星莫斯科AI中心和Skolkovo科学技术研究所的研究人员提出的“Few-Shot Adversarial Learning of Realistic Neural Talking Head Models”,该模型的训练基于少量图像(few-shot),可以生成人物头像开口说话的动图。

原论文arxiv链接为:

https://arxiv.org/abs/1905.08233

背景介绍

在这项工作中,研究人员考虑个性化照片级真实度的头部模型任务,即创建可以合成语音的合理视频序列或可以模仿特定个体的系统。具体来说,给定一组面部特征点,能够合成逼真的个性化头部图像以至于动画。这种能力具有远程呈现的实际应用,包括视频会议、多人游戏、以及特效行业。这项任务具有一定的挑战性:首先,人的头部具有高光度、几何和运动复杂性。这种复杂性不仅源于建模人脸(存在大量建模方法),还来自建模复杂的嘴巴、头发和服装。第二个复杂因素是人类视觉系统对人类头部外观建模中的微小错误的敏锐性。

为了克服这些挑战,现有的工作通过扭曲单个或多个静态帧来合成关节式头部序列。经典的扭曲算法[2,3]和使用机器学习(包括深度学习)[4,5,6]合成的扭曲场都可以实现目标。虽然基于扭曲的系统可以从单个图像创建说话状态的头部序列,但是它们可以处理的运动量、头部旋转和遮挡是有限的。近期的工作[7,8,9]使用经过对等训练的深度卷积网络(ConvNets)直接(无扭曲)合成视频帧。然而这些系统必须训练具有数千万个参数的大型网络,并且需要几分钟长的视频或者大型照片数据集以及数小时的GPU训练。

在这篇论文中,研究团队提出了一个系统,用于从少量照片(几次学习)和有限的训练时间创建可以说话的头部模型。事实上,该系统可以基于单张照片(一次学习)生成合理的结果,而添加更多照片可以提高个性化图片的真实度。与[7,8,9]类似,由论文模型创建的说话状态头部模型是深度卷积网络,它通过一系列卷积运算而不是扭曲直接合成视频帧,并且该系统创建的头部模型可以处理超出基于扭曲的系统能力的各种姿势。

论文提出的模型通过对具有不同外观的不同说话者大量说话的头部视频的广泛预训练(元学习,meta-learning)来获得少数学习能力。在元学习过程中,系统模拟了几个镜头的学习任务,并学习将面部特征图转换为逼真的个性化照片,并为此人物提供一小组图像训练。此后,一些新人物的照片通过元学习预先训练了高性能生成器和鉴别器,从而形成了新的对抗性学习问题。新的对抗性问题表现为经过几个训练步骤后生成逼真和个性化图像。

方法

系统结构

元学习阶段假设视频序列的可用性,其包含不同人物说话状态的头部。在训练和测试期间,假设所有帧的面部特征点的可用性。使用预定义的一组颜色将特征点光栅化为三通道图像,并将特征点用线段连接。

图1 元学习整体架构

如图1所示,在论文方法的元学习阶段,训练了三个网络:

  • 嵌入器:负责将输入视频帧和人物面部特征映射成多维度向量。研究者使用了开源的面部特征提取代码。这个模块的作用是学到一个视频(域)的特有的信息(比如这个人的身份不变性),同时希望具有姿态的不变性。
  • 生成器:将嵌入器网络未见过人物的新面部特征图和多维度向量作为输入值,经过多个卷积层,输出一个合成(视频)帧,训练生成器以最大化其输出和真实数据帧之间的相似性。
  • 鉴别器:负责整合和处理原视频帧、合成视频帧、对应的面部特征图和训练序列。它通过序列数,判断合成帧与参考帧是否吻合,以及与面部特征图是否匹配。根据匹配程度,网络计算真实性得分,显示出两者之间的差别。

元学习

在元学习阶段,所有三个网络的参数都以对抗方式进行训练,并通过模拟K-shot学习(实验中K=8)来完成。然后优化嵌入器和生成器的参数以最小化损失,包括内容损失,对抗性损失和嵌入匹配损失:

其中,第一项内容损失使用感知相似性度量测量ground truth与重建图像之间的距离,对应于ILSVRC分类训练的VGG19网络和VGGFace网络训练面部识别,损失计算为这些网络的特征之间的L1损失的加权和;第二项对抗性损失对应于需要最大化的鉴别器计算的真实性得分,以及使用鉴别器计算的特征匹配项,其基本上是感知相似性度量,有助于提升训练的稳定性;第三项匹配损失用于优化嵌入器的输出向量和鉴别器卷积部分的输出向量的相似度,使用L1损失。

更新嵌入器和生成器的参数的同时,还更新了鉴别器参数。鉴别器参数更新是由hinge loss的最小化驱动的,目的是最大化真实图像上的真实感得分,并且最小化合成图像得分。

训练过程中交替更新嵌入器、生成器和鉴别器的参数以最小化损失。

微调few-shot学习

一旦元学习完成收敛,系统就能学习到如何合成新目标的头像特写序列,即使是元学习不曾训练过的新人物。当然,除了要提供新目标的一些图像样本,还需要提供新目标的面部特征图,合成过程是以这些目标面部特征图为条件的。

通常来说,我们可以使用元学习收敛后的嵌入器,用来估计新头像特写序列的嵌入向量,理论上这样也能生成真实的图像,但是存在较大的身份差距。为此,研究者还需要一个微调过程以生成更完美的图像。

微调过程可以看作是元学习的简化版本,只在单个视频序列和较少数量的帧上完成训练。微调过程主要包含鉴别器与生成器两个模块,这里嵌入器是不需要调整的。

其中生成器还是根据面部特征图合成视频帧,只不过对应具体人物的生成器参数会和原来的一般人物参数共同优化,以学习生成目标人物的某些特征。鉴别器和元学习阶段也类似,只不过会增加一个新参数以学习更好地预测真实度分数。

实验证明在大多数情况下,微调生成器更好地拟合训练序列。通过元学习阶段初始化所有参数也是至关重要的,这种初始化注入了一个强大的逼真的说话状态头部模型,这允许论文模型推断和预测具有不同头部姿势和面部表情的姿势的逼真图像。

实验结果

使用从同一个人的不同视频序列(左侧)作为源帧,并使用不同人物的面部特征图(右侧)来驱动图像合成的结果。左侧的说话状态的头部模型使用8帧进行训练,而右侧的模型则以一次性方式进行训练。实验结果如图2所示。

图2 不同人物面部特征迁移

究者在三种不同的设置中与基线模型进行比较,在微调集中有1帧、8帧和32帧三种设置。测试集由50个测试视频序列中的每一个的32个留出帧组成。此外,对于每个测试帧,从具有相同人物的其他视频序列中随机地采样两个帧。测试结果如图3所示,可以看出本方法实现了更高的真实性和个性化程度。

图3 论文模型与基线模型实验结果对比

研究者扩展了可用的数据,开始在视频数目更多的VoxCeleb2上训练模型。他们训练了两种模型:FF(前馈)和FT。前者训练150个epoch,没有嵌入匹配损失,因此用的时候不进行微调。后者训练75个epoch,但具有匹配损失,支持微调。两种模型的结果如图4所示:

图4 微调学习的实验成果对比

研究者还进行了模型在照片或画像上的“木偶”操作,即让静态的照片和画像动起来。实验结果如图5所示。

图5 使静态图片动起来

总结

论文中,研究者提出了一个用于对抗生成模型的元学习框架,它能够以深度生成器网络的形式训练高度真实的说话状态的头部。至关重要的是,创建新模型只需要少量照片(少至一张),而在32幅图像上训练的模型在用户研究中获得完美的真实感和个性化评分。并且该模型可以驱动模型未见过的新人物,这是优于现有方法的。

目前,该方法的主要局限性是模仿表示(特别是当前的面部特征图不能表示凝视状态)和缺乏具有里程碑意义的适应性,具体表现为使用来自不同人的面部特征图会导致明显的个人特质不匹配。

参考文献

[1]E. Zakharov, A. Shysheya, E. Burkov, et al. Few-Shot Adversarial Learning of Realistic Neural Talking Head Models[J]. arXiv preprint arXiv:1905.08233, 2019.

[2]H. Averbuch-Elor, D. Cohen-Or, J. Kopf, and M. F. Cohen. Bringing portraits to life. ACM Transactions on Graphics (TOG), 36(6):196, 2017.

[3]S. M. Seitz and C. R. Dyer. View morphing. In Proceedings of the 23rd annual conference on Computer graphics and interactive techniques, pages 21–30. ACM, 1996.

[4]Y. Ganin, D. Kononenko, D. Sungatullina, and V. Lempitsky. Deepwarp: Photorealistic image resynthesis for gaze manipulation. In European Conference on Computer Vision, pages 311–326. Springer, 2016.

[5]Z. Shu, M. Sahasrabudhe, R. Alp Guler, D. Samaras, N. Paragios, and I. Kokkinos. Deforming autoencoders: Unsupervised disentangling of shape and appearance. In The European Conference on Computer Vision (ECCV), September 2018.

[6]O. Wiles, A. Sophia Koepke, and A. Zisserman. X2face: A network for controlling face generation using images, audio, and pose codes. In The European Conference on Computer Vision (ECCV), September 2018.

[7]P. Isola, J. Zhu, T. Zhou, and A. A. Efros. Image-to-image translation with conditional adversarial networks. In Proc. CVPR, pages 5967–5976, 2017.

[8]H. Kim, P. Garrido, A. Tewari, W. Xu, J. Thies, M. Nießner, P. P´erez, C. Richardt, M. Zollh¨ofer, and C. Theobalt. Deep video portraits. arXiv preprint arXiv:1805.11714, 2018.

[9]T.-C. Wang, M.-Y. Liu, J.-Y. Zhu, G. Liu, A. Tao, J. Kautz, and B. Catanzaro. Video-to-video synthesis. arXiv preprint arXiv:1808.06601, 2018.

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-06-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 媒矿工厂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档