同时定位与地图构建(Simultaneous Localization and Mapping, SLAM)技术自Smith(1986)提出以来,经过三十五年的发展,已取得众多优秀的研究成果。它所关注的问题是载有传感器的机器人如何在未知环境中定位并构建出环境地图,是机器人感知自身状态和外部环境的关键技术,在现实生活中实现了大规模的应用,如虚拟现实、增强现实、混合现实、自动驾驶、服务机器人等,且在向工业界稳定过渡。
 
SLAM的发展经历了三个阶段:第一阶段为早年的“经典”时期,主要完成了SLAM的概率解释,如基于扩展卡尔曼滤波器、粒子滤波器和极大似然估计的方法;第二阶段为“算法分析”时期,主要研究SLAM的基本性质,如收敛性、一致性、可观测性和稀疏性;第三阶段为当前的“鲁棒感知”时期,主要解决复杂环境下的适应性问题。面对日趋复杂的应用场景,设计SLAM算法应统筹兼顾,有针对性地对算力、精度、鲁棒性等进行取舍。
 

多源融合框架结构

现有多源融合SLAM分类
 
一.多传感器融合
用于估计机器人状态的多传感器融合系统分为感知自身运动信息的本体传感器和感知外部环境的外感受型传感器。本体传感器包括编码器、磁力计、轮速计、惯性测量单元等,其中惯性测量单元用得最为广泛。外感受型传感器有相机、激光雷达、毫米波雷达等,直接对周边环境进行观测。
针对用单传感器构建SLAM系统的局限性,研究者们首先提出将多种传感器组合,利用不同传感器的优势克服其他传感器的缺陷来提高定位建图算法在不同场景中的适用性和对位姿估计的准确性,涌现出视觉惯导、激光惯导、激光视觉惯导等多传感器融合系统。
 

典型视觉惯性SLAM系统框架

LIO-SAM紧耦合激光惯性系统结构

紧耦合激光视觉惯性系统结构
二.多特征基元融合
针对复杂环境,基于单特征基元的SLAM在精度和鲁棒性方面都有所欠缺,容易受到光照、运动、纹理等因素的影响,不确定性较高。而对于相机图像,不仅可以从中提取特征点,还可以获得线段特征、平面特征、像素灰度等信息特征;对于激光雷达点云,可以将其分为线特征点、面特征点和有正态分布特性的体素特征。在视觉SLAM系统中,特征点法通过提取和匹配相邻图像(关键)帧的特征点估计对应的帧间相机运动,包括特征检测、匹配、运动估计和优化等步骤;直接法则直接使用像素强度信息,通过最小化光度误差来实现运动估计。利用特征法和直接法的优点,可以构建出两种方法结合的SLAM系统。
 

特征点法与直接法结合的跟踪与建图流程
低维度的点特征在视觉SLAM和激光SLAM中是被研究者们普遍使用的,然而在走廊、礼堂和地下车库等环境中,由于无法有效提取足够的特征点,基于点特征的方法就不再适用,但是上述环境中的直线、曲线、平面、曲面、立方体等高维几何特征却十分丰富,这为研究者们解决问题提供了思路。
 

双目PL-SLAM系统框架
三.多维度信息融合
传统SLAM系统发展几十年至今,理论方面逐渐趋于成熟。其中的闭环检测通常依赖于从传感器原始数据中提取的几何基元特征,如特征点、线、面等,通过对几何特征编码的场景特征向量进行匹配实现闭环检测。但在恶劣环境下,几何特征提取极其不稳定,难以保证准确的闭环检测。而语义信息,是一种长期稳定的特征,不易受环境因素的影响,但只用语义信息无法实现精确定位。因此,可以尝试将语义信息融合到传统SLAM系统中,构建长期稳定的定位系统。近年来,基于数据驱动的深度学习的方法逐渐兴起,通过对大量数据的学习可以得到比手工涉及更加精确的模型,故而传统方法与学习方法有效融合可以提升定位系统的精度和鲁棒性。
 

Kimera结构示意图
里程计用两帧或多帧传感器数据来估计载体的相对位姿变化,以初始状态为基础推算出全局姿态,其核心问题就是如何从各种传感器测量中准确地估计出平移和旋转变换。当前的深度学习方法在视觉里程计、惯性里程计、视觉惯性里程计、激光里程计等应用中已经实现端到端的方案。基于监督学习的方法大多使用卷积神经网络和递归神经网络的组合方式实现视觉里程计的端到端的学习,卷积神经网络完成成对图像的视觉特征提取,递归神经网络则用来传递特征并对其时间相关性建模。
 

基于监督学习的视觉里程计
SLAM算法一般部署在特定环境中的特定机器人平台上,环境和机器人平台自身的物理信息可以为二者的状态估计提供有效约束。利用物理信息辅助SLAM任务中位姿估计主要有两类方法:一类方法直接使用传感器测量相应的物理量,如水压、气压、物理接触等;另一类方法在没有直接的传感器测量情况下,从背景知识出发间接制定约束条件,如推进力和地形等。
 
四.问题与挑战
尽管多源融合在过去几十年中取得了重大进展,但仍有许多挑战需要应对。
(1)合理融合多传感器的测量往往能提升系统性能,但在融合之前需要标定不同传感器之间的相对位姿变换与时间戳,一般会选择离线标定,然而在使用过程中,传感器间的外参由于机械变形及外界物理环境的变化,很有可能发生改变。虽然有在估计器中进行在线外参标定的解决方案,但其容易受到退化运动的影响而失效。故而需要开发鲁棒适应性强的实时在线多传感器外参标定、时间同步方法。
(2)在具有挑战性的动态复杂环境条件下(如变化的光照,剧烈运动,开阔场地,缺乏纹理的走廊等),需要长期稳健安全的算法来支撑,应该具备有效表示、实时检测跟踪运动物体的能力,将低维几何特征与高维几何特征相结合,在此过程中,通用鲁棒的几何特征提取、参数化、数据关联、耦合方法显得尤为重要。
(3)在融合几何信息和语义信息、传统方法与学习方法、外界自身物理信息等多维度信息时,大量的数据处理将非常耗时,而且对计算性能有一定要求,如何构建轻量级、紧凑部署、快速响应的SLAM系统仍是一个挑战。此外,能否构建出统一的、适应性极强的SLAM框架来应对不断出现的新传感器、新表示方法、新学习方法,是一个值得探究的问题。