如何在ROS上使用lsd_slam?

时间:2015-06-26 15:04:23

标签: ubuntu integration ros slam-algorithm

我使用的是ubuntu 12.04。我从维基页面安装ROS。然后我安装lsd_slam代码表单here。在lsd_slam文件夹下有一个自述文件。这些文件夹的视图如下:

enter image description here

自述文件说明

  
      
  1. 快速入门/最小化设置首先,根据您的Ubuntu / ROS版本安装2.1或2.2之后的LSD-SLAM。你不需要   现在是openFabMap。

         

    下载[会议室示例   序列](http://vmcremers8.informatik.tu-   muenchen.de/lsd/LSD_room.bag.zip)并提取它。

         

    启动lsd_slam viewer:

         

    rosrun lsd_slam_viewer viewer

  2.         

    启动lsd_slam主ros节点:

      rosrun lsd_slam_core live_slam image:=/image_raw
    
         

    camera_info:= / camera_info

         

    播放序列:

      rosbag play ~/LSD_room.bag
    
         

    您应该会看到一个显示当前关键帧的窗口   颜色编码深度(来自live_slam),以及一个显示3D地图的窗口   (来自观众)。如果由于某种原因初始化失败(即,   在~5s之后,深度图仍然看起来是错误的),聚焦深度图和   点击' r'重新初始化。

首先,我运行roscore。然后,

~/fuerte_workspace$ rosrun lsd_slam_viewer viewer
~/fuerte_workspace$ rosrun lsd_slam_core live_slam /image:=/image_raw _calib:=/~/fuerte_workspace/lsd_slam/lsd_slam_core/calib/pinhole_example_calib.cfg 

第一个命令打开一个查看器窗口:

enter image description here

最后一个命令的结果在这里:

found ATAN camera model, building rectifier.
Input resolution: 752 480
In: 0.527334 0.827306 0.473568 0.499436 0.000000
NO RECTIFICATION
Output resolution: 752 480
Prepped Warp matrices
Started  constraint search thread!
Started mapping thread!
Started optimization thread 

终端等待这一步。我不确定/image:=/image_raw是否属实。我没有任何image_raw文件或文件夹。这种用法是真的吗?如果是,为什么我看不到观众的任何变化?

1 个答案:

答案 0 :(得分:1)

/image_raw不表示文件或文件夹,而是表示ROS topic的名称。我想你必须将相机的图像发布到这个主题(这是使用另一个依赖于你的相机的ROS节点完成的。)

一旦你有一个节点从相机发布图像,你必须找出这个节点正在发布的主题(取决于节点,它可能被命名为/image_raw,但类似{{1}也是可能的)。您可以通过启动摄像机节点然后运行/camera/rgb/image_raw来找到正确的名称。

关于您的命令的一句话:rostopic listimage:=/image_raw之间存在差异。第一个将主题名称映射到 relative 名称/image:=/image_raw(即它实际上类似于image),第二个名称是绝对名称/live_slam/image。如果自述文件使用相对变体,您也应该坚持使用它。