93
Review of Texture-based Methods Employs texture synthesis and image processing techniques to provide global, continuous, dense, and visually pleasing representations without constructing intermediate geometry. LIC family is the most popular texture-based technique IBFV is an easy but flexible technique Both can be extended to (2.5D) surface flow visualization IBFV is more computationally efficient than LIC Extending to 3D volumetric data visualization is challenging

Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Embed Size (px)

Citation preview

Page 1: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Review of Texture-based Methods

• Employs texture synthesis and image processing techniques to

provide global, continuous, dense, and visually pleasing

representations without constructing intermediate geometry.

• LIC family is the most popular texture-based technique

• IBFV is an easy but flexible technique

• Both can be extended to (2.5D) surface flow visualization

• IBFV is more computationally efficient than LIC

• Extending to 3D volumetric data visualization is challenging

Page 2: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

white noise (fine sand)flow field (wind)

� A low-pass filter is applied to white noise along pixel-

centered bi-directionally symmetric streamlines to exploit

spatial correlation in the flow direction — anisotropic low-

pass filtering along flow lines (Cabral and Leedom SigGraph93)

� LIC synthesizes an image, providing a dense representation

analogous to the pattern of an area of wind-blown sand

⊕convolution

(blow)

� Line Integral Convolution (LIC)

LIC image (pattern)

Page 3: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

a point in the flow

field — the counterpart of

a pixel in the output LIC image

d( ρ(τ) ) / d τ = υ( ρ(τ) )

ρ(τ+∆τ) = ρ(τ) + ∫ττ +∆τ υ(ρ(τ))dτ

locate a set of

pixels hit by

the streamline

index the input

noise for the

texture values

obtain the value of

the target pixel in the LIC

image via texture convolution

� Pipelineυ( ρ(τ) )

ρ(τ + dτ)

ρ(τ)

∑ ( texture[i] × weight[i] )

∑ weight[i]

weighting is governed

by a low-pass filter

Page 4: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

IBFV

Image source: van Wijk

http://www.win.tue.nl/~vanwijk/ibfv/

Page 5: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Texture-based Methods on Surfaces

Surface LIC (Detlev Stalling, ZIB, Germany)

IBFVS ISA

Page 6: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Volumetric Texture

Page 7: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

7

http://cs.swan.ac.uk/~csbob/te

aching/csM07-vis/

Arrows vs. Streamlines vs. Textures

Streamlines: selective

Arrows: simple

Textures: 2D-filling

Page 8: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Additional reading

• Helwig Hauser, Robert S. Laramee, Helmut Doleisch, Frits H. Post, and Benjamin Vrolijk, The State of the Art in Flow Visualization: Direct, Texture-based, and Geometric Techniques, TR-VRVis-2002-046 Technical Report, VRVis Research Center, Vienna, Austria, December 2002.

• Robert S. Laramee, Helwig Hauser, Helmut Doleisch, Benjamin Vrolijk, Frits H. Post, and Daniel Weiskopf,The State of the Art in Flow Visualization: Dense and Texture-Based Techniques. in Computer Graphics Forum (CGF), Vol. 23, No. 2, 2004, pages 203-221.

Page 9: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Vector Field Visualization:

Feature-based

Page 10: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

What features are in flows

Page 11: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Vector Field Gradient

• Consider a vector field

����� = � � = � �, , � =

� ����

• Its gradient is

∇� =

�� ��

�� �

�� ��

�����

����

�����

�����

����

�����

It is also called the Jacobian matrix of the vector field.

Many feature detection for flow data relies on Jacobian

Page 12: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Divergence and Curl• Divergence- measures the magnitude of outward flux through

a small volume around a point

���� = ∇ ∙ � =�� ��

+����

+�����

� =�

��

��

• Curl- describes the infinitesimal rotation around a point

����� = � × � =����

−�����

�� ��

−�����

�����

−�� �

� ∙ (� × �) = 0� × (∇∅) = 0

Page 13: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Helmholtz decomposition

� = ∇" + � × #

Hodge decomposition

� = �" + � × # + $

Curl (or rotation) free Divergence free

Curl (or

rotation) free

Divergence

freeHarmonic

Page 14: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Helmholtz decomposition

curl-free divergence-freeneither

Page 15: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Vortices

Source:

http://www.onera.fr/cahierdelabo/english/aerod_ind03.htm

Post et al. STAR report 2003

Post et al. STAR report 2003

Page 16: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Separation Flows

Separation flow on delta wing surface [Tricoche et al. AIAA 2004]

Page 17: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

2D Vector Fields

• Assume a 2D vector field

����� = � � = � �, =

� ��

=%� + & + ��� + ' + �

• Its Jacobian is

�� =

�� ��

�� �

�����

����

= % &� '

• Divergence is % + '

• Curl is b − d

Given a vector field defined on a discrete mesh, it is important

to compute the coefficients a, b, c, d, e, f for later analysis.

Page 18: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

(�*, *)

(�+, +)

(�,, ,)

(��*, �*)

(��+, �+)

(��,, �,)

- �, =� ��

=%� + & + ��� + ' + �

��*�*

=%�* + &* + ���* + '* + �

Assume a piecewise linear vector field

We have

……

Solve for a linear system to get the coefficients

Page 19: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Vector Field Topology:

Introduction

Page 20: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Examples

Page 21: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

• Abstract representation of flow field

• Characterization of global flow structures

• Basic idea (steady case):

• Interpret flow in terms of streamlines

• Classify them w.r.t. their limit sets

• Determine regions of homogenous behavior

• Graph depiction

• Fast computation (not always)

Motivation

Page 22: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Let us focus on steady vector fields at this moment

Page 23: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Vector Fields (Recall)

• A vector field

– is a continuous vector-valued function V(x) on a

manifold X– can be expressed as a system of ODE ẋ = V(x)

– introduces a flow ϕ : R× X → X

Page 24: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Trajectories

• A trajectory of x∈X is ∪t∈Rϕ(t, x)

• Given an initial condition, there is a unique solution

x(t) = x0 + ∫0≤u≤t v(x(u)) duϕ(t0)= x0

• Under time-independent setting a trajectory is also called streamline

Page 25: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Fixed Points and Periodic Orbits

• A point x∈X is a fixed point if ϕ(t, x) = x for all t∈R

• x is a periodic point if there exist a T >0 such that ϕ(T, x) = x. The trajectory of a periodic point is called a

periodic orbit.

Page 26: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Limit Sets

• Limit sets reveal the long-term behaviors of

vector fields, correspond to flow recurrence

• The limit sets are:

α(x)=∩t<0 cl(ϕ((−∞, t), x))

ω(x)=∩t>0 cl(ϕ((t, ∞), x))

point (or curve) reached after forwardintegration by streamline seeded at x

point (or curve) reached after

backward integration by streamline

seeded at x

Page 27: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Repellor and Attractor Manifolds

Page 28: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Invariant Sets

• An invariant set S ⊂ X satisfies ϕ(R,S)=S– A trajectory is an invariant set

– Fixed points and periodic orbits are invariant sets

Page 29: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Fixed Points

We specifically consider first-order fixed points -> Jacobian is not degenerate

det 0 = %' − &� 1 0 -> Jacobian matrix is full rank

The eigenvalues of the Jacobian matrix λ0 = λ3 are

λ = 4'+,, + �56+,,

If both 4'+,, 7 0, the fixed point repels flow locally.

If both 4'+,, 8 0, the fixed point attracts flow locally.

If 4'+4', 8 0, it does both and is a saddle

If either4'+,, 1 0, the fixed point is called hyperbolic and stable.

If both 4'+,, = 0 and 56+,, 1 0, the fixed point is non-hyperbolic and unstable.

Page 30: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Fixed Point Extraction

• Assume piecewise linear vector field. We

adopt cell-wise analysis

– Solve linear / quadratic equation to determine

position of critical point in cell

– Compute Jacobian at that position

– Compute eigenvalues

– If type is saddle, compute eigenvectors

Page 31: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Poincaré Index

• Poincarè index I(ΓΓΓΓ, V) of a simple closed curve ΓΓΓΓ in the plane

relative to a continuous vector field is the number of the positive

field rotations while traveling along ΓΓΓΓ in positive direction.

[Tricoche Thesis2002]

• By continuity, always an integer• The index of a closed curve around multiple fixed points

will be the sum of the indices of the fixed points

Page 32: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Poincaré Index

• Poincaré index: sources

Page 33: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Poincaré Index

• Poincaré index: saddles

Page 34: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Important Poincaré Indices

• Consider an isolated fixed point x0, there is a neighborhood N enclosing x0 such that there are no other fixed points in N or on the boundary curve ∂N– if I(∂N, V) =1, x0 is either a source or a sink;

– if I(∂N, V) =-1, x0 is a saddle.

• The Poincarè index of a fixed point free region is 0

• There is a combinatorial theory that shows

21

heI

−+=

Page 35: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Sectors & Separatrices

• In the vicinity of a fixed point, there are

various sectors or regions of different flow

type:

– hyperbolic: paths do not ever reach fixed point.

– parabolic: one end of all paths is at fixed point.

– elliptic: all paths begin & end at fixed point.

• A separatrix is the bounding curve (or surface)

which separates these regions

Page 36: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Sectors & Separatrices

Source: A topology simplification method for 2D vector fields. Xavier Tricoche, Gerik

Scheuermann, & Hans Hagen

Page 37: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Sectors & Separatrices

Source: A topology simplification method for 2D vector fields. Xavier Tricoche, Gerik

Scheuermann, & Hans Hagen

21

heI

−+=

Page 38: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Conley Index

• Poincarè index for a periodic orbit is 0

• There is an index, called Conley index that we use to classify

invariant sets.

• For an isolating block M, its Conley index is the homotopy type

of the quotient space M/L where L is the exit set (the subset of

the boundary of M consisting of all exit points).

Page 39: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Conley Index Computation

• Conley index can be represented as the three Betti numbers

(β0, β1, β2) under our 2D setting. Note that β0 and β2 can NOT

be both 1.– An attracting fixed point (e.g. sink): (1,0,0)

– A repelling fixed point (e.g. source): (0,0,1)

– A saddle: (0,1,0)

– An attracting periodic orbit: (1,1,0)

– A repelling periodic orbit: (0,1,1)

Page 40: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

• Curve-type (1D) limit set

• Attracting / repelling behavior

• Poincaré map:

– Defined over cross section

– Map each position to next intersection with cross

section along flow

– Discrete map

– Cycle intersects at fixed point

– Hyperbolic / non-hyperbolic

Periodic Orbits

Fixed pointin the map

Page 41: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Periodic Orbit Extraction

• Poincaré-Bendixson theorem:

– If a region contains a limit set and no critical

point, it contains a closed orbit

Page 42: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Periodic Orbit Extraction

• Detect closed cell cycle

• Check for flow exit along boundary

• Find exact position with Poincaré map(fixed point)

Page 43: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Vector Field Topology

• Vector field topology provides qualitative (structural) information of the underlying dynamics

• It usually consists of certain critical features and their connectivity, which can be expressed as a graph, e.g. vector field skeleton [Helman and

Hesselink 1989]

– Fixed points

– Periodic orbits

– Separatrices

Page 44: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Topological Graph

• Three layers based on the Conley index

– If β0 =1, (A)ttractors: sinks, attracting periodic orbits

– If β2 =1, (R)epellers: sources, repelling periodic orbits

– Otherwise, (S)addles

Page 45: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Vector Field Equivalence

• We can call two VFs equivalent by showing a diffeomorphism which maps integral curves from the first to the second and preserves orientation

• A VF is structural stable if any perturbation to that VF results in one which is structurally equivalent

• In particular, non-hyperbolic fixed points (such as centers) mean a VF is unstable because any arbitrarily small perturbation can change the fixed point to a hyperbolic one.

Page 46: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Vector Field Visualization:

Computing Topology

Page 47: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Vector Field Topology (Recall)

• Vector field topology provides qualitative (structural) information of the underlying dynamics

• It usually consists of certain critical features and their connectivity, which can be expressed as a graph, e.g. Entity Connection Graph (ECG) [Chen et al. 2007]

– Fixed points

– Periodic orbits

– Separatrices

Page 48: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

2D Vector Field Topology

• Differential topology

– Topological skeleton [Helman and Hesselink 1989; CGA91]

– Entity connection graph [Chen et al. TVCG07]

• Discrete topology

– Morse decomposition [Conley 78] [Chen et al. TVCG08, TVCG11a]

– PC Morse decomposition [Szymczak EuroVis11] [Szymaczak and Zhang

TVCG12][Szymaczak TVCG12]

• Combinatorial topology

– Combinatorial vector field [Forman 98]

– Combinatorial 2D vector field topology [Reininghaus et al. TopoInVis09, TVCG11]

Page 49: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

2D Vector Field Topology

• Differential topology

– Topological skeleton [Helman and Hesselink 1989; CGA91]

– Entity connection graph [Chen et al. TVCG07]

• Discrete topology

– Morse decomposition [Conley 78] [Chen et al. TVCG08, TVCG11a]

– PC Morse decomposition [Szymczak EuroVis11] [Szymaczak and Zhang

TVCG12][Szymaczak TVCG12]

• Combinatorial topology

– Combinatorial vector field [Forman 98]

– Combinatorial 2D vector field topology [Reininghaus et al. TopoInVis09, TVCG11]

Sink

Source

Saddle

Page 50: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

2D Vector Field Topology

• Differential topology

– Topological skeleton [Helman and Hesselink 1989; CGA91]

– Entity connection graph [Chen et al. TVCG07]

• Discrete topology

– Morse decomposition [Conley 78] [Chen et al. TVCG08, TVCG11a]

– PC Morse decomposition [Szymczak EuroVis11] [Szymaczak and Zhang

TVCG12][Szymaczak TVCG12]

• Combinatorial topology

– Combinatorial vector field [Forman 98]

– Combinatorial 2D vector field topology [Reininghaus et al. TopoInVis09, TVCG11]

Page 51: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

ECG Construction

• Two steps pipeline

– Extract fixed points and periodic orbits

– Compute connections between these features

Page 52: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Fixed Point Extraction

• Cell-wise

– First, locate the cells that contain fixed points

• Using the unique characteristics of the Poincaré index

around a fixed point instead of solving a linear system

– Second, solve for the position of the fixed point

Page 53: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Efficient Periodic Orbit Extraction

• Observation: periodic orbits are located in certain

regions of recurrent flow by the definitions of limit

sets.

• Basic idea: first extract these regions; then locate

periodic orbits inside only these regions.

• Advantage: 1) fast; 2) extract periodic orbits not

connected with fixed points; 3) extensible to

surface vector fields

Page 54: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Finding Regions of Recurrence

[Kalies et al. 2006]

Page 55: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Periodic Orbit Extraction

• No guarantees to find all the cycles

• In practice, it tends to work well

• And it is fast

Page 56: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

• Can detect embedded orbits

Synthetic field

Page 57: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Extract Topology

– Fixed point extraction

– Periodic orbit identification

– Compute connections

• Separatrix computation (emitting from saddles)

• Other connectivity

– A source and a sink

– A source/sink with a periodic orbit

– A periodic orbit with other periodic orbit

Page 58: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Compute Connections

• Fixed point and periodic orbit extraction

Page 59: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Compute Connections

• Separatrices computation

Page 60: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Compute Connections

• Repelling periodic orbit to a fixed point or

orbit

Page 61: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Compute Connections

• Repelling periodic orbit to a fixed point or

orbit

Page 62: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Compute Connections

• Attracting periodic orbit to a fixed point

Page 63: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Applications (1)

• Feature-aware streamline placement

– First extract topology, then use it as the initial set

of streamlines to compute seeds for later

placement

Page 64: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Applications (2)

• CFD simulation on gas engine

• Velocity extrapolated to the boundary

105K polygons

56 fixed points

9 periodic orbits

31.58s on analysis

Page 65: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Applications (3)

• CFD simulation on diesel engine

• Velocity extrapolated to the boundary

886K polygons

226 fixed points

52 periodic orbits

29.15s on analysis

Page 66: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Application (4)

• CFD simulation on cooling jacket

• Velocity extrapolated to the boundary

Page 67: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Any Issues of This Method?

Page 68: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Instability of ECG (1)

Case 1: different sampling

−−−=

1

))1()(1(),(

2rkrrrV θ

Page 69: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Instability of ECG (2)

Case 2: noise in the data

−−=

)1(),(

xxkx

yyxV

Page 70: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Instability of ECG (3)

Case 3: different numerical integration

schemes

−−

=)1(

),( 2y

xyyxV

Page 71: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

2D Vector Field Topology

• Differential topology

– Topological skeleton [Helman and Hesselink 1989; CGA91]

– Entity connection graph [Chen et al. TVCG07]

• Discrete topology

– Morse decomposition [Conley 78] [Chen et al. TVCG08, TVCG11a]

– PC Morse decomposition [Szymczak EuroVis11] [Szymaczak and Zhang

TVCG12][Szymaczak TVCG12]

• Combinatorial topology

– Combinatorial vector field [Forman 98]

– Combinatorial 2D vector field topology [Reininghaus et al. TopoInVis09, TVCG11]

Page 72: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Morse Decomposition Results

• Stable

Page 73: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Morse Decomposition Results

• Stable

Page 74: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Morse Decomposition Results

• Stable

Page 75: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Morse Decomposition

• A Morse decomposition of surface X for the flow is a

finite collection of disjoint compact invariant sets,

called Morse sets.

• The computation result of a Morse decomposition is a

directed graph called Morse connection graph (MCG)

Page 76: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Morse Connection Graph (MCG)

• An MCG

M(X,ϕ,P,>)={M(p)|p∈(P,>)}– is an acyclic directed graph, whose nodes P

are Morse sets, the set of directed edges is a

strict partial order >

– such that for any x∉ ∪p∈P M(p), there exist

p>q in P and α(x) ⊂ M(p) and ω(x) ⊂ M(q)

Page 77: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

77

MCG Visualization

MCG

– Always exists

– Not unique

– Use Morse neighborhoods that are triangle strips to

visualize the corresponding Morse sets

MCG�ECG- ECG can be computed from MCG

[Chen et al. 2007]

Page 78: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Flow

combinatorialization

Strongly connected

component extracting

Constructing a

quotient graph

Computing MCG

A Pipeline of Morse Decomposition

Page 79: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

79

Flow

combinatorialization

Strongly connected

component extracting

Constructing a

quotient graph

Computing MCG

A Pipeline of Morse Decomposition

Page 80: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

80

Geometry Based Flow Combinatorialization

Page 81: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

τ-Map Based Flow Combinatorialization

Page 82: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Why τ-Map is Better?

Page 83: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Why Is MCG Stable?

Page 84: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Results – Analytic Data

Page 85: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Results – Gas Engine

Geometry-based ττττ=0.3ττττ=0.1

Page 86: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Results – Diesel Engine

ττττ=0.3Geometry-based

Page 87: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Results - Timing

Dataset name Number of triangles

Number of Morse sets

Time for flow combinatorialization (seconds)

Time for computing MCG (seconds)

Gas engine (ττττ =0.1) 26,298 50 27.8 7.9

Gas engine (ττττ =0.3) 26,298 57 75.4 1.2

Diesel engine (ττττ =0.3) 221,574 200 1101.3 37.7

All the results are obtained in a 3.6 GHz PC with 3GB RAM.

Page 88: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

2D Vector Field Topology

• Differential topology

– Topological skeleton [Helman and Hesselink 1989; CGA91]

– Entity connection graph [Chen et al. TVCG07]

• Discrete topology

– Morse decomposition [Conley 78] [Chen et al. TVCG08, TVCG11a]

– PC Morse decomposition [Szymczak EuroVis11] [Szymaczak and Zhang

TVCG12][Szymaczak TVCG12]

• Combinatorial topology

– Combinatorial vector field [Forman 98]

– Combinatorial 2D vector field topology [Reininghaus et al. TopoInVis09, TVCG11]

Page 89: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Simplification

Reduce flow complexity so that people can focus

on the more important structure

Page 90: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Multi-level feature representation

90

Refinement

Automatic vector field simplification

Page 91: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Vector Field Data Compression

Source: [Theisel et al. Eurographics 2003]

Page 92: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Additional Reading

• Frits H. Post, Benjamin Vrolijk, Helwig Hauser, Robert S.

Laramee and Helmut Doleisch. The State of the Art in Flow

Visualization: Feature Extraction and Tracking. Computer

Graphics Forum, 22 (4): pp. 1-17, 2003.

Page 93: Review of Texture-based Methods - UHchengu/Teaching/Fall2012/Lecs/Lec_11_12.pdf · Review of Texture-based Methods ... locate a set of pixels hit by the streamline ... det 0 =%’−&10

Acknowledgment

Thanks materials from

• Prof. Eugene Zhang, Oregon State University

• Prof. Joshua Levine, Clemson University

• Prof. Zhanping Liu, Kenturky State University