原文:http://blog.csdn.net/xueyinhualuo/article/details/48490939

环境: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.csdn.net/sonictl/article/details/48053597,感谢sonictl

[plain] view plaincopy
  1. $ sudo apt-get install ros-indigo-uvc-camera

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

[plain] view plaincopy
  1. $ cd ~/catkin_ws/src
  2. $ git clone https://github.com/ktossell/camera_umd
  3. $ cd ~/catkin_ws
  4. $ catkin_make
  5. $ source ~/catkin_ws/devel/setup.bash

测试是否安装成功:

开启三个终端:

第一个启动ROS服务:

[plain] view plaincopy
  1. $ roscore

第二个启动驱动:

[plain] view plaincopy
  1. $ rosrun uvc_camera uvc_camera_node device:=/dev/video0

第三个启动视频窗口:

[plain] view plaincopy
  1. $ rosrun image_view image_view image:=/image_raw

如果正常显示摄像头视频即成功

三. 安装并运行LSD-SLAM

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

[plain] view plaincopy
  1. sudo apt-get install python-rosinstall
  2. mkdir ~/rosbuild_ws
  3. cd ~/rosbuild_ws
  4. rosws init . /opt/ros/indigo
  5. mkdir package_dir
  6. rosws set ~/rosbuild_ws/package_dir -t .
  7. echo "source ~/rosbuild_ws/setup.bash" >> ~/.bashrc
  8. bash
  9. cd package_dir

2. 安装依赖包

[plain] view plaincopy
  1. 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

[plain] view plaincopy
  1. git clone https://github.com/tum-vision/lsd_slam.git lsd_slam

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

[plain] view plaincopy
  1. lsd_slam_core/CMakeLists.txt

中去掉下列四行注释即可

[plain] view plaincopy
  1. #add_subdirectory(${PROJECT_SOURCE_DIR}/thirdparty/openFabMap)
  2. #include_directories(${PROJECT_SOURCE_DIR}/thirdparty/openFabMap/include)
  3. #add_definitions("-DHAVE_FABMAP")
  4. #set(FABMAP_LIB openFABMAP )

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

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

[plain] view plaincopy
  1. $ sudo add-apt-repository --yes ppa:xqms/opencv-nonfree
  2. $ sudo apt-get update
  3. $ sudo apt-get install libopencv-nonfree-dev

5. 编译LSD-SLAM

[plain] view plaincopy
  1. $ rosmake lsd_slam

6. 运行LSD-SLAM

开启四个终端窗口

第一个启动ROS服务:

[plain] view plaincopy
  1. $ roscore

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

[plain] view plaincopy
  1. $ rosrun uvc_camera uvc_camera_node device:=/dev/video0

第三个启动LSD-viewer查看点云:

[plain] view plaincopy
  1. $ rosrun lsd_slam_viewer viewer

第四个启动LSD-core:

(1)数据集模式

[plain] view plaincopy
  1. $ rosrun lsd_slam_core dataset_slam _files:=<files> _hz:=<hz> _calib:=<calibration_file>

_files填数据集png包的路径,_hz表示帧率,填0代表默认值,_calib填标定文件地址

如:

[plain] view plaincopy
  1. $ rosrun lsd_slam_core dataset_slam _files:=<your path>/LSD_room/images _hz:=0 _calib:=<your path>/LSD_room/cameraCalibration.cfg

(2)USB摄像模式

[plain] view plaincopy
  1. $ rosrun lsd_slam_core live_slam /image:=<yourstreamtopic> _calib:=<calibration_file>

_calib同上,/image选择视频流

如:

[plain] view plaincopy
  1. $ rosrun lsd_slam_core live_slam /image:=image_raw _calib:=<your path>/LSD_room/cameraCalibration.cfg

运行成功图如下:

LSD-SLAM 编译过程(Ubuntu 14.04 + ROS Indigo相关推荐

  1. Ubuntu 14.04+Ros indigo+ORB_SLAM2 的平台搭建

    目前,在视觉SLAM所有算法中,ORB_SLAM2是一个极其优秀值得深究的算法,其包含了单目,双目和深度摄像头三种接口.本本记叙了本次Ubuntu 14.04+Ros indigo+ORB_SLAM2 ...

  2. ubuntu14.04 nginx php编译安装,Ubuntu 14.04 编译安装 Nginx

    在Ubuntu 14.04下编译安装 Nginx过程笔记. 下载源码包 nginx 地址: http://nginx.org/en/download.html 编译前先安装两个包: 直接编译安装会碰到 ...

  3. linux下编译openjdk7,Ubuntu 14.04.3 64位环境下OpenJDK7编译

    系统环境:Ubuntu 14.04.3 -amd64 in VMWare 1.安装openjdk7依赖 sudo apt-get build-dep openjdk-7 sudo apt-get in ...

  4. Baxter实战——Ubuntu 14.4+ros indigo 安装Baxter Simulator与 Moveit

    在前边已经对Baxter sdk完成了安装,今天对剩下的两个进行安装.这三个是gazebo进入baxter仿真环境必不可少的. 一 Install Baxter Simulator 1.安装依赖 $ ...

  5. KinectV2+Ubuntu 14.04+Ros 配置

    1.libfreenect2提供了对kinect2.0的支持,所以,先git代码,很简单(复制到终端执行): git clone https://github.com/OpenKinect/libfr ...

  6. Ubuntu 14.04下编译WebRTC

    阿里云  >  教程中心   >  python教程  >  Ubuntu 14.04下编译WebRTC Ubuntu 14.04下编译WebRTC 发布时间:2018-02-28 ...

  7. ubuntu 14.04调试ORB-SLAM2

    1  具备的条件: (1)ubuntu 14.04 (2)ROS indigo(可选) 2  安装依赖 (1)Pangolin:https://github.com/stevenlovegrove/P ...

  8. Ubuntu 14.04 跑通 lsd slam 全过程

    作为一个菜鸡的我,前前后后一个多星期,换了三个系统,总算是把它跑通了. 记录一下我踩的坑.让大家少走弯路. 写在前面的话:网上的都是骗人的,我几乎翻遍了网上的教程,每一个错误我都能背下来了,始终编译不 ...

  9. 大学本科《机器人程序设计课程》配套系统镜像使用说明( Ubuntu 14.04.5 + ROS indigo )

    //  原文 http://blog.exbot.net/archives/3001 wiki 教程; http://wiki.ros.org/cn/ROS/Tutorials 大学本科<机器人 ...

最新文章

  1. Android 透明度百分比对应的 十六进制
  2. Android应用开发:网络编程-2
  3. thinkphp路由的作用
  4. Hive _偏门常用查询函数(一)附带实例(空字段赋值、 CASE WHEN、行转列)
  5. jQuery的Cookie使用
  6. CacheManager - 用 C# 编写的 .NET 的开源缓存抽象层
  7. java mysql jsp分页代码_JAVA/JSP学习系列之六(MySQL翻页例子)
  8. 嵌入式中常见的存储器总结(二)SRAM VS DRAM
  9. Gnome 3.x 安装悬浮菜单栏
  10. 基于堆叠卷积长短期神经网络【CNNLSTM】模型的时序数据预测分析
  11. 游侠小秘书基本智能框架完成!!!
  12. log4j日志设置error级别以上
  13. c语言最小二乘求解超定方程,超定方程用最小二乘法求解
  14. OpenCV - 10 开发一个视频切割成图片的软件
  15. python画笔颜色_Python画图 plt.plot()函数细节颜色字符,风格字符,和标记字符
  16. M1 Mac 安装iPad、iPhone App
  17. 网络摄像头IPC国标GB28181协议国标安防视频流媒体平台EasyGBS视频流不上线排查步骤
  18. 极简效率指南:数据分析师如何高效工作和提升自己
  19. 【Java Web基础】(五)实现新增下拉列表—由用户输入内容(Html+JS)
  20. 痛与快乐有一个代码是什么_痛苦与快乐

热门文章

  1. Design Pattern - Visitor(C#)
  2. 二数和,三数和,四数和的优化总结
  3. java ug二次开发_使用Java进行UG二次开发:简单的例子(上) | 学步园
  4. ubuntu 终端批量复制文件_《卡死你3000》批量文件复制命令详解
  5. json pandas 内存溢出_python-将多个JSON记录读取到Pandas数据框中
  6. java spring 服务器关闭_通过springboot怎么停止服务器??
  7. 皮一皮:怎么才能让员工有干劲...
  8. 皮一皮:藏头诗有时候也不能太藏...
  9. Angular 11 正式发布,放弃对IE 9、10的支持!
  10. 音效摸鱼还不够爽?试试IDE里打几盘魂斗罗?