All Projects → mapbox → Wikimama

mapbox / Wikimama

Licence: isc
Scripts to help matching OSM features to Wikidata items

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Wikimama

osm-wikidata
Match OSM entities with Wikidata items
Stars: ✭ 72 (+800%)
Mutual labels:  wikidata, openstreetmap
equalstreetnames
Map visualizing the streetnames by gender : 50 cities in 11 countries
Stars: ✭ 64 (+700%)
Mutual labels:  wikidata, openstreetmap
Timezone Boundary Builder
A tool to extract data from Open Street Map (OSM) to build the boundaries of the world's timezones.
Stars: ✭ 469 (+5762.5%)
Mutual labels:  openstreetmap
Knowledge
combining wikidata and clojure core.logic
Stars: ✭ 16 (+100%)
Mutual labels:  wikidata
Openrouteservice
🌍 The open source route planner api with plenty of features.
Stars: ✭ 614 (+7575%)
Mutual labels:  openstreetmap
Osmtogeojson
convert osm to geojson
Stars: ✭ 493 (+6062.5%)
Mutual labels:  openstreetmap
Abstreet
Transportation planning and traffic simulation software for creating cities friendlier to walking, biking, and public transit
Stars: ✭ 6,355 (+79337.5%)
Mutual labels:  openstreetmap
Mapsui
Mapsui is a .NET Map component for WPF, Xamarin.Forms, Xamarin.Android, Xamarin.iOS and UWP
Stars: ✭ 447 (+5487.5%)
Mutual labels:  openstreetmap
Osm Testdata
OpenStreetMap Test Data.
Stars: ✭ 24 (+200%)
Mutual labels:  openstreetmap
Umap
uMap lets you create maps with OpenStreetMap layers in a minute and embed them in your site.
Stars: ✭ 609 (+7512.5%)
Mutual labels:  openstreetmap
Osm4j Core
Core components of osm4j
Stars: ✭ 16 (+100%)
Mutual labels:  openstreetmap
Kosmtik
Make maps with OpenStreetMap and Mapnik
Stars: ✭ 611 (+7537.5%)
Mutual labels:  openstreetmap
Barefoot
Java map matching library for integrating the map into software and services with state-of-the-art online and offline map matching that can be used stand-alone and in the cloud.
Stars: ✭ 541 (+6662.5%)
Mutual labels:  openstreetmap
Osm2xmap
Converter from OpenStreetMap data format to OpenOrienteering Mapper format.
Stars: ✭ 5 (-37.5%)
Mutual labels:  openstreetmap
Tilemaker
Make OpenStreetMap vector tiles without the stack
Stars: ✭ 468 (+5750%)
Mutual labels:  openstreetmap
Osmproxy
OpenStreetMap tile proxy for REDAXO
Stars: ✭ 17 (+112.5%)
Mutual labels:  openstreetmap
Osrm Backend
Open Source Routing Machine - C++ backend
Stars: ✭ 4,716 (+58850%)
Mutual labels:  openstreetmap
Blender Osm
One click download and import of OpenStreetMap and terrain for Blender! Global coverage! Source code is in the branch 'release'.
Stars: ✭ 588 (+7250%)
Mutual labels:  openstreetmap
Map Matching
The map matching functionality is now located in the main repository https://github.com/graphhopper/graphhopper#map-matching
Stars: ✭ 665 (+8212.5%)
Mutual labels:  openstreetmap
Osm2geojson
Convert OSM and Overpass JSON to GeoJSON
Stars: ✭ 25 (+212.5%)
Mutual labels:  openstreetmap

OSM <-> Wikidata matching

This repo contains scripts to aid in manually matching OSM IDs to Wikidata IDs. See https://wiki.openstreetmap.org/wiki/Wikidata for details.

Setup

Use node version >= 6

  • npm link
  • pip install -r requirements.txt
  • match-wikidata-osm --file input.csv

batch-match.js

batch-match.js takes a CSV of places and queries Overpass for OSM features, then Wikidata for neighboring entities, runs a match based on geographic distance and levenshtein distance. It finally writes the possible matches into a CSV for manual verification.

node batch-match.js --file input.csv

input.csv is expected in this format:

City, longitude, latitude, wikidata_id, radius, threshold distance

City: name of the city for which the neighbourhoods around it are looked for

Longitude: Longitude value at the centre of the city

Latitude: Latitude value at the centre of the city

wikidata_id: Wikidata id of the city

Radius: Distance to query from the centre of the city

Threshold distance: Maximum distance around osm feature which needs to be looked for potential wikidata matches. For example, when looking for a match for a neighbourhood, this value could go low upto 2 km. But when looking for a match for a country or so, this value can go high upto 500 km.

Note: See an example input file under test folder.

batch-match.js uses the following pieces:

query-overpass.js

Queries Overpass for OSM features around a particular coordinate. See query.ql for the query. Radius is in kilometers. Returns results as CSV.

query-wikidata.js

Queries Wikidata for features around a particular Wikidata entity defined by a radius.

match.py

Take OSM features and wikidata features and uses distance as well as fuzzy name matching to predict potential matches and generates a CSV for manual review.

One can also use the above three scripts in a standalone manner.

query.js

For querying wikidata, use the following command. It will generate city_name_wiki.csv.

node query.js wikidata city_name wikidata_id radius

For querying overpass, use the following command. It will generate city_name_osm.csv.

node query.js overpass city_name longitude latitude radius

For creating match between osm csv and wiki csv, use the following command.

python match.py osmCSV wikiCSV Threshold distance

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].