0 讲座

(1)SLAM定义

对比雷达传感器和视觉传感器的优缺点(主要介绍视觉SLAM)

单目:不知道尺度信息

双目:知道尺度信息,但测量范围根据预定的基线相关

RGBD:知道深度信息,但是深度信息对距离也有要求

vSLAM(视觉SLAM)

摄像机(主要)+IMU+超声波避障传感器

2016年之后已经可以跑一点DEMO程序了(在刚体的和静态的环境下)

视觉SLAM的几个模块

传感器数据(图像数据采集点云)

视觉里程计(估计摄像机参数)

后端(对摄像机参数优化,因为摄像机误差累积跟IMU一样,因此需要对其优化)

建图(二维图和三维图)

回环检测(若能回来)

2. 视觉里程计

1. 提取特征点:FAST, SIFT, SURF, ORB

2. 匹配:KNN

3. 估计ego-运动

缺点:

1. 特征点必须存在,不能是一堵白墙或者运动太快晃得太厉害,SLAM是有这些假设条件的

2. 解不一定是最优解

ego运动估计

假设相机矩阵已知求解运动的R(旋转)、t()、X(平移)

问题:

1. 不一定有最优解 因为方程非凸

求解最优解的方法

代数法(解析法)

迭代法(数值法)

单目三维点重建

尺度问题

假设两幅图之间移动了一个距离1,而如果不移动呢距离就为0了怎么办

直接法

不提特征点直接求差的平方,这是在慢速运动、平滑运动以及光的条件改变不大的时候,计算量大

书籍:《视觉SLAM十四讲:从理论到实践》高翔

书籍:《视觉SLAM十四讲:从理论到实践》书籍配套代码

slambook

This is the code written for my new book about visual SLAM. It will come in April 2017. I am reviewing the context and codes right now.

It is highy recommended to download the code and run it in you machine because you can learn more and even modify it by doing so. In this repo, the code is stored by chapters like "ch2" and "ch4". Note that chapter 9 is a project so I stored it in the "project" directory.

If you have any questions about the code, please add an issue so I can solve it. Contact me for more information: gaoxiang12 dot mails dot tsinghua dot edu dot cn.

These codes are under MIT license. You don't need permission to use it or change it. But I recommed to cite this book if you are doing academic works.

Citation will be added as soon as the book is officially published.

Please cite: Xiang Gao, Tao Zhang, Qinrui Yan, Yi Liu, 14 Lectures on Visual SLAM: From Theory to Practice, Publishing House of Electronics Industry, 2017.

  • ch1 Preface
  • ch2 Overview of SLAM & linux, cmake
  • ch3 Rigid body motion & Eigen
  • ch4 Lie group and Lie Algebra & Sophus
  • ch5 Cameras and Images & OpenCV
  • ch6 Non-linear optimization & Ceres, g2o
  • ch7 Feature based Visual Odometry
  • ch8 Direct (Intensity based) Visual Odometry
  • ch9 Project
  • ch10 Back end optimization & Ceres, g2o
  • ch11 Pose graph and Factor graph & g2o, gtsam
  • ch12 Loop closure & DBoW3
  • ch13 Dense reconstruction & REMODE, Octomap

高博-《视觉SLAM十四讲》的更多相关文章

  1. 视觉slam十四讲第七章课后习题6

    版权声明:本文为博主原创文章,转载请注明出处: http://www.cnblogs.com/newneul/p/8545450.html 6.在PnP优化中,将第一个相机的观测也考虑进来,程序应如何 ...

  2. 视觉slam十四讲第七章课后习题7

    版权声明:本文为博主原创文章,转载请注明出处:http://www.cnblogs.com/newneul/p/8544369.html  7.题目要求:在ICP程序中,将空间点也作为优化变量考虑进来 ...

  3. 浅读《视觉SLAM十四讲:从理论到实践》--操作1--初识SLAM

    下载<视觉SLAM十四讲:从理论到实践>源码:https://github.com/gaoxiang12/slambook 第二讲:初识SLAM 2.4.2 Hello SLAM(书本P2 ...

  4. 《视觉SLAM十四讲》第2讲

    目录 一 视觉SLAM中的传感器 二 经典视觉SLAM框架 三 SLAM问题的数学表述 注:原创不易,转载请务必注明原作者和出处,感谢支持! 本讲主要内容: (1) 视觉SLAM中的传感器 (2) 经 ...

  5. 《视觉SLAM十四讲》第1讲

    目录 一 视觉SLAM 注:原创不易,转载请务必注明原作者和出处,感谢支持! 一 视觉SLAM 什么是视觉SLAM? SLAM是Simultaneous Localization and Mappin ...

  6. 视觉SLAM十四讲:从理论到实践 两版 PDF和源码

    视觉SLAM十四讲:从理论到实践 第一版电子版PDF 链接:https://pan.baidu.com/s/1SuuSpavo_fj7xqTYtgHBfw提取码:lr4t 源码github链接:htt ...

  7. 高翔《视觉SLAM十四讲》从理论到实践

    目录 第1讲 前言:本书讲什么:如何使用本书: 第2讲 初始SLAM:引子-小萝卜的例子:经典视觉SLAM框架:SLAM问题的数学表述:实践-编程基础: 第3讲 三维空间刚体运动 旋转矩阵:实践-Ei ...

  8. 《视觉SLAM十四讲》学习日志(一)——预备知识

    SLAM简介 : SLAM是 Simultaneous Localization and Mapping 的缩写,中文译作 " 同时定位与地图构建 ".它是指搭载特定传感器的主题, ...

  9. 视觉slam十四讲开源库安装教程

    目录 前言 1.Eigen线性代数库的安装 2.Sophus李代数库的安装 3.OpenCV计算机视觉库的安装 4.PCL点云库的安装 5.Ceres非线性优化库的安装 6.G2O图优化库的安装 7. ...

随机推荐

  1. webserive学习记录1-jdk自带webservice

    最近在看webservice有视频,想年后找工作时增加点资本,视频终于看完了,自己又增加了些东西,现在就把视频中学到的和自己发现的东西总结一下. java jdk中自带一个轻量级的webservice ...

  2. UEFI BIOS和普通BIOS的区别

    作为传统BIOS(Basic Input/Output System)的继任者,UEFI拥有前辈所不具备的诸多功能,比如图形化界面.多种多样的操作方式.允许植入硬件驱动等等.这些特性让UEFI相比于传 ...

  3. Haskell语言学习笔记(20)IORef, STRef

    IORef 一个在IO monad中使用变量的类型. 函数 参数 功能 newIORef 值 新建带初值的引用 readIORef 引用 读取引用的值 writeIORef 引用和值 设置引用的值 m ...

  4. Functional Java 学习笔记

    Functional Java Functional Java是一个在Java语言中实现函数型编程范式的类库. 从接口上看,该类库似乎与Haskell语言关系密切,接口的方法名很多来自该语言. < ...

  5. ios 真机测试与发布详细流程,基于最新的开发者网站,ios7,xcode5(有截图的哦)[[[第一部分真机测试]]]

    转载于:http://blog.csdn.net/lv_ruanruan/article/details/14446597 真机测试及发布详细流程,最新版 第一次一个人搞一个项目,我们老大规定,一个周 ...

  6. 第一个struct2程序

    [第1步] 安装Struts2 这一步对于Struts1.x和Struts2都是必须的,只是安装的方法不同.Struts1的入口点是一个Servlet,而Struts2的入口点是一个过滤器(Filte ...

  7. sqlserver解密加密的存储过程(图解)

    来自博客:http://www.cnblogs.com/wghao/archive/2012/12/30/2837642.html

  8. python中迭代问题

    迭代list的时候不能修改这个list,否则,可能会出错. numbers=[1,0,3,5,0] numbers.sort() print(numbers) print('************* ...

  9. Ecshop模板目录介绍[xyytit]

    一. 模板系统介绍 Ecshop模板系统使用我们自行研发的模板控制系统和著名的PHP开源模板程序Smarty组合而成.为了方便用户开发模板,还使用了Dreamweaver的模板和库的功能Smarty中 ...

  10. JAVA知识积累 给HttpClient添加Socks代理

    本文描述http client使用socks代理过程中需要注意的几个方面:1,socks5支持用户密码授权:2,支持https:3,支持让代理服务器解析DNS: 使用代理创建Socket 从原理上来看 ...