平台專屬指南
Android (Kotlin/Java)
Android NDK (C)
Unity (AR 基金會)
iOS
Unreal Engine
ARCore Geospatial API 可讓您從遠端將內容附加到 Google 街景服務涵蓋區域,並且以全球規模打造 AR 體驗。這項功能使用裝置的感應器和 GPS 資料偵測裝置的環境,然後將該環境可辨識的部分與 Google 的影像定位系統 (VPS) 提供的本地化模型進行比對,以確定使用者裝置的精確位置。另外,這個 API 也會將使用者的當地座標與 VPS 的地理座標合併,以便在單一座標系統中運作。
透過 VPS 進行全球本地化
「Google 地圖」的街景服務圖片 (擷取自全球超過 15 年) 是 VPS 的基礎。深層類神經網路可辨識並描述長時間可供辨識的圖片部分。然後將這些零件結合成千上萬張圖片,以計算全球環境的 3D 點雲。這個本地化模型包含數兆個點,涵蓋幾乎所有國家/地區,未來也會涵蓋更多國家/地區。
當使用者的裝置向 Geospatial API 發出要求時,類神經網路會處理像素,以找出使用者環境中的可辨識部分,並將其與 VPS 本地化模型進行比對。接著,電腦視覺演算法會計算裝置的位置和方向,提供比先前在 GPS 上更加精確的位置資訊。
使用 Geospatial API 放置錨點
放置錨點時,其他 ARCore API (例如 ARCore Cloud Anchor API) 也會使用映像檔對應來判定裝置的姿勢。不過,這些 API 所建立的映像檔對應是本機,因為它們必須明確對應空格。
Geospatial API 依 WGS84 規格提供錨點的水平 (緯度和經度) 和垂直 (高度) 位置。您可以將地理空間錨點放置在全世界任何地方,在特定的緯度、經度和高度使用,這樣就不必手動繪製地圖。
地形錨點
地形錨點是一種地理空間錨點,可讓您僅使用經緯度來放置 AR 物件,利用 Google 地圖中的資訊找出地面上精確的高度。
透過 Geospatial API 進行開發的用途
以下是在您自己的專案中使用 Geospatial API 的方法。
引導使用者前往特定地點
GPS 非常適合用來建構適地性體驗,但如果需要打造精確而精確的 AR 體驗,GPS 的精確度可以降低。有了 Geospatial API,您就不需要擔心虛擬物件跳動。你可以明確標示搜尋點,將內容附加到相關內容,並使其穩定進行本地化,讓使用者能在人口密集的城市區尋找自己的車輛,或在繁忙的空間尋找自己的方向。
打造地點導向的 AR 體驗
透過 Geospatial API 提供兼具實用性和吸引力的使用者體驗,您完全不需要建構及維護多個地點的地圖,盡可能讓使用者在虛擬世界中暢談。
遊戲和自我表達
透過 Geospatial API,您的使用者可以把地球轉換成畫布,發揮無限創意。舉例來說,Balloon Pop 可讓使用者將氣球定位在現實世界中的目標,並嘗試運用在物理空間中回應球體的球體來回應。附近的使用者可以透過簡單的 Firebase 實作加入體驗並使用相同的氣球。使用者可以利用 Pocket Garden 裝飾色彩繽紛的 AR 社區花園,在現實世界中即時放置種子,種植大方的植物、種植藤蔓和發泡的多肉植物等。Balloon Pop 與 Pocket Garden 都是開放原始碼的平台,你可以自由發揮創意來發揮創意。
裝置相容性
少數支援 ARCore 的裝置不支援 Geospatial API。如要瞭解這些裝置,請參閱 ARCore 支援的裝置頁面。
後續步驟
- 觀看 VPS 和 ARCore Geospatial API 的 I/O 大會講座,其中會詳細展示 Geospatial API 及其功能。
- 探索 Balloon Pop 與 Pocket Garden,這兩位採用地理空間 API 的開放原始碼範例應用程式。