Luftbilder für OpenStreetMap

Wenn man sich für OpenStreetMap engagiert, beginnt man meist mit der Auswertung eigener Tracks, um Straßen und Wege zu kartografieren. Sehr schnell kommt dann der Punkt, wo man mehr Details erfassen möchte. Und dafür wären Luftbilder sehr gut geeignet. Leider ist es so, dass die meisten Luftbilder aus urheberrechtlichen Gründen nicht verwendet werden dürfen.

Ich bin in der besonderen Situation, dass ich ab und zu mit dem Flugzeug unterwegs bin und eigene Luftbilder fotografieren kann. Ich dachte mir, es erfordert nur wenig Zusatzaufwand, am Flugzeug eine Kamera anzubringen und während des Fluges im 5-Sekunden-Abstand Luftbilder fotografieren zu lassen.

Zunächst hatte ich damit keinen Erfolg, denn die Motorschwingungen haben die Kamera so sehr vibrieren lassen, dass die Fotos unbrauchbar waren. Erst mit Gummipuffern und Dämpfungsgewichten habe ich die Schwingungen reduzieren können. Trotzdem sind die Fotos immer noch nicht so richtig gut und klar. Viel Licht ist hilfreich, weil dann die Belichtungszeit kürzer ist. Ich bin jetzt dabei, aus Polyesterharz einen stromlinienförmigen Behälter zu bauen, in dem ich die Kamera windgeschützt unterbringen will. Ich hoffe, dass ich die Kamera sehr viel elastischer befestigen kann und die Bewegungsunschärfe verschwindet. Man könnte sicher noch viel mehr tun. Bei professionellen Luftaufnahmen wird die Kameraplattform durch Kreisel lagestabilisiert. Und es wäre gut, wenn mein Autopilot auch eine Höhenstabilisierung hätte. Aber so viel Aufwand möchte ich dann doch nicht für OpenStreetMap investieren.

Das Fotografieren während des Fluges praktiziere ich so jetzt schon seit mehr als einem Jahr. Es sind 10000 Fotos mit insgesamt 25 GB entstanden. Allerdings habe ich das Problem, dass die Bilder auch verarbeitet und verwendet werden müssen. Bei der Vielzahl der Bilder ist es völlig unmöglich, das alles selbst zu tun.

Ich habe deshalb die Bilder im Web veröffentlicht und die Community gebeten, sie zum Nutzen des OpenStreetMap-Projektes zu verwenden. Das hat sehr viel Interesse und Resonanz gefunden. Viele Fachkollegen haben mir Tipps und Ratschläge gegeben. Ich selbst bin Informatiker und kann mit der für OpenStreetMap nötigen Technik umgehen, dagegen ist die Kartographie eine mir weniger bekannte Wissenschaft und Technologie.

Arbeiten mit den Luftbildern

Wie die meisten OpenStreetMap-Aktivisten bin ich nur ehrenamtlich tätig. Es gibt noch ein paar andere Dinge, die ich tun muss und die das Zeitbudget für OSM begrenzen.

Ich verspreche mir von der Veröffentlichung der Luftbilder, dass

  1. ich Tipps für die rationelle Weiterverarbeitung bekomme
  2. andere sich an der Weiterverarbeitung beteiligen.

Wie sollte weiter mit den Bilddaten umgegangen:

Ich habe in letzter Zeit begonnen, meine Bilder mit Geokoordinaten zu ergänzen. Mein GPS-Navigationssystem schreibt während des Fluges den Track auf. Diesen Track werte ich aus, um die Geokoordinaten und die Höhe zu den Bilder hinzuzufügen. Dazu benutze ich das Java-Tool Prune. Prune stellt im Hauptfenster im Hintergrund eine OpenStreetMap-Karte dar und im Vordergrund die grafische Darstellung des Tracks. Jeder Trackpunkt, den das GPS-System im Sekundentakt aufgezeichnet hat, wird als Punkt dargestellt. Ich wähle dann aus der Folge von Bildern ein charakteristisches Foto mit den Straßenzügen eines Ortes aus und kann dann anhand der OSM-Karte den Punkt zuordnen, an dem die Kamera zum Zeitpunkt der Aufnahme war. Man erhält so die Zeitdifferenz der Kamerauhr gegenüber der Trackzeit. Meist beträgt die Differenz nur ein paar Sekunden, weil meine Kamerauhr auf UTC eingestellt ist. Mit einem Mausklick können dann alle anderen Bilder dem Track zugeordnet werden. Anschließend müssen die Geokoordinaten nur noch in den exif-Bereich der Eigenschaften der Bilder zurückgeschrieben werden.

Hier ist ein Beispiel zur Anwendung von Prune:

Die blaue Punktreihe sind die Punkte des Tracks, der vom GPS im Sekundentakt während des Fluges geschrieben wurde. Die gelben Punkte sind die Stellen, denen Fotos zugeordnet sind, die von der Kamera alle 5 Sekunden fotografiert wurden. Eines der Fotos ist aktiviert. Es wird in der rechten Spalte angezeit und ist dem roten Punkt im Track zugeordnet.

Übrigens kann man auch einfach nur die fertigen Luftbilder laden. Dann zeigt Prune die Standorte der Kamera während der Aufnahmen als gelbe Punkte vor der Openstreetmap-Karte an.

Georeferenzieren der Bilder

Die Geokoordinaten in den Bildern sind nützlich, um Ordnung zu halten und um zu sehen, wo das Bild hingehört. Sie können so aber noch nicht zum Kartografieren verwendet werden.

Die Fotos müssen erst noch entzerrt und georeferenziert werden. Eine einfache Möglichkeit ist die Nutzung von Tools im Internet, zum Beispiel metacarta oder geothings. Man geht so vor, dass markanten Punkten im Foto Referenzen in der Karte zugeordnet werden. Die fertigen, georeferenzierten Fotos können dann im JOSM-Editor zum Kartografieren verwendet werden, indem der Link zum Foto im WMS-plugin eingesetzt wird. Das Foto wird dann im Hintergrund unter den OSM-Daten abgebildet.

Auf dem eigenen Rechner ist auch das Tool QuantumGis verwendbar. Dafür hat Lutz eine Anleitung bereitgestellt.

Für geringere Genauigkeitsanforderungen und für exakt senkrechte Fotos steht das Josm-Plugin piclayer zur Verfügung. Für viele Luftbilder sind von Lutz Kalibrierungsdaten gespendet worden. Allerdings kann piclayer keine perspektivischen Verzerrungen aus den Fotos entfernen.

Grundsätzlich ist das Georeferenzieren nicht so schwierig. Das Problem besteht darin, dass exakte Referenzen erforderlich sind. Die Luftbild-Daten von Google sind nicht immer genau und es ist wahrscheinlich so, dass sie gar nicht verwendet werden dürfen. Das weiß man erst dann genau, wenn Juristen sich der Sache angenommen haben und ein Richter dazu entschieden hat.

Auf der sicheren Seite sind wir, wenn wir zum Referenzieren OSM-Daten verwenden. Aber die OSM-Daten haben sehr unterschiedliche Genauigkeit. Oftmals finde ich Abweichungen von 5 m oder auch noch mehr. Das ist der Ungenauigkeit des GPS-Systems geschuldet. Entsprechend unschön ist das Ergebnis nach dem Entzerren.
Es ist mühsam, die vertrauenswürdigen Referenzen herauszufinden. Am besten wäre es, offizielle Vermessungsdaten zu haben, die im Zentimeterbereich genau sind. Ich habe vor einiger Zeit mein Haus für eine ganze Menge Geld von einem Vermessungsbüro einmessen lassen müssen. Damals kannte ich OpenStreetMap noch nicht. Sonst hätte ich durchgesetzt, dass mir die Koordinaten zur Verfügung gestellt werden. Jetzt könnte ich höchstens wieder für Geld meine Daten vom zuständigen Vermessungsamt zurückkaufen.

Ich möchte deshalb die Community aufrufen, solche Daten für exakte Georeferenzen zu spenden. Vielleicht lassen andere Hauseigentümer ihr Haus gerade vermessen?
Oder aber, man verwendet differentielles GPS mit festen, bekannten Referenzen, wie sie heutzutage von Vermessungsbüros eingesetzt werden. Vielleicht kann da jemand Tipps geben?

Es entstehen noch weitere Schwierigkeiten, weil die Flughöhe während der Aufnahmen nicht konstant ist. Die Bilder müssen dann dementsprechend unterschiedlich entzerrt werden. Und außerdem gibt es Höhenunterschiede im Gelände, die sich stark auswirken können.

Ich hatte ein Bild der Bastei bei Rathen in der sächsischen Schweiz zu bearbeiten. Da war die Bastei in einer Höhe von 300 m über MSL zu sehen und gleichzeitig die Elbe bei ca. 60 m. Der Kamerastandort war in 1200 m über MSL. Ich konnte das Bild nur entweder auf die Höhenlage der Bastei kalibrieren oder auf die Höhe der Elbe. Um das Bild exakt zu entzerren, wäre die detaillierte Einbeziehung der Höhendaten notwendig gewesen. Das steht mir mit meiner Fototechnik aber nicht zur Verfügung.

Soviel ich weiß, wird bei kommerziellen Anwendungen dafür Photogrammetrie eingesetzt. Die Landschaft wird gleichzeitig von verschiedenen Standorten aufgenommen und später mit aufwendiger Software ein 3D-Modell errechnet. Das geht aber vermutlich über meine Möglichkeiten hinaus.

Ausblick

Grundsätzlich könnte man ein WMS aufsetzen, wenn eine ausreichende Menge an referenzierten Bildern vorliegt. Dafür fehlt mir bisher die Erfahrung.

Die Bilder müssen entzerrt und dann zusammengesetzt werden. Aber bis zu welcher Größe geht das? Wie wirken sich die Restverzerrungen und Ungenauigkeiten aus?
Dann müssen die Bilder zerschnitten werden, um in der Datenbank des WMS untergebracht zu werden. Und für die verschiedenen Betrachtungslevel sind unterschiedliche Schnitte zu führen.
Wenn ich genügend Zeit finde werde ich mich in die Technik einarbeiten.

Gut wäre es, wenn sich auch noch andere aus der Community finden würden, die auf dem einen oder anderen der angesprochenen Problemfelder Erfahrung haben oder sich ebenfalls einarbeiten wollen.

Mehr Informationen und Links findet ihr auf Holgers Wiki-Seite.


Kategorie: Gastblog | Tags: , , ,