Facial recognition technology refers to the use of computer technology for analysis and comparison to recognize faces. Facial recognition is a popular field of computer technology research, which includes facial tracking and detection, automatic adjustment of image magnification, nighttime infrared detection, automatic adjustment of exposure intensity, and other technologies.
Facial recognition technology belongs to biometric recognition technology, which distinguishes individual organisms (generally referring to humans) based on their own biological characteristics.
Technical Introduction
Facial recognition technology is based on human facial features. When inputting a facial image or video stream, it first determines whether there is a face present. If there is a face, it further provides information on the position, size, and position of each major facial organ. Based on this information, further extract the identity features contained in each face and compare them with known faces to identify the identity of each face.
The broad definition of facial recognition actually includes a series of related technologies for building facial recognition systems, including facial image acquisition, facial localization, facial recognition preprocessing, identity confirmation, and identity search; Narrowly defined, facial recognition refers to a technology or system that uses facial recognition for identity confirmation or search.
The biometric features studied in biometric recognition technology include face, fingerprint, palm print, iris, retina, voice (speech), body shape, personal habits (such as the force and frequency of typing a keyboard, signature), etc. Corresponding recognition technologies include facial recognition, fingerprint recognition, palm print recognition, iris recognition, retina recognition, speech recognition (which can be used for identity recognition or speech content recognition, only the former belongs to biometric recognition technology), body shape recognition, keyboard typing recognition, signature recognition, etc.
Technical Principles
(1) Facial detection
Facial detection refers to determining the presence of facial features in dynamic scenes and complex backgrounds, and separating these features. There are generally the following methods:
① Reference template method
Firstly, design one or several standard face templates, then calculate the degree of matching between the test collected samples and the standard template, and determine the presence of a face through a threshold.
② Facial Rule Method
Due to the structural distribution characteristics of faces, the so-called face rule method extracts these features to generate corresponding rules to determine whether the test sample contains faces.
③ Sample learning method
This method adopts the method of artificial neural networks in pattern recognition, which generates classifiers through learning from both facial and non facial sample sets.
④ Skin tone model method
This method is based on the relatively concentrated distribution of facial skin color in the color space for detection.
⑤ Feature sub face method
This method treats all sets of face images as a face image subspace and determines the existence of face images based on the distance between the detection sample and its projection in the subspace.
It is worth mentioning that the above 5 methods can also be comprehensively adopted in actual detection systems.
(2) Face tracking
Facial tracking refers to dynamic target tracking of the detected facial features. Specifically, model-based methods or a combination of motion and model based methods are adopted. In addition, using skin color models for tracking is also a simple and effective approach.
(3) Facial comparison
Facial comparison is the process of confirming the identity of the detected facial features or conducting target searches in the facial image database. This actually means comparing the sampled images with the inventory images in sequence and finding the best matching object. So, the description of the facial image determines the specific method and performance of facial recognition. The main methods used are feature vectors and facial pattern templates:
① Eigenvector method
This method first determines the size, position, distance, and other attributes of facial features such as iris, nasal wings, and mouth corners, and then calculates their geometric feature quantities, which form a feature vector describing the facial image.
② Facial pattern template method
This method stores several standard face image templates or face image organ templates in the library. During comparison, all pixels of the sampled face image are matched with all templates in the library using normalized correlation measures. In addition, there are methods that use pattern recognition based autocorrelation networks or combine features with templates.
The core of facial recognition technology is actually "local human feature analysis" and "graphic/neural recognition algorithms". This algorithm is a method that utilizes various organs and characteristic parts of the human face. Compare, judge, and confirm the recognition parameters formed by multiple data corresponding to geometric relationships with all original parameters in the database. It is generally required that the judgment time be less than 1 second.
Identification process
Generally, there are three steps:
(1) Firstly, establish a facial profile file. Using a camera to capture facial image files of unit personnel or taking their photos to form facial image files, and encoding and storing these facial image files into facial print.
(2) Obtain the current human face image. Capture the face image of the current entry and exit personnel using a camera, or take a photo as input, and generate a face pattern code from the current face image file.
(3) Compare the current facial pattern code with the archive inventory. Retrieve and compare the current facial image's facial pattern code with the facial pattern code in the archive inventory. The above "facial pattern encoding" method works based on the essential features and beginning of the face. This facial pattern encoding can resist changes in light, skin tone, facial hair, hairstyle, glasses, facial expressions, and posture, and has strong reliability, allowing it to accurately identify a person from millions of people. The process of facial recognition can be automatically, continuously, and in real time using ordinary image processing equipment.
Technical process
The facial recognition system mainly consists of four components, namely: facial image acquisition and detection, facial image preprocessing, facial image feature extraction, and matching and recognition.
Facial image acquisition and detection
Facial image acquisition: Different facial images can be captured through a camera lens, such as static images, dynamic images, different positions, and different expressions, all of which can be well captured. When the user is within the shooting range of the collection device, the collection device will automatically search and capture the user's facial image.
Face detection: In practice, face detection is mainly used for preprocessing of face recognition, which accurately calibrates the position and size of the face in the image. Facial images contain rich pattern features, such as histogram features, color features, template features, structural features, and Haar features. Face detection is the process of extracting useful information and utilizing these features to achieve face detection.
The mainstream face detection methods use Adaboost learning algorithm based on the above features. Adaboost algorithm is a classification method that combines some weaker classification methods to create a new and stronger classification method.
In the face detection process, the Adaboost algorithm is used to select some rectangular features (weak classifiers) that best represent the face. The weak classifier is constructed into a strong classifier through weighted voting, and then the trained strong classifiers are concatenated to form a cascaded structure of a stacked classifier, effectively improving the detection speed of the classifier.
Facial image preprocessing
Facial image preprocessing: The preprocessing of facial images is based on the results of facial detection, processing the images and ultimately serving the process of feature extraction. The original images obtained by the system are often limited by various conditions and random interference, and cannot be directly used. It is necessary to perform image preprocessing such as grayscale correction and noise filtering in the early stages of image processing. For facial images, the preprocessing process mainly includes ray compensation, grayscale transformation, histogram equalization, normalization, geometric correction, filtering, and sharpening.
Facial image feature extraction
Facial image feature extraction: The features that facial recognition systems can use are usually divided into visual features, pixel statistical features, facial image transformation coefficient features, facial image algebraic features, etc. Facial feature extraction is aimed at certain features of the face. Facial feature extraction, also known as facial representation, is the process of modeling facial features. The methods of facial feature extraction can be classified into two categories: one is knowledge-based representation methods; Another type is representation methods based on algebraic features or statistical learning.
Knowledge based representation methods mainly obtain feature data that is helpful for face classification based on the shape description of facial organs and their distance characteristics. The feature components usually include Euclidean distance, curvature, and angle between feature points. The face is composed of parts such as the eyes, nose, mouth, chin, etc. The geometric description of these parts and their structural relationships can be used as important features for recognizing the face, and these features are called geometric features. Knowledge based facial representation mainly includes methods based on geometric features and template matching.
Facial Image Matching and Recognition
Facial image matching and recognition: The extracted feature data of the facial image is searched and matched with the feature templates stored in the database. By setting a threshold, when the similarity exceeds this threshold, the matching result is output. Facial recognition is the process of comparing the facial features to be recognized with the obtained facial feature templates, and judging the identity information of the face based on the degree of similarity. This process can be divided into two categories: one is confirmation, which is a one-to-one image comparison process, and the other is recognition, which is a one to many image matching and comparison process.