这是关于使用惯性进行室内跟踪的另一个问题(智能手机+ aceel +陀螺仪) 首先,我想说几乎每一篇关于stackoverflow的帖子都在谈论这个主题。 而且我知道要跟踪一个位置我们必须整合两个加速,这在现实应用中是非常无用的,因为所有漂移错误......
但事实证明,我不需要建造一架飞机或其他什么我不需要开发一个必须要销售的应用程序或其他东西。我只是想实现一个简单的Android应用程序,它使用室内跟踪的“理论”概念 -
基本上我的手机放在桌面屏幕上,如果将手机推到2或3米,然后我将其旋转再按2或3,则在已知位置(0,0)面朝上 米我要看多少米变得不准确所以使用标签重新校准测量值< ---这是我的主要问题
我需要什么? - 角度? (可以集成陀螺仪)(我不想使用指南针) - 加速? (我有) - 速度? (整合加速度) - 和位置(双加速积分)
我想知道的是如何将这个数字放在一起?这是正确的方法吗?还有另一种解决方案(解决我的问题,而不是真正准确地跟踪某人)吗?
我还看了DCM的理论(如果我理解正确,它会给我6个轴的电话方向吗?但是从Accel或陀螺仪获得角度有什么不同(音高,滚动)等等。)?
谢谢
答案 0 :(得分:3)
使用您拥有的传感器,此时尚未考虑计算能力,我只知道一种位置/位移估算方法。这将涉及仅使用车载摄像机的光学流动,或上述来自来自加速/陀螺仪的融合数据的附加信息(例如,使用卡尔曼滤波器)以提高准确性。我猜OpenCV已经满足您的所有需求(包括对Android的支持),所以我从那里开始。
首先实施一个只有加速度和陀螺仪的姿态估算器。这将在偏航轴(即垂直于地面的轴,或者更确切地说平行于重力矢量)上漂移。这可以使用卡尔曼滤波器或其他算法来完成。这对位置估计没有任何好处,因为估计的位置将在几秒钟内漂移到十分之一米。
然后尝试用相机实现光流,这在计算上很昂贵。实际上,这可能是一个解决方案,但准确性低于IMU的其他数据。
祝你好运。编辑:我最近找到了this - 它可能会对您有所帮助。如果没有很多噪音(由于振动),这将起作用(我使用的是四旋翼无人机,但遗憾的是它对我不起作用)。
答案 1 :(得分:3)
您的智能手机可能配有3轴陀螺仪,3轴磁力计和3轴加速度计。这足以好好估计态度。每个都有其优点和缺点:
加速度计可以测量重力,它可以为您提供手机的姿态,但在水平位置,您无法知道它指向的位置。它对惯性噪声非常敏感。
陀螺仪速度最快,最精确,但问题在于漂移。
磁力计没有漂移,它们对惯性力不敏感,但速度太慢。
三者的结合为您提供了所有优点,没有任何缺点。您必须尽可能快地读取陀螺仪测量值(这可以最大限度地减少漂移),然后使用慢速而不是精确的磁力计和加速度计来校正它们。
我留给您一些可能感兴趣的链接:
我希望我对我糟糕的英语表示帮助和抱歉。