Hiromuブログ

最近はこちら(https://zenn.dev/hiromu)が本体

HoloLens 2 で QR コードのトラッキングサンプル実行

QR コードの追跡

上記サイトを参考に HoloLens 2 で QR コードをトラッキングするサンプルを試したのでメモ

実行環境

  • Unity 2018.4.15f1
  • Microsoft Visual Studio Professional 2019 Version 16.4.2
  • Windows 10 SDK 10.0.18362.0
  • HoloLens 2 OSビルド 10.0.18362.1053

実行手順

  • GitHub の以下サンプルをダウンロードする

  • Unity で SampleQRCodes を開く

  • QRCodesSample シーンを開く

  • Universal Windows Platform に Switch Platform

  • Depth Buffer Sharing has 24-bit depth format selected. Consider using 16-bit for performance. の警告がでるので対応

  • Audio Spatializer Plugin not currently set to MS HRTF Spatializer. Switch to MS HRTF Spatializer under Project Settings > Audio > Spatializer Plugin の警告が出るので対応

実機での実行結果


HoloLens 2 QRコードトラッキング

  • キャプチャでは見えませんが、起動後 HoloLens 上ではエラーが表示されています。またそれが原因か起動した場所に座標軸が残ったままになっていますが、QRコードの認識は問題なくできました。

  • 環境認識カメラで QR コードを認識しているためこのように動画のキャプチャが可能です。

参考サイトからいくつか気になったものを引用

  • QR コードの検出には webcam 機能が必要ですが、検出はデバイスの追跡カメラを使用して行われます。 これにより、デバイスの写真/ビデオ (PV) カメラとの検出と比較して、より広範な検出とバッテリ寿命が提供されます。

  • QR コードを正しく読み取るには、コードのすべての辺の周りに余白が必要です。

  • Windows Mixed Reality デバイスは、それぞれ 5 cm 未満の QR コードでは機能しません。5から 10 cm の長さの辺までの QR コードの場合、コードを検出するには非常に近い必要があります。 また、このサイズでコードを検出するのにも時間がかかります。

  • コードを正確に検出するための正確な時間は、QR コードのサイズだけでなく、コードから離れた場所までの距離に依存します。

  • バージョン1の QR コードが 10 ~ 25 cm 幅を超える場合、最小検出距離は0.15 メートルから0.5 メートルの範囲内です。

  • 特定のタイムスタンプよりも古い QR コードを無視するようにアプリを構成することをお勧めします。