Qualcommが開発し、無料で提供されている「QCAR」というARライブラリが有ります。
こちらUnityにも対応してしていて中々良いライブラリなのですが対応しているのがAndroidだでした。
このライブラリがiOSの対応を果たしました。UnityでiOS向けにビルドする事も可能です。
という事で早速、Unity版をDLして軽く試してみました。以下のサイトで無料の会員登録を行うと誰でもダウンロード出来ます。
AR SDK | Qualcomm Augmented Reality
https://ar.qualcomm.at/qdevnet/
DLしたファイルには以下のサンプルが有りました。
ファイル名 | 内容 |
---|---|
QCAR-iOS-1.0.0beta1.unitypackage | QCARの基本データ |
QCAR-ImageTargets-iOS-1.0.0beta1.unitypackage | 画像のターゲットを使用したサンプル |
QCAR-FrameMarkers-iOS-1.0.0beta1.unitypackage | フレームマーカーを使用したサンプル |
QCAR-MultiTargets-iOS-1.0.0beta1.unitypackage | マルチターゲットの(複数のマーカーを使用した)サンプル |
QCAR-VirtualButtons-iOS-1.0.0beta1.unitypackage | バーチャルボタンを使用したサンプル |
オリジナルのマーカーを使いたい場合はページ上部の「MY TRACKABLES」をクリックするとマーカーの作成ページに移動出来ます。
色々な画像でテストしてみましたが中々良い画像を準備するのは大変そうでした。
まずは風景の画像でテストしてみました。結果の画像はこちら。
マークが付いている部分がおそらく抽出された特徴点。かなりごちゃごちゃした画像なのにも関わらず、あまり特徴点が見つけられていません。
画像の解析後の画面では右側に☆でマーカーとして適切な画像かどうかの判定が行われます。スコアが良くないと最終的なマーカー情報を持ったファイルを出力する段階まで進めません。
アップロードした画像はフルカラーなのに最終的な判定画像はモノクロという事はモノクロ化した後に特徴点を抽出してるのでは?と当たりを付けて白地に黒で手描き画像を作ってテストしてみました。
予想外に特徴点の数が少ない!! もっと複雑な必要が有るかも?とこんなのでチャレンジ。
白と黒でくっきりとした境界だとイマイチな様なのでもっと柔らかいブラシを使ったり、灰色なども使って試した結果がこちら。
左下がかなり柔らかいブラシで描き、右上は固めのブラシで描きました。右上側の方が結果が良いですね。色はRGBで(127, 127, 127)で描画したものが結果が良いみたいです。
今までの結果を元に作成したのがこちら。
良い感じに沢山の特徴点が抽出されていますね。☆4つ貰って基準をクリアできました。
マーカーに使うに良い画像
結果をまとめると
- ある程度境界のハッキリした色で描画
- ハッキリし過ぎるとダメ
- 色の差をハッキリさせ過ぎない
- ブラシのぼかし具合0ではダメ
- かといってぼかし過ぎもダメ
以上の点を気を付けてごちゃごちゃした画像を描けばOKみたいです。
正式な良い画像と悪い画像についてはスコアが悪い時に表示されるexamplesのリンクをクリックして確認して下さい。
写真を使う場合にもこの特徴が出るように加工すれば認識率が上がるかもしれません。実際、試している訳では無いですが(汗)
画像処理に詳しい人だと直ぐに最適な画像が分かるのでしょうがあまり詳しく無いので中々苦戦させられましたw
使ってみた感想
サンプルを動かしてみたところ認識率や追従性については問題なし。しかし、マーカーから外れた後に3Dモデルが消えるまでちょっと時間がかかったのが気になりました。
でもこれだけの機能が有るARライブラリが無料で提供されているとは素晴らしいと思います。
バーチャルボタンも使えるのでAR上の3DCGのボタンを押してそれをトリガーに動作させる様な作品も簡単に作成可能というのもこのQCARならでは特徴だと思います。