Genauigkeit für Objekterkennung berechnen (Image Analyst)

Mit der Image Analyst-Lizenz verfügbar.

Zusammenfassung

Berechnet die Genauigkeit eines Deep-Learning-Modells, indem die mit dem Werkzeug Objekte mit Deep Learning erkennen erkannten Objekte mit Überprüfungsdaten verglichen werden.

Weitere Informationen zur Funktionsweise von Genauigkeit für die Objekterkennung berechnen

Verwendung

  • Dieses Werkzeug generiert eine Tabelle mit Informationen zur Genauigkeit der Ausgabe aus dem Werkzeug Genauigkeit für die Objekterkennung berechnen.

    Die Tabelle enthält Kennwerte der Genauigkeit für jede Klasse in den erkannten Daten sowie eine Zeile für alle Klassen (Gesamtgenauigkeit). Die Tabelle enthält die folgenden Felder:

    • Precision: Das Verhältnis der Anzahl von True Positives zur Gesamtzahl der Vorhersagen.
    • Recall: Recall ist das Verhältnis der Anzahl von True Positives zur Gesamtzahl der realen (relevanten) Objekte.
    • F1_Score: Der gewichtete Durchschnitt von "Precision" und "Recall". Die Werte liegen zwischen 0 und 1, wobei 1 für die höchste Genauigkeit steht.
    • AP: Der AP-Kennwert (Average Precision), bei dem es sich um den durchschnittlichen Precision-Wert handelt, der aus allen Recall-Werten zwischen 0 und 1 an einem bestimmten IoU-Wert (Intersection over Union) ermittelt wird.
    • True_Positive: Die Anzahl der vom Modell generierten True Positives.
    • False_Positive: Die Anzahl der vom Modell generierten False Positives.
    • False_Negative: Die Anzahl der vom Modell generierten False Negatives.

    Weitere Informationen zu den Kennwerten, die in der Ausgabetabelle und im Bericht zur Genauigkeit bereitgestellt werden, finden Sie unter Funktionsweise von "Genauigkeit für die Objekterkennung berechnen".

  • Die Eingabe-Referenzdaten müssen Polygone enthalten. Wenn Sie über Punkt- oder Liniendaten verfügen, welche die Position von Objekten angeben, verwenden Sie das Werkzeug Puffer, um eine Polygon-Feature-Class zu generieren, bevor Sie dieses Werkzeug ausführen.

  • Das IoU-Verhältnis wird als Schwellenwert verwendet, um zu ermitteln, ob ein vorhergesagtes Ergebnis ein True Positive oder ein False Positive ist. Das IoU-Verhältnis ist die Überlappung zwischen dem umgebenden Rechteck um ein vorhergesagtes Objekt und dem umgebenden Rechteck um die Referenzdaten.

    Das IoU-Verhältnis entspricht der Überlappung der umgebenden Rechtecke (1) gegenüber der Vereinigung der umgebenen Rechtecke (2).
    Die Zahlen in der Abbildung oben entsprechen den Zahlen in der folgenden Tabelle:

    NummerBeschreibung
    1

    Die Überschneidungsfläche des vorhergesagten umgebenden Rechtecks und des umgebenden Rechtecks der Referenzdaten

    2

    Die Gesamtfläche des vorhergesagten umgebenden Rechtecks und des umgebenden Rechtecks der Referenzdaten in Kombination

Parameter

BeschriftungErläuterungDatentyp
Erkannte Features

Die Polygon-Feature-Class mit den Objekten, die von dem Werkzeug Objekte mit Deep Learning erkennen erkannt wurden.

Feature Class; Feature Layer
Feldvergleichs-Features

Die Polygon-Feature-Class, welche die Überprüfungsdaten enthält.

Feature Class; Feature Layer
Tabelle zur Ausgabe-Genauigkeit

Die Tabelle zur Ausgabe-Genauigkeit

Table
Bericht zur Ausgabe-Genauigkeit
(optional)

Der Name des Berichts zur Ausgabe-Genauigkeit. Bei dem Bericht handelt es sich um ein PDF-Dokument, das Genauigkeitskennwerte und -diagramme enthält.

File
Feld "Erkannter Klassenwert"
(optional)

Das Feld in der Feature-Class der erkannten Objekte, das die Klassenwerte oder Klassennamen enthält.

Wird kein Feldname angegeben, wird ein Classvalue- oder Value-Feld verwendet. Wenn diese Felder nicht vorhanden sind, werden alle Datensätze als zu einer Klasse gehörend identifiziert.

Die Klassenwerte oder Klassennamen müssen genau denen in der Referenz-Feature-Class entsprechen.

Field
Feld "Feldvergleichs-Klassenwert"
(optional)

Das Feld in der Feldvergleichs-Feature-Class, das die Klassenwerte enthält.

Wird kein Feldname angegeben, wird ein Classvalue- oder Value-Feld verwendet. Wenn diese Felder nicht vorhanden sind, werden alle Datensätze als zu einer Klasse gehörend identifiziert.

Die Klassenwerte oder Klassennamen müssen genau denen in der Feature-Class der erkannten Objekte entsprechen.

Field
Minimales IoU-Verhältnis (Intersection over Union)
(optional)

Das IoU-Verhältnis, das als Schwellenwert verwendet wird, um die Genauigkeit des Objekterkennungsmodells auszuwerten. Der Zähler ist die Überlappungsfläche zwischen dem vorhergesagten umgebenden Rechteck und dem umgebenden Rechteck der Referenzdaten. Beim Nenner handelt es sich um die Vereinigungsfläche oder die Fläche, die von beiden umgebenden Rechtecken umfasst wird. Das IoU-Verhältnis liegt zwischen 0 und 1.

Double
Masken-Features
(optional)

Eine Polygon-Feature-Class zur Abgrenzung der Fläche oder Flächen, in denen die Genauigkeit berechnet wird. Nur die Features, welche die Maske schneiden, werden im Hinblick auf die Genauigkeit ausgewertet.

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})
NameErläuterungDatentyp
detected_features

Die Polygon-Feature-Class mit den Objekten, die von dem Werkzeug Objekte mit Deep Learning erkennen erkannt wurden.

Feature Class; Feature Layer
ground_truth_features

Die Polygon-Feature-Class, welche die Überprüfungsdaten enthält.

Feature Class; Feature Layer
out_accuracy_table

Die Tabelle zur Ausgabe-Genauigkeit

Table
out_accuracy_report
(optional)

Der Name des Berichts zur Ausgabe-Genauigkeit. Bei dem Bericht handelt es sich um ein PDF-Dokument, das Genauigkeitskennwerte und -diagramme enthält.

File
detected_class_value_field
(optional)

Das Feld in der Feature-Class der erkannten Objekte, das die Klassenwerte oder Klassennamen enthält.

Wird kein Feldname angegeben, wird ein Classvalue- oder Value-Feld verwendet. Wenn diese Felder nicht vorhanden sind, werden alle Datensätze als zu einer Klasse gehörend identifiziert.

Die Klassenwerte oder Klassennamen müssen genau denen in der Referenz-Feature-Class entsprechen.

Field
ground_truth_class_value_field
(optional)

Das Feld in der Feldvergleichs-Feature-Class, das die Klassenwerte enthält.

Wird kein Feldname angegeben, wird ein Classvalue- oder Value-Feld verwendet. Wenn diese Felder nicht vorhanden sind, werden alle Datensätze als zu einer Klasse gehörend identifiziert.

Die Klassenwerte oder Klassennamen müssen genau denen in der Feature-Class der erkannten Objekte entsprechen.

Field
min_iou
(optional)

Das IoU-Verhältnis, das als Schwellenwert verwendet wird, um die Genauigkeit des Objekterkennungsmodells auszuwerten. Der Zähler ist die Überlappungsfläche zwischen dem vorhergesagten umgebenden Rechteck und dem umgebenden Rechteck der Referenzdaten. Beim Nenner handelt es sich um die Vereinigungsfläche oder die Fläche, die von beiden umgebenden Rechtecken umfasst wird. Das IoU-Verhältnis liegt zwischen 0 und 1.

Double
mask_features
(optional)

Eine Polygon-Feature-Class zur Abgrenzung der Fläche oder Flächen, in denen die Genauigkeit berechnet wird. Nur die Features, welche die Maske schneiden, werden im Hinblick auf die Genauigkeit ausgewertet.

Feature Class; Feature Layer

Codebeispiel

ComputeAccuracyForObjectDetection – Beispiel 1 (Python-Fenster)

Dieses Beispiel generiert eine Genauigkeitstabelle für einen angegebenen minimalen IoU-Wert.

# 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")
ComputeAccuracyForObjectDetection – Beispiel 2 (eigenständiges Skript)

Dieses Beispiel generiert eine Genauigkeitstabelle für einen angegebenen minimalen IoU-Wert.

# 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)

Lizenzinformationen

  • Basic: Erfordert Image Analyst
  • Standard: Erfordert Image Analyst
  • Advanced: Erfordert Image Analyst

Verwandte Themen