导航:首页 > 源码编译 > 计步器算法c代码

计步器算法c代码

发布时间:2023-06-28 13:08:00

A. 手机计步器不计步了,解决久法!

不一定是手机坏了。
计步算法可以分为四大类,一是峰值检测算法,二是变换域算法,三是滤波算法,四是模式识别算法。根据所设计的计步器在人体上布放的位置不同,如腕部、腰部、鞋底等,可以选择不同的计步算法。

峰值检测类算法原理简单,易于实现,应用较为广泛。这里简单介绍峰值检测类算法。用户在运动中,可能把设备放置于口袋或者包中,亦或拿在手中。所以设备的放置方向不确定。那么首先,我们通过计算三个加速度的矢量长度,可以获得一条步行运动的正弦曲线轨迹。

第二步就是峰值检测,我们记录了上次矢量长度和运动方向,通过矢量长度的变化,可以判断当前加速度的方向,并和上一次保存的加速度方向进行比较。如果是相反的,即是刚过峰值状态,则进入计步逻辑进行计步,否则就舍弃这段。通过对峰值次数的累加,那我们就可得计算得到用户步行的步数。

最后,就是去噪音(干扰)。手机或智能手表等手持设备会有一些低幅度和快速的抽动状态,即我们俗称的手抖,或者某个用户想通过短时快速反复摇动设备来模拟人走路,这些干扰数据如果不剔除,会影响记步的准确值,对于这种干扰,我们可以通过给检测加上阀值和步频判断来过滤。目前人类最快的跑步频率为5HZ(当然不排除人类借助其它设备跑步频率超过这个频率),也就是说相邻两步的时间间隔的至少大于0.2秒,如图中的计步时间,若两次计步之间的时间间隔小于0.2秒,则不计步。这样我们就过滤了高频噪声,即步频过快的情况。同时我们通过和上次加速度大小进行比较,设置一定的阀值Threshold来判断运动是否属于有效(如图中的绿线),有效运动才可进行记步。

如果已知步行和跑步的步数,那么再通过人体身高,体重及性别就可以大致知道此人的步长,改进后即可变成一个测距离及测速计。通过三轴加速度传感器,我们可以知道用户的运动状态。除了计步,还可以利用加速度传感器与陀螺仪及磁传感器融合进行步行航迹推算。

阅读全文

与计步器算法c代码相关的资料

热点内容
液压缓冲器压缩行程 浏览:52
如何给pdf加密码 浏览:381
设置完wifi加密没有二维码 浏览:515
亚马逊云服务器的示意图 浏览:300
通达信的周日小时分钟源码 浏览:950
可编程控制器教材 浏览:337
java实现快捷键 浏览:96
程序员打代码最佳时间 浏览:571
怎么装原生态安卓 浏览:849
工程图学pdf 浏览:400
开放的程序员 浏览:954
胡希恕伤寒论讲座pdf 浏览:768
aspnet程序员薪水 浏览:78
苹果为什么屏幕看得比安卓舒服 浏览:121
苹果数据线怎么转安卓 浏览:658
黑格尔pdf下载 浏览:961
备忘录里新建文件夹怎么删除 浏览:14
服务器黑名单怎么处理 浏览:844
程序员电视剧25集 浏览:216
80351单片机 浏览:960