Hi Tim, It is possible to stream-write an image if the output format supports streamed writing. MetaImage (.mha) has good support for this. See this example on how to stream the writer:
http://www.itk.org/Doxygen/html/Examples_2IO_2VisibleHumanStreamReadWrite_8cxx-example.html#_a7 To generate the image, use an itk::PasteImageFilter. To keep track of the higher order indices, itk::RegionOfInterestImageFilter is suggested instead of itk::ExtractImageFilter. HTH, Matt On Thu, Feb 18, 2016 at 1:06 PM, Tim Jackson <tj.jackson1...@gmail.com> wrote: > Hi everyone, > > I've recently started working with a very large .nd2 format time lapse > image, that was taken on a Nikon confocal microscope. These image sequences > are 5D (x,y,z,time,channel). Because these images are so large, trying to > work on the entire image at once will cause a memory allocation error. > Therefore I set the reader up in ITK, use a series of ExtractImageFilters to > break down the giant file into 2D images (I iterate over the time sequence > in a for loop, obtaining a 2D x, y image for each time frame for each > channel). > > This all works fine, and I'm able to complete the necessary image > filtering/corrections on these 2D images within the for loop. My problem > arises when I'm trying to write the output file. Ideally, I would like to > be able to compose all of these images back into one large 5D .nd2 file, but > if I do this outright, I'm guessing the writer will have a memory allocation > error. Is there a way to write the file one frame at a time, adding the > next frame onto the file as the filtering occurs? Or is there some other > way to handle the writing of very large image files to skirt around memory > allocation problems? I know I could write each frame as an individual file > in an image sequence, but then I would have to use a third-party program > like ImageJ to make them into a stack, merge channels, etc, which is not a > simple task with the volume of image files I will be analyzing. > > Thanks for your help! > Tim > > _______________________________________________ > 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://public.kitware.com/mailman/listinfo/insight-developers > _______________________________________________ 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://public.kitware.com/mailman/listinfo/insight-developers