Basic types
The Analytics Data Format (ADF) is currently being developed and has not yet reached a stable release. All data structures are subject to change.
Basic Types | Defined Values |
---|---|
BoundingBox | N/A |
ImageVelocity | N/A |
GeographicPosition | N/A |
SphericalCoordinate | N/A |
Image | N/A |
Color | ColorName |
BoundingBox
The coordinate system used in ADF is normalized image coordinates: The x-axis pointing to the right and the y-axis pointing down, with the upper left hand corner as (0,0) and the lower right hand corner as (1,1). Thus all coordinates have positive values inside the image. This represents how many digital image libraries handles image coordinates.
Property | Type | Required |
---|---|---|
left | Float | Yes |
top | Float | Yes |
right | Float | Yes |
bottom | Float | Yes |
ImageVelocity
A velocity in image space. The velocity unit is in normalized image units per second (see the documentation for BoundingBox).
Property | Type | Required |
---|---|---|
vx | Float | Yes |
vy | Float | Yes |
GeographicPosition
A type representing a geographic position (geolocation) on Earth, with an optional elevation component. The longitude and latitude are given in degrees as defined by the Global Position System (GPS) and WGS84. The latitude is 0° at the equator, increasing northwards. The longitude is defined to be 0° at the IERS prime meridian, increasing eastwards. The elevation, if present, is specified in meters.
Property | Type | Required |
---|---|---|
latitude | Float | Yes |
longitude | Float | Yes |
elevation | Float | No |
SphericalCoordinate
Represents a vector described in spherical coordinates. For a vector that represents a position or velocity relative to the device, the coordinate system used is the same as defined in the ONVIF Analytics Service Specification:
- The device is placed in 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 magnitude (r) is given in SI units: meters for a position, and meters per second for a velocity.
- 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, spanning from -180 to 180 degrees and increasing counterclockwise, i.e. rightwards as seen from the device. The value 0° indicates straight ahead.
Property | Type | Required |
---|---|---|
r | Float | Yes |
azimut | Float | Yes |
elevation | Float | Yes |
Image
Cropped image
Property | Type | Required | Note |
---|---|---|---|
timestamp | String | Yes | According to format: YYYY-MM-DDTHH:MM:SS.MMMMMMZ |
bounding_box | BoundingBox | Yes | |
data | String | Yes | Image payload. Base64 encoded when serialized to json |
Color
Property | Type | Required | Note |
---|---|---|---|
Name | String | Yes | Defined Values |
Score | Float | Yes |
Color values
The available color values today:
- Beige
- Black
- Blue
- Gray
- Green
- Red
- White
- Yellow
TrackedObjectObservation
Property | Type | Required | Note |
---|---|---|---|
timestamp | String | Yes | According to format: YYYY-MM-DDTHH:MM:SS.MMMMMMZ |
track_id | ID | No | |
velocity | ImageVelocity | No | The velocity in the image of the object, in normalized coordinates |
bounding_box | BoundingBox | Yes | Bounding box describes an object's surrounding rectangle |
class | ObjectClassification | No | |
classes | Array of ObjectClassification | No | |
image | Image | No | Image cropped around the detected object |
world_position | SphericalCoordinate | No | The position of the object relative to the device channel that made this detection |
world_velocity | SphericalCoordinate | No | The velocity of the object relative to the device channel that made this detection |
geoposition | GeographicPosition | No | The geographic position of the object |