streetcomplete / StreetComplete

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

New Quest: Turn Lanes #2574

Closed ssotoen closed 2 years ago

ssotoen commented 3 years ago

General

Affected tag(s) to be modified/added: turn:lanes Question asked: Are there any turn markings on this piece of road?

Checklist

Checklist for quest suggestions (see guidelines):

Ideas for implementation

Element selection: Any highway that ends in more than one road and has either lanes:forward>=3, lanes:backward>=3, or lanes>=3 AND oneway=yes. To prevent spam this quest should only be shown for ways with at least 3 (or even 4) lanes in one direction. The quest should only ask for one direction at a time, even if both directions meet the lane criteria.

Proposed GUI: Similar to the cycle lane quest:

  1. Show a preview of the corresponding piece of road.
  2. The user taps on a lane and selects the appropriate value(s) from a pop-up.
  3. The preview changes accordingly. turns quest start turns quest preview

Possible Values:

These are pretty much just copied from the wiki. I excluded sharp_left and sharp_right because they're barely used.

matkoniecz commented 3 years ago

Any highway with either lanes:forward>=3, lanes:backward>=3, or lanes>=3 AND oneway=yes.

And ending with split into more than one road. To avoid asking for example on https://www.openstreetmap.org/way/128209964 or https://www.openstreetmap.org/way/24821501

It would not allow to fill info fully, as road may be split after turn lanes start, not sure whatever it would confusing or noticeably lowering quality of collected data.

ssotoen commented 3 years ago

Good point, I didn't think of that.

tiptoptom commented 3 years ago

Is it possible to filter elements according to whether they border on a highway where turn lanes are already deposited?

westnordost commented 3 years ago

Depends on your definition of "border", but generally, yes.

westnordost commented 3 years ago

Read through this quest suggestion. There are the following issues: image

  1. For the orange way, it is not clear for which intersection the user should answer: The one with blue or the one with green. So, ways like these would need to be excluded (extra effort)
  2. For the green and blue way, the quest is not asked (data is only recorded fragmentary)
  3. Imagine the red and orange way would be one way. Then it is unclear to the user for which intersection he should answer it. Those ways with intermediate intersections would need to be either filtered out (fragmentary recording of this data) or made clear to the user that in that case, the way must first be split up at the intersections (confusing / bad data).
  4. The road ways must be split up at the point where the turn lanes start, before answering this quest. This is difficult to communicate. Also, after a way has been split, the quest will not turn up again for the way segments for some time (up until the split has been uploaded and then later the area has been downloaded again). So this makes recording this data quite inefficient.

image

  1. For the green way, the road in the illustration would be rotated north-up (instead of facing east) because always the street's rotation in the illustration is the street rotation at the center point of that way. This would be confusing. Changing that is extra-effort

The biggest concern I have is with the splitting of ways. Will users really follow the instructions to always first split up the ways (and then return later days after to supply the actual information)?

tiptoptom commented 3 years ago

I think, the splitting problem is more about the "How many lanes"-quest. The "Turn Lanes"-quest would be only asked if the number of lanes is already deposited. Besides, the question would refer to a way and not to a note. Therefore I think it should not come so easily to confusion.

westnordost commented 3 years ago

Okay, another problem:

  1. Oftentimes, the lane count just in front of intersection changes to allow for turn lanes. It's safe to assume that oftentimes the number of lanes tagged on the road does not incorporate that (which I think is also not wrong, it is simply a different level of detail). As a result, the form will offer the user to input less turn lanes than there actually are. There should be a way for the user to correct this.
tiptoptom commented 3 years ago

I think, there could be an ability to add a lane, like this. But you will still often have to split ways. grafik

BalooUriza commented 3 years ago

Seems like it's a good idea to tag turn lanes where they're implicit as well. Computers are really bad at sorting out implicit intent and need it spelled out explicitly.

tiptoptom commented 3 years ago

@BalooUriza I don't understand what you mean

BalooUriza commented 3 years ago

@BalooUriza I don't understand what you mean

Basically that this, with the arrows explictly marked,

image

and this, with no arrows,

image

both should have the same left|through|through;right value.

matkoniecz commented 3 years ago

both should have the same left|through|through;right value.

Of course, only in cases where left lane is for left turn only, center for forward only and right for right turn and forward (sometimes it is different).

BalooUriza commented 3 years ago

both should have the same left|through|through;right value.

Of course, only in cases where left lane is for left turn only, center for forward only and right for right turn and forward (sometimes it is different).

Sure! My point is, however, specifying that it must be marked on the ground is unnecessarily stringent in this case. Just having a working knowledge of how the lanes work should be sufficient.

peternewman commented 3 years ago

Any highway with either lanes:forward>=3, lanes:backward>=3, or lanes>=3 AND oneway=yes.

This would be overly restrictive in the UK, I'd hope it's possible to use some heuristics to deal with >= 2 lanes (e.g. coming onto a roundabout or a junction with a major road).

And ending with split into more than one road.

Depending on how it's been mapped, isn't @westnordost 's orange/green T junction a split into just one road, but could potentially still be eligible? Or do you mean excluding a splice of == and == @matkoniecz ?

For the orange way, it is not clear for which intersection the user should answer: The one with blue or the one with green. So, ways like these would need to be excluded (extra effort)

In the UK at least, the turn lanes are only marked on the incoming side of the junction, so you'd be tagging for green on the W to E direction of orange and for blue/red on the E to W direction of orange.

both should have the same left|through|through;right value.

Of course, only in cases where left lane is for left turn only, center for forward only and right for right turn and forward (sometimes it is different).

Sure! My point is, however, specifying that it must be marked on the ground is unnecessarily stringent in this case. Just having a working knowledge of how the lanes work should be sufficient.

Yeah although it depends what's on the other side of the junction and where most traffic goes. If the major road is actually turning to the right or left in your photo, with a minor road continuing straight on, then there may technically be no turn lanes, or it might be through|through|through;right for example.

westnordost commented 3 years ago

Hmm, I guess all has been said what should be said about it. Generally, recording this information fulfills all the criteria, with strings attached, see the concerns uttered in my earlier comment.

I'll probably not implement this anytime soon as it is both quite the effort and has some problems but others are free to give it a try.

DerDings commented 3 years ago

I think this quest can only be asked safely for roads with cycleway=no or with cycleway=track. Otherwise, situations like this will cause problems.

The road is tagged lanes=3, but there are four fields for turn:lanes.

Some more example photos with matching tags can be found here (de-DE).

BalooUriza commented 3 years ago

On Thu, Apr 8, 2021 at 6:05 AM Daniel Krause @.***> wrote:

I think this quest can only be asked safely for roads with cycleway=no or with cycleway=track only. Otherwise, situations like this https://wiki.openstreetmap.org/wiki/Lanes#Crossing_with_a_designated_lane_for_bicycles will cause problems.

https://camo.githubusercontent.com/8e735651e12b6c53bcde855fc96bcb92a140e2cd0d195d946cef78bd54eccb38/68747470733a2f2f77696b692e6f70656e7374726565746d61702e6f72672f772f696d616765732f632f63632f4b7265757a756e675f6d69745f526164737075722e6a7067 The road is tagged lanes=3, but there are four fields for turn:lanes.

Some more example photos with matching tags can be found here https://wiki.openstreetmap.org/wiki/Berlin/Verkehrswende/Radwege#Radfahrstreifen_in_Mittellage_.2F_Fahrradschleuse_.2F_Fahrradweichen (de-DE).

I keep pointing out to proponents of the status quo that this is a serious problem that would be most expediently fixed by simply not excluding bicycle lanes in lanes:= values, especially since like any other reserved lane, there's no safe assumption as to where it's placed on the road or that there's only one each way. I recommend pushing this on the various lists as well.

matkoniecz commented 3 years ago

that would be most expediently fixed by simply not excluding bicycle lanes in lanes:= values

Redefining widely used tags is a bad idea and something that will be definitely not done by StreetComplete on its own.

BalooUriza commented 3 years ago

On Thu, Apr 8, 2021 at 9:33 AM Mateusz Konieczny @.***> wrote:

that would be most expediently fixed by simply not excluding bicycle lanes in lanes:= values

Redefining widely used tags is a bad idea and something that will be definitely not done by StreetComplete on its own.

Was not suggesting SC do that. However, it probably would be a good idea to not prompt for lanes where cycleway=lane is true.

Atrate commented 3 years ago

So, ways like these would need to be excluded (extra effort)

Can't SC automatically split ways at intersections? @westnordost

This auto-splitting could also be considered for ways that are too long for quests to display on them (don't know where the max value is set).

westnordost commented 3 years ago

No. Not automatically.

On June 19, 2021 12:29:08 PM GMT+02:00, Atrate @.***> wrote:

So, ways like these would need to be excluded (extra effort)

Can't SC automatically split ways at intersections? @.***

This auto-splitting could also be considered for ways that are too long for quests to display on them (don't know where the max value is set).

-- You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub: https://github.com/streetcomplete/StreetComplete/issues/2574#issuecomment-864387669

-- Diese Nachricht wurde von meinem Android-GerΓ€t mit K-9 Mail gesendet.

matkoniecz commented 2 years ago

It is one of quests that I had on TODO list for potential implementation but sadly I have no idea how to handle necessary splitting in way that would be understandable for mappers.

westnordost commented 2 years ago

Yeah, difficult. Maybe it would be possible like this:

  1. Ask: Is this section of street that leads to the intersection exactly the part where there are arrows painted on the asphalt that show the allowed turn direction start? (turns out it is even difficult to say in simple words what "turn lanes" are)
  2. If user answers yes, switch UI to select the turn lanes
  3. If user answers no, display a message and switch to the "split way" UI, or even better directly switch to a modified "split way" UI that directly displays what the user is supposed to do and limits the number of allowed splits to 1.

Though I am not sure if that would be easy and straightforward enough for SC users.

Another approach would be to only ask for street sections that lead to an intersection with an odd number of lanes, e.g. 3 forward and 2 backward lanes.

westnordost commented 2 years ago

In general, it may be more effective if there was a dedicated editor that also displays road lanes as WYSIWYG or if such feature would be integrated into an editor like iD where you see the satellite picture.

Two great talks about lanes, their interpretation etc.: https://files.fossgis.de/Konferenz/OSM-Event/highway_1020_osm2lanes.intro.mp4 https://files.fossgis.de/Konferenz/OSM-Event/highway_1120_Micromapping_OSM_data_model.intro.mp4

matkoniecz commented 2 years ago

Another approach would be to only ask for street sections that lead to an intersection with an odd number of lanes, e.g. 3 forward and 2 backward lanes.

Even in such cases splitting would be sometimes needed

HolgerJeromin commented 2 years ago

...and limits the number of allowed splits to 1.

Limiting is not correct. The street could be original only one osm way (orange) accrossing the street with only the yellow part with the turns:

image
westnordost commented 2 years ago

So it seems the overall complexity - both in implementation and for the user - of this is not worth it even it may in theory be done.

Also, another issue that came to my mind is that a quest always only refers to one element. So even if the quest would select only those roads that end in one intersection (see previous post), there may be the situation where it starts and ends in an intersection. The quest that doesn't know for which end to ask the question.

matkoniecz commented 2 years ago

It is a tiny bit more feasible as an overlay.

Still, my enthusiasm is limited.

BalooUriza commented 2 years ago

On Sun, Jul 17, 2022 at 12:03 PM Mateusz Konieczny @.***> wrote:

It is a tiny bit more feasible as an overlay.

Still, my enthusiasm is limited.

For what it's worth, I'm kind of of the opinion that lanes doesn't need to be a streetcomplete quest at all, mostly because no survey on the ground is typically required except where the pavement markings aren't obvious from aerial imagery, which isn't common.