A typical 3D data set is a group of 2D slice images acquired by a CT, MRI, or MicroCT scanner.
Nevertheless, the epitomes of volume rendering models feature a mix of for example coloring[2] and shading[3] in order to create realistic and/or observable representations.
For instance, a shear warp implementation could use texturing hardware to draw the aligned slices in the off-screen buffer.
Here, every volume element is splatted, as Lee Westover said, like a snow ball, on to the viewing surface in back to front order.
These splats are rendered as disks whose properties (color and transparency) vary diametrically in normal (Gaussian) manner.
[6][7] The shear warp approach to volume rendering was developed by Cameron and Undrill, popularized by Philippe Lacroute and Marc Levoy.
This technique is relatively fast in software at the cost of less accurate sampling and potentially worse image quality compared to ray casting.
Commodity PC graphics cards are fast at texturing and can efficiently render slices of a 3D volume, with real time interaction capabilities.
Workstation GPUs are even faster, and are the basis for much of the production volume visualization used in medical imaging, oil and gas, and other markets (2007).
The most widely cited technology was the VolumePro real-time ray-casting system, developed by Hanspeter Pfister and scientists at Mitsubishi Electric Research Laboratories,[10] which used high memory bandwidth and brute force to render using the ray casting algorithm.
A recently exploited technique to accelerate traditional volume rendering algorithms such as ray-casting is the use of modern graphics cards.
The pixel shaders are able to read and write randomly from video memory and perform some basic mathematical and logical calculations.
In recent GPU generations, the pixel shaders now are able to function as MIMD processors (now able to independently branch) utilizing up to 1 GB of texture memory with floating point formats.
The programmable pixel shaders can be used to simulate variations in the characteristics of lighting, shadow, reflection, emissive color and so forth.
The use of hierarchical structures such as octree and BSP-tree could be very helpful for both compression of volume data and speed optimization of volumetric ray casting process.
Image segmentation is a manual or automatic procedure that can be used to section out large portions of the volume that one considers uninteresting before rendering, the amount of calculations that have to be made by ray casting or texture blending can be significantly reduced.
The coarser resolution volume is resampled to a smaller size in the same way as a 2D mipmap image is created from the original.