Table of Contents

平面画像トラッキングの概要

平面画像トラッキング(Planar Image Tracking)は、日常生活にあるテクスチャ付きの平面物体を検出して追跡するために使用します。ここでいう「平面」の物体とは、本、名刺、ポスターのような小さな物体から、落書きの壁のような大きなターゲットまでを指します。このような物品や対象は、平坦な表面と、豊富で繰り返しのないテクスチャを持っています。

本記事では、平面画像の検出とトラッキングの基本原理、期待される効果、プラットフォーム対応方法を概説し、機能の境界と開発上の要点をすばやく理解できるようにします。

基本原理

これらの原理を理解すると、開発者は認識効果を最適化し、よくある問題を回避しやすくなります。

主要な流れ

  1. 読み込みと前処理段階

    • システムはターゲット画像を読み込み、そこから多数の視覚特徴点を抽出し、その画像の特徴記述を生成して特徴ライブラリに挿入します。
    • テクスチャが豊富な画像ほど認識とトラッキングが容易です。ターゲット画像検出ツールを使用して、ターゲット画像の認識しやすさを事前に確認できます。

    参考画像左:テクスチャが豊富で認識しやすい(5 星);参考画像右:要素が単純でテクスチャが少なく、認識しにくい(1 星)。
    ターゲット画像には、4~5 星の品質に達する画像を使用することを推奨します。

  2. リアルタイム検出とトラッキング段階

    • カメラが画面をキャプチャした後、システムは現在の画面の特徴点を分析し、ターゲット画像の特徴ライブラリと特徴マッチングを行います。
    • PnP(Perspective-n-Point)アルゴリズムにより、3D 空間内の画像の姿勢(位置+回転)を計算します。
    • ターゲットの検出に成功すると、システムはトラッキングモードに入ります。このときシステムは連続フレームの画像を比較し、フレーム間の動きを分析することで、リアルタイムのトラッキング処理を実現します。
  3. 最適化メカニズム

    • トラッキングロストからの復帰:一時的な遮蔽や高速移動によるぼけの後、システムはターゲットを自動的に再検出します。
    • 複数ターゲットの同時トラッキングSimultaneous Number パラメータで単一 Tracker の同時実行数を制御し、1 つの Tracker 呼び出しで複数のターゲットを同時に追跡できます。

技術的制限

  • 平面画像のみをサポートします(3D 物体や動的コンテンツは対象外)。
  • 環境光に依存するため、暗すぎる環境や露出過多の環境では検出が難しくなったり、トラッキングが失われやすくなったりします。
  • 検出時、カメラはターゲットから離れすぎないようにし、画面内でターゲット画像が少なくとも 30% を占めるようにしてください。
  • 複数ターゲットのトラッキングはデバイス性能の制約を受けます。通常、PC では 10 個以上のターゲットを同時に追跡でき、モバイル端末では 4~6 個の平面ターゲットを同時に追跡できます。

効果と期待される結果

画像検出とトラッキングの動作メカニズムおよび技術的制限を理解したら、この機能で達成できる効果も把握しておく必要があります。これらの効果を明確にすることで、開発中に妥当なテスト基準を設定しやすくなります。

理想的な効果

  • 正確な重ね合わせ:仮想オブジェクトが画像の端に揃います。
  • 高速な検出:アプリの読み込みから検出成功までの遅延が非常に低くなります。
  • 安定したトラッキング:画像が回転、移動、部分的に遮蔽された場合でもトラッキングを維持できます。

望ましくない状況と対処

現象 原因 ユーザーの見え方 解決策の概要(詳細は後続セクション)
認識できない 画像のテクスチャ不足、または小さすぎる 仮想オブジェクトが表示されない ターゲット画像を最適化し、ツールで認識しやすさを検出する
トラッキングの揺れ ターゲットが画面内で占める割合が小さすぎ、追跡可能な点が不足している 仮想オブジェクトの揺れが目立つ ターゲット画像から離れすぎないようにし、トラッキングモードを PreferQuality に設定する
頻繁なロスト 画像の高速移動または完全な遮蔽 仮想オブジェクトがちらつく/消える モバイル端末/ターゲット画像を安定して動かす、またはターゲットサイズを大きくする
複数画像ターゲットの欠落 ハードウェア性能の影響 一部のターゲット画像を追跡できない 実行性能とのバランスを取り、適切な Simultaneous Number パラメータを設定する

期待結果の検証方法

  • 開発段階:PC カメラを使用し、Unity エディターの Play モードでプレビューします。
  • テスト段階:公式 Sample シーンまたは自作のテスト画像を使用し、さまざまな照明/角度/距離条件をカバーします。

ターゲット画像のベストプラクティス

平面画像トラッキングの効果は、ターゲット画像の品質に大きく依存します。認識成功率を確保するため、ターゲット画像を準備する際は以下の指針に従うことを推奨します。

使用シーンに応じて、ターゲット画像は複数の方法で準備できます。対象物をカメラで正面から直接撮影する方法や、先に図案をデザインして印刷する方法があります。写真でもデザイン原稿でも、テンプレート画像として使用できます。

基本要件

  • 画像形式:JPG または PNG を推奨します。
  • 透明チャンネルの処理:画像に透明チャンネルがある場合、システムは白い背景として処理します。意図した効果でない場合は、透明チャンネルの使用を避けてください。

主要な最適化ポイント

  1. 豊富なテクスチャ詳細を確保する
    テンプレート画像には十分な詳細とエッジの変化が必要です。単色や単純な図形は避けてください。

    参考画像左:テクスチャが豊富な画像は検出可能;参考画像右:単色画像は検出できない

  2. 反復パターンを避ける
    規則的に繰り返すパターン(チェッカーボード、縞模様など)は、特徴点の一意性を低下させます。

    参考画像:反復パターンの画像は追跡できない

  3. 内容で画面を満たす
    主体はできるだけ画面全体を占めるようにし、余白を減らしてください。

    参考画像:左側の主体が画面いっぱいの画像は、右側の余白が多すぎる画像より検出とトラッキングが容易

  4. 縦横比を制御する
    画像が細長すぎないようにし、短辺の長さは少なくとも長辺の 20% にしてください。

    参考画像:細長い画像はトラッキングが困難

  5. 適切な解像度を選択する
    推奨範囲:SQCIF(128×96) から QVGA(1280×960) の間。
    小さすぎる場合:特徴点が不足し、認識率が低下します。
    大きすぎる場合:Target データ生成時に不要なメモリ使用量の増加と計算時間の増加を招きます。