rgbdslam_v2运行踩坑实录,并用realsense-d435i跑通

准备工作

rbgdslam_v2 github地址
按照github ,实验环境Ubuntu 16.04, ROS kinetic

如果你电脑安装PCL版本是1.7,那么请直接跳到错误1,如果你也不知道有没有,或者版本多少,那么就跟着我的博客走下去吧

git clone https://github.com/felixendres/rgbdslam_v2.git
cd rgbdslam_v2
source install.sh

接着会提示

This script puts all code into ‘/home/damon/Code’. Edit this script to change the location.
Press enter to continue, Ctrl-C to cancel

按着步骤走编译出来的东西会被放在~/Code/rgbdslam_catkin_ws
这时候

source ~/Code/rgbdslam_catkin_ws/devel/setup.bash 

到这里,rgbdslam_v2已经安装成功

运行,跑数据

首先得下载数据集,tum数据集地址在这里可能会下载比较慢,可以找找镜像或者百度云.

错误1

直接运行 roslaunch rgbdslam rgbdslam.launch 会报错


ROS_MASTER_URI=http://localhost:11311

process[rgbdslam-1]: started with pid [22155]
================================================================================REQUIRED process [rgbdslam-1] has died!
process has died [pid 22155, exit code -11, cmd /home/damon/Code/rgbdslam_catkin_ws/devel/lib/rgbdslam/rgbdslam __name:=rgbdslam __log:=/home/damon/.ros/log/adfdfee8-22d1-11ea-9524-02428408a590/rgbdslam-1.log].
log file: /home/damon/.ros/log/adfdfee8-22d1-11ea-9524-02428408a590/rgbdslam-1*.log
Initiating shutdown!
================================================================================
[rgbdslam-1] killing on exit
shutting down processing monitor...
... shutting down processing monitor complete

查资料提示PCL与g2o不兼容导致,下载pcl1.8版本替换系统的1.7
解决办法如下:

cd 到某个路径,存放pcl
wget https://github.com/PointCloudLibrary/pcl/archive/pcl-1.8.0.tar.gz
tar -zxvf pcl-1.8.0.tar.gz 
cd pcl-pcl-1.8.0/
vim CMakeLists.txt 
在146行加插入  SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
mkdir build&&cd build
cmake ..
make VERBOSE=1 -j8
sudo make install
# 2000 years later

接下来做以下操作:

  1. 修改rgbdslam_v2的 :修改第 79 行:find_package(PCL 1.7 REQUIRED COMPONENTS common io) 为 find_package(PCL 1.8 REQUIRED COMPONENTS common io)
  2. 修改 /opt/ros/kinetic/share/pcl_ros/cmake/pcl_rosConfig.cmake文件,将所有/usr/lib/x86_64-linux/libpcl开头的内容改成/usr/local/lib/libpcl
    修改完成之后重新source install.sh 编译一下

再次运行roslaunch rgbdslam rgbdslam.launch
会出现以下界面(这就说明你已经安装成功了):
rgbdslam_v2运行踩坑实录,并用realsense-d435i跑通_第1张图片
接下来只需要运行数据集了

你可能感兴趣的:(SLAM)