一种三维人体模型与骨架的同步更新方法及电子设备技术

技术编号:37139307 阅读:26 留言:0更新日期:2023-04-06 21:42
本申请涉及虚拟现实技术领域,提供一种三维人体模型与骨架的同步更新方法及电子设备,通过对初始三维人体模型与预设骨架进行初始化,确定每个骨骼节点关联的多个目标几何顶点、每个目标几何顶点对应的影响权重、以及子骨骼节点和父骨骼节点间的缩放比例。采用非骨骼动画方式驱动初始三维人体模型,根据驱动后几何顶点的三维坐标以及初始化结果,反向推算各骨骼节点的三维坐标,并根据各骨骼节点的三维坐标,更新预设骨架的骨骼结构,得到与目标三维人体模型匹配的骨架,保证了模型动画过程中骨架的一致性,从而实现三维人体模型驱动后骨架的同步更新,进而提高了基于更新后的骨架进行骨骼动画时模型的真实性,节省了动画数据占用的存储空间。占用的存储空间。占用的存储空间。

【技术实现步骤摘要】
一种三维人体模型与骨架的同步更新方法及电子设备


[0001]本申请涉及虚拟现实
,提供一种三维人体模型与骨架的同步更新方法及电子设备。

技术介绍

[0002]虚拟人动画技术作为虚拟现实的重要组成部分,已成为系统仿真、三维动画以及游戏娱乐等场景中不可或缺的技术。
[0003]目前,虚拟人动画技术主要包括顶点动画和骨骼动画两种模型动画方式。其中,顶点动画过程中,每帧动画都是三维模型的一个特定姿态,通过关键帧技术,在帧与帧之间进行插值,来产生平滑的虚拟人运动。而在骨骼动画过程中,将三维模型表面的几何顶点与三维模型内部互相连接的

骨骼节点

组成的骨架绑定骨骼后,通过改变骨骼节点的朝向和位置实现虚拟人动画。由于骨骼动画不需要存储每一帧模型的顶点数据,只需要存储一套骨骼数据,相比于顶点动画,骨骼动画占用的存储空间更小,应用也更为广泛。
[0004]为了降低虚拟人动画占用的存储空间,往往会对预设三维人体模型绑定一个骨架,后续采用骨骼动画的形式来实时驱动模型的姿态,该动画方式虽然在一定程度上减小了存储空间压力,但同时也因骨架与实时驱动过程中的三维人体模型不匹配,带来了动画灵活性差、模型真实度低的问题。
[0005]因此,为三维人体模型提供一个匹配的骨架具有重要的研究意义。

技术实现思路

[0006]本申请实施例提供了一种三维人体模型与骨架的同步更新方法及电子设备,用于提高骨骼动画时三维人体模型的真实性和灵活性。
[0007]一方面,本申请实施例提供一种三维人体模型与骨架的同步更新方法,包括:
[0008]根据与初始三维人体模型绑定的预设骨架中各骨骼节点间的父子关系,对所述初始三维人体模型中的几何顶点与所述预设骨架中的骨骼节点进行初始化,确定所述各骨骼节点的初始参数;
[0009]获取所述初始三维人体模型对应的顶点数据,并根据所述顶点数据,驱动所述初始三维人体模型,得到目标三维人体模型;
[0010]根据所述目标三维人体模型中几何顶点的三维坐标以及各初始参数,确定所述各骨骼节点的三维坐标;
[0011]根据所述各骨骼节点的三维坐标以及所述各骨骼节点间的父子关系,更新用于对所述目标三维人体模型进行骨骼动画的骨架。
[0012]另一方面,本申请实施例提供一种电子设备,包括处理器和存储器,所述处理器和所述处理器通过总线连接,存储器存储有计算机程序,所述处理器根据所述计算机程序,执行以下操作:
[0013]根据与初始三维人体模型绑定的预设骨架中各骨骼节点间的父子关系,对所述初
始三维人体模型中的几何顶点与所述预设骨架中的骨骼节点进行初始化,确定所述各骨骼节点的初始参数;
[0014]获取所述初始三维人体模型对应的顶点数据,并根据所述顶点数据,驱动所述初始三维人体模型,得到目标三维人体模型;
[0015]根据所述目标三维人体模型中几何顶点的三维坐标以及各初始参数,确定所述各骨骼节点的三维坐标;
[0016]根据所述各骨骼节点的三维坐标以及所述各骨骼节点间的父子关系,更新用于对所述目标三维人体模型进行骨骼动画的骨架。
[0017]另一方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机设备执行本申请实施例提供的三维人体模型与骨架的同步更新方法。
[0018]本申请实施例提供的一种三维人体模型与骨架的同步更新方法及电子设备中,为初始三维人体模型绑定一个预设骨架,根据预设骨架中各骨骼节点间的父子关系,初始化初始三维人体模型的几何顶点和骨骼节点,得到各骨骼节点的初始参数以用于后续骨架更新。初始化完成后,用获取的顶点数据驱动初始三维人体模型,根据驱动后的目标三维人体模型中几何顶点的三维坐标以及各骨骼节点的初始参数,确定各骨骼节点的三维坐标,并根据各骨骼节点的三维坐标以及各骨骼节点间的父子关系,更新预设骨架,得到与目标三维人体模型匹配的骨架。由于是对预设骨架进行的更新,更新过程不会大幅度移动骨骼位置,骨骼节点的组织结构不会发生变化,维持了预设骨架原有的结构与骨骼节点数量、以及原始的骨骼蒙皮数据,保证了模型动画过程中骨架的一致性,从而能够基于更新后的骨架对目标三维模型进行骨骼动画驱动,提高了骨骼动画的真实性和灵活性。
附图说明
[0019]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0020]图1为本申请实施例提供的以非骨骼动画方式驱动三维人体模型后更新骨架的整体架构图;
[0021]图2A为本申请实施例提供的T pose姿态的初始三维人体模型的示意图;
[0022]图2B为本申请实施例提供的适配初始三维人体模型的T pose骨架;
[0023]图2C为本申请实施例提供的初始三维人体模型与预设骨架的绑定关系图;
[0024]图3为本申请实施例提供的三维人体模型与骨架的同步更新方法流程图;
[0025]图4为本申请实施例提供的对初始三维人体模型和预设骨架进行初始化的方法流程图;
[0026]图5为本申请实施例提供的计算各目标几何顶点对关键的骨骼节点的影响权重流程图;
[0027]图6为本申请实施例提供的计算各目标几何顶点的质心在骨骼长度上的占比流程图;
[0028]图7为本申请实施例提供的推算驱动后各骨骼节点的三维坐标的方法流程图;
[0029]图8为本申请实施例提供的确定驱动后各骨骼节点间局部变换矩阵的方法流程图;
[0030]图9为本申请实施例提供的三维人体模型和骨架同步更新的完整流程图;
[0031]图10为本申请实施例提供电子设备结构图。
具体实施方式
[0032]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请技术方案的一部分实施例,而不是全部的实施例。基于本申请文件中记载的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请技术方案保护的范围。
[0033]虚拟人动画技术主要包括顶点动画和骨骼动画两种模型动画方式,相比于顶点动画,由于骨骼动画不需要存储每一帧模型的顶点数据,只需要存储一套骨骼数据,骨骼动画占用的存储空间更小,因此,在进行虚拟人动画时,往往采用骨骼动画方式,预先设计好初始状态下的三维人体模型和绑定骨架的结构,通过调整骨骼数据改变三维人体模型的动作,从而驱动三维人体模型与骨骼同步变化。
[0034]大多数的虚拟人动画方法主要集中在三维人体模型的躯体动作方面,甚至能够通过将不同的骨骼动画数据结合在一起,来驱动人体完成更复杂的运动本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种三维人体模型与骨架的同步更新方法,其特征在于,包括:根据与初始三维人体模型绑定的预设骨架中各骨骼节点间的父子关系,对所述初始三维人体模型中的几何顶点与所述预设骨架中的骨骼节点进行初始化,确定所述各骨骼节点的初始参数;获取所述初始三维人体模型对应的顶点数据,并根据所述顶点数据,驱动所述初始三维人体模型,得到目标三维人体模型;根据所述目标三维人体模型中几何顶点的三维坐标以及各初始参数,确定所述各骨骼节点的三维坐标;根据所述各骨骼节点的三维坐标以及所述各骨骼节点间的父子关系,更新用于对所述目标三维人体模型进行骨骼动画的骨架。2.如权利要求1所述的方法,其特征在于,所述根据与初始三维人体模型绑定的预设骨架中各骨骼节点间的父子关系,对所述初始三维人体模型中的几何顶点与所述预设骨架中的骨骼节点进行初始化,确定所述各骨骼节点的初始参数,包括:针对每个骨骼节点,执行以下操作:将所述初始三维人体模型中距离所述骨骼节点最近的多个目标几何顶点与所述骨骼节点关联;若所述骨骼节点为非根节点,则以所述骨骼节点与所述骨骼节点的父节点为法向量,建立一个经过所述骨骼节点的虚拟平面;若所述初始三维人体模型中与所述骨骼节点最近的所述多个目标几何顶点分布在所述虚拟平面的两侧,则确定所述初始三维人体模型中所述多个目标几何点分别对所述骨骼节点的三维坐标的影响权重;若所述初始三维人体模型中与所述骨骼节点最近的所述多个目标几何顶点分布在所述虚拟平面的同侧,则根据所述初始三维人体模型中所述多个目标几何顶点的质心,确定所述骨骼节点与所述骨骼节点的父节点间的缩放比例。3.如权利要求2所述的方法,其特征在于,所述确定所述初始三维人体模型中所述多个目标几何点分别对所述骨骼节点的三维坐标的影响权重,包括:分别计算所述初始三维人体模型中所述多个目标几何点到所述骨骼节点的第一几何距离;将各第一几何距离的倒数作为相应目标几何顶点对所述骨骼节点的三维坐标的影响权重,并对各影响权重进行归一化。4.如权利要求2所述的方法,其特征在于,所述根据所述初始三维人体模型中所述多个目标几何顶点的质心,确定所述骨骼节点与所述骨骼节点的父节点间的缩放比例,包括:计算所述骨骼节点与所述骨骼节点的父节点间的骨骼长度,以及计算所述初始三维人体模型中所述多个目标几何顶点的质心到所述骨骼节点的父节点间的第二几何距离;将所述第二几何距离占所述骨骼长度的比例,作为所述骨骼节点与所述骨骼节点的父节点间的缩放比例。5.如权利要求1所述的方法,其特征在于,所述骨骼节点的初始参数至少包括:所述骨骼节点关联的多个目标几何顶点分别对所述骨骼节点的三维坐标的影响权重,以及所述骨骼节点与所述骨骼节点的父节点间的缩放比例;
所述根据所述目标三维人体模型中几何顶点的三维坐标以及各初始参数,确定所述各骨骼节点的三维坐标,包括:针对每个骨骼节点,执行以下操作:若所述骨骼节点为非根节点,则确定所述目标三维人体模型中与所述骨骼节点关联的多个目标几何顶点与虚拟平面的分布关系,所述虚拟平面是以所述骨骼节点与所述骨骼节点的父节点为法向量,经过所述骨骼节点建立的;若所述目标三维人体模型中所述多个目标几何顶点分布在所述虚拟平面的两侧,根据所述骨骼节点关联的多个目标几何顶点分别对所述骨骼节点的三维坐标的影响权重,对所述目标三维人体模型中的多个目标几何顶点的三维坐标进行加权,确定所述骨骼节点的三维坐标;若所述目标三维人体模型中所述多个目标几何顶点分布在所述虚拟平面的同侧,则重新确定所述目标三维人体模型中与所述骨骼节点关联的多个目标几何顶点的质心,并根据新的质心以及所述骨骼节点与所述骨骼节点的父节点间的缩放比例,确定所述骨骼节点的三维坐标。6.如权利要求1所述的方法,其特征在于,所述根据所述各骨骼节点的三维坐标以及所述各骨骼节点间的父子关系,更新用于对所述目标三维人...

【专利技术属性】
技术研发人员:张富涛杨智远任子健吴连朋
申请(专利权)人:聚好看科技股份有限公司
类型:发明
国别省市:

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

1