An Efficient P-KCCA Algorithm For 2 D-3 D Face Recognition Using SVM

In this paper, a novel face recognition system for face recognition and identification based on a combination of Principal Component Analysis and Kernel Canonical Correlation Analysis (P-KCCA) using Support Vector Machine (SVM) is proposed. First, the P-KCCA method is utilized to detect and extract the important features from the input images. This method makes it possible to match the 2D face image with enrolled 3D face data. The resulting features are then classified using the SVM method. The proposed methods were tested on TEXAS database with 200 subjects. The experimental results in the TEXAS face database produce interesting results from the point of view of recognition success, rate, and robustness of the face recognition algorithm. We compare the performance of our proposed face recognition method to other commonly-used methods. The experimental results show that the combination of P-KCCA method using SVM achieves a higher performance compared to the alone PCA, CCA and KCCA algorithms.


Introduction
Face detection is a very useful subject and it plays an important role in the real applications.The recent interest in face recognition can be attributed to the increase of commercial interest and the development of feasible technologies to support the development of face recognition [1].Major areas of commercial interest include biometrics, human-computer interaction, mul-timedia management (for example, automatic tagging of a particular individual within a collection of digital photographs) smart cards, passport verification, verification in police department and security measure.Many methods and approaches have been proposed in the literature.Two of these approaches, namely the combination of principal component analysis with kernel canonical correlation analysis (P-KCCA) and support vector machines (SVM) are the subject of this paper.The problem of human face recognition is complex and highly challenging because it has to deal with a variety of parameters including illumination, pose orientation and face background [2] and [3].
Principal Component Analysis (PCA) is method used mainly for dimensionality reduction.It compresses the attribute space by identifying the strongest patterns in the input data set.The attribute space is reduced by the smallest possible amount of information about the original data.The CCA can simultaneously deals with two sets of data, in contrast to Principle Component Analysis (PCA).KCCA has also been successfully applied to content-based retrieval, text mining, and facial expression recognition.The SVM is another method widely used in pattern recognition, including face recognition.SVM is a set of related supervised learning method used in the feature classification step of a face recognition system.The main idea of a SVM is to construct a hyper-plane as the decision surface in such a way that the margin of separation between positive and negative examples is maximized.The separating hyper-plane is defined as a linear function drawn in the feature space [4].Ideally, however, the hyper-plane should not be linear in order to achieve better performance.By using kernel functions, the scalar product can be implicitly computed in a kernel feature space, without explicitly using or even knowing the mapping [5].
The rest of the paper is organized as follows: In section 2. related work is briefly reviewed.The face recognition system and image classification are discussed in section 3. The proposed methodology is described in section 4. Experimental results are listed in section 5. and finally we summarize this paper in section 6.

Related Work
In [6] Howley et al. have investigated the effect of PCA on machine learning accuracy with high dimensional spectral data based on different pre-processing steps.Different techniques can be applied to perform a principle component analysis, for example, either the covariance or the correlation matrix can be used to calculate the eigenvalue decomposition.
There are several methods to tackle the 2D-3D face matching problem.Rama et al. [7] use Partial Principal Component Analysis (P2CA) to match 2D face image (probe) with 3D face data (gallery).In [8], D. Riccio et al. propose a particular 2D-3D face recognition method based on 16 geometric invariants, which are calculated from a number of "control points".In [9], W. Yang et al. propose Pixel Level Image Fusion Scheme based on PCA and other methods.Published results on multimodal 2D-3D face recognition have shown that the recognition of faces from 2D and 3D facial data results in better performance when compared to using solely 2D or 3D data.Inspired by the results presented in the papers listed above we propose the modified 2D-3D algorithm based on PCA using SVM.

System for Face Recognition
The proposed recognition system performs the following classical stages: face verification and location (face tracking and pose estimation), feature extraction, feature detection (feature tracking and emotion recognition), and classification of the feature vectors.This last stage is performed by the two matching schemes: P-KCCA in combination with a Euclidean classifier and SVM.
The more discriminating set of extracted features were selected to model the face in the recognition system.Following sections explain these stages in detail.The procedure of the face recognition system is as follows.First, features of images are extracted.Second, the classifier is trained on training set of images and models for classes are generated.Finally, these classifications models will be used to predict test images.Common transform methods

3.1.
Overview of CCA and KCCA The Canonical Correlation Analysis (CCA) is a suitable and dominant technique which can be used for exploring the relationships among multiple dependent and independent variables [10].Therefore a powerful feature projection approach for facial images, which is based on canonical correlation analysis, is proposed.CCA recognizes and measures the relationship between two sets of variables [11].Compared to other projection approaches like Principal Component Analysis (PCA) [12] and Linear Discriminant Analysis (LDA), CCA can concurrently deal with two sets of data.The goal of CCA is to identify relationships between two sets of variables, X and Y , where X and Y describe different properties of particular objects.For two sets of multivariate data, X and Y , CCA finds two sets of basic vectors w x and w y so that the correlation is maximized between the projections of variables onto these vectors.CCA maximizes the following function: where E represents empirical expectation of the function f (x, y), C xx and C yy are the within-set covariance matrices, C xy and C yx are between sets covariance matrices of X and Y respectively.By solving the following eigenvalue equations, the canonical correlations between X and Y can be found [13]: where eigenvalues ρ 2 are the squared canonical correlations and eigenvectors w x and w y are the normalized canonical correlation vectors.
Because of the nonlinear relationship between 2D face images and 3D face data, CCA may not extract useful descriptors of the data.A fundamental limitation of CCA is that the projection functions that map X and Y to a common space must be linear.Unfortunately, this means that CCA cannot capture non-linear relationships between the control features and the observational features.Therefore, here we also introduce the Kernel Canonical Correlation Analysis (KCCA) [14], which offers an alternative solution to this drawback.KCCA projects data into a higher dimensional feature space prior to performing the CCA.In the other hand, KCCA is a non-linear variant of CCA, the goal of which is to identify and quantify the association between two sets of variables.We turn to KCCA, an extension of CCA that allows it to use kernel functions to transform the feature sets X and Y into higher dimensional spaces before applying CCA.Intuitively, we would like to transform X and Y using non-linear functions Φ X and Φ Y into Φ X (X) and Φ Y (Y ), and apply CCA to these transformed spaces [14] and [15]: After the kernel process, one can implement the CCA calculate in mapping space.KCCA is accomplished in finding common semantic features between different views of data.

SVM Classification
Support vector machine (SVM) is a modern classification method with a nonlinear classification function using an iterative method [16], [17] and [18].SVM is an unsupervised approach based on statistical learning theory.It estimates the optimal boundary in the feature space by combining a maximal margin strategy with a kernel method.The decision boundaries are directly derived from the training data set by learning.The main goal of SVM classification is to find decision boundaries between classes in the feature space that can best separate different classes.It can maximize the margin between the classes by selecting a minimum number of support vectors.The SVM maps the inputs into a high-dimensional feature space through a selected kernel function.Then, it constructs an optimal separating hyper-plane in the feature space.The dimensionality of the feature space is determined by the number of support vectors extracted from the training data (see Fig. 2).The SVM can locate all the support vectors, which exclusively determine the decision boundaries.

Proposed Method
In this section we present the proposed method that combining two approaches of face recognition, namely PCA with KCCA and SVM algorithm.PCA is used to decrease the dimension of face feature space.KCCA is used to identify and quantify the association between two sets of variables.It is a non-linear variant of CCA.SVM is used as classifier to verify face candidate.It is trained by face and non-face samples which are represented by PCA.The objective of the proposed method is to recognize a 2D object containing a human face.
The proposed system follows our previous work on face recognition [19] and [20].In contrast to earlier work, we include the process of P-KCCA to reduce the feature vector so that high-dimensional data can be handled with less complexity [21].
The face recognition system using 2D-3D images is illustrated in Fig. 3.In this figure, the gallery means a set of known individuals.The images used for testing the algorithms are called probes.Probe set is the "testing" set.The images in the probe set are typically of the same subjects who are in the gallery set, but are taken at a later point in time.Gallery is the set of subjects enrolled in the database and can either be the same as the training set or different.The recognition algorithm returns the best match between each probe and images in the gallery.The estimated identity of the probe is the best match [22].
Face verification is a one-to-one match that compares a query face image against a template face image whose identity is being claimed.Face identification is a oneto-many matching process that compares a query image against all template images in a face database to determine the identity of the query face (see Fig. 4).
Pre-processing is an important stage of the recognition systems, since all the features will be extracted from the output of this step.We used the simple techniques in the pre-processing step:  • Removing noise.
The median filter for noise removal was used and 2D interpolation for hole filling was applied.In the proposed method, training phase and testing phase are divided into following stages: Training phase: • Training images are selected and placed into the folder.Reading the training images.
• Apply P-KCCA to the set of pre-processing images (reduce the feature vector).
• Compute the weights w 1 , w 2 , w 3 ,. . ., w N for each training face using P-KCCA, where N is the dimension of Eigen subspace.
• The SVM method is trained and tuned for testing phase.
• Store the weights w 1 , w 2 , w 3 ,. . ., w N for each training image to the feature database.
Testing phase: • Reading the test images.• PCA is applied first.The feature vectors are identified using the Euclidean distance function on the training data.
• Using the Kernel trick method (KCCA), the distance matrix is converted into the kernel matrix (it can be applied for multiclass classification).
• Compute the Euclidian distance between the test feature vector and the feature vectors stored in the KCCA feature database obtained using SVM.
• The face, corresponding to the minimum distance computed in the previous step is the recognized face.
• Classified object and the label are displayed.
The training set contains 3D pairs of 50 subjects.In the testing phase, randomly chosen 200 face images of the TEXAS 3D face database with variations in facial expressions are used.The sample training 3D images which are used for our experimentation are shown in the Fig. 6 down.The training is performed by n poses from each subject and the performance testing is performed by n poses of the same subjects.After calculating the eigenfaces using PCA the projection vectors are calculated for the training set and then stored to the KCCA feature database.The feature vector is assigned to the image using KCCA.This architecture is called P-KCCA.The face class can be calculated by averaging the results of the eigenface representation over a small number of face images of each individual.Classification is performed by comparing the projection vectors of the training face images with the projection vector of the input face image.This comparison is based on the SVM.The training phase and testing phase of the proposed method are shown in Fig. 5.

Experiments and Results
In this section, we evaluate the performance of the proposed algorithms for 2D-3D face recognition [23].
The proposed method was implemented in MATLAB environment.

Face Dataset
The experiments have been performed on the TEXAS face database, which was developed at the Laboratory for Image and Video Engineering of The University of Texas in Austin.The TEXAS face database [24] contains pairs of 2D face images and 3D face data of 200 faces.The images are of size 751×501 pixels.Each value in z-dimension is represented in 8 bit format with the highest value of 255 assigned to the tip of the nose and a value of 0 assigned to the background.The faces are in neutral and expressive modes.Some example of face images from the TEXAS face database [24] are shown in Fig. 6.

Experimental Part
The proposed P-KCCA method using SVM for 2D-3D face recognition on the same TEXAS face database [24] was applied.Conventional PCA, CCA, KCCA and SVM algorithms are explained in section 3.
Here, a 2D face image has been taken as a reference image and 3D face data form a test database.The test set has been built from the 200 subjects of the TEXAS face database.A random 2D face image represented by a vector X is selected as a reference.Then each 3D face image from the test set is transformed into the corresponding vector Y .The canonical correlation coefficient r is calculated by using KCCA algorithm between the reference 2D image and each of the 3D face images [25] and [26].
The principle of the proposed P-KCCA algorithm is shown in Fig. 7.The proposed P-KCCA algorithm  The output of the KCCA algorithm is a pair of direction ω x and ω y that helps to maximize correlation between the two face images and also canonical correlation coefficient r, which is calculated from these directions ω x and ω y .The SVM classifier finds an ideal separating hyper-plane in a higher dimensional feature space.For a given training sample belonging to two different classes, SVM derives a hyper-plane, which is at a maximum distance from the closest points belonging to both the classes.To find the optimal separating hyper-plane, assume that the two classes to be distinguished are linearly separable.In our experiment, the SVM is a two-class classifier.It is trained by face and non-face samples which are represented by P-KCCA.An example of correct 2D-3D face recognition matches is shown in Fig. 8. gorithms.
As it can be seen in Tab. 1, the best 2D-3D face match results were obtained by the proposed P-KCCA algorithm using SVM.The 2D-3D faces recognition based on others methods (alone PCA, CCA, KCCA and combination of CCA-KCCA) give comparative recognition rate for the 200 subjects (above 61 %, 57 %, 54 % and 69 % respectively).In the contrast to P-KCCA is the recognition rate lower (above 19-34 %).The proposed P-KCCA algorithm achieved the recognition rate above 88 % for the 200 test subjects.Performance of the proposed KCCA-based algorithm is very satisfactory and applicable to future work.
So we can conclude that in 3D face recognition area utilizing 2D-PCA in combination with KCCA can perform better because they increase the recognition rate considerably.

Conclusion
In this paper, we have investigated the relationship between various feature reduction methods (feature subset selection as well as dimensionality reduction) and the resulting classification performance.The novel hybrid face detection method based on combination of PCA and KCCA using SVM was proposed.The combination of PCA, KCCA and SVM has high performance in face detection task.The strong influence of different feature reduction methods on the classification accuracy observed underlines the need for more investigation in the complex interaction between feature reduction and classification.The approaches based on only PCA, CCA or KCCA achieve relatively low level of recognition for 2D-3D images.On the other hand, the combining approach P-KCCA using SVM achieve relatively higher recognition rate about 88 %.However, it is interesting to note that on the test data's the accuracy decreases clearly when fewer principal components are used, similar to the situation when feature subsets are used.It decreases the computation complexity drastically compared to the conventional 2D-3D face matching.The recognition rate using our proposed P-KCCA approach applies to future work.Also in the future it can be combined with other methods and thus even improve the robustness and accuracy.
Next, we need to improve the performance of classifier and the face potential area selection method.Future works can also include experiment this method on other 3D face databases.

Table 1
The overall recognition results for different number of subjects in the test set are shown in Tab. 1.We compared face recognition results obtained on TEXAS face database for different tested al-Tab.1: Face recognition rate for different number of subjects.