请问为什么使用卡尔曼滤波和互补滤波进行姿态解算时,计算出的四元数是相反数?

img

img

虽然四元数相反,但并不影响解算出的欧拉角。
我在查阅资料后发现了一个名词:double cover,不知道有没有关系。
谢谢老哥们解答疑惑。

该回答引用于gpt与OKX安生共同编写:
  • 该回答引用于gpt与OKX安生共同编写:

从您提供的图中可以看出,Kalman滤波算法得到的四元数的值与互补滤波算法得到的四元数的值在符号上相反。这可能是由于两种滤波算法初始状态不同导致的。

如果初始状态设置得不好,可能会导致滤波器发散或收敛缓慢,从而影响滤波效果。对于卡尔曼滤波器,需要合理地选择初始状态和协方差矩阵来保证滤波器的收敛速度和精度。对于互补滤波器,需要合理地选择权重系数来平衡加速度计和陀螺仪的测量结果。

建议您检查一下卡尔曼滤波器和互补滤波器的初始参数设置是否正确。您可以尝试调整初始参数,以便使两种滤波算法得到的四元数的值接近,并且能够稳定地收敛到正确的姿态解算结果。