汇总 ORB-SLAM2 / ORB-SLAM3 相关改进代码

作者丨小深

来源丨深话AI

本文总结了特征点法SLAM中目前效果最好的方法:ORB-SLAM2 / ORB-SLAM3 相关改进代码汇总,包括加速、多传感器融合、稠密建图、线特征、点线融合、导航、动态环境、多平台移植等。具体见下。 

ORB-SLAM2 相关改进代码汇总

论文发表于2017年的IEEE Transactions on Robotics,论文名称《ORB-SLAM2: an Open-Source SLAM System for Monocular, Stereo and RGB-D Cameras》

ORB-SLAM2 特点:

  • 首个(2017年发布时)支持单目,双目和RGB-D相机的完整的开源SLAM方案,具有回环检测和重新定位的功能。

  • 能够在CPU上进行实时工作,可以用于移动终端如 移动机器人、手机、无人机、汽车。

  • 特征点法的巅峰之作,定位精度极高,可达厘米级。

  • 能够实时计算出相机的位姿,并生成场景的稀疏三维重建地图。

  • 代码非常整洁,包含很多实际应用中的技巧,非常实用。

  • 支持仅定位模式,该模式适用于轻量级以及在地图已知情况下长期运行,此时不使用局部建图和回环检测的线程

[PAPER](https://arxiv.org/abs/1610.06475),

[CODE](https://github.com/raulmur/ORB_SLAM2),

[超详细中文注释版]

(https://github.com/electech6/ORBSLAM2_detailed_comments)

改进方法

[ORBSLAM2_with_pointcloud_map](https://github.com/gaoxiang12/ORBSLAM2_with_pointcloud_map),

高翔实现的添加稠密点云地图

[ORB-SLAM2_RGBD_DENSE_MAP]

(https://github.com/tiantiandabaojian/ORB-SLAM2_RGBD_DENSE_MAP),在高翔基础上添加了稠密闭环地图

[ORB-YGZ-SLAM]

(https://github.com/gaoxiang12/ORB-YGZ-SLAM),

使用SVO中直接法来跟踪代替耗时的特征点提取匹配,在保持同样精度的情况下,是原始ORB-SLAM2速度的3倍

[YGZ-stereo-inertial SLAM]

(https://github.com/gaoxiang12/ygz-stereo-inertial),

双目VIO版本,加入了LK光流和滑动窗口BA优化

[VI-ORB](https://github.com/jingpang/LearnVIORB),

京胖实现的VI-ORB-SLAM2

[Fisheye-ORB-SLAM]

(https://github.com/lsyads/fisheye-ORB-SLAM),添加了支持鱼眼

[Save and load orb-slam2 maps]

(https://github.com/AlejandroSilvestri/osmap),添加保存和导入地图功能

[ORB_SLAM2 with map load/save function]

(https://github.com/Jiankai-Sun/ORB_SLAM2_Enhanced),添加保存和导入地图功能

[Viewer for maps from ORB-SLAM2 Osmap]

(https://github.com/AlejandroSilvestri/Osmap-viewer),

添加了地图可视化

[Add line feature based ORB-SLAM2]

(https://github.com/atlas-jj/ORB_Line_SLAM),添加了线特征

73547fc13b288a3937968180df706489.png

[RGBD-SLAM with Point and Line Features, developed based on ORB_SLAM2]

(https://github.com/maxee1900/RGBD-PL-SLAM),添加了点线融合

[Good Feature Selection for Least Squares Pose Optimization in VO/VSLAM]

(https://github.com/ivalab/gf_orb_slam2),使用了一种更好的特征选择方法

510823cc5670dce5eb61f528ea7dc9c6.png

[ORB_SLAM2_SSD_Semantic](https://github.com/Ewenwan/ORB_SLAM2_SSD_Semantic), 

动态语义SLAM 目标检测+VSLAM+光流/多视角几何动态物体检测+octomap地图+目标数据库

326e04026f429028bc58e57843fe2a4a.png

[Tracking Enhanced ORB-SLAM2]

(https://github.com/Eralien/TE-ORB_SLAM2),

用YOLO v3的语义信息来增加跟踪性能

97a43e1872c22f0e51ca9026c82e0fad.png

[YOLO Dynamic ORB_SLAM](https://github.com/bijustin/YOLO-DynaSLAM),用YOLO来做动态环境的检测

e2a694d29bbfddc04ef6908f4b74a1d9.png

多平台移植代码

[Windows version ORBSLAM2,Easy built by visual studio]

(https://github.com/phdsky/ORBSLAM24Windows),

Windows平台版本,可以用 visual studio轻松编译

[ORB-SLAM-Android, test on Sony Xperia Z]

(https://github.com/castoryan/ORB-SLAM-Android),

Android移植,在 Sony Xperia上测试

[ORBSLAM2 on Mac OSX]

(https://github.com/meiroo/ORBSLAM2-OSX),Mac OSX版本

[ROS interface for ORBSLAM2]

(https://github.com/ethz-asl/orb_slam_2_ros),添加ROS接口

ORB-SLAM3 相关代码

ORB-SLAM3

2020年07月开源, 论文《ORB-SLAM3: An Accurate Open-Source Library for Visual, Visual-Inertial and Multi-Map SLAM》

ORB-SLAM3特点

  • 支持视觉、视觉加惯导、混合地图的SLAM系统,可以在单目,双目和RGB-D相机上利用针孔或者鱼眼模型运行。

  • 基于特征的紧耦合的VIO系统,仅依赖于最大后验估计(包括IMU初始化时)。因此不管是在大场景还是小场景,室内还是室外都能鲁棒实时的运行,精度上相比于上一版提升了2到5倍

  • 根据新的重定位模块来构建的多地图系统,可以让系统在特征不是很好的场景中长期运行。

  • 第一个能够在所有算法阶段重用所有先前信息的系统,可以在BA的时候使用相隔很远的共视关键帧。

[PAPER](https://arxiv.org/pdf/2007.11898.pdf)

[CODE](https://github.com/UZ-SLAMLab/ORB_SLAM3)

0db6ebc1ce9cb7124c061b6c23190e5f.gif

ORB_SLAM3-RGBD-Inertial

增加了RGBD-IMU的运行模式和ROS接口,增加了单目IMU和双目IMU的ROS接口,替换了词典为二进制格式,加载速度更快。依据ORB_SLAM3重写了RGBD-IMU的ROS接口,避免出现队列拥塞,提供了Kinect for Azure的参数文件

[CODE](https://github.com/xiefei2929/ORB_SLAM3-RGBD-Inertial)

本文仅做学术分享,如有侵权,请联系删文。

  • 2
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值