Boundary Clean (Spatial Analyst)
Zusammenfassung
Glättet die Grenze zwischen Zonen durch Erweitern und Verkleinern.
Weitere Informationen zur Funktionsweise von "Boundary Clean"
Abbildung
Verwendung
-
Alle Regionen mit weniger als drei Zellen in X- oder Y-Richtung werden geändert.
Die Verkleinerung, die bei der ONE_WAY-Glättung (einmalige Ausführung der Erweiterung und Verkleinerung) bzw. beim ersten Durchgang der TWO_WAY-Glättung erfolgt, unterscheidet sich von der Verkleinerung, die beim zweiten Durchgang der TWO_WAY-Glättung erfolgt.
Beim ersten Durchgang wird für alle bearbeiteten Zellen im erweiterten Raster, die einen Nachbarn mit dem ursprünglichen Wert der bearbeiteten Zelle aufweisen, der ursprüngliche Wert der bearbeiteten Zelle wiederhergestellt. Beim zweiten Durchgang der TWO_WAY-Glättung wird für alle Zellen im erweiterten Raster, die nicht vollständig von acht Zellen mit demselben Wert umgeben sind, der ursprüngliche Wert wiederhergestellt.
-
Die Erweiterung ist für den ersten und zweiten Durchgang identisch.
-
Eingabezellen mit dem Wert "NoData" haben beim ONE_WAY-Sortierungstyp bzw. beim ersten Durchgang der TWO_WAY-Sortierung die niedrigste Priorität. Im zweiten Pass der TWO_WAY-Sortierung haben Zellen mit dem Wert "NoData" die höchste Priorität.
Syntax
Parameter | Erläuterung | Datentyp |
in_raster |
Das Eingabe-Raster, für das die Grenze zwischen Zonen geglättet wird. Es muss den Typ "Ganzzahl" aufweisen. | Raster Layer |
sort_type (optional) |
Gibt den Typ der Sortierung an, der im Glättungsprozess verwendet werden soll. Dies bestimmt die Priorität, durch die Zellen sich in ihre Nachbarn ausdehnen können.
| String |
number_of_runs (optional) |
Gibt die Anzahl der Richtungen an, in der der Glättungsprozess stattfindet.
| Boolean |
Rückgabewert
Name | Erläuterung | Datentyp |
out_raster |
Das generalisierte Ausgabe-Raster. Die Grenzen zwischen Zonen in der Eingabe werden geglättet. | Raster |
Codebeispiel
In diesem Beispiel wird die Grenze zwischen Zonen in absteigender Reihenfolge mit einer bidirektionalen Ausführung geglättet.
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/sapyexamples/data" OutBndCln = BoundaryClean("land", "DESCEND", "TWO_WAY") OutBndCln.save("c:/sapyexamples/output/bndcln_des2")
In diesem Beispiel wird die Grenze zwischen Zonen in absteigender Reihenfolge mit einer bidirektionalen Ausführung geglättet.
# Name: BoundaryClean_Ex_02.py # Description: Smoothes the boundary between zones # by expanding and shrinking it. # 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 = "land" # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Execute BoundaryClean OutBndCln = BoundaryClean(inRaster, "ASCEND", "TWO_WAY") # Save the output OutBndCln.save("c:/sapyexamples/output/bndcln_asc2")