DE:Fixing OSMI self intersection

From OpenStreetMap Wiki
Jump to navigation Jump to search

Beheben des Fehlers "Self Intersection Error" vom OSM Inspector

Der OSM Inspector (http://tools.geofabrik.de/osmi) meldet einige Fehler in der Geometrie der OSM Daten.


Vorwort

Diese Seite wurde von DE:user:TheFive in Zusammenarbeit mit dem deutschen Forum entwickelt. Für Vorschläge, Anregungen kannst du die Diskussionsseite, eine private Nachricht, oder auch gerne das deutsche Forum nutzen.

Fühl Dich eingeladen diese Seite zu verbessern, und falls Du Dich als Teil des "QA Team" fühlst, so nimm diese Seite doch auf die "Beobachtungsliste" um informiert zu bleiben.

Motivation

Kartenfehler in Zwijntrecht (NL) Ende Mai 2011

Sich selbst überschneidende Linien (Self Intersection) sind streckenweise Fehler, mit denen die Renderer z.B. problemlos umgehen können. Wie bei allen Fehlern, die bei den Standard Tools über "Fehlertoleranz" abgefangen werden, ist es aber auch hier gut, die klaren Regeln einzuhalten, um es zukünftigen Tools ohne diese Fehlertoleranz einfacher zu machen.


Noch wichtiger ist aber, dass versehentliches Zerstören eines Teils der OSM Karte (gravierende Verschiebungen) sehr häufig diesen Geometriefehler nach sich zieht, und es somit mit Hilfe des OSM Inspektors sehr einfach wird, ein Gebiet grossflächig auf diesen Fehler zu überwachen. Dies setzt aber voraus, dass die dargestellte Fehlerzahl klein ist, um die Aussagekraft eines einzelnen Fehlers zu erhöhen.

Gibt es insgesamt weniger Fehler dieses Typs, so wird das dazu führen, dass versehentliche grössere Verschiebungen und Fehler schneller auffallen und behoben werden.

Ziele bei der Fehlerbehebung

Auf dieser Seite werden typische Fehler in den OSM Daten dieser Art beschrieben und wie diese in JOSM behoben werden können.

Dabei sollen 2 Ziele verfolgt werden

  1. Erhalten der Geometrie der Vor Mapper
  2. Erhalten der Historie der beteiligten Objekte


Vorgehensweise

Möchte man mehrere Fehler in einem Gebiet beheben, so empfiehlt sich die folgende Vorgehensweise. Da der OSM Inspector keine "temporary solved" Möglichkeit (wie Keep Right) bietet, ist es wichtig zu wissen, welche Fehler bereits behoben wurden.

Um das zu erreichen zoomt man auf eine Stelle, in der mehrere Fehler zur Behebung anstehen. Diesen Ausschnitt hält man nun mit Permalink (unten rechts) fest. Damit lässt sich dieser Auszug mit reload immer wieder herstellen, und man behält beim Abarbeiten besser den Überblick. Zusätzlich sollte man die nicht benötigten Fehlerkategorien auf der linken Seite ausblenden.


Klickt man auf ein Fehlersymbol, so hat sich der folgende Arbeitsablauf bewährt.

  • Mit den Funktionen "open data browser" for this selection, kann man einen Blick darauf werfen, ob bereits ein anderer Mapper diesen Fehler behoben hat (vergleich der Uhrzeit der letzten Änderung).
  • Mit "Zoom to this selection" erhält man anschliessend den falschen Weg komplett dargestellt, und markiert, wo sich der Geometriefehler befindet. Nun kann vom OSM Inspektor direkt JOSM aufgerufen werden
  • Mit "Tell JOSM to open Selection" wird das entsprechende Teilstück vollständig in JOSM geladen, und der Betroffene weg direkt selektiert.

Die verschiedenen Fehlertypen

Die 8er Fläche

Sehr oft finden man Gebäude in Form einer 8. Dies ist einfach zu beheben.

Um diesen Fehler zu beheben, selektiert man den Punkt (bei Bedarf mit der zugehörigen Fläche). Anschliessend wählt man "Wege Trennen P".


Achtung: Ist das Gebäude 1 Gebäude und muss als ein Weg in OSM abgebildet werden, so ist die 8er Form falsch und das muss basierend auf weiteren Informationen (BING) angepasst werden.

Der ABA Weg Fehler

Oft werden kleine Wege geschlossen gezeichnet, d.h. Anfang und Endpunkt sind gleich. Diese Form (ABA) ist in die Form AB zu überführen.


Um diesen Fehler zu beheben zieht man einfach die obere der beiden Linien ein bisschen an die Seite und selektiert dann (wie im Beispiel) die Punkte A und B. Anschliessend wählt man "Linie Aufspalten P" und löscht den unnötigen Teil der Linie. Um die Historie des Weges nicht verloren gehen zu lassen, wählt man diejenige der beiden Linien an, welche im Versionsprotokoll nichts stehen hat. Die gleiche Aussagekraft hat die ID 0. In beiden Fällen wird der durch JOSM neu angelegte Weg gelöscht, die Historie bleibt erhalten. Der neu hinzugefügte Punkt (zur Seite ziehen) ist gegebenenfalls wieder zu löschen.

Achtung: Sollte der Weg Tags nutzen, die die Richtung des Weges benutzen (oneway=yes) so ist der Weg natürlich mit der richtigen Richtung hochzuladen. Diese Informationen stehen einem bei der Korrektur aber nicht zur Verfügung, da der Weg zuvor ja in beide Richtungen ging. Hier hilft unter Umständen ein Blick in die Historie der Linie, falls diese nicht immer "bidirectional" war.

Der ABA Fehler hat eine Variante, den ABAC Fehler, der hier auch vorgestellt werden soll.

Der ABAC Weg Fehler

Bilder: tbd.

Wenn der Weg aber noch weitergeht (ABAC) und das erste Segment (bezogen auf die Richtung des Weges) doppelt ist, entstehen nach dem Teilen drei Wege, von denen bei JOSM der erste (AB) die ID behält und die anderen beiden (BA und AC) eine Null bekommen. Hier könnte man nun Weg BA löschen und die beiden anderen markieren und mit der Taste C zusammenfügen - dann stimmt aber die Richtung des Weges AB noch nicht und JOSM fragt, ob ein Weg gedreht werden soll. In solchen Fällen dreht man zunächst die Richtung des kompletten Weges (die Reihenfolge der Knoten ist dann CABA), damit sich der Fehler am Endes des Weges befindet, teilt den Weg an den Punkten A und B und löscht den Weg BA, der ja nun die ID=0 (oder keine Versionsprotokoll hat, da am Ende des Weges. Nach dem Zusammenfügen von CA mit AB dreht man die Richtung des wieder zusammengefügten Weges wieder zurück.


Der ABCBD Weg Fehler

Gerade bei Flächen, aber nicht nur dort, wird der Weg leicht verlassen, und anschliessend wieder am Punkt fortgesetzt. Dieser Fehler ensteht vermutlich, wenn der Mapper beim Zeichnen die Karte verschieben will und dabei versehentlich einen überflüssigen Punkt setzt. Um diesen Fehler zu erkennen, muss man gegebenenfalls sehr nah heranzoomen.

Der überflüssige Punkt C könnte nun einfach gelöscht werden, dann kann aber ein Weg der Form ABBD entstehen. Um das zu vermeiden, selektiert man erst den Punkt C, anschliessend den Punkt B (die Reihenfolge ist wichtig) und wählt dann "Punkte vereinigen M".

Der ABCBCD Weg Fehler

Oft findet man Wege vor, die nicht unidirektional sind, sondern zwischen 2 Punkten hin und zurück laufen. Dies betrifft Wege und Flächen.

Dieser Fehler kann in JOSM an den kleinen Pfeilen erkannt werden (siehe auch ABA Weg Fehler). Zwischen den Punkten B und C zeigen die Pfeile in beide Richtungen.


Um diesen Fehler zu beheben, wähle die beiden Punkte (zur Eindeutigkeit zusammen mit der Linie) aus. Wähle "Linie Aufspalten P". Nun sind an der Strecke zwischen B und C 3 Elemente des Weges separat vorhanden.

Lösche 2 der 3 Linien in JOSM. die verbleibende Linie wird wieder mit "Linie Verbinden C" mit dem Rest verbunden (Achtung auf die Richtung der Linien). Beim Löschen darauf achten, das die richtigen Wege gelöscht werden. Der Fehler taucht natürlich eher in schwieriger zu editierenden Mehrliniensituationen auf.

Variante des Fehler: Natürlich kann die Strecke zwischen B und C länger sein und weitere Punkte enthalten, die Fehlerbehebung ist vergleichbar.


Innere Fläche ohne Multipolygon ausgeschnitten

Einige Mapper schneiden eine innere Fläche aus, indem sie den Way von aussen nach innen führen. Hier ist eindeutig ein Multipolygon zu empfehlen.

Um diesen Fehler zu beheben, selektiert man die "Brückenpunkte" zwischen dem zukünftigen Inner und Outer und wählt "Linie Aufspalten P". Es entstehen 2 Brückenlinien, die beide gelöscht werden können. Anschliessend werden das Inner und das Outer gleichzeitig selektiert, und mit "Multipolygon Erstellen Strg B" wird ein Multipolygon erstellt. Da es empfohlen wird, die Tags des äusseren Weges an das Multipolygon zu setzen, kopiert man diese noch vom äusseren Weg auf das Multipolygon. (Dies funktioniert leider nicht über Merkmale einfügen).

Dieser Fehler hat 2 Varianten

  • Die Übergänge sind nicht so eindeutig zusammengefasst wie im Beispiel

In diesem Fall ist diese Situation erst herzustellen, um sicherzustellen, dass inner und outer nach der Korrektur geschlossen sind

  • Für das Inner gibt es bereits andere Flächen

In diesem Fall kann das "alte" Inner gelöscht und die anderen Flächen als Inner genutzt werden.


Kornkreise (Potlatch gerundete Mehrfache Kreise)


Ein immer mal wieder auftauchendes Problem sind Kreise, die in Potlatch angelegt werden und mehrfach (im Beispiel 3 mal) rund gehen.

Die Empfehlung zur Abarbeitung (Verbesserungsvorschläge bitte auf der Diskussionsseite) ist zur Zeit ein Trennen der Wege, die zum Kreisel führen mit "Linie Trennen G", und die Linienenden neben den Kreis "zwischenlagern". Anschliessend die Punkte im Kreis löschen. Hier hilft das utilsplugin2 in JOSM, das es erlaubt benachbarte Punkte auszuwählen. Mit diesem Plugin selektiert man einen Punkt, anschliessend über die Pluginfunktionen so oft benachbarte Punkte, bis die entsprechende überflüssige Rundenzahl selektiert ist.

Ist der Kreis wiederhergestellt, dann können die auf den Kreis führenden Linien wieder verbunden werden.

Der Diskussionthread zu diesem Potlatch Fehler und der Verweis auf trac befindet sich hier: http://forum.openstreetmap.org/viewtopic.php?id=12778