Disponible con licencia de Image Analyst.
Los siguientes conceptos y métodos son clave para comprender y realizar la clasificación de píxeles en ArcGIS Pro.
Segmentación semántica
La segmentación semántica, también conocida como clasificación basada en píxeles, es una tarea importante en la que la clasificación de cada píxel pertenece a una clase en particular. En SIG, puede usar la segmentación en la clasificación de la cobertura del suelo o en la extracción de carreteras o edificios de imágenes de satélite.
El objetivo de la segmentación semántica es el mismo que la clasificación de imágenes tradicional en la teledetección. Suele realizarse aplicando técnicas tradicionales de aprendizaje automático, como bosque aleatorio o clasificador de máxima verosimilitud. Al igual que la clasificación de imágenes, existen también dos entradas para la segmentación semántica:
- Imagen ráster que contiene múltiples bandas
- Imagen de etiqueta que contiene la etiqueta para cada píxel
Entrenamiento con datos dispersos
No todos los píxeles de una imagen se utilizan en la clasificación de las muestras de entrenamiento. Esto se conoce como muestras de entrenamiento dispersas. A continuación se muestra un diagrama de la imagen y las muestras de entrenamiento dispersas que se seleccionan. En este caso de muestras de entrenamiento dispersas mostrado a continuación, debe establecer el parámetro Ignorar clase en 0. Así se ignorarán los píxeles que no se han clasificado para el entrenamiento.
U-Net
La arquitectura U-Net se puede considerar como una red de codificador seguida de una red de decodificador. La segmentación semántica clasifica las entidades de píxeles y esta clasificación de nivel de píxel se obtiene en diferentes fases del codificador.
El codificador es la primera mitad del proceso U-Net. Normalmente, el codificador es una red de clasificación previamente entrenada, como VGG o ResNet, en la que se aplican bloques de convolución seguidos por submuestreo de maxpool para codificar la imagen de entrada en representaciones de entidades en varios niveles1. El decodificador es la segunda mitad del proceso. El objetivo es proyectar semánticamente las entidades discriminatorias (resolución más baja) obtenidas por el codificador en el espacio de píxeles (resolución más alta) para obtener una clasificación densa. El decodificador consiste en un submuestreo y una concatenación seguidas de operaciones de convolución regular1
Referencias
[1] Olaf Ronneberger, Philipp Fischer, Thomas Brox. U-Net: Convolutional Networks for Biomedical Image Segmentation, https://arxiv.org/abs/1505.04597, (2015).
PSPNet
El modelo de red de análisis de escenas piramidales (PSPNet) consta de un codificador y un decodificador. El codificador es responsable de la extracción de entidades de la imagen. El decodificador predice la clase del píxel al final del proceso.
Deep Lab
Las redes neuronales totalmente convolucionales (FCN) se utilizan a menudo para la segmentación semántica. Un reto al utilizar FCN en imágenes para tareas de segmentación es que los mapas de entidades de entrada se vuelven más pequeños al atravesar las capas convolucionales y de agrupación de la red. Esto provoca la pérdida de información sobre las imágenes y da como resultado una salida en la que las predicciones son de baja resolución y los límites de los objetos son difusos.
El modelo DeepLab aborda este desafío utilizando los módulos de convoluciones de Atrous y de agrupación espacial piramidal de Atrous (ASPP). La primera versión de DeepLab (DeepLabV1) utiliza la convolución de Atrous y el campo aleatorio condicional totalmente conectado (CRF) para controlar la resolución con la que se calculan las entidades de imagen.
ArcGIS Pro utiliza DeepLabV3. DeepLabV3 también utiliza la convolución Atrous, además de un módulo ASPP mejorado al incluir la normalización por lotes y las entidades a nivel de imagen. Ya no utiliza el CRF obsoleto (campo aleatorio condicional), como en las versiones V1 y V2.
El modelo DeepLabV3 tiene la siguiente arquitectura:
- Las entidades se extraen de la red de base, como VGG, DenseNet y ResNet.
- Para controlar el tamaño del mapa de entidades, se utiliza la convolución de Atrous en los últimos bloques de la base.
- Encima de las entidades extraídas de la base, se agrega una red ASPP para clasificar cada píxel correspondiente a sus clases.
- La salida de la red ASPP pasa a través de una convolución de 1 a 1 para obtener el tamaño real de la imagen, que será la máscara segmentada final de la imagen.