Openstreetmap-Karten selbst erstellen

Aus LinuxUser 03/2009

Openstreetmap-Karten selbst erstellen

© sxc.hu

Meine Welt

Sie wollen für ihre Homepage eine Anfahrtsskizze erstellen,doch Ihr Wohngebiet fehlt seit Jahren in Google Maps? Dank Openstreetmaps erstellen Sie kurzerhand Ihr eigenes Kartenmaterial.

Landkarten kauft man in der Buchhandlung oder schaut bei Google Maps nach. Aber was tun, wenn die gewünschte Straße bei Google Maps gar nicht auftaucht oder man einen Kartenteil vervielfältigen möchte, was aber rechtliche Gründen verbieten? Seit nunmehr fünf Jahren existiert aus eben diesen Gründen das Openstreetmap-Projekt (OSM, [1]). Es funktioniert ähnlich wie die Wikipedia: Jeder darf Daten hinzufügen, löschen oder verändern. Die Benutzer generieren ihre Daten also entsprechend selbst, ohne dass es eine kontrollierende Redaktion gibt. Wie bei der Wikipedia korrigieren sich die Nutzer gegenseitig. So kommen absichtliche Falsch-Skizzen [2] relativ selten vor.

Diese Zusammenarbeit klappt mittlerweile so gut, dass jeden Monat über 5000 Personen Daten hinzufügen. So kommen alle vier Wochen circa 750?000 Kilometer an Straßen hinzu. Die Anzahl der Benutzer steigt dabei ständig an, schon im Jahr 2009 rechnet das OSM-Projekt mit über 50?000 aktiven Nutzern.

Do it yourself

Im Alleingang eine Karte zu erstellen, bedeutet viel Arbeit. Es lohnt sich deshalb, für das Kartografieren eine Mapping-Party zu organisieren. Dazu legt man im Vorfeld fest, welches Gebiet man erfassen möchte, und hofft auf möglichst viele Teilnehmer. Der Autor dieses Artikels hat im Juli 2008 zusammen mit einer Schulklasse zwei Tage lang einen Teil der niedersächsischen Stadt Rastede kartiert. Im Folgenden lesen Sie, auf was es bei einer Mapping-Party ankommt und wie man die neuen Daten schließlich in Openstreetmap integriert.

Als Hardware eignet sich grundsätzlich jeder GPS-Empfänger, der so genannte Tracks aufzeichnen und sich mindestens 5000 Punkte merken kann. Kürzere Touren sind auch mit kleineren Geräten möglich. Einige aktuelle GPS-Empfänger von Garmin haben den großen Vorteil, dass man sehr einfach OSM-Karten auf das Gerät spielen kann. So sieht man beim Kartieren direkt, ob die befahrene Straße bereits in der Datenbank liegt.

Stehen Sie kurz vor einer Kaufentscheidung, so lohnt sich ein Blick auf die umfangreiche Liste von empfohlenen GPS-Geräten im OSM-Wiki [3]. Die Geo-Fabrik bietet zudem zehn aktuelle GPS-Empfänger kostenlos für Mapping Parties in Deutschland an [4]. Die Geräte kommen mit einer aktuellen Europa-Karte und sind bereits optimal eingestellt.

Für die Schüler war es der erste Kontakt mit OSM: Daher erfolgte zuerst ein theoretischer Teil, der das weitere Vorgehen vorstellte. Dank der Leihgeräte der Geo-Fabrik startete die Party mit zehn Gruppen zu drei Personen, was sich als gute Gruppengröße herausstellte. Im Vorfeld unterteilte der Autor die damals aktuelle OSM-Karte in sieben Teile (Abbildung 1) – die Teile 1, 2 und 5 ließen sich so doppelt besetzen, da hier die meiste Arbeit zu erledigen war.

Abbildung 1: Vorarbeit, die sich meistens auszahlt: Die Einteilung der Gebiete im Vorfeld der gemeinschaftlichen Kartierung.

Abbildung 1: Vorarbeit, die sich meistens auszahlt: Die Einteilung der Gebiete im Vorfeld der gemeinschaftlichen Kartierung.

Hier zeigt sich, wie wichtig eine gute Planung im Vorfeld ist. So gibt es bei der Einteilung der Gebiete im Wesentlichen drei zu beachtende Faktoren: Die Größe, die Vollständigkeit und die Komplexität des Gebiets. Die ersten beiden Punkte ergeben sich von selbst. Die Komplexität lässt sich jedoch oft nur mit Ortskenntnis richtig abschätzen. In diesem Fall war Gebiet 2 problematisch, weil es ein sehr großes Waldgebiet umfasste – in Wäldern ist der GPS-Empfang relativ schlecht, auch fällt die Orientierung nicht leicht. Daher sollte man den Wald doppelt abfahren, sodass die Wege doppelte Spuren aufweisen und damit eindeutiger ausfallen. Die Gebiete 1 und 5 waren zwar weitestgehend waldfrei, weisen jedoch ein komplexes Straßennetz mit vielen Details auf, wie etwa Einbahnstraßen und lange Auffahrten zu Geschäften.

Die Schüler teilten sich selbst den Gebieten zu. Dagegen spricht grundsätzlich nichts, doch sollte man als Koordinator darauf achten, dass zumindest ein Teammitglied mit Ortskenntnis aufwarten kann. Einige Schüler hatten Digitalkameras dabei, mit denen sie komplizierte Straßenverläufe oder Kreuzungen fotografierten.

Die geliehenen GPS-Empfänger haben eine Funktion, um bestimmte Punkte zu markieren: zum Beispiel eine Telefonkabine, einen öffentlichen Briefkasten oder eine Kneipe. Diesen “Points of Interest” weist das GPS automatisch eine dreistellige Nummer zu. Auf einem Schreibblock notiert man dann einfach 004 — Briefkasten und spart sich so das umständliche elektronische Benennen der Wegpunkte.

Das Kartieren selbst geht dann fast wie von selbst: Die Gruppe aktiviert das GPS-Gerät und fährt alle Straßen und Wege des zugeteilten Gebietes ab. An jedem Wegende notieren sich die Teilnehmer den Straßennahmen und gegebenenfalls Besonderheiten wie Einbahnstraßen oder gesperrte Übergänge. Da Openstreetmap den Anspruch hat, nicht nur Autostraßen zu zeichnen, gehören auch Fahrrad- und Fußgängerwege zur Party. Hier hat es sich als am praktikabelsten herausgestellt, den Anfang und das Ende mit einem Wegpunkt zu markieren und sich handschriftlich zu notieren 013 bis 014 Fußweg, gepflastert. Vergisst man das, kann man beim Hochladen der Daten nicht mehr unterscheiden, welche Wege für Autos zugänglich sind und welche nicht.

Daten hochladen

Nach drei Stunden streiken meist sowohl die GPS-Geräte als auch die Mapping-Gruppen: Die einen haben den Speicher voll, die anderen den Kanal. Planen Sie deshalb die Wege so, dass nach zwei bis drei Stunden alles wieder in der Zentrale ankommt. Für unsere Mapping-Party stand dazu ein PC-Raum mit 14 Rechnern zur Verfügung, auf denen der Java Openstreetmap Editor (JOSM) [5] installiert war.

In einem ersten Schritt gilt es die Daten von den GPS-Empfängern auf den Computer zu übertragen. Das funktioniert bei jedem Gerät leicht unterschiedlich, wir beschreiben im Folgenden den Upload mit Gpsbabel [6]. Gpsbabel unterstützt die diversen Dateiformate der unterschiedlichen GPS-Empfänger und speichert diese lokal als GPX-Datei. Bei GPX handelt es sich um das wohl am häufigste verwendete Format, und auch die OSM-Editoren benutzen es. Um die von Ihnen aufgenommenen Spuren nun entsprechend zu konvertieren, führen Sie auf der Kommandozeile folgenden Befehl aus:

$ gpsbabel -i Gerät -f usb: -o gpx -F spuren_gruppe1.gpx

Das Gerät muss dem Typ des verwendeten Empfängers entsprechen. Für über USB angeschlossene Garmin-Empfänger heißt der Parameter meist garmin, für zahlreiche Magellan-Empfänger magellan. Sollten Sie einen anderes Gerät verwenden, so finden Sie den passenden Parameter in der Gpsbabel-Hilfe durch den Befehl gpsbabel -h heraus. Tipps für die Einrichtung von Garmin-Empfängern gibt der Kasten “Garmin-Setup”.

Der obige Befehl erzeugt im aktuellen Verzeichnis eine Datei namens spuren_gruppe1.gpx. Diesen Schritt nehmen Sie für die Geräte aller Gruppen vor und ersetzen lediglich den Dateinamen. Damit befinden sich die GPS-Daten aller Gruppen nun auf der Festplatte eines Computers. Aus diesen GPX-Rohdaten erstellen Sie im nächsten Schritt die OSM-Karten. Zuvor sollten Sie die GPX-Dateien aber auf den OSM-Server hochladen, damit sich nachvollziehen lässt, aus welchen Rohdaten das Kartenmaterial erstellt wurde. Dazu öffnen Sie auf der OSM-Homepage die Unterseite GPS Traces, klicken auf See just your traces, or upload a trace und laden die einzelnen GPX-Dateien hoch.

Garmin-Setup

Falls Sie ein Garmin-Gerät verwenden, müssen Sie wahrscheinlich ein Problem mit dem Garmin-Treiber umgehen: Der im Kernel integrierte Treiber garmin_gps funktioniert bei einer Reihe von Geräten nicht. Als Alternative nutzen Sie einfach den Treiber, den Gpsbabel mitbringt.

Öffnen Sie dazu als Systemadministrator die Datei /etc/modprobe.conf beziehungsweise /etc/modprobe.d/blacklist und tragen Sie am Ende der Datei die Zeile blacklist garmin_gps ein. Sie weist Linux an, das Modul garmin_gps in Zukunft nicht mehr zu laden. Um Gpsbabel später auch ohne Root-Rechte zu nutzen, erstellen Sie die Datei /etc/udev/rules.d/51-garmin.rules. In diese Datei fügen Sie folgende Zeile ein:

SYSFS{idVendor}=="091e", SYSFS{idProduct}=="0003", MODE="0666"

Diese Udev-Regel legt fest, dass alle Garmin-Geräte auch von nicht privilegierten Benutzern ausgelesen werden dürfen.

Mit JOSM arbeiten

Bevor Sie mit JOSM arbeiten, müssen Sie ein paar Einstellungen vornehmen. Öffnen Sie dazu die Konfiguration mit Bearbeiten | Einstellungen oder über [F12]. Bei den Anzeigeoptionen aktivieren Sie Zeichne Linien zwischen rohen GPS-Punkten, bei den Verbindungseinstellungen tragen Sie Ihre persönlichen Verbindungsdaten ein.

Für JOSM gibt es zahlreiche nützliche Erweiterungen, die das Tools bei Bedarf automatisch herunterlädt und einrichtet. Im Menü Plugins erhalten Sie nach einem Klick auf Liste laden eine Aufstellung der verfügbaren Plugins. Als besonders praktisch erweisen sich in der Praxis measurement, openstreetbugs, utilsplugin und validator.

Nun folgt das Zeichnen der Karte. Die einzelnen Gruppen sollten nach Möglichkeit dazu jeweils einen eigenen Computer nutzen. Über Datei | Öffnen importiert JOSM die GPX-Datei, der Editor zeigt nun die Spuren des Tages an. Mit dem Mausrad ändern Sie den Maßstab der Kartendarstellung, mit gedrückter rechter Maustaste verschieben Sie den Kartenausschnitt.

Theoretisch könnten Sie nun sofort anfangen zu zeichnen – aber noch weiß JOSM nicht, welche Daten für das Gebiet bereits vorliegen. Daher laden Sie diese zunächst mit [Strg]+[Umschalt]+[D] oder mit Hilfe des ersten Symbols in der Symbolleiste herunter. Der sich öffnende Dialog ist automatisch auf die Koordinaten eingestellt, die der aktuellen Kartenansicht entspricht. Nach einem Klick auf OK lädt JOSM die Daten herunter und zeigt sie an, die selbst erstellen Spuren bleiben dabei erhalten.

Um einen Weg zu erstellen, wählen Sie auf der linken Seite das Werkzeug Setze Wegpunkt (oder drücken [A]) und erstellen einen Wegpunkt nach dem anderen. Mit [Esc] beenden Sie das Zeichnen. Der Weg erscheint nun als grauer Pfad ohne Eigenschaften. Die meisten der zahlreichen Eigenschaften bietet JOSM über die Menüs an. Haben Sie also einen Fußweg gezeichnet, so wählen Sie den Weg mit dem Auswahlwerkzeug (zweites Symbol links oder [S]) an klicken anschließend im Menü auf Vorlagen | Wege | Fußweg. Im daraufhin erscheinenden Dialog stellen Sie die Eigenschaften des Weges ein, wie etwa Oberflächenbeschaffenheit. Beenden Sie den Dialog über OK, erscheint der Weg nun in Grün, JOSM hat dem Pfad nun alle Eigenschaften zugeordnet. Zur Kontrolle wählen Sie den Weg erneut aus: Sie sehen die Eigenschaften im Fenster Eigenschaften | Mitgliedschaften.

Probleme ausräumen

Arbeiten mehrere Personen gleichzeitig an einem Gebiet, erhöht sich die Chance, dass zwei Gruppen sich beim Bearbeiten überschneiden – auch bei bester Planung. Bei der hier beschriebenen Mapping-Party endeten die Gebiete zweier Gruppen jeweils an einem Kreisverkehr. Beide Gruppen haben den Kreisverkehr gezeichnet und anschließend hochgeladen. Diese Kollision führte zu dem in Abbildung 2 dargestellten “doppelten” Kreisverkehr.

Abbildung 2: Hier haben zwei Benutzer das Gleiche bearbeitet – jeweils leicht unterschiedlich. Das Resultat: Eine Kollision.

Abbildung 2: Hier haben zwei Benutzer das Gleiche bearbeitet – jeweils leicht unterschiedlich. Das Resultat: Eine Kollision.

Dabei ist es sehr einfach, solchen Problemen vorzubeugen. Das Wichtigste: Laden Sie regelmäßig die Karte wie oben beschrieben per [Strg]+[Umschalt]+[D] neu herunter – insbesondere, bevor Sie Daten hochladen: So haben Sie immer den neuesten Stand zur Hand. Extrem nützlich ist das Plugin validator, das Sie mit [Alt]+[Shift]+[V] oder durch einen Klick auf den Haken in der linken Symbolleiste starten. Rechts erscheint dann ein kleines Feld, das einen markierten Bereich durch einen Klick auf Prüfen kontrolliert. Das Ergebnis zeigt Abbildung 3. Um eine Problemstelle genauer unter die Lupe zu nehmen, klicken Sie diese einfach mit der rechten Maustaste an und wählen Zoom auf Problem. Auf der Karte erscheint die Stelle dann gelb markiert.

Abbildung 3: Von JOSM gefundene Probleme.

Abbildung 3: Von JOSM gefundene Probleme.

Abbildung 4: Vorher und nachher: Die OSM-Karte von Rastede vor der Schulaktion (links) und nach der ersten Openstreetmap-Mapping-Party (rechts).

Ist erstmal alles korrigiert, laden Sie das Ergebnis wieder hoch. Dazu klicken Sie auf das Icon mit dem grünen Pfeil nach oben oder drücken [Strg]+[Shift]+[U]. Es erscheint ein Dialog, der alle erfolgten Änderungen auflistet. Bestätigen Sie hier mit Ja. Das Hochladen erfolgt automatisch und dauert meist nur wenige Sekunden.

Betrachten Sie nun die OSM-Karte, erkennen Sie noch keine Änderungen. Aufgrund der gigantischen Datenmenge, die jeden Tag anfällt, erneuert das Projekt die Karte nur einmal pro Woche, jeweils am Mittwoch. Sie können die Karte aber auch offline betrachten: Seit KDE 4.0 unterstützt der KDE-Globus Marble OSM-Karten nativ.

JOSM-Alternativen

Neben JOSM gibt es noch zwei weitere Editoren, die nicht unerwähnt bleiben sollen. Das noch recht junge Projekt Merkaartor [7] basiert genau wie KDE auf der Qt-Bibliothek. Für Anfänger oder kleinere Änderungen eignet sich auch Potlach [8] sehr gut. Es arbeitet als Flash-Anwendung direkt im Browser, man muss also nichts installieren.

Noch viel Arbeit

Seit der beschriebenen Mapping-Party ist bereits über ein halbes Jahr vergangen. In der Zwischenzeit haben die Schüler dutzende Verbesserungen nachgetragen, bislang übersehene Wege ergänzt und mit der Detailarbeit begonnen. An das Einzeichnen der Straßen und Wege schließt sich das Einzeichnen der Infrastruktur an. Dazu gehören wichtige Restaurants und Geschäfte, aber auch Briefkästen und Altglasbehälter. So bleibt genug Arbeit für die nächste Mapping-Party, die für Juli 2009 mit einer neuen siebten Klasse fest geplant ist – natürlich wieder mit den zehn Leihgeräten.

Glossar

Mapping-Party
Auf solchen Partys treffen sich Nutzer von Openstreetmap, um gemeinsam die Karten eines vorher bestimmten Gebietes zu verbessern.
Tracks
Ein Track entspricht der zurückgelegten Strecke. Das Gerät zeichnet in der Regel dazu jede Sekunde die aktuelle Position auf, so dass sich eine Gesamtstrecke ergibt.
LinuxUser 03/2009 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben