Ich habe eine große Rasterdatei (129600 x 64800 Pixel) mit globalen Gewässern (1-Bit-Werte 0 und 1) und versuche, Ozean- und Binnenwasserküsten zu extrahieren.
Ich habe mit ArcGIS und QGIS versucht, von Raster zu Polylinie zu konvertieren, aber es dauert ewig.
Kennt jemand einen besseren / schnelleren Weg (Python oder R) oder ein besseres Werkzeug für diese Aufgabe?
Aktualisieren
- R: rasterToContour ist zwar schnell und präzise, aber wenn Sie einen sehr großen Datensatz wie meinen haben (8.398.080.000 Pixel), benötigen Sie entweder sehr viel RAM (mehr als 16 GB) oder Sie erzwingen, dass R mehr Daten auf der Festplatte verarbeitet wird auch ewig dauern.
- Python / GDAL: gdal_poligonize erstellt Polygone anstelle von Polylinien
Update 2
- R rasterToContour: rasterToContour liefert nicht die gewünschten Ergebnisse. Im Vergleich zu ArcGIS (Raster zu Polygon gefolgt von Feature zu Linie) wird der genaue Pixelumriss nicht extrahiert, wie in den folgenden Beispielen gezeigt.
UPDATE 3
Python / GDAL: Ich habe gdal_polygonize über die Befehlszeile für ArcGIS in einem Test-Dataset ausgeführt und die Ergebnisse waren äußerst klar:
- gdal: 49 sekunden
- ArcGIS: 1,84 Sekunden