CN115018962A - 一种基于虚拟人物模型的人体运动姿态数据集生成方法 - Google Patents

一种基于虚拟人物模型的人体运动姿态数据集生成方法 Download PDF

Info

Publication number
CN115018962A
CN115018962A CN202210767092.0A CN202210767092A CN115018962A CN 115018962 A CN115018962 A CN 115018962A CN 202210767092 A CN202210767092 A CN 202210767092A CN 115018962 A CN115018962 A CN 115018962A
Authority
CN
China
Prior art keywords
virtual
coordinate system
real
human body
axis
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
Application number
CN202210767092.0A
Other languages
English (en)
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.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
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 University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN202210767092.0A priority Critical patent/CN115018962A/zh
Publication of CN115018962A publication Critical patent/CN115018962A/zh
Pending legal-status Critical Current

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

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明提供了一种基于虚拟人物模型的人体运动姿态数据集生成方法,使用虚拟人物模型运动代替真实人体运动作为数据源,解决人体运动姿态数据集采集受到真实人体运动限制的问题,包括步骤:步骤1、人物模型播放符合人体解剖学的骨骼动画;步骤2、根据三维场景使用反向运动学算法修正模型动作;步骤3、设置虚拟IMU,记录虚拟人物模型动作序列数据;步骤4、将动作序列中虚拟坐标系数据转换为现实人体所在坐标系数据;步骤5、对现实人体所在坐标系数据进行时间平滑和数据整合,得到人体运动姿态数据集。本发明具有数据集采集难度低、不受环境干扰、采集精度高的优点。

Description

一种基于虚拟人物模型的人体运动姿态数据集生成方法
技术领域
本发明属于惯性动作捕捉和人体动作姿态预测技术,具体涉及基于虚拟人物模型的人体运动姿态数据集生成技术。
背景技术
人体运动姿态估计是指利用机械装置、光学、声学、电磁学或者惯性传感器等设备获取人体运动数据并将运动姿态重现的技术。依托于此技术的人体运动姿态与位置估算技术的开发是以传感器学、运动力学、导航、人体结构学和物理学等多学科理论研究为基础,结合体感网络、虚拟现实等多学科跨领域交叉问题,具有较高的科研价值和商业价值。
人体姿态预测网络作为深度学习在人体运动姿态估计领域的应用,可以根据人体骨骼动作序列旋转姿态、空间位置等信息实现无传感器绑定骨骼姿态预测、人体行为活动识别、用户身份认证等功能。获取用于训练人体姿态预测网络的人体动作数据是此领域研究的难点之一,如何获取拥有广泛动作特征的人体运动姿态数据集在人体运动姿态预测领域成为一个值得研究的课题。虚拟人物模型通过骨骼动画的方式驱动人物模型各骨骼动作,可以在一定程度上模拟出需要的现实人体动作。虚拟人物模型的骨骼动作可以替代真实人体动作成为人体运动姿态数据集的动作源,在降低人体运动姿态数据集的采集成本的同时提升了所采集运动姿态数据集的采集精度。
目前的人体运动姿态数据集采集方法通过传感器对真实的人体运动进行采集。使用传感器对真实人体运动进行采集受到采集设备和采集场地的限制,无法大规模地进行数据采集;另一方面,受限于动作采集人员的体能和技术水平,难以进行长时间复杂的动作采集。特别地,当需要采集攀岩、滑雪等户外才能进行的动作或者存在长距离位移的动作时,使用传统真实数据采集方法需要进行额外的适配增加了动作采集成本。由于单一采集人员存在运动习惯,使用单一真实人体进行采集所容易出现大量重复动作,因此需要不同采集人员进行动作采集,限制了所采数据集的动作广度。另外的,传统动作数据采集方法需要在采集前确定人体运动坐标系,在不同坐标系下使用此数据需要额外的坐标系转换,在无法知晓采集坐标时,数据坐标系对齐困难。最后,传统真实数据采集方法容易受到光照、电磁波、障碍物等因素的影响导致采集动作出现帧率下降、动作畸变等问题。综上,目前的人体运动数据集采集方法存在成本高、受采集人员动作限制、动作广度低、数据坐标对齐困难、易受干扰等问题。
发明内容
本发明所要解决的技术问题是,为减少人体运动姿态预测网络训练所需的真实人体动作数据规模,增强骨骼姿态预测网络适应性,提供一种从虚拟人物动作中提取人体姿态预测网络所需训练数据的方法。
本发明为解决上述技术问题所采用的技术方案是,一种基于虚拟人物动作数据的人体运动姿态数据集生成方法,包括步骤:
步骤1、从播放的骨骼动画中获取符合人体解剖学的人物模型;
步骤2、根据三维场景使用反向运动学算法修正虚拟人物模型动作;
步骤3、设置虚拟惯性测量单元,记录虚拟人物模型动作序列;
步骤4、将虚拟人物模型动作序列中虚拟坐标系数据转换为现实人体所在坐标系数据;
步骤5、对现实人体所在坐标系数据进行时间平滑和数据整合得到人体运动姿态数据集;
本发虚拟人物模型代替真实人体作为数据源,有效解决了传统动作数据采集方法受到采集人员动作限制、采集过程易受干扰的问题;并使用了反向运动学骨骼动作修正手段,使得人物模型骨骼动作在符合人体解剖学的前提下,能够根据虚拟场景环境的不同做出不同的修正,解决了传统动作数据采集方法采集数据动作广度不足的问题。
进一步的,本发明给出了一种虚拟现实坐标转换方法,通过将虚拟坐标系标准动作和现实人体所在坐标系标准动作进行对齐实现虚拟坐标系数据到任意现实人体所在坐标系数据的转换,解决了数据坐标灵活对齐的问题。
本发明的有益效果是,解决了人体动作姿态采集过程中成本高、受采集人员动作限制、动作广度低、数据坐标对齐困难、易受干扰等问题,具有良好的泛化能力,便于工程实现。
附图说明
图1为本发明的算法结构图;
图2为人体骨骼树模型;
图3为反向运动学修正人物模型动作流程图;
图4为虚拟坐标系数据转现实人体所在坐标系数据结构图;
图5为旋转四元数原理示意图。
具体实施方式
为了使本发明的目的、技术方案及效果更加清楚易懂,下面结合附图和实施例,对本发明的技术方案作进一步详细描述,以下的具体实施例用于解释本发明,不用于限制本发明范围。
如图1所示,为本发明的算法结构图,其中包括骨骼动画池、反向运动学修正、虚拟人物模型、虚拟坐标系映射现实人体所在坐标系等模块。
根据图1,归纳为5个主要部分:
步骤1、人物模型播放符合人体解剖学的骨骼动画A(i);
步骤2、根据三维场景使用反向运动学算法修正模型动作;
步骤3、设置虚拟IMU,记录虚拟人物模型动作序列数据M(t);
步骤4、将动作序列M(t)中虚拟坐标系数据转换为现实人体所在坐标系数据;
步骤5、对现实人体所在坐标系数据进行时间平滑和数据整合,得到人体运动姿态数据集Data。
详细流程如下所示:
步骤1:制作符合人体解剖学的骨骼动画,并在虚拟人物模型上播放。所述的符合人体解剖学的人物模型骨骼动画A(i)采用FBX格式存储,其描述的模型由相互连接的骨骼组成,如图2所示,每个骨骼都有着0个或多个子骨骼,各个骨骼之间的连接关系形成一棵骨骼树,通过改变骨骼相对父骨骼的旋转和位置来为模型生成动画。在向骨骼动画池加入所加入骨骼动画前,需验证骨骼动画符合人体解剖学约束:
使用基于自身坐标系旋转描述的欧拉角比基于静态坐标系旋转描述的欧拉角更适合描述人体解剖学约束,将骨骼基于静态坐标系旋转的欧拉角转换为基于自身坐标系旋转的欧拉角:
Figure BDA0003722573980000041
其中rolldyn(k)、pitchdyn(k)、yawdyn(k)分别表示所旋转的第k个骨骼以父骨骼姿态为初始姿态分别绕自身坐标系X轴、Y轴、Z轴所旋转的角度,rollstatic(k)、pitchstatic(k)、yawstatic(k)分别表示所旋转的第k个骨骼以父骨骼姿态为初始姿态绕父骨骼坐标系X轴、Y轴、Z轴所旋转的角度。
需要对rolldyn(k)、pitchdyn(k)、yawdyn(k)进行角度限制验证:
Figure BDA0003722573980000042
其中rollmax(k)、rollmin(k)分别表示当前骨骼绕自身X轴坐标系最小和最大角度限制,pitchmax(k)、pitchmin(k)分别表示当前骨骼绕自身Y轴坐标系最小和最大角度限制,yawmax(k)、yawmin(k)分别表示当前骨骼绕自身Z轴坐标系最小和最大角度限制,此部分数据由实际测量得到。
步骤2:基于虚拟人物模型,随机播放骨骼动画A(i)并使用反向运动学算法得到修正人物模型骨骼动作
Figure BDA0003722573980000043
所述的使用反向运动学算法得到修正的人物模型骨骼动作
Figure BDA0003722573980000044
中,将人物模型四肢视为存在旋转约束的骨骼链Bone和关节集合Joint。如图3所示,将A(i)作为人物模型的预动作,计算当前骨骼链与虚拟场景的重叠点,如存在重叠点则将重叠点中距离根关节Jointroot最近的点作为目标点Target,以Target为目标并以末端关节Jointend为末端效应器Effector执行以下步骤:
(1)设置末端骨骼为当前旋转骨骼Bonecurrent
(2)设置Bonecurrent近根关节处关节为当前关节Jointcurrent
(3)计算Target经Jointcurrent到Effector所旋转的角度Eularbone
(4)如果Eularbone各轴旋转满足Bonecurrent骨骼旋转限制则对Bonecurrent应用旋转Eularbone否则Bonecurrent旋转到尽可能接近Eularbone的极限角度。
(5)如果Bonecurrent不是根骨骼则将Bonecurrent设置为其父骨骼并跳转到(2),如果Bonecurrent是根骨骼则判断Effector与Target的欧氏距离是否满足误差限制,如果是则算法结束,如果不满足则将Bonecurrent设置为末端骨骼并跳转到(2)。
步骤3:首先在虚拟人物模型骨骼上设置虚拟IMU,以虚拟IMU姿态角作为设置骨骼姿态角,以虚拟IMU加速度作为设置骨骼关节加速度,然后记录人物模型动作序列MT(t)。所述的虚拟人物模型动作的序列MT(t)数据记录中,T为现实世界人体动作数据采样时间间隔,t为人物模型当前动作所在时间戳。从当前时间戳t提取某一骨骼对现实世界姿态四元数和关节加速度的算法结构如图4所示。
虚拟人物各关节加速度
Figure BDA0003722573980000051
由人物模型关节位置近似计算得到:
Figure BDA0003722573980000052
其中,
Figure BDA0003722573980000053
表示人物模型第k个关节在t时刻的位置。
步骤4:将动作序列M(t)中姿态角转换为旋转四元数,使用旋转四元数将动作序列M(t)中虚拟坐标系数据转换为现实人体所在坐标系数据。
步骤4-1:虚拟坐标系下人物模型骨骼欧拉角与加速度映射到现实人体所在坐标系下人体姿态四元数与加速度中,虚拟坐标系下骨骼姿态角
Figure BDA0003722573980000054
所描述的旋转为保持虚拟坐标系静止,骨骼模型依次绕X轴、Y轴、Z轴旋转对应的角度。
虚拟坐标系骨骼姿态角
Figure BDA0003722573980000055
使用四元数变换公式计算得到虚拟坐标系四元数
Figure BDA0003722573980000056
Figure BDA0003722573980000061
其中,rollk
Figure BDA0003722573980000062
中绕X轴旋转的角度,pitchk
Figure BDA0003722573980000063
中绕Y轴旋转的角度,yawk
Figure BDA0003722573980000064
中绕Z轴旋转的角度。
步骤4-2:首先,建立虚拟坐标系在现实人体所在坐标系中的投影。选择现实世界标准人体的正前方为Y轴正方向、头顶方向为Z轴正方向、左手指向方向为X轴正方向为投影坐标系,该坐标系的旋转、坐标和虚拟坐标系中旋转、坐标相同。然后,计算投影坐标系在现实人体所在坐标系中的旋转四元数qtrans。对于一个虚拟坐标系下的四元数
Figure BDA0003722573980000065
将该旋转四元数分解为旋转轴和旋转角的形式:
θvirtual=2arccos(wvirtual)
Figure BDA0003722573980000066
其中,wvirtual表示四元数
Figure BDA0003722573980000067
的w轴分量,xvirtual表示四元数
Figure BDA0003722573980000068
的x轴分量,yvirtual表示四元数
Figure BDA0003722573980000069
的y轴分量,zvirtual表示四元数
Figure BDA00037225739800000610
的z轴分量,
(xvirtual,yvirtual,zvirtual)表示四元数
Figure BDA00037225739800000611
在虚拟坐标系中的旋转轴,θvirtual表示四元数
Figure BDA00037225739800000612
绕该旋转轴的旋转角,如图5所示。
将虚拟坐标系中的旋转轴(xvirtual,yvirtual,zvirtual)转换为投影坐标系中的旋转轴(xProjection,yProjection,zProjection),然后通过现实人体所在坐标系到投影坐标系的旋转四元数qtrans将(xProjection,yProjection,zProjection)变换为现实人体所在坐标系中的旋转轴:
Figure BDA0003722573980000071
Figure BDA0003722573980000072
Figure BDA0003722573980000073
其中,qaxis为(xProjection,yProjection,zProjection)扩展四元数转换到现实坐标的结果。waxis、xaxis、yaxis、zaxis分别为qaxis在w、x、y、z轴的分量,
(xreal_axis,yreal_axis,zreal_axis)为虚拟坐标系旋转轴在现实人体所在坐标系中的观测结果。在虚拟世界到现实世界的映射过程中,虚拟世界四元数
Figure BDA0003722573980000074
绕旋转轴的旋转角不变,通过组合现实人体所在坐标系下的旋转轴和旋转角得到虚拟世界四元数
Figure BDA0003722573980000075
在现实世界中的映射:
θreal=θvirtual
Figure BDA0003722573980000076
其中,θreal表示映射到现实世界中的四元数绕(xreal_axis,yreal_axis,zreal_axis)的旋转角,qk(t)表示虚拟坐标下四元数
Figure BDA0003722573980000077
在现实人体所在坐标系中的映射。
步骤4-3:将加速度从虚拟坐标系转换到现实人体所在坐标系。首先,建立虚拟坐标系在现实人体所在坐标系中的投影。为保证加速度数据和旋转数据的坐标系一致性,选择现实世界标准人体的正前方为Y轴正方向,头顶方向为Z轴正方向,左手指向方向为X轴正方向。然后,计算其在现实人体所在坐标系中的旋转四元数qtrans
虚拟坐标系中的向量坐标直接映射到投影坐标系,通过将该向量在投影坐标系中的坐标转换到现实人体所在坐标系中的坐标,实现从虚拟坐标系中向量到现实人体所在坐标系中向量的转换。因此,对于一个虚拟加速度数据有:
Figure BDA0003722573980000081
Figure BDA0003722573980000082
Figure BDA0003722573980000083
其中,
Figure BDA0003722573980000084
表示虚拟坐标加速度在投影坐标系下的映射,
Figure BDA0003722573980000085
表示投影系加速度
Figure BDA0003722573980000086
的扩展四元数,αk(t)表示虚拟坐标系加速度相对应的现实人体所在坐标系加速度。
最后将现实人体所在坐标系旋转四元数qk(t)和αk(t)进行整合,得到虚拟坐标系数据对应的现实人体所在坐标系数据。
步骤5:将平滑后的qk(t)和αk(t)组合成人体姿态预测网络所需的训练数据Data中。
步骤5-1:对所记录连续动作四元数qk(t)做时间上的平滑。由于四元数表示一个旋转的定义,使用四元数记录连续动作在数据上可能不连续。一个旋转四元数可以表示物体绕旋转轴旋转一定角度的过程,如图5所示。根据四元数定义旋转的几何意义公式:
Figure BDA0003722573980000091
其中
Figure BDA0003722573980000092
表示一个单位旋转四元数q,
Figure BDA0003722573980000093
表示该旋转所绕的单位向量,θ表示绕该单位向量所旋转的角度。当物体绕着旋转轴旋转360度时即
Figure BDA0003722573980000094
物体的姿态不变但有
Figure BDA0003722573980000095
这导致一个连续的动作记录得到的四元数可能出现突变。根据四元数点积的几何意义,可以通过将两个单位四元数进行点积,其结果越接近1表示这两个四元数所表示的旋转越接近,通过将前后帧的四元数数据进行点积来确定是否要对得到的四元数数据进行校正:
value=qk(t)·qk(t-1)
Figure BDA0003722573980000096
其中qk(t)表示第k个骨骼在时间戳t时的原始四元数数据,value表示该骨骼前后帧的点积结果,
Figure BDA0003722573980000097
表示第k个骨骼在时间戳t时经过连续性校正的四元数数据。
步骤5-2:将校正过后的四元数
Figure BDA0003722573980000098
与加速度数据αk(t)进行拼接:
Figure BDA0003722573980000099
其中,Data(t)表示在时间戳t时的数据拼接结果,按照时间戳顺序排列得到的数据集Data即得到的可用于人体姿态预测网络训练的数据集。
下面结合实验进一步说明本发明的益处。
1.实验条件:
本发明运行的硬件平台为AMD Ryzen 7 5800+NVIDIA RTX3060+16G DDR4 RAM,使用的惯性传感器为维特智能的BWT901CL5.0,软件环境为Windows 10+CUDA 11.1+PyTorch1.7+Python 3.7,使用PyCharm开发工具进行算法开发工作。
2.实验内容:
为了验证本发明采集数据集的有效性,基于双向循环神经网络稀疏骨骼预测算法,对比真实动作数据集和本发明采集数据集的训练和测试效果。在双向循环神经网络稀疏骨骼预测算法中,将人体动作中的头、身体、左右小臂、左右小腿作为关键节点,使用关键节点的旋转四元数、加速度序列作为输入对左右大臂、左右大腿等非关键节点的旋转四元数进行预测。
本实验将本发明采集的虚拟动作数据集和真实动作数据集作为预测网络的训练集,并将本发明采集的虚拟动作数据集、真实动作数据集、不符合人体解剖约束动作数据集作为测试集进行对照。其中真实动作数据集由惯性传感器绑定真实人体肢体进行采集得到,不符合人体解剖学约束动作数据集由惯性传感器随机运动采集得到。采用网络预测结果与非关键节点的旋转四元数的均方误差作为数据集评估指标。
表1:本发明采集数据集与真实动作数据集网络预测均方误差对比
Figure BDA0003722573980000101
由表1可知:
(1)使用真实动作数据集作为预测网络的训练集时,分别用本发明采集的虚拟动作数据集和真实动作数据集作为测试集完成动作预测,其预测结果的均方误差接近,而使用不符合人体解剖约束的真实动作数据集作为测试集,网络预测结果均方误差较大。证明了使用真实动作数据集训练得到的网络可以预测本发明采集的虚拟动作数据集中的动作,且预测效果和使用真实动作数据集进行测试效果接近。
(2)使用本发明采集的虚拟动作数据集作为预测网络的训练集时,真实动作数据集和本发明采集的虚拟动作数据集作为测试集完成动作预测,其预测结果均方误差接近,而使用不符合人体解剖约束的真实动作数据集作为测试集,其预测结果均方误差较大。证明了使用本发明采集的虚拟动作数据集可以作为训练集对真实动作进行预测,验证了本发明采集数据的有效性。
(3)对比本发明采集虚拟动作数据集和真实动作数据集作为预测网络的训练集,使用相同的真实动作数据集作为测试集时,使用本发明采集的数据集作为训练集的网络预测均方误差比使用真实动作数据集时降低了27.3%,使用相同虚拟动作数据作为测试集时,使用本发明采集的数据集作为训练集的网络预测均方误差比使用真实动作数据集时降低了52.6%。以上结果表明,本发明采集的数据集对比真实动作数据集包含有效动作更多,可以提升预测网络对动作适应性和预测精度。
综上所述,本申请实施例提供了一种基于虚拟人物模型的人体运动姿态数据集生成方法。该数据集生成方法使用虚拟场景下的人物模型代替真实人体作为数据源,首先使用符合人体解剖学的骨骼动画驱动人物模型,并根据三维场景使用反向运动学算法修正人物模型动作,然后在人物模型需要采集数据的骨骼上设置虚拟IMU,通过虚拟IMU对人物模型的动作序列数据进行记录,并通过标准姿态对齐的方式将动作序列中虚拟坐标系下的数据转换到现实人体所在坐标系下,最后将现实人体所在坐标系下的数据进行时间平滑和数据整合,得到人体运动姿态数据集。使用该方法生成数据集作为训练集的骨骼姿态预测网络能够学习更为广泛的人体动作特征,对复杂动作有更好的预测效果,具有更高的预测精度和适用性。

Claims (5)

1.一种基于虚拟人物模型的人体运动姿态数据集生成方法,包括以下步骤:
步骤1、从播放的骨骼动画中获取符合人体解剖学的人物模型;
步骤2、根据三维场景使用反向运动学算法修正虚拟人物模型动作;
步骤3、设置虚拟惯性测量单元,记录虚拟人物模型动作序列;
步骤4、将虚拟人物模型动作序列中虚拟坐标系数据转换为现实人体所在坐标系数据;
步骤5、对现实人体所在坐标系数据进行时间平滑和数据整合得到人体运动姿态数据集。
2.根据权利要求1所述方法,其特征在于,步骤2具体包括:
首先,将虚拟人物模型的四肢骨骼动作建模为存在旋转约束的骨骼链和关节集合;
然后,将骨骼动画作为虚拟人物模型的预动作,计算当前骨骼链与虚拟场景的重叠点,如存在重叠点则将重叠点中距离根关节最近的点作为目标点;
之后,以目标点为目标并以末端关节为末端效应器执行以下步骤:
(1)设置骨骼链中末端骨骼为当前旋转骨骼;
(2)设置关节集合中距当前旋转骨骼最近的根关节为当前关节;
(3)计算目标点经当前关节到末端效应器的旋转角度Eularbone
(4)对当前旋转骨骼进行修正:判断旋转角度Eularbone是否满足当前旋转骨骼的骨骼旋转限制,如是,则对当前旋转骨骼应用旋转角度Eularbone进行修正,如否,对当前旋转骨骼应用在骨骼旋转限制内最接近旋转角度Eularbone的最大角度进行修正;
(5)判断当前旋转骨骼是否为根骨骼,如否,则将当前旋转骨骼设置为其父骨骼并返回步骤(2),如是,则判断末端效应器与目标点的欧氏距离是否满足误差限制,如不满足误差限制则将当前旋转骨骼设置为末端骨骼并返回步骤(2),如满足误差限制则完成对四肢骨骼动作的修正,将修正后的四肢骨骼动作与预动作按骨骼分层进行混合得到修正后的虚拟人物模型动作。
3.根据权利要求1所述方法,其特征在于,步骤3具体包括:
首先,将虚拟人物模型的头部、躯干、左大臂、右大臂、左小臂、右小臂、左大腿、右大腿、左小腿和右小腿设置数据记录点,作为虚拟惯性测量单元附着点;
然后,在虚拟人物模型运动过程中以时间间隔T记录采样时刻的虚拟人物模型动作数据形成虚拟人物模型动作序列,每一个虚拟人物模型动作数据由虚拟坐标系加速度和虚拟坐标系旋转四元数进行数据拼接得到。
4.根据权利要求3所述方法,其特征在于,步骤4具体包括:
4-1)将旋转四元数从虚拟坐标系转换到现实人体所在的坐标系:
首先,建立虚拟坐标系在现实人体所在坐标系中的投影。选择现实世界标准人体的正前方为Y轴正方向、头顶方向为Z轴正方向、左手指向方向为X轴正方向为投影坐标系,该坐标系的旋转、坐标和虚拟坐标系中旋转、坐标相同。然后,计算投影坐标系在现实人体所在坐标系中的旋转四元数qtrans。对于一个虚拟坐标系下的四元数
Figure FDA0003722573970000021
将该旋转四元数分解为旋转轴和旋转角的形式:
θvirtual=2arccos(wvirtual)
Figure FDA0003722573970000022
其中,wvirtual表示四元数
Figure FDA0003722573970000023
的w轴分量,xvirtual表示四元数
Figure FDA0003722573970000024
的x轴分量,yvirtual表示四元数
Figure FDA0003722573970000025
的y轴分量,zvirtual表示四元数
Figure FDA0003722573970000026
的z轴分量,(xvirtual,yvirtual,zvirtual)表示四元数
Figure FDA0003722573970000027
在虚拟坐标系中的旋转轴,θvirtual表示四元数
Figure FDA0003722573970000028
绕该旋转轴的旋转角,如图5所示。
将虚拟坐标系中的旋转轴(xvirtual,yvirtual,zvirtual)转换为投影坐标系中的旋转轴(xProjection,yProjection,zProjection),然后通过现实人体所在坐标系到投影坐标系的旋转四元数qtrans将(xProjection,yProjection,zProjection)变换为现实人体所在坐标系中的旋转轴:
Figure FDA0003722573970000031
Figure FDA0003722573970000032
Figure FDA0003722573970000033
其中,qaxis为(xProjection,yProjection,zProjection)扩展四元数转换到现实坐标的结果。waxis、xaxis、yaxis、zaxis分别为qaxis在w、x、y、z轴的分量,(xreal_axis,yreal_axis,zreal_axis)为虚拟坐标系旋转轴在现实人体所在的坐标系中的观测结果。在虚拟世界到现实世界的映射过程中,虚拟世界四元数
Figure FDA0003722573970000034
绕旋转轴的旋转角不变,通过组合现实人体所在坐标系下的旋转轴和旋转角得到虚拟世界四元数
Figure FDA0003722573970000035
在现实世界中的映射:
θreal=θvirtual
Figure FDA0003722573970000036
其中,θreal表示映射到现实世界中的四元数绕(xreal_axis,yreal_axis,zreal_axis)的旋转角,qk(t)表示虚拟坐标下四元数
Figure FDA0003722573970000037
在现实人体所在的坐标系中的映射。
4-2)虚拟坐标系加速度转换到现实人体所在的坐标系:
首先,建立虚拟坐标系在真实坐标系中的投影。为保证加速度数据和旋转数据的坐标系一致性,选择真实世界标准人体的正前方为Y轴正方向、头顶方向为Z轴正方向、左手指向方向为X轴正方向组成投影坐标系。然后,计算投影坐标系在现实人体所在坐标系中的旋转四元数qtrans
虚拟坐标系中的向量坐标直接映射到投影坐标系,通过将该向量在投影坐标系中的坐标转换到真实坐标系中的坐标,实现从虚拟坐标系中向量到真实坐标系中向量的转换。因此,对于一个虚拟加速度数据有:
Figure FDA0003722573970000041
Figure FDA0003722573970000042
Figure FDA0003722573970000043
其中,
Figure FDA0003722573970000044
表示虚拟坐标加速度在投影坐标系下的映射,
Figure FDA0003722573970000045
表示投影系加速度
Figure FDA0003722573970000046
的扩展四元数,αk(t)表示虚拟坐标系加速度相对应的现实人体所在坐标系的加速度。
最后将映射到现实人体所在坐标系的旋转四元数qk(t)和αk(t)进行整合,得到虚拟坐标系数据对应的现实世界坐标系数据。
5.根据权利要求4所述方法,其特征在于,步骤5中对进行时间平滑后的现实人体所在坐标系数据进行数据整合时还对真实人体动作的旋转四元数进行连续性校正:
将当前时刻的真实人体动作的旋转四元数与上一时刻的真实人体动作的旋转四元数进行点积得到点积结果,当点积结果大于-0.5则将当前时刻的真实人体动作的旋转四元数作为校正后的旋转四元数,当点积结果小于等于-0.5则将时刻的真实人体动作的旋转四元数的负值作为校正后的旋转四元数。
CN202210767092.0A 2022-06-30 2022-06-30 一种基于虚拟人物模型的人体运动姿态数据集生成方法 Pending CN115018962A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210767092.0A CN115018962A (zh) 2022-06-30 2022-06-30 一种基于虚拟人物模型的人体运动姿态数据集生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210767092.0A CN115018962A (zh) 2022-06-30 2022-06-30 一种基于虚拟人物模型的人体运动姿态数据集生成方法

Publications (1)

Publication Number Publication Date
CN115018962A true CN115018962A (zh) 2022-09-06

Family

ID=83079108

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210767092.0A Pending CN115018962A (zh) 2022-06-30 2022-06-30 一种基于虚拟人物模型的人体运动姿态数据集生成方法

Country Status (1)

Country Link
CN (1) CN115018962A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117173382A (zh) * 2023-10-27 2023-12-05 南京维赛客网络科技有限公司 Vr交互中的虚拟数字人体态矫正方法、系统及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117173382A (zh) * 2023-10-27 2023-12-05 南京维赛客网络科技有限公司 Vr交互中的虚拟数字人体态矫正方法、系统及存储介质
CN117173382B (zh) * 2023-10-27 2024-01-26 南京维赛客网络科技有限公司 Vr交互中的虚拟数字人体态矫正方法、系统及存储介质

Similar Documents

Publication Publication Date Title
JP7407919B2 (ja) 動画処理方法、動画処理装置、コンピュータプログラム及び電子機器
CN111402290B (zh) 一种基于骨骼关键点的动作还原方法以及装置
CN110599573B (zh) 一种基于单目相机的人脸实时交互动画的实现方法
Riley et al. Enabling real-time full-body imitation: a natural way of transferring human movement to humanoids
CN108284436B (zh) 具有模仿学习机制的远程机械双臂系统及方法
JPH10149445A (ja) 身体動作解析可視化装置
CN101579238A (zh) 人体运动捕获三维再现系统及其方法
US11845006B2 (en) Skeleton model updating apparatus, skeleton model updating method, and program
CN105243375A (zh) 一种动作特征提取方法及装置
CN115018963B (zh) 一种基于物理仿真的人型智能体姿态生成方法
CN115018962A (zh) 一种基于虚拟人物模型的人体运动姿态数据集生成方法
CN110264551B (zh) 一种运动重定向方法及系统
Thobbi et al. Imitation learning of arm gestures in presence of missing data for humanoid robots
CN111310641A (zh) 一种基于球面非线性插值的运动合成方法
CN116485953A (zh) 数据处理方法、装置、设备和可读存储介质
CN113723163B (zh) 利用离散姿态学习物理约束的手部运动自监督重建方法
WO2022123800A1 (ja) 情報処理装置、情報処理方法およびプログラム
Qianwen Application of motion capture technology based on wearable motion sensor devices in dance body motion recognition
CN111507920B (zh) 基于Kinect的骨骼运动数据增强方法及系统
CN112033432A (zh) 动作捕捉方法、系统和存储介质
CN112634415B (zh) 一种基于人体骨骼模型的人员动作实时仿真方法
CN114248266B (zh) 双臂机器人的拟人化动作轨迹生成方法及装置、电子设备
Kun et al. Shoulder joint rehabilitation training system based on virtual reality technology
Huang et al. Interactive demonstration of pointing gestures for virtual trainers
CN114494341B (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