管理培训搜索
18318889481

IT
| 网络安全管理师

信息安全工程 网络蠕虫

| 系统集成项目管理工程师

每日一练 报名考试 考试大纲 知识考点 综合知识 直播动态 考试用书 政策法规 系统集成产学研实践 资质认定

| 金融科技师

职业前景 CGFT专题 政策动态

| 网络工程师

考试动态 每日一练 学习笔录 技术考点 知识考点 直播动态 考试用书 技术与应用 网络工程 网络技术入门 考试大纲

| 计算机学苑

数字媒体艺术 计算机科学与技术 软考报名 信息处理技术员 行业资讯 考试大纲 直播动态 网络安全 网络管理 通信技术 OpenHarmony 计算机与网络 企业信息化 软件工程 Linux 嵌入式Linux开发基础(ARMAtom) 离散数学 操作系统 C++程序设计 Java 语言程序设计 智能感知与无人系统 机器学习算法与人工智能 Python 软考资讯

| 计算机应用水平考试

考试动态 报考指南 全国计算机应用水平考试 中国计算机等级考试 江西计算机等级考试 广东计算机等级考试 江苏计算机等级考试 贵州计算机等级考试 湖南计算机等级考试 福建计算机等级考试 河南计算机等级考试 广西计算机等级考试 山西计算机等级考试 吉林计算机等级考试 江苏计算机等级考试 湖北计算机等级考试 北京计算机等级考试 安徽计算机等级考试 宁夏计算机等级考试 浙江计算机等级考试 陕西计算机等级考试 湖北计算机等级考试 河北计算机等级考试 天津计算机等级考试

| 电子商务平台

互联网营销师 电子商务师 农村电商

| 计算机技术与软件专业技术资格(水平)考试
| 信息系统项目管理师

学习笔记 考试动态 直播动态 考试用书 考试大纲 信息系统项目管理

| 信息系统监理师

IT实务 直播预告 信息系统监理师综合 答疑QA 监理资质

| 信息处理技术员

考试动态 直播动态 考试用书 知识分享 技术百科

| 多无人系统协同视觉SLAM 算法当前您所在的位置:首页 > IT > 计算机学苑 > 智能感知与无人系统

多无人系统协同视觉SLAM 算法

魏 强1, 张冬梅2, 范勇生3

(1.中国空间技术研究院, 北京 100098; 2.中国东方红卫星股份有限公司, 北京 100081;3.上海宇航系统工程研究所, 上海 201108)

摘要:针对传统同时定位与地图构建(SLAM)方法受计算能力、存储能力的限制无法在大范围场景下作业,无法建立大范围场景的全局一致性地图等问题,基于ORB-SLAM2 系统框架建立了一种中心式的多无人系统协同视觉SLAM 算法。 设计了地图大小限制策略,以保证无人系统不受机载设备算力和存储能力的影响,基于字典机制和Sim3 转换构建了地图融合优化算法,以完成全局地图构建与优化。 最后进行了数据集测试,结果表明:所提出算法能够完成多无人系统协同SLAM,相对传统 SLAM 算法具有明显优势。

关键词:视觉SLAM; 无人系统协同; 地图融合; 状态估计

1 引言

近年来,随着机器人领域技术的不断发展,以地面无人车辆和无人机为代表的智能无人系统在军事、民用等领域中的应用逐渐成为了研究热点,智能无人系统不仅能够完成浇灌、测绘、巡检等民用任务,还能有效完成侦察、打击、追踪等作战任务。 然而随着任务需求的增高,对无人系统能力的需求也愈来愈高。

导航系统是无人系统功能实现的关键组成部分,负责向无人系统提供其在参考坐标系下的位置、速度、姿态等关键信息,引导无人系统按照既定路线行进,导航系统的精确程度和稳定性直接影响了后续任务规划和控制的能力。 传统的导航系统多依赖于全球导航卫星系统(Global Navigation Satellite System,GNSS)和机载惯性导航元件之间的组合导航,然而,在室内环境或复杂室外环境中GNSS 系统会受高大障碍物遮挡以及多路径效应的影响,导致信号解析错误或信号中断。 同时定位与建图技术(Simultaneous Localization and Mapping, SLAM)[1]使智能体获得自定位的能力,以保证在GPS 拒止的情况下无人系统能够完成自主导航,同时SLAM 技术能够建立一个全局一致表征的环境地图,可用于环境探索等任务,因此,SLAM 技术是在GNSS 拒止情况下,使无人系统能够完成自主导航的关键技术之一。 按照使用的传感器不同,SLAM 技术主要可以分为激光雷达SLAM 和视觉SLAM 2 种:激光雷达误差模型简单,对于距离估计更为准确,并且不受弱光照等环境因素的影响,但是价格昂贵,重量大;相较之下,视觉传感器价格低廉,设备轻便,应用前景更加广泛。 目前小范围环境下的SLAM 问题研究较为透彻,但单一无人系统在大范围场景下进行探索时效率较低,并且由于地图数据量的不断增长,计算时间和内存占用都会对机载计算机的能力提出严苛的要求。

多机协同SLAM 可以将问题分而治之,将整个任务的计算/存储压力以及计算量分摊到参与协同的各个无人系统上,大幅提高任务效率。 因此,多机协同SLAM 逐渐成为了当前的研究重点。目前多机协同视觉SLAM 系统多数为中心式架构[2],中心式架构将智能体分为子端和中心端,子端和中心端直接进行信息交互,子端智能体执行部分SLAM 任务,完成状态估计并建立局部地图;中心端利用子端传输的数据,对地图进行融合和优化,创建全局一致性表示的全局地图。 2008年,Castle 等[3]在Klein 等[4]的基础上使用了2 个单目视觉传感器,利用2 个子端产生的关键帧共同完成地图构建。 基于相似的思路,Zou 等[5]提出了CoSLAM,将多视觉传感器协同的数量规模扩张到了12 个。 然而随着参与协同的传感器数目增多,CoSLAM[5]的算力压力较大,并且对通信系统的带宽具有较高的要求。 Riazuelo 等[6]通过引入云端服务器,使子端将关键帧上传至云端,在云端服务器上完成局部地图的构建和子端地图融合,改善了系统的计算压力和带宽压力。 Forster等[7]使用了减少数据传输量的方法来缓解通讯压力,只发送检测出的特征点和关键帧帧间的相对位姿。 通过比较子端和中心端计算的关键帧位姿之间的差异来恢复绝对位姿。

本文提出了一种大范围场景下的多无人系统协同定位与建图方法,利用多个无人系统进行探索,同时每个子端进行同时建图与定位过程,建立稀疏点云地图。 之后,根据区域重叠等公共信息进行局部地图的融合,建立全局的稀疏点云地图,完成协同定位与建图功能,在提升定位精度与效率的基础上建立一个全局一致的环境地图表示,以提升无人系统集群的智能程度。

2 多无人系统协同定位与建图系统

2.1 系统整体框架

采用中心式架构,将系统分为两部分:子端和中心端。 每个子端搭载一台单目相机、通信单元和机载计算机;中心端和子端进行数据交互,接收子端传输的关键帧,地图点等数据,完成回环检测,地图融合,全局优化等非实时操作;并将优化后的数据发送回子端,指导子端的导航系统。 整体的系统结构如图1 所示。

图1 算法框架图
Fig.1 Diagram of the algorithm framework

1)所有智能体子端都运行一个独立的前端视觉里程计,维持一个规模较小的局部地图并将关键帧和地图点发送给中心端,中心端接收各子端信息,形成各子端的历史地图。

2)中心端通过从所有子端处获得的关键帧增量式构建了一个关键帧数据库。 用于存储所有接收到的关键帧的信息,中心端还建立了一个包含了所有子端局部地图的地图堆栈,不同子端地图的构建独立进行,互不干扰。 重叠区域检测过程不断进行,新接收的关键帧通过基于字典机制的相似度检测算法不断检测子端是否位于过去到达过的区域,重叠区域包括该子端过去到达过的区域和其他子端到达过的区域。 子端内部重叠,则进行回环检测过程;子端之间重叠,则通过匹配的关键帧建立两子端局部地图间的数据关联,进一步进行地图融合,地图融合后这2 个地图被合并,原有的局部地图从地图堆栈中删除,而由它们的融合产生的一个新的全局地图将被添加到地图堆栈中,并与2 个子端直接关联。 最后根据得到的全局地图进行全局优化。

3)在全局优化结束后,中心端会将优化后的相机位姿发送回对应的子端,子端会更新位姿并将其进行局部优化,从而更精确的完成协同SLAM 过程,并获得更准确的导航结果。

2.2 子端算法

子端的主要功能是运行视觉里程计,并将跟踪的路标点进行存储,组成局部地图,按照设定好的数据结构将信息发送给中心端。 这部分基于ORB-SLAM2[8]进行开发,如图 2 所示。 由于子端局部地图的大小会随着运行时间而增长,大范围协同SLAM 一般都需要长时间运行,这就对子端的存储能力提出了挑战。 由于中心端的地图堆栈中包含了每个子端的完整地图,因此在通信系统畅通的情况下,子端无需保留过多地图信息。 本方法对各子端建立的局部地图中关键帧的数量进行限制,以降低在大范围探索任务中子端机载处理器的存储压力和计算压力。

图2 跟踪线程框架图
Fig.2 Block diagram of the tracking process

设定子端局部地图中关键帧数目的上限为N,一旦关键帧数目超过N,就去除旧的关键帧,同时将新创建的关键帧添加进局部地图,为了防止出现中心端没有接收到被删除的关键帧而造成数据丢失的现象,在删除关键帧之前,子端会和中心端进行一次数据交互,确认中心端是否接收到该关键帧,确认后再进行删除,流程如图3 所示。

图3 子端局部建图流程
Fig.3 Process of the local mapping

2.3 中心端算法

不同子端局部地图之间的参考坐标系关系如图4 所示,假设有子端a,子端b,子端a 的参考坐标系为worlda ,子端b 的参考坐标系为worldb,ki为子端a 创建的一个关键帧,它在子端a 的局部地图中的位姿为Ta ,它在子端b 的局部地图中的位姿Tb = TabTa 。 因此要完成子端a,b 之间的地图融合,就需要得知从worlda 到worldb 的位姿转换关系Tab 。 如果子端a 和子端b 在观测过一处公共区域,那么2 个局部地图之间就存在着重叠区域,可以利用其完成地图融合与全局优化,然而,若2 个子端没有观测过公共区域,那么在没有其他信息的情况下无法完成两地图之间的数据融合。

图4 参考坐标系转换关系
Fig.4 Conversion relation of reference coordinate system

由于局部地图之间重叠部分的地图点所对应的特征描述子之间相似度较高。 而系统创建了一个关键帧数据库,其中存储了所有子端发送的关键帧,因此,可以为关键帧数据库建立一个字典树,在整个地图堆栈中检索有无关键帧匹配,检测到匹配后利用匹配关系解算地图间的相对位姿关系,实现全局地图融合与优化。 下面介绍基于重叠区域检测的地图融合优化算法。

首先,进行重叠区域检测。 遍历新关键帧k的所有共视关键帧,计算k 与每个共视关键帧的词袋向量相似度,并得到当前帧与其共视关键帧相似度的最低分minScore,在关键帧数据库中寻找与k 相似度超过minScore 的关键帧,称为候选匹配关键帧,接下来在候选匹配关键帧中检测具有连续性的候选帧,连续次数大于3 则认为成功匹配,将所有符合条件的关键帧组合起来,就得到了候选关键帧组。

然后,利用求解出的匹配关系进行地图之间相对位姿的计算。 ①遍历匹配候选关键帧集合,筛选出与当前帧的匹配特征点大于20 的候选帧集合;②每一个候选帧都构造一个位姿求解器进行迭代求解;③本文的位姿求解算法使用三维相似变换算法(Similarity,Sim3)[9],常用于求取2 组匹配点之间的位姿变换关系。

利用Sim3 转换通过匹配的地图点之间的关系求解出两关键帧间的相似变换关系,假设当前帧到匹配帧的坐标变换矩阵为Tmc ,逆变换矩阵为Tcm ,当前关键帧坐标系下的地图点Pc 对应的图像像素点为pc ,同理,有候选帧坐标系下与地图点Pc 匹配的地图点Pl 及其对应的图像像素点pl ,则重投影误差为:

设置两个重投影误差阈值分别为E1 和E2,若elc <E1 且ecl <E2,则该组匹配构建的三维点被称为内点。 当内点数量满足要求时,视为该候选帧匹配成功。 当有一个候选帧匹配成功,成功解算出相对位姿关系后,为了优化这个初步解算出的位姿转换关系,通过将匹配关键帧以及其相连关键帧的地图点都投影到当前关键帧进行匹配,以构造更多的匹配关系来进一步优化Sim3 变换,直到优化后的内点数目符合要求后,则视为相似变换解算成功。

最后,进行地图融合与优化。 由于上一步中计算Sim3 转换改变了当前关键帧的地图点,因此需要根据共视关系更新当前帧与其他关键帧之间的连接以及其他关键帧的地图点,对冲突的地图点进行替换或填补。 然后将匹配关键帧组的地图点投影到局部关键帧组上进行地图点检查与替换,更新关键帧之间的共视相连关系,得到因匹配时地图点融合而新得到的连接关系。 接下来进行本质图优化,优化因匹配而更改的连接关系,最后添加当前帧与闭环匹配帧之间的边,进行全局优化,基于地图点到关键帧的投影关系,优化所有的地图点和关键帧的位姿。 算法流程图如图5所示。

图5 基于重叠区域检测的地图融合优化算法流程
Fig.5 Algorithm flowchart of Map Fusion and optimization based on overlapping region Detection

3 实验结果

3.1 数据集和测试指标

由于目前少有针对多机SLAM 的测试数据集,因此常应用EuRoC、TUM 等单系统于单一环境以不同轨迹收集的多个数据集应用于多机协同SLAM 的性能测试。 EuRoC[10]是SLAM 领域常用的测试数据集,常用于SLAM、VIO 等系统的性能测试。 EuRoC 中包含一个在小型工业厂房中收集的数据集,该厂房如图 6 所示,厂房结构较复杂,特征丰富,适合用来对SLAM 算法进行性能测试。 该数据集中MH01、MH02 和MH03 是由无人机在光照条件较为良好的情况下进行低速飞行采集到的3 组数据集,算法测试难度适中。 由于厂房面积较小,因此这3 组数据集存在大量的重叠关系,为多机协同SLAM 的地图融合创造了条件。本文使用MH01,MH02 和MH03 数据集作为3 个无人系统子端对系统进行测试,用Rviz[11]来进行数据可视化。

图6 厂房图
Fig.6 Machine hall overview

SLAM 系统性能测试中常用的精度指标为绝对轨迹误差(Absolute Trajectory Error,ATE),本文选取绝对轨迹误差ATE 作为评测指标。

3.2 实验结果

本文首先建立系统中心端和3 个无人系统子端,分别接收MH01,MH02,MH03 等3 组数据集发送的图像数据,SLAM 如图7 所示。 其中绿色的轨迹和点云是MH01 中相机的轨迹估计结果和构建的点云,白色的轨迹和点云是MH02 中相机的轨迹估计结果和构建的点云,蓝色的轨迹和点云是MH03 中相机的轨迹估计结果和构建的点云。 可以发现,3 组独立的飞行过程通过本文的协同SLAM 系统完成了数据关联,得到了各自轨迹的相对位姿关系,并共同构建了一个全局一致性表征的稀疏点云地图。 最终的轨迹估计结果如图8 所示。

图7 SLAM 结果图
Fig.7 Diagram of SLAM result

图8 SLAM 轨迹图
Fig.8 Diagram of SLAM trajectory

为了对比本文提出的协同SLAM 方法的性能,以ORB-SLAM2 作为基准方法,对比协同情况下轨迹估计值的误差和单独进行SLAM 情况下轨迹估计值的误差。 使用SLAM 测评工具EVO 测试了轨迹跟踪情况,使用ORB-SLAM2 单独进行SLAM 过程的轨迹跟踪结果和应用本文方法进行协同SLAM 过程的轨迹跟踪结果如图9 所示,其中图9(a),图(b)是在MH01 数据集上的轨迹跟踪结果,图9(c),图9(d)是在MH02 数据集上的轨迹跟踪结果,图9(e),图9(f)是在MH03 数据集上的轨迹跟踪结果,轨迹跟踪情况较好。

图9 本方法和ORB-SLAM2 对各数据集的轨迹结果
Fig.9 Trajectory results of ORB-SLAM2 and our methods for various datasets

ORB-SLAM2 算法和本方法在3 组数据集上的绝对轨迹误差对比结果如表1~表3 所示。 由表可知,2 种算法在数据集中的误差都较低,在MH01 数据集中ORB-SLAM2 的误差均值为0.07 m,本方法的误差均值为0.071 m,与ORBSLAM2 持平,在MH02 数据集中ORB-SLAM2 的误差均值为0.042 m,本方法的误差均值为0.035 m,比ORB-SLAM2 小0.007 m,在MH03 数据集中ORB-SLAM2 的误差均值为0.088 m,本方法的误差均值为0.076 m,比ORB-SLAM2 小0.008 m,但本方法在MH01 中出现了离群点现象,最大误差较高。 最大误差,最小误差,误差中值,均方误差等其他各项指标均与 ORB-SLAM2持平。 因此可以得出结论,利用本方法进行协同SLAM 的效果与ORB-SLAM2 算法单独进行SLAM 的效果基本持平。

表1 MH01 实验结果
Table 1 Results of MH01

表3 MH03 实验结果
Table 3 Results of MH03

为验证本文对各子端局部地图中关键帧的数量进行限制的方法的有效性,本文通过设定不同的子端局部地图中关键帧数目的上限值,进行了实时性测试。 测试在处理相同数据时,单帧跟踪时间、建图单帧迭代时间、单次数据通信时间在不同N 值情况下的数值,仿真结果如表4 所示。

表2 MH02 实验结果
Table 2 Results of MH02

表4 不同N 值下的实时性测试实验结果
Table 4 Real time test results for different N values

由实验结果可以看出,单帧跟踪时间、建图单帧迭代时间、单次数据通信时间都随N 值增加而增加,其中建图时间增加幅度较大,这是因为N值增加直接使得局部地图规模增加,线性增加建图成本。 跟踪和通信时间由于子端建图部分占用了更多的算力,产生了更多的数据交互而速度降低,因此验证了本文通过限制子端局部地图中关键帧的数目可以有效提升算法的速度,减少子端的内存压力和计算压力。

4 结论

1) 提出了一种协同视觉SLAM 系统。 采用中心式的架构进行设计,对子端局部地图的大小进行限制,并设计了基于公共区域识别的地图融合算法,最终得到误差较小的位姿估计和全局一致性表示的全局地图。

2) 完成了数据集实验测试。 证明了本方法的精度略优于ORB-SLAM2 单机SLAM 的精度,证明了本方法可以在大范围环境下完成无人系统协同视觉SLAM。

参考文献(References)

[1] Durrant-Whyte H, Bailey T.Simultaneous localization and mapping: Part I[J].IEEE Robotics & Automation Magazine,2006, 13(2): 99-110.

[2] Zou D, Tan P, Yu W.Collaborative visual SLAM for multiple agents: A brief survey[J].Virtual Reality & Intelligent Hardware, 2019, 1(5): 461-482.

[3] Castle R, Klein G, Murray D W.Video-rate localization in multiple maps for wearable augmented reality[C]/ /2008 12th IEEE International Symposium on Wearable Computers.IEEE, 2008: 15-22.

[4] Klein G, Murray D.Parallel tracking and mapping for small AR workspaces[C]/ /2007 6thIEEE and ACM International Symposium on Mixed and Augmented Reality.IEEE, 2007:225-234.

[5] Zou D, Tan P.Coslam: Collaborative visual slam in dynamic environments[J].IEEE Transactions on Pattern Analysis and Machine Intelligence, 2012, 35(2): 354-366.

[6] Riazuelo L, Civera J, Montiel J M M.C2tam: A cloud framework for cooperative tracking and mapping[J].Robotics and Autonomous Systems, 2014, 62(4): 401-413.

[7] Forster C, Lynen S, Kneip L, et al.Collaborative monocular slam with multiple micro aerial vehicles[C]/ /2013 IEEE/RSJ International Conference on Intelligent Robots and Systems.IEEE, 2013: 3962-3970.

[8] Mur-Artal R, Tardós J D.Orb-slam2: An open-source slam system for monocular, stereo, and rgb-d cameras[J].IEEE Transactions on Robotics, 2017, 33(5): 1255-1262.

[9] Horn B K P.Closed-form solution of absolute orientation using unit quaternions[J].Josa A, 1987, 4(4): 629-642.

[10] Burri M, Nikolic J, Gohl P, et al.The EuRoC micro aerial vehicle datasets[J].The International Journal of Robotics Research, 2016, 35(10): 1157-1163.

[11] Kam H R, Lee S H, Park T, et al.RViz: A toolkit for real domain data visualization[J].Telecommunication Systems,2015, 60(2): 337-345.

Collaborative Vision SLAM Algorithm for Multiple Unmanned Systems

Wei Qiang1, Zhang Dongmei2, Fan Yongsheng3

(1.China Academy of Space Technology, Beijing 100098, China; 2.China Spacesat Co.,Ltd.Beijing 100098, China;3.Aerospace System Engineering Shanghai, Shanghai 201108, China)

Abstract:Traditional simultaneous localization and mapping methods are limited by computing power and storage capacity.To solve the problem that a global consistency map of large-scale scenes could not be built by those traditional methods, a central cooperative vision SLAM algorithm for multi-unmanned systems was established based on the ORB-SLAM2 system framework.A map size restriction strategy was designed to ensure the unmanned system was not affected by the computing power and storage capacity of airborne equipment.In addition, a map fusion algorithm was constructed based on dictionary mechanism and Sim3 conversion to complete global map construction and optimization.The results showed that the proposed algorithm could complete multi-unmanned system collaborative SLAM, which had obvious advantages over the traditional SLAM algorithm.


课程
财会类
税务类
金融类
经管类
认证类
学历类
建工类
健康类
专家
政府专家
财税名家
高校教授
文化传媒
金融科技
金融电子化
企业管理
财政金融
生物医药
诺贝尔奖得主
合规法律
科学技术
银行智库
财会
中国注册会计师
AIA
会计实务
财务经理人
初级会计师
税务实务
中级会计师
中国会计智库
CFO成长营
会计学苑
建工
二级造价工程师
建筑工程资讯
二级建造师
一级造价工程师
监理工程师
消防设施操作员
产教融合
建工学苑
一级建造师
安全工程师
消防工程师
造价工程事务所
BIM工程师
经管
转创人力
中级经济师
二级人力资源管理师
三级人力资源师
人力资源管理师
碳排放管理师
期刊中心
教材参考
军队文职人员
产教融合
劳动关系协调员
初、中级经济考试
企业合规师
初级经济师
企业人力资源管理师
职业指导师
教育
英语学习考试
专升本
成人高等教育
自考中国
自学考试研究所
普通专升本
小自考中心
高等继续教育学院
中外教育
智库与社会服务
高等职业本科
金融
证券从业
基金从业
金融智库
银行从业
转创博学
ICCM
项目
高管培训
国际学历
财经证书
专项课程
企业内训
教育技术产品
高校学科建设服务
教学资源开发
国际合作服务
产业服务
国内院校
海外院校
海外留学
合作院校
观点
政治经济
IT&财务融合
高校教授
文化传媒
金融科技
金融电子化
企业管理
财政金融
生物医药
诺贝尔奖
合规法律
科学技术
银行智库
商业产经
医卫
医卫健康
主管药师
保育员
药卫学苑
心理咨询师
家庭照护员
养老护理员
健康管理师
公共营养师
执业药师
育婴师(员)
主管护师
护士执业
医院招聘
IT
网络安全管理师
系统集成项目管理工程师
金融科技师
网络工程师
计算机学苑
计算机应用水平考试
电子商务平台
计算机技术与软件专业技术资格(水平)考试
信息系统项目管理师
信息系统监理师
信息处理技术员
考研
考研资讯
信息中心
专业硕士
考研公共课
同等学力申硕中心
复试调剂
研究生工作
考研中国
硕士入学考试
考研直播动态
教师
高中教师
考试动态
直播动态
考试报名
教育智库
幼儿教师
小学教师
初中教师
教师中国
教师招聘
中小学教师资格考试
普通话测试
教师企业
校长领导力
社工
社会工作者
技能中国
智库与社会服务
初级社会工作者
中级社会工作者
报考动态
社会工作事务所
职称评审
家庭教育指导师
转创网校APP
18318889481
在线QQ
在线留言
返回首页
返回顶部
留言板
发送