Skip to content

Detection Event Log

Class: DetectionEventLogBlockV1

Source: inference.core.workflows.core_steps.analytics.detection_event_log.v1.DetectionEventLogBlockV1

This block maintains a log of detection events from tracked objects. It records when each object was first seen, its class, and the last time it was seen.Objects must be seen for a minimum number of frames (frame_threshold) before being logged. Stale events (not seen for stale_frames) are removed during periodic cleanup (every flush_interval frames).

Type identifier

Use the following identifier in step "type" field: roboflow_core/detection_event_log@v1to add the block as as step in your workflow.

Properties

Name Type Description Refs
name str Enter a unique identifier for this step..
frame_threshold int Number of frames an object must be seen before being logged..
flush_interval int How often (in frames) to run the cleanup operation for stale events..
stale_frames int Remove events that haven't been seen for this many frames..
reference_timestamp float Unix timestamp when the video started. When provided, absolute timestamps (first_seen_timestamp, last_seen_timestamp) are included in output, calculated as relative time + reference_timestamp..
fallback_fps float Fallback FPS to use when video metadata does not provide FPS information. Used to calculate relative timestamps..

The Refs column marks possibility to parametrise the property with dynamic values available in workflow runtime. See Bindings for more info.

Available Connections

Compatible Blocks

Check what blocks you can connect to Detection Event Log in version v1.

Input and Output Bindings

The available connections depend on its binding kinds. Check what binding kinds Detection Event Log in version v1 has.

Bindings
  • input

    • image (image): Reference to the image for video metadata (frame number, timestamp)..
    • detections (Union[object_detection_prediction, instance_segmentation_prediction]): Tracked detections from byte tracker (must have tracker_id)..
    • frame_threshold (integer): Number of frames an object must be seen before being logged..
    • flush_interval (integer): How often (in frames) to run the cleanup operation for stale events..
    • stale_frames (integer): Remove events that haven't been seen for this many frames..
    • reference_timestamp (float): Unix timestamp when the video started. When provided, absolute timestamps (first_seen_timestamp, last_seen_timestamp) are included in output, calculated as relative time + reference_timestamp..
    • fallback_fps (float): Fallback FPS to use when video metadata does not provide FPS information. Used to calculate relative timestamps..
  • output

    • event_log (dictionary): Dictionary.
    • detections (Union[object_detection_prediction, instance_segmentation_prediction]): Prediction with detected bounding boxes in form of sv.Detections(...) object if object_detection_prediction or Prediction with detected bounding boxes and segmentation masks in form of sv.Detections(...) object if instance_segmentation_prediction.
    • total_logged (integer): Integer value.
    • total_pending (integer): Integer value.
Example JSON definition of step Detection Event Log in version v1
{
    "name": "<your_step_name_here>",
    "type": "roboflow_core/detection_event_log@v1",
    "image": "$inputs.image",
    "detections": "$steps.byte_tracker.tracked_detections",
    "frame_threshold": 5,
    "flush_interval": 30,
    "stale_frames": 150,
    "reference_timestamp": 1726570875.0,
    "fallback_fps": 1.0
}