2D/3D Web-mapping - 02/03/2007

Web Visualisation Coastal Orthophotos

Peio Elissalde

This paper describes the development of a web spatial image server used for sharing huge sets of georeferenced coastal orthophotos on the web via an easy visualisation interface.

Traditional cartography was considered a highly sophisticated methodology for the production of high-quality maps, using the sales-business model of the non-internet economy and dedicated to specialists. The recent arrival on the scene of three internet leaders whose general mission is to map everything, and the release of their popular online earth browsers has had a huge impact in the geomatics arena. All are by now familiar with the success enjoyed by Google Maps, Google Earth, Microsoft Virtual Earth, Yahoo! Maps, and NASA WordWind in providing visualisations of universal, detailed maps with aerial and satellite views in a very simple and comfortable way. The demands of territorial collectives (regions, cities, counties), environmental bodies (research laboratories, nature-conservation organisations etc.), helped by the progress in remote sensing (aerial photography, Lidar) are leading to the development of more and more updated and detailed geospatial information. At the same time, people are pushing official state bodies to share the data collected with taxes. So internet technology has enabled new ways of mapping that allow collaboration and sharing.

Sharing Spatial Info
In most European countries, access to public geospatial data is quite limited. The argumentation used by ‘free our geodata’ partisans is quite simple: by charging for data collected by government-owned bodies the government is holding back the growth in public and private use of this data, use which could benefit all European people. In France some public authorities have begun to publish spatial data under ‘Creative Commons’ licence:

  • the city of Brest provides aerial orthophotos for all the metropolis; these geoTiff images with a resolution of 20 GSD are licensed in CC Creative Commons. (Web reference 1, see below)
  • the French Ministry of Equipment gives website access to all low-tide orthophotos of the Channel and Atlantic littoral. The Ortholittorale 2000 project lead by SHOM, IFREMER, Conservatoire du Littoral and IFEN allows downloading of aerial coastal pictures in MrSid format at better quality (50cm/pixel) than the pictures available on France’s national mapping site Geoportail (Web reference 2, see below).

Huge Datasets
While transmission of higher resolution images means higher bandwidth consumption, high-resolution images are not distinguishable from low-resolution images when viewed from a distance. The concept is to consume minimum bandwidth for maximum resolution, so that the user is able to perceive from the given viewpoint. High resolution images are subdivided into tiles, so only viewable tiles are downloaded as needed. The goal is to provide online browsing capability for very high-resolution 2D images without the cost of downloading the entire, full-resolution image to the client. One of the reasons people like GM is that it is a fast, seamless repository of worldwide imagery (high quality in some areas, very low in others). But state and local authorities have large amounts of high-quality aerial photography, often much better than that provided by Google. In the meantime, how do small government agencies deal with Google’s massive computing infrastructure In other words, how to publish our own, large, raster datasets within the framework of Google Maps (GM)

Google Compatible
The speed of GM lies in its tiling scheme. So far there are no Open Spatial Consortium (OGC) specifications for a tiled WMS standard, so Google writes its own. Although the Google Map API does not provide a way to overlay an image that spans multiple tiles, it’s not so difficult to understand the architecture of their raster tile system. But what do we do if/when Google changes its tiling scheme or, better, its licence policy Who really knows what are Google’s future plans for GM as, for example, regards its advertising business model This is why it is important to develop a spatial image server that may be compatible with GM architecture but can work independently.

Web mapping
There are many web-mapping technologies on the market. Three categories may be distinguished, each with their own strengths and weaknesses. Firstly, there are the traditional proprietary technologies. Major Geographical Information Systems (GIS) have their own proprietary software to serve geodata on the web. The most popular web map servers are ESRI ArcIMS, AutoDesk MapGuide, Intergraph Geomedia WebMap, and MapInfo MapXtreme. In the case of image server, we have to add ER Mapper Image Web Server, that enables a Microsoft Web Server to send imagery of unlimited size (ECW or JPEG200 format) over the internet directly to a user’s web browser or application. These technologies very well meet the needs of organisations whose production is already utilising products of the same family. Although generally very expensive, they make it possible to very quickly disseminate information without problems entailed in conversion and major (re)development.
Secondly come open-source technologies: by the way, here we can note a significant shift in perception among public authorities in Europe in favour of more open-source purchasing. These technologies, which leave much latitude for creativity, are addressed at organisations wishing to develop very personalised applications at low cost. They are often quite as powerful, if not more so (!), than proprietary solutions, but they also demand good technical skills in computer science and network technologies. In the free software area developed for and by the Open Source software community, ka-Map coupled with MapServer is a good example of a powerful combination of open-source web-mapping technologies which can be used as client/server mapping solutions implementing multi-resolution image pyramids. Another free solution is OpenLayers, which implements a JavaScript API for building rich web-based geographic applications similar to the Tiled Map Service API (described hereunder) and NASA World Wind, an open-source 3D standalone application.
Technologies such as Tiled Map Service API (Google Maps, Google Earth, MSN Vitual Earth, Yahoo! Maps, Google Earth) are generally more advanced than the traditional servers and avoid having to build a basic chart, which can take far too much time. All these services get by default a chart detailed at street scale, whereas details elsewhere in the world possibly vary from one service to another. Using a basic chart belonging to another server leaves more bandwidth for the data load of the user’s own server. These services may be used to build applications similar to and in the same way as traditional chart servers, even if this requires some development. Today, small raster tiles organised in pyramidal structure with cache possibilities represent the quickest web-mapping technology.

WMS and Tile Mapping
An OGC Web Map Service (WMS) dynamically produces maps of spatially referenced data from geographic information. It does so using a standard web browser, submitting requests in the form of Uniform Resource Locators (URL). Web Map Servers (specifically those that offer free/public data via OGC’s Web Map Service Specification) go down or get bogged down. Tile mapping clients can use WMS directly (WW or GE, for example), but WMS is a bad standard for tiling in general, so that all Tiled Maps Services have created their own variant of a tile server to provide access to their image pyramids. One primary complaint about WMS is its speed, especially with regard to tiling clients’ web clients that use cached imagery rather than the single server with a single cgi script. Very recently some open-source tools (TileCache, for example) have been developed to act as a buffer between a WMS server and its clients. This creates a generic TMS (OSGeo TMS Tile Map Service) over WMS system which protects the back-end WMS from load through aggressive caching while its URL structure provides tile clients with easy interoperability and shared caching mechanisms. It accepts WMS requests constrained by scale and bounding box (i.e., WMS-C, as described by the OSGeo WMS Tiling Client Recommendation) and returns images that can be viewed in clients.

Data tiling schemes are still under development to standardise the way tiles can be reused, cached and rapidly accessed in web-mapping applications. Moreover, 3D-visualisation software such as GE works differently because GE uses its own file format to display geographic data. KML uses a tag-based structure with nested elements and attributes and is based on the XML standard. KML v.2.1 explains how to pass a network link containing ground overlays that span large areas on top of GE base data. So the challenge for overlaying huge sets of imagery was to create a general organisation of pyramidal raster tiles used both for GM and GE. GM Imagery makes use of a quadtree for storing and accessing its pyramid of imagery tiles. Quadtrimageo is the format developed by MIS for storing georeferenced images in a file system without the need for a database. It is also based on 256-pixel square tiles, compressed in JPG/PNG format and organised as some ‘qrst’ quadtree-based map coordinates in a hierarchical structure of folders (parts of the map cut up into tiles at different zoom levels). The clever bit is the elegant system used for addressing image tiles, naming and geocoding the files at the same time. This is done using the ‘qrst’ recursive quartered subdivision used originally by Keyhole and then Google to label satellite images. The whole world starts as tile ‘t’. Divide this into four to get ‘tq’, ‘tr’, ‘ts’ and ‘tt’, then divide each of these into four to get ‘tqt’, ‘tqq’ and so on until the desired detail level is reached.

OS GIS Libraries
GM and GE display are implemented in various projections: Mercator/WGS84 for GM and Plate Carrée/WGS84 for GE. Regarding original orthophotos for conversion, these are also in different GIS file formats such as basic geoTIFF or compressed wavelet (MrSID, ECW, JPEG2000), including, of course, encoding geographical information. So that before launching the tiling process it is necessary for performance reasons relating to the use of GM or GE to convert the input file into basic raster format simultaneously in the two projections. Integrating a projection conversion on the fly in a simple web client using the stretching technique in the vertical direction is time consuming. GDAL is a translator library released by the Open Source Geospatial Foundation for raster geospatial data formats. GDAL comes with a variety of useful command-line utilities for data translation and processing. Proj4 is a USGS provided library that converts Cartesian coordinates to/from lat/lon using different projection techniques. ImageMagick is another robust collection of tools and libraries for reading, writing and manipulating an image in any of the more popular image formats, including JPEG for best compression, and PNG, which supports alpha transparency.

Project Results
An efficient raster-tiled server has been created, including the tiles got from the original 1,125-gigapixel image (125,000 x 90,000 pixels) of Brest and from about 28,500 original tiles of 2,000 square pixels for an area of 1km2 (114 gigapixels) of Ortholittorale. All can be displayed in the Supratlas viewer (3, see below) experimental application, a ‘meta maps mashup’ allowing visualisation in different overlays, transparency, lat/lon markers and image rotation possibilities of maps or orthophotos (such as Brest or Ortholittorale). These are mixed with cartography and aerial views from the three main mapping server data providers (Google, Microsoft and Yahoo!).

Last updated: 28/03/2017