Great find, I'll add that to the references on DeepOSM.
Looking at that repo, the main differences are:
* that code applies to a specific (massachusetts) data set, while DeepOSM uses nationwide USA NAIPs trained against OSM extracts
* they seem to have implemented the full Mnih CNN - DeepOSM just uses a single layer as is
* Mnih didn't touch on using the infrared band
In general, that project seems more mature in replicating Mnih than DeepOSM. Our next goal is a website to show errors in OSM data to be corrected, rather than finish making the net deeper.
Yeah, I think there is a big future in automated and semi-automated OSM updates, combining trace data and machine learning. That was part of my interest in this.
My company Gaia GPS has millions of GPS traces from hiking and similar outdoorsy activities, so I thought to combine that data (though footways may be more challenging than roads to classify). OSM trace uploads and Strava both seem like good data sources to do this work too.
Second bit of feedback - http://improve-osm.org/ does a pretty good job of highlighting areas of potentially unmapped areas. Via slack, I've made the suggestion to them to open their platform up to multiple sources such as strava gps traces (via their tile layer).
Would you be open to working with them to deliver the potential missing roads; so that you don't have to reimplement a lot of the basics?
Offtopic, but does someone know a good reference and explanation for OSM tags? A lot of meaning is derived from tags, since the underlaying data structure is just nodes, ways and relations. And since the data is crowd sourced use of tags could be inconsistent, data could overlap and repeat itself. How someone makes a complex project like [1] using data like this?
Taginfo[1] provides statistics on tags in use and there's a huge amount of documentation for tags (differences between tags, how to use them in certain situations, etc) in the wiki.
As an example, the page for highway tags[2] is quite rich.
Broadly the people who contribute, contribute because they want the data to be useful. The people who don't care about the data being useful aren't contributing.
Obviously the data is imperfect, and there are lots of edge cases (https://github.com/Project-OSRM/osrm-backend/issues/2145). But overall, it works pretty well. There are regional disagreements about the highway hierarchy (primary/secondary/tertiary/etc), but as long as the structure is locally consistent, you generally get the routing results you expect (routes tend to major arteries, etc).
ETA calculation is a bit hit-and-miss, but the only way to correct this is to use real-world measurements.
The great thing is that if you find something weird, you can just fix it. This happens overwhelmingly more often that people deliberately introducing errors.
The nightmare comes when you mix it with proprietary datasets that you license from somebody else. Many companies right now are doing that and it is dubious grounds to stand on.
18 comments
[ 3.0 ms ] story [ 47.2 ms ] threadAlso how does it compare with https://github.com/mitmul/ssai-cnn
Looking at that repo, the main differences are:
* that code applies to a specific (massachusetts) data set, while DeepOSM uses nationwide USA NAIPs trained against OSM extracts
* they seem to have implemented the full Mnih CNN - DeepOSM just uses a single layer as is
* Mnih didn't touch on using the infrared band
In general, that project seems more mature in replicating Mnih than DeepOSM. Our next goal is a website to show errors in OSM data to be corrected, rather than finish making the net deeper.
edit: added links to paper and code https://github.com/trailbehind/DeepOSM/commit/8053057635a1a0...
> Our next goal is a website to show errors in OSM data to be corrected
Do you mean feeding the data to one of the existing projects that crowdsource fixes based on lists of potential errors, or a new custom site?
Here's the app work: https://github.com/trailbehind/DeepOSM/compare/feature/deepo...
https://github.com/osmlab/to-fix
or
https://github.com/maproulette/maproulette2/
to help with evaluating/fixing of the errors you find.
For example: http://labs.strava.com/routing-errors/#250/17/-46.42546/-21.... gives a fairly strong indication that something is navigable on bicycle or foot; even if OSM hasn't mapped it yet.
My company Gaia GPS has millions of GPS traces from hiking and similar outdoorsy activities, so I thought to combine that data (though footways may be more challenging than roads to classify). OSM trace uploads and Strava both seem like good data sources to do this work too.
Would you be open to working with them to deliver the potential missing roads; so that you don't have to reimplement a lot of the basics?
[1] http://project-osrm.org/
As an example, the page for highway tags[2] is quite rich.
[1] https://taginfo.openstreetmap.org [2] http://wiki.openstreetmap.org/wiki/Key:highway
Which leads to things like: https://wiki.openstreetmap.org/wiki/Quality_assurance
Obviously the data is imperfect, and there are lots of edge cases (https://github.com/Project-OSRM/osrm-backend/issues/2145). But overall, it works pretty well. There are regional disagreements about the highway hierarchy (primary/secondary/tertiary/etc), but as long as the structure is locally consistent, you generally get the routing results you expect (routes tend to major arteries, etc).
ETA calculation is a bit hit-and-miss, but the only way to correct this is to use real-world measurements.
The great thing is that if you find something weird, you can just fix it. This happens overwhelmingly more often that people deliberately introducing errors.
Also, see https://www.reddit.com/r/scholar .