视觉SLAM十四讲 第2讲 初识slam

第二讲 初识SLAM

今天开始再系统的学习一遍高博的十四讲,在这里做一些笔记,打算开学前能写完。

一、引言

常用的相机

SLAM中使用的相机往往比我们熟悉的单反相机等更加简单,能够以一定的速率拍摄周围的环境,形成一个连续的视频流。按照工作方式可以分为:

  • 单目相机(Monocular)
  • 双目相机(Stereo)
  • 深度相机(RGB-D)
单目相机

照片实质是拍照时的场景在相机的成像平面,它以二维的形式反映了三维的世界。因而丢掉了场景的深度(距离)信息。在单目相机中,我们无法从单张照片来计算场景中物体与我们之间的距离,只能通过移动相机才能估计出它的运动。但是单目SLAM估计的轨迹和地图总和真是的轨迹和地图相差一个因子,即所谓的尺度,单目SLAM无法仅通过图像确定这个真实尺度,成为尺度不确定性。种种问题给单目SLAM的应用带来了诸多不便。

双目相机和深度相机

单目SLAM的问题根本在于无法通过单张图片获取深度信息。而双目相机和深度相机可以弥补这一缺点。双目相机可以根据两个相机之间的距离(基线)来估计每个像素的空间位置。双目相机既可以在室外工作也可以在室内工作,但其配置和标定较为复杂,且需要消耗大量的计算资源。
深度相机,其最大的特点是可以通过红外结构光或Time-of-Flight(TOF)原理,主动向物体发射光,并接受返回的光,测出物体与相机之间的距离。利用深度相机测距可以节省大量的计算,但多数的深度相机目前还存在测量范围窄,噪声大,视野小,易受日光干扰,无法测量投射材质等问题。

二、经典视觉SLAM框架

在这里插入图片描述

视觉里程计

视觉里程计(Visual Odometry, VO)的任务是估算相邻图像间相机的运动,以及局部地图的样子,VO又称前端。仅仅通过视觉里程计,看似可以解决SLAM问题,但是视觉里程计(在最简单的情况下)只估计两个图像间的运动,这将带来不可避免的累计漂移。因此还需要两种技术:后端优化和回环检测。

后端优化

后端优化(Optimization)接受不同时刻视觉里程计测量的相机位姿,以及回环检测的信息,对他们进行优化,得到全局一致的轨迹和地图。后端优化主要处理SLAM中的噪声问题,即这些噪声是如何从上一个时刻传递到下一个时刻的,而我们对当前的估计又有多大的自信。

回环检测

回环检测(Loop Closing)判断机器人是否到达过先前位置。如果检测到回环,他会把信息提供给后端进行处理。回环检测主要解决位置估计随时间漂移的问题,如果有了充分而且正确的回环检测,就可以消除累计误差,得到全局一致的轨迹和地图。

建图

建图(Mapping)根据估计的轨迹,建立与任务要求对应的地图。
地图大体上可以分为度量地图和拓扑地图两种:度量地图可分为稀疏和稠密两种,对于定位而言,稀疏地图就可达到要求,而对于导航来说,则需要更多的是稠密地图。拓扑地图则更强调地图元素之间的关系。

三、SLAM问题的数学表述

运动与观测

运动:考虑从k-1时刻到k时刻,机器人的位置x是如何变化的。
观测:假设机器人在k时刻于 x k x_k xk处探测到了一个路标 y j y_j yj,考虑这件事如何用数学语言来描述。

运动方程

u k u_k uk来表示运动传感器的读数即输入, w k w_k wk为噪声,则:
x k = f ( x k − 1 , u k , w k ) x_k = f(x_{k-1}, u_k, w_k) xk=f(xk1,uk,wk)

观测方程

当机器人在 x k x_k xk位置观察到某个路标点 y j y_j yj,产生了一个观测数据 z k , j z_{k,j} zk,j,则:
z k , j = h ( y j , x k , v k , j ) z_{k, j} = h(y_j, x_k, v_{k,j}) zk,j=h(yj,xk,vk,j)

这两个方程描述了最基本的SLAM问题,当知道运动测量的读数u,以及传感器的读数z时,如何求解定位问题(估计x),和建图问题(估计y)。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YWL0720

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值