CN116958343A - 面部动画生成方法、装置、设备、介质及程序产品 - Google Patents
面部动画生成方法、装置、设备、介质及程序产品 Download PDFInfo
- Publication number
- CN116958343A CN116958343A CN202310577533.5A CN202310577533A CN116958343A CN 116958343 A CN116958343 A CN 116958343A CN 202310577533 A CN202310577533 A CN 202310577533A CN 116958343 A CN116958343 A CN 116958343A
- Authority
- CN
- China
- Prior art keywords
- data
- phoneme
- pixel
- sample
- audio
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 112
- 230000001815 facial effect Effects 0.000 title claims abstract description 107
- 230000000007 visual effect Effects 0.000 claims abstract description 111
- 238000006243 chemical reaction Methods 0.000 claims description 47
- 239000011159 matrix material Substances 0.000 claims description 45
- 238000013507 mapping Methods 0.000 claims description 40
- 238000012549 training Methods 0.000 claims description 30
- 238000004458 analytical method Methods 0.000 claims description 22
- 238000003860 storage Methods 0.000 claims description 20
- 230000004927 fusion Effects 0.000 claims description 13
- 230000009466 transformation Effects 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 8
- 238000000605 extraction Methods 0.000 claims description 5
- 230000002194 synthesizing effect Effects 0.000 claims description 2
- 239000003016 pheromone Substances 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 12
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 40
- 230000008859 change Effects 0.000 description 38
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000014509 gene expression Effects 0.000 description 7
- 238000013508 migration Methods 0.000 description 7
- 230000005012 migration Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 230000007935 neutral effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 210000001097 facial muscle Anatomy 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 150000004492 retinoid derivatives Chemical class 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002902 bimodal effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000008921 facial expression Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000037433 frameshift Effects 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000000611 regression analysis Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 125000002523 retinol group Chemical group 0.000 description 1
- 230000003068 static effect Effects 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
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
- G10L13/027—Concept to speech synthesisers; Generation of natural phrases from machine-based concepts
-
- 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
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
-
- 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
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/06—Transformation of speech into a non-audible representation, e.g. speech visualisation or speech processing for tactile aids
- G10L21/10—Transforming into visible information
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- Computational Linguistics (AREA)
- Human Computer Interaction (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种面部动画生成方法、装置、设备、介质及程序产品,涉及计算机技术领域。该方法包括:获取音频数据,音频数据用于表征文本内容对应的发音音频;基于音频数据,获取与文本内容对应的多个音素数据;获取多个候选视素数据;基于多个音素数据之间的音素关联关系,获取多个音素数据分别对应的视素系数组;以音素数据分别对应的视素系数组对多个候选视素数据进行加权融合,并基于融合后得到的视素数据生成面部动画。通过以上方式,能够考虑音频数据中多个音素数据之间的音素关联关系以得到视素系数,通过视素系数调整对应的视素数据并生成随音频数据变化且更具有真实性的面部动画。本申请可应用于云技术、人工智能、智慧交通等各种场景。
Description
技术领域
本申请实施例涉及计算机技术领域,特别涉及一种面部动画生成方法、装置、设备、介质及程序产品。
背景技术
随着计算机技术以及虚拟现实设备的快速发展,考虑到人们说话时的声音常常与唇部动作、面部表情等动作相关联,为了更加生动地展现动画的真实性,在面部动画生成领域中越来越重视开拓视觉和听觉双模态信息融合的交互方式,从而尽可能提供一种更为准确的交互体验,提高动画的艺术性和观赏度。
相关技术中,通常可以模拟端到端生成的方法,将音频数据和三维(3-Dimensional,3D)面部数据作为训练数据,借助训练数据训练得到的音频—面部转换模型对待转换的音频数据进行分析,从而确定经过该转换的音频数据进行转换后的面部数据。
然而在上述过程中,虽然音频—面部转换模型能够较准确地得到转换后的面部数据,但是转换后的面部数据基本以多边形面片(mesh)作为表达,若需要将转换后的面部数据应用在具体的面部动画上,需要经过形变迁移(Deformation Transfer)等步骤才能实现应用过程,然而形变迁移等步骤对于转换后的面部数据的效果损失是较大的,无法较好地应用在面部生成动画中。
发明内容
本申请实施例提供了一种面部动画生成方法、装置、设备、介质及程序产品,能够考虑音频数据中多个音素数据之间的音素关联关系以得到视素系数组,通过视素系数组调整对应的候选视素数据并生成随音频数据变化且更具有真实性的面部动画。所述技术方案如下。
一方面,提供了一种面部动画生成方法,所述方法包括:
获取音频数据,所述音频数据用于表征文本内容对应的发音音频;
基于所述音频数据,获取与所述文本内容对应的多个音素数据,所述音素数据是以音频帧为单位对所述音频数据进行音素拆分后得到的数据;
获取多个候选视素数据,所述候选视素数据是音素数据对应的基准视觉表现;
基于所述多个音素数据之间的音素关联关系,获取所述多个音素数据分别对应的视素系数组,所述视素系数组用于调整所述音素数据与所述候选视素数据之间的转换关系;
以各个音素数据分别对应的视素系数组对所述多个候选视素数据进行加权融合,并基于融合后得到的视素数据生成所述面部动画。
另一方面,提供了一种面部动画生成装置,所述装置包括:
音频获取模块,用于获取音频数据,所述音频数据用于表征文本内容对应的发音音频;
音素获取模块,用于基于所述音频数据,获取与所述文本内容对应的多个音素数据,所述音素数据是以音频帧为单位对所述音频数据进行音素拆分后得到的数据;
视素获取模块,用于获取多个候选视素数据,所述候选视素数据是音素数据对应的基准视觉表现;
系数获取模块,用于基于所述多个音素数据之间的音素关联关系,获取所述多个音素数据分别对应的视素系数组,所述视素系数组用于调整所述音素数据与所述候选视素数据之间的转换关系;
动画生成模块,用于以各个音素数据分别对应的视素系数组对所述多个候选视素数据进行加权融合,并基于融合后得到的视素数据生成所述面部动画。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述本申请实施例中任一所述面部动画生成方法。
另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述本申请实施例中任一所述的面部动画生成方法。
另一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中任一所述的面部动画生成方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
在获取得到用于表征文本内容对应的发音音频的音频数据后,基于音频数据获取与文本内容对应的多个音素数据,并获取多个候选视素数据;进而基于多个音素数据之间的音素关联关系获取视素系数组,从而以各个音素数据分别对应的视素系数组对多个候选视素数据进行加权融合。不再简单依赖表示基准视觉表现的候选视素数据组合得到面部动画,而是考虑音频数据中多个音素数据之间的音素关联关系,从而得到随音频数据变化而变化的视素系数组,以灵活确定的视素系数组调整音素数据与候选视素数据之间的转换关系,并基于融合后得到的视素数据生成面部动画,有效在提高面部动画随音频数据变化真实性的基础上,通过音频数据更高效地实现动画生成过程,避免额外引入表情迁移等步骤的低效问题,提升动画生成效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个示例性实施例提供的实施环境示意图;
图2是本申请一个示例性实施例提供的面部动画生成方法的流程图;
图3是本申请一个示例性实施例提供的音素视素映射关系的示意图;
图4是本申请另一个示例性实施例提供的面部动画生成方法的流程图;
图5是本申请一个示例性实施例提供的对音素序列进行缩放操作的示意图;
图6是本申请一个示例性实施例提供的训练得到音素视素转换模型的示意图;
图7是本申请再一个示例性实施例提供的面部动画生成方法的流程图;
图8是本申请一个示例性实施例提供的面部动画生成方法的方案整体流程图;
图9是本申请一个示例性实施例提供的面部动画生成装置的结构框图;
图10是本申请一个示例性实施例提供的服务器的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
相关技术中,通常可以模拟端到端生成的方法,将音频数据和三维(3-Dimensional,3D)面部数据作为训练数据,借助训练数据训练得到的音频—面部转换模型对待转换的音频数据进行分析,从而确定经过该转换的音频数据进行转换后的面部数据。然而在上述过程中,虽然音频—面部转换模型能够较准确地得到转换后的面部数据,但是转换后的面部数据基本以多边形面片(mesh)作为表达,若需要将转换后的面部数据应用在具体的面部动画上,需要经过形变迁移(Deformation Transfer)等步骤才能实现应用过程,然而形变迁移等步骤对于转换后的面部数据的效果损失是较大的,无法较好地应用在面部生成动画中。
在本申请实施例中,提供了一种面部动画生成方法,能够考虑音频数据中多个音素数据之间的音素关联关系以得到视素系数组,通过视素系数组调整对应的候选视素数据并生成随音频数据变化且更具有真实性的面部动画。针对本申请的面部动画生成方法,在应用时包括游戏动画生成场景、虚拟对象生成场景、面部动画生成场景等多种动画生成场景中的至少一种。值得注意的是,上述应用场景仅为示意性的举例,本实施例提供的面部动画生成方法还可以应用于其他场景中,本申请实施例对此不加以限定。
需要进行说明的是,本申请在收集用户的相关数据之前以及在收集用户的相关数据的过程中,都可以显示提示界面、弹窗或输出语音提示信息,该提示界面、弹窗或语音提示信息用于提示用户当前正在搜集其相关数据,使得本申请仅仅在获取到用户对该提示界面或者弹窗发出的确认操作后,才开始执行获取用户相关数据的相关步骤,否则(即未获取到用户对该提示界面或者弹窗发出的确认操作时),结束获取用户相关数据的相关步骤,即不获取用户的相关数据。换句话说,本申请所采集的所有用户数据都是在用户同意并授权的情况下进行采集的,且相关用户数据的收集、使用和处理需要遵守相关地区的相关法律法规和标准。
其次,对本申请实施例中涉及的实施环境进行说明,本申请实施例提供的面部动画生成方法可以由终端单独执行实现,也可以由服务器执行实现,或者由终端和服务器通过数据交互实现,本申请实施例对此不加以限定。可选地,以终端和服务器交互执行面部动画生成方法为例进行说明。
示意性的,请参考图1,该实施环境中涉及终端110、服务器120,终端110和服务器120之间通过通信网络130连接。
在一些实施例中,终端110中安装有具有音频功能的应用程序。在一些实施例中,终端110用于向服务器120发送音频数据,音频数据用于表征文本内容对应的发音音频。例如:音频数据为使用对象A阅读一段文本内容而生成的阅读音频对应的数据,则音频数据对应的文本内容为阅读的一段文本内容;和/或,音频数据为使用对象A发出的歌曲演唱音频对应的数据,则音频数据对应的文本内容为歌曲的歌词等。
服务器120在接收到音频数据后,基于音频数据获取与文本内容对应的多个音素数据。其中,音素数据是以音频帧为单位对音频数据进行音素拆分后得到的数据。
服务器120除得到多个音素数据外,还会获取多个候选视素数据,候选视素数据用于表征音素数据的基准视觉表现。
此外,服务器120还会基于多个音素数据之间的音素关联关系获取多个音素数据分别对应的视素系数组。示意性的,将音素数据通过预先训练的音素视素转换模型得到视素系数组;或者,根据相邻两个音频帧之间音素的力度情况获取视素系数组等。其中,视素系数组用于调整音素数据与候选视素数据之间的转换关系。
在一些实施例中,对于任意一个音素数据而言,服务器120在确定多个候选视素数据,以及与多个音素数据分别对应的视素系数组后,以视素系数组对候选视素数据进行加权融合,并得到与该音素数据对应的视素数据,进而基于视素数据生成面部动画。该面部动画不再是简单依赖固定的候选视素数据得到的动画,而是根据多个音素之间的音素关联关系确定的动画,能够更平滑且真实地反映音频数据对应的口型变化情况,提高面部动画的真实性。
在一个可选的实施例中,服务器120将生成的面部动画发送至终端110,终端110通过将面部动画渲染至屏幕的方法实现显示面部动画的过程。
值得注意的是,上述终端包括但不限于手机、平板电脑、便携式膝上笔记本电脑、智能语音交互设备、智能家电、车载终端等移动终端,也可以实现为台式电脑等;上述服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
其中,云技术(Cloud technology)是指在广域网或局域网内将硬件、应用程序、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。
在一些实施例中,上述服务器还可以实现为区块链系统中的节点。
结合上述名词简介和应用场景,对本申请提供的面部动画生成方法进行说明,以该方法应用于服务器为例进行说明,如图2所示,该方法包括如下步骤210至步骤250。
步骤210,获取音频数据。
示意性的,音频数据是数字化的音频内容,是多媒体数据中的一种重要形式。可选地,音频数据是以动态影像专家压缩标准音频层面3(Moving Picture Experts GroupAudio Layer 3,MP3)形式压缩存储的数据;或者,音频数据是以微软媒体音频(WindowsMedia Audio,WMA)形式存储的数据等。
其中,音频数据用于表征文本内容对应的发音音频。
示意性的,文本内容用于表示由文本组成的内容,实现为词语、句子、文章、歌词、台词等多种形式。相应地,文本内容对应的发音音频用于表示根据文本内容得到的音频,该发音音频通过音频数据进行表示。
可选地,音频数据根据文本内容的形式可能存在变化。例如:文本内容为词语、句子、文章、歌词、台词等内容时,音频数据用于表征阅读该词语发出的发音音频;或者,文本内容为歌词,音频数据用于表征演唱该歌词发出的发音音频;或者,文本内容为台词,音频数据用于表征朗诵该台词发出的发音音频等。
在一些实施例中,音频数据实现为使用对象发出的音频对应的数据。示意性的,将人物A阅读文本内容发出的音频对应的数据作为音频数据。
在一些实施例中,发音音频还可以实现为合成的音频。示意性的,应用程序A具有文字转语音的功能,向应用程序A输入文本内容,应用程序A根据该文本内容自动生成音频数据等。
可选地,文本内容既可以是预先给定的内容,还可以是基于音频数据确定的内容。
示意性的,音频数据用于表征使用对象A与使用对象B的对话音频,对使用对象A与使用对象B的交谈对话音频进行文本分析,确定与该对话音频对应的文本内容等。例如:将使用对象A与使用对象B通过语音转文字的方式获取得到文本内容等。
步骤220,基于音频数据,获取与文本内容对应的多个音素数据。
音素是根据语音的自然属性划分出来的最小语音单位,通常依据音节里的发音动作进行分析,一个发音动作对应一个音素。也即:音节在语音学上指由一个或数个音素组成的语音结构基本单位,音素是最小的语音单位。
示意性的,在中文语境下包括32个音素,其中包括10个元音以及22个辅音,音素组成为音节,实现为中文汉字的读音形式等。例如:“普通”由两个音节组成,包括“pu”和“tong”;“普通”由五个音素组成,包括“p”、“t”、“o”和“ng”。
示意性的,在英文语境下包括48个音素,其中包括20个元音以及28个辅音,音素组成为音标,实现为英文单词的读音形式等。
可选地,音素既可以通过上述语言的形式进行划分,还可以通过设定的形式进行划分。示意性的,为避免音素过多,通过简化合并的方式将读音相似的音素映射为一个设定音素等。
在一些实施例中,在获取得到音频数据以及与音频数据对应的文本内容后,基于音频数据,获取音频数据对应的文本内容所对应的多个音素数据。
其中,音素数据是以音频帧为单位对音频数据进行音素拆分后得到的数据。
示意性的,根据音频数据所表征的对文本内容的发音情况,以音频帧为单位对音频数据进行音素拆分,从而得到多个音素数据,多个音素数据中至少一个音素数据对应组成文本内容的文本。
其中,音频帧用于指示划分音频数据的单位,代指划分音频数据的频率,可以实现为预先设定的数值。基于音频数据所表征的是时间维度上连续的音频情况,因此基于音频数据所得到的多个音素数据具有时序上的关联关系。
示意性的,音素是通过设定的形式进行划分得到的内容。文本内容实现为一个英文单词“hello”,对应的音频数据表征了阅读该英文单词时的发音情况,以音频帧为单位,基于该音频数据获取与“hello”对应的多个音素数据包括“HH”、“HH”、“EH”、“EH”、“L”、“OW”、“OW”和“OW”。其中存在相同音素是因为音频帧的划分粒度较小,从而导致音素并未存在变化。
步骤230,获取多个候选视素数据。
其中,候选视素数据是音素数据对应的基准视觉表现。
示意性的,音素数据与候选视素数据之间存在对应关系。可选地,多个候选视素数据是基于音素视素映射关系确定的数据。
其中,音素视素映射关系用于存储音素数据与候选视素数据之间的对应情况。也即:音素视素映射关系中存储有多个对应关系,对应关系用于表示音素数据与候选视素数据之间的对应情况。
其中,候选视素数据是音素数据对应的基准视觉表现。如图3所示,为一个示例性的音素视素映射关系示意图。音素数据311(中立脸)对应候选视素数据312、音素数据321对应候选视素数据322、音素数据331对应候选视素数据332等。
例如:音素数据311表示中立脸,对应的候选视素数据312表示未进行发音时静态口型对应的视觉表现;音素数据321表示“AA”、“AH”等音素,对应的候选视素数据322表示对“AA”、“AH”等音素进行发音时的视觉表现,如:口型呈现为“张大”的状态;音素数据331表示“AE”、“EY”等音素,对应的候选视素数据332表示对“AE”、“EY”等音素进行发音时的视觉表现,如:口型呈现为“微微张开”的状态;音素数据341表示“M”、“B”等音素,对应的候选视素数据342表示对“M”、“B”等音素进行发音时的视觉表现,如:口型呈现为“微微抿嘴”的状态等。
值得注意的是,图3所示的候选视素数据仅为示意性的举例,本申请实施例对此不加以限定。
其中,图3所示的视素用于表示对候选视素数据进行表示的标识内容。如:候选视素数据312对应的视素为“SIL”,表示候选视素数据312通过“SIL”进行标识;或者,候选视素数据322对应的视素为“AA”,表示候选视素数据322通过“AA”进行标识等。
在一些实施例中,获取音素视素映射关系的目的在于确定音素视素映射关系中所涉及的候选视素数据,以便后续对多个候选视素数据进行加权融合过程。
示意性的,音素视素映射关系是预先设定的关系,确定音素视素映射关系中所包括的候选视素数据(如图3中示出的10个候选视素数据),考虑到多个音素数据之间存在相互影响的关系,因此一个音素数据对应的视素数据通常实现为多个候选视素数据的融合效果,故在确定音素数据对应的候选视素数据时,对音素视素映射关系下的多个候选视素数据进行调整后进行融合操作,以更准确地分析多个音素数据。
在一些实施例中,在基于音频数据和文本内容得到多个音素数据后,借助音素视素映射关系确定与多个音素数据对应的候选视素数据。
例如:当音素数据实现为“中立脸”时,该音素数据对应的候选视素数据实现为如图3所示的候选视素数据312;当音素数据实现为“AA”时,该音素数据对应的候选视素数据实现为如图3所示的候选视素数据322等。
步骤240,基于多个音素数据之间的音素关联关系,获取多个音素数据分别对应的视素系数组。
示意性的,除获取与文本内容对应的多个音素数据外,对多个音素数据之间的音素关联关系进行分析。
其中,音素关联关系用于指示至少两个相邻音素数据之间的音素变化情况。示意性的,基于多个音素数据是以音频帧为单位对音频数据进行划分后得到的数据,因此多个音素数据在时间维度上存在连续关系。例如:“hello”对应的多个音素数据中的第一个音素数据“HH”和第二个音素数据“HH”的音频帧在时间维度上是相邻的。
基于时间维度上多个相邻音素数据之间的音素变化情况,获取视素系数组。
其中,视素系数组用于调整音素数据与候选视素数据之间的转换关系。
在一些实施例中,视素系数组中包括多个视素系数视素系数即用于调整音素数据与候选视素数据之间的转换关系。
示意性的,虽然音素数据分别有与之对应的候选视素数据,但是音素数据在时间维度上的变化情况通常会影响候选视素数据在时间维度上的变化情况。例如:相邻至少两个音素数据之间的重音变化会影响对应的相邻两个候选视素数据的变化幅度情况;或者,相邻至少两个音素数据之间的速度变化会影响对应的相邻两个候选视素数据的变化频率等。
步骤250,以各个音素数据分别对应的视素系数组对多个候选视素数据进行加权融合,并基于融合后得到的视素数据生成面部动画。
可选地,在获取得到视素系数组后,基于视素系数组中多个视素系数与候选视素数据之间的对应关系,通过视素系数对对应的候选视素数据进行调整,从而得到视素数据。
其中,视素数据即用于表征在音频数据的条件下,通过音频数据对应的音素数据之间的音素变化关系对固定的候选视素数据进行调整后的结果,调整后得到的视素数据能够更准确且真实地反映随音频数据变化的视素变化情况。
在一个可选的实施例中,一个音素数据对应一个视素系数,在通过视素系数调整候选视素数据时,根据音素视素映射关系确定与该音素数据对应的候选视素数据,进而通过该视素系数调整该候选视素数据,得到视素数据。
在一个可选的实施例中,一个音素数据对应多个视素系数,多个视素系数与多个候选视素数据一一对应。
可选地,对于多个音素数据中的第一音素数据,确定第一音素数据对应的视素系数组。
其中,视素系数组中的多个视素系数与多个候选视素数据一一对应。
示意性的,第一音素数据对应的视素系数组中包括2个视素系数,其中视素系数1对应候选视素数据A;视素系数2对应候选视素数据B。
可选地,基于视素系数与候选视素数据之间的对应关系,以视素系数对候选视素数据进行调整,得到与多个候选视素数据分别对应的调整结果。
示意性的,基于视素系数与候选视素数据之间的对应关系,确定以视素系数1对候选视素数据A进行调整,得到对候选视素数据A调整后得到的视素数据a,视素数据a即为对候选视素数据A调整后得到的调整结果;同理,基于视素系数与候选视素数据之间的对应关系,确定以视素系数2对候选视素数据B进行调整,得到对候选视素数据B调整后得到的视素数据b,视素数据b即为对候选视素数据B调整后得到的调整结果等。
可选地,对多个调整结果进行加权融合,得到与第一音素数据对应的视素数据,并得到与多个音素数据分别对应的视素数据。
示意性的,在对第一音素数据下对应的多个候选视素数据调整后得到多个调整结果,对多个调整结果进行加权融合。例如:将对候选视素数据A调整后得到的视素数据a和对候选视素数据B调整后得到的视素数据b进行加权融合后,得到与第一音素数据对应的视素数据。
在一些实施例中,第一音素数据为多个音素数据中的任意一个音素数据,基于上述对第一音素数据进行分析的方式对多个音素数据分别进行分析,从而得到与多个音素数据分别对应的视素数据。
示意性的,确定多个音素数据分别对应的多个候选视素数据,并确定多个音素数据分别对应的视素系数组,基于视素系数组中多个视素系数与候选视素数据之间的对应关系,以视素系数组中的多个视素系数对对应的候选视素数据进行加权融合,从而得到与多个音素数据分别对应的视素数据。
可选地,基于多个音素数据分别对应的视素数据生成面部动画。
在一个可选的实施例中,获取与多个音素数据分别对应的视素数据;依照多个音素数据在时间维度上的排列顺序,将多个音素数据分别对应的视素数据组合后生成面部动画。
可选地,基于时间维度上多个音素数据之间的关系,确定与多个音素数据分别对应的视素数据,将多个视素数据依照时间维度上的时序关系进行组合,从而生成面部动画。
示意性的,候选视素数据表征的是与音素数据对应的基准口型动画,调整后得到的视素数据是基于音素数据之间的音素关联关系调整后得到的口型动画,依照多个音素数据在时间维度上的时序关系,将多个口型动画进行组合,生成与口型变化相关的面部动画。
示意性的,候选视素数据表征的是音素数据对应的基准面部肌肉动画,调整后得到的视素数据是基于音素数据之间的音素关联关系调整后得到的面部肌肉动画,依照多个音素数据在时间维度上的时序关系,将多个面部肌肉动画进行组合,生成与面部肌肉变化相关的面部动画等。
值得注意的是,以上仅为示意性的举例,本申请实施例对此不加以限定。
综上所述,在获取得到用于表征文本内容对应的发音音频的音频数据后,基于音频数据获取与文本内容对应的多个音素数据,并获取多个候选视素数据;进而基于多个音素数据之间的音素关联关系获取视素系数组,从而以各个音素数据分别对应的视素系数组对多个候选视素数据进行加权融合。不再简单依赖表示基准视觉表现的候选视素数据组合得到面部动画,而是考虑音频数据中多个音素数据之间的音素关联关系,从而得到用于随音频数据变化而变化的视素系数组,以灵活确定的视素系数组调整音素数据与候选视素数据之间的转换关系,并基于融合后得到的视素数据生成面部动画,有效在提高面部动画随音频数据变化真实性的基础上,通过音频数据更高效地实现动画生成过程,避免额外引入表情迁移等步骤的低效问题,提升动画生成效率。
在一个可选的实施例中,通过预先训练的音素视素转换模型对音素数据之间的音素关联关系进行回归分析,得到与音素数据对应的视素系数。示意性的,如图4所示,上述图2所示出的步骤240还可以实现为如下步骤410至步骤430。
步骤410,对多个音素数据分别进行独热编码,得到与多个音素数据分别对应的独热编码值。
独热编码即One Hot Encoding,又称一位有效编码,是将类别变量转换为机器学习算法中容易处理的一种形式,可以用来处理非连续(离散)特征,使得数据变为稀疏形式。
考虑到音素视素映射关系中音素数据的有限性,采用独热编码方法对多个音素数据分别进行处理,从而得到与多个音素数据分别对应的独热编码值。
示意性的,如图3所示,在音素视素映射关系中包括40个音素数据,如:SIL、AA、AH、AO、AW、HH等。基于音素数据的有限性,可以采用至少40位的编码形式对音素视素映射关系中的40个音素数据进行表示,从而区别音素视素映射关系中的40个音素数据。
可选地,基于对音素视素映射关系中多个音素数据的编码情况,确定对音频数据对应的多个音素数据分别进行独热编码后得到的多个独热编码值。
示意性的,为便于理解,以音素视素映射关系中包括4个音素数据为例进行说明,4个音素数据包括音素数据1、音素数据2、音素数据3以及音素数据4;采用独热编码方法对4个音素数据进行独热编码,每个音素数据都只存在一位有效位,如:音素数据1的编码为0001、音素数据2的编码为0010、音素数据3的编码为0100、音素数据4的编码为1000。可选地,以音频帧为单位对音频数据进行音素划分后得到的多个音素数据依次为:音素数据3、音素数据1和音素数据4,则对多个音素数据分别进行独热编码,得到与多个音素数据分别对应的独热编码值分别为0100、0001、1000。
在一些实施例中,综合多个音素数据分别对应的独热编码值,得到音素数据序列对应的独热编码矩阵。
示意性的,在得到音频数据中多个音素数据分别对应的独热编码值0100、0001、1000后,综合0100、0001以及1000得到如下所示的独热编码矩阵。
也即:基于N个音频数据,能够得到N*4的独热编码矩阵,其中,N代表音频数据的数量;4代表音素视素映射关系中音素数据的总数量,用于表示独热编码值的位数。
值得注意的是,以上仅为示意性的举例,本申请实施例对此不加以限定。
在一个可选的实施例中,以独热编码矩阵分析多个音素数据之间的音素关联关系,并获取视素系数。
示意性的,在得到独热编码矩阵后,确定独热编码矩阵中相邻至少两列之间的数值变化情况,该数值变化情况用于反映相邻至少两个音素数据之间的音素关联关系;基于数值变化情况获取得到视素系数。
可选地,如下步骤420至步骤430所示,介绍了根据相邻至少两列之间的数值变化情况获取得到视素系数的过程。
步骤420,以音频帧为单位,采用预设尺寸的滑动窗口对独热编码矩阵进行滑动分析,确定位于滑动窗口中间位置的至少一个音频帧对应的音素数据。
示意性的,在得到独热编码矩阵后,基于音素数据是以音频帧为单位划分得到的数据内容,因此可以以音频帧为单位对独热编码矩阵进行分析。
如上述独热编码矩阵所示,基于该独热编码矩阵中不同的列代表不同的音频数据,因此在以音频帧为单位,采用预设尺寸的滑动窗口对独热编码矩阵进行滑动分析时,将预设尺寸的滑动窗口以左右滑动的形式进行滑动过程;同理,若独热编码矩阵中不同的行代表不同的音频数据,在以音频帧为单位采用预设尺寸的滑动窗口对独热编码矩阵进行滑动分析时,将预设尺寸的滑动窗口以上下滑动的形式进行滑动过程。
预设尺寸为预先设定的滑动窗口尺寸。可选地,预设尺寸包括滑动窗口的长度和宽度,例如:预设尺寸为129*40;或者,预设尺寸为129*129;或者,预设尺寸为40*100等。
滑动窗口中间位置用于表示滑动窗口的中心位置,与滑动窗口的预设尺寸以及滑动窗口的滑动方向相关。
可选地,若滑动窗口的滑动方向为左右移动,则滑动窗口中间位置用于表示滑动窗口的长度中心位置。例如:滑动窗口中间位置用于表示滑动窗口的长度中心位置,则若滑动窗口的预设尺寸为129*40,滑动窗口的中间位置为65*40的矩形区域,若滑动窗口的预设尺寸为40*100,滑动窗口的中间位置为20*40和21*40的矩形区域等。
可选地,若滑动窗口的滑动方向为上下移动,则滑动窗口中间位置用于表示滑动窗口的宽度中心位置。例如:滑动窗口中间位置用于表示滑动窗口的长度宽度位置,则若滑动窗口的预设尺寸为129*40,滑动窗口的中间位置为129*20和129*21的矩形区域,若滑动窗口的预设尺寸为40*100,滑动窗口的中间位置为40*50和40*51的矩形区域等。
值得注意的是,以上仅为示意性的举例,本申请实施例对此不加以限定。
在一个可选的实施例中,以不同的列代表不同的音频数据为例进行说明,不同的列对应不同的音频帧,相邻两列代表相邻两个音频帧对应的音频数据。
示意性的,在以音频帧为单位采用预设尺寸的滑动窗口对独热编码矩阵进行滑动分析时,确定位于滑动窗口中间位置的至少一个音频帧对应的音素数据。
例如:预设尺寸的滑动窗口为129*40的滑动窗口,独热编码矩阵的维度为N*40,如N为33,在以预设尺寸的滑动窗口对独热编码矩阵进行滑动分析的过程中,可以首先以0对独热编码矩阵进行填充,得到与预设尺寸相同的矩阵形式,便于滑动分析过程。
在一些实施例中,在以预设尺寸的滑动窗口对独热编码矩阵进行滑动分析的过程中,将滑动窗口的最后一个音频帧(如:若从左往右对滑动窗口进行移动,则滑动窗口的最后一个音频帧是最右侧的音频帧;若从右往左对滑动窗口进行移动,则滑动窗口的最后一个音频帧是最左侧的音频帧)位于独热编码矩阵的第一列,从而能够对独热编码矩阵直接开始分析过程。
在一些实施例中,在以预设尺寸的滑动窗口对独热编码矩阵进行滑动分析的过程中,将滑动窗口的中间位置位于独热编码矩阵的第一列,从而能够对独热编码矩阵直接开始分析过程等。
值得注意的是,以上仅为示意性的举例,本申请实施例对此不加以限定。
步骤430,通过预先训练的音素视素转换模型对至少一个音频帧对应的音素数据进行音素视素回归预测,得到多个音素数据分别对应的视素系数组。
可选地,视素系数组中包括多个视素系数,多个视素系数与多个候选视素数据一一对应。
其中,音素视素转换模型用于根据多个音素数据之间的音素关联关系确定用于调整候选视素数据的视素系数。音素视素回归预测用于表示对音素数据进行分析并确定视素系数的回归预测方法。
示意性的,在确定位于滑动窗口中间位置的至少一个音频帧对应的音素数据后,获取音素视素转换模型,该音素视素转换模型是基于训练得到的模型,已经较好地学习到前后音素数据之间的关联性,例如:音素视素转换模型已经较好地学习到协同发音等音素数据的变化情况。
在一些实施例中,音素视素转换模型是通过音素视素映射关系训练得到的模型,该音素视素转换模型在针对音素数据进行的模型预测阶段中,会以该音素数据为分析对象,并以音素视素映射关系中包括的多个候选视素数据为对比分析对象,从而预测该音素数据与多个候选视素数据之间的对应关系,并得到与该音素数据对应的多个视素系数。
可选地,以任意一个音素数据为例,在通过音素视素转换模型对该音素数据进行分析时,分析该音素数据与音素视素映射关系中包括的多个候选视素数据之间分别对应的相似度结果,并将相似度结果作为与候选视素数据对应的视素系数,从而得到与多个候选视素数据分别对应的视素系数,该多个视素系数是与该音素数据对应的系数。
可选地,以任意一个音素数据为例,在通过音素视素转换模型对该音素数据进行分析时,通过音素视素转换模型中的编码器将音素数据转换为音素特征;之后,通过音素视素转换模型中的解码器将音素数据解码为与音素视素映射关系中包括的多个候选视素数据分别对应的视素系数,该多个视素系数是与该音素数据对应的系数等。
在一个可选的实施例中,对训练得到音素视素转换模型的过程进行如下介绍。
可选地,获取多个样本序列对。
其中,样本序列对由一个样本音素序列和对应的一个样本视素序列组成。示意性的,样本序列对是用于训练得到音素视素转换模型的数据内容。样本序列对既可以实现为一个样本序列对,也可以实现为多个样本序列对。
样本音素序列中包括至少一个样本音素数据,用于表示一段样本音频对应的音素数据序列;样本视素序列中包括至少一个样本视素数据,样本视素序列与样本音素序列在时间维度上相对应,因此至少一个样本音素数据与至少一个样本视素数据在时间维度上相对应。
其中,样本视素序列用于表示发出样本音素序列的视觉表现。
可选地,通过样本序列对训练音素视素模型并得到音素视素转换模型。
其中,音素视素模型为待训练的模型。
在一些实施例中,基于样本序列对中的多个样本音素数据得到样本独热编码矩阵。
示意性的,采用获取得到与多个音素数据对应的独热编码矩阵的方法,对样本序列对中的多个样本音素数据进行独热编码操作,得到与样本序列对对应的样本独热编码矩阵。
可选地,以音频帧为单位采用滑动窗口对样本独热编码矩阵进行滑动分析,确定位于滑动窗口中间位置的至少两个音频帧对应的样本音素数据。
示意性的,在通过滑动窗口对样本独热编码矩阵进行滑动分析时,为了使得音素视素模型学习到多个音素数据之间的音素关联关系,在滑动分析过程中确定位于滑动窗口中间位置的至少两个音频帧,例如:确定位于滑动窗口中间位置的三个音频帧;或者,确定位于滑动窗口中间位置的四个音频帧等。
可选地,在确定位于滑动窗口中间位置的至少两个音频帧后,确定该至少两个音频帧分别对应的样本音素数据。
在一些实施例中,基于样本序列对确定与至少两个样本音素数据分别对应的样本视素数据。
示意性的,至少两个样本音素数据分别存在与之对应的样本视素数据,在确定位于滑动窗口中间位置的至少两个样本音素数据后,确定与至少两个样本音素数据分别对应的样本视素数据。
可选地,对与至少两个样本音素数据分别对应的样本视素数据进行回归预测,得到与至少两个样本视素数据分别对应的样本视素系数组。
其中,样本视素系数组中包括多个样本视素系数,多个样本视素系数与多个候选视素数据一一对应。
示意性的,在确定位于滑动窗口中间位置的至少两个样本音素数据分别对应的样本视素数据后,确定至少两个样本视素数据。
基于样本音素数据和样本视素数据之间的对应关系,以及至少两个样本音素数据在时间维度上的音素关联关系,确定与至少两个样本视素数据分别对应的样本视素系数。
在一些实施例中,基于音素视素映射关系确定与至少两个样本音素数据分别对应的样本视素数据,在时间维度的基础上,确定与至少两个样本音素数据分别对应的样本视素数据和与至少两个样本音素数据分别对应的样本视素数据之间的视素差异,根据该视素差异确定与至少两个样本视素数据分别对应的样本视素系数。
在一些实施例中,基于至少两个样本视素系数组中相同候选视素数据对应的样本视素系数之间的系数关联关系,训练音素视素模型,并得到音素视素转换模型。
示意性的,在得到与至少两个样本视素数据分别对应的样本视素系数后,分析至少两个音素数据之间的变化和对应样本视素系数之间的系数变化情况(系数关联关系),从而根据伴随变化情况训练音素视素模型,并得到音素视素转换模型。
示意性的,至少两个样本视素系数组与至少两个音素数据分别对应,音素数据a对应的样本视素系数组为样本视素系数组A,音素数据b对应的样本视素系数组为样本视素系数组B。样本视素系数组A中包括与候选视素数据1对应的样本视素系数A1和与候选视素数据2对应的样本视素系数A2;样本视素系数组B中包括与候选视素数据1对应的样本视素系数B1和与候选视素数据2对应的样本视素系数B2。
在确定相同候选视素数据对应的样本视素系数之间的系数关联关系时,分别确定不同候选视素数据对应的样本视素系数之间的系数关联关系。例如:确定候选视素数据1对应的样本视素系数之间的系数关联关系时,确定至少两个音素数据之间的变化,以及确定候选视素系数A1至样本视素系数B1之间的变化,从而基于两个变化确定与候选视素数据1对应的系数关联关系;同理,确定候选视素数据2对应的样本视素系数之间的系数关联关系时,确定至少两个音素数据之间的变化,以及确定候选视素系数A2至样本视素系数B2之间的变化,从而基于两个变化确定与候选视素数据2对应的系数关联关系等。
值得注意的是,以上仅为示意性的举例,本申请实施例对此不加以限定。
在一个可选的实施例中,考虑到语速快慢对于音素数据变化的影响,在确定的样本序列对的基础上,可以采用数据增强方法扩充样本序列对的数量,并以扩充后的样本序列对对音素视素模型进行训练过程。
可选地,对于多个样本序列对中的第一样本序列对,确定第一样本序列对中的第一样本音素序列和第一样本视素序列。
其中,第一样本序列对是多个样本序列对中的任意一个样本序列对。
可选地,在时间维度上以预设缩放比例对第一样本音素序列进行缩放操作,得到第二样本音素序列。
其中,时间维度用于表示音频数据的时序变化维度;缩放操作用于表示对样本音素序列进行序列长度变化操作。
示意性的,如图5所示,为对音素序列进行缩放操作的示意图。音素序列510用于表示音频数据“OK”对应的多个音素数据,即:第一样本音素序列,其中包括5个音素数据“ow”和3个音素数据“k”,在时间维度上以预设缩放比例对第一样本音素序列进行缩放操作,将整个音素序列510变短,相当于变成了语速更快且音频更短的数据,但是音频数据对应的文本内容并没有变化,这样就达到了数据增强的效果,并得到对第一样本音素序列进行缩放操作后的第二样本音素序列。
可选地,在对音素序列510进行缩放操作后,在去掉的音素位置上补0,由于0在转换成独热编码值时仍然为0,因此不会对音素数据的语义产生影响。
在一些实施例中,以预设缩放比例对第一样本视素序列进行缩放操作,得到第二样本视素序列。
可选地,基于第二样本音素序列和第二样本视素序列得到第二样本序列对,该第二样本序列对体现了对第一样本序列对进行数据增强的效果,且通过不同的缩放比例能够基于一个第一样本序列对得到多个第二样本序列对,实现扩充样本序列对的过程。
其中,第二样本序列对用于对音素视素模型进行训练。
示意性的,基于第二样本序列对的训练作用,能够通过有限的第一样本序列对实现扩充样本序列对的目的,从而实现对音素视素模型进行更全面训练的目的,提高音素视素模型的学习能力,得到鲁棒性更强的音素视素转换模型。
在一个可选的实施例中,在训练得到音素视素转换模型的过程中,通过计算的口型一致性损失对音素视素转换模型进行训练。
示意性的,如图6所示,在训练得到音素视素转换模型的过程中,提出一个损失函数帮助进行模型训练过程,该损失函数计算得到的损失值可以称为口型一致性损失。
由于音素视素转换模型的输入是音素数据,根据音素数据与候选视素数据之间的音素视素映射关系610,可以得到当前音素数据所对应的候选视素数据(口型),根据时序上的关系,也可以得到当前音频帧中音素数据对应的输出口型,口型的表达可以是人物的mesh,也可以是相对应的控制器系数,口型一致性损失的计算公式如下所示。
loss一致性=||visemeinput-visemeoutput||
其中,Loss一致性用于表示一致性损失;visemeinput用于表示输入的视素数据(即:根据音素视素映射关系确定的候选视素数据);visemeoutput用于表示输出的视素数据(即:音素视素模型620预测的视素数据)。
其中输入的视素数据和输出的视素数据之间通过最小平方误差(L2)进行一个约束,也即:回归过程中产生的损失通过L2进行表示。最终的损失函数为:
loss=α*L2loss+β*||visemeinput-visemeoutput||
其中,α和β为超参数。
使用上述流程,通过滑动窗口构造出的音素矩阵可以回归出平滑、连续的视素数据曲线,最后生成口型动画。
值得注意的是,以上仅为示意性的举例,本申请实施例对此不加以限定。
综上所述,在以确定的音频数据生成面部动画的过程中,不再简单依赖表示基准视觉表现的候选视素数据组合得到面部动画,而是考虑音频数据中多个音素数据之间的音素关联关系,从而得到随音频数据变化而变化的视素系数组,以灵活确定视素系数组调整音素数据与候选视素数据之间的转换关系,并基于融合后得到的视素数据生成面部动画,有效在提高面部动画随音频数据变化真实性的基础上,通过音频数据更高效地实现动画生成过程,避免额外引入表情迁移等步骤的低效问题,提升动画生成效率。
在本申请实施例中,介绍了通过音素数据之间的音素关联关系获取得到视素系数的过程。在确定多个音素数据后,对多个音素数据分别进行独热编码,得到与多个音素数据分别对应的独热编码值,之后以音频帧为单位对独热编码矩阵进行滑动分析,并通过音素视素回归预测模型得到用于调整候选视素数据的视素系数组,避免简单将候选视素数据排列组合得到真实性较差的面部动画,通过视素系数实现更灵活生成面部动画的过程,提高面部动画的真实性。
在一个可选的实施例中,在通过视素系数对候选视素数据进行调整后,以调整后得到的视素数据生成面部动画。示意性的,如图7所示,上述图2所示出的实施例还可以实现为如下步骤710至步骤760。
步骤710,获取音频数据。
其中,音频数据用于表征文本内容对应的发音音频。
示意性的,音频数据具有与之对应的文本内容,综合音频模态的音频数据以及文本模态的文本内容共同对音频数据进行分析。
步骤710已经在上述步骤210中进行了阐述,在此不再赘述。
步骤720,获取与文本内容对应的字符串序列。
其中,字符串序列中包括多个字符串。示意性的,文本内容既可以实现为中文文本内容,也可以实现为外文文本内容,如:英文文本内容、德文文本内容等。
其中,字符串用于表征组成文本内容的单位文本。
示意性的,文本内容实现为中文文本内容时,字符串实现为组成中文文本内容的汉字文本,即:单位文本为汉字文本;或者,文本内容实现为英文文本内容时,字符串实现为组成英文文本内容的单词文本或字母文本,即:单位文本为单词文本或字母文本等。
可选地,在确定音频内容以及与音频内容对应的文本内容后,在时间维度对组成该文本内容的字符串进行分析,从而得到字符串序列。例如:音频内容为阅读文本内容A而生成的音频,文本内容A为:今天天气很晴朗,则文本内容A的字符串序列可以实现为“今”、“天”、“天”、“气”、“很”、“晴”、“朗”。
步骤730,在时间维度上将音频数据与字符串序列进行对齐操作,得到与文本内容对应的多个音素数据。
可选地,在得到音频数据以及文本内容对应的字符串序列后,通过蒙特利尔强制矫正器(Montreal Forced Aligner,MFA)对音频数据与字符串序列进行对齐操作,从而基于该音频数据得到与文本内容对应的多个音素数据。
基于音素数据是基于音频数据得到的内容,因此音频数据所表征的语速快慢会影响到多个音素数据的分布情况。例如:当音频数据所表征的语速较快时,多个音素数据的分布较为密集;当音频数据所表征的语速较慢时,多个音素数据的分布较为松散等。
在一个可选的实施例中,以音频帧为单位对音频数据进行切分,在将音频数据与字符串序列进行对齐操作时,将音频帧与字符串序列进行对齐操作,从而确定每个音频帧分别对应的音素数据。
可选地,在时间维度上确定音频数据对应的多个音频帧。
示意性的,音频帧是预先设定的音频数据划分粒度,以音频帧为单位对音频数据进行划分,从而确定多个音频帧。
可选地,基于音频数据所表征的文本内容,将字符串序列对齐至音频数据上。
示意性的,文本内容在音频数据中所表征的时间跨度是固定的,在确定多个音频帧后,将多个音频帧和文本内容对应的字符串序列进行对齐,从而实现将字符串序列对齐至音频数据上的过程。
确定多个音频帧分别对应的音素数据,得到与文本内容对应的多个音素数据。
示意性的,基于字符串序列对齐至音频数据的过程,确定音频数据中多个音频帧分别对应的对应情况,由于音频帧的划分粒度通常较小,一个字符串通常会与多个相邻音频帧之间存在对齐关系,字符串的表达实现为音素数据形式,则在进行对齐过程后,确定多个音频帧分别对应的音素数据,从而得到与文本内容对应的多个音素数据。
步骤740,获取多个候选视素数据。
其中,候选视素数据是音素数据对应的基准视觉表现。
在一些实施例中,从音素视素映射关系中获取多个候选视素数据。
其中,音素视素映射关系用于存储音素数据与候选视素数据之间的对应情况。
示意性的,获取音素视素映射关系的目的在于确定音素视素映射关系中所涉及的候选视素数据,以便后续对多个候选视素数据进行调整融合过程。
示意性的,步骤与740已经在上述步骤230中进行了介绍,此处不再赘述。
步骤750,基于多个音素数据之间的音素关联关系,获取多个音素数据分别对应的视素系数组。
其中,视素系数组用于调整音素数据与候选视素数据之间的转换关系。
示意性的,步骤750已经在上述步骤240中进行了介绍,此处不再赘述。
步骤760,以各个音素数据分别对应的视素系数组对多个候选视素数据进行加权融合,并基于融合后得到的视素数据生成面部动画。
在一个可选的实施例中,对于每一个音素数据对应多个视素系数,多个视素系数与多个候选视素数据一一对应。
示意性的,对于任意一个音素数据而言,音素数据对应多个视素系数,且多个视素系数与多个候选视素数据一一对应。
示意性的,在通过视素系数对候选视素数据进行调整时,确定与视素系数对应的候选视素数据,通过该视素系数对该候选视素数据进行调整,并依照调整过程得到该音素数据下与多个候选视素数据分别对应的调整结果,融合该音素数据下的多个调整结果得到与该音素数据对应的视素数据。
例如:共获取得到4个候选视素数据,分别为候选视素数据A、候选视素数据B、候选视素数据C以及候选视素数据D;针对任意一个音素数据1而言,音素数据1对应有4个视素系数,4个视素系数与4个候选视素数据分别对应。示意性的,通过视素系数a对候选视素数据A调整后得到调整结果A',通过视素系数b对候选视素数据B调整后得到调整结果B',通过视素系数c对候选视素数据C调整后得到调整结果C',通过视素系数d对候选视素数据D调整后得到调整结果D',融合调整结果A'、调整结果B'、调整结果C'以及调整结果D'后,得到与音素数据1对应的视素数据。
在一个可选的实施例中,对多个候选视素数据中的第一候选视素数据进行特征提取,得到与第一候选视素数据对应的视素特征表示。
其中,第一候选视素数据是多个候选视素数据中任意一个候选视素数据。可选地,采用特征提取模型对第一候选视素数据进行特征提取,得到与第一候选视素数据对应的视素特征表示。
在一些实施例中,确定多个视素系数组中与第一候选视素数据对应的第一视素系数。
示意性的,从多个视素系数组中确定当前分析的音素数据,并确定该音素数据对应的视素系数组,进而从该视素系数组中确定与该第一候选视素数据对应的第一视素系数。例如:当前分析的音素数据为音素数据1,确定音素数据1对应的视素系数组A,并从视素系数组A中确定与第一候选视素数据对应的第一视素系数。
在一些实施例中,以第一视素系数对视素特征表示进行调整,得到视素调整结果。
示意性的,在确定第一视素系数后,通过该第一视素系数对视素特征表示进行调整。
在一些实施例中,对各个音素数据下的多个视素调整结果进行加权融合,得到与各个音素数据分别对应的视素数据。
示意性的,针对每个音素数据进行上述分析,确定每个音素数据分别对应的多个视素调整结果,并将同一个音素数据下对应的多个视素调整结果进行加权融合,得到与该音素数据对应的视素数据,并得到与各个音素数据分别对应的视素数据。
示意性的,多个音素数据分别有与之对应的视素数据,基于多个音素数据之间的音素关联关系获取的视素系数也与多个音素数据存在对应关系,因此视素数据和视素系数之间通过音素数据确定对应关系。
在一些实施例中,确定与多个视素数据分别对应的视素系数。
示意性的,根据多个音素数据之间的音素关联关系获取每一个音素数据分别对应的视素系数,从而得到与多个视素数据分别对应的视素系数,即:得到多个视素系数。
在一个可选的实施例中,获取音素视素映射关系。
其中,音素视素映射关系用于存储音素数据与候选视素数据之间的对应情况。
在一些实施例中,从音素视素映射关系中获取多个音素数据中与第二音素数据对应的第二候选视素数据。
其中,第二音素数据是多个音素数据中任意一个音素数据,第二候选视素数据是基于音素视素映射关系中音素数据与候选视素数据之间的对应情况确定的候选视素数据。
在一些实施例中,从第二音素数据对应的视素系数组中确定与第二候选视素数据对应的第二视素系数。
示意性的,确定第二音素数据对应的视素系数组,并从中选择与第二候选视素数据对应的第二视素系数。
在一些实施例中,以第二视素系数对第二候选视素数据进行调整,得到与第二音素数据对应的视素数据,并得到与多个音素数据分别对应的视素数据。
示意性的,通过第二音素数据确定对应的第二候选视素数据,进而选择与第二候选视素数据对应的第二视素系数调整该第二候选视素数据,能够在一定程度上减少视素数据的调整流程,适当地降低视素数据的计算量。
可选地,基于上述方法获取得到与多个音素数据分别对应的视素数据。
在一个可选的实施例中,依照多个音素数据在时间维度上的排列顺序,通过多个视素数据生成面部动画。
示意性的,在得到多个调整后得到的视素数据后,基于视素数据与音素数据之间的对应关系,以及音素数据对应的时间序列,将多个视素数据按照时间序列进行排列组合,从而得到流畅度和真实度更高的面部动画。
值得注意的是,以上仅为示意性的举例,本申请实施例对此不加以限定。
综上所述,在以确定的音频数据生成面部动画的过程中,不再简单依赖表示基准视觉表现的候选视素数据组合得到面部动画,而是考虑音频数据中多个音素数据之间的音素关联关系,从而得到随音频数据变化而变化的视素系数组,以灵活确定的视素系数组调整音素数据与候选视素数据之间的转换关系,并基于融合后得到的视素数据生成面部动画,有效在提高面部动画随音频数据变化真实性的基础上,通过音频数据更高效地实现动画生成过程,避免额外引入表情迁移等步骤的低效问题,提升动画生成效率。
在本申请实施例中,介绍了通过视素系数对候选视素数据进行调整后,以调整后得到的视素数据生成面部动画的内容。在基于音素数据之间的音素关联关系确定视素系数组时,可能获取到与多个候选视素数据分别对应的视素系数,从而在对任意一个音素数据进行分析时,以视素系数组对对应的候选视素数据进行调整,并将多个调整结果融合后得到与该音素数据对应的视素数据,该视素数据能够更加全面地将多个候选视素数据予以考虑,基于视素系数表征的权重情况调整多个候选视素数据在该音素数据下的比例,提高视素数据的准确性,进而提升生成的面部动画的真实性。
在一个可选的实施例中,将上述面部动画生成方法称为“一种基于多模态的3D口形动画生成方法”,其中多模态包括音频数据模态和文本内容模态。上述方法可以应用于游戏中的虚拟对象的动画生成场景下,还可以应用于社交中的面部动画生成场景下等。示意性的,面部动画生成方法由以下两个部分组成:(一)对齐部分;(二)预测部分。
(一)对齐部分
对齐部分用于通过音频数据和文本内容这两种模态得到音素序列,以将音素序列作为模型的输入。
示意性的,如图8所示,为面部动画生成方法的方案整体流程图。以音频数据为“hello”对应的发音音频为例,采用MFA强制对齐方法810,将音频数据和文本内容“hello”进行对齐操作,以音频帧为划分粒度,从而得到多个音素数据。
其中,MFA强制对齐方法本质上是一个语音识别的步骤,用于将音频数据和文本内容在时间纬度上自动对齐,并得到每一帧的音素。
可选地,基于多个音素数据在时间维度上存在连续关系,将多个音频数据组成的序列称为音素序列820,音素序列中包括的多个音素数据分别为:“HH”、“HH”、“EH”、“EH”、“L”、“OW”、“OW”、“OW”。
在一些实施例中,将音素序列转换成一个N*40的one-hot矩阵(其中,音素数据的数量共有40个,N为当前文本内容中音素数据的数量),并将N*40的one-hot矩阵作为模型的输入。
可选地,在对音素视素模型的训练阶段,采用滑动窗口的方式进行输入,窗口大小为129,帧移为1。每个滑动窗口需要回归出该滑动窗口中间三个音频帧位置的视素系数,从而每个音频数据都可以构造出一个N*129的输入矩阵。
通过滑动窗口过程,即可以在图形处理器(Graphics Processing Unit,GPU)上进行并行计算。示意性的,对音素视素模型进行训练的训练数据可从动捕数据或者开源数据集中得到。
在一个可选的实施例中,对音素视素模型的模型结构进行示意性的说明。
示意性的,采用变换器网络(Transformer)作为音素视素转换模型的编码器(Encoder),从而得到与音素数据对应的音素特征。其中,Transformer可以更好的捕捉到全局的特征和上下文的信息,因此能够更好地关注到音频数据对应的整个文本内容。
此外,采用一维卷积作为音素视素转换模型的解码器(Decoder),将Transformer编码过的音素特征解码成视素系数。也即:将多维的音素特征回归出中间三帧的视素系数,通过上述方式,可以充分考虑前后音素数据之间的音素该关联关系(如:协同发音等音素变化情况),有助于模型更好地学习到闭嘴等关键口型。
(二)预测部分
示意性的,在对音素视素模型的训练阶段,通过分析相邻至少两个音频帧分别对应的样本音素数据之间的音素变化情况,以及样本音素数据对应的样本视素数据之间的视素变化情况,便于音素视素模型确定样本视素数据随样本音素数据变化的视素系数变化规律,从而有利于音素视素模型更好地适应音素数据变化而导致视素数据变化的过程,进而使得音素视素模型能够根据音素数据的音素关联关系确定对候选视素数据调整的视素系数。
在一个可选的实施例中,在对音素视素模型进行训练后得到音素视素转换模型,通过音素视素转换模型能够对音素数据进行分析以确定对应的视素系数。
示意性的,视素系数实现为向量形式,通过音素视素转换模型的Transformer层将编码过的音素特征解码成视素系数。
可选地,在音素视素转换模型的应用阶段,将音频数据和文本内容用MFA进行强制对齐后的音素序列作为音素视素转换模型的输入,并得到多个音素数据分别对应的视素系数(视素权重序列),通过如下方式得到口型动画。
其中,animation用于表示生成的口型动画(面部动画);faceneutral用于表示中立脸;wviseme用于表示候选视素数据对应的视素系数;faceviseme用于表示候选视素数据(音素数据对应的口型基准);i用于表示当前的视素数据;10用于表示视素数据的总数量(10为示意性的举例)。
也即:视素系数用于表示音频数据的多个音素数据在变化过程中的前后关联情况。
如图8所示,针对任意一个音素数据,确定与该音素数据对应的多个视素系数,如视素系数w1、视素系数w2、视素系数w3等,且多个视素系数与多个候选视素数据一一对应;在通过视素系数对候选视素数据进行调整时,通过视素系数对与之对应的候选视素数据进行调整,如:通过视素系数w1调整对应的候选视素数据等,将通过视素系数调整后的多个调整结果融合后,得到与该音素数据对应的视素数据,并基于多个视素数据生成面部动画。
值得注意的是,以上仅为示意性的举例,本申请实施例对此不加以限定。
综上所述,在以确定的音频数据生成面部动画的过程中,不再简单依赖表示基准视觉表现的候选视素数据组合得到面部动画,而是考虑音频数据中多个音素数据之间的音素关联关系,从而得到随音频数据变化而变化的视素系数组,以视素系数组调整音素数据与候选视素数据之间的转换关系,并基于融合后得到的视素数据生成面部动画,有效在提高面部动画随音频数据变化真实性的基础上,通过音频数据更高效地实现动画生成过程,避免额外引入表情迁移等步骤的低效问题,提升动画生成效率。
图9是本申请一个示例性实施例提供的面部动画生成装置的结构框图,如图9所示,该装置包括如下部分:
音频获取模块910,用于获取音频数据,所述音频数据用于表征文本内容对应的发音音频;
音素获取模块920,用于基于所述音频数据,获取与所述文本内容对应的多个音素数据,所述音素数据是以音频帧为单位对所述音频数据进行音素拆分后得到的数据;
视素获取模块930,用于获取多个候选视素数据,所述候选视素数据是音素数据对应的基准视觉表现;
系数获取模块940,用于基于所述多个音素数据之间的音素关联关系,获取所述多个音素数据分别对应的视素系数组,所述视素系数组用于调整所述音素数据与所述候选视素数据之间的转换关系;
动画生成模块950,用于以各个音素数据分别对应的视素系数组对所述多个候选视素数据进行加权融合,并基于融合后得到的视素数据生成所述面部动画。
在一个可选的实施例中,所述动画生成模块950还用于对于所述多个音素数据中的第一音素数据,确定所述第一音素数据对应的视素系数组,所述视素系数组中的多个视素系数与所述多个候选视素数据一一对应;基于所述视素系数与所述候选视素数据之间的对应关系,以所述视素系数对所述候选视素数据进行调整,得到与多个候选视素数据分别对应的调整结果;对多个调整结果进行加权融合,得到与所述第一音素数据对应的视素数据,并得到与所述多个音素数据分别对应的视素数据;基于所述多个音素数据分别对应的视素数据生成所述面部动画。
在一个可选的实施例中,所述动画生成模块950还用于获取与所述多个音素数据分别对应的视素数据;依照所述多个音素数据在时间维度上的排列顺序,将所述多个音素数据分别对应的视素数据组合后生成所述面部动画。
在一个可选的实施例中,所述系数获取模块940还用于对所述多个音素数据分别进行独热编码,得到与所述多个音素数据分别对应的独热编码值;综合所述多个音素数据分别对应的独热编码值,得到音素数据序列对应的独热编码矩阵;以所述独热编码矩阵分析所述多个音素数据之间的音素关联关系,并获取所述多个音素数据分别对应的视素系数组。
在一个可选的实施例中,所述系数获取模块940还用于以音频帧为单位,采用预设尺寸的滑动窗口对所述独热编码矩阵进行滑动分析,确定位于所述滑动窗口中间位置的至少一个音频帧对应的音素数据;通过预先训练的音素视素转换模型对所述至少一个音频帧对应的音素数据进行音素视素回归预测,得到所述多个音素数据分别对应的视素系数组。
在一个可选的实施例中,所述系数获取模块940还用于获取多个样本序列对,所述样本音素序列中包括至少一个样本音素数据,所述样本视素序列中包括至少一个样本视素数据,所述至少一个样本音素数据与所述至少一个样本视素数据在时间维度上相对应,所述样本视素序列用于表示发出所述样本音素序列的视觉表现;通过所述样本序列对训练音素视素模型并得到所述音素视素转换模型,所述音素视素模型为待训练的模型。
在一个可选的实施例中,所述系数获取模块940还用于基于所述样本序列对中的多个样本音素数据得到样本独热编码矩阵;以音频帧为单位采用所述滑动窗口对所述样本独热编码矩阵进行滑动分析,确定位于所述滑动窗口中间位置的至少两个音频帧分别对应的样本音素数据;基于所述样本序列对确定与至少两个样本音素数据分别对应的样本视素数据;对与至少两个样本音素数据分别对应的样本视素数据进行回归预测,得到与至少两个样本视素数据分别对应的样本视素系数组,所述样本视素系数组中包括多个样本视素系数,所述多个样本视素系数与所述多个候选视素数据一一对应;基于至少两个样本视素系数组中相同候选视素数据对应的样本视素系数之间的系数关联关系,训练所述音素视素模型,并得到所述音素视素转换模型。
在一个可选的实施例中,所述系数获取模块940还用于对于所述多个样本序列对中的第一样本序列对,确定所述第一样本序列对中的第一样本音素数据和第一样本视素数据;在时间维度上以预设缩放比例对所述第一样本音素数据进行缩放操作,得到第二样本音素数据;以所述预设缩放比例对所述第一样本视素数据进行缩放操作,得到第二样本视素数据;基于所述第二样本音素数据和所述第二样本视素数据得到第二样本序列对,所述第二样本序列对用于对所述音素视素模型进行训练。
在一个可选的实施例中,所述音素获取模块920还用于获取与所述文本内容对应的字符串序列,所述字符串序列中包括多个字符串,所述字符串用于表征组成所述文本内容的单位文本;在时间维度上将所述音频数据与所述字符串序列进行对齐操作,得到与所述文本内容对应的所述多个音素数据。
在一个可选的实施例中,所述音素获取模块920还用于在所述时间维度上确定所述音频数据对应的多个音频帧;基于所述音频数据所表征的所述文本内容,将所述字符串序列对齐至所述音频数据上;确定所述多个音频帧分别对应的音素数据,得到与所述文本内容对应的所述多个音素数据。
在一个可选的实施例中,所述动画生成模块950还用于对所述多个候选视素数据中的第一候选视素数据进行特征提取,得到与所述第一候选视素数据对应的视素特征表示;确定多个视素系数组中与所述第一候选视素数据对应的第一视素系数;以所述第一视素系数对所述视素特征表示进行调整,得到视素调整结果;对各个音素数据下的多个视素调整结果进行加权融合,得到与各个音素数据分别对应的视素数据。
在一个可选的实施例中,所述动画生成模块950还用于获取音素视素映射关系,所述音素视素映射关系用于存储音素数据与所述候选视素数据之间的对应情况;从所述音素视素映射关系中获取所述多个音素数据中与第二音素数据对应的第二候选视素数据;从所述第二音素数据对应的视素系数组中确定与所述第二候选视素数据对应的第二视素系数;以所述第二视素系数对所述第二候选视素数据进行调整,得到与所述第二音素数据对应的视素数据,并得到与所述多个音素数据分别对应的视素数据;依照所述多个音素数据在时间维度上的排列顺序,通过多个视素数据生成所述面部动画。
综上所述,在以确定的音频数据生成面部动画的过程中,不再简单依赖表示基准视觉表现的候选视素数据组合得到面部动画,而是考虑音频数据中多个音素数据之间的音素关联关系,从而得到随音频数据变化而变化的视素系数组,以视素系数组调整音素数据与候选视素数据之间的转换关系,并基于融合后得到的视素数据生成面部动画,有效在提高面部动画随音频数据变化真实性的基础上,通过音频数据更高效地实现动画生成过程,避免额外引入表情迁移等步骤的低效问题,提升动画生成效率。
需要说明的是:上述实施例提供的面部动画生成装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的面部动画生成装置与面部动画生成方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图10示出了本申请一个示例性实施例提供的服务器的结构示意图。该服务器1000包括中央处理单元(Central Processing Unit,CPU)1001、包括随机存取存储器(RandomAccess Memory,RAM)1002和只读存储器(Read Only Memory,ROM)1003的系统存储器1004,以及连接系统存储器1004和中央处理单元1001的系统总线1005。服务器1000还包括用于存储操作系统1013、应用程序1014和其他程序模块1015的大容量存储设备1006。
大容量存储设备1006通过连接到系统总线1005的大容量存储控制器(未示出)连接到中央处理单元1001。大容量存储设备1006及其相关联的计算机可读介质为服务器1000提供非易失性存储。也就是说,大容量存储设备1006可以包括诸如硬盘或者紧凑型光盘只读存储器(Compact Disc Read Only Memory,CD-ROM)驱动器之类的计算机可读介质(未示出)。
失一般性,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。上述的系统存储器1004和大容量存储设备1006可以统称为存储器。
根据本申请的各种实施例,服务器1000还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器1000可以通过连接在系统总线1005上的网络接口单元1011连接到网络1012,或者说,也可以使用网络接口单元1011来连接到其他类型的网络或远程计算机系统(未示出)。
上述存储器还包括一个或者一个以上的程序,一个或者一个以上程序存储于存储器中,被配置由CPU执行。
本申请的实施例还提供了一种计算机设备,该计算机设备包括处理器和存储器,该存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述各方法实施例提供的面部动画生成方法。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行,以实现上述各方法实施例提供的面部动画生成方法。
本申请的实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中任一所述的面部动画生成方法。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (16)
1.一种面部动画生成方法,其特征在于,所述方法包括:
获取音频数据,所述音频数据用于表征文本内容对应的发音音频;
基于所述音频数据,获取与所述文本内容对应的多个音素数据,所述音素数据是以音频帧为单位对所述音频数据进行音素拆分后得到的数据;
获取多个候选视素数据,所述候选视素数据是音素数据对应的基准视觉表现;
基于所述多个音素数据之间的音素关联关系,获取所述多个音素数据分别对应的视素系数组,所述视素系数组用于调整所述音素数据与所述候选视素数据之间的转换关系;
以各个音素数据分别对应的视素系数组对所述多个候选视素数据进行加权融合,并基于融合后得到的视素数据生成所述面部动画。
2.根据权利要求1所述的方法,其特征在于,所述以各个音素数据分别对应的视素系数组对所述多个候选视素数据进行加权融合,并基于融合后得到的视素数据生成所述面部动画,包括:
对于所述多个音素数据中的第一音素数据,确定所述第一音素数据对应的视素系数组,所述视素系数组中的多个视素系数与所述多个候选视素数据一一对应;
基于所述视素系数与所述候选视素数据之间的对应关系,以所述视素系数对所述候选视素数据进行调整,得到与多个候选视素数据分别对应的调整结果;
对多个调整结果进行加权融合,得到与所述第一音素数据对应的视素数据,并得到与所述多个音素数据分别对应的视素数据;
基于所述多个音素数据分别对应的视素数据生成所述面部动画。
3.根据权利要求1所述的方法,其特征在于,所述基于融合后得到的视素数据生成所述面部动画,包括:
获取与所述多个音素数据分别对应的视素数据;
依照所述多个音素数据在时间维度上的排列顺序,将所述多个音素数据分别对应的视素数据组合后生成所述面部动画。
4.根据权利要求1至3任一所述的方法,其特征在于,所述基于所述多个音素数据之间的音素关联关系,获取所述多个音素数据分别对应的视素系数组,包括:
对所述多个音素数据分别进行独热编码,得到与所述多个音素数据分别对应的独热编码值;
综合所述多个音素数据分别对应的独热编码值,得到音素数据序列对应的独热编码矩阵;
以所述独热编码矩阵分析所述多个音素数据之间的音素关联关系,获取所述多个音素数据分别对应的视素系数组。
5.根据权利要求4所述的方法,其特征在于,所述以所述独热编码矩阵分析所述多个音素数据之间的音素关联关系,获取所述多个音素数据分别对应的视素系数组,包括:
以音频帧为单位,采用预设尺寸的滑动窗口对所述独热编码矩阵进行滑动分析,确定位于所述滑动窗口中间位置的至少一个音频帧对应的音素数据;
通过预先训练的音素视素转换模型对所述至少一个音频帧对应的音素数据进行音素视素回归预测,得到所述多个音素数据分别对应的视素系数组。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
获取多个样本序列对,所述样本序列对由一个样本音素序列和对应的一个样本视素序列组成,所述样本音素序列中包括至少一个样本音素数据,所述样本视素序列中包括至少一个样本视素数据,所述至少一个样本音素数据与所述至少一个样本视素数据在时间维度上相对应,所述样本视素序列用于表示发出所述样本音素序列的视觉表现;
通过所述样本序列对训练音素视素模型并得到所述音素视素转换模型,所述音素视素模型为待训练的模型。
7.根据权利要求6所述的方法,其特征在于,所述通过所述样本序列对训练音素视素模型并得到所述音素视素转换模型,包括:
基于所述样本序列对中的多个样本音素数据得到样本独热编码矩阵;
以音频帧为单位采用所述滑动窗口对所述样本独热编码矩阵进行滑动分析,确定位于所述滑动窗口中间位置的至少两个音频帧分别对应的样本音素数据;
基于所述样本序列对确定与至少两个样本音素数据分别对应的样本视素数据;
对与至少两个样本音素数据分别对应的样本视素数据进行回归预测,得到与至少两个样本视素数据分别对应的样本视素系数组,所述样本视素系数组中包括多个样本视素系数,所述多个样本视素系数与所述多个候选视素数据一一对应;
基于至少两个样本视素系数组中相同候选视素数据对应的样本视素系数之间的系数关联关系,训练所述音素视素模型,并得到所述音素视素转换模型。
8.根据权利要求6所述的方法,其特征在于,所述获取多个样本序列对之后,还包括:
对于所述多个样本序列对中的第一样本序列对,确定所述第一样本序列对中的第一样本音素序列和第一样本视素序列;
在时间维度上以预设缩放比例对所述第一样本音素序列进行缩放操作,得到第二样本音素序列;
以所述预设缩放比例对所述第一样本视素序列进行缩放操作,得到第二样本视素序列;
基于所述第二样本音素序列和所述第二样本视素序列得到第二样本序列对,所述第二样本序列对用于对所述音素视素模型进行训练。
9.根据权利要求1至3任一所述的方法,其特征在于,所述基于所述音频数据,获取与所述文本内容对应的多个音素数据,包括:
获取与所述文本内容对应的字符串序列,所述字符串序列中包括多个字符串,所述字符串用于表征组成所述文本内容的单位文本;
在时间维度上将所述音频数据与所述字符串序列进行对齐操作,得到与所述文本内容对应的所述多个音素数据。
10.根据权利要求9所述的方法,其特征在于,所述在时间维度上将所述音频数据与所述字符串序列进行对齐操作,得到与所述文本内容对应的所述多个音素数据,包括:
在所述时间维度上确定所述音频数据对应的多个音频帧;
基于所述音频数据所表征的所述文本内容,将所述字符串序列对齐至所述音频数据上;
确定所述多个音频帧分别对应的音素数据,得到与所述文本内容对应的所述多个音素数据。
11.根据权利要求1至3任一所述的方法,其特征在于,所述以各个音素数据分别对应的视素系数组对所述多个候选视素数据进行加权融合,包括:
对所述多个候选视素数据中的第一候选视素数据进行特征提取,得到与所述第一候选视素数据对应的视素特征表示;
确定多个视素系数组中与所述第一候选视素数据对应的第一视素系数;
以所述第一视素系数对所述视素特征表示进行调整,得到视素调整结果;
对各个音素数据下的多个视素调整结果进行加权融合,得到与各个音素数据分别对应的视素数据。
12.根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:
获取音素视素映射关系,所述音素视素映射关系用于存储音素数据与所述候选视素数据之间的对应情况;
从所述音素视素映射关系中获取所述多个音素数据中与第二音素数据对应的第二候选视素数据;
从所述第二音素数据对应的视素系数组中确定与所述第二候选视素数据对应的第二视素系数;
以所述第二视素系数对所述第二候选视素数据进行调整,得到与所述第二音素数据对应的视素数据,并得到与所述多个音素数据分别对应的视素数据;
依照所述多个音素数据在时间维度上的排列顺序,通过多个视素数据生成所述面部动画。
13.一种面部动画生成装置,其特征在于,所述装置包括:
音频获取模块,用于获取音频数据,所述音频数据用于表征文本内容对应的发音音频;
音素获取模块,用于基于所述音频数据,获取与所述文本内容对应的多个音素数据,所述音素数据是以音频帧为单位对所述音频数据进行音素拆分后得到的数据;
视素获取模块,用于获取多个候选视素数据,所述候选视素数据是音素数据对应的基准视觉表现;
系数获取模块,用于基于所述多个音素数据之间的音素关联关系,获取所述多个音素数据分别对应的视素系数组,所述视素系数组用于调整所述音素数据与所述候选视素数据之间的转换关系;
动画生成模块,用于以各个音素数据分别对应的视素系数组对所述多个候选视素数据进行加权融合,并基于融合后得到的视素数据生成所述面部动画。
14.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一段程序,所述至少一段程序由所述处理器加载并执行以实现如权利要求1至12任一所述的面部动画生成方法。
15.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一段程序,所述至少一段程序由处理器加载并执行以实现如权利要求1至12任一所述的面部动画生成方法。
16.一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序被处理器执行时实现如权利要求1至12任一所述的面部动画生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310577533.5A CN116958343A (zh) | 2023-05-22 | 2023-05-22 | 面部动画生成方法、装置、设备、介质及程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310577533.5A CN116958343A (zh) | 2023-05-22 | 2023-05-22 | 面部动画生成方法、装置、设备、介质及程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116958343A true CN116958343A (zh) | 2023-10-27 |
Family
ID=88445095
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310577533.5A Pending CN116958343A (zh) | 2023-05-22 | 2023-05-22 | 面部动画生成方法、装置、设备、介质及程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116958343A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117877509A (zh) * | 2024-03-13 | 2024-04-12 | 亚信科技(中国)有限公司 | 一种数字人实时交互方法及装置、电子设备、存储介质 |
-
2023
- 2023-05-22 CN CN202310577533.5A patent/CN116958343A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117877509A (zh) * | 2024-03-13 | 2024-04-12 | 亚信科技(中国)有限公司 | 一种数字人实时交互方法及装置、电子设备、存储介质 |
CN117877509B (zh) * | 2024-03-13 | 2024-06-04 | 亚信科技(中国)有限公司 | 一种数字人实时交互方法及装置、电子设备、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108875807B (zh) | 一种基于多注意力多尺度的图像描述方法 | |
CN112687259B (zh) | 一种语音合成方法、装置以及可读存储介质 | |
CN109785824B (zh) | 一种语音翻译模型的训练方法及装置 | |
CN112735373B (zh) | 语音合成方法、装置、设备及存储介质 | |
CN107979764B (zh) | 基于语义分割和多层注意力框架的视频字幕生成方法 | |
CN109859736B (zh) | 语音合成方法及系统 | |
CN110782882B (zh) | 语音识别方法、装置、电子设备和存储介质 | |
CN110853670B (zh) | 音乐驱动的舞蹈生成方法 | |
CN113901894A (zh) | 一种视频生成方法、装置、服务器及存储介质 | |
CN114895817B (zh) | 交互信息处理方法、网络模型的训练方法及装置 | |
US20230230571A1 (en) | Audio processing method and apparatus based on artificial intelligence, device, storage medium, and computer program product | |
CN112837669B (zh) | 语音合成方法、装置及服务器 | |
CN111653270B (zh) | 语音处理方法、装置、计算机可读存储介质及电子设备 | |
CN116912642A (zh) | 基于双模多粒度交互的多模态情感分析方法、设备及介质 | |
CN116958343A (zh) | 面部动画生成方法、装置、设备、介质及程序产品 | |
CN115937369A (zh) | 一种表情动画生成方法、系统、电子设备及存储介质 | |
CN114360492B (zh) | 音频合成方法、装置、计算机设备和存储介质 | |
CN114282555A (zh) | 翻译模型训练方法及装置、翻译方法及装置 | |
CN114360491A (zh) | 语音合成方法、装置、电子设备及计算机可读存储介质 | |
CN113990295A (zh) | 一种视频生成方法和装置 | |
CN113593534A (zh) | 针对多口音语音识别的方法和装置 | |
CN115081459B (zh) | 口语文本生成方法、装置、设备及存储介质 | |
RU2803488C2 (ru) | Способ и сервер для генерирования волновой формы | |
CN114268846A (zh) | 一种基于注意机制的视频描述生成模型 | |
CN118471250A (zh) | 一种输入语音自动生成口型和表情的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40099450 Country of ref document: HK |