ORB-SLAM2是如何完成工作的?
第一步:系统会读取摄像头的参数和ORB字典数据,接着初始化整个系统。
第二步:利用ORB算法初始化相机位姿,在完成第一帧图像的特征点的提取后,紧接着可以进行两相 邻帧图像的特征点匹配结果。
第三步:利用匹配的特征点的信息恢复其在三维空间的点的深度,同时确定点的三维空间位置(方法:双目立体视觉中的三角法)。
第四步:初始化得到特征点空间位置后,将一部分满足要求的特征点标记为路标点(Mappoint),利用PnP算法对路标点进行处理,通过给定物的3D点集和对应图像的2D点集,在经过姿态计算之后,得到最终初始化时对应的相机位姿,对应的相机位姿可以由四元数表示。
第五步:得到初始化的相机位姿后,不断重复上述的匹配,跟踪,三角化,计算出每一帧图像的相机位姿,然后在计算出每两帧图像之间的相机的运动变化矩阵(旋转矩阵和平移矩阵),通过图优化的方法对估计的结果做优化,最终形成相机运动的轨迹。

简化过程:
初始化系统----->提取每相邻两帧图像的特征点,进行匹配------>得到三维点的深度和位置------>姿态计算,得到初始化的相机位姿------>重复上述操作,得到两帧之间的运动变换矩阵------>凸优化得到最终相机的运动轨迹

转载总结自:o_ha_yo_yepeng《ORB-SLAM2 + windows + usb摄像头 项目实战(一)》

ORB-SLAM2工作原理总结相关推荐

  1. orbslam2可视化_[Ubuntu] ORB SLAM2 编译调试

    ORB SLAM2 是 2015年比较受到关注的一篇文章,它的主要思想是借助 ORB 描述子改进了 Sparse SLAM 的性能,使得其在稳定性和速度上都达到了比较好的程度.从创新性上来讲,它的主要 ...

  2. Ubuntu下使用单目相机运行ORB SLAM2

    环境:Ubuntu16.04+ROS Kinetic+USB单目摄像头 虽然ORB SLAM2的官方说明中表示没有ROS也可以编译运行,但要实时的跑ORB SLAM2还是需要ROS平台的,所以之前没有 ...

  3. 2021年大数据ELK(十八):Beats 简单介绍和FileBeat工作原理

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 Beats 简单介绍和FileBeat工作原理 一.Beats 二.FileB ...

  4. 深入理解Nginx工作原理

    1 反向代理 1.1 概念 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给intern ...

  5. 高频开关电源原理_程控开关电源的工作原理

    本文介绍了开关电源的工作原理以及它的特点. 程控开关电源要要比线性电源复杂得多. 下图是典型的开关电源工作原理图. 首先对 220 V/50Hz 的 AC 输入,通过桥式整流器进行整流 储能电容对整流 ...

  6. Servlet生命周期与工作原理

    Servlet生命周期分为三个阶段: 1,初始化阶段  调用init()方法 2,响应客户请求阶段 调用service()方法 3,终止阶段 调用destroy()方法 Servlet初始化阶段: 在 ...

  7. java的工作原理你知道吗_每天用Mybatis,但是Mybatis的工作原理你真的知道吗?

    近来想写一个mybatis的分页插件,但是在写插件之前肯定要了解一下mybatis具体的工作原理吧,于是边参考别人的博客,边看源码就开干了. 核心部件:SqlSession Executor Stat ...

  8. linux网络管理原理,Linux__网络管理(物理层 数据链路层 网络层工作原理)

    千锋云计算逆战班11点后打卡 今天学习后,进行复习下,物理层 数据链路层  网络层 的工作原理 物理层关心的两件事情:1.信号 2.介质 先说信号:信号分为模拟信号和数字信号 模拟信号: 模拟信号,不 ...

  9. HDD工作原理 导图

    以上导图介绍了我们使用的 (HDD)机械硬盘的基本构造以及核心工作原理,对于大家扫盲有所帮助 参考文档: https://blog.csdn.net/yizhaoxin/article/details ...

  10. 路由和交换机工作原理

    路由器与交换机的工作原理 计算机网络往往由许多种不同类型的网络互连连接而成.如果几个计算机网络只是在物理上连接在一起,它们之间并不能进行通信,那么这种"互连"并没有什么实际意义.因 ...

最新文章

  1. C#面向对象(一) 封装
  2. CAN'T TAKE MY EYES OF YOU
  3. kmeans算法_实战 | KMeans 聚类算法
  4. 嘉楠发布阿瓦隆浸入式冷却矿机A1066I
  5. vscode安装旧版本插件_2020 我在使用VScode时安装的插件(针对前端开花推荐)
  6. [原创]FineUI秘密花园(二十六) — 选项卡控件概述
  7. 跳转定义_解决tensorflow2.0在Pycharm中的自动补全及跳转定义问题
  8. 谷粒商城:05. 分布式组件SpringCloud Alibaba
  9. tensorflow应用问题记录
  10. 什么是数据脱敏,数据脱敏有哪些方式
  11. 条码专题--条码技术应用
  12. 计算机课外兴趣小组活动教案,科技兴趣小组教案
  13. FLOPS和FLOPs、GFLOPs区别与计算
  14. 【软硬件基础】X86和X64
  15. VR中多模式异步协作的挑战和设计考虑因素
  16. 【Web3 系列开发教程——创建你的第一个 NFT(9)】如何在手机钱包里查看你的 NFT
  17. 【多图】二进制的起源,从01到创造天地万物
  18. python matplotlib坐标轴刻度设置
  19. zcpa matlab,matlab习题结果解析.doc
  20. reverse 函数讲解

热门文章

  1. gstreamer学习(一) gstreamer-rtsp-server环境安装
  2. iOS 格式化输出 位数不足补0
  3. MATLAB 学习笔记(2)MATLAB 矩阵的加减乘除运算
  4. JavaWeb技术内幕八:JVM内存管理
  5. linux工具之jq
  6. POI插入附件到Excle
  7. 《图解密码技术》笔记13:PGP-密码技术的完美组合
  8. android怎么美化ui,安卓教程第一期最终篇(转)systemui.apk最全修改美化
  9. Java中各种类型的转化
  10. labelshop更改打印机_如何快速掌握标签打印软件LabelShop中的功能