attributes

Attributes in the context of the VisionAI format refer to an alias assigned to element data that can be nested within geometric object data. For instance, a bounding box may have attributes related to its score, visibility, or other features. These attribute values can be nested within the object (ex. boundingbox) data itself.

Schema

Example

{
    "boolean": [{
            "name": "visible",
            "val": true
        },{
            "name": "touchable",
            "val": false
    }],

    "text": [{
        "name": "company",
        "val": "linker"
    },{
        "name": "branch",
        "val": "taipei"
    }],

    "number": [{
        "name": "height",
        "val": 180
    },{
        "name": "weight",
        "val": 75
    }],

    "vec": [{
        "name": "locations",
        "val": ["taipei", "tainan"]
    },{
        "name": "projects",
        "val": ["mlops", "auto_labeling"]
    }]
}

attributes {}

An attribute can be any combination of the following types below. Each type is an array. All values with the same type will be in the same array.

namedescriptiontyperequired

boolean

The boolean type attribute means a result that can only have one of two possible values: true or false.

array of objects

false

num

The number type attribute defines a floating-point number and is defined by a name key, and val key.

array of objects

false

text

The text type attribute is a string to represent textual information.

array of objects

false

vec

The vec type attribute is an array of text. It represents the options of the attribute and possibly has the same properties as the other generic attributes.

array of objects

false

attribute_type objects

namedescriptiontyperequired

name

The name of this attribute.

string

true

val

The value of this attribute follows the table defined above. ➤ boolean: boolean ➤ num: float ➤ text: string ➤ vec: array of strings

describe in the description

true

NOTE: The attribute name and the vec type array items name may only contain lowercase letters, numbers, and hyphens (-), and must begin and end with a letter or a number. Each hyphen (-) must be preceded and followed by a non-hyphen character. The name must also be between 3 and 40 characters long.


Use Case

bbox with attributes

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