0

我正在尝试使用 android 手机的内部传感器作为定义用于视频游戏的 3D 对象的一种方式。因此,我需要创建手机方向的地图,以及一段时间内的相对位置。(相对于起始位置)我尝试创建一个测试应用程序,该应用程序保留“当前位置”的 float[] (x,y,z) 并不断将来自传感器的数据添加到其中。但是来自传感器的噪音只是让当前位置慢慢地从我用来可视化反馈的网格中摇晃出来。我在网上浏览了过滤器,所有的解释都令人困惑。反正有没有从传感器获得更清洁的输出?有没有更好的方法来跟踪手机的确切相对位置?

4

1 回答 1

1

您将无法使用典型的手机或平板电脑准确跟踪设备的位置。理论上,您可以使用设备的内部传感器来测量其在每个轴上的加速度。理论上,您将加速度积分一次以获得速度,再积分一次以获得位置变化。因此,理论上,您应该能够计算设备相对于其起始位置的位置。然而,在实践中,事情并没有那么顺利。

设备的传感器并不完美,并且包含小错误。将这些小错误合并两次会将它们变成大错误。这些大错误会累积并最终使您的计算变得无用。

看看Project Tango,它包含一堆花哨的传感器和算法来实现 6 DOF 跟踪。这个设备是由一个研究团队建造的,目前仍在进行中,所以请记住,这是一个棘手的问题。

于 2015-04-01T03:33:07.917 回答