ARという技術は、既に世間一般に知られているとは思いますが、実際にどんな技術で、どんな用途で使われているものなのかを紹介していきたいと思います。

ARとは?

Augmented Realityの略で、拡張現実を意味します。
簡単に言うと現実世界の情報を元にデジタル情報を重ね合わせることにより、目に見える現実を拡張して見せる技術です。

どういう仕組み?

ARには、GPSなどの位置情報に紐付けて情報を表示するロケーションベース型と、画像認識や空間認識に関する技術を使用するビジョンベース型の2タイプがあります。

・ロケーションベース型

ロケーションベース型ARは主にGPSから取得する位置情報に関連したデジタル情報を付加する手法です。
位置情報に加えてGPS情報(デバイスの傾きや方位を端末内蔵の磁気センサーや加速度センサー)を用いて検知することで、精密に3D空間内のターゲットを認識し、表示したい場所に付加情報を表示する事も出来ます。

・ビジョンベース型

画像認識、空間認識に関する技術を利用して目前の環境を解析し、デジタル情報を付加する手法です。
正方形などのARマーカーを端末のカメラに認識させるマーカー型が一般的ですが、特定のARマーカーを利用しないで実空間に存在する物体や建造物などの環境そのものを認識し、情報を表示させるマーカーレス型と呼ばれる手法もあります。

ARとVRって何が違うの?

ARの話できワードとしてよく出てくるのがVRですが、似て非なる技術です。ARとVRの違いは簡単には以下のようになります。

AR

・拡張現実

・現実世界がベース

・現実世界にデジタルを融合

VR

・仮想現実

・仮想空間がベース

・現実世界をデジタル化

どんなことに使われているの?

AR技術は、販促・プロモーション、ゲーム、製造業のメンテナンス作業など、実は、結構、私たちの身近なものにもAR技術は使われています。
有名なのは、ポケモンGo、ドラクエウォークなどのゲームです。

ARのシステム開発的な話

AR技術ってシステム構成はどうなっているのでしょうか?
実際には、複数の構成要素を組み合わせて実現しています。 昨今、ARシステムを作る開発プラットフォームは無数に存在しますが、根幹の構成要素は以下になります。

AR技術を利用する際にARエンジンというものが必要になります。
ARエンジンとはARを実現するための基本的なソフトウェアになります。
現在、複数の会社によって開発されており、それぞれの性能や出来る事が異なります。
これらのソフトウェアはライブラリやSDKとして提供されています。 代表的なエンジンは以下になります。

・ARKit

Apple社が提供する開発者向けのARフレームワーク。今のところ(2020/5/18現在)、iOSアプリ開発専用です。iOS11以降のiPhoneやiPadで利用でき、空間認識機能により、水平面だけでなく垂直面を認識、してデジタル情報を付加する事ができます。

・ARCore

Google社が提供する開発者向けのARフレームワーク。Android端末で、モーショントラッキングや水平面、垂直面の検出をしてデジタル情報を付加する事ができます。端末によっては利用できないものもありますが、将来的にはすべてのAndroid端末に対応予定のようです。最新Verでは、iOSにも対応しています。

・ARToolKit

オープンソース。Android、iOS、Windows、Mac、Unityなど数多くのプラットフォームに対応している。ARマーカー、マーカーレスいずれにも対応しており、現在ではブラウザで動作するようにもなっています。

終わりに

以上がAR技術の概要です。実際にARアプリを作成する手順・方法については次の機会に紹介いたします。
ARエンジンだけでなく、位置情報取得や画像認識など別の技術を組み合わせることで、便利なアプリや面白いゲームが世の中に存在しています。
日々の生活を興味と好奇心で観察し、便利だとか面白いとか思うことを組み合わせることで新しいソリューションを作り上げられます。
もし興味を持って頂けたならば、一緒にブレストいかがでしょうか?