Ich habe eine große Datenmenge in Form von CSV, die UTM-Koordinaten als X
und Y
und einen Höhenwert als Z
Information enthält. Ich muss diese Daten zur weiteren Analyse in ein DEM als GeoTIFF konvertieren. In diesem Fall bedeutet eine große Menge 16 m. Linien mit einem Punkt in den X
, Y
und Z
pro Zeile. Die Punkte sind gleichmäßig verteilt, daher ist keine Interpolation erforderlich. Jeder Punkt muss nur in eine Rasterzelle konvertiert werden.
Die Originaldaten kamen ohne Trennzeichen mit festen Spaltenbreiten. Ich habe bereits herausgefunden, wie man die Dateisyntax konvertiert, um ein Trennzeichen anstelle fester Breiten zu verwenden und alle Leerzeichen mit dem Stream-Texteditor sed zu entfernen . Von hier an, normalerweise würde mein Workflow wird die Daten in ArcGIS zu importieren , indem Sie einen Feature - Class von den Erstellung X
, Y
und Z
Daten und in einem zweiten Schritt, den Punkt Shape - Datei in eine GeoTIFF Umwandlung, die unter Verwendung von Punkt - zu - Raster - Werkzeug. Die Datei, die ich derzeit habe, ist jedoch viel zu groß für diesen Prozess.
Anstelle des oben beschriebenen Workflows suchte ich nach einer effizienten Alternative und entdeckte GDAL. Das gdal_translate
nächstgelegene unterstützte Format, das ich in der Liste der unterstützten Dateitypen finden kann, ist jedoch das ASCII-Raster, jedoch kein durch Kommas getrenntes XYZ. Eine weitere Schwierigkeit besteht darin, dass ich UTM-Koordinaten habe , während die meisten Beispiele Dezimalgradkoordinaten zu verwenden scheinen. Ich muss jedoch im UTM-System bleiben (oder zumindest muss sich mein GeoTIFF-Ausgang in einem UTM-Koordinatensystem befinden).
Ich suche nach einer Möglichkeit , die CSV XYZ mithilfe von GDAL in ein GeoTIFF umzuwandeln , konnte jedoch bisher keine Beispiele finden, die sich genau mit diesem Problem befassen. Ich würde mich sehr über einige Hinweise oder sogar Codebeispiele freuen.
Antworten:
Sie können dies mit GDAL tun, es unterstützt direkt das XYZ-Format . Es spielt keine Rolle, ob Ihre Koordinaten UTM sind, gdal_translate wird im selben Koordinatensystem ausgegeben.
Die Konvertierung in GeoTIFF ist also so einfach wie:
Weitere Verwendungsinformationen finden Sie im GeoTIFF- Dokument für Ausgabeoptionen (z. B. Komprimierung) und im Dokument gdal_translate . Insbesondere sollten Sie das Koordinatensystem mit dem
-a_srs
Parameter angeben .Durch Kommas / Leerzeichen getrennte und feste Spaltenbreiten mit und ohne Kopfzeile werden unterstützt.
Die einzigen Fallstricke, die mir bekannt sind, sind:
Die Datei muss korrekt sortiert sein (nach Y, dann nach X).
quelle
-a_srs EPSG:12345
Open Data DGM200 von Deutschland: https://gdz.bkg.bund.de/index.php/default/open-data/digitales-gelandemodell-gitterweite-200-m-dgm200.html
Laden Sie die xyz-Datei herunter: https://daten.gdz.bkg.bund.de/produkte/dgm/dgm200/aktuell/dgm200.utm32s.xyzascii.zip
Konvertieren Sie xyz in eine GeoTIFF-Datei:
quelle