Face Detection and Feature Extraction

Download Full-Text PDF Cite this Publication

Text Only Version

Face Detection and Feature Extraction

Chaitra T. K.

M Tech student, VLSI and Embedded, Dept. of ECE,SSIT, Tumkuru, India

      1. handrashekhar

        Associate Professor, Dept. of ECE, SSIT, Tumkuru, India

        Dr. M. Z. Kurian

        HOD Dept. of ECE, SSIT,

        Tumkuru, India

        Abstract- Face detection is a computer application being used in a different fields to identify the human image. Detection of the human face is performed by extracting the features existing in the face. Local Binary Pattern (LBP) is used to identify the texture feature of the detected face which varies from person to person. The face area is first divided into small regions from which LBP histograms are extracted and concatenated into a single, spatially enhanced feature histogram efficiently representing the face image.

        Keywords- Face detection; viola jones algorithm; integral image; haar like features; adaboost; cascading classifier; LBP.


          Face detection is the step stone to the entire facial analysis algorithms, including face alignment, face modelling head pose tracking, face verification authentication, face relighting facial expression tracking/recognition, gender/age recognition, and face recognition. Face detection is one of the visual tasks which human can do effortlessly but in computer vision it is very tedious. Given a single image, detect the face regardless of pose, illumination and expression. Given an arbitrary image, the aim of face detection is to detect whether or not there are any faces in the image. The LBP operator is an image operator which transforms an image into an array or image of integer labels describing small-scale appearance (textures) of the image. These labels directly or their statistics are used for further analysis.


          Face detection algorithm for colour images which uses colour segmentation, connected component analysis and multi-layer template matching. This method uses the colour information in HSV space, compensates for the illumination condition of the image, and overcomes the difficulty of separating faces that are connected together using image morphology processing. In which the higher version of the template matching algorithm is used to detect faces and eliminates the non-faces such as hands and clothes [1].

          Real time human face detection and tracking describes the process of real time face detection and recognition by modified viola jones algorithm. Results achieved by the developed algorithm showed that up to 50 human faces could be detected and tracked by systems using the modified

          algorithm. Data Processing and time consumption is comparatively less in such systems [2].

          The basic mechanics of viola jones algorithm is also used to calculate an image pyramid and scan a fixed size sub window through each layer of this pyramid. The content of the sub window is allowed to a wavelet analysis and histograms are made for the various wavelet coefficients. These coefficients are fed to differently trained parallel detectors that are sensitive to various orientations of the object. The orientation of the object is determined by the detector that yields the highest output. Opposed to the basic Viola Jones algorithm and the algorithm presented by Rowley et al. this algorithm also detects profile views [3].

          Generalizations to the grey scale and rotation invariant texture classification method based on LBP [4] derive a generalized presentation that allows for realizing a grey scale and rotation invariant LBP operator for any quantization of the angular space and for any spatial resolution. This method is presented for combining multiple operators for multi-resolution analysis. The proposed technique yields recognition rate of 98% for different textures.


          The Viola-Jones face detector contains three main ideas that make it possible to build a successful face detector that can run in real time.

          There are four main parts in this method:

          1. Integral images

          2. Haar-like features

          3. AdaBoost

          4. Cascading classifier

            1. Integral images

              The first step of the Viola-Jones face detection algorithm is to turn the input image into an integral image. This is done by making each pixel equal to the entire sum of all pixels above and to the left of the concerned pixel. This allows for the calculation of the sum of all pixels inside any given rectangle using only four values. These values are the pixels in the integral image that coincide with the corners of the

              rectangle in the input image.

              fo rm al d efin itio n :

              ii x , y

              i x ', y '

              x ' x , y ' y

              R ecu rsive d efin itio n :

              s x , y s x , y 1 i x , y

              ii x , y ii x 1, y s x , y

              Figure 6: Example of integral image [1]

              Figure 7: Example of integral images calculation for inside pixels [3]

            2. Haar-like features

              Haar features are similar to convolution kernels which are used to detect the presence of that feature in the given image. Feature set is obtained by subtracting sum of all the pixels present below black area from sum of all the pixels present below white area.

              Value = (Pixels in White area) (Pixels in Black area)

              Figure 8: Some of haar like feature

            3. AdaBoost

              Viola jones algorithm uses 24×24 window as the base window size to start evaluating these features in any given image. If it is considered all possible parameters of the haar features like position, scale and type it end up calculating about 160,000+ features in this window.

              Figure 9: AdaBoost feature selection

              As stated previously there can be approximately 160,000+ feature values within a detector at 24×24 base resolutions which need to be calculated. But it is to be understood that only few set of features will be useful among all these features to identify a face which is as shown in figure 9.

            4. Cascading classifier

              The basic principle of the Viola-Jones face detection algorithm is to scan the whole image by consecutively increasing the scanning window size so that the whole image will be covered. Even in an image there is a probability that it may contain one or more faces due to an excessive large amount of the evaluated sub-windows would still be negatives (non-faces).So the algorithm should concentrate on discarding non-faces quickly and spend more on time on probable face regions.

              Hence a single strong classifier formed out of linear combination of all best features is not a good to evaluate on each window because of computation cost. A cascade classifier is composed of stages where each stage has certain no of features grouped each containing a strong classifier which is as shown in figure 10. The job of each stage is used to determine whether a given sub window is definitely not a face or may be a face. A given sub window is immediately discarded as not a face if it fails in any of the stage.

              Figure 10: Cascade work flow


          In recent years, LBP features analysis has been extensively used across various different fields and for establishing classification groups based on age/gender for detection and recognition applications. Different advancements of the original LBP have been established for improved high performance feature selection, i.e. it overcomes the most discriminative and complex problems effectively. LBP, a non-

          parametric method providing tolerance againt the monotonic illumination changes has been used in retrieval of audio/video content. It represents the local structures of an image by calculating the histogram efficiently, and has the ability to summarize the histograms across various different blocks of an image increasing interest for facial representation recently in aerial analysis and inspection fields. The LBP operator was originally designed for texture description. The operator assigns a label to every pixel of an image by thresholding the 3×3-neighborhood of each pixel with the centre pixel value and considering the result as a binary number. Then the histogram of the labels can be used as a texture descriptor.

            1. LBP Calculation and facial representation

              The idea behind using the LBP features is that the face images can be seen as composition small patterns which are invariant to grey scale transformation. Combining these small patterns, a whole description of the face image is obtained. The original LBP operator labels the pixels of an image by thresholding the 3-by-3 neighbourhood of each pixel with the centre pixel value and considering the result as a binary number figure 11 shows an example of LBP calculation.

              Figure 11: Example of LBP calculation

              Each face image can be considered as a composition of micro- patterns which can be effectively detected by the LBP operator. The histogram of LBP computed over the whole face image encodes only the occurrences of the micro-patterns without any indication about their locations. To also consider the shape information of faces divide face images into M local regions to extract LBP histograms. The face images are divided into M small non-overlapping regions R0,R1,…,RM in order to collect the shape information. The LBP histograms extracted from each sub-region are used for calculation and combined into a single, histogram with spatial advanced features defined as:

              Where i=0,…,L-1,j=0,…,M-1.

              In the figure 12, it is observed that the description of the face on three disparate levels of locality, the labels for the histogram contain information about the patterns on a pixel- level, the labels are added over a local region to produce information on a local regional level and the regional histograms are combined to build a global description output of the face.

        5. RESULT

It is observed that the image is captured and given as input to the system for the face detection. Viola-jones algorithm reads the input and undergoes integral image calculation, haar-like features identification, adaboost feature selection and cascading classification. The algorithm successfully detects the face from the input image and removes the background.

The result of the LBP is feature extraction of the detected image. Identified LBP features are different for different input faces which is plotted in the Histogram. This describes the local texture and global shape of images. It represents the plot of number of intensity level of the face to the number of pixels at each grey level of extracted features which is shown in figure 13.

Figure 13: Snapshot of face detection and feature extraction.


Face detection is performed with the help of viola-jones algorithm and face features are extracted with the LBP. Extracted features are plotted in the histogram, which number of intensity level of the face to the number of pixels at each grey level of extracted features. It is still challenging to detect and extract the features partially occluded faces in bad illumination.


Figure 12: LBP based facial representation

      1. Face detection ,Ana Bertran, Huanzhou Yu, Paolo Sacchetto {nuska, hzhyu, paolos}@stanford.edu, Computer Project for Digital Image Processing EE368 Spring 2001/2002.

      2. J.Chatrath, P.Gupta, P.Ahuja, A.Goel, Real Time Human Face Detection and Tracking International Conference on Signal Processing and Integrated Networks (SPIN) Volume 1,Issue 1,pp. 705-710, 2014.

      3. Henry Schneiderman, Takeo Kanade, A Statistical Method for 3D Object Detection Applied To Faces and Cars, IEEE Conference on Computer Vision and Pattern Recognition 2000 proceedings, Volume 1. Digital Object Identifier 10.1109/CVPR.2000.855895.

      4. TimoOjala, MattiPietikäinen and TopiMäenpaa A Generalized Local Binary Pattern Operator for Multiresolution Grey Scale and Rotation Invariant Texture Classification, Pattern Analysis and Machine Intelligence, IEEE Transactions (Volume:24 , Issue:7 ), Jul 2002.

      5. Sharifara, Ali, et al. "A general review of human face detection including a study of neural networks and Haar feature-based cascade classifier in face detection." Biometrics and Security Technologies (ISBAST), 2014 International Symposium on. IEEE, 2014.

      6. Changting He, Ya Wang, Ming Zhu, A Class Participation Enrolment System Based on Face Recognition, 2017 2nd International Conference on Image, Vision and Computing.

      7. A. Lanitis, C.J. Taylor, and T.F. Cootes, An Automatic Face Identification System Using Flexible Appearance Models, Image and Vision Computing, vol. 13, no. 5, pp. 393-401, 1995.

      8. Paul Viola, Michael J.Jones, Robust Real-Time Face Detection International Journal of Computer Vision Volume 57 Issue 2, pp. 137 154, May 2014.

      9. ShrinivasNaika C.L , Pradip K. Das and ShivashankarB.Nair, Asymmetric Region Local Binary Pattern Operator for Person-dependent Facial Expression Recognition,.

      10. Maghraby M.AbdallaO.Enany,Hybrid Face Detection System using Combination of Viola – Jones Method and Skin Detection, International Journal of Computer Applications (0975 8887) Volume 71 No.6, May 2013

      11. W. Zhao, R. Chellappa, A. Rosenfeld, and P. Phillips. Face recognition:A literature survey. ACM Computing Surveys, pages 399458, 2003.

      12. L. Sirovich and M. Meytlis. Symmetry, probability, and recognition infacespace.PNAS – Proceedings of the National Academy of Sciences,106(17):68956899, April 2009.

Leave a Reply

Your email address will not be published. Required fields are marked *