Wer kennt dieses Problem nicht? Für eine raumbezogene Fragestellung werden oftmals verschiedene Geodaten aus unterschiedlichen Quellen, von verschiedenen Herstellern und Anbietern genutzt. Fast immer sind Format, Struktur und Qualität der Daten nicht einheitlich. Bevor sie in einem GIS-Projekt zur Visualisierung und Analyse genutzt werden können, sind umfangreiche Anpassungen und Formatierungen erforderlich. Das kann sehr zeitaufwändig sein.
Mithilfe der FME, einem Spatial-ETL-Werkzeug des kanadischen Unternehmens Safe Software Inc., sind schnelle Datenkonvertierung und -modellierung kein Problem mehr. Die FME funktioniert nach einem einfachen Prinzip: Die verschiedenen Geodaten werden über Importschnittstellen eingelesen und in ein neutrales Format überführt (Extract). Auf der Basis dieses Formates können beliebige Daten zusammengeführt, verändert, geprüft, angereichert oder ausgedünnt werden (Transform). Vorhandene Exportschnittstellen ermöglichen es, diese Daten in ein oder mehrere Zieldatenformate zu überführen (Load).
Es sind bereits über 300 verschiedene Formate verfügbar, und neben klassischen GIS-Daten werden auch CAD, 3D/BIM, Point Clouds (Laserscandaten), Web Service, Cloud und (non-) Spatial Databases unterstützt. Safe bietet eine vollständige Liste aller Formate, zu denen beispielweise Open Street Map (OSM), KML und SketchUp gehören.
FME wird über eine grafische Benutzeroberfläche bedient: die FME Workbench. Abbildung 1 zeigt einen typischen FME-Prozess, wie er in der Workbench erstellt wird. Die Lesezeichen heben die drei Schritte Extract (Einlesen der Daten), Transform (Verarbeiten, Kombinieren, Erweitern, etc.) und Load (Überführen in das Zielformat) hervor. Die in der Abbildung dargestellten blauen Kästchen sind die (sogenannten) Transformer (Funktionen). Diese können per Drag & Drop zu einer beliebigen Prozesskette zusammengestellt werden. Insgesamt gibt es über 400 Transformer, die alle eine oder mehrere Funktionen ausführen können.
Abbildung 1: Beispiel eines ETL-Prozesses in der FME Workbench |
Um euch einen Einblick in die riesige FME-Welt zu geben, habe ich nachfolgend ein kleines Beispiel für die Erzeugung eines virtuellen Stadtmodells im CityGML-Format zusammengestellt.
CityGML ist ein OGC®-Standard für den Austausch von virtuellen 3D-Stadtmodellen. Eine Besonderheit des Formats ist die semantische Strukturierung verschiedener thematischer Objekte. So besteht ein Gebäude (Building) aus Wänden (WallSurface), Dächern (RoofSurface) und weiteren Teilen, die namentlich beschrieben und entsprechend geometrisch modelliert werden. Alles Weitere zum CityGML-Standard findet Ihr unter SIG 3D und OGC.
Ausgangsdaten für dieses Projekt sind Gebäudedaten im Level of Detail 2 (LoD 2), die in einem CAD-System modelliert wurden, sowie Sach- und Adressinformationen aus Excel- und Esri Shape-Dateien. Ziel ist es, diese Daten über einen gemeinsamen Gebäudeschlüssel zu kombinieren, um semantische Informationen zu ergänzen und anschließend in das CityGML-Format zu überführen.
Abbildung 2: Gebäude im CAD-Format (LoD 2) |
Wie im Fenster „Display Control“ in der Abbildung 2 zu erkennen, sind die Gebäude derart modelliert, dass pro Gebäude die einzelnen Gebäudeteile wie Wand, Dach, Fußboden, Anbauten, etc. auf separaten Layern liegen. Dies hilft dabei, die Daten in die entsprechende Zielstruktur zu überführen. Außerdem ist der eindeutige Gebäudeschlüssel im Layernamen abgelegt. Dieser wiederum findet sich auch in den Adress- und Sachdaten wieder.
Abbildung 3 zeigt exemplarisch das Zusammenführen von Gebäude- und Sachdaten bzw. Adressdaten über den Transformer FeatureMerger. Die Adressinformationen werden über den gemeinsamen Gebäudeschlüssel an die Gebäude angefügt. Die als Requestor in den FeatureMerger geleiteten Gebäude verlassen den Transformer über den COMPLETE-Ausgang, wenn für das Gebäude Adressinformationen existieren (andernfalls werden die Gebäude als INCOMPLETE eingestuft).
Abbildung 3: Zusammenführen von Gebäude- und Adressdaten |
Sind alle Datenquellen eingebunden und miteinander in Beziehung gebracht, werden zusätzliche Informationen für das CityGML-Format hinzugefügt. Das sind spezielle Attribute, die den zu verwendenden CityGML-Geometrietypen und die Relation der Objekte zu einander beschreiben. Im letzten Schritt werden die Daten dann in das CityGML-Format überführt. Die Abbildung unten zeigt das Ergebnis des FME-Prozesses.
Abbildung 4: Ergebnis CityGML-Datei im FZK-Viewer des KIT |
Vielleicht steht ihr in eurem GIS-Projekt vor ähnlichen Aufgaben oder wollt die FME-Welt für Euch entdecken? Safe Software stellt für Hochschulen und Forschungseinrichtungen kostenfreie FME-Desktop- und FME-Server-Lizenzen für Lehre und/oder Forschung bereit. Diese können direkt bei Safe Software beantragt werden. Und wer einfach nur mal stöbern möchte, der findet in der FMEpedia Dokumentationen, Videos und Beispiele.
Übrigens gibt es für ArcGIS for Desktop und ArcGIS for Server eine Erweiterung, die auf FME-Technologie basiert. Diese erlaubt es, FME-Prozesse auch direkt in ArcGIS zu erstellen und zu nutzen. Beliebige Daten können damit direkt in ein Kartendokument eingebunden werden. Mehr dazu unter: Extend the Reach of Your ArcGIS Investment.
Dieser Beitrag wurde verfasst von Christian Dahmen, Consultant Spatial ETL/FME, con terra GmbH (European FME Service Center). Veröffentlicht von Grischa Gundelsweiler, Education Manager.