Tuesday, February 16, 2016

How I Geotag My Photos

Over the years I've used several methods to Geotag my photos. The wee Sony point-and-shoot camera that I carry around in my bag every day has GPS built-in but my Canon dSLR doesn't so that was where I had to get a bit manual. To be honest, the little Sony's GPS is so slow to acquire a position that I've often turned it on and taken a shot too fast for the GPS to have registered.

I used to set the GPS position one image at a time in Flickr then, realizing that life was passing me by and I wasn't getting any younger, I bought a little GPS data logger and that worked fine...for a while. It consisted of a mobile, GPS dongle that you could tote around on a photoshoot and a base station. Once you got back home you plugged both the dongle and the camera SD card into the base station, pressed a button and it did the business. It didn't need any Wi-Fi or mobile data connection to use but when I upgraded to using 4Gb SD cards (it was a while ago, stop laughing) there was a problem - it didn't support anything over 2Gb and corrupted the images on the card :(

So the next step was obvious - forget the base station, connect the mobile logger or its microSD card directly to the PC, copy off the log files and process the photos on the PC. I used a free utility called GeoSetter to post-process the photos and log files and I still use that today.

GeoSetter
GeoSetter
However, I invariably forgot to charge the mobile logger or even take it with me so I thought I'd look for a simpler solution. I carry a smart phone everywhere, who doesn't these days, so I was sure someone would have written an app for just that purpose and sure enough, there are loads of them available. I'm using an Android phone but I imagine there should be similar apps available for iPhone. Windows Phone and even BlackBerry phones.

Also, I go abroad on holiday a fair bit and while we're not poor, we're still not in the league of those that can afford to pay the extortionate roaming data charges involved in maintaining an on-line presence wherever they go. So I needed something that would work without a data connection and export the logs and, after trying quite a few apps, I initially settled on using Google's MyTracks. Sadly, Google has recently announced that MyTracks is shutting down and it'll even cease to work so, back to the drawing board. That said, it didn't take long to find a substitute in an Android app called GeoTracker. I also tested out GPSLogger, which also worked favourably.

So far, I'm pretty happy with that setup. GeoTracker will work without a data connection, uses very little battery power and can export to GPX or KML formats. All you have to do is start it up, let it track you while you wander around (yes, you can still use the phone for other things), stop it and save the log when you're done.

Getting back to the PC side of things, GeoSetter might be getting a bit old but it still works (I'm using Windows 10) and it can sync a folder full of log files against a selection of photos so there's no need to merge log files and it can compensate for time zone shifts. It supports JPEG and TIFF images as well as most camera RAW formats.

I also use another Windows tool called ExifToolGUI, a GUI front end to an excellent command-line utility called ExifTool by Phil Harvey, which is must-have tool for manipulating photo EXIF data. It's even used by GeoSetter and most other EXIF utilities. ExifToolGUI can also geotag photos so you might prefer to just use that alone but I use it to set the lens type used in the EXIF data as it can extract that from the MakerNote tag. It's not strictly necessary but useful if you want to know which lens you used at some future date. You can also use it to set such tags as Author and Copyright, etc.

ExifToolGUI
ExifToolGUI
 So, my photo-shoot work-flow is as follows:
  1. Make sure the camera date and time are set correctly.
  2. Start up the GeoTracker app on the phone, make sure it's got a GPS signal, start recording and then forget about it.
  3. Wander around, sometimes getting lost, and take photos with nary a care about GPS or Geotagging. I'll occasionally pause GeoTracker if I'm not shooting (sunbathing, swimming, sleeping, eating, etc.) but I could just as easily stop it, save and start a new log when I move again.
  4. When I've finished shooting, stop GeoTracker and save the log file. There are options to export it to external storage or various on-line services but you can always do that later if you have no Internet connection.
  5. Export the log files as GPX format files as those seem to work best with most of the tools I use.
  6. Upload RAW images and associated GPX file(s) to the PC.
  7. Run ExifToolGUI and, selecting all of the RAW files, run the option to set the lens info details from the MakerNote tag.
  8. Run GeoSetter and, selecting all of the RAW files, use the option to synchronise with GPS data files to set the GPS data information in each photo. This also handles time offsets, multiple data files, etc.
After that I'm ready to cull the dead wood and move on to post processing, which I currently do in Zoner Photo Studio but I'm seriously considering a move to Adobe Photoshop LightRoom., which can sync photos and GPX files without the need for other software.

With fitness apps being on the rise, you could quite easily use something like Endomondo, Runkeeper or Strava, all of which have apps for the major mobile platforms, to log your movements but I'm pretty sure they all need a data connection and will only export GPX files from their web apps after the logs have been uploaded. All good for use at home but sadly not when off travelling.

UPDATE: I made the leap to using Adobe Lightroom after all so geotagging images from GPX files is taken care of.

Actually recording the tracks is a changing landscape as most of the basic geotracking apps on Android (I'll never use an iPhone) have stopped working reliably since the release of Android 10. They only record tracks if the screen is on, which seriously affects battery life

Both the Strava and RunKeeper apps do record with the screen off but I've found that the Strava app regularly has errors and glitches in the tracks so I'm currently recording tracks using RunKeeper. Downloading GPX files is still restricted to using the web interface but that's okay for now.