Question

Map matching using the NeighborFinder


Hello everyone,

 

 

I have GPS-coordinates of vehicles and want to match them on a streetnetwork (Shape, Polylines). I already created a Polyline with the pointConnector. Furthermore I shortened the streetnetwork in parts of 5 meter length. In the NeighborFinder I used the Polyline as Candidate and my street network parts as base. It worked fine despite that at intersections the parts of streets that enter the used network are also detected as neighbors of the GPS-Polyline. I already tried to set a lower maximum distance, but that didn't work.

 

Perhaps someone has an idea how to solve this problem...

 

 

Thank you and best wishes,

 

Gesa

2 replies

Userlevel 4
Hi

 

 

matching fuzzy lines to a road network can be relatively complicated business. First, you may have switched around your base and candidate features and I'd start by verifying that. From the help:

 

 

Finds the Candidate features closest to each Base feature [...]

 

 

Next, you will most probably have to specify the "Close candidate list name". If you send your road network into the candidates, this list will contain all the street network segments within the tolerance distance of your GPS track. You will then have to analyse this list to exclude thos of no interest to you.

 

 

Another alternative strategy is to buffer all your GPS tracks and then use a LineOnAreaOverlayer with the street network. Again using a list to get the street segments that overlap your buffer, select only those that overlap "the most" based on length.

 

 

David
Hi David,

 

 

thanks a lot for your answer. The problem concerning the neighborFinder is, that I want to have the streets where the car drove on as output. And as far as I understood, the base is always the output... Or is there a possibility to get the candidates as output?

 

 

And concerning the LineOnAreaOverlayer, is there a way to get only the parts of the street network that are totally within the Buffer? With "select only those that overlap the most" you mean I just look in the attribute table or is there a transformer I can use for this?

 

 

Thanks again and greetings

 

Gesa

 

 

Reply