目录

基本情况

ORBSLAM的不足之处:

贡献

原文翻译

摘要

1. INTRODUCTION

2. RELATED WORK

3. ORBSLAM-A TLAS MULTI - MAP REPRESENTATION

A. Multi-map representation

B. New map creation criteria

C. Camera pose observability

D. Relocalization in multiple maps

IV. SEAMLESS MAP MERGING


基本情况

ORBSLAM的不足之处:

  1. ORBSLAM:ORBSLAM的突出鲁棒性和精确性是因为它能够检测关键帧之间的宽基线(wide-baseline)匹配,利用这些匹配做非线性优化,但它只能处理单个地图,如果跟踪丢失,将导致探索性轨迹完全失败,并停止多个建图。
  2. ORBSLAM2:以处理单目情况下的多个地图。它们对多个子图的整合不如我们的紧密,因为它们的子地图作为单独存在保存,每个都有自己的DBoW2数据库。此外,它们的合并操作计算子映射之间的链接,但不会用合并的子地图替换被合并的子地图。

贡献

提出了一个能够处理无限数量不连通子地图的ORBSLAM-Atlas,该系统包括一个健壮的地图融合算法,能够检测出具有公共区域的子地图,并将其无缝融合

ORBSLAM

ORBSLAM-Atlas


原文翻译

摘要

我们提出了一个能够处理无限数量不连通子地图的ORBSLAM-Atlas,该系统包括一个健壮的地图融合算法,能够检测出具有公共区域的子地图,并将其无缝融合。ORBSLAM的突出鲁棒性和精确性是因为它能够检测关键帧之间的宽基线(wide-baseline)匹配,利用这些匹配做非线性优化,但它只能处理单个地图。ORBSLAM-Atlas为多地图区域带来了宽基线匹配检测和开发。结果是SLAM系统明显得更加通用和健壮,能够执行多个建图。如果在探索过程中丢失了跟踪,则不会冻结地图,而是启动一个新的子地图,当访问公共部分时,它可以与以前的地图融合。我们的标准,以宣布相机失去对比以往的方法,简单地计数跟踪点的数量,我们建议放弃也不准确估计的相机姿势,由于不良的几何条件。结果,地图被分割成更精确的子地图,这些子地图最终被合并到更精确的全局地图中,这要归功于多重地图功能。
我们在EuRoC数据集中提供了大量的实验验证,ORBSLAM-Atlas在ORBSLAM失败的困难序列中获得准确的单目和立体结果。我们也在同一个房间内进行多个子地图后构建全局地图,获得迄今为止最好的结果,其精度是对比多地图方法的2至3倍。我们还展示了我们的系统在处理动态场景方面的健壮性和性能,定量地在EuRoC数据集中,定性地在人口稠密的走廊中,在那里相机经常停止工作和跟踪丢失。

1. INTRODUCTION

  SLAM算法能够根据传感器的读数建立一个地图,同时估计地图内的传感器定位。相机是特别有趣的传感器,因为它们提供了独特的几何和语义组合。在这种情况下,这些算法被称为V-SLAM(visualslam),在这项工作中,我们主要关注纯视觉的单目和立体传感器。由于关键帧和特征点SLAM方法的重定位和位置识别性能,我们将重点放在关键帧和特征点SLAM方法上,这体现在它们能够可靠地构建城市块大小的地图。
  更具体地说,我们建立在参考系统ORBSLAM[1],[2],[3]之上。如果与视觉里程计方法[4]、[5]、[6]、[7]、[8]相比,ORBSLAM可以更精确地执行任务,特别是在重新访问同一区域时。ORBSLAM的精度来自非线性约束调整(BA),其中对同一地图点的观测来自于相隔甚远的关键帧。一方面,ORBSLAM能够很好地检测关键帧之间的匹配,即使它们在时间上被相差很远,即使在闭环的极端情况下也是如此。ORBSLAM能够通过基本建图阶段的交织来充分利用这些丰富的高视差重新观测:ORB匹配、DBoW2位置识别、位姿图优化、局部BA、全局BA和地图管理。地图管理包括地图点和关键帧的创建、删除和合并。但是,它只能处理单个建图,如果跟踪丢失,将导致探索性轨迹完全失败,并停止多个建图。
  我们提出了ORBSLAM-Atlas,将ORBSLAM推广到多地图情况。我们的主要贡献是:

  我们在EuRoC数据集中提供了一个定量的实验验证,其中ORBSLAM-Atlas完成了最佳结果:在经过多次建图过程后获得了全局地图。在单目EuRoC困难数据集中,与单目ORBSLAM相比,极大地提高了覆盖率和定位误差。此外,该系统在处理动态场景时具有很强的鲁棒性。

2. RELATED WORK

  在本篇论文,多地图功能作为协作建图系统的一个组成部分被研究,协作代理最终将帧发送到执行多个建图操作的中心服务器。Foster等人,在[9]中首次提出了这种分布式体系结构。在他们的方法中,代理将帧发送到全局服务器,但是,他们不能从服务器获取信息来改进他们的局部建图。第一个具有从代理到服务器和从服务器到代理的双向信息流的系统是C2TAM[10],它是PTAM[11]到RGB-D传感器的扩展,后者能够在多个机器人中处理多个地图。莫里森等人,在[12]中,研究了一种用于协作多设备SLAM的健壮的无状态客户机-服务器体系结构。他们的主要关注点是软件架构,而不是报告准确的结果。Schmuck和Chli[13],[14]最近的工作提出了CCM-SLAM,一种基于ORBSLAM的多无人机分布式多地图,具有双向信息流。我们的系统离他们的中心服务器很近,因为这两个系统都建立在类似的基本建图阶段之上。他们的重点是克服单目情况下有限带宽和分布式处理的挑战,而我们的重点是建立一个准确的全球地图。根据他们在欧洲机器大厅数据集上的实验报告,我们的系统在单目情况下的准确度大约提高了3倍。此外,我们的系统显示出健壮性,能够准确地处理所有的EuRoC数据集,包括立体和单目的。
  最近的ORB-SLAM[15]也提出了ORBSLAM2的扩展,以处理单目情况下的多个地图。它们对多个子图的整合不如我们的紧密,因为它们的子地图作为单独存在保存,每个都有自己的DBoW2数据库。此外,它们的合并操作计算子映射之间的链接,但不会用合并的子地图替换被合并的子地图。
  本文还比较了VINS Mono[4]在EuRoC Machine Hall数据集多段场景处理中的应用。VINS-Mono是一种视觉里程计系统,通过位姿图优化来估计闭环矫正。由于ORBSLAM-Atlas能够探测和使用BA处理大量高视差观测,它们的个别地图比VINS Mono的精确2倍。ORBSLAM-Atlas多个全局地图比VINS mono全局地图保持了2倍的精度,因为由于地图合并,它能够检测并从高视差匹配中获得有益的部分,在多地图和多场景情况下也是如此。
  Eade和Drummond[16]在一种滤波方法中首次提出了通过地图创建和融合来增加探测过程中跟踪损失的鲁棒性的思想。第一个基于关键帧的多地图系统是[17],他们提出了断开地图的思想,但是地图初始化是手动的,系统无法合并或关联不同的子地图。在滤波EKF-SLAM方法中,当协方差很容易获得时,在匹配次数和低相机定位误差协方差的双重阈值条件下,相机被宣告丢失[18]。在关键帧方法中,由于不计算协方差,因此准则仅减少到匹配数。我们提出用一个低成本的摄像机姿态协方差代理来恢复双准则,该代理来自于仅摄像机姿态优化的Hessian。这种近似协方差最近在[19]中被用于主动感知。

3. ORBSLAM-A TLAS MULTI - MAP REPRESENTATION

  我们称之为新的多重地图表示atlas,从现在起,我们将使用名称map来指定每个地图集子地图。下一小节详细介绍了地图集结构和确定何时创建新地图的标准。


Fig. 1: ORBSLAM-Atlas multi-map representation and workflow.

A. Multi-map representation

  地图集(图1)由几乎无限数量的地图组成,每个地图都有自己的关键帧、地图点、共视图和生成树。每个地图参考帧固定在其第一个相机中,并且它独立于ORBSLAM中的其他地图参考。传入的视频只更新地图册中的一个地图,我们称之为活动地图(active map),我们将其余地图称为非活动地图(non active map)。该图集还包含一个所有地图的唯一DBoW2识别数据库,该数据库存储识别任何地图中任何关键帧的所有信息。
  我们的系统有一个单一的位置识别步骤来检测公共地图区域,如果它们都在活动地图中,它们对应一个闭环,而如果它们在不同的地图中,它们对应一个地图合并。

B. New map creation criteria

  当相机跟踪被认为丢失时,我们尝试在地图册中重新定位。如果在几帧内重新定位失败,活动地图将变为非活动地图并存储在地图册中。然后,根据[2]和[1]中描述的算法启动新的地图初始化。
  为了确定相机是否在轨道上,我们试探性地提出了两个必须满足的规定,否则,相机将被视为丢失:



Fig. 2: Example of mapping accuracy improvement due to observability criterion. (a) Frame where most of the matched points are far from the camera. The number of points criterion is fulfilled but not the observability criterion,and the camera translation is inaccurately estimated. The image corresponds to the region marked as P 1 in the maps below. (b) Camera trajectory without observability criterion. Two loop closures were detected at P 2 and P 3 , due to the inaccurate camera poses around P1, the pose graph optimization fails to produce an accurate correction. © Camera trajectory with observability criterion. The camera poses in the rectangle in the P 1 region area are excluded.When the low observability region is left, a second map is created. When P 2 is reached, the place recognition fires, and the two maps are merged into a single map. At P 3 a loop closing is detected applying the corresponding correction.The final global map has fewer localized frames but they are more accurate.
  图2显示了Malaga数据集[20]中的一个示例,在该示例中,共视标准的使用与多重建图相结合,可以显著提高建图精度。在图像中,超过阈值的多个点被匹配,但是它们对应于远处的地图点,因此不准确地估计摄像机的平移。由于没有可观测性准则,由位姿图优化计算的闭环校正由于闭环中包含的相对平移精度差而不准确。如果使用可观测性准则,则这些不确定的关键帧将从地图中移除,地图将被分割,但ORBSLAM-Atlas能够将所有子地图合并到一个精确的全局地图中。

C. Camera pose observability

  我们从相机位姿误差协方差来估计可观测性。我们假设地图点是完美估计的,因为实时操作无法计算每帧地图点的协方差。测量信息矩阵Ω i , j \Omega_{i,j}Ωi,j​,编码相机i ii中地图点j jj的观测X i , j \mathbf{X}_{i,j}Xi,j​,j jj的不确定度。它与检测到图像FAST特征点的图像分辨率比例成比例地调整。相机i ii的不确定性是用m i m_imi​点来估计的,其中m i m_imi​是相机中与地图点匹配的点数。
  我们将6自由度相机位姿估计为变换。此外,我们通过6个参数的无偏高斯向量对其不确定性进行编码,该无偏高斯向量定义了近似于​和的李代数:

其中E x p : 直接从参数空间映射到李群。协方差矩阵 编码相机估计精度,是相机i ii中地图点J JJ的观测引起的相机姿态测量的雅可比矩阵。由于平移是弱可观测量,我们建议在准则中仅使用与平移误差相对应的对角线值:

D. Relocalization in multiple maps

  如果相机跟踪丢失,我们使用帧来查询地图集DBoW数据库。这个查询可以在任何地图中找到更相似的关键帧。一旦我们有了候选的关键帧、建图和假定的匹配映射点,我们就执行下面的重新定位[1]。它包括通过第一个PnP和RANSAC步骤稳健地估计相机位姿,然后进行匹配的引导搜索和最终的非线性相机位姿优化。

IV. SEAMLESS MAP MERGING

  为了检测地图合并,我们使用ORBSLAM位置识别步骤。为了降低误报风险,该算法对由共视图连接的三个关键帧进行重复位置识别。此外,在合并过程中,活动地图会吞并已找到公共区域的其他映射。合并完成后,合并的地图将完全替换这两个合并地图。必要时,我们将使用asm子索引分别引用活动的、吞入的和合并的地图。

  1. 两个地图之间公共区域的检测。位置识别提供了两个匹配的关键帧K a K_aKa​和K s K_sKs​以及两个地图M a M_aMa​和M s M_sMs​中的点之间的一组假定匹配
  2. 对准变换的估计。正是这种变换,立体中的S E ( 3 ) SE\left(3\right)SE(3)或单目中的S i m ( 3 ) Sim\left(3\right)Sim(3),将两个合并地图的全局参照对齐。我们结合Horn方法[21]和RANSAC,从M a M_aMa​和M s M_sMs​地图点之间的假定匹配计算初始估计。我们将估计的变换应用于K s K_sKs​的引导匹配阶段,在K s K_sKs​中匹配M a M_aMa​的点,最后通过对重投影误差的非线性优化来估计T W a , W s \mathbf{T}_{W_a,W_s}TWa​,Ws​​。
  3. 合并合并的地图。我们将T W a , W s \mathbf{T}_{W_a,W_s}TWa​,Ws​​应用于M s M_sMs​中的所有关键帧和地图点。然后,我们检测出重复的地图点并将其融合,从而得到从M s M_sMs​和M a M_aMa​中的关键帧观测到的地图点。然后,我们将所有M s M_sMs​和M a M_aMa​关键帧合并,并将点映射到M m M _mMm​。此外,我们还将M s M_sMs​和M a M_aMa​生成树以及可测图合并到M m M _mMm​的生成树和可测图中。
  4. 焊接区域的局部BA。根据M m M _mMm​共视图,它包含了与K − a K-aK−a共视的所有关键帧。为了固定轨距自由度,在M a M_aMa​中固定的关键帧在局部BA中保持固定,而其余关键帧在非线性优化过程中自由移动。我们应用第二个重复点检测和融合阶段更新M m M_mMm​可见度图。
  5. 位姿图优化。最后,我们对M m M_mMm​展开了位姿图优化

  合并在与跟踪线程、局部建图线程并行的线程中运行,偶尔也运行一个全局约束调整线程(图1)。在开始合并之前,局部建图线程将停止,以避免在地图集中添加新的关键帧。如果一个全局约束调整线程正在运行,它也会停止,因为BA正在运行的生成树将被更改。跟踪线程保持在旧的活动地图上运行,以保持实时操作。完成地图合并后,我们继续局部建图线程。全局约束调整(如果已停止)将重新启动以处理新数据。

参考: 【SLAM论文翻译】ORBSLAM-Atlas a robust and accurate multi-map system

论文笔记_S2D.45_ORBSLAM-Atlas: 一个稳健和精确的多建图系统相关推荐

  1. 论文笔记_2011_RAS_使用特征稳定性直方图FSH的移动机器人的建图和定位(上)

    基本情况 出处:Bacca B, Salvi J, Cufí X. Appearance-based mapping and localization for mobile robots using ...

  2. 论文笔记_S2D.77_2013_TOR_使用RGBD相机的3D建图(RGBD SLAM V2)

    目录 基本情况 摘要 介绍 系统流程 特征提取 运动估计 EMM:Environment Measurement Model 回环检测 图优化 建图OctoMap 参考 基本情况 出处:Endres ...

  3. R2LIVE: 一个鲁棒实时的雷达-惯导-视觉紧耦合的位姿估计和建图系统

    作者丨方川@知乎 来源丨https://zhuanlan.zhihu.com/p/378375542 编辑丨3D视觉工坊 标题:R2LIVE: A Robust, Rea-time, LiDAR-In ...

  4. 【论文笔记】Revisiting graph based collaborative Filtering:一种线性残差图图卷积网络方法

    Revisiting Graph based Collaborative Filtering:A Linear Residual Graph Convolutional Network Approac ...

  5. 【ORB-SLAM3论文翻译】ORB-SLAM3:一个精确的视觉、视觉惯性和多地图SLAM的开源库(注:带着原文看,很多公式和变量不好输入)

    文章目录 前言(非论文部分) 摘要 1. 简介 2. 相关工作 3. 系统概述 4. 相机模型 5. 视觉惯性SLAM(重点) 6. 地图合并与闭环 7. 实验结果 8. 结论 REFERENCES( ...

  6. DynaSLAM论文笔记

    DynaSLAM: Tracking, Mapping and Inpainting in Dynamic Scenes 论文笔记 +++ 这是一种建立在ORB-SLAM2上的视觉SLAM系统,同时增 ...

  7. Maplab:一个用于视觉惯性建图和定位研究的开源框架

    摘要 鲁棒且精确的视觉惯性估计是当今机器人领域的重要挑战.能够用先验地图(prior map)进行定位(localize)并获得准确且无漂移的姿态估计,可以推动该系统的适应性.然而,目前大多数可用的解 ...

  8. ORB-SLAM3 论文笔记

    ORB-SLAM3 论文笔记 这篇博客 ORB-SLAM3系统 相机模型的抽象(Camera Model) 重定位的问题 图片矫正的问题 视觉惯性SLAM的工作原理 相关公式 IMU初始化 跟踪和建图 ...

  9. 论文笔记 A Spatial-Temporal Decomposition Based Deep Neural Network for TimeSeries Forecasting

    0 abstract 空间时间序列预测问题出现在广泛的应用中,如环境和交通问题.由于存在特定的空间.短期和长期模式,以及维度的诅咒,这些问题具有挑战性. 在本文中,我们提出了一个用于大规模空间时间序列 ...

  10. 论文笔记:Autoregressive Tensor Factorizationfor Spatio-temporal Predictions

    0 摘要 张量因子tensor factorization分解方法在时空数据分析领域很受欢迎,因为它们能够处理多种类型的时空数据,处理缺失值,并提供计算效率高的参数估计程序. 然而,现有的张量因子分解 ...

最新文章

  1. 牛逼了!这个私藏的前端 IDE 插件,撸码 6 的飞起,编程效率提高 30 倍!
  2. MapReduce的序列化案例
  3. 构建私有云的五个步骤
  4. linux 查看网络 wait
  5. 《深入理解Java虚拟机》笔记3——7种垃圾收集器
  6. git reset revert 回退回滚取消提交返回上一版本
  7. 主题模型LDA的实现
  8. pod进阶(资源管理和探针)
  9. CodeForces - 1459D Glass Half Spilled(dp)
  10. c语言大作业教室预约管理系统,C语言程序设计——教室管理系统(源代码))
  11. 男人别让爱你的女孩流泪
  12. 引用js/css时,加入时间戳解决浏览器缓存问题
  13. 服务器被bash服务占满_用bash脚本自动下载ftp服务器文件
  14. sql if语句实例
  15. IDEA引入JDK/jar包无效、java 文件灰色右下角橙色java图标显示等问题解决办法
  16. 交警罚没系统数据一致性问题
  17. 互联网公司裁员潮传言四起,是捕风捉影还是确有其事?
  18. Apache 架构师的 30 条设计原则
  19. 真人语音朗读软件_讯飞语音云助力移动“和阅读”,打造个性化听书应用
  20. MSDN值得学习的地方

热门文章

  1. 应用安全-安全设备-Waf系列-软Waf-云锁
  2. IDEA2018全局搜索中搜索jar包/lib
  3. springboot实现xml传参和返回值
  4. ExtJS4.2学习(13)基于表格的扩展插件---rowEditing
  5. Linux执行命令./command与直接输入命令的区别
  6. VS2010中使用boost正则表达式库
  7. .Net下二进制形式的文件(图片)的存储与读取(转载)
  8. 扫描软件(to be followed)
  9. 程序员转型架构师,推荐你读这几本书
  10. Kafka开发--C#生产和消费消息