Project 3: Eigenfaces

Kathleen Tuite

May 12, 2008

Eigenfaces and Average Face

This face is the mean (average) face of all the students in the class. (Size 25x25 pixels.)


These are the top 10 eigenfaces.

Smiling Students Recognized with 10 Eigenfaces

Smiling on the top row and closest match on the bottom row. (10/21 matched successfully!)
match match match match match match match match match match

Plot of Face Recognition Rate with Different Numbers of Eigenfaces

More eigenfaces appear to increase the recognition rates, except in this case, 9 eigenfaces also do fairly well. However, no more than 13 faces get recognized here because the smiling faces are in some cases quite different from the non-smiling faces that were used as training data. More instances of the same people in different poses would probably lead to higher correct identification rates even of unseen poses.

Questions

  1. More eigenfaces means you could more preciesly reconstruct faces already in your image set, but the eigenfaces past about 10 or so seem to have random or overly specific information in them that doesn't help the face-recognition task.
  2. Face 4 and face 8 were quite common for being incorrectly matched to.
    The first face is probably close to the average face, lacks too many distinguishing characteristics, and thus matches well to many faces.
    In the second face, Steve Seitz's beard matches the shape/shadow of some people's smiles.
    Notice how the people with the biggest smiles are either matched with Steve, or with themselves.


    The correct matches were further down the list, usually within the first 3 matches.

Action Shots - Cropping and Recognizing Faces

The faces recognized in this section were found using 11 eigenfaces of size 25x25 pixels.
A color cue was used to help reject non-face patches: If the pixel's red value in the center of the patch was lower than 130, the patch was thrown out and not counted as possibly a face.

Dan & baby, found Dan's face first, his hand second, and the wall art third.
Did not find baby's face.

Scale: .45 to .55, step: .01.

This next image of Aseem was what caused me to add the color queue; patches of water were setting off the face detector... though I think using more eigenvalues and setting the MSE threshold higher seems to have fixed the problem. Nevertheless, here are some related images I came up with.

The first image here is how face-like each pixel in the smallest scale of the image are. Dark means more face-like. A lot of area on the edge of the face is clearly not facelike, but some of the water in the background was strong enough to originally set off the detector.

The second image is each pixel in the minimum scale that was deemed face-like enough (above the MSE threshold of about 2000) and the red value of that pixel. Now the best/reddest pixels in the face are in white and rejected positions are all black.



Scale: .45 to .55, step: .01.

Here's a group picture with all 3 faces recognized.


Scale: .45 to .55, step: .01.

This is a picture of me which the face-recognizer failed miersably at. The chalk set off the face recognition too much for me to even be in the top 10 faces. Notice all the dark face-like reigons in the left picture and all the red-enough positions in the right picture, even with the red threshold turned up to 170.



Scale: .30 to .55, step: .01.

A group shot... of Chewbacca, Tony and Aaron. Chewbacca apparently has a lot of faces in his fur... but it can sort of detect his actual face.


Scales: .85 to .99 and .70 to .99 respectively, with the first image using only 2-x20 eigenfaces.

Here is a group shot from a UCSC backpacking club trip where my face-detector failed to recognize any face.


Scale: .60 to .70, step: .01.

Questions

  1. The scales are given with each image...
  2. as well as some explanation of false positives.
    It seems that getting the scale range right is realy important, and that depends on the side of the faces in the image because scale means how to get from image-face-size to 25x25 pixel eigenface-size.
  3. Another big factor contributing to this failing on my pictures is I think that my pictures are too bright, lighting is too unform so the faces look very little like the more-heavily-shadowed pictures in the training image. That is why my face-patches are seeking out high-texture areas.