Hi Folks, <br><br>I am having problem to write to disk an image create dynamically. I am sending a simple code I&#39;ve created to understand the problem. <br>I really appreciate any help. <br><br>Thanks, <br>Ricardo <br><br>
<br>#include &quot;itkImage.h&quot; <br>#include &quot;itkImageRegionIterator.h&quot; <br>#include &quot;itkImportImageFilter.h&quot; <br>#include &quot;itkImageFileWriter.h&quot; <br><br><br>int main( int argc, char **argv ) 
<br>{ <br>&nbsp;&nbsp; /// Define the pixel type <br>&nbsp;&nbsp; typedef double&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PixelType; <br><br>&nbsp;&nbsp; /// Define the image type and its iterator <br>&nbsp;&nbsp; typedef itk::Image&lt; PixelType, 3 &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; ImageType3D; 
<br><br>&nbsp;&nbsp; /// Define writer types <br>&nbsp;&nbsp; typedef itk::ImageFileWriter&lt; ImageType3D &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WriterType3D; <br><br>&nbsp;&nbsp; /// Import filter used to write the gabor filter to disk <br>&nbsp;&nbsp; typedef itk::ImportImageFilter&lt; PixelType, 3 &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ImportFilter3D; 
<br><br><br>&nbsp;&nbsp; // *** <br>&nbsp;&nbsp; // Alloc memory dynamically <br>&nbsp;&nbsp; // *** <br>&nbsp;&nbsp; int m_dimU&nbsp; = 256; <br>&nbsp;&nbsp; int m_dimV&nbsp; = 256; <br>&nbsp;&nbsp; int m_dimW&nbsp; = 128; <br><br>&nbsp;&nbsp; const unsigned int nPixels =&nbsp; m_dimU * m_dimV * m_dimW; <br>&nbsp;&nbsp; PixelType *buffer = new PixelType[ nPixels ]; 
<br>&nbsp;&nbsp; // *** <br><br><br>&nbsp;&nbsp; // *** <br>&nbsp;&nbsp; // Create the import filter object <br>&nbsp;&nbsp; // *** <br>&nbsp;&nbsp; ImportFilter3D::Pointer importFilter = ImportFilter3D::New(); <br><br>&nbsp;&nbsp; ImportFilter3D::RegionType region; <br>&nbsp;&nbsp; ImportFilter3D::IndexType start = {0, 0, 0}; 
<br>&nbsp;&nbsp; region.SetIndex( start ); <br>&nbsp;&nbsp; ImportFilter3D::SizeType size = {m_dimU, m_dimV, m_dimW}; <br>&nbsp;&nbsp; region.SetSize(&nbsp; size&nbsp; ); <br><br>&nbsp;&nbsp; importFilter-&gt;SetRegion( region ); <br><br>&nbsp;&nbsp; double origin[] = {0, 0, 0}; <br>
&nbsp;&nbsp; importFilter-&gt;SetOrigin( origin ); <br><br>&nbsp;&nbsp; double spacing[] = {1.0, 1.0, 1.0}; <br>&nbsp;&nbsp; importFilter-&gt;SetSpacing( spacing ); <br><br>&nbsp;&nbsp; importFilter-&gt;SetImportPointer( buffer, nPixels, true ); <br>&nbsp;&nbsp; // *** <br>
<br><br>&nbsp;&nbsp; // *** <br>&nbsp;&nbsp; // Create the writer object <br>&nbsp;&nbsp; // *** <br>&nbsp;&nbsp; WriterType3D::Pointer writerPtr = WriterType3D::New(); <br>&nbsp;&nbsp; writerPtr-&gt;SetFileName( &quot;C:\\Filter.gab&quot; ); <br>&nbsp;&nbsp; writerPtr-&gt;SetInput( importFilter-&gt;GetOutput() ); 
<br>&nbsp;&nbsp; writerPtr-&gt;Update();&nbsp;&nbsp; &nbsp;&nbsp; // *** <br><br>&nbsp;&nbsp; return 0; <br>} <br><br>