Johannes,

A few things. First, you'll need to make sure that you convert the PoinCloud2 published by the Kinect driver to a PointCloud since the costmap doesn't have support for the PointCloud2 type yet. You'll also probably want to downsample the cloud from the kinect using something like the VoxelGrid PCL filter because the costmap can't handle the number of points coming in from the Kinect. Also, you're pushing your parameters into the wrong namespace for the costmap_node, it should be "costmap" instead of "global_costmap" if you want your configuration to be read successfully.

Hope this helps,

Eitan

On Fri, Dec 10, 2010 at 10:09 AM, Johannes Mayr <joh.mayr@gmail.com> wrote:
Hi everybody,

I try to run your navigation Stack with a Microsoft Kinect.
Exactly I just want to create a 2D costmap (Node: costmap_2d) which I
want to use to generate a route through space for my biped robot.

First I start the kinect_camera node to bring up the driver. This is
done by:
       roslaunch kinect_camera kinect_with_tf.launch
Now 3 nodes are started:
       /kinect_driver --> publishes the PointCloude
       /kinect_rgb_to_kinect_depth --> publishes transformation between the 2
cameras of the kinect (/kinect_rgb --> /kinect_depth)
       /world_to_kinect_rgb --> publishes transformation from the world to the
camera (/world --> /kinect_rgb) (I know this transfomation is a static
one and has to be adopted to the camera position if the camera moves)

Then I created a costmap_params.yaml file to config the costmap_2d node
(I think here is my fault)

global_costmap:
        obstacle_range: 2.5
        raytrace_range: 3.0
        #footprint: [[x0, y0], [x1, y1], ... [xn, yn]]
        robot_radius: 1
        inflation_radius: 0.55
        observation_sources: point_cloud_sensor
        point_cloud_sensor: {sensor_frame: /kinect_rgb, data_type:
       PointCloud, topic: /kinect/rgb/points, marking: true, clearing:
       true}
        global_frame: /world
        robot_base_frame: /kinect_rgb
        update_frequency: 5.0
        static_map: false
        rolling_window: true
        width: 6.0
        height: 6.0
        resolution: 0.05

This config file is used in the launchfile for the global costmap which
looks like this:

<launch>
        <!-- Publishes the voxel grid to rviz for display -->
        <node pkg="costmap_2d" type="costmap_2d_markers"
       name="voxel_visualizer">
          <remap from="voxel_grid" to="costmap/voxel_grid"/>
        </node>

        <!-- Run the costmap node -->
        <node name="costmap_node" pkg="costmap_2d"
       type="costmap_2d_node" >
          <rosparam file="$(find
       costmap_2d)/launch/global_costmap_params.yaml" command="load" />
        </node>
       </launch>

If I do so the hole thing is not working. I don't know exactly why, but
maybe someone can give me a hint.
Hopefully somebody can reproduce my troubles even without a Kinect.


Best Regards

Johannes


_______________________________________________
ros-users mailing list
ros-users@code.ros.org
https://code.ros.org/mailman/listinfo/ros-users