Mit der Spatial 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})
Parameter | Erklärung | Datentyp |
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; Raster Catalog 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) | Integrieren Sie Zusatz-Raster-Datasets, wie ein Multispektralbild oder ein DEM, 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.sa 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"
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.sa import *
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")
Umgebungen
Lizenzinformationen
- Basic: Erfordert Spatial Analyst
- Standard: Erfordert Spatial Analyst
- Advanced: Erfordert Spatial Analyst