Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
detection parameters are implemented and explained in the Face localization methods
next part of this paper.
Face localization is to detect face or faces in the image after
Thresholding in skin-color detection previous preprocessing steps. After skin blobs have been
detected, we try to estimate how many faces are in the
Detection of skin color in digital image is performed by
image and put line boundary (ellipse or rectangular) to the
applying skin color model to the image. This is done with
detected faces. This can be performed using k-means
assumption that distribution of skin color is located in a
clustering algorithm or Hough transform for ellipse/circle
collection and can be modeled using a Gaussian distribution
(or normal distribution) as G1 = (m1 , V12 ) where
( )
detection. Other methods such as template matching and
curve detection can be also used including image
m1 = r , g projection.
rr rg
The algorithm for k-means classification is a widely known
V1 =
gr gg
algorithm for classification which is capable of providing
useful performance, although it does have some limitations.
If we have a multivariate input data set X which is defined
as an M x N matrix, there are M input points in N-
m1 and V1 are mean and covariance of skin color in related dimensional space. It is assumed there exist k compact
color space respectively. For example in RGB space, for classes of data, where k < n. The data is classified by
each image pixel, it is necessary to quantify the possibility allocating each data point to a class and then iteratively
of the pixel belonging to the skin segments. This can be moving the data points between classes until we obtain the
d ( x, y ) = [ I ( x, y ) m1 ]V11 [ I ( x, y ) m1 ]
realized by calculating tightest overall cluster of points in each class. The specific
algorithm is defined as follows:
1. Choose the number of classs k.
where I ( x, y ) is the color intensity vector at ( x, y ) in r-g 2. If not supplied, randomly determine a set of k class
color space and d ( x, y ) is a similarity map function. centers from the data.
3. Classify each data point into the nearest class.
To determine whether a pixel is a candidate pixel of the
4. Compute the sample mean of each cluster.
face region, a threshold d is set in advance. Threshold value
5. Reclassify each data point to the cluster with the
can be calculated based on the mean and standard deviation
nearest mean.
of each skin color model. There are two interpretation
6. If the change in the mean is small enough, stop.
methods of standard deviation: (i) based on the empirical
Otherwise go to step 4.
rule, and (ii) based on the Chebyshev theorem. In empirical
rule, if a sample of observation has a mound-shaped Figure 2 illustrated the process of clustering using k-means.
distribution, the interval of the distribution is 68%, 95% and The algorithm is trying to find the best centroids of the
99.7% for k=1,2,3 consecutively, where k is constant pixels collection. This process can be relatively easy to
multiplier for standard deviation in Gaussian distribution perform by human using his intuitive and knowledge.
interval. In Chebyshev theorem, the proportion of
observation in any sample that lies within k standard
deviation of the mean is at least (1 1/ k 2 ) for k > 1 .
k [2, n] , and then select the optimal k value as the one space and CbCr for YCbCr space) are calculated to measure
the 2 dimensional data of skin chromaticity for each skin
1+ C
minimizing the validity function V , defined as:
color model.
V= +
k'
J' 1
min
Table 1 shows of the statistical analysis result for all skin
i =1
2
N i models in r-g space.
where k ' represents the number of good clusters, i.e. Table 1. Skin Model Statistical Values
{ }
clusters that are not too small, J ' is k-means objective
HI ( x) = I ( x, y )
n
6a
y =1
VI ( x, y ) = I ( x, y )
m
x =1
The horizontal profile of an input image is obtained first,
and then the two local minima, determined by detecting
abrupt changes in HI, are said to correspond to the left and
right side of the head. Similarly, the vertical profile is
obtained and the local minima are determined for the 6b
locations of mouth lips, nose tip, and eyes. These detected
features constitute a facial candidate.
Although projections occupy much less memory that the
image they were derived from, they still contain essential
information about it.
Figure 5 shows the illustration of binary image projection
for image in the figure 6a which is detected using skin
model 8 with selected parameters. 6c
6d
Results of experiment
6f
As mention above, nine skin models have been used to
evaluate which one is the best model. Experiment has been
conducted by applying the models into a selected face
image. Figure 6 below illustrates this process. Figure 6a is
selected face image that will be detected. The content of
this image is processed with skin model 1 (SM1) to skin
model 9 (SM9) in three color space. The results of the
detection are shown in Figure 6b to 6j consecutively. Figure 6g
6b is the result of applying skin model 1 to the original
image, Figure 6b is the result of applying our algorithm
using skin model 2 and so on. The selected parameters that
are used in figure 6b to 6j are, (i) Color model is in
Normalized RGB, (ii) Confidence level of detection is
93.75% Chebyshev theorem (iii) Centroid initial location is
in the beginning of the original image.
5
Conclusion
1. A combined algorithm for detecting faces in an image
has been proposed and successfully implemented using
multiple face image
2. A simple evaluation criteria for skin model selection,
based on image profiling in horizontal and vertical
projection, has been experimented.
3. Nine skin models have been explored and used in the
experiment for selecting the best model that give the
best face detection result.
4. Several preprocessing steps in image processing such
statistical thresholding using empirical and
Chebyshevs rules, filtering using sand and pepper
noise filtering have been implemented and can be used
for enhancement of the targeted image
5. Face localization technique based on intelligence k-
means clustering algorithm has been implemented
successfully.
Acknowledgement
This research is funded by Indonesian Government
thru BPPS and supported by Universitas Padjadjaran
and Institut Teknologi Bandung.
References
Figure 8. Another Detection Result using YCbCr space [1] Jinshan Tang and Scott Acton, Locating human
faces in a complex background including non-face
skin colors. Journal of Electronic Imaging, vol. 12
Discussion no. 3. pp. 423-430, 2003.
[2] Setiawan Hadi et. Al., Mathematical Model Of
In this research, there is a step for eliminating non-face Skin Color For Face Detection, International
skin object such as finger, hand, arm and neck, which Conference on Applied Mathematics 2005, Institut
should be explored next. There are several methods Teknologi Bandung Indonesia, 22-26 August 2005
that can be used such as (i) using template matching [3] Haria Bartolini, Paolo Ciaccia, Marco Patella,
with pyramids that run over the entire image (ii) by WINDSURF: a Region-Based Image Retrieval
detecting curve boundary between face and hair and System. DEIS-SITE-CNR, University of Bologna,
(iii) detecting face features such as eyes, noose and Italy
mouth.