Skip to main content

Basic types

This schema defines a set of basic primitives and properties.

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.

PropertyTypeRequired
leftFloatYes
topFloatYes
rightFloatYes
bottomFloatYes

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.

PropertyTypeRequiredNote
latitudeFloatYesLatitude in WGS84 decimal degrees; valid range -90 to 90
longitudeFloatYesLongitude in WGS84 decimal degrees; valid range -180 to 180
elevationFloatNoElevation above mean sea level in meters

GeoDirection

Represents a velocity vector 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 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, spanning from -180 to 180 degrees and increasing counterclockwise. The value 0° indicates straight to the right. Since the value increases counterclockwise 90° is straight ahead.
PropertyTypeRequiredNote
speedFloatYesMagnitude, meters/second
pitchFloatYesElevation angle θ in degrees from the X-Y plane; valid range -90 to 90; 0° is level
yawFloatYesRotation angle ψ in degrees around +Z; valid range -180 to 180; 0° indicates rightwards from the device

SphericalCoordinate

Represents a vector of spherical coordinates used to describe a position 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 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, spanning from -180 to 180 degrees and increasing counterclockwise. The value 0° indicates straight to the right. Since the value increases counterclockwise 90° is straight ahead.
PropertyTypeRequiredNote
distanceFloatYesMagnitude in meters
azimuthFloatYesAzimuth angle φ in degrees around +Z; valid range -180 to 180; 90° is straight away from the observer
elevationFloatYesElevation angle θ in degrees from the X-Y plane; valid range -90 to 90; 0° is level

Spherical coordinates system

Color

PropertyTypeRequiredNote
NameStringYesDefined Values
ScoreFloatYesConfidence score for the classification, normalized to [0,1] where 1 is highest confidence

Color values

The available color values today:

  • Beige
  • Black
  • Blue
  • Gray
  • Green
  • Red
  • White
  • Yellow

LicensePlateAttributes

PropertyTypeRequiredNote
country_codeStringNoCountry/region code for the license plate
plate_numberStringNoThe alphanumeric string printed on the license plate (as recognized)

TimeAndPosition

PropertyTypeRequiredNote
timestampStringNoAccording to format: YYYY-MM-DDTHH:MM:SS.MMMMMMZ
bounding_boxBoundingBoxNoBounding box describes an object's surrounding rectangle
world_positionSphericalCoordinateNoThe position of the object relative to the device channel that made this detection
world_velocityGeoDirectionNoThe velocity of the object relative to the device channel that made this detection
geopositionGeographicPositionNoThe geographic position of the object

ObjectDetection

PropertyTypeRequiredNote
bounding_boxBoundingBoxYesBounding box describes an object's surrounding rectangle
classObjectClassificationNoClassification of the detected object (e.g., person, vehicle)
geopositionGeographicPositionNoThe geographic position of the object
image_idstringNoUUID reference to the id of the object_snapshot message
object_track_idIDNoReference to the object track that this detection belongs to
world_positionSphericalCoordinateNoThe position of the object relative to the device channel that made this detection
world_velocityGeoDirectionNoThe velocity of the object relative to the device channel that made this detection