Guides

πŸ‘πŸ» Best practice

πŸ“Œ Introduction

Welcome to the Best Practice Guide for implementing face identity verification. This guide is designed to provide you with a clear and detailed roadmap for integrating a face identity verification system into your client application. Using intuitive icons, we'll walk you through each step of the process, ensuring that your implementation is both effective and user-friendly.


βš™οΈ System Overview

This guide is based on a sequence diagram illustrating interactions between the user (USER), the client application (CLIENT), and the Face Identity Service (FACE Identity), focusing on face capture, search, and verification.


πŸ“Έ Step 1. Capture the User's Face

  • User Action: The process begins when the user captures their face using the client application.
  • Implementation Note: Ensure your application provides clear instructions on how to capture a good quality image of the face, considering factors like lighting and background.

🚧

Important notes about using the Liveness option

FACE IDENTITY provides the Liveness feature for anti-spoofing (see Liveness feature).
To use Liveness, it is important that users take and send a proper image of their face. ARGOS refers to this as an image quality check.

  • Image capture is at least 720 pixel in height with maximum compression is JPEG70

Below are the main cases where Image Quality fail can occur.

MessageDescription
Face Not Foundno face image
Face Croppedthe face image is too close to the edge or cropped
Face Too Smallthe face image is too small
Too Many Facesthere are too many faces because other faces are included
Face Too Closethe face image is too close to the edge or cropped
Face Close to Borderthe face image is too close to the edge or cropped
Face Occuledthe face is covered by another object
Face Anglethe face is rotated too much from the front.

Avoid Liveness errors by providing users with a guide to look straight ahead when taking a headshot and ensure that the face is properly centered and well positioned.

Below are examples of possible headshots from the table above.


:arrow-right: Step 2. Send the Captured Face to the Server

  • Client to Server Communication: Once the face is captured, the client sends the image to the face identity service using a [POST API] call to search for the face by image.

πŸ” Step 3. Perform Face Identity Search

  • Critical Path Begins: This is a critical part of the process where the face identity service attempts to match the face with an existing face in the database.
    • Database Scan: The service indexes the face and scans the database for a match.

Case 1 | If No Matched Face 🚫: The service responds with "No Face matched".

  1. Add New Face: The client then sends a request to add the new face.
  2. Indexing Face: The service indexes the new face. Note that no face image is stored, only the indexed data.
  3. Response to Client: The service responds with an "Indexed FACE ID".
  4. Client Notifies User: The client notifies the user with a "Welcome to the service" message.

Case 2 | If Matched Faceβœ…: If a match is found:

  1. Response to Client: The service responds with "Matched FACE ID".
  2. Client Notifies User: The client notifies the user that they are a registered user.

⏹️ Step 4. End of Critical Path

  • Ensure Smooth Transition: Whether a new user is added or an existing user is recognized, ensure the transition to the next steps in your application is smooth and intuitive.