[Insight-developers] Repeated ImageIO::Read calls, without ReadImageInformation?

Mark Hiner hiner at wisc.edu
Thu Jul 11 14:40:47 EDT 2013


Thanks Matt!

itk::ImageFileReader is not aware of modifications that occur to the
> ImageIO class, so Modified() must be called on the ImageFilterReader
> after SetSeriesIndex is called on the ImageIO.
>

the Modified() method was exactly what I was looking for.. I didn't look
far enough through the inherited methods; my bad.

 There should be no modification to itk::ImageIOBase itself, only the
> addition of a SCIFIOImageIO::SetSeriesIndex method.
>

 I haven't modified the ImageIOBase at all. Sorry, I could have worded that
better.. :-p

To process a series of
> images, then the Video framework should be used per our previous
> discussion.
>

 Locally I've been able to convert a multi-series dataset with the
SCIFIOImageIO, using the SetSeriesIndex method + Modified(). I know it
won't work properly with mixed sized images, but I still think it's an
improvement to the SCIFIOImageIO, so I submitted a
patch<http://review.source.kitware.com/#/c/11936/>(which also fixes
itkSCIFIOImageIO::Write, RGB reading, and other things..)

 I admit I'm not entirely sure how much work it would be to create a SCIFIO
IO for the video framework. So I created an issue for
it<https://github.com/scifio/scifio-imageio/issues/3>in our github
repo for now.

- Mark


On Tue, Jul 9, 2013 at 12:19 PM, Matt McCormick
<matt.mccormick at kitware.com>wrote:

> Hi Mark,
>
> There should be no modification to itk::ImageIOBase itself, only the
> addition of a SCIFIOImageIO::SetSeriesIndex method.
>
> itk::ImageFileReader is not aware of modifications that occur to the
> ImageIO class, so Modified() must be called on the ImageFilterReader
> after SetSeriesIndex is called on the ImageIO.  To process a series of
> images, then the Video framework should be used per our previous
> discussion.
>
> Thanks,
> Matt
>
> On Tue, Jul 9, 2013 at 2:22 PM, Mark Hiner <hiner at wisc.edu> wrote:
> > Hello all,
> >
> >  I'm trying to modify the SCIFIO-ITK ImageIO to accommodate multi-series
> > datasets. I added API to the ImageIO itself allowing for series
> > specification, but am not sure how to get repeated ImageIO::Read calls
> > without also triggering ReadImageInformation (which I want to avoid, as
> it
> > is an expensive operation and only needs to execute once).
> >
> > I have the following pipeline:
> >
> >  itk::ImageFileReader -> itk::StreamingImagefilter ->
> itk::ImageFileWriter
> >
> > and in a loop over the image series, I call my SCIFIOImageIO::SetSeries
> > method, and then ImageFileWriter::Update() to write the current series.
> >
> >  But it seems like after being called once, Update() stops triggering
> future
> > ImageIO::Read calls as long as the same ImageIO is attached to the
> > ImageFileReader...
> >
> >  So what's the intended ITK way of updating the ImageFileReader's output,
> > without re-parsing? I looked through the API docs, but nothing I've tried
> > has worked... (ImageFileReader::GenerateOutputInformation calls
> > ImageIO::ReadImageInformation. I'm assuming ImageFileReader::GenerateData
> > would do what I want, but it's protected so I suspect there's a different
> > way..)
> >
> > Thanks!
> > Mark
> >
> > _______________________________________________
> > Powered by www.kitware.com
> >
> > Visit other Kitware open-source projects at
> > http://www.kitware.com/opensource/opensource.html
> >
> > Kitware offers ITK Training Courses, for more information visit:
> > http://kitware.com/products/protraining.php
> >
> > Please keep messages on-topic and check the ITK FAQ at:
> > http://www.itk.org/Wiki/ITK_FAQ
> >
> > Follow this link to subscribe/unsubscribe:
> > http://www.itk.org/mailman/listinfo/insight-developers
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-developers/attachments/20130711/97a156e8/attachment.htm>


More information about the Insight-developers mailing list