OMNI Agents consists of basic and infrastructure modules. The basic modules are implemented as pipelines for processing human faces and bodies.
Basic Modules | Description |
Camera Handler | The module splits video streams from cameras or video files into frames and prepares them for processing |
Processing of human body frames |
Body Detector Processing Block | The module detects human bodies in frames |
Embeddings Processing Block | The module creates embeddings from body crops. Embedding means a vector representation of the detected body |
Reidentification Handler | The module forms a person's track and provides reidentification. During the detection process, each frame is assigned a unique track_id. If the same person is identified on a sequence of frames, the track_id of all related frames are changed to the track_id of the first frame of this person |
Body Track Handler | The module organizes and processes the ways people move on frames (tracking) |
Processing of human face frames |
Videoworker Callbacks Handler | The module detects human faces |
Face Track Handler | The module estimates face attributes in the frame (gender, age, emotions, liveness, mask presence), searches for similar faces in the agent and platform databases (via the Database Sync Handler). If there are matches with the database, the ID of the image from the database is also added to the processing result |
Attentions Handler | The module estimates human attention (if the person in the frame is looking at the camera) |
Human Process Handler | The results of processing human faces and bodies are submitted to the Human Process Handler, where they are converted into agent processes for subsequent transfer to OMNI Platform or an external service via webhooks |
Infrastructure Modules | Description |
Activation Module | The module is responsible for agent activation |
Webhooks Handler | The module sends agent processes via webhooks to an external service |
Server Connection Handler | The module transfers agent processes to OMNI Platform |
Database Sync Handler | The module synchronizes the local database with OMNI Platform database |
Reconfiguration Handler | The module provides access to configuration files and allows to reconfigure agent without app restart |
Preview Handler | The module creates previews (frames from the camera with rendered detections, submitted to the web interface of OMNI agent) |
Frontend Handler | The module manages the agent as a web app |
External Process Handler | The module brings the signals of the beginning and end of external events to an interval form (processes) |
Http Redirection Module | The module redirects requests to the platform server |
Multisource Handler | The module creates a pipeline of processing modules for each new videostream |
Trace Handler | The module collects traces (logs) from Body Detector |