Experiment 1:
Average face |
|
Eigenface 1 |
Eigenface 2 |
Eigenface 3 |
Eigenface 4 |
Eigenface 5 |
|
|
|
|
|
Eigenface 6 |
Eigenface 7 |
Eigenface 8 |
Eigenface 9 |
Eigenface 10 |
|
|
|
|
|
- For a low number of eigenfaces, there is steady and significant
improvement when adding more eigenfaces. Improvement slows dramatically
around 8. For moderate to higher numbers, there are several plateaus and
inconsistent improvement. At a minimum, 10 eigenfaces should be used. If
space is less of a concern, 20 eigenfaces shows a marked improvement over
10, but there is no clearly right answer.
- Most errors appeared reasonable. However, for example, I don't see any
reason why the first example with 20 eigenfaces was matched the way it was.
While many of the error cases still had the correct one in the top 5 (even
the next choice), there were several that were out of the top 10, and a few
that weren't even in the top half.
10 Eigenfaces |
Image |
Correct |
Actual |
|
|
|
|
|
|
Image |
Correct |
Actual |
|
|
|
20 Eigenfaces |
Image |
Correct |
Actual |
|
|
|
|
|
|
Image |
Correct |
Actual |
|
|
|
Experiment 2:
bush_george_w_portrait |
Original |
Min |
Max |
Step |
0.25 |
0.55 |
0.01 |
|
|
Me (actually, not me) |
Original |
Min |
Max |
Step |
0.25 |
0.35 |
0.01 |
|
|
IMG_8270 |
Min |
Max |
Step |
0.48 |
0.56 |
0.02 |
|
People |
Min |
Max |
Step |
0.70 |
0.71 |
0.02 |
|
- Low texture areas definitely presented a problem for the initial implementation. I added a minimum variance requirement, which fixed the algorithm on the two required photos. The other photo of an individual
could benefit from more sophisticated color analysis, though one could
almost certainly find the face in that photo with just color
analysis. There appears to be a curious pattern of errors where a quarter of
the face is selected. In the last group photo, there were two errors that
just weren't even close. One of them was of moderately low texture but not
too low slow it made it past my minimum variance requirement. I think some
enforcement of minimal vertical symmetry would be interesting. It could be
implemented as the variance of the resulting image of subtracting the left
half from the right half and vice versa.
Bells & Whistles:
I implemented the speedup where the eigenvectors of ATA are
computed to compute the eigenvectors of AAT.