streetcomplete / StreetComplete

Easy to use OpenStreetMap editor for Android
https://streetcomplete.app
GNU General Public License v3.0
3.89k stars 356 forks source link

Curb quest generated for node with connection of three ways #2654

Closed matkoniecz closed 3 years ago

matkoniecz commented 3 years ago

How to Reproduce Scan for quests around https://www.openstreetmap.org/node/5866630096#map=19/-33.79870/151.18282

https://github.com/streetcomplete/StreetComplete/issues/2291#issuecomment-796431220

Versions affected v31

westnordost commented 3 years ago

@andrewharvey

I don't see a problem there.

image

andrewharvey commented 3 years ago

The problem is that the curb is already mapped on the crossing way at the exact point of the curb

2021-03-12_08-53

But SC still asks for and adds the curb to the point you've highlighted resulting in duplicate curbs.

Not sure why you can't see the curb nodes in your editor screenshot there.

So maybe the solution here is not to ask at the highlighted point if the connecting crossing ways already have a curb node on them?

matkoniecz commented 3 years ago

If there are already two connectors from footway=crossing and one from footway=sidewalk it seems safe to assume that one footway=sidewalk remains unmaped (in this case toward south)

andrewharvey commented 3 years ago

If there are already two connectors from footway=crossing and one from footway=sidewalk it seems safe to assume that one footway=sidewalk remains unmaped (in this case toward south)

While in this case there is a yet to be mapped sidewalk to the south, it's not safe to assume that would be the case, that south road might not have a sidewalk.

westnordost commented 3 years ago

The problem is that the curb is already mapped on the crossing way at the exact point of the curb So maybe the solution here is not to ask at the highlighted point if the connecting crossing ways already have a curb node on them?

Won't work because

  1. there might already be a kerb for the other side of the road. The existence of that kerb shouldn't block asking for the kerb on this side of the road and
  2. there may be several footway=crossing for one crossing for one reason or another (f.e. traffic islands). So even if that was implemented, it wouldn't cover all those cases

If the road depicted really has a sidewalk going to the south, then I'd say that this is the same data issue as mentioned in a ticket before: incomplete mapping. See https://github.com/streetcomplete/StreetComplete/issues/1305#issuecomment-759709100

However, let's assume for the sake of the argument that there is really no sidewalk on the road going South, then, well, I guess one can argue that it is still a data issue. See https://github.com/streetcomplete/StreetComplete/issues/1305#issuecomment-761003320

Reviewing that prior discussion, this seems to be pretty much the same issue.

Maybe.... it would be reasonable to also exclude all nodes as possible kerb-candidates which are end nodes of more than one footway=crossing?

andrewharvey commented 3 years ago

there might already be a kerb for the other side of the road. The existence of that kerb shouldn't block asking for the kerb on this side of the road and

Not sure if it's possible to check for the existence of a curb between where the sidewalk way meets the crossing way and where the crossing way intersects the road (should have a shared node). So a kerb on the other side of the crossing won't affect this side of the road.

However, let's assume for the sake of the argument that there is really no sidewalk on the road going South, then, well, I guess one can argue that it is still a data issue. See #1305 (comment)

I see what you mean. To me it's still not clear exactly what's correct (I understand what you're saying, just not sure with wider OSM what's correct/better).

Maybe.... it would be reasonable to also exclude all nodes as possible kerb-candidates which are end nodes of more than one footway=crossing?

I found that many times SC wasn't asking for curbs, so I ended up just manually tagging barrier=curb on all crossings, then letting SC follow up with the curb type etc quests. So maybe it's better to just only ask these quests where barrier=curb is tagged? That would really reduce how many quests there are until they are mapped out, but it would ensure SC is being much more conservative.

westnordost commented 3 years ago

it would ensure SC is being much more conservative.

It would prevent situations where the kerb information is added at a (slightly) wrong place, yes. But it would also prevent a lot of this data added in the first place. In other words, it takes someone on-site to record this information. Seeing the big picture and as the case may be, correct the exact location of the kerb in the graph of footways can be done from home. In general, data added on-site is more valuable because it is not only much more time-consuming to ascertain but also more rare (you need actual contributors in that area). I find it justifiable to let on-site surveyors record this data even if there are some false-positives in the sense that it is mapped at a slightly wrong location or is a duplicate if the underlying data is incomplete. If the curb barriers need to be mapped beforehand for any of the curb details to be recorded, it means that first, there need to be really high-quality aerial images available where you can actually see the location of the curb. This is not the case for many many places on the world.

matkoniecz commented 3 years ago

Maybe.... it would be reasonable to also exclude all nodes as possible kerb-candidates which are end nodes of more than one footway=crossing?

Seems a good idea to me and something that I intended to do after checking whatever I missed something.

So maybe it's better to just only ask these quests where barrier=curb is tagged?

Only tiny part of world has this tagged, so catching untagged ones is very valuable (even if it is not catching all of them)

westnordost commented 3 years ago

Seems a good idea to me and something that I intended to do after checking whatever I missed something.

Great! I always like to hear when other people want to contribute or fix something :-)

westnordost commented 3 years ago

Do you have any timeline for this? If you plan to do this soon, I'll wait with the bugfix update because this is something worth to include ASAP. If you plan to do it some time later, I'll release today-ish.

westnordost commented 3 years ago

I plan to release the next minor update soon. Any news, @matkoniecz ? If you don't plant to implement this soon, it would be fair to unassign yourself, so that others know that this ticket is free to be taken by someone else.

matkoniecz commented 3 years ago

self-assigned this 27 days ago

oh, no.

I will do it today or tomorrow morning.