田晓春,陈家斌,韩勇强,杨黎明,尹静源
(1.北京理工大学 自动化学院,北京 100081;2.华北光学仪器有限公司,北京 100053;3.北京机电工程总体设计部,北京 100039)
多条件约束的行人导航零速区间检测算法
田晓春1,陈家斌1,韩勇强1,杨黎明2,尹静源3
(1.北京理工大学 自动化学院,北京 100081;2.华北光学仪器有限公司,北京 100053;3.北京机电工程总体设计部,北京 100039)
针对MEMS惯性传感器存在漂移大、器件精度低的问题,结合行人导航系统应用需求,在分析行人运动步态的基础上,设计了一种多条件约束的行人步态零速区间检测算法。该方法综合利用足部传感器输出参量的模值、方差、幅值、峰值并通过设定阈值来提取步态中的零速点,多条件约束有效地降低了误判的可能性。最后,采用该方法对不同步速下行走过程中的零速区间进行检测,结果表明利用多条件约束法计算得到的零速区间数与实际运动步态中的零速区间数完全一致。此外,零速区间的准确提取也为后续开展行人导航速度解算误差修正算法的研究提供了依据。
行人导航;步态分析;零速区间;微惯性测量单元
近年来,行人导航已成为导航定位领域一个活跃的分支。行人导航系统可实时监测人员的位置信息,对单兵进行跟踪与定位。在城市、室内、地下等卫星信号受限的环境中,行人导航系统可以很好地解决“我在哪里”、“我应该在哪里”、“如何到达目的地”[1]等问题。因此,行人导航系统的研究对复杂环境中的消防抢险、突发事件中的紧急救援及未知环境中的自我定位及目标找寻等都具有重要的意义。
MEMS惯性传感器技术的快速发展为行人导航的实现创造了条件[2]。基于MEMS技术设计的微惯性测量单元在成本、尺寸、重量、功耗等方面能够很好地满足行人导航系统的应用需求[3-4],故可将 MEMS惯性测量单元安装于人体的胸、腰、足等部位进行导航系统的设计。根据安装方式的不同,基于 MEMS惯性测量单元的行人导航系统主要有两种位置解算方案[5],一种是PDR(Pedestrian Dead-Reckoning)算法,另一种是基于ZUPT(Zero Velocity Update)的SINS算法。PDR算法需要对人体进行运动学建模,根据步频、腿长等参数来计算步长,并结合计步信息及航向信息得到行人位置参数。该方法计算过程中不存在累积误差,但不同个体模型参数差异较大,有一定的局限性。SINS算法根据传感器采集的参数直接计算每一次脚步变化的三维导航参数,但由于MEMS惯性传感器存在漂移大、器件精度低的问题,采用 SINS算法计算位置参数时,通常采用ZUPT辅助的手段来抑制误差累积,通过周期性的误差清零,能够有效提高系统的解算精度。因此,足部安装惯性传感器,并通过ZUPT辅助的方法是当前行人导航系统的主要研究方向。John Elwell[6]首先提出了行人运动步态中有零速区间的特性;随后,E. Foxlin[7]首次系统、全面地介绍了足部安装惯性导航系统在行人导航中的应用,并采用ZUPT进行误差修正,取得了理想的实验结果;在此基础上,Ojeda[8]、Krach[9]、Jimenez[10]、Castaneda[11]等人对行人导航系统进行了不断的改进与完善,但他们共同的特点都是都采用了零速修正方案。由于行人行走过程中,脚掌与地面接触并保持相对静止的时间是十分短暂的,因此,零速区间检测是行人导航的核心,准确、有效地检测步态中的零速区间能提高系统的精度。基于此,本文在借鉴前人研究工作的基础上,设计了一种多条件约束的行人导航零速区间检测方法。经实验验证,该方法能准确、有效地检测出常规运动步态中的零速区间,实验结果为后续速度误差修正算法设计提供了保障。
通常将行走过程中行人从一侧脚脚跟着地开始,经两只脚步态交替变换,到该侧脚跟再次着地时所经历的过程定义为一个完整的步态周期。其中,当一条腿承重时,其脚底与地面完全接触,此时,将脚与地面完全接触的时间段称为零速区间。行人运动过程中,脚部往往伴随着触地、完全着地、抬脚、摆动等周期性步态。这些步态可分为两个阶段,一个是脚与地面保持接触阶段,另一个是脚在空中摆动阶段。行人步态周期如图1所示[12]。
文献[13]将行走过程中一个完整的步行周期分解为8个变化的步态过程,具体描述如下:
1) 初始触地阶段:该过程指运动脚与地面刚接触的阶段,通常是脚跟部位先触地;
2) 承重阶段:该阶段起始于运动脚脚跟触地时刻,持续到对侧脚脚趾离地结束,整个过程中运动脚脚掌完全着地;
3) 站立中期:该阶段始于对侧脚趾离地,至躯干位于支撑腿正上方时结束;
4) 站立末期:指从支撑腿脚跟离地到对侧下肢脚跟着地的阶段;
5) 迈步前期:指从对侧下肢脚跟着地到支撑腿脚趾离地之前的一段时间;
6) 迈步初期:从支撑腿离地到该侧膝关节达到最大屈曲时;
7) 迈步中期:从膝关节屈曲摆动到小腿与地面垂直的阶段;
8) 迈步末期:指与地面垂直的小腿向前摆动至该侧脚跟再次着地之前的阶段。
通过对行人步态特性的分析,便于对步态中零速区间的检测。结合图 1中步态周期的图示及文献[13]对步态周期的描述,本文将步态周期静态相位中行人运动脚脚掌着地时刻1t到该脚脚跟抬起时刻2t间的时间段 tΔ定义为行人步态中的零速区间。
图1 常规步态周期Fig.1 Normal gait cycle
行人运动过程中,安装于脚部的MEMS惯性测量单元能够敏感脚部的加速度及角速度变化,可将其作为信息源用于行人步态的分析与识别。但行走过程中,足部与地面接触的时间特别短,一般情况下约为0.1~0.3 s[14],在跑步时触地时间更短,因此,基于行人导航系统精度的要求,需非常准确地判断零速区间。基于步行过程中行人足部与地面接触保持静止时,足部的角速度及水平加速度值近似为零,竖直方向的加速度值近似为重力常量的情况,结合文献[10][15]的研究工作,设计以下算法进行零速检测:
① 加速度矢量和阈值法。计算三个正交轴向上加速度计输出的矢量和,根据零速区间内加速度矢量的变化范围设定阈值区间,通过判断k时刻加速度模值与阈值的关系,得到该时刻的逻辑值。
式(1)中:Anorm(k)表示k时刻加速度矢量和;表示k时刻i轴向上加速度计输出, ,,i x y z= ;式(2)中:_minAT 、_maxAT 分别是阈值区间的左边界和右边界,当加速度模值在阈值区间内时,认为运动脚静止,阈值大小可以根据实验采集的数据进行设定。
② 滑动窗口方差法。方差可以衡量变量与其均值的偏离程度,通过设置窗口求方差可以在固定范围内对数据点的离散度进行判断,滑动窗口又可以将所有的数据点进行遍历,提高计算精度。
③ 加速度峰值检测+时间阈值法。行人运动时,脚跟触地瞬间竖直方向会出现加速度变化最大值,之后前脚掌着地,足部保持静止。通过检测加速度峰值得到触地时间点k,认定其后某一时间区间 tΔ为零速区间。
④ 角速度阈值法。横向陀螺可以准确测量步态中抬脚、摆腿等运动的角速率变化,通过对横向陀螺输出取绝对值,可以将负值取反,简化判断条件,减小区间阈值带来的误判。
以上条件中,方法①~④的结果中会出现不同程度的野值,导致零速区间误判。因此,单一的判断条件无法得出精确的零速区间。根据“与”逻辑运算特性,将式(2)(4)(6)(7)中k时刻的判断结果进行“与”运算,即可得到准确的零速区间。此外,求取逻辑值时,采用设置左右边界阈值的方法通常会引入一定数量的野值,将运动点误判为零速点,故可对数据进行取模、求反等运算,然后通过单边界约束来降低误判。
3.1 系统介绍
实验采用荷兰 Xsens公司的 Mti系列 MEMS IMU。如图2所示,系统内部集成了3个正交的加速度计、3个陀螺仪及1个三轴磁传感器,加速度计量程为±15g,陀螺仪量程为±1000 (°)/s,IMU尺寸为56.5 mm×40.9 mm×21.3 mm。
图2 Xsens IMU 及其安装方式Fig.2 Xsens IMU and installation
3.2 步态实验
实验过程中,将MEMS IMU安装在右脚的脚跟部位,如图2所示。对行人行走过程中的步态信息进行采集,传感器输出原始数据如图 3所示,其中,X轴向传感器测量竖直方向惯性参量,Y轴测量横向参量,Z轴测量纵向参量,系统采样频率为100 Hz。
图3中的曲线为常规步速行进过程中部分传感器输出曲线,上方的曲线为竖直方向加速度计的输出,下方的曲线为横向陀螺仪的输出。分析数据可以看出:行人行走过程中足部周期性触地,并且每个周期内有一小段时间足部保持静止,传感器输出数据近似为常值,这一时间段即为“零速区间”,行人行走过程中详细的步态如图4所示。
图3 行走过程中传感器输出原始数据曲线Fig.3 Raw readings of sensor in walking
图4 步态特性曲线Fig.4 Curves of gait characteristics
3.3 零速区间检测实验
利用前文提出的零速检测算法对采集的数据进行处理,与图3中数据相对应的计算结果如图5所示。图5中:红色实线为加速度矢量和阈值法判断的结果,可以看出由于左右阈值的设定,结果中引入了较多的野值;蓝色点划线为滑动窗口方差法判断的结果,通过选取合适的阈值,零速区间判断较为准确;紫色点线为峰值-时间阈值法判断的结果,该方法的核心在于峰值的检测,从结果中可知设计的算法准确、有效地检测到了脚跟触地瞬间的加表输出峰值;绿色虚线为角速度阈值法判断的结果,取绝对值后,会有一部分幅值较小的负角速率落在阈值范围内,从而引入野值。通过对4种判断方法得到的结果进行“与”逻辑运算,得到逻辑步态曲线,如图5中黑色*型点划线所示,1表示静止状态,0表示其它运动状态。
图5 零速区间检测结果Fig.5 Zero velocity interval detection results
图4 为两个完整步态周期,图中红色实线代表加速度值,蓝色虚线代表陀螺仪输出值。分析②与③之间的步态数据可知:脚跟着地瞬间加速度计输出值最大,紧接着前脚掌着地,加速度计输出一个幅值较小的脉冲;经过短暂的信号震荡,传感器有一段输出近似为常值的“零速区间”段(陀螺输出近似为零,竖直方向加速度计输出近似为重力加速度),此时脚掌与地面完全接触;零速区间之后,行人开始抬脚,此时 Y轴陀螺输出曲线清晰地表示了脚跟的旋转过程;抬脚结束后,运动脚离地开始摆腿实现身体前移,步态变化特性如图4中摆腿阶段陀螺输出曲线所示;摆腿结束后运动脚脚跟触地,进入到下一个步态周期。
由图5中的ZUPT曲线可以看出,对应于图3的步态数据中共检测到12个零速区间,与步态曲线中的零速区间数一致,可初步判定文中提出的零速区间检测算法有效。为了进一步检验算法的性能,设计了多步态步行实验。具体方案为:在100 m直线路程中,进行多次不同步速的行走实验,对步态中的零速区间进行检测,结果如表1所示。
由于MEMS IMU安装在人体的右脚,故行人每行走两步会检测到一个零速区间。由表1中的实验结果可知,多次试验中本文设计的零速区间检测算法可以准确地检测出行走过程中的零速区间,误差率为0。多步态零速区间逻辑图如图6所示。
对比图6中不同步速的零速区间逻辑曲线可知,行人慢速行走过程中步态周期最长,零速区间持续时间较长,随着步速增加,步态周期逐渐变短,零速区间时间变短,检测难度也逐步增大。
表1 零速区间检测结果Tab.1 Detection results of zero-velocity intervals
图6 不同步速下零速区间检测结果Fig.6 Zero-velocity interval detection results in different walking speeds
本文在分析运动过程中行人步态特性及运动规律的基础上,结合人体及环境约束,设计了一种多条件约束的足部零速区间检测算法。该方法能利用安装于足部的微惯性测量单元输出的感知信息准确判断出不同行走速度条件下步态中的零速区间。同时,在检测零速区间的基础上,可以进一步开展基于 Kalman滤波框架下的行人导航零速修正算法研究,对导航结果的误差参量进行实时修正,提高导航精度。此外,本文研究的步态零速区间检测方法主要用于行人常规运动模式且默认为平整路面的情况,实际中行人运动模式多样且环境复杂,后续研究工作可针对非理想环境中复杂步态的零速区间检测展开。
(Reference)
[1] Rantakokko J, Händel P. User requirements for localization and tracking technology: a survey of mission-specific needs and constraints[C]//Indoor Positioning and Indoor Navigation. 2010: 1-9.
[2] 钱伟行, 朱欣华, 苏岩. 基于足部微惯性/地磁测量组件的个人导航方法[J]. 中国惯性技术学报, 2012, 20(5): 567-572.
Qian Wei-xing, Zhu Xin-hua, Su Yan. Personal navigation method based on foot-mounted MEMS inertial/ magnetic measurement unit[J]. Journal of Chinese Inertial Technology, 2012, 20(5): 567-572.
[3] Bird J, Arden D. Indoor navigation with foot-mounted strapdown inertial navigation and magnetic sensors[J]. Wireless Communications, 2011, 18(2): 28-35.
[4] 张金亮, 秦永元, 梅春波. 基于MEMS惯性技术的鞋式个人导航系统[J]. 中国惯性技术学报, 2011, 19(3): 253-256.
Zhang Jin-liang, Qin Yong-yuan, Mei Chun-bo. Shoemounted personal navigation system based on MEMS inertial technology[J]. Journal of Chinese Inertial Technology, 2011, 19(3): 253-256.
[5] Cho S Y, Park C G. MEMS based pedestrian navigation system[J]. The Journal of Navigation, 2006, 59: 135-153.
[6] Elwell J. Inertial navigation for the urban warrior[C]// Digitization of the Battlespace IV, SPIE. 1999, 3709: 196-204.
[7] Foxlin E. Pedestrian tracking with shoe-mounted inertial sensors[J]. Computer Graphics and Applications, IEEE, 2005, 25(6): 38-46.
[8] Ojeda L, Borenstein J. Non-GPS navigation with the personal dead-reckoning system[C]//Proc. SPIE. 2007, 6561(1): 65610C-1-65610C-11.
[9] Krach B, Roberston P. Cascaded estimation architecture for integration of foot-mounted inertial sensors[C]//2008 IEEE/ION Position Location and Navigation Symposium. 2008: 112-119.
[10] Jimenez A, Seco F, Prieto J C, et al. Indoor pedestrian navigation using an INS/EKF framework for yaw drift reduction and a foot-mounted IMU[C]//7th Workshop on Positioning Navigation and Communication. 2010: 135-143.
[11] Castaneda N, Lamy-Perbal S. An improved shoe-mounted inertial navigation system[C]//IEEE 2010 International Conference on Indoor Positioning and Indoor Navigation. 2010: 1-6.
[12] Rose J, Gamble J. Human walking[M]. 3rd Ed. Baltimore: Williams & Wilkins, 2006.
[13] Perry J. Gait analysis: normal and pathological function [M]. SLACK Incoporated, 1992.
[14] Park S K, Sun Y S. A zero velocity detection algorithm using inertial sensors for pedestrian navigation system[J]. Sensors, 2010, 10(10): 9163-9178.
[15] 陈国良, 李飞, 张言哲. 一种基于自适应波峰检测的MEMS计步算法[J]. 中国惯性技术学报, 2015, 23(3): 315-321.
Chen Guo-liang, Li Fei, Zhang Yan-zhe. Pedometer method based on adaptive peak detection algorithm[J]. Journal of Chinese Inertial Technology, 2015, 23(3): 315-321.
Zero-velocity interval detection algorithm with multi-condition constraint for pedestrian navigation
TIAN Xiao-chun1, CHEN Jia-bin1, HAN Yong-qiang1, YANG Li-ming2, YIN Jing-yuan3
(1. School of Automation, Beijing Institute of Technology, Beijing 100081, China; 2. Huabei Optical Instrument Co. LTD, Beijing 100053, China; 3. Beijing Electro-mechanical Engineering System Design Institute, Beijing 100039, China)
To deal with the large drift and low performance of MEMS inertial sensors, a zero-velocity interval detection algorithm with multi-condition constraint is designed based on the analysis of pedestrian gait characteristics by taking into account of pedestrian navigation system application requirements. This algorithm comprehensively utilizes the foot sensor’s output parameters, such as amplitude, peak value and variance, and extracts the gait of the zero-speed points by setting the threshold. The multi-condition constraint effectively reduces the possibility of miscalculation. The detection tests of zero-velocity intervals with different walking speeds show that the zero velocity interval numbers detected by the proposed method are the same as those in the actual walking. The accurate extraction of zero-velocity intervals lays the basis for the speed error correction algorithm in future pedestrian navigation research.
pedestrian navigation; gait analysis; zero-velocity interval; MEMS IMU
U666.1
A
1005-6734(2016)01-0001-05
10.13695/j.cnki.12-1222/o3.2016.01.001
2015-10-30;
2016-01-27
国防预研基金项目资助(9140A09050313BQ01127);国家自然科学基金项目资助(91120010)
田晓春(1986—),男,博士研究生,从事行人导航技术研究。E-mail: tianxiaochunno1@126.com
联 系 人:陈家斌(1965—),男,教授,博士生导师。E-mail: chenjiabin@bit.edu.cn