- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
由于 CMPedometer 不适用于 iPhone5S 以下
CMPedometer StepCounting not Available
是否有算法代码可用于在 ios 上使用加速度计对步数进行编程?
谢谢
最佳答案
抛开 IOS,没有简单的解决方案可以仅使用加速度计输出来创建准确的计步器;就是太吵了。使用陀螺仪(如果可用)的输出来过滤输出会提高精度。
但这是一种粗略的计步器接线代码粗略方法:- 步骤被检测为在 Z 轴上检测到的加速度的变化。假设您知道默认加速度(重力的影响),下面是您的操作方法:
float g = (x * x + y * y + z * z) / (GRAVITY_VALUE * GRAVITY_VALUE)
您的阈值是 g=1
(这是您静止不动时会看到的)。此值中的尖峰表示步骤。所以你所要做的就是数尖峰。请注意,简单的 g>1 是不行的,至于一步,g 值会增加一定时间然后返回(如果你绘制值随时间变化,它应该看起来像正弦波时有一个步骤 - 本质上你想计算正弦波)
请注意,这只是让您入门的东西;您将不得不增加更多的复杂性以提高准确性。像: - 迟滞以避免错误的步骤检测 - 过滤加速度计输出 - 计算步长间隔不包括在这里,应该进行试验。
关于ios - 替代 CMPedometer 在 iOS 上使用加速度计计算步数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35173977/
我不确定如何根据输入大小 N 确定运行时间,尤其是当它进入具有某些限制的循环时。这就是我尝试过的。我猜常数是正确的。它看起来如何? i = 1;
我想检索 1 小时前的步数。我不需要做任何特别的事情,我只需要知道用户自上一小时以来完成了多少步。 即使我的 iPhone 记录了一些步数,检索步数的查询返回“nil”。 这是代码: let c
我正在为 Android Wear 开发一款面部 watch 。我想读取 watch 计算的步数(显示在卡上的步数)。是否有任何简单的方法来访问数据?我的研究表明我可以创建自己的步数计数器(由于准确性
我是一名优秀的程序员,十分优秀!