Effectief maxspeed taggen met JOSM

Nu ik ruim 1.000 km aan snelheidslimieten met dezelfde werkmethode heb gemapt, kan ik met enig zelfvertrouwen zeggen dat ik een effectieve manier heb gevonden om alle Nederlandse wegen te voorzien van snelheidslimieten. Ik heb geen idee hoeveel kilometers we nog te gaan hebben, maar ik weet wel dat het veel meer is dan ik zelfstandig kan doen, dus bij deze is hier mijn handleiding zodat we dit samen voor elkaar kunnen krijgen. Deze handleiding is bedoeld voor mappers die al vertrouwd zijn met het gebruik van JOSM. Alle links staan onderaan vermeld.

Het startpunt van de werkmethode is het uitvoeren van een Overpass query voor wegdelen zonder expliciet snelheidslimiet en alle aanliggende wegdelen. Deze query plak je in de download-pagina van JOSM onder “Download from Overpass API.” Druk onderin de popup op “Download” om de OSM data te downloaden. Daar leg je vervolgens de PDOK luchtfoto onder, en eventueel ook de BGT omtrekgericht. Zet in de instellingen van JOSM de Map Paint Style “maxspeed” aan om in één oogopslag te zien welke wegen al een expliciet snelheidslimiet bevatten.

Zodra je dat hebt, kun je in principe al een hoop snelheidslimieten interpoleren, maar we kunnen meer voorbereiding doen, in ieder geval in Nederland. Hiervoor nemen we de NDW verkeersbordenkaart erbij. PeeWee32 levert aan ons een uitstekende dienst in de vorm van verkeersborden die je direct in je QGIS kunt visualiseren. Dit kun je vervolgens filteren op verkeersborden voor snelheidslimieten (A1 enz). Naast je JOSM houden om bijna alle snelheidslimieten te bepalen. Zelf gebruik ik de webmap van ESRI met de verkeersbordenkaart. Om op straatniveau te controleren kun je Mapillary erbij pakken.

De meest relevante (Nederlandse) verkeersborden zijn A1, A2, G5, G6, H1, H2, A1(Zone), A2(Zone) en A1E1(Zone).

Nu hoef je niet bij elke weg na te gaan welk bord daarbij hoort. Dat kan ook niet, want veel wegen en straten vallen binnen zones en hebben geen eigen borden. Wat je wel kunt doen is goed kijken waar een zone begint en eindigt. Als je bijvoorbeeld een hele set aan A1E1 borden in een U-vorm ziet staan, dan heb je hoogstwaarschijnlijk te maken met een 30-zone met daaromheen een 50 km/u weg. Als je de straten in die U-vorm in JOSM allemaal selecteert, hoef je maar Ă©Ă©n keer de tag maxspeed=30 in te vullen voor de hele woonwijk. In JOSM zie je dit patroon meestal ook makkelijk terug, omdat de meeste 50-wegen al maxspeed tags hebben.

Soms zijn er zoveel straten vlakbij elkaar die je met maxspeed=30 wilt taggen, dat het inefficiënt is om ze allemaal handmatig aan te klikken. In dat geval selecteer gebruik je de sleep-methode om een hele set met wegen te selecteren. Vervolgens druk je op ctrl F en plak je de volgende tekst: (highway=residential or highway=service or highway=unclassified) and -access=* and -maxspeed=* and -motor_vehicle=no
Kijk de resultaten goed na, (de)selecteer wat je verder ook of juist niet wilt taggen, en voeg de tag toe. Met de Map Paint Style “maxspeed” aan zouden al deze wegen nu blauw gekleurd moeten zijn.

Hier is nog een korte uitleg over hoe je met de Overpass query inzoomt op een specifieke plek op de kaart. Het is immers geen rechthoekige boundary box die je zomaar sleept. Het stuk admin_level=* staat voor een grens. Nummer 8 is een gemeentegrens. name="....." staat voor de naam zoals deze in OSM staat. Wil je de gemeente Utrecht, vul dan name=“Utrecht” in. Wil je de stad Utrecht, wijzig dan ook admin_level=8 naar admin_level=10. Wil je de provincie, dan wordt dit admin_level=4. Probeer vooral niet om heel Zuid-Holland in één keer in te laden. Je kunt ook zoeken binnen andere gebieden, zoals een regio. Verander dan de query naar area[place=region][name="....."]. Je kunt veel meer slimme dingen doen met Overpass, maar dat laat ik hier buiten beschouwing.

Zodra je klaar bent met bewerken kan het leuk zijn om te zien hoeveel kilometers aan snelheidslimieten je hebt bijgedragen. Open hiervoor in JOSM de “Measurement window.” Klik hiervoor op het liniaal icoon aan de linkerzijde. Druk vervolgens op ctrl F en zoek naar type:way maxspeed=* modified. In het tabblad dat je net geopend hebt zie je dan een mooi lengtegetal verschijnen. Als je je wijzigingen al geüpload hebt en alsnog je voortgang wilt meten, zul je complexere zoekacties uit moeten voeren.

Dat is alles voor nu. Ik sta open voor vragen, feedback en andere werkmethoden om efficiënt maxspeed te taggen. Mijn einddoel is dat we meer dan 98% van de relevante wegen voorzien van een maxspeed tag zodat we de snelheidslimieten in de toekomst alleen nog maar te hoeven onderhouden.

Links:
Overpass query (browserversie met korte toelichting)
Overpass query (voor knip- en plakwerk in JOSM)
NDW verkeersbordenkaart (Geopackage van PeeWee32)
NDW verkeersbordenkaart (webmap van ESRI)

2 Likes

Bedankt voor de write-up!

Op basis van een planet dump van 2024-03-08T19:00:00Z is er nog 18 * 1000 km te doen waarbij ik highway=service niet mee neem:

  • motorway :: missing maxspeed: 37 km, total: 6883 km, pct with maxspeed: 99.5
  • trunk :: missing maxspeed: 20 km, total: 2432 km, pct with maxspeed: 99.2
  • primary :: missing maxspeed: 34 km, total: 6696 km, pct with maxspeed: 99.5
  • secondary :: missing maxspeed: 99 km, total: 8785 km, pct with maxspeed: 98.9
  • tertiary :: missing maxspeed: 1158 km, total: 19318 km, pct with maxspeed: 94.0
  • unclassified :: missing maxspeed: 9821 km, total: 48233 km, pct with maxspeed: 79.6
  • residential :: missing maxspeed: 6933 km, total: 41545 km, pct with maxspeed: 83.3
  • living_street :: missing maxspeed: 8 km, total: 2370 km, pct with maxspeed: 99.7
  • total :: missing maxspeed: 18110 km, total: 136262 km, pct with maxspeed: 86.7

Ik denk dat het de laatste stukken wel langzamer gaan, een stuk of dorp waarbij voor een (groot) deel de maxspeed ontbreekt is een stuk sneller op te lossen dan een vergelijkbare set van “losse” wegen.

Wat me mezelf is opgevallen is dat locaties waar de wegbeheerder een zooitje ervan heeft gemaakt (andere/geen borden als je via een andere route komt) grote vertraging voor mij opleveren en ook een beetje de lol er van af halen.

Mijn werkwijze is grotendeels dezelfde en heb ik gedocumenteerd op NL:Maximumsnelheid onder de koppen Werkwijze en Gereedschap.

De NDW verkeersbordenkaart (webmap van ESRI) kende ik nog niet dus die heb ik maar aan de Wiki pagina toegevoegd.

1 Like

De NDW-website zelf heeft ook handige viewers:

1 Like

Na heel wat meer maxspeed mappen is mijn werkwijze verder verfijnt, QGIS is nu het belangrijkste gereedschap naast Josm.

In QGIS heb ik:

  • de verkeerbordenlaag van @PeeWee32 met alleen de borden aan die van belang zijn voor de maxspeed
  • een openstreetmap_maxspeed laag met een kleur gecodeerde weergave van de wegen met maxpeed
  • een openstreetmap_no_maxspeed laag in rood voor de wegen zonder maxspeed

Die laatste twee lagen zijn gebaseerd op dezelfde dataset maar een andere query. Twee lagen zodat ik makkelijk alleen de wegen zonder maxspeed kan zien en dan inzoomen op waar ik wil zijn. Daarna de andere lagen weer aan om te zien wat er al in de buurt gemapt is en wat voor verkeersborden er zijn.

Zo kan je heel makkelijk ontbrekende stukken maxspeed invullen:

  1. Zoom in QGIS in op een weg zonder maxspeed
  2. Bepaal aan de in omgeving gemapte wegen en de borden wat de maximumsnelheid is
  3. Selecteer de JOSM remote knop (van de QuickOSM Toolbar) om het huidige gebied in QGIS in JOSM te laden
  4. Werk in JOSM de maxspeed van de weg bij

Met Alt-Tab kan je makkelijk switchen tussen QGIS en JOSM.

NDW George gebruikt ik nog af-en-toe om te kijken of het een zone bord is of niet.

Voor wijken of buurten:

  • Download eerst in Josm de wegen zonder maxspeed voor het gebied
  • Daarna de randen nalopen en voorzien van maxspeed, zorg dat je een gebied hebt/krijgt met allemaal dezelfde maxspeed.
  • Daarna het gebied binnen/over de randen selecteren met “freehand select” (twee keer “s” in JOSM). Dan heb je alle punten en wegen maar ook gebouwen in het gebied geselecteerd.
  • Dan Ctrl-F met type:way highway~"(residential|unclassified|tertiary|secondary)" -maxspeed en “find in selection” en je hebt (alleen) alle wegen die nog geen maxspeed hebben.
  • Nu maxspeed=XX voor al die wegen en klaar.
1 Like