GDAL - Tipps und Tricks

Aus Geoinformation HSR
Wechseln zu: Navigation, Suche

Zurück zu GDAL.


How To

Wichtige Rastermanipulationen: Auf den Seiten des "GIS-Kompetenzzentrums Uster" gibt es verschiedene Tipps zur Rasterbilder-Konvertierung mit GDAL (siehe [1]):

  • Rasterbild ausschneiden
  • Projektion und Metadaten zuweisen
  • Resampling
  • Rasterkacheln zusammenfassen mit gdal_merge
  • Pyramiden (Overviews) berechnen für schnellen Dateizugriff
  • JPEG-Komprimierung (z.B. für Luftbilder oder Schattierungen)
  • PDF-Dateien mit Ghostscript rasterisieren
  • ASCII GRID zu TIFF-File konvertieren

How to "Get height given coords from a large DTM" (ST_Value):

  • Siehe Diskussion in PostGIS-Users Mailing List (5.12.2011): [2]

Tiled Raster Files

Looking for raster map services? See Hintergrundkarten#Our_favourites.

See also GeoServer.

---

Convert TIFF (tif+tfw) to GeoTIFF with GDAL:

 gdal_translate -of GTiff -co "TILED=YES" input.tif tiledGeotif.tif

By using the TILED=YES parameter we ask the command to prepare the file for tiles rendering. Now the size of the resulting file is larger.

Then create overviews for the GeoTIFF file:

 gdaladdo -r average tiledGeotif.tif 2 4 8 16


Pyramiden-Bilder erstellen

Problem und Ausgangslage: Grosse Rasterbilder machen den Bildaufbau langsam oder übersteigen gar das Memory.

Lösung:

  • Bilder kacheln und ggf. in verschiedener Auflösung speichern (sog. Pyramiden-Bilder).
  • Die GIS-Software lädt dabei zunächst nicht das eigentliche Bild, sondern eine Index-Datei (je nach GIS im Format .vrt oder Shapefile).
  • Das empfohlene Format ist TIF. ECW könnte ev. schneller sein, müsste man in einem zweiten Performance-Schritt anschauen.

Voraussetzungen:

Vorgehen:

  • Angenommen das grosse Bild heisst myimage.tif
  • Ziel ist, eine Datei myimage2.vrt (oder .shp) zu erhalten, die vom GIS geladen wird.

Anleitung:

1. Originalbilder in kommprimiertes(!) TIFF wandeln (falls noch nicht der Fall):

 % gdal_translate -of GTiff -co COMPRESS=DEFLATE -co TILED=YES myimage.tif myimage2.tif

oder:

 % gdal_translate -expand rgb -of GTiff -co COMPRESS=DEFLATE -co TILED=YES myimage.tif myimage2.tif

2. Mosaik erzeugen: => Alle erzeugten Bilder in ein eigenes Verzeichnis verschieben. Dort:

 % gdalbuildvrt myimage2.vrt *.tif

3. Pyramide erstellen:

 % gdaladdo -ro --config INTERLEAVE_OVERVIEW PIXEL --config COMPRESS_OVERVIEW JPEG myimage2.vrt 2 4 8 16

4. Nun kann man die Datei myimage2.vrt (die sich mit den eigentlichen TIF-Bildern im gleichen Verzeichnis befindet) ins GIS laden.