Execution of the following code leads to a crash on my machine (Windows 7, intel i7):
unsigned int x = pow(2, 29); unsigned long size = x; double* data = new double[size]; for (unsigned long i = 0; i < size; i++) data[i] = 0; mitk::Image::Pointer image = mitk::Image::New(); mitk::PixelType TPixel = mitk::MakeScalarPixelType<double>(); unsigned int* dimensionsOfImage = new unsigned int[1]; dimensionsOfImage[0] = x; image->Initialize(TPixel, 1, dimensionsOfImage, 1); image->SetImportVolume(data, 0, 0, mitk::Image::CopyMemory); mitk::IOUtil::Save(image, "C:/Users/groehl/Desktop/test.nrrd");
The same is happening with:
- float | 2^30 values
- long | 2^30 values
- int | 2^30 values
- short | 2^31 values