Mehr

Mehrere überlappende Raster kombinieren - maximalen Wert behalten?

Mehrere überlappende Raster kombinieren - maximalen Wert behalten?


Ich habe 40 überlappende Rastergitter (abgeleitet von einer Flutmodellierungssoftware), die ich so kombinieren möchte, dass nur der Maximalwert in einem der angegebenen Raster an jeder Rasterposition in einem neuen Rasterraster beibehalten wird.

Gibt es eine Anwendung oder einen Befehl, der die QGIS-Suite verwendet, die dies zulassen würde, ohne unhandlich zu sein?


Probieren Sie das SAGA-Werkzeug "Mosaik-Rasterebenen" aus:

Wählen Sie im Menü "Verarbeitung" die Option "Toolbox" - geben Sie "Mosaik" in das Suchfeld ein, um das Werkzeug "Mosaik-Rasterebenen" anzuzeigen:

Starten Sie das Tool, wählen Sie Ihre Eingaben und beachten Sie die Option "Überlappende Bereiche", die einen "Maximum"-Parameter hat:

Wenn Sie etwas automatisierteres suchen, helfen Ihnen die GDAL-Tools.


Meine Antwort ist veraltet, aber ich konnte an anderer Stelle keine akzeptable Antwort finden, und leider funktionierte die obige SAGA-basierte Lösung aus unbekannten Gründen nicht für mich. Eine andere Option, die Sie in Betracht ziehen könnten, ist die Verwendung von GDAL. Insbesondere das Tool gdalbuildvrt http://www.gdal.org/gdalbuildvrt.html

Solange Ihr Satz von Eingabe-Rastern das gleiche a) Format, b) Projektion, c) Zellengröße und d) Ausdehnung hat, können Sie die Option "-r maximum" von gdalbuildvrt.py in der Befehlszeile verwenden. Wenn Sie die OSGeo4w-Shell installiert haben, öffnen Sie diese und die Syntax wäre (vorausgesetzt, Sie verwenden .tif-Dateien)…

gdalbuildvrt -r maximum -input_file_list [your_list_of_raster_filepaths.txt] output_raster_name.tif

In Windows ist eine einfache Möglichkeit, eine Liste von Rasterdateien für die Eingabe in die obige Option -input_file_list abzuleiten, …

  1. Öffne ein cmd-Fenster
  2. Navigieren Sie zu dem Ordner, der Ihre Raster enthält
  3. Geben Sie den folgenden Befehl ein…

    dir /b /s *.tif>Dateiliste.txt

Ich hatte das gleiche Problem für einen Satz von 12 Rastern (GeoTiff), wo ich den maximalen Wert aller überlappenden Raster benötigte, die in einem einzigen Raster gespeichert sind. Leider konnte ich dies weder mit dem SAGA Mosaic-Tool noch mit gdal_calc erreichen.

Viel Glück!


Wenn sie alle die gleiche Ausdehnung haben, können Sie die TUFLOW-Dienstprogramme ausprobieren, um die Gitter zu umhüllen. Das Tool gibt auch ein zweites Raster aus, das farbcodiert werden kann, um anzuzeigen, welches Ihrer 40 Raster an jedem Standort die höchste Stufe erzeugt hat.

Mehr Infos hier: https://wiki.tuflow.com/index.php?title=ASC_to_ASC#Maximum

Ich habe dieses Tool in der Vergangenheit für andere Raster als TUFLOW verwendet. Es funktioniert für asc- und flt-Formate, solange die Ausdehnung aller Raster gleich ist. Normalerweise liste ich alle Dateien in einer Textdatei auf (Typdir > Dateiname.txtin cmd) und erstellen Sie dann die Batch-Befehle, die in etwa wie folgt aussehen. Das ^ am Ende der Zeile ermöglicht es Ihnen, Ihre Raster aufzulisten, anstatt sie in einer riesigen langen Zeile zu haben.

set EXE=C:TUFLOWUtilitiesasc_to_ascasc_to_asc_w64.exe set FILE=Y:FilePathToGridsMaxGrids md %FILE%CriticalDuration Aufruf %EXE% -b -max^ %FILE%Run1_100yr10pc_030.fl_EX_^ %  ^ Run1_100yr10pc_060m_EX_H_Max.flt% FILE%  ^ Run1_100yr10pc_090m_EX_H_Max.flt% FILE%  ^ Run1_100yr10pc_120m_EX_H_Max.flt% FILE%  ^ Run1_100yr10pc_180m_EX_H_Max.flt% FILE%  ^ Run1_100yr10pc_270m_EX_H_Max.flt% FILE%  Run1_100yr10pc_360m_EX_H_Max.flt ^ -out% FILE %CriticalDurationRun1_100yr10pc_CritDur_H_EX

Verwenden Sie den Rasterrechner von gdal (Toolbox). Hier müssen Sie die verschiedenen Ebenen hinzufügen und welches Band Sie kombinieren möchten. Verwenden Sie als Funktionsmaximum (A, B) (wenn Sie 2 Schichten haben). FUNKTIONIERT!