Open25
[Google I/O 2022 メモ]VPS and the ARCore Geospatial API
- ARCore Geospatial APIによって、AndroidとiOSで、グローバルスケールで没入型のロケーションベースのAR体験を構築できる
- 過去15年間、現実世界の理解を構築するために、衛生、空中、地上レベルの画像を利用して世界をマッピングしてきた
- 合計で1000万マイル以上のストリートビューをカバー
- 人口全体の98%以上をカバーする、3600万平方マイル以上のHD衛生画像をカバー
- この数十億の膨大な画像データから、それらを融合して、幾何学的および意味的に世界を理解する3Dモデルを作成した
- これは、GoogleMapやGoogleEarthなどのファーストパーティアプリの基盤となっている
- この3Dワールドモデルは、人間のためでも機械のためでもあるマップである
Machine Readable 3D Model
- Machin readable 3D model、特にスマートフォンカメラについて話す
- 開発者コミュニティが世界規模のAR体験を作成できる方法についても説明する
- このテクノロジーは、グローバルローカリゼーションと呼ばれ、本番環境でストレステストが行われ、GooogleMap内のARライブビューモードと、GoogleレンズのARプレースフィルターの強化に使われている
- そして今日、デベロッパーコミュニティであるあなたたちに同じコア機能を開放し、あなたのアプリケーションで没入型のロケーションベースのAR体験を作成できるようにする
- ストリートビューがある、世界93カ国以上で利用できる
- 01 : ロケーションベースのAR体験を構築するための様々なオプション
- 02 : ロードマップの技術的機能の背景
- 03 : このAPIの使用の基本と、開始の容易さ
- 04 : 初期のパートナーがGeospatial APIを使用して行っていることの共有
Location-based AR experiences
- ロケーションベースのAR体験を提供する場合、いくつかのオプションが有る
- 01 : Build-in sensors
- GPSやコンパスなどの内蔵センサーを利用
- 02 : Cloud Anchors API
- AR Core Cloud Anchors APIのような空間アンカーを利用
- 03 : Geospatial API
- これら様々なオプションを使用することの利点と、トレードオフを説明する
Built-in sensors
- 地球規模のシステムで、位置情報ベースの体験を構築するのに最適
- しかし、特に都市の中で青い丸のジャンプを体験したことがある場合、カメラビューを使ったAR体験に必要な精度とかけ離れていることは知っているでしょう
- コンパス調整の8の字パターンを実行した後でも、 5〜10mの位置情報精度と30〜45度の回転精度となる
Cloud Anchors
- コンテンツを添付するために、スペースまたは関心のある場所を明示的にマップする必要がある
- そうすることによって、確実にローカライズできる
- Cloud Anchorsは、プライベートスペースや、スペースを物理的に表示してマッピングできる、小規模なイベント規模の体験で、非常に上手く機能する
- ただし、Cloud Anchorsの大規模な展開では、コンテンツの検出が課題であり、配置も課題
- デベロッパーコミュニティからは、ユーザーを適切な場所に誘導し、物理的にそれらの場所に行かなくてもコンテンツをリモートで配置できるようにしたいとの要望があるが、Cloud Anchorsではどちらも困難
Geospatial API
- Googleの10年以上にわたる地上レベルの画像のおかげで、世界を詳細にマッピングしている
- 位置情報サービスと連携することで、GPSの見積もりを適切に行い、AR準備を整えることができる
- Geospatial APIを利用すると、コンテンツをリモートで世界に添付してユーザーをガイドすることができ、ストリートビューのほぼすべての場所で没入型のロケーションベースのAR体験を作成できる
- GPS → グローバルスケールだが、精度が低く信頼性が変動する
- Cloud Anchors → 高精度だが、スペースのマッピングが必要なので限られたスペースになる
- Geospatial API → 両方の世界を最大限に活用し、コンテンツをリモートで配置でき、スペースマッピングも必要ない
Capabilities
- Geospatial APIの3つの柱
- Geo Localication
- Anchoring & Geometry
- World Understanding
Geo Localization
- ローカリゼーションはGeospatial APIの基盤
- 地球上に仮想コンテンツを配置できるようにすることで、AR体験を世界規模に引き上げる
- この機能を提供するために、デバイスはVPSに対するサーバー呼び出しを行う
- VPSは、位置情報と画像を使用して、GoogleMapの高解像度3Dデータと照合する
- このプロセスは、ビジュアルローカリゼーションと呼ばれる
- GPSよりも遥かに正確に、環境に対するデバイス位置を特定することができる
- どのように実現しているか
- ストリートビュー画像はVPSの基盤
- ディープニューラルネットワークで、長期間に渡って認識される可能性が高い画像の部分を識別
- アルゴリズムが、車でなく建物に焦点を当てる学習をしたことがわかる
- これらの特徴点を数百億の画像に渡って組み合わせ、環境の3D点群を計算する
- このローカリゼーションモデルは数兆ポイントで構成され、将来的にはほぼすべての国がカバーされる
Device Localization
- デバイスがGeospatial APIにリクエストを送信すると、同様のプロセスが画像に適用される
- ニューラルネットワークはピクセル処理を行い、環境の認識可能部分を見つけ、それらをローカリゼーションモデルと照合する
- 次に、コンピュータビジョンアルゴリズムが、デバイスの位置と向きを計算する
- このプロセスでは、Googleの機械学習アクセラレータであるTPUを使用する
- 所要時間は1秒未満
- Geospatial APIは、非常に成熟したVisualPositioningServiceに基づいて構築されており、ストリートビューでカバーされるほぼすべての領域でAPIを利用できるようにしている
Content placement
- AR体験での重要な課題の1つは、実世界へのコンテンツの正確な配置
- Geospatial APIを使うと、特定の緯度経度、高度でアンカーを配置できる
Terrain Anchors
- 今年後半にTerrain Anchors(地形アンカー)をリリースする予定
- これによって、緯度経度の情報のみの提供で、アンカーを作成できるようになる
- GoogleMapの他の情報を利用して、コンテンツを正しい高度に配置できる
- 右の画像がTerrain Anchorsが使われ、快適なユーザーエクスペリエンスを実現している例
- 現在取り組んでいることを紹介する
- リリースされていないが、将来的にデベロッパーが使えるように模索している
3D Building Geometry
- AR体験はオクルージョンや物理学を介して、現実世界とシームレスに統合されたときに、魔法のようになる
- 1つの鍵は、建物の形によって与えられると信じている
Geometric Anchors
- ARCoreは、要素を物理的な場所に固定し、デバイスによって検出された平面に配置する機能を提供している
- Geospatial APIでは、Geometric Anchorsと呼ばれる同様の概念について考えている
- 2つの部分で構成されている
- 壁に取り付けられたアンカーを壁に貼り付けたままにするなど、意図をキャプチャして維持すること
- アンカーポーズを維持すること。3Dモデルが時間の変化とともに洗練されても、アンカーは意図した場所に留まる
- 基盤となる3Dセマンティックモデルを徐々に公開し、さらに豊かなエクスペリエンスを構築できるようにしたいと考えている
- 特に、GoogleMapプラットフォームなどの既存の地理空間サービスと組み合わせ、Geospatial APIに意味の理解を追加すると、「公園内の特定の噴水」や「お気に入りのコーヒーストア」などのコンテンツを世界中の場所に手続き的に配置できるようになる
Geospatial API
- 今日ローンチしたものの紹介
- このコード例は、AR体験を世界規模で実現するのがいかに簡単かを示している
- 地理空間データを取得するには、arSessionのgeospatialModeを有効にして、Geospatial APIを有効にする必要がある
- リモートアンカー作成の、アンカー位置を決定するために、例えばGoogleEarthやGoogleMapから地点をサンプリングできる
- これらの座標を使用して、世界規模でのアンカーの作成を開始できる
- アプリでGeospatial pauseを取得する例
- Geospatial pauseは、緯度経度、高度、デバイスの向きで構成される
- これらの値は、推定される不確実性とともに提供されるので、AR体験の調整ができる
Applications
- アプリのユースケース例を3つ紹介する
Ridesharing & Micromobility
- ライドシェアリングとマイクロモビリティ
- どちらも、高精度の位置情報を必要とする
- Geospatial APIによって、ドックレスeスクーター/eバイクの駐車時の使いづらさを取り除き、ライダーが、自分の車体が有効な駐車スポットにあることを正確に知ることができる
- ライダーの安心感が高まり、適切に駐車されたスクーターが、コミュニティとの良い関係につながっている
- 逆に、車両の発見は、都市の密集した箇所で簡単になった
Location-based AR activations
- APIのおかげで、デベロッパーは複数の場所の地図を作成して維持する必要なしに、実用性と喜びを提供する魅力的なユーザーエクスペリエンスの作成に集中できる
- Telstra/Accentureは、魅力的で没入的なコンテンツを紹介しながら、座席へと案内する、マーベルスタジアムのコンパニオンアプリを提供している
- Docomo/Curiosityは、東京のホットスポットを、ロボットと一緒にドラゴンをかわすことができる世界に変えている
Gaming & self-expression
-
Geospatial APIを使用すると、文字通り地球をクリエイティブなキャンバスに変えることができる
-
「Balloon Pop」では、実世界のターゲットとしてバルーンを配置し、距離に対応したボールで、バルーンをポップすることができる
-
「「Balloon Pop」を使用すると、カラフルなARコミュニティガーデンで近所を飾り、実世界の正確な位置に種を植えたりできる
-
「Balloon Pop」「Balloon Pop」はオープンソースで提供、あなたの創造性をブートストラップするために利用できる
- 本日からAndroid/iOSで使える
- サポートされているすべてのARCore対応デバイスで利用できる
- Geospatialコードラボを開始するか、Android/Unity/iOSのサンプルとARCoreSDKを確認してください