Wu, Wenxin, Liang Guo, Hongli Gao, Zhichao You, Yuekai Liu, and Zhiqiang Chen. “YOLO-SLAM: A Semantic SLAM System towards Dynamic Environment with Geometric Constraint.” Neural Computing and Applications 34, no. 8 (April 2022): 6011–26. https://doi.org/10.1007/s00521-021-06764-3.
1 Introduction
本文提出了一种在动态环境中可有效消除移动物体影响的鲁棒SLAM 系统——YOLO-SLAM,该系统紧耦合深度学习在场景理解的优势和特征点的内在几何深度信息来检测动态特征点,本文的主要贡献:
- 设计了一个轻量级Darknet19-YOLOv3 物体检测网络,用于获取视觉语义信息;
- 提出了一种新的几何约束方法来识别动态特征点;
- 基于ORB-SLAM2 构建了YOLO-SLAM 系统,在动态环境中的准确性和鲁棒性都得到了提高。
2 Related Work
针对动态场景中的SLAM,主要有三种方法来消除动态物体的影响:几何方法,深度学习方法,以及两者相结合的方法。当前学术界更看重两者结合的方法,但是存在一定问题:
- 常用的深度学习网络,如SegNet,Mask-RCNN 很耗时;
- 多视角几何约束需要多帧图片,无法解决初始化或者前帧图片丢失的情况。
针对以上问题,作者提出了一种将深度学习和几何约束紧耦合的动态特征点剔除方法:
- 对YOLOv3 网络进行修改,得到一个轻量级的物体检测网络,以减少时间消耗;
- 提出一种新的几何约束方法,可在仅使用一张图片信息的情况下实现对动态物体特征点的检测。
3 Proposed method
3.1 Framework of YOLO-SLAM
YOLO-SLAM 的整体架构如Fig. 1所示。
移除动态特征点的细节过程如Fig. 2所示:
3.2 Lightweight object detection
作者将YOLOv3 网络的主干网从Darknet-53 更换为 Darknet-19,可在保持一定精度的同时大幅提高运行速度,两者的运行参数对比如下所示:
3.3 Dynamic features screening
RGB-D 相机获取的深度图如Fig. 5所示,可根据深度差异来辨别物体的轮廓,在此基础上,利用depth-RANSAC 方法来识别出bbox 内的静态特征点。
该方法基于三个假设:
- 人是最可能移动的物体,且占据了bbox 的大部分空间;
- 位于人上的特征点在深度值上差异很小;
- bbox 内,人和其他物体的深度差异较明显。
基于以上三个假设的depth-RANSAC 算法如下所示。
注:文章在对迭代次数 k 进行求解时,关于概率计算问题出现了错误。
文章将内点所占比例表示为 $w$ ,每次用N 个点计算RANSAC 模型时,在所选的N 个点中至少存在一个外点的概率为 $1-w^N$ ;若连续进行k 次迭代,则 $(1-w^N)^k$ 表示的是k 次迭代中,每次都至少存在一个外点,而文中错误地将 $(1-w^N)^k$ 表示为k 次连续迭代中至少存在一个外点。
在此错误前提下,作者使用 P 表示在 k 次迭代中,采样点全部都是内点,文中的求解为 $1-P = (1-w^N)^k$ ;但此处 P 代表的含义应是在 k 次迭代中,至少有一次迭代的采样点全部是内点。若要实现作者对P 的含义,则应为 $P = (w^N)^k$ 。