ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

I had the lsd_slam project in the wrong location. I created a workspace like:

~/workspace
    src
        lsd_slam_test
            lsd_slam

when it should have been like:

~/workspace
    src
        lsd_slam
        lsd_slam_test

After that, the next problem I ran into was that lsd_slam can't handle color video, so I had to convert it to mono using an image_proc node:

<!-- This will read a camera and show a streaming feed in a display window. -->
<launch>
    <!-- Activate the color webcam. -->
    <node name="usb_cam" pkg="usb_cam" type="usb_cam_node" output="screen" >
        <param name="video_device" value="/dev/video1" />
        <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>
    <!-- Convert the color webcam's output to mono. -->
    <node name="to_mono_node1" pkg="image_proc" type="image_proc" ns="usb_cam" />
    <!-- Display the mono stream. -->
    <node name="image_view" pkg="image_view" type="image_view" respawn="false" output="screen">
        <remap from="image" to="/usb_cam/image_mono" />
        <param name="autosize" value="true" />
    </node>
</launch>

After that, lsd_slam ran correctly. Unfortunately, the performance and accuracy of the resulting depth map was unusably poor.