メインコンテンツまでスキップ

マップについて

最後にどこかを訪れた時のことを思い出してください。

あなたは、おすすめの観光地に行こうと思っています。どうやって辿り着きますか? 地図を読み、目的地の近くにある通りの名前やランドマークを見つけ、自分の位置を確認し進む方向を決めれば目的地までの道順を見つけることができます。

何度も同じ場所を訪れていると、地図を見なくてもその場所に行けるようになることがあります。

なぜなら、あなたは通りの名前、明確なランドマークを記憶することによって頭の中に地図(マップ)を作成しているからです。

これはコンピュータがマップを作るのと全く同じ考え方です。しかし、コンピュータは道の名前やランドマークとなるものを見ただけでは認識することができません。そこで、コンピュータに認識させるための特徴点を作り、3次元の点群(3Dマップ)を作ります。

特徴点

ios-arm64-arch

Extracting feature points

ios-arm64-arch

特徴点の認識・照合

さらに詳細について知るには Feature Detection, Feature Description, Feature Matching を参照してください。

3Dマップとは?

マップには、3次元の点群カメラのポーズが含まれます。

\

マップ作成時のイメージ

White points are feature points
白い点→点群
\ 緑のオブジェクト→カメラのポーズ

なぜ3Dマップが必要なのか

1. 3Dオブジェクトを現実世界に出現させる

カメラ映像に3Dオブジェクトを重ね合わせただけだとリアルではない

すべての画角でオブジェクトに対するカメラの位置を知る必要がある

2. 空間を理解する

位置決め・方向付け、いわゆるリローカリゼーションは、すでにスキャンしたマップ上の位置を調べるだけということです。

リローカリゼーション:カメラのポーズを位置決め・方向付けし、空間環境を把握すること。詳しくは、リローカライズの概念をご覧ください。

カメラの画角が白いとき: リローカリゼーションがうまくいっていない
カメラのが画角が赤いとき: リローカリゼーションが成功している