orbsalm2论文笔记

ORB-SLAM2: an Open-Source SLAM System for Monocular, Stereo and RGB-D Cameras

2023/08/23 14:34


ORB-SLAM2 是一个适用于单目、立体和 RGB-D 相机的完整 SLAM 系统,包括地图重用、闭环和重新定位功能。该系统在各种环境中在标准 CPU 上实时工作,从小型手持式室内序列到在工业环境中飞行的无人机和在城市中行驶的汽车。

后端基于单目和立体观测的捆绑调整,可以使用公制比例进行准确的轨迹估计。包括一个轻量级定位模式,该模式利用视觉里程计跟踪未映射的区域并匹配允许零漂移定位的地图点。

对 29 个流行的公共序列的评估表明,slam2达到了最先进的精度,在大多数情况下是最准确的 SLAM 解决方案。


双目slam:

1、基于条件独立分而治之 EKF-SLAM,它能够在比当时其他方法更大的环境中运行。

2、 RSLAM。 [9]使用地标和姿势的相对表示,并在活动区域​​中执行相对 BA,该活动区域可以被限制为恒定时间。RSLAM 能够闭合循环,从而允许扩展循环两侧的活动区域,但不强制执行全局一致性。

3、 S-PTAM。 [10]执行局部BA,但是它缺乏大的循环闭合。

4、Stereo LSD-SLAM。 [11]是一种半密集直接方法,可以最大限度地减少高梯度图像区域的光度误差。该方法不依赖于特征,预计对于运动模糊或纹理不良的环境具有更强的鲁棒性。然而,作为一种直接方法,其性能可能会因卷帘快门或非朗伯反射等未建模效应而严重降低。

RGB-D SLAM:

1、KinectFusion

2、DVO-SLAM

3、ElasticFusion


SLAM2:

ORB-SLAM2由三个主要并行线程组成:跟踪、本地建图和闭环,闭环后可以创建第四个线程来执行完整的BA。跟踪线程对立体声或 RGB-D 输入进行预处理,以便系统的其余部分独立于输入传感器运行。ORB-SLAM2 也可以使用单目输入。

系统已嵌入基于DBoW2(DBow2算法主要用于重定位或者称作闭环检测)的位置识别模块,用于在跟踪失败(例如遮挡)或在已建图的场景中重新初始化的情况下进行重新定位,以及进行回环检测。

系统维护一个图(节点和连线),该图链接具有共同点的两个关键帧和连接所有关键帧的最小生成树(生成树是将原图的全部顶点以最少的边连通的子图,权值总和最小的生成树则称为图的最小生成树)。 这些图结构允许检索关键帧的局部窗口,以便跟踪和局部建图,从而允许在大型环境中工作,并用作回环时执行的pose-graph优化的结构

系统依旧使用ORB特征进行跟踪,映射和位置识别任务。这些特征对于旋转和尺度具有鲁棒性,并为相机的自动增益和自动曝光以及照明变化提供了良好的稳定性。 此外,它们快速提取和匹配以实现实时操作,并在词袋位置识别中显示出良好的精度/召回性能。


ORB-SLAM2作为一种基于特征的方法对输入进行预处理以提取显着关键点位置的特征,如图b所示。然后输入图像被丢弃,所有系统操作都基于这些特征,因此系统独立于传感器是立体还是RGB-D。系统处理单眼和立体关键点,这些关键点进一步分为近点或远点。

对于立体相机,在两个图像中提取 ORB,并且对于每个左侧 ORB,我们在右侧图像中搜索匹配项。

然后,我们使用左侧 ORB 的坐标和右侧匹配的水平坐标生成立体关键点,该关键点通过块相关性进行子像素细化。对于 RGB-D 相机,我们在 RGB 图像上提取 ORB 特征,并且如 Strasdat 等人提出的那样。 [8],对于每个具有坐标(uL,vL)的特征,我们将其深度值 d 转换为虚拟右坐标:

fx是水平焦距,b是相机和红外摄像机之间的基线

使用立体或 RGB-D 相机的主要好处之一是,通过仅从一帧获取深度信息,我们不需要像单目情况那样从运动初始化中获得特定结构。在系统启动时,我们使用第一帧创建一个关键帧,将其姿势设置为原点,并从所有立体关键点创建初始贴图。


Loop Closing and Full BA

1、检测并验证循环

2、纠正循环并优化位姿图

单线程执行完整的BA优化,允许系统继续创建地图和检测循环

但是,这带来了将BA输出与地图的当前状态合并的挑战。 如果在优化运行时检测到新的循环,将中止优化并继续进行回环,这将再次启动完整BA优化。完整BA完成后,我们需要将更新后的关键帧和关键点子集(完整BA后的)与未更新的关键帧和点合并在一起,这些关键点和点将在优化运行时插入,通过生成树将更新的关键帧的校正传播到未更新的关键帧(即从未优化的姿势转换为优化的姿势), 未更新的点根据参考关键帧的校正进行变换。

Keyframe Insertion

遵循单目ORB-SLAM中引入的频繁插入关键帧并随后剔除冗余帧的策略

Localization Mode

只要环境没有重大变化,该模式对于地图绘制良好的区域中的轻量级长期定位很有用。在此模式下,局部映射和循环闭合线程将被停用,并且如果需要,可以通过使用重新定位的跟踪来连续定位相机。在此模式下,跟踪利用视觉里程计匹配和地图点匹配。视觉里程计匹配是当前帧中的 ORB 与根据立体/深度信息在前一帧中创建的 3D 点之间的匹配。这些匹配使得定位对未映射的区域具有鲁棒性,但漂移可能会累积。地图点匹配可确保对现有地图的无漂移定位。


EVALUATION

KITTI datatset

EuRoc datatset

TUM RGB-D Dataset

Timing Results


orbslam2没有解决因运动模糊造成的跟丢问题?

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值