Extraer entidades con modelos de IA (GeoAI)

Disponible con licencia de Image Analyst.

Resumen

Ejecuta uno o más modelos de aprendizaje profundo preentrenados en un ráster de entrada para extraer entidades y automatizar el procesamiento posterior de las salidas inferenciadas.

Más información sobre cómo funciona Extraer entidades con modelos de IA

Uso

  • Esta herramienta requiere modelos preentrenados de ArcGIS de ArcGIS Living Atlas of the World o paquetes de modelos de aprendizaje profundo personalizados (archivo .dlpk).

  • Debe instalar el marco de aprendizaje profundo adecuado para Python en ArcGIS AllSource.

    Más información sobre cómo instalar un marco de aprendizaje profundo para ArcGIS

  • El tiempo que tarda la herramienta en producir los resultados depende de lo siguiente:

    • El área de interés utilizada para la inferencia
    • El número de modelos seleccionados

  • Para ejecutar esta herramienta se requiere un equipo compuesto por GPU. Si tiene más de una GPU, especifique el entorno de Id. de GPU.

  • Los casos de uso potenciales para la herramienta incluyen la creación de un mapa base utilizando varios modelos y salidas de modelo de procesamiento posterior que utilizan algoritmos para limpiar las entidades extraídas.

  • Para obtener información sobre los requisitos para ejecutar esta herramienta y los problemas que pueden presentarse, consulte Preguntas frecuentes sobre el aprendizaje profundo.

Parámetros

EtiquetaExplicaciónTipo de datos
Ráster de entrada

El ráster de entrada en el que se realizará el procesamiento.

Si el parámetro Modo se especifica como Solo posprocesar, se necesita un ráster con clasificación binaria para este parámetro.

Raster Layer; Raster Dataset; Mosaic Layer
Modo

Especifica el modo que se utilizará para el procesamiento del ráster de entrada.

  • Inferir y posprocesarLas entidades se extraerán de las imágenes y se posprocesarán. Esta es la opción predeterminada.
  • Solo posprocesarEl ráster de entrada se posprocesará directamente. Se necesita un ráster de banda única con clasificación binaria para esta opción.
String
Localización de salida

La geodatabase de archivos donde se almacenará la salida intermedia de los modelos y la salida posterior final.

Workspace
Prefijo de salida

Un prefijo que se agregará al nombre de las salidas que se guardarán en la ubicación de salida. El prefijo también se utilizará como el nombre de una capa de grupo que se utilizará para mostrar todas las salidas.

String
Área de interés
(Opcional)

La extensión geográfica que se utilizará para extraer entidades. Solo se extraerán las entidades dentro del área de interés.

Feature Set
Modelos preentrenados
(Opcional)

Los modelos predefinidos de ArcGIS de ArcGIS Living Atlas of the World que se pueden utilizar en el ráster de entrada proporcionado. Este parámetro requiere una conexión a Internet para descargar los modelos predefinidos.

String
Modelos adicionales
(Opcional)

Los modelos de aprendizaje profundo que se pueden utilizar en el ráster de entrada proporcionado y el flujo de trabajo de procesamiento posterior que se utilizarán para archivos de modelo adicionales (.dlpk y .emd). Los flujos de trabajo de posprocesamiento disponibles son los siguientes:

  • Regularización de línea: el flujo de trabajo de procesamiento posterior extraerá entidades de línea de un ráster de banda única con clasificación binaria y generará una clase de entidad de polilínea después de perfeccionarla. Este flujo de trabajo también admite modelos de aprendizaje profundo que generan clases de entidades de polilínea.
  • Regularización de parcela: el flujo de trabajo de procesamiento posterior extraerá parcelas de un ráster de banda única con clasificación binaria y generará una clase de entidad poligonal después de perfeccionarla.
  • Regularización de polígono: el flujo de trabajo de procesamiento posterior generará una clase de entidad poligonal después de perfeccionarla. Este flujo de trabajo solo es compatible con modelos de detección de objetos.
  • Segmentación de polígonos: el flujo de trabajo de posprocesamiento generará una clase de entidad de polígono que contiene los objetos detectados utilizando su centroide o cuadro de delimitación. El método de segmentación se especifica mediante el parámetro Prompt.
  • Ninguno: no se aplicará ningún flujo de trabajo de procesamiento posterior. Esta es la opción predeterminada.

Value Table
Umbral de confianza
(Opcional)

La confianza mínima del modelo de aprendizaje profundo que se utilizará para detectar objetos. El valor debe estar comprendido entre 0 y 1.

Double
Guardar salida intermedia
(Opcional)

Especifica si las salidas intermedias se guardarán en la ubicación de salida. El término salidas intermedias hace referencia a los resultados generados después de inferenciar el modelo.

  • Activado: las salidas intermedias se guardarán en la ubicación de salida.
  • Desactivado: las salidas intermedias no se guardarán. Esta es la opción predeterminada.
Boolean
Aumento de tiempo de prueba
(Opcional)

Especifica si las predicciones de variantes rotadas y volteadas de la imagen de entrada se fusionarán en la salida final.

  • Activado: las predicciones de variantes rotadas y volteadas de la imagen de entrada se fusionarán en la salida final.
  • Desactivado: las predicciones de variantes rotadas y volteadas de la imagen de entrada no se fusionarán en la salida final. Esta es la opción predeterminada.

Boolean
Distancia de zona de influencia
(Opcional)

La distancia que se utilizará para crear zonas de influencia de entidades de polilínea antes de utilizarlas en el procesamiento posterior. El valor predeterminado es 15 metros.

Linear Unit
Ampliar longitud
(Opcional)

La distancia máxima que se extenderá un segmento de línea hasta una entidad intersecante. El valor predeterminado es 25 metros.

Linear Unit
Tolerancia del suavizado
(Opcional)

La tolerancia utilizada por el algoritmo de aproximación polinomial con núcleo exponencial (PAEK). El valor predeterminado es 30 metros.

Linear Unit
Longitud de nodo colgado
(Opcional)

La longitud a la que se recortarán los segmentos de línea que no tocan otra línea en ambos extremos (nodos colgados). El valor predeterminado es 5 metros.

Linear Unit
Entidades de carretera de entrada
(Opcional)

Una clase de entidad de carretera que se utilizará para refinar las parcelas. La entrada puede ser una clase de entidad poligonal o de polilínea.

Feature Layer; Feature Class
Ancho de zona de influencia de carretera
(Opcional)

La distancia de zona de influencia que se utilizará para las entidades de carretera de entrada. El valor predeterminado es 5 metros para las entidades de polilínea y 0 metros para las entidades poligonales.

Linear Unit
Regularizar parcelas
(Opcional)

Especifica si las parcelas extraídas se normalizarán eliminando artefactos no deseados en su geometría.

  • Activado: las parcelas extraídas se normalizarán. Esta es la opción predeterminada.
  • Desactivado: las parcelas extraídas no se normalizarán.
Boolean
Flujo de trabajo de procesamiento posterior
(Opcional)

Especifica el flujo de trabajo de procesamiento posterior que se utilizará.

  • Regularización de líneaLas entidades de línea se extraerán de un ráster de banda única con clasificación binaria y se generará una clase de entidad de polilínea después de refinarla.
  • Regularización de parcelasLas parcelas se extraerán de un ráster de banda única con clasificación binaria y se generará una clase de entidad de polígono después de refinarla.
  • Regularización de polígonoSe generará una clase de entidad de polígono después de perfeccionarla. Este flujo de trabajo solo es compatible con modelos de detección de objetos.
String
Entidades de salida
(Opcional)

La clase de entidad que contiene la salida posprocesada.

Feature Class
Tolerancia entre parcelas adyacentes
(Opcional)

La distancia mínima entre las coordenadas antes de que se consideren iguales. Este parámetro se utiliza para reducir porciones entre parcelas extraídas. El valor predeterminado es 3 metros.

Linear Unit
Método de regularización
(Opcional)

Especifica el método de regularización que se utilizará en el procesamiento posterior.

  • Ángulos rectosSe construyen formas compuestas de ángulos de 90° entre ejes adyacentes. Esta es la opción predeterminada.
  • Ángulos rectos y diagonalesSe construyen formas compuestas de ángulos de entre 45° y 90° entre ejes adyacentes.
  • Cualquier ánguloSe construyen formas que forman cualquier ángulo entre ejes adyacentes.
  • CírculoSe utilizará la distancia máxima desde el límite de la entidad que se está procesando.
String
Tolerancia
(Opcional)

Distancia máxima que la huella regularizada puede desviarse del límite de su entidad original. El valor predeterminado es 1 metro.

Linear Unit
Solicitar
(Opcional)

Especifica el método de segmentación que se utilizará cuando el parámetro Modelos adicionales se establezca en Segmentación de polígonos.

  • CentroideEl centroide de las detecciones se utilizará para indicar al modelo de segmentación de polígonos qué segmentar en el ráster de entrada.
  • Cuadro de delimitaciónEl cuadro de delimitación de las detecciones se utilizará para indicar al modelo de segmentación de polígonos qué segmentar en el ráster de entrada.
  • NingunaNo se utilizará ningún método de segmentación. Esta es la configuración predeterminada
String
Entidades de entrada
(Opcional)

La clase de entidad en la que se realizará el posprocesamiento. Este parámetro solo se admite cuando el parámetro Flujo de trabajo de posprocesamiento está establecido en Regularización de línea o Regularización de polígono.

La clase de entidad en la que se realizará el posprocesamiento. Este parámetro solo se admite cuando el parámetro post_processing_workflow está establecido en Line Regularization o Polygon Regularization.

Feature Layer; Feature Class
Resumen de salida
(Opcional)

La tabla que contendrá una lista de resultados generados junto con sus respectivas rutas.

Table

arcpy.geoai.ExtractFeaturesUsingAIModels(in_raster, mode, out_location, out_prefix, {area_of_interest}, {pretrained_models}, {additional_models}, {confidence_threshold}, {save_intermediate_output}, {test_time_augmentation}, {buffer_distance}, {extend_length}, {smoothing_tolerance}, {dangle_length}, {in_road_features}, {road_buffer_width}, {regularize_parcels}, {post_processing_workflow}, {out_features}, {parcel_tolerance}, {regularization_method}, {poly_tolerance}, {prompt}, {in_features}, {out_summary})
NombreExplicaciónTipo de datos
in_raster

El ráster de entrada en el que se realizará el procesamiento.

Si el parámetro mode se especifica como Only Postprocess, se necesita un ráster con clasificación binaria para este parámetro.

Raster Layer; Raster Dataset; Mosaic Layer
mode

Especifica el modo que se utilizará para el procesamiento del ráster de entrada.

  • Infer and PostprocessLas entidades se extraerán de las imágenes y se posprocesarán. Esta es la opción predeterminada.
  • Only PostprocessEl ráster de entrada se posprocesará directamente. Se necesita un ráster de banda única con clasificación binaria para esta opción.
String
out_location

La geodatabase de archivos donde se almacenará la salida intermedia de los modelos y la salida posterior final.

Workspace
out_prefix

Un prefijo que se agregará al nombre de las salidas que se guardarán en la ubicación de salida. El prefijo también se utilizará como el nombre de una capa de grupo que se utilizará para mostrar todas las salidas.

String
area_of_interest
(Opcional)

La extensión geográfica que se utilizará para extraer entidades. Solo se extraerán las entidades dentro del área de interés.

Feature Set
pretrained_models
[pretrained_models,...]
(Opcional)

Los modelos predefinidos de ArcGIS de ArcGIS Living Atlas of the World que se pueden utilizar en el ráster de entrada proporcionado. Este parámetro requiere una conexión a Internet para descargar los modelos predefinidos.

String
additional_models
[additional_models,...]
(Opcional)

Los modelos de aprendizaje profundo que se pueden utilizar en el ráster de entrada proporcionado y el flujo de trabajo de procesamiento posterior que se utilizarán para archivos de modelo adicionales (.dlpk y .emd). Los flujos de trabajo de posprocesamiento disponibles son los siguientes:

  • Line Regularization: el flujo de trabajo de posprocesamiento extraerá entidades de línea de un ráster de banda única con clasificación binaria y generará una clase de entidad de polilínea después de perfeccionarla. Este flujo de trabajo también admite modelos de aprendizaje profundo que generan clases de entidades de polilínea.
  • Parcel Regularization: el flujo de trabajo de posprocesamiento extraerá parcelas de un ráster de banda única con clasificación binaria y generará una clase de entidad poligonal después de perfeccionarla.
  • Polygon Regularization: el flujo de trabajo de posprocesamiento generará una clase de entidad poligonal después de perfeccionarla. Este flujo de trabajo solo es compatible con modelos de detección de objetos.
  • Polygon Segmentation: el flujo de trabajo de posprocesamiento generará una clase de entidad de polígono que contiene los objetos detectados utilizando su centroide o cuadro de delimitación. El método de segmentación se especifica mediante el parámetro prompt.
  • None: no se aplicará ningún flujo de trabajo de posprocesamiento. Esta es la opción predeterminada.

Value Table
confidence_threshold
(Opcional)

La confianza mínima del modelo de aprendizaje profundo que se utilizará para detectar objetos. El valor debe estar comprendido entre 0 y 1.

Double
save_intermediate_output
(Opcional)

Especifica si las salidas intermedias se guardarán en la ubicación de salida. El término salidas intermedias hace referencia a los resultados generados después de inferenciar el modelo.

  • TRUELas salidas intermedias se guardarán en la ubicación de salida.
  • FALSELas salidas intermedias no se guardarán. Esta es la opción predeterminada.
Boolean
test_time_augmentation
(Opcional)

Especifica si las predicciones de variantes rotadas y volteadas de la imagen de entrada se fusionarán en la salida final.

  • TRUELas predicciones de variantes rotadas y volteadas de la imagen de entrada se fusionarán en la salida final.
  • FALSELas predicciones de variantes rotadas y volteadas de la imagen de entrada no se fusionarán en la salida final. Esta es la opción predeterminada.
Boolean
buffer_distance
(Opcional)

La distancia que se utilizará para crear zonas de influencia de entidades de polilínea antes de utilizarlas en el procesamiento posterior. El valor predeterminado es 15 metros.

Linear Unit
extend_length
(Opcional)

La distancia máxima que se extenderá un segmento de línea hasta una entidad intersecante. El valor predeterminado es 25 metros.

Linear Unit
smoothing_tolerance
(Opcional)

La tolerancia utilizada por el algoritmo de aproximación polinomial con núcleo exponencial (PAEK). El valor predeterminado es 30 metros.

Linear Unit
dangle_length
(Opcional)

La longitud a la que se recortarán los segmentos de línea que no tocan otra línea en ambos extremos (nodos colgados). El valor predeterminado es 5 metros.

Linear Unit
in_road_features
(Opcional)

Una clase de entidad de carretera que se utilizará para refinar las parcelas. La entrada puede ser una clase de entidad poligonal o de polilínea.

Feature Layer; Feature Class
road_buffer_width
(Opcional)

La distancia de zona de influencia que se utilizará para las entidades de carretera de entrada. El valor predeterminado es 5 metros para las entidades de polilínea y 0 metros para las entidades poligonales.

Linear Unit
regularize_parcels
(Opcional)

Especifica si las parcelas extraídas se normalizarán eliminando artefactos no deseados en su geometría.

  • TRUELas parcelas extraídas se normalizarán. Esta es la opción predeterminada.
  • FALSELas parcelas extraídas no se normalizarán.
Boolean
post_processing_workflow
(Opcional)

Especifica el flujo de trabajo de procesamiento posterior que se utilizará.

  • Line RegularizationLas entidades de línea se extraerán de un ráster de banda única con clasificación binaria y se generará una clase de entidad de polilínea después de refinarla.
  • Parcel RegularizationLas parcelas se extraerán de un ráster de banda única con clasificación binaria y se generará una clase de entidad de polígono después de refinarla.
  • Polygon RegularizationSe generará una clase de entidad de polígono después de perfeccionarla. Este flujo de trabajo solo es compatible con modelos de detección de objetos.
String
out_features
(Opcional)

La clase de entidad que contiene la salida posprocesada.

Feature Class
parcel_tolerance
(Opcional)

La distancia mínima entre las coordenadas antes de que se consideren iguales. Este parámetro se utiliza para reducir porciones entre parcelas extraídas. El valor predeterminado es 3 metros.

Linear Unit
regularization_method
(Opcional)

Especifica el método de regularización que se utilizará en el procesamiento posterior.

  • Right AnglesSe construyen formas compuestas de ángulos de 90° entre ejes adyacentes. Esta es la opción predeterminada.
  • Right Angles and DiagonalsSe construyen formas compuestas de ángulos de entre 45° y 90° entre ejes adyacentes.
  • Any AnglesSe construyen formas que forman cualquier ángulo entre ejes adyacentes.
  • CircleSe utilizará la distancia máxima desde el límite de la entidad que se está procesando.
String
poly_tolerance
(Opcional)

Distancia máxima que la huella regularizada puede desviarse del límite de su entidad original. El valor predeterminado es 1 metro.

Linear Unit
prompt
(Opcional)

Especifica el método de segmentación que se utilizará cuando el parámetro additional_models se establezca en Polygon Segmentation.

  • CentroidEl centroide de las detecciones se utilizará para indicar al modelo de segmentación de polígonos qué segmentar en el ráster de entrada.
  • Bounding BoxEl cuadro de delimitación de las detecciones se utilizará para indicar al modelo de segmentación de polígonos qué segmentar en el ráster de entrada.
  • NoneNo se utilizará ningún método de segmentación. Esta es la configuración predeterminada
String
in_features
(Opcional)

La clase de entidad en la que se realizará el posprocesamiento. Este parámetro solo se admite cuando el parámetro post_processing_workflow está establecido en Line Regularization o Polygon Regularization.

Feature Layer; Feature Class
out_summary
(Opcional)

La tabla que contendrá una lista de resultados generados junto con sus respectivas rutas.

Table

Muestra de código

ExtractFeaturesUsingAIModels (ventana de Python)

Este ejemplo muestra cómo utilizar la función ExtractFeaturesUsingAIModels.

# Name: ExtractFeaturesUsingAIModels.py
# Description: Extract features using pretrained deep learning models on imagery data.
  
# Import system modules
import arcpy

# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")

# Set local variables
datapath = "path_to_training_data" 
out_gdb = "path_to_gdb"
predictions = "output_prefix"

# Run Extract Features Using AI Models
arcpy.geoai.ExtractFeaturesUsingAIModels(
    in_raster=datapath,
    mode="Infer and Postprocess", 
    out_location=out_gdb, 
    out_prefix=predictions, 
    pretrained_models="'Building Footprint Extraction - USA'", 
    save_intermediate_output="TRUE", 
    buffer_distance="15 Meters", 
    extend_length="25 Meters", 
    smoothing_tolerance="30 Meters", 
    dangle_length="5 Meters",
    regularization_method="Right Angles",
    poly_tolerance="1 Meters",
    prompt="Bounding Box")

Entornos