阅读笔记。

为了能够在未知的环境中进行自主导航,机器人首先需要能够自动地建立环境地图以及获知自身的位姿信息。其次,最容易被忽略但却必需的是环境的稠密地图。如果机器人没有环境的全部信息,那么进行导航规划时机器人就不知道哪里是可以行走的道路,可能撞到障碍物或者掉坑里…… 

许多著名的vSLAM框架构建的地图都是稀疏的,如S-PTAM、ORB-SLAM2等。为了进行导航,需要构建环境的稠密地图。本文介绍了一些可行的方法,如使用三维重建(3D Reconstruction)生成图像帧的点云,然后进行深度融合;或者基于RGB-D相机,直接生成稠密地图等。

ORB-SLAM2是视觉SLAM实现的佼佼者,许多研究都基于该框架进行。而在机器人工程领域中,ROS是研究者第一想到的操作平台。ROS对许多底层的操作和机器人领域常用的算法进行了封装。考虑到ROS的易用性和广泛性,ORB-SLAM2的作者提供了该框架的ROS封装。本文讲解如何在Ubuntu 18.04上安装ROS和ORB-SLAM2。

想要知道ORB-SLAM2怎么实现的吗?看这篇就错了。这篇文章仅总结了比较重要的功能代码,给出了系统的骨架。

如果你只是想粗略地了解下ORB-SLAM2,那么本文也许对你有所帮助。

ORB-SLAM2 是 ORB-SLAM 的第二代版本,在一代的基础上,添加了对双目相机、RGB-D 相机的支持。第一代的 ORB-SLAM 基于单目相机。

视觉 SLAM 可使用的传感器有许多种:单目相机、双目相机、RGB-D 相机等。单目相机是最低成本和最小型的传感器配置。然而,由于单个相机无法获取深度信息,通过单目构建的地图的尺度是未知的。此外,单目 SLAM 系统在启动时需要多视角信息或滤波技术以执行地图初始化操作,固定地图的尺度。最后,单目 SLAM 会遇到尺度漂移 (scale drift),而且在相机只有旋转运动时可能会失败。

由于单目 SLAM 固有的这些缺陷,ORB-SLAM2 将重心放在了双目相机和 RGB-D 相机上。特别地,它通过将 RGB-D 采集的深度信息转换为虚拟的右目相机的坐标信息,使得 RGB-D 数据可以转换为双目数据,进而使用双目 SLAM 的方法进行问题求解。

    Page 1 of 2