Using Aperture’s Places to geotag my images has been a much desired feature on my Aperture feature wish-list when I still used the old version. It turns out that using Places is not as straight forward as I expected it to be. Manually dragging pictures to the map works perfectly fine, but when adding GPS tracks and automating the process of placing the images, it’s hard to get an accurate result.
I’m using a popular GPS logger to record GPS data to geotag my pictures in Aperture. As I’ve had some trouble with the workflow of automating everything as much as possible, I’m sharing the results of my findings here with you.

The device I’m using is a Wintec WBT-202. I set it up to record a GPS location every five seconds. The device has a replaceable 1GB memory card to record data. It also can record waypoints by pressing a special button. The data format it uses has the filename extension .TES, a format Aperture cannot deal with. I’m converting it to GPX, a XML based format, using Wintec’s software that comes with the device.
When first trying to match the GPX data against my pictures the results were daunting as the automatic placement in Places got it all wrong. The most important detail in matching GPS recorded data against images taken is the time the camera uses and embeds as metadata into the images and the time the GPS logger stored for each location. It’s easy to set the camera time in the settings menu of every digital camera. The GPS logger does not have any option to set the time. It uses the time it retrieves from the GPS satellites.
Your first priority should be to set the time in your camera to your local time, taking daylight savings time into account if applicable. Look up the current time on the Internet (there’s plenty of services for that).
So, which time zone is the GPS logger using? It doesn’t really matter actually, at least when using the WBT-202. As the WBT-202 stores data in the TES format, we need to export the data to something Aperture can use anyway. When exporting from within the Wintec device software, you can set a timezone. Choose the right time zone. It’s probably easiest to think in offsets of GMT. Take daylight savings time into account.
You can open the generated GPX file in any text editor. You should be able to understand the structured XML. Notice that waypoints and locations are marked differently. You should check the timestamps saved with each location and validate that they match the timezone you intended to use.
After importing the generated GPX file into Aperture, Aperture will show the waypoints only. You can select to show the whole track, which you should do. Hover the mouse over the legs of the track and notice how Aperture messes up the recorded times. In my tries, Aperture never got it right, ignoring the correct time stamps. The solution is to tell Aperture which timezone you want it to use.

Setting the timezone using the geographical names of timezones did not work for me. Even after setting the right timezone, the legs of the track still showed the wrong times. This must be a bug in Aperture 3. It’s not difficult to find references to this buggy behaviour on other blogs if you use Google.
Again, it’s easier if you use GMT offsets at the bottom of the menu. That worked for me. Now the legs of my track showed the correct times.
We’re ready to tag the pictures now. Rather than relying on Aperture to take care of matching times and location, we choose a single picture we can place on a leg of the track ourselves with confidence that it’s placed correctly. This is important! When you drag that single picture across the legs of the tracks, you will notice the time offset Aperture displays. It’s the delta between the embedded time in the picture and the GPS data. As much care as we took to synchronize the GPS time to our camera time, there still is an offset. I’m not sure if it’s possible to get rid of this offset at all.
When you drop that single image on the right spot, Aperture will ask you if it should place the rest of the pictures of your project on the track. You can let Aperture do its work now. It will apply the same time offset to the other pictures as to the first one. I had to correct only a few pictures when it finished.
If you have a better way to deal with geotagging in Aperture, please let me know in the comments.