Skip to content

Face SDK 4.1

Face Identification

In this version, we redesigned the Face Identification functionality. Now, it supports infinite horizontal scaling. No matter how intensive the stream of incoming requests or how many records are in a database, you can fulfill high performance and a response within a second.

The new features:

  • Supporting attributes to bind a photo with the person's name or other parameters.
  • Scoring results by the similarity level: The more a person in a database photo looks similar to the person who is being looked for, the higher the similarity score is.
  • Controlling strictness of the search with similarity threshold: Similarity can be set in the search parameters to cut off obviously dissimilar results. Or vice versa, expanding the search area.
  • Organizing photos in groups to make the search more targeted.

Learn more about Face Identification

Face Detection

Face image quality assessment

This is the first release of the face image quality assessment feature. The functionality validates whether the applicant's photo meets certain conditions.

The demo site is available here:

  • 45 parameters to check the image quality, head size and position, pose and expression, head occlusion, and inappropriate objects.
  • Predefined scenarios to check compliance with the ICAO standard, Schengen and US Visa requirements.
  • Customization of the list of controlled parameters and allowed value ranges for each parameter.

Now, you can crop a face image from an original photo, align the face vertically on this image, resize and change the background. You can simply download the resulting image or pass it for further processing. Please find more details in the Face Image Quality Assessment help article.

Face attributes evaluation

With the help of the face attributes evaluation, you can find out the estimated age range of a person; whether the eyes are occluded, closed, or open; the neutral or emotional facial expression; the presence of a smile, glasses, sunglasses, head coverage, medical mask, etc. Please find more details in the Attributes Evaluation help article.

  • The age range of a person is detected by the new neural network. The previous one returned simply a binary value "adult" or "child".
  • Improved the quality of the neural networks for face occlusion detection.
  • Optimized the loading speed of the service.
  • Updated onnxruntime from 1.7.2 to 1.11.1. and observed better performance of the service in some scenarios.

Mobile API


  • Added RFSLivenessProcessingContentView and RFSLivenessRetryContentView for user interface customization purposes.
  • Added configuration properties to LivenessConfiguration and FaceCaptureConfiguration: torchButtonEnabled and closeButtonEnabled.
  • Renamed the LivenessConfiguration and FaceCaptureConfiguration properties from cameraSwitchEnabled to cameraSwitchButtonEnabled.
  • Fixed the MatchFaces crash where MatchFacesRequest was given an empty UIImage object. The request does not support nil images, however it was possible to pass UIImage() with empty image data.
  • Fixed multithreading issues with the video recorder. Rare app crashes when closing liveness are fixed now.
  • Fixed crashes in the RFSCopyCVPixelBuffer method. In some cases, row by rows copying was used.


  • Added the registerProcessingFragment method in LivenessConfiguration to set a custom processing fragment.
  • Added the setCloseButtonEnabled and setTorchButtonEnabled methods to Configuration.
  • Added the setForceToUseHuaweiVision method in MatchFaceConfiguration and LivenessConfiguration to force using the Huawei Vision library.

Web Service API

Demo site

  • Added the Face image quality capabilities to ensure whether the applicant's photo meets the predefined ICAO standards, Schengen, or US Visa requirements.
  • Removed the person’s storage. Instead, added the capabilities to work with persons, see below.
  • Added capabilities to work with persons: add a photo, assign attributes, download the person’s photo, organize them in groups.
  • Added capabilities to look up a person in a list by one’s image, customizing this look-up with similarity scores.
  • Updated the Open API specification on GitHub:
  • Updated clients and packages.

Web components

This is the first release of the web components for client-side in-browser automatic capture of a user's selfie and liveness validation.

The web components are based on WebAssembly (.wasm module) that is our core C++ code compiled for use in browsers, wrapped with a JS layer. It is exactly the same code as built for all the other platform SDK packages.

The demo version is always available here:

The npm package:

The main features:

  • Validating face size, direct look and other face presence to capture high-quality photos. Showing prompts to a user to fix detected issues on the fly.
  • Works in any modern browser, both desktop and mobile.
  • Flipping camera functionality in case of using on mobile devices.
  • Customization of Font, Font size, Theme color.
  • Localization support for 32 languages.

Face SDK web components documentation

Installation packages

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.


  • [all] Environment variables. Changes in behavior:
  • FACEAPI_HTTPS if enabled, serves web service via HTTPS using default cert and key file paths (Defaults certs/tls.crt; certs/tls.key).
  • FACEAPI_CERT_FILE / FACEAPI_KEY_FILE won't work if FACEAPI_HTTPS is set to "false".
  • FACEAPI_CERT_FILE / FACEAPI_KEY_FILE defaults were changed to certs/tls.crt; certs/tls.key respectively.
  • FACEAPI_LOGS_ACCESS_CONSOLE default changed to "true".
  • FACEAPI_SQL_URL defaults were changed to postgresql://regula:Regulapasswd#1@ FACEAPI_SQL_URL is the recommended way to use the 1:N (Identification) module.
  • [containers] Environment variables "FACEAPI_BIND", "FACEAPI_WORKERS", "FACEAPI_LOGS_APP_CONSOLE" were removed from the container image, i.e. reverted back to defaults.
  • [containers] Environment variables FACEAPI_BACKLOG="20", FACEAPI_TIMEOUT="120", FACEAPI_LOGS_ACCESS_CONSOLE="true" were removed from the container image, i.e. reverted back to defaults
  • [containers] PIPENV_DONT_LOAD_ENV=1 Environment variable has been added
  • [containers] Migrate to ubi9-minimal base image
  • [containers] - DB migration mechanism updated
  • [containers] GPU. Was updated to CUDA 11.4 and CUDNN 8.2.4 to support onnxruntime 1.11.1



  • [containers] - added section to read .env file before app start, to fix specific case with FACEAPI_ENABLE_IDENTIFICATION env variable.