vector field visualization - caucau.ac.kr/~bongbong/grad10/cgta08.pdfvector field visualization-like...

42
Vector Field Visualization * T. Moeller, H. Shen slide를 이용함.

Upload: others

Post on 17-Mar-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Vector Field Visualization

* T. Moeller, H. Shen의 slide를이용함.

Page 2: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

-A vector field: F(U) = V

U: field domain (x,y) in 2D (x,y,z) in 3D V: vector (u,v) or (u,v,w)

Vector Field Visualization

V: vector (u,v) or (u,v,w)

- Like scalar fields, vectors are defined at discrete points

Page 3: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Flow Visualization

• Flow visualization – classification– Dimension (2D or 3D)– Time-dependency: steady vs. unsteady– Grid type

• In most cases numerical methods required for flow visualization

Page 4: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow
Page 5: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow
Page 6: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Characteristic of Lines

• Streamline– tangential to the vector field

• Pathline– trajectories of massless particles in the flow– trajectories of massless particles in the flow

• Streakline– trace of dye that is released into the flow at a fixed

position• Time line (Time surface)

– propagation of a line (surface) of massless elements in time

Page 7: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Streamlines

• Tangential to the vector field• Vector field at an arbitrary, yet fixed time t• Streamline is a solution to the initial value

problem of an ordinary differential equationproblem of an ordinary differential equation

• Streamline is curve L(u) with the parameter u

Page 8: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Pathlines

• Trajectories of massless particles in the flow• Vector field can be time-dependent (unsteady)• Pathline is a solution to the initial value problem

of an ordinary differential equation:of an ordinary differential equation:

• Integral Curve?

Page 9: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Streaklines

• Trace of dye that is released into the flow at a fixed position

• Connect all particles that passed through a • Connect all particles that passed through a certain position

Page 10: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Time lines (Time surfaces)• Propagation of a line (surface) of massless elements in

time• Idea: “consists” of many point-like particles that are

traced• Connect particles that were released simultaneously• Connect particles that were released simultaneously

t0 t1 t2

Timelines or time surfaces can show the evolution of a flow.

Page 11: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Example :streamline, pathline, streakline

The red particle moves in a flowing fluid; Its pathline is traced in red; the tip of the trail of blue ink released from the origin follows the particle, but unlike the static pathline (which records the earlier motion of the dot), ink released after the red dot departs continues to move up with the flow. departs continues to move up with the flow. (This is a streakline.) The dashed lines represent contours of the velocity field (streamlines), showing the motion of the whole field at the same time.

Page 12: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Comparison of Lines

Page 13: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Pathline

Page 14: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Stream ball• Use radii to visualize additional properties (e.g. divergence and

acceleration in a flow)

Page 15: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

streaklines

Page 16: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Stream ribbons• The area swept out by a deformable line segment along a

streamline• Visualizes rotational behavior of a 3D flow

Page 17: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

streamtubes• Thick tube shaped streamline whose radial extent shows the

expansion of flow

Page 18: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Local technique - Particle Tracing

Visualizing the flow directions by releasing particles and calculating a series of particle positions based on the vectorfield

The motion of particle: dx/dt = v(x)

x: particle position (x,y,z)v(x): the vector (velocity) field

Use numerical integration to compute a new particle position

x(t+dt) = x(t) + Integration( v(x(t)) dt )

Page 19: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Numerical Integration

First Order Euler method: x(t+dt) = x(t) + v(x(t)) * dt

- Not very accurate, but fast - Other higher order methods are available: Runge-Kutta

second and fourth order integration methods (more popular due to their accuracy)

Result of first orderEuler method

Page 20: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Numerical Integration (2)

Second Runge-Kutta Method

x(t+dt) = x(t) + ½ * (K1 + K2) k1 = dt * v(x(t))k1 = dt * v(x(t))k2 = dt * v(x(t)+k1)

½ * [v(x(t))+v(x(t)+dt*v(x(t))]

x(t+dt)

x(t)

Page 21: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Numerical Integration (3)

Standard Method: Runge-Kutta fourth order

x(t+dt) = x(t) + 1/6 (k1 + 2k2 + 2k3 + k4)x(t+dt) = x(t) + 1/6 (k1 + 2k2 + 2k3 + k4)

k1 = dt * v(t); k2 = dt * v(x(t) + k1/2)

k3 = dt * v(x(t) + k2/2); k4 = dt * v(x(t) + k3)

Page 22: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Arrows and Glyphs• Visualize local features of the vector field:

– Vector itself– Vorticity– Extern data: temperature, pressure, etc.

• Important elements of a vector:• Important elements of a vector:– Direction– Magnitude– Not: components of a vector

• Approaches:– Arrow plots– Glyphs

Page 23: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Arrows

• Arrows visualize– Direction of vector filed– Magnitude

• Length of arrows• Length of arrows• Color coding

Page 24: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Glyphs

• Can visualize more features of the vector field

Page 25: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Flow Volume

• Construction of the flow volume– Seed polygon (square) is used as smoke generator– Constrained such that center is perpendicular to flow– Square can be subdivided into a finer mesh– Volume rendering – Volume rendering – Opacity is inversely proportional to the tetrahedra’s volume

Page 26: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

LIC : Line Integral Convolution• Given :

– Vector field and texture image– Texture image is normally white noise

• Output• Output– Colored field correlated in the flow

direction

Convolve a random texturealong the streamlines

Page 27: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

LIC• Visualize dense flow fields by imaging its integral curves• Cover domain with a random texture (so called ‚input

texture‘, usually stationary white noise) • Blur (convolve) the input texture along the path lines

using a specified filter kernelusing a specified filter kernel

Page 28: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

LIC : Idea

• Global visualization technique• Dense representation• Start with random texture• Smear out along stream lines

Page 29: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

example

Page 30: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

LIC Algorithm

Page 31: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

LIC

Page 32: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

OLIC : Oriented Line Integral Convolution

• Visualizes orientation (in addition to direction)• Use

– Sparse texture– Anisotropic convolution kernel– Anisotropic convolution kernel

Page 33: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

OLIC

Page 34: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

세부적인이슈소개

• Illumination

• Seed Placement

Page 35: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Illuminated Streamline

Page 36: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Comparisons

Fully opaque Use transparency With Illumination

Page 37: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Seed Placement for Streamline

• The placement of seeds directly determines the visualization quality– Too many: scene cluttering– Too little: no pattern formed

• It has to be the right number at the right places!!!

Page 38: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Seed Placement

Page 39: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Image-Guided Streamline Placement

• Main idea: the distribution of ink on the screen should be even [turk 96]

Page 40: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Use Energy Function as a Metric

• A energy function is defined to measure whether ‘ink’ is distributed evenly

2

• I(x,y): image with streamlines• L: A low pass filter (Gaussian or Hermit interpolation)• t: A user specified threshold for average image

intensity

S S ( L*I (x,y) - t )x y

2

Page 41: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Iterative Algorithm

• Place an initial set of seeds and compute streamlines• Iteratively minimize the energy function (random

decent) with the following operations on the seeds: – Move – Insert– Delete– Lengthen– Shorten– Combine

• Iterate until the energy function converges

Page 42: Vector Field Visualization - CAUcau.ac.kr/~bongbong/grad10/cgta08.pdfVector Field Visualization-Like scalar fields, vectors are defined at discrete points. Flow Visualization •Flow

Results

Seeds at regular grid After energy minimization