Human Face Detection under Complex Lighting Conditions

This paper presents a novel method for detecting human faces in an image with complex backgrounds. The approach is based on visual information of the face from the template image and is commenced with the estimation of the face area in the given image. As the genetic algorithm is a computationally expensive process, the searching space for possible face regions is limited to possible facial features such as eyes, nose, mouth, and eyebrows so that the required timing is greatly reduced. In addition, the lighting effects and orientation of the faces are considered and solved in this method. Experimental results demonstrate that this face detector provides promising results for the images of individuals which contain quite a high degree of variability in expression, pose, and facial details. KeywordsFace Detection; Genetic Searching; Fitness Function; Cross-over; Mutation; Roulette Wheel Selection.


INTRODUCTION
Face detection has many real world applications, like human-computer interface, surveillance systems, videoconferencing, forensic applications, pedestrian detection, image databases, etc.However, the development of a reliable system for human face detection in a complex scene is very difficult due to variation in illumination, variability in scale, location, orientation (up-right, rotated) and pose (frontal, profile).Furthermore, facial expression, occlusion and lighting conditions change the overall appearance of face.
The face detection problem has been faced up with various approaches over the last few decades: neural network, principal components, independent components, skin color based methods [1], [2].Each of them imposes some constraints: frontal view, expressionless images, limited variations of lighting conditions, hairstyle dependence, uniform background, and so on.Yokoo et al. [3] proposed a face detection method by searching an ellipse using the genetic algorithm.
As the performance of edge detection is quite dependent on lighting conditions, so an ellipse may not occur in a true face.Yang et al. [4] utilized a hierarchical knowledge-based system which consists of three levels of detection.Level 1 and level 2 are based on mosaic images, so the method is difficult to locate face regions accurately.Furthermore, these methods are unable to detect a rotated human face.
The main objective of this work is to propose a reliable method to detect human faces at different orientations.Possible face regions are selected by means of the Genetic Algorithm (GA) [5] and the fitness function is based on their projections on the template image.Experimental results indicate that the system is capable of detecting human faces in a complex scene with a high degree of variability in expression, pose, and facial details.

II. FACE DETECTION METHODOLOGY
Face detection is concerned with determining which part of an image contains face.This is the first step of face recognition which requires both high-and low-level visual and geometric information processing.This work presents genetic searching for detecting human faces in a complex background.Face detection is achieved by employing template matching between a known face image and the input image.The main steps employed for the face detection process are shown in Fig. 1.

A. Preprocessing
The original image is obviously a color image.For detecting the face area, the image content is first converted from RGB to HSV color space.In the HSV color model, a color is described by three attributes: hue, saturation, and value.The conversion from RGB to HSV has been accomplished using the following equations [6], [7]: www.ijacsa.thesai.org where R, G, B are the red, green, and blue component values which exist in the range [0, 255].
While registering images, the eyes, tip of the nose, and the corners of the mouth of each face is labeled.These points are then used to normalize each face to same scale, orientation and position.The normalization is performed by mapping the facial features to some fixed locations in an MN image.Each normalized image is then subjected to some image processing operations like image enhancement and filtering to account for different lighting conditions and contrast.

B. B. Image Enhancement
The face images may be of poor contrast because of the limitations of the lighting conditions.To make an efficient and psychologically meaningful representation, and make the image illumination invariant in terms of sunny or cloudy environments, it is processed with fixed rms contrast and illumination equalization.For this purpose the following equations [7], [8] are employed in this method: where x r,i , x g,i , x b,i are the normalized illumination due to red, green, and blue color components, respectively such that 0<x r,i <1, 0<x g,i <1, 0<x b,i <1, and r x , g x , b x are the mean normalized illuminations due to red, green, and blue color components.With this definition, images captured at different lighting conditions will have the same contrast if their rms contrasts are equal.The rms contrast does not depend on spatial frequency contrast of the image or the spatial distribution of contrast in the image.All images are maintained with the same luminance and same rms contrast using the following equation: where  r ,  g ,  b , are the contrast due to red, green, and blue color components, respectively, and  r ,  g ,  b are the brightness to be increased or decreased from the respective red, green, and blue components f r , f g , f b of the original image to the new image g.Fig. 2 (Courtesy: University of Hall, UK) shows some color face images before and after the illumination and rms contrast equalization process.

C. Image Filtering
Various sources of noise may exist in the input image.The fine details of the image represent high frequencies which mix up with those of noise.So low-pass filters are used to obliterate some details in the image.In this experiment, Prewitt filter is used to suppress the noise.

D. Genetic Searching
Genetic algorithm is a blind search technique which is used for searching possible facial regions in an image.Each generated solution for a problem is called a chromosome which  is defined by four parameters to specify a face region.The parameters are the location (x, y), the face size, and the angle of rotation,  as illustrated in Fig. 3.In this method, a population of possible face regions of different locations, sizes, and slopes is generated randomly.
The algorithm starts with an initial set of random solutions called the population.Each individual in the population, known as chromosome, is assigned a fitness value depending on how good its solution to the problem is.After fitness allotment, the natural selection is executed and the 'survival of the fittest chromosome' can prepare to breed for the next generation.A new population is then generated by means of genetic operations: cross-over and mutation.This evolution process is iterated until a near-optimal solution is obtained or a given number of generations are reached.However, different steps employed in the genetic algorithm are shown in Fig. 4.
To apply GA for face detection, a template of the face image obtained from averaging the gradation level of pixels of a number of similar looking face images of several persons is constructed.The template face image is then moved through the whole image to find the location where the most suitable match exists.The genetic algorithm and different genetic operations are given below.

E. Fitness Function
To determine where a selected region is a face or not, a function needs to assign a degree of fitness to each chromosome in every generation.The fitness of a chromosome www.ijacsa.thesai.org  is defined as the function of the difference between the hue of the input image and that of the template image measured for the expected location of the chromosome.That is, for each chromosome n, fitness function is defined as [9], [10]: where max H is the maximum hue of the image; xSize and ySize are the number of pixels in the horizontal and vertical directions of the template image, f and t n f , are the hue values of the original image and the template image when it is justified for the n-th position of the chromosome, respectively.

F. Selection
Selection operator selects highly fit chromosomes that contribute their gene-inherited knowledge to breed for the next generation.This research uses conventional elitist selection scheme to select an elitist chromosome with the highest fitness value, which is copied directly into the new population of next generation.The other chromosomes are selected by a roulettewheel selection process, where the selection probability of each individual is proportional to its fitness value.

G. Cross-over
Cross-over operator randomly chooses a crossover point where two parent chromosomes 'break', and then exchanges the chromosome parts after that point.As a result, two offspring are generated by combining the partial features of two chromosomes.If a pair of chromosomes does not cross over, then the chromosome cloning takes place, and the offspring are created as exact copies of each parent.This research employs single point cross-over, two point cross-over and uniform cross-over operators.The cutting points are selected randomly within the chromosome for exchanging the contents.

H. Mutation
Mutation operator alters a randomly selected gene of chromosome with a very low probability, P M .For each chromosome, generate a random value between [0, 1].If the random value is less than P M , choose a bit at a random location to flip its value from 0 to 1 or 1 to 0. The parameter settings in our approach are shown in Table I.
The basic steps of the genetic algorithm are as follows: Step 1 Initial Population: Generate randomly a population of chromosomes of size N: . Assign the crossover probability P C and the mutation probability P M .
Step 2 Evaluation Function: Evaluate the fitness function for each chromosome in the population.
Step 3 Selection: Select a pair of chromosomes for mating.Use the roulette wheel selection procedure, where each chromosome is given a slice of a circular roulette wheel.The area of the slice within the wheel is equal to the chromosome fitness ratio.Obviously, the highly fit chromosomes occupy the largest areas, where the chromosomes with least fit have much smaller segments in the wheel.To select a chromosome for mating, a random number is generated in the interval [0, 100], and the chromosome whose segment spans the random number is selected.
Step 4 Cross-over: Produce two off-springs from two parent chromosomes.
Step 5 Mutation: Apply the conventional mutation operation to the population with a mutation rate P M .
Step 6 Termination Test: If a predefined termination condition is satisfied, go to Step 7, else go to Step 2.
Step 7 Preservation: Keep the best chromosome and Stop.

III. EXPERIMENTAL RESULTS
The effectiveness of this approach is justified using different images with various kinds of expressions captured under complex lighting conditions.When a complex image is subjected in the input, the face detection result highlights the facial part of the image, as shown in Fig. 5.For multiple faces, the system finds the dominant face only.Images of different persons are taken at their own working places and at different environments both in shiny and gloomy weather.www.ijacsa.thesai.orgIV.PERFORMANCE ANALYSIS In this paper, face detection has been implemented using genetic algorithm to search for the face of a particular individual in an image.The algorithm is examined with a total of 260 images of more than 80 different persons.These images are taken under different environment: some are under sunny environment; some are under cloudy environment; some are dark images; some are bright images, and so on.In all cases, experiments have shown promising results.Table II summarizes the performance analyses for GA based face detection under all possible environments.
It is observed that among 260 face images only 12 faces are found false and the maximum success rate of the implemented system is 98% under sunny (Outdoor) and bright (Indoor) environments.Thus, the overall success rate of above 95% The genetic algorithm is examined using single point and uniform cross-over with different population sizes and the results are illustrated graphically in Fig. 6 and Fig. 7 respectively.Fig. 6 reveals that larger population size offer better performance because of the larger pool of diverse schemata available in the chromosome but the inertia of larger population also boils down a problem of poorer initial.Fig. 7 shows that smaller population size is better for uniform crossover.So, a trade off is always taken between population size and the way of cross-over.Therefore, this research adopts single point cross-over with a population size of 150 during face detection process.

V. CONCLUSION
Detection of faces and facial features using machine vision techniques has many useful applications.Though human beings accomplish these tasks countless times a day, they are still very challenging for machine vision.Most of the researchers attack this kind of problem with face localization and feature selection with frontal view faces and without facial expressions and normal lighting conditions although the variation between the images of the same face is too large due to facial expression, hair style, pose variation, lighting conditions, make-up, etc.In this paper, the effectiveness of the face detection algorithm has been tested both in simple and complex backgrounds for different types of face and non-face images of 320×240 resolution.The algorithm is capable of detecting the faces in the images with different backgrounds.A rotated human face can also be detected, even if the face is under shadow, wearing glasses, or under bad lighting conditions.
(a) Images with different illumination and contrast (b) Images with same illumination and same rms contrast

TABLE I .
PARAMETER SETTINGS

TABLE II :
PERFORMANCE ANALYSES FOR GA BASED