CPSC 599.28/601.28 2D/3D Visualization · Medical Scanning • MRI, CT, SPECT, PET, ultrasound...

Preview:

Citation preview

1

CPSC 599.28/601.282D/3D Visualization

Sheelagh Carpendale

Frameworks

• Shneiderman– Data, Tasks

• Bertin (Mackinlay/Card)– Data Types, Marks, Retinal Attributes (including

Position)

• Hanrahan, Tory/Moeller– Data/Conceptual Models

Slide credits Tamara Munzner (UBC)

2

Creating a Visualization

Starting point • Tasks

– Why - motivation• Data

– Discrete, continuous, variable– Type – int, float, etc.

• Domain – Meta data, semantics, conceptual model

Creating a Visualization

End point • Image

– animation– interaction

• A clear explanation of what the image means in terms of data

3

Creating a Visualization

To get there (the middle part)• Mapping

– Use domain knowledge & data semantics– Use human perception– Metaphor (when appropriate)– Data attributes or dimension to visual variables

(channels)

• Processing – Algorithms– Computational issues (constraints)

Mackinlay, Card (from Bertin)

Data Variables– 1D, 2D, 3D, 4D, 5D, etc

Data Types– nominal, ordered, quantitative

Marks– point, line, area, surface, volume– geometric primitives

Retinal Properties– size, brightness, color, texture, orientation, shape...– parameters that control the appearance of

geometric primitives– separable channels of information flowing from

retina to brain

4

Shneiderman (data & task taxomony)

Data– 1D, 2D, 3D, nD, trees, networks (text – Hanrahan)

Tasks– Overview, Zoom, Filter, Details-on-demand,– Relate, History, Extract

Data alone is not enough– Task …

Combinatorics of Encodings

Challenge• pick the best encoding from exponential number of

possibilities (n)8Principle of Consistency• properties of the image should match properties of

dataPrinciple of Importance Ordering• encode most important information in most effective

way

[Hanrahan, graphics.stanford.edu/courses/cs448b-04-winter/lectures/encoding]

5

Overview

• What is SciVis?• Data & Applications• Iso-surfaces• Direct Volume Rendering• Vector Visualization• Challenges

Slide credits Tamara Munzner (UBC) & Melanie Tory (U Victoria)– who in turn used resources from– Torsten Möller (Simon Fraser University)– Raghu Machiraju (Ohio State University)– Klaus Mueller (SUNY Stony Brook)

Difference between SciVis and InfoVis

Direct Volume Rendering

Streamlines

Line Integral Convolution

GlyphsIsosurfaces

SciVis

Scatter Plots

Parallel Coordinates

Node-link Diagrams

InfoVis[Verma et al .,Vis 2000]

[Hauser et al.,Vis 2000]

[Cabral & Leedom,SIGGRAPH 1993]

[Fua et al. , Vis 1999]

[http://www.axon.com/gn_Acuity.html]

[Lamping et al., CHI 1995]

6

Difference between SciVis and InfoVis

• Card, Mackinlay, & Shneiderman:– SciVis: Scientific, physically based– InfoVis: Abstract

• Munzner:– SciVis: Spatial layout given– InfoVis: Spatial layout chosen

• Tory & Möller:– SciVis: Spatial layout given + Continuous– InfoVis: Spatial layout chosen + Discrete– Everything else -- ?

Overview

• What is SciVis?• Data & Applications• Iso-surfaces• Direct Volume Rendering• Vector Visualization• Challenges

7

Medical Scanning• MRI, CT, SPECT, PET, ultrasound

Medical Scanning -Applications• Medical education for anatomy, surgery, etc.• Illustration of medical procedures to the patient

8

Medical Scanning -Applications• Surgical simulation for treatment planning• Tele-medicine• Inter-operative visualization in brain surgery,

biopsies, etc.

Biological Scanning• Scanners: Biological scanners, electronic

microscopes, confocal microscopes

• Apps – physiology, paleontology, microscopic analysis…

9

Industrial Scanning

• Planning (e.g., log scanning)• Quality control• Security (e.g. airport scanners)

Scientific Computation -Domain• Mathematical analysis

• ODE/PDE (ordinary and partialdifferential equations)

• Finite element analysis (FE)

• Supercomputer simulations

10

Scientific Computation -Apps• Flow Visualization

Overview

• What is SciVis?• Data & Applications• Iso-surfaces• Direct Volume Rendering• Vector Visualization• Challenges

11

Isosurfaces - Examples

Isolines Isosurfaces

Isosurface Extraction• by contouring

– closed contours– continuous– determined by iso-value

• several methods– marching cubes is most

common

1 2 3 4 3

2 7 8 6 2

3 7 9 7 3

1 3 6 6 3

0 1 1 3 2

Iso-value = 5

12

MC 1: Create a Cube• Consider a Cube defined by eight data values:

(i,j,k) (i+1,j,k)

(i,j+1,k)

(i,j,k+1)

(i,j+1,k+1) (i+1,j+1,k+1)

(i+1,j+1,k)

(i+1,j,k+1)

MC 2: Classify Each Voxel• Classify each voxel according to whether it lies

outside the surface (value > iso-surface value)inside the surface (value <= iso-surface value)

8Iso=7

8

8

55

1010

10

Iso=9

=inside=outside

13

MC 3: Build An Index• Use the binary labeling of each voxel to create an index

v1 v2

v6

v3v4

v7v8

v5

inside =1outside=0

11110100

00110000Index:

v1 v2 v3 v4 v5 v6 v7 v8

MC 4: Lookup Edge List• For a given index, access an array storing a list of edges

• all 256 cases can be derived from 15 base cases

14

MC 4: Example• Index = 00000001• triangle 1 = a, b, c

a

b

c

MC 5: Interp. Triangle Vertex• For each triangle edge, find the vertex location along the edge using linear

interpolation of the voxel values

=10=0

T=8T=5

i i+1x

[ ][ ] [ ]

−+

−+=iviv

ivTix

1

15

MC 6: Compute Normals• Calculate the normal at each cube vertex

1,,1,,

,1,,1,

,,1,,1

−+

−+

−+

−=

−=

−=

kjikjiz

kjikjiy

kjikjix

vvG

vvG

vvG

• Use linear interpolation to compute the polygon vertex normal

MC 7: Render!

16

Overview

• What is SciVis?• Data & Applications• Iso-surfaces• Direct Volume Rendering• Vector Visualization• Challenges

Direct Volume Rendering Examples

17

Direct Volume Rendering Examples

Classification• original data set has application specific

values (temperature, velocity, proton density, etc.)

• assign these to color/opacity values to make sense of data

• achieved through transfer functions

18

Transfer Functions (TF’s)• Simple (usual) case: Map

data value f to color and opacity

Human Tooth CT

α(f)RGB(f)

f

RGB

Shading,Compositing…

α

Gordon Kindlmann

TF’s• Setting transfer functions is difficult, unintuitive,

and slow

f

α

f

α

f

α

f

α

Gordon Kindlmann

19

Transfer Function Challenges• Better interfaces:

– Make space of TFs less confusing

– Remove excess “flexibility”– Provide guidance

• Automatic / semi-automatic transfer function generation– Typically highlight boundaries

Overview

• What is SciVis?• Data & Applications• Iso-surfaces• Direct Volume Rendering• Vector Visualization• Challenges

20

Flow Visualization

• Traditionally – Experimental Flow Vis• Now – Computational Simulation

• Typical Applications:– Study physics of fluid flow– Design aerodynamic objects

Traditional Flow Experiments

21

Techniques

Contours

StreamlinesJean M. Favre

Glyphs (arrows)

Techniques

22

Techniques - Stream-ribbon

• Trace one streamline and a constant size vector with it

• Allows you to see places where flow twists

Techniques - Stream-tube

• Generate a stream-line and widen it to a tube• Width can encode another variable

23

Mappings - Flow Volumes

• Instead of tracing a line - trace a small polyhedron

Overview

• What is SciVis?• Data & Applications• Iso-surfaces• Direct Volume Rendering• Vector Visualization• Challenges

24

Challenges - Accuracy• Need metrics -> perceptual metric• Deal with unreliable data (noise,

ultrasound)

Challenges - Accuracy

• Irregular data sets

regular rectilinearuniform curvilinear

Structured Grids:

regular irregular hybrid curved

Unstructured Grids:

25

Challenges - Speed/Size

• Efficient algorithms• Hardware developments (VolumePro)• Utilize current hardware (nVidia,

ATI)• Compression schemes• Terabyte data sets

Challenges - HCI

• Need better interfaces

• Which method is best?

26

Challenges - HCI• “Augmented” reality• Explore novel I/O devices

Dimensionality

• Point data• 1D data

• 2D data

• 3D data• MD data

• Point representations• 1D representations• 1D+ representations• 2D representations• 2D+ representations• 3D representations• ???

27

Point data

Point dataA single data point

Examples?Speed Temperature

1

2

3

4

56

7

8

9

1211

10

Point representation

linear

1D data / 1D representations

1D representation

1D+ representation

28

Beethoven's Für Elise

top based on pitch

Bottom based on intervals

Thread Arcs: an email thread visualization

Different types of sorting Shows different structure

29

• A 1 N relation cannot be expressed in a single horizontal dot plot because multiple tuples are mapped to the same position

1D data / 1D representations

[Hanrahan, graphics.stanford.edu/courses/cs448b-04-winter/lectures/encoding]

ThemeRiver: Visualizing Theme Changes over Time

Susan Havre, Beth Hetzler, and Lucy NowellBattelle Pacific Northwest Division

30

1D+ Visual Representations

more than one strip of 1D representation

more than one strip of 1D representation

partial use of2nd dimension

1 vastly dominantdimension

1 vastly dominantdimension

2D data

A relation – commonly line graphs, scatter plots

31

2D representations

Most of InfoVis – arguably all of InfoVis

Dynamic Queries: HomeFinder

• filter with immediate visual feedback• “starfield”: scatterplot

Dynamic Queries: Database Searching by Direct Manipulation, Ben Shneiderman (Maryland), Chris Williamson (Maryland), Christopher Ahlberg (Chalmers), CHI 92 Technical Video Program

32

Dynamic Queries: FilmFinder

Dynamic Queries: FilmFinder

33

2D+ Visual Representations

2D representation with a 3D interpretation

height fields

layered 2D representations

SDM• sophisticated

selection, • highlighting, • object

manipulation

SDM: Selective Dynamic Manipulation of Visualizations, Mei C. Chuah, Steven F. Roth, Joe Mattis, John Kolojejchick, Proc. UIST '95

34

Space-Time Paths

The space-time cube revisited from a geovisualization perspective. Menno-Jan Kraak, Proceedings of the 21st International Cartographic Conference (ICC), 2003, pp. 1988-96

Space-Time Aquarium

Space-time paths of Asian American women and African American women in Portland, Oregon

Geovisualization of Human Activity Patterns Using 3D GIS: A Time-Geographic Approach - MP Kwan, J Lee - Spatially Integrated Social Science, 2003

35

(Collins, 2007)

36

(Heer, 2006 [prefuse]) & (Fry, 2004)

Understanding Multiple Relations

• What is the relationship…– across different views of the same data?– across different relations in the same dataset?– across multiple relations and datasets?

37

Formalizing Multiple Relations Visualizations

Formalism for Multiple Relationship Visualization Comparison

Conference Attendee Data Professor / Student Node-link social network graph

Dataset Relation Visualization

Formalizing Multiple Relations Visualizations

Dataset Relation Visualization

AD

Formalism for Multiple Relationship Visualization Comparison

38

Formalizing Multiple Relations Visualizations

Dataset Relation Visualization

AD )( AA DR

Formalism for Multiple Relationship Visualization Comparison

Formalizing Multiple Relations Visualizations

Dataset Relation Visualization

AD )( AA DR )( AAA DRVis →

Formalism for Multiple Relationship Visualization Comparison

39

Formalizing Multiple Relations Visualizations

Dataset Visualization

AD

Relation

)( AA DR

)( AAA DRVis →

Formalism for Multiple Relationship Visualization Comparison

Formalizing Multiple Relations Visualizations

Dataset Visualization

AD

Relation

)( AA DR

)( AAA DRVis →Relation

)( AB DR

Formalism for Multiple Relationship Visualization Comparison

40

Formalizing Multiple Relations Visualizations

Dataset

AD

Relation

)( AA DR

Relation

)( AB DR

Visualization

)( AAB DRVis →

Visualization

)( AAA DRVis →

Formalism for Multiple Relationship Visualization Comparison

Formalizing Multiple Relations Visualizations

Dataset

AD

Relation

)( AA DR

Relation

)( AB DR

Visualization

)( AAA DRVis →

Visualization

)( AAB DRVis →

Visualization

)( ABC DRVis →

Formalism for Multiple Relationship Visualization Comparison

41

Multiple Relation Visualizations

Formalism for Multiple Relationship Visualization Comparison

Individual Visualizations

• Any datasets, relations, and visualizations

• Manually compare• e.g. different charts in ExcelFormalism for Multiple Relationship Visualization Comparison

42

Coordinated Views

Formalism for Multiple Relationship Visualization Comparison

Coordinated Views

)( AAA DRVis →

Formalism for Multiple Relationship Visualization Comparison

43

Coordinated Views

)( AAA DRVis → )( ABB DRVis →

Formalism for Multiple Relationship Visualization Comparison

Coordinated Views

• Any datasets, relations, and visualizations• Interactive highlighting

• e.g., Snap-Together Visualization (North & Shneiderman, 2000)

)( AAA DRVis → )( ABA DRVis →

Formalism for Multiple Relationship Visualization Comparison

44

Compound Graphs

Formalism for Multiple Relationship Visualization Comparison

Compound Graphs

)( AAA DRVis →

Formalism for Multiple Relationship Visualization Comparison

45

Compound Graphs

)()( ABAAA DRDRVis +→

Formalism for Multiple Relationship Visualization Comparison

• Secondary relation has no spatial rights

• e.g., Overlays on Treemaps (Fekete et al., 2003), ArcTrees(Neumann et al., 2005), Hierarchical Edge Bundles (Holten, 2006)

Compound Graphs

)(, ABAA DRRVis →

Formalism for Multiple Relationship Visualization Comparison

Use of the powerful spatial dimension to encode data relationships.

46

Hierarchical Edge Bundles

Formalism for Multiple Relationship Visualization Comparison

• Secondary relation has no spatial rights

• e.g., Overlays on Treemaps (Fekete et al., 2003), ArcTrees(Neumann et al., 2005), Hierarchical Edge Bundles (Holten, 2006)

Hierarchical Edge Bundles

Formalism for Multiple Relationship Visualization Comparison

47

• Secondary relation has no spatial rights• Hierarchical Edge Bundles (Holten, 2006)

Hierarchical Edge Bundles

Formalism for Multiple Relationship Visualization Comparison

Semantic Substrates

AD

Formalism for Multiple Relationship Visualization Comparison

48

Semantic Substrates

AD

1AD

Formalism for Multiple Relationship Visualization Comparison

Semantic Substrates

AD 2AD

1AD

Formalism for Multiple Relationship Visualization Comparison

49

Semantic Substrates

AD 2AD

1AD

nAD

Formalism for Multiple Relationship Visualization Comparison

Semantic Substrates

Formalism for Multiple Relationship Visualization Comparison

1AD2AD

50

Semantic Substrates

Formalism for Multiple Relationship Visualization Comparison

)(1AAA DRVis → )(

2AAA DRVis →

Semantic Substrates

)(1AAA DRVis → )(

2AAA DRVis →

)( AAA DRVis →

Formalism for Multiple Relationship Visualization Comparison

51

Semantic Substrates

• Single visualization, single relation• Semantically meaningful data subsets• Spatial rights for all relations

(Shneiderman and Aris, 2006)

Formalism for Multiple Relationship Visualization Comparison

VisLink

Formalism for Multiple Relationship Visualization Comparison

52

VisLink

)( AAA DRVis →

Formalism for Multiple Relationship Visualization Comparison

VisLink

)( AAA DRVis → )( ABB DRVis →

Formalism for Multiple Relationship Visualization Comparison

53

VisLink

)( AAA DRVis → )( ABB DRVis →

Formalism for Multiple Relationship Visualization Comparison

)( BAB DRVis →

VisLink

)( AAA DRVis → )( ABB DRVis →

))(),(( ABAABA DRDRTVis →+

Formalism for Multiple Relationship Visualization Comparison

54

VisLink

• Visualize second order relations between visualizations• Across any datasets, relations, visualizations for which a

relation can be defined• All component visualizations retain spatial rights

))(),(( ABAABA DRDRTVis →+

Formalism for Multiple Relationship Visualization Comparison

VisLink & Semantic Substrates

)(1AAA DRVis → )(

2AAA DRVis →

)( AAA DRVis →

)( AAA DRVis → )( ABB DRVis →

))(),(( ABAABA DRDRTVis →+

Formalism for Multiple Relationship Visualization Comparison

55

• Single visualization technique• Semantic subsets of data provide added meaning

VisLink & Semantic Substrates

)(1AAA DRVis → )(

2AAA DRVis →

)( AAA DRVis →

)( AAA DRVis → )( ABB DRVis →

))(),(( ABAABA DRDRTVis →+

Formalism for Multiple Relationship Visualization Comparison

• Any number of different relations and visualizations• Second order relations revealed in inter-plane edges

VisLink & Semantic Substrates

)(1AAA DRVis → )(

2AAA DRVis →

)( AAA DRVis →

)( AAA DRVis → )( ABB DRVis →

))(),(( ABAABA DRDRTVis →+

Formalism for Multiple Relationship Visualization Comparison

56

VisLink

VisLink Visualization

VisLink Case Study: Lexical Data

WordNet IS-A hierarchy (RA) using radial tree (VisA)

Similarity clustering (RB) using force-directed layout (VisB)

??

VisLink Visualization

57

Edge Detail

• Bundled: one-to-many edges

• Smooth:Chaiken corner cutting

• Transparent:bundles more opaque

• Directed:orange-to-green

VisLink Visualization

Zoom

VisLink Visualization

58

Filter

VisLink Visualization

References• Chapter 1, Readings in Information Visualization: Using Vision to

Think. Stuart Card, Jock Mackinlay, and Ben Shneiderman, Morgan Kaufmann 1999.

• The Structure of the Information Visualization Design Space. Stuart Card and Jock Mackinlay, Proc. InfoVis 97 [citeseer.ist.psu.edu/card96structure.html]

• The Eyes Have It: A Task by Data Type Taxonomy for Information Visualizations. Ben Shneiderman, Proc. 1996 IEEE Visual Languages, also Maryland HCIL TR 96-13 [citeseer.ist.psu.edu/shneiderman96eyes.html]

• Polaris: A System for Query, Analysis and Visualization of Multi-dimensional Relational Databases. Chris Stolte, Diane Tang and Pat Hanrahan, IEEE TVCG 8(1), January 2002. [graphics.stanford.edu/papers/polaris]

• The Value of Visualization. Jarke van Wijk. Visualization 2005 [www.win.tue.nl/ vanwijk/vov.pdf]

59

References• Automating the Design of Graphical Presentations of Relational

Information. Jock Mackinlay, ACM Transaction on Graphics, vol. 5, no. 2, April 1986, pp. 110-141.

• Semiology of Graphics, Jacques Bertin, Gauthier-Villars 1967, EHESS 1998

• The Grammar of Graphics, Leland Wilkinson, Springer-Verlag1999

• Rethinking Visualization: A High-Level Taxonomy Melanie Tory and Torsten Moeller, Proc. InfoVis 2004, pp. 151-158.

Recommended