Input
ExecutionInitiate Execution
AI/ML/Tracking
Follows detected objects across the frames of one camera and gives each a stable track id (ByteTrack, with BoT-SORT appearance matching when detections carry embeddings). Run it once per frame: the tracker is kept in memory per user, board, node, Camera pin and Session pin between runs and uses frame timestamps for motion and expiry. Track ids are only unique per tracker instance, named by each track's tracker_id: a new Camera or Session pin value, 10 minutes without frames, eviction when too many trackers are open, or a process restart starts a new tracker with a new tracker_id (a session carried by the detections does not). Deployments that spread runs over several processes keep one independent tracker per process.
Scores range from 0 to 10. Higher values mean more impact, exposure, or operational weight.
Initiate Execution
Boxes detected in this frame. Embeddings from Extract Appearance are used for appearance matching when present. Elements in the lost state (predicted boxes of lost tracks fed back in) are ignored.
Camera the frame comes from. Empty keeps the camera carried by the detections, or the last one seen. Every value of this pin gets its own tracker, so set it when one node tracks several cameras.
Stream session of the camera. Empty keeps the session carried by the detections, or the last one seen. A new value of this pin starts a fresh tracker with a new tracker_id.
Frame capture time in Unix milliseconds; 0 uses the current time, never earlier than the last processed frame. A frame up to Max Lost older than the last processed one is skipped; one further back is taken as a clock reset that drops all tracks.
Detections scoring at least this take part in the first association
Detections scoring at least this, but below the high threshold, can only keep existing tracks alive
Minimum score for an unmatched detection to start a new track
Maximum matching cost (1 - IoU × score, or appearance distance) of the first association; higher matches more loosely
How long a track that lost its object can be re-acquired with the same id
Minimum cosine similarity of embeddings for appearance to count as a match
Never match a track with a detection of another class
Also output tracks that lost their object. Their boxes are Kalman predictions, not detections: Extract Appearance and Associate Entities treat them as passive, and this node ignores them when they are fed back in.
Done with the Execution
Confirmed tracks matched in this frame (plus lost tracks if enabled), sorted by track id. Track ids are unique per tracker_id.
Smoothed appearance embedding of the track; empty when no embeddings were supplied
Tracker instance that issued `track_id`. A new tracker (new Camera/Session pin value, 10 minutes without frames, eviction or restart) gets a new one; a clock reset keeps it
Track id, unique within one tracker instance
Timestamp of the frame this track state belongs to, in Unix milliseconds
Index of the matched detection in this frame's input, or null for lost tracks
Matched to a detection in the latest frame
Not matched recently; kept alive for re-identification until it expires
Number of frames the track was matched in
True when the frame was older than the last processed one and was ignored