四元数帧转换,NED,ENU,EUN

时间:2018-11-06 09:32:01

标签: python quaternions

当前,我正在使用以下代码在 NED 框架和 ENU 框架之间转换四元数:

Python:

def Quaternion_NED_To_ENU(q):
    """
    The incoming quaternion is in NED frame
    Quaternion ENU <-> NED:
    Swap X and Y [1] [2]
    Invert Z [3]
    Do not touch W [0]
    Rotate 90 degrees about z axis (yaw)
    """
    q_ENU = Quaternion(q.q[0], q.q[2], q.q[1], -q.q[3])
    q_90 = Quaternion(axis=[0, 0, 1], degrees=90)
    q_ENU = q_ENU * q_90
    return q_ENU

这似乎是正确的,对于 ENU NED ,我只需在 ENU 中输入四元数,结果在 NED

现在我有另一个框架, EUN ,我要将 NED 四元数转换为该框架。最后,我希望能够在所有3个帧之间进行转换。

任何帮助将不胜感激!

0 个答案:

没有答案