Estoy escribiendo arrays de numpy como MEDIO de imágenes con gdal en python. Hasta el día de hoy, siempre he accedido a la cabecera de la manera difícil por la lectura en todas las líneas, cambiar la información y escribirla de nuevo. Esto no es sólo la codificación intensivo, sino también los rendimientos de múltiples fuentes de error.
Una solución mejor sería mediante el uso de SetMetadata. He intentado:
myArray = np.full(shape=(4,3), fill_value=10)
driver = gdal.GetDriverByName('ENVI')
destination = driver.Create("test.bsq", ncols, nrows, 1, gdal.GDT_Float32)
destination.GetRasterBand(1).WriteArray(myArray)
destination.SetMetadataItem('band names', 'band hello world', 'ENVI')
pero en el archivo de salida, la banda se llama "banda de 1". Mi información es sobrescrito por la función integrada para el encabezado de la creación?
O tal vez tengo que poner el nombre de cada banda de forma individual como
b = destination.GetRasterBand(1)
b.SetBandName("band hello world")
b.WriteArray(myArray)
Pero "SetBandName" no existe y no puedo encontrar ¿de qué otra manera se supone que debe ser llamado.
¿Cómo puedo suministro de los nombres de la banda para LA imágenes de entonces?