分享

使用语义分割的选择帧改进的实时单目SLAM

 点云PCL 2023-02-15 发布于上海

文章:Improved Real-Time Monocular SLAM Using Semantic Segmentation on Selective Frames

作者:Jinkyu Lee, Muhyun Back,Sung Soo Hwang, and Il Yong Chun

编辑:点云PCL



摘要

这篇文章讲述了单目同步定位和建图(SLAM)在先进的智驾辅助系统和自动驾驶技术中的应用。由于单目摄像头价格便宜且易于安装,因此单目SLAM在这些领域中越来越重要。但是传统的单目SLAM有两个主要挑战,是引起定位和建图不准确主要原因。首先,定位和建图中尺度估计是具有挑战性的,其次,传统的单目SLAM在建图过程中使用不适当的环境因素,例如动态对象和低视差区域。

本文提出了一种改进的实时单目SLAM,通过有效使用基于深度学习的语义分割解决了上述挑战,为了实现所提方法的实时运行,我们并行处理地对下采样的关键帧应用语义分割,同时进行建图过程。此外,所提方法使用从道路标记的三维点和实际相机高度估计的地面平面,来校正相机姿态和三维点的尺度。该方法还删除了不适当的角点特征,这些点被标记为动态物体和低视差区域。通过八个视频数据集的实验证明,所提出的单目SLAM系统实现上有着显着改进。

主要贡献

本文提出了一种改进的实时单目SLAM框架,通过深度学习语义分割的精细方法解决了单目SLAM的一些局限性。本文的主要贡献如下:

  •  为了解决基于分割的单目SLAM的时间复杂度问题,我们仅将深度学习的语义分割应用于关键帧。为了进一步提高效率,分割过程在不同的线程中与建图过程并行执行。

  •  为了克服尺度估计的挑战,我们使用分割的道路标签和实际摄像机高度来估计绝对尺度,并将其应用于校正摄像机姿态和3D点的尺度。

  •  为了减少不准确的建图,我们过滤动态物体(如汽车、行人等)和低视差区域的角点特征,以生成不适当的3D点,为了识别低视差区域,我们使用广泛用于光流的Kanade-Lucas-Tomasi(KLT)跟踪器,并选择在天空、地形和建筑区域中位移很小的角落特征。

所提出的单目SLAM框架使用语义分割同时解决了上述的尺度估计和建图挑战。图1显示了所提出单目SLAM框架的一些中间过程。

图1,提出的单眼SLAM框架的中间结果。所提出的方法使用(a)中的分段关键帧来选择(b)中提取的适当的角特征,并在(c)中标记重建的3D点。在(c)中,标记的3D点的颜色对应于分割结果(b)中的颜色。所提出的方法使用道路标记的3D点进行尺度估计

主要内容

本文提出的单目 SLAM 系统包括三个模块:定位、建图和分割,每个模块在不同的线程中运行。我们修改了传统的基于关键帧的单目 SLAM 方法的核心,高效地整合了语义分割,概括了在上一个关键帧时间点和当前关键帧时间点之间每个模块的过程。定位模块在建图和分割模块完成对上一个关键帧的处理后选择关键帧。

与 ORB_SLAM类似,它提供当前关键帧的角点特征和相机姿态,提取每一帧的角点特征并用相互连接的关键帧的 3D 点来估计相机姿态,建图模块通过使用当前角点特征和相连的角点特征之间的三角测量生成新的 3D 点,并使用相连的分割关键帧的分割标签为新的 3D 点分类标签,然后使用仅包含道路标记的 3D 点估计地面平面,并使用估计的地面平面和真实相机高度校正相机姿态和 3D 点的尺度。当建图模块提供校正过尺度的相机姿态和 3D 点时,分割模块对下采样关键帧执行基于深度学习的语义分割,并使用分割结果删除移动物体和低视差区域以精炼关键帧的角点特征。图2概述了所提出的单目SLAM系统。

图2,前一关键帧和当前关键帧时间点之间的单目SLAM系统概述

A  语义分割与单目SLAM有效整合

只在关键帧上应用语义分割,这将提高单目SLAM的准确性,防止生成不合适的3D点,并为3D点分配语义标签,以更好地估计地面部分,然而,在每个帧上应用语义分割计算复杂,不适用于实时单目SLAM,3D点云是从仅使用关键帧的建图过程生成的,因此仅对关键帧进行分割就足够处理单目SLAM中的3D点。此外,我们在两个不同的线程中执行建图和分割过程。在单目SLAM中,3D点是通过从两个关键帧的匹配特征三角化生成的,因此仅对其中一个关键帧进行分割可能对随后的3D点进行处理,提出的整合方法在一个线程中使用连接的分段关键帧和相关数据执行建图过程,同时在另一个线程中使用当前关键帧和相关数据执行分割过程,图3说明了并行处理。

图3 基于关键帧的单目SLAM与语义分割结合的方法。蓝色框表示修改或添加的(子)模块。红色符号表示角特征,绿色符号表示相机姿态矩阵,蓝色符号表示关键帧,洋红色符号表示三维点图。输入和输出数据集分别列在左边和右边。

B. 修正尺度 

在每个当前关键帧时间点,我们修正关键帧的相机中心坐标和每个3D点坐标的尺度,首先仅使用在路面标记的3D点估计地面平面参数,地面平面用法向量和平面与原点的垂直距离d(i)表示,为了准确的地面平面估计,使用强大的参数估计方法随机样本一致(RANSAC),该方法仅使用路面标记的3D点的内点,每次RANSAC迭代中对n进行了归一化,不同于现有的在ROI中使用未标记的3D点进行RANSAC的方法。更具体说明请查看原文。

C.修正角点特征并去除不恰当的建图因素

在每个当前关键帧的时间点,通过使用当前数据和以前的数据来细化当前的角点特征,并去除移动物体和低视差区域的角落特征。

图5,根据当前关键帧和先前关键帧上使用3D针孔投影模型对提出的自适应T(i)选择的几何图示

实验

在KITTI-00数据集中应用提出的单目SLAM,不同处理方法和不同关键帧下采样因子的分割精度、运行时间和轨迹跟踪精度如下表。

在KITTI-00数据集中应用提出的单目SLAM,使用不同的低视差确定特征确定参数,滤波角特征的平均数量、轨迹跟踪精度和跟踪成功率。

在KITTI-00数据集中应用提出的单目SLAM中尺度校正和特征细化子模块的研究。

总结

单目SLAM方法仅使用一个相机,因此在尺度估计和建图精度方面存在严重局限性,所提出的单目SLAM系统通过高效使用基于深度学习的语义分割来解决这些限制,它仅在建图过程与(下采样)关键帧并行地应用最先进的语义分割。该方法使用标记为道路的3D点进行尺度校正,并在3D点生成中删除被动态物体和低视差区域标记的特征,无论视频序列是否存在回环,所提出的单目SLAM都比现有技术单目SLAM和单目ORB-SLAM2 的轨迹跟踪精度更高,在没有回路的数据序列中,所提出的单目SLAM的轨迹跟踪精度与现有的双目ORB-SLAM2 相当,与现有的基于分割的单目SLAM方法Mask-SLAM 相比,该系统实现了显著提高的轨迹跟踪精度和降低的每帧跟踪时间,它可以在标准CPU上实时运行,并且可以带有GPU。

我们相信提出的单目SLAM系统在汽车驾驶辅助系统(ADAS)和自动驾驶系统中将特别有用,因为它仅使用单个摄像机,但具有与立体视觉SLAM系统相当的性能。该提出的语义分割与单目SLAM的高效结合可用于视觉SLAM与其他需要高计算成本的深度学习方法的集成,例如深度估计。将有许多工作可以做的工作,首先,我们将在额外的线程中运行回环检测,以进一步提高轨迹跟踪精度,其次,我们将在所提出的方法中加入重定位技术,以提高防止跟踪失败的鲁棒性,第三,我们计划使用相机姿态、三维点坐标等来优化分割结果,在图像传感器方面,未来的工作是修改针对鱼眼或全向摄像机的框架。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多