0

I have a bunch of raw GPS data points which constitute trips. I want to add semantic information to those data points. For example I'd like to be able to say that a trip consisted of taking street A, B and C.

With Openstreetmap I can download nodes and ways for a bounding box, which are again described through a bunch of nodes (lat/lng) points.

I actually have all the information I need to map my points to those of Openstreetmap. But reality is messy and my GPS data is not perfect, has outliers and goes off the road.

What is a good approach to calculate which ways or even relations belong to my GPS data?

What is the research done in this area?

Is there already a library that does all the work for me?

2

Maybe you can find some hints and solutions in Digitalizing GPX Points or How to Track Vehicles With GraphHopper by the developer of the OSM-based routing solution Graphhopper.

His project with your aim is called Map Matching

1

What you are after is a good map-matching algorithm. There are very few available off the self: see explanation and description on OSM. In case you're interested in simply using an API for that purpose, have a look at TraxMatching on my profile.

1
  • I was trying to use the linked to tool. It seems to be outdated. When I run it with any size of a osm file I get an Error: Value too large or too small message. This seems to be a general problem, since OSM has recently started to add ids that are bigger than what fits an int32. Link offers a solution
    – LeoR
    Feb 14 '15 at 0:47

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