High Level Facial Features Localisation
Using Faces Symmetrical Properties


Symmetry detection from image is ordinary used for face detection [1]. It is indeed very useful to locate the symmetry axis of the head.

Axis Detection

The first step is to find the symmetrical vertical axis of the face. For each pixel of the image, the right and left side are compared. Pixels which highest symmetry are situated on the same axis, see Figure 1. We know that every facial feature we are looking for are symmetrical to this axis.
Figure1: Axis Detection (Axis in white)

Contrast Information

We now look at the constrast for every pixel on the axis. For that, the image is vertically scanned line by line. The range of the scan is centered on the axis, and is limited to approximatly three quarters of the face's width. The difference between the brightest and the darkest pixel gives us a 'contrast' value (see Figure 2)
Figure 2: Contrast values

Local Maxima

From contrast values, only local maxima are kept. They are supposed to be the features vertical centres.
Figure 2: Contrast values and local maxima in red

Fuzzy system

A fuzzy system is then used to retrieve relevant features from local maxima. Here are the output values from the fuzzy system (both top and bottom rows have been emilinated beacuse irrelevant)

17> 1.000 0.000 0.000 0.000 EB
21> 0.857 1.000 0.000 0.000 EY
27> 0.100 0.133 0.635 0.000
35> 0.000 0.217 1.000 0.157 NO
42> 0.000 0.000 0.000 1.000 MO
45> 0.000 0.000 0.000 0.000
Figure 2: Final output (Eyebrows, Eyes,Nose and Mouth)


Back