Yang, Linjie, and Luping Wang. “A Semantic SLAM-Based Dense Mapping Approach for Large-Scale Dynamic Outdoor Environment.” Measurement 204 (November 30, 2022): 112001. https://doi.org/10.1016/j.measurement.2022.112001.
1 Introduction
本文提出的方法是针对室外动态环境中的语义SLAM,对于动态特征点的筛选,不是简单地利用语义信息对先验动态物体直接剔除,而是采用一个精确、鲁棒的特征点滤波机制,实现对特征点动态性的精确识别。
本文的贡献如下:
- 提出了一个应用于大范围室外动态环境的语义SLAM 系统,该系统是基于ORB-SLAM2 和 深度学习模型的;
- 设计了一个特征点滤除机制,该机制结合了语义特征、depth local contrast 以及多视角投影来进一步提高鲁棒性与准确性;
- 通过采用后验概率和增量更新,为高等级机器人导航创建了室外环境的稠密地图。
3 Method
3.1 The framework of our method
本文方法框架如Fig. 1所示,本系统使用立体RGB 图像作为输入,基于ORB-SLAM2 算法,结合不同的深度学习模型分别用于语义特征和深度信息的获取;根据多模态特征约束实现对特征点的滤波,获取稳定的特征点进行位姿解算与建图。
深度学习模型:采用S2R-DepthNet, DeepLab-V3 分别获取深度图片和语义特征,由于缺少大规模标注的室外数据集,两个模型均使用transfer learning 进行训练。
特征点滤波:在室外动态环境中如何获取稳定的特征点是本文的核心内容,该滤波机制将语义特征、depth local contrast 以及多视角投影进行结合来提高准确性与鲁棒性。
系统定位:利用稳定的特征点,并结合立体视角来实现位姿的估计与尺度不确定的消除。
建图:不仅构建用来位姿估计和定位的稀疏地图,也为高等级机器人导航以增量更新的方式构建室外稠密3D 地图。
3.2 Deep learning model
3.2.1 Depth estimation module
S2R-DepthNet 网络包含三个模块:Structure Extraction, Depth-specific Attention, depth prediction。经该网络获取的深度图片不仅用于生成稠密地图,也利用local contrast 来滤除不稳定的特征点以进行位姿估计。
3.2.2 Semantic segmentation module
考虑到室外环境的复杂性以及迁移学习的限制,作者使用性能强大的DeepLab-V3+ 作为语义分割模型。
本系统中,语义分割模块承担着两个作用:
- 通过产生一个二值掩码图片(背景为1,先验动态实例为0),来协助多视角投影来区分真正的动态特征点;
- 用于移除所有的动态实例来增强3D 地图的重复使用性。
3.3 Multiple views projection constraint
多视角投影约束的构建过程如Fig. 3所示:
具体步骤如下所示:
- 首先,利用Dyna-SLAM 的轻量跟踪,只使用语义二值掩码图片中的静态特征点计算当前帧的初始位姿估计;
- 其次,利用初始位姿估计计算当前帧中每个特征点的3D 坐标;
- 然后,为当前帧选取几个共视区域足够大的几个参考帧,将上步计算的对应3D 地图点投影至参考帧中;
- 最后,比较特征点在不同参考帧中的类别标签,如果存在类别标签差异,则判定为动态特征点。
3.4 System tracking
作者认为,如果一个特征点周围存在巨大的深度差异,那么该特征点被认为是不稳定的。
通常来讲,深度图片中的巨大差异也会反映在对应的RGB 图片中,太多、太近的伪特征点在跟踪过程中会由于太大的梯度值导致混乱;因此,作者使用深度图中的局部对比local contrast 来进一步提高特征点的筛选质量。作者使用简单的标准差来描述局部深度差异程度。
3.5 Dense mapping
本系统构建稠密地图的策略:
- 利用获取的深度图片来创建并增量式更新稠密地图,而且使用基于体素的采样方法来控制稠密地图点的数量;
- 为了实现更高级的3D 场景感知,作者将关键帧中的语义标签利用ray-casting 策略投影至地图点中。
此外,考虑到多观测数据融合,作者使用循环贝叶斯recursive Bayesian 进行数据关联,来更新每个地图点的概率分布:
根据式6,可得到基于最大后验概率的稠密地图点标签。
4 Experiments
作者提到,在KITTI数据集的01、04中,出现的汽车与人绝大部分都是动态的,因此,移除掉所有动态物体的算法(dynamic-SLAM、SLAMANTIC)较ORB-SLAM系列算法取得了更好的效果。