13
Vis Comput (2009) 25: 743–755 DOI 10.1007/s00371-009-0362-0 ORIGINAL ARTICLE Curvature-based anisotropic geodesic distance computation for parametric and implicit surfaces Joon-Kyung Seong · Won-Ki Jeong · Elaine Cohen Published online: 16 April 2009 © Springer-Verlag 2009 Abstract Distribution of geometric features varies with di- rection, including, for example, normal curvature. In this paper, this characteristic of shape is used to define a new anisotropic geodesic (AG) distance for both parametric and implicit surfaces. Local distance (LD) from a point is de- fined as a function of both the point and a unit tangent plane directions, and a total distance is defined as an integral of that local distance. The AG distance between points on the surface is the minimum total distance between them. The path between the points that attains the minimum is called the anisotropic geodesic path. Minimization of total dis- tance to attain the AG distance is performed by associat- ing the LD function with a tensor speed function that con- trols wave propagation in the convex Hamilton–Jacobi (H–J) equation solver. We present new distance metrics for both parametric and implicit surfaces based on the curvature ten- sor. In order to solve for the implicit AG, a bounded 3D H–J equation solver was developed. We present a second met- ric for the AG distance, a difference curvature tensor, for parametric surfaces. Some properties of both new AG dis- tances are presented, including parameterization invariance. This AG path differs from the usual geodesic in that mini- mal path, i.e., lowest cost path, roughly speaking, minimizes an integral of curvature along the curve. Then, the effective- ness of the proposed AG distances as shape discriminators is demonstrated in several applications, including surface seg- mentation and partial shape matching. J.-K. Seong ( ) · W.-K. Jeong · E. Cohen School of Computing, University of Utah, Salt Lake City, USA e-mail: [email protected] W.-K. Jeong e-mail: [email protected] E. Cohen e-mail: [email protected] Keywords Anisotropy · Parametric and implicit surface · Geodesic · Normal curvature · Tensor · H–J equation 1 Introduction Being able to compute geodesic distances on parametric and implicit surfaces is important in many fields, including com- puter graphics, geometric modeling and bio-medical imag- ing. For example, geodesic paths on a surface are critical in surface segmentation and editing methods since cutting the surface along the geodesic paths produces better results [16, 25]. Methods to create minimum distortion parameteri- zation or remeshing of 3D models are based on geodesic dis- tances [13, 35, 46, 54]. Other applications include isometry- invariant shape classification [14, 19], skinning [48], med- ical imaging and geophysics [43]. Geodesics are locally shortest paths in the sense that any perturbation of a geodesic curve will increase its length; thus, they minimize the Euclidean distance on a surface. A geodesic distance between two vertices of a triangle mesh surface, for instance, can be computed using a shortest- path algorithm on the mesh graph, where the weight associ- ated with an edge is its length. Efficient algorithms, such as the Dijkstra algorithm [47], can compute path lengths very quickly, but produce paths quite different from true geodes- ics since the paths they create pass only through the mesh vertices. Much of the research on geodesic computation on a surface focuses on solving the eikonal equation [6]. Kim- mel and Sethian [27] proposed an optimal-time algorithm for computing the geodesic distances and thereby extract- ing shortest paths on triangulated manifolds using the Fast Marching Method [42]. It computes approximate geodesic paths between two vertices by numerically solving the

Curvature-based anisotropic geodesic distance computation

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Curvature-based anisotropic geodesic distance computation

Vis Comput (2009) 25: 743–755DOI 10.1007/s00371-009-0362-0

O R I G I NA L A RT I C L E

Curvature-based anisotropic geodesic distance computationfor parametric and implicit surfaces

Joon-Kyung Seong · Won-Ki Jeong · Elaine Cohen

Published online: 16 April 2009© Springer-Verlag 2009

Abstract Distribution of geometric features varies with di-rection, including, for example, normal curvature. In thispaper, this characteristic of shape is used to define a newanisotropic geodesic (AG) distance for both parametric andimplicit surfaces. Local distance (LD) from a point is de-fined as a function of both the point and a unit tangent planedirections, and a total distance is defined as an integral ofthat local distance. The AG distance between points on thesurface is the minimum total distance between them. Thepath between the points that attains the minimum is calledthe anisotropic geodesic path. Minimization of total dis-tance to attain the AG distance is performed by associat-ing the LD function with a tensor speed function that con-trols wave propagation in the convex Hamilton–Jacobi (H–J)equation solver. We present new distance metrics for bothparametric and implicit surfaces based on the curvature ten-sor. In order to solve for the implicit AG, a bounded 3D H–Jequation solver was developed. We present a second met-ric for the AG distance, a difference curvature tensor, forparametric surfaces. Some properties of both new AG dis-tances are presented, including parameterization invariance.This AG path differs from the usual geodesic in that mini-mal path, i.e., lowest cost path, roughly speaking, minimizesan integral of curvature along the curve. Then, the effective-ness of the proposed AG distances as shape discriminators isdemonstrated in several applications, including surface seg-mentation and partial shape matching.

J.-K. Seong (�) · W.-K. Jeong · E. CohenSchool of Computing, University of Utah, Salt Lake City, USAe-mail: [email protected]

W.-K. Jeonge-mail: [email protected]

E. Cohene-mail: [email protected]

Keywords Anisotropy · Parametric and implicit surface ·Geodesic · Normal curvature · Tensor · H–J equation

1 Introduction

Being able to compute geodesic distances on parametric andimplicit surfaces is important in many fields, including com-puter graphics, geometric modeling and bio-medical imag-ing. For example, geodesic paths on a surface are criticalin surface segmentation and editing methods since cuttingthe surface along the geodesic paths produces better results[16, 25]. Methods to create minimum distortion parameteri-zation or remeshing of 3D models are based on geodesic dis-tances [13, 35, 46, 54]. Other applications include isometry-invariant shape classification [14, 19], skinning [48], med-ical imaging and geophysics [43].

Geodesics are locally shortest paths in the sense that anyperturbation of a geodesic curve will increase its length;thus, they minimize the Euclidean distance on a surface.A geodesic distance between two vertices of a triangle meshsurface, for instance, can be computed using a shortest-path algorithm on the mesh graph, where the weight associ-ated with an edge is its length. Efficient algorithms, such asthe Dijkstra algorithm [47], can compute path lengths veryquickly, but produce paths quite different from true geodes-ics since the paths they create pass only through the meshvertices.

Much of the research on geodesic computation on asurface focuses on solving the eikonal equation [6]. Kim-mel and Sethian [27] proposed an optimal-time algorithmfor computing the geodesic distances and thereby extract-ing shortest paths on triangulated manifolds using the FastMarching Method [42]. It computes approximate geodesicpaths between two vertices by numerically solving the

Page 2: Curvature-based anisotropic geodesic distance computation

744 J.-K. Seong et al.

Fig. 1 Computing equidistancecontours on the face-likesurface: (a) isotropic geodesicdistance, (b) anisotropiccurvature tensor-based geodesicdistance (bottom figures areisolines viewed from the frontof the model). Geodesic pathsbetween two yellow pointsassuming: isotropic metric(magenta) and anisotropicmetric (red)

eikonal equation. Mitchell et al. [33] presented an algo-rithm for determining the shortest path between a sourceand a destination on an arbitrary polyhedral surface. Anisotropic geodesic shortest path is also computed on polyg-onal surfaces [8, 24, 49]. In seeking to approximate distancemaps on a parametric surface, [6] solves the eikonal equa-tion on a discrete grid obtained by sampling the parametricdomain. Energy-minimizing splines are computed on vari-ous manifolds, including parametric surfaces, level sets andmeshes [20].

Finding a robust and efficient algorithm for computinganisotropic geodesic distance is the subject of significant re-search. In [10, 40, 41], algorithms for computing anisotropicgeodesic distance are presented for discrete data sets. But,these methods have not been extended to implicit surfaces.In [31], an algorithm for computing weighted distance func-tions and geodesics on implicit surfaces is presented. Theweighted distance is, however, considered in an isotropicmanner. In [7], the eikonal equation (isotropic) is solvedfor parametric 3-variate manifolds using an extended fastmarching method. A feature-sensitive metric was proposedby Pottmann et al. [37]. The proposed isophotic metric [37]is sensitive to surface features since it considers the variationof the surface normals which is related to curvature throughthe shape operator. Our approach, based directly on the nor-mal curvature, has a similar effect to the isophotic metricand is highly adaptive to a surface shape. This paper, how-ever, presents more general scheme for handling arbitraryanisotropic distance metric.

In this paper, we present a unified algorithm for comput-ing the curvature tensor-based anisotropic geodesic distancefor both parametric and implicit surfaces. A new local dis-tance function is introduced and then the anisotropic geo-desic (AG) distance between the points on the surface iscomputed. The AG path differs from the geodesic path inthat the local distance depends on a unit direction as wellas the position of the surface point. Specifically, the new lo-cal distance proposed in this paper is a function of normalcurvatures of surfaces and so varies with direction at a given

surface point. Geodesics, however, consider only the Euclid-ean distance between the points along the surface, which isan isotropic quantity. In the case of isotropic geodesics, thelocal distance depends only on the surface point since itsspeed is equal (i.e. isotropic) in every tangent plane direc-tion.

The new curvature-based anisotropic geodesic problem,for example, is interesting for terrain navigation, where amoving vehicle is bound to move along a surface. The con-ventional geodesic path may not be a meaningful way totravel since it may force motion along a steep path. Our def-inition of anisotropic geodesic paths based on the curvaturetensor minimizes the integral of curvature over the path andso makes it easier to move along using a vehicle. Real roadson a mountain follow this type of anisotropically minimizedpath. Figure 1(c) depicts such an idea. The conventional geo-desic curve represented by yellow color encounters a high-curvature region, while the new AG path (red) moves alongminimal-curvature directions.

An overview of our algorithm is as follows (see Fig. 2).First, a local distance is defined as a function of a surfacepoint and direction in its tangent plane. The AG distancebetween points on the surface is then measured by mini-mizing a total distance defined as an integral of the localdistance function. The minimization process for computingthe AG distance is implemented by associating the local dis-tance function with the tensor speed function that controlsthe wave propagation of a convex Hamilton–Jacobi (H–J)equation solver. We propose two different, but related met-rics for the tensor speed function, a curvature tensor and adifference curvature tensor. The distribution of these tensorspeed functions over the surface determines the surface’sAG distance. We present properties of this AG distance map,including both parameterization and uniform scaling invari-ance. Finally, the geodesic path between two points on thesurface is computed by backtracking from a specified targetpoint toward the seed point, while traveling on the surfacein the direction given by the AG distance gradient.

The effectiveness of the proposed AG distance as a shapediscriminator is shown for two applications, surface seg-

Page 3: Curvature-based anisotropic geodesic distance computation

Anisotropic Distance Computation 745

Fig. 2 An overview of the anisotropic distance map computations.(a) Input parametric surface and a seed point (marked as a red cir-cle). (b), (c) Anisotropic distance map (distance grows from blue to

red). The anisotropic speed is given using a curvature tensor function.(d) Equidistance contours

mentation and partial shape matching. Local shape clus-ters are defined and the surface is segmented into a groupof meaningful subregions by clustering together finer shapeclusters that have similar variances of curvature distributionrelative to their surroundings. The anisotropic variance ofcurvature tensors is analyzed inside the segmented regionsand the partial matching problem is reduced to an eigen-analysis problem for the anisotropic distributions.

To compute the AG distance on implicit surfaces, we de-fine a 3-D tensor on the iso-surfaces of interest. The 3-Dtensor is computed using principal curvatures and principalcurvature directions of the iso-surfaces. We also solve the3-D version of the H–J equation to compute shortest dis-tance path between points on the iso-surfaces. To solve theH–J equation efficiently, the geodesic distance is computedin a band surrounding the implicit iso-surfaces in the em-bedding space, thereby performing all the computations in arestricted Cartesian grid.

Our main contributions are:

– Two different, but related tensor speed functions, curva-ture tensor and curvature difference tensor, whose distri-butions determine two different anisotropic geodesic dis-tances.

– A unified approach for computing curvature tensor-basedAG distance both on parametric and implicit surfaces.

– An effective demonstration of the AG distance maps as ashape discriminator in two applications, multi-level datasegmentation and rotation-invariant system for measuringsimilarities between 3D models.

The rest of this paper is structured as follows. Section 2reviews existing approaches, highlighting some of the re-lated work on surface segmentation and shape matching.Section 3 describes the proposed method, and in Sect. 4, two

metrics for defining tensor speed function are presented. InSect. 5, the efficacy of our method is demonstrated in twoapplications, data segmentation and partial shape matching,on several parametric models. Section 6 presents an ex-tended algorithm for implicit surfaces and path computationis demonstrated. Section 7 summarizes our results.

2 Related work

Geodesic computation on implicit surfaces In [31], theauthors presented a computationally optimal algorithm forcomputing intrinsic weighted distance functions. They havealso provided theoretical results justifying the approach thatcomputes intrinsic distance functions in an offset boundaround the given iso-surfaces. Although they showed that itcan be extended to solve a more general class of H–J equa-tions, they mainly considered an isotropic metric. Recently,an efficient computational solver for isotropic eikonal equa-tions on parametric 3-D manifolds was presented in [7].

Shape segmentation Many existing schemes can be clas-sified as analysis, simplification, modeling or retrieval [52].We review research relevant to our work. Several approachesuse discrete curvature analysis combined with the watershedalgorithm [30, 34, 39]. In the same way, Zhang et al. [53]used the sign of the Gaussian curvature to mark boundariesand process data segmentation. These methods extract onlyregions surrounded by high-curvature boundaries. A classi-fication-based method allows detection of simple curvaturetransitions [18]. Most of these cited approaches, however,do not consider anisotropic distribution of shape properties.

(Partial) matching The most common approach to shape-based retrieval of 3D objects is to represent every object

Page 4: Curvature-based anisotropic geodesic distance computation

746 J.-K. Seong et al.

by a single global shape descriptor characterizing its over-all shape, e.g., shape histograms [2] and the light fielddescriptor [9]. These methods are suitable for a globalmatching. Recently, several researchers have investigatedapproaches to partial matching based on feature correspon-dences [3, 15, 17, 23]. Their general strategy is to computemultiple local shape descriptors for each object, each repre-senting the shape for a region centered at a point on the sur-face. The challenge of these methods is to find an optimal setof feature correspondences efficiently. Our approach in thiswork is to find local shape clusters based on the anisotropicshape distribution and match clusters by measuring similar-ities of curvature-based anisotropic tensors. Implications ofanisotropy on shape matching were considered in [26], find-ing a global anisotropic scale. In this paper, we consider lo-cal properties of the anisotropic distribution.

3 Anisotropy-guided distance function

In this paper, we solve the H–J equation over a grid of pointssampled from the surface. For parametric surfaces, we solvethe H–J equation on the parametric domain U ⊂ R2, whilea 3-D grid is used for implicit surfaces. Since our approachis applicable to sampled grids, the main idea of this workcan be extended to other geometric representations, such aspoint surfaces and triangular meshes, for which the curva-ture tensor can be computed.

3.1 Anisotropic geodesic distance

We define local distance as a function of both the surfacepoint and the unit direction in its tangent plane. The localdistance function is then used to define a speed function tocreate a convex Hamilton–Jacobi equation.

Given a curve c : [a, b] → S , where S is a surface in R3,we define the total distance of c as

L(c) =∫ b

a

ψ(c(t), T (t)

)dt, (1)

where T (t) = c′(t)/‖c′(t)‖ is the unit tangent vectorof c [21]. Since c is on the surface, T (t) is in the tangentplane at the point c(t). The total distance is defined as theintegral of a local distance function, ψ : S ×S1 → R, whereψ(x, v) gives the velocity of moving in the unit direction v

on the tangent plane of x from the point x ∈ S . Note that thelocal distance of moving from the point x varies accordingto the associated direction v ∈ S1. The anisotropic geodesiccurve between c(a) and c(b) on a surface is defined as acurve c that minimizes the total distance L(c).

A variety of local distance functions ψ that incorporatetangents have been proposed, e.g. [36]. In this paper, weuse a quadratic (bilinear) local distance function in the H–J

framework that controls the motion of the wavefront usingthe tensor speed functions M as

ψ(x, v) = vT M(x)v, (2)

where M(x) is a symmetric, positive-definite matrix definedat each x ∈ S . Thus, the local distance function at the pointx is controlled by the speed function M(x) of the H–J for-mulation in an anisotropic way. By using anisotropic ten-sors, added surface properties can be incorporated into thedistance function. For example, geodesics on the parametricsurface can be computed using the surface metric [6]. In ourwork, we employ curvature-based tensor to capture subtlesurface features, although the approach is suitable for arbi-trary tensors defined through M .

Let R1 ⊂ S and Cx,R1 = {c : [0,1] → S : c(0) ∈ R1 andc(1) = x}, and let g(x) = minc∈Cx,R1

{L(c)}. Then, we definethe convex H–J equation using g(x) by

H(∇g,x) =√

(∇g)T M(x)(∇g) = 1, ∀x ∈ Ω, (3)

where Ω ⊂ Rn, g(x) is the travel time or distance from thesource, and M is the speed tensor matrix defined on Ω . Forthe parametric case, we use the Hamiltonian:

H(p,q) =√

ap2 + cq2 + 2bpq,

M =[

a b

b c

], p = ∂H

∂u, q = ∂H

∂v

where p and q are partial derivatives of H at x along localaxis u and v, and a, b and c are the shown elements of thematrix M [45]. For implicit surfaces, the Hamiltonian is

H(p,q, r) =√

ap2 + dq2 + f r2 + 2(bpq + cpr + eqr),

M =⎡⎣a b c

b d e

c e f

⎤⎦ , p = ∂H

∂x, q = ∂H

∂y,

r = ∂H

∂z.

When M is an identity matrix, (3) becomes the eikonal equa-tion. The idea behind the H–J equation is that the eigen-values and eigenvectors of the tensor M define the prop-agation direction and speed anisotropically. Therefore, bymanipulating the eigensystem of the tensor matrix usingsurface properties, e.g., curvatures and principal directions,anisotropic geodesic distance can be defined to better revealthe local shape of the surface.

The difference between the measured geodesic distancesusing a traditional isotropic metric (i.e. constant in every di-rection) and the anisotropic speed functions should be con-sidered carefully. To compute geodesics on parametric sur-faces, [6] used a metric tensor, G = J tJ , where J denotes

Page 5: Curvature-based anisotropic geodesic distance computation

Anisotropic Distance Computation 747

the Jacobian matrix of the surface parameterization, to de-fine isotropic eikonal equation as follows:

‖∇Gt‖2 = ∇Tu tG(u)−1∇ut = 1.

Here, as a function of the parameterization map, the matrixG determines how the isotropic speed function is mappedfrom the parameter domain U ⊂ R2 into the 3-D surface.In our work, we solve the H–J equation that incorporates ageneral tensor matrix M .

Figure 1 shows an example of solving the H–J equationusing two different speed functions. A constant speed atevery surface vertex is used in Fig. 1(a) and isolines are com-puted based on the usual isotropic geodesic distance. Fig-ure 1(b) represents isolines using the anisotropic curvaturetensor as metric (see Sect. 4 for details on curvature tensor).As shown in Fig. 1(b), the anisotropic geodesic computationhas potential for use in shape analysis. Figure 1(c) shows asimple surface with two different geodesic paths connectingtwo points on the surface. In Fig. 1(c), the magenta curve isfrom an isotropic distance metric, and the computed short-est path follows geodesics. However, the anisotropic tensormatrix M(x) in (2) using normal curvature yields a differentshortest path. The new path is shown as red colored lines inFig. 1(c) and intuitively it minimizes an integral of curvaturealong the curve.

Constructing the shortest path between two points on asurface is the process of minimizing the length of a curve,as defined in (1). The AG distance map constructed as inSect. 3.1 gives all paths emanating from a region R1 ⊂ S .The map is a height field over S , where the height at thepoint x is given as a total distance from the start region R1

to x. Let P (x) denote the shortest path beginning in the re-gion R1 and terminating at the point x. Then, P (x) can becomputed by following the gradient field of the height fieldstarting from the point x. Geodesic paths in Fig. 1(c) arecomputed using the above gradient field tracing method.

3.2 Solving H–J equation

Hamilton–Jacobi equation solvers introduced in [5, 38, 44,50] can be used to solve (3). In this paper, we use the Fast It-erative Method (FIM) [22] that solves the Hamilton–Jacobiequation using an adaptive iterative method without usingthe expensive sorting data structures in [38, 44]. The FIMemploys a narrow band, called the active list, to store onlythe grid nodes to be updated, which differs from the globalupdate scheme used in [50]. For each iteration, all nodesin the active list are updated concurrently using a Jacobiupdate, and the list is reorganized, i.e., removal or inser-tion of nodes to the list, based on the convergence of thenode. The Godunov upwind method to compute solutionsfor (3) uses only adjacent neighbors and therefore maps bet-ter to SIMD architectures than local optimization methods

to solve Hamilton–Jacobi–Bellman equation as proposedin [5]. Because we use a Jacobi update, porting to parallelarchitectures is simple and efficient.

The FIM algorithm has two phases: initialization and up-date. During the initialization, all source points are collectedinto the active list L, and the initial solutions are set accord-ingly (source points are set to zero, and non-source pointsare set to a large number). During the update, for everypoint x ∈ L we compute the new solution by solving (3) andcheck convergence. Converged points are removed and theirneighbors are added to L if further updates are needed. Thisprocess is repeated until L becomes empty. Implementationdetails can be found in [22].

4 Curvature-based tensor functions

In this section, we define two tensor metrics, the CurvatureTensor and the Difference Curvature Tensor. We focus ourattention on the parametric surfaces in this section, whileSect. 6 considers their extension to implicit surfaces.

We define a local surface cluster as a point p on the sur-face and an associated surface patch of local neighborhoodof p. The key idea is that a small set of clusters can representa shape, provided that each cluster effectively represents thelocal surface region around it.

Definition 1 A local shape cluster, Dε(p), is defined as aseed point p on a surface and the set of all points on thesurface that are within an ε-anisotropic geodesic distancefrom the seed point p.

Although M(x) can be arbitrary, we use the curvature-based tensor function for shape analysis since the curvatureinformation encodes rich surface features [37].

4.1 Curvature tensor

The curvature tensor at a point x on a surface is defined bya directional curvature in all directions. We define a speedfunction at the point using a curvature tensor as

s(x, v) = 1

δ + |κ(x, v)| ,

where κ(x, v) is the normal curvature in the v-direction ofthe surface at x and δ > 0 is a small positive real value. Letv1 and v2 be the two independent principal curvature direc-tions and κ1 and κ2 be the corresponding principal curva-tures, respectively. Since S is defined by a smooth mapping,those quantities can be computed exactly. Now, the tensormatrix MC for (3) can be defined as

MC = [v1 v2

][s(x, v1) 0

0 s(x, v2)

][vT

1

vT2

]. (4)

Page 6: Curvature-based anisotropic geodesic distance computation

748 J.-K. Seong et al.

Fig. 3 A set of local surface clusters covers the surface model. Al-though the geodesic distance range, ε, is the same for all of the clus-ters, they adaptively cover the surface patch according to the curvaturetensor distribution

This representation adapts to the surface geometry as it isdefined based on the geodesic distance which is controlledby directional curvature of the geometry. Smooth regionscan be represented by a relatively small number of clusters,since each subsurface associated with its seed point can lo-cally cover a large region. In contrast, the wave propaga-tion becomes much slower in a high-curvature region, andso relatively many local clusters are required to representsuch a region. Figure 3 shows two examples of local surfaceclusters. In this example, the geodesic distance is calculatedbased on the anisotropic curvature tensor. Thus, the localcluster in a low curvature region includes much larger sur-face than in a high-curvature region. Note that the geodesicrange, ε, is the same for all of the clusters.

The AG distance is a function of the tensor distributionover the surface ((1) and (2)). The curvature tensor is com-puted using intrinsic properties of the surface and so dependonly on the local shape of the geometry. Therefore, the localshape clusters are parameterization-independent. Note thatour approach computes the AG distance over a parameteri-zation dependent grid. Thus, we assume high enough sam-pling rate to capture features.

4.2 Difference curvature (DC) tensor

A second tensor distribution for the anisotropic geodesic cal-culation is presented, that is based on anisotropic local dif-ference of the curvature tensor. Derivatives of curvature havebeen used to characterize interesting surface features suchas creases [51] and suggestive contours [12]. The differenceof curvature tensors tends to be minimized along such fea-tures. Inspired by this observation, we propose a DC tensorapplicable for gridded data and used with the H–J solver.

Suppose that the surface S is defined over the parametricdomain U ⊂ R2, u = (u1, u2) ∈ U . Then, a surface pointx has four neighbors in U along each iso-parametric di-rection, u+

1 , u−1 , u+

2 , u−2 . Let the curvature tensor (CT) at

Fig. 4 Given a curvature tensor (a), the DC tensor is computed usingthe tensor similarity measure in (5) (b). Red arrows in (b) represent theweighted vectors, l+i u+

i , l−i u−i , i = 1,2

the point x be CTx and at its four neighbors CTu+1 , CTu−

1 ,CTu+

2 , CTu−2 , respectively. Figure 4(a) shows CTx and its

four neighbor curvature tensors. Since a curvature tensor issymmetric along its principal directions, it is represented asan ellipse in Fig. 4.

We measure the difference of curvature tensors alongeach iso-parametric direction and associate it with its corre-sponding unit direction vector. The difference between twotensor quantities, D1 and D2, can be measured using [1]

d(D1,D2) =√

trace[(D1 − D2)2

]. (5)

The expression inside the radical is equivalent to the sum ofthe squared differences of the elements on the diagonal ofthe two diffusion tensor matrices.

For the u+1 iso-parametric direction, a scalar weight l+1 =

d(CTx ,CTu+1 ) is computed using (5) and multiplies the unit

direction vector, u+1 . Then, a 4 × 2 matrix T (x) is con-

structed,

T (x) =

⎡⎢⎢⎢⎢⎣

l+1 u+1

l−1 u−1

l+2 u+2

l−2 u−2

⎤⎥⎥⎥⎥⎦ .

Finally, we define the DC Tensor using the eigenvalues andeigenvectors of the 2 × 2 covariance matrix of rows of T (x)

(T T T ). The geometric meaning of this definition determinesthe similarity or difference of the curvature tensor from itsneighbors. Figure 4(b) represents the DC tensor at the pointx where its neighbor curvature tensors are given by Fig. 4(a)and red arrows represent the weighted unit direction vectors.

Let the eigenvalues and eigenvectors of the covariancematrix of T (x) be gi and wi, i = 1,2, respectively. Then thetensor matrix M needed in (3) can be computed as:

MDC = [w1 w2

][ 1δ+|g1| 0

0 1δ+|g2|

][wT

1

wT2

]. (6)

Page 7: Curvature-based anisotropic geodesic distance computation

Anisotropic Distance Computation 749

Fig. 5 The geodesic paths under various distance metrics: isotropicEuclidean distance metric (red) and anisotropic MC metric (blue) (a),and the MC metric (red) and the Difference Curvature MDC metric(blue) (b)

We use 1/(δ+|gi |), i = 1,2, in the tensor matrix MDC sincethe wave propagation needs to be slow along the direction ofhigh difference in the curvature tensors. The key idea behindthis new tensor function is that it can be used to measure theamount of anisotropic changes in curvature tensors, whichcan give a better metric for both shape segmentation andmatching.

Curvature of surfaces varies with (uniform) scaling.Thus, in our experiments, the anisotropic geodesic distancebetween two points on a surface is different at two differentscales when using a curvature tensor as a metric. The DCtensor, however, is calculated by considering the similarityof curvature tensors in its surroundings. In our experiments,the DC tensor results in a uniform-scale independent met-ric. An illustrative example for this property is presentedin Sect. 5.2, where the DC tensor is applied to the partialsurface matching. Note that the size of each model in thematching application is different to each other.

Figure 5 shows an example of AG paths under variousdistance metrics. In Fig. 5(a), two geodesic paths were com-puted using isotropic Euclidean metric (red) and the Curva-ture Tensor MC metric (blue). The AG path tends to followsurface features since it is hard to cross high-curvature re-gion. In Fig. 5(b), the DC tensor is compared with the Curva-ture Tensor. In Fig. 5(b), anisotropic geodesic path (blue) un-der the DC tensor minimizes the curvature variation, whilered curve tends to minimize normal curvature under the MC

tensor.

5 Shape analysis applications

In this section, we demonstrate the effectiveness of the pro-posed AG distance as a tool for shape analysis. All the ex-periments are tested on a PC equipped with a Intel Core 2

Duo 1.6 GHz CPU with 2 GB of memory. Parametric sur-faces are uniformly sampled resulting in a 100×100 regulargrid.

5.1 Multi-level data segmentation

The anisotropic local shape clusters defined in Sect. 4 areapplied to multi-level data segmentation. In the followingsection, we construct the local shape clusters. The surface issegmented into a group of meaningful subregions by clus-tering smaller clusters that have a similar curvature tensorrelative to their surroundings or have a similar variance ofcurvature tensors.

To generate a rather small and yet effective set of lo-cal surface clusters, our method uses multi-level represen-tations to hierarchically define the local shape clusters. Wefirst sort the surface sample points according to applicationspecific criteria. In our experiments, the absolute value of theGaussian curvature (for the curvature tensor function) andg1 ×g2 (for the DC tensor function) are used for the ascend-ing order sorting. The first vertex in the sorted list is pickedas a seed point. Then, the anisotropic wave is propagateduntil the anisotropic geodesic distance reaches a predefinedε0 value. All the vertices included in the local cluster arethen excluded from the sorted list, and the iterative processcontinues to define the next cluster and a list, A, is createdcontaining the seed points for each cluster.

When the remaining sample point list is empty, the H–Jequation solver is run once again from each seed pointd ∈ A. A generalized Voronoi diagram is then computedon the surface with an AG distance as the metric. Since thewave propagation speed depends on the distribution of cur-vature tensors or DC tensors, boundaries of the computedVoronoi diagram occur along geometric features, such asridges and valleys (see Fig. 3 utilizing the curvature tensor).For a finer resolution, we repeat the process within a localshape cluster using a new εi , i = 1, . . . , n, for a n-level hier-archy where ε0 > ε1 > · · · > εn.

Our segmentation approach is a clustering-based datasegmentation method, similarly to other segmentation algo-rithms such as [11, 29]. Results of data segmentation usingthe curvature tensor are shown in Fig. 3. For each exam-ple, seed points are selected using Gaussian curvatures andwe use half of the maximum of the geodesic distances fromthe seed point to all points on the surface as an anisotropicgeodesic distance ε in the calculation of local shape clus-ter, Dε . Figure 6 shows more complex examples that seg-ment surfaces into a set of perceptually meaningful subre-gions. In Fig. 6, (a) and (b), the segmented subregions aredisplayed using different colors. In Fig. 6(a), the clusteringwas computed under the isotropic Euclidean metric, whilethe anisotropic metric MC was used in Fig. 6(b). The seedpoints for each cluster are shown in black dots. In Fig. 6(c),

Page 8: Curvature-based anisotropic geodesic distance computation

750 J.-K. Seong et al.

Fig. 6 The clustering-based surface segmentation examples. The seg-mentation was computed under isotropic Euclidean metric (a) andanisotropic MC metric (b). Black dots represent seed points for eachsubregion. A cactus model was segmented using anisotropic MC met-ric (c)

one more example of surface segmentation is presented. Forthe experiments in Fig. 6, we used mesh surfaces after a pa-rameterization.

A small perturbation of seed point does not affect the seg-mentations for the example of Fig. 6. We perturbed the or-dering of seed points generated by the Gaussian curvature-based selection scheme, and it resulted in the same segmen-tation due to high curvature changes along the boundariesof the segmented regions. Some surfaces are susceptible tothe position of seed points, such as the extreme example ofa surface generated as two half-cylinders with different radiias in Fig. 8(a). Two seed points (black dots) in Fig. 8(a) re-sult in a not-meaningful segmentation when using the cur-vature tensor as a metric. Figure 8(c) shows the distributionof curvature tensors represented as an ellipsoid. The sizes ofthe tensor are slightly different in the two parts of the shape.Even in this example, however, the DC tensor works prop-erly (Fig. 8(b)) since it considers how the curvature tensorsdiffer from each other. In Fig. 8(d), note that DC tensorsalong the boundary of two parts of the compound cylinderare small relative to their surroundings, which means a se-vere reduction in the wave propagation speed.

5.2 Anisotropy distribution-based similarity measure

The curvature tensor CTx at the surface point x locally de-scribes the characteristics of a shape around x. Thus, if twodifferent points, x1 and x2, on the surface have similar cur-vature tensors, they resemble each other locally. This can beregarded as an anisotropic version of the surface point clas-sification that classifies the point into three classes—elliptic,hyperbolic and parabolic points—according to the isotropicGaussian curvature. Based on this observation, we extendthe similarity of two points into the measuring of similar-ity between two surface clusters: similar distribution of cur-vature tensors in two clusters implies that their shapes aresimilar.

Fig. 7 Plotting of λC for several examples: ant and bishop model (seeFig. 9, (c) and (d)); two instances of the character G (see Fig. 9, (a) and(b)); two differently parameterized knight models

Let x be a point on the subsurface S . Consider the sim-ilarity of the curvature tensor CTx to its four neighbors,l+/−i = d(CTx,CTu

+/−i ), i = 1,2, computed using (5).

A four-dimensional vector is constructed for a point x:

vx = (l+1 , l−1 , l+2 , l−2 ).

Now, define NS as an m × 4 matrix each of whose rowsis the vx for all x ∈ S , and m is the number of samplepoints in S . Let CS be the 4 × 4 covariance matrix of NS .Then, the sorted eigenvalues, λC = (λC

1 , λC2 , λC

3 , λC4 ), and

the corresponding eigenvectors of CS are analyzed. Thefour-dimensional vector λC is a rotation-invariant represen-tation of the subsurface S and, also, it is parameterization-independent since the AG distance map is.

In order to perform a partial matching between parts ofsurfaces, we first segment the surface into a set of meaning-ful subparts. As in Sect. 5.1, the partitioning is accomplishedbased on the anisotropic tensor distribution. The segmentedsubparts are then analyzed using the proposed method inthis section, therefore yielding a sorted eigenvalue repre-sentation λC . The λC for each subsurface are compared,by graphing or otherwise to assess their similarity. Figure 9shows one example for partial matching of two instances ofthe character G with different shapes and sizes. The charac-ters are generated by sweeping a space cross section (yellowcurve in the bottom of the figure), along a space trajectory.Note that two cross sections in Fig. 9, (a) and (b), are differ-ent. Same colors in Fig. 9, (a) and (b), represent a matchedpair.

Figure 7 plots the pair (λC1 , λC

2 ) from λC , the two biggesteigenvalues. We measured partial similarities for five pairsof objects. In Fig. 9, (c) and (d), a tail of an ant body andsubpart of the bishop model are matched. We also mea-sured the similarity for two knight models that have the

Page 9: Curvature-based anisotropic geodesic distance computation

Anisotropic Distance Computation 751

Fig. 8 The results of segmentation for a surface generated from two cylinders with different radii. (a) Curvature tensor. (b) DC tensor. A distrib-ution of tensors are shown in (c) and (d)

Fig. 9 Two examples of partial matching. Same color represents matched subsurfaces

same geometry but different parameterizations, and hencedifferent sample points are chosen. The result of plottingshows very well how similar objects are mapped to simi-lar spots and form groups. Note that if we use a full vectorλC = (λC

1 , λC2 , λC

3 , λC4 ) instead of two largest values, then

grouping of plotting becomes more visible. The runningtime of H–J equation solver is from 0.4 s to a few seconds.Computing the similarity measure between subparts of sur-faces took 0.15 s to several seconds.

6 Anisotropic geodesic distance on implicit surfaces

In this section, the curvature-based tensor is extended to im-plicit surfaces. In sampled volume data, surfaces are implic-itly represented as iso-surfaces of reconstructed continuousfunction f (x, y, z). We measure the curvature informationfrom the iso-surfaces defined as f (x, y, z) = c for someconstant c, and compute the anisotropic geodesic distanceon the iso-surfaces using the extended curvature tensor.

6.1 Curvature tensor for implicit surfaces

Assume that the iso-surface of interest is the zero-level setof a continuous function f (x, y, z). That is, f implicitlydefines a locus where {x = (x, y, z) ∈ R3 : f (x) = 0}. Oursystem specifically targets volume data, such as distance

fields [32], a set of discrete values defined over a regularlattice.

We first construct a continuous, differentiable implicitfunction from the discrete grid by convolving the data withreconstruction kernels. The choice of reconstruction kernelis based on the application type. Our method utilizes a cubicB-spline for approximating volume data [32]. Therefore, theimplicit function f is represented by NURBS basis func-tions, so that we can accurately compute all the necessarypartial derivatives for curvature measurement.

Now given a curve c : [a, b] → S , where S is an iso-surface in R3, similarly to Sect. 3.1, the total distance of c

is defined as (1). The tensor speed functions M control thelocal distance functions ψ ,

ψ(x, v) = vT M(x)v,

where M(x) is a symmetric, positive-definite matrix definedat each x ∈ S using the curvature information computedfrom the volume data. Note that the speed tensor M is now3 × 3 matrix, while we used a 2×2 matrix MC and MDC inthe case of parametric surfaces.

The anisotropic speed along v-direction at the surfacepoint x is computed using a normal curvature as

s(x, v) = 1

δ + |κ(x, v)| ,

Page 10: Curvature-based anisotropic geodesic distance computation

752 J.-K. Seong et al.

where κ(x, v) is the normal curvature in the v-direction ofthe iso-surface at x and δ > 0 is a small positive real value.The basic idea of the speed function s(x, v) is still that of aminimum speed along high-curvature direction and a maxi-mum speed along low curvature direction of the iso-surface.Then the tensor M is defined using principal curvatures andprincipal curvature directions,

MV = [v1 v2 v3

]⎡⎣ s(x, v1) 0 0

0 s(x, v2) 00 0 s(x, v3)

⎤⎦

×⎡⎢⎣

vT1

vT2

vT3

⎤⎥⎦ , (7)

where vi , i = 1,2 are principal curvature directions and

s(x, vi) = 1

δ + |κi(x)| ,

for κi(x), i = 1,2, are principal curvatures at the point x.Here, v3 = v1 × v2, or equivalently v3 = ∇f (x)/‖∇f (x)‖.And s(x, v3) = ε 0, since we propagate the wave on theiso-surfaces.

6.2 Computing curvature-based distance

As defined in (7), the tensor speed function MV requiresprincipal curvatures and principal curvature directions ofimplicit surfaces. Assuming that the values of f are pos-itive inside objects of interest, the surface normal is de-fined as n = −g/|g|, with the gradient g = [ ∂f

∂x∂f∂y

∂f∂z

]T =[fxfyfz]T . The curvature measurement algorithm is basedon ∇nT , a 3 × 3 matrix [4, 28]:

∇nT = −∇(

gT

|g|)

= − 1

|g|(I − nnT

)H = − 1

|g|PH,

where I is the identity matrix, P = I − nnT and H is theHessian matrix:

H =⎡⎣fxx fxy fxz

fxy fyy fyz

fxz fyz fzz

⎤⎦ .

Now a geometry tensor G is computed as [28],

G = ∇nT P = ∇nT

⎡⎣1 0 0

0 1 00 0 0

⎤⎦ =

⎡⎣κ1 0 0

0 κ2 00 0 0

⎤⎦ .

Computing the geometry tensor G has the effect of isolat-ing κ1 and κ2 from the 3×3 matrix ∇nT . Finally, the two

principal curvatures can be computed from the trace T andFrobenius norm F = √

trace(GGT ) of G:

κ1 = T + √2F 2 − T 2

2, κ2 = T − √

2F 2 − T 2

2.

The principal curvature directions, v1 and v2, are easilyfound as eigenvectors of G.

Given the reconstructed implicit function f , the curva-ture tensor MV (7) can be computed at the point x on theiso-surfaces using the measured curvature information. Nowwe compute the AG distance on the implicit iso-surfaces bysolving the H–J equation. For details on the 3-D H–J solver,refer to Sect. 3.2.

Since we compute the AG distance on the specific iso-surfaces in the embedding 3-D space, the intrinsic AG dis-tance is approximated in a band surrounding the implicit iso-surface. That is, the 3-D H–J equations are solved only inthe band and all the other points are skipped. We first con-sider a small h offset of the iso-surfaces. Since the implicitfunction f is a distance transform, with the iso-surfaces asits zero-level set, we consider all points x in R3 for which|f (x)| ≤ h. This gives a region in R3 with boundaries. Wethen apply the modified 3-D H–J solver in Sect. 3.2 forcomputing the AG distance inside this h-band surroundingthe iso-surfaces. The work presented in [31] approximatesthe intrinsic geodesic distance on implicit hyper-surfaces bycomputing the Euclidean distance in a Cartesian grid de-fined on the h-band surrounding the hyper-surface. In [31],however, isotropic metrics are considered with a possiblyextended weight which is a function of the mean curva-ture. Our curvature tensor is more general to represent theanisotropic curvature distribution of the iso-surfaces.

The curvature tensor is computed on the sampled 3D gridand thus, it is not exactly located on the iso-surfaces. How-ever, since we restrict the AG distance computation to theh-band surrounding the iso-surfaces, the approximated dis-tance converges to the real intrinsic one if h goes to zero.In [31], this is theoretically proved.

6.3 Experimental results

Two types of experimental results are presented. First areseveral examples of the curvature-based AG distance mapfor implicit surfaces. Then, AG paths between points on theiso-surfaces are computed using the AG distance.

Figure 10 shows the AG distance map on a mouse boneand a human brain model. In this figure, the distance func-tion is rendered according to the relative distance from theseed point from blue to red. The presented curvature tensoris used for Fig. 10, (a) and (c), while the comparison withthe isotropic metric is shown in Fig. 10(b). The differenceis more vivid in high-curvature region, in this example, near

Page 11: Curvature-based anisotropic geodesic distance computation

Anisotropic Distance Computation 753

Fig. 10 The curvature tensor-based AG distance map on the mouse bone model (a) and the human brain model (c). (b) The proposed anisotropicmetric is used (up), while the isotropic metric is used (down). Blue and red represent “close to” and “far from” the seed point, respectively

Fig. 11 The geodesic curve iscomputed between two pointson the iso-surfaces: thepresented anisotropic metric isused for cyan color, while theisotropic metric is used formagenta color

the red region. In Fig. 10(b), the upper image shows the re-sult with the proposed anisotropic tensor function, while thelower one is computed using the isotropic metric. The AGdistance better shows narrow high-curvature regions.

Figure 11 shows a curvature-based AG path between twopoints on the iso-surfaces. To find AG paths on the im-plicit surface, we backtrack starting from a specified tar-get point toward the seed point, while traveling on the sur-face in the direction given by the negative AG distancegradient. In Fig. 11, we compare two geodesic curves com-puted with the anisotropic tensor metric and the one com-puted with isotropic metrics. The curve with cyan colorrepresents the AG path, while the magenta-colored curveshows the isotropic geodesic curve. In Fig. 11(b), a veryclear difference exists between both trajectories. The AG

path computed using the curvature tensor function makesits way through directions where the integral of curvatureis minimized. This example shows a potential applicationof the proposed AG distance to shape analysis of volumedata.

For the experimental results in this section, a 106 × 73 ×81 and 149 × 188 × 148 volume data sets were used for themouse bone and the brain model, respectively. All implicitfunctions are reconstructed using cubic B-spline functions.For solving the H–J equation, a sampled 200 × 200 × 200grid is used. The 3-D H–J equation solver took from 5 to 31seconds to compute the AG distance and a few seconds forbacktracking the geodesic curves on the implicit surfaces.The experiments are tested on a PC equipped with a IntelCore 2 Duo 1.6 GHz CPU with 2 GB of memory.

Page 12: Curvature-based anisotropic geodesic distance computation

754 J.-K. Seong et al.

7 Conclusions and future work

We have presented a method for computing the anisotropicgeodesic distances on both parametric and implicit surfaces.The anisotropic geodesic (AG) distance between points onthe surface is newly defined using curvature-based ten-sors and then calculated by solving a general anisotropicHamilton–Jacobi equation. The curvature tensor and DCtensor are proposed as metrics for AG distance computation,and the curvature tensor is shown to be parameterization-independent and the DC tensor is uniform-scale indepen-dent. The AG distance is then applied to compute localshape clusters that provide a meaningful data segmentation.For each segmented subsurface C, the tensor distributionis analyzed to yield a representative vector, λC , containinga rotation-invariant signature. A partial matching betweensegmented subsurfaces (clusters) is accomplished by com-paring their signatures, λC . The efficacy of the proposed ap-proach is demonstrated on several models.

We further extended our approach to implicitly definediso-surfaces. The 3-D curvature tensor was defined in a bandsurrounding the iso-surfaces and the AG distance is com-puted on the implicit surfaces by solving 3-D H–J equations.The new AG path between two points on the iso-surfacetraces along a direction of minimal curvature instead of theconventional geodesic distance.

For a future work, we are extending the new AG dis-tance to a shape analysis of implicit iso-surfaces in medialimaging and investigating another method for selecting seedpoints in data segmentation. We can devise more complexbut effective selection methods that seem suitable for spe-cific applications. Extending the domain of input surfaces totriangular meshes and point-based surfaces is another possi-ble direction.

Acknowledgements This work was supported in part by Brain Ko-rea Project, the school of Information Technology, KAIST in 2009,NSF (CCF0541402), ExxonMobil Upstream Research Company, andan NVIDIA fellowship. All opinions, findings, conclusions or recom-mendations expressed in this document are those of the author and donot necessarily reflect the views of the sponsoring agencies.

References

1. Alexander, D.C., Gee, J.C.: Elastic matching of diffusion tensorimages. Comput. Vis. Image Underst. 77(9), 233–250 (2000)

2. Ankerst, M., Kastenmller, G., Kriegel, H.P., Seidl, T.: 3d shapehistograms for similarity search and classification in spatial data-bases. In: SSD’99, pp. 207–226. Springer, Berlin (1999)

3. Belongie, S., Malik, J., Puzicha, J.: Matching shapes. ICCV 01,454 (2001)

4. Belyaev, A.G., Pasko, A.A., Kunii, T.L.: Ridges and ravines onimplicit surfaces. In: CGI’98, p. 530. IEEE Comput. Soc., LosAlamitos (1998)

5. Bornemann, F., Rasch, C.: Finite-element discretization of staticHamilton–Jacobi equations based on a local variational principle.Comput. Vis. Sci. 9(2), 57–69 (2006)

6. Bronstein, A.M., Bronstein, M.M., Devir, Y.S., Kimmel, R.: Par-allel algorithms for approximation of distance maps on parametricsurfaces. Technical Report (2007)

7. Bronstein, A.M., Bronstein, M.M., Kimmel, R.: Weighted dis-tance maps computation on parametric three-dimensional mani-folds. J. Comput. Phys. 225(1), 771–784 (2007)

8. Chen, J., Han, Y.: Shortest paths on a polyhedron. Int. J. Comput.Geom. Appl. 6(2), 127–144 (1990)

9. Chen, D.Y., Ouhyoung, M., Tian, X.P., Shen, Y.T., Ouhyoung, M.:On visual similarity-based 3d model retrieval. In: Eurographics,pp. 223–232. Granada, Spain (2003)

10. Cheng, S.W., Na, H.S., Vigneron, A., Wang, Y.: Approximateshortest paths in anisotropic regions. In: SODA’07, pp. 766–774.Philadelphia, PA, USA (2007)

11. Cohen-Steiner, D., Alliez, P., Desbrun, M.: Variational shape ap-proximation. In: SIGGRAPH’04: ACM SIGGRAPH 2004 Pa-pers, pp. 905–914. ACM, New York (2004). http://doi.acm.org/10.1145/1186562.1015817

12. DeCarlo, D., Finkelstein, A., Rusinkiewicz, S., Santella, A.: Sug-gestive contours for conveying shape. ACM Trans. Graph 22(3),848–855 (2003)

13. Du, Q., Wang, D.: Anisotropic centroidal Voronoi tessellationsand their applications. SIAM J. Sci. Comput. 26(3), 737–761(2005)

14. Elad, A., Kimmel, R.: On bending-invariant signatures for sur-faces. IEEE Trans. Pattern. Anal. Mach. Intell. 25(10), 1285–1295(2003)

15. Funkhouser, T., Shilane, P.: Partial matching of 3d shapes withpriority-driven search. In: Proceedings of Symposium on Geome-try Processing, pp. 131–142 (2006)

16. Funkhouser, T., Kazhdan, M., Shilane, P., Min, P., Kiefer, W., Tal,A., Rusinkiewicz, S., Dobkin, D.: Modeling by example. ACMTrans. Graph 23(3), 652–663 (2004)

17. Gal, R., Cohen-Or, D.: Salient geometric features for partialshape matching and similarity. ACM Trans. Graph 25(1), 130–150(2006)

18. Guillaume, L., Florent, D., Atilla, B.: Curvature tensor-based tri-angle mesh segmentation with boundary rectification. In: CGI’04,pp. 10–17. IEEE Comput. Soc., Los Alamitos (2004)

19. Hilaga, M., Shinagawa, Y., Kohmura, T., Kunii, T.L.: Topologymatching for fully automatic similarity estimation of 3d shapes.In: SIGGRAPH’01, pp. 203–212. ACM, New York (2001)

20. Hofer, M., Pottmann, H.: Energy-minimizing splines in manifolds.ACM Trans. Graph 23(3), 284–293 (2004)

21. Iyanaga, S., Kawada, Y.: Finsler Spaces. MIT Press, Cambridge(1980)

22. Jeong, W.K., Fletcher, P.T., Tao, R., Whitaker, R.: Interactive vi-sualization of volumetric white matter connectivity in DT-MRI us-ing a parallel-hardware Hamilton–Jacobi solver. IEEE Trans. Vis.Comput. Graph. 13(6), 1480–1487 (2007)

23. Johnson, A.E., Hebert, M.: Using spin images for efficient ob-ject recognition in cluttered 3d scenes. IEEE Trans. Pattern Anal.Mach. Intell. 21(5), 433–449 (1999)

24. Kanai, T., Suzuki, H.: Approximate shortest path on polyhedralsurface based on selective refinement of the discrete graph and itsapplications. In: GMP, vol. 2000, p. 241 (2000)

25. Katz, S., Tal, A.: Hierarchical mesh decomposition using fuzzyclustering and cuts. In: SIGGRAPH’03, pp. 954–961. ACM, NewYork (2003)

26. Kazhdan, M., Funkhouser, T., Rusinkiewicz, S.: Shape match-ing and anisotropy. In: SIGGRAPH’04, pp. 623–629. ACM Press,New York (2004)

27. Kimmel, R., Sethian, J.: Computing geodesic paths on manifolds.In: Proceedings of National Academy of Sciences, pp. 8431–8435(1998)

Page 13: Curvature-based anisotropic geodesic distance computation

Anisotropic Distance Computation 755

28. Kindlmann, G., Whitaker, R., Tasdizen, T., Moller, T.: Curvature-based transfer functions for direct volume rendering: Methods andapplications. In: VIS’03, p. 67. IEEE Comput. Soc., Los Alamitos(2003)

29. Lai, Y.K., Zhou, Q.Y., Hu, S.M., Martin, R.R.: Feature-sensitivemesh segmentation. In: SPM’06, pp. 17–25. ACM, New York(2006)

30. Mangan, A.P., Whitaker, R.T.: Partitioning 3d surface meshes us-ing watershed segmentation. IEEE Trans. Vis. Comput. Graph.5(4), 308–321 (1999)

31. Mémoli, F., Sapiro, G.: Fast computation of weighted distancefunctions and geodesics on implicit hyper-surfaces. J. Comput.Phys. 173(2), 730–764 (2001)

32. Meyer, M., Kirby, R.M., Whitaker, R.: Topology, accuracy, andquality of isosurface meshes using dynamic particles. IEEE Trans.Vis. Comput. Graph. 13(6), 1704–1711 (2007)

33. Mitchell, J.S.B., Mount, D.M., Papadimitriou, C.H.: The discretegeodesic problem. SIAM J. Comput. 16(4), 647–668 (1987)

34. Page, D.L., Koschan, A.F., Abidi, M.A.: Perception-based 3d tri-angle mesh segmentation using fast marching watersheds. In:CVPR, vol. 02, p. 27 (2003)

35. Peyré, G., Cohen, L.D.: Geodesic remeshing using front propaga-tion. Int. J. Comput. Vis. 69(1), 145–156 (2006)

36. Pichon, E., Westin, C.F., Tannenbaum, A.: A Hamilton–Jacobi–Bellman approach to high angular resolution diffusion tractogra-phy. In: MICCAI, pp. 180–187 (2005)

37. Pottmann, H., Steiner, T., Hofer, M., Haider, C., Hanbury, A.: Theisophotic metric and its application to feature-sensitive morphol-ogy on surfaces. In: Computer Vision—ECCV 2004, pp. 18–23(2004)

38. Prados, E., Soatto, S., Lenglet, C., Pons, J.P., Wotawa, N., Deriche,R., Faugeras, O.: Control theory and fast marching techniques forbrain connectivity mapping. In: CVPR’06, pp. 1076–1083 (2006)

39. Razdan, A., Bae, M.: A hybrid approach to feature segmentationof triangle meshes. Comput. Aided Des. 35(9), 783–789 (2003)

40. Reif, J.H., Sun, Z.: Movement planning in the presence of flows.Algorithmica 39(2), 127–153 (2004)

41. Sellen, J.: Direction weighted shortest path planning. In: Proceed-ings of the ICRA, pp. 1970–1975 (1995)

42. Sethian, J.A.: A fast marching level set method for monotonicallyadvancing fronts. In: Proc. Natl. Acad. Sci., vol. 93, pp. 1591–1595 (1996)

43. Sethian, J.A., Popovici, A.M.: 3-d travel-time computation usingthe fast marching method. Geophysics 64(2), 516–523 (2006)

44. Sethian, J.A., Vladimirsky, A.: Ordered upwind methods for sta-tic Hamilton–Jacobi equations: Theory and algorithms. SIAM J.Numer. Anal. 41(1), 325–363 (2003)

45. Sethian, J.A., Vladimirsky, A.: Ordered upwind methods for sta-tic Hamilton–Jacobi equations: Theory and algorithms. SIAM J.Numer. Anal. 41(1), 325–363 (2003)

46. Sifri, O., Sheffer, A., Gotsman, C.: Geodesic based surfaceremeshing. In: Proc. 12th International Meshing Roundtable, pp.189–199 (2003)

47. Skiena, S.S.: The Algorithm Design Manual. Springer, Berlin(2000)

48. Sloan, P.P.J., Charles, F., Rose, I., Cohen, M.F.: Shape by example.In: I3D’01, pp. 135–143. ACM, New York (2001)

49. Surazhsky, V., Surazhsky, T., Kirsanov, D., Gortler, S.J., Hoppe,H.: Fast exact and approximate geodesics on meshes. ACM Trans.Graph 24(3), 553–560 (2005)

50. Tsai, Y.H.R., Cheng, L.T., Osher, S., Zhao, H.K.: Fast sweepingalgorithms for a class of Hamilton–Jacobi equations. SIAM J. Nu-mer. Anal. 41(2), 659–672 (2003)

51. Watanabe, K., Belyaev, A.: Detection of salient curvature fea-tures on polygonal surfaces. Comput. Graph. Forum 20, 385–392(2001)

52. Yamauchi, H., Gumhold, S., Zayer, R., Seidel, H.P.: Mesh segmen-tation driven by Gaussian curvature. The Visual Computer 21(8–10), 659–668 (2005)

53. Zhang, Y., Paik, J., Koschan, A., Abidi, M., Gorsich, D.: A simpleand efficient algorithm for part decomposition of 3d triangulatedmodels based on curvature analysis. In: IEEE International con-ference on Image Processing, pp. 273–276 (2002)

54. Zhou, K., Synder, J., Guo, B., Shum, H.Y.: Iso-charts: stretch-driven mesh parameterization using spectral analysis. In: SGP’04,pp. 45–54. ACM, New York (2004)

Joon-Kyung Seong is a researchprofessor in the department of com-puter science at Korea AdvancedInstitute of Science and Technol-ogy (KAIST). His research inter-ests include computer graphics, geo-metric modeling, and computationalbrain imaging. Prof. Seong receiveda B.S. and a Ph.D. degrees fromSeoul National University in 2000and 2005, respectively. He was aPostdoctoral fellow in the Schoolof Computing at the University ofUtah.

Won-Ki Jeong is a research scien-tist at the Initiative in InnovativeComputing (IIC) and the Schoolof Engineering and Applied Sci-ence (SEAS) at Harvard university.His research interests include imageprocessing, scientific visualization,and general purpose computing onthe graphics processor in the field ofbio-medical image analysis. He re-ceived NVIDIA Fellowship in 2007.He received a B.S. degree in Math-ematics from Korea University in1999, an M.S. Degree in ComputerScience from Korea University in

2001, and a Ph.D. Degree in Computer Science from the Universityof Utah in 2008. He is currently a professional member of ACM.

Elaine Cohen is a Professor in theSchool of Computing at the Univer-sity of Utah since 1974 and has co-headed the Geometric Design andComputation Research Group since1980. Elaine Cohen received herMS (1970) and Ph.D. in mathemat-ics (1974) from Syracuse Universityafter receiving her B.S. (cum laude)in mathematics (1968) from VassarCollege. Cohen has focused her re-search on theory and algorithms forcomputer graphics, geometric mod-eling, geometric computation, hap-tics, and manufacturing, with em-

phasis on complex sculptured models represented using NURBS (Non-Uniform Rational B-splines) and NURBS-features. In addition to herresearch papers, she is first author of a reference textbook entitled Geo-metric Modeling with Splines. Cohen can be reached at the School ofComputing, University of Utah, 50 S. Central Campus Dr., Salt LakeCity, Utah 84112. email: [email protected].