Top Banner
Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology
36

Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Mar 27, 2015

Download

Documents

Isaac Mitchell
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Exploded Views for Volume Data

Stefan Bruckner, M. Eduard Gröller

Institute of Computer Graphics and Algorithms

Vienna University of Technology

Page 2: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 2

Motivation (1)

Volumetric data sets: information about interior and exterior of an objectFrequently focus objects are occluded by other structuresReduce opacity, cutaways: information is still removed, particularly for large focus objectsAlternative approach: split up context structures and displace themRely on human perception to “put pieces back together”

Page 3: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 3

Motivation (2)

Plastinated anatomic sculpture (G. von Hagens, “Bodyworlds”)

Interactive exploded-view illustration

Page 4: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 4

Related Work

[McGuffin et al. 2003] Interactive deformation widgets for browsing segmented volume data[Islam et al. 2004] Modeling splitting operations for volumetric data sets[Cornea et al. 2005] Curve-skeleton for partitioning volumes[Cornea et al. 2006] Feature-aligned volume manipulationOur contribution: fully interactive approach, automated part layout, view-dependent explosions, high-quality rendering

Page 5: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 5

Overview (1)

FocusSelection

PartDefinition

LayoutGeneration

Rendering

Page 6: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 6

Focus Selection (1)

Approximate specification of focus object in dataset

Via transfer function, segmentation, volume painting

Degree-of-interest function specifies importance of each voxel [Viola et al. 2004]

Can be refined after an initial exploded view has been generated

All voxels with nonzero degree-of-interest are called selection, rest is background

Page 7: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 7

Focus Selection (2)

selection

background

Page 8: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 8

Overview (2)

FocusSelection

PartDefinition

LayoutGeneration

Rendering

Page 9: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 9

Part Definition (1)

Partition of the background object into several non-overlapping regions

Could be done automatically (curve skeleton, symmetry detection)

Simple interactive approach: user can split volume along arbitrary planes

Different tools: axis splitter, depth splitter, line splitter

Splitting can be refined/modified once the view is exploded

Page 10: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 10

Part Definition (2)

part

Page 11: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 11

Overview (3)

FocusSelection

PartDefinition

LayoutGeneration

Rendering

Page 12: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 12

Layout Generation (1)

Displacing each part manually is cumbersome and time-consuming

Would have to be adjusted whenever the viewpoint changes

Several potentially conflicting layout requirements

We use a three-dimensional force-directed layout approach for part arrangement

Different forces represent our layout requirements

Page 13: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 13

Layout Generation (2)

Page 14: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 14

Explosion Force (1)

Part arrangement should depend on the shape of the selection object

The explosion force moves the parts away from the selection object

A set of points (explosion points) within the selection object is generated

Each point exhibits a repulsive force on all parts

Page 15: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 15

Explosion Force (2)

For each part Pi

For each explosion point ej

Find point p on Pi closest to ej

Apply Fe to Pi at point p with r = p - ej

reec r

reF

Page 16: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 16

Viewing Force (1)

Occlusions of the selection object should be prevented for every viewpoint

The explosion force does not take the viewpoint into account

The viewing force moves parts away from the line of sight

Modeled after the graph distortion viewing technique by [Carpendale et al. 1996]

Page 17: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 17

Viewing Force (2)

For each part Pi

For each explosion point ej

Find point p along ray to ej closest to the center of Pi

Apply Fv to center of Pi with r = center(Pi) - p

vv

c rF

r r

Page 18: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 18

Spacing Force (1)

Parts should move apart in order to prevent clustering

Spacing force causes parts to repel each other

Each part exhibits a spacing force on all other parts

Page 19: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 19

Spacing Force (2)

For each part Pi

For each part Pj

Apply Fs to Pi with r = center(Pi) - center(Pj)

2ssc r

rrF

Page 20: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 20

Return Force (1)

All previous forces move parts away from their original position

To reach an equilibrium, we need a force which works opposite to the other ones

The return force pulls parts back to their initial location

Page 21: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 21

Return Force (2)

For each part Pi

For each vertex vj of Pi

Apply Fr to Pi with r being the vector from the current position of vj to its original location

lnr rcFr

rr

Page 22: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 22

Degree-of-Explosion

For ease of use, we have one global degree-of-explosion parameter

The degree-of-explosion controls how “exploded” the view should be

This parameters scales the normalized explosion, viewing, and spacing forces

For additional control, the contribution of each force to the total force can be adjusted

Page 23: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 23

Constraints (1)

Add additional joints to constrain part movement, e.g. based on semantics

Different joints: hinge joint, slider joint, ball joint, etc.

Adjust mass of parts: heavier parts will move less

Special case: infinite mass means part will not be displaced (useful for “breakaway” views)

Page 24: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 24

Constraints (2)

unconstrainedexplosion

parts connected by slider joint, left part is static

Page 25: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 25

Overview (4)

FocusSelection

PartDefinition

LayoutGeneration

Rendering

Page 26: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 26

Rendering

Background object divided into multiple non-intersecting parts

Each of the parts has its own transformation matrix

Selection object may intersect one or several parts

Additional bounding geometry (e.g. octree) for background and selection (used for empty-space skipping)

Page 27: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 27

Algorithm

Process parts in visibility order (GPU-based visibility sort is performed)

Use Z-Buffer to compute intersections between part geometry and bounding geometry

Store the resulting entry & exit points + depth for background and selection in 2 sets of off-screen buffers

Use buffers in fragment program to perform raycasting for background and selection

Page 28: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 28

Example

selection entry and

exit buffers

Page 29: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 29

Example

selection entry and

exit buffers

background entry and

exit buffers

Page 30: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 30

Example

Page 31: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 31

Raycasting

Do raycasting for selection and background for one part in a single fragment program

Two intervals per ray, one for selection and one for background

selection

background

Need to sample both volumes and do multi-volume compositing

Page 32: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 32

Performance

Expected bad performance due to dynamic branching in fragment program

Does not seem to be the case, most probably due to coherency in branching patterns

Some performance penalties due to usage of OpenGL FBOs – might disappear in the future

Comparison with reference raycaster – same shading and compositing routines, but no handling of exploded views

Page 33: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 33

PerformanceGPU: GeForce 6800 GT Image: 512 x 512 Volume: 256 x 256 x 166

Page 34: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 34

Demonstration

Page 35: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Stefan Bruckner 35

Conclusions and Future Work

Automated approach for interactive generation of exploded view illustrations

Uses a flexible and extensible force-based layout approach

Fast high-quality GPU-based renderer using raycasting

Future: automatic part generation (curve skeleton, symmetry detection)

Pre-generated explosion setups, use template matching to adjust to different datasets

Page 36: Exploded Views for Volume Data Stefan Bruckner, M. Eduard Gröller Institute of Computer Graphics and Algorithms Vienna University of Technology.

Thank you for your attention! Questions?

http://www.volumeshop.org