ArcPro version 3.3.0
I'm attempting to create a space time cube using 1-meter raster data. I've created a mosaic, added multidimensional information, and created a .crf file.
Up to this point, I've been limited by the 2 billion bin maximum for Space Time Cubes as I've tried to run "Create Space Time Cube from Multidimensional Raster Layer". So, I've tried to parse my area of interest down as much as possible (now 16,378 columns by 10,576 rows) and limit my input data sources (10 input datasets), but I'm now getting an error "the pixel block exceeds the maximum size allowed" whenever the tool tries to run RasterToNumpyArray.
Error:
Traceback (most recent call last):
File "<string>", line 5215, in execute
File "C:\Program Files\ArcGIS\Pro\Resources\ArcToolbox\Scripts\SSCubeObject.py", line 1148, in obtainData
self.__obtainData()
File "C:\Program Files\ArcGIS\Pro\Resources\ArcToolbox\Scripts\SSCubeObject.py", line 1228, in __obtainData
self.__binData()
File "C:\Program Files\ArcGIS\Pro\Resources\ArcToolbox\Scripts\SSCubeObject.py", line 1493, in __binData
dataValues = ARCPY.RasterToNumPyArray(slice, nodata_to_value = noData)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ArcGIS\Pro\Resources\ArcPy\arcpy\__init__.py", line 2478, in RasterToNumPyArray
return _RasterToNumPyArray(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
RuntimeError: The pixel block exceeds the maximum size allowed.
Traceback (most recent call last):
File "<string>", line 2, in <module>
File "C:\Program Files\ArcGIS\Pro\Resources\ArcPy\arcpy\stpm.py", line 340, in CreateSpaceTimeCubeMDRasterLayer
raise e
File "C:\Program Files\ArcGIS\Pro\Resources\ArcPy\arcpy\stpm.py", line 337, in CreateSpaceTimeCubeMDRasterLayer
retval = convertArcObjectToPythonObject(gp.CreateSpaceTimeCubeMDRasterLayer_stpm(*gp_fixargs((in_md_raster, output_cube, fill_empty_bins), True)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ArcGIS\Pro\Resources\ArcPy\arcpy\geoprocessing\_base.py", line 512, in <lambda>
return lambda *args: val(*gp_fixargs(args, True))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
arcgisscripting.ExecuteError: Traceback (most recent call last):
File "<string>", line 5215, in execute
File "C:\Program Files\ArcGIS\Pro\Resources\ArcToolbox\Scripts\SSCubeObject.py", line 1148, in obtainData
self.__obtainData()
File "C:\Program Files\ArcGIS\Pro\Resources\ArcToolbox\Scripts\SSCubeObject.py", line 1228, in __obtainData
self.__binData()
File "C:\Program Files\ArcGIS\Pro\Resources\ArcToolbox\Scripts\SSCubeObject.py", line 1493, in __binData
dataValues = ARCPY.RasterToNumPyArray(slice, nodata_to_value = noData)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ArcGIS\Pro\Resources\ArcPy\arcpy\__init__.py", line 2478, in RasterToNumPyArray
return _RasterToNumPyArray(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
RuntimeError: The pixel block exceeds the maximum size allowed.
Failed to execute (CreateSpaceTimeCubeMDRasterLayer).
Is there a better way to create a high-resolution space time cube with my data? My PC isn't very limited on computational power (64 GB of RAM, 13th gen i-9, dedicated graphics card, etc.), and 2 billion bins seems limited. Even after I get under the 2 billion limit, the above error seems to be limiting me even more, and I don't have a way to increase the pixel block allowed size.
Quick update here:
Moved to ArcGIS Pro version 3.4.3 and continue to get the same "pixel block" error.
After some more testing, it seems as though I get this "pixel block" error even when my number of bins is *well* below the 2 billion bin limit - e.g. creating an area that should have a 1.1 billion bin output failed. I have gotten the creation of the space time cube to succeed, but only when going WAY below the threshold - attempts with 250 million bins have succeeded.