Skip to main content

A map matching library

Project description

Gitter GitHub stars GitHub contributors GNU GPL v3 Build Status

My implementation of the map matching algorithm from this article (Althought with some modifications). The goal is to get the streets from a gps track.

This is how it looks like:

Output of the example run

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

You’ll need python 3.5+ and a redis server running. The usage of a virtual environment is recommended.

Install from pypi:

$ pip install mapmatching

Or install from source:

$ cd mapmatching
$ python setup.py install

Usage

Download data from OpenStreetMaps:

$ mapmatching download -h
$ mapmatching download -96.99107360839844 19.441181182861328 -96.846435546875 19.59616470336914 -o streets.json

And load it to redis, by default it loads it to database 1 instead of redis default of 0.

$ mapmatching load streets.json

The two previous commands can be chained:

$ mapmatching download -96.99107360839844 19.441181182861328 -96.846435546875 19.59616470336914 | mapmatching load

Then run the match task with a geojson file with a single gps track. A sample track that works with the sample bounding box is contained in the data/ directory of the repository.

$ mapmatching match -h
$ mapmatching match data/route.geojson -o output.json

Optionally visualize it in the browser:

$ pip install geojsonio
$ geojsonio output.json

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mapmatching-0.1.5.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

mapmatching-0.1.5-py3-none-any.whl (27.1 kB view details)

Uploaded Python 3

File details

Details for the file mapmatching-0.1.5.tar.gz.

File metadata

  • Download URL: mapmatching-0.1.5.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.8.1

File hashes

Hashes for mapmatching-0.1.5.tar.gz
Algorithm Hash digest
SHA256 6e19fa2d78d4aa54b73f951891236edd1b940113492e350c42d137e6f6b8af26
MD5 f7f6db21dc9203dd0ab58fc2ab67ec7a
BLAKE2b-256 7604ca36dc30bbf2e6f4355d10cfdc7ed77c83c1f05ce4d104ab8d3bd154bf00

See more details on using hashes here.

File details

Details for the file mapmatching-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: mapmatching-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 27.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.8.1

File hashes

Hashes for mapmatching-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 3c2e60e8e17afdcdc304d45d562c77ef8d4a0e837a9bcde1184e1819552f3557
MD5 fb28cc6294de1b457ec302f1a3e53f3b
BLAKE2b-256 6aeb331f085d0fb3056d5e83b33d0e8bb527d693aa1e0eff86e36e07ab68d756

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page