Skip to main content
Version: 2.3.3

Architecture

img.png

OMNI Agents consists of basic and infrastructure modules. The basic modules are implemented as pipelines for processing human faces and bodies.

Basic ModulesDescription
Camera HandlerThe module splits video streams from cameras or video files into frames and prepares them for processing
Processing of human body frames
Body Detector Processing BlockThe module detects human bodies in frames
Embeddings Processing BlockThe module creates embeddings from body crops. Embedding means a vector representation of the detected body
Reidentification HandlerThe 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 HandlerThe module organizes and processes the ways people move on frames (tracking)
Processing of human face frames
Videoworker Callbacks HandlerThe module detects human faces
Face Track HandlerThe 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 HandlerThe module estimates human attention (if the person in the frame is looking at the camera)
Human Process HandlerThe 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 ModulesDescription
Activation ModuleThe module is responsible for agent activation
Webhooks HandlerThe module sends agent processes via webhooks to an external service
Server Connection HandlerThe module transfers agent processes to OMNI Platform
Database Sync HandlerThe module synchronizes the local database with OMNI Platform database
Reconfiguration HandlerThe module provides access to configuration files and allows to reconfigure agent without app restart
Preview HandlerThe module creates previews (frames from the camera with rendered detections, submitted to the web interface of OMNI agent)
Frontend HandlerThe module manages the agent as a web app
External Process HandlerThe module brings the signals of the beginning and end of external events to an interval form (processes)
Http Redirection ModuleThe module redirects requests to the platform server
Multisource HandlerThe module creates a pipeline of processing modules for each new videostream
Trace HandlerThe module collects traces (logs) from Body Detector