Configurar el proyecto y explorar los datos

Para empezar, descargará un proyecto que contiene todos los datos de este tutorial y lo abrirá en ArcGIS Pro.

  1. Descargue el paquete Palm_Tree_Detection.

    Se descarga en su equipo un archivo denominado Palm_Tree_Detection.ppkx.

    Nota:

    Un archivo .ppkx es un paquete de proyecto de ArcGIS Pro y puede contener mapas, datos y otros archivos que puede abrir en ArcGIS Pro. Más información sobre cómo administrar archivos .ppkx en Guía de paquetes de proyectos de ArcGIS Pro (archivos .ppkx).

  2. Busque el archivo descargado en su equipo. Haga doble clic en Palm_Tree_Detection.ppkx para abrirlo en ArcGIS Pro. Si se le pide, inicie sesión con su cuenta de ArcGIS.
    Nota:

    Si no tiene acceso a ArcGIS Pro o una cuenta de organización de ArcGIS, consulte las opciones de acceso a software.

    Aparece un mapa centrado en el municipio de Kolovai, en la isla tongana de Tongatapu. Sobre el mapa base topográfico se despliega una capa de imágenes.

    Vista inicial del proyecto

  3. Acerque y desplace para examinar las imágenes.

    Observe la gran cantidad de palmeras repartidas por todo el paisaje.

Las imágenes fueron captadas por un dron y ortorrectificadas para eliminar cualquier distorsión. Es de alta resolución (cada píxel representa unos 9 por 9 centímetros sobre el terreno) y muestra las palmeras y otras entidades con bastante claridad. Está en formato TIFF con tres bandas: roja, verde y azul, que juntas forman una imagen de color natural.

Identificar manualmente todas las palmeras de esta imagen llevaría mucho tiempo. En su lugar, utilizará el aprendizaje profundo para detectarlas automáticamente.

Detectar palmeras mediante un modelo de aprendizaje profundo preentrenado

Desea utilizar el aprendizaje profundo para detectar palmeras a partir de las imágenes. Si aún no dispone de un modelo de aprendizaje profundo, primero es necesario entrenar un modelo desde cero, alimentándolo con un gran número de ejemplos para mostrar al modelo lo que es una palmera. Los modelos de alto rendimiento pueden requerir someterse a decenas de miles de ejemplos. Una alternativa es utilizar un modelo que ya estaba entrenado por usted. Recuperará dicho modelo y lo aplicará a sus imágenes.

Nota:

Para utilizar las herramientas de aprendizaje profundo en ArcGIS Pro es necesario tener instaladas en el equipo las bibliotecas de aprendizaje profundo correctas. Si no tiene instalados estos archivos, guarde el proyecto, cierre ArcGIS Pro y siga los pasos descritos en las instrucciones Prepararse para el aprendizaje profundo en ArcGIS Pro. En estas instrucciones, también aprenderá cómo comprobar si el hardware y el software de su ordenador son capaces de ejecutar flujos de trabajo de aprendizaje profundo y otros consejos útiles. Una vez hecho, puede volver a abrir el proyecto y continuar con el tutorial.

En primer lugar, abrirá la herramienta Detectar objetos con aprendizaje profundo.

  1. En la cinta, en la pestaña Vista, en el grupo Ventanas, haga clic en Geoprocesamiento.

    Herramienta de geoprocesamiento

  2. En el panel Geoprocesamiento, en el cuadro de búsqueda, escriba Detectar objetos con aprendizaje profundo. En la lista de resultados, haga clic en la herramienta Detectar objetos con aprendizaje profundo para abrirla.

    Herramienta Detectar objetos con aprendizaje profundo

  3. Defina los siguientes valores del parámetro Detectar objetos con aprendizaje profundo:
    • En Ráster de entrada, elija Kolovai_imagery.tif.
    • En Objetos de salida detectados, escriba Detected_Palm_Trees.
    • En Definición de modelo, haga clic en el botón Examinar.

    Valores del parámetro Detectar objetos con aprendizaje profundo

    Ahora recuperará el modelo preentrenado de Extracción de palmeras de ArcGIS Living Atlas of the World.

    Nota:

    ArcGIS Living Atlas of the World es la colección acreditada de Esride datos de SIG. Incluye una biblioteca en aumento de más de 50 modelos de aprendizaje profundo preentrenados para detectar diversos objetos, desde edificios hasta barcos o límites de campos agrícolas.

  4. En la ventana Definición de modelos, en Portal, haga clic en Living Atlas. En el cuadro de búsqueda, escriba Detección de palmeras. Seleccione Detección de palmeras y haga clic en Aceptar.

    Modelo Detección de palmeras seleccionado

    Nota:

    Obtendrá más información sobre el modelo Detección de palmeras si lo recupera en el sitio de ArcGIS Living Atlas. Aprenderá que el modelo está pensado para detectar palmeras en imágenes de alta resolución (de 5 a 15 centímetros), como las de los drones. Se espera que las imágenes tengan tres bandas: roja, verde y azul (RGB). Este modelo se adapta bien a sus imágenes.

    Una vez que selecciona el modelo de aprendizaje profundo, los argumentos del modelo se cargan automáticamente.

  5. En Argumentos, mantenga todos los valores predeterminados.

    Argumentos de modelo

    Hay dos argumentos de especial interés:

    • Threshold: un umbral de 0,5 significa que un objeto detectado solo se agregará al dataset de salida si el modelo tiene al menos un 50 por ciento de confianza en que el objeto es efectivamente una palmera. El valor de umbral óptimo puede encontrarse mediante el método de prueba y error.
    • Batch_size: la detección de objetos mediante aprendizaje profundo no puede realizarse en toda la imagen de una sola vez. En su lugar, la herramienta cortará la imagen en partes más pequeñas denominadas chips. Un tamaño de lote de 4 significa que la herramienta procesará cuatro chips de imagen a la vez. Al ejecutar la herramienta, es posible que aparezca un error de memoria insuficiente porque su equipo no tiene memoria suficiente para ese nivel de procesamiento. En tal caso, pruebe a disminuir el valor de Batch_size de 4 a 2 o incluso a 1. Disminuir este valor no afectará a la calidad del modelo, solo a la eficiencia de su proceso de detección.

    Por ahora, mantendrá los valores predeterminados para estos dos argumentos.

    A veces, el modelo detecta un objeto más de una vez. La supresión no máxima (NMS) es un proceso opcional que suprime algunos de los objetos detectados cuando hay duplicación. El objeto detectado con mayor confianza se mantiene, los demás objetos se eliminan. En la siguiente imagen de ejemplo, la palmera se detectó dos veces. Con la NMS, solo se conservará un objeto detectado.

    Una palmera detectada dos veces

  6. Marque la casilla junto a Supresión no máxima.
  7. En Máx. ratio de superposición, escriba 0,5.

    Opciones de Supresión no máxima

    • El parámetro Máx. ratio de superposición determina cuánta superposición debe haber entre dos objetos detectados para que se consideren duplicados y se pueda aplicar la NMS. Un valor de 0,5 significa que la superposición debe ser del 50 por ciento o más. En la siguiente imagen de ejemplo, la superposición entre los dos objetos detectados es inferior al 50 por ciento, por lo que no representan el mismo objeto y no se aplicará la NMS.

      Superposición entre los dos objetos detectados

  8. Haga clic en la pestaña Entornos.
    • Pestaña Entornos
  9. En Tipo de procesador, elija GPU.
    • Tipo de procesador establecido como GPU
      Nota:

      Este tutorial presupone que su equipo dispone de la funcionalidad de GPU recomendada. Si no tiene una GPU, aún puede realizar el proceso con su CPU, aunque los datos tardarán más tiempo en procesarse. En ese caso, elija la opción CPU.

      En este momento, podría ejecutar la herramienta tal cual: procedería a detectar las palmeras en toda la imagen Kolovai_imagery.tif, lo que podría llevar entre 20 minutos y 1 hora en función de las especificaciones de su equipo. Debido a la brevedad de este tutorial, solo detectará palmeras en un pequeño subconjunto de la imagen de entrada.

  10. En la cinta, en la pestaña Mapa, en el grupo Navegar, haga clic en Marcadores y elija Área de detección.

    Marcador Área de detección

    El mapa se acerca a un área más pequeña de Kolovai.

    Menor extensión en el mapa

  11. En el panel Geoprocesamiento, en la pestaña Entornos, en Extensión de procesamiento, haga clic en el botón Extensión de visualización actual.

    Botón Extensión de visualización actual

    Las coordenadas Superior, Izquierda, Derecha e Inferior se actualizan para coincidir con la extensión actual que aparece en el mapa.

  12. Acepte el resto de valores predeterminados, y haga clic en Ejecutar.

    Puede monitorizar el avance del proceso debajo del botón Ejecutar y hacer clic en Ver detalles para ver más información.

    Vínculo Ver detalles

    Al cabo de unos minutos, la capa resultante, Detected_Palm_Trees, aparece en el panel Contenido y en el mapa. Se trata de una capa de entidades en la que cada polígono representa una palmera.

    Sugerencia:

    Si obtiene un error de memoria insuficiente, pruebe a disminuir el valor de batch_size de 4 a 2 o incluso a 1 y vuelva a ejecutar el ciclo.

    Ha detectado correctamente palmeras en un área de Kolovai utilizando un modelo preentrenado de aprendizaje profundo.

    Palmeras detectadas en el mapa

    Nota:

    El color se asigna de forma aleatoria y puede variar.

Aplicar estilo a la capa de resultados y examinarla

Cambiará el estilo de la capa Detected_Palm_Trees y la revisará.

  1. En el panel Contenido, haga clic en el símbolo Detected_Palm_Trees para mostrar el panel Simbología.

    Símbolo Detected_Palm_Trees

  2. En el panel Simbología, haga clic en la pestaña Propiedades, si es necesario.

    Pestaña Propiedades del panel Simbología

  3. En Apariencia, defina los siguientes parámetros:
    • En Color, elija Sin color.
    • En Color del contorno, elija un amarillo intenso, por ejemplo, Amarillo solar.
    • En Ancho del contorno, seleccione 2 pt.

    Parámetros del panel Simbología

  4. Haga clic en Aplicar.

    La capa se actualiza a la nueva simbología.

    • Capa con nueva simbología
  5. En el mapa, acerque el zoom e inspeccione la capa Detected_Palm_Trees.

    Objetos detectados (ampliados)

    Puede observar que el modelo detectó correctamente la mayoría de palmeras y que hay muy pocos casos de falsos positivos, en los que el modelo encontró por error una palmera donde no la hay.

  6. Opcionalmente, ejecute de nuevo la herramienta Detectar objetos con aprendizaje profundo en otra extensión de su elección o en toda la imagen. Para ello, amplíe y desplácese hasta la nueva extensión del mapa y haga clic en Extensión de visualización actual en la pestaña Entornos. Luego, haga clic en Ejecutar.
    Nota:

    Ejecutar la herramienta en toda la imagen le llevará 40 minutos o más, en función de las especificaciones de su equipo.

    Otra alternativa es incluir en su proyecto un mapa que muestre la capa de resultados en toda su extensión. Para verlo, vaya al panel Catálogo, expanda Mapas, haga clic con el botón derecho en Map_results y elija Abrir.

    Se detectaron más de 12.500 palmeras en toda la imagen.

  7. Opcionalmente, experimente cambiando algunos de los argumentos y parámetros, como el Threshold y Máx. ratio de superposición.
  8. En la barra de herramientas de acceso rápido, haga clic en el botón Guardar para guardar el proyecto.

    Botón Guardar

Aplicar un modelo preentrenado a sus imágenes

Para aplicar un modelo de aprendizaje profundo preentrenado a sus propios datos, primero pruebe a utilizar el flujo de trabajo que ha aprendido en este tutorial. Es el planteamiento más sencillo y puede obtener inmediatamente resultados de gran calidad.

Sin embargo, es posible que sus primeros resultados no le satisfagan plenamente. En tal caso, hay varias técnicas que pueden aplicarse a continuación. Lo más importante es que puede hacer lo siguiente:

  • Modifique sus imágenes para asegurarse de que se adaptan mejor a las expectativas del modelo preentrenado (por ejemplo, si el modelo se entrenó con imágenes rojo-verde-azul, sus imágenes solo deberían tener presentes las bandas roja, verde y azul, a diferencia de las bandas infrarrojas u otras bandas espectrales).
  • Entrene aún más el modelo de aprendizaje profundo dándole algunos ejemplos de sus propios datos.

Puede saber más sobre estos potentes planteamientos en el tutorial Mejorar un modelo de aprendizaje profundo con aprendizaje por transferencia.

En este tutorial, ha utilizado el aprendizaje profundo con un modelo preentrenado de ArcGIS Living Atlas para detectar palmeras en una imagen. La capa de entidades resultante puede utilizarse para estimar el número de palmeras en toda la región, supervisar las prácticas agrícolas y evaluar la próxima producción.

Encontrará más tutoriales en la galería de tutoriales.