[Documentation] [TitleIndex] [WordIndex

Only released in EOL distros:  

lse_climber_robots: pole_structure_mapper

Package Summary

This package contains two nodes for pole extraction and mapping for aiding 3D climbing robots in navigation and localization.

Overview

The goal of the software presented in this stack is to be able to use a ground robot equipped with a depth sensor to generate a 3D map of a structure composed of poles as it is climbed by a climbing robot. This sections contains an overview of the two algorithms implemented in this package, pole section extractor and 3D structure mapper.

Pole Extractor

This algorithm is in charge of extracting pole sections from the environment inside a region of interest centered at the gripper of the climbing robot. Extraction is achieved using cylindrical segmentation.

extractor.jpg

3D Structure Mapper

This algorithm uses the pole sections published by pole extractor to construct a map of the structure being climbed.

mapper.jpg

For more details on how the algorithms work check the publications section down below.

ROS API

pole_extractor_node

pole_extractor_node is a region of interest cylindrical segmentation algorithm.

Subscribed Topics

chewed_cloud (sensor_msgs/PointCloud2) extract_poles (std_msgs/Bool)

Published Topics

pole_cloud (sensor_msgs/PointCloud2) roi_cloud (sensor_msgs/PointCloud2) pole_extractor_markers (visualization_msgs/Marker) pole (pole_structure_mapper/PoleSectionStamped)

Parameters

~gripper_tag_frame_id (string, default: ar_marker) ~filter_box_width (double, default: 2.0) ~filter_box_height (double, default: 2.0) ~min_diameter (double, default: 0.2) ~max_diameter (double, default: 0.35) ~normal_distance (double, default: 0.1) ~max_iterations (int, default: 10000) ~distance_threshold (double, default: 0.05)

structure_mapper_node

structure_mapper_node is a 3D structure mapper for climbing robots.

Subscribed Topics

pole (pole_structure_mapper/PoleSectionStamped)

Published Topics

pole_structure (pole_structure_mapper/PoleStructure) pole_structure_visualizer (visualization_msgs/Marker)

Parameters

~global_frame_id (string, default: map) ~diameter_threshold (double, default: 0.03) ~axis_threshold (double, default: 10.0) ~distance_threshold (double, default: 0.10) ~length_threshold (double, default: 0.6) ~temporary_section_timeout (double, default: 30.0) ~num_of_temporary_sections (int, default: 10)

Video

The following video shows the pole extractor and 3D stricture mapper working in rviz.

Tutorials

Coming soon...

Coming soon...


2019-11-09 13:02