扩展卡尔曼滤波
Extended Kalman FilterEKF常用把非线性系统在当前估计点线性化,再套用卡尔曼滤波做状态估计的方法。
扩展卡尔曼滤波是卡尔曼滤波在非线性系统上的推广,20 世纪 60 年代主要在 NASA 艾姆斯研究中心为导航问题发展起来。标准卡尔曼滤波只适用于线性模型;EKF 每一步用雅可比矩阵(各输出对各状态的偏导数)把非线性的运动模型和观测模型在当前估计点做一阶泰勒展开,再照常执行「预测—更新」:先用运动模型推算新状态和不确定度,再用传感器读数修正。它计算量小、实现成熟,是导航领域的事实标准;但它只是近似,非线性很强时可能发散,这时可换无迹卡尔曼滤波或误差状态卡尔曼滤波。足式机器人常用它融合 IMU 和腿部运动学,估计机身位姿和速度。
例子ROS 的 robot_localization 包提供 ekf_localization_node,可把轮式里程计、IMU、GPS 等任意多路数据融合,输出 15 维状态:三维位置、姿态(横滚/俯仰/偏航)、线速度、角速度和线加速度。
- 也叫
- 扩展卡尔曼滤波器
- 相关
- 卡尔曼滤波、无迹卡尔曼滤波、误差状态卡尔曼滤波、状态估计、腿式里程计、多传感器融合
- 来源
- Wikipedia: Extended Kalman filter
robot_localization 文档首页(ekf_localization_node,15 维状态)
State Estimation for Legged Robots - Consistent Fusion of Leg Kinematics and IMU (Bloesch et al., RSS 2012)