ポケモンGOなどで使われているAR技術について学んでみよう!(第2回準備編)

VR/AR

ポケモンGOなどで使われているAR技術について学んでみよう!(第2回準備編)

みなさん、こんにちは。
中村忍です。

前回の記事「ポケモンGOなどで使われているAR技術について学んでみよう!(第1回導入編)」では、今話題のARの特性について、ポケモンGOなどの事例を元に紹介しましたが、いかがだったでしょうか?
ARには「ロケーションベース型」、「マーカー型」、「マーカーレス型」の3種類があり、ポケモンGOはロケーションベース型とマーカーレス型の2種類を組み合わせているとお話しました。
今回は、実際にARを開発するに当たり、世の中に存在している開発環境について紹介しながら、どれを使ってARを実現したらよいかについてお話していきたいと思います。


どこに着目して開発環境を選べばよいか?

筆者はソフトウェアの開発に10年以上携わっていますが、開発経験から「どのようなアプリを作るか」、「ARのタイプ」、「制作方法」、「品質」の4点について、期日と勝負しながら選びます。

  • どのようなアプリを作るか?
  • ARは広告(チラシ)などのような簡単なものから、ポケモンGOのような凝ったアプリまで様々な用途に使われます。自分、またはお客様が実現したい要求に基づいて、アプリの規模を事前に把握しておくことが重要になります。

  • タイプ
  • ロケーションベース型、マーカー型、マーカーレス型のどれを使うか、または組み合わせるかを選びます。
    ロケーションベース型は、GPSなどで位置情報を取得する機能が必要になります。また、位置認識の誤差に対する対処方法も考える必要があります。
    マーカー型は、マーカーをスマートフォンなどで撮影するだけのシンプルなものであり、多くのARアプリで使われています。マーカーは実際に現実世界またはWeb上に存在している必要があるため見栄えなどの問題があり、管理をどのようにするのかを考える必要があります。
    マーカーレス型は、スマートフォンなどに写っている映像から物体を検出する機能が必要になります。画像認識ライブラリなどのサポートが必要になってきます。

  • 制作方法
  • もっとも簡単にARを実現できる手段は、マーカー型でしょう。例えば「PicSTAR」アプリは無料で利用でき、アプリをインストールしQRコードを撮って対象物にかざすだけで誰でも容易にARが実現できます。そのため、特に開発環境は揃える必要がないメリットがあります。
    マーカーレス型を利用する場合は、「ARToolkit(ARツールキット)」や「Vuforia(ビューフォリア)」がおすすめでしょう。これらはUnityとも連携していて開発も無料で行えます。ただし、ソフトウェア開発の知識や英語力が必要になってきます(ドキュメントが一部のみ和訳されていますが、基本的に英語のため)。

    ロケーションベース型を利用する場合は、位置検出機能をどうやって実現するかがカギとなります。位置検出は、「iOS SDK」や「Android SDK」といった各スマートフォンの開発支援機能を使う方法があります。また、「Wikitude SDK」という開発環境を使う方法もあります(※トライアル版としての開発は無料ですが、開発したアプリを配布する場合はライセンスの購入が必要です)。

  • 品質
  • 「PicSTAR」アプリなどのように、簡単なARを実現できるものから、ARToolkitのように凝ったアプリを作成できるものまで様々あります。
    自分だけのARを高品質に開発したい場合は、ARToolkitなどを使うことが選択肢に挙げられますが、ソフトウェア開発の知識やドキュメントを読める英語力が必要になってきます。また、凝れば凝るほど開発に時間を要します。
    自社にARを開発できる人員がいない、開発に時間がないという場合は、ARコンテンツサービスを使うのも手段の一つです。例えば「COCOAR(ココアル)」はARコンテンツ制作サービスで、マーカー型のARコンテンツの作成が行えます。画像だけでなく動画や音声も組み込める点が特徴です。

利用している企業も多く、お茶で有名な株式会社伊藤園の「お~い お茶」 世界遺産キャンペーンでも採用されていたりします。また、自社でARエンジンを開発していた会社の中に、制作費用の回収で苦労していたためにCOCOARに移行したという例もあります。

代表的なAR開発環境

ARの開発環境を選択する上での着目点について簡単にお話してきましたが、それらを踏まえて開発環境をいくつか紹介していきます。どのようなARアプリを作るかはそれそれだと思いますので、「ARのタイプ」、「制作難易度」、「品質」の3点と、「利用金額」を合わせた観点からピックアップしてしてきます。

(1)PicSTAR (ピックスター)

ARのタイプ:マーカー型
制作難易度:易
品質:簡易的
利用金額:無料
特徴:
・マーカーは千円札で代用可能
・特別な開発環境は必要なし
・利用方法は、①好きな写真を撮る→②PicSTARとFacebookで写真をQRコード化し、ARコンテンツ化する→③QRコードをPicSTARで読み取る→④マーカーにPicSTARをかざし、カメラとARコンテンツ化した写真を合成し利用する(画像として保存するなど)


出展:PicSTAR (http://picstar.jp/)

(2)ARToolkit(ARツールキット)

ARのタイプ:マーカー型&マーカーレス型
制作難易度:高
品質:凝ったものができる
利用金額:無料
特徴:
・奈良先端科学技術大学院大学加藤博一教授によって開発され、ワシントン大学のHuman Interface Technology Laboratoryによってサポートされた開発環境
・2015年4月よりオープンソース化され、iOS版、Android版共に無償で利用可能。
・開発OSは、Windows、MacOS、Linux。Unityとも連携している。
・ARToolkitダウンロード(本家サイト、要英語力): https://artoolkit.org/
・マーカー認識数:マーカー型の場合は25個、マーカーレス型の場合は標準で10個まで認識可能。

(3)Vuforia(ビューフォリア)

ARのタイプ:マーカー型&マーカーレス型
制作難易度:高
品質:凝ったものができる
利用金額:無料/有料
特徴:
・Qualcomm(クアルコム)社が開発したAR用のライブラリ。Vuforia自体は、米PTC社が2015年に買収。
・Unity版での開発は無料。C++、Javaでの開発は有料。
・Windows、Android、iOS、surfaceなどで動作可能。
・ロケーションベース型はサポートしていない。
・開発者向けポータルサイト(要英語力):https://developer.vuforia.com/
・日本語化サイト:http://www.cnsrd.jp/vuforia-library/toppage/index.html

(4)COCOAR(ココアル)

ARのタイプ:マーカー型
制作難易度:相談による
品質:相談による
利用金額:有料(2週間の無料体験版あり)
特徴:
・ARコンテンツ作成サービス。
・画像だけでなく、動画、音声、テキスト、Webサイトなど多数のオブジェクトをコンテンツとして利用可能。
・容量内無制限でコンテンツが作成できる(3GB~)。
・COCOAR2では、GPS機能やトラッキング機能もあり、ロケーションベース型やマーカーレス型としても利用可能。
・サポート体制が充実
・導入事例が多く、信頼度が高い。導入事例:https://www.coco-ar.jp/case/
・COCOAR2ではスタンプラリー機能もあり、例えば、「ドラゴンボールラン」イベントでCOCOAR2を使ったARが活用された。これは、7つのマーカーにかざすとドラゴンボールが貯まり、コンプリートすると景品として限定グッズ(ピンバッチ)がもらえるというもの。
ドラゴンボールラン:https://www.coco-ar.jp/activation/event/pictureframe.html

(5)Wikitude(ウイキチュード)

ARのタイプ:ロケーションベース型、マーカー型、マーカーレス型
制作難易度:低~高
品質:凝ったものができる
利用金額:有料
特徴:
・AR開発用SDK。
・ロケーションベース型、マーカー型、マーカーレス型のARアプリを簡単に開発できる。
・iOS、Android、Unity、Cordova、Xamarin、Titaniumでの開発が可能。
・3Dモデルの配置が可能。
・開発は無料。ただしアプリライセンス形態をとっているため、開発したアプリの配布や実行が有料(26万~)。
開発したアプリを動作させるためには、そのアプリをトライアル版アプリとしてアクティベーションする必要がある。
・マーカーレス型の特徴として、SLAMに基づき、カメラが捉えた映像をリアルタイムにトラッキングして3Dの空間マップを作成するため、3Dモデルを違和感なく配置可能。
・ロケーションベース型ARもサポートしていて、ポケモンGOのようなアプリの開発も可能。
・開発イントロダクション:https://wikitude.grapecity.com/products/wikitudesdk#marker_ress


いかがでしたでしょうか?
このように、作成したいアプリの性質によってさまざまな開発環境が用意されています。
ポケモンGOのように本格的なARを作成するには、開発期間や費用などの面も考慮する必要があります。
次回はいよいよポケモンGOのようなアプリを開発し、開発過程について話していきます。
開発は全てのタイプを無料でできるWikitudeを使っていきます。

参考