Title: Compression of Large Engineering 3D Models using Automatic Discovery of Repeating Features
1Compression of Large Engineering 3D Models using
Automatic Discovery of Repeating Features
- Dinesh Shikhare
- National Centre for Software Technology (NCST)
- Mumbai, India.
2Overview
- Large 3D polygon mesh models
- Processing tasks for applications
- Storage, transmission, loading, rendering
- Special techniques needed due to the large size
of models - Previous work in Geometry Compression
- not best suited for large 3D models of
engineering class - Our contributions
- Compression of large engineering models using
automatic discovery of repeating geometric
features - Results
3Large polygon mesh models
4Large polygon mesh models
Walk-through of Massive Power Plant Model (13
million triangles) University of North
Carolina, Chapel Hill. (http//gamma.cs.unc.edu/Gi
gaWalk/)
Double Eagle Tanker (82 million triangles)
5Large polygon mesh models
Digital Michelangelo Project (Statue of
David) 4,128,614 vertices 8,254,150 triangles
Digital Michelangelo Project (St.
Matthew) 186,810,938 vertices 372,422,615
triangles
http//graphics.stanford.edu/projects/mich/
63D Data on the Web
Collaborative CAD http//www.cocreate.com
Notre Dame Cathedral Walk-through http//www.vrndp
roject.com
73D Data on the Web
Fatehpur Sikri Walkthrough http//rohini.ncst.erne
t.in/fatehpur
Virtual Trade Fair http//www.cvtf.org.in
8Triangle mesh models
- Common representation
- Shared list of vertices (Geometry)
- each has xyz coordinates
- List of triangles (Connectivity)
- each has 3 indices into the shared vertex list
- Size of storage
- Vertices 3 x V x B bits, (B bits per coordinate
value) - Triangles 3 x T x log2V (V no. of vertices)
- Typically, T 2 x V
9Large file sizes
Model Vertices Triangles File size
Capitol Bld. 52,606 87,258 1,678,368
Colosseum 69,828 135,159 2,459,844
Helicopter 105,079 187,929 3,516,096
Boeing 747 56,364 88,737 1,741,212
Taj Mahal 65,323 126,453 2,301,312
- Even the smallest model will need 204sec to
transmit at download speeds of 64kbps - At 500,000 triangles/sec, z-buffer hardware can
render only 5 frames/sec
10Large models need special techniques
- Acquisition
- Healing adapting the model for application
- Rendering at interactive speeds
- Fast interactions e.g. collision detection
- Fast transmission
- Progressive disclosure
- Compact storage
11Compression of Mesh Models
- Compact encoding of information by eliminating
redundancy in the original data - Exploit the special knowledge of structure in
the data to encode the information - Specialized algorithms perform better than PKZIP,
gzip, etc. - e.g. JPEG, MPEG, MP3, etc.
- Polygon meshes have a special structure too!
12Previous Work
- Connectivity compression
- Compact encoding of meshes based on graph
traversals - Geometry compression
- Truncation of precision
- Prediction of vertex positions
- Spectral compression (FT, Wavelets, )
- Compression of attributes
- Separation of Attributes and their mappings
- Quantization of color, normals
- Truncation of precision
13Connectivity compression
- In a triangle mesh
- triangle count ? 2 (vertex count)
- each vertex gets used in 5 to 7 triangles
- Such large number of repeated references to
vertices motivates compression of connectivity
information - goal minimize repeated references to vertices
14Triangle strips and fans (OpenGL)
2
3
4
2
1
5
4
0
0
3
1
0 1 2 3 4 5 ...
5
0 1 2 0 2 3 0 3 4 0 4 5 ...
0 1 2 2 1 3 2 3 4 4 3 5 ...
15Generalized triangle strips(Deering95)
Triangle Strip
Triangle Star
5
9
10
2
6
7
8
11
1
4
14
3
12
13
R1 O2 O3 O4 O5 O6
R7 O8 O9 M10 M11 M12 M13 M14
Independent Triangle
Independent Quad
16
21
19
R15 O16 O17
R18 O19 O20 O21
15
17
18
20
16Edge-based traversal
17Traversal is not always smooth
18Dual graph traversal encoding
19Geometry Attributes
- Vertex Coordinates
- Truncation of precision
- Prediction schemes
- based on the traversal of connectivity
- parallelogram rule (Touma and Gotsman)
- butterfly scheme (Pajarola and Rossignac)
- Vertex Normals
- global table of quantized normals
- Colour
- Truncation of precision
20Geometry compression
- Spectral compression of geometry
- Frequency-domain based schemes
- Wavelet based schemes
- Works only on smooth meshes
21Recent years of intense research
- Began with Deering 95 (first geometry
compression paper), and to some degree with Turk
92, RossignacBorrel, 92, Hoppe 93 (the first
simplification papers) - Papers on connectivity alone
- Itai,Rodeh Representation of graphs, Acta
Informatica, 82 - Turan On the succinct representation of graphs,
Discrete Applied Math, 84 - Naor Succinct representation of general
unlabeled graphs, Discrete Applied Math, 90 - Keeler,Westbrook Short encoding of planar graphs
and maps, Discrete Applied Math, 93 - He, Kao,Lu Linear time succinct encodings of
planar graphs, Siam J. Discrete Math, 99 - Chuang, Garg, He, et al Compact encodings of
planar graphs, ICALP, 98 - Deering Geometry Compression, Siggraph, 95
- Taubin,Rossignac Geometric compression through
topological surgery, ACM ToG, 98 - Taubin,Horn,Lazarus,Rossignac Geometry coding
and VRML, Proc. IEEE, 98 - Touma,Gotsman Triangle Mesh Compression, GI, 98
- Gumbold,Straßer Realtime compression of triangle
mesh connectivity, Siggraph, 98 - Rossignac Edgebreaker Compressing the incidence
graph of triangle meshes, TVCG, 99 - Rossignac,Szymczak WrapZip Linear
decompression of triangle meshes, CGTA, 99 - KingRossignac Guaranteed 3.67V Bit Encoding of
Planar Triangle Graphs, CCCG, 99 - Bajaj et al. Single resolution compression of
arbitrary triangle meshes, DCC 99 - Cohen-Or Progressive compression of arbitrary
triangle meshes, Visualization 99 - IsenburgSnoeyink, Mesh Collapse Compression,
SIBGRAPI 99
22Patents
- Companies Intel, Sun, IBM, Microsoft,
Macromedia, Metacreations - Startups Virtue3D, Enbaya, WebGlide,
- At least 20 Issued Patents (from
http//www.3dcompression.com/patents.phtml) - 6,167,159 -- ToumaGotsman's valence-based mesh
compression - 6,046,744 -- Hoppe's Selective Refinement of
Progressive Meshes - 5,793,371 -- Deering's Compression used in Java3D
- 5,825,369 -- RossignacTaubin's Topological
Surgery - 5,736,987 -- DruckerMitchell's compression
method for normals - 5,818,463 -- Tao et al. -- a method for animated
3D model compression using quads, 1998 - 5,905,507 -- RossignacTaubin's Topological
Surgery for generalized models - 5,929,860 -- Hoppe's Progressive Meshes
- 5,963,209 -- Hoppe's Progressive Meshes --
Encoding and transmission - 5,966,133 -- Hoppe's Progressive Meshes --
Geomorphs and variable resolution - 6,009,435 -- Taubin -- level of detail method
that sends the highest LOD connectivity - 6,031,548 -- Gueziec,Lazarus,Taubin --
Progressive Multi-level transmission - 6,016,153 -- GueziecTaubin -- CuttingStitching
- 6,169,819 -- Dyer (HP) -- Fast compression of
surface normals - 6,169,549 -- Burr, 2001, method for continuous
LOD control - 6,088,034 -- Deering's Java3D -- surface normal
decompression
23Architectural and Engineering Designs
- Common Characteristics
- Large number of small meshes.
- Many shapes and groups of shapes repeat.
- The model has arbitrary grouping of polygons.
- Instancing information is not captured and
modeled optimally.
24Applicability of previous techniques to
Engineering Models?
- Each repeating feature is repeatedly encoded.
- Predictive encoders perform poorly on engineering
CAD models having sharp edges and corners. - Spectral methods too cant handle sharp features.
- Vertices are repeated to capture texture
coordinates, vertex normals. - Hence graph traversals have many short branches
in the tree encoding is not very compact.
25Our Approach
- Attack the redundancy in encoding the shape
features that repeat within a 3D model - Automatic discovery of repeating shapes at
various granularities - Connected components
- Sub-component features
- Aggregates of above two types
- Compactly encode the repetition of features
26Our Approach
Unstructured or arbitrarily grouped collection of
polygons along with attributes.
Soup of Polygons
Regrouping of polygons to obtain edge-connected
components -- component shapes.
Connected Components
Detection of repeating component shapes using 3D
registration techniques.
Component level Instance Detection
Detection of repeating features Within and across
components using feature growth technique.
Sub-component level Instance Detection
Detection of repeating groups of component shapes
(aggregates) by looking for iso-transformation i
nstances of component shapes.
Aggregate-level Instance Detection
Compact encoding
27Preprocessing of Model
- Removal of duplicated geometry
- replicated vertices
- overlapping faces
- Regrouping of the model as a collection of
connected components - For the first stage, connected component is the
unit for matching and instancing.
A single mesh in the original model split into 36
components to make shape matching and instancing
possible.
28Matching at Component Level
- Problem (Top-Down)
- Determine whether given two component shapes are
near identical (in the sense of a rigid body
transformation). - If they are identical, record the transformation
(rotation, translation) for instance definition
and for later reconstruction. - Various approaches
- graph matching, feature extraction and matching,
3D registration.
29Matching at Component Level
- Normalized Orientation
- Obtain an orthonormal basis that describes the
eccentricities of the component shape. - Use this basis as a pure rotation matrix to bring
a shape to its normalized orientation.
30Matching at Component Level
- Compute Covariance Matrix
- Determine eigenvectors and eigenvalues of
matrix C.
- Obtain pure rotation matrix R with normalized
eigenvectors and translation T-m to get
rigid body transformation (R, T-m). - Compute OBB.
31Matching at Component Level
- Matching two component shapes, M1, M2
- Obtain for both shapes, orthonormal bases and
centroids (R1, T-m1) and (R2, T-m2). Also
compute OBBs of the shapes. - Proceed only if dimensions of OBBs match.
- Proceed if vertex counts and polygon counts
match. - Align M2 with M1 using the composite
transformation T T-m1? R2 ? R1-1 ? Tm2 - Carry out fuzzy comparison of vertices of M1 and
M2. - If 99.9 of vertices match, create an instance
and record T.
32Matching at Component Level
First Instance Component Shapes
Feature i DEF GeomConnAttrib
Feature j DEF GeomConnAttrib
Feature k DEF GeomConnAttrib
Instance USE T1
Instance USE T3
Instance USE T1
Instance USE T2
Instance USE T1
Instance USE T1
Instance USE T2
Instance USE T2
Instance USE Tm
Instance USE Tn
Instance USE T4
33Sample Models
34Results Repeating Components
35Results...
36Sub-component features
- Many shape features repeat within and across
components. - Examples
- Teeth of a gear geometry and connectivity for
each tooth is repeatedly described. - Components of mechanical assemblies are merged to
obtain a single component, but still has many
repeating shapes. - Component level discovery cannot detect
sub-component level patterns. - Previous work
- Discovery of repeating motifs in molecular
structures
37Sub-component features
38Sub-component features
- Discovery algorithm (Bottom-up)
- Assign footprints to all vertices in the model
- Create equivalence classes of vertices having
identical neighborhoods as identified by their
footprints - Starting with vertices of each equivalence class
- Carry out identical simultaneous breadth-first
growth of features - Verify that the features are indeed geometrically
identical
39Sub-component features
Identical simultaneous growth of repeating
features about vertices (seeds) having identical
neighborhoods. Vertex 0 indicates the seeds, and
the numbering indicates the BFS order of
traversal during the growth.
40Sub-component features
Steering
Spring
Antenna
Rotor
Wheel
41Sub-component features
Large number of vertices belonging to repeating
features can be compressed effectively using
instancing of vertices and triangles connecting
them.
42Aggregate features
- Geometry repeats not only at the level of
connected features, but also as groups of
features - e.g. A pillar in an architectural model consists
of multiple component shapes, and the model can
have a large number of identical pillars. - Key Observation
- USE-instances of all meshes of a structure have
identical transformation associated with them. - An iso-transformation set gives us structures
that repeat.
43Aggregate features
First Instance Features / Shapes
Feature i DEF GeomConnAttrib
Feature j DEF GeomConnAttrib
Feature k DEF GeomConnAttrib
Instance USE T1
Instance USE T3
Instance USE T1
Structure 1
Instance USE T2
Instance USE T1
Instance USE T1
Structure 2
Instance USE T2
Instance USE T2
Instance USE Tm
Instance USE Tn
Instance USE T4
44Aggregate features
45Identification of Erroneous Duplicates
First Instance Features / Shapes
Feature i DEF GeomConnAttrib
Feature j DEF GeomConnAttrib
Feature k DEF GeomConnAttrib
Instance USE T1
Instance USE T3
Instance USE T1
Structure 1
Instance USE T2
Instance USE T1
Instance USE T1
Structure 2
Identical Transformations
Instance USE T2
Instance USE T2
Instance USE Tm
Identity Transformation
Instance USE Tn
Instance USE I
46Compressed Storage
- DEF instances compressed using the best available
connectivity compression algorithm - e.g. Edgebreaker (Rossignac 1999)
- USE instances represented as reference to the DEF
instance and a rigid-body transformation. - A more general transformation may be used
- similarity transformation
- a sequence of topological operators to take one
mesh to another
47Compressed Storage Scheme
48Result of compression
(1) File sizes in bytes. (2) Note that some
models could not be compressed using Edgebreaker
algorithm because (a) DIK has textures and (b)
others have non-manifold meshes. (3) CR 1
C(M) / O(M)
49Lathe
Heritage
Boeing 747
50Summary of contributions
- New algorithms for discovery of repeating
geometric features at different levels of
granularity - A new compression scheme for large 3D models of
architectural and engineering class - Extension of compression scheme for incorporation
of the previously reported compression techniques - A new technique for automatically eliminating
erroneously replicated geometry
51Discussion
- Compression ratio
- Very high CR for architectural / engg. Models
- Speed of compression, decompression
- Slow compression ( large parallelism)
- Fast decompression
- Lossy compression
- Control over lossiness?
52Future Work
- Matching features that have similar geometry but
different connectivity - Use of more general set of transformation for
shape instance detection and encoding - More extensive healing techniques
- Extension to simplification and progressive
disclosure - Do you have any more ideas?
53Outline of the Thesis
- Introduction
- 3D Polygon Mesh Models
- Compression of 3D Models
- Automatic Discovery of Repeating Geometric
Features
- A New Compression Scheme for Large 3D Models of
Engineering Class - Conclusions and Future Directions
- Appendices
- Some claims and proofs
- Implementation Notes
- Sources of data and software tools
54Acknowledgements...
- Thesis Supervisor Prof. S. P. Mudur
- Funded projects
- Aeronautical Development Agency (ADA)
- Intel Inc.
- Models
- VISIONS, 3dcafe.com, avalon.viewpoint.com
- Expert reviews
- SIGGRAPH01, VMV01, Graphical Models
- Discussions
- colleagues in Graphics CAD division, NCST
55Thank You.
56Recent Work
- Improvement of Instance Transforms
- error minimization technique for optimization of
instance transformation using 3D-3D registration
technique Haralick, Shapiro - Connectivity Compression
- Advancing Fan-front algorithm
- Fan-based traversal of triangle mesh for
compactly encoding - efficient O(n) algorithm
57List of Publications
- On Geometric Modeling, Mesh Generation
- A Two-phase Technique for Tessellation of Complex
Geometric Models - Tetrahedral Discretization of Complex Volumetric
Spaces Implementation, Efficiency, Robustness
and Interactive Control. - Zeus Surface Modeling, Surface Grid Generation
and Tetrahedral Volume Discretization.
58List of Publications...
- On Interactive Visualization
- Graphics Pipeline for Interactive Visualization
of Very Large 3D Models - On Geometry Compression
- Discovery of Repeating Feature Patterns in Large
3D Mesh Models - Compression of Large 3D Engineering Models using
Discovery of Repeating Geometric Features
59List of Publications
- On Geometry Compression
- 3D Compression of Engineering Models for
Collaborative Computing Applications. - Compression Techniques for Distributed Use of 3D
Data -- an Emerging Media-type on the Internet - Advancing Fan-front An Efficient Connectivity
Compression Technique for Large 3D Triangle
Meshes.
60Other Papers
- Submitted to a journal
- Automatic Discovery of Repeating Geometric
Features with Application to Compression of Large
3D Models of Architectural and Engineering Class. - On the anvil
- Advancing Fan-front an Efficient Connectivity
Compression Technique.