Help us understand the problem. What is going on with this article?

HoloLens上でVuforia 入門編

More than 1 year has passed since last update.

HoloLensタグの記事が100件を超えたようで。この時期にHoloLensを使った開発に関われていることはラッキーですね。

Vuforiaに関する記事、特に導入編は溢れており、私がまとめる必要もないのですがHoloLens開発にあたり欠かせないツールの一つであることは間違いないのでここで軽くまとめておきます。

ゴールまで

Unity上でテスト -> HoloLens上で実用

Version

  • Unity 5.6.1f1 Personal
  • vuforia-unity-6-2-10.unitypackage

Vuforia Developer Portal

Vuforia Developer Portal

Vuforiaができること

  • 多様なマーカの認識 (記事内でTargetをほぼ同じ意味合いで使ってます)
    • 2Dイメージ
    • 3Dボックス
    • 3Dシリンダー
    • 3Dオブジェクト
  • クラウドから認識(有料版)
  • 画像の認識可能性をレーティング(星5つまで)
  • 導入がめちゃくちゃ楽(とくに内蔵カメラとの連携が超楽)
  • 無料でも十分その機能を楽しむことができる

まず

アカウント登録してください。

準備

ポータルサイト側

  1. Downloads -> SDK -> Download for Unity でパッケージ取得
  2. Develop -> License Manager ->Add License Keyでライセンスキー取得
  3. ライセンスキーの名前をクリックし、License Keyをコピー
  4. Develop -> Target Manager -> Add Database でDatabaseを作成。今後その中に認識用マーカーを保存していく。
    Capture.png

  5. Develop -> TargetManager -> [Database名] ->AddTargetでマーカーの登録

  6. 今回はSingleImageを選択。Widthは適当に100(あとでUnity上のインスペクターで調節可)、Heightは勝手に計算してくれるそうです。
    Cap3.png

  7. Target一覧に追加したTargetが表示される。Ratingは画像認識のしやすさを表す。

Cap4.png

  1. Doznload Database(All)クリックでUnityPackageファイルをダウンロード

Cap5.png

Unity側

まず、ここまでダウンロードした2つのPackageをインポート。(DatabaseのアセットはStreamingAssetsに入っており、このフォルダの価値を再認識。(再掲) HoloLens上でスクリプトを用いて外部ファイルの読み込みをしたい

MainCameraの代わりにARCameraプレハブを、認識したい2Dターゲットの数に合わせてImageTargetプレハブをシーンに追加(ScreenShot内ではKing二回目済)。
ImageTarget認識時に表示したいオブジェクトをImageTargetの子オブジェクトとして追加。

CapUni1.png

ARCamera

  • ARCameraのインスペクターからOpen Vuforia configurationをクリック。Vuforia -> Add License Key欄に記事最初部分でコピーしておいたライセンスキーをコピペ。
  • DatabaseをインポートするとDataSets欄にLoad [Database名] Databaseがあるのでチェック→Activateもチェック (※この欄はデータベースを追加するごとにチェックする必要があるので、後からデータベースを加える場合は忘れないように注意。)

ImageTarget

ImageTargetのインスペクター上のImage Target BehaviourDatabaseImageTargetをそれぞれ指定。

内蔵カメラ

とくに何もする必要なし!

ターゲットの用意

もちろんプリントしてもいいし、パソコン画面やiPhone画面からの画像でも認識可。

実行!(Unity Editor上)

こんな感じです

Ye.png

なおiPhoneがバッキバキになっているのはこの記事とは何の関係もありません。(これくらいのひび割れなら認識に問題はなさそうです。)

画像の角度が際どく認識が難しい場合、画像認識後であればある程度までは追跡して子オブジェクトを追跡してくれる。

認識前 認識後
before.png after.png

以上

HoloLensへの導入も簡単そう、あとはどう使うかですね

ところが… [追記]

HoloLensで動作させて見るとビームが前進しておらず、自分に逆流している。
BUt.png

Vuforiaバージョン6.1からHoloLensに対応しました。HoloLens上でしっかりと動かすためには設定をかえなければ行けないようです。

Vuforia Configuration

ARCameraの子オブジェクトカメラは以下の設定により非アクティブ化されるのでHoloToolKitHoloLensCameraMainCameraとして追加することをおすすめします。また、CameraNear設定は手元の物を認識させたいため0.01にしました。

  • DigitalEyewear -> Eyewear TypeOptical See-Through
  • DigitalEyewear -> See Through ConfigHoloLens

ARCameraインスペスクタのVuforia BehaviourCentral Anchor PointHoloLensCameraを設定

Afterbut.png

無事、ビームが口からでました。

HoloLens開発記事一覧

こちらから

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした