CN112562072A - 一种动作重定向方法、装置、设备及存储介质 - Google Patents
一种动作重定向方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112562072A CN112562072A CN202011569050.3A CN202011569050A CN112562072A CN 112562072 A CN112562072 A CN 112562072A CN 202011569050 A CN202011569050 A CN 202011569050A CN 112562072 A CN112562072 A CN 112562072A
- Authority
- CN
- China
- Prior art keywords
- model
- action
- redirection
- sample
- original
- 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
- 230000009471 action Effects 0.000 title claims abstract description 222
- 238000000034 method Methods 0.000 title claims abstract description 60
- 230000033001 locomotion Effects 0.000 claims abstract description 150
- 239000013598 vector Substances 0.000 claims abstract description 101
- 210000000988 bone and bone Anatomy 0.000 claims abstract description 100
- 238000012549 training Methods 0.000 claims abstract description 30
- 238000009877 rendering Methods 0.000 claims abstract description 14
- 238000012545 processing Methods 0.000 claims description 46
- 238000004891 communication Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 8
- 238000004088 simulation Methods 0.000 abstract description 11
- 238000010586 diagram Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 14
- 239000011159 matrix material Substances 0.000 description 6
- 230000000149 penetrating effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 210000003414 extremity Anatomy 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 210000000629 knee joint Anatomy 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 210000000323 shoulder joint Anatomy 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Geometry (AREA)
- Mathematical Physics (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明实施例提供了一种动作重定向方法、装置、设备及存储介质,所述方法包括:获取原始动作数据和原始动作数据对应的骨骼向量,然后,将原始动作数据和骨骼向量输入至预先训练得到的重定向模型中,调整原始动作数据的手臂开度,得到重定向动作数据,并保持骨骼向量,其中,预先训练得到的重定向模型是利用不同手臂开度的样本动作数据和与样本动作数据对应的样本骨骼向量进行训练得到的,进而,根据重定向动作数据和骨骼向量,渲染三维虚拟人体模型。这样,可以通过对原始动作数据中手臂开度的调整实现动作重定向,从而减少动作重定向方法的耗时和成本,进而提高三维虚拟人体模型进行动作模拟的实时性。
Description
技术领域
本发明涉及三维模型处理技术领域,特别是涉及一种动作重定向方法、装置、设备及存储介质。
背景技术
基于三维虚拟人体模型的动作模拟在动画制作,电影特效等场景中有很多的应用,通常,动作模拟的过程包括:首先,动作捕捉设备采集演员演示的各种动作的动作数据,并将采集到的动作数据上传至处理设备,然后,处理设备对动作数据进行修正和处理,将动作数据与三维虚拟人体模型相结合,使得三维虚拟人体模型的动作与演员的动作一致。
但是,由于演员和三维虚拟人体模型的身材不一样,上述动作模拟方法可能导致三维虚拟人体模型表现出一些不符合物理原理的动作,比如,如图1所示,三维虚拟人体模型的手臂穿过了肢体内部,也就是产生了“穿模”,这将导致三维虚拟人体模型的动作模拟不够真实,影响用户的观感。
目前,可以采用人工修正的方式对穿模动作进行重定向,使得重定向后的动作符合物理原理,但是这样的动作重定向方法耗时长,成本高,使得动作模拟的实时性较差,因此,亟需一种速度较快且成本较低的动作重定向方法。
发明内容
本发明实施例的目的在于提供一种动作重定向方法、装置、设备及存储介质,以减少动作重定向方法的耗时和成本,实现三维虚拟人体模型与用户之间的实时交互。具体技术方案如下:
在本发明实施的第一方面,首先提供了一种动作重定向方法,所述方法包括:
获取原始动作数据和所述原始动作数据对应的骨骼向量;
将所述原始动作数据和所述骨骼向量输入至预先训练得到的重定向模型中,调整所述原始动作数据的手臂开度,得到重定向动作数据,并保持所述骨骼向量,其中,所述预先训练得到的重定向模型是利用不同手臂开度的样本动作数据和与所述样本动作数据对应的样本骨骼向量进行训练得到的;
根据所述重定向动作数据和所述骨骼向量,渲染三维虚拟人体模型。
可选地,所述将所述原始动作数据和所述骨骼向量输入至预先训练得到的重定向模型中,调整所述原始动作数据的手臂开度,得到重定向动作数据,包括:
将所述原始动作数据输入至所述重定向模型的第一网络模型进行处理,得到旋转特征;
将所述骨骼向量输入至所述重定向模型的第二网络模型进行处理,得到所述重定向模型的骨长特征;
将所述旋转特征与所述骨长特征拼接,得到动作特征;
将所述动作特征输入至所述重定向模型的第三网络模型进行处理,得到动作偏移量;
计算所述动作偏移量与所述原始动作数据之和,得到重定向动作数据。
可选地,所述原始动作数据的维度为(N-1)×3,所述骨骼向量的维度为(N-1)×1,所述N为人体关节点的数量;
所述将所述原始动作数据输入至所述重定向模型的第一网络模型进行处理,得到旋转特征,包括:
将所述原始动作数据输入至所述重定向模型的第一网络模型进行处理,得到维度为(N-1)×M的旋转特征,所述M为大于3的整数;
所述将所述骨骼向量输入至所述重定向模型的第二网络模型进行处理,得到所述重定向模型的骨长特征,包括:
将所述骨骼向量输入至所述重定向模型的第二网络模型进行处理,得到维度为(N-1)×Y的所述重定向模型的骨长特征,所述Y为大于1的整数;
所述将所述旋转特征与所述骨长特征拼接,得到动作特征,包括:
将所述旋转特征与所述骨长特征拼接,得到维度为(N-1)×(M+Y)的动作特征;
所述将所述动作特征输入至所述重定向模型的第三网络模型进行处理,得到动作偏移量,包括:
将所述动作特征输入至所述重定向模型的第三网络模型进行处理,得到维度为(N-1)×3的动作偏移量;
所述计算所述动作偏移量与所述原始动作数据之和,得到重定向动作数据,包括:
计算所述动作偏移量与所述原始动作数据之和,得到维度为(N-1)×3的重定向动作数据。
可选地,采用如下步骤,训练得到所述重定向模型:
获取多个样本动作数据,以及与所述样本动作数据对应的样本骨骼向量;
根据所述样本动作数据的预测穿模偏移量与真实穿模偏移量之间的损失值,对原始模型进行训练,得到重定向模型;
其中,所述预测穿模偏移量为利用所述原始模型对所述样本动作数据及所述样本骨骼向量进行计算得到的,所述真实穿模偏移量为对所述样本动作数据进行重定向处理得到的。
可选地,所述根据所述样本动作数据的预测穿模偏移量与真实穿模偏移量的损失值,对原始模型进行训练,得到重定向模型,包括:
对每个所述样本动作数据进行重定向处理,得到每个所述样本动作数据对应的样本重定向动作数据;
计算所述样本动作数据与所述样本重定向动作数据之间的差值,作为所述样本动作数据的真实穿模偏移量;
将所述样本动作数据及对应的样本骨骼向量输入至原始模型中,得到所述样本动作数据的预测穿模偏移量;
计算所述预测穿模偏移量与所述真实穿模偏移量之间的损失值,并判断所述损失值是否满足预设条件,若不满足,则对所述原始模型进行迭代调整,若满足,则将迭代调整后的原始模型作为重定向模型。
在本发明实施的第二方面,还提供了一种动作重定向装置,所述装置包括:
获取模块,用于获取原始动作数据和原始动作数据对应的骨骼向量;
调整模块,用于将原始动作数据和骨骼向量输入至预先训练得到的重定向模型中,调整原始动作数据的手臂开度,得到重定向动作数据,并保持骨骼向量,其中,预先训练得到的重定向模型是利用不同手臂开度的样本动作数据和与样本动作数据对应的样本骨骼向量进行训练得到的;
渲染模块,用于根据重定向动作数据和骨骼向量,渲染三维虚拟人体模型。
可选地,调整模块,具体用于:
将所述原始动作数据输入至所述重定向模型的第一网络模型进行处理,得到旋转特征;
将所述骨骼向量输入至所述重定向模型的第二网络模型进行处理,得到所述重定向模型的骨长特征;
将所述旋转特征与所述骨长特征拼接,得到动作特征;
将所述动作特征输入至所述重定向模型的第三网络模型进行处理,得到动作偏移量;
计算所述动作偏移量与所述原始动作数据之和,得到重定向动作数据。
可选地,所述原始动作数据的维度为(N-1)×3,所述骨骼向量的维度为(N-1)×1,所述N为人体关节点的数量;
调整模块,具体用于将所述原始动作数据输入至所述重定向模型的第一网络模型进行处理,得到维度为(N-1)×M的旋转特征,所述M为大于3的整数;将所述骨骼向量输入至所述重定向模型的第二网络模型进行处理,得到维度为(N-1)×Y的所述重定向模型的骨长特征,所述Y为大于1的整数;将所述旋转特征与所述骨长特征拼接,得到维度为(N-1)×(M+Y)的动作特征;将所述动作特征输入至所述重定向模型的第三网络模型进行处理,得到维度为(N-1)×3的动作偏移量;计算所述动作偏移量与所述原始动作数据之和,得到维度为(N-1)×3的重定向动作数据。
可选地,所述装置还包括训练模块,用于:
获取多个样本动作数据,以及与所述样本动作数据对应的样本骨骼向量;
根据所述样本动作数据的预测穿模偏移量与真实穿模偏移量之间的损失值,对原始模型进行训练,得到重定向模型;
其中,所述预测穿模偏移量为利用所述原始模型对所述样本动作数据及所述样本骨骼向量进行计算得到的,所述真实穿模偏移量为对所述样本动作数据进行重定向处理得到的。
可选地,所述训练模块,具体用于:
对每个所述样本动作数据进行重定向处理,得到每个所述样本动作数据对应的样本重定向动作数据;
计算所述样本动作数据与所述样本重定向动作数据之间的差值,作为所述样本动作数据的真实穿模偏移量;
将所述样本动作数据及对应的样本骨骼向量输入至原始模型中,得到所述样本动作数据的预测穿模偏移量;
计算所述预测穿模偏移量与所述真实穿模偏移量之间的损失值,并判断所述损失值是否满足预设条件,若不满足,则对所述原始模型进行迭代调整,若满足,则将迭代调整后的原始模型作为重定向模型。
在本发明实施的又一方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求上述任一所述的动作重定向方法。
在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的动作重定向方法。
在本发明实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的动作重定向方法。
本发明实施例提供的动作重定向方法、装置、设备及存储介质,首先,获取原始动作数据和原始动作数据对应的骨骼向量,然后,将原始动作数据和骨骼向量输入至预先训练得到的重定向模型中,调整原始动作数据的手臂开度,得到重定向动作数据,并保持骨骼向量,其中,预先训练得到的重定向模型是利用不同手臂开度的样本动作数据和与样本动作数据对应的样本骨骼向量进行训练得到的,进而,根据重定向动作数据和骨骼向量,渲染三维虚拟人体模型。这样,可以通过对原始动作数据中手臂开度的调整实现动作重定向,从而减少动作重定向方法的耗时和成本,进而提高三维虚拟人体模型进行动作模拟的实时性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为三维虚拟人体模型出现穿模动作的示意图;
图2为本发明实施例提供的一种动作重定向方法的步骤流程图;
图3为本发明实施例提供的一种三维虚拟人体模型的示意图;
图4为图3所示三维虚拟人体模型中各个关节点之间的父子关系示意图;
图5为本发明实施例提供的一种重定向模型的训练过程示意图;
图6为本发明实施例提供的一种重定向模型进行重定向的步骤流程图;
图7为本发明实施例提供的一种重定向模型的动作重定向过程的示意图;
图8为本发明实施例的方案示意图;
图9为本发明实施例的一种动作重定向装置的结构框图;
图10为本发明实施例的一种电子设备的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
相关技术中,基于三维虚拟人体模型的动作模拟过程中,演员根据三维虚拟人体模型的需求,在三维虚拟人体模型的各个关节处佩戴动作捕捉设备,然后,演员可以根据要求做出不同的动作,由动作捕捉设备采集演员的骨骼向量以及动作过程中三维虚拟人体模型各个关节的动作数据,并将采集到的动作数据映射至三维虚拟人体模型,这样,三维虚拟人体模型就可以做出演员所展示的动作,但是,由于演员和三维虚拟人体模型的身材不一样,可能导致三维虚拟人体模型表现出一些不符合物理原理的动作,其中,手臂与胸部的穿模最为常见。
穿模是一个非常复杂的问题,如果想彻底解决,需要十分复杂的运算。目前,可以采用人工修正的方式对穿模动作进行重定向,耗时长,成本高,无法实现三维虚拟人体模型与用户之间的实时交互。
为了解决上述问题,本发明实施例提出了一种动作重定向方法,下面从总体上对本发明实施例提供的动作重定向方法进行说明,该方法包括如下步骤:
获取原始动作数据和原始动作数据对应的骨骼向量;
将所述原始动作数据和所述骨骼向量输入至预先训练得到的重定向模型中,调整所述原始动作数据的手臂开度,得到重定向动作数据,并保持骨骼向量,其中,预先训练得到的重定向模型是利用不同手臂开度的样本动作数据和与样本动作数据对应的样本骨骼向量进行训练得到的;
根据重定向动作数据和骨骼向量,渲染三维虚拟人体模型。
由以上可见,本发明实施例提供的动作重定向方法,可以通过对原始动作数据中手臂开度的调整实现动作重定向,从而减少动作重定向方法的耗时和成本,提高三维虚拟人体模型进行动作模拟的实时性。
下面将通过具体的实施例,对本发明实施例提供的动作重定向方法进行详细描述。
参照图2,示出了本申请的一种动作重定向方法的步骤流程图,具体可以包括如下步骤:
S201:获取原始动作数据和原始动作数据对应的骨骼向量。
在本发明实施例中,原始动作数据即为将采集到的演员的动作数据映射至三维虚拟人体模型上之后,得到的三维虚拟人体模型的动作数据。其中,三维虚拟人体模型可以是设计师手工设计的模型,也可以是直接根据人体的骨骼生成的模型。不同的三维虚拟人体模型具有不同的骨骼向量,当骨骼向量发生变化时,三维虚拟人体模型也会发生变化。原始动作数据对应的骨骼向量也就是原始动作数据对应的三维虚拟人体模型的骨骼向量。
举例而言,如图3所示,为本发明实施例提供的一种三维虚拟人体模型示意图,其中,左侧为该三维虚拟人体模型的骨骼图,右侧为根据该三维虚拟人体模型生成的虚拟偶像的示意图,三维虚拟人体模型可以理解成一个外壳,要使这个外壳动起来,就需要驱动关节的旋转角度,三维虚拟人体模型的关节可以包括人的手肘、肩关节、膝关节等等,通过控制这些关节,就可以把这个三维虚拟人体模型驱动起来。
其中,动作数据可以为包含三维虚拟人体模型各个关节点旋转信息的数据,可以用矩阵M表示,其维度为(J-1)×3,J为三维虚拟人体模型中关节点的个数,运动矩阵M中不包括关节点中预设的根关节点的旋转信息,其中,每行的3维向量表示所在行代表的关节点相对其父节点的轴角信息。在本发明实施例中,处理的是单个独立的动作,而非动作序列,因此不需要获取根节点的全局坐标,也就是无需修改根节点的全局坐标。
如图4所示,为图3所示三维虚拟人体模型中各个关节点之间的父子关系示意图,该三维虚拟人体模型中包括17个关节点,那么旋转矩阵R的维度即为16×3。每个关节点之间的连接即为骨骼棒,骨骼棒的长度是不变的,骨骼向量为S,其维度为16×1,各个关节点之间具有一级一级的父子关系,其中,预设的根关节点是最高一级的父节点,与预设的根关节点连接的关节点则为预设的根关节点的子节点,以此类推。
在本步骤中,获取动作捕捉设备采集的原始动作数据和骨骼向量之后,可以先判断原始动作数据中的手臂区域动作数据是否穿模,若是,再执行下一步骤,若否,则直接根据原始动作数据渲染三维虚拟人体模型,从而减少对***资源的占用。
S202:将原始动作数据和骨骼向量输入至预先训练得到的重定向模型中,调整原始动作数据的手臂开度,得到重定向动作数据,并保持骨骼向量,其中,预先训练得到的重定向模型是利用不同手臂开度的样本动作数据和与样本动作数据对应的样本骨骼向量进行训练得到的。
在本发明实施例中,重定向模型是预先训练得到的模型,将原始动作数据和骨骼向量输入至重定向模型,可以得到重定向动作数据,重定向动作数据相较于原始动作数据,手臂开度被调整,从而可以减少三维虚拟人体模型的手臂与胸部之间发生的穿模现象。其中,重定向模型可以是深度学习网络模型,也可以是神经网络模型,对此不作限定。
举例而言,如图5所示,为重定向模型的训练过程示意图,可以采用如下步骤,训练得到重定向模型:
首先,获取多个样本动作数据以及与样本动作数据对应的样本骨骼向量,其中,样本动作数据可以包括多个,并且对应不同的样本骨骼向量,这样,训练得到的重定向模型可以更好的适用于不同的骨骼向量。
然后,根据样本动作数据的预测穿模偏移量与真实穿模偏移量之间的损失值,对原始模型进行训练,得到重定向模型。其中,预测穿模偏移量为利用原始模型对样本动作数据及样本骨骼向量进行计算得到的,真实穿模偏移量为对样本动作数据进行重定向处理得到的。
举例而言,根据样本动作数据的预测穿模偏移量与真实穿模偏移量之间的损失值,对原始模型进行训练,具体可以包括如下步骤:
第一步,对每个样本动作数据进行重定向处理,得到每个样本动作数据对应的样本重定向动作数据,并计算样本动作数据与样本重定向动作数据之间的差值,作为样本动作数据的真实穿模偏移量。
其中,可以采用任一种重定向算法对样本动作数据进行重定向处理,比如,可以采用IK(Inverse Kinematics,逆向运动学)算法进行处理,或者,也可以人工进行动作重定向,具体不做限定。重定向后的样本动作数据调整了手臂的开度,因此不会发生穿模现象。
第二步,将样本动作数据及对应的样本骨骼向量输入至原始模型中,得到样本动作数据的预测穿模偏移量。
第三步,计算预测穿模偏移量与真实穿模偏移量之间的损失值,并判断损失值是否满足预设条件,若不满足,则对原始模型进行迭代调整,若满足,则将迭代调整后的原始模型作为重定向模型。
这样,就得到了重定向模型,重定向模型可以对输入的原始动作数据和骨骼向量进行处理,得到调整了手臂开度的重定向动作数据。
其中,重定向模型可以是神经网络模型,也可以是深度学习模型,也可以是任意一种训练模型,具体不做限定。举例而言,如图6所示,一种实现方式中,重定向模型处理原始动作数据和骨骼向量,得到重定向动作数据的具体步骤,可以包括:
S601,将原始动作数据输入至重定向模型的第一网络模型进行处理,得到旋转特征。其中,第一网络模型可以是由多层全连接层组成的任一可行网络。举例而言,假设原始动作数据的维度为(N-1)×3,骨骼向量的维度为(N-1)×1,那么,将原始动作数据输入至重定向模型的第一网络模型进行处理,可以得到维度为(N-1)×M的旋转特征,其中,N为人体关节点的数量,M为大于3的整数。
S602,将骨骼向量输入至重定向模型的第二网络模型进行处理,得到重定向模型的骨长特征。其中,第二网络模型也可以是由多层全连接层组成的任一可行网络。举例而言,延续上述例子,将骨骼向量输入至所述重定向模型的第二网络模型进行处理,可以得到维度为(N-1)×Y的所述重定向模型的骨长特征,其中,Y为大于1的整数。
S603,将旋转特征与重定向模型的骨长特征拼接,得到动作特征。其中,旋转特征与骨长特征的拼接轴为第二轴向。举例而言,延续上述例子,将旋转特征与骨长特征拼接,可以得到维度为(N-1)×(M+Y)的动作特征。
S604,将动作特征输入至重定向模型的第三网络模型进行处理,得到动作偏移量。动作偏移量ΔR为重定向动作数据R′与原始动作数据R之间的差值,即ΔR=R′-R。其中,第三全连接层也可以是由多层全连接层组成的任一可行网络。举例而言,延续上述例子,将动作特征输入至重定向模型的第三网络模型进行处理,可以得到维度为(N-1)×3的动作偏移量。
S605,计算动作偏移量与原始动作数据之和,得到重定向动作数据。可以理解,重定向动作数据即为R′=ΔR+R。举例而言,延续上述例子,计算动作偏移量与原始动作数据之和,可以得到维度为(N-1)×3的重定向动作数据。
以图3所示三维虚拟人体模型为例,原始动作数据为维度为16×3的运动矩阵R,骨骼向量的维度为16×1,那么,第一网络模型的输出为维度是16×12的旋转特征fR,第二网络模型的输出为维度是16×4的骨长特征fO,将16×12的旋转特征fR与16×4的骨长特征fO沿第二轴向拼接,得到的运动特征f的维度为16×16,第三网络模型输出的动作偏移量为维度是16×3的旋转矩阵偏移ΔR。
如图7所示,为上述重定向模型的动作重定向过程的示意图,其中,Net A表示第一网络模型,Net B表示第二网络模型,Net C表示第三网络模型,Net A、Net B和Net C可以采用相同的网络结构,也可以采用不同的网络结构,重定向模型的动作重定向过程与步骤S601~S605相同,这里不再赘述。
S203:根据重定向动作数据和骨骼向量,渲染三维虚拟人体模型。
得到重定向动作数据之后,就可以根据重定向动作数据和骨骼向量对三维虚拟人体模型进行渲染,重定向动作数据调整了原始动作数据手臂开度,渲染后不会出现手臂穿过肢体内部等不符合物理原理的动作。如图8所示,为本发明实施例的方案示意图,原始动作数据出现了穿模现象,将原始动作数据和骨骼向量输入至重定向模型,对其手臂开度进行调整,得到了重定向动作数据,根据重定向动作数据和骨骼向量进行渲染,可以得到不穿模的三维虚拟人体模型。
由以上可见,本发明实施例提供的动作重定向方法,可以通过对原始动作数据中手臂开度的调整实现动作重定向,从而减少动作重定向方法的耗时和成本,提高三维虚拟人体模型进行动作模拟的实时性。
参照图9,示出了本申请的一种动作重定向装置的结构框图,该装置具体可以包括如下模块:
获取模块901,用于获取原始动作数据和原始动作数据对应的骨骼向量;
调整模块902,用于将原始动作数据和骨骼向量输入至预先训练得到的重定向模型中,调整原始动作数据的手臂开度,得到重定向动作数据,并保持骨骼向量,其中,预先训练得到的重定向模型是利用不同手臂开度的样本动作数据和与样本动作数据对应的样本骨骼向量进行训练得到的;
渲染模块903,用于根据重定向动作数据和骨骼向量,渲染三维虚拟人体模型。
一种实现方式中,调整模块902,具体用于:
将所述原始动作数据输入至所述重定向模型的第一网络模型进行处理,得到旋转特征;
将所述骨骼向量输入至所述重定向模型的第二网络模型进行处理,得到所述重定向模型的骨长特征;
将所述旋转特征与所述骨长特征拼接,得到动作特征;
将所述动作特征输入至所述重定向模型的第三网络模型进行处理,得到动作偏移量;
计算所述动作偏移量与所述原始动作数据之和,得到重定向动作数据。
一种实现方式中,所述原始动作数据的维度为(N-1)×3,所述骨骼向量的维度为(N-1)×1,所述N为人体关节点的数量;
调整模块902,具体用于将所述原始动作数据输入至所述重定向模型的第一网络模型进行处理,得到维度为(N-1)×M的旋转特征,所述M为大于3的整数;将所述骨骼向量输入至所述重定向模型的第二网络模型进行处理,得到维度为(N-1)×Y的所述重定向模型的骨长特征,所述Y为大于1的整数;将所述旋转特征与所述骨长特征拼接,得到维度为(N-1)×(M+Y)的动作特征;将所述动作特征输入至所述重定向模型的第三网络模型进行处理,得到维度为(N-1)×3的动作偏移量;计算所述动作偏移量与所述原始动作数据之和,得到维度为(N-1)×3的重定向动作数据。
一种实现方式中,装置还包括训练模块(图中未示出),用于:
获取多个样本动作数据,以及与所述样本动作数据对应的样本骨骼向量;
根据所述样本动作数据的预测穿模偏移量与真实穿模偏移量之间的损失值,对原始模型进行训练,得到重定向模型;
其中,所述预测穿模偏移量为利用所述原始模型对所述样本动作数据及所述样本骨骼向量进行计算得到的,所述真实穿模偏移量为对所述样本动作数据进行重定向处理得到的。
一种实现方式中,训练模块(图中未示出),具体用于:
对每个所述样本动作数据进行重定向处理,得到每个所述样本动作数据对应的样本重定向动作数据;
计算所述样本动作数据与所述样本重定向动作数据之间的差值,作为所述样本动作数据的真实穿模偏移量;
将所述样本动作数据及对应的样本骨骼向量输入至原始模型中,得到所述样本动作数据的预测穿模偏移量;
计算所述预测穿模偏移量与所述真实穿模偏移量之间的损失值,并判断所述损失值是否满足预设条件,若不满足,则对所述原始模型进行迭代调整,若满足,则将迭代调整后的原始模型作为重定向模型。
由以上可见,本发明实施例提供的动作重定向装置,可以通过对原始动作数据中手臂开度的调整实现动作重定向,从而减少动作重定向方法的耗时和成本,提高三维虚拟人体模型进行动作模拟的实时性。
本发明实施例还提供了一种电子设备,如图10所示,包括处理器1001、通信接口1002、存储器1003和通信总线1004,其中,处理器1001,通信接口1002,存储器1003通过通信总线1004完成相互间的通信,
存储器1003,用于存放计算机程序;
处理器1001,用于执行存储器1003上所存放的程序时,实现如下步骤:
获取原始动作数据和原始动作数据对应的骨骼向量;
将原始动作数据和骨骼向量输入至预先训练得到的重定向模型中,调整原始动作数据的手臂开度,得到重定向动作数据,并保持骨骼向量,其中,预先训练得到的重定向模型是利用不同手臂开度的样本动作数据和与样本动作数据对应的样本骨骼向量进行训练得到的;
根据重定向动作数据和骨骼向量,渲染三维虚拟人体模型。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一的动作重定向方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一的动作重定向方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (8)
1.一种动作重定向方法,其特征在于,所述方法包括:
获取原始动作数据和所述原始动作数据对应的骨骼向量;
将所述原始动作数据和所述骨骼向量输入至预先训练得到的重定向模型中,调整所述原始动作数据的手臂开度,得到重定向动作数据,并保持所述骨骼向量,其中,所述预先训练得到的重定向模型是利用不同手臂开度的样本动作数据和与所述样本动作数据对应的样本骨骼向量进行训练得到的;
根据所述重定向动作数据和所述骨骼向量,渲染三维虚拟人体模型。
2.根据权利要求1所述的方法,其特征在于,所述将所述原始动作数据和所述骨骼向量输入至预先训练得到的重定向模型中,调整所述原始动作数据的手臂开度,得到重定向动作数据,包括:
将所述原始动作数据输入至所述重定向模型的第一网络模型进行处理,得到旋转特征;
将所述骨骼向量输入至所述重定向模型的第二网络模型进行处理,得到所述重定向模型的骨长特征;
将所述旋转特征与所述骨长特征拼接,得到动作特征;
将所述动作特征输入至所述重定向模型的第三网络模型进行处理,得到动作偏移量;
计算所述动作偏移量与所述原始动作数据之和,得到重定向动作数据。
3.根据权利要求2所述的方法,其特征在于,所述原始动作数据的维度为(N-1)×3,所述骨骼向量的维度为(N-1)×1,所述N为人体关节点的数量;
所述将所述原始动作数据输入至所述重定向模型的第一网络模型进行处理,得到旋转特征,包括:
将所述原始动作数据输入至所述重定向模型的第一网络模型进行处理,得到维度为(N-1)×M的旋转特征,所述M为大于3的整数;
所述将所述骨骼向量输入至所述重定向模型的第二网络模型进行处理,得到所述重定向模型的骨长特征,包括:
将所述骨骼向量输入至所述重定向模型的第二网络模型进行处理,得到维度为(N-1)×Y的所述重定向模型的骨长特征,所述Y为大于1的整数;
所述将所述旋转特征与所述骨长特征拼接,得到动作特征,包括:
将所述旋转特征与所述骨长特征拼接,得到维度为(N-1)×(M+Y)的动作特征;
所述将所述动作特征输入至所述重定向模型的第三网络模型进行处理,得到动作偏移量,包括:
将所述动作特征输入至所述重定向模型的第三网络模型进行处理,得到维度为(N-1)×3的动作偏移量;
所述计算所述动作偏移量与所述原始动作数据之和,得到重定向动作数据,包括:
计算所述动作偏移量与所述原始动作数据之和,得到维度为(N-1)×3的重定向动作数据。
4.根据权利要求1所述的方法,其特征在于,采用如下步骤,训练得到所述重定向模型:
获取多个样本动作数据,以及与所述样本动作数据对应的样本骨骼向量;
根据所述样本动作数据的预测穿模偏移量与真实穿模偏移量之间的损失值,对原始模型进行训练,得到重定向模型;
其中,所述预测穿模偏移量为利用所述原始模型对所述样本动作数据及所述样本骨骼向量进行计算得到的,所述真实穿模偏移量为对所述样本动作数据进行重定向处理得到的。
5.根据权利要求4所述的方法,其特征在于,所述根据所述样本动作数据的预测穿模偏移量与真实穿模偏移量的损失值,对原始模型进行训练,得到重定向模型,包括:
对每个所述样本动作数据进行重定向处理,得到每个所述样本动作数据对应的样本重定向动作数据;
计算所述样本动作数据与所述样本重定向动作数据之间的差值,作为所述样本动作数据的真实穿模偏移量;
将所述样本动作数据及对应的样本骨骼向量输入至原始模型中,得到所述样本动作数据的预测穿模偏移量;
计算所述预测穿模偏移量与所述真实穿模偏移量之间的损失值,并判断所述损失值是否满足预设条件,若不满足,则对所述原始模型进行迭代调整,若满足,则将迭代调整后的原始模型作为重定向模型。
6.一种动作重定向装置,其特征在于,所述装置包括:
获取模块,用于获取原始动作数据和所述原始动作数据对应的骨骼向量;
调整模块,用于将所述原始动作数据和所述骨骼向量输入至预先训练得到的重定向模型中,调整所述原始动作数据的手臂开度,得到重定向动作数据,并保持骨骼向量,其中,所述预先训练得到的重定向模型是利用不同手臂开度的样本动作数据和与所述样本动作数据对应的样本骨骼向量进行训练得到的;
渲染模块,用于根据所述重定向动作数据和所述骨骼向量,渲染三维虚拟人体模型。
7.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-5任一所述的方法步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011569050.3A CN112562072A (zh) | 2020-12-25 | 2020-12-25 | 一种动作重定向方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011569050.3A CN112562072A (zh) | 2020-12-25 | 2020-12-25 | 一种动作重定向方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112562072A true CN112562072A (zh) | 2021-03-26 |
Family
ID=75033219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011569050.3A Pending CN112562072A (zh) | 2020-12-25 | 2020-12-25 | 一种动作重定向方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112562072A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113129414A (zh) * | 2021-04-12 | 2021-07-16 | 北京爱奇艺科技有限公司 | 手部动作修复方法、装置、设备及存储介质 |
CN113298917A (zh) * | 2021-05-28 | 2021-08-24 | 上海曼恒数字技术股份有限公司 | 一种人形动画复用方法及*** |
CN113989928A (zh) * | 2021-10-27 | 2022-01-28 | 南京硅基智能科技有限公司 | 一种动作捕捉和重定向方法 |
CN117710468A (zh) * | 2024-02-06 | 2024-03-15 | 天度(厦门)科技股份有限公司 | 基于关节网格形变的姿态重定向方法、装置、设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130307850A1 (en) * | 2011-02-16 | 2013-11-21 | Kabushiki Kaisha Square Enix (Also Trading As Square Enix Co., Ltd) | Action modeling device, method, and program |
CN104102811A (zh) * | 2013-04-05 | 2014-10-15 | 波音公司 | 创建人体工学人体模型的姿势以及使用自然用户界面控制计算机辅助设计环境 |
CN108762495A (zh) * | 2018-05-18 | 2018-11-06 | 深圳大学 | 基于手臂动作捕捉的虚拟现实驱动方法及虚拟现实*** |
CN110232745A (zh) * | 2018-03-05 | 2019-09-13 | 南京理工大学 | 一种基于可变形椭球体模型的人体建模方法 |
CN110738717A (zh) * | 2019-10-16 | 2020-01-31 | 网易(杭州)网络有限公司 | 动作数据的修正方法、装置及电子设备 |
-
2020
- 2020-12-25 CN CN202011569050.3A patent/CN112562072A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130307850A1 (en) * | 2011-02-16 | 2013-11-21 | Kabushiki Kaisha Square Enix (Also Trading As Square Enix Co., Ltd) | Action modeling device, method, and program |
CN104102811A (zh) * | 2013-04-05 | 2014-10-15 | 波音公司 | 创建人体工学人体模型的姿势以及使用自然用户界面控制计算机辅助设计环境 |
CN110232745A (zh) * | 2018-03-05 | 2019-09-13 | 南京理工大学 | 一种基于可变形椭球体模型的人体建模方法 |
CN108762495A (zh) * | 2018-05-18 | 2018-11-06 | 深圳大学 | 基于手臂动作捕捉的虚拟现实驱动方法及虚拟现实*** |
CN110738717A (zh) * | 2019-10-16 | 2020-01-31 | 网易(杭州)网络有限公司 | 动作数据的修正方法、装置及电子设备 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113129414A (zh) * | 2021-04-12 | 2021-07-16 | 北京爱奇艺科技有限公司 | 手部动作修复方法、装置、设备及存储介质 |
CN113129414B (zh) * | 2021-04-12 | 2024-04-12 | 北京爱奇艺科技有限公司 | 手部动作修复方法、装置、设备及存储介质 |
CN113298917A (zh) * | 2021-05-28 | 2021-08-24 | 上海曼恒数字技术股份有限公司 | 一种人形动画复用方法及*** |
CN113989928A (zh) * | 2021-10-27 | 2022-01-28 | 南京硅基智能科技有限公司 | 一种动作捕捉和重定向方法 |
CN113989928B (zh) * | 2021-10-27 | 2023-09-05 | 南京硅基智能科技有限公司 | 一种动作捕捉和重定向方法 |
CN117710468A (zh) * | 2024-02-06 | 2024-03-15 | 天度(厦门)科技股份有限公司 | 基于关节网格形变的姿态重定向方法、装置、设备及介质 |
CN117710468B (zh) * | 2024-02-06 | 2024-05-17 | 天度(厦门)科技股份有限公司 | 基于关节网格形变的姿态重定向方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112562072A (zh) | 一种动作重定向方法、装置、设备及存储介质 | |
KR102318772B1 (ko) | 도메인 분리 뉴럴 네트워크들 | |
CN110288681B (zh) | 角色模型的蒙皮方法、装置、介质及电子设备 | |
CN110062934A (zh) | 使用神经网络确定图像中的结构和运动 | |
CN106485773B (zh) | 一种用于生成动画数据的方法和装置 | |
CN112000819A (zh) | 多媒体资源推荐方法、装置、电子设备及存储介质 | |
US10977549B2 (en) | Object animation using generative neural networks | |
CN110751039B (zh) | 多视图3d人体姿态估计方法及相关装置 | |
CN111028142A (zh) | 图像处理方法、装置和存储介质 | |
WO2016051640A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
CN110909663A (zh) | 一种人体关键点识别方法、装置及电子设备 | |
US20200394516A1 (en) | Filter processing device and method of performing convolution operation at filter processing device | |
CN114925320A (zh) | 一种数据处理方法及相关装置 | |
CN114418919A (zh) | 图像融合方法及装置、电子设备和存储介质 | |
CN107729885B (zh) | 一种基于多重残差学习的人脸增强方法 | |
Wang et al. | Learning elastic constitutive material and damping models | |
CN117056595A (zh) | 一种交互式的项目推荐方法、装置及计算机可读存储介质 | |
CN112699812B (zh) | 人体模型运动特征提取方法、装置、电子设备及存储介质 | |
CN116993577A (zh) | 图像处理方法、装置、终端设备以及存储介质 | |
CN111565065A (zh) | 一种无人机基站部署方法、装置及电子设备 | |
CN116597263A (zh) | 图像合成模型的训练方法及相关装置 | |
CN114239760B (zh) | 多模态模型训练以及图像识别方法、装置、电子设备 | |
CN112562071A (zh) | 一种动作差异度计算方法、装置、设备及存储介质 | |
CN114841361A (zh) | 一种模型训练方法及其相关设备 | |
CN112508776B (zh) | 动作迁移方法、装置和电子设备 |
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 |