This document describes a principal component analysis (PCA) based face recognition system. It discusses two main steps: initialization operations on the training faces and recognizing new faces. For training, faces are converted to vectors and normalized. Eigenvectors are calculated from the covariance matrix and used to reduce dimensionality. Each training face can then be represented as a linear combination of eigenvectors. For recognition, a new face is converted to a vector, normalized, projected onto the eigenspace to get its weight vector, and compared to stored weight vectors using Euclidean distance to identify the face.
2. Face Recognition using PCA Algorithm
PCA-
Principal Component Analysis
Goal-
Reduce the dimensionality of the data by retaining as much as variation
possible in our original data set.
The best low-dimensional space can be determined by best principal-
components.
3. Eigenface Approach
Pioneered by Kirby and Sirivich in 1988
There are two steps of Eigenface Approach
Initialization Operations in Face Recognition
Recognizing New Face Images
4. Steps
Initialization Operations in Face Recognition
Prepare the Training Set to Face Vector
Normalize the Face Vectors
Calculate the Eigen Vectors
Reduce Dimensionality
Back to original dimensionality
Represent Each Face Image a Linear Combination of all K Eigenvectors
Recognizing An Unknown Face
6. ………..
112 × 92
10304 × 1𝜞𝒊
Face vector space
Images converted to vector
Each Image size
column vector
𝑀= 16 images in the training set Convert each of face images in
Training set to face vectors
8. Average face vector/Mean image (𝜳)
𝑀= 16 images in the training set
……….. 𝜳
Converted
Face vector space
Mean Image 𝜳
𝜞𝒊
Calculate Average face vector
Save it into face vector space
9. Subtract the Mean from each Face Vector
………..
Ф𝒊
𝜳
Converted
Face vector space
𝑀= 16 images in the training set
− =
𝜞 𝟏 𝚿 Ф 𝟏
Normalized Face vector
12. Calculate the Covariance Matrix (𝑪)
C = 𝑛=1
16
Ф 𝑛 Ф 𝑛
𝑇
= 𝐴𝐴 𝑇
= {(𝑁2× 𝑀). (𝑀 × 𝑁2)}
= 𝑁2× 𝑁2
= (10304 × 10304)
Where 𝐴 = {Ф1, Ф2, Ф3, … … … ., Ф16}
[𝐀 = 𝐍 𝟐
× 𝐌]……….. 𝜳
Ф𝒊
Face vector space
Converted
𝑀= 16 images in the training set
Converted
13. C = 10304 × 10304
10304 eigenvectors
………
Each 10304×1 dimensional
……….. 𝜳
Ф𝒊
Face vector space
𝒖𝒊
Converted
𝑀= 16 images in the training set
In 𝑪, 𝑵 𝟐 is creating 𝟏𝟎𝟑𝟎𝟒 eigenvectors
Each of eigenvector size is 𝟏𝟎𝟑𝟎𝟒 × 𝟏 dimensional
Calculate Eigenvector (𝒖𝒊)
14. C = 10304 × 10304
10304 eigenvectors
Each 10304×1 dimensional
……….. 𝜳
Ф𝒊
Face vector space
Converted
………
𝒖𝒊
𝑀= 16 images in the training set
Find the Significant 𝑲 𝒕𝒉 eigenfaces
Where, 𝑲 < 𝑴
15. C = 10304 × 10304
10304 eigenvectors
Each 10304×1 dimensional
……….. 𝜳
Ф𝒊
Face vector space
Converted
………
𝒖𝒊
𝑀= 16 images in the training set
Make system slow
Required huge calculation
19. Consider lower dimensional subspace
……….. 𝜳
Ф𝒊
Lower dimensional Sub-space
Face vector space
Converted
𝑀= 16 images in the training set
20. 𝑳 = 𝑨 𝑻 𝑨
= 𝑴 × 𝑵2 𝑵2 × 𝑴
= 𝑴 × 𝑴
= 16 × 16
… … . .
16 eigenvectors
Each 16 ×1 dimensional
Calculate eigenvectors 𝒗𝒊
𝒗𝒊
……….. 𝜳
Ф𝒊
Lower dimensional Sub-space
Face vector space
Converted
𝑀= 16 images in the training set
Calculate Co-variance matrix(𝑳)
of lower dimensional
21. 𝑳 = 𝑨 𝑻 𝑨
= 𝑴 × 𝑵2
𝑵2
× 𝑴
= 𝑴 × 𝑴
= 16 × 16
… … . .
16 eigenvectors
Each 16 ×1 dimensional
𝒖𝒊 V/S 𝒗𝒊
𝒗𝒊
……….. 𝜳
Ф𝒊
Lower dimensional Sub-space
Face vector space
Converted
10304 eigenvectors
………
Each 10304×1 dimensional
𝒖𝒊
C = 10304 × 10304
v/s
𝑀 images in the training set
22. 𝑳 = 𝑨 𝑻 𝑨
= 𝑴 × 𝑵2 𝑵2 × 𝑴
= 𝑴 × 𝑴
= 16 × 16
Select K best eigenvectors
……….. 𝜳
Ф𝒊
Lower dimensional Sub-space
Face vector space
Converted
… … . .
16 eigenvectors
Each 16 ×1 dimensional
𝒗𝒊
Selected K eigenfaces MUST be in
The ORIGINAL dimensionality of the
Face vector space
24. 𝑳 = 𝑨 𝑻 𝑨
= 𝑴 × 𝑵2 𝑵2 × 𝑴
= 𝑴 × 𝑴
= 16 × 16
……….. 𝜳
Ф𝒊
Lower dimensional Sub-space
Face vector space
Converted
… … . .
16 eigenvectors
Each 16 ×1 dimensional
𝒗𝒊
A=
𝒖𝒊 = 𝑨𝒗𝒊
10304 eigenvectors
………
Each 10304×1 dimensional
𝒖𝒊
𝑀= 16 images in the training set
25. 𝑳 = 𝑨 𝑻 𝑨
= 𝑴 × 𝑵2 𝑵2 × 𝑴
= 𝑴 × 𝑴
= 16 × 16
……….. 𝜳
Ф𝒊
Lower dimensional Sub-space
Face vector space
Converted
… … . .
16 eigenvectors
Each 16 ×1 dimensional
𝒗𝒊
A=
𝒖𝒊 = 𝑨𝒗𝒊
10304 eigenvectors
………
Each 10304×1 dimensional
𝒖𝒊
𝑀 images in the training set
26. C = 𝐴𝐴 𝑇
10304 eigenvectors
………
Each 10304×1 dimensional
𝒖𝒊
The K selected eigenface
……….. 𝜳
Ф𝒊
Face vector space
Converted
𝑀= 16 images in the training set
27. Result of Eigenfaces Calculation
Figure: The selected K eigenfaces of our set of original images
29. 𝛚 𝟏 𝛚 𝟐 𝛚 𝟑 𝛚 𝟒 𝛚 𝟓 𝛚 𝐊⋯ ⋯ ⋯
+ 𝜳 (Mean Image)
Each face from Training set can be represented a weighted sum of the K Eigenfaces + the Mean face
30. 𝛚 𝟏 𝛚 𝟐 𝛚 𝟑 𝛚 𝟒 𝛚 𝟓 𝛚 𝐊⋯
+ 𝜳 (Mean Image)
The K selected eigenface
Each face from Training set can be represented a
weighted sum of the K Eigenfaces + the Mean face
………..
Ф𝒊
𝜳
Converted
Face vector space
𝑀= 16 images in the training set
31. Weight Vector (𝜴𝒊)
𝛚 𝟏 𝛚 𝟐 𝛚 𝟑 𝛚 𝟒 𝛚 𝟓 𝛚 𝐊⋯
+ 𝜳 (Mean Image)
= 𝜴𝒊 =
𝝎1
𝒊
𝝎2
𝒊
𝝎3
𝒊
.
.
.
𝝎 𝑲
𝒊
Each face from Training set can be represented a
weighted sum of the K Eigenfaces + the Mean face
A weight vector 𝛀𝐢 which is the
eigenfaces representation of
the 𝒊𝒕𝒉
face. We calculated
each faces weight vector.
33. Convert the
Input to Face
Vector
Normalize the
Face Vector
Project Normalize
Face Vector onto
the Eigenspace
Get the Weight
Vector
𝜴 𝒏𝒆𝒘 =
𝝎 𝟏
𝝎 𝟐
𝝎 𝟑
.
.
.
𝝎 𝑲
Euclidian Distance
(E) = (𝛀 𝒏𝒆𝒘 − 𝛀𝒊)
If
𝑬 < 𝜽 𝒕
No
Unknown
Yes
Input of a
unknown
Image
Recognized as