A Tetrahedron Based Volume Model Simplification Algorithm Jin
A Tetrahedron Based Volume Model Simplification Algorithm Jin Hong, Lixia Yan, Jiaoying Shi (State Key Lab. of CAD&CG, Zhejiang University)
Motivation 4 Tetrahedron mesh is one of the most popular representations of volume model. 4 Huge amount of tetrahedrons lead to problems on data storage, rendering and computation.
Previous Work 4 Few researches on volume data simplification have been developed until now. 4 While many researches on surface data reduction have been developed. – all these algorithms are only available for surface simplification either by merging elements or by resampling vertices of the original object.
Our Work 4 Provides a new method to simplify the tetrahedron mesh of a volume model. 4 The key advantages of our algorithm: – available for volume data; – simple to implement; – high reduction rates and excellent results; – a multi-resolution representation.
The Volume Data (1) 4 Three types of tetrahedrons are defined: – T 0 -tetrahedron; – T 1 -tetrahedron; – T 2 -tetrahedron.
The Volume Data (2) 4 The element in a volume data set is a polyhedron. 4 A polyhedron can be divided into several T 0, T 1 and/or T 2 tetrahedrons. 4 An example.
Input Data accepted (1) 4 The input objects that our algorithm can accept and process are layered tetrahedrons. 4 They are gained from 3 D reconstruction of layered scanning images (MRI or CT). 4 A layered tetrahedron is defined as a tetrahedron with vertices only on two adjoining planes parallel with each other.
Input Data Accepted (2) 4 A layered tetrahedron model. 4 All of the tetrahedrons are classified into two categories: – border tetrahedrons; – non-border (internal) tetrahedrons.
Algorithm Description 4 The main loop; 4 Surface simplification; 4 Hexahedron mesh construction; 4 Filling the resulting hole;
The Main Loop (1) 4 We adopt a layered simplification approach. – fetch M layers of tetrahedrons from the input; – manipulate these M layers of tetrahedrons; – output one layer of newly-generated tetrahedrons; – when all of the original tetrahedral data are processed, we finish.
The Main Loop (2) 4 How to calculate M?
The Main Loop (3) 4 How to manipulate these M layers of tetrahedrons? – a vertex removal approach is introduced to simplify border tetrahedrons. – a number of hexahedrons will be substituted for non-border tetrahedrons. – the resulting hole between the simplified surface and substituent hexahedrons is filled with tetrahedrons. 4 More Detailed Discussion. . .
Surface Simplification (1) 4 The border tetrahedron simplification is a typical surface simplification algorithm. – it starts with the original surface and successively simplifies it. – vertices from Layer 1 to Layer(M-1) are removed and the resulting holes are re-triangulated until no further vertices can be removed. – the triangle mesh left, with all vertices in Layer 0 or Layer(M) is the simplified surface that we need.
Surface Simplification (2) 4 Vertex removing: removing vertex Vr and re-triangulate the remaining hole. the simplified surface
Hexahedrons Construction (1) 4 We substitute regular hexahedrons for the internal tetrahedrons. – construct a closing box for M layers of original tetrahedrons. – divide the closing box into N sub-hexahedrons. – adopt all C-hexahedrons, discard A- and Bhexahedrons. – subdivide each of C-hexahedrons into 6 tetrahedrons as the simplified non-border tetrahedrons.
Hexahedrons Construction (2) 4 How to calculate N?
Hexahedrons Construction (3) 4 What’s the three types of sub-hexahedrons? – A-hexahedron: does not includes any tetrahedrons of original model. – B-hexahedron: at least includes one border tetrahedron. – C-hexahedron: only includes non-border tetrahedrons.
Hexahedrons Construction (4) 4 An Example:
Filling The Resulting Hole (1) 4 Holes between the simplified surface and hexahedrons we built.
Filling The Resulting Hole (2) 4 How to fill the hole with tetrahedrons? – a complicated task; – solved by keeping track of the correspondence between the simplified surface and hexahedrons.
Filling The Resulting Hole (3) 4 More detailed discussion. . . – start with an arbitrary T 0 triangle; – get a triangle-set unit B 0; – find an arris nearest to B 0; – now that we have got a polyhedron. – divide it into several T 0, T 1 and T 2 -tetrahedrons to fill the hole. – indicate B 0 to be used.
Filling The Resulting Hole (3) 4 More detailed discussion… (continued) – – – get the next triangle-set B 1; find an arris nearest to B 1; the next polyhedron is got and divided into tetrahedrons; indicate B 1 to be used; to avoid tetrahedron intersecting, each search must counterclockwise and resume the previous search from the previous ending position.
Filling The Resulting Hole (3) 4 More detailed discussion… (continued) – a pentahedron composed by that two arrises is also divided into three tetrahedrons to fill the hole. – repeat all the previous steps until B 0 is reached again.
Filling The Resulting Hole (4) 4 How to compute the distance between an arris and a triangle-set?
Filling The Resulting Hole (5) 4 Decomposition of a polyhedron:
Results
Results
Conclusion 4 The strengths of our method: – works for volume data; – can preserve sharp edges; – establish a multi-resolution volume data; – is easy to implement.
Further Research 4 Apply the algorithm to our virtual surgery simulation system. 4 Use of multi-resolution object hierarchies in: – collision detection; – cutting; – suturing.
Acknowledgement
- Slides: 30