Figure 11 shows the result of a deformation applied to the bunny. Three points are displaced .... [22] Greg Leibon and David Letscher. Delaunay triangulations.
A local coordinate system on a surface Jean-Daniel Boissonnat Julia Flototto ¨ INRIA 2004 Route des Lucioles, BP 93 06902 Sophia-Antipolis, France
points is one way to respond to this demand. However, it might be unnecessary and also too costly to establish a global approximation of the surface. Differently, our method defines, for any point on a sampled surface, a set of coordinates associated with some neighboring sample points. If the sampling is sufficiently dense, this coordinate system is provably local on the surface and has good continuity properties. Moreover, it can be computed efficiently because locality allows efficient filtering methods. We do not impose any restriction on the genus of the surface, the number of connected components, nor any other global features of the surface. Uniform sampling is neither required, and we allow the sampling density to be related to the local curvature of the surface.
ABSTRACT In this paper, we define a coordinate system on a smooth surface associated to a set of sample points from the surface. This problem is well understood if the domain of the coordinate system is restricted to the convex hull of the sample set. Notably, Sibson proposed the so-called natural neighbor coordinates. Boissonnat and Cazals show that if the point set is taken from a smooth surface, the natural neighbor coordinates have nice properties when the sampling density of the surface tends to infinity. We suggest a system of coordinates that is defined everywhere on the surface, is continuous, and is local on the surface,even if the sampling density is finite. Moreover, it is inherently -dimensional while the previous systems are -dimensional. No assumption is made about the ordering, the connectivity or topology of the sample points nor of the surface. We illustrate our results with an application to interpolation over a surface.
1.1 Related Work In this section, we describe how our work is related to previous work. It is divided in two parts: first, we outline the work on natural neighbor coordinate systems and, second, we give an introduction to scattered data interpolation on a surface, which is the application we develop at the end of the paper.
General Terms Algorithms, Design, Theory
1.1.1 Natural neighbor coordinate systems Natural neighbor interpolation has been introduced by Sibson [26] to interpolate multivariate scattered data. Given a set of points
, the natural neighbor coordinate system as
sociated to is defined from the Voronoi diagram of . Various papers ([26], [17], [24], [11],[21]) show that it satisfies the following definition by Brown [11].
Categories and Subject Descriptors I.3.5 [Computing Methodologies]: Computational Geometry and Object Modeling—Curve, surface, solid, and object representations; G.1.1 [Mathematics of Computing]: Interpolation; F.2.2 [Theory of Computation]: Nonnumerical Algorithms and Problems—Geometrical problems and computations
1.
INTRODUCTION
Surfaces represented by a set of unordered sample points are encountered in many application areas such as computer graphics, computer aided design (CAD) and reverse engineering, image processing, and scientific computation. Many algorithms that are applied to sampled surfaces rely on the definition of a local neighborhood on the surface. Reconstructing the surface from the sample This work has been partially supported by the IST Programme of the EU under Contract No IST-2000-26473 (ECG - Effective Computational Geometry for Curves and Surfaces).
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. SM’02, June 17-21, 2002, Saarbrucken, Germany. Copyright 2002 ACM 1-58113-506-8/02/0006 ...$5.00.
!
D EFINITION 1.1 ([11]). A system of coordinates over associated with is a set of continuous functions " #%$&(' , *)+ , such that for all .0/1 , (i)
32 .
2
#54
" #
"#
.
)768-9
(ii) For any symbol. (iii)
#54
.
"#
#
(local coordinate property).
;:
=< #
:
, where
< #
:
is the Kronecker
.
The major drawback to applying the natural neighbor coordinate system to points issued from a surface comes from the fact that its definition is limited to the convex hull of the sample points. To avoid this problem, a common solution consists of adding a box enclosing the object. Obviously, this solution causes problems, e.g. the choice of the size of the bounding box, the number of sample points taken from it, artifacts arising from the bounding box points, and the augmented computation cost. In [11], Brown has enlarged the coordinate definition outside the convex hull to cover the union of the Delaunay balls, which is still too much restrictive in many applications.
A second drawback is that a point is likely to have neighbors that are far away from the point. Boissonnat and Cazals have shown that the sum of the coordinates associated to those neighbors that are far away tend to zero when the sampling density increases [7]. However, even though the influence of the far neighbors is small, the fact that Sibson’s coordinates are not local is a drawback not only in the beauty and rigor of the result, but also affects the time required to compute the coordinates and in the exactness of an interpolation scheme. For points issued from a sphere, Brown proposes a solution in [10]. While the above discussed coordinates are defined with respect to the -dimensional Voronoi diagram of , Brown defines natural neighbor coordinates with respect to the geodesic Voronoi diagram on the sphere. This definition generalizes Sibson’s coordinates in a straightforward manner. Therefore, the basic properties of definition 1.1 are fulfilled, except the local coordinate property (i) which cannot be fulfilled since points on the sphere do not belong to the convex hull of their neighbors. The obvious difficulty in enlarging Brown’s approach to general surfaces is that geodesic Voronoi diagrams are much more complicated than Euclidean diagrams and difficult to compute [22]. Moreover, in many applications the surface is not known and neither is the geodesic Voronoi diagram. In this paper, we suggest another system of coordinates for points on a surface. It is closely related to natural neighbor coordinates, yet instead of considering the geodesic Voronoi diagram on the sur face, as Brown, or the Euclidean -dimensional Voronoi diagram of the sample set, as Sibson, it is defined in the intersection of the tangent plane of each surface point with the Euclidean Voronoi diagram of the sample set. If the tangent planes are not given as part of the input, they can be easily estimated from the sample points. The resulting coordinate system is local on the surface, it is defined everywhere in the neighborhood of , and it is inherently dimensional.
1.1.2 Scattered data interpolation on a surface In the last part of the paper, we apply the new coordinate system to interpolate a function defined on a surface. More exactly, we want to approximate $(' where is # $ #/ # a smooth # # surface, knowing a sample set and a query point .0/ on which we want to interpolate . This problem, which is also called ’scattered data fitting’ or ’surface on surface’ problem, arises in a variety of settings. For example in geodesy, geophysics, and meteorology, is some model of the earth, and the function to interpolate from a number of discrete measurements represents temperature, rainfall, pressure, etc. In other contexts, might be a complicated surface, e.g., the sur face of some mechanical piece in , a molecular surface or the wing of an airplane [6]. Several methods exist to solve this problem. One of the most popular is to enlarge the definition of splines to treat the case of a non-planar parameter domain. This was first done for the spherical case in [2]. With this achievement, it suffices to partition a general surface into a collection of nonoverlapping surface patches, i.e. geodesic triangles, and to define a globally smooth interpolation function as piecewise polynomials on the triangles that are carefully accorded at the boundaries. See [23] for an introduction to splines on surfaces. Other methods are radial basis functions, variational methods or multi-resolution methods. See [18] for a survey of the principal methods for scattered data fitting on the sphere. Foley et al propose in [20] to map to the sphere, to apply a known interpolation method on the sphere, e.g. [19], and to apply the inverse mapping back from the sphere to the surface to get the solution.
In the context of interpolation, our method has several advantages in addition to those mentioned at the beginning of this section. It applies directly to the point samples without need of a prior subdivision or triangulation of the surface. The quality of the result can be expressed in terms of the curvature of the surface and of the sampling density. If the surface is locally planar, the inter # polant has linear precision. If, additionally, the gradient , - )1 of at the sample points # is known, we define an interpolant that reproduces exactly a quadratic function – again if the surface is locally planar. We tested the interpolants in different settings. Examples are shown in section 5.
1.2 Paper outline After the introduction, we proceed in section 2 with the definition of some basic concepts, and we recall some known results that are needed in the sequel. In section 3, we define the -neighbors of a surface point . with respect to a set of sample points from the surface. We show that all -neighbors of . lie in a small neighborhood around . if the surface is well sampled. In section 4, we define the -coordinate system on the surface with respect to the sample. We show the main properties of the -coordinates; in particular, we show that the coordinate functions have compact supports and are continuously differentiable almost everywhere on the surface. Although a point on a surface cannot, in general, be expressed as a convex combination of other points on the surface, we show in subsection 4.4, that the local coordinate property is approximately satisfied, with an error that depends on the local curvature of the surface and on the sampling density. In section 5, we describe the applications of -coordinates to scattered data interpolation on a surface, and we show some experimental results. Perspectives and a conclusion are given in the last section.
2. BASIC NOTATIONS AND RESULTS In this section, we give the definition of the main ingredients of our framework and recall some basic results. Notably, we give a short introduction to natural neighbor coordinates for the general case of points in , we define power diagrams and show their relationship to sections of Voronoi diagrams, and we recall results on sampled surfaces.
2.1 Voronoi diagrams and natural neighbors
,,
Let be a set of points in . Without real loss of generality, we can assume that no points lie on! the # is # . / $ same Voronoi cell of . sphere. # 6 The : , , - where denotes . . the Euclidean distance between points . / . The collection of Voronoi cells is called the Voronoi diagram of or "! .
$#
Let be a subset of points of whose Voronoi cells have a non-(' # empty intersection. The convex hull %& is called a Delaunay face, and the collection of Delaunay faces is called
)+* . See figure 1. the Delaunay triangulation of , denoted
Figure 1: (a) a Voronoi diagram, (b) the dual Delaunay triangulation.
!"$# %!"$# & ')'0(+* *-,/,/. . & 1 2 &
" ! . , we define " ! , # and and to be the . . . and # in "! . Under general position asVoronoi cells of )+* the sumption, the -dimensional faces of are simplexes, hence the name triangulation. point )+Given * a )+* .
/
Figure 2:
Let
has five natural neighbors
.
, ,
# # , the part of the Voronoi cell . . # at the insertion of . . If that has been ’stolen’ from # , # is a natural neighbor of . . Let # . be the . . # and . be the volume of . . Figure volume of . 2 shows an example. Observe that if belongs to , the
is bounded. convex hull of , . .
As already mentioned, the natural neighbor coordinates satisfy the three conditions of Definition 1.1. Moreover, the support # of # . the natural neighbor coordinate # , i.e. the set ./ , is the interior of the union of the spheres circumscribing the Delaunay simplexes adjacent to # .
3
to
D EFINITION 2.1. The natural neighbor coordinates associated
)9 to of a point . / are the functions # . , .
& 4 3
D EFINITION 2.2. The natural neighbors of a point
) spect to are the points # / with # .
.
, -
with re-
. Notice that, the natural neighbors are exactly the vertices )+* ofincident to . . other than . of the simplices of
2.2 Natural neighbor coordinates in power diagrams and sections of Voronoi diagrams In this section, we recall the definition of a power diagram, as well as of natural neighbor coordinates defined in power diagrams. We also point out the relationship between -dimensional sections of Voronoi diagrams in and dimensional power diagrams.
,,, Let be a set of weighted points (or sites) ! ! in , # # # / . A weighted point # can also # . Notice, be considered as a sphere with center # and radius that # might be negative and the associated sphere imaginary. The +# / power distance of a point with respect to # is de # # . A weighted point fined as # $ (or the corresponding sphere) is orthogonal to another weighted point (or sphere) if . Without real loss of generality, we can assume thatthe weighted points are in general position. This means that no weighted points are orthogo( nal to the same sphere. The power cell of # is # / 6 ,, - : ! $ # . The collection of power cells is called the power diagram of or . The) dual of the power diagram is called the regular triangulation or . The ) belong to and, under the general vertices of ) position assumption, the -dimensional faces of ) are sim plexes. We call orthosphere of a -simplex of the sphere
5 5 7 ) 7 8 7 6 7 :9 +; =< 9 ; :? 9 ? :9 9 @9 9 ; :9 +; ? :9 A; 7 : 9 : 9 C? ? 6 B ; 9 9 D GE 6
>
7;
7 :9 +;
B7 9 6 D FE 6 GD D E GE 6 6
B ;6
:9 , H; , 7 ; BB ; 6 6 B B ; 7 6 B 7K L K ML O O ()*-*,/6 ,/. . 7 %6 PL
.
weighted points associated to the that is orthogonal to the vertices of the face. Its center is a vertex of . See e.g. [9] for further properties of power diagrams and regular triangulations. Natural neighbor coordinates in power diagrams are defined very similarly to natural neighbor coordinates in ordinary Voronoi diagrams. The major difference between the coordinates in Voronoi diagrams and in power diagrams is due to the fact that a site of a power diagram might have an empty cell. This implies that the cell of some sites may disappear when inserting a new site, let’s say . . Nevertheless, the coordinate can be defined as the proportion of volume of the power cell . which is stolen from of . into . some site # at the insertion $
. . . is the power We define cell of . in and # . $ . # . The # . # . . volume of is denoted by and the volume of )+ is denoted by . . is the convex hull of the # .
BB ; 6 IB B J B 7 B 9 N N 4 3 6 GD E 6 D )GE )
D EFINITION 2.3. The natural neighbor coordinates associated of a point . are defined as the functions # . / ,, )+ .
D EFINITION 2.4. The natural neighbors associated to , - of a ) point . / are the points # / with # . Notice, that in this case, the natural neighbors of . include not only the vertices other than . of the simplices of incident to but also the vertices that disappear from when inserting . . . Sibson proved that the natural neighbor coordinates in power diagrams satisfy the three conditions of Definition 1.1 [25]. In the appendix, we show how to extend the work of Piper [24] about the continuity properties of the natural neighbor coordinates in Voronoi diagrams to coordinates in power diagrams. The lemma is stated as follows: . will be and the cell In the context of this paper, will always exist.
9 , QL 6
;, :9 , 3
3
B
BN I
be a point such that . L EMMA 2.5. Let . / # . for all . The natural neighbor coordinate of . with respect to is continuous over and continuous except at a finite set of points.
R R
L
Let be a hyperplane in , and let the Voronoi diagram "! "! # the be defined as in section 2.1. We # call intersection # of# the
, , Voronoi diagram with " ! $ " ! $ # .
R
S R
# is the power diagram of the points BSERVATION 2.6. "! # Othat
are the projection of the sample points # / onto # $ # # #
weighted with
;
#
TR =R # TR B # +; U
R
.
#
P ROOF. Because of # is the orthogonal . projection # 0$ . # we know that# .( / 3 # 6 Therefore, # .( ,,, - / # $ . # # .6
#
:
.(/
0$ . ,, -
#
$
#
#
#
.
#
.
:
#
# R
on
#
#
:
#
, .
2.3 Sampled surfaces: definitions and results In this section, we consider the case where the sample points are taken from a smooth surface , i.e. a twice-differentiable surface. We assume the first and the second derivative of at . to be continuous and the third derivatives to exist for all . / . We give a definition of what we call the sampling density of and we recall several results about the local behavior of the surface samples, notably from [4] and [7].
We first define the Voronoi diagram of a set of points restricted to a surface, following previous work by Chew [13] and Edelsbrunner and Shah [16].
L EMMA 2.13. [4, lemma 3] For any two points . and on with . , the angle between the normals to most .
D EFINITION 2.7. (Restricted Voronoi diagram, Chew)
The Voronoi diagram of restricted to is the (curved) cell com + ! . We with plex obtained by intersecting each face of denote it by +! .
Since the Voronoi diagram of an -sample consists of long and skinny cells, the normal direction at a point . / can be esti
. . To be more mated from the Voronoi diagram of "! specific, we recall the definition of a pole.
2.3.1 Voronoi diagram on a surface
We denote by # the Voronoi cell of "! consisting # (for the Euclidean distance) of the points;of that are closer to : ) , . A vertex of # is the intersection of than to any , # with . Hence it is the center of a ball passing an edge of
through points of and not enclosing other points of .
D EFINITION 2.8. (Restricted Delaunay triangulation, Chew)
The Delaunay triangulation of restricted is the subcomplex )+* consisting of the faces of ) * to whose dual Voronoi of + ) * edges intersect . We denote it by . The notion of surface natural neighbors follows directly: D EFINITION 2.9. ( -neighbor of . ) The surface natural neighbors or of a point . / ) * -neighbors
are the vertices of the faces of that are incident to . . .
2.3.2 Medial axis and local feature size
,
be a compact object, its boundary. We call ' Let the outward unit normal to at . . The following definitions allow to characterize a sampling of a surface. See [27] and [4] for basic results on properties of the medial axis. -
!
D EFINITION 2.10. (Amenta
at
6
and at .
, is at .
9,
D EFINITION 2.14. The pole which is furthest from . . .
of .
is the Voronoi vertex of
As stated in the next lemma, the line passing through . and its pole provides a good approximation of the (non-oriented) direction of ' , the normal to at . . ' Consequently, the plane ! that contains . and is orthogonal to ' approximates well the tangent plane to at . .
,
,
,
" , -
' L EMMA 2.15. [4, lemma 5] The smaller angle"between and the line passing through . and its pole is at most
In the sequel, we will need the following lemma that states that the tangent plane of a point . / cannot be parallel the bisector to from of two sample points that are at distance at most . . , for .
,
L EMMA 2.16. The angle between the tangent plane ;: to at . / and the bisector of two sample that 6points # and are at distance at most from , is at least . . , +
"
KJ
Bern)
is the 1. (Medial axis) The medial axis of a surface in closure of the set of points with more than one closest point on .
'-
of a point 2. (Local feature size) The local feature size . .(/ is the least distance from . to the medial axis of .
(
' -%$
#
3. ( -sample) A set of sample points of is said to be an -sample of if every point . / has a sample point at distance at most . . In the sequel, we only consider -samples for .
2.3.3 Properties of well sampled surfaces In this section, we mainly recall some results of Amenta and Bern [4]. The first lemma states that the local feature size is Lipschitz. L EMMA 2.11. [4, lemma / ,1] For any two points . .
6
.
.
It follows that, if is a -sample, the maximum distance be
tween . / and the closest sample point #9/ is # . Considering two close surface points, Amenta and Bern show that the angle between the line segment connecting the two points and the normal at the points is large, whereas the angle between two normals is small. L EMMA 2.12. [4, lemma 2] 6 . , the For any two points . and on with . smaller angle between the line segment . and the normal to at . is at least .
O "
# #
$
'&
(
:
Figure 3: Bounding the angle between the normal : segment # .
-)$
and the
P ROOF. See figure 3 for notations. We derive a lower bound for ' : '# # at the angle between the vector and the surface normal * + between the normals at # and an upper bound for the angle # - ' ' : and . . The angle between and # is at least * + .
,
In order to bound * , we apply lemma The distance # 2.12. # between ;: 6 the sample points is bounded by . ;: . 6 . 6 lemma 2.11, we get . . Using # : 6 6 # . and . # . Hence, # . It follows from Lemma 2.13 that * is at least , + between the normals at # and . is at . The angle most if (lemma 2.13). Concluding, we get * +./ 0 , provided that .
KJ
"
"
U
KS
.
3.
SURFACE NEIGHBORS
With this section begins the core part of the paper in which we define a local neighborhood of a point . of a smooth surface with respect to an -sample of . In order not to compute geodesic Voronoi diagrams on , we approximate locally by the tangent plane of . to . We determine the natural neighbors
restricted to , and we call of . in the Voronoi diagram +! them -neighbors of . . In the remainder of this section, we formally define the -neighbors of a point .0/ and prove that they are close to . .
,
,
3.1 Definition of -neighbors
,
,
In a first time, we assume that for each point . / , the normal - ' to at # . is known, and therefore, the tangent plane at . . Let "! be the intersection of "! with the tangent plane . The Delaunay triangulation restricted to that consists )+* whose is of the faces of dual Voronoi edges intersect )+* # . Alternatively, "! # is the 97 -dimensional called # of the sampower diagram of the points # that are the projection $ # # / # # ple points onto weighted with . # ) # be the regular triangulation dual to +! # . Since Let # two cells of "! are adjacent iff their corresponding cells in " ! )+ * # are adjacent and intersect , ) # is the projection of onto .
,
,
,
D GE
,
, D GE
;
,
Attention must be paid to two details which ensure that these concepts are well-defined: First, the definitions of section 2.2 assume general position of the point sites. The case that two sites have the same position and the same weight is excluded. In our ;: context, this occurs if the bisector of: two -neighbors and of . coincides with : and are projected at the same position, and they have the same weight because they are at the same distance to the tangent plane but on opposite sides. However, without real loss of generality, we can assume that no bisector of two sample points is tangent to . Notice, still, that we can easily show that the angle between ;: 6 and the bisector of and is strictly positive, if : in : the sequel of this section, we show that and are at distance at most . to . (lemma 3.3), thus, lemma 2.16 applies % . with Second, we need the following lemma to# show that . lies in the " ! convex hull of its natural neighbors in . It is equivalent to # . is bounded. show that
,
,
,
L EMMA 3.2. . belongs to the convex hull of the projection of its -neighbors on .
9 9
#
. P ROOF a contradiction, assume that is unbounded. # . . For . Since Then contains a point at infinity is, among .
the points of . , the closest to , the halfspace limited and . . by the hyperplane passing through and normal to - '
containing does not contain any point of . If is a compact surface without boundary, its medial axis must intersect . Indeed, the maximal ball passing through . and lying in the region limited by is centered on . This center is a point of the medial axis of . Let be the portion of the medial axis that is contained in . Because the medial axis must intersect , there exists a point of which is closer to
T
R R
, R
R= R
R
R 9
than to any point of . This contradicts the fact that is an . -sample with In figure 4, a schematic drawing illustrates that some of the natural neighbors of . which are highlighted in the picture can be far away from . on “the other side” of – separated from . by the medial axis of . The -neighbors are the subset of the natural neighbors that are close to . on . This is what we prove in the next section.
D EFINITION 3.1. ( -neighbor of . ) The -neighbors asso
ciated to of a point #. / are the sample points # / # such that their projection # is a natural neighbor of . in "! .
U
Figure 4: Natural neighbors
and -neighbors
of .
If the normal at . is not known (this may be the case when the surface is only known at a finite set of points), we can approximate the tangent plane by the plane ! that passes through . and is orthogonal to the vector joining . to its pole. We can define -neighbors in very much the same way as -neighbors : the only difference is that is replaced by ! .
,
,
,
,
3.2 Locality of the -neighbors
We now derive a bound on the distance between a point . / and its -neighbors with respect to the local feature size . The proof of the lemma is closely inspired from [4, lemma 5].
.
L EMMA 3.3. Let be an -sample of and .0/ . (a) The -neighbors of . are all contained in a ball of radius . centered at . .
(b) The -neighbors of .
are contained in a ball of radius
! "
#
.
are contained in a ball of
.
centered at . . (c) In both of -neighbors cases, the radius . .
'
8 ,
P ROOF. Let be a vertex of . . ' . We derive #. an upper bound on the distance between . and . Because is bounded by the bisectors of . and its -neighbors, the distance between . and ' its -neighbors is at most twice the distance between . and .
7
7 7
7
Let and be the two balls of radius . thatare tangent ' to at . . Assume without loss of generality that and ' . are on opposite sides of . Let * be the angle where # is the center of . We find the same angle * ' . # ' where . See is the orthogonal projection of . onto the line segment figure 5.
*.
,
4. SURFACE COORDINATE SYSTEM
Figure 5: For the proof of lemma 3.3(a)
' Since
7'
and lie on different sides of , the line segment ' must intersect . Let' be such an intersection point. ' We call ' . Since the ' ball with center and radius . / . , is empty of sample points. Because is also empty of sam . . ple points, is the point of that is closest to . It follows 6 . On the other hand, . that . . # * . . . Hence, 6 * . From the
7
" 8 "
' . # , we know that . triangle With * 0 . .
!
,"
,
6
' 6 .
'
.
7
, we get
.
We can now define a surface coordinate system associated to a
given sample set . Similarly to the -neighbors, it is defined in the tangent plane of each surface point and consequently called -coordinate system. In the rest of the section, we show some properties of -coordinate systems : we show that the support of the -coordinates is local in subsection 4.2, study their continuity properties in subsection 4.3, and prove that the local coordinate property is approximately satisfied, with an error that depends on the local curvature of the surface and on the sampling density in subsection 4.4. The results for ! -coordinates, the generalization of -coordinates to estimated tangent planes, are not explicitly given because, with lemma 3.3(b), they can be easily deduced. Furthermore, lemma 3.3(c) shows that the asymptotic results are the same.
,
4.1 Definition and basic properties The same definitions as in section 3 apply. D EFINITION 4.1. ( -coordinate associated to ) The # . 0 . coordinate of a point of is the natural neighbor coordi # , # # . nate of X associated to # in the power diagram "! , , )9 .
N
By construction, the -coordinates 0# fulfill properties and
of a system of coordinates over associated to as they are listed in definition 1.1. The local coordinate property(i) is satisfied # for the projected sample points # . With respect to , the local coordinate property is only true if the surface is locally planar so that all -neighbors of . lie in the tangent plane . ) )
,
# . . ! . . Let + / ! and ! . From lemma 2.15, we know that + . See figure 6 for notations. We define 6 . as before, and we obtain the same bounds .
" " O ' " ! ' " # ,
) ( * #" $&
' * '#" $ *,- + + . .
and * Let
0
-
From triangle 6
.
.
0
,
*
.
+
, we know that
.
.
.
O
-
.
.
"
'
3.3 Local surface patches
.
U
0
!
7
,
! #" $%
and
3
7 S
3
#
L EMMA 4.2. The support # centered at dius
1
1
# #
.
of 0
#
is contained in a ball of ra-
U
P ROOF . Applying lemma 3.3 and lemma 2.11, we obtain . 6 6 < 1 # . 1 # with < , which is at most .
4.3 Continuity of the coordinate function
6
. ! be/ a ball centered at . with radius L EMMA 3.4. Let . . If , . ! is a topological -ball that contains all the -neighbors of . .
/
The following lemma states that . and all its -neighbors are contained in a small topological ball, if . It is a direct consequence of lemma 3.3.
1
denote the support of 0# , i.e. the subset of the points such that 0 # . . In order to show the locality of # on , we apply the bound on the distance between a point . / and its -neighbors. Let
Figure 6: For the proof of lemma 3.3(b)
' (b) We consider a vertex . be the angle between 6
,
4.2 Locally bounded support
.
) ) )
6
7 D 3 U
7
P ROOF. By lemma 3.3, all the -neighbors of . are contained in a ball . ! centered at . of radius ! . . With . [7], proposition 14, -ball if is/ a topological !% . , which is true for .
.
In this section, we study the continuity of the function moves on . Let us first state the lemma:
L EMMA 4.3. The everywhere on .
-coordinate
0# )
, , -9
0#
when
is continuous
32 ' 32 ' . Assume that is parameterized by , so that . 34 3P2 ROOF ' 5 32 ' 32 ' . The coordinate function 0 # . 32 ' is, by definition, equal to the natural coordinate # . in # neighbor the power diagram +! . When . moves on , the pro. +
N
jected sample points change their position and their weight continuously. Indeed, since is smooth, the projection onto the tangent
plane is a continuous mapping. The weight of the following function:
;
32 ' #
$
#
# 32 '
#
32 '
is described by #
32 '
' # .
,* . 32 ' # 3, 2 '
-
'
1
'
-
By assumption, is twice differentiable. The normal . is continuous.2 The same is true for the of # # 32 ' - position 32 ' ' # 32 ' = # # since # . Recall also # from lemma 3.2, that . is always in the convex hull of the projected sample points. Consequently, the -coordinates are continuous on all of because the natural neighbor coordinates are continuous as described in section 2.2.
,
U
L EMMA 4.4. The -coordinate 0# is continuously differentiable everywhere on except at the sample points and at the points . / such that contains a -dimensional
in "! . Voronoi face of the Voronoi cell . . * ,, -9
)9
,
"! #
Consider the power diagram
Forconvenience, we adopt the terminology associated to and -dimensional face an edge. The natural neighbor coorcall a dinate 0 # is# not continuously differentiable at a point . such that # an . has edge of the same supporting line as an edge of # # # :# say (see also ' the proof of lemma 9.1 in the ap # pendix). This means that a point of this edge has equal # :# # power . with + ! respect to . , # , and . But, by definition of , ' ;: from # , , and . . Conthis means also that is at equal distance # . is an edge of "! . . sequently, the Voronoi edge of This edge is therefore contained in .
2
,U
4.4
# - '
The local coordinate property
#
$
depending on the sign of
P ROPOSITION 4.5. .
0#
#
.
# '
#
#
#
$
-'
#
#
#
6
#
.
( * ,/, .
-' .
$
,
.
"
0#
#
.
#
RR
Assume that is locally flat and identical to a plane . At any point . of where the -neighbors of . are all in , the interpolant has linear precision. Indeed, if # # for all -neighbors of . , we have
.
0#
.
#
.
by the local coordinate property. If is not flat around . , we saw . . in section 4.4 how the error can be bounded with respect to # be a linear function. We have Let # . ) . - ' 2 ) .. # where # 0# .
0
2
#
#
# '
.
#
#
$
-'
.
.
.
,
. Hence,
E
.
9 , '
We the scalar product of two vectors by . denote ' where . (. ) is the first 2 derivative of . with respect to (with respect to ). '
5.1.2 Quadratic precision
# # It is easy to see that . where # # . ## . Since # does not belong to the two balls of radius & . With lemma 3.3, we have 6 . # . centered 6 at . , . which implies the inequality above and the proposition.
" U , * . ,, ,, 32 '
,
within its For a point . / , we compute its -coordinates tangent plane . The interpolation of . is given as the linear combination of the function values of the -neighbors weighted by the coordinates:
.
In this section, the previously defined -coordinate system is used to define an interpolant for functions defined on smooth sur faces. More exactly, we want to approximate $ ' where
is defined as before. We assume that an -sample of
1& # # # / # with function values $ # is given. The interpolation is carried out for a point .(/ .
P ROOF . It is enough to prove that the distance between a # neighbor # / of . / and its projection # on the tangent plane , is bounded by
,
5.1 Interpolating a function on
#
In this section, we bound the error) committed with respect to 2 the local coordinate property, that is . . # . # 0# . This corresponds to bounding the distance of a 2 -neighbor of a # point . / to the tangent plane , since . # . 0 # # # # - ' $ # 2 2 # . # # or . # # 0 # 0# .
,
As mentioned at the beginning of the paper, in this section, we use the -coordinates in the context of interpolation. In particular, as described in the introduction, section 1.1.2, we want to interpolate a function which is defined on a surface but only known at some points. Also, we deform a polyhedral surface at some of its vertices in the direction of their normal, and we interpolate the displacement of the other vertices.
5.1.1 Linear precision
. P ROOF. . By lemma continuous except at a finite number of points. Still, 2.5, 0 # is we want to characterize those points with respect to "! .
5. APPLICATION: INTERPOLATION
'
We can also define an interpolant . . that reproduces a quadratic . function . . As additional input, we # # assume the gradients of at the sample points , - )+ # to be known. The interpolant is defined as follows:
.
0#
#
.
E
#
#
.
#
R R
Assume again that is locally flat and identical to a plane . At any point . of where the -neighbors of . are all in , the # # interpolant has quadratic precision. Indeed, if # # , # ( ! # , and applying the local coordinate # property, we obtain:
E
If
.
is not flat around .
)
"
.
.
.
.
, we have : .
.
)
.
- '
,
.
,
.
where . is defined previous Thus, the error of as in the - ' ) . case. the interpolant is . . . . Notice, that
when interpolating a linear function, the error committed by is half the error committed by . interpolant In this context, we also implemented the so-called proposed by Sibson [26] which we adapted to our setting by replacing the natural neighbor coordinates by the -coordinates. Sibson’s original version recaptures only spherical quadrics due to the fact that the gradients are estimated from the data. Otherwise, it has quadratic precision and is continuous. Its correctness relies on the local coordinate property of the natural neighbor coordinates. Consequently, in our case, a small error is introduced again depending on the local feature size.
Figure 8:
(a) evaluation, (b) 50, (c) 250 sample points
Figure 9:
(a) evaluation, (b) 50, (c) 250 sample points
5.1.3 Experimental results
4
34 5 ) * * . . 3 +) * * . * . . 3 ) * * F . * 8 . . 34 5 4 ) ) 3 4 5
We interpolated the following three functions on the sphere:
34 5
$
$
,
5
$
,
.
To visualize the result, we deformed the sphere at each point along its normal by the amount of the corresponding interpolation result. See figure 7, 8 and 9. The leftmost pictures show the exact result, i.e. the function is evaluated at the 4000 points of the sphere model and the sphere is deformed correspondingly. The right pictures show the result of the interpolation on the 4000 sphere points given function values at 50 and 250 of the 4000 points. The functions and are test functions from [20] and [3]. In table 1, we show the corresponding error statistics. For each interpolant, mean and max errors are given with respect to the absolute difference between the actual and the interpolated function value on the 4000 evaluation points.
pts 50 250 50 250 50 250
f
5.2 Surface deformation
mean 0.313 0.075 0.037 0.008 0.526 0.126
max 1.58 0.64 0.29 0.06 3.13 1.17
mean 0.328 0.067 0.023 0.002 0.698 0.137
max 1.57 0.48 0.15 0.02 3.39 1.44
mean 0.262 0.056 0.019 0.002 0.614 0.116
max 1.30 0.47 0.13 0.019 3.31 1.41
Table 1: The error of the function interpolation on the sphere
This section describes experimental results from the application of the linear interpolant defined in the last section. In order to demonstrate the locality and the smoothness of the -coordinate, we interpolate a deformation that is applied to some points of a
polyhedral surface. Let ! be the polyhedral surface and its ver
tex set. On each vertex # / , we approximate the normal to ! by the average of the normals of the facets adjacent to # in ! .
# The setting is the following: we consider a small subset of the vertices of the polyhedral surface, and we assign some real
# value # to each sample point # / . The value # corresponds to a deformation of # along its normal. Then we calculate the ;: ;:
# / interpolant for all other points using the # coordinates associated to . The resulting polyhedral surface is obtained by replacing each vertex with its deformed image. The combinatorial structure of ! remains the same. This is exactly the experimental setting of Brown [11] generalized to point sets from general surfaces. Figure 11 shows the result of a deformation applied to the bunny. Three points are displaced along their normals, while the the other
# sample points in remain unchanged. In the bottom images of figure 11, these sample points are depicted on the surface. One can see that the deformation stays local around the displaced points.
5.3 Implementation
Figure 7:
The implementation is based on the Computational Geometry Algorithms Library [12]. It makes use of the two-dimensional regular triangulation, the three-dimensional Delaunay triangulation as well as the polyhedral surface class provided by . The running times for computing the coordinates for a set of points is about three times the running time for computing its Delaunay triangulation. Further details on the implementation can be found in a technical report [8] that will appear soon. (a) evaluation, (b) 50, (c) 250 sample points
Figure 10: The deformed sphere: (a) 4 deformed points and (b) 25 deformed points among 50 sample points. Interpolation for 2000 random points on the sphere.
6.
CONCLUSION AND FUTURE WORK
The -neighborhood and the -coordinate system are associated to a set of sample points from a surface equipped with normal vectors. We show that the neighbors as well as the coordinate system are local on the surface, if the surface is well sampled. The coordinate system is continuous everywhere on the surface. It is continuously differentiable except at a finite number of surface points. Furthermore, we show the application of the coordinate system to different problems related to interpolation. In the near future, we plan several extensions of our method: In order to simplify the presentation in this framework, we restricted ourselves to 7 -manifolds, yet, the same definitions apply to all smooth -manifolds, , of . For the same reason, we did not generalize the definitions to manifolds with boundary. Another straightforward extension allows to enlarge the definition domain of the coordinate system beyond the surface to all of except the medial axis of the surface. In addition, we will concentrate on the question of efficiency: due to the proved locality of the -neighbors, efficient filtering methods will considerably speed up computation time. See [14] for comparable work on this question. Last but not least, we plan to develop further applications e.g. around texture mapping, surface reconstruction, and point set surfaces as they are recently emerging in computer graphics, see for example [1]. Also, the interpolation schemes can easily be extended to vector field interpolation, thus, to interpolation of functions that are defined from the surface to a higher dimensional space.
5
5
7.
ACKNOWLEDGMENTS
The authors wish to thank David Cohen-Steiner, Fr´ed´eric Cazals and Raphaelle Chaine for helpful comments.
8.
REFERENCES
[1] Marc Alexa, Johannes Behr, Daniel Cohen-Or, David Levin, Shachar Fleishman, and Claudio T. Silva. Point set surfaces. In Proceedings of Visualization 2001, to appear 2001. [2] Peter Alfeld, Marian Neamtu, and Larry L. Schumaker. Bernstein-bzier polynomials on spheres and sphere-like surfaces, CAGD, 13:333–349, 1996. [3] Peter Alfeld, Marian Neamtu, and Larry L. Schumaker. Fitting scattered data on sphere-like surfaces using spherical splines, J. Comp. Appl. Math., 73:5–43, 1996. [4] Nina Amenta and Marshall Bern. Surface reconstruction by Voronoi filtering. Discrete Comput. Geom., 22(4):481–504, 1999.
Figure 11: The deformed bunny: (top) original model and fi # nal result, (bottom) the sample set on the original and the deformed model.
[5] F. Aurenhammer. Linear combinations from power domains. Geom. Dedicata, 28:45–52, 1988. [6] R. Barnhill, B. Piper, and K. Rescorla. Interpolation to arbitrary data on a surface. In G. Farin, editor, Geometric Modeling: Algorithms and New Trends, pages 281–289. SIAM, Philadelphia, 1987. [7] J-D. Boissonnat and F. Cazals. Natural neighbor coordinates of points on a surface. Computational Geometry: Theorey and Applications, 19(2-3):155–173, 2001. [8] Jean-Daniel Boissonnat and Julia Fl¨ototto. A local coordinate system on a surface. Technical Report 123456789, INRIA, 2002. [9] Jean-Daniel Boissonnat and Mariette Yvinec. Algorithmic Geometry. Cambridge University Press, UK, 1998. Translated by Herv´e Br¨onnimann. [10] J. Brown. Natural neighbor interpolation on the sphere. In P.-J. Laurent, A. Le M´ehaut´e, and L. L. Schumaker, editors, Wavelets, Images, and Surface Fitting, pages 67–74. A. K. Peters, Wellesley MA, 1994. [11] J. L. Brown. Systems of coordinates associated with points scattered in the plane. Comput. Aided Design, 14:547–559, 1997. [12] The CGAL reference manual, August 2001. Release 2.3. [13] L. P. Chew. Guaranteed-quality mesh generation for curved surfaces. In Proc. 9th Annu. ACM Sympos. Comput. Geom., pages 274–280, 1993. [14] Tamal K. Dey, Stefan Funke, and Edgar A. Ramos. Surface reconstruction in almost linear time under locally uniform sampling. In Abstracts 17th European Workshop Comput. Geom., pages 129–132. Freie Universit¨at Berlin, 2001. [15] Manfredo P. do Carmo. Differential geometry of curves and surfaces. Prentice-Hall, 1976.
[16] H. Edelsbrunner and N. R. Shah. Triangulating topological spaces. In Proc. 10th Annu. ACM Sympos. Comput. Geom., pages 285–292, 1994. [17] G. Farin. Surfaces over Dirichlet tesselations. Comput. Aided Geom. Design, 7:281–292, 1990. [18] G. Fasshauer and L. Schumaker. Scattered data fitting on the sphere. In T. Lyche M. Daehlen and L. L. Schumaker, editors, Methods for Curves and Surfaces II, pages 117–166. Vanderbilt University Press, 1998. [19] T. Foley. Interpolation to scattered data on a spherical domain. In J. C. Mason and M. G. Cox, editors, Algorithms for Approximation II, pages 303–310. Chapman and Hall (London), 1990. [20] Thomas A. Foley, David A. Lane, Gregory M. Nielson, Richard Franke, and Hans Hagen. Interpolation of scattered data on closed surfaces. Computer Aided Geometric Design, 7(1-4):303–312, 1990. [21] Hisamoto Hiyoshi and Kokichi Sugihara. Voronoi-based interpolation with higher continuity. In Proc. 16th Annu. ACM Sympos. Comput. Geom., pages 242–250, 2000. [22] Greg Leibon and David Letscher. Delaunay triangulations and Voronoi diagrams for Riemannian manifolds. In Proc. 16th Annu. ACM Sympos. Comput. Geom., pages 341–349, 2000. [23] Marian Neamtu. Splines on surfaces. http://citeseer.nj.nec.com/neamtu01splines.html, 2001. [24] B. Piper. Properties of local coordinates based on dirichlet tesselations. Computing Suppl., 8:227–239, 1993. [25] R. Sibson. A vector identity for the Dirichlet tesselation. Math. Proc. Camb. Phil. Soc., 87:151–155, 1980. [26] R. Sibson. A brief description of natural neighbour interpolation. In Vic Barnet, editor, Interpreting Multivariate Data, pages 21–36. John Wiley & Sons, Chichester, 1981. [27] F. E. Wolter. Cut locus and medial axis in global shape interrogation and representation. Technical Report 92-2, MIT, Dept. Ocean Engg., Design Lab, Cambridge, MA 02139, USA, January 1992.
9.
boundary direction. In [24], Piper shows that the natural neighbor coordinate function is differentiable when it is restricted to a straight line emanating from a data site, except at the data sites themselves. In Voronoi diagrams this is sufficient to show the continuity on the Delaunay circles because a line emanating from a data site can never be tangent to one of its Delaunay balls – it is always a legal cross boundary direction. In power diagrams this is not true in general, and we need to show another continuous cross boundary direction. Other than that, Piper’s proof extends easily to natural neighbor coordinates.
/
4
:9 9 , +; , , %6 L
;,
LN
9,
;;
P ROOF. We give a sketch of the proof which is an adaption of Piper’s proof [24] of the differential properties of the -dimensional Sibson coordinates. Since, by assumption, the area function does not vanish if # / , it suffices to show the differentiability of # in order to prove the differentiability of # . As Farin noticed in [17], the natural neighbor coordinate is a rational function of . within a cell of the arrangements of Delaunay spheres or orthospheres in our case. This is due to the fact that, in each cell, the vertices of # . are rational functions of . . Therefore, the volume of the Voronoi cell formed by these vertices is a rational function of . , thus, it is . When . approaches the boundary of a orthosphere, the rational function changes. The continuity properties of the coordinate are determined by the continuity properties of some cross
9 %L
B7
N
9
/ ,
;#
#
Figure 12: The volume of as . moves on ;#
7 #
.
#
changes
continuously
Instead, we choose . to move on a sphere # ! centered on # with radius ! . Except on the two points of each power sphere that maximize and minimize the distance to # , there exists a radius ! such that # ! traverses the power sphere. For the other points, Piper’s proof applies. axis of . and # is tangent to the radical The centered on # – we call this sphere sphere of radius !
;# !
9
9
9 7 7 R, 9 , ! 9 9 R , ! ; N 7 R , R , R , 7 ; ! R, 7 :? 9 7 ! ( 9 ; 9N 7 FD 7 E 6 ) B 7 7 ; , ( N ; , ( ; N , L U ( N (
. Let be the be the radical hyperplane of . and # , or in other words, hyperplane tangent to ;# at the intersection ' thewith point of ;# the line through and # . Let be the open halfspace defined by which does not contain # . If . is in # . The volume # is exactly the support of # , intersects # . # . Using the arguments of Farin [17], it is now easy to see that # changes in a quadratic fashion as . moves along ;# , thus, it is continuously differentiable. An exception # . to this behavior occurs if becomes one of the faces of The function is still continuous but no longer differentiable. This is the case if . lies on the line connecting one of its neighbors # to : : # . Notice, that this and if the power : particularly the case if . . See figure 12 for an illustration. This is sufficient to show the differentiability of # at all points of except at one point on each line connecting # to on of its if the weight of . , of # and neighbors on . Notice, that : of its neighbor is zero, the discontinuity occurs exactly if : . . In order to proof the continuity, the same argument used by Farin [17] for natural coordinates in Voronoi diagrams applies: the # area function # . is continuous everywhere . # except at # . However, the normalized coordinate function : : is continuous because . . !: ) , as follows from the definition of , for all . Since 2 # . # . , we deduce , which shows # 4 that # is continuous everywhere in .
;
9.1 Continuity of the natural neighbor coordinates in power diagrams L EMMA 9.1. Let . be a weighted point with . / such that , for all . The natural neighbor coordi nate # . of . with respect to is continuous as moves in and continuous except at a finite set of points.
APPENDIX
Notations are the same as in section 2.2.
R ,
( ( (
;#
3
L
9
NN