volume visualization acknowledgements: torsten möller (sfu)

51
Volume Volume Visualization Visualization Acknowledgements: Torsten M Acknowledgements: Torsten M öller öller (SFU) (SFU)

Post on 21-Dec-2015

223 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Volume Visualization Acknowledgements: Torsten Möller (SFU)

Volume VisualizationVolume Visualization

Acknowledgements: Torsten MAcknowledgements: Torsten Möller öller (SFU)(SFU)

Page 2: Volume Visualization Acknowledgements: Torsten Möller (SFU)

2

Direct Volume Rendering

Streamlines

Line Integral Convolution

GlyphsIsosurfaces

SciVis

Scatter Plots

Parallel Coordinates

Node-link Diagrams

InfoVisVerma et al.

Hauser et al.

Cabral & Leedom

Fua et al.

Lamping et al.

Page 3: Volume Visualization Acknowledgements: Torsten Möller (SFU)

3

OverviewOverview

►Data & ApplicationsData & Applications►Slicer toolsSlicer tools► Iso-surfacesIso-surfaces►Direct Volume RenderingDirect Volume Rendering►ChallengesChallenges

Page 4: Volume Visualization Acknowledgements: Torsten Möller (SFU)

4

Medical ScanningMedical Scanning

► MRI, CT, SPECT, PET, ultrasoundMRI, CT, SPECT, PET, ultrasound

Page 5: Volume Visualization Acknowledgements: Torsten Möller (SFU)

5

Medical Scanning - Medical Scanning - ApplicationsApplications

► DiagnosisDiagnosis► Surgery planningSurgery planning► Tele-medicineTele-medicine► Inter-operative visualization in brain surgery, Inter-operative visualization in brain surgery,

biopsies, etc.biopsies, etc.

Page 6: Volume Visualization Acknowledgements: Torsten Möller (SFU)

6

Medical Scanning - Medical Scanning - ApplicationsApplications

► Medical education for anatomy, surgery, etc.Medical education for anatomy, surgery, etc.► Illustration of medical procedures to the patientIllustration of medical procedures to the patient

Page 7: Volume Visualization Acknowledgements: Torsten Möller (SFU)

7

Biological ScanningBiological Scanning

► Scanners:Scanners: Biological scanners, electronic Biological scanners, electronic microscopes, confocal microscopesmicroscopes, confocal microscopes

► AppsApps – physiology, paleontology, microscopic – physiology, paleontology, microscopic analysis…analysis…

Page 8: Volume Visualization Acknowledgements: Torsten Möller (SFU)

8

Industrial ScanningIndustrial Scanning

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

Page 9: Volume Visualization Acknowledgements: Torsten Möller (SFU)

9

Scientific Computation - DomainScientific Computation - Domain

► Mathematical analysisMathematical analysis

► ODE/PDE (ordinary and partialODE/PDE (ordinary and partialdifferential equations)differential equations)

► Finite element analysis (FE)Finite element analysis (FE)

► Supercomputer simulationsSupercomputer simulations

Page 10: Volume Visualization Acknowledgements: Torsten Möller (SFU)

10

Scientific Computation - AppsScientific Computation - Apps

► Flow VisualizationFlow Visualization(next week)(next week)

Tecplot.com

Compassis.com

Page 11: Volume Visualization Acknowledgements: Torsten Möller (SFU)

11

Data DimensionalityData Dimensionality

►3D (spatial data) or 4D (3D spatial + 3D (spatial data) or 4D (3D spatial + time)time)

►May be multivariate (several data May be multivariate (several data values at each point)values at each point)

Voxel

Page 12: Volume Visualization Acknowledgements: Torsten Möller (SFU)

12

OverviewOverview

►Data & ApplicationsData & Applications►Slicer toolsSlicer tools► Iso-surfacesIso-surfaces►Direct Volume RenderingDirect Volume Rendering►ChallengesChallenges

Page 13: Volume Visualization Acknowledgements: Torsten Möller (SFU)

13

3D Slicer

Volume Slicer

McGuffin et al.

Page 14: Volume Visualization Acknowledgements: Torsten Möller (SFU)

14

OverviewOverview

►Data & ApplicationsData & Applications►Slicer toolsSlicer tools► Iso-surfacesIso-surfaces►Direct Volume RenderingDirect Volume Rendering►ChallengesChallenges

Page 15: Volume Visualization Acknowledgements: Torsten Möller (SFU)

15

Isosurfaces - ExamplesIsosurfaces - ExamplesIsolines

Isosurfaces

Tecplot.com

Page 16: Volume Visualization Acknowledgements: Torsten Möller (SFU)

16

Isosurface ExtractionIsosurface Extraction

► by contouringby contouring ““marching cubes” marching cubes”

is most common is most common methodmethod

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

Page 17: Volume Visualization Acknowledgements: Torsten Möller (SFU)

17

MC: Classify Each VoxelMC: Classify Each Voxel

► Each voxel is eitherEach voxel is either- outside the surface (> isovalue) - outside the surface (> isovalue) - inside the surface (<= isovalue)- inside the surface (<= isovalue)

8Iso=78

8

55

10

10

10

Iso=9

=inside=outside

Page 18: Volume Visualization Acknowledgements: Torsten Möller (SFU)

18

MC: Assign TrianglesMC: Assign Triangles

► all 256 cases can be derived from 15 base casesall 256 cases can be derived from 15 base cases

Page 19: Volume Visualization Acknowledgements: Torsten Möller (SFU)

19

MC: ExampleMC: Example

a

b

c

Page 20: Volume Visualization Acknowledgements: Torsten Möller (SFU)

20

MC: Find Edge LocationsMC: Find Edge Locations► For each triangle edge, find the vertex location along the edge using linear For each triangle edge, find the vertex location along the edge using linear

interpolation of the voxel valuesinterpolation of the voxel values

=10=0

Isovalue = 8Isovalue = 3

i i+1x

Page 21: Volume Visualization Acknowledgements: Torsten Möller (SFU)

21

MC: Compute NormalsMC: Compute Normals► Calculate the normal at each cube vertex using central differencing:Calculate the normal at each cube vertex using central differencing:

1,,1,,

,1,,1,

,,1,,1

−+

−+

−+

−=

−=

−=

kjikjiz

kjikjiy

kjikjix

vvG

vvG

vvG

► Use linear interpolation to compute the polygon vertex normalUse linear interpolation to compute the polygon vertex normal

Page 22: Volume Visualization Acknowledgements: Torsten Möller (SFU)

22

MC: Render!MC: Render!

Page 23: Volume Visualization Acknowledgements: Torsten Möller (SFU)

23

OverviewOverview

►Data & ApplicationsData & Applications►Slicer toolsSlicer tools► Iso-surfacesIso-surfaces►Direct Volume RenderingDirect Volume Rendering►ChallengesChallenges

Page 24: Volume Visualization Acknowledgements: Torsten Möller (SFU)

24

Direct Volume Rendering Direct Volume Rendering ExamplesExamples

Page 25: Volume Visualization Acknowledgements: Torsten Möller (SFU)

25

Rendering PipelineRendering Pipeline

Classify

Page 26: Volume Visualization Acknowledgements: Torsten Möller (SFU)

26

ClassificationClassification

► original data set has application specific original data set has application specific values (temperature, velocity, proton values (temperature, velocity, proton density, etc.)density, etc.)

► assign these to color/opacity values to make assign these to color/opacity values to make sense of datasense of data

► achieved through transfer functionsachieved through transfer functions

Page 27: Volume Visualization Acknowledgements: Torsten Möller (SFU)

27

Transfer FunctionsTransfer Functions

► Simple (usual) case: Map Simple (usual) case: Map data value to color and data value to color and opacityopacity

Human Tooth CT

opacityRGB

Data Value

RGB

Shading,Compositing…

Gordon Kindlmann

opac

ity

Page 28: Volume Visualization Acknowledgements: Torsten Möller (SFU)

28

Transfer FunctionsTransfer Functions

► Setting transfer functions is difficult and Setting transfer functions is difficult and unintuitiveunintuitive

University of Utah

Page 29: Volume Visualization Acknowledgements: Torsten Möller (SFU)

29

Transfer Function ChallengesTransfer Function Challenges

► Better interfaces:Better interfaces: Make space of TFs less confusingMake space of TFs less confusing

Remove excess “flexibility”Remove excess “flexibility”

Provide guidanceProvide guidance

► Automatic / semi-automatic transfer function Automatic / semi-automatic transfer function

generationgeneration Typically highlight boundariesTypically highlight boundaries

Page 30: Volume Visualization Acknowledgements: Torsten Möller (SFU)

30

Rendering PipelineRendering Pipeline

Classify

Shade

Page 31: Volume Visualization Acknowledgements: Torsten Möller (SFU)

31

Light EffectsLight Effects

► Usually only consider Usually only consider reflected partreflected part

Light

absorbed

transmitted

reflected

Light=refl.+absorbed+trans.

Light

ambient

specular

diffuse

ssddaa IkIkIkI ++=

Light=ambient+diffuse+specular

Page 32: Volume Visualization Acknowledgements: Torsten Möller (SFU)

32

Rendering PipelineRendering Pipeline

Classify

Shade

Interpolate

Page 33: Volume Visualization Acknowledgements: Torsten Möller (SFU)

33

InterpolationInterpolation

► Given:Given:

► Needed:Needed:

2D 1D► Given:Given:

► Needed:Needed:

Page 34: Volume Visualization Acknowledgements: Torsten Möller (SFU)

34

InterpolationInterpolation

► Accuracy is importantAccuracy is important► Expensive => done very often for one imageExpensive => done very often for one image

Nearestneighbor

Linear

Page 35: Volume Visualization Acknowledgements: Torsten Möller (SFU)

35

Rendering PipelineRendering Pipeline

Classify

Shade

Interpolate

Composite

Page 36: Volume Visualization Acknowledgements: Torsten Möller (SFU)

36

Volumetric Ray Tracing Volumetric Ray Tracing

color

opacity

object (color, opacity)

Page 37: Volume Visualization Acknowledgements: Torsten Möller (SFU)

37

Ray Traversal SchemesRay Traversal Schemes

Depth

IntensityMax

Average

Accumulate

First

Page 38: Volume Visualization Acknowledgements: Torsten Möller (SFU)

38

Ray Traversal - Ray Traversal - FirstFirst

Depth

Intensity

First

► FirstFirst: extracts iso-surfaces (again!): extracts iso-surfaces (again!)done by Tuy&Tuy ’84done by Tuy&Tuy ’84

Page 39: Volume Visualization Acknowledgements: Torsten Möller (SFU)

39

Ray Traversal - Ray Traversal - AverageAverage

Depth

Intensity

Average

► AverageAverage: produces basically an X-ray picture: produces basically an X-ray picture

Page 40: Volume Visualization Acknowledgements: Torsten Möller (SFU)

40

Ray Traversal - Ray Traversal - MIPMIP

Depth

IntensityMax

► MaxMax: Maximum Intensity Projection: Maximum Intensity Projectionused for Magnetic Resonance Angiogramused for Magnetic Resonance Angiogram

Page 41: Volume Visualization Acknowledgements: Torsten Möller (SFU)

41

Ray Traversal - Ray Traversal - AccumulateAccumulate

Depth

Intensity

Accumulate

► AccumulateAccumulate: make transparent layers visible!: make transparent layers visible!

V. Anupam et al.

Page 42: Volume Visualization Acknowledgements: Torsten Möller (SFU)

42

Volumetric Ray Integration Volumetric Ray Integration

color

opacity

object (color, opacity)

1.0V. Anupam et al.

Page 43: Volume Visualization Acknowledgements: Torsten Möller (SFU)

43

Page 44: Volume Visualization Acknowledgements: Torsten Möller (SFU)

Slicer Isosurface Direct Volume Rendering

Page 45: Volume Visualization Acknowledgements: Torsten Möller (SFU)

45

OverviewOverview

►Data & ApplicationsData & Applications►Slicer toolsSlicer tools► Iso-surfacesIso-surfaces►Direct Volume RenderingDirect Volume Rendering►ChallengesChallenges

Page 46: Volume Visualization Acknowledgements: Torsten Möller (SFU)

46

Challenges - AccuracyChallenges - Accuracy

► Need metrics -> perceptual metricNeed metrics -> perceptual metric

Original Bias-added Edge-distorted

Page 47: Volume Visualization Acknowledgements: Torsten Möller (SFU)

47

Challenges - AccuracyChallenges - Accuracy

►Deal with unreliable data Deal with unreliable data (e.g., Ultrasound data is noisy)(e.g., Ultrasound data is noisy)

Page 48: Volume Visualization Acknowledgements: Torsten Möller (SFU)

48

Challenges - Speed/SizeChallenges - Speed/Size

►Efficient algorithmsEfficient algorithms►Hardware developments (VolumePro)Hardware developments (VolumePro)►Utilize current hardware (nvidia, ATI)Utilize current hardware (nvidia, ATI)►Compression schemesCompression schemes►Tera-byte data setsTera-byte data sets

Page 49: Volume Visualization Acknowledgements: Torsten Möller (SFU)

49

Challenges - HCIChallenges - HCI

►Need better Need better interfaces for interfaces for specifying specifying parametersparameters

►Which method Which method is best?is best?

Page 50: Volume Visualization Acknowledgements: Torsten Möller (SFU)

50

Challenges - HCIChallenges - HCI► Virtual and Augmented realityVirtual and Augmented reality► Explore novel I/O devicesExplore novel I/O devices

Konieczny et al., Vis 2005Schkolne et al.

Page 51: Volume Visualization Acknowledgements: Torsten Möller (SFU)

51

Challenges: Highlighting Challenges: Highlighting Important InformationImportant Information

► Illustrative Illustrative RenderingRendering

► Focus + ContextFocus + Context

Christian Tietjen

Viola et al.