Facial Surface Analysis using Iso-Geodesic Curves in Three Dimensional Face Recognition System

In this paper, we present an automatic 3D face recognition system. This system is based on the representation of human faces surfaces as collections of Iso-Geodesic Curves (IGC) using 3D Fast Marching algorithm. To compare two facial surfaces, we compute a geodesic distance between a pair of facial curves using a Riemannian geometry. In the classifying step, we use: Neural Networks (NN), K-Nearest Neighbor (KNN) and Support Vector Machines (SVM). To test this method and evaluate its performance, a simulation series of experiments were performed on 3D Shape REtrieval Contest 2008 database (SHREC2008).


I. INTRODUCTION
Face recognition is one of the most commonly used techniques in biometrics authentication applications, of access and video surveillance control, this is due to its advantageous features. In a face recognition system, the individual is subject to a varied contrast and brightness lighting, background. This three-dimensional shape, when it is part of a two-dimensional surface, as is the case of an image, can lead to significant variations. The human face is an object of three-dimensional nature. This object may be subject to various rotations not only flat but also space and also subject to deformations due to facial expressions. The shape and characteristics of this object also change over time.
In these last years, a number of methods have been proposed for the recognition of human faces. In spite of the results obtained in this domain, the automatic face recognition stays one of very difficult problem. Several methods were developed for 2D face recognition. However, it has a certain number of limitations related to the orientation of the face or laying, lighting, facial expression. These last years, we talk more and more about 3D face recognition technology as solution of 2D face recognition problems. There are methods of 3D face recognition based on the use of three-dimensional information of the human face in the 3D space. Existing approaches that address the problem of 3D face recognition can be classified into several categories of approaches: Geometric or Local approaches 3D, Bronstein et al [1,2]  propose a new representation based on the isometric nature of the facial surface, Samir et al [3,4] use 2D and 3D facial curves for analyzing the facial surface; Holistic approaches, Heseltine et al [5] have developed two approaches to applying the representations PCA Three-dimensional face, Cook et al [6] present a robust method for facial expression based on Log-Gabor models from images of deep and some approaches are based on face segmentation can be found in [7 , 8, 9, 10, 11, 12].
In this work we present an automatic 3D face recognition system based on facial surface analysis using a Riemannian geometry. For this we take the following steps: -Detection of 3D face where the nose end is a reference point.
-Iso-geodesic curves extraction using a 3D Fast Marching algorithm.
-Compute of geodetic distance between two iso-geodesic curves using mathematical formulas in Riemannian metric.
The rest of this paper is organized as follows: Section 2 describes the methodology of the proposed method with its stages: reference point detection, geodesic distance computing, facial curves extraction. Section 3 includes the simulation results and analysis. Section 4 draws the conclusion of this work and possible points for future work.

II. METHODOLOGY
Given an image of 3D face Shape REtrieval Contest 2008 database (SHRED2008) database our goal is to realize an automatic 3D face recognition system based on the computation of the geodesic distance between the reference point (nose tip) and the other points in the 3D face surface. So, our algorithm is divided to four main steps, first: Reference Point Detection, in this paper we have detected the point of reference (nose tip) manually. Second: Geodesic Distance computation, an effective method to compute a geodesic distance between two points of facial surface is using the Fast Marching as a numerical algorithm for solving the Eikonal equation. Third: facial curves extraction and compute a geodesic distance between each pair of curves.

A. Reference Point Detection
The reference point (nose tip) is detected manually or automatically. There are several automatic approaches: L. Ballihi et al are developed an automatic algorithm nose end detection of a 3D face in [13]. This algorithm is based on two cuts of the facial surface. The first is at transverse face of the mass center. The second cut is based on the minimum depth point of the horizontal curve obtained by the first cut. The output of the last cut is a vertical curve and the minimum depth of this curve is the end of 3D face nose. In [14] S. Bahanbin et al use Gabor filters to automatically detect the nose tip. Another method has been used by C. Xu et al in 2004 [15], this method computes the effective energy of each neighbor pixel, then be determined the mean and variance of each neighbor pixel and uses the SVM to specify point end of the nose. L.H. Anuar et al [16] use a local geometry curvature and point signature to detect a nose tip region in 3D face model.
In this work we have detected the point of reference p 0 (nose tip) manually. The following figure (figure2) summarizes the steps to detect the nose tip of a 3D face an image of the database SHREC2008:

B. Geodesic Distance
The geodesic distance between two points p0 and p of 3D face surface is the shortest path between the two points while remaining on the facial surface. In the context of calculating the geodesic distance R. Kimmel and J.A. Sethian [17] propose the method of Fast Marching as a solution of the Eikonal equation.
The Eikonal equation given as: with: -Ω is an open set in R n housebroken limit.
The Fast Marching method is a numerical method for solving boundary value problems of the Eikonal equation [17,18,19]. The algorithm is similar to the Dijkstra's algorithm [20] and uses that information flows only to the outside from the planting area.
We consider a 3D face surface discretized using a triangular mesh with N vertices. Figure (3) shows a 3D face image of the Shape REtrieval Contest 2008 (SHREC2008) database whose obverse surface is discretized into a triangular mesh. The geodesic distance between two points on a surface is calculated as the length of the shortest path connecting the two points. Using the Fast Marching algorithm on the triangulated surface 3D face, we can compute the geodesic distance between the reference point P0 and the other points p constructing the facial surface.
The geodesic distance δ p0,p between p 0 and p is approximated by the following expression: with: -β(p 0 , p) is the path between p 0 and according to the facial surface S of the 2D face.
The following figure (Figure4) shows the steps for determining the geodesic distance using a 3D face image of SHREC2008 database.

C. Facial Curves
This 3D face recognition method is based on the analysis of facial surfaces by analyzing of facial curves using Riemannian geometry. To extract the curves of a 3D face surface, the first step is to define the real-valued function on this surface [17]. According to the extraction strategy, different types of facial curves can be found: 1-Iso-depth curves, these curves are obtained by the intersection of the 3D face surface with parallel planes perpendicular to the direction of watching. The depth curves located at equal values of z [17]. 2-Iso-radius curves, these curves are determined by the intersection of the facial surfaces with spheres as centre is the reference point of 3D face (nose tip) and variable radius [13]. 3-Iso-geodesic curves are defined as the locations of all points on the facial surface having the same geodesic distance to the reference point chosen (in our case the end of the nose). The geodesic distance between two points on a surface is the shortest path between these two points along of surface [13,17].
In this work, we represent the 3D human face surface by a collection of iso-geodesic curves. To extract the isogeodesic curves we use the Fast Marching algorithm as a solution of Eikonal equation [19]. Figure (5) present the steps of extracting of iso-geodesic curves in some 3D face images of SHREC2008 database. Given two points on a face surface S (reference point p 0 and p), A geodesic distance between p 0 and p is defined as the arc length of the shortest path between these two points along the surface and denoted by a Geodesic Distance Function (GDF), which is a continuous function on the facial surface.
We can therefore define the facial curves by: The function F defines the geodesic distance between p 0 and p, or the length of the shortest path between these two points while remaining on the surface S.
This definition allows us to cite three cases c k according to the values of k: • If k = 0 then c k tends towards the reference point p 0 : c k = {p 0 }.

D. Riemannian analysis of facial curves
To analyze the facial surfaces, we simply analyze the iso-geodesic curves that characterize these 3D face surfaces and compute a geodesic distance between them on a manifold depends on the Riemannian metric. To analyze the curve shape, we use the parameterization by the mathematical function SRVF (Square Root Velocity Function) [30,31].
Let a parameterized closed curve be denoted as β : I → R 3 , for a unit interval I ≡ [0, 2π], β is represented by its SRV F : q : I → R 3 defined as follow: Where, • . is the standard Euclidean norm in R 3 .
• q(s) is the square-root of the instantaneous speed on the curve β. Thus, the curve β can be recovered within a translation, using: We define the set of closed curves β in R 3 by: . denotes the set of all functions integral S 1 to R 3 • S 1 q(t) q(t) dt denotes the total displacement in R 3 while moving from the origin of the curve until the end. When S 1 q(t) q(t) dt = 0 the curve is closed.
All 3D closed curves are defined as nonlinear variety in the Helbert space. To analyze the shapes of the iso-geodesic curves and compute a geodesic distances between them, it is important to understand all vectors of their tangent spaces and impose a Riemannian structure. We equip the space of the closed curves of a Riemannian structure using the inner product defined as follows: (f (s), g(s))ds (8) Here, f and g are two vectors in the tangent space T v (c). We can also define T v (c): is a space of the normal vectors to the face curve.
After a mathematical representation of iso-geodesic curves using Riemannian metric, this metric should invariant certain transformation (translation, rotation, scale) [30]. The question to ask is how to compute the geodesic distance between two closed curves?. To answer this question, we used the approach introduced by Klassen in 2007 [31]. This method use path straightening flows to find a geodesic between two shapes.
To compare two facial surfaces, we just compare a pairs of closed curves of these two facial surfaces. Lets c 1 and c 2 two facial curves (iso-geodesic curves), q 1 and q 2 are respectively there Square Root Velocity Function (SRV F ). The geodesic distance between c 1 and c 2 is computed by: With ε is a geodesic path determined by the training method, this method is to connect the two curves by an arbitrary path α then update the path repeatedly in the negative direction of the gradient of the energy given by: ε has been shown that the critical points of the energy equation E[α] are geodesic paths in S [31,13].
The facial surfaces S 1 and S 2 are represented by their iso-geodesic curves collection respectively {c 1 k ; k ∈ [0, k 0 ]} and {c 2 k ; k ∈ [0, k 0 ]}, k is a geodesic distance between p 0 (reference point) and p two points of facial surface S. The vectors of geodesic distances computed between a pairs of facial curves are used as input vectors of classification algorithms of our automatic facial recognition system.
To realize our 3D face recognition system, we use three classification algorithms are: the Neural Networks (NN), k-Nearest Neighbor (KNN) and Support Vector Machines (SVM).

III. SIMULATION RESULTS
In this section we make a series of simulation to evaluate the effectiveness of the proposed approach. These results were performed based on SHREC 2008 database. This database contains total of 427 scans of 61 subjects (45 males and 16 females), for each of these 61 subjects 7 different scans, namely two frontal, one look-up, one look-down, one smile, one laugh and one random expression [21,22].
In this paper, the features were extracted using Iso-Geodesic Curves (I-GC). This method was based on two principal steps: Iso-Geodesic Curves extraction using Fast Marching algorithm as solution of Eiconal equation and compute the length of the geodesic path between each facial curve and its corresponding curve using a Riemannian framework.
The following figure (6) summarizes the first experimental results of our simulation:  Figure 5 shows the recognition rate in terms of number of facial curves used to represent a 3D human faces used in our systems. This figure shows that the images of the SHREC 2008 database are represented using five facial curves.
Given a candidate 3D face image (Img) of SHREC 2008 database. Img is represented using five iso-geodesic curves. The shortest path between two 3D face images id defined as the sum of the distance between all pairs of corresponding facial curves in the two face images. The feature vector is then formed by the geodesic distances computed on all the curves and its dimension is equal to the number of used iso-geodesic curves (five curves for SHREC 2008 database). These vectors are used as input of classification algorithms of our 3D face recognition systems.  Figure 7 shows the recognition rate for SHREC 2008 images using three classification algorithms: Neural Networks (NN), K-Nearest Neighbor (KNN) and Support Vector Machines (SVM). The best recognition rate was obtained using Support Vector Machines (SVM) as classification algorithm with recognition rate equal 98, 9%.
In conclusion of this series of results, a summary  We can notice that the performance of our automatic 3D face recognition system, In addition our system is perfect in all assessment. Our goal was to improve 3D faces recognition system we affirm based on the results that our goal is achieved.

IV. CONCLUSION
In this work, we have presented a 3D face recognition system based on the computation of the geodesic distance between the reference point and the other points in the 3D face surface. This method represents a face surface as a collection of Iso-Geodesic curves and computes a geodesic distance between each pairs of these facial curves. For the classifying step we have implemented algorithms as Neural Networks (NN), K-Nearest Neighbor (KNN) and Support Vector Machines (SVM). Simulation results show us a better recognition rate (98.9%) using SVM classification algorithm.