GPS matching problem with images taken by external camera

Hi, I’ve been trying to make photo mapping together with iPhone 7 and Giroptic 360 camera. I’ve been able to set Giroptic as external camera in the Mapillary app and it also seems to be taking pictures when driving around. After capturing a sequence I’m able to do image transfer from camera to phone, but at this point something will go totally wrong: Images are transferred but the app displays that I’ve been capturing hours earlier than I really did. When looking those images by app’s Map-view, those images are wrongly positioned on the map. Images are often in straight line and located kilometers away from my real location.

I’ve been trying to find solution to this problem from web without luck. I can only find same kind of problem reports, but no solution, is there any?


iPhone 7 with iOS 11.4.1
Mapillary app 4.8.19 (283)
Giroptic 360 camera

I don’t know how it works when you connect an external camera to the mapillary app but there are 2 common problems when you don’t use the app and want to correlate images with a gpx trace:

  • The camera internal date-time has an offset with the gps time
  • The gpx usually use UTC time. And you must take care of your time zone, and apply an offset.

Actually the camera has a built-in GPS receiver. I’ve tested to upload pictures straight from camera to Mapillary when image positioning is kind of correct on the map BUT it seems that the camera’s GPS refresh interval is so long that there will be many pictures with identical coordinates. Then I have to manually drag images on the map to make sequence look good and it’s not very handy practice.

I’ve no idea how to change any timezone settings in camera if there even is any option to do that. When exploring image files in camera by computers file explorer image files editing timestamps are matching to local time. Today I tried to set my iPhone timezone setting to use UTC time but results were similar than described above on first post.

Well, I think I found a solution to my problem. At the moment I’am using “mapillary-tools” to geotag images that are taken by my Giroptic 360-camera and results are promising I would say. Actually instructions to solve my problem were given here: I installed OsmAnd app to my phone and I’am using the app to create a GPX track at the same time when I’am creating a sequence with a camera that is also using GPS. After a sequence I will upload images from my camera and .gpx-file from my phone to my home server. Then I will run geotagging scipt from mapillary-tools by using --local_time -option and after that these images looks ready to upload to Mapillary.

Here is my first mapillary-tools-processed sequence from Finland: Mapillary

Ok, the culprit is the internal gps receiver.
I usualy geotag the images with Josm, as I can visually check if the coordinates are good and apply an offset if needed.

Yes, some kind of conflict there will be when using this camera as an external cam with app. Unfortunately there’s no option to manage camera time settings.

But, that script solution is pretty handy for me and it feels that these methods works more stable than trying to to control camera by app. After I’ve geotagged images I just use Mapillary web uploader to upload images to service, there’s is that Review step where I’ll be able to check that the sequence looks good on the map before publishing images.