RECOGNITION OF MULTI-VIEW HUMAN FACES BASED ON MACHINE INTELLIGENCE USING KLT ALGORITHM

Nowadays Image Processing has become a proficient domain due to the prolific techniques like face detection and face recognition. They play an important role in our society due to their use in wide range of applications such as surveillance, security, banking


Introduction
The human face processing techniques for video, including face detection, tracking, and recognition, has attracted a lot of research interest because of its value in various applications, such as criminal identification, security system, image and film processing as the human face provides rich information for spotting the appearance.Automated face recognition system is a big challenging problem and undergoing several researches.There are many approaches and proposed algorithms to identify and recognize human being face.The recent development in this field has improved the processing capacity and high accuracy.There are many existing systems Http://www.granthaalayah.com©International Journal of Research -GRANTHAALAYAH [124] to identify faces and recognized them.But the systems are not so efficient to have automated face detection, identification and recognition.And there are difficulties in the development of efficient feature extracting and high processing power for retrieval from a huge image database.A video image is a complex high dimension (3D) matrix.The processing of matrix operation is not so fast and perfect, hence, this directs us to handle with a huge image database and focus on the new algorithms which are more real-time and more efficient with maximum percentage of accuracy.And another problem in face recognition is machine learning to find the relevant characteristics of face and non-face samples and multi -view faces .The present system have good performance in detection of frontal faces, but locating multi-view faces remains a difficult problem due to the much more complication within the multi-view face class.Statistics show that most of the photos and videos faces are non-frontal, and therefore, the ability to deal with multi-view faces is important for many face related applications.New efficient and robust multiview face recognition in video is presented in this paper.

Methodology
The general block diagram for face recognition in video system have two main blocks, the first is the face tracking and second is the face recognition.The basic face recognition model is shown in figure1.

2.1.Face Tracking
The process of locating a moving faces over a period of time is known as face tracking.First, the face detector initializes the given face.Then the subsequent video frames are analyzed by face tracker and the motion parameter of face is estimated to determine the outputs from the initialized face within these frames.Face tracking acquires the information on many consecutive faces within subsequent frames in which the faces are identical.At the run time, the faces in the video frame are outlined and tracks are ranked according to the similarity.Since tracking is corresponds to one face identity, the workload of face matching is reduced efficiently.In addition to this, face tracking is also used for the association of face is its objective is to label television or CCTV footage with the identity of the person present in each frame of the video.The face tracking consists of two blocks such as face detector and feature extraction.

Working of Face Tracker
Face tracking is a kind of algorithm that analyzes video frames and the location of moving faces within each frame are output.For each tracked face, three steps are involved, i.e., initialization, tracking, and stopping.The first step of tracking is initialization.There are many methods in initialization.In most methods, the initialization of the tracking process is done by face detector.But the two problem arises while detecting.They are: non-facial problem and non-frontal face.Although there are many studies in profile or intermediate pose face detectors, they all suffer from the major problem called false detection problem.To alleviate these problems, instead of using a fixed threshold, we uses two face probability maps, one for frontal views and one other for profile view.All local maximum values in these maps are chosen as face candidates whose probabilities goes to zero or remain low over time are determined t be non-face and the face probabilities of which are propagated throughout the temporal sequence are estimated.The intermediate head pose is represented by combining the information from the two face probabilities maps.This type of proposed probabilistic detector is more accurate than a traditional face detector.And by this method, we could handle head movement covering ±90 degree out-of -plane rotation called yaw.

Feature Extraction
After initialization, one should choose the features to track before tracking a face.The exploitation of color is one of the more common choices.However, color-based face trackers do not work on unknown videos with varying illumination conditions or on faces of people of different races.The other choices of facial features that are more robust to varying illuminations are eyes, nose, mouth, etc.

Stopping
After tracking, there is a need for checking weather the face tracked correctly or not.The process is continued until it is tracked correctly otherwise process is stopped and starts tracking from beginning.

2.2.Face Recognition
The process of identifying or verifying one or more persons appearing in a scene by using a stored database of faces is called Face Recognition.

Recognition Techniques
In general, a single image can be viewed as a point in a Euclidean image space.In dimensions, D is equal to the number of pixels of the input face image.
Usually D is large, leading to the curse of dimensionality problem.However, the surfaces of faces are mostly smooth and have regular texture, making their appearance quite constrained.As a result, it can be expected that face images can be confined to a face space, a manifold of lower dimension d << D embedded in the image space.The eigen-face method is a popular technique for dimensionality reduction when a set of training face images is given.A face is represented as a point in a high dimensional eigen-face space, which is computed from a set of training faces using principle component analysis (PCA).

KLT Algorithm
Human tracking is one of the most important for various applications including surveillance, activity monitoring and gate analysis.Many efficient object tracking algorithms have been proposed in literature, however part of those algorithms are semi-automatic requiring human interference.As for the fully automated algorithms, most of them are not applicable to real-time applications.This project presents a low cost automatic object tracking algorithm suitable for video based systems.The novelty of the proposed system is that it uses a simplified version of the Kanade-Lucas-Tomasi (KLT) technique to detect features in pose variation.Lucas-Kanade proposed the method for image alignment(tracking) and Tomasi-Kanade proposed the method for best features extraction(image patch).
The KLT algorithm can be divided into two main parts.One is Feature point detection and second is Feature point tracking.During the detection process, salient feature points are found and added to the already existing ones.Afterwards, in the tracking process for each feature point its corresponding motion vector is calculated.

3.1.Feature Point Detection
The task performed here is to detect the feature points in a given image I and add them to the already existing feature points.The structure matrix L can be defined as The information about the neighborhood region Wis given by the its eigen values λ1,λ2.If neighbourhood regionW is a. completely homogeneous, then λ1 = λ2 = 0. b.Contain edge, then λ1 > 0, λ2 = 0. c. a corner, thenλ1 > 0, λ2 > 0.
The feature point detection undergoes the following steps: 1) Calculate structure matrix Land λ for each pixel in the given image I.
2) Calculate the maximum λ max occurring in the image.
3) 3. Eliminate all the pixels which have λ equal to or smaller than λ max .Keep all pixels that have a λ larger than λ max .4) Perform a non-maxima suppression within the 3 x 3 pixel neighborhood of the remaining points to keep only the local maxima.5) From the remaining points, add new points to the already existing points, starting with the points with the highest λ values.

3.2.Feature Point Tracking
Here, we want to calculate for each feature point qin image I its corresponding motion vector iso that its tracked position in image T is q+ i.The following are the steps for face tracking: 1) Set initial motion vector i (0,0) 2) Calculate image gradient II / (x, y)

3.3.Overall Algorithm Process
The steps involved in KLT algorithm are as Follows: Let I as the current image and T as the immediately next image in the sequence.

Local Binary Pattern
LBPs is very effective for representation of image which have been applied to visual inspection, motion detection and outdoor scene analysis.The most important properties of LBP features is the monotonic illumination changes tolerance and it is computational simplicity and they specifically indicate the edges, spots, and flat areas of the image.
The operator labels the pixels f P (P = 0,. . .,7) of an image by threshold a 3 X 3 neighborhood of each pixel with the value of the center pixel f c and considering the result as a binary number S(f p -f c ).Then, by assigning a binomial factor 2 P for each S(fp -fc) the LBP is computed as follows: ………………… equation ( This operator was extended to use neighborhoods of different sizes, to capture dominant features at different scales.The Notation LBP(P,R) denotes the neighborhood of P which is equally spaced sampling points on a circle of radius R. Figure 6 is a basic LBP where P = 8 and R = 1.A small subset of the 2 p patterns accounted for the majority of the texture of images are called uniform patterns which contain at most two bitwise transitions from 0 to 1 or vice versa for a circular binary string.Non-uniform LBPs are less useful for texture recognition because they the noise occur in the image makes them ineffective for discriminating between patterns.
For example, Let us consider two uniform patterns such as 01100000 and 11011111.These binary patterns are used to represent texture primitives such as spot, flat area, edge and corner.The uniform patterns contain (P -1)P + 2 total binary patterns, Where (P -1)P are rotational patterns which includes edges and two non-rotational patterns such as spot and flat area.Patterns where U(x) > 2, are defined as non-uniform patterns:  LBPs are most commonly used for facial recognition.The face is divided into smaller regions, typically a 'uniform grid' of an odd number of equal divisions in both the horizontal and vertical directions.The LBP operator is applied to each of these regions, and the resulting image is then used to create a histogram.The histograms from the regions are appended to create a 'spatially enhanced histogram'.

Result
This section contains results of our experiments.This involves databases, performances, pose estimation and comparison.

5.1.Database
This section consists of template images of input video that is extracted frames of video.This comprises of set of poses in multiple views.The train images to be compared and recognized are also stored in databases such as CalTech data set and the Database of Faces dataset.This chooses one random image from each class in dataset to be the training sample and uses other remaining images for testing.

5.2.Performance Evaluation
The faces were labeled on the basis of poses.For the angles like 22.5, 45, 67.5 faces, eyes and chin were labeled.For the 90 faces, eyes, nose and chin were labeled.On the basis of ground table, faces were extracted and scaled to 19×19 pixel window according to non-frontal face model depending on pose.In frontal faces, distances between eyes are constant whereas nonfrontal is not constant.Frontal faces can be used to compute a ratio between original and window image.The ratio is calculated using the distance between eye and chin in the original image that is EC, and the distance between the eye and chin in window (i.e.,) EYE_CHIN.EYE_CHIN is computed as: EYE_CHIN = en_gn•model_width zy_zy where, zy_zy is width of the face, model_width is width of the window and en_gn is the lower half of the craniofacial height.We can compute ratio as: ratio = EC EYE_CHIN For feature extraction is done using points, we have taken two eyes, nose and chin.

5.3.Face Recognition
Face recognition process involves the matching of the template with the train image.This took place on the basis of the comparison of train images with template.In verification, an image is matched to only one image in the database (1:1).For example, an image taken of a subject may be matched to an image in the Department of Motor Vehicles database to verify the subject is who he says he is.If identification is the goal, then the image is compared to all images in the database resulting in a score for each potential match (1:N).The image is warped using the jacobian and steepest descendent values.These parameters are updated using the Hessian values.It is then inverted and Eigen images are detected.So the train images are compared with the Eigen faces stored in the dataset.The output will interpret the recognition rate as follows:

Figure 3 :
Figure 3: Frames Figure shows an example of a set of eigen-faces computed from 3,816 faces.