public
Description: Imports data from the NASA Shuttle Radar Topography Mission into a PostGIS database (and other databases in the futue).
Homepage: http://wiki.openstreetmap.org/index.php/Route_altitude_profiles_SRTM#SRTM_import
Clone URL: git://github.com/Sjors/srtm2postgis.git
srtm2postgis / README
100644 54 lines (34 sloc) 1.567 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
Script that imports the SRTM data in a PostGIS (PostgreSQL) database.
 
http://wiki.openstreetmap.org/index.php/Route_altitude_profiles_SRTM#SRTM_import
 
Usage:
First run the tests that come with this script:
 
python test/test_download.py
 
Then download the SRTM source files (635 MB for Australia):
 
$ python download.py continent
 
(replace continent by Africa, Australia, Eurasia, Islands,
North_America or South_America.
 
Second argument (optional) specifies from which tile to resume.
Use full file name e.g. 'N36W004.hgt.zip'. Set to 0 start at the first file.
Argument 3-6 optionally specify a bounding box: north, south, west, east.
 
Verify that the download went correctly:
 
python test/verify_download.py continent
 
Unzip the files (adds 3 GB):
$ for f in `ls *.zip`; do unzip $f; done
 
Create a PostGIS database (you may need to change some things here depending on
your system):
 
$ createdb srtm
$ createlang plpgsql srtm
$ psql -d srtm -f /usr/share/postgresql-8.3-postgis/lwpostgis.sql
$ psql -d srtm -f /usr/share/postgresql-8.3-postgis/spatial_ref_sys.sql
 
Create a test database:
 
$ createdb srtm_test
$ createlang plpgsql srtm_test
$ psql -d srtm_test -f /usr/share/postgresql-8.3-postgis/lwpostgis.sql
$ psql -d srtm_test -f /usr/share/postgresql-8.3-postgis/spatial_ref_sys.sql
 
Run script that reads files and puts them in the database.
Test it first:
 
$ python test/test_read_data.py
$ python read_data.py continent
 
Verify the result
 
$ python read_data.py continent verify
 
All altitude data should now be in the table 'altitude'. Enjoy.