Plattformspezifische Leitfäden
Android (Kotlin/Java)
Android NDK (C)
Unity (AR Foundation)
iOS
Unreal Engine
Mit der ARCore Geospatial API können Sie Inhalte remote an beliebige Bereiche anhängen, die von Google Street View abgedeckt werden, und AR-Funktionen weltweit erstellen. Dazu werden Geräte- und GPS-Sensordaten verwendet, um die Umgebung des Geräts zu erkennen. Die erkennbaren Teile dieser Umgebung werden dann mit einem Lokalisierungsmodell des Visual Positioning System (VPS) von Google abgeglichen, um den genauen Standort des Geräts eines Nutzers zu bestimmen. Die API sorgt auch dafür, dass die lokalen Koordinaten des Nutzers mit den geografischen Koordinaten aus VPS zusammengeführt werden, sodass Sie in einem einzigen Koordinatensystem arbeiten können.
Globale Lokalisierung mit VPS
Street View-Bilder aus Google Maps, die seit mehr als 15 Jahren auf der ganzen Welt aufgenommen werden, bilden die Grundlage für VPS. Neuronale Deep-Learning-Netzwerke identifizieren und beschreiben Teile der Bilder, die wahrscheinlich über lange Zeiträume hinweg erkennbar sind. Diese Teile werden dann aus zig Milliarden Bildern kombiniert, um eine 3D-Punktwolke der globalen Umgebung zu erstellen. Dieses Lokalisierungsmodell besteht aus Billionen von Punkten und umfasst fast alle Länder. Die Abdeckung wird in Zukunft noch erweitert.
Wenn das Gerät des Nutzers eine Anfrage an die Geospatial API sendet, verarbeitet ein neuronales Netzwerk die Pixel, um erkennbare Teile der Umgebung des Nutzers zu finden und sie mit dem VPS-Lokalisierungsmodell abzugleichen. Algorithmen für maschinelles Sehen berechnen dann die Position und Ausrichtung des Geräts und liefern einen Standort, der viel genauer ist als das, was bisher nur mit GPS möglich war.
Anker mit der Geospatial API platzieren
Beim Platzieren von Ankern verwenden andere ARCore-APIs wie die ARCore Cloud Anchor API auch Bildkarten, um die Position eines Geräts zu bestimmen. Die von diesen APIs erstellten Bildkarten sind jedoch lokal, da sie explizit einen Raum abbilden müssen.
Die Geospatial API gibt die horizontalen (Breiten- und Längengrad) und vertikalen (Höhe) Positionen eines Ankers gemäß der WGS84-Spezifikation an. Sie können einen raumbezogenen Anker fast überall auf der Welt an einem bestimmten Breiten- und Längengrad sowie einer bestimmten Höhe platzieren, ohne den Raum manuell kartieren zu müssen.
Arten von raumbezogenen Ankern
Es gibt drei Arten von geografischen Ankern, mit denen Inhalte an realen Orten angebracht werden können. WGS84-Anker stellen einen Ort mit einem bestimmten Breiten- und Längengrad sowie einer bestimmten Höhe relativ zum WGS84-Ellipsoid dar. Geländeanker stellen einen Ort mit einem bestimmten Breiten- und Längengrad sowie einer Höhe relativ zum Boden oder Fußboden dar. Dachanker stellen einen Ort mit einer bestimmten Höhe, einem bestimmten Längengrad und einer bestimmten Höhe relativ zum Dach eines Gebäudes dar. Weitere Informationen finden Sie in den Entwicklerleitfäden.
Anwendungsfälle für die Entwicklung mit der Geospatial API
Hier sind einige Möglichkeiten, wie Sie die Geospatial API in Ihren eigenen Projekten verwenden können.
Nutzer zu bestimmten Orten leiten
GPS ist zwar gut geeignet, um standortbezogene Funktionen zu entwickeln, aber die Genauigkeit kann unzureichend sein, wenn Sie AR-Funktionen erstellen möchten, die exakt und präzise sind. Mit der Geospatial API müssen Sie sich keine Sorgen machen, dass Ihre virtuellen Objekte hin- und herspringen. Sie können einen POI explizit zuordnen, um Inhalte daran anzuhängen und ihn zuverlässig zu lokalisieren. So können Nutzer beispielsweise ihr Auto in dicht besiedelten städtischen Gebieten oder in belebten Räumen finden.
Standortbasierte AR-Erlebnisse erstellen
Mit der Geospatial API können Sie überzeugende Nutzererlebnisse schaffen, die nützlich sind und Spaß machen, ohne dass Sie Karten mehrerer Standorte erstellen und verwalten müssen. Lassen Sie Ihre Nutzer in eine virtuelle Welt eintauchen, in der alles möglich ist.
Gaming und Selbstausdruck
Mit der Geospatial API können Ihre Nutzer die Welt in eine Leinwand für Kreativität verwandeln. Bei Balloon Pop kann ein Nutzer beispielsweise Ballons als Ziele in der realen Welt platzieren und versuchen, sie mit einem physikalisch korrekten Ball zum Platzen zu bringen, der auf die Entfernung im Weltraum reagiert. Nutzer in der Nähe können der Funktion beitreten und dieselben Ballons über eine einfache Firebase-Implementierung platzen lassen. Mit Pocket Garden können Nutzer ihre Nachbarschaft mit einem bunten AR-Gemeinschaftsgarten verschönern. Dabei werden Samen maßstabsgetreu in der realen Welt platziert und es werden unter anderem Ranken und pralle Sukkulenten gepflanzt. Sowohl Balloon Pop als auch Pocket Garden sind Open-Source-Projekte und können als Grundlage für eigene kreative Projekte genutzt werden.
Gerätekompatibilität
Einige ARCore-kompatible Geräte unterstützen die Geospatial API nicht. Diese Geräte sind auf der Seite Geräte mit ARCore-Unterstützung aufgeführt.
Weiteres Vorgehen
- In diesem I/O-Vortrag zu VPS und der ARCore Geospatial API werden die Geospatial API und ihre Funktionen genauer vorgestellt.
- Balloon Pop und Pocket Garden sind zwei Open-Source-Beispiel-Apps, die die Geospatial API nutzen.