视觉与激光融合SLAM研究综述
2021-01-12
(辽宁工业大学 电子与信息工程学院,辽宁 锦州 121001)
SLAM(simultaneous localization and mapping),中文译为“同时定位与建图”[1],用于描述搭载传感器的载体,在未知环境中估计自身位姿同时建立周围环境地图的过程。在实际应用中,SLAM 强调实时地、在没有先验知识的前提下确定位姿和建图,这是一个迭代往复、相互耦合的复杂过程。
自1986 年被提出[2-3]以来,SLAM 已有30 多年的研究历史。20 世纪90 年代到本世纪初,统计估计方法被应用到SLAM 研究中,主要包括卡尔曼滤波器(kalman filters,KF)和扩展卡尔曼滤波器(extended kalman filters,EKF)等。研究者将SLAM问题当成线性高斯系统进行研究取得了一定的成果,但也不可避免地产生线性化误差和噪声高斯分布假设等问题。为了克服KF 和EKF 方法上的缺陷,研究者将粒子滤波器(particle filters,PF)和最大似然估计[4]的方法引入到SLAM 研究中。这一时期的研究方法可被视为SLAM 研究的“经典方法”,主要贡献是发展出了一套比较成熟的算法框架。受限于计算机的性能,这一阶段SLAM 方法的最大问题是无法满足实时构建全局地图的要求。21 世纪以来,随着半导体行业的兴起以及GPU 技术的快速发展,计算性能极大提升,以激光雷达为中心的激光SLAM 和以视觉相机为中心的视觉SLAM 在理论和实践上都取得了突破性进展。SLAM 研究的方向已经逐步转向非线性优化方法,以图优化为代表的非线性优化方法被认为明显优于经典滤波器方法[5]。由于开源运动的兴起,许多开源SLAM 实现方法被研究者公开,比较著名的有针对激光雷达的Hector-SLAM[6]、Gmapping[7]、Catragrapher[8]、KartoSLAM[9]等,以及针对视觉相机的ORB-SLAM[10]、LSD-SLAM[11]、MonoSLAM[12]、RGBD-SLAM[13]等。
由于应用场景的复杂性,视觉SLAM 和激光SLAM 在单独使用中都存在一定的局限性,因此研究者们考虑将二者融合,以发挥不同传感器的优势。本文分别对视觉SLAM、激光SLAM 和视觉与激光融合SLAM 的研究进行梳理,重点从传感器数据层的角度探讨视觉与激光融合SLAM 的优缺点和应用场景,并对未来SLAM 的发展方向和研究热点进行了展望。
1 视觉SLAM
视觉传感器因价格低廉、能够采集大量信息、测量范围大等优点,一直以来都是SLAM 问题的主要研究方向。视觉SLAM 的原理很简单,即通过对图像序列特征像素的运动感知来顺序估计相机运动,Taketomi 等[14]和Fuetes-Pacheco 等[15]对视觉SLAM 进行了详细的综述。实现视觉SLAM 的方法主要有2 种,一是基于特征提取的视觉SLAM 方法,即检测和跟踪图像中的特征点。二是使用整个图像而不提取特征,称为直接法SLAM。近年来也产生了一些使用特殊类型相机的视觉SLAM 方法。
由于视觉传感器对光照变化或低纹理环境敏感,在缺乏光照和纹理特征的环境中,视觉SLAM表现较差,甚至无法完成任务。RGB-D 相机工作依赖红外光,环境光线会严重干扰检测,因此在室外环境中的性能表现不佳,只在室内场景下表现良好。另外,单目相机也存在尺度不确定性、尺度漂移、需要初始化等缺点。为了克服在室内环境中缺乏特征的缺点,研究者们对环境中的几何特征进行了研究,如直线、线段或物体边缘。这些环境中的几何特征被称为路标。识别路标面临的困难如下:(1)缺少准确的匹配描述符;(2)对应的3D 目标由于特征过少而难以初始化。由于特征不匹配或初始化错误,环境的三维稀疏表示并不十分精确。利用不同的路标表达生成地图是一个泛化的多约束最大似然问题,解决这个问题需要使用非线性优化算法。尽管GPU 技术已经带来了计算性能的飞跃,图像分析仍然需要很高的计算复杂度。关于视觉SLAM 算法的优缺点总结见表1。
表1 视觉SLAM 优缺点
2 激光SLAM
激光扫描可以快速得到点云图像,基于激光雷达的SLAM 在工业界应用十分广泛,基于激光雷达的SLAM 研究也取得了诸多进展。激光雷达SLAM主要基于扫描匹配方法,能够提供非常精确的2D或3D 环境信息,但通常很耗时,不能像视觉SLAM那样处理路标。激光雷达在处理平面光滑特征时能体现出优势,但它依赖简单的扫描匹配方法,稳定性不高。激光SLAM 的环境特征不明显,对于导航来说并不可靠,因此往往需要与惯性导航单元(inertial measurement unit,IMU)融合。同时由于激光SLAM 在动态复杂环境下的性能不佳,导致重定位能力差,往往需要借助IMU 进行去失真处理。工业级IMU 的成本很高,这也阻碍了激光SLAM 的发展。激光SLAM 的优缺点总结见表2。
表2 激光SLAM 优缺点
3 视觉与激光雷达的融合
目前,无论是基于视觉还是基于激光雷达的SLAM 研究都取得了不错的进展,但各有问题。基于视觉的SLAM 已能提供比较准确的结果,但存在一些不足,如单目相机的比例因子漂移、深度估计能力差、初始化延迟、立体视觉范围窄小,对基于特征的间接方法重建地图稀疏、RGB-D 相机在室外场景中使用困难等。基于激光雷达的SLAM 在测距和建图方面有很好的精度,但在环境剧烈变化时重定位能力差,稳定性欠佳,受限于点云质量无法获得高效的结果。因此,二者的融合可以互相弥补各自的不足,这也成为当今SLAM 研究的热点之一。
3.1 激光与视觉传感器的标定
2 种SLAM 技术融合所面临的第一个问题是传感器的校准。为了使2 种传感器在同一环境对同一场景进行有效描述,必须保证2 种传感器间精确标定。一般采用外部标定的方法(见图1),即根据2种传感器之间的约束关系确定两者之间的相对变换关系。
Unnikrishnan 等[16]首次提出校准激光雷达与视觉相机的方法,描述了如何手动标记激光雷达扫描和相机帧的对应点。Kassir 等[17]详细介绍了一种使用棋盘图的激光雷达与相机的自动校准方法,并推导出2 种传感器间的线性变换关系。由于SLAM 工作环境和条件是时刻变化的,这种离线校准方法并不能保证激光传感器与相机一直处于最佳的校准状态。为了解决这个问题,Park 等[18]提出了一种基于卷积神经网络(CNN)的在线标定方法。CNN 将激光雷达与相机的视差作为输入并返回校准参数,能够实现快速的在线校准,更有利于SLAM 的实时应用。然而,到目前为止,学界所用的校准方法仍不统一,仍然没有一种通用的简单有效的校准方法。
3.2 视觉与激光雷达融合的SLAM
3.2.1 基于EKF 方法的融合SLAM
很多学者运用基于扩展Kalman 滤波器(EKF)的经典方法进行了视觉与激光融合SLAM 的研究。Sun等[19]提出了一种基于数据关联的EKF表达式以提高SLAM 精度的方法。Xu 等[20]提出了一种基于EKF 的RGB-D 相机与激光雷达融合的SLAM 方法用于处理相机匹配失败,即当相机匹配失败时使用激光雷达对相机3D 点云数据进行补充并生成地图。但这种方法并没有真正地融合2 种传感器数据,只是在2 种传感器的工作模式间采用了切换的工作机制。Guillén 等[21]比较了基于EKF 的各种SLAM算法在集成了IMU 的视觉相机上的表现。现有的研究成果显示,在SLAM 系统中加入2D 激光雷达,进而生成2.5D 地图,可以提高机器人位姿估计的准确度,但这些不依赖于测量空间的特征检测方法仍然是松耦合的,而基于紧耦合的EKF 视觉与激光融合算法研究尚属空白。
3.2.2 改进的视觉SLAM
视觉SLAM 的缺点往往源于不能有效地提取到特征点的深度信息,而这正是激光雷达所擅长的。为了弥补单一视觉SLAM 的不足,研究者尝试将激光雷达数据融合到视觉SLAM 的方法中。Graeter 等[22]将激光雷达用于测量场景深度,将点云投影到视频帧上,采用基于视觉关键帧的BA(bundle adjustment)优化算法进行状态估计和建图。Shin 等[23]提出了一种使用激光雷达得到稀疏深度点云进行视觉SLAM 的方法,但由于相机的分辨率远高于激光雷达的分辨率,这种方法会导致大量像素没有深度信息。为此,De Silva 等[24]提出了一种解决分辨率匹配问题的方法,即在计算2 个传感器间的几何变换后使用高斯回归对缺失深度值进行插值。这种方法将激光雷达用于直接初始化图像中检测到的特征,其作用与使用RGB-D 传感器的方法相同。
还有一些研究通过在视觉SLAM 中融入激光雷达,提升了方案的应用价值,如降低成本、提升性能、增强系统鲁棒性等。一些研究将视觉SLAM的位姿估计用于建图阶段的点云标注。Zhang 等[25]提出了一种基于单维激光测距仪的单目视觉SLAM方法,该方法能够在低成本硬件上实现有效漂移校正,用于解决单目SLAM 经常出现的尺度漂移问题。Scherer 等[26]借助无人机绘制了沿河的航道和植被,采用视觉里程计与IMU 相结合的融合框架进行状态估计,并运用激光雷达探测障碍物和绘制河流边界,但这种方法产生的点云包含遮挡点,一定程度降低了状态估计的精度。Huang 等[27]解决了这一问题,提出了一种包括遮挡点检测和共面点检测机制的直接SLAM 方法。
3.2.3 改进的激光雷达SLAM
在视觉与激光融合SLAM 的研究中,激光雷达通过扫描匹配进行运动估计,相机进行特征检测。Liang等[28]使用扫描匹配和基于ORB特征的回环检测,改进了基于激光的SLAM 性能偏弱的缺点。Zhu等[29]提出了一种使用视觉回环检测的三维激光SLAM 方法,通过使用可视词袋的关键帧技术来执行回环检测。此外,迭代最近点法(iterative closest point,ICP)[30]也可以通过激光与视觉融合进行优化。Pande 等[31]使用视觉信息对刚体变换进行了初步估计,进而提出了一种泛化的ICP 框架。
3.2.4 并行激光与视觉SLAM
上述研究方法多采用单一SLAM 方法,并利用另一种传感器作为辅助。还有一些研究尝试将2 种SLAM 方法结合起来。Seo 等[32]提出了一种同时使用激光雷达SLAM 和视觉SLAM 的并行SLAM 方法,特点是在后端同时使用2 种模式的测量残差进行后端优化。Zhang 等[33]结合前人的研究设计了一种VLOAM(visual lidar odometry and mapping in real-time),这种融合里程计的特点是同时使用高频的视觉里程计和低频的激光雷达里程计,改善运动估计的准确性并抑制漂移。尽管通过激光数据和图像数据都可以得到机器人的位姿估计,Jiang 等[34]仍同时使用激光约束与特征点约束来定义图优化的代价函数,并构建了一个2.5D 的地图,以加快回环检测过程,这是目前最紧密的融合方法。
3.3 小结
现有研究的主要思路是利用传感器的融合为单激光雷达或单视觉的SLAM 框架提供额外信息以改进其性能,而不是提出一种融合的SLAM 框架。在实现SLAM 的所有方法中真正地融合框架研究很少。同时使用视觉信息与激光测量数据的通用SLAM 框架构建将是未来研究的一大挑战。
通过梳理发现,目前并没有一种能够利用2 种传感器优势的完全融合视觉与激光雷达数据的SLAM 方法。一方面,视觉SLAM 不能在恶劣的光照条件或无纹理的环境下工作,但激光SLAM 可以。另一方面,激光SLAM 在雨天条件下(如检测到错误的撞击)或在有纹理但几何特征不明显的区域(如开阔的场地、很长的走廊)中,比视觉SLAM效果更差。因此,基于激光与视觉融合的技术可使SLAM 对光照或天气等环境条件的适应性更强。目前已有的激光和视觉传感器融合算法研究都是特征层面而非数据层面的融合算法,即利用2 种传感器里程计的计算结果,因此在位姿估计和建图过程中2 种传感器的优势并未充分发挥。如果可以同时使用激光雷达或视觉特征,以一种紧耦合方式进行数据融合,能够进一步提高SLAM 的性能。
4 融合SLAM 新进展
4.1 SLAM 与深度学习结合
近年来,深度学习在计算机视觉领域蓬勃发展,在图像特征匹配领域比传统人工设计的算法有大幅提升。研究者尝试在视觉与激光融合SLAM 中使用深度学习改善里程计和回环检测性能,加强SLAM 系统对环境语义的理解。
Wang 等[35]提出了名为DeepVO 的视觉里程计方法,对原始图像序列使用CNN 学习特征,并使用递归神经网络(RNN)学习图像间动力学内在联系。这种基于双卷积神经网络的结构能高效提取相邻帧间的有效信息,与传统特征提取方法需要大量的几何计算不同,同时具有较好的泛化能力,因此得到了广泛的关注。Krizhevsky 等[36]和Zhou 等[37]使用无监督学习方法得到图像深度与位姿信息,同时分割出图像中的动态物体。该方法将深度图与位姿信息投影到图像上,通过比较真实图像与投影图像得到误差,进而得到代表动态图像的特征点。Kuznietsov 等[38]解决了无监督学习的不适定问题,在无深度图像时用图像的重构误差及平滑误差作为损失函数,可以应用到单目相机的深度估计上。
在回环检测方面,Sünderhauf 等[39]通过使用ConvNet 计算路标区域的特征,比较路标区域的相似性,以此判断整幅图像之间的相似性。该方法显著提高了局部遮挡和剧烈变化场景下检测的鲁棒性。Arandjelovic 等[40]将网络学习特征与人工设计特征相结合,并在GSVTM(google street view time machine)数据集上训练网络,得到的网络在场景识别领域取得了突出的效果。
4.2 SLAM 与多智能体结合
多智能体也是目前与融合SLAM 结合较多的热点研究方向。在多智能体系统中,各智能体可相互通信,相互协调,并行求解问题,应用在SLAM问题中能极大地提高求解效率。同时系统中各智能体相对独立,具有很好的容错性和抗干扰能力,可有效解决大尺度环境下SLAM 问题。
CCM-SLAM[41]是一种融合了IMU 的多智能体视觉SLAM 框架,各智能体将检测到的有限数量关键帧发送到服务器,由服务器进行地图构建。该框架可以适用于各种分布式机器人,可有效降低单一智能体成本与通信负担,在通信带宽受限的场景中应用。苏黎世大学的Cieslewski 等[42]提出的多智能分布架构使用逐次超松弛(successive over-relaxation,SOR)和雅可比超松弛(Jacobi over-relaxation,JOR)求解正规方程,有效节省了数据带宽,推动了多智能体技术与SLAM 融合。
5 结束语
目前,经典的SLAM 研究已经比较成熟,视觉SLAM、激光SLAM 以及二者的融合正在日趋完善,随着人工智能技术的发展,深度学习、多智能体与视觉激光融合SLAM 的结合为SLAM 的进一步发展开创了更为广阔的空间。视觉与激光2 种传感器的紧耦合SLAM 研究,机器学习与SLAM 的深度结合,都将成为SLAM 研究的未来发展方向。