相关疑难解决方法(0)

android从加速度计读数中删除重力

我正在开发一个Android应用程序,我需要从加速度计读数中删除重力.我已经阅读了关于这个问题的多个讨论,我也在这里找到了一个算法,但我并没有真正理解它.

我想从每个轴过滤重力,而不是从总加速度过滤.

你能帮帮我吗?我的代码应该是这样的:

public void onSensorChanged(SensorEvent sensorEvent) {
    float vals[] = sensorEvent.values;
    float accelerationX = filterGravity(vals[0]);
    float accelerationY = filterGravity(vals[1]);
    float accelerationZ = filterGravity(vals[2]);
}
Run Code Online (Sandbox Code Playgroud)

我应该在filterGravity()方法中放置什么代码?

android accelerometer gravity

18
推荐指数
3
解决办法
2万
查看次数

Android加速度计过滤?

我看到很多关于过滤Accelermeter值的例子,以消除重力(高通滤波器).

但是大多数都是一阶的,据说很简单,但是迟到而不是最好的(尽管我对滤波器或DSP一无所知).

这里有人说DSP中存在用于感知运动的更好的解决方案.遗憾的是,我甚至无法想象会是什么,因为我完全不喜欢这个领域.

我希望有人能够分辨出处理传感器时可以使用的滤波器类型.当然,即使对具体算法进行简要介绍也会非常高兴:)

提前致谢.

android filtering signal-processing sensor

5
推荐指数
1
解决办法
5768
查看次数