zoukankan      html  css  js  c++  java
  • 手把手搭建UBUNTU版ORB—SLAM

    对于视觉SLAM来说,目前主流的开源框架使用较多的莫过于ORB-SLAM

    接下来就从零开始搭建开发环境,在UBUNTU上运行ORB-SLAM需要一些支持包:

    1、git

        sudo apt-get install git

    2、cmake

       sudo apt-get install cmake

    3、Pangolin

    sudo apt-get install libglew-dev libpython2.7-dev
    git clone https://github.com/stevenlovegrove/Pangolin.git
    cd Pangolin
    mkdir build
    cmake ..
    make
    sudo make install

    4、Opencv   2.4.11

    sudo apt-get install build-essential
    apt-get install cmake git libgtk2.0-dev pkg-config lib
    sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev 
    sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev 
    cd opencv-2.4.11
    mkdir build
    cd build
    sudo cmake .. -D CMAKE_BUILD_TYPE=Release -DCUDA_nppi_LIBRARY=true =DWITH_CUDA=OFF -DBUILD_TIFF=ON
    make 
    sudo make install

    5、Eigen3

      sudo apt-get install libeigen3-dev

    6、DBoW2

    7、g2o

    8、ORB_SLAM

       git clone https://github.com/raulmur/ORB_SLAM2.git ORB_SLAM2

       cd ORB_SLAM2

       chmod +x build.sh

       ./build.sh

    编译中遇到问题:

    1、error:linux/videodev.h : no such file or directory

    sudo apt-get install libv4l-dev

    sudo ln -s /usr/include/libv4l1-videodev.h /usr/include/linux/videodev.h

    2、/home/jim/beantechs/VSLAM/opencv-2.4.11/modules/contrib/src/rgbdodometry.cpp:65:47: fatal error: unsupported/Eigen/MatrixFunctions: No such file or directory
     #  include <unsupported/Eigen/MatrixFunctions>
    找到Eigen3的目录,搜索MatrixFunctions,拷贝整个unsupported目录到/home/jim/beantechs/VSLAM/opencv-2.4.11/modules/contrib/src/目录下

     

    或是将对应的文件夹复制到/usr/include/下,举例Eigen安装到了/usr/include/eigen3/,则执行:

     

    $ cd /usr/include/eigen3/
    $ sudo cp -r unsupported/ ..
    $ sudo cp -r Eigen/ ..

    3、ORB_SLAM2/src/LocalMapping.cc:108:20: error: ‘usleep’ was not declared in this scope
             usleep(3000)

    打开相应的代码,在头文件里面添加usleep 的头文件unistd.h

     4、运行脚本:

    ./Examples/Monocular/mono_euroc Vocabulary/ORBvoc.txt Examples/Monocular/EuRoC.yaml mav0/cam0/data Examples/Monocular/EuRoC_TimeStamps/MH01.txt

    附:orb-slam2中关键点提取与Opencv原生对比:左为orb-slam2,右:opencv

    ROS安装

    1、sudo apt-get install ros-melodic-desktop-full

    2、sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

    3、sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

    4、sudo apt install rospack-tools

    5、sudo rosdep init

    6、rosdep update

    7、echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc

    8、sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential

    9、roscore

    10、rosrun turtlesim turtle_teleop_key

  • 相关阅读:
    9、Spring Boot 2.x 集成 Thymeleaf
    【专题】Spring Boot 2.x 面试题
    8、Spring Boot 2.x 服务器部署
    7、Spring Boot 2.x 集成 Redis
    6、Spring Boot 2.x 集成 MyBatis
    5、Spring Boot 2.x 启动原理解析
    4、Spring Boot 2.x 自动配置原理
    3、Spring Boot 2.x 核心技术
    2、Spring Boot 2.x 快速入门
    centOS下安装JDK1.8.60,glassfish4.1.1以及MySQL
  • 原文地址:https://www.cnblogs.com/jimchen1218/p/12556182.html
Copyright © 2011-2022 走看看