Schema Tables
Attribute
Bases: SchemaBase
A dataclass to represent schema table of attribute.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
name |
str
|
Attribute name. |
description |
str
|
Attribute description. |
Source code in t4_devkit/schema/tables/attribute.py
CalibratedSensor
Bases: SchemaBase
A dataclass to represent schema table of calibrated_sensor.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
sensor_token |
str
|
Foreign key pointing to the sensor type. |
translation |
Vector3
|
Coordinates system origin given as [x, y, z] in [m]. |
rotation |
Quaternion
|
Coordinates system orientation given as quaternion [w, x, y, z]. |
camera_intrinsic |
CameraIntrinsic
|
3x3 camera intrinsic matrix. Empty for sensors that are not cameras. |
camera_distortion |
CameraDistortion
|
Camera distortion array. Empty for sensors that are not cameras. |
Source code in t4_devkit/schema/tables/calibrated_sensor.py
Category
Bases: SchemaBase
A dataclass to represent schema table of category.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
name |
str
|
Category name. |
description |
str
|
Category description. |
index |
int | None
|
Category index for lidar segmentation. |
has_orientation |
bool | None
|
Indicates whether annotations for this category may include an |
has_number |
bool | None
|
Indicates whether annotations for this category may include a |
Source code in t4_devkit/schema/tables/category.py
EgoPose
Bases: SchemaBase
A dataclass to represent schema table of ego_pose.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
translation |
Vector3
|
Coordinate system origin given as [x, y, z] in [m]. |
rotation |
Quaternion
|
Coordinate system orientation given as quaternion [w, x, y, z]. |
timestamp |
int
|
Unix time stamp. |
twist |
Vector6 | None
|
Linear and angular velocities in the local coordinate system of the ego vehicle (in m/s for linear and rad/s for angular), in the order of (vx, vy, vz, yaw_rate, pitch_rate, roll_rate). |
acceleration |
Vector3 | None
|
Acceleration in the local coordinate system of the ego vehicle (in m/s2), in the order of (ax, ay, az). |
geocoordinate |
Vector3 | None
|
Coordinates in the WGS 84 reference ellipsoid (latitude, longitude, altitude) in degrees and meters. |
Source code in t4_devkit/schema/tables/ego_pose.py
Instance
Bases: SchemaBase
A dataclass to represent schema table of instance.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
category_token |
str
|
Foreign key pointing to the object category. |
instance_name |
str
|
Dataset name and instance ID defined in annotation tool. |
nbr_annotations |
int
|
Number of annotations of this instance. |
first_annotation_token |
str
|
Foreign key pointing to the first annotation of this instance. Empty if the dataset only contains 2D annotations. |
last_annotation_token |
str
|
Foreign key pointing to the last annotation of this instance. Empty if the dataset only contains 2D annotations. |
Source code in t4_devkit/schema/tables/instance.py
Keypoint
Bases: SchemaBase
A dataclass to represent schema table of keypoint.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
sample_data_token |
str
|
Foreign key pointing to the sample data, which must be a keyframe image. |
instance_token |
str
|
Foreign key pointing to the instance. |
category_tokens |
list[str]
|
Foreign key pointing to keypoints categories. |
keypoints |
KeypointLike
|
Annotated keypoints. Given as a list of [x, y]. |
num_keypoints |
int
|
The number of keypoints to be annotated. |
Source code in t4_devkit/schema/tables/keypoint.py
LidarSeg
Bases: SchemaBase
A dataclass to represent lidar point cloud segmentation data.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
filename |
str
|
The filename of the lidar point cloud segmentation data. |
sample_data_token |
str
|
The token of the sample data. |
Source code in t4_devkit/schema/tables/lidarseg.py
Log
Bases: SchemaBase
A dataclass to represent schema table of log.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
logfile |
str
|
Log file name. |
vehicle |
str
|
Vehicle name. |
data_captured |
str
|
Date of the data was captured (YYYY-MM-DD-HH-mm-ss). |
location |
str
|
Area where log was captured. |
Shortcuts:
map_token (str): Foreign key pointing to the map record.
This should be set after instantiated.
Source code in t4_devkit/schema/tables/log.py
Map
Bases: SchemaBase
A dataclass to represent schema table of map.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
log_tokens |
str
|
Foreign keys pointing the log tokens. |
category |
str
|
Map category. |
filename |
str
|
Relative path to the file with the map mask. |
Source code in t4_devkit/schema/tables/map.py
ObjectAnn
Bases: SchemaBase, AutolabelMixin
A dataclass to represent schema table of object_ann.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
sample_data_token |
str
|
Foreign key pointing to the sample data, which must be a keyframe image. |
instance_token |
str
|
Foreign key pointing to the instance. |
category_token |
str
|
Foreign key pointing to the object category. |
attribute_tokens |
list[str]
|
Foreign keys. List of attributes for this annotation. |
bbox |
Roi
|
Annotated bounding box. Given as [xmin, ymin, xmax, ymax]. |
mask |
RLEMask
|
Instance mask using the COCO format compressed by RLE. |
orientation |
float | None
|
Orientation of the arrow shape within the bounding box, in radians. Present only for categories where |
number |
int | None
|
The digit displayed within the bounding box. Present only for categories where |
Inherited from AutolabelMixin
automatic_annotation (bool, optional): Indicates if the annotation is fully generated by an ML model.
If any part is manually modified or annotated by human this value is False.
autolabel_metadata (list[AutolabelModel] | None, optional): List of models used for autolabeling. Required if automatic_annotation is true.
Shortcuts:
category_name (str): Category name. This should be set after instantiated.
Source code in t4_devkit/schema/tables/object_ann.py
Sample
Bases: SchemaBase
A dataclass to represent schema table of sample.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
timestamp |
int
|
Unix time stamp. |
scene_token |
str
|
Foreign key pointing to the scene. |
next |
str
|
Foreign key pointing the sample that follows this in time. Empty if end of scene. |
prev |
str
|
Foreign key pointing the sample that precedes this in time. Empty if start of scene. |
Shortcuts:
data (dict[str, str]): Sensor channel and its token.
This should be set after instantiated.
ann_3ds (list[str]): List of foreign keys pointing the sample annotations.
This should be set after instantiated.
ann_2ds (list[str]): List of foreign keys pointing the object annotations.
This should be set after instantiated.
surface_anns (list[str]): List of foreign keys pointing the surface annotations.
This should be set after instantiated.
Source code in t4_devkit/schema/tables/sample.py
SampleAnnotation
Bases: SchemaBase, AutolabelMixin
A dataclass to represent schema table of sample_annotation.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
sample_token |
str
|
Foreign key pointing the sample. |
instance_token |
str
|
Foreign key pointing the object instance. |
attribute_tokens |
list[str]
|
Foreign keys. List of attributes for this annotation. |
visibility_token |
str
|
Foreign key pointing the object visibility. |
translation |
Vector3
|
Bounding box location given as [x, y, z] in [m]. |
size |
Vector3
|
Bounding box size given as [width, length, height] in [m]. |
rotation |
Quaternion
|
Bounding box orientation given as quaternion [w, x, y, z]. |
num_lidar_pts |
int
|
Number of lidar points in this box. |
num_radar_pts |
int
|
Number of radar points in this box. |
next |
str
|
Foreign key pointing the annotation that follows this in time. Empty if this is the last annotation for this object. |
prev |
str
|
Foreign key pointing the annotation that precedes this in time. Empty if this the first annotation for this object. |
velocity |
Vector3 | None
|
Bounding box velocity given as [vx, vy, vz] in [m/s]. |
acceleration |
Vector3 | None
|
Bonding box acceleration given as [ax, ay, av] in [m/s^2]. |
Inherited from AutolabelMixin
automatic_annotation (bool, optional): Indicates if the annotation is fully generated by an ML model.
If any part is manually modified or annotated by human this value is False.
autolabel_metadata (list[AutolabelModel] | None, optional): List of models used for autolabeling. Required if automatic_annotation is true.
Shortcuts:
category_name (str): Category name. This should be set after instantiated.
Source code in t4_devkit/schema/tables/sample_annotation.py
SampleData
Bases: SchemaBase
A class to represent schema table of sample_data.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
sample_token |
str
|
Foreign key pointing the sample. Empty if this is not a key frame. |
ego_pose_token |
str
|
Foreign key pointing the ego_pose. |
calibrated_sensor_token |
str
|
Foreign key pointing the calibrated_sensor. |
filename |
str
|
Relative path to data-blob on disk. |
fileformat |
FileFormat
|
Data file format. |
width |
int
|
If the sample data is an image, this is the image width in [px]. |
height |
int
|
If the sample data is an image, this is the image height in [px]. |
timestamp |
int
|
Unix time stamp. |
is_key_frame |
bool
|
True if sample_data is part of key frame else, False. |
next |
str
|
Foreign key pointing the sample_data that follows this in time. Empty if end of scene. |
prev |
str
|
Foreign key pointing the sample_data that precedes this in time. Empty if start of scene. |
is_valid |
bool
|
True if this data is valid, else False. Invalid data should be ignored. |
info_filename |
str
|
Relative path to metainfo data-blob on disk. |
autolabel_metadata |
list[AutolabelModel] | None
|
List of models used for autolabeling applied to this entire sample_data item (e.g., image or scan). |
Shortcuts:
modality (SensorModality): Sensor modality. This should be set after instantiated.
channel (str): Sensor channel. This should be set after instantiated.
Source code in t4_devkit/schema/tables/sample_data.py
Scene
Bases: SchemaBase
A dataclass to represent schema table of scene.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
name |
str
|
Short string identifier. |
description |
str
|
Longer description for the scene. |
log_token |
str
|
Foreign key pointing to log from where the data was extracted. |
nbr_samples |
int
|
Number of samples in the scene. |
first_sample_token |
str
|
Foreign key pointing to the first sample in scene. |
last_sample_token |
str
|
Foreign key pointing to the last sample in scene. |
Source code in t4_devkit/schema/tables/scene.py
Sensor
Bases: SchemaBase
A dataclass to represent schema table of sensor.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
channel |
str
|
Sensor channel name. |
modality |
SensorModality
|
Sensor modality. |
Shortcuts:
first_sd_token (str): The first sample data token corresponding to its sensor channel.
Source code in t4_devkit/schema/tables/sensor.py
SurfaceAnn
Bases: SchemaBase, AutolabelMixin
A dataclass to represent schema table of surface_ann.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
sample_data_token |
str
|
Foreign key pointing to the sample data, which must be a keyframe image. |
category_token |
str
|
Foreign key pointing to the surface category. |
mask |
RLEMask
|
Segmentation mask using the COCO format compressed by RLE. |
Inherited from AutolabelMixin
automatic_annotation (bool, optional): Indicates if the annotation is fully generated by an ML model.
If any part is manually modified or annotated by human this value is False.
autolabel_metadata (list[AutolabelModel] | None, optional): List of models used for autolabeling. Required if automatic_annotation is true.
Shortcuts:
category_name (str): Category name. This should be set after instantiated.
Source code in t4_devkit/schema/tables/surface_ann.py
bbox
property
Return a bounding box corners calculated from polygon vertices.
Returns:
| Type | Description |
|---|---|
Roi | None
|
Roi instance given as [xmin, ymin, xmax, ymax]. |
VehicleState
Bases: SchemaBase
A dataclass to represent schema table of vehicle_state.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
timestamp |
int
|
Unix time stamp. |
accel_pedal |
float | None
|
Accel pedal position [%]. |
brake_pedal |
float | None
|
Brake pedal position [%]. |
steer_pedal |
float | None
|
Steering wheel position [%]. |
steering_tire_angle |
float | None
|
Steering tire angle [rad]. |
steering_wheel_angle |
float | None
|
Steering wheel angle [rad]. |
shift_state |
ShiftState | None
|
Gear shift state. |
indicators |
Indicators | None
|
State of each indicator. |
additional_info |
AdditionalInfo | None
|
Additional state information. |
Source code in t4_devkit/schema/tables/vehicle_state.py
Visibility
Bases: SchemaBase
A dataclass to represent schema table of visibility.json.
Attributes:
| Name | Type | Description |
|---|---|---|
token |
str
|
Unique record identifier. |
level |
VisibilityLevel
|
Visibility level. |
description |
str
|
Description of visibility level. |