Testing recognition with cropped class images
10 eigenfaces of 25x25 pixels
The Average Face:
The Eigenfaces:
Correct matches: 20/27 faces (74%)
Smiling | Matching Non-Smiling |
---|
01
 |
22
 |
02
 |
02
 |
03
 |
03
 |
04
 |
04
 |
05
 |
05
 |
06
 |
06
 |
07
 |
07
 |
08
 |
08
 |
09
 |
20
 |
10
 |
10
 |
11
 |
06
 |
12
 |
12
 |
13
 |
04
 |
14
 |
14
 |
15
 |
03
 |
16
 |
16
 |
17
 |
17
 |
18
 |
18
 |
19
 |
19
 |
20
 |
14
 |
21
 |
08
 |
22
 |
22
 |
23
 |
23
 |
24
 |
24
 |
25
 |
25
 |
26
 |
26
 |
27
 |
27
 |
I ran the recognizer over the range 1-20 eigenfaces of 15x15 pixels each. I have the
plot of the results below,
QUESTIONS: Describe the trends you see in your plots.
Discuss the tradeoffs; how many eigenfaces should one use?
Is there a clear answer? You likely saw some recognition errors in step 3;
show images of a couple. How reasonable were the mistakes?
Did the correct answer at least appear highly in the sorted results?
ANSWERS: Obviously, the more eigenvectors we keep, the better the results.
However, a key observation is the flat parts of the graph which mean that
the additional eigenvectors we add in that range are not giving us much
information (features), specifically, the features that would identify
the faces we were making mistakes on. How many eigenvectors? From the plot,
I would say 14 to 16 is a reasonable range but I used 20 for detection
anyway. There is no correct answer to how many eigenvectors to use because
as the rank of the eigenvector goes down, the lesser the variance it has
which can be observed in the leveling of the plot in the 9-15 eigenvectors
range. The mistakes were generally reasonable
like 01 and 22 who kind of look the same and 11 and 06 who kind of have the
same face shape. A weird one is 15 and 03 which have nothing in come, as
far as I can see, whatsoever. But then again, I'm only human.