CN115049769B - 角色动画生成方法、装置、计算机设备和存储介质 - Google Patents

角色动画生成方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN115049769B
CN115049769B CN202210984062.5A CN202210984062A CN115049769B CN 115049769 B CN115049769 B CN 115049769B CN 202210984062 A CN202210984062 A CN 202210984062A CN 115049769 B CN115049769 B CN 115049769B
Authority
CN
China
Prior art keywords
finite element
vertex
obtaining
element mesh
deformation
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
Application number
CN202210984062.5A
Other languages
English (en)
Other versions
CN115049769A (zh
Inventor
陆树梁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Zesen Software Technology Co ltd
Original Assignee
Shenzhen Zesen Software Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Zesen Software Technology Co ltd filed Critical Shenzhen Zesen Software Technology Co ltd
Priority to CN202210984062.5A priority Critical patent/CN115049769B/zh
Publication of CN115049769A publication Critical patent/CN115049769A/zh
Application granted granted Critical
Publication of CN115049769B publication Critical patent/CN115049769B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • G06T17/205Re-meshing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请涉及一种角色动画生成方法、装置、计算机设备和存储介质。所述方法包括:获取动画角色有限元网格、骨骼模型,获取骨骼模型中骨骼的运动特征,获取有限元网格的顶点相对于骨骼模型的蒙皮权重,基于蒙皮权重得到有限元网格的顶点的蒙皮权重相似度,基于蒙皮权重相似度融合得到有限元网格的顶点的变换中心点,基于变换中心点、骨骼的运动特征以及蒙皮权重融合得到有限元网格的顶点的形变参数,获取有限元网格的调整因子,基于调整因子、形变参数以及有限元网格形变方程得到有限元网格形变后顶点的形变位置信息,根据顶点形变位置信息得到有限元网格在形变后的形状特征,进而得到有限元网格对应的角色动画。能够有效提高角色动画生成效率。

Description

角色动画生成方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种角色动画生成方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,三维动画设计在产业发展中取得了巨大的经济效益和社会效益,而角色动画的生成是动画设计中的重要部分。
现有技术中,在对角色动画模型采用拟牛顿法解算得到每一帧角色动画时,算法迭代速度很慢,角色动画生成的效率低。
发明内容
基于此,有必要针对上述技术问题,提供一种角色动画生成方法、装置、计算机设备和计算机可读存储介质,能够有效提高角色动画生成效率。
一种角色动画生成方法,包括:
获取动画角色有限元网格、骨骼模型,骨骼模型内嵌于有限元网格内部;
获取骨骼模型中骨骼的运动特征;
获取有限元网格的顶点相对于骨骼模型的蒙皮权重,蒙皮权重用于表征有限元网格的顶点相对于骨骼模型的相对位置信息;
基于蒙皮权重得到有限元网格的顶点的蒙皮权重相似度;
基于蒙皮权重相似度融合得到有限元网格的顶点的变换中心点,变换中心点为有限元网格的顶点发生旋转位移时的位置参考点;
基于变换中心点、骨骼的运动特征以及蒙皮权重融合得到有限元网格的顶点的形变参数;
获取有限元网格的调整因子,调整因子用于表征有限元网格对所受合力变化的灵敏度;
基于调整因子、形变参数以及有限元网格形变方程得到有限元网格形变后顶点的形变位置信息,有限元网格形变方程用于求解有限元网格形变后各顶点的位置信息;
根据顶点形变位置信息得到有限元网格在形变后的形状特征,进而得到有限元网格对应的角色动画。
在一个实施例中,基于蒙皮权重得到有限元网格的顶点的蒙皮权重相似度,包括:
获取有限元网格的第一顶点相对于骨骼模型中的骨骼对的第一蒙皮插值权重,骨骼对为骨骼模型中两块不同骨骼的组合;
获取有限元网格的第二顶点相对于骨骼对的第二蒙皮插值权重;
基于第一蒙皮插值权重与第二蒙皮插值权重的融合确定第一顶点与第二顶点的蒙皮权重相似度。
在一个实施例中,基于蒙皮权重相似度融合得到有限元网格的顶点的变换中心点,包括:
获取预设范围内有限元网格的顶点的位置信息;
根据预设范围内有限元网格的顶点的位置信息确定有限元网格上对应邻接的有限元单元的体积值;
基于预设范围内有限元网格的顶点的位置信息和对应的蒙皮权重相似度、对应邻接的有限元单元的体积值融合得到变换中心点。
在一个实施例中,基于变换中心点、骨骼的运动特征以及蒙皮权重融合得到有限元网格的顶点的形变参数,包括:
根据骨骼的运动特征的旋转项得到对应的等价旋转四元数;
根据等价旋转四元数、蒙皮权重得到优化旋转四元数;
基于变换中心点、骨骼的运动特征的平移项、优化旋转四元数以及等价旋转四元数融合得到优化平移项;
对有限元网格的顶点进行优化旋转四元数所表征的旋转变换后再进行优化平移项所表征的平移变换,得到有限元网格的顶点的形变参数。
在一个实施例中,根据等价旋转四元数、蒙皮权重得到优化旋转四元数,包括:
基于等价旋转四元数与蒙皮权重进行加权融合得到混合旋转四元数;
将混合旋转四元数进行正则化得到优化旋转四元数。
在一个实施例中,获取有限元网格的调整因子,包括:
获取有限元网格对应的拉普拉斯算子、骨骼模型对应的骨骼驱动势能的海森矩阵以及骨骼模型对应的骨骼驱动势能的强度因子,骨骼驱动势能用于表征骨骼模型的顶点与骨骼模型的顶点的有限元单元的位置差异;
基于拉普拉斯算子、海森矩阵以及强度因子融合得到有限元网格的调整因子。
在一个实施例中,获取有限元网格对应的拉普拉斯算子、骨骼模型对应的骨骼驱动势能的海森矩阵以及骨骼模型对应的骨骼驱动势能的强度因子,包括:
获取骨骼模型的顶点的位置信息以及对应的有限元网格的有限元单元的位置信息,骨骼模型的顶点被包含在对应的有限元网格的有限元单元中;
基于骨骼模型的顶点的位置信息与对应的有限元网格的有限元单元的位置信息进行融合得到骨骼驱动势能。
一种角色动画生成装置,包括:
模型获取模块,用于获取动画角色有限元网格、骨骼模型,骨骼模型内嵌于有限元网格内部;
运动特征获取模块,用于获取骨骼模型中骨骼的运动特征;
蒙皮权重获取模块,用于获取有限元网格的顶点相对于骨骼模型的蒙皮权重,蒙皮权重用于表征有限元网格的顶点相对于骨骼模型的相对位置信息;
蒙皮权重相似度生成模块,用于基于蒙皮权重得到有限元网格的顶点的蒙皮权重相似度;
变换中心点生成模块,用于基于蒙皮权重相似度融合得到有限元网格的顶点的变换中心点,变换中心点为有限元网格的顶点发生旋转位移时的位置参考点;
形变参数生成模块,用于基于变换中心点、骨骼的运动特征以及蒙皮权重融合得到有限元网格的顶点的形变参数;
调整因子获取模块,用于获取有限元网格的调整因子,调整因子用于表征有限元网格对所受合力变化的灵敏度;
形变位置信息生成模块,用于基于调整因子、形变参数以及有限元网格形变方程得到有限元网格形变后顶点的形变位置信息,有限元网格形变方程用于求解有限元网格形变后各顶点的位置信息;
角色动画生成模块,用于根据顶点形变位置信息得到有限元网格在形变后的形状特征,进而得到有限元网格对应的角色动画。
一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:
获取动画角色有限元网格、骨骼模型,骨骼模型内嵌于有限元网格内部;
获取骨骼模型中骨骼的运动特征;
获取有限元网格的顶点相对于骨骼模型的蒙皮权重,蒙皮权重用于表征有限元网格的顶点相对于骨骼模型的相对位置信息;
基于蒙皮权重得到有限元网格的顶点的蒙皮权重相似度;
基于蒙皮权重相似度融合得到有限元网格的顶点的变换中心点,变换中心点为有限元网格的顶点发生旋转位移时的位置参考点;
基于变换中心点、骨骼的运动特征以及蒙皮权重融合得到有限元网格的顶点的形变参数;
获取有限元网格的调整因子,调整因子用于表征有限元网格对所受合力变化的灵敏度;
基于调整因子、形变参数以及有限元网格形变方程得到有限元网格形变后顶点的形变位置信息,有限元网格形变方程用于求解有限元网格形变后各顶点的位置信息;
根据顶点形变位置信息得到有限元网格在形变后的形状特征,进而得到有限元网格对应的角色动画。
一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取动画角色有限元网格、骨骼模型,骨骼模型内嵌于有限元网格内部;
获取骨骼模型中骨骼的运动特征;
获取有限元网格的顶点相对于骨骼模型的蒙皮权重,蒙皮权重用于表征有限元网格的顶点相对于骨骼模型的相对位置信息;
基于蒙皮权重得到有限元网格的顶点的蒙皮权重相似度;
基于蒙皮权重相似度融合得到有限元网格的顶点的变换中心点,变换中心点为有限元网格的顶点发生旋转位移时的位置参考点;
基于变换中心点、骨骼的运动特征以及蒙皮权重融合得到有限元网格的顶点的形变参数;
获取有限元网格的调整因子,调整因子用于表征有限元网格对所受合力变化的灵敏度;
基于调整因子、形变参数以及有限元网格形变方程得到有限元网格形变后顶点的形变位置信息,有限元网格形变方程用于求解有限元网格形变后各顶点的位置信息;
根据顶点形变位置信息得到有限元网格在形变后的形状特征,进而得到有限元网格对应的角色动画。
上述角色动画生成方法、装置、计算机设备和存储介质,获取动画角色有限元网格、骨骼模型,获取骨骼模型中骨骼的运动特征,再根据有限元网格的顶点与骨骼模型的蒙皮权重得到各个有限元网格的顶点的蒙皮权重相似度,再通过蒙皮权重相似度构造得到各个顶点的变换中心点,进而根据变换中心点、骨骼的运动特征以及蒙皮权重融合得到有限元网格顶点的形变参数;再将形变参数作为有限元网格形变方程中有限元网格顶点形变位置信息的迭代初始值,使得有限元网格的顶点的迭代初始值更加接近于最终迭代出来的形变值,有效减少了有限元网格形变方程的迭代步长,从而能够更快得到有限元网格的顶点在形变后的位置信息,加快了有限元网格形变方程的解算速度,从而有效提高了角色动画生成效率。
附图说明
图1为一个实施例中角色动画生成方法的应用环境图;
图2为一个实施例中角色动画生成方法的流程示意图;
图3为一个实施例中确定蒙皮权重相似度的流程示意图;
图4为一个实施例中生成变换中心点的流程示意图;
图5为一个实施例中生成形变参数的流程示意图;
图6为一个实施例中生成优化旋转四元数的流程示意图;
图7为一个实施例中生成调整因子的流程示意图;
图8为一个实施例中得到骨骼驱动势能的流程示意图;
图9为一个实施例中角色动画生成装置结构框图;
图10为一个实施例中计算机设备的内部结构图;
图11为一个实施例中动画角色有限元网格的示意图;
图12为一个实施例中动画角色的骨骼模型的示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的角色动画生成方法,可以应用于如图1所示的应用环境中。如图1所示,计算机设备102获取动画角色有限元网格、骨骼模型以及骨骼模型中骨骼的运动特征,计算得到有限元网格的顶点相对于骨骼模型的蒙皮权重,再根据各点的蒙皮权重得到各个顶点对应的变换中心点,最后根据变换中心点、骨骼的运动特征以及蒙皮权重融合得到有限元网格的顶点的形变参数,再将形变参数作为有限元网格形变方程的迭代初始值进行迭代,最终得到有限元网格的顶点形变后的位置信息,进而得到有限元网格形变后的形状特征,进而得到有限元网格对应的角色动画。其中,计算机设备102具体可以包括但不限于各种个人计算机、笔记本电脑、服务器、智能手机、平板电脑、智能摄像机和便携式可穿戴设备等。
在一个实施例中,如图2所示,提供了一种角色动画生成方法,以该方法应用于图1中的计算机设备102为例进行说明,包括以下步骤:
步骤S202,获取动画角色有限元网格、骨骼模型,骨骼模型内嵌于有限元网格内部。
其中,动画角色有限元网格是用于接受各种外力以及骨骼驱动力作用而产生的形变的三维动画角色模型,如图11所示,骨骼模型是用于提供使动画对象的有限元网格发生形变的骨骼驱动力得骨骼模型,如图12所示,动画角色有限元网格、骨骼模型都可以采用四面体网格或六面体网格等方法来进行有限元的划分,使得动画角色有限元网格、骨骼模型都是由一个个有限元单元组成的模型,这里不作限制,骨骼模型内嵌于有限元网格中,并且骨骼模型的有限元单元顶点与动画角色有限元网格的有限元单元具有互相绑定的相对位置关系,例如,可以通过计算骨骼模型的顶点相对于动画角色有限元网格的有限元单元的质心插值坐标的方式来构建两者之间的相对位置关系,质心插值坐标表示骨骼模型的顶点相对于动画角色有限元网格的有限元单元的各顶点的位置转换关系,从而实现骨骼模型与动画角色有限元网格之间的绑定,使得骨骼能够驱动着有限元网格运动。
步骤S204,获取骨骼模型中骨骼的运动特征。
其中,骨骼的运动特征用于表征骨骼模型中骨骼发生的运动形式,骨骼的运动特征包括旋转特征以及平移特征等运动。
举例说明,假设骨骼模型由Nb条独立的骨头,通过对比用于作为参照的静态骨骼以及骨骼运动中某一帧的姿势,可以得到Nb个骨骼刚体运动,每个刚体运动都可以用一个表征位移的3x3的旋转矩阵Ri,i=1,2,…,Nb以及一个表征平移位移的三维向量ti,i=1,2,…,Nb来表示。
步骤S206,获取有限元网格的顶点相对于骨骼模型的蒙皮权重,蒙皮权重用于表征有限元网格的顶点相对于骨骼模型的相对位置信息。
具体地,计算机设备利用Bounded Biharmonic Weight算法根据给定的有限元网格以及骨骼模型自动计算有限元网格上的顶点关于整个骨骼模型的蒙皮权重,例如有限元网格的顶点Pi关于所有骨骼的蒙皮权重
Figure 412027DEST_PATH_IMAGE002
,其中
Figure 190627DEST_PATH_IMAGE004
为骨骼的数目。
步骤S208,基于蒙皮权重得到有限元网格的顶点的蒙皮权重相似度。
其中,蒙皮权重用于表征有限元网格的顶点相对于整个骨骼模型的相对位置关系,而蒙皮权重相似度用于表征两个有限元网格的顶点的蒙皮权重之间的相似程度,也就是不同的有限元网格的顶点与骨骼模型的相对位置关系间的相似程度,可以使用皮尔逊相关系数、余弦相似度、杰卡德相似系数以及灰度相似性准则等方法来衡量蒙皮权重之间的相似度。
步骤S210,基于蒙皮权重相似度融合得到有限元网格的顶点的变换中心点,变换中心点为有限元网格的顶点发生旋转位移时的位置参考点。
其中,每个有限元网格的顶点都具有对应的变换中心点,当有限元网格的顶点发生旋转、位移时,将变换中心点作为对应的顶点的位置参考点。
具体地,计算机设备获取当前有限元网格的顶点的位置信息,以该点为中心选取周围预设范围内的所有有限元网格的顶点的位置信息以及各点的蒙皮权重,计算得到各点之间的蒙皮权重相似度,再根据预设范围内其他各顶点与当前顶点的位置关系进行蒙皮权重相似度的插值,得到当前顶点对应的变换中心点。
步骤S212,基于变换中心点、骨骼的运动特征以及蒙皮权重融合得到有限元网格的顶点的形变参数。
其中,形变参数是有限元网格的顶点经过骨骼的运动特征所表征的旋转、位移对应的几何变换后的位置信息,表征了有限元网格各顶点在经过骨骼的运动特征所表征的初始形变下的形变特征。
具体地,计算机设备将骨骼的运动特征中的旋转特征矩阵转变为等价的四元数表达形式,再将四元数与蒙皮权重进行加权融合得到优化后的四元数,然后根据优化后的四元数、变换中心点、骨骼的运动特征中的平移特征向量以及四元数构造优化的平移向量,最后对有限元网格的顶点进行优化后的四元数以及优化的平移向量所表征的几何变换得到形变后的顶点的位置信息,即得到有限元网格的顶点的形变参数。
步骤S214,获取有限元网格的调整因子,调整因子用于表征有限元网格对所受合力变化的灵敏度。
其中,调整因子用于表征有限元网格对所受合力变化的灵敏度,当有限元网格所受合力的变化越快,调整因子就越大。
具体地,计算机设备根据动画角色的有限元网格的顶点的位置信息构造有限元网格的拉普拉斯算子,并且根据有限元网格与骨骼模型的相对位置关系,构造骨骼驱动势能函数,使得有限元网格实现跟随骨骼的运动而运动,由有限元网格的拉普拉斯算子与骨骼驱动势能函数的海森矩阵以及骨骼驱动势能的强度因子,构造得到调整因子。
步骤S216,基于调整因子、形变参数以及有限元网格形变方程得到有限元网格形变后顶点的形变位置信息,有限元网格形变方程用于求解有限元网格形变后各顶点的位置信息。
具体地,计算机设备将形变参数作为有限元网格形变方程中形变的初始值进行迭代计算,将调整因子作为有限元网格形变方程中逆海森矩阵的迭代初始值,而方程的每一次迭代都会产生新的形变值,同时计算形变值对应的合力大小,判断有限元网格所受合力是否达到预设的阈值,如果达到预设的阈值条件,则停止迭代得到最终的形变值,如果没达到预设的阈值条件,则继续迭代,产生新的形变值。
举例说明,计算机设备构造有限元网格形变方程具体如下所示:
Figure 730193DEST_PATH_IMAGE006
,公式1
Figure 252441DEST_PATH_IMAGE008
,公式2
Figure 92221DEST_PATH_IMAGE010
,公式3
其中,SDP算法(半正定规划算法)负责将非正定的矩阵投影成一个正定的矩阵,进而保证迭代算法的稳定性,
Figure 41723DEST_PATH_IMAGE012
是有限元网格的顶点在发生形变前的初始位置信息,
Figure 803005DEST_PATH_IMAGE014
是后向线性搜索(Backtracking Line Search)的步长,
Figure 660103DEST_PATH_IMAGE016
是迭代到第k步的海森矩阵,
Figure 823231DEST_PATH_IMAGE018
是迭代到第k步的有限元网格所受到合力的情况,为了提高解算效率,对上述公式进行如下近似变换,如下公式所示:
Figure 474792DEST_PATH_IMAGE020
,公式4
Figure 988950DEST_PATH_IMAGE022
,公式5
根据迭代过程记录每一次解的更新以及梯度的更新:
Figure 853001DEST_PATH_IMAGE024
,公式6
Figure 401794DEST_PATH_IMAGE026
,公式7
计算机设备将调整因子
Figure 427519DEST_PATH_IMAGE028
作为上述公式4中逆海森矩阵
Figure 694552DEST_PATH_IMAGE030
的初始值,在每一次新的迭代过程中,使用记录到的解的更新量
Figure 96714DEST_PATH_IMAGE032
以及梯度的更新量
Figure 765593DEST_PATH_IMAGE034
修正逆海森矩阵的近似:
Figure 959290DEST_PATH_IMAGE036
,公式8
Figure 448040DEST_PATH_IMAGE038
,公式9
Figure 919472DEST_PATH_IMAGE040
,公式10
根据以上公式1到10中,利用公式4与公式5代替了公式1到公式3的方法求解有限元网格的顶点在形变后新的位置信息,大大减少了方程迭代的时间,提高了解算的效率。
步骤S218,根据顶点形变位置信息得到有限元网格在形变后的形状特征,进而得到有限元网格对应的角色动画。
上述角色动画生成方法、装置、计算机设备和存储介质,通过获取动画角色有限元网格、骨骼模型,获取骨骼模型中骨骼的运动特征,再根据有限元网格的顶点与骨骼模型的蒙皮权重得到各个有限元网格的顶点的蒙皮权重相似度,再通过蒙皮权重相似度构造得到各个顶点的变换中心点,进而根据变换中心点、骨骼的运动特征以及蒙皮权重融合得到有限元网格顶点的形变参数;再将形变参数作为有限元网格形变方程中有限元网格顶点形变位置信息的迭代初始值,使得有限元网格的顶点的迭代初始值更加接近于最终迭代出来的形变值,有效减少了有限元网格形变方程的迭代步长,从而能够更快得到有限元网格的顶点在形变后的位置信息,加快了有限元网格形变方程的解算速度,从而有效提高了角色动画生成效率。
在一个实施例中,如图3所示,基于蒙皮权重得到有限元网格的顶点的蒙皮权重相似度,包括:
步骤S302,获取有限元网格的第一顶点相对于骨骼模型中的骨骼对的第一蒙皮插值权重,骨骼对为所述骨骼模型中两块不同骨骼的组合。
具体地,计算机设备在获取了动画角色有限元网格以及骨骼模型之后,利用Bounded Biharmonic Weight算法根据给定骨骼模型的骨骼结构计算出有限元网格的顶点关于骨骼模型中各块骨骼的位置关联关系,即蒙皮权重;而骨骼对是整个骨骼模型中不同骨骼之间两两组合的骨骼,而第一顶点相对于骨骼模型中的骨骼对的第一蒙皮插值权重为当前第一顶点分别相对于骨骼对中每条骨骼的蒙皮权重,由这两个骨骼的蒙皮权重组成第一蒙皮插值权重。
举例说明,假设有限元网格的顶点Pi关于所有的骨骼的蒙皮权重为
Figure 442858DEST_PATH_IMAGE042
,其中
Figure DEST_PATH_IMAGE044_11A
为骨骼的数目,而骨骼模型中的骨骼对为
Figure 13647DEST_PATH_IMAGE046
,则 第一顶点i相对于骨骼模型中的骨骼对
Figure 724114DEST_PATH_IMAGE046
的第一蒙皮插值权重为
Figure 264817DEST_PATH_IMAGE048
步骤S304,获取有限元网格的第二顶点相对于骨骼对的第二蒙皮插值权重。
举例说明,假设有限元网格的顶点Pi关于所有的骨骼的蒙皮权重为
Figure 111551DEST_PATH_IMAGE050
,其中
Figure DEST_PATH_IMAGE044_12A
为骨骼的数目,而骨骼模型中的骨骼对为
Figure 649979DEST_PATH_IMAGE046
,则 第二顶点j相对于骨骼模型中的骨骼对
Figure 582163DEST_PATH_IMAGE046
的第一蒙皮插值权重为
Figure 926557DEST_PATH_IMAGE052
步骤S306,基于第一蒙皮插值权重与第二蒙皮插值权重的融合确定第一顶点与第二顶点的蒙皮权重相似度。
具体地,计算机设备根据第一顶点相对于骨骼对的第一蒙皮插值权重、第二顶点相对于骨骼对的第二蒙皮插值权重以及标准差来构建第一顶点与第二顶点的蒙皮权重相似度表达式,具体表达式为如下公式11所示:
Figure 893376DEST_PATH_IMAGE054
,公式11
其中,
Figure 868285DEST_PATH_IMAGE056
Figure 553344DEST_PATH_IMAGE058
分别是点i和点j各自的蒙皮权重,
Figure 904691DEST_PATH_IMAGE060
为点i和点j的蒙皮权重相似度,
Figure 257175DEST_PATH_IMAGE062
Figure 402986DEST_PATH_IMAGE064
是骨骼模型中不同骨骼之间两两组合的骨骼对,
Figure 306832DEST_PATH_IMAGE066
是标准差,用于衡量蒙皮权重相似的严格程度,
Figure 461870DEST_PATH_IMAGE068
Figure 668860DEST_PATH_IMAGE070
是点i关于骨骼对
Figure 251151DEST_PATH_IMAGE072
Figure 645224DEST_PATH_IMAGE074
的蒙皮插值权重,而
Figure 869532DEST_PATH_IMAGE076
Figure 665449DEST_PATH_IMAGE078
是点j关于骨骼对
Figure 418642DEST_PATH_IMAGE080
Figure 565589DEST_PATH_IMAGE082
的蒙皮插值权重。
本实施例中,利用有限元网格的顶点关于骨骼模型的蒙皮权重以及骨骼模型中不同骨骼两两组合确定的骨骼对来确定蒙皮插值权重,再将不同顶点的蒙皮插值权重进行融合得到蒙皮权重相似度的表达式,从而计算得到当前顶点与目标顶点之间的蒙皮权重相似度,能够通过骨骼模型中不同骨骼两两组合的骨骼对来综合计算出当前顶点与目标顶点之间的蒙皮权重相似度,提高了不同顶点蒙皮权重相似度计算的准确性。
在一个实施例中,如图4所示,基于蒙皮权重相似度融合得到有限元网格的顶点的变换中心点,包括:
步骤S402,获取预设范围内有限元网格的顶点的位置信息。
具体地,计算机设备获取有限元网格上以当前顶点为中心的预设范围内所有顶点的位置信息,可以使用openVDB(Vlometric Dynamic B+ tree like)进行高效地检索预设范围
Figure 62430DEST_PATH_IMAGE084
内所有顶点的位置信息。
步骤S404,根据预设范围内有限元网格的顶点的位置信息确定对应邻接的有限元网格的有限元单元的体积值。
具体地,计算机设备根据预设范围内各个顶点的位置信息确定,除当前顶点外其他目标顶点相接的所有有限元单元的位置信息,分别取各相接有限元单元的部分体积值,如当有限元单元为四面体单元时,取每个有限元的体积值的四分之一,然后累计求和得到目标顶点所表示的体积值。
步骤S406,基于预设范围内有限元网格的顶点的位置信息和对应的蒙皮权重相似度、有限元单元的体积值融合得到变换中心点。
具体地,计算机设备通过预设范围内有限元顶点的位置信息、预设范围内各点的蒙皮矩阵相似度以及目标顶点所表示的体积值一起来构造变换中心点表达式,如下公式12所示:
Figure 712854DEST_PATH_IMAGE086
,公式12
其中,
Figure 636948DEST_PATH_IMAGE088
为变换中心点,
Figure 5612DEST_PATH_IMAGE090
为有限元网格上以点i为中心的预设范围内的区域,
Figure 40564DEST_PATH_IMAGE092
为预设范围内点i与点j的蒙皮权重相似度,
Figure 545495DEST_PATH_IMAGE094
为预设范围内的顶点的位置信息,
Figure 640490DEST_PATH_IMAGE096
为目标顶点所表示的体积值。
本实施例中,计算机设备通过前述步骤中所确定的蒙皮权重相似度表达式,计算以当前顶点为中心的预设范围内所有点的蒙皮权重相似度,并根据其他目标顶点的位置信息以及目标顶点所表示的体积值进行插值计算得到变换中心点,使得在有限元网格的顶点中具有相似蒙皮权重的点赋予相近的变换中心点,提高了有限元网格的顶点所对应的变换中心点的可靠性。
在一个实施例中,如图5所示,基于变换中心点、骨骼的运动特征以及蒙皮权重融合得到有限元网格的顶点的形变参数,包括:
步骤S502,根据骨骼的运动特征的旋转项得到对应的等价旋转四元数。
步骤S504,根据等价旋转四元数、蒙皮权重得到优化旋转四元数。
具体地,计算机设备根据等价旋转四元数与蒙皮权重进行加权求和得到混合后的四元数,如下公式13所示:
Figure 230871DEST_PATH_IMAGE098
,公式13
其中,
Figure 600672DEST_PATH_IMAGE100
为混合后的四元数,
Figure 225689DEST_PATH_IMAGE102
为骨骼的个数,
Figure 491585DEST_PATH_IMAGE104
为有限元网格上点
Figure 100421DEST_PATH_IMAGE106
关于骨骼模型的蒙皮权重
Figure 474246DEST_PATH_IMAGE108
中的第i个元素,
Figure 953769DEST_PATH_IMAGE110
为等价旋转四元数;
此时,为了保证混合后的四元数仍然是一个表征旋转的四元数,计算机设备对混合后的旋转四元数进行正则化,使得其长度为1,从而得到优化后的旋转四元数,如下公式14所示:
Figure 921725DEST_PATH_IMAGE112
,公式14
其中,
Figure 486698DEST_PATH_IMAGE114
为优化后的优化旋转四元数,
Figure 198303DEST_PATH_IMAGE116
为上述步骤中混合后的四元数;
步骤S506,基于变换中心点、骨骼的运动特征的平移项、优化旋转四元数以及等价旋转四元数融合得到优化平移项。
具体地,计算机设备根据变换中心点、骨骼的运动特征的平移项、优化旋转四元数以及等价旋转四元数来构建优化平移项的表达式,如下公式15所示:
Figure 266753DEST_PATH_IMAGE118
,公式15
其中,T函数为位置变换函数,例如
Figure 405610DEST_PATH_IMAGE120
表示对点p进行q所表征的旋转变换后再进行b表征的平移位移变换,
Figure 192300DEST_PATH_IMAGE122
为优化平移项,
Figure 176437DEST_PATH_IMAGE124
为前述步骤得到的变换中心,
Figure 161710DEST_PATH_IMAGE126
为前述步骤得到的优化旋转四元数,
Figure 940311DEST_PATH_IMAGE128
为骨骼的个数,
Figure 214297DEST_PATH_IMAGE130
为等价旋转四元数,
Figure 736545DEST_PATH_IMAGE132
为骨骼的运动特征的平移项。
步骤S508,对有限元网格的顶点进行优化旋转四元数所表征的旋转变换后再进行优化平移项所表征的平移变换,得到有限元网格的顶点的形变参数。
具体地,计算机设备获取有限元网格的顶点的位置信息,将该顶点从当前位置上进行优化旋转四元数所表征的旋转变换,然后再进行优化平移项所表征的平移变换,得到有限元网格的顶点的形变参数,如下公式16所示:
Figure 45167DEST_PATH_IMAGE134
,公式16
其中,
Figure 994668DEST_PATH_IMAGE136
为有限元网格的顶点的形变参数,
Figure 552689DEST_PATH_IMAGE138
为优化旋转四元数,
Figure 613049DEST_PATH_IMAGE140
为优化平移项。
本实施例中,计算机设备将骨骼的运动特征中旋转项转换为等价的四元数的表达形式,然后再进行优化,由等价旋转四元数、优化后的四元数、变换中心点、骨骼运动特征的平移项融合得到优化平移项,再根据优化平移项以及优化旋转四元数以及有限元网格顶点的位置信息得到有限元网格的顶点的形变参数,简化了计算过程,提高了计算精度。
在一个实施例中,如图6所示,根据等价旋转四元数、蒙皮权重得到优化旋转四元数,包括:
步骤S602,基于等价旋转四元数与蒙皮权重进行加权融合得到混合旋转四元数。
具体地,计算机设备按照如下公式17计算混合旋转四元数
Figure 41756DEST_PATH_IMAGE142
Figure 162159DEST_PATH_IMAGE144
,公式17
其中,
Figure DEST_PATH_IMAGE145_12A
为骨骼的个数,
Figure DEST_PATH_IMAGE147_12A
为有限元网格上点
Figure DEST_PATH_IMAGE149_12A
关于骨骼模型的蒙皮权重
Figure 283174DEST_PATH_IMAGE151
中的第i个元素,
Figure 147225DEST_PATH_IMAGE153
为等价旋转四元数。
步骤S604,将混合旋转四元数进行正则化得到优化旋转四元数。
具体地,为了保证混合后的四元数仍然是一个表征旋转的四元数,计算机设备对混合后的旋转四元数进行正则化,使得其长度为1,从而得到优化后的旋转四元数,如下公式18所示:
Figure 430438DEST_PATH_IMAGE155
,公式18
其中,
Figure 252901DEST_PATH_IMAGE157
为优化后的优化旋转四元数,
Figure 988776DEST_PATH_IMAGE159
为上述步骤中混合后的四元数。
本实施例中,通过将等价旋转四元数与蒙皮权重进行加权融合得到混合后的旋转四元数,再对混合旋转四元数进行正则化,使其长度为1,从而使得将顶点按照旋转四元数进行旋转变换时不会因为旋转四元数中自带的平移分量,而产生的错误的运动现象,从而提高了动画中骨骼驱动动画角色有限元网格运动的准确性。
在一个实施例中,如图7所示,获取有限元网格的调整因子,包括:
步骤S702,获取有限元网格对应的拉普拉斯算子、骨骼模型对应的骨骼驱动势能的海森矩阵以及骨骼模型对应的骨骼驱动势能的强度因子,骨骼驱动势能用于表征骨骼模型的顶点与所述骨骼模型的顶点所在的有限元单元的位置差异。
具体地,计算机设备获取动画角色有限元网格的顶点的位置信息,再由这些顶点的位置信息确定有限元网格上各有限元单元的边的位置信息,通过边的位置信息来构造有限元网格对应的拉普拉斯算子,构造公式如下公式19所示:
Figure 656518DEST_PATH_IMAGE161
,公式19
其中,
Figure 794238DEST_PATH_IMAGE163
是拉普拉斯算子L中的第i行第j列的元素,
Figure 256443DEST_PATH_IMAGE163
当且仅当有限元网格中的点
Figure 10773DEST_PATH_IMAGE165
和点
Figure 482205DEST_PATH_IMAGE167
是相连的时不为0,
Figure 474432DEST_PATH_IMAGE169
是有限元网格中点
Figure 638697DEST_PATH_IMAGE171
和点
Figure 349164DEST_PATH_IMAGE173
相连的边,点
Figure 358708DEST_PATH_IMAGE174
和点
Figure 736600DEST_PATH_IMAGE175
被包含在同一个有限元单元中,
Figure 806187DEST_PATH_IMAGE177
为边
Figure 738371DEST_PATH_IMAGE169
的几何长度,
Figure 82765DEST_PATH_IMAGE179
是第k个有限元单元,
Figure 781075DEST_PATH_IMAGE181
表示包含边
Figure 552722DEST_PATH_IMAGE183
的有限元单元的集合,
Figure 972202DEST_PATH_IMAGE185
为边
Figure 323549DEST_PATH_IMAGE169
在有限元单元
Figure 676033DEST_PATH_IMAGE187
中对应的二面角大小。
有限元网格中的顶点
Figure 87422DEST_PATH_IMAGE174
和顶点
Figure 994199DEST_PATH_IMAGE175
,当
Figure 680395DEST_PATH_IMAGE189
时,即计算矩阵L中的对角线元素
Figure 356227DEST_PATH_IMAGE191
,由单个顶点
Figure 938518DEST_PATH_IMAGE174
在肌肉网格中的位置信息得到与单个顶点
Figure 863749DEST_PATH_IMAGE174
相邻的所有边的位置信息以及有限元单元的目标边的长度,设与顶点
Figure 556898DEST_PATH_IMAGE174
相邻的边有j条,则按照公式3计算每条边对应的元素
Figure 883974DEST_PATH_IMAGE163
的值,再将每条边对应的元素
Figure 371587DEST_PATH_IMAGE163
进行求和计算得到
Figure 252956DEST_PATH_IMAGE193
,如下公式4所示:
Figure 280955DEST_PATH_IMAGE195
,公式20
其中,
Figure 931379DEST_PATH_IMAGE197
为边
Figure 855472DEST_PATH_IMAGE199
在有限元单元
Figure 489716DEST_PATH_IMAGE201
中对应的二面角大小,
Figure 524668DEST_PATH_IMAGE203
为有限元单元的目标边的长度。
由以上步骤确定
Figure 295178DEST_PATH_IMAGE163
Figure 921332DEST_PATH_IMAGE193
,进而确定拉普拉斯算子L的值。
计算机设备对骨骼驱动势能求解二阶导数,得到骨骼驱动势能对应的海森矩阵,再获取预设的骨骼驱动势能对应的强度因子
Figure 511713DEST_PATH_IMAGE205
,强度因子是用于表征骨骼驱动势能对动画角色有限元网格的驱动强度的大小。
步骤S704,基于拉普拉斯算子、海森矩阵以及强度因子融合得到有限元网格的调整因子。
具体地,计算机设备通过拉普拉斯算子、海森矩阵以及强度因子构造有限元网格的调整因子的过程,如下公式21所示:
Figure 350356DEST_PATH_IMAGE207
,公式21
其中,
Figure 995880DEST_PATH_IMAGE209
为有限元网格的调整因子,L为有限元网格的拉普拉斯算子,
Figure DEST_PATH_IMAGE211_16A
为骨骼驱 动势能对应的强度因子,
Figure 730618DEST_PATH_IMAGE213
为骨骼驱动势能对应的海森矩阵。
本实施例中,通过获取有限元网格的拉普拉斯算子、骨骼模型对应的骨骼驱动势能的海森矩阵以及骨骼模型对应的骨骼驱动势能的强度因子,再据此构造有限元网格形变方程的调整因子,将调整因子作为有限元网格形变方程的逆海森矩阵的迭代初始值,从而使得有限元网格形变方程在迭代的初期就能充分考虑到骨骼驱动势能对动画角色有限元网格施加的骨骼驱动力,减少了错误迭代以及迭代次数,提高了求解有限元网格形变方程的效率以及准确性。
在一个实施例中,如图8所示,获取有限元网格对应的拉普拉斯算子、骨骼模型对应的骨骼驱动势能的海森矩阵以及骨骼模型对应的骨骼驱动势能的强度因子,包括:
步骤S802,获取骨骼模型的顶点的位置信息以及对应的有限元网格的有限元单元的位置信息,骨骼模型的顶点被包含在所述对应的有限元网格的有限元单元中。
步骤S804,基于骨骼模型的顶点的位置信息与对应的有限元网格的有限元单元的位置信息进行融合得到骨骼驱动势能。
具体地,计算机设备根据骨骼模型的顶点与有限元网格的顶点的位置信息计算骨骼模型的顶点关于有限元网格的质心插值坐标,具体地,获取骨骼模型的顶点与有限元网格上包含该骨骼模型的顶点的有限元单元的位置信息,计算得到该骨骼模型的顶点关于包含该顶点的有限元网格上的有限元单元的各顶点的插值权重,得到每个骨骼模型的顶点的质心插值坐标,再由骨骼模型的顶点的质心插值坐标构建,如下公式22所示:
Figure 808295DEST_PATH_IMAGE215
,公式22
其中,
Figure 185050DEST_PATH_IMAGE217
为骨骼驱动势能,
Figure 664573DEST_PATH_IMAGE219
为骨骼的顶点,
Figure DEST_PATH_IMAGE220_5A
为骨骼的顶点数,
Figure 570212DEST_PATH_IMAGE222
为有限 元网格上包含骨骼顶点
Figure 135186DEST_PATH_IMAGE219
的有限元单元,有限元单元的四个顶点为
Figure 846790DEST_PATH_IMAGE224
,对应 的有限元网格的有限元单元体积为
Figure 180819DEST_PATH_IMAGE226
,对应的质心插值坐标为
Figure 788518DEST_PATH_IMAGE228
本实施例中,获取骨骼模型的顶点的位置信息以及对应的有限元网格的有限元单元的位置信息,再根据该骨骼顶点与对应的有限元单元的位置信息计算出每个骨骼顶点关于相应有限元网格上有限元单元的质心插值坐标,再由质心插值坐标与骨骼顶点的位置信息构造得到骨骼驱动势能,从而实现骨骼模型与动画角色有限元网格之间的绑定,进而提高了由骨骼的运动带动有限元网格的运动及形变的可靠性。
本申请还提供一种应用场景,该应用场景应用上述的角色动画生成方法,该方法应用于生成三维角色动画的场景,具体地,该角色动画生成方法在该应用场景的应用如下:
计算机设备获取动画角色有限元网格以及骨骼模型,获取骨骼的旋转矩阵
Figure DEST_PATH_IMAGE230_6A
以及表示平移特征的三维向量
Figure 778471DEST_PATH_IMAGE232
来表示,为了计算方 便,将每个3x3的旋转矩阵转变为等价的四元数表达形式,即四元数为
Figure 293766DEST_PATH_IMAGE234
对于有限元网格上某一点
Figure 482301DEST_PATH_IMAGE236
,设其相对于
Figure 792060DEST_PATH_IMAGE238
根骨骼的蒙皮权重为
Figure 331626DEST_PATH_IMAGE240
,将骨骼旋转四元数以
Figure DEST_PATH_IMAGE242_5A
为权重,进行混合,得到
Figure 788627DEST_PATH_IMAGE244
,如下公式23所 示:
Figure 628407DEST_PATH_IMAGE246
,公式23
为了保证混合后的四元数仍是一个表征旋转的四元数,计算机设备对混合后的四元数进行正则化,得到点
Figure 577909DEST_PATH_IMAGE248
的最优旋转四元数:
Figure 604771DEST_PATH_IMAGE250
,公式24
设点
Figure 196289DEST_PATH_IMAGE248
所对应的最优变换中心为
Figure 359417DEST_PATH_IMAGE252
,则变换中心的求解如下公式25所示:
Figure 745399DEST_PATH_IMAGE254
,公式25
其中,
Figure 525136DEST_PATH_IMAGE252
为变换中心点,
Figure 389187DEST_PATH_IMAGE256
为有限元网格上以点i为中心的预设范围内的区域,
Figure 672401DEST_PATH_IMAGE258
为预设范围内的顶点的位置信息,
Figure 963705DEST_PATH_IMAGE260
为目标顶点所表示的体积值,
Figure 230738DEST_PATH_IMAGE262
为预设范围内点i与点j的蒙皮权重相似度,通过以下公式26确定:
Figure 836163DEST_PATH_IMAGE264
,公式26
其中,
Figure 973883DEST_PATH_IMAGE266
Figure 967247DEST_PATH_IMAGE268
分别是点i和点j各自的蒙皮权重,
Figure 659260DEST_PATH_IMAGE270
为点i和点j的蒙皮权重相似度,p和q是骨骼模型中不同骨骼之间两两组合的骨骼对,
Figure 396271DEST_PATH_IMAGE272
是标准差,用于衡量蒙皮权重相似的严格程度,
Figure 385569DEST_PATH_IMAGE274
Figure 284254DEST_PATH_IMAGE276
是点i关于骨骼对p和q的蒙皮插值权重,而
Figure 525880DEST_PATH_IMAGE278
Figure 269845DEST_PATH_IMAGE280
是点j关于骨骼对p和q的蒙皮插值权重。
计算机设备通过最优旋转四元数、最优变换中心、四元数以及表示平移特征的三维向量
Figure 382158DEST_PATH_IMAGE282
融合得到最优平移向量
Figure 717324DEST_PATH_IMAGE284
,如公式27所示:
Figure 915087DEST_PATH_IMAGE286
,公式27
其中
Figure 462743DEST_PATH_IMAGE288
表示对点p进行q所表征的旋转变换后再进行b表征的位移变换,最后根据有限元网格的顶点
Figure 429562DEST_PATH_IMAGE290
、最优旋转四元数
Figure 201209DEST_PATH_IMAGE292
以及最优平移向量
Figure 620689DEST_PATH_IMAGE294
得到形变后的对应的顶点的位置坐标
Figure 972036DEST_PATH_IMAGE296
Figure 793361DEST_PATH_IMAGE298
,公式28
得到有限元网格的顶点在形变后的形变参数,再将形变参数作为有限元网格形变方程中形变自变量的迭代初始值,随着不同迭代产生不同的形变值,直到有限元网格因形变所产生的弹性力以及所受其他力的合力达到预设阈值内的平衡状态时,就停止迭代,此时经迭代产生的形变值就是最终的有限元网格发生形变后的顶点的位置坐标,从而整体上实现了有限元网格根据骨骼模型的驱动而做出相应的运动和形变的效果,进而生成了三维角色动画。
上述角色动画生成方法,通过获取动画角色有限元网格、骨骼模型,获取骨骼模型中骨骼的运动特征,再根据有限元网格的顶点与骨骼模型的蒙皮权重得到各个有限元网格的顶点的蒙皮权重相似度,再通过蒙皮权重相似度构造得到各个顶点的变换中心点,进而根据变换中心点、骨骼的运动特征以及蒙皮权重融合得到有限元网格顶点的形变参数;再将形变参数作为有限元网格形变方程中有限元网格顶点形变位置信息的迭代初始值,使得有限元网格的顶点的迭代初始值更加接近于最终迭代出来的形变值,有效减少了有限元网格形变方程的迭代步长,从而能够更快得到有限元网格的顶点在形变后的位置信息,加快了有限元网格形变方程的解算速度,从而有效提高了角色动画生成效率。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图9所示,提供了一种角色动画生成装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:模型获取模块902、运动特征获取模块904、蒙皮权重获取模块906、蒙皮权重相似度生成模块908、变换中心点生成模块910、形变参数生成模块912、调整因子获取模块914、形变位置信息生成模块916、角色动画生成模块918,其中:
模型获取模块902,用于获取动画角色有限元网格、骨骼模型,骨骼模型内嵌于有限元网格内部;
运动特征获取模块904,用于获取骨骼模型中骨骼的运动特征;
蒙皮权重获取模块906,用于获取有限元网格的顶点相对于骨骼模型的蒙皮权重,蒙皮权重用于表征有限元网格的顶点相对于骨骼模型的相对位置信息;
蒙皮权重相似度生成模块908,用于基于蒙皮权重得到有限元网格的顶点的蒙皮权重相似度;
变换中心点生成模块910,用于基于蒙皮权重相似度融合得到有限元网格的顶点的变换中心点,变换中心点为有限元网格的顶点发生旋转位移时的位置参考点;
形变参数生成模块912,用于基于变换中心点、骨骼的运动特征以及蒙皮权重融合得到有限元网格的顶点的形变参数;
调整因子获取模块914,用于获取有限元网格的调整因子,调整因子用于表征有限元网格对所受合力变化的灵敏度;
形变位置信息生成模块916,用于基于调整因子、形变参数以及有限元网格形变方程得到有限元网格形变后顶点的形变位置信息,有限元网格形变方程用于求解有限元网格形变后各顶点的位置信息;
角色动画生成模块918,用于根据顶点形变位置信息得到有限元网格在形变后的形状特征,进而得到有限元网格对应的角色动画。
上述角色动画生成装置,获取动画角色有限元网格、骨骼模型,获取骨骼模型中骨骼的运动特征,再根据有限元网格的顶点与骨骼模型的蒙皮权重得到各个有限元网格的顶点的蒙皮权重相似度,再通过蒙皮权重相似度构造得到各个顶点的变换中心点,进而根据变换中心点、骨骼的运动特征以及蒙皮权重融合得到有限元网格顶点的形变参数;再将形变参数作为有限元网格形变方程中有限元网格顶点形变位置信息的迭代初始值,使得有限元网格的顶点的迭代初始值更加接近于最终迭代出来的形变值,有效减少了有限元网格形变方程的迭代步长,从而能够更快得到有限元网格的顶点在形变后的位置信息,加快了有限元网格形变方程的解算速度,从而有效提高了角色动画生成效率。
在一个实施例中,蒙皮权重相似度生成模块908还用于获取有限元网格的第一顶点相对于骨骼模型中的骨骼对的第一蒙皮插值权重,骨骼对为骨骼模型中两块不同骨骼的组合;获取有限元网格的第二顶点相对于骨骼对的第二蒙皮插值权重;基于第一蒙皮插值权重与第二蒙皮插值权重的融合确定第一顶点与第二顶点的蒙皮权重相似度。
在一个实施例中,变换中心点生成模块910还用于获取预设范围内有限元网格的顶点的位置信息;根据预设范围内有限元网格的顶点的位置信息确定有限元网格上对应邻接的有限元单元的体积值;基于预设范围内有限元网格的顶点的位置信息和对应的蒙皮权重相似度、对应邻接的有限元单元的体积值融合得到变换中心点。
在一个实施例中,形变参数生成模块912还用于根据骨骼的运动特征的旋转项得到对应的等价旋转四元数;根据等价旋转四元数、蒙皮权重得到优化旋转四元数;基于变换中心点、骨骼的运动特征的平移项、优化旋转四元数以及等价旋转四元数融合得到优化平移项;对有限元网格的顶点进行优化旋转四元数所表征的旋转变换后再进行优化平移项所表征的平移变换,得到有限元网格的顶点的形变参数。
在一个实施例中,形变参数生成模块912还用于基于等价旋转四元数与蒙皮权重进行加权融合得到混合旋转四元数;将混合旋转四元数进行正则化得到优化旋转四元数。
在一个实施例中,调整因子获取模块914还用于获取有限元网格对应的拉普拉斯算子、骨骼模型对应的骨骼驱动势能的海森矩阵以及骨骼模型对应的骨骼驱动势能的强度因子,骨骼驱动势能用于表征骨骼模型的顶点与骨骼模型的顶点所在的有限元单元的位置差异;基于拉普拉斯算子、海森矩阵以及强度因子融合得到有限元网格的调整因子。
在一个实施例中,调整因子获取模块914还用于获取骨骼模型的顶点的位置信息以及对应的有限元网格的有限元单元的位置信息,骨骼模型的顶点被包含在对应的有限元网格的有限元单元中;基于骨骼模型的顶点的位置信息与对应的有限元网格的有限元单元的位置信息进行融合得到骨骼驱动势能。
关于角色动画生成装置的具体限定可以参见上文中对于角色动画生成方法的限定,在此不再赘述。上述角色动画生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种角色动画生成方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种角色动画生成方法,其特征在于,所述方法包括:
获取动画角色有限元网格、骨骼模型,所述骨骼模型内嵌于所述有限元网格内部;
获取所述骨骼模型中骨骼的运动特征;
获取所述有限元网格的顶点相对于所述骨骼模型的蒙皮权重,所述蒙皮权重用于表征所述有限元网格的顶点相对于骨骼模型的相对位置信息;
基于所述蒙皮权重得到有限元网格的顶点的蒙皮权重相似度;
基于所述蒙皮权重相似度融合得到所述有限元网格的顶点的变换中心点,所述变换中心点为所述有限元网格的顶点发生旋转位移时的位置参考点;
根据所述骨骼的运动特征的旋转项得到对应的等价旋转四元数;
根据所述等价旋转四元数、所述蒙皮权重得到优化旋转四元数;
基于所述变换中心点、所述骨骼的运动特征的平移项、所述优化旋转四元数以及所述等价旋转四元数融合得到优化平移项;
对所述有限元网格的顶点进行所述优化旋转四元数所表征的旋转变换后再进行所述优化平移项所表征的平移变换,得到所述有限元网格的顶点的形变参数;
获取有限元网格的调整因子,所述调整因子用于表征所述有限元网格对所受合力变化的灵敏度;
基于所述调整因子、所述形变参数以及有限元网格形变方程得到所述有限元网格形变后顶点的形变位置信息,所述有限元网格形变方程用于求解有限元网格形变后各顶点的位置信息;
根据所述顶点形变位置信息得到所述有限元网格在形变后的形状特征,进而得到所述有限元网格对应的角色动画。
2.根据权利要求1所述的方法,其特征在于,所述基于所述蒙皮权重得到有限元网格的顶点的蒙皮权重相似度,包括:
获取所述有限元网格的第一顶点相对于骨骼模型中的骨骼对的第一蒙皮插值权重,所述骨骼对为所述骨骼模型中两块不同骨骼的组合;
获取所述有限元网格的第二顶点相对于所述骨骼对的第二蒙皮插值权重;
基于所述第一蒙皮插值权重与第二蒙皮插值权重的融合确定所述第一顶点与第二顶点的蒙皮权重相似度。
3.根据权利要求1所述的方法,其特征在于,所述基于所述蒙皮权重相似度融合得到所述有限元网格的顶点的变换中心点,包括:
获取预设范围内有限元网格的顶点的位置信息;
根据所述预设范围内有限元网格的顶点的位置信息确定所述有限元网格上对应邻接的有限元单元的体积值;
基于所述预设范围内有限元网格的顶点的位置信息和对应的蒙皮权重相似度、所述对应邻接的有限元单元的体积值融合得到变换中心点。
4.根据权利要求3所述的方法,其特征在于,所述根据所述预设范围内有限元网格的顶点的位置信息确定所述有限元网格上对应邻接的有限元单元的体积值,包括:
当所述邻接的有限元单元为四面体单元时,获取每个四面体单元的体积值的四分之一,并累计求和得到所述体积值。
5.根据权利要求1所述的方法,其特征在于,所述根据所述等价旋转四元数、所述蒙皮权重得到优化旋转四元数,包括:
基于所述等价旋转四元数与所述蒙皮权重进行加权融合得到混合旋转四元数;
将所述混合旋转四元数进行正则化得到所述优化旋转四元数。
6.根据权利要求1所述的方法,其特征在于,所述获取有限元网格的调整因子,包括:
获取所述有限元网格对应的拉普拉斯算子、所述骨骼模型对应的骨骼驱动势能的海森矩阵以及所述骨骼模型对应的骨骼驱动势能的强度因子,所述骨骼驱动势能用于表征所述骨骼模型的顶点与所述骨骼模型的顶点所在的有限元单元的位置差异;
基于所述拉普拉斯算子、所述海森矩阵以及所述强度因子融合得到所述有限元网格的调整因子。
7.根据权利要求6所述的方法,其特征在于,所述获取所述有限元网格对应的拉普拉斯算子、所述骨骼模型对应的骨骼驱动势能的海森矩阵以及所述骨骼模型对应的骨骼驱动势能的强度因子,包括:
获取所述骨骼模型的顶点的位置信息以及对应的有限元网格的有限元单元的位置信息,所述骨骼模型的顶点被包含在所述对应的有限元网格的有限元单元中;
基于所述骨骼模型的顶点的位置信息与所述对应的有限元网格的有限元单元的位置信息进行融合得到所述骨骼驱动势能。
8.一种角色动画生成装置,其特征在于,所述装置包括:
模型获取模块,用于获取动画角色有限元网格、骨骼模型,所述骨骼模型内嵌于所述有限元网格内部;
运动特征获取模块,用于获取所述骨骼模型中骨骼的运动特征;
蒙皮权重获取模块,用于获取所述有限元网格的顶点相对于所述骨骼模型的蒙皮权重,所述蒙皮权重用于表征所述有限元网格的顶点相对于骨骼模型的相对位置信息;
蒙皮权重相似度生成模块,用于基于所述蒙皮权重得到有限元网格的顶点的蒙皮权重相似度;
变换中心点生成模块,用于基于所述蒙皮权重相似度融合得到所述有限元网格的顶点的变换中心点,所述变换中心点为所述有限元网格的顶点发生旋转位移时的位置参考点;
形变参数生成模块,用于根据所述骨骼的运动特征的旋转项得到对应的等价旋转四元数;根据所述等价旋转四元数、所述蒙皮权重得到优化旋转四元数;基于所述变换中心点、所述骨骼的运动特征的平移项、所述优化旋转四元数以及所述等价旋转四元数融合得到优化平移项;对所述有限元网格的顶点进行所述优化旋转四元数所表征的旋转变换后再进行所述优化平移项所表征的平移变换,得到所述有限元网格的顶点的形变参数;
调整因子获取模块,用于获取有限元网格的调整因子,所述调整因子用于表征所述有限元网格对所受合力变化的灵敏度;
形变位置信息生成模块,用于基于所述调整因子、所述形变参数以及有限元网格形变方程得到所述有限元网格形变后顶点的形变位置信息,所述有限元网格形变方程用于求解有限元网格形变后各顶点的位置信息;
角色动画生成模块,用于根据所述顶点形变位置信息得到所述有限元网格在形变后的形状特征,进而得到所述有限元网格对应的角色动画。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202210984062.5A 2022-08-17 2022-08-17 角色动画生成方法、装置、计算机设备和存储介质 Active CN115049769B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210984062.5A CN115049769B (zh) 2022-08-17 2022-08-17 角色动画生成方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210984062.5A CN115049769B (zh) 2022-08-17 2022-08-17 角色动画生成方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN115049769A CN115049769A (zh) 2022-09-13
CN115049769B true CN115049769B (zh) 2022-11-04

Family

ID=83168347

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210984062.5A Active CN115049769B (zh) 2022-08-17 2022-08-17 角色动画生成方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN115049769B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115423907B (zh) * 2022-09-29 2023-05-26 魔珐(上海)信息科技有限公司 角色模型身体绑定方法、装置、设备和存储介质
CN116342771B (zh) * 2023-05-29 2023-08-15 腾讯科技(深圳)有限公司 一种数据处理方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111145319A (zh) * 2019-11-07 2020-05-12 北京中科深智科技有限公司 一种实时自动骨骼绑定和蒙皮的方法和系统
CN112184921A (zh) * 2020-10-30 2021-01-05 北京百度网讯科技有限公司 虚拟形象驱动方法、装置、设备和介质
CN112712578A (zh) * 2020-12-31 2021-04-27 魔珐(上海)信息科技有限公司 虚拟角色模型创建方法、装置、电子设备和存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8144155B2 (en) * 2008-08-11 2012-03-27 Microsoft Corp. Example-based motion detail enrichment in real-time
WO2010060113A1 (en) * 2008-11-24 2010-05-27 Mixamo, Inc. Real time generation of animation-ready 3d character models
US10262447B2 (en) * 2016-09-30 2019-04-16 Disney Enterprises, Inc. Systems and methods for virtual entity animation
CN111773686A (zh) * 2020-06-30 2020-10-16 完美世界(北京)软件科技发展有限公司 动画的生成方法和装置、存储介质、电子装置
CN112991502B (zh) * 2021-04-22 2021-07-16 腾讯科技(深圳)有限公司 一种模型训练方法、装置、设备及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111145319A (zh) * 2019-11-07 2020-05-12 北京中科深智科技有限公司 一种实时自动骨骼绑定和蒙皮的方法和系统
CN112184921A (zh) * 2020-10-30 2021-01-05 北京百度网讯科技有限公司 虚拟形象驱动方法、装置、设备和介质
CN112712578A (zh) * 2020-12-31 2021-04-27 魔珐(上海)信息科技有限公司 虚拟角色模型创建方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN115049769A (zh) 2022-09-13

Similar Documents

Publication Publication Date Title
CN115049769B (zh) 角色动画生成方法、装置、计算机设备和存储介质
Poulenard et al. Effective rotation-invariant point cnn with spherical harmonics kernels
Casquero et al. Arbitrary-degree T-splines for isogeometric analysis of fully nonlinear Kirchhoff–Love shells
Kavan et al. Fast and efficient skinning of animated meshes
US20210158023A1 (en) System and Method for Generating Image Landmarks
Fröhlich et al. Example‐driven deformations based on discrete shells
CN109493417B (zh) 三维物体重建方法、装置、设备和存储介质
Han et al. Flow field reduction via reconstructing vector data from 3-D streamlines using deep learning
CN110493710B (zh) 轨迹重建方法、装置、计算机设备和存储介质
WO2021253788A1 (zh) 一种人体三维模型构建方法及装置
CN113096249A (zh) 训练顶点重建模型的方法、图像重建方法及电子设备
CN113129418B (zh) 基于三维影像的目标表面重建方法、装置、设备和介质
CN111915676B (zh) 图像生成方法、装置、计算机设备和存储介质
CN115049768B (zh) 创建角色动画模型方法、装置、计算机设备和存储介质
Yan et al. Molecular skin surface-based transformation visualization between biological macromolecules
CN115049767B (zh) 动画编辑方法、装置、计算机设备和存储介质
CN114913287A (zh) 一种三维人体模型重建方法及系统
Wei et al. Hexahedral mesh smoothing via local element regularization and global mesh optimization
Lee et al. Holistic 3D face and head reconstruction with geometric details from a single image
CN115049766B (zh) 构建肌肉纤维模型方法、装置、计算机设备和存储介质
Xian et al. Efficient C2-weighting for image warping
Bansal et al. Affine interpolation in a lie group framework
CN115100286B (zh) 无人机采集视点确定方法、装置、计算机设备和存储介质
CN109002163A (zh) 三维交互姿势采样方法、装置、计算机设备及存储介质
Iorga et al. An image processing vliw architecture for real-time depth detection

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
CP02 Change in the address of a patent holder

Address after: C2C, Building C2, TCL science park, No. 1001, Zhongshan Garden Road, Shuguang Community, Xili Street, Nanshan District, Shenzhen, Guangdong 518051

Patentee after: Shenzhen Zesen Software Technology Co.,Ltd.

Address before: 518051 5th floor, building 10a, Shenzhen Bay Science Park, Gaoxin South nine road, Nanshan District, Shenzhen City, Guangdong Province

Patentee before: Shenzhen Zesen Software Technology Co.,Ltd.

CP02 Change in the address of a patent holder