Geo-referenced photography

Posted on 6 July 2004 in Photography, Place, Research, Technology

The easiest way of linking photos to locations is to combine the time-stamps from both a digital camera and GPS receiver or other location-aware device. If this data is available (over the same period of time) it’s possible to process a series of images and location tracks to stamp each image with location metadata.

Here are a few resources, papers, projects, guidelines and other geo-reference issues.

h3. Papers

* “Position-annotated Photographs: The Geotemporal Web”:http://www.dmst.aueb.gr/dds/pubs/jrnl/2003-PC-GTWeb/html/gtweb.html
* “GEOREP: Digital Library for Spatial Data”:http://www.dlib.org/dlib/december96/canada/12proulx.html
* “Geographic location tags on digital images, Microsoft [pdf]”:http://wwmx.org/docs/wwmx_acm2003.pdf
* “Portable digital photo album [time based interface]”:http://www.ece.ubc.ca/~elec418/project/project2handedin/nsiu/prototype.html

h3. Prior work

* “Tokyo Picturesque”:http://www.downgoesthesystem.com/devzone/exiftest/final/ “[Details]”:http://www.downgoesthesystem.com/devzone/exiftest/details/
* “Habitat Perspectives”:http://www.marumushi.com/apps/perspectives/
* “Photo Location”:http://www.986.org/sites/ghogh/CDC/CDC_5505.html “[Details]”:http://www.986.org/sites/ghogh/CDC/CDC_metadata.html
* “Geo Snapper”:http://www.geosnapper.com/index.php
* “WWMX web demo”:http://www.wwmx.org/WebClient.aspx
* “Good list of other photo mapping projects”:http://transmutable.com/PhotoMaps/

h3. Geo-referencing Photos

These are some commercial applications and scripts that link photographs to geographic information.

* “Robophoto”:http://www.robophoto.com/settings8.html
* “93 Photo Street”:http://transmutable.com/93PhotoStreet/
* “Photofusion”:http://topofusion.com/photofusion/
* “Media Mapper”:http://www.redhensystems.com/products/
* “OziPhotoTool”:http://oziphototool.alistairdickie.com/
* “GPS photo link”:http://www.geospatialexperts.com/
* “GPS TrackMaker”:http://www.gpstm.com/eng/screens_eng.htm
* “QuakeMap”:http://www.earthquakemap.com/
* “WWMX Travelogue application “:http://www.wwmx.org/Download.aspx/
* “AkuAku: GPS tagged jpegs”:http://akuaku.org/archives/2003/05/gps_tagged_jpeg.shtml
* “Adding GPS Information to EXIF Images with Photostudio”:http://www.stuffware.co.uk/articles/00000001.html
* “GPS Photo Linking in iViewMedia Pro [Mac]”:http://www.macdevcenter.com/pub/a/mac/2004/06/15/gps_photo.html
* “GPS plotting in Flash”:http://www.marcosweskamp.com/components/tokcomponents/geoplotter/demo.html

h3. GPS track and waypoint extraction

Transferring data from GPS devices can be problematic. If this is going to work in a wider, collaborative context there is a need to make guidelines for this process. It is also really important to make sure units and timezones are correctly set up on all software, so that no translation happens as the data is converted. Exported data also tends to be messy, with mixed tracklogs and waypoints, which for us meant a lot of hand-tweaking.

* “Garmin Mapsource”:http://www.garmin.com/cartography/
* “MacGPS Pro”:http://www.macgpspro.com/
* “GPS Babel”:http://gpsbabel.sourceforge.net/
* “GPSylon tool for downloading/viewing GPS data”:http://gpsmap.sourceforge.net/
* “GPS to GEO-RDF”:http://www.hackdiary.com/archives/000040.html
* “Some notes on coordinate translation”:http://life.csu.edu.au/geo/dms.html

h3. Extracting EXIF data

To get a handle on the photographic data we need to look at the embedded EXIF information, which contains things like capture date, time, exposure and aperture.

* “Python Exif Parser”:http://pyexif.sourceforge.net/
* “Media Metadata for Python”:http://sourceforge.net/projects/mmpython/
* “Extracting EXIF data with Python”:http://simon.incutio.com/archive/2003/11/13/exif
* “Geo tagging images: Exif GPS with python and java”:http://kennethhunt.com/archives/000935.html
* “EXIF metadata extraction in java”:http://www.drewnoakes.com/code/exif/

h3. Content metadata guidelines

In order to standardise the sharing of geographic information (tracklogs and waypoints) we need to think carefully about the formats used. We initially intended to use locative packets, but have ended up using GPX format alongside some custom XML for time and photo information.

* “Locative packets”:http://locative.net/workshop/index.cgi?Locative_Packets
* “Other recommended vocabularies”:http://locative.net/workshop/index.cgi?Recommended_Vocabularies
* “GPX namespace manual”:http://www.topografix.com/gpx_manual.asp
* “JPEG RDF strategy for storing location info”:http://nwalsh.com/java/jpegrdf/jpegrdf.html
* “W3 RDF geo-vocabulary”:http://www.w3.org/2003/01/geo/
* “Describing and retrieving photos using RDF and HTTP”:http://www.w3.org/TR/photo-rdf/
* “Exif vocabulary workspace – RDF Schema”:http://www.w3.org/2003/12/exif/
* “Vocabularies for w3photo project”:http://esw.w3.org/topic/W3PhotoVocabs