4.2. Tutorial 2

4.2.1. Tutorial 2: Clasificación de la Cobertura del Suelo con Imágenes de Sentinel-2

Este tutorial describe las principales fases de la clasificación de las imágenes adquiridas por Satélite Sentinel-2. Además, se muestran algunas de las herramientas de SCP.

Vamos a clasificar las siguientes clases de cobertura:

  1. Agua;

  2. Construido;

  3. Vegetación;

  4. Suelo desnudo.

Mira el vídeo de este tutorial.

http://www.youtube.com/watch?v=FcETq8OWM0k

4.2.1.1. Descarga de Datos

Vamos a descargar una imagen Sentinel-2 Distribuida por Copernicus Scientific Data Hub. En particular, vamos a usar las siguientes bandas de Sentinel-2 (para más información, leer Satélite Sentinel-2):

  • Banda 2 - Azul;

  • Banda 3 - Verde;

  • Banda 4 - Rojo;

  • Banda 5 - Límite Rojo de Vegetación;

  • Banda 6 - Límite Rojo de Vegetación;

  • Banda 7 - Límite Rojo de Vegetación;

  • Banda 8 - NIR (Infrarrojo Cercano);

  • Banda 8A - Límite Rojo de Vegetación;

  • Banda 11 - SWIR (Infrarrojo de onda corta);

  • Band 12 - SWIR (Infrarrojo de onda corta);

    Consejo : En caso de poseer una conexión a internet lenta, puedes descargar un subconjunto (alrededor de 50MB) de este enlace (© Copernicus Sentinel data 2016) el cual es el resultado de los pasos en Descarga de Datos y Recortar los Datos.

Comienza con un nuevo proyecto de QGIS. Abre la pestaña Descarga de Imágenes haciendo clic en el botón download en el SCP menú, o en la SCP Herramientas, or en el SCP panel. Selecciona la pestaña Descargar Sentinel-2. Vamos a buscar una imagen específica adquirida el 06 de Mayo de 2016.

En Acceso a Sentinel ingrese su nombre de usuario y contraseña (se requiere registrar una cuenta gratuita en).

WARNING : La cuenta de invitado ya no está disponible. Se requiere registrar una cuenta gratuita. Ver https://scihub.copernicus.eu/news/News00097 .

En Area de búsqueda ingresar:

  • UL X (Lon): 12

  • UL Y (Lat): 42

  • LR X (Lon): 13

  • LR Y (Lat): 41

    Consejo : En general es posible definir las coordenadas del area pulsando sobre el boton pointer y dibujando un rectangulo en el mapa.

En Buscar define:

  • Date from: 2016-05-06
  • to: 2016-05-06
_images/tutorial_2_1_01.jpg

Buscar imágenes Sentinel-2

Ahora pulsa el botón Buscar search_images y luego de unos segundos la imagen se mostrará en la lista de imágenes.

Consejo: descargar este archivo zip <https://docs.google.com/uc?id=0BysUrKXWIDwBZHF6dENlZ0g1Y0k>`_ conteniendo un shapefile de gránulos de Sentinel-2 para identificar la zona. Cargar este archivo shape en QGIS, seleccionar los gránulos en su área de búsqueda y abrir la tabla de atributos para ver el nombre de la zona.

_images/tutorial_2_1_02.jpg

Resultados de la búsqueda Sentinel-2

En la tabla de resultados, pulsa el item T32TQM en el campo Zona, el cual es el Gránulo S2A_OPER_MSI_L1C_TL_SGS__20160506T153005_A004552_T32TQM, y pulsa el botón image_preview. Se descargará una vista previa y se mostrará en el mapa, lo cual es útil para evaluar la calidad de la imagen y la cobertura de nubes.

CONSEJO : También es posible mostrar una vista general de la imagen (la cual está compuesta de varios gránulos) con el botón image_overview.

_images/tutorial_2_1_03.jpg

Vista previa de la imagen

Pulsa la pestaña Opciones de Descarga y deselecciona las bandas 1, 9, and 10. También deselecciona las opciones checkbox Preprocesar imágenes (por lo general, esto debería dejarse seleccionado, pero para este tutorial vamos a pre-procesar las imágenes en el paso Conversión Automática a Reflectancia de Superficie) y checkbox Cargar bandas e QGIS (porque vamos a recortar las imágenes).

CONSEJO : La opción checkbox Solo si Vista Previa en Capas descarga solamente las imágenes de la tabla de resultado que estén cargadas como vista previa en el mapa. Es conveniente seleccionar esta opción y eliminar las vistas previas de imágenes en la lista de capa de QGIS, dejando solo aquellas que se quieren descargar.

_images/tutorial_2_1_04.jpg

Selección de bandas a descargar

Para iniciar la descarga de imágenes, pulsar el botón run y seleccionar la carpeta donde se guardarán las bandas (e.g. Escritorio). La descarga debería demorar unos pocos minutos dependiendo de la velocidad de conexión a Internet (el tamaño de cada banda está entre 30 y 90MB). El progreso de descarga se muestra en una barra.

Después de descargadas, todas las bandas y los archivos de metadatos se guardan en la carpeta seleccionada.

_images/tutorial_2_1_05.jpg

Descargar bandas Sentinel

4.2.1.2. Conversión Automática a Reflectancia de Superficie

La conversión a reflectancia (ver Radiancia y Reflectancia) puede ser ejecutada automáticamente. El archivo de metadatos (un archivo .xml cuyo nombre contiene MTD_SAFL1C) descargado con la imagen, contiene la información requerida para la conversión. Leer Conversión de la imagen a Reflectancia para información sobre Reflectancia en el Techo de la Atmósfera (TOA) y Reflectancia de la Superficie.

Para convertir las bandas a reflectancia, abre la pestaña Preprocesamiento pulsando el botón preprocessing en el SCP menú, or en la SCP Herramientas, o en SCP panel, y selecciona la pestaña Sentinel-2.

Pulsa el botón Carpeta con las bandas Sentinel-2 open_file y selecciona la carpeta con el nombre S2A_OPER_MSI_L1C_TL_SGS__20160506T153005_A004552_T32TQM. La lsita de bandas se carga automáticamente en la tabla Metadatos. Además se cargan automáticamente los metadatos de cada banda, ya que el archivo de metadatos se encuentra en la misma carpeta).

CONSEJO : Si una imagen Sentinel-2fue descargada directamente del sitio https://scihub.copernicus.eu y quieres convertir esta imagen a reflectancia usando SCP, debes copiar el archivo .xml cuyo nombre contiene MTD_SAFL1C (incluido en la carpeta granule) y pegarlo dentro de la carpeta de las bandas (files .jp2).

Para calcular Reflectancia de la Superficie vamos a aplicar la Corrección DOS1; por lo tanto, activar la opción Aplicar corrección atmosférica DOS1.

CONSEJO: Se recomienda ejecutar la corrección atmosférica DOS1 a toda la imagen (antes re recortarla) para mejorar el cálculo de los parámetros basados en la imagen.

Deseleccionar la opción checkbox Crear cojunto de bandas y usar herramientas de conjunto de bandas ya que definiremos esto en el siguiente paso Crear Conjunto de Bandas. Para iniciar el proceso, pulsar el botón run y seleccionar la carpeta donde se guardarán las bandas convertidas a reflectancia (ej. Escritorio).

_images/tutorial_2_1_1.jpg

Conversión a Reflectancia de Sentinel-2

Después de algunos minutos, las bandas convertidas se cargan y muestran en QGIS (los nombres comienzan con RT:_). Si checkbox Sonido al terminar está seleccionado en Procesos para la Clasificación, se escuchará un sonido al terminar el procesamiento.

_images/tutorial_2_1_2.jpg

Bandas Sentinel-2 convertidas

4.2.1.3. Recortar los Datos

Las imágenes Sentinel-2 tienen una gran extensión. Para reducir el tiempo de cómputo, vamos a recortar estas bandas a la misma área de estudio de Tutorial 1: Tu Primera Clasificación de la Cobertura del Suelo. Abrir la pestaña Preprocesamiento seleccionar Recortar múltiples rásters.

Pulsar el botón reload para refrescar la lista de capas y seleccionar todas las capas cuyos nombres comienzan con RT_ (el número de banda está al final del nombre de la capa).

Pulsar el botón pointer y seleccionar un área como la de la siguiente imagen, o ingresar los siguientes valores:

  • UL X: 791810
  • UL Y: 4643020
  • LR X: 809750
  • LR Y: 4626230
_images/tutorial_2_1_3.jpg

Recortar área

Presionar run y seleccionar una carpeta (ej. clip) donde se guardarán las capas recortadas (con el prefijo de nombre definido en prefijo de nombre del resultado). Cuando el proceso termine, los rásters recortados se cargan y musetran en QGIS. Ahora puedes eliminar de QGIS las bandas cuyos nombres comienzan con RT_.

_images/tutorial_2_1_4.jpg

Bandas recortadas

4.2.1.4. Crear Conjunto de Bandas

Ahora vamos a definir el conjunto de bandas el cual es la imagen de entrada de SCP. Abre la pestaña Conjunto de bandas pulsando el botón bandset_tool en el SCP menú, o en la SCP Herramientas, o en el SCP panel.

Pulsa el botón reload para refrescar la lista de capas y selecciona todas las bandas recortadas; luego pulsa plus para añadir los rásters seleccionados al conjunto de bandas. En la tabla definición del juego de bandas ordena las capas de forma ascendente (pulsa en order_by_name para ordenar las capas automáticamente), Luego selecciona la banda``8A`` (i.e. haciendo clic en el nombre de la capa en la tabla) y usa los botones move_up o move_down para poner esta capa en el número 8. Finalmente, selecciona Sentinel-2 de la lista Ajustes rápidos de longitud de onda, para definir automáticamente la Longitud de onda central de cada banda y la Unidad de longitud de onda (requerida para el cálculo de la firma espectral).

_images/tutorial_2_1_5.jpg

Definición de un conjunto de bandas

Puedes notar que el item << band set >> está seleccionado como Imagen de entrada en el SCP panel.

_images/tutorial_2_1_6.jpg

Conjunto de bandas

4.2.1.5. Crear los ROIs

Para recolectar las ROIs necesitamos Crear archivo de entrenamiento como se describe en ref:tutorial_1. (En el SCP panel pulsa el botón new_file y define un nombre de archivo). La Training input guarda las ROIs y la correspondiente Firma Espectral.

_images/tutorial_2_2_1.jpg

Definición de la Entrada de Entrenamiento en SCP

Vamos a crear varias ROIs usando las Macroclases IDs definidas en la siguiente tabla (ver Clases y Macroclases).

Macroclases

Nombre de la Macroclase

Macroclase ID

Agua

1

Construcciones

2

Vegetación

3

Suelo desnudo

4

En esta fase estamos creando la base de datos de firmas espectrales usadas para identificar las clases de coberturas del suelo (definidas como macroclases). Sin embargo, estas macroclases están compuestas de varios materiales con diferentes firmas espectrales. Para lograr buenos resultados de clasificación, debemos separar las firmas espectrales de diferentes materiales, incluso si estos pertenecen a la misma macroclase. Por lo tanto, vamos a crear varios ROIs para cada macroclase (definiendo el mismo guilabel:MC ID, pero asignando un C ID diferente para cada ROI).

En la lista RGB= de Barra de Trabajo seleccionar 3-2-1 para mostrar una imagen en color natural (ver ref:color_composite_definition y Satélite Sentinel-2). Después de unos segundos, se mostrará la Composición de Color. Podemos ver que las áreas urbanas aparecen blancas y la vegetación verde.

CONSEJO: Si se define un Conjunto de bandas, se crea automáticamente un ráster virtual temporal (llamado band_set.vrt), el cual permite visualizar la Composición de Color. Para agilizar la visualización, puedes dejar visible solo el ráster virtual y esconder todas las otras capas en QGIS.

_images/tutorial_2_2_2.jpg

Composición de color RGB = 3-2-1

Ahora en la lista RGB= de la Barra de Trabajo escribe 3-7-10 (también puedes usar la herramienta Lista RGB). Usando esta composición de color, las áreas urbanas aparecen en violeta y la vegetación en verde. Puesdes notar que esta composición de color RGB = 3-7-10 resalta las vias más que la de color natural (RGB = 3-2-1). También puedes ver que hay nubes en la parte derecha de la imagen.

_images/tutorial_2_2_3.jpg

Composición de color RGB = 3-7-10

Ahora, crea las ROIs siguiendo los mismos pasos descritos en ref:tutorial_1_3 de Tutorial 1: Tu Primera Clasificación de la Cobertura del Suelo. Luego de hacer clic en el botón roi_single en el Barra de Trabajo, notarás que el cursor en el mapa muestra un valor que cambia sobre la imagen. Este valor es el NDVI del píxel donde se encuentra el curso (El NDVI se musetra, porque la función checkbox Mostrar está seleccionada en ROI creación de). El NDVI puede ser útil para identificar píxeles espectralmente puros, de hecho, los valores de NDVI son más altos para la vegetación que para el suelo desnudo.

Por ejemplo, mueve el ratón sobre un área de vegetación y haz clic para crear una ROI cuando veas un valor máximo local. De esta manera, la ROI creada y su firma espectral será por lo tanto representativa de vegetación saludable.

_images/tutorial_2_2_6.jpg

Valor de NDVI de un píxel mostrado en el mapa

La composición de color RGB = 7-3-2 es también útil para resaltar la vegetación.

Crear varias ROIs (mientras más, mejor). El algoritmo de región incremental puede crear ROIs más homogeneas (i.e. la desviación estándar de la firma espectral es baja) que aquellas dibujadas a mano; la creación manual de ROIs puede ser útil para tomar en cuenta la variabilidad espectral de clases (especialmente cuando se usa el algoritmo Máxima Probabilidad).

En general, deberías crear una ROI por cada color que se puede distinguir en la imagen. Por lo tanto, cambia los colores de la composición de color para identificar los diferentes tipos de cobertura del suelo.

CONSEJO : Cambiar frecuentemente la Composición de Color para identificar claramente los materiales en la superficie; usa la rueda del ratón en la lista RGB= de la Barra de Trabajo para cambiar la composición de color rápidamente. También usa los botones cumulative_stretch y std_dev_stretch para mejorar la visualización de la Input image (i.e. estiramiento del histograma).

Algunos ejemplos de ROIs se muestran en las siguientes figuras.

_images/tutorial_2_2_7.jpg

ROI Agua: lago

_images/tutorial_2_2_8.jpg

ROI Construído: edificaciones grandes

_images/tutorial_2_2_9.jpg

ROI Construido: Carretera

_images/tutorial_2_2_10.jpg

ROI Construido: edificaciones y vías pequeñas

_images/tutorial_2_2_11.jpg

ROI Vegetación: bosque caducifolio

_images/tutorial_2_2_12.jpg

ROI Vegetación: cultivos

_images/tutorial_2_2_13.jpg

ROI Suelo Desnudo: Suelo no cultivado

Es importante mencionar que puedes mostrar u ocultar las ROIs temporalies pulsando el botón radiobutton ROI en Barra de Trabajo.

TIP : Instala el plugin QuickMapServices in QGIS, y añade un mapa (e.g. OpenStreetMap) para facilitar la identificación de ROIs usando datos de alta resolución.

También podemos intentar enmascarar las nubes en la imagen, creando ROIs de nubes y asignando MC ID = 0 (el cual es un ID especial usado para etiquetar píxeles no clasificados intencionalmente) y un diferente C ID. De hecho, las formas espectrales para el MC ID = 0 son usadas normalmente en la clasificación, pero cada píxel asignado a estas firmas espectrales es etiquetado como ``no clasificado``en los resultados de la clasificación. Por lo tanto, esta es una forma simple enmascarar una forma espectral particular tal como las nubes (por supuesto hay métodos más avanzados de enmascaramiento de nubes que serán discutidos en otros tutoriales).

_images/tutorial_2_2_14.jpg

Ejemplo de ROI para nubes

4.2.1.6. Crear Vista Previa de la Clasificación

Como se mencionó en Tutorial 1: Tu Primera Clasificación de la Cobertura del Suelo, las vistas previas son clasificaciones temporales útiles para evaluar los efectos de las firmas espectrales durante la recolección de ROIs.

Define los colores de las firmas espectrales en la ROI Signature list; luego, en Classification algorithm selecciona el algoritmo de clasificación Máxima Probabilidad. En Clasificación preliminar define Size = 500; selecciona el botón preview y haz clic en un punto de la imagen en el mapa.

La vista previa de la clasificación se muestra en el mapa

_images/tutorial_2_3_1.jpg

Ejemplo de vista previa usando C IDs

Para crear una vista previa de clasificación usando Macroclase ID, selecciona la opción checkbox MC ID en la pestaña Classification algorithm del SCP panel. En la pestaña Macroclasses del SCP panel cambia los colores de MC ID (en la tabla Macroclasses haz doble clic en cada macroclase para seleccionar un color representativo).

_images/tutorial_2_3_2.jpg

Colores de MC IDs

Ahora pulsa el botón preview_redo en la Barra de Trabajo para calcular una nueva vista previa en la misma área que la anterior. En la siguiente figura puedes notar que hay menos clases (solo las de MC ID); además, las nubes quedan sin clasificar (píxeles negros).

CONSEJO: En Barra de Trabajo pulsa el botón radiobutton Vista Previa para mostrar u ocultar fácilmente las vistas previas de la clasificación, y el botón radiobutton RGB= para mostrar la Input image.

_images/tutorial_2_3_3.jpg

Ejemplo de vista previa usando MC IDs

4.2.1.7. Evaluar Firmas Espectrales

Las firmas espectrales son usadas por Algoritmos de clasificación para etiquetar los píxeles de la imagen. Diferentes materiales pueden tener firmas espectrales similares (especialmente considerando imágenes multiespectrales), tales como construcción y suelo desnudo. Si las firmas espectrales usadas para la clasificación son demasiado similares, los píxeles podrían ser clasificados erróneamente debido a que el algoritmo no puede discriminar correctamente esas firmas. Por lo tanto, es útil evaluar la ref:spectral_distance_definition para encontrar firmas similares que deban ser eliminadas. Por supuesto, el concepto de distancia varía de acuerdo al algoritmo seleccionado para la clasificación.

Uno puede evaluar de forma simple la similaridad de firmas espectrales a través de un gráfico de firmas. Para mostrar el gráfico de firmas, en el ROI Signature list selecciona dos o más firmas espectrales (haciendo clic en la tabla), luego pulsa el botón sign_plot. El Gráfico de Firmas Espectrales se abrirá en una nueva ventana. Puedes mover y acercar el ref:signature_plot para ver si las firmas son muy similares (i.e. muy cercanas). En la siguiente figura podemos ver gráficos de firmas de diferentes materiales.

_images/tutorial_2_4_1.jpg

Gráfico de firmas espectrales

En el gráfico podemos ver la línea de cada firma (con el color definido en la ROI Signature list), y el rango espectral (mínimo y máximo) de cada banda (i.e. el área semi-transparente con el mismo color de la línea de firma). Mientras más grande es el área semi-transparente de una firma, más alta es la desviación estándar, y por lo tanto más grande la heterogeneidad de píxeles que componen esa firma. Los valores de la firma espectral se muestran en Detalles de firmas.

_images/tutorial_2_4_2.jpg

Valores de firma espectral

Adicionalmente, podemos calcular las distancias espectrales de las firmas (para más información ver ref:spectral_distance_definition). Selecciona dos o más firmas espectrales haciendo clic en la tabla Lista de Firmas, luego pulsa el botón calculate_spectral_distances; las distancias serán calculadas para cada par de firmas. Ahora abre la pestaña Distancias espectrales. Podemos notar que la similaridad entre firmas varía de acuerdo al algoritmo considerado.

_images/tutorial_2_4_3.jpg

Distancias espectrales

Por ejemplo, dos firmas puedes ser muy similares para:ref:spectra_angle_mapping_algorithm (muy bajo Angulo Espectral), pero bastante distantes para Máxima Probabilidad (Jeffries-Matusita Distance valor cercano a 2). La similaridad de las firmas es afectada por la similaridad de los materiales (en relación al número de bandas espectrales disponibles en la Imagen de Entrada); también, la forma en la que creamos las ROIs influencia las firmas.

4.2.1.8. Creación del resultado de la clasificación

Repetir iterativamente las fases Crear los ROIs, Crear Vista Previa de la Clasificación, y Evaluar Firmas Espectrales hasta que la vista previa de la clasificación muestre buenos resultados.

Para realizar la clasificación de la imagen entera, abre la pestaña Classification output, pulsa el biotón run y define el nombre para el resultado de la clasificación.

CONSEJO: Define el RAM disponible (MB) en los ajustes RAM para reducir el tiempo de cómputo. El valor recomendado es la mitad del RAM del sistema.

If checkbox Play sound when finished is checked in Procesos para la Clasificación settings, a sound is played when the process is finished.

_images/tutorial_2_5_1.jpg

Clasificación

Es importante mencionar que SCP provee otras herramientas y técnicas que pueden mejorar los resultados de la clasificación, los cuales se describen en Tutoriales Temáticos.