WO2001052182A1 - Compression of 3d surfaces using progressive geometry - Google Patents
Compression of 3d surfaces using progressive geometry Download PDFInfo
- Publication number
- WO2001052182A1 WO2001052182A1 PCT/US2001/001215 US0101215W WO0152182A1 WO 2001052182 A1 WO2001052182 A1 WO 2001052182A1 US 0101215 W US0101215 W US 0101215W WO 0152182 A1 WO0152182 A1 WO 0152182A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- mesh
- regular
- transform
- semi
- forming
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/005—Statistical coding, e.g. Huffman, run length coding
Definitions
- An arbitrary topology surface can be three dimensionally characterized by descriptions of vertices on the surface and their connectivity. The detail of the surface depends on the number of points that are described, and the amount of information describing each point.
- Rate-distortion curves require the computation of errors or "distortion" between the original surface and a surface that has been estimated.
- an error may be computed using techniques that measure the distance between the geometric shapes.
- the original and compressed meshes may have very different sample locations and connectivity. Progressive compression provides an early, coarse approximation of the geometry. This is subsequently improved through additional information.
- a new progressive geometry compression method is disclosed which is based on smooth semi-regular meshes.
- the Semi-regular meshes may be used with wavelet transforms and zerotree coders. Missing geometry information may be filled in with smooth subdivision patches. Hence even highly compressed surfaces can be smooth and visually pleasing.
- Figures 1A - ID show views of progressive compressions of a Venus head
- Figures 2A-2C shows triangulations of a sphere
- Figure 4 shows a flowchart of an operation of compressing a 3D image
- Figure 5 shows histograms of wavelet coefficients
- Figure 6 shows histograms of polar angles of wavelet coefficients
- Figure 7 shows subdivisions of surfaces.
- Any source geometry is continuous.
- Any digital representation such as a triangle mesh, has some error E associated with it.
- This error E has three components - due to sampling, discretization, and quantization.
- Sampling error Es arises from acquisition noise.
- Discretization error Ed is due to the fact that a triangulation with edge length h can approximate a smooth geometry no better than 0(h 2 ).
- a finite bit representation for the continuous vertex positions leads to the quantization error Eq.
- Sampling and triangulation of the model fix Es and Ed.
- a standard floating point representation inside the computer typically leads to a quantization error much smaller than Es+Ed.
- Single rate coders quantize the vertex positions more coarsely, leading to a quantization error Eq «Es + Ed. They then losslessly encode the connectivity and quantized vertex positions. Existing progressive coders aim to eventually recover the quantized sample locations and original connectivity.
- the information contained in the sample locations is, parameter information. For example, by letting the vertices slide within the surface, only the parameter information is changed and not the geometric fidelity.
- Meshes can be built by successive triangle quadrisection starting from a coarse irregular mesh. This is done to eliminate certain parameter and connectivity information. Almost all vertices in a semi- regular mesh have valence six. Their sample locations can be estimated well. Parameter and connectivity information make up a considerable fraction of the bit budget in existing coders, but do not contribute at all to reducing geometric error. Consequently, the rate- distortion curves of this method can be better than those of existing coders. For most models, the error of the present system is about four times smaller at comparable bit rates, a 12 dB improvement.
- the present application builds on the observation that parameter information makes up a significant fraction of the bit budget while not contributing to error reduction at all.
- the technique of the present application starts with a defined irregular mesh describing a 2-manifold, without or with boundary. It produces successive approximations employing semi-regular meshes, that is, meshes which are as regular as possible. Since the meshes are more regular, less parameter and connectivity information can be used.
- the coder first produces a hierarchical approximation of the surface. This expression is subsequently encoded with a coder, e.g., a zerotree progressive coder.
- a Loop based wavelet transform can be used for high order decorrelation and subdivision based reconstruction.
- a special zero tree hierarchy can be used for primal semi-regular triangle meshes of arbitrary topology.
- Zero Tree Coders are wavelet based progressive coders based on zero trees. They are described, for example, in Said, A., and Pearlman, . A New, Fast, and Efficient Image Codec Based on Set Partitioning in Hierarchical Trees. IEEE Transaction on Circuits and Systems for Video Technology 6, 3 (1996), 243-250;
- Zero tree coders effectively exploit the fact that wavelet coefficients at finer scales tend to be smaller in magnitude than coefficients at coarser scales in the same region.
- a zero tree coder encodes the location of coefficients below threshold in subtrees.
- the present application handles three components: connectivity, geometry, and parameter information separately.
- the parameter information captures the sample locations within the surface.
- the geometry information captures the geometry independent of the sample locations used.
- parameter and geometry information have been treated together. Consider a vertex of a particular Venus head triangulation in Figure 1A-1D. Moving this vertex slightly within the surface does not change the discretization error or the geometry information — It only affects the parameter information. Alternatively, moving the vertex in a direction normal to the surface changes the error and geometry information. However, it leaves parameter information unchanged. This illustrates that while geometry and parameter information are globally intertwined, they ⁇ disconnect locally. Parameter information is described by displacements in the tangent plane to the surface.
- Geometry information is normal to the surface. This implies that from a rate distortion point of view, bits should be allocated preferentially to the local normal direction. For smooth parameterizations, this may occur naturally, since prediction residuals in the tangent plane will be small.
- the non-progressive curves are dashed since these points are not achievable in a progressive manner.
- the TG coder correctly noticed that it contains almost no connectivity information (0.1 b/v) and almost no parameter information. Its performance is essentially limited by the quality of the predictor used.
- the TG coder for the non-smooth semi-regular sphere is worse, thereby illustrating the bit penalty for parameter information.
- the TG coder for the irregular mesh (right) illustrates the additional overhead from irregular connectivity. This example demonstrates that reducing both connectivity and parameter information in a mesh can have advantages.
- the small curve near the y-axis shows the result of applying our coder to the smooth semi-regular mesh. It can approximate the sphere with a relative error of 5xl0- 5 using 166 bytes or approximately 0.5 b/v. This is because a sphere has very little geometric information and smooth semi-regular mesh is essentially optimal for the coder. This is where the high order decorrelation and subdivision based reconstruction really pays off. This same effect is used in smooth, regularly sampled regions of more general surfaces.
- An arbitrary connectivity 2-manifold with boundary triangulation is taken as input at 400.
- a smooth global parameterization is calculated using the "MAPS" technique at 405.
- Successive adaptive approximations with semi- regular connectivity are calculated at 410.
- These semi- regular approximations are subsequently wavelet transformed at 415 and progressively compressed using zerotrees at 420.
- the coarsest level connectivity is encoded using a standard non-progressive mesh encoder. The decoder may produce intermediate approximations from any prefix of the bitstream.
- Error is based on the distance d(X,Y) between two surfaces X and Y. Let d(x,Y) be the Euclidean distance from a point x on X to the closest point on Y. Then the L 2 distance d(X,Y) is given by
- This distance is not in general symmetric but can be symmetrized by taking the max of d(X,Y) and d(Y,X). For triangulations this distance can be computed using the publicly available METRO tool described in Cumblei, P., Rocchini, C., and Scopigno, R. Metro: Measuring Error on Simplified Surfaces. Computer Graphics Forum 17, 2 (1998), 167-174. The L 2 errors reported here are relative with respect to the bounding box diagonal on a scale of
- MAPS Multiresolution Adaptive Parameterization of Surfaces, Proceedings of SIGGRAPH 98 (1998), 95-104.
- MAPS allows for automatic alignment of iso-parameter lines of the semi-regular mesh with sharp features of the original input surface. This can avoid large wavelet coefficients near any creases.
- MAPS builds a bijective map between the input mesh T and a coarse base domain B. Regular triangle quadrisection is applied in the base domain B for additional detail. The mapping is used to build semi- regular approximations of T. These approximations have some remeshing error Er with respect to T. While this error can be made arbitrarily small, the remeshing error Er maybe of the same size as the discretization error Ed. This roughly occurs when the triangles from the se i- regular mesh are about the same size as the triangles of the input mesh. Using smaller triangles only serves to produce a better approximation of the input mesh, not necessarily of the original unknown geometry. An order estimate of Ed may be computed to determine when to complete the operation.
- the distance between the input mesh T and a much finer mesh S obtained by Butterfly subdividing T may be used for this purpose.
- the latter serves as a proxy for the unknown original geometry.
- the semi-regular mesh error Er is below the estimated discretization error Ed, there is no need to further refine the semi-regular mesh.
- the wavelet transform of 415 replaces the original mesh with a coarsest mesh and a sequence of wavelet coefficients expressing the difference between successive more detailed levels. Neighboring vertices of these piecewise smooth models, can be highly correlated.
- the wavelet transform removes a large amount of this correlation.
- the distribution of wavelet coefficients is centered around zero. Their magnitude decays at finer levels with the rate of decay related to the smoothness of the original surface.
- a zerotree coder may be used for the bit encoding of coefficients.
- a Loop wavelet transform has the advantage that the inverse transform uses Loop subdivision. Experimentally, we found it has rate distortion curves similar to Butterfly, but typically better visual appearance.
- Loop subdivision fixes the low pass reconstruction filter P in a wavelet construction with a high pass reconstruction filter Q. Together they define the inverse wavelet transform
- the forward wavelet transform which goes from finer to coarser levels, is defined as the solution [p ⁇ d 3 ] of the linear system in Equation 1 for a given p 3"1"1 .
- the forward wavelet transform is computed as the solution of a sparse linear system.
- a bi-conjugate gradient solver with diagonal preconditioning may be used. Solving a linear system may make the forward transform slower than the inverse transform. This is acceptable as encoding is typically done once off-line as compared with decoding which happens frequently and in real time.
- the Loop forward transform takes 30 sec. on a 650Mhz Pentium III while the inverse transform takes 5 sec. In case symmetry is important, one can use the Butterfly transforms for which both forward and inverse transforms can be performed in 2.5 sec.
- the decorrelating power of the wavelet transform is illustrated in Figure 5.
- the left shows the histogram of the magnitude of the Venus model vertex positions.
- the right shows- a histogram of the magnitude of the wavelet coefficients. This demonstrates that a large amount of correlation is removed and the first order entropy is decreased considerably.
- the wavelet transform results in wavelet coefficients which may be vector valued. These coefficients may be represented in a local frame induced by the surface tangent plane. This causes the variance of normal wavelet components to be on average twice as large as the variance of the tangential components. Recalling the earlier geometry versus parameter distinction, this is exactly what we want. In a smooth semi-regular mesh, the geometry information (normal component) is much larger than the parameter information (tangential component) . Figure 6 illustrates this by showing the histograms of the polar angles q (the angle from the z of normal axis) of the wavelet coefficients in global and local coordinate frames.
- the f angle is the angle along the equator. This is fairly uniformly distributed and does not change much in the local frame. Consequently any two basis vectors may be used in the tangent plane.
- parameter i.e., tangential
- the tangential wavelet components can still contain some geometric information.
- the error metric is less sensitive to quantization error of tangential versus normal wavelet components.
- the error curves can be improved by more coarsely quantizing the tangential component .
- a basic operation in a scalar zerotree coder is the coefficient significance test, i.e., checking its magnitude against a threshold. If it is below the threshold, the coefficient is added to a zerotree, else the location and sign of the coefficient needs to be transmitted. For the vector case, this becomes more difficult.
- Three quantization options are contemplated. (1) Spherical cells allow the magnitude to be used for the significance test. The quantized angular components become ⁇ generalized'' signs. (2) For cubical cells, the cube is divided into 64 subcubes. Coefficients in the 8 internal cubes become insignificant and the others become significant. The cell number again is an analog of angular component. (3) Each vector component can be handled independently and encoded separately. This reduces the vector case to three independent scalar passes.
- Scalar quantization uses, three independent zerotree coders.
- the bits from the three coders can be interleaved to maintain progressivity.
- a general principle of wavelet coefficient encoding is to send the highest order bits of the largest magnitude coefficients first, since they make the most significant contributions towards reducing error.
- T 0 max ⁇
- the decoder can reconstruct the geometry associated with any prefix of the bitstream by running an inverse wavelet transform on the coefficient bits it has seen so far.
- the present system may use a different construction of the zerotrees.
- For images one associates the coefficients with a quadrilateral face (pixel) and the trees follow immediately from the face (pixel) quadtree. While this works also for dual, i.e., face based subdivision schemes, our triangular transform is primal, i.e, vertex based.
- Scale coefficients are associated with vertices.
- wavelet coefficients may be put into a one to one association with edges of the coarser mesh.
- Each edge can then be the parent of four edges of the same orientation in the finer mesh as indicated in Figure 7.
- each edge of the base domain forms the root of a zerotree; it groups all the wavelet coefficients of a fixed wavelet subband from its two incident base domain triangles. The grouping is consistent even for a semi- regular mesh.
- Scale coefficients from the coarsest level are quantized uniformly. Experimentally, it is believed that it may be best to send 4 bit planes initially with the base domain connectivity. Each remaining bitplane is sent as the zerotrees descends another bit plane.
- the zerotree technique may be effective at exploiting parent-child coefficient correlations, minimizing the amount of encoded significance bits.
- the output of the zerotree coder can still be compressed further through techniques such as arithmetic coding, which may allow for a fractional number of bits per symbol.
- the zerotree coder output has three different types of information, including significance bits, refinement bits and sign bits. Refinement and sign bits tend to be uniformly distributed; hence they are not entropy coded. Significance bits on the other hand can be further entropy coded. For early bitplanes, coefficients may be insignificant resulting in mostly zero bits. For later bitplanes, many coefficients become significant, resulting in mostly one bits. An arithmetic coder naturally takes advantage of this.
Abstract
Description
Claims
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2001227910A AU2001227910A1 (en) | 2000-01-14 | 2001-01-12 | Compression of 3d surfaces using progressive geometry |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17615500P | 2000-01-14 | 2000-01-14 | |
US60/176,155 | 2000-01-14 | ||
US09/658,214 US6995761B1 (en) | 2000-01-14 | 2000-09-08 | Compression of 3D surfaces using progressive geometry |
US09/658,214 | 2000-09-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2001052182A1 true WO2001052182A1 (en) | 2001-07-19 |
WO2001052182A9 WO2001052182A9 (en) | 2002-08-08 |
Family
ID=26871936
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2001/001215 WO2001052182A1 (en) | 2000-01-14 | 2001-01-12 | Compression of 3d surfaces using progressive geometry |
Country Status (3)
Country | Link |
---|---|
US (1) | US6995761B1 (en) |
AU (1) | AU2001227910A1 (en) |
WO (1) | WO2001052182A1 (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7324105B1 (en) * | 2003-04-10 | 2008-01-29 | Nvidia Corporation | Neighbor and edge indexing |
US7529418B2 (en) * | 2004-05-20 | 2009-05-05 | Hewlett-Packard Development Company, L.P. | Geometry and view assisted transmission of graphics image streams |
US20070064099A1 (en) * | 2004-06-18 | 2007-03-22 | Raphaele Balter | Method of representing a sequence of pictures using 3d models, and corresponding devices and signals |
FR2876821A1 (en) * | 2004-10-14 | 2006-04-21 | France Telecom | METHOD FOR LOCALLY DECODING A BINARY TRAIN OF WAVELET COEFFICIENTS |
US8339395B2 (en) * | 2008-07-08 | 2012-12-25 | Lockheed Martin Corporation | Method and apparatus for model compression |
US9147283B1 (en) | 2011-10-30 | 2015-09-29 | Lockhead Martin Corporation | Water surface visualization during a simulation |
US9123160B1 (en) | 2011-10-30 | 2015-09-01 | Lockheed Martin Corporation | Concurrent mesh generation in a computer simulation |
WO2014062934A1 (en) * | 2012-10-19 | 2014-04-24 | Visa International Service Association | Digital broadcast methods using secure meshes and wavelets |
US9734595B2 (en) | 2014-09-24 | 2017-08-15 | University of Maribor | Method and apparatus for near-lossless compression and decompression of 3D meshes and point clouds |
US11568575B2 (en) | 2019-02-19 | 2023-01-31 | Google Llc | Cost-driven framework for progressive compression of textured meshes |
US10977773B2 (en) * | 2019-02-19 | 2021-04-13 | Google Llc | Cost-driven framework for progressive compression of textured meshes |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5905507A (en) * | 1996-01-16 | 1999-05-18 | International Business Machines Corporation | Compression of geometric models using spanning trees |
US6088034A (en) * | 1995-08-04 | 2000-07-11 | Sun Microsystems, Inc. | Decompression of surface normals in three-dimensional graphics data |
US6144773A (en) * | 1996-02-27 | 2000-11-07 | Interval Research Corporation | Wavelet-based data compression |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6525722B1 (en) * | 1995-08-04 | 2003-02-25 | Sun Microsystems, Inc. | Geometry compression for regular and irregular mesh structures |
EP0836784B1 (en) * | 1996-05-06 | 2003-09-17 | Koninklijke Philips Electronics N.V. | Segmented video coding and decoding method and system |
JP3199231B2 (en) * | 1997-05-27 | 2001-08-13 | 日本アイ・ビー・エム株式会社 | Method and system for embedding information in three-dimensional shape model |
US6285372B1 (en) * | 1998-05-08 | 2001-09-04 | Lawrence C. Cowsar | Multiresolution adaptive parameterization of surfaces |
US6879324B1 (en) * | 1998-07-14 | 2005-04-12 | Microsoft Corporation | Regional progressive meshes |
US6771264B1 (en) * | 1998-08-20 | 2004-08-03 | Apple Computer, Inc. | Method and apparatus for performing tangent space lighting and bump mapping in a deferred shading graphics processor |
FR2784211B1 (en) * | 1998-10-02 | 2000-12-15 | France Telecom | METHOD FOR CODING STILL OR MOVED IMAGES WITH REDUCTION AND ADJUSTMENT OF THROUGHPUT |
US6271856B1 (en) * | 1998-11-19 | 2001-08-07 | Paraform, Inc. | Creating and modifying parameterizations of surfaces |
US6366279B1 (en) * | 1998-12-29 | 2002-04-02 | Intel Corporation | Triangle mesh compression |
US6738062B1 (en) * | 2001-01-10 | 2004-05-18 | Nvidia Corporation | Displaced subdivision surface representation |
-
2000
- 2000-09-08 US US09/658,214 patent/US6995761B1/en not_active Expired - Fee Related
-
2001
- 2001-01-12 WO PCT/US2001/001215 patent/WO2001052182A1/en active Application Filing
- 2001-01-12 AU AU2001227910A patent/AU2001227910A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6088034A (en) * | 1995-08-04 | 2000-07-11 | Sun Microsystems, Inc. | Decompression of surface normals in three-dimensional graphics data |
US5905507A (en) * | 1996-01-16 | 1999-05-18 | International Business Machines Corporation | Compression of geometric models using spanning trees |
US6144773A (en) * | 1996-02-27 | 2000-11-07 | Interval Research Corporation | Wavelet-based data compression |
Also Published As
Publication number | Publication date |
---|---|
AU2001227910A1 (en) | 2001-07-24 |
WO2001052182A9 (en) | 2002-08-08 |
US6995761B1 (en) | 2006-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Khodakovsky et al. | Progressive geometry compression | |
Li et al. | Progressive coding of 3-D graphic models | |
EP0883864B1 (en) | Wavelet based data compression | |
US6573890B1 (en) | Compression of animated geometry using geometric transform coding | |
Ochotta et al. | Compression of point-based 3D models by shape-adaptive wavelet coding of multi-height fields | |
Ochotta et al. | Image‐based surface compression | |
Khodakovsky et al. | Normal mesh compression | |
CA2285427A1 (en) | 3d mesh compression and coding | |
US6995761B1 (en) | Compression of 3D surfaces using progressive geometry | |
Attene et al. | Swingwrapper: Retiling triangle meshes for better edgebreaker compression | |
CN113284250A (en) | Geometric encoding method and decoding method and device for point cloud | |
Morán et al. | Comparison of wavelet-based three-dimensional model coding techniques | |
Park et al. | Multiscale representation and compression of 3-D point data | |
El Sayeh Khalil et al. | Scalable Feature‐Preserving Irregular Mesh Coding | |
Taubin | BLIC: Bi-level isosurface compression | |
JP4398785B2 (en) | Multidimensional data encoding method, multidimensional data decoding method, texture image creation method, apparatus for realizing the methods, and program for realizing the methods | |
Tosic et al. | Progressive coding of 3-D objects based on overcomplete decompositions | |
Kolarav et al. | Compression of functions defined on surfaces of 3D objects | |
Payan et al. | Model-based bit allocation for normal mesh compression | |
Moran et al. | Hierarchical coding of 3d models with subdivision surfaces | |
Xue et al. | Directly operable image representation of multiscale primal sketch | |
Norkin et al. | Wavelet-based multiple description coding of 3-D geometry | |
Yusov et al. | JPEG2000-based compressed multiresolution model for real-time large scale terrain visualization | |
Payan et al. | MSE approximation for model-based compression of multiresolution semiregular meshes | |
Köse et al. | 3D model compression using connectivity-guided adaptive wavelet transform built into 2D SPIHT |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US US UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
AK | Designated states |
Kind code of ref document: C2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US US UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: C2 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
COP | Corrected version of pamphlet |
Free format text: PAGES 1/7-7/7, DRAWINGS, REPLACED BY NEW PAGES 1/5-5/5; DUE TO LATE TRANSMITTAL BY THE RECEIVING OFFICE |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
122 | Ep: pct application non-entry in european phase | ||
NENP | Non-entry into the national phase |
Ref country code: JP |