iv3d-users

Text archives Help


[IV3D-USERS] Improving NRRD/skewed volumes


Chronological Thread 
  • From: Tim Holy <holy@wustl.edu>
  • To: iv3d-users@sci.utah.edu
  • Cc: Zhongsheng Guo <zsguo@pcg.wustl.edu>, Pei Sabrina Xu <xupei@wustl.edu>
  • Subject: [IV3D-USERS] Improving NRRD/skewed volumes
  • Date: Mon, 10 Oct 2011 14:01:07 -0500

Hi everyone,

After a long absence of not using IV3D, I am back to it.

I'm writing with a question and proposal. We have new data volumes in which 
the coordinate axes, in physical space, are not orthogonal; the pixels are 
therefore "skewed." By using the (new?) UVFReader tool, I stumbled across the 
fact that UVF files appear to permit a generic transformation matrix to be 
supplied. If so, this would seem to suggest that such volumes can be rendered 
faithfully, as long as the proper transformation matrix is supplied.

First and foremost, is this true? I.e., is the support in Tuvok there for 
this?

If so, then here's the proposal:
1. As far as I can tell, none of the "raw" importers can currently handle 
volumes with non-orthogonal axes. However, the NRRD data format 
(http://teem.sourceforge.net/nrrd/format.html, version 4 onwards) permits the 
necessary information to be supplied (see the "space directions" field). If 
there is no better solution, I am offering to work on Tuvok/IO/NRRDConverter.
{h,cpp} to implement support for parsing the relevant fields.

2. I submit a patch; once it looks decent to you, we then change the syntax 
of 
the calls to ConvertToRAW away from
      ConvertToRAW(...,FLOATVECTOR3& vVolumeAspect,...)
to something with an argument supporting generic transforms.

3. I patch the other converters (13 in total, including NRRD?) to accept this 
different argument input. In those cases, it would simply fill the diagonal 
of 
the matrix, i.e., restoring the current behavior.

Of course, I welcome alternative suggestions.

Best,
--Tim



Archive powered by MHonArc 2.6.16.

Top of page