Join top executives in San Francisco on July 11-12, to hear how leaders are integrating and optimizing AI investments for success. Learn More
This post was written by Serhii Pospielov, Lead Software Engineer at Exadel.
Biometric facial recognition uses unique mathematical algorithms and dynamic patterns to make this system one of the safest and most effective security measures. The facial detection process commonly consists of the following steps:
- Facial detection. A camera detects and recognizes a face either alone or in a crowd. No matter what technology you use, it’s better to have consistent lighting, high camera resolution, and limited motion. Lighting has to be bright enough to provide enough contrast for the recognition algorithm. Many systems require a certain number of pixels to identify facial features, and if you want to detect a larger area, you need to increase the camera resolution. Cameras with high frame rates will help you avoid problems with subject motion.
- Facial analysis. There are two main methods for capturing and matching faces. The first measures various features of a person’s face. These geometric measurements are then stored in a database for later comparison. The second method is more complex: It captures the full facial image and uses as much information as it can. Then it uses various computer algorithms, including machine learning, to build a set of definition data.
- Conversion of image into data. The detected facial features are then converted into a mathematical formula in a code called a faceprint. Every person has their own faceprint consisting of a unique set of physical features.
- Identification of a match. Finally, the system compares the code to a dataset of other faceprints and identifies a match with attached information. The underlying principle here is called object classification. During this phase, the system detects multiple objects in an image that comprises both object localization and object classification.
How deep learning improves facial recognition technology
Deep learning is one of the most up-to-date ways to improve the accuracy of facial recognition software. Deep learning extracts unique facial embeddings from images of faces and uses a trained model to recognize photos from a database in other photos and videos. There are two common methods to use deep learning for facial recognition systems:
- Solutions with pre-trained models including Deepfacial, facialNet, and a few others. Models like these already have a set of algorithms for facial recognition purposes.
- Develop a neural network from scratch. This is suitable for complex facial recognition systems with multipurpose functionality. It takes more time and requires a lot of images for the training dataset.
When developing a network architecture it’s better to apply convolutional neural networks, as they are more effective in image recognition. The main benefit of the neural network in facial recognition is the ability to train a system to capture a complex class of facial patterns. The neural networks are non-linear in the network, so it is a widely used technique for facial recognition. Many common recognition problems like character or object recognition have been successfully solved by neural networks.
Join us in San Francisco on July 11-12, where top executives will share how they have integrated and optimized AI investments for success and avoided common pitfalls.
Challenges and next steps in facial recognition
Despite the variety of facial recognition systems and the technological advancements achieved in recent years, facial detection systems still have some inherent challenges.
Pose. Pose variation is one of the main issues, as the majority of facial recognition methods rely on head-on images. There are multiple approaches to mitigate this. The multi-image-based approach requires several images for training. The idea is to make templates of all the possible pose variations. The single-model-based approach uses several examples of a subject during training, but only one image at recognition. The aim is to include every pose variation in a single image. There’s also a hybrid approach that tries to use a few images and model the rotation operations so that every single pose can be deduced from just one frontal photo and another profile image.
Illumination. Illumination variations in images are an essential factor in facial recognition. The intensity of the color in a pixel can vary greatly depending on lighting conditions. The big problem is that two images of the same subject with different illumination may show more differences between them compared to another subject. To solve this problem, some recognition methods try to model a lighting template in order to build illumination invariant algorithms. The goal of these methods is to make shape and texture independent from light variations.
Occlusion is another challenging facial recognition issue. When one or several parts of the face are blocked, it’s impossible to take an input image. This can happen due to accessories (glasses, masks, etc.), moustaches, or beards. This can seriously affect the recognition system’s classification process.
Expressions. Different emotions cause different facial expressions. These differences in facial expressions change the appearance of the face and may cause a facial detection system to inaccurately match images stored in the database.
There are other problems related to facial expression, optical technology, and memory usage, however they don’t pose a serious problem to how facial recognition works. Although automated facial recognition technology is extremely popular and the market is rife with advanced technologies, there is plenty of room for additional innovations in the field.
VentureBeat's mission is to be a digital town square for technical decision-makers to gain knowledge about transformative enterprise technology and transact. Discover our Briefings.