Sei sulla pagina 1di 101

Scalar Field Visualization

Leif Kobbelt

Types of Data
dimension of nD
data type
3D

2D

1D

0D

1D
2

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

2D

3D

nD

dimension of
domain

Function Plots and Height Fields

Visualization of 1D or 2D scalar fields

1D scalar field:

IR IR

2D scalar field:

IR 2 IR

Visual 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
{( s, f ( s )) | s IR }

1D manifold: line

Visual 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

{( s, t , f ( s, t ) | ( s, t ) IR 2 }
2D manifold: surface

Surface representations
Wireframe
Hidden lines
Shaded surface

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

The Geometry of Images

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

The Geometry of Images

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

The Geometry of Images

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Isolines
Visualization of 2D scalar fields
Given a scalar function f : IR
and a scalar value
Isoline consists of points
{( x, y ) | f ( x, y ) c}

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


curves
Contour lines

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Isolines

10

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

10

Isolines

11

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

11

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

algorithm
for 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

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

12

Isolines

Marching squares

13

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

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

13

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

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

14

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

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

15

Isolines
We can distinguish the cases by a decider
Mid point decider

Interpolate the function value in the center

f center

1
( f i , j f i 1, j f i , j 1 f i 1, j 1 )
4

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

+
-

Not always correct solution

16

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

16

Isolines

Asymptotic decider

Consider the bilinear interpolant within a cell


The true isolines within a cell are hyperbolas

Cell boundaries

Asymptote

Asymptote
17

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

17

Isolines
Interpolate the function bilinearly
f ( x, y ) f i , j (1 x)(1 y ) f i 1, j x(1 y ) f i , j 1 (1 x) y f i 1 j 1 xy

Transform f() to
f ( x, y ) ( x x0 )( y y0 )

is the function value in the


intersection point
of the asymptotes

18

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

18

(x0, y0)

Isolines

If c we chose the right case, otherwise we


chose the left one
+

+
-

19

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

19

Isolines
Explicit transformation f() to
f ( x, y ) ( x x0 )( y y0 )

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

not possible

valid
20

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

20

3D Scalar Field Visualization

21

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

21

Volumetric Representations

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


Signed distance function
Sample on a uniform cartesian grid
Trilinear interpolation

22

22

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Volumetric Representations

F011
F001

F111
F101
F110

F000

23

23

F100

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

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

Volumetric Representations

Indirect Rendering:
Isosurface extraction: Marching Cubes

Direct Rendering:
Ray Casting

24

24

Visual 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

25

Visual 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

26

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Surface Sampling

in which voxel ?

27

27

Visual 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

28

Visual 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

29

Visual 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

30

Visual 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

31

Visual 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+1n
propagate min/max values upwards
surface extraction:
traverse only the relevant voxels
O(n3) O(n2 log n)
32

32

Visual 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

33

Visual 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

34

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Problems / Bad Approximation

35

35

Visual 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

36

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Error Quadrics
squared distance to plane:
T
T

v x, y, z ,1 ,
p a , b, c , d
2
2
T
dist p, v p , v vT pp T v : vT QP v

a 2 ab ac ad

2
ab b bc bd
QP
ac bc c 2 cd

2
ad bd cd d

sum distances to vertex' planes:

dist p, v
2

planes p
37

37

planes p

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

vT Q p v vT

T
Q
v

:
v
Qv v
p
planes p

Error Quadrics
optimal point that minimizes the error:

T
n p n p v d p n p

p a p , bp , c p , d p

:
n
with
n

1
p
p

solve using pseudo-inverse (SVD)


(underdetermined vs. overdetermined)
38

38

Visual 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

39

Visual 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

40

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Visit Each Gray Cell ...

41

41

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Compute Samples on Edges

d i , j ,k
i
, j, k

d
i
,
j
,
k
i

1
,
j
,
k

42

42

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Compute Samples on Edges

d i , j ,k
i, j
,k

d
i
,
j
,
k
i
,
j

1
,
k

43

43

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Compute Samples on Edges

d i , j ,k
i, j , k

d i , j ,k d i , j ,k 1

44

44

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Lookup Mesh Connectivity

...

45

45

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Cell Connectivity Table

46

46

Visual 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

47

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Feature Classification

Normal cone
for a smooth (flat)
non-feature region

48

48

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Feature Classification

Normal cone
for a smooth (flat)
non-feature region

49

49

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Feature Classification

Normal cone
for an edge feature
(one large angle)

50

50

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Feature Classification

51

51

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Feature Classification

Normal cone
for a corner feature
(two large angles)

52

52

Visual 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

53

Visual 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

54

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Lookup Mesh Connectivity

...

55

55

Visual 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

56

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Feature Reconstruction

feature
detection

57

57

feature
sampling

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

edge-flipping

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

58

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

CSG ... CAD / CAM

65 x 65 x 65
59

59

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

CSG ... Milling Simulation

257 x 257 x 257

60

60

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

65 x 65 x 65

Iso-Surface Extraction

61

61

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Iso-Surface Extraction

62

62

Visual 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

63

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Volume Rendering

64

64

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Volume Rendering

65

65

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Volume Rendering

66

66

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Volume Rendering

67

67

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Ray Casting
Maximum Intensity Projection

Maximum Smax
Scalar value S

68

68

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

ray

Maximum Intensity Projection

69

69

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Absorption
Ray

I(s0)
s0

70

70

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Absorption
Ray

I(s0)
s

s0

I(s0)
s0

71

71

Ray

q(s)

Visual 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


s

c(r ) c( s ) e
0

72

72

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

( t ) dt
0

ds

Volumetric Representations

73

73

Visual 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

74

Visual 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

75

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Opacity Accumulation

Continous compositing
L

c(ui ) c(E D) e

( E tD ) dt
0

Discrete compositing

c(ui ) c( x j ) ( x j ) (1 ( xm ))
j 0
m 0

with c( xk ) cbkg , ( xk ) 1
K

76

76

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

j 1

Opacity Accumulation

cK

K

77

77

ci

i

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

c0

0

Opacity Accumulation

C[0..K]

cK

K

78

78

ci

i

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

c0

0

Opacity Accumulation

C[1..K]

cK

K

79

79

ci

i

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

back-to-front

c0

0

Opacity Accumulation

C[0..K-1]

cK

K

80

80

ci

i

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

front-to-back

c0

0

Back-to-Front Compositing
j 1

c( x j ) ( x j ) (1 ( xm ))
j 0
m 0

c( x0 ) ( x0 )
j 1

c( x j ) ( x j ) (1 ( xm )) (1 ( x0 ))
j 1
m 1

81

81

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Front-to-Back Compositing

Iterative accumulation j = 0 .. K

C C c j j (1 )

j (1 )
with

j 1

(1 ) (1 m )
m 0

82

82

Visual 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

83

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Transfer Functions

scalar value s
T(s)

emission RGB
absorption A
84

84

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Transfer Functions

85

85

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Transfer Functions

86

86

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Transfer Functions

87

87

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Transfer Functions

+ Shading

88

88

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Transfer Functions

+ Shading
+ Color coding
89

89

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Absorption vs. MIP

90

90

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Intensity

Compositing Schemes

Max

Accumulate
Average
First

Depth
91

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

91

Compositing Schemes

Intensity

Compositing: First
Extracts isosurfaces

First

Depth
92

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

92

Compositing Schemes

Intensity

Compositing: Average
Produces basically an X-ray picture

Average

Depth
93

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

93

Compositing Schemes

Intensity

Maximum Intensity Projection (MIP)


Often used for magnetic resonance angiograms
Good to extract vessel structures
Max

Depth
94

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

94

Compositing Schemes

Intensity

Compositing: Accumulate
Emission-absorption model
Make transparent layers visible (- classification)

Accumulate

Depth
95

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

95

Volume Shading

Lighting / Shading
Phong model, Gouraud shading

F ( x , y , z )
Estimate normal by N ( x, y, z )
F ( x , y , z )
Approximate F(x,y,z) by central difference

F ( xi 1 , yi , zi ) F ( xi 1 , yi , zi )

1
F ( x, y, z ) F ( xi , yi 1 , zi ) F ( xi , yi 1 , zi )
2

F
(
x
,
y
,
z
)

F
(
x
,
y
,
z
)
i 1
i
i
i
i
i 1

96

96

Visual 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
1
,
F ( xi ) 0 F ( xi ) v
1 F ( xi ) v
( xi ) v 1
, F ( xi ) 0 F ( xi ) v F ( xi )
r F ( xi ) ,
otherwise
0

97

97

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Volume Rendering Modes

98

98

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Volume Rendering Modes

rF

99

99

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Volume Rendering Modes

rF

100

100

Visual 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

101

Visual Computing Institute | Prof. Dr. Leif Kobbelt


Computer Graphics and Multimedia
Data Analysis and Visualization

Potrebbero piacerti anche