1、第 49卷 第 8期2023年 8月Computer Engineering 计算机工程基于目标检测和语义分割的视觉 SLAM 算法徐春波,闫娟,杨慧斌,王博,吴晗(上海工程技术大学 机械与汽车工程学院,上海 201620)摘要:目前多数视觉同步定位与建图(VSLAM)算法基于静态场景设计且未考虑场景中的动态物体,然而现实场景中存在的动态物体会造成视觉里程计的特征点误匹配,影响 VSLAM 系统定位与建图精度,降低其在实际应用中鲁棒性。针对室内动态环境,提出一种基于 ORB-SLAM3 主体框架的 VSLAM 算法(RDTS-SLAM)。利用改进的YOLOv5目标检测与语义分割网络对环境中的物
2、体进行精准快速分割,同时将目标检测结果与局部光流法相结合准确识别动态物体,并对动态物体区域内的特征点进行剔除,仅使用静态特征点进行特征点匹配以及后续的定位与建图。在 TUM RGB 数据集和真实环境数据上的实验结果表明,相较于 ORB-SLAM3 和 RDS-SLAM 算法,RDTS-SLAM 算法对于 walking_rpy 序列的轨迹估计均方根误差分别降低了 95.38%和 86.20%,可以显著提高VSLAM 系统在动态环境中的鲁棒性和准确性。关键词:视觉同步定位与建图;目标检测;语义分割;YOLOv5网络;局部光流法开放科学(资源服务)标志码(OSID):中文引用格式:徐春波,闫娟,杨
3、慧斌,等.基于目标检测和语义分割的视觉 SLAM 算法 J.计算机工程,2023,49(8):199-206,214.英文引用格式:XU C B,YAN J,YANG H B,et al.Visual SLAM algorithm based on target detection and semantic segmentation J.Computer Engineering,2023,49(8):199-206,214.Visual SLAM Algorithm Based on Target Detection and Semantic SegmentationXU Chunbo,YAN
4、 Juan,YANG Huibin,WANG Bo,WU Han(School of Mechanical and Automotive Engineering,Shanghai University of Engineering Science,Shanghai 201620,China)【Abstract】Currently,most Visual Simultaneous Localization And Mapping(VSLAM)algorithms are based on static scene design and do not consider dynamic object
5、s in a scene.However,dynamic objects in an actual scene cause mismatches among the feature points of the visual odometer,which affects the positioning and mapping accuracy of the SLAM system and reduce its robustness in practical applications.Aimed at an indoor dynamic environment,a VSLAM algorithm
6、based on the ORB-SLAM3 main framework,known as RDTS-SLAM,is proposed.An improved YOLOv5 target detection and semantic segmentation network is used to accurately and rapidly segment objects in the environment.Simultaneously,the target detection results are combined with the local optical flow method
7、to accurately identify dynamic objects,and the feature points in the dynamic object area are eliminated.Only static feature points are used for feature point matching and subsequent positioning and mapping.Experimental results on the TUM RGB dataset and actual environment data show that compared to
8、ORB-SLAM3 and RDS-SLAM algorithms,the Root Mean Square Error(RMSE)of trajectory estimation for sequence walking_rpy of RDTS-SLAM algorithm is reduced by 95.38%and 86.20%,respectively,which implies that it can significantly improve the robustness and accuracy of the VSLAM system in a dynamic environm
9、ent.【Key words】Visual Simultaneous Localization And Mapping(VSLAM);target detection;semantic segmentation;YOLOv5 network;local optical flow methodDOI:10.19678/j.issn.1000-3428.00655220概述 视觉同步定位与地图构建(Visual Simultaneous Localization And Mapping,VSLAM)是指机器在未知环境中通过视觉传感器(如单目相机、RGB-D 相机和深度相机)进行自身位姿估计和环境地
10、图构基金项目:上海市企事业单位委托项目(19)JQ-009)。作者简介:徐春波(1997),男,硕士研究生,主研方向为计算机视觉、智能控制;闫 娟,副教授、硕士;杨慧斌,实验师、硕士;王 博、吴 晗,硕士研究生。收稿日期:2022-08-16 修回日期:2022-09-20 Email:图形图像处理文章编号:1000-3428(2023)08-0199-08 文献标志码:A 中图分类号:TP391.412023年 8月 15日Computer Engineering 计算机工程建1。随着机器人技术的发展,VSLAM 已成为计算机视觉、自动驾驶、增强现实、机器人、无人机等领域的研究热点2。VSL
11、AM 根据视觉里程计计算方法的不同可分为直接法(如 LSD-SLAM3和 DSO4)和特征点法(如 ORB-SLAM5和 PTAM6)。直接法是基于光度不变假设,通过两帧图像之间的像素灰度值构建最小化光度误差来求解相机位姿并进行地图构建7。特征点法是基于特征点进行匹配,通过最小化重投影误差来求解相机位姿并进行稀疏地图构建8。文献3提出一种基于直接法的大尺度单目SLAM 算法(LSD-SLAM),LSD-SLAM 可以构建大尺度的全局一致性的环境地图,不仅可以通过直接图像配准对位姿进行估计,而且能够将三维环境地图实时重构为姿态图和对应的半稠密深度图。文献4提 出 一 种 基 于 稀 疏 直 接
12、法 的 视 觉 里 程 计(DSO),DSO 是少数完全使用直接法计算视觉里程计的系统之一,但是由于 DSO 并不包含回环检测线程和位姿图优化线程,因此它会产生无法消除的累计误差。文献 9-10 提出一种将特征点法和直接法相结合的半直接视觉里程计(SVO),SVO支持鱼眼、透视和双目相机,可以生成轻量级、全局一致性的环境地图。文献 6 提出的并行跟踪与建图算法(PTAM)是较 早 将 跟 踪 和 建 图 独 立 为 两 个 线 程 的 一 种 单 目VSLAM 算法,选择特征加速分段测试方法(FAST)作为特征提取的方法来实现跟踪和建图,提高了SLAM 的实时性。文献 11 提出的 ORB-S
13、LAM3 系统是 ORB-SLAM 系列的最新版本,该系统通过匹配当前帧和前一帧之间的 ORB12特征来估计相机的运动轨迹,ORB-SLAM3是基于特征的紧耦合的 VIO系统,仅依赖于最大后验估计,同时也是一个支持视觉、惯导和混合地图的多源 SLAM 系统。传统的特征点法容易受到环境中运动物体的干扰导致特征点数量不足和特征点错误匹配的问题。为了解决上述问题,使 SLAM 系统在动态环境中具有更好的应用,众多专家学者开始研究如何利用深度学习技术来提高 SLAM 系统的鲁棒性,其中通过深度学习技术对环境中动态特征点进行检测和剔除在 VSLAM 中的研究较为广泛。文献 13 提出一种基于 ORB-S
14、LAM2 的面向动态环境的语义 VSLAM方法,该方法在 ORB-SLAM 系统中添加了语义分割模块,以减少动态物体对系统的影响。文献 14 提出的 Dyna-SLAM 方法同样是基于 ORB-SLAM2 进行的改进,该方法在 ORB-SLAM 系统中添加了动态目标检测模块,利用实例分割和多视图几何的方法对动态区域特征点进行提取和剔除,但是该方法对算力要求较高,无法满足机器人 SLAM 系统轻量化和实时性的要求。文献 15 提出的 DDL-SLAM 在传统 SLAM 系统中添加了动态对象分割和背景绘制模块,它能够利用语义分割和多视图几何来检测移动物体,同时利用静态场景图在背景被移动物体遮挡的情
15、况下绘制背景。文献 16 提出一种用于动态室内环境的视觉语义 SLAM 算法(OFM-SLAM),该算法首先使用 Mask R-CNN 网络17检测潜在的运动对象,将光流法18与 Mask R-CNN 相结合进行动态特征点的剔除,但是使用光流法对全局图像进行计算 的 计 算 量 较 大 且 非 常 耗 时,无 法 满 足 机 器 人SLAM 系统的实时性要求。文献 19 提出一种基于ORB-SLAM3 和语义分割的实时动态 SLAM 算法(RDS-SLAM),该算法在 ORB-SLAM3 系统中添加了语义线程和基于语义的优化线程,但是其基于语义的剔除原则,容易造成特征点过度剔除或漏剔除,例如根
16、据语义原则,静止中的人会被剔除,而运动中的椅子不会被剔除。综上所述,目前针对动态场景设计的 SLAM 算法虽然可以识别并移除部分动态特征点,但是仍然存在计算量过大、应用场景要求高、不具备实时性等问题。为了在满足实时性的前提下提高 VSLAM 系统在高动态环境下的鲁棒性和精度,本文提出一种基于 ORB-SLAM3 主 体 框 架 的 VSLAM 算 法(RDTS-SLAM),可同时进行目标检测和语义分割,并准确剔除动态特征点。1RDTS-SLAM 总体框架 在实际应用场景中,一般都存在移动的物体,而移动的物体会造成特征点匹配错误。因此,如何确保特征点匹配的正确性是需要考虑的首要问题。目前,ORB
17、-SLAM3 是较为完善、在各种环境中都有 突 出 性 能 的 开 源 VSLAM 系 统 之 一20。因 此,RDTS-SLAM 采用 ORB-SLAM3 的主体框架作为自身框架的主体结构,主要有三大线程,分别是跟踪线程、局部建图线程和回环检测线程,改进部分集中 于 跟 踪 线 程。RDTS-SLAM 系 统 框 架 如 图 1所示。跟踪线程负责对每帧图像之间的 ORB 特征点进行跟踪和计算,主要任务是对当前帧的位姿进行优化21。首先,对原始 RGB 图像进行 ORB 特征提取,同时利用改进的 YOLOv5 网络对 RGB 图像进行目标检测和语义分割。接着,利用局部光流法对动态物体进行识别,
18、对图像中动态物体区域内的特征点进行剔除,仅保留静态特征点。然后,依次进入局部地图跟踪阶段和新关键帧生成阶段。最后,将生成的新关键帧添加到关键帧集合。局部建图线程的主要任务是对局部地图进行构建22。首先,将跟踪线程中生成的新关键帧插入局部地图。接着,对地图点进行筛选,剔除不必要的地图点。然后,使用过滤后的地图点进行局部位姿优化。最后,进入局部关键帧筛选阶段,对冗余关键帧进行剔除。200第 49卷 第 8期徐春波,闫娟,杨慧斌,等:基于目标检测和语义分割的视觉 SLAM 算法回环检测线程的主要任务是利用所有关键帧的信息进行关联检测,寻找关联错误,并依据全局关系进行位姿校正23。首先,进行回环检测,
19、利用 Sim3算法进行计算,筛选相似关键帧。然后,进入闭环修正过程,主要进行闭环融合和图优化。最后,对全局位姿进行优化。2改进的跟踪线程 2.1改进的 YOLOv5网络为了准确识别动态物体,提出一种简单高效的前馈网络,它可以对每帧图像同时进行目标检测和语义分割任务。同时,由于 SLAM 系统是移植到移动机器人上进行应用,而目前移动机器人 CPU 和GPU 的性能并不是十分强大,因此选取业界公认的兼顾轻量化和精确性的 YOLOv5网络24作为主体框架网络。图 2 为基于 YOLOv5 的目标检测与语义分割网络框架,该网络包含一个共享的编码器和两个后续的解码器来完成目标检测和语义分割任务。下面分别
20、对改进的 YOLOv5 网络的各部分(包括编 码 器、解 码 器 和 损 失 函 数)和 训 练 范 式 进 行介绍。2.1.1 编码器改进的 YOLOv5 网络全局共用一个编码器,该编码器由一个 Backbone 网络25和一个 Neck 网络组成。下面分别对这两个部分进行介绍:1)Backbone网络。该网络利用骨干网络提取输入目标的特征。为了实现深度学习网络的轻量化,使用 YOLOv5 的 Backbone 特征提取网络作为目标检测和图像分割网络的骨干网络。该网络可以解决其他大型卷积网络结构中存在的重复梯度问题,并减少模型参数量和 FLOPS。这有助于在减小模型规模的同时保证推理速度和准
21、确率。2)Neck 网络。该网络由一系列混合和组合图像特征的网络层组成,主要包括两个模块,分别是在空间金字塔池化(Spatial Pyramid Pooling,SPP)模块基础上改进的快速空间金字塔池化(Spatial Pyramid Pooling-Fast,SPPF)模块和特征金字塔网络(Feature Pyramid Network,FPN)模块。SPPF 生成不同尺度的特征,然后进行融合。FPN 对不同语义层次的特图 1RDTS-SLAM 系统框架Fig.1Framework of RDTS-SLAM system图 2目标检测和语义分割网络框架Fig.2Framework of t
22、arget detection and semantic segmentation network2012023年 8月 15日Computer Engineering 计算机工程征进行融合,可使生成的特征包含多个尺度和多个语义层次的信息。本文采用串联的方式对特征进行融合。2.1.2 解码器由于需要同时完成目标检测和语义分割这两个任务,因此改进网络的解码器需要两个头,分别是检测头和分割头。1)检测头。与 YOLOv5 类似,采用基于锚点的多尺度检测方法。首先,利用 FPN 自顶向下传递语义特征,同时通过路径聚合网络(Path Aggregation Network,PAN)自底向上传递定位特征
23、,将 FPN 和PAN 这两个模块进行组合,可以获得较优的特征融合效果。然后,直接使用 PAN 中的多尺度融合特征图进行检测,同时在网络每次训练数据集前,利用内嵌 的 K-means 算 法 自 动 计 算 该 数 据 集 最 适 合 的Anchor尺寸,并生成带有类概率、对象得分和包围框的最终输出向量。2)分割头。图像分割头采用与上述检测头相同的网络结构。分割分支与检测分支共用 FPN 底层,其大小为(W/8,H/8,256),其中,W 表示图像水平方向上的像素数,H 表示图像垂直方向上的像素数。经过 3次上采样后输出特征图,其大小为(W,H,2),同时上采样层使用最近插值法来减少计算成本。
24、这可以在具有高推理速度的同时获得高精度的输出。2.1.3 损失函数由于改进的 YOLOv5 网络中有两个解码器,因此损失函数包含两个部分,分别是检测损失Ldet和分割损失Lseg。检测损失是分类损失Lclass、目标损失Lobj和边框损失Lbox的加权和,如式(1)所示:Ldet=1Lclass+2Lobj+3Lbox(1)其中:1、2、3为可调参数;Lclass和Lobj是焦点损失,焦点损失减少了简单示例的损失,并加强了对纠正错误分类示例的重视;采用 GIoU_Loss 作为边框损失的损失函数,即Lbox=LGIoU,解决了传统 IoU 存在的不重合和重合面积相等的问题。分割损失Lseg采用
25、交叉熵损失Lce,可使网络输出像素与目标之间的分类误差最小化。总之,网络的最终损失是检测损失和分割损失的加权和,如式(2)所示:Lall=1Ldet+2Lseg(2)其中:1、2为可调参数,能对总损失进行平衡调节。2.1.4 训练范式采用交替优化算法来逐步训练模型:1)训练编码器和检测头;2)冻结训练好的编码器和检测头,只训练分割头;3)通过整个网络的训练来完成目标检测和语义分割两个任务。在各步骤中,模型只对单个或具有相关关系的多个任务进行训练,这样可以降低训练复杂度,提高训练速度。算法 1 模型训练算法输入 目标神经网络R输入参数:=enc,det,seg,训练集T,收敛阈值 tc,损失函数
26、Lall输出 训练好的网络R(x;)1.procedure Train(R,T)2.repeat3.加载到训练集 T,选择小批量数据组成小批量训练集(xs,ys)4.Lall(F(xs;),ys)5.argmin6.Until dstaticp(mt)d(6)算法 2 跟踪线程数据关联算法输 入 当 前 帧 Ft、上 一 帧 Ft-1、改 进 的 YOLOv5 网 络F(x;)、局部光流法结果=1,2,、未知子集 Unknown、概率阈值d和s、特征阈值=50输出 将目标分类为静态或者动态1.for i 0 to Ft-1.Features.size()2.MapPointm Ft-1.Map
27、Points i /找到与上一帧图像 /中的特征点 i相匹配的映射点 m3.p(m)F(x;MapPointm;)4.f FindMatchedFeatures(Ft,m)5.if p(m)d then6.continue7.end if/跳过动态区域中的特征点8.if p(m)s then9.Static.insert(f,m)10.end if11.if d p(m)s then12.Unknown.insert(f,m)13.end if/剩余特征点分为静态子集和未知子集14.end for15.for it Static.begin()to Static.end()16.Ft.MapP
28、oints it first it second17.end for/先使用静态特征点18.if Static.size()then19.for it Unknown.begin()to Unknown.end()20.Ft.MapPoints it first it second21.end for22.end if/当特征点的数量小于阈值时,使用未知子集/中的数据3实验与结果分析 使用德国慕尼黑工业大学的 TUM RGB 公共数据集对 RDTS-SLAM 进行评估,并且与 ORB-SLAM3以及目前最新的动态场景下的 SLAM 算法进行比较,以验证 RDTS-SLAM 的实用性和有效性。同
29、时,使 用 手 机 摄 像 头 采 集 的 真 实 环 境 数 据 对 RDTS-SLAM 进行评估。图 3局部光流法流程Fig.3Procedure of local optical flow method图 4改进的跟踪线程Fig.4Improved tracking thread2032023年 8月 15日Computer Engineering 计算机工程3.1TUM RGB数据集上的实验结果分析选取 TUM RGB 数据集内的 4 个具有人行走的高 动 态 场 景 序 列 walking_rpy、walking_halfsphere、walking_static、walking_x
30、yz 以及 2 个人移动幅度不大 的 低 动 态 场 景 序 列 sitting_halfsphere 和 sitting_static进行实验测试。ORB-SLAM3 是业界公认的目前 VSLAM 领域较为优秀的解决方案。RDS-SLAM19系统针对动态环 境 进 行 优 化,是 目 前 基 于 ORB-SLAM3 改 进 的SLAM 算 法 中 精 度 较 高 的 算 法。因 此,将 RDTS-SLAM 与 ORB-SLAM3以及 RDS-SLAM 进行对比实验,并对实验结果进行对比分析。绝对轨迹误差(Absolute Trajectory Error,ATE)是计算估计位姿与实际位姿之间
31、差异性的指标,可以客观地反映算法精度和轨迹的全局一致性。相对姿态误差(Relative Pose Error,RPE)可以直接测量里程计的漂移。采用ATE和 RPE对算法进行定量评估。图 5图 7分别给出了 ORB-SLAM3、RDS-SLAM以 及 RDTS-SLAM 在 walking_rpy、walking_xyz 和sitting_halfsphere 场景下的 ATE 结果(彩色效果见计算机工程 官网 HTML 版),其中,黑线表示相机的实际运动轨迹(ground truth),蓝线表示估计的相机运动轨迹(estimated),红线表示真实轨迹与估计轨迹之间的差异(differenc
32、e)。由图 5图 7 可以看出:在低动态场景下,3 种算法的轨迹估计精度均较高;在高动态场景下,3种算法的精度差异非常明显;相 较 于 ORB-SLAM3 和 RDS-SLAM,RDTS-SLAM的轨迹估计精度具有明显的提升。图 5walking_rpy序列的 ATE结果Fig.5ATE results for sequence walking_rpy图 6walking_xyz序列的 ATE结果Fig.6ATE results for sequence walking_xyz图 7sitting_halfsphere序列的 ATE结果Fig.7ATE results for sequence
33、 sitting_halfsphere204第 49卷 第 8期徐春波,闫娟,杨慧斌,等:基于目标检测和语义分割的视觉 SLAM 算法表 1 和 表 2 分 别 给 出 了 ORB-SLAM3、RDS-SLAM、RDTS-SLAM 的 ATE 和 RPE,包括均方根误差(Root Mean Square Error,RMSE)、平 均 误 差(Mean)、误 差 中 值(Median)和 标 准 偏 差(Standard Deviation,SD),其中,RMSE 和 SD 更能体现系统的鲁棒性和稳定性,因此重点关注这两个指标值。由表 1和表 2可以看出,在高动态场景下,RDTS-SLAM优
34、于 ORB-SLAM3 和 RDS-SLAM。例 如 walking_rpy序列:相较于 ORB-SLAM3,RDTS-SLAM 在绝对轨迹误差结果中的 RMSE 和 SD 分别降低了 95.38%和 95.57%,在相对姿态误差结果中 RMSE和 SD 分别降 低 了 71.34%和 75.82%;相 较 于 RDS-SLAM,RDTS-SLAM 在绝对轨迹误差结果中的 RMSE和 SD分别降低了 86.20%和 87.37%,在相对姿态误差结果中 RMSE 和 SD 分别降低了 67.15%和 47.14%。这主要是因为:在高动态场景中存在静止的人和移动的物体,RDS-SLAM 利用语义分
35、割将人身上的特征点剔除,会造成 ORB 特征点的过分剔除或者漏剔除,从而影响了轨迹估计精度,而本文将局部光流法与目标检测相结合,能够准确判定移动物体,从而高效剔除动态特征点,轨迹估计精度更高;在低动态场景下 3 种算法均获得了较高的轨迹估计精度,RDTS-SLAM 依然优于 ORB-SLAM3,并且获得了与 RDS-SLAM 接近的性能。表 3给出了 3种算法的运行时间,为了客观评价3 种 算 法 的 性 能,表 中 的 数 据 为 ORB-SLAM3 和RDS-SLAM 算法原文献中的数据。由表 3 可以看出:RDTS-SLAM 的检测与分割耗时和跟踪每帧图像的耗时都小于 RDS-SLAM,
36、这主要是因为 RDTS-SLAM 采用的 YOLOv5 网络模型与 RDS-SLAM 采用的 Mask R-CNN 网络模型相比,检测速度更快,而检测速度对系统实时性而言非常重要;RDTS-SLAM在跟踪每帧图像的耗时上略长于 ORB-SLAM3,但是差距较小,不会对系统实时性造成影响。3.2真实环境数据上的实验结果分析使用手机摄像头采集真实的环境数据来测试RDTS-SLAM 性能,如图 8 所示。在图 8(a)中,人处于基本静止的状态,人身上的 ORB 特征点没有被剔除,这样更有利于位姿估计。在图 8(b)中,画面中的人正在站起,处于移动状态,并且由于人的站立造成了椅子的移动,此时通过局部光
37、流法判定两者处于移动状态,因此对人体和椅子上的 ORB 特表 1绝对轨迹误差结果 Table 1Results of absolute trajectory error单位:m序列walking_rpywalking_xyzwalking_halfspherewalking_staticsitting_halfspheresitting_staticORB-SLAM3RMSE0.175 20.337 30.694 70.025 40.025 10.037 7Mean0.137 60.323 40.627 20.021 10.021 80.033 4Median0.111 20.322 00.5
38、69 60.018 10.018 20.032 9SD0.108 40.095 70.298 70.014 20.012 50.017 6RDS-SLAMRMSE0.058 70.024 00.030 60.072 00.010 20.008 4Mean0.040 80.022 10.028 70.065 50.009 90.008 2Median0.039 90.021 50.026 50.058 70.009 40.007 9SD0.038 00.013 90.017 10.034 30.008 60.004 3RDTS-SLAMRMSE0.008 10.010 90.022 30.014
39、 60.018 60.029 4Mean0.006 40.009 70.020 70.013 80.016 50.028 6Median0.006 00.008 70.020 10.015 20.015 10.026 6SD0.004 80.004 80.019 40.009 10.008 50.013 7表 2相对姿态误差结果 Table 2Results of relative pose error单位:(ms-1)序列walking_rpywalking_xyzwalking_halfspherewalking_staticsitting_halfspheresitting_static
40、ORB-SLAM3RMSE0.031 40.026 20.029 70.001 10.010 10.001 4Mean0.006 90.009 50.014 90.000 80.009 20.000 8Median0.003 10.008 30.010 20.000 60.007 90.000 5SD0.030 60.024 30.025 70.000 70.005 40.001 1RDS-SLAMRMSE0.027 40.026 90.027 40.022 10.005 30.005 0Mean0.025 50.024 70.025 20.018 60.004 90.004 4Median0
41、.023 20.022 10.023 10.016 20.004 10.003 8SD0.014 00.016 30.014 00.014 90.003 10.002 6RDTS-SLAMRMSE0.009 00.012 40.013 10.000 90.009 10.001 1Mean0.005 10.007 10.009 20.000 70.007 80.000 6Median0.002 50.006 90.007 90.000 50.006 80.000 4SD0.007 40.008 70.009 10.000 60.004 70.000 9表 33种算法运行 TUM RGB数据集的耗
42、时比较 Table 3Time consuming comparison of three algorithms for running TUM RGB dataset单位:ms算法ORB-SLAM3RDS-SLAMRDTS-SLAMGPUGeForce RTX 2080TiGeForce RTX 2080Ti网络模型Mask R-CNNYOLOv5检测与分割耗时20015跟踪每帧图像的耗时2230506530452052023年 8月 15日Computer Engineering 计算机工程征点都进行了剔除,以保证位姿估计的准确性。通过使用真实数据进行性能测试的结果可以看出,RDTS-SL
43、AM 在真实动态环境中具有较高的鲁棒性和精确性。4结束语 针 对 室 内 动 态 环 境,本 文 提 出 一 种 RDTS-SLAM 算法。改进 YOLOv5 网络,使其可同时进行目标检测和语义分割,并将改进的 YOLOv5 网络添加到 SLAM 系统的跟踪线程,同时将目标检测结果与局部光流法相结合,准确识别动态物体。在 TUM RGB 数 据 集 上 的 实 验 结 果 表 明,相 较 于 ORB-SLAM3和 RDS-SLAM 算法,RDTS-SLAM 算法能大幅降低轨迹估计的均方根误差,在高动态场景下具有更高的鲁棒性和精确性。由于多设备协调定位可在资源共享的同时提高定位精度,因此下一步将
44、构建多机器人协同 SLAM 网络,提高其在大规模且复杂环境中的性能。参考文献 1 TAKETOMI T,UCHIYAMA H,IKEDA S.Visual SLAM algorithms:a survey from 2010 to 2016J.IPSJ Transactions on Computer Vision and Applications,2017,9(1):1-11.2 伍子嘉,陈航,彭勇,等.动态环境下融合轻量级YOLOv5s的视觉SLAM J.计算机工程,2022,48(8):187-195,205.WU Z J,CHEN H,PENG Y,et al.Visual SLAM
45、with lightweight YOLOv5s in dynamic environmentJ.Computer Engineering,2022,48(8):187-195,205.(in Chinese)3 ENGEL J,SCHPS T,CREMERS D.LSD-SLAM:large-scale direct monocular SLAMC/Proceedings of European Conference on Computer Vision.Berlin,Germany:Springer,2014:834-849.4 ENGEL J,KOLTUN V,CREMERS D.Dir
46、ect sparse odometry J.IEEE Transactions on Pattern Analysis and Machine Intelligence,2018,40(3):611-625.5 MUR-ARTAL R,MONTIEL J M M,TARDS J D.ORB-SLAM:a versatile and accurate monocular SLAM system J.IEEE Transactions on Robotics,2015,31(5):1147-1163.6 KLEIN G,MURRAY D.Parallel tracking and mapping
47、for small AR workspaces C/Proceedings of the 6th IEEE and ACM International Symposium on Mixed and Augmented Reality.Washington D.C.,USA:IEEE Press,2008:225-234.7 马科伟,张锲石,康宇航,等.移动机器人中视觉里程计技术综述 J.计算机工程,2021,47(11):1-10.MA K W,ZHANG Q S,KANG Y H,et al.Overview of visual odometry technology in mobile r
48、obots J.Computer Engineering,2021,47(11):1-10.(in Chinese)8 陶交,范馨月,周非.点线特征融合的双目视觉SLAM算法 J.小型微型计算机系统,2022,43(6):1191-1196.TAO J,FAN X Y,ZHOU F.Point-line feature fusion in stereo visual SLAM algorithm J.Journal of Chinese Computer Systems,2022,43(6):1191-1196.(in Chinese)9 FORSTER C,PIZZOLI M,SCARAMU
49、ZZA D.SVO:fast semi-direct monocular visual odometry C/Proceedings of IEEE International Conference on Robotics and Automation.Washington D.C.,USA:IEEE Press,2014:15-22.10 FORSTER C,ZHANG Z C,GASSNER M,et al.SVO:semidirect visual odometry for monocular and multicamera systems J.IEEE Transactions on
50、Robotics,2017,33(2):249-265.11 CAMPOS C,ELVIRA R,RODRGUEZ J J G,et al.ORB-SLAM3:an accurate open-source library for visual,visual-inertial,and multimap SLAM J.IEEE Transactions on Robotics,2021,37(6):1874-1890.12 RUBLEE E,RABAUD V,KONOLIGE K,et al.ORB:an efficient alternative to SIFT or SURF C/Proce