0
$\begingroup$

Rosanswers logo

Hi, I am running Ubuntu 14.04. I've successfully installed ROS Indigo. There is this open source program called ORB-SLAM that I am trying to run but I getting an error.

Instructions I am following:

  • In Terminal 1: roscore
  • In Terminal 2: roslaunch ExampleGroovyHydro.launch
  • In Terminal 3: rosbag play --pause Example/ Example.bag

Wait for Terminal 2 to finish loading the vocabulary file, then press “space” in terminal 3.

The error that I am getting:

ERROR: cannot launch node of type [ORB_SLAM/ORB_SLAM]: ORB_SLAM
ROS path [0]=/opt/ros/indigo/share/ros
ROS path [1]=/home/ria/catkin_ws/src
ROS path [2]=/opt/ros/indigo/share
ROS path [3]=/opt/ros/indigo/stacks

(Note: I am guessing this is coming from my ROS_PACKAGE_PATH)

What's inside the launch file:

<launch>
   <node pkg="image_view" type="image_view" name="image_view" respawn="false" output="log">
    <remap from="/image" to="/ORB_SLAM/Frame" />
    <param name="autosize" value="true"/>
   </node>
   <node pkg="rviz" type="rviz" name="rviz" args="-d $/home/ria/ORB_SLAM/Data/rviz.rviz" output="log">
   </node>
   <node pkg="ORB_SLAM" type="ORB_SLAM" name="ORB_SLAM"  args="Data/ORBvoc.yml Data/Settings.yaml" cwd="node" output="screen">
   </node>
</launch>

I am fairly new to ROS so I have a few questions:

  1. I found a ROS link to install a catkin workspace. I've installed a workspace in the folder catkin_ws. This is a folder in my parent directory. It's not in my project folder. Am I supposed to have the workspace in my project folder? (Note: I think I might have installed a workspace from the source instead of using the pre-existing one provided by ROS. That's because I didn't know how to use/run/install the pre-existing workspace. I would like to know how to do this.)

  2. My catkin_ws folder doesn't have a package.xml and CMakeLists.txt in its folder. I found a CMakeLists.txt but that's in its src folder. I found both these files inside 'Beginner's tutorial' folder. Where are these supposed to be? Did I install the workspace incorrectly?


Originally posted by madeye on ROS Answers with karma: 36 on 2015-07-15

Post score: 0

$\endgroup$

2 Answers 2

0
$\begingroup$

Rosanswers logo

The error you are getting is referring to this line:

 <node pkg="ORB_SLAM" type="ORB_SLAM" name="ORB_SLAM"  args="Data/ORBvoc.yml Data/Settings.yaml" cwd="node" output="screen">

This means that roslaunch cannot find the executable file ORB_SLAM anywhere in the ORB_SLAM package. Now, it's not clear to me why that's the case, but a common issue is that users do not source the setup.bash file after building which allows tools like roslaunch to find things like this. So presumably you built the workspace containing ORB_SLAM and that would have generated this setup.bash file somewhere. But without more information on how you built or installed this package you want to use, it's hard to help you further.


Originally posted by William with karma: 17335 on 2015-07-15

This answer was NOT ACCEPTED on the original site

Post score: 1

$\endgroup$
0
$\begingroup$

Rosanswers logo

I wasn't using a workspace properly. I was able to run the ORB_SLAM package by following these instructions by jwcrawley on github: https://github.com/raulmur/ORB_SLAM/issues/39

jwcrawley commented 13 days ago Greetings @riaverma96 ,

That was an annoying error I kept getting, but I think I've solved it now. I'll start from the beginning, which seems to have worked on 2 separate machines:

(Be aware, I only recommend the 1st step for completely clean install)

  1. Use Synaptic and completely remove ALL ros packages

  2. Follow steps on http://www.ros.org/install/ for Desktop-Full Install. I've used Jade.

  3. Go into your ~/.bashrc and remove all instances of ROS (should be a source and an export line)

  4. At the bottom of the ~/.bashrc, you want to put the following: source /opt/ros/jade/setup.bash export ROS_PACKAGE_PATH=~/catkin_ws:$ROS_PACKAGE_PATH

  5. Get ORB_SLAM into your ~/catkin_ws directory va git. After this is done, you'll have ~/catkin_ws/ORB_SLAM/{stuff}

  6. Edit ORB_SLAM/manifest.xml and remove the whole line that mentions opencv2

  7. Follow the compile directions appropriately for 3rd party and then main.

  8. Add a node to the ExampleGroovyHydro.launch at the top (beneath the )

        <node name="usb_cam" 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="mjpeg" />
                <param name="camera_frame_id" value="usb_cam" />
                <param name="io_method" value="mmap"/>
        </node>
    

9: Run roscore in a terminal.

10: Now use roslaunch to launch that file. It should spin up rviz and a webcam viewer. Should be up and running.


Originally posted by madeye with karma: 36 on 2015-07-29

This answer was ACCEPTED on the original site

Post score: 2


Original comments

Comment by Kathir on 2017-02-03:
Hi madeye, If i have to implement this ORB_SLAM in ARDRONE, which are the parameter do I have to change ??? there is launch file for ARDrone like ardrone.launch. so which launch file should I run to get 3D visualization of the environment ? should i use both launch files ??

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.