Face Verification SDK

Biometric identity verification for large-scale high-security applications

The Face Verification SDK is designed for integration of facial authentication into enterprise and consumer applications for mobile devices and PCs. The simple API of the library component helps to implement solutions like payment, e-services and all other apps that need enhanced security through biometric face recognition, while keeping their overall size small for easy deployment to millions of users.

Different liveness detection functionalities are included to implement anti-spoofing mechanism with the possibility of configuring the balance between security and usability of the application.

Available on Android, iOS, Microsoft Windows, Mac OS X and Linux platforms.


Download Brochure (PDF).

Download demo app for Android.

Download SDK Trial.

Technical information and specifications

The Face Verification SDK provides certain capabilities for facial recognition applications, including high-level API for all operations and face liveness check. There are also certain requirements for facial image and posture.

General specifications

The Face Verification SDK architecture requires to account the performed operations on integrator's or end-user's server:

  • Integrators should ensure that encrypted connection is used for communications with the server.
  • No face images or templates are sent to the server during all operations, which require communication with the server. The biometric data is kept on the client-side, only transaction accounting information is sent to and received from the server.

The following operations are available via the high-level API:

  • Face template creation – a face is captured from camera and the face template is extracted for further usage in the face verification operation.
    • The server returns proprietary encrypted data as a result of an enrolment transaction that has been completed successfully.
    • Face liveness can be optionally checked during this operation. ICAO compliance check can be optionally used to strengthen the liveness check.
    • A token image of the enrolled face in accordance with ISO 19794-5 criteria can be optionally generated.
    • The template may be saved to any storage (database, file etc) together with custom metainformation (like person's name etc.). Note that the storage functionality is not part of the Face Verification SDK, although the programming samples include an example of such implementation).
  • Face verification – a face is captured from the camera and is verified against the face template which was created during the face template creation operation.
    • Face liveness can be optionally checked during this operation. ICAO compliance check can be optionally used to strengthen the liveness check.
  • Template import – a face template, which was created with VeriLook algorithm, can be imported into the application, based on Face Verification SDK. Later this template can be used for face verification operation in the same way, as the native templates from the face template creation operation.
  • Liveness check – this operation perform only liveness check of the provided face and only returns the result of the check. See the recommendations for the liveness check below on this page.
    • If the liveness check succeed, a token image of the enrolled face in accordance with ISO 19794-5 criteria can be optionally generated.
    • ICAO compliance check can be optionally used to strengthen the liveness check.

Basic Recommendations for facial image and posture

The face recognition accuracy heavily depends on the quality of a face image. Image quality during enrollment is important, as it influences the quality of the face template.

  • 32 pixels is the recommended minimal distance between eyes for a face on a video stream to perform face template extraction reliably. 64 pixels or more recommended for better face recognition results. Note that this distance should be native, not achieved by resizing the video frames.
  • Several face enrollments are recommended for better facial template quality which results in improvement of recognition quality and reliability.
  • Additional enrollments may be needed when facial hair style changes, especially when beard or mustache is grown or shaved off.
  • The face recognition engine is intended for usage with near-frontal face images and has certain tolerance to face posture:
    • head roll (tilt) – ±15 degrees;
    • head pitch (nod) – ±15 degrees from frontal position.
    • head yaw (bobble) – ±15 degrees from frontal position.

Live Face Detection

A live video stream from a camera is required for face liveness check:

  • When the liveness check is enabled, it is performed by the face engine before feature extraction. If the face in the stream fails to qualify as "live", the features are not extracted.
  • Only one face should be visible in these frames.
  • Optionally, ICAO compliance check can be used to strengthen the liveness check.
  • Users can enable these liveness check modes:
    • Active – the engine requests the user to perform certain actions like blinking or moving one's head.
      • 5 frames per second or better frame rate required.
      • This mode can work with both colored and grayscale images.
      • This mode requires the user to perform all requested actions to pass the liveness check.
    • Passive – the engine analyzes certain facial features while the user stays still in front of the camera for a short period of time.
      • Colored images are required for this mode.
      • 10 frames per second or better frame rate required.
      • Better score is achieved when users do not move at all.
    • Passive then active – the engine first tries the passive liveness check, and if it fails, tries the active check. This mode requires colored images.
    • Simple – the engine requires user to turn head from side to side while looking at camera.
      • 5 frames per second or better frame rate recommended.
      • This mode can work with both colored and grayscale images.
    • Custom – the engine requires user to turn head in four directions (up, down, left, right), in a random order.
      • 5 frames per second or better frame rate required.
      • This mode can work with both colored and grayscale images.
      • This mode requires the user to perform all requested actions to pass the liveness check.
Product Menu
Technology and SDK
Neurotechnology Distributors Map Ex-Cle S.A - representative in Argentina FingerSec do Brasil - distributor in Brazil (web site in Portuguese) Distributors in Chile Neurotechnology's Chinese Office (web site in Chinese) Security Systems Ltda - distributor in Colombia (web site in Spanish) Data6terms - distributor in Congo D.R. General Security El Salvador - distributor in El Salvador (web site in Spanish) Infokey Software Solutions - distributor in Greece (web site in Greek and English) Fulcrum Biometrics India Pvt. Ltd. - distributor in India Unifyia Solutions India Pvt. Ltd. - distributor in India Biometric srl - distributor in Italy (web site in Italian) Software Sources Ltd - distributor in Israel Tegara Corporation - distributor in Japan (web site in Japanese) Bruce and Brian Co., LTD. - distributor in Korea (web site in Korean) Biosec Solutions - distributor in Nigeria Digital Data Systems - distributor in Pakistan Ex-Cle S.A - distributor in Paraguay Digital Works - distributor in Peru Fingerprint i.t. - distributor in South Africa Intuate Biometrics - distributor in Spain (web site in Spanish) Sri Lanka Division - Neurotechnology Lab Delaney Biometrics - distributor in the UK Fulcrum Biometrics - representative in the USA Unifyia, Inc - distributor in the USA Distributors in Venezuela
Follow us
Facebook icon   LinkedIn icon   Twitter icon
Google+ icon   Youtube icon
Copyright © 1998 - 2019 Neurotechnology | Terms & Conditions | Privacy Policy | Career