Calcular precisión para la detección de objetos (Image Analyst)

Disponible con licencia de Image Analyst.

Resumen

Calcula la precisión de un modelo de aprendizaje profundo comparando los objetos detectados por la herramienta Detectar objetos con aprendizaje profundo con los datos de la realidad del terreno.

Más información sobre cómo funciona Calcular precisión para la detección de objetos.

Uso

  • Esta herramienta genera una tabla que contiene información sobre la precisión de la salida de la herramienta Detectar objetos con aprendizaje profundo.

    La tabla contiene métricas de precisión para cada clase en los datos detectados, así como una fila para todas las clases (exactitud general). La tabla de salida contiene los siguientes campos:

    • Precision— Relación del número de positivos verdaderos respecto al número total de predicciones.
    • Recall— Relación del número de positivos verdaderos respecto al número total de predicciones positivas.
    • F1_Score— Media ponderada de la precisión y recuperación. Los valores varían de 0 a 1, donde 1 corresponde a la precisión más alta.
    • AP— Métrica Precisión media (AP), que es el promedio de precisión de todos los valores que se recuperan entre 0 y 1 en un valor de intersección sobre la unión (IoU) determinado.
    • True_Positive— Número de valores positivos verdaderos generados por el modelo.
    • False_Positive— Número de falsos positivos generados por el modelo.
    • False_Negative— Número de falsos negativos generados por el modelo.

    Para obtener más información sobre las métricas proporcionadas en la tabla de salida y en el informe de precisión, consulte Cómo funciona Calcular la exactitud para la detección de objetos.

  • Los datos de referencia del terreno de entrada deben contener polígonos. Si tiene datos de punto o línea que indican la ubicación de los objetos, utilice la herramienta Zona de influencia para generar una clase de entidad poligonal antes de ejecutar esta herramienta.

  • La relación Intersección sobre la unión (IoU) se utiliza como umbral para determinar si un resultado previsto es un verdadero positivo o un falso positivo. La relación IoU es la cantidad de superposición entre el cuadro de delimitación alrededor de un objeto previsto y el cuadro de delimitación alrededor de los datos de referencia del terreno.

    La relación IoU equivale a la superposición de los cuadros de delimitación (1) sobre la unión de cuadros de delimitación (2).

    1

    Área de intersección del cuadro de delimitación previsto y el cuadro de delimitación de referencia del terreno

    2

    Área total del cuadro de delimitación previsto y el cuadro de delimitación de referencia del terreno combinados

Parámetros

EtiquetaExplicaciónTipo de datos
Entidades detectadas

Clase de entidad poligonal que contiene los objetos detectados de la herramienta Detectar objetos con aprendizaje profundo.

Feature Class; Feature Layer
Entidades de realidad del terreno

Clase de entidad poligonal que contiene datos de realidad del terreno.

Feature Class; Feature Layer
Tabla de precisión de salida

Tabla de precisión de salida.

Table
Informe de precisión de salida
(Opcional)

Nombre del informe de precisión de salida. El informe es un documento PDF que contiene métricas y gráficos de precisión.

File
Campo de valor de clase detectado
(Opcional)

Campo de la clase de entidad de objetos detectados que contiene los valores de clase o los nombres de clase.

Si el nombre de campo no se especifica, se utilizará un campo Classvalue o Value. Si estos campos no existen, se identificará que todos los registros pertenecen a una sola clase.

Los nombres de clase o los valores de clase deben coincidir exactamente con los de la clase de entidad de referencia del terreno.

Field
Campo de valor de clase de realidad del terreno
(Opcional)

Campo de la clase de entidad de realidad del terreno que contiene los valores de clase.

Si el nombre de campo no se especifica, se utilizará un campo Classvalue o Value. Si estos campos no existen, se identificará que todos los registros pertenecen a una sola clase.

Los nombres de clase o valores de clase deben coincidir exactamente con los de la clase de entidad de objetos detectados.

Field
Intersección mínima sobre la unión (IoU)
(Opcional)

Relación IoU que se utiliza como umbral para evaluar la precisión del modelo de detección de objetos. El numerador es el área de superposición entre el cuadro de delimitación previsto y el cuadro de delimitación de referencia del terreno. El denominador es el área de unión o el área abarcada por ambos cuadros de delimitación. Los rangos IoU varían de 0 a 1.

Double
Entidades de máscara
(Opcional)

Clase de entidad poligonal que delinea el área o las áreas en la que se calculará la precisión. Solo se evaluará la precisión de las entidades que intersequen la máscara.

Feature Class; Feature Layer

ComputeAccuracyForObjectDetection(detected_features, ground_truth_features, out_accuracy_table, {out_accuracy_report}, {detected_class_value_field}, {ground_truth_class_value_field}, {min_iou}, {mask_features})
NombreExplicaciónTipo de datos
detected_features

Clase de entidad poligonal que contiene los objetos detectados de la herramienta Detectar objetos con aprendizaje profundo.

Feature Class; Feature Layer
ground_truth_features

Clase de entidad poligonal que contiene datos de realidad del terreno.

Feature Class; Feature Layer
out_accuracy_table

Tabla de precisión de salida.

Table
out_accuracy_report
(Opcional)

Nombre del informe de precisión de salida. El informe es un documento PDF que contiene métricas y gráficos de precisión.

File
detected_class_value_field
(Opcional)

Campo de la clase de entidad de objetos detectados que contiene los valores de clase o los nombres de clase.

Si el nombre de campo no se especifica, se utilizará un campo Classvalue o Value. Si estos campos no existen, se identificará que todos los registros pertenecen a una sola clase.

Los nombres de clase o los valores de clase deben coincidir exactamente con los de la clase de entidad de referencia del terreno.

Field
ground_truth_class_value_field
(Opcional)

Campo de la clase de entidad de realidad del terreno que contiene los valores de clase.

Si el nombre de campo no se especifica, se utilizará un campo Classvalue o Value. Si estos campos no existen, se identificará que todos los registros pertenecen a una sola clase.

Los nombres de clase o valores de clase deben coincidir exactamente con los de la clase de entidad de objetos detectados.

Field
min_iou
(Opcional)

Relación IoU que se utiliza como umbral para evaluar la precisión del modelo de detección de objetos. El numerador es el área de superposición entre el cuadro de delimitación previsto y el cuadro de delimitación de referencia del terreno. El denominador es el área de unión o el área abarcada por ambos cuadros de delimitación. Los rangos IoU varían de 0 a 1.

Double
mask_features
(Opcional)

Clase de entidad poligonal que delinea el área o las áreas en la que se calculará la precisión. Solo se evaluará la precisión de las entidades que intersequen la máscara.

Feature Class; Feature Layer

Muestra de código

Ejemplo 1 de ComputeAccuracyForObjectDetection (ventana de Python)

En este ejemplo se genera una tabla de precisión para un valor de IoU mínimo especificado.

# Import system modules
import arcpy
from arcpy.ia import *

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

# Execute 
ComputeAccuracyForObjectDetection(
	"C:/DeepLearning/Data.gdb/detectedFeatures", 
	"C:/DeepLearning/Data.gdb/groundTruth", 
	"C:/DeepLearning/Data.gdb/accuracyTable", 
	"E:/DeepLearning/accuracyReport.pdf", "Class", 
	"Class", 0.5, " C:/DeepLearning/Data.gdb/AOI")
Ejemplo 2 de ComputeAccuracyForObjectDetection (script independiente)

En este ejemplo se genera una tabla de precisión para un valor de IoU mínimo especificado.

# Import system modules
import arcpy
from arcpy.ia import *

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

# Set local variables 
detected_features = "C:/DeepLearning/Data.gdb/detectedFeatures" 
ground_truth_features = "C:/DeepLearning/Data.gdb/groundTruth" 
out_accuracy_table = "C:/DeepLearning/Data.gdb/accuracyTable" 
out_accuracy_report = "C:/DeepLearning/accuracyReport.pdf" 
detected_class_value_field = "Class" 
ground_truth_class_value_field = "Class" 
min_iou = 0.5 
mask_features = "C:/DeepLearning/Data.gdb/AOI" 

# Execute 
ComputeAccuracyForObjectDetection(detected_features, 
	ground_truth_features, out_accuracy_table, 
	out_accuracy_report, detected_class_value_field, 
	ground_truth_class_value_field, min_iou, mask_features)

Temas relacionados