HOWTO import SRTM elevation data

From GRASS-Wiki
Jump to navigation Jump to search

Background: Space Shuttle Radar Topography Mission

Download

GRASS GIS installations usually contain a location 'demolocation' which is in Latitude-Longitude, suitable for SRTM import.

Which SRTM tile to take?

SRTM tiles are of 1 degree by 1 degree size. The SRTM filename contains the coordinates which refer to the center of the lower left pixel (e.g., N51E010: lower left cell center at 10E, 51N). To identify a tile name, a grid can be easily visualized in the GRASS monitor:

d.grid size=1

Import of original SRTM tiles in HGT format

Importing multiple SRTM files via GUI menu

You can easily import many SRTM files in one step:

Bulk import of SRTM via menu
Bulk import of SRTM via menu (remember to add 'hgt' into the extension field)

This menu function calls internally the SRTM driver of GDAL.

Importing multiple SRTM files via command line

Use the r.in.srtm module for automated import into a Latitude-Longitude location.

See:

  • M.H. Bowman. Mapping freely available high resolution global elevation and vector data in GRASS. GRASS Newsletter, Vol.3, pp 7-10, June 2005. [ PDF ]

Import of CGIAR SRTM void-filled tiles

  • SRTM 90 data in GeoTIFF format are available from http://srtm.csi.cgiar.org/. These come in 5 degree by 5 degree tiles. Horizontal resolution: 3 arc second (90 m at equator). Coverage: world. Import with r.in.gdal

Import of multiple SRTM tiles in one step (mosaiking)

To simplify the import of multiple SRTM tiles, the tiles can be mosaicked first with gdalwarp:

Original SRTM tiles:

 # unzip all
 for i in *.hgt.zip ; do unzip  $i ; done
 # create mosaik (optionally reproject on the fly with -t_srs)
 gdalwarp *.hgt srtm_mosaik.tif
 # import
 r.in.gdal input=srtm_mosaik output=srtm_mosaik

CGIAR SRTM tiles:

 # create mosaik (optionally reproject on the fly with -t_srs)
 gdalwarp *.tif srtm_mosaik.tif
 # import
 r.in.gdal input=srtm_mosaik output=srtm_mosaik

Void filling of original SRTM tiles

The module r.fillnulls can be used. See screenshot

See:

  • M. Neteler, 2005. SRTM and VMAP0 data in OGR and GRASS. GRASS Newsletter, Vol.3, pp 2-6, June 2005. [ PDF | Erratum 1/2006 (txt) ]

See also