SLAM学习笔记(一)

什么是SLAM?

SLAM(Simultaneous Localization and Mapping),中文译作同时定位与地图创建。它是指搭载特定传感器的主体,在没有环境先验信息的情况下,于运动过程中建立环境的模型,同时估计自己的运动。(源自:视觉SLAM十四讲)我想这官话听起来拗口,让人感觉云里雾里的,所以我找了一个形象的例子来帮助大家理解。相信不少朋友家都有扫地机器人吧,要知道市面上的大部分扫地机器人只具有简单的避障功能,在室内随机游走,遇到障碍物就转弯,这样会导致有很多地方会漏掉,扫地效率非常低。要想实现真正的智能清扫需要具体哪些条件呢?扫地机器人至少需要知道以下几件事情:

  • 我在哪里?也就是扫地机器人在工作过程中要知道自己在房间的具体位置。对应的术语叫:定位(Localization)
  • 我所处于的环境是什么样子?也就是扫地机器人需要知道整个房间的地面结构信息。对应的术语叫:建图(Mapping)
  • 我怎样到达指定地点?当扫地机器人电量不足时,如何以最短的路径到达充电器所在位置进行自动充电。对应的术语叫:路径规划(Route Planning)。当然SLAM主要是解决前两个问题。

定位和建图是两个相辅相成的过程,地图可以提供更好的定位,而定位也可以进一步扩建地图。

SLAM传感器

事实上,SLAM的实现方式与难度和传感器密切相关,用于SLAM的传感器主要分为两大类:激光雷达、视觉传感器。

激光雷达

激光雷达可以提供机器人与周围环境的距离信息。常见的激光雷达有SICK、Velodyne、Rplidar等。

激光雷达的技术方案有如下几个特点:

1、精度很高,比较稳定。

2、速度快,计算量也不大,容易做成实时SLAM

3、理论研究成熟。激光雷达用于SLAM的技术方案(EKF-SLAM)因为研究较早,现在已经非常成熟。当然人们也对EKF-SLAM的缺点也有较清楚的认识。

4、笨重。激光雷达比普通的摄像头在空间体积上大了不少。

5、价格昂贵。激光雷达成本很高,因此激光的研究主要集中于如何降低传感器的成本上。

视觉传感器

视觉SLAM是最近几年SLAM研究热点之一。它有如下几个特点:

1、价格便宜。

2、体积小,重量轻。

3、可以获取丰富且直观的信息。

4、计算量大。往往信息量和计算量是成正比的,视觉SLAM中的特征点检测、匹配等过程非常耗时。不过随着CPU、GPU处理器速度的飞速发展,很多以前被认为无法实时化的视觉算法,得以近乎实时化地运行。

5、需要一定的假设条件。比如视觉算法无法在无纹理区域进行。

视觉SLAM传感器主要分为三大类:单目、双目(或多目)、深度相机(RGB-D)。

就实现难度而言,这三类方法难易程度从难到易依次为:单目相机、双目相机、RGB-D。

单目相机

只使用一个摄像头进行SLAM的做法称为单目SLAM(Monocular SLAM),其优势是传感器特别的简单、成本特别的低,所以单目SLAM非常受研究者关注。最常见的单目相机数据是:照片。照片,本质上是拍照时的场景在相机的成像平面上留下的一个投影。也就是以二维的形式来反应三维的世界。显然,这个过程丢失了一个维度,这个维度便是深度,也就是我们拍摄的物体离摄像机的距离。失掉距离这一维度会导致我们无法判断物体的远近以及大小。

单目相机有如下几个特点:

1、单目SLAM只能估计一个相对深度。由于绝对深度未知,单目SLAM没法得到机器人运动轨迹以及地图的真实大小。直观地说,如果把轨迹和地图同时放大两倍,单目看到的像是一样的。

2、单目相机必须通过运动才能获取深度。它无法仅根据一张图像获得图像中物体离自己的相对距离。为了估计这个相对深度,单目SLAM要靠运动中的三角测量,来求解相机运动并估计像素的空间位置。也就是说,它的轨迹和地图,只有在相机运动之后才能收敛,如果相机不进行运动时,就无法得知像素的位置。

3、相机必须进行旋转和平移。相机运动还不能是纯粹的旋转,这就给单目SLAM的应用带来了一些麻烦,好在日常使用SLAM时,相机都会发生旋转和平移。

4、既可以用于室内,又可以用于室外。

双目相机

双目相机由两个单目相机组成,这两个相机之间的距离称为基线,基线是已知的。双目相机需要大量的计算才能估计每一个像素点的深度,并且双目相机的测量到的深度为范围会受基线大小的影响。双目或多目相机配置与标定均较为复杂,其深度量程也受双目的基线与分辨率限制,而且视差的计算非常消耗计算资源。

深度相机(又称RGB-D)

RGB-D相机是一种可以获得彩色图并测量深度的相机。目前常用的RGBD相机包括Kinect一代、Kinect 二代、Xtion、Realsense等。RGB-D相机有如下特点:

1、一般通过结构光或Time-of-Flight原理,直接测出物体离摄像头的距离。相对于双目立体视觉,它的速度非常快,可以用于实时应用。

2、它比单目或双目相机能够提供更丰富的信息。

3、现在多数RGBD相机还存在视场角小、分辨率低等诸多问题。主要用于室内SLAM。

猜你喜欢

转载自blog.csdn.net/weixin_32888153/article/details/85076371
今日推荐