Nrrd ITK-SCIFIO Bug

Matt McCormick matt.mccormick at kitware.com
Tue Jul 2 16:03:00 CDT 2013


Hi Curtis and Mark,

Thanks for the information.  It seems like the best path forward would
add a new method to SCIFIOImageIO that specifies the index of the
image to extract from the huge file (behaving just like the SCIFIO and
Bio-format libraries).  If someone wants to process a particular
image, they can call this method on an SCIFIOImageIO instance, then
call SetImageIO on an ImageFileReader.

If they want to process a series of the images from the file, then a
SCIFIOVideoIO class could be created that inherits from VideoIOBase
[1].  This class would internally use a SCIFIOImageIO instance,
setting the image index as appropriate.  Then, the series of images
could be processed easily with VideoFileReader [2] and
ImageFilterToVideoFilterWrapper [3].

Thanks,
Matt

[1] http://www.itk.org/Doxygen/html/classitk_1_1VideoIOBase.html
[2] http://www.itk.org/Doxygen/html/classitk_1_1VideoFileReader.html
[3] http://www.itk.org/Doxygen/html/classitk_1_1ImageFilterToVideoFilterWrapper.html

On Tue, Jul 2, 2013 at 8:22 PM, Curtis Rueden <ctrueden at wisc.edu> wrote:
> Hi Matt,
>
> Thanks for your suggestions. To be clear, in microscopy these days, it is
> quite common to have an experiment stored as a single file (in e.g. Leica
> LIF format), which contains many loosely related N-dimensional images from
> the same experiment, but dimensionally different. So you might have, e.g.:
>
> 512 x 512 (single image plane)
> 768 x 512 x 12 T x 5 Z
> 1024 x 1024 x 3 C x 100 T
> ... etc., with very few rules or limitations on the number of images, or
> their structure.
>
> It would be great if in ITK there were a way to represent this in a general
> way. SCIFIO & Bio-Formats handle it by allowing you to specify the image
> index you want to retrieve. (From the information so far, it sounds like the
> VideoIO may not be powerful enough, and/or may not match the intended use
> case here?) What would be the best way forward to pursue such an
> enhancement?
>
> Thanks,
> Curtis
>
>
> On Tue, Jul 2, 2013 at 3:13 PM, Mark Hiner <hiner at wisc.edu> wrote:
>>
>>
>> On Tue, Jul 2, 2013 at 2:55 PM, Matt McCormick
>> <matt.mccormick at kitware.com> wrote:
>>>
>>> TemporalDataObject?
>>
>>
>> So is this incompatible with the ImageReaders, because it's a sibling of
>> ImageBase? Is there a separate VideoReader/VideoWriter class? (didn't see
>> one in the video module...)
>>
>> I don't love the idea of creating another ImageIO... but can't I just
>> make, essentially, a TemporalDataObject that extends ImageBase, and
>> specifically holds a list of image series?
>>
>> It doesn't even have to be a circular list.. it can just hold offsets into
>> the data..
>
>




More information about the SCIFIO mailing list