An Improved Subdivision Algorithm Based On Quadrilateral Meshes Xumin Liu

advertisement
An Improved Subdivision Algorithm Based On Quadrilateral Meshes
Xumin Liu
Xianpeng Yang
Department of Information Engineering
Capital Normal University
Beijing, China
liuxumin@126.com
Department of Information Engineering
Capital Normal University
Beijing, China
yangxianpeng0917@126.com
Yong Guan
Department of Information Engineering
Capital Normal University
Beijing, China
guanyong@mail.cnu.edu.cn
commonly used subdivision algorithm make the number of
meshes increase 3 times than before, the data elements
increase so fast that it greatly limits its application field, such
as network transmission of 3D signal etc.
In recent years, to solve this issue, some corresponding
new subdivision algorithms are proposed. In 2000 Kobbelt
proposed a kind of 3 subdivision algorithm in SIGGRAPH
conference [4]. After each subdivision, the number of
meshes increase 2 times than before, but if the number of
subdivision is odd, the model rotate some certain angle, and
if the number is even, the model rotates back to the original
position. Velho proposed a kind of 4-8 subdivision algorithm
which was aim at mixed quadrilateral and triangular meshes
[5]. After each subdivision-operating, the number of meshes
became twice. But the topological of mesh is complex, it
need a lot of preprocessing work.
In this paper, an improved subdivision algorithm based
on quadrilateral mesh is proposed. It makes the number of
meshes increase approximately twice after each subdivisionoperating, have the advantages of simple geometrical
structure, slowing growth in data and simple preprocessing
structure etc.
Abstract—This paper proposed an improved subdivision
algorithm that based on quadrilateral mesh. Firstly, we
implement quadrilateral mesh preprocessing to polygon mesh
by paired method, and then adopt the strategy of slowing
growth in the number of edges. After each subdivision, the
number of meshes increase approximately 1 times, the result of
twice subdivision nearly equal to the traditional 1-4
subdivision once. The subdivision surface is generated by the
improved algorithm has C2 continuity in the regular vertex
and C1 continuity in the extraordinary vertex. The experiment
show that the improved algorithm is effective, it can slow
down the growth rate of meshes effectively, be good to the
multi-resolution analysis of model, can keep the character of
original model splendidly, and make the generated surface
smooth and connection.
Keywords-Surface subdivision; Quadrilateral mesh; Preprocessing
I.
INTRODUCTION
In the field of Computer Aided Geometric Design
subdivision scheme is an iterative process that defines a
smooth surface as the limit of a sequence of successive
refinements applied to an initial control polygon mesh.
Because of their capability in representing any shape with
only one surface, these years, it is becoming popular in many
areas such as animation, geometric modeling and games. A
subdivision surface is determined by the way the control
mesh is refined, i.e., the subdivision scheme. A subdivision
scheme is include two steps that topological connect the
generated vertices in the new meshes and geometric
positioning of vertices. The usual subdivision algorithm is
mainly based on triangular or quadrilateral meshes. In 1978,
Catmull-Clark [1] and Doo-Sabin [2] respectively proposed
subdivision-algorithm that made the B-spline surface extend
to arbitrary topological meshes. In 1987, Loop proposed the
famous Loop subdivision algorithm which applied to
triangular mesh [3]. At present, after each subdivision, the
II.
MESH PREPROCESSING
In general, polygon mesh is mostly consisting of triangle
and quadrangle under the environment of Computer
Graphics. The initial mesh that mainly consists of triangle or
quadrangle is not many. In this paper, because the
subdivision algorithm is based on quadrilateral mesh, in
order to make the polygon mesh transform into quadrilateral
mesh, we need do some mesh preprocessing to polygon
mesh [6].
There is two mainly kinds of traditional preprocessing
methods, one is based on surface-split. Its ideology is that
figure out the barycentre of each mesh and midpoint of each
edge on the corresponding surface firstly, and then connect
the barycentre of each mesh and midpoint of each edge on
the corresponding surface. In this way, we can transform
_____________________________________
978-1-4244-5539-3/10/$26.00 ©2010 IEEE
571
polygon into n quadrangles. This kind of method make lesser
change in topology information and has the advantage of
none triangle mesh appear in the boundary (all polygon
meshes transform into quadrilateral meshes), but it makes the
number of meshes grow fast. Another is based on paired
method .Its ideology is that firstly figure out the barycentre
of each mesh, then connect the barycentre and each vertex on
the corresponding mesh so as to generate new edges, and
then remove the old edges (retain the boundary edges)after
connection. This kind of method makes great change in
topology information and all polygon meshes transform into
quadrilateral meshes except triangle meshes in boundary, but
it have the advantage of slowing growth in the number of
meshes.
In this paper, we adopt the second mesh preprocessing
method. The subdivision scheme of the triangle meshes on
the boundary, we will describe in the follow section.
III.
P0 =
1
( P00 + P01 + P11 + P10 )
4
(1)
and the formula for the location of new V-vertex is:
Q =
1
1
P+
4
8
4
1
4
∑ P + 16 ∑ P
i =1
i
j =1
j
(2)
Where vertex Pi is the vertex which directly connect with
vertex P, for example, the formula for the new V-vertex
Q11 Corresponding to the vertex P11 is:
1
1
Q11 = P11 + (P01 + P12 + P21 + P10 )
4
16
(3)
SUBDIVISION SCHEME
Usually, each subdivision-operating of the subdivision
surface has two step [7], First is topological rules, After
inserting the new vertices into the meshes, we should
describe the relationship of all vertices ,Second is geometric
rule, It is used to calculate the geometric location
information of all new vertices.
Definition: the vertex P on the quadrilateral mesh are
divided into two categories: regular vertices and
extraordinary vertices. If vertex P is an inner vertex and its
valence is 4 or P is a boundary vertex and its valence is not 3
or 2, P is extraordinary vertex. Otherwise, vertex P is called
regular vertex .
Figure 1. geometric positioning of the regular vertex, for example, P0 is a
new F-vertex, Q11 is a new V-vertex .
2) For the extraordinary vertex
The geometric positioning for the extraordinary vertex
can be divided into two categories [8]:
a) when the vertex P is entirely surrounded by the
quadrilateral meshes, as show in the Figure 2.
A. Topological Connection Rules
Firstly, we describe the topological connection rules:
The center of the quadrilateral mesh is inserted a new point
(we define it as F-vertex), if the mesh is triangular mesh in
the boundary, the new inserted point is the same as the
quadrilateral mesh. Corresponding to each vertex on the
mesh generates a new vertex (we define it as V-vertex, we
retain the boundary vertices and do not generate new vertices
for them). It will generates 4 new edges by connecting Fvertex and V-vertex which is surround it (for the boundary
mesh, connect F-vertex and the boundary vertices), and then
remove the old edges (except for the boundary edges), This
has completed once subdivision-operating of subdivision
surface, In such subdivision scheme, it can find that the
result of once subdivision makes the number of the meshes
growth approximately twice than the original, which slowing
the growth rate of the meshes effectively. After analysis, We
could discover that the number of the neighborhood edges of
the new inserted point is four. After subdivision, except the
boundary vertices and the extraordinary vertices inheriting
from the upper-layer, all the rest are the regular vertices.
Figure 2. geometric positioning of extraordinary vertex which is only
surrounded by quadrilateral meshes, for example, P0 is a new V-vertex.
The formula for the location of the new V-vertex P0 is :
n
m
i =1
j =1
P0 = cP + ∑ dPi + ∑ eP j
B. Geometric Positioning Rule
1) For the regular vertex
The geometric positioning for the regular vertex, as show
in the Figure 1, the formula of the new F-vertex P0 of one
quadrilateral mesh P00P01P11P10 is:
(4)
Where vertex Pi is the vertex which directly connect with
vertex P, n is the number of the edges which are directly
connect with vertex P, m is the number of the quadrilateral
meshes which surround vertex P, c=(n-3)/n, d=2/n2, e=1/n2,
572
the formula for the new V-vertex of regular vertex is one
particular case when n=m=4.
b) when the vertex P is surrounded by quadrilateral and
triangle meshes, as show in the Figure 3. the formula for the
location of the new V-vertex P0 is:
P0 = fP +
n
m
∑ gP + ∑ hP
i =1
i
j =1
j
continuous [9], the subdivision surface generated by the
tensor product is C2 continuous in the regular vertex and C1
continuous in the extraordinary vertex [10] .
IV.
RESULTS
In order to identify the effect of the improved algorithm.
We implement the improved algorithm under the
environment of Microsoft Visual C++ 6.0, and compare the
improved algorithm with the Catmull-Clark algorithm [11].
As show in the Figure 5, the above line is the effect drawings
about that the cow model used the improved algorithm to
subdivide twice and used the Catmull-Clark algorithm to
subdivide once. The below line is the effect drawings about
the cubic model used the improved algorithm to subdivide
four times and used the Catmull-Clark algorithm to
subdivide twice. Because the number of subdivision using
the improved algorithm is twice than the number of
subdivision using the Catmull-Clark algorithm. As can be
seen from the experimental results, the subdivision effect
drawings of the improved algorithm looks more smooth. On
the whole, the result of twice subdivision using the improved
algorithm is not very different from that of once subdivision
using the Catmull-Clark algorithm. It can be learned that the
smoothness of subdivision surface of the improved algorithm
is little different from the Catmull-Clark algorithm. It also
confirms the smoothness analysis, the improved subdivision
algorithm is same as the Catmull-Clark algorithm, has C2
continuity in the regular vertex and C1 continuity in the
extraordinary vertex.
(5)
Figure 3. geometric positioning of extraordinary vertex which is
surrounded by quadrilateral and triangle meshes, for example, P0 is a new
V-vertex.
Where vertex Pi is the vertex which directly connect with
vertex P, n is the number of the edges which are directly
connect with vertex P, m is the number of the quadrilateral
meshes which surround vertex P, f=1/(1+n/2+m/4), g=f/2,
so g=1/2(1+n/2+m/4), h=f/4, so h=1/4(1+n/2+m/4).
3) For the original mesh on the boundary
Consider that if the initial meshes has boundary, as the
description in the chapter about mesh preprocessing, the
boundary will generate triangle meshes. We should do some
special treatment to these triangle meshes during the
subdivision-operating. As show in the Figure 4, suppose the
boundary triangle is VPQ , the new F-vertex is P0.
Figure 5. example of models respectively using Catmull-Clark algorithm
and the improved algorithm in this paper(Catmull-Clark≡C-C,the improved
subdivision algorithm ≡P-S ),(a)(d) two initial meshes,(b)twice P-S, (c)
once C-C, (e) four times P-S, (f) twice C-C.
Figure 4. the case of triangle meshes on the boundary, for example, P0 is
the new V-vertex.
The formula for the new F-vertex P0 of the boundary
triangle is:
1
(6)
P0 =
(V + P + Q )
3
Because implement the improved subdivision twice is
approximate equivalent to once 1-4 subdivision, the
smoothness of the subdivision is same as the smoothness of
the traditional 1-4 subdivision. However, the improved
subdivision algorithm can effectively slow down the growth
speed of the meshes during subdivision-operating. Because
the subdivision curves generated by the cubic B-spline is C2
TABLE I.
THE TEST RESULTS OF THE TWO SUBDIVISION ALGORITHM
The data experimental result of the two models
Respectively using the improved algorithm and the Catmull-
573
and Funding Project for Academic Human Resources
Development in Institutions of Higher Learning Under the
Jurisdiction of Beijing Municipality (IHLB).
Clark algorithm is given in the Table 1. From the data in the
Table 1, we can learn that the number of the meshes
generated by twice subdivision using the improved algorithm
is slightly more than the meshes generated by once
subdivision using the Catmull-Clark algorithm, but the
difference is little. So the improved algorithm can effectively
slow down the growth speed of the meshes during
subdivision-operating. Therefore, it has great advantage in
many fields such as graphic transmission, multi-resolution
analysis and network transmission of 3D signal etc [12].
REFERENCES
[1]
Catmull E, Clark J. Recursively generated B-spline surfaces on
arbitrary topological meshes. Computer-Aided Design, 1978, 10(6):
350-355.
[2] Doo D, Sabin M. Behaviour of recursive division surfaces near
extraordinary points. Computer-Aided Design, 1978,10(6): 356-360.
[3] Loop C.Smooth Subdivision Surface Based On Triangles [Mster
thesis] Dept.Math, Univ.Utah, 1987.
[4] Kobbelt K. 3 -subdivision [C].In Computer Graphics Proceedings.
Annual Conference Series, ACM SIGGRAPH, 2000.103-112.
[5] Luiz V, Denis Z.4-8 Subdivisiom CAGD, 2001, 18 (5):345-357.
[6] WangQihua. SunLijuan. The study of new subdivision algorithm
which based on Catmull-Clark subdivision. Computer Tec- hnology
and Development .2008,18(3): 40-42.
[7] Zheng J, Cai Y Y. Interpolation over arbitrary topology meshes using
a two-phase subdivision scheme. IEEE Trans.Visual- ization and
Computer Graphics, 2006, 12(3): 301-310.
[8] Stam J, Loop C. Quad-tirangle subdivision [J].Computer Graphics
Forum 22. 2003, 1: 79-85.
[9] Peters J, Reif U . Analysis of algorithms generalizing B-spline
subdivision [J].SIAM Journal on Numerical Analysis 35, 1998, 2:
728-748.
[10] Schaefer S,Warren J. On C2 triangle/ ruad subdivision [J]. ACM
Transactions on Graphics 24. 2005, 1 : 28-36.
[11] Lai S, Cheng F. Similarity based interpolation using Catmull-Clark
subdivision surfaces. The Visual Computer,2006,22 (9) : 865-873.
[12] Zorin D, SchrÄoder P, DeRose T, Kobbelt L, Levin A, Sweldens
W. Subdivision for modeling and animation. In SIGGRAPH 2000
Course Notes, ACM SIGGRAPH, Boston, USA, 2006,pp.30-50.
V. CONCLUSION
Focus on the issue that the data element grow too fast in
traditional mesh subdivision algorithm, we proposed an
improved subdivision algorithm which is based on
quadrilateral meshes. The algorithm not only has the
advantage that the data element grow relatively slowly which
similar to the 4-8 subdivision algorithm, but can keep the
characteristics of the original model well and can generate
smooth surface. In addition, the improved algorithm and its
implementation still have some details should be further
mature and perfect. Owing to the topology of the mesh has
been changed, the model will distort at the beginning of the
subdivision. However, with the number of subdivision
increase, the surface will becomes more and more smooth.
So more work will be done in the deficient aspect in the
future.
ACKNOWLEDGMENT
This research was supported by the National Natural
Science Foundation (60873006), Beijing Natural Science
Foundation (4082009), Beijing Nova Program (2008B57),
574
Download