OpenStreetMap

Man möchte meinen, das einfache Nachmalen von Satellitenbildern könnte als ausreichend betrachtet werden, um alle Kreuzungen richtig zu mappen. Aber ich denke, das stimmt nicht…

Ursache

Grund dieses Blogeintrages ist eine private Diskussion mit User Streckenkundler. Auf der Fahrt mit dem Auto durch die Brandenburgische Landschaft habe ich den Straßenverlauf dieser Kreuzung verändert (hier die Situation nach dem rückgängig machen):

Falsches Mapping für eine abbiegende Vorfahrtstraße

  • von Norden kommend wird “geradeaus” im Navi angezeigt, ich möchte aber auf der Hauptstraße bleiben und die biegt nach links ab (Blinker setzen laut StVO)
  • von Osten kommend in das Dorf hinein fahren wird als “Links abbiegen” angezeigt, man fährt aber schnurgeradeaus

Ich habe einen Knick in die Straße gemacht, die seiner Meinung nach dort nicht vorhanden ist und er hat mit vielen Ausrufezeichen statuiert: “Wir mappen nicht für Renderer und wir mappen nicht für Router”. Nach vielen Nachrichten hin und her haben wir uns darauf geeinigt: “Wir mappen nicht für Router, sondern für Routinganweisungen”, die oben gezeigte Kreuzung war aber nach meiner Bearbeitung für ihn nicht akzeptabel.

Status Quo

Bei großen Kreuzungen und Autobahnabfahrten muss bis zu einem bestimmten Grad abstrahiert werden, um korrekte Anweisungen für die Navigation zu erhalten:

Abstrahierte Kreuzung in Berlin

  • Linksabbieger fahren stets ein Bogen, auf der Karte macht die Straße aber einen Knick
  • Durch die Abstraktion bleibt es übersichtlich und funktionell

Abstraktion für alle Kreuzungen!

Man ist geneigt, der großen Straße gegenüber der kleineren den Vortritt zu geben. Man sollte aber nicht das Satellitenbild abmalen, sondern abstrahieren. Hier mein Positiv-Beispiel:

Richtige abbiegende Hauptstraße

  • Routing ist für alle Fahrtrichtungen korrekt
  • Darstellung weicht nur auf höchster Zoom-Stufe vom Satellitenbild ab

Fazit

Was im Großen funktioniert, stimmt auch für das Kleine: man kann nicht behaupten, eine Kreuzung ist zu klein, um sie zu generalisieren. Wenn Abstraktion, dann für alle Kreuzungen!

Sollte dies nicht in das OSM-Wiki übernommen werden?!

Discussion

Comment from streckenkundler on 2 January 2018 at 21:37

In meinen Augen ist für das Straßenrouting die ergänzende Angabe “priority_road=yes” sehr wichtig, genauso wie “highway=give_way stop”. Das ist das Grundproblem dieser Sache.
Ich bin der Beinung, daß stets nach “highway=give_way stop” auf der folgenden Straße ein “priority_road=yes” gesetzt werden muß. Ist dies nicht der Fall, ist das ein Fehler!! Ich bin auch der Meinung, daß “highway=give_way stop” stets mit einer “direction=forward backward” - Angabe gesetzt werden muß (es sei denn, es ist eine Einbahnstraße mit oneway=yes).
Ich weiß jetzt nicht, ob “priority_road=yes” fürs Routing ausgewertet wird… ich halte es aber für eine grundsätzliche Angabe vor allem eben im Zusammenhang mit “highway=give_way stop”. Allgemein sehe ich “highway=give_way stop” ohne direction - Angabe und ohne priority_road=yes als weitestgehend nutzlos an…

Um zum Beispiel noch was zu schreiben… mit den o.g. Angaben wäre meiner Ansicht nach alles vorhanden, um dem Router gerecht zu werden, daß er die entsprechenden Angaben macht und der realen Situation, wie die Straßenführung real vor Ort ist…

Ausgangspunkt war eine meiner heimatlichen Kreuzungen “An der Kupka x Gubener Straße x Bogenbrücke” http://www.openstreetmap.org/#map=19/51.94130/13.90571&layers=N

Es betraf das Changeset https://www.openstreetmap.org/changeset/53879870 wo durch Generalisierung der Kreuzung anscheinend eine berstimmte Routinganweisung hervorgerufen werden sollte.

Sven

Comment from Ahmed Hezam on 3 January 2018 at 01:48

YasmineMegahed

Comment from glibbertorsten on 3 January 2018 at 07:05

Okay, es ist sinnloss, habe verstanden.

Comment from Thomas8122 on 3 January 2018 at 12:47

Dein Positivbeispiel würde ich heute auch so mappen (in der Vergangenheit bestimmt nicht immer), da ich selber schon auf verwirrende Naviansagen reingefallen bin. Bei deinem Negativbeispiel müsste man die Storkower Str. südlicher an die Bundesstraße anschliessen, zumindest wenn man mit DG Standard-Bildern arbeitet. Das reicht manchmal schon. Manchmal muss man eben einen Kompromiss schließen. Was die Kreuzung angeht die streckenkundler ins Spiel gebracht hat, kann man geteilter Meinung sein. Was die Richtungsangaben mit give_way/stop zu tun haben sollen, erschließt sich mir dagegen nicht.

Comment from streckenkundler on 3 January 2018 at 21:05

Die Straßen, wie wir sie in OSM erfassen ist ein idealisierte Linie der mittleren Straßenachse… Das bringt mit sich, daß diese Straßenachse oft nicht dessen entspricht, was z.B: real für den Verkehrsgebrauch vor Ort ausgeschildert ist. Bei meinem Beispiel aus meiner Heimatstadt beschreibt die ausgeschilderte Hauptstraße einen leichten Rechtsbogen (Linksbogen; je nach Richtung). Ausgeschilder ist diese aber soweit ich mich erinnere, mit Zeichen 306 verbunden mit Zusatzzeichen 1002-13 bzw. 1002-23 (je nach Richtung). Ein künstliches Generalisieren der Straßenachsen, die dann von dem realen Verlauf vor Ort abweichen ist in meinen Augen falsch, und ist für mich mappen für den Router, um mit künstlichen Produzieren von Winkeln zu versuchen, bestimmte Routingansagen hervorzurufen. Das ist mein Kernproblem!

An der Stelle kommen für mich in solchen Situationen nun 1. highway=give_way|stop 2. priority_road=yes|designated

ins Spiel. Beides sehe ich im Moment als hinreichende Taggingmöglichkeit, um entsprechende Routingangaben an Straßenabschnitten hervorzurufen, darüberhinaus die Straßengeometrie nicht künstlich so zu verändern, um durch Auslassen der nötigen Tags trotzdem ein Ergebnis zu erzwingen.

Um zur Lübbener Kreuzung noch was zu schreiben und den Richtungsangaben…

Ausgangssituation war, daß die Gubener Straße kein highway=give_way hatte,,,, was ich dann aber im Verlauf fer Vorgeschichte gesetzt habe. Ich habe u.a. durchs Forum erkannt, daß das ohne eine Richtungsangabe nur schmückendes Beiwerk ist. Ich sehe dann auch den Mapper in der Pflicht, priority_road und direction=* im Tagging mit zu verarbeiten. Ok… das hängt erstmal direkt nicht mit dem Problem zusammen, im meinen Augen indirekt aber schon… da das hier disskutierte Problem durchaus sehr viele Kreuzungssitustionen in irgendeiner Form abbiegender Hauptstraßen betrifft, mit durchaus vergleichbaren Taggingnotwendigkeiten. Eine Richtungsangabe für highway=give_way|stop sehe hier derzeit als nötig an, um nicht durch Auslassen des Tags wiederum falsche Routingansagen zu provozieren…

Sven

Log in to leave a comment