Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Selecting RoI #23

Open
abylikhsanov opened this issue Feb 5, 2021 · 1 comment
Open

Selecting RoI #23

abylikhsanov opened this issue Feb 5, 2021 · 1 comment

Comments

@abylikhsanov
Copy link

Hi,

If I have predefined static objects in specific locations of occupancy map, is it possible to select a region of interest for the ICP? So instead of trying to match the whole visible map, it will only try to match the selected RoI of the map

@carlosmccosta
Copy link
Owner

Good morning,

You can select regions of interest using the crop_box filter.

The RoIs can be configured to include points inside or outside the crop_box (configured with the invert_selection parameter).

You can have several crop_box filters for refining the regions that you want to include / exclude points.

But keep in mind that the logical operation is AND, not OR.

Each crop_box filter will select points inside / outside.

As such, removing points from several RoIs is possible, but selecting points that are inside several non overlapping crop_boxes is currently not supported (it will result in an empty point cloud).

This filter can be applied in different coordinate systems depending on the parent namespace:

  • ambient_pointcloud and ambient_pointcloud_feature_registration -> original sensor frame
  • ambient_pointcloud_map_frame and ambient_pointcloud_map_frame_feature_registration -> map frame
  • ambient_pointcloud_custom_frame -> other custom TF frame specified in the custom_frame_id parameter

You can also crop the occupancy map with crop_box, by placing the filter inside reference_pointcloud.

More info in the filters section in drl_configs.yaml.

Example for applying a single RoI in the map frame:

filters:
    ambient_pointcloud_map_frame:
        crop_box:                             # Allows prefix and postfix of letters / numbers to ensure processing order
            box_min_x: -10.0
            box_min_y: -10.0
            box_min_z: -10.0
            box_max_x: 10.0
            box_max_y: 10.0
            box_max_z: 10.0
            box_translation_x: 0.0
            box_translation_y: 0.0
            box_translation_z: 0.0
            box_rotation_roll: 0.0
            box_rotation_pitch: 0.0
            box_rotation_yaw: 0.0
            invert_selection: false           # If false -> selects points outside the box
            filtered_cloud_publish_topic: ''

Have a nice day :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants