[Insight-users] 16-Bit TIFF and then some

Ruben Schilling r.b.schilling at googlemail.com
Tue Jun 19 15:34:21 EDT 2007


Hi Greg,

I can tell you from a little bit from my experience about your TIFF  
plans:

ITK does provide the possibility to write TIFFs in 8bit and 32bit (as  
far as you are concerned with grayvalue images, I don't know anything  
about color TIFF's in ITK). There is one strange thing though: I had  
an issue reading 16 bit images written by ITK with ImageJ. I found,  
that when I read 16bit images I had to move thru an arbitraey slice  
(though not the very first one) and reset the threshold value to get  
the correct picture. I don't know what is wrong with it, either the  
problem is within ImageJ or ITK, though since ImageJ didn't seem to  
have similar problems with any other images I would be slightly  
tempted to blame it on ITK. Though I know, that you will have trouble  
finding a single application that does really implement the Adobe  
TIFF 6.0 specification straight by the book or even close to complete.

Certainly many people would advise you to switch to a format like the  
meta image format or DICOM to save annotation information along with  
you image and support high bit numbers. Those formats are not  
supported by as many image readers/viewers though and I found the  
meta image format to be slower. I guess for archiving images you  
could just as well use a database to store the annotation and just  
use a convenient file format as TIFF.

Regarding your question about saving images: That is very easy with  
ITK. Just look at the sofware guide (pdf online) how the do it, there  
is a factory class for writing (and reading) images, that determines  
the image format by the file extension (.tif). Reading and writing  
images with ITK requires only very few lines of code.

Best regards
Ruben

Am 19.06.2007 um 21:02 schrieb Greg Soltis:

> Greetings,
>
> I work at a mass spectroscopy lab and am interested in:
> - First, reading in and stacking hundreds of images in 16-bit TIFF  
> files
> - Second, creating a 3D structure/volume from these images, and
> - Third, being able to take cross-sections or 3-dimensional  
> sections (chunks) out of this volume to analyze the conditions at  
> various regions of interest
>
> Since we rely on the quantitative data provided by these images, we  
> cannot lose the information originally contained in the data when  
> converting to a different file format or in the process of  
> assembling or later dissecting this volume.
>
> We are interested in utilizing 16-bit TIFF files that inherently  
> possess this quantitative data with a program called 3D Slicer (or  
> if you know of another one, we are all ears).
>
> While we have discovered other imaging options/programs and file  
> formats, they cannot represent the quantitative information we seek.
>
> I have checked out the past two years worth of archived dialogue on  
> the itk users list for what seemed to be pertinent material and  
> have looked through the tutorial (The one I find is dated 2005; is  
> there not a newer one?).
>
> But any future effort is moot if we are not able to work with 16- 
> bit TIFF files in itk (or vtk). So for starters:
>
> 1) Is ITK (and/or VTK) conducive to 16-bit TIFF files?
> 	I have found options such as vtkTIFFReader, itk::TIFFImageIO, and  
> itk::TIFFImageIOFactory. But do they read/accommodate 16-bit files  
> as well as 8-bit? (I realize this is an itk list but, if you could  
> enlighten me regarding the vtk classes/modules, I would appreciate  
> it; likewise for question #2....)
>
>
> If the answer to #1 is in the affirmative (that 16-bit TIFF files  
> are conducive), then the following issues arise:
>
> 2) To assemble these hundreds of images, what are the pros/cons of  
> using the following? How would the end product be different? Are  
> any of these NOT able to use 16-bit TIFF files?
> - vtkImageAppend
> - vtkVolume16Reader (This one seems ideal.)
> - itkImageSeriesReader
>
>
> 3) Does this process involve implementing a few steps (i.e., one to  
> read in the tiff files and one to generate a volume from them) or  
> is it much more complicated? As I have been learning more and more  
> about the processes and programs available, this process is only  
> becoming more complicated.
>
>
> 4) While I have programming experience, it is in Fortran and thus  
> nothing comparable to the language used here – as I am sure you  
> can tell by now. If this discussion can ultimately determine which  
> classes/modules are necessary to provide the desired function  
> stipulated at the onset of this message, is there a standard code  
> for each class/module that I can enter into the system here at the  
> lab? The time necessary for me to learn the code, write it, and  
> implement it would take too long; I have to go back to school in a  
> few months :) Can I presume that you have access to such a code for  
> reference purposes that serves as a tool when addressing the  
> various concerns that come your way? With enough research and  
> dialogue, I can get a feel for what needs to be done, but actually  
> doing it is a whole other ballgame for which I am not personally  
> qualified.
>
> Thank you very much for your time and advice.
>
> Peace,
>
> Greg
>
> _________________________________________________________________
> Make every IM count. Download Messenger and join the i’m Initiative  
> now. It’s free. http://im.live.com/messenger/im/home/? 
> source=TAGHM_June07
>
> _______________________________________________
> Insight-users mailing list
> Insight-users at itk.org
> http://www.itk.org/mailman/listinfo/insight-users



More information about the Insight-users mailing list