一种面部、身体运动参数的联合生成方法及相关设备转让专利

申请号 : CN202311224560.0

文献号 : CN116977499B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈俊名刘云飞李昱王佳楠曾爱玲周昌印余飞幺宝刚

申请人 : 粤港澳大湾区数字经济研究院(福田)杭州盖视科技有限公司

摘要 :

本发明公开了一种面部、身体运动参数的联合生成方法及相关设备,通过获取音频数据,并获取预设的风格数据;根据音频数据和风格数据,生成运动参数,其中,运动参数包括面部运动参数和身体运动参数,身体运动参数基于面部运动参数生成;根据运动参数进行目标驱动。本发明可以根据音频数据和风格数据联合生成面部运动参数和身体运动参数,并在生成身体运动参数时会参考面部运动参数,从而使得音频驱动面部表情和身体动作的效果能够达到更高的同步性,更接近面部、身体的真实运动状态。

权利要求 :

1.一种面部、身体运动参数的联合生成方法,其特征在于,所述方法包括:获取音频数据,并获取预设的风格数据;

根据所述音频数据和所述风格数据,生成运动参数,其中,所述运动参数包括面部运动参数和身体运动参数,所述身体运动参数基于所述面部运动参数生成;

根据所述运动参数进行目标驱动;

所述根据所述音频数据和所述风格数据,生成运动参数包括:根据所述音频数据确定音频特征信息,并根据所述风格数据确定风格特征信息;

将所述音频特征信息和所述风格特征信息输入生成模型,得到所述运动参数,其中,所述生成模型用于:根据所述音频特征信息和所述风格特征信息,确定所述面部运动参数;

根据所述音频特征信息、所述风格特征信息以及所述面部运动参数,确定所述身体运动参数;

所述生成模型为扩散模型,所述面部运动参数为面部噪声数据,所述身体运动参数为身体噪声数据,所述扩散模型用于:根据所述音频特征信息和所述风格特征信息对预设噪声数据进行降噪,得到所述面部噪声数据;

根据所述音频特征信息、所述风格特征信息以及所述面部噪声数据对所述预设噪声数据进行降噪,得到所述身体噪声数据。

2.根据权利要求1所述的面部、身体运动参数的联合生成方法,其特征在于,所述根据所述音频数据确定音频特征信息,包括:对所述音频数据进行特征提取,得到若干音频特征数据,其中,当所述音频特征数据的数量大于一时,各所述音频特征数据分别对应不同的特征类型;

根据若干所述音频特征数据,确定所述音频特征信息。

3.根据权利要求1所述的面部、身体运动参数的联合生成方法,其特征在于,所述根据所述风格数据确定风格特征信息,包括:对所述风格数据进行编码,得到风格编码数据;

对所述风格编码数据进行特征提取,得到所述风格特征信息。

4.根据权利要求1所述的面部、身体运动参数的联合生成方法,其特征在于,所述扩散模型为逐扩散时间步降噪,所述扩散模型还用于:判断扩散时间步的步数是否达到预设步数;

当所述扩散时间步的步数未达到所述预设步数时,将所述面部噪声数据和所述身体噪声数据作为所述预设噪声数据,继续执行所述根据所述音频特征信息和所述风格特征信息对预设噪声数据进行降噪,得到所述面部噪声数据的步骤,直至所述扩散时间步的步数达到所述预设步数。

5.根据权利要求1所述的面部、身体运动参数的联合生成方法,其特征在于,所述方法还包括:当所述音频特征信息大于预设的序列长度时,根据所述序列长度将所述音频特征信息分为若干子序列,其中,任意相邻的两个所述子序列之间具有重叠区域;

针对每一所述子序列,将所述子序列作为所述音频特征信息,执行所述将所述音频特征信息和所述风格特征信息输入生成模型的步骤,直至得到所述子序列对应的所述运动参数;

通过各所述重叠区域对各所述子序列的所述运动参数进行拼接,得到所述音频数据对应的所述运动参数。

6.根据权利要求5所述的面部、身体运动参数的联合生成方法,其特征在于,针对非首位的每一所述子序列,所述子序列与前一所述子序列的所述重叠区域为复制区域,所述复制区域对应的所述运动参数基于前一所述子序列中对应区域的所述运动参数确定。

7.根据权利要求6所述的面部、身体运动参数的联合生成方法,其特征在于,所述子序列中除所述复制区域之外的区域为生成区域;所述生成区域对应的所述运动参数基于所述扩散模型生成,所述生成区域对应的所述预设噪声数据的确定方法包括:根据前一所述子序列的所述运动参数,确定第一运动参数和第二运动参数的加权融合数据,其中,所述第一运动参数为前一所述子序列中所述复制区域对应的所述运动参数,所述第二运动参数为前一所述子序列中所述生成区域对应的所述运动参数;

根据所述加权融合数据,确定所述生成区域对应的所述预设噪声数据。

8.根据权利要求5所述的面部、身体运动参数的联合生成方法,其特征在于,针对末位的所述子序列,当所述子序列小于所述序列长度时,根据所述子序列的长度调整所述扩散模型的位置编码数量。

9.根据权利要求1所述的面部、身体运动参数的联合生成方法,其特征在于,所述根据所述运动参数进行目标驱动,包括:将所述运动参数输入三维渲染器;

通过所述三维渲染器将所述运动参数重定向至虚拟目标,以实现对所述虚拟目标进行驱动。

10.根据权利要求1所述的面部、身体运动参数的联合生成方法,其特征在于,所述根据所述运动参数进行目标驱动,包括:将所述运动参数输入神经网络生成器;

通过所述神经网络生成器将所述运动参数投影至图像像素坐标系,得到若干帧驱动图像;

根据各帧所述驱动图像对虚拟目标进行驱动。

11.一种面部、身体运动参数的联合生成装置,其特征在于,所述装置包括:获取模块,用于获取音频数据和风格数据;

生成模块,用于根据所述音频数据和所述风格数据,生成运动参数,其中,所述运动参数包括面部运动参数和身体运动参数,所述身体运动参数基于所述面部运动参数生成;

驱动模块,用于根据所述运动参数进行目标驱动;

所述根据所述音频数据和所述风格数据,生成运动参数包括:根据所述音频数据确定音频特征信息,并根据所述风格数据确定风格特征信息;

将所述音频特征信息和所述风格特征信息输入生成模型,得到所述运动参数,其中,所述生成模型用于:根据所述音频特征信息和所述风格特征信息,确定所述面部运动参数;

根据所述音频特征信息、所述风格特征信息以及所述面部运动参数,确定所述身体运动参数;

所述生成模型为扩散模型,所述面部运动参数为面部噪声数据,所述身体运动参数为身体噪声数据,所述扩散模型用于:根据所述音频特征信息和所述风格特征信息对预设噪声数据进行降噪,得到所述面部噪声数据;

根据所述音频特征信息、所述风格特征信息以及所述面部噪声数据对所述预设噪声数据进行降噪,得到所述身体噪声数据。

12.一种终端,其特征在于,所述终端包括有存储器和一个以上处理器;所述存储器存储有一个以上的程序;所述程序包含用于执行如权利要求1‑10中任一所述的面部、身体运动参数的联合生成方法的指令;所述处理器用于执行所述程序。

13.一种计算机可读存储介质,其上存储有多条指令,其特征在于,所述指令适用于由处理器加载并执行,以实现上述权利要求1‑10任一所述的面部、身体运动参数的联合生成方法的步骤。

说明书 :

一种面部、身体运动参数的联合生成方法及相关设备

技术领域

[0001] 本发明涉及语音驱动技术领域,尤其涉及的是一种面部、身体运动参数的联合生成方法及相关设备。

背景技术

[0002] 随着语音识别、语音合成、自然语言处理和人工智能等技术的发展,人与计算机之间语音方式的交流成为可能。语音驱动的人机交互方式为人机交互提供了一种新途径,能有效提高人机交互的便捷性和易用性。目前,语音驱动领域中采用的数据驱动方法是通过设计不同的网络模型来生成面部表情和身体动作。由于不同的网络模型之间信息交互较少,导致生成的面部表情和身体动作的真实度以及自然性受限。
[0003] 因此,现有技术还有待改进和发展。

发明内容

[0004] 本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种面部、身体运动参数的联合生成方法及相关设备,旨在解决现有的语音驱动方法通过设计不同的网络模型来生成面部表情和身体动作,由于不同的网络模型之间信息交互较少,导致生成的面部表情和身体动作的真实度和自然性受限的问题。
[0005] 本发明解决问题所采用的技术方案如下:
[0006] 第一方面,本发明实施例提供一种面部、身体运动参数的联合生成方法,所述方法包括:
[0007] 获取音频数据,并获取预设的风格数据;
[0008] 根据所述音频数据和所述风格数据,生成运动参数,其中,所述运动参数包括面部运动参数和身体运动参数,所述身体运动参数基于所述面部运动参数生成;
[0009] 根据所述运动参数进行目标驱动。
[0010] 在一种实施方式中,所述根据所述音频数据和所述风格数据,生成运动参数包括:
[0011] 根据所述音频数据确定音频特征信息,并根据所述风格数据确定风格特征信息;
[0012] 将所述音频特征信息和所述风格特征信息输入生成模型,得到所述运动参数,其中,所述生成模型用于:
[0013] 根据所述音频特征信息和所述风格特征信息,确定所述面部运动参数;
[0014] 根据所述音频特征信息、所述风格特征信息以及所述面部运动参数,确定所述身体运动参数。
[0015] 在一种实施方式中,所述根据所述音频数据确定音频特征信息,包括:
[0016] 对所述音频数据进行特征提取,得到若干音频特征数据,其中,当所述音频特征数据的数量大于一时,各所述音频特征数据分别对应不同的特征类型;
[0017] 根据若干所述音频特征数据,确定所述音频特征信息。
[0018] 在一种实施方式中,所述根据所述风格数据确定风格特征信息,包括:
[0019] 对所述风格数据进行编码,得到风格编码数据;
[0020] 对所述风格编码数据进行特征提取,得到所述风格特征信息。
[0021] 在一种实施方式中,所述生成模型为扩散模型,所述面部运动参数为面部噪声数据,所述身体运动参数为身体噪声数据,所述扩散模型用于:
[0022] 根据所述音频特征信息和所述风格特征信息对预设噪声数据进行降噪,得到所述面部噪声数据;
[0023] 根据所述音频特征信息、所述风格特征信息以及所述面部噪声数据对所述预设噪声数据进行降噪,得到所述身体噪声数据。
[0024] 在一种实施方式中,所述扩散模型为逐扩散时间步降噪,所述扩散模型还用于:
[0025] 判断扩散时间步的步数是否达到预设步数;
[0026] 当所述扩散时间步的步数未达到所述预设步数时,将所述面部噪声数据和所述身体噪声数据作为所述预设噪声数据,继续执行所述根据所述音频特征信息和所述风格特征信息对预设噪声数据进行降噪,得到所述面部噪声数据的步骤,直至所述扩散时间步的步数达到所述预设步数。
[0027] 在一种实施方式中,所述方法还包括:
[0028] 当所述音频特征信息大于预设的序列长度时,根据所述序列长度将所述音频特征信息分为若干子序列,其中,任意相邻的两个所述子序列之间具有重叠区域;
[0029] 针对每一所述子序列,将所述子序列作为所述音频特征信息,执行所述将所述音频特征信息和所述风格特征信息输入生成模型的步骤,直至得到所述子序列对应的所述运动参数;
[0030] 通过各所述重叠区域对各所述子序列的所述运动参数进行拼接,得到所述音频数据对应的所述运动参数。
[0031] 在一种实施方式中,针对非首位的每一所述子序列,所述子序列与前一所述子序列的所述重叠区域为复制区域,所述复制区域对应的所述运动参数基于前一所述子序列中对应区域的所述运动参数确定。
[0032] 在一种实施方式中,所述子序列中除所述复制区域之外的区域为生成区域;所述生成区域对应的所述运动参数基于所述扩散模型生成,所述生成区域对应的所述预设噪声数据的确定方法包括:
[0033] 根据前一所述子序列的所述运动参数,确定第一运动参数和第二运动参数的加权融合数据,其中,所述第一运动参数为前一所述子序列中所述复制区域对应的所述运动参数,所述第二运动参数为前一所述子序列中所述生成区域对应的所述运动参数;
[0034] 根据所述加权融合数据,确定所述生成区域对应的所述预设噪声数据。
[0035] 在一种实施方式中,针对末位的所述子序列,当所述子序列小于所述序列长度时,根据所述子序列的长度调整所述扩散模型的位置编码数量。
[0036] 在一种实施方式中,所述根据所述运动参数进行目标驱动,包括:
[0037] 将所述运动参数输入三维渲染器;
[0038] 通过所述三维渲染器将所述运动参数重定向至虚拟目标,以实现对所述虚拟目标进行驱动。
[0039] 在一种实施方式中,所述根据所述运动参数进行目标驱动,包括:
[0040] 将所述运动参数输入神经网络生成器;
[0041] 通过所述神经网络生成器将所述运动参数投影至图像像素坐标系,得到若干帧驱动图像;
[0042] 根据各帧所述驱动图像对虚拟目标进行驱动。
[0043] 第二方面,本发明实施例还提供一种面部、身体运动参数的联合生成装置,所述装置包括:
[0044] 获取模块,用于获取音频数据和风格数据;
[0045] 生成模块,用于根据所述音频数据和所述风格数据,生成运动参数,其中,所述运动参数包括面部运动参数和身体运动参数,所述身体运动参数基于所述面部运动参数生成;
[0046] 驱动模块,用于根据所述运动参数进行目标驱动。
[0047] 第三方面,本发明实施例还提供一种终端,所述终端包括有存储器和一个以上处理器;所述存储器存储有一个以上的程序;所述程序包含用于执行如上述任一所述的面部、身体运动参数的联合生成方法的指令;所述处理器用于执行所述程序。
[0048] 第四方面,本发明实施例还提供一种计算机可读存储介质,其上存储有多条指令,所述指令适用于由处理器加载并执行,以实现上述任一所述的面部、身体运动参数的联合生成方法的步骤。
[0049] 本发明的有益效果:本发明实施例通过获取音频数据,并获取预设的风格数据;根据音频数据和风格数据,生成运动参数,其中,运动参数包括面部运动参数和身体运动参数,身体运动参数基于面部运动参数生成;根据运动参数进行目标驱动。本发明可以根据音频数据和风格数据联合生成面部运动参数和身体运动参数,并在生成身体运动参数时会参考面部运动参数,从而使得音频驱动面部表情和身体动作的效果能够达到更高的同步性,更接近面部、身体的真实运动状态。

附图说明

[0050] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0051] 图1是本发明实施例提供的面部、身体运动参数的联合生成方法的流程示意图。
[0052] 图2是本发明实施例提供的语音驱动虚拟目标的流程示意图。
[0053] 图3是本发明实施例提供的长序列的音频特征信息的处理流程示意图。
[0054] 图4是本发明实施例提供的各子序列的运动参数的生成示意图。
[0055] 图5是本发明实施例提供的本发明方法与其他方法的效果对比图。
[0056] 图6是本发明实施例提供的本发明方法与其他方法在BEAT dataset上的用户评价对比图。
[0057] 图7是本发明实施例提供的本发明方法与其他方法在SHOW dataset上的用户评价对比图。
[0058] 图8是本发明实施例提供的面部、身体运动参数的联合生成装置的模块示意图。
[0059] 图9是本发明实施例提供的终端的原理框图。

具体实施方式

[0060] 本发明公开了一种面部、身体运动参数的联合生成方法及相关设备,为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0061] 本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。 应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
[0062] 本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
[0063] 下面参考附图1‑8描述本申请实施例的一种面部、身体运动参数的联合生成方法及相关设备。针对上述背景技术中提到的现有的语音驱动方法通过设计不同的网络模型来生成面部表情和身体动作,由于不同的网络模型之间信息交互较少,导致生成的面部表情和身体动作的真实度和自然性受限的问题,本申请提供了一种面部、身体运动参数的联合生成方法,在该方法中:获取音频数据,并获取预设的风格数据;根据所述音频数据和所述风格数据,生成运动参数,其中,所述运动参数包括面部运动参数和身体运动参数,所述身体运动参数基于所述面部运动参数生成;根据所述运动参数进行目标驱动。本发明可以根据音频数据和风格数据联合生成面部运动参数和身体运动参数,并在生成身体运动参数时会参考面部运动参数,从而使得音频驱动面部表情和身体动作的效果能够达到更高的同步性,更接近面部、身体的真实运动状态。
[0064] 具体而言,图1为本申请实施例所提供的一种面部、身体运动参数的联合生成方法的流程示意图。
[0065] 如图1所示,该面部、身体运动参数的联合生成方法包括以下的步骤:
[0066] 步骤S100、获取音频数据,并获取预设的风格数据。
[0067] 具体地,本实施例中的音频数据可以是任意一段音频,例如用户语音,或者歌曲的片段,或者有声的视频片段等等。风格数据用于反映待驱动的虚拟目标的形态风格,例如虚拟人像化身风格。预设的风格数据可以通过用户选定,或者基于用户习惯信息/时间信息/地点信息等自动选定。
[0068] 如图1所示,该面部、身体运动参数的联合生成方法还包括以下的步骤:
[0069] 步骤S200、根据所述音频数据和所述风格数据,生成运动参数,其中,所述运动参数包括面部运动参数和身体运动参数,所述身体运动参数基于所述面部运动参数生成。
[0070] 具体地,本实施例可以根据音频数据和风格数据联合生成面部运动参数和身体运动参数,并且在生成身体运动参数时会参考面部运动参数,从而使得身体运动参数和面部运动参数能够达到更高的同步性。
[0071] 在一种实现方式中,所述根据所述音频数据和所述风格数据,生成运动参数包括:
[0072] 根据所述音频数据确定音频特征信息,并根据所述风格数据确定风格特征信息;
[0073] 将所述音频特征信息和所述风格特征信息输入生成模型,得到所述运动参数,其中,所述生成模型用于:根据所述音频特征信息和所述风格特征信息,确定所述面部运动参数;根据所述音频特征信息、所述风格特征信息以及所述面部运动参数,确定所述身体运动参数。
[0074] 具体地,由于原始数据通常是高维数据,其稀疏性高,存在较多冗余信息,因此本实施例需要获取音频数据和风格数据分别对应的特征信息,即得到音频特征信息和风格特征信息,以提高后续的信息处理效率。本实施例预先构建了一个生成模型,生成模型的输入数据为提取的音频特征信息和风格特征信息,输出数据为基于音频特征信息和风格特征信息生成的面部运动参数和身体运动参数,即运动参数。面部运动参数用于驱动面部表情变化,身体运动参数用于驱动身体动作变化。生成模型预先经过训练数据训练,学习了复杂的输入输出之间的映射关系,因此可以准确地基于音频特征信息和风格特征信息生成相关的运动参数。具体地,音频特征信息和风格特征信息输入生成模型之后,生成模型会首先基于两种特征信息生成待驱动目标的面部表情变化,即得到面部运动参数。然后再基于两种特征信息和面部运动参数共同生成待驱动目标的身体动作变化,即得到身体运动参数。本实施例中的生成模型可以基于面部运动参数指导身体运动参数的生成,从而使得面部运动参数和身体运动参数的同步性更高。
[0075] 在一种实现方式中,所述根据所述音频数据确定音频特征信息,包括:
[0076] 对所述音频数据进行特征提取,得到若干音频特征数据,其中,当所述音频特征数据的数量大于一时,各所述音频特征数据分别对应不同的特征类型;
[0077] 根据若干所述音频特征数据,确定所述音频特征信息。
[0078] 简单来说,本实施例中的音频特征信息可以是一种音频特征数据,也可以是多种不同类型的音频特征数据的组合。音频特征信息可以包括音频的局部和整体特征信息。具体地,将音频数据输入一个特征提取器,将该特征提取器输出的音频特征数据作为音频特征信息;或者将音频数据输入多个不同的特征提取器,然后将各特征提取器分别输出的音频特征数据基于时间维度进行连接,获得信息丰富度更高的音频特征信息。
[0079] 举例说明,当音频特征数据的数量为1时,将音频数据A输入音频特征提取器 ,得到音频特征信息 ,计算方式如下:
[0080] (1);
[0081] 其中, 为提取到的音频特征数据;
[0082] 当音频特征数据的数量大于一时,音频特征提取器 包括:
[0083] 第一分支:将音频数据输入梅尔谱(Mel Spectrogram)提取器,得到梅尔谱 ;将梅尔谱 输入音频特征提取网络,得到音频特征 ;
[0084] 第二分支:将音频数据输入HuBERT特征提取器,得到HuBERT特征 ;
[0085] 基于时间维度将第一分支和第二分支的输出结果连接起来得到音频特征信息。
[0086] 在一种实现方式中,所述根据所述风格数据确定风格特征信息,包括:
[0087] 对所述风格数据进行编码,得到风格编码数据;
[0088] 对所述风格编码数据进行特征提取,得到所述风格特征信息。
[0089] 具体地,首先对风格数据进行编码,通过编码的方式剔除风格数据中不表征风格的冗余信息,得到抽象的风格表示,即风格编码数据。然后再对风格编码数据进行特征提取,得到风格特征信息,以提高特征提取的效率和准确性。
[0090] 在一种实现方式中,所述根据所述风格数据确定风格特征信息,具体包括:
[0091] 将所述风格数据输入预设的风格编码器,得到所述风格编码数据;
[0092] 将所述风格编码数据输入预设的风格特征提取器,得到所述风格特征信息。
[0093] 具体地,本实施例可以采用风格编码器和风格特征提取器来实现风格编码和风格特征提取,以提高编码和特征提取的效率。可以理解的是,风格编码和风格特征提取的实现方式存在多种,本实施例也可以采用其他可行的方式实现风格编码和风格特征提取。
[0094] 举例说明,首先将风格数据S输入风格编码器E,得到风格编码数据 ,之后将输入风格特征提器 得到风格特征信息 。计算方式如下:
[0095] (2);
[0096] 在一种实现方式中,所述风格编码器采用One‑hot进行编码,所述风格特征提取器采用多层感知器MLP构建。
[0097] 在一种实现方式中,所述生成模型由两个级联的神经网络组成:第一神经网络的输入数据为音频特征信息和风格特征信息,输出数据为面部运动参数;第二神经网络的输入数据为音频特征信息、风格特征信息以及面部运动参数,输出数据为身体运动参数。第一神经网络和第二神经网络都预先基于大量训练数据学习了输入输出之间的复杂映射关系,因此在实际应用中,将音频特征信息和风格特征信息输入生成模型,第一神经网络会准确地输出对应的面部运动参数,第二神经网络会准确地输出对应的身体运动参数。
[0098] 在另一种实现方式中,所述生成模型为扩散模型,所述面部运动参数为面部噪声数据,所述身体运动参数为身体噪声数据,所述扩散模型用于:
[0099] 根据所述音频特征信息和所述风格特征信息对预设噪声数据进行降噪,得到所述面部噪声数据;
[0100] 根据所述音频特征信息、所述风格特征信息以及所述面部噪声数据对所述预设噪声数据进行降噪,得到所述身体噪声数据。
[0101] 为了生成更丰富的面部表情和身体动作,本实施例采用扩散模型作为生成模型。具体地,在实际应用场景中,扩散模型会基于待生成数据预先设定一个噪声数据,即得到预设噪声数据。将音频特征信息和风格特征信息输入扩散模型,扩散模型首先基于两种特征信息对预设噪声数据进行降噪,降噪后得到面部噪声数据,面部噪声数据即可反映生成的面部运动参数。将两种特征信息与面部噪声数据相结合对预设噪声数据进行降噪,降噪后得到身体噪声数据,身体噪声数据即可反映生成的身体运动参数。
[0102] 在一种实现方式中,所述扩散模型包括:
[0103] 第一计算模块,用于根据所述音频特征信息和所述风格特征信息对预设噪声数据进行降噪,得到所述面部噪声数据;
[0104] 第二计算模块,用于根据所述音频特征信息、所述风格特征信息以及所述面部噪声数据对所述预设噪声数据进行降噪,得到所述身体噪声数据。
[0105] 简单来说,本实施例中的扩散模块包括两个计算模块,两个计算模块分别用于生成面部噪声数据和身体噪声数据。两个计算模块为单向信息流动的关系,即第一计算模块的输出数据会输入第二计算模块中。具体地,将音频特征信息、风格特征信息以及预设噪声数据输入第一计算模块,第一计算模块降噪后输出对应的面部噪声数据。然后将音频特征信息、风格特征信息、面部噪声数据以及预设噪声数据输入第二计算模块,第二计算模块降噪后输出对应的身体噪声数据。本发明通过第一计算模块输出的面部噪声数据来引导第二计算模块生成身体噪声数据,可以更好地实现面部运动和身体运动的联合建模。
[0106] 举例说明,扩散模型DiffSHEG由第一计算模块 和第二计算模块 组成,和 可以采用Transformer构建,即 , 代表模块拼接操作。第一计算模块 首先生成面部运动参数 ,进而通过第一计算模块 引导第二计算模块 生成与身体运动参数 ;扩散模型DiffSHEG的计算原理如公式(3)所示,其中,公式(4)、(5)是对公式(3)的展开解释。
[0107] (3);
[0108] (4);
[0109] (5);
[0110] 其中, 为音频特征信息, 为风格特征信息。 表示梯度截断操作。 和为扩散模型去噪用的真实动作中的采样或者噪声数据, 与面部运动参数相关,与身体运动参数相关。
[0111] 在一种实现方式中,所述扩散模型为逐扩散时间步降噪,所述扩散模型还用于:
[0112] 判断扩散时间步的步数是否达到预设步数;
[0113] 当所述扩散时间步的步数未达到所述预设步数时,将所述面部噪声数据和所述身体噪声数据作为所述预设噪声数据,继续执行所述根据所述音频特征信息和所述风格特征信息对预设噪声数据进行降噪,得到所述面部噪声数据的步骤,直至所述扩散时间步的步数达到所述预设步数。
[0114] 具体地,本实施例中的扩散模型是逐扩散时间步降噪的,扩散时间步的预设步数基于扩散模型的总采样次数确定。首个扩散时间步对预设噪声数据进行降噪,其后的每一扩散时间步将前一扩散时间步输出的面部噪声数据和身体噪声数据作为预设噪声数据,继续对预设噪声数据进行降噪,直至得到最后一个扩散时间步输出的面部噪声数据和身体噪声数据。根据最终的面部噪声数据确定面部运动参数,根据最终的身体噪声数据确定身体运动参数。本实施例通过不断累积扩散时间步降噪,可以提高面部运动参数和身体运动参数的生成准确性。
[0115] 举例说明,假设待生成的面部运动参数为面部运动序列,身体运动参数为手势序列,预设步数为T,第t步扩散时间步待降噪的噪声数据包括前一扩散时间步输出的面部运动序列 与手势序列 。根据编码后的音频 ,风格特征 , , 输出第t步的面部表情噪声数据 ,手势噪声数据 。通过不断累积扩散步数t直到重复T次,得到最终的面部运动序列 和手势序列 。
[0116] 在一种实现方式中, , 在第t步扩散时间步之前先融合,再进行第t步扩散时间步的降噪处理。
[0117] 具体地, , 依次经过各自的条件融合模块(Condition  Fusion Residual Block)得到 , 分别对应的特征F’,然后 , 的特征F’通过
Transformer编码器进行处理得到融合特征F”,将F”作为第t步对应的预设噪声数据进行后续的降噪处理,以提高数据处理效率,其中条件融合模块符合输入输出的格式要求即可,对其不做限制。
[0118] 在另一种实现方式中,可以基于时间维度将 , , 进行拼接,得到拼接特征;将扩散时间步t和风格特征 作用于整个音频特征序列上,得到第t步扩散时间步的输入数据。
[0119] 具体地,由于 , , 三者都具有时间维度,因此可以基于时间维度将三种信息进行时间对齐后,得到拼接特征: , 表示特征拼接。并将扩散时间步t和 作为Transformer编码器中风格化模块的输入数据,作用于整个音频特征序列上,以提高数据处理效率。Transformer编码器还可以包括自注意力模块和多层感知机等模块。
[0120] 在一种实现方式中,所述方法还包括:
[0121] 当所述音频特征信息大于预设的序列长度时,根据所述序列长度将所述音频特征信息分为若干子序列,其中,任意相邻的两个所述子序列之间具有重叠区域;
[0122] 针对每一所述子序列,将所述子序列作为所述音频特征信息,执行所述将所述音频特征信息和所述风格特征信息输入生成模型的步骤,直至得到所述子序列对应的所述运动参数;
[0123] 通过各所述重叠区域对各所述子序列的所述运动参数进行拼接,得到所述音频数据对应的所述运动参数。
[0124] 具体地,模型训练时通常使用的是固定的序列长度。如图3所示,在实际应用场景中,当获取的音频特征信息大于预设的序列长度时,为了保证模型能够正常推理,需要先将音频特征信息进行分段,每一段即为一个子序列。为了保证各子序列生成的运动参数可以自然平滑的连接,本实施例采用的是有重叠的分段方法,即任意相邻的两个子序列之间具有部分重叠。针对每一子序列,将该子序列作为一个独立的音频特征信息,通过模型获取该子序列的运动参数。最后通过重叠区域将多个运动参数拼接起来,即得到原始音频数据的运动参数,从而解决了模型单独一次采样的序列长度有限的问题。
[0125] 举例说明,首先利用滑动窗口的方法,将任意长的音频特征信息按照预设的序列长度L对应的时间长度进行有重叠的分段,使得原始的音频特征信息被切分为K个时间小于或者等于a(实施中可以设置为a=300帧)的子序列,即 ,每一子序列即为一个clip。
[0126] 以第一个clip为例,第一个clip起始的若干帧动作可以选择固定动作,或者真实动作,或者根据音频数据随机生成的动作。对第一个clip直接进行一次扩散模型的采样,得到第一个clip对应的运动参数:面部运动参数 和身体运动参数 :
[0127] (6);
[0128] 其中, , 代表从真实动作中的采样或是噪声数据。
[0129] 在一种实现方式中,针对非首位的每一所述子序列,所述子序列与前一所述子序列的所述重叠区域为复制区域,所述复制区域对应的所述运动参数基于前一所述子序列中对应区域的所述运动参数确定。
[0130] 具体地,如图4所示,针对任意相邻的两个子序列,基于两个子序列之间的重叠区域确定后一子序列中的复制区域(深色部分),复制区域直接复制前一子序列的运动参数中对应区域的几帧数据,不再重新生成,从而使得两个子序列的运动参数保持连续和光滑的过渡。
[0131] 在一种实现方式中,所述子序列中除所述复制区域之外的区域为生成区域;所述生成区域对应的所述运动参数基于所述扩散模型生成,所述生成区域对应的所述预设噪声数据的确定方法包括:
[0132] 根据前一所述子序列的所述运动参数,确定第一运动参数和第二运动参数的加权融合数据,其中,所述第一运动参数为前一所述子序列中所述复制区域对应的所述运动参数,所述第二运动参数为前一所述子序列中所述生成区域对应的所述运动参数;
[0133] 根据所述加权融合数据,确定所述生成区域对应的所述预设噪声数据。
[0134] 为了加速模型采样过程,本实施例采用类似DDIM和Repaint相结合的技术来提高模型的采样速度,从而更好地在部署过程中实现实时推理的效果。具体地,如图4所示,后一子序列中重叠区域以外的区域为生成区域(浅色部分),生成区域需要通过扩散模型生成运动参数。为了平滑复制区域和生成区域的运动参数,本实施例在最后几个扩散时间步中加入融合操作:扩散模型在对后一子序列进行采样时,扩散模型所使用的预设噪声数据采用前一子序列的运动参数中复制区域和生成区域的加权融合数据,从而使得复制区域和生成区域的运动参数有自然平滑的连接。
[0135] 举例说明,以第二个clip为例:
[0136] (7);
[0137] 其中, ; ;此处k=2; ,表示
权重值; 代表逐元素相乘。
[0138] 在一种实现方式中,针对末位的所述子序列,当所述子序列小于所述序列长度时,根据所述子序列的长度调整所述扩散模型的位置编码数量。
[0139] 具体地,在处理最后一个子序列时,可能出现音频特征长度不足预设序列长度的情况。由于扩散模型对于长度的限制只来源于位置编码,所以只需要根据最后一个子序列的长度将多余的位置编码去掉即可,如图4所示,clip‑4中虚线框部分表示待去除的位置编码区域。
[0140] 如图1所示,该面部、身体运动参数的联合生成方法还包括以下的步骤:
[0141] 步骤S300、根据所述运动参数进行目标驱动。
[0142] 具体地,生成的面部运动参数和身体运动参数可以用于实现不同任务的目标驱动。例如,可以根据面部运动参数和身体运动参数进行三维虚拟角色的驱动;又例如,可以根据面部运动参数和身体运动参数进行虚拟人像化身的驱动。
[0143] 在一种实现方式中,所述根据所述运动参数进行目标驱动,包括:
[0144] 将所述运动参数输入三维渲染器;
[0145] 通过所述三维渲染器将所述运动参数重定向至虚拟目标,以实现对所述虚拟目标进行驱动。
[0146] 具体地,可以采用现有流行的3D建模软件,例如Blender,Unreal Engine,Maya作为三维渲染器。本实施例通过三维渲染器实现面部动作与身体动作的绑定,如图2所示,三维渲染器可以将输入的面部运动参数和身体运动参数重定向到指定的虚拟目标,例如3D虚拟形象的角色,适用于虚拟场景,AR/VR,游戏NPC等场景。
[0147] 在另一种实现方式中,所述根据所述运动参数进行目标驱动,包括:
[0148] 将所述运动参数输入神经网络生成器;
[0149] 通过所述神经网络生成器将所述运动参数投影至图像像素坐标系,得到若干帧驱动图像;
[0150] 根据各帧所述驱动图像对虚拟目标进行驱动。
[0151] 具体地,本实施例中的神经网络生成器可以通过一个带有跳层链接的U‑Net网络来实现。如图2所示,神经网络生成器将输入的三维的运动参数投影至2D图像像素坐标系,生成多帧驱动图像,再通过各驱动图像实现对虚拟目标的驱动。例如可以根据各帧驱动图像分别生成对应的人像化身,得到驱动的、高写实的人像化身视频。
[0152] 为了证明本发明方法的技术效果,发明人在公开基准数据集BEAT和SHOW的测试集上进行了相关测试。如图5所示,结果表明本发明方法自然度相关的指标FMD(Fecher Motion Distance),FED(Fecher Expression Distance),FGD(Fecher Gesture Distance)均显著优于其他方法,并且生成的动作丰富度Div(Diverse)也高于其他方法。如图6、7所示,本发明方法在用户评价上,关于真实度(Realism)、同步性(Gesture‑Speech Sync,Expression‑ Speech Sync)以及丰富度(Diversity)上均显著优于其他方法。
[0153] 综上,本发明的优点在于:
[0154] 1) 用户仅需要输入语音信息,选择需要使用的风格数据,即可实时驱动对应的三维数字化身的面部表情运动以及身体姿态运动。
[0155] 2)本发明通过面部运动参数引导生成身体运动参数,可以生成更快速和微小的动作,达到更自然、准确、丰富的音频驱动面部表情和身体动作的效果,并且使得生成的面部表情和身体动作与语音的韵律更加匹配,能够达到与真实人说话相近的生成结果。
[0156] 3)本发明使用扩散模型可以生成丰富度更高的运动参数,使得同一段讲话在不同时期驱动时,数字化身能做出不同且自然的动作,提高了动作的丰富度,并且能保持说话全身运动的正确性,使得面部表情、嘴部运动与声音同步。其次,扩散模型可以达到实时的采样(31 FPS),使得生成的运动参数与音频数据匹配度更高。此外,扩散模型可以显著减少语音驱动人体全身运动的制作成本,无需面部表情数据与身体姿态数据联合训练,节省训练时长。
[0157] 4)本发明通过对音频特征信息进行有重叠分段,可以解决扩散模型中单独一次采样的序列长度有限且采样速度很慢的问题,并且可以生成较长且光滑的运动参数序列。
[0158] 5)本发明生成的面部运动参数和身体运动参数可以应用于不同类型的角色驱动,包括虚拟卡通模型、游戏NPC角色模型、超写实形象等,大幅节省相关形象运动设计的成本。
[0159] 基于上述实施例,本发明还提供了一种面部、身体运动参数的联合生成装置,如图8所示,所述装置包括:
[0160] 获取模块01,用于获取音频数据和风格数据;
[0161] 生成模块02,用于根据所述音频数据和所述风格数据,生成运动参数,其中,所述运动参数包括面部运动参数和身体运动参数,所述身体运动参数基于所述面部运动参数生成;
[0162] 驱动模块03,用于根据所述运动参数进行目标驱动。
[0163] 基于上述实施例,本发明还提供了一种终端,其原理框图可以如图9所示。该终端包括通过系统总线连接的处理器、存储器、网络接口、显示屏。其中,该终端的处理器用于提供计算和控制能力。该终端的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该终端的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现面部、身体运动参数的联合生成方法。该终端的显示屏可以是液晶显示屏或者电子墨水显示屏。
[0164] 本领域技术人员可以理解,图9中示出的原理框图,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0165] 在一种实现方式中,所述终端的存储器中存储有一个以上的程序,且经配置以由一个以上处理器执行所述一个以上程序包含用于进行面部、身体运动参数的联合生成方法的指令。
[0166] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
[0167] 综上所述,本发明公开了一种面部、身体运动参数的联合生成方法及相关设备,通过获取音频数据,并获取预设的风格数据;根据音频数据和风格数据,生成运动参数,其中,运动参数包括面部运动参数和身体运动参数,身体运动参数基于面部运动参数生成;根据运动参数进行目标驱动。本发明可以根据音频数据和风格数据联合生成面部运动参数和身体运动参数,并在生成身体运动参数时会参考面部运动参数,从而使得音频驱动面部表情和身体动作的效果能够达到更高的同步性,更接近面部、身体的真实运动状态。
[0168] 应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。