视觉SLAM十四讲第二讲

第二章 初识 SLAM

1、相机分类
相机可以分为单目相机(Monocular)、双目相机(Stereo)和深度相机(RGB-D)三大类。
1)单目相机
只使用一个摄像头进行 SLAM 的做法称为单目SLAM(Monocular SLAM)。这种传感器结构特别简单,成本特别低,所以单目 SLAM 非常受研究者关注。
照片本质上是拍摄某个场景(Scene)在相机的成像平面上留下的一个投影。它以二维的形式记录了三维的世界。显然,这个过程丢掉了场景的一个维度,也就是所谓的深度(或距离)。在单目相机中,我们无法通过单张图片来计算场景中物体与相机之间的距离(远近)。
由于单目相机拍摄的图像只是三维空间的二维投影,所以,如果真想恢复三维结构,必须改变相机的视角。在单目 SLAM 中也是同样的原理。我们必须移动相机,才能估计它的运动(Motion),同时估计场景中物体的远近和大小,不妨称之为结构(Structure)。
单目 SLAM 估计的轨迹和地图将与真实的轨迹和地图相差一个因子,也就是所谓的尺度(Scale)➀。由于单目 SLAM 无法仅凭图像确定这个真实尺度,所以又称为尺度不确定性(Scale Ambiguity)。
2)双目相机
双目相机由两个单目相机组成,但这两个相机之间的距离﹝称为基线(Baseline)﹞是已知的。我们通过这个基线来估计每个像素的空间位置——这和人眼非常相似。我们人类可以通过左右眼图像的差异判断物体的远近,在计算机上也是同样的道理。如果对双目相机进行拓展,也可以搭建多目相机,不过本质上并没有什么不同。
计算机上的双目相机需要大量的计算才能(不太可靠地)估计每一个像素点的深度,相比于人类真是非常笨拙。双目相机测量到的深度范围与基线相关。基线距离越大,能够测量到的就越远,所以无人车上搭载的双目通常会是个很大的家伙。双目相机的距离估计是比较左右眼的图像获得的,并不依赖其他传感设备,所以它既可以应用在室内,亦可应用于室外。双目或多目相机的缺点是配置与标定均较为复杂,其深度量程和精度受双目的基线与分辨率所限,而且视差的计算非常消耗计算资源,需要使用 GPU 和 FPGA 设备加速后,才能实时输出整张图像的距离信息。因此在现有的条件下,计算量是双目的主要问题之一
3)深度相机(RGB-D相机)
其最大的特点是可以通过**红外结构光或 Time-of-Flight(ToF)**原理,像激光传感器那样,通过主动向物体发射光并接收返回的光,测出物体与相机之间的距离。即通过物理手段测量,所以相对于双目节省了大量的计算量。
不过,现在多数 RGB-D 相机还存在测量范围窄、噪声大、视野小、易受日光干扰、无法测量透射材质等诸多问题,在 SLAM 方面,主要用于室内,室外则较难应用。
2、经典视觉 SLAM 框架
经典视觉SLAM框架
整个视觉 SLAM 流程包括以下步骤。
1) 传感器信息读取。在视觉 SLAM 中主要为相机图像信息的读取和预处理。如果是在机器人中,还可能有码盘、惯性传感器等信息的读取和同步。
2)视觉里程计(Visual Odometry,VO)。视觉里程计的任务是估算相邻图像间相机的运动,以及局部地图的样子。VO 又称为前端(Front End)。
3)后端优化(Optimization)。后端接受不同时刻视觉里程计测量的相机位姿,以及回环检测的信息,对它们进行优化,得到全局一致的轨迹和地图。由于接在 VO 之后,又称为后端(Back
End)。
4) 回环检测(Loop Closing)。回环检测判断机器人是否到达过先前的位置。如果检测到回环,它会把信息提供给后端进行处理。
5) 建图(Mapping)。它根据估计的轨迹,建立与任务要求对应的地图。
3、SLAM 问题的数学表述
运动方程:uk 是运动传感器的读数或者输入,wk 为该过程中加入的噪声。
运动方程
观测方程:当小萝卜在 xk 位置上看到某个路标点 yj,产生了一个观测数据 zk,j,vk,j 是这次观测里的噪声。
观测方程
根据系统的真实运动和传感器的种类,存在着若干种参数化方式(Parameterization)。
但我们保持通用性,把它们取成通用的抽象形式,那么 SLAM 过程可总结为两个基本方程:
在这里插入图片描述
4、kdevelop的安装
https://blog.csdn.net/qq_27806947/article/details/80119294

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值