Just a few years ago, programmers needed to be proficient in writing algorithms to create a facial recognition app. But now, with mature algorithms open to the outside world, more and more developers can just focus on developing products for vertical industries.

Released by investigators in the studies of Chinese map AI industry also has an interesting set of data, the AI of enterprises in China at present, nearly 8 into a focused on the application layer, including AI industry solution accounted for up to 40.7%, from commuters face recognition attendance, to finance the App face identity check, and then to the hospital and government affairs hall of face recognition, And the face check at the station…

At present, there are open source algorithms library such as OpenCV on the market, and many chip manufacturers’ products also have simple algorithms. At the same time, major professional algorithm manufacturers will open relevant technologies, such as rainbow Soft vision open platform providing free, offline face recognition SDK. For developers, it is very important to further understand the performance of algorithms in the face of various algorithms. Therefore, this paper introduces the algorithm principle, application scenarios and key indicators one by one.

Face recognition algorithm principle brief introduction

Before introducing key performance indicators, we need to clarify the technical principles of face recognition.

The so-called Face Recognition (Face Recognition) is to detect, recognize and track faces in images. Current face recognition usually uses convolutional neural network (CNN) to learn massive face images, and then extracts the corresponding face feature values from the input images.

Face eigenvalue is the information set composed of facial features. Human memory and recognition of a face, mainly by the naked eye visible features, such as face, double eyelids, black eyes, blue hair, flat nose… But artificial intelligence is different. It mainly uses convolutional neural network (CNN) to learn massive face pictures. They outperform us in recognition by abstracting facial features that are difficult for us to understand.

Face eigenvalue is a set of spatial vectors, which is also the basis of face comparison. The eigenvalues extracted from different photos of the same face are very close to each other in the feature space, and the faces of different people are far apart in the feature space. In other words, it’s more likely to be the same person.

It should also be noted that face recognition and face detection are not the same technology. Face detection is a link in the whole process of face recognition. In the use of cameras to collect images or video streams containing faces, first of all, it is necessary to automatically detect and extract human face detection technology, and then enter the face image pretreatment and the most core face feature extraction.

In the actual commercial practice, face detection can also be used independently of face recognition. Typical applications, such as AI temperature measuring machine, which is very hot at home and abroad recently, only activate the temperature measuring module when the face is detected, so as to reduce the loss and energy consumption of the product in long-term operation. This process does not need to recognize the face.

[Knowing these metrics, you can also evaluate algorithms]

In the ideal state, the higher the accuracy of face recognition, the better, but the algorithm in the product will be affected by backlight, dark light, strong light, recognition Angle and many other practical factors. Therefore, it is of little reference value to consider the recognition accuracy of the algorithm separately from the application scenario.

So how can we judge an algorithm reasonably and effectively? The well-known free algorithm platform in the industry — Hongsoft vision open platform launched a series of technical open courses “learning face recognition from zero”, the key indicators of the algorithm test were introduced in detail. Interested developers can click on the link below for further details.

“From zero to study face recognition, face recognition algorithm introduction ai.arcsoft.com.cn/course/vide…

“From zero to study face recognition, face detection algorithm is introduced, ai.arcsoft.com.cn/course/vide…

Key indicators of face recognition:

In most cases, we use DET curves based on FAR (false acceptance rate, also known as misidentification rate, that is, the probability of misidentifying someone as someone else) and FRR (false rejection rate, that is, I have registered in the database, but the comparison similarity reaches an unpredetermined value) as reference for evaluation.

(1) False rejection rate (FAR)

The similarity value range is divided into several equal grades, and several different thresholds are obtained. The FRR of different thresholds is calculated as follows: FRR(S) = the number of same-person comparison similarity lower than threshold S/total number of same-person comparison × 100%;

(2) False acceptance rate (FRR)

The similarity value range is divided into several equal levels, and several different thresholds S are obtained. FAR of different thresholds S is calculated as follows: FAR(S) = the number of similarity of non-same-person ratio not lower than threshold S/total number of non-same-person ratio ×100%;

Ideally, the lower the FAR and FRR are, the better. However, the two indicators are a seesaw. A decrease of one indicator usually means an increase of the other indicator, so a balance between the two indicators needs to be achieved. It is generally believed that when FAR reaches the normal market level, the lower FRR is, the better the performance of the face recognition algorithm will be.

At present, most scenarios in the market will develop different standards according to their own security requirements. For example, in the access control scenario, FAR is required to be less than 1/100,000, and the lower FRR is, the better the algorithm effect is. For example, algorithm 1 is better than Algorithm 2.

Key indicators of face detection:

To evaluate a face detection algorithm, there are also four indicators: detection rate, false positive rate, FPS and IOU.

In general, we also hope that the higher the detection rate is, the better, and the lower the false positive rate is, the more perfect, but the two need an optimal balance, and we can use ROC curve to solve this problem.

(1) True Positive: it is detected that it is indeed a human face, but it is still a human face

(2) False Positive: it is detected as a face, but it is actually background

(3) False Negative: it is detected as background, but it is actually a face

(4) True Negatives to detect the background, which is actually the background

In addition to the algorithm model itself, we can also improve the overall face recognition effect from engineering and application perspectives.

Application Angle: Develop quality model to evaluate the quality of detected face, and not identify the poor quality, such as FQ(Face image quality detection algorithm) of Rainbow Soft Vision Open platform

Engineering Angle: Impose scene restrictions, such as face unlocking, face gate and venue check-in, requiring users to face the camera under good lighting conditions to avoid collecting poor quality pictures.

Related products inRainbow soft face recognition open platformTo understand!