rp_point_cloud

Nodes operating on point clouds

README

rp_point_cloud

This package implements nodes that process point clouds and defines launch configurations for point cloud pipeline.

Config files

Launch files

  • point_cloud.launch.py - Launches point cloud processing pipeline composable nodes into the camera component container process. Uses both custom composable nodes and Autoware Universe composable nodes.

    ⚠️ Requires a running component container named camera_container⚠️

    • namespace (Default: robotic_platform) - Namespace of launched components.

    • use_sim_time (Default: False) - Use simulation clock.

    • log_level (Default: info) - Logging severity level.

    • camera_setup_path (Default: camera_setup_single.yaml) - Cameras mounted in the system.

    • filter_array (Default: [downsample, crop]) - Order of filters applied to the merged pointcloud.

Nodes

depth_image_constructor_node

[ComposableNode] Constructs a depth image out of input point cloud in the reference of the camera defined by input camera info.

Subscribers
  • ~/input_point_cloud sensor_msgs/msg/PointCloud2 - Input point cloud.

  • ~/input_camera_info sensor_msgs/msg/CameraInfo - Input camera info representing a real or virtual camera.

Publishers
  • depth/image_rect sensor_msgs/msg/Image - Output depth image in the frame of the camera.

  • depth/camera_info sensor_msgs/msg/CameraInfo - Output camera defining the virtual camera of the published depth image.

ROS Parameters

Please refer to depth_image_constructor_node_params.md file.

Note: In order to update depth_image_constructor_node_params.md file, got to package directory and use command: generate_parameter_library_markdown --input_yaml src/depth_image_constructor_node_params.yaml --output_markdown_file docs/depth_image_constructor_parameters.md.

point_cloud_merger_node

[ComposableNode] Synchronizes up to 9 point clouds with ApproximateTimeSynchronizer and concatenates their data into one point cloud. The input point clouds must have the same fields (same point type).

Subscribers
  • ***** sensor_msgs/msg/PointCloud2 - Up to 9 input point clouds topics. Subscriptions are created dynamically based on the input_topics parameter.

Publishers
  • ***** sensor_msgs/msg/PointCloud2 - Output point cloud topic. Publisher is created based on the output_topic parameter.

ROS Parameters

Please refer to point_cloud_merger_node_params.md file.

Note: In order to update point_cloud_merger_node_params.md file, got to package directory and use command: generate_parameter_library_markdown --input_yaml src/point_cloud_merger_node_params.yaml --output_markdown_file docs/point_cloud_merger_parameters.md.

point_cloud_type_converter_node

[ComposableNode] Modifies the fields of the input point cloud. Changes the point type of the point cloud to one of: PointXYZ, PointXYZI, PointXYZIRC, PointXYZIRCAEDT

Subscribers
  • ~/input_point_cloud sensor_msgs/msg/PointCloud2 - Input point cloud to be converted.

Publishers
  • ~/output_point_cloud sensor_msgs/msg/PointCloud2 - Output point cloud with specified fields added/removed.

ROS Parameters

Please refer to point_cloud_type_converter_parameters.md file.

Note: In order to update point_cloud_type_converter_parameters.md file, got to package directory and use command: generate_parameter_library_markdown --input_yaml src/point_cloud_type_converter_node_params.yaml --output_markdown_file docs/point_cloud_type_converter_parameters.md.