ESTIMATING THE TENSOR OF CURVATURE OF A SURFACE FROM A POLYHEDRAL APPROXIMATION Gabriel Taubin IBM T.J.Watson Research Center P.O.Box 704, Yorktown Heights, NY 10598 firstname.lastname@example.orgAbstract mate principal curvatures at the vertices of a triangu- Estimating principal curvatures and principal direc- lated surface. Both this algorithm and ours are basedtions of a surface from a polyhedral approximation on constructing a quadratic form at each vertex ofwith a large number of small faces, such as those pro- the polyhedral surface and then computing eigenval-duced by iso-surface construction algorithms, has be- ues (and eigenvectors) of the resulting form, but thecome a basic step in many computer vision algorithms. quadratic forms are different. In our algorithm theParticularly in those targeted at medical applications. quadratic form associated with a vertex is expressed asIn this paper we describe a method to estimate the ten- an integral, and is constructed in time proportional tosor of curvature of a surface at the vertices of a poly- the number of neighboring vertices. In the algorithm ofhedral approximation. Principal curvatures and prin- Chen and Schmitt, it is the least-squares solution of ancipal directions are obtained by computing in closed overdetermined linear system, and the complexity ofform the eigenvalues and eigenvectors of certain ¿ ¢ ¿ constructing it is quadratic in the number of neighbors.symmetric matrices deﬁned by integral formulas, and 2 The Tensor of Curvatureclosely related to the matrix representation of the ten- The tensor of curvature of the surface Ë is the map Ôsor of curvature. The resulting algorithm is linear, both Ô that assigns each point Ô of Ë to the function thatin time and in space, as a function of the number of measures the directional curvature Ô ´Ì µ of Ë at Ô in thevertices and faces of the polyhedral surface. direction of the unit length vector Ì , tangent to Ë at Ô. The directional curvature Ô ´Ì µ of a surface Ë at a1 Introduction point Ô in the direction of a unit length tangent vector It is well established in the Computer Vision litera- Ì is deﬁned by the identity Ü¼¼ ´¼µ Ô ´Ì µÆ , where Æture the use of differential invariant properties – prin- is the unit length normal vector to Ë at Ô, and Ü´×µ is acipal curvatures and principal directions – for recog- normal section to Ë at Ô parameterized by arc length, andnition and registration purposes, particularly for free- such that Ü´¼µ Ô and Ü¼ ´¼µ Ì [4, 20]. The directionalform surfaces [13, 2, 1, 6]. And this is particularly the curvature function Ô ´¡µ is a quadratic form [4, 20], i.e.,case in the medical imaging domain [15, 10, 14, 19]. it satisﬁes the identityWhen surfaces are estimated, they are usually approxi-mated by polyhedral surfaces that can be visualized in Ø ½½ ½¾ Ø½ Ô Ô Ø½a computer. In this paper we address the problem of Ô ´Ì µ ¾½ ¾¾ Ø¾ Ô Ô Ø¾accurately estimating the principal directions and prin-cipal curvatures of a subjacent, unknown, smooth sur- where, Ì Ø½ Ì½ · Ø¾ Ì¾ is a tangent vector to Ë at Ô,face from a polyhedral approximation. Some existing Ì½ Ì¾ is an orthonormal basis of the tangent space totechniques only apply to surfaces extracted from range Ë at Ô, ½½ Ô Ô ´Ì½ µ, Ô ¾¾ ½¾ Ô ´Ì¾ µ, and Ô ¾½ Ô . Theimages [1, 5, 7]. Other techniques that only apply to vectors Ì½ Ì¾ are called principal directions of Ë at Ôiso-surfaces , make use of the implicit function de- when ½¾ Ô ¾½ Ô ¼. The corresponding directionalﬁned on a regular three-dimensional grid around the curvatures are the principal curvatures, which we willsurface . Lin and Perry  show how to estimate denote ½ and ¾ , instead of ½½ and ¾¾ . Ô Ô Ô Ôthe Gaussian curvature at the vertices of a triangulated If we add the normal vector Æ to the basis Ì½ Ì¾surface. of principal directions, we obtain an orthonormal basis Chen and Schmitt  describe an algorithm to esti- Æ Ì½ Ì¾ of three-dimensional space, which changes 1
from point to point. The following formula extends the where Ì½¾ Ì½ Ì¾ is the ¿ ¢ ¾ matrix constructeddeﬁnition of the directional curvature to non-tangent by concatenating the column vectors Ì½ and Ì¾ , anddirections Ñ½¾ Ô Ñ¾½ because of the symmetry. Regarding the Ô ¼ ½Ø ¼ ½¼ ½ parameters ÑÔ , we ﬁrst observe that the off-diagonal Ò ¼ ¼ ¼ Ò ½ elements are zero: Ô ´Ì µ Ø½ ¼ Ô ¼ Ø½ (1) Ø¾ ¼ ¼ ¾ Ø¾ Ñ½¾ Ø Ì½ ÅÔ Ì¾ Ô Ô ½ Ê· Ó×¿ ´ µ × Ò´ µ Ôwhere Ì ÒÆ · Ø½ Ì½ · Ø¾ Ì¾ is an arbitrary vector. ¾ ¾ Ê Tangent vectors to Ë at Ô are those for which Ò ¼. Ô · ¿If we write the vector Ì as a linear combination Ì · ¾ Ó×´ µ × Ò ´ µ ¼Ù½ Í½ · Ù¾ Í¾ · Ù¿ Í¿ of another system of orthonormal because both integrands are odd functions of . Thisvectors Í½ Í¾ Í¿ , the directional curvature now has means that the two remaining eigenvectors of ÅÔan expression (other than Æ ) are the principal directions Ì½ and Ì¾ . Ø Ô ´Ì µ Ù ÃÔ Ù The corresponding eigenvalues are not the principalwhere Ù and ÃÔ is a ¿ ¢ ¿ symmetric Ù µØ , ´Ù½ Ù¾ ¿ curvatures, though:matrix which has ¼, an the two principal curvatures ½ ,Ô Ñ½½ Ø Ì½ ÅÔ Ì½ ¾ Ô , as eigenvalues. From now on we will use as the ba- Ô ½ Ô Ê·sis Í½ Í¾ Í¿ the same Cartesian coordinate system ¾ ¾ Ê Ó× ´ µused to specify the coordinates of points on the surface, · ¾ ¿ ½ Ó×¾ ´ µ × Ò ´ µ ½ ¾ Ôindependently of the point Ô on Ë . · ¾ Ô· Ô (3) The principal curvatures and principal directions of With a similar derivation we obtainË at Ô can be recovered by ﬁrst restricting the matrix Ñ¾¾ Ø Ì¾ ÅÔ Ì¾ ½ ½ ¿ ¾ÃÔ to the tangent plane to Ë at Ô, and then comput- Ô Ô· Ô (4)ing the eigenvalues and eigenvectors of the resulting¾ ¢ ¾Ñ ØÖ Ü. And this computation can be done in From equations (3) and (4) we obtain the principal cur-closed form using just a few arithmetic operations. This vatures as functions of the nonzero eigenvalues of ÅÔis essentially the approach taken in this paper. ½ Ô ¿Ñ½½ Ô ÑÔ ¾¾3 Estimating The Tensor of Curvature ¾ Ô ¿ÑÔ¾¾ ÑÔ ½½ (5) In this section we deﬁne a matrix ÅÔ by an integral To estimate the directional curvature Ô ´Ì µ for a unitformula. This matrix that has the same eigenvectorsas ÃÔ , and their eigenvalues are related by a ﬁxed ho- length vector Ì , tangent to Ë at Ô, we consider again a smooth curve Ü´×µ parameterized by arc-length, con- tained in Ë , and such that Ü¼ ´¼µmogeneous linear transformation. Estimating principal Ì . In such a case we also have Ü¼¼ ´¼µcurvatures and principal directions of Ë at Ô reducesto diagonalizing the matrix ÅÔ , which can be done in Ô ´Ì µÆ . We now expand Ü´×µ in Laurent series up to second orderclosed form. We ﬁnish the section with a ﬁnite differ-ences scheme to approximate directional curvatures. Ü´×µ Ü´¼µ · Ü¼ ´¼µ× · ½ Ü¼¼ ´¼µ×¾ · Ç´×¿ µ For , let Ì the unit length tangent vec- ½ ¾ Ô · Ì × · ¾ Ô ´Ì µ Æ ×¾ · Ç´×¿ µtor Ì Ó×´ µ Ì½ · × Ò´ µ Ì¾ , where Ì½ Ì¾ are theorthonormal principal directions of Ë at Ô. and observe that According to equation (1) above ½ ¾ ¾ ¾ Ø ¾Æ ´Ü´×µ Ôµ ¾ Ô ´Ì µ × · Ç ´× µ ¿ Ô ´Ì µ Ô Ó× ´ µ · Ô ×Ò ´ µ andLet us deﬁne the symmetric matrix Ü´×µ Ô ¾ ×¾ · Ç´×¿ µ · ½ Ø From the previous two equations we obtain ÅÔ Ô ´Ì µ Ì Ì (2) ¾ ¾Æ Ø ´Ü´×µ ÔµThe normal vector Æ is an eigenvector of this matrix as-sociated with the eigenvalue ¼, because Ì Ì Ø is a rank ½ Ü´×µ Ô ¾ Ô ´Ì µ · Ç ´×µ (6)matrix for every , and Ì is tangent to Ë at Ô. It follows It follows that the directional derivative Ô ´Ì µ is equalthat ÅÔ can be factorized as follows to the limit Ø Ñ½½ Ô Ñ½¾ Ô ¾Æ Ø ´Ü´×µ Ôµ ÅÔ Ì½¾ Ñ¾½ Ô Ñ¾¾ Ô Ì½¾ Ô ´Ì µ ÐÑ × ¼ Ü´×µ Ô ¾
If Õ is another point on the surface, close to Ô but differ- the tangent plane ÆÚent from Ô, and Ì is the unit length normalized projec-tion of the vector Õ Ô onto the tangent plane Æ , the ´Á ÆÚ ÆÚØ µ´Ú Ú µ ´Á ÆÚ ÆÚ µ´Ú Ú µ Ì Ødirectional curvature can be approximated as follows ¾Æ Ø ´Õ Ôµ We approximate the directional curvature Ú ´Ì µ us- Ô ´Ì µ Õ Ô ¾ (7) ing the formula of equation (7)4 The Algorithm Ø ¾ÆÚ ´Ú Ú µ We now consider a polyhedral surface that we will Ú Ú ¾look upon as an approximation of an unknown surface.Our goal is to estimate principal curvatures and princi- We choose the weight Û proportional to the sum ofpal directions at the vertices of the polyhedral surface the surface areas of all the triangles that are incidentusing approximations to the formulas described in the to both vertices Ú and Ú (two if the surface is closed,previous section. and one if both vertices belong to the boundary of the Since our current implementation only processes tri- surface). We set the proportionality constant to makeangulated surfaces, we will restrict our analysis to this the sum of all the weights in the neighborhood of vertexcase. The extension to general polyhedral surfaces is Ú equal to onetrivial, and is left to the reader. A triangulated surface Û ½is usually represented as a pair of lists Ë Î , a list Ú ¾Îof vertices Î Ú ½ ÒÎ , and a list of faces By construction, the normal vector ÆÚ is an eigen- ½ Ò . Each face ´ ½ ¾ ¿ µ is a vector of the matrix ÅÚ associated with the eigenvaluetern of non-repeated indices of vertices, that represents ¼. To compute the two remaining eigenpairs we re-itself a three dimensional triangle. We will consider strict the matrix ÅÚ to the tangent plane ÆÚ us-both closed triangulated surfaces, and triangulated sur- ing a Householder transformation , and then diago- nalize the resulting ¾ ¢ ¾ matrix in closed form with afaces with boundary, but we will assume that the sur-faces are oriented, and consistent . The set of vertices Givens rotation . In this way the computed princi-that share a face with Ú will be denoted Î . If the ver- pal directions are constrained to be orthogonal to thetex Ú belongs to Î , we say that Ú is a neighbor of Ú . normal vector ÆÚ , even if one of the eigenvalues ofThe number of elements of the set Î will be denoted Î . The set of faces that contain vertex Ú will be de- ÅÚ is zero, or close to zero. Of course, if the two re-noted . If the face belongs to , we say that is maining eigenvalues of ÅÚ are equal, the principal di-incident to Ú . The number of elements of the set will rections will not be uniquely determined. But this is abe denoted . problem that every algorithm to estimate principal di- The ﬁrst task is to estimate the normal vectors at the rections will have. Let ½ ´½ ¼ ¼µØ be the ﬁrst coordinate vector, andvertices of the surface. Since the faces of the surface are letplanar, each face has a well deﬁned unit length nor- ½ ¦ ÆÚmal vector Æ . Since the surface is oriented all thesenormal vectors point to the same side of the surface. We ÏÚ ½ ¦ ÆÚdeﬁne the normal vector at a vertex Ú as the normal- with a minus sign if ½ ÆÚ ½ · ÆÚ , and plusized weighted sum of the normals of the incident faces, sign otherwise. The Householder matrixwith weights proportional to the surface areas of thefaces È ÉÚ Á ¾ÏÚ ÏÚØ È ¾ Æ ÆÚ is orthogonal and has its ﬁrst column equal to ÆÚ or ¾ Æ ÆÚ , depending on the previous choice of sign. The The second task is to estimate the matrices ÅÚ . As two other columns deﬁne an orthonormal basis of thewe mentioned above, we approximate the matrix ÅÚ tangent space, but not necessarily the principal direc-with a weighted sum over the neighborhood Î tions. Let us denote these two vectors Ì½ and Ì¾ , Since ÆÚ is an eigenvector of ÅÚ with associated eigenvalue Ø ÅÚ Û Ì Ì ¼, we have Ú ¾Î ¼ ½ ¼ ¼ ¼For each neighbor Ú of Ú , we deﬁne Ì as the unit ÉØ ÅÚ ÉÚ Ú ¼ Ñ½½ Ú Ñ½¾ Úlength normalized projection of the vector Ú Ú onto ¼ Ñ¾½ Ú Ñ¾¾ Ú
where Ñ¾½Ú Ñ½¾ . Now the ¾ ¢ ¾ nonzero minor can Ú are matrices of the same size, the Frobenius inner prod-be diagonalized in closed form with a Givens rotation, uct of and isobtaining an angle such that the vectors Ø trace´ µ Ì½ Ó×´ µ Ì½ × Ò´ µ Ì¾ Ì¾ × Ò´ µ Ì½ · Ó×´ µ Ì¾ The Frobenius norm is derived from the inner product as usual ¾are the remaining eigenvectors of ÅÚ , i.e., the principaldirections of the surface at Ú . The principal curvatures We have two reasons to use this notion of error. Firstare obtained from the two corresponding eigenvalues of all, the Frobenius inner product of two matrices isof ÅÚ using equation (5). invariant under Euclidean coordinate transformations. The second reason is that this notion of error compares5 Surface Smoothing all the estimated elements at the same time. Since the directional curvatures are estimated by aﬁnite differences formula, a smoothing preprocessingstep is required for noisy surfaces. The noise couldbe due to measurement errors or just be a system-atic problem. For example, iso-surface constructionalgorithms show a typical faceting effect that is moreor less pronounced depending on which interpolationmethod is used to determine the location of the sur- A B Cface vertices from the grid function values. In our im-plementation we have used a new linear algorithm for Figure 1: Polyhedral approximations of a sphere. A: Icosa-surface smoothing that applies to polyhedral surfaces hedron B: Icosahedron subdivided once. C: Icosahedron sub-of arbitrary topology, and does not produce shrink- divided twice.age [16, 18]. However, any other linear, non-shrinkingsmoothing method for polyhedral surfaces of arbitrarytopology is acceptable.6 Experimental Results One way to determine the accuracy of the new al-gorithm introduced in this paper is to compare esti-mated values with true values in cases where groundtruth is available. To do so we ﬁrst consider a smooth A B Csurface described analytically, i.e., such that the matri-ces ÅÔ can be computed by evaluating certain formu- Figure 2: Polyhedral approximations of a torus. A: ¢ grid.las derived from the analytic description of the surface. B: ½ ¢½ grid. C: ¿ ¢¿ grid.Then we generate a triangulated surface approxima-tion of the smooth surface making sure that the verticesof the polyhedral approximation lie on the correspond-ing smooth surface, i.e., that the original surface inter-polates the vertices of the polyhedral surface. Then, us-ing the algorithm described in this paper, we estimate A B Cthe matrices ÅÚ for each vertex Ú of the triangulatedsurface, and compute the corresponding analytic ver- Figure 3: Estimation errors histograms for the torus. A: ¢sion ÅÚ by evaluating the deﬁning formulas. Finally grid. B: ½ ¢ ½ grid. C: ¿ ¢ ¿ grid. Horizontal axis (errorwe measure the estimation error as follows value) goes from ¼ ¼¼ to ¼ ¼ , and there are 20 vertical bars. No vertex showed error larger than ¼ ¼ . The vertical axis is scaled to make the maximum of each histogram equal to ½. ¯Ú ½ ÅÚ ÅÚ ÅÚ ÅÚ Figure 1 shows the simplest possible example, theand we either look at the maximum error, or at the dis- case of a sphere of unit radius ´Ü Ý Þ µ Ü¾ · Ý ¾ · Þ ¾tribution of errors across the surface. The inner product ½ . We approximate the sphere at the coarsest levelused above is the Frobenius inner product. If and by an icosahedron. Then we subdivide each triangular
A B C Figure 5: Estimation error histograms for the three iso- surfaces of Figure 4. Horizontal axis (error value) goes from ¼ ¼¼ to ¼ ½¼, and there are 100 vertical bars. The vertical axis is scaled to make the maximum of each histogram equal to ½. face into four triangular faces, and shift the new ver- tices radially to make them lie on the unit sphere. We repeat this process twice. In the three cases the errors where approximately constant for all the vertices, and less than ¼ ¾ ¢ ½¼ ¿ . In the next example we test whether the error de- pends on the resolution of the grid or not for a para- metric surface. Figure 2 shows a torus deﬁned by the following parametric equations Ü ´¾ · Ó×´Ùµµ Ó×´Ú µ Ý ´¾ · Ó×´Ùµµ × Ò´Ú µ Þ × Ò´Ùµ with Ù Ú . In this case we just subdivide the domain into a regular square mesh, and each square cell into two triangles. Since the surface is parameter- ized, the vertices of the resulting triangulated surface approximation automatically lie on the torus. Figure 3 shows the error histograms for the torus. In this case the errors where not approximately constant across the surfaces. The maximum errors were ¼ ¼¿ for ¢ grid, ¼ ¼¿ for ½ ¢ ½ grid, and ¼ ¼¿ for ¿ ¢ ¿ grid. But, as the histograms show, the most typical (mean) error is around ¼ ¼½. It can be observed that the er- rors do not decrease signiﬁcantly as the resolution in- creases. This is due to the fact that the number of neigh- bors of each vertex does not increase as the resolution increases. In the last example we test whether the error de- pends on the triangulation or not. In Figure 4 we consider the implicit surface ´Ü Ý Þ µ ´Ü Ý Þ µ ¼ deﬁned by the following function ´Ü Ý Þ µ ´´Ü ½ ¾µ¾ ·Ý ¾ ½ µ¾ ´Þ¾ µ¾ · ´´Ü·½ ¾µ¾ ·Þ ¾ ½ µ¾ ´Ý¾ µ¾ ¼½ We subdivide the cube ¿ ¿ ¢ ¿ ¿ ¢ ¿ ¿ into a ½ ¢ ½ ¢ ½ grid, evaluate the function at the nodesFigure 4: Three iso-surfaces constructed by evaluating the of this grid, and run an iso-surface construction algo-same analytic function on two grids. The three grids are of the rithm similar to marching-cubes . Then we movedsame size, but their orientations with respect to the surfacediffer. the vertices of the resulting triangulated surface ap- proximation to make them lie on the implicit surface, by line searching for a zero of the function along the straight line deﬁned by the vertex and the gradient of
the function at the vertex. We generated Figure 4-A in  X. Chen and F. Schmitt. Intrinsic surface properties fromthis way. To see whether the algorithm was sensitive surface triangulation. In Proceedings, European Conferenceor not to the relative orientation of the grid with re- on Computer Vision, pages 739–743, Santa Margheritaspect to the surface, we generated two other triangu- Ligure, Italy, May 1992.lated surfaces, shown in Figures 4-B and 4-C, with the  M. Do Carmo. Differential Geometry of Curves and Sur-same procedure, but with the cube that deﬁned the grid faces. Prentice Hall, 1976.rotated with respect to the Cartesian axes. So, the trian-  T. Fan, G. Medioni, and R. Nevatia. Description of sur-gulated surfaces of Figures 4-B and 4-C are not equal to faces from range data using curvature properties. In Pro-the triangulated surface of Figure 4-A after a rotation, ceedings, IEEE Conference on Computer Vision and Patternbut they are completely different surfaces. In fact, the Recognition, pages 86–91, May 1986.surface of Figure 4-A has ¾ vertices, the surface of  J. Feldmar and N. Ayache. Rigid and afﬁne registrationFigure 4-B has ½ vertices, and the surface of Figure of smooth surfaces using differential properties. In Jan-4-C has ¿ vertices. Olof Eklundh, editor, Proceedings, European Conference on Figure 5 shows the error histograms for the implicit Computer Vision, number 801 in Lecture Notes in Com- puter Science, pages 397–406. Springer-Verlag, 1994.surfaces of ﬁgure 4. Only the vertices with error lesthan ¼ ½¼ where considered in the histograms. In the  P.J. Flynn and A.K. Jain. On reliable curvature estima-three cases there where a few vertices with error larger tion. In Proceedings, IEEE Conference on Computer Vision and Pattern Recognition, pages 110–116, June 1989.than ¼ ½¼ (¾ for surface A, for surface B, and ¼for surface C). These outlier vertices where located in  J.D. Foley, A. van Dam, S.K. Feiner, and J.F. Hughes.the regions of highest curvature, where the edge length Computer Graphics, Principles and Practice. Addison- Wesley, Reading, MA, second edition, 1992.should have been shorter to produce a good estima-tion. The mean error though, was around ¼ ¼½ in the  G. Golub and C.F. Van Loan. Matrix Computations. Johnthree cases (¼ ¼½½ for surface A, ¼ ¼¼ for surface B, and Hopkins University Press, 1983.¼ ¼½¿ for surface C). This can clearly be seen in the his-  A. Gu´ ziec and N. Ayache. Smoothing and matching of etograms. 3d space curves. International Journal of Computer Vision, 12(1):79–104, January 1994.7 Conclusions  C. Lin and M.J. Perry. Shape description using surface We have introduced in this paper a new simple algo- triangulation. In Proceedings, IEEE Workshop on Computerrithm for estimating the principal curvatures and prin- Vision: Representation and Control, pages 38–43, 1982.cipal directions of a surface at the vertices of an approx-  W. Lorenson and H. Cline. Marching cubes: A highimating triangulated surface. resolution 3d surface construction algorithm. Computer The complexity of the algorithm is linear, both in Graphics, pages 163–169, July 1987. (Proceedings SIG-time and in space, as a function of the number of ver- GRAPH).tices and faces of the polyhedral surface. All the com-  G. Medioni and R. Nevatia. Description of 3-D surfacesputations are simple and direct. No expensive iterative using curvature properties. In Proceedings, DARPA Imagenumerical algorithms are needed, not even for comput- Understanding Workshop, pages 291–299, New Orleans,ing the eigenvalues and eigenvectors of the matrices LA, October 3–4 1984.involved, because close form expressions are used in-  O. Monga, S. Benayoun, and O. Faugeras. From partialstead. The preliminary experiments shown in the pa- derivatives of 3d density images to ridge lines. In Pro-per makes us believe that the accuracy of this new algo- ceedings, IEEE Conference on Computer Vision and Patternrithm is not worse than the accuracy of other available Recognition, pages 354–359, June 1992.algorithms, and perhaps much better. Further experi-  P.T. Sanders and S.W. Zucker. Inferring surface trace andmentation will be presented in forthcoming reports. differential structure from 3D images. IEEE Transactions A longer version of this paper , as well as other on Pattern Analysis and Machine Intelligence, 12(9):833– 854, September 1990.related papers [16, 18], can be retrieved as PostScriptﬁles from the IBM Research World Wide Web server  G. Taubin. Curve and surface smoothing without(http://www.watson.ibm.com:8080). shrinkage. Technical Report RC-19536, IBM Research, April 1994. (also in Proceedings ICCV’95).References  G. Taubin. Estimating the tensor of curvature of a sur-  P.J. Besl and R.C. Jain. Invariant surface characteristics face from a polyhedral approximation. Technical Report for 3d object recognition in range images. Computer Vi- RC-19860, IBM Research, December 1994. (also in Pro- sion, Graphics, and Image Processing, 33:33–80, 1986. ceedings ICCV’95).  M. Brady, J. Ponce, A. Yuille, and H. Asada. Describing  G. Taubin. A signal processing approach to fair sur- surfaces. Computer Vision, Graphics, and Image Processing, face design. Technical Report RC-19923, IBM Research, 32(1):1–28, 1985. February 1995. (also in Proceedings SIGGRAPH’95).
 J.P. Thirion. The extremal mesh and the understand- ing of 3d surfaces. In IEEE Workshop on Biomedical Image Analysis, pages 3–12, Seattle, WA, June 24–25 1994. J.A. Thorpe. Elementary Topics in Differential Geometry. Springer-Verlag, 1979.