Recognition Pipeline
The facial recognition process in FaceLog follows a structured pipeline designed to detect, analyze, and identify faces captured by camera devices. This pipeline converts raw images into numerical representations that can be compared with previously stored user data.
Recognition Flow
Step 1 — Image Capture
The process begins when a connected camera captures an image containing a user’s face.
The system supports multiple cameras, typically configured as:
- Entry camera
- Exit camera
Each camera sends captured frames to the recognition service for processing.
Step 2 — Face Detection
The system uses the YuNet convolutional neural network to locate faces within the image.
This step isolates facial regions and removes background information that is not relevant for identification.
Step 3 — Embedding Generation
Once a face is detected, the system passes the image to FaceNet, which generates a numerical vector called an embedding. An embedding represents the unique characteristics of a face in a high-dimensional space.
Step 4 — Database Comparison
The generated embedding is compared with embeddings stored in the system database.
The comparison uses Euclidean distance to measure similarity between vectors.
Step 5 — Identity Decision
If the calculated distance is below a predefined threshold:
- the system identifies the face as a registered user
If no match is found:
- the system classifies the face as unknown
- the captured image is stored for later review
Step 6 — Activity Logging
Finally, the recognition event is recorded in the system log. The log stores information such as:
- timestamp
- user identity (or unknown)
- entry or exit event
- associated camera