460 likes | 544 Views
Discover the essence of topology in computer graphics. Learn how to determine and enforce connectivity for various applications like morphing, texturing, and compression. Gain insights into reconstructing shapes from point samples using computational techniques.
E N D
Computational Topology for Computer Graphics Klein bottle
What is Topology? • The topology of a space is the definition of a collection of sets (called the open sets) that include: • the space and the empty set • the union of any of the sets • the finite intersection of any of the sets • “Topological space is a set with the least structure necessary to define the concepts of nearness and continuity”
No, Really.What is Topology? • The study of properties of a shape that do not change under deformation • Rules of deformation • Onto (all of A all of B) • 1-1 correspondence (no overlap) • bicontinuous, (continuous both ways) • Can’t tear, join, poke/seal holes • A is homeomorphic to B
Why Topology? • What is the boundary of an object? • Are there holes in the object? • Is the object hollow? • If the object is transformed in some way, are the changes continuous or abrupt? • Is the object bounded, or does it extend infinitely far?
Why Do We (CG) Care? The study of connectedness • Understanding How connectivity happens? • Analysis How to determine connectivity? • Articulation How to describe connectivity? • Control How to enforce connectivity?
For Example How does connectedness affect… • Morphing • Texturing • Compression • Simplification
Problem: Mesh Reconstruction • Determines shape from point samples • Different coordinates, different shapes
Topological Properties • To uniquely determine the type of homeomorphism we need to know : • Surface is open or closed • Surface is orientable or not • Genus (number of holes) • Boundary components
Surfaces • How to define “surface”? • Surface is a space which ”locally looks like” a plane: • the set of zeroes of a polynomial equation in three variables in R3 is a 2D surface: x2+y2+z2=1
Surfaces and Manifolds • An n-manifold is a topological space that “locally looks like” the Euclidian space Rn • Topological space: set properties • Euclidian space: geometric/coordinates • A sphere is a 2-manifold • A circle is a 1-manifold
Open vs. Closed Surfaces • The points x having a neighborhood homeomorphic to R2 form Int(S) (interior) • The points y for which every neighborhood is homeomorphic to R20form ∂S (boundary) • A surface S is said to be closed if its boundary is empty
Orientability • A surface in R3 is called orientable, if it is possible to distinguish between its two sides (inside/outside above/below) • A non-orientable surface has a path which brings a traveler back to his starting point mirror-reversed (inverse normal)
Orientation by Triangulation • Any surface has a triangulation • Orient all triangles CW or CCW • Orientability: any two triangles sharing an edge have opposite directions on that edge.
Genus and holes • Genus of a surface is the maximal number of nonintersecting simple closed curves that can be drawn on the surface without separating it • The genus is equivalent to the number of holes or handles on the surface • Example: • Genus 0: point, line, sphere • Genus 1: torus, coffee cup • Genus 2: the symbols 8 and B
= 2 = 0 Euler characteristic function • Polyhedral decomposition of a surface (V = #vertices, E = #edges, F = #faces) (M) = V – E + F • If M has g holes and h boundary components then(M) = 2 – 2g – h • (M) is independent of the polygonization = 1
Summary: equivalence in R3 • Any orientable closed surface is topologically equivalent to a sphere with g handles attached to it • torus is equivalent to a sphere with one handle ( =0, g=1) • double torus is equivalent to a sphere with two handles ( =-2 , g=2)
Hard Problems… Dunking a Donut • Dunk the donut in the coffee! • Investigate the change in topology of the portion of the donut immersed in the coffee
Solution: Morse Theory Investigates the topology of a surface by the critical points of a real function on the surface • Critical point occur where the gradient f = (f/x, f/y,…) = 0 • Index of a critical point is # of principal directions where f decreases
Example: Dunking a Donut • Surface is a torus • Function f is height • Investigate topology of fh • Four critical points • Index 0 : minimum • Index 1 : saddle • Index 1 : saddle • Index 2 : maximum • Example: sphere has a function with only critical points as maximum and a minimum
How does it work? Algebraic Topology • Homotopy equivalence • topological spaces are varied, homeomorphisms give much too fine a classification to be useful… • Deformation retraction • Cells
~ ~ Homotopy equivalence • A ~ B There is a continuous map between A and B • Same number of components • Same number of holes • Not necessarily the same dimension • Homeomorphism Homotopy
~ ~ ~ ~ Deformation Retraction • Function that continuously reduces a set onto a subset • Any shape is homotopic to any of its deformation retracts • Skeleton is a deformation retract of the solids it defines
Cells • Cells are dimensional primitives • We attach cells at their boundaries 0-cell 1-cell 2-cell 3-cell
Morse function • f doesn’t have to be height – any Morse function would do • f is a Morse function on M if: • f is smooth • All critical points are isolated • All critical points are non-degenerate: • det(Hessian(p)) != 0
Critical Point Index • The index of a critical point is the number of negative eigenvalues of the Hessian: • 0 minimum • 1 saddle point • 2 maximum • Intuition: the number of independent directions in which f decreases ind=2 ind=1 ind=1 ind=0
If sweep doesn’t pass critical point[Milnor 1963] • Denote Ma = {p M | f(p) a} (the sweep region up to value a of f ) • Suppose f 1[a, b] is compact and doesn’t contain critical points of f. Then Ma is homeomorphic to Mb.
Mc Mc with -cell attached Sweep passes critical point[Milnor 1963] • p is critical point of f with index , is sufficiently small. Then Mc+has the same homotopy type as Mcwith -cell attached. Mc+ Mc ~ Mc+
What we learned so far • Topology describes properties of shape that are invariant under deformations • We can investigate topology by investigating critical points of Morse functions • And vice versa: looking at the topology of level sets (sweeps) of a Morse function, we can learn about its critical points
Reeb graphs • Schematic way to present a Morse function • Vertices of the graph are critical points • Arcs of the graph are connected components of the level sets of f, contracted to points 2 1 1 1 1 1 0 0
Reeb graphs and genus • The number of loops in the Reeb graph is equal to the surface genus • To count the loops, simplify the graph by contracting degree-1 vertices and removing degree-2 vertices degree-2
Discretized Reeb graph • Take the critical points and “samples” in between • Robust because we know that nothing happens between consecutive critical points
Reeb graphs for Shape Matching • Reeb graph encodes the behavior of a Morse function on the shape • Also tells us about the topology of the shape • Take a meaningful function and use its Reeb graph to compare between shapes!
Choose the right Morse function • The height function f (p) = z is not good enough – not rotational invariant • Not always a Morse function
Average geodesic distance • The idea of [Hilaga et al. 01]: use geodesic distance for the Morse function!
Multi-res Reeb graphs • Hilaga et al. use multiresolutional Reeb graphs to compare between shapes • Multiresolution hierarchy – by gradual contraction of vertices
Mesh Partitioning • Now we get to [Zhang et al. 03] • They use almost the same f as [Hilaga et al. 01] • Want to find features = long protrusions • Find local maxima of f !
Region growing • Start the sweep from global minimum (central point of the shape) • Add one triangle at a time – the one with smallest f • Record topology changes in the boundary of the sweep front – these are critical points
Critical points – genus-0 surface • Splitting saddle – when the front splits into two • Maximum – when one front boundary component vanishes min splitting saddle max max