SLAM (simultaneous localization and mapping), 也 称 为 CML (Concurrent Mapping and
Localization), 即时定位与地图构建,或并发建图与定位。
问题可以描述为:将一个机器人放入未知环境中的未知位置,是否有办法让机器人一边逐步描
绘出此环境完全的地图,同时一边决定机器人应该往哪个方向行进。
例如扫地机器人就是一个很典型的 SLAM 问题,所谓完全的地图(a consistent map)是指不
受障碍行进到房间可进入的每个角落。
SLAM 最早由 Smith、Self 和 Cheeseman 于 1988 年提出。
由于其重要的理论与应用价值,被很多学者认为是实现真正全自主移动机器人的关键。
当你来到一个陌生的环境时,为了迅速熟悉环境并完成自己的任务(比如找饭馆,找旅馆),
你应当做以下事情:
a.用眼睛观察周围地标如建筑、大树、花坛等,并记住他们的特征(特征提取)
b.在自己的脑海中,根据双目获得的信息,把特征地标在三维地图中重建出来(三维重建)
c.当自己在行走时,不断获取新的特征地标,并且校正自己头脑中的地图模型(bundle
adjustment or EKF)
d.根据自己前一段时间行走获得的特征地标,确定自己的位置(trajectory)
e.当无意中走了很长一段路的时候,和脑海中的以往地标进行匹配,看一看是否走回了原路
(loop-closure detection)。实际这一步可有可无。
以上五步是同时进行的,因此是 simultaneous localization and mapping