Trainingsgebiete prüfen (Image Analyst)

Mit der Spatial Analyst-Lizenz verfügbar.

Mit der Image Analyst-Lizenz verfügbar.

Zusammenfassung

Untersucht die Genauigkeit einzelner Trainingsgebiete. Die Cross Validation-Genauigkeit wird anhand der zuvor generierten Klassifizierungstrainingsergebnisse in einer .ecd-Datei und den Trainingsgebieten berechnet. Ausgegeben werden ein Raster-Dataset mit den falsch klassifizierten Klassenwerten und ein Trainingsgebiet-Dataset mit dem Genauigkeitswert für die einzelnen Trainingsgebiete.

Verwendung

  • Das Werkzeug verwendet das Eingabe-Raster, ein zusätzliches Eingabe-Raster und die Klassifikatordefinitionsdatei .ecd, um einen On-the-Fly-Klassifikator-Layer zu erstellen. Dieser Klassifizierungs-Layer wird dann als Referenz verwendet und mit allen Polygonen oder Punkten des Trainingsgebiets verglichen. Da ein ideales Trainingsgebiet nur Pixel der Klasse enthalten sollte, die es darstellt, wird die Genauigkeit berechnet, indem alle richtig klassifizierten Pixel mit allen falsch klassifizierten Pixeln für jedes Trainingsgebiet verglichen werden. Die Genauigkeitspunktzahl (pro Polygon oder Punkt) wird als number of correctly classified pixels/number of total pixels berechnet, die in jedem Trainingsgebiet enthalten ist.

  • Die Punktzahl für Polygon-Trainingsgebiete ist ein Dezimalwert, der von 0 bis 1 reichen kann. Je näher der Wert an 1 reicht, desto höher ist die Genauigkeit. Die Punktzahl für Punkt-Trainingsgebiete ist entweder 0 für ungenau oder 1 für genau.

  • Die Ergebnisse können folgendermaßen verwendet werden, um Definitionsklassen von Trainingsgebieten zu verbessern:

    • Verwenden Sie die Attributtabelle des Ausgabe-Trainingsgebiets, um die Trainings-Features nach Genauigkeit zu sortieren und auf die einzelnen Features zu zoomen.
    • Verwenden Sie die Klassenkarte mit den falsch klassifizierten Rastern, um anzuzeigen, wo Konfusion besteht und wodurch sie verursacht werden.
    • Anhand dieser Informationen können Sie entscheiden, ob die Trainings-Features beibehalten, entfernt oder bearbeitet werden sollen.

Syntax

InspectTrainingSamples(in_raster, in_training_features, in_classifier_definition, out_training_feature_class, out_misclassified_raster, {in_additional_raster})
ParameterErklärungDatentyp
in_raster

Das zu klassifizierende Eingabe-Raster.

Mosaic Layer; Raster Layer; Image Service; String
in_training_features

Eine Trainingsgebiet-Feature-Class, die im Bereich Trainingsgebiet-Manager erstellt wurde.

Feature Layer
in_classifier_definition

Die Ausgabe-Klassifikatordatei .ecd aus einem der Werkzeuge zum Trainieren von Klassifikatoren. Diese .ecd-Datei ist eine JSON-Datei, die Attributinformationen, Statistiken oder weitere für den Klassifikator erforderliche Daten enthält.

File
out_training_feature_class

Die einzelnen Ausgabe-Trainingsgebiete werden als Feature-Class gespeichert. Die verknüpfte Attributtabelle enthält ein zusätzliches Feld, in dem die Genauigkeitszone aufgeführt ist.

Feature Class
out_misclassified_raster

Das ausgegebene falsch klassifizierte Raster weist keine NoData außerhalb von Trainingsgebieten auf. In Trainingsgebieten werden richtig klassifizierte Pixel als NoData und falsch klassifizierte Pixel als deren Klassenwert dargestellt. Das Ergebnis ist eine Indexkarte falsch klassifizierter Klassenwerte.

Raster Dataset
in_additional_raster
(optional)

Zusatz-Raster-Datasets, wie ein Multispektralbild oder ein DEM, werden integriert, um Attribute und weitere erforderliche Informationen für den Klassifikator zu generieren. Dieses Raster wird beim Berechnen von Attributen wie Mittelwert oder Standardabweichung benötigt. Dieser Parameter ist optional.

Mosaic Layer; Raster Layer; Image Service; String

Codebeispiel

InspectTrainingSamples – Beispiel 1 (Python-Fenster)

In diesem Beispiel wird die Eignung von Trainingsgebieten für die Klassifizierung überprüft.

### InspectTrainingSamples example 1 (Python window)
import arcpy
from arcpy.ia import *

in_img = "C:/Data/wv2.tif"
trn_samples1 = "C:/out/ts.shp"
ecd = "C:/Data/svm.ecd"
seg_in_img = "C:/Data/seg.tif"
trn_samples2 = "C:/out/ts2.shp"

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

out_misclassified_raster = InspectTrainingSamples(in_img, trn_samples, ecd,
                                                  trn_samples2, seg_in_img); 
out_misclassified_raster.save("C:/temp/misclassified.tif")
InspectTrainingSamples ­ Beispiel 2 (eigenständiges Skript)

In diesem Beispiel wird die Eignung von Trainingsgebieten für die Klassifizierung überprüft.

### InspectTrainingSamples example 2 (stand-alone script)
import arcpy
from arcpy.ia import *

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

out_misclassified_raster = InspectTrainingSamples("C:/Data/wv2.tif", 
                                                  "C:/out/ts.shp", 
                                                  "C:/Data/svm.ecd", 
                                                  "C:/out/ts2.shp", 
                                                  "C:/Data/seg.tif"); 
out_misclassified_raster.save("C:/temp/misclassified.tif")

Lizenzinformationen

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

Verwandte Themen