5 votos

¿Cómo abrir correctamente un dato ASTER?

Ayer descargué una imagen Aster L1B del sitio web del USGS. Si la cargo en QGIS, no se muestra correctamente (en cuanto a la ubicación). Incluso después de haber activado la opción "On the fly", no está leyendo el sistema de coordenadas WGS84 (Averiguado este tipo de fallo ocurrió en ArcGIS también -. ¿Cómo importar y proyectar datos ASTER 1B en Arcmap? ). Intenté asignar proyección a la imagen pero no funcionó (Recibí el mensaje - hdf no tiene bandas raster).

He intentado lo mismo en GRASS(r.in.gdal) y aparece "Error: La banda seleccionada (1) no existe"

Pero si abro la misma imagen en Global Mapper, la imagen se muestra perfectamente.

¿Cómo solucionarlo? enter image description here

1 votos

¿Puedes añadir cómo has añadido los datos? En el tema que enlazaste leí que el archivo contiene varios subconjuntos de datos. Podría ser necesario especificar el subconjunto de datos que quieres, o extraerlo con gdalwarp en un primer paso. Ejecutar gdalinfo en el archivo podría dar más pistas.

0 votos

En QGIS, cargado como una capa Raster normal -> Seleccionados los 15 subdatasets (4 VNIR, 6 SWIR, 5 TIR) En GRASS, como se menciona en mi pregunta usando r.in.gdal. Hay un comando disponible en la hierba - r.in.aster. Pero por la descripción // Georeferenciar, rectificar e importar imágenes Terra-ASTER y DEM's relativos usando gdalwarp // no creo(o no se) que sirva para mi propósito.

0 votos

Los subconjuntos de datos pueden tener diferentes CRS o extensión, por lo que es mejor probar con uno solo. De la imagen parece que el raster se carga sin información CRS adecuada. gdalwarp puede añadir CRS y extensión si es necesario para hacer un archivo raster compatible con QGIS.

6voto

SpliFF Puntos 214

Los archivos ASTER L1B contienen varios subconjuntos de datos con diferentes resoluciones. Por eso no es fácil añadirlos a QGIS. Tienes que ejecutar gdalinfo y gdalwarp en él para obtener un archivo tif que QGIS puede importar:

gdalinfo AST_L1B.hdf >>info.txt

le ofrece una larga lista de metadatos. Busca los subconjuntos de datos:

Subdatasets:
  SUBDATASET_1_NAME=HDF4_EOS:EOS_SWATH:"AST_L1B.hdf":VNIR_Swath:ImageData1
  SUBDATASET_1_DESC=[4200x4980] ImageData1 VNIR_Swath (8-bit unsigned integer)
  SUBDATASET_2_NAME=HDF4_EOS:EOS_SWATH:"AST_L1B.hdf":VNIR_Swath:ImageData2
  SUBDATASET_2_DESC=[4200x4980] ImageData2 VNIR_Swath (8-bit unsigned integer)
  SUBDATASET_3_NAME=HDF4_EOS:EOS_SWATH:"AST_L1B.hdf":VNIR_Swath:ImageData3N
  SUBDATASET_3_DESC=[4200x4980] ImageData3N VNIR_Swath (8-bit unsigned integer)
  SUBDATASET_4_NAME=HDF4_EOS:EOS_SWATH:"AST_L1B.hdf":VNIR_Swath:ImageData3B

y toma el nombre completo del primero:

gdalinfo HDF4_EOS:EOS_SWATH:"AST_L1B.hdf":VNIR_Swath:ImageData1 >>sds1.txt

Esto le proporciona información detallada del SIR y de la extensión de ese subconjunto de datos:

LOWERLEFT=63.4513647453478, -151.617477277645
LOWERRIGHT=63.2162350711876, -150.220604276473
UPPERLEFT=63.9822445743476, -151.179093369548
UPPERRIGHT=63.7426354293633, -149.760000938454
SRS=PROJCS["UTM Zone 5, Northern Hemisphere",GEOGCS["Unknown datum based upon the GRS 1980 ellipsoid",DATUM["Not specified (based on GRS 1980 spheroid)",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-153],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]]

A continuación lo transformamos en un Geotiff:

gdalwarp HDF4_EOS:EOS_SWATH:"AST_L1B.hdf":VNIR_Swath:ImageData1 sds.tif
Creating output file that is 6063P x 5573L.
Processing input file HDF4_EOS:EOS_SWATH:AST_L1B.hdf:VNIR_Swath:ImageData1.
0...10...20...30...40...50...60...70...80...90...100 - done.

que puede ser cargado con información de CRS corrcet y extensión por QGIS. Usted tiene que hacer eso con cada subconjunto de datos que desee.

0 votos

Muchas gracias Andre. Funcionó a las mil maravillas. Una última pregunta. ¿Podemos ejecutar esto en modo batch? A través de modeler..or a través de script

0 votos

Tienes que obtener el nombre exacto de los subconjuntos de datos (¡se distingue entre mayúsculas y minúsculas!). No sé si se pueden extraer automáticamente. Añadir el nombre de la carpeta es otro problema si no se ejecuta en un shell DOS dentro de la misma carpeta.

1voto

Tom Broen Puntos 1

Otra forma de trabajar con las imágenes utilizando la GUI es:

  1. En primer lugar en un nuevo proyecto añada el .hdf como raster y seleccione con qué banda desea trabajar. QGIS establecerá un nuevo CRS definido por el usuario con un número, por ejemplo en mi caso USER:100008.
  2. Vaya a Raster>Proyecciones>Warp(Reproyectar). Reproyectará cada una de las bandas con un nombre de salida diferente para cada una. Selecciona el USER:100008 como SRS de origen, y como destino selecciona la proyección UTM correspondiente. En mi caso EPSG:32719.
  3. Después de tener un archivo .tif para cada banda se puede hacer un apilamiento de capas con ellos. He probado una vez y es posible apilar en un solo paso de proceso la banda 1,2 y 3 con una banda 4 que está en una resolución de 60m. Se remuestreará la imagen de la banda 4 para que coincida con la resolución de las otras capas.

Conclusión: aún no existe una forma directa de trabajar con imágenes ASTER en QGIS. Una mejor solución podría ser pedir la imagen ASTER en .tif, sé que es posible a través del centro de datos REVERB. Ahora que las imágenes ASTER y el producto están disponibles gratuitamente, creo que es la mejor opción.

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