ubuntu的安装建议采用双系统模式,不建议用虚拟机,会出现奇怪错误导致配置环境失败。
本教程使用 ubuntu18.04 ,双系统的安装请自行搜索教程安装。
本人的毕业设计做的是slam稠密三维点云重建相关题目,因为以前没接触过这方面,是从完全新手小白到“初出茅庐”,遇到各种瓶颈困难,踩过许多坑,特此重新记录slam配置的全过程,提供一个傻瓜式教学步骤,超级基础,以供后来的同学更好的研究而不是耗费精力在环境配置上,当然这也是你以后其他项目的必经之路。这次配置只提供原始的orbslam2配置方法,如果想添加稠密点云或精进建图或定位or~~~算法,那就需要你自己做出努力了哦。
推荐一本入门书籍:《视觉slam14讲从理论到实践》 高翔
(1)在桌面左下角进入菜单
(2)进入菜单后找到并打开 “软件与更新”
(3)打开后在“下载自”选项下拉找到“其他站点”,点击进入,选择阿里云镜像(或清华镜或华为云都可以,华为的似乎更快,我后来用的华为挺快的),而后点击选择服务器,完成设置。设置成功会发现下载自选项地址变为阿里云镜像地址。
(1)打开终端(快捷键Alt+Ctrl+T),输入如下指令后按下“回车”,出现如下界面。cmake与gcc用于编译程序,g++是c++的编译器,git用于从github,vim用来修改查看代码下载项目到电脑
sudo apt-get install cmake gcc g++ git vim
(2)出现继续执行选项,输入Y,回车,表示同意继续。
(3)完成安装成功出现如下界面
(4)输入如下指令安装Pangolin 可视化和用户界面及其依赖项(逐行输入一行一回车)
sudo apt-get install libglew-dev
sudo apt-get install libboost-dev libboost-thread-dev
sudo apt-get install libboost-filesystem-dev
sudo apt-get install libpython2.7-dev
sudo apt-get install build-essential
以前三个为例:
___________________________________________________________________________
从github下载pangolin,在终端逐行输入命令并回车
git clone https://github.com/stevenlovegrove/Pangolin.git
如果git clone的命令执行很慢,或者网络不好导致下载超时
解决方法:
1.将https换为git 现在可能不管用了(2022.4.10更新)
2.将网络换为手机热点5G或4G
3.两种方法结合
4.去github直接下载压缩包,解压
cd Pangolin
mkdir build
cd build
cmake ..
因为我已经创建了文件夹所以出现无法创建提示,读者按照正常顺序来
camke完成后输入make,出现进度%
make
sudo make install
(5)安装Eigen3——一个开源线性库,可进行矩阵运算
sudo apt-get install libeigen3-dev
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
!复制全了别丢东西!
sudo apt update
sudo apt install ros-melodic-desktop-full(时间略长,需等待一会)
sudo rosdep init
sudo apt install python-rosdep2
再次输入
sudo rosdep init
rosdep update
出现问题:一个或多个timeout超时(这个问题少则一会就能解决,多则好几天都解决不了,做好准备,希望你是天选之子,一次成功!)
解决办法
最新解决办法(ubuntu18.04参考也可以成功):ubuntu20.04+ros noetic
用到的rosdistro,git慢的话,这里有我下载好的在百度云
链接: 百度云 提取码: 3ghq
文中涉及vim打开的可以把vim换成gedit,修改后记得保存再关闭 ctrl+s快捷保存
try1.换手机热点或者特别快的网络成功的,这问题根源就是网络问题,要有耐心并无限次尝试,终会成功,别灰心,很磨练心智的。或去淘宝解决15元左右,没有试过效果。
try2.如下命令执行一遍
sudo apt-get update
sudo apt-get install python-rosdep
rosdep update
***try3.***广大网友解决方案:这里给了两个,还有很多,可以多看看其他博客,都试试
方法1
方法2
早上么一丢丢,似乎是网比较好。
终于在经过近百次尝试后出现了这感人一幕:出现箭头那句话表示成功了
安装rosinstall
sudo apt-get install python-rosinstall
加载环境设置文件
source /opt/ros/melodic/setup.bash
创建并初始化工作目录ROS使用一个名为catkin的ROS专用构建系统。为了使用它,用户需要创建并初始化catkin工作目录,如下所示。除非用户创建新的工作目录,否则此设置只需设置一次。
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
目前,只有src目录和CMakeLists.txt文件在catkin工作目录中,使用catkin_make命令来构建
cd ~/catkin_ws/
catkin_make
设置环境变量:
sudo apt install net-tools
gedit ~/.bashrc
在弹出的文本中最后末尾出添加下边两行代码:
source /opt/ros/melodic/setup.bash
source ~/catkin_ws/devel/setup.bash
完成后保存关闭,在终端输入:
source ~/.bashrc
至此ros安装完成,现在进行测试:
输入
roscore
可能出现问题:
查看是否安装包
cd /opt/ros/melodic/bin
ls
发现没有roscore,安装,在bin目录输入:
sudo apt-get install ros-melodic-desktop
输入ls重新查看,发现有了roscore,成功
解决后从打开三个终端(温馨提示:新建终端方法:在菜单栏—>文件—>新建窗口 或 右键“终端”图标新建终端)
分别输入并执行:(输入一个执行一个)
roscore
rosrun turtlesim turtlesim_node
rosrun turtlesim turtle_teleop_key
效果:弹出小海龟表示 安装成功,将鼠标点击第三个终端,然后按上下左右键,小乌龟会游动!
参考官网:小觅相机sdk
输入:
git clone https://github.com/slightech/MYNT-EYE-D-SDK.git
cd MYNT-EYE-D-SDK
make init
make init 此行命令执行完后拔插一次相机
拔插相机一次,后继续输入:
make all
sdk安装完成,进行测试:
在打开sdk文件夹,右键“在终端中打开”输入
./samples/_output/bin/get_stereo_image
出现图像即可。
鼠标点击任意图像窗口按q退出。
小觅相机自带了相适配的orbslam版本,直接从官网下载即可,后续的算法及实验可以基于此版本进一步研究。
1.安装glog,一个日志库,如果不安装,orbslam会提示错误
git clone https://github.com/google/glog
sudo apt-get install autoconf automake libtool
cd glog
./autogen.sh
错误:没有autogen.sh文件,打开文件夹发现的确没有,可能是版本问题
解决:
打开文件,删除刚下载的glog文件夹
从新输入:
git clone git://github.com/boboxxd/glog.git
打开glog文件夹发现有autogen.sh,成功
cd glog
./autogen.sh
./configure
make
sudo make install
2.下载orbslam2
git clone https://github.com/slightech/MYNT-EYE-ORB-SLAM2-Sample.git
3.添加ros的环境变量
gedit ~/.bashrc
在末尾出添加
export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:/home/你的用户名/MYNT-EYE-ORB-SLAM2-Sample/Examples/ROS
不知道路径的话,打开orbslam2 sample的文件夹在example中找到ros文件夹右键属性查看路径。
添加完成后保存关闭,输入:
source ~/.bashrc
4.编译orbslam2
cd MYNT-EYE-ORB-SLAM2-Sample
chmod +x build.sh
./build.sh
chmod +x build_ros.sh
./build_ros.sh
5.运行双目程序测试
cd 你小觅相机sdk的文件夹
make ros
source ./wrappers/ros/devel/setup.bash
roslaunch mynteye_wrapper_d orb_slam2.launch
打开另一个终端输入:
cd MYNT-EYE-ORB-SLAM2-Sample
rosrun ORB_SLAM2 mynteye_d_stereo ./Vocabulary/ORBvoc.txt ./config/mynteye_d_stereo.yaml true /mynteye/left/image_mono /mynteye/right/image_mono
运行成功:(在第二个orbslam2 sample终端按ctrl+c退出)
至此,orbslam2的环境就已经配置成功了,你可以在这个基础上进行一些研究和实验!