What Is This

Segment pointcloud based euclidean metrics, which is based on pcl::EuclideanClusterExtraction. This nodelet has topic interface and service interface.

The result of clustering is published as jsk_recognition_msgs/ClusterPointIndices.

If the number of the cluster is not changed across different frames, EuclideanClustering tries to track the segment.

Subscribing Topics

  • ~input (sensor_msgs/PointCloud2):

    input pointcloud.

Publishing Topics

  • ~output (jsk_recognition_msgs/ClusterPointIndices):

    Result of clustering.

  • ~cluster_num (jsk_recognition_msgs/Int32Stamped):

    The number of clusters.

Advertising Services

  • ~euclidean_clustering (jsk_pcl_ros/EuclideanSegment):

    Service interface to segment clusters.

sensor_msgs/PointCloud2 input
float32 tolerance
sensor_msgs/PointCloud2[] output


  • ~tolerance (Double, default: 0.02):

    Max distance for the points to be regarded as same cluster.

  • ~label_tracking_tolerance (Double, default: 0.2)

    Max distance to track the cluster between different frames.

  • ~max_size (Integer, default: 25000)

    The maximum number of the points of one cluster.

  • ~min_size (Integer, default: 20)

    The minimum number of the points of one cluster.


Plug the depth sensor which can be launched by openni.launch and run the below command.

roslaunch jsk_pcl_ros euclidean_segmentation.launch