实验室电脑环境ubuntu14.04和ROS indigo已经装好。

1. 构建工作空间【非常重要的一步】

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_makesource devel/setup.bashecho "source devel/setup.bash" >> ~/.bashrcsource ~/.bashrc

  将source ~/catkin_ws/devel/setup.bash加入到~/.bashrc中去

2. 安装Pangolin,用于可视化和用户接口

git clone https://github.com/stevenlovegrove/Pangolin.git
cd Pangolin
mkdir build
cd build
cmake -DCPP11_NO_BOOST=1 ..
make -j

3. 安装BLAS和LAPACK

sudo apt-get install libblas-dev
sudo apt-get install liblapack-dev

4. 构建ORB_SLAM2库

git clone https://github.com/raulmur/ORB_SLAM2.git ORB_SLAM2
cd ORB_SLAM2
chmod +x build.sh
./build.sh

5. 在~/.bashrc添加路径

export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:/home/lzp/catkin_mono_orb/src/ORB_SLAM2/Examples/ROS

6. 在ORB_SLAM2文件夹编译

mkdir build
cd build
cmake .. -DROS_BUILD_TYPE=Release
make -j

7. 实现

roscore
roslaunch freenect_launch freenect-registered-xyzrgb.launch
rosrun ORB_SLAM2 RGBD /home/lzp/catkin_mono_orb/src/ORB_SLAM2/Vocabulary/ORBvoc.txt /home/lzp/catkin_mono_orb/src/ORB_SLAM2/Examples/RGB-D/TUM1.yaml

  注:Kinect驱动的安装

sudo apt-get install ros-indigo-openni-* ros-indigo-openni2-* \ros-indigo-freenect-*rospack profile


普通单目摄像头实现ORBSLAM2

1. 使用usb_cam作为单目相机驱动

  从https://github.com/bosch-ros-pkg/usb_cam下载usb_cam,放到工作空间catkin_ws/src下,catkin_make编译

cd /home/lzp/catkin_mono_orb/src/usb_camcd launchgedit usb_cam-test.launch

将以下launch文件内容复制到launch文件中:

<launch><node name="camera" pkg="usb_cam" type="usb_cam_node" output="screen" ><param name="video_device" value="/dev/video0" /><param name="image_width" value="640" /><param name="image_height" value="480" /><param name="pixel_format" value="yuyv" /><param name="camera_frame_id" value="camera" /><param name="io_method" value="mmap"/><remap from="/usb_cam/image_raw" to="/camera/image_raw" /></node><node name="image_view" pkg="image_view" type="image_view" respawn="false" output="screen"><remap from="image" to="/camera/image_raw"/><param name="autosize" value="true" /></node>
</launch>

<remap from="/usb_cam/image_raw" to="/camera/image_raw" />
<remap from="image" to="/camera/image_raw"/>对两句进行了修改

2. 中间过程与RGBD过程相同

3. 实现

roscoreroslaunch usb_cam usb_cam-test.launchrosrun ORB_SLAM2 Mono /home/lzp/catkin_mono_orb/src/ORB_SLAM2/Vocabulary/ORBvoc.txt /home/lzp/catkin_mono_orb/src/ORB_SLAM2/Examples/Monocular/TUM1.yaml

  OK

参考:

1. http://webdiis.unizar.es/~raulmur/orbslam/

2 https://github.com/raulmur/ORB_SLAM2

转载于:https://www.cnblogs.com/lizhongping/p/5531551.html

ORB-SLAM2实现(kinect V1/ROS)相关推荐

  1. Ubuntu 16.04~ORB SLAM2~Kinect v1

    额 Ubuntu16.04 ORB-SLAM2实现(kinect V1/ROS) ----------------------------------------------------------- ...

  2. orbslam2可视化_ORB-SLAM2实现(kinect V1/ROS)

    实验室电脑环境ubuntu14.04和ROS indigo已经装好. 1. 构建工作空间[非常重要的一步] mkdir -p ~/catkin_ws/src cd~/catkin_ws/catkin_ ...

  3. Kinect V1读取图像数据(For Windows)

    Kinect V1读取图像数据(For Windows) 这篇博客 Kinect V1介绍 数据读取的基本流程 运行代码和注释 结尾 这篇博客  刚好有一台现成的Kinect V1相机,所以就拿过来学 ...

  4. Kinect v1在windows上的使用教程

    Kinect v1 (Microsoft Kinect for Windows v1 )彩色和深度图像对的采集步骤 一.在ubuntu下尝试 1. 在虚拟机VWware Workstation 12. ...

  5. orbslam2可视化_[Ubuntu] ORB SLAM2 编译调试

    ORB SLAM2 是 2015年比较受到关注的一篇文章,它的主要思想是借助 ORB 描述子改进了 Sparse SLAM 的性能,使得其在稳定性和速度上都达到了比较好的程度.从创新性上来讲,它的主要 ...

  6. Ubuntu下使用单目相机运行ORB SLAM2

    环境:Ubuntu16.04+ROS Kinetic+USB单目摄像头 虽然ORB SLAM2的官方说明中表示没有ROS也可以编译运行,但要实时的跑ORB SLAM2还是需要ROS平台的,所以之前没有 ...

  7. Kinect v1和Kinect v2的彻底比较

    本连载主要是比较Kinect for Windows的现行版(v1)和次世代型的开发者预览版(v2),以C++开发者为背景介绍进化的硬件和软件.本文主要是对传感的配置和运行条件进行彻底的比较. 本连载 ...

  8. 相机标定-opencv单应性矩阵实现平面坐标标定(kinect v1)

    opencv单应性矩阵实现平面坐标标定 说明 一.使用单应性矩阵的原因 二.标定原理 三.findHomography 函数与 getPerspectiveTransform函数的区别 1.两者联系 ...

  9. ORB SLAM2源码解读(三):Frame类

    文章目录 前言 构造函数 双目相机 RGBD相机 单目相机 ExtractORB:提取特征点 ComputeBoW:计算词袋数据 SetPose:设置相机外参 isInFrustum:判断一个MapP ...

最新文章

  1. 自动驾驶玩漂移,一顿操作猛如虎!!! 斯坦福最新研究
  2. python爬取天气_python3爬取各类天气信息
  3. oracle适配器接口,Oracle
  4. Nosql数据库之mongodb c++使用实例
  5. java第一章Java语言概述和入门程序
  6. mac与windows服务器 访问和共享
  7. mysql mysql_row 整行数据_有关mysql中ROW_COUNT()的小例子
  8. selinux= 为 disabled_「丁香园」五年没考过执医,就不要出来「为祸人间」了
  9. [转]GCC 命令行详解 -L 指定库的路径 -l 指定需连接的库名
  10. iptables禁止国外ip访问-脚本
  11. 在ArcGIS中ArcCatalog(Arcmap)快速选中多个要素
  12. java如何对一个表达式开根号_java实现开根号的运算
  13. Ubuntu20.04 添加打印机
  14. golang使用gomonkey和monkey来mock方法或者函数时报panic: permission denied [recovered]
  15. 前端技术之:Prisma Demo服务部署过程记录
  16. 2010爆牙笑话第一季!【转】
  17. uniapp 苹果安全区配置
  18. 云服务器租赁用途有哪些?
  19. uint64 和字符串相互转换
  20. FPGA基础知识----第三章 第2节 综合和仿真

热门文章

  1. Spring Boot+Gradle+ MyBatisPlus3.x搭建企业级的后台分离框架
  2. 如何模拟超过 5 万的并发用户
  3. 下一站,向冠军冲击!
  4. 数据行业非完全入门指南!
  5. 机器学习中特征选择怎么做?这篇文章告诉你
  6. 腾讯视频招GNN方向实习生啦~
  7. 【2021】清华大学《高级机器学习》课件和专家特邀报告(附pdf下载)
  8. 【2020】清华大学《高级机器学习》课件和专家特邀报告(附pdf下载)
  9. MATLAB 只是冰山一角!一个海外资深程序员聊被卡脖子……
  10. Adam 那么棒,为什么还对 SGD 念念不忘?一个框架看懂深度学习优化算法