Skip to main content

Tracks

A track represents a single detected object moving through a camera’s field of view over time. The state machine creates a track when an object is first detected and maintains it as new detections arrive.

Track state object

Every signal delivered to your workflow includes a track_state object with the full current state of the track:

Key track fields

Position

The track’s current position includes both pixel and geo-referenced coordinates:
  • pix — pixel coordinates of the object’s center in the camera frame
  • geo — geographic longitude/latitude (if camera is geo-calibrated)
  • polygon — the bounding box of the detected object

Motion

Velocity and distance metrics in both pixel and geographic units:
Geographic motion fields (geo) are only populated when the camera is geo-calibrated. Otherwise they will be null.

Zones

A zone is a defined polygon region within a camera’s field of view. Zones are configured in the Worlds platform and represent areas of interest — loading bays, walkways, restricted areas, intersections, etc.

Active zones

The zones.active object contains every zone the track currently intersects:

Key zone fields

Zone history

When a track exits a zone, it moves from zones.active to zones.history:
History is useful for checks like zone sequence validation (did the track visit zones in a specific order?) and historical velocity analysis.

Zone sequence

The zones.sequence array records the order in which zones were entered:
This is used by the zone sequence check to detect wrong-way travel or validate that objects follow expected paths.

Interactions (batch mode only)

When the trigger is configured for batch mode, the state machine calculates interactions between tracks. For each detection, it looks at a 1-second window before and after and identifies other tracks whose bounding boxes were nearby.
Interactions are used by Type III checks for use cases like safety near-miss detection, PPE compliance, and tailgating.
In streaming mode, the interactions array is always empty. Interaction calculation requires looking at all detections in a time window, which is only possible after the track has expired in batch processing.

Zone state

In addition to track-level zone data, the state machine also produces zone state — an aggregate view of what’s happening in a specific zone. This is available when the trigger is configured with signal type Zone State.
Zone state is used with the Zone Activity Check for use cases like congestion and congregation where you care about aggregate zone activity rather than individual track behavior.