-
Sphere-Meshes: Shape Approximation using Spherical Quadric Error
Metrics
Jean-Marc Thiery Émilie Guy Tamy Boubekeur
Telecom ParisTech – CNRS LTCI – Institut Mines-Telecom
Input Approximation
Sphere-Mesh Interpolation
Figure 1: Starting from a surface mesh (left, 200k triangles),
we propose an approximation algorithm which generates a
sphere-mesh(middle) defining an extremely simplified model (here
with 50 spheres) as a sphere interpolation over a set of edges and
polygons (right). Theinput mesh is shown in orange (left), the
sphere-mesh is displayed in the middle (spheres in red, edges in
yellow, triangles in blue) and theinterpolated sphere-mesh geometry
is shown on the right (edge interpolation in grey, triangle
interpolation in blue).
Abstract
Shape approximation algorithms aim at computing simple
geomet-ric descriptions of dense surface meshes. Many such
algorithmsare based on mesh decimation techniques, generating
coarse tri-angulations while optimizing for a particular metric
which mod-els the distance to the original shape. This
approximation schemeis very efficient when enough polygons are
allowed for the sim-plified model. However, as coarser
approximations are reached,the intrinsic piecewise linear point
interpolation which defines thedecimated geometry fails at
capturing even simple structures. Weclaim that when reaching such
extreme simplification levels, highlyinstrumental in shape
analysis, the approximating representationshould explicitly and
progressively model the volumetric extent ofthe original shape. In
this paper, we propose Sphere-Meshes, a newshape representation
designed for extreme approximations and sub-stituting a sphere
interpolation for the classic point interpolationof surface meshes.
From a technical point-of-view, we propose anew shape approximation
algorithm, generating a sphere-mesh at aprescribed level of detail
from a classical polygon mesh. We alsointroduce a new metric to
guide this approximation, the SphericalQuadric Error Metric inR4,
whose minimizer finds the sphere thatbest approximates a set of
tangent planes in the input and whichis sensitive to surface
orientation, thus distinguishing naturally be-tween the inside and
the outside of an object. We evaluate the per-formance of our
algorithm on a collection of models covering awide range of
topological and geometric structures and compareit against
alternate methods. Lastly, we propose an application todeformation
control where a sphere-mesh hierarchy is used as aconvenient rig
for altering the input shape interactively.
CR Categories: Computing Methodologies [Computer Graph-ics]:
Shape Modeling—Mesh Models; Computing Methodologies[Computer
Graphics]: Shape Modeling—Shape Analysis.
Keywords: shape approximation, simplification
Links: DL PDF
1 Introduction
Approximating 3D shapes using a minimal set of geometric
prim-itives offers a wide range of applications, from shape
analysis tointeractive modeling. Starting from a dense surface
mesh, sim-plification methods are a popular class of algorithms to
gener-ate such approximations. They can essentially be classified
inthree categories: (i) clustering methods [Rossignac and
Borrel1993][Lindstrom 2000][Schaefer and Warren
2003][Cohen-Steineret al. 2004], which decompose the original
surface into a collec-tion of regions and substitute each region
with a single represen-tative (e.g., point or face), (ii)
decimation methods [Hoppe et al.1993][Garland and Heckbert 1997],
which iteratively remove sur-face samples and relocate their
neighbors to optimize for the orig-inal shape and (iii) resampling
methods [Turk 1992; Alliez et al.2003; Yan et al. 2009] which
compute a new, potentially coarser,point distribution on the
surface and establish a new connectivity.
Alternatively, one can also consider the volume bounded by
thesurface and provide a simplification by means of the Medial
AxisTransform (MAT) [Blum 1967] for instance, leading to a
represen-tation with simplified volumetric structures [Amenta et
al. 2001;Dey and Zhao 2004; Chazal and Lieutier 2005; Sud et al.
2007;Miklos et al. 2010].
In this paper, we introduce sphere-meshes, an approximation
model
http://doi.acm.org/10.1145/2508363.2508384http://portal.acm.org/ft_gateway.cfm?id=2508384&type=pdf
-
inspired from both worlds, which are a connected set of spheres
thatare linearly interpolated along simplices (i. e., edges or
triangles,see Fig. 1). In particular, we propose an algorithm which
computessuch an approximation at any desired level of detail from a
poly-gon mesh. Indeed, a classical polygon mesh is a special case
of asphere-mesh, where vertices are spheres with zero radius.
Coars-ening the approximation, sphere-meshes progressively evolve
froma surface to a volumetric object, using the radius of the
spheres tomodel the thickness of the shape (see Fig. 2).
In this automatic approximation process, we optimize for
thespheres by introducing the spherical quadric error metric (Sec.
2)to optimally fit a sphere to a subset of the tangent planes of
the inputsurface (i. e., vertex or triangle tangent space). Our
metric accountsfor the normal orientation and distinguishes
naturally between theinside and the outside of the 3D shape. We use
this new error metricin a bottom-up approximation algorithm (Sec.
3) to progressivelycompute level-of-details of the input with
sphere-meshes, with op-tional local approximation control. As a
result, we show that atextreme simplification levels, a sphere-mesh
succeeds at faithfullyrepresenting the input shape while classical
polygon approxima-tions fail quickly (see Sec. 4). Finally, we
propose an applicationof our shape approximation model by using it
as an automatic in-termediate high-level control structure for
interactive freeform de-formation (Sec. 5). Although our
representation is compatible withtriangle surface meshes,
tetrahedral meshes and medial axis, we fo-cus on the surface
case.
1.1 Related work
Mesh simplification One core component of our approach,
in-spired from classical mesh decimation methods [Garland and
Heck-bert 1997], is a quadric error metric defined to measure and
opti-mize the difference between the original shape and its
simplifica-tion. Similarly, our representation is designed for
shape approxima-tion, to capture the shape of an object with very
few elements. Thisfocus is prominent in simplification methods,
which aim at finding asmall amount of good representative polygons
from a dense set. Todo so, one can either use ordered edge collapse
operations [Hoppeet al. 1993; Garland and Heckbert 1997] up to a
prescribed resolu-tion, cluster spatially the input surface
elements before triangulat-ing the cluster “averages” [Rossignac
and Borrel 1993; Lindstrom2000] or use a variational framework to
segment the shape and fitsimple primitives to each region, such as
planes [Cohen-Steineret al. 2004], spheres [Wang et al. 2006],
cylinders/cones [Wu andKobbelt 2005] and quadrics [Yan et al.
2006].
We argue that extreme mesh simplification requires defining
volu-metric elements instead of surfaces, while providing a simple
topo-logical structure between them.
Shapes from volumetric primitives Approximating shapeswith a set
of simple geometric primitives can be performed in nu-merous ways
in digital shape modeling, with applications includ-ing for example
shape recognition, multi-resolution visualization orcollision
detection. For instance, the medial axis transform [Blum1967] (MAT)
of a 3D surface mesh is the set of all 3D points hav-ing more than
one closest point on its boundary and takes the formof a
topological skeleton made of edges and faces together with aradius
function. Alternatively, constructive solid geometry (CSG)methods
model the shape of an object as a tree carrying simple geo-metric
primitives on its leaves and boolean operations on its
internalnodes. Extremely efficient at representing certain classes
of man-ufactured objects, these models are usually defined from
scratchand do not cope easily with automatic shape approximation.
Be-yond MAT and CSG, the representation of volumes as the union
ofprimitives has also been recently studied for spheres [Wang et
al.
Input 8 spheres-approx. 2 spheres-approx.4 spheres-approx.
Figure 2: Transition from surface to volumetric
representation:For each approximation, we show the sphere-mesh
structure withsemi-transparent input and the interpolated
sphere-mesh geometry.8-spheres approx.: the base structure, made of
triangles, is homeo-morphic to the input surface. 4-spheres
approx.: the base structure,made of a single sheet of triangles, is
no longer homeomorphic tothe input. 2-spheres approx.: two spheres
linked by a single edge.
2006], ellipsoids [Lu et al. 2007], as well as axis-aligned or
ori-ented bounding boxes [Lu et al. 2007]. Bradshaw et al.
proposedto compute a sphere tree from an approximation of the
medialaxis [Bradshaw and O’Sullivan 2002; Bradshaw and
O’Sullivan2004; Stolpner et al. 2012]. In a different context,
spatial hierar-chies have been extensively used in real time
multi-resolution visu-alization [Rusinkiewicz and Levoy 2000] and
physics [James andPai 2004]. Often based on simple bounding
primitives (e.g., spheresor boxes) organized in a spatial binary
tree, such structures aim atquickly culling empty space but only
provide poor quality shapeapproximation at their coarser
levels.
In contrast, we aim at representing the input 3D object with
fewfitting primitives while we also consider their interpolation
over thesimplices of a mesh sub-structure.
Sphere Skeletons Shape representations based on sphere
inter-polations have recently gained interest in shape modeling
with theZBrush tool [Pixologic 2001], popular in the SFX industry.
Withthis tool, a skeleton of spheres – called ZSpheres – is
manually con-structed to define a shape at coarse grain, before
refining its surfacewith displacements. With B-Meshes, Ji et al.
[2010] improved thisclass of representations, in particular with a
better mesh extraction.
In contrast to these methods, we propose to approximate
automat-ically an existing, possibly dense mesh (e.g., scanned
geometry),with an interpolation of spheres. Additionally, our
sphere-meshrepresentation extends the interpolation beyond
skeletons, usingpolygons as well to model non-tubular regions.
1.2 Overview
In this paper, we make the following contributions:
1. the sphere-mesh representation composed of a sphere set
withadditional connectivity information – each simplex
corre-sponding to the linear interpolation of the four
dimensionalpoints (qi; ri), with qi = (xi, yi, zi) the sphere
centers and ritheir radii; this representation extends existing
skeleton-basedsphere interpolations;
2. the spherical quadric error metric (SQEM) guiding
thesphere-mesh approximation and whose minimizer is a spherefitting
a set of planes in the least squares sense;
3. a shape approximation algorithm which computes a sphere-mesh
efficiently, from an input triangle mesh, with optionallocal
approximation control through an importance map;
4. an interactive freeform deformation framework using
sphere-meshes as automatic multi-resolution control structures.
-
2 Sphere-mesh representation
We aim at approximating 3D shapes as a base mesh composed
ofedges E and triangles T , indexing a sphere set S = {S(qi,
ri)}iwith centers qi ∈ R3 and radii ri, this “thickness” ri being
lin-early interpolated along E and T . Intuitively, a segment [Si,
Sj ]models the union of the interpolated spheres between Si and
Sj([Si, Sj ] = ∪u∈[0,1]{S(uqi + (1� u)qj ;uri + (1� u)rj)}),
andcorresponds to the convex hull of Si∪Sj . The same property
holdsfor higher dimensional primitives such as triangles and
tetrahedra.From a morphological point of view, a sphere-mesh {S,E,
T} cor-responds to a Minkowski sum of the polygon mesh defined by
thesphere centers with a sphere having a spatially-varying radius.
Onecan also see sphere-meshes as a parametric counterpart to
kernelimplicit surfaces.
Notations In the following,Mmn denotes the set of real
m×n-matrices, Sn the set of symmetric matrices ofMnn, and M ijkl
the(k � i + 1) × (l � j + 1)-submatrix of M , whose top left
cornerelement is Mij and the bottom right element is Mkl. a× b
denotesthe cross product between two 3D vectors a and b, and at · b
theirdot product. {p, n}⊥ denotes the plane that is orthogonal to n
andintersects p: {p, n}⊥ ≡ {x ∈ R3|nt · (p� x) = 0}.
2.1 Spherical quadric error metrics
We start by introducing the underlying geometric metric in our
ap-proach, the spherical quadric error metric (SQEM), which is
basedon the signed distance d(S(q, r), {p, n}⊥) from the sphere
S(q, r)to the (oriented) plane {p, n}⊥ (see Fig. 3 (i)):
d(S(q, r), {p, n}⊥) = nt · (p� q)� r (1)
This distance differs from the classical distance from an
unorientedpoint p (as opposed to a plane {p, n}⊥) to a sphere (i.
e., |p� q| �r). It also takes into account the orientation of the
normals, anddistinguishes naturally between convex and concave
regions (seeFig. 3, (ii) and (iii)). Note, that the squared value
of the distancefrom a point to a sphere (i. e., (|p � q| � r)2)
cannot be expressedas a quadric w.r.t. q and r.
We associate the set of spheres with center q and radius r to
vec-tors in R4 by writing s := (q; r) ' S(q, r), and we writep̄ =
(p; 0), n̄ = (n; 1) ∈ R4 in the following. Using this nota-tion,
d(s, {p, n}⊥) ≡ d(S(q, r), {p, n}⊥) = n̄t · (p̄� s).
The spherical quadric error metric SQEMp,n(s) that representsthe
squared distance from the plane {p, n}⊥ to a variable spheres is a
quadric w.r.t. s, and SQEMp,n(s) = d(s, {p, n}⊥)2 =(n̄t · p̄� n̄t ·
s)2 = (n̄t · p̄)2 + (n̄t · s)2 � 2(n̄t · p̄)n̄t · s, which
Figure 3: Signed distance from a sphere to a plane (i), which
takesthe orientation of the normals into account. It favours the
fitting ofconvex surfaces (ii) while penalizing the fitting of
concave surfaces(iii). During the optimization, we forbid spheres
with negative ra-dius (here �|(p� q)t · n|) fitting concave regions
(iv).
boils down to the following:
SQEMp,n(s) = Q(s) =1
2st ·A · s� bt · s + c (2)
with A = 2
n · nt nnt 1
∈ S4, b = 2(nt · p) n
1
∈ R4 andc = (nt · p)2 ∈ R.
In the following, we refer to such a quadric Q in R4 by
writingits components Q ≡ (A, b, c) ∈ S4 × R4 × R explicitly.
Thesum of two quadrics Q1 ≡ (A1, b1, c1) and Q2 ≡ (A2, b2, c2)
iscomputed by summing up their different components: Q1 + Q2 ≡(A1
+A2, b1 + b2, c1 + c2), and the multiplication of a quadric bya
scalar is computed by multiplying each component: λ(A, b, c) ≡(λA,
λb, λc). It follows trivially that (Q1 + Q2)(s) = Q1(s) +Q2(s) and
(λQ)(s) = λQ(s).
2.2 Shape approximation
Our goal is to partition the input mesh into regions Ik (sets of
ver-tices), such that each region geometry PIk is approximated by
asphere sk and the integral of the squared distance from the mesh
toits approximation is minimized. The cost of such a partition
is
C({Ik, sk}k) =∑k
∫ξ∈PIk
d2(sk, {pξ, nξ}⊥)dσξ (3)
Note that since we target shape approximation, this energy
doesnot enforce the spheres to remain strictly inside the
shape.
edge mid-pointtriangle center
We equip each vertex vi of the input meshwith its so-called
barycentric cell Pi (oppo-site figure) given by one third of its
adja-cent triangles (denoted by T1(vi)), and de-fine the squared L2
distance from a spheres to Pi as the integral over Pi of the
squareddistance to s:
d(s, Pi)2L2 =
∫ξ∈Pi
d2(s, {pξ, nξ}⊥)dσξ
Note that the squared distance to the sphere is constant on each
ad-jacent triangle tj (since all oriented points on tj describe the
sameplane) and is given by its spherical quadric, denoted by Qtj
(s) (seeEq. 2). The squared distance from Pi to a sphere s is
simply givenby a weighted sum of the spherical quadrics Qtj of the
trianglesthat are adjacent to the vertex vi:
d(s, Pi)2L2 =
∑tj∈T1(vi)
area(tj)
3Qtj (s) , Qi(s) (4)
Each region PIk being defined as the union of the
barycentriccells of its vertices Ik, the squared distance from a
sphere sto PIk is given by summing up the different squared
distances:d(s, PIk )
2L2 =
∑i∈Ik
d2(s, Pi) = QIk (s) where QIk =∑i∈Ik
Qi is the sum of the spherical quadrics of the cells of
thevertices in the set Ik.
Using this notation, the cost of a partition {Ik, sk}k, defined
as thesquared L2 distance from the input surface to the set of
spheres, is
C({Ik, sk}k) =∑k
QIk (sk) (5)
-
Quadric Minimization Each spherical quadric Q ≡ (A, b, c) hasa
global minimum (since A is a symmetric positive semi-definitematrix
by construction), which may not be unique, however. Sincewe limit
ourselves to the set of spheres that have a positive radius(spheres
with a negative radius describe concavities, and are locatedoutside
the object, see Fig. 3 (iv)), the minimization of this quadricis
performed in the half-spaceR3 ×R+.
The minimizer is given by A−1 · b if A is invertible. When
theglobal minimizer in R4 is located in the other half-space (i.
e., thefourth coordinate r is negative), the minimizer on the
restriction(i. e., r >= 0) is found in the hyper-plane r = 0.
Otherwise thisminimizer would have a local neighborhood entirely
contained inr >= 0, and would be therefore a local minimum,
which is impos-sible since a non-degenerate quadric has exactly one
local, henceglobal, minimum.
If A is not invertible, the set of minimizers is a vector space
thatcan be of dimension 1, 2, or 3.
3 Approximation Algorithm
With our SQEM in hand, we now describe how to approximate,at a
desired level of detail, an input triangle surface mesh with
asphere-mesh, using this metric to tailor a bottom-up decimation
al-gorithm. Since a sphere-mesh models a surface as the outer
bound-ary of the interpolation of its spheres, an ideal input to
our approx-imation algorithm is a closed orientable surface.
Nonetheless, asshown later (see Sec. 4), our approach can deal with
flawed inputincluding holes and non-manifold edges.
3.1 Basic Algorithm
Similar to [Garland and Heckbert 1997], we reduce the input
meshby collapsing its edges iteratively in a greedy fashion,
ordering thereduction operations by the cost QI(s), I being the
connected set ofvertices collapsed altogether, and s being the
sphere approximatingthe region.
When considering the collapse of an edge uv of the mesh, we
createthe quadric Quv = Qu+Qv , find the sphere that best
approximatesthe constructed region suv = argmins{Quv(s)}, and set
the cor-responding collapse cost cuv of uv to Quv(suv). The
suggestededge-collapse [uv] → suv is then put into a priority queue
Q withits associated cost cuv .
At first, the priority queue Q is initialized with all possible
edge-collapses. When pruning the best element [uv]→ suv from Q,
theedge uv is collapsed, a new vertex is created with the
correspond-ing quadric Quv , all possible edge-collapses with its
neighbors areput into the queue and former neighboring ones are
removed. Thealgorithm stops when the number of vertices (i. e.,
sphere centers)to delete is reached.
When looking for the minimizer of Quv ≡ (A, b, c), several
casesneed to be considered:
• if A is invertible: we approximate the region with a sphere
inthe domainR3 × [0;R] (see Par. Radius bound).
• if A is not invertible (e. g., the region is planar): we
ap-proximate the region with a sphere along the segment [uv],still
restricting the radius to be in [0;R] (i. e., in the domain[uv]×
[0;R]).
For the second case, we write q = u+ λ~µ (~µ = ~uv)and Q(q, r) =
1
2(λ, r)t · à · (λ, r)− b̃t · (λ, r) + c̃, with à =[
~µt · A1133 · ~µ A4143
t · ~µA4143
t · ~µ A4444
], b̃ =
[b13
t · ~µ− ~µt · A1133 · ub44 − A
4143
t · u
], and
c̃ = c− b13t · u+ 1
2ut ·A1133 · u (Ã ∈ S2, b̃ ∈ R2, c̃ ∈ R). This
energy is a 2-dimensional quadric w.r.t. (λ, r) that we want
tominimize on the domain [0; 1] × [0;R], and whose global
mini-mizer in R2 is (λ, r) = Ã−1 · b̃. If this minimizer does not
be-long to the square [0; 1] × [0;R], the minimizer to its
restrictionis once again located on its boundary (i. e., {λ = 0; r
∈ [0;R]},{λ = 1; r ∈ [0;R]}, {r = 0;λ ∈ [0; 1]} or {r = R;λ ∈ [0;
1]}),resulting in a simple second order polynomial minimization in
di-mension 1. If, for some reason (e. g., the region is planar), Ã
is notinvertible, we collapse the edge to its mid-point (λ = 1/2),
andfind the optimal value for the radius in [0;R], which is a
problemthat is, this time, always properly conditioned.
Additionally, similarly to Garland and Heckert [1997], we
preventedge-collapses that result in the inversion of the
orientation of thetriangles that are involved in the operation.
Mesh data structure We use the data structure proposed by
DeFloriani et al. [2004], that allows to encode manifold meshes
witha minimum memory overhead while maintaining high
performancewhen degenerating to a non-manifold mesh. The
connectivity ofthe resulting mesh is directly induced by the input
connectivity andthe set of successive edge-collapses.
Radius bound Approximating a surface using a large sphere canbe
cumbersome if the surface portion is not large enough itself
(toolittle information provided), and the resulting sphere can
cover alarge part of the outside of the object in this case. For
example,an infinite number of spheres can fit a single plane, since
the onlyrequirement is that this plane touches the sphere.
To solve this problem, we bound the diameter of the sphere by
thedirectional width W of the region [Gärtner and Herrmann 2001](i.
e., the smallest extent of the region, when considering all
possibledirections).
To do so efficiently, we pre-sample the unit sphere uniformly
with afixed number of directions ~kj (30 in our implementation,
plus the 3canonical axes). Each region Pu stores its interval
Ij(Pu) along alldirections ~kj (Ij(Pu) = [mju;M ju] with mju =
minx∈Pu(x
t · ~kj)and M ju = maxx∈Pu(x
t · ~kj)), and the intervals of the unionof two regions Pu and
Pv can be obtained by iterating over alldirections ~kj (Ij(Pu ∪ Pv)
= [min(mju,mjv); max(M ju,M jv )]).Since, at first, each region Pi
is composed of only the barycen-tric cell of one vertex vi, these
are initialized with Ij(Pi) =[minx∈Pi(x
t · ~kj); maxx∈Pi(xt · ~kj)]. The directional widthW(P )of the
region P is approximated by W̃(P ) = minj |Ij(P )|. To al-low
coarser approximations at the first stages of the reduction, weset
the maximum diameter of the sphere representing a region Puto be
slightly larger (R(Pu) = 34W̃(Pu) in practice).
This bounding heuristic shows several benefits: (i) a sphere
repre-senting a planar region is constrained to be a point, as the
directionalwidth of a plane is zero; (ii) for convex shapes, a
sphere is likely (al-though not guaranteed) to remain inside the
shape when it is tangentto the geometry (as the directional width
of a set equals that of itsconvex hull [Gärtner and Herrmann
2001]). Finally, this heuristicproved empirically to be more
efficient than other alternatives suchas bounding boxes, either
axis-aligned or aligned according to theprincipal component
analysis of the region.
Neighborhood enrichment As for all decimation-based
simpli-fication methods, collapsing two vertices of the mesh va and
vbis often useful if they are close enough in the original mesh
i.e.,|va − vb| < �. Although it may introduce topological
changes,
-
Figure 4: Influence of the importance parameter σ: Fine details
are better preserved as we increase the influence of the total
curvaturekernel. When σ is null (left), the results correspond to
the standard remeshing introduced in Sec. 3. All sphere-meshes have
77 spheres.
this strategy is especially effective if the shape contains
large oppo-site regions that should be collapsed together (e.g.,
large shell-likeparts such as the chair model or the wings of the
Pegaso in Fig. 5).The parameter � is intuitive and part of common
decimation-basedsimplification frameworks.
3.2 Importance-driven distribution
In the context of shape approximation, it is common to allow
theuser to control the relative importance of the features in the
pro-cess. We propose to parameterize our approximation process
byintroducing a weighting kernel Kσ in the definition of the cost
of apartition (previously defined in Eq. 3):
Cσ({Ik, sk}k) =∑k
∫ξ∈PIk
Kσ(ξ)d2(sk, {pξ, nξ}⊥)dσξ (6)
In the previous definition, Kσ describes the respective
importanceof all points on the manifold. If Kσ = 1 ∀ξ, the
formulation of thecost of a partition reduces to the original one
previously introducedin Eq. 3.
The spherical quadric Qi of the vertex vi is given by averaging
thequadrics Qtj of its adjacent triangles tj ∈ T1(vi) as before,
thistime taking the integral of the kernel into account:
Qi =∑
tj∈T1(vi)
(
∫ξ∈Pi∩tj
Kσ(ξ)dσξ)Qtj (7)
In Fig. 4 we present various results obtained when setting
impor-tance kernels based on the total curvature κ12 + κ22 (which
natu-rally favors highly-protruding geometry):
Kσ(ξ) = 1 + σ ·BBD2 · (κ1(ξ)2 + κ2(ξ)2) (8)
BBD being the bounding box diagonal of the model. The
multi-plicative factor BBD2 is used in Eq. 8 to ensure scale
invariance.
For affine kernels, the various integrals∫ξ∈Pi∩tj
Kσ(ξ)dσξ can becomputed trivially. Note that κ1(ξ) and κ2(ξ) are
not piecewiselinear, if one considers that the two-dimensional
curvature tensorshould be the one quantity that should be
interpolated linearly onthe triangles when considering discrete
manifolds. In our imple-mentation however, we consider that the
total curvature is linearly
interpolated on the triangles to simplify the computation of the
ker-nel integrands.
Other properties, e. g., local feature size [Amenta and Bern
1999]or conformal factor [Ben-Chen and Gotsman 2008], could be
usedas importance kernels. We focused on the total curvature-based
ker-nels and left alternative ways to control local importance for
futurework.
4 Results
We implemented our shape approximation method in C++ and re-port
performances on an Intel Core2 Duo running at 2.5 GHz with4GB of
main memory. The entire algorithm is controlled by twoparameters:
the target number of spheres and σ (set to 1 unlessotherwise
mentioned).
4.1 Interpolated geometry
In this section, on top of sphere-mesh structures, we
providesphere-mesh geometries corresponding to the linear
interpolationof spheres along edges and triangles. This
interpolated geometrycorresponds to the union of spheres,
interpolated edges and inter-polated triangles. Each interpolated
edge corresponds to a cone cutby a plane orthogonal to the edges at
each extremity and each inter-polated triangle corresponds to a
triangular prism made of 3 facesextruding the triangle edges and 2
triangles for the lower and uppercrusts of the interpolation.
Alternatively, a discrete interpolationcan be generated by sampling
many spheres along edges and trian-gles, in the manner of the
ZBrush tool [Pixologic 2001].
4.2 Performances
In Fig. 5, we present results of our automatic shape
approximationmethod for 22 different input models, covering a wide
range of ge-ometric features, topology and quality. For all
examples but thelast, we show the input shape, the resulting
sphere-mesh structure(sphere, edges, triangles) and the shape
approximation emergingfrom the linear interpolation of the spheres
along the structure (in-terpolated geometry in grey for edges and
blue for triangles). Wecan observe that, even under a drastic
approximation restricted totens of spheres, each sphere-mesh
succeeds at capturing, in an adap-tive manner, the essence of the
shape. This becomes even clearerwhen displaying the interpolated
sphere-mesh geometry: spheri-cal, conic and cylindrical components
are quickly captured with thesphere-mesh, even in the presence of
numerous fine scale features.We can also observe a number of cases
where a tubular structure
-
Centaur (50)
Camel (50)Bozbezbozzel (100)
Sea monster (150)
Chair (35) Dancer (54)
Elk (45)
Neptune (60)
Pegaso 25 spheres 50 spheres 75 spheres 100 spheres
Camel grid (50)
Hand (70) Flamengo (40)
Wolf (55)
Gorilla (36)
Fish (12)
Elephant (45)
Sea horse (200)
Vase (120)
Half bear(60)
Moebius (700)
Raptor (45)
Neptune (60)Neptune (60)Neptune (60)Neptune (60)Neptune (60)
Fish (12)
Camel grid (50)
Figure 5: Sphere-mesh approximation results with the algorithm
described in Sec. 3 on various meshes at different levels of
simplification.Results obtained with σ = 1. The number of spheres
of the approximation is shown between the parentheses.
-
INPUT MODEL INIT. DEC. SPHERE-MESH QEM SIMPLIFICATION(#V / #T)
(MS) (MS) (#S / #E / #T) H M12 M21 (#V / #T) H M12 M21
Boz. (22774 / 45564) 1701 1844 100 / 22 / 146 3.020 0.472 0.438
100 / 194 11.703 1.519 0.591Camel (2020 / 4040) 122 113 50 / 19 /
34 7.201 0.465 0.384 50 / 96 12.477 1.071 0.576Neptune (28052 /
56112) 1714 2358 60 / 15 / 72 2.650 0.384 0.388 60 / 124 10.186
0.943 0.518Centaur (3401 / 6796) 209 212 50 / 17 / 42 3.557 0.373
0.401 50 / 94 15.626 1.629 0.523Chair (9935 / 19894) 568 745 35 /
16 / 22 1.517 0.313 0.345 35 / 72 14.974 1.404 0.364Dancer (7942 /
15884) 472 551 54 / 11 / 67 1.352 0.166 0.182 54 / 102 5.970 0.517
0.319Gorilla (1917 / 3830) 121 112 36 / 5 / 37 6.109 0.530 0.446 36
/ 68 9.353 1.610 1.122Elk (5194 / 10388) 309 370 45 / 2 / 69 2.560
0.273 0.289 45 / 90 20.802 2.199 0.936Hand (11724 / 23464) 696 884
70 / 53 / 16 1.980 0.324 0.352 70 / 130 14.074 1.140 0.561Flamengo
(26394 / 52839) 1403 1941 40 / 12 / 32 2.837 0.417 0.479 40 / 74
35.135 5.738 0.507Sea monster (39485 / 78966) 2210 3169 150 / 60 /
161 6.081 0.367 0.364 150 / 292 11.445 0.947 0.402Elephant (24955 /
49918) 1263 1818 45 / 6 / 68 3.357 0.564 0.620 45 / 90 6.371 1.038
0.684Wolf (3401 / 6796) 220 212 55 / 12 / 75 3.618 0.380 0.405 55 /
106 8.144 1.079 0.441Fish (7376 / 14748) 532 521 12 / 3 / 6 4.272
0.762 0.735 12 / 20 14.661 1.395 1.036Sea horse (162248 / 324524)
18859 16271 200 / 18 / 344 1.324 0.257 0.271 200 / 400 4.668 0.324
0.231Moebius (21126 / 42523) 1275 1615 700 / 316 / 366 0.762 0.078
0.074 700 / 1510 1.675 0.242 0.123Raptor (12908 / 25852) 1423 879
45 / 23 / 30 4.310 0.428 0.425 45 / 84 18.069 1.555 0.577Vase
(51801 / 103598) 6442 5203 120 / 8 / 197 2.093 0.321 0.395 120 /
230 4.698 0.539 0.265Camel grid (5752 / 11508) 296 503 50 / 5 / 72
4.199 0.900 0.629 50 / 92 17.104 1.853 0.730Half bear (9202 /
17969) 530 642 60 / 5 / 66 14.784 0.400 2.559 60 / 80 14.296 0.939
0.362Pegaso (15319 / 30658) 899 1153 100 / 11 / 170 2.554 0.381
0.393 100 / 204 6.113 0.578 0.424– – – 75 / 12 / 119 4.676 0.485
0.479 75 / 148 6.835 0.790 0.496– – – 50 / 12 / 71 4.973 0.621
0.600 50 / 94 7.554 1.179 0.634– – – 25 / 7 / 34 6.128 1.237 1.081
25 / 46 21.096 2.478 1.056
Table 1: Performance and timings for our sphere-mesh
approximation algorithm (models of Fig. 5). All models were
computed with σ = 1.0.The initialization time comprises the mesh
structure construction from a file and the initialization of the
priority queue with all possibleedge-collapses. Decimation is
performed until no edge remains (computation of the whole
multi-resolution structure). #S / #E / #T: numberof spheres, wire
edges, and triangles in the output sphere-mesh. We compare our
approximation with QSlim for the same number of primitives(smallest
error in bold). H: Hausdorff distance. M21: mean distance from the
approximation to the original model. M12: mean distancefrom the
original model to the approximation. All distances are expressed in
percentages of the input model bounding box diagonal.
would not properly capture the shape at coarse scales (e. g.,
Chair,Elk and Vase models), highlighting the usefulness of polygons
(ontop of edges) in the sphere-mesh representation.
Our approach robustly handles fine components (e. g.,
Flamingomodel), complex topologies (e. g., Moebius model) and
non-uniformly distributed geometric structures with rapidly
varyingsizes (e.g., Sea horse model). Indeed, one desirable
property ofextreme approximation methods is the ability to ignore
small struc-tures to quickly “abstract” a complete shape component
with a sin-gle primitive. In this context, we can observe that near
sphericalcomponents are promptly captured with a single sphere (e.
g., Elkand Elephant models), while near tubular structures are
modeledwith edge chains (e.g., arms and legs). The last row of Fig.
5 il-lustrates the natural multi-resolution structure that comes
with ourapproach, with smaller components emerging progressively
whilereaching finer level-of-details.
We also performed experiments on pathological cases: the
Camelgrid model shows how a poor quality input mesh, with
numerousshape singularities, is smoothly approximated at coarse
scale witha sphere-mesh; the Half bear model illustrates how the
algorithmbehaves for incomplete data sets (right part of the
model). Note inparticular that the shape approximation quality is
not damaged inthe regions where the input is complete.
Additionally, we analyze the influence of noise in Fig. 6:
althoughthe global structure of the approximation is preserved when
addingmore and more noise, it is the local volume approximation
whichsuffers the most from the input quality degradation. Indeed,
whenthe input is very noisy, the SQEM minimization leads naturally
tozero radius spheres (i.e., points), and thus becomes equivalent
toQEM minimization in that case. The impact of σ also becomes
lesscritical.
Figure 6: Noise sensitivity: evolution of the sphere-mesh
approxi-mation with an increasing amount of noise (random
per-vertex dis-placement expressed in percentage of the bounding
box diagonal).
Worst case scenarios Fig. 7 shows what we identified to be
theworst case scenarios for our approach: thin-shell models
contain-ing large concave parts and disconnected components
encompass-ing each other.
At the final stages of the simplification, spheres fitting a
large re-gion with low curvature can bulge out from the shape (red
boxes inFig. 7) due to the locality of the surface optimization
process. TheConcentric Spheres example represents a thin-shell
sphere with theouter sphere approximated by a single large sphere,
which covers
-
Conc
entr
ic S
pher
esBe
ll with
N.E
.
Bell
Bell
Bell
additional edges with
out N
.E.
additional edges
with
N.E
. w
ithou
t N.E
.
2
2
2
2
20
20
15
15
100
100
100
100
Figure 7: Results on thin shell models (cross sections with
backfaces shown in grey). Green boxes: Results using our
neighbor-hood enrichment strategy (additional potential collapses
in green).Red boxes: Results using the initial connectivity,
without neighbor-hood enrichment. Top: Bell model. Using the
neighborhood en-richment allows thin shell volumes to be
approximated with singlesheets made of double sided triangles,
mimicking the MAT. Bottom:Concentric Spheres model. Without
neighborhood enrichment, thetwo disconnected spheres will be
simplified independently.
its inside entirely and ignores the inner concave sphere. A
propersphere-mesh approximation of such a thin shell can again be
ob-tained using the neighborhood enrichment strategy (green boxes
inFig. 7) which allows to collapse vertices which are not
explicitlylinked by an edge but close enough (green edges in the
figure) andon opposite sides of the shell. This results in
topological changes inthe mesh, eventually leading to double sided
triangles – similar tothe medial axis. Such collapses are likely to
be favored at the earlystages of the simplification, because the
“Radius Bound” heuristicprevents the apparition of large spheres
approximating a low curva-ture surface with small directional
width. Collapses of vertices thatare “facing” each other are
unlikely to happen, since the SQEMaccounts intrinsically for the
normal orientation; we also preventlinking them during the
neighborhood enrichment based on theirnormals. Lastly, we prevent
explicit triangle inversion.
Finally, a large number of spheres are required to approximate
suchshapes (20-100 for the Bell, 15-100 for the Concentric
Spheres),because the sphere-mesh representation captures shapes
with fewconnected convex components better.
4.3 Comparisons
Mesh decimation We compare our method to QSlim which im-plements
a mesh simplification algorithm based on the quadricerror metric
[Garland and Heckbert 1997] (QEM), and also of-fers a
multi-resolution approximation of the input in the form ofcoarser
triangle meshes. Fig. 8 illustrates our claim: when a suf-ficient
number of primitives is allowed, traditional triangle
meshessimplifications approximate faithfully enough the input 3D
object.However, as the number of primitives diminishes, meaningful
partscompletely vanish. Our sphere-mesh approximation captures
sim-ilarly well the objects with a high number of primitives, but
de-grades gracefully to volumetric structures even when
drasticallydecimated, preserving the main parts of the objects,
which is a de-sirable behavior for applications requiring high
level shape abstrac-tions (e. g., shape modeling, see Sec. 5).
72 s
pher
es12
0 sp
here
s10
00 s
pher
es
Sphere-Mesh QSlim
Figure 8: Comparison to polygonal simplification: evolution
ofthe approximation with a decreasing number of spheres (resp.
ver-tices) for the sphere-mesh (resp. simplified mesh). From left
toright: sphere mesh approximation with semi-transparent
originalsurface, interpolated sphere-mesh geometry and QSlim
(Garlandand Heckbert 97) polygonal simplification in green.
In Tab. 1, we report the approximation error of QEM
simplifica-tions, for the same number of primitives as with our
SQEM method.Beyond the visual assessment, this experimental study
shows thatthe approximation quality of our sphere-meshes clearly
outper-forms the one of decimated polygon meshes, both for
Hausdorffand mean distances, for most examples. However, in the
case ofincomplete inputs (Half bear model), the mean distance from
theapproximation to the input surface (M21) is significantly higher
us-ing a sphere-mesh: indeed, the sphere-mesh geometry
interpolationtends to “fill” holed regions which, depending on the
application,may be a benefit or a drawback.
Medial axis transform The medial axis transform (MAT) is
notdesigned to represent shapes with the same number of
primitivesas sphere-meshes, which become volumetric structures only
at verycoarse simplification levels (see Fig. 10). The extraction
parametersalso differ: while we allow the user to tune the final
number ofprimitives, typical MAT extraction techniques [Amenta et
al. 2001]propose to tune the reconstruction error rather than the
number ofpolar spheres.
Nevertheless, sphere-meshes and the MAT share geometric
andstructural similarities: First, the MAT is defined as well in
termsof sphere interpolation over a non-manifold structure composed
oftriangles and edges; second, the MAT can offer as well a
multi-resolution description of the input shape, through a
filtering pro-cess. For instance, Tam and Heidrich [2003] suggest
to removeentire manifold sheets of the medial axis iteratively,
based on thevolume each one carries in the final reconstruction.
Attali andMontanver [1996] propose to filter medial spheres based
on the an-gle formed by their two closest boundary points w.r.t.
their center;whereas Chazal and Lieutier [2005] use the
circumradius of the twoclosest boundary points instead.
Alternatively, Miklos et al. [2010]compute a filtered medial axis
as the medial axis of a set of scaledspheres.
Beside these similarities, there are at least two main
differences be-tween our approach and MAT (see Fig. 10): First,
sphere-meshesdegenerate from surface to volumetric structures
progressively andparts of the sphere-mesh geometry can remain
homeomorphic to
-
43 spheres 18209 spheres34 spheres 27750 spheres
41 spheres 3930 spheres 40 spheres 52150 spheres
Figure 10: Visual comparison to the medial axis transform
(pink).Sphere-meshes obtained with σ = 0. Medial axes extracted
withPowercrust [Amenta et al. 2001].
the input surface (see bodies of Flamengo and Camel in Fig.
10for instance). Moreover, this transition from surface to
volumetricstructures arises in an adaptive manner (see the body of
the Fla-mengo sphere-mesh compared to its legs in Fig. 10). In
contrast, theMAT is a purely volumetric structure. Second, although
a filteringprocess can also provide a MAT-based multi-resolution
descriptionof the input shape, this comes as a natural side effect
of our approx-imation technique. In our case, we simplify the input
mesh directly,in a progressive and continuous manner, instead of
simplifying aprecomputed medial structure (that can be even more
complex thanthe input shape itself). Indeed, the MAT is not
designed to reach thesimplification levels we obtain: existing
filtering techniques focuson denoising the medial axis rather than
coarsening it.
Sphere skeletons In contrast to sphere-meshes, which target
theapproximation of an existing high resolution mesh (e.g.,
scannedobject), sphere-skeletons such as Z-Spheres [Pixologic 2001]
or B-Meshes [Ji et al. 2010] are designed for interactive shape
creationand facilitate the creation of coarse shapes from scratch.
However,both representation models can be compared in terms of
flexibil-ity and expressiveness. To some extent, the sphere-mesh
represen-tation extends Z-Sphere and B-Meshes beyond tubular
structures.The presence of polygons (in addition to edges) in the
sphere-meshtopological structure helps modeling large flat regions
which can-not be captured by tubular components. The chair example
in Fig. 5illustrates this notion: while most thin parts are
approximated usingedges, the seat is captured by a sphere
interpolation over polygons.Using a sphere skeleton (e.g.,
Z-Spheres), this region would eitherbe more complex to model or
less accurate in terms of approxima-tion. Indeed, sphere skeletons
methods often come with a specificsurface extraction method, to
pursue the modeling session with dis-placement painting for
instance. Sphere-meshes allow the reversal
Z-Spheres Mesh
Meshing Automatic
Approximation
Sphere-Mesh
Structure InterpolationZBrush
Figure 11: Comparison with sphere skeletons: On the left,
asphere skeleton constructed with ZBrush and its associated
meshsurface (i.e., ZBrush skin). On the right, a sphere-mesh (30
spheres)with edges and triangles, automatically computed from this
surface.
of the pipeline, by recovering automatically a sphere-based
struc-ture from a detailed input surface (see Fig. 11).
5 Application to Deformation Control
Beyond shape approximation, a sphere-mesh degenerates
naturallyinto an internal structure – eventually into a skeleton in
tubular re-gions – which is a convenient metaphor for a number of
interactiveshape modeling applications. Alternatively to skeletons
and cages,a sphere-mesh can for instance be used as an automatic
high-levelstructure for controlling a shape. In this section, we
explain howto tie a mesh to its sphere-mesh and use the latter to
interactivelycontrol the deformation of the former in a
multi-resolution fashion.
Overview Given a mesh, its sphere-mesh and a skinning machin-ery
(e. g., linear blends [Lewis et al. 2000]), we compute a skin-ning
of the mesh establishing a mesh/sphere-mesh relationship andprovide
the user with interactive control primitives in the form ofspheres,
edges and triangles from the sphere-mesh (see Fig. 9).The mesh
geometry is updated in real time according to the skin-ning and the
current sphere-mesh layout i.e., translations, rotationand scaling
prescribed by the user on the primitives. Moreover,the user can
instantly change the editing scale by navigating thesphere-mesh
hierarchy (see Fig. 12). After each deformation, thesphere-mesh is
updated to fit the deformed geometry. This frame-work, as well as
providing an automatic multi-resolution controlstructure (while
most deformation cages are constructed manuallyfor instance),
combines interesting properties of several alterna-tive methods:
(i) as with skeleton-based systems, elongated parts(e.g., arms,
legs) can be bent by simply setting rotations on se-lected spheres;
(ii) as with cages [Lipman et al. 2008], the volumeof a region can
be smoothly controlled, using spheres radii; (iii) as
Input mesh Sphere-Mesh skinning weigths Input mesh Sphere-Mesh
skinning weigths skinning weigths Results
Figure 9: Sphere-mesh-based deformation: starting from a surface
mesh (left), a sphere-mesh is automatically computed (middle left)
andthe input mesh is skinned to its elements (middle). The user can
then manipulate the sphere-mesh to smoothly deform the input
(right).
-
( n = 19 ) ( n = 19 )interaction
( n = 51 )interaction
( n = 51 )hierarchy update
( n = 19 )automatic sphere-mesh
( n = 51 )interaction ResultsInput
Figure 12: Sphere-mesh based deformation: a multi-resolution
editing session, where the sphere-mesh acts as an automatic
multi-resolutioncontrol structure, refined on-demand to match the
desired deformation scale.
with multi-resolution mesh editing [Zorin et al. 1997], the user
canquickly go from large scale deformation to tuning fine details.
Thegood behavior of sphere-meshes at extreme simplification levels
isa key feature here.
Skinning To illustrate the use of sphere-meshes as control
struc-tures, we implemented a deformation machinery based on the
workof Baran and Popović [2007]. More precisely, we define the
weightswji (weight of the vertex i w.r.t. the control primitive j)
as the so-lution to the following system: (∆ +H) · wj = H · pj
where ∆is the discrete surface Laplacian; wj is the vector of
weights wjifor all vertices i (of size n); H = λIn is a diagonal
matrix with λbeing a value describing the diffusion of the weights
over the mesh(the smaller λ, the bigger the diffusion is
performed); and pj is avector with pji = 1, if j is the closest
control primitive to vertex i,0 otherwise. We limit the search of
the closest primitive to the onesadjacent to the sphere to which
the vertex corresponds in the clus-tering of the original mesh. The
result of this linear system is a setof weights wji that sum up to
1 for all vertices i [Baran and Popović2007]. The left hand-side
matrix of the linear system ∆ + H issparse and independent of j, we
can therefore factorize the sys-tem once and solve it iteratively
over each primitive j to obtain theweights of the whole input mesh
w.r.t. j. As a result, the user caneasily define smooth
deformations on the mesh by applying rigidtransformations on the
primitives of its sphere-mesh approximation(see Fig. 9).
Multi-resolution freeform deformation To turn the
previousframework into a multi-resolution one, we record, at each
edge-collapse of the initial sphere-mesh approximation (see Sec.
3), thepositions and radii of the two collapsed vertices and of the
resultingone, as well as the set of edges/triangles that were
created/deleted.We structure these events in a binary tree so that
the user can nav-igate through the so-defined hierarchy to gather
the desired controlstructure intuitively (i. e., level-of-detail
sphere-mesh).
At deformation time, the user simply applies rigid
transformationsto the individual primitives of the sphere-mesh at a
chosen level ofdetail and gets a real-time feedback of the induced
smooth defor-mation on the original high-resolution mesh (see Fig
12). Sincethe left hand side of the linear system (∆ + H) does not
dependon the control structure, it does not need to be re-factored,
andthe update of the whole structure as well as the computation
ofnew weights can be performed in real-time. Each time the
userswitches the current editing level of detail, the spheres in
the hi-erarchy are updated bottom-up, computing new SQEM Qi at
eachlevel of the hierarchy. This update step is necessary to ensure
thatthe entire sphere-mesh hierarchy fits the deformed geometry of
themesh, and not the initial one. In practice, we start by
computingthe new SQEM for each leaf (i.e., mesh vertex) of the tree
based on
the current geometry of the mesh. For all recorded collapses
(i.e.,internal tree node) uv → w, the sphere sw of the parent w is
ob-tained by minimizing children quadrics, i. e., Qw = Qu+Qv ,
andsw = argminsQw(s). This tree update is linear in the numberof
input vertices and is performed in a few milliseconds on modelsmade
of several hundreds of thousands vertices, as only the geom-etry of
the spheres requires an update, while the topology of theinitial
sphere-mesh remains unchanged.
Although the skinning method of Baran and Popović works well
inour experiments, any alternative skinning scheme may be used
withour structure, thus providing a multi-resolution control
interface forall linear blend skinning (LBS) techniques.
6 Discussion
6.1 Limitations & Future work
Representation Currently, a sphere-mesh represents the surfaceas
a base complex (vertices, triangles, ...) and a
spatially-varyingthickness (spheres radius), but the actual surface
geometry is ex-pressed as the linear interpolation of the spheres
over the complexand is not directly transformable into e. g., a
triangle mesh. “Clos-ing the loop” and extracting a high quality
mesh from the sphere-mesh boundary is an interesting direction for
future work.
Incomplete data and open surfaces As shown in the result
sec-tion, incomplete surfaces with large holes often see their
holes filledby the sphere-mesh geometry. Indeed, there is no
explicit modelingof boundaries in the sphere-mesh representation
and defining a re-striction of the interpolated geometry to an open
2-manifold is leftas future work.
Shape approximation Currently, our definition of sphere-meshes
does not allow to enforce, in a simple manner, that spheresremain
strictly inside the shape or that the resulting mesh preservesthe
input’s topology i.e., topological errors can occur at
extremesimplification levels. Furthermore, sphere-meshes represent
shapeswith few connected convex components better, and models
featur-ing large concave parts still require a large number of
spheres to bemodeled properly.
Optimization Our approximation algorithm worked well on allthe
examples we tried but does not, unfortunately, provide theglobal
minimizer. Indeed, our approximation strategy is limitedby the fact
that we fit spheres to regions, but do not optimize forthe
interpolation between the spheres, which is our major
researchdirection for future work. In some cases, the interpolated
sphere-mesh geometry can be a poor approximation of the input
surfaceeven if the spheres fit their respective regions correctly.
Bottom-
-
up algorithms (e. g., [Garland and Heckbert 1997]) typically
donot optimize for the connectivity at each step, which is not
op-timal and could benefit, for instance, from intermediate
try-and-test steps. However, this would require efficiently
computing theinput/sphere-mesh distance for each try, dramatically
increasing thecomputational complexity of the algorithm.The
partitioning is alsocomputed by minimizing the one way L2 distance
from the inputmesh to its simplified geometry, and the results
could be furtherimproved by minimizing the Hausdorff distance
instead. Lastly,we use a bottom-up reduction of the input mesh
connectivity asthe backbone of our approximation algorithm.
Alternative mecha-nisms, such as variational or statistical sphere
distributions may bederived to exploit our SQEM differently.
6.2 Conclusion
We proposed a shape approximation algorithm based on a sphere
in-terpolation over a mesh substructure, for capturing complex
shapeswith a reduced set of connected spheres. The main technical
contri-bution is the SQEM whose minimization finds spheres
representingbest the tangent spaces of a set of polygons. We also
proposed analgorithm for efficiently computing a sphere-mesh
approximating atriangle mesh, with a natural multi-resolution
structure and an ex-plicit control on its feature sensitivity. We
analyzed its performanceon a diverse set of inputs, showing that a
sphere-mesh approxima-tion performs in general better than mesh
decimation. Lastly, weproposed an application of sphere-meshes to
shape modeling byusing them as automatic multi-resolution control
structures for in-teractive freeform deformation. Beyond the
possible technical im-provements discussed earlier, we believe that
sphere-meshes can befurther developed for shape processing and
analysis methods, in-cluding reconstruction from point clouds,
progressive compression,shape recognition and visualization
scenarios.
Acknowledgements This work has been partially funded by
theEuropean Commission under contract FP7-287723 REVERIE
andFP7-323567 Harvest4D, by the ANR iSpace&Time project and
bythe Chaire MODIM of Telecom ParisTech. We thank the anony-mous
reviewers for their remarks and suggestions.
ReferencesALLIEZ, P., DE VERDIÈRE, E. C., DEVILLERS, O., AND
ISENBURG, M. 2003. In
Shape Modeling International, 2003, IEEE, 49–58.
AMENTA, N., AND BERN, M. 1999. Surface reconstruction by voronoi
filtering.Discrete & Computational Geometry 22, 4, 481–504.
AMENTA, N., CHOI, S., AND KOLLURI, R. 2001. The power crust. In
Proceedingsof the sixth ACM symposium on Solid modeling and
applications, ACM, 249–266.
ATTALI, D., AND MONTANVERT, A. 1996. Modeling noise for a better
simplificationof skeletons. In Image Processing, 1996.
Proceedings., International Conferenceon, vol. 3, IEEE, 13–16.
BARAN, I., AND POPOVIĆ, J. 2007. Automatic rigging and
animation of 3d charac-ters. In ACM Transactions on Graphics (TOG),
vol. 26, ACM, 72.
BEN-CHEN, M., AND GOTSMAN, C. 2008. Characterizing shape using
conformalfactors. In Eurographics workshop on 3D object retrieval,
1–8.
BLUM, H. 1967. A Transformation for Extracting New Descriptors
of Shape. InModels for the Perception of Speech and Visual Form, W.
Wathen-Dunn, Ed. MITPress, Cambridge, 362–380.
BRADSHAW, G., AND O’SULLIVAN, C. 2002. Sphere-tree construction
usingdynamic medial axis approximation. In Proceedings of the 2002
ACM SIG-GRAPH/Eurographics symposium on Computer animation, ACM,
33–40.
BRADSHAW, G., AND O’SULLIVAN, C. 2004. Adaptive medial-axis
approximationfor sphere-tree construction. ACM Transactions on
Graphics (TOG) 23, 1, 1–26.
CHAZAL, F., AND LIEUTIER, A. 2005. The λ-medial axis. Graphical
Models 67, 4,304–331.
COHEN-STEINER, D., ALLIEZ, P., AND DESBRUN, M. 2004. Variational
shapeapproximation. In ACM Transactions on Graphics (TOG), vol. 23,
ACM, 905–914.
DE FLORIANI, L., MAGILLO, P., PUPPO, E., AND SOBRERO, D. 2004. A
multi-resolution topological representation for non-manifold
meshes. Computer-AidedDesign 36, 2, 141–159.
DEY, T., AND ZHAO, W. 2004. Approximate medial axis as a voronoi
subcomplex.Computer-Aided Design 36, 2, 195–202.
GARLAND, M., AND HECKBERT, P. 1997. Surface simplification using
quadric errormetrics. In Proceedings of the 24th annual conference
on Computer graphics andinteractive techniques, ACM
Press/Addison-Wesley Publishing Co., 209–216.
GÄRTNER, B., AND HERRMANN, T. 2001. Computing the width of a
point set in3-space.
HOPPE, H., DEROSE, T., DUCHAMP, T., MCDONALD, J., AND STUETZLE,
W.1993. Mesh optimization. In ACM SIGGRAPH, 19–26.
JAMES, D. L., AND PAI, D. K. 2004. Bd-tree: output-sensitive
collision detection forreduced deformable models. ACM Transactions
on Graphics (TOG) 23, 3, 393–398.
JI, Z., LIU, L., AND WANG, Y. 2010. B-mesh: A modeling system
for base meshes of3d articulated shapes. In Computer Graphics
Forum, vol. 29, Wiley Online Library,2169–2177.
LEWIS, J., CORDNER, M., AND FONG, N. 2000. Pose space
deformation: a unifiedapproach to shape interpolation and
skeleton-driven deformation. In Proceedingsof the 27th annual
conference on Computer graphics and interactive techniques,ACM
Press/Addison-Wesley Publishing Co., 165–172.
LINDSTROM, P. 2000. Out-of-core simplification of large
polygonal models. In ACMSIGGRAPH, 259–262.
LIPMAN, Y., LEVIN, D., AND COHEN-OR, D. 2008. Green coordinates.
ACMTransactions on Graphics (TOG) 27, 3, 78:1–78:10.
LU, L., CHOI, Y., WANG, W., AND KIM, M. 2007. Variational 3d
shape segmentationfor bounding volume computation. In Computer
Graphics Forum, vol. 26, WileyOnline Library, 329–338.
MIKLOS, B., GIESEN, J., AND PAULY, M. 2010. Discrete scale axis
representationsfor 3d geometry. ACM Transactions on Graphics (TOG)
29, 4, 101.
PIXOLOGIC, 2001. Zbrush.
ROSSIGNAC, J., AND BORREL, P. 1993. Multi-resolution 3d
approximation for ren-dering complex scenes. Modeling in Computer
Graphics, 455–465.
RUSINKIEWICZ, S., AND LEVOY, M. 2000. Qsplat: a multiresolution
point renderingsystem for large meshes. In SIGGRAPH, 343–352.
SCHAEFER, S., AND WARREN, J. 2003. Adaptive vertex clustering
using octrees. InProceedings of SIAM Geometric Design and
Computing, 491–500.
STOLPNER, S., KRY, P., AND SIDDIQI, K. 2012. Medial spheres for
shape approx-imation. Pattern Analysis and Machine Intelligence,
IEEE Transactions on 34, 6,1234–1240.
SUD, A., FOSKEY, M., AND MANOCHA, D. 2007. Homotopy-preserving
medial axissimplification. International Journal of Computational
Geometry & Applications17, 05, 423–451.
TAM, R., AND HEIDRICH, W. 2003. Shape simplification based on
the medial axistransform. In Visualization, 2003. VIS 2003. IEEE,
IEEE, 481–488.
TURK, G. 1992. Re-tiling polygonal surfaces. Computer Graphics
(SIGGRAPH 92)26, 2 (July), 55–64.
WANG, R., ZHOU, K., SNYDER, J., LIU, X., BAO, H., PENG, Q., AND
GUO, B.2006. Variational sphere set approximation for solid
objects. The Visual Computer22, 9, 612–621.
WU, J., AND KOBBELT, L. 2005. Structure recovery via hybrid
variational surfaceapproximation. Computer Graphics Forum 24, 3,
277–284.
YAN, D.-M., LIU, Y., AND WANG, W. 2006. Quadric surface
extraction by varia-tional shape approximation. In Geometric
Modeling and Processing, vol. 4077 ofLecture Notes in Computer
Science. 73–86.
YAN, D.-M., LÉVY, B., LIU, Y., SUN, F., AND WANG, W. 2009.
Isotropic remeshingwith fast and exact computation of restricted
voronoi diagram. In Proc. Symposiumon Geometry Processing,
1445–1454.
ZORIN, D., SCHRÖDER, P., AND SWELDENS, W. 1997. Interactive
multiresolutionmesh editing. In ACM SIGGRAPH ’97, SIGGRAPH ’97,
259–268.