Architecture

FindFace Security is deployed on a single host (standalone) or in a cluster environment.

The FindFace Security functioning is provided by interaction of the following components:

Component Description
PostgreSQL A database which stores detailed and categorized dossiers on particular persons, their biometric data, and face identification events. It also stores data for internal use such as user accounts and camera settings.
ffsecurity A service which interfaces with all the components to provide the system functioning. Includes findface-security-proto (provides HTTP and web socket) and findface-security-worker (provides interaction between the other system components). First, findface-security gets a normalized image, full frame, and meta data of a detected face from video-worker. It then redirects the normalized image to the extraction-api service to extract biometric data. The findface-postgres-facen extension uses the face biometric data to find a set of most similar faces in the dossiers. The face identification event along with the search result is then saved into the PostgreSQL database. The ffsecurity service also provides a search engine that searches for a given face in the event list and dossier database.
videomanager-api A service, part of the video face detection module, that is used for managing the video face detection functionality, configuring the video face detector settings and specifying the list of video streams to process.
video-worker A service, part of the video face detection module, which recognizes a face in video and posts its normalized image, full frame and meta data (such as the camera ID and detection time) to the ffsecurity service.
extraction-api A service which extracts face biometric data (feature vector).
findface-postgres-facen A PostgreSQL extension which calculates similarity between a newly detected face and faces in the dossiers, by comparing their biometric data.
ffsecurity-ui Use the web interface to work with face identification events, search for faces, manage cameras, users, dossiers, and watch lists.
NTLS A license server which interfaces with the NtechLab Global License Server or a USB dongle to verify a license.
etcd Third-party software that implements a distributed key-value store for the videomanager-api component. Used as a coordination service in the distributed system, providing the video face detector with fault tolerance.
   

Note

Use the web interface to work with FindFace Security.