SLIDE 1 Creating GPX tracks from cycle routes in OpenStreetMap
Henry Miskin
SLIDE 2 Overview
- 1. Introduction
- 2. OpenStreetMap Data
- 3. Processing Cycle Routes
- 4. Complete Cycle Routes
- 5. Challenges & Next Steps
SLIDE 3
Introduction
SLIDE 4
Who I am
Henry Miskin @hpgmiskin hpgmiskin Cycling
SLIDE 5
- Poor or damaged signage
- Foliage covers signes
- Hard to recover when off route
Following cycle routes
SLIDE 6
OpenCycleMap
SLIDE 7
OpenCycleExport
Country Cycle Route
github.com/hpgmiskin/OpenCycleExport
SLIDE 8
Why GPX files
SLIDE 9
OpenStreetMap Data
SLIDE 10
OpenStreetMap Data Model
Node Way Relation Coordinate Road Footpath Cycle Route
SLIDE 11
Shapely Linemerge
SLIDE 12
Shapely Linemerge Issues
SLIDE 13
Ways not terminating together
SLIDE 14
Ways not connected
SLIDE 15
Processing Cycle Routes
SLIDE 16 How it works
Overpass API Result Cache Download Relation Process Ways Save GPX File Create Route
SLIDE 17 Processing ways
- 1. Find all places ways intersect
- 2. Split ways at all intersecting points
- 3. Create cost matrix between all intersections
COST = DISTANCE * COEFFICIENT
Cycle Only Cycle Permitted Passible Road Impassable Road No Road
SLIDE 18 Creating a route
- 1. Find furthest points from one another
- 2. Use Dijkstra's algorithm to find shortest path
- 3. Compute route in both directions
SLIDE 19
Basic routing example
SLIDE 20
Missing link example
SLIDE 21
Complete Cycle Routes
SLIDE 22
Belgium - RV4
SLIDE 23
France - V86
SLIDE 24
United Kingdom - Route 2
SLIDE 25
Challenges & Next Steps
SLIDE 26 Current challenges
- Finding elevation data for routes
- Continuity of cycle routes or route data
- Finding the true start and end points
SLIDE 27 Next Steps
- Release GPX files on GitHub
- Declare which routes are not continuous
- Split routes by the towns they pass through
SLIDE 28
Any questions?