基于学步期幼儿步态提取的双足机器人运动学分析方法与流程

文档序号:15131365发布日期:2018-08-10 07:52阅读:244来源:国知局

本发明涉及一种基于kinect传感器提取学步期幼儿的行走步态参数,将其应用于双足机器人的下肢运动学建模分析的方法,属于计算机视觉与生物特征识别领域。



背景技术:

幼儿学步期是其发育过程中的重要阶段,独立行走则标志着幼儿的骨骼、肌肉和神经等系统达到一定的成熟水平。相比于成年人的行走步态,学步期幼儿的步态特征变化显著。探索该阶段幼儿行走步态的发展规律,将其与双足机器人的运动学模型建立匹配,是实现双足机器人步态优化的重要途径。但是人体与双足机器人在控制原理、质量分布和作动器属性等方面均存在明显差别,因此无法将人体行走数据与机器人的步态规划直接建立映射。相关研究表明儿童的短时下肢肌肉功率输出较小,相比于成人,更接近于双足机器人的下肢单关节的功率输出。通过对学步期幼儿行走步态信息的提取与分析,能够降低双足机器人行走的工程化实现难度。

美国骨科医生sutherlandd是从事儿童步态分析研究的代表性人物,从20世纪初开始针对儿童步态的时-空参数、与成人步态间的差异和行走的运动学分析等方面展开研究,通过采集并分析大量1-7岁幼儿的行走数据来了解不同年龄段幼儿步态发育的规律。国内的研究起步较晚,主要集中在脑瘫患儿、小儿麻痹和儿童肥胖症方面,旨在对比正常儿童与患病儿童的步态差异,为病症的早期诊断和后期治疗提供科学依据。

现有的儿童行走数据获取和步态提取方法分为两种:一种是给被测者穿戴上专门的测量装置,通过连续采集其行走过程中关节角度的变化值来计算步态空间参数,但此类装置的配戴舒适性相对较差,难以固定在学步期幼儿身上,易导致测量数据不准确;另一种是在被测者各关节处粘贴反光片,通过高速摄像机来采集儿童行走的视频,基于图像处理的方法来提取步态时空参数,由此导致后期在图像处理方面耗费较多。

目前基于仿生学的双足机器人步态规划研究主要利用传感器记录人体行走数据,与机器人进行运动学匹配,将优化、调整后的数据用于规划机器人的步态。最具代表性的成果是日本产业技术综合研究所开发的hrp系列仿人机器人,通过研究人体与机器人腿部运动的相似性,实现仿生学数据到机器人步态数据的转换,使得机器人能够模仿人类行走和跳舞。国内在这方面也开展了大量研究工作,如北京理工大学的bhr型仿人机器人在建立相似性函数基础上增加运动学约束,完成了仿人的太极拳演示;哈尔滨工业大学的hit-ⅱ型机器人通过优化人体行走数据来进行步态规划。但是大部分机器人只能完成短距离的行走,且在双足步态稳定性和运动完成的优美性方面还存在不足。

2017年《自动化学报》在中国知网数字优先出版平台发表的《基于kinect的学步期幼儿自然步态提取》,以总结幼儿学步阶段的行走步态规律,但并未对该方法在双足机器人步态规划上的应用给出具体阐述。



技术实现要素:

针对现有学步期幼儿行走步态提取在双足机器人步态规划方面存在的不足,本发明提供一种基于学步期幼儿步态提取的双足机器人运动学分析方法,旨在利用kinect传感器快速获取幼儿不同时期的行走数据,通过其足端轨迹的拟合来提取步态时空参数,并对人体下肢进行正、逆运动学解算以获取各关节角变化规律。

本发明的基于学步期幼儿步态提取的双足机器人运动学分析方法,包括以下步骤:

(1)通过kinect(2.0)采集学步期幼儿不同月龄的行走视频,针对骨骼平滑与滤波处理后的行走数据,在kinect坐标系下基于z方向足端轨迹的变化规律来提取相应的支撑相、摆动相、单足支撑相、双足支撑相、步态周期和步频(步态时间参数);

基于kinect的关节捕获模块获取的关节数据需要预先进行位置平滑和滤波处理。通过kinectsdk中的双指数平滑模块剔除跳变的关节点数据,实际操作时通过多次调整结构体transform_smooth_parameters中的参数来实现。为消除视频采集过程中幼儿部分关节信息缺失或超出kinect观察视野的问题,利用曲线拟合的方法对关节平滑处理后的幼儿行走数据进行滤波,并选取适于步态特征提取的连续序列。

(2)基于d-h位姿转换方法建立人体下肢的坐标系{o0},将大腿、小腿和脚掌的骨骼视为连杆,驱动这些骨骼运动的部分视为将各连杆联接起来的关节,求解相应的d-h参数表;

将人体的髋关节(是球窝关节)运动分解为横滚、俯仰和航向三个自由度,这三个自由度分别通过坐标系{o1},{o2}和{o3}来描述,其中坐标系{o1},{o2}的原点与横滚自由度的中心重合;膝关节只有一个俯仰自由度,通过坐标系{o4}来描述;踝关节包括横滚和俯仰两个自由度,通过坐标系{o5}和{o6}来描述;

所述人体下肢的d-h坐标系{o0}设置在脊柱基点(spinebase)关节处。

(3)求解下肢的正运动学模型,依次推算各相邻连杆间的齐次坐标转换矩阵,分别获得坐标系{o0}与{o3}、{o4}与{o6}以及{o0}与{o6}间的转换关系;

(4)求解下肢的逆运动学模型,依据z-y-x欧拉角的定义,由{o0}与{o3}间的旋转矩阵解算出髋关节处(hip)的三个关节角,由{o4}与{o6}间的旋转矩阵解算出踝关节处(ankle)的两个关节角;由于膝关节(knee)属于铰链关节,仅考虑俯仰角,通过求解连杆对应的向量间的夹角完成;

(5)数据的分析,将各关节角的变化值进行曲线拟合以分析幼儿行走步态的空间特性。

本发明在采集学步期幼儿行走数据和提取步态时间参数的基础上,基于d-h位姿转换方法推导下肢的正运动学和逆运动学模型,以获取学步期幼儿步态发育的空间参数变化规律,可为双足机器人的步态规划提供理论支撑。

附图说明

图1为本发明提出的基于学步期幼儿行走步态的双足机器人运动学分析方法的总体流程图。

图2为kinect相机坐标系下人体各关节的坐标系定义示意图。

图3为人体下肢的d-h坐标系定义示意图。

图4为kinect相机坐标系下z方向的足端轨迹绘制结果。

图5为某月龄脊柱基点坐标系下髋关节角变化值及相应的拟合结果。

具体实施方式

本发明旨在利用kinect传感器快速获取幼儿不同时期的行走数据,在提取步态时空参数的基础上,为了将学步期幼儿的步态规律应用于双足机器人,采用d-h方法进行人体下肢的正运动学和逆运动学解算以获取各关节角变化,为双足机器人下肢的运动规划奠定基础。

本发明基于kinect传感器提取学步期幼儿行走步态,采用的设备包括kinect2.0、三角架和计算机,将kinect与三角架固联并调整后置于水平地面上,被测幼儿站在kinect正前方,采集1.6-3.8m量程内幼儿正向kinect行走的视频数据。从幼儿能够独立行走达到2m以上距离的月龄开始,作为后期数据处理的有效采样记录。

通过观察kinect的采样视频发现,人体骨骼的运动存在偶尔跳变的情况,且传感器受环境可见光变化的干扰,因此基于kinect的关节捕获模块获取的关节数据需要预先进行位置平滑和滤波处理。通过kinectsdk中的双指数平滑模块剔除跳变的关节点数据,实际操作时通过多次调整结构体transform_smooth_parameters中的参数来实现。为消除视频采集过程中幼儿部分关节信息缺失或超出kinect观察视野的问题,利用曲线拟合的方法对关节平滑处理后的幼儿行走数据进行滤波,并选取适于步态特征提取的连续序列。

如图1所示,本发明的基于学步期幼儿行走步态的双足机器人运动学分析方法,具体包括以下步骤。

步骤s1:取连续序列中每一帧对应的左髋(hipleft)、右髋(hipright)、左膝(kneeleft)、右膝(kneeright)四个关节在kinect坐标系下的坐标值,按照求解空间中两点间距离的公式分别计算,分别获得左、右大腿骨骼的长度序列:

式中,x,y,z分别表示不同关节点的三维空间坐标值。

将上述长度序列导入matlabcftool进行曲线多项式拟合,为剔除当前拟合曲线中出现的误差项,计算曲线的期望值l与标准差a,截取l±1.5a区间内连续曲线所对应的骨骼序列用于后续的步态提取。

在kinect坐标系下,沿z方向分别提取幼儿行走的两侧足端轨迹,计算步态时间参数。图2所示为kinect坐标系下人体各关节相应的坐标系定义,其中(xc,yc,zc)表示kinect坐标系。

针对前面获得的连续骨骼序列,以kinect坐标系下左足(footleft)和右足(footright)两关节的z坐标值为纵坐标,以序列的帧数为横坐标,绘制出左足端和右足端的变化轨迹。如图4所示为某月龄幼儿行走数据对应的z方向足端轨迹,其中实心曲线为左足轨迹,空心曲线为右足轨迹。本发明用到的步态参数概念与双足机器人领域相同。一个完整的步态周期由支撑相和摆动相构成,取图4中左足轨迹基本不变的时间段表示支撑相,下降阶段表示摆动相,左足轨迹不变且右足轨迹下降的阶段表示单足支撑相,双足轨迹均保持稳定的阶段表示双足支撑相。kinect录制视频的帧速已知,帧速的倒数乘以一个完整步态对应的帧数即为步态周期,步频=1/步态周期。由此可获得幼儿行走步态的各项时间参数。

步骤s2:基于d-h位姿转换方法建立人体下肢坐标系。目前大部分关于人体步态分析的研究主要针对下肢的髋关节、膝关节和踝关节,这里对于关节角的定义通常与解剖学上的概念保持一致,即:两段相邻骨骼分别投影到某一解剖平面(冠状面、矢状面或水平面)上的直线间的夹角。为了将学步期幼儿的步态规律应用到双足机器人上,本发明采用机器人运动学分析上常用的d-h转换方法来进行人体下肢的正、逆运动学解算。

将大腿、小腿和脚掌的骨骼看作连杆,驱动这些骨骼运动的部分视为联接各连杆的关节。人体下肢的d-h坐标系{o0}如图3所示,为了与kinect的关节层次定义保持一致,将基坐标系{o0}设置在脊柱基点(spinebase)关节处,其中y0沿着人体行走的方向,z0与重力方向相反,x0通过右手定则来确定。由于左、右腿各关节坐标系的定义规则相同,故以下以左侧下肢为例来阐述。

人体的髋关节是球窝关节,因此可将其运动分解为横滚、俯仰和航向三个自由度,即左髋关节通过坐标系{o1},{o2},{o3}来描述,其中坐标系{o1},{o2}的原点与横滚自由度的中心重合。左膝关节只有一个俯仰自由度,通过坐标系{o4}来描述。左踝关节包括横滚和俯仰两个自由度,通过坐标系{o5},{o6}来描述。左足关节与地面直接接触,故只取其空间位置坐标。

建立上述d-h坐标系后,人体下肢可等价为两条六自由度的机械臂,表1为左腿的d-h参数。

表1左腿d-h参数

步骤s3:求解下肢的正运动学模型。依次推算各相邻连杆间的齐次坐标转换矩阵,分别获得坐标系{o0}与{o3}、{o4}与{o6}、{o0}与{o6}间的转换关系。

相邻连杆间的位姿转换通式为:

将表1中的连杆参数代入式(1),可得每一个连杆变换矩阵:

将上述矩阵(2)-(7)连乘可得

其中,r11=-c6(c1c345s2+s1s345)+c1c2s6

r12=s1s345s6+c1(c2c6+c345s2s6)

r13=-c345s1+c1s2s345

r21=-c345c6s1s2+c1c6s345+c2s1s6

r22=c2c6s1+(c345s1s2-c1s345)s6

r23=c1c345+s1s2s345

r31=c2c345c6+s2s6

r32=c6s2-c2c345s6

r33=-c2s345

px=-l1-c1(l2c3+l3c34)s2-s1(l2s3+l3s34)

py=-(l2c3+l3c34)s1s2+c1(l2s3+l3s34)

pz=c2(l2c3+l3c34)

上述等式构成左腿的正运动学模型,其中ci=cosθi,si=sinθi,cij=cos(θi+θj),sij=sin(θi+θj)。

以下两个中间推导结果可用于后述的逆运动学解算:

步骤s4:求解下肢的逆运动学模型。

由图3可知,左髋关节分解成三个自由度,其旋转轴相交于一点,因此三个关节角可依据z-y-x欧拉角的定义来解算。

首先,由式(9)可得坐标系{o0}与{o3}间的旋转矩阵:

已知可得

通常在上式中取θ2的正根以得到单解,满足-90°≤θ2≤90°。

然后,用-r33除以cosθ2再求其反正切可求得θ2:

只要cosθ2≠0,可得:

θ1=atan2(-r23/cosθ2,-r13/cosθ2)(13)

θ3=atan2(-r32/cosθ2,r31/cosθ2)(14)

通过kinectsdk可获取人体各关节的位姿数据,基于已知的关节层次定义,可得各父代与子代关节间的旋转关系。可通过脊柱基点(spinebase)关节与左髋(hipleft)关节间的旋转四元数计算,再结合式(12)-(14)可解出关节角θ1,θ2,θ3。

由于左膝(kneeleft)关节只有一个俯仰自由度,故关节角θ4可通过求解连杆(kneeleft–hipleft)与(kneeleft–ankleleft)对应的向量间的夹角得到。由式(10)可得坐标系{o4}与{o6}间的旋转矩阵:

进一步可解得θ5和θ6:

θ5=atan2(-r13,r23)(16)

θ6=atan2(-r31,-r32)(17)

步骤s5:取某月龄幼儿的行走数据,利用式(12)-(14)可解出髋关节相应的关节角θ1,θ2,θ3的变化值,并对其分别进行曲线拟合,结果如图5所示。其中,横坐标表示行走视频的帧数,纵坐标表示解算出的关节角度值,fit1、fit2、fit3分别表示关节角θ1,θ2,θ3对应的拟合值。

通过观察数据变化趋势可以发现,髋关节处的横滚角和俯仰角变化呈近似正弦波,航向角变化无明显周期性。基于式(16)-(17)进行计算,可以看出行走时踝关节的横滚角和俯仰角变化也呈近似正弦波。另外,膝关节角也呈近似正弦波变化。

在提取学步期幼儿行走步态时空参数的基础上,采用d-h方法进行人体下肢的正、逆运动学解算,从而得出上述各关节角变化规律。通过统计幼儿整个学步期的步态特征变化,可以发现:随着年龄的增大,其步态周期变长,单足支撑相提高,步长增加,下肢关节的俯仰角变化幅度减少。这反映出幼儿不断增强的协调性和平衡性,以及身体形态的变化。后续可进一步将上述幼儿行走步态发育规律通过运动学与动力学匹配应用到双足机器人的行走步态规划上。

最后说明的是,以上所述仅为本发明的较佳实例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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