Skip to main content

Basic types

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.

PropertyTypeRequired
leftFloatYes
topFloatYes
rightFloatYes
bottomFloatYes

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.

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 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.
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 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.
PropertyTypeRequiredNote
distanceFloatYesMagnitude in meters
azimuthFloatYesAzimuth angle φ in degrees around +Z; valid range -180 to 180; 90° is straight ahead 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​

Available color values:

  • 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
timestampStringNoTimestamp in YYYY-MM-DDTHH:MM:SS.MMMMMMZ format
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, for example, a person or 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