DS-SLAM: A Semantic Visual SLAM towards Dynamic Environments
面向动态环境的语义视觉SLAM
摘要:DS-SLAM将语义分割网络与移动一致性检查方法相结合,降低了动态对象的影响,从而大大提高了动态环境下的定位精度。
关键词:运动一致性检测、语义分割、SegNet、稠密八叉树图
目的:提升系统在动态环境中的鲁棒性、稳定性和检测精度;
框架:使用ORB-SLAM2作为一个基于全局特征的SLAM解决方案;
五个线程:跟踪、语义分割、局部映射、回环检测、八叉树地图创建;
跟踪线程首先提取ORB特征点,然后粗略检查特征点的移动一致性,并保存潜在的离群点。然后,跟踪线程等待具有由语义分割线程预测的像素级语义标签的图像。分割结果到达后,基于分割结果和之前检测到的潜在异常点,位于运动对象中的ORB特征点异常点将被丢弃。然后,通过匹配其余的稳定特征点来计算变换矩阵。
注:充分利用跟踪线程等待来自另一个线程的语义分割结果的时间,在等待期间,可以执行移动一致性检查。
创新点1:主要就是将运动一致性检查和语义分割结合在一起,运动一致性检查检测出来的动态点如果落在语义分割检测出的动态区域轮廓中,那么该轮廓(区域)就被认为是动态区域,该区域内的特征点就被剔除,两个线程并行执行;
创新点2:DS-SLAM创建了一个单独的线程来构建一个密集的语义3D八叉树图。稠密语义三维八叉树图采用对数优势评分法过滤掉不稳定的体素,并更新这些体素的语义。
运动一致性检查:(光流的不一致性)
第一步是计算光流金字塔,得到当前帧中匹配的特征点。那么如果匹配对离图像边缘太近或者匹配对中心的3×3图像块的像素差太大,匹配对就会被丢弃。第三步,用内联最多的RANSAC求基础矩阵。然后利用基本矩阵计算当前帧中的核线。最后,确定匹配点与其对应的核线之间的距离是否小于某个阈值。如果距离大于阈值,则匹配点将被确定为正在移动。
实验:
系统在TUM RGB-D数据集和真实环境中测试,和ORB-SLAM2进行对比。
评价指标:RMSE(均方根误差)、平均误差、中值误差和标准差(S.D.),其中RMSE和S.D.更能反映系统的鲁棒性和稳定性;
ATE:轨迹的全局一致性,RPE:测量平移和旋转漂移;
各个模块的运行速度已检测实时性;