如何检测加速度计中的脱粒?
我正在编写一个由手表内置的加速计控制的应用程序。我想要的命令之一是“疯狂地挥动你的正手”。我如何检测它并测量它的持续时间?
I'm writing an application controlled by an accelerometer built into a wrist watch. I want one of the commands to be "wildly swinging your forehand". How do I detect it and measure for how long it goes?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
为了补充约翰·费舍尔的建议,我想补充一点:看看用频谱/傅里叶变换技术来分析这个问题。我希望在低频下看到很强的信号特征,但它很容易因用户而异。
如果存在该特征,信号处理技术可以帮助您隔离并检测它。
To supplement John Fisher's suggestion, I would add: Look at analyzing this with spectral/Fourier transform techniques. I would expect to see a strong signal characteristic at low frequencies, but it could easily vary from user to user.
If the characteristic is there, signal processing techniques can help you isolate it and detect it.
当你挥舞手臂时,写下一些东西来记录测量结果。用不同的方式重复几次。分析您可以使用的模式的测量结果。
Write something to record the measurements while you flail your arm around. Do it several times in different ways. Analyze the measurements for a pattern you can use.
使用卡尔曼滤波器跟踪当前加速度绝对值的移动平均值?或者,如果可以的话,当前加速度减去重力?
如果超过阈值,则表明最近发生了很大的加速。这暗示着殴打。
Use a Kalman filter to track a moving average of the absolute value of the current acceleration? Or, if you can, the current acceleration minus gravity?
If that goes over a threshold, that indicates a lot of acceleration has been happening recently. That suggests thrashing.