mapbox / mapping

OpenStreetMap contributions from the data team at Mapbox
https://wiki.openstreetmap.org/wiki/Mapbox#Mapbox_Data_Team
242 stars 51 forks source link

Fix sidewalk tagging #126

Closed lxbarth closed 8 years ago

lxbarth commented 8 years ago

Based on the sidewalk analysis happening over on #125 we should fix tagging them. Use osm-sidewalker identify and fix all highway=footway that are sidewalks or crosswalks which are not tagged in OpenStreetMap.

Updated mapping instructions are documented here

lxbarth commented 8 years ago

Let's be careful with adding a footway=sidewalk tag to a highway=footway that contains a sidewalk relation to a road - it may not be established mapping practice.

tcql commented 8 years ago

I've got a slippy map of New York, DC, California, and Germany using the current logic here

@planemad can you take a look at this and see if you can do anything with it? Let me know how you think we could improve our sidewalk detection, and if there's anything I could do to improve the map / how we share this information

planemad commented 8 years ago

@tcql looks great. Was digging through the map and have some observations:

Summary

tcql commented 8 years ago

@planemad thanks! I'll hit as much of this this morning as I can

Motorways don't have sidewalks

:+1: removing motorways

Overall i'm seeing a lot of false positives and a majority of them are footways in leisure areas

That's tough to narrow in on - roads can cut through leisure areas, or run along the edges and have their sidewalks marked inside the park area

screen shot 2015-10-19 at 9 34 40 am

I'll see if there's some way to tighten this without excluding everything. If this turns out to be a big issue, we could just exclude footways in leisure areas from the search, and hit the obvious ones elsewhere for now.

Wether a footways is a sidewalk can sometimes be detected visually by seeing the arrangements of all footways in the vicinity. Some subtle coloring for other footways can help investigate these patterns further

Color all footways, subtly marking which are sidewalks, which are paths, etc?

The workflow to do this task as a team is currently not very effective. For starters we need a single click way to open the map location into JOSM.

I'll look into this today

planemad commented 8 years ago

I'll see if there's some way to tighten this without excluding everything. If this turns out to be a big issue, we could just exclude footways in leisure areas from the search, and hit the obvious ones elsewhere for now.

What could quickly help is highlighting parks and water areas on the map. That way its easier to investigate them visually on the map which is effective in taking a decision.

Color all footways, subtly marking which are sidewalks, which are paths, etc?

:+1: nothing too drastic. I feel the eye might be able to spot odd patterns more easily this way.

For starters we need a single click way to open the map location into JOSM.

Just remembered theres a great hack by @geohacker which could help: http://geohacker.in/unconnected-tiger/

It uses surface API to get the osm_id of the object clicked in a Mapbox dataset and loads it into JOSM using remote control. If you could quickly port it to gl-js that would be perfect.

tcql commented 8 years ago

@planemad

screen shot 2015-10-19 at 6 14 37 pm

Build a little prototype here

I'm running a tile-reduce job for the whole US which should be complete later tonight, and then I'll update the map style

planemad commented 8 years ago

@tcql :+1: beautiful!

tcql commented 8 years ago

updated the map with the continental US

screen shot 2015-10-20 at 9 34 04 am

EDIT: it's important you load the page as http:// not https:// - It makes an ajax request to JOSM remote control over http. If you visit the map as https, the request to JOSM remote control will fail because of https -> http security blocking. If you want to use it via https, you might need to enable unsafe scripts. In chrome that looks like this:

screen shot 2015-10-20 at 10 08 31 am
maning commented 8 years ago

Per voice with @srividyacb and @jinalfoflia, we will run a couple of test cases today and Friday using @tcql's map. To easily monitor discussion, all encountered false positives will posted in #125. Discussion on the final workflow will be here.

maning commented 8 years ago

[WIP] Workflow for sidewalk tagging

@srividyacb and @jinalfoflia is currently testing @tcql's map to fix sidewalks and flag false-positives. For easy tracking, false positives will be reported at #125. This is to improve the detection of sidewalks.

However, on our initial pass today, we think that working on each detected way would be too onerous. The best way is to assign people to work on a larger area and fix it in one go. This allows the team member to look into the general context of the area and easily tag connected ways.

Sketch Workflow

  1. @tcql will prepare another layer showing the density of errors at z15 or z16 grid, this can either be using kernel density or convex hull in turf.js. Add a JOSM RC button to download data. The detected errors are highlighted. select=object[,object...]
  2. Each person will be assigned an area say DC grids.
  3. In JOSM, download data within the assigned grid.
  4. Add the sidewalk map as JOSM background: tms url tms:https://{switch:a,b,c}.tiles.mapbox.com/v4/tcql.usa-sidewalks/{zoom}/{x}/{y}.png?access_token=pk.eyJ1IjoidGNxbCIsImEiOiJaSlZ6X3JZIn0.mPwXgf3BvAR4dPuBB3ypfA
  5. Add an inverse filter for all generic footways, ie. type:way highway=footway -(footway=sidewalk | footway=cycleway | footway=crossing)
  6. Use JOSM's todo plugin to work on each highway=footway and add appropriate tags.
  7. Upload and move on to the next grid. Changeset comment: #Sidewalk tagging. Project part of https://github.com/mapbox/mapping/issues/126

sidewalk_tag

@tcql, will run a daily update so we can visualize what needs work by next day. We will test this workflow by Friday here in @mapbox/india-office cc @planemad @lxbarth @Rub21

tcql commented 8 years ago

Got hung up on other things the past few days, tonight is my test run for the daily cron script, and tomorrow I should get the density grid worked out.

maning commented 8 years ago

@tcql, we tried adding your map as background image in JOSM, but it doesn't show your glowing green style.

maning commented 8 years ago

@lxbarth Before going full steam with the above workflow, should we first inform the talk-us community? Especially since sidewalk tagging is tricky and there is no consensus within the list.

maning commented 8 years ago

we first inform the talk-us community?

Done. Waiting for community discussion. https://lists.openstreetmap.org/pipermail/talk-us/2015-October/015590.html

tcql commented 8 years ago

@maning I moved the final location of the interactive map to OSM Sidewalker. This supports selecting z15 tiles and opening them with segments selected in JOSM, as well as opening individual segments in iD

todo still is to get daily updates flowing into the map (I found a few issues with the way I was pushing up the data), and then a daily stat counter for how many sidewalks we're detecting / fixing

RicoElectrico commented 8 years ago

Is it possible to get that map in an international version? (on a side note, it's funny how USA is assumed implicit at Mapbox and others. Reminding you that there is world beyond the States :stuck_out_tongue: - please consider this for all your other activities and development.)

tcql commented 8 years ago

@RicoElectrico definitely! It's on the list. We started in the US intentionally because some other areas tend to follow other types of tagging, and so we could have a good basis to start from

maning commented 8 years ago

sidewalk

@tcql Excellent! Tile download is really helpful. To recap our workflow:

  1. Select a red tile in the map. Click, Open in JOSM.
  2. Add an inverse filter for all generic footways, ie. type:way highway=footway -(footway=sidewalk | footway=cycleway | footway=crossing)
  3. Add the selected sidewalks in JOSM's Todo list.
  4. Review and add footway=sidewalk.
  5. Click Mark and move to the next in the list.
  6. Upload to OSM with
    • changeset comment: #Sidewalk tagging. Project part of https://github.com/mapbox/mapping/issues/126
    • source: Bing, Mapbox Satellite, osm-sidewalker
maning commented 8 years ago

2015-10-30

Today, we fixed 536 detected sidewalks:

@tcql, can you give us an approximate number so we can benchmark how much time/effort is needed for the team to fix this?

Issues

@tcql @lxbarth @planemad

srividyacb commented 8 years ago

2015-11-02

Today, we came across lot of fixed sidewalk from Friday.

@tcql @lxbarth @planemad

tcql commented 8 years ago

@srividyacb thanks, I'm working out some issues with automatically updating the map. should have it sorted out today so we can see proper updates

srividyacb commented 8 years ago

@tcql In sidewalk detection we are getting some places where highway=footway is also having area=yes tag.

footway

Also there are highway=footway with a tunnel=yes tag. These should not be highlighted to mark as footway=sidewalk because they don't run alongside of main highways.

tunnel

Link to the area: https://www.openstreetmap.org/#map=15/29.75993/-95.36531

tcql commented 8 years ago

just FYI to @RicoElectrico and anybody else wondering, international sidewalk detection is up on the interactive page now.

Daily updates are still stalled at the moment (particularly because we're working on some tweaks to tile-reduce and OSM QA tiles). I'm occasionally running manual updates. Some tweaks to improve false-positive matching are going to go in today and we should have a fresh update by tomorrow.

jinalfoflia commented 8 years ago

@tcql we came across quite a few sidewalks with the bicycle=yes and name tags. In the talk-us mailing list, they have discussed that named footways are not sidewalks. It would be great if we could eliminate them while processing itself.

/cc @maning @srividyacb

maning commented 8 years ago

we came across quite a few sidewalks with the bicycle=yes and name tags

Here's the running list of secondary tags that should be excluded: https://github.com/mapbox/mapping/issues/125#issuecomment-157022204

jinalfoflia commented 8 years ago

Sidewalk tagging report

Next Action[s]

Our goal is to complete tagging of missing sidewalks in the US region by the end of the coming week.

/cc @planemad @maning @srividyacb @tcql @lxbarth @shvrm

tcql commented 8 years ago

@jinalfoflia thanks for writing this up! I'll make sure to push an update with the latest version of the map today to eliminate as many false positives as possible

srividyacb commented 8 years ago

As the osm-sidewalker is not working for the bounding box and team is finding it difficult to work, we have pinged @tcql on this and we will start the sidewalk tagging as soon as it gets fixed. (Ticket open in osm-sidewalker)

cc @planemad @lxbarth @tcql @maning

srividyacb commented 8 years ago

Updated Instructions

  1. Each person will be assigned an area.
  2. Click on highlighted area on the map and download the data to JOSM.
  3. Add the sidewalk layer in JOSM to verify the sidewalks detected before tagging: tms url tms:https://{switch:a,b,c}.tiles.mapbox.com/v4/tcql.sidewalks-world/{zoom}/{x}/{y}.png?access_token=pk.eyJ1IjoidGNxbCIsImEiOiJaSlZ6X3JZIn0.mPwXgf3BvAR4dPuBB3ypfA
  4. Use JOSM's todo plugin to work on each highway=footway and add appropriate tags.
  5. Upload and move on to the next grid.

Changeset comment: Added missing footway=sidewalk tags to sidewalks. Project: https://github.com/mapbox/mapping/issues/126 Source: Bing/Mapbox

Filters to use

Do's and Dont's

cc @planemad @lxbarth @maning cc @mapbox/india-office

tcql commented 8 years ago

Quick update on the tile-reduce side: I'll be working to get an automated solution using scheduled Autoscaling, so we can run sidewalk analysis daily. Stats will be posted here

cc @maning @srividyacb

lxbarth commented 8 years ago

@tcql fyi, only US needed for now in case this is much faster to set up for US than for entire world.

nickidlugash commented 8 years ago

Per chat with @lxbarth, it looks like DC could use a bit of clean-up, as we're seeing some small fragments of footpaths that should maybe be tagged as sidewalks. E.g.:

screen shot 2015-12-04 at 7 12 37 pm http://www.openstreetmap.org/edit?pk_campaign=mapbox-edit#map=21/38.88771/-77.01634

and

screen shot 2015-12-04 at 7 04 11 pm http://www.openstreetmap.org/edit?pk_campaign=mapbox-edit#map=19/38.89729/-77.01196

/cc @srividyacb @maning @chtnha @jinalfoflia

planemad commented 8 years ago

@tcql we don't have a good way to measure our progress on the sidewalks:

cc @shvrm @srividyacb @maning

planemad commented 8 years ago

Proposed sidewalk rendering on openstreetmap-carto

tcql commented 8 years ago

We currently manually assign areas to team members, but this is not scalable in the long run or to coordinate tasks with the community. If blocks that have been edited are highlighted in a different color it would help skip areas that have been looked into previously

@planemad It might be possible to use a dataset to store features (selected tiles), like the Chennai Flood Map and then load that dataset on the frontend. I'll look into it.

The analysis includes a significant portion of false positives. This makes it hard to estimate at what point the task is complete. If there is a way to rank the detected sidewalks with some score, it will help focus our efforts much better to fix the easiest ones faster and on a larger scale.

Yea, I get that this is difficult. We could possibly use a level of variation in the distance from the road along a segment to score it's likelihood to be a sidewalk. I ticketed this on osm-sidewalker

planemad commented 8 years ago

It might be possible to use a dataset to store features (selected tiles), like the Chennai Flood Map and then load that dataset on the frontend. I'll look into it

@tcql this would be great. The use case to know if someone has looked into a tile is pretty common for similar mapping analysis and tile reduce based tasks that we can run in the future and is well worth the effort.

srividyacb commented 8 years ago

@mapbox/india-office

Here is the top cities which we need to hit for sidewalks. Assign a city from this list of top Strava activities in US. Work in pair if its a big city and mark as done in the table.

City Assignee Status
DC @oini :white_check_mark:
New York @srividyacb @nikhilprabhakar :white_check_mark:
SF Bay @jinalfoflia :white_check_mark:
Seattle @ramyaragupathy :white_check_mark:
Madison @abhisheksaikia and @jothirnadh :white_check_mark:
Detroit @jothirnadh :white_check_mark:
Chicago @ruthmaben :white_check_mark:
Texas @srividyacb :white_check_mark:
Denver @ramyaragupathy and @maning :white_check_mark:
Boston @jinalfoflia and @nikhilprabhakar :white_check_mark:
Los Angeles @oini :white_check_mark:
nickidlugash commented 8 years ago

So excited to see this continued work on sidewalks! I'm happy to help do some reviews after clean up, especially for the cities I've lived in (DC, Boston, Philadelphia).

planemad commented 8 years ago

@nickidlugash are you doing the review using the Strava style? It would be nice to have a style specifically to do QA and help visually spot any glaring tagging issues.

Tried this out with this style to differentiate footway, sidewalks and crossings:

screenshot 2015-12-10 10 42 23

This helped spot a bunch of incorrect tagging, like these sidewalk tagged as a crossing.

ramyaragupathy commented 8 years ago

I have been working on sidewalk tagging in Denver city with this workflow. This helps me set a reference and a sense of where the work is happening within a city.

srividyacb commented 8 years ago

OSM Diary post up: https://www.openstreetmap.org/user/srividya_c/diary/37594

No actions here. Closing

tcql commented 8 years ago

thanks everybody who ran on this :+1: this is some seriously awesome work. It's been awesome watching the stats on this and seeing the massive progress everybody made.

I would love to revisit the tooling in the future and implement some of the ideas here to improve this. I also believe we can definitely improve matching and remove more false positives so the community can run with this and keep making OSM better

RobJN commented 8 years ago

Are you marking false positives so they are hidden from the slippy map? Or is it just a case of remembering where you have already looked?