OpenVSLAM

Sumikura 2019 · 论文

一句话总结 — 一个模块化、开源的视觉SLAM框架,被设计为一个可调用的库,采用基于ORB的间接流水线,支持透视、鱼眼和等距柱状投影(360度全景)相机模型,并支持地图的保存/加载与定位。

问题

视觉SLAM对AR设备、自动驾驶机器人、无人机和UAV至关重要,但”传统的开源视觉SLAM框架并没有被恰当地设计为可供第三方程序调用的库”。ORB-SLAM、LSD-SLAM和DSO——事实上的标准——都是面向研究的应用程序:难以嵌入、难以扩展、局限于透视相机,而且(根据论文的对比表)大多不支持地图的存储/加载。像OpenMVG和OpenSfM这样的SfM软件包已经能够处理鱼眼和等距柱状投影图像;但当时没有任何实时视觉SLAM框架做到这一点。

方法与架构

OpenVSLAM(MM ‘19)是一个用C++实现的单目/双目/RGB-D系统(基于Eigen、OpenCV、g2o),其贡献主要在架构层面而非算法层面——将已经广为人知的SLAM方法封装为具有清晰API、并附有大量文档化示例代码的独立组件。

实验结果

在一台Core i7-7820HK笔记本电脑上,与ORB-SLAM2对比:

对SLAM的意义

OpenVSLAM是最早为可用性和可集成性(而非仅仅为基准精度)而设计的SLAM代码库之一,它作为可嵌入组件被研究界和产业界广泛采用——尤其适用于其他开源系统都不支持的全景采集设备。它的历史也带来了一个教训:由于担心其代码衍生自采用GPL许可的ORB-SLAM2,原始仓库被下架,社区则以Stella-VSLAM之名继续开发。它仍然是研究一个组织良好的基于特征的SLAM架构的很好的入门起点。

相关条目