CN115222856B - 表情动画生成方法及电子设备 - Google Patents
表情动画生成方法及电子设备 Download PDFInfo
- Publication number
- CN115222856B CN115222856B CN202210552385.7A CN202210552385A CN115222856B CN 115222856 B CN115222856 B CN 115222856B CN 202210552385 A CN202210552385 A CN 202210552385A CN 115222856 B CN115222856 B CN 115222856B
- Authority
- CN
- China
- Prior art keywords
- phoneme
- mouth shape
- pronunciation
- phonemes
- target
- 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
Links
- 230000014509 gene expression Effects 0.000 title claims abstract description 116
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000012545 processing Methods 0.000 claims abstract description 118
- 238000009499 grossing Methods 0.000 claims abstract description 64
- 239000012634 fragment Substances 0.000 claims abstract description 35
- 230000002194 synthesizing effect Effects 0.000 claims abstract description 19
- 230000008451 emotion Effects 0.000 claims description 91
- 230000008569 process Effects 0.000 claims description 34
- 230000009471 action Effects 0.000 claims description 22
- 238000013136 deep learning model Methods 0.000 claims description 21
- 230000008909 emotion recognition Effects 0.000 claims description 21
- 239000013598 vector Substances 0.000 claims description 13
- 230000015654 memory Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 3
- 239000000758 substrate Substances 0.000 claims 5
- 210000000214 mouth Anatomy 0.000 description 210
- 210000004709 eyebrow Anatomy 0.000 description 24
- 230000033001 locomotion Effects 0.000 description 21
- 210000003128 head Anatomy 0.000 description 18
- 210000001061 forehead Anatomy 0.000 description 17
- 210000005252 bulbus oculi Anatomy 0.000 description 8
- 230000007935 neutral effect Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 6
- 241001672694 Citrus reticulata Species 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 210000001508 eye Anatomy 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 4
- 230000004397 blinking Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 238000000605 extraction Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000004418 eye rotation Effects 0.000 description 2
- 230000004886 head movement Effects 0.000 description 2
- 230000036651 mood Effects 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 206010011469 Crying Diseases 0.000 description 1
- 208000027418 Wounds and injury Diseases 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010195 expression analysis Methods 0.000 description 1
- 210000000720 eyelash Anatomy 0.000 description 1
- 210000000744 eyelid Anatomy 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000001308 synthesis method Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/48—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请实施例公开了表情动画生成方法及电子设备,所述方法包括:将目标音频数据划分为时间维度上的多个帧片段,并对各帧片段进行音素预测,得到预测出的音素序列;对所述音素序列进行平滑处理以及发音协同处理,得到音素序列处理结果;其中,所述发音协同处理用于:根据当前音素的相邻音素对所述当前音素的发音口型的影响,对所述音素序列和/或音素对应的口型形变动画中的形变参数进行修正;根据所述音素序列处理结果对所述目标音频数据关联的目标虚拟人物进行口型形变动画的合成。通过本申请实施例,可以更好地契合汉语的发音,也进一步让口型显的更自然。
Description
技术领域
本申请涉及表情动画处理技术领域,特别是涉及表情动画生成方法及电子设备。
背景技术
随着游戏用户对品质细节的要求越来越高,其对于游戏角色对话过程中的表情与口型的灵活、生动、自然表达也十分关注。为了让用户在游戏虚拟世界中能切实的感受到游戏角色是有灵魂的,带给用户真实的交互体感尤其重要。
为了达到上述目的,一种方式是通过人工的方式,根据具体所需的对话内容,对虚拟人物的表情、口型等进行设计,生成表情动画。但是,常规普通20字一条的对话,手工进行动画设计大概需要半天的动画人力,如一共1000条,则需要500人天的工作量,人力成本会很高,而且效率低下。因此,需要一套语音文字转化表情的自动化生产流程,以便更系统的、更低成本、且更效率的产出表情动画。
现有技术中存在一些自动化口型动画生产方案,这些方案通常在英语版本的口型动画效果较好,但是对于汉语等其他语言版本而言,生产出的口型动画往往会存在口型无法完全对上、不自然等问题。
发明内容
本申请提供了表情动画生成方法及电子设备,可以更好地契合汉语的发音,也进一步让口型显的更自然。
本申请提供了如下方案:
一种表情动画生成方法,包括:
将目标音频数据划分为时间维度上的多个帧片段,并对各帧片段进行音素预测,得到预测出的音素序列;
对所述音素序列进行平滑处理以及发音协同处理,得到音素序列处理结果;其中,所述发音协同处理用于:根据当前音素的相邻音素对所述当前音素的发音口型的影响,对所述音素序列和/或音素对应的口型形变动画中的形变参数进行修正;
根据所述音素序列处理结果对所述目标音频数据关联的目标虚拟人物进行口型形变动画的合成。
其中,所述对各帧片段进行音素预测,包括:
提取各帧片段的特征,组成带有时间序列的特征向量集合;
将所述带有时间序列的特征向量集合作为第一深度学习模型的输入信息,以用于预测出各帧片段对应的音素,其中,所述第一深度学习模型在对每个帧片段进行音素预测时,结合当前帧片段前后目标数量的帧片段的特征向量,对当前帧片段进行音素预测。
其中,所述对所述音素序列进行平滑处理以及基于发音协同规则的处理,包括:
在进行平滑处理之前,从所述音素序列中确定目标辅音音素;其中,在同一音节内,所述目标辅音音素本身不产生口型,该音节的发音口型跟随该目标辅音音素后面的元音音素的发音口型;
将所述目标辅音音素对应的多个帧片段按照预置比例分配给所述目标辅音音素后面的元音音素,以延长所述元音音素对应的口型形变动画的持续时间。
其中,所述对所述音素序列进行平滑处理以及基于发音协同规则的处理,包括:
在进行平滑处理之前,从所述音素序列中确定目标元音音素;其中,在同一音节内,所述目标元音音素跟随在辅音音素之后;
将所述目标元音音素对应的口型形变动画的形变幅度参数调低,以减小该音节发音口型的口型幅度。
其中,所述对所述音素序列进行平滑处理以及基于发音协同规则的处理,包括:
在进行平滑处理之前,从所述音素序列中确定代表前鼻音或者后鼻音的尾音音素;
将所述尾音音素对应的多个帧片段按照预置比例分配给所述尾音音素前面的元音音素,并将所述元音音素对应的口型形变动画的形变幅度参数调低,以延长所述元音音素对应的口型形变动画的持续时间,并减小该音节发音口型的口型幅度。
其中,所述对所述音素序列进行平滑处理以及基于发音协同规则的处理,包括
在进行平滑处理之后,如果目标帧片段上叠加了在发音时需要将口型闭合的音素,以及在发音时需要将口型张开的音素,则通过对所述目标帧片段上各音素的口型张开幅度进行归一化处理,减小所述需要将口型张开的音素的口型张开幅度,以完成所述需要将口型闭合的音素的口型闭合动作。
其中,所述对所述音素序列进行平滑处理以及基于发音协同规则的处理,包括
在进行平滑处理之后,如果目标帧片段上叠加了多个在发音时需要将口型张开的音素,则通过对所述目标帧片段上各音素的口型张开幅度进行归一化处理,以限制口型的最大张开幅度。
其中,还包括:
对所述目标音频数据进行情绪识别;
根据识别出的目标情绪类型,对所述目标音频数据关联的目标虚拟人物进行与情绪表达相关的其他多个表情发生部位的形变动画的合成。
其中,还包括:
在对所述目标音频数据进行情绪识别时,确定所识别出的情绪类别的置信度;
在对所述其他多个表情发生部位的形变动画的合成时,通过所述置信度对所述目标情绪类型对应的其他多个表情发生部位的形变动画的形变参数进行调整。
一种表情动画生成方法,包括:
将目标音频数据划分为时间维度上的多个帧片段,并对各帧片段进行音素预测,得到预测出的音素序列;
对所述目标音频数据进行情绪预测,得到预测出的目标情绪类别;
根据所述音素序列对所述目标音频数据关联的目标虚拟人物进行口型形变动画的合成,并根据所述目标情绪类别,对所述目标音频数据关联的目标虚拟人物进行与情绪表达相关的其他多个表情发生部位的形变动画的合成。
其中,还包括:
在对所述目标音频数据进行情绪识别时,确定所识别出的情绪类别的置信度;
在对所述其他多个表情发生部位的形变动画的合成时,通过所述置信度对所述目标情绪类型对应的其他多个表情发生部位的形变动画的形变参数进行调整。
一种表情动画生成装置,包括:
音素预测单元,用于将目标音频数据划分为时间维度上的多个帧片段,并对各帧片段进行音素预测,得到预测出的音素序列;
音素序列处理单元,用于对所述音素序列进行平滑处理以及发音协同处理,得到音素序列处理结果;其中,所述发音协同处理用于:根据当前音素的相邻音素对所述当前音素的发音口型的影响,对所述音素序列和/或音素对应的口型形变动画中的形变参数进行修正;
表情驱动单元,用于根据所述音素序列处理结果对所述目标音频数据关联的目标虚拟人物进行口型形变动画的合成。
一种表情动画生成装置,包括:
音素预测单元,用于将目标音频数据划分为时间维度上的多个帧片段,并对各帧片段进行音素预测,得到预测出的音素序列;
情绪预测单元,用于对所述目标音频数据进行情绪预测,得到预测出的目标情绪类别;
表情驱动单元,用于根据所述音素序列对所述目标音频数据关联的目标虚拟人物进行口型形变动画的合成,并根据所述目标情绪类别,对所述目标音频数据关联的目标虚拟人物进行与情绪表达相关的其他多个表情发生部位的形变动画的合成。
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述任一项所述的方法的步骤。
一种电子设备,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行前述任一项所述的方法的步骤。
根据本申请提供的具体实施例,本申请公开了以下技术效果:
通过本申请实施例,在根据已知的目标音频数据来生成表情动画的过程中,可以从目标音频数据中预测出音素序列,其中的音素可以是根据音节中包括的至少一个发音动作划分出的最小语音单位。之后,可以对上述音素序列进行平滑处理,以及发音协同处理,其中,通过发音协同处理,可以根据当前音素的相邻音素对所述当前音素的发音口型的影响,对所述音素序列和/或音素对应的口型形变动画中的形变参数(包括张口幅度、持续时间等)进行修正,从而来更好地契合汉语的发音,也进一步让口型显的更自然。
在优选的实施方式中,除了通过音素序列预测生成口型形变动画之外,还可以通过情绪识别,对眉毛、额头、眼球、头部等其他表情发生部位进行驱动,以使得整体上的表情动画更生动自然。
在通过预测出的情绪进行表情驱动时,还可以将预测的置信度加入到表情控制器,以此来减弱错误的情绪识别对表情驱动带来的影响。
当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的系统架构的示意图;
图2是本申请实施例提供的第一方法的流程图;
图3是本申请实施例提供的口型基的示意图;
图4是本申请实施例提供的算法模型的示意图;
图5是本申请实施例提供的第二方法的流程图;
图6是本申请实施例提供的第一装置的示意图;
图7是本申请实施例提供的第二装置的示意图;
图8是本申请实施例提供的电子设备的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本申请保护的范围。
在本申请实施例中,首先针对汉语等语言版本下的口型动画生成方式进行了改进,以解决口型无法完全对上、不自然等问题。另外,在对口型进行更优化的形变处理的基础上,还可以通过从音频数据中进行情绪识别,来实现对眉毛、眼睛、眼球、额头、头部等其他表情发生部位的形变处理,从而使得最终生成的表情动画除了口型可以更好地对上、更自然,还可以使得避免其他表情发生部位太僵硬等现象发生。
其中,对于口型动画生成方式的改进,考虑到人们说话时每个字里的音素到音素都是相互影响的,发完一个音素时通常不是先闭嘴再发另外一个音素,而会从一个音素发音后直接转到另一个音素的发音。比如,发“zhao”这个音,“zh”发完音后不会闭嘴,而会立即转到“ao”这个音。因此,在本申请实施例中,具体可以进行音素序列识别以及平滑处理的基础上,还进行发音协同处理,以此来契合汉语的发音,也进一步让口型显的更自然。
具体从系统架构角度而言,参见图1,本申请实施例可以在表情动画自动化生产工具中提供相关的功能,例如,在一种现有技术中,通常是先从输入的音频数据中进行音素序列识别,然后进行平滑处理后,利用平滑处理后的音素序列来驱动具体虚拟人物的口型运动,以生成口型动画。而在本申请实施例中,则是首先进行音素预测,然后针对音素序列进行平滑处理之前或者之后,增加了发音协同处理的步骤,通过这种方式,来让生成的口型动画更自然。其中,在进行音素预测时,还可以使用带有时间序列的帧片段特征向量集合来进行,从而可以利用前后多帧在音素上的相关性,进行更准确的音素预测。另外,在优选的实施方式下,除了进行口型处理,本申请实施例中还可以从输入的音频数据中进行情绪预测,并根据预测出的情绪,驱动虚拟人物其他的表情发生部位运动,从而使得最终生成的表情动画除了口型可以更好地对上、更自然,还可以使得避免其他表情发生部位太僵硬等现象发生。在通过情绪预测结果进行表情驱动的过程中,还可以将情绪预测的置信度加入到具体的表情控制过程中,从而降低情绪预测错误对最终的表情展现造成的影响。其中,在具体实现时,为了进行最终的口型或者其他表情发生部位的驱动,还可以预先制作口型基以及表情基,也即,建立起各种音素或者情绪下,对应的口型或者其他部位的运动方式,可以包括幅度,速度,频率,数量等参数。在预测出具体的音素和/或情绪之后,可以根据对应的口型基和/或表情基,驱动虚拟人物对应的部位进行运动,从而生成具体的表情动画。
下面对本申请实施例提供的具体实现方案进行详细介绍。
实施例一
首先,该实施例一提供了一种表情动画生成方法,参见图2,该方法具体可以包括:
S201:将目标音频数据划分为时间维度上的多个帧片段,并对各帧片段进行音素预测,得到预测出的音素序列。
首先需要说明的是,在本申请实施例,由于需要对虚拟人物进行口型驱动,在优选实施方式下还需要进行其他部位的表情驱动,而口型和其他部位表情的动作,需要相应的口型基和表情基为基础,来驱动整张面部的动作。因此,在本申请实施例中,首先可以根据汉语发音来制作相应的口型基和表情基,再依靠程序将制作好的口型基和表情基移植到其他虚拟人物模型上。
其中,关于表情基,将会在后文中进行介绍。而关于口型基,可以根据汉语发音规则,将具体的音素按照发音时口型的形变过程的相似性进行分类,然后,分别为各种音素列别配置对应的口型基。
在本申请实施例中,具体的音素是根据音节中包括的至少一个发音动作划分出的最小语音单位,也即,根据语音的自然属性划分出来的最小语音单位,依据音节里的发音动作来分析,一个动作构成一个音素。其中,音素通常可以分为元音与辅音两大类。如汉语音节啊(ā)只有一个音素;暗(àn)有两个音素,分别为à和n;当(dàng)有三个音素,分别为d,à,ng;但(dàn)有三个音素,分别为d,à,n;冷(lěng)有三个音素,分别为l,ě,ng,等等。
在制作口型基时,主要可以根据普通话的真实发音和国际音标去制作每个音素的口型。例如,可以将音素分为12种,分别来制作口型基,这12种口型基能够涵盖汉语拼音中所有的最小发音元素(即音素)对应的发音口型。例如,在一种具体的实现方式下,音素分类结果以及对应的口型基可以如图3所示。这里需要说明的是,还可以根据多种不同的方言或者语言的发音体系,与图3中的口型基一一对应,以此实现在多种不同方言或语言下的口型驱动。另外,每个口型基实际上对应的是一段动画,用来表达人们在发出对应的音素时口型的形变过程。
在完成对口型基的制作之后,相当于获得了各种音素对应口型形变的基础运动方式。之后,便可以根据音素识别结果,结合对应的口型基,对虚拟人物进行口型驱动。
在本申请实施例中,具体在对口型进行驱动时,首先可以从输入的音频数据中识别出具体的音素。其中,输入的音频数据可以是具体游戏或者动画等场景中需要用到的语音数据,这种音频数据可以是预先录制好的,或者通过语音合成的方式自动生成的,以用于对具体游戏或者动画等场景中的虚拟人物进行配音。在本申请实施例中,具体输入的音频数据可以以每一条对话为单位,这样每一条音频的时长通常比较短,如果需要进行情绪识别,则一条对话中通常仅包含一种情绪,因此,便于进行情绪识别。
在获取到输入的目标音频数据之后,可以对目标音频数据划分为时间维度上的多个帧片段,并对各帧片段进行音素预测,得到预测出的音素序列。其中,音素序列识别的过程可以是通过深度学习模型来进行。具体实现时,在接收到目标音频数据之后,可以首先进行特征提取,在此阶段,可以先用CNN(Convolutional Neural Networks,卷积神经网络)等,对音频数据进行音频特征的粗略提取,然后,可以将音频数据划分成多个帧片段(例如,每10ms为一帧,等等),从提取出的音频特征中得到每个帧片段对应的特征,以此组成特征向量集合,以此作为后续的深度学习模型的输入信息,进行音素识别。
其中,在优选的实施方式下,具体在向深度学习模型输入上述特征向量集合时,可以保留各帧片段之间的时间先后顺序信息,也即,可以生成带有时间序列的特征向量集合,并输入到深度学习模型中,以针对各帧片段进行音素识别。这样,具体的深度学习模型在对每个帧片段进行音素预测时,可以结合当前帧片段前后目标数量的帧片段的特征向量,对当前帧片段进行音素预测。之所以这样进行,是因为,假设10ms为一帧,深度学习模型的作用预测出每个帧片段的音素,组合到一起就是时间单位为帧的音素序列。但是,一个音素的发音持续时间可能至少需要30ms(也就是说,一个帧片段对应的一个音素,但是,一个音素通常会跨越多个连续的帧片段),因此,每个帧片段相邻的前后帧片段,可能会帮助识别当前帧片段的音素。因此,可以在深度学习模型中得到每帧的响应结果后,再预测后面6帧的音素,即当前帧的预测结果会受前后6帧的影响。
S202:对所述音素序列进行平滑处理以及发音协同处理,得到音素序列处理结果;其中,所述发音协同处理用于:根据当前音素的相邻音素对所述当前音素的发音口型的影响,对所述音素序列和/或音素对应的口型形变动画中的形变参数进行修正。
通过上述步骤S201,可以从当前输入的目标音频数据中识别出音素序列,例如,假设目标音频数据的时长为1分钟,每个帧片段为10ms,则可以分为6000个帧片段,通过第一深度学习模型的预测,可以分别得到上述6000个帧片段分别对应的音素预测结果,由于各个帧片段之间存在时间上的先后顺序,因此,这些音素预测结果组成长度为6000的音素序列。
由于人们在实际发音时,这个音不可能凭空出现,它需要一个开始和收尾的点,例如,发“a”音时,嘴巴是先张开发出“a”音,后闭合完成发音。因此,需要对音素序列进行平滑处理,得到的就是音素曲线,音素曲线包含了整段音频中的各个音素的发音变化过程。
通过平滑处理后得到的音素曲线在时间序列上,临近的音素就会有所交叉,例如,同一个帧片段可能会出现多个音素,等等。这种交叉是真实存在的,真实因为,人们说话时每个字里的音素到音素都是相互影响的,发完一个音素时不会闭嘴再发另外一个音素,而会从一个音素发音后直接转到另一个音素的发音。比如,发“zhao”这个音,“zh”发完音后不会闭嘴,而会立即转到“ao”这个音,这就是音素序列曲线的叠加。
可见,通过平滑处理,可以起到口型更自然,避免出现口型动画过于抖动等现象,但是,本申请发明人在实现本申请的过程中发现,普通的平滑处理算法针对一些特殊情况还显得不够有效。为此,本申请实施例中,还提供了发音协同规则,来更好地契合汉语的发音,也进一步让口型显的更自然。
具体的,关于发音协同处理,具体用于根据当前音素的相邻音素对所述当前音素的发音口型的影响,对所述音素序列和/或音素对应的口型形变动画中的形变参数进行修正。其中,根据具体情况的不同,发音协同处理可以包括在平滑处理之前进行,也可以包括在平滑处理之后进行的情况。
情况一、可以在进行平滑处理之前,从所述音素序列中确定目标辅音音素;其中,在同一音节内,所述目标辅音音素本身不产生口型,该音节的发音口型跟随该目标辅音音素后面的元音音素的发音口型;然后,将所述目标辅音音素对应的多个帧片段按照预置比例分配给所述目标辅音音素后面的元音音素,以延长所述元音音素对应的口型形变动画的持续时间。
例如,“j、q、x”这三个发音有着共同之处,他们发音时口型基本一致,他们还有一个共同点就是发音时无需发本身的口型,比如“七七”,只需要发出“i”这个音的咧嘴动作即可,其他的比如“家家”,发出“ia”这个音的口型即可。因此,“j、q、x”跟随其后元音的口型来产生该字的口型,本身并不需要单独出来口型。
又如,“g、k、h”这三个音主要由舌头紧贴口腔来发音,对于口型,“g、k、h”发音时,口型只需要微微张开即可。但是如果“g、k、h”遇见“a”时,发音时口型必须张的更大一点才可。可见,“g、k、h”发音也不受本身的发音口型影响,而是跟随后面元音的发音口型,因此“g、k、h”也属于自身不需要单独出口型的音素,而是跟随后面的元音产生的口型而产生口型。
因此,针对上述情况,在进行平滑处理之前,就可以将相关帧片段对应的音素进行重新分配。具体的,由于“j、q、x、g、k、h”自身不需要单独出口型,而是跟随其后面的元音的口型而产生口型,因此,可以将“j、q、x、g、k、h”这种音素对应的帧片段部分分配给后面的元音音素。例如,假设某个汉字为“ka”,在经过音素识别后,其中5个帧片段被识别为音素k,后面的5个帧片段被识别为音素a,但是,根据发音协同规则,可以将音素k对应的帧片段部分分配给音素a。例如,将音素k对应的后面3个帧片段分配给音素a,则处理后,将会有2个帧片段对应音素k,8个帧片段对应音素a,等等。
当然,上述目标辅音只是在上述组合发音的情况下,目标辅音本身不需要产生口型,但是在目标辅音单独发音时还是有口型的。
情况二、可以在进行平滑处理之前,从所述音素序列中确定目标元音音素;其中,在同一音节内,所述目标元音音素跟随在辅音音素之后;然后,可以将所述目标元音音素对应的口型形变动画的形变幅度参数调低,以减小该音节发音口型的口型幅度。
这种情况通常是指元音遇到辅音的情况。具体的,通常元音发生口型时,整个口型会较大。比如发“啊”这个音时,嘴巴会张很大,而假如发“拉”的音时,能明显感觉到此时发音时口型幅度变小了。再比如,“利益”这个发音(“益”的发音当作“i”),能明显的发现从“利”到“益”口型更加咧了。因此可以得出元音遇见辅音需要轻微的削弱元音的发音幅度的结论。因此,在本申请实施例中,对于这种元音遇到辅音的情况,可以将目标元音音素对应的口型形变动画的形变幅度参数调低,以减小该音节发音口型的口型幅度。
情况三、还可以在进行平滑处理之前,从音素序列中确定代表前鼻音或者后鼻音的尾音音素;然后,将所述尾音音素对应的多个帧片段按照预置比例分配给所述尾音音素前面的元音音素,并将所述元音音素对应的口型形变动画的形变幅度参数调低,以延长所述元音音素对应的口型形变动画的持续时间,并减小该音节发音口型的口型幅度。
如前文所述,在语音识别领域,音素的定义是汉语发音的最小不可分单位。因此深度学习模型在预测出音素的时间序列时,会把“an”这种预测成“a”和“n”,这就需要对前鼻音“n”和后鼻音“ng”进行单独处理。其中,汉语发音时“a”和“an”或者“ang”的发音,明显有所不同。“an”发音比“a”发音的张嘴幅度稍为小一点,但是持续时间稍微长一点。同样的“en”的发音也比“e”幅度小一点,持续时间长一点。无论“n”还是“ng”,他们的发音都受前面元音的发音影响。比如“an”,“n”的作用是把“a”的发音延长。基于此,可以按照普通话发音的标准,将“n”和“ng”跟前面的元音进行协同发音。
例如,具体实现时,为了进行上述协同发音处理,可以建立以下公式,
其中,中v为修正后的当前音素时间片段,vi-1为上一个音素,一般是元音,α和β小数,即“n”和“ng”是根据前元音来发音的,即延长前元音的发音。α和β即为延长的时间,受前元音决定,为经验数。
情况四、在进行平滑处理之后,如果目标帧片段上叠加了在发音时需要将口型闭合的音素,以及在发音时需要将口型张开的音素,则通过对所述目标帧片段上各音素的口型张开幅度进行归一化处理,减小所述需要将口型张开的音素的口型张开幅度,以完成所述需要将口型闭合的音素的口型闭合动作。
例如,目前市面上很多口型动画,在发音“爸爸”、“妈妈”、“怕怕”等音时,明显出现口型无法合闭的问题。因此,本申请实施例中给予了一套强规则,来解决这些问题。具体的,根据实际发音可知,口型张开和闭合有个最大值和最小值。闭合时会出现一个闭合的最小值,如果附近帧存在使口型张开的音素,就很可能将会打破这个最小值,尤其是在平滑处理之后,同一个帧片段上可能同时存在多个音素,如果同一帧片段上同时存在需要使口型张开的音素,又存在需要使口型闭合的音素(如前述例子中的“爸爸”,在对音素序列进行平滑处理后,可能同一个帧片段上同时存在b和a这两个音素),则会出现口型无法闭合的现象。针对该情况,本申请实施例可以去调整各帧的权重,来削弱最小值附近音素的张嘴幅度,从而达到口型合闭动作的完成,这也符合人们说话的行为。
为了达到上述目的,可以建议以下公式:
其中,jawopen为当前帧所有张嘴音素叠加的口型幅度,即当前帧口型幅度大小。vi为当前帧第i视素的幅度值,wi为当前视素的权重,比如“a”的权重明显会大于“e”。t为当前视素的数量。jaw_i为当前帧,当前视素修正后的幅度值。jawmin为口型闭合时应该出现的口型张闭最小值,该值为经验数,且不为0。其中,在“b、p、m”出现帧的情况下,“b、p、m”会出现一个闭嘴动嘴,只要张嘴幅度小于闭嘴幅度口型则能闭上。也是说只有出现“b、p、m”,才会启动修复权重,来修复当前帧的元音幅度。也就是说,在本申请实施例中,在生成口型动画的过程中,如果遇见闭嘴的情况,会自动修复让其口型能够闭合上,且自然生动。
情况五、在进行平滑处理之后,如果目标帧片段上叠加了多个在发音时需要将口型张开的音素,则通过对所述目标帧片段上各音素的口型张开幅度进行归一化处理,以限制口型的最大张开幅度。
也就是说,当张嘴的音素遇见张嘴的音素时,比如“啊昂”,则经过平滑处理后,就可能出现同一个帧片段上对应多个需要张口的音素的情况,此时,如果直接用平滑结果进行口型驱动,就可能会出现口型幅度过大的问题,这便是音素叠加导致口型张开幅度不合理,或者导致口型抖动等问题。为此,在本申请实施例中,针对该情况,可以通过对所述目标帧片段上各音素的口型张开幅度进行归一化处理,以限制口型的最大张开幅度。
其中,jawopen为当前帧口型幅度值,vi为当前音素口型幅度大小。jaw_i为修正后的幅度值。jawmax为口型动画中幅度最大的幅度值,该值不为1,为经验值。这样就能限制口型的最大幅度,避免出现不合理发音口型。
S203:根据所述音素序列处理结果对所述目标音频数据关联的目标虚拟人物进行口型形变动画的合成。
在预测出音素序列,并进行了平滑处理以及协同发音处理之后,便可以利用音素序列处理结果对所述目标音频数据关联的目标虚拟人物进行口型形变动画的合成。具体的,可以利用处理后的音素序列,以及各音素对应的口型基,即可对关联的目标虚拟人物进行口型形变动画的合成。其中,具体音频数据与虚拟人物之间的对应关系可以是预先建立的,例如,在游戏场景中,某条具体的音频通常是对应某个角色的对话内容,则该音频自然与该角色相关联,等等。关于目标虚拟人物,还预先建立有3D模型,在具体通过音素序列以及口型基进行驱动时,可以通过改变具体3D模型中网格形状等来实现形变动画的合成。关于具体的实现方案可以参见已有技术中的实现,这里不再详述。
以上对口型动画生成的过程进行了介绍,如前文所述,除了口型之外,与表情相关的其他部位,包括眉毛,眼睛,额头,头部,等等,也都会影响最终的表情合成效果的自然度。为此,在本申请实施例中,除了可以基于识别出的音素序列进行口型动画的生成,还可以对所述目标音频数据进行情绪识别,然后,利用识别出的情绪,对所述目标音频数据关联的目标虚拟人物进行与情绪表达相关的其他多个表情发生部位(包括眉毛,眼睛,额头,头部姿态等)的形变动画的合成,从而使得整体上的表情更自然更真实。
其中,为了达到对其他各部位的驱动,还可以预先建立表情基。关于表情基,通过观看普通话视频,仔细观察人物说话时的表情,可以归结为多种表情基,例如,包括眨眼、眉毛动作、头部动作、额头、眼球转动等五种表情动作。其中,眨眼动作,就是简单的眼皮和睫毛往下的动作。眉毛分为上下眉毛和皱眉动作两种,即正常说话眉毛上下运动,愤怒时候眉毛右微竖,开心时整个眉毛上扬,哭丧时皱眉,即眉毛动作会随情绪而有不同动作。头部动作分为摇头和点头两种动作。额头动作,是指说话时会随不同话语而造成额头皮肤不同变化的动作。眼球则分为上下左右的动作,等等。
在本申请实施例中,主要通过对原始输入的视频数据进行情绪识别,来驱动表情基,将表情展现在虚拟人物模型的脸上,让虚拟人物的表情更生动形象。其中,在不同的情绪下,各个部位的动作速度、频率、幅度等可能会不同。例如,通过观察普通话视频等可知,人们在说话时眼球会有轻微的转动,很轻微但是能给人以灵动的感觉,因此本申请实施例中的表情基也包含了眼球的转动。关于眉毛上下,人们在眨眼时眉毛会跟随上下运动,其中,积极情绪下,眉毛上扬,消极态度下眉毛下沉,总体还会跟着眨眼去上下运动,上扬和下沉决定了眉毛的运动高度。关于额头,额头上会随着眉毛的动作而出现一些抬头纹,抬头纹还可以与虚拟人物模型的特色相关,虚拟人物越年轻,抬头纹越少;额头上的抬头纹跟随眉毛的运动正相关。关于头部动作,由于人们在说话时,头部会有一些动作,比如说重音时会不自觉的点下头,来加强语气,等等。
因此,在本申请实施例中,在定义出多种情绪(例如,包括开心、伤心、惊讶、愤怒、中立、恐惧等)的基础上,还可以定义出各种情绪下,各部位的动作方式、速度、频率、幅度等,以此作为各种情绪对应的表情基。例如,通过对大量的普通话视频中的人物进行表情分析。可以定义情绪中眨眼速度最快为5。定义额头上的抬头纹最多为5,最舒展时抬头纹为-5,当然,抬头纹与虚拟人物模型联系紧密,因此可以具体模型具体分析。头部晃动动作最大为5,最小为0。定义眉毛上扬程度为5,下沉程度为-5.眼球转动速度最大为5,最小为0,等等。在上述基础上,可以对各种不同情绪在各部位的表情基进行定义。例如,“开心”情绪对应的表情基包括:眨眼速度5,眼球转动速度3,额头抬头纹数量5,头部晃动动作5,眉毛上扬程度5,等等。
具体在进行情绪识别时,可以通过多任务深度学习模型的第二阶段来进行,具体实现时,在前述步骤S201中,通过大量带有标签的音频数据集训练出基于LSTM(LongShort-Term Memory,长短期记忆人工神经网络)等网络的多任务的深度学习模型,训练数据集的标签通过语音识别等工具标注,标签分为具体的情绪和音素序列。在预测音素序列阶段,输入一条音频,通过多任务深度学习模型对音频中包括的音素以及对应的情绪进行识别。其中,如图4所示,该多任务深度学习模型的前六层(或者其他数量)神经网络可以用于提取音频的基础特征(也即,前述通过CNN网络粗略提取出的音频特征)。模型的第二阶段可以分为两部分,一部分用于进行音素识别,在此部分,可以首先以帧片段为单位将上述CNN网络输出的基础特征拆分成多个特征,以此组成特征序列,即带有时间序列的特征;然后,基于LSTM等网络对该带有时间序列的特征进行进一步特征提取,并识别出具体帧片段对应的音素。第二阶段的另一部分用于进行情绪识别,在此部分,可以通过LSTM等网络,对整段音频对应的基础特征(也即,不必按照帧片段拆分成特征序列)进行进一步的特征提取(主要是频率域上的特征,例如,可以将前述通过CNN提取出的时域的基础特征通过傅立叶变换等,转换为频域特征),来对音频的情绪进行分类。
另外,考虑到情绪识别结果可能会存在一些误差,例如,算法识别出情绪可能是“开心”,但是实际上是比较中立的情绪,此时,如果直接根据“开心”情绪对应的表情基,驱动虚拟人物各部位的运动,则会影响最终呈现的效果。因此,在通过深度学习模型输出情绪识别结果时,可以输出情绪类别和该情绪的置信度这两方面的信息,在通过识别出的情绪类别来驱动产生表情动画时,为了减少情绪识别错误率对最终呈现结果的影响,还可以将置信度放进表情控制器里,来减弱错误的情绪识别对表情驱动带来的影响。也即,在对所述其他多个表情发生部位的形变动画的合成时,通过所述置信度对所述目标情绪类型对应的其他多个表情发生部位的形变动画的形变参数进行调整。具体的,假设每个表情的置信度各为a,其中,深度学习模型如果给出的置信度a较高,那么这个情绪类别就较为正确,较低则很可能错误。为此,可以将置信度加入到对表情控制的运算中。这样,如果a的值比较低(例如,小于<0.6或者其他值),则通过将置信度加入到表情控制的运算就可以让该情绪预测结果在表情驱动中的表现接近中立。其中,为了能将置信度加入到表情控制器中,在定义每种情绪的表情基时,就可以以置信度为参数。
例如,一种实现方式下,具体的定义结果可以如表1所示。
表1
情绪 | 眨眼速度 | 眼球运动速度 | 额头抬头纹数量 | 头部晃动速度 | 眉毛上扬程度 |
开心 | 5a | 3-a | 3+2a | 3+2a | 3+2a |
伤心 | 3-2a | 3-2a | 3-2a | 3-2a | -(3+2a) |
惊讶 | 3+a | 3+2a | 3+a | 3-a | 3+2a |
愤怒 | 3-2a | 3-2a | 3+2a | 3-2a | 3+a |
中立 | 3 | 3 | 3 | 3 | 3 |
恐惧 | 3-a | 3-2a | 3-2a | 3-2a | -(a+2) |
也就是说,可以以“中立”情绪为基准,其他情绪在各部位的表情基参数可以在“中立”情绪基础上通过置信度进行调节,以使得在识别出某情绪类别但置信度比较低的情况下,让虚拟人物的表情驱动结果更接近“中立”情绪,从而降低情绪分类错误带来的影响。例如,假设当前算法识别出的情绪时“愤怒”,但其置信度只有0.1,则根据上述表1可知,最终计算出的各部位的表情基参数值分别为:眨眼速度、眼球运动速度、头部运动速度均为3-2*0.1=2.8,额头抬头纹数量为3+2*0.1=3.2,眉毛上扬幅度为3+0.1=3.1。可见,上述各部位的表情基都接近于3,也即,情绪为“中立”时的状态,因此,利用这种表情基来驱动虚拟人物各部位运动时,最终在虚拟人物脸部呈现出的表情驱动结果会在接近于“中立”的情况下,稍加表现出一些“开心”的状态,以降低错误的情绪识别结果对表情驱动带来的影响。
总之,通过本申请实施例,在根据已知的目标音频数据来生成表情动画的过程中,可以从目标音频数据中预测出音素序列,其中的音素可以是根据音节中包括的至少一个发音动作划分出的最小语音单位。之后,可以对上述音素序列进行平滑处理,以及发音协同处理,其中,通过发音协同处理,可以根据当前音素的相邻音素对所述当前音素的发音口型的影响,对所述音素序列和/或音素对应的口型形变动画中的形变参数(包括张口幅度、持续时间等)进行修正,从而来更好地契合汉语的发音,也进一步让口型显的更自然。
在优选的实施方式中,除了通过音素序列预测生成口型形变动画之外,还可以通过情绪识别,对眉毛、额头、眼球、头部等其他表情发生部位进行驱动,以使得整体上的表情动画更生动自然。
在通过预测出的情绪进行表情驱动时,还可以将预测的置信度加入到表情控制器,以此来减弱错误的情绪识别对表情驱动带来的影响。
实施例二
该实施例二从另一个角度,提供了一种表情动画生成方法,参见图5,该方法具体可以包括:
S501:将目标音频数据划分为时间维度上的多个帧片段,并对各帧片段进行音素预测,得到预测出的音素序列;
S502:对所述目标音频数据进行情绪预测,得到预测出的目标情绪类别;
S503:根据所述音素序列对所述目标音频数据关联的目标虚拟人物进行口型形变动画的合成,并根据所述目标情绪类别,对所述目标音频数据关联的目标虚拟人物进行与情绪表达相关的其他多个表情发生部位的形变动画的合成。
具体实现时,在对所述目标音频数据进行情绪识别时,还可以确定所识别出的情绪类别的置信度;这样,在对所述其他多个表情发生部位的形变动画的合成时,可以通过所述置信度对所述目标情绪类型对应的其他多个表情发生部位的形变动画的形变参数进行调整。
通过该实施例二,在生成表情动画时,一方面可以通过音素序列预测生成口型形变动画,另一方面,还可以通过情绪识别,对眉毛、额头、眼球、头部等其他表情发生部位进行驱动,以使得整体上的表情动画更生动自然。
需要说明的是,本申请实施例中可能会涉及到对用户数据的使用,在实际应用中,可以在符合所在国的适用法律法规要求的情况下(例如,用户明确同意,对用户切实通知,等),在适用法律法规允许的范围内在本文描述的方案中使用用户特定的个人数据。
与实施例一相对应,本申请实施例还提供了一种表情动画生成装置,参见图6,该装置可以包括:
音素预测单元601,用于将目标音频数据划分为时间维度上的多个帧片段,并对各帧片段进行音素预测,得到预测出的音素序列;
音素序列处理单元602,用于对所述音素序列进行平滑处理以及发音协同处理,得到音素序列处理结果;其中,所述发音协同处理用于:根据当前音素的相邻音素对所述当前音素的发音口型的影响,对所述音素序列和/或音素对应的口型形变动画中的形变参数进行修正;
表情驱动单元603,用于根据所述音素序列处理结果对所述目标音频数据关联的目标虚拟人物进行口型形变动画的合成。
具体的,所述音素预测单元具体可以用于:
提取各帧片段的特征,组成带有时间序列的特征向量集合;
将所述带有时间序列的特征向量集合作为第一深度学习模型的输入信息,以用于预测出各帧片段对应的音素,其中,所述第一深度学习模型在对每个帧片段进行音素预测时,结合当前帧片段前后目标数量的帧片段的特征向量,对当前帧片段进行音素预测。
具体实现时,所述音素序列处理单元具体可以用于:
在进行平滑处理之前,从所述音素序列中确定目标辅音音素;其中,在同一音节内,所述目标辅音音素本身不产生口型,该音节的发音口型跟随该目标辅音音素后面的元音音素的发音口型;
将所述目标辅音音素对应的多个帧片段按照预置比例分配给所述目标辅音音素后面的元音音素,以延长所述元音音素对应的口型形变动画的持续时间。
或者,所述音素序列处理单元具体可以用于:
在进行平滑处理之前,从所述音素序列中确定目标元音音素;其中,在同一音节内,所述目标元音音素跟随在辅音音素之后;
将所述目标元音音素对应的口型形变动画的形变幅度参数调低,以减小该音节发音口型的口型幅度。
或者,所述音素序列处理单元具体可以用于:所述对所述音素序列进行平滑处理以及基于发音协同规则的处理,包括:
在进行平滑处理之前,从所述音素序列中确定代表前鼻音或者后鼻音的尾音音素;
将所述尾音音素对应的多个帧片段按照预置比例分配给所述尾音音素前面的元音音素,并将所述元音音素对应的口型形变动画的形变幅度参数调低,以延长所述元音音素对应的口型形变动画的持续时间,并减小该音节发音口型的口型幅度。
或者,所述音素序列处理单元具体可以用于:所述对所述音素序列进行平滑处理以及基于发音协同规则的处理,包括
在进行平滑处理之后,如果目标帧片段上叠加了在发音时需要将口型闭合的音素,以及在发音时需要将口型张开的音素,则通过对所述目标帧片段上各音素的口型张开幅度进行归一化处理,减小所述需要将口型张开的音素的口型张开幅度,以完成所述需要将口型闭合的音素的口型闭合动作。
或者,所述音素序列处理单元具体可以用于:在进行平滑处理之后,如果目标帧片段上叠加了多个在发音时需要将口型张开的音素,则通过对所述目标帧片段上各音素的口型张开幅度进行归一化处理,以限制口型的最大张开幅度。
具体实现时,该装置还可以包括:
情绪识别单元,用于对所述目标音频数据进行情绪识别;
所述表情驱动单元具体还可以用于:根据识别出的目标情绪类型,对所述目标音频数据关联的目标虚拟人物进行与情绪表达相关的其他多个表情发生部位的形变动画的合成。
另外,该装置还可以包括:
置信度确定单元,用于在对所述目标音频数据进行情绪识别时,确定所识别出的情绪类别的置信度;
参数调整单元,用于在对所述其他多个表情发生部位的形变动画的合成时,通过所述置信度对所述目标情绪类型对应的其他多个表情发生部位的形变动画的形变参数进行调整。
与实施例二相对应,本申请实施例还提供了一种表情动画生成装置,参见图7,该装置可以包括:
音素预测单元701,用于将目标音频数据划分为时间维度上的多个帧片段,并对各帧片段进行音素预测,得到预测出的音素序列;
情绪预测单元702,用于对所述目标音频数据进行情绪预测,得到预测出的目标情绪类别;
表情驱动单元703,用于根据所述音素序列对所述目标音频数据关联的目标虚拟人物进行口型形变动画的合成,并根据所述目标情绪类别,对所述目标音频数据关联的目标虚拟人物进行与情绪表达相关的其他多个表情发生部位的形变动画的合成。
另外,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述方法实施例中任一项所述的方法的步骤。
以及一种电子设备,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行前述方法实施例中任一项所述的方法的步骤。
其中,图8示例性的展示出了电子设备的架构,具体可以包括处理器810,视频显示适配器811,磁盘驱动器812,输入/输出接口813,网络接口814,以及存储器820。上述处理器810、视频显示适配器811、磁盘驱动器812、输入/输出接口813、网络接口814,与存储器820之间可以通过通信总线830进行通信连接。
其中,处理器810可以采用通用的CPU(Central Processing Unit,处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请所提供的技术方案。
存储器820可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器820可以存储用于控制电子设备800运行的操作系统821,用于控制电子设备800的低级别操作的基本输入输出系统(BIOS)。另外,还可以存储网页浏览器823,数据存储管理系统824,以及表情动画处理系统825等等。上述表情动画处理系统825就可以是本申请实施例中具体实现前述各步骤操作的应用程序。总之,在通过软件或者固件来实现本申请所提供的技术方案时,相关的程序代码保存在存储器820中,并由处理器810来调用执行。
输入/输出接口813用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
网络接口814用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线830包括一通路,在设备的各个组件(例如处理器810、视频显示适配器811、磁盘驱动器812、输入/输出接口813、网络接口814,与存储器820)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器810、视频显示适配器811、磁盘驱动器812、输入/输出接口813、网络接口814,存储器820,总线830等,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本申请方案所必需的组件,而不必包含图中所示的全部组件。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本申请所提供的表情动画生成方法及电子设备,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。
Claims (13)
1.一种表情动画生成方法,其特征在于,包括:
将目标音频数据划分为时间维度上的多个帧片段,并对各帧片段进行音素预测,得到预测出的音素序列;
对所述音素序列进行平滑处理以及发音协同处理,得到音素序列处理结果;其中,所述发音协同处理用于:根据当前音素的相邻音素对所述当前音素的发音口型的影响,对所述音素序列和/或音素对应的口型形变动画中的形变参数进行修正;在进行平滑处理之前,从所述音素序列中确定目标元音音素;其中,所述对所述音素序列进行平滑处理以及基于发音协同规则的处理,包括:在同一音节内,所述目标元音音素跟随在辅音音素之后,将所述目标元音音素对应的口型形变动画的形变幅度参数调低,以减小该音节发音口型的口型幅度;
根据所述音素序列处理结果对所述目标音频数据关联的目标虚拟人物进行口型形变动画的合成。
2.根据权利要求1所述的方法,其特征在于,
所述对各帧片段进行音素预测,包括:
提取各帧片段的特征,组成带有时间序列的特征向量集合;
将所述带有时间序列的特征向量集合作为第一深度学习模型的输入信息,以用于预测出各帧片段对应的音素,其中,所述第一深度学习模型在对每个帧片段进行音素预测时,结合当前帧片段前后目标数量的帧片段的特征向量,对当前帧片段进行音素预测。
3.根据权利要求1所述的方法,其特征在于,
所述对所述音素序列进行平滑处理以及基于发音协同规则的处理,还包括:
在进行平滑处理之前,从所述音素序列中确定目标辅音音素;其中,在同一音节内,所述目标辅音音素本身不产生口型,该音节的发音口型跟随该目标辅音音素后面的元音音素的发音口型;
将所述目标辅音音素对应的多个帧片段按照预置比例分配给所述目标辅音音素后面的元音音素,以延长所述元音音素对应的口型形变动画的持续时间。
4.根据权利要求1所述的方法,其特征在于,
所述对所述音素序列进行平滑处理以及基于发音协同规则的处理,还包括:
在进行平滑处理之前,从所述音素序列中确定代表前鼻音或者后鼻音的尾音音素;
将同一音节内所述尾音音素对应的多个帧片段按照预置比例分配给所述尾音音素前面的元音音素,并将所述元音音素对应的口型形变动画的形变幅度参数调低,以延长所述元音音素对应的口型形变动画的持续时间,并减小该音节发音口型的口型幅度。
5.根据权利要求1所述的方法,其特征在于,
所述对所述音素序列进行平滑处理以及基于发音协同规则的处理,还包括
在进行平滑处理之后,如果目标帧片段上叠加了在发音时需要将口型闭合的音素,以及在发音时需要将口型张开的音素,则通过对所述目标帧片段上各音素的口型张开幅度进行归一化处理,减小所述需要将口型张开的音素的口型张开幅度,以完成所述需要将口型闭合的音素的口型闭合动作。
6.根据权利要求1所述的方法,其特征在于,
所述对所述音素序列进行平滑处理以及基于发音协同规则的处理,还包括
在进行平滑处理之后,如果目标帧片段上叠加了多个在发音时需要将口型张开的音素,则通过对所述目标帧片段上各音素的口型张开幅度进行归一化处理,以限制口型的最大张开幅度。
7.根据权利要求1至6任一项所述的方法,其特征在于,还包括:
对所述目标音频数据进行情绪识别;
根据识别出的目标情绪类型,对所述目标音频数据关联的目标虚拟人物进行与情绪表达相关的其他多个表情发生部位的形变动画的合成。
8.根据权利要求7所述的方法,其特征在于,还包括:
在对所述目标音频数据进行情绪识别时,确定所识别出的情绪类别的置信度;
在对所述其他多个表情发生部位的形变动画的合成时,通过所述置信度对所述目标情绪类型对应的其他多个表情发生部位的形变动画的形变参数进行调整。
9.一种表情动画生成方法,其特征在于,包括:
将目标音频数据划分为时间维度上的多个帧片段,并对各帧片段进行音素预测,得到预测出的音素序列;
对所述音素序列进行平滑处理以及发音协同处理,得到音素序列处理结果;其中,所述发音协同处理用于:根据当前音素的相邻音素对所述当前音素的发音口型的影响,对所述音素序列和/或音素对应的口型形变动画中的形变参数进行修正;其中,所述对所述音素序列进行平滑处理以及基于发音协同规则的处理,包括:在进行平滑处理之前,从所述音素序列中确定代表前鼻音或者后鼻音的尾音音素;将同一音节内所述尾音音素对应的多个帧片段按照预置比例分配给所述尾音音素前面的元音音素,并将所述元音音素对应的口型形变动画的形变幅度参数调低,以延长所述元音音素对应的口型形变动画的持续时间,并减小该音节发音口型的口型幅度;
根据所述音素序列处理结果对所述目标音频数据关联的目标虚拟人物进行口型形变动画的合成。
10.一种表情动画生成方法,其特征在于,包括:
将目标音频数据划分为时间维度上的多个帧片段,并对各帧片段进行音素预测,得到预测出的音素序列;
对所述音素序列进行平滑处理以及发音协同处理,得到音素序列处理结果;其中,所述发音协同处理用于:根据当前音素的相邻音素对所述当前音素的发音口型的影响,对所述音素序列和/或音素对应的口型形变动画中的形变参数进行修正;其中,所述对所述音素序列进行平滑处理以及基于发音协同规则的处理,包括:在进行平滑处理之后,如果目标帧片段上叠加了在发音时需要将口型闭合的音素,以及在发音时需要将口型张开的音素,则通过对所述目标帧片段上各音素的口型张开幅度进行归一化处理,减小所述需要将口型张开的音素的口型张开幅度,以完成所述需要将口型闭合的音素的口型闭合动作;
根据所述音素序列处理结果对所述目标音频数据关联的目标虚拟人物进行口型形变动画的合成。
11.一种表情动画生成方法,其特征在于,包括:
将目标音频数据划分为时间维度上的多个帧片段,并对各帧片段进行音素预测,得到预测出的音素序列;
对所述音素序列进行平滑处理以及发音协同处理,得到音素序列处理结果;其中,所述发音协同处理用于:根据当前音素的相邻音素对所述当前音素的发音口型的影响,对所述音素序列和/或音素对应的口型形变动画中的形变参数进行修正;其中,所述对所述音素序列进行平滑处理以及基于发音协同规则的处理,包括:在进行平滑处理之后,如果目标帧片段上叠加了多个在发音时需要将口型张开的音素,则通过对所述目标帧片段上各音素的口型张开幅度进行归一化处理,以限制口型的最大张开幅度;
根据所述音素序列处理结果对所述目标音频数据关联的目标虚拟人物进行口型形变动画的合成。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至11任一项所述的方法的步骤。
13.一种电子设备,其特征在于,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行权利要求1至11任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210552385.7A CN115222856B (zh) | 2022-05-20 | 2022-05-20 | 表情动画生成方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210552385.7A CN115222856B (zh) | 2022-05-20 | 2022-05-20 | 表情动画生成方法及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115222856A CN115222856A (zh) | 2022-10-21 |
CN115222856B true CN115222856B (zh) | 2023-09-26 |
Family
ID=83608415
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210552385.7A Active CN115222856B (zh) | 2022-05-20 | 2022-05-20 | 表情动画生成方法及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115222856B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116650957B (zh) * | 2023-04-25 | 2023-10-31 | 一点灵犀信息技术(广州)有限公司 | 游戏技能动画播放方法、设备和存储介质 |
CN116721191B (zh) * | 2023-08-09 | 2024-02-02 | 腾讯科技(深圳)有限公司 | 口型动画处理方法、装置及存储介质 |
CN117115318B (zh) * | 2023-08-18 | 2024-05-28 | 蚂蚁区块链科技(上海)有限公司 | 口型动画合成方法及装置和电子设备 |
CN117037255B (zh) * | 2023-08-22 | 2024-06-21 | 北京中科深智科技有限公司 | 基于有向图的3d表情合成方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2744347A1 (en) * | 2009-01-19 | 2010-07-22 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for changing lip shape and obtaining lip animation in voice-driven animation |
WO2011083978A2 (ko) * | 2010-01-06 | 2011-07-14 | (주) 퓨처로봇 | 캐릭터의 발화와 감정표현 제공 시스템 및 방법 |
JP2011164763A (ja) * | 2010-02-05 | 2011-08-25 | Yamaha Corp | 制御情報生成装置および形状制御装置 |
KR20140133056A (ko) * | 2013-05-09 | 2014-11-19 | 중앙대학교기술지주 주식회사 | 애니메이션 립싱크 자동화 장치 및 방법 |
CN104361620A (zh) * | 2014-11-27 | 2015-02-18 | 韩慧健 | 一种基于综合加权算法的口型动画合成方法 |
CN108447474A (zh) * | 2018-03-12 | 2018-08-24 | 北京灵伴未来科技有限公司 | 一种虚拟人物语音与口型同步的建模与控制方法 |
CN110288682A (zh) * | 2019-06-28 | 2019-09-27 | 北京百度网讯科技有限公司 | 用于控制三维虚拟人像口型变化的方法和装置 |
CN112001323A (zh) * | 2020-08-25 | 2020-11-27 | 成都威爱新经济技术研究院有限公司 | 一种基于拼音或英文音标读法的数字虚拟人嘴型驱动方法 |
CN112581569A (zh) * | 2020-12-11 | 2021-03-30 | 中国科学院软件研究所 | 自适应情感表达的说话人面部动画生成方法及电子装置 |
WO2021128173A1 (zh) * | 2019-12-26 | 2021-07-01 | 浙江大学 | 一种语音信号驱动的脸部动画生成方法 |
CN113539240A (zh) * | 2021-07-19 | 2021-10-22 | 北京沃东天骏信息技术有限公司 | 动画生成方法、装置、电子设备和存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180115602A (ko) * | 2017-04-13 | 2018-10-23 | 인하대학교 산학협력단 | 촬상센서를 포함한 두경부 조음기관의 물리특성과 기반의 발화 의도 측정 및 발화 구현 시스템 |
-
2022
- 2022-05-20 CN CN202210552385.7A patent/CN115222856B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2744347A1 (en) * | 2009-01-19 | 2010-07-22 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for changing lip shape and obtaining lip animation in voice-driven animation |
WO2011083978A2 (ko) * | 2010-01-06 | 2011-07-14 | (주) 퓨처로봇 | 캐릭터의 발화와 감정표현 제공 시스템 및 방법 |
JP2011164763A (ja) * | 2010-02-05 | 2011-08-25 | Yamaha Corp | 制御情報生成装置および形状制御装置 |
KR20140133056A (ko) * | 2013-05-09 | 2014-11-19 | 중앙대학교기술지주 주식회사 | 애니메이션 립싱크 자동화 장치 및 방법 |
CN104361620A (zh) * | 2014-11-27 | 2015-02-18 | 韩慧健 | 一种基于综合加权算法的口型动画合成方法 |
CN108447474A (zh) * | 2018-03-12 | 2018-08-24 | 北京灵伴未来科技有限公司 | 一种虚拟人物语音与口型同步的建模与控制方法 |
CN110288682A (zh) * | 2019-06-28 | 2019-09-27 | 北京百度网讯科技有限公司 | 用于控制三维虚拟人像口型变化的方法和装置 |
WO2021128173A1 (zh) * | 2019-12-26 | 2021-07-01 | 浙江大学 | 一种语音信号驱动的脸部动画生成方法 |
CN112001323A (zh) * | 2020-08-25 | 2020-11-27 | 成都威爱新经济技术研究院有限公司 | 一种基于拼音或英文音标读法的数字虚拟人嘴型驱动方法 |
CN112581569A (zh) * | 2020-12-11 | 2021-03-30 | 中国科学院软件研究所 | 自适应情感表达的说话人面部动画生成方法及电子装置 |
CN113539240A (zh) * | 2021-07-19 | 2021-10-22 | 北京沃东天骏信息技术有限公司 | 动画生成方法、装置、电子设备和存储介质 |
Non-Patent Citations (4)
Title |
---|
Po-Yi Shih, Jhing-Fa Wang & Zong-You Chen . Kernel-Based Lip Shape Clustering with Phoneme Recognition for Real-Time Voice Driven Talking Face.《International Symposium on Neural Networks》.2010,516-523. * |
Xiao Zhong,etc.Efficient approach to Chinese phoneme mouth-shape recognition.《Proceedings Volume 4550, Image Extraction, Segmentation, and Recognition (2001)》.2001,176-181. * |
刘学杰;赵晖.改进参数控制的可视语音合成方法.计算机工程与设计.2017,(第04期),157-163. * |
毕永新.基于综合加权算法的汉语语音同步三维口型动画研究.《中国优秀硕士学位论文全文数据库 信息科技辑》.2013,I138-1583. * |
Also Published As
Publication number | Publication date |
---|---|
CN115222856A (zh) | 2022-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115222856B (zh) | 表情动画生成方法及电子设备 | |
CN106653052B (zh) | 虚拟人脸动画的生成方法及装置 | |
CN111145282B (zh) | 虚拟形象合成方法、装置、电子设备和存储介质 | |
US9361722B2 (en) | Synthetic audiovisual storyteller | |
US9959657B2 (en) | Computer generated head | |
CN113781610B (zh) | 一种虚拟人脸的生成方法 | |
US8224652B2 (en) | Speech and text driven HMM-based body animation synthesis | |
CN108763190A (zh) | 基于语音的口型动画合成装置、方法及可读存储介质 | |
CN116034424A (zh) | 两级语音韵律迁移 | |
US20140210831A1 (en) | Computer generated head | |
Albrecht et al. | Automatic generation of non-verbal facial expressions from speech | |
CN111260761B (zh) | 一种生成动画人物口型的方法及装置 | |
Oviatt et al. | Modeling global and focal hyperarticulation during human–computer error resolution | |
CN112735371B (zh) | 一种基于文本信息生成说话人视频的方法及装置 | |
CN113112575B (zh) | 一种口型生成方法、装置、计算机设备及存储介质 | |
Hrúz et al. | Automatic fingersign-to-speech translation system | |
KR102528019B1 (ko) | 인공지능 기술에 기반한 음성 합성 시스템 | |
Karpov et al. | Multimodal synthesizer for Russian and Czech sign languages and audio-visual speech | |
Suzić et al. | A comparison of multi-style DNN-based TTS approaches using small datasets | |
Barbulescu et al. | A generative audio-visual prosodic model for virtual actors | |
US20240304200A1 (en) | Machine-learning-based speech production correction | |
KR102532253B1 (ko) | 스펙트로그램에 대응하는 어텐션 얼라인먼트의 디코더 스코어를 연산하는 방법 및 음성 합성 시스템 | |
Verma et al. | Animating expressive faces across languages | |
Gustafson et al. | Casual chatter or speaking up? Adjusting articulatory effort in generation of speech and animation for conversational characters | |
Bahaadini et al. | Implementation and evaluation of statistical parametric speech synthesis methods for the Persian language |
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 |