5,SLAM的处理过程

SLAM过程包括许多步骤,该过程的目标是使用环境更新机器人的位置。由于机器人的里程计通常是存在误差的,我们不能直接依赖于里程计。我们可以用激光扫描环境来校正机器人的位置,这是通过从环境中提取特征并不断观察机器人移动来实现的。EKF(扩展卡尔曼滤波器)是SLAM过程的核心。EKF负责基于环境特征对机器人位置进行更新,这些环境特征通常被称为LANDMARK,以下我们统称为地标,关于地标,将在接下来的几章中与EKF一起解释。EKF对机器人位置的不确定性以及在环境中所见的地标的不确定性进行了跟踪。

下图给出了SLAM过程的概要。(1、激光传感器对环境特征(地标)进行提取->数据融合给EKF算法;)

当里程计发生变化时,由于机器人的移动的有一个不确定的误差,因此新的机器人位置将基于里程计的更新数据经过EKF处理进行更新。地标将从机器人所处的新的环境中被提取出来,然后机器人试图将这些地标与之前看到的地标联系起来。重新观察的地标被用来更新机器人在EKF中的位置。以前未见过的地标被添加到EKF中作为新的观测依据,以便以后可以重新观测。所有这些步骤将在接下来的章节中以非常实用的方式解释我们的ER1机器人是如何实现的。需要注意的是,在这些步骤中的任何时刻EKF都将对机器人当前的位置进行估计。

下面的图表将试图更详细地解释这个过程:机器人由三角形表示。星星代表地标。机器人最初用传感器测量地标的位置(用闪电表示的传感器测量)。

图2

——————————————————————————————-

根据编码器等出来的里程计数据,机器人认为他自己在如下图3的位置

图3

————————————————————————————–

机器人再次使用传感器测量地标图4的位置,但发现它们与机器人认为它们应该在的位置不匹配(给定机器人的位置)。因此,机器人并不在它根据编码器里程计测算出的图3的位置。

图4

—————————————————————————————————————————–

由于机器人相比里程计位置,更相信激光传感器,所以现在它利用地标所获得的信息来确定自己的位置(机器人最初认为自己的位置由虚线三角形表示)。

图5

——————————————————————————————————————————————-

事实上,机器人却在这里图6实线三角形。激光传感器并不完美,因此机器人无法精确地知道它在哪里。然而,这个激光的传感器估计比仅仅依靠编码器计步法要好。点线三角形表示计步器认为的位置;这个虚线三角形告诉它它才是真的位置;然而EKF算法却不相信他们任何一个是精确地位置,于是他算出了最后一个实线三角形的位置。

图6

 

版权声明:本文为agvcfy原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/agvcfy/p/9373487.html