[Insight-users] ImageSeriesReader memory allocation for large datasets

Hauke Heibel heibel at cs.tum.edu
Tue May 6 03:59:05 EDT 2008


Hi,

I once have had similar experiences. You need to check a few more 
things. Additional memory might be required, when your program needs to 
convert the data (unsigned short != short, etc.). Note, that this might 
happen inside the ImageSeriesReader. From what I remember, the 
ImageSeriesReader requires in the best case (without any conversion)

sizeof(volume) + 2*sizeof(biggest slice)

In your case this does not change much. You also need to make sure, that 
the previous part of your program did not consume too much memory. You 
might want to take a look at the Process Explorer 
(http://www.microsoft.com/germany/technet/sysinternals/utilities/ProcessExplorer.mspx). 
It will give you detailed information on the process that is running 
including very good information about the memory consumption. Maybe you 
can give a hint on the memory consumption before the allocation that failed.

I hope that helps a bit,
Hauke

Marius Erdt wrote:
> Hi,
>
> I have tested some more data sets (.dcm, .png) on different systems, but the result is always the same. As soon as the number of slices gets too high, the memory allocation fails.
>
> Does anyone have an idea how this problem can be fixed?
>
> Thanks,
>
> Marius
>
>
>
> I added the output to the file and loaded a data set of 809 slices of 
> 16-Bit PNG images with a resolution of 573x330. This is the result:
>
> Number of pixels requested = 152973810
> Bytes per pixel = 4
>
> so the size should be ~583 Mb in total. However, the memory could not be 
> allocated.
>
> regards,
> Marius
-- 
Tim Hauke Heibel
Computer Aided Medical Procedures (CAMP)
fon: +49 89 289 19427
fax: +49 89 289 17059



More information about the Insight-users mailing list