栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

避坑:利用zed2运行ORB-SLAM3(保姆级教程)(一)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

避坑:利用zed2运行ORB-SLAM3(保姆级教程)(一)

电脑:Dell G3 3590,空白状态
目标:让我的电脑可以实时的利用zed2运行ORB-SLAM3

第一步:安装ubuntu18.04系统
如果已经安装过了ubuntu系统可以跳过。如果没有ubuntu启动盘,需要先去搜索一下ubuntu启动盘如何制作。
好了,开始:
首先搜索自己的电脑怎么进入BIOS模式,我的事dell的所以出现开机界面,我按F2就可以了,选择自己的u盘,把别的选项(电脑的硬盘等)都给取消勾选,点击Apply,然后Exit
这时候系统会进入ubuntu安装模式

  1. 选择中文简体
  2. 键盘选择,英文美国
  3. 不连接网络,这一步很重要,如果连接网络容易出错
  4. 点击正常安装
  5. 选择清空磁盘重新安装ubuntu1804
    下面的步骤好像是没了,等待就可以啦

第二步:安装ORB-SLAM3依赖

  1. 安装g++ sudo apt install g++
  2. 安装cmake sudo apt install cmake
  3. 安装Pangolin
    两种下载方式:
    第一种方式:git clone
$ cd ~/your_fav_code_directory(要安装的目录)
$ git clone --recursive https://github.com/stevenlovegrove/Pangolin.git
$ cd Pangolin 

第二种方式:
打开 https://github.com/stevenlovegrove/Pangolin
下载整个源码库,然后unzip
下面正式安装Pangolin

$ cd Pangolin 
$ mkdir build
$ cd build
安装pangolin依赖库
$ sudo apt update
$ sudo apt upgrade
$ sudo apt install libglew-dev libboost-dev libboost-thread-dev libboost-filesystem-dev libeigen3-dev -y 
然后开始安装Pangolin
$ cmake ..
$ make -j4/make
$ make install/sudo make install

如果出现:Pangolin在cmake时报“Could NOT find GLEW”错误
参考这一个方法:https://blog.csdn.net/studyvcmfc/article/details/123999521

  1. 安装opencv

官方说实验在opencv3.2和opencv4.4上测试的,我这里安装的opencv4.5.3,也没有问题
这里我推荐默认安装方式,如果不默认的话,假如说安装到指定的目录下了,这样在以后做一个工程的时候就需要在CMakeLists.txt中修改opencv路径
参考这一篇文章吧https://blog.csdn.net/qq_45831587/article/details/122621000
或者参考官方的指南:https://docs.opencv.org/4.5.3/d2/de6/tutorial_py_setup_in_ubuntu.html

  1. 安装Eigen3
$ sudo apt-get install libeigen3-dev
  1. 安装DBoW2
    打开:https://github.com/UZ-SLAMLab/ORB_SLAM3
    下载整个ORB-SLAM3文件,或者
$ git clone https://github.com/UZ-SLAMLab/ORB_SLAM3.git ORB_SLAM3
解压以后
$ cd ORB-SLAM3-master/Thirdparty
$ cd DBoW2
$ mkdir build
$ cd build
$ cmake ..
$ make -j4/make -j(自己的内核)

期间可能会报错 fatal error: boost/serialization/serialization.hpp
参考这一篇博客吧
https://blog.csdn.net/qq_38204686/article/details/114639824,里面会有具体的解决方案
原因就是缺少相关的依赖库,遇到这种问题不要慌
没有什么是一行指令解决不了的
如果有那就再来一行

  1. 安装g2o
$ cd ORB-SLAM3-master/Thirdparty/g2o
$ mkdir build
$ cd build
$ cmake ..
$ make -j4/make -j(自己的内核)
  1. 编译ORB-SLAM3
$ cd ORB-SLAM3-master
$ mkdir build
$ cd build
$ cmake ..
$ make -j8

期间可能会出错fatal error: openssl/md5.h: No such file or directory
原因是缺少依赖库
执行下一行命令

$ sudo apt install libssl-dev

如果出现c++: internal compiler error: Killed (program cc1plus)

进入root
$ sudo su
然后再make一下
  1. 安装python依赖
$ sudo apt install libpython2.7-dev
  1. 最后运行 build.sh文件

如果没有报错,就证明ORB-SLAM3可以运行了,这时候就可以测试一下自己的数据集

第三步:安装ROS-melodic
没啥好说的
参考这一篇博客吧https://blog.csdn.net/qq_41450811/article/details/99079041

如果遇到错误cannot open roscore
执行命令

$ sudo apt install python-rosdep2

如果出现 bash: roscore: command not found,就再执行

$ sudo apt-get install ros-melodic-desktop-full

第四步:安装ZED-SDK和配套的东东

要运行zed2,首先看一下系统配置要求https://github.com/stereolabs/zed-ros-wrapper

1.下载SDK并安装https://www.stereolabs.com/developers/release/
下载以后

$ chmod +x 自己的文件

然后运行

./自己的文件

安装完成以后会提示需要安装SDK吗,这里选择n
然后会提示用不用安装cuda10.2
我们的原则就是只要是recommend就选yes

cuda很大,需要安装很久,提示一下,我自己装了梯子,所以国外的软件我都可以安装

  1. 安装好了以后,开始安装zed-ros-wapper
    参考这里:https://github.com/stereolabs/zed-ros-wrapper
$ cd ~/catkin_ws/src
$ git clone --recursive https://github.com/stereolabs/zed-ros-wrapper.git
$ cd ../
$ rosdep install --from-paths src --ignore-src -r -y
$ catkin_make -DCMAKE_BUILD_TYPE=Release
$ source ./devel/setup.bash

然后插上zed2相机,运行,会发现 success
这时候转动自己的相机,时间戳会有变化

$ roslaunch zed_wrapper zed2.launch
  1. 这时候是不能可视化的,所以我们需要安装另一个包,参考这里
    https://github.com/stereolabs/zed-ros-examples
$ cd ~/catkin_ws/src
$ git clone https://github.com/stereolabs/zed-ros-examples.git
$ cd ../
$ rosdep install --from-paths src --ignore-src -r -y
$ catkin_make -DCMAKE_BUILD_TYPE=Release
$ source ./devel/setup.bash

然后运行

$ roslaunch zed_display_rviz display_zed2.launch

这时候会自动打开rviz,会有清楚的可视化效果

第五步:ORB-SLAM3与ZED2结合,下次更新
有不明白的小伙伴可以问我

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/831045.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号