numpy.core._exceptions._ArrayMemoryError: Unable to allocate 9.53 GiB for an array with shape (121110, 84515) and data type uint8
Opened this issue · 2 comments
Al hacer la precarga de la imagen y modelo me da este error
Ha ocurrido un error mientras se ejecutaba el código de Python:
numpy.core._exceptions._ArrayMemoryError: Unable to allocate 9.53 GiB for an array with shape (121110, 84515) and data type uint8
Traceback (most recent call last):
File "C:\Users/sigeo.agmartin/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\GeoAI_Plugin-main\dialog_precarga.py", line 160, in ejecutar
resultado=self.cargar_imagen(imagen)
File "C:\Users/sigeo.agmartin/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\GeoAI_Plugin-main\dialog_precarga.py", line 231, in cargar_imagen
ba=b.ReadAsArray()
File "C:\PROGRA~1\QGIS32~1.11\apps\Python39\lib\site-packages\osgeo\gdal.py", line 4765, in ReadAsArray
return gdal_array.BandReadAsArray(self, xoff, yoff,
File "C:\PROGRA~1\QGIS32~1.11\apps\Python39\lib\site-packages\osgeo\gdal_array.py", line 429, in BandReadAsArray
buf_obj = numpy.empty([buf_ysize, buf_xsize], dtype=typecode)
numpy.core._exceptions._ArrayMemoryError: Unable to allocate 9.53 GiB for an array with shape (121110, 84515) and data type uint8
Versión de Python: 3.9.5 (tags/v3.9.5:0a7dcbd, May 3 2021, 17:27:52) [MSC v.1928 64 bit (AMD64)]
Versión de QGIS: 3.28.11-Firenze Firenze, b02458a196
Jaitor1 estas utilizando la configuración con CUDA? si ese es el caso prueba con CPU.
Con CUDA da ese tipo de error, es por la configuración que dejo META en el código tengo pendiente resolverlo
Si devuelve un error similar con CPU probablemente estés intentando procesar una imagen muy grande, corta la imagen y realiza el proceso con una porción de ella
Si, me sucede tanto con CUDA como CPU.
La imagen es una ortofoto .tif extraida de google con el tamaño del municipio de Getxo, Bizkaia. Supongo que es muy grande, probaré con una porción más pequeña, aunque no me sirve para lo que quería, ya que quería seleccionar todas las piscinas del municipio.
Gracias por tu enorme contribución, por cierto 👏