我一直在尝试为机器人实现一个导航系统,该系统使用惯性测量单元 (IMU) 和已知地标的摄像头观察,以便在其环境中定位自己。我选择了间接反馈卡尔曼滤波器(又名错误状态卡尔曼滤波器,ESKF)来执行此操作。我在扩展 KF 方面也取得了一些成功。
我已经阅读了很多文本,我用来实现 ESKF 的两篇文章是“错误状态 KF 的四元数运动学”和“用于 IMU-Camera Calibration 的基于卡尔曼滤波器的算法”(付费墙的论文,google-able) . 我使用第一个文本是因为它更好地描述了 ESKF 的结构,第二个是因为它包含有关视觉测量模型的详细信息。在我的问题中,我将使用第一个文本中的术语:“名义状态”、“错误状态”和“真实状态”;其中指的是 IMU 积分器、卡尔曼滤波器,以及两者的组合(标称减去误差)。
下图显示了我在 Matlab/Simulink 中实现的 ESKF 的结构;如果您不熟悉 Simulink,我将简要解释该图。绿色部分是标称状态积分器,蓝色部分是 ESKF,红色部分是标称状态和错误状态的总和。“RT”块是可以忽略的“速率转换”。
我的第一个问题:这个结构正确吗?
我的第二个问题:测量模型的误差状态方程是如何得出的? 就我而言,我尝试使用第二个文本的测量模型,但它不起作用。
亲切的问候,