GDAL2Tiles SoC 2007

Overview
Implementation of Raster Driver for GDAL library, which will allow to write PNG/JPG tile structure as a new supported file-format. Generated tiles will contain also XML metadata, so after putting them on any webserver they could be used as data source for Google Earth (with SuperOverlay KML), Google Maps, OpenLayers, WorldKit and probably other viewers.

Tile structure will follow recommendation from OSGEO Tile Map Service Specification. Simple utility 'gdal2tiles' for converting supported file-formats into new tile structure will be created.

Implemetation of the file format driver will allow to export map raster data into Google Earth, Google Maps and other online viewers from any of applications which use GDAL library.

Idea for this project was suggested by FrankW at GDAL SoC Ideas.

Schedule

 * May 28: Designing of file format, all XML Metadata (KML, TMS XML files, MS Virtual Earth, ...?) have to be known and tested with supported viewers, sample map is published.
 * July 9: Alfa version of GDAL Driver for Tile Structure Writer is uploaded into official SVN.
 * August 20: Final version of the driver as well as gdal2tiles utility are uploaded and reviewed.

Tile Structure

 * Metadata from TMS Specification will be created as main source of georeference (especially TileMap Resource XML).
 * KML supports only EPSG:4326 (latlong with WGS84 datum) projection, so reprojection is needed if source projection is else. How to turn off not needed tiles by Regoins in KML?
 * It would be nice to support zoom levels of Google Maps tiles (this have to be checked, maybe from Mapnik project, example of generated tiles. More info is available here: http://michal.guerquin.com/googlemaps.html

GDAL Driver

 * implements Create function, so random access to format is possible (so for example direct warping of image into tiles will run).

gdal2tiles

 * Command-line utility similar to existing GDAL utilities.
 * Should be able to process files without proper georeference (to publish X-Ray images, vedute and other large bitmap files too).

Possible future extension (not necessary part of SoC project)

 * Support for more viewers (Microsoft Virtual Earth - they have generator MapCruncher, NASA World Wind, any other?)
 * Simple GUI for 'gdal2tiles' under Windows/Linux/Mac done with Python (one of WxWidgets/TKinter/EasyDialogs).
 * Implementation of GDAL Reader for generated tile structure (could be based on gdal/frmts/wcs, thanks FrankW)
 * Zoomify Tile Structure as alternative or modification of Zoomify with support for generated structure
 * Maybe implementation of georeference for tilestructure by use of GML.

Competitors
Commercial applications like: Arc2Earth have similar functionality. ''Several (mostly commercial) generators for Google Earth tiles should be mentioned here too. They were mentioned on http://www.ogleearth.com/.''

Microsoft Research project MapCruncher also generates tiles, but with metadata only for their MS Virtual Earth.

Zoomify could be now used as tiling program for SuperOverlay in GoogleEarth with free ZoomifyerEZ and generator ZoomifyKML (which I made as part of my Master Thesis).

What new functionality this project brings
Clear open-source implementation of tile structure export. Any application which uses GDAL library could easily export files into tile structure. Supplied utility gdal2tiles will be convert any supported file format with georeference into tiles, it will allow batch mode processing of files.

GDAL is strong library for processing maps and large raster files, including reprojection, so any already georeferenced maps could be easily converted for simple on-line publishing on a webserver without special server requirements (like MapServer is). Advantages of this attitude are written in TMS Specification.

Reader could be implemented later, which will (with support on the side of UNM MapServer) allow to access published tile structure by WMS standard, if UNM MapServer will act as proxy.

Who will use result of this project
Several organizations and individuals who handle processing of maps.

Institutions who will use the 'gdal2tiles' utility from this project, as I am cooperating with them:
 * Moravian Library Brno
 * Historical institute of Czech Academy of Sciences
 * Czech National Library
 * National Library of Scotland
 * University of Connecticut Library (with their grant "Building a Globally Distributed Historical Sheet Map Set of Austro-Hungarian Topographic Maps, 1877-1914", cooperating with New York Public Library, University of Connecticut Library, and Library of the American Geographical Society. It is a grant about building a scalable workflow and toolset for map libraries to add cartographic content to the Web.)

Student's Biography
My name is Klokan Petr Přidal, I have finished Master degree in Applied Informatics at Masaryk University in Brno, now I am in the first semester of postgraduate study of Cartography at Czech Technical University in Prague. My Master thesis subject was "Processing and Digital Publishing of Historical Documents" (PDF of thesis in Czech).

I am familiar with open-source projects. I did Linux/Solaris administration. I like Python language, but I have used also other languages (C language, PHP). I have supplied some patches into Gnumeric (#330129, #334257). I founded project http://mplayerosx.sf.net/ and I won a competition in programming application for Mac with http://dictosx.sf.net/ (Objective-C). My primary desktop is Gnome and Linux, but I use also Mac, Windows and Solaris. I did programming for all of this platforms (mostly smaller projects).

I am interested in historical cartography, I have several presentations about old maps and free software. I made a czech web page about it at http://www.staremapy.cz/ and I registered domain http://www.oldmapsonline.org/ (which is not in use yet).

My homepage with contact info: http://www.klokan.cz/.