robot_self_filter Documentation

robot_self_filter: robot_self_filter

The robot self filter is a package that allows you to filter out robot body parts from sensor information using the known positions and orientations of these parts.

robot_self_filter can either remove points from a pointcloud that are on the robot (parts the robot can see of itself) or it can annotate the points by adding a channel with a name of choice that will have values of 1.0 (point is outside the robot), -1.0 (point is on the robot) or 0.0 (point is shadowed by robot)

The set of robot links the robot can see, and the padding and scaling for those links can be set using the collision YAML files described in planning_environment. The functionality provided by this node is built around the geometric_shapes package.

rosapi

List of nodes:


self_filter

self_filter listents to a pointcloud on the 'cloud_in' topic and broadcasts a pointcloud on 'cloud_out' topic. There are two modes of using this node: it can either remove points that are on the robot from the input cloud and only broadcast the rest, or it can annotate the points with another channel with a name of choice. The second mode is activated by specifying the '~annotate' ROS parameter.

If the "~sensor_frame" parameter is specified, shadow points off seen robot links are removed. These shadow points are in fact (almost) behind the links, so they should not be seen. To decide that a point is a shadow, a ray is cast from every point in the pointcloud to the sensor frame. If the ray hits a robot link on its way, the point is a shadow.

Usage

$ self_filter [standard ROS params]
Example
$ self_filter cloud_in:=tilt_cloud cloud_out:=tilt_cloud_filtered

ROS topics

Subscribes to:

Publishes to:

ROS parameters

Reads the following parameters from the parameter server

A robot description is assumed to be loaded as well, and the robot_description parameter should resolve to that description..

test_filter

test_filter randomly generates points around & inside the robot and uses the filter to only keep the ones inside or the ones outside. The kept set is then sent as a visualization messages to rviz. This provides a simple means to test the filter.

Usage

$ test_filter [standard ROS params]
Example
$ test_filter

ROS parameters

A robot description is assumed to be loaded as well, and the robot_description parameter should resolve to that description..



robot_self_filter
Author(s): Ioan Sucan
autogenerated on Mon Dec 2 2013 12:33:58