Erneutes Abtasten des binären Rasters, um * Anteil * innerhalb des neuen Zellenfensters zu erhalten

9

Ich möchte von einem binären Raster aus Wald / Nicht-Wald mit einer Auflösung von 30 m zu einem Raster mit einer Auflösung von 240 m wechseln, wobei der Wert jeder Zelle der Anteil dieser bewaldeten Zelle ist - dh die Datenwerte für die 240 m-Zellen würden von 0 gehen (wo alle Zellen im 30-m-Raster Null / Nicht-Wald waren) über 0,5 (wo die Hälfte der 30-Meter-Zellen Wald war, die Hälfte Nicht-Wald) bis 1 (wo alle Zellen im 30-Meter-Raster bewaldet waren).

Obwohl vorgeschlagen wurde, keine bilineare Interpolation für diskrete Daten zu verwenden, wäre das Ergebnis mit binären 0/1-Daten, soweit ich das beurteilen kann, ein Durchschnittswert (dh ein Verhältnis zwischen 1 und 0). Ist das ein vernünftiger Weg oder gibt es eine bessere Methode?

Ich kann Arc, QGIS und Idrisi verwenden.

steckteGIS
quelle

Antworten:

13

Blockstatistik verwenden .

Dies funktioniert wie die Fokusstatistik, indem eine statistische Zusammenfassung (z. B. der von Ihnen gewünschte Mittelwert) innerhalb einer bestimmten Nachbarschaft von Zellen (z. B. ein 8 x 8-Quadrat mit 8 = 240 m / 30 m) berechnet wird, außer dass dies nur für a durchgeführt wird regelmäßige Unterteilung des Gitters anstelle einer Reihe überlappender Nachbarschaften, eine in jeder Zelle.

Sie können auch die Fokusstatistik verwenden, wenn Sie dies wirklich möchten: Nachdem Sie den Fokusmittelwert über 8 x 8 Quadrate berechnet haben, können Sie mithilfe des Resamplings des nächsten Nachbarn ein Resample in ein 240-m-Raster durchführen . Wenn die Gitter miteinander registriert sind ( dh denselben Ursprung haben), sollte dies das gleiche Ergebnis liefern wie block statistics. (Ich kann das nicht garantieren: Einige willkürliche Entscheidungen müssen getroffen werden, wenn neue Zellzentren mit alten Zellecken zusammenfallen - wie hier - und wenn verschiedene Komitees die beiden Verfahren kodiert haben, haben sie möglicherweise unterschiedliche Entscheidungen getroffen: wenig in ArcGIS ist wirklich konsistent, fürchte ich.)

Ein anderer Ansatz besteht darin, ein Raster von Zonen zu erstellen, eine Zone pro Quadrat, in der ein Durchschnitt gewünscht wird, und eine zonale Zusammenfassung als Raster durchzuführen . Die Zonen können mathematisch aus Gittern von Zeilen- und Spaltenkoordinaten berechnet werden (mithilfe der Funktion flooroder int, durch Neuklassifizierung oder durch Verknüpfen einer geeigneten Tabelle mit der Attributtabelle).

Abschließend möchte ich bemerken, dass die bilineare Interpolation, obwohl sie tatsächlich Werte im Bereich von 0 bis 1 liefert, nicht das ist, was Sie wollen: Sie funktioniert, indem höchstens vier ursprüngliche (30 m) Gitterzellen gefunden werden, die das Zentrum einer neuen ( 240 m) Zelle und Interpolation nur ihrer Werte. Als solches übersieht es die anderen 8 * 8 - 4 = 60 ursprünglichen Zellen, die in jeden neuen Block fallen. Ich illustriere die bilineare Interpolation unter http://www.quantdec.com/SYSEN597/GTKAV/section9/map_algebra.htm : Die Diskussion beginnt in der Mitte der Seite.

whuber
quelle
Vielen Dank, Whuber, das habe ich getan - Blockstatistik in Arc verwendet, um die Summe der 8x8-Gruppe zu erstellen, dann den Rasterrechner in QGIS verwendet, um durch 64 zu dividieren und den Ursprung, die Ausdehnung und die Zellengröße mit dem Rest meiner Daten auszurichten.
StuckGIS
Mit stickGIS können Sie den zweiten Schritt überspringen, indem Sie die Blockstatistik verwenden, um den Mittelwert jedes 8 x 8-Blocks zu berechnen. Beim Ausrichten des neuen Rasters muss die Rasteranalyseumgebung entsprechend angegeben werden. Dies erfolgt automatisch, wenn dies vor dem Starten der Berechnungen erfolgt. Das reduziert Ihren Workflow auf einen einzigen Schritt: Führen Sie den Blockmittelwert aus.
whuber
4

In ArcGIS werden beim erneuten Abtasten von Daten mithilfe des bilinearen Resamplings nur die Werte der mittleren vier Zellen angezeigt ( Dokumentation zum erneuten Abtasten ). Wenn Sie diese Methode verwenden, verlieren Sie dennoch Daten, wenn Sie den Datenverlust nicht kompensieren.

Da wir wissen, dass Sie für die neu abgetasteten Zellen einen Teil der bewaldeten Zellen suchen, können wir uns dies als die Summe der 30-m-Zellen geteilt durch 64 vorstellen (es gibt 64 30-m-Zellen im 240-m-Block).

Das heißt, wenn wir ein neues Raster mit den Mittelwerten als Summe der Umgebungswerte bei einer Auflösung von 30 m erstellen können, erhalten wir 240 m Zellen, die die Summe der 30 m Zellen sind, wenn wir die Auflösung durch Resample mit nächster Nachbarschaft oder bilinearer Interpolation verringern Startseite. Wir können dies mit dem Fokussummenwerkzeug über dem 30-Meter-Raster tun .

Wenn wir ein 240-m-Brennpunktsummenraster haben, dividieren Sie durch 64, um Ihre Proportionsantwort zu erhalten.

In Idrisi bin ich mir der Bildabtastungsalgorithmen nicht sicher, ebenso in QGIS, aber ich stelle mir vor, dass es etwas Ähnliches gibt. Natürlich können Sie in QGIS das Raster in Python mit scipy ndimage oder ähnlichem verarbeiten.

om_henners
quelle