emil at tin.dk
Sun Mar 17 08:10:07 UTC 2013
OpenLR is an open source dynamic location referencing system, developed by TomTom: http://www.openlr.org. It solves the problem of how to match ways between different maps. This is not trivial, since the maps might model the network differently, lack some ways, etc.
Interestingly, OpenLR is based on using shortest-path routing to connect a number of intersection nodes. In addition it uses the bearing, type, distance, etc. to identify the correct ways.
Supporting OpenLR in OSRM, or adopting some of it's techniques, might have several interesting benefits:
- Supporting roadworks and other types of traffic messages when preprocessing data. Sometimes the info will be in OpenLR format, in which case the benefit of supporting OpenLR is obvious. Or the data might reference a different map, and you need a way to map it onto the OSRM network. This is exactly what OpenLR is good at.
- When using OSRM for GPS turn-by-turn navigation on mobile devices, recalculting the route should start from the way you're actually on. If you're on a way that's split into two oneway (like a motorway), a small GPS error can easily place the starting point in the wrong direction. To solve this, OSRM could take into account the direction you're currently moving, and perhaps the speed (and thus road class). This is similar to how OpenLR works - using bearing, functional road class, etc. to find the correct way.
- OSRM could potentially form the basis of a powerful map matching/merging tool. For example, in Denmark a lot of road data from municipalities was recently released to the public, and people (including me) are trying to figure out how to compare and merge it into OSM (see http://streetmerge.org). The idea would be to take two maps and identify what ways are in one map, but not the other. A purely geometric matching is not so effective, due to the differences in how the networks are modelled. The OpenLR approach of matching ways would be much better. Since OpenLR is based on shortest path routing, OSRM already provides half the implementation.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the OSRM-talk