Me gustaría obtener algunos consejos sobre la forma más eficiente de devolver una lista de valores únicos de un ráster de valor discreto utilizando Python y GDAL.
Pensé que la forma más obvia sería examinar la tabla de atributos del ráster, pero si lo hago band.GetDefaultRAT()
en la banda de un dataset ráster que contiene una tabla de atributos (la tabla es visible en ArcCatalog, de todos modos), el resultado es siempre None
:
>>> rat = band.GetDefaultRAT()
>>> rat == None
True
En ese caso, termino teniendo que escanear cada celda del ráster y crear una lista de valores únicos manualmente. ¿Es esta la única manera de hacerlo?
¿O hay una manera de construir una tabla de atributos con Python y GDAL, luego consultar una lista de valores únicos?
python
gdal
attribute-table
hendra
fuente
fuente
Respuestas:
Si he entendido bien, puede utilizar np.unique función de lib numpy:
o puedes hacerlo de una vez:
fuente
band.ReadAsArray()
en unanp.array
llamada? ¿Ya no devuelve una matriz numpy?