ARの主要技術(ビジョンベース型とロケーションベース型)
サンプルプログラムでは「Hiro」と書かれた画像を読み込むとブラウザ上に物体が表示されました。
でも、ARを利用していると説明したポケモンGOでは、画像を読み込まなくてもポケモンたちが表示されました。どうやってポケモンたちを空間上に表示しているのでしょうか。
この回では、ARの基盤となる技術について学習します。
まず、下記の記事を読んでみてください。
とても分かりやすくまとめられている記事で、ARでどのように物体が表示されるのかがわかったかと思います。
記事でも説明されていますが、ARは大きく分けてビジョンベース型とロケーションベース型に分けられます。
ビジョンベース型:マーカー型とマーカーレス型
ビジョンベース型では実空間にある何らかの特徴を画像認識してコンテンツを表示します。
サンプルプログラムで利用した「Hiro」と書かれた画像はマーカーと言い、サンプルプログラムはマーカーを画像認識した上でコンテンツを表示するので、マーカー型のARです。尚、マーカーとして利用できるのは、黒枠で囲まれた画像だけではありません。
例えば、Natural Feature Tracking (NFT):自然特徴点トラッキングという技術を使用すると、写真もマーカーとして利用することができます。
#今回利用しているサンプルプログラムではNFTを現在の時点ではサポートしていません。類似したサンプルプログラムを利用すれば、写真をマーカーとして利用することもできます。
NFTを利用したマーカー型ARのイメージは下記で確認できます。
Youtube動画:ARToolKitのNatural Feature Tracking (NFT) を試してみました。
一方、マーカーレス型では、椅子などの現実に存在するものをマーカーとして利用します。
そのため、開発の際、マーカーとして利用する物体の特徴を登録する必要があります。
ロケーションベース型:GPS型
ロケーションベース型ではGPSデータを利用して、実空間にコンテンツを投影します。
また、GPSデータに基づく位置情報に加えて、ジャイロセンサーなど端末の動きや傾きを検知する機能を利用して、正確に物体を空間上に表示します。
ポケモンGOが一部の端末では利用できないとされていたのは、このジャイロセンサーがない端末のことです。
ポケモンGOはジャイロセンサーなしスマホでARが使えない【実例】
このようにビジョンベース型とロケーションベース型のARがあり、利用目的よって使い分けるとよいと考えられます。例えば美術館で展示物に関する追加の情報等を表示したい場合はビジョンベース型(マーカー型)が向いていますし、フィールドワークなどで各場所で関連するコンテンツを表示したい場合はロケーションベース型を採用すると良さそうです。