Adaptive Processing of Range Scanned Head: Synthesis of Personalized Animated Human Face Representation with Multiple-Level Radial Basis Function

We propose an animation system for personalized human head. Landmarks compliant to MPEG-4 facial deﬁnition parameters (FDP) are initially labeled on both template model and any target human head model as priori knowledge. The deformation from the template model to the target head is through a multilevel training process. Both general radial basis function (RBF) and compactly supported radial basis function (CSRBF) are applied to ensure the ﬁdelity of the global shape and face features. Animation factor is also adapted so that the deformed model still can be considered as an animated head. Situations with defective scanned data are also discussed in this paper.


INTRODUCTION
Many research efforts have been focused on the achievement of realistic representation of human face since the pioneer work of Parke [1].However, the complex facial anatomical structure and various facial tissue behavior make it still a formidable challenge in computer graphics area.The animated head system can find place in multimedia applications, including human-computer interaction, video conference system, and entertainment industry.
For traditional facial shape modeling, we need a skilled modeler to spend a lot of time on building the model from scratch.With the availability of range scanners, the shape information is already easily obtainable in seconds.Figure 1 shows a scanned face from our range scanner, but this method still suffers from the following problems.

Shape problem
From the range scanned data, the smoothness of the reconstructed data is still not complete.Holes or gap may appear during the merge procedure of two scanned data from different views.Overlapped or folded surfaces produced by merge procedure results in visual artifact.One particular problem in facial data acquisition by range scanning method is that hairy surface cannot be appropriately recognized by the scanner.

Manual editing
Facial shape is not a totally continuous isosurface, it contains some feature parts such as lips, eyes, and nostril.In a neutral face, the mouth is closed, the eye gaze direction is towards the front, and the nostril is invisible.The range scanner does not have the capability to detect these features, so tedious manual editing effort such as lip contour separation is still required.

Animation ready
Even as the precision of the scanner is increasing, modeling the portion of head other than the face can be solved by scanning a head with very short hair or wearing some special head cover, the scanned data is still not animation ready.For an animatable head model, the interior deformation engine has to be set.The engine can be totally physically based, or geometry based.Different approaches have different requirements, the more complex the engine, the more parameters we need to set on our obtained model before it is deformable.
In our case, we want to solve the problem using our facial animation system.Currently, we have two main focus on this system, the first one is that we want to create a head with physically realistic skin behavior, that means simple pointsbased solution does not suit down stream use or application of the head model; the second one is that we want to create a conversion tool to convert an arbitrary 3D head from EURASIP Journal on Advances in Signal Processing laser scanner or other sources into an MPEG-4 compliant head with high fidelity to the original input data but still at a relatively rapid speed.For this reason, we model a template anatomy-based head embedded with skin, muscle, and skull, the model is ready to generate impressive facial expressions.
Given an input 3D mesh, we adapt our template model to the input data, with all the anatomy structure, thus the adapted head has the appearance of the input head to make it fully animatable.This paper describes the adaption unit in our system.The adaption is achieved by radial-basis function, in which we propose a multilevel adaption process to increase the shape fidelity between the input data and our deformed template model.During the iterative process, we proposed a curvature-based feature points searching scheme, which works fine in our system.In Section 2 on related work, we present MPEG-4 compliant head, adaptive human head, and other related work on facial animation is given out in detail.In Section 3, detail of the facial shape adaption at a single level is explained.In Section 4, the multilevel adaption process is described, we also propose a hardware acceleration method to enhance the visual effect of our adaption in this section.The error estimate scheme is described in Section 5.In Section 6, we describe how to adapt the animation factor of our head model.Results of the adaption and the animation are displayed in Section 7. In Section 8, we discuss about the influence of defective data.In Section 9, we conclude the paper and discuss some extensions to face modeling.

RELATED WORK
In literature, a lot of work has been proposed to perform shape deformation.In [2] by Escher et al., a cylindrical projection is applied on the generic face model first to interpolate any missing feature points, then Dirichlet free from deformation (DFFD) method is employed to generate the deformation of head model, this allows volume deformation and continuous surface interpolation.Blanz and Vetter [3] create a face shape and texture database.A parametric morphable head is interpolated by linear combination of the face model in the database.The parameters of the head model is detected by their novel method to track the corre-sponding features from multiple images.But since their work is based on the shapes in the database and their combination, the successful rate of the reconstruction depends on the size of the database.The recent work of Zhang et al. [4] makes it possible to capture and reconstruct rapid facial motion from stereo images.A high-resolution template shape mesh is used in their system.The depth maps from two viewpoints are generated.Then an initial model fitting is achieved using radial-basis function.The following process of tracking uses optical flow rather than the landmarks.But the face reconstruction procedure of their approach is also based on linear combination of basis shape, thus meets the same problem faced by Blanz and Vetter.

MPEG-4 head
MPEG-4 defines a set of parameters for calibration of face model, which is called facial definition parameters (FDP).The parameters can be used either to modify the geometry of the face model available in the decoder [2,5], or to encoding this information with the head model as a priori knowledge for animation control [5,6].The FDP corresponds to the relevant facial features.MPEG-4 standardized 84 feature points, which is subdivided into 10 groups based on the content they are representing; Figure 2 shows the position of these points.
In MPEG-4 standard, facial movement is represented by facial animation parameters (FAP) and its relevant measure unit facial animation parameter unit (FAPU).There are totally 68 independent FAPs, including two high-level FAPs (expression and viseme) and 66 low-level FAPs (e.g., raise l i eyebrow).Each FAP describes the displacement distance of its relevant feature points in some specific direction.When MPEG-4 standardizes the high-level of the face movement, the low-level implementation is not indicated.Thus, several MPEG-4 animation systems [2,5,7,8] have been proposed in the literature.
In MPEG-4 face animation, one key task is to define the face animation rules, which consists how a model is deformed as a function of amplitude of FAP.Ostermann [7] shows some simple examples of the implementation of the FaceDefTables in his work, a vertex is displaced as a linear combination of the displacement of its corresponding feature points.In [5], more specific information is defined on the situation of feature movement overlap, weight function is the solution the author proposed to solve the problem.The authors give out more detailed description in their later work [9], which highlights the displacement limitation of each FAP, the weight distribution of each feature point.When these works [5,9] require a lot of priori knowledge such as the index of the vertex influenced by each feature points, Kshirsagar et al. [6] proposed feature points-based automatic searching scheme to solve this problem.They use this technique not only to compute the regions, but also to compute the weighting distribution of each feature point, based on the surface distance from the vertex to the points.
Since MPEG-4 has the information of facial features, most of the work on MPEG-4 animation is feature pointsbased.This is not only because it is easy to implement but  also because the computational cost is quite cheap so it is suitable on some light weight facility such as PDA or laptop.But on the other hand, physical realism is seldom been considered in MPEG-4, this is mainly because the dynamic property of physical-based model makes it hard to be embeded in FAP based approach.Fratarcangeli and Schaerf [10] have proposed a system using anatomic simulation in MPEG-4.They design a mapping table of FAP-muscle contraction.Our anatomical structure is similar to their or other work in literature [11,12], but our focus is on the adaption of appearance and anatomical structure between different mesh model.This reduces the workload of adjusting the physical parameters while applying this physical system onto another models.

Radial basis function
A network which is called radial-basis function (RBF) has been proved to be useful in surface reconstruction from scattered, noisy, incomplete data.The RBFs have a variational nature [13] which supplies a user with a rich palette of types of radial-basis functions.Some very popular RBFs include (i) Gaussian, (ii) Hardy, (iii) biharmonic, (iv) triharmonic, (v) thin plate.
In most cases, RBF is trained to represent an implicit surface [14][15][16][17].The advantage of this method is that after the training procedure, only the RBF function, the radial centers rather than the scattered, noisy point cloud need to be stored, so it saves a lot of space during the data storage and transfer.RBFs can be local or global.The global RBF is useful in repairing incomplete data, but usually it needs some sophisticated mathematical techniques.Carr et al. [14] employed a fast multipole method to solve a global RBF function.Their approach also uses a greedy method to reduce the radial centers they need to store.On the other hand, local compactly supported RBF leads to a simpler and faster computational procedure.But this type of RBFs are sensitive to the density of scattered data.Therefore, a promising way to combine the advantages provided by locally and globally supported basis function is to use the locally supported RBF in an hierarchical fashion.A multiscale method to fit the scattered bumpy data was first proposed in [18], and recent approaches [19][20][21] also address this problem.
The power of RBF in head reconstruction is proved in [5,22,23].Noh et al. [22] employed a Hardy multiquadrics as the basis function and train their generic model for performance driven facial animation.Since their approach only tracked about 18 corresponding points, the computational cost is relatively low and real-time facial animation was synthesized.But the low number of corresponding points does not ensure the fidelity of the deformed model.Kähler et al. [23], on the other hand, used a higher resolution template to fit the range scanned data.A feature mesh was used to search more corresponding points between the template and scanned data in their iterative adaption steps, the feature mesh is also refined during each step.Our work uses the same concept of feature mesh.But level of detail is not in their consideration, thus the only way to represent local detail is to add more corresponding points, which is relatively expensive.Our work tries to solve this problem using a novel approach.Lavagetto and Pockaj [5] also proposed a compactly supported RBF in their experiment and used a hierarchical fashion for the model calibration in their MPEG-4 facial animation engine.But the result of their CSRBF is still not convincing enough for complex model (Figure 3).
Based on our literature review, it is evident that qualification of facial shape and face feature are essential to advance the understanding of how they enhance the understanding of face models.Specifically, the goal of achieving a comprehensive understanding of adaption in face modeling requires the following priorities in research: (i) quantifying the effect of adaption at the single level [face level] (see Section 3); (ii) quantifying the effect of multilevel adaption at the face-feature level (see Section 4); (iii) understanding the effect of geometry (adapted vs Original geometry) (see Section 5); (iv) characterizing the interacting effect of facial animation parameters, the effect of adapted shape deformation for facial expression synthesis, with emphasis on the interaction between the adaption of shape with that of animation (see Section 6).In our work, we choose a CSRBF which was proposed by Ohtake et al. [20], which is fast and the adaption result looks convincing.While their work focused on the implicit function generation, our emphasis is mainly for facial shape transformation.Since it is a hierarchical adaption procedure, we design a curvature-based feature matching method together with the feature mesh method [23] to search the corresponding points in each step.

SINGLE-LEVEL ADAPTION
In this section, we describe how the facial shape adaption works at a single level.
The adaption problem can be formulated as follows: given a set of feature points p i and q i which is the corresponding feature points of the template model and the scanned model, we want to find a transformation function so that Before the transformation, firstly, we process a head pose calibration of the scanned data.The transformation function (1) we use is not restricted by arbitrary head pose.The reason why we do this is that because in a complex anatomy-based model, where the parameters are not simply linear related to the proportion, the parameters need adjustment to keep the model stable and valid after adaption.To solve this restric-tion, we decide to calibrate the proportion and orientation of the scanned mesh to the same as that of the template.

Head calibration
The problem can be expressed mathematically as follows.Given a template model P and a scanned data Q, if we want to fit the scanned data to the template model, each vertex q of the Q mesh should be transformed by where S is the scaling matrix, R is the rotation matrix, T is the translation vector, and q c is the rotation and scaling center of Q.
In the above equation T = p c − q c , where p c is the corresponding rotation center of P, so (2) becomes q * = SR q − q c + p c . ( Because the scanned head model is always incomplete, so it is hard to determine the exact center.We first pick 8 most obvious feature points for the further calibration, which is bottom of head (FDP 2.1), top of head (FDP 11.1), outer eye corners (FDP 3.7, 3.12), outer lip corner (FDP 8.3, 8.4), and ears (FDP 10.9, 10.10).The rotation center is defined as To get the orientation matrix, we compute the axis rotation matrix R z , R y , and R x on sequence.We compute the R z and R y from l.In experiment, we first project l into the XY plane and get R z .After that, we rotate l with R z so that the axis is on XZ plane.Thus, we can get the rotation matrix R y .Because it is hard to find a vertical axis on human face based on facial anatomy, we take (3.7 + 3.12) − (8.3 + 8.4)/2 as a reference axis.The axis m is first rotated by R z and R y , then projected into the YZ plane.A corresponding axis on the template mesh is found use the same method.The internal angle between these two axis forms R x .
The axis − → m of the two models is also used as the reference axis for proportion recovery, so that we get the scale factor s.
After we get all the unknowns, ( 3) is applied on all the vertices of the scanned data, so the scanned data is calibrated to the same domain of template head.

Approach no.1 SCA-RBF
In our first approach, we use a relative simple function The kernel of RBF is the basic function φ( p − p i ), we choose the biharmonic function as our basic function φ(r) = r.
Additional constraint m i=1 c i = 0 and m i=1 c T i p i = 0 is used to remove the affine effect during the transformation.
In practice, (5) becomes where m is the number of the landmarks, R ∈ R 3×3 and t are the parameters of ρ(x).
If we set the following symbol as: we get the linear equation system of the form AX = B with Since error exists during the multiple view scanned data registration, we add an error coefficient ρ to reduce the scatter effect of noisy data.The bigger the ρ is, the smoother the result of adaption will be.But the detail of the face will be lost.
Adding the error coefficient, the matrix A becomes A * , where Solving this linear system, we put all the vertices of the template model into the function, then generate the new position of the point. (10)

Approach no.2 SCA-CSRBF
The approach no.1 works in our system, but we still want a better result for the local detail of our model, simply increasing the corresponding number of points does not solve the problem and the error during the corresponding points registration will lead to more manual work, so we propose our second approach of our adaption method, which is based on CSRBF.The (1) now becomes where m is the number of the feature points, I is the identity matrix, φ σ (r) = φ(r/σ), φ(r) = (1 − r) 4 + (4r + 1) is the Wendland's compactly supported RBF [24], where σ is its support size, and g j (x) and c j ∈ R 3 is the unknown functions and coefficients we need to solve.The functions g j (x) and c j are solved in the following two-step procedure.
(i) At each point p i , we define a function g i (x) such that its zero-level-set g i (x) = 0 approximates the shape of scanned data in a small vicinity of p i .(ii) We determine the coefficients c i from ( 11) Equation ( 13) leads to sparse linear equations with respect to c j .
To solve the unknown function g i (x), for each point p i , we determine a local orthogonal coordinate system (u, v, w) with the origin of coordinates at p i such that the plane (u, v) is orthogonal to the normal of p i and the positive direction of w coincides with the direction of the normal.We approximate the template in the vicinity of p i by a quadric where the coefficients A, B, and C are determined via the following least-squares minimization: After we get A, B, and C, we can set The support size σ describes the level of detail we want to get from the adaption, the bigger σ is, the better the template will fit the global shape of the incomplete scanned data, but it will obviously slow down the adaption speed and requires more iterative steps of adaption.
We use the preconditioned biconjugate gradient method [25] with an initial guess c j = 0 to solve linear equations of (13).
Notice that we can also add the unknown R and t used in approach no.1.

MULTILEVEL ADAPTION
Manually specifying too many corresponding features is tedious and impractical, thus automatic corresponding generation is introduced in this section.We also describe how to get a coarse-to-fine result using the CSRBF approach by dynamically setting the radius coefficient σ in this section.

Hierarchical point set searching
The task here is to find more feature point (FP) pairs between the two models, the kth-level new point set should be merged into the k − 1 level point set.A feature mesh method is proposed in Kähler et al. [23].Basically the idea is that the existing feature points buildup a triangle mesh, which is called feature mesh.In each iterative step, each triangle in the mesh is subdivided at its barycenter, a ray is cast at this point along the normal of the triangle to intersect with the surface of both the source data and the target data.So a new pair of FPs are found and 3 new feature triangles are created by splitting the triangle at the barycenter.Figure 4 shows the feature mesh we used and the first adaption result using RBF approach in our system.
The feature mesh method can be considered as an average surface data sampling technique since it samples surface data according to its own topological structure.But if a specific region of the face is not covered by the feature mesh, then the shape of this area is not controlled by any local points in this area, which means the feature mesh should always be carefully defined.On the other hand, average sampling means that all the regions are the same to the feature mesh, detailed information is only obtainable by increasing the mesh subdivision count, which is not so useful to specific features in minor region, for example, the boundary of the eyes.
We solve this problem by analyzing the properties of the scanned mesh itself and propose a mean curvature based feature searching scheme.The curvature is an important property in geometry.We are using mean curvature as metric for FP searching because of the following reasons.(i) In 2D case, the value of curvature represents the inverse of radius of osculating circle at a specific point of the curve.(ii) Consider it in 3D situation, the curve becomes surface.
There are two principal directions at any point on the surface, where the values of curvatures at such directions are maximal and minimal.(iii) The two principal directions are perpendicular to each other.(iv) The mean curvature is defined as κ = ( −−→ κ max + − − → κ min )/2.The bigger the value of κ, the smaller the sum of radius of osculating circles at two principal directions.(v) Position with small radius of osculating circle on the surface can be considered as representative point.
For a triangle mesh, Meyer et al. [26] have proposed a solution; the property of each vertex can be considered as spatial average around this vertex.Thus, by using this spatial average, they extend the definition of curvature for a discrete mesh.We use this method for our purpose, the basic idea is explained in the appendix.
To show the validity of our method, we tested the approach not only on one specific scanned data, but also on our template head.We can see in Figure 5(a) vertices with the largest mean curvature congregate in the area of facial features.It should be noted that the largest curvature occurs at the boundary of the model when we apply this method to the scanned data.In Figure 5(a), the top region of the head shows the problem.But this can be easily solved by a simple bounding box method or some boundary detection technique.In Figure 5(b), we apply a bounding box from left eye to right eye horizontally and from top of the head  to the bottom of the mouth vertically, we can see facial features such as eyes, nose, and lips are filled with the newly detected vertices.Given a vertex, we take it as a new feature point on the scanned data and searching the corresponding points on the template model using the ray-surface intersection method along the vertex normal.

Hierarchical adaption
Obtaining the new set of corresponding points on both the scanned data and template model in Section 4.1, we can use all these corresponding points in the single-level adaption for adaption approach no.1.We can also use these points in a hierarchical fashion for the adaption approach no.2 which we described in Section 3.3.
After we obtain the point set p k i and q k i in kth level, we can recursively determine the transformation function; from (11) we get where f 0 (x) is the first function we have solved with the initial corresponding points.The kth (k = 1, 2, . ..) level function is trained as follows: and o k (x) is called the offsetting function o k (x) has the form used in single-level adaption, the local approximation g k j (x) is determined by least square fitting, and the coefficients c k j are solved by the following linear equations using the same preconditioned biconjugate gradient method [25]: The support size σ k is defined by

Comparison between CSRBF and RBF approach
There are several pros and cons between CSRBF and RBF function.The main advantage of RBF is that it supports global adaption, this feature is quite useful when the number of feature point is low compared to the number of vertices of target mesh.Thus, at the beginning stage of adaption, RBF is simpler and much more useful than CSRBF, though CSRBF can still be used in such situation if the radius coefficient σ is set big enough.But once the density of FPs gets high, we consider using CSRBF alone for feature adaption.Our template model contains 3349 vertices, so in experiment we set 500 as the threshold between low density and high density of FPs.
It is also unreasonable to consider the FP on the forehead will influence the vertices on lips.Another problem is about the computational complexity.With the increasing number of FPs, the size of solving matrix becomes bigger and bigger.
In RBF case, because of the global feature, each element in the matrix is not zero, which means in each training iteration step, we need to solve a high-order nonsparse linear equation system.Instead, the nature of CSRBF enables a sparse linear system, which reduces the computational time and complexity.We present the adaption results of RBF and CSRBF in Figure 6.The top row is the adaption result of combination approach and the bottom row is the RBF approach, please note that the first to adaption result are the same because the number of FPs has not exceeded 500.
From Figure 6 it can be seen that both of the approaches get the same global shape.But from the side view shown in Figure 7 we can notice the feature difference at the top of the nose.

ERROR ESTIMATION
The whole adaption is an iterative process and we want to optimize the result.Thus, we evaluate the quality of the adaption using two error functions: (1) distance error and (2) marker error.

Distance error
The first criterion is that the adapted template surface should be as close enough as possible to the input surface.Since the vertex of the template and the one of the target model is not one-on-one mapping, we define a data objective term E d as the squared distance between the vertex of template and its nearest vertex of the scanned model.
where n is the number of vertices of the deformed template, x i represents one of the vertices, Q * is the calibrated scanned mesh, w i is the weight term to control the influence of the data in different regions.
A vertex x i is compatible to one of vertices x q j in Q * when the normal of x i and the normal of x q j are no more than 90 • apart (so that the vertex on the frontal surface will not match the vertex on the back surface), and the distance between the x i and x q j is within a threshold (in our experiment, we set the threshold as 1/10 of the maximum width of the template model).
The weight term w i is useful when the scanned data has either holes or regions with poor quality of data on the scanned model (such as the region in and around the "ears").If one vertex x i cannot match any of the surface of the scanned data, which means there is a hole, we set the w i to be zero.In area with low quality, we provide interactive tools for the user to specify this area and the influence coefficient (e.g., in our experiment, w i of the vertices on the ears is set to be 0.2 due to the low quality in this area).This makes the distance error estimation to be fair enough.

Marker error
The distance error is capable of estimating the similarity of the two models.However, sometimes we want to estimate the corresponding relationship between the two models, in that case we place some corresponding markers of recognizable features on both the template and the target mesh.These markers will not participate in the training process of the adaption, but we can compute the distance between them to check if the transformation makes the markers getting closer or not.The marker error E m is represented as where u i and v i are corresponding markers on the template and the target model, m is the number of markers.

Combined error
Our complete objective function E is the weighted sum of the two functions Specifying corresponding markers on both models is usually not accurate, generally the weight of the distance function should be higher than the one of the marker function.The summed E is computed in each iterative procedure, when we get a local minimum E, the adaption is complete.

Physical-based simulation
We apply a physical simulation approach to demonstrate the feasibility of automatic animation of an adapted head, based on Yu's work [12].The physical structure in our system includes a template skull, a multilayer dynamic skin mesh and the muscle model.
The skin tissue is modeled as a multilayer mass-springdamper (MSD) mesh.The epidermal layer is derived directly from the skin mesh, the underlying two layers are generated by moving the vertices along a ray to the geometric center of the head.The 3-layer mesh is modeled as a particle system, which means each vertex in the system contains its own individual position, velocity, and acceleration.The particle get the acceleration from its related damped springs, which are modeled from the edges between vertices in the same layer and vertices in a neighboring layer.The acceleration results in the change of the velocity, and the latter results in the displacement of the particle, which makes the whole system dynamic.The stiffness and nonlinear coefficient of the spring is collected from experiment follow some basic rule, for example, the dermal layer should be highly deformable.
The skull is mainly used for detecting the attachment point of linear muscles.Another important application of the skull is that force along the surface normal generates when the skin particle intersect with the skull, to model the skull impenetrable behavior.The mandible in our system is rotatable along x-axis, according to our jaw rotation parameter, the position of the attachment of the linear muscle which is connected with the mandible is transformed during the rotation.
Linear and sphincter muscle are the driving force of the physical-based model.A linear muscle is defined by two-end points, which is the insertion and the attachment.Attachment is the point on the skull surface and insertion represent the connection position on the skin.The sphincter muscle is modeled as an ellipse, which is defined by the epicenter and two axis.Muscle force is applied on the hypodermal layer and force propagates through the mesh to the surface layer.Error may occur during the manual registration of the muscle on a 3D model, Fratarcangeli and Schaerf [10] proposed a FDP-based muscle registration scheme on a neutral face [27], which is supported in our system.
We divide the face into hierarchical regions, which is useful to correctly connect the muscle with the skin vertex.For example, without a region constraint, the nasalis may connect with the vertex which is not a part of the nose.An extreme case is the lip, if the mentalis connects with points of the upper lip, obvious wrongly flipped triangle can be seen when the mouth is opened.
Figure 8 shows one expression we generate using our template model, we will show more expression results on the adapted model in the following section.

Adaption of physical structure
Since the input mesh is already calibrated using the method introduced in Section 3.1, the workload on adjusting the skin parameter is reduced, because it is already been considered stable for numerical integration.
Muscle is defined by its control points.The control points of linear muscle always lies on the surface of skin and skull (insertion points on the hypodermal layer of skin), so that it is recorded as the face index and the barycenter coordinate.During the adaption process, the topological structure of our mesh is never changed, so it is reasonable to reuse the face index and barycenter coordinate to define the muscle.The sphincter muscle is defined by epicenter as two axis.The epicenter is transformed using the RBF function hence it is still in the proper position of the transformed head.The axis is scaled according to the scaling of some specific feature points (FDP 8.4-8.3,2.1-2.10,3.7-3.11,3.8-3.12,3.13-3.9,3.14-3.10;see Figure 2 for details).
The adaption of the skull is done using the same technique we introduced in Section 3, since the skull is the main factor that affects the shape of human head, all the  feature points used during the last stage described in Section 4 should be applied.
A region is a collection of vertices assigned to it, each vertex is assigned to only one region.Region is modeled as a constraint of the muscle contraction.This property of each vertex does not change during the shape deformation, so the region information is still available for the adapted model.
The eyes, teeth, and tongue are imported as individual rigid part of the head, they are transformed according to their related markers.We describe the transformation function of left eye here; the functions of the others are very similar.The left eye is related to the neighboring feature points 3.7, 3.9, 3.11, 3.13.Both point position from template model and scanned data can be easily obtained since these points are obvious face features.As a rigid transformation, we only consider the uniform scale, rotation, and translation.We get scale factor T s from T s = 3.7 t − 3.11 t × 3.13 t − 3.9 t 3.7 s − 3.11 s × 3.13 s − 3.9 s , ( where t represents the scanned data, s represents the template model. To compute the rotation matrix, we assume that the vector −−−−−→ 3.7-3.11 of the scanned data represents the transformed x-axis and vector −−−−−→ 3.13-3.9 of scanned data represents the transformed y-axis; the template eye can be considered in a standard coordinate system.So the problem now becomes the computation of the transformation matrix T R for the two coordinate systems, which is a very basic graphics problem (see Section 3.1).
After obtaining T R , we can compute the new center position of the eye balls.First, the center position of the eye ball of the template c s l is computed, then the center point of 3.7 s , 3.9 s , 3.11 s , 3.13 s is considered as a reference point r s l , thus we Using the same idea on the scanned model, we get a reference point r t l , finally the new center position of left eye ball c t l is computed as Now given any vertex of the left eye from template model, the new position is

RESULTS
We display another two adaption results from two different people in Figures 9 and 10 to validate our approach.The error estimation results are provided in Tables 1 and 2.
To observe the facial features at the nose, eye, and mouth, we also did some experiments and the results are shown in   Figure 11.We can observe that due to the limitation of the scanner, the input scanned data is noisy; after the adaption, the template model fits the input data quite well.Figure 12 presents three facial expressions we have produced from the adapted face model.Adaptive physical structure is transferred from the animated template onto the adapted surface model to generate personalized animated face.

DISCUSSION
The RBF adaption is basically an interpolation method.The final adaption results depend on the successful rate of feature point pair registration on both model.Because we are using ray-surface intersection strategy during the fea- ture mesh expansion and curvature-based feature points searching scheme, once we are searching for a new FP pair, the ray must intersect with scanned data and the template EURASIP Journal on Advances in Signal mesh.So the successful rate of FP registration is dependant on the quality of both meshes.The quality of template mesh is controllable, therefore, the main factor that determine the final adaption result is the quality of the scanned data mesh.
In this section, we will discuss several cases about defective data.

Case 1: scanned data with a few errors
As a living object, human breathing introduce movement.Even holding the breath, slight movement is still introduced on the face.These actions increase the difficulty to get an accurate human face model from one shot laser scanner.Furthermore, the light condition and complex shape of some organs (such as ears and nostril) on the human face also result in holes and gaps on the face.Therefore, it is very difficult to get a perfect model on the human face using a laser scanner.There are always small noise on the obtained scanned model.In case one, we show the original scanned data from 3 different views in Figure 13.We notice that the scanned data have noise on its cheek, ear, and nostril, but the noise does not affect the initial registration of FPs.The adaption result has already been shown in Figure 14.

Case 2: inadequate initial FP registration
Sometimes initial FP set cannot be defined on the scanned data due to the holes.In this case, the feature triangles related with the unregistered FPs are removed from the feature mesh; as a result, the area covered by these feature triangles will not adapt correctly using feature mesh expansion scheme.In this situation, if the missing FPs are crucial ones, the curvature-based searching scheme will help to compensate the FP registration.In Figure 15, the FPs on the nose are removed from the scanned model to show the case when holes happen on crucial features on the scanned data.The adaption results are presented in Figure 16.

Case 3: very bad scanned data with many missing FPs
Very bad scanned data is normally unacceptable.To show the result, we still use the same scan model but manually add a lot of holes on the mesh.The modified mesh can be seen is Figure 17.The adaption results are presented in Figure 18.
We can notice that because of the lack of information in right cheek and right side of the nose, these parts does not adapt correctly when compared to Figure 14.

Case 4: FP initialization error
FP initialization error is another type of defective data.The initial FP specification is important because: first, the first adaption determine the global position of the model; second, it influences the further FP searching scheme because we are using ray-casting strategy for FP pair registration.Figure 19 shows an example of bad FP registration.The results in Figure 20 indicate that thus after several iteration the shape has been corrected a little bit, but the initial influence at the right cheek and eyes still exist.
From the above case study we can conclude the following.
(i) Scanned data with few noise but correct registration on FPs will not affect the adaption quality.(ii) The incomplete FP initialization will affect the completion of feature mesh, but with the compensation of curvature-based FP searching, feature area on the face can still be covered, so the influence is not so much.(iii) The very bad scanned data will result in loss of information, this cannot be recovered by RBF adaption, but with correct hole filling strategy, the problem can still be solved.(iv) The error in initial FP pair registration will cause the failure of the adaption, so these FPs should be selected precisely and carefully.

CONCLUSION
In this paper, we present our new design for the procedure for human head adaption.The shape adaption is based on blend function of general RBF and compactly supported RBF.To obtain the advantage of both global shape fitting and local detail deformation, we use a hierarchical multiscale approach to iteratively deform our template model to the scanned data.A curvature based technique is introduced to capture the detail of facial features and a feature mesh-based technique is employed to perform an average surface data sampling.Parts of the anatomical structure are adapted according to the shape transformation function and the others are treated as rigid transformation.The dynamic soft tissue behavior is inherited during the adaption procedure so that facial expression is able to be synthesized.
The difference between the implicit function method and the explicit transformation method makes it a bit difficult to adapt the template to fit the input scanned data completely, a compromising method described in [28] includes both the two models as implicit function and to use some transformation technique between these two functions.But for a facial animation system, we need a lot of constrains to make sure no visual artifact will be found on the deformed model.
Another problem we need to solve is noise reduction, as the range scanned data always has a lot of noise.Although RBF can handle the noisy data we still want to find some filter to reduce the noise.This is critical especially for CSRBF, because noisy data will result in wrong registration of the local approximation function.
Currently, we are still using static texture for the adapted model thus the visual effect of our adapted model is restrained by the similarity of the appearance between our personalizing object and our static texture.In the future,

Figure 1 :
Figure 1: A face model from Minolta Vivid 700 laser scanner.

Figure 4 :
Figure 4: Initial adaption using approach no.1 with subset of MPEG-4 feature points.(a) The input scanned data; (b) the adapted head model; (c) the initial feature mesh; (d) the head model for test in iterative process.
(a) 100 vertices with the largest mean curvature value on the template head (b) 200 vertices with the largest mean curvature value on a scanned head

Figure 6 :Figure 7 :
Figure 6: Comparison of adaption results between combination approach and RBF approach.(a) Combination approach; (b) RBF approach.

Figure 8 :
Figure 8: A surprise expression form our template model James.

Figure 9 :
Figure 9: Adaption result: the right end is the original scanned data.

Figure 11 :
Figure 11: Facial feature comparison.In each row, there are scanned data, adapted model photo from the laser scanner and wireframe model from left to the right.

Figure 12 :
Figure 12: Various facial expressions from adapted template.

Figure 14 :
Figure 14: Adaption results from scanned data with small holes.

Figure 15 :
Figure 15: The FPs on the nose are removed from the scanned model to show the case when holes happen on crucial features on the scanned data.

Table 1 :
Error estimation of the adaption process shown in Figure 9.

Table 2 :
Error estimation of the adaption process shown in Figure 10.