Shape Interpolation with Multiresolution Analysis

advertisement
Shape Interpolation with Multiresolution Analysis
Junho Kim, Sungyul Choe †, and Seungyong Lee ‡
Department of Computer Science and Engineering
Pohang University of Science and Technology (POSTECH)
Pohang, 790-784, Korea
Abstract
This paper presents a novel approach for shape interpolation in 3D morphing with irregular meshes. We assume
that the metameshes of the source and target meshes are
given. The basic idea is that the multiresolution analysis
of metameshes with detail encoding helps to generate natural in-between meshes. We construct mesh hierarchies by
simplifying the given metameshes to the base meshes with
the error metric reflecting both the source and target geometry. The geometric differences between successive levels in
the hierarchies are encoded as details represented in local
frames. An in-between mesh is synthesized by adding up
the blended details to the interpolated base mesh. Experimental results demonstrate that the generated in-between
meshes have reasonable blended shapes of the source and
target meshes.
Keywords: Mesh morphing, Shape interpolation, Multiresolution mesh analysis.
1. Introduction
Morphing between two input models generates an animation in which the source model smoothly changes to
the target. Morphing generally consists of two problems,
the correspondence problem and the interpolation problem.
The correspondence problem concerns finding a one-to-one
mapping between the components of two given models. The
interpolation problem is involved with generating natural
in-between models by interpolating pairs of corresponding
components.
In this paper, we present a novel solution for the interpolation problem of 3D mesh morphing. We assume that the
metameshes of the source and target meshes have been obtained by using a previous mesh morphing technique. The
victor@postech.ac.kr,
http://home.postech.ac.kr/ victor
ggalssam@postech.ac.kr, http://home.postech.ac.kr/ ggalssam
‡ leesy@postech.ac.kr, http://www.postech.ac.kr/ leesy
†
basic idea of our shape interpolation technique is that natural in-between meshes can be generated by blending multiresolution details of the source and target metameshes in a
coarse-to-fine manner. To obtain the multiresolution details,
we use the approach of Guskov et al. [6] proposed for mesh
signal processing. In this paper, to adapt the approach for
shape interpolation, we introduce a new error metric for an
edge collapse transformation and a new encoding scheme
for the details.
Given the source and target metameshes, we obtain multiresolution hierarchies of the meshes by applying the same
sequence of edge collapses to the meshes. The order of
edge collapses is determined by the error metric that reflects both the source and target geometry. For each edge
collapse transformation, the geometric change of a mesh
induced by the transformation is encoded as a detail represented in a local frame. To generate an in-between mesh,
we first interpolate the source and target base meshes to obtain an in-between base mesh. Then, an in-between mesh is
synthesized by progressively adding up the blended details
to the in-between base mesh.
In Section 2, we briefly review the related work. Section 3 explains the simplification process for multiresolution analysis of metameshes. The encoding scheme to represent the details in the analysis is described in Section 4.
Section 5 presents the in-between mesh generation process.
We show experimental results in Section 6, discuss the limitations of the current technique in Section 7, and conclude
in Section 8.
2. Related Work
In this section, we review the related work that considered the interpolation problem in morphing. For a survey of
morphing techniques, including the solutions for the correspondence problem, refer to [19, 12].
Hughes proposed a volume morphing technique where
different interpolation schedules are applied to the frequency subbands of input volumes [9]. The idea of separating an input model into frequency subbands is similar
to the approach of this paper. However, the frequency subbands are used only for scheduling the global and detailed
shape changes in the transformation sequence. In contrast,
in this paper, the frequency subbands are used to provide a
blending hierarchy that supports a complicated transformation.
Sederberg et al. proposed a solution for the interpolation
problem in 2D polygon morphing which interpolates intrinsic parameters such as lengths and angles instead of vertex
positions [14]. Sun et al. extended the solution to handle
interpolation in 3D polyheral morphing [15]. Goldstein and
Gotsman proposed a 2D polygon morphing technique that
includes multiresolution interpolation based on curve evolution [5]. Surazhsky and Gotsman proposed an interpolation technique for two compatible planar triangulations [16]
and applied the technique to the interpolation of two stick
figures [17]. Alexa et al. introduced the concept of rigidity
into shape interpolation [1]. Two input objects are decomposed into isomorphic sets of simplexes, and each pair of
corresponding simplexes is interpolated so that the overall
shape is transformed as rigidly as possible. Although these
previous approaches are excellent for 2D polygon morphing, their 3D extensions for mesh morphing are rather complicated. In contrast, the approach proposed in this paper is
simple and effectively handles the 3D case.
3. Multiresolution Hierarchy
Let MS and MT be the given source and target
metameshes, which have been obtained by merging the vertices and edges of two input meshes for morphing. There
exist a one-to-one correspondence between the vertex sets
of MS and MT . The edge sets of MS and MT are isomorphic
to each other, where the corresponding vertices of M S and
MT have the same connectivity. Only the vertex positions
are different among M S and MT . We assume that MS and
MT are 2-manifold triangular meshes.
To perform multiresolution detail encoding of M S and
MT , we first obtain multiresolution hierarchies of M S and
MT . Similar to the progressive mesh construction [7], we
apply an edge collapse sequence to M S and MT , which simplifies MS and MT to base meshes MS0 and MT0 , respectively.
To obtain the same multiresolution hierarchy, we apply the
same sequence of edge collapses to both M S and MT .
Compared to the simplification of a single mesh, simultaneous simplification of MS and MT is rather complicated, because MS and MT generally have different geometry. The error metric used for determining the edge collapse
sequence must reflect the geometry of both M S and MT so
that the simplification errors for M S and MT are comparable
to each other. Moreover, we can consider the geometry of
MT as an attribute field (e.g., texture) defined on the surface
of MS , where the vertex positions of M T give the sample val-
ues of the field at the corresponding vertices of M S . Then, if
the simplification process of MS much distorts the field, the
multiresolution details of MT will also be much distorted
when they are sampled on the surfaces of meshes in the hierarchy of MS . We can consider the distortions of the details
of MS with respect to MT in the same way. In this case, large
distortions of the details will have bad effects when the details are blended and added up to generate an in-between
mesh. Hence, the distortions must be reflected on the error
metric for simplification of MS and MT .
In this paper, we regard the vertex positions of M T and
MS as attributes of the corresponding vertices of M S and MT ,
respectively. Several elegant techniques were developed for
mesh simplification considering attributes on meshes [2, 4,
8, 13]. We design our error metric for simplification with
the approach proposed by Hoppe [8], which uses the sum
of quadric errors from the geometry and attributes.
Before the simplification process starts, the vertex positions in MS and MT are normalized into a unit cube. The
quadric errors for MS are obtained from the vertex positions
in MS , which provide the geometry information, and the
vertex positions in MT , which are considered as attributes
on the corresponding vertices in M S . The quadric errors for
MT are derived in a similar way. The error metric for simplification is defined as the sum of the quadric errors from
MS and MT .
In this paper, we use half-edge collapses for mesh simplification, because the multiresolution analysis in Section 4 is
based on a half-edge collapse. In the simplification process,
the order of half-edge collapses is determined by comparing
the error metrics for possible half-edge collapses. Since the
new vertex position is fixed for a half-edge collapse, we can
easily evaluate the error metric for each half-edge collapse.
A simple alternative to the proposed approach is to use
the sum of quadric error metrics [3] obtained by independently considering the geometry of M S and MT . With the
simple approach, we can obtain comparable simplification
errors for MS and MT . However, the approach does not consider the detail distortions of MS and MT measured with respect to the other mesh. The approach proposed in this paper reduces such distortions by including the attribute errors
in the error metric. As the result, the triangle shapes in the
corresponding simplified meshes from M S and MT become
similar in the simplification process. Note that the detail
distortions between MS and MT are minimized when the local parameterizations of MS and MT are the same. Figure
1 compares the simplified meshes obtained by the proposed
and the simple approaches.
4. Multiresolution Analysis
With an edge collapse sequence to simplify the given
metameshes MS and MT , we obtain multiresolution hierar-
M0
M 10
M 25
M 200
M 1000
(a) proposed error metric
(b) sum of geometric quadric errors
Figure 1. Simplification process for metameshes
chies of MS and MT . The multiresolution details of M S and
MT can be derived by analyzing the differences among the
meshes in the hierarchies of MS and MT , respectively. Let
M l and M l 1 be two meshes at adjacent levels in the hierarchy of MS , where M l is the coarser mesh. In this section,
we propose an encoding scheme for the detail of M l 1 from
M l . The same scheme can be applied to the hierarchy of
MT .
The detail of M l 1 from M l can be considered as a frequency subband information when we apply a frequency
analysis to MS . Recently, geometric algorithms were introduced for the frequency analysis of 2-manifold meshes [18,
11, 6, 10]. The algorithms are based on the smoothing filters that approximate the Laplacian operator. The frequency
subbands of a given mesh are obtained by evaluating the
differences between the meshes before and after smoothing. Among the algorithms, we adopt the signal processing framework proposed by Guskov et al. [6] because it is
proper to handle the multiresolution hierarchy from an edge
collapse sequence, used in this paper.
In the framework proposed by Guskov et al. [6], the detail of M l 1 from M l is obtained as follows. Let v be the
vertex of M l 1 which has been removed by the half-edge
collapse that reduces M l 1 to M l . Let M̃ l 1 be the smoothed
version of M l 1 determined by the geometry of M l 1 . To
obtain M̃ l 1 , we first subdivide M l to create the vertex v
and compute the position of v by using a smoothing opera-
tor that reflects the geometry of M l 1 . Then, we apply the
smoothing operator to the 1-ring neighbor vertices of v, and
the resulting mesh is M̃ l 1 . The detail of M l 1 from M l is
defined as the difference vectors between M̃ l 1 and M l 1 at
the vertex v and its 1-ring neighbor vertices. In [6], the difference vectors are represented in local frames that depend
on M l .
When we apply multiresolution shape interpolation to
MS and MT , the details of MS and MT are interpolated and
incrementally added to the in-between base mesh. The local frames used to represent the details play an important
role in detail interpolation because the interpolation results
depend on the local frames. In the multiresolution shape interpolation, the geometry of an in-between mesh is locally
rotated and scaled against MS and MT . Hence, the local
frames should reflect the local orientation and scale of the
geometry. Also, the local frames should be consistent over
the entire mesh; that is, local frames for the details at adjacent vertices should not have much different orientations
and scales.
In this paper, we propose a new encoding scheme for the
detail of M l 1 from M l . Let d be the difference vector of a
vertex v for which the position difference between M̃ l 1 and
M̃ l 1 is computed. We represent d as a linear combination
of the normal vector n of v and unit direction vectors u i
associated with the 1-ring neighbor edges e i of v (see Figure
2). That is,
k
d
w0 α0 n ∑ wi αi ui i 1
(1)
where k is the degree of v. The vectors n and u i are derived
from the smoothed mesh M̃ l 1 . Values αi , i 1 k, are
the lengths of the 1-ring neighbor edges e i , and α0 is the
average length, ∑ki1 wi k. The weights wi are determined
to satisfy Eq. (1). Among possibly many solutions for w i ,
we choose the one which minimizes ∑ki0 w2i . We can obtain
the least-square solution by using pseudoinverse.
n
d
u5
u6
u1
u4
u2
u3
Figure 2. Detail encoding with a local frame
The weights wi obtained by Eq. (1) provide an encoding
of the detail at a vertex v which reflects the orientation and
scale of the local geometry around v. In Eq. (1), the local
orientations around v are represented by the unit vectors n
and ui . With the values αi , the local scales around v are
counted in determining w i .
5. Multiresolution Interpolation
By repeating this process for all vertices in M̃Il
details, we derived the mesh MIl 1 .
Once the base meshes and the multiresolution details
of the given metameshes MS and MT have been obtained,
the construction of an in-between mesh consists of two
steps; base mesh interpolation and incremental add-up of
the blended details. We first obtain an in-between base mesh
by interpolating the base meshes of M S and MT . Then, from
the coarsest to the finest levels of multiresolution hierarchies of MS and MT , we blend the details of MS and MT
at each level and add the blended details to the intermediate
mesh constructed up to the level.
For the base mesh interpolation, we use the linear interpolation of the vertex positions in the base meshes M S0 and
MT0 . To minimize distortion from the linear interpolation,
we use a rigid transformation that aligns M S0 with MT0 . The
rigid transformation is composed of a rotation and a translation, and we compute the transformation by minimizing the
sum of the distances between corresponding vertices after
the transformation. Although the as-rigid-as-possible interpolation [1] may be an excellent solution for the interpolation, we use linear interpolation in this paper for simplicity.
Since the base meshes are simple, linear interpolation usually generates reasonable in-between base meshes.
Now we explain how to add the blended details to an
intermediate in-between mesh in the multiresolution shape
interpolation. Let MIl and MIl 1 be the intermediate inbetween meshes before and after adding the details, respectively.
As in the mesh signal processing framework of
Guskov et al. [6], we first derive a smooth version M̃Il 1 of
MIl 1 by using subdivision and a smoothing operator. However, in this case, the smoothing operator is determined by
the geometry of MIl 1 , which we want to construct. To resolve this problem, we derive the smoothing operator for
MIl 1 by interpolating those operators for M Sl 1 and MTl 1 .
The interpolated operator can be obtained by using the
lengths and areas of the interpolated triangles to compute
the coefficients of the smoothing operator. See [6] for details. Since an in-between mesh has a blended shape among
MS and MT , we can expect that the interpolated smoothing
operator works well for the generation of M̃Il 1 .
After M̃Il 1 has been obtained, we blend the details at
level l in the multiresolution hierarchy of M S and MT . As
described in Section 4, each of the details of M S and MT at
a vertex v is represented by the weights w i . To obtain the
detail of M̃Il 1 at the vertex v, we interpolate the weights
wi between MS and MT . The final difference vector for the
detail at v is determined by linearly combining the normal
vector n of v and unit direction vectors u i associated with
the 1-ring neighbor edges of v in M̃Il 1 , as described in Eq.
(1). The position of the vertex v in M Il 1 is obtained by
adding the difference vector to the position of v in M̃Il 1 .
Figure 3 illustrates the process of the incremental generation of an in-between mesh. As shown in Figure 3, the
multiresolution hierarchy of the in-between mesh is reasonable, although we construct it by blending the details obtained from the source and target meshes.
M 30
M 50
M 100
M 400
1
which have
M 1000
Figure 3. Multiresolution shape interpolation process: Top, middle, and bottom rows are the multiresolution hierarchies of the source, in-between
at time 0.5, and target meshes, respectively.
6. Results
Figure 4 compares in-between meshes obtained by our
multiresolution shape interpolation with linear interpolation. In the example, the target mesh was constructed by
applying a bending deformation to the source mesh. The
base meshes used for the multiresolution shape interpolation contain 27 faces. Figure 5 shows another example. The
target mesh is also a bent version of the source, while the
base meshes consist of 6 triangles. As shown in Figures 4
and 5, multiresolution shape interpolation generates more
natural in-between meshes than linear interpolation. In Figure 6, a statue model is twisted to construct the target mesh.
In this example, we use the base meshes with 9 triangles.
Figure 6 shows that the head of statue does not shrink in the
multiresolution shape interpolation.
Figure 7 shows the result of the multiresolution shape
interpolation between mannequin and Venus models. In this
example, we used the base meshes that contain 34 triangles.
Figure 7. Multiresolution shape interpolation between mannequin and Venus models
Figure 4. Shape interpolation between a cow and
its bent version (top: linear interpolation, bottom:
multiresolution shape interpolation)
Figure 5. Shape interpolation for a stretched and
crooked horse leg (top: linear interpolation, bottom: multiresolution shape interpolation)
Figure 6. Shape interpolation for a twisted statue
(top: linear interpolation, bottom: multiresolution
shape interpolation)
7. Discussion
As demonstrated in Section 6, the technique proposed
in this paper can produce natural shape interpolation for
meshes with different geometry. However, for robust handling of drastic geometric differences between meshes, the
proposed technique may need some improvements.
A more consistent approach will be helpful for analysis
and blending of the geometric signals on the given meshes
MS and MT . In this paper, we simplify MS and MT by
simultaneously considering the geometry of both M S and
MT . However, the multiresolution analysis of the geometric signals are independently performed on M S and MT , and
the independent details are blended later to construct an inbetween mesh. A more plausible approach would be that the
geometric signals on MS and MT are analyzed on a common
domain and an in-between mesh is synthesized on the common domain by blending the correlated details of M S and
MT .
In the proposed technique, the resolution of the base
meshes of MS and MT should be properly selected to obtain a natural in-between mesh. When the resolution is too
high, the generated in-between mesh may not much differ
from the result of linear interpolation. On the other hand,
if the resolution is too low, the base meshes may not reflect
the geometry of MS and MT , and the resulting in-between
meshes may not naturally interpolate the shapes of M S and
MT . For the examples in this paper, we tried several base
mesh resolutions and chose the one with the best result. To
handle the problem of the base mesh resolution, we are investigating a shape description metric, which measures the
difference of a simplified mesh from the original. With such
a metric, a semi-automatic approach could be developed to
determine the base mesh resolution that produces natural
shape interpolation.
In the multiresolution shape interpolation, the shape of
an in-between mesh is much influenced by the base mesh
interpolation technique. In this paper, we used simple linear interpolation for the base meshes and obtained successful results on the examples shown in Section 6. However, an
advanced approach considering the rigidity in the base mesh
interpolation will be helpful to generate natural in-between
meshes, especially when the given meshes have much dif-
ferent geometry.
8. Conclusion
In this paper, we proposed a shape interpolation technique based on a multiresolution signal processing framework for meshes. We presented an effective approach to
construct multiresolution hierarchies of the source and target meshes, which considers the geometry information of
one mesh as the attributes of the other mesh in the simplification process. We also introduced a novel encoding
scheme for the details extracted from the multiresolution
hierarchies. For future work, we will extend our multiresolution shape interpolation framework to skin deformation
of an animation character.
Acknowledgments
This work was supported by the Korea Ministry of Education through the Brain Korea 21 program and the KIPA
Game Animation Research Center.
References
[1] M. Alexa, D. Cohen-Or, and D. Levin. As-rigid-as-possible
shape interpolation. ACM Computer Graphics (Proc. SIGGRAPH 2000), pages 157–164, 2000.
[2] J. Cohen, M. Olano, and D. Manocha. Apperance-preserving
simplification. ACM Computer Graphics (Proc. SIGGRAPH
’98), pages 115–122, 1998.
[3] M. Garland and P. S. Heckbert. Surface simplification using quadric error metrics. ACM Computer Graphics (Proc.
SIGGRAPH ’97), pages 209–216, 1997.
[4] M. Garland and P. S. Heckbert. Simplifying surfaces with
color and texture using quadric error metrics. In Proc. IEEE
Visualization ’98, pages 263–269, 1998.
[5] E. Goldstein and C. Gotsman. Polygon morphing using a
multiresolution representation. In Proc. Graphics Interface
’95, pages 247–254, 1995.
[6] I. Guskov, W. Sweldens, and P. Schröder. Multiresolution
signal processing for meshes. ACM Computer Graphics
(Proc. SIGGRAPH ’99), pages 325–334, 1999.
[7] H. Hoppe. Progressive meshes. ACM Computer Graphics
(Proc. SIGGRAPH ’96), pages 99–108, 1996.
[8] H. Hoppe. New quadric metric for simplifying meshes with
appearance attributes. In Proc. IEEE Visualization ’99, pages
59–66, 1999.
[9] J. F. Hughes. Scheduled fourier volume morphing. ACM
Computer Graphics (Proc. SIGGRAPH ’92), pages 43–46,
1992.
[10] Z. Karni and C. Gotsman. Spectral compression of mesh geometry. ACM Computer Graphics (Proc. SIGGRAPH 2000),
pages 279–286, 2000.
[11] L. Kobbelt, S. Campagna, J. Vorsatz, and H.-P. Seidel. Interactive multi-resolution modeling on arbitrary meshes. ACM
Computer Graphics (Proc. SIGGRAPH ’98), pages 105–114,
1998.
[12] F. Lazarus and A. Verroust. Three dimensional metamorphosis: A survey. The Visual Computer, 14(8/9):373–389, 1998.
[13] P. V. Sander, J. Snyder, S. J. Gortler, and H. Hoppe. Texture mapping progressive meshes. ACM Computer Graphics
(Proc. SIGGRAPH 2001), pages 409–416, 2001.
[14] T. W. Sederberg, P. Gao, G. Wang, and H. Mu. 2–d shape
blending: An intrinsic solution to the vertex path problem.
ACM Computer Graphics (Proc. SIGGRAPH ’93), pages
15–18, 1993.
[15] Y. M. SUN, W. WANG, and F. Y. CHIN. Interpolating polyhedral models using intrinsic shape paramters. In Proc. Pacific Graphics ’95, pages 133–147, 1995.
[16] V. Surazhsky and C. Gotsman. Controllable morphing of
compatible planar triangulations. ACM Trans. Graphics,
20(4):203–231, 2001.
[17] V. Surazhsky and C. Gotsman. Morphing stick figures using
optimized compatible triangulations. In Proc. Pacific Graphics 2001, pages 97–104, 2001.
[18] G. Taubin. A signal processing approach to fair surface
design. ACM Computer Graphics (Proc. SIGGRAPH ’95),
pages 351–358, 1995.
[19] G. Wolberg. Image morphing: a survey. The Visual Computer, 14(8/9):360–372, 1998.
Download