计步器数据分析
0赞
算法说了一遍,但是实际过程中要有很多的很多因素要考虑,现在说一下怎么来去除这些因素,怎么完善这个计步器。
假设我们把计步器放在兜里,这个时候当衣服突然收到风吹或者别的因素,突然抖动,按照当前的这种计算脚步的方法,那么计步器就会计步一次,这样就造成了计步错误,那么就应该对这种突然的计步误差进行排除。在设计之前,对人的走路各个方向的加速度采样是必须的,通过采样,我们知道,当我们走步或者是跑步的时候,我们的频率应该是大致差不多的,所以我们可以这样做一个设计,那就是事先检测一些人的走步或者是跑步的频率,这样综合分析一下,然后根据这些人的频率设定一个频率参数或者一个频率区间,当我们在这个频率区间之内检测到两次或者三次峰值的时候,我们就可以只计步一次,排除掉多余的误差,这样就可以正确的计步了。但是这样也不能正确的计步,因为当频率突然改变的时候,可能少计算步伐了。还有一种方法呢我们先要对得到的这个曲线进行平滑处理,把每五个点做一个排序,然后按照大小关系进行平滑处理,也可以取平均值赋给中间的点,这样就能滤掉采到波形的毛刺了,然后再根据再把所有点进行排序(这里可以设计个带通滤波器,这样就可以避免毛刺或者突变因素的影响了),可是这样就可能在一个波形震荡内得到几个最大点,那么还是会得到错误,所以还是要对频率进行选取,我们可以根据过去五十个或者更多的波形进行频率的平均处理,然后选出频率区间,在一个频率范围内我们选取一个最大点,当找到这些点,根据点的个数,我们可以实现计步。这也是一种方法。计步之后想要让计步器更加完美就好办了,根据步长,个人的身高、腿长、体重,计算出卡洛里的消耗量。计算卡洛里主要是路程的计算比较困难,如果根据腿长和每步的距离乘以步数,那么得到的消耗量也是一个很模糊的数,如果根据加速度计对各个方向的积分,然后根据勾股定理得出路程,这样个人觉得还是可以,但是一定要把重力加速度给考虑到,因为每次都会有在重力方向的路程累积,还要把重力加速度在各个方向根据角度,然后在三轴方向给排除掉,这样就很麻烦。其实,个人觉得这个计步器不能实现精确测量,会存在很大误差的,大家有什么想法或意见可以交流一下啊!
我们当时参考的资料主要是ADI工程师的文章,在这里给大家分享一下http://www.21ic.com/app/control/201206/125867.htm。
如果有机会真的还是希望继续参加ADI的培训,这样和各个高校的同学们在一起讨论相处,真是非常不错的机会
