Geomorphon-Landformen (Spatial Analyst)

Zusammenfassung

Berechnet das Geomorphon-Muster aller Zellen eines Eingabe-Oberflächen-Rasters und klassifiziert berechnete Geomorphone in allgemeine Landformtypen.

Verwendung

  • Ein Geomorphon ist die Darstellung einer Landschaft basierend auf Höhenunterschieden innerhalb der Umgebung einer Zielzelle. Insgesamt 498 eindeutige Geomorphon-Muster lassen sich in 10 allgemeine Landformtypen klassifizieren: Ebene, Gipfel, Grat, Schulter, Felssporn, Hang, Senke, Unterhang, Tal und Mulde (Jasiewicz and Stepiski, 2012).

  • Der Parameterwert Ausgabe-Landformen-Raster (out_landforms_raster in Python) ist die primäre Ausgabe. Dabei handelt es sich um ein Raster, das das Ergebnis der Geomorphon-Klassifizierung in 10 Landformtypen mithilfe einer Lookup-Tabelle darstellt. Das Geomorphon-Raster ist eine optionale Ausgabe, die durch Angabe des Parameterwertes Ausgabe-Geomorphon-Raster (out_geomorphons_raster in Python) gespeichert werden kann. Dabei handelt es sich um ein Raster, das die eindeutige Kennung des Geomorphon-Musters darstellt. Mit ihm lassen sich Geomorphone in andere Landformen klassifizieren als in die im Wert Ausgabe-Landformen-Raster.

  • Die Umgebung, der Analysebereich, einer Zielzelle wird durch die Parameter Suchentfernung (search_distance in Python) und Entfernung zum Überspringen (skip_distance in Python) festgelegt. Mit diesen Parametern wird der Radius des Bereichs definiert, der zur Berechnung des Geomorphon-Rasters einer Zielzelle verwendet wird. Mit dem Parameter Entfernung zum Überspringen wird die Entfernung von der Zielzelle angegeben, in der der Analysebereich beginnt. Mit dem Parameter Suchentfernung wird angegeben, wohin sich der Bereich erstreckt. Der Parameterwert Entfernung zum Überspringen muss kleiner sein als der Parameterwert Suchentfernung.

  • Wenn für den Parameter Suchentfernung ein großer Wert verwendet wird, ist das Ergebnis ein großer Analysebereich, der u. U. mehr Informationen über das umgebende Terrain enthält und mit dem eine Zielzelle als Teil eines großen Landschafts-Features besser klassifiziert werden kann. Gleichzeitig werden bei einem großen Wert u. U. kleine Landschafts-Features weggelassen. Beispielsweise kann eine Zelle in einem kleinen Analysebereich (mit einer kleinen Suchentfernung) als Ebene klassifiziert werden, während sie in einem größeren Analysebereich (mit einer großen Suchentfernung) möglicherweise als Tal klassifiziert wird. Kleinere Werte im Parameter Suchentfernung führen zu kleinen Analysebereichen, in denen große Landschafts-Features u. U. in kleinere Features unterteilt und entsprechend klassifiziert werden.

  • Durch Festlegung eines Wertes für die Entfernung zum Überspringen liegt der zielgerichtete Fokus auf weiter von der Zielzelle weg liegenden Bereichen und es wird ein glatteres klassifiziertes Landformen-Raster generiert. Wenn keine Überspringenentfernung angegeben wird, werden bei der Identifizierung des Geomorphon-Rasters alle benachbarten Zellen innerhalb des Analysebereichs berücksichtigt.

  • Mit dem Parameter Winkelgrenzwert für flaches Terrain (angle_threshold in Python) wird der Unterschied zwischen den Sichtbarkeitslinienwinkeln angegeben, unter denen die sichtbare Umgebung als Ebene wahrgenommen wird. Beim Festlegen des Parameterwerts Winkelgrenzwert für flaches Terrain ist die Zellengröße des Parameterwertes Eingabe-Oberflächen-Raster zu berücksichtigen. Beispielsweise bedeutet ein Unterschied von 1 Grad bei einem Eingabe-Raster mit großer Zellengröße mehrere Meter an Höhenunterschied. Wenn der Parameterwert Winkelgrenzwert für flaches Terrain groß ist, führt dies dazu, dass mehr Bereiche als Ebene erkannt werden.

  • Durch Angabe des Wertes Z-Einheit (z_unit in Python) wird die ordnungsgemäße Berechnung der Höhenunterschiede und Sichtbarkeitslinienwinkel sichergestellt, mit denen das Geomorphon-Muster und die Landform-Klassifizierung generiert werden.

    Wenn das vertikale Koordinatensystem des Eingabe-Rasters eine Z-Einheit enthält, wird sie automatisch angewendet. Es wird empfohlen, eine Z-Einheit für das Eingabe-Raster zu definieren, wenn sie im Eingabe-Oberflächen-Raster fehlt. Mit dem Werkzeug Projektion definieren können Sie eine Z-Einheit angeben. Ist eine vertikale Koordinate undefiniert, werden standardmäßig Meter verwendet. Dieses Werkzeug gibt eine Warnung aus, wenn die angegebene Z-Einheit basierend auf der Berechnung der Sichtbarkeitslinienwinkel in jeder Kardinalrichtung fehlerhaft ist. Wenn die DEM-Höhenwerte beispielsweise in Metern angegeben werden, obwohl für den Parameter Z-Einheit Zentimeter angegeben wurden, gilt das Terrain als Ebene, und die Landformen werden nicht richtig klassifiziert.

  • NoData-Zellen im Oberflächen-Raster werden ignoriert, und diesen Zellen wird in den Parameterwerten Ausgabe-Landformen-Raster und Ausgabe-Geomorphon-Raster "NoData" zugewiesen.

  • Referenzliste:

    • Jasiewicz, J and Stepinski, T. J., Geomorphons - a pattern recognition approach to classification and mapping of landforms, Geomorphology, 182, January 15, 2013: 147-56. https://doi.org/10.1016/j.geomorph.2012.11.005

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Oberflächen-Raster

Das Eingabe-Oberflächen-Raster.

Raster Layer
Ausgabe-Geomorphon-Raster
(optional)

Jedem Geomorphon-Raster wird eine eindeutige Kennung zugewiesen, die für jede Zelle im Ausgabe-Geomorphon-Raster gespeichert wird.

Die Ausgabe ist ganzzahlig.

Raster Dataset
Winkelgrenzwert für flaches Terrain
(optional)

Der Winkelgrenzwert (in Grad), unter dem die Zielzelle als Ebene klassifiziert wird.

Der Standardwert ist 1 Grad. Für DEMs mit geringer Auflösung wird empfohlen, einen größeren Wert als den Standardwert anzugeben.

Double
Entfernungseinheiten
(optional)

Gibt die Entfernungseinheit an, die für die Parameter Suchentfernung und Entfernung zum Überspringen verwendet werden.

Die Entfernung wird in der angegebenen Einheit oder Anzahl an Zellen gemessen. Die Standardeinstellung lautet Zellen.

  • ZellenDie Entfernungseinheit ist "Zellen".
  • MeterDie Entfernungseinheit ist "Meter".
  • ZentimeterDie Entfernungseinheit ist "Zentimeter".
  • KilometerDie Entfernungseinheit ist "Kilometer".
  • ZollDie Entfernungseinheit ist "Zoll".
  • FußDie Entfernungseinheit ist "Fuß".
  • YardDie Entfernungseinheit ist "Yard"
  • MeilenDie Entfernungseinheit ist "Meilen".
String
Suchentfernung
(optional)

Die Entfernung ab der Zielzelle, mit der der Radius des Bereichs definiert wird, der zur Identifizierung des Geomorphon-Musters verwendet wird.

Der Standardwert ist 10. Verwenden Sie eine Suchentfernung, die dem Typ und der Größe der Landformen entspricht, die Sie klassifizieren möchten.

Double
Entfernung zum Überspringen
(optional)

Die Entfernung ab der Zielzelle, in der der Analysebereich beginnt. Benachbarte Zellen, die innerhalb dieser Entfernung liegen, werden übersprungen und fließen nicht in die Identifizierung des Geomorphon-Musters ein.

Die Klassifizierung jeder einzelnen Zelle wird festgelegt, indem die benachbarten Zellen innerhalb der Entfernung zum Überspringen vom Mittelpunkt der Zielzelle beurteilt werden.

Double
Z-Einheit
(optional)

Gibt die lineare Einheit an, die für vertikale Z-Werte verwendet werden soll.

Sie wird durch ein vertikales Koordinatensystem definiert, sofern vorhanden. Falls kein vertikales Koordinatensystem vorhanden ist, müssen Sie die Z-Einheit mithilfe der Einheitenliste definieren, um eine korrekte geodätische Berechnung sicherzustellen. Die Standardeinstellung lautet Meter.

  • ZollDie lineare Einheit ist Zoll.
  • FußDie lineare Einheit ist Fuß.
  • YardDie lineare Einheit ist Yard.
  • Meilen (US)Die lineare Einheit ist Meilen.
  • SeemeileDie lineare Einheit ist Seemeilen.
  • MillimeterDie lineare Einheit ist Millimeter.
  • ZentimeterDie lineare Einheit ist Zentimeter.
  • MeterDie lineare Einheit ist Meter.
  • KilometerDie lineare Einheit ist Kilometer.
  • DezimeterDie lineare Einheit ist Dezimeter.
String

Rückgabewert

BeschriftungErläuterungDatentyp
Ausgabe-Landformen-Raster

Das als Ausgabe klassifizierte Landformen-Raster.

Die Ausgabe ist ganzzahlig.

Jeder Wert entspricht einem bestimmten Landformtyp: Ebene: Zellenwert 1, Gipfel: Zellenwert 2, Grat: Zellenwert 3, Schulter: Zellenwert 4, Felssporn: Zellenwert 5, Hang: Zellenwert 6, Senke: Zellenwert 7, Unterhang: Zellenwert 8, Tal: Zellenwert 9, Mulde: Zellenwert 10.

Raster

GeomorphonLandforms(in_surface_raster, {out_geomorphons_raster}, {angle_threshold}, {distance_units}, {search_distance}, {skip_distance}, {z_unit})
NameErläuterungDatentyp
in_surface_raster

Das Eingabe-Oberflächen-Raster.

Raster Layer
out_geomorphons_raster
(optional)

Jedem Geomorphon-Raster wird eine eindeutige Kennung zugewiesen, die für jede Zelle im Ausgabe-Geomorphon-Raster gespeichert wird.

Die Ausgabe ist ganzzahlig.

Raster Dataset
angle_threshold
(optional)

Der Winkelgrenzwert (in Grad), unter dem die Zielzelle als Ebene klassifiziert wird.

Der Standardwert ist 1 Grad. Für DEMs mit geringer Auflösung wird empfohlen, einen größeren Wert als den Standardwert anzugeben.

Double
distance_units
(optional)

Gibt die Entfernungseinheit an, die für die Parameter Suchentfernung und Entfernung zum Überspringen verwendet werden.

Die Entfernung wird in der angegebenen Einheit oder Anzahl an Zellen gemessen. Die Standardeinstellung lautet Zellen.

Gibt die für die Parameter search_distance und skip_distance verwendete Entfernungseinheit an.

Die Entfernung wird in der angegebenen Einheit oder Anzahl an Zellen gemessen. Die Standardeinstellung ist CELLS.

  • CELLSDie Entfernungseinheit ist "Zellen".
  • METERSDie Entfernungseinheit ist "Meter".
  • CENTIMETERSDie Entfernungseinheit ist "Zentimeter".
  • KILOMETERSDie Entfernungseinheit ist "Kilometer".
  • INCHESDie Entfernungseinheit ist "Zoll".
  • FEETDie Entfernungseinheit ist "Fuß".
  • YARDSDie Entfernungseinheit ist "Yard"
  • MILESDie Entfernungseinheit ist "Meilen".
String
search_distance
(optional)

Die Entfernung ab der Zielzelle, mit der der Radius des Bereichs definiert wird, der zur Identifizierung des Geomorphon-Musters verwendet wird.

Der Standardwert ist 10. Verwenden Sie eine Suchentfernung, die dem Typ und der Größe der Landformen entspricht, die Sie klassifizieren möchten.

Double
skip_distance
(optional)

Die Entfernung ab der Zielzelle, in der der Analysebereich beginnt. Benachbarte Zellen, die innerhalb dieser Entfernung liegen, werden übersprungen und fließen nicht in die Identifizierung des Geomorphon-Musters ein.

Die Klassifizierung jeder einzelnen Zelle wird festgelegt, indem die benachbarten Zellen innerhalb der Entfernung zum Überspringen vom Mittelpunkt der Zielzelle beurteilt werden.

Double
z_unit
(optional)

Gibt die lineare Einheit an, die für vertikale Z-Werte verwendet werden soll.

Sie wird durch ein vertikales Koordinatensystem definiert, sofern vorhanden. Falls kein vertikales Koordinatensystem vorhanden ist, müssen Sie die Z-Einheit mithilfe der Einheitenliste definieren, um eine korrekte geodätische Berechnung sicherzustellen. Die Standardeinstellung lautet Meter.

  • INCHDie lineare Einheit ist Zoll.
  • FOOTDie lineare Einheit ist Fuß.
  • YARDDie lineare Einheit ist Yard.
  • MILE_USDie lineare Einheit ist Meilen.
  • NAUTICAL_MILEDie lineare Einheit ist Seemeilen.
  • MILLIMETERDie lineare Einheit ist Millimeter.
  • CENTIMETERDie lineare Einheit ist Zentimeter.
  • METERDie lineare Einheit ist Meter.
  • KILOMETERDie lineare Einheit ist Kilometer.
  • DECIMETERDie lineare Einheit ist Dezimeter.
String

Rückgabewert

NameErläuterungDatentyp
out_landforms_raster

Das als Ausgabe klassifizierte Landformen-Raster.

Die Ausgabe ist ganzzahlig.

Jeder Wert entspricht einem bestimmten Landformtyp: Ebene: Zellenwert 1, Gipfel: Zellenwert 2, Grat: Zellenwert 3, Schulter: Zellenwert 4, Felssporn: Zellenwert 5, Hang: Zellenwert 6, Senke: Zellenwert 7, Unterhang: Zellenwert 8, Tal: Zellenwert 9, Mulde: Zellenwert 10.

Raster

Codebeispiel

GeomorphonLandforms – Beispiel 1 (Python-Fenster)

Im folgenden Beispiel wird die Verwendung dieses Werkzeugs im Python-Fenster veranschaulicht.

In diesem Beispiel wird unter Verwendung der Standardwerte für alle optionalen Parameter ein Landformen-Raster aus einem Eingabe-Oberflächen-Raster generiert.

from arcpy.sa import *
outGeomorphonLandforms = GeomorphonLandforms("elevation_1m.tif", "", "", "", "", "", "")
outGeomorphonLandforms.save("C:/sapyexamples/output/outgeorphonlandforms01.tif")
GeomorphonLandforms – Beispiel 2 (eigenständiges Skript)

Im folgenden Beispiel wird die Verwendung dieses Werkzeugs in einem eigenständigen Python-Skript veranschaulicht.

In diesem Beispiel wird ein Landformen-Raster generiert, das aus Geomorphonen klassifiziert wurde, die über eine Suchentfernung von 50 Metern berechnet wurden, wobei Zellen in einer Entfernung von bis zu 2 Metern übersprungen werden.

# Name: GeomorphonLandforms_standalone.py
# Description: Calculates geomorphons over a search distance of 50 meters, skipping cells within 2 meters
# of the target cell. Terrain is considered flat if the difference between elevation angles is less or equal to 2 degrees.
# The calculated geomorphons are classified into landforms and saved as a raster. 
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy.sa import *

# Set environment settings
arcpy.env.workspace = "C:/sapyexamples/data"

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Set local variables
inRaster = "elevation_1m.tif"
inAngleThreshold = 2
inDistanceUnits = "METERS"
inSearchDistance = 50
inSkipDistance = 2
inZunit = "METER"

# Execute the tool
outGeomorphonLandforms = GeomorphonLandforms(inRaster, "", inAngleThreshold, inDistanceUnits,
                                         inSearchDistance, inSkipDistance, inZunit)

# Save the output 
outGeomorphonLandforms.save("C:/sapyexamples/output/outgeomorphonlandforms02.tif")