扩展卡尔曼滤波EKF

SLAM过程包含许多步骤,整个过程是为了利用环境来更新机器人的位置。由于机器人中给出自身位置的距离测量往往是不精确的,就不能直接依赖于这种测距机制。我们可以利用对环境的激光扫描来纠正机器人位置,这能通过提取环境的特征来实现,然后当机器人向四周运动时再进行新的观察。扩展卡尔曼滤波EKF是SLAM过程的核心,其基于这些环境特征来负责更新机器人原始的状态位置,这些特征常称为地标。EKF用于跟踪机器人位置的不确定估计以及环境中的不确定地标。

 

扩展卡尔曼滤波EKF_第1张图片

 

 

当机器人移动时,测距信息会改变,EKF使用测距更新来更新这些有关机器人新的位置的不确定状态。涉及到机器人新位置下的环境地标被提取,机器人尝试联系起来这些新的地标与已经观察到的地标。重新观察到的地标用于在EKF中进行机器人位置更新,如果之前没有观察到的地标被加入到EKF中,作为一个新的观察变量,并被用于接下来的再观察过程。

 

扩展卡尔曼滤波EKF_第2张图片

 

图中三角形代表机器人,五角星代表环境地标。初始化过程中,机器人使用传感器来测量这些地标的位置。


扩展卡尔曼滤波EKF_第3张图片

 

机器人进行移动后,图中实线三角形为它认为自己处于的位置,移动的距离可通过机器人的测距系统得到。

 

扩展卡尔曼滤波EKF_第4张图片

 

 

机器人再一次使用传感器来测量这些地标位置,但当机器人发现这些地标与它们原始所认为的位置下的地标不匹配,因此机器人实际上就相信现在的位置并不是它们所认为的位置。

 

扩展卡尔曼滤波EKF_第5张图片

 

 

相较于机器人自身的测距,它更相信它的传感器反馈出的信息,因此便利用地标的实际位置来决定自身的位置。


扩展卡尔曼滤波EKF_第6张图片

 

由于传感器本身的不完美的,所以机器人并不能精确地知道自身在哪里,然而这种基于EKF的位置估计比单纯地依赖测距仪更好。图中的虚线三角形代表机器人认为自己所处于的位置(理解为卡尔曼中的系统状态),点线三角形代表测距仪告诉机器人自己所处于的位置(估计状态),实线三角形为机器人的实际位置。

--------------------- 本文来自 不好取ID吗 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/sky_in_my_mind/article/details/72638317?utm_source=copy

你可能感兴趣的:(SLAM)