I've searched for other Instructables about geotagging and all of the ones I found used Adobe Photoshop Lightroom to do the geotagging. With the cost of Adobe Photoshop Lightroom anywhere from $170 to $300, Lightroom may be too expensive for the average photographer wanting to geotag their photos. Many of my friends were impressed with the method I use and encouraged me to post this Instructable.
In this Instructable I show how to use Geosetter (freeware) to accomplish the geotagging. Geosetter does not come with a User’s Manual/Guide, so when people first use Geosetter it can be confusing. Therefore, I’ve included lots of screenshots to make the entire process easier to follow. In order to reduce the number of screenshots to upload, in some cases several screenshots have been combined into single images – recommend you view the photos full sizein order to see the best detail.
I’ve been geocoding my photos a few years now and it’s a reasonably automated process. I routinely search for new (better) ways and techniques to improve the process, whether it’s changing to another application or different hardware. The following applications, hardware and methodology I’ll discuss here are the ones that work best for me. I encourage you to experiment and decide what works best for you.
Things you will need for Geotagging
1. Camera for taking photos
2. A GPS device that can save/copy a tracklog. It more convenient if the GPS can output the tracklogs as GPX files, however there are various applications such as EasyGPS (freeware) that can help save them as GPX files.
4. Internet Connection (for getting map information)
Step 1: Why a Standalone GPS & GeoSetter?
On-camera GPS units versus standalone GPS units.
I’ve tested on-camera GPS units (Nikon GP-1 & EasyTagger) and I’ve found that on-camera GPS units are too cumbersome for me (extra cables & storage requirements), have limited capabilities, and they can miss potential photo opportunities. I use Canon and Nikon DSLR cameras and my wife uses a Point-and-Shoot, so we require a process that can be used with any of the cameras we bring along that day. Figure 1 shows a comparison of features for standalone GPS units and on-camera units and should explain why I only use a standalone GPS unit.
GPicSync or GeoSetter?
Over time I’ve used my Garmin Oregon 450 with both GPicSync and GeoSetter (both freeware). There are other applications that can geotag JPGs, but what is important to me is that GPicSync and GeoSetter can also geotag RAW files. Both require GPX files as input so if your GPS doesn’t save in the GPX format then you can use an application like EasyGPS (freeware) to save the tracklog as a GPX file. In my case I just copy the GPX directly from my GPS to my hard drive.
Which geotagging application do I prefer?
Initially I started geotagging using GPicSync, but quickly changed to GeoSetter for a variety of reasons. GPicSync hasn’t been updated since it was created in 2007; GeoSetter is actively being upgraded, debugged and enhanced to this day. GeoSetter has more “robust” capabilities and you can see the changes real time. If an exact track time match isn’t found for a photo time stamp, GPicSync chooses the photo location using either the “last” or “next” track time whichever is closer while GeoSetter interpolates the location between the “last” and “next” locations. GeoSetter has options to check for updates to itself as well as the ExitTool it uses so that you don’t have to remember to check for updates.
In another forum, someone asked me the following question. Can the Garmin Montana be customized to show the time with 'seconds' on the Trip Computer display similar to how you did it on the Garmin Oregon? I believe so; I don't have access to a Garmin Montana to test the following method, but here's what I would try (I am assuming the data format names are the same as the Garmin Oregon):
- create a new profile for geo-tagging
- watch the portion of the following video on the Trip Computer (6:42 - 6:55).
Although the menus are not in English, the steps the person uses are easy to follow. http://www.youtube.com/watch?v=Y86Xxn9Y0vk&NR
- Switch from a 6-field display to a 2-field display (as in video)
- Press the top data field and select the "Location" data format from the listing
- Press the bottom data field and select the "Time of Day" data format from the listing
Other useful Garmin Montana links:
Owners manual: https://buy.garmin.com/support/manuals/manuals.htm?partNo=010-00924-00
'How to' videos for the Garmin Montana series by GPS City:
Step 2: The Basic Process
The basic workflow:
- Power on the camera and GPS units
- Synchronize the camera time to the GPS (because the GPS gets its time from the satellites)
- Set the GPS into tracking mode and start the track
- Take a photo of the GPS clock display (with hour, minute & seconds)
- Now you can shoot the rest of your photos
- After you are done taking photos, stop GPS tracking
- Transfer the photos from the camera photo card to a folder on computer
- Copy OR save the tracklog to the computer in GPX file format (same folder as photos). Note that this step states “copy OR save.” Some GPS units erase the time data of the track when saving a tracklog, so in that case you copy the “current track” instead of saving it. Older Garmin GPS devices erased time data when saving a tracklog, so be sure how your GPS operates.
- Launch GeoSetter. Navigate to the folder with the track file & photos and start geotagging!
Step 3: Setting Up a Garmin Oregon 450 GPS for GeoTagging
Most GPS units “out-of-the-box” have clock functions that display time in ‘hours’ and ‘minutes’ - many do not display the ‘seconds’ needed for geotagging without some customizing. Such was the case with my Garmin Oregon 450. To display the needed information easily we need to “tailor” one of the buttons, the “Trip Manager.” The Main Menu options can also be more conveniently arranged for geotagging. I decided to add a new profile specifically setup for GeoTagging (Figure 2) in order to keep the original profiles intact. To add the new profile, I started with a copy of the “Recreational” profile and named the profile “GeoTagging.”
First, lets rearrange the buttons of the main menu to be more convenient for geotagging. Figure 3 shows the original arrangement for the Recreational profile and Figure 4 shows the new arrangement for the GeoTagging profile.
Next, setup the GPS to record geo-position information to be integrated into the photos in post processing. Select “Setup” and then “Tracks” (Figure 5). Set the GPS “Record Method” to “Time” and set the “Interval” to 10 seconds (Figure 6). With these settings the Oregon will record its geo position every 10 seconds.
Is there an optimum track point interval time?
Opinions vary. Some people set their interval to one second to make it easier for GeoSetter to match track points with photo time stamps. In reality, this is unnecessary since the application can be set to correct for any time stamp differences. I prefer to set my Garmin GPS to record a track point every 10 seconds. I’ve found that I usually don’t move very far in ten seconds when shooting photos and the error in location (lat/long) that would result is far less than the best accuracy of most GPS units. By setting the time interval at 10 seconds it reduces the size of the tracklog by a factor of ten. More importantly, I can now let the GPS record all day and not worry about turning it on and off to conserve space; I am only limited by the battery life during recordings (about 15 hours per set of batteries)!
To assign an accurate geotag to each photo we need to set the GPS and camera times to agree. Setting the times to agree can be tricky, but luckily we can correct any time difference in post processing. The easiest way to get all aligned is to shoot a photo that shows the exact time of your GPS device. The Garmin Oregon doesnot normally display a clock that shows the ‘seconds’ (essential for geotagging photos). Here is how I set up my Garmin Oregon to display a clock that includes ‘seconds.’
Starting from the main menu, choose “Trip Computer” (Figure 7). The “Trip Computer” has some presets that can be swapped with the different fields on the display. Figure 8 shows the initial screen and the first of the fields we’ll swap. When you press one of the large fields like “Dist to Dest” you get a new dialog like Figure 9. Search for the button labeled “Time of Day” and press it. For the Garmin Oregon, each track point in the tracklog contains: coordinates, elevation and time stamp. If you use the heart rate or cadence sensor the data from these devices is also included in the tracklog. Press the magnifier icon on the bottom right corner and you can set the top portion to “smaller data fields.” You can tailor the display just about anyway you’d like - my preference is Figure 10.
Now the GPS time in ‘seconds’ can be easily displayed by pressing the “Trip Computer” button on the Main Menu (Figure 7). Figure 10 is the GPS display I take a photo of each time I start a session and when I have a photo that I want to record the specific location, heading, elevation & GPS reception & accuracy information. During the day I may return to this screen and take a photo so I can check alignments in post processing.
Sometimes I like to take a photo of the display to show the “Heading” & “Elevation” for a series of photos since they do not get saved in the tracklog. Although the elevation will be recorded in meters in the Exif meta data, I prefer to display the elevation on the GPS in feet for my photos. That’s how I setup my Garmin Oregon 450.
Figure 11 is a Geotag checklist I created for my GPS that I carry in my camera bag. Although it is designed for the Garmin Oregon 450, it can be easily tailored to other GPS units. The dotted line indicates where to fold the checklist. Once folded I then laminate as a two sided card.
Step 4: Setting Up GeoSetter for the First Time
GeoSetter is a fantastic program to input GPS EXIF data onto your pictures. Below are steps to ensure the best experience when using GeoSetter for the first time.
1 - Start GeoSetter
2 - On the top left, select the “File” tab and then “Settings” (Figure 12)
3 - Select the "File Options" tab and enable the following options:
- Don’t Create Internal XMP Data if it Doesn’t Exist Already
- If IPTC Data Exists Already, Use It As Is (Unicode or Local Character Coding)
- Overwrite Original File when Saving Changes
- Preserve File Data and Time when Saving Changes
4 - Select “Select All” (bottom left of Figure 14)
5 – Select the “Data Preferences” tab and enable the following options:
- Consider Daylight Saving Time in Time Zone
- Save Time Zone to Exif Data
- Set Taken Date to all Exif Dates
- Add Time Zone Automatically to Taken Date when Assigning Map Position
- Flickr Geo Tags
- Set IPTC Creation Date from Taken Date (can be changed individually for each image)
- Use Current Language for Countries (instead of English)
6 - The rest of the options are user preference (Figures 16A, 16B and 17).
Step 5: How to Use GeoSetter
The first thing you will notice is that there are five basic areas on Geosetter: 1) ‘Tabs, Address & Toolbar’ area, 2) “Folder View” window (top left), 3) “Image Preview” window (bottom left), 4) “Map” window (top right), and 5) “Tracks” window (bottom right). Here are the steps I use with Geosetter:
- Save your photos to your hard drive - it will be quicker and easier to work with them on your computer.
- Save the GPX files from the GPS to your computer; recommend placing them in the same folder as photos.
- Run GeoSetter.
- Select the “View” tab and then “Tracks” (Figure 18)
- Select the “Images” tab and “Open Folder”; select the folder location of your photos. (Figure 19)
- You should see the first photo high-lighted like in Figure 20.
- Identify the location of the GPX tracklog by double-clicking on the folder icon in the “Tracks” window (Figure 21) and navigating to the file (Figure 22). Press “Open.”
- The screen should now look similar to Figure 23.
- Go to the “Folder View” window and select the last photo to be geotagged. (Figure 24)
- Navigate to the first of the photos in the list to be geotagged. Press and hold the “Shift” key then select the photo of the GPS display; this will select all in the series to be geotagged. (Figure 25)
- Go to the “Image Preview” window and adjust the size of the GPS display (Figure 26) until it fills the “Image Preview” window from top to bottom (Figure 27).
- Place the mouse cursor on the image and drag the GPS screen to the far left of the “Image Preview” window.
- The Geosetter display should look similar to Figure 28. Now we are ready to synchronize the photos with the tracklog data. Press the “Synchronize” button on the toolbar (shown in Figure 28).
- The synchronize window will pop-up (Figure 29). Here we can adjust any time differences & select the appropriate options to use.
- Since the GPS photo was selected last, it will be shown in the “image preview” window. This allows us to compare the time stamp of the photo Exif meta data to the GPS time displayed in the photo. Correct any time difference at the bottom of the “syncronize” pop-up window (refer to yellow arrows in Figure 30).
- Once you are ready, press “OK” and you should see a pop-up window like Figure 31.
- If you weren’t successful, press “No” and adjust the synchronize parameters accordingly.
- If you answered “Yes”, then wait for the program to complete the operation; this can take awhile depending on a number of things: speed of your computer, number of photos, size/quality of the photos, or file types. If you were successful you’ll see something like Figure 32. Note that the lat/long info is red in color, indicating it has not been applied/saved to the photo meta data yet.
- You may find that all of the meta data can not be seen because the size of the thumbnails are too small. You have two options:
- double-click on the GPS photo display and a “Edit Data” window will popup (Figure 33), OR
- use the “slider” (Figure 34) on the toolbar to change the size of the thumbnails. I prefer to use the “slider” option because I can still see the other photos Exif meta data.
- Since the GPS photo and the photo’s Exif meta data are both visible (Figure 35), we can compare the GPS photo time and lat/long with what Geosetter has proposed for geotagging.
- Decision time - we can either save/apply the changes or exit without saving. To save the results and write the geotag info into the Exif meta data press the “save” icon on the toolbar (Figure 36).
- The color of the Exif meta data shown on the photos will change from red to black showing that the geotag info is now integrated into the photo Exif meta data. During the save process you will see the status shown at the bottom of the “Folder View” window (Figure 37).
- If you decided to exit before saving the changes a “Confirm” popup window will be displayed (Figure 38). This is helpful if you forget to save the changes before exiting Geosetter.
- Your photos are now geotagged!
Step 6: Why Is Exif GPS Data Less Accurate Than My GPS Unit?
The short answer is that it might not be less accurate - the application you use to read it may just display it that way. Applications that display Exif meta data may only show portions of the actual GPS info or show the data “rounded.” For example, Geosetter doesn’t display the full precision of the lat/long data nor do many others such as Picasa, Google maps, etc. Other applications such as ACDSeePro2 display the GPS precision as it is actually recorded in the Exif meta data. Figure 39 shows screenshots from ACDSeePro2 of the Exif meta data for the same photo before and after showing the GPS information that was added to the Exif meta data. Notice that the lat/long meta data indicates a higher degree of precision than what Geosetter actually displays during geotagging.