LSD-SLAM 编译过程(Ubuntu 14.04 + ROS Indigo)

本文详细介绍了如何在Ubuntu14.04+ROS Indigo环境下安装配置LSD-SLAM,并提供了使用USB摄像头及数据集两种运行模式的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境:Ubuntu 14.04 + ROS Indigo


LSD-SLAM 安装网址:https://github.com/tum-vision/lsd_slam

数据集:http://vision.in.tum.de/research/vslam/lsdslam?redirect=1

ROS Indigo 安装请参照:http://wiki.ros.org/cn/indigo/Installation/Ubuntu


前言:如果是初次安装Ubuntu并准备作为长期编程平台

            建议安装顺序为 OpenCV依赖包-》Nvidia驱动(可选)-》OpenCV-》ROS

            否则容易出现libqt4相关软件包的依赖问题


一. 安装并配置好 ROS Indigo(建议使用ROS官网推荐安装教程)


二. 安装uvc_camera (可选,适用于需要USB摄像头且没有安装过ROS摄像驱动的情况)

此节来自http://blog.youkuaiyun.com/sonictl/article/details/48053597,感谢sonictl

  $ sudo apt-get install ros-indigo-uvc-camera

或者使用catkin,工作空间构建请参考ROS官网相关教程

  $ cd ~/catkin_ws/src
  $ git clone https://github.com/ktossell/camera_umd
  $ cd ~/catkin_ws
  $ catkin_make
  $ source ~/catkin_ws/devel/setup.bash


测试是否安装成功:

开启三个终端:

第一个启动ROS服务:

$ roscore
第二个启动驱动:
$ rosrun uvc_camera uvc_camera_node device:=/dev/video0
第三个启动视频窗口:
$ rosrun image_view image_view image:=/image_raw
如果正常显示摄像头视频即成功


三. 安装并运行LSD-SLAM


1. 如果没有rosbuild并且打算使用rosbuild空间的话,执行下列代码

sudo apt-get install python-rosinstall
mkdir ~/rosbuild_ws
cd ~/rosbuild_ws
rosws init . /opt/ros/indigo
mkdir package_dir
rosws set ~/rosbuild_ws/package_dir -t .
echo "source ~/rosbuild_ws/setup.bash" >> ~/.bashrc
bash
cd package_dir

2. 安装依赖包

sudo apt-get install ros-indigo-libg2o ros-indigo-cv-bridge liblapack-dev libblas-dev freeglut3-dev libqglviewer-dev libsuitesparse-dev libx11-dev

3. 在你的ROS package path,git clone或者下载LSD-SLAM,LSD-SLAM 安装网址: https://github.com/tum-vision/lsd_slam
git clone https://github.com/tum-vision/lsd_slam.git lsd_slam


4. 如果你需要openFabMap去闭环检测的话(可选)

lsd_slam_core/CMakeLists.txt
中去掉下列四行注释即可
#add_subdirectory(${PROJECT_SOURCE_DIR}/thirdparty/openFabMap)
#include_directories(${PROJECT_SOURCE_DIR}/thirdparty/openFabMap/include)
#add_definitions("-DHAVE_FABMAP")
#set(FABMAP_LIB openFABMAP )

需要注意openFabMap需要OpenCv nonfree模块支持,OpenCV3.0以上已经不包含,作者推荐2.4.8版本

其中nonfree模块可以由以下方式安装

$ sudo add-apt-repository --yes ppa:xqms/opencv-nonfree
$ sudo apt-get update
$ sudo apt-get install libopencv-nonfree-dev

 
 
 

5. 编译LSD-SLAM

$ rosmake lsd_slam
 

6. 运行LSD-SLAM

开启四个终端窗口

第一个启动ROS服务:

$ roscore

第二个启动摄像服务(USB摄像模式):

$ rosrun uvc_camera uvc_camera_node device:=/dev/video0
第三个启动LSD-viewer查看点云:

$ rosrun lsd_slam_viewer viewer
第四个启动LSD-core:

(1)数据集模式

$ rosrun lsd_slam_core dataset_slam _files:=<files> _hz:=<hz> _calib:=<calibration_file>
_files填数据集png包的路径,_hz表示帧率,填0代表默认值,_calib填标定文件地址

如:

$ rosrun lsd_slam_core dataset_slam _files:=<your path>/LSD_room/images _hz:=0 _calib:=<your path>/LSD_room/cameraCalibration.cfg

(2)USB摄像模式

$ rosrun lsd_slam_core live_slam /image:=<yourstreamtopic> _calib:=<calibration_file>
_calib同上,/image选择视频流

如:

$ rosrun lsd_slam_core live_slam /image:=image_raw _calib:=<your path>/LSD_room/cameraCalibration.cfg

运行成功图如下:





评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值