View Issue Details

IDProjectCategoryView StatusLast Update
0000038Slicer3Libspublic2009-07-14 11:14
ReporterbryanAssigned Topieper 
PrioritynormalSeveritycrashReproducibilityalways
Status resolvedResolutionwon't fix 
Summary0000038: Cannot read 3-D TIFF with color lookup tables
Description

We are using 3-D TIFF images that come off a confocal microscope. When users acquire the images, they typically use a color lookup table (LUT) so they can easily see when pixels are at the limits of the bit depth of the instrument (i.e. if pixels are zero, they may be green, and if they are 255 in 8-bit space, they may be red, with everything from 1:254 in linear grayscale). Attempting to read these TIFF stacks (a 3-D volume as a single file) makes Slicer crash with a Seg Fault. This happens in Linux64, Mac OSX (intel), and Windows in both Slicer2.7 and Slicer 3.0 beta1 (built today, 2007.02.08). This was reported to Steve Pieper who then directed me to Stephen Aylward at the AHM in Salt Lake City, but I thought I should post it here as well. Three image files in the attached archive will allow easy duplication of the crash. The three files are colorLUT.tif (will crash), grayOnly.tif (will work), and satRed.tif (will crash). The images are identical with the exception of the associated LUT.

Additional Information

In Slicer2.7, the following error is printed to the terminal:

ERROR: In $Slicer2Root/Modules/vtkITK/cxx/vtkITKArchetypeImageSeriesScalarReader.cxx, line 164
vtkITKArchetypeImageSeriesScalarReader (0x565e860): UpdateFromFile: Unsupported number of components (only 1 allowed): 3

TagsNo tags attached.

Activities

2007-02-08 10:14

 

testLUT.zip (Attachment missing)
pieper

pieper

2007-03-27 10:28

administrator   ~0000070

Need fix to the underlying ITK tiff reader.

millerjv

millerjv

2007-04-30 12:55

developer   ~0000093

This is not an ITK/libTIFF issue but is a Slicer archetype issue. The Slicer code is trying to read the data into a scalar node. But ITK reports the data has 3 components which causes Slicer to emit the reported message and crash (because the data is not actually read because Slicer decided not to read the data).

So the issue is that the data needs to be read as a vector image or ITK needs to be allowed to convert the RGB image into a scalar image (which it would be happy to do if given the chance).

millerjv

millerjv

2007-04-30 13:03

developer   ~0000094

If we read a single slice out of the tiff as RGB and write it out, ITK is fine.
If we read a single slice out of the tiff as a scalar and write it out, ITK is fine.

But if we read the tiff as a scalar or RGB volume there appear to be indexing issues (shifted and wrapped images).

pieper

pieper

2007-11-27 04:08

administrator   ~0000181

Decided to migrate this functionality to python.

pieper

pieper

2009-07-14 11:14

administrator   ~0001046

The user decided that it was sufficient to be able to extract the color map info using python code and then provide scalar volumes w/o colormaps to slicer.

Issue History

Date Modified Username Field Change
2007-02-08 10:14 bryan New Issue
2007-02-08 10:14 bryan File Added: testLUT.zip
2007-03-27 10:28 pieper Note Added: 0000070
2007-03-27 10:28 pieper Status new => confirmed
2007-03-27 10:28 pieper Resolution open => suspended
2007-04-30 12:55 millerjv Note Added: 0000093
2007-04-30 13:03 millerjv Note Added: 0000094
2007-04-30 13:03 millerjv Status confirmed => assigned
2007-04-30 13:03 millerjv Assigned To => pieper
2007-11-27 04:08 pieper Note Added: 0000181
2007-11-27 04:08 pieper Status assigned => resolved
2007-11-27 04:08 pieper Resolution suspended => won't fix
2009-07-14 11:14 pieper Note Added: 0001046