ORB_SLAM2安装
进入工程目录,我们发现有两个sh文件,一个是build.sh另一个是build_ros.sh。
这两个都可以进行ORB_SLAM2的安装,我们先来看一下build.sh
echo "Configuring and building Thirdparty/DBoW2 ..." cd Thirdparty/DBoW2
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j cd ../../g2o echo "Configuring and building Thirdparty/g2o ..." mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j cd ../../../ echo "Uncompress vocabulary ..." cd Vocabulary
tar -xf ORBvoc.txt.tar.gz
cd .. echo "Configuring and building ORB_SLAM2 ..." mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j
我们通过查看orb_slam的代码框架可以知道,有2个lib库需要我们编译。一个是DBoW2,另一个是g2o,按照上面的指示可以分别将lib库编译完成。
解压ORBvoc.txt.tar.gz,然后在工程目录下建立build,然后编译,便可以成功。
但是第一次编译,由于没有安装一些依赖,可能会出现以下问题:
//若第一次编译,可能得到以下错误
CMake Error at CMakeLists.txt: (find_package):
By not providing "FindPangolin.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "Pangolin",
but CMake did not find one. Could not find a package configuration file provided by "Pangolin" with any
of the following names: PangolinConfig.cmake
pangolin-config.cmake Add the installation prefix of "Pangolin" to CMAKE_PREFIX_PATH or set
"Pangolin_DIR" to a directory containing one of the above files. If
"Pangolin" provides a separate development package or SDK, be sure it has
been installed.
-- Configuring incomplete, errors occurred!
See also "/home/leonsun/backup/orb_slam2/ORB_SLAM2/build/CMakeFiles/CMakeOutput.log".
//没有安装Pangolin
解决方法如下:
//到home目录
mkdir Software
cd Software
//下载Pangolin并且编译
git https://github.com/stevenlovegrove/Pangolin.git
//右键提取到此处解压Pangolin文件
cd Pangolin
mkdir build
cd build
cmake ..
但是得到以下错误
-- The C compiler identification is GNU 5.4.
-- The CXX compiler identification is GNU 5.4.
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
Build type not set (defaults to release)
-DCMAKE_BUILD_TYPE=Debug for debug
CMake Error at CMakeModules/FindGLEW.cmake: (MESSAGE):
Could not find GLEW
Call Stack (most recent call first):
src/CMakeLists.txt: (find_package)
没有安装GLEW,利用apt-get进行安装
sudo apt-get install libglew-dev
重新编译Pangolin,成功。然后按照上部分提供的官网教程进行编译
接着我们来看一下build_ros.sh
echo "Building ROS nodes" cd Examples/ROS/ORB_SLAM2
mkdir build
cd build
cmake .. -DROS_BUILD_TYPE=Release
make -j
官方给的教程就是运行这个文件进行编译。也可以进行成功编译。

ORB_SLAM2安装的更多相关文章
- 软件篇-02-基于ZED 2和ORB_SLAM2的SLAM实践
时隔两周,我又回来了. 本期内容如题,ZED 2的SDK功能还是挺多的,包括轨迹跟踪,实时建图等等.虽然由于是商业产品,我看不到他们的源代码,但是根据使用情况来看,ZED 2内部是采用了IMU和光 ...
- ORB_SLAM2之Pangolin的安装与问题处理
前言 本篇博客中,我们主要介绍了在安装ORB_SLAM2所需的第三方库Pangolin的过程中遇到的一些问题及解决方法. 1.Pangolin是什么? Pangolin是一个用于OpenGL显示/交互 ...
- 编译 ORB_SLAM2 (一)
之前有记录关于ORB_SLAM的第一个版本的编译,每次就是要编译程序,都会遇到很多问题,并不是所谓的按照教程来就一定能编译成功,所以这一次编译也遇到了很多问题.百度的时候也看到网上有很多相似的问题,但 ...
- ORB-SLAM2的安装和运行流程
一.ORB-SLAM2安装 1.在https://github.com/raulmur/ORB_SLAM2上git clone到当前文件夹内,若想下载到指定文件夹内,就需要cd进入指定文件内,然后再g ...
- ORB-SLAM2(3) ROS下实时跑ORB_SLAM2
Step1 : 运行内核 roscore Step2 : 启动相机 cd catkin_ws/src/usb_cam/launch #进入usb_cam驱动的安装目录 roslaunch my_cam ...
- SLAM学习笔记 - ORB_SLAM2源码运行及分析
参考资料: DBow2的理解 单目跑TUM数据集的运行和函数调用过程 跑数据集不需要ros和相机标定,进入ORB_SLAM目录,执行以下命令: ./Examples/Monocluar/mono_tu ...
- Ubuntu16.04下编译安装及运行单目ORBSLAM2
官网有源代码和配置教程,地址是 https://github.com/raulmur/ORB_SLAM2 1 安装必要工具 首先,有两个工具是需要提前安装的.即cmake和Git. sudo apt- ...
- ubuntu16.04下用笔记本摄像头和ROS编译运行ORB_SLAM2的单目AR例程
要编译ORB_SLAM2的ROS例程首先需要安装ROS,以及在ROS下安装usb_cam驱动并调用,最后搭建ORB_SLAM2. 1.ROS的安装 我的电脑安装的是ubuntu16.04系统,所以我安 ...
- ORB-SLAM2 初体验 —— 配置安装
转载请注明出处,谢谢 原创作者:MingruiYU 原创链接:https://www.cnblogs.com/MingruiYu/p/12286752.html ORB-SLAM2作为目前应用最广泛的 ...
随机推荐
- sprigcloud Eureka Server环境搭建
1.搭建springcloud的Erueka组件,现在搭建这些套件已经变的很方便了,进入https://start.spring.io/页面,如下图: 2.选择好Eureka Server,点击Gen ...
- Angular2+URL中的 # 引发的思考
1.先分析 # 的作用 1.1. # 的涵义 #代表网页中的位置.其右面的字符就是该位置的标识符.比如,http://www.example.com/index.html#print就代表网页inde ...
- Kali Linux搭建Go语言环境
准备: (1)Kali Linux系统(此实验为VMware环境) (2)Go语言安装包 具体过程: (1)到官网下载Go语言安装包,如图示操作(官网可能需要梯子,没有的可以从国内相关网站下载) ( ...
- 笨办法41学会说面向对象【pyinstaller安装使用
urllib库安装 先切换到pip所在目录 D:\Program Files\JetBrains\PyCharm 2017.3.3\untitled>cd /d c:\ c:\>cd c: ...
- 活代码LINQ——04
一.主模块代码: 'Fig.4.16:GradeBookTest.vb 'Create and manipulate a GradeBook object;illustrate validation ...
- nopcommerce 4.1 core 插件 相关1
nop中 插件机制是比较值得学习的: Nop 插件学习: 1. 项目里面的生成必须是采用 直接编辑项目文件,参考nop原本的项目文件 动态加载插件的方法-mvc3 参考: using System.L ...
- 基于vue项目的组件中导入mui框架初始化滑动等效果时需移除严格模式的问题
基于vue项目的组件中导入mui框架初始化滑动等效果时,控制台报错:Uncaught TypeError: 'caller', 'callee', and 'arguments' properties ...
- MyBatis最原始的实现curd的操作
关于jdbc的缺点: 1.数据库链接创建释放频繁造成系统资源浪费从而影响系统性能.如果使用数据库连接池可以解决此问题. 2.sql语句在代码中硬编码,不利于维护,sql变动需要改变java代码 3.使 ...
- vim替换tab到4空格
~/.vimrc 中设置 # 设置tab宽度 set ts= #也可以用 set tabstop= #空格替换tab set expandtab 如果对于已保存的文件 :%retab! !用于修改所有 ...
- wpf binging (六)多绑定
场景 比如我用四个textbox 需要每个控件都输入正确的数据以后 下方的 button才变成可用状态 需要把四个textbox的值转换成 true或者false 效果