Sprite rendering

Hoping someone can either point me in the right direction or (even better) is willing to entertain a short Q&A session to help me get the gist of sprites.

I'm asking because I have become curious lately about the various techniques for displaying information gained during CT scans. As I understand it, the raw data is acquired in a helical pattern (in modern scanners) with a sub-millimeter increment. This raw data is then processed into multimillimeter slices using volume averaging, i.e. producing voxels.

There are two 3D techniques that I am aware of. One involves removing all data below a threshold "density" (i.e. brightness), which usually leaves skeletal elements. This data is then processed to produce a surface model (not sure of the specific algorithms, I think there may be a few depending on software used), which is rendered in any of the common methods.

The other 3D display technique is called Maximum Intensity Projection (MIP), which take a defined slice thickness (say 10mm) and projects only the maximum element value along each pixel path through the slice. i.e., when you look at this "slab" of a MIP, for each pixel you see the brightness value of the maximum for all pixels lying in that column within the slab.

There's also a Ray Sum method that is sometimes used, which produces a sort of orthogonal pseudo X-ray image.

Anyway, there's the primer from where my questions begin. So now for my questions. The raw data (after topographic computation) is essentially a collection of pixel brightness values in 3D space. This is the data that is volume averaged to produce the conventional slices, or MIP processed, or whatever. I'm wondering how to display it directly? I'm assuming this would have been nearly impossible in the past due to the volume of information, but I wonder if the rapid increases in onboard video RAM of newer cards (1gig, and beyond?) might make this possible.

Would the most direct form of display be sprite display? Or do I misunderstand what sprites are? What I would eventually like to see is a direct 3D display of the pixel values, with a modification. Instead of surface pixels obscuring all pixels behind in the "cloud" I'd like to assign a transparency value based on the brightness value of the pixel. i.e. a fully dark pixel is fully transparent, and a fully bright pixel is fully opaque.

One thing I think this method might lack is the ability to shade and shadow, but I'm not completely sure that is necessary. Right now, I'm just interested in the "what if..." aspect.

Any pointers? Naturally I'd have to investigate the format of the raw data, but that shouldn't be a problem. Are there any 3D engines or renderers or utilities or whatever that might be capable of displaying sprites or pixels directly in this manner?
 
Back
Top