Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary
Reeb Graphs and Piecewise Linear Functions Koen Klaren Eindhoven - - PowerPoint PPT Presentation
Reeb Graphs and Piecewise Linear Functions Koen Klaren Eindhoven - - PowerPoint PPT Presentation
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Reeb Graphs and Piecewise Linear Functions Koen Klaren Eindhoven University of Technology Seminar Algorithms, 2018 Reeb graphs Piecewise linear functions Constructing
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary
Outline
1 Reeb graphs 2 Piecewise linear functions 3 Constructing Reeb graphs
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Outline
1 Reeb graphs
Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
2 Piecewise linear functions 3 Constructing Reeb graphs
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Motivation for Reeb graphs
Make the structure of a function explicit by visualizing the evolution of the components of the level set
Reeb graph
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Motivation for Reeb graphs
Make the structure of a function explicit by visualizing the evolution of the components of the level set Accelerate extraction of isosurfaces (level sets)
Reeb graph Isosurface extraction
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Motivation for Reeb graphs
Make the structure of a function explicit by visualizing the evolution of the components of the level set Accelerate extraction of isosurfaces (level sets) Applications in medical imaging and other areas of science and engineering
Reeb graph Isosurface extraction
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Outline
1 Reeb graphs
Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
2 Piecewise linear functions 3 Constructing Reeb graphs
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Definition of contours
Given a continuous map f : X → R, the level sets form a partition
- f topological space X
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Definition of contours
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Definition of contours
Given a continuous map f : X → R, the level sets form a partition
- f topological space X
Definition Two points x, y ∈ X are called equivalent if they belong to a common component in a level set of f
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Definition of contours
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Definition of contours
Given a continuous map f : X → R, the level sets form a partition
- f topological space X
Definition Two points x, y ∈ X are called equivalent if they belong to a common component in a level set of f Definition Defined equivalence classes are the contours of f
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Definition of contours
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Definition of Reeb graphs
Definition The Reeb graph of f is the set of contours R(f).
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Definition of Reeb graphs
Definition The Reeb graph of f is the set of contours R(f).
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Definition of Reeb graphs
We started with only the continuous map f. Where does the Reeb graph fit in? X R
f ψ π
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Definition of Reeb graphs
Let ψ: X → R(f) be the function that maps a point x to the contour ψ(x) that contains it: X R R(f)
f ψ π
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Definition of Reeb graphs
Let π: R(f) → R be the unique map whose composition with ψ is f: X R R(f)
f ψ π
π(ψ(x)) = f(x)
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Definition of Reeb graphs
This speeds up construction of a level set, f−1(a). We can use π−1(a) to find contours r ∈ R(f) that form the level set. X R R(f)
f ψ π
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Outline
1 Reeb graphs
Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
2 Piecewise linear functions 3 Constructing Reeb graphs
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Properties of Reeb graphs
Connected components
Function ψ: X → R(f) maps components to components
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Properties of Reeb graphs
Connected components
Function ψ: X → R(f) maps components to components Expressed in terms of Betti numbers, we get: β0(R(f)) = β0(X)
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Properties of Reeb graphs
1-dimensional connectivity
In some cases the Reeb graph reflects the 1-dimensional connectivity of the space
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Properties of Reeb graphs
1-dimensional connectivity
In some cases the Reeb graph reflects the 1-dimensional connectivity of the space A 1-cycle in R(f) is called a loop The preimage of a loop is non-contractible in X Different loops correspond to non-homologous 1-cycles in X
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Properties of Reeb graphs
1-dimensional connectivity
In some cases the Reeb graph reflects the 1-dimensional connectivity of the space A 1-cycle in R(f) is called a loop The preimage of a loop is non-contractible in X Different loops correspond to non-homologous 1-cycles in X Expressed in terms of Betti numbers, we get: β1(R(f)) ≤ β1(X)
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Properties of Reeb graphs
Contour tree
From these properties: β0(R(f)) = β0(X) β1(R(f)) ≤ β1(X) it follows that if X is contractible then R(f) is a tree, independent of the function f Because of this R(f) is sometimes called a contour tree
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Outline
1 Reeb graphs
Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
2 Piecewise linear functions 3 Constructing Reeb graphs
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Reeb graphs of Morse functions
More can be said if X = M is a manifold of dimension d ≥ 2 and f : M → R is a Morse function
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Reeb graphs of Morse functions
More can be said if X = M is a manifold of dimension d ≥ 2 and f : M → R is a Morse function Recall that each point r ∈ R(f) is the image of a contour in M Call r a node if it is the image of a critical point under ψ The other points form arcs that connect the nodes
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Reeb graphs of Morse functions
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Reeb graphs of Morse functions
More can be said if X = M is a manifold of dimension d ≥ 2 and f : M → R is a Morse function Recall that each point r ∈ R(f) is the image of a contour in M Call r a node if it is the image of a critical point under ψ The other points form arcs that connect the nodes By definition of Morse functions, this implies a bijection between the critical points of f and the nodes of R(f)
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Bijection between critical points and nodes
Minimum starts a contour and thus corresponds to a degree
- ne node
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Bijection between critical points and nodes
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Bijection between critical points and nodes
Minimum starts a contour and thus corresponds to a degree
- ne node
Index 1 saddle that merges two contours into one corresponds to a degree three node
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Bijection between critical points and nodes
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Bijection between critical points and nodes
Minimum starts a contour and thus corresponds to a degree
- ne node
Index 1 saddle that merges two contours into one corresponds to a degree three node Index d − 1 saddle that splits a contour into two corresponds to a degree three node
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Bijection between critical points and nodes
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Bijection between critical points and nodes
Minimum starts a contour and thus corresponds to a degree
- ne node
Index 1 saddle that merges two contours into one corresponds to a degree three node Index d − 1 saddle that splits a contour into two corresponds to a degree three node Maximum closes a contour and thus corresponds to a degree
- ne node
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Bijection between critical points and nodes
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definitions Properties of Reeb graphs Reeb graphs of Morse functions
Bijection between critical points and nodes
Minimum starts a contour and thus corresponds to a degree
- ne node
Index 1 saddle that merges two contours into one corresponds to a degree three node Index d − 1 saddle that splits a contour into two corresponds to a degree three node Maximum closes a contour and thus corresponds to a degree
- ne node
All other critical points correspond to nodes of degree two
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Outline
1 Reeb graphs 2 Piecewise linear functions
Motivation Definition of PL functions Lower star filtration PL Morse functions
3 Constructing Reeb graphs
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Motivation for piecewise linear (PL) functions
Functions are rarely smooth in practical situations
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Motivation for piecewise linear (PL) functions
Functions are rarely smooth in practical situations Instead we have non-smooth functions that approximate smooth ones
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Motivation for piecewise linear (PL) functions
Functions are rarely smooth in practical situations Instead we have non-smooth functions that approximate smooth ones Thus we introduce piecewise linear (PL) functions
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Outline
1 Reeb graphs 2 Piecewise linear functions
Motivation Definition of PL functions Lower star filtration PL Morse functions
3 Constructing Reeb graphs
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Definition of PL functions
Let K be a simplicial complex with real values specified at all
- vertices. Using linear extension over the simplices, we obtain a
piecewise linear (PL) function f : |K| → R.
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Genericity
Assume that f is generic, meaning that all vertices have distinct function values
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Genericity
Assume that f is generic, meaning that all vertices have distinct function values Now the vertices can be ordered by increasing function value: f(u1) < f(u2) < . . . < f(un)
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Genericity
Assume that f is generic, meaning that all vertices have distinct function values Now the vertices can be ordered by increasing function value: f(u1) < f(u2) < . . . < f(un) Let Ki be the full subcomplex defined by the first i vertices
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Outline
1 Reeb graphs 2 Piecewise linear functions
Motivation Definition of PL functions Lower star filtration PL Morse functions
3 Constructing Reeb graphs
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Lower star filtration
Recall that the star of a vertex ui is the set of cofaces of ui in K Definition The lower star is the subset of simplices in the star of ui for which ui is the vertex with maximum function value: St ui = {σ ∈ St ui | x ∈ σ ⇒ f(x) ≤ f(ui)}
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Lower star filtration
By assumption of genericity, each simplex has a unique maximum vertex and thus belongs to a unique lower star
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Lower star filtration
By assumption of genericity, each simplex has a unique maximum vertex and thus belongs to a unique lower star It follows that the lower stars partition K. Also, Ki is the union of the first i lower stars.
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Lower star filtration
By assumption of genericity, each simplex has a unique maximum vertex and thus belongs to a unique lower star It follows that the lower stars partition K. Also, Ki is the union of the first i lower stars. This nested sequence of subcomplexes is thus called the lower star filtration of f: ∅ = K0 ⊆ K1 ⊆ . . . ⊆ Kn = K
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Outline
1 Reeb graphs 2 Piecewise linear functions
Motivation Definition of PL functions Lower star filtration PL Morse functions
3 Constructing Reeb graphs
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
Lower link
Recall that the link of a vertex ui is the set of simplices in the closed star that do not belong to the star Definition The lower link is the set of simplices in the closed lower star that do not belong to the lower star: Lk ui = {σ ∈ Lk ui | x ∈ σ ⇒ f(x) < f(ui)}
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
PL critical points
As we go from Ki−1 to Ki we attach the closed lower star of ui, gluing it along the lower link to the complex Ki−1
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
PL critical points
As we go from Ki−1 to Ki we attach the closed lower star of ui, gluing it along the lower link to the complex Ki−1 Homology of the lower link is used to classify vertices
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
PL critical points
Regular
Call ui a PL regular vertex if its lower link is non-empty but homologically trivial
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
PL critical points
Regular Critical (q = 0)
Call ui a PL regular vertex if its lower link is non-empty but homologically trivial Call ui a simple PL critical vertex of index q if its lower link has the reduced homology of the (q − 1)-sphere
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
PL critical points
Regular Critical (q = 0) Critical (q = 1)
Call ui a PL regular vertex if its lower link is non-empty but homologically trivial Call ui a simple PL critical vertex of index q if its lower link has the reduced homology of the (q − 1)-sphere
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
PL critical points
Regular Critical (q = 0) Critical (q = 1) Critical (q = 2)
Call ui a PL regular vertex if its lower link is non-empty but homologically trivial Call ui a simple PL critical vertex of index q if its lower link has the reduced homology of the (q − 1)-sphere
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Motivation Definition of PL functions Lower star filtration PL Morse functions
PL Morse functions
Definition We call a PL function f : |K| → R on a manifold a PL Morse function if:
1 Each vertex is either PL regular or simple PL critical 2 The function values of the vertices are distinct
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Outline
1 Reeb graphs 2 Piecewise linear functions 3 Constructing Reeb graphs
Sketch of the algorithm Running time
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Constructing a Reeb graph
Problem: Construct a Reeb graph of a function on a 2-manifold. We assume M is triangulated and the function f : M → R is PL Morse.
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Constructing a Reeb graph
Problem: Construct a Reeb graph of a function on a 2-manifold. We assume M is triangulated and the function f : M → R is PL Morse. Remember we can order the vertices of M: f(u1) < f(u2) < . . . < f(un)
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Constructing a Reeb graph
Problem: Construct a Reeb graph of a function on a 2-manifold. We assume M is triangulated and the function f : M → R is PL Morse. Remember we can order the vertices of M: f(u1) < f(u2) < . . . < f(un) We can use a plane sweep algorithm!
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Constructing a Reeb graph
Problem: Construct a Reeb graph of a function on a 2-manifold. We assume M is triangulated and the function f : M → R is PL Morse. Remember we can order the vertices of M: f(u1) < f(u2) < . . . < f(un) We can use a plane sweep algorithm! Status is the set of contours at the current level Events take place at each of the vertices
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Event handling
Four cases:
1 ui is a minimum: add a degree one node to the Reeb graph.
Start a new arc associated with the new contour.
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Event handling
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Event handling
Four cases:
1 ui is a minimum: add a degree one node to the Reeb graph.
Start a new arc associated with the new contour.
2 ui is a regular vertex: update the associated contour in the
status.
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Event handling
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Event handling
Four cases:
1 ui is a minimum: add a degree one node to the Reeb graph.
Start a new arc associated with the new contour.
2 ui is a regular vertex: update the associated contour in the
status.
3 ui is a saddle: three different cases depending on the index.
Usually merge/split contours in the status and add a degree three node to the Reeb graph.
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Event handling
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Event handling
Four cases:
1 ui is a minimum: add a degree one node to the Reeb graph.
Start a new arc associated with the new contour.
2 ui is a regular vertex: update the associated contour in the
status.
3 ui is a saddle: three different cases depending on the index.
Usually merge/split contours in the status and add a degree three node to the Reeb graph.
4 ui is a maximum: Remove contour from the status and add a
degree one node to the Reeb graph.
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Event handling
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Outline
1 Reeb graphs 2 Piecewise linear functions 3 Constructing Reeb graphs
Sketch of the algorithm Running time
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Running time
Implement the contour status using cyclic lists in a balanced search tree
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Running time
Implement the contour status using cyclic lists in a balanced search tree This data structure supports all required operations in O(log2 m) time, where m is the number of edges in M
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary Sketch of the algorithm Running time
Running time
Implement the contour status using cyclic lists in a balanced search tree This data structure supports all required operations in O(log2 m) time, where m is the number of edges in M Thus the algorithm constructs a Reeb graph in O(m log2 m) time
Reeb graphs Piecewise linear functions Constructing Reeb graphs Summary