SLAM 是 Simultaneous Localization and Mapping 的缩写, 中文译作 “同时定位与地图构建”。它是指搭载特定传感器的主体 , 在没有环境先验信息的情况下,于运动过程中建立环境的模型,同时估计自己的运动。如果这里的传感器主要为相机,那就称为 “视觉 SLAM”。
传感器分为两类,一种是外质的(安装在环境中),另一种是内质的(安装在机器人本身,可以随时移动)。
这里我们讨论相机,主要是分为单目相机(Monocular)、双目相机(Stereo)和深度相机(RGB-D)三大类。
我们先来看下整体的宏观架构图:
这里通俗的理解就是假如一个机器人,通过传感器获取到了一些列数据,经过一顿的折腾,最后知道原来我在这里,周围原来是这个样子。
整个视觉 slam 流程如下:
1.传感器信息读取。在视觉 SLAM 中主要为相机图像信息的读取和预处理。如果是在机器人中 、还可能有码盘 、惯性传感器等信息的读取和同步。(简单理解就是获取我们需要的数据)
2.前端视觉里程计(Visual Odometry, VO)。视觉里程计的任务是估算相邻图像间相机的运动 , 以及局部地图的样子。VO 又称为前端(Front End)。
3.后端(非线性)优化(Optimization)。后端接受不同时刻视觉里程计的相机位姿,以及回环检测的信息,对它们进行优化,得到全局一致的轨迹和地图。由于接在 VO 之后,又称为后端(Back End)
4.回环检测(Loop Closure Detection)。同环检测判断机器人是否到达过先前的位置。如果检测到同环,它会把信息提供给后端进行处理。
5.建图(Mapping) 。它根据估计的轨迹,建立与任务要求对应的地图。
参考文献
《视觉 SLAM 十四讲从理论到实践》 高翔,张涛
| 留言与评论(共有 0 条评论) “” |