The Research of Face Detection Method Based on
Adaboost Algorithm and Skin Color Segmentation
LIU Chang
Beihang Univ, Dept Measurement Control & Informat Technol, Sch Instrumentat Sci & Optoelect Engn
Beijing 100191, Peoples R China
E-mail: lc76magic@163.com
Abstract—As a key pre-processing of face recognition, face
detection is an important foundation of some intelligent
applications such as video retrieval and human-computer
interaction. The performance of the Adaboost algorithm is
remarkable in the face detection methods, but there are still gaps.
Concerning the high false positive rate of Adaboost algorithm,
the skin color segmentation method based on Gaussian model is
introduced, which is used as the front and back processing of
Adaboost algorithm, respectively. Experiments show that the
using of these two methods can significantly reduce the false
positive rate in the detection of real-time video stream, while the
skin color segmentation as a pre-processing can increase the
detection speed by more than 20%, which can help achieve a
stable and efficient real-time face detection system.
Keywords—Face detection; Adaboost algorithm; skin color
segmentation; real-time video streaming
I. I
NTRODUCTION
Currently, the detection and recognition of special images
have become the main research contents in pattern recognition
and computer vision. The human face as an important and
exceedingly unique source of information is an important
visual image in video detection and image processing[1]. Face
detection has been an access point in many areas.
Face detection can be divided into three categories[2-7] to
date: methods based on template matching[8-9], methods based
on facial feature[10-11] and methods based on statistical
models. Although the 3D modeling and matching of human
face based on stereo matching algorithm has become a new
point of the research currently, the face detection method based
on Adaboost algorithm of the statistical model algorithm is still
typical[12-14]. The algorithm first selects some rectangular
features that can represent the human face, after that gives
different weights to the selected features to build a strong
classifier[15] and finally a number of cascade classifiers can
effectively detect the human face, which can greatly improve
the detection speed[16-17].
Nevertheless, when the background is complex and the
detection speed required is faster for real-time video stream
detection, it is difficult to exclude non-face sub-windows using
Adaboost algorithm. As it often leads to more false
detections[18], we introduce a skin color segmentation method
based on Gaussian model, which is used as pre-processing and
post-processing respectively, in order to give full play to the
use of skin-color’s stability and the high speed of color
segmentation. Finally, the rapid detection of the human face
and precise positioning can be realized in the real-time video
stream. Of course, the efficiency of real-time face detection and
tracking system should actually take into account the video
stream transmission and decoding time. The quality of the
video stream (such as inter-frame’s consistency and noise[19])
will also affect the detection effect to some extent, this paper
does not consider these factors here[20-23].
II. F
ACE
D
ETECTION
B
ASED ON
A
DABOOST
A
LGORITHM
The Adaboost algorithm was proposed by Freund and
Schapire in 1995[24]. This algorithm solves the problem that
Boosting algorithm must determine the lower limit of learning
accuracy[25] in advance. Adaboost algorithm is an iterative
algorithm. The training process does not require a priori
knowledge of weak learning, while automatically adapts to the
original hypothetical false rate based on weak learning’s
feedback. On this basis, Viola and Jones creatively introduced
the “integral image” and “cascade” to Adaboost algorithm in
2001, to further improve the detection speed, but this method
can merely be used to detect the frontal, upright faces[26-27].
Then Rainer Lienhart et al. proposed the tilt features, extending
the algorithm to non-planar rotating face detection[28].
A. The Principle of Adaboost Algorithm
The rectangular feature can be calculated very quickly
using a representation of the image we call the “integral
image”. As shown in Fig. 1, the rectangular feature, which can
reflect the characteristic information of the image in all
directions, is also called the Haar feature. Each Haar feature
corresponds to a weak classifier. For each feature, the examples
are sorted based on feature value, then four sums are
maintained and evaluated for each element: the total sum of
positive example weights T
+
, the total sum of negative example
weights T
í
, the sum of positive weights below the current
example S
+
and the sum of negative weights below the current
example S
í
[27]. When the eigenvalue of any element is
selected as the threshold, the error for the threshold is:
e=min(S
+
+(T
−
−S
−
), S
−
+(T
+
−S
+
)) (1)
By calculating and scanning the eigenvalues of the ordered
features, we can select a threshold with the smallest
classification error for this weak classifier to obtain an optimal
weak classifier. The Adaboost algorithm combines a number of
978-1-5386-1620-8/17/$31.00 ©2017 IEEE
This full text paper was peer-reviewed at the direction of IEEE Instrumentation and Measurement Society prior to the acceptance and publication.
514