OpenStreetMap

OpenStreetMap is navigable for bikes, on foot, and increasingly so for cars. But one thing we’re not yet great at is truck routing.

HGVs, lorries, trucks, whatever you call them, need to get from A to B without breaking either the road or themselves. Which means the map needs to know about height and width restrictions. 11foot8.com is a good example of what happens when truck drivers don’t have this information (and also can’t read):

11foot8.com

OSM coverage is good in parts but patchy. Fortunately, the existence of open street-level imagery means it’s really easy to map this sort of thing from the comfort of your own armchair. Here’s a brief how-to.

Step 1: Identify low bridges

The majority of important restrictions are height restrictions, and the great majority of height restrictions are railway bridges. (There are a few canal aqueducts too, though canal-related restrictions are generally weight restrictions on overbridges.)

So one way to find potential low bridges is to follow a railway on the map, looking for instances where the railway crosses the road on a bridge, rather than the other way round (or a level crossing). Doing this systematically is pretty easy.

Or you can automate it with this clever maxheight map, which looks for exactly this scenario, and highlights the map accordingly. (Github code here.)

Step 2: Find height from imagery

You can use Mapillary or OpenStreetCam as open(-ish) equivalents of Google Street View. Here, for example, is a railway bridge captured on OpenStreetCam.

Personally I like to use Geograph, the long-running UK georeferenced photography project. You can go straight to Geograph itself, but I actually use my own bike route-planner, cycle.travel, which has Geograph photos integrated into it. First you plan a route under the bridge:

plan route

then you click the road, and ‘View photos’:

see photos

and hey presto, you can see there’s a pic showing the height limit signage. Click that to see the full-resolution picture on Geograph.

There’s even an (undocumented?) option to show Mapillary views directly in the OSM Maxheight Map: http://maxheight.bplaced.net/overpass/map.html?mapillary=true

Step 3: Map it!

Just split the road to create a short way underneath the bridge, and add a maxheight= tag. You can use imperial units without a space (maxheight=12'9") or metric with a space (maxheight=4.5 m).

The results

It’s a really simple, straightforward process that makes the map instantly usable for truck routing. I fixed the bridges on the Cotswold Line railway (from Oxford to Worcester) in half an hour, from Geograph and personal knowledge. Greatly improving maxheight coverage in the UK should be doable in weeks rather than years. And, of course, it’s a good excuse to get out and survey those places where the height isn’t visible from imagery.

Once you’ve reviewed a whole railway, consider noting your work somewhere so that others can focus on other railways. I’ve started a wiki page for the UK at https://wiki.openstreetmap.org/wiki/United_Kingdom_bridge_heights .

Discussion

Comment from RobJN on 7 July 2017 at 15:33

Nice. I like the use of cycle.travel for the images. Didn’t know about that before.

Btw if you are mapping in Warwickshire there is some open data from the council for height restrictions that can be used.

Comment from ChristianSW on 7 July 2017 at 19:15

Thank you for this post! I love the Geograph project - it’s a great source for mapping, education and geo-photo-lovers!

Comment from ChristianSW on 8 July 2017 at 07:19

I would like to see more use of Geograph in OSM related projects.

https://wiki.openstreetmap.org/wiki/Geograph#Geograph_images_on_cycle.travel

Comment from Pavlo K on 11 July 2017 at 22:29

That’s really important. Thanks for remind!

Comment from GinaroZ on 14 July 2017 at 22:01

Is it allowed to use Geograph images to map other things as well?

Comment from ChristianSW on 15 July 2017 at 04:34

@GinaroZ In my opinion it’s no problem to use imagery as an additional source for details, but I am not sure about it. We discussed this question in the forum, but without result.

Log in to leave a comment