Funktionsweise von "Focal Flow"
Während das Werkzeug Focal Flow ein Verfahren mit einem "beweglichen Fenster" nutzt, um ein Dataset auf eine ähnliche Weise wie das Werkzeug Focal Statistics zu verarbeiten, ist die Berechnung der Ausgabewerte nicht gleich. Das Werkzeug verwendet die unmittelbare 3x3-Nachbarschaft, um zu bestimmen, welcher der acht Nachbarn einer Zelle in die Zelle hineinfließt. Fluss wird als jede Zelle innerhalb der Nachbarschaft definiert, die einen höheren Wert als die bearbeitete Zelle hat. Oft stellen die Werte Wasserbewegung dar, z. B. wenn Wasser über eine erhöhte oder Neigungsoberfläche fließt, aber Fluss kann jede Bewegung sein, die Sie definieren, z. B. wie Schadstoffe zu einer Position mit einer niedrigeren Konzentration fließen.
Um zu testen, ob eine bestimmte benachbarte Zelle in die bearbeitete Zelle fließt, wird der Wert jeder benachbarten Zelle von der bearbeiteten Zelle subtrahiert. Wenn ein Wert positiv ist, fließt die benachbarte Zelle nicht in die bearbeitete Zelle; wenn er negativ ist, fließt sie hinein. Wenn keine Zellen in die bearbeitete Zelle fließen, erhält die Position den Wert 0. Wenn ein Schwellenwert eingegeben wurde, muss die Differenz zwischen dem Wert der benachbarten Zelle minus dem Wert der bearbeiteten Zelle kleiner als der Schwellenwert sein, damit es zu einem Fluss kommt. Andernfalls gibt es keinen Fluss von der benachbarten Zelle.
Die Verwaltung der Kombination des Flusses von mehreren benachbarten Zellen in eine einzelne bearbeitete Zelle wird durch die binäre Darstellung der bearbeiteten Zelle erreicht. Jedes Bit der binären Darstellung für die bearbeitete Zelle entspricht einer benachbarten Zellenposition. Die Zelle unmittelbar rechts von der bearbeiteten Zelle erhält den Wert 1, der Nachbar unten rechts 2, der Nachbar unmittelbar darunter 4 usw. bis der Wert 128 (Potenz von zwei, da die Darstellung im Binärformat erfolgt) für den letzten Nachbarn oben rechts erreicht wird.
Wenn eine benachbarte Zelle in die bearbeitete Zelle fließt, wird das Bit, das die Nachbarschaftsposition darstellt (siehe vorangehendes Diagramm) aktiviert bzw. ihm wird 1 zugewiesen. Wenn eine benachbarte Zelle nicht in die bearbeitete Zelle fließt, wird das Bit, das die Position darstellt, deaktiviert bzw. ihm wird der Wert 0 zugewiesen. Sobald alle Nachbarschaftspositionen auf Fluss getestet wurden, können keines, eins, mehrere oder alle Bits aktiviert sein (ihnen wurde 1 zugewiesen). Die binäre Darstellung für alle Bits wird in Übereinstimmung mit dem Flussbitmuster wieder in die Basis 10 konvertiert. Der bearbeiteten Zelle wird dann die Basis-10-Zahl zugewiesen. Die Kodierung weist jeder möglichen Kombination von flussaufwärts gerichteten Zahlen eine eindeutige Zahl zu. Die Gesamtzahl von Kombinationen des Flusses in eine bearbeitete Zelle ist 255.
Beispiele
Einige Beispiele, in denen veranschaulicht wird, wie der Ausgabewert abgeleitet wird, folgen:
- Zelle, die Fluss von der linken oberen benachbarten Zelle empfängt
Fluss von der linken oberen benachbarten Zelle hat eine Nachbarschaftsbitposition von 6 (siehe vorherige Grafik zur Richtungskodierung von Focal Flow). Der Basis-10-Wert, der dieser Bitposition entspricht, beträgt 32.
- Zelle, die Fluss von mehreren Zellen empfängt
In der folgenden Grafik hat die bearbeitete Zelle drei umgebende Zellen, die über einen höheren Wert verfügen. Diese sind die Zelle, die unmittelbar zur rechten liegt (die erste Bitposition), die Zelle unten links (die vierte Bitposition) und die Zelle unmittelbar darüber (die siebte Bitposition). Infolgedessen werden das erste, vierte und siebte Bit aktiviert bzw. auf 1 gesetzt. Dieses Bitmuster ergibt 73 als Zahl mit der Basis 10 und wird an die Position der bearbeiteten Zelle im Ausgabe-Raster geschrieben.
- Zelle, die Fluss von allen acht umgebenden Zellen empfängt
Stellen Sie sich eine Zelle vor, in die alle benachbarten Nachbarn fließen. Der Ausgabewert würde einen Wert erhalten, der der Summe aller Bitpositionswerte von 1 bis 128 entspricht. Der resultierende Wert, berechnet als 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1, wäre 255.