robokudo.annotators.cluster_pose_bb¶
Classes¶
Calculate the 3D Position for every Object Hypothesis (cluster) that has 3d points. |
Module Contents¶
- class robokudo.annotators.cluster_pose_bb.ClusterPoseBBAnnotator(name='ClusterPoseBBAnnotator', descriptor=Descriptor())¶
-
Bases:
robokudo.annotators.core.BaseAnnotator
Calculate the 3D Position for every Object Hypothesis (cluster) that has 3d points. The pose will be calculated by building a z-axis aligned Oriented Bounding Box for every cluster. BB rotation is determined by projecting the cluster 3d points to the world transform and then calculate a minimum area BB in 2d.
- class Descriptor¶
-
Bases:
robokudo.annotators.core.BaseAnnotator.Descriptor
- class Parameters¶
-
- align_x_axis_by_max_bbox_extent = False¶
- bounding_box_visualization_color = [0, 0, 0]¶
- parameters¶
- adjust_bb_orientation_by_bb_size(pose_orientation: numpy.typing.NDArray, bounding_box_extents: list)¶
-
Aligns the 6D pose so that the X-axis points in the direction of the biggest side of the bounding box. This will also change the extents of the bounding box, because the axes will be flipped and the extents have to be adjusted accordingly.
Parameters: - pose_orientation: numpy array, orientation of the pose as a rotation matrix (3x3). - bounding_box_extents: numpy array, extents of the bounding box (x,y,z).
Returns: - new_pose_orientation: numpy array, the aligned orientation of the bounding box. - new_bounding_box_extents: numpy array, the re-arranged bounding box extent list.
- update()¶