Rendering medical images from voxels

I have some images from medical scanners that I want to render.

Essentially, the data comes to me as a 3D array of voxels (typically 512x512x100x2 bytes). Each voxel has a 2 byte value that measures density.

I’ve thought of rendering each voxel as a cube (with transparency that is a function of the voxel’s density) and making a display list of the entire image.

The rendered scan will be rotated, cut and translated by the user.

As a newcomer to OpenGL I am eager for any suggestions, warnings or links to resources that could help.

How could I proceed with rendering medical images?

Would texture maps be suitable? How about surface generation from voxel data?

it’s almost a religious debate but,

assert(voxels!=little_cubes);