Face Detection vs Face Recognition
People use the words Face Detection and Recognition interchangeably to describe an application that uses facial images to enable or perform a mechanism. Having worked in the computer vision field I keep trying to educate people about the difference between detection and recognition whenever I hear someone using it incorrectly and this can be considered as another attempt.
Let’s start with the definition.
Detection is defined as “the action or process of identifying the presence” whereas
Recognition is defined as “the action or process of recognizing or being recognized”.
When the presence of a face in an image is found, it is considered as face detection whereas
When the presence of a face in the image is already known and the face is recognized as the face of a “John Smith” from a known person list, it is considered as face recognition.
In simple words, if you are shown an image of a person who you have never met or known you would say, “I don’t know who this is”; the use of the word “who” and not “what” indicates that you understand the image shown to you is of a human being or the face of a person. Correspondingly when you are perusing through your family photos, you recognize the faces of your family members.
Another differentiating factor is that for face detection the knowledge of generic facial features is enough, however for face recognition, the knowledge of the uniqueness of a person’s face and its features is necessary. In other words, if an algorithm needs to recognize your face in the future, it must have previously analyzed or processed an image of your face. For example, when you upload an image to Facebook and it prompts you to tag the faces of the people in it by giving suggestions on who that might be from your friend list. The algorithm that locates the face is the detection algorithm and the suggestions are from the recognition algorithm.
And the mystery unfolds!