Face Detection Demo

If you change any settings, you have to hit 'restart' for them to change on screen.


The face detector above uses the responses to a series of simple filters to classify regions of an image as either a face or not a face. The filters are called Haar filters and are calculated by taking the sum of pixels within a number of rectangles, multiplying each sum by a weight and adding the results. Example filters are shown below:

Picture of haar filters

After the application of the filter those image regions least likely to be a face are rejected, those that might represent a face are passed on to the next stage, as shown below:

Picture of stage classifiers

The demo above uses data trained using the OpenCV library with our own port to a Java Applet. You can display the search scan, testing each image region using the algorithm. Displaying the search is a lot slower, as you will see if you turn off the search animation. You can experiment with a search range with a large larger rectangle and search step size and then animate the result. At the end overlapping rectangles are combined into a single face box.

For more information see:

  1. Intel article on face detection with Open CV
  2. Paul Viola and Michael J. Jones, “Rapid Object Detection using a Boosted Cascade of Simple Features,” IEEE CVPR, 2001.
  3. Rainer Lienhart and Jochen Maydt, “An Extended Set of Haar-like Features for Rapid Object Detection,” Submitted to ICIP2002.
  4. Alexander Kuranov, Rainer Lienhart, and Vadim Pisarevsky, “An Empirical Analysis of Boosting Algorithms for Rapid Objects With an Extended Set of Haar-like Features,” Intel Technical Report MRL-TR-July02-01, 2002.

An Outreach programme from the Computer Science Dept. at Aberystwyth University
Contact Bernie Tiddeman on bpt at aber dot ac dot uk