「SLAM」十四讲:第1、2讲 预备知识+初识SLAM

本书内容

  • SLAM:Simultaneous Localization and Mapping,同时定位与地图构建;SLAM的目的是解决“定位”与“地图构建”

基础知识支撑

  • 线性代数
  • 概率统计
  • C++
  • Linux
  • Vim

第一讲:预备知识

1.1 本书讲什么

SLAM第一节概述

1.2 如何使用本书

每一讲对应一个固定主题,穿插理论和实践两部分,理论在前,实践在后。本节还对每一讲的主要内容进行了概述。指明本书所有代码在github上的托管未知

1.3 风格约定

主要是对本书的数学公式、代码的格式进行说明

第二讲:初识SLAM

主要内容包括:

  • SLAM组成模块,对应任务
  • 编程环境搭建
  • Linux编译、运行、调试程序
  • cmake基本使用

2.1 引子:小萝卜的例子

当我们需要机器人能够具备自主运动能力,就需要给机器人安装轮子,还需要规划和控制来负责机器人的运行,需要感知告诉机器人周边环境。因此机器人需要做好定位建图两个工作,明确自己的位置和周边环境。这就需要加入传感器来协助。

传感器根据安装位置主要分为两类:在机器人本体、安装在环境。下面是一些不常见的传感器说明:

  • 轮式编码器:测量轮子转动的角度
  • 惯性测量单元(IMU):测量角速度、加速度

SLAM下还划分了视觉SLAM和激光SLAM,前者指使用相机完成定位和建图,后者指使用激光完成定位和建图。

相机的类别包括单目相机、双目相机和深度相机(RGB-D)

2.1.1 单目相机和单目SLAM

使用单目相机完成SLAM的做法称为单目SLAM。

估计场景中物体的远近和大小称为估计结构;不同物体在运动的视觉中表现出的差异叫做视差;单目SLAM估计的轨迹和地图与真实的轨迹和地图之间相差一个因子,称为尺度,例如相机拍摄的人我们从照片上并不能知道对方的真实身高,只能看到照片上那个人的占据照片的大致长度,将长度转换为真实身高的映射,就是尺度。尺度不确定性指的是无法通过单目相机确定真实的尺度。

2.1.2 双目相机和深度相机

双目相机和深度相机正是为了解决物体与相机之间的距离而产生。双目相机通过视差,属于软件手段。深度相机通过红外结构光/ToF测量,属于物理手段。一旦知道距离,场景的三维结构就可以通过单个图像恢复,同时消除尺度不确定性。

人利用左右眼睛能够大致判断物体与自身的距离,双目相机也是同样道理,双目相机之间的距离成为基线。但双目相机的缺点是部署与标定比较复杂,且深度量程和精度受限于双目基线与分辨率,视差计算也非常消耗计算资源。

(此处插入一个FPGA介绍:什么是FPGA?
(此处插入一个ToF介绍:Time of flight相机原理

2.2 经典视觉SLAM框架

经典视觉SLAM框架包括:传感器信息读取、前端视觉里程计、后段非线性优化、回环检测、建图。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值