配置流程

  • 1 依赖安装
    • 1.1 Pangolin
    • 1.2 OpenCV
    • 1.3 Eigen3
  • 2 ORB_SLAM2安装
  • 3 运行效果
  • 4 问题
  • 5 编译build_ros
    • 5-1 编译问题
    • 5-2 运行

1 依赖安装

安装过程参考本文4.1 — 4.3

1.1 Pangolin

1.2 OpenCV

1.3 Eigen3

2 ORB_SLAM2安装

下载地址

cd ORB_SLAM2
chmod a+x build.sh
./build.sh

3 运行效果

  • 处理 TUM 数据集

下载 associate.py 放入数据集的根目录

python associate.py rgb.txt depth.txt > associated.txt
  • 在 orb_slam2 文件夹下创建 data 文件夹,放入处理好的 TUM 数据集
  • 在 orb_slam2 根目录下运行
./Examples/RGB-D/rgbd_tum Vocabulary/ORBvoc.txt Examples/RGB-D/TUM3.yaml data/rgbd_dataset_freiburg3_walking_xyz data/rgbd_dataset_freiburg3_walking_xyz/associated.txt

4 问题

  • 如果编译过程中出现error: usleep() 没有声明的情况,在 include 文件夹下对应的 System.h 文件中加入以下声明
#include<unistd.h>
  • 删除orb_slam下的build文件夹,直接打开终端
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j8

5 编译build_ros

5-1 编译问题

  1. [rosbuild] rospack found package “ORB_SLAM2” at “”, but the current
    directory is “/home/angelo/ORB_SLAM2/Examples/ROS/ORB_SLAM2”. You
    should double-check your ROS_PACKAGE_PATH to ensure that packages
    are found in the correct precedence order.
sudo ln -s ~/orb_slam2/Examples/ROS/ORB_SLAM2 /opt/ros/kinetic/share/ORB_SLAM2
  1. /home/zxy/orb_slam2/Examples/ROS/ORB_SLAM2/…/…/…/Thirdparty/g2o/g2o/types/…/core/jacobian_workspace.h:30:22:
    fatal error: Eigen/Core: 没有那个文件或目录
***在cmakelists中加入:
include_directories("/usr/include/eigen3")
  1. undefined reference to symbol ‘_ZN5boost6system15system_categoryEv’

在cmakelists中加入: -lboost_system

set(LIBS
${OpenCV_LIBS}
${EIGEN3_LIBS}
${Pangolin_LIBRARIES}
${PROJECT_SOURCE_DIR}/../../../Thirdparty/DBoW2/lib/libDBoW2.so
${PROJECT_SOURCE_DIR}/../../../Thirdparty/g2o/lib/libg2o.so
${PROJECT_SOURCE_DIR}/../../../lib/libORB_SLAM2.so
-lboost_system
)

5-2 运行

rosrun ORB_SLAM2 RGBD Vocabulary/ORBvoc.txt Examples/ROS/ORB_SLAM2/Asus.yaml
  1. Failed to open settings file at: Examples/ROS/ORB_SLAM2/Asus.yaml

执行文件同时连接了opencv2 与 opencv3
在保留之前安装的OPENCV2的情况下在电脑上再安装一个OPENCV3

cd opencv-3.4.5sudo apt-get install cmake
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-dev
sudo apt-get install qt5-defaultmkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -DWITH_CUDA=OFF ..
make -j8
sudo make install

安装OPENCV3后,修改ORB-SLAM2/CMakeLists.txt,将自己安装opencv3库的路径设置到OpenCV_DIR中

set(OpenCV_DIR /usr/local/opencv3/share/OpenCV)

原文

ubuntu16.04下ORB_SLAM2的配置相关推荐

  1. 【ROS】学习笔记一 ubuntu16.04下vs code配置ros环境并编写helloworld程序

    [ROS]ubuntu16.04下vs code配置ros环境并编写helloworld程序 一.vs code下载 1.相关配置要求: (1)系统为ubuntu16.04 (2)已安装好kineti ...

  2. Ubuntu16.04下配置ORB-SLAM2与运行单目实例

    Ubuntu16.04下配置ORB-SLAM2与运行单目实例 一.安装相关工具 二.安装Pangolin 三.安装opencv 四.安装Eigen 五.安装ORB_SLAM2 六.安装usb_cam ...

  3. vscode linux新建c语言,Ubuntu16.04下配置VScode的C/C++开发环境

    1. Vscode安装 Visual studio code是微软发布的一个运行于 Mac OS X.Windows和 Linux 之上的,针对于编写现代 Web 和云应用的跨平台源代码编辑器.第一种 ...

  4. linux arm移远重启4g,如何在Ubuntu16.04下配置移远RM500工业模组(5G工业模组)

    如何在Ubuntu16.04下配置移远RM500工业模组(5G工业模组) 如何在Ubuntu16.04下配置移远RM500工业模组(5G工业模组) 最近由于工作原因入手了移远的5G(RM500H工业模 ...

  5. ubuntu16.04下basler工业相机的配置与使用

    本帖旨在記錄一下在Ubuntu16.04下配置basler工業相機pylon sdk,以及結合opencv進行CMake配置使用的一些事項. 1.Prerequisite ubuntu16.04 + ...

  6. Ubuntu16.04里django的配置和安装

    Ubuntu16.04里django的配置和安装 关于在Ubuntu16.04里django的配置和安装: sudo apt-get install python-pip sudo apt-get i ...

  7. Ubuntu16.04下禁用scp、sftp和winscp

    在上一篇博文<Ubuntu16.04 搭建FTP服务器,设置用户权限为只许上传.禁止下载和删除>中,我讲述了Ubuntu16.04下配置FTP,并且设定用户权限为只能上传数据,禁止下载和删 ...

  8. Ubuntu16.04下部署 nginx+uwsgi+django1.9.7(虚拟环境pyenv+virtualenv)

    由于用的新版本系统,和旧的稍有差别,在网上搜了很多相关资料,搞了三天终于搞好在Ubuntu16.04下的部署,接下来就详细写写步骤以及其中遇到的问题.前提是安装有虚拟环境pyenv+virtualen ...

  9. wepe 装linux ubuntu,Ubuntu16.04下安装Wechat的实现方法

    Ubuntu16.04下安装Wechat 很久没写博客了,前两天电脑因为teamviewer不了,原因显示是libqt5gui5版本过低,研究了一波更新,卸载了libqt5gui5,和它的依赖qtba ...

最新文章

  1. 可视化与遗留系统的微服务改造
  2. Eclipse 下新建MAVEN项目
  3. SAP Hybris Enterprise Commerce的一些有用链接 - 保证持续更新
  4. 关于计算机的作文初一,关于初一作文汇编五篇
  5. MySQL Binlog Mixed模式记录成Row格式
  6. 2022.管理类软件工具
  7. python中使用什么获取两个集合的补集_python中求两个List的交集、并集和差集
  8. nlp基础—5.SkipGram, CBOW, Glove, MF,Gaussian Embedding, 语言模型以及各类Smooting技术
  9. VSAN 和 VDP 的互操作
  10. config.guess: unable to guess system type、config.sub: missing argument
  11. 江苏南通20多万个QQ账号被盗,涉案金额200余万
  12. Revit-BIM模型轻量化 帧率控制
  13. QuickCam Gev 2.0 开发
  14. 经典共识PoW的原理及实现
  15. TIA博途中如何使用符号方式按位,字节,字访问非结构数据类型
  16. uml图六种箭头的含义(泛化、实现、依赖、关联、聚合、组合)
  17. Hololens单击、双击
  18. 几种常见的通信系统抗衰落技术
  19. linux版本市场占有率,2020年5月OS市场占有率报告:Ubuntu和Linux分别占有1.89%和0.97%...
  20. idea强大功能_强大的打印功能

热门文章

  1. 在线视频云会议服务商多维度比较推荐
  2. mysql获取经纬度_mysql-百度地图从MySql中获取经纬度
  3. 重磅!2023 IEEE Fellow名单出炉:唐立新、宗成庆、朱军、姬水旺、刘威等入选
  4. Excel如何冻结窗口
  5. 汉字转全拼,简拼组件
  6. java反编译工具gd gson,浅谈Android中static修饰符,及Gson转String实例
  7. java——记录一次条形码、二维码、订单自动生成的制作
  8. 提供linux下的新世纪五笔的码表和字根口诀,用于ibus。
  9. Graph Convolutional Neural Network - Spatial Convolution 图卷积神经网络 — 空域卷积详解
  10. 高等数学(总结9-多重积分)