EAMM: 通过基于音频的情感感知运动模型实现的一次性情感对话人脸合成
EAMM: 通过基于音频的情感感知运动模型实现的一次性情感对话人脸合成
1所有的材料都可以在EAMM: One-Shot Emotional Talking Face via Audio-Based Emotion-Aware Motion Model网站上找到。
摘要
尽管音频驱动的对话人脸生成技术已取得显著进展,但现有方法要么忽视了面部情感,要么无法应用于任意主体。在本文中,我们提出了情感感知运动模型(EAMM),通过引入情感源视频来生成一次性情感对话人脸。具体来说,我们首先提出了一个Audio2Facial-Dynamics模块,该模块能够从音频驱动的无监督零阶和一阶关键点运动中渲染出对话人脸。然后,通过探索运动模型的特性,我们进一步提出了一个隐式情感位移学习器,将情感相关的面部动态表示为先前获得的运动表示的线性可加位移。综合实验表明,通过结合两个模块的结果,我们的方法能够在任意主体上生成具有逼真情感模式的满意对话人脸结果。
1 引言
音频驱动的对话人脸动画任务能够实现多种应用,涵盖视觉配音、数字化身、远程会议以及混合现实等领域。尽管该领域已取得显著进展[Fried等人,2019;Thies等人,2020;Zhou等人,2021,2020],但其中许多方法依赖于源肖像的长视频录制来生成面部表情[Edwards等人,2016;Karras等人,2017;Yao等人,2021],而在大多数情况下,这样的长视频录制并不可用。另一方面,仅驱动一帧图像的方法[Chung等人,2017;Mittal和Wang,2020;Zhou等人,2019]仅关注合成与音频同步的口型,而未考虑情感这一实现逼真动画的关键因素。因此,如何在一次性对话人脸设置下实现富有表现力的情感编辑仍然是一个悬而未决的问题。
以往的方法要么从固定数量的标签中识别情感[Abdrashitov等人,2020;Li等人,2021;Wang等人,2020b],要么仅从小范围的标记音频数据中识别情感[Ji等人,2021]。然而,固定标签只能以粗粒度的离散方式表示有限的情感,难以实现自然的情感过渡。此外,仅从音频中确定情感可能导致歧义。人们有时难以感知隐藏在言语中的不同情感,且情感识别模型对于一般言语的情感识别性能并不令人满意。因此,这两者都限制了情感对话人脸模型的适用性。与此不同,我们认为动态情感可以被转化为从额外情感视频中提取的可传递运动模式。
因此,我们的目标是设计一个一次性对话人脸系统,该系统接受四种输入,包括具有中性表情的身份源图像、语音源音频、预定义姿势和情感源视频。然而,实现这样的系统并非易事。1) 生成情感信息需要对非刚性面部结构进行变形,这些结构虽隐含但强烈地与身份和口型运动相关联。以往的方法通常采用人脸的强先验,如特征点[Kim等人,2019;Wang等人,2020b]和3D模型[Anderson等人,2013;Richard等人,2021]。然而,这些方法因模型不准确而导致误差累积。2) 提取情感模式也颇具挑战性,因为情感模式与其他因素相互交织。
为了应对这些问题,本文提出了一种名为情感感知运动模型(EAMM)的新方法。我们的直觉是,无监督的零阶和一阶运动表示[Siarohin等人,2019a,b;Wang等人,2021b]能够对面部局部流场进行建模,这非常适合于操控情感变形。关键在于将局部情感变形通过自学习的关键点和局部仿射变换转移到音频驱动的对话人脸中。具体而言,我们首先通过一个简单的音频到面部动态(A2FD)模块实现从单张图像生成对话人脸。该模块将音频表示和提取的姿势映射到无监督的关键点及其一阶动态上。然后,一个额外的流估计器和一个生成器处理这些表示以进行图像重建。
为了进一步从外观中分解出局部情感动态,我们对运动模型的内在工作机制进行了实证探索。我们发现了两个有趣的特性。1) 面部区域的动态运动仅受特定关键点和仿射变换的影响,这些被称为与面部相关的表示。2) 与面部相关的表示的相对位移通常是线性可加的。然而,与面部相关的位移也包含不期望的口型运动和结构变形,这使得它们无法直接应用于我们当前的模型。
为此,我们设计了一个隐式情感位移学习器,以在A2FD模块的与面部相关的表示上仅学习情感相关的位移。特别是,我们利用了一种有效的情感源增强策略来减轻不期望因素的影响。然后,我们推导出一个以情感特征为条件的隐式函数,该函数将A2FD模块中的所有运动表示映射到期望的与面部相关的表示的位移上。通过线性组合两个模块中的所有运动表示,我们的模型互补地涵盖了口型和情感动态。大量实验表明,我们的方法可以在具有真实情感模式的任意主体上生成令人满意的对话人脸结果。
我们的贡献总结如下:1) 我们提出了音频到面部动态(A2FD)模块,该模块通过简单的方式预测无监督的运动表示来生成中性的音频驱动对话人脸。2) 基于两个实证观察,我们提出了隐式情感位移学习器,该学习器可以从情感源中提取与面部相关的表示的位移。3) 我们提出的情感感知运动模型(EAMM)成功地实现了具有情感控制的一次性对话头部动画生成。据我们所知,这是该领域最早的尝试之一。
2 相关工作
音频驱动的对话人脸生成。这是一项旨在从音频片段生成对话人脸视频的任务[Brand 1999; Bregler et al. 1997a,b; Lu et al. 2021; Wang et al. 2012; Zhou et al. 2018]。这些方法主要可以分为特定人物方法和非特定人物方法。尽管特定人物方法能产生更好的动画效果,但其应用场景有限。为建模一个人物所需的训练时间可能长达数小时[Suwajanakorn et al. 2017]或几分钟[Lu et al. 2021; Thies et al. 2020]。Suwajanakorn等人[2017]使用17小时的视频进行训练,从奥巴马的声音轨迹中合成了高质量的对话人脸。Thies等人[2020]和Lu等人[2021]则提出使用约3分钟长度的特定人物视频进行训练,以生成逼真的对话视频。但这些方法无法应用于单张图像。另一方面,Chung等人[2017]首次以一次性方式生成对话人脸。随后,Chen等人[2019a]和Zhou等人[2020]通过利用面部特征点作为中间表示来改进了这一过程。Zhou等人[2021]进一步将姿态控制融入一次性设置中,但这些工作都没有实现情感控制。
情感对话人脸生成。情感[Cole et al. 2017]是在逼真动画中起重要作用的因素。由于在生成情感动态方面存在困难,因此在对话人脸生成中考虑情感因素的作品很少。Sadoughi等人[2019]从一个设计的条件生成对抗网络中学习情感与唇动之间的关系。Vougioukas等人[2020]为时序生成对抗网络引入了三个判别器。然而,这两者都未能生成语义表情并实现情感操控。最近,Wang等人[2020b]收集了MEAD数据集,并将情感设置为独热向量以实现情感控制。而Ji等人[2021]则提出将语音分解为独立的内容和情感空间,然后从音频中合成情感动态。不过,他们的方法无法应用于未见过的角色和音频。与他们不同,我们借助源视频并分离出情感信息,以实现一次性设置中的情感控制。
视频驱动的面部动画。视频驱动动画利用视频来重新演绎面部运动,这与音频驱动的对话人脸生成高度相关。传统方法需要动画目标的先验知识或手动标签,如3D可变形模型[Kim et al. 2018; Thies et al. 2016; Zollhöfer et al. 2018]或2D特征点[Burkov et al. 2020; Chen et al. 2020; Huang et al. 2020; Isola et al. 2017; Tripathy et al. 2021; Wu et al. 2018; Yao et al. 2020; Zakharov et al. 2020; Zhang et al. 2020]。最近,一些不需要先验知识的方法[Siarohin et al. 2019a,b]得到了探索。它们采用自监督框架,并在密集场中建模运动,从而实现外观和运动的解耦。我们的模型也是基于类似的思想构建的。
3 方法
图2:我们的情绪感知运动模型概述。我们的框架包含两个模块:Audio2Facial-Dynamics模块,用于一次性音频驱动的说话头部生成;以及隐式情绪迁移学习器,用于提取情绪模式。
我们的情感感知运动模型(EAMM)的概览如图2所示,其中不同类型的信号被作为输入来生成带有情感的对话人脸。我们的EAMM主要由两部分组成:一个Audio2Facial-Dynamics模块,该模块能从单张中性帧中实现音频驱动的中性表情对话人脸生成(第3.1节);以及一个隐式情感位移学习器,该学习器涉及情感动态(第3.2节)。在以下部分,我们将详细介绍每一部分。
3.1 Audio2Facial-Dynamics模块
实现音频驱动的情感对话人脸的第一步是构建一个能够合理整合表情动态的一次性系统。为此,我们设计了Audio2Facial-Dynamics(A2FD)模块,该模块首先对面部运动进行中性表情建模。受[Siarohin et al. 2019b; Wang et al. 2021a]启发,运动被表示为一组无监督的关键点及其一阶动态。基于这种运动表示,可以计算变形场来考虑局部面部运动,从而进一步促进情感对话人脸的生成。
训练公式。由于缺乏成对的数据,直接监督不可用,因此我们采用了自监督训练策略[Chen et al. 2019b; Zhou et al. 2021]。对于每个训练视频片段V = {𝑰1, ...𝑰𝑡, ...𝑰𝑇},我们随机选择一帧𝑰作为身份源图像,并取对应语音音频𝒂的梅尔频率倒谱系数(MFCC)[Logan 2000] 𝒔1:𝑇作为语音源音频表示。考虑到头部姿态也是一个关键组成部分,且很难从音频中推断出来,我们使用现成的工具[Guo et al. 2020 Towards fast, accurate and stable 3d dense face alignment]从训练视频片段中估计姿态序列𝒑1:𝑇,并将其作为额外的输入。每个帧的姿态𝒑𝑡用一个6维向量表示(即3个用于旋转,2个用于平移,1个用于缩放)。
请注意,在测试阶段,身份图像𝑰、语音源音频片段𝒂和姿态序列𝒑1:𝑇可以来自不同的来源。
A2FD的流程。如图2所示,我们首先使用三个编码器(即𝑬𝐼, 𝑬𝑎 和 𝑬𝑝)从三个输入中提取相应的信息,这些信息分别表示为身份特征f𝐼、音频特征f𝑎和姿态特征f𝑝。然后,我们将这三个提取的特征组合起来,并输入到一个基于LSTM[Hochreiter and Schmidhuber 1997]的解码器𝑫中,以循环预测整个序列的无监督运动表示。每个时间步𝑡的运动表示由𝑁个隐式学习的关键点𝒙𝑡𝑎 ∈ R及其一阶运动动态(即雅可比矩阵𝑱𝑡𝑎 ∈ R)组成
,其中每个雅可比矩阵表示每个关键点(零阶表示)位置附近区域的局部仿射变换。在本文中,我们默认设置关键点数𝑁=10。
为了导出与局部动态相关的变形场,需要提供初始帧𝑰的标准位置的零阶和一阶表示。我们认为,如果我们与预训练的视频驱动的一阶运动模型[Siarohin et al. 2019b]共享涉及音频的关键点分布,那么我们的A2FD模块将更容易学习,而不是从头开始学习所有表示。
因此,我们采用[Siarohin et al. 2019b ]中的预训练关键点检测器𝑬𝑘来从源图像𝑰预测初始运动表示𝒙𝑠和𝑱𝑠。然后,我们采用一个流估计器𝑭来生成一个密集的变形场,该场描述了从源图像到目标视频帧的非线性变换。具体来说,在每个时间步𝑡,我们首先根据预测的关键点𝒙𝑡𝑎、𝒙𝑠和雅可比矩阵𝑱𝑡𝑎、𝑱𝑠计算𝑁个变形流以及一组掩码M。然后,通过将掩码M加权组合到变形流上,我们得到最终的密集变形场。最后,我们将密集变形场与源图像𝑰一起输入到图像生成器𝑮中,以在每个时间步生成最终的输出帧𝑰^𝑡。更多详细信息,请参阅[Siarohin et al. 2019bFirst order motion model for image animation.]。
训练目标。如前所述,我们希望与基于视觉的模型共享运动表示的分布,因此我们利用𝑬𝑘作为我们基于音频的模型学习的特定教师网络。具体来说,𝑬𝑘从训练视频片段V中提取的关键点𝒙𝑡𝑣及其雅可比矩阵𝑱𝑡𝑣作为中间监督信息。然后,我们制定了一个关键点损失项𝐿𝑘𝑝(定义如下)来训练我们的A2FD模块:
在第二阶段,我们使用感知损失项𝐿𝑝𝑒𝑟通过最小化重建帧𝑰^𝒕和目标帧𝑰𝑡之间的差异来微调模型:
其中VGG𝑖(·)表示预训练VGG网络[Johnson et al. 2016]的第𝑖个通道特征,该网络具有𝑙个通道。总损失函数定义为:
其中𝜆𝑝𝑒𝑟表示𝐿𝑝𝑒𝑟的权重。
讨论。在通过音频输入生成中性说话面部之后,一个直观的想法是直接将这个情感源纳入这个流程中。然而,情感源自然包含所有面部信息,包括嘴巴、身份和姿态,这会导致不理想的结果。因此,这带来了在我们的运动表示和变形场中解耦情感信息的需求。
图3:面部相关关键点掩膜的可视化。左下角图像展示了学习到的十个关键点,右下角图像则显示了组合掩膜。我们还在顶部一行分别可视化了三个面部相关关键点的掩膜。自然面部图像来自CFD数据集©芝加哥大学。
我们首先探索了基于关键点𝒙的变形场是如何变换源图像𝑰的。我们可视化了图3中所示的组合蒙版M,并观察到面部区域仅受三个与面部相关的关键点的影响。仅用这三个关键点表示的集合记为(𝒙′, 𝑱′)。
受这一观察的启发,我们进行了一个简单的实验,以验证我们是否仅通过编辑这三个与面部相关的关键点及其雅可比矩阵,就能将情感模式从情感源视频转移到我们的A2FD模块中。一个简单的想法是探究同一个人的情感和中性运动表示之间的偏差是否可以线性相加,即通过在其他人面部运动表示上添加位移来施加情感。为了减轻嘴巴的影响,我们既利用了提取全脸动态的预训练模型,也利用了我们的A2FD模型来生成中性说话面部。理想情况下,在表示中,他们的嘴巴形状应该是对齐的。
具体来说,我们首先使用𝑬𝑘从情感源视频中检测到关键点𝒙𝑒′和雅可比矩阵𝑱𝑒′。然后,我们将该视频的音频和此人的中性状态图像输入到我们的A2FD模块中,以生成𝒙𝑛′和𝑱𝑛′。我们计算了偏差(𝒙𝑒′ − 𝒙𝑛′, 𝑱𝑒′ − 𝑱𝑛′),它被认为包含了情感信息。通过将这个偏差简单地作为位移添加到任意人的运动表示上,我们观察到运动动态可以成功地转移到生成的结果上。因此,我们可以认为这些表示大致是线性可加的。
然而,虽然情感信息可以被保留,但我们观察到面部边界和嘴巴周围存在许多不希望的伪影。一个可能的解释是,计算出的位移不仅包括情感信息,还包括其他因素,如身份、姿态和语音内容,这导致对后续生成的指导不准确。
3.2 隐式情感位移学习器
根据上述观察,我们基本上可以将情感模式表述为与面部相关的关键点和雅可比矩阵的补充位移。因此,我们设计了一个隐式情感位移学习器,用于从情感视频V𝑒 = {𝑸1, ...𝑸𝑡, ...𝑸𝑇}中提取情感信息,然后将这些信息编码为位移(Δ𝒙′, Δ𝑱′),这些位移对应于来自A2FD模块的三个面部相关关键点和雅可比矩阵(𝒙′, 𝑱′)。
数据处理。为了将情感与其他因素分离,我们设计了一种特殊的数据增强策略。具体来说,为了阻断语音内容信息,我们使用填充有随机噪声的蒙版遮挡嘴唇和下巴的运动。此外,为了消除姿势和像眨眼这样的自然运动的影响,我们引入了一种时间扰动技术。对于每个时间步𝑡,我们不是使用帧𝑸𝑡进行情感提取,而是从当前时间𝑡附近扰动的时间步中选择一帧。而且,为了进一步减轻面部结构信息的影响,我们应用了透视变换和随机水平翻转[Zhou et al. 2021]。这种数据增强策略也在图2中得到了展示。
这张图片展示了一个人脸图像处理的过程。从左到右,我们可以看到一系列经过不同数据增强技术处理的人脸图像。首先,我们看到一个未处理的人脸图像,接着是使用“临时遮挡”(Temporal Perturbation)技术处理后的图像,这个技术会改变面部特征的时序,产生不同的表情效果。然后是使用“嘴巴闭合”(Mouth Occlusion)技术处理的图像,这个技术将人脸的一部分遮盖起来。接下来是使用“视角变换”(Perspective Transformation)技术处理的图像,这个技术会改变人脸的角度和大小,创造出不同的视觉效果。最后,我们看到的是使用“随机翻转”(Random Flip)技术处理的图像,这个技术会随机地旋转人脸图像。这些技术用于增加训练数据集的多样性,以提高深度学习模型的性能。
学习情感位移。为了将情感模式融入我们的A2FD模块,我们首先使用一个情感提取器𝑬𝑒从处理后的视频帧中提取情感特征f𝑒。为了生成与输入音频同步的情感动态,我们将A2FD模块预测的关键点𝒙1:𝑎𝑇及其雅可比矩阵𝑱1:𝑎𝑇与情感特征f𝑒一起作为位移预测器𝑷𝑑的输入。位移预测器采用4层多层感知器(MLP)来预测位移,称为Δ𝒙1:𝑎′𝑇和Δ𝑱1:𝑎′𝑇。注意,我们执行了一个位置编码操作[Mildenhall et al. 2020],将关键点投影到高维空间,从而使模型能够捕获更高频率的细节。最后,我们通过将Δ𝒙1:𝑎′𝑇和Δ𝑱1:𝑎′𝑇线性添加到音频学习的表示𝒙1:𝑎′𝑇, 𝑱1:𝑎′𝑇上,生成𝑁个情感音频学习的关键点𝒙𝑒𝑎1:𝑇和雅可比矩阵𝑱1:𝑒𝑎𝑇。
训练目标。在训练过程中,我们遵循第3.1节中所述的自监督训练策略。具体来说,对于每个情感源视频V𝑒,我们使用预训练的检测器𝑬𝑘来提取𝑁个关键点𝒙𝑒1:𝑇和雅可比矩阵𝑱1:𝑒𝑇作为真实值,然后通过将等式1中的损失项𝐿𝑘𝑝重新表述为以下形式,来最小化情感音频学习的关键点𝒙𝑒𝑎1:𝑇、雅可比矩阵𝑱1:𝑒𝑎𝑇与真实值之间的差异:
请注意,在训练我们的隐式情感位移学习器时,我们还使用等式2中的损失𝐿𝑝𝑒𝑟来对A2FD模块进行微调。
3.3 实施细节
所有视频均通过居中(裁剪并调整大小)第一帧中人脸的位置进行对齐,并将视频大小调整为256 × 256。视频以25帧每秒(FPS)的速率进行采样,音频则预处理为16kHz。对于音频特征,我们使用10ms的窗口大小计算28维的梅尔频率倒谱系数(MFCC),从而为每个帧生成28 × 12的特征。
数据集。我们使用LRW [Chung and Zisserman 2016a] 数据集来训练我们的A2FD模块,该数据集没有情感标注。LRW是一个从BBC新闻中收集的野外音视频数据集,包括500个不同单词的1000个发音,每个发音大约持续1秒。该数据集包含各种说话者和头部运动,非常适合我们的训练目标。我们按照LRW的设置分割训练/测试语料库。
我们使用情感数据集MEAD [Wang et al. 2020b] 来训练我们的隐式情感位移学习器。MEAD是一个高质量的情感对话脸部数据集,其中包括不同演员以8种不同情感说话的录制视频。在这里,我们选择34名演员进行训练,6名演员进行测试。
4 结果
以下,我们将展示与其他最先进方法的比较结果、用户研究结果以及我们方法的设计评估。有关实验设置的更多详细信息,请参阅补充材料。
4.1 评估
我们在LRW和MEAD的测试集上,与最先进的方法(即ATVG [Chen et al. 2019b]、Speech-driven-animation [Vougioukas et al. 2018]、Wav2Lip [Prajwal et al. 2020]、MakeItTalk [Zhou et al. 2020]、PC-AVS [Zhou et al. 2021])进行了比较。
评估指标。为了评估生成的口型与输入音频之间的同步性,我们采用了口型地标距离(M-LMD)[Chen et al. 2019b]和SyncNet的置信度分数[Chung and Zisserman 2016b]。然后,我们使用整个面部的地标距离(F-LMD)来衡量面部表情和姿势的准确性。为了评估生成视频的质量,我们还引入了结构相似性指数(SSIM)[Wang et al. 2004]和峰值信噪比(PSNR)作为额外的评估指标。
定量结果。实验在自动驾驶场景下进行,其中我们使用每个测试视频的音频和检测到的姿态序列作为音频和姿态源。请注意,对于没有情感的LRW数据集,我们仅使用A2FD模块来生成结果,其中我们随机选择LRW中每个视频的一帧作为源图像。而对于包含情感的MEAD数据集,源图像则是从与测试视频中相同说话者的中性视频中随机选择的。此外,我们没有直接将测试视频用作情感源,而是采用了与[Zhou et al. 2021]中相同的公平设置来获取情感源。我们首先将所有生成的帧和真实帧调整到相同大小,然后检测它们的面部地标进行比较。比较结果如表1所示。我们的方法在MEAD数据集的所有指标和LRW数据集的大多数指标上均取得了最高分数。值得注意的是,Wav2Lip是使用SyncNet判别器进行训练的,因此它在LRW数据集上自然获得了SyncNet的最高置信度分数。我们的结果与真实值相当,这意味着我们实现了令人满意的音视频同步。至于同时考虑姿态和表情的F-LMD,我们的方法在LRW数据集上与PC-AVS取得了相当的结果。原因是与MEAD相比,LRW中的情感表达变化较少,而在MEAD上我们取得了更好的结果。
定性结果。在图4中,我们还提供了我们的方法与最先进方法之间的定性比较。在这里,我们随机选择MEAD中的一个情感视频作为我们方法的情感源。我们的方法能够生成具有自然头部运动和准确口型的生动情感动画,而其他方法则无法生成明显的情感动态(见红色箭头)。具体来说,只有Wav2Lip和PC-AVS能够生成与我们相媲美的口部运动。然而,Wav2Lip仅关注语音音频与唇部运动之间的同步,而没有考虑面部表情和头部姿态。尽管PC-AVS能够控制头部姿态,但它在生成逼真动画时忽略了情感动态。SDA能够产生具有变化面部表情的结果,但是,生成的表情总是不稳定,这会影响身份的一致性。
4.2 用户研究
我们进行了一项用户研究,以比较我们的方法与真实数据以及其他之前提到的最先进方法。我们招募了20名具有计算机科学背景的参与者,其中14名为男性,6名为女性。参与者的年龄范围在21至25岁之间。我们从MEAD测试集的每个情感类别中选择了5个视频作为情感源视频。对于每个情感源视频,我们从LRW和MEAD的测试集中随机选择图像和音频源,为每个方法生成40个视频(5个视频×8种情感)。我们还随机选择了40个具有相应情感的真实视频。因此,每位参与者需要参与280次试验(7种情况×40个视频),并且视频以随机顺序播放以减少疲劳。
我们首先向参与者展示了带有八个不同情感类别的真实标注视频,以供参考。然后,对于每个展示的视频片段,我们设计了一个两阶段程序。在第一阶段,参与者需要从三个方面(即“唇部同步”、“面部表情的自然度”和“视频质量”)对给定视频进行评估,并为每个方面给出1(最差)到5(最好)的分数。此外,由于MEAD中的源视频具有特定的情感标签,我们在第二阶段进行了一项情感分类任务,以评估我们的方法所生成的情感。具体来说,我们展示了相同的静音视频,并要求参与者从八个类别中选择视频的情感类型。第二阶段展示的视频是静音的,因此参与者只能专注于面部表情。通过这种方式可以很好地评估生成的视频和情感。基本上,每位参与者完成实验需要大约90分钟。
结果如表2所示。除了真实数据外,我们的工作在三个方面均获得了最高分数,这表明了我们的方法的有效性。此外,我们在情感分类中获得了58%的准确率,而其他方法的准确率远低于我们,因为它们无法生成逼真的情感动态。
4.3 消融研究
我们在MEAD数据集上进行了消融研究,以证明我们的隐式情感位移学习器(第3.2节)的有效性,并验证其中三个重要组件(即数据增强、条件音频驱动的关键点和雅可比矩阵输入以及学习三种面部相关表示的情感位移)的贡献。具体来说,我们总共设计了五个变体,其中前两个变体旨在评估我们的运动模型设计:
(1)A2FD(基线):我们的EAMM(情感动画记忆模型)未使用隐式情感位移学习器;
(2)基于特征的:在特征空间中表示情感动态。
另外三个变体旨在验证隐式情感位移学习器中的组件:
(3)无增强:未使用数据增强;
(4)无条件:未使用条件音频驱动的关键点和雅可比矩阵输入;
(5)所有点的位移:学习所有关键点和其雅可比矩阵的情感位移。
请注意,基于特征的变体旨在探索情感模式是否可以作为特征而非位移方式来表示。具体来说,我们首先使用两个独立的编码器分别提取音频特征f𝑎和情感特征f𝑒。然后,我们引入了风格迁移工作中常用的操作AdaIN(Huang和Belongie,2017年)来将情感特征f𝑒中的情感风格转移到音频特征f𝑎上。最后,我们使用一个解码器(Siarohin等,2019b年)来预测最终的关键点和雅可比矩阵。
除了第4.1节中提到的指标外,我们还额外使用了一个现成的情感分类网络[Meng等人,2019年]来评估生成情感的准确性。该分类网络在MEAD数据集上进行训练,并在测试集上达到了90%的准确率,从而确保了评估结果的可靠性。表3中的定量结果和图5中的可视化展示都表明,隐式情感位移学习器及其三个组件是情感生成的有效设计。在这三个组件中,数据增强策略对我们的模型尤为重要,因为它有助于传递准确的情感动态,同时不牺牲身份特征(见红色箭头)。此外,我们观察到,基于特征模型生成的人脸形状不稳定,情感也不明显,这表明在特征空间中无法很好地分离情感。
4.4 局限性
尽管我们的方法取得了成功,但我们也认识到了在探索过程中存在的一些局限性。首先,由于我们的数据增强策略中包含了嘴部遮挡操作,导致我们工作中生成的嘴部区域情感动态不明显。其次,由于情感是个性化的因素,从某个角色提取的情感模式在转移到另一个角色后,有时会显得不自然。此外,我们的方法忽略了音频与情感之间的相关性,而是引入了情感源视频,这可能会导致动画结果不一致。这些都将是我们未来工作的一部分。
5 结论
在本文中,我们提出了情感感知运动模型,通过引入额外的情感源视频来生成一次性情感化说话人脸。我们从情感源视频中提取情感动态,并将其作为可传递的运动模式,应用于任意音频驱动的说话人脸。这使得我们能够合成更逼真的说话人脸,在视频会议、数字化身等领域具有巨大的应用潜力。定性和定量实验表明,与最先进的方法相比,我们的方法可以生成更具表现力的动画效果。我们希望我们的工作能够激发该领域未来的研究。
6 伦理考量
我们的方法专注于合成情感化说话人脸动画,旨在开发数字娱乐和高级视频会议系统。然而,该方法也可能在社交媒体上被恶意滥用,从而对整个社会产生负面影响。为了缓解上述担忧,在深度伪造(Deepfake)检测领域已经取得了显著进展。一些工作[Chai等人,2020年;Güera和Delp,2018年;Li等人,2020年;Rossler等人,2019年;Wang等人,2020a年;Yu等人,2019年]专注于通过检测纹理伪影或不一致性来识别视觉深度伪造。近期研究[Arandjelovic和Zisserman,2017年;Korbar等人,2018年;Owens等人,2016年;Zhou和Lim,2021年]还考虑了视频与音频之间的关系,并利用这两种模态的同步性来辅助检测。然而,缺乏大量真实且富有情感的人像数据限制了这些方法的性能和泛化能力。因此,我们也致力于通过分享我们生成的情感化说话人脸结果来支持深度伪造检测社区,这有助于改进检测算法以应对更复杂的场景。我们相信,只要合理使用这项技术,将促进机器学习研究和日常生活的积极发展。
相关文章:
EAMM: 通过基于音频的情感感知运动模型实现的一次性情感对话人脸合成
EAMM: 通过基于音频的情感感知运动模型实现的一次性情感对话人脸合成 1所有的材料都可以在EAMM: One-Shot Emotional Talking Face via Audio-Based Emotion-Aware Motion Model网站上找到。 摘要 尽管音频驱动的对话人脸生成技术已取得显著进展,但现有方法要么忽…...
Linux提权-02 sudo提权
文章目录 1. sudo 提权原理1.1 原理1.2 sudo文件配置 2. 提权利用方式2.1 sudo权限分配不当2.2 sudo脚本篡改2.3 sudo脚本参数利用2.4 sudo绕过路径执行2.5 sudo LD_PRELOAD环境变量2.6 sudo caching2.7 sudo令牌进程注入 3. 参考 1. sudo 提权原理 1.1 原理 sudo是一个用于在…...
【Pandas】pandas Series apply
Pandas2.2 Series Function application, GroupBy & window 方法描述Series.apply()用于将一个函数应用到 Series 的每个元素或整个 Series pandas.Series.apply pandas.Series.apply 是 Pandas 库中 Series 对象的一个方法,用于将一个函数应用到 Series 的…...
Git学习笔记
Git学习笔记 目录 版本控制 本地版本控制 集中版本控制 分布式版本控制 基本使用方式 Git Config Git Remote Git Add Objects Refs Annotation Tag 追溯历史版本 修改历史版本 Git GC Git Clone & Pull & Fetch Git Push 常见问题 不同的工作流 集…...
HTML5 Canvas实现的跨年烟花源代码
以下是一份基于HTML5 Canvas实现的跨年烟花源代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">…...
javaEE初阶————多线程初阶(2)
今天给大家带来第二期啦,保证给大家讲懂嗷; 1,线程状态 NEW安排了工作还未开始行动RUNNABLE可工作的,或者即将工作,正在工作BLOCKED排队等待WAITING排队等待其他事TIMED_WAITING排队等待其他事TERMINATED工作完成了 …...
linux下的NFS和FTP部署
目录 NFS应用场景架构通信原理部署权限认证Kerberos5其他认证方式 命令serverclient查看测试系统重启后自动挂载 NFS 共享 高可用实现 FTP对比一些ftp服务器1. **vsftpd (Very Secure FTP Daemon)**2. **ProFTPD (Professional FTP Daemon)**3. **Pure-FTPd**4. **WU-FTPD (Was…...
《Java核心技术II》可中断套接字
4.2.4 可中断套接字 SocketChannel可以中断套接字 SocketChannel channel.open(new InetSocketAddress(host,port)); 通道(channel)并没有与之相关联的流,实际上,所拥有的read和write方法都是通过Buffer对象实现的。 如果不想处理缓冲区,…...
电梯系统的UML文档05
Dispatcher 不控制实际的电梯组件,但它在软件系统中是重要的。每一个电梯有一个ispatcher,主要功能是计算电梯的移动方向、移动目的地以及保持门的打开时间。它和系统中除灯控制器以外的几乎所有控制对象交互。 安全装置也是一个环境对象,它…...
浅谈云计算19 | OpenStack管理模块 (上)
OpenStack管理模块(上) 一、操作界面管理架构二、认证管理2.1 定义与作用2.2 认证原理与流程2.2.1 认证机制原理2.2.2 用户认证流程 三、镜像管理3.1 定义与功能3.2 镜像服务架构3.3 工作原理与流程3.3.1 镜像存储原理3.3.2 镜像检索流程 四、计算管理4.…...
1.5 GPT 模型家族全解析:从 GPT-1 到 GPT-4 的演进与创新
GPT 模型家族全解析:从 GPT-1 到 GPT-4 的演进与创新 随着人工智能技术的飞速发展,GPT(Generative Pre-trained Transformer)模型家族已经成为了现代自然语言处理(NLP)领域的标杆。从初代的 GPT-1 到最新的 GPT-4,每一代模型的发布都标志着人工智能技术的一个飞跃,并推…...
C#如何调用执行命令行窗口(CMD)
一、引言 在 C# 的编程世界里,我们常常会遇到需要与操作系统底层进行交互的场景。这时,调用命令行窗口(CMD)就成为了一个强大的工具。无论是自动化日常任务,还是执行外部程序和批处理文件,通过 C# 调用 CM…...
归子莫的科技周刊#2:白天搬砖,夜里读诗
归子莫的科技周刊#2:白天搬砖,夜里读诗 本周刊开源,欢迎投稿。 刊期:2025.1.5 - 2025.1.11。原文地址。 封面图 下班在深圳看到的夕阳,能遇到是一种偶然的机会,能拍下更是一种幸运。 白天搬砖,…...
Spring Boot + Apache POI 实现 Excel 导出:BOM物料清单生成器(支持中文文件名、样式美化、数据合并)
目录 引言 Apache POI操作Excel的实用技巧 1.合并单元格操作 2.设置单元格样式 1. 创建样式对象 2. 设置边框 3. 设置底色 4. 设置对齐方式 5. 设置字体样式 6.设置自动换行 7. 应用样式到单元格 3. 定位和操作指定单元格 4.实现标签-值的形式 5.列宽设置 1. 设…...
OpenVela——专为AIoT领域打造的开源操作系统
目录 一、系统背景与开源 1.1. 起源 1.2. 开源 二、系统特点 2.1. 轻量化 2.2. 标准兼容性 2.3. 安全性 2.4. 高度可扩展性 三、技术支持与功能 3.1. 架构支持 3.2. 异构计算支持 3.3. 全面的连接套件 3.4. 开发者工具 四、应用场景与优势 4.1. 应用场景 4.2. …...
02UML图(D1_结构图)
目录 学习前言 ---------------------------------- 讲解一:类图 一、类图的组成结构 1. 类(Class) 1.1. 类的成员变量的表示方式 1.2. 类的成员方法的表示方式 2. 接口(Interface) 3. 包(Package) 二、UML类…...
二十三种设计模式-装饰器模式
一、定义与核心思想 装饰器模式是一种结构型设计模式,其核心思想是动态地给一个对象添加一些额外的职责。通过这种方式,可以在不改变原有对象结构的基础上,灵活地增加新的功能,使得对象的行为可以得到扩展,同时又保持…...
SSM课设-酒店管理系统功能设计
【课设者】SSM课设-酒店管理系统 分为用户端管理员端 技术栈: 后端: Spring Spring MVC MyBatis Mysql JSP 前端: HtmlCssJavaScriptAjax 功能: 用户端主要功能包括: 登录注册 客房预订 客房评论 首页 管理员端主要功能包括: 会员信息管理 客房信息…...
R语言的文件操作
R语言的文件操作 引言 在数据科学和分析的过程中,文件操作是不可或缺的一部分。R语言作为一种强大的统计计算和图形作图的编程语言,提供了丰富的文件操作函数,使得用户能够方便地读取和保存数据。本文将详细介绍R语言中的文件操作ÿ…...
[javaWeb]初识Web
将该图片在浏览器中打印出来 代码: <html> <head> <title>HTML初识</title> </head> <body> <h1>猫猫</h1> <img src "img/1.jpg"> </body> &l…...
基于微信小程序的摄影竞赛系统设计与实现(LW+源码+讲解)
专注于大学生项目实战开发,讲解,毕业答疑辅导,欢迎高校老师/同行前辈交流合作✌。 技术范围:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:…...
.netframwork模拟启动webapi服务并编写对应api接口
在.NET Framework环境中模拟启动Web服务,可以使用几种不同的方法。一个常见的选择是利用HttpListener类来创建一个简单的HTTP服务器,或者使用Owin/Katana库来自托管ASP.NET Web API或MVC应用。下面简要介绍Owin/Katana示例代码。这种方法更加灵活&#x…...
Go语言之路————条件控制:if、for、switch
Go语言之路————if、for、switch 前言ifforswitchgoto和label 前言 我是一名多年Java开发人员,因为工作需要现在要学习go语言,Go语言之路是一个系列,记录着我从0开始接触Go,到后面能正常完成工作上的业务开发的过程࿰…...
54,【4】BUUCTF WEB GYCTF2020Ezsqli
进入靶场 吓我一跳,但凡放个彭于晏我都不说啥了 提交个1看看 1 and 11 1# 还尝试了很多,不过都被过滤了,头疼 看看别人的WP 竟然要写代码去跑!!!,不会啊,先用别人的代码吧…...
在线图片压缩工具
在线图片压缩工具,无需登录,无需成本,用完就走。 包括中文和英文版本。 官网地址: https://compress.openai2025.com/ 效果:...
快手极速版如何查找ip归属地?怎么关掉
在数字化时代,个人隐私的保护成为了广大用户关注的焦点。快手极速版作为一款备受欢迎的短视频应用,其IP归属地的显示与关闭功能自然也成了用户热议的话题。本文将详细介绍如何在快手极速版中查找IP归属地以及如何关闭IP属地显示,帮助用户更好…...
精准掌握:Nginx匹配规则及其优先级解析
Nginx作为一款高性能的HTTP和反向代理服务器,其配置文件的匹配规则及优先级设置对于实现精确的请求路由和资源分配至关重要。本文将深入探讨Nginx的匹配规则及其优先级,帮助读者更好地理解和应用这些配置。 一、Nginx匹配规则概述 Nginx的匹配规则主要…...
在VS2022中用C++连接MySQL数据库读取数据库乱码问题
1.正确安装mysql 安装之后的配置文件 2.在VS2022中进行相关配置 (1)右键项目,打开属性 注意是右键项目,不是.cpp文件 (2)配置属性-> VC目录 -> 包含目录 ->添加头文件路径(如图&am…...
RocketMQ源码分析之事务消息分析
rocketMQ事务消息原理概述 RocketMQ采用两阶段提交(2PC)的思想来实现事务消息,当事务消息失败或者超时,同时采用补偿的方式处理这个问题。这两个阶段分别为正常事务消息的发送与提交以及事务消息的补偿。我们看看官方文档给的事务…...
2025.1.19机器学习笔记:PINN文献精读
第三十周周报 一、文献阅读题目信息摘要Abstract创新点物理背景网络框架实验实验一:直道稳定流条件实验二:环状网络中的非稳定流条件 结论缺点及展望 二、代码实践总结 一、文献阅读 题目信息 题目:《Enhanced physics-informed neural net…...
大文件上传服务-后端V1V2
文章目录 大文件上传概述:minio分布式文件存储使用的一些技术校验MD5的逻辑 uploadV1 版本 1uploadv2 版本 2 大文件上传概述: 之前项目做了一个文件上传的功能,最近看到有面试会具体的问这个上传功能的细节,把之前做的项目拿过来总结一下,自己写的一个…...
docker 基础语法学习,K8s基础语法学习,零基础学习
下面是关于Docker和Kubernetes的基础语法学习资料,包括一些关键概念和示例代码。 Docker 基础语法 1. 安装 Docker 首先,你需要安装 Docker。以下是不同操作系统上的安装指南: Windows/Mac: 下载并安装 Docker Desktop。 Linux: 根据你的…...
【网络协议】RFC3164-The BSD syslog Protocol
引言 Syslog常被称为系统日志或系统记录,是一种标准化的协议,用于网络设备、服务器和应用程序向中央Syslog服务器发送日志消息。互联网工程任务组(IETF)发布的RFC 3164,专门定义了BSD Syslog协议的规范和实现方式。通…...
MongoDB深度解析与实践案例
MongoDB深度解析与实践案例 在当今大数据与云计算盛行的时代,NoSQL数据库以其灵活的数据模型、水平扩展能力和高性能,成为处理海量数据的重要工具之一。MongoDB,作为NoSQL数据库的杰出代表,凭借其面向文档的存储结构、强大的查询语言以及丰富的生态系统,赢得了众多开发者…...
C语言从零到精通:常用运算符完全指南,掌握算术、逻辑与关系运算
系列文章目录 01-C语言从零到精通:常用运算符完全指南,掌握算术、逻辑与关系运算 文章目录 系列文章目录前言一、C语言的起源与应用领域1.1 C语言的起源1.2 C语言的应用领域1.2.1 操作系统开发1.2.2 嵌入式系统1.2.3 编译器开发1.2.4 游戏开发与图形处理…...
ArkUI概述
鸿蒙操作系统(HarmonyOS)是华为公司推出的一款面向未来、面向全场景的分布式操作系统。它不仅能够支持各种不同的设备,从手机、平板到智能穿戴和智能家居产品,而且为开发者提供了一套统一的开发环境和工具链。对于想要深入鸿蒙开发…...
浅谈计算机网络03 | 现代网络组成
现代网络组成 一 、网络生态体系1.1网络生态系统的多元主体1.2 网络接入设施的多样类型 二、现代网络的典型体系结构解析三、高速网络技术3.1 以太网技术3.2 Wi-Fi技术的深度剖析3.2.1 应用场景的多元覆盖3.2.2 标准升级与性能提升 3.3 4G/5G蜂窝网的技术演进3.3.1 蜂窝技术的代…...
在线图片马赛克处理工具
在线图片马赛克处理工具,无需登录,无需费用,用完就走。 包括中文和英文版本 官网地址: https://mosaic.openai2025.com...
文件上传 分片上传
分片上传则是将一个大文件分割成多个小块分别上传,最后再由服务器合并成完整的文件。这种做法的好处是可以并行处理多个小文件,提高上传效率;同时,如果某一部分上传失败,只需要重传这一部分,不影响其他部分…...
网络安全---CMS指纹信息实战
CMS简介 CMS(Content Management System)指的是内容管理系统,如WordPress、Joomla等。CMS系统非常常见,几乎所有大型网站都使用CMS来管理其网站的内容。由于常见CMS的漏洞较多,因此黑客将不断尝试利用这些漏洞攻击CMS…...
Ubuntu 24.04 LTS 系统语言英文改中文
Ubuntu 24.04 LTS 修改软件源 Ubuntu 更改软件源 修改语言 无需输入命令,为Ubuntu 24.04系统添加中文智能拼音输入法 在 setting 的 system 中按下图操作 点击“Apply Changes”。需要管理员密码,安装完成后,退出登录,重新登…...
信创在医疗领域的应用:开启医疗信息化新时代
信创在医疗领域的应用:开启医疗信息化新时代 信创在医疗领域的应用:开启医疗信息化新时代信创医疗自助一体机杭医基于信创底座的健康医疗大数据平台厦门大学附属成功医院基于海光CPU的信创改造中科可控基于海光CPU的智慧医疗解决方案 信创在医疗领域的应…...
力扣-数组-303 区域和检索-数组不可变
解析 题目有点费解,大致应该是给出区间内的和,然后维护一个前缀和,为了防止越界,先填一个0进去,在构建的时候也要注意此时构建的dp的下标是i1,所以加的前缀和的下标是i。 代码 class NumArray { public:…...
【CSS】---- CSS 实现超过固定高度后出现展开折叠按钮
1. 实现效果 2. 实现方法 使用 JS 获取盒子的高度,来添加对应的按钮和样式;使用 CSS 的浮动效果,参考CSS 实现超过固定高度后出现展开折叠按钮;使用容器查询 – container 语法;使用 clamp 函数进行样式判断。 3. 优…...
二十项零信任相关的前沿和趋势性技术-MASQUE
影响力评级:较低 市场渗透率:不到目标受众的 1% 成熟度:孵化 定义:基于QUIC加密的多路复用应用程序底层 (MASQUE) 是一个 IETF 标准草案,可实现流量的安全传输和代理。 MASQUE全称为:Multiplexed Appli…...
【Docker】使用Dev Container进行开发
工作区 Dev Container 设置 新建一个文件夹 ./devcontainer 然后下面放 devcontainer.json 然后安装 vscode dev container 插件,然后 CtrlShiftP 启动 Container {"name": "PyTorch-Julia Development","image": "x66ccff/p…...
搭建一个基于Spring Boot的数码分享网站
搭建一个基于Spring Boot的数码分享网站可以涵盖多个功能模块,例如用户管理、数码产品分享、评论、点赞、收藏、搜索等。以下是一个简化的步骤指南,帮助你快速搭建一个基础的数码分享平台。 — 1. 项目初始化 使用 Spring Initializr 生成一个Spring …...
在线json格式化工具
在线json格式化工具,包括中文和英文版本,无需登录,无需费用,用完就走。 官网地址: https://json.openai2025.com 效果如下:...
leetcode300.最长递增子序列
给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列 是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。 示例 1&…...
【个人学习记录】软件开发生命周期(SDLC)是什么?
软件开发生命周期(Software Development Life Cycle,SDLC)是一个用于规划、创建、测试和部署信息系统的结构化过程。它包含以下主要阶段: 需求分析(Requirements Analysis) 收集并分析用户需求定义系统目标…...