Exploded Views for Volume Data - PowerPoint PPT Presentation

About This Presentation
Title:

Exploded Views for Volume Data

Description:

Institute of Computer Graphics and Algorithms. Vienna University of Technology. Stefan Bruckner ... Frequently focus objects are occluded by other structures ... – PowerPoint PPT presentation

Number of Views:283
Avg rating:3.0/5.0
Slides: 37
Provided by: insitutegr
Learn more at: http://vis.computer.org
Category:

less

Transcript and Presenter's Notes

Title: Exploded Views for Volume Data


1
Exploded Views for Volume Data
  • Stefan Bruckner, M. Eduard Gröller

Institute of Computer Graphics and
Algorithms Vienna University of Technology
2
Motivation (1)
  • Volumetric data sets information about interior
    and exterior of an object
  • Frequently focus objects are occluded by other
    structures
  • Reduce opacity, cutaways information is still
    removed, particularly for large focus objects
  • Alternative approach split up context structures
    and displace them
  • Rely on human perception to put pieces back
    together

3
Motivation (2)
Plastinated anatomic sculpture (G. von Hagens,
Bodyworlds)
Interactive exploded-view illustration
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
    manipulation
  • Our contribution fully interactive approach,
    automated part layout, view-dependent explosions,
    high-quality rendering

5
Overview (1)
FocusSelection
PartDefinition
Layout Generation
Rendering
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

7
Focus Selection (2)
8
Overview (2)
FocusSelection
PartDefinition
Layout Generation
Rendering
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

10
Part Definition (2)
11
Overview (3)
FocusSelection
PartDefinition
Layout Generation
Rendering
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

13
Layout Generation (2)
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

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

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

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

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

19
Spacing Force (2)
  • For each part Pi
  • For each part Pj
  • Apply Fs to Pi with r center(Pi) - center(Pj)

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

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

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

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)

24
Constraints (2)
unconstrained explosion
parts connected by slider joint, left part is
static
25
Overview (4)
FocusSelection
PartDefinition
Layout Generation
Rendering
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)

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

28
Example
selection entry and exit buffers
29
Example
selection entry and exit buffers
background entry and exit buffers
30
Example
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

Need to sample both volumes and do multi-volume
compositing
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

33
Performance
GPU GeForce 6800 GT Image 512 x 512 Volume
256 x 256 x 166
34
Demonstration
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

36
Thank you for your attention! Questions?
http//www.volumeshop.org
Write a Comment
User Comments (0)
About PowerShow.com