Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192...

18

Transcript of Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192...

Page 1: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

Progressive Compression and Transmission of Arbitrary Triangular

Meshes �

Chandrajit L Bajaj Valerio Pascucci Guozhong Zhuang

Department of Computer Sciences

University of Texas at Austin, Austin, TX 78712

Abstract

The recent growth in the size and availabilityof large triangular surface models has generatedresearch in compact multi-resolution progressiverepresentation and data transmission. An ongo-ing challenge is to design an eÆcient data struc-ture that encompasses both compactness of ageometric representation and visual quality of aprogressive representation.

In this paper we introduce a topological layer-ing based data-structure and a encoding schemeto build a compact progressive representation ofan arbitrary triangular mesh (a 2D simplicialcomplex in 3D) with attached attribute data.This compact representation is composed of mul-tiple levels of detail that can be progressivelytransmitted and displayed. The global topology,which is the number of holes and connected com-ponents, can be exibly changed among succes-sive levels while still achieving guaranteed sizeof the coarsest level mesh for very complex mod-els. The exibility in our encoding scheme alsoallows topology preserving progressivity.

1 Introduction

The design of compact progressive representa-tions for triangular surface models has been afundamental topic in recent research becauseof the continual growth of internetworked 3Dgraphics. High resolution scanning devices forobject reconstruction or simulations on super-

�This research is supported in part by grants

from NSF-CCR-9732306, NSF-KDI-DMS-9873326, DOE-

ASCI-BD-485, and NASA-NCC 2-5276.

computers have resulted in ever increasing gen-eration and use of large surface models in scien-ti�c visualization. Geometry compression is cur-rently being worked into the MPEG 4 3D codingstandard by the MPEG-SNHC working commit-tee [24].

The primary diÆculty of designing an e�ec-tive progressive and compact encoding schemeis to meet contradictory requirements like pro-gressivity, compression capability and visual ef-�cacy. Such schemes are therefore evaluated bytheir trade-o�s and exibility in prioritizing thedi�erent properties or adaptation to the needs ofthe particular visualization applications.

Representation Power. The representationpower is the class of domain models that ascheme can correctly handle. Di�erent schemescan represent di�erent surfaces that could beopen or closed, simple or high-genus, orientableor non-orientable, manifold or non-manifold. Forinstance, isosurfaces of physical functions gener-ated by a scienti�c simulation can be high genusand non-manifold. Analytic mathematical Sur-faces can be non-orientable, like the M�obius stripor Klein bottle. Increasingly 3D CAD modelingsystems include the creation and processing ofnon-manifold geometries.

Compression. The representation of largesurfaces for storage or network transmissionneeds be space eÆcient. Compressed represen-tation can make e�ective use of disk space andnetwork bandwidth as well as substantially re-duces network transfer time.

1

Page 2: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

Progressivity. A progressive representationhas several advantages. First, it enhances highperformance interactivity with large remotelyarchived models because the compressed datacan be incrementally transmitted and displayed.Second, the embedded bit stream can be trun-cated at any point by the decoder to created the�best�error-bounded approximation of the modelwith exact bit rate control.

Topology Constraints. A topology con-strained scheme does not change the genus ornumber of connected components of input sur-faces. Strict constraints de�nitely limit the sizeof the coarsest mesh it can produces. For highgenus objects or surfaces with many componentsthis limitation can make the scheme impracti-cal because substantial simpli�cation can only beobtained by removing holes and/or merging com-ponents. On the other hand, topology preserv-ing lossy compression can be essential for certainapplications where small geometry error is toler-able, but topology features should be preserved.Ideally, a multiresolution representation shouldhave the exibility of allowing between topologypreserving and non-preserving strategies.

Multilevel Mapping. In a multi-resolutionrepresentation scheme the correspondence be-tween geometry and associated attributes (likecolor, textures and normals) is best maintainedby constructing continuous maps between di�er-ent levels of resolution.

In this paper we introduce a new compactmultiresolution representation scheme which hasthe above criteria and provides the exibility totrade visual quality and adaptability for storagecomplexity and topology. Priority can be cho-sen according to the requirements of a particu-lar application. This scheme is able to expressarbitrary triangular meshes. That is, it can beused to compactly encode and progressively re-trieve any set of triangles without any constrainton the topological type, orientability or manifoldcharacterization. The non-manifold mesh in Fig-ure 1 has sixteen components, with the adjacenttwo sharing a non-manifold vertex. Input objects

can also have attached properties such as colors,normals or texture coordinates. Our scheme iscomparable in several aspects to prior publishedmethods [14, 27, 30, 19] and improves on a fewimportant criteria [1, 33].

The rest of this paper is as follows. Section2 discusses several of the prior published workon compact multiresolution representations, in-cluding tradeo�s to our afore mentioned criteria.Section 3 details our multiresolution topologicallayering scheme. Section 4 details the exibilityon topology preserving/non-preserving simpli�-cation. Section 5 explains our geometric encod-ing of both mesh vertex coordinates as well asattached attribute data. Section 6 provides com-pression performance analysis of our scheme aswell as several examples.

2 Prior Work on Multiresolu-

tion Representations

There have been several scheme for single res-olution compression of triangle meshes with at-tribute data [1, 5, 31, 20, 32, 13, 4]. Here we con-centrate on prior work on multiresolution repre-sentations.

Zorin, Schroder and Sweldens use subdivi-sion to connect and unify patches and polyg-onal meshes in order to produce a tool to domesh manipulation [34]. Their algorithms aredesigned for interactive multiresolution editingover meshes of arbitrary topology. However com-pression and progressive transmission are onlysuggested as possible future research objectivesvia the multiresolution transform in their paper.

Recursive subdivision schemes [26, 3, 6, 21]represent a polygonal mesh as a low resolutionbase mesh and an ordered sequence of detailswhich are actual subdivision steps. Connectiv-ity re�nement and geometry smoothing are twooperations in each of such steps. Connectivityre�nement adds more vertices and faces to themesh. Geometry smoothing adjusts vertex po-sitions to obtain better approximation. Recur-sive subdivision and re�nement schemes make itpossible for the transition between two consecu-tive intermediate meshes to go smoothly. On the

2

Page 3: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

V=16,400, F=32,768 V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048

Figure 1: Multiresolution representation of a non manifold mesh model of a pearl necklace areshowing the topological layering. The last three pictures show enlarged local details of threeintermediate meshes created with our layering based simpli�cation scheme. V = vertices, F =triangle faces.

other hand, these schemes only provide progres-sive representation for a narrow class of mesheswhich should have recursive subdivision connec-tivity.

Eck et al.[7] use a mesh with recursive subdi-vision connectivity to �rst approximate a meshof arbitrary topology. Wavelets are then intro-duced to do multiresolution analysis of mesheswith such connectivity property. Hierarchicalquaternary subdivision trees are used to organizethe vertices which will be coded in a top-downmode. Prediction coding is used for vertex po-sitions by means of surface �tting. This waveletbased scheme does not support lossless compres-sion because most meshes do not have subdi-vision connectivity. Also extension to meshesof high genus or arbitrary simplicial complexescould be problematic.

The adaptive-re�nement Progressive Mesh(PM) scheme [14] introduced by Hoppe storesa manifold mesh as a low resolution coarse meshtogether with an ordered sequence of details thatcan be used to re�ne the coarse mesh. There aretwo basic operations in this PM scheme: edgecollapse and vertex split. Each vertex split op-eration adds a new vertex and two new trianglesand locally re�nes the coarse mesh. O(n log(n))bits are needed to double the size of a mesh withn vertices. This degrades compression perfor-mance, especially for very large models.

Popovic and Hoppe[27] propose a lossy con-nectivity compression technique which outputsprogressively transmittable bit stream. Theyexpress the original simplicial mesh at di�erentresolutions through successive edge collapse andmerging operations [15]. While not an eÆcientcoding method, its fundamental contribution isits support for the progressive transmission. Thecompression method is improved by Li et al [20]through integrating the bit stream and the at-tribute stream under certain optimized criteria.

Progressive Forest Split (PFS) of Taubin et al[30] is a compact representation for any man-ifold mesh [30]. PFS decomposes a given meshby a low resolution level-of-detail and a sequenceof forest split operations. The forest split op-eration is speci�ed by a forest in the graph ofvertices and edges of the mesh, a sequence ofsimple polygons, and a sequence of vertex dis-placements. In order to express each forest splitoperation, forest edges, sequence of simple poly-gons, and vertex displacements are coded intocompressed data streams.

Lee et al. [19] construct smooth parameteri-zations of irregular connectivity triangulation ofgenus 2-manifolds. A hierarchical simpli�cationtechnique is used so that a parameterization ofthe original mesh over a coarse base mesh is ob-tained. To get an approximation with a speci�ederror bound, the base mesh is hierarchically sub-

3

Page 4: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

divided by the Loop method [21]. The remesh-ing procedure does not introduce much connec-tivity complexity. This multiresolution adaptiveparameterization and remeshing technique canbe used for progressive transmission of polygo-nal meshes in applications that do not requireperfect connectivity recovery.

Kobbelt et al provide an interactive multires-olution modeling approach by building a hierar-chy of nested spaces for unstructured data [17].De Floriani et al. propose a general frameworkfor multiresolution hierarchical representation [8]where the re�nement step is the replacement of aportion of the mesh. Due to the high storage costthey experiment a variation of the data-structurethat improves storage eÆciency and allows pro-gressive transmission [9].

In this paper, progressive connectivity trans-mission is based on the construction of multires-olution surfaces for arbitrary triangular meshes,including non-manifold and high genus. For anarbitrarily given mesh, its geometry and connec-tivity information is �rst organized by a layer-ing structure. In this structure, vertices are fur-ther grouped into contours while triangles aremerged into strips or fans. Through operationson these basic geometric primitives, multireso-lution surfaces can be constructed with exibil-ity on topology preservation. To support exibleresolution, a topology non-preserving techniqueis also provided. Triangle contractions withoutany constraints are the fundamental operations.The coarsest mesh can be as small as the singlevertex mesh. Our progressive scheme comparesfavorably with PM [14, 15, 27] for its visual eÆ-cacy and matches the compactness of PFS [30].It holds a much larger input mesh domain thanPFS as well as has the exibility of topologicalpreserving/non-preserving progressive meshes.

Our multiresolution surfaces will be con-structed in two phases: the �rst phase preservesmesh topology and details in a compact way; thesecond phase provides exible resolution degreeand may change the mesh topology while thebase mesh and details are still expressed in aneconomical way.

Topological Layering Our topological layer-ing structure [1, 33] is inspired by the layeringscheme that is used to construct vertex spanningtrees for manifold meshes in [31].

The topological layering structure based onvertex neighborhood is used to encode theconnectivity information of arbitrary triangularmeshes as well as to index and establish localneighborhood and the second order of predictor corrector geometry encoding scheme. The in-put meshes are partitioned into two basic kindsof layers: vertex layers and triangle layers.The 0th vertex layer is a randomly chosen vertex(could be a chain of vertices) of the mesh. Thekth vertex layer (with k > 0) includes a vertex Vif V is not included in any previous vertex layerand there exists an edge E = (V; V �) where V �

is included in the (k � 1)th vertex layer. Thekth triangle layer (with k � 0) includes a tri-angle T if T has one vertex in kth vertex layerand T is not included in any previous trianglelayer. This decomposition of the input triangularmesh provides a \Morse encoding" [22] capturingthe branching and extreme points of edge cyclesboundary holes and components. We use thise�ectively for generating both topological pre-serving and non-preserving simpli�cations. SeeFigure 2 color encoded vertex and triangle layers.

The topological layering structure has theproperty that any mesh edge and thus any trian-gle can only span two vertex layers. Therefore alledges are classi�ed into two categories: transver-sals and chords. A chord is an edge that con-nects two vertices in di�erent vertex layers whilea transversal is an edge that connects two ver-tices in the same vertex layer.

Geometric Primitives There are four geo-metric primitives contours, branching points, tri-angle strips, and triangle fans (see Figure 3).

A contour is an ordered chain of verticesfv0; v1; � � � ; vng in a vertex layer where each ver-tex pair (vi; vi+1) is connected by a transversaledge and every intermediate vertex vi (0 < i <n) is incident to exactly two transversal edges.In a closed contour v0 is coincident with vn andif n is 0 the contour degenerates to an isolated

4

Page 5: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

(a) apple (b) horse (c) aircar

Figure 2: Topological layering of three di�erent models with the last model having non-manifoldfeatures. Triangles in two adjacent layers are di�erently colored.

point. Contours are built in a greedy fashionby connecting vertices with transversal edges. Abranching point is a vertex of a vertex layerwhich is incident to more than two transversaledges.

STRIP

FAN

CONTOUR

CONTOUR

BRANCHING POINT

Figure 3: Contour, branching point, triangularstrip and fan.

A triangle strip is an ordered sequence of tri-angles in a triangle layer where each pair of con-secutive triangles share a common edge which isa chord. All the vertices of a strip belong to ex-actly two contours in two adjacent vertex-layers.Triangle strips are constructed using a greedy ap-proach by merging triangles that share chords.

A triangle fan is an ordered sequence of tri-angles in a single triangle layer where all trian-gles have a common vertex, each pair of con-secutive triangles share a common edge, and noedge is shared by more than two triangles. Onceall the triangle strips are collected in a triangle

layer, the remaining triangles are grouped intotriangle fans again in a greedy approach to cre-ate longer fans.

Error Resilient Incremental Transmission

The layering structure used in the single reso-lution compression and coding scheme naturallydivides the compressed stream into small blocksbecause of its following locality properties: everytriangle layer is dependent only on two adjacentvertex layers; every vertex layer is necessary todecode only two adjacent triangle layers. Thisimplies that the geometric primitives for eachvertex layer and triangle layer can be indepen-dently encoded. With the locality property, errorresilience is also supported [1, 33] over unreliablecommunication channels.

We claim here a simple yet fundamental resultthat advocates the use of the layering structureas a general purpose representation for compactstorage and transmission of triangle meshes.

Lemma 2.1 (Complete Representation Power)Any triangle mesh can be represented by layering

structure.

Proof. The breadth-�rst mesh traversalguarantees to visit all the mesh edges and henceclassi�es vertices and triangles into layers. Byrepresenting each vertex with a separate contourand each triangle as a separate fan, one can rep-resent a mesh consisting of any set of triangles.

5

Page 6: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

28,684 faces, 120,922 bytes 45,954 faces, 189,330 bytes 82,743 faces, 326,799 bytes

Figure 4: Multiresolution of representation of an object with color attribute.

�The mesh to be expressed could be non-

manifold or a mesh that does not form a simpli-cial complex or that needs to be repaired [18, 29].Thus this layering scheme is general enough torepresent any set of triangles. Its other advan-tage is the automatic avoidance of the so-calledcrack problemwhich occurs when a non-manifoldmesh is converted into several manifold compo-nents by duplicating non-manifold features suchas vertices, edges and faces [12].

3 Multiresolution Topological

Contouring

The topological layering structure [1, 33] is �rstextended to a multiresolution representation.

3.1 Mesh Simpli�cation and

Progressive Reconstruction

The multiresolution layering representation iscomposed of a coarse mesh Mk along with a se-quence of details Dk;Dk�1; : : : ;D1. The meshsimpli�cation procedure starts with the �nestmeshM0 and decomposes it into detail D1 and acoarser meshM1. Iteratively, the procedure gen-erates the details D1;D2; : : : ;Dk the base levelcoarsest mesh Mk. We allow for exible topo-logical preserving and non-preserving multireso-lution representation.

(i) Topological layering based simpli�cationthat simpli�es the mesh while preserving thelayering structure of the input meshM witha very compact representation. In this stagethe topology of the mesh is not modi�ed.

(ii) Topological non-preserving simpli�cationwhich is based on a generalized triangle con-traction primitive [11]. The details gener-ated in this stage are relatively expensiveto express in the encoded bit stream. How-ever it produces better quality simpli�cationand guarantees the progress of the simpli�-cation. For this reason this second stage isapplied only to generate the coarser levelsespecially when storage needs become pro-gressively negligible

The block diagram in Figure 7 outlines ourprogressive coder which creates the multiresolu-tion representation where C and G stand for con-nectivity and geometry data of mesh Mi and D

for the detail. The entropy coder removes redun-dance in the digital representation of the details.We explain below how these details are digitallyencoded.

3.2 Topological Layering Based Sim-

pli�cation

The layering based simpli�cation uses two basicdecimation operations: the intra-layer simpli�-

6

Page 7: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

Figure 5: Progressive transmission of a triangular mesh. The topology of this model changesbetween the third and fourth pictures.

Figure 6: Progressive transmission of a triangular mesh. This sequence of non-consecutive inter-mediate models consist of 1, 1,285, 3,328, 8,366, 12,380, 16,392 and 40,432 triangles.

C

G

M 0

C

G

M

C

G

M

C

M1

D

2

1

1

2

2

n

n

n

D 1 D 2 D n

G

C

G

n+1

n+1

M

n+1D n+2D n+m

MM n+2n+m

Bit stream

0

0

n+1

C

G

C

G n+2

n+2

n+m

n+m

Entropy Coding

Figure 7: Block diagram of the progressive trans-mission coder.

cation that removes vertices within a contourwithout changing the topology; and the inter-layer simpli�cation that removes an entire con-tour. Figure 8 shows how these two operationscan alternatively used to reduce the visual arti-facts induced by the layering structure.

3.2.1 Intra-layer Simpli�cation

In the intra-layer simpli�cation a local vertex re-moval is performed with retriangulation and itmaintains the layering structure.

Figure 9 shows the transition of a simple stripwhen some vertices in its child and parent con-tours are removed. One obvious characteristic ofthis simpli�cation is that the simpli�ed strip stillhas the same parent and child vertex contours.

The selection of the vertices to be removed inone contour is based on three suÆcient criteriato guarantee topology preservation and the com-pact encoding of the details. First, there are atleast three vertices remaining in the contour ofthe candidate vertex. Second, the two extremevertices of the contour cannot be decimated. Fi-nally, two consecutive vertices in a contour can-not be decimated in the same mesh transition.

7

Page 8: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

Figure 8: A sphere model, its layering structure and three combinations of intra-layer and inter-layersimpli�cation.

! !

Figure 9: Intra-layer simpli�cation: retriangulation of a simple triangle strip after the solid verticesare removed from its bottom and top contours.

Connectivity Details. Figure 10 shows thedecimation procedure of a contour with the con-nectivity details. The solid vertices are deci-mated while the gray ones remain. One bit isassociated with each remaining vertex: the valueof this bit is 1 if its successor is decimated andis 0 otherwise.

j j# #1001111 11000

Figure 10: Connectivity details for two transi-tion steps in the intra-layer simpli�cation wherethe �rst vertex of the contour is marked with anarrow.

Connectivity reconstruction of a contour isstraightforward. Starting from a bit string en-coding the contour detail, one bit is associatedwith each edge in the contour. If the bit value ofan edge is 1, it is split into two edges. Otherwise,the edge is not split.The remaining information necessary for the

encoding is related to the modi�cation of tri-angle strips incident to the decimated contour.Figure 11 (left) shows a star polygon around thevertex v to be removed. Vertices vL; vR lie onthe same contour as v. v1; v2 and v3 are chord-

connected in the previous vertex layer. The re-maining vertices are chord-connected to the nextlayer. To preserve the layering structure afterthe decimation a new transversal edge must beadded to connect vL to vR: The �rst half, ap-proximated for excess, of the vertices in the pre-vious and next layer are connected to vL. Thesecond half, approximated for defect, of the ver-tices in the previous and next layer are connectedto vR. The middle vertices of the previous andnext layer are connected to both vL and vR:With this �xed retriangulation rule, the details,suÆcient to recover the original triangulation,are the numbers of vertices in the previous andnext layer that are connected to v.

vL vR

v1

v2

v3

(3,4)

Figure 11: Constrained retriangulation and de-tail extraction for one transition of intra-layersimpli�cation.

Simpli�cation Order The order of the sim-pli�cation procedure goes as follows. For a singlecomponent, it goes from the �rst vertex layer to

8

Page 9: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

the last one; for each vertex-layer, it goes fromthe �rst contour to the last one; for each contour,it does from the starting vertex to the endingvertex. If multiple simpli�cation transitions areperformed, the above procedure executes multi-ple times. The reconstruction procedure followsthe exact reverse order.

3.2.2 Inter-layer Simpli�cation

In the inter-layer simpli�cation stage the deci-mation operation is the removal of a contour.Consequently, the gap left between the two ad-jacent contours of the removed one must be re-triangulated. There are three conditions on thedecimation of an entire contour.

� Its two adjacent contours in the previ-ous and next vertex layers do not containbranching points;

� The error introduced by the contour deci-mation does not exceed a given tolerance.

� The gap left must be triangulatable.

Connectivity Detail The detail necessary toreconstruct the topology needs to include thecon�guration of the removed removed and themodi�cation of the triangulation induced by thedecimation.

The contour itself is simply characterized bythe number of its vertices plus one bit set to 1if it is an open contour or 0 if it is closed. Forexample, in Figure 12 an open contour of eightvertices is being decimated with the detail (0,8).

For retriangulation, the two strips sharing theremoved contour are replaced by a single stripusing [2]. This new strip is con�ned to have achord, called constraining chord, that is corre-sponding to every pair of triangles having a com-mon edge on the removed contour. The middlepicture of Figure 12 shows this correspondencein dotted lines. Figure 12 also displays the �nalretriangulation. To reconstruct a �ne triangula-tion from the coarse strip it is suÆcient to knowwhich edges are constraining chords. We expressthe details as an ordered sequence of small in-tegers. Each integer stands for the number of

triangles in the coarse strip that lie between twoconsecutive constraining chords. The startingedge of a coarse strip is always a constrainingchord.

In the reconstruction procedure, the bitstream of the details, are used to locate all theconstraining chords. Every chord is then turnedinto a pair of triangles. By connecting the se-quence of edges shared by the pairs of triangles,a new contour (the removed one in the simpli�-cation procedure) is formed. Any vertex in thetwo contours of the coarse strip that is not chord-connected to the new contour is connected to thesame vertex as its predecessor.

Simpli�cation Order The order of the sim-pli�cation procedure goes as follows. For a singlecomponent, it goes from the �rst vertex-layer tothe last one; for each vertex-layer, it goes fromthe �rst contour to the last one. This procedureneeds to be executed multiple times if there aremultiple runs. The reconstruction process fol-lows the exact reverse order of the encoding.

4 Topology Non-preserving

Simpli�cation

Since the intra-layer and inter-layer simpli�ca-tions are constrained to be topology preserv-ing, there is a limit on the level of simpli�cationthat can be achieved. To guarantee the progressof mesh simpli�cation process it is sometimesnecessary to change the topology of the inputmesh [28, 10]. We introduce a topology non-preserving generalization of our scheme basedon the triangle contraction primitive introducedin [11].In our scheme (Figure 7), the input mesh to

the topology non-preserving simpli�cation is thecoarsest mesh generated by the layering basedsimpli�cation of section 3 after several topologyiterations of intra-Layer and inter-Layer opera-tions.

Generalized Triangle Contraction When atriangle t is contracted, all its vertices are mergedinto a single point p. The index used for p after

9

Page 10: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

! !jj#

(0,8,2-3-2-1-4-0)

Figure 12: Inter-layer simpli�cation. (left) Fine level being decimated. (center) Constraining chordsdrawn on the corresponding triangle pairs. (right) Coarse level and connectivity detail.

the contraction is the the smallest among theindices of the vertices of t.

As shown in [11] p is chosen to be the best localshape �t to achieve its high visual quality. Thedownside of this approach is high storage costthat arises from storing both p and the three ver-tices of t. For lower storage overhead we choosep to be a �xed linear combination of the verticesof t so that we only store as detail p and twovertices of t. The third vertex of t is recoveredby inverting the linear constraint between p andt. In our implementation we choose p to be thebarycenter of t.

Every triangle incident to t is classi�ed intothree categories:

� type I: one vertex in common with t

� type II: two vertices in common with t

� type III: three vertices in common with t

In most cases, there are no triangle of type III.But if there are such triangles, the details canstill be eÆciently coded: First, a small numberis used to indicate the number of all type IIItriangles; Then for each such triangle, a bit isused to specify its orientation with respect tothe contracted triangle.

Figure 13 shows the procedure of one trian-gle contraction and the corresponding triangleclassi�cation. The contracted triangle t is black-colored. After the contraction, the non-manifoldedge of the original mesh is removed and thetopology is changed.

Connectivity Detail Before starting the tri-angle contraction procedure we encode the topo-

IIII

II

II

II

I

II

I

I

Figure 13: Topology non-preserving simpli�ca-tion by triangle contraction.

logical layering structure of the mesh which im-plicitly induces the vertex numbering to be usedlater. The index order of the vertices is key in-formation that the decoder requires to correctlyreconstruct subsequent layers.For each decimation operation, one bit is spent

to indicate if t is actually a triangle of the meshor a triangular hole. Type I triangles remain af-ter each contraction operation, but the indices oftheir coincident vertices may change. The detailof the triangle contraction needs to record thischange. Let the vertex indices of t be v0; v1 andv2, with the indices v0 < v1; v0 < v2. One bit isused to report if the index of the common vertexwith type I triangle is v0 or not. If this is the caseno more information is needed. Otherwise, an-other bit is used to report if the common vertexis either v1 or v2. Type I triangles are sorted bythe two index values of the non-common verticesand then, in this order, their details are stored.Type II triangles degenerate into edges. The

index of the vertex that is not common with tmust be reported in detail. Moreover three bitsare used to distinguish which edge they sharewith t. Isolated vertices may appear after a tri-angle contraction because of the degeneration oftype II triangles. We record the indices and ge-

10

Page 11: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

ometry (possibly, with other attributes) of suchisolated vertices when they occur.

Decimation Priority Two parameters areused to prioritize the order of the triangle con-tractions. The �rst parameter is the area A(t)of the contracted triangle t. Small size trianglesare considered �rst since they a�ect the overallmesh shape the least. The second parameter is ameasure used to avoid producing sliver triangles.We de�ne the sliver factor S(t) of a triangle t tobe the ratio between the perimeter P (t) of t andthe maximum perimeter of its adjacent triangles:

S(t) = maxs2Adj(t)

P (s)=P (t)

where Adj(t) is the set of triangles adjacent to t.The topology non-preserving simpli�cation pro-cedure creates a priority queue with all the tri-angles of the mesh. The priority key associatedwith each triangle t is the product of its areaby the sliver factor A(t)S(t). The triangle withsmallest key is selected for contraction. Afterthe contraction, the removed triangle and its de-generate neighbors are removed from the queue.Other a�ected triangles have their key values up-dated and the priority queue is adjusted corre-spondingly. Unless a stopping criterion is set theprocedure makes progress until the mesh becomeempty.

Figures 5 and 6 exhibit the reconstruction ofsimple \eight" and \foot" models. All the threesimpli�cation operations are used. As can beseen, the displayed coarsest mesh only consistsof one triangle. It is obvious that triangle con-traction changes topology.

5 Geometry Encoding

Geometry data may a�ect progressive transmis-sion dramatically because it usually takes morespace to encode. The main problem is its needto eÆciently represent in the bit stream the po-sitions of removed vertices. Linear prediction isoften used to predict the position of a vertexfrom encoded positions of its adjacent vertices.

In the following, we will describe how second or-der predictive and entropy coding is used in ourmultiresolution representation.

Intra-layer Decomposition The geometrydetail of a decimated vertex is the di�erence be-tween its predicted position and its actual po-sition of a vertex. A simple predictive codingwould take the center of the segment that thevertex splits. An alternative and potentiallymore accurate way is to build a quadratic B�eziercurve that interpolates the coarse contour andto take the midpoints of the curvilinear sides in-stead of the straight lines of the original contour.Prediction in this way produces correction vec-tors with less variation and are thus more suit-able for entropy coding.

Intra-layer Decomposition For a contourremoved in the inter-layer decomposition proce-dure, vertex positions are encoded in the sameway as the single-resolution geometry coding.Linear [5], high-order [31], and parallelogrampredictors [20] can also be used. We use asecond-order predictor to encode the geometry(similarly for attached properties). The basicidea is as follows. First, linear prediction isused to get a set of correction vectors whichare parameterized and quantized using spheri-cal coordinates (r; �; �). With the observationthat the code di�erence of two successive cor-rection vectors has small variation, the second-order prediction is then performed in the codespace. The geometric error is bounded by themaximum quantization distortion. The codingscheme is also designed so that error propaga-tion is prevented[1, 33]. In our implementation,classical entropy codings such as Hu�man cod-ing [16] and Arithmetric coding [23] are used tofurther improve space eÆciency.

Figure 5 gives an example of layering basedsimpli�cations where inter-layer and intra-layeroperations are alternatively performed.

Topology Non-preserving Decomposition

For each decimation operation, the three verticesof the contracted triangle are merged into a sin-

11

Page 12: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

150 faces, 931 bytes 1,228 faces, 7,368 bytes 5,856 faces, 16,689 bytes 10,009 faces, 24,021 bytes

Figure 14: Topological contouring simpli�cation. Alternative inter-layer and intra-layer simpli�ca-tions are used.

gle point. The remaining vertex of the triangletakes the center of the triangle as its geometryposition. The positions of all removed verticesduring this operation are encoded by predictionson this central position. In the reconstructingprocess, the remaining vertex, which is recoveredat earlier stage, is pushed back to its true posi-tion when the other two vertices are recovered.

6 Performance Analysis and

Results

Storage Analysis of Connectivity Details

The vertex ordering is crucial for eÆcient stor-age of the details. Hoppe's progressive mesh(PM) needs log(n) bits to specify the vertex fromwhich a new vertex is split. Thus the overall con-nectivity cost of PM is (nlog(n)+5). Our schemesqueezes o� the O(log(n)) factor by taking ad-vantage of the locality property of the layeringstructure. The space eÆcient representation isgained through the local indexing technique.

Intra-layer Decomposition With the con-straints on the selection of vertices, at most onehalf of vertices in a contour can be removed ina intra-layer decomposition run. Practice showsthat nearly one-half of vertices in a contour canbe removed in each decomposition run. On av-erage, 4:5�m bits are used to expressed details if�m (0 � � � 0:5) vertices are removed with m

being the number of vertices before decomposi-tion.

Inter-layer Decomposition Suppose thatthree involved contours have n0; n1 and n2 ver-tices, respectively. Then the two strips totallycontain about n0 + 2n1 + n2 triangles. Assumethat number is n0+2n1+n2. The cost of codingthe bit march string for the coarse level strip isabout n0 + n2 bits since there exists that num-ber of triangles in the coarse level strip. Fromthe way the details are expressed, their codingbits are equal to the summation of the trianglenumber of the coarse level strip and the cost ofcoding the n1 separators. That is, the detail cod-ing needs n0 + n1 + n2 bits.

Topology Non-preserving Decomposition

According to the analysis above, the coding costin bits is linearly proportional to the numberof removed vertices with a small linear factor.No vertex indices are needed to be encodedand thus no log(n) factor. For topology non-preserving decomposition, the logarithmic factorcomes back but with a much smaller n becausetopology non-preserving decomposition are usu-ally performed on a much coarser mesh obtainedafter several steps of the topological layering sim-pli�cation.

Geomorph. For intra-layer simpli�cation, thetransition from one level to the next can be per-

12

Page 13: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

formed by continuous deformation using two ver-tex splits followed by one edge contraction. Fig-ure 15 shows the reconstruction process wherethe vertices vL and vR are temporarily splitinto (vL; vL�) and (vR�; vR). Then the edge(vL�; vR�) contracts into the vertex v. For inter-

(3,4)

vRvL

vL

vL� vR

vR

vL� vR

� v � vL�� vR

vL vRvL vR

Figure 15: Geomorph for the reconstructionfrom an Intra-Layer detail.

layer simpli�cation, the transformation from onelevel to the next can be performed by continuousdeformation. For example, the geomorph from acoarse level to a �ner one is performed by in-serting a vertex at the midpoint of each chordedge in the coarse. The midpoints are connectedby a sequence of dummy edges which split thestrip triangles into coplanar triangles so that thesurface geometry is not altered yet. Then, whilethe midpoint of the constraining chords are splitto reconstruct the contour c the dummy edgesare contracted. This continuously deforms thecoarse strip into the two of the �ner level.

Mapping For each intra-layer decompositionwe construct an isomorphism between adjacentlevels in the multiresolution hierarchy. In partic-ular both the �ne and coarse triangulation aremapped to the same rectangular region R as inFigure 16 using piecewise aÆne mapping fromeach triangle to its image on R. Two points atthe two levels of resolution are in correspondenceif they map to the same point in R.

Note that if v1 is coincident with v2 then thetop part of R becomes a triangle. The same holdsfor the bottom part.

v2

v2

vL vR

v1 v3

vL

v1 v3

vRvL vR

v2

v3v1

R

Figure 16: Mapping between adjacent levels ofresolution for Intra-Layer Simpli�cation.

Similarly for the case of intra layer simpli�ca-tion, we can map both the �ne and the coarsetriangulation to a common rectangle R. Thetwo triangulations of R corresponding to �ne andcoarse levels induce a bijective mapping betweenpoints at di�erent levels of resolution.

For topological non-preserving operation, themapping between adjacent levels of resolution isimplemented in a way similar to [19] by over-lapping the local retriangulations generated bythe triangle decimation primitive. This can beaccomplished directly when the topology is notchanged. Hence we stop building the multi-level map as soon as the topology non-preservingmode is selected.

Results For geometry encoding, 12 bits areused to code each coordinate of correction vec-tors of vertices decimated in the topology non-preserving phase, while 10 bits for correction vec-tors of vertices decimated in the topology pre-serving phase. The two coding-bit numbers can exibly be adjusted, dependent on the �delity re-quirements of the application. Generally, morebits should be used for coding vertices that ap-pear in coarser levels (thus recovered earlier) be-cause better prediction can be achieved in thisway.

Table 1 gives the average number of bits torecover each triangle at several levels of de-tails. Figure 17 shows the statistics of progres-sive transmission performance. A curve is plot-ted for each decomposition phase which showsthe number of bytes received as a function of thenumber of triangles reconstructed. Clearly, topo-logical layering based decomposition provides amore compact representation than topology non-preserving decomposition.

Figure 4 and 6 exhibit four levels of progressivecompression for several triangular surface mod-els. In Figure 6 the rightmost picture in eachrow shows the decoded object with perfect con-nectivity, and the leftmost one is at quite coarselevel with less than 10% of the original numberof triangles, while still being recognizable.

13

Page 14: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

Duck

T 150 414 1,228 2,341 4,012 5,856 10,009

�C/�T 18 14 4.6 4.4 4.2 4.2 4.1

�(G+ C)/�T 44.1 37.8 33.6 25.4 21.3 22.7 19.3

C/T 19.4 18.1 15.7 11.3 8.5 6.4 5.2

(G+C)/T 42.2 37.4 36.2 30.5 24.6 23.1 21.7

Bunny

T 1,000 9,315 17,869 18,955 34,885 36,557 69,473

�C/�T 18 3.7 4.5 4.2 4.6 4.5 4.5

�(G+ C)/�T 38 24.7 18.0 25.2 18.1 24.5 18.0

C/T 21.3 7.9 6.3 6.2 5.4 5.3 5.0

(G+C)/T 48.7 23.0 20.6 20.9 19.6 19.8 19.0

Crocodile

T 300 8,589 12,105 12,701 16,784 23,272 34,404

�C/�T 12 9.5 5.3 7.9 5.6 6.3 4.9

�(G+ C)/�T 37.3 20.1 18.7 28.2 19.0 26.4 18.4

C/T 20.0 18.6 14.7 14.4 12.3 10.6 8.7

(G+C)/T 48.4 35.5 30.7 30.5 27.7 27.4 24.4

Phone

T 1020 3,919 5,469 12,272 48,591 84,495 165,963

�C/�T 18 4.3 4.3 4.4 4.3 4.1 4.0

�(G+ C)/�T 41.1 22.2 21.8 20.9 21.3 19.7 19.1

C/T 17.3 10.2 7.8 7.3 6.0 5.1 4.5

(G+C)/T 42.2 27.6 23.2 22.6 22.4 21.8 20.2

Horse

T 870 3,122 5,496 5,922 9,754 13,188 22,258

�C/�T 18 4.2 4.7 4.9 4.8 3.8 4.7

�(G+ C)/�T 42 25.2 18.3 25.9 18.3 24.8 18.2

C/T 18.3 11.6 8.6 8.3 6.9 6.1 5.5

(G+C)/T 42.7 28.5 24.1 24.2 21.9 22.6 20.8

Table 1: Coding statistics of multiresolution representation. T: number of triangles; C/T: connec-tivity cost in bits that is needed to recover each triangle; (G+C)/T: total cost in bits to recovereach triangle. G: geometry encoding cost; C: connecting encoding cost.

14

Page 15: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

0 500 1000 1500 2000 25000

2000

4000

6000

8000

10000

12000

14000

Number of Triangles

Nu

mb

er

of

Byte

s

0 1 2 3 4 5 6 7

x 104

0

0.5

1

1.5

2

2.5x 10

5

Number of Triangle

Nu

mb

er

of

Byte

s

(a) (b)

Figure 17: Reconstruction of progressively transmitted model. (a) Bunny (topology non-preservingreconstruction): average 6.50 bytes per triangle; (b) Bunny (layering based reconstruction): average3.20 bytes per triangle

7 Conclusion

We have presented a scheme for progressive en-coding and transmission of triangular surfaces.A successive quantization scheme [1, 33] is usedto support progressive bit transmission. We alsopresent a technique to construct multiresolutionsurfaces consisting of a coarse mesh with addi-tional levels of detail. The combination of intra-layer and inter-layer decomposition provides acompact encoding of both the coarse mesh andthese details. Topology non-preserving decom-position increases the resolution degree withoutmuch sacri�ce of space eÆciency. The schemealso has the exibility for topology preservingsimpli�cation as well as is capable of geomorphsand the successive mapping property. The abil-ity of handling non-manifold meshes coupledto the object symmetries that can be capturedin the layered decomposition are also currentlybeen evaluated for a mirroring and stitching coreexperiment in MPEG 4 [25].

References

[1] Chandrajit Bajaj, Valerio Pascucci, andGuozhong Zhuang. Single resolution com-pression of arbitrary triangular meshes withproperties. In Data Compression Confer-

ence, pages 247{256. IEEE, 1999.

[2] Chandrajit L. Bajaj, E. J. Coyle, andK. Lin. Arbitrary topology shape re-construction from planar cross sections.Graphical Models and Image Procession,58(6):524{543, 1996.

[3] E. Catmull and J. Clark. Recursively gen-erated B-spline surfaces on arbitrary topo-logical meshes. Computer Aided Design,10:350{355, 1978.

[4] Jonathan Cohen, Amitabh Varshney, Di-nesh Manocha, Greg Turk, Hans Weber,Pankaj Agarwal, Frederick P. Brooks, Jr.,and William Wright. Simpli�cation en-velopes. In Holly Rushmeier, editor, SIG-GRAPH 96 Conference Proceedings, An-nual Conference Series, pages 119{128.ACM SIGGRAPH, AddisonWesley, August1996.

[5] M. Deering. Geometric compression. Com-

puter Graphics (SIGGRAPH '95 Proceed-

ings), pages 13{20, 1995.

[6] D. Doo and M. Sabin. Behavior of recur-sive subdivision surfaces near extraordinarypoints. Computer Aided Design, 10:356{360, 1978.

[7] Mattias Eck, Tony DeRose, Tom Duchamp,Hugues Hoppe, and Michael Louns-bery. Multiresolution analysis of arbitrary

15

Page 16: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

4,293 4, 6:1% 18,955 4, 27:2% 36,553 4, 52:6% 69,473 4, 100%16,384 bytes 49,539 bytes 90,737 bytes 165,060 bytes

1,260 4, 3:6% 12,701 4, 36:9% 23,272 4, 67:6% 34,404 4, 100%7,417 bytes 48,563 bytes 79,759 bytes 106,294 bytes

3,919 4, 2:3% 48,591s 4, 29:2% 84,495 4, 50:9% 165,963 4, 100%17,589 bytes 126,133 bytes 232,476 bytes 415,998 bytes

1,516 4, 6:8% 5,150 4, 23:1% 13,188 4, 59:2% 22,258 4, 100%6,485 bytes 16,566 bytes 37,400 bytes 58,080 bytes

Figure 18: Compact multiresolution representation. The �rst numerical number at the bottom ofeach picture gives the number of triangles, the second gives the encoded byte size and the third isthe percentage of object size with respect to the original one.

16

Page 17: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

meshes. Computer Graphics (SIGGRAPH'95 Proceedings), pages 173{182, 1995.

[8] L. D. Floriani and E. Puppo. Hierarchicaltriangulation for multiresolution surface de-scription. ACM Transactions on Graphics,14(4):363{411, 1995.

[9] Leila De Floriani, Paola Magillo, and EnricoPuppo. EÆcient implementation of multi-triangulations. In Proceedings IEEE Visu-

alization'98, pages 43{50. IEEE, 1998.

[10] M. Garland and P. Heckbert. Surface sim-pli�cation using quadratic error metrics.Computer Graphics (SIGGRAPH '97 Pro-

ceedings), pages 209{216, 1997.

[11] Tran S. Gieng, Bernd Hamann, Kenneth I.Joy, Gregory L. Schussman, and Issac J.Trotts. Constructing hierarchies for trianglemeshes. IEEE Transactions on Visualiza-

tion and Computer Graphics, 4(2):145{161,April 1998.

[12] Andre Gueziec, Gabriel Taubin, FrancisLazarus, and William Horn. Cutting andstitching: EÆcient conversion of a non-manifold polygonal surface to a manifold.Technical Report RC-20935, IBM T.J. Wat-son Research Center, P.O.Box 704, York-town Heights, NY 10598, 1997.

[13] S Gumhold and W. Strasser. Real timecompression of triangle mesh connectivity.Computer Graphics (SIGGRAPH '98 Pro-

ceedings), pages 133{140, 1998.

[14] Hugues Hoppe. Progressive meshes. Com-

puter Graphics (SIGGRAPH '96 Proceed-

ings), pages 99{108, 1996.

[15] Hugues Hoppe. View-dependent re�nementof progressive meshes. Computer Graphics

(SIGGRAPH '97 Proceedings), pages 189{198, 1997.

[16] David Hu�man. A method for the con-struction of minimum-redundancy codes.Proceedings of the IRE, 40(10):1098{1101,1952.

[17] L. Kobbelt, S Campagna, J. Vorsatz, andH. Seidel. Interactive multi-resolution mod-eling on arbitrary meshes. Computer Graph-

ics (SIGGRAPH '98 Proceedings), pages105{114, 1998.

[18] F.-L. Krause, C. Stiel, and J. Luddemann.Processing of CAD-Data: Conversion, veri-�cation and repair. In Christoph Ho�mannand Wim Bronsvort, editors, Proceedings

of the 4th Symposium on Solid Modeling

and Applications, pages 248{254, New York,May14{16 1997. ACM Press.

[19] A. Lee, W. Sweldens, P. Schroder,L. Cowsar, and D. Dobkin. Maps: Multires-olution adaptive parameterization of sur-faces. Computer Graphics (SIGGRAPH '98

Proceedings), pages 95{104, 1998.

[20] Jiankun Li, Jin Li, and C.-C. Jay Kuo. Pro-gressive compression of 3D graphic models.In IEEE Proceedings of Multimedia Com-

puting and Systems, Ottawa, Canada, 1997.

[21] C. Loop. Smooth subdivision surfaces basedon triangles. Technical report, Master's the-sis, Department of Mathematics, Universityof Utah, August, 1987, 1987.

[22] John Milnor. Morse Theory, volume 51 ofAnnals of Mathematics Studies. PrincetonUniversity Press, Princetom, 1963.

[23] A. Mo�at, R. Neal, and I. Witten. Arith-metic coding revisited. In IEEE Data Com-pression Conference, Snowbird, Utah, 1995.

[24] MPEG4/SNHC. Description of core ex-periments on 3d model coding. Tech-nical report, ISO/IEC JTC1/SC29/WG11MPEG98/M3373, October, 1998.

[25] MPEG4/SNHC. Support for non-manifoldmeshes and symmetries. Technical report,ISO/IEC JTC1/SC29/WG11MPEG98/M4061, October, 1998.

[26] Jorg. Peters and U. Reif. The simplest sub-division scheme for smoothing polyhedra.ACM Transactions on Graphics, 16(4):420{431, 1997.

17

Page 18: Progressiv - Pascuccipascucci.org/pdf-papers/vis99.pdf · V=16,400, F=32,768 V=4,112, F=8,192 V=1,040, F=2,048 Figure 1: Multiresolution represen tation of a non manifold mesh mo

[27] J. Popovic and Hugues Hoppe. Progressivesimplicial complexes. Computer Graphics

(SIGGRAPH '97 Proceedings), pages 217{224, 1997.

[28] William J. Schroeder. A topology modifyingprogressive decimation algorithm. In RoniYagel and Hans Hagen, editors, IEEE Visu-

alization �97, pages 205{212. IEEE, Novem-ber 1997.

[29] A. She�er, T. Blacker, and M. Bercovier.Cad data repair based on virtual topology.In Proc. 24th Design Automation Confer-

ence, ASME Design Engineering TechnicalConferences and Computers in EngineeringConference, pages 13{16, September 1998.

[30] Gabriel Taubin, Andre Geuziec, WilliamHorn, and Fancis Lazarus. Progressive for-est split compression. Computer Graphics

(SIGGRAPH '98 Proceedings), pages 123{132, 1998.

[31] Gabriel Taubin and Jarek Rossignac. Ge-ometric compression through topologicalsurgery. ACM Transactions on Graphics,17(2):84{115, 1996.

[32] Costa Touma and Craig Gotsman. Trianglemesh compression. In Wayne Davis, KelloggBooth, and Alain Fourier, editors, Proceed-ings of the 24th Conference on Graphics In-

terface (GI-98), pages 26{34, San Francisco,June18{20 1998. Morgan Kaufmann Pub-lishers.

[33] Guozhong Zhuang.Compression and Progressive Transmission

of Three-Dimensional Models. PhD thesis,Department of Computer Sciences, PurdueUniversity, 1998.

[34] D. Zorin, P. Schroder, and W. Sweldens.Interactive multiresolution mesh editing.Computer Graphics (SIGGRAPH '97 Pro-

ceedings), pages 259{268, 1997.

18