Biểu trưng OpenStreetMap OpenStreetMap

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

Do mvexel đăng vào 10 tháng 03 năm 2016 bằng English. Cập nhật lần cuối cùng vào 11 tháng 03 năm 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!

Biểu tượng thư điện tử Biểu tượng Bluesky Biểu tượng Facebook Biểu tượng LinkedIn Biểu tượng Mastodon Biểu tượng Telegram Biểu tượng X

Thảo luận

Bình luận của SK53 vào 11 tháng 3 năm 2016 lúc 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

Bình luận của mvexel vào 11 tháng 3 năm 2016 lúc 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?

Bình luận của mvexel vào 11 tháng 3 năm 2016 lúc 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.

Bình luận của mvexel vào 11 tháng 3 năm 2016 lúc 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.

Bình luận của Piskvor vào 12 tháng 3 năm 2016 lúc 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.

Bình luận của mvexel vào 13 tháng 3 năm 2016 lúc 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.

Bình luận của Stereo vào 14 tháng 3 năm 2016 lúc 15:30

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

Bình luận của mvexel vào 14 tháng 3 năm 2016 lúc 21:12

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

Bình luận của Piskvor vào 18 tháng 3 năm 2016 lúc 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.

Đăng nhập để nhận xét