电脑:Dell G3 3590,空白状态
目标:让我的电脑可以实时的利用zed2运行ORB-SLAM3
第一步:安装ubuntu18.04系统
如果已经安装过了ubuntu系统可以跳过。如果没有ubuntu启动盘,需要先去搜索一下ubuntu启动盘如何制作。
好了,开始:
首先搜索自己的电脑怎么进入BIOS模式,我的事dell的所以出现开机界面,我按F2就可以了,选择自己的u盘,把别的选项(电脑的硬盘等)都给取消勾选,点击Apply,然后Exit
这时候系统会进入ubuntu安装模式
- 选择中文简体
- 键盘选择,英文美国
- 不连接网络,这一步很重要,如果连接网络容易出错
- 点击正常安装
- 选择清空磁盘重新安装ubuntu1804
下面的步骤好像是没了,等待就可以啦
第二步:安装ORB-SLAM3依赖
- 安装g++ sudo apt install g++
- 安装cmake sudo apt install cmake
- 安装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
- 安装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
- 安装Eigen3
$ sudo apt-get install libeigen3-dev
- 安装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,里面会有具体的解决方案
原因就是缺少相关的依赖库,遇到这种问题不要慌
没有什么是一行指令解决不了的
如果有那就再来一行
- 安装g2o
$ cd ORB-SLAM3-master/Thirdparty/g2o $ mkdir build $ cd build $ cmake .. $ make -j4/make -j(自己的内核)
- 编译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一下
- 安装python依赖
$ sudo apt install libpython2.7-dev
- 最后运行 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很大,需要安装很久,提示一下,我自己装了梯子,所以国外的软件我都可以安装
- 安装好了以后,开始安装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
- 这时候是不能可视化的,所以我们需要安装另一个包,参考这里
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结合,下次更新
有不明白的小伙伴可以问我



