• Tidak ada hasil yang ditemukan

COMPUTATIONAL TOPOLOGY ALGORITHMS FOR DISCRETE 2-MANIFOLDS

N/A
N/A
Protected

Academic year: 2023

Membagikan "COMPUTATIONAL TOPOLOGY ALGORITHMS FOR DISCRETE 2-MANIFOLDS"

Copied!
110
0
0

Teks penuh

Cricket's sound advice, smile and support from her and Paul helped me through so many difficult times. To build a model of the coffee mug, you would have needed to start with silly putty in a donut shape, not a round ball.

General setting

In the previous example of the coffee cup and the brain, the coffee cup is genus 1 and the brain is genus zero. A non-separating cycle is shown on the coffee cup handle (dashed yellow cycle).

Figure 1.1: Examples of geometric models used for various applications
Figure 1.1: Examples of geometric models used for various applications

Framework and motivation

The interplay of geometry and topology

This interplay of geometry and topology is inherent in the discrete nature of surfaces used in computer graphics. However, this number alone does not provide a complete picture of the surface topology.

Figure 1.4: Buddha with excess topology
Figure 1.4: Buddha with excess topology

Introduction to the algorithms

Localizing and coding topology

However, there is a direct relationship between topology and surface geometry that cannot be ignored. Surface handles are encoded in an extended Reeb graph, allowing easy identification and isolation within a surface.

Measuring feature size

On the left is a figure of an extended Reeb graph used to identify handles and the corresponding handle on the surface. On the right is a close-up of some of the 104 handles on the Buddha statue highlighted in red.

Re-sampling topology: preserving genus and simplifying genus

The image on the left shows two possible inseparable cycles on the torus, while the image on the right shows two actual discrete inseparable cycles found on the geometric model of the torus. We have developed methods to simplify the topology for both the mesh setup and the volume setup, each tailored for its own setup.

Brief discussion of the applications

Isosurface topology simplification

These algorithms can be used together to build applications that improve the utility and accuracy of geometric models. The image on the left shows that the fine detailed geometry of the model is not changed to simplify the topology.

Mesh topology simplification/Topological noise removal

Semi-regular mesh extraction from volume data

Adaptive refinement constructs a better and better fit with a mesh of semi-regular (subdivision) connectivity and an explicit multi-resolution structure (bottom). To extract a semi-regular mesh, we need to start with a coarse base mesh with the same global topology as the desired isosurface.

Contributions

The locally minimum-length non-separating cycles are effectively detected for handles on the surface. This targeted approach to changing the topology preserves the fine geometry of the surface as much as possible.

Acquired Data

Summary

  • Simplicial complexes
  • Triangle meshes
  • Scalar volumes
  • Surfaces as graphs

The sign of the distance encodes whether the vertex is inside or outside the surface. Without loss of generality, we assume that the surface of interest is the zero volume isocontour.

Figure 2.1: Scalar volume
Figure 2.1: Scalar volume

Topology

  • Historical and mathematical context
  • Morse theory
  • Reeb graphs
  • Some useful definitions
  • Morse theory
  • Reeb graphs

One of the key tools used to study the topology of spaces is Morse theory. More precisely, the number of critical points is equivalent to the Euler property of the surface: χ= #minima−#saddle points+ #maxima.

Figure 2.3: Critical points for a function of two variables
Figure 2.3: Critical points for a function of two variables

Cutting meshes open

Cut graphs

Polygonal schema

Given two initial non-separating loops on a torus, their method could be used to tighten the loops to the shortest length. This algorithm could be used as an alternative to our proposed method to find the shortest non-disjoint cycles, given an initial pair of cycles. Both methods make use of tiling the surface (also called a universal covering) to find the shortest path, and both methods compute the loops in polynomial time.

However, our method generates two non-separating cycles of shorter length for each local handle, while the method of Colin de Verdi`ere and Lazarus can be used to tighten existing rings.

Topology simplification

Mesh-based topology simplification

We also present an improved topology simplification method for meshes and an algorithm to operate on the volume data, since an isosurface will always remain a manifold even after topological repair is applied to the volume data. Methods that measure handles by only evaluating the area within a ball or sphere will not detect long thin handles (except when using large ones).

Volume-based topology simplification

Model simplification

Methods that measure handles by only evaluating the area within a ball or sphere will not detect long thin handles (except when using large ones). . finer detailed geometry will disappear). These methods can result in non-multiple structures that would impede parameterization just as much as the original topological artifacts. In addition, because these methods simultaneously simplify geometry and topology, the removal of topological artifacts invariably involves loss of geometric detail.

Computational topology for computer graphics

Genus is a global invariant for the surface and its scalar value gives us one measure of the complexity of the surface, (eg a genus zero shape is much less complex than a surface withg = 100). For the field of computer graphics, great care is taken with the geometry of a surface, since the geometry plays such an important role in determining the appearance of a surface. For example, let us return to the question of computing the genus of a discrete 2-manifold.

During the reconstruction, we want to be able to choose to keep or simplify topological features of the re-sampled surface.

Localizing topology

  • Identifying topology
    • Morse functions
    • Height function and immersion
    • Face-by-face traversal
    • Constructing level sets
    • Intra-ribbon handles
  • Coding the topology
    • Reeb graph
    • Augmented Reeb graph
    • Contour construction
    • Ribbon construction
    • Asserting Reeb graph consistency
  • Detecting handles
  • Isolating handles
    • Combinatorial considerations
    • Pseudo-code for detection and isolation

There is a direct correlation with the level sets of a surface changing and changes in the topology of the surface. In the discrete setting, we will only construct level sets necessary to capture all the topology of the surface. Such a construction results in a Reeb graph where each cycle corresponds to a handle on the surface.

Each of the handles that we consider corresponds to a cycle in the extended Reeb graph.

Figure 4.1: Handle decomposition
Figure 4.1: Handle decomposition

Measuring feature size

Problem statement

To find the minimal length Reeb loop (shown in blue), we need to explore all pairs of child contours with the same component label (i.e. {c1, c2},{c1, c3}and{c2, c3}where the minimum -length Reeb loop is associated with {c1, c2}).

Loops

Overview: two non-separating cycles

  • General idea
  • Shortest cycles
  • Measure of handle sizes
  • Measurement alternatives

We construct a non-separating cycle of locally shortest length that follows the Reeb cycle by computing the shortest path from one side of such a contour to the other. In the cylinder this corresponds to calculating the shortest path from the top of the cylinder to the bottom. After running these two passes of the shortest path algorithm, we have found two non-separating transverse cycles of shortest length for the torus.

Number of tilings We can prove that we only need a limited number of tilings of the handle to find the shortest path.

Figure 4.14: Reeb loop
Figure 4.14: Reeb loop

Resampling topology

Handle removal

  • Triangle meshes
  • Volume
  • Considerations

First, let's consider re-sampling the surface topology to remove excess handles. To remove one of the handles from Figure 4.17, we reduce the number of non-separating cycles for the surface. By collapsing a non-separating cycle, we conceptually fill up the inside of a handle, or squeeze the handle open (Figure 4.17), reducing the sex of the surface.

Topologically, the handle can always be closed along this loop, reducing the genus of the model.

Figure 4.18: Loops on the feline mesh
Figure 4.18: Loops on the feline mesh

Handle retention

Coarse Mesh Construction Details The Reeb graph provides everything needed to construct a coarse mesh from a discrete set of level sets. Specifically, by carefully choosing which level sets to include in the reconstruction and then stitching the level sets together, a rough sampling of the surface can be constructed. The desired coarseness of the mesh can be controlled by adding criteria for contour selection.

Two views of some of the distance contours (at multiples of an integer distance) for the cat dataset.

Figure 4.19: Distance function on the feline
Figure 4.19: Distance function on the feline

Conclusion

On the left is a close-up of the cat's tail, showing an accurate reconstruction of the two gloves. With the algorithms presented in Chapter 4 we are able to build a variety of applications to improve the usability and accuracy of digital models for computer graphics applications. Once these scans have been obtained, surface reconstruction is applied and the model is represented as a discrete 2-manifold.

Thus, many of the acquired surface models used in computer graphics are either represented in a scalar volume or as a triangulated manifold.

Simplifying topology

In volumes

  • Our approach
  • Locating handles
  • Measuring topological handle size
  • Removing handles
  • Results and discussion
  • Applications
  • Discussion
  • Summary

Generally, we use the smaller of the two cycles as a measure of handle size. This length corresponds to the extent of the cut along the surface required for loop closure. The timing of our algorithm depends on the size of the volume and on the number of handles.

For most of the models, the excess topology has loop lengths in the range 4–8.

Table 5.1: Results table
Table 5.1: Results table

For meshes

  • Topological noise removal for meshes
  • Overview of the algorithm
  • Algorithm
  • Region growing
  • Cutting the mesh
  • Global procedure and preprocessing
  • Results
  • Conclusions

To find small handles, we keep track of the level sets within the ball. After excluding a common tail of these two paths, we have a closed path in the dual graph of the active region. Note that this path is entirely within the currently active mesh area.

These large areas are seeded in the preprocessing step on randomly selected faces of the original mesh (in practice, taking a percentage of the original number of faces gives good results).

Figure 5.11: Handle detection and removal
Figure 5.11: Handle detection and removal

Mesh topology simplification revisited

This is due to the fact that the smoothing operators cannot modify the mesh topology and the presence of these small handles impairs the smoothing process by limiting its effects. After the strip and contour construction, the proximity of the contours and strips to the surface are used to determine the correct edges to add to the augmented Reeb plot. After processing the distance contours and adding all appropriate edges to the augmented Reeb graph, we check for critical levels of the distance function.

Global traversal and extended Reeb graph ensure that we will find every topology present in the network, and locally minimum length inseparable cycles provide a more accurate measure of handle sizes.

Hierarchical surface reconstruction

In volumes

  • Motivation
  • Coarse mesh extraction
  • Distance function propagation and Reeb graph
  • Mesh construction from the Reeb graph
  • Discussion

As each contour is constructed, the appropriate edges of the Reeb graph are added to the preceding contours. One of the advantages of this approach is the low memory overhead for the Reeb chart view. In the case of an O(n3) volume, the storage requirement for propagating the distance function is O(n2), as it depends on the size of the surface.

The only other data we need to store for generating the coarse mesh depends on the contours in the Reeb plot and isO(n).

Figure 5.16: Example of a surfel and following its active edges
Figure 5.16: Example of a surfel and following its active edges

Conclusion

The handles can subsequently be efficiently identified during the traversal of the surface as cycles in the extended Reeb graph as it is incrementally built up (see next section). Additionally, we guarantee that the number of cycles in the extended Reeb graph for each interval matches the genus of the surface traversed so far. Geometric properties of the surface are encoded in the extended Reeb graph, which allows isolating geometrically concise handles within the original surface.

Using the smaller of the two non-separating cycles for each handle changes the topology of the surface only in a small local area.

Future explorations

Examples of geometric models used for various applications

Coffee cup and brain

Close-up view of an extraneous handle

Buddha with excess topology

Localizing a handle

Example of non-separating cycles

Progressive mesh of the David head

Overview of semi-regular mesh extraction

Scalar volume

Voxel

Critical points for a function of two variables

Illustration of height planes on a sphere and torus

Critical points and height planes

Torus and example Reeb graph

The star of two different vertices

A grounded simplex

Two different sized handles

Handle decomposition

Example saddle points

Example of immersion

Face-by-face operations

Example of an intra-ribbon handle

Ambiguous change in two level sets

Arbitrary sampling

Isosurface and Reeb graph

Example Reeb graphs

Isolating handles

Example of finding a Reeb cycle

Two holed torus

Canonical generator loops

Reeb loop

Example of loops on a handle

Possible tilings of a handle

Handle removal

Loops on the feline mesh

Distance function on the feline

Stitching

Examples of coarse meshes

Genus zero Buddha

Progressive meshes of a brain

A remesh of the genus one dragon

Geometry image of the genus one dragon

Labeled cortex models

Texture map comparison

Histogram

Scatterplot

Progressive meshes of dragon

Topological noise removal overview

Handle detection and removal

Cutting the mesh

Smoothing result

Texture mapped ear

Example of a series of semi-regular meshes

Example of a surfel and following its active edges

Distance function propogation on a surfel

Gambar

Figure 1.1: Examples of geometric models used for various applications
Figure 1.2: Coffee cup and brain
Figure 1.3: Close-up view of an extraneous handle
Figure 1.4: Buddha with excess topology
+7

Referensi

Dokumen terkait

Khoury Iraqi and Syrian Refugees in Jordan Adjusting to Displacement: Comparing their Expectations towards UNHCR and their Capacities to use their Educational Assets Géraldine