当前位置:网站首页>ORB_SLAM3环境搭建及demo演示
ORB_SLAM3环境搭建及demo演示
2022-06-23 22:11:00 【gxt_kt】
ORB_SLAM3环境搭建及demo演示
github:https://github.com/UZ-SLAMLab/ORB_SLAM3
本文教程部分参考:
https://www.ybliu.com/2020/07/ORB-SLAM3-demo.html
https://www.bilibili.com/video/BV1nR4y1W7mt?spm_id_from=333.880.my_history.page.click&vd_source=01da08e4487b8e450cf16063029887c6
安装依赖
编译前需要安装相关依赖,相关可以查看README,安装依赖都是
mkdir build
cd build
cmake ..
make -j8
sudo make install
注意README中有一个没有提到,也是需要安装的,是
PangolinPangolin github: https://github.com/stevenlovegrove/Pangolin
可选安装依赖:https://github.com/IntelRealSense/librealsense
编译
下载源码后直接执行 ./build.bash
./build.bash文件中也就是一些编译执行指令
**注意:**由于编译内容众多,中间很可能会报错,这样建议手动执行build.bash一遍,然后默认的make核心比较少,可以自行改多一点
下载数据集:EuRoc
网址:https://projects.asl.ethz.ch/datasets/doku.php?id=kmavvisualinertialdatasets
下载网址:https://projects.asl.ethz.ch/datasets/doku.php?id=kmavvisualinertialdatasets#downloads
注意下载ASL Dataset Format

可以直接选图中的链接下载,大约1.5G
下载后解压出来,改个名字,改成MH01,路径可以参考下面的图片

测试数据集
./Examples/Monocular/mono_euroc ./Vocabulary/ORBvoc.txt ./Examples/Monocular/EuRoC.yaml "$pathDatasetEuroc"/MH01 ./Examples/Monocular/EuRoC_TimeStamps/MH01.txt dataset-MH01_mono
在ORB_SLAM3根目录下执行上面代码,注意其中"$pathDatasetEuroc"/MH01是之前下载的数据集路径
如果是我上面那样的路径,代码就是
./Examples/Monocular/mono_euroc ./Vocabulary/ORBvoc.txt ./Examples/Monocular/EuRoC.yaml /home/kt/data/Dataset/EuRoc/MH01 ./Examples/Monocular/EuRoC_TimeStamps/MH01.txt dataset-MH01_mono
正常的输出:
num_seq = 1
file name: dataset-MH01_mono
Loading images for sequence 0...LOADED!
-------
ORB-SLAM3 Copyright (C) 2017-2020 Carlos Campos, Richard Elvira, Juan J. Gómez, José M.M. Montiel and Juan D. Tardós, University of Zaragoza.
ORB-SLAM2 Copyright (C) 2014-2016 Raúl Mur-Artal, José M.M. Montiel and Juan D. Tardós, University of Zaragoza.
This program comes with ABSOLUTELY NO WARRANTY;
This is free software, and you are welcome to redistribute it
under certain conditions. See LICENSE.txt.
Input sensor was set to: Monocular
Loading settings from ./Examples/Monocular/EuRoC.yaml
Camera1.k3 optional parameter does not exist...
-Loaded camera 1
-Loaded image info
-Loaded ORB settings
Viewer.imageViewScale optional parameter does not exist...
-Loaded viewer settings
System.LoadAtlasFromFile optional parameter does not exist...
System.SaveAtlasToFile optional parameter does not exist...
-Loaded Atlas settings
System.thFarPoints optional parameter does not exist...
-Loaded misc parameters
----------------------------------
SLAM settings:
-Camera 1 parameters (Pinhole): [ 458.65399169921875 457.29598999023438 367.21499633789062 248.375 ]
-Camera 1 distortion parameters: [ -0.28340810537338257 0.073959067463874817 0.00019359000725671649 1.7618711353861727e-05 ]
-Original image size: [ 752 , 480 ]
-Current image size: [ 600 , 350 ]
-Camera 1 parameters after resize: [ 365.94735717773438 333.44500732421875 292.99069213867188 181.10678100585938 ]
-Sequence FPS: 20
-Features per image: 1000
-ORB scale factor: 1.2000000476837158
-ORB number of scales: 8
-Initial FAST threshold: 20
-Min FAST threshold: 7
Loading ORB Vocabulary. This could take a while...
Vocabulary loaded!
Initialization of Atlas from scratch
Creation of new map with id: 0
Creation of new map with last KF id: 0
Seq. Name:
There are 1 cameras in the atlas
Camera 0 is pinhole
First KF:0; Map init KF:0
New Map created with 271 points
注意:如果没有报错,也没有图像输出,需要修改下源码:
找到mono_euroc.cc文件,修改第83行:
ORB_SLAM3::System SLAM(argv[1],argv[2],ORB_SLAM3::System::MONOCULAR, false);讲false改成true就行了
别忘了重新编译,不然是不会生效的
输出结果

边栏推荐
- MySQL导致索引失效的几种情况
- 不同网络结构的特征也能进行对比学习?蚂蚁&美团&南大&阿里提出跨架构自监督视频表示学习方法CACL,性能SOTA!...
- Isolement des transactions MySQL
- STM32-------外部中断
- kubernetes之常用核心资源对象
- Ambire Guide: the arbitrum odyssey begins! Week 1 - Cross Chain Bridge
- The Sandbox 与 BAYZ 达成合作,共同带动巴西的元宇宙发展
- [JS reverse hundred examples] the first question of the anti crawling practice platform for netizens: JS confusion encryption and anti hook operation
- Detailed process of deploying redis cluster and micro service project in docker
- What to check for AIX system monthly maintenance (II)
猜你喜欢
云原生流水线工具汇总

Generate post order traversal according to pre order traversal and mid order traversal

生鲜前置仓的面子和里子

Bilibili×蓝桥云课|线上编程实战赛全新上新!

Face and lining of fresh food pre storage

HDLBits->Circuits->Arithmetic Circuitd->3-bit binary adder

Cs5213 HDMI to VGA with audio signal output scheme

【HackTheBox】Fawn
![[Xilinx ax7103 microbalze Learning Notes 6] MicroBlaze custom IP core packaging experiment](/img/26/c4e6be2e3b17c7925108e95943c558.png)
[Xilinx ax7103 microbalze Learning Notes 6] MicroBlaze custom IP core packaging experiment
Androidkotlin comprehensive and detailed class usage grammar learning guide
随机推荐
How can wechat video numbers be broadcast live on a PC?
Map集合的四种遍历
[design] 1359- how umi3 implements plug-in architecture
FANUC机器人SRVO-050碰撞检测报警原因分析及处理对策(亲测可用)
Kotlin 协程 异步 异步流
Telecommuting: how to become a master of time management| Community essay solicitation
WebService客户端请求失败 can not create a secure xmlinputfactory
PHP timestamp
[Xilinx ax7103 microbalze Learning Notes 6] MicroBlaze custom IP core packaging experiment
Detailed usage of exists in SQL statements
The 12 SQL optimization schemes summarized by professional "brick moving" old drivers are very practical!
微信视频号如何用 PC 电脑做直播?
CS5213 HDMI转VGA带音频信号输出方案
MySQL事務隔離
短视频挺进在线音乐腹地
开发协同,高效管理 | 社区征文
How PostgreSQL creates partition tables
迪赛智慧数——柱状图(基本柱状图):2022年父亲节过节的方式
Generate post order traversal according to pre order traversal and mid order traversal
AIX系统月维护查什么(一)