The world has become so digital such that mathematics and science has contributed so much into the development of technology, and this technology has benefited humans in many areas of life and still continues to do so.
Security has long been and still is one of the things that humans need and because of this technology, face recognition system as one of the biometric system software has been developed.
Face recognition is a process whereby a person’s face is scanned and then matched against a database of known faces, this is a biometric approach. It has long been scientifically proven that every human being has a unique face and that gives us a reasonable information why face recognition system is used in a variety of places where more security is needed such as Airports, Military bases, Government offices etc.
In this topic, I’m more interested in the discussion of how Advanced Linear Algebra is applied in the process of face recognition and how the system uses it. There are two ways that take place in the process of Face recognition, Face Identification and Face Verification. Since the human face has a lot of information, using all of that information consumes time and also results in less efficiency.
Because of that, face recognition systems take important information and discard the rest of the unimportant information. There two approaches that take place in the automatic face recognition via computer and that is content based and face based. The approach of content-based focuses on the correlation between human facial features and the face boundary, its success is very difficult to accomplish for it depends highly on accuracy.
The face recognition system undergoes the five steps to complete its process and that is illustrated by the block diagram below:
Face recognition uses a technique taken from linear algebra called “Principal Component Analysis” (PCA) which is also known as “Karhunen-Loeve” (KL) transform. In this technique, the component matching depends on good data so as to build Eigen faces. What we mean is that it builds M Eigen vectors for an N x M matrix.
They are ordered in a descending order where the largest Eigen value if related with the vector that finds the most variance in the picture. The reason why PCA is used compared to other techniques is because 90% of the total variance is accommodated in 5-10% of the dimensions. When breaking down an image, our main goal is to find an Eigen face with a minimum Euclidean distance from the input face.
What we do is that, we change the input image to a lower dimension M by calculating [V1 V2 … VM]T, whereby each Vi = Wi * ei T, and Vi is the ith coordinate of the facial image in the current space that has come to be the principal component. The vectors ei that are also named Eigen images, can also be interpreted as images and look like faces.
These vectors symbolize the class of faces to which we can categorize a new instance of a face. Since we have the transformed M, we can look for the vector k to which the image is the closest. We then assume that (Ω) Omega represents the involvement of each Eigen face to the representation of an image in a basis created from the eigenvectors.
We can then find k such that εk = || Ω – Ωk|| < θ, where Ωk is the vector relating the kth face class, εk (epsilon k) and θ (theta). If εk is less than some arbitrary value θ, then the new face is classified to belong to class k. There is another technique that Face recognition uses which is called “Linear Discriminant Analysis” (LDA) and is highly known for extraction of feature and the reduction of dimension since Face recognition involves high-dimensional data.
The LDA technique has its limitation called “Singularity problem”, this limitation involves failure when all scatter matrices are in individuals. The way in which the LDA works is that it takes Eigen vectors V whereby the ratio within-class scatter is maximized and the between-class scatters. The LDA calculates the projection V in which the ratio is maximized:
Vopt = arg VmaxVTSBV|VTSWV|And here SB, SW are the between and the within class scatter matrix. Another thing is that Vopt can be calculated by solving the generalized Eigen value problem.
In the face recognition process, a set of images(m) with size N x N are shown by the vectors of size N2. Individually, the faces are shown by Γ1, Γ2, Γ3, …, ΓM whereby the feature vector of a face is contained in an N x N matrix. What happens is that this two-dimensional vector is changed into a one-dimensional vector and we illustrate so as follows:
And the individual face image is shown by the vector Γi as follows:
Γ1=1-21-3 Γ2=13-12 Γ3=21-23 … ΓM=1221
The Eigen vectors that are in correspondence with AAT can easily be computed with the reduced dimensionality whereby AXi is the Eigen vector and λi is the Eigen value.
The mean(average) face image is calculated by the following ψ: =1M i=1MΓi1-21-3 + 13-12 + 21-23 + … + 1221 -1-12-3 so ψ = Γ1+ Γ2+Γ3+…+ΓM M and each face is different from the mean(average) by ϕi= Γi- ψ and this is called the mean(average) centered image.
ϕ1=2-1-10 ϕ2=24-35 ϕ3=32-46 … ϕM=2304
We also calculate a covariance matrix that is defined as C=AAT
whereby A=ϕ1,ϕ2,ϕ3,…,ϕM with size of N2 x N2
A=23-1-2-1100 AT= 2-1-103-210 ,
The Eigen vectors that are in correspondence with the covariance matrix need to be computed but this will be a very long task to do hence we use the definition of a covariance matrix mentioned above.
Thus, AAT=67718 . Now we consider Eigen vectors Vi of ATA such that, ATAXi= λiXi where the Eigen vectors Vi of ATA are X1 and X2 and have a size of 2 x 1. So:
AATAXi= AλiXiAAT(AXi)= λi(AXi)
In the significance of Eigen face approach, it is important that we choose only M’ Eigen vectors from the set of M Eigen vectors such that M’<M to represent the face space. The reason why is because it will decrease the face space dimensionality and increase the speed for face recognition. Another thing is that the M’ should be selected such that the error rates do not increase a lot and are acceptable with regards to the dependence of application for face recognition.
We have spoken earlier before about the Face Database, now what happens is that the use of it is to test an image with the collection of images stored in that database. When the face is scanned and recognized as that not being known, face images are then added to the database for a further procedure of comparing them. This is illustrated as follows:
To summarize the whole process, we can say there is an Acquisition phase whereby a person’s face image is taken as input towards the face recognition system. Afterwards, there is a Pre-processing phase whereby the images are normalized to improve the recognition of the system. And then the Feature extraction phase follows, whereby the pre-processed images are given as input into the feature extraction phase in order to find the key features that will be used for grouping. In this phase, a feature vector is defined in order to show the face image.
The following phase right after this is the Classification phase whereby there is a comparison of the extracted feature face image with the ones contained in the face database, in here the face image is then grouped as either known or not known. And then the last phase is the Face database whereby we mentioned earlier that it matches the test image with the collection(set) of the one’s that are stored in the database.
There is a whole of other things that are involved in the Face recognition system, but we were able to at least touch on a few things that involve linear algebra in the process. We saw the role that PCA and LDA approach played towards the success of this system and because of technology as well as other things too, we can say that the computer is able to do all these processes because of how accurate they are built to be.Bibliography
- An Extension of Principal Component Analysis . (2010). In H. Yu, & J. J. Zhang, Face recognition (pp. 22-33). United Kingdom: InTech.
- Face Recognition Machine Vision System Using Eigenfaces . (2017). Face Recognition Machine Vision System Using Eigenfaces , 1-7.
- Feature Extraction and Representation for Face Recognition . (2010). In O. H. M. Saquib Sarfraz, Face recognition (pp. 1-19). Germany: InTech.
- Neerj, K. (2013). An Application of Linear Algebra for the Optimal Image Recognition. An
- Application of Linear Algebra for the Optimal Image Recognition, 1-5.
- O.Vasilescu, M., & Terzopulos, D. (2002). Multilinear Image Analysis for Facial Recognition. Multilinear Image Analysis for Facial Recognition, 511-514.
- Vinay, H., & Ashwini, M. (2012). Face recognition using eigenface approach. Face recognition using eigenface approach, 1-7.