Microsoft Open Maps: Using Mapillary to improve OpenStreetMap in Serbia

Over the last couple of years the Microsoft Open Data Team in Serbia has been very busy. They've contributed over 1,000,000 images on 8,000 km of roads. They've also validated 300,000 traffic signs and made more than 4,000 traffic sign related edits in OSM.

Over the years the OpenStreetMap (OSM) project has attracted a large community, including many companies all over the world, with a common goal of making the most up-to-date and easily accessible map. We at the Microsoft Open Data Team have always strived to not only improve OSM, but also to constantly upgrade and perfect the process of map improvement.

Mapillary street-level imagery holds a key role in contributing to OSM. As true enthusiasts, open data editorial team captured more than 1,000,000 photos covering over 8,000 kilometers of roads in Serbia. The team collected imagery on all the main roads, capturing many road signs. After using these images to map out lanes and destination signs on major highways, the focus was shifted to road signs such as speed-limits and turn restrictions. Executing with an innovative approach: first, verify Mapillary’s detections of traffic signs, then map the verified result in OSM.

Using dash cameras to map traffic signs in Serbia.

Verification process

Verification of Mapillary’s detections turned out to be beneficial on several fronts. In addition to the benefit of producing recognized and validated traffic signs ready for mapping, a unique workflow was also implemented. The Mapillary verification task was performed for a couple of hours each week, as a mental break between other ongoing map editing tasks. This way, the team got to work on something different, boosting morale by improving their home country’s data using imagery captured by the team itself.

So far, the team has validated approximately 300,000 detections in the Republic of Serbia. This considerable number of validations includes various turn restrictions, speed limits, as well as stop signs and yield signs.

Traffic sign verification leaderboard.

Post processing

After the process of validation, Mapillary pulled out all validated objects, so post-processing could happen at our end. Once these georeferenced objects were validated, they were imported to QGIS as a new layer. Using the latest Serbia OSM drop from Geofabrik, all roads that do not have the speed limit attribute (maxspeed tag) as well as those which do have the tag were filtered. Each group of speed limits was post-processed one by one, to check for possible mistakes in speed limit values.

Extensive Mapillary coverage in Serbia.

After filtering them out, in an effort to make the process of mapping easier, a buffer was created around detections and all connecting nodes were merged into one polygon. This resulted in one or several points per single traffic sign, indicating where the image containing the detection is, and where to search for it on the map. After setting up everything, these detections were uploaded into MapRoulette and mapped in OSM.

Mapping signs in OSM

For map editing, the team uses JOSM, since it provides a variety of paint styles and a Mapillary plugin. Paint styles are very useful, especially for speed limits, and are available to all JOSM users. To make the workflow easier, created a custom, internal paint style, combined with a custom preset for styling signs seen in Serbia, giving us a better visual representation of where the traffic signs are located.

Traffic signs and their implications were mapped with JOSM.

In the picture above, you can see a distinct representation of sections with different speed limits. Each color-coded way represents a specific speed limit value (e.g., red is the color for 80 kmph), and the paint style used was Maxspeed style by Rubke.

During this process the team relied heavily on the Mapillary plugin for JOSM. The plugin allows filtering and shows Mapillary detections, making mapping easier, especially in areas with many Mapillary sequences.

Impact on the map and the community

The results so far have yielded many newly mapped destination signposts, a high increase in turn restrictions, and more than 4,000 additional traffic signs mapped on OSM in Serbia, with more turn restrictions to come.

Traffic sign verifications helped improve OpenStreetMap.

The only remaining task is to continue this process and to invite others to join us. To raise the popularity of the JOSM application within the local community, some of our members translated the JOSM application into the Serbian language (as of November 2020 the translation is at 30%), as well as translating the Mapillary plugin which is crucial for map improvement. The translation and the whole verification project were supported with great cooperation with the Mapillary/Facebook team, including improvements to the plugin, as well as action on feedback concerning the detections.

Aside from the impressive results in the number of newly added signs, the entire project has demonstrated that a great collaboration along with persistent effort, OpenStreetMap can be enriched , make mapping more fun, and also pave the way toward easier and more efficient methods for everybody to edit the map.

/ Microsoft Open Data Team (Guest Post)

Continue the conversation