CN116958328A - 口型合成方法、装置、设备及存储介质 - Google Patents
口型合成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116958328A CN116958328A CN202211401319.6A CN202211401319A CN116958328A CN 116958328 A CN116958328 A CN 116958328A CN 202211401319 A CN202211401319 A CN 202211401319A CN 116958328 A CN116958328 A CN 116958328A
- Authority
- CN
- China
- Prior art keywords
- phoneme
- mouth
- image frames
- mouth shape
- model
- 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 93
- 238000003860 storage Methods 0.000 title claims abstract description 20
- 230000002194 synthesizing effect Effects 0.000 title abstract description 16
- 238000013507 mapping Methods 0.000 claims abstract description 31
- 230000000630 rising effect Effects 0.000 claims description 27
- 238000009499 grossing Methods 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 19
- 230000015572 biosynthetic process Effects 0.000 claims description 15
- 238000003786 synthesis reaction Methods 0.000 claims description 15
- 230000007717 exclusion Effects 0.000 claims description 9
- 230000001174 ascending effect Effects 0.000 claims description 7
- 238000013473 artificial intelligence Methods 0.000 abstract description 18
- 238000012545 processing Methods 0.000 description 26
- 238000005516 engineering process Methods 0.000 description 22
- 230000001629 suppression Effects 0.000 description 18
- 239000013598 vector Substances 0.000 description 16
- 238000010586 diagram Methods 0.000 description 9
- 230000001815 facial effect Effects 0.000 description 9
- 230000014509 gene expression Effects 0.000 description 9
- 238000002372 labelling Methods 0.000 description 8
- 238000010801 machine learning Methods 0.000 description 6
- 150000001875 compounds Chemical class 0.000 description 5
- 238000001514 detection method Methods 0.000 description 5
- 210000000887 face Anatomy 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 238000001308 synthesis method Methods 0.000 description 4
- 241001465754 Metazoa Species 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000007935 neutral effect Effects 0.000 description 3
- 241000287531 Psittacidae Species 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000008921 facial expression Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000002156 mixing Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 210000000744 eyelid Anatomy 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 208000015181 infectious disease Diseases 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000003014 reinforcing effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 230000000007 visual 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/205—3D [Three Dimensional] animation driven by audio data
-
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
Abstract
本申请公开了一种口型合成方法、装置、设备及存储介质,涉及人工智能技术领域。所述方法包括:获取视频中包含的多个图像帧分别对应的音素,图像帧对应的音素用于表征视频中的对象在图像帧中的发音信息;基于映射关系以及多个图像帧分别对应的音素,确定多个口型模型在各个图像帧下分别对应的驱动参数,得到模型驱动参数;根据模型驱动参数,驱动多个口型模型合成多个图像帧分别对应的口型,得到口型动画。根据驱动参数确定出来的口型动画,更加符合视频中发出声音的对象的真实口型,因此,合成出来的口型动画精度较高。
Description
技术领域
本申请实施例涉及人工智能技术领域,特别涉及一种口型合成方法、装置、设备及存储介质。
背景技术
随着人工智能技术的发展,通过真实人脸信息来构建三维人脸动画逐渐成为一项较为成熟的技术。
相关技术中,通常根据人脸信息上的关键点信息,来确定真实人脸与多个人脸模型之间的驱动系数,进而根据驱动系数,驱动多个人脸模型来合成真实人脸对应的人脸动画。也就是说,口型动画的合成也是通过嘴部的关键点检测信息来确定的。
然而,相关技术中,仅依据关键点信息而合成的口型动画,与真实人脸的口型相差较大,精度较低。
发明内容
本申请实施例提供了一种口型合成方法、装置、设备及存储介质。所述技术方案如下:
根据本申请实施例的一个方面,提供了一种口型合成方法,所述方法包括:
获取视频中包含的多个图像帧分别对应的音素,所述图像帧对应的音素用于表征所述视频中的对象在所述图像帧中的发音信息;
基于映射关系以及所述多个图像帧分别对应的音素,确定多个口型模型在各个所述图像帧下分别对应的驱动参数,得到模型驱动参数;其中,所述映射关系包括所述口型模型与音素之间的对应关系,所述多个口型模型在同一个图像帧下分别对应的驱动参数,用于驱动所述多个口型模型合成所述同一个图像帧对应的口型;
根据所述模型驱动参数,驱动所述多个口型模型合成所述多个图像帧分别对应的口型,得到口型动画。
根据本申请实施例的一个方面,提供了一种口型合成装置,所述装置包括:
音素获取模块,用于获取视频中包含的多个图像帧分别对应的音素,所述图像帧对应的音素用于表征所述视频中的对象在所述图像帧中的发音信息;
参数确定模块,用于基于映射关系以及所述多个图像帧分别对应的音素,确定多个口型模型在各个所述图像帧下分别对应的驱动参数,得到模型驱动参数;其中,所述映射关系包括所述口型模型与音素之间的对应关系,所述多个口型模型在同一个图像帧下分别对应的驱动参数,用于驱动所述多个口型模型合成所述同一个图像帧对应的口型;
动画生成模块,用于根据所述模型驱动参数,驱动所述多个口型模型合成所述多个图像帧分别对应的口型,得到口型动画。
根据本申请实施例的一个方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现上述方法。
根据本申请实施例的一个方面,提供了一种计算机可读存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现上述方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行上述方法。
本申请实施例提供的技术方案可以包括如下有益效果:
根据视频中每个图像帧对应的发音信息,标注出每个图像帧对应的音素。根据口型模型与音素之间的对应关系,确定多个口型模型在各个图像帧下分别对应的驱动参数,通过驱动参数,驱动多个口型模型合成多个图像帧对应的口型动画。通过将音素与口型模型对应起来,根据图像帧对应的音素,来确定多个口型模型的驱动参数,使得根据驱动参数确定出来的口型动画,更加符合视频中发出声音的对象的真实口型,因此,合成出来的口型动画精度较高。
附图说明
图1是本申请一个实施例提供的方案实施环境的示意图;
图2是相关技术中一种人脸动画合成方法的示意图;
图3是相关技术中一种关键点检测方法的示意图;
图4是本申请一个实施例提供的口型合成方法的流程图;
图5是本申请一个实施例提供的口型模型的示意图;
图6是本申请另一个实施例提供的口型合成方法的流程图;
图7是本申请另一个实施例提供的口型合成方法的流程图;
图8是本申请另一个实施例提供的口型合成方法的流程图;
图9是本申请一个实施例提供的口型合成装置的框图;
图10是本申请另一个实施例提供的口型合成装置的框图;
图11是本申请一个实施例提供的计算机设备的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在介绍本申请技术方案之前,先对本申请涉及的一些背景技术知识进行介绍说明。以下相关技术作为可选方案与本申请实施例的技术方案可以进行任意结合,其均属于本申请实施例的保护范围。本申请实施例包括以下内容中的至少部分内容。
人工智能(Artificial Intelligence,简称AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括自然语言处理技术、机器学习/深度学习等几大方向。
计算机视觉技术(Computer Vision,简称CV)是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
机器学习(Machine Learning,简称ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例提供的方案涉及人工智能的计算机视觉等技术,具体通过如下实施例进行说明。
需要说明的是,本申请所涉及的信息(包括但不限于用户设备信息、用户个人信息等)、数据(包括但不限于用于分析的数据、存储的数据、展示的数据等)以及信号,均为经用户授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。例如,本申请实施例中在采用3D(three Dimensions,三维)口型合成的方法时,对视频中的人物角色进行发音信息的捕捉,并以此驱动不同口型模型,使得口部模型表现出与视频人物对应的口型时,可能会获取用户的人脸视频。另外,本申请实施例中的口型系数的获取,还需要进一步对视频中的人物角色进行面部捕捉。其中涉及到的用户的人脸视频或者口型视频都是在充分授权的情况下获取的。
在介绍本申请技术方案之前,先对本申请涉及的一些名词进行解释说明。以下相关解释作为可选方案与本申请实施例的技术方案可以进行任意结合,其均属于本申请实施例的保护范围。本申请实施例包括以下内容中的至少部分内容。
3DMM(A Morphable Model of 3D Faces,三维可变形人脸模型):是一个通用的三维人脸参数化模型,用固定的点数来表示人脸。它的核心思想就是真实人脸可以在三维空间中进行一一匹配,并且可以由其他许多幅人脸正交基加权线性相加而来。这里将人脸模型分为两个向量:
S=(X1,Y1,Z1,X2,…,Yn,Zn)T∈R3n
T=(R1,G1,B1,R2,…,Gn,Bn)TER3n
其中,S表示形状向量,T表示纹理向量,X、Y、Z表示空间中的坐标,R、G、B表示分别在RGB(红绿蓝)三通道上的值,n表示空间中的点。因此,任意新的一个人脸都可以由这些特征向量线性组合生成:
其中,a和b表示权重,Sn表示新的人脸的形状特征,它是根据标准人脸的形状向量多个人脸模型分别对应的形状向量的Si,以及其分别对应的权重ai得到的,m表示人脸模型的个数。Tn表示新的人脸的纹理特征,它是根据标准人脸的纹理向量/>多个人脸模型分别对应的纹理向量Ti,以及其分别对应的权重bi。
Blend shape(BS,变形目标):一种单个网格变形以实现许多预定义形状和任何数量之间组合的技术,在Maya/3ds Max中看,可以称它为变形目标,例如单个网格是默认形状的基本形状(例如无表情的面),并且基本形状的其他形状用于混合/变形,是不同的表达(例如笑、皱眉、闭合眼皮),这些被统称为混合形状或变形目标。另外,BS系数可以认为是权重,也可以认为是驱动系数。
音素(phoneme),是根据语音的自然属性划分出来的最小语音单位,依据音节里的发音动作来分析,一个动作构成一个音素。音素分为元音与辅音两大类。如汉语音节啊(ā)只有一个音素,爱(ài)有两个音素,代(dài)有三个音素等。
请参考图1,其示出了本申请一个实施例提供的方案实施环境的示意图。该方案实施环境可以包括:终端设备10和服务器20。
终端设备10包括但不限于手机、平板电脑、智能语音交互设备、游戏主机、可穿戴设备、多媒体播放设备、PC(Personal Computer,个人计算机)、车载终端、智能家电等电子设备。终端设备10中可以安装目标应用程序的客户端。
在本申请实施例中,上述目标应用程序可以是任何能够需要构建口型动画的应用程序。典型地,该应用程序为游戏应用程序。当然,除了游戏应用程序之外,其它类型的应用程序中也可以具有构建口型动画的功能。例如,音视频类应用程序、娱乐类应用程序、社交类应用程序、虚拟现实(Virtual Reality,简称VR)类应用程序、增强现实(AugmentedReality,简称AR)类应用程序等,本申请实施例对此不作限定。另外,对于不同的应用程序来说,其需要构建的口型动画各不相同。本申请实施例对此不作限定。可选地,终端设备10中运行有上述应用程序的客户端。
服务器20用于为终端设备10中的目标应用程序的客户端提供后台服务。例如,服务器20可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器,但并不局限于此。
终端设备10和服务器20之间可通过网络进行互相通信。该网络可以是有线网络,也可以是无线网络。
本申请实施例提供的方法,各步骤的执行主体可以是计算机设备。计算机设备可以是任何具备数据的存储和处理能力的电子设备。例如,计算机设备可以是图1中的服务器20,可以是图1中的终端设备10,也可以是除终端设备10和服务器20以外的另一设备。
请参考图2,其示出了相关技术中提供的人脸动画合成方法的示意图。
相关技术中,首先采用三维人脸表情识别技术,对视频中的人物角色进行面部捕捉,根据捕捉的结果,来驱动合成不同的三维人脸模型,使得驱动出来的3D人脸模型与视频中的人物做出相同的表情。如图2的子图a所示,是一组3D人脸模型,通过公式来生成人物对应的三维人脸模型。其中,B0表示中立脸型或者说中立三维人脸模型,ai表示对于Bi这一三维人脸模型(也可以说是表情基)的权重或者说驱动系数,n表示三维人脸模型的数量。权重ai可以认为是视频中的人物的表情动画的驱动源。
相关技术中,人脸动画合成方法主要包括以下几个步骤:首先利用相关技术中的landmark detection(关键点检测)方法,检测视频中当前帧的人脸图像的关键点。其中,预定义一组预定义的人脸基准点(比如眼角点、嘴角点),二维人脸关键点检测也就是自动定位出图像中的这些关键点。如图3所示,人脸中被标注出来多个关键点,矩形200中的点表示在左眼部被标注出来的5个关键点。其次,利用多个三维人脸模型分别对应的BS系数重建出带表情的模型(与视频中的人物对应的模型),在重建的带表情的模型上标注的顶点,根据其目前投影系数,将重建出带表情的模型投影至二维图像上,投影之后的顶点与上述标注出来的关键点计算误差,并以此作为监督信息,更新上述BS系数以及投影系数。重复上述步骤直至误差收敛,得到这一帧下人脸图像的表情系数(BS系数)。
上述相关技术提供的技术方案,受限于演员(被采集者)说话时的一些个性化特征,难以表现出标准的发音口型,也就是说,采用相关技术中提供的技术方案,其所合成的人脸动画中的口型与真实人脸的口型相差较大,精度较低。
而本申请实施例提供的技术方案,在相关技术中的三维人脸表情识别算法的基础上,以一些人脸识别算法的结果为幅度和口型速率参考,引入音素标注,基于音素合成标准的口型动画。也即,将口型动画与音素结合,使得构建出来的口型动画更加符合真实人脸的口型,精度较高。
另外,本申请实施例提供的技术方案在3D虚拟对象的制作过程中,可利用视频捕捉对象表情信息驱动3D虚拟对象,3D虚拟对象可以是游戏角色或者是动画角色。该技术可以引入音素先验合成标准的口型,同时具备良好的迁移性和准确性,单个演员的采集信息可有效迁移至不同的对象口型驱动上,降低采集成本。
通过本申请实施例合成的口型动画可以结合其他方法生成的人脸动画,生成较为标准的人脸动画。当然,也可以结合通过其他方法生成的其他人脸部位的动画,组合得到较为标准的人脸动画。另外,本申请实施例提供的技术方案包括但不限于人物口型的动画合成,还可以是动物等口型的动画合成。
请参考图4,其示出了本申请一个实施例提供的口型合成方法的流程图。该方法各步骤的执行主体可以是图1所示方案实施环境中的终端设备10或者服务器20。在下文方法实施例中,为了便于描述,仅以各步骤的执行主体为“计算机设备”进行介绍说明。该方法可以包括如下几个步骤(310~330)中的至少一个步骤:
步骤310,获取视频中包含的多个图像帧分别对应的音素,图像帧对应的音素用于表征视频中的对象在图像帧中的发音信息。
本申请实施例中的视频包括有音频信息,也即视频中除了视频画面中有对象之外,还有对象发出的音频信息,视频画面和音频信息这二者是同步的关系。本申请实施例提供的技术方案对于视频的清晰度、视频的内存大小、视频的长度信息等均不作限制,任何携带有对象以及对象的音频信息的视频,均可采用本申请实施例提供的技术方案,生成对象对应的口型动画。
图像帧:可以认为是视频在某一时刻的图像画面。在一些实施例中,根据视频每秒传输帧数(frames per second,简称fps)来确定一秒的视频中的图像帧的数量。本申请对于每秒传输帧数的大小不作限定,可选地,fps=60。则,一秒的视频中对应有60个图像帧,每两个图像帧之间的时间间隔为1/60s。
音素(phoneme),是根据语音的自然属性划分出来的最小语音单位,依据音节里的发音动作来分析,一个动作构成一个音素。音素分为元音与辅音两大类。如汉语音节啊(ā)只有一个音素,爱(ài)有两个音素,代(dài)有三个音素等。在一些实施例中,由于视频对应有与对象对应的音频信息,因此,对于每一个图像帧来说,其均对应有发音信息。根据这些发音信息可以确定出该图像帧对应的音素。在一些实施例中,根据音素与口型的关系,可以得到如表1所示的音素与发音类型的对应关系。其中,音素可以被分为13种发音类型,分别为Bilabials(双唇音)、Labiodentals(唇齿音)、Sibilants(齿擦音)、Tongue-only(舌头变化音)、Consonants(辅音)、Lip heavy(嘴唇剧烈变化音)、Lip heavy consonants(嘴唇连续剧烈变化音)、Jaw heavy(下巴剧烈变化音)、Semi-vowels(半元音)、Vowels(元音)、Compound vowels(复韵母)、Obstruents(阻塞音)、Nasals(鼻音)。其中,中文拼音中,a,o,e为纯元音,i,u,v为半元音。后续的口型规则合成算法中,会根据不同音素所对应发音类型,对合成规则进行调整。本申请实施例中对于发音类型的数量不作限定,可以根据如表1的分类方法,也可以根据其他合理的分类方法来对音素进行分类。
表1音素与发音类型的对应关系
另外,本申请实施例中的图像帧对应的音素可以人工根据发音信息,手动标注。也可以根据音素标注模型,自动标注图像帧对应的音素。此处音素标注模型可以采用发音信息为样本、真实对应的音素为标签,训练音素标注模型,使得音素标注模型可以输出给定发音信息对应的音素。一个图像帧可以对应有多个音素。当然,如果采用纯人工标注音素的方式,则标注出来的音素的精度较高,在一定程度上也提高了后续的生成的口型动画的精度。不过,如果采用音素标注模型来自动标注音素,可以降低标注成本,提高音素标注的效率。
对象:人物、动物等任何可以用嘴部发出声音并且伴随有对应口型的真实生物或虚拟生物。在一些实施例中,对象是真实生物。可选地,对象是真实的人物,则可以采集真实的人物的发音信息,生成3D虚拟人的口型动画。可选地,对象是真实的动物,例如鹦鹉,则可以采集真实的鹦鹉的发音信息,生成3D虚拟鹦鹉的口型动画。通过真实世界中的生物,根据其包括音频信息的视频,来构建该生物的动画,使得合成的动画的口型与真实发音的口型的相似度较高,也即可以实现对口型较为准确的动画还原,提高合成的虚拟生物与真实生物的紧密度,在一些仿真类应用程序中,能够带给用户更好的视觉体验。在一些实施例中,对象是虚拟生物。可选地,对象是虚拟人物,则本申请实施例提供的技术方案可以在已有虚拟人物的动画的基础上,根据发音信息,重新生成虚拟人物的口型,并且根据重新生成的口型来合成的新的虚拟人物的动画,新的虚拟人物的口型更加符合实际的发音口型,因此可以近一步提高构建的虚拟人物的准确度,尽可能地实现声音和口型动画的同步。
步骤320,基于映射关系以及多个图像帧分别对应的音素,确定多个口型模型在各个图像帧下分别对应的驱动参数,得到模型驱动参数;其中,映射关系包括口型模型与音素之间的对应关系,多个口型模型在同一个图像帧下分别对应的驱动参数,用于驱动多个口型模型合成同一个图像帧对应的口型。
映射关系:口型模型与音素之间的对应关系。在一些实施例中,根据口型模型与音素之间的对应关系生成音素-口型模型映射规则表。如表2以及表3所示,表2展示了一种可能的音素与口型模型的对应关系,表3展示了另一种可能的音素与口型模型的对应关系。
表2一种音素与口型模型的对应关系
表3另一种音素与口型模型的对应关系
口型模型:本申请实施例中的口型模型是预设好的,是根据对象最有可能出现的口型,来模拟生成的三维口型模型。在一些实施例中,根据形状特征(形状向量)以及纹理特征(纹理向量)生成口型模型。在一些实施例中,根据最有可能出现的或者说最常规的三维立体口型,确定对应的形状特征(形状向量)以及纹理特征(纹理向量),并根据形状特征(形状向量)以及纹理特征(纹理向量)确定出三维的口型模型。在一些实施例中,口型模型是根据形状特征(形状向量)以及纹理特征(纹理向量)对应的参数预设的,本申请实施例对于口型模型的数量以及具体类型不作限定,可选地,口型模型的数量为16个,参见图5。如图5所示,其示出了16中可能的口型模型,分别为AAA、AHH、EH、FFF、GK、IEE、LNTD、MBP、OHH、RRR、SCHWA、SSH、SSS、TTH、UUU、WWW。在图5中示出的口型模型中还包括对象的其他部分(眼睛、鼻子等),可选地,口型模型是只包括嘴巴的口型模型,也即可以仅将图5中模型的嘴部部分作为本申请实施例中的口型模型。
模型驱动参数:包括多个口型模型在各个图像帧下分别对应的驱动参数。对于每一个图像帧来说,其和多个口型模型分别对应有驱动参数。假设图像帧的数量为N,口型模型的数量为M,则对于第n个图像帧来说,其和M个口型模型中的每一个都对应有一个驱动参数。反之,对于一个口型模型来说,其和N个图像帧中的每一个图像帧也都对应有一个驱动参数,也即一个口型模型和N个图像帧也有分别对应的1*N个驱动参数。因此,对于一个图像帧来说,有M*1个驱动参数,对于N帧图像来说,总共有M*N个驱动参数,这M*N个驱动参数构成了模型驱动参数。其中,N和M均为正整数,n为不大于N的正整数。这由M*N个驱动参数构成的模型驱动参数可以驱动M个口型模型生成该N帧图像帧对应的口型动画。在一些实施例中,驱动参数也可以认为是驱动系数,还可以认为是权重系数,凡是用于驱动口型模型的参数均可纳入本申请实施例的保护范围之内。
步骤330,根据模型驱动参数,驱动多个口型模型合成多个图像帧分别对应的口型,得到口型动画。
在一些实施例中,对于每一个图像帧,根据其和多个口型模型的驱动参数,确定出该图像帧对应的口型。根据多个图像帧分别对应的口型,得到口型动画。在一些实施例中,根据公式生成对应的口型,其中,n表示口型模型的数量,qi表示当前图像帧和第i个口型模型的驱动参数,Ci表示第i个口型模型的纹理特征以及形状特征。在一些实施例中,根据口型模型的纹理特征以及形状特征,基于驱动参数,确定出当前图像帧对应的口型的纹理特征以及形状特征,并基于确定出的纹理特征以及形状特征,构建三维口型。
在另一些实施例中,根据公式生成对应的口型,其中C0表示中立口型模型的纹理特征以及形状特征。
在一些实施例中,根据视频中多个图像帧分别对应的口型,可以得出口型动画。
本申请实施例提供的技术方案,根据视频中每个图像帧对应的发音信息,标注出每个图像帧对应的音素。根据口型模型与音素之间的对应关系,确定多个口型模型在各个图像帧下分别对应的驱动参数,通过驱动参数,驱动多个口型模型合成多个图像帧对应的口型动画。通过将音素与口型模型对应起来,根据图像帧对应的音素,来确定多个口型模型的驱动参数,使得根据驱动参数确定出来的口型动画,更加符合视频中发出声音的对象的真实口型,因此,合成出来的口型动画精度较高。
请参考图6其示出了本申请另一个实施例提供的口型合成方法的流程图。该方法各步骤的执行主体可以是图1所示方案实施环境中的终端设备10或者服务器20。在下文方法实施例中,为了便于描述,仅以各步骤的执行主体为“计算机设备”进行介绍说明。该方法可以包括如下几个步骤(310~330)中的至少一个步骤:
步骤310,获取视频中包含的多个图像帧分别对应的音素,图像帧对应的音素用于表征视频中的对象在图像帧中的发音信息。
步骤322,对于多个口型模型中的第一口型模型,基于映射关系,从多个图像帧分别对应的音素中,确定与第一口型模型对应的第一音素所对应的图像帧,得到第一图像帧序列。
在一些实施例中,以第一口型模型是AAA为例,根据映射关系,也即根据表3所示的音素与口型模型的对应关系,则确定出AAA对应的音素是ai,也即第一音素是ai,则根据标注出来的每个图像帧对应的音素,可以从多个图像帧中确定出与ai相关的图像帧。在一些实施例中,视频对应的图像帧总共为240帧,ai这个音素出现在第5个图像帧至第15个图像帧、第50个图像帧至第65个图像帧、第95个图像帧至第120个图像帧,则确定与第一口型模型对应的第一音素所对应的图像帧,得到的第一图像帧序列为第5个图像帧至第15个图像帧、第50个图像帧至第65个图像帧、第95个图像帧至第120个图像帧。
在另一些实施例中,以第一口型模型是AHH为例,根据映射关系,也即根据表3所示的音素与口型模型的对应关系,则确定出AHH对应的音素是a、ao、an、ang,也即第一音素是a、ao、an、ang,则根据标注出来的每个图像帧对应的音素,可以从多个图像帧中确定出与a、ao、an、ang相关的图像帧。在一些实施例中,视频对应的图像帧总共为240帧,a、ao、an、ang这四个音素总共出现在第1个图像帧至第4个图像帧、第38个图像帧至第45个图像帧、第130个图像帧至第142个图像帧、第197个图像帧至第232个图像帧,则确定与第一口型模型对应的第一音素所对应的图像帧,得到的第一图像帧序列为第1个图像帧至第4个图像帧、第38个图像帧至第45个图像帧、第130个图像帧至第142个图像帧、第197个图像帧至第232个图像帧。
在一些实施例中,步骤322包括步骤322-1~322-3(图中未示出)中的至少一个步骤。
步骤322-1:根据映射关系,确定与第一口型模型对应的第一音素。
步骤322-2:在第一音素与第二音素满足合并条件的情况下,将第二音素的发音时长合并到第一音素的发音时长中,得到第一音素的更新后的发音时长,第二音素是在多个图像帧分别对应的音素中与第一音素相邻的音素。
在一些实施例中,合并条件包括:第一音素与第二音素存在合并关系并且第二音素是可忽略类型的音素,或第一口型模型与第二口型模型之间的重合程度大于第一重合阈值并且第二音素是可忽略类型的音素。
在一些实施例中,相邻音素满足特定的条件,可以直接合并为同一段标注音素,对所映射的驱动参数对应的曲线进行一次权重曲线插值。可选地,第一音素和第二音素存在合并关系有下述几种情况。
可选地,若相邻音素对应到相同的口型模型。也即,对于同一口型模型对应的不同音素,如果对应到图像帧中是连续的,则认为二者存在合并关系。例如,a和b都是对应到口型模型C的音素,a的发音结束的图像帧为第5帧,b的发音开始的图像帧为第6帧,则认为a和b是相邻音素对应到相同的口型模型,则将后一个音素的发音时长合并到前一个音素的发音时长中。
可选地,处理齿擦音的子集:j,q,x。如果j、q、x后面接的是i的发音,那么合并i的发音时长到前一个发音上,并从音素发音时长起止表中删除对应的i的发音。也就是说第二音素是i,第一音素是j、q、x中的任意一种时,将i的发音时长合并到第一音素的发音时长中。
可选地,由于音素发音文件中都是以单个字母的发音存在,并且后续的规则中对于复韵母的处理会拆分成单个字母进行处理,所以这里不对音素发音文件中的单字母合并成复韵母再做处理。对于ng的音素,由于在如表2的映射关系中不存在ng这一对应音素,处理ng时,会将其时长合并到前一个音素,同时在音素时长起止表中删除ng的发音。也即,当第二音素是ng时,直接将ng的发音时长合并到ng的前一个音素的发音时长中。
可选地,在一些音素发音中,拼音zi、ci、si中的i会以ix替代,zhi、chi、shi、ri中的i会以iy替代。上述情况下,口型合成规则会将ix和iy对应的发音时长合并到前一个音素中,并在音素发音时长起止表中删除对应的i的发音。
在一些实施例中,当第一音素与第二音素存在合并关系但是第二音素是不可忽略类型的音素,或第一口型模型与第二口型模型之间的重合程度大于第一重合阈值并且第二音素是不可忽略类型的音素时,不将第二音素的发音时长合并到第一音素的发音时长中。
可选地,定义不允许合并音素的情况。首先定义不可忽略的音素,也就是必须要保持发音。初始化所有的音素的ignore特性为true。
可选地,当前音素是双唇音或者唇齿音对应的音素,ignore=false,也即认为双唇音或者唇齿音对应的音素是不可忽略类型的音素。
可选地,当前音素为Tongue-only对应的音素,如果后一个音素不是Tongue-only对应的音素也不是停顿符,那么后一个音素ignore=false,也即后一个音素是是不可忽略类型的音素。
可选地,如果后一个音素是Tongue-only对应的音素或者是停顿符,那么当前一个音素同时为Tongue-only对应的音素或者是停顿符时,则当前音素ignore=false即当前音素为不可忽略类型的音素,否则前一个音素ignore=false即前一个音素为不可忽略类型的音素。
可选地,当前音素为元音或者是复韵母对应的音素时,并且前一个音素为双唇音对应的音素、Tongue-only或半元音对应的音素时,当前音素为ignore=false,即当前音素为不可忽略类型的音素。
可选地,当前音素如果前后两个音素都为Jaw_heavy对应的音素时,当前音素ignore=false,即当前音素为不可忽略类型的音素。
可选地,元音覆盖前一个为Tongue-only的音素。如果当前音素为元音或者是复韵母,并且前一个音素为Tongue-only且ignore=true,那么当前音素的开始时间为当前音素和前一个音素起始时间取平均。前一个音素的口型权重(驱动参数)在原先的基础上*0.7,且ignore=false。
步骤322-3:根据第一音素的更新后的发音时长,从多个图像帧中确定第一图像帧序列。
步骤324,从第一图像帧序列中,确定至少一组第一音素关键帧;其中,每一组第一音素关键帧包括:与第一音素对应的上升起点关键帧、上升结束关键帧、下降开始关键帧以及下降结束关键帧。
在一些实施例中,上升起点关键帧是指音素的开始位置所对应的图像帧,上升结束关键帧是指音素的发音最大值所对应的图像帧,下降开始关键帧是指音素的音量开始下降位置所对应的图像帧,下降结束关键帧是指音素的发音结束位置所对应的图像帧。
在一些实施例中,对于第一音素来说,可以对应多组第一音素关键帧。在一些实施例中,以第一口型模型是AAA为例,得到的第一图像帧序列为第5个图像帧至第15个图像帧、第50个图像帧至第65个图像帧、第95个图像帧至第120个图像帧,则根据第5个图像帧至第15个图像帧、第50个图像帧至第65个图像帧、第95个图像帧至第120个图像帧可以确定出三组第一音素关键帧。
在一些实施例中,步骤324包括步骤324-1~324-2(图中未示出)中的至少一个步骤。
步骤324-1:确定第一音素对应的提前帧数和回落帧数,提前帧数用于表征音素从发音开始到发音最大值所持续的起始发音的时长,回落帧数用于表征音素从发音最大值到发音结束所持续的回落发音的时长。
在一些实施例中,从发音开始到发音高处持续大约0.12s(也即60fps时,起始帧数ahead=7帧),回落时长大约0.07s(也即60fps时,回落帧数after=4帧)。当然,本申请实施例中对于起始发音以及回落发音的时长不作限定,除了0.12和0.07之外,还可以是其他数值,并且在不同的fps之下,对应的起始帧数和回落帧数也并不相同。
步骤324-2:根据第一音素在第一图像帧序列中的起始图像帧和终止图像帧,以及第一音素对应的提前帧数和回落帧数,确定至少一组第一音素关键帧;其中,起始发音的时长和回落发音的时长根据音素的不同而对应发生改变。
在一些实施例中,对于第一音素来说,可以对应多组第一音素关键帧。在一些实施例中,以第一口型模型是AAA为例,得到的第一图像帧序列为第5个图像帧至第15个图像帧、第50个图像帧至第65个图像帧、第95个图像帧至第120个图像帧,则根据第5个图像帧至第15个图像帧、第50个图像帧至第65个图像帧、第95个图像帧至第120个图像帧可以确定出三组第一音素关键帧。以第一图像帧序列中的第5个图像帧至第15个图像帧为例,起始图像帧为第5个图像帧,终止图像帧为第15个图像帧。以第一图像帧序列中的第50个图像帧至第65个图像帧为例,起始图像帧为第50个图像帧,终止图像帧为第65个图像帧。
可选地,上升结束关键帧:idx1=si+floor((ei-si)*0.2)。其中,ei表示终止图像帧,si表示开始图像帧,floor表示向下取整。本申请对于上升结束关键帧的具体确定方式不作限定,任何合理的确定方式均可纳入本申请的保护范围之内。
可选地,上升起点关键帧:idx0=max(idx1-ahead,max(1,idx1-4)),最少比上升结束关键帧提前4帧。本申请对于上升起点关键帧的具体确定方式不作限定,任何合理的确定方式均可纳入本申请的保护范围之内。
可选地,下降开始关键帧:idx2=max(si+ceil((ei-si)*0.8),idx1+2),上升结束关键帧最少持续2帧,ceil表示向上取整。本申请对于下降开始关键帧的具体确定方式不作限定,任何合理的确定方式均可纳入本申请的保护范围之内。
可选地,下降结束关键帧:idx3=min(idx2+after,min((ei-si)*0.8,idx2+2)),从下降开始关键帧起最少延后2帧。本申请对于下降结束关键帧的具体确定方式不作限定,任何合理的确定方式均可纳入本申请的保护范围之内。
步骤326,根据至少一组第一音素关键帧,确定第一口型模型在各个图像帧下分别对应的驱动参数,得到第一口型模型对应的驱动参数。
在一些实施例中,步骤326包括步骤326-1~326-5(图中未示出)中的至少一个步骤。
步骤326-1:将第一口型模型在上升起点关键帧下对应的驱动参数,设置为第一参数。
步骤326-2:将第一口型模型在上升结束关键帧下对应的驱动参数,设置为第二参数。
步骤326-3:将第一口型模型在下降开始关键帧下对应的驱动参数,设置为第三参数。
步骤326-4:将第一口型模型在下降结束关键帧下对应的驱动参数,设置为第四参数;其中,第二参数大于第三参数,第三参数大于第一参数和第四参数。
在一些实施例中,第一参数与第四参数是相同数值。在另一些实施例中,第一参数和第四参数是不同数值。可选地,第一参数是0,第二参数是0.8,第三参数是0.64,第四参数是0。本申请对于参数的具体数值也不作限定。
在一些实施例中,确定关键帧之后,标注音素对应的口型模型的驱动参数。一般情况,该段时长中最大驱动参数(strength)设为0.8,则idx0时刻对应的驱动参数为0,idx1时刻对应的驱动参数为最大驱动参数,idx2时刻对应的驱动参数为最大驱动参数*0.8,idx3时刻对应的驱动参数为0。此处驱动参数也可以认为是权重。
在一些实施例中,以第一口型模型是AAA为例,得到对应的两组第一音素关键帧的上升起点关键帧和下降结束关键帧,分别为第4帧和第20帧,以及第25帧和第50帧,则当上升起点关键帧和下降结束关键帧对应驱动参数均为第一参数时,认为上升起点关键帧之前的图像帧到下降结束关键帧之后的图像帧对应的驱动参数也为第一参数,也即第20帧到第25帧对应的驱动参数为第一参数。在另一些实施例中,在没有其他关键帧的情况下,认为第一个上升起点关键帧之前的图像帧对应的驱动参数也为第一参数,认为最后一个下降结束关键帧之后的图像帧对应的驱动参数也为第一参数。也即,第4帧之前的图像帧对应的驱动参数为第一参数,并且第50帧之后的图像帧对应的驱动参数也认为第一参数。可选地,第一参数为0。当第一参数为0时,认为上升起点关键帧之前的图像帧到下降结束关键帧之后的图像帧对应的驱动参数为0,第一个上升起点关键帧之前的图像帧对应的驱动参数为0,认为最后一个下降结束关键帧之后的图像帧对应的驱动参数也为0,也即第20帧到第25帧的图像帧的对应的驱动参数为0,第5帧之前的图像帧对应的驱动参数为0,第50帧之后的图像帧对应的驱动参数也为0。
步骤326-5:根据第一口型模型在至少一组第一音素关键帧下分别对应的驱动参数,得到第一口型模型对应的驱动参数。
在一些实施例中,起始发音的时长,回落发音的时长,驱动参数的参数值均可以调整。
可选地,强化双唇音和唇齿音。当前音素归属于这两种发音类型时,最大驱动参数设置为1;起落时长各放大1.2倍;前一个音素的回落时长和后一个音素的起始时长各缩小0.8倍。如果此时,后一个音素是Lip_heavy或者是Jaw_heavy类型的发音,后一个音素的驱动参数缩小0.8倍。在一些实施例中,驱动参数也可认为是口型系数权重。
可选地,强化Lip_heavy的发音类型的元音。如果当前音素为Lip_heavy的发音类型,且是元音,驱动参数放大1.2倍。如果当前音素的前一个音素和后一个音素都不是双唇音且不是唇齿音时,前一个音素和后一个音素的起始时长分别放大1.1倍。
可选地,在下述实施例中,存在合并音素的情况下,可能会存在相邻两个音素为Lip_heavy的发音类型的情况,此时驱动参数缩小0.8倍。
可选地,对于Jaw_heavy的发音类型的音素,对应的驱动参数变为原先的0.9倍。
可选地,当前音素的后一个音素为停顿符号,当前音素回落时长放大1.1倍。
本申请实施例中,对于起始发音的时长,回落发音的时长,驱动参数的参数值均可以调整并不限于上述情况,任何合理的调整均可纳入本申请的保护范围之内。
在一些实施例中,步骤326-5包括步骤S1~S3(图中未示出)中的至少一个步骤。
步骤S1:根据第一口型模型在至少一组第一音素关键帧下分别对应的驱动参数,生成各个图像帧分别对应的驱动参数的初始拟合曲线。
在一些实施例中,初始拟合线可以认为是连接四个关键帧对应的驱动参数的点的平滑曲线。
步骤S2:对初始拟合曲线做插值和平滑处理,得到插值平滑曲线。
在一些实施例中,对初始拟合曲线分段三次做Hermite多项式插值,并做高斯平滑处理,得到插值平滑曲线。
步骤S3:根据插值平滑曲线,确定第一口型模型在各个图像帧下分别对应的驱动参数,得到第一口型模型对应的驱动参数。
在一些实施例中,在得到插值平滑曲线之后,根据对应图像帧的位置,确定出各个图像帧分别对应的驱动参数。
步骤328,根据多个口型模型分别对应的驱动参数,得到模型驱动参数。
步骤330,根据模型驱动参数,驱动多个口型模型合成多个图像帧分别对应的口型,得到口型动画。
本申请实施例提供的技术方案,根据从多个图像帧中确定出与第一口型模型对应的第一音素所对应的图像帧序列,并从图像帧序列中确定出至少一组音素关键帧,根据关键帧进而确定第一口型模型在各个图像帧下分别对应的驱动参数,从而合成口型动画,也即,在确定出关键帧的前提下再进一步确定驱动参数,使得驱动参数的确定较为细致。
另外,音素关键帧包括上升起点关键帧、上升结束关键帧、下降开始关键帧以及下降结束关键帧,对于不同的音素确定出来的上升起点关键帧、上升结束关键帧、下降开始关键帧以及下降结束关键帧各不相同,并且赋予上升起点关键帧、上升结束关键帧、下降开始关键帧以及下降结束关键帧以不同的驱动参数,更加符合真实发音的场景。
除此之外,关键帧的确定还需结合起始发音和回落发音,对于不同的音素来说,其对应的起始发音和回落发音各不相同,也即本申请实施例提供的技术方案在保障共性的同时,对于一些个性的音素也做了特殊的处理,使得最终合成的口型动画对于个性音素的表现更具有感染力。同时,在处理过程中,根据音素与发音类型的对应关系,对于一些可以合并的音素作合并处理,对于不可合并的音素不作合并处理,能够使得不仅可以通过合并处理的方式减少处理开销,还可以更加贴合真实人物的口型,使得口型动画的确定方式更加丰富。
当然,根据上升起点关键帧、上升结束关键帧、下降开始关键帧以及下降结束关键帧的驱动参数,确定出第一音素对应的其他图像帧的驱动参数,在符合实际情况下的前提下,通过拟合插值平滑处理等方式,可以确定出其他图像帧对应的驱动参数,相对来说在保证确定出来的驱动参数的精度的同时,处理开销较小。
请参考图7,其示出了本申请另一个实施例提供的口型合成方法的流程图。该方法各步骤的执行主体可以是图1所示方案实施环境中的终端设备10或者服务器20。在下文方法实施例中,为了便于描述,仅以各步骤的执行主体为“计算机设备”进行介绍说明。该方法可以包括如下几个步骤(310~340)中的至少一个步骤:
步骤310,获取视频中包含的多个图像帧分别对应的音素,图像帧对应的音素用于表征视频中的对象在图像帧中的发音信息。
步骤320,基于映射关系以及多个图像帧分别对应的音素,确定多个口型模型在各个图像帧下分别对应的驱动参数,得到模型驱动参数;其中,映射关系包括口型模型与音素之间的对应关系,多个口型模型在同一个图像帧下分别对应的驱动参数,用于驱动多个口型模型合成同一个图像帧对应的口型。
步骤330,根据模型驱动参数,驱动多个口型模型合成多个图像帧分别对应的口型,得到口型动画。
步骤340,在多个图像帧分别对应的音素中的第一音素和第三音素满足互斥条件的情况下,将与第三音素对应的第三口型模型在各个图像帧下分别对应的驱动参数乘以第一数值,根据相乘之后的驱动参数更新模型驱动参数。
在一些实施例中,互斥条件包括第一音素与第三音素存在互斥关系,或第一音素对应的第一口型模型与第三口型模型之间的重合程度小于第二重合阈值,第一数值是小于1的非负数。
在一些实施例中,一些特殊类型的发音可以抑制其他非所属特定类型发音。也即,一些特殊类型的音素可以抑制其他非所属特定类型的音素对应的驱动参数。可选地,第一音素是双唇音或唇齿音对应的音素,则第三音素是双唇音或唇齿音对应的音素之外的所有音素。
可选地,确保双唇音嘴唇闭合即强化双唇音时,对应的帧数会设置抑制系数为。对于驱动参数对应的插值平滑曲线,排除双唇音对应音素的插值平滑曲线,对于其他曲线在对应帧数的地方乘上抑制系数,以确对应系数下发双唇音时,减少其他音素的权重干扰。为确保抑制后的平滑效果,对抑制系数可做高斯平滑操作。可选地,抑制系数为0.4。也就是说,除了双唇音对应的音素所在图像帧的驱动参数,其他所有音素对应图像帧的驱动参数均乘以抑制系数,以达到强化双唇音的目的。
可选地,确保唇齿音嘴唇闭合即强化唇齿音时,对应的帧数会设置抑制系数。对于驱动参数对应的插值平滑曲线,排除双唇音对应的音素的插值平滑曲线,对于其他曲线在对应帧数的地方乘上抑制系数,以确对应系数下发双唇音时,减少其他音素的权重干扰。为确保抑制后的平滑效果,对抑制系数可做高斯平滑操作。可选地,抑制系数为0.4。也就是说,除了双唇音对应的音素所在图像帧的驱动参数,其他所有音素对应图像帧的驱动参数均乘以抑制系数,以到强化唇齿音的目的。
可选地,当前音素的前后音素为Jaw heavy这一发音类型的音对应的音素,则当前音素对应的图像帧的驱动参数会设置抑制系数。可选地,抑制系数为0.3。对于驱动参数对应的插值平滑曲线,排除Jaw heavy这一发音类型对应的音素的插值平滑曲线,对于其他曲线在对应帧数的地方乘上抑制系数,以确对应系数下发Jaw heavy这一发音类型的音时,减少其他音素的权重干扰。为确保抑制后的平滑效果,对抑制系数可做高斯平滑操作。也就是说,除了Jaw heavy这一发音类型对应的音素所在图像帧的驱动参数,其他所有音素对应图像帧的驱动参数均乘以抑制系数,以达到强化Jaw heavy这一发音类型的音的目的。
在一些实施例中,口型模型是根据发音信息而构建出来的三维模型,因此音素互斥的话,口型模型也是互斥的,或者说重合程度小于第二重合阈值。可选地,强化唇齿音时,可以认为唇齿音对应的音素与其他发音类型对应的音素是存在互斥关系的,也即唇齿音对应的音素的口型模型与其他口型模型重合程度相对较低。可选地,强化双唇音时,可以认为双唇音对应的音素与其他发音类型对应的音素是存在互斥关系的,也即双唇音对应的音素的口型模型与其他口型模型重合程度相对较低。
本申请实施例提供的技术方案,通过根据音素之间的互斥关系或者说口型模型之间的互斥关系,来改变对应的驱动参数,使得生成的口型动画张力更足,更能表现与发音类型对应的口型,表现力更强。
请参考图8,其示出了本申请另一个实施例提供的口型合成方法的流程图。该方法各步骤的执行主体可以是图1所示方案实施环境中的终端设备10或者服务器20。在下文方法实施例中,为了便于描述,仅以各步骤的执行主体为“计算机设备”进行介绍说明。该方法可以包括如下几个步骤(310~334)中的至少一个步骤:
步骤310,获取视频中包含的多个图像帧分别对应的音素,图像帧对应的音素用于表征视频中的对象在图像帧中的发音信息。
步骤320,基于映射关系以及多个图像帧分别对应的音素,确定多个口型模型在各个图像帧下分别对应的驱动参数,得到模型驱动参数;其中,映射关系包括口型模型与音素之间的对应关系,多个口型模型在同一个图像帧下分别对应的驱动参数,用于驱动多个口型模型合成同一个图像帧对应的口型。
步骤332,确定多个图像帧分别对应的口型参考幅度。
在一些实施例中,步骤332包括步骤332-1~332-3(图中未示出)中的至少一个步骤。
步骤332-1,获取采用第一方法得到的多个图像帧分别对应的口型系数;第一方法是任意一种用于计算多个图像帧中分别对应的对象信息的方法,对象信息中包括口型系数。
在一些实施例中,第一方法是FWH(FaceWareHouse),采用FWH方法,得到FWH的系数序列,其中系数序列表征对象信息。可选地,对象信息包括口型系数、鼻子系数、眼睛系数等等。本申请实施例中,对于第一方法的具体类型不作限定,任何可以得到对象的口型幅度、速率的方法均可以认为是第一方法。
在一些实施例中,读取FWH的系数序列中2到25列的系数作为口型系数,也即得到了n*24的口型系数的矩阵,n表示帧数,n为正整数。
步骤332-2,根据口型系数,得到多个图像帧分别对应的口型幅度。
在一些实施例中,计算上述n*24的口型系数的矩阵中每一行的二范数,作为每一个图像帧对应的口型的强度值,得到n*1的矩阵(fwh_strength)。同时统计强度值的最大值(fwh_max)和最小值(fwh_min)。可选地,该强度值也可以认为是口型幅度。
步骤332-3,对图像帧分别对应的口型幅度做归一化及平滑处理,得到多个图像帧分别对应的口型参考幅度。
在一些实施例中,对上述fwh_strength做归一化计算:fwh_strength=0.7+0.3*(fwh_strength-fwh_min)/(fwh_max-fwh_min+eps)。其中,eps是一个固定参数,避免除数为0。之后,对归一化之后的fwh_strength做高斯平滑处理,平滑窗口:gauss_wins=floor(ceil(0.30*args.fps)/2)*2+1。最终处理之后的n*1的矩阵认为是n个图像帧分别对应的口型参考幅度。
步骤334,基于模型驱动参数以及口型参考幅度,驱动多个口型模型合成多个图像帧分别对应的口型,得到口型动画。
在一些实施例中,步骤334包括步骤334-1~334-2(图中未示出)中的至少一个步骤。
步骤334-1:将图像帧对应的驱动参数与图像帧对应的口型参考幅度相乘,得到新的驱动参数。
在一些实施例中,对于一个图像帧来说,对应M个口型模型有M*1个驱动参数,对于N帧图像来说,总共有M*N个驱动参数,这M*N个驱动参数构成了模型驱动参数。其中,N和M均为正整数,n为不大于N的正整数。可选地,这M*N个驱动参数中的最大值为exp_max,如果exp_max<0.8,那么所有的驱动参数一致放大0.8/exp_max倍。
在另一些实施例中,插值后的所有驱动参数同样可以看作是一个M*N的矩阵,对于其中的每一个图像帧对应的驱动参数,均结合该图像帧对应的口型参考幅度进行放大,得到新的驱动参数。
在另一些实施例中,驱动参数先进行倍数放大,再结合口型参考幅度进行放大,得到最终的驱动参数。
步骤334-2:将多个口型模型与多个新的驱动参数相乘,驱动多个口型模型合成多个图像帧分别对应的口型,得到口型动画。
参见上述实施例,此处不再赘述。
本申请实施例提供的技术方案,通过给定一段音视频及其对应每一帧音素标注,计算BS系数序列(驱动参数)驱动3D模型口型,从而达到3D模型口型变化的速率和幅度与视频一致,同时口型形态与音素一致且标准。本质上是一种融合音素的先验的口型捕捉方案。在一些实施例中,合成方案主要包含以下步骤:首先数据准备:采集演员音视频数据,以及为每一帧进行音素标注;其次利用现有的3DMM基fwh对音频进行表情/口型识别,求解fwh系数序列,作为主要的幅度和口型速率参考;最后基于fwh系数序列、音素标注,设计音素相关的口型模型、音素与口型模型的映射表以及研发口型合成规则,合成vism BS系数(口型模型的驱动参数)序列(也可以认为是动画权值曲线)。
本申请实施例提供的技术方案,通过结合口型幅度和速率,也即结合口型系数,在原始驱动系数的基础上进行方法,使得根据重新确定出来的驱动参数驱动口型模型生成的口型动画更加连贯流畅,更加自然生动,因此,更加符合真实对象的真实口型变化。
另外,采用任意一种第一方法获得的口型系数,来计算得到口型参考幅度,在保证精度的同时,节省了计算开销。同时对驱动参数一致放大0.8/exp_max倍的处理,可以使得所有驱动参数的最大值达到0.8,而不至于出现过于极端的情况,避免导致合成的口型动画过于僵硬。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
请参考图9,其示出了本申请一个实施例提供的口型合成装置的框图。该装置900可以包括:音素获取模块910、参数确定模块920和动画生成模块930。
所述音素获取模块910,用于获取视频中包含的多个图像帧分别对应的音素,所述图像帧对应的音素用于表征所述视频中的对象在所述图像帧中的发音信息。
所述参数确定模块920,用于基于映射关系以及所述多个图像帧分别对应的音素,确定多个口型模型在各个所述图像帧下分别对应的驱动参数,得到模型驱动参数;其中,所述映射关系包括所述口型模型与音素之间的对应关系,所述多个口型模型在同一个图像帧下分别对应的驱动参数,用于驱动所述多个口型模型合成所述同一个图像帧对应的口型。
所述动画生成模块930,用于根据所述模型驱动参数,驱动所述多个口型模型合成所述多个图像帧分别对应的口型,得到口型动画。
在一些实施例中,如图10所示,所述参数确定模块920,包括序列确定子模块921、关键帧确定子模块922和参数确定子模块923。
所述序列确定子模块921,对于所述多个口型模型中的第一口型模型,基于所述映射关系,从所述多个图像帧分别对应的音素中,确定与所述第一口型模型对应的第一音素所对应的图像帧,得到第一图像帧序列。
所述关键帧确定子模块922,用于从所述第一图像帧序列中,确定至少一组第一音素关键帧;其中,每一组第一音素关键帧包括:与所述第一音素对应的上升起点关键帧、上升结束关键帧、下降开始关键帧以及下降结束关键帧。
所述参数确定子模块923,用于根据所述至少一组第一音素关键帧,确定所述第一口型模型在各个所述图像帧下分别对应的驱动参数,得到所述第一口型模型对应的驱动参数。
所述参数确定子模块923,还用于根据所述多个口型模型分别对应的驱动参数,得到所述模型驱动参数;其中,所述上升起点关键帧是指所述音素的开始位置所对应的图像帧,所述上升结束关键帧是指所述音素的发音最大值所对应的图像帧,所述下降开始关键帧是指所述音素的音量开始下降位置所对应的图像帧,所述下降结束关键帧是指所述音素的发音结束位置所对应的图像帧。
在一些实施例中,如图10所示,所述参数确定子模块923,包括参数设置单元923-a和参数确定单元923-b。
所述参数设置单元923-a,用于将所述第一口型模型在所述上升起点关键帧下对应的驱动参数,设置为第一参数。
所述参数设置单元923-a,用于将所述第一口型模型在所述上升结束关键帧下对应的驱动参数,设置为第二参数。
所述参数设置单元923-a,用于将所述第一口型模型在所述下降开始关键帧下对应的驱动参数,设置为第三参数。
所述参数设置单元923-a,用于将所述第一口型模型在所述下降结束关键帧下对应的驱动参数,设置为第四参数;其中,所述第二参数大于所述第三参数,所述第三参数大于所述第一参数和所述第四参数。
所述参数确定单元923-b,用于根据所述第一口型模型在所述至少一组第一音素关键帧下分别对应的驱动参数,得到所述第一口型模型对应的驱动参数。
在一些实施例中,所述参数确定单元923-b,用于根据所述第一口型模型在所述至少一组第一音素关键帧下分别对应的驱动参数,生成各个所述图像帧分别对应的驱动参数的初始拟合曲线。
所述参数确定单元923-b,还用于对所述初始拟合曲线做插值和平滑处理,得到插值平滑曲线。
所述参数确定单元923-b,还用于根据所述插值平滑曲线,确定所述第一口型模型在各个所述图像帧下分别对应的驱动参数,得到所述第一口型模型对应的驱动参数。
在一些实施例中,所述关键帧确定子模块922,用于确定所述第一音素对应的提前帧数和回落帧数,所述提前帧数用于表征所述音素从发音开始到发音最大值所持续的起始发音的时长,所述回落帧数用于表征所述音素从所述发音最大值到发音结束所持续的回落发音的时长。
所述关键帧确定子模块922,还用于根据所述第一音素在所述第一图像帧序列中的起始图像帧和终止图像帧,以及所述第一音素对应的提前帧数和回落帧数,确定所述至少一组第一音素关键帧;其中,所述起始发音的时长和所述回落发音的时长根据所述音素的不同而对应发生改变。
在一些实施例中,如图10所示,所述序列确定子模块921包括音素确定单元921-a、时长更新单元921-b和序列确定单元921-c。
所述音素确定单元921-a,用于根据所述映射关系,确定与所述第一口型模型对应的所述第一音素。
所述时长更新单元921-b,用于在所述第一音素与第二音素满足合并条件的情况下,将所述第二音素的发音时长合并到所述第一音素的发音时长中,得到所述第一音素的更新后的发音时长,所述第二音素是在所述多个图像帧分别对应的音素中与所述第一音素相邻的音素。
所述序列确定单元921-c,用于根据所述第一音素的更新后的发音时长,从所述多个图像帧中确定所述第一图像帧序列。
在一些实施例中,所述合并条件包括:所述第一音素与所述第二音素存在合并关系并且所述第二音素是可忽略类型的音素,或所述第一口型模型与所述第二口型模型之间的重合程度大于第一重合阈值并且所述第二音素是可忽略类型的音素。
在一些实施例中,所述参数确定模块920,还用于在所述多个图像帧分别对应的音素中的第一音素和第三音素满足互斥条件的情况下,将与所述第三音素对应的第三口型模型在各个所述图像帧下分别对应的驱动参数乘以第一数值,根据相乘之后的驱动参数更新所述模型驱动参数;其中,所述互斥条件包括所述第一音素与所述第三音素存在互斥关系,或所述第一音素对应的第一口型模型与所述第三口型模型之间的重合程度小于第二重合阈值,所述第一数值是小于1的非负数。
在一些实施例中,如图10所示,所述动画生成模块930包括幅度确定子模块931和动画生成子模块932。
所述幅度确定子模块931,用于确定所述多个图像帧分别对应的口型参考幅度。
所述动画生成子模块932,用于基于所述模型驱动参数以及所述口型参考幅度,驱动所述多个口型模型合成所述多个图像帧分别对应的口型,得到所述口型动画。
在一些实施例中,所述幅度确定子模块931,用于获取采用第一方法得到的所述多个图像帧分别对应的口型系数;所述第一方法是任意一种用于计算所述多个图像帧中分别对应的对象信息的方法,所述对象信息中包括所述口型系数。
所述幅度确定子模块931,还用于根据所述口型系数,得到所述多个图像帧分别对应的口型幅度。
所述幅度确定子模块931,还用于对所述图像帧分别对应的口型幅度做归一化及平滑处理,得到所述多个图像帧分别对应的口型参考幅度。
在一些实施例中,所述动画生成子模块932,用于将所述图像帧对应的驱动参数与所述图像帧对应的口型参考幅度相乘,得到新的驱动参数。
所述动画生成子模块932,还用于将多个所述口型模型与多个所述新的驱动参数相乘,驱动所述多个口型模型合成所述多个图像帧分别对应的口型,得到所述口型动画。
需要说明的是,上述实施例提供的装置,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图11示出了本申请另一个示例性实施例提供的计算机设备的结构框图。
通常,计算机设备1100包括有:处理器1101和存储器1102。
处理器1101可以包括一个或多个处理核心,比如4核心处理器、11核心处理器等。处理器1101可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(FieldProgrammable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1101也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1101可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1101还可以包括AI处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1102可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是有形的和非暂态的。存储器1102还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1102中的非暂态的计算机可读存储介质存储有计算机程序,该计算机程序由处理器1101加载并执行以实现上述各方法实施例提供的口型合成方法。
本领域技术人员可以理解,图11中示出的结构并不构成对计算机设备1100的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在示例性实施例中,还提供了一种计算机可读存储介质,所述存储介质中存储有计算机程序,所述计算机程序在被处理器执行时以实现上口型合成方法。
可选地,该计算机可读存储介质可以包括:ROM(Read-Only Memory,只读存储器)、RAM(Random Access Memory,随机存取存储器)、SSD(Solid State Drives,固态硬盘)或光盘等。其中,随机存取存储器可以包括ReRAM(Resistance Random Access Memory,电阻式随机存取存储器)和DRAM(Dynamic Random Access Memory,动态随机存取存储器)。
在示例性实施例中,还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序存储在计算机可读存储介质中。计算机设备的处理器从所述计算机可读存储介质中读取所述计算机程序,所述处理器执行所述计算机程序,使得所述计算机设备执行上述口型合成方法。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。另外,本文中描述的步骤编号,仅示例性示出了步骤间的一种可能的执行先后顺序,在一些其它实施例中,上述步骤也可以不按照编号顺序来执行,如两个不同编号的步骤同时执行,或者两个不同编号的步骤按照与图示相反的顺序执行,本申请实施例对此不作限定。
以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (15)
1.一种口型合成方法,其特征在于,所述方法:
获取视频中包含的多个图像帧分别对应的音素,所述图像帧对应的音素用于表征所述视频中的对象在所述图像帧中的发音信息;
基于映射关系以及所述多个图像帧分别对应的音素,确定多个口型模型在各个所述图像帧下分别对应的驱动参数,得到模型驱动参数;其中,所述映射关系包括所述口型模型与音素之间的对应关系,所述多个口型模型在同一个图像帧下分别对应的驱动参数,用于驱动所述多个口型模型合成所述同一个图像帧对应的口型;
根据所述模型驱动参数,驱动所述多个口型模型合成所述多个图像帧分别对应的口型,得到口型动画。
2.根据权利要求1所述的方法,其特征在于,所述基于映射关系以及所述多个图像帧分别对应的音素,确定多个口型模型在各个所述图像帧下分别对应的驱动参数,得到模型驱动参数,包括:
对于所述多个口型模型中的第一口型模型,基于所述映射关系,从所述多个图像帧分别对应的音素中,确定与所述第一口型模型对应的第一音素所对应的图像帧,得到第一图像帧序列;
从所述第一图像帧序列中,确定至少一组第一音素关键帧;其中,每一组第一音素关键帧包括:与所述第一音素对应的上升起点关键帧、上升结束关键帧、下降开始关键帧以及下降结束关键帧;
根据所述至少一组第一音素关键帧,确定所述第一口型模型在各个所述图像帧下分别对应的驱动参数,得到所述第一口型模型对应的驱动参数;
根据所述多个口型模型分别对应的驱动参数,得到所述模型驱动参数;
其中,所述上升起点关键帧是指所述音素的开始位置所对应的图像帧,所述上升结束关键帧是指所述音素的发音最大值所对应的图像帧,所述下降开始关键帧是指所述音素的音量开始下降位置所对应的图像帧,所述下降结束关键帧是指所述音素的发音结束位置所对应的图像帧。
3.根据权利要求2所述的方法,其特征在于,所述根据所述至少一组第一音素关键帧,确定所述第一口型模型在各个所述图像帧下分别对应的驱动参数,得到所述第一口型模型对应的驱动参数,包括:
将所述第一口型模型在所述上升起点关键帧下对应的驱动参数,设置为第一参数;
将所述第一口型模型在所述上升结束关键帧下对应的驱动参数,设置为第二参数;
将所述第一口型模型在所述下降开始关键帧下对应的驱动参数,设置为第三参数;
将所述第一口型模型在所述下降结束关键帧下对应的驱动参数,设置为第四参数;其中,所述第二参数大于所述第三参数,所述第三参数大于所述第一参数和所述第四参数;
根据所述第一口型模型在所述至少一组第一音素关键帧下分别对应的驱动参数,得到所述第一口型模型对应的驱动参数。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一口型模型在所述至少一组第一音素关键帧下分别对应的驱动参数,得到所述第一口型模型对应的驱动参数,包括:
根据所述第一口型模型在所述至少一组第一音素关键帧下分别对应的驱动参数,生成各个所述图像帧分别对应的驱动参数的初始拟合曲线;
对所述初始拟合曲线做插值和平滑处理,得到插值平滑曲线;
根据所述插值平滑曲线,确定所述第一口型模型在各个所述图像帧下分别对应的驱动参数,得到所述第一口型模型对应的驱动参数。
5.根据权利要求2所述的方法,其特征在于,所述从所述第一图像帧序列中,确定至少一组第一音素关键帧,包括:
确定所述第一音素对应的提前帧数和回落帧数,所述提前帧数用于表征所述音素从发音开始到发音最大值所持续的起始发音的时长,所述回落帧数用于表征所述音素从所述发音最大值到发音结束所持续的回落发音的时长;
根据所述第一音素在所述第一图像帧序列中的起始图像帧和终止图像帧,以及所述第一音素对应的提前帧数和回落帧数,确定所述至少一组第一音素关键帧;
其中,所述起始发音的时长和所述回落发音的时长根据所述音素的不同而对应发生改变。
6.根据权利要求2所述的方法,其特征在于,所述对于所述多个口型模型中的第一口型模型,基于所述映射关系,从所述多个图像帧分别对应的音素中,确定与所述第一口型模型对应的第一音素所对应的图像帧,得到第一图像帧序列,包括:
根据所述映射关系,确定与所述第一口型模型对应的所述第一音素;
在所述第一音素与第二音素满足合并条件的情况下,将所述第二音素的发音时长合并到所述第一音素的发音时长中,得到所述第一音素的更新后的发音时长,所述第二音素是在所述多个图像帧分别对应的音素中与所述第一音素相邻的音素;
根据所述第一音素的更新后的发音时长,从所述多个图像帧中确定所述第一图像帧序列。
7.根据权利要求6所述的方法,其特征在于,所述合并条件包括:所述第一音素与所述第二音素存在合并关系并且所述第二音素是可忽略类型的音素,或所述第一口型模型与所述第二口型模型之间的重合程度大于第一重合阈值并且所述第二音素是可忽略类型的音素。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述多个图像帧分别对应的音素中的第一音素和第三音素满足互斥条件的情况下,将与所述第三音素对应的第三口型模型在各个所述图像帧下分别对应的驱动参数乘以第一数值,根据相乘之后的驱动参数更新所述模型驱动参数;
其中,所述互斥条件包括所述第一音素与所述第三音素存在互斥关系,或所述第一音素对应的第一口型模型与所述第三口型模型之间的重合程度小于第二重合阈值,所述第一数值是小于1的非负数。
9.根据权利要求1所述的方法,其特征在于,所述根据所述模型驱动参数,驱动所述多个口型模型合成所述多个图像帧分别对应的口型,得到口型动画,包括:
确定所述多个图像帧分别对应的口型参考幅度;
基于所述模型驱动参数以及所述口型参考幅度,驱动所述多个口型模型合成所述多个图像帧分别对应的口型,得到所述口型动画。
10.根据权利要求9所述的方法,其特征在于,所述确定所述多个图像帧分别对应的口型参考幅度,包括:
获取采用第一方法得到的所述多个图像帧分别对应的口型系数;所述第一方法是任意一种用于计算所述多个图像帧中分别对应的对象信息的方法,所述对象信息中包括所述口型系数;
根据所述口型系数,得到所述多个图像帧分别对应的口型幅度;
对所述图像帧分别对应的口型幅度做归一化及平滑处理,得到所述多个图像帧分别对应的口型参考幅度。
11.根据权利要求9所述的方法,其特征在于,所述基于所述模型驱动参数,以及所述口型参考幅度,驱动所述多个口型模型合成所述多个图像帧分别对应的口型,得到所述口型动画,包括:
将所述图像帧对应的驱动参数与所述图像帧对应的口型参考幅度相乘,得到新的驱动参数;
将多个所述口型模型与多个所述新的驱动参数相乘,驱动所述多个口型模型合成所述多个图像帧分别对应的口型,得到所述口型动画。
12.一种口型合成装置,其特征在于,所述装置:
音素获取模块,用于获取视频中包含的多个图像帧分别对应的音素,所述图像帧对应的音素用于表征所述视频中的对象在所述图像帧中的发音信息;
参数确定模块,用于基于映射关系以及所述多个图像帧分别对应的音素,确定多个口型模型在各个所述图像帧下分别对应的驱动参数,得到模型驱动参数;其中,所述映射关系包括所述口型模型与音素之间的对应关系,所述多个口型模型在同一个图像帧下分别对应的驱动参数,用于驱动所述多个口型模型合成所述同一个图像帧对应的口型;
动画生成模块,用于根据所述模型驱动参数,驱动所述多个口型模型合成所述多个图像帧分别对应的口型,得到口型动画。
13.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现如上述权利要求1至11任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现如上述权利要求1至11任一项所述的方法。
15.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序存储在计算机可读存储介质中,处理器从所述计算机可读存储介质读取并执行所述计算机程序,以实现如权利要求1至11任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211401319.6A CN116958328A (zh) | 2022-11-09 | 2022-11-09 | 口型合成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211401319.6A CN116958328A (zh) | 2022-11-09 | 2022-11-09 | 口型合成方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116958328A true CN116958328A (zh) | 2023-10-27 |
Family
ID=88443260
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211401319.6A Pending CN116958328A (zh) | 2022-11-09 | 2022-11-09 | 口型合成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116958328A (zh) |
-
2022
- 2022-11-09 CN CN202211401319.6A patent/CN116958328A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110390704B (zh) | 图像处理方法、装置、终端设备及存储介质 | |
Chuang et al. | Mood swings: expressive speech animation | |
US20210174072A1 (en) | Microexpression-based image recognition method and apparatus, and related device | |
Pham et al. | End-to-end learning for 3d facial animation from speech | |
Le et al. | Live speech driven head-and-eye motion generators | |
US20220028031A1 (en) | Image processing method and apparatus, device, and storage medium | |
CN110688911A (zh) | 视频处理方法、装置、系统、终端设备及存储介质 | |
CN110874557A (zh) | 一种语音驱动虚拟人脸的视频生成方法以及装置 | |
CN111459454B (zh) | 交互对象的驱动方法、装置、设备以及存储介质 | |
CN111459452B (zh) | 交互对象的驱动方法、装置、设备以及存储介质 | |
Yu et al. | A video, text, and speech-driven realistic 3-D virtual head for human–machine interface | |
TW202138993A (zh) | 互動物件的驅動方法、裝置、設備以及儲存媒體 | |
WO2023284435A1 (zh) | 生成动画的方法及装置 | |
US20220398797A1 (en) | Enhanced system for generation of facial models and animation | |
CN113228163A (zh) | 基于文本和音频的实时面部再现 | |
Zhou et al. | An image-based visual speech animation system | |
CN114895817B (zh) | 交互信息处理方法、网络模型的训练方法及装置 | |
US11887232B2 (en) | Enhanced system for generation of facial models and animation | |
US20220398795A1 (en) | Enhanced system for generation of facial models and animation | |
CN110910479A (zh) | 视频处理方法、装置、电子设备及可读存储介质 | |
CN114241558A (zh) | 模型的训练方法、视频生成方法和装置、设备、介质 | |
Tang et al. | Real-time conversion from a single 2D face image to a 3D text-driven emotive audio-visual avatar | |
CN116958328A (zh) | 口型合成方法、装置、设备及存储介质 | |
CN114898018A (zh) | 数字对象的动画生成方法、装置、电子设备及存储介质 | |
Pham et al. | Learning continuous facial actions from speech for real-time animation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |