Meyer 2003
Meyer 2003
Meyer 2003
Mark Meyer 1 , Mathieu Desbrun 1,2, Peter Schroderl, and Alan H, Barr l
Summary. This paper proposes a unified and consistent set of flexible tools to
approximate important geometric attributes, including normal vectors and cur-
vatures on arbitrary triangle meshes. We present a consistent derivation of these
first and second order differential properties using averaging Vomnoi cells and the
mixed Finite-Element/Finite-Volume method, and compare them to existing for-
mulations. Building upon previous work in discrete geometry, these operators are
closely related to the continuous case, guaranteeing an appropriate extension from
the continuous to the discrete setting: they respect most intrinsic properties of the
continuous differential operators. We show that these estimates are optimal in ac-
curacy under mild smoothness conditions, and demonstrate their numerical quality.
We also present applications of these operators, such as mesh smoothing, enhance-
ment, and quality checking, and show results of denoising in higher dimensions,
such as for tensor images.
1 Introduction
and use discrete curvature approximations to measure the quality of the cur-
rent approximation (for example, see [19]). Accurate curvature normals are
also essential to the problem of surface denoising [5, 11] where good esti-
mates of mean curvatures and normals are the key to undistorted smoothing.
More generally, discrete operators satisfying appropriate discrete versions of
continuous properties would guarantee reliable numerical behavior for many
applications using meshes.
Several expressions for different surface properties have been designed. For
instance, we often see the normal vector at a vertex defined as a (sometimes
weighted) average of the normals of the adjacent faces of a mesh. Thurmer
and Wuthrich [27] use the incident angle of each face at a vertex as the
weights, since they claim the normal vector should only be defined very lo-
cally, independent of the shape or length of the adjacent faces. However, this
normal remains consistent only if the faces are subdivided linearly, introduc-
ing vertices which are not on a smooth surface. Max [16] derived weights
by assuming that the surface locally approximates a sphere. These weights
are therefore exact if the object is a (even irregular) tessellation of a sphere.
However, it is unclear how this approximation behaves on more complex
meshes, since no error bounds are defined. Additionally, many meshes have
local sampling adapted to local flatness, contradicting the main property of
this approach. Even for a property as fundamental as the surface normal, we
can see that several (often contradictory) formulre exist.
Taubin proposed the most complete derivation of surface properties, lead-
ing to a discrete approximation of the curvature tensors for polyhedral sur-
faces [25]. Similarly, Hamann [12] proposed a simple way of determining
the principle curvatures and their associated directions by a least-squares
paraboloid fitting of the adjacent vertices, though the difficult task of select-
ing an appropriate tangent plane was left to the user. Our paper is closely
related to these works since we also derive all first and second order prop-
erties for triangulated surfaces. However, many of the previous approaches
do not preserve important differential geometry properties (invariants) on CO
surfaces such as polyhedral meshes.
In order to preserve fundamental invariants, we have followed a path ini-
tiated by Federer, Fu, Polthier, and Morvan to name a few [8, 22, 24, 18, 26].
This series of work proposed simple expressions for the total curvatures, as
well as the Dirichlet energy for triangle meshes, and derived discrete methods
to compute minimal surfaces or geodesics. We refer the reader to the overview
compiled by Morvan [18]. Note also the tight connection with the "Mimetic
Discretizations" used in computational physics by Shashkov, Hyman, and
Steinberg [14, 15]. Although it shares a lot of similarities with all these ap-
proaches, our work offers a different, unified derivation that ensures accuracy
Discrete Differential-Geometry Operators for Triangulated 2-Manifolds 37
(a) (b)
(c) (d)
Fig. 1. Some applications of our discrete operators: (a) mean curvature plot for a
discrete surface, (b) principal curvature directions on a triangle mesh, (c-d) auto-
matic featuT'e-preserving denoising of a noisy mesh using anisotropic smoothing.
and tight error bounds, leading to simple formulre that are straightforward
to implement.
Contributions
In this paper we define and derive the first and second order differential
attributes (normal vector n , mean curvature "'H , Gaussian curvature "'G ,
principal curvatures "'1 and "'2 , and principa l directions e1 and e2) for piece-
wise linear surfaces such as arbitrary triangle meshes. We present a unified
framework for deriving such quantities resulting in a set of operators that
is consistent, accurate, robust (in both regular and irregular sampling) and
simple to compute.
The remainder of this paper is organized as follows. Details of why a local
spatial average of these attributes over the immediate I-ring neighborhood is
a good choice to extend the continuous definition to the discrete setting is first
given in Section 2. We then present a formal derivation of these quantities
for triangle meshes using the mixed Finite-Element/Finite-Volume paradigm
in Sections 3, 4 and 5. The relevance of our approach is demonstrated by
showing the optimality of our operators under mild smoothness conditions.
We demonstrate the accuracy and the use of these operators in different
applications, including the smoothing and enhancement of meshes in Sec-
tion 6. In Section 7, we generalize some of these operators to any 2-manifold
38 Mark Meyer, Mathieu Desbrun, Peter Schroder, and Alan H. Barr
(1)
the smoothed surface if the initial triangle mesh was a good approximation
of the initial surface. Since we make no assumption on the smoothness of the
surface, we will restrict the average to be within the immediately neighboring
triangles, often referred as the I-ring or star neighborhood. For example, we
define the discrete Gaussian curvature, K,Q, at a vertex Pas:
where A is a properly selected area around P. Note however that we will not
distinguish between the (continuous) pointwise and the (discrcte) spatially
averaged notation, except when there may be ambiguity.
The next three sections describe how we derive accurate numerical estimates
of the first and second order operators at any vertex on an arbitrary mesh.
We fin;t restrict the averaging area to a family of special local surface patches
denoted AM. These regions will be contained within the I-ring neighborhood
of each vertex, with piecewise linear boundaries crossing the mesh edges at
their midpoints (Figures 2(b) and (c)). We show that this choice guaran-
tees correspondences between the continuous and the discrete case. We then
find the precise surface patch that optimizes the accuracy of our operators,
completing the operator derivation. These steps will be explained in detail
for the first operator, the mean curvature normal operator, K, and a more
direct derivation will be used for the Gaussian curvature operator "Q, the
two principal curvature operators "1 and "2, and the two principal direction
operators e1 and e2. All these operators take a vertex Xi and its I-ring ncigh-
borhood as input, and provide an estimate in the form of a simple formula
that we will frame for clarity.
We now provide a simple and accurate numerical approximation for both the
normal vector, and the mean curvature for surface meshes in 3D.
average will be computed, is chosen. Two main types of finite volumes are
common in practice, see Figure 2(b-c). In each case, their piecewise linear
boundaries connect the midpoints of the edges emanating from the center
vertex and a point within each adjacent triangle. For the point inside each
adjacent triangle, we can use either the barycenter or the circumcenter. The
surface area formed from using the barycenters is denoted ABarycenter while the
surface area using the circumcenters is recognized as the local Voronoi cell
and denoted Avorono;. In the general case when this point could be anywhere,
we will denote the surface area as AM.
We now wish to compute the integral of the mean curvature normal
over the area AM. Since the mean curvature normal operator, also known
as Laplace-Beltrami operator, is a generalization of the Laplacian from fiat
spaces to manifolds [4], we first compute the Laplacian of the surface with
respect to the conformal space parameters u and v. As in [7] and [22], we
use the current surface discretization as the conformal parameter space, that
is, for each triangle of the mesh, the triangle itself defines the local surface
metric. With such an induced metric, the Laplace-Beltrami operator simply
turns into a Laplacian .1u,vx = Xuu + Xvv [4]:
where aij and f3ij are the two angles opposite to the edge in the two triangles
sharing the edge (Xi,Xj) as depicted in Figure 3(a), and N 1 (i) is the set of
I-ring neighbor vertices of vertex i.
Note that this equation was already obtained by minimizing the Dirichlet
energy over a triangulation in [22]. Additionally, it is exactly the formula
established in [5] for the gradient of surface area for the entire I-ring neigh-
borhood. This confirms, in the discrete setting, the area minimization nature
of the mean curvature normal as derived by Lagrange. We can therefore ex-
press our previous result using the following general formula, valid for any
triangulation:
11M K(x)dA = \7 A I - dng • (6)
where AI_r;ng is the I-ring area around a vertex P, and \7 is the gradient with
respect to the (x, y, z) coordinates of P.
42 Mark Meyer, Mathieu Desbrun, Peter Schroder, and Alan H. Barr
Notice that the formula results in a zero value for any flat triangulation,
regardless of the shape or size of the triangles of the locally-flat (zero curva-
ture) mesh since the gradient of the area is zero for any locally fiat region.
Although we have found an expression for the integral of the mean curva-
ture normal independent of which of the two finite volume discrctizations is
used, one finite volume region must be chosen in order to provide an accurate
estimate of the spatial average. We show in the next section that Voronoi
cells provide provably tight error bounds under reasonable assumptions of
smoothness.
We now show that using Voronoi regions provides provably tight error bounds
for the discrete operators by comparing the local spatial average of mean
curvature with the actual pointwise value. Given a C2 surface tiled by small
patches Ai around n sample points Xi, we can define the error E created
by local averaging of the mean curvature normal compared to its pointwise
value at Xi as:
E = L, flIIK(x) - K(Xi)11 2
dA
:S L 11 C;llx - xil1
, [,4,
2 dA
where Ci is the Lipschitz constant of the Beltrami operator over the smooth
surface patch Ai, and Cma.x the maximum of the Lipschitz constants. The
Voronoi region of each sample point by definition minimizes Ilx - Xi I since
they contain the closest points to each sample, thus minimizing the bound
on the error E due to spatial averaging [3]. Furthermore, if we add an extra
assumption on the sampling rate with respect to the curvature such that
the Lipschitz constants from patch to patch vary slowly with a ratio E, we
can actually guarantee that the Voronoi cell borders are less than O( E) away
from the optimal borders. As this still holds in the limit for a triangle mesh,
we use the vertices of the mesh as sample points, and pick the Voronoi cells
of the vertices as associated finite-volume regions. This will guarantee op-
timized numerical estimates and, as we will see, determining these Voronoi
cells requires few extra computations.
,
,, ,,
(- - ,, ,
,,
,
Since the cotangent terms were already computed for Eq. (5), the Voronoi
area can be computed very efficiently. However , if there is an obtuse triangle
among the I-ring neighbors or among the triangles edge-adjacent to the I-ring
triangles , the Voronoi region either extends beyond the I-ring, or is truncated
compared to our area computation. In either case our derived formula no
longer stands.
The previous expression for the Voronoi finite-volume area does not hold in
the presence of obtm,e angles. However, the integral of the Laplace-Beltrami
operator given in equation (6) holds even for obtuse I-ring neighborhoods -
the only assumption used is that the finite-volume region goes through the
midpoint of t he edges. It is thus still valid even in obtuse triangulations.
Therefore, we could simply divide the integral evaluation by the barycenter
finite-volume area in lieu of t he Voronoi area for vertices near obtuse angles
to determine the spatial average value. We use a slightly more subtle area, to
guarantee a perfect tiling of our surface, and therefore, optimized accuracy
as each point on the surface is counted once and only once. We define a new
surface area for each vertex x , denoted A M ix e d: for each non-obtuse triangle, we
use the circumcenter point, and for each obtuse triangle, we use the midpoint
of the edge opposite to the obtuse angle. Algorithmically, this area around
a point x can be easily computed as detailed in Figure 4. Note that the
derivation for the integral of the mean curvature normal is still valid for
this mixed area since the boundaries of the area remain inside the I-ring
neighborhood and go through the midpoint of each edge. Moreover, these
44 Mark Meyer, Mathieu Desbrun, Peter Schroder, and Alan H. Barr
mixed areas tile the surface without overlapping. This new cell definition
is equivalent to a local adjustment of the diagonal mass matrix in a finite
element framework in order to ensure a correct evaluation. The error bounds
are not as tight when local angles are more than 1f /2, and therefore, numerical
experiments are expected to be worse in areas with obtuse triangles.
AMixed =0
For each triangle T from the I-ring neighborhood of x
If T is non-obtuse, I I Voronoi safe
II Add Voronoi formula (see Section 3.3)
AMixed+ = Voronoi region of x in T
Now that the mixed area is defined, we can express the mean curvature nor-
mal operator K defined in Section 2.1 using the following expression:
K(Xi) =
1
2AMixed
L (cot aij + cot (3ij) (Xi - Xj) (8)
jEN1(i)
From this expression, we can easily compute the mean curvature value
by taking half of the magnitude of this last expression. As for the normal
/'i,H
vector, we can just normalize the resulting vector K(Xi)' In the special (rare)
case of zero mean curvature (flat plane or local saddle point), we simply
average the I-ring face normal vectors to evaluate n appropriately.
It is interesting to notice that using the barycentric area as an averaging
region results in an operator very similar to the definition of the mean cur-
vature normal by Desbrun et al. [5], since ABarycenter is a third of the whole
I-ring area AI-ring used in their derivation - however, our new derivation uses
non-overlapping regions and is therefore more accurate. At this time, we are
not aware of a proof of convergence for this operator. However, our tests have
shown no divergence as we refine a mesh, as long as we do not degrade the
mesh quality (the triangles must not degenerate). We will give more precise
numerical results in Section 6.1 showing the improved quality of our new
estimate.
Discrete Differential-Geometry Operators for Triangulated 2-Manifolds 45
In this section, the Gaussian curvature KG for bivariate (2D) meshes embed-
ded in 3D is studied. We will demonstrate that a derivation similar to the
above is easily obtained.
Similar to what was done for the mean curvature normal operator, we first
need to find an exact value of the integral of the Gaussian curvature KG over
a finite-volume region on a piecewise linear surface. From Eq. (3), we could
compute the integral over an area AM as the associated spherical image area
(also called the image of the Gauss map). Instead, we use the Gauss-Bonnet
theorem [4,10,1] which proposes a very simple equality, valid over any surface
patch. Applied to our local finite-volume regions, the Gauss-Bonnet theorem
J1
simply states:
!AM
KG dA = 27r - Lj
Ej
where the Ej are the external angles of the boundary, as indicated in Fig-
ure 3(c). Note that this simplified form results from the fact that the integral
of geodesic curvature on the piece-wise linear boundaries is zero. If we apply
this expression to a Voronoi region, the external angles are zero across each
edge (since the boundary stays perpendicular to the edge), and the external
angle at a circumcenter is simply equal to ()j, the angle of the triangle at the
vertex P. Therefore, the integral of the Gaussian curvature (also called total
curvature) for non-obtuse triangulations is: 27r - L: j ()j. This result is still
valid for the mixed region and is proven using a similar geometric argument.
This result was already proven by Polthier and Schmies [24], who considered
the area of the image of the Gauss map for a vertex on a polyhedral surface.
Therefore, analogous to Eq. (6), we can now write for the I-ring neighborhood
of a vertex Xi:
J1 !AM
KGdA = 27r -
#f
L ()j
j=1
where ()j is the angle of the j-th face at the vertex Xi, and #f denotes the
number of faces around this vertex. Note again that this formula holds for
any surface patch AM within the I-ring neighborhood whose boundary crosses
the edges at their midpoint.
To estimate the local spatial average of the Gaussian curvature, we use the
same arguments as in 3.2 to claim that the Voronoi cell of each vertex is an
46 Mark Meyer, Mathieu Desbrun, Peter Schroder, and Alan H. Barr
appropriate local region to use for good error bounds. In practice, we use the
mixed area A Mixed to account for obtuse triangulations. Since t he mixed area
cells tile the whole surface without any overlap, we will satisfy the (continu-
ous) Gauss-Bonnet theorem: the integral of the discrete Gaussian curvature
over an entire sphere for example will be equal to 41f whatever the discretiza-
tion used since the sphere is a closed object of genus zero. This result ensures
a robust numerical behavior of our discrete operator. Our Gaussian curvature
discrete operator can thus be expressed as:
#f
""G(Xi) = (21f - 2)1j)/AMixed (9)
j= l
Notice that this operator will return zero for any fiat surface, as well as any
roof-shaped I-ring neighborhood, guaranteeing a satisfactory behavior for
trivial cases. Note also that convergence conditions (using fatness or straight-
ness) exist for this operator [8 , 26], proving that if the triangle mesh does not
degenerate, the approximation quality gets better as the mesh is refined . We
postpone numerical tests until Section 6.l.
We now wish to robustly determine the two principal curvatures, along with
their associated directions. Since the previous derivations give estimates of
both Gaussian and mean curvature, the only additional information that
must be sought are the principal directions since the principal curvatures
are, as we are about to see, easy to determine.
We have seen in Section 2.1 that the mean and Gaussian curvatures are easy
to express in terms of the two principal curvatures ""1 and ""2. Therefore , since
both ""H and ""G have been derived for triangulated surfaces , we can define
the discrete principal curvatures as:
Discrete Differential-Geometry Operators for Triangulated 2-Manifolds 47
Unlike the continuous case where .:1 i8 always positive, we must make
sure that 1'£'iI is always larger than 1',0 to avoid any numerical problems, and
thre8hold .:1 to zero if it is not the case (an extremely rare occurrence).
In order to determine the principal axes at a vertex, we will first show that
the mean curvature from our previous expression can be interpreted as a
quadrature of normal curvature samples:
1 1
I'£H(Xi) = "2 (2I'£H(xi)n) . n = "2 K (Xi) . n
4A
1
. L (cot Gij + cot (3ij) (Xi - Xi) . n
Mixed JENdi)
where we define:
N (Xi - Xj) . n
I'£i ..i = 2 I Xi - Xj 112 .
This I'£;:'i can be 8hown to be an estimate of the normal curvature in the direc-
tion of the edge XiXj' The radius R of the o8culating circle going through the
vertices Xi and Xj is easily found u8ing the mean curvature normal e8timate
as illustrated in Figure 9(a). Since we must have a right angle at the neighbor
vertex xi, we have (Xi - Xj) . (Xi - Xj - 2R n) = O. Thi8 implie8:
where the Wij = AM~xed [k(cot Qj + cot (3j ) Ilxi - xj112] sum to one for each i
on a non-obtuse triangulation.
This tensor will provide the normal curvature in any direction in the tan-
gent plane. Therefore, when we use the direction of the edges of the I-ring
neighborhood, we should find:
N
= ""i,j'
where di,j is the unit direction in the tangent plane of the edge XiXj' Since
we know the normal vector n to the tangent plane, this direction is calculated
using a simple projection onto the tangent plane:
E(a, b, c) = L
j
Wj ( d7,j B d i ,] - "'G f
Adding the two constraints a + b = 2"'H and ac - b2 = "'c, to ensure coher-
ent results, turns the minimization problem into a third degree polynomial
root-finding problem. Once the three coefficients of the matrix B are found,
we find the two principal axes el and e2 as the two (orthogonal) eigenvectors
of B. In practice, all our experiments have demonstrated that the non-linear
constraint on the determinant is not necessary (reducing the problem to a lin-
ear system). An example of these principal directions is shown in Figure 1 (b)
(Color Plate 23(b) on page 439).
Although we could actually determine the principal curvatures (and thus
the mean and gaussian curvaturm,) using an unconstrained least squares pro-
cedure, we use our operators to compute the curvatures and only use the
Discrete Differential-Geometry Operators for Triangulated 2-Manifolds 49
least squares for the principal directions as the curvature values computed
from the least squares are often less accurate in practice while the directions
are fairly robust. A plausible interpretation for the bad numerical properties
of a pure least squares approach is the hypothesis of elliptic curvature vari-
ation: although this is perfectly valid for smooth surfaces, this is somewhat
arbitrary for coarse, triangulated surfaces. It seems therefore more natural to
use our previous operators that rely on differential properties still valid on
discrete meshes.
to create surfaces of 1026, 4098 and 16386 points. In all cases, the average
percent error of our operators did not exceed 0.07% for mean curvature and
l.3% for gaussian curvature. The previous method had average errors of up
to l.8% for mean curvature and exceeding 10% in some instances for gaussian
curvature.
Finally, we tested the effects of irregularity on the operators. In irregular
areas of the surfaces (such as the area joining two regions of different sam-
pling rates), our operators performed with the same order of accuracy as in
the fairly regular regions (less than 0.2% average error for mean curvature
and below l.8% average error for gaussian curvature in regions of mild irreg-
ularity). The accuracy of our operators decreases as the irregularity (angle
and edge length dispersion) increases, but, in practice, the rate at which the
error increase8 is low.
Producing high quality meshes is not an easy task. Checking if a given mesh
is appropriately smooth requires a long inspection with directional or point
light sources to detect any visually unpleasant discontinuities on the surface.
Curvature plots (see Figure 5 and Color Plate 24 on page 439), using false
color to texture the mesh according to the different curvatures, can immedi-
ately show problems or potential problems since they will reveal the variation
of curvatures in an obviou8 way. Figure 6 demonstrates that even if a surface
(obtained by a subdivi8ion scheme) looks very smooth, a look at the mean
curvature map reveals flaws such as discontinuities in the variation of curva-
ture across the surface. Conversely, curvature plots can reveal unsuspected
details on existing scanned meshes, like the veins on the horse.
If the quality of a mesh is not sufficient (due to noise resulting from inaccurate
scans for instance), denoising and enhancements can be performed using our
discrete operators.
a rather time-consuming task for big meshes, and it will leave ragged edges
on the vertices forced to a low smoothing amount.
1
1 if 1/\;11 :S T and 1/\;21 :S T
o if 1/\;11> T and 1/\;21 > T and /\;1/\;2> 0
Wi = /\;I!/\;H if 1K:11 = min(IK:11, 1K:21, IK:HI)
K:2/K:H if 1K:21 = min(IK:11, 1K:21, IK:HI)
1 if IK:HI = min(IK:11, 1K:21, IK:HI)
(also using implicit curvature flow) has been added to help straighten the
edges.
7 Discrete Operators in nD
Up to this point , we defined and used our geometric operators for bivariate
(2D) surfaces embedded in 3D. However, since they were derived in a di-
mensionless manner, our operators generalize easily to any embedding space
dimensionality. The extension of our geometric operators to higher dimen-
sional embedding spaces allows us to use the same smoothing technology
used on meshes for vector fields or tensor images. To demonstrate the prac-
tical accuracy of our operator, we performed different smoothings on higher
dimensional spaces. For instance, Figure 8 demonstrates how our operators
can smooth a vector field , with or without preservation of features. As shown,
anisotropic smoothing can indeed preserve significant discontinuities such as
the boundary between the straight flow and the vortex, just as we preserved
edges during mesh smoothing in 3D.
----------------
-_
----- -------
...... . .- .- , ,---
, , ,,----..
......... \ , ; • , t, ,,_-----.
_-
...... " " . ' 1"", _ _
-_---------------
- ..... \ \ 1 · · ' , / .... _ -
-", ....
---_ _-
... - " , / '
................ , .... -",,"'-'---
...... .............
8 Conclusion
Acknowledgements This work waD Dupported in part by the STC for Com-
puter Graphics and Scientific Visualization (ASC-89-20219), IMSC - an
NSF Engineering Research Center (EEC-9529152), an NSF CAREER award
(CCR-0133983), NSF (DMS-9874082, ACI-9721349, DMS-9872890, and ACI-
9982273), the DOE (W-7405-ENG-48/B341492), Intel, AliaD~Wavefront,
Pixar, Microsoft, and the Packard Foundation.
Discrete DifFerential-Geometry Operators for Triangulated 2-Manifolds 55
References
1. A. D. Aleksandrov and V. A. Zalgaller. Intrinsic Geornetr'Y of Surfaces. AMS,
Rhode Island, USA, 1967.
2. U. Clarenz, U. Diewald, and M. Rumpf. Anisotropic Geometric Diffusion in
Surface Processing. In IEEE Vistwlization, pages 397 -405, 2000.
3. Qiang Du, Vance Faber, and Max Gunzburger. Centroidal Voronoi Tessela-
tions: Applications and Algorithms. SIAM Review, 41(4):637-676, 1999.
4. Ulrich Dierkes, Stefan Hildebrandt, Albrecht Kiister, and Ortwin \Vohlrab.
Minimal Snrfaces (I). Springer-Verlag, 1992.
5. Mathieu Desbrun, Mark Meyer, Peter Schroder, and Alan H. Barr. Implicit
Fairing of Irregular Meshes using Diffusion and Curvature Flow. In SIG-
GRAPH 99 Conference Proceedings, pages 317-·324, 1999.
6. Mathieu Desbrun, Mark Meyer, Peter Schroder, and Alan H. Barr. Anisotropic
Feature-Preserving Denoising of Height Fields and Images. In Graphics Inter-
face'2000 Conference Proceedings, pages 145-152, 2000.
7. G. Dziuk. An Algorithm for Evolutionary Surfaces. Nurner. Math., 58, 1991.
8. J. Fu. Convergence of Curvatures in Secant Approximations. Jonrnal of Dif-
ferential Geometry, :37:177-190, 1993.
9. Michael Garland and Paul S. Heckbcrt. Surface Simplification Using Quadric
Error Metrics. In SIGGRAPH 97 Conference Proceedings, pages 209 -216,
August 1997.
10. Alfred Gray. Modem D'ifferential Geometry of Curves and Snrfaces with Math-
ematica. CRC Press, 1998.
11. Igor Guskov, \Vim Sweldens, and Peter Schroder. Multiresolution Signal Pro-
cessing for Meshes. Tn SIGGRAPH 99 Conference Proceedings, pages 325-334,
1999.
12. Bernd Hamann. Curvature Approximation for Triangulated Surfaces. In
G. Farin et al., editor, Geometric Modelling, pages 139-15:3. Springer Verlag,
1993.
13. Paul S. Heckbert and Michael Garland. Optimal Triangulation and Quadric-
Based Surface Simplification. Journal of Computational Geometry: Theory
and Applications, November 1999.
14. J. M. Hyman and M. Shashkov. Natural Discretizations for the Divergence,
Gradient and Curl on Logically Rectangular Grids. Applied Nnmerical Math-
ematics, 25:413-442, 1997.
15. J. M. Hyman, M. Shashkov, and S. Steinberg. The numerical solution of
diffusion problems in strongly heterogenous non-isotropic materials. Journal
of Compntational Physics, 132:130 148, 1997.
16. Nelson Max. \Veights for Computing Vertex Normals from Facet Normals.
Journal of Graphics Tools. 4(2):1-6, 1999.
17. Mark Meyer. Differential Operators for Computer Graphics. Ph.D. Thesis,
Caltech, December 2002.
18. J.M. Morvan. On Generalized Curvatures. Pr'eprint, 2001.
19. Henry P. Moreton and Carlo H. Sequin. Functional Minimization for Fair
Surface Design. In SIGGRAPH 92 Conference Proceedings, pages 167-176,
July 1992.
20. R. Malladi and J.A. Sethian. Image Processing: Flows under Min/Max Curva-
ture and Mean Curvature. Graphical Models and Image Processing, 58(2):127-
141, March 1996.
56 Mark Meyer, Mathieu Desbrun, Peter Schroder, and Alan H. Barr
21. P. Perona and .I. Malik. Scale-space and Edge Detection Using Anisotropic
Diffusion. IEEE Transactions on Patter'n Analysis and Machine Intelligence,
12(7):629-639, July 1990,
22, Ulrich Pinkall and Konrad Polthier. Computing Discrete Minimal Surfaces
and Their Conjugates. Experimental Mathematics, 2(1):15-36, 1993.
23. T. PreuBer and M. Rumpf. Anisotropic Nonlinear Diffusion in Flow Visual-
ization. In IEEE Visual'ization, pages 323-332, 1999.
24. Konrad Polthier and Markus Schmies. Straightest Geodesics on Polyhedral
Surfaces. In H.C. Hege and K. Polthier, editors, Mathematical Visualization.
Springer Verlag, 1998.
25. Gabriel Taubin. Estimating the Tensor of Curvature of a Surface from a
Polyhedral Approximation. In Pmc. 5th Intl. Conf. on Computer Vision
(ICCV'95), pages 902-907, June 1995.
26, 13, Thibert and J.M. Morvan, Approximations of A Smooth Surface with a
Triangulated Mesh. Prepr'int, 2002.
27. Grit Thurmer and Charles Wuthrich. Computing Vertex Normals from Polyg-
onal Facets. Journal of Graphics Tools, 3(1):43-46, 1998.
Appendix
In this section, we derive the integral of the mean curvature normal over a
triangulated domain. We begin by computing the integral of the Laplacian
of the surface point x with respect to the conformal parameter space. Using
Gauss's theorem, we call turll the integral of a Laplacian over a region into
a line integral over the boundary of the region:
J.1~Ir
e .1 u ,v x du dv = r
lOAM
V'u,vx, n U,V dl, (13)
where the subscript u, v indicates that the operator or vector must be with
respect to the parameter space.
Since we ai:)sumed our surface to be piecewise linear, its gradient V'u.vx is
constant over each triangle of the mesh. Ai:) a consequence, whatever the type
of finite-volume discretization we use, the integral of the normal vector along
the border aA~1 within a triangle will result in the same expression since
the border of both regions passes through the edge midpoints as sketched in
Figure 9(b). Inside a triangle T = (Xi,Xj,Xk), we can write:
·c
XJ
(a) (b)
Fig. 9. (a) Osculating circle for edge XiXj . (b) The integration of the surface
gradient dotted with the norm.al of the region contour does not depend on the finite
volum.e discretization used.
Using the fact that the gradients of the 3 basis function8 of any triangle T
8um to zero and rearranging terms, the gradient of X over the triangle can be
expressed as 'Vu,vx = 21T
[(Xj-Xi) ( [Xi - Xk]t,v)T +(Xk-Xi) ([Xj - Xi]t,v)T],
where T denotes the transpose. Note that 'Vu ,vx is an n x 2 matrix - n for
the dimension of the embedding of X and 2 for the (11., v) space. The previous
integral can then be rewritten as:
r
J8An T
'Vu ,vx , nu ,v dl = Al [([Xi - Xk]' [Xj - Xk])u,v (Xj - Xi)
4 T
+([Xj - Xi] . [Xj - Xk])u,v (Xk - x;l].
Moreover, the area AT is proportional to the sine of any angle of the triangle.
Therefore, we can use the cotangent of the 2 angles opposite to Xi to simplify
the parameter space coefficients and write:
Combining the previous equation with Eq. (4) and (13), using the current
surface discretization as the conformal parameter space, and reorganizing
terms by edge contribution, we obtain:
11 K(x)dA=~
~M
L
JENdi)
(cotaij+Cot(3ij) (Xi-Xj)
where aij and (3ij are the two angles oppo8itc to the edge in the two triangles
sharing the edge (Xj,Xi) as depicted in Figure 3(a).