Ever been looking through your photos, looked at one and thought ” That’s a great shot, where the hell did I take that?”. Ever wanted a record of exactly where you went on your holiday and in exactly which place your took a photo? Well geotagging your photos is what you need to do. Basically longitude and latitude information is put into your photo’s EXIF information and many programs or picture hosting sites can read this information and display where you took the photo on a map.
Some cameras these days come with GPS built into them, but you probably don’t really want to have to upgrade you camera gear just to get GPS information, and it doesn’t help if you’ve got multiple cameras (doesn’t everyone have multiple cameras? 🙂 ). You could spend the extra money and buy a separate data logger however the good thing is that most smartphones or tablets have a GPS built into it these days, and using the right software you can use your device to geotag with the equipment you already have. While this article is based on Android devices, all you need is the right data logger program on your iOS or Windows or other OS device to make use of the tutorial. 🙂
There’s two software components to the process of geotagging your photos. You need a program that will talk to the GPS on your device and log GPS position data at specific time periods, and then a program that will be able to read and match the time stamp on your photo’s EXIF information with the longitude and latitude at that time and then write this information into the photo’s EXIF data. One important thing to note is that for the most accurate data, the time on your device needs to exactly match the time on your camera. The best thing is that you don’t have to spend big dollars on these packages; all the applications I’m using here are free.
GPS Status and Toolbox
Before I go into the two packages, if you’re playing with the GPS on your Android device then one of the most useful utilities you can have is GPS Status and Toolbox. This little app shows you a graphical representation of which GPS satellites you can see and which ones you’re locked onto. It can also help in managing A-GPS data,a small file that can assist in getting faster satellite locks. If I’m having GPS issues, this is always the first app I reach for. You can click on any of the pictures to see bigger versions 🙂
Open GPS Tracker
Open GPS Tracker is the data logging app that needs to be loaded onto your Android Device. When you start recording, your latitude and longitude is logged into a file at certain time intervals. Depending on your circumstances, Open GPS has 4 different logging intervals. So if you’re walking or working in a small area, you can probably get away with larger time intervals; if you were taking pictures while in a moving car you would want shorter intervals. Shorter intervals will give you more accurate tracking of path, but do note that it will also have an impact on the battery life of your device.
- Fine : GPS updates every second after at least 5 meters movement
- Normal : GPS updates every 15 seconds after at least 10 meters movement
- Coarse : GPS updates every 30 seconds after at least 25 meters movement
- Global : Use GPS and WiFi signals to triangulate every 5 minutes after at least 500 meter movement
If there’s no signal for a specified time, an alarm will sound so you know that you’re not logging anymore. There’s a plethora of other options as well, but for the purposes of geotagging, it’s really only the logging interval that’s the important one. You can see that Open GPS can also make use of Google Maps on your device to display your path live (warning: this may involve data download charges on your device).
Test Rig and Procedure
So I had to take one of the boys somewhere, so always the opportunist, I set up the above rig. My HTC Desire running Open GPS Tracker, Swann Freestyle HD and its remote all “securely” attached via a sticky pad to my dash. It’s no Google Map mobile, but it’ll do 🙂 All I needed to do was make sure my phone and camera are synchronised, set the time interval to normal (15 sec), start the GPS on my phone, open the app , start tracking and drive away. At random intervals I used the remote to safely take a picture.
Here’s the final trip shown on a Google Map overlay. While you’re travelling along, you can also use the app to do things like take notes, voice recordings or mark spots with recorded co-ordinates for future reference. You can see on the picture that there’s even an indication of the speed I was doing at each stage, keyed to the legend on the right. The app can also tell you how far you’ve travelled (15.89km), maximum speed (71.1 km/h), elapsed time (26min) and total elevation (242m), again not information used in geotagging but may be useful just the same for other purposes. The important thing is that the app logged 93 waypoints, which is the important information needed for geotagging.
Open GPS can export the waypoints in a GPX file format, a standardised format for input and output of waypoint files. The files are stored locally and can be exported and then transferred off from the phone via standard file transfer, or the app has the ability to export using other installed apps such as Gmail or Dropbox.
So the results of my little trip, 49 photos (basically taken at random, don’t expect any Peter Dombrovskis here) and a GPX file containing 93 waypoints.
GPicSync is another free, Open Source program that puts the GPS information into your pictures. It’s available for Windows, Linux, and OS X 10.5, supports both JPEG and RAW formats and it’s pretty easy to use. Point it at your picture folder, point it at your .GPX file and let it run. GPicSync will correlate the time stamps on your photos with the timestamps from the GPX file and then write the most relevant co-ordinates into the EXIF information for that photo. Once again GPicSync has the ability to do a whole lot more that’s outside the scope of this article.
If you zoom into the map, you’ll see what I mean about getting the correct time intervals. Logging every 15 seconds has me driving through fences, backyards and houses. 🙂 If I wanted a more accurate path then I would have been better to use 1 second intervals (with the associated higher battery drain and larger output file). It really depends on exactly how “accurate” you want the logging to be.
Many online photo-sharing websites now support geotagging, including Flickr and SmugMug. To me, being able to place and visualise a picture on a map gives my photo a bit more “relevance” both for myself and anyone else that views the photo.
Once you’ve set everything up and got a workflow going, it’s easy to geotag your photos. No longer will you have to wonder where a photo was taken, or if that photo was in this city or that city. Given that you’ve most likely already got GPS capability in your Android device, why pay more money for additional equipment and why not make use of it?
My only big disappointment? That I didn’t set this all up 1000s and 1000s of pictures earlier. I’ve got so many photos, including overseas holidays in Vietnam, Thailand, Ankar Wat, San Francisco… that don’t have geotagged information in them……guess I’ll just have to go back and retake them 🙂
- Displaying live maps in Open GPS Tracker may incur data charges
- Using the GPS on your device will affect battery life
- Please do note that GPS positioning isn’t 100% accurate, and there will be some variation from your actual position
- If you are publishing geotagged photos on a public forum, be careful what you put up and what information you might be giving away!