Ubuntu20.04配置ORB-SLAM3环境并运行

1.安装依赖

如果你之前已经成功安装过ORB-SLAM2的话,可以跳过这一步:

①安装Pangolin

(这个在之前的文章中有提到的,这里不再叙述,)
详见:https://blog.csdn.net/qq_49331639/article/details/115024110?spm=1001.2014.3001.5501

②安装OPENCV

(要求是3.2以上,我用的是3.4.1版本的,具体可以百度安装)详见:
https://blog.csdn.net/qq_49331639/article/details/121158125

③安装Eigen

sudo apt-get install libeigen3-dev

④安装Python

sudo apt install libpython2.7-dev

⑤DBow2和g2o

在对应的文件夹下执行

mkdir build
cd build
cmake ..
make -j4

即可,也可以在安装环境完成后执行./build.sh,不过这里大概率会出现问题,问题凡在最后部分解决。

2.源码下载

从GitHub下载源代码

git clone https://github.com/UZ-SLAMLab/ORB_SLAM3.git

安装:

cd ORB_SLAM3
chmod +x build.sh
./build.sh

3.遇到的问题

1.编译第三方库出现问题,安装Boost

在安装第三方库的时候大概路会出现问题,一般就是相关依赖安装不完全,你大概需要安装Boost,安装方法如下:
去官网下载:http://www.boost.org/users/download/
然后解压,在解压后的文件夹下

./bootstrap.sh

然后安装:

sudo ./b2 install

再去编译之前的文件一般就好啦

2.DBow安装问题,缺少依赖

sudo apt-get install libcanberra-gtk-module
sudo apt-get install libssl-dev

3.代码中的问题

在编译ORB-SLAM3时出现:

LocalMapping.cc:628:49: error: no match for ‘operator/’ (operand types are ‘cv::Matx<float, 3, 1>’ and ‘float’) x3D = x3D_h.get_minor<3,1>(0,0) / x3D_h(3);

只需要将对应的部分改为以下即可:


x3D = cv::Matx31f(x3D_h.get_minor<3,1>(0,0)(0) / x3D_h(3), x3D_h.get_minor<3,1>(0,0)(1) / x3D_h(3), x3D_h.get_minor<3,1>(0,0)(2) / x3D_h(3));

主要这样的地方有两处,注意修改呀

这是目前遇到的所有安装问题,欢迎大家补充!

这里以EuRoC数据集为例进行测试:
http://projects.asl.ethz.ch/datasets/doku.php?id=kmavvisualinertialdatasets
MH02数据集

./Examples/Stereo/stereo_euroc ./Vocabulary/ORBvoc.txt ./Examples/Stereo/EuRoC.yaml  (数据集路径) ./Examples/Stereo/EuRoC_TimeStamps/MH02.txt dataset-MH02_stereo

  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Ubuntu 20.04运行ORB-SLAM2进行稠密建图需要进行以下步骤: 1. 确保系统已安装必要的依赖库。ORB-SLAM2需要使用OpenCV、Pangolin和Eigen库,可以通过以下命令安装: ``` sudo apt-get install libopencv-dev libeigen3-dev libpangolin-dev ``` 2. 在ORB-SLAM2的GitHub页面上,克隆该项目的源代码。使用以下命令进行克隆: ``` git clone https://github.com/raulmur/ORB_SLAM2.git ``` 3. 进入ORB-SLAM2目录,并执行以下命令进行编译: ``` cd ORB_SLAM2 chmod +x build.sh ./build.sh ``` 4. 编译完成后,在ORB-SLAM2目录下会生成一个名为`Examples/Stereo/stereo_kitti`(用于KITTI数据集)的可执行文件。 5. 在稠密建图之前,需要准备一段用于SLAM的视频或者实时相机数据。ORB-SLAM2支持单目、双目和RGB-D输入。可以在`Examples`目录下找到相应的示例。 6. 运行稠密建图的示例程序,例如对于KITTI数据集可以使用以下命令: ``` ./Examples/Stereo/stereo_kitti Vocabulary/ORBvoc.txt Examples/Stereo/KITTI00-02.yaml dataset_path ``` 其中,`Vocabulary/ORBvoc.txt`是ORB特征提取的词典文件,`Examples/Stereo/KITTI00-02.yaml`是相机参数和SLAM配置文件,`dataset_path`为KITTI数据集的路径。 7. 执行完命令后,ORB-SLAM2会开始读取输入数据,并对其进行稠密建图。建图结果可以在控制台输出或保存到本地文件中。 注意:ORB-SLAM2还支持其他数据集和输入类型,具体使用方法可以参考其文档和示例。另外,为了保证正确运行,建议根据自己的需求和数据集进行相应的配置文件调整和参数设置。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值