Facial Surface Analysis using Iso-Geodesic Curves in Three Dimensional Face Recognition System
11 Facial Surface Analysis using Iso-Geodesic Curvesin Three Dimensional Face Recognition System
Rachid AHDID, El Mahdi BARRAH, Said SAFI and Bouzid MANAUT
Abstract —In this paper, we present an automatic 3D facerecognition system. This system is based on the representationof human faces surfaces as collections of Iso-Geodesic Curves(IGC) using 3D Fast Marching algorithm. To compare twofacial surfaces, we compute a geodesic distance between a pairof facial curves using a Riemannian geometry. In the classifyingstep, we use: Neural Networks (NN), K-Nearest Neighbor (KNN)and Support Vector Machines (SVM). To test this method andevaluate its performance, a simulation series of experimentswere performed on 3D Shape REtrieval Contest 2008 database(SHREC2008).Keywords 3D face recognition, Facial surfaces, Riemanniangeometry, iso-geodesic curves, geodesic distance, SHREC2008database
I. I
NTRODUCTION
Face recognition is one of the most commonly usedtechniques in biometrics authentication applications, of accessand video surveillance control, this is due to its advantageousfeatures. In a face recognition system, the individual is subjectto a varied contrast and brightness lighting, background. Thisthree-dimensional shape, when it is part of a two-dimensionalsurface, as is the case of an image, can lead to significantvariations. The human face is an object of three-dimensionalnature. This object may be subject to various rotations notonly flat but also space and also subject to deformations dueto facial expressions. The shape and characteristics of thisobject also change over time.In these last years, a number of methods have beenproposed for the recognition of human faces. In spite of theresults obtained in this domain, the automatic face recognitionstays one of very difficult problem. Several methods weredeveloped for 2D face recognition. However, it has a certainnumber of limitations related to the orientation of the faceor laying, lighting, facial expression. These last years, wetalk more and more about 3D face recognition technology assolution of 2D face recognition problems. There are methodsof 3D face recognition based on the use of three-dimensionalinformation of the human face in the 3D space. Existingapproaches that address the problem of 3D face recognitioncan be classified into several categories of approaches:Geometric or Local approaches 3D, Bronstein et al [1, 2]
Rachid AHDID, El Mahdi BARRAH and Said SAFI are with the Depart-ment of Mathematics and Informatics, Sultan Moulay Slimane University,Beni Mellal, Morocco, e-mail: ([email protected]).Bouzid MANAUT was with Department of physics Sultan Moulay SlimaneUniversity, Beni Mellal, Morocco.Manuscript received xxxx; revised xxxx. propose a new representation based on the isometric natureof the facial surface, Samir et al [3, 4] use 2D and 3D facialcurves for analyzing the facial surface; Holistic approaches,Heseltine et al [5] have developed two approaches to applyingthe representations PCA Three-dimensional face, Cook et al[6] present a robust method for facial expression based onLog-Gabor models from images of deep and some approachesare based on face segmentation can be found in [7 , 8, 9, 10,11, 12].In this work we present an automatic 3D face recognitionsystem based on facial surface analysis using a Riemanniangeometry. For this we take the following steps:- Detection of 3D face where the nose end is a referencepoint.- Iso-geodesic curves extraction using a 3D Fast Marchingalgorithm.- Compute of geodetic distance between two iso-geodesiccurves using mathematical formulas in Riemannian metric.The rest of this paper is organized as follows: Section2 describes the methodology of the proposed method withits stages: reference point detection, geodesic distancecomputing, facial curves extraction. Section 3 includesthe simulation results and analysis. Section 4 draws theconclusion of this work and possible points for future work.II. METHODOLOGYGiven an image of 3D face Shape REtrieval Contest2008 database (SHRED2008) database our goal is to realizean automatic 3D face recognition system based on thecomputation of the geodesic distance between the referencepoint (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 detectedthe point of reference (nose tip) manually. Second: GeodesicDistance computation, an effective method to compute ageodesic distance between two points of facial surface isusing the Fast Marching as a numerical algorithm for solvingthe Eikonal equation. Third: facial curves extraction andcompute a geodesic distance between each pair of curves.Finally: classification algorithms, in this step we use threetypes of classification algorithms: the Neural Networks (NN),k-Nearest Neighbor (KNN) and Support Vector Machines a r X i v : . [ c s . C V ] A ug (SVM). Figure (1) illustrates the steps of proposed method inour 3D face recognition system.
3D Face ImageIso-Geodesic Curves ExtractionGeodesic Distance ComputationReference Point DetectionClassification AlgorithmsFace Recognition
Fig. 1. Methodology Architecture
A. Reference Point Detection
The reference point (nose tip) is detected manually orautomatically. There are several automatic approaches: L.Ballihi et al are developed an automatic algorithm nose enddetection of a 3D face in [13]. This algorithm is based ontwo cuts of the facial surface. The first is at transverse faceof the mass center. The second cut is based on the minimumdepth point of the horizontal curve obtained by the first cut.The output of the last cut is a vertical curve and the minimumdepth of this curve is the end of 3D face nose. In [14] S.Bahanbin et al use Gabor filters to automatically detect thenose tip. Another method has been used by C. Xu et al in2004 [15], this method computes the effective energy of eachneighbor pixel, then be determined the mean and varianceof each neighbor pixel and uses the SVM to specify pointend of the nose. L.H. Anuar et al [16] use a local geometrycurvature and point signature to detect a nose tip region in3D face model.In this work we have detected the point of reference p (nosetip) manually. The following figure (figure2) summarizes thesteps to detect the nose tip of a 3D face an image of thedatabase SHREC2008: (a) (b) (c) Fig. 2. 3D face nose end detection steps: (a) 3D face image; (b) Manualnose tip selection; (c) Reference point detection
B. Geodesic Distance
The geodesic distance between two points p0 and p of3D face surface is the shortest path between the two pointswhile remaining on the facial surface. In the context ofcalculating the geodesic distance R. Kimmel and J.A. Sethian[17] propose the method of Fast Marching as a solution ofthe Eikonal equation.The Eikonal equation given as: | (cid:53) u ( x ) | = F ( x ); x ∈ Ω (1)with:- Ω is an open set in R n housebroken limit.- (cid:53) denotes the gradient.- | . | is the Euclidean norm.The Fast Marching method is a numerical method forsolving 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 fromthe planting area.We consider a 3D face surface discretized using a triangularmesh with N vertices. Figure (3) shows a 3D face image of theShape REtrieval Contest 2008 (SHREC2008) database whoseobverse surface is discretized into a triangular mesh. Fig. 3. 3D facial surface discretized on triangular mesh of N vertices
The geodesic distance between two points on a surfaceis calculated as the length of the shortest path connectingthe two points. Using the Fast Marching algorithm on thetriangulated surface 3D face, we can compute the geodesicdistance between the reference point P0 and the other pointsp constructing the facial surface.The geodesic distance δ p ,p between p and p is approxi-mated by the following expression: δ p ,p = minγ ( β ( p , p )) (2)with:- β ( p , p ) is the path between p and according to the facialsurface S of the 2D face.- γ ( β ( p , p )) is the path length.The following figure (Figure4) shows the steps for de-termining the geodesic distance using a 3D face image ofSHREC2008 database. Fig. 4. 3D face geodesic distance computes Steps: (a) 3D face image; (b)Reference point detection; (c) Discretization by triangular mesh; (d) Geodesicdistance computing
C. Facial Curves
This 3D face recognition method is based on the analysis offacial surfaces by analyzing of facial curves using Riemannian geometry. To extract the curves of a 3D face surface, thefirst step is to define the real-valued function on this surface[17]. According to the extraction strategy, different types offacial curves can be found: 1- Iso-depth curves, these curvesare obtained by the intersection of the 3D face surface withparallel planes perpendicular to the direction of watching. Thedepth curves located at equal values of z [17]. 2-Iso-radiuscurves, these curves are determined by the intersection of thefacial surfaces with spheres as centre is the reference point of3D face (nose tip) and variable radius [13]. 3- Iso-geodesiccurves are defined as the locations of all points on the facialsurface having the same geodesic distance to the referencepoint chosen (in our case the end of the nose). The geodesicdistance between two points on a surface is the shortest pathbetween these two points along of surface [13, 17].In this work, we represent the 3D human face surfaceby a collection of iso-geodesic curves. To extract the iso-geodesic curves we use the Fast Marching algorithm as asolution of Eikonal equation [19]. Figure (5) present the stepsof extracting of iso-geodesic curves in some 3D face imagesof SHREC2008 database.
Fig. 5. Extracting facial curves steps: (a) Pre-treated face image, (b) Detectionof the reference point, (c) Compute of geodesic distance, (d) Facial curvesextraction
Given two points on a face surface S (reference point p and p ), A geodesic distance between p and p is defined as the arclength of the shortest path between these two points along thesurface and denoted by a Geodesic Distance Function (GDF),which is a continuous function on the facial surface. F ( p , p ) = k ; k ∈ [0 , + ∝ [ and ( p , p ) ∈ S (3)We can therefore define the facial curves by: c k = { p ∈ S \ F ( p , p ) = k } ⊂ S ; k ∈ [0 , + ∝ [ (4)The function F defines the geodesic distance between p and p , or the length of the shortest path between these twopoints while remaining on the surface S .This definition allows us to cite three cases c k accordingto the values of k : • If k = 0 then c k tends towards the reference point p : c k = { p } . • If k →∝ then c k is empty : c k = { } . • If < k < ∝ then c k approaches S : c k = { p ∈ S \ F ( p, p ) = k } . D. Riemannian analysis of facial curves
To analyze the facial surfaces, we simply analyze theiso-geodesic curves that characterize these 3D face surfacesand compute a geodesic distance between them on a manifolddepends on the Riemannian metric. To analyze the curveshape, we use the parameterization by the mathematicalfunction SRVF (Square Root Velocity Function) [30, 31].Let a parameterized closed curve be denoted as β : I → R , for a unit interval I ≡ [0 , π ] , β is represented by its SRV F : q : I → R defined as follow: q ( s ) = β (cid:48) ( s )( (cid:107) β ( s ) (cid:107) ) = dβ ( s ) ds (cid:113) (cid:107) dβ ( s ) ds (cid:107) ∈ R (5)Where, • s ∈ I ≡ [0 , π ] . • (cid:107) . (cid:107) is the standard Euclidean norm in R . • (cid:107) q ( s ) (cid:107) is the square-root of the instantaneous speed onthe curve β . • q ( s ) (cid:107) q ( s ) (cid:107) is the instantaneous direction at the point s ∈ [0 , π ] along the curve.Thus, the curve β can be recovered within a translation, using: β ( s ) = (cid:90) s q ( t ) (cid:107) q ( t ) (cid:107) d t (6)We define the set of closed curves β in R by: C = { q : S → R | (cid:90) S q ( t ) (cid:107) q ( t ) (cid:107) dt = 0 } ⊂ L ( S , R ) (7)Where, • L ( S , R ) . denotes the set of all functions integral S to R • (cid:82) S q ( t ) (cid:107) q ( t ) (cid:107) dt denotes the total displacement in R while moving from the origin of the curve until the end.When (cid:82) S q ( t ) (cid:107) q ( t ) (cid:107) dt = 0 the curve is closed.All 3D closed curves are defined as nonlinear variety inthe Helbert space. To analyze the shapes of the iso-geodesiccurves and compute a geodesic distances between them, itis important to understand all vectors of their tangent spacesand impose a Riemannian structure. We equip the space of the closed curves of a Riemannian structure using the innerproduct defined as follows: < f, g > = (cid:90) ( 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 ) : T v ( C ) = { f : S → R | < f ( s ) , h ( s ) > = 0 , h ∈ N v ( c ) } (9) N v ( c ) is a space of the normal vectors to the face curve.After a mathematical representation of iso-geodesic curvesusing Riemannian metric, this metric should invariant certaintransformation (translation, rotation, scale) [30]. The questionto ask is how to compute the geodesic distance betweentwo closed curves?. To answer this question, we used theapproach introduced by Klassen in 2007 [31]. This methoduse path straightening flows to find a geodesic between twoshapes.To compare two facial surfaces, we just compare a pairs ofclosed curves of these two facial surfaces. Lets c and c twofacial curves (iso-geodesic curves), q and q are respectivelythere Square Root Velocity Function ( SRV F ). The geodesicdistance between c and c is computed by: d ( q , q ) = (cid:90) (cid:112) < ε (cid:48) ( t ) , ε (cid:48) ( t ) >dt (10)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 ofthe gradient of the energy given by: E [ α ] = 12 (cid:90) < dds α ( t ) , dds α ( t ) > dt (11) ε has been shown that the critical points of the energyequation E [ α ] are geodesic paths in S [31, 13].The facial surfaces S and S are represented by theiriso-geodesic curves collection respectively { c k ; k ∈ [0 , k ] } and { c k ; k ∈ [0 , k ] } , k is a geodesic distance between p (reference point) and p two points of facial surface S . Thevectors of geodesic distances computed between a pairsof facial curves are used as input vectors of classificationalgorithms of our automatic facial recognition system.To realize our 3D face recognition system, we use three clas-sification algorithms are: the Neural Networks (NN), k-NearestNeighbor (KNN) and Support Vector Machines (SVM).III. S IMULATION R ESULTS
In this section we make a series of simulation to evaluatethe effectiveness of the proposed approach. These results wereperformed based on SHREC 2008 database. This databasecontains total of 427 scans of 61 subjects (45 males and 16females), 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-GeodesicCurves (I-GC). This method was based on two principalsteps: Iso-Geodesic Curves extraction using Fast Marchingalgorithm as solution of Eiconal equation and compute thelength of the geodesic path between each facial curve and itscorresponding curve using a Riemannian framework.The following figure (6) summarizes the first experimentalresults of our simulation:
NNKNNSVM
Number of facial curves used
R.R (%)
Fig. 6. Recognition rate in terms of number of facial curves used to representthe human face of SHREC 2008 database for each classification algorithm(NN, KNN and SVM)
Figure 5 shows the recognition rate in terms of numberof facial curves used to represent a 3D human faces usedin our systems. This figure shows that the images of theSHREC 2008 database are represented using five facial curves.Given a candidate 3D face image (
Img ) of SHREC 2008database.
Img is represented using five iso-geodesic curves.The shortest path between two 3D face images id defined asthe sum of the distance between all pairs of correspondingfacial curves in the two face images. The feature vector is thenformed by the geodesic distances computed on all the curvesand its dimension is equal to the number of used iso-geodesiccurves (five curves for SHREC 2008 database). These vectorsare used as input of classification algorithms of our 3D facerecognition systems.
NN KNN SVM
R.R (%)
NNKNNSVM
Fig. 7. Recognition Rate for SHREC 2008 images using three classificationalgorithms (NN, KNN and SVM)
Figure 7 shows the recognition rate for SHREC 2008images using three classification algorithms: Neural Networks(NN), K-Nearest Neighbor (KNN) and Support VectorMachines (SVM). The best recognition rate was obtainedusing Support Vector Machines (SVM) as classificationalgorithm with recognition rate equal , .In conclusion of this series of results, a summary table(Table2) compares the performance of our face authentica-tion with respect to the performance obtained in other worksystems. Date Reference Method Database Reportedperfor-mance
TABLE ICOMPARISON OF OUR METHOD WITH OTHER METHODSOBTAINED IN OTHER WORK SYSTEMS
We can notice that the performance of our automatic 3Dface recognition system, In addition our system is perfect inall assessment. Our goal was to improve 3D faces recognitionsystem we affirm based on the results that our goal is achieved.IV. C
ONCLUSION
In this work, we have presented a 3D face recognitionsystem based on the computation of the geodesic distance between the reference point and the other points in the 3Dface surface. This method represents a face surface as acollection of Iso-Geodesic curves and computes a geodesicdistance between each pairs of these facial curves. For theclassifying step we have implemented algorithms as NeuralNetworks (NN), K-Nearest Neighbor (KNN) and SupportVector Machines (SVM). Simulation results show us a betterrecognition rate ( . ) using SVM classification algorithm.R) using SVM classification algorithm.R