Part 1—Face Recognition

Average Face

 

EigFaces

 

 

Recognition:

1.     The plot shows that while there is fast improvement from 0 to 8 eigenfaces, after 20, there is no improvement.  This implies that the benefits of adding eigen faces reaches a threshold near this plateau.  Certainly more faces would demonstrate improved classification as eigenfaces approximated higher order terms, but the memory consumption would outweigh the benefits.

2.     Two pairs of mismatches is:

 

There is some similarity, but its not really compelling.  This shows that the eigenfaces can find orthogonally minimized directions that seem counter intuitive, or at least go against ingrained ways of looking at faces.

Part 2--Finding Faces & Cropping

 

Aseem’s picture was not recognized.

 

 

My efforts to make my algorithm robust to large low texture areas worked for all colors except black.  My algorithm really likes large black region’s and Aseem’s picture had it in spades.

 

Other pictures with faces could be found and cropped.

 

This picture from the web could not be cropped b/c it found the black region of the jacket.

 

My code was able to find two of the three faces in Group1

 

 

But not able to find the faces in my friends Soccer team.

 

 

1.     For all the pictures, the scaling was chosen to reduce the face size in the picture to about 25X 25 pixels.  For the Group1 picture, I used 0.8 to 1.0 in 0.05 steps.

2.     The false positives were caused by regions of low contrast.  I tried to fix this using Aseem’s recommendation and also by setting a variance threshold, but nothing seemed to help.

 

 

Extra Credit.

I did the verify Face Routine.