Among the goals of this thesis is to devise an algorithm that automatically detects parts of a discretized surface, originating from a simulation workflow, that benefits from a higher resolution of the simulation domain. This requires
mathematically analyzing the surfaces so that the regions of interest can be efficiently detected.
In chapter 2 three different surface representations and how to obtain one of their basic geometric properties (i.e., the surface normal)
have been discussed. Surfaces have more geometric properties than just the surface normal vector (e.g., the tangent plane). Another property of orientable surfaces, which will be discussed later, is the surface curvature. The surface
curvature describes how the direction of the normal vector changes when it is moved from one point on the surface to a neighboring point in an infinitesimal area around the point. Thus, the surface curvature can be used to classify
parts of a surface.
In this chapter the mathematical concept of surface curvature on continuous surfaces is introduced. This is followed by a discussion on how these concepts can be discretized for the previously discussed surface representations. For
implicit surfaces several methods for calculating surface curvatures are reviewed. The last section in this chapter discusses how discrete surfaces can be analyzed without prior knowledge of surface curvatures.
3.1 Curvature of Continuous Surfaces
The constructions and definitions presented within this section are extracted and simplified from [25]. Only the results needed for further investigations
in this work are discussed and proofs are omitted. The goal of this section is to give a rigorous understanding of how the curvatures of a continuous surface are constructed and which properties of the surface they express.
3.1.1 2D Surface (Curves)
First 2D surfaces are discussed. In differential geometry 2D surfaces are referred to as parametrized curves and are defined as follows [25]:
3.1.1 Definition (Parametrized Curve) Let be an open interval then the differentiable map is called a parametrized
curve.
For example consider the map , the parametrized curve created by this expression is shown in Figure 3.1.
Figure 3.1: Illustration of a parametrized curve (semicubical parabola) with a singular point in .
This curve has a point for which , these points are called singular points.
For the further investigations in this section it is important that a parametrized curve does not have any singular points. Thus, the definition of a parametrized curve is extended to a regular parametrized
curve.
3.1.2 Definition (Regular Parametrized Curve) Let be a parametrized curve. If for all ,
then is called a regular parametrized curve.
Excluding curves with singular points allows for the definition of the length of a curve. The arc length of a regular parametrized curve is defined as follows:
3.1.3 Definition (Arc Length) Let be a regular parametrized curve. Then, for a given the arc length of the
curve is defined as
A regular curve that fulfills for all is called a curve parametrized by arc length. For such curves the arc length is given by .
The Tangent Line and Curvature of a Curve Parametrized by Arc Length
In each point on a curve parametrized by arc length there exists a straight line, defined by which has a length of . This vector passes through the point
and is called the tangent line (). In singular points it is not possible to define the tangent line and so, it is not possible to discuss geometric properties of such curves.
Consider a curve parametrized by arc length which in a point fulfills , in this case a unit vector is well-defined by . Furthermore, differentiating yields , which proves that
and are orthogonal. Therefore, the vector is normal to and is called the normal vector in .
Since has length , the norm of the second derivative measures the rate of change of the angles of the neighboring tangent planes at the tangent plane in .
In other words the curve parametrized by arc length pulls away from the tangent line in at a rate determined by .
3.1.4 Definition (Curvature of a Curve Parametrized by Arc Length) Let be a curve parametrized by arc length and
. Then is called the curvature of at .
A straight line with constant vectors has a curvature of . Inversely if is integrated the curve has
to be a straight line. Thus, the curvature of a curve can be used as a metric to distinguish between parts of a curve that are flat and parts that are not, e.g., curved.
Furthermore, it can be shown that each regular parametrized curve can be expressed as a curve parametrized by arc length [25]. Thus, the concept of
the curvature can be expanded to any regular parametrized curve. The curvature of the regular parametrized curve is given by the curvature of the reparametrized (i.e., parametrized by arc length) curve .
3.1.2 3D Surface
In this section a similar construction to the one presented in the previous section is given for 3D surfaces. However, defining geometric properties like the tangent plane or the curvature for 3D surfaces (which are also referred to as
regular surfaces) requires additional considerations. The first major difference is that a regular surface is not defined as a function but as a set [25].
3.1.5 Definition (Regular surface) A subset is called a regular surface, if for each point there exists an open set , a neighborhood , and a map
such that:
1. with is differentiable.
2. is a homeomorphism:
exists and is continuous.
3. For each , the differential is one to one.
To further elaborate the meaning of Definition 3.1.5 consider Figure 3.2.
Figure 3.2: Illustration of a regular surface. The local parametrization deforms the 2D set into a 3D set around a point on a regular surface .
A regular surface is a subset of the plane that gets deformed in . The deformation is handled in such a way that the resulting surface has no sharp points, edges or self-intersections. This definition allows for the
definition of a tangent plane in each point on the surface and ensures that the surface is smooth enough to apply methods from calculus. The map is called a parametrization of the surface . A
surface may have several parametrizations, however, certain properties of the surface do not depend on the parametrization but only on the set .
Definition 3.1.5 is a technical definition of a regular surface, which is useful for the theoretical investigation of surfaces and their properties. In this
work, the geometric properties of discretized surfaces are investigated, thus, two less technical descriptions of regular surfaces are given which result from Definition 3.1.5.
3.1.6 Proposition If is a differentiable function and fulfills , then is a regular surface in .
Proposition 3.1.6 can be interpreted in a more descriptive way. The set of points in that fulfill an implicitly defined
function , which has a non-vanishing gradient in each point of the image, describes a regular surface. Consider, for example, the following function , all points except for
have a non-vanishing gradient, however, is not in the preimage of , thus it is a regular surface (i.e., a sphere with radius ).
3.1.7 Proposition Let be a regular surface and a point on the surface, then there exists a neighborhood of in in such a way that is the graph of a differentiable function in one of the forms:
, , .
Proposition 3.1.7 guarantees that in a neighborhood around each point on a regular surface the surface can be expressed as the graph
of a differentiable function.
The Tangent Plane and Curvatures of a Regular Surface
Consider a regular surface and a point on the surface , and a regular parametrized curve with . Since
is a regular parametrized curve the tangent line exists. Let be a parametrization of and let . Then
the set of all tangent lines of regular parametrized curves on the surface passing through span a 2D subspace. The plane , that passes through , does not depend on the parametrization and is called the tangent plane to denoted by () at the point . The basis vectors that span are
written as and and are determined by the parametrization. By choosing a parametrization , a unit normal vector in the point can
be defined as follows
which is called the normal vector of the surface in (see Figure 3.3).
Figure 3.3: Illustration of the tangent plane , the corresponding basis vectors , and two parametrized curves in the point
on a regular surface.
It is not always possible to continuously define a unique normal vector on every point of a regular surface, see, for example, the Möbius strip (see Figure 3.4).
Figure 3.4: Illustration of a Möbius strip, a non-orientable surface. The Möbius strip is non-orientable since the choice of a normal vector in the point is not unique. The normal vector
can be traced along the red line until it ends up in the point again, but then it points in the opposite direction (e.g., ). This holds true for all
points on the Möbius strip.
When a normal vector and a closed curve that traces over the Möbius strip is chosen, and the normal is moved along this curve it ends up in the same point, however, the normal now points in the opposite direction. This
observation can also be described with the help of parametrizations. On each point of the Möbius strip there exist different parametrizations of the surface, these parametrizations describe the same tangent plane.
However, the normal vectors defined by the parametrizations point in opposite directions (see Figure 3.4) and it is not possible to continuously change from one parametrization to
the other.
For the following discussions it is essential that the discussed surfaces allow to continuously define a unique normal vector in each surface point. To that end a parametrization of a neighborhood of each point on a regular surface is
fixed, the set of all these parametrizations is called a family of coordinate neighborhood. If this family of coordinate neighborhood describes a positive movement around each point of the surface it is called an
orientation of the surface which is formally defined as follows:
3.1.8 Definition (Orientable Surface) A regular surface is called orientable if there exists a family of coordinate neighborhoods such that for each point that belongs to two neighborhoods of the family, the change of the parametrization has a positive Jacobian (i.e., the determinant of the Jacobian matrix).
Otherwise, the surface is called non-orientable.
Intuitively, Definition 3.1.8 expresses that on an orientable surface the change in the direction of the normal vector is continuous when
switching between two neighboring parametrizations.
If a regular surface is defined by a differentiable function as follows and then is orientable.
3.1.9 Definition (Orientation of a Surface) Let be a regular orientable surface then a differentiable mapping of an open set that associates
each point with the unit normal vector is called an orientation of on .
It should be mentioned that an orientation can locally be defined on every regular surface, however, orientability is a global property that concerns the entire surface.
To gain further insights into the geometry of a surface the orientation (i.e., ) defined on the entire surface is further investigated.
3.1.10 Definition (Gauss Map) Let be a regular surface with an orientation defined on the entire surface . Then maps all normal vectors on into the unit sphere
and is called the Gauss map.
Figure 3.5 visualizes how the Gauss map operates on the hyperbolic paraboloid. Another easily visualized example of the Gauss map is the image of
the torus which simply is the entire surface of the unit sphere.
Figure 3.5: Illustration of the Gauss map of the hyperbolic paraboloid. All normal vectors on the surface are mapped into the unit sphere. The image of the Gauss map of the hyperbolic paraboloid is the hemisphere. The
colors on both surfaces correspond to their respective normal vectors.
The derivative of the Gauss map in a point maps the tangent plane into itself. Now consider a curve in with , when the normal vector of the surface is restricted to the curve the map results in a tangent vector in . So measures how fast pulls away from the surface in the curve . This is a
similar construction to the one discussed for regular parametrized curves with the difference that the curvature is measured by a linear map and not by the norm of a vector. The construction is independent of the chosen regular
parametrized curve, so the following definition can be given:
3.1.11 Definition (Normal Curvature) Let be an orientable surface, a point on the surface, a regular parametrized curve passing through with curvature
, and . Then the number is called the
normal curvature of in .
This definition results in a curvature value dependent on the chosen curve on the surface, which leads to the question if these curves can be classified in some way. To get further insights into this question the Gauss map of a surface is further investigated. The negative differential of the Gauss map (sometimes referred to as the Weingarten map or shape operator) is a self-adjoint linear operator
(). Thus, its Eigenvectors are orthogonal, and the Eigenvalues are real [25]. The matrix is also known as the second fundamental
form of the surface . Recall, that measures the normal curvature for each regular parametrized curve passing through . Since the map is a self-adjoint linear operator the maximum and minimum normal curvatures in each point can be calculated, which leads to the following definition:
3.1.12 Definition (Principal Curvatures) Let be an orientable surface, and a point on the surface . Then, the maximum normal curvature and the minimum normal
curvature are called the principal curvatures of the surface in the point .
The corresponding Eigenvectors to the principal curvatures are called the principal directions of in . Since the map is a linear map the trace and the determinant of the map can be
calculated.
3.1.13 Definition (Gaussian Curvature) Let be an orientable surface, be a point on the surface, and the Gauss map
in , then
is called the Gaussian curvature of in the point .
3.1.14 Definition (Mean Curvature) Let be an orientable surface, be a point on the surface, and the Gauss map in
, then
is called the mean curvature of in the point .
The mean and Gaussian curvature are used to define two special classes of surfaces. Surfaces with a constant Gaussian curvature of are called developable surfaces, these surfaces can be "rolled" into the plane, or in
other words folded out of paper. A cylinder is an example of a developable surface and the sphere is an example of a non-developable surface.
Surfaces with a constant mean curvature of are called minimal surfaces, if these surfaces are bounded they minimize the Dirichlet energy in each point [65]. The plane is a trivial example of a minimal surface, where an example for a non-trivial minimal surface is the helicoid. Minimal surfaces play an
important role in the remainder of this work.
Until this point the curvatures of a surface have been derived from the definition of the Gauss map without any explicit reference to a local coordinate system (i.e., a parametrization). For the calculation of the surface curvatures of
discrete surfaces a description of the Gauss map in a local coordinate system is required and is given by [25]
with
(see Equation 3.2) is also referred to as the first fundamental form. The mean and Gaussian curvature can thus be
expressed in any basis as
where stands for the adjugate matrix.
Some methods of calculating the curvatures of discretized surfaces further down in this chapter only calculate the mean and the Gaussian curvature. The principal curvatures can be calculated from the mean and Gaussian curvature
by solving the following equation
3.2 Curvature Calculation for Point Clouds
When estimating the surface curvatures of a point cloud similar obstacles, such as the approximation of the surface normal discussed in Section 2.1.1, have
to be overcome. Since there is no information about the spatial coherence of the points in a point cloud, a suitable neighborhood has to be estimated first. After a suitable neighborhood has been identified, recall
Proposition 3.1.7, which states that in a local neighborhood a surface can be expressed by a differentiable function , which is also
called the height function [66]. The goal now is to estimate with the points in the previously estimated neighborhood.
can be expressed by a Taylor series of order
is called a jet of order or an -jet. To obtain an -jet of the height function defined by the points in a neighborhood around a point it has to be approximated. The
-jet is approximated in the least square sense which leads to the following optimization problem
This optimization problem results in a vector that holds the first coefficients of the Taylor polynomial associated with the -jet.
To calculate the curvatures of a surface requires at least a -jet. The coefficients of the Taylor polynomial can then be used to calculate the Weingarten map (see Equation 3.2) with [66]
The here presented discussion on 3D surfaces can be similarly adapted for 2D surfaces [66].
3.3 Curvature Calculation for Surface Meshes
Estimating the curvatures of a 3D surface mesh requires less computational effort than for point clouds, since the neighborhood of a vertex and information about the geometry is already present in the discretization. The general
idea for calculating the curvatures of a surface mesh is to associate an infinitesimal area around a vertex with the value of an operator, further referred to as spatial averaging. Two different operators are required to
calculate the Gaussian and mean curvatures. When the area around a vertex converges towards zero the value of the quotient between these operators and the area converges towards the desired curvature value [67]. Thus, first an appropriate area around each vertex on a surface mesh has to be determined. An appropriate area around a given vertex is given by
the so-called Voronoi region [67]. Furthermore, each Voronoi cell (i.e., the Voronoi area each triangle contributes to the Voronoi
region) minimizes the error introduced by the spatial averaging and the discretization [68].
Before the calculation of the Voronoi region is presented another concept has to be introduced. The set of all vertices incident to a vertex is referred to as the 1-ring neighborhood of () (see Figure 3.6a).
(a) All vertices in the 1-ring neighborhood of the vertex of an exemplary triangulation.
(b) Voronoi region formula illustration.
Figure 3.6: Illustration of the neighborhood of a vertex.
Thus, the Voronoi region of a vertex in a triangle mesh is calculated as follows
see Figure 3.6b. This definition only holds for triangle meshes with non-obtuse triangles, which can in general not be guaranteed. The
operators discussed further down in this section also result in valid curvature values for 1-ring neighborhoods which consist only of obtuse triangles. Therefore, the calculation of the area has to be adapted (see Algorithm 1) [67]. The algorithm checks each
triangle in the 1-ring neighborhood, if a triangle is obtuse a fraction of its area is added to , otherwise the area of the Voronoi cell is added. denotes the surface area of the mixed
region around a vertex, the set of points making up the mixed region is referred to as .
Algorithm 1:Calculation of the mixed area of the 1-ring neighborhood of a vertex
().
Mean Curvature
As previously hinted, surfaces with a constant mean curvature of describe a special class of surfaces: minimal surfaces. Minimal surfaces minimize the surface area of a surface, which lead to an ample body of
literature [69, 70]. One of the investigated operators is the mean curvature
normal operator which establishes a direct relation between the mean curvature flow and the minimization of the surface area [71]
where stands for the gradient, and for the area around the point . The mean curvature normal operator, also known as the Laplace-Beltrami
operator, is defined as follows:
3.3.15 Definition (Mean Curvature Normal Operator) Let be an orientable surface and a point on , further let be the normal vector and the mean curvature in that point. Then the mean curvature normal operator is defined as
The integral of the Laplace-Beltrami operator over the area in a vertex on a surface mesh can be discretized as follows [67]
After inserting the discretized value of the Laplace-Beltrami operator and into Equation 3.10. The mean curvature
of a vertex on a surface mesh can be expressed as
Gaussian Curvature
The Gaussian curvature, like the mean curvature, can also be expressed as a fraction of an infinitesimal area around a point as follows [72]
To elaborate the meaning of , recall the definition of the Gauss map , it maps all normal vectors from a surface into the unit sphere. Consider a small surface area around a point
on an orientable surface, then the image of that area under describes a small area on the surface of the unit sphere (e.g., ). Instead of directly calculating the integral
over the image of the Gauss map the Gauss-Bonnet theorem is used [67]
This is a simplified version of the theorem since the surface area of the sphere is investigated which has a geodesic curvature of [25]. The
stand for the external angles of the boundary of the Voronoi region. For Voronoi regions it is easy to see that the angle at the vertex is , because both
edges of the Voronoi cell are perpendicular to the edges of the triangle and, therefore, (see Figure 3.7).
Thus, the Gaussian curvature of a vertex on a surface mesh can be expressed as
where stands for the number of all triangles in .
Figure 3.7: Angles in the 1-ring neighborhood required for the calculation of the Gaussian curvature.
3.4 Curvature Calculation for Implicit Surfaces
The computationally least expensive way to estimate the surface curvatures of a discrete surface considered in this work is the estimation for implicit surfaces, since, derivatives can be approximated directly from the discretization.
In this section three different approaches of calculating the surface curvatures of an implicitly defined surface are presented: The general formula for implicit surfaces, mean curvature estimation by calculating the variation of the
normal vector, and mean curvature estimation through the shape operator. These three approaches are further analyzed in Chapter 5.
3.4.1 General Formula
The goal is to express Equations 3.4 and 3.5 with the
derivatives of an implicit function . This is achieved in the following way, the determinants and traces are transformed such that they are expressed with respect to a local parametrized and the normal
vector defined by the chosen parametrization [73]
Afterwards, the terms of the above equations are transformed such that they are expressed as the derivatives of the implicit function. This is achieved with the help of matrix identities, which transform the above expressions
into [73]
where stands for the Hessian matrix of . Furthermore, the mean curvature of an implicit surface can be expressed as
which can be seen by expanding Equation 3.16 and Equation 3.17 and comparing the resulting terms.
Now that an expression for the curvatures of an implicit surface is available it has to be discussed how these formulas can be used on discretized implicit surfaces. Considering a discretized implicit surface as defined in
Section 2.3 (e.g., a level-set function), the derivatives of a level-set function can be approximated by central differences as follows
where stands for the -value of the level-set function at the grid point , if the subscript indices are omitted it is assumed that they are . Using these approximations and an
expanded form of Equation 3.16, the discretized mean curvature of a level-set function can be approximated as follows
This method of calculating the mean curvature will be referred to as the General Formula method. The Gaussian curvature can be calculated similarly by using an expanded form of Equation 3.15
Calculating the Gaussian curvature requires the same derivatives as calculating the mean curvature.
The finite difference approximations used for calculating the surface curvatures require a certain amount of grid points to be calculated. The set of all grid points required for the calculation of a set of finite differences is referred to
as a finite difference stencil, or just stencil (). A finite difference stencil is always considered with respect to the central grid point . Two finite difference stencils are
of particular importance for this work, the point star stencil (), and the point plane stencil (). Figure 3.8 shows an illustration of these stencils. Calculating the surface curvature with the General Formula requires a plane stencil.
Lastly it should be mentioned that the maximal curvature a level-set function can describe is bound by [15], since the smallest circle
radius which can be represented with a given resolution is .
3.4.2 Shape Operator
Recalling Equation 3.17, the formula states that the mean curvature of an implicit surface can be expressed as the gradient of the normal
vector. This expression can be expanded and leads to the following expression [75]
where stands for the Identity matrix.
Assuming that the level-set function fulfills the Eikonal equation (see Equation 2.8) with , then the term
can be ignored. The matrix projects onto the tangent plane of the implicit surface. Restricting to the tangent plane shows that it is symmetric [75]. Thus, there exists an orthonormal basis in of the tangent plane, this basis can be expanded to an
orthonormal basis in as follows . When the gradient of the normal vector is expressed in this basis it results in the following matrix
Here, and stand for the principal curvatures with the principal directions and , and stand for the so-called flow line
curvatures [75]. So the mean curvature of the surface can be expressed as . Furthermore, the trace
of a matrix is independent of the chosen basis, thus the mean curvature of a level-set function with can be expressed as
This method is referred to as the Shape Operator method. In Section 4.1.2 a method is discussed that describes how
a level-set function can be constructed that fulfills . Calculating the mean curvature of the zero level-set using the Shape Operator method requires a star stencil . It should be
mentioned that the quality of the mean curvature calculated with this method on a discretized surface is highly dependent on the quality of the discretization, which is discussed further in Section 5.1.3.
3.4.3 Variation of Normal
The third method calculates the mean curvature of the level-set function by again using Equation 3.17 which is approximated through the
Euler-Lagrange derivative [76, 77]. In addition to the
first-order central differences, this approximation requires the first-order forward and backward differences which can be approximated by
In turn, the mean curvature can be approximated as [77]
where is defined as
To calculate all the required finite differences a plane stencil is required, this method is referred to as the Variation of Normal method. This method only calculates the mean curvature, thus, the Gaussian
curvature has to be estimated separately by using Equation 3.22.
3.4.4 Curvature of 2D Implicit Surfaces (Curves)
An analogous construction to the one presented in Section 3.4.1 can be done for regular curves (i.e., 2D surfaces) [73]. Recall that regular curves only have one type of curvature which can be approximated for a 2D level-set function with the formula
3.5 Intuitive Approach to Surface Classification
When considering the construction of the normal curvature presented in Section 3.1.2 one can see that the normal curvatures are defined
through the curvature of a parametrized curve and the cosine of the angle between the surface normal and the normal of the considered parametrized curve. It is tempting to drop the formal mathematics behind curvature
calculation and try to directly use the angle between the normal vectors of surface points in a neighborhood on a discretized surface for surface classification. However, this approach has several drawbacks which are discussed in the
remainder of this section. The most striking drawback is, that this approach can only estimate angles with points of the discretization without any knowledge of the underlying parametrization of the surface.
Point Clouds
Consider a point cloud and a neighborhood of a point . The relative spatial position of the points in the neighborhood with respect to the investigated point is not
known. So, it is possible that two points in the neighborhood describe the same curve on the surface and that one point is farther away from . In this scenario it is not known which of the two points should be
chosen for the classification of the surface which can lead to wrong classifications. Therefore, this approach is not suited for point clouds.
Surface Meshes
The triangles of a surface mesh are flat, thus, they have a mean and Gaussian curvature of 0. A similar argument can be used for edges, since the surface can only bend in one direction over an edge. Consequently, using the angle
between normal vectors can of course only be used on vertices on a surface mesh, but there is no straightforward way to calculate the surface normal of a vertex. Which again, as with point clouds, makes this approach unsuited for
surface meshes.
Level-Set Functions (Implicit Surfaces)
Finally, considering level-set function, some merit can be found in applying the normal vector angle approach. All points on a regular grid have the same distance from each other, so one could check if the points that lie in a
box stencil (see Figure 3.9) are surface points (i.e., the level-set function changes sign from the point to this
neighboring point). However, depending on the position of the zero level-set more points in the stencil are required, i.e., in 2D and in 3D, which is a lot more than calculating the derivatives for curvature calculation.
Further drawbacks of this method on level-set functions are discussed in Section 5.1.4.
Figure 3.9: 3D box stencil () required for normal based feature detection on implicit surfaces.