objects

In the VisionAI format, an object pertains to any physical entity present within a given scene, such as a person, car, or lane marking in the real world. An object key contains various information, including the object's name, type, and contents used to describe a physical object. It uses UUID as a key. The ${OBJECT_UUID} information denotes the state of an object within a sequence and refers to its status across multiple frames.

Hint

Objects information comprises both static and dynamic elements.

Schema

Example

"objects": {
   "2eeda995-a39c-41f2-a9ab-a4c9be695beb": {
       "name": "car_1",
       "type": "car",
       "frame_intervals": [{"frame_start": 0, "frame_end": 0}],
       "object_data": {
           "vec": [{
                   "name": "car_color",
                   "val": "blue"
               }
           ],
        }, #Include static properties that describe this object. These properties remain consistent within this sequence and do not change with different frames or sensors.
       "object_data_pointers": {
            "car_color": {
                "type": "vec"
            },
            "bbox_shape": {
                "type": "bbox",
                "frame_intervals": [{"frame_start": 0, "frame_end": 0}],
                "attributes": {
                    "fully_visible": "boolean"
                }
            }
        } #Include all dynamic and static properties that describe this object within this sequence. Separate descriptions should be provided for the dynamic and static properties of the object.
    },
    "5683a995-a39c-1234-a9ab-a4c9be691234": {
        "name": "segment_mask_1",
        "type": "*segmentation_matrix",
        "object_data_pointers": {
            "semantic_mask": {
                "type": "binary",
                "frame_intervals": [{"frame_start": 0, "frame_end": 0}]
            }
        }
    }, # semantic segmantation use
    "6585c7d9-a90d-42b0-81b6-aee37e15521e": {...}
}

objects {}

The ${OBJECT_UUID} information denotes the state of an object within a sequence and refers to its status across multiple frames. Such information comprises both static and dynamic elements.

namedescriptiontyperequired

${OBJECT_UUID}

The id of the object. It uses UUID32 as a key.

object

true, unique

name

The unique name of this object. (ex. Amy) It can be any value.

string

false

type

The object class name. (ex. people) The values used in this format must conform to the ontology of the project.

string

true

frame_intervals

This key indicates which frames of this object exist. Please refer to the example & table below.

object

true

object_data

It contains static information to describe the object, such as the annotation shapes, attributes, or matrics in a sequence. (ex. the car_color: blue.) It is the static information of the object in a sequence that will not be changed via stream(sensors) or frames. If there is no static information about this object, it is not a required item.

object

false

object_data_pointers

This object points out all attributes without the value of this object and contains all static and dynamic information separately. For example, if one car with the static color blue, and a dynamic location, it will be described in different keys in a object_data_pointers.

object

true

frame_intervals {}

It is an array of the object which indicates all number of frames in this sequence.

namedescriptiontyperequired

frame_start

Initial frame number of the interval.

int

true

frame_end

Ending frame number of the interval.

int

true

object_data {}

It contains static information to describe the object, such as the annotation shapes, attributes, or matrics in a sequence. The "object_data" here reduces redundancy by storing static information consistent throughout the sequence. This item primarily focuses on the "value" within the frames.

namedescriptiontyperequired

${CONTENT_TYPE}

The information type, which is static information. (ex. vec)

object

true

name

The name of this attribute. (ex. car_color)

string

true

val

The value of this attribute. (ex. blue)

string

true

object_data_pointers {}

It is an array of the object’s contents on static and dynamic information which indicates all frames in this sequence. This item primarily focuses on the "type" that exists for rapidly retrieving information without the need to explore the entire set of frames.

namedescriptiontyperequired

${CONTENT_NAME}

The object information name. (ex. bbox_shape) It would be static information or dynamic information.

object

true

type

The value type of this attribute. (ex. bbox)

string

true

frame_intervals

Shows this attribute exists in which frames. Refer to the frame_intervals above. If the object attribute is static, this can be ignored.

object

true

attributes

The attributes of this content. If there is any attribute of the objects in this sequence, it is a required item. (ex. is_occlued: false)

object

false


Use Case

bbox

To describe a bbox dataset with one camera sensor:

  • sensor: camera (#camera1)

  • ontology:

    • people

      • ischild - boolean (static info)

      • direction - front, left, right, back (dynamic info)

      • age - number (static info)

    • car

      • color - white, silver, blue, red, black (static info)

    • truck

    • bus

Example Code

pagebbox

Last updated