top of page

World Bank Biodiversity Augmented Reality App


3D-Karte in AR mit Elevation, Pin, zwei Datenebenen und Legende
3D-Karte mit Elevation, Pin, zwei Datenebenen und Legende

Projektübersicht und Zweck

In den letzten Jahren hat sich die Dringlichkeit des Artenschutzes zunehmend gezeigt. Die effektive Kommunikation räumlicher Daten, die als Grundlage fundierter Entscheidungen dienen, bleibt jedoch eine Herausforderung. Traditionelle Methoden scheitern oft, wenn es darum geht, Interessengruppen für komplexe Datensätze zu begeistern, was wiederum die Umsetzung wissenschaftlicher Erkenntnisse in konkrete Strategien behindert.

Die mobile AR-App strebt danach, die Datenvisualisierung in ein immersives und interaktives Erlebnis umzuwandeln. Mithilfe interaktiver 3D-Karten visualisiert die App verschiedene Datensätze in unterschiedlichen Maßstäben und Bereichen, um ein tieferes Verständnis für Muster bzgl. der Biodiversität zu fördern. Durch die Verschmelzung von AR mit öffentlich zugänglichen Datensätzen soll die App Kommunikationsexperten dabei unterstützen, die Bedeutung des Schutzes der Artenvielfalt einem breiteren Publikum zu vermitteln.


Zielsetzung, Briefing des Kunden

Entwicklung einer intuitiven Benutzeroberfläche zur Visualisierung öffentlich zugänglicher Datensätze über interaktive Karten. Sicherstellung einer reibungslosen Interaktion mit der AR-Umgebung, um eine ansprechende Erforschung der Biodiversitätsdaten zu ermöglichen. Einer breiten Öffentlichkeit ein besseres Verständnis der Auswirkungen räumlicher Daten vermitteln.





Tech Stack

Bei der Auswahl des Technologie-Stacks für unsere mobile AR-App haben wir eine gründliche Bewertung verschiedener Software Development Kits (SDKs) und Application Programming Interfaces (APIs) durchgeführt, um Kartenkachel-Dienste und räumliche Datenebenen nahtlos zu integrieren. Unsere Untersuchung konzentrierte sich auf die Kompatibilität mit Unity, ARFoundation und die Fähigkeit, verschiedene Datenebenen auf der Karte zu unterstützen.


Mapping SDKs:

  • Mapbox: Anfangs in Betracht gezogen, aber zu Projektbeginn veraltet.

  • ArcGIS: Behindert durch Konflikte zwischen der ArcGIS-Kamera und AR-Kamerabewegungen.

  • Microsoft Azure Maps: Nicht verfügbar für Unity3D.

  • Cesium SDK: Als besser für VR-Anwendungen geeignet erachtet.


Nach einer umfassenden Überprüfung haben wir folgenden Technologie-Stack festgelegt:

  • Microsoft Bing Maps mit Garage SDK und MRTK:

    • Gewählt aufgrund der Kompatibilität mit Unity3D und ARFoundation.

    • Nahtlose Integration mit Bing Maps und Microsoft Mixed Reality Toolkit (MRTK).

    • Bewährt, sowohl für die aktuelle AR-Anwendung als auch für mögliche zukünftige VR-Entwicklungen.

  • Unity3D: Eine der primären Game-Entwicklungsplattform.

  • UniTask: Eine effiziente Async/Await-Integration für Unity.

Zusätzliche APIs für die Datenintegration:

  • World Bank API: Zugriff auf globale Datensätze.

  • GBIF API: Integriert für Biodiversitätsdaten.

  • ArcGIS API: Verwendet für ergänzende räumliche Datenebenen.

Dieser sorgfältig zusammengestellte Technologie-Stack gewährleistet eine optimale Integration von Kartendiensten und Datenebenen, wobei sich Microsoft Bing Maps und das Garage SDK als beste Wahl herausstellen. Der Stack legt auch die Grundlage für eine mögliche Weiterentwicklung in VR und passt zur zukünftigen Skalierbarkeit der App. Die Verwendung von Microsoft MRTK verbessert weiterhin die Kompatibilität und Benutzerfreundlichkeit der App in verschiedenen XR-Umgebungen. Mit Unterstützung für bis zu drei verschiedenen Datenebenen bietet Bing Maps eine robuste Lösung für unsere AR-App und trägt zu einer umfassenden und interaktiven Benutzererfahrung bei.


Warum wir das ArcGIS SDK nicht ausgewählt haben

Der Konflikt zwischen der ArcGIS-Kamera und der AR-Kamera entsteht aus den grundlegenden Unterschieden in der Handhabung der räumlichen Positionierung und Navigation dieser beiden Systeme.

Bei ArcGIS erfolgt die typische Navigation auf der Karte durch Bewegen der ArcGIS-Kamera, um die Ansicht der Kartenkacheln anzupassen. Wenn Benutzer eine andere Region oder Fläche auf der Karte erkunden möchten, wird die Kamera entsprechend neu positioniert. In einem Augmented Reality (AR)-Anwendungskontext ist die Kamera jedoch inhärent mit der physischen Kamera des Geräts und dem Ursprung der AR-Welt verbunden.

In AR-Anwendungen ist die Kamera dafür verantwortlich, den erweiterten Inhalt im Verhältnis zur realen Umgebung wiederzugeben, die von der Kamera des Geräts erfasst wird. Der Ursprung der AR-Welt bildet einen festen Punkt in der realen Welt, von dem aus der AR-Inhalt verankert ist. Jede Bewegung des Geräts entspricht direkt einer Bewegung innerhalb der AR-Umgebung.

Der Konflikt entsteht beim Versuch, ArcGIS mit AR-Funktionalitäten zu integrieren. Da ArcGIS darauf angewiesen ist, seine eigene Kamera zur Kartennavigation zu manipulieren, kommt es zu einem Konflikt mit der AR-Kamera, die eng mit der Kamera des Geräts und dem Ursprung der AR-Welt verbunden ist. Wenn Benutzer versuchen, die Karte zu verschieben oder die angezeigte Region mit der ArcGIS-Kamerabewegung zu ändern, stört dies die synchronisierte Bewegung, die in der AR-Umgebung erwartet wird. Dieser Konflikt kann zu desorientierenden und unvorhersehbaren Benutzererfahrungen führen, die die nahtlose Integration von ArcGIS in eine AR-Anwendung beeinträchtigen.

Angesichts dieser Herausforderungen wurde die Entscheidung getroffen, alternative Mapping-Lösungen zu erkunden, die besser auf die spezifischen Anforderungen einer AR-Anwendung ausgerichtet sind, was letztendlich zur Auswahl von Microsoft Bing Maps mit Garage SDK und MRTK in diesem Projekt führte.


Projektumfang der Augmented Reality App

Unser Projektrahmen konzentriert sich auf Unity3D und ARFoundation und optimiert die Darstellung öffentlich zugänglicher räumlicher Datensätze für ein immersives Augmented Reality (AR)-Erlebnis. Durch diese Technologien gewährleisten wir Kompatibilität mit iOS- und Android-Plattformen sowie eine zukünftige Migration zu VR-HMDs wie der Meta Quest 3. Darüber hinaus soll das Projekt eine mögliche Erweiterung in den Bereich der Virtual Reality (VR), Anpassungsfähigkeit und Skalierbarkeit mit Microsoft Bing Maps, Garage SDK und MRTK gewährleisten.


Design und Architektur

Das Hinzufügen einer Datenebene über ein 3D-Kartenmodell, das vom Microsoft Garage SDK bereitgestellt wird, ist recht einfach. Wir müssen lediglich eine Komponente ergänzen, die von einer der MS Garage SDK-Klassen erbt. Wir stellen die Abfrage-URL mit den richtigen Parametern bereit, um die Kacheln für den Datenlayer zu laden, die zu den aktuellen zugrunde liegenden Kartenkacheln passen. Wir führen die Abfrage und das Laden der Kacheln asynchron durch. Dieser asynchrone Ladeansatz gewährleistet eine reaktionsschnelle Benutzeroberfläche.


Auf die Anfrage des Kunden hin haben wir ein Auswahlmenü implementiert, das es den Benutzern ermöglicht, Vorkommen von Domänen und Stämmen innerhalb der Datenebene zu visualisieren. Um dies zu erreichen, haben wir uns mit der GBIF-Dokumentation beschäftigt und erfolgreich den optimalen Ansatz für die Abfrage der angeforderten Kacheln über die GBIF-API entwickelt. Ähnliche Methoden wurden angewendet, um mit der World Bank API und der ArcGIS API zu interagieren.


Um den Prozess der Abfrage mehrerer APIs zu optimieren, haben wir das Factory-Methoden-Entwurfsmuster angewendet, um Redundanz im Code zu reduzieren. Darüber hinaus haben wir das Beobachtermuster und einen EventBroker implementiert, um die effiziente Kommunikation zwischen Komponenten zu erleichtern. Beobachter werden über Ereignisse, wie z.B. den Abschluss der JSON-Analyse oder Benutzerinteraktionen, informiert. Diese Designentscheidungen verbessern nicht nur die Modularität der App, sondern gewährleisten auch ein reibungsloses und interaktives Erlebnis.


Das Mixed Reality Toolkit (MRTK) bietet eine plattformunabhängige Lösung und vereinfacht die Entwicklungsanstrengungen, indem es einen einheitlichen Rahmen für Gesten und Interaktionen bietet und somit eine Konsistenz über verschiedene XR-Geräte hinweg sicherstellt. Diese Wahl ermöglichte es uns, die AR-App effizient zu implementieren und dabei die spätere Entwicklung der VR-Version im Blick zu behalten.




Wichtige Funktionen

  • Filtermenü für Datenebenen: Ermöglicht es Benutzern, selektiv relevante Datenebenen anzuzeigen, um eine personalisierte Erkundungserfahrung entsprechend ihren Interessen zu gestalten.

  • 3D-Karte mit halbtransparenten Datenebenen: Verbessert die Visualisierung durch das Überlagern von bis zu drei halbtransparenten Datenebenen auf der 3D-Karte und bietet gleichzeitig einen umfassenden Überblick über mehrere Datensätze gleichzeitig.

  • Verschiedene Kartenstile (Satellitenansicht, Karte mit Elevation): Bietet Benutzern die Flexibilität, Kartendesigns wie Satellitenansicht oder Karte mit Elevation auszuwählen und somit unterschiedlichen Vorlieben und spezifischen Visualisierungsbedürfnissen gerecht zu werden.

  • Reverse Geocoding für Ortssuche und gepinnte Standorte: Vereinfacht die Benutzernavigation durch die Möglichkeit der Ortssuche und dem Anheften spezifischer Standorte, um Bereiche von Interesse zu erkunden und zu referenzieren.

  • Suchverlauf für Orte auf 3D-Panel in Augmented Reality: Erhöht die Benutzerfreundlichkeit, indem der Suchverlauf auf einem 3D-Panel in AR angezeigt wird und somit ein schneller Zugriff auf zuvor erkundete Bereiche ermöglicht wird.

  • Legende der Datenebene mit Web-Links: Fördert das Verständnis der Daten, indem eine Legende für Datenebenen zusammen mit Web-Links bereitgestellt wird, die es Benutzern ermöglicht, zusätzliche Informationen und Kontexte zu den angezeigten Daten abzurufen.

  • Rotierender 3D-Globus mit Datenebenen: Bietet eine ansprechende und dynamische Übersicht über globale Datenebenen und vermittelt den Benutzern eine umfassende Perspektive räumlicher Datensätze auf einem rotierenden 3D-Globus.

  • Interaktives Schwenken und Zoomen des Karteninhalts: Erlaubt dem Benutzer, interaktiv in der Karte zu schwenken und zu zoomen, um eine detaillierte Erkundung spezifischer Regionen und Datensätze zu ermöglichen.

  • Bewegen und Skalieren der 3D-Karte: Bietet Flexibilität bei der Manipulation der 3D-Karte, indem Benutzern ermöglicht wird, die Karte nach ihren Vorlieben zu bewegen und zu skalieren


Testing und Qualitätssicherung

Während der Testphase wurde ein Bug bzgl. der GBIF-Datenebenen und deren Ausrichtung mit den Zoom-Ebenen der Karte entdeckt. Wir stellten fest, dass die Zoom-Level-Spezifikation in unserer Abfrage-URL nicht genau den Zoom-Ebenen der Karte entsprach, was zu einer fehlerhaft ausgerichteten Kacheln der Datenebenen führte. Nach genauerer Prüfung unserer Abfrage-URL und des Microsoft Garage SDK stellten wir fest, dass der korrekte Parameter für die Anforderung der genauen Kacheln von der GBIF-API "LevelOfDetail" anstelle von "Zoom" war, wie anfangs verwendet.


Nachdem wir Kundenfeedback erhalten hatten, implementierten wir ein Panel, um favorisierte Standortsuchen aufzulisten. Durch Nutzung einer lokal gespeicherten JSON-Datei auf dem Gerät und Reverse-Geocoding können Benutzer nun bequem ihre favorisierten Standorte anzeigen und verwalten. Darüber hinaus wurden UI-Elemente und 3D-Kartenstifte eingeführt, um diese Standorte visuell auf der 3D-Karte darzustellen.

Diese Verbesserungen haben nicht nur spezifische Benutzerpräferenzen berücksichtigt, sondern auch unser Engagement unterstrichen, die App-Funktionalität basierend auf Benutzerfeedback und Testergebnissen zu verbessern.


Herausforderungen und Lösungen

Eine wesentliche Herausforderung ergab sich bei der Arbeit mit dem Microsoft Garage SDK, das zwar über eine gute Leistung bei der Darstellung von 3D-Karten verfügte, jedoch über kein integriertes Modell für einen Globus. Da der Kunde ausdrücklich einen interaktiven Globus wünschte, haben wir eine Lösung entwickelt, indem wir eine einfache 3D-Kugel in die Unity-Umgebung integrierten und eine Render-Textur aus der 3D-Karte erstellten, die auf der Kugel angewendet wird, wodurch effektiv das Erscheinungsbild eines Globus simuliert wurde. Um die Benutzererfahrung zu optimieren, haben wir folgenden Ablauf implementiert: Vor dem Rendern des Globus starten wir das Herauszoomen aus der Karte, um den Benutzern einen flüssigen Übergang zur Weltansicht der Karte zu bieten.


Zukünftige Weiterentwicklung

Die Roadmap für zukünftige Verbesserungen sieht die Erweiterung der Reichweite und Funktionalität unserer App vor. Pläne beinhalten die Implementierung dedizierter Anwendungen für Virtual-Reality (VR)-Plattformen wie Google Cardboard, eine Mixed-Reality-Version für Meta Quest und Apple Vision Pro, um die Zugänglichkeit für ein globales Publikum zu erweitern.

Darüber hinaus streben wir an, eine Multiplayer-Version der AR-App einzuführen, die die gemeinsame Erkundung räumlicher Datenebenen fördert. Unter Berücksichtigung der Bedeutung benutzerfreundlicher Kommunikation wird ein zukünftiges Update darauf abzielen, wissenschaftliche, lateinische Bezeichnungen von Domänen und Stämmen in gebräuchliche Namen zu übersetzen, um ein breiteres Verständnis sicherzustellen.

Lokalisierungen werden die globale Auswirkung der App weiter verbessern, indem Inhalte an verschiedene Regionen und Sprachen angepasst werden.


Zusammenfassung

Mit dem vorläufigen Abschluss des Projekts haben wir die Meilensteine in der Entwicklung der mobilen Augmented Reality (AR)-App für die Visualisierung räumlicher Daten erreicht. Die erfolgreiche Integration einer interaktiven 3D-Karte mit mehreren Datenebenen und die Implementierung verschiedener Funktionen, einschließlich eines Filtermenüs und einer Standortsuchhistorie, verdeutlichen unser Engagement für ein benutzerzentriertes Design. Eine Erkenntnis aus dem Entwicklungsprozess war der pragmatische Einsatz von Rapid Prototyping, der sich als entscheidend für die Auswahl unserer Technologie-Stacks erwies. Rapid Prototyping ermöglichte es uns, effizient geeignete SDKs, APIs und Frameworks für die AR-App auszuwählen und zu bewerten. Das Angehen von Herausforderungen, wie dem Fehlen eines Globusmodells im Microsoft Garage SDK, unterstrich unsere Fähigkeit, sich anzupassen und praktische Lösungen zu finden.

Ein Blick in die Zukunft, auf die Roadmap für zukünftige Verbesserungen, einschließlich VR-Integration, Multiplayer-Fähigkeiten und Lokalisierungsbemühungen, spiegeln unser Engagement für kontinuierliche Verbesserung wider.

Das Projekt hat nicht nur seine unmittelbaren Ziele erreicht, sondern hat auch den Weg für ein vielseitiges und skalierbares Tool in der Visualisierung räumlicher Daten geebnet.



3D Globus mit Datenebene, Legende
3D Globus mit Datenebene, Legende

Links


Danksagung

Ich möchte meinem Dank an mehrere Personen ausdrücken, deren Beiträge eine Rolle bei der Fertigstellung dieses Projekts gespielt haben, insbesondere Bryans gründliche Tests, Abdallahs Erkundungen der GBIF- und ArcGIS-APIs und Csabas Erläuterungen der World Bank API. Mein Dank gilt auch dem Team der Weltbank für ihr Feedback, insbesondere Harsh, Dany, Hrishikesh, Hak Joo, Isabel und Akash.

24 Ansichten0 Kommentare

Aktuelle Beiträge

Alle ansehen
bottom of page