1.一种基于深度学习的语音驱动3D数字人生成方法,其特征在于,包括以下步骤:步骤1:采集音频数据和对应的面部数据,并进行预处理;
步骤2:利用预处理后的音频数据和面部数据对Meta Former模型进行训练,获得面部预测模型;采用Wav2Vec模型对音频数据进行预处理,提取初步特征,获得音频向量;MetaFormer模型包括线性层、特征对齐层、动作编码器、周期性位置编码器、目标掩码层、内存掩码层和动作解码器;
线性层,设置角色向量并转换为角色特征;
特征对齐层,将音频向量转换为以帧为单位的向量,并与面部数据中的每一帧图像一一对应;
周期性位置编码器,采用改进正弦位置编码方法为预测的预测帧图像进行编码,获得周期性位置编码加入预测帧图像,并将周期性位置编码编码成可渲染格式;
目标掩码层,根据预测帧图像生成目标掩码矩阵;
内存掩码层,根据预测帧图像生成内存掩码矩阵;
动作解码器,根据对齐后的音频向量和面部数据、角色特征、目标掩码矩阵和内存掩码矩阵进行推理预测,生成预测帧图像并进行编码,所有预测帧图像构成预测面部数据;
目标掩码层根据当前的预测帧图像生成目标掩码矩阵,目标掩码矩阵表示为:其中,p表示时间周期;i表示矩阵的列,j表示矩阵的行,BF(i,j)表示第j行第i列的目标码权重;
内存掩码层根据当前的预测帧图像生成内存掩码矩阵,内存掩码矩阵BA表示为:其中,k表示当前连续帧的数量;i表示矩阵的列,j表示矩阵的行,BA(i,j)表示第j行第i列的内存权重;
改进正弦位置编码方法表示为:
PPE(t,2α)=sin((t mod p)/100002α/d)/τPPE(t,2α+1)=cos((t mod p)/100002α/d)/τ其中,τ表示缩放参数;t为当前帧时间;d为模型维度;α为维度指数;p为时间周期;PPE(t,2α)表示偶数预测帧图像对应的周期性位置编码;PPE(t,2α+1)表示奇数预测帧图像对应的周期性位置编码;mod表示计算相除后的余数;在预测帧图像中加入周期性位置编码表示为:其中,Sn表示当前预测帧图像;Wf为权重,bf为偏差,为上一帧预测帧图像的向量值;x表示循环次数k大于1,且小于或等于总帧数T的预测帧图像;f(x)表示推理出的所有预测帧图像;ft表示t时刻的预测帧图像;表示加入周期性位置编码后的t时刻的预测帧图像;
步骤3:采集待转换音频并输入至面部预测模型,获得预测面部数据;
步骤4:将预测面部数据通过客户端传输至UE5引擎,生成数字人。
2.根据权利要求1所述的一种基于深度学习的语音驱动3D数字人生成方法,其特征在于,特征对齐层包括依次连接的特征提取层、线性插入层和特征投影层,表示为:FP(LI(FE(audio)))
其中,audio表示输入的音频向量;FE表示特征提取操作;LI表示线性插入操作,将音频向量与面部数据中每帧图像一一对应;FP表示特征投影操作,将音频向量映射为与面部数据匹配的格式。
3.根据权利要求1所述的一种基于深度学习的语音驱动3D数字人生成方法,其特征在于,Meta Former模型的训练过程包括:步骤21:初始化角色向量并嵌入为角色特征;角色特征与面部数据的尺寸相同;
步骤22:获取面部数据的总长度作为总帧数;
步骤23:将音频向量和面部数据进行特征对齐;
步骤24:根据总帧数开始分批循环预测,令循环次数k=1,将角色特征投影为与面部数据相同的维度,作为初始的预测帧图像;
步骤25:在预测帧图像中加入周期性位置编码,并根据预测帧图像分别生成目标掩码矩阵和内存掩码矩阵,将预测帧图像对应的周期性位置编码编码成可渲染格式;
步骤26:根据对齐后的音频向量和面部数据、角色特征、目标掩码矩阵和内存掩码矩阵进行推理,获得新的预测帧图像;
步骤27:将新的预测帧图像投影为面部数据相同的维度,令循环次数k增加1;
步骤28:如果循环次数k小于或等于总帧数,则返回步骤25;否则,所有预测帧图像构成预测面部数据,根据预测面部数据和采集的面部数据计算损失;
步骤29:根据损失进行反向传播,更新MetaFormer模型的参数,返回步骤21,直至达到模型迭代停止条件。
4.根据权利要求3所述的一种基于深度学习的语音驱动3D数字人生成方法,其特征在于,采用Huber损失函数计算损失Lδ(a),表示为:a=Y-f(x)
其中,δ为阈值;a表示预测面部数据和面部数据之间的差距;Y表示面部数据;f(x)表示推理预测的预测面部数据。
5.根据权利要求1所述的一种基于深度学习的语音驱动3D数字人生成方法,其特征在于,客户端包括接收模块、展示模块的数字人模块;接收模块接收预测面部数据和待转换音频;展示模块基于Linux/Windows系统组件开发,播放待转换音频;数字人模块基于JSONLiveLink插件开发,按照预测面部数据中预测帧图像的时间顺序将预测面部数据发送至UE5引擎,UE5引擎根据预测面部数据渲染生成数字人,并将数字人反馈至展示模块与待转换音频同步播放。