VeriLook SDK

Face identification for stand-alone or Web applications

VeriLook facial identification technology is designed for biometric systems developers and integrators. The technology assures system performance and reliability with live face detection, simultaneous multiple face recognition and fast face matching in 1-to-1 and 1-to-many modes.

Available as a software development kit that allows development of stand-alone and Web-based solutions on Microsoft Windows, Linux, Mac OS X, iOS and Android platforms.

Features and Capabilities

  • More than a million algorithm deployments worldwide over the past 12 years.
  • Live face detection prevents cheating with a photo in front of a camera.
  • Simultaneous multiple face processing in live video and still images.
  • Gender classification and age evaluation for each person in an image.
  • Emotion recognition and facial feature points extraction.
  • Webcams or other low cost cameras are suitable for obtaining face images.
  • Available as multiplatform SDK that supports multiple programming languages.
  • Surveillance SDK is available for integrating face identification into surveillance systems.
  • Reasonable prices, flexible licensing and free customer support.

The VeriLook algorithm implements advanced face localization, enrollment and matching using robust digital image processing algorithms, which are based on deep neural networks:

Multiple face detection
VeriLook Multiple Faces Detection
Click to zoom
  • Simultaneous multiple face processing. VeriLook 9.0 performs fast and accurate detection of multiple faces in live video streams and still images. All faces on the current frame are detected in 0.01 - 0.86 seconds depending on selected values for face roll and yaw tolerances, and face detection accuracy. After detection, a set of features is extracted from each face into a template in 0.6 seconds. See technical specifications for more details.
  • Gender classification. Optionally, gender can be determined for each person on the image with predefined degree of accuracy during the template extraction.
  • Live face detection. A conventional face identification system can be tricked by placing a photo in front of the camera. VeriLook is able to prevent this kind of security breach by determining whether a face in a video stream is "live" or a photograph. The liveness detection can be performed in passive mode, when the engine evaluates certain facial features, and in active mode, when the engine evaluates user's response to perform actions like blinking or head movements. See recommendations for live face detection for more details.
  • Emotions recognition. VeriLook can be configured to recognize emotion type in a human face. Six basic emotions are analyzed: anger, disgust, fear, happiness, sadness and surprise. A confidence value for each of the basic emotions is returned for the face. Larger value for an emotion means that it seems to be more expressed in the face.
  • Facial feature points. The points can be optionally extracted as a set of their coordinates during face template extraction. Each of the 68 points has a fixed sequence number (i.e. number 31 always corresponds to nose tip).
  • Facial attributes. VeriLook can be configured to detect certain attributes during the face extraction – smile, open-mouth, closed-eyes, glasses, dark-glasses, beard and mustache.
  • Age estimation. VeriLook can optionally estimate person's age by analyzing the detected face in the image.
  • Face image quality determination. A quality threshold can be used during face enrollment to ensure that only the best quality face template will be stored into database.
  • Tolerance to face position. VeriLook allows for 360 degrees of head roll. Head pitch can be up to 15 degrees in each direction from the frontal position. Head yaw can be up to 45 degrees in each direction from the frontal position. See technical specifications for more details.
  • Multiple samples of the same face. Biometric template record can contain multiple face samples belonging to the same person. These samples can be enrolled from different sources and at different times, thus allowing improvement in matching quality. For example a person might be enrolled with and without beard or mustache, etc.
  • Identification capability. VeriLook functions can be used in 1-to-1 matching (verification), as well as 1-to-many mode (identification). The VeriLook 9.0 face template matching algorithm can compare up to 40,000 faces per second on a PC. See technical specifications for more details.
  • Small face features template. A face features template can be as small as 4 Kilobytes, thus VeriLook-based applications can handle large face databases. Also, 5 Kilobytes and 7 Kilobytes templates can be used to increase matching reliability. See technical specifications for more details.
  • Features generalization mode. This mode generates the collection of the generalized face features from several images of the same subject. Then, each face image is processed, features are extracted, and the collections of features are analyzed and combined into a single generalized features collection, which is written to the database. This way, the enrolled feature template is more reliable and the face recognition quality increases considerably.