Boundary Clean (Spatial Analyst)
Zusammenfassung
Glättet die Grenze zwischen Zonen durch Erweitern und Verkleinern.
Weitere Informationen zur Funktionsweise von "Boundary Clean"
Bild
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")