Logu d'OpenStreetMap OpenStreetMap

Help map some sidewalks for cities in the U.S.

Pubblicatu di mvexel lu 10 March 2016 n English Ùrtimu aggiurnamentu lu 11 March 2016.

This post also appears on the ImproveOSM blog

United States cities are built for cars, with very few exceptions. From where I am sitting right now, I see this:

carscarscars

Cars zooming by incessantly at 70kph.

Finding your way in an urban space that is designed this way is tricky - and often dangerous - if you are walking or bicycling. Sidewalks are often not present, crossing streets can be very dangerous or even impossible. OSM has great tagging for bike lanes and sidewalks, but I find that these crucial tags are often missing on ways that need them most: the four or six lane urban arterials that you see in the picture above.

As I was sitting here asking myself how on earth I would get back to my hotel (which is 10 minutes away) safely, I thought to myself: ‘we can fix this problem and make the world a bit safer for those who can’t or won’t drive.’

MapRoulette to the rescue!

I created this challenge highlighting all primary and secondary ways that have no sidewalk tag in Tampa, Florida. (I am actually in Sarasota now, south of Tampa, but I already fixed all the ways there so that would be a boring challenge.) The idea is to look at the aerial image in JOSM or iD, see if there is a sidewalk, and add the appropriate tag. Adding sidewalk=no is actually just as important as adding both, right or left. Here is an example way from this challenge:

exampleway

Even zooming further in there is no sight of a sidewalk:

zoomedin

So let’s add that information:

tagging

And upload!

Create a Challenge for your city

The fun part is that you can easily replicate this challenge for your own city. Here’s what to do.

Overpass Turbo

First you head over to Overpass Turbo and run the query that highlights all highway=primary and highway=secondary that have no sidewalk tag:

overpassturbo

You can use my query as a template, replacing the GeocodeArea with the name of your city.

Once you have the results, export them to GeoJSON. Let’s use a gist:

gist1

gist2

You can now click on the gist link and see the result on GitHub as well:

github

We will need the ‘raw’ GeoJSON content, so click on the ‘Raw’ button and copy the link it leads you to.

Geojson2MapRoulette

Next we’ll use a little tool I created to easily turn the contents of a GeoJSON file into a MapRoulette challenge. To get it, head over to the Github repository and follow the instructions to install the tool.

The tool takes its configuration from a YAML file. The samples directory contains an example for this sidewalks challenge you can use as a template:

# the base URL for the MapRoulette server API to call
server: http://dev.maproulette.org/api
#server: "http://localhost:5000/api"
#server: http://maproulette.org/api

# server API admin credentials
user: devuser
password: mylittlesony

# source file or URL. You can give a list of URLs too, all data will be gathered and added to the same challenge.
source_url: https://gist.githubusercontent.com/anonymous/310005dc1dcf08f5c4a7/raw/74aa0d6a845a20511d0c450d715dab23d2a6c0d6/overpass.geojson
# source_file: ....

# source geojson property key to use as your task identifier (optional, will use random UUID if not given)
# identifier_property = ...

# Challenge metadata, see https://gist.github.com/mvexel/b5ad1cb0c91ac245ea3f for background
slug: sidewalks-sarasota
title: Add sidewalks to major roads in Sarasota
instruction: This way has no `sidewalk` tag. Usually you can see from the aerial imagery if there is a sidewalk or not. Please add the appropriate `sidewalk` tagging.
help: "Help make OSM be a better resource for safe, walkable streets! Many primary and secondary roads in the US are not safe for pedestrians if there is no sidewalk. This challenge highlights all `primary` and `secondary` ways that have no [`sidewalk`](https://wiki.openstreetmap.org/wiki/Key:sidewalk) tagging whatsoever. You can help by looking at aerial imagery and adding the appropriate `sidewalk` tagging. `sidewalk=no` is just as important to have as the 'positive' values. Thanks for helping make OSM better!"

The only items you would need to change are the source_url (use the raw GeoJSON github link you just copied), the slug (use sidewalks-YOURSTATE-YOURCITY or something similar - this will be the challenge URL component in MapRoulette) and the title (change the city name).

By default this configuration will post to dev.maproulette.org. If you want to post to maproulette.org you would need to get in touch with me to get the credentials.

Once you have the YAML config file in order posting to MapRoulette is as simple as:

$ ./geojson2maproulette.py samples/sidewalks-sarasota.yaml --post --activate
Posting 364 tasks...
server alive: True
Updating challenge...
Reconciling tasks...
Done!

Let me know if you need any help with this or if you want me to create a challenge for you!

Email icon Bluesky Icon Facebook Icon LinkedIn Icon Mastodon Icon Telegram Icon X Icon

Discussion

Cummentu di SK53 lu 11 March 2016 ê 19:54

Hi Martijn,

sidewalk=none is the most used value when sidewalks are not present on either side of the road, not sidewalk=no. It would be nice if we avoid creating two equivalent values.

Jerry

Cummentu di mvexel lu 11 March 2016 ê 19:58

Agreed on supporting one value and avoiding confusion. I followed the wiki recommendation which is at second glance arguably unclear. Under no it says * no is preferred, despite this tag being in wide use. So what does that mean? Is *no preferred, or none?

Cummentu di mvexel lu 11 March 2016 ê 20:00

For now I will change it to none in the description and template files, as that value seems to have more traction than no.

Cummentu di mvexel lu 11 March 2016 ê 20:24

OK, reading it again…It looks like it is clear. the wording no is preferred, despite this tag being in wide use appears in the description for the value none. So I edited this post and the original post to reflect that preference. I will also update the challenge and the sample config file in the github repo.

Cummentu di Piskvor lu 12 March 2016 ê 16:58

Note that some sidewalks are mapped separately from the vehicular road - not sure if that’s a significant issue in U.S. data, but might generate false negatives where mapped this way.

Cummentu di mvexel lu 13 March 2016 ê 14:47

Piskvor – indeed there may be false negatives (or positives depending on how you look at it) because of this. I used to map sidewalks as separate geometries, but I stopped doing it in favor of just mapping sidewalk tags. Some folks argue that separate geometries for sidewalks can help with specific use cases like wheelchair mapping. If anyone can explain to me how separate geometries would help those use cases in a way that sidewalk tags (perhaps augmented by more specific sidewalk:*:* tags) could not, I may change my mind again.

Cummentu di Stereo lu 14 March 2016 ê 15:30

Do any data consumers, renderers, or routing engines use the sidewalk=* tag?

Cummentu di mvexel lu 14 March 2016 ê 21:12

Stereo, we do not currently use it for Scout, see https://taginfo.openstreetmap.org/keys/sidewalk#projects

Cummentu di Piskvor lu 18 March 2016 ê 15:36

@mvexel: In places where roads are the primary development (like US cities, as you note), sidewalk=* allows for simpler (and thus hopefully more plentiful) tagging, even though this would put more work on data consumers; where footways are not necessarily next to roadways e.g. ( osm.org/#map=18/50.09163/14.38893 ), keeping separate geometries is better.

Pi lassari cummenti trasi