其他卡尔曼滤波变体 — EnKF / Augmented State KF / IMM
- Description:超出 KF/EKF/UKF/IF/iEKF/ESKF 主线之外的几个常见变体 — Ensemble KF (地球科学主流)、Augmented State KF (扩状态吸收偏置/有色噪声)、IMM (机动目标跟踪的多模型并行)
- My Notion Note ID:K2E-A-E5
- Created:2023-04-10
- Updated:2026-06-02
- License:转载欢迎 — 请署名 Yu Zhang 并链回 yuzhang.io 原文
Table of Contents
- 1. 在 KF/EKF/UKF/ESKF 之外
- 2. Ensemble Kalman Filter (EnKF)
- 3. Augmented State Kalman Filter
- 4. IMM — Interacting Multiple Model
- 5. 速查
- References
1. 在 KF/EKF/UKF/ESKF 之外
主线变体已经涵盖了 SLAM 工程的 90% 应用 (见高斯滤波家族那篇)。但还有几个变体在特定领域占据主导地位,SLAM 工程师偶尔会遇到:
| 变体 | 主战场 | 解决什么 |
|---|---|---|
| EnKF | 地球科学 / 大气 / 海洋数据同化 | 状态维度极高 (10^6+),常规协方差矩阵存不下 |
| Augmented State KF | 雷达跟踪 / 控制 | 有色噪声 / 时变偏置 / 时延 — 把这些"麻烦"吸收进扩展状态 |
| IMM | 机动目标跟踪 (导弹、飞机、车辆) | 运动模式未知且会切换 — 多个模型并行投票 |
2. Ensemble Kalman Filter (EnKF)
Geir Evensen 1994 — 为大气海洋数据同化设计的滤波器。其核心创新:用一组样本 (ensemble) 表示状态分布,而不是显式存协方差矩阵。
动机
传统 KF/EKF 显式维护协方差矩阵 。气象模拟里 (网格点 × 状态变量), 矩阵直接 OOM。EnKF 思路:用 个样本 (典型 ) 隐式表示协方差。
算法
初始化:
取 N 个状态样本 {x_0^(i)}_{i=1..N} (从初始分布抽样)
每个时刻 t:
# 1. 预测 — 每个粒子独立通过非线性 f
对 i = 1..N:
x_t^(i) = f(x_{t-1}^(i), u_t) + ε_t^(i), ε_t^(i) ~ N(0, Q)
# 2. 样本统计量
bar_μ = (1/N) Σ_i x_t^(i)
bar_P = (1/(N-1)) Σ_i (x_t^(i) - bar_μ)(x_t^(i) - bar_μ)^T # 注意! 实际不显式构造
# 3. 测量更新 (随机扰动观测以保持统计正确性)
对 i = 1..N:
z_t^(i) = z_t + δ_t^(i), δ_t^(i) ~ N(0, R)
# Kalman 增益 (用样本协方差)
K_t = bar_P_xz * (bar_P_zz + R)^{-1}
x_t^(i) ← x_t^(i) + K_t (z_t^(i) - h(x_t^(i)))
关键技巧:增益 涉及到 和 ,这两个量可以直接从样本算,不需要显式构造 :
优缺点
- 优点:可扩展到极高维状态空间;不要求线性化 (不需要 Jacobian) — 预测步直接传播完整非线性模型 (注意:更新步仍是线性高斯更新,后验假设高斯,见下文与 PF 的区别)
- 缺点:样本数有限会引入采样噪声 (spurious correlations),常需要协方差膨胀 (covariance inflation) 和局部化 (localization) 对策
- 与 UKF 区别:UKF 用确定性 Sigma 点 ( 个);EnKF 用随机样本 ( 个,)
- 与粒子滤波区别:PF 用权重表示后验,EnKF 总假设高斯 — 只是用样本来近似高斯统计量
SLAM 中是否用得到
直接很少用 — SLAM 状态维度通常几十到几百,KF/EKF/iSAM 完全够。但在大型机器人地图融合 (multi-robot SLAM, 全城市建图) 这种场景下,EnKF 思路有用 — 因为协方差矩阵会大到需要类似稀疏化 / 采样的方法。
3. Augmented State Kalman Filter
思路:当标准 KF 的某些假设被破坏时 (比如噪声不白、有未建模偏置、有延时观测),把这些破坏者作为新的状态变量加入状态向量,然后还是用标准 KF/EKF。
三种典型用途
A. 处理有色噪声
标准 KF 假设过程噪声 和测量噪声 是白噪声。但实际工程里 (传感器低频漂移、电磁干扰、共振耦合),噪声往往是有色的 — 自相关函数非冲激。
对策:把有色噪声看作"白噪声通过 shaping filter 后的输出",把 shaping filter 的状态也并进 KF 状态向量。这种"白化处理"在 三脚猫Frank 的 KF 系列 (Zhihu Part 1, Zhihu Part 2) 有详细讨论 — 一阶 Gauss-Markov 过程是最常见的 shaping filter 形式:
把 加入状态向量后,原系统等效变成"驱动是白噪声 "的标准 KF 问题。
B. 处理偏置 / bias
传感器有未知静态偏置 (如 IMU 零偏),或缓慢漂移的偏置 (温度漂移)。 对策:把 bias 作为状态变量加入:
测量方程对应改为 ,扩展后变成 。VIO / MSCKF / VINS 里的 IMU bias 估计就是这个套路。
C. 处理时延 / 多速率观测
观测有固定时延 (例如视觉处理延时 100ms),或观测频率低于状态更新频率。 对策:状态向量除了当前时刻 ,还保留 (延时 步) 作为附加状态。观测到来时与对应时刻的扩展状态融合。MSCKF (Multi-State Constraint KF) 的核心思想就是把过去若干个相机姿态都保留在状态里,等到 feature 跨多帧观测时一起约束 — 等价于"以视觉观测为基准的延时融合"。
代价
- 状态维度膨胀 → 协方差矩阵 变大 → 计算量增加
- 但是这是"用算力换正确性" — 比硬假设白噪声 + 现实是有色噪声,导致 KF 估计发散,要好得多
4. IMM — Interacting Multiple Model
问题:目标的运动模型是未知的或者会切换。例如跟踪一架飞机:可能在匀速巡航,可能匀加速爬升,也可能匀速转弯。一个固定模型的 KF 无法适配所有情况。
Blom & Bar-Shalom 1988 / Mazor et al. 1998 的 IMM 思路:
定位目标运动状态不可知。可能是匀速、匀加速、还是匀速转弯,这就是 IMM (交互式多模型滤波)。它的原理大概就是并行计算多种模式下的卡尔曼滤波,比如匀加速、匀速用 KF,匀速转弯用 EKF,然后将每次得出的估计结果与测量作比较,综合权衡几种模式。
算法骨架
维护 个并行模型 ,每个对应一种运动假设。同时维护一个 Markov 转移矩阵 — 描述模型 切换到模型 的概率。
每个时间步:
-
混合 (Interaction) — 各模型间根据 互相交换状态信息 (避免某模型完全死掉):
-
并行滤波 — 每个模型独立跑 KF / EKF,得到各自的 , ,以及似然 (创新与创新协方差的高斯密度)
-
模型概率更新 — 根据观测似然贝叶斯更新各模型的后验概率:
-
加权组合输出 — 最终估计是各模型估计的概率加权:
直觉
- 哪个模型最能"解释"当前观测 → 它的似然大 → 模型概率 上升 → 输出更偏向该模型
- 当目标运动状态切换时 (匀速 → 转弯),模型概率会自动跟着切换,因此叫"自适应"
主战场
- 导弹防御 (机动目标跟踪)
- 空管雷达 (飞机跟踪)
- 车载毫米波雷达多目标跟踪 (ACC, AEB)
- 行人 / 车辆 BEV 跟踪 (3D 多目标跟踪)
SLAM 中是否用得到
直接 SLAM 后端不常用 (SLAM 的状态演化由相机/IMU 运动模型固定描述,没有"模式切换"问题)。但相邻领域 — 动态物体跟踪、AEB 系统、ACC 系统、行人/车辆轨迹预测 — IMM 是事实标准。Apollo / Autoware 的 perception 模块的 multi-object tracker 都有 IMM 选项。
进一步
机动目标跟踪是一整个学科。《机动目标跟踪的多模型滤波理论与方法》 (周宏仁 等) 是中文圈最详细的教材。Bar-Shalom Estimation with Applications to Tracking and Navigation 是英文权威。
5. 速查
| 变体 | 一句话 | 主战场 | 与主流 KF 关系 |
|---|---|---|---|
| EnKF | 用 样本表示协方差,避免显式 | 地球科学、大气海洋同化 | 状态维度 主流 KF |
| Augmented State KF | 把麻烦 (有色噪声 / 偏置 / 时延) 并入状态 | 雷达、IMU bias、MSCKF | 标准 KF/EKF 的扩展用法 |
| IMM | 多模型并行 + 概率加权 | 机动目标跟踪 | 不是单一滤波器,是"多 KF 的元结构" |
References
- Evensen, G. (1994). Sequential data assimilation with a nonlinear quasi-geostrophic model using Monte Carlo methods to forecast error statistics. J. Geophysical Research. — EnKF 原始论文
- Evensen, G. (2009). Data Assimilation: The Ensemble Kalman Filter (2nd ed.). Springer. — EnKF 系统教材
- Bar-Shalom, Y., Li, X. R., & Kirubarajan, T. (2001). Estimation with Applications to Tracking and Navigation. Wiley. — Augmented State KF、IMM 的英文权威
- Blom, H. A. P., & Bar-Shalom, Y. (1988). The Interacting Multiple Model Algorithm for Systems with Markovian Switching Coefficients. IEEE T-AC. — IMM 原始论文
- Mazor, E., Averbuch, A., Bar-Shalom, Y., & Dayan, J. (1998). Interacting Multiple Model Methods in Target Tracking: A Survey. IEEE T-AES. — IMM 综述
- 周宏仁 等. 机动目标跟踪. 国防工业出版社. — 中文权威教材,IMM + 多模型滤波详细
- 三脚猫Frank, 卡尔曼滤波器详解 — 从零开始 (1) — 原 K2E "其他 KF" note 引用 (覆盖随机过程 + KF 基础 + shaping filter,对 §3 Augmented State KF 的"白化处理"理论铺垫有用)
- 三脚猫Frank, 卡尔曼滤波器详解 — 从零开始 (2) — Part 2,BLUE / OLS / WLS / RLS
- 梦里寻梦, 通俗易懂理解 — 卡尔曼滤波与扩展卡尔曼滤波 — KF/EKF + 毫米波雷达坐标变换示例 + 简短 IMM 介绍 (本文 §4 IMM 描述参考此文末段)
- ESA. Data Assimilation 2 — Ensemble Kalman Filter (PDF). — 原 K2E "其他 KF" note 引用,链接已失效