Mit der Spatial Analyst-Lizenz verfügbar.
Zusammenfassung
Bearbeitet und aktualisiert eine Signaturdatei durch Zusammenführen, Neunummerieren und Löschen von Klassensignaturen.
Weitere Informationen zur Funktionsweise von "Signaturen bearbeiten"
Verwendung
Das Werkzeug Signaturen bearbeiten ermöglicht die Änderung einer vorhandenen Signaturdatei durch die folgenden Vorgänge:
- Zusammenführen der Signaturen verschiedener Klassen
- Neunummerieren einer Signatur-Klassen-ID
- Löschen unerwünschter Signaturen
Die Eingabe-Signaturdatei muss als ASCII-Signaturdatei vorliegen. Die Datei kann die Ausgabe eines beliebigen Multivariate-Werkzeugs sein, das die Datei erzeugt, die die erforderlichen statistischen Informationen enthält – z. B. Iso-Cluster und Signaturen erstellen. Die Datei muss mindestens zwei Klassen aufweisen. Diese Dateien lassen sich an der Erweiterung .gsg erkennen.
Die Eingabe-Signatur-Remap-Datei ist eine ASCII-Datei, die aus zwei Wertspalten pro Zeile getrennt durch einen Doppelpunkt besteht. Die erste Spalte enthält den Wert der ursprünglichen Klassen-ID. Die zweite Spalte enthält die neuen Klassen-IDs für die Aktualisierung in der Signaturdatei. Sämtliche Einträge in der Datei müssen nach der ersten Spalte in aufsteigender Reihenfolge sortiert sein.
Da sich einige der gewünschten Klassen in bestimmten Fällen statistisch möglicherweise zu sehr ähneln, ist die Zuweisung von Zellen zu eindeutigen Klassen möglicherweise nicht zuverlässig. Beispiel: Sie möchten jeweils eine eigene Klasse für Sumpfgebiete und Auwälder. Diese beiden Klassen lassen sich jedoch nicht leicht unterscheiden. In diesem Fall können Sie das Sumpfgebiet mit allgemeineren Auwäldern zusammenführen. Wenn kein statistischer Unterschied zwischen den Klassen besteht, können Sie eine auch ganz entfernen, da sie beide im Grunde dieselbe Klasse darstellen.
Um einen Satz von Klassen zusammenzuführen, geben Sie für jede Klassen-ID des Satzes als zweiten Wert die gleiche neue Klassen-ID an. Der Signatur-Remap-Datei müssen nur die Klassen hinzugefügt werden, die bearbeitet werden sollen. Alle Klassen, die nicht in der Remap-Datei enthalten sind, werden unverändert beibehalten. Um eine Klassensignatur zu löschen, geben Sie den Wert -9999 für die zweite Spalte der Klasse an. Einer Klassen-ID kann durch Neunummerierung auch ein Wert zugewiesen werden, der nicht in der Eingabesignaturdatei vorhanden ist.
Nachfolgend sehen Sie ein Beispiel für die Eingabe-Signatur-Remap-Datei:
2 : 3 4 : 11 5 : -9999 9 : 3
In diesem Beispiel werden die Klassen 2 und 9 mit 3 zusammengeführt, die Klasse 4 wird mit 11 zusammengeführt, und die Klasse 5 wird gelöscht.
Wenn die Eingabe-Signaturdatei Namen für die Klassensignaturen trägt und wenn die Signaturen in der Eingabe-Signatur-Remap-Datei zusammengeführt werden sollen, wird der Name, der mit dem Wert verknüpft ist, in den die Zusammenführung erfolgen soll, an die Ausgabe-Signaturdatei übertragen.
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 Werkzeugdialogfelds in das Multiband-Raster mithilfe der Schaltfläche "Durchsuchen" neben dem Eintrag Eingabe-Raster-Bänder. Ö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.
Weitere Informationen zur Geoverarbeitung von Umgebungen mit diesem Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.
Syntax
EditSignatures (in_raster_bands, in_signature_file, in_signature_remap_file, out_signature_file, {sample_interval})
Parameter | Erläuterung | Datentyp |
in_raster_bands [in_raster_band,...] | Die Eingabe-Raster-Bänder, für die die Signaturen bearbeitet werden sollen. Die Raster können den Typ "Integer" oder "Gleitkomma" haben. | Raster Layer |
in_signature_file | Eingabe-Signaturdatei, deren Klassensignaturen bearbeitet werden sollen. Die Erweiterung .gsg ist erforderlich. | File |
in_signature_remap_file | Eingabe-ASCII-Remap-Tabelle mit den Klassen-IDs, die zusammengeführt, neu nummeriert bzw. gelöscht werden sollen. Die Erweiterung kann .rmp, .asc oder .txt sein. Die Standardeinstellung ist .rmp. | File |
out_signature_file | Die Ausgabe-Signaturdatei. Die Erweiterung .gsg muss angegeben werden. | File |
sample_interval (optional) | Das Intervall, das für Stichproben verwendet werden soll. Die Standardeinstellung ist 10. | Long |
Codebeispiel
EditSignatures – Beispiel 1 (Python-Fenster)
In diesem Beispiel wird die Signaturdatei auf Grundlage der Eingabe-Remap-Datei bearbeitet.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
EditSignatures("redl123", "c:/sapyexamples/data/zsamp12.gsg",
"c:/sapyexamples/data/zsamp7.rmp",
"c:/sapyexamples/output/redlremap.gsg", "")
EditSignatures – Beispiel 2 (eigenständiges Skript)
In diesem Beispiel wird die Signaturdatei auf Grundlage der Eingabe-Remap-Datei bearbeitet.
# Name: EditSignatures_Ex_02.py
# Description: Edits and updates a signature file by merging, renumbering,
# and deleting class signatures.
# 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 = "redl123"
oldSig = "c:/sapyexamples/data/zsamp12.gsg"
sigRemap = "c:/sapyexamples/data/zsamp7.rmp"
outNewSig = "c:/sapyexamples/output/redlsig.gsg"
interval = ""
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute EditSignatures
EditSignatures(inRaster, oldSig, sigRemap, outNewSig, interval)
Umgebungen
Lizenzinformationen
- ArcGIS Desktop Basic: Erfordert Spatial Analyst
- ArcGIS Desktop Standard: Erfordert Spatial Analyst
- ArcGIS Desktop Advanced: Erfordert Spatial Analyst