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.

Cylinder

Cylinder 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 semantic location in the environment.

region: semantic_digital_twin.world_description.world_entity.Region | None = None

Referenced semantic region

name: str = ''

Legacy fallback location name

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 stores a SemDT geometry shape and inlier point indices.

inliers: typing_extensions.List[int] = []

List of pointcloud indices that belong to this shape

geometry: semantic_digital_twin.world_description.geometry.Shape

SemDT geometry shape represented by this annotation

property shape_name: str

Return the semantic name of the stored shape.

class robokudo.types.annotation.Cuboid

Bases: Shape

Cuboid shape annotation.

This class represents a cuboid shape as a SemDT box geometry.

geometry: semantic_digital_twin.world_description.geometry.Box

SemDT box geometry represented by this annotation

class robokudo.types.annotation.Sphere

Bases: Shape

Sphere shape annotation.

This class represents a sphere shape as a SemDT sphere geometry.

geometry: semantic_digital_twin.world_description.geometry.Sphere

SemDT sphere geometry represented by this annotation

class robokudo.types.annotation.Cylinder

Bases: Shape

Cylinder shape annotation.

This class represents a cylinder shape as a SemDT cylinder geometry.

geometry: semantic_digital_twin.world_description.geometry.Cylinder

SemDT cylinder geometry represented by this annotation

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