文章目录
-
- 四元素对时间的导数
- VIO 中的 IMU 模型
- 欧拉积分
- 中值法积分
- IMU预积分
- IMU的预积分误差
- 预积分的离散形式
四元素对时间的导数
那么、四元数对时间的导数为:
VIO 中的 IMU 模型
根据上面的导数关系,可以从第i 时刻的PVQ,通过对IMU 的测量值进行积分,得到第j 时刻的PVQ:
欧拉积分
欧拉积分利用k时刻的斜率,作为k 到k+1 时刻整段的斜率,欧拉积分计算量很小,但近似误差会比较大。两个相邻时刻k 到k+1 的位姿是用第k 时刻的测量值啊,w来 计算。
中值法积分
中值积分利用k+1/2△t的斜率 作为k到k+1时刻的斜率,用中点斜率来近似整段斜率显然比比欧拉积分用端点斜率来近似要更合理。即;两个相邻时刻k 到k+1 的位姿是用两个时刻的测量值a,w 的平均值来计算。
问题:
每次Q wbt 优化更新后,都需要重新进行积分,运算量较大,那么此时我们利用IMU预积分来解决这个问题。
IMU预积分
上述三个预计分量,原先是在World系下进行p v q 的积分, 现在转成了b系下进行p v q 积分. 优化过程中如果Qwbt发生变化, 通过上述公式, 只需少量乘法和加法运算就可以快速求出Pwbj Vj Qwbj。
注意:预积分是将迭代公式中的积分项拿出来预先计算,初值k时刻 变化时,k+1仍然需要重新计算。假设 k到 k+1时刻,之间有N组IMU数据,原来积分需要N次迭代计算,现在只需要一次计算,计算量大大化简。
IMU的预积分误差
预积分的离散形式
参考链接:https://zhuanlan.zhihu.com/p/107032156
参考:深蓝学院《从零手写VIO》课程