Lec 4 Scalar Field Visualization

Post on 27-Jan-2016

32 views 3 download

description

Computer graphics

Transcript of Lec 4 Scalar Field Visualization

Scalar Field Visualization

Leif Kobbelt

2Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Types of Data

nD

3D

2D

1D

0D

1D 2D 3D nD

I J

G H

C D E F

A B

dimension of

domain

dimension of

data type

3Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Function Plots and Height Fields

• Visualization of 1D or 2D scalar fields

1D scalar field:

2D scalar field:

RIRI

RIRI 2

3

4Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Function Plots and Height Fields

• Function plot for a 1D scalar field

2D Points

1D manifold: line

}|))(,{( RIssfs

4

5Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Function Plots and Height Fields

• Function plot for a 2D scalar field 3D Points

2D manifold: surface

• Surface representations Wireframe

Hidden lines

Shaded surface

}),(|),(,,{( 2RItstsfts

5

6Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

„The Geometry of Images“

6

7Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

„The Geometry of Images“

7

8Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

„The Geometry of Images“

8

9Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Isolines

• Visualization of 2D scalar fields

• Given a scalar function

and a scalar value 𝑐 ∈ 𝑅• Isoline consists of points

• If f() is differentiable and grad(f) 0, then isolines are

curves

• Contour lines

RIf :

}),(|),{( cyxfyx

9

10Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Isolines

10

11Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Isolines

11

12Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Isolines

• pixel by pixel contouring

• straightforward approach: scanning all pixels for isovalue

• input f : (1,...,xmax) x (1,...,ymax) R

Isovalues I1,..., In and isocolors c1,...,cn

• algorithmfor all (x,y) (1,...,xmax) x (1,...,ymax) do

for all k { 1,...,n } do

if |f(x,y)-Ik| < then

draw(x,y,ck)

• problem: isolinie can be missed if the gradient of f() is too large

(despite range )

12

13Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Isolines

• Marching squares representation of the scalar function on a rectilinear grid

scalar values are given at each vertex ffij take into account the interpolation within cells

isolines cannot be missed

divide and conquer: consider cells independently of each other

13

14Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Isolines

• Which cells will be intersected ? Initially mark all vertices by + or – , depending on the

conditions fij c , fij < c

• No isoline passes through cells (=rectangles) which have

the same sign at all four vertices So we only have to determine the edges with different signs

+

++

+ + +

+ +

+ + +

+

–––

14

15Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Isolines

• Only 4 different cases (classes) of combinations of signs

• Symmetries: rotation, reflection, change + -

• Compute intersections between isoline and cell edge,

based on linear interpolation along the cell edges

+ +

+ +

+ -

+ +

+ -

+ -

+ -

- +

?

+ -

- +

+ -

- +

?

15

16Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

-+

Isolines

• We can distinguish the cases by a decider

• Mid point decider Interpolate the function value in the center

If fcenter < c we chose the right case, otherwise we chose the left case

Not always correct solution

+ -

- +

+ -

- +

)(4

11,11,,1,center jijijiji fffff

16

17Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Isolines

• Asymptotic decider Consider the bilinear interpolant within a cell

The true isolines within a cell are hyperbolas

Asymptote

Cell boundaries

Asymptote

17

18Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Isolines

• Interpolate the function bilinearly

• Transform f() to

• is the function value in the

intersection point

of the asymptotes

xyfyxfyxfyxfyxf jijijiji 111,,1, )1()1()1)(1(),(

))((),( 00 yyxxyxf

(x0, y0)

18

19Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Isolines

• If c we chose the right case, otherwise we

chose the left one

+

+ -

- +

-

+ -

- +

19

20Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Isolines

• Explicit transformation f() to

can be avoided

• Idea: investigate the order of intersection points either

along x or y axis

• Build pairs of first two and last two intersections

))((),( 00 yyxxyxf

valid not possible

20

21Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

3D Scalar Field Visualization

21

22Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Volumetric Representations

• Implicit representation F(x,y,z) = 0

• Signed distance function

• Sample on a uniform cartesian grid

• Trilinear interpolation

22

23Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Volumetric Representations

F(i+u,j+v,k+w) =

F000 (1-u)(1-v)(1-w) +

F100 u (1-v)(1-w) +

F010 (1-u) v (1-w) +

...

F111 u v w

23

F000 F100

F110

F111

F011

F001F101

24Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Volumetric Representations

• Indirect Rendering:

Isosurface extraction: Marching Cubes

• Direct Rendering:

Ray Casting

24

25Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Volume Data

• discrete representation:

Fijk = F(i x, j y, k z)

• piecewise polynomial (linear) interpolation

• tri-linear functions per cell („voxel“)

algebraic iso-surfaces of degree 3

• approximation by a polygonal mesh

25

26Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Surface Extraction

• Find point samples on the iso-surface

exploit voxel structure

use function values

• Connect neighboring samples

exploit voxel neighborhood structure

relation between voxels and polygons

26

27Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Surface Sampling

in which voxel ?

27

28Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Surface Sampling

in which voxel ?

F((i+u) x, (j+v) y, (k+w) z) =

(1-u)(1-v)(1-w)Fijk + (1-u)(1-v) w Fijk+1 +

(1-u) v (1-w)Fij+1k + (1-u) v w Fij+1k+1 +

u (1-v)(1-w)Fi+1jk + u (1-v) w Fi+1jk+1 +

u v (1-w)Fi+1j+1k+ u v w Fi+1j+1k+1 +

(u,v,w) [0,1]3 min Fijk F(u,v,w) max Fijk

28

29Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Surface Sampling

in which voxel ?

Sc[F] passes through all (and only) voxels

with min Fijk c max Fijk

29

30Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Surface Sampling

in which voxel ?

Sc[F] passes through all (and only) voxels

with min Fijk c max Fijk

how to find these voxels efficiently ?

30

31Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Surface Sampling

in which voxel ?

Sc[F] passes through all (and only) voxels

with min Fijk c max Fijk

how to find these voxels efficiently ?

- store min/max {Fijk,Fijk+1,Fij+1k,Fij+1k+1,

Fi+1jk,Fi+1jk+1,Fi+1j+1k,Fi+1j+1k+1}

- build octree

31

32Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Min/Max Tree

• store min/max for every voxel Vijkn

• octree Vijkn-1 has children

V2i 2j 2kn ... V 2i+1 2j+1 2k+1

n

• propagate min/max values upwards

• surface extraction:

traverse only the relevant voxels

O(n3) O(n2 log n)

32

33Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Surface Sampling

• per voxel : ray intersection

• ray ... P + Q

• intersection ... G() = F(P + Q) = c

• solve cubic equation ...

33

34Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Surface Sampling

• per voxel : ray intersection

• ray ... P + Q

• intersection ... G() = F(P + Q) = 0

• solve cubic equation ...

• ray parallel to coordinate axis

solve linear equation ...

34

35Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Problems / Bad Approximation

35

36Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Surface Sampling

• use additional information to improve

iso-surface approximation

• normal vector to iso-surface Sc[F]:

F(x,y,z) = [ F/x, F/y, F/z ]

• find surface samples by (approximately)

intersecting tangent planes

36

37Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Error Quadrics

• squared distance to plane:

37

• sum distances to vertex' planes:

TTdcbapzyxv ,,,,1,,,

vQvvppvvpvp P

TTTT :,,dist22

2

2

2

2

dcdbdad

cdcbcac

bdbcbab

adacaba

QP

vQvvQvvQvvp v

T

p p

p

T

p

T

p

:,dist planes planes planes

2

38Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Error Quadrics

• optimal point that minimizes the error:

38

• solve using pseudo-inverse (SVD)

(underdetermined vs. overdetermined)

T

p

nn

ppp

p

pp

p

T

pp dcbapndvnn

pp

,,,

1 with :

*

39Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Surface Data

• polygon meshes / triangle meshes

M = ({pi},{Tj})

• compute samples on grid edges within voxels

• compute faces (vertex connectivity) for each voxel for each grid edge

39

40Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Marching Cubes [Lorensen/Cline ´87]

• extract surface patch for every grid cell

classification by the signs at the corners

(black, white, gray)

• approximate samples

linear interpolation of scalar distance values

along cell edges

• look-up table with pre-computed triangulations

28 entries, many symmetries

40

41Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Visit Each Gray Cell ...

41

42Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Compute Samples on Edges

42

kjdd

di

kjikji

kji,,

,,1,,

,,

43Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

kdd

dji

kjikji

kji,,

,1,,,

,,

Compute Samples on Edges

43

44Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

1,,,,

,,,,

kjikji

kji

dd

dkji

Compute Samples on Edges

44

45Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Lookup Mesh Connectivity

45

. . .

46Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Cell Connectivity Table

46

47Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Extended Marching Cubes

• same algorithmic principle

• for each cell ...

Find surface samples on the grid cell edges

Evaluate surface normals at the sample points

Feature detection

Feature sampling

Feature reconstruction

47

48Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Normal cone

for a smooth (flat)

non-feature region

Feature Classification

48

49Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Feature Classification

49

Normal cone

for a smooth (flat)

non-feature region

50Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Feature Classification

50

Normal cone

for an edge feature

(one large angle)

51Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Feature Classification

51

52Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Feature Classification

52

Normal cone

for a corner feature

(two large angles)

53Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Feature Detection

• opening angles of the normal cone = maxi,j <ni, nj> = mink <nk, ni x nj>

• edge features > 0, > 0 sharp edge

• corner features > 0, <= 0 sharp corner

53

54Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Feature Sampling

• Each pair ( pi , ni) defines a tangent element

• Intersect tangent planes to approximate

a piecewise smooth surface

• Find least squares solution by SVD

Overdetermined cases

Underdetermined cases

Suppress smallest singular value at edge

features

54

55Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Lookup Mesh Connectivity

55

. . .

56Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Modified Lookup Table

• Generate triangle fans centered around the

feature sample

56

. . .

57Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Feature Reconstruction

57

feature

detection

feature

samplingedge-flipping

58Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Results

• Mesh complexity Two additional triangles per feature sample Typically 10% overhead

• Computation time 20% to 40% overhead

• Improved approximation

• Parameters 0 and 0

False positive feature detection !?

• Applications ...

58

59Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

CSG ... CAD / CAM

59

65 x 65 x 65

60Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

CSG ... Milling Simulation

60

257 x 257 x 257

61Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Iso-Surface Extraction

61

65 x

65 x

65

62Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Iso-Surface Extraction

62

63Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Volumetric Representations

• Indirect Rendering:

Isosurface extraction: Marching Cubes

• Direct Rendering:

Ray Casting

63

64Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Volume Rendering

64

65Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Volume Rendering

65

66Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Volume Rendering

66

67Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Volume Rendering

67

68Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Ray Casting

• Maximum Intensity Projection

68

rays 0

Scalar value S

Maximum Smax

69Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Maximum Intensity Projection

69

70Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Absorption

70

Ray

s0

I(s0)

s

71Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Absorption

71

Ray

s0

I(s0)

s

Ray

ss~

~q(s)

s0

I(s0)

72Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Ray Casting

• Image order: for each pixel ...

• Shoot rays from eye through each image plane

pixel

• Integrate color c & opacity along the ray r

72

dsescrc

s

dttL

0

)(

0

)()(

73Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Volumetric Representations

73

74Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Opacity

• base color c, opacity

damping factor 1- = e-

emitted color c

• resulting (effective) color

c + (1-) cbackground

74

75Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Ray Casting

set color c(.) and opacity (.) for all voxels

for all pixels ui = (ui, vi)

find ray from eye through pixel ui : eye + d

init cacc(ui) = acc(ui) = 0

for all samples xj = (xj, yj, zj) = eye + j d

get c(xj) and (xj) by tri-linear interpolation

composite with cacc(ui) and acc(ui)

75

76Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Opacity Accumulation

• Continous compositing

76

• Discrete compositing

decucdttL

i

0

)(

0

)()(DE

DE

1)( ,)(with

))(1()()()(0

1

0

kbkgk

K

j

j

m

mjji

xcxc

xxxcuc

77Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Opacity Accumulation

77

i

ic

K

Kc

0

0

c

78Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Opacity Accumulation

78

C[0..K]

i

ic

K

Kc

0

0

c

79Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Opacity Accumulation

79

C[1..K]„back-to-front“

i

ic

K

Kc

0

0

c

80Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Opacity Accumulation

80

C[0..K-1]„front-to-back“

i

ic

K

Kc

0

0

c

81Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Back-to-Front Compositing

81

))(1())(1()()(

)()(

))(1()()(

0

1

1

1

00

0

1

0

xxxxc

xxc

xxxc

K

j

j

m

mjj

K

j

j

m

mjj

82Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Front-to-Back Compositing

• Iterative accumulation j = 0 .. K

with

82

)ˆ1(ˆˆ

)ˆ1(

j

jjcCC

1

0

)1()ˆ1(j

m

m

83Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Transfer Functions

• how to define the

base color c

opacity

• for each voxel ?

• CT, MRI, ...

• diffusion tensor imaging

83

84Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Transfer Functions

84

scalar value s

emission RGB

absorption A

T(s)

85Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Transfer Functions

85

0 1

α

86Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Transfer Functions

86

0 1

α

87Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Transfer Functions

87

0 1

α

88Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Transfer Functions

88

0 1

α

+ Shading

89Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Transfer Functions

89

0 1

α

+ Shading

+ Color coding

90Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Absorption vs. MIP

90

91Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Compositing Schemes

Depth

Inte

nsity Max

Average

Accumulate

First

91

92Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Compositing Schemes

• Compositing: First

• Extracts isosurfaces

Depth

Inte

nsity

First

92

93Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Compositing Schemes

• Compositing: Average

• Produces basically an X-ray picture

Average

Depth

Inte

nsity

93

94Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Compositing Schemes

• Maximum Intensity Projection (MIP)

• Often used for magnetic resonance angiograms

• Good to extract vessel structures

Max

Depth

Inte

nsity

94

95Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Compositing Schemes

• Compositing: Accumulate

• Emission-absorption model

• Make transparent layers visible (- classification)

Accumulate

Depth

Inte

nsity

95

96Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Volume Shading

• Lighting / Shading

Phong model, Gouraud shading

Estimate normal by

Approximate F(x,y,z) by central difference

96

),,(

),,(),,(

zyxF

zyxFzyxN

),,(),,(

),,(),,(

),,(),,(

2

1),,(

11

11

11

iiiiii

iiiiii

iiiiii

zyxFzyxF

zyxFzyxF

zyxFzyxF

zyxF

97Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Volume Rendering Modes

• Classification

assign spatial opacity values (xi, yi, zi)

assign for isovalues F(x,y,z) = (transfer

function)

isosurface ... = (=0) ... blur with radius r

97

otherwise

)()(0)(

)(0)(

,

,

,

)(

)(

0

11

1

)( iii

ii

i

ivi xFvxFxF

vxFxF

xF

vxF

rx

98Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Volume Rendering Modes

98

1

F

99Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Volume Rendering Modes

99

r

r F

100Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Volume Rendering Modes

100

r

r F

r

1

101Visual Computing Institute | Prof. Dr. Leif Kobbelt

Computer Graphics and Multimedia

Data Analysis and Visualization

Ray Casting

• Acceleration techniques

Spatial data structures (octree)

Find and skip empty regions

Find homogenous regions, use lower sample

rate

Early ray termination

Opacity threshold terminates ray traversal

Requires front-to-back traversal

Fast cell traversal (Bresenham-like)

101