android - 在android中使用加速度计计算步数

标签 android signal-processing accelerometer sensors

<分区>

Possible Duplicate:
How to Count the Number of Steps Using the Accelerometer
Are there any well known algorithms to count steps based on the accelerometer?

您好,我已经开发了 Android 应用程序。在一个模块中,我必须创建一个 pedometer .现在在这个阶段我必须计算用户使用加速度计走的步数。我在互联网上搜索并找到了不同的方法,但都没有用。我试过this

有人知道如何实现我的目标吗?感谢您的帮助。

最佳答案

最简单的解决方案是设置一个时间窗口和多个阈值。信号采用双波形式,您可以将一个步骤分成几个部分。您可能需要有多个窗口和相应的阈值才能识别一个步骤。但请记住,如果有人上下楼或运行或只是以不同的步伐走路,此信号会发生变化。如果你真的要和几个参与者一起尝试,你会得到很大的可变性。

不同设备的阈值会有很大差异。测量频率也会产生影响。允许一个人以正常步伐检测步行的标准频率约为 10Hz,一些设备使用 20Hz,如果超过这个频率,您将获得大量数据和很少的信息。制造商确实使用不同版本的加速度计,因此如果您的软件可以在一部手机上运行,​​则不能保证它也可以在另一部设备上运行,即使是相同型号的设备也是如此。

我会先从绘制您的信号开始。也不要忘记手机可以放在口袋里的不同位置(除非你以某种方式固定它)所以阈值会 float 。所有临床计步器通常固定在腿上的某个位置。

考虑使用单轴加速度计而不是 3 轴加速度计,开始信号分析会容易得多。另请查看 Fourier transformationswavelet analyses .

请参阅下图,基本了解使用 3 轴加速度计行走的效果。我在做类似的任务时做到了(步行是嘈杂的一点)。

walking looks with a 3-axial accelerometer

这就是用单轴加速度计行走的样子(又是嘈杂的位)

walking with a mono-axial accelerometer

关于android - 在android中使用加速度计计算步数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11241208/

相关文章:

ios - 检测 iPhone 在平面上的移动

android - 在 Android 中的两个表的 ListView 中显示异构数据

android - Paint.breakText 是否包含 maxWidth 处的字符?

python - Bluepy 安装错误

algorithm - 在 MATLAB 中生成随机向量

java - Android Filtered Accelerometer+Gyroscope 显示信息

android - Cocos2d-x 崩溃 : signal 11 (SIGSEGV), 代码 1 (SEGV_MAPERR) - 无法打开未知符号文件

android - 如何让号码保持最新号码而不是回到默认号码?

python - 如何使用 Scipy.signal.butter 实现带通巴特沃斯滤波器

android - (LIBGDX) 如何逐步整合加速度计并使用 ANDROID 上的 Z 轴来移动汽车?