graphhopper / map-matching

The map matching functionality is now located in the main repository https://github.com/graphhopper/graphhopper#map-matching
https://www.graphhopper.com/open-source/
Apache License 2.0
785 stars 274 forks source link

If a u-turn happens in the measured data the match could be truncated #85

Closed karussell closed 6 years ago

karussell commented 7 years ago

map-matching-export

Probably due to current code like distanceCalc.calcDist() > 2 * measurementErrorSigma? I guess, rather not, as I can reduce the gps accuracy to 15m (road is roughly 100m long) and still get the truncated snap. Also access to this road seems to be okay. I have the gpx file available here locally.

kodonnell commented 7 years ago

Hmmm, that's odd. Can you either post the GPX or

As an aside - is there a way we can add this to the codebase as a (currently) failing test? We obviously can, but then it'll fail builds etc. Can it be marked as more of a warning - so the build passes, but the user is still aware it's failing?

karussell commented 7 years ago

Can you either post the GPX

Could send it to you per email (if you like or have time to investigate) or I will trim down or reproduce in another area so that we can add it without adding a new pbf.

Can it be marked as more of a warning - so the build passes, but the user is still aware it's failing?

We could add it as a test that we tag with @Ignore, which should be listed separately I hope.

kodonnell commented 7 years ago

Could send it to you per email (if you like or have time to investigate)

Happy either way.

without adding a new pbf

That'd be best - though it's probably OK to add small pbfs (e.g. #83) using OSM export to select only the relevant region. (EDIT: see comment two below about the export.)

We could add it as a test that we tag with @Ignore

Ah, that's cool. When you/I get the minimum example, do you want me to add a (failing) test? Or do you want to wait until we figure it out?

karussell commented 7 years ago

When you/I get the minimum example, do you want me to add a (failing) test? Or do you want to wait until we figure it out?

Depends a bit on the type of the bug. If its hard to fix -> tag it with ignore

kodonnell commented 7 years ago

See issue85.txt for a minimum example.

Can use this export, but probably not a good idea to put into the repo unless there's an easy way to filter to only roads. (I will update my above comment.)

karussell commented 7 years ago

unless there's an easy way to filter to only roads

Nice idea which we could apply to all existing osm files.

Maybe osmosis? osmosis --read-xml city.osm --tf accept-ways highway=* --used-node --write-xml highways.osm

or somehow with https://wiki.openstreetmap.org/wiki/Osmconvert

devemux86 commented 7 years ago

Also Osmfilter.

kodonnell commented 7 years ago

Thanks both - created a new issue so we can keep this one on track.

michaz commented 6 years ago

Seems to me like it wasn't disproven that this is an "inner-link U-turn", which, according to #83, we are deliberately modelling as "doesn't happen". So this is probably expected behavior.