I am using OSM road data as a basis for my project. For some of the roads I have additional info. Pink roads are OSM roads and green is the road data I got elsewhere. enter image description here

What I need to do is to find which roads are identical and add the extra info I got to the OSM road layer.

The problem is that the line segments are not the same and the info I want is connected to each of the line segments. Are there any tools that would split the osm line segments so that if the line segment of the other data ends then the OSM segment would also end.

Also are there any tools that compare if the segments are the same? I've been using qgis, gdal, python and postgis for this project.

  • Does QGIS have any 'conflation' tools? – mkennedy Dec 25 '16 at 21:20

In general, you won't be able to do this without some reasonably complex logic. The reason is that your visual "same" is not the same at the underlying (double precision floating point number) data level.

Combining information like this is known as vector conflation, where you have good information in two (or more) sources, but it isn't good in the same way, and you want to get a "best of good" result. One option is NGA's Hootenanny - you may also need the UI git submodule. Its relatively complicated to build the stack, but there are packages for RPM based distro to help along the way.


MAYBE you can get some results via map matching ...

see https://graphhopper.com -> Map Matching API

or Conflation according to the OSM wiki.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.