
Face detection
This tool detects human faces on the current image using Viola and Jone's AdaBoost face detection algorithm [1]. See here for more details about the AdaBoost algorithm.Our implementation of this AdaBoost-based face detection algorithm is very fast and reliable. See here for an example (*). It takes only 9.57 seconds (on a P4 2.4GHz CPU) to process this large image (with resolution of 3045*2030). Most of faces have been correctly detected and the false alarm rate and missing detection rate is very low.
Our implementation outperforms OpenCV's implementation in terms of a much faster speed. It takes about 21.71 seconds for OpenCV (ver. beta 5) to process the same image on the same machine. Both implementations have achieved similar detection rate using default setting (see here for OpenCV's result) but ours is about 2.3 times faster.
Change algorithm settings
Usually you don't need to tune any parameters and the algorithm does a good job using the default setting. However, you can change the following parameters in the dialog shown below.

- The option "Display all rectangles" means all results with good detection score will be displayed regardless whether they have overlaps or not. One example using this option is shown here.

- The option "Display precise rectangles" means if results have overlaps, only the one with the highest detection score will be displayed.
- The default option "Merge rectangles" means if results have overlaps, they are merged and the union of all rectangles will be displayed.
- The option "Refine by size" means if the size of one result rectangle is significantly different than others, it will be discarded. You can use either "Median & Std" or "Mean & Std" as the criterion.
- You can specify the output folder so that all detected faces can be saved in that folder.
- You can specify the face layer folder if you have trained your own face features.
Save detected faces
You can save all detected faces in the folder you specified in the above section. This feature can be very useful in creating your own face database. Each face is saved as a single BMP file and a log file will be generated with information such as the location of each face and the total number of detected faces. One example is shown here.
Batch face detection
You can run face detection in batch mode. This feature can be very useful in creating your own face database. In the following dialog, choose the source image folder, the result folder and the log file name. Each face is saved as a single BMP file with name "xxxxx_yyyy.bmp". "xxxxx" is index of the image and "yyyy" is index of the rectangle. A log file will be generated.
Train face features
You can train your own set of AdaBoost features if you have enough positive and negative training samples. Basically, you can train features of any object using this function.In the following dialog, specify the folder that contains positive samples, negative samples, boosting samples (from which new negative samples will be generated) and the result face layer as well as the log file name.

Be aware that the training process can take days to finish.
Generate feature mask images
You can visualize your training results using this function. In the following dialog, specify the face layer folder, the result folder and the face image.
The face image can be a square image (with equal width and height) of any size. VIPBase will overly each feature onto the face image and save it as a single BMP file. One example is shown here.

Acknowledgements
The author of VIPBase would like to thank Dr. Haizhou Ai for his help with the AdaBoost face detection algorithm.
* This image is obtained from Google's image search engine. If you are the owner of this photo and you don't want your photo displayed here, please contact us at
.
Reference
[1] Paul A. Viola, Michael J. Jones: Robust Real-Time Face Detection. International Journal of Computer Vision 57(2): 137-154 (2004)
![]() |
VIPBase © 2006 Fengjun Lv |
Last update: 08/01/2006 (check html) |