raillabel.json_format.object module

class raillabel.json_format.object.JSONObject(*, name: str, type: str, frame_intervals: list[JSONFrameInterval] | None = None, object_data_pointers: dict[str, JSONElementDataPointer] | None = None)

Bases: _JSONFormatBase

An object is the main type of annotation element.

Object is designed to represent spatiotemporal entities, such as physical objects in the real world. Objects shall have a name and type. Objects may have static and dynamic data. Objects are the only type of elements that may have geometric data, such as bounding boxes, cuboids, polylines, images, etc.

_abc_impl = <_abc._abc_data object>
frame_intervals: list[JSONFrameInterval] | None

The array of frame intervals where this object exists or is defined.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid'}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: str

Name of the object. It is a friendly name and not used for indexing.

object_data_pointers: dict[str, JSONElementDataPointer] | None
type: str

The type of an object defines the class the object corresponds to.