Conference PaperPDF Available

3D object modelling for entertainment applications

Authors:

Abstract and Figures

Recent advances in three-dimensional (3D) data acquisition techniques have offered an alternative to the traditional 2D metamorphosis (or morphing) approaches, which gradually change a source object through intermediate objects into a target object. In this paper, we approach 3D metamorphosis via a novel D modelling technique, which reconstructs a fairly complex object with a single B-Spline patch. Our object representation is compact - over 90% compression rate can be achieved. Despite such huge amount of data reduction, our method achieves similar rendering result to that using polygonal representation. Our approach also allows a one-to-one mapping from the object space to a common parameter space to be established, to allow automatic correspondence between a pair of objects. This way to establishing object correspondence is advantageous over the common connectivity generation process, with which, if either the source or target object is changed, the whole process of establishing correspondences must be repeated. Several aesthetically pleasing examples of 3D morphing are demonstrated using the proposed method.
Content may be subject to copyright.
3D Object Modelling for Entertainment Applications
Yi Song
School of Computer Science & IT
University of Nottingham
Nottingham, UK
Yzs@cs.nott.ac.uk
Li Bai
School of Computer Science & IT
University of Nottingham
Nottingham, UK
bai@cs.nott.ac.uk
Yangsheng Wang
Institute of Automation
Chinese Academy of Science
Beijing, China
Yangsheng.wang@ia.ac.cn
ABSTRACT
Recent advances in three-dimensional (3D) data acquisition
techniques have offered an alternative to the traditional 2D
metamorphosis (or morphing) approaches, which gradually
change a source object through intermediate objects into a
target object. In this paper, we approach 3D metamorphosis via
a novel 3D modelling technique, which reconstructs a fairly
complex object with a single B-Spline patch. Our object
representation is compact - over 90% compression rate can be
achieved. Despite such huge amount of data reduction, our
method achieves similar rendering result to that using polygonal
representation. Our approach also allows a one-to-one mapping
from the object space to a common parameter space to be
established, to allow automatic correspondence between a pair
of objects. This way to establishing object correspondence is
advantageous over the common connectivity generation
process, with which, if either the source or target object is
changed, the whole process of establishing correspondences
must be repeated. Several aesthetically pleasing examples of 3D
morphing are demonstrated using the proposed method.
1. INTRODUCTION
Recent theoretical and technical advance in three-dimensional
(3D) data capture has led to a great deal of interest in 3D
metamorphosis. 3D metamorphosis is a smooth transformation
from a source 3D object to a target 3D object. Unlike 2D image
morphing, 3D metamorphosis is independent of viewing or
lighting parameters. Therefore, it is a powerful technique for the
entertainment and animation industry and has therefore become
an active research area in recent years. The primary issue in 3D
metamorphosis is to establish surface correspondence between
the source and target objects automatically. By mapping each
point on the source object to a point on the target object [9], a
smooth transition can be generated by interpolating from the
source to the target object.
A common approach to establishing correspondence
between two objects is to generate a common connectivity,
which is generally accomplished by decomposing each object
into several patches, embedding the patches into a 2D
parametric domain, and finally merging the corresponding
embeddings to form a common mesh [12,14,15]. This approach
has three drawbacks. First, since objects are represented as
dense polygon meshes, e.g., the target object (car seat) in Figure
11 containing 75,232 points (149,044 polygons),
the large data set is difficult to manipulate. Second, the
differences in size, scale, and topology between the source and
target objects pose more problems. For example, the source
object (human face) in Figure 11 contains 10,490 points (20,370
polygons) and it is much smaller than the target object (car seat).
To handle this situation, most morphing techniques involve the
use of a sparse set of user selected feature pairs to guide
decomposition and to establish an initial coarse correspondence,
upon which a dense correspondence can be based [12,13].
However, manually marking correspondence feature points on
3D objects has proven to be a difficult and tedious task. As the
selection of these feature pairs will affect the morphing result, it
is not an easy task even for skilled animators to achieve
esthetically pleasing morphs. Third, the common connectivity
generated is object dependent. If either the source or target
object is changed, the whole process of establishing
correspondences must be repeated. Therefore, the motivation of
our research is to automatically construct a compact 3D
representation and establish a dense object correspondence
between objects, without any user interferences. Moreover, the
process is object independent.
In this paper, we propose a novel approach to automatically
reconstructing a single patch B-Spline surface directly from an
unstructured 3D point cloud representing a complex object. B-
Spline surface-fitting techniques offer smooth, compact and
reproducible parametric representations and are commonly
supported by current modelling systems. However, previous
research on 3D modelling did not address the correspondence
issues among objects. Complex surfaces are often reconstructed
using a network of surface patches [5,10]. Due to the
uncertainty in the automatic division of surface patches, it is
difficult to establish correspondences between objects.
Our B-Spline 3D object representation is: 1) unique 2)
compactness for storage 3) allowing one-to-one mapping from
object space to a parameter space. Since the parameter space is
object independent, once objects are reconstructed using our
approach through the parameter space, correspondence between
any pair of objects can be automatically established. The whole
process, including surface reconstruction and correspondences,
only takes less than 1 seconds, measured on an average sized
point cloud (about 11,000 vertices).
The rest of this paper is organised as follows. Section 2
reviews the related work on 3D metamorphosis and modelling.
The differences between our work and previous approaches are
also examined in this section. The proposed techniques are
presented and evaluated in Section 3. Section 4 shows the
potential applications and example results, and conclusion is
given in Section 5.
2. PREVIOUS WORKS
There are two major categories of 3D morphing techniques:
volume-based approach and surface-based approach [2,16].
Although the volume-based approach can support genus
changing well, it is usually very computationally expensive
[4,17]. Since our work falls into the surface-based category, in
this section, the related works are briefly reviewed.
Generally, two steps are needed in a surface-based 3D
metamorphosis: one is to establish the correspondence between
source and target objects. The other is to create a sequence of
intermediate objects interpolating between corresponding points
on the objects. We will focus on the correspondence problem.
A common approach to establishing a correspondence
between two objects is to generate a common connectivity for
both the source and target objects [8,12,13,14,15]. Kanai et al.
[11] use harmonic mapping to embed both source and target
objects into a two-dimensional unit circle to establish vertex
correspondence. An extended work is introduced in [12], in
which a method is employed to partition polygon meshes into
sub-regions and a similar scheme [11] is then applied to each
sub-region. Gregory et al. [7] present a similar method to
partition meshes. The correspondence between sub-meshes of
two objects is then established using a greedy area-preserving
mapping. Alexa [1] and Kent [9] embed polyhedral models into
a unit sphere. Lee et al. [13] specify vertex pairs on the original
meshes and employ a multi-resolution parameterization
algorithm to generate coarse models. The coarse models are
then merged to establish correspondence with the assistance of
a harmonic map. Since manually partitioning models or making
feature pairs is not an easy task for animators, Shlafman et al.
[19] propose a clustering method to automatically decompose
models into meaningful patches. However, this approach cannot
guarantee suitable corresponding patches generation. Parent [18]
also presents an automatic algorithm which recursively finds a
correspondence between the surfaces of two objects of
equivalent topologies. This algorithm uses several sheets for
covering the whole object. In addition, the two objects must
have an equal number of sheets.
To summarise, previous 3D metamorphosis techniques use
raw data output from 3D acquisition devices directly.
Disadvantages include 1) large data set is difficult to manipulate
efficiently. Interpolation will produce even more data in the
form of triangles and vertices; 2) manually partitioning objects
or pairing feature points is not an easy task, and automatic
objects decomposition cannot guarantee correspondences
between surface patches; 3) the generated common connectivity
is object dependent. Thus, we need a compact 3D representation
which allows automatic one-to-one object independent mapping
between objects.
B-Spline surface-fitting techniques offer smooth, compact
and reproducible parametric representations and are commonly
supported by current modelling systems. There has been
considerable work on fitting B-Spline surfaces to 3D point
clouds. Generally they can be classified into two categories:
reconstructing a surface either as a single B-Spline patch or
many patches stitched together. The work described in [10] and
[5] is a typical example of 3D modelling using many patches
where B-Spline surface-fitting is employed for each patch
separately, assuming that each patch can be rectangular
parameterised (girding algorithm). For acomplex 3D object, e.g.
a human face, to fulfil this requirement, the surface must be
divided into many small patches. However, there is no
guarantee that all objects can be divided in the same way.
Figure 1 shows example results of fitting multiple B-Spline
patches into two scans of the same person. The 1st scan (left
column) is composed of 140 patches fitting while the 2nd scan
(right column) is of 214 patches. Besides the nontrivial problem
of keeping the surface continuous across shared boundaries and
corners, it is difficult to establish correspondences between
objects.
Figure 1 Multiple B-Spline patches fitting. Top row: original
point clouds. Middle row: polygon models constructed from
point clouds. Bottom row: B-Spline surfaces composed of
uncertain number of patches.
The most straightforward consideration is to use a single B-
Spline patch based on a common parameter space to describe
any object. Although single B-Spline patch fitting can avoid the
problem of division uncertainty and eliminate the nontrivial
consideration on surface continuity, previous approaches are
limited to gird data representing simple topological
relationships, e.g. a deformed quadrilateral region or a
deformed cylinder, see Figure 2, as proposed by Forsey and
Bartels [6].
Figure 2 Single B-Spline patch fitting on grid data as a
deformed cylinder.
In contrast, our approach is capable of automatically
reconstructing a single B-Spline surface directly from an
unstructured 3D point cloud representing a complex object. Any
reconstructed surface representation is based on one common
parameter space. Example results are given in Figure 3. For
reasons of comparison, same data used in Figure 1 are
examined in our case. Detailed algorithm implementation is
presented in next section.
Figure 3 A single B-Spline patch automatically reconstructed
from unstructured point clouds. 1st row: Input 2D images. 2nd
row: Original point clouds. 3rd row: 3D reconstruction using a
single B-Spline patch. 4th row: Reconstructed 3D faces with
textures extracted from images shown in the 1st row.
3. B-SPLINE MODELLING
The 3D modelling problem can be stated as follows: given a
unstructured point cloud P: pi (xi, yi, zi), find a single B-Spline
surface which fits the point cloud best. A B-Spline surface is
defined as the set of points that can be obtained by evaluating
the following equation for all the parameter values of sand t:
cd
n
jjihi
m
igj pCtNsBts
 0,,
0,)()(),( ( 1 )
where
Ci,j is a matrix made bymncontrol points of the surface,
0
i
m, and 0
j
n.
Bj,g(s) is the B-Spline basis functions of degree g in the s-
direction, defined over a sequence of distinguished values,
known as the knot vector U=[u0, u1, …, ul]:
0
1
)(
0, sB j( 2 )
)()()( 1,1
11
1
1,, sB
uu
su
sB
uu
us
sB gj
jgj
gj
gj
jgj
j
gj
( 3 )
Similarly, Ni,h(t) is defined over the knot vector V=[v0, v1, …,
vk] in the t-direction with degree h.
3.1 Single Patch B-Spline Surface Fitting
As mentioned in the previous section, we aim to represent a
complex object, e.g. a face, by a single B-Spline surface patch.
For grid data, Equation 1 can be rewritten as:
 
 
n
j
m
icdjichidgjcd tsCtNsBp 0 0 ,,, ),())()(( ( 4)
It is clear from this equation that the surface-fitting problem is
decomposed into 2 steps: (1) solving a set curves fitting
problem, as in Equation 5, which are all defined on a uniform
knot vector U, (2) solving m set curves fitting problem, as
shown in Equation 6, which are all defined on a uniform knot
vector V.
n
jjcdgjcd QsBp
0,, )( ( 5 )
m
ijichijc CtNQ 0,,, )( ( 6)
However, for non-grid data representing complex object, each
curve will be defined on a different non-uniform knot vector
and have different size of control points, see Equation 7-10,
where nXnY. Therefore, we need to standardise the knot vector
of each curve to one knot vector, e.g. U for the first step, and
have control points of each curve in the same size as well. More
details are given as below:
Suppose F and L are two of m curves being fitted onto the
original non-grid dataset independently. F is defined on knot
vector X=[x0, x1, …, xnx+g+1] by nx+1 control points f: [f1, f2, …,
fnx]; L is defined on knot vector Y=[y0, y1, …, yny+g+1] by nY+1
control points l: [l1, l2, …, lny].
X
n
iigi fxBxF 0,)()( ( 7)
)()()( 1,1
11
1
1,, xB
xx
xx
xB
xx
xx
xB gi
igi
gi
gi
igi
i
gi
( 8)
Y
n
jjgj lyNyL 0,)()( ( 9 )
)()()( 1,1
11
1
1,, yN
yy
yy
yN
yy
yy
yN gj
jgj
gj
gj
jgj
j
gj
( 10 )
The aim is to have X’=Y’=U, where X’ and Y’ are new knot
vectors after standardising X and Y respectively. Instead of
simply merging all knot vectors together [20], i.e. X’=Y’=X
Y=U, our approach is to standardise all knot vectors to a pre-
defined knot vector U=[u0, u1, …, un+g+1]. In contrast to the
previous method, our approach does not result in a rapid growth
of the uniform knot vector. The method works as follows: for
each element in U and X, if xiU, xiis untouched; If k. (uk
U) (ukX), insert ukinto X; The control points fare re-
calculated as f’=[f’1, f’2, …, f’n]Tand the basic function
becomes:
)()()( 1,1
11
1
1,, xB
uu
xu
xB
uu
ux
xB gk
kgk
gk
gk
kgk
k
gk
( 11 )
The original curve is thus equal to:
k
n
kgk fxBxF
0,)()( ( 12 )
Similarly, control points lare re-calculated as l’=[l’1, l’2, …,
l’n]T, and the basic function is re-defined on U:
)()()( 1,1
11
1
1,, yN
uu
yu
yN
uu
uy
yN gk
kgk
gk
gk
kgk
k
gk
( 13 )
n
kkgk lyNyL 0,)()( ( 14 )
if uj
s <uj+1
otherwise
From Equation 11 and 14, it can be seen that the basis functions
B’ and N’ are identical, which can be generalised as:
)()()( 1,1
11
1
1,, sQ
uu
su
sQ
uu us
sQ gk
kgk
gk
gk
kgk
k
gk
( 15 )
Consequently, Equation 12 and 14 are rewritten as:
f
AsfsQsF n
kkgk
)()()( 0,( 16 )
lA slsQsL n
kkgk
)(')()( 0,( 17 )
where A(s)=[Q0,g(s) Q1,g(s) … Qn,g(s)].The same process will
be applied on each of the n curves. Equation 4 can then be
applied to non-grid data to find a single underlying surface.
The examples of reconstructed single B-Spline
representation are shown in Figure 3 and 4(c). In the reason of
comparison, we also applied the multiple B-Spline patches
fitting algorithm on the same data set, Figure 4(d). In Figure 5,
both the single B-Spline patch and multiple B-Spline patches
representations are measured against the original data set. The
colours are used to indicate the differences between the
reconstructed models and the original model. The standard
deviation in Figure 5(a) is 0.001536mm while it is 0.000005mm
in Figure 5(b). More comparison results are given in Figure 9.
(a) (b)
(c) (d)
(e) (f)
Figure 4 Comparisons between a single B-Spline patch fitting
and multiple B-Spline patches fitting. (a) and (b) Different
views of original car seat polygon model, including 75,232
vertices and 149,044 polygons. (c) Car seat represented as a
single B-Spline patch. (d) Car seat reconstructed by 129 B-
Spline patches. (e) The overlap view of single B-Spline patch
and original polygon model. (f) The overlap view of multiple B-
Spline patches and original polygon model.
(a) (b)
Figure 5 Difference analysis. (a) Comparison between the
reconstructed single B-Spline patch and the original data. The
standard deviation is 0.001536mm. (b) Comparison between the
multiple B-Spline representation and the original data. The
standard deviation is 0.000005mm.
Table 1 Performance comparisons between our approach and
the multiple B-Spline patches modelling method.
Mode A single B-Spline
surface modelling Multiple B-Spline
patches modelling
Vertices 75, 232 75, 232
Triangles ---- 149, 044
Modelling time 1.55 sec. 44.31 sec.
3.2 Correspondence
In Section 3.1, the method of finding the underlying single B-
Spline surface for an object is examined. For any object, the
same process can be applied independently. Therefore, each
object can be defined on its own pair of knot vectors and has
different number of control points. Knot vector standardisation
can be applied to every object. Similar to the Equation 16 and
17, Equation 1 can be rewritten as
C
tsts ),(),( ( 18 )
Given a pair of parameter (s,t) , Ais same for every object. Thus
C=[c0,0 …cm,0 c0,1 …cm,1 …cm,n]TR3of size of (m+1)×(n+1)
defines the unique shape of a surface, i.e. Cis shape descriptors.
Thus, we have established a direct mapping between the
parameter domain (s, t) : [0,1][0,1] and the object space
R3via C. Rendered B-Spline surfaces defined by shape
descriptors are shown in Figure 3(3rd row) and Figure 4(c).
Shape descriptors have several important properties, including:
Allowing direct one-to-one mapping from the parameter
domain to the object space. For each pair of parameter
value (s, t), there is a unique corresponding B-Spline
surface point in the object space.
Affine-invariance. The same result will be obtained either
transforming a B-Spline surface itself or its shape
descriptors. Shape descriptors contain only geometrical
properties of the object, not position, scale or orientation.
Compact representation for 3D objects. The approach can
achieve over 90% compression rate and yet similar
rendering result to that using polygon representation. For
example, the original data set showed in Figure 4(a)
includes 75,232 points and 149,044 polygons, while all the
information required to render the smooth surface shown
in Figure 4(c) is a set of shape descriptor Cof size 616.
Textured rendering results are given in Figure 6.
Figure 6 Textured-rendering results. Left: Polygon model
(composed of 20370 triangles). Right: single B-Spline model
(rendered using shape descriptors of size 616 points).
With the one-to-one mapping from the parameter domain to the
object space, the corresponding surface points between models
can then be generated. From the discussion above, it is known
that for each pair of parameters (s, t), each face model has a
unique corresponding B-spline surface point:
),(),( tsts k
( 19 )
),(),( 1tsts k
( 20 )
Therefore, B-Spline surface points
k(s, t) and
k+1(s, t) are
uniquely mapped, i.e.
),(),( 1tsts kk
( 21 )
By sampling the parameter domain, e.g. uniform sampling, we
obtain a set of corresponding B-Spline surface points on each
face model.
4. APPLICATIONS
4.1 3D Morphable Model
Shape descriptors are very compact for representing 3D objects.
Unlike some common techniques for data compression such as
principal components analysis (PCA) describing an object as a
weighted sum of principal components which often bear little
resemblance to the underlying interdependent structure of
biological forms [3], shape descriptors have clearly topological
information attached. Therefore, the reconstructed 3D model
can be further employed for the interactive modelling purpose,
i.e. the 3D model built in Section 3 is morphable. By changing
the values of shape descriptors, the underlying surface is
modified in a predictable way, as shown in Figure 7 and 8.
(a) (b) (c)
Figure 7 Changing facial attributes (a) Loosing weight (b)
Normal status (c) Gaining weight.
(a) (b)
Figure 8 Changing facial attributes. (a) Before. (b) After.
4.2 3D Morphing
As we mentioned in Section 2, surface-based 3D
metamorphosis, which realizes shape transformation from
surface model
1to
2, consists of two steps: 1) establishing a
dense correspondence from each point of
1to a point of
2and
2) creating a series of intermediate objects by interpolating
corresponding points from their original positions on
1to the
target positions on
2.
The issue of correspondences has been discussed in Section
3.2. Since the shape descriptors Cof each object only needs to
be computed once and can be done in advance, the issue of
establishing correspondences on objects
1and
2has been
simplified as calculating
C
tsts 1
1),(),( ( 22 )
C
tsts 2
2),(),( ( 23 )
where the value of A(s, t) is only related with the sampling
scheme on the common parameter domain [0, 1][0, 1].
1(s, t)
and
2(s, t) are corresponding surface points consequently.
Since A(s, t) is same for all objects when the same sampling
scheme is adopted, A(s, t) can be computed once in advance,
making correspondences established in a more efficient way.
To create a series of intermediate objects between
1and
2,
we simply apply linear interpolation between corresponding
points. Supposing n intermediate objects
i(1 in) are
wanted, they are generated by
)),(),((
1
),(),( 121 tsts
n
i
tsts
i
( 24 )
Smooth morphing result from one face to another is shown in
Figure 10. Four intermediate faces are displayed between the
start face (left end) and the destination face (right end). If either
the source or the target object is changed, only Equation 24
needs to be re-calculated to obtain the morphing sequence.
Supposing target object is changed from
2to
3and m
intermediate objects are required while source object is still
1,
then the intermediate objects
j(1 jm) are computed as
)),(),((
1
),(),( 131 tsts
m
j
tsts
j
( 25 )
Figure 11 and 12 demonstrate another morphing sequence
where the source and target objects have very different sizes,
scales and topologies. The source object in Figure 12 is same to
the source object in Figure 10.
By simply changing the sampling scheme, the morphing
sequence can be rendered in different resolutions. Similarly,
A(s’, t’) can be computed one time for all objects.
5. CONCLUSIONS
A novel 3D modelling technique is presented offering an
alternative solution to 3D metamorphosis. In contrast to
previous works directly manipulating basic rendering elements
– vertices and polygons, our approach provides compact
representations for 3D objects, i.e. using shape descriptors,
containing only the object’s geometrical properties. Despite
high compression rate, rendering result using shape descriptors
is still similar to that using the original polygon representation,
Figure 6. Moreover, one-to-one mapping from the object space
to a common parameter space can be established. Through the
common parameter space, any pair of objects can automatically
have dense correspondences established, which is independent
to the 3D modelling process. Therefore, shape descriptors of
each object only needs to be computed once in advance.
Consequently, whenever either the source or the target object is
changed, only a linear equation needs to be re-calculated to
obtain a new morphing sequence. This is advantageous over the
common connectivity generation process, with which the whole
process of establishing correspondences must be repeated.
The system has been tested on a personal computer (Pentium
4/512M RAM). Since the timing and performance are related to
the size of original input data, the measurements are given out
in Table 1-3 separately. For a typical input (Table 2), i.e. the
original data consists of average 10,000 vertices, it takes 0.77
second for the 3D modelling process, described in Section 3.1.
We also examine system performance when input data set is
large (Table 1). In this case, the whole process took 1.55
seconds to reconstruct the single B-Spline surface directly from
75,232 points. Performance comparison between two sequences
of 3D metamorphosis is given in Table 3. In the first morphing
sequence, the source object has similar shape, scale and size as
the target object while in the second case, the source and target
objects have very different sizes, scales and topologies. The
total morphing times for both cases are all about 0.78 seconds,
since the 3D morphing is now based on the compact 3D
representations, using shape descriptors rather than the original
raw data.
Though our approach provides a smooth and compact B-
Spline representation for surfaces, it may not be the best for
preserving fine geometric details of objects. To overcome this
problem, a displacement map may be computed for each pixel
in which an offset from a point on a surface to a point in the
original raw data is recorded. Texture mapping is another
economical solution to make up for the loss of fine surface
details. Modelling objects with sharp edges using a single B-
Spline patch may overly smooth the edges which animators
may want to keep. Since the sharp edges are rather easy to
detect, they can be used to guide the object division into several
patches. The single patch B-Spline modelling technique can be
applied to each patch independently. In this case, although
multiple B-Spline patches are needed, the amount of the patches
can be significantly reduced compared to previous approaches.
The nontrivial problem of enforcing G1continuity between
adjacent patches is also avoided in this case. Similar solution
can be applied to objects with very complex surfaces.
Table 2 Performance comparisons between our approach and
the multiple B-Spline patches modelling method.
Mode Vertices Triangles Modelling
time
A single B-Spline
surface modelling 10, 490 ------ 0.77 sec.
Multiple B-Spline
patches modelling 10, 490 20, 370 37.05 sec.
Table 3 Performance of 3D morphing.
Morphing
sequence Correspondence Creating
intermediate objects
Face to face
(Figure 10) 0.122 sec. 0.66 sec.
Face to car-seat
(Figure 12) 0.118 sec. 0.61 sec.
6. REFERENCES
[1] Alexa, M. (2000) Merging Polyhedral Shapes with Scattered
Features. The Visual Computer, vol. 16, no. 1, pp. 26-37.
[2] Alexa, M. (2001) Mesh Morphing. STAR: State of Art
Report, Eurographics.
[3] Blanz, V. and Vetter, T. (1999) A Morphable Model for the
Synthesis of 3D Faces. In Proceeding of ACM SIGGRAPH,
LA, pp.187-194.
[4] Cohen-Or, D., Levin, D. and Solomovici, A. (1998) Three-
Dimensional Distance Field Morphing. ACM Transactions
of Graphics, vol. 17, no. 2, pp. 116-141.
[5] Eck, M. and Hoppe, H. (1996) Automatic Reconstruction of
B-Spine Surfaces of Arbitrary Topological Type. Proc. 23rd
Int. Conf. on Computer Graphics and Interactive
Techniques SIGGRAPH '96, ACM, New York, NY. pp.
325-334.
[6] Forsey, D. and Bartels, R. (1995) Surface Fitting with
Hierarchical splines, ACM Transactions on Graphics, vol.
14, no. 2, pp. 134-161.
[7] Gregory, A., State, A., Lin, M. Manocha, D. and Livingston,
M. (1999) Interactive Surface Decomposition for
Polyhedral Morphing. The Visual Computer, vol. 15, no. 9,
pp. 453-470.
[8] Hutton, T. (2004) Dense Surface Models of the Human
Face. PhD thesis.
[9] Kent, J., Carlson, W. and parent, R. (1992) Shape
Transformation for Polyhedral Objects. In Computer
Graphics (Proc. SIGGRAPH 92), pp. 47-54. ACM Press,
New York.
[10] Krishnamurthy, V. and Levoy, M. (1996) Fitting Smooth
Surfaces to Dense Polygon Meshes. ACM-0-89791-746-
4/96/008.
[11] Kanai, T., Suzuki, H. and Kimura, F. (1998) Three-
Dimensional Geometric Metamorphosis Based on
Harmonic Maps. The Visual Computer, vol. 14, pp. 166-
176.
[12] Kanai, T., Suzuki, H. and Kimura, F. (2000)
Metamorphosis of Arbitrary Triangular Meshes. IEEE
Computer Graphics and Applications, pp 62-75.
[13] Lee, A., Dobkin, D., Sweldens, W. and Schroder, P. (1999)
Multiresolution Mesh Morphing. Proceedings of
SIGGRAPH 99, pp. 343-350.
[14] Lee, T. and Huang, P. (2003) Fast and Intuitive
Metamorphosis of 3D Polyhedral Models Using SMCC
Mesh Merging Scheme. IEEE Transactions on Visualization
and Computer Graphics, vol. 9, no. 1.
[15] Lin, C. and Lee, T. (2004) Metamorphosis of 3D
Polyhedral Models Using Progressive Connectivity
Transformations. IEEE Transactions on Visualization and
Computer Graphics, vol. 10, no. 6.
[16] Lazarus, F. and Verroust, A. (1998) Three-Dimensional
Metamorphosis: A Survey. The Visual Computer, vol. 14,
pp. 373-389.
[17] Lerious, A., Garfinkle, C. and Levoy, M. (1995) Feature-
based Volum3 Metamorphosis. ACM SIGGRAPH conf.
Proceedings, pp.449-456.
[18] Parent, R. (1992) Shape Transformation by Boundary
Representation Interpolation: A Recursive Approach to
Establishing Face Correspondences. Journal of
Visualization and Computer Animation, 3(4): 219-239.
[19] Shlafman, S., Tal, A. and Katz, S. (2002) Metamorphosis
of Polyhedral Surfaces Using Decomposition.
EUROGRAPHICS, vol. 21, no. 3, pp. 219-228.
[20] Watt, A. and Watt, M. (1992) Advanced Animation and
Rendering Techniques: Theory and Practise. Addison-
Wesley.
(a1) (b1) (c1) (d1)
(a2) (b2) (c2) (d2)
Figure 9 Comparisons between a single B-Spline patch fitting and multiple B-Spline patch fitting. (a1) Original points cloud. (a2)
Polygons model constructed from point cloud (b1) Face reconstructed by one B-Spline patch directly from (a1). (b2) Same face
reconstructed by 214 B-Spline patches based on the polygon model in (a2). (c1) Overlap of a single B-Spline patch and the original
polygon model. (c2) Overlap of multiple B-Spline patches and the original polygon model. (d1) Comparison between the reconstructed
single B-Spline patch and the original data. (d2) Comparison between multiple B-Spline representation and original data.
Figure 10 Smooth 3D metamorphosis sequences between similar objects, un-textured and textured morphing sequences.
Figure 11 Original data sets of source object (human face) and target object (car seat) (Polygonal models)
Figure 12 Smooth 3D metamorphosis sequences. The source and target have different sizes, scales and topologies.
... Control points are submitted to internal or external forces whose characteristics (direction, magnitude) depend on location of points and muscle shapes; in [21] one can find a description which provides a good support for this approach, with a large complexity model because it involves to a lot of muscles in the human face. Accuracy of models is strongly dependent of the application to be developed: very accurate models are necessary for facial surgical simulations [26] or for face recognition [20], whereas coarser models are enough for animation effects in entertainment industries [27]. ...
... Similarly Song et. al [4] has demonstrated the use of B-Spline surface patches to construct parametric representation of a human face using 3D point cloud data. Huang and Yan [5] used NURBS curves and associated it with vertices of the facial data for modeling and animating 3D human face. ...
Conference Paper
Full-text available
This paper aims to propose a method for geometric design, modelling and shape manipulation using minimum input design parameters. Here, we address the method for the construction of 3D geometry based on the use of elliptic partial differential equations (PDE). The geometry corresponding to an object is treated as a set of surface patches, whereby each surface patch is represented using four boundary curves in the 3D space that formulate the appropriate boundary conditions for the chosen PDE. We present our methodology using a plug-in that was developed utilizing Maya API. The plug-in provides the user with tools that could be used easily and effectively for designing purposes. Maya is a popular D modelling tool. Various types of shapes with different complexities are presented here. Our proposed method allow the designer to utilize the Maya functionality for sketching curves in the 3D space that represents the outline of arbitrary shapes, construct the corresponding model using the PDE method, deform and sculpt these models interactively by editing the boundary curves.
... This paper is an extension of the work described in [SBW06] [SB06]. Emphases in this paper lie in the application of the 3D shape representation method. ...
Conference Paper
Full-text available
This paper presents an efficient BSpline surface reconstruction technique for modelling deformable objects. The differences of our methods from previous BSpline fitting approaches are: 1) the reconstructed BSpline patch does not need to be square shaped. This significantly reduces the required number of BSpline patches for reconstruction; 2) the dataset to be reconstructed does not have to be grid data. This is important, especially for 3D scan data, which is unstructured dense point cloud, normally with holes. A compact 3D shape description can be obtained using our approach. This shape representation allows 3D metamorphosis, direct manipulation of free-form deformation, and level of detail control (real time multi-resolution rendering). The demonstrated results are reconstructed directly from the dense point clouds collected from our 3D scanner (based on stereo photogrammetry technique) and example datasets provided by Cyberware.
... For example, parametric B- Spline patches have been utilized for modeling and animation purposes where construction human surfaces are necessary [16]. Song et al. [17] has demonstrated the use of B-Spline surface patches to construct parametric representation of a human face using 3D point cloud data. Huang and Yan [18] used NURBS curves and associated it with vertices of the facial data for modeling and animating 3D human faces. ...
Article
Full-text available
One of the challenging problems in geometric modeling and computer graphics is the construction of realistic human facial geometry. Such geometry are essential for a wide range of applications, such as 3D face recognition, virtual reality applications, facial expression simulation and computer based plastic surgery application. This paper addresses a method for the construction of 3D geometry of human faces based on the use of Elliptic Partial Differential Equations (PDE). Here the geometry corresponding to a human face is treated as a set of surface patches, whereby each surface patch is represented using four boundary curves in the 3-space that formulate the appropriate boundary conditions for the chosen PDE. These boundary curves are extracted automatically using 3D data of human faces obtained using a 3D scanner. The solution of the PDE generates a continuous single surface patch describing the geometry of the original scanned data. In this study, through a number of experimental verifications we have shown the efficiency of the PDE based method for 3D facial surface reconstruction using scan data. In addition to this, we also show that our approach provides an efficient way of facial representation using a small set of parameters that could be utilized for efficient facial data storage and verification purposes.
Conference Paper
Full-text available
Despite intensive research, 3D representation is still an open research issue in computer graphics. In this paper, we propose a novel B-Spline surface modelling technique. Unlike previous work, our approach deals with unstructured point cloud data. By representing objects in a common parameter space, one of the most challenging problems, i.e. automatic dense correspondence between objects, is solved with little effort. Supporting level of detail (LOD) control, our approach is particularly efficient for 3D object rendering. Furthermore, the representation is compact - over 90% compression rate is achieved. It also allows efficient 3D objects comparison and metamorphosis.
Article
Full-text available
A metamorphosis or a (3D) morphing is the process of continuously transforming one object into another. 2D and 3D morphing are popular in computer animation, industrial design, and growth simulation. Since there is no intrinsic solution to the morphing problem, user interaction can be a key component of a morphing software. Many morphing techniques have been proposed in recent years for 2D and 3D objects. We present a survey of the various 3D approaches, giving special attention to the user interface. We show how the approaches are intimately related to the object representations. We conclude by sketching some morphing strategies for the future.
Article
Full-text available
We present a new approach for establishing correspondence for morphing between two homeomorphic polyhedral models. The user can specify corresponding feature pairs on the polyhedra with a simple and intuitive interface. Based on these features, our algorithm decomposes the boundary of each polyhedron into the same number of morphing patches. A 2D mapping for each morphing patch is computed in order to merge the topologies of the polyhedra one patch at a time. We create a morph by defining morphing trajectories between the feature pairs and by interpolating them across the merged polyhedron. The user interface provides high-level control, as well as local refinement to improve the morph. The implementation has been applied to several polyhedra composed of thousands of polygons. The system can also handle homeomorphic non-simple polyhedra that are not genus-zero (or have holes).
Conference Paper
We present a new method for user controlled morphing of two homeomorphic triangle meshes of arbitrary topology. In particular we focus on the problem of establishing a correspondence map between source and target meshes. Our method employs the MAPS algorithm to parameterize both meshes over simple base domains and an additional harmonic map bringing the latter into correspondence. To control the mapping the user specifies any number of feature pairs, which control the parameterizations produced by the MAPS algorithm. Additional controls are provided through a direct manipulation interface allowing the user to tune the mapping between the base domains. We give several examples of æsthetically pleasing morphs which can be created in this manner with little user input. Additionally we demonstrate examples of temporal and spatial control over the morph.
Article
The issues relating to the shape transformation problem are discussed and a new algorithm is presented for computing the transformation of one shape into another. In this algorithm, the boundary definitions of the two initial shapes are used and a mapping is established between the vertices and edges of the respective objects. New vertices and edges are introduced into the object definitions when necessary to establish a one-to-one vertex correspondence and to match connectivity relationships between vertices. These can then be used to do a vertex-to-vertex interpolation that maintains valid polyhedral topologies for all of the intermediate shapes. The algorithm establishes a mapping between areas of the object such that adjacency relationships are preserved. These areas are recursively subdivided so that adjacency relationships of subareas are also preserved. During subdivision, vertices and edges are added to the boundaries of subareas so that a one-to-one mapping is established between them. Subdivision continues until each subarea consists of a single face. The algorithm presented works for objects that are topologically equivalent to spheres and can easily be extended to other pairs of objects as long as they are topologically equivalent to each other.
Conference Paper
Techniques that transform one two-dimensionaf image into another have gained widespread use m recent yeara. Extending these tech- niques to transform pairs of 3D objects, as opposed to 2D images of the objects, providea several advsntagea, including the ability to sn- imate the objects independently of the transformation. This paper presents an algorithm for computing such transformations. The al- gorithm merges the topological structures of a pair of 3D polyhedral models into a common vertex/edgeJface network. This allows trsms- formations from one object to the other to be easily computed by in- terpolating between corresponding v@ex positions.
Conference Paper
Abstract Recent progress in acquiring shape from range data permits the acquisition of seamless million-polygon meshes,from physical models. In this paper, we present an algorithm and system for con verting dense irregular polygon meshes,of arbitrary topology in to tensor product B-spline surface patches with accompanying,displacement maps. This choice of representation yields a coarse but efficient model,suitable for animation and a fine but more expensive model suitable for rendering. The first step in our process consists of interactively painting patch boundaries over a rendering of the mesh. In many,applications, interactive placement of patch boundaries is consid ered part of the creative process and is not amenable,to automation. The next step is gridded resampling of each bounded section of the mesh. Our resampling algorithm lays a grid of springs across the polyg on mesh, then iterates between relaxing this grid and subdividing it . This grid provides a parameterization for the mesh section, which is i nitially unparameterized. Finally, we fit a tensor product B-spline surface to the grid. We also output a displacement map for each mesh section, which represents the error between our fitted surface and the spring grid. These displacement maps,are images; hence this representation facilitates the use of image processing operators for m anipulating the geometric detail of an object. They are also compatible with modern,photo-realistic rendering systems. Our resampling and fitting steps are fast enough,to surface a million polygon mesh in under 10 minutes - important for an interactive system. CR Categories: I.3.5 [Computer Graphics]: Computational Geom-
Conference Paper
Creating freeform surfaces is a challenging task even with advanced geometric modeling systems. Laser range scanners offer a promising alternative for model acquisition---the 3D scanning of existing objects or clay maquettes. The problem of converting the dense point sets produced by laser scanners into useful geometric models is referred to as surface reconstruction. In this paper, we present a procedure for reconstructing a tensor product B-spline surface from a set of scanned 3D points. Unlike previous work which considers primarily the problem of fitting a single B-spline patch, our goal is to directly reconstruct a surface of arbitrary topological type. We must therefore define the surface as a network of B-spline patches. A key ingredient in our solution is a scheme for automatically constructing both a network of patches and a parametrization of the data points over these patches. In addition, we define the B-spline surface using a surface spline construction, and demonstrate th...
Article
This paper describes an algorithm for morphing polyhedral surfaces based on their decompositions into patches. The given surfaces need neither be genus-zero nor two-manifolds. We present a new algorithm for decomposing surfaces into patches. We also present a new projection scheme that handles topologically cylinder-like polyhedral surfaces. We show how these two new techniques can be used within a general framework and result with morph sequences that maintain the distinctive features of the input models. Categories and Subject Descriptors (according to ACM CCS): I.3.5 [Computational Geometry and Object Modeling]: Boundary representations I.3.7 [Three-Dimensional Graphics and Realism]: Animation
Article
Animations with deforming objects are frequently used in computer graphics applications, Metamorphosis (or morphing) of 3D objects is one of the techniques that realize a shape transformation between two or more existing objects. We present a new algorithm for 3D geometric metamorphosis between two objects based on harmonic mapping. Our algorithm is applicable to arbitrary polyhedra that are homeomorphic to a 3D sphere or a 2D disk. In our algorithm, each of the two 3D objects is first embedded in the circular disk on the plane. This embedded model has the same graph structure as its 3D objects. We can overlap two embedded models and use the correspondence established between the two objects to generate intermediate objects. The user only specifies a boundary loop on an object and a vertex on that boundary to control interpolation.