The implemented face recognition algorithm has some known limitations. In this section
we will list them:
1) Face angle: The software does not work when heads are tilted laterally
or vertically. This is because all the template faces are directly looking to the
camera, so the correlations when the heads are tilted are relatively low. In most
natural photos, there is at least one face directly looking to the camera
which would have high correlations, therefore, when the relative threshold is applied
the low correlations in the tilted heads will fall below it. The next photos show
two examples of this problem. The first photo shows the detected faces, and the second
one the result image from which they have been detected.
2) Face occlusion: The algorithm performs poorly if a face is partially
hidden by another object. This happens because the correlation in the hidden part
will be lower, as it does not correspond to a face, providing a total lower correlation value.
The following photo is an example of this problem (and also from the number (1)).
3) False positives: Although the software has a relatively low false
positive probability, they still appear in some photos. Typically they show up in hands
as they have the skin color and, if the face side is small, they produce significant
correlations too. The next two photos are examples of false positives. In the
second photo, there is a combination of problems, as the maximum correlation is low
and therefore the relative threshold is low, producing false positives.
4) Daylight photos: The performance of the software is degraded for
some daylight photos. This is due to the combination of two factors. First, the variety
of possible shades in under daylight conditions is a challenge for this kind of algorithms
because most of the templates are photos taken with flash and they do not show all
possible shades. Second, the skin color can change with the light, and, as most of the
templates are taken under flash light, colors may be different. The following photo
is an example in which the algorithm had problem recognizing the skin color.
5) Low light photos:Those photos taken under low light conditions
pose a severe challenge for face recognition. These photos are very noisy, so the colors
are degraded. This degradation has two effects: first, the skin color is not correctly
recognized, so the automatic color recognition may attenuate the correlations instead of
enhancing them. Second, the 'a' and 'b' matrixes are very noisy and
many features are lost, leading to low correlation values. The next photo is a good
example of this kind of problem. In this photo the algorithm fails to detect the
presence of faces, so the boxes are in red. The second image shows which points are
detected as skin color, as previously explained, many points in the face are not correctly
recognized. The final image is the result from which faces have to be detected. However
note that in this case, even the white point is below the absolute face threshold.
6) Automatic size recognition failure: The algorithm is supposed
to be able to find out what are the sizes of the faces in the photo. However, the
algorithm assumes that all the faces have the same sizes, which is the usual case in
most natural photos, but it is not in some of them (like people seating along
a table). Moreover, the algorithm only tries 11 different sizes, so if a face is
in the between two of those sizes the software may fail to recognize the correct
size. In these cases, the software tends to use the smallest size, as it has fast
variations that are usually present in the photos and induce higher correlation values.
In these cases the result image is usually below the absolute face recognition threshold.
The next photo is an example of what happens when the algorithm does not recognize
the correct size. In this case, the photo did not go over the absolute face
threshold so even the white points in the result image are quite low.