一种基于可穿戴式惯性传感器的人体上肢姿态重建系统的制作方法

文档序号:18883047发布日期:2019-10-15 20:10阅读:254来源:国知局
一种基于可穿戴式惯性传感器的人体上肢姿态重建系统的制作方法

本发明应用于人体运动捕捉技术领域,涉及一种适用于人体动作捕捉与重建的基于可穿戴式惯性传感器的人体上肢姿态重建系统。



背景技术:

人体动作捕捉是一种能通过虚拟的三维计算机模型准确、迅速的把现实生活中人体运动状态实时还原出来的技术方法。近年来,随着人机交互和无线局域网等关键技术的飞速发展,人体动作捕捉被广泛应用于影视制作、机器人控制、体育竞技、康复医学、体感游戏等领域,获得十分广泛的关注,成为电子信息技术研究的热点之一。

目前,常用的人体动作捕捉系统有基于外骨骼与基于视觉的方法。前者具有较好的空间施展性,但因机械装置比较复杂,且很多装置由刚性结构组成,造成体积与质量较大,不易穿戴与携带。基于视觉的方法已经得到广泛应用,可以体现出人体运动特性,方便采集人体运动姿态,同时也能获得人体全身运动的姿态。但是基于视觉的运动捕捉系统需要多个摄像机以防止运动跟踪所需的标记物被遮挡,故其使用空间受到较大限制且价格高昂。其次,基于视觉的运动捕捉系统可移植性比较差,摄像头一般需要固定在某个位置,不方便移动。此外,标光点在被摄像头识别时,容易受到其他物体干扰,产生不同程度的噪声,从而导致错误的决策。



技术实现要素:

为了解决现有技术所存在的成本较高、可移植性较差的不足,本发明提供一种基于可穿戴式惯性传感器的人体上肢姿态重建系统,以此来实现对人体动作的采集和重建。

本发明的目的是通过以下技术方案实现的:

一种基于可穿戴式惯性传感器人体上肢姿态重建系统,包括下位机硬件平台和人体3d建模上位机,所述下位机硬件平台包括九轴惯性传感器和单片机,所述人体3d建模上位机包括数据通信部分、人体上肢坐标系构建部分及人体3d棍棒模型绘制部分;

所述九轴惯性传感器集成有三轴加速度计、三轴陀螺仪与三轴磁力计,并能通过其内置功能计算得到融合后的四元数信息;所述单片机用于和九轴惯性传感器通信并读取其四元数数据,将数据整合后以数据包的形式发送至上位机;

所述上位机的数据通信部分用于和下位机的单片机通信,接收各个传感器的四元数数据,并含有数据校验功能;所述上位机的人体上肢坐标系构建部分构建人体上肢关节的坐标变换树,根据传感器得到的四元数信息,计算得到人体上肢各关节间的坐标变换关系;所述上位机的人体3d棍棒模型绘制部分使用长方体与球体分别表示骨骼与关节,根据人体上肢各关节的坐标变换关系,计算出各几何体的位置与姿态信息,最后在3d可视化界面显示各代表人体骨骼与关节的几何体,得到可视化的人体3d棍棒模型。

进一步,所述人体上肢右臂进行重建的过程如下:

(1)单片机与三个九轴惯性传感器进行通信,发送数据请求指令。九轴惯性传感器收到指令后,返回其测量并计算得到的四元数信息;

(2)单片机按一定频率,将采集到的各九轴惯性传感器的四元数数据打包,并通过数据接口发送至上位机端;

(3)人体3d建模上位机的数据通信部分接收到单片机发来的数据包后,从数据包中复原上述四元数数据并传递给人体上肢坐标系构建部分;

(4)人体3d建模上位机的人体上肢坐标系构建部分构建了人体上肢关节的坐标变换树,根据传感器得到的四元数信息,计算得到人体上肢各关节间的坐标变换关系;

(5)人体3d建模上位机的人体3d棍棒模型绘制部分使用长方体与球体分别表示骨骼与关节,根据步骤(4)中得到的人体上肢各关节的坐标变换关系,计算出各几何体的位置与姿态信息,最后在3d可视化界面显示各代表人体骨骼与关节的几何体,于是得到可视化的人体3d棍棒模型。

更进一步,所述九轴惯性传感器的安装方法为:以人体上肢右臂的重建为例,需要用到3个九轴惯性传感器;其中,第一个九轴惯性传感器需放置在人体胸口,作为人体的基准坐标系。第二个九轴惯性传感器放在肘关节上方,用来测量上臂的运动姿态信息;第三个九轴惯性传感器放置在腕关节上方,用来测量下臂的运动姿态信息;左臂的重建与右臂相同,在此不重复描述。

再进一步,所述人体上肢各关节坐标变换的方法为:

首先根据人体骨骼特征,确定人体上肢主要骨骼与关节的连接关系,并绘制人体上肢骨骼树形图,记地理坐标系为g,胸口坐标系为b,右肩关节坐标系为s,右肘关节坐标系为e,右腕关节坐标系为w;

接下来,定义各坐标系两两之间存在的平移变换和旋转变换:其中平移变换p用坐标(x,y,z)表示,旋转变换q用四元数的四维向量(w,a,b,c)形式表示;

地理坐标系g下的胸口坐标系b的平移旋转变换:

设定胸口的九轴惯性传感器放置与地理坐标系g各坐标轴保持一致,由此可得到:

胸口坐标系b下的肩关节坐标系s的平移旋转变换:

右肩关节坐标系s相对于胸口坐标系b是静止的,由此可得到:

肩关节坐标系s下的肘关节坐标系e的平移旋转变换:

右肩肘关节坐标系e相对于右肩坐标系s的旋转变换信息由肘关节处的九轴惯性传感器提供,但其得到的是相对于地理坐标系g的旋转变换故肘关节坐标系e相对于肩关节坐标系s下的旋转变换为:

初始校准时刻人体手臂与地面保持平行,笔直向右(记该状态为t-pose),l1是常数,表示上臂长度,随着人体手臂的运动,e相对于s的平移坐标也会发生变化,为了计算变化后的平移坐标,需要先将三维坐标转换为四元数再进行操作,令初始时刻坐标的四元数表示为pse=(0,l1,0,0),则发生旋转后的坐标更新公式为:

通过公式(2)得到每次手臂运动后,肘关节相对于肩关节所在的空间位置,为使模型与人手姿态同步,需要在一开始进行校准操作,校准的操作为:先令手臂保持t-pose静止,保存此状态下的四元数qe0,对后续肘关节e的每个姿态,其旋转四元数需要乘上qe0-1,以消除初始位置误差带来的模型偏差。平移坐标计算公式如下:

pse′=(qe0)-1qeipse(qei)-1qe0(3)

肘关节坐标系e下的腕关节坐标系w的平移旋转变换:同肘关节类似,可以得到腕关节坐标系w相对于肩关节坐标系s下的旋转变换如下:

引入一个辅助坐标系a,相当于将肩关节坐标系s平移到肘关节坐标系e处,得到:

于是计算出腕关节坐标系w相对于辅助坐标系a的平移变换如下:

paw′=(qw0)-1qwipaw(qwi)-1qw0(6)。

本发明的有益效果是:将小型惯性传感器布置在人体多处关节点,通过对动作过程中各肢体部位的惯性数据进行融合与推算得到人体上肢姿态重建结果,最后使用棍棒模型将人体姿态可视化。本发明系统使用低成本的硬件设备替换了昂贵的光学的动作捕捉系统,不怕遮挡、无光照影响、室内室外均可使用,易于实现全天候、无限制的动作捕捉;基于惯性传感器的穿戴设备具有穿戴方便、小型化、成本低、功耗小的特点;系统采集的数据量较小,信息处理的时间开销少,可实现对人体姿态高频率的采集与重建。

附图说明

图1是本发明系统结构框图。

图2是人体上肢骨骼树形结构图。

图3是人体右臂各关节坐标示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清晰,下面以人体上肢右臂的重建为例,结合附图对本发明的技术方案作进一步描述。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

参照图1~图3,一种基于可穿戴式惯性传感器的人体上肢姿态重建系统,包括下位机硬件平台和人体3d建模上位机,所述下位机硬件平台包括九轴惯性传感器和单片机,所述人体3d建模上位机包括数据通信部分、人体上肢坐标系构建部分及人体3d棍棒模型绘制部分;

所述九轴惯性传感器集成有三轴加速度计、三轴陀螺仪与三轴磁力计,并能通过其内置功能计算得到融合后的四元数信息,其与单片机的通信方式为i2c协议;九轴惯性传感器的安装方法为:以人体上肢右臂的重建为例,需要用到3个九轴惯性传感器,其中,第一个九轴惯性传感器需放置在人体胸口,作为人体的基准坐标系。第二个九轴惯性传感器放在肘关节上方,用来测量上臂的运动姿态信息,第三个九轴惯性传感器放置在腕关节上方,用来测量下臂的运动姿态信息。左臂的重建与右臂相同,在此不重复描述。

所述单片机用于和九轴惯性传感器通信并读取其四元数数据,将数据整合后以数据包的形式通过串口发送至上位机。

上位机的数据通信部分通过串口和下位机的单片机通信,接收各个传感器的四元数数据,并含有数据校验功能;上位机的人体上肢坐标系构建部分构建了人体上肢关节的坐标变换树,根据传感器得到的四元数信息,计算得到人体上肢各关节间的坐标变换关系;上位机的人体3d棍棒模型绘制部分使用长方体与球体分别表示骨骼与关节,根据人体上肢各关节的坐标变换关系,计算出各几何体的位置与姿态信息,最后在可视化界面中显示人体3d棍棒模型。

以下为本发明系统对人体上肢右臂进行重建的过程:

(1)单片机通过i2c协议与三个九轴惯性传感器进行通信,发送数据请求指令。九轴惯性传感器收到指令后,返回其测量并计算得到的四元数信息;

(2)单片机按一定频率,将采集到的各九轴惯性传感器的四元数数据打包,并通过串口的方式发送至上位机端;

(3)人体3d建模上位机的数据通信部分接收到单片机发来的数据包后,从数据包中复原上述四元数数据并传递给人体上肢坐标系构建部分;

(4)人体3d建模上位机的人体上肢坐标系构建部分构建了人体上肢关节的坐标变换树,根据传感器得到的四元数信息,计算得到人体上肢各关节间的坐标变换关系,具体过程如下:

根据人体骨骼特征,确定人体上肢主要骨骼与关节的连接关系,并绘制人体上肢骨骼树形图。如图2所示,其中记地理坐标系为g,胸口坐标系为b,右肩关节坐标系为s,右肘关节坐标系为e,右腕关节坐标系为w。

各坐标系两两之间存在着平移变换和旋转变换,平移变换p用坐标(x,y,z)表示,旋转变换q用四维向量(w,a,b,c)来表示一个四元数,接下来用p和q来表示一个坐标系相对于另一个坐标系的平移旋转变换。

地理坐标系g下的胸口坐标系b的平移旋转变换:

设定胸口的九轴惯性传感器放置与地理坐标系g各坐标轴保持一致,由此可得到:

胸口坐标系b下的肩关节坐标系s的平移旋转变换:

右肩关节坐标系s相对于胸口坐标系b是静止的,由此可得到:

肩关节坐标系s下的肘关节坐标系e的平移旋转变换:

右肩肘关节坐标系e相对于右肩坐标系s的旋转变换信息由肘关节处的九轴惯性传感器提供,但其得到的是相对于地理坐标系g的旋转变换故肘关节坐标系e相对于肩关节坐标系s下的旋转变换为:

初始校准时刻人体手臂与地面保持平行,笔直向右(记该状态为t-pose),l1是常数,表示上臂长度。随着人体手臂的运动,e相对于s的平移坐标也会发生变化,为了计算变化后的平移坐标,需要先将三维坐标转换为四元数再进行操作,令初始时刻坐标的四元数表示为pse=(0,l1,0,0),则发生旋转后的坐标更新公式为:

通过公式(2)可以得到每次手臂运动后,肘关节相对于肩关节所在的空间位置。为使模型与人手姿态同步,需要在一开始进行校准操作。校准的具体操作为:先令手臂保持t-pose静止,保存此状态下的四元数qe0,对后续肘关节e的每个姿态,其旋转四元数需要乘上qe0-1,以消除初始位置误差带来的模型偏差。平移坐标计算公式如下:

pse′=(qe0)-1qeipse(qei)-1qe0(3)

肘关节坐标系e下的腕关节坐标系w的平移旋转变换:同肘关节类似,可以得到腕关节坐标系w相对于肩关节坐标系s下的旋转变换如下:

引入一个辅助坐标系a,相当于将肩关节坐标系s平移到肘关节坐标系e处,得到:

于是可以计算出腕关节坐标系w相对于辅助坐标系a的平移变换如下:

paw′=(qw0)-1qwipaw(qwi)-1qw0(6)

根据上述各坐标系之间的对应关系,可以得出人体上肢右臂各关节的姿态信息,示意图如图3。

(5)人体3d建模上位机的人体3d棍棒模型绘制部分使用长方体与球体分别表示骨骼与关节,根据步骤(4)中得到的人体上肢各关节的坐标变换关系,计算出各几何体的位置与姿态信息,最后在3d可视化界面显示各代表人体骨骼与关节的几何体,于是得到可视化的人体3d棍棒模型。

上述对实施例的描述是为便于本技术领域的普通技术人员能理解和应用本发明。但是本发明不限于上述实施例,本领域技术人员根据本发明的揭示,对于本发明做出的改进和修改都应该在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1