When I was new to using a GoPro Max for Mapillary, and when I was new to using mapillary_tools, I hit a pretty steep learning curve. It took hours and hours of trial and error, guesswork, and failure to create a system that works well for me. To hopefully save others the trouble, I will present my notes, methods, and workflow, along with my reasoning for everything.
My typical settings:
- 360 Time Lapse photo
- Interval 2s (driving) / 5s (hiking)
- EV +0.5 or +1.0; I’d rather have an over-exposed sky than having signs and addresses hidden in a shadow
- ISO Min 100, ISO Max 200; an ISO of 200 is still sufficient to avoid motion blur, even 20 minutes after sunset, on a clear evening
- Color Flat: Hides fewer details in shadows
Additional use notes:
- About 30 minutes after sunset, there’s no good compromise between ISO and shutter speed. That’s quittin’ time. I’ve tried using higher ISO to capture images later than that. An ISO of 800 or more blots out signs with static. Found that out the hard way. Had to delete a few evenings’ worth of work.
- I have not seen any problems with quality from using the GoPro with the protective lens covers, except sometimes at sunset–and even then, nothing sequence-ruining.
- Mapping note: The GoPro Max has never failed me, for getting street signs! But for details further from the street, such as many home addresses, the resolution on the images can often be JUST too small to read. If this is a concern, you may want to dedicate a seperate camera (I use the wide angle lens on my phone, on a phone mount) to capture high resolution images to your right or left.
- The 2 second interval on time lapse can annoy some folks. Driving at 15 mph or less tends to produce smooth sequences with a good view of most signs. But on roads where slow speeds are impractical, you’ll have to settle with A) a rough sequence, or B) driving down that street a few times to smooth things out over time. You can also hike along the sidewalk with a selfie stick, if that’s an acceptable alternative for you.
I don’t have a “real” computer, so I just run mapillary_tools on my phone. Works astonishingly well!
I process my images twice. The first time is to remove duplicates. If you don’t get rid of duplicates first, it will cause images at stops to face the wrong direction (more important for Hero mode, the non-360 mode), or cause duplicates to be left in, while interpolating directions.
Found that out the hard way. Had to manually delete dozens of duplicates, each pointing in an odd direction.
I have found that a duplicate distance of 1.2 meters is big enough to avoid problems with the GPS wandering while stopped, but small enough to avoid missing details:
mapillary_tools process --import_path Trip1 --duplicate_distance 1.2 --user_name jesseakaraccoon --advanced --move_duplicates
My second command adds direction info to the images, which the GoPro Max will not do for you. I also have “offset angle” in there so I can easily change it to another number for non-front-facing Hero mode images.
Finally, for 360 photos, you must include “–offset_time 1”. Otherwise, your images may end up tens of meters away from their real location, when driving. This is because the camera gives each 360 image a geotag one second too old while stitching it.
Found that out the hard way. Had to delete several sequences on faster roads.
mapillary_tools process --rerun --import_path Trip1 --cutoff_time 10 --interpolate_directions --offset_angle 0 --overwrite_all_EXIF_tags --offset_time 1 --user_name jesseakaraccoon --advanced --skip_subfolders
mapillary_tools upload --import_path Trip1
I hope someone finds this helpful. Many of the notes and methods here are just as helpful for a phone camera or another device as they are for a GoPro.