<div dir="ltr">Thanks Matt!<br><br><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">itk::ImageFileReader is not aware of modifications that occur to the<br>



ImageIO class, so Modified() must be called on the ImageFilterReader<br>
after SetSeriesIndex is called on the ImageIO.  <br></blockquote><div><br></div><div>the Modified() method was exactly what I was looking for.. I didn&#39;t look far enough through the inherited methods; my bad. <br><br>

<blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">
There should be no modification to itk::ImageIOBase itself, only the<br>
addition of a SCIFIOImageIO::SetSeriesIndex method.<br></blockquote></div><div><br></div><div> I haven&#39;t modified the ImageIOBase at all. Sorry, I could have worded that better.. :-p<br><br><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">


To process a series of<br>
images, then the Video framework should be used per our previous<br>
discussion.<br></blockquote><div><br></div><div> Locally I&#39;ve been able to convert a multi-series dataset with the SCIFIOImageIO, using the SetSeriesIndex method + Modified(). I know it won&#39;t work properly with mixed sized images, but I still think it&#39;s an improvement to the SCIFIOImageIO, so I submitted <a href="http://review.source.kitware.com/#/c/11936/">a patch</a> (which also fixes itkSCIFIOImageIO::Write, RGB reading, and other things..)<br>


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

<br></div><div>- Mark<br></div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Jul 9, 2013 at 12:19 PM, Matt McCormick <span dir="ltr">&lt;<a href="mailto:matt.mccormick@kitware.com" target="_blank">matt.mccormick@kitware.com</a>&gt;</span> wrote:<br>

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