OpenStreetCam sign detection code and training data open sourced

Posted by mvexel on 16 May 2018 in English (English). Last updated on 21 May 2018.

Telenav created and hosts OpenStreetCam, as many of you know. OpenStreetCam now has well over 130 million images contributed in large part by OSM mappers (thanks!). We already integrate the images themselves with JOSM and iD.

About a year ago, we started an internal initiative to apply machine learning to detect important features such as signs that are captured in the images. While we haven’t rolled that out at scale yet, you can already see the results in some US metro areas such as Salt Lake City, Detroit and Dallas / Fort Worth, using the latest version of the OpenStreetCam JOSM plugin. The goal is to make mapping sign content much easier and quicker. You can, for example, filter speed detected speed limit signs to see only the ones where the way in OSM does not have this speed limit yet.

So far, the technology behind this has been internal to Telenav. This is changing today.

Starting today, you can see, download, and contribute to the source code that powers our sign detections from Github. In addition, we’re releasing a training set and a test set of 45000 images manually annotated by our map team with more than 55000 signs in 23 different classes such as: traffic signals, stop signs, speed limits and turn restrictions. You can use these data sets to run your own detection improvements. Perhaps you want to detect benches? Bus stops? Storefronts? Be our guest ☺️ We are happy to add your improvements to the OpenStreetCam platform if they are useful to OSM.

We are also running a competition to celebrate this open source release. If you think you have what it takes to improve our existing detections meaningfully, I encourage you to enter! The competition runs until August 17. There is a $10,000 prize for the winner!

Finally: we do not have any plans to automatically add any of this detected information to OSM. Any improvements will always be made manually by mappers through the existing JOSM plugin, iD integration (coming) and MapRoulette.

If you’re interested, there was also an official press release announcing this.

Comment from pizzaiolo on 16 May 2018 at 14:22

When is the Android app going to drop proprietary dependencies, though? That’s the only thing stopping me from using either OSC or Mapillary at the moment.

Comment from mvexel on 16 May 2018 at 16:01

The Android app is open source pizzaiolo, have you looked into submitting a pull request? It’s on the team radar I know, but just haven’t been able to make it a priority.

Comment from mvexel on 16 May 2018 at 17:02

Yes, thanks for adding that, edited the post with the link.

Comment from mvexel on 16 May 2018 at 17:08

Also, interestingly, someone on hacker news pointed out that the example image highlights a sign for an exit speed limit, not the main road speed limit :) This to prove the point that this kind of technology a) needs improvement, so it can only benefit from being open source and b) the results will need the crucial human mapper eye to be useful for OSM.

Comment from philippec on 16 May 2018 at 17:47

I wait for a better smartphone to contribute.

Comment from Baloo Uriza on 16 May 2018 at 18:55

So, I got a Waylens Horizon, now how do I use it for OSC?

Comment from RafalR on 18 May 2018 at 11:17

When will the OpenStreetCam map show the places where the photos were taken in a correct way?

Comment from Carnildo on 19 May 2018 at 01:40

Not only is the sign an exit speed limit, it’s the yellow of an advisory speed limit rather than the white of a mandatory speed limit.

Comment from Baloo Uriza on 19 May 2018 at 02:54

Nice catch, Carnildo. “Speed limit” isn’t even the correct verbiage for those yellow signs, they’re Advisory Speeds in the US and Canada, and don’t have the force of law, just guidance of what the DOT can send a sedan around without passengers feeling uncomfortable.

Login to leave a comment