视觉SLAM入门十四讲

  • 写在前面的话
  • 什么是视觉SLAM
  • 视觉SLAM中所使用的摄像头传感器
    • 单目摄像头
    • 双目摄像头
    • 深度摄像头
  • 经典视觉SLAM框架

写在前面的话

考研期间迷上了SLAM,买来了高翔、张涛等著的《视觉SLAM十四讲——从理论到实践》,感悟颇深,作文记之。愿心之所向,梦亦同趋。

什么是视觉SLAM

SLAM是Simulataneous Location and Mapping的缩写,中文译为“同时定位与地图构建”。通俗来讲就是两个部分,“定位”与“建图”。同时此处所用的传感器主要为摄像头,故称为视觉SLAM。

视觉SLAM中所使用的摄像头传感器

如上所讲,视觉SLAM需要实现的两个部分——“定位”与“建图”,即带有哲学性质的两个提问,“我在哪里?”,“我周围是怎么样?”。通过眼睛观察,人类可以轻而易举地回答这两个问题,而机器人要实现这个目标,也需要有眼睛,传感器,就是机器人的眼睛。而安装于环境中的传感器,对环境的要求比较高,实际应用中,机器人的使用环境往往是多种多样的,这就意味着,使用携带式的传感器是我们重点关心的一个问题。而视觉SLAM中所需要的摄像头,需要以一定速率拍摄周围的环境,形成一个连续的视频流。按照工作方式不同,摄像头可以分为单目摄像头(Monocular)、双目摄像头(Stereo)以及深度摄像头(RGB-D)。下面对着三种摄像头以及它们的工作方式分别进行介绍。

单目摄像头

顾名思义,单目摄像头只有一个镜头。而摄像头所拍摄的图像是三维图像在二维世界的投影,要想恢复三维结构,必须移动摄像头。通过一个很简单的生活常识:近处的物体移动得快,看起来大,远处的物体移动地慢,看起来小。 我们可以通过摄像头在移动时产生的视差来对物体远近进行相对定量的判断。需要注意此处得到的物体远近是相对的,可以通过特摄剧来理解,我们无法判断是怪兽摧毁了高楼大厦,还是穿着怪兽皮套的演员摧毁了高楼模型。进一步理解,我们可以认为,单目摄像机得到的图像,是将真实的三维世界的投影乘以一个因子进行了缩放,这个因子可称为尺度,由于这个尺度是不确定的,故单目摄像头具有尺度不确定性。但要注意,单目摄像机可以确定深度,但需要平移之后才能计算深度,加上无法确定尺度,这给"SLAM“带来了很大的麻烦。

双目摄像头

双目摄像头,双目摄像头是由两个单目摄像头组成,该两个单目摄像头的距离是已知的,我们称他为基线,据此通过复杂的计算可以得到深度,但此处的计算是通过软件算法实现的,比较占用系统资源,需要使用GPU、FPGA等设备来进行加速。计算量是双目摄像头目前最主要的问题。

深度摄像头

深度摄像头即RGB-D摄像头,它最大的特点是通过红外结构或Time-of-Flight(ToF)原理,笔者参加全国大学生智能汽车竞赛时曾使用过ToF模块进行距离测量,效果比较好。深度摄像头通过主动发出红外光并接收返回的光,来得到物体与摄像头之间的距离。通过物理的方式进行深度的获取,在对比双目摄像头来说有较大的优势,可以很好地节省计算资源。

经典视觉SLAM框架


经典视觉SLAM的结构框架由以下步骤组成:

  1. 传感器信息读取。传感器是机器人的眼睛。在视觉SLAM中,主要是对相机获取的图像进行预处理。
  2. 前端视觉里程计(VO)。 视觉里程计的任务是估算相邻图像间相机的运动,以及局部地图是如何的。又称为前端
  3. 后端(非线性化)优化。 后端接收前端获取的相机位姿信息以及回环检测的信息,进行优化、处理,得到较好的全局地图。
  4. 回环检测。 判断机器人之前是否到过同样的位置。
    经典视觉

视觉SLAM入门十四讲相关推荐

  1. slam入门——十四讲笔记(一)

    文章目录 第1讲 预备知识 第1部分 数学基础 第2讲 初识SLAM 2.1 引子:小萝卜的例子 2.2 经典视觉SLAM框架 2.3 SLAM问题的数学表述 2.4 实践:编程基础 1. 安装Lin ...

  2. 深蓝视觉SLAM课程第四讲--相机模型,非线性优化(G2O)

    课程Github地址:https://github.com/wrk666/VSLAM-Course/tree/master 0. 内容 对应于十四讲中的第5讲和第6讲 回顾十四讲P24-26 1. 针 ...

  3. 「SLAM」十四讲:第1讲 预备知识

    1 本书内容 SLAM:Simultaneous Localization and Mapping,同时定位与地图构建:SLAM的目的是解决"定位"与"地图构建" ...

  4. 视觉SLAM十四讲 ch3 Ubuntu18.04 KDevelop的使用及Eigen实践 入门笔记

    视觉SLAM十四讲 ch3 Ubuntu18.04 KDevelop的使用及Eigen实践 入门笔记 一.创建KDevelop项目 二.编写程序 一.创建KDevelop项目 你的电脑上如果还没有安装 ...

  5. slam入门3:2D-2D对极几何中的对极约束公式详细解释(参考 视觉slam十四讲)

    声明:下面一些内容引用了高翔的视觉slam十四讲, 感谢作者. 对于我这种刚入门的小白(cai bi)来说,对极约束公式中的某些步骤理解起来还是有些难度的,下面把个人对相关内容的理解写下来,以备日后翻 ...

  6. 【视觉SLAM入门】一些关于视觉SLAM十四讲的重要基础概念

    文章目录 高翔. *视觉SLAM十四讲 从理论到实践*. 电子工业出版社, 2017. Print. 第二章:初识SLAM 第三章:三维空间刚体运动 第四章:李群与李代数 第五章:相机与图像 第六章: ...

  7. 视觉SLAM十四讲学习笔记-第二讲-开发环境搭建

    专栏系列文章如下: 视觉SLAM十四讲学习笔记-第一讲_goldqiu的博客-CSDN博客 视觉SLAM十四讲学习笔记-第二讲-初识SLAM_goldqiu的博客-CSDN博客 ​​​​​​​ lin ...

  8. tensorflow 语义slam_研究《视觉SLAM十四讲从理论到实践第2版》PDF代码+《OpenCV+TensorFlow深度学习与计算机视觉实战》PDF代码笔记...

    我们知道随着人工神经网络和深度学习的发展,通过模拟视觉所构建的卷积神经网络模型在图像识别和分类上取得了非常好的效果,借助于深度学习技术的发展,使用人工智能去处理常规劳动,理解语音语义,帮助医学诊断和支 ...

  9. 《视觉SLAM十四讲 第二版》笔记及课后习题(第一讲)

    前言 之所以想要写这个系列的博客,是因为想要总结一下高博的<SLAM视觉十四讲第二版>的各章内容以及自己对书后习题的一些做法,也算是对自己学习过程的一个总结和回顾.博客分为两个大部分,即读 ...

  10. 半闲居士视觉SLAM十四讲笔记(2)初识 SLAM- part 2 linux CMake、Kdevelop

    本系列文章由 youngpan1101 出品,转载请注明出处. 文章链接: http://blog.csdn.net/youngpan1101/article/details/71085778 作者: ...

最新文章

  1. java 整合hadoop_Spark 如何摆脱java双亲委托机制优先从用户jar加载类?
  2. 阿里云机器学习PAI构建AI集团军作战,联手Intel在AI软硬件领域发力
  3. ORA-28056:Writing audit records to Windows Even...
  4. mysql da_DA面板如何管理Mysql数据库?
  5. 由Dvbbs PHP 0day引发的争论
  6. 使用ExchangeRate-API查询免费可用的汇率数据
  7. AOC萌新探索:搭建和体验在线AOC环境
  8. FISCO BCOS (六)———ubantu安装mysql5.7
  9. java新增mysql时 中文出现_Java项目往数据库中插入数据,出现中文乱码
  10. python无限弹窗1.0
  11. python zen_The Zen of Python(Python 之禅) - by Tim Peters
  12. 重庆邮电大学801信号与系统考研最核心知识点
  13. 中国省市地图JSON数据下载
  14. SEO网站关键词挖掘策略
  15. Java 小白 声明两个字符串:一个是“宋江,卢俊义,林冲,鲁智深,武松“;另一个是“及时雨,玉麒麟,豹子头,花和尚,行者“。以逗号为分隔符分割两个字符串,然后将人物绰号和名字拼接在一起并输出。
  16. xamp环境搭建Pikachu实验环境搭建
  17. win10更新之后解决任务栏卡顿问题
  18. 树莓派2代B型性能极限测试
  19. 第十周项目2——贮存班长信息的学生类
  20. [转帖]《今日用友》:封闭的“苹果”

热门文章

  1. 2021 年 五一数学建模比赛 B 题(第四问至第六问)
  2. 数据结构-顺序栈的基本操作(C语言实现)
  3. 计算机课程设计红绿灯,labview红绿灯课程设计报告
  4. 基于SSM+SpringBoot+MySQL的社区管理系统
  5. 计算机打印服务总是自动关闭,打印机服务怎么使用 打印机服务自动关闭怎么解决...
  6. sift vlfeat 学习
  7. 简单安装NetBEUI协议
  8. 【腾讯犀牛鸟开源人才培养计划】开源人才培养计划活动参与指南
  9. NMEA0183格式GPS数据详解
  10. PDF区域文本提取工具