Object Motion Detection
Detects moving objects in the specified region of interest (ROI).
Overview
The Object motion detection node estimates if an object is moving or stationary, in a ROI. This node makes it easy to build common use cases such as alarm monitoring, object left behind, etc.
This node requires a AI Model Node and a Track Objects Node before it in order to function properly.
Inputs & Outputs
- Inputs : 1, Media Format : Raw Video
- Outputs : 1, Media Format: Raw Video
- Output Metadata : Motion information
Properties
| Property | Description | Type | Default | Required |
|---|---|---|---|---|
roi_labels | Region of interest label | string | — | No |
rois | Region of interest. Conditional on roi_labels. Format: comma-separated normalized x,y coordinate pairs; separate multiple polygons with semicolons (for example, 0.1,0.1,0.9,0.1,0.9,0.9). | string | null | No |
object_types | ex. car,person,car.red. Comma-separated list of object types to measure speed. | model-labels | null | No |
objects_to_flag | Flag objects with specified motion types so you can trigger downstream events using those. Options: Stationary (stationary); Moving (moving). Format: array of selected option values. | string[] | null | No |
display_objects_mode | Display objects on video. Options: None (none); Flagged objects (flagged); All (all). | enum | flagged | No |
display_roi | Display ROI on video? | bool | true | No |
motion_detection_trigger | Detect object motion only during the time this condition is true. Use it to pause detection when ex. a PTZ camera is moving. | trigger-condition | null | No |
tracking_mode | Tracking mode. Options: Centroid (centroid); Top center (top-center); Bottom center (bottom-center); Left center (left-center); Right center (right-center). | enum | bottom-center | No |
sensitivity | Higher sensitivity counts smaller movements as motion. Lower sensitivity counts only larger movements as motion. Range: minimum 0, maximum 100. Step: 1. | integer | 50 | No |
analysis_window | Analyze the last n seconds of an object's motion to determine motion type. Unit: seconds. | float | 1.0 | No |
min_motion_duration | Classify objects as moving only when they have been moving for this duration in seconds. Unit: seconds. | float | 0 | No |
Output Metadata
The fields below are declared by this node's metadata schema; the JSON values are representative examples.
| Path | Type | Description |
|---|---|---|
nodes.<node_id>.rois.<roi_label>.objects_stationary_count | integer | Number of currently stationary objects. |
nodes.<node_id>.rois.<roi_label>.objects_stationary_delta | integer | When one or more new objects are classified as stationary |
nodes.<node_id>.rois.<roi_label>.objects_moving_count | integer | Number of objects currently moving. |
nodes.<node_id>.rois.<roi_label>.objects_moving_delta | integer | When one or more new objects are classified as moving |
nodes.<node_id>.rois.<roi_label>.objects_flagged_count | integer | Number of objects currently matching this node’s alert criteria. |
nodes.<node_id>.rois.<roi_label>.objects_flagged_delta | integer | When one or more new objects are flagged |
nodes.<node_id>.rois.<roi_label>.coords | array | Array of pixel coordinates defining the configured ROI or line. |
nodes.<node_id>.rois.<roi_label>.objects_stationary | array | Array of tracking IDs of currently stationary objects. |
nodes.<node_id>.rois.<roi_label>.objects_moving | array | Array of tracking IDs of objects currently moving. |
nodes.<node_id>.rois.<roi_label>.objects_flagged | array | Array of tracking IDs of objects currently matching this node’s alert criteria. |
nodes.<node_id>.rois.<roi_label>.objects_of_interest_keys | array | Array of metadata keys that contain object IDs relevant to downstream integrations. |
nodes.<node_id>.rois.<roi_label>.description | string | Human-readable summary of the node’s current result. |
nodes.<node_id>.type | string | Identifies the node type that produced this metadata. |
JSON example
{
"nodes": {
"object_motion1": {
"rois": {
"roi1": {
"coords": [],
"description": "value",
"objects_flagged": [object_id1, object_id2...],
"objects_flagged_count": 0,
"objects_flagged_delta": 0,
"objects_moving": [object_id1, object_id2...],
"objects_moving_count": 0,
"objects_moving_delta": 0,
"objects_of_interest_keys": [],
"objects_stationary": [object_id1, object_id2...],
"objects_stationary_count": 0,
"objects_stationary_delta": 0
}
},
"type": "object_motion"
}
}
}Additional details
Object labels and attributes
- Object labels/classes added: None.
- Object attribute labels/classes added:
motion_movingormotion_stationary, with class12402.
Updated 3 days ago
Did this page help you?
