论文笔记—RGB-D SLAM in Dynamic Environments Using Static Point Weighting
论文笔记—RGB-D SLAM in Dynamic Environments Using Static Point Weighting
文章摘要
本文提出了一种针对动态环境,基于实时深度边缘的RGB-D SLAM系统。该视觉测程方法是基于帧到关键帧的配准,只使用深度边缘点。用关键帧边缘点的静态权重表示一个点成为静态环境一部分的可能性,将这种静态权重添加到强度辅助迭代最近点(IAICP)方法中来执行配准任务,来减少动态对象的影响。
背景
视觉测程方法都假设静态环境,将一小部分动态对象视为噪声处理。但由于实际场景中很大一部分动态对象违反了静态环境假设,从而限制了现有的许多视觉测程方法在实际场景中的应用。目前的RGB-D视觉测程方法为了处理动态对象大致可以分为两类:
A.第一组是稠密视觉里程计。该方法将任务描述为一个能量最小化问题。能量函数是目标图像和扭曲的源图像在像素方向上的强度/深度差的总和。然后在此能量函数上迭代优化相机的6自由度运动。这种形式的能量函数很大程度上依赖于静态环境假设。且不能实时进行光流估计和聚类。
B.第二组是基于对应的方法。在源帧和目标帧之间匹配对应。然后利用这些通信的封闭解估计摄像机的自我运动。但是,如果动态特征点比静态特征点多,RANSAC可能会导致对静态特征点的错误估计。
在本文中,我们选择使用深度边来寻找对应。深度边包含环境的结构信息。在边缘点匹配的基础上,提出了一种新的静态加权方法来降低视觉测程法中动态点的权重。此外,利用一种有效的环闭度检测程序,将视觉测程法融合到基于位姿图的SLAM系统中,形成了适合动态环境的快速RGB-D SLAM系统。
基于前景边缘的视觉里程法
A.概述
本文中所提出的视觉测程方法的概述如图1所示。对于每一帧,首先提取前景边缘点,且仅用提取边缘点进行测程估计。每n帧被选择为一个关键帧。对于每个关键帧,估计边缘点的静态权值。静态权重指示一个点属于静态环境的可能性有多大。然后使用IAICP算法估计关键帧到当前帧的相对变换,其中结合静态权值,以减少动态运动物体对变换估计的影响。最后,基于运动估计更新关键帧的静态权值。
| Fig.1. Overview of our visual odometry system | 
|---|
B.前景深度边缘提取
深度边缘点是相邻区域具有较大深度不连续的点。深度边缘点存在两种类型:前景边缘点和遮挡边缘点。前景边缘点呈现在其他对象前面的对象边界,对于移动的摄像机来说是稳定的。被遮挡的边缘点来自于其他物体后面的物体,对运动的摄像机非常敏感,需要排除。给定点云Pt,构造由前景边缘点指数组成的集合Bt。首先计算每个点与其四个相邻点的深度差\lbrace h_i \rbrace4\atop i=1,其中

式中使用e^Z=(0,0,1,0)^T用来提取一个点的深度值,四个偏移向量

C.静态权重估算
我们估计一个源点云P_{src}的静态权重,是通过将其与目标点云P_{tgt}相比较。静态权重只评估前景边缘点{P_{src}(i)_{i\in B_{src}}},其中B_{src}是边缘点指标集合。P_{src}(i)的静态权重记为\omegasrc,tgt \atop i,是基于P_{src}和P_{tgt}之间的欧氏距离评估得到的。其公式为:
其中c(i)\in B_{tgt}。对于一个静态点,d_i为零或者一个很小的值,这样就可以把静态点与动态点区分开来了。之后再按照t-分布估算静态权重:

其中\nu_0是t-分布的自由度,中值μ手动置为0,方差σ_D是用绝对偏差的中位数估计的。
静态质量的评估流程如以下算法所总结的:

在视觉测程方法中,只对关键帧进行静态权值估计。假设最新的关键帧是Pk与k指数的关键帧,特征点P_k(i)的静态重量被定义为\omega_s(i),表达式为:

其中经验地将\alpha设置为

D.强度辅助迭代最近点
给定源帧
AICP是一种迭代方法,通常使用单位矩阵或运动预测初始化变换矩阵T^*。T^*用一阶运动预测初始化。然后迭代搜索最优变换值T^*。对于P_{src}(i),目标点云P_{tgt}(i)中对应的点的指数记为c(i)\in B_{tgt},其中:

建立通信之间的加权欧氏距离之和最小的最优增量变换T_k为:
其中W(i)是表示对应质量的加权项,用T_kT^*作为新的T^*。
下面我们解释如何计算权重项W(i)以及如何得到对应指标c(i)。权重项是基于强度项\omega_\Iota(i)、几何项\omega_G(i)和静态加权项\omega_S(i)得到的:

强度项\omega_G(i)由强度剩余r_i^{(\Iota)}计算:

几何项\omega_G(i)的估计也是类似的:

环路闭合检测
当一个新的关键帧P_k被设置后,我们用10个随机选择的前一个关键帧P_r来检查P_k的循环闭包。当满足三个条件时,在P_k和P_r之间检测到一个循环闭包。
几何接近性:两个关键帧之间的距离不应该太远。

实验中阈值距离τ_{distance}设置为1.5 m。
共同可见部分:两个关键帧可以看到的点数不少于30%。

前向后向一致性检查:如果满足前两个条件,则使用上述IAICP方法进行成对配准。

如果关键帧对
实验结果
本文中的方法用TUM RGB-D数据集进行了测试。在实验中,使用了来自TUM数据集的坐下、行走序列,如图2,将坐位序列视为低动态序列,waling序列视为高动态序列。为了测试我们的方法在正常静态环境下的性能,我们还使用在静态环境中捕获的序列进行评估。

| Fig. 2. Foreground depth edge extraction and static weighting examples taken from “fr3/walking” sequences | 
|---|
A.视觉测程法的评价
将本文中方案的结果与高密度视觉测程(DVO)方法和基于模型的高密度视觉测程(BaMVO)方法进行了比较。DVO是一种最先进的静态环境RGB-D视觉测程方法,只能处理少量的动态对象。BaMVO是专门为处理动态环境而设计的。比较结果如表1所示

| TABLE1 VISUAL ODOMETRY RESULTS: TRANSLATIONAL DRIFT AND ROTATIONAL DRIFT ON TUM RGB-D DATASET | 
|---|
B.slam系统的评价
估计的轨迹与地面实况进行了比较,并在图5中显示了一些例子。

| Fig.5. Examples of estimated trajectories from our SLAM system. | 
|---|
本文中的SLAM系统与非实时的方法进行了比较,对比见表2。

| TABLE 2 SLAM RESULTS: RMSE OF ABSOLUTE TRAJECTORY ERROR | 
|---|
结论
本文提出了一种实时RGB-D视觉测程方法,可以处理高度动态的环境,该方法利用前景深度边缘点计算成对点云配准,提出了一种基于深度边缘对应距离的鲁棒静态加权策略。将静态加权策略融合到强度辅助的ICP中,我们的视觉测程系统能够平稳地处理动态环境。并将环闭度检测和映射优化结合起来,形成了适合动态环境的实时SLAM系统。
