ROS message to PCL data

  • use_height_를 사용하지 않을 경우
    • raw_pointcloud_ptr의 z축을 0으로 설정하여 2D 포인트 클라우드 (pointcloud_ptr) 생성

KDTree 생성

  • pointcloud_ptr을 사용하여 KDTree (tree) 생성

클러스터링 실행

  • treeEuclidean Clustering 방법을 사용하여 클러스터링 수행
  • 결과는 cluster_indices에 저장되며, cluster index와 각 index에 해당되는 pointcloud의 point index가 저장됨

cluster_pub 출력 메시지 구성

  • 모든 cluster index에 대하여 각 인덱스마다 포함된 point index에 해당되는 raw_pointcloud_ptr_의 point를 cloud_cluster에 저장
    • cluster index 하나당 하나의 cloud_cluster 생성
    • cloud_cluster의 width는 포함된 points의 개수로 설정하고, height는 1로 설정
  • feature_objectcloud_cluster를 저장하고, 해당 클러스터에 포함된 포인트들의 평균 좌표값을 구하여 feature_object.object.state.pose_covariance.pose.position에 저장
  • feature_objectoutput.feature_objects에 저장되며, 모든 cluster index에 대해 수행된 후 publish

Flow From ...

Flow To ..