Algorithms to find the streets that a vehicle should have traveled to generate a given GPS track
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
article
assets
build
data
javascript
lib
lua
overpass
.gitignore
Makefile
Pipfile
Pipfile.lock
README.md
main.py
requirements.txt

README.md

Map-Matching Algorithm

Gitter

My implementation of the map matching algorithm from this article. The goal is to get the streets from a gps track.

This is how it looks like: image The gray line is the gps trace and the colored lines describe the map-matched most-likely route in the streets for the vehicle.

For reference read the resulting article.

Setup

Install:

  • python3
  • redis >= 3.2.0

Download the data using the overpass api, there is a simple curl command to do that in the overpass/ folder:

$ cd overpass/
$ ./get_street_graph.sh

Install python dependencies. You may want to put them inside a virtualenv:

$ pip install -r requirements.py

Upload the street graph to redis:

$ ./main.py loaddata

Finally run one of the available tasks to do something.