Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios...

21

Transcript of Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios...

Page 1: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces
Page 2: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

Table of Contents

Part I Surface Reconstruction and Interpolation

Reconstruction from Unorganized Point Sets Using GammaShapesMarietta E. Cameron, Kenneth R. Sloan, Ying Sun . . . . . . . . . . . . . . . . . 3

Isometric Embedding for a Discrete MetricIngrid Hotz, Hans Hagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Mesh-Independent Surface InterpolationDavid Levin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

Empirical Analysis of Surface Interpolation by SpatialEnvironment GraphsRobert Mencl, Heinrich Muller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

Part II Surface Interrogation and Modeling

Smooth Polylines on Polygon MeshesGeorges-Pierre Bonneau, Stefanie Hahmann . . . . . . . . . . . . . . . . . . . . . . . . 69

Progressive Precision Surface DesignMark A. Duchaineau, Kenneth I. Joy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

Access to Surface Properties up to Order Two forVisualization AlgorithmsHelwig Hauser, Thomas Theußl, Eduard Groller . . . . . . . . . . . . . . . . . . . . 107

Modeling Rough SurfacesYootai Kim, Raghu Machiraju, David Thompson . . . . . . . . . . . . . . . . . . . . 123

A Feature Based Method for Rigid Registration ofAnatomical SurfacesGeorgios Stylianou . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

Page 3: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

VIII Table of Contents

Part III Wavelets and Compression on Surfaces

Lifting Biorthogonal B-spline WaveletsMartin Bertram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153

Tree-based Data Structures for Triangle Mesh ConnectivityEncodingIoannis Ivrissimtzis, Christian Rossl, Hans-Peter Seidel . . . . . . . . . . . . . . 171

Compression of Normal MeshesAndrei Khodakovsky, Igor Guskov . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189

New Results in Signal Processing and Compression ofPolygon MeshesGabriel Taubin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207

Part IV Topology, Distance Fields, and Solid Modeling

Adaptively Represented Complete Distance Fields ofPolygonal ModelsJian Huang, Roger Crawfis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225

Fully Dynamic Constrained Delaunay TriangulationsMarcelo Kallmann, Hanspeter Bieri, Daniel Thalmann . . . . . . . . . . . . . . . 241

EVM: A Complete Solid Model for Surface RenderingJorge Rodrıguez, Dolors Ayala, Antonio Aguilera . . . . . . . . . . . . . . . . . . . . 259

Topology Simplification of Symmetric, Second-Order 2DTensor FieldsXavier Tricoche, Gerik Scheuermann . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275

Automating Transfer Function Design Based on TopologyAnalysisGunther H. Weber, Gerik Scheuermann . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293

Part V Multiresolution Data Representation

Simplicial-based Multiresolution Volume DatasetsManagement: An OverviewRita Borgo, Paolo Cignoni, Roberto Scopigno . . . . . . . . . . . . . . . . . . . . . . . 309

Selective Refinement on Nested Tetrahedral MeshesLeila De Floriani, Michael Lee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329

Page 4: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

Table of Contents IX

Divisive Parallel Clustering for Multiresolution AnalysisBjoern Heckel, Bernd Hamann . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345

Hierarchical Large-scale Volume Representation with 3√

2Subdivision and Trivariate B-spline WaveletsLars Linsen, Jevan T. Gray, Valerio Pascucci, Mark A. Duchaineau,Bernd Hamann, Kenneth I. Joy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359

Multiresolution Surface and Volume RepresentationsOliver G. Staadt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379

Part VI Biomedical and Physical Applications

Geometric Methods for Vessel Visualization andQuantification - A SurveyKatja Buhler, Petr Felkel, Alexandra La Cruz . . . . . . . . . . . . . . . . . . . . . . . 399

An Application for Dealing with Missing Data in MedicalImages, with Application to Left Ventricle SPECT DataOscar Civit Flores, Isabel Navazo, Alvar Vinacua . . . . . . . . . . . . . . . . . . . 421

Constraint-Based Astronometric Modeling ToolsAndrew J. Hanson, Chi-Wing Fu, Priscilla C. Frisch . . . . . . . . . . . . . . . . 437

Geometric Modelling for Virtual Colon UnfoldingAnna Vilanova, Eduard Groller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453

Appendix: Color Plates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469

Page 5: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

http://www.springer.com/978-3-540-40116-2

Page 6: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

New Results in Signal Processingand Compression of Polygon Meshes

Gabriel Taubin

IBM T.J. Watson Research Center, P.O. Box 704, Yorktown Heights, NY [email protected]

Polygon models, which are used in most graphics applications, require consid-erable amounts of storage, even when they only approximate precise shapeswith limited accuracy. To support internet access to 3D models of com-plex virtual environments or assemblies for electronic shopping, collaborativeCAD, multi-player video games, and scientific visualization, representationsof 3D shapes must be compressed by several orders of magnitude. Further-more, several closely related methods have been proposed in recent years tosmooth, de-noise, edit, compress, transmit, and animate very large polygonmeshes, based on topological and combinatorial methods, signal processingtechniques, constrained energy minimization, and the solution of diffusiondifferential equations. This paper is an overview of some of our recent resultsin this area: Dual Mesh Resampling, Linear Anisotropic Mesh Filtering, Bi-Level Isosurface Compression, Space-Optimized Texture Maps, and VolumeWarping for Adaptive Isosurface Extraction.

1 Introduction

A polygonal mesh is defined by the association between the faces and theirsustaining vertices (connectivity), by the vertex positions (geometry), and byoptional colors, normals and texture coordinates (properties). These proper-ties can be bound to the vertices, faces, or corners of the mesh. In general welook at vertex positions and the optional properties as signals defined on themesh connectivity. In this paper we concentrate on signals defined on meshvertices to simplify the exposition.

Polygon Mesh Resampling and Smoothing. The problem of smoothing or de-noising large irregular polygon meshes of arbitrary topology has motivatedmost of the recent work in geometric signal processing [44, 49, 42]. For exam-ple, mesh smoothing algorithms are used to remove measurement noise fromrange data in [43], to remove systematic noise from isosurfaces in [47], and asa global geometry predictor to compress multiresolution triangle meshes in[48]. From a signal processing point of view, a polygon mesh can be regardedas the result of sampling a smooth surface, where the mesh connectivityplays the role of an irregular sampling space, and the vertex positions arethe values produced by the sampling process. In this framework sometimes

Page 7: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

2 Gabriel Taubin

it is necessary to change the sampling rate, i.e., to transfer a signal from onemesh connectivity to another mesh connectivity with the same topology. Inthe classical problem of uniform sampling rate conversion in signal processing[8, 54], under conditions determined by Shanon’s sampling theorem, when thesampling rate is reduced (fewer faces than vertices in the primal mesh) thefrequency content of the signal determines whether loss of information (dueto aliasing) occurs or not, and when the sampling rate is increased (more facesthan vertices in the primal mesh), no loss of information occurs because theresampled signal is of low frequency. Similarly, in the case of irregular meshesa resampling process should work directly in the digital domain without re-constructing the analog signal, should minimize the loss of information, andthe resampled signal should be a linear function of the original signal. In sec-tion 3 we discuss the problem of resampling with respect to the connectivityof the dual mesh, addressed by the algorithm introduced in [45].

Mesh smoothing operators are also used as design tools in interactive geo-metric modelling systems in conjunction with other operators that modify theconnectivity, the topology and/or the geometry of the mesh. Amongst theseother operators, connectivity refinement schemes based on recursive subdivi-sion have become popular to design multi-resolution geometric models [60].In this context it is important to be able to apply smoothing operators lo-cally, adaptively, and also with more general constraints. In addition to beingable to specify the position of certain vertices, it is also desirable to be ableto set the values of some normal vectors, particularly along curves definedby mesh edges. With normal vector constraints surface patches can be joinedwith tangent plane continuity, and the sharpness of ridge curves embedded inthe surfaces can be controlled. In the now classical Laplacian smoothing algo-rithm and its derivatives, imposing interpolatory vertex position constraintsis easy, but imposing interpolatory normal constraints is not. A new smooth-ing algorithm is introduced in [46] where both vertex position and face normalinterpolatory constraints are easy to apply. We discuss this algorithm, whichalso solves the problem of denoising without tangential drift, in section 4.

Polygon Mesh Compression. A number of general purpose polygon meshcompression algorithms have been introduced in recent years. Deering [9]developed a mesh compression scheme for hardware acceleration. Taubinand Rossignac [50], Touma and Gotsman [53], Rossignac [39], Gumhold andStrasser [14], and others, introduced methods to encode the connectivity oftriangle meshes with no loss of information. King et. al. [23] developed amethod to compress quadrilateral meshes. Isenburg and Snoeyink [18], Kon-rod and Gotsman [26], and Khodakovsky et.al. [22] invented methods toencode the connectivity of polygon meshes. These algorithms focus on com-pressing the connectivity information very efficiently, and are all based ona traversal of the primal or dual graph of the mesh. Some of them com-press connectivity of very regular meshes to a small fraction of a bit pervertex, and all to 2-4 bits per vertex in the worst case. When the geometry

Page 8: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

Mesh Processing and Compression 3

information (vertex coordinates, and optionally normals, colors, and texturecoordinates) is also taken into account, the cost per vertex increases consid-erably. For example, adding only vertex coordinates quantized to 10 bits pervertex lifts the cost to typically 8-16 bits per vertex. Based on these consid-erations, it makes sense to consider special purpose algorithms to compresscertain families of polygon meshes, such as isosurface meshes, particularlybecause all these approaches are incompatible with the out-of-core natureof isosurface extraction algorithms that traverse the voxels in scan order. Insection 5 we describe the isosurface compression algorithm introduced in [47].Other meshes not well compressed with general purpose mesh compressionalgorithms are textured meshes, where the compression of the textured im-ages is not addressed. In section 6 we discuss a new algorithm to compresstextured meshes introduced in [2]. Adaptive mesh simplification algorithmscan be regarded as lossy connectivity compression techniques. In section 7 wedescribe the method to generate adaptive isosurfaces introduced in [1], andbased on the same relaxation algorithm as the texture optimization algorithmintroduced in [2].

2 Signal Processing on Meshes

Linear time and space algorithms are desirable to operate on large data sets,particularly for applications such as surface design and mesh editing, whereinteractive rates are a primary concern. The simplest smoothing algorithmthat satisfies the linear complexity requirement is Laplacian smoothing, awell established iterative algorithm introduced in the mesh generation liter-ature to improve the quality of meshes used for finite element computations[12, 15]. In this context boundary vertices of the mesh are constrained not tomove, but internal vertices are simultaneously moved in the direction of thebarycenter of their neighboring vertices. And then the process is iterated anumber of times. When Laplacian smoothing is applied to the noisy vertexpositions of a 3D polygon mesh without constraints, noise is removed, butsignificant shape distortion may be introduced. This problem is also calledshrinkage. When a large number of Laplacian smoothing steps are iterativelyperformed, the shape undergoes significant deformations, eventually converg-ing to the centroid of the original data. The λ|µ algorithm introduced in [43]solves the shrinkage problem with a simple alternating sign modification thatconverts the Laplacian smoothing algorithm into a low-pass filter, but not thetangential drift problem. In the same paper [43] Discrete Fourier Analysis isextended to signals defined on meshes as a tool to understand and predictthe behavior of these linear smoothing processes. This work was followed bya number of extensions, improvements, applications, and closely related al-gorithms, which addressed the following existing and/or open problems withmesh filters to some extent: enhancement and prevention of tangential drift,boundary and crease curve detection and enhancement, and introduction and

Page 9: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

4 Gabriel Taubin

(a)

���BD

(b)

BD(c)

BD2(d)

���RD

(e)

RD(f)

RD2(g)

Fig. 1. Barycenter dual mesh operator (BD) vs. resampling dual mesh operator(RD). (a): primal mesh; (b) dual mesh; (c) D2 applied to primal mesh has sameconnectivity but different geometry; (d) D4 applied to primal mesh displays evidentshrinkage; (e): resampling dual mesh; (f): primal geometry is recovered when RD2

is applied to primal mesh; (g): RD4 applied to primal mesh also recovers primalgeometry. In general, some signal loss may occur when RD2 is applied to the primalmesh, but the sequence RD2n converges fast.

intuitive control of position and normal constraints. We review some of thesecontributions here.

Taubin et al. [51] introduced efficient and robust algorithms to evalu-ate any finite impulse response (FIR) linear filter on mesh signals. Zorin etal. [61] showed an application to multi-resolution interactive shape design.Kuriyama and Tachibana [27] used an anisotropic diffusion mechanism to

Page 10: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

Mesh Processing and Compression 5

generate smooth interpolatory subdivision surfaces with vertex position andnormal constraints, and tension control. Hausler and Karbacher [16, 21] de-scribed a non-linear method for smoothing polygon meshes based on circulararc approximations. Kobbelt et al. [24, 25] introduced a multi-resolution ap-proach to denoising and shape design based on linear filters and constrainedminimization. Desbrun et al. [11] addressed the tangential drift problem ob-served in meshes with irregular edge length and angle distribution with a non-linear Laplacian operator and an infinite impulse response (IIR) filter withrational transfer function. And more recently, several authors [10, 36, 7, 34]have proposed closely related non-linear algorithms that extend to meshes theanisotropic diffusion approach to image segmentation introduced by Peronaand Malik [38].

The ability to impose constraints to the smoothing process, such as spec-ifying the position of some vertices, values of some normal vectors, the topol-ogy and geometry of ridge curves, or the behavior of the smoothing processalong the boundaries of the mesh, is needed in the context of free-form in-teractive shape design. In the Laplacian smoothing algorithm and its linearderivatives, imposing interpolatory vertex position constraints is easy, butimposing interpolatory normal constraints is not. Taubin [43] showed thatby modifying the neighborhood structure, i.e., the weights that control thediffusion process, certain kind of constraints can be imposed without anymodification of the algorithm, while other constraints require minor modifi-cations and the solution of small linear systems. Bierman et al. [5] showed howto construct subdivision surfaces with vertex normal constraints. Kobbelt etal. [24, 25] formulated the problem as an energy minimization problem, andsolved it efficiently with a multi-resolution approach on levels of detail hi-erarchies generated by decimation. Kuriyama [27] and Yamada et al. [57]introduced soft vertex normal constraints through a spring-based approach,but reported slow convergence.

Ohtake, Belyaev, and Bogaevski [35] proposed a non-linear modificationof Laplacian smoothing which increases the mesh regularity and reduces therisk of over-smoothing. Ohtake and Belyaev proposed a related algorithmto detect ridges and ravines in poltgon meshes [33, 4]. Along this path,Ohtake, Belyaev, and Bogaevski [36, 34] then introduced a non-linear crease-enhancing algorithm where a coupled diffusion process simultaneously pro-cesses face normals and vertex positions. Simplifying and speeding-up thisalgorithm were some of our motivations in the development of the algorithmintroduced in this paper. Another related algorithm by Ohtake, Horikawa,and Belyaev [37] can be used to smooth tangential vector fields.

3 Dual Mesh Resampling

The dual of a manifold polygonal mesh without boundary is commonly de-fined as another mesh with the same topology (genus) but different connectiv-

Page 11: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

6 Gabriel Taubin

ity (vertex-face incidence), in which faces and vertices occupy complementarylocations and the position of each dual vertex is computed as the center ofmass (barycenter or centroid) of the vertices that support the correspond-ing face. This process defines the barycenter dual mesh operator. Other dualoperators can be constructed based on new rules to compute the position ofthe dual vertices. Signal loss is measured by comparing the original signalwith the output of the square of a dual mesh operator, which are two sig-nals defined on the same mesh connectivity. The barycenter dual operatorproduces significant signal loss. In fact, the linear operator defined by thesquare of the barycenter dual mesh operator on the primal vertex positionsis a second order smoothing operator that displays the same kind of shrink-age behavior as Laplacian smoothing [43], always producing shrinkage whenapplied to non-constant vertex positions. A new resampling dual mesh op-erator is constructed in [45]. The square of this new operator reconstructsthe original signal for the largest possible linear subspace of vertex positions.The construction of the dual vertex positions is regarded as a resamplingprocess, where the primal vertex positions, which are signals defined on theprimal mesh connectivity, are linearly resampled (transferred) according tothe dual mesh connectivity. The problem is how to define resampling rulesas a function of the connectivity so that loss of information is minimized.

We consider vertex, edge, and face signals defined on the vertices, edges,and faces of a mesh. These signals define vector spaces. For example, primalvertex positions are three-dimensional vertex signals, and dual vertex posi-tions are three-dimensional face signals (vertex signals on the dual mesh).The role of the edge signals will become evident later. Since all the com-putations in this algorithm are linear and can be performed on each vertexcoordinate independently, it is sufficient to consider one-dimensional signals.We arrange these one-dimensional signals as column vectors XV , XE , andXF , of dimension V , E, and F , respectively. The element of XV correspond-ing to a vertex v is denoted xv, the element XE corresponding to an edge eis denoted xe, and the element of XF corresponding to a face f is denotedxf .

In [45] it is shown that the dual vertex positions of the Platonic solids[55] circumscribed by a common sphere can also be defined as the solutionof a least-squares problem with the quadratic energy function

φ(XV ,XF ) =∑

e∈E

‖xv1 + xv2 − xf1 − xf2‖2 (1)

linking primal and dual vertex positions, and that this energy function is welldefined for any manifold polygonal mesh without boundary. As a result theresampling dual operator is defined as the minimizer of this energy functionwith respect to XF , while XV is kept fixed, and the sum is taken over allthe edges of the mesh. It is not difficult to verify that the square of theresampling dual operator produces the same input signal as output, if andonly if the minimum value of the function φ(XV ,XF ) with respect to XF with

Page 12: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

Mesh Processing and Compression 7

A B C

Fig. 2. Application to smoothing without tangential drift. (A) Noisy mesh with ir-regular edge length distribution. (B) After 4 steps of unit-length isotropic Laplaciansmoothing of face normals with λ = 0.5, constrained boundary faces (blue), andfix vertices. (C) After 10 subsequent steps of face normal integrating anisotropicLaplacian smoothing on vertex positions with λ = 0.5, constrained boundary ver-tices (red), and fix face normals. Flat-shading used to enhance the faceting effect.Connectivity is kept constant.

fixed XV is zero, because in that is the case, for each edge e = {v1, v2, f1, f2}connecting two vertices and two faces, the segments joining the correspondingvertex positions and face positions intersect at their midpoints, i.e.,

12(xv1 + xv2) =

12(xf1 + xf2) .

Since a general signal does not satisfy this property, the conditions underwhich loss of information occurs and is prevented are established in the pa-per, and the asymptotic behavior of iterative dual mesh resampling is studied,in fact defining the space of low frequency signals, i.e. the largest linear sub-space of signals that can be resampled with no loss of information. In generalthe linear operator defined by the square of the resampling dual mesh op-erator is a smoothing operator that prevents shrinkage as in Taubin’s λ|µsmoothing algorithm [43]. Explicit expressions for the new resampling dualvertex positions as linear functions of the primal vertex positions are derivedin [45], as well as the formula for the resampling dual vertex positions as afunction of the primal and dual Laplacian operators. This formula for theresampling dual vertex positions with the Laplacian operator leads to anefficient algorithm to compute the resampling dual vertex positions. This al-gorithm, which can be implemented as a minor modification of the Laplaciansmoothing algorithm, converges very fast.

4 Linear Anisotropic Mesh Filtering

The mesh smoothing algorithm with positions and normal interpolatory con-straints introduced in [46] can be decomposed into four main steps. In the

Page 13: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

8 Gabriel Taubin

first step a vector field of face normals is computed from the initial vertexpositions and specified face normal constraints. In the second step the facenormal field is low-pass filtered independently of the vertex positions whilethe unit-length nature of the vectors and the face constraints are preserved.In the third step the matrix weights for a linear anisotropic Laplacian oper-ator are computed from the filtered face normals. Finally, in the fourth stepthe vertex positions are low-pass filtered with the linear anisotropic filter.Interpolatory face normal constraints are imposed as in the classical case bysetting the normals associated with the constrained faces to the specified val-ues. Similarly, the constrained vertices are set to the specified constrainedvalues in the second phase of the algorithm. Since the rest of the machineryis the same as in other linear filters, the hierarchical approach to boundariesand creases [43] can be applied in conjunction with the two new Laplacian op-erators as well here. This algorithm constitutes a simpler and unified solutionto the problems of smoothing mesh signals with position and normal inter-polatory constraints, and of denoising without tangential drift. It is based ontwo new Laplacian operators, and on the existing machinery of linear filters.

The first new Laplacian operator is for signals defined on graphs and val-ues on the unit sphere. These signals are called sphere signals, and the opera-tor spherical Laplacian. In this operator the displacements between neighbor-ing face normals are three-dimensional rotations, and the weighted averagingand scaling of these rotations is done in the domain of a local parameteri-zation of the group of three-dimensional rotations SO(3). This approach isstable, robust, and guaranteed to produce vector fields composed of unit-length vectors. Also, by carefully choosing the local parameterization of thegroup of rotations, the evaluation of this operator is almost as efficient asthe classical isotropic Laplacian operator. Detailed analysis for three popularparameterizations is provided: the exponential map, quaternions, and Cay-ley’s rational parameterization, which in fact define three different sphericalLaplacian operators. A low-pass filter based on the classical isotropic Lapla-cian operator can be used to smooth the unit length face normal vectorsdefined on the dual graph, but the resulting vector field is no longer com-posed of unit-length vectors. These vectors can be normalized if non zero,but there is no guarantee that all the values will be non-zero, particularly iflarge angles exist between normals associated to neighboring faces. The newspherical Laplacian operator solves these problems.

The second new Laplacian operator is anisotropic, and defined for signalswith values in Euclidean space. In fact this is a family of operators, whichincludes the classical isotropic Laplacian operator as a special case. Thesesignals are called Euclidean signals, and the operators Euclidean Laplacianoperators. In this new operators the weighting of displacements to neighbor-ing vertices is given by matrices. These matrices defined on the vertices ofthe mesh can be regarded as a discrete diffusion tensor field that reinforcescertain directions and attenuates others. The classical isotropic Laplacian op-

Page 14: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

Mesh Processing and Compression 9

A B C

Fig. 3. Bi-Level Isosurface Compression. Compressed Cuberille isosurfaces as ren-dered by the Java decoder. A: spine set, 91×512×512 voxels, level 1500, 381,278faces, 381,667 vertices, compressed to 0.6182 bits per face. B: UNC CThead dataset, 113×256×256 voxels , level 600, 294,524 faces, 294,018 vertices, compressed to0.7437 bits per face. C: UNC CThead data set, level 1160, 312,488 faces, 312,287vertices, compressed to 0.8081 bits per face.

erator with scalar weights is the special case where the matrix weights arediagonal matrices. To prevent tangential drift the weights are computed asfunctions of a field of face normals, in such a way that the tangential compo-nents of the displacement vectors are attenuated, and the normal componentsenhanced. The degree of anisotropy can be controlled even locally by usingweights computed as affine combinations of the weights obtained from theface normals, and the isotropic weights. The resulting Laplacian smoothingalgorithm with these matrix weights integrates the face normals in the leastsquares sense. Other anisotropic Laplacian operators can be constructed toproduce different effects.

In both filters the weights that control the diffusion of information into avertex from its neighbors are computed only once, and kept constant duringthe iterations. Filters where the weights are constant during the iterationsare called linear filters. Non-linear filters re-compute the weights betweeniterations as a function of the data.

5 Bi-Level Isosurface Compression

Isosurface extraction algorithms construct polygon mesh approximations tolevel sets of scalar functions specified at the vertices of a 3D regular grid.The most popular isosurface algorithms [20] are Cuberille [6] and MarchingCubes [28]. We refer to the polygon meshes produced by these and relatedalgorithms as isosurface meshes. Despite the widespread use of these meshesin scientific visualization and medical applications, and their very large size,special purpose algorithms to compress them for efficient storage and fastdownload have not been proposed until very recently [41, 30, 59, 32, 58]. A

Page 15: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

10 Gabriel Taubin

new, simple, and very efficient algorithm to compress isosurface data wasintroduced in [47]. This is the data extracted by isosurface algorithms fromscalar functions defined on volume grids, and used to generate polygon meshesor alternative surface representations. In this algorithm the mesh connectiv-ity and a substantial proportion of the geometric information are encoded toa fraction of a bit per Marching Cubes vertex with a context based arith-metic coder closely related to the JBIG binary image compression standard[19]. JBIG is short for Joint Bi-level Image experts Group, which is also thename of a standards committee. JBIG is one of the best available schemesfor lossless image compression based on context based arithmetic coding, andcan also be used for coding gray scale and color images with limited numbersof bits per pixel. The remaining optional geometric information that specifiesthe location of each Marching Cubes vertex more precisely along its support-ing intersecting grid edge, is efficiently encoded in scan-order with the samemechanism. Vertex normals are optionally computed as normalized gradientvectors by the encoder and included in the bitstream after quantization andentropy encoding, or computed by the decoder in a postprocessing smoothingstep. These choices are determined by trade-offs associated with an in-corevs. out-of-core decoder structure. The main features of this algorithm are itsextreme simplicity and high compression rates

Isosurface algorithms take as input very large volume data files, and pro-duce polygon meshes with very large number of vertices and faces. For remotevisualization, we can transmit either the volume data and run the isosurfacealgorithm in the client, or compute the isosurface in the server and transmitthe resulting polygon mesh. In both cases the transmission time constitutesa major bottleneck because of the file sizes involved, even using general pur-pose mesh compression schemes in the second case. And this is true withouteven considering the computational resources of the client. A third approachis followed in [47]. The only information from the volume data the isosur-face algorithm uses to construct the polygon mesh is: which grid edges crossthe desired level set, and where these intersection points are located withinthe edges. As a result the isosurface algorithm can be decomposed into twoprocesses: the server or encoder process, which scans the volume data, deter-mines intersecting edges, and computes locations of intersection points; andthe client or decoder process, which reconstructs the polygon mesh from thedata transmitted by the server process. The main contribution in this pa-per is a very simple scheme to efficiently encode these data. In addition, thetradeoffs associated with optionally computing normal vectors (used mainlyfor shading) in the server or the client are also considered.

The polygon mesh generated by Marching Cubes is the dual mesh of thequadrilateral mesh generated by the Cuberille algorithm [6]. The mesh gen-erated by the Cuberille algorithm is the regularized (converted to manifold)boundary surface of the solid defined by the set of voxels corresponding togrid vertices with scalar value above the isovalue. Without regularization, in

Page 16: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

Mesh Processing and Compression 11

general this mesh is highly singular (non-manifold). The conversion to man-ifold requires duplication of vertices and edges, so that in the resulting meshevery edge has exactly two incident faces. Which vertices to duplicate andhow to connect the faces can be determined by virtually shrinking the solid,moving the faces in the direction of the inside. The multiplicity of each dualgrid vertex in the regularized mesh only depends on the local connectivity ofthe eight incident voxels. As in the Marching Cubes algorithm, the regular-ization can be done by table look-up while the volume data is being scanned,with a table of size 28 = 256. What is important is to note that the Cuberillealgorithm can construct the isosurface mesh from the same information asthe Marching Cubes algorithm. The edge intersections in the primal meshspecify the location of the face centroids of the Cuberille mesh. The locationof the cuberille vertices can then be computed by local averaging, or by usingmore accurate schemes [13, 45]. In addition, the client can apply a number ofsubsequent smoothing algorithms to improve the mesh appearance [43, 46].

The situation is similar for normals. If computed in the server as thegradient of the scalar function at the edge intersection points [56, 29, 31],and included in the compressed data, the Marching Cubes decoder will treatthem as vertex normals, and the Cuberille decoder as face normals. If thenormals are not included in the compressed data, then it is up to the client todecide how to estimate them from the vertex coordinates and the connectivityinformation.

The implication of these observations is that there is considerable freedomin the implementation of the decoder, making absolutely no changes to theencoder or the compressed bitstream. It is not even necessary for the decoderto produce a polygon mesh as output. For visualization purposes, and inparticular if normals are included in the compressed data, a point-basedapproach [40] could be very effective.

6 Space-Optimized Texture Maps

Texture mapping is a common operation to increase the realism of three-dimensional meshes at low cost, particularly in computer games. Image com-pression techniques can be used to address the problems created by smalltexture memory in graphics adapters. However, specialized hardware may berequired [17, 3, 52] to decode the compressed texture on the fly to obtaininteractive frame rates. Downsampling the texture image does not solve theproblem either because except for simple textures containing repetitive pat-terns, details are typically not uniformly distributed across the image, anddetails are lost. A new texture optimization algorithm based on a nonlinearreduction of the physical space allotted to the texture image is introduced in[2]. This algorithm can be used in conjunction with general purpose imageand mesh compression algorithms to compress textured meshes at lower dis-tortion rates. This algorithm optimizes the use of texture space by warping

Page 17: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

12 Gabriel Taubin

Fig. 4. Space-Optimized Texture Maps.

the image and then computing new texture coordinates that compensate forthe warping. Neither the mesh geometry nor its connectivity are modified.The method uniformly distributes frequency content of the image in the spa-tial domain by stretching the image in high frequency areas and shrinking itin low frequency regions. The warped image can be downsampled preserv-ing the original details. The unwarping is performed by the texture mappingprocess. Hence, from the point of view of the rendering algorithms, the space-optimized textured model is no different from the original model. The texturemap optimization process is an operator that transforms a textured modelinto another textured model.

In contrast with previous approaches, this method requires minimal userinput. The frequency map automatically captures the relative importance

Page 18: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

Mesh Processing and Compression 13

of different regions in the image. The map is efficiently and robustly com-puted using a wavelet packet decomposition technique and a denoising filter.The effect of metric distortions is incorporated by analyzing the Jacobian ofthe parameterization and combining it with the frequency map. The imagewarping is obtained with a simple multi-grid relaxation algorithm. The fi-nal optimized image does not require special decompression hardware, andartifacts typical of compression techniques are not present.

7 Volume Warping for Adaptive Isosurface Extraction.

Methods for mesh simplification can be regarded as lossy connectivity com-pression techniques. Although many solutions have been proposed to reducethe number of polygons generated by isosurface algorithms, most require thecreation of isosurfaces at multiple resolutions or the use of additional datastructures, often hierarchical, to represent the volume. A new technique foradaptive isosurface extraction is proposed in [1], closely related to the ap-proach used in [2] for texture map optimization. This new algorithm is easyto implement and allows the user to decide the degree of adaptivity as wellas the choice of isosurface extraction algorithm. The method optimizes theextraction of the isosurface by warping the volume. In a warped volume areasof importance (e.g. containing significant details) are inflated while unimpor-tant ones are contracted. Any isosurface extraction algorithm can be appliedto the warped volume. The extracted mesh is subsequently unwarped suchthat the warped areas are re-scaled to their initial proportions. The resultingisosurface is represented by a mesh that is more densely sampled in regionsdecided as important.

References

1. L. Balmelli, C. Morris, G Taubin, and F. Bernardini. Volume Warping forAdaptive Isosurface Extraction. In IEEE Visualization 2002 Conference Pro-ceedings, Boston, Massachusetts, October 2002.

2. L. Balmelli, G. Taubin, and F. Bernardini. Space-Optimized Texture Maps. InEurographics 2002 Conference Proceedings, Saarbrucken, Germany, September2002.

3. A. C. Beers, M. Agrawala, and N. Chaddha. Rendering from compressed tex-tures. Proc. of SIGGRAPH, pages 373–378, August 1996.

4. A. Belyaev, Y. Ohtake, and K. Abe. Detection of ridges and ravines on rangeimages and triangular meshes. In Vision Geometry IX Conference Proceedings,number 4117 in SPIE Annual Meeting, pages 146–154, San Diego, July 2000.

5. H. Bierman, A. Levin, and D. Zorin. Piecewise smooth subdivision surfaceswith normal control. In Siggraph’2000 Conference Proceedings, 2000.

6. L.S. Chen, G.T. Herman, R.A. Reynolds, and J.K. Udupa. Surface shad-ing in the cuberille environment. IEEE Computer Graphics and Applications,5(12):33–42, 1985.

Page 19: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

14 Gabriel Taubin

7. U. Clarenz, U. Diewald, and M. Rumpf. Anisotropic geometric diffusion insurface processing,. In Proceedings of IEEE Visualization 2000, October 2000.

8. R.E. Crochiere and L.R. Rabiner. Multirate Digital Signal Processing. SignalProcessing. Prentice-Hall, Inc., Englewood Cliffs, New Jersey, 1983.

9. M. Deering. Geometric compression. In Siggraph’95 Conference Proceedings,pages 13–20, August 1995.

10. M. Desbrun, M. Meyer, P. Schroder, and A. Barr. Anisotropic feature-preserving denoising of height fields and bivariate data. In Proceedings ofGraphics Interface 2000, May 2000.

11. M. Desbrun, M. Meyer, P. Schroder, and A.H. Barr. Implicit fairing of ir-regular meshes using diffusion and curvature flow. In Siggraph’99 ConferenceProceedings, pages 317–324, August 1999.

12. D.A. Field. Laplacian smoothing and delaunay triangulations. Communicationsin Applied Numerical Methods, 4:709–712, 1984.

13. S. Gibson. Constrained elastic surface nets: generating smooth surfaces frombinary segmented data. In Medical Image Computation and Computer AssistedInterventions, Conference Proceedings, pages 888–898, 1998.

14. S. Gumhold and W. Strasser. Real time compression of triangle mesh connec-tivity. In Siggraph’98 Conference Proceedings, 1998.

15. K. Ho-Le. Finite element mesh generation methods: A review and classification.Computer Aided Design, 20(1):27–38, 1988.

16. G. Husler and S. Karbacher. Reconstruction of smoothed polyhedral surfacesfrom multiple range images. In Proceedings of 3D Image Analysis and Synthesis’97, pages 191–198, Sankt Augustin, 1997. Infix Verlag.

17. S3 Inc. S3TC DirectX 6.0 standard texture compression.http://www.s3.com/savage3d/s3tc.html, 1998.

18. M. Isenburg and J. Snoeyink. Face fixer: Compressing polygon meshes withproperties. In Siggraph’2000 Conference Proceedings, pages 263–270, July 2000.

19. ITU-T T.82 Information technology - Coded representation of picture andaudio information - Progressive bi-level image compression, March 93.http://www.itu.int.

20. A.D. Kalvin. A survey of algorithms for constructing surfaces from 3d volumedata. Technical Report RC 17600, IBM Research Division, January 1992.

21. S. Karbacher and G. Husler. A new aproach for modeling and smoothing ofscattered 3d data. In R.N. Ellson and H. Nurre, editors, Proceedings of theSPIE on Three-Dimensional Image Capture and Applications, volume 3313,pages 168–177, 1998.

22. A. Khodakovsky, P. Alliez, M. Desbrun, and P. Schroder. Near-optimal connec-tivity encoding of 2-manifold polygon meshes. Geometric Models, 2002. SpecialIssue on Processing of Large Polygonal Meshes (to appear).

23. A. King, D. Szymczak and J. Rossignac. Connectivity compression for irregularquadrilateral meshes. Technical Report GIT-GVU-99-36, Georgia Tech GVU,1999.

24. L. Kobbelt, S. Campagna, J. Vorsatz, and H.-P. Seidel. Interactive multi-resolution modeling on arbitrary meshes. In Siggraph’98 Conference Proceed-ings, pages 105–114, July 1998.

25. L. Kobbelt, J. Vorsatz, and H.-P. Seidel. Multiresolution hierarchies on un-structured triangle meshes. Computational Geometry Theory and Applications,1999. special issue on multi-resolution modeling and 3D geometry compression.

Page 20: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

Mesh Processing and Compression 15

26. B. Konrod and C. Gotsman. Efficient coding of non-triangular meshes. InProceedings of Pacific Graphics, Hong-Kong, 2000.

27. S. Kuriyama and K. Tachibana. Polyhedral surface modeling with a diffusionsystem. In Eurographics’97 Conference Proceedings, pages C39–C46, 1997.

28. W.E. Lorensen and A.V. Cline. Marching cubes: a high resolution 3d sur-face construction algorithm. ACM Computer Graphics (Siggraph ConferenceProceedings), 21(4):163–196, 1987.

29. T. Moller, R. Machiraju, K. Muller, and R. Yagel. A comparison of normalestimation schemes. In IEEE Visualization’97, Conference Proceedings, pages19–26, 1997.

30. L. Mroz and H. Hauser. Space-Efficient Boundary Representation of VolumetricObjects. In Proceedings of the Joint Eurographics-IEEE TCVG Symposium onVisualization (VisSym01), Ascona, Switzerland, May 2001.

31. L. Neumann, B. Csebfalvi, A. Konig, and E. Groller. Gradient estimationin volume data using 4d linear regression. In Eurographics 2000, ConferenceProceedings, pages 351–358, 2000.

32. K. G. Nguyen and D. Saupe. Rapid high quality compression of volume datafor visualization. In Eurographics’2001, Conference Proceedings, 2001.

33. Y. Ohtake and A. Belyaev. Nonlinear diffusion of normals for stable detection ofridges and ravines on range images and polygonal models. In IAPR Workshopon Machine Vision Applications MVA2000, Proceedings, pages 497–500, Tokyo,Japan, November 2000.

34. Y. Ohtake, A. Belyaev, and I. Bogaevski. Mesh regularization and adaptivesmoothing. Computer-Aided Design, 33:789–800, 2001.

35. Y. Ohtake, A. Belyaev, and I.A. Bogaevski. Polyhedral surface smoothing withmodified laplacian and curvature flows. The Journal of Three DimensionalImages, 13(3):19–24, 1999.

36. Y. Ohtake, A.G. Belyaev, and I.A. Bogaevski. Polyhedral surface smoothingwith simultaneous mesh regularization. In Geometric Modeling and Processing2000 Conference Proceedings, pages 229–237, Hong Kong, April 2000.

37. Y. Ohtake, M. Horikawa, and A. Belyaev. Adaptive smoothing tangential di-rection fields on polygonal surfaces. In Pacific Graphics 2001 Conference Pro-ceedings, pages 189–197, Tokyo, Japan, October 2001.

38. P. Perona and J. Malik. Scale-space and edge detection using anisotropic dif-fusion. IEEE Transactions on Pattern Analysis and Machine Intelligence, July1990.

39. J. Rossignac. Edgebreaker: Connectivity compression for triangular meshes.IEEE Transactions on Visualization and Computer Graphics, 5(1):47–61,January-March 1999.

40. S. Rusinkiewicz and M. Levoy. Qsplat: A multiresolution point rendering sys-tem for large meshes. In Siggraph’2000, Conference Proceedings, 2000.

41. D. Saupe and J.-P. Kuska. Compression of isosurfaces. In Proceedings of IEEEVision, Modelling and Visualization (VMV 2001), Stuttgart, Germany, Novem-ber 2001.

42. P. Shroder and W. Sweldens. Course 50: Digital Geometry Processing. Sig-graph’2001 Course Notes, August 2001.

43. G. Taubin. A Signal Processing Approach To Fair Surface Design. In Sig-graph’95 Conference Proceedings, pages 351–358, Los Angeles, California, Au-gust 1995.

Page 21: Table of Contents - Brown Universitymesh.brown.edu/taubin/pdfs/Taubin-gmsv2004.pdf · Georgios Stylianou :::::139. VIII Table of Contents Part III Wavelets and Compression on Surfaces

16 Gabriel Taubin

44. G. Taubin. Geometric Signal Processing on Polygonal Meshes. In Eurographics2000 State of The Art Report (STAR), September 2000.

45. G. Taubin. Dual Mesh Resampling. In Pacific Graphics 2001, ConferenceProceedings, Tokyo, Japan, October 2001.

46. G. Taubin. Linear Anisotropic Mesh Filtering. Technical Report RC-22213,IBM Research, October 2001.

47. G. Taubin. BLIC: Bi-Level Isosurface Compression. In IEEE Visualization2002 Conference Proceedings, Boston, Massachusetts, October 2002.

48. G. Taubin, A. Gueziec, W. Horn, and F. Lazarus. Progressive forest splitcompression. In Siggraph’98 Conference Proceedings, pages 123–132, July 1998.

49. G. Taubin and L. Kobbelt. Course 17 : Geometric Signal Processing on LargePolygonal Meshes . Siggraph’2001 Course Notes, August 2001.

50. G. Taubin and J. Rossignac. Geometry Compression through TopologicalSurgery. ACM Transactions on Graphics, 17(2):84–115, April 1998.

51. G. Taubin, T. Zhang, and G. Golub. Optimal surface smoothing as filter design.In Fourth European Conference on Computer Vision (ECCV’96), 1996. Alsoas IBM Technical Report RC-20404, March 1996.

52. J. Torborg and J. T. Kajiya. Talisman: Commodity realtime 3d graphics forthe pc. Proc. of SIGGRAPH, pages 353–363, August 1996.

53. C. Touma and C. Gotsman. Triangle mesh compression. In Graphics InterfaceConference Proceedings, Vancouver, June 1998.

54. P.P. Vaidyanathan. Multirate Systems and Filter Banks. Signal Processing.Prentice-Hall, Inc., Englewood Cliffs, New Jersey, 1993.

55. E. Weisstein. http://mathworld.wolfram.com/DualPolyhedron.html.56. R. Yagel, D. Cohen, and A. Kaufman. Normal estimation in 3d discrete space.

The Visual Computer, pages 278–291, 1992.57. A. Yamada, T. Furuhata, K. Shimada, and K. Hou. A discrete spring model

for generating fair curves and surfaces. In Proceedings of the Seventh PacificConference on Computer Graphics and Applications, pages 270–279, 1998.

58. S.N. Yang and T.S. Wu. Compressing isosurfaces generated with marchingcubes. The Visual Computer, 18(1):54–67, 2002.

59. X. Zhang, C. Bajaj, and W. Blanke. Scalable Isosurface Visualization of Mas-sive Datasets on COTS-Cluster. In Proceedings of IEEE Symposium on ParallelVisualization and Graphics, San Diego, CA, October 2001.

60. D. Zorin and P. Schroder. Course 23: Subdivision for Modeling and Animation.Siggraph’2000 Course Notes, July 2000.

61. D. Zorin, P. Schroder, and W. Sweldens. Interactive multiresolution mesh edit-ing. In Siggraph’97 Conference Proceedings, pages 259–268, August 1997.