0. MSCKF中的 零空间的作用是什么
一句话描述:MSCKF中,视觉残差(如特征点重投影误差)的雅可比矩阵会被投影到其零空间的正交补空间上,更新仅作用于可观测部分,抑制了零空间中的虚假修正。
在MSCKF(Multi-State Constraint Kalman Filter)中,零空间(null space)的核心作用是维持系统可观测性,通过数学手段消除状态估计中因运动或观测不足导致的不可观测维度的影响,从而提升滤波器的鲁棒性和估计精度。以下是具体解析:
1. 可观测性问题与零空间的关联
• 问题背景:在VIO(视觉惯性里程计)中,IMU和视觉的联合估计存在某些不可观测的状态(如绝对位置和全局航向)。这些状态在滤波器更新时可能导致信息矩阵的秩亏缺,进而引入虚假信息(spurious information),破坏估计的一致性。
• 零空间的作用:零空间对应系统不可观测的方向(如3D平移和绕重力轴的旋转)。MSCKF通过显式投影到这些方向的补空间,避免在更新步骤中引入虚假信息。
详细逻辑链拆解:
## ① 信息矩阵秩亏缺 → 虚假信息 → 一致性破坏
* **背景**:在 VIO 中,有一些状态无论你怎么测量也推不出来,比如**全局平移**(相机在世界坐标系的绝对位置)和**绕重力方向的绝对航向**。
* 这些方向叫**不可观测方向**,意味着传感器数据对这些状态没信息。
* 在理想数学世界里,信息矩阵(协方差的逆矩阵)在这些方向上**应该是零**,对应**秩亏缺**(rank-deficient)。
* 但如果滤波器更新时没注意,可能会**错误地增加这些方向上的信息量**(数值上让零变成非零),相当于“凭空”对不可观测方向加了约束。
* 这样会出现**虚假信息(spurious information)**,让系统以为自己能估计这些方向,其实不能,从而导致**一致性破坏**:协方差低估,不再反映真实不确定性。
## ② 零空间与不可观测方向
* 数学上,这些不可观测方向正好是系统观测矩阵 H 的零空间(null space)。
* 如果 v 在零空间中,H v = 0 说明测量对这个方向没感知。
* 在 VIO 中,这个零空间常包含:
1. 3D 平移(相对于初始位置)
2. 绕重力方向的旋转(全局 yaw)
* MSCKF 等滤波器会显式构造一个**零空间的补空间**(orthogonal complement),并把更新投影到这个子空间里。
* 这样更新只作用于**可观测的方向**,不可观测的方向不被“错误更新”,就避免了虚假信息。
---
### 换句话说
**如果不处理零空间会出错的后果,MSCKF用投影方法处理零空间,防止出错的办法**。
2. MSCKF中的具体实现
• 观测模型投影:在MSCKF中,视觉残差(如特征点重投影误差)的雅可比矩阵会被投影到其零空间的正交补空间上。数学上,通过构造一个投影矩阵 P\mathbf{P}P(通常基于QR分解或SVD),将残差 r\mathbf{r}r和雅可比 H\mathbf{H}H 投影为:
rnull=PTr,Hnull=PTH
\mathbf{r}_{\text{null}} = \mathbf{P}^T \mathbf{r}, \quad \mathbf{H}_{\text{null}} = \mathbf{P}^T \mathbf{H}
rnull=PTr,Hnull=PTH
这样,更新仅作用于可观测部分,抑制了零空间中的虚假修正。
• FEJ(First Estimate Jacobian)的配合:MSCKF结合FEJ技术,固定线性化点以避免不同状态估计间的雅可比不一致性,进一步保证零空间投影的有效性。
3. 为什么需要零空间投影?
• 防止信息冗余:IMU预积分和视觉观测可能对同一状态(如位姿)提供重复约束,零空间投影避免双重计数。
• 保持一致性:未投影的更新可能导致滤波器过度自信(协方差过小),零空间投影确保协方差与真实不确定性匹配。
• 应对退化运动:在缺乏激励(如匀速运动)时,某些维度不可观测,零空间投影可自适应地忽略这些方向。
4. 对比其他方法
• 与优化方法的区别:基于优化的VIO(如VINS-Mono)通过边缘化隐式处理不可观测性,而MSCKF通过零空间投影显式控制。
• 与OC-KF的关系:Observability-Constrained KF(如OKVIS)同样修正雅可比,但MSCKF的投影更侧重数值稳定性。
5. 实例说明
• 场景:无人机悬停时,平移不可观测但滤波器可能因噪声误修正位置。零空间投影会阻止平移方向的更新,仅更新可观测的姿态和速度。
总结来说,MSCKF中的零空间投影是通过线性代数手段剥离不可观测维度,确保滤波器仅在可观测子空间中操作,从而提升SLAM系统的理论一致性和实际精度。这一技术是MSCKF区别于传统EKF的关键创新之一。
MSCKF中零空间的作用解析
2556

被折叠的 条评论
为什么被折叠?



