GeoAI_Plugin icon indicating copy to clipboard operation
GeoAI_Plugin copied to clipboard

numpy.core._exceptions._ArrayMemoryError: Unable to allocate 9.53 GiB for an array with shape (121110, 84515) and data type uint8

Open jaitor1 opened this issue 2 years ago • 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 avatar Sep 28 '23 12:09 jaitor1

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

luisCartoGeo avatar Sep 29 '23 01:09 luisCartoGeo

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 👏

jaitor1 avatar Sep 29 '23 07:09 jaitor1