Fließrichtung (Spatial Analyst)

Mit der Spatial Analyst-Lizenz verfügbar.

Zusammenfassung

Erstellt ein Raster für die Fließrichtung von jeder Zelle zu den jeweiligen folgenden Nachbarzellen mit den Methoden D8, Multiple Flow Direction (MFD) oder D-Infinity (DINF).

Weitere Informationen zur Funktionsweise des Werkzeugs "Fließrichtung"

Abbildung

Abbildung des Werkzeugs "Fließrichtung"
Flow_Dir = FlowDirection(Elev_Ras, #, #, D8)

Verwendung

  • Das Werkzeug Fließrichtung unterstützt drei Fließmodellalgorithmen: D8, Multiple Flow Direction (MFD) und D-Infinity (DINF).

  • Die D8-Methode modelliert die Fließrichtung von jeder Zelle zur jeweiligen Nachbarzelle mit der steilsten Neigung.

    Wenn das Werkzeug Fließrichtung mit der Methode D8 ausgeführt wird, ist seine Ausgabe ein ganzzahliges Raster, dessen Werte zwischen 1 und 255 liegen. Die Werte für die einzelnen Entfernungen vom Mittelpunkt sind Folgende:

    Fließrichtungswerte

    Wenn beispielsweise die Richtung der stärksten Absenkung links von der aktuellen bearbeiteten Zelle liegt, liegt ihr Wert für die Fließrichtung bei 16.

    • Wenn eine Zelle niedriger liegt als ihre acht Nachbarn, erhält diese Zelle den Wert ihres niedrigsten Nachbarn, und der Fluss wird als zu dieser Zelle führend definiert. Wenn mehrere Nachbarn den niedrigsten Wert aufweisen, erhält die Zelle immer noch diesen Wert, der Fluss wird jedoch anhand einer der beiden im Folgenden beschriebenen Methoden definiert. Dies wird verwendet, um aus nur einer einzigen Zelle bestehende Senken herauszufiltern, die als Rauschen betrachtet werden.

    • Wenn eine Zelle in mehrere Richtungen die gleiche Änderung im Z-Wert aufweist und diese Zelle zu einer Senke gehört, gilt die Fließrichtung als nicht definiert. In diesem Fall ist der Wert für diese Zelle im Ausgabe-Fließrichtungs-Raster die Summe dieser Richtungen. Wenn beispielsweise die Änderung im Z-Wert nach rechts (Fließrichtung = 1) und nach unten (Fließrichtung = 4) identisch ist, ist die Fließrichtung für das betreffende Pixel 1 + 4 = 5. Zellen mit nicht definierter Fließrichtung können mit dem Werkzeug Senke gekennzeichnet werden.

    • Wenn eine Zelle in mehrere Richtungen die gleiche Änderung im Z-Wert aufweist und nicht zu einer Senke gehört, wird die Fließrichtung über eine Lookup-Tabelle zugewiesen, die die wahrscheinlichste Richtung definiert. Siehe Greenlee (1987).

    • Das Ausgabe-D8-Absenkungs-Raster berechnet sich aus der Differenz im Z-Wert dividiert durch die Pfadlänge zwischen den Zellenmittelpunkten und wird als Prozentsatz ausgedrückt. Für benachbarte Zellen ist dies analog zur prozentualen Neigung zwischen den Zellen. Auf einer ebenen Fläche wird diese Entfernung zur Entfernung zu der nächsten Zelle mit niedrigerer Höhe. Das Ergebnis ist eine Karte des prozentualen Anstiegs im Pfad des steilsten Gefälles ausgehend von jeder Zelle.

  • Der von Qin et al. (2007) beschriebene MFD-Algorithmus teilt den Abfluss einer Zelle auf alle niedrigeren Nachbarzellen auf. Anhand der lokalen Terrainbedingungen wird flexibel ein Exponent für die Abflussverteilung generiert. Mit diesem wird der Anteil bestimmt, der in alle niedrigeren Nachbarzellen abfließt.

    Hinweis:

    Bei Verwendung des Fließrichtungstyps MFD können Ausgabe-Fließrichtungs-Raster im Cloud-Raster-Format (CRF), z. B. flowdir1.crf, nur in einem Ordner-Workspace erstellt werden.

    Wenn die Ausgabe von MFD-Fließrichtungen in eine Karte eingebunden wird, werden nur die D8-Fließrichtungen angezeigt. Bei MFD-Fließrichtungen kann es vorkommen, dass sich auf die einzelnen Zellen jeweils mehrere Werte beziehen (wobei jeder Wert einem Teil des Abflusses zu den jeweiligen niedrigeren Nachbarn entspricht); dies lässt sich nur schwer visuell darstellen. Das Ausgabe-Raster einer MFD-Fließrichtung ist jedoch eine Eingabe, die vom Werkzeug Abflussakkumulation erkannt wird. Dieses nutzt die proportionalen MFD-Fließrichtungen und akkumuliert den Abfluss von jeder Zelle zu allen niedrigeren Nachbarn.

  • Die von Tarboton (1997) beschriebene Abflussmethode DINF bestimmt die Fließrichtung als steilste Abwärtsneigung von acht dreieckigen Facetten, die auf Basis eines 3 x 3 großen und auf die betreffende Zelle zentrierten Zellenfensters entworfen werden. Die Ausgabe der Fließrichtung ist ein Gleitkomma-Raster, das als einzelner Winkel dargestellt wird und gegen den Uhrzeigersinn von 0 (in Richtung Osten) bis 360 (erneut in Richtung Osten) verläuft.

  • Ist der Parameter Abfluss von Randzellen nach außen erzwingen deaktiviert (Standardeinstellung) (force_flow = "NORMAL" in Python) erfolgt der Fluss bei einer Zelle am Rand des Oberflächen-Rasters hin zur inneren Zelle mit der steilsten Absenkung beim Z-Wert. Wenn die Absenkung kleiner oder gleich 0 ist, erfolgt der Fluss bei der Zelle aus dem Oberflächen-Raster hinaus.

  • Dieses Werkzeug unterstützt die parallele Verarbeitung. Wenn Ihr Computer mit mehreren Prozessoren oder mit Prozessoren, die mehrere Kerne haben, ausgestattet ist, kann eine höhere Leistung erzielt werden, vor allem bei größeren Datasets. Weitere Informationen zu dieser Funktion sowie zu den Konfigurationsmöglichkeiten finden Sie im Hilfethema Parallele Verarbeitung mit Spatial Analyst.

    Beim Einsatz von paralleler Verarbeitung werden für die Verwaltung der zu verarbeitenden Datenblöcke temporäre Daten generiert. Der Standardordner für temporäre Daten befindet sich auf dem lokalen Laufwerk C:. Sie können den Speicherort ändern, indem Sie eine Systemumgebungsvariable mit dem Namen "TempFolders" einrichten und den Pfad zum gewünschten Ordner angeben (z. B. E:\RasterCache). Wenn Sie über Administratorberechtigungen für Ihren Computer verfügen, können Sie dies auch mit einem Registrierungsschlüssel (z. B. [HKEY_CURRENT_USER\SOFTWARE\ESRI\ArcGISPro\Raster]) tun.

    Das Werkzeug verwendet standardmäßig 50 % der verfügbaren Kerne. Wenn die Eingabedaten aus weniger als 5.000 Zeilen und 5.000 Spalten mit Zellen bestehen, können weniger Kerne verwendet werden. Sie können die Anzahl der Kerne, die das Werkzeug verwendet, mit der Umgebung Faktor für parallele Verarbeitung ändern.

  • Wenn das Ausgabe-Raster-Format .crf lautet, wird in diesem Werkzeug die Raster-Speicherumgebung Pyramide unterstützt. In der Ausgabe werden standardmäßig Pyramiden erstellt. Bei anderen Ausgabeformaten wird diese Umgebung nicht unterstützt, und es werden keine Pyramiden erstellt.

  • Weitere Informationen zu den Geoverarbeitungsumgebungen für dieses Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.

  • Referenzliste:

    Greenlee, D. D. 1987. "Raster and Vector Processing for Scanned Linework." Photogrammetric Engineering and Remote Sensing 53 (10): 1383–1387.

    Qin, C., Zhu, A. X., Pei, T., Li, B., Zhou, C., und Yang, L. 2007. "An adaptive approach to selecting a flow partition exponent for a multiple flow direction algorithm." International Journal of Geographical Information Science 21(4): 443-458.

    Tarboton, D. G. 1997. "A new method for the determination of flow directions and upslope areas in grid digital elevation models." Water Resources Research 33(2): 309-319.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Oberflächen-Raster

Das Eingabe-Raster, das eine kontinuierliche Oberfläche darstellt.

Raster Layer
Abfluss von Randzellen nach außen erzwingen
(optional)

Gibt an, ob Randzellen immer nach außen fließen oder den normalen Flussregeln folgen.

  • Deaktiviert: Wenn die maximale Absenkung auf der Innenseite einer Randzelle größer als 0 ist, wird die Fließrichtung wie üblich bestimmt; andernfalls geht die Fließrichtung in Richtung Rand. Für Zellen, bei denen der Fluss vom Rand des Oberflächen-Rasters nach innen erfolgen sollte, wird tatsächlich diese Fließrichtung verwendet. Dies ist die Standardeinstellung.
  • Aktiviert: Bei allen Zellen am Rand des Oberflächen-Rasters erfolgt der Fluss vom Oberflächen-Raster nach außen.
Boolean
Ausgabe-Absenkungs-Raster
(optional)

Ein optionales Ausgabe-Absenkungs-Raster.

Das Absenkungs-Raster gibt das Verhältnis zwischen der maximalen Änderung in der Höhe zurück, ausgehend von jeder Zelle entlang der Fließrichtung und der Pfadlänge zwischen den Zellenmittelpunkten, ausgedrückt als Prozentsatz.

Diese Ausgabe ist vom Typ "Gleitkomma".

Raster Dataset
Fließrichtungstyp
(optional)

Gibt die bei der Berechnung von Fließrichtungen verwendete Abflussmethode an.

  • D8Die Fließrichtung wird mit der D8-Methode ermittelt. Diese weist die Fließrichtung zur jeweiligen Nachbarzelle mit der steilsten Neigung zu. Dies ist die Standardeinstellung.
  • MFDDie Fließrichtung basiert auf der Abflussmethode MFD. Die Fließrichtung wird gemäß einem adaptiven Exponenten für Partitionen über alle niedrigeren Nachbarn hinweg partitioniert.
  • DINFDie Fließrichtung basiert auf der Abflussmethode DINF. Diese weist die Fließrichtung unter Verwendung der steilsten Neigung einer dreieckigen Facette zu.
String

Rückgabewert

BeschriftungErläuterungDatentyp
Ausgabe-Fließrichtungs-Raster

Das Ausgabe-Raster, das die Fließrichtung von jeder Zelle zu ihren jeweils niedrigeren Nachbarn unter Verwendung der D8-, MFD- oder DINF-Methode zeigt.

Diese Ausgabe ist immer ganzzahlig.

Raster

FlowDirection(in_surface_raster, {force_flow}, {out_drop_raster}, {flow_direction_type})
NameErläuterungDatentyp
in_surface_raster

Das Eingabe-Raster, das eine kontinuierliche Oberfläche darstellt.

Raster Layer
force_flow
(optional)

Gibt an, ob Randzellen immer nach außen fließen oder den normalen Flussregeln folgen.

  • NORMALWenn die maximale Absenkung auf der Innenseite einer Randzelle größer als 0 ist, wird die Fließrichtung wie üblich bestimmt; andernfalls geht die Fließrichtung in Richtung Rand. Für Zellen, bei denen der Fluss vom Rand des Oberflächen-Rasters nach innen erfolgen sollte, wird tatsächlich diese Fließrichtung verwendet. Dies ist die Standardeinstellung.
  • FORCEBei allen Zellen am Rand des Oberflächen-Rasters erfolgt der Fluss vom Oberflächen-Raster nach außen.
Boolean
out_drop_raster
(optional)

Ein optionales Ausgabe-Absenkungs-Raster.

Das Absenkungs-Raster gibt das Verhältnis zwischen der maximalen Änderung in der Höhe zurück, ausgehend von jeder Zelle entlang der Fließrichtung und der Pfadlänge zwischen den Zellenmittelpunkten, ausgedrückt als Prozentsatz.

Diese Ausgabe ist vom Typ "Gleitkomma".

Raster Dataset
flow_direction_type
(optional)

Gibt die bei der Berechnung von Fließrichtungen verwendete Abflussmethode an.

  • D8Die Fließrichtung wird mit der D8-Methode ermittelt. Diese weist die Fließrichtung zur jeweiligen Nachbarzelle mit der steilsten Neigung zu. Dies ist die Standardeinstellung.
  • MFDDie Fließrichtung basiert auf der Abflussmethode MFD. Die Fließrichtung wird gemäß einem adaptiven Exponenten für Partitionen über alle niedrigeren Nachbarn hinweg partitioniert.
  • DINFDie Fließrichtung basiert auf der Abflussmethode DINF. Diese weist die Fließrichtung unter Verwendung der steilsten Neigung einer dreieckigen Facette zu.
String

Rückgabewert

NameErläuterungDatentyp
out_flow_direction_raster

Das Ausgabe-Raster, das die Fließrichtung von jeder Zelle zu ihren jeweils niedrigeren Nachbarn unter Verwendung der D8-, MFD- oder DINF-Methode zeigt.

Diese Ausgabe ist immer ganzzahlig.

Raster

Codebeispiel

FlowDirection: Beispiel 1 (Python-Fenster)

In diesem Beispiel wird ein D8-Fließrichtungs-Raster aus einem Eingabe-Grid-Raster für die Höhenoberflächen erstellt.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outFlowDirection = FlowDirection("elevation", "NORMAL")
outFlowDirection.save("C:/sapyexamples/output/outflowdir01")
FlowDirection: Beispiel 2 (eigenständiges Skript)

In diesem Beispiel wird ein D8-Fließrichtungs-Raster aus einem Eingabe-Grid-Raster für die Höhenoberflächen erstellt.

# Name: FlowDirection_Example.py
# Description: Creates a raster of flow direction from each cell to its
#    steepest downslope neighbor.
# 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
inSurfaceRaster = "elevation"
outDropRaster = "C:/sapyexamples/output/dropraster"

# Execute FlowDirection
outFlowDirection = FlowDirection(inSurfaceRaster, "FORCE", outDropRaster)

# Save the output 
outFlowDirection.save("C:/sapyexamples/output/outflowdir02")

Verwandte Themen