口型动画生成方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:39141833 阅读:15 留言:0更新日期:2023-10-23 14:55
本申请涉及一种口型动画生成方法,包括:从音频中提取出音素序列,将音素序列转换为视素序列,音素序列中的音素与视素序列中的视素按时刻对应,每个视素包括动作单元;获取视素序列各时刻的视素中的动作单元对应的基础权重,以及各时刻的视素的时间关系;基于各时刻的视素中的动作单元对应的基础权重和时间关系,按照预设的权重约束条件,确定视素序列各时刻视素中的动作单元对应的目标权重;权重约束条件用于通过约束目标权重约束口型变化;根据视素序列各时刻的视素,以及每个视素包括的动作单元对应的目标权重,生成口型动画,口型动画中口型随音频的播放声音同步变化。采用本方法能够提高生成口型动画的准确性。方法能够提高生成口型动画的准确性。方法能够提高生成口型动画的准确性。

【技术实现步骤摘要】
口型动画生成方法、装置、计算机设备和存储介质


[0001]本申请涉及计算机
,特别是涉及一种口型动画生成方法、装置、计算机设备、存储介质和计算机程序产品。

技术介绍

[0002]随着计算机技术的发展,出现了程序化口型动画生成技术,程序化口型动画生成技术从音频文件提取音素,根据预先定义的规则,自动生成虚拟角色的口型动画的技术。
[0003]传统技术中,一般采用“智能降采样”的规则,对视素列表进行了一些舍弃。即,根据每个视素的重要程度,按照一定的规则丢弃一部分不重要的视素,并保留像“B”、“M”、“P”这类比较重要的视素。
[0004]然而,虚拟角色的口型与面部肌肉密不可分,目前的口型动画生成方式没有考虑到口型与面部肌肉之间的关系,造成口型动画中的虚拟对象的口型不自然的现象,导致口型动画的生成不够准确。

技术实现思路

[0005]基于此,有必要针对上述技术问题,提供一种能够提高准确性的口型动画生成方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
[0006]第一方面,本申请提供了一种口型动画生成方法。所述方法包括:从音频中提取出音素序列,将所述音素序列转换为视素序列,所述音素序列中的音素与所述视素序列中的视素按时刻对应,每个所述视素包括动作单元;获取所述视素序列各时刻的视素中的所述动作单元所对应的基础权重,以及所述视素序列各时刻的视素的时间关系;基于所述视素序列各时刻的视素中的所述动作单元所对应的基础权重,以及所述各时刻的视素的时间关系,按照预设的权重约束条件,确定所述视素序列各时刻的视素中的所述动作单元对应的目标权重;所述权重约束条件用于通过约束所述目标权重约束口型变化;根据所述视素序列各时刻的视素,以及每个所述视素包括的动作单元对应的目标权重,生成口型动画,所述口型动画中口型随所述音频的播放声音同步变化。
[0007]第二方面,本申请还提供了一种口型动画生成装置。所述装置包括:转换模块,用于从音频中提取出音素序列,将所述音素序列转换为视素序列,所述音素序列中的音素与所述视素序列中的视素按时刻对应,每个所述视素包括动作单元;获取模块,用于获取所述视素序列各时刻的视素中的所述动作单元所对应的基础权重,以及所述视素序列各时刻的视素的时间关系;确定模块,用于基于所述视素序列各时刻的视素中的所述动作单元所对应的基础权重,以及所述各时刻的视素的时间关系,按照预设的权重约束条件,确定所述视素序列各时刻的视素中的所述动作单元对应的目标权重;所述权重约束条件用于通过约束所述目标
权重约束口型变化;生成模块,用于根据所述视素序列各时刻的视素,以及每个所述视素包括的动作单元对应的目标权重,生成口型动画,所述口型动画中口型随所述音频的播放声音同步变化。
[0008]在其中一个实施例中,所述权重约束条件表征通过权重范围约束所述目标权重;所述确定模块,用于获取所述视素序列各时刻的视素中的所述动作单元对应的权重误差;根据所述各时刻的视素中的所述动作单元所对应的基础权重和所述权重误差,确定所述各时刻的视素中的所述动作单元对应的权重范围;基于所述各时刻的视素中的所述动作单元对应的基础权重、所述权重范围和所述各时刻的视素的时间关系,确定所述视素序列各时刻的视素中的所述动作单元对应的更新权重;当所述各时刻的视素中的所述动作单元对应的更新权重处于各自的所述权重范围内,将所述各时刻的视素中的所述动作单元对应的更新权重,作为所述各时刻的视素中的所述动作单元对应的目标权重。
[0009]在其中一个实施例中,所述确定模块,还用于针对所述各时刻的视素中的每个所述时刻的视素,确定所针对时刻的视素在所述各时刻的视素中的相邻视素;获取所述动作单元对应的预设权重变化速度,基于所述预设权重变化速度、所针对时刻的视素中的所述动作单元对应的权重范围、所针对时刻的视素和所述相邻视素之间的时间关系,确定所针对时刻的视素中的所述动作单元对应的插值权重;基于所针对时刻的视素中的所述动作单元对应的基础权重、所述相邻视素中的所述动作单元对应的基础权重和所述插值权重,确定所针对时刻的视素中的所述动作单元对应的更新权重。
[0010]在其中一个实施例中,所述相邻视素包括与所针对时刻的视素相邻的前序视素,以及相邻的后序视素,所述所针对时刻的视素中的所述动作单元对应的插值权重,包括所针对时刻的视素中的所述动作单元对应的前序插值权重,以及所针对时刻的视素中的所述动作单元对应的后序插值权重;所述确定模块,还用于基于所针对时刻的视素中的所述动作单元对应的基础权重、所述前序视素中的所述动作单元对应的基础权重和所述前序插值权重,确定所针对时刻的视素中的所述动作单元对应的前序更新权重;基于所针对时刻的视素中的所述动作单元对应的基础权重、所述后序视素中的所述动作单元对应的基础权重和所述后序插值权重,确定所针对时刻的视素中的所述动作单元对应的后序更新权重;根据所针对时刻的视素中的所述动作单元对应的所述前序更新权重和所述后序更新权重,确定所针对时刻的视素中的所述动作单元对应的更新权重。
[0011]在其中一个实施例中,所述确定模块,还用于基于所针对时刻的视素中的所述动作单元对应的权重范围和所述预设权重变化速度,确定所针对时刻的视素中的所述动作单元对应的权重变化时间;根据所述权重变化时间,以及所针对时刻的视素和所述相邻视素之间的时间关系,确定所针对时刻的视素中的所述动作单元对应的插值权重。
[0012]在其中一个实施例中,所述装置还包括迭代模块;所述迭代模块,用于从所述各时刻的视素中的所述动作单元对应的更新权重中,确定处于所述权重范围外的更新权重所对应的目标时刻;将每个所述目标时刻作为所述动作单元在下一迭代中的所针对时刻,将所针对时刻的视素的更新权重,作为所述下一迭代中所针对时刻的视素的基础权重;在所述
下一迭代中,按照所述确定所针对时刻的视素在所述各时刻的视素中的相邻视素的步骤并继续执行,直至迭代得到所针对时刻的视素中的所述动作单元对应的目标权重;所述相邻视素中的所述动作单元对应的更新权重作为所述下一迭代中的基础权重。
[0013]在其中一个实施例中,所述确定模块,还用于当所述视素序列各时刻的视素中的所述动作单元对应的更新权重中,存在处于相应的权重范围外的更新权重,确定处于相应的权重范围外的更新权重所对应的目标时刻;针对每个所述目标时刻,确定所针对目标时刻视素中的所述动作单元所对应的权重范围的上限值和下限值;当所针对目标时刻视素中的所述动作单元对应的更新权重大于所述上限值,将所述上限值作为所针对目标时刻视素中的所述动作单元对应的目标权重。
[0014]在其中一个实施例中,所述确定模块,还用于当所针对目标时刻视素中的所述动作单元对应的更新权重小于所述下限值,将所述下限值作为所针对目标时刻视素中的所述动作单元对应的目标权重。
[0015]在其中一个实施例中,所述权重约束条件包括权重变化速度约束条件;所述确定模块,还用于基于所述视素序列各时刻的视素中的所述动作单元对应的基础权重和所述各时刻的视素的时间关系,确定本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种口型动画生成方法,其特征在于,所述方法包括:从音频中提取出音素序列,将所述音素序列转换为视素序列,所述音素序列中的音素与所述视素序列中的视素按时刻对应,每个所述视素包括动作单元;获取所述视素序列各时刻的视素中的所述动作单元所对应的基础权重,以及所述视素序列各时刻的视素的时间关系;基于所述视素序列各时刻的视素中的所述动作单元所对应的基础权重,以及所述各时刻的视素的时间关系,按照预设的权重约束条件,确定所述视素序列各时刻的视素中的所述动作单元对应的目标权重;所述权重约束条件用于通过约束所述目标权重约束口型变化;根据所述视素序列各时刻的视素,以及每个所述视素包括的动作单元对应的目标权重,生成口型动画,所述口型动画中口型随所述音频的播放声音同步变化。2.根据权利要求1所述的方法,其特征在于,所述权重约束条件表征通过权重范围约束所述目标权重;所述基于所述视素序列各时刻的视素中的所述动作单元所对应的基础权重,以及所述各时刻的视素的时间关系,按照预设的权重约束条件,确定所述视素序列各时刻的视素中的所述动作单元对应的目标权重,包括:获取所述视素序列各时刻的视素中的所述动作单元对应的权重误差;根据所述各时刻的视素中的所述动作单元对应的基础权重和所述权重误差,确定所述视素序列各时刻的视素中的所述动作单元对应的权重范围;基于所述各时刻的视素中的所述动作单元对应的基础权重、所述权重范围和所述各时刻的视素的时间关系,确定所述视素序列各时刻的视素中的所述动作单元对应的更新权重;当所述视素序列各时刻的视素中的所述动作单元对应的更新权重处于各自的所述权重范围内,将所述各时刻的视素中的所述动作单元对应的更新权重,作为所述视素序列各时刻的视素中的所述动作单元对应的目标权重。3.根据权利要求2所述的方法,其特征在于,所述基于所述各时刻的视素中的所述动作单元对应的基础权重、所述权重范围和所述各时刻的视素的时间关系,确定所述视素序列各时刻的视素中的所述动作单元对应的更新权重,包括:针对所述视素序列各时刻的视素中每个所述时刻的视素,确定所针对时刻的视素在所述视素序列中的相邻视素;获取所述动作单元对应的预设权重变化速度,基于所述预设权重变化速度、所针对时刻的视素中的所述动作单元对应的权重范围、所针对时刻的视素和所述相邻视素之间的时间关系,确定所针对时刻的视素中的所述动作单元对应的插值权重;基于所针对时刻的视素中的所述动作单元对应的基础权重、所述相邻视素中的所述动作单元对应的基础权重和所述插值权重,确定所针对时刻的视素中的所述动作单元对应的更新权重。4.根据权利要求3所述的方法,其特征在于,所述相邻视素包括与所针对时刻的视素相邻的前序视素,以及相邻的后序视素,所述所针对时刻的视素中的所述动作单元对应的插值权重,包括所针对时刻的视素中的所述动作单元对应的前序插值权重,以及所针对时刻的视素中的所述动作单元对应的后序插值权重;
所述基于所针对时刻的视素中的所述动作单元对应的基础权重、所述相邻视素中的所述动作单元对应的基础权重和所述插值权重,确定所针对时刻的视素中的所述动作单元对应的更新权重,包括:基于所针对时刻的视素中的所述动作单元对应的基础权重、所述前序视素中的所述动作单元对应的基础权重和所述前序插值权重,确定所针对时刻的视素中的所述动作单元对应的前序更新权重;基于所针对时刻的视素中的所述动作单元对应的基础权重、所述后序视素中的所述动作单元对应的基础权重和所述后序插值权重,确定所针对时刻的视素中的所述动作单元对应的后序更新权重;根据所针对时刻的视素中的所述动作单元对应的所述前序更新权重和所述后序更新权重,确定所针对时刻的视素中的所述动作单元对应的更新权重。5.根据权利要求3所述的方法,其特征在于,所述基于所述预设权重变化速度、所针对时刻的视素中的所述动作单元对应的权重范围、所针对时刻的视素和所述相邻视素之间的时间关系,确定所针对时刻的视素中的所述动作单元对应的插值权重,包括:基于所针对时刻的视素中的所述动作单元对应的权重范围和所述预设权重变化速度,确定所针对时刻的视素中的所述动作单元对应的权重变化时间;根据所述权重变化时间,以及所针对时刻的视素和所述相邻视素之间的时间关系,确定所针对时刻的视素中的所述动作单元对应的插值权重。6.根据权利要求3所述的方法,其特征在于,所述方法还包括:从所述各时刻的视素中的所述动作单元对应的更新权重中,确定处于所述权重范围外的更新权重所对应的目标时刻;将每个所述目标时刻作为所述动作单元在下一迭代中的所针对时刻,将所针...

【专利技术属性】
技术研发人员:王海龙陈广宇
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1