本发明涉及运动步态检测技术领域,特别是涉及一种人员定位人体运动步态检测方法。
背景技术:
行人在运动过程中有规则的运动行为,像静止、走、跑,也有非规则的行为例如,跳、攀爬、匍匐等,不同的运动形式具有不同的敏感部位,为了更精确的完成对行人的定位,需要建立针对人体不同部位的运动模型,以达到对行人不同运动行为的精准的捕捉。
技术实现要素:
为解决上述问题,本发明提供一种有效判断连续输出的运动结果,剔除噪点,获得有效、合理的步态检测数据的人员定位人体运动步态检测方法。
本发明所采用的技术方案是:一种人员定位人体运动步态检测方法,包括如下步骤:
步骤1,将imu惯性测量单元安装在人体的脚部或腰部;
所述步骤1中,imu惯性测量单元包括加速度计、陀螺仪及与加速度计和陀螺仪连接的滤波器;
步骤2,通过三个条件提取人运动步态中的零速区间;
所述三个条件包括如下:
条件c1,加速度计的输出合成幅值的公式为:
加速度计的给定的上下阈值为thamin=9m/s2和thamax=11m/s2;
其中,ak是加速度计输出,x,y,z分别是阈值区间的左边界和右边界;
加速度计输出合成幅值,处于给定的上下阈值之间则人体静止;
条件c2,加速度计输出的局部方差的公式为:
其中
加速度计输出的局部方差,低于给定的阈值,则人体静止;
条件c3,陀螺仪输出的合成幅值的公式为:
陀螺仪输出给定的阈值为:thωmax=50°/s
陀螺仪输出合成幅值,低于给定的阈值,则人体静止;
步骤3,通过中值滤波方法,将所述条件c1、条件c2和条件c3均判断人体静止则确定人体静止。
对上述方案的进一步改进为,所述条件c1中,
对上述方案的进一步改进为,所述条件c2中:
s为半窗口采样数量,通常定义其值为15;定义给定阈值为:
对上述方案的进一步改进为,所述条件c2中,
对上述方案的进一步改进为,所述条件c3中,
对上述方案的进一步改进为,所述滤波器为卡尔曼滤波器。
本发明的有益效果是:
相比传统步态检测方法,本发明通过三条件采用“与”逻辑,即只有当三个条件的判断结果都为“1”时才认为步行处于静止状态。通过中值滤波方法,有效判断连续输出的运动结果,剔除噪点。具体是,条件c1,使用加速度计输出合成幅值,处于给定的上下阈值之间则判断人体静止;条件c2,使用加速度计输出的局部方差,低于给定的阈值,则判断人体静止;条件c3,通过陀螺仪输出合成幅值,低于给定的阈值,则判断人体静止;通过中值滤波方法,将所述条件c1、条件c2和条件c3均判断人体静止则确定人体静止,通过中值滤波方法,有效判断连续输出的运动结果,剔除噪点,获得有效、合理的步态检测数据。
附图说明
图1为本发明人员定位人体运动步态检测方法的条件c1、条件c2和条件c3的检测示意图;
图2为图1中条件c1、条件c2和条件c3检测数据重合部分的示意图;
图3为图2中条件c1、条件c2和条件c3检测数据为滤波前的示意图;
图4为图2中条件c1、条件c2和条件c3检测数据为滤波后的示意图;
图5为本发明人员定位人体运动步态检测方法的运动过程中的状态检测效果示意图图;
图6为本发明人员定位人体运动步态检测方法的加速度的零速检测示意图图;
图7为本发明人员定位人体运动步态检测方法的实验示意图。
具体实施方式
下面将结合附图对本发明作进一步的说明。
如图1~图4所示,一种人员定位人体运动步态检测方法,包括如下步骤:
步骤1,判断人体静止,包括如下条件;
条件c1,使用加速度计输出合成幅值,处于给定的上下阈值之间则判断人体静止;
加速度计的输出合成幅值为:
上下阈值为:
thamin=9m/s2和thamax=11m/s2;
并有:
条件c2,使用加速度计输出的局部方差,低于给定的阈值,则判断人体静止;
加速度计输出的局部方差为:
其中
s为半窗口采样数量,通常定义其值为15;
条件c2中,定义给定阈值为:
条件c3,通过陀螺仪输出合成幅值,低于给定的阈值,则判断人体静止;
陀螺仪输出的合成幅值为:
给定的阈值为:thωmax=50°/s
并有:
三条件法中有三个条件,需要确定的阈值多,运算量较大,实时处理性不是特别好,而且低成本的器件也使器件本身的特性不是很好,这都使得三条件法存在一定的局限性。将运动分为运动起始与运动中两部分,在运动起始阶段行人通常处于站立静止状态由于行人一般很难在初始对准后立刻进入运动状态,所以此时的滤波器还未生效,捷联计算将造成初始位置的漂移,从而导致导航失效。而静止检测实际是检测出运动过程中速度为零的时刻,并以此作为滤波器的触发条件,触发修正算法。因此,静止检测是实现速度误差清零和抑制位置误差的前提,也是个人导航系统的关键技术。为保证其检测的准确性,同时利用加速度计和陀螺仪的输出数据,采用最佳状态假设检验法,判断人体运动状态。
这种检测方法可以理解为一个二元假设检验问题。
如果行人处于静止状态,则存在:
其中
式中,
对于本算法来说,
算法中,以“0”表示运动状态,“1”表示静止状态,当处于“1”状态时位置与速度信息将不再更新。
参阅图5给出了运动过程中的状态检测效果,由图可看出利用此算法能够有效地检测出运动起始与运动中的静止时刻。
参阅图6,给出了加速度的零速检测图。
由于腰部的动态性能较差,且由上述分析可知其零速特征相较于脚部不明显,因此需建立步长模型。
由于人体的步长与其身高、路面情况等有关,同一个人每一步的步长不相同,不同人的步长也并不相同。因此,假设步长是一个常数并不准确。人体运动学研究同时表明,行人运动时步频和运动速度存在着一定的关系。所以,基于大量的统计信息提出了如下的一个人体运动模型:
公式1中f表示行人的运动步频,v表示人的运动速度。λ0和δ0为运动模型中的待定参数,不同人的运动参数是不同的,因此使用该模型前需要标定。设l为每步的步长,则步频f、速度v和步长l之间的相互关系有:
v=l*f(公式2)
结合公式1和公式2可得步长l和步频f之间的关系:
其中,
将人体的行进运动分为行走和跑步两大类。对于行走和跑步两种不同的运动类型分别对应不同的模型参数,分别为行走模型参数(λw,δw)和跑步模型参数(λr,δr),确定运动状态是行走还是跑步是通过步频阈值ft来确定的。
其中1.9444m/s的速度是由大量行走和跑步的实验数据的统计而设定的。当检测到行人当前的步频大于ft就判断为跑步,模型中就采用跑步参数,而小于ft时则判断为走路,模型中则采用行走参数。
模型中的走路模型参数和跑步模型参数要通过事先标定来确定,每个人的参数各不相同,对于行走模型参数的标定是让被标定者分别用快走和慢走两种运动方式走完一段长度为s的路程,记录下所用的总步数和总时间,分别为(n1,t1)和(n2,t2)。则行走的模型参数(λw,δw)可由下式计算获得:
跑步模型参数的标定方法与行走模型参数标定方法一致,分别快跑与慢跑一段路程然后记录时间、步数利用公式5完成标定。
此步长模型中需要标定的参数复杂,计算量大,而且通过一个步频阈值来划分行走和跑步,自适应差,运动过程中所采用的步长误差较大,而且在脚部安装imu的个人导航系统框架中,提取跨步过程中的加速度的最值方便,因此设计新的自适应步长模型如下:
人行走时的步长不是一个固定值,它随人行走的速度、步伐频率等改变。根据三轴加速度输出值的行走特征,估算行人的步长。步长估计采用经验模型,其公式为:
式中为行人步长sl;amax和amin分别为每一步中总加速度输出值的最大值与最小值;k为步幅因子。不同人的步幅因子是不同,为了保证步长的准确需对其进行标定。行人匀速行走固定的距离s,并记录行走的总步数n,通过下式便可求得k。
在实际的应用过程中发现,对于同一人来说。k值也会因步速的快慢、行走方式的差异略有不同,采用恒定的k值会,会引入步长误差。由于步速与k相关,而加速度输出值又与步速呈正比例关系,因此建立如下关系式:
其中
分别按照快速、较快、中速、慢速等速度行走固定距离,按公式7与公式9分别求得k与
实验对象为实验室中的一个男性人员,首先对他进行模型标定,标定后其步幅因子k与
本发明通过三条件采用“与”逻辑,即只有当三个条件的判断结果都为“1”时才认为步行处于静止状态。通过中值滤波方法,有效判断连续输出的运动结果,剔除噪点,获得有效、合理的步态检测数据。具体是,条件c1,使用加速度计输出合成幅值,处于给定的上下阈值之间则判断人体静止;条件c2,使用加速度计输出的局部方差,低于给定的阈值,则判断人体静止;条件c3,通过陀螺仪输出合成幅值,低于给定的阈值,则判断人体静止;通过中值滤波方法,将所述条件c1、条件c2和条件c3均判断人体静止则确定人体静止,通过中值滤波方法,有效判断连续输出的运动结果,剔除噪点,获得有效、合理的步态检测数据。
需要说明的是,中值滤波是基于排序统计理论的一种能有效抑制噪声的非线性信号处理技术,中值滤波的基本原理是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替,让周围的像素值接近的真实值,从而消除孤立的噪声点。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。