ORB-SLAM: a Versatile and Accurate Monocular SLAM system---阅读笔记(two)

本文详述了视觉SLAM系统中跟踪线程的工作流程,包括ORB特征点的提取与描述,使用恒速运动模型预测相机位姿,以及通过局部地图点云优化位姿。在跟踪失败时,采用全局重定位恢复位姿。最后,根据特定条件判断是否将当前帧作为关键帧。

TRACKING跟踪

这一部分,描述跟踪线程的步骤,处理来自相机的每帧图像。在几个步骤中提到的相机位姿优化包含在附录中描述的单纯的运动BA中。
总结:

  • 提取ORB特征点,并计算描述子;
  • 用运动速率恒定模型预测当前相机位置,搜索上一帧图像特征点在地图中的点云与当前帧图像的匹配点,优化当前帧位姿;
  • 如果跟踪不到特征点则使用全局重定位初始化位姿;
  • 将局部地图点云映射到当前帧图像上搜索更多的匹配点,并通过当前帧中的所有地图点云进行相机位姿优化;
  • 决定当前帧是否可以作为关键帧。

A ORB Extraction ORB特征提取

我们以尺度因子为1.2的8个尺度级别提取FAST角点。对于512x384到752x480像素的图像分辨率,适合提取1000个角点,对于更高像素,例如在KITTI数据集中1241x376像素,适合提取2000角点。为了确保均匀分布,我们在网格中划分每个尺度级别,尝试提取每个单元至少5个角点。然后,我们检测每个单元中的角点,如果没有找到足够的角点,则自适应检测器的阈值。如果某些单元不包含角点(无纹理或低对比度),则每个单元保留的角点数量也会自适应调整。然后,在被保留的FAST角点上计算方位和ORB描述子。在所有特征匹配中使用ORB描述符,而在PTAM中使用图像片相关搜索。

B Initial Pose Estimation from Previous Frame 从前一帧初始化位姿估计

如果最新帧跟踪成功,则使用恒速运动模型来预测相机姿态,并对当前帧中观察到的图像点云进行引导搜索。如果没有足够的匹配被发现(例如,违反运动模型),使用在当前帧中围绕其位置的地图点云的广泛搜索。然后,利用发现的匹配点优化位姿。

C Initial Pose Estimation via Global Relocalization通过全局重定位初始化位姿估计

如果跟踪丢失,我们转换这帧为词袋,查询识别数据库寻找关键帧候选项,用于全局重定位。我们计算和ORB对应关系,去匹配在每一帧中的点,在 III-E 中被解释。然后,我们交替地对每个关键帧执行RANSAC迭代,并尝试使用PNP算法找到相机姿态。如果利用足够内点发现相机位姿,优化位姿并执行和候选关键帧的映射点更多匹配的引导性搜索。最终,如果足够内点被支持,相机位姿再次被优化,跟踪程序继续。

D Track Local Map跟踪局部地图

一旦我们有了摄像机姿态的估计和一组初始特征匹配,我们就可以将地图投射到帧中并搜索更多的对应匹配点。为了限制大地图的复杂性,我们只投影一个局部地图。局部地图包含和当前帧共享映射点的关键帧集合 K1K_1K1,和在共视图中与关键帧 K1K_1K1 邻近的集合 K2K_2K2。这局部地图还有一个和当前帧共享最多映射点的参考帧 Kref∈K1K_{ref} \in K_1KrefK1 。现在,在 K1K_1K1K2K_2K2 中观察到的每个地图点云在当前帧中被搜索的步骤如下:
1) 计算当前帧中的地图点投影 xxx。 如果超出图像边界,则丢弃。
2) 计算当前观察视线 vvv 和地图点云平均观察方向 nnn 之间的角度。如果 v⋅n<cos(60∘)v \cdot n < cos(60^{\circ})vn<cos(60) ,则丢弃。
3) 计算地图点云到相机中心的距离 ddd 。如果超出地图点云的尺度不变区域 d∉[dmin,dmax]d \notin [d_{min}, d_{max}]d/[dmin,dmax] ,则丢弃。
4) 按比例 d/dmind/d_{min}d/dmin 计算在帧中的比例。
5) 将地图点云的代表的描述符 DDD 与帧中在预测比例和 xxx 附近一直未匹配的ORB特征进行比较,并将地图点云与最佳匹配相关联。
最终用在帧中发现的所有地图点云优化相机位姿。

E New Keyframe Decision新的关键帧决策

最后一步是确定当前帧是否衍生为新的关键帧。由于在局部地图中有一种机制来剔除冗余的关键帧,因此我们将尝试尽可能快地插入关键帧,因为这使得跟踪对具有挑战性的摄像机运动(通常是旋转)更加稳健。若要插入新的关键帧,必须满足以下所有条件:
1) 必须从最后全局重定位传递多于20帧。
2) 局部地图处于空闲状态,或者从最新关键帧传递多于20帧插入。
3) 当前帧至少跟踪50个点。
4) 当前帧跟踪比参考帧 KrefK_{ref}Kref 少于90%的点。
我们利用最小视觉变化(条件4),取代使用到关键帧的距离标准作为PTAM。条件1确保一个好的重定位和条件3确保一个好的跟踪。当局部地图处于繁忙状态时(条件2的第二部分),如果关键帧被插入,一个信号被发送去终止局部束调整(BA),以便其可以尽可能快的产生新的关键帧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值