🔥

【HoloLens2】UE4.26でImageTracking(QRCode)やってみた

2021/01/07に公開

はじめに

UE4とHoloLens2でImageTrackingを行いWorld Anchorを置きたいときには、QRCode Trackingを利用するしかないようです。もし、任意の画像トラッキングを行いたい場合はサードパーティ製のライブラリの使用が必要です。ということで、まずはQRCode Trackingを学んでいきましょう。

完成イメージ

QRCode

参考記事

https://docs.microsoft.com/ja-jp/windows/mixed-reality/develop/unreal/unreal-qr-codes?tabs=426

開発環境

  • Windows10 Pro
  • Unreal Engine4.26 (以下Unreal)
  • Visual Studio2019
  • HoloLens2

前準備

この記事はこちらの記事の続きとなります。
https://zenn.dev/iwaken71/articles/6792badbdec8d6

こちらの記事の

  • Unrealプロジェクトを作成
  • 必要なプラグインの有効化
  • 新しいレベルの作成
  • 豆腐(Cube)をレベルに配置
  • Mixed Reality用の設定
  • Package化の設定

をすでに行った状態になっております。

手順

  • QR検出の有効化
  • TrackingするQRコードの設定
  • TrackingしているQRCodeを活用する
  • 完成!Packageして確認

QR検出の有効化

  • [Edit]>[Project Settings]>[Platforms]>[HoloLens]>[Capabilities]>[Webcam]にチェックを入れる。
  • ARSessionConfigに関してStart AR Sessionを行う

UE4.26を使う際は、Start AR Sessionの後にQRCode検出の初期化処理を行う必要があるそうです。
レベルブループリントに関して次の処理を追加します。

image

TrackingするQRコードの設定

  • BluePrintを新しく生成する
    • [Actor]を選択
    • "BP_QRCodeTrackingManager"という名前を付ける
  • [ARTrackableNotify]コンポーネントを追加する
  • [ARTrackableNotify]を選択し、[Details]パネルの[Event]セクションを展開する
  • [On Update Tracked Geometry]を選択

BluePrintを新しく生成する

image

[ARTrackableNotify]コンポーネントを追加する/[On Update Tracked Geometry]を選択

image

TrackingしているQRCodeを活用する

image
(引用: https://docs.microsoft.com/ja-jp/windows/mixed-reality/develop/unreal/unreal-qr-codes?tabs=426)

こちらを活用して、CubeをQRCodeに重ねる実装をします。

BP_QRCodeTrackingManagerを編集

  • Variablesの設定
    • Variablesを"Cube"という名前で追加
    • [Variable Type]を[Actor]に選択
    • [Instance Editable]にチェックを入れる
  • 既存のGraphに図のようにつなげる

Variablesの設定

image

既存のGraphに図のようにつなげる

image
image

完成!Packageして確認

QRCode

Iwaken Lab.

Discussion