## info on non-cubic voxels?

### info on non-cubic voxels?

Does anyone know of any volume visualization research conducted
with non-cubic voxels? I remember hearing once of some work done
with tetrahedrons, for instance. My specific interest is in
closest-packed spheres (which create what R. Buckminster Fuller
dubbed an isotropic vector matrix). My intuition tells me this
might be a fruitful avenue of research, but before spending
anymore time on it I was curious what had already been done.

Thanks

Kevin Sahr

### info on non-cubic voxels?

>Does anyone know of any volume visualization research conducted
>with non-cubic voxels? I remember hearing once of some work done
>with tetrahedrons, for instance. My specific interest is in
>closest-packed spheres (which create what R. Buckminster Fuller
>dubbed an isotropic vector matrix). My intuition tells me this
>might be a fruitful avenue of research, but before spending
>anymore time on it I was curious what had already been done.

>Thanks

>Kevin Sahr

AVS 3.0 includes support for the data type Unstructured Cell Data (UCD).
A UCD data structre consists of an irregular coordinate structure or
triangles, tetrahedrons, pyramids, prisms, or hexahedrons.  Each cell
has a corresponding number of nodes.  Data can be associated with the
entire structure, with each cell, and with each node.  The data is
structured as a set of components.  Each component can be either a
scalar or a vector.

Easier to type than to understand. ..  Basically, you get a set of
geometric object primitives, defined by their vertices.  You can, in
the easiest approach, create an ASCII file listing all the vertices and
the values (if any) associated with each.  Then, you can list the
geometric objects, noting:  the type of object, the vertices (nodes)
comprising that object, any data values associated with that object.
When you are done, you've defined a geometric scene of objects, each
object having been built from a set of the geometric primitives.  An AVS
module exists which will read this ASCII file and create an approriate
internal format file suitable for the AVS Geometry Viewer.  Widgets
are automagically created to allow selection of the vector data components
and other controllable features.

Rob Lake
BP Research

### info on non-cubic voxels?

|> Does anyone know of any volume visualization research conducted
|> with non-cubic voxels? I remember hearing once of some work done
|> with tetrahedrons, for instance. My specific interest is in
|> closest-packed spheres (which create what R. Buckminster Fuller
|> dubbed an isotropic vector matrix). My intuition tells me this
|> might be a fruitful avenue of research, but before spending
|> anymore time on it I was curious what had already been done.
|>
|> Thanks
|>
|> Kevin Sahr

Look into the papers presented at the Volume Visualization Workshop
in San Diego, November 1990. They are printed in a special edition
of Computer Graphics (Nov., 1990).  Nelson Max, Pat Hanrahan, and
Roger Crawfis presented an analytical technique based on arbitrary
polyhedron.  Jane Wilhelms and Allen Van Gelder presented a similar
technique at SIGGRAPH '91.  As far as sphere packing goes, Nelson Max
also presented a paper at Visualization '91 on sphere packing and
has a follow up article submitted on it.

Roger Crawfis

Lawrence Livermore National Laboratory

### info on non-cubic voxels?

>>Does anyone know of any volume visualization research conducted
>>with non-cubic voxels? I remember hearing once of some work done
>>with tetrahedrons, for instance. My specific interest is in
>>closest-packed spheres (which create what R. Buckminster Fuller
>>dubbed an isotropic vector matrix). My intuition tells me this
>>might be a fruitful avenue of research, but before spending
>>anymore time on it I was curious what had already been done.

>>Thanks

>>Kevin Sahr

Check out the proceedings of the 1990 San Diego Conf on Volume Visualization,
published as a number of ACM Computer Graphics.
One problem with some of these schemes
occurs if the cells are of very different thickness.  Unless an adjustment
is made in the "optical depth" for very thin jelly-blobs, they are very
transparent in spite of all the work you did rendering them.  One
promising approach is to render "glowing jelly tetrahedra" as
polygons which are opaque in the middle and transparent at the edges.

### info on non-cubic voxels?

+>>Does anyone know of any volume visualization research conducted
+>>with non-cubic voxels?
+
+One problem with some of these schemes
+occurs if the cells are of very different thickness.  Unless an adjustment
+is made in the "optical depth" for very thin jelly-blobs, they are very
+transparent in spite of all the work you did rendering them.  One
+promising approach is to render "glowing jelly tetrahedra" as
+polygons which are opaque in the middle and transparent at the edges.

I've stayed out of this about as long as I can....

To answer the first question, about "non-cubic" voxels, there are a number
of choices.  Before referring to the various articles, let's establish
what we mean by non-cubic voxels.  Are we talking gridded data points
which would then result in either rectilinear or curvilinear voxels?
Or are we talking unstructured grids, where the voxels may be tetrahedra,
hexahedra, etc?

Assuming either rectilinear voxels or those from unstructured grids, there
are a plethora of papers describing how to render these things.  The two
most popular methods are 1) splats and 2) representing the shapes of these
voxels with polygonal objects; tetrahedra, hexahedra, etc.  I've tried
implementing 2), with the presumption being that the "fast" graphics
hardware will enable you to do lots of neat stuff with the volume.  In
practice, this doesn't work at all for any realistic-sized dataset, because
no graphics hardware has sufficient memory to deal with the 100+mbyte
geometries I produce.  Further, the variance in rendering quality varies
wildly from hardware vendor to hardware vendor.  I haven't tried 1), but
other have gotten good results (ref Hanrahan's paper in Sigg. 91 proceedings).

For all voxel types, one has to deal with "opacity" in such a manner
as to get "reasonable" results.  One of the articles quoted suggested to
make opacity a function of voxel thickness.  This is not appropriate
for a number of reasons, not the least of which is that voxel "thickness"
is sensitive to orientation.  If you make a movie of a rotating volume,
and the voxel "thickness" changes as the volume rotates, the results will
be pretty meaningless.  The voxel opacity should be a function of the
"number of voxels in the volume" (whatever that means; I'm not trying
to provide a rigorous definition here, just some off the cuff
alternatives) as well as voxel "volume".  In this way, for a given
volume, orientation has no bearing on voxel opacity.  Also, this scheme
more equally treats the "opacity relationship" between big and little
voxels.  A little voxel of a given opacity should appear more transparent
than a big voxel of the same opacity.

Finally, if we're talking curvilinear voxels, you can either "do it right"
or you can "cheat and get it done."  By "cheating" you can "approximate"
the curvilinear grid with one which is rectilinear.  The results
are not pretty, however (see published papers of the past few years and
decide for yourself).  But, these researchers are turning in respectable
cpu times for the renderings.  Or, you can "do it right" and render
the curvilinear voxels as curved things, rather than rectangular things,
spend more on cpu clocks, but the images look much better than the
any interest.  Also, there is an AVS module available for rendering
and decide for yourself  which "looks" better.

To summarize, my experience with transparent polygons has been dismal.

wes

Hi,

At present I trying to visualize some 3D (medical) data using direct volume
rendering. Since my data does not come in cartesian coordinates, a time consuming
interpolation is necessary to transform the data,in order to visualize it with
standard renderers afterwards.

Therefore I would like to try out a renderer based on non-cubic
voxels. So far I've found only two publications about non-cubic renderers.
Both date from 1990. Has anyone published about the subject in the meantime?
More specifically, has anyone ever tried to visualize non-convex voxels?
(Since one basic assumption of all renderers is that the voxels are at least
convex.)