如何获得加速度计轴和运动矢量之间的旋转?

问题描述 投票:1回答:1

我正在开发Android上的行人导航系统。我目前正在尝试获得3轴加速度计参考和应用于设备的运动之间的旋转矩阵。

假设您手持设备直接向前走,但加速度计的Y轴(因此设备的Y轴)的方向与您自己的方向不同(基本上您持有的是设备以尴尬的方式)。然后,如果我想应用距离(基于步检测),将它们应用于加速度计参考(我知道方向)是错误的:它必须相应地旋转到运动方向。

这就是为什么我想知道你是否可以告诉我一个计算加速度计读数以将它们变成旋转角度(或矩阵)的方法。这种方法必须避免将加速度整合到一次,因为误差在廉价的加速度计上是非常的(否则我认为它很容易执行)。

编辑:磁力计和陀螺仪帮助您找到设备的方向,即使在常设时,但不允许您知道设备在哪个方向移动。我有第一个,我正在寻找第二个。基本上:

人参考(运动方向) - >设备参考(或加速度计参考) - >地球参考

我正在寻找旋转矩阵的方法,以计算从HR到DR的距离,然后我将其应用于我发现从DR到ER的旋转矩阵。

android algorithm rotation orientation accelerometer
1个回答
1
投票

我发现了一篇可能有用的文章,这里是link。 该想法基于获取3轴中的加速度计数据(其为n倍3矩阵)并找到矩阵的PCA(主成分分析)。 PCA是具有最高能量矩阵的3个向量。 理想情况下,主矢量(具有最高能量)方向向上,第二个是航向。您可以在文章中阅读所有内容。我尝试在matlab中实现算法,结果是o.k. (不是很好)希望你能做得更好(我希望听到好的结果)。

希望这可以帮助

阿里尔

© www.soinside.com 2019 - 2024. All rights reserved.