SLAM是一个工程问题,再次复习一下工程中可能用到的名词解释。

还是不要看了,高翔的科普读物已经出版了,读他的《slam十四讲》就可以了。

一、度量相关:

世界坐标系:描述图像的平面坐标系延伸出z轴,可对应描述三维实体,视为世界坐标系。

深度图像:给出了图像描述的世界坐标系的三维相对位置映射信息,其中Z轴信息为深度。选取深度信息的必要性:图像描述:各种维度图像的逻辑描述形式

二、深度获得

双目匹配:双目匹配通过视差算法。参考     参考双目匹配与视差计算

视差/视差算法:双目观测同一物体或者同一物体的一个位置,会有不同的角度,角度差是为视差。主要是通过找出每对图像间的对应关系,根据三角测量原理,得到视差图;在获得了视差信息后,根据投影模型很容易地可以得到原始图像的深度信息和三维信息,为视差算法。OpenCV三种视差算法

分析:视差算法虽然不是可适用任何情况,一般也需要大量的匹配和三角函数计算(文章解释原理)一般固化在硬件中以实现0延时。用软件实现是极其不合算的。

三、射影几何

6DOF:物体的六自由度,标记了物体相对于世界坐标系的六个自由度,分别代表欧式坐标系的三个维度参数(一般用x,y,z藐视各个方向基向量的参数)和三个角度坐标系的角度参数(一般表示为alpha,beta,theta)。

PNP算法:通过PNP算法可以经过一个多点模型解析出特定点集相对于点集模型的三维姿态和缩放尺度,称为“基于模型的位姿估计”。参考:相机位姿估计PNP算法,  1.内参数标定2.
外参数标定即姿态估计问题。从一组2D点的映射中估计物体的3D姿态。3. 从三个对应点中恢复姿态,需要的信息是最少的,称为“三点透视问题”即P3P。同理,扩展到N个点,就称为“PnP”。

P3P:3个点的PNP。

四、优化方法

BA(Bundle Adjustment): 维基百科 BA:Given a set of images depicting a number of 3D points fromdifferent
viewpoints
, bundle adjustment can be defined as the problem of simultaneously refining the 3Dcoordinates describing
the scene geometry, the parameters of the relative motion, and the optical characteristics of the camera(s) employed to acquire the images, according to an optimality criterion involving thecorresponding
image projections of all points.         参考:  光束平差法介绍及应用。一般大型矩阵的分解需要极大的计算量,SLAM中地标地图形成的矩阵一般为稀疏矩阵,因此可以使用sparse BA 方法,降低计算量。

滤波器:                                       参考文章:飞控中实时位姿计算(使用EKF)。文章详细地讲解了公式和推导过程,是否正确自行确定。

五、硬件加速

gpuSift:图像局部显著性—点特征(SiftGPU)

三维重建:SLAM相关的一些术语解释的更多相关文章

  1. 【SSO单点系列】(6):CAS4.0 单点流程序列图(中文版)以及相关术语解释(TGT、ST、PGT、PT、PGTIOU)

    CAS 相关的内容好久没写了,可能下周会继续更新一些内容吧. 在上一篇中的单点流程序列图由于是从官网直接下载来的,上面都是英文,可能有的朋友看不懂,因此修改成中文的. PS:只修改了一个,第二个图明天 ...

  2. 【java】 field 和 variable 区别及相关术语解释

    Having said that, the remainder of this tutorial uses the following general guidelines when discussi ...

  3. k8s~术语解释

    文章参考:https://www.kubernetes.org.cn 简介 Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简 ...

  4. Spring AOP术语解释

    话说,越来越感觉有些人解释概念真的是晦涩难懂,我刚开始学习Spring aop时,对那些切入点,连接点,引入等概念搞得头疼.太多人就直接照搬定义,让我们这些初学者如何理解啊.下面是我找了大量的博客,终 ...

  5. Listening-lecture|主旨题|术语解释|举例原则|Crash course 哔哩哔哩

    Listening-lecture: Major topic: SP1---detail---detail---detail SP2---detail---detail---detail Crash ...

  6. 图像处理术语解释:什么是PRGBA和Alpha预乘(Premultiplied Alpha )

    ☞ ░ 前往老猿Python博文目录 ░ Alpha预乘(Premultiplied Alpha)和PRGBA 一般来说四通道图像数据保存的都是ARGB或RGBA,其R.G.B值还没有进行任何透明化处 ...

  7. vue第六单元(vue的实例和组件-vue实例的相关属性和方法-解释vue的原理-创建vue的组件)

    第六单元(vue的实例和组件-vue实例的相关属性和方法-解释vue的原理-创建vue的组件) #课程目标 掌握vue实例的相关属性和方法的含义和使用 了解vue的数据响应原理 熟悉创建组件,了解全局 ...

  8. Pomelo术语解释

    gate服务器 一个应用的gate服务器,一般不参与rpc调用,也就是说其配置项里可以没有port字段,仅仅有clientPort字段,它的作用是做前端的负载均衡.客户端往往首先向gate服务器发出请 ...

  9. 分布式流式处理框架:storm简介 + Storm术语解释

    简介: Storm是一个免费开源.分布式.高容错的实时计算系统.它与其他大数据解决方案的不同之处在于它的处理方式.Hadoop 在本质上是一个批处理系统,数据被引入 Hadoop 文件系统 (HDFS ...

随机推荐

  1. python json结构

    =====================================================json==============================import reques ...

  2. lambda表达式与委托与线程初步谈论-基于刘铁锰视频观后操作

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  3. 2017 Multi-University Training Contest - Team 4 Classic Quotation

    Classic Quotation Time Limit: 8000/4000 MS (Java/Others)    Memory Limit: 524288/524288 K (Java/Othe ...

  4. 关于新世界的大门(新博客地址:BBBob.cf)

    更新:BBBob.cf 这个域名已经不用了(但是依旧可以访问),永久域名改为了BBBob.win 新博客地址为BBBob.cf,以后的博客都会在新博客更新,当然在新博客上我也会写得更用心些,不再像这里 ...

  5. [hdu2222] [AC自动机模板] Keywords Search [AC自动机]

    AC自动机模板,注意!ch,Fail,lab数组的大小不是n而是节点个数,需要认真计算! #include <iostream> #include <algorithm> #i ...

  6. springCloud学习-分布式配置中心(Spring Cloud Config)

    1.简介 Spring Cloud Config :分布式配置中心,方便服务配置文件统一管理,它支持配置服务放在配置服务的内存中(即本地),也支持放在远程Git仓库中.在spring cloud co ...

  7. install pip 回顾

    在install pip的时候遇到如下问题 1. yum install 想安装一个package 总是提示没有package 可以安装. 但是后来可以了 2. make 和 configure 到底 ...

  8. no_merge hint

    This is tested in 10gR2. SQL> select * from v$version; BANNER ----------------------------------- ...

  9. php 数组 array()

    定义和用法 array() 创建数组,带有键和值.如果在创建数组时省略了键,则生成一个整数键,默认从 0 开始,然后以 1 进行递增. 用 array() 创建一个数组,可使用 => 来分隔键和 ...

  10. [RxJS 6] The Retry RxJs Error Handling Strategy

    When we want to handle error observable in RxJS v6+, we can use 'retryWhen' and 'delayWhen': const c ...