MRI_ANIMATION_NEW.gif (120296 bytes)  
A Near-Optimal Direct Volume Rendering (DVR) Accelerator with support for general purpose Volume Graphics

Click Here for the RACE DVR Page

Expected Trends in Custom Direct Volume Rendering Architectures

First Generation (1993 - 2000)
Interactive Output Frame Rates
Interactive Classification
Static Datasets

Second Generation (2001-2002)
Polygon-Voxel Mixing
Texture Mapping
Video Texture Mapping
Low Input Frame Rates
(Dynamic Datasets)
Serial Input
Double-buffered Volume Memory
Volume Graphics
Illustration

Third Generation (2003)
Large Input Frame Rates
Parallel Input
Interactive Volume Graphics
Illustration


Papers

(1) H. Ray, H. Pfister, D. Silver, and T. Cook, "Ray Casting Architectures for Volume Visualization", accepted to IEEE Transactions on Visualization and Computer Graphics, March 1999, Vol. 5, No. 1

Paper in Postscript Format

2) H. Ray and D. Silver, "A Memory Efficient Architecture For Real-Time Parallel and Perspective Direct Volume Rendering", Rutgers State University Technical Report CAIP-TR-237, July 1999

Paper in Postscript Format


Your comments and suggestions
are welcome. Forward all feedback to: haray@caip.rutgers.edu




 

  Welcome to the VIZLAB Direct Volume Rendering (DVR) webpage at Rutgers State University in New Jersey.

We are currently investigating what we consider to be second and third generation custom volume rendering accelerators for personal computers and workstations. In addition to Volume Rendering (VR), we are addressing high-bandwith needs of texture mapping as well as high frame rate input. To date most architectures only consider interactive output rates.

Texture Mapping

Texture mapping is a widely supported technique in traditional 3D graphics to increase the realism in synthetic images. High-quality texture mapping requires 3D filtering, high-bandiwdh memory, and large memory storage.

An obvious extension to the rendering VR pipeline is to incorporate texture mapping since VR pipelines typically support 3D filtering. Commonly, required for MIP-Map and 3D textures. The large dedicated  voxel memory can double as high-bandwidth texture memory with a large capacity.

Intel's Accelerated Graphics Port (AGP) allows PCs to use main memory for storing textures. This provides virtually unlimited texture capacity. One drawback is that the AGP bus will eventually saturate. Also, main memory is a shared resource,

The VR engines we are developing can sustain very large bandwidths 1 GB/s or higher. Several factors larger than the typical AGP bus. The AGP bus can be used in conjunction with these architectures to rapidly load new textures and static datasets into the Volume Memory.

Real-time Input

SAMPLING In some areas in medical imaging, it is important to be able to visualize rapidly changing datasets (input stream) in real-time (i.e., beating heart). Recently, research is being done in 3D Ultrasound that will generate a frame in a few seconds.

  SIMULATIONS Another source of streaming input is numerical simulations typically run over a network. A wide range in input frame rates can be produced from these simulations. As little as one second or several hours may be needed per frame. In the latter case, datasets can be stored into secondary storage and then streamed into the accelerator from disk.

SYNTHETIC Volume Graphics is an emerging field in the graphics community. It challenges the way traditional graphics pipelines represent and treat 3D objects. Instead of modeling objects using polygons, they are represented as a set of discrete points (voxels) in 3D space. Then, a standard volume rendering algorithm is used to display the volume. If Volume Graphics is to provide the same level of interactivity as the traditional graphics pipeline, we will eventually need to parallelize the input-stream. In this case, input frame rates may be comparable to our output frame rates.

VIDEO Since our architecture will support texture mapping and real-time input, we will also be able to texture map video into traditional synthetic scenes. 

Double-buffered Volume Memory

To support real-time input, we use double-buffering so that we do not get visual artifacts when streaming the data. Without double-buffering, the dataset may contain data from two different time steps. Another drawback to using, a single buffer  is that memory bandwidth (and output frame rate) would be compromised based on the input frame rate unless expensive dual ported memory is used. Therefore, double buffering is imperative. Semiconductor technologies tend to double capacity and prices drop by a factor of two within approximately two years. Therefore, introducing the a second buffer should have acceptable price/performance tradeoffs.