Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro jazzy showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro kilted showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro rolling showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro ardent showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro bouncy showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro crystal showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro eloquent showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro dashing showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro galactic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro foxy showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro iron showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro lunar showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro jade showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro indigo showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro hydro showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro kinetic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro melodic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange

No version for distro noetic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_euclidean_cluster_object_detector package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.8.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-05-02
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

The autoware_euclidean_cluster_object_detector package

Maintainers

  • Yukihiro Saito
  • Dai Nguyen

Authors

No additional authors.

autoware_euclidean_cluster_object_detector

Purpose

autoware_euclidean_cluster_object_detector is a package for clustering points into smaller parts to classify objects.

This package has two clustering methods: euclidean_cluster and voxel_grid_based_euclidean_cluster.

Inner-workings / Algorithms

euclidean_cluster

pcl::EuclideanClusterExtraction is applied to points. See official document for details.

voxel_grid_based_euclidean_cluster

  1. A centroid in each voxel is calculated by pcl::VoxelGrid.
  2. The centroids are clustered by pcl::EuclideanClusterExtraction.
  3. The input points are clustered based on the clustered centroids.

Inputs / Outputs

Input

Name Type Description
input sensor_msgs::msg::PointCloud2 input pointcloud

Output

Name Type Description
output autoware_perception_msgs::msg::DetectedObjects detected objects
debug/clusters sensor_msgs::msg::PointCloud2 colored cluster pointcloud for visualization

Parameters

Core Parameters

euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space

voxel_grid_based_euclidean_cluster

Name Type Description
use_height bool use point.z for clustering
min_cluster_size int the minimum number of points that a cluster needs to contain in order to be considered valid
max_cluster_size int the maximum number of points that a cluster needs to contain in order to be considered valid
tolerance float the spatial cluster tolerance as a measure in the L2 Euclidean space
voxel_leaf_size float the voxel leaf size of x and y
min_points_number_per_voxel int the minimum number of points for a voxel

Assumptions / Known limits

(Optional) Error detection and handling

(Optional) Performance characterization

(Optional) Future extensions / Unimplemented parts

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_euclidean_cluster_object_detector

1.8.0 (2026-05-01)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings (#938)

    • fix(autoware_euclidean_cluster_object_detector): fix bugprone-narrowing-conversions warnings

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class (#941)

    • refactor(autoware_crop_box_filter): rename CropBoxFilter node class to CropBoxFilterNode
    • refactor(autoware_crop_box_filter): extract CropBoxFilter logic class
    • refactor(autoware_crop_box_filter): remove output_frame from CropBoxFilterConfig

    * refactor(autoware_crop_box_filter): remove unnecessary member variables Convert tf_input_orig_frame_ and max_queue_size_ to local variables as they are only used in the constructor.

    • test(autoware_crop_box_filter): add unit tests for preprocess and postprocess transform
    • refactor(crop_box_filter): rename variable for clarity in transform handling

    * refactor(crop_box_filter): simplify transform handling by removing has_value checks ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • chore(euclidean_cluster): move header files from include to src (#869)

    • chore(autoware_euclidean_cluster_object_detector): move header files from include/ to src/

    * chore(euclidean_cluster): remove pragma once ---------Co-authored-by: Takahisa.Ishikawa <<takahisa.ishikawa@tier4.jp>>

  • Contributors: NorahXiong, Takahisa Ishikawa, github-actions

1.7.0 (2026-02-14)

  • Merge remote-tracking branch 'origin/main' into humble
  • chore: use local default config files instead of autoware_launch (for core) (#832) use local default config files instead of autoware_launch
  • Contributors: Ryohsuke Mitsudome, Taeseung Sohn

1.6.0 (2025-12-30)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
  • fix(autoware_euclidean_cluster_object_detector): prevent zero division in getCentroid (#745)
    • Add zero division check in getCentroid() function
    • Return origin point (0, 0, 0) when empty point cloud is passed
    • Add unit test for empty point cloud case
  • fix(autoware_euclidean_cluster_object_detector): add early return for empty point cloud in voxel grid node (#747)
  • fix(autoware_euclidean_cluster_object_detector): add empty point cloud check (#743)
  • Contributors: Yutaka Kondo, github-actions

1.5.0 (2025-11-16)

  • Merge remote-tracking branch 'origin/main' into humble

  • feat: replace [ament_auto_package]{.title-ref} to [autoware_ament_auto_package]{.title-ref} (#700)

    • replace ament_auto_package to autoware_ament_auto_package

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

  • chore: bump version (1.4.0) and update changelog (#608)

File truncated at 100 lines see the full file

Launch files

  • launch/euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]
  • launch/voxel_grid_based_euclidean_cluster.launch.xml
      • input_pointcloud [default: /sensing/lidar/top/pointcloud_raw]
      • input_map [default: /map/pointcloud_map]
      • output_clusters [default: clusters]
      • use_low_height_cropbox [default: false]
      • voxel_grid_based_euclidean_param_path [default: $(find-pkg-share autoware_euclidean_cluster_object_detector)/config/voxel_grid_based_euclidean_cluster.param.yaml]
      • use_pointcloud_container [default: false]
      • pointcloud_container_name [default: pointcloud_container]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_euclidean_cluster_object_detector at Robotics Stack Exchange