其中,和为IMU直接输出(包含偏置和噪声)的线性加速度和角速度,为四元数对应的旋转矩阵
公式(1)四元数对时间导数的详细推导过程:
其中,
连续状态误差方程:
其中,是JPL单位四元数,是四元数旋转误差,是四元数估计值
带入之前(1)的求导结果改写为:
关于陀螺仪的理想值,通过:
推出:
带入后:
忽略⼆阶项:
其中,
代入得:
估计值:
理想值:
误差:
两边对时间求导数:
通过,,,求得:
估计值:
理想值:
误差:
两边对时间求导数:
通过[13],,,求得:
将所有误差状态写成矩阵的形式:
进⼀步做离散化:
考虑在两个克隆时间点和之间对轮式里程计测量进行预积分。连续时间下的2D运动学模型在时间区间内给定为:
其中,是局部偏航角,和是在起始积分坐标系中的二维位置。请注意,使用和是因为遵循全局到局部的方向表示。还请注意,该模型揭示了2D方向在积分周期内的演变事实。
为了在不访问状态估计(特别是方向)的情况下,将从时间步到的所有轮式里程计测量局部组合起来,可以执行以下测量的积分:
其中,。请注意,假设和(离散传感器模型)是恒定的,但考虑了和之间的航向角变化,以便拥有比假设它恒定更准确的模型。
轮式里程计的积分与内参相互纠缠在一起,理想情况下,当有新的内参估计可用时,应该重新积分这些测量值,但这会使预积分失去计算效率。为了解决这个问题,对当前内参的预积分里程计测量进行线性化处理,同时适当考虑由于内参的线性化误差和噪声引起的测量不确定性:
其中,是堆叠的噪声向量,其块对应于时间段内的编码器测量噪声()。
2D方向扰动的定义。从一般的3D方向扰动推导出这个定义:
其中,,其中是第个标准单位基向量。需要注意的是,遵循JPL符号约定,使用。根据上述方程,得到:
计算结果可以通过去除指数函数将其简化为 ,并得到2D方向误差的定义为:
使用推导(42),可以从(25),(28)和(31)得到步骤积分的雅可比矩阵:
其中,和是测量(22)关于内部参数和噪声的雅可比矩阵,给定估计值如下:
可以发现,步预积分的误差是步预积分和测量误差的线性组合。利用上述方程,可以递归计算噪声协方差和雅可比矩阵如下:
其中,是时刻轮式编码器测量的噪声协方差。这些方程展示了雅可比矩阵和噪声协方差在预积分间隔期间的演化过程。因此,可以根据零初始条件在预积分结束时递归计算测量噪声协方差和雅可比矩阵的值。假设使用个测量值进行预积分,可以推导出的闭式表达式:
其中
得到内参状态的雅可比行列式为:
请注意,预积分的轮式测量(33)仅提供里程计平面上的2D相对运动,而VIWO状态向量(34)包含3D IMU/相机姿态。为了建立预积分里程计与状态之间的联系,需要明确IMU和里程计之间的相对变换(外部校准)[参见(32)]:
其中,,是矩阵对数函数[8]。由于这个测量依赖于连续的两个姿态以及里程计/IMU的外部参数,当在MSCKF中使用它进行更新时,需要计算测量残差和相应的测量雅可比矩阵,计算方法如下。
每次测量的残差可以定义为:
请注意,由于2D方位扰动(42)的定义,在方向残差中采用了预测-测量形式。
首先,扰动姿态以获取相对于姿态的雅可比矩阵(83):
此外,空间外部参数的扰动为:
将上述方程整理成矩阵形式,得到相对于每个状态的以下雅可比矩阵:
请注意,雅可比行列式 (94) 和 (95) 与[3]相同。