Data Replication Between FindFace Multi Systems

In some cases, images with objects recognized by one FindFace Multi system (e.g., faces, human silhouettes, or vehicles) must be replicated to another FindFace Multi system where they will be subsequently processed. This is implemented in FindFace Multi 2.4.

The system that recognizes objects in the video streams is called the Originating System, while the system to which images with these objects are replicated is the Processing System. Any FindFace Multi system can function as an Originating System, a Processing System, or both — accepting data replicated by downstream Originating Systems and replicating it to an upstream Processing System. In the latter case, both the data obtained by FindFace Multi during video processing and the data received from downstream Originating Systems will be replicated.

When exchanging data, the Originating System transmits to the Processing System the following:

  • Information about the cameras processed by the Originating System, including installation address and location, and camera groups they belong to.

  • Events generated during processing of video streams from cameras connected to the Originating System, including full frame images, thumbnails, normalized images, feature vectors, values of additional attributes of the recognized object, and other relevant data.

The above also applies to cameras and events replicated to the Originating System by FindFace Multi systems acting as Originating Systems relative to it.

Note

Events generated from video files uploaded to the Originating System (as opposed to the live streams) are not transmitted to the Processing System.

Replication operates under guaranteed delivery conditions, enabling reliable data exchange even with unstable network connectivity. This is particularly useful for aggregating data from mobile detectors on public or railway transport rolling stock at a central control hub. Guaranteed delivery prioritizes the most recent data upon connection restoration, enhancing responsiveness to incidents and situational awareness.

Note

For information security reasons, replication-initiated data exchange is exclusively Originating System-driven. The Processing System never transmits data to the Originating System or sends data transmission requests under any circumstances.

FindFace Multi deployment from the installer will automatically install the services related to data replication between instances: findface-multi-replication-sender, findface-multi-replication-receiver, findface-multi-replication-sender-migrate, findface-multi-replication-receiver-migrate.

To start working with the Originating System and the Processing System in the UI, enable the Integrations section.

In this section:

Enable Integrations in UI

To enable the Integrations section in the web interface, do the following:

  1. In the /opt/findface-multi/configs/findface-multi-legacy/ui-config.yaml file, locate and uncomment the multi_source_system section.

    sudo vi /opt/findface-multi/configs/findface-multi-legacy/ui-config.yaml
    
    multi_source_system:
      enabled: true
    
  2. Restart all FindFace Multi containers.

    cd /opt/findface-multi/
    
    sudo docker-compose restart
    

You will see that the Integrations section appeared in the General settings. Now you are all set to call the Originating System and the Processing System. The Originating System should be configured first.

integrations_en

Configure Originating System

Important

The Originating System should be created in FindFace Multi defined as a Processing System.

In the Processing System, navigate IntegrationsOriginating Systems. Click + New Originating System. In the opened sidebar, enter the Originating System name and click Save. After the Originating System has been created, you will see the connection token. You will need it to configure the Processing System.

Configure Processing System

Important

The Processing System should be created in FindFace Multi defined as an Originating System.

In the Originating System, navigate IntegrationsProcessing Systems. Click + New Processing System. In the opened sidebar, enter the Processing System name, the connection token generated upon the Originating System setup, and the Processing System URL. Click Save.

Once configuration is completed, check whether the synchronization between the Originating System and the Processing System is successful. The status of both systems should be active, and the synchronization time should update upon systems pinging each other.

Camera and Camera Group Replication

In the Originating System, create a camera group and add a camera or several cameras to it. From the action menu, Activate a camera to start processing. When a camera group is created in the Originating System, it is replicated to the Processing System. In the Processing System, camera groups from the Originating System can be identified by their names. There’s an option to filter camera groups by the Originating System’s name.

replicated_camera_groups_en

Navigate to Events of the Processing System to see events that are being transmitted from the Originating System.

Replication Licensing

The Originating System licenses are displayed in the LicensesGeneralOriginal System licenses section of the Processing System. The limits on camera resources of the Originating Systems’ licenses are summed up.

originating_system_license_en

In the Processing System, cameras from the Originating Systems are licensed as replicated resources: Replicated cameras, Replicated streams: Face, Replicated streams: Body, and Replicated streams: Car.

Note

With the complex hierarchy of the systems involved, you may need advice on licensing. Please contact our specialists at support@ntechlab.com.