Signaturen erstellen (Spatial Analyst)
Zusammenfassung
Erstellt eine ASCII-Signaturdatei von durch Eingabestichprobendaten und einen Satz von Raster-Bändern definierten Klassen.
Weitere Informationen zur Funktionsweise von "Signaturen erstellen"
Verwendung
-
Für die Ausgabe-Signaturdatei sollte die Erweiterung .gsg verwendet werden.
-
Die Eingabe-Raster-Bänder und die Stichprobendaten des Eingabe-Rasters bzw. des Features müssen überlappende Ausdehnungen aufweisen. Die Statistik wird nur für die gemeinsame Fläche berechnet.
-
Die gültige Mindestanzahl an Klassenbeispielen in den Stichprobendaten beträgt zwei. Es gibt keine maximale Anzahl an Klassen.
-
Wenn die Signaturdatei in weiteren Werkzeugen für die multivariate Analyse verwendet werden soll, die Kovarianzmatrizen verwenden, wie z. B. Maximum-Likelihood-Klassifizierung und Klassenwahrscheinlichkeit, verwenden, müssen die Kovarianzmatrizen vorhanden sein. Diese Informationen werden generiert, wenn die Option Kovarianzmatrizen berechnen im Dialogfeld aktiviert bzw. die Option "COVARIANCE" in der Skripterstellung angegeben ist. Beachten Sie, dass dies die Standardeinstellung ist. Informationen zum Vergleich von Signaturdateien, wenn die Kovarianzmatrizen generiert werden, gegenüber den reinen Mittelwerten finden Sie unter Funktionsweise von "Signaturen erstellen".
-
Sie sollten nichts in der Signaturdatei ändern, außer, um die Namen von Klassen einzugeben. Die Statistik in der Datei sollte nur durch Multivariate-Werkzeuge erstellt und geändert werden.
-
Die Namen der Klassen in der Ausgabe-Signaturdatei sind optional. Sie werden nur als Referenz verwendet. Die Klassenbezeichnungen sind optional und können entweder über das Stichprobenfeld eingegeben werden, oder sie können der sich ergebenden Signaturdatei mithilfe eines Texteditors hinzugefügt werden. Jeder Klassenname muss aus einer einzelnen Zeichenfolge bestehen, die nicht mehr als 31 alphanumerische Zeichen umfassen darf.
-
Wenn die Eingabe ein Layer ist, der aus einem Multiband-Raster mit mehr als drei Bändern erstellt wurde, berücksichtigt der Vorgang alle mit dem Quellen-Dataset verknüpften Bänder und nicht nur die drei vom Layer geladenen (symbolisierten) Bänder.
Sie haben verschiedene Möglichkeiten, eine Teilmenge von Bändern eines Multiband-Rasters als Eingabe für das Werkzeug festzulegen.
- Wechseln Sie bei Verwendung des Werkzeugdialogfeldes in das Multiband-Raster, indem Sie die Schaltfläche "Durchsuchen" neben dem Eintrag Eingabe-Raster-Bänder verwenden. Öffnen Sie das Raster, und wählen Sie die gewünschten Bänder aus.
- Wenn es sich bei dem Multiband-Raster um einen Layer im Inhaltsverzeichnis handelt, können Sie mit dem Werkzeug Raster-Layer erstellen einen neuen Multiband-Layer erstellen, der nur die gewünschten Bänder enthält.
- Sie können auch mithilfe der Option Bänder zusammensetzen ein neues Dataset erstellen, das nur die gewünschten Bänder enthält, und dieses als Eingabe für das Werkzeug verwenden.
- In Python können die gewünschten Bänder direkt als Liste im Werkzeugparameter festgelegt werden.
Syntax
Parameter | Erläuterung | Datentyp |
in_raster_bands [in_raster_band,...] |
Die Eingabe-Raster-Bänder, für die die Signaturen erstellt werden sollen. | Raster Layer |
in_sample_data |
Die Eingabe, die den Satz von Klassenbeispielen abgrenzt. Als Eingabe ist ein Ganzzahl-Raster oder ein Feature-Dataset zulässig. | Raster Layer | Feature Layer |
out_signature_file |
Die Ausgabe-Signaturdatei. Die Erweiterung .gsg muss angegeben werden. | File |
compute_covariance (optional) |
Gibt an, ob zusätzlich zu den Mittelwerten auch Kovarianzmatrizen berechnet werden.
| Boolean |
sample_field (optional) |
Feld der Eingabe-Raster- bzw. Feature-Stichprobendaten, um den in Stichproben erfassten Positionen (Klassen) Werte zuzuweisen. Nur Ganzzahlfelder oder Zeichenkettenfelder sind gültige Felder. Die angegebene Zahl oder Zeichenkette wird in der Ausgabe-Signaturdatei als Klassenname verwendet. | Field |
Codebeispiel
In diesem Beispiel wird eine Signaturdatei für Klassen erstellt, die durch in Stichproben erfasste Trainingsgebiete und einen Satz von Eingabe-Raster-Bändern definiert sind.
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/sapyexamples/data" CreateSignatures("sb", "sbtrain", "c:/sapyexamples/output/rbsig.gsg", "COVARIANCE", "")
In diesem Beispiel wird eine Signaturdatei für Klassen erstellt, die durch in Stichproben erfasste Trainingsgebiete und einen Satz von Eingabe-Raster-Bändern definiert sind.
# Name: CreateSignatures_Ex_02.py # Description: Creates an ASCII signature file of classes defined by input # sample data and a set of raster bands. # Requirements: Spatial Analyst Extension # Import system modules import arcpy from arcpy import env from arcpy.sa import * # Set environment settings env.workspace = "C:/sapyexamples/data" # Set local variables inRaster = "sb" inSamples = "sbtrain" outSig = "c:/sapyexamples/output/rbsig02.gsg" sampField = "" # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Execute CreateSignatures CreateSignatures(inRaster, inSamples, outSig, "COVARIANCE", sampField)