【泡泡一分钟】ProSLAM:从程序员的角度来看SLAM

2019 年 9 月 11 日 泡泡机器人SLAM

每天一分钟,带你读遍机器人顶级会议文章

标题:ProSLAM: Graph SLAM from a Programmer's Perspective  

作者:Dominik Schlegel, Mirco Colosi and Giorgio Grisetti

来源:IEEE International Conference on Robotics and Automation (ICRA) 2018

编译:董文正

审核:颜青松,陈世浪

欢迎个人转发朋友圈;其他机构或自媒体如需转载,后台留言申请授权

摘要

在本文中,我们提出ProSLAM,一种轻量的双目视觉SLAM系统,设计简单。我们的工作源于作者在给学生教授SLAM时收集的经验,旨在提供易于实现和理解的高度模块化系统。在这项工作中,我们不是聚焦于双目视觉SLAM的数学层面,而是突出了数据结构和算法层面。我们使用C++编程语言,结合最小一组众所周知的外部库来实现ProSLAM。除了开源实现之外,我们还提供了几个代码片段,直接在论文中讲解了我们的核心。对标准基准数据集进行彻底验证的结果表明,我们的方法与现有技术相比执行精度更好,同时需要更少的计算资源。

https://github.com/NamDinhRobotics/proSLAM

图1  使用相同参数的两个不同数据集,ProSLAM的最终地图输出。机器人轨迹由浅蓝色矩形框架表示。循环闭合点云以绿色表示。 

图2  具有4个核心模块的ProSLAM系统概述。系统的唯一外部输入是立体图像。中央地图的不同阴影区域显示由各个模块访问的组件。 

图3  我们的数据结构的示意图。轨迹以蓝色突出显示,帧F和局部地图M以矩形突出显示,地标L以黑点突出显示。立体关键点对K LR(图像I L,I R中的彩色点)在缩放帧中可视化。绿线将点P与其设定的地标(P.landmark)连接起来。 

图4  三角测量(III-B)模块。从左到右,原始图像数据被转换为包含在帧对象F中的增强3D点云{P}。注意,右图像中的关键点不会被正则化过程过滤。 

图5  增量运动估计(III-C)模块。从先前的图像I Ltt 1到当前图像I Lt的一个时间步的增量运动估计的概述。具有相应的先前帧点{Ptt 1}的输出帧点{Pt}由P连接。

图6  地图管理(III-D)模块。用于在3个时间步长(跨越3个帧)之后生成地图的示例序列。 

图7  重新定位(III-E)模块。序列可以在任何单元中过早地转义,导致全局映射更新丢失。在那种情况下,变换T c2w不改变其值。如果模块实现了成功的重定位,则全局映射以及T c2w将得到改进。突出显示的部分区域使用HBST功能。 

图8  KITTI基准测试结果比较,越少越好。 

表1  EuRoC基准测试结果比较(RMSE)。

表2  KITTI平均图像处理速度。

Abstract

In this paper we present ProSLAM, a lightweight stereo visual SLAM system designed with simplicity in mind.Our work stems from the experience gathered by the authors while teaching SLAM to students and aims at providing a highly modular system that can be easily implemented and understood. Rather than focusing on the well known math-ematical aspects of Stereo Visual SLAM, in this work we highlight the data structures and the algorithmic aspects that one needs to tackle during the design of such a system. We implemented ProSLAM using the C++ programming language in combination with a minimal set of well known used external libraries. In addition to an open source implementation, we provide several code snippets that address the core aspects of our approach directly in this paper. The results of a thorough validation performed on standard benchmark datasets show that our approach achieves accuracy comparable to state of the art methods, while requiring substantially less computational resources. 


如果你对本文感兴趣,请点击点击阅读原文下载完整文章,如想查看更多文章请关注【泡泡机器人SLAM】公众号(paopaorobot_slam)

欢迎来到泡泡论坛,这里有大牛为你解答关于SLAM的任何疑惑。

有想问的问题,或者想刷帖回答问题,泡泡论坛欢迎你!

泡泡网站:www.paopaorobot.org

泡泡论坛:http://paopaorobot.org/bbs/


泡泡机器人SLAM的原创内容均由泡泡机器人的成员花费大量心血制作而成,希望大家珍惜我们的劳动成果,转载请务必注明出自【泡泡机器人SLAM】微信公众号,否则侵权必究!同时,我们也欢迎各位转载到自己的朋友圈,让更多的人能进入到SLAM这个领域中,让我们共同为推进中国的SLAM事业而努力!

商业合作及转载请联系liufuqiang_robot@hotmail.com

登录查看更多
18

相关内容

名为ProSLAM的轻量级开源双目视觉SLAM系统。论文原文:《ProSLAM: Graph SLAM from a Programmer's Perspective》
一份循环神经网络RNNs简明教程,37页ppt
专知会员服务
168+阅读 · 2020年5月6日
基于视觉的三维重建关键技术研究综述
专知会员服务
154+阅读 · 2020年5月1日
专知会员服务
61+阅读 · 2020年3月4日
专知会员服务
84+阅读 · 2019年12月13日
【泡泡一分钟】视觉SLAM为什么需要光束平差法
泡泡机器人SLAM
10+阅读 · 2019年9月12日
【泡泡一分钟】变化环境下激光地图辅助视觉惯性定位
泡泡机器人SLAM
15+阅读 · 2019年5月22日
【泡泡一分钟】动态环境下的高效长时间建图
泡泡机器人SLAM
6+阅读 · 2019年2月1日
【泡泡一分钟】视觉(-惯性)里程计定量轨迹评估教程
泡泡机器人SLAM
34+阅读 · 2019年1月27日
【泡泡一分钟】用于评估视觉惯性里程计的TUM VI数据集
泡泡机器人SLAM
11+阅读 · 2019年1月4日
【泡泡一分钟】CVI-SLAM –协同视觉惯性SLAM
泡泡机器人SLAM
20+阅读 · 2018年12月18日
【泡泡一分钟】用于平面环境的线性RGBD-SLAM
泡泡机器人SLAM
6+阅读 · 2018年12月18日
【泡泡一分钟】动态环境下稳健的单目SLAM
泡泡机器人SLAM
13+阅读 · 2018年3月22日
【泡泡一分钟】重新认识SfM (CVPR-6)
泡泡机器人SLAM
22+阅读 · 2017年10月20日
Real-time Scalable Dense Surfel Mapping
Arxiv
5+阅读 · 2019年9月10日
Structure Aware SLAM using Quadrics and Planes
Arxiv
4+阅读 · 2018年8月13日
VIP会员
相关资讯
【泡泡一分钟】视觉SLAM为什么需要光束平差法
泡泡机器人SLAM
10+阅读 · 2019年9月12日
【泡泡一分钟】变化环境下激光地图辅助视觉惯性定位
泡泡机器人SLAM
15+阅读 · 2019年5月22日
【泡泡一分钟】动态环境下的高效长时间建图
泡泡机器人SLAM
6+阅读 · 2019年2月1日
【泡泡一分钟】视觉(-惯性)里程计定量轨迹评估教程
泡泡机器人SLAM
34+阅读 · 2019年1月27日
【泡泡一分钟】用于评估视觉惯性里程计的TUM VI数据集
泡泡机器人SLAM
11+阅读 · 2019年1月4日
【泡泡一分钟】CVI-SLAM –协同视觉惯性SLAM
泡泡机器人SLAM
20+阅读 · 2018年12月18日
【泡泡一分钟】用于平面环境的线性RGBD-SLAM
泡泡机器人SLAM
6+阅读 · 2018年12月18日
【泡泡一分钟】动态环境下稳健的单目SLAM
泡泡机器人SLAM
13+阅读 · 2018年3月22日
【泡泡一分钟】重新认识SfM (CVPR-6)
泡泡机器人SLAM
22+阅读 · 2017年10月20日
Top
微信扫码咨询专知VIP会员