0 Self-Organizing Deformable Model : A Method for Projecting a 3 D Object Mesh Model onto a Target Surface

3D model fitting is one of the fundamental and powerful techniques in computer vision and computer graphics. The reason for using the fitting techniques includes establishing a relationship between an object of complex shape and a primitive object with a simple shape. Since object models often contain a huge number of points on the object surface, using the original models directly is computationally very expensive. On the other hand, the primitive models either have a compact data size or are represented by parametric functions. The relationship between the original and primitive models enables the complex shaped original models to be edited efficiently and easily through their corresponding primitives.


Introduction
3D model fitting is one of the fundamental and powerful techniques in computer vision and computer graphics. The reason for using the fitting techniques includes establishing a relationship between an object of complex shape and a primitive object with a simple shape. Since object models often contain a huge number of points on the object surface, using the original models directly is computationally very expensive. On the other hand, the primitive models either have a compact data size or are represented by parametric functions. The relationship between the original and primitive models enables the complex shaped original models to be edited efficiently and easily through their corresponding primitives.
In addition, the fitting techniques provide the correspondence between multiple models by representing all models with a unified primitive model. This correspondence enables us not only to align the models but also to transfer the properties of one model, such as texture and motion data, to another model. Therefore, the fitting method is useful in a wide range of applications including Eigenspace-based object modeling (Allen et al., 2003;Blanz et al., 1998;Kurazume et al., 2007), texture mapping, 3D object morphing (Blanz et al., 1998) and computer animation (Noh et al., 2001;Sumner et al., 2004).
The fitting method has to meet certain requirements as described below. Appropriate primitive models are determined depending on the shape of target objects and/or the purpose of using the primitives. The choice of primitive models has an influence on some factors including the accuracy of recovering the object and the mapping distortion. Hence, the fitting method needs to deal with an arbitrary surface as a primitive. Some applications use the correspondence between given models. This correspondence can easily be found by fitting the models to a common primitive. Then, a fitting method is desired that allows users to specify the mapping between features of the models, such as mapping eyes to eyes and so on. Few existing methods, however, consider both these requirements simultaneously.
This paper presents a new method for fitting a deformable model to the points of a target object (Morooka et al., 2005;. The deformable model is called a Self-organizing Deformable Model (SDM). The proposed fitting method is composed of two major steps.
First, we generate a rough model of the object by deforming the SDM based on competitive learning. Next, the accuracy of the model is improved by minimizing an energy function. The framework of the SDM allows users to move some vertices included in the SDM towards specific points on the target surface, and to collect the vertices in particular regions on the surface. This control of the SDM deformation process provides preferable models depending on the applications using them.

Previous and related works
Many researchers have concentrated on model fitting techniques. One fitting method uses a mapping function (Eck et al., 1995;Floater et al., 2003), which enables us to project the object mesh model onto a primitive object surface such as a planar or spherical one. There are several types of mapping functions including harmonic mapping and conformal ones. Most of the traditional methods that use a mapping function have been designed only for their specific primitives. Because of this limitation, the methods are harder to generalize. In (Tarini et al., 2004), although, a set of cubes is used as the primitive, the combination of several kinds of primitives would be more appropriate for the compact low-distortion mapping of complex shapes.
Deformable models have the potential for achieving such mapping by regarding the set of multiple primitives as the deformable model. This is because the deformable model can adapt to the new shape by deforming the original shape. The approaches using deformable models can be categorized into the deformation methods with or without a certain number of constraints. The constraints are the preservation of the volume and/or the shape features of the model. Constrained deformable models can generate a continuous global relationship between the initial and the deformed models. The relationship is used to create model animations, and transfer deformation from one model to another (Noh et al., 2001;Sumner et al., 2004). One technique for the constrained deformation is to modify the model by deforming its embedded space or the underlying skeleton of the model (Ju et al., 2005;Kavan et al., 2005;Sederberg et al., 1986). Recent approaches (Kun et al., 2004;Lipman et al., 2005;Zayer et al., 2005) introduce the Laplace or Poisson equations, and compute the vertex displacements which describe the difference between the initial and the deformed models. The deformable model without the constraints applies where the relationship between the initial and the deformed models is an arbitrary deformation. Such deformable models are useful for mapping between two models with different shapes. Therefore, we focus on the the unconstrained deformable models, and these types of the models are simply called deformable models.
In the method using deformable models (Duan et al., 1998;Gibson et al., 1997;Lachaud et al., 1999;McInerney et al., 2000), a mesh of a plane or sphere is often used as the initial deformable model, and then the mesh model is deformed by moving its vertices to fit the target object. Generally, fitting the deformable model to a target object is formulated as a minimization problem of an energy function, which measures the deviation of the model from the target. Since the model deformation uses both vertices of the model and numerous points on the target surface, the optimum deformation must be found in a large search space that includes many local minima. In obtaining such a deformation, certain initial conditions of the deformable model have a great influence on the computational cost and the fitting accuracy of 20 Computer Graphics www.intechopen.com Self-Organizing Deformable Model: A Method for Projecting a 3D Object Mesh Model onto a Target Surface 3 the resulting model. However, the estimation of the initial model becomes more difficult when the shape of the object is complicated. It is not so easy for users to implement the preferable deformation. For example, an inadequate deformation may lead to certain problems such as the self-intersection of the model. Therefore, traditional methods that use deformable models need to find the optimal movement of vertices through trial-and-error.
Recent research (Kraevoy et al., 2004;Schreiner et al., 2004) has reported methods for finding the relationship between two models that preserves the correspondence of specific features. Although these methods obtain good mappings, they lead to high computational complexity and/or an increase in the data size of the output model compared with that of the original one.
The basis of the SDM deformation is the combination of competitive learning and an energy minimization method. In much the same way, some methods (Barhak et al., 2001;Ivrissimtzis et al., 2004;Liou et al., 2005;Yu, 1999) utilize a framework of competitive learning to recover the whole object surface. An exception to these methods is that of (Barhak et al., 2001), which focuses on a range image. The original purpose of competitive learning is to obtain a network that represents the distribution of given points. Therefore, direct use of competitive learning causes the accuracy of the resulting model to be inadequate for approximating the original object surface; that is, the model has a blurred surface of the original target object (Liou et al., 2005). Some methods (Ivrissimtzis et al., 2004;Yu, 1999) introduce a process of changing the number of vertices and their connectivity during the deformation. Contrastingly, in our proposed method, the SDM can recover a target surface while retaining the architecture of the SDM. This characteristic enables us to represent objects with a unified form, and to easily establish a correspondence between multiple models. Our method can, therefore, be used in various applications in computer vision and computer graphics.

Notations
The SDM is a deformable mesh model represented by triangular patches. According to the notation adopted in (Lee et al., 1998), the SDM M can be regarded as a two-tuple: where V is the set of vertices of the SDM. The SDM contains N v vertices, with each vertex v i (1 ≤ i ≤ N v ) of the SDM having 3D positional information. An abstract simplicical complex, K, contains all the adjacency information for M.I no t h e rw o r d s ,K includes three different sets of simplices: a set of which includes uniquely identified vertices {i}∈K v ,asetofedges e = {i, j}∈K e ,andasetoffaces f = {i, j, k}∈K f . Therefore, K = K v ∪ K e ∪ K f .Ouredge representation has a commutative property. For example, the edge e 3 a ss h o w ni nF i g . 1i s composed of two vertices v i3 and v i4 ,andisdescribedbye 3 = {i 3 , i 4 } = {i 4 , i 3 }.W erepresent each face of the SDM by a list of its three vertices arranged in a counterclockwise direction, e.g., the face f 2 showninFig.1isdescribedby  Given two vertices v i1 and v i4 as shown in Fig. 1, a path from v i1 to v i4 is defined as a series of edges. Then, a topological distance L(i 1 , i 4 ) between the vertices is defined as the number of edges comprising the shortest path from v i1 to v i4 . Another topological distance L(i 4 , i 1 ) from v i4 to v i1 is equal to L(i 1 , i 4 ). The shortest path from v i1 to v i4 is illustrated by dashed lines, and the topological distance L(i 1 , i 4 ) is 2. When the topological distance from a vertex v i to an arbitrary vertex is r, the latter vertex is called the r-neighbors of v i Given an arbitrary vertex v, we regard as its neighbors the vertices for which the topological distance from each of the vertices to v is less than a threshold θ r . Here, the maximum topological distance depends on the data size of the SDM, so we manually determine the value of the parameter θ r according to the size of the SDM.
A target surface is represented by a set of points on the surface, called control points. We make the following three assumptions: 1) the surface orientation and surface normal at each control point are known; 2) the size of an initial SDM is sufficient to cover the target surface completely; and 3) the SDM and the target surface have the same topological type. This paper focuses on object surfaces of genus 0. From these assumptions, we can choose arbitrary shapes for both the SDM and target surface. As shown in Fig. 2, the initial SDM and the target surface can be selected from various kinds of models besides spheres, animals and human faces. A mesh model selected as an initial SDM can be projected onto various kinds of target surface as in other methods for surface parameterization. Furthermore, like general deformable models, the SDM can reconstruct surfaces of target objects.

Formulation of the SDM deformation
There are two purposes for deforming the SDM. Considering the SDM notation in Eq.
(1), the first purpose is to project the SDM onto the target surface by changing the vertex positions in V while keeping the original topology for the vertices represented by K. This projection is called topology-preserving mapping. With an initial SDM M s and a final SDM M d ,t h e topology-preserving mapping Φ is formulated as The second purpose of the SDM deformation is to approximate the target surface S by the final SDM M d . Competitive learning is used to represent the distribution of control points on the target surface. From a geometrical point of view, when applying competitive learning to the SDM deformation, the resulting SDM tessellates the target surface into the Voronoi regions, each of which includes almost the same number of control points on the target surface. The SDM cannot always recover the complex shape. For example, if we fit a spherical surface model as an initial SDM to the female model 'Igea' as shown in Fig. 4(c), and the fitting does not meet the second purpose, the final SDM is blurred and incomplete as shown in Fig. 7(c). Therefore, we formulate an error function for the approximated model to recover the target surface with good accuracy.
The second purpose is formulated by an error function for the approximated model. Various definitions of error functions are given in (Cignoni et al., 1998), and the error function in our method is defined as follows. Given a control point p on S, we consider a line that starts at p and is perpendicular to the plane expanded by the face f ∈ K f . If the line intersects inside the face f , we let the intersection condition be true and calculate the distance between p and f . From the faces that satisfy the intersection condition, the face with the minimum distance is regarded as the corresponding face of p. After finding all the correspondences between faces and control points, for each face f m , its corresponding control points are collected into a set Ω m . Here, we denote as Γ i the set of faces f m ∈ K f that include the vertex v i . Then, the error function is defined as the distance D(M d , S ) between M d and S: where |Γ i | and |Ω m | represent the total number of elements in Γ i and Ω m . The function H(p, f ) returns the Euclidean distance between a control point p and the perpendicular foot of p on a face f .  (2) and (3), the deformation of M s is formulated as the optimization problem of finding M d that satisfies the following conditions:

Overview
Generally, the topology-preserving projection function Φ in Eq.
(2) is nonlinear, and a deformation from M s to M d is not always unique. The Self-Organizing Map (SOM) (Kohonen et al., 2001) is a well-known method for finding a topology-preserving mapping, and it enables us to obtain a network that represents the distribution of the given input data. The network consists of a set of units and a set of edges connecting two units. Each unit has a positional vector that provides the position of the unit in the input data space. Initially, the SOM algorithm selects an input data randomly, and computes its Euclidean distance to every unit in the network. Next, the unit with the minimum distance is selected as the winner of the input data. The positions of the winner unit and its neighbor units are slightly adjusted towards the input data. These processes are repeated until no units can be further modified.
During the learning process of the SOM, the network is deformed by moving units in the input data space. We introduce the SOM framework into the SDM deformation by regarding the relationship between the SDM and control points as being equivalent to that of the SOM and the input data. Then, the vertices of the SDM and their 3D positions correspond to the units of the SOM and their positional vectors in the input data. However, from a geometrical point of view, problems occur when the SOM algorithm is applied directly to the SDM deformation. The major problems and their solutions are described below.

Determination of winner vertex
In the SOM algorithm, when a control point is selected randomly, a winner vertex is determined from the Euclidean distances between the control point and the vertices of the SDM. However, this determination may select a vertex that is on the opposite side of the target surface as shown in Fig. 3(a), where the control point and the selected vertex are marked by '•'and' '. In this case, the selected vertex and its neighbors are moved into the target surface. As a result, the final SDM is projected onto the limited area of the target surface as shown in Fig. 3(b). Such a phenomenon is called a collapsed SDM.
To avoid this problem, traditional deformable models based on competitive learning (Ivrissimtzis et al., 2004;Yu, 1999) change the number of vertices of the models and their connectivity during the deformation. On the other hand, the purpose of the SDM deformation is to recover the target surface while keeping the architecture of the SDM. Considering this requirement, we deal with the collapse problem by using a signed distance SD between a 24 Computer Graphics www.intechopen.com control point p and a vertex v: where n p is a unit normal vector at p. SD has positive values if v is outside the surface on which p exists. Otherwise, SD takes negative values for v inside the surface. The absolute value of SD denotes the Euclidean distance between p and v. In our method, the winner vertex is selected so that the signed distance between the vertex and the control point is non-negative and the minimum of all vertices.

Update of vertices
After determining the winner vertex v c of a control point p, v c and its neighbors are updated by moving towards p. In practice, the update of these vertices v i is formulated as ( 8 ) where t is a time parameter, and ǫ(t) (0 < ǫ < 1) is the learning rate that determines the magnitude by which the vertex is adapted towards the point. At the start of implementing the SOM algorithm, ǫ(t) is usually set to a large value to achieve the global adjustment of the SDM. During the learning process, the learning rate gradually decreases to zero according to the specified learning rate function. We define ǫ(t) as follows (Fritzke et al., 1997): Here, ǫ s and ǫ d are the initial and the final learning rates.
The neighborhood function λ(i|c) in Eq. (7) denotes the adaptation rate of an arbitrary vertex v i for a winner vertex v c .I no u rm e t h o d ,λ(i|c) is a decreasing function of the topological distance L(i, c) between two vertices v i and v c : The standard deviation σ(t) of the neighborhood function in Eq.(10) is called the neighborhood radius. At the start of the learning process, the large neighborhood radius is used to map the winner vertex and its neighbors onto the same portion of the target surface. Similar to the learning rate, the neighborhood radius typically decreases with time t,andthe deformation algorithm converges. Therefore, the neighborhood radius is formulated by where σ s and σ d are the initial and final values.
T is the maximum time for selecting winner vertices. The adaptation of the winner vertex and its neighbors causes the vertices to move towards the target surface, and may sometimes generate a collapsed SDM. To solve this problem, our method updates the vertices as follows.
For each vertex in the SDM, we compute the signed distances between the vertex and all control points, and select the closest control point with a non-negative signed distance. If the signed distance between the selected control point and the vertex is more than a given threshold τ, the vertex is assigned to a 'free' label. Otherwise, the vertex is assigned to an 'anchor' label. Here, to determine the value of the threshold τ, we use the average distance L between the 1-ring neighbor points of the target surface, and the threshold is set to τ = 2 * L.
A vertex with a 'free' label is moved closer to the target surface while keeping its relative position with respect to the winner vertex v c . This movement is formulated by Eq.(7) and the translation vector ∆v of the vertex v whereṽ c is its 3D position before updating. The constant parameter α has to be small enough to avoid the self-intersection of the SDM. We empirically set α to α = 0.3.
On the other hand, a vertex with an 'anchor' label is considered to be on the target surface. The adaptation of a vertex with the 'anchor' label using Eq.(12) sometimes causes the vertex to move into the target surface, and generate a collapsed SDM. To solve this problem, we move the vertex with an 'anchor' label along the target surface during the deformation. The movement is achieved by using a geodesic path from the vertex v to a control point p.T h e function Ψ(γ| v, p)(0 ≤ γ ≤ 1) is defined so that the function returns the 3D positional vector of the point on the geodesic path. In addition, Ψ(0| v, p)=v if γ = 0, and Ψ(1| v, p)=p if γ = 1. Using the geodesic path, we update the vertex v i with an 'anchor' label according to the following equation: The geodesic path is computed efficiently using given techniques (Surazhsky et al., 2005). Then, all geodesic paths between two arbitrary points on the target surface are calculated off-line, and stored in a database. In the on-line SDM deformation, we obtain the geodesic path from the vertex merely by finding its closest point.

SDM after finishing the deformation
As stated above, our method introduces certain techniques to avoid a collapsed SDM. Nevertheless, the final SDM may contain foldovers, thus replicating the major problem of the original SOM algorithm. One solution to this problem is to restart the learning process using a different learning rate, the value of which decreases gradually, or by using another neighborhood function with a larger neighborhood radius (Duda et al., 2000). We can also use these ideas to create the SDM without foldovers.
For each vertex v, we select the faces satisfying the following: 1) the topological distance between v and at least one of the vertices of the face is less than a given threshold; and 2) the perpendicular lines from v intersect the face. We compute the distance between v and each perpendicular foot of v on the selected face. If the minimum distance is less than a threshold, the SDM is considered to include a foldover, and we update the parameters of the learning rate and the neighborhood function in Eqs. (9) and (11): We empirically set h 1 = 0.1, h 2 = 0.1, h 3 = 0.1, and h 4 = 0.1. Using Eq. (14), the value of the updated learning rate decreases more slowly than the original learning rate. This changing of the learning rate can avoid a local minimum, that is, foldovers. On the other hand, the updated neighborhood function deals with only the vertices and the 1 or 2-ring neighbor to reduce the computational cost.
In addition, when applying the SOM algorithm to the SDM deformation, the final SDM M d has the characteristic that the Voronoi region of each vertex of the SDM includes almost the same number of control points. This means that M d cannot always recover the object surface completely because M d may not be satisfied by Eq.(5). We further deform the SDM by minimizing an energy function to improve the accuracy of the reconstructed target surface by the SDM.
The algorithm for the deformation chooses candidates for the next position of a vertex, and computes the energy function in the case of the vertex being moved to any of the candidates. We select as the next position of the vertex the candidate with the minimum valued energy function. Although the mesh deformation using the energy function is similar to the active balloon model, the energy function in our method is based on an external energy function, that represents the fitness of the SDM for the target surface. Using the error function in Eq.(3), the value of the energy function E for the vertex v i is computed by 2. Initialize the time parameter t to t = 0. 3. From the set of control points on the target surface, randomly choose a control point p (t) at time t.

Determine the winner vertex
5. Adapt the positions of the winner vertex v (t) c and its neighbors according to their labels: c . The learning rate ǫ(t), the neighborhood function λ(i|c), and the translation vector ∆v are obtained from Eqs.(9), (10), and (12). 6. Compute the signed distances between the moved vertices and their closest control points.
If the distance is less than the threshold τ, the vertex is assigned to an 'anchor' label. 7. If no vertices are moved, or t ≥ T,g ot os t e p8 . O t h e r w i s e ,t ← t + 1 and go to step 3.
Here, T is the maximum time for selecting winner vertices.
8. If the SDM includes foldovers, update the parameters according to Eq. (14), and go to step 2. Otherwise, go to step 9. 9. For each vertex v i : The parameter w is a variable that gives the rate of moving v i to p.
where E(v i ) is the energy function in Eq.(15). In addition, update v i from v i ← v * i . 10. Compute the distance between the SDM and the target surface using Eq.(3). If the distance is less than a given threshold θ e , the process is terminated. Otherwise, go to step 8.
Generally, in the SOM algorithm, the maximum time T for selecting winner vertices is set to a large value to achieve good accuracy for the SOM. In addition, the parameter T acts as a criterion for adopting the energy-based deformation process. Therefore, a large value for the parameter T leads to a deformation process that requires much computational time, even though the SDM is hardly deformed during the process. To avoid this situation, we use another criterion: when no vertices are moved, the algorithm is terminated regardless of the learning time t.

Modification of the SDM deformation algorithm
With the above algorithm, object mesh models used as the SDM can automatically be fitted to the given target surfaces. In addition, users can more easily control the deformation of the SDM more easily than the general deformable models. This characteristic provides the opportunity to obtain more preferable models depending on the applications using the models. Given below are some of the ways of modifying the algorithm for the SDM deformation.

Selection of a control point
After a winner vertex has been determined from a given control point, both the winner vertex and its neighbors move towards the control point. If some control points are chosen more often than others, more SDM vertices tend to move toward these control points. This means that the choice of the control points influences the density of vertices of the SDM on the target surface. Since the control points are randomly chosen, the choice can be controlled by changing the selection probability of the control points. For example, if all control points are chosen with the same probability, the vertices of the resulting SDM are located on the target surface according to the distribution of the control points. As a further example, if the selection probability of the control points from a particular region of the target surface is higher than that of other regions, the vertices of the SDM tend to move toward that particular region.
Let us consider the reconstruction of an object with a complex shape. Then, the reconstruction accuracy of the resulting model can be improved by moving more vertices of the SDM towards the area with the complex shape. One way of achieving this movement is to determine the selection probability of the control points based on the curvatures at the points. In practice, the selection probability P u of control point p u is computed as where C u is the curvature at control point p,andZ is a normalization factor such that ∑ P u = 1. The positive parameter β (β > 0) is used to set the selection possibility of all vertices with a non-zero value. Using the probabilities, control points are chosen by a roulette wheel selection which is one of the selection methods in generic algorithm. In a roulette wheel selection, control points with high selection probabilities are more likely to be selected, but there is also a chance of selecting control points with small probabilities.

Determination of a winner vertex
The SDM framework can move an arbitrary vertex towards a special control point as described below. This movement is achieved by introducing the constraint that the vertex is always selected as the winner of the special point. To begin with, users specify feature control pointsp and their corresponding verticesṽ(p). In the SDM deformation algorithm, if the t-th selected control point p (t) is one of the feature points, its corresponding vertex is automatically where F is the set of the pairs (p,ṽ(p)) of the feature pointsp and their corresponding verticesṽ(p). Under this constraint, the SDM is deformed in such a way that the vertex moves constantly towards the control point.

Experimental results
To verify the applicability of our proposed method, we conducted several experiments that involved applying the SDM to various 3D object models. The well-known "rabbit", "Igea", and "armadillo" were included as models in our experiments. These models were downloaded from Cyberware and Stanford University websites. We set the parameters in the SDM deformation as follows: Given the target surface with N v vertices, the maximum number T of selecting the control points is set to η 0 N v .W ed e n o t ea sap a r a m e t e rη 1 the repeat count of restarting the learning process. Finally, (η 0 + η 1 )N v control points are selected in the SDM deformation. These parameters used in our experiments are shown in Table 1.

Fitting of SDMs to target surfaces
In the first experiment we project a mesh model onto another kind of target surface. The target surfaces used in our experiments are a spherical surface, a cylindrical surface, a roughly quadrupedal surface, and a simple humanoid surface. The latter two models, shown in 4, are called "Animal" and "Cylinderman". Since all the target surfaces are represented by parametric functions, the control points needed to represent each surface are calculated from the functions. Table 1 shows the number of vertices and faces of the initial SDMs, and the number of control points together with the computational time for each projection.
The top row in Fig. 5 shows the initial SDMs, while the bottom row displays the projected models. In each of these figures, the normal of the initial SDM is mapped onto the final SDM and its shape approximates the target surface. Amongst these experiments, the projection of the "armadillo" model onto the Cylinderman proved to be the most time-consuming because of the complex shapes. Fig. 6 shows the facial part of the projected armadillo in shading and wireframe representations. Fig. 6(a) displays an enlarged view of the model shown in Fig. 5(c), while the shading model shown in Fig. 6(b) is obtained using normals of the final SDM. The SDM can be projected onto the target surface smoothly without foldovers. It is clear from these results that our method can project mesh models onto various kinds of mapping surfaces in a unified framework compared with previous works that required mapping functions.
Next, we compare our proposed method to that which applies the original SOM algorithm to an SDM deformation. We refer to the latter method as the comparison method. The pig model used in the first experiment is projected onto a spherical surface using the comparison method. Fig. 7(a) is the shading model obtained from the comparison method. The model is projected onto a limited area of the target surface. Some unnatural edges are seen on the model surface. By contrast, Fig. 7(b) is the shading model given in Fig. 5(a). Since the SDM deformation introduces certain processes to avoid the collapse problem, the SDM can be projected onto the target surface while not containing any foldover areas. Next, we fit a spherical surface model as an SDM to the female model 'Igea' as shown in Fig. 4(c). The purpose of the SOM algorithm is to represent the distribution of the control points by the SOM. Therefore, in the comparison 32 Computer Graphics method, the final SDM as shown in Fig. 7(c) is blurred and incomplete. Fig. 5(e) displays the model obtained using our proposed method. According to these figures, our method can approximate the original shape.
With reference to the parameters in the SDM deformation, we verified the sensitivity of our method to these parameters. This verification uses the example mapping from a spherical surface as the initial SDM to the Igea as the target surface in Fig while the other parameters use the original values. The SDM deformation is performed by using the various parameter sets. Fig. 8 shows the computational time and the error distance between the final SDM and the target surface in Eq.
(3) when changing each parameter. In this and 2.2× 10 −7 . Noting these results, the accuracy of all the final SDMs is good regardless of the settings of the parameters. On the other hand, the computational time and the error tend to increase in the SDM deformation using the parameters so that the ratio σ d /σ s or ǫ d /ǫ s is large. The reason for this is that the parameters leads to the retention of a large adaptation rate or the large learning rate during the deformation process, and to a slow convergence of the SDM deformation.
In our experiments, we determined the parameters through some preliminary experimental work. The SDM deformation is based on the SOM algorithm, which contains the parameters such as the learning rate in Eq.(9) and the neighborhood radius in Eq.(11). However, there is no theoretical framework for the optimal selection of the parameters included in the SOM algorithm. For optimal selection, one way is to incorporate the Bayesian framework into the SOM algorithm (Bishop et al., 1998;Utsugi, 1996;1997). This incorporation enables us to regard the SOM algorithm as an estimating algorithm for the Gaussian mixture model. Given the input data, self-organizing mapping is performed by estimating a probability distribution, generating the data by using the expectation-maximization algorithm. The optimal hyperparameters in the model can be estimated from the data. Our future work will include the extension of the SDM using the Bayesian framework.
As shown in Table 1, the deformations of the SDMs with complex shapes require more computational time than other SDM deformations. Since the model obtained by the SDM tends to include a foldover, the SDM deformation is restarted several times to remove the foldover from the SDM. Our future work includes the development of a method to reduce the computational time of the SDM deformation.

Control of deforming SDM
In Section 3.4, we noted some of the advantages of the SDM deformation. This experiment was conducted to verify the possibility of controlling the SDM deformation. To begin with, we acquired facial range data from 29 males using a range finder. The range data of each face was composed of about 85,000 points, and the points were used directly as control points. A model of each face was obtained by fitting a spherical SDM to the facial range data. Then, we set the single constraint that certain specific feature vertices of the SDM always moved towards their corresponding control points one by one. In practice, we manually chose 12 vertices in the SDM. These are illustrated in Fig. 9(a) as black points. We also selected 12 control points by hand from the facial range data as shown in Fig. 9(a). If one of these control points was chosen in step 3 of the SDM deformation algorithm, its corresponding vertex was automatically determined as the winner vertex. a structural correspondence between any two facial models. This correspondence is useful to computer vision and computer graphics applications. As an example of an application, we generate the average model of male faces by computing the average position of each vertex with the same label. Fig. 9(f) shows the average facial mesh model.
Also the SDM deformation can be controlled by changing the selection possibility of the control points. In this experiment, a spherical surface and a female face as shown in Fig. 10(a) are used as the initial SDM and target surface, respectively. The target surface is resampled so that the control points are distributed uniformly. From Eq.(19), we determine the selection possibility of the control point. The determination uses the average curvature at the control point p as the curvature C(p) in Eq.(19). The average curvature is computed by the method in (Hameiri et al., 2002). Fig. 10(b) shows the visualization of the high average curvature of the face. In particular, the eyes, nose, and mouth areas contain points with high curvatures.

35
Self-Organizing Deformable Model: A Method for Projecting a 3D Object Mesh Model onto a Target Surface

www.intechopen.com
After the SDM deformation, the final SDM is obtained as shown in Fig. 10(c). The distribution of the vertices is represented by the average distance A i between each vertex v i and its 1-ring neighbors. When many vertices are intensively collected in certain regions, the average distance between the vertices is small. On the other hand, the average distance is large when regions contain a small number of vertices. Using the average distance, the red color R i of the vertex v i is assigned by where A min and A max are, respectively, the minimum and maximum average distances between the vertices whose A i is less than a given threshold. Fig. 10

Conclusion
This paper proposed a method for fitting mesh models to a given surface using the Self-organizing Deformable Model (SDM). The basic idea behind the SDM is the combination of competitive learning and energy minimization. Although the SDM and the target surface must have the same topological type, there are few other constraints when using the SDM. Our SDM can be applied to various target surfaces, whereas traditional methods using mapping functions only deal with a specific target surface. Furthermore, compared with deformable models based on energy minimization, our proposed method enables us to control the SDM deformation easily by changing the ways in which control points are chosen and a winner vertex is determined. The experimental results show that our SDM is a powerful tool for use in various fields in computer vision and computer graphics. For example, the SDM enables us to establish the correspondence between two mesh models by mapping them onto a common target surface. We are currently developing SDM-based applications.

Acknowledgment
This work was supported by a Grant-in-Aid for Scientific Research(C) (No. 23500244) of The Ministry of Education, Culture, Sports, Science, and Technology, Japan.