robokudo.annotators.cluster_pose_pca

3D pose estimation using principal component analysis.

This module provides an annotator for:

  • Calculating 3D poses for object hypotheses

  • Using PCA for orientation estimation

  • Computing oriented bounding boxes

  • Generating visualization markers

The module uses:

  • Principal component analysis for axes

  • Eigenvalue decomposition

  • Coordinate frame alignment

  • Open3D visualization tools

Note

Requires at least 10 points per object hypothesis.

Classes

ClusterPosePCAAnnotator

3D pose estimation using principal component analysis.

Module Contents

class robokudo.annotators.cluster_pose_pca.ClusterPosePCAAnnotator(name='ClusterPosePCAAnnotator')

Bases: robokudo.annotators.core.BaseAnnotator

3D pose estimation using principal component analysis.

This annotator:

  • Calculates 3D poses for object point clusters

  • Uses PCA for orientation estimation

  • Aligns coordinate frames with principal axes

  • Creates pose annotations

  • Generates visualization markers

Note

Requires minimum 10 points per object hypothesis.

update()

Process object hypotheses and estimate poses.

The method:

  • Loads point cloud from CAS

  • For each object hypothesis: * Computes centroid and covariance * Performs eigenvalue decomposition * Aligns coordinate frame with principal axes * Creates pose annotations * Creates visualization markers

Returns:

SUCCESS after processing

Return type:

py_trees.Status