PhysicsBased Shape Modeling And Shape Recovery Using
Multiresolution Subdivision Surfaces
Chhandomay Mandal* Hong Qint Baba C. Vemuri*
*Department of Computer and Information Science and Engineering
University of Florida
tDepartment of Computer Science
State University of New York at Stony Brook
Abstract
The popularity of physicsbased modeling is increasing during the
last few years in computer graphics, animation, modeling and sci
entific visualization areas, as it can overcome some of the shortcom
ings of the traditional geometric modeling techniques. In this pa
per, we propose a powerful physicsbased deformable model based
on the multiresolution subdivision surfaces. The proposed model
is much more general than the previously published subdivision
surfacebased deformable models. It allows the user to recover
shapes from a set of unorganized points in 3D, and then directly edit
the recovered smooth shape hierarchically at any desired level. Al
ternatively, the user can use the model for shape modeling or shape
recovery purposes as well as a standalone system, thereby provid
ing a very flexible system to the user. We present the mathemati
cal formulation and implementation details of the deformable mul
tiresolution subdivision surfaces along with experimental results to
show the importance of the proposed model in shape modeling and
shape recovery.
1 Introduction
Shape recovery and shape modeling are traditionally viewed as two
distinct areas in computer graphics and geometric modeling liter
ature. However, there are potential benefits if these two can be
combined in a unified framework. For example, the modeler starts
from scratch to build a specific model in a typical geometric mod
eling scenario. First, a rough shape is modeled and then it is fine
tuned by manipulating control vertex positions to obtain the de
sired effects. This turns out a cumbersome process in general. On
the other hand, shape recovery using stateoftheart methods yield
large polygonal meshes which are very difficult to manipulate, es
pecially for global changes in shape. Multiresolution analysis on
these large meshes becomes a necessity to obtain a simplified mesh
in order to change the global shape. However, most often the re
sulting meshes from a shape recovery application are not directly
amenable to multiresolution analysis. Computationally expensive
remeshing techniques are needed to convert these meshes into a
specific type of meshes on which multiresolution analysis can be
performed. This specific type of mesh is typically known as mesh
with "subdivisionconnectivity," implying a topologically equiva
lent mesh with the same connectivity as of the given mesh can be
obtained by recursive subdivision of a very simple known initial
mesh.
In this paper, we present a deformable multiresolution subdi
vision surface model that conveniently combines shape recovery
and shape modeling in a unified framework. In this framework,
the modeler can scan in 3D points of a prototype model, recover
the shape using the proposed dynamic subdivision surface model,
and edit at any desired resolution using physicsbased force tools.
Thus, the modeler is relieved of the burden of both building an ini
tial model and editing a cumbersome huge polygonal mesh. The
shape recovery process starts with a smooth subdivision surface
model which has a simple initial mesh. This model is deformed
using synthesized forces from the given data points and is automat
ically refined using some predefined error in fit criteria. The ini
tial mesh of the final recovered smooth shape has subdivision con
nectivity inbuilt, as it is obtained by subdivision refinement, and
therefore no remeshing is needed for multiresolution analysis. The
dynamic framework for subdivision surfacebased wavelets makes
multiresolution editing using physicsbased force tools easy to per
form. These advantages of shape modeling and shape recovery in
a unified framework is further illustrated in subsequent sections.
However, prior to the technical details of our proposed scheme, we
shall briefly review the previous work on physicsbased modeling
as well as on subdivision surfaces.
2 Background and Previous Work
Deformable surfaces typically use large number of degrees of free
dom for representing the model geometry. A large variety of shapes
can be modeled using this type of model, but handling a large
number of degrees of freedom can be cumbersome. However, the
large degrees of freedom of a deformable model are embedded in a
physicsbased framework to allow only a "physically meaningful"
model behavior. Various types of energies are assigned to the model
using the degrees of freedom, and the model "deforms" to find an
equilibrium state with minimal energy. The motion equation is de
rived using Lagrangian dynamics [11], where various energies as
sociated with model gives rise to internal and external forces. The
equilibrium state of the model is a model position where the internal
deformation force becomes equal to the externally applied force.
These physicsbased deformable models are useful for modeling
where the modeler can deform a surface by applying synthesized
forces, and for data fitting where external forces are synthesized
from a given data set such that the model approximates the given
data at equilibrium.
The freeform deformable models were first introduced to the
computer graphics community in Terzopoulos et al. [28] and were
further developed by Terzopoulos and Fleischer [27], Pentland and
Williams [20], Metaxas and Terzopoulos [19]. Celniker and Gos
sard [4] developed a system for interactive freeform design based
on the finite element optimization of energy functionals proposed in
Terzopoulos and Fleischer [27]. Bloor and Wilson [1, 2], Celniker
and Welch [5] and Welch and Witkin [30] proposed deformable B
spline curves and surfaces which can be designed by imposing the
shape criteria via the minimization of the energy functionals subject
to hard or soft geometric constraints through Lagrange multipliers
or penalty methods. Terzopoulos and Qin [29] developed dynamic
NURBS (DNURBS) which are very sophisticated models suitable
for representing a wide variety of freeform as well as standard an
alytic shapes. The DNURBS have the advantage of interactive
and direct manipulation of NURBS curves and surfaces, resulting
in physically meaningful hence intuitively predictable motion and
shape variation.
A severe limitation of most of the existing deformable models is
that they are defined on a rectangular parametric domain. In a real
world scenario, complex surfaces may not be globally parameteriz
able. Hence, it can be very difficult to model surfaces with arbitrary
number of holes, i.e., surfaces of arbitrary genus, using these de
formable models. In the geometric modeling paradigm, this prob
lem is solved using two different techniques : (1) explicit patching
using parametric surfaces and (2) subdivision surfaces.
The explicit patching technique involves partitioning the model
surface into a collection of individual parametric surface patches.
Adjacent surface patches are then explicitly stitched together using
continuity constraints. This explicit stitching process is very com
plicated for modeling smooth surfaces of arbitrary topology due to
the continuity constraints which need to be satisfied along the patch
boundaries.
Subdivision surfaces are simple procedural models which of
fer an alternate representation for the smooth surfaces of arbitrary
topology. A typical recursive subdivision scheme produces a vi
sually pleasing smooth surface in the limit by repeated application
of a fixed set of refinement rules on an userdefined initial con
trol mesh. The initial control mesh is a simple polygonal mesh of
the same topological type as that of the smooth surface to be mod
eled. At each step of subdivision, afiner polygonal mesh with more
vertices and faces is constructed from the previous one via the re
finement process, and the smooth surface is obtained in the limit.
However, a few subdivision steps on the initial mesh generally suf
fice to approximate the smooth surface for all practical purposes.
Various sets of rules lead to different subdivision schemes which
mainly differ in the smoothness property of the resulting limit sur
face and/or the type of initial mesh (i.e. triangular, quadrilateral
etc.) chosen.
A lot of research have been carried out on subdivision surfaces
during the last two decades. The subdivision techniques of Doo and
Sabin [8] and Catmull and Clark [3] generalize the idea of obtain
ing uniform biquadratic and bicubic Bspline patches respectively
from a rectangular control mesh. Loop [15] presented a similar
subdivision scheme based on the generalization of quartic triangu
lar Bsplines for triangular meshes. Hoppe et al. [13] extended his
work to produce piecewise smooth surfaces with selected disconti
nuities. Halstead et al. [12] proposed an algorithm to construct a
CatmullClark subdivision surface that interpolates the vertices of
a mesh of arbitrary topology. Peters and Reif [21] proposed a sim
ple subdivision scheme for smoothing polyhedra. Most recently,
nonuniform DooSabin and CatmullClark surfaces that generalize
nonuniform tensor product Bspline surfaces to arbitrary topolo
gies were introduced by Sederberg et al. [24]. All the schemes
mentioned above generalize recursive subdivision schemes for gen
erating limit surfaces with a known parameterization. Some other
important subdivision techniques were developed by Dyn et al. [9],
Zorin et al. [31], and Kobbelt et al. [14]. The mathematical prop
erties of various types of subdivision surfaces are discussed in a
number of papers. We refer the reader to Mandal [17] for a detailed
list of references.
3 Motivation
Recursive subdivision surfaces are powerful for representing
smooth geometric shapes of arbitrary topology. However, they con
stitute a purely geometric representation, and furthermore, conven
tional geometric modeling with subdivision surfaces may be dif
ficult for representing highly complicated objects. For example,
modelers are faced with the tedium of indirect shape modification
and refinement through timeconsuming operations on a large num
ber of (most often irregular) control vertices when using typical
subdivision surfacebased modeling schemes. Despite the advent
of advanced 3D graphics interaction tools, these indirect geometric
operations remain nonintuitive and laborious in general. In addi
tion, it may not be enough to obtain the most "fair" surface that
interpolates a set of (ordered or unorganized) data points. A cer
tain number of local features such as bulges or inflections may be
strongly desired while requiring geometric objects to satisfy global
smoothness constraints in geometric modeling and computer graph
ics applications.
In contrast, physicsbased modeling provides a superior ap
proach to shape modeling that can overcome most of these limi
tations associated with traditional geometric modeling approaches.
Freeform deformable models governed by the laws of continuum
mechanics are of particular interest in this context. These dynamic
models respond to externally applied forces in a very intuitive man
ner. The dynamic formulation marries the model geometry with
time, mass, damping and constraints via a force balance equation.
Dynamic models produce smooth, natural motions which are easy
to control. In addition, they facilitate interaction especially direct
manipulation of complex geometries. Furthermore, the equilibrium
state of the model is characterized by a minimum of the deforma
tion energy of the model subject to the imposed constraints. The
deformation energy functionals can be formulated to satisfy local
and global modeling criteria, and geometric constraints relevant to
shape design can also be imposed.
It is apparent from the above discussion that a powerful model
can be developed if the advantages of directly and intuitively ma
nipulating a smooth surface using physicsbased force tools and
modeling arbitrary topology using subdivision surfaces can be com
bined together. Recently, some research has been carried out in this
direction. DeRose et al. [7] used a physicsbased subdivision sur
face model in their wonderful short animation film "Geri's Game."
They assigned material properties to control meshes at various sub
division levels in order to simulate cloth dynamics using subdivi
sion surfaces. Note that, they assign physical properties on the con
trol meshes at various levels of subdivision and not on the limit
surface itself, and modelers had to put a considerable amount of
time to figure out correct material property values at different sub
division levels. An alternate approach is proposed in Mandal et al.
[18, 22], where material properties are assigned on the smooth limit
surface obtained via subdivision process, and they reported a com
pact representation of a complex smooth shape. However, they have
to increase the degrees of freedom (control vertices) in order to cap
ture the details present in the shape being modeled. This approach
is named as "multilevel approach" by them. In this paper, we use
a similar technique for locally parameterizing the smooth limit sur
face as in Mandal et al. [18, 22], but the proposed technique, which
we call "multiresolution approach" is significantly different and
much more powerful. We need to compare these two approaches
in detail in order to show the significance of the approach proposed
here, and we devote the next section for this purpose.
4 Multilevel Dynamics vs. Multiresolu
tion Dynamics
Mandal et al. [18, 22] provides a dynamic framework for subdivi
sion surfaces where the users can directly manipulate the smooth
limit surface generated via subdivision process by applying synthe
sized forces. In any subdivision scheme, an initial (control) mesh
is refined using specific subdivision rules to obtain a smooth sur
face in the limit. To develop the dynamic framework, this smooth
limit surface is parameterized over the domain defined by the ini
synthesized applied
force force is the initial
applied transferred mesh deformed
on the back to the evolves smooth
smooth initial to obtain limit
limit (control) equilibrium surface at
surface mesh position equilibrium
by the user I
previous
initial mesh
is replaced
by a new
initial mesh user needs
with more bac o to model
degrees of a more
freedom detailed
obtained via shape
subdivision
on the
previous
initial mesh
black box to the user
Figure 1: Schematic block diagram of the multilevel dynamics ap
proach.
tial mesh and hence, the limit surface can be expressed as a func
tion of the initial mesh. The users apply synthesized forces on the
smooth limit surface which is transferred back on the initial mesh
via a transformation matrix. The initial mesh evolves over time in
response to the applied forces, and consequently the smooth limit
surface deforms to obtain an equilibrium position where all forces
are balanced. Even though various types of forces can be applied
on the limit surface to obtain a desired effect, the possible shapes
that can be obtained via evolution is directly related to the number
of control vertices present in the initial mesh.
The concept of multilevel dynamics is introduced in Mandal et
al. [18, 22] in order to have varying number of control vertices in
the initial mesh, and a wide range of shapes with r arbitrary topol
ogy can be modeled within their dynamic framework. The con
cept of multilevel dynamics is illustrated with block diagrams in
Fig.l. This multilevel dynamics can be considered as a subdivi
sion surfacebased coarsetofine modeling framework and can be
summarized as follows. The user starts with a smooth limit surface
which has a very simple initial mesh with few control vertices. This
smooth surface is deformed by applying synthesized forces so that
the limit surface at equilibrium would look like the final desired
shape but without the details in it. Then, the number of control ver
tices in the initial mesh is increased by replacing the initial mesh
at equilibrium by another one obtained via one subdivision step on
the old initial mesh, and the old initial mesh is discarded. Both of
these old and new initial mesh represent the same limit surface, but
the latter has more control vertices. Now, this new initial mesh,
and consequently the smooth limit surface, can be deformed to ob
tain a shape at equilibrium which has more details. This process is
repeated till the deformed smooth surface has all the desired details.
The limitation of the multilevel dynamics approach is that once
a finer resolution is chosen, the modeler can not opt for a lower
resolution as the dynamics is defined on the current initial mesh.
There is no way of having the dynamics defined on a simpler initial
mesh, at the same time preserving the already obtained details in
the model within the multilevel dynamics approach. This is poten
tially a severe restriction. For example, let us imagine the scenario
depicted in Fig.2. The modeler has recovered a long straight pipe
like shape with lots of detail by synthesized force application on a
smooth limit surface. This smooth limit surface initially had a sim
ple initial mesh with few vertices, but the current initial mesh after
many model subdivision steps has large number of control vertices.
Now, if the modeler wants to bend this straight pipelike shape, the
(a) Shape recovery
initial shape recovered global shape
with few degrees of
freedom
recovered detailed shape
with large degrees of
freedom
(b) Editing the recovered shape Global bending
Multilevel dynamics approach
formulate dynamics on the   ..
current control mesh which
haslarge degrees of freedom,
bend the entire detailed shape.
(time consuming, difficult)
Multiresolution dynamics approach
formulate dynamics on a
coarser level of the control
mesh with few degrees of Q )
freedom, bend the global
shape, and then add back
the details. .
(fast, easy)
detailsdetails
i ur + d(static) (static)
Figure 2: Multilevel dynamics vs. multiresolution dynamics.
synthesized forces applied on the smooth limit surface need to de
form an initial mesh with a large number of control vertices. It
would have been much easier and faster if a lower resolution ver
sion of the current initial mesh could be deformed with the details
being added back when the shape has bent to the desired extent
in response to the applied synthesized forces. Also, this dynamic
framework can integrate shape recovery and shape modeling in a
unified framework where the recovered shape can easily be edited
as well. However, if the modeler wants a global change in the recov
ered shape, a lower resolution control mesh (than the one obtained
via shape recovery process) may be required, and the details need
to be preserved at the same time.
A multiresolution representation of the initial mesh is proposed
in this paper to solve the abovementioned problem. At equilib
rium, an initial mesh is subdivided to obtain an initial mesh with
more control vertices (degrees of freedom). Instead of developing
the dynamics on this newly obtained initial mesh as in the multilevel
dynamics approach, the dynamics is developed on a representation
which views the newly obtained initial mesh as the previous ini
tial mesh plus detail (wavelet) coefficients needed to get the current
initial mesh (see Fig.3). This is essentially developing the dynam
ics on a multiresolution representation of the evolving initial mesh
which has undergone model subdivision step(s) to increase the de
grees of freedom. It may be noted that both the multilevel and the
multiresolution approach have same degrees of freedom to repre
sent the initial mesh obtained after a model subdivision step, but
the degrees of freedom for the multilevel dynamics approach are
the control vertex positions in the newly obtained mesh whereas,
the degrees of freedom for the current approach are the control ver
tex positions in the previous initial mesh and the detailed coeffi
cients necessary to obtain the current initial mesh from the previous
one. The multiresolution approach has the benefit that the modeler
can opt for a lower resolution initial mesh later, on which the dy
namics can be defined, at the same time preserving the detailed
coefficients of the initial mesh on which the dynamics is currently
defined. This concept will be detailed further in later sections, but
first an overview of the multiresolution analysis is provided so that
the reader can easily follow the rest of the material presented in the
paper.
degrees of freedom=3 degrees of freedom = 6
(3 control vertices) (6 control vertices)
(a) Multilevel approach
degrees of freedom= 3 degrees of freedom= 6
(3 controlvertices) (3 controlvertices, 3 detail coefficients)
(b) Multiresolution approach
Figure 3: Representation of the degrees of freedom in multilevel
dynamics and multiresolution dynamics approach.
5 Overview of Multiresolution Analysis
and Wavelets
The basic idea of multiresolution analysis is to decompose a com
plicated function into a lower resolution version along with a set
of detailed coefficients (also known as wavelet coefficients) neces
sary to recover the original function. Multiresolution analysis and
wavelets have widespread applications in diverse areas like image
and signal processing, physics, numerical analysis, computer vision
and computer graphics. An excellent collection of references on ap
plications of multiresolution analysis in computer graphics can be
found in Stollnitz et al. [25]. The idea of multiresolution analysis
is explained next with a simple example.
Let p3 be a vector containing functional values of some arbitrary
function at n discrete points. A lower resolution representation of
the function using m (m < n) functional values can be obtained
from p2 by doing certain weighted averages of the n functional
values stored in p3. This is essentially a low pass filtering followed
by downsampling, and the entire operation can be expressed as
pj = AJpJ, (1)
where pJ is the mvalued vector representing a lower resolution
version and the matrix A3 is of size (m, n) and implements the low
pass filter along with the downsampler.
The lower resolution pj1 has fewer functional values than pj,
and hence some amount of detail present in p' is lost due to the
low pass filtering process. If the low pass filter A3 is chosen appro
priately, it is possible to capture the lost detail by high pass filter
ing followed by a downsampling of the original functional values
stored in p3. This operation can be expressed as
q j Bjp (2)
where qj1 is a (n m)valued vector representing detailed co
efficients necessary to recover pi from pj1. The matrix B3 is of
1 A j2 A p
1 j2 0
e 4: Te f b.
Figure 4: The filter bank.
size (n m, n) and implements the high pass filter along with the
downsampler. The high pass filter B2 is related to the low pass fil
ter Aj. These two filters, A2 and B2, are known as analysis filters
and the process of splitting a high resolution vector p1 into a low
resolution vector pj1 and a vector qj1 storing detail coefficients
is known as decomposition.
The original vector p3 can be reconstructed from the vectors
pj1 and qj1 if the synthesis filters are chosen correctly. This
is called the reconstruction process, which can be expressed as
pj pj pj+ Qjqj1, (3)
where P2 is a refinement matrix of size (n, m) and Qj is a pertur
bation matrix of size (n, mrn). The refinement matrix P2 encodes
the rules for obtaining a vector of larger size from a given vector and
the perturbation matrix Q3 encodes how to obtain a perturbation of
(pj Ppj 1) from the given detailed coefficient vector qc1
The matrices P2 and QJ are collectively called synthesis filters,
and are related to the analysis filters.
The process of decomposition can be continued recursively
as shown in Fig.4 and is known as filter bank. The origi
nal vector is decomposed into a hierarchy of lower resolution
parts p jl,p2,... ,p0 and detail parts qj l,qj2,... ,q0.
The original vector p3 can be recovered from the sequence
p 0, ,q ,...,qj2,qj1. This sequence has the same size as
that of the original vector and is known as the wavelet transform of
the original vector.
The analysis and synthesis filters are designed in such a fash
ion that the low resolution versions are good approximations of the
original function in a least square sense. The decomposition and re
construction processes should have time complexity O(n), where
n is the size of the vector being decomposed or reconstructed. A
detail (wavelet) coefficient value should also be related to the error
introduced in the approximation when that particular coefficient is
set to zero.
Multiresolution analysis is a framework for developing these
analysis and synthesis filters. It involves derivation of a sequence of
nested linear spaces V C V1 C V2 C ... such that the resolution
of the functions contained in some space V3 increases with increas
ing j. Also, there exists an orthogonal complement space I 1 for
each V , j = 1,2,... such that V1 Wi = V1, i.e., the
linear space V1 and its orthogonal complement space 17 to
gether span the linear space V3. The inner product between any
two functions at some level j, j = 0, 1, 2,... needs to be defined
in order to derive the orthogonal complement space.
Let 3, 43,. ., j be a set of basis functions spanning the linear
space V These basis functions are also called scaling functions
for level j. Now, V1 C Vj and hence the basis functions q1,
~1, . ., 1, spanning the linear space Vl, can be expressed
as a linear combination of the basis functions than span the linear
space V This refinability of scaling functions is used to construct
the refinement matrix P which should satisfy the expression
j31 = #2p3, (4)
where 21 = 1, ..., 1], = [&,, u ...,J],
and PN is the (n, m) refinement matrix introduced earlier (Eqn.3).
Similarly, let ., be a set of basis functions
that span the linear space 4j 1. These basis functions, also known
as wavelets at level j 1, together with the basis functions of lin
ear space Vj1 form a basis for the linear space Vi. Next, the
perturbation matrix QJ can be constructed such that it satisfies the
expression
'i1 = 4Q2, (5)
where 'Jl = [ t1 j2~ .. n],and Q3 is the (n,nm)
perturbation matrix introduced in Eqn.3. A more compact expres
sion may be obtained by combining Eqn.4 and 5, which can be
written as
[$P2 1 V1]
$2 [3 1 Q3].
The analysis filters A3 and B3 should satisfy the inverse relation
2 1 1] [ A]
,43. (7)
Both the matrices [P q] and I are of size (n, n) and satisfy
the relation
[P3 I Q3]
BiAi
L[A2J
5.1 Multiresolution Analysis for Surfaces of Arbi
trary Topology
Classically, the multiresolution analysis was developed on infinite
domains such as real line R and plane R2 [6]. However, many ap
plications need multiresolution analysis on bounded intervals, and
techniques for imposing boundary constrains have also been de
rived [10, 23]. The idea of generalizing multiresolution analysis on
arbitrary manifolds was first introduced by Lounsbery et al. [16],
and was further improved by Stollnitz et al. [25] using the concepts
of lifting scheme [26]. In this paper, the multiresolution schemes
derived by Stollnitz et al. [25] for surfaces of arbitrary topology
is used to develop the multiresolution dynamic framework for sub
division surfaces. This involves (1) developing nested spaces us
ing subdivision schemes, (2) selecting an inner product on arbitrary
manifold and (3) constructing biorthogonal wavelets. We can not
go into the details of how to construct the analysis and synthesis
filters for multiresolution analysis on meshes of arbitrary topology
due to space constraints. We used the "kdisc wavelets" developed
in Stollnitz et al. [25], and the reader can find the expressions for
the corresponding analysis and synthesis filters there.
6 Multiresolution Representation
The multiresolution analysis on arbitrary manifold was devel
oped to obtain good low resolution approximations of complicated
meshes. This is a topdown technique where one starts with a com
plicated arbitrary topology mesh and goes on obtaining lower res
olution meshes using analysis filters. The complicated mesh on
which multiresolution analysis is applied can be reconstructed us
ing the synthesis filters. In this paper, the multiresolution technique
is used in a novel bottomup approach where an evolving control
mesh of a dynamic subdivision surface is subdivided at equilibrium
to obtain more degrees of freedom, and then, the resulting control
mesh is treated as the previous control mesh and a collection of de
tail (wavelet) coefficients. Of course, the detail coefficients are zero
when an control mesh is replaced by another control mesh obtained
by a pure subdivision step on the previous mesh, but becomes non
zero as the new control mesh (represented as previous control mesh
and wavelet coefficients) evolves over time in response with the
synthesized force application. This idea is further illustrated in the
rest of this section.
Let s be a smooth limit surface obtained via infinite number of
subdivision steps on an initial mesh So, whose vertex positions are
collected in po. The limit surface can be written as
s = JOpO, (9)
where J0 is a collection of basis functions. These basis functions
are obtained as a limiting process of subdivision, and may or may
not have analytic expressions. Mandal et al. [18] discusses at length
on how to express the smooth limit surface resulted via subdivision
using any type of subdivision rules in this form. Stollnitz et al. [25]
discusses on how to perform mathematical operations correctly in
case the basis functions obtained through subdivision do not have
analytic representation. Now, if we obtain the control mesh S1 by
subdividing the control mesh So once, then the same limit surface
can be expressed as
s = J p, (10)
where pl is the collection of vertex positions of the mesh S1 and
J1 is the collection of corresponding basis functions. Since p =
P1p0, the limit surface s can also be written as
s = JPlpo. (11)
The difference between Eqn.9 and Eqn.10 is that the limit surface s
has more degrees of freedom (control vertices) for representation in
the latter in comparison with the former. However, in Eqn.11, even
though the limit surface is expressed using the same basis functions
as that of S1, the degrees of freedom remains the same as that of
go. Eqn.11 can be modified in the following manner so that it uses
same basis functions and same number of degrees of freedom as
that of S1.
s = J P [Pl Q1] O (12)
where qo is the collection of wavelet coefficients whose values are
zero, P and Q are the synthesis matrices P1ift andQLift respec
tively for the "kdisk wavelets" [25]. The above formulation yields
a multiresolution representation of the control mesh S1 obtained
via one subdivision step on the previous control mesh So. The
mesh S1 is represented as a mesh at level 0 along with the detail
(wavelet) coefficients at level 0. As mentioned earlier, these co
efficients would become nonzero when the smooth limit surface
deforms over time due to synthesized force application. Similarly
after one more subdivision step, the new control mesh S2 can be
viewed as control vertex positions at level 0, wavelet coefficients at
level 0 and wavelet coefficients at level 1, and can be written as
s = J2 p
= 2 [PQ [2 ]
j2 9p2Q Q1 o
J 1" Q J] o o I
S (13)
where J2 is the collection of basis functions at level 2, p2, pl and
p0 are the control vertex positions at level 2, 1 and 0 respectively,
ql and q0 are the wavelet coefficients at level 1 and 0 respectively,
I is the identity matrix and 0 is the zero matrix. This idea can be
generalized for a control mesh S3 obtained after jth subdivision
and the corresponding expression can be written as
s = J3 A' p', (14)
where (pj) T= [p0q ... qj2qj1], and
A 2p1 Q j1 0 pj2
AJ = [P Q 0 0 I 0
SP Q 0 ... 0
S 0 0 I ... I
Q 2
0
o ol
I I
The multiresolution dynamics is developed using this formula
tion in the next section.
7 Dynamics
The smooth limit surface s can be made dynamic if the con
trol vertex positions at level 0 and wavelet coefficients at level
1, 2,..., (j 1) are functions of time. The velocity of the smooth
surface, controlled by the mesh S3 obtained through j steps of
model subdivision, is given by
s(x, p ) = J (x) A 1p,. (15)
where the overstruck dot denotes the time derivative and x C S3.
The Lagrangian motion equation is given by
Mip + DpJ r + KIp" = fj, (16)
where M2, D3 and K3 are the jth level mass, damping and stiff
ness matrices respectively and fj is the generalized force vector
at level j. If i(x) is the mass density of the subdivision surface
model, then the mass matrix at jth level is given by
Mj = I /i(x)(AJ)T(JJ(x))TjJ(x)Ajdx.
The damping matrix D2 can be derived in a similar fashion, while
the stiffness matrix Kg can be obtained following the techniques
described in Mandal et al. [18]. The generalized force vector at
level j can be written as
f{ = f (AJ)T(jJ(x))Tf(x t)dx.
8 Implementation Details
Multiresolution representation of the evolving control mesh
achieves coarsetofine as well as finetocoarse manipulation of the
smooth limit surface. For example, the user starts with a deformable
smooth surface with a simple control mesh So and directly manip
ulates the limit surface by applying synthesized forces. When an
equilibrium is obtained, the user can increase the degrees of free
dom by switching to a control mesh S1 which is theoretically ob
tained by applying one subdivision step on So, but represented as a
collection of vertex positions in So along with wavelet coefficients
at level 0 needed to reconstruct S1. The wavelet coefficients are
zero at the point of switching, but becomes nonzero as the control
mesh S1, represented as mentioned above, evolves over time. The
user can further increase the degrees of freedom to obtain more lo
calized effect by introducing control mesh S' which is represented
as control vertex positions of mesh So, along with wavelet coeffi
cients at level 0 and 1. Thus the user can have coarsetofine manip
ulation of the smooth limit surface. This facility is also present in
the multilevel dynamics approach [18] as mentioned earlier. How
ever, the multilevel dynamics approach does not support fineto
coarse manipulation it fails if the user wants to apply synthesized
forces on a coarser control mesh at level j after moving up to level
j + k. This can be achieved in multiresolution approach by sim
ply using the dynamic equation of motion at level j, and applying
synthesized forces on a smooth limit surface which is obtained by
multiresolution synthesis using "time varying" control vertex posi
tions at level 0 and wavelet coefficients at level 0, 1,..., (j 1)
and "static" wavelet coefficients at level j, (j + 1),..., (j + k 1).
If the user switches back to level (j + k), then the control vertex
positions at level 0 as well as all the wavelet coefficients at level
0,1,..., (j 1),j, (j + 1),...,(j + k 1) become function of
time, and the system switches back to the motion equation of level
(j + k).
The actual implementation differs slightly from the formulation
to achieve efficiency in coarsetofine and finetocoarse manipula
tion. In the implemented system, the user starts out with a smooth
limit surface which has a simple control mesh with very few de
grees of freedom. The model grows and when the equilibrium is
achieved, one step of subdivision yields larger degrees of freedom.
This larger degrees of freedom are the control vertex positions in
this finer resolution and not control vertex positions in lower reso
lution along with wavelet coefficients in that lower resolution. The
model can grow further, and if more subdivision step is needed to
increase the degrees of freedom, it is handled in a similar fashion.
If at any certain point of time the user needs to go back to a coarser
level control mesh, wavelet decomposition is done on the higher
resolution base mesh. This decomposition yields vertex positions
in the coarser level mesh (which becomes the new base mesh) and
nonzero wavelet coefficients. The lower resolution mesh evolves
with time due to the force applied on the limit surface. It may be
noted that the limit surface in this scenario is obtained by doing
wavelet reconstruction with nonzero wavelet coefficients at some
levels. The user can choose further coarser level control mesh by
repeating the same process.
In the implemented system, the user can achieve global defor
mation on a detailed mesh by going down couple of levels using
wavelet decomposition, retaining the wavelet coefficients, and ap
plying force on the limit surface (obtained through wavelet recon
struction process) and letting the coarser level mesh evolve. Simi
larly, to achieve local deformation on a coarser mesh, the user can
move up couple of steps by doing subdivision (and adding nonzero
wavelet coefficients at higher levels, if present) and applying syn
thesized forces in the region of interest.
The formulation using wavelet representation has mathematical
niceties, but inefficient for implementation purposes. The synthe
sized force is applied on the limit surface. To evaluate the limit
surface, wavelet reconstruction needs to be done at each time step
starting from the original control mesh upto a specified level if
an explicit wavelet representation of the evolving control mesh is
maintained as mentioned in the formulation. On the other hand, if
the evolving mesh is control vertex positions at that resolution, then
the wavelet reconstruction starts from that resolution for evaluating
the limit surface. Wavelet decomposition needs to be done while
going down from finer to coarser resolution, but this happens only
once in a while, and not at each time step. Therefore, the imple
mented version is much more efficient. It may be noted that the
motion equation at any level is implemented using finite element
techniques discussed in Mandal et al. [18] for various subdivision
schemes.
9 Experimental Results
The proposed multiresolution dynamic subdivision surface model
can be used in shape recovery and shape modeling applications in
dependently in a similar way as in Mandal et al. [18]. However,
the added benefit of the proposed model is that a recovered shape
can be edited at any coarser or finer level (which is not permitted in
the approach taken by Mandal et al. [18]). The proposed multires
olution dynamic subdivision techniques present hierarchical shape
recovery and shape modeling within a common framework, where
(a) (b)
(c) (d)
(d) (e)
Figure 5: (a) The initialized model along with the head data set;
(b) the fitted model with two subdivisions on the initial mesh, along
with attached springs for editing. The model after editing (c) at
lower resolution, (d) at the same resolution of the fitted model, and
(e) at higher resolution.
the modeler can scan in 3D data points of a prototype model, re
cover the underlying shape from the point set, and then edit the re
covered shape. The multiresolution representation of the evolving
control mesh enables the modeler to edit the smooth limit surface
at any desired level. Within the proposed multiresolution dynamic
framework, the modeler does not need to build a model from scratch
(unlike other shape modeling techniques), and there is no need of
using computationally intensive remeshing techniques for multires
olution representation (unlike other shape recovery techniques).
The idea is illustrated with a set of examples. In the first ex
ample, we use a data set of a head comprising 1779 data points in
3D. We use butterfly subdivision technique [9] to build the mul
tiresolution dynamic subdivision surface model. The initialization
is a smooth surface resulted via butterfly subdivision technique
on a control (initial) mesh of 24 triangular faces with 14 vertices
(Fig.5(a)). The initialized smooth surface model is deformed by ap
plying synthesized springbased forces from the data points in 3D
till the evolving model reaches an equilibrium. The system checks
for the error in fit at equilibrium. If the error is more than the pre
scribed threshold, the degrees of freedom (control vertices) of the
evolving model is increased using the butterfly subdivision tech
nique based multiresolution dynamics approach. This process is
repeated recursively until the prescribed error in fit is achieved. To
obtain a fit with 3% error, the degrees of freedom of the evolving
model had to be increased twice. The final fitted model (Fig.5(b))
has a control mesh with 384 triangular faces and 194 vertices. Once
the smooth shape is recovered, it can be edited at any desired level.
We show the effects of editing the recovered smooth shape at var
ious levels using spring forces from two points in 3D for the head
example (Fig.5(c)(e)). The effect was more global in the lowest
level edited, and the effect became increasingly local as the level of
editing was increased. Note that, the user perceives a smooth sur
face at any editing resolution, but the effect of force application on
the smooth surface varies with change in editing levels.
In the next example, we use an anvil data set comprising 3000
Figure 6: (a) The initialized model along with the anvil data set;
(b) the fitted model with two subdivisions on the initial mesh, along
with an attached spring for editing. The model after editing (c) at
lower resolution, (d) at the same resolution of the fitted model, and
(e) at higher resolution.
data points in 3D. As in the previous example, we initialize a simple
deformable smooth subdivision surface model which has a control
(initial) mesh of 24 triangular faces with 14 vertices. The initial
ized model along with the data set is shown in Fig.6(a). Springs are
attached to the initialized model from the data points in 3D, and the
initialized model is deformed due to the springbased applied force.
The degrees of freedom was increased twice through butterfly sub
division process in order to achieve a 3% error in fit, and the fitted
model, which has a control mesh of 384 triangular faces and 194
vertices, is shown in Fig.6(b). Next, we edit the recovered smooth
shape by applying spring forces from a point in 3D, and the editing
effects at different resolutions are shown in Fig.6(c)(e). As in the
previous example, the editing effect shifted from global to localized
effect as the editing resolution is increased.
10 Conclusions
We have presented a multiresolution dynamic framework for subdi
vision surfaces, which effectively combines the shape modeling and
shape recovery problem under a unified framework. The proposed
model reaps the benefits of easily controlled, intuitive and direct
manipulation of smooth surfaces using physicsbased force tools,
as well as those of subdivision surfaces for representing surfaces of
arbitrary topology. The multiresolution representation of the evolv
ing control mesh aids coarsetofine as well as finetocoarse editing
needs, and the model performs well in the combined shape recov
ery and shape modeling tasks. In future, we would like to test the
model for more complicated real world shape recovery and shape
modeling examples.
References
[1] M.I.J. Bloor and M.J. Wilson, "Representing PDE surfaces in
terms of Bsplines," Computer Aided Design, vol. 22, no. 6,
pp. 324 331, 1990.
(a) (b)
[2] M.I.J. Bloor and M.J. Wilson, "Using partial differential
equations to generate freeform surfaces," Computer Aided
Design, vol. 22, no. 4, pp. 202 212, 1990.
[3] E. Catmull and J. Clark, "Recursively generated Bspline sur
faces on arbitrary topological meshes," Computer Aided De
sign, vol. 10, no. 6, pp. 350 355, 1978.
[4] G. Celniker and D. Gossard, "Deformable curve and sur
face finite elements for freeform shape design," in Computer
Graphics Proceedings, ACM SIGGRAPH, Annual Confer
ence Series, pp. 257 266, July, 1991.
[5] G. Celniker and W. Welch, "Linear constraints for deformable
Bspline surfaces," in Proceedings of the Symposium on Inter
active 3D Graphics, pp. 165 170. ACM, New York, 1992.
[6] I. Daubechies, "Orthonormal bases of compactly supported
wavelets," Communications on Pure and Applied Mathemat
ics, vol. 41, no. 7, pp. 909 996, 1988.
[7] T. DeRose, M. Kass and T. Truong, "Subdivision surfaces
in character animation," in Computer Graphics Proceedings,
ACM SIGGRAPH, Annual Conference Series, pp. 85 94,
July, 1998.
[8] D. Doo, "A subdivision algorithm for smoothing down ir
regularly shaped polyhedrons," in Proceedings on Interactive
Techniques in Computer AidedDesign, pp. 157 165, 1978.
[9] N. Dyn, D. Levin and J.A. Gregory, "A butterfly subdivision
scheme for surface interpolation with tension control," ACM
Transactions on Graphics, vol. 9, no. 2, pp. 160 169, April,
1990.
[10] A. Finkelstein and D.H. Salesin, "Multiresolution curves," in
Computer Graphics Proceed ". . I SIGGRAPH, Annual
Conference Series, pp. 261 268, July, 1994.
[11] B.R. Gossick, Hamilton's Principle and Physical Systems,
Academic Press, New York, 1967.
[12] M. Halstead, M. Kass and T. DeRose, "Efficient, fair interpo
lation using CatmullClark surfaces," in Computer Graphics
Proceedings, ACM SIGGRAPH, Annual Conference Series,
pp. 35 44, August, 1993.
[13] H. Hoppe, T. DeRose, T. Duchamp, M. Halstead, H. Jin,
J. McDonald, J. Schweitzer and W. Stuetzle, "Piecewise
smooth surface reconstruction," in Computer Graphics Pro
ceedings, ACM SIGGRAPH, Annual Conference Series, pp.
295 302, July, 1994.
[14] L. Kobbelt, "A variational approach to subdivision,"
ComputerAided Geometric Design, vol. 13, pp. 743 761,
1996.
[15] C. Loop, Smooth subdivision surfaces based on triangles,
M.S. thesis, University of Utah, Department of Mathematics,
1987.
[16] J.M. Lounsbery, T. DeRose and J. Warren, "Multiresolu
tion analysis for surfaces of arbitrary topological type," ACM
Transactions on Graphics, vol. 16, no. 1, pp. 34 73, January,
1997.
[17] C. Mandal, A dynamic framework for subdivi
sion surfaces, Ph.D. thesis, University of Florida,
Gainesville, 1998, UFCISETR98022, Avaialable via
http://www.cise.ufl.edu/techreports/techreports/tr98
abstracts.shtml.
[18] C. Mandal, H. Qin and B.C. Vemuri, "A novel FEMbased
dynamic framework for subdivision surfaces," University
of Florida Tech. Report UFCISETR98021, Avaialable
via http://www.cise.ufl.edu/techreports/techreports/tr98
abstracts.shtml.
[19] D. Metaxas and D. Terzopoulos, "Dynamic deformation of
solid primitives with constraints," in Computer Graphics Pro
ceedings, ACM SIGGRAPH, Annual Conference Series, pp.
309 312, July, 1992.
[20] A. Pentland and J. Williams, "Good vibrations : Modal dy
namics for graphics and animation," in Computer Graphics
Proceedings, ACM SIGGRAPH, Annual Conference Series,
pp. 215 222, 1989.
[21] J. Peters and U. Reif, "The simplest subdivision scheme for
smoothing polyhedra," ACM Transactions on Graphics, vol.
16, no. 4, pp. 420 431, October, 1997.
[22] H. Qin, C. Mandal and B.C. Vemuri, "Dynamic Catmull
Clark subdivision surfaces," IEEE Transactions on Visual
ization and Computer Graphics, vol. 4, no. 3, pp. 215 229,
July September, 1998.
[23] E. Quak and N. Weyrich, "Decomposition and reconstruction
algorithms for spline wavelets on a bounded interval," CAT
report 294, Center for Approximation Theory, Texas A&M
University, April, 1993.
[24] T.W. Sederberg, J. Zheng, D. Sewell and M. Sabin, "Non
uniform recursive subdivision surfaces," in Computer Graph
ics Proceedings, ACM SIGGRAPH, Annual Conference Se
ries, pp. 387 394, July, 1998.
[25] E.J. Stollnitz, T.D. DeRose and D.H. Salesin, Wavelets for
computer graphics : theory and applications, Morgan Kauf
mann, San Francisco, 1996.
[26] W. Sweldens, "The lifting scheme : a customdesign con
struction of biorthogonal wavelets," Tech. Rep. 1994:7, In
dustrial Mathematics Initiative, Department of Mathematics,
University of South Carolina, 1994.
[27] D. Terzopoulos and K. Fleischer, "Deformable models," The
Visual Computer, vol. 4, no. 6, pp. 306 331, 1988.
[28] D. Terzopoulos, J. Platt, A. Barr and K. Fleischer, "Elasti
cally deformable models," in Computer Graphics Proceed
ings, ACM SIGGRAPH, Annual Conference Series, pp. 205
214, 1987.
[29] D. Terzopoulos and H. Qin, "Dynamic NURBS with geomet
ric constraints for interactive sculpting," ACM Transactions
on Graphics, vol. 13, no. 2, pp. 103 136, April, 1994.
[30] W. Welch and A. Witkin, "Variational surface modeling," in
Computer Graphics Proceed,', .l I SIGGRAPH, Annual
Conference Series, pp. 157 166, July, 1992.
[31] D. Zorin, P Schr6der and W. Sweldens, "Interpolating sub
division for meshes with arbitrary topology," in Computer
Graphics Proceedings, ACM SIGGRAPH, Annual Confer
ence Series, pp. 189 192, August, 1996.
