Upload
ccl
View
212
Download
0
Embed Size (px)
Citation preview
Length-preserved Natural Boundary for Intrinsic Parameterization
Charlie C. L. Wang
Chinese University of Hong Kong
E-mail: [email protected]
Figure 1. Intrinsic parameterization with the natural boundary generated by [1] and our method – (a) the given
mesh surfaces for a polo-shirt, (b) the results of the front and the back pieces by the original intrinsic
parameterization approach in [1], and (c) the results of our length-preserved natural boundary working together
with [1].
Abstract This paper proposes a fast approach to generate
length-preserved natural boundary for intrinsic
parameterization. Given a triangular mesh with disk-
like topology, we compute an optimal boundary for its
parameterization. An optimal boundary is expected to
be length-preserved with the length of every triangular
edge on the boundary is invariant before and after
parameterization; also, the boundary is requested to
be natural where the inner angle is close to the angle
excess at every boundary vertex on the given mesh.
Computation of a length-preserved natural boundary
is formulated as a constrained non-linear optimization
problem, the procedure of solving which is in general
very time-consuming. Here, we speed up the
optimization by adopting the scheme of sequential
linearly constrained programming. It is shown at the
end of this paper that our length-preserved natural
boundary could greatly improve the speed and quality
of the original intrinsic parameterization.
1. Introduction Parameterization for mesh surfaces has become a
fundamental technique for numerous computer
graphics applications including texture mapping, shape
morphing, surface reconstruction and repairing, and
remeshing. The parameterization defines a
correspondence between the surface mesh M in 3D
and a 2D domain D , referred to as parameter space.
The correspondence is in general requested to be a
bijective mapping Ω satisfying DM →Ω : and
MD →Ω− :1 . However for practical applications, as
mentioned in [2], a weaker requirement of local
bijectivity is sufficient, where local bijectivity means
no flipped triangles is generated in the planar mesh.
Besides the bijectivity, the quality of a
parameterization in most applications depends heavily
on the distortion introduced in Ω . Ideally, a stretch-
free parameterization is desired, i.e., to let Ωisometric. Unfortunately, from differential geometry,
we know that only developable surfaces, which is a
small class among all freeform surfaces, can be
isometrically parameterized. Thus, all parameterization
techniques existed in literature are based on the spirit
of numerical optimization to achieve a local bijectivity
while minimizing distortion components, such as angle
deformation [1-3], length deformation [1, 4-6], or area
deformation [1, 6, 7]. An extensive survey of the state
of the art in parameterization research is given by
Floater and Hormann in [8].
As been linear, the approaches of Desbrun et al. [1]
and Lévy et al. [3] are the fastest parameterization in
literature. They can both give the parameterization
results with natural boundaries. Since the boundary
vertices are embedded into the linear equation system
during computing, no special constraints can be given
about the shearing (for shape) or stretching (for length)
on boundaries. However, the positions of boundary
vertices are more important than interior vertices
Ninth International Conference on Computer Aided Design and Computer Graphics (CAD/CG 2005)0-7695-2473-7/05 $20.00 © 2005 IEEE
because that the boundary vertices define the shape and
area of D . Therefore, it is always requested to have
the edges on the boundary D∂ of D with the same
length to ones on the boundary M∂ of M, and the
shape of D∂ at the meanwhile is desired to be similar
to M∂ . Considering that 2ℜ⊂∂D but 3ℜ⊂∂M , we
define angle-based metrics for the shape difference
between D∂ and M∂ .
The problem of computing a length-preserved
natural boundary is formulated as a constrained non-
linear optimization problem, where the difference
between D∂ and M∂ is minimized while the length of
D∂ is constrained. As known, the non-linear
optimization is very time-consuming; however, the
parameterization usually needs to be finished in an
interactive speed. In this paper, by adopting the
sequential linearly constrained programming [9], we
greatly simplify the optimization procedure – so that a
length-preserved natural boundary can be computed
speedily. Figure 1 demonstrates the functionality of our
approach comparing to the natural boundary generated
by the intrinsic parameterization approach of Desbrun
et al. [1].
The work presented in this paper has the following
major contributions:
• A novel approach is introduced to compute a
length-preserved natural boundary for the intrinsic
parameterization;
• Not only the boundary length but also the shape of
the parameterized domain is optimized
• The non-linear optimization for determining a
boundary is simplified by conducting the sequential
linearly constrained programming – so that the
computing can be finished in interactive speeds;
• By our method, after fixing all boundary vertices,
the linear system in the intrinsic parameterization
approach [1] can be separated into two sub-systems
(one is with only x-components while another having
only y-components involved) – the system size is
reduced, so the computation can be finished faster.
2. Methodology The methodology for computing length-preserved
natural boundary in parameterization is presented in
this section. The problem of determining the 2D
positions of boundary vertices on D∂ is converted into
a constrained optimization with inner angles on D∂ as
arguments. Before that, the metrics to measure the
difference between M∂ and D∂ are introduced.
Boundary Length Metrics
The first metrics measuring the difference between
D∂ and M∂ is the length of boundary edges. For a
triangular edge e on M∂ , letting )(0el and )(el
representing its corresponding length on M∂ and D∂ ,
the boundary length metrics is defined as
∑∂∈∀
−=ΠMee
L eleln
)()(1 0 , (1)
where en presents the number of triangle edges on
M∂ . The boundary length metrics is straightforward.
However, since 2ℜ∈∂D and 3ℜ∈∂M , it is not easy
to measure the shape similarity between M∂ and D∂ .
Boundary Morphological Metrics
Here, we conduct angles to measure the
morphological difference between D∂ and M∂ . For a
vertex v on M∂ , suppose that its angle excess on M is
)(vα and its inner turning angle on D is )(vθ (see the
illustration in Figure 2), the shape similarity between
D∂ and M∂ is detected with the help of the following
boundary morphological metrics and the above
boundary length metrics:
∑∂∈∀
−=ΠMvv
vvn
)()(1
θαθ . (2)
In θΠ , vn is the number of vertices on M∂ .
Optimization Functional
Based on the two boundary metrics, we can
compute an optimal natural boundary of a given
triangular mesh by the following optimization
functional:
0..minarg =ΠΠ∂∈∀
LDv
tsθ . (3)
However, as both θΠ and LΠ are complex in term of
the planar positions of boundary vertices, the procedure
of solving the optimization problem defined in Eq.(3)
is quite slow. Thus, the optimization functional needs
to be reformulated. By observation, we find that
solving the above optimization problem in angle space
could greatly simply the formulas. The following angle
distortion energy is proposed to be minimized
Figure 2. Illustration of the angle excess and the
inner turning angle of a vertex – (a) the given
triangular mesh M and (b) the boundary of its
corresponding parametrix domain D.
Ninth International Conference on Computer Aided Design and Computer Graphics (CAD/CG 2005)0-7695-2473-7/05 $20.00 © 2005 IEEE
∑ −=i
iiEJ 2)(2
1αθ , (4)
where iθ is the interior turning angle of a boundary
vertex Mvi ∂∈ , iα is the angle excess of iv on M,
and the index i of boundary vertices is in anti-
clockwise order (i.e., when walking along M∂ , left
side is always with the given surface M ).
From the closed-path theorem (ref. [9]), we know
that: for a simple non-self-intersecting 2D closed path,
if its path is anti-clockwise, the total turning is π2 . As
shown in Figure 3, considering D∂ , its total turning is
∑ −i
i )( θπ , the following constraint should thus be
satisfied in the angle space
πθπ 2
1
≡−∑=
n
i
in (5)
If the length of every boundary edge 1+ii vv is fixed to
as the length il on M∂ , the other two constraints are
added to ensure D∂ be a closed-path,
0cos
1
≡∑=
n
i
iil φ and 0sin
1
≡∑=
n
i
iil φ (6)
The relationship between iφ and iθ is derived as
follows. Referring to Figure 3, at the vertex iv we have
)(2 βφπθ −−= ii ,
and at the vertex 1−iv
πφβ −= −1i .
By these two formulas, we get
1−+−= iii φθπφ . (7)
Together with 11 θπφ −= (see Figure 3), the general
form of iφ could be written as
∑=
−=i
k
ki i
1
θπφ . (8)
In summary, the length-preserved natural boundary
is able to be determined by the following constrained
optimization problem in angle space.
0sin,0cos,2..
)(2
1minarg
111
2
≡≡≡−
⎭⎬⎫
⎩⎨⎧
−
∑∑∑
∑
===
n
i
ii
n
i
ii
n
i
i
iii
llnts
i
φφπθπ
αθθ
(9)
Next section will give the efficient numerical scheme
for solving Eq.(9).
After determining the optimal iθ s, their related
optimal iφ s are also obtained from Eq.(8). Therefore,
the optimal position of every boundary vertex iv is
given by T
iiiiii llqq )sin,cos(1 φφ+=+ (10)
with Tq )0,0(1 = – so that the optimal D∂ is obtained.
3. Numerical Implementation The constrained optimization problem is formulated
as an augmented objective function )(ΧJ using
Lagrange multipliers ),,( yx λλλθ :
∑∑∑
++
−−+==Χ
iiiy
iiix
iiEyxi
ll
nJJJ
φλφλ
θπλλλλθ θθ
sincos
))2((),,,()((11)
The objective function in Eq.(11) can be minimized
using the Newton’s method as follows.
while ε>Χ∇ )(J
solve )()(2 Χ−∇=Χ∇ JJ δ
δ+Χ←Χ
end
(12)
The size of Hessian matrix )(2 Χ∇ J is 3+vn where
vn is the number of boundary vertices. For very
complex models, vn could be a very large number that
make the procedure in (12) time-consuming.
Borrowing the idea of speeding up a non-linear
optimization in [2], we conduct the sequential linearly
constrained programming as [10] to minimize )(ΧJ .
The sequential linearly constrained programming
technique for solving constrained minimization
problems considers the constraints as linear at each
iteration – so that neglects the terms coming from the
2nd
derivatives of the constraints in the Hessian matrix
)(2 Χ∇ J . Therefore, )()(2 Χ−∇=Χ∇ JJ δ solved at
each step becomes
⎥⎦
⎤⎢⎣
⎡=⎥
⎦
⎤⎢⎣
⎡
⎥⎥⎦
⎤
⎢⎢⎣
⎡
Λ
ΛΙ
λ
θ
λ
θ
δ
δ
B
BT
0 (13)
with [ ]ijJ θλ ∂∂∂=Λ 2 , JB θθ −∇= , and JB λλ −∇= .
It is now possible to dramatically reduce the
1θ
...
iθ2θ
1+iθ
nθ
1−nθ
1−iθ
...
y
x
2φ
1φ
iφ
1−iφ
1+iφ
β
β
il
1+il
2l
1l
nl1−nl 1θ
...
iθ2θ
1+iθ
nθ
1−nθ
1−iθ
...
y
x
2φ
1φ
iφ
1−iφ
1+iφ
β
β
il
1+il
2l
1l
nl1−nl
Figure 3. Closed-path constraints on planar boundary.
Ninth International Conference on Computer Aided Design and Computer Graphics (CAD/CG 2005)0-7695-2473-7/05 $20.00 © 2005 IEEE
dimensions of the matrix inverted at each iteration. By
Eq.(13), we can separately compute the step vector λδ
for the Lagrange multipliers, and express the step
vector θδ for the variables as a function of λδ :
λθλδ BBT −Λ=ΛΛ (14)
λθθ δδ TB Λ−= (15)
Linear equation system in Eq.(14) is 33× , so it can be
efficiently solved using Gaussian elimination [11] if
3)( =ΛΛTrank , or it can be solved by the singular
value decomposition (SVD) [11] if 3)( <ΛΛTrank .
The only left issue is how to efficiently evaluate Λ ,
θB , and λB . For λB , we can easily get
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
−
−
−−
=−∇=
∑∑
∑
kkk
k kk
kk
l
l
n
JB
φ
φ
πθ
λλ
sin
cos
)2()(
. (16)
Before computing Λ and θB , let us first consider
about ik θφ ∂∂ – from Eq.(8), we have
⎩⎨⎧
≥−
<=
∂
∂
ik
ik
i
k
,1
,0
θ
φ. (17)
θθ Bbi∈∀ , the following expression can be derived
∑=
⎟⎟⎠
⎞⎜⎜⎝
⎛
∂
∂−++−−=
∂
∂−=
n
k i
kkkykxii
i
l
Jb
i
1
)cossin()(θ
φφλφλλαθ
θ
θ
θ
.
With Eq.(17), i
bθ is in general expressed as
∑=
−++−−=n
ik
kkykxii lbi
)cossin()( φλφλλαθ θθ . (18)
To efficiently compute i
bθ , during iterations, we
usually adopt the following recursion formula:
∑=
−++−−=n
k
kkykx lb
1
11 )cossin()(1
φλφλλαθ θθ (19)
iiyix
iiii
l
bbii
)cossin(
)()( 111
φλφλ
αθαθθθ
−−
−−−+= +++ (20)
Similarly, for [ ]iΛ=Λ , the column vector
( )
( )
( )⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
∂
∂∂
∂
−−∂
∂
=∂∂
∂=Λ
∑
∑
∑
kkk
i
kkk
i
kk
i
ij
i
l
l
n
J
φθ
φθ
θπθ
θλ
sin
cos
)2(
2
can be evaluated efficiently in the recursion form as
Tiiiiii ll )cos,sin,0(1 φφ−+Λ=Λ + (21)
T
kkk
kkk ll )cos,sin,1(1 ∑∑ −−=Λ φφ . (22)
Using the above formulas, the procedure of
computing optimal iθ s is finally as
while ε>Χ∇ )(J
solve Eq.(14)
compute θδ by Eq.(15)
λδλλ +← and θδθθ +←
End
(23)
In our tests, this procedure usually stops after 8-10
iterations. The optimal planar positions of boundary
vertex Dvi ∂∈ are then computed by Eq.(10). Finally,
the planar position of interior vertices can be
determined by the parameterization approach in [1].
4. Results and Comparisons We test all the examples by our implementation of
the proposed algorithm and the intrinsic
parameterization [1] using C++ (plus OpenGL) on a
PC with PIV 2.99GHz CPU + 1GB RAM. The sparse
linear system BAX = in the intrinsic parameterization
is solved by PCBCG (ref. [11]) with the terminal
conditions setting to the iteration number greater than 4
10 or the error 610/ −≤− BBAX . By our proposed
approach, as the boundary vertices are fixed, the linear
equation system in [1] can be separated into sub-
systems relating to x- and y-coordinates and solved,
which also speeds up the computation because of the
half reduction of system dimension. The time
comparison of our approach and [1] is given in the
computation statistic table (see Table 1), where fn
represents the number of triangles on the given mesh.
Since the natural boundary mode in [1] has no
control on the boundary length, the resultant
parameterization usually shrinks significantly – we
simply scale the parameterization by equaling the total
length of D∂ and M∂ . Checkboard texture is adopted
to evaluate the visual quality of a parameterization on
the results. Besides, the comparisons between the
intrinsic parameterization [1] and ours are also
quantitatively given based on the boundary
morphological metrics θΠ (by Eq.(2)), the edge
distortion error EΠ
∑∑∑
−=Πji
ji
ji
ji
Evv
vv
qq, (24)
and the area distortion error AΠ
Ninth International Conference on Computer Aided Design and Computer Graphics (CAD/CG 2005)0-7695-2473-7/05 $20.00 © 2005 IEEE
∑ ∑∑ −=Π ΩΩ )(/)()(/)( iiiiA TATATATA (25)
with )(LA and )(LΩA representing the area of a
triangle before and after parameterization.
The first example of our tests includes the front and
the back piece of a polo-shirt, which has been
previously shown in Figure 1 – we conduct checkboard
in Figure 4 to demonstrate the differences between the
results from [1] and our method. It is easy to find that
distortions happen on the results from [1] (Figure 4a)
but not on ours (Figure 4b). Our second example is
lady pants shown in Figure 5, where the results from
[1] also show larger distortions comparing to ours. The
statistics shown in Table 1 also prove this – θΠ , EΠ ,
and AΠ on the results from our method are much less
than the results from [1]. Also, by our method, the
parameterization can be computed faster. Example III
is the mannequin model that is usually used as
benchmark in the papers of surface parameterization.
The results from [1] and ours are similar (see Figure 6),
but ours is much faster. Our last example shown in
Figure 7 is a cube that is symmetrically cut into a disk-
like topology – the parameterization result from ours is
symmetric while the one from [1] is not.
5. Conclusion and Discussion This paper presents a fast approach to compute
length-preserved natural boundary for the
parameterization of a given triangular mesh. The
problem is formulated as a constrained non-linear
optimization problem in angle space, and is speedily
solved by adopting the sequential linearly constrained
programming. The tests show that our length-preserved
natural boundary could greatly improve the speed and
quality of the original intrinsic parameterization
scheme.
Although the constraints derived from the closed-
path theorem have avoided the local-self-intersection
(e.g., the case shown in Figure 8a), the method to
prevent the global-self-intersection (e.g., Figure 8b) is
still under investigation. We are planning to solve the
global-self-intersection problem by borrowing ideas
from [12] in our future research.
6. References [1] M. Desbrun, M. Meyer, and P. Alliez, “Intrinsic
parameterizations of surface meshes,” Proceedings of
EUROGRAPHICS 2002, pp.209-218, 2002.
[2] A. Sheffer, B. Lévy, M. Mogilnitsky, and A.
Bogomyakov, “ABF++: fast and robust angle based
flattening,” ACM Transactions on Graphics, vol.24,
no.2, pp.311-330, 2005.
[3] B. Lévy, S. Petitjean, N. Ray, and J. Maillot,
“Least squares conformal maps for automatic texture
atlas generation”, ACM Transactions on Graphics,
vol.21, no.3, pp.362-371, 2002.
[4] P. Sander, S. Gortler, J. Snyder, and H. Hoppe,
“Signal-specialized parametrization,” Eurographics
Workshop on Rendering 2002, pp.87-100.
[5] P. Sander, J. Snyder, S. Gortler, and H. Hoppe,
“Texture mapping progressive meshes,” Proceedings
of ACM SIGGRAPH 2001, pp.409-416.
[6] S. Yoshizawa, A.G. Belyaev, and H.-P. Seidel, “A
fast and simple stretch-minimizing mesh
parameterization,” Proceedings of International
Conference on Shape Modeling and Applications
2004, pp.200-208.
Figure 4. The checkboard texture for Example I
shown in Figure 1 – (a) texture mapping by the
parameterization results of Desbrun et al. [1] and (b)
texture mapping from our method’s results.
Figure 7. Example V – parameterize a cube (a) after
symmetrically cutting, the result from [1] is
asymmetric (b) while our result (c) is symmetric.
(a) (b)(a) (b)
Figure 8. Self-intersection – (a) local vs. (b) global.
Ninth International Conference on Computer Aided Design and Computer Graphics (CAD/CG 2005)0-7695-2473-7/05 $20.00 © 2005 IEEE
[7] P. Degener, J. Meseth and R. Klein, “An adaptable
surface parameterization method,” Proceedings of 12th
International Meshing Roundtable, pp.201-213, 2003.
[8] M.S. Floater and K. Hormann, “Surface
parameterization: a tutorial and Survey,” Advances in
Multiresolution for Geometric Modelling, N.A.
Dodgson, M.S. Floater, and M.A. Sabin (eds.), pp.157-
186, Springer-Verlag, Heidelberg, 2004.
[9] M.E. Mortenson, Geometric Modeling (2nd
Edition), pp.282-310, Wiley: New York, 1997.
[10] J. Nocedal, and S.J. Wright, Numerical
optimization, Springer-Verlag, 1999.
[11] W.H. Press, B.P. Flannery, S.A. Teukolsky, and
W.T. Vetterling, Numerical Recipes in C: the Art of
Scientific Computing (2nd ed.), Cambridge: Cambridge
University Press, 1995.
[12] A. Sheffer and E. de Sturler, “Parameterization of
faceted surfaces for meshing using angle based
flattening,” Engineering with Computers, vol.17, no.3,
pp.326-337, 2001.
Table 1 Computational Statistics
Intrinsic Parameterization [1] Our method together with Intrinsic Parameterization Example fn
Figure Time θΠ EΠ AΠ Figure Time* θΠ EΠ AΠ
I (front) 3.62k 1b, 4a 0.704 0.020 0.094 0.186 1c, 4b 0.157 0.006 0.038 0.067
I (back) 4.08k 1b, 4a 0.906 0.034 0.189 0.353 1c, 4b 0.187 0.021 0.029 0.053
II (front) 2.61k 5b 0.547 0.010 0.113 0.233 5c 0.078 0.005 0.051 0.072
II (back) 2.24k 5b 0.359 0.010 0.175 0.331 5c 0.078 0.006 0.029 0.038
III 44.4k 6b 65.6 0.064 1.037 1.457 6c 18.0 0.064 1.006 1.420
IV 0.8k 7b 0.062 0.039 0.299 0.633 7c 0.016 0.039 0.273 0.485
*The time reported here includes both the computation of natural boundary and the followed intrinsic parameterization.
Figure 5: Example II – mesh parameterization for lady pants, where (a) the given 3D mesh surface patches, (b) the
results of the front and the back pieces by the intrinsic parameterization in [1], and (c) the results from our
boundary followed by the intrinsic parameterization. The parameterizations are colored using the 3D normal map.
Figure 6: Example III – parameterization for the refined mannequin model with (a) the 3D model, (b) the
parameterization result of [1], and (c) the result from our natural boundary + intrinsic parameterization.
Ninth International Conference on Computer Aided Design and Computer Graphics (CAD/CG 2005)0-7695-2473-7/05 $20.00 © 2005 IEEE