External GPX support for videos in mapillary_tools 0.11.0b2

Hello everybody,

A beta release of mapillary_tools is available for download at Release v0.11.0b2 · mapillary/mapillary_tools · GitHub or through pip. It brings experimental support for using external tracks in GPX and NMEA format to geotag videos, and for extracting data using exiftool automatically (must be installed in the system).

The new features should be especially useful for Insta360 ONE X cameras - but note that timelapse videos won’t work yet. In short, after you stitch the videos and export the GPX with Insta360 Studio you can process all of them with:

mapillary_tools  process --video_geotag_source gpx STITCHED_VIDEOS_FOLDER

If you forgot to export the GPX while stitching, but have exiftool installed in your system and in the global path, you can also extract the data from the original .insv files. Assuming they reside in the parent directory of where you stitched your videos:

mapillary_tools  process --video_geotag_source '{"source": "exiftool_runtime", "pattern": "../%g.insv"}' STITCHED_VIDEOS_FOLDER

As always, you can then upload the videos with

mapillary_tools upload FOLDER

At this time, since the features are beta, we suggest testing with a few videos first. More documentation is available in the README:

We are here to help in case you encounter difficulties. Looking forward to feeback and bug reports!

Alessandro

4 Likes

Does the insta360 app export gpx of sufficient resolution or is it better to pre-extract the gpx with exiftools or let mapillary do it?

In short: I’d privilege exiftool_runtime over gpx.

What I see is that exiftool extracts 10 or 11 points/second, but they are all duplicates - the coordinates actually change once per second. The GPX generated by Insta360 Studio has only one point/s, and the track seems to be smoothed - exiftool in orange, insta360 studio in blue:

I hope the smoothing would be better if the whole curve were recorded. Tomorrow I will check the effect on a longer track. Anyway I think getting the raw data from exiftool is better, but more for power users (because it’s more straightforward to just process the stitched MP4s and the GPXs on the side).

Regarding gps data vs moving speed, a points per second while driving at 120 km/h means one every 33m, which should still be fine given that the trajectory at that speed shouldn’t have sudden changes and we can interpolate effectively.

If someone wants, it would actually be interesting to get an upload in both the GPX and exiftool version. We can delete the worst sequence afterwards. In case: after the first upload, to be able to process the same video again one must remove its entry from the history (MacOS ~/Library/Application Support/mapillary_tools, Windows C:\Users<username>\AppData\Local\Mapillary, linux ~/.local/share/mapillary_tools/ )

1 Like


I got a new error I have never seen before. How do I fix this?

image
It outputs this too.

What I am trying to do is geotag the MP4 video with the GPX exported from Insta360 Studio.

I just managed to do this:


Is this what it is meant to look like?

IT WORKS YEESS
image

Good that now it’s working :slight_smile: Did you sort out what the error was about?

1 Like

I basically just typed in the command incorrectly. It seems everything is fine with the geotagging feature for now!

I will have to try and use the exiftool to extract the GPX since it’s VERY inaccurate right now with the GPX file from insta360 studio.

Look at this!

Insta360 Studio: Blue
Exiftool/UL2GSV: Green


Somehow they managed to make the GPX file so terrible when exported from Insta360 Studio. I will test Exiftool upload soon and see if there’s any issues with duplicates. If anyone wants to know how to get the Exiftool GPX file easily then comment here!

@Hopen111 - it would be great if you could submit this feedback directly to insta360 so hopefully they can work to improve insta360 studio gpx extraction in future releases.

Also, as Alessandro wrote above:

“If you forgot to export the GPX while stitching, but have exiftool installed in your system and in the global path, you can also extract the data from the original .insv files. Assuming they reside in the parent directory of where you stitched your videos:”

mapillary_tools process --video_geotag_source '{"source": "exiftool_runtime", "pattern": "../%g.insv"}' STITCHED_VIDEOS_FOLDER

1 Like

Hi all! This update is now also used in the new beta version of Mapillary Desktop Uploader (4.1.0) which is ready for testing. It will pick up GPX files that are in the folder with the video and have the same file name. You will be able to see the route on the map before upload.

You can download the latest beta version for Windows, Mac & Linux.

2 Likes