WCECS2008 pp1166-1171 2
WCECS2008 pp1166-1171 2
4. Calculate the m x m covariance matrix C from the outer able to learn which regions are good for recognition and which
product of matrix B with itself, regions are not. Second, to recognize a set image we must
measure the distance to linear subspace for each person. While
C = E [ Dev Dev] = E [ Dev . Dev* ] = (1/n) Dev . Dev*(8)
this in an improvement over a correlation scheme that needs a
5. Compute the matrix V of eigenvectors of the covariance large number of images for each class, it is still too
matrix C, computationally expensive. Finally from storage point of view
V-1CV = D, (9) linear subspace algorithm must keep five images in memory for
Where D is the diagonal matrix of eigen values of C. every person.
B. KNN CLASSIFIER
Matrix D will take the form of an m x m diagonal matrix, where
The simplest classification scheme is a nearest neighbor
D[p,q] =m for p = q = m (10) classification in the image space. Under this scheme an image in
m is the mth eigen value of the covariance matrix C, and matrix the test set is recognized by assigning to it the label of the closest
V, also of dimension m x m, contains m column vectors, each of point in the learning set, where distance are measured in image
length m, which represent the m eigenvectors of the covariance space. If all images have been normalized to be zero mean and
matrix C. The eigenvalues and eigenvectors are ordered and have unit variance, then this procedure is equivalent to choosing
paired. The mth eigenvalue corresponds to the mth eigenvector. the image in learning set that best correlates with the test image.
Because of normalization process, the result is independent of
If the data is concentrated in a linear subspace, this provides a light source intensity and the effects of a video cameras
way to compress data without losing much information and automatic gain control. Feature selection is achieved using this
simplifying the representation. By picking the eigenvectors [1] learning algorithm by constraining each classifier to depend on
having the largest eigenvalues, there is a chance of losing some only a single feature [14].
information. A fixed number of eigenvectors and their respective
eigenvalues can be chosen and a representation, or abstraction of The Euclidean distance metric [4] is often chosen to determine
the data is obtained. In this way the face images xi are projected the closeness between the data points in KNN. A distance is
into the subspace by throwing away the components assigned between all pixels in a dataset. Distance is defined as
corresponding to zero eigenvalue. By PCA projection, the the Euclidean distance between two pixels. The Euclidean metric
extracted features are statistically uncorrelated and the rank of is the function d: Rn X Rn R that assigns to any two vectors in
the new data matrix is equal to the number of features Euclidean n-space X=(x1,, xn) and Y=( y1,, yn) the
(dimensions). number,
The Eigen face method is also based on linear projection of d(x,y) = (( x1 - y1)2 + .. + (xn - yn) 2) (11)
the image space to a low dimensional feature space. However the This gives the "standard" distance between any two vectors in Rn.
eigen face method which uses principal component From these distances, a distance matrix is constructed between
analysis(PCA) for dimensionality reduction yields projection all possible pairings of points (x, y).
directions that maximizes the total scatter across all classes i.e.
all images of all faces. In choosing the projection which C. KNN ALGORITHM
maximizes total scatter, PCA retains some unwanted variations 1) Each data pixel value within the data set has a class label in the
due to lighting and facial expression. The variations between set, Class = {c1,...,cn}.
images of the same face due to illumination and viewing 2) The data points', k-closest neighbors (k being the number of
direction are almost always larger than image variations due to neighbors) are then found by analyzing the distance matrix.
change in face identity. Thus PCA projections are optimal for 3) The k-closest data points are then analyzed to determine
reconstructing from a low dimensional basis; they may not be which class label is the most common among the set.
optimal from discrimination point of view. 4) The most common class label is then assigned to the data point
being analyzed.
PCA is used for dimensionality reduction in a data set by
retaining those characteristics of the data set that contribute most D. KNN PERFORMANCE VS CHOICE OF K
to its variance, by keeping lower-order principal components and 1) When noise is present in the locality of the query instance, the
ignoring higher-order ones. Such low-order components often noisy instance(s) win the majority vote, resulting in the incorrect
contain the "most important" aspects of the data, which are class being predicted. A larger k could solve this problem.
projected as Eigenfaces. 2) When the region defining the class, or fragment of the class, is
If there is no noise or self shadowing, the linear subspace so small that instances belonging to the class that surrounds the
would achieve error free classification under any lighting fragment win the majority vote. A smaller k could solve this
conditions. Nevertheless, there are several reasons to look else problem. The KNN shows superior performance for smaller
where, first due to self shadowing, facial expressions, some values of k compared to larger values of k.
regions of the face have variability that does not agree with linear Instances can be considered as points within an n-dimensional
subspace model. Given enough images of faces, we should be instance space where each of the n-dimensions corresponds to
IV. IMPLEMENTATION From the Table III, it is observed that KNN classification
The work is implemented in Matlab. Yale Database is used for algorithm outperforms CB classification algorithm in
testing and training purposes. The database contains 165 classification accuracy [7].
grayscale images in GIF format of 15 individuals. There are 100
images per subject in the database.
Accuracy (Normalized)
0.7
The time taken for execution of each module in Pentium IV 0.6
processor is given in Table I. 0.5
0.4 KNN
Table I. Execution time for Face recognition 0.3 CB
0.2
0.1
Process Time Duration (in Seconds) 0
PFC extraction 0.1935 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
KNN classification 0.2325 Ratio Of Training Data
The confidence values for the recognition of a person is Fig 2. Comparison of KNN with Concept Vector based classifier
calculated using the Euclidean distance between the PCA
projected values of the test image and PCA projected values of
the train database. This value determines whether recognition of V. EXPERIMENTAL RESULTS
a face image using this method is dependable or not. When the The experimental results for face authentication system are
confidence value is low recognition is not dependable. The explained below. The input RGB image is converted into YCbCr
confidence value obtained for different test images are tabulated color space. Here we extract Cb and Cr part separately, as shown
in Table II. in Fig. 3 and 4.
The confidence values were obtained for ten test subjects, of
which eight subjects were recognized, as those images were in
the train database with a confidence value above the threshold
value and the other two subjects were not recognized
successfully as their confidence values fall below the threshold.
50
100
150
Fig 10. Classifier output [14] Alex Pentland, Baback Moghaddam, and Thad Starner (1994),
View-Based and Modular Eigenspaces for Face Recognition, IEEE Conf.
VI. CONCLUSION on Computer Vision and Pattern Recognition, MIT Media Laboratory
Tech. Report No. 245.
The proposed DR algorithm localizes the face from the given
input image using the skin color detection method where the
skin regions are segmented and face is located using template
matching. The detected face image is projected using Eigen face
analysis and classified using the K nearest neighborhood (KNN)
classifier. This algorithm is efficient as it can be integrated with
the output from multi-modal sensors and thus can be used as part
of multi-sensor data fusion.
ACKNOWLEDGMENT
Authors thank Tata Consultancy Services for funding this
project.
REFERENCES