ORB_SLAM3源码压缩包国内下载及编译

下载

     ORB_SLAM3是一个能够使用单目,立体,RGB-D相机,兼容针孔以及鱼眼相机模型进行视觉、视觉+惯导和多地图的SLAM方案。基于ORB-SLAM和ORBSLAM Visual-Inertial构建,支持抑制轨迹精度发散的短期,中期和长期的数据关联。ORB-SLAM3在次基础上,更进一步,支持历史地图的复用。从而,真正达到一个全局的slam系统:建立一个地图实现精确的定位。

    下载链接包含的内容为2020年7月中旬开源的官方源码,压缩包大小约为515M,解压后为802M,给翻墙不方便的朋友。

安装编译ORB-SLAM3
  • 运行 build.sh
        解压缩后,主文件夹下有4个例子.sh文件和2个安装.sh文件,有数据集版本和ROS版本(安装过程类似),可根据自己需要来是否安装。直接运行build.sh文件即可开始安装。
cd ORB_SLAM3
chmod +x build.sh
./build.sh
  • 可能卡死:
        由于xx.sh文件中的make -j 选项会执行并行编译,执行后可能会出现死机的问题,最好是把“make -j”改为“make”。
  • 可能错误1:
        在cmakelists.txt文件中报错,CMake Error at CMakeLists.txt:74 (FIND_PACKAGE):
    Could not find a configuration file for package “Eigen3” that is compatible
    with requested version “3.1.0”.
    The following configuration files were considered but not accepted:
    /usr/lib/cmake/eigen3/Eigen3Config.cmake, version: unknown

    找不到eigen 3.1.0 ,这是因为在文件的47行处为“find_package(Eigen3 3.1.0 REQUIRED) ”,提示为版本不同,将g2o文件夹以及orb_slam3文件夹中的CMakelist.txt文件中find_package(Eigen3 3.1.0 REQUIRED) 改为find_package(Eigen3 REQUIRED)即可。源码eigen3库的要求的最低版本为3.1.0,或也可改为你实际安装的版本。

  • 可能错误2(此处参考链接)
    CMakeFiles/ORB_SLAM3.dir/build.make:134: recipe for target ‘CMakeFiles/ORB_SLAM3.dir/src/LoopClosing.cc.o’ failed
    make[2]: *** [CMakeFiles/ORB_SLAM3.dir/src/LoopClosing.cc.o] Error 1
    在前面出现了非典型报错:
    LoopClosing.cc:1056:21: required from here /usr/include/c++/8/bits/stl_map.h:122:21: error: static assertion failed: std::map must have the same value_type as its allocator
    static_assert(is_same<typename _Alloc::value_type, value_type>::value,
    修改方法为将Loopclosing.h中的:
  typedef map<KeyFrame*,g2o::Sim3,std::less<KeyFrame*>,
    Eigen::aligned_allocator<std::pair<const KeyFrame*, g2o::Sim3> > > KeyFrameAndPose;

改为:

typedef map<KeyFrame*,g2o::Sim3,std::less<KeyFrame*>,
        Eigen::aligned_allocator<std::pair<KeyFrame *const, g2o::Sim3> > > KeyFrameAndPose;

编译完成后可以在example内每个文件夹(不含ROS)里面有生成对应的可执行文件。

运行
  • Stereo-Inertial 例子
    其中/slam/dataset/EuRoc/MH_01_easy 改为你自己的数据集路径。
./Examples/Stereo-Inertial/stereo_inertial_euroc ./Vocabulary/ORBvoc.txt ./Examples/Stereo-Inertial/EuRoC.yaml /slam/dataset/EuRoc/MH_01_easy ./Examples/Stereo/EuRoC_TimeStamps/MH01.txt

运行截图如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值