managing the level of detail in 3d shape reconstruction and representation leila de floriani, paola...
TRANSCRIPT
![Page 1: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/1.jpg)
Managing the Level of Detail in 3D Shape Reconstruction
and Representation
Leila De Floriani, Paola MagilloDepartment of Computer and Information Sciences
University of Genova, Italy
Enrico PuppoInstitute for Applied Mathematics
National Research Council, Genova, Italy
![Page 2: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/2.jpg)
Contribution
• Reconstruction and representation of the volume of 3D objects at multiple levels of detail
• Reconstruction based on a set to sculpturing updates of a tetrahedral mesh
• Rapresentation based on a multiresolution structure (called Multistage)
• Applications:
- CAD/CAM
- Virtual reality
- Computer vision
- Robotics
![Page 3: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/3.jpg)
3D Object Reconstruction
• Known information: a set of points on the object boundary
• Volumetric representation: a mesh of tetrahedra filling the interior of the object
![Page 4: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/4.jpg)
3D Object ReconstructionApproach:
• Build a Delaunay tetrahedralization of the points
• Remove tetrahedra to bring more (all) data points to the boundar
• The Delaunay tetrahedralization may not contain a sub-mesh with all points on its boundary
• Several heuristics for removing tetrahedra exist
![Page 5: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/5.jpg)
3D Object RepresentationGiven a sequence of sculpturing updates of a tetrahedral mesh
• some updates depend on other updates
• some pairs of updates are mutually independent
• updates C and B depend on A• updates C anb B are mutually independent
Dependency is a partial order relation.
![Page 6: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/6.jpg)
3D Object Representation
A Multi-Shape (MS) encodes a partially ordered set of updates through a DAG
![Page 7: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/7.jpg)
3D Object Representation
Every cut of the DAG provides a valid object representation
• Representations at variable resolution are found in cuts
• An "importance" is associated with each update
• The user can define resolutions variable in different ports of the object
refine only top side
refine only bottom-left corner
refine uniformly at importance=1
![Page 8: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/8.jpg)
Formalization
A tetrahedral mesh T is a valid object representation iff
• T is connected
• the boundary of T is a 2-manifold
• T contains all data points inside or on its boundary
Ideal situation (not always possible):
all data points on the boundary
![Page 9: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/9.jpg)
Formalization
A sculpturing update of a mesh removes a connected set of tetrahedra having at least one face exposed on the mesh boundary
• Genus-preserving update: empties a cavity
• Genus-increasing update: creates some hole
• Genus-decreasing update: breaks some handle
![Page 10: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/10.jpg)
Formalization
An update U’ depends on an update U iff U blocks U’
(U exposes some face of the tetrahedron removed by U’)
A blocks B
B depends on A
![Page 11: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/11.jpg)
The Multi-Shape (MS)
• each mesh update U: a node, labeled with the set of removed tetrahedra
• an additional root node: creation of the initial mesh T
• an additional drain node: deletion of the final sculptured mesh
• dependency of U’ from U: an arc (U,U’) , labeled with the set of faces belonging to tetrahedra removed by U’ and exposed by U
An initial tetrahedral mesh T+
A partially ordered set of mesh updates, represented as a DAG
![Page 12: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/12.jpg)
Variable Resolution Meshes from an MS
Each node in an MS stores some resolution parameters describing its importance.
For instance:
• type of update
• subtracted volume
• change in the area of the boundary surface of the object
• weighted importance of its descendant (= of the updates it blocks)
![Page 13: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/13.jpg)
Variable Resolution Meshes from an MS• Resolution threshold:
- Depends on resolution parameters and location in space
- Boolean predicate defined on MS nodes
- True iff the update is relevant
• Goal:
- Extract from the MS a mesh where all relevant updates have been performed
- Equivalent to determine a subset of MS updates closed w.r.t. the partial order
(a set of nodes bounded by a cut) containing all relevant updates.
A and C are relevant
Resulting mesh
![Page 14: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/14.jpg)
Algorithm for Variable Resolution Mesh Extraction
• Top-down traversal of the DAG.
• Can build a volumetric representation of the object, a surface-based one, or both.
![Page 15: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/15.jpg)
Algorithm for Variable Resolution Mesh Extraction
Initialization:
• nodeset := root
• cut := out-arcs of root
• tetrahedra := initial mesh T0
• triangles := triangles labeling out-arcs of root
• enqueue the root
![Page 16: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/16.jpg)
Algorithm for Variable Resolution Mesh Extraction
Generic step:
• - U := next node in the queue
• - add U to nodeset
• - delete in-arcs of U from cut, and add out-arcs of U
• - delete tetrahedra labelling U from tetrahedra
• - delete triangles labelling in-arcs of U from triangles, add triangles labelling out-arcs of U
• - enqueue* every child U’ of U which satisfies the threshold
- (*) if some parent of U’ is not in nodeset, then recursively enqueue them before enqueueing U’
![Page 17: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/17.jpg)
![Page 18: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/18.jpg)
![Page 19: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/19.jpg)
Algorithm for Variable Resolution Mesh Extraction
• The algorithm is interruptible• The time complexity is linear in the size of the
output mesh + that of number of tetrahedra removed to obtain it
![Page 20: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/20.jpg)
Generation of an MS through Sculpturing
• Produce an initial tetrahedral mesh and a sequence of updates.
• Arrange them into a DAG according to their mutual dependencies.
Input data: a set of points on the object surface
Initial mesh: Delaunay tetrahedralization of the points
Sequence of mesh updates:
generated through a sculpturing algorithm based on an -tool
![Page 21: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/21.jpg)
Generation of an MS through Sculpturing
Alpha tool:
• Virtual carving tool
• Sphere of radius = • Can erase a tetrahedron t iff t has a face on the mesh boundary whose
circumcircle has a radius >= alpha
![Page 22: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/22.jpg)
Generation of an MS through Sculpturing
A sequence of updates is generated by starting from a big and decreasing as soon as no more tetrahedra can be erased with the current tool.
….
Erased with =10 Erased with =9 Erased with =8
![Page 23: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/23.jpg)
Sculpturing Algorithm
• if removing t leaves the mesh valid, then remove t (genus-preserving update)
• if removing t disconnects the mesh or isolates a data point, then do not remove t (no update)
Maintain all tetrahedra having some face on the current mesh boundary in a priority queue. Iteratively pick the next tetrahedron t (largest radius of circumcircle):
![Page 24: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/24.jpg)
Sculpturing Algorithm• if removing t causes a non-manifold condition, then try to remove
some tetrahedron near t to restore the manifold condition:
- if success, then remove t along with the other tetrahedra (genus-increasing or -decreasing update)
![Page 25: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/25.jpg)
Sculpturing Algorithm
- if failure since the -tool is too big to continue carving, then reinsert t into the queue with a smaller
- if failure for disconnecting the mesh or isolating some point, then do not remove t (no mesh update)
![Page 26: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/26.jpg)
Sculpturing Algorithm
• Adjacency relations between tetrahedra removed in successive updates determine the dependency relations
• mesh updates and their dependencies are recorded in the nodes and arcs of the MS, respectively
![Page 27: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/27.jpg)
Conclusions
• The Multi-Shape: a model for the efficient encoding and retrieval of
selectively sculptured tetrahedral meshes:
- both volumetric and a surface-based representations provided
- nesting property
- variable-resolution mesh extraction according to user criteria
- more powerful than existing hierarchical representations
since based on a partial order
• An iterative sculpturing algorithm to build an MS:
- for shapes of arbitrary genus
- can sculpture with tools of different sizes
in different parts of the object
![Page 28: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/28.jpg)
![Page 29: Managing the Level of Detail in 3D Shape Reconstruction and Representation Leila De Floriani, Paola Magillo Department of Computer and Information Sciences](https://reader036.vdocuments.us/reader036/viewer/2022062722/56649f295503460f94c43401/html5/thumbnails/29.jpg)