1、文章编号:1671-7872(2023)02-0191-07基于语义分割网络的动态场景视觉 SLAM 算法赵凯,李丹,程星,管玲,葛仕全(安徽工业大学 电气与信息工程学院,安徽 马鞍山 243032)摘要:针对传统即时定位与建图(SLAM)算法在动态场景中位姿估计精度不高的问题,提出一种动态场景下基于语义分割网络的视觉 SLAM 算法。通过 RGB-D 相机采集彩色图与深度图,将彩色图输入轻量级语义分割网络 LRASPP,剔除先验动态物体,同时获得语义图;采用多视角几何算法剔除非先验动态物体,分离动静态特征点后得到优化后的位姿,并结合语义图和深度图构建纯静态语义八叉树地图,提高对动态场景的适应
2、能力并直接用于导航系统。公开数据集 TUM 的实验测试结果表明:本文算法的最小绝对定位误差仅 0.007 6 m,相比于 ORBSLAM3 算法,在高动态场景中定位精度提升了 80%以上,并能获取精确的动态区域及准确的语义地图,本文算法在复杂动态场景中具有良好的定位精度和鲁棒性。关键词:即时定位与建图;语义分割;多视角几何中图分类号:TP 242.6文献标志码:Adoi:10.12415/j.issn.16717872.22273Dynamic Scene Vision SLAM Optimization Based on SemanticSegmentation NetworkZHAO Ka
3、i,LI Dan,CHENG Xing,GUAN Ling,GE Shiquan(School of Electrical&Information Engineering,Anhui University of Technology,Maanshan 243032,China)Abstract:Aiming at the problem that the traditional real-time location and mapping(SLAM)algorithm does nothave high accuracy in pose estimation in dynamic scenes
4、,a visual SLAM algorithm based on semantic segmentationnetwork in dynamic scenes was proposed.Firstly,the color map and depth map were collected by RGB-D camera,and the color map was input to the lightweight semantic segmentation network LR-ASPP to eliminate the a prioridynamic objects and obtain th
5、e semantic map at the same time.Then,the multi-view geometry algorithm was used toreject the non-prior dynamic objects,after separating the dynamic and static feature points,the optimized positionand pose was obtained,and the pure static semantic octree map was constructed by combining the semantic
6、map anddepth map to improve the adaptability to dynamic scenes and directly used in the navigation system.The test resultsof the public dataset TUM show that the minimum absolute localization error of the algorithm in this paper is only0.007 6 m.Compared with ORB-SLAM3,the localization accuracy in h
7、ighly dynamic scenes is improved by morethan 80%,and precise dynamic regions and accurate semantic maps can be obtained,which verifies that thealgorithm has good localization accuracy and robustness in complex dynamic scenes.Keywords:simultaneous localization and map building;semantic segmentation;m
8、ulti-view geometry 收稿日期:2022-10-31基金项目:安徽省自然科学基金项目(2108085MF225)作者简介:赵凯(1998),男,江苏南京人,硕士生,主要研究方向为图像处理、机器人建图与导航等。通信作者:李丹(1976),女,安徽马鞍山人,博士,教授,主要研究方向位图像处理与机器人视觉、自主导航等。引文格式:赵凯,李丹,程星,等.基于语义分割网络的动态场景视觉 SLAM 算法 J.安徽工业大学学报(自然科学版),2023,40(2):191-197.Vol.40 No.2安 徽 工 业 大 学 学 报 (自然科学版)第 40 卷 第 2 期April2023J.o
9、f Anhui University of Technology(Natural Science)2023 年4 月即时定位与建图(simultaneous localization and mapping,SLAM)技术作为移动机器人实现真正自主的核心技术之一,在智能移动机器人、无人驾驶等领域发挥着重大的作用1。常用的 SLAM 系统根据使用传感器的不同,可分为激光 SLAM 和视觉 SLAM。视觉 SLAM 主要依靠摄像机传感器数据,融合计算机视觉、深度学习等技术可更好地解决回环检测、语义场景构建等问题,具有简易便携、硬件成本低且定位精度高的优势,已逐步成为 SLAM 研究的主流趋势2。传
10、统视觉 SLAM 有 ORB(oriented fast and rotated brief)-SLAM3、DVO(dense visual odometry)SLAM4和 VINS(visual-inertial system)-SLAM5等,但传统 SLAM 框架皆采用静态环境的刚性假设。客观世界中,存在行人、动物、车辆等动态物体的环境是不可避免的,动态物体上的特征点会影响特征匹配结果,致使算法的鲁棒性和定位精度明显下降。学者们常采用传统机器视觉方法解决动态环境下视觉 SLAM 的定位建图问题。Kim 等6利用 IMU 数据对 RGBD 相机自身运动进行旋转分量的补偿,根据位姿变换后生成空
11、间的运动向量区分图像中的动态特征点;Alcantarilla 等7利用连续图像序列估计相机的粗略位姿,使用粗略位姿计算图像中的稠密 3D 光流,并根据测量的不确定度计算图像间匹配点的马氏距离并剔除外点;Wang 等8对连续图像之间的光流轨迹进行聚类分析,合并拥有相同运动趋势的区域,并假设图像中静态区域占多数,利用面积最大的区域计算出相应的基础矩阵,从而区分动态区域。传统机器视觉方法本身在正确率上存在限制,近年学者们利用卷积神经网络等深度学习方法解决动态环境下的 SLAM 定位建图问题。Yang 等9利用 YOLOv3 进行高动态性的目标分割及移除,在此基础上计算相应基础矩阵判断特征点的真实动态
12、性。以上方法均只能得到先验动态物体的信息,对非先验动态物体的鲁棒性较差。鉴于此,提出一种基于语义分割网络的动态场景下的视觉SLAM 算法,同时构建一个纯静态语义八叉树地图,以期实现复杂动态场景下的精度定位。1基于语义分割网络的 SLAM 算法基于 ORBSLAM310在静态环境下良好位姿估计和定位性能,选择 ORB-SLAM3 作为主体框架,在原有跟踪线程、局部建图线程、回环检测线程的基础上增加语义建图线程,提出一种动态场景下基于语义分割网络的视觉 SLAM 算法,其整体框架如图 1。图 1 中灰色部分为对 ORBSLAM3 的改进部分。利用 RGB-D 相机获取 RGB 图像和深度图像,RG
13、B 图像经 LR-ASPP11(lite reduced atrous spatial pyramid pooling)语义分割网络处理,获得像素级的语义信息,利用语义信息剔除图像中先验动态物体上的特征点;对于图像上剩余的特征点,通过轻量化追踪模块获得当前帧位姿的粗略估计,该模块只用于估计当前帧位姿,不参与后续建图过程;通过多视角几何算法进一步检测非先验动态物体对应的特征点,对多视角几何的检测结果和语义分割网络的检测结果进行交叉验证,得到完整的动态区域,过滤掉动态区域上的特征点后进入跟踪线程,得到更准确的位姿。如果产生关键帧,语义建图线程会根据关键帧的相关数据构建动态场景下的八叉树地图12。1
14、.1动态物体剔除算法语义分割网络可较好地剔除先验动态物体,但对场景中的非先验动态物体区分效果有限,采用多视角几何算法13做进一步处理。提出的动态物体剔除算法流程如图 2。根据关键帧(key frame,KF)之间的运动关系检测动态点,动态点被检测出来后,通过判断是否拥有语义 语义分割网络多视角几何特征点提取创建八叉树地图初始化、重定位或地图重建局部追踪关键帧轻量化追踪模块全局BA优化局部BA优化关键帧的剔除更新节点占据概率插入八叉树地图回环检测与多地图融合彩色图深度图图1系统框架Fig.1System framework192安 徽 工 业 大 学 学 报(自然科学版)2023 年 标签将动态
15、点分为拥有语义信息的动态点和没有语义信息的动态点;对拥有语义信息的特征点在语义图上进行语义轮廓搜索,对没有语义信息的动态点在深度图上进行区域生长,充分利用语义信息减少区域生长种子点的数量,提高系统的运行效率;融合没有语义的动态物体掩膜和拥有语义信息的动态物体掩膜,获得完整的动态物体掩膜。在 KF 间运动检测时,需根据当前帧(currentframe,CF)从 KF 数据库中选取与 CF 重叠度最高的若干 KF13。KF 数据库上限一般设置为 20 个,数据库越大,系统初始化越困难,并影响帧查找的速度;重叠 KF 的选取数同样会影响系统的运行速度和动态物体检测的准确度。本文实验中,设定 KF 数
16、据库上限为 20 个、重叠 KF 为 5 个,作为计算成本和动态物体检测准确性之间的折衷。重叠度的判断标准是 KF 与 CF 的距离和旋转。多视角几何算法的核xxxXx,x,Xlproj心原理如图 313。其中 为被挑选出的重叠 KF 上的关键点,在 CF 坐标系下的投影为,对应的三维点为,计算之间投影深度和角度。lx=lrx+t(1)lxx=0=lxrx+xt(2)xxllXrx理想情况下,式(1)可根据对极几何关系推理出,和 为特征点的归一化坐标,和 为三维点在对应帧坐标系下的深度,为 KF 到 CF 的旋转矩阵,t 为KF 到 CF 的平移向量。将式(1)左乘 的反对称矩阵ll得到式(2),其中 代表反对称矩阵。根据式(2)的左半部分等式求得,根据右半部分等式求得。角度可由式(3)求得。cos =pt|p|t|(3)XpXxlprojll=lprojlzz根据式(2)可求得的深度信息,从而求得其三维坐标。设 为从 KF 相机光心指向的向量,则可根据式(3)求出,同理求出,从而求得。实验测试发现,当 大于某一阈值时,该关键点可能被遮挡,不做处理。小于角度阈值时,获得 CF 中 关键