1 / 44

Atomic Volumes for Mesh Completion

Atomic Volumes for Mesh Completion. Joshua Podolak Szymon Rusinkiewicz Princeton University. Outline. Problem Description Background Algorithm Results. Motivation. Scanners usually need two unobstructed lines of sight between the cameras and the model

Download Presentation

Atomic Volumes for Mesh Completion

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Atomic Volumes for Mesh Completion Joshua Podolak Szymon Rusinkiewicz Princeton University

  2. Outline • Problem Description • Background • Algorithm • Results

  3. Motivation • Scanners usually need two unobstructed lines of sight between the cameras and the model • Even with multiple scans, there are areas containing no depth information that need to be filled

  4. Filling Holes Holes bounded by ring of half-edges.

  5. Triangulate? Holes bounded by ring of half-edges. In simple cases, it is sufficient to create a patch by triangulating the half-edge loops around the holes.

  6. Challenge Triangulation is not enough.

  7. Challenge Triangulation is not enough.

  8. Talk Overview • Problem Description • Background • Algorithm • Results

  9. Related Work • Point cloud reconstruction [Amenta01, Kolluri04] • Half-edge boundary triangulation [Berg97, Liepa03] • Implicit hole filling [Curless96, Davis02, Masuda04, Ju04, Sharf04] • Volumetric hole filling [Murali97]

  10. Related Work • Point cloud reconstruction [Amenta01, Kolluri04] • Half-edge boundary triangulation [Berg97, Liepa03] • Implicit hole filling [Curless96, Davis02, Masuda04, Ju04, Sharf04] • Volumetric hole filling [Murali97]

  11. Related Work • Point cloud reconstruction [Amenta01, Kolluri04] • Half-edge boundary triangulation [Berg97, Liepa03] • Implicit hole filling [Curless96, Davis02, Masuda04, Ju04, Sharf04] • Volumetric hole filling [Murali97]

  12. Related Work • Point cloud reconstruction [Amenta01, Kolluri04] • Half-edge boundary triangulation [Berg97, Liepa03] • Implicit hole filling [Curless96, Davis02, Masuda04, Ju04, Sharf04] • Volumetric hole filling [Murali97]

  13. Talk Overview • Problem Description • Background • Algorithm • Results

  14. Definition: Atomic Volume A volume is atomic if it cannot be intersected by the surface of the model. An atomic volume must be either completely inside or completely outside the model. 2 atomic volumes

  15. Overview of Approach • Divide all of space into atomic volumes. • Regions of space that will either be wholly in or wholly out of the reconstructed solid. • For each atomic volume, decide whether it is inside the mesh or outside. • The boundary between interior volumes and exterior volumes is the new surface.

  16. Step 1: Spatial Partitioning

  17. Step 1: Spatial Partitioning Blank cubes do not contain any part of the input model. Blank Region Blank cubes

  18. Step 1: Spatial Partitioning Inside/Outside (IO): Cubes containing elements of the surface away from the holes. Blank Region In Region Out Region IO cubes

  19. Step 1: Spatial Partitioning Hole cubes are subdivided until they can be trivially triangulated [Mitchell92]. Blank Region In Region Out Region Hole cubes Hole Region

  20. Step 2: Label Assignment • Most of the volumes can be labeled as inside or outside based on the normals of the input mesh. • Filling the hole requires labeling the remaining volumes as inside and outside. Inside Outside

  21. Step 2: Label Assignment • Atomic volumes correspond to nodes in the graph with edges between neighboring volumes.

  22. Step 2: Label Assignment • Atomic volumes correspond to nodes in the graph with edges between neighboring volumes. • Atomic volumes on either side of a surface are not connected.

  23. Step 2: Label Assignment • Atomic volumes corresponds nodes in the graph with edges between neighboring volumes. • Atomic volumes on either side of a surface are not connected. • The mesh graph can be split into two disjoint sub graphs.

  24. In Region Mesh Graph Blank Region Out Region Hole Region Blank cube

  25. Blank Region In Region Out Region Hole Region Mesh Graph I/O cube

  26. Blank Region In Region Out Region Hole Region Mesh Graph Hole cube

  27. Blank Region In Region Out Region Hole Region Mesh Graph • In a watertight surface, there can be no path between inside and outside nodes.

  28. Step 2: Label Assignment • Splitting the graph into two sub graphs is equivalent to labeling each of the atomic volumes. • Initially labeled atomic volumes must retain original labeling.

  29. Labeling Volumes • Minimum Cut • Add source and sink nodes. • Constraint edges have a weight of infinity. Sink (outside) Source (inside) Constraint edges

  30. Blank Region In Region Out Region Hole Region Creating Patch • Every edge cut in the graph corresponds to a surface added to the model.

  31. Topological Control • A graph allows adding additional constraints based on other sources of information such as Space Carving, Shadow Carving, or direct user input. • Adding an edge with weight infinity between an atomic volume to the sink node constrains that volume to be outside the model. • Atomic volumes containing points with contradicting constraints may be subdivided.

  32. Unconstrained solution Initial mesh Constrained solution Topological Control • In the figure on the right, points are added manually to indicate that the space between the two toes is outside.

  33. Blank Region In Region Out Region Hole Region Smoothing • Big atomic volumes cause faceting of the surface. • We introduce a smoothing step to address faceting.

  34. Smoothing • Big atomic volumes cause faceting of the surface. • We introduce a smoothing step to address faceting.

  35. Smoothing • Big atomic volumes cause faceting of the surface. • We introduce a smoothing step to address faceting. Unsmoothed Smoothed

  36. Smoothing Coarse smoothing will changes the labeling of entire atomic volumes. Fine smoothing keeps the topology of the mesh graph constant, but allows the boundary between adjacent atomic volumes to change. Smoothed Unsmoothed

  37. Smoothing Constrained Laplacian Smoothing. We do not move vertices that cause the mesh graph to change. Result after five iterations

  38. Talk Overview • Problem Description • Background • Related Work • Volumetric Representation • Algorithm • Results

  39. Results Half-torus filled with two different patches. Cross section of spiral torus.

  40. Results Bunny: 70k faces. 78 sec. Angel: 350k faces. 15 min.

  41. Conclusions • Atomic Volumes is a discrete volumetric method for mesh completion. • The use of an adaptive subdivision of space allows the algorithm to focus on target areas. • Using a mesh-graph provides flexibility in determining the patch.

  42. Future Work • Soft constraints. • Advanced smoothing. • Flexible atomic volumes. • Thin plate energy. • Texture Synthesis. • Signal processing. • Localized filtering. • Deformation.

  43. Thank you

  44. Mesh Graph • A mesh graph contains a node for each atomic volume. • An edge between neighboring atomic volumes represents the strength of the belief that they will be labeled similarly.

More Related