COMP 776 Assignment 03 - Eigenfaces for recognition

Eric LaForce
4/17/08

Overall

In this assignment we were required to create a face recognition system based on eigenfaces using a nearest neighbor classifier. The original research can be found here. The power point slides that supplements this paper can be found here.

For this assignment we used a database of 400 images. We used 10 images per person for 40 people. We used 7 images per person for training, and 3 images per person for testing.
The algorithm for the work is as follows:
Once we had our training data the following algorithm will classify our test images using a nearest neighbor classifier:

Code

faces.m

Results

Below I have presented the results of this assignment. I present the mean face image. Then I present the top 20 eigenvectors. Then I present all the incorrect classifications of my nearest neighbor search. The top row of images are the original test images, and the bottom row is the person it thinks the test image is. Next I present The results of my classification for all 40 people classifying 3 test images a piece with the training data. This classification was done using 100 eigenvectors and I acheived 90% accuracy. Finally I present a graph demonstrating how the k value (number of principal components to use) affects the classification rate. As you can see low k values produce very poor classification. As k increases the classification rate increases rapidly and levels off very quickly. So we can assume that the top 20 eigenfaces provides enough information to perform nearest neighbor classification







Classification 1
Classification 2
Classification 3
Classification 4
Classification 5
Classification 6
Classification 7
Classification 8
Classification 9
Classification 10