[go: up one dir, main page]

CN111158482B - 一种人体动作姿态捕捉方法及系统 - Google Patents

一种人体动作姿态捕捉方法及系统 Download PDF

Info

Publication number
CN111158482B
CN111158482B CN201911394224.4A CN201911394224A CN111158482B CN 111158482 B CN111158482 B CN 111158482B CN 201911394224 A CN201911394224 A CN 201911394224A CN 111158482 B CN111158482 B CN 111158482B
Authority
CN
China
Prior art keywords
node
joint
data acquisition
determining
spatial
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
CN201911394224.4A
Other languages
English (en)
Other versions
CN111158482A (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.)
Huazhong University of Science and Technology
Ezhou Industrial Technology Research Institute of Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
Ezhou Industrial Technology Research Institute of Huazhong University of Science and Technology
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 Huazhong University of Science and Technology, Ezhou Industrial Technology Research Institute of Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN201911394224.4A priority Critical patent/CN111158482B/zh
Publication of CN111158482A publication Critical patent/CN111158482A/zh
Application granted granted Critical
Publication of CN111158482B publication Critical patent/CN111158482B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C9/00Measuring inclination, e.g. by clinometers, by levels

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Human Computer Interaction (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)

Abstract

本发明提供一种人体动作姿态的捕捉方法及系统,方法包括:基于每个数据采集节点的原始数据,确定出每个数据采集节点的空间朝向及空间位置;确定关节节点的空间位置及空间朝向;校准各数据采集节点的空间朝向及各关节节点的空间朝向;将各关节节点的空间位置及空间朝向、数据采集节点的空间位置及空间朝向与人体模型进行对应标定;利用人体模型捕捉人体的动作姿态;如此,先解算出人体第一关节节点的姿态,再由第一关节节点的姿态解算出第二关节节点的姿态,这样只需设置6个数据采集点就可以实现对人体动作姿态的捕捉,有效降低了传感器的使用数量,从而降低了人体动作姿态捕捉成本。

Description

一种人体动作姿态捕捉方法及系统
技术领域
本发明涉及动作捕捉技术领域,尤其涉及一种人体动作姿态捕捉方法及系统。
背景技术
动作捕捉用于记录物体移动的过程并将其模拟到数字模型中,近年来,随着计算机数据采集和传感器技术的发展,动作捕捉在游戏、娱乐、体育、军事、运动分析、舞蹈采集及虚拟现实技术中得到广泛应用。
而惯性式动作捕捉通过佩戴多个惯性运动传感器,实现人体三维姿态重现。
现有技术中在捕捉人体姿态时需要用到的传感器数量较多,导致捕捉成本较高。
发明内容
针对现有技术存在的问题,本发明实施例提供了一种人体动作姿态捕捉方法及系统,用于解决现有技术中在捕捉人体动作姿态时,需要用到的传感器数量较多,导致捕捉成本较高的技术问题。
本发明的技术方案是这样实现的:
本申请提供一种人体动作姿态捕捉方法,所述方法包括:
获取各数据采集节点的原始数据,基于每个数据采集节点的原始数据,根据互补滤波算法确定出每个所述数据采集节点的空间朝向及空间位置,所述数据采集节点包括:头部节点,躯干节点、第一前臂节点、第二前臂节点、第一小腿节点及第二小腿节点;所述原始数据包括:加速度数据、角速度数据及磁场方向数据;
确定第一关节节点的弯曲角度,根据所述第一关节节点的弯曲角度确定所述第一关节节点的空间位置及空间朝向,所述第一关节节点包括:肘关节及膝关节;
根据所述数据采集节点的空间位置确定所述第二关节节点的空间位置,所述第二关节节点包括:颈部、肩关节及髋关节;
根据所述第一关节节点的空间位置及所述第二关节节点的空间位置确定所述第二关节节点的空间朝向;
获取各所述数据采集节点的姿态偏差,利用所述姿态偏差对应校准各所述数据采集节点的空间朝向及各关节节点的空间朝向;
将所述各关节节点的空间位置、各所述数据采集节点的空间位置、校准后的各关节节点的空间朝向以及校准后的各所述数据采集节点的空间朝向与预先建立的人体模型进行对应标定;
利用标定后的所述人体模型捕捉人体的动作姿态。
可选地,所述基于所述每个数据采集节点的原始数据,根据互补滤波算法计算出所述每个数据采集节点的空间朝向,包括:
根据公式q=q(t)+Tω(t)q(t)确定所述每个数据采集节点的空间朝向q;其中,所述q(t)为预设的空间朝向初始值,所述T为采样周期,所述ω(t)为角速度。
可选地,所述基于所述每个数据采集节点的原始数据,根据互补滤波算法确定出所述每个数据采集节点的空间位置,包括:
根据公式
Figure GDA0004233060320000021
确定所述数据采集节点的速度;
根据公式
Figure GDA0004233060320000022
确定所述数据采集节点的空间位置;其中,所述v0为所述数据采集节点的初始速度,所述a(τ)为所述数据采集节点的加速度,所述p0为所述数据采集节点的初始空间位置,所述v(τ)为所述数据采集节点的速度,所述pt为所述数据采集节点的空间位置,所述τ为时间参数,t0<τ<t。
可选地,所述确定所述第一关节节点的弯曲角度,包括:
基于反向运动学(IK,Inverse Kinematics)算法确定所述第一关节节点的辅助节点以及与所述第一关节节点对应的目标数据采集节点;
获取所述第一关节节点与所述辅助节点之间的第一距离、所述第一关节节点与所述目标数据采集节点之间的第二距离以及所述辅助节点与所述目标数据采集节点之间的第三距离;
利用公式
Figure GDA0004233060320000031
确定所述第一关节节点的弯曲角度θ;其中,所述a为所述第一距离,所述b为所述第二距离,所述c为所述第三距离。
可选地,当所述第一关节节点为肘关节时,所述辅助节点根据根节点及第一相对位置确定,所述第一相对位置为所述根节点与肩关节之间的相对位置;
当所述第一关节节点为膝关节时,所述辅助节点根据所述根节点及第二相对位置确定,所述第二相对位置为所述根节点与髋关节之间的相对位置;其中,所述根节点为躯干节点。
可选地,所述根据所述第一关节节点的弯曲角度确定所述第一关节节点空间位置及空间朝向,包括:
确定所述第一关节节点所在的弯曲面,在所述弯曲面中基于所述第一关节节点与辅助节点之间的第一距离、所述第一关节节点与目标数据采集节点之间的第二距离及所述第一关节节点的弯曲角度确定所述第一关节节点的空间位置;
根据所述第一关节节点的位置及所述辅助节点的位置确定所述第一关节节点的空间朝向。
可选地,所述利用所述姿态偏差对应校准各所述数据采集节点的空间朝向,包括:
根据公式q_mod=q_bias1*q对应校准每个数据采集节点的空间朝向;其中,
所述q_mod为校准后各所述数据采集节点的空间朝向,所述q为校准前各所述数据采集节点的空间朝向,所述q_bias为各所述数据采集节点对应的姿态偏差。
本申请还提供一种人体动作姿态捕捉系统,所述系统包括:
多个数据采集单元,用于采集各数据采集节点的原始数据;所述原始数据包括:加速度数据、角速度数据及磁场方向数据;
终端,用于获取所述原始数据,基于所述原始数据,根据互补滤波算法确定出每个所述数据采集节点的空间朝向及空间位置,所述数据采集节点包括:头部节点,躯干节点、第一前臂节点、第二前臂节点、第一小腿节点及第二小腿节点;
确定第一关节节点的弯曲角度,根据所述第一关节节点的弯曲角度确定所述第一关节节点的空间位置及空间朝向,所述第一关节节点包括:肘关节及膝关节;
根据所述数据采集节点的空间位置确定所述第二关节节点的空间位置,所述第二关节节点包括:颈部、肩关节及髋关节;
根据所述第一关节节点的空间位置及所述第二关节节点的空间位置确定所述第二关节节点的空间朝向;
获取各所述数据采集节点的姿态偏差,利用所述姿态偏差对应校准各所述数据采集节点的空间朝向及各关节节点的空间朝向;
将所述各关节节点的空间位置、各所述数据采集节点的空间位置、校准后的各关节节点的空间朝向以及校准后的各所述数据采集节点的空间朝向与预先建立的人体模型进行对应标定;
用于利用标定后的所述人体模型捕捉人体的动作姿态。
可选地,所述第一确定单元具体用于:
根据公式q=q(t)+Tω(t)q(t)确定所述每个数据采集节点的空间朝向q;
根据公式
Figure GDA0004233060320000041
确定所述数据采集节点的速度;
根据公式
Figure GDA0004233060320000042
确定所述数据采集节点的空间位置;其中,所述q(t)为预设的空间朝向初始值,所述T为采样周期,所述ω(t)为角速度,所述v0为所述数据采集节点的初始速度,所述a(τ)为所述数据采集节点的加速度,所述p0为所述数据采集节点的初始空间位置,所述v(τ)为所述数据采集节点的速度,所述pt为所述数据采集节点的空间位置,所述τ为时间参数,t0<τ<t。
可选地,所述第二确定单元具体用于:
基于反向运动学IK算法确定所述第一关节节点的辅助节点以及与所述第一关节节点对应的目标数据采集点,所述第一关节节点包括:肘关节及膝关节;
获取所述第一关节节点与所述辅助节点之间的第一距离、所述第一关节节点与所述目标数据采集节点之间的第二距离以及所述辅助节点与所述目标数据采集节点之间的第三距离;
利用公式
Figure GDA0004233060320000051
确定所述第一关节节点的弯曲角度θ;其中,所述a为所述第一距离,所述b为所述第二距离,所述c为所述第三距离。
本发明提供了一种人体动作姿态的捕捉方法及系统,方法包括:获取各数据采集节点的原始数据,基于每个数据采集节点的原始数据,根据互补滤波算法确定出每个所述数据采集节点的空间朝向及空间位置,所述数据采集节点包括:头部节点,躯干节点、第一前臂节点、第二前臂节点、第一小腿节点及第二小腿节点;所述原始数据包括:加速度数据、角速度数据及磁场方向数据;确定第一关节节点的弯曲角度,根据所述第一关节节点的弯曲角度确定所述第一关节节点的空间位置及空间朝向,所述第一关节节点包括:肘关节及膝关节;根据所述数据采集节点的空间位置确定所述第二关节节点的空间位置,所述第二关节节点包括:颈部、肩关节及髋关节;根据所述第一关节节点的空间位置及所述第二关节节点的空间位置确定所述第二关节节点的空间朝向;获取各所述数据采集节点的姿态偏差,利用所述姿态偏差对应校准各所述数据采集节点的空间朝向及各关节节点的空间朝向;将所述各关节节点的空间位置、各所述数据采集节点的空间位置、校准后的各关节节点的空间朝向以及校准后的各所述数据采集节点的空间朝向与预先建立的人体模型进行对应标定;利用标定后的所述人体模型捕捉人体的动作姿态;如此,本申请先解算出人体第一关节节点的姿态,再由第一关节节点的姿态解算出第二关节节点的姿态,这样只需设置6个数据采集点就可以实现对人体动作姿态的捕捉,有效降低了传感器的使用数量,从而降低了人体动作姿态捕捉成本。
附图说明
图1为本发明实施例提供的人体动作姿态的捕捉方法流程示意图;
图2为本发明实施例提供的数据采集节点标定示意图;
图3为本发明实施提供的IK算法解算示意图;
图4为本发明实施例提供的人体姿态标定示意图;
图5为本发明实施例提供的人体模型示意图;
图6为本发明实施例提供的人体动作姿态的捕捉系统结构示意图。
具体实施方式
为了用于解决现有技术中在捕捉人体动作姿态时,需要用到的传感器数量较多,导致捕捉成本较高的技术问题。本申请提供了一种人体动作姿态的捕捉方法及系统。
下面通过附图及具体实施例对本发明的技术方案做进一步的详细说明。
实施例一
本实施例提供一种人体动作姿态捕捉方法,其特征在于,所述方法包括:
S110,获取各数据采集节点的原始数据,根据互补滤波算法确定出每个所述数据采集节点的空间朝向及空间位置;
本申请在获取各数据采集节点的原始数据之前,需要确定出数据采集节点,为了降低传感器的使用数量,本申请设置了6个数据采集节点,所述数据采集节点包括:头部节点1,躯干节点2、第一前臂节点3、第二前臂节点4、第一小腿节点5及第二小腿节点6;各数据采集节点如图2的标记所示。
确定出数据采集节点后,将数据采集模块绑在各数据采集节点,每个数据采集模块包括一个六轴IMU和一个三轴磁传感器,每个IMU包括:一个三轴加速度计和一个三轴陀螺仪。各个数据采集模块采集到原始数据后,通过数据总线传输至数据汇总模块,数据汇总模块安装在躯干节点上,数据汇总模块接收到原始数据后,通过无线传输方式将原始数据发送至终端,终端可以包括工控机、计算机等硬件设备。
数据采集模块用于采集数据节点的原始数据,所述原始数据包括:加速度数据、角速度数据及磁场方向数据。
获取到原始数据后,可以基于原始数据,根据互补滤波算法确定各个数据采集节点的空间朝向及空间位置。作为一种可选的实施例,所述基于所述每个数据采集节点的原始数据,根据互补滤波算法计算出所述每个数据采集节点的空间朝向,包括:
根据公式(1)确定出每个数据采集节点的空间朝向q:
q=q(t)+Tω(t)q(t) (1)
在公式(1中,)q(t)为预设的空间朝向初始值,所述T为采样周期,所述ω(t)为角速度。
作为一种可选的实施例,针对每一个数据采集节点,所述基于所述每个数据采集节点的原始数据,根据互补滤波算法确定出所述每个数据采集节点的空间位置,包括:
根据公式(2)确定所述数据采集节点的速度;
Figure GDA0004233060320000071
数据采集节点的速度确定出之后,根据公式(3)确定所述数据采集节点的空间位置:
Figure GDA0004233060320000072
其中,所述v0为所述数据采集节点的初始速度,所述a(τ)为所述数据采集节点的加速度,所述p0为所述数据采集节点的初始空间位置,所述v(τ)为所述数据采集节点的速度,v(τ)和vt从积分的角度来看是同一个参数,所述pt为所述数据采集节点的空间位置,所述τ为时间参数,t0<τ<t。
各个数据采集节点的空间朝向和空间位置确定之后,就可以获得人体模型的根节点和末端节点的空间位置和空间朝向了。这里,根节点为躯干节点,末端节点包括:头部节点、第一前臂节点、第二前臂节点、第一小腿节点及第二小腿节点。
S111,确定第一关节节点的弯曲角度,根据所述第一关节节点的弯曲角度确定所述第一关节节点的空间位置及空间朝向,所述第一关节节点包括:肘关节及膝关节;
本申请先确定第一关节节点的弯曲角度,根据所述第一关节节点的弯曲角度确定所述第一关节节点的空间位置及空间朝向,所述第一关节节点包括:肘关节及膝关节。
作为一种可选的实施例,确定所述第一关节节点的弯曲角度,包括:
所述基于反向运动学IK算法确定所述第一关节节点的辅助节点以及与所述第一关节节点对应的目标数据采集节点;
获取所述第一关节节点与所述辅助节点之间的第一距离、所述第一关节节点与所述目标数据采集节点之间的第二距离以及所述辅助节点与所述目标数据采集节点之间的第三距离;其中,第一关节节点、辅助节点与目标数据采集节点的位置关系如图3所示,在图3中,第一关节节点为p、辅助节点为p0,目标数据采集节点为p1。
确定出第一关节节点、辅助节点与目标数据采集节点的位置关系后,利用公式(4)确定第一关节节节点的弯曲角度θ:
Figure GDA0004233060320000081
在公式(4)中,a为所述第一距离,所述b为所述第二距离,所述c为所述第三距离,第一距离、第二距离和第三距离可参考图3。
这里,第一关节节点不同,对应的辅助节点及目标数据采集节点也不同。当所述第一关节节点为肘关节时,所述辅助节点根据根节点及第一相对位置确定,所述第一相对位置为所述根节点与所述肩关节之间的相对位置;
当所述第一关节节点为膝关节时,所述辅助节点根据所述根节点及第二相对位置确定,所述第二相对位置为所述根节点与所述髋关节之间的相对位置;其中,所述根节点为躯干节点。
举例来说,继续参考图2,当第一关节节点p为膝关节时,辅助节点为髋关节p0(p0和根节点之间的第二相对位置是不变的),目标数据采集节点为第一小腿节点5,那么当膝关节弯曲时,第一关节节点p、辅助节点p0以及目标数据采集节点可以构成一个三角形,此时,膝关节的弯曲角度可以由公式(4)确定出。
当第一关节节点的弯曲角度确定出之后,作为一种可选的实施例,所述根据所述第一关节节点的弯曲角度确定所述第一关节节点空间位置及空间朝向,包括:
确定所述第一关节节点所在的弯曲面,在所述弯曲面中基于所述第一关节节点与辅助节点之间的第一距离、所述第一关节节点与目标数据采集节点之间的第二距离及所述第一关节节点的弯曲角度确定所述第一关节节点的空间位置;
根据所述第一关节节点的位置及所述辅助节点的位置确定所述第一关节节点的空间朝向。
举例来说,以膝关节为例,由于膝关节是在三维空间中的,即使膝关节的弯曲角度确定之后,还是不能准确得知膝关节的准确位置(参考图3,以p为圆心,r为半径形成的圆上有无穷解),因此需要先确定出一个合理的膝关节所在的弯曲面,本申请中将大腿与脚踝朝向一致所在的面确定为膝关节的弯曲面。
在弯曲面上,膝关节与髋关节之间的距离是一定的,膝关节与第一小腿节点5之间的距离也是一定的;由于弯曲角度是已知的;第一小腿节点5的空间位置是已知的;髋关节相对根节点的相对位置是一定的,根节点的空间位置已经确定出,因此髋关节的空间位置也相当于是已知的,因此可以确定出膝关节的空间位置。
而当髋关节的空间位置与膝关节的空间位置确定出之后,髋关节与膝关节两点可以组成一个向量,该向量的方向就是膝关节的空间朝向(从髋关节指向膝关节)。
S112,根据所述数据采集节点的空间位置确定所述第二关节节点的空间位置,所述第二关节节点包括:颈部、肩关节及髋关节;
同样的道理,当数据采集节点的空间位置确定出之后,根节点的空间位置也可以获得,对于同一个人体来说,第二关节节点(颈部、肩关节及髋关节)相对于根节点的距离是不变的,而这个相对位置(相对位置和相对角度)是可以预先获取到的,因此,作为一种可选的实施例,根据所述数据采集节点的空间位置确定所述第二关节节点的空间位置,包括:
获取髋关节与根节点之间的第二相对位置,获取颈部与根节点之间的第三相对位置,获取肩关节与根节点之间的第四相对位置;
根据第二相对位置与所述根节点的空间位置确定所述髋关节的空间位置;根据第三相对位置与所述根节点的空间位置确定所述颈部的空间位置;根据第四相对位置与所述根节点的空间位置确定所述肩关节的空间位置。
S113,根据所述第一关节节点的空间位置及所述第二关节节点的空间位置确定所述第二关节节点的空间朝向;
同样的道理,当所述第一关节节点的空间位置及所述第二关节节点的空间位置确定出之后,可以根据所述第一关节节点的空间位置及所述第二关节节点的空间位置确定所述第二关节节点的空间朝向。
举例来说,当第二关节节点为任意一个肩关节时,肩关节的空间位置确定之后,由于前臂节点的空间位置也是已知的,两点可组成一个向量,那么肩关节的空间朝向为该向量的方向,(从肩关节指向前臂节点)。
S114,获取各所述数据采集节点的姿态偏差,利用所述姿态偏差对应校准各所述数据采集节点的空间朝向及各关节节点的空间朝向;
各关节节点的姿态信息(空间位置和空间朝向)及各数据采集节点的姿态信息确定出之后,需要将上述信息转换为人体模型中姿态动作信息,因此需要将上述姿态信息与预先建立的人体模型进行对应标定。
而在实际应用中,由于传感器与肢体的坐标系通常具有一个姿态偏差,为了提高捕捉精度,在标定之前,获取各所述数据采集节点及各关节节点的姿态偏差,利用所述姿态偏差对应校准各关节节点的空间朝向及所述数据采集节点的空间朝向。
具体地,参考图4,传感器绑定在肢体上,左边的X1轴是关节节点的空间朝向,右边的X轴是数据采集节点的空间朝向,在实际应用中当存在姿态偏差时,X1轴和X轴之间会有误差,不会完全重合,这是就需要对该偏差进行校准,确保X1轴和X轴重合。
针对每一个数据采集节点来说,人体保持“T”姿态静止一段时间,可以从传感器中获取对应数据采集节点的四元数q_sensor,那么可以根据公式(5)确定出数据采集节点的姿态偏差q_bias:
q_bias=q_seg*q_sensor-1 (5)
在公式(5)中,q_seg为,人体保持“T”姿态时对应肢体的空间朝向。
姿态偏差确定出之后,根据公式(6)对应校准每个数据采集节点的空间朝向:
q_mod=q_bias*q (6)
在公式(6)中,所述q_mod为校准后各所述数据采集节点的空间朝向,所述q为校准前各所述数据采集节点的空间朝向,所述q_bias为各所述数据采集节点对应的姿态偏差。
当数据采集节点的空间朝向校准后,因传感器是绑定在肢体上的,那么也就相当于关节节点的空间朝向也被校准了。
S115,将所述各关节节点的空间位置、各所述数据采集节点的空间位置、校准后的各关节节点的空间朝向以及校准后的各所述数据采集节点的空间朝向与预先建立的人体模型进行对应标定;
各数据采集节点的空间朝向及关节节点的空间朝向校准后,将所述各关节节点的空间位置、所述数据采集节点的空间位置、校准后的各关节节点的空间朝向以及校准后的所述数据采集节点的空间朝向与预先建立的人体模型进行对应标定。其中,人体模型为刚体三维模型,可如图5所示。
S116,利用标定后的所述人体模型捕捉人体的动作姿态。
标定完毕后,可利用定后的所述人体模型捕捉人体的动作姿态,在相应的软件中重现人体的全身动作姿态。
基于同样的发明构思,本申请还提供一种捕捉人体动作姿态的系统,详见实施例二。
实施例二
本实施例提供一种捕捉人体动作姿态的系统,如图6所示,系统包括:多个数据采集模块、数据汇总模块51及终端52。
本申请的数据采集模块在获取各数据采集节点的原始数据之前,需要确定出数据采集节点,为了降低传感器的使用数量,本申请设置了6个数据采集节点,所述数据采集节点包括:头部节点1,躯干节点2、第一前臂节点3、第二前臂节点4、第一小腿节点5及第二小腿节点6;各数据采集节点如图2中画圈的标记所示。
确定出数据采集节点后,将数据采集模块绑在各数据采集节点,每个数据采集模块包括一个六轴IMU和一个三轴磁传感器,每个IMU包括:一个三轴加速度计和一个三轴陀螺仪。各个数据采集模块用于采集数据采集节点的原始数据,各个数据采集模块采集到原始数据后,通过数据总线传输至数据汇总模块51,数据汇总模块安装在躯干节点上,数据汇总模块51接收到原始数据后,通过无线传输方式将原始数据发送至终端52,终端可以包括工控机、计算机等硬件设备。其中,所述原始数据包括:加速度数据、角速度数据及磁场方向数据。
因此,本申请中的数据采集模块包括6个,分别为:第一数据采集模块53、第二数据采集模块54、第三数据采集模块55、第四数据采集模块56、第五数据采集模块57及第六数据采集模块58。
当终端52获取到各原始数据后,可以基于原始数据,根据互补滤波算法确定各个数据采集节点的空间朝向及空间位置。作为一种可选的实施例,所述基于所述每个数据采集节点的原始数据,根据互补滤波算法计算出所述每个数据采集节点的空间朝向,包括:
根据公式(1)确定出每个数据采集节点的空间朝向q:
q=q(t)+Tω(t)q(t) (1)
在公式(1中,)q(t)为预设的空间朝向初始值,所述T为采样周期,所述ω(t)为角速度。
作为一种可选的实施例,针对每一个数据采集节点,所述基于所述每个数据采集节点的原始数据,根据互补滤波算法确定出所述每个数据采集节点的空间位置,包括:
根据公式(2)确定所述数据采集节点的速度;
Figure GDA0004233060320000131
数据采集节点的速度确定出之后,根据公式(3)确定所述数据采集节点的空间位置:
Figure GDA0004233060320000132
其中,所述v0为所述数据采集节点的初始速度,所述a(τ)为所述数据采集节点的加速度,所述p0为所述数据采集节点的初始空间位置,所述v(τ)为所述数据采集节点的速度,v(τ)和vt从积分的角度来看是同一个参数,所述pt为所述数据采集节点的空间位置,所述τ为时间参数,t0<τ<t。
各个数据采集节点的空间朝向和空间位置确定之后,就可以获得人体模型的根节点和末端节点的空间位置和空间朝向了。这里,根节点为躯干节点,末端节点包括:头部节点、第一前臂节点、第二前臂节点、第一小腿节点及第二小腿节点。
本申请的终端52先确定第一关节节点的弯曲角度,根据所述第一关节节点的弯曲角度确定所述第一关节节点的空间位置及空间朝向,所述第一关节节点包括:肘关节及膝关节。
作为一种可选的实施例,所述确定所述第一关节节点的弯曲角度,包括:
基于反向运动学IK算法确定所述第一关节节点的辅助节点以及与所述第一关节节点对应的目标数据采集节点;
获取所述第一关节节点与所述辅助节点之间的第一距离、所述第一关节节点与所述目标数据采集节点之间的第二距离以及所述辅助节点与所述目标数据采集节点之间的第三距离;其中,第一关节节点、辅助节点与目标数据采集节点的位置关系如图3所示,在图3中,第一关节节点为p、辅助节点为p0,目标数据采集节点为p1。
确定出第一关节节点、辅助节点与目标数据采集节点的位置关系后,利用公式(4)确定第一关节节节点的弯曲角度θ:
Figure GDA0004233060320000141
在公式(4)中,a为所述第一距离,所述b为所述第二距离,所述c为所述第三距离,第一距离、第二距离和第三距离可参考图3。
这里,第一关节节点不同,对应的辅助节点及目标数据采集节点也不同。当所述第一关节节点为肘关节时,所述辅助节点根据根节点及第一相对位置确定,所述第一相对位置为所述根节点与所述肩关节之间的相对位置;
当所述第一关节节点为膝关节时,所述辅助节点根据所述根节点及第二相对位置确定,所述第二相对位置为所述根节点与所述髋关节之间的相对位置;其中,所述根节点为躯干节点。
举例来说,继续参考图2,当第一关节节点p为膝关节时,辅助节点为髋关节p0(p0和根节点之间的第二相对位置是不变的),目标数据采集节点为第一小腿节点5,那么当膝关节弯曲时,第一关节节点p、辅助节点p0以及目标数据采集节点可以构成一个三角形,此时,膝关节的弯曲角度可以由公式(4)确定出。
当第一关节节点的弯曲角度确定出之后,作为一种可选的实施例,所述根据所述第一关节节点的弯曲角度确定所述第一关节节点空间位置及空间朝向,包括:
确定所述第一关节节点所在的弯曲面,在所述弯曲面中基于所述第一关节节点与辅助节点之间的第一距离、所述第一关节节点与目标数据采集节点之间的第二距离及所述第一关节节点的弯曲角度确定所述第一关节节点的空间位置;
根据所述第一关节节点的位置及所述辅助节点的位置确定所述第一关节节点的空间朝向。
举例来说,以膝关节为例,由于膝关节是在三维空间中的,即使膝关节的弯曲角度确定之后,还是不能准确得知膝关节的准确位置(参考图3,以p为圆心,r为半径形成的圆上有无穷解),因此需要先确定出一个合理的膝关节所在的弯曲面,本申请中将大腿与脚踝朝向一致所在的平面确定为膝关节的弯曲面。
在弯曲面上,膝关节与髋关节之间的距离是一定的,膝关节与第一小腿节点5之间的距离也是一定的;由于弯曲角度是已知的;第一小腿节点5的空间位置是已知的;髋关节相对根节点的相对位置是一定的,根节点的空间位置已经确定出,因此髋关节的空间位置也相当于是已知的,因此可以确定出膝关节的空间位置。
而当髋关节的空间位置与膝关节的空间位置确定出之后,髋关节与膝关节两点可以组成一个向量,该向量的方向就是膝关节的空间朝向(从髋关节指向膝关节)。
第一关节节点的空间位置确定之后,根据所述数据采集节点的空间位置确定所述第二关节节点的空间位置,所述第二关节节点包括:颈部、肩关节及髋关节;
同样的道理,当数据采集节点的空间位置确定出之后,根节点的空间位置也可以获得,对于同一个人体来说,第二关节节点(颈部、肩关节及髋关节)相对于根节点的距离是不变的,而这个相对位置(相对位置和相对角度)是可以预先获取到的,因此,作为一种可选的实施例,根据所述数据采集节点的空间位置确定所述第二关节节点的空间位置,包括:
获取髋关节与根节点之间的第二相对位置,获取颈部与根节点之间的第三相对位置,获取肩关节与根节点之间的第四相对位置;
根据第二相对位置与所述根节点的空间位置确定所述髋关节的空间位置;根据第三相对位置与所述根节点的空间位置确定所述颈部的空间位置;根据第四相对位置与所述根节点的空间位置确定所述肩关节的空间位置。
同样的道理,当所述第一关节节点的空间位置及所述第二关节节点的空间位置确定出之后,可以根据所述第一关节节点的空间位置及所述第二关节节点的空间位置确定所述第二关节节点的空间朝向。
举例来说,当第二关节节点为任意一个肩关节时,肩关节的空间位置确定之后,由于前臂节点的空间位置也是已知的,两点可组成一个向量,那么肩关节的空间朝向为该向量的方向,(从肩关节指向前臂节点)。
各关节节点的姿态信息(空间位置和空间朝向)及数据采集节点的姿态信息确定出之后,终端52需要将上述信息转换为人体模型中姿态动作信息,因此需要将上述姿态信息与预先建立的人体模型进行对应标定。
而在实际应用中,由于传感器与肢体的坐标系通常具有一个姿态偏差,为了提高捕捉精度,在标定之前,获取各所述数据采集节点及各关节节点的姿态偏差,利用所述姿态偏差对应校准各关节节点的空间朝向及所述数据采集节点的空间朝向。
具体地,参考图4,传感器绑定在肢体上,左边的X1轴是关节节点的空间朝向,右边的X轴是数据采集节点的空间朝向,在实际应用中当存在姿态偏差时,X1轴和X轴之间会有误差,不会完全重合,这是就需要对该偏差进行校准,确保X1轴和X轴重合。
针对每一个数据采集节点来说,人体保持“T”姿态静止一段时间,可以从传感器中获取对应数据采集节点的四元数q_sensor,那么可以根据公式(5)确定出数据采集节点的姿态偏差q_bias:
q_bias=q_seg*q_sensor-1 (5)
在公式(5)中,q_seg为,人体保持“T”姿态时对应肢体的空间朝向。
姿态偏差确定出之后,根据公式(6)对应校准每个数据采集节点的空间朝向:
q_mod=q_bias*q (6)
在公式(6)中,所述q_mod为校准后各所述数据采集节点的空间朝向,所述q为校准前各所述数据采集节点的空间朝向,所述q_bias为各所述数据采集节点对应的姿态偏差。
当数据采集节点的空间朝向校准后,因传感器是绑定在肢体上的,那么也就相当于关节节点的空间朝向也被校准了。
各数据采集节点的空间朝向及各关节节点的空间朝向校准后,终端52将所述各关节节点的空间位置、各所述数据采集节点的空间位置、校准后的各关节节点的空间朝向以及校准后的各所述数据采集节点的空间朝向与预先建立的人体模型进行对应标定。其中,人体模型为刚体三维模型,可如图5所示。
标定完毕后,终端52可利用定后的所述人体模型捕捉人体的动作姿态,在相应的软件中重现人体的全身动作姿态。
本发明实施例提供的捕捉人体动作姿态的方法及系统能带来的有益效果至少是:
本发明提供了一种人体动作姿态的捕捉方法及系统,方法包括:获取各数据采集节点的原始数据,基于每个数据采集节点的原始数据,根据互补滤波算法确定出每个所述数据采集节点的空间朝向及空间位置,所述数据采集节点包括:头部节点,躯干节点、第一前臂节点、第二前臂节点、第一小腿节点及第二小腿节点;所述原始数据包括:加速度数据、角速度数据及磁场方向数据;确定第一关节节点的弯曲角度,根据所述第一关节节点的弯曲角度确定所述第一关节节点的空间位置及空间朝向,所述第一关节节点包括:肘关节及膝关节;根据所述数据采集节点的空间位置确定所述第二关节节点的空间位置,所述第二关节节点包括:颈部、肩关节及髋关节;根据所述第一关节节点的空间位置及所述第二关节节点的空间位置确定所述第二关节节点的空间朝向;获取各所述数据采集节点的姿态偏差,利用所述姿态偏差对应校准所述各数据采集节点的空间朝向及各关节节点的空间朝向;将所述各关节节点的空间位置、所述数据采集节点的空间位置、校准后的各关节节点的空间朝向以及校准后的各所述数据采集节点的空间朝向与预先建立的人体模型进行对应标定;利用标定后的所述人体模型捕捉人体的动作姿态;如此,本申请先解算出人体第一关节节点的姿态,再由第一关节节点的姿态解算出第二关节节点的姿态,这样只需设置6个数据采集点就可以实现对人体动作姿态的捕捉,有效降低了传感器的使用数量,从而降低了人体动作姿态捕捉成本;并且IK算法将三维空间的解算转化为关节空间的解算,可以降低姿态动作的解算时间,提高动作捕捉的实时性。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (4)

1.一种人体动作姿态捕捉方法,其特征在于,所述方法包括:
获取各数据采集节点的原始数据,基于每个数据采集节点的原始数据,根据互补滤波算法确定出每个所述数据采集节点的空间朝向及空间位置,所述数据采集节点包括:头部节点,躯干节点、第一前臂节点、第二前臂节点、第一小腿节点及第二小腿节点;所述原始数据包括:加速度数据、角速度数据及磁场方向数据;
确定第一关节节点的弯曲角度,根据所述第一关节节点的弯曲角度确定所述第一关节节点的空间位置及空间朝向,所述第一关节节点包括:肘关节及膝关节;
根据所述数据采集节点的空间位置确定第二关节节点的空间位置,所述第二关节节点包括:颈部、肩关节及髋关节;
根据所述第一关节节点的空间位置及所述第二关节节点的空间位置确定所述第二关节节点的空间朝向;
获取各所述数据采集节点的姿态偏差,利用所述姿态偏差对应校准各所述数据采集节点的空间朝向及各关节节点的空间朝向;
将所述各关节节点的空间位置、各所述数据采集节点的空间位置、校准后的各关节节点的空间朝向以及校准后的各所述数据采集节点的空间朝向与预先建立的人体模型进行对应标定;
利用标定后的所述人体模型捕捉人体的动作姿态;其中,
所述确定所述第一关节节点的弯曲角度,包括:
基于反向运动学IK算法确定所述第一关节节点的辅助节点以及与所述第一关节节点对应的目标数据采集节点;
获取所述第一关节节点与所述辅助节点之间的第一距离、所述第一关节节点与所述目标数据采集节点之间的第二距离以及所述辅助节点与所述目标数据采集节点之间的第三距离;
利用公式
Figure QLYQS_1
确定所述第一关节节点的弯曲角度/>
Figure QLYQS_2
;其中,所述a为所述第一距离,所述b为所述第二距离,所述c为所述第三距离;
当所述第一关节节点为肘关节时,所述辅助节点根据根节点及第一相对位置确定,所述第一相对位置为所述根节点与肩关节之间的相对位置;
当所述第一关节节点为膝关节时,所述辅助节点根据所述根节点及第二相对位置确定,所述第二相对位置为所述根节点与髋关节之间的相对位置;其中,所述根节点为躯干节点;
所述基于所述每个数据采集节点的原始数据,根据互补滤波算法确定出所述每个数据采集节点的空间位置,包括:
根据公式
Figure QLYQS_3
确定所述数据采集节点的速度;
根据公式
Figure QLYQS_4
确定所述数据采集节点的空间位置;其中,所述v0为所述数据采集节点的初始速度,所述/>
Figure QLYQS_5
为所述数据采集节点的加速度,所述p0为所述数据采集节点的初始空间位置,所述/>
Figure QLYQS_6
为所述数据采集节点的速度,所述pt为所述数据采集节点的空间位置,所述/>
Figure QLYQS_7
为时间参数,t0</>
Figure QLYQS_8
<t。
2.如权利要求1所述的方法,其特征在于,所述根据所述第一关节节点的弯曲角度确定所述第一关节节点空间位置及空间朝向,包括:
确定所述第一关节节点所在的弯曲面,在所述弯曲面中基于所述第一关节节点与辅助节点之间的第一距离、所述第一关节节点与目标数据采集节点之间的第二距离及所述第一关节节点的弯曲角度确定所述第一关节节点的空间位置;
根据所述第一关节节点的位置及所述辅助节点的位置确定所述第一关节节点的空间朝向。
3.如权利要求1所述的方法,其特征在于,所述利用所述姿态偏差对应校准各所述数据采集节点的空间朝向,包括:
根据公式
Figure QLYQS_9
对应校准每个数据采集节点的空间朝向;其中,
所述
Figure QLYQS_10
为校准后各所述数据采集节点的空间朝向,所述q为校准前各所述数据采集节点的空间朝向,所述q_bias为各所述数据采集节点对应的姿态偏差。
4.一种人体动作姿态捕捉系统,其特征在于,所述系统包括:
多个数据采集单元,用于采集各数据采集节点的原始数据;所述原始数据包括:加速度数据、角速度数据及磁场方向数据;
终端,用于获取所述原始数据,基于所述原始数据,根据互补滤波算法确定出每个所述数据采集节点的空间朝向及空间位置,所述数据采集节点包括:头部节点,躯干节点、第一前臂节点、第二前臂节点、第一小腿节点及第二小腿节点;
确定第一关节节点的弯曲角度,根据所述第一关节节点的弯曲角度确定所述第一关节节点的空间位置及空间朝向,所述第一关节节点包括:肘关节及膝关节;
根据所述数据采集节点的空间位置确定第二关节节点的空间位置,所述第二关节节点包括:颈部、肩关节及髋关节;
根据所述第一关节节点的空间位置及所述第二关节节点的空间位置确定所述第二关节节点的空间朝向;
获取各所述数据采集节点的姿态偏差,利用所述姿态偏差对应校准各所述数据采集节点的空间朝向及各关节节点的空间朝向;
将所述各关节节点的空间位置、各所述数据采集节点的空间位置、校准后的各关节节点的空间朝向以及校准后的各所述数据采集节点的空间朝向与预先建立的人体模型进行对应标定;
用于利用标定后的所述人体模型捕捉人体的动作姿态;其中,
所述终端具体用于:
基于反向运动学IK算法确定所述第一关节节点的辅助节点以及与所述第一关节节点对应的目标数据采集点,所述第一关节节点包括:肘关节及膝关节;
获取所述第一关节节点与所述辅助节点之间的第一距离、所述第一关节节点与所述目标数据采集节点之间的第二距离以及所述辅助节点与所述目标数据采集节点之间的第三距离;
利用公式
Figure QLYQS_11
确定所述第一关节节点的弯曲角度/>
Figure QLYQS_12
;其中,所述a为所述第一距离,所述b为所述第二距离,所述c为所述第三距离;
当所述第一关节节点为肘关节时,所述辅助节点根据根节点及第一相对位置确定,所述第一相对位置为所述根节点与肩关节之间的相对位置;
当所述第一关节节点为膝关节时,所述辅助节点根据所述根节点及第二相对位置确定,所述第二相对位置为所述根节点与髋关节之间的相对位置;其中,所述根节点为躯干节点;
所述基于所述每个数据采集节点的原始数据,根据互补滤波算法确定出所述每个数据采集节点的空间位置,包括:
根据公式
Figure QLYQS_13
确定所述数据采集节点的速度;
根据公式
Figure QLYQS_14
确定所述数据采集节点的空间位置;其中,所述v0为所述数据采集节点的初始速度,所述/>
Figure QLYQS_15
为所述数据采集节点的加速度,所述p0为所述数据采集节点的初始空间位置,所述/>
Figure QLYQS_16
为所述数据采集节点的速度,所述pt为所述数据采集节点的空间位置,所述/>
Figure QLYQS_17
为时间参数,t0</>
Figure QLYQS_18
<t。
CN201911394224.4A 2019-12-30 2019-12-30 一种人体动作姿态捕捉方法及系统 Active CN111158482B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911394224.4A CN111158482B (zh) 2019-12-30 2019-12-30 一种人体动作姿态捕捉方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911394224.4A CN111158482B (zh) 2019-12-30 2019-12-30 一种人体动作姿态捕捉方法及系统

Publications (2)

Publication Number Publication Date
CN111158482A CN111158482A (zh) 2020-05-15
CN111158482B true CN111158482B (zh) 2023-06-27

Family

ID=70559175

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911394224.4A Active CN111158482B (zh) 2019-12-30 2019-12-30 一种人体动作姿态捕捉方法及系统

Country Status (1)

Country Link
CN (1) CN111158482B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113305830B (zh) * 2021-04-28 2022-08-16 吉林大学 一种基于人体姿态控制的仿人机器人动作系统及控制方法
CN113505637A (zh) * 2021-05-27 2021-10-15 成都威爱新经济技术研究院有限公司 一种用于直播流的实时虚拟主播动作捕捉方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103279186A (zh) * 2013-05-07 2013-09-04 兰州交通大学 融合光学定位与惯性传感的多目标运动捕捉系统
CN104856684A (zh) * 2015-04-10 2015-08-26 深圳市虚拟现实科技有限公司 运动目标采集方法和系统
CN109000633A (zh) * 2017-06-06 2018-12-14 大连理工大学 基于异构数据融合的人体姿态动作捕捉算法设计
WO2019028650A1 (zh) * 2017-08-08 2019-02-14 方超 手势采集系统
FR3074676A1 (fr) * 2017-12-07 2019-06-14 Cr Tools Ensemble de vetements et dispositifs de mesures de parametres de posture corporelle d'un individu

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150055958A (ko) * 2013-11-14 2015-05-22 삼성전자주식회사 착용형 로봇 및 그 제어 방법
JP2016206081A (ja) * 2015-04-24 2016-12-08 株式会社東芝 動作推測装置および動作推測方法
US10222450B2 (en) * 2015-10-12 2019-03-05 Xsens Holding B.V. Integration of inertial tracking and position aiding for motion capture
US11039762B2 (en) * 2015-11-13 2021-06-22 Innomotion Incorporation (Shanghai) Joint movement analysis system and method; knee-joint dynamic evaluation method and system
US10888735B2 (en) * 2016-10-07 2021-01-12 William W. Clark Calibration of initial orientation and position of sports equipment and body segments for inertial sensors
CN108621161B (zh) * 2018-05-08 2021-03-02 中国人民解放军国防科技大学 基于多传感器信息融合的足式机器人本体状态估计方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103279186A (zh) * 2013-05-07 2013-09-04 兰州交通大学 融合光学定位与惯性传感的多目标运动捕捉系统
CN104856684A (zh) * 2015-04-10 2015-08-26 深圳市虚拟现实科技有限公司 运动目标采集方法和系统
CN109000633A (zh) * 2017-06-06 2018-12-14 大连理工大学 基于异构数据融合的人体姿态动作捕捉算法设计
WO2019028650A1 (zh) * 2017-08-08 2019-02-14 方超 手势采集系统
FR3074676A1 (fr) * 2017-12-07 2019-06-14 Cr Tools Ensemble de vetements et dispositifs de mesures de parametres de posture corporelle d'un individu

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《多光子成象术中深层图象损耗恢复的研究》;刘谦;《光子学报》;全文 *

Also Published As

Publication number Publication date
CN111158482A (zh) 2020-05-15

Similar Documents

Publication Publication Date Title
CN108762495B (zh) 基于手臂动作捕捉的虚拟现实驱动方法及虚拟现实系统
CN107330967B (zh) 基于惯性传感技术的骑师运动姿态捕捉及三维重建系统
CN107314778B (zh) 一种相对姿态的标定方法、装置及系统
WO2016183812A1 (zh) 一种混合运动捕捉系统及方法
CN103136912A (zh) 运动姿态捕捉系统
JP2010534316A (ja) 対象物の動きを捕捉するシステム及び方法
CN201431466Y (zh) 人体运动捕获三维再现系统
KR101080078B1 (ko) 통합센서 기반의 모션 캡쳐 시스템
CN106873787A (zh) 一种用于虚拟手术仿真教学的手势交互系统及方法
CN110609621B (zh) 姿态标定方法及基于微传感器的人体运动捕获系统
JP6288858B2 (ja) 光学式モーションキャプチャにおける光学式マーカーの位置の推定方法及び装置
CN109000633A (zh) 基于异构数据融合的人体姿态动作捕捉算法设计
CN111158482B (zh) 一种人体动作姿态捕捉方法及系统
CN108279773B (zh) 一种基于marg传感器和磁场定位技术的数据手套
CN106227368B (zh) 一种人体关节角度解算方法及装置
KR20120059824A (ko) 복합 센서를 이용한 실시간 모션 정보 획득 방법 및 시스템
CN108621164A (zh) 基于深度相机的太极推手机器人
CN115290076B (zh) 一种基于多传感器融合的人体关节角数据处理方法
US20180216959A1 (en) A Combined Motion Capture System
CN116021514B (zh) 机器人遥操作控制方法、装置、机器人以及电子设备
CN109453505B (zh) 一种基于可穿戴设备的多关节追踪方法
CN109343713B (zh) 一种基于惯性测量单元的人体动作映射方法
CN112945231B (zh) 一种imu与刚体姿态对齐的方法、装置、设备以及可读存储介质
CN115919250A (zh) 一种人体动态关节角测量系统
KR102172362B1 (ko) 인체 무게 중심의 이동을 이용한 모션 캡쳐 장치 및 그 방법

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