Tailgating

Analyses line crossings to detect tailgating events.

Overview

The Tailgating node analyses line crossings from a prior Line crossing node to detect tailgating events.

Inputs & Outputs

  • Inputs: 1, Media Format: Raw Video
  • Outputs: 1, Media Format: Raw Video
  • Output Metadata: Tailgating Metadata

Pipeline usage

Place a detector, Track Objects, and Annotate Line Counter before this node. Set line_id to the upstream line label, optionally followed by :dir1 or :dir2 to monitor one direction; using only the line label monitors both directions. The interval rule flags objects that cross too close together. The correlating-trigger rule instead consumes an upstream event such as a badge swipe and permits crossing_allowance crossings during its buffer. Violating objects receive a tailgating attribute, so downstream filters and events can match that class.

Properties

PropertyDescriptionTypeDefaultRequired
object_typesex. car,person,face.mask. Comma-separated list of object types to consider. Empty list processes all objects.model-labelspersonNo
line_idex. front_entrance or front_entrance:dir1 or front_entrance+vestibule. Line ID from a preeceding Line or MultiLine node to monitor for tailgating.stringnullYes
tailgating_ruleTailgating rule. Options: Interval (interval): Require a minimum interval between objects crossing the line; Correlating Trigger (trigger): Require an external trigger (such as badge swipe) before each object that crosses the line.enumintervalYes
tailgating_intervalMinimum time between objects crossing the specified line to be considered valid. A tailgating event will be triggered for objects that cross within a smaller interval. Conditional on tailgating_rule being interval. Unit: seconds.number5Yes
correlating_triggerIf specified, each object that crosses must be preceeded by a trigger event that satisfies this condition. If not, a tailgating event will be triggered. Conditional on tailgating_rule being trigger.trigger-conditionnullYes
correlating_trigger_bufferEach correlating trigger will be matched with an object crossing within this interval. After the interval elapses, the trigger will be discarded. Conditional on tailgating_rule being trigger. Unit: seconds.number5Yes
crossing_allowanceNumber of objects allowed to cross per interval or trigger. Unit: objects.number1Yes
displayDisplay. Options: None (none); Basic (basic): Highlight violating objects; Full (full): Display stats, highlight violating objects.enumbasicNo

Output Metadata

The fields below are declared by this node's metadata schema; the JSON values are representative examples.

PathTypeDescription
nodes.<node_id>.tailgating_deltaintegerWhen one or more instances of tailgating are detected
nodes.<node_id>.lines.<line_id>.tailgating_deltaintegerWhen one or more instances of tailgating are detected on a specific line
nodes.<node_id>.lines.<line_id>.tailgating_objectsarrayArray of tracking IDs of objects involved in a tailgating event.
nodes.<node_id>.eventsarrayArray of event names generated by this node for the current frame.
nodes.<node_id>.typestringIdentifies the node type that produced this metadata.

JSON example

{
  "nodes": {
    "tailgating1": {
      "events": [],
      "lines": {
        "line1": {
          "tailgating_delta": 0,
          "tailgating_objects": []
        }
      },
      "tailgating_delta": 0,
      "type": "tailgating"
    }
  }
}

Object labels and attributes

  • Object labels/classes added: None.
  • Object attribute labels/classes added: tailgating, with class 17001.

Did this page help you?