工程科学学报 Chinese Journal of Engineering 基于环境语义信息的同步定位与地图构建方法综述 李小侍何伟朱世强李月华谢天 Survey of simultaneous localization and mapping based on environmental semantic information LI Xiao-qian,HE Wei,ZHU Shi-qiang,LI Yue-hua,XIE Tian 引用本文: 李小倩,何伟,朱世强,李月华,谢天.基于环境语义信息的同步定位与地图构建方法综述.工程科学学报,2021,43(6): 754-767.doi:10.13374j.issn2095-9389.2020.11.09.006 LI Xiao-qian,HE Wei.ZHU Shi-qiang,LI Yue-hua,XIE Tian.Survey of simultaneous localization and mapping based on environmental semantic information [J].Chinese Journal of Engineering,2021,43(6):754-767.doi:10.13374/j.issn2095- 9389.2020.11.09.006 在线阅读View online:https::/doi.org10.13374.issn2095-9389.2020.11.09.006 您可能感兴趣的其他文章 Articles you may be interested in 多模态学习方法综述 A survey of multimodal machine learning 工程科学学报.2020,42(5):557 https:1doi.org/10.13374.issn2095-9389.2019.03.21.003 基于UWB的地下定位算法和拓扑优化 An underground localization algorithm and topology optimization based on ultra-wideband 工程科学学报.2018.40(6):743 https::/1doi.org/10.13374斩.issn2095-9389.2018.06.013 视线追踪中一种新的由粗及精的瞳孔定位方法 A new pupil localization method from rough to precise in gaze tracking 工程科学学报.2019,41(11):1484 https:oi.org/10.13374.issn2095-9389.2017.09.06.005 基于深度学习的高效火车号识别 Efficient wagon number recognition based on deep learning 工程科学学报.2020,42(11:1525htps:/1doi.org10.13374.issn2095-9389.2019.12.05.001 基于深度学习的人体低氧状态识别 Recognition of human hypoxic state based on deep learning 工程科学学报.2019,41(6:817htps:/oi.org10.13374.issn2095-9389.2019.06.014 深度神经网络模型压缩综述 A survey of model compression for deep neural networks 工程科学学报.2019,41(10,:1229htps:/oi.org10.13374.issn2095-9389.2019.03.27.002
基于环境语义信息的同步定位与地图构建方法综述 李小倩 何伟 朱世强 李月华 谢天 Survey of simultaneous localization and mapping based on environmental semantic information LI Xiao-qian, HE Wei, ZHU Shi-qiang, LI Yue-hua, XIE Tian 引用本文: 李小倩, 何伟, 朱世强, 李月华, 谢天. 基于环境语义信息的同步定位与地图构建方法综述[J]. 工程科学学报, 2021, 43(6): 754-767. doi: 10.13374/j.issn2095-9389.2020.11.09.006 LI Xiao-qian, HE Wei, ZHU Shi-qiang, LI Yue-hua, XIE Tian. Survey of simultaneous localization and mapping based on environmental semantic information [J]. Chinese Journal of Engineering, 2021, 43(6): 754-767. doi: 10.13374/j.issn2095- 9389.2020.11.09.006 在线阅读 View online: https://doi.org/10.13374/j.issn2095-9389.2020.11.09.006 您可能感兴趣的其他文章 Articles you may be interested in 多模态学习方法综述 A survey of multimodal machine learning 工程科学学报. 2020, 42(5): 557 https://doi.org/10.13374/j.issn2095-9389.2019.03.21.003 基于UWB的地下定位算法和拓扑优化 An underground localization algorithm and topology optimization based on ultra-wideband 工程科学学报. 2018, 40(6): 743 https://doi.org/10.13374/j.issn2095-9389.2018.06.013 视线追踪中一种新的由粗及精的瞳孔定位方法 A new pupil localization method from rough to precise in gaze tracking 工程科学学报. 2019, 41(11): 1484 https://doi.org/10.13374/j.issn2095-9389.2017.09.06.005 基于深度学习的高效火车号识别 Efficient wagon number recognition based on deep learning 工程科学学报. 2020, 42(11): 1525 https://doi.org/10.13374/j.issn2095-9389.2019.12.05.001 基于深度学习的人体低氧状态识别 Recognition of human hypoxic state based on deep learning 工程科学学报. 2019, 41(6): 817 https://doi.org/10.13374/j.issn2095-9389.2019.06.014 深度神经网络模型压缩综述 A survey of model compression for deep neural networks 工程科学学报. 2019, 41(10): 1229 https://doi.org/10.13374/j.issn2095-9389.2019.03.27.002
工程科学学报.第43卷.第6期:754-767.2021年6月 Chinese Journal of Engineering,Vol.43,No.6:754-767,June 2021 https://doi.org/10.13374/j.issn2095-9389.2020.11.09.006;http://cje.ustb.edu.cn 基于环境语义信息的同步定位与地图构建方法综述 李小倩,何伟,朱世强,李月华四,谢天 之江实验室,杭州311100 ☒通信作者,E-mail:liyh@zhejianglab.com 摘要同步定位与地图构建技术(SLAM)是当前机器人领域的重要研究热点,传统的SLAM技术虽然在实时性方面已经达 到较高的水平,但在定位精度和鲁棒性等方面还存在较大缺陷,所构建的环境地图虽然一定程度上满足了机器人的定位需 要,但不足以支撑机器人自主完成导航、避障等任务,交互性能不足.随着深度学习技术的发展,利用深度学习方法提取环境 语义信息,并与SLAM技术结合,越来越受到学者的关注.本文综述了环境语义信息应用到同步定位与地图构建领域的最新 研究进展,重点介绍和总结了语义信息与传统视觉SLAM在系统定位和地图构建方面结合的突出研究成果,并对传统视觉 SLAM算法与语义SLAM算法做了深入的对比研究.最后,展望了语义SLAM研究的发展方向. 关键词视觉同步定位与地图构建技术:深度学习:系统定位;地图构建:语义同步定位与地图构建技术 分类号TP24 Survey of simultaneous localization and mapping based on environmental semantic information LI Xiao-gian,HE Wei.ZHU Shi-giang,LI Yue-hud.XIE Tian Zhejiang Lab,Hangzhou 311100,China Corresponding author,E-mail:liyh@zhejianglab.com ABSTRACT The simultaneous localization and mapping(SLAM)technique is an important research direction in robotics.Although the traditional SLAM has reached a high level of real-time performance,major shortcomings still remain in its positioning accuracy and robustness.Using traditional SLAM,a geometric environment map can be constructed that can satisfy the pose estimation of robots. However,the interactive performance of this map is insufficient to support a robot in completing self-navigation and obstacle avoidance. One popular practical application of SLAM is to add semantic information by combining deep learning methods with SLAM.Systems that introduce environmental semantic information belong to semantic SLAM systems.Introduction of semantic information is of great significance for improving the positioning performance of a robot,optimizing the robustness of the robot system,and improving the scene-understanding ability of the robot.Semantic information improves recognition accuracy in complex scenes,which brings more optimization conditions for an odometer,pose estimation,and loop detection,etc.Therefore,positioning accuracy and robustness is improved.Moreover,semantic information aids in the promotion of data association from the traditional pixel level to the object level so that the perceived geometric environmental information can be assigned with semantic tags to obtain a high-level semantic map.This then aids a robot in understanding an autonomous environment and human-computer interaction.This paper summarized the latest researches that apply semantic information to SLAM.The prominent achievements of semantics combined with the traditional visual SLAM of localization and mapping were also discussed.In addition,the semantic SLAM was compared with the traditional SLAM in 收稿日期:2020-11-09 基金项目:国家重点研发计划资助项目(2018AAA0102703):科工局稳定支持项目(HTKJ2019KL502005):第67批中国博士后科学基金面 上资助项目(HTKJ2019KL502005)
基于环境语义信息的同步定位与地图构建方法综述 李小倩,何 伟,朱世强,李月华苣,谢 天 之江实验室,杭州 311100 苣通信作者,E-mail: liyh@zhejianglab.com 摘 要 同步定位与地图构建技术(SLAM)是当前机器人领域的重要研究热点,传统的 SLAM 技术虽然在实时性方面已经达 到较高的水平,但在定位精度和鲁棒性等方面还存在较大缺陷,所构建的环境地图虽然一定程度上满足了机器人的定位需 要,但不足以支撑机器人自主完成导航、避障等任务,交互性能不足. 随着深度学习技术的发展,利用深度学习方法提取环境 语义信息,并与 SLAM 技术结合,越来越受到学者的关注. 本文综述了环境语义信息应用到同步定位与地图构建领域的最新 研究进展,重点介绍和总结了语义信息与传统视觉 SLAM 在系统定位和地图构建方面结合的突出研究成果,并对传统视觉 SLAM 算法与语义 SLAM 算法做了深入的对比研究. 最后,展望了语义 SLAM 研究的发展方向. 关键词 视觉同步定位与地图构建技术;深度学习;系统定位;地图构建;语义同步定位与地图构建技术 分类号 TP24 Survey of simultaneous localization and mapping based on environmental semantic information LI Xiao-qian,HE Wei,ZHU Shi-qiang,LI Yue-hua苣 ,XIE Tian Zhejiang Lab, Hangzhou 311100, China 苣 Corresponding author, E-mail: liyh@zhejianglab.com ABSTRACT The simultaneous localization and mapping (SLAM) technique is an important research direction in robotics. Although the traditional SLAM has reached a high level of real-time performance, major shortcomings still remain in its positioning accuracy and robustness. Using traditional SLAM, a geometric environment map can be constructed that can satisfy the pose estimation of robots. However, the interactive performance of this map is insufficient to support a robot in completing self-navigation and obstacle avoidance. One popular practical application of SLAM is to add semantic information by combining deep learning methods with SLAM. Systems that introduce environmental semantic information belong to semantic SLAM systems. Introduction of semantic information is of great significance for improving the positioning performance of a robot, optimizing the robustness of the robot system, and improving the scene-understanding ability of the robot. Semantic information improves recognition accuracy in complex scenes, which brings more optimization conditions for an odometer, pose estimation, and loop detection, etc. Therefore, positioning accuracy and robustness is improved. Moreover, semantic information aids in the promotion of data association from the traditional pixel level to the object level so that the perceived geometric environmental information can be assigned with semantic tags to obtain a high-level semantic map. This then aids a robot in understanding an autonomous environment and human –computer interaction. This paper summarized the latest researches that apply semantic information to SLAM. The prominent achievements of semantics combined with the traditional visual SLAM of localization and mapping were also discussed. In addition, the semantic SLAM was compared with the traditional SLAM in 收稿日期: 2020−11−09 基金项目: 国家重点研发计划资助项目(2018AAA0102703);科工局稳定支持项目(HTKJ2019KL502005);第 67 批中国博士后科学基金面 上资助项目(HTKJ2019KL502005) 工程科学学报,第 43 卷,第 6 期:754−767,2021 年 6 月 Chinese Journal of Engineering, Vol. 43, No. 6: 754−767, June 2021 https://doi.org/10.13374/j.issn2095-9389.2020.11.09.006; http://cje.ustb.edu.cn
李小倩等:基于环境语义信息的同步定位与地图构建方法综述 755· detail.Finally,future research topics of advanced semantic SLAM were explored.This study aims to serve as a guide for future researchers in applying semantic information to tackle localization and mapping problems KEY WORDS visual simultaneous localization and mapping:deep learning;localization;mapping;semantic simultaneous localization and mapping 同步定位和建图(Simultaneous localization and 的研究进展,并将语义SLAM技术与传统V-SLAM mapping,.SLAM)是机器人利用自身携带的视觉、 技术进行分析和比较.最后,讨论了语义SLAM技 激光等传感器,在完成自身定位的同时构建环境 术最新的研究热点和发展方向,进行总结和展望 地图的过程,是提高机器人智能性、自主性的核心 1语义SLAM系统概述 环节,也是机器人相关研究中的一个基本问题- 通过相机采集图像信息作为环境感知信息源的 同步定位与建图的核心研究内容是机器人对 SLAM系统称为视觉SLAM-(Visual SLAM,V- 自身的状态估计和对环境的感知描述,其中定位 SLAM),与其他SLAM系统(如激光SLAM-)相 可以看作机器人对自身当前状态的估计,而地图 比,V-SLAM可感知更加丰富的色彩、纹理等环境 可以认为是机器人对环境认识、描述的集合.从 信息-剧 应用层面分析,机器人对于“定位”的需求是相似 V-SLAM系统大多将估计相机位姿作为主要 的,即实现对自身位姿的状态估计:而对于地图构 任务,通过多视几何理论构建三维地图.随着机器 建来说,其需求是广泛的 人的应用范围越来越广,使用者对于机器人的智 现代V-SLAM系统主要包括传感器信息读取、 能程度提出了更高的要求,传统利用环境中点、 前端视觉里程计、后端优化和建图4个部分叫,如 线、面等低级别几何特征信息的V-SLAM系统在 图1所示.视觉里程计2(Visual odometry,VO)模 系统定位精度和鲁棒性等方面已表现出明显不 块接收传感器所提供的数据,其任务包括特征 足,特别在应对弱纹理环境、光照变化和动态目标 提取,SLAM初始化,特征跟踪,估计相邻图像间 等方面依然有很多挑战随着深度学习技术的迅 相机的运动,构建局部地图,并根据图像间的多 速发展,其在计算机视觉(Computer vision,CV)的 视几何关系确定机器人位姿,又可称为V-SLAM 各个领域都有着非常成功的应用,在此背景下,近 的前端.后端优化包括位姿优化均和场景重定 年来,越来越多的SLAM研究者使用基于深度学 位),其任务为接收多个时刻视觉里程计估计的 习的方法提取环境语义信息,以获取高层次的场 相机位姿,并结合回环检测信息,进行优化,从而 景感知和理解,并应用在V-SLAM系统中o,辅助 得到全局一致的轨迹和地图.回环检测通过计算 视觉SLAM系统提升定位性能、地图可视化,从而 图像间的相似性判定当前场景与历史某个场景是 赋予机器人更高效的人机交互能力 否一致,并将检测结果输入后端优化,从而解决位 本文专注于对语义SLAM方法进行分析和讨 置估计随时间漂移的问题.最后,机器人根据优化 论,首先系统地介绍和分析环境语义信息与SLAM 后的运动轨迹和三维点云,建立满足任务要求的 系统结合在定位精度、鲁棒性和地图形式等方面 地图 Sensor data Front-end Back-end Mapping Feature extraction Pose optimization Motion trajectory Image Data association Relocalization Environmental map Loop closure detection 图1V-SLAM系统框架 Fig.I Architecture of the V-SLAM system 对SLAM系统而言,引入环境语义信息的SLAM 于提升机器人的定位性能、优化机器人系统的鲁 系统,均属于语义SLAM系统.语义信息的引入,对 棒性、提高机器人的场景理解能力等方面具有重
detail. Finally, future research topics of advanced semantic SLAM were explored. This study aims to serve as a guide for future researchers in applying semantic information to tackle localization and mapping problems. KEY WORDS visual simultaneous localization and mapping;deep learning;localization;mapping;semantic simultaneous localization and mapping 同步定位和建图(Simultaneous localization and mapping, SLAM)是机器人利用自身携带的视觉、 激光等传感器,在完成自身定位的同时构建环境 地图的过程,是提高机器人智能性、自主性的核心 环节,也是机器人相关研究中的一个基本问题[1−2] . 通过相机采集图像信息作为环境感知信息源的 SLAM 系统称为视觉 SLAM[3−4] ( Visual SLAM, VSLAM),与其他 SLAM 系统(如激光 SLAM[5−6] )相 比,V-SLAM 可感知更加丰富的色彩、纹理等环境 信息[7−8] . V-SLAM 系统大多将估计相机位姿作为主要 任务,通过多视几何理论构建三维地图. 随着机器 人的应用范围越来越广,使用者对于机器人的智 能程度提出了更高的要求,传统利用环境中点、 线、面等低级别几何特征信息的 V-SLAM 系统在 系统定位精度和鲁棒性等方面已表现出明显不 足,特别在应对弱纹理环境、光照变化和动态目标 等方面依然有很多挑战[9] . 随着深度学习技术的迅 速发展,其在计算机视觉(Computer vision,CV)的 各个领域都有着非常成功的应用. 在此背景下,近 年来,越来越多的 SLAM 研究者使用基于深度学 习的方法提取环境语义信息,以获取高层次的场 景感知和理解,并应用在 V-SLAM 系统中[10] ,辅助 视觉 SLAM 系统提升定位性能、地图可视化,从而 赋予机器人更高效的人机交互能力. 本文专注于对语义 SLAM 方法进行分析和讨 论,首先系统地介绍和分析环境语义信息与 SLAM 系统结合在定位精度、鲁棒性和地图形式等方面 的研究进展,并将语义 SLAM 技术与传统 V-SLAM 技术进行分析和比较. 最后,讨论了语义 SLAM 技 术最新的研究热点和发展方向,进行总结和展望. 1 语义 SLAM 系统概述 同步定位与建图的核心研究内容是机器人对 自身的状态估计和对环境的感知描述,其中定位 可以看作机器人对自身当前状态的估计,而地图 可以认为是机器人对环境认识、描述的集合. 从 应用层面分析,机器人对于“定位”的需求是相似 的,即实现对自身位姿的状态估计;而对于地图构 建来说,其需求是广泛的. 现代 V-SLAM 系统主要包括传感器信息读取、 前端视觉里程计、后端优化和建图 4 个部分[11] ,如 图 1 所示. 视觉里程计[12] (Visual odometry, VO)模 块接收传感器所提供的数据,其任务包括特征 提取,SLAM 初始化,特征跟踪,估计相邻图像间 相机的运动,构建局部地图,并根据图像间的多 视几何关系确定机器人位姿,又可称为 V-SLAM 的前端. 后端优化包括位姿优化[13−14] 和场景重定 位[15] ,其任务为接收多个时刻视觉里程计估计的 相机位姿,并结合回环检测信息,进行优化,从而 得到全局一致的轨迹和地图. 回环检测通过计算 图像间的相似性判定当前场景与历史某个场景是 否一致,并将检测结果输入后端优化,从而解决位 置估计随时间漂移的问题. 最后,机器人根据优化 后的运动轨迹和三维点云,建立满足任务要求的 地图. Image Feature extraction Sensor data Data association Pose optimization Relocalization Loop closure detection Front-end Back-end Mapping Motion trajectory Environmental map 图 1 V-SLAM 系统框架 Fig.1 Architecture of the V-SLAM system 对 SLAM 系统而言,引入环境语义信息的 SLAM 系统,均属于语义 SLAM 系统. 语义信息的引入,对 于提升机器人的定位性能、优化机器人系统的鲁 棒性、提高机器人的场景理解能力等方面具有重 李小倩等: 基于环境语义信息的同步定位与地图构建方法综述 · 755 ·
.756 工程科学学报,第43卷,第6期 要意义.一方面,借助语义信息提升了复杂场景下 义信息,充分考虑目标对象的大小,使得单目尺度 的识别精度,为视觉里程计、位姿估计、回环检测 初始化处理更加高效和简洁,基于公开数据集的 等带来更多的优化条件,提高了定位精度和鲁棒 实验结果验证了其在各种场景应用中的有效性. 性:另一方面,借助语义信息将数据关联从传统的 (2)面向数据关联 像素级别提升到物体级别,将感知的几何环境信 在V-SLAM框架中,根据更新频率,数据关联 息赋以语义标签,进而得到高层次的语义地图,可 可以被分为两类:短期关联(如特征匹配)和长期关 帮助机器人进行自主环境理解和人机交互 联(如回环检测).基于环境语义信息的SLAM研 2语义与SLAM系统定位 究提出了一种基于中期数据关联机制的新思路. Bowman等Po1利用目标检测,整合尺度信息与 移动机器人对系统定位的性能要求主要包括 语义信息,用于SLAM系统的位姿估计.作者在应 3个方面:定位实时性、定位精度和定位鲁棒性 用时发现,目标对象的不合理数据关联,会严重影 目前SLAM的实时性已达到较高的水平,因此对 响定位与建图的结果.因此提出了概率数据关联 于SLAM技术真实应用于机器人领域,亟需提高 机制,在处理数据关联过程中充分考虑语义信息 SLAM系统的定位精度和鲁棒性.本节针对SLAM 的不确定性.通过引入最大期望估计(Expectation 系统结合环境语义信息提高系统定位的这两项重 maximization,.EM),根据语义分类结果计算数据关 要性能展开介绍. 联的概率,成功地将语义SLAM转换成概率问题, 2.1语义与定位精度 获得了ICRA2017年的最佳论文 定位是确定机器人在其工作环境中所处位置 Lianos等2四在此基础上,提出了全新的视觉 的过程,定位精度是SLAM系统中最为基本也是 语义里程计框架(Visual semantic odometry,VSO), 最重要的考核指标,是移动机器人开展导航和路 利用重投影前后语义标签具有的一致性来实现中 径规划任务的先决条件.利用语义分割和目标检 期(Medium-term)连续点跟踪.使用距离变换将分 测等技术将物体划分为更加具体的目标,非常适 割结果的边缘作为约束,利用重投影误差构造约 合SLAM这种需要精确几何约束问题的系统.结 束条件,整合语义约束到姿态和地图优化中,以 合环境语义信息,可有效改善单目视觉定位过程 改善系统的平移漂移问题.所提算法可以直接融 中的尺度不确定性问题和累积漂移等问题,进而 合进已有的直接法或间接法视觉里程计框架中, 提高系统定位精度 并分别在ORB-SLAM222(间接法VO代表)和 (1)面向单目初始化 PhotoBundle!2(直接法VO代表)系统中对语义信 由于单目相机存在尺度不确定性问题,单目视 息引入的效果进行实验对比,结果表明,添加语义 觉SLAM系统不可避免地出现尺度模糊和随时间 约束后有效减少了系统的平移漂移现象 漂移等现象,无法准确估计移动机器人的位姿6 (3)面向位姿优化 因此,如何修正尺度模糊和漂移是单目视觉SLAM 在V-SLAM系统中,需要解决的主要问题是 系统初始化中的关键问题 机器人的状态估计问题,常见的优化算法为基于 Frost等1刀提出基于混合多尺度可变模型的目 粒子滤波的优化算法和基于非线性优化的算法. 标检测系统I劉检测物体,并与SLAM系统中的关 在基于粒子滤波的优化算法中,可利用环境 键帧进行数据关联,然后对物体尺寸进行估计,生 语义信息更新粒子状态,进而更精准地进行位姿 成地图地标,最后地标与相机位姿共同参与局部 估计.Bavle等P提出了一种基于双目视觉里程计 优化,以解决尺度模糊和漂移的问题,保证了全局 和室内环境语义信息的粒子滤波优化方法,粒子 地图的一致性.Sucar与Hayet在贝叶斯框架内, 滤波器的预测阶段使用双目视觉里程计估计机器 通过基于深度学习的目标检测算法观测物体,确 人的三维姿态,并使用惯性和语义信息更新三维 定其先验高度,然后将局部地图中3D点投影到目 姿势,进而对机器人进行无漂移的姿态估计 标检测的2D图像上,确定目标检测区域的边界点 在基于非线性优化的算法中,可借助目标检 并投影回3D空间,进而确定物体的实际高度,最 测算法,将物体作为路标,融合到一个优化算法 后将先验高度与实际高度之比设置为尺度因子, 中,以提高系统定位精度.Nicholson等提出了 用于单目SLAM系统中的尺度矫正,从而准确估 面向对象的语义SLAM系统QuadricSLAM,利用 计移动机器人位姿.两项研究共同引入了环境语 椭圆体(对偶双曲面)对物体进行三维建模,紧凑
要意义. 一方面,借助语义信息提升了复杂场景下 的识别精度,为视觉里程计、位姿估计、回环检测 等带来更多的优化条件,提高了定位精度和鲁棒 性;另一方面,借助语义信息将数据关联从传统的 像素级别提升到物体级别,将感知的几何环境信 息赋以语义标签,进而得到高层次的语义地图,可 帮助机器人进行自主环境理解和人机交互. 2 语义与 SLAM 系统定位 移动机器人对系统定位的性能要求主要包括 3 个方面:定位实时性、定位精度和定位鲁棒性. 目前 SLAM 的实时性已达到较高的水平,因此对 于 SLAM 技术真实应用于机器人领域,亟需提高 SLAM 系统的定位精度和鲁棒性. 本节针对 SLAM 系统结合环境语义信息提高系统定位的这两项重 要性能展开介绍. 2.1 语义与定位精度 定位是确定机器人在其工作环境中所处位置 的过程,定位精度是 SLAM 系统中最为基本也是 最重要的考核指标,是移动机器人开展导航和路 径规划任务的先决条件. 利用语义分割和目标检 测等技术将物体划分为更加具体的目标,非常适 合 SLAM 这种需要精确几何约束问题的系统. 结 合环境语义信息,可有效改善单目视觉定位过程 中的尺度不确定性问题和累积漂移等问题,进而 提高系统定位精度. (1)面向单目初始化. 由于单目相机存在尺度不确定性问题,单目视 觉 SLAM 系统不可避免地出现尺度模糊和随时间 漂移等现象,无法准确估计移动机器人的位姿[16] . 因此,如何修正尺度模糊和漂移是单目视觉 SLAM 系统初始化中的关键问题. Frost 等[17] 提出基于混合多尺度可变模型的目 标检测系统[18] 检测物体,并与 SLAM 系统中的关 键帧进行数据关联,然后对物体尺寸进行估计,生 成地图地标,最后地标与相机位姿共同参与局部 优化,以解决尺度模糊和漂移的问题,保证了全局 地图的一致性. Sucar 与 Hayet[19] 在贝叶斯框架内, 通过基于深度学习的目标检测算法观测物体,确 定其先验高度,然后将局部地图中 3D 点投影到目 标检测的 2D 图像上,确定目标检测区域的边界点 并投影回 3D 空间,进而确定物体的实际高度,最 后将先验高度与实际高度之比设置为尺度因子, 用于单目 SLAM 系统中的尺度矫正,从而准确估 计移动机器人位姿. 两项研究共同引入了环境语 义信息,充分考虑目标对象的大小,使得单目尺度 初始化处理更加高效和简洁. 基于公开数据集的 实验结果验证了其在各种场景应用中的有效性. (2)面向数据关联. 在 V-SLAM 框架中,根据更新频率,数据关联 可以被分为两类:短期关联(如特征匹配)和长期关 联(如回环检测). 基于环境语义信息的 SLAM 研 究提出了一种基于中期数据关联机制的新思路. Bowman 等[20] 利用目标检测,整合尺度信息与 语义信息,用于 SLAM 系统的位姿估计. 作者在应 用时发现,目标对象的不合理数据关联,会严重影 响定位与建图的结果. 因此提出了概率数据关联 机制,在处理数据关联过程中充分考虑语义信息 的不确定性. 通过引入最大期望估计(Expectation maximization,EM),根据语义分类结果计算数据关 联的概率,成功地将语义 SLAM 转换成概率问题, 获得了 ICRA2017 年的最佳论文. Lianos 等[21] 在此基础上,提出了全新的视觉 语义里程计框架(Visual semantic odometry,VSO), 利用重投影前后语义标签具有的一致性来实现中 期(Medium-term)连续点跟踪. 使用距离变换将分 割结果的边缘作为约束,利用重投影误差构造约 束条件,整合语义约束到姿态和地图优化中,以 改善系统的平移漂移问题. 所提算法可以直接融 合进已有的直接法或间接法视觉里程计框架中, 并 分 别 在 ORB-SLAM2[22] ( 间 接 法 VO 代 表 ) 和 PhotoBundle[23] (直接法 VO 代表)系统中对语义信 息引入的效果进行实验对比,结果表明,添加语义 约束后有效减少了系统的平移漂移现象. (3)面向位姿优化. 在 V-SLAM 系统中,需要解决的主要问题是 机器人的状态估计问题,常见的优化算法为基于 粒子滤波的优化算法和基于非线性优化的算法. 在基于粒子滤波的优化算法中,可利用环境 语义信息更新粒子状态,进而更精准地进行位姿 估计. Bavle 等[24] 提出了一种基于双目视觉里程计 和室内环境语义信息的粒子滤波优化方法. 粒子 滤波器的预测阶段使用双目视觉里程计估计机器 人的三维姿态,并使用惯性和语义信息更新三维 姿势,进而对机器人进行无漂移的姿态估计. 在基于非线性优化的算法中,可借助目标检 测算法,将物体作为路标,融合到一个优化算法 中,以提高系统定位精度. Nicholson 等[25] 提出了 面向对象的语义 SLAM 系统 QuadricSLAM,利用 椭圆体(对偶双曲面)对物体进行三维建模,紧凑 · 756 · 工程科学学报,第 43 卷,第 6 期
李小倩等:基于环境语义信息的同步定位与地图构建方法综述 .757· 地表示物体的大小、位置和方向,并作为路标添加 回率上有很好的表现.此外,所提算法仅通过将查 到优化公式中,联合估计相机位姿和对偶二次曲 询图像的局部描述子转换为词典的视觉词,就能 面,以提高系统的定位精度 判断已访问过的地点,不需要任何预训练的步骤, 类似的,卡内基梅隆大学机器人研究所Yang 能够满足很好的实时性要求 与Scherer提出了CubeSLAM系统,用单目相机 张括嘉等利用YOLOv:3目标检测算法获 实现了对象级的定位与建图.作者利用目标检测 取环境中关键目标的语义信息,建立目标检测结 算法生成2D边界框,通过消失点法(Vanishing 果之间的相对位置关系,根据连续关键帧的相似 points,.VP)生成物体三维立方体,并将物体作为路 度变化情况进行回环判断.所提算法在公开数据 标,结合物体约束信息与几何信息,融合到一个 集上取得了较好的效果,与单纯利用传统视觉特 最小二乘公式中,改善相机位姿估计,提高了 征的算法相比,环境语义信息的应用有效提高了 SLAM的定位精度.与基于特征点的SLAM系统 室内场景下的闭环检测准确性 相比,对象级SLAM系统可以提供更多的几何约 2.2语义与定位鲁棒性 束和尺度一致性,所提算法在公开数据集上得到 定位鲁棒性是机器人安全运行的保证,是移 了较好的位姿估计精度,同时还提高了3D物体的 动机器人系统重要的考量指标.传统的V-SLAM 检测精度.同时,Yang与Scherert7在此基础上,结 系统在纹理特征缺失、光照变化较大和高速动态 合Pop-up SLAM2的思想,提出了一个无需先验 等场景下,非常容易出现定位信息丢失的情况,尤 物体和模型的联合物体和平面估计的单目SLAM 其是在自动驾驶这种对安全性要求较高的应用领 系统.首先,利用高阶图形模型,结合语义和遮挡 域,一旦定位信息丢失,后果将不堪设想.利用环 等约束推断单张图像中的三维物体和平面,然 境语义信息可有效改善传统V-SLAM系统面临的 后将提取的物体和平面,结合相机和特征点位姿, 这些问题,有效提升系统定位的鲁棒性 放在统一的框架中进行优化.实验结果表明,所提 (1)面向弱纹理环境 算法在ICL NUIM和TUM mono数据集中定位精 传统V-SLAM方案中采用的图像特征语义级 度准确,并可以在结构化环境中生成稠密地图. 别低,造成特征的可区别性较弱,在弱纹理等缺少 (4)面向重定位与回环检测 显著特征的环境中,传统基于特征点的方法难以 重定位和回环检测的目的不同,但通常可以 进行准确的运动估计.借助深度学习的方法提取 采用相同的技术.重定位主要是跟踪丢失时重新 环境中的立体特征,并用于优化位姿估计,可提升 找回当前姿态,恢复相机姿态估计;回环检测是识 系统定位鲁棒性 别机器人曾经到过的场景,得到几何一致的映射, Yang等28提出的Pop-up SLAM系统,验证了 从而解决漂移问题,提高全局精度.传统的SLAM 场景理解对弱纹理环境下机器人状态估计改善的 算法大都依赖于低级别的几何特征,使得重定位 有效性.利用深度学习的方法提取环境中墙-地的 和回环检测通常依赖于相机的视角,在特征不明 边界信息,并根据单幅图像生成立体平面模型,同 显或重复性的纹理环境中容易检测失败.语义 时利用平面法线间的差、平面间的距离和平面间 SLAM系统利用目标识别推测标志物的种类和大 的投影重叠3个几何信息进行平面匹配.然后将 小,产生易于识别的标志物,进而提高系统的定位 Pop-up模型提供的深度估计融合到LSD-SLAM 精度 深度图中,提高LSD-SLAM的深度估计质量,以提 Gawel等B0提出了一种基于图的语义重定位 高系统的鲁棒性.Ganti和Waslander指出从信 算法,将具有语义目标位置的关键帧组合成一组 息嫡较低的区域提取特征点,位姿估计的准确性 三维图,并利用图匹配算法求解相机在全局地图 低,对这些特征点跟踪,会增加错误数据关联的 中的位置.Konstantinos等B别提出了一种基于地点 风险,他们提出了一种基于信息论的特征选取方 视觉词描述的回环检测算法,通过对输入的图片 法,利用语义分割的不确定性概念计算信息交叉 流进行动态分割,定义一个个“地点”,并通过在线 嫡.该方法减少了对特征点数量的要求,显著提高 聚类算法,将图像的描述子转化为地图中的相应 了系统实时性和鲁棒性,而在精度上没有任何明 的视觉词.系统通过概率函数判断回环检测的候 显损失 选地点,并通过最近邻投票算法,匹配候选地点中 Qin等7针对地下停车场自动代客泊车系统, 最准确的那一帧图像.实验表明,算法在精确和召 提出了一种基于语义特征的定位方法.在狭窄拥
地表示物体的大小、位置和方向,并作为路标添加 到优化公式中,联合估计相机位姿和对偶二次曲 面,以提高系统的定位精度. 类似的,卡内基梅隆大学机器人研究所 Yang 与 Scherer[26] 提出了 CubeSLAM 系统,用单目相机 实现了对象级的定位与建图. 作者利用目标检测 算法生 成 2D 边界框 ,通过消失点法 ( Vanishing points,VP)生成物体三维立方体,并将物体作为路 标,结合物体约束信息与几何信息,融合到一个 最小二乘公式中 ,改善相机位姿估计 ,提高 了 SLAM 的定位精度. 与基于特征点的 SLAM 系统 相比,对象级 SLAM 系统可以提供更多的几何约 束和尺度一致性,所提算法在公开数据集上得到 了较好的位姿估计精度,同时还提高了 3D 物体的 检测精度. 同时,Yang 与 Scherer[27] 在此基础上,结 合 Pop-up SLAM[28] 的思想,提出了一个无需先验 物体和模型的联合物体和平面估计的单目 SLAM 系统. 首先,利用高阶图形模型,结合语义和遮挡 等约束[29] ,推断单张图像中的三维物体和平面,然 后将提取的物体和平面,结合相机和特征点位姿, 放在统一的框架中进行优化. 实验结果表明,所提 算法在 ICL NUIM 和 TUM mono 数据集中定位精 度准确,并可以在结构化环境中生成稠密地图. (4)面向重定位与回环检测 重定位和回环检测的目的不同,但通常可以 采用相同的技术. 重定位主要是跟踪丢失时重新 找回当前姿态,恢复相机姿态估计;回环检测是识 别机器人曾经到过的场景,得到几何一致的映射, 从而解决漂移问题,提高全局精度. 传统的 SLAM 算法大都依赖于低级别的几何特征,使得重定位 和回环检测通常依赖于相机的视角,在特征不明 显或重复性的纹理环境中容易检测失败. 语义 SLAM 系统利用目标识别推测标志物的种类和大 小,产生易于识别的标志物,进而提高系统的定位 精度. Gawel 等[30] 提出了一种基于图的语义重定位 算法,将具有语义目标位置的关键帧组合成一组 三维图,并利用图匹配算法求解相机在全局地图 中的位置. Konstantinos 等[31] 提出了一种基于地点 视觉词描述的回环检测算法,通过对输入的图片 流进行动态分割,定义一个个“地点”,并通过在线 聚类算法,将图像的描述子转化为地图中的相应 的视觉词. 系统通过概率函数判断回环检测的候 选地点,并通过最近邻投票算法,匹配候选地点中 最准确的那一帧图像. 实验表明,算法在精确和召 回率上有很好的表现. 此外,所提算法仅通过将查 询图像的局部描述子转换为词典的视觉词,就能 判断已访问过的地点,不需要任何预训练的步骤, 能够满足很好的实时性要求. 张括嘉等[32] 利用 YOLOv3[33] 目标检测算法获 取环境中关键目标的语义信息,建立目标检测结 果之间的相对位置关系,根据连续关键帧的相似 度变化情况进行回环判断. 所提算法在公开数据 集上取得了较好的效果,与单纯利用传统视觉特 征的算法相比,环境语义信息的应用有效提高了 室内场景下的闭环检测准确性. 2.2 语义与定位鲁棒性 定位鲁棒性是机器人安全运行的保证,是移 动机器人系统重要的考量指标. 传统的 V-SLAM 系统在纹理特征缺失、光照变化较大和高速动态 等场景下,非常容易出现定位信息丢失的情况,尤 其是在自动驾驶这种对安全性要求较高的应用领 域,一旦定位信息丢失,后果将不堪设想. 利用环 境语义信息可有效改善传统 V-SLAM 系统面临的 这些问题,有效提升系统定位的鲁棒性. (1)面向弱纹理环境. 传统 V-SLAM 方案中采用的图像特征语义级 别低,造成特征的可区别性较弱,在弱纹理等缺少 显著特征的环境中,传统基于特征点的方法难以 进行准确的运动估计. 借助深度学习的方法提取 环境中的立体特征,并用于优化位姿估计,可提升 系统定位鲁棒性. Yang 等[28] 提出的 Pop-up SLAM 系统,验证了 场景理解对弱纹理环境下机器人状态估计改善的 有效性. 利用深度学习的方法提取环境中墙‒地的 边界信息,并根据单幅图像生成立体平面模型,同 时利用平面法线间的差、平面间的距离和平面间 的投影重叠 3 个几何信息进行平面匹配. 然后将 Pop-up 模型提供的深度估计融合到 LSD-SLAM[34] 深度图中,提高 LSD-SLAM 的深度估计质量,以提 高系统的鲁棒性. Ganti 和 Waslander[35] 指出从信 息熵较低的区域提取特征点,位姿估计的准确性 低[36] ,对这些特征点跟踪,会增加错误数据关联的 风险,他们提出了一种基于信息论的特征选取方 法,利用语义分割的不确定性概念计算信息交叉 熵. 该方法减少了对特征点数量的要求,显著提高 了系统实时性和鲁棒性,而在精度上没有任何明 显损失. Qin 等[37] 针对地下停车场自动代客泊车系统, 提出了一种基于语义特征的定位方法. 在狭窄拥 李小倩等: 基于环境语义信息的同步定位与地图构建方法综述 · 757 ·
.758 工程科学学报,第43卷.第6期 挤且没有GPS信号的停车场环境中,环境结构相 略,通过在图像上的感兴趣区域上选取点(感兴趣 似,纹理特征不足,传统V-SLAM方法容易发生跟 区域即显著性图),并利用语义分割的结果对显著 踪丢失的问题,作者首先利用深度学习将地面上 性图进行滤波,调整每个像素点的显著性得分,从 的指路标志、停车线以及减速带等信息分割出来, 而降低了无信息区域(例如墙,天花板和地板等) 再根据里程计的信息,将语义特征映射到全局的 的显著性得分.实验结果表明显著性区域的点对 坐标系下,建立停车场的地图,然后通过将语义特 于光照和视角的变化更加鲁棒 征与先前的构建出来的地图进行匹配来对车辆进 (3)面向动态场景 行定位,最后采用扩展卡尔曼滤波器将视觉定位 传统的V-SLAM系统大多基于静态环境假 结果与里程计融合,保证在缺少纹理信息的停车 设,在处理动态环境的定位问题时,容易发生错误 场环境中,系统能够输出稳定的定位结果 匹配.近年来,针对动态场景的语义SLAM系统逐 (2)面向光照变化 渐受到越来越多的关注3州,通过引入环境语义 在传统V-SLAM系统中,特征描述子(如SIFT, 信息有效地对静态和动态特征点进行划分,移除 ORB等)对于光照变化较敏感,光照的变化容易导 动态特征点,从而减少动态干扰,以提高SLAM系 致目标表面颜色等特征的变化,对系统定位鲁棒 统的鲁棒性 性造成干扰.而环境中的物体类别与光照和时间 Yu等4阿基于ORB-SLAM2提出了一种动态环 变化无关,可利用环境语义信息构造新的特征描 境下鲁棒的语义SLAM系统(DS-SLAM),该系统 述子,从而有效降低由于光照变化对定位鲁棒性 基于光流金字塔算法进行运动一致性校验,并结 造成的不利影响 合语义分割网络获取物体轮廓,剔除位于移动物 2018年,瑞典查尔姆斯理工大学信号处理研 体上的特征点,减少动态对象对姿态估计的影响, 究小组的Stenborg等B提出了一种在已有的 提升了系统定位鲁棒性.在TUM RGB-D数据集 3D地图上,将语义类别作为地图点描述子的定位 以及真实环境下测试结果表明,该系统的绝对轨 算法,有效解决了长时间跨季度定位系统中环境 迹精度比ORB-SLAM2提高了一个数量级.但是, 光照变化等对定位系统的影响.Schonberger等IB9 该算法能识别的语义类别较少,且只定义人为动 提出了一种基于3D几何和语义信息进行视觉定 态物体,另外,该地图在回环失败时需要重新建 位的新方法,通过训练语义场景完备化作为辅助 图,地图的可移植能力不足.Bescos等s也在 任务,学习出鲁棒的局部描述符,以此建立查询和 ORB-SLAM2系统上,提出了一种面向动态物体检 数据库映射之间3D-2D的匹配,将匹配结果用于 测和背景修复的V-SLAM系统(DynaSLAM),通过 位姿估计与矫正,成功解决了大范围观测条件下 使用多视几何和深度学习的方法实现移动物体的 的鲁棒性视觉定位问题.在KITTI和NCLT数据 检测,并通过对动态物体遮挡的背景帧进行修复, 集上运行结果表明,所提方法在极端视角、照明和 生成静态场景地图.实验结果表明,DynaSLAM提 几何变化情况下,表现出了系统的高可靠性.此类 供的单目、双目和RGB-D3种运行状态在动态场 方法相较于基于传统描述子的方法节省了大量的 景中均有较好的鲁棒性,并能输出场景的静态地 存储空间,但语义描述子的应用也有一定的局限 图,更符合机器人长时间运行的使用需要 性,如在较单一类别的场景中容易产生误差 目前大多数语义信息用于动态场景都是将所 此外,还可通过优化特征选择策略,结合语义 有潜在运动的物体直接去除,但如若动态目标物 信息进行过滤,使得所关注目标对于光照变化更 体并没有发生运动,且占据相机视角的大部分,那 加鲁棒.Naseer等o提出了一种判别整体图像内 么将目标物体上的点都去除会对位姿估计产生很 容的方法,能够根据图像语义信息生成一个密集 严重的影响.Brasch等7针对此类现象提出了一 的场景显著性描述.通过训练感知环境变化大的 种改进方案,其引人对于地图点是否为静态点的 数据集学习显著性描述,保证能够在图片上分割 概率估计“静态率”(Inlier ratio),实现地图点在动 出更加稳定的区域,别除易随时间变化的区域,并 静态之间的平滑过渡.首先,根据语义分割网络的 将显著区域的特征和现有的整体图像上的特征进 输出赋予静态率一个先验值,例如车具有较低的 行融合,从而得到了一个更加鲁棒的场景描述 静态率,建筑具有较高的静态率等,然后根据不断 Liang等在稀疏直接法里程计(Direct sparse 地引入新的观测数据来更新该地图点的静态率, odometry,.DSO)基础上,改变了跟踪点的选取策 以在具有挑战性的条件下实现定位鲁棒性.Cu
挤且没有 GPS 信号的停车场环境中,环境结构相 似,纹理特征不足,传统 V-SLAM 方法容易发生跟 踪丢失的问题,作者首先利用深度学习将地面上 的指路标志、停车线以及减速带等信息分割出来, 再根据里程计的信息,将语义特征映射到全局的 坐标系下,建立停车场的地图,然后通过将语义特 征与先前的构建出来的地图进行匹配来对车辆进 行定位,最后采用扩展卡尔曼滤波器将视觉定位 结果与里程计融合,保证在缺少纹理信息的停车 场环境中,系统能够输出稳定的定位结果. (2)面向光照变化. 在传统 V-SLAM 系统中,特征描述子(如 SIFT, ORB 等)对于光照变化较敏感,光照的变化容易导 致目标表面颜色等特征的变化,对系统定位鲁棒 性造成干扰. 而环境中的物体类别与光照和时间 变化无关,可利用环境语义信息构造新的特征描 述子,从而有效降低由于光照变化对定位鲁棒性 造成的不利影响. 2018 年,瑞典查尔姆斯理工大学信号处理研 究 小 组 的 Stenborg 等 [38] 提 出 了 一 种 在 已 有 的 3D 地图上,将语义类别作为地图点描述子的定位 算法,有效解决了长时间跨季度定位系统中环境 光照变化等对定位系统的影响. Schönberger 等[39] 提出了一种基于 3D 几何和语义信息进行视觉定 位的新方法,通过训练语义场景完备化作为辅助 任务,学习出鲁棒的局部描述符,以此建立查询和 数据库映射之间 3D-2D 的匹配,将匹配结果用于 位姿估计与矫正,成功解决了大范围观测条件下 的鲁棒性视觉定位问题. 在 KITTI 和 NCLT 数据 集上运行结果表明,所提方法在极端视角、照明和 几何变化情况下,表现出了系统的高可靠性. 此类 方法相较于基于传统描述子的方法节省了大量的 存储空间,但语义描述子的应用也有一定的局限 性,如在较单一类别的场景中容易产生误差. 此外,还可通过优化特征选择策略,结合语义 信息进行过滤,使得所关注目标对于光照变化更 加鲁棒. Naseer 等[40] 提出了一种判别整体图像内 容的方法,能够根据图像语义信息生成一个密集 的场景显著性描述. 通过训练感知环境变化大的 数据集学习显著性描述,保证能够在图片上分割 出更加稳定的区域,剔除易随时间变化的区域,并 将显著区域的特征和现有的整体图像上的特征进 行融合,从而得到了一个更加鲁棒的场景描述. Liang 等 [41] 在 稀 疏 直 接 法 里 程 计 ( Direct sparse odometry, DSO) [42] 基础上,改变了跟踪点的选取策 略,通过在图像上的感兴趣区域上选取点(感兴趣 区域即显著性图),并利用语义分割的结果对显著 性图进行滤波,调整每个像素点的显著性得分,从 而降低了无信息区域(例如墙,天花板和地板等) 的显著性得分. 实验结果表明显著性区域的点对 于光照和视角的变化更加鲁棒. (3)面向动态场景. 传统的 V-SLAM 系统大多基于静态环境假 设,在处理动态环境的定位问题时,容易发生错误 匹配. 近年来,针对动态场景的语义 SLAM 系统逐 渐受到越来越多的关注[43−44] ,通过引入环境语义 信息有效地对静态和动态特征点进行划分,移除 动态特征点,从而减少动态干扰,以提高 SLAM 系 统的鲁棒性. Yu 等[45] 基于 ORB-SLAM2 提出了一种动态环 境下鲁棒的语义 SLAM 系统(DS-SLAM),该系统 基于光流金字塔算法进行运动一致性校验,并结 合语义分割网络获取物体轮廓,剔除位于移动物 体上的特征点,减少动态对象对姿态估计的影响, 提升了系统定位鲁棒性. 在 TUM RGB-D 数据集 以及真实环境下测试结果表明,该系统的绝对轨 迹精度比 ORB-SLAM2 提高了一个数量级. 但是, 该算法能识别的语义类别较少,且只定义人为动 态物体,另外,该地图在回环失败时需要重新建 图 ,地图的可移植能力不足 . Bescos 等 [46] 也 在 ORB-SLAM2 系统上,提出了一种面向动态物体检 测和背景修复的 V-SLAM 系统(DynaSLAM),通过 使用多视几何和深度学习的方法实现移动物体的 检测,并通过对动态物体遮挡的背景帧进行修复, 生成静态场景地图. 实验结果表明,DynaSLAM 提 供的单目、双目和 RGB-D 3 种运行状态在动态场 景中均有较好的鲁棒性,并能输出场景的静态地 图,更符合机器人长时间运行的使用需要. 目前大多数语义信息用于动态场景都是将所 有潜在运动的物体直接去除,但如若动态目标物 体并没有发生运动,且占据相机视角的大部分,那 么将目标物体上的点都去除会对位姿估计产生很 严重的影响. Brasch 等[47] 针对此类现象提出了一 种改进方案,其引入对于地图点是否为静态点的 概率估计“静态率”(Inlier ratio),实现地图点在动 静态之间的平滑过渡. 首先,根据语义分割网络的 输出赋予静态率一个先验值,例如车具有较低的 静态率,建筑具有较高的静态率等,然后根据不断 地引入新的观测数据来更新该地图点的静态率, 以在具有挑战性的条件下实现定位鲁棒性. Cui · 758 · 工程科学学报,第 43 卷,第 6 期
李小倩等:基于环境语义信息的同步定位与地图构建方法综述 .759· 与Ma48I提出了一种基于ORB-SLAM2RGB-D模 基于环境语义信息的SLAM技术不仅提取 式的面向动态环境的视觉语义SLAM系统(SOF- 环境中的几何信息,还能充分利用环境中的语义 SLAM).该系统采用一种新的语义光流动态特征 信息,即环境中个体的属性,从而提高机器人执行 检测方法,使用SegNet9产生像素级的语义分割 任务的智能水平.2I世纪初.Vasudevan等和 结果,获取运动先验(静态、潜在动态的和动态), Galindo等Is例先后提出了机器人语义地图的概念, 并将运动先验作为掩膜去除动态和潜在动态特征 阐述了构建具有语义信息的环境地图可以提高机 之间的匹配,然后利用语义静态特征的匹配计算 器人的感知能力,并且地图中的语义信息使机器 基本矩阵,最后利用基本矩阵和对极约束寻找并 人具有一定的推算能力.得益于SLAM技术的快 别除真正的动态特征,在跟踪和优化模块中保留 速发展,研究人员希望将这种含有语义信息的地 剩余的静态特征,实现动态环境下相机位姿的精 图形式应用到SLAM系统中,即构建环境语义地 确估计.在公开的TUM RGB-D数据集和真实环 图.早期的语义地图构建算法大多采用离线的方 境中的实验结果表明,所提算法可有效应对动态 式,基于马尔可夫等方法对几何地图进行语义标 环境. 注535刈,这种方法需要离线对地图进行处理,无法 由上可见,利用环境语义信息通过特征选择 在机器人上实际使用,随着机器学习技术的发展, 和优化数据关联等方法可有效提高系统定位的精 部分学者使用条件随机场(Conditional random 度,通过对目标物体的跟踪,可以提高弱纹理环 field,CRF)、随机决策森林(Random forest)等算法 境、光照变化和动态场景下SLAM系统的鲁棒性. 获取场景中的语义标签5s-s而,但是此类算法语义 相较于传统V-SLAM系统,基于语义的SLAM系 融合的效率较低、精度较差,亦不能将其应用到实 统直接提取图像特征,无需人工特征提取和匹配, 际场景.同时,部分学者针对机器人与环境中实体 更加简洁直观;基于语义的SLAM系统能够更充 的交互问题,提出将地图与预先构建的物体模型 分表达环境信息,进而实现高层次的场景感知和 进行融合,把实体从地图中分割出来57-,但是这 理解,保障了系统的定位精度和鲁棒性.但是,目 种方法依赖先验知识,限制了地图的应用场景.近 前对环境理解的算法主要基于深度学习等方法, 年来,深度学习技术快速发展,越来越多的研究人 不同学习算法之间的网络架构设计差异性大,且 员将深度学习方法与SLAM技术结合,利用目标 对训练数据库有较强的依赖性.同时,系统性能严 检测、语义分割等算法9提取环境的语义信息, 重依赖于环境目标识别和语义分割结果的准确 并将其融入到环境地图中,以构建环境语义地图 性.此外,当前环境语义信息多与SLAM局部的子 目前针对语义信息与SLAM地图构建融合的研究 模块相结合,如位姿优化或回环检测等,部分语义 主要分为两个方向,包括面向场景的语义地图构 SLAM学者也开始关注如何搭建一个端到端的 建和面向对象的语义地图构建,如表1所示.其 SLAM系统S0,将深度学习架构应用于整个SLAM 中,面向场景的语义地图侧重于机器人对环境的 系统,也是未来研究的一个重要方向 感知,而面向对象的语义地图更侧重于机器人与 3语义与SLAM地图构建 实体进行交互,接下来本文将围绕这两个方面进 行综述 在传统的SLAM研究中,地图构建主要服务 3.1面向场景的语义地图 于机器人定位,即利用构建的环境地图提高机器 面向场景的语义地图是指使用语义分割算法 人的定位精度,此时地图的表现形式主要是稀疏 对2D图像进行像素级分割,提取图片中的语义信 的点云地图.而当SLAM技术逐渐应用于机器人 息,并将其与3D点云进行融合,以构建全场景的 和自动驾驶领域,其需要利用环境地图完成导航 语义地图.McCorma等6o基于卷积神经网络提出 和避障,因此需要稠密的环境地图,如稠密点云地 了SemanticFusion算法,实现了室内环境语义地图 图、八叉树地图等.随着机器人和智能化程度提 构建,是构建像素级语义地图的典型代表.该算法 高,机器人逐渐服务于日常生活和工业生产,需要 构建了一个完整的语义SLAM系统,实现了传统 更加利于交互的环境地图.近年来,深度学习技术 SLAM框架与语义分割的结合,解决了传统语义 快速发展,利用深度学习方法构建具有语义信息 标注算法中语义类别少、需要离线标注等问题,并 的环境地图成为提高机器人交互能力一种可行的 且引入了一种节点概率更新算法和语义修正方 方案 法,在语义地图构建算法精度上具有较高水平.同
与 Ma[48] 提出了一种基于 ORB-SLAM2 RGB-D 模 式的面向动态环境的视觉语义 SLAM 系统 (SOFSLAM). 该系统采用一种新的语义光流动态特征 检测方法,使用 SegNet[49] 产生像素级的语义分割 结果,获取运动先验(静态、潜在动态的和动态), 并将运动先验作为掩膜去除动态和潜在动态特征 之间的匹配,然后利用语义静态特征的匹配计算 基本矩阵,最后利用基本矩阵和对极约束寻找并 剔除真正的动态特征,在跟踪和优化模块中保留 剩余的静态特征,实现动态环境下相机位姿的精 确估计. 在公开的 TUM RGB-D 数据集和真实环 境中的实验结果表明,所提算法可有效应对动态 环境. 由上可见,利用环境语义信息通过特征选择 和优化数据关联等方法可有效提高系统定位的精 度,通过对目标物体的跟踪,可以提高弱纹理环 境、光照变化和动态场景下 SLAM 系统的鲁棒性. 相较于传统 V-SLAM 系统,基于语义的 SLAM 系 统直接提取图像特征,无需人工特征提取和匹配, 更加简洁直观;基于语义的 SLAM 系统能够更充 分表达环境信息,进而实现高层次的场景感知和 理解,保障了系统的定位精度和鲁棒性. 但是,目 前对环境理解的算法主要基于深度学习等方法, 不同学习算法之间的网络架构设计差异性大,且 对训练数据库有较强的依赖性. 同时,系统性能严 重依赖于环境目标识别和语义分割结果的准确 性. 此外,当前环境语义信息多与 SLAM 局部的子 模块相结合,如位姿优化或回环检测等,部分语义 SLAM 学者也开始关注如何搭建一个端到端的 SLAM 系统[50] ,将深度学习架构应用于整个 SLAM 系统,也是未来研究的一个重要方向. 3 语义与 SLAM 地图构建 在传统的 SLAM 研究中,地图构建主要服务 于机器人定位,即利用构建的环境地图提高机器 人的定位精度,此时地图的表现形式主要是稀疏 的点云地图. 而当 SLAM 技术逐渐应用于机器人 和自动驾驶领域,其需要利用环境地图完成导航 和避障,因此需要稠密的环境地图,如稠密点云地 图、八叉树地图等. 随着机器人和智能化程度提 高,机器人逐渐服务于日常生活和工业生产,需要 更加利于交互的环境地图. 近年来,深度学习技术 快速发展,利用深度学习方法构建具有语义信息 的环境地图成为提高机器人交互能力一种可行的 方案. 基于环境语义信息的 SLAM 技术不仅提取 环境中的几何信息,还能充分利用环境中的语义 信息,即环境中个体的属性,从而提高机器人执行 任务的智能水平. 21 世纪初,Vasudevan 等[51] 和 Galindo 等[52] 先后提出了机器人语义地图的概念, 阐述了构建具有语义信息的环境地图可以提高机 器人的感知能力,并且地图中的语义信息使机器 人具有一定的推算能力. 得益于 SLAM 技术的快 速发展,研究人员希望将这种含有语义信息的地 图形式应用到 SLAM 系统中,即构建环境语义地 图. 早期的语义地图构建算法大多采用离线的方 式,基于马尔可夫等方法对几何地图进行语义标 注[53−54] ,这种方法需要离线对地图进行处理,无法 在机器人上实际使用. 随着机器学习技术的发展, 部 分 学 者 使 用 条 件 随 机 场 ( Conditional random field,CRF)、随机决策森林(Random forest)等算法 获取场景中的语义标签[55−56] ,但是此类算法语义 融合的效率较低、精度较差,亦不能将其应用到实 际场景. 同时,部分学者针对机器人与环境中实体 的交互问题,提出将地图与预先构建的物体模型 进行融合,把实体从地图中分割出来[57−58] ,但是这 种方法依赖先验知识,限制了地图的应用场景. 近 年来,深度学习技术快速发展,越来越多的研究人 员将深度学习方法与 SLAM 技术结合,利用目标 检测、语义分割等算法[59] 提取环境的语义信息, 并将其融入到环境地图中,以构建环境语义地图. 目前针对语义信息与 SLAM 地图构建融合的研究 主要分为两个方向,包括面向场景的语义地图构 建和面向对象的语义地图构建,如表 1 所示. 其 中,面向场景的语义地图侧重于机器人对环境的 感知,而面向对象的语义地图更侧重于机器人与 实体进行交互,接下来本文将围绕这两个方面进 行综述. 3.1 面向场景的语义地图 面向场景的语义地图是指使用语义分割算法 对 2D 图像进行像素级分割,提取图片中的语义信 息,并将其与 3D 点云进行融合,以构建全场景的 语义地图. McCorma 等[60] 基于卷积神经网络提出 了 SemanticFusion 算法,实现了室内环境语义地图 构建,是构建像素级语义地图的典型代表. 该算法 构建了一个完整的语义 SLAM 系统,实现了传统 SLAM 框架与语义分割的结合,解决了传统语义 标注算法中语义类别少、需要离线标注等问题,并 且引入了一种节点概率更新算法和语义修正方 法,在语义地图构建算法精度上具有较高水平. 同 李小倩等: 基于环境语义信息的同步定位与地图构建方法综述 · 759 ·
760 工程科学学报,第43卷.第6期 表1面向场景的语义地图与面向对象的语义地图对比 V2算法进行目标检测,以粗略估计物体位置,然 Table 1 Comparison of scene-oriented semantic maps with object- 后运用Canny运算符检测深度图像上目标对象的 oriented semantic maps 边缘,并基于区域增长算法对边缘进行处理,以完 Scene-oriented semantic maps Object-oriented semantic maps 成物体的精确分割.SRM算法通过非深度学习的 (SemanticFusionl0) (MaskFusion!s) 语义分割算法,解决了传统语义地图构建过程中 计算资源大的问题,从而提高了语义地图构建的 Input 实时性.Cui等6在该方向取得了比较好的地图 构建结果,该算法利用边缘计算实现了数据的实 时处理,并使用云端服务器处理数据,一定程度上 Ground Truth 解决了实时性问题.MIT提出的Kimera算法s例将 面向对象的语义地图构建方法提升到比较成熟的 层次,其基于模块化的思想构建SLAM系统,该系 Output 统可以在CPU上运行.在语义地图构建方面, Kimera使用双目相机获取三维点云,并利用深度 学习获取环境语义信息,然后利用集束投影 Semanti (Bundled raycasting)在处理三维点云的同时映射 cmap 语义标签,最后使用贝叶斯滤波更新每个体素的 语义标签.虽然该算法在语义地图构建的精度方 时,SemanticFusion简单实现了SLAM技术对语义 面达到了较高的水平,但是该算法语义融合的实 分割的优化,即根据SLAM输出的帧间特征点匹 时性较差 配关系,优化CNN对单张图片的语义分割效果, 同时,部分学者倾向于通过控制计算资源的 极大地提高了语义地图的精度,体现了SLAM系 调用解决面向场景的语义地图构建算法存在的实 统对深度学习研究的优化作用.但是,该算法需要 时性和精度问题.Webb等针对语义地图构建 极大的计算资源,难以在机器人上进行实际部署 系统中精度和实时性展开研究,提出了一种语义 使用.同时,虽然该算法在一定程度上提高了语义 地图自动参数调整方法,通过对语义模型准确性 分割的准确性,但是提升的效果非常有限,仅 和计算资源消耗进行衡量,自动调节语义融合的 3.3%.与SemanticFusion算法类似,Ma等62基于 参数,保证系统的实时性.Ehlers等u提出了高层 卷积神经网络提出了一种自监督的方式生成环境 次的管理语义地图构建的方法,考虑到机器人需 语义信息,该算法根据多视图的语义信息一致性 要在多样的场景中开展工作,而单一的参数不能 进行语义信息融合,实现了像素级的语义地图构 保证机器人在任意场景中建图效果均为最优,因 建.但是这种基于卷积神经网络的语义信息提取 此通过预先设定地图构建参数,并根据语义识别 技术忽视了图像信息的前后帧联系,这种算法虽 结果,自动选择设定好的参数,从而挑选最佳的传 然利用多视图进行语义约束,但是语义关联的帧 感器和建图参数构建语义地图 数较少.因此,Xiang与Fox61提出了基于递归神 面向场景的语义地图大多采用深度学习的方 经网络的DA-RNN算法,直接对视频帧进行语义 法,将2D的语义信息映射到3D的点云中,目前相 信息提取,并将语义信息与KinectFusion算法6构 关研究基本围绕语义分割方法和语义融合方法展 建的三维地图融合,实现了环境语义地图构建 开.一方面,从地图应用的角度考虑,虽然面向场 早期的面向场景的语义地图构建算法虽然提 景的语义地图可以辅助机器人更好的认识环境, 出了完整的语义地图构建框架,但是其计算资源 构造表现力更好的环境地图,但是这种地图构建 消耗大,难以在机器人上实际部署使用,针对此问 方法不利于机器人认识环境中的个体,机器人无 题,研究人员提出了轻量化的面向场景的语义地图 法与环境中的个体进行交互,在一定程度限制了 构建方法.Mao等I6基于RTABMAPIS阿和YOLO7) 机器人的智能化程度.另一方面,从算法的效果考 算法提出了用于语义地图构建的SEMANTIC- 虑,此类算法需要对场景中所有物体进行像素级 RTAB-MAP(SRM)算法,该算法不直接使用深度 语义分割,计算量大,导致实时性普遍不理想,而 学习方法对图像进行语义分割,而是使用YOLO 且需要对语义融合结果进行充分优化,否则难以
时,SemanticFusion 简单实现了 SLAM 技术对语义 分割的优化,即根据 SLAM 输出的帧间特征点匹 配关系,优化 CNN 对单张图片的语义分割效果, 极大地提高了语义地图的精度,体现了 SLAM 系 统对深度学习研究的优化作用. 但是,该算法需要 极大的计算资源,难以在机器人上进行实际部署 使用. 同时,虽然该算法在一定程度上提高了语义 分割的准确性 ,但是提升的效果非常有限 , 仅 3.3%. 与 SemanticFusion 算法类似,Ma 等[62] 基于 卷积神经网络提出了一种自监督的方式生成环境 语义信息,该算法根据多视图的语义信息一致性 进行语义信息融合,实现了像素级的语义地图构 建. 但是这种基于卷积神经网络的语义信息提取 技术忽视了图像信息的前后帧联系,这种算法虽 然利用多视图进行语义约束,但是语义关联的帧 数较少. 因此,Xiang 与 Fox[63] 提出了基于递归神 经网络的 DA-RNN 算法,直接对视频帧进行语义 信息提取,并将语义信息与 KinectFusion 算法[64] 构 建的三维地图融合,实现了环境语义地图构建. 早期的面向场景的语义地图构建算法虽然提 出了完整的语义地图构建框架,但是其计算资源 消耗大,难以在机器人上实际部署使用,针对此问 题,研究人员提出了轻量化的面向场景的语义地图 构建方法. Mao 等[65] 基于 RTABMAP[66] 和 YOLO[67] 算法提出了用于语义地图构建 的 SEMANTICRTAB-MAP (SRM) 算法,该算法不直接使用深度 学习方法对图像进行语义分割,而是使用 YOLO V2 算法进行目标检测,以粗略估计物体位置,然 后运用 Canny 运算符检测深度图像上目标对象的 边缘,并基于区域增长算法对边缘进行处理,以完 成物体的精确分割. SRM 算法通过非深度学习的 语义分割算法,解决了传统语义地图构建过程中 计算资源大的问题,从而提高了语义地图构建的 实时性. Cui 等[68] 在该方向取得了比较好的地图 构建结果,该算法利用边缘计算实现了数据的实 时处理,并使用云端服务器处理数据,一定程度上 解决了实时性问题. MIT 提出的 Kimera 算法[69] 将 面向对象的语义地图构建方法提升到比较成熟的 层次,其基于模块化的思想构建 SLAM 系统,该系 统可以在 CPU 上运行. 在语义地图构建方面 , Kimera 使用双目相机获取三维点云,并利用深度 学习获取环境语义信息 ,然后利用集束投影 (Bundled raycasting)在处理三维点云的同时映射 语义标签,最后使用贝叶斯滤波更新每个体素的 语义标签. 虽然该算法在语义地图构建的精度方 面达到了较高的水平,但是该算法语义融合的实 时性较差. 同时,部分学者倾向于通过控制计算资源的 调用解决面向场景的语义地图构建算法存在的实 时性和精度问题. Webb 等[70] 针对语义地图构建 系统中精度和实时性展开研究,提出了一种语义 地图自动参数调整方法,通过对语义模型准确性 和计算资源消耗进行衡量,自动调节语义融合的 参数,保证系统的实时性. Ehlers 等[71] 提出了高层 次的管理语义地图构建的方法,考虑到机器人需 要在多样的场景中开展工作,而单一的参数不能 保证机器人在任意场景中建图效果均为最优,因 此通过预先设定地图构建参数,并根据语义识别 结果,自动选择设定好的参数,从而挑选最佳的传 感器和建图参数构建语义地图. 面向场景的语义地图大多采用深度学习的方 法,将 2D 的语义信息映射到 3D 的点云中,目前相 关研究基本围绕语义分割方法和语义融合方法展 开. 一方面,从地图应用的角度考虑,虽然面向场 景的语义地图可以辅助机器人更好的认识环境, 构造表现力更好的环境地图,但是这种地图构建 方法不利于机器人认识环境中的个体,机器人无 法与环境中的个体进行交互,在一定程度限制了 机器人的智能化程度. 另一方面,从算法的效果考 虑,此类算法需要对场景中所有物体进行像素级 语义分割,计算量大,导致实时性普遍不理想,而 且需要对语义融合结果进行充分优化,否则难以 表 1 面向场景的语义地图与面向对象的语义地图对比 Table 1 Comparison of scene-oriented semantic maps with objectoriented semantic maps Scene-oriented semantic maps (SemanticFusion[60] ) Object-oriented semantic maps (MaskFusion[61] ) Input Ground Truth Output Semanti cmap · 760 · 工程科学学报,第 43 卷,第 6 期
李小倩等:基于环境语义信息的同步定位与地图构建方法综述 761 构建高精度的语义地图.因此,部分学者基于目标 时采用目标检测算法和实例分割算法提取环境语 检测算法和点云分割算法提出了面向对象的语义 义信息,并在面元上基于贝叶斯融合和更新语义 地图构建算法 信息.相比Object-RPE,Panoptic-.MOPE的实时性 3.2面向对象的语义地图 提升了大约3倍,主要是后者提出的语义分割算 面向对象的语义地图是指语义地图中仅包含 法Fast-RGBD-SSWP,解决了RGB-D数据的实时 部分实例的语义信息,语义信息以聚类的方式独 语义标注问题.Li等直接利用体素和像素之间 立于地图.因此,可以允许机器人对地图中每一个 的映射关系获取体素的语义类别,从而降低了语 实体的语义信息进行操作和维护.对机器人来说, 义融合中的计算量,一定程度上提高了算法的实 这种以聚类方式存储环境中实体信息的地图形式 时性,但是语义地图的精度略差.上述面向对象的 更利于机器人感知环境,并与环境的中的实体进 语义方法也关联了三维点云与2D语义分割结果, 行互动,提高了地图的实用性 在原理上基本与面向场景的语义地图构建方法类 经典的SLAM算法大多只构建纯几何形式的 似,忽视了三维地图与物体模型之间存在的几何 地图,如度量地图、拓扑地图等,语义信息的添加 联系.Hosseinzadeh等[o提出了一种将空间物体 仅限于部分先验已知的物体,需要预先构建物体 表示为二次曲面的方法,并整合了空间物体与平 模型库,降低了语义地图的普适性,限制了语义 面存在的约束,利用CNN进行目标检测,搭建了 地图的发展.Sunderhauf等四提出了基于ORB- 一套面向对象的语义地图构建系统.但是,该算法 SLAM221和SSD算法I的语义地图构建方法,在 在二次曲面生成时依赖深度图像进行平面分割和 线实时分割点云中的实体,在数据处理的过程中 参数回归,而且存在轴对称假设,导致算法的二次 将实体与非实体分开进行,对于实体维护更新点 重构鲁棒性降低,在实时性方面完全依赖于CNN 云和类别信息,而对于非实体仅维护更新点云信 网络的运行速度,实时性相对较差.针对上述问 息.实验表明,这种先进行实体分割,后进行语义 题,Hosseinzadeh等8提出了一种改进算法,使用 融合的方法,语义精度更高,错误匹配较少,但遗 两个CNN分别进行平面分割和参数回归,并集成 漏的语义类别较多.一方面,该算法使用的SSD 了目标检测算法,实现了对象实时检测和跟踪,提 算法在室外数据集上训练,而在实验室内环境中 升了语义地图的精度.面向对象的语义地图构建 进行实验:另一方面,语义分割精度、深度图的噪 需要检测环境的实体,而通过目标检测算法可以 声、相机的分辨率等因素都对语义地图的效果 判别环境中物体是否为动态物体,从而优化系统 有较大影响.类似的,MeCormac等w基于MASK- 鲁棒性 RCNN阿和KinectFusion算法I6提出了一种在线 早期面向对象的语义地图构建算法大多只关 的基于体素的语义SLAM系统,使用MASK-RCNN 注了地图构建问题,而忽略了利用动态物体属性 算法检测物体,基于体素前景(voxel foreground)原 优化系统性能.Rnz等6]提出了动态场景中基于 理将目标检测结果与TSDF模型进行融合,以构建 实例分割的语义地图构建算法MaskFusion,对于 面向对象的语义地图.但是,该系统设置了较高的 场景中的动态刚体,追踪其在地图中的位置,仅别 目标检测阈值,虽然保证了检测的准确性,但是漏 除场景中的非刚体,减少了场景信息的缺失.算法 检较多,算法的实时性较差.Hoang等a针对环境 使用Co-Fusion算法21根据物体的运动一致性和 中物体存在遮挡,难以估计物体位姿的问题,提出 是否与人接触判断物体是否为动态物体,并基于 了Object-RPE系统,解决了环境中存在遮挡、环境 图像的像素强度和CP深度点云配准跟踪动态物 杂乱时的语义地图构建问题,具有较好的鲁棒性. 体.其次,该算法结合语义分割和几何分割结果对 但是,Object-RPE系统基于ElasticFusion!和MASK- 环境进行实例分割,并引入基于深度不连续性和 RCNNI751算法开发,亦受到计算资源的限制,实时 表面法向量的几何分割方法,既满足了实时性要 性较差 求,又解决了语义分割边缘较粗糙的问题.最后, 基于此,部分学者针对语义地图构建算法中 在语义融合部分使用了类似文献[83]和ElasticFusion! 的目标检测算法和数据关联方法展开研究· 的方法,即用surfel的方式表示环境模型,通过物 Hoang等7I针对Object-RPE系统的实时性问题进 体标签将表面元素与正确的模型相关联,使每个 行研究,提出了一种全景映射和物体姿态估计系 物体的几何体随时间融合.Xù等8则针对语义地图 统(Panoptic-MOPE),这里的“全景”是指该系统同 大多采用面元的方式构建,难以在机器人上进行
构建高精度的语义地图. 因此,部分学者基于目标 检测算法和点云分割算法提出了面向对象的语义 地图构建算法. 3.2 面向对象的语义地图 面向对象的语义地图是指语义地图中仅包含 部分实例的语义信息,语义信息以聚类的方式独 立于地图. 因此,可以允许机器人对地图中每一个 实体的语义信息进行操作和维护. 对机器人来说, 这种以聚类方式存储环境中实体信息的地图形式 更利于机器人感知环境,并与环境的中的实体进 行互动,提高了地图的实用性. 经典的 SLAM 算法大多只构建纯几何形式的 地图,如度量地图、拓扑地图等,语义信息的添加 仅限于部分先验已知的物体,需要预先构建物体 模型库,降低了语义地图的普适性,限制了语义 地图的发展. Sunderhauf 等[72] 提出了基于 ORBSLAM2[23] 和 SSD 算法[73] 的语义地图构建方法,在 线实时分割点云中的实体,在数据处理的过程中 将实体与非实体分开进行,对于实体维护更新点 云和类别信息,而对于非实体仅维护更新点云信 息. 实验表明,这种先进行实体分割,后进行语义 融合的方法,语义精度更高,错误匹配较少,但遗 漏的语义类别较多. 一方面,该算法使用的 SSD 算法在室外数据集上训练,而在实验室内环境中 进行实验;另一方面,语义分割精度、深度图的噪 声、相机的分辨率等因素都对语义地图的效果 有较大影响. 类似的,McCormac 等[74] 基于 MASKRCNN[75] 和 KinectFusion 算法[64] 提出了一种在线 的基于体素的语义 SLAM 系统,使用 MASK-RCNN 算法检测物体,基于体素前景(voxel foreground)原 理将目标检测结果与 TSDF 模型进行融合,以构建 面向对象的语义地图. 但是,该系统设置了较高的 目标检测阈值,虽然保证了检测的准确性,但是漏 检较多,算法的实时性较差. Hoang 等[76] 针对环境 中物体存在遮挡,难以估计物体位姿的问题,提出 了 Object-RPE 系统,解决了环境中存在遮挡、环境 杂乱时的语义地图构建问题,具有较好的鲁棒性. 但是,Object-RPE 系统基于ElasticFusion[77] 和MASKRCNN[75] 算法开发,亦受到计算资源的限制,实时 性较差. 基于此,部分学者针对语义地图构建算法中 的 目 标 检 测 算 法 和 数 据 关 联 方 法 展 开 研 究 . Hoang 等[78] 针对 Object-RPE 系统的实时性问题进 行研究,提出了一种全景映射和物体姿态估计系 统(Panoptic-MOPE),这里的“全景”是指该系统同 时采用目标检测算法和实例分割算法提取环境语 义信息,并在面元上基于贝叶斯融合和更新语义 信息. 相比 Object-RPE,Panoptic-MOPE 的实时性 提升了大约 3 倍,主要是后者提出的语义分割算 法 Fast-RGBD-SSWP,解决了 RGB-D 数据的实时 语义标注问题. Li 等[79] 直接利用体素和像素之间 的映射关系获取体素的语义类别,从而降低了语 义融合中的计算量,一定程度上提高了算法的实 时性,但是语义地图的精度略差. 上述面向对象的 语义方法也关联了三维点云与 2D 语义分割结果, 在原理上基本与面向场景的语义地图构建方法类 似,忽视了三维地图与物体模型之间存在的几何 联系. Hosseinzadeh 等[80] 提出了一种将空间物体 表示为二次曲面的方法,并整合了空间物体与平 面存在的约束,利用 CNN 进行目标检测,搭建了 一套面向对象的语义地图构建系统. 但是,该算法 在二次曲面生成时依赖深度图像进行平面分割和 参数回归,而且存在轴对称假设,导致算法的二次 重构鲁棒性降低,在实时性方面完全依赖于 CNN 网络的运行速度,实时性相对较差. 针对上述问 题,Hosseinzadeh 等[81] 提出了一种改进算法,使用 两个 CNN 分别进行平面分割和参数回归,并集成 了目标检测算法,实现了对象实时检测和跟踪,提 升了语义地图的精度. 面向对象的语义地图构建 需要检测环境的实体,而通过目标检测算法可以 判别环境中物体是否为动态物体,从而优化系统 鲁棒性. 早期面向对象的语义地图构建算法大多只关 注了地图构建问题,而忽略了利用动态物体属性 优化系统性能. Rünz 等[61] 提出了动态场景中基于 实例分割的语义地图构建算法 MaskFusion,对于 场景中的动态刚体,追踪其在地图中的位置,仅剔 除场景中的非刚体,减少了场景信息的缺失. 算法 使用 Co-Fusion 算法[82] 根据物体的运动一致性和 是否与人接触判断物体是否为动态物体,并基于 图像的像素强度和 ICP 深度点云配准跟踪动态物 体. 其次,该算法结合语义分割和几何分割结果对 环境进行实例分割,并引入基于深度不连续性和 表面法向量的几何分割方法,既满足了实时性要 求,又解决了语义分割边缘较粗糙的问题. 最后, 在语义融合部分使用了类似文献[83] 和ElasticFusion[77] 的方法,即用 surfel 的方式表示环境模型,通过物 体标签将表面元素与正确的模型相关联,使每个 物体的几何体随时间融合. Xu 等[84] 针对语义地图 大多采用面元的方式构建,难以在机器人上进行 李小倩等: 基于环境语义信息的同步定位与地图构建方法综述 · 761 ·
·762 工程科学学报,第43卷.第6期 应用的问题,提出了一种基于体素的语义地图构 境中某些物体的类别,推理该环境的分类,以联想 建方法,利用测量不确定性加权并重新设置参数 其他可能存在于该环境的其他物体.此时,环境的 实现动态物体检测,并集成了几何信息、光度信息 连通性对于机器人探索环境的效率更加重要, 和语义信息进行语义分割,系统的鲁棒性较好.但 Chaplot等-]利用拓扑地图和CNN网络探索未 是该算法直接将行人当作外点进行剔除,没有进 知环境,该算法主要包括3个模块:Neural SLAM 行跟踪,另外,随着地图扩大、实体增多,基于体素 模块、全局决策模块和局部决策模块.其中, 构建环境地图的建图系统效率逐渐下降 SLAM模块卷积神经网络进行拓扑地图构建和位 面向对象的语义地图构建算法将工作重心置 姿估计,而带有空间语义信息的拓扑节点可以辅 于实体本身,包括环境中每一个实体的类别信息 助机器人更加高效地探索未知环境 和位置信息,不同于面向场景的语义地图,在这种 综上所述,面向场景的语义地图和面向对象 地图中,实体独立于环境,因此更利于高层次的场 的语义地图均需要大量的计算资源来处理地图构 景理解.但是目前面向对象的语义地图构建方法 建中的语义获取和数据融合,而拓扑语义地图难 大多需要同时处理实例分割和语义分割两项任 以满足机器人与环境交互的需要.因此,部分学者 务,系统的实时性比较差.另外,在处理动态物体 开始研究提取环境中的标志物、文字等信息替代 时,大多数算法直接别除动态物体,这对于地图构 传统意义的语义目标,从而简化语义地图的构建 建来说信息损失较多,因此,如何表示动态环境中 Li等提出将环境中的文本信息,并将其融人到 的动态物体是一个亟需解决的问题, SLAM系统中,以提升SLAM的定位性能和地图 对于地图构建来说,目前尚未出现公认一致 质量.但是当相机运动较快,图像的噪点较多时, 的地图表征,而上述两种语义地图占用空间大,无 算法的鲁棒性下降,在快速运动状态下有效提取 法应用于大规模场景工作的移动机器人.另外,在 文本信息仍面临巨大挑战 度量地图基础上构建的语义地图虽然在细节上对 4语义SLAM与传统视觉SLAM对比 场景的表现更加丰富,但是通常无法表达某一场 景的语义类别,例如厨房、卧室、书房等等.因此, 对视觉SLAM系统来说,精度、鲁棒性和实时 拓扑地图作为传统SLAM研究中不可或缺的一部 性是影响其能否实现实际应用的关键因素,系统 分,因其可表示环境的连通关系,并显著降低地图 所提取的特征描述子是否具有良好不变性会直接 的存储空间,部分学者着手研究拓扑语义SLAM 影响SLAM系统的性能I传统的V-SLAM系统 Oberlander等s提出了一种融合度量、拓扑和语 提取环境中的几何特征信息,常见的SFT和 义信息的环境地图构建方式,度量地图用来进行 SURF等特征,需要具有相关专业领域的专家设 局部避障和路径规划,拓扑地图表达环境的连通 计,具有较大的人为性,并且一般基于静态环境假 关系,并根据场景的几何形状特征进行语义判别, 设,这明显不符合实际应用场景,当存在弱纹理 赋予拓扑地图每个节点语义信息.这种拓扑-度量 区、光照强度变化和动态移动物体等情况时, 融合的混合地图形式一直是机器人导航领域的研 SLAM系统性能会明显下降,系统基本失效93-9 究重点8,Luo与Chiou'87使用YOL0V2算法s7 在构建环境地图时,一般只恢复环境的几何特征, 识别场景分类,将其与拓扑节点融合,赋予拓扑节 不能满足机器人导航、人机交互、自主探索等应 点语义信息,并利用栅格地图进行路径规划和避 用要求,而早期的语义地图构建方法一般采用模 障,实现了用语音控制机器人运动.拓扑地图与语 型库匹配的方式,需要预先构建物体模型库,局限 义信息的融合往往是将语义信息与拓扑节点融 性大,不利于推广使用 合,忽视了环境中的细节,虽然可帮助机器人方 随着计算机性能的提高和机器学习技术快速 便、快捷地到达某一场景,但是难以与场景中实体 发展,V-SLAM技术与机器学习技术相结合,以填 进行交互.例如,当机器人需要抓取环境中的杯子 补传统V-SLAM系统的不足,成为机器人自主导 等物体时,机器人并不能获取杯子的语义信息.因 航领域的重要研究方向之一,近几年兴起的深度 此,拓扑地图与语义信息的融合往往用来实现机 学习技术作为当前最具潜力和优势的计算机视觉 器人自主探索未知环境,文献[88-89]均开展了相 处理方法,受到SLAM领域研究者的广泛关注.在 关工作.类似人类进入一个陌生的环境,人类并不 语义SLAM系统中,环境语义信息大多通过深度 需要了解环境中存在每一个实体,而可以根据环 学习技术从预训练的图像集和实时感知的图像集
应用的问题,提出了一种基于体素的语义地图构 建方法,利用测量不确定性加权并重新设置参数 实现动态物体检测,并集成了几何信息、光度信息 和语义信息进行语义分割,系统的鲁棒性较好. 但 是该算法直接将行人当作外点进行剔除,没有进 行跟踪,另外,随着地图扩大、实体增多,基于体素 构建环境地图的建图系统效率逐渐下降. 面向对象的语义地图构建算法将工作重心置 于实体本身,包括环境中每一个实体的类别信息 和位置信息,不同于面向场景的语义地图,在这种 地图中,实体独立于环境,因此更利于高层次的场 景理解. 但是目前面向对象的语义地图构建方法 大多需要同时处理实例分割和语义分割两项任 务,系统的实时性比较差. 另外,在处理动态物体 时,大多数算法直接剔除动态物体,这对于地图构 建来说信息损失较多,因此,如何表示动态环境中 的动态物体是一个亟需解决的问题. 对于地图构建来说,目前尚未出现公认一致 的地图表征,而上述两种语义地图占用空间大,无 法应用于大规模场景工作的移动机器人. 另外,在 度量地图基础上构建的语义地图虽然在细节上对 场景的表现更加丰富,但是通常无法表达某一场 景的语义类别,例如厨房、卧室、书房等等. 因此, 拓扑地图作为传统 SLAM 研究中不可或缺的一部 分,因其可表示环境的连通关系,并显著降低地图 的存储空间,部分学者着手研究拓扑语义 SLAM. Oberlander 等[85] 提出了一种融合度量、拓扑和语 义信息的环境地图构建方式,度量地图用来进行 局部避障和路径规划,拓扑地图表达环境的连通 关系,并根据场景的几何形状特征进行语义判别, 赋予拓扑地图每个节点语义信息. 这种拓扑‒度量 融合的混合地图形式一直是机器人导航领域的研 究重点[86] ,Luo 与 Chiou[87] 使用 YOLO V2 算法[67] 识别场景分类,将其与拓扑节点融合,赋予拓扑节 点语义信息,并利用栅格地图进行路径规划和避 障,实现了用语音控制机器人运动. 拓扑地图与语 义信息的融合往往是将语义信息与拓扑节点融 合,忽视了环境中的细节,虽然可帮助机器人方 便、快捷地到达某一场景,但是难以与场景中实体 进行交互. 例如,当机器人需要抓取环境中的杯子 等物体时,机器人并不能获取杯子的语义信息. 因 此,拓扑地图与语义信息的融合往往用来实现机 器人自主探索未知环境,文献 [88−89] 均开展了相 关工作. 类似人类进入一个陌生的环境,人类并不 需要了解环境中存在每一个实体,而可以根据环 境中某些物体的类别,推理该环境的分类,以联想 其他可能存在于该环境的其他物体. 此时,环境的 连通性对于机器人探索环境的效率更加重要 , Chaplot 等[90−91] 利用拓扑地图和 CNN 网络探索未 知环境,该算法主要包括 3 个模块:Neural SLAM 模块 、全局决策模块和局部决策模块 . 其中 , SLAM 模块卷积神经网络进行拓扑地图构建和位 姿估计,而带有空间语义信息的拓扑节点可以辅 助机器人更加高效地探索未知环境. 综上所述,面向场景的语义地图和面向对象 的语义地图均需要大量的计算资源来处理地图构 建中的语义获取和数据融合,而拓扑语义地图难 以满足机器人与环境交互的需要. 因此,部分学者 开始研究提取环境中的标志物、文字等信息替代 传统意义的语义目标,从而简化语义地图的构建. Li 等[92] 提出将环境中的文本信息,并将其融入到 SLAM 系统中,以提升 SLAM 的定位性能和地图 质量. 但是当相机运动较快,图像的噪点较多时, 算法的鲁棒性下降,在快速运动状态下有效提取 文本信息仍面临巨大挑战. 4 语义 SLAM 与传统视觉 SLAM 对比 对视觉 SLAM 系统来说,精度、鲁棒性和实时 性是影响其能否实现实际应用的关键因素,系统 所提取的特征描述子是否具有良好不变性会直接 影响 SLAM 系统的性能[15] . 传统的 V-SLAM 系统 提取环境中的几何特征信息 ,常见 的 SIFT 和 SURF 等特征,需要具有相关专业领域的专家设 计,具有较大的人为性,并且一般基于静态环境假 设,这明显不符合实际应用场景,当存在弱纹理 区 、光照强度变化和动态移动物体等情况时 , SLAM 系统性能会明显下降,系统基本失效[93−94] . 在构建环境地图时,一般只恢复环境的几何特征, 不能满足机器人导航、人机交互、自主探索等应 用要求,而早期的语义地图构建方法一般采用模 型库匹配的方式,需要预先构建物体模型库,局限 性大,不利于推广使用. 随着计算机性能的提高和机器学习技术快速 发展,V-SLAM 技术与机器学习技术相结合,以填 补传统 V-SLAM 系统的不足,成为机器人自主导 航领域的重要研究方向之一. 近几年兴起的深度 学习技术作为当前最具潜力和优势的计算机视觉 处理方法,受到 SLAM 领域研究者的广泛关注. 在 语义 SLAM 系统中,环境语义信息大多通过深度 学习技术从预训练的图像集和实时感知的图像集 · 762 · 工程科学学报,第 43 卷,第 6 期