lec 3 scientific visualization
DESCRIPTION
Computer graphicsTRANSCRIPT
ScientificVisualization
Leif Kobbelt
2Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Overview
• introduction to visualization
•mapping & rendering
• data cleanup & filtering
• data structures & implementation
2
3Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
History
Map of Catal Hyük
6200 BC
Excavation
Reconstruction
3
4Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
History
• Time series: inclination of planets
(10th century)
4
5Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
History
Vector visualization (1686) Height field (1879)
5
6Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
History
Napoleon‘s campaign against Russia (1812/13)
Cartography (1861)
6
7Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
History
“The purpose of computing
is insight not numbers”
(Hamming 1962)
7
8Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
History
• direct implications the data flood from super computer simulations can only
be dealt with visually
needs a visualization specialist and an interdisciplinary team
new developments in hard/software, nets, etc are necessary
• advantages in the long term will be faster insight
faster product–development cycles
stronger position in global competition
8
9Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
The Visualization Pipeline
simulation data bases sensors
raw data
visualization data
rendering representation
images / video
9
10Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
The Visualization Pipeline
simulation data bases sensors
raw data
visualization data
rendering representation
images / video
filtering
10
11Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
The Visualization Pipeline
simulation data bases sensors
raw data
visualization data
rendering representation
images / video
filtering
mapping
11
12Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
The Visualization Pipeline
simulation data bases sensors
raw data
visualization data
rendering representation
images / video
filtering
mapping
rendering
12
13Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Filtering
• data format conversion
• clipping / croping
• denoising
• sub- / super- / re-sampling
• interpolation / approximation
• classification / segmentation
13
14Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Mapping
• graphics primitives
points, lines, surfaces, volumes
polynomials vs. piecewise linear
color, texture, transparency
• iso-contours of scalar fields
• height fields
• vectors, glyphs, ...
14
15Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Rendering
• geometric scenes
surfaces, volumes, images
• intuition
perspective, visibility
• realism
shadows, lighting, reflections
15
16Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Reliability
• errors in ...
data acquisition
filtering
mapping / interpolation
rendering
16
17Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Reliability
• errors in ...
data acquisition
sampling density → alias
quantization
filtering
mapping / interpolation
rendering
17
18Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Reliability
• errors in ...
data acquisition
filtering
noise to signal ratio
features
mapping / interpolation
rendering
18
19Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Reliability
• errors in ...
data acquisition
filtering
mapping / interpolation
approximation quality
intuition (plausible real world analogue)
rendering
19
20Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Reliability
• errors in ...
data acquisition
filtering
mapping / interpolation
rendering
consider human perception
avoid distraction (too much information)
too much realism (pseudo information)
20
21Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Types of Data
• domain dimension
• range dimension
21
22Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Types of Data
• domain dimensionunivariate / „curves“ (d=1)
bivariate / „surface“ (d=2)
trivariate / „volumes“ (d=3)
quadvariate / e.g. „space-time volumes“ (d=4)
• range dimension
22
23Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Types of Data
• domain dimension
• range dimension
scalar (n=1)
planar (n=2)
spatial (n=3)
multi-dimensional
vector valued
23
24Visual 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
24
25Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Applications
• Flow Visualization
© N. Max, LLNL
25
26Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Applications
• Flow Visualization
© N. Max, LLNL
26
27Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Applications
• Information Visualization
27
28Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Applications
• Information Visualization
Web hyperlinks
(quasi-hierarchical
graphs)
28
29Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Volume Visualization
• Visualization of numerical simulation results large and unstructured data sets
29
30Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Volume Visualization
• Visualization of medical data setsanalysis and pre-operative planning
30
31Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Vector Field Visualization
• Visualization of flow phenomena
31
32Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Vector Field Visualization
• Feature extraction
32
33Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Grids
33
34Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Data Structures
• domain structure
regular / grid
semi-regular (piecewise regular)
unstructured / scattered
• topology vs. geometry
linear, rectilinear, curvilinear
multigrids
sparse grids
34
35Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Data Structures
35
36Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Data Structures
36
37Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Data Structures
• Example
37
38Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Data Structures
• Example
38
39Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Data Structures
• Example
39
40Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Volumetric Representations
• Voxel grid O(h-3)
• Adaptive octree Three color octree O(h-2) Adaptively sampled distance fields O(h-1)
• kD-Tree
• Binary space partition Partition the space along arbitrary planes Piecewise linear C-1 approximation Align cells to surface
40
41Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Three Color Octree
41
42Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Three Color Quadtree
42
12040 cells1048576 cells
43Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Three Color Quadtree
43
12040 cells1048576 cells 895 cells
44Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Adaptively Sampled Distance Fields
44
12040 cells1048576 cells 895 cells
45Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Adapively Sampled Distance Fields
45
12040 cells 895 cells
46Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Adaptively Sampled Distance Fields
46
12040 cells 895 cells 254 cells
47Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Binary Space Partitions
47
12040 cells 895 cells 254 cells
48Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Binary Space Partitions
48
254 cells895 cells
49Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Coding
49
50Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Coding
• Issues: What kind of data can be color-coded ? What kind of information can be efficiently visualized?
• Areas of application Provide information coding Designate or emphasize a specific target in a crowded display Provide a sense of realism or virtual realism Provide warning signals or signify low probability events Group, categorize, and chunk information Convey emotional content Provide an aesthetically pleasing display
50
51Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Coding
• Possible problems:Distracts the user when inadequately used
Dependent on viewing and stimulus conditions
Ineffective for color deficient individuals
Results in information overload
Unintentional conflicts with cultural conventions
Cause unintended visual effects and discomfort
51
52Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Coding
• Nominal dataColors need to be
distinguished
Localization of data
Around 8 different
basis colors
co-citation analysis
52
53Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Coding
• Ordinal and quantitative data Ordering of data should be represented by ordering of colors
Psychological aspects
x1 < x2 < ... < xn E(c1) < E(c2 ) < ... < E(cn )
• Color coding for scalar data Assign to each scalar value a different color value
Assignment via transfer function T
T : scalarvalue colorvalue
Code color values into a color lookup table
0
Scalar (0,1)
RiGiBi
(0,1) (0,N-1)255
53
54Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Coding
• Pre-shading vs. post-shadingPre-shading Assign color values to original function values (e.g. at vertices of a cell)
Interpolate between color values (within a cell)
Post-shading Interpolate between scalar values (within a cell)
Assign color values to interpolated scalar values
• Linear transfer function for color coding Specify color for fmin and for fmax
(Rmin ,Gmin , Bmin) and (Rmax , Gmax , Bmax)
Linearly interpolate between them
)()( maxmaxmax
minmax
maxminminmin
minmax
min ,B,GRff
ff,B,GR
ff
fff
54
55Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Coding
• Different color spaces lead to different interpolation functions
• In order to visualize (enhance/suppress) specific details, non-linear
color lookup tables are needed
• Gray scale color table Intuitive ordering
• Rainbow color table Less intuitive
• Temperature color table
55
56Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Coding
• Bivariate and trivariate color tables are not very useful: No intuitive ordering
Colors hard to distinguish
• Many more color tables for specific applications
• Design of good color tables depends on psychological /
perceptional issues
• Often interactive specification of transfer functions to
extract important features
56
57Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Coding
• Example Special color table to visualize the brain tissue
Special color table to visualize the bone structure
Original Brain Tissue
57
58Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Quantization
• Task: Select a set of colors to represent the color gamut of an
image
Compute mapping from color space to representrative
color
• „True color“ image: 24 bits per pixel
• Colormap: 1 color index per pixel adresses color
lookup table
58
59Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Quantization
• Naive idea: Uniform quantizationDrawback: many colors in colormap are not used in final
image
bad image reproduction
• Better: Median Cut AlgorithmChoose color map based on color distribution in original
image
Pro: uses every color in the colormap
closer image reproduction
59
60Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
RGB Space
R
G
B
60
61Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
RGB Space
R
G
B
61
62Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Median Cut (2D)
8 colors
62
63Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Median Cut (2D)
8 colors
63
64Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Median Cut (2D)
8 colors
64
65Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Median Cut (2D)
8 colors
65
66Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Median Cut (2D)
8 colors
66
67Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Median Cut (2D)
8 colors
67
68Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Median Cut (2D)
8 colors
68
69Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Median Cut (2D)
8 colors
69
70Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Median Cut Algorithm
Color_Quantization(image I, k) {
for each pixel in I
map to RGB space
B = {RGB space}
for (i = 1 to k-1) {
L = Heaviest(B)
split L at median along longest dimension into L1 and L2
remove L from B and add L1, L2
}
for each box in B
assign color representative
for each pixel in I
map to representative
}
70
71Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Quantization
16 Mio.
71
72Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Quantization
256
72
73Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Quantization
128
73
74Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Quantization
64
74
75Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Quantization
32
75
76Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Quantization
16
76
77Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Quantization
8
77
78Visual Computing Institute | Prof. Dr. Leif Kobbelt
Computer Graphics and Multimedia
Data Analysis and Visualization
Color Quantization
16 Mio.
78