Hi,<br><br>I am a newbie to ITK. I was trying to read a set of dicom images from a directory and then use reader-&gt;update() to process each one of them one after the other. But the reader-&gt;update() gives me an error after reading the first image. Can anyone please tell me how to fix this problem?
<br><br>This is what my code looks like. It is not the complete code, but only the relevant part of it.<br>---------------<br>&nbsp; typedef itk::GDCMSeriesFileNames NamesGeneratorType;<br>&nbsp; NamesGeneratorType::Pointer nameGenerator = NamesGeneratorType::New();
<br>&nbsp; nameGenerator-&gt;SetInputDirectory( &quot;D:\\testimages&quot;&nbsp; );<br><br>&nbsp; typedef std::vector&lt;std::string&gt; FileNamesContainer;<br>&nbsp; FileNamesContainer fileNames = nameGenerator-&gt;GetInputFileNames();<br>
&nbsp;&nbsp;&nbsp; unsigned int numberOfFilenames =&nbsp; 
fileNames.size();<br>&nbsp; std::cout &lt;&lt; numberOfFilenames &lt;&lt; std::endl; <br>&nbsp; unsigned int fni;<br><br>&nbsp; for(fni = 0; fni&lt;numberOfFilenames; fni++)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; &quot;filename # &quot; &lt;&lt; fni &lt;&lt; &quot; = &quot;;
<br>&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; fileNames[fni] &lt;&lt; std::endl;<br>&nbsp;&nbsp;&nbsp; }<br><br>&nbsp; for(fni = 0; fni&lt;numberOfFilenames; fni++)<br>&nbsp; {<br>&nbsp; reader-&gt;SetFileName( fname);<br><br>&nbsp; reader-&gt;SetImageIO( gdcmImageIO );<br>
<br>
&nbsp; try<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; reader-&gt;Update();//this is where it gives me an error second time in the loop.<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp; catch (itk::ExceptionObject &amp; e)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; std::cerr &lt;&lt; &quot;exception in file reader &quot; &lt;&lt; std::endl;
<br>&nbsp;&nbsp;&nbsp; std::cerr &lt;&lt; e &lt;&lt; std::endl;<br>&nbsp;&nbsp;&nbsp; return EXIT_FAILURE;<br>&nbsp;&nbsp;&nbsp; }<br>// code for processing the image //<br>//code for writing the processed image//<br>}// for loop complete<br>--------------------------------------
<br>The filenames are correctly read, the code runs fine the first time through the for loop, but second time it gives an error at the reader-&gt;Update() line.<br>Can anyone please tell me why is this happening and how to fix it?
<br><br>Thanks,<br>Ashish<br><br><br>