当前位置:网站首页>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就行了
别忘了重新编译,不然是不会生效的
输出结果

边栏推荐
- 远程办公之:如何成为时间管理大师?| 社区征文
- Telecommuting: how to become a master of time management| Community essay solicitation
- 3D打印和激光切割流程的初步了解
- go语言学习
- PHP curl function extension basic usage
- Zynq ultrascale+ RF data converter IP configuration - ADC
- Cause analysis and Countermeasures for FANUC robot srvo-050 collision detection alarm (available for personal test)
- How PostgreSQL creates partition tables
- C#/VB. Net word to text
- What to check for AIX system monthly maintenance (II)
猜你喜欢

Cs5213 HDMI to VGA with audio signal output scheme

Is the geTx status management in the flutter really so good to use?

Can the characteristics of different network structures be compared? Ant & meituan & NTU & Ali proposed a cross architecture self supervised video representation learning method CaCl, performance SOTA

网站如何在Google建立索引
![[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

How can wechat video numbers be broadcast live on a PC?
Detailed usage of exists in SQL statements

【HackTheBox】Fawn
Several cases of index invalidation caused by MySQL

对不起,你的USB走线可能搞错了!
随机推荐
Unknown character set index for field ‘255‘ received from server.
Nlog详解
企业网站的制作流程是什么?设计和制作一个网站需要多长时间?
评估和选择最佳学习模型的一些指标总结
Analysis on the advantages and disadvantages of the best 12 project management systems at home and abroad
Bilibili × Blue bridge cloud course | online programming practice competition is new!
Cs5213 HDMI to VGA with audio signal output scheme
什么是免疫组织化学实验? 免疫组织化学实验
Map集合的四种遍历
图论(树的直径)
国内外最好的12款项目管理系统优劣势分析
The principle of async and await
C# Winform 自定义进度条ProgressBar
ARouter 组件之间跳转需免混淆
Zynq ultrascale+ RF data converter IP configuration - ADC
云原生流水线工具汇总
Bilibili×蓝桥云课|线上编程实战赛全新上新!
go语言学习
Data interpretation! Ideal L9 sprints to "sell more than 10000 yuan a month" to grab share from BBA
FANUC机器人SRVO-050碰撞检测报警原因分析及处理对策(亲测可用)