
Googleは、Visual Positioning Service(VPS)と呼ばれる技術とストリートビューを組み合わせて、こうした問題を解決する方法をテストしているようだ。
・画像を比較してローカライゼーション

また、現段階では、スマホに備わっている数々のセンサーにより地球の磁場と重力、デバイスの動きを測定して、おおよその向きを割り出しているが、これらのセンサーは、外部環境に影響を受けやすいもので往々にして誤差が生じる。
VPSでは、GPS信号ではなく画像に基づいてデバイスの位置を特定する。まず、位置がわかっている一連の画像を撮影し、建物の輪郭などの重要な視覚的特徴について分析。基準点の大規模で高速に検索可能なインデックスを作成する。
自身の位置および向きの特定には、スマホで撮影した画像データとインデックス内のデータとを比較する。
・AR機能で方向を示すオブジェクトを表示

しかし実際は、ストリートビューの画像データが古かったり、季節や状況が違ったりで基準点をすべて一致させることは困難。そのため機械学習により、変化のない可能性の高い部分を抽出して、基準点としての優先順位を設けている。
また、ローカライゼーションの精度向上は、オプションとしてAR機能を付加することを可能にした。たとえば、歩行ナビでGoogleマップ上に方向を示すオブジェクトを示せば、どちらの方向に進むかが一目瞭然となる。
Googleは、こうしたAR機能があらゆる条件下で使えるようテストを続けている。
参照元:Using Global Localization to Improve Navigation/Google AI Blog