掌桥专利:专业的专利平台
掌桥专利
首页

一种基于多层级语音特征的语音驱动三维人脸动画方法

文献发布时间:2024-04-18 19:58:21


一种基于多层级语音特征的语音驱动三维人脸动画方法

技术领域

本发明涉及三维人脸动画驱动技术领域,特别涉及一种基于多层级语音特征的语音驱动三维人脸动画方法。

背景技术

三维数字人不仅引起了学术界的广泛关注,而且在电脑游戏、虚拟现实、电影制作等商业领域也有广泛的应用。在这些应用中,需要通过输入语音或文本等信号自动驱动三维虚拟角色,从而获得一个生动逼真的数字人。考虑到语音不仅传达了大量细节内容,还包含了丰富的语义语境信息,并且语音和面部动作,尤其是嘴唇动作之间的高度相关性,使得语音驱动三维数字人脸动画技术越来越被人关注。

语音驱动人脸动画是一个极具挑战性的研究问题。在语言治疗或娱乐游戏等应用程序中不需要人脸动画达到非常精确的真实水平,但在电影制作、电子商务应用等中驱动的虚拟数字人化身需要还原高度真实、自然的细微面部动作和表情,并且能够与语音协同发音效果及口型同步。

因此,提高语音驱动三维人脸动画的真实性、连续性以及情感表现力,是三维人脸动画驱动技术目前亟待解决的问题。

发明内容

为了克服现有技术的上述缺点与不足,本发明的目的在于提供一种基于多层级语音特征的语音驱动三维人脸动画方法,通过提取语音中不同层级的语音特征并加以融合后得到多层级的语音特征,然后输入跨模态驱动三维数字人脸的深度学习模型,自回归预测出情感表现力高,真实感强的三维数字人脸动画。

本发明的目的通过以下技术方案实现:

一种基于多层级语音特征的语音驱动三维人脸动画方法,包括以下步骤:

S1获取原始音频文件以及对应的三维人脸动画样本,划分为训练集和测试集;

S2根据语音特性将原始音频文件预处理,提取出多个不同层级的语音特征并加以融合:

通过自监督预训练语音模型wavLM提取帧级别的语音特征;

通过基于发音结构的统计特征的Speechformer模块提取音素、词级别的语音特征;

将所得的帧、音素以及词级别的语音特征融合得到多层级语音特征;

S3建立语音跨模态驱动三维人脸动画整体模型,所述语音跨模态驱动三维人脸动画整体模型包括三维人脸运动编码器和多层跨模态Transformer解码器;

训练语音跨模态驱动三维人脸动画整体模型以进行自回归预测三维人脸动画任务:

S31将说话者身份风格向量与多层级语音特征输入多层跨模态Transformer解码器预测出第一帧的三维人脸网格;

S32对于第t帧,t大于等于2,将前t-1帧预测的三维人脸网格序列经过三维人脸运动编码器编码后,与说话者身份风格向量融合,得到人脸动画编码序列;将人脸动画编码序列与多层级语音特征一同输入多层跨模态Transformer解码器自回归预测出当前帧的三维人脸网格;

S33重复步骤S32,直至预测完最后一帧的三维人脸网格;

S34将预测的所有帧三维人脸网格拼接在一起,得到一个预测的三维人脸网格序列,在预测的三维人脸网格序列与原始的三维人脸动画样本之间构建损失函数,通过梯度下降法不断训练优化模型,得到语音跨模态驱动三维人脸动画整体模型语音跨模态驱动三维人脸动画整体模型;

S4根据测试集样本衡量语音跨模态驱动三维人脸动画整体模型的性能,并获取性能最好的模型;

S5将实际环境中的语音样本输入性能最好的模型,输出指定风格的三维人脸动画。

优选的,所述原始音频是wav文件,读取后得到语音波形

所述三维人脸动画样本是npy文件,读取后得到对应人脸5023个顶点的三维空间坐标的时间序列Y={y

优选的,所述通过自监督预训练语音模型wavLM提取帧级别的语音特征,具体为:

原始语音波形数据

利用线性插值层对A

利用线性层来降低上述帧粒度特征

优选的,所述通过基于发音结构的统计特征的Speechformer模块提取音素、词级别的语音特征,具体为:

SpeechFormer模块捕获滑动窗口T

使帧粒度特征

然后音素粒度特征

优选的,通过加权和A

优选的,所述三维人脸运动编码器包括运动编码器模块和周期性位置编码器模块;

所述多层跨模态Transformer解码器包括有偏因果多头自注意力模块、有偏跨模态多头自注意力模块和运动解码器模块。

优选的,步骤32所述将前t-1帧预测的三维人脸网格序列经过三维人脸运动编码器编码后,与说话者身份风格向量融合,得到人脸动画编码序列,具体为:

通过三维人脸运动编码器将预测三维人脸的面部运动投射到d维空间中,通过风格嵌入层将说话者身份风格向量的one-hot编码嵌入到d维向量s

W

通过周期性位置编码人脸面部动画序列注入时间顺序信息,最后得到用于自回归跨模态解码的面部运动表示

PEE

PEE

优选的,所述将人脸动画编码序列与多层级语音特征一同输入多层跨模态Transformer解码器自回归预测出当前帧的三维人脸运动,具体为:

假设已知时间编码的面部运动表示序列

所述多头注意力机制由H个平行缩放的点积注意组成,用于从多个表示子空间中联合提取互补信息;H个头的输出被连接在一起,并通过参数矩阵

假设有偏因果多头自注意力机制的输出为

在查询键注意得分中添加对齐偏差B

有偏跨模态注意力机制的输出被计算为V

最后将有偏跨模态注意力机制扩展到如有偏因果多头自注意力机制一样扩展到H个头,再将输出的d维隐藏状态投影回V维3D顶点空间,自回归预测出当前帧,即第t帧的面部运动

优选的,所述在预测的三维人脸网格序列与原始的三维人脸动画样本之间构建损失函数,具体为:

通过构建两种损失函数训练整体模型,第一种损失函数定义为位置损失,式子如下:

其中y

表示L2距离;

第二种损失函数为速度损失,用于保证合成运动时间上的连续性,式子如下,

总体损失函数为二者相加,L

优选的,所述通过梯度下降法优化模型,具体为:

通过梯度下降法不断训练更新网络参数,使损失函数达到全局最小值来优化模型。

与现有技术相比,本发明具有以下优点和有益效果:

本发明针对目前大多数语音驱动三维人脸面部的工作都只使用帧级别特征直接驱动面部运动,而忽视了语音中的其他发音结构如音素、单词等的问题,本发明从原始音频中提取出帧、音素以及词级别的语音特征,并且根据低层级的特征(帧、音素级别)提供了更多的细节来补充高层级的语音特征(词级别),高层级特征为低层级特征提供更多语义上下文信息的原则,将语音的各层级特征加以融合后去驱动人脸面部运动。通过本发明,语音提取出的人脸面部运动既能够关注整段语音上下文的长期关系,又能够专注于语音的某帧中的短期信息,从而达到增加生成的三维虚拟数字人脸真实性以及丰富数字人面部运动的表现力的目的。在应用于真实应用,如电影制作,电子商务交谈,甚至是娱乐游戏时,本发明可以提升人们在虚拟世界的沉浸体验感。

附图说明

图1为本发明实施例中基于多层级语音特征的语音驱动三维人脸动画方法的步骤流程图。

图2为本发明实施例中基于多层级语音特征的语音驱动三维人脸动画方法的训练过程的流程图。

图3为本发明实施例中基于多层级语音特征的语音驱动三维人脸动画方法的多层级语音特征提取及融合模型框架图。

图4为本发明实施例中基于多层级语音特征的语音驱动三维人脸动画方法的语音跨模态驱动三维人脸动画整体模型框架图。

具体实施方式

下面结合实施例,对本发明作进一步地详细说明,但本发明的实施方式不限于此。

实施例

参见图1、图2、图3和图4,本实施例提供一种基于多层级语音特征的语音驱动三维人脸动画方法,通过提取语音中不同层级的语音特征并加以融合后得到丰富层级的语音特征,然后输入跨模态驱动三维数字人脸的深度学习模型,自回归预测出情感表现力高,真实感强的三维数字人脸动画。

请参阅图1,图1是本发明实施例中基于多层级语音特征的语音驱动三维人脸动画方法的步骤流程图,该方法具体包括以下步骤:

S1、获取原始音频文件以及对应的三维人脸动画样本,并按照说话对象与语句内容将样本划分为训练集和测试集。

获得的数据库包含语音模态以及三维人脸动画视觉模态,这两个模态都具有时序性。

以单句话为例,每一组样本数据由以下部分组成:

(1)原始音频是wav文件,读取后得到语音波形

(2)三维人脸动画序列是npy文件,读取后得到对应人脸网格中5023个顶点的三维空间坐标的时间序列Y={y

在本实施例中,采用的数据集为VOCASET数据集。VOCASET数据集包含来自12个对象的480个音频-三维人脸动画网格对。对于每个对象,以60fps的速度捕获40个长度为3~5秒的人脸网格序列以及对应的采样率为22000Hz的语音。三维数字人头部网格由5023个顶点和9976个面表示。在本实施例中,需要将语音采样率降低至16000Hz以及将三维头部网格降采样至30fps。

数据集按照说话对象与语句内容划分为训练集与测试集,具体包括:划分为288个序列(8个受试者×36个句子)的训练集(VOCASET-Train)以及两个测试集(VOCASET-Test-A和VOCASET-Test-B),其中VOCASET-Test-A包含32个序列(8个受试者×4个句子),VOCASET-Test-B包含32个序列(剩余4个未见的受试者×8个句子)。

S2、根据语音特性将原始音频文件预处理,提取出多个不同层级的语音特征并加以融合。

请参阅图3,图3是本发明实施例中基于多层级语音特征的语音驱动三维人脸动画方法中的多层级语音特征提取及融合模型框架图。

已知读取原始音频文件后得到语音波形数据

将语音波形数据

将帧粒度特征

最后通过加权和A

S3、建立语音驱动三维人脸动画整体模型,所述语音跨模态驱动三维人脸动画整体模型包括三维人脸运动编码器和多层跨模态Transformer解码器;三维人脸运动编码器包括运动编码器模块和周期性位置编码器模块;多层跨模态Transformer解码器包括有偏因果多头自注意力模块、有偏跨模态多头自注意力模块和运动解码器模块;

训练语音跨模态驱动三维人脸动画整体模型以进行自回归预测三维人脸动画任务,请参阅图2,具体包括以下步骤:

S31将说话者身份风格向量与多层级语音特征输入多层跨模态Transformer解码器预测出第一帧的三维人脸网格;

S32对于第t帧,t大于等于2,将前t-1帧预测的三维人脸网格序列经过三维人脸运动编码器编码后,与说话者身份风格向量融合,得到人脸动画编码序列;将人脸动画编码序列与多层级语音特征一同输入多层跨模态Transformer解码器自回归预测出当前帧的三维人脸网格;

S33重复步骤S32,直至预测完最后一帧的三维人脸网格;

S34将预测的所有帧三维人脸网格拼接在一起,得到一个预测的三维人脸网格序列,在预测的三维人脸网格序列与原始的三维人脸动画样本之间构建损失函数,通过梯度下降法不断训练更新网络参数,优化模型,得到语音跨模态驱动三维人脸动画整体模型;

请参阅图4,图4是本发明实施例中基于多层级语音特征的语音驱动三维人脸动画方法中的语音跨模态驱动三维人脸动画模型框架图。

在步骤S31中,为了建模说话风格,先通过风格嵌入层将说话者身份风格向量的one-hot编码嵌入到d维向量s

W

此外还使用了一种周期性位置编码(PPE)来为人脸面部动画序列注入时间顺序信息,最后得到用于自回归跨模态解码的面部运动表示

PEE

PEE

在步骤S32中,预测当前帧的三维人脸网格具体实现如下:

假设此时需要推测第t帧时的三维人脸网格

多头注意力机制由H个平行缩放的点积注意组成,用于从多个表示子空间中联合提取互补信息。H个头的输出被连接在一起,并通过参数矩阵

假设有偏因果多头自注意力机制的输出为

有偏跨模态注意力机制的输出被计算为V

最后将有偏跨模态注意力机制扩展到如有偏因果多头自注意力机制一样扩展到H个头,再将输出的d维隐藏状态投影回V维3D顶点空间,自回归预测出第t帧的面部运动

在步骤S34中,通过原始样本的三维人脸序列Y={y

具体包括构建两种损失函数训练整体模型,第一种损失函数定义为位置损失,式子如下,

其中y

表示L2距离。

第二种损失函数为速度损失,是为了保证合成运动时间上的连续性,式子如下,

总体损失函数为二者相加,L

S4、根据测试集样本衡量语音跨模态驱动三维人脸动画整体模型的性能,并获取性能最好的模型。

可选地,采取的定量衡量指标为唇部同步误差和整体同步误差。其中,唇部同步误差是计算出每帧所有唇部区域人脸网格顶点的最大L2误差后取所有帧的均值,整体同步误差是计算出整个三维人体网格所有顶点的L2误差均值。唇部同步误差是为了判断嘴唇运动与语音的同步性以及自身的真实性,整体同步误差是为了评估整体人脸的合成性能。最后将指标下性能最优的整个模型的参数和结构都保存下来。

S5、将实际环境中的语音样本输入性能最好的模型,输出指定风格的三维人脸动画。

将数据集样本以外的实际环境中的语音样本输入性能最好的语音驱动三维人脸动画序列模型,同时规定指定的说话人风格,模型输出指定风格的真实感高,情感表现力强的三维人脸动画序列。

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受所述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

相关技术
  • 基于动态基元选取的语音驱动三维人脸动画方法
  • 一种语音驱动的三维人脸动画生成方法及网络结构
技术分类

06120116479956