CN113822968B - 语音实时驱动虚拟人的方法、系统及存储介质 - Google Patents

语音实时驱动虚拟人的方法、系统及存储介质 Download PDF

Info

Publication number
CN113822968B
CN113822968B CN202111400026.1A CN202111400026A CN113822968B CN 113822968 B CN113822968 B CN 113822968B CN 202111400026 A CN202111400026 A CN 202111400026A CN 113822968 B CN113822968 B CN 113822968B
Authority
CN
China
Prior art keywords
voice
face
parameters
real time
rgb image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111400026.1A
Other languages
English (en)
Other versions
CN113822968A (zh
Inventor
徐迪
马宜祯
张彦博
常友坚
毛文涛
蔡宝军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Yingchuang Information Technology Co ltd
Original Assignee
Beijing Yingchuang Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Yingchuang Information Technology Co ltd filed Critical Beijing Yingchuang Information Technology Co ltd
Priority to CN202111400026.1A priority Critical patent/CN113822968B/zh
Publication of CN113822968A publication Critical patent/CN113822968A/zh
Application granted granted Critical
Publication of CN113822968B publication Critical patent/CN113822968B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/2053D [Three Dimensional] animation driven by audio data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Multimedia (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

本申请提供了一种语音实时驱动虚拟人的方法、系统及存储介质,语音实时驱动虚拟人的方法包括:获取人脸RGB图像;对人脸RGB图像进行3D人脸重建,得到人脸RGB图像对应的3D人脸参数;预采集一段语音并经去噪处理后保存至缓存队列中;实时采集语音片段并经去噪处理后保存至缓存队列中;读取缓存队列中的所有语音片段并进行拼接,得到拼接后的语音片段,并利用拼接后的语音片段和预训练的神经网络得到预测的3D人脸表情参数;根据预测的3D人脸表情参数和3D人脸参数得到渲染后的RGB图像。本申请能够在不降低虚拟人质量的基础上,达到整个驱动过程的实时性,从而使得语音驱动虚拟人技术能够用于各类实时应用中。

Description

语音实时驱动虚拟人的方法、系统及存储介质
技术领域
本申请属于信息安全技术领域,具体涉及一种语音实时驱动虚拟人的方法、系统及存储介质。
背景技术
语音驱动虚拟人技术是虚拟人驱动技术的一种,其用语音驱动预设的虚拟人模型,从而生成符合语音内容的动态虚拟人形象。近些年来,随着语音驱动虚拟人技术的发展和成熟,语音驱动虚拟人技术衍生出了相当多的应用,例如虚拟主播、虚拟客服和虚拟偶像等。由于虚拟人形象往往需要直接呈现给用户,因此用户对语音驱动结果的真实性和准确性具有较高的要求。
然而,现有的语音驱动虚拟人技术无法很好地推广到如虚拟会议这样的实时应用中,其主要原因在于:一方面,目前的语音驱动虚拟人技术均使用离线语音作为输入,没有考虑到语音采集、神经网络计算速度、音画延迟等问题,从而无法满足实时性的需要;另一方面,实时场景下的语音驱动虚拟人技术要求输入的语音片段长度尽可能短,从而满足实时性要求。而语音特征计算过程中,较短的语音片段由于缺乏时序信息以及必要的语义信息,在驱动过程中很容易导致虚拟人形象面部运动的准确度降低,进而降低真实感。
发明内容
为至少在一定程度上克服相关技术中存在的问题,本申请提供了一种语音实时驱动虚拟人的方法、系统及存储介质。
根据本申请实施例的第一方面,本申请提供了一种语音实时驱动虚拟人的方法,其包括以下步骤:
获取人脸RGB图像;
对人脸RGB图像进行3D人脸重建,得到人脸RGB图像对应的3D人脸参数;
预采集一段语音并经去噪处理后保存至缓存队列中;
实时采集语音片段并经去噪处理后保存至缓存队列中;
读取缓存队列中的所有语音片段并进行拼接,得到拼接后的语音片段,并利用拼接后的语音片段和预训练的神经网络得到预测的3D人脸表情参数;
根据预测的3D人脸表情参数和3D人脸参数得到渲染后的RGB图像。
上述语音实时驱动虚拟人的方法中,所述对人脸RGB图像进行3D人脸重建,得到人脸RGB图像对应的3D人脸参数的过程为:
采用多任务卷积神经网络对人脸RGB图像进行人脸识别,并根据人脸检测框对人脸RGB图像进行裁剪,得到裁剪后的人脸图像;
采用人脸重建方法DECA对裁剪后的人脸图像进行3D人脸重建,其过程为:
通过DECA将人脸RGB图像拟合到人脸参数化模型FLAME上,得到257维的特定于当 前图像的一组3D人脸参数
Figure 100002_DEST_PATH_IMAGE001
;其中,
Figure 27218DEST_PATH_IMAGE002
表示FLAME模型的身份参数,
Figure 100002_DEST_PATH_IMAGE003
表示FLAME模型的表情参数,
Figure 297050DEST_PATH_IMAGE004
表示FLAME模型的光照参数,
Figure 100002_DEST_PATH_IMAGE005
表示FLAME模型的纹理参数,
Figure 368780DEST_PATH_IMAGE006
表示FLAME模型的姿态变换参数,
Figure 100002_DEST_PATH_IMAGE007
表示257维的向量。
上述语音实时驱动虚拟人的方法中,所述预采集一段语音并经去噪处理后保存至缓存队列中的具体过程为:
通过语音采集设备预采集一段语音,得到带噪的语音片段;
采用谱减法去除带噪的语音片段中的加性噪声,得到去噪的语音片段;
将去噪的语音片段添加到预设长度的缓存队列中。
进一步地,所述实时采集语音片段并经去噪处理后保存至缓存队列中的具体过程为:
通过语音采集设备实时采集语音片段;
采用谱减法去除实时采集的带噪的语音片段中的加性噪声,得到去噪的语音片段;
计算缓存队列的长度,并根据缓存队列的长度与预设的缓存队列的最大长度的比较结果更新缓存队列,其过程为:
判断缓存队列的长度是否超过预设的缓存队列的最大长度,如果是,则将缓存队列中的队首元素移除,将实时采集的语音片段添加到缓存队列中;其中,缓存队列中的队首元素即相较于当前时间最早的元素。
更进一步地,所述读取缓存队列中的所有语音片段并进行拼接,得到拼接后的语音片段,并利用拼接后的语音片段和预训练的神经网络得到预测的3D人脸表情参数的具体过程为:
读取缓存队列中的所有语音片段并进行拼接,得到拼接后的语音片段;
利用开源音频处理工具librosa提取拼接后的语音片段的语音MFCC特征;
使用预训练的神经网络将得到的语音MFCC特征映射到3D人脸模型的表情子空间,得到预测的3D人脸表情参数。
更进一步地,所述预训练的神经网络的训练过程为:
选取一段时长为t时间的人物说话视频,其中,需要人物的面部在视频中始终保持完整;
获取训练数据,其中训练数据包括3D人脸参数和语音MFCC特征;
利用训练数据搭建并训练神经网络。
更进一步地,所述获取训练数据的具体过程为:
利用视频处理工具ffmpeg提取人物说话视频中的图像流和语音流,其中,图像流以25fps以上截取图像,共得到数千帧图像;将语音流单独保存成.aac格式的音频文件;
针对每一帧图像,使用多任务卷积神经网络对人脸RGB图像进行人脸识别,并根据人脸检测框将RGB图像进行裁剪;采用人脸重建方法DECA对裁剪后的人脸图像进行3D人脸重建,得到3D人脸参数并保存;
对于音频文件,利用开源音频处理工具librosa提取音频文件的13维的语音MFCC特征。
更进一步地,所述神经网络包括AT-Net网络和audio2exp网络,所述AT-Net网络为骨干网络,其用于提取音频的时序性特征;audio2exp网络为特征映射网络,其用于将AT-Net网络输出的隐变量映射到特定3D人脸模型的参数空间上。
根据本申请实施例的第二方面,本申请还提供了一种语音实时驱动虚拟人的系统,其包括图像获取模块、图像重建模块、预采集语音处理模块、实时语音处理模块、语音拼接模块和3D渲染模块;
所述图像获取模块,用于获取人脸RGB图像;
所述图像重建模块,用于采用3D人脸模型对人脸RGB图像进行重建,得到人脸RGB图像对应的3D人脸参数;
所述预采集语音处理模块,用于预采集一段语音并进行去噪处理后保存至缓存队列中;
所述实时语音处理模块,用于实时采集语音片段并进行去噪处理后保存至缓存队列中;
所述语音拼接模块,用于读取缓存队列中的所有语音片段并进行拼接,得到拼接后的语音片段,并利用拼接后的语音片段和预训练的神经网络得到预测的3D人脸表情参数;
所述3D渲染模块,用于根据预测的3D人脸表情参数和3D人脸参数得到渲染后的RGB图像。
根据本申请实施例的第三方面,本申请还提供了一种存储介质,其存储有可执行程序,当可执行程序被调用时,执行上述任一项所述的语音实时驱动虚拟人的方法。
根据本申请的上述具体实施方式可知,至少具有以下有益效果:本申请提供的语音实时驱动虚拟人的方法通过采用实时语音驱动人脸模型框架,能够解决传统离线语音驱动人脸模型无法达到实时性要求的问题;通过采用语音预采集策略以及音频缓存队列,能够解决短语音条件下语音特征准确度降低的问题。本申请能够在不降低虚拟人质量的基础上,达到整个驱动过程的实时性,从而使得语音驱动虚拟人技术能够用于各类实时应用中。
应了解的是,上述一般描述及以下具体实施方式仅为示例性及阐释性的,其并不能限制本申请所欲主张的范围。
附图说明
下面的所附附图是本申请的说明书的一部分,其示出了本申请的实施例,所附附图与说明书的描述一起用来说明本申请的原理。
图1为本申请具体实施方式提供的一种语音实时驱动虚拟人的方法的流程图。
图2为本申请具体实施方式提供的一种语音实时驱动虚拟人的方法中AT-Net网络结构示意图。
图3为本申请具体实施方式提供的一种语音实时驱动虚拟人的方法驱动FLAME人脸模型的效果图之一。
图4为本申请具体实施方式提供的一种语音实时驱动虚拟人的方法驱动FLAME人脸模型的效果图之二。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
图1是本申请实施例提供的一种语音实时驱动虚拟人的方法的流程图。如图1所示,本申请实施例提供的语音实时驱动虚拟人的方法包括以下步骤:
S1、获取人脸RGB图像。
具体地,可以使用图像采集设备采集人脸RGB图像,也可以直接采用用户输入的人脸RGB图像。
S2、对人脸RGB图像进行3D人脸重建,得到人脸RGB图像对应的3D人脸参数,其中,3D人脸参数包括表情参数和身份参数,进而得到3D人脸模型,其具体过程为:
S21、采用MTCNN(Multi-task convolutional neural network,多任务卷积神经网络)对人脸RGB图像进行人脸识别,并根据人脸检测框对人脸RGB图像进行裁剪,得到裁剪后的人脸图像。
S22、采用DECA(Detailed Expression Capture and Animation)对裁剪后的人脸图像进行3D人脸重建。
具体地,通过DECA将人脸RGB图像拟合到FLAME(Faces Learned with an Articulated Model and Expressions,人脸参数化模型)上,从而得到257维的特定于当前 图像的一组3D人脸参数
Figure 102992DEST_PATH_IMAGE001
。其中,
Figure 629788DEST_PATH_IMAGE002
表示FLAME模型的身份参数,
Figure 157721DEST_PATH_IMAGE003
表 示FLAME模型的表情参数,
Figure 744560DEST_PATH_IMAGE004
表示FLAME模型的光照参数,
Figure 626453DEST_PATH_IMAGE005
表示FLAME模型的纹理参数,
Figure 222520DEST_PATH_IMAGE006
表示FLAME模型的姿态变换参数,
Figure 604959DEST_PATH_IMAGE007
表示257维的向量。
S3、预采集一段语音并经去噪处理后保存至缓存队列中,其具体过程为:
S31、通过麦克风等语音采集设备预采集一段语音,得到带噪的语音片段。其中,预采集的一段语音的时长可以根据需要进行选择,具体地可以为2秒。
预采集一段语音的目的是增加输入语音特征的长度,从而提高预测3D人脸参数的准确性。一方面,由于语音数据采集到3D人脸可视化过程存在延迟,为了满足语音驱动虚拟人的实时性要求,需要尽可能短的语音采集时间,即实时性约束;另一方面,短语音在进行语音特征提取时会丢失语音的时序性特征,导致在进行人脸表情特征预测时的准确度降低,即准确性约束;通过预采集语音并将预采集的语音与实时语音进行拼接,可以变相增长语音特征的长度,能够在较小程度地降低人脸表情特征准确度的前提下达到实时性。
S32、采用谱减法去除带噪的语音片段中的加性噪声,得到去噪的语音片段。
由于实际语音采集环境以及语音采集设备的差异性,语音片段会不可避免地包含各类噪声,为了削弱语音采集设备引入的噪声并且最大程度地保留人声部分,需要去除语音片段中的加性噪声。
如果带噪的语音片段中的噪声只包含加性噪声,则带噪信号的频谱减去噪声信号的频谱就可以得到纯净语音的频谱。
具体的,假设带噪信号Y由纯净信号X和加性噪声D组成,那么纯净信号的功率谱
Figure 893858DEST_PATH_IMAGE008
可以通过
Figure DEST_PATH_IMAGE009
计算得到。
实际使用中,假设语音采集设备引入的噪声D在不同的采集过程中保持不变,那么通过预先录制纯噪声片段,就可以计算出不同带噪信号下纯净信号的功率谱。
S33、将去噪的语音片段添加到预设长度的缓存队列中。
在本步骤中,通过语音片段缓存队列来保留历史语音片段,其目的与步骤S31预采集一段语音的目的相同,即满足结果的实时性和准确性需求。
通过将当前语音片段与缓存队列里的历史语音片段拼接,可以变相增长当前语音特征的长度。与步骤S31不同的是,由于语音特征计算时要求拼接的语音在时序上连续,因此预采集的语音片段只能在前有限个时间片段内与实时采集的语音片段进行拼接,而后续的语音特征计算则需要将缓存队列中的历史语音片段与实时采集的语音片段拼接后作为输入。
S4、实时采集语音片段并经去噪处理后保存至步骤S3中的缓存队列中,其具体过程为:
S41、通过麦克风等语音采集设备实时采集语音片段。
其中,实时采集的语音片段的时长可以根据需要进行选择,具体地可以为400毫秒。
S42、采用谱减法去除实时采集的带噪的语音片段中的加性噪声,得到去噪的语音片段。
S43、计算缓存队列的长度,并根据缓存队列的长度与预设的缓存队列的最大长度的比较结果更新缓存队列,其具体过程为:
判断缓存队列的长度是否超过预设的缓存队列的最大长度,如果是,则将缓存队列中的队首元素移除,将实时采集的语音片段添加到缓存队列中。
其中,缓存队列中的队首元素即相较于当前时间最早的元素。
通过更新缓存队列能够保证缓存队列中的语音片段与当前实时采集的语音片段在时间上的连续性。
S5、读取缓存队列中的所有语音片段并进行拼接,得到拼接后的语音片段,并利用拼接后的语音片段和预训练的神经网络得到预测的3D人脸表情参数,其具体过程为:
S51、读取缓存队列中的所有语音片段并进行拼接,得到拼接后的语音片段。
S52、利用开源音频处理工具librosa提取拼接后的语音片段的语音MFCC(Mel-Frequency Cepstral Coefficients,梅尔频率倒谱系数)特征。
S53、使用预训练的神经网络将步骤S52得到的语音MFCC特征映射到3D人脸模型的表情子空间,得到预测的3D人脸表情参数。
S6、根据预测的3D人脸表情参数和步骤S2得到的3D人脸参数得到渲染后的RGB图像,其具体过程为:
S61、将预测的3D人脸表情参数替换步骤S2得到的3D人脸参数中的表情参数,得到重组的3D人脸参数。
S62、根据重组的3D人脸参数重新计算3D人脸模型。
S63、利用开源工具pytorch3D对计算得到的3D人脸模型进行渲染,得到渲染后的RGB图像。
上述步骤S53中,预训练的神经网络的训练过程为:
S531、选取一段时长为t时间的人物说话视频,其中,需要人物的面部在视频中始终保持完整。t时间可以为4分钟。
S532、获取训练数据,其具体过程为:
首先,利用视频处理工具ffmpeg提取人物说话视频中的图像流和语音流,其中,图像流以25fps以上截取图像,共得到数千帧图像;将语音流单独保存成.aac格式的音频文件。
其次,针对每一帧图像,使用MTCNN对人脸RGB图像进行人脸识别,并根据人脸检测框将RGB图像进行裁剪;采用DECA(Detailed Expression Capture and Animation)对裁剪后的人脸图像进行3D人脸重建,得到3D人脸参数并保存。
具体地,通过DECA将人脸RGB图像拟合到FLAME(Faces Learned with an Articulated Model and Expressions,人脸参数化模型)上,从而得到257维实数域上的一 组3D人脸参数
Figure 325364DEST_PATH_IMAGE001
。其中,
Figure 193963DEST_PATH_IMAGE002
表示FLAME模型的身份参数,
Figure 430909DEST_PATH_IMAGE003
表示FLAME 模型的表情参数,
Figure 625130DEST_PATH_IMAGE004
表示FLAME模型的光照参数,
Figure 947527DEST_PATH_IMAGE005
表示FLAME模型的纹理参数,
Figure 888326DEST_PATH_IMAGE006
表示 FLAME模型的姿态变换参数,
Figure 307675DEST_PATH_IMAGE007
表示257维的向量。
最后,对于音频文件,利用开源音频处理工具librosa提取音频文件的13维的语音MFCC特征。
S533、利用训练数据搭建并训练神经网络,其具体过程为:
神经网络包括AT-Net网络和audio2exp网络,其中,AT-Net网络为骨干网络,其用于提取音频的时序性特征;audio2exp网络为特征映射网络,其用于将AT-Net网络输出的隐变量映射到特定3D人脸模型的参数空间上。
神经网络的输入为语音MFCC特征,其输出为预测的FLAME人脸表情参数
Figure 938376DEST_PATH_IMAGE010
AT-Net网络的结构如图2所示,经过预训练的AT-Net网络可以将输入的语音MFCC特征通过公式:
Figure DEST_PATH_IMAGE011
转化为具有语义的隐藏表示
Figure 801597DEST_PATH_IMAGE012
。式中,
Figure DEST_PATH_IMAGE013
表示原始的语音信号,
Figure 605474DEST_PATH_IMAGE014
表示语音编 码器,其包括5个卷积层和2个下采样层,
Figure 551433DEST_PATH_IMAGE015
表示上一个时间片LSTM网络的细胞状态,
Figure 87457DEST_PATH_IMAGE016
表 示当前时间片LSTM网络的细胞状态,LSTM表示LSTM序列模型,
Figure 853288DEST_PATH_IMAGE017
表示关键点解码器。
audio2exp网络包括3个一维卷积层和线性层,其中,1D卷积层主要用于融合AT-Net网络输出的隐向量序列在时间和空间上的信息,线性层用于将语音编码隐向量映射到3D人脸参数的表情空间上。
AT-Net网络使用在LRW数据上训练的参数,在训练过程中保持网络参数不变。audio2exp网络使用单人物说话视频按照步骤S532处理得到的训练数据进行自监督训练。
训练使用的损失函数包括
Figure 870310DEST_PATH_IMAGE018
Figure 405196DEST_PATH_IMAGE019
,其中,
Figure 112121DEST_PATH_IMAGE020
,其表示预 测的人脸表情参数
Figure 161985DEST_PATH_IMAGE021
和步骤S532中提取的真实表情参数
Figure 448610DEST_PATH_IMAGE022
的MSELoss,i表示步骤S532中的 第i个人脸参数,目的是优化跨模态映射过程,即将语音特征映射为人脸表情参数。
Figure 838003DEST_PATH_IMAGE023
,其表示smooth loss,主要是为了避免预测阶段相邻帧在表情上 出现较大的变化。
神经网络使用的总损失函数为:
Figure 781076DEST_PATH_IMAGE024
,其中,
Figure 52657DEST_PATH_IMAGE025
,网 络训练使用Adam优化器,固定学习率为0.001。
通过采用本申请提出的语音实时驱动虚拟人的方法,能够在不降低虚拟人质量的基础上,达到整个驱动过程的实时性,从而允许语音驱动虚拟人技术用于各类实时应用中。
采用本申请提出的语音实时驱动虚拟人的方法对FLAME人脸模型进行驱动,得到如图3所示的结果。对每一行为进行一次单独的实时测试过程,每一次实时测试的语音内容不同,两次测试都取前10帧的结果进行比较。通过比较同一行不同列的结果(即同一测试过程的不同时刻),可以看出本申请提出的语音实时驱动虚拟人的方法能够实现语音实时驱动3D数字人;通过比较不同行相同列的结果(即不同测试过程的相同时刻),可以看出本申请提出的语音实时驱动虚拟人的方法能够根据不同的语音生成特定3D数字人符合语音内容的唇动和表情。
本申请提出的语音实时驱动虚拟人的方法还能够适配其他人脸模型,在BFM模型参数空间重新训练audio2exp网络,能够得到如图4所示的实时语音驱动结果。
基于本申请提出的语音实时驱动虚拟人的方法,本申请还提供了一种语音实时驱动虚拟人的系统,其包括图像获取模块、图像重建模块、预采集语音处理模块、实时语音处理模块、语音拼接模块和3D渲染模块。
其中,图像获取模块,用于获取人脸RGB图像。
图像重建模块,用于采用3D人脸模型对人脸RGB图像进行重建,得到人脸RGB图像对应的3D人脸参数。
预采集语音处理模块,用于预采集一段语音并进行去噪处理后保存至缓存队列中。
实时语音处理模块,用于实时采集语音片段并进行去噪处理后保存至缓存队列中。
语音拼接模块,用于读取缓存队列中的所有语音片段并进行拼接,得到拼接后的语音片段,并利用拼接后的语音片段和预训练的神经网络得到预测的3D人脸表情参数。
3D渲染模块,用于根据预测的3D人脸表情参数和3D人脸参数得到渲染后的RGB图像。
需要说明的是:上述实施例提供的语音实时驱动虚拟人的系统仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将语音实时驱动虚拟人的系统的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的语音实时驱动虚拟人的系统与语音实时驱动虚拟人的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
在示例性实施例中,本申请实施例还提供了一种存储介质,是计算机可读存储介质,例如,包括计算机程序的存储器,上述计算机程序可由处理器执行,以完成前述语音实时驱动虚拟人的方法中的所述步骤。
上述的本申请实施例可在各种硬件、软件编码或两者组合中进行实施。例如,本申请的实施例也可为在数据信号处理器(Digital Signal Processor,DSP)中执行上述方法的程序代码。本申请也可涉及计算机处理器、数字信号处理器、微处理器或现场可编程门阵列(Field Programmable Gate Array,FPGA)执行的多种功能。可根据本申请配置上述处理器执行特定任务,其通过执行定义了本申请揭示的特定方法的机器可读软件代码或固件代码来完成。可将软件代码或固件代码发展为不同的程序语言与不同的格式或形式。也可为不同的目标平台编译软件代码。然而,根据本申请执行任务的软件代码与其他类型配置代码的不同代码样式、类型与语言不脱离本申请的精神与范围。
以上所述仅为本申请示意性的具体实施方式,在不脱离本申请的构思和原则的前提下,任何本领域的技术人员所做出的等同变化与修改,均应属于本申请保护的范围。

Claims (10)

1.一种语音实时驱动虚拟人的方法,其特征在于,包括以下步骤:
获取人脸RGB图像;
对人脸RGB图像进行3D人脸重建,得到人脸RGB图像对应的3D人脸参数;
预采集一段语音并经去噪处理后保存至缓存队列中;
实时采集语音片段并经去噪处理后保存至缓存队列中;
读取缓存队列中的所有语音片段并进行拼接,得到拼接后的语音片段,并利用拼接后的语音片段和预训练的神经网络得到预测的3D人脸表情参数;
根据预测的3D人脸表情参数和3D人脸参数得到渲染后的RGB图像。
2.根据权利要求1所述的语音实时驱动虚拟人的方法,其特征在于,所述对人脸RGB图像进行3D人脸重建,得到人脸RGB图像对应的3D人脸参数的过程为:
采用多任务卷积神经网络对人脸RGB图像进行人脸识别,并根据人脸检测框对人脸RGB图像进行裁剪,得到裁剪后的人脸图像;
采用人脸重建方法DECA对裁剪后的人脸图像进行3D人脸重建,其过程为:
通过DECA将人脸RGB图像拟合到人脸参数化模型FLAME上,得到257维的特定于当前图 像的一组3D人脸参数
Figure DEST_PATH_IMAGE001
;其中,
Figure 573101DEST_PATH_IMAGE002
表示FLAME模型的身份参数,
Figure DEST_PATH_IMAGE003
表示 FLAME模型的表情参数,
Figure 883384DEST_PATH_IMAGE004
表示FLAME模型的光照参数,
Figure DEST_PATH_IMAGE005
表示FLAME模型的纹理参数,
Figure 787755DEST_PATH_IMAGE006
表 示FLAME模型的姿态变换参数,
Figure DEST_PATH_IMAGE007
表示257维的向量。
3.根据权利要求1所述的语音实时驱动虚拟人的方法,其特征在于,所述预采集一段语音并经去噪处理后保存至缓存队列中的具体过程为:
通过语音采集设备预采集一段语音,得到带噪的语音片段;
采用谱减法去除带噪的语音片段中的加性噪声,得到去噪的语音片段;
将去噪的语音片段添加到预设长度的缓存队列中。
4.根据权利要求3所述的语音实时驱动虚拟人的方法,其特征在于,所述实时采集语音片段并经去噪处理后保存至缓存队列中的具体过程为:
通过语音采集设备实时采集语音片段;
采用谱减法去除实时采集的带噪的语音片段中的加性噪声,得到去噪的语音片段;
计算缓存队列的长度,并根据缓存队列的长度与预设的缓存队列的最大长度的比较结果更新缓存队列,其过程为:
判断缓存队列的长度是否超过预设的缓存队列的最大长度,如果是,则将缓存队列中的队首元素移除,将实时采集的语音片段添加到缓存队列中;其中,缓存队列中的队首元素即相较于当前时间最早的元素。
5.根据权利要求4所述的语音实时驱动虚拟人的方法,其特征在于,所述读取缓存队列中的所有语音片段并进行拼接,得到拼接后的语音片段,并利用拼接后的语音片段和预训练的神经网络得到预测的3D人脸表情参数的具体过程为:
读取缓存队列中的所有语音片段并进行拼接,得到拼接后的语音片段;
利用开源音频处理工具librosa提取拼接后的语音片段的语音MFCC特征;
使用预训练的神经网络将得到的语音MFCC特征映射到3D人脸模型的表情子空间,得到预测的3D人脸表情参数。
6.根据权利要求5所述的语音实时驱动虚拟人的方法,其特征在于,所述预训练的神经网络的训练过程为:
选取一段时长为t时间的人物说话视频,其中,需要人物的面部在视频中始终保持完整;
获取训练数据,其中训练数据包括3D人脸参数和语音MFCC特征;
利用训练数据搭建并训练神经网络。
7.根据权利要求6所述的语音实时驱动虚拟人的方法,其特征在于,所述获取训练数据的具体过程为:
利用视频处理工具ffmpeg提取人物说话视频中的图像流和语音流,其中,图像流以25fps以上截取图像,共得到数千帧图像;将语音流单独保存成.aac格式的音频文件;
针对每一帧图像,使用多任务卷积神经网络对人脸RGB图像进行人脸识别,并根据人脸检测框将RGB图像进行裁剪;采用人脸重建方法DECA对裁剪后的人脸图像进行3D人脸重建,得到3D人脸参数并保存;
对于音频文件,利用开源音频处理工具librosa提取音频文件的13维的语音MFCC特征。
8.根据权利要求6所述的语音实时驱动虚拟人的方法,其特征在于,所述神经网络包括AT-Net网络和audio2exp网络,所述AT-Net网络为骨干网络,其用于提取音频的时序性特征;audio2exp网络为特征映射网络,其用于将AT-Net网络输出的隐变量映射到特定3D人脸模型的参数空间上。
9.一种语音实时驱动虚拟人的系统,其特征在于,包括图像获取模块、图像重建模块、预采集语音处理模块、实时语音处理模块、语音拼接模块和3D渲染模块;
所述图像获取模块,用于获取人脸RGB图像;
所述图像重建模块,用于采用3D人脸模型对人脸RGB图像进行重建,得到人脸RGB图像对应的3D人脸参数;
所述预采集语音处理模块,用于预采集一段语音并进行去噪处理后保存至缓存队列中;
所述实时语音处理模块,用于实时采集语音片段并进行去噪处理后保存至缓存队列中;
所述语音拼接模块,用于读取缓存队列中的所有语音片段并进行拼接,得到拼接后的语音片段,并利用拼接后的语音片段和预训练的神经网络得到预测的3D人脸表情参数;
所述3D渲染模块,用于根据预测的3D人脸表情参数和3D人脸参数得到渲染后的RGB图像。
10.一种存储介质,其特征在于,存储有可执行程序,当可执行程序被调用时,执行如权利要求1-8任一项所述的语音实时驱动虚拟人的方法。
CN202111400026.1A 2021-11-24 2021-11-24 语音实时驱动虚拟人的方法、系统及存储介质 Active CN113822968B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111400026.1A CN113822968B (zh) 2021-11-24 2021-11-24 语音实时驱动虚拟人的方法、系统及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111400026.1A CN113822968B (zh) 2021-11-24 2021-11-24 语音实时驱动虚拟人的方法、系统及存储介质

Publications (2)

Publication Number Publication Date
CN113822968A CN113822968A (zh) 2021-12-21
CN113822968B true CN113822968B (zh) 2022-03-04

Family

ID=78918141

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111400026.1A Active CN113822968B (zh) 2021-11-24 2021-11-24 语音实时驱动虚拟人的方法、系统及存储介质

Country Status (1)

Country Link
CN (1) CN113822968B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115187727B (zh) * 2022-06-29 2023-06-13 北京百度网讯科技有限公司 一种虚拟面部图像的生成方法、装置、设备及存储介质
CN116778040B (zh) * 2023-08-17 2024-04-09 北京百度网讯科技有限公司 基于口型的人脸图像生成方法、模型的训练方法以及设备
CN116934926B (zh) * 2023-09-15 2023-12-05 杭州优航信息技术有限公司 一种基于多模态数据融合的识别方法和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110874557A (zh) * 2018-09-03 2020-03-10 阿里巴巴集团控股有限公司 一种语音驱动虚拟人脸的视频生成方法以及装置
CN112562722A (zh) * 2020-12-01 2021-03-26 新华智云科技有限公司 基于语义的音频驱动数字人生成方法及系统
CN113223125A (zh) * 2021-05-17 2021-08-06 百度在线网络技术(北京)有限公司 一种虚拟形象的面部驱动方法、装置、设备和介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3866117A4 (en) * 2019-12-26 2022-05-04 Zhejiang University VOICE CONTROLLED FACE ANIMATION GENERATION PROCESS
CN111354370B (zh) * 2020-02-13 2021-06-25 百度在线网络技术(北京)有限公司 一种唇形特征预测方法、装置和电子设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110874557A (zh) * 2018-09-03 2020-03-10 阿里巴巴集团控股有限公司 一种语音驱动虚拟人脸的视频生成方法以及装置
CN112562722A (zh) * 2020-12-01 2021-03-26 新华智云科技有限公司 基于语义的音频驱动数字人生成方法及系统
CN113223125A (zh) * 2021-05-17 2021-08-06 百度在线网络技术(北京)有限公司 一种虚拟形象的面部驱动方法、装置、设备和介质

Also Published As

Publication number Publication date
CN113822968A (zh) 2021-12-21

Similar Documents

Publication Publication Date Title
CN113822968B (zh) 语音实时驱动虚拟人的方法、系统及存储介质
Zhou et al. Vision-infused deep audio inpainting
CN107409061B (zh) 用于语音总结的方法和系统
CN110136698B (zh) 用于确定嘴型的方法、装置、设备和存储介质
AU2019202026B2 (en) A deep learning model for real-time 2d lip sync
CN112053690B (zh) 一种跨模态多特征融合的音视频语音识别方法及系统
US20220108510A1 (en) Real-time generation of speech animation
JP2002507033A (ja) 顔合成装置および顔合成方法
CN112420014A (zh) 虚拟人脸构建方法、装置、计算机设备及计算机可读介质
Pandey et al. Liptype: A silent speech recognizer augmented with an independent repair model
US10825224B2 (en) Automatic viseme detection for generating animatable puppet
CN113077470B (zh) 一种横竖屏转换画面的裁剪方法、系统、装置及介质
CN113223560A (zh) 情绪识别方法、装置、设备及存储介质
JP4705414B2 (ja) 音声認識装置、音声認識方法、音声認識プログラムおよび記録媒体
CN111554279A (zh) 一种基于Kinect的多模态人机交互系统
JP7421869B2 (ja) 情報処理プログラム、情報処理装置、情報処理方法及び学習済モデル生成方法
CN116580720A (zh) 一种基于视听语音分离的说话人视觉激活解释方法及系统
CN116051692A (zh) 一种基于语音驱动的三维数字人脸部动画生成方法
CN116934926B (zh) 一种基于多模态数据融合的识别方法和系统
JP2015038725A (ja) 発話アニメーション生成装置、方法、及びプログラム
KR102319753B1 (ko) 딥러닝 기반의 영상 컨텐츠 제작 방법 및 장치
JP7178331B2 (ja) 情報処理装置、情報処理方法及びプログラム
CN114898018A (zh) 数字对象的动画生成方法、装置、电子设备及存储介质
CN113362432B (zh) 一种面部动画生成方法及装置
CN112992120A (zh) 语音转换虚拟脸部图像的方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant