1 votos

Python/GDAL hiperspectral Longitudes de onda de las imágenes

Puedo abrir y leer una imagen hiperespectral utilizando GDAL según las instrucciones aportadas por Max König aquí :

Así que después de leer los datos así :

data = gdal.Open( filename )

entonces puedo ver la información x, y, dim del conjunto de datos :

x = data.RasterXSize
y = data.RasterYSize
dim = data.RasterCount

Ahora la pregunta es que si hay alguna manera de averiguar que cada banda está representando realmente qué espectro electromagnético?

Después de leer todas las bandas como una lista en python como esta:

RasterBands =[]
for i in range(data.RasterCount):    
    RasterBands.append(data.GetRasterBand(i)) 

Puedo escribir:

RasterBands[1].ComputeBandStats()

Esto me dará dos valores flotantes, pero no estoy seguro de si representan las longitudes de onda de la banda 1 o no.

¡Estaría agradecido si alguien puede darme una pista!

Mejor Sina

3voto

xenny Puntos 670

Como dice @user30184, gdal sólo lee los valores de su banda raster, pero debería poder saber el wavenlenght de cada banda basándose en los metadatos (información que debería obtener sobre los datos).

los dos valores devueltos por "ComputeBandStats()" serán los media y desviación estándar de los valores en sus bandas. Si el valor medio está entre cero y uno, puede asumir que sus datos almacenan la reflectancia, de lo contrario los valores son probablemente números de dígitos.

Normalmente, los datos hiperespectrales tienen un número muy grande de bandas (varios cientos) con un intervalo de muestreo constante en las longitudes de onda (por ejemplo, 6 nm), por lo que si se conoce el valor del rango de longitudes de onda (por ejemplo, 400-900 nm), se puede derivar la longitud de onda central de cada banda utilizando una regla de 3.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X