robokudo.types.annotation

Annotation types for robokudo.

This module provides various annotation types used for object classification, semantic information, location data, geometric shapes, and pose information. All annotation types inherit from the base Annotation class.

Classes

Classification

Classification annotation for objects.

SemanticColor

Semantic color annotation.

LocationAnnotation

Location annotation for objects.

Plane

Plane annotation for surface detection.

Shape

Base class for shape annotations.

Cuboid

Cuboid shape annotation.

Sphere

Sphere shape annotation.

ColorHistogram

Color histogram annotation.

PoseAnnotation

Pose annotation combining transform and annotation functionality.

PositionAnnotation

Position annotation combining position and annotation functionality.

StampedPoseAnnotation

Timestamped pose annotation.

StampedPositionAnnotation

Timestamped position annotation.

StampedTransformAnnotation

Timestamped transform annotation.

Encoding

An abstract Encoding Type.

BoundingBox3DAnnotation

3D bounding box annotation.

CloudAnnotation

Point cloud annotation.

SpatiallyNearestAnnotation

Annotation to describe the spatially nearest object to the camera.

TextAnnotation

Text annotation.

Module Contents

class robokudo.types.annotation.Classification

Bases: robokudo.types.core.Annotation

Classification annotation for objects.

This class represents a classification result, including the type of classification (instance, class, or shape), the class name, confidence score, and class ID.

classification_type: str = ''

Type of classification (INSTANCE, CLASS, or SHAPE)

classname: str = ''

Name of the classified class

confidence: float = 0.0

Confidence score of the classification

class_id: int = 0

Numeric identifier for the class

class robokudo.types.annotation.SemanticColor

Bases: robokudo.types.core.Annotation

Semantic color annotation.

This class represents semantic color information, including the color name and its ratio/proportion in the annotated object or region.

color: str = ''

Name of the color

ratio: float = 0.0

Proportion/ratio of this color in the object/region

class robokudo.types.annotation.LocationAnnotation

Bases: robokudo.types.core.Annotation

Location annotation for objects.

This class represents a named location in the environment.

name: str = ''

Name of the location

class robokudo.types.annotation.Plane

Bases: robokudo.types.core.Annotation

Plane annotation for surface detection.

This class represents a detected plane in 3D space, including its model parameters and inlier points.

model: typing_extensions.List[float] = []

4-dimensional plane equation parameters [a, b, c, d] for ax + by + cz + d = 0

inliers: typing_extensions.List[int] = []

List of pointcloud indices that belong to this plane

class robokudo.types.annotation.Shape

Bases: robokudo.types.core.Annotation

Base class for shape annotations.

This class serves as a base for specific shape types like Cuboid and Sphere.

inliers: typing_extensions.List[int] = []

List of pointcloud indices that belong to this shape

type: str = ''

Type of the shape (e.g., ‘Cuboid’, ‘Sphere’)

class robokudo.types.annotation.Cuboid

Bases: Shape

Cuboid shape annotation.

This class represents a cuboid shape defined by three plane equations.

model: typing_extensions.List = []

Three plane equations defining the cuboid, shape (3,4)

class robokudo.types.annotation.Sphere

Bases: Shape

Sphere shape annotation.

This class represents a sphere shape defined by its center and radius.

radius: float = 0.0

Radius of the sphere

center: numpy.typing.NDArray[numpy.float32]

Center coordinates of the sphere in (x, y, z)

class robokudo.types.annotation.ColorHistogram

Bases: robokudo.types.core.Annotation

Color histogram annotation.

This class usually represents a 2D color histogram, typically containing hue and saturation information.

hist: typing_extensions.Optional[numpy.typing.NDArray] = None

2D histogram array

normalized: bool = False

Whether the histogram is normalized

class robokudo.types.annotation.PoseAnnotation

Bases: robokudo.types.tf.Pose, robokudo.types.core.Annotation

Pose annotation combining transform and annotation functionality.

This class inherits from both Pose and Annotation to provide pose information as an annotation type.

class robokudo.types.annotation.PositionAnnotation

Bases: robokudo.types.tf.Position, robokudo.types.core.Annotation

Position annotation combining position and annotation functionality.

This class inherits from both Position and Annotation to provide position information as an annotation type.

class robokudo.types.annotation.StampedPoseAnnotation

Bases: robokudo.types.tf.StampedPose, robokudo.types.core.Annotation

Timestamped pose annotation.

This class combines timestamped pose information with annotation functionality.

class robokudo.types.annotation.StampedPositionAnnotation

Bases: robokudo.types.tf.StampedPosition, robokudo.types.core.Annotation

Timestamped position annotation.

This class combines timestamped position information with annotation functionality.

class robokudo.types.annotation.StampedTransformAnnotation

Bases: robokudo.types.tf.StampedTransform, robokudo.types.core.Annotation

Timestamped transform annotation.

This class combines timestamped transform information with annotation functionality.

class robokudo.types.annotation.Encoding

Bases: robokudo.types.core.Annotation

An abstract Encoding Type.

This class represents various types of encodings such as feature vectors, latent space representations, or other variables.

encoding: typing_extensions.Any = None

The encoded representation

class robokudo.types.annotation.BoundingBox3DAnnotation

Bases: robokudo.types.cv.BoundingBox3D, robokudo.types.core.Annotation

3D bounding box annotation.

This class combines 3D bounding box functionality with annotation capabilities.

class robokudo.types.annotation.CloudAnnotation

Bases: robokudo.types.cv.Points3D, robokudo.types.core.Annotation

Point cloud annotation.

This class combines 3D point cloud functionality with annotation capabilities.

class robokudo.types.annotation.SpatiallyNearestAnnotation

Bases: robokudo.types.core.Annotation

Annotation to describe the spatially nearest object to the camera. Supposed to be unique for an amount of objects or humans.

class robokudo.types.annotation.TextAnnotation

Bases: robokudo.types.core.Annotation

Text annotation.

text: str = ''

Text content of the annotation