Dense Flow Visualization Lecture 10 February 27, 2020 General - - PowerPoint PPT Presentation

dense flow visualization
SMART_READER_LITE
LIVE PREVIEW

Dense Flow Visualization Lecture 10 February 27, 2020 General - - PowerPoint PPT Presentation

CS53000 - Spring 2020 Introduction to Scientific Visualization Dense Flow Visualization Lecture 10 February 27, 2020 General Overview Dense methods in 2D Dense methods in 3D Dense methods on curved surfaces CS530 / Spring 2020 :


slide-1
SLIDE 1

CS53000 - Spring 2020

Introduction to Scientific Visualization

Lecture

Dense Flow Visualization

February 27, 2020

10

slide-2
SLIDE 2

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

General Overview

Dense methods in 2D Dense methods in 3D Dense methods on curved surfaces

2

slide-3
SLIDE 3

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Dense Vector Field Representations in 2D

3

slide-4
SLIDE 4

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Digression

Noise in signal processing: signal produced by a stochastic (random) process Noise “color” describes its power distribution: how the signal’s energy is distributed across the frequency range Notion of noise extends to images (2D stochastic signals)

4

slide-5
SLIDE 5

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Visible Color Spectrum

5

NB: wavelength = 1/frequency

slide-6
SLIDE 6

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

White Noise

6

slide-7
SLIDE 7

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Blue Noise

7

slide-8
SLIDE 8

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Pink Noise

8

slide-9
SLIDE 9

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

White Noise

Noise image (2D signal)

9

slide-10
SLIDE 10

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Blue Noise

Noise image (2D signal)

10

slide-11
SLIDE 11

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Pink Noise

11

Noise image (2D signal)

slide-12
SLIDE 12

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Line Integral Convolution

1D smoothing of white noise image along flow direction (streamline)

12

slide-13
SLIDE 13

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Value of each pixel in output image computed as convolution of value of neighboring pixels along the flow

Integration of streamlet from each pixel

Assuming pixel-wise constant vector (Euler) In both directions Length (pixel-wise) controlled by kernel size

LIC: Basic Idea

13

f ∗ g ≡ ∞

−∞

f(τ)g(t − τ)dτ

slide-14
SLIDE 14

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Value of each pixel in output image computed as convolution of value of neighboring pixels along the flow

Integration of streamlet from each pixel

Assuming pixel-wise constant vector (Euler) In both directions Length (pixel-wise) controlled by kernel size

LIC: Basic Idea

13

f ∗ g ≡ ∞

−∞

f(τ)g(t − τ)dτ

slide-15
SLIDE 15

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Value of each pixel in output image computed as convolution of value of neighboring pixels along the flow

Integration of streamlet from each pixel

Assuming pixel-wise constant vector (Euler) In both directions Length (pixel-wise) controlled by kernel size

LIC: Basic Idea

13

f ∗ g ≡ ∞

−∞

f(τ)g(t − τ)dτ

slide-16
SLIDE 16

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Value of each pixel in output image computed as convolution of value of neighboring pixels along the flow

Integration of streamlet from each pixel

Assuming pixel-wise constant vector (Euler) In both directions Length (pixel-wise) controlled by kernel size

LIC: Basic Idea

13

f ∗ g ≡ ∞

−∞

f(τ)g(t − τ)dτ

slide-17
SLIDE 17

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

LIC: Fine tuning

Aliasing problems induced by white noise input texture can be solved by applying low pass filter (blurring) in pre-processing Simple convolution kernel: box Special convolution kernels can be used to show flow direction (periodic motion) Normalization applied after convolution to preserve brightness and contrast

14

slide-18
SLIDE 18

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

LIC: How does it work?

Correlation of pixels along the flow No correlation orthogonal to the flow Resulting pictures are similar to visualizations achieved with oil film applied onto surface of embedded body in wind tunnel experiments

15

  • B. Cabral, C. Leedom, Imaging Vector Fields Using Line Integral Convolution, ACM SIGGRAPH ‘93
slide-19
SLIDE 19

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

LIC: How does it work?

Correlation of pixels along the flow No correlation orthogonal to the flow Resulting pictures are similar to visualizations achieved with oil film applied onto surface of embedded body in wind tunnel experiments

15

  • B. Cabral, C. Leedom, Imaging Vector Fields Using Line Integral Convolution, ACM SIGGRAPH ‘93
slide-20
SLIDE 20

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

LIC: Results

Basic LIC

16

http://www.erc.msstate.edu/~zhanping/Research/FlowVis/LIC/LIC.htm

slide-21
SLIDE 21

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020 17

slide-22
SLIDE 22

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

LIC: Results

+ Color coded vector field magnitude

18

http://www.erc.msstate.edu/~zhanping/Research/FlowVis/LIC/LIC.htm

slide-23
SLIDE 23

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020 19

slide-24
SLIDE 24

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

LIC: Results

+ Histogram equalization

20

http://www.erc.msstate.edu/~zhanping/Research/FlowVis/LIC/LIC.htm

slide-25
SLIDE 25

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020 21

slide-26
SLIDE 26

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

LIC: Results

+ High-pass filtering

22

http://www.erc.msstate.edu/~zhanping/Research/FlowVis/LIC/LIC.htm

slide-27
SLIDE 27

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020 23

slide-28
SLIDE 28

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

FastLIC: Speeding things up

Exploit redundancy of streamlines covering many pixels

Number of streamlines needed to cover entire image is only 2% of number of pixels!

Use correlation between convolution coefficients Integrate flow using RK 45 + cubic interpolation Algorithm is 10x faster than standard LIC

24

  • D. Stalling, H.-C. Hege, Fast and Resolution Independent Line Integral Convolution, ACM SIGGRAPH ‘95
slide-29
SLIDE 29

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Enhanced LIC

Recycle texture: Improve contrast by iteratively taking last computed LIC texture as input for next iteration Combined with final high-pass filtering

25

  • A. Okada, D. L. Kao, Enhanced Line Integral Convolution and Feature Detection,

IS & T / SPIE Electronics Imaging ‘97

slide-30
SLIDE 30

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Enhanced LIC

Results

26

Standard LIC Enhanced LIC

http://www.erc.msstate.edu/~zhanping/Research/FlowVis/LIC/LIC.htm

slide-31
SLIDE 31

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Enhanced LIC

Results

26

Standard LIC Enhanced LIC

http://www.erc.msstate.edu/~zhanping/Research/FlowVis/LIC/LIC.htm

slide-32
SLIDE 32

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Multifrequency LIC

Kiu & Banks, Vis96

Change frequency of noise texture image based on flow properties (e.g speed)

27

slide-33
SLIDE 33

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Dense Vector field Representations in 3D

28

slide-34
SLIDE 34

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Dense Vector field Representations in 3D

28

slide-35
SLIDE 35

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Volumetric LIC

29 Cabral & Leedam Interrante

slide-36
SLIDE 36

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Volumetric LIC

Seed LIC

ROI-based seeds 3D LIC computation over sparse input texture “Limb Darkening” to enhance depth perception

30

  • A. Helgeland, O. Andreassen, Visualization of Vector

Fields Using Seed LIC and Volume Rendering, IEEE TVCG 10(6), 2004.

slide-37
SLIDE 37

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Dense methods for time-dependent 2D vector fields

31

slide-38
SLIDE 38

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Lagrangian vs. Eulerian

Time-dependent flow Particle path: pathline (≠ streamline)

32

dx dt = ⇧ v(x(t), t)

x(t0 + ) = x0 + τ ⌃ v(x(t0 + t), t0 + t)dt

slide-39
SLIDE 39

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Lagrangian vs. Eulerian

Time-dependent flow Particle path: pathline (≠ streamline)

32

dx dt = ⇧ v(x(t), t)

x(t0 + ) = x0 + τ ⌃ v(x(t0 + t), t0 + t)dt

slide-40
SLIDE 40

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Lagrangian vs. Eulerian

\ \

33

Eulerian: v( ) =

φ∆t

Lagrangian: φ∆t( ) =

slide-41
SLIDE 41

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Lagrangian vs. Eulerian

LIC: weighted combination of neighboring texture values along flow Problem with unsteady flows

Neighboring values along pathlines have little (or no) correlation over time Missing temporal coherence between successive frames if convolution filter applied along pathlines

34

  • L. Forssell, S. Cohen, Using Line Integral Convolution for Flow Visualization,

IEEE TVCG 1(2), 1995

slide-42
SLIDE 42

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Moving Textures

Basic idea: texture advection through backward coordinate integration Forward integration creates holes in regions of flow divergence

35

slide-43
SLIDE 43

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Moving Textures

Different approach

Advect vertices of coarse triangulation Keep texture coordinates constant

In both cases

Use periodic weight functions + alpha blending to address distortion problems Input texture is reinitialized periodically

36

slide-44
SLIDE 44

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Moving Textures

37

  • N. Max, B. Becker, Flow Visualization Using Moving Textures, Data Visualization Techniques, John

Wiley & Sons, 1999

Vertices forward advection Backward texture advection Inverse flow

slide-45
SLIDE 45

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Image-based Flow Visualization

Very fast visualization method for unsteady flows (interactive frame rates) Limited accuracy (improving) Combined CPU/GPU implementation (straightforward)

38

  • J. Van Wijk, Image Based Flow Visualization, ACM SIGGRAPH 2002
slide-46
SLIDE 46

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV

Algorithm

Start with current image (e.g., noise) Overlay coarse mesh (texture coordinates) Advect mesh vertices (cf. Moving Texture): CPU Render distorted mesh (texture mapping of current image) Blend low-pass filtered noise Optional: Inject dye Overlay geometry

39

slide-47
SLIDE 47

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV

40

slide-48
SLIDE 48

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV

Advected texture F over domain S Account for progressive distortion and texture shift by blending new texture G in place

41

  • F(pk+1, k + 1) =
  • F(pk, k)

if pk ∈ S

  • therwise

F(pk, k) = α

k−1

  • i=0

(1 − α)iG(pk−i, k − i)

F(pk+1, k + 1) = (1 − α)F(pk, k) + αG(pk+1, k + 1)

slide-49
SLIDE 49

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV

New texture G

low-pass filtered noise Blended random spot (cf. spot noise) with

42

1

  • 1

1

h G

G(x, k) =

  • i,j

h(x s − i)h(y s − j)Gi,j,k

Gi,j,k = ω(µk + φi,j)

slide-50
SLIDE 50

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV

New texture G

low-pass filtered noise Blended random spot (cf. spot noise) with

42

1

  • 1

1

h G

  • G(x, k) =
  • i,j

h(x s − i)h(y s − j)Gi,j,k

Gi,j,k = ω(µk + φi,j)

slide-51
SLIDE 51

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV

Inflow boundaries

43

S S’ B

  • F(pk, k) = (1 − α)F ∗(pk, k − 1) + αG(pk, k)

F ∗(pk, k − 1) =

  • F(pk, k − 1)

if pk ∈ B F(pk−1, k − 1)

  • therwise
slide-52
SLIDE 52

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV

Dye injection

44

F (x, k) = (1 − αD(x, k))F(x, k) + αD(x, k)GD(x, k)

αD = 1

αD = 0

slide-53
SLIDE 53

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV

45

Scale of noise texture

  • J. Van Wijk,

Image Based Flow Visualization, ACM SIGGRAPH 2002

slide-54
SLIDE 54

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV

46

Various profiles of periodic function

  • J. Van Wijk,

Image Based Flow Visualization, ACM SIGGRAPH 2002

slide-55
SLIDE 55

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV

47

  • J. Van Wijk, Image Based Flow Visualization, ACM SIGGRAPH 2002
slide-56
SLIDE 56

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV

48

  • J. Van Wijk, Image Based Flow Visualization, ACM SIGGRAPH 2002
slide-57
SLIDE 57

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Dense Methods for 2D Vector Fields on Surfaces

49

slide-58
SLIDE 58

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV for Surfaces

Basic idea: advect texture along projection of visible pathlines onto screen

50

x = T(x)

Ft(p⇥

k, k) = (1 − γ(p⇥ k))Ft(p⇥ k1, k − 1) + γ(pk)G(p⇥ k, k)

F(p

k+1, k + 1) =

  • F(p

k, k)

if p

k ∈ Ω

  • therwise
slide-59
SLIDE 59

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV for Surfaces

Basic idea: advect texture along projection of visible pathlines onto screen

50

  • x = T(x)

Ft(p⇥

k, k) = (1 − γ(p⇥ k))Ft(p⇥ k1, k − 1) + γ(pk)G(p⇥ k, k)

F(p

k+1, k + 1) =

  • F(p

k, k)

if p

k ∈ Ω

  • therwise
slide-60
SLIDE 60

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV for Surfaces

Additional cue for surface shape obtained by blending shaded surface

51

  • +

=

F(x, k) = βFt(x, k) + (1 − β)Fs(x, k)

slide-61
SLIDE 61

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV for Surfaces

Texture warping: advection over the mesh

52

ti = T(ri − ⇤ vi∆t)

slide-62
SLIDE 62

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV for Surfaces

Texture warping: advection over the mesh

52

  • ti = T(ri − ⇤

vi∆t)

slide-63
SLIDE 63

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV for Surfaces

53

  • J. Van Wijk, Image Based Flow Visualization for Curved Surfaces, IEEE Visualization 2003
slide-64
SLIDE 64

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV for Surfaces

54

  • J. Van Wijk, Image Based Flow Visualization for Curved Surfaces, IEEE Visualization 2003
slide-65
SLIDE 65

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

IBFV for Surfaces

55

Results

  • J. Van Wijk, Image Based Flow Visualization for Curved Surfaces, IEEE Visualization 2003
slide-66
SLIDE 66

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Image Space Advection

Texture advection in image space IBFVS: project advected texture ISA: advect texture along projected flow Surface geometry + associated vector values combined in velocity image

56

  vx vy vz   ⇥   R G B  

slide-67
SLIDE 67

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

ISA

Projection of vertices + vector values done by graphics hardware

Occlusion culling Interpolation (Gouraud shading) Subpixel sized cells discarded

3D vectors projected onto screen afterwards

57

slide-68
SLIDE 68

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

ISA

Mesh advection and noise blending in image space similar to 2D IBFV Detect edges to avoid mesh advection across flow discontinuity Edges are restored by blending grey values along edge mask

58

|zk−1 − zk| > |pk−1 − pk|

slide-69
SLIDE 69

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

ISA

59

  • R. Laramee, B. Jobard, H. Hauser, Image Space Based Visualization of Unsteady Flows on Surfaces, IEEE

Visualization 2003

slide-70
SLIDE 70

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

ISA

60

  • R. Laramee, B. Jobard, H. Hauser, Image Space Based Visualization of Unsteady Flows on Surfaces, IEEE

Visualization 2003

slide-71
SLIDE 71

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

ISA

61

Results

  • R. Laramee, B. Jobard, H. Hauser, Image Space Based Visualization of Unsteady Flows on Surfaces, IEEE

Visualization 2003

slide-72
SLIDE 72

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Image Space

62

Results

  • R. Laramee, B. Jobard, H. Hauser, Image Space Based Visualization of Unsteady Flows on Surfaces, IEEE Visualization 2003
slide-73
SLIDE 73

CS530 / Spring 2020 : Introduction to Scientific Visualization.

  • 10. Dense Flow Visualization

Feb 27, 2020

Image Space

62

Results

  • R. Laramee, B. Jobard, H. Hauser, Image Space Based Visualization of Unsteady Flows on Surfaces, IEEE Visualization 2003