当前位置: 首页 > news >正文

V-SLAM重读(1): SVO: Fast Semi-Direct Monocular Visual Odometry

有时间会复习回顾V-SLAM的一些比较重要的论文, 并记录保存.

1.摘要

提出一种 半稠密-直接视觉里程计算法.

这种方法消除了用于运动估计的特征提取和鲁棒匹配技术的成本代价需求.

该方法直接作用于像素的强度, 这样可以在高速率情况下获取次像素级精度.

该方法可以以55Hz~300Hz的速率在无GPS的环境下运行.

2. SVO系统概述

SVO可以分为两个并行线程, 一个相机运动估计线程, 一个是地图构建线程;

  • Motion estimation Thread

    该线程实现了半稠密-直接法的相对位姿估计:

    1.位姿初始化, 基于模型的稀疏图像校准, 通过极小化3D点在相邻图像帧下的投影点的光度误差来估算相机的相对位姿.

    2.特征校准: 2D坐标相对应的反投影点(3D点)

    运动估计包含: 通过极小化反投影误差来获取位姿和场景结构.

  • Mapping Thread

    对每一个2D特征初始化一个深度滤波器, 与之相对应的3D点进行估计.

    1.深度滤波器初始化: 当几个3D-2D的对应点找到时, 一个新的关键帧将会被创建;
    2.初始化的深度滤波器在深度上具有较大的不确定性, 对每一个帧的深度估计将会有贝叶斯估计来更新.

    3.当深度滤波器的不确定性足够小时, 一个新的3D点会被插入到地图中且会被应用于运动估计线程中.

3. 运动估计和深度滤波器

对运动估计, 通过极小化3D点在2D平面像素的投影残差, 来获取相机位姿; 然后对2D特征位姿校准(加入3D局部地图点), 来实现对相机位姿优化.

在这里插入图片描述

利用贝叶斯概率分布, 估计深度值, 结合高斯-均匀混合物模型分布实现深度的估计.

在这里插入图片描述

4. 实现的VO轨迹对比

经过实地调试和优化, 利用高帧率相机可以使得该算法具有较快的更新速率, 以及较高的准确度和稳定性.

在这里插入图片描述

相关文章:

  • C++11回顾学习(4): 语法解析之虚函数与继承
  • ROS回顾学习(10): 项目研究中遇到问题记录2
  • ROS深入学习(1): ROS程序简单调试方式
  • C++ 11回顾学习(5): STL中的vector - map - pair对比
  • V-SLAM重读(2): DSO: Direct Sparse Odometry (DSO)
  • VLP-16第一课: Velodyne的工作原理和驱动安装
  • ubuntu技巧学习3: 将视频转换为gif动态图
  • V-SLAM重读(3):SVO代码阅读和调试修改
  • VLP-16第二课: 学习论文LeGo-LOAM: 基于地面优化的轻量级雷达里程计和地图构建
  • 数据结构与算法第一节:数据结构与算法的关系
  • 数据结构与算法第二节:衡量算法的执行效率(时间、空间复杂度分析)
  • 数据结构与算法第二节:衡量算法的执行效率(时间、空间复杂度分析)(2)
  • 数据结构与算法第三节:数组的使用
  • 数据结构与算法第四节:链表的使用
  • 数据结构与算法第五、六节:栈和队列
  • [译]Python中的类属性与实例属性的区别
  • 《Java编程思想》读书笔记-对象导论
  • Apache Spark Streaming 使用实例
  •  D - 粉碎叛乱F - 其他起义
  • Fundebug计费标准解释:事件数是如何定义的?
  • Java教程_软件开发基础
  • JS+CSS实现数字滚动
  • js如何打印object对象
  • Laravel Mix运行时关于es2015报错解决方案
  • Perseus-BERT——业内性能极致优化的BERT训练方案
  • redis学习笔记(三):列表、集合、有序集合
  • vue-cli在webpack的配置文件探究
  • vue和cordova项目整合打包,并实现vue调用android的相机的demo
  • 从PHP迁移至Golang - 基础篇
  • 给第三方使用接口的 URL 签名实现
  • 七牛云 DV OV EV SSL 证书上线,限时折扣低至 6.75 折!
  • 小程序 setData 学问多
  • 学习HTTP相关知识笔记
  • Hibernate主键生成策略及选择
  • Nginx惊现漏洞 百万网站面临“拖库”风险
  • ​LeetCode解法汇总2696. 删除子串后的字符串最小长度
  • #基础#使用Jupyter进行Notebook的转换 .ipynb文件导出为.md文件
  • (2020)Java后端开发----(面试题和笔试题)
  • (JSP)EL——优化登录界面,获取对象,获取数据
  • (保姆级教程)Mysql中索引、触发器、存储过程、存储函数的概念、作用,以及如何使用索引、存储过程,代码操作演示
  • (附源码)spring boot基于Java的电影院售票与管理系统毕业设计 011449
  • (附源码)spring boot校园健康监测管理系统 毕业设计 151047
  • (附源码)小程序 交通违法举报系统 毕业设计 242045
  • (蓝桥杯每日一题)平方末尾及补充(常用的字符串函数功能)
  • (力扣记录)1448. 统计二叉树中好节点的数目
  • (力扣记录)235. 二叉搜索树的最近公共祖先
  • (算法)前K大的和
  • (转)可以带来幸福的一本书
  • (转载)虚函数剖析
  • .net与java建立WebService再互相调用
  • @Autowired和@Resource装配
  • [ Linux 长征路第二篇] 基本指令head,tail,date,cal,find,grep,zip,tar,bc,unname
  • [APIO2015]巴厘岛的雕塑
  • [Asp.net MVC]Bundle合并,压缩js、css文件
  • [BUUCTF]-PWN:wustctf2020_number_game解析(补码,整数漏洞)