Notes on VolVis (4/20)

April 19, 2010

in Lecture Stuff

What is Volume Data? (Scalar Fields)

What is a voxel (point samples, interpolation, reconstruction, …)

Hierarchy of Methods

  1. 2D Methods (slices) (note: not an X-Ray)
  2. Surface construction
  3. Direct Volume Rendering

General Graphics Points

  • Projection (orthographic vs. perspective)
  • Use of interaction (cutting planes, other “volume widgets”)

Surface Construction Approaches

  1. Cubies
  2. Contour tracking / connecting
  3. Marching Cubes

Applies when you are looking at distinct structures

Direct Volume Rendering

Transfer functions (definitions, basic concepts, issues)

  • Concepts of what can/cannot be done
  • Idea of classification, dealing with boundaries
  • Potential for “realism” interpretability
  • Volumes vs. Solids
  • Using normal as gradient (for lighting)
  • Using normal as boundary dection (for “surface” creation)
  • local vs. non-local

Basic projections (X-Rays model):

  • Maximum intensity projections
  • Accumulation through volume model
  • transparent volume model

Make sure everyone understands “volume rendering integral”

Basic Algorithms

  • Ray Casting
  • Splatting
  • Compositing
  • Shear-Warp
  • Fixed Slices 2D texture mapping)
  • Arbitrary planes (3D texture mapping)

Proxy geometry

Non-uniformity in sampling (correct for different ray lengths)

More on Transfer Functions

Two steps:

  • Data classification / feature identification
  • Optical properties

What to identify?

Materials (classification)

Boundaries / Geometric Features

Phenomena (fronts, structures, zones)

How to identify?

  • Manual segmentation
  • Automatic / Learning / …
  • Geometric features (edges) similar to 2D

Local vs. global decision making

Inputs to transfer function


  • Gradients
  • Curvature
  • Feature info

Determining opacities

  • 0 in empty space – high “inside”
  • what about “murky regions” – not much to do, still need slicing and interaction

Try to have “thin shells” of “constant thickness” that are opaque (levoy)

  • value+gradient can identify boundary = gradient is important in figuring opacity

Still an active research area (transfer functions)

  • illustration inspired techniques
  • ways to simulate transparency and make perceptually useful transparency
  • integrating classification and automation in transfer function design
  • make different materials and their boundaries obvious

Adding Lighting

  • Have volume “emitting” light?
  • Fake lighting (use gradient as normal)
  • Direct lighting models
  • Global / Light Transport
  • Do the reverse of the rendering process to determine how much light gets to each voxel
  • More complex models require fancier integrals (over spheres, …)


Previous post:

Next post: