Visics Logo

 

K.U.Leuven > ESAT > PSI > Visics > Research > Topics > Item 2.4

 

Face detection

L. Van Gool, L. Van Eycken, R. Fransens, V. Depoortere, J. De Prins

We have studied and compared two different techniques, namely Probabilistic Classification and Support Vector Machines (SVM) for face detection. We limited ourselves to the detection of frontal, upright positioned faces, but the techniques are, at least in principle, extendable to faces of any orientation. Both algorithms can be casted in the more general framework of statistical learning theory and learn their behaviour from examples. The classification systems are provided with a training set of labelled images (face images and non-face images) and learn to discriminate between both classes in an automated fashion. The ultimate performance of such a classification system therefore not only depends on its intrinsic characteristics, but also on the size and the quality of the training set provided by the user.

Both classification algorithms locate the faces in an image by sliding a window of fixed size over the image and classifying the image content within the window as either a face or a non-face. The size of the window is fixed and in order to find faces of different sizes the procedure is applied to a pyramid of successively downscaled versions of the input image. The basic step of the algorithm becomes as such a binary classification of a single, fixed sized frame. For both techniques we applied a similar pre-processing to every frame, namely a lighting compensation followed by a histogram equalization.

Binary Probabilistic Classification relies on the estimation of probability density functions of both classes. For a low dimensional approximation of the density for the face class we used a method based on PCA, originally proposed by Pentland et al. We've extended their classification technique by incorporating an estimation of the density of non-faces in the neighbourhood of the face class (it is practically impossible to estimate the density of the entire non-face class due to its ill defined nature).

The SVM algorithm does not rely on density estimation but rather tries to construct a separating hyperplane between face images and non-face images. The trained SVM can be seen as a feed forward neural network of which the type is determined by the kernel function. As such we can construct and train sigmoidal, polynomial or radial basis function networks in a unified manner. We investigated how the choice of kernel influences the classification performance.

We implemented 5 types of SVMs with a sigmoidal kernel, a radial basis kernel and polynomial kernels of degrees 2, 3 and 4. The polynomial kernel of degree 4 performed best on all test sets. We also compared the best performing SVM with the Probabilistic Classification algorithm. It's important to note that for the comparison to be objective, we trained both the Probabilistic Classification and the SVM with the same training set of face images, and we evaluated their performance on 3 different test sets which were chosen independently from the training data. While differences were small, the probabilistic method performed best on all test sets.

The algorithms are quite robust for bad illumination conditions and a slight deviation from frontal pose. The yellow rectangles in the figure above are the detections found by the SVM with polynomial kernel of degree 4. The false detection can be removed by shifting the decision plane more towards the face class. (The red rectangle is manually drawn)

 

Back to Top

Copyright © 2008 - PSI/Visics. All Rights Reserved.
URL: http://www.esat.kuleuven.be/psi/visics/research/topics/item_2.4.php
Last Modified on: 22 Jan 2002
Mail comments, suggestions to Paul Konijn
Give this page a layout for printing...