Post on 15-Jul-2015
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.
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
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
………..
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
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
Subtract the Mean from each Face Vector
………..
Ф𝒊
𝜳
Converted
Face vector space
𝑀= 16 images in the training set
− =
𝜞𝟏 𝚿 Ф𝟏
Normalized Face vector
Calculate the Covariance Matrix (𝑪)
C = 𝑛=116 Ф𝑛Ф𝑛
𝑇
= 𝐴𝐴𝑇
= {(𝑁2×𝑀). (𝑀 × 𝑁2)}
= 𝑁2× 𝑁2
= (10304 × 10304)
Where 𝐴 = {Ф1, Ф2, Ф3, ……… ., Ф16}
[𝐀 = 𝐍𝟐 ×𝐌]……….. 𝜳
Ф𝒊
Face vector space
Converted
𝑀= 16 images in the training set
Converted
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 (𝒖𝒊)
C = 10304 × 10304
10304 eigenvectors
Each 10304×1 dimensional
……….. 𝜳
Ф𝒊
Face vector space
Converted
………
𝒖𝒊
𝑀= 16 images in the training set
Find the Significant 𝑲𝒕𝒉 eigenfaces
Where, 𝑲 < 𝑴
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
Consider lower dimensional subspace
……….. 𝜳
Ф𝒊
Lower dimensional Sub-space
Face vector space
Converted
𝑀= 16 images in the training set
𝑳 = 𝑨𝑻𝑨
= 𝑴×𝑵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
𝑳 = 𝑨𝑻𝑨
= 𝑴×𝑵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
𝑳 = 𝑨𝑻𝑨
= 𝑴×𝑵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 inThe ORIGINAL dimensionality of theFace vector space
𝑳 = 𝑨𝑻𝑨
= 𝑴×𝑵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
𝑳 = 𝑨𝑻𝑨
= 𝑴×𝑵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
C = 𝐴𝐴𝑇
10304 eigenvectors
………
Each 10304×1 dimensional
𝒖𝒊
The K selected eigenface
……….. 𝜳
Ф𝒊
Face vector space
Converted
𝑀= 16 images in the training set
𝛚𝟏 𝛚𝟐 𝛚𝟑 𝛚𝟒 𝛚𝟓 𝛚𝐊⋯⋯⋯
+ 𝜳 (Mean Image)
Each face from Training set can be represented a weighted sum of the K Eigenfaces + the Mean face
𝛚𝟏 𝛚𝟐 𝛚𝟑 𝛚𝟒 𝛚𝟓 𝛚𝐊⋯
+ 𝜳 (Mean Image)
The K selected eigenface
Each face from Training set can be represented aweighted sum of the K Eigenfaces + the Mean face
………..
Ф𝒊
𝜳
Converted
Face vector space
𝑀= 16 images in the training set
Weight Vector (𝜴𝒊)
𝛚𝟏 𝛚𝟐 𝛚𝟑 𝛚𝟒 𝛚𝟓 𝛚𝐊⋯
+ 𝜳 (Mean Image)
= 𝜴𝒊 =
𝝎1𝒊
𝝎2𝒊
𝝎3𝒊
.
.
.𝝎𝑲𝒊
Each face from Training set can be represented aweighted 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.
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