SLAM
SLAM,simultaneous localization and mapping,同步定位与建图。即将一个机器人放入未知环境中的未知位置,是否有办法让机器人一边移动一边逐步描绘出此环境完全的地图,同时一边决定机器人应该往哪个方向行进。在1986年被提出。
SLAM是使机器能自主移动的核心技术
SLAM通过传感器获取的信息来进行当前位姿的推算、轨迹估计与环境建图,相比传统的卫星导航、惯性导航、路标导航等定位方式,SLAM技术的所有算法都是围绕传感器收集的信息来展开的。
目前用在SLAM上的Sensor主要分两大类,激光雷达和摄像头。
SLAM的具体步骤
总体来说,SLAM技术大致包含了感知、定位、建图三个过程:
①感知——机器人通过传感器(激光雷达或视觉传感器)来获取周围环境的信息。
②定位——通过传感器实时获取自身位置及姿态。
③建图——根据自身位置及传感器获取的信息,描述出当下所在环境的地图
感知是实现SLAM的必要条件,只有先感知到周围的环境信息,才能可靠确定定位及构建环境地图。
当你来到一个陌生的环境时,为了迅速熟悉环境并完成自己的任务(比如找饭馆,找旅馆),你应当做以下事情: a.用眼睛观察周围地标如建筑、大树、花坛等,并记住他们的特征(特征提取) b.在自己的脑海中,根据双目获得的信息,把特征地标在三维地图中重建出来(三维重建) c.当自己在行走时,不断获取新的特征地标,并且校正自己头脑中的地图模型(bundle adjustment or EKF) d.根据自己前一段时间行走获得的特征地标,确定自己的位置(trajectory) e.当无意中走了很长一段路的时候,和脑海中的以往地标进行匹配,看一看是否走回了原路(loop-closure detection)。实际这一步可有可无。 以上五步是同时进行的,因此是simultaneous localization and mapping
目前已经有众多SLAM算法