一种基于陀螺仪传感器的准确计步器算法

一种基于陀螺仪传感器的准确计步器算法
www.123ctCT一、介绍
基于计步器的室内定位系统,计步准确是非常关键的一项指标,有必要提高其准确性和可靠性。现有的检测技术,不论是硬件还是软件,都不能满足高精度的定位系统,尤其是在缓慢步行的情况下。特别是在一个陌生的环境,或者使用者是视力受损的人,室内导航表现的更糟糕(译者注:就是说室内导航软件,用常规方法根本检测不到用户移动,更不提导航作用了)。
现有的大多数的计步器使用加速度数据,基于阈值来检测步伐。
本文讨论的计步器算法是基于使用陀螺仪,在室内定位中识别出人类步行状态。本算法是由Abhayasinghe和Murray提出。本研究作为一个室内导航系统的一部分,针对的人是视力受损的人(译者注:文章的3位作者可能是针对视力受损的人做室内导航软件的)。
现有的一些计步器的性能会在“背景”一节所讨论,而基于陀螺仪的计步器算法及其性能将在“步检测算法”部分和“实验结果”部分体现。
二、背景
Jerome 和Albright 测试了5款商业计步器,测试对象是13名视力受损的成年人和10位老人,结果发现这些商业计步器检测精度非常差,在平地行走精度只有41%pcu h67%,而上下楼梯的情况更糟,上楼梯为9%28%,下楼梯为1141%。Crouter  等人测试了10款商用电子计步器,发现这些计步器在缓慢行走时,检测的步数都是偏少的。Garcia 等人对比了软件计步器和硬件的计步器,观察这两种类型计步器在所有速度下表现都差不多,在缓慢步行速度下(58 ~ 98步/分钟),硬件计步器精度只有20.5%±30%,软件计步器精度更是只有10%±30%。
Waqar等人曾在一个室内定位系统,使用了基于重力加速度计和固定阈值算法的计步器作为测试。他们的统计数据显示,在6次40步的测试中,平均准确率为86.67%,其中最低的一次准确率为82.5%,最高一次的准确率为95%,取中位数精度为85%。
Oner 等人讨论也提出了基于加速度计的智能手机计步器算法 :当步行的速度超过90bps(beats per second 每秒90拍,乐曲的节拍,音乐节奏速度单位)的时候,其算法显示出足够的精度。但当速度低于90bps时,其精度就会下降。在步行速度为80bps时,其算法
误差大约是20%;步行速度在70bps时,误差为60%,步行速度在60bps时误差达到90%。
lim等人提出了在脚上安装陀螺仪计步器,但是lim等人没有提到他们系统的准确性。那不如让他们使用力敏电阻器(
force sensitive resisters ,FSR )接触脚趾和脚后跟,这样精度肯定会更高,因为使用力敏电阻接触身体更容易地检测到结果(译者注:论文作者开始吐槽了)。
Ayabe等人的统计了一些商用计步器,在爬楼梯和踏凳练习(译者注:应该是站立,然后单脚放在凳上,之后左右换脚踏凳)中,速度80到120步/分钟的时候,误差为±5%。然而,速度越低,精度也越低(> 40±40%步/分钟)。
这里讨论的大多数例子都是使用重力加速度去检测步数。但是,他们都有一个相同的问题,在缓慢的行走速度中表现不佳。低速表现不佳的主要原因是:低速行走时,重力加速度几乎为固定值,而且加速度计反应迟缓,再加上这些算法不能采用分级的阈值(译者注:这里应该是想引出动态阈值概念)以适应走路的步伐,这就引出了一个要求在缓慢行走时也能计算准确的计步检测算法。
三、计步算法
A、介绍
论文[6]提到,陀螺仪数据可以用在室内定位软件里的计步算法中。该文作者提出,把手机放在裤袋里,通过手机陀螺仪的单值数据(陀螺仪数据有3个值,分别为x,y,z轴数据)就可以追踪大腿的运动,从而进行计步检测。
B、陀螺仪数据与大腿运动之间的关系
一个步态周期的测量方法是从迈出一步脚后跟触地,到相同的脚后跟下一步的接触。在迈出一步触地时,大腿向前迈出的距离是最大的,比其他方向的距离都要大。图1显示了使用陀螺仪x轴数据去记录大腿的运动波形,该图形已经使用了低通滤波降噪(使用的是6阶巴特沃斯低通滤波,截止频率微5Hz)。触地点和步态周期都在图1进行了标记。当大腿静止时,通过融合加速度计和罗盘数据,可以计算出初始位置。对于这种状态的计算,陀螺仪的静态数值将会被计算平均值所去除。
细胞核染
slqq可以清楚的看出,装有手机的那一条腿在触地时,在经过滤波后的陀螺仪读数接近于0的,
而且斜率是负。
因此,滤波后的陀螺仪读数从一个负斜率通过零点再上穿零点为一个步态周期。
图1 走在平坦地面,大腿运动方向图形(实线),经过滤波的陀螺仪x轴图形(虚线)
同时也观察到当走楼梯和走斜坡时候,脚触地的图形和陀螺仪滤波后负斜率过零点的图形
相符。显而易见,经过滤波后的陀螺仪数据结合过零点检测法,就可以检测出步态周期,即使是走楼梯或走斜面。以上所有的结论,都是基于手机垂直地放着大腿裤袋里所得出的,包括脚的运动波形和陀螺仪x轴波形。因此,实际上只要处理陀螺仪x轴即可。
C、数据预处理
陀螺仪x轴数据使用截止频率为3Hz的六阶巴特沃斯低通滤波器来滤波降噪,再使用过零点检测法去检测步数。之所以选择3Hz截止频率,是因为人类快走时平均范围是每秒2.5步[10]。截止频率越低,对平滑波形效果越好,把在零点附近的毛刺过滤到最小,又能清晰地显示步态周期的波形。
D、过零点检测
抓瓜使用简单的波形经过2个零点的检测法,可以简化算法。一只脚向前走或者并拢,形成的波形都能通过正、负2个零点。因此,过零点的总数,就是人走的步数。
E、规避误差大型设备包装箱
如图1的红圈所示,从一段脚触地到离开,过滤后的陀螺仪信号以一个负斜率过零,但仍可能在短时间内以正斜率过零。这就会造成误差。然而,因为这一小段只是在一个步态周期占到0-10%时间,完全可以用一个超时机制来避免这种不必要的过零点。一旦一个过零点被成功确认,那么,过零检测器就设认为100毫秒内,不允许有下一个过零点,这样就避免了多余的零点。为什么选用100毫秒?首先,选用前15%的步态周期时间,足够避免前10%的过零点引入误差。而一个缓慢的步态周期是每秒1.5步,因此15%时间约为100毫秒。100ms这个时间比在每秒3步这种快速的步态周期延迟了30%,因此它是不会干扰到快速行走情况下的过零检测。

本文发布于:2024-09-23 22:33:08,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/242918.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:陀螺仪   计步器   检测   算法   数据   使用   零点
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议