我在Android上尝试使用Sensor.TYPE_ROTATION_VECTOR。它应该使用磁场传感器,加速度计和陀螺仪始终提供准确的旋转。但是,我注意到Moto G 2nd发生了巨大的漂移。我想知道这是一个特定于设备的问题,还是这种情况发生在很多手机上(我猜想,虽然我很熟悉Moto G 2nd是一个有问题的陀螺仪)。
是否有另一种形式的传感器融合,它是无漂移的(使用磁传感器)?我也试过了Google Cardboard的传感器融合,但它使用了偏差估计,因此可能并非完全漂移(因为此时看不到磁场传感器),尽管仍然比TYPE_ROTATION_VECTOR好很多。
答案 0 :(得分:7)
https://play.google.com/store/apps/details?id=org.hitlabnz.sensor_fusion_demo有一些我刚刚找到的方便的选择。我仍然需要测试哪种融合导致最稳定的结果。 来源:https://bitbucket.org/apacha/sensor-fusion-demo/src。
其中很多也表现出漂移;特别是使用陀螺仪的那些。
答案 1 :(得分:0)
一般方法包括:
(*)在笛卡尔物理世界中,磁力计应该足够了,但在地球的宇宙中,你需要用陀螺仪补偿磁力计频率的更新,精度和外部因素的不足,这提供了立即反馈。