GDAL2Tiles is a command line tool that allows easy publishing of raster maps on the Internet. The raster image is converted into a directory structure of small tiles which you can copy to your webserver. GDAL2Tiles is included in
GDAL/OGR 1.5.0 release.
GDAL2Tiles is compatible with the
Tile Map Service (TMS) Specification. TMS has been proposed as a standardised way in which map tiles are requested by clients and how servers describe their holdings. TMS is not an "official standard" and is currently managed by the Open Source Geospatial Foundation (
OSGeo). The specification is based on multi-resolution image pyramids. Tile maps are composed of a set of scale-appropriate cartographic renderings, each divided up into regularly spaced image tiles.
If the supplied raster map uses EPSG:4326 projection, GDAL2Tiles also generates necessary metadata for Google Earth (
KML SuperOverlay).
When the user is zooming or panning tile maps, only the tiles not currently in memory are requested from the TMS server. No special server software is needed if all map tiles are pregenerated.
I’m here showing how you can use GDAL2Tiles to generate map tiles of Tom Patterson’s
Natural Earth II. This is a beautiful raster map that portrays the world environment in an idealised manner with little human influence. The map can be downloaded on
this page. I’m here using version 2C.
I start by using
gdal_translate to georeference the map image:
gdal_translate -a_srs EPSG:4326 -gcp 0 0 -180 90 -gcp 16200 0 180 90 -gcp 16200 8100 180 -90 NE2_modis3.jpg NE2_modis3.tif
The image should now have the correct projection (EPSG:4326), but GDAL2Tiles was not generating the KML SuperOverlay before ran this command:
gdalwarp -t_srs EPSG:4326 NE2_modis3.tif NE2_modis3_4326.tif
The original raster map is 16,200 x 8,100 pixels. Each map tile image is 256 x 256 pixels. This table shows the number of tiles generated for each zoom level:
For my purpose, 5 zoom levels are enough. I therefore reduced the map image to 8192 x 4096 pixels:
gdal_translate -outsize 8192 4096 NE2_modis3_4326.tif NE2_modis3_4326_5.tif
Finally, I used GDAL2Tiles to generate the map tiles:
gdal2tiles -title "Natural Earth II" -publishurl http://www.thematicmapping.org/maptiles/ -v NE2_modis3_4326_5.tif naturalearth
See the result as a
KML SuperOverlay in Google Earth or in
Open Layers. There seems to be a problem that OpenLayers can’t georeference TMS map tiles. It is therefore difficult to combine a map tile layer with other map layers.
UPDATE 2 APRIL 2008: The OpenLayers example above is now working properly thanks to
Christopher Schmidt.