How AI recognizes a Face?

Artificial Intelligence is the intelligence demonstrated by machines. Visualizing and recognizing faces is one of the important characteristics of human intelligence. So, to make a human intelligence level AI, face recognition is one of the biggest criteria. So, how does AI recognizes face? Let's go deeper.


So, before going deeper into this investigation, let me make a few things clear. It's not AI that recognizes faces, it is machine learning.

Machine Learning is a subset of AI. AI has two subsets:

  • Machine Learning
  • Deep Learning


Facial Recognition Methods

There are various methods with the help of which AI visualize and recognize faces. Before moving on to those methods, here's a quick fact.

Fact: Vision takes lots of computation; in humans, roughly 10% of all calories consumed are burned in vision computation.


  1. Geometric Based/Template Based: In template matching, the patterns are described by samples, prototypes, pixels, textures, etc. The recognition function is usually a similarity or objective measure.
  2. Statistical Approach: In the Statistical method, the patterns are expressed as features. The recognition function is a discriminant function. Each image is represented as features. Therefore, the goal is to choose and apply the right statistical tool for extraction and review.
  3. Neural Networks: Neural Network has continued to use pattern recognition and classification. Kohonen was the first to show that an artificial neural network could be used to recognize aligned and normalized faces. Neural Networks methods are the most efficient method for face analysis.

  • Neural Networks with Gabor Filters
  • Neural Networks and Hidden Markov Models
  • Fuzzy Neural Networks


The Working

There are various ways to face recognition which followed a described algorithm:

  • The image is prepared for preprocessing.
  • Then face recognizer is trained to recognize faces.
  • After training, we test the recognizer to see the results.


The OpenCV face recognizer is of three types:

  1. Eigen Face Recognizer: EigenFaces face recognizer looks at all the training images of all the characters as a complex and try to understand the elements. It selects the elements that are necessary and helpful. This way it not only extracts the essential elements from the training data but also saves memory by refusing the less significant portions.
  2. FisherFaces Recognizer: Fisherfaces algorithm, removes valuable features that discriminate one person from the others rather than obtaining useful features that represent all the faces of all the persons. These pieces of one person do not dominate over the others, and you have the features that differentiate one person from the others.
  3. Local Binary Pattern Histogram: Eigenfaces and Fisherfaces are both influenced by light, and in real life, we cannot warrant perfect lighting conditions. LBPH face recognizer is an enhancement to overwhelm this disadvantage. The idea is not to find the local features of an image. LBPH algorithm tries to find the local structure of an image, and it does that by analyzing each pixel with its neighboring pixels.


The End Notes

That's how machine learning helps in analyzing faces. I hope you liked it. Please comment on your views about this article and share this article with your geeky friends. Have a good one guys. 

Cheers!

Your Views

Post a comment

0 Comments