This schema defines a set of basic types and properties.
BoundingBox
ADF uses normalized image coordinates. The x-axis points right, and the y-axis
points down. The upper-left corner is (0,0), and the lower-right corner is
(1,1). All coordinates inside the image are therefore nonnegative. This matches
how many digital image libraries handle image coordinates.
| Property | Type | Required |
|---|
| left | Float | Yes |
| top | Float | Yes |
| right | Float | Yes |
| bottom | Float | Yes |
GeographicPosition
A type representing a geographic position (geolocation) on Earth, with an
optional elevation component.
Longitude and latitude are given in degrees, as defined by the Global
Positioning System (GPS) and WGS 84. Latitude is 0° at the equator and
increases northward. Longitude is 0° at the IERS prime meridian and increases
eastward. Elevation, if present, is specified in meters.
| Property | Type | Required | Note |
|---|
| latitude | Float | Yes | Latitude in WGS84 decimal degrees; valid range -90 to 90 |
| longitude | Float | Yes | Longitude in WGS84 decimal degrees; valid range -180 to 180 |
| elevation | Float | No | Elevation above mean sea level in meters |
GeoDirection
Represents a velocity vector relative to the device. The coordinate system is
the one defined in the ONVIF Analytics Service Specification:
- The device is at the origin of a right-handed coordinate system where
the positive X axis is rightwards relative to the device, the positive Y
axis points away from the device, and the positive Z axis points upwards.
- The speed (r) is given in meters per second.
- The pitch (θ) is the vertical angle from the X-Y plane spanning
from -90 to 90 degrees and increasing upwards. The value 0° indicates no
relative elevation difference (level in the X-Y plane).
- The yaw angle (ψ) is the rotation angle around the Z axis. It ranges from
-180 to 180 degrees and increases counterclockwise. A yaw of 0° points
directly right, and a yaw of 90° points straight ahead.
| Property | Type | Required | Note |
|---|
| speed | Float | Yes | Magnitude, meters/second |
| pitch | Float | Yes | Elevation angle θ in degrees from the X-Y plane; valid range -90 to 90; 0° is level |
| yaw | Float | Yes | Rotation angle ψ in degrees around +Z; valid range -180 to 180; 0° indicates rightwards from the device |
SphericalCoordinate
Represents a vector in spherical coordinates that describes a position
relative to the device. The coordinate system is the one defined in the ONVIF
Analytics Service Specification:
- The device is at the origin of a right-handed coordinate system where
the positive X axis is rightwards relative to the device, the positive Y
axis points away from the device, and the positive Z axis points upwards.
- The distance (r) is given in meters.
- The elevation angle (θ) is the vertical angle from the X-Y plane spanning
from -90 to 90 degrees and increasing upwards. The value 0° indicates no
relative elevation difference (level in the X-Y plane).
- The azimuth angle (φ) is the rotation angle around the Z axis. It ranges
from -180 to 180 degrees and increases counterclockwise. An azimuth of 0°
points directly right, and an azimuth of 90° points straight ahead.
| Property | Type | Required | Note |
|---|
| distance | Float | Yes | Magnitude in meters |
| azimuth | Float | Yes | Azimuth angle φ in degrees around +Z; valid range -180 to 180; 90° is straight ahead from the observer |
| elevation | Float | Yes | Elevation angle θ in degrees from the X-Y plane; valid range -90 to 90; 0° is level |

Color
| Property | Type | Required | Note |
|---|
| Name | String | Yes | Defined Values |
| Score | Float | Yes | Confidence score for the classification, normalized to [0,1] where 1 is highest confidence |
Color values
Available color values:
- Beige
- Black
- Blue
- Gray
- Green
- Red
- White
- Yellow
LicensePlateAttributes
| Property | Type | Required | Note |
|---|
| country_code | String | No | Country/region code for the license plate |
| plate_number | String | No | The alphanumeric string printed on the license plate (as recognized) |
TimeAndPosition
| Property | Type | Required | Note |
|---|
| timestamp | String | No | Timestamp in YYYY-MM-DDTHH:MM:SS.MMMMMMZ format |
| bounding_box | BoundingBox | No | Bounding box describes an object's surrounding rectangle |
| world_position | SphericalCoordinate | No | The position of the object relative to the device channel that made this detection |
| world_velocity | GeoDirection | No | The velocity of the object relative to the device channel that made this detection |
| geoposition | GeographicPosition | No | The geographic position of the object |
ObjectDetection
| Property | Type | Required | Note |
|---|
| bounding_box | BoundingBox | Yes | Bounding box describes an object's surrounding rectangle |
| class | ObjectClassification | No | Classification of the detected object, for example, a person or vehicle |
| geoposition | GeographicPosition | No | The geographic position of the object |
| image_id | string | No | UUID reference to the ID of the object snapshot message |
| object_track_id | ID | No | Reference to the object track that this detection belongs to |
| world_position | SphericalCoordinate | No | The position of the object relative to the device channel that made this detection |
| world_velocity | GeoDirection | No | The velocity of the object relative to the device channel that made this detection |