モーション イメージ内のオブジェクトのトラッキング

Image Analyst ライセンスで利用できます。

モーション イメージの機能の 1 つに、ビデオ データの再生中に特定のオブジェクトをトラッキングできることがあります。 これらのオブジェクトは静止していることもあれば、動いていることもあり、また、見えなくなった後に再び現れることもあれば、形状が変化することもあります (乗車中の人など)。 FMV (Full Motion Video) のオブジェクト トラッキング機能では、ビデオ画像内のオブジェクトをトラッキングするときのさまざまな状況に対処できるように、自動化されたコンピューター支援ツールが提供されます。 この機能は、ディープ ラーニングおよびコンピューター ビジョン テクノロジを利用して、オブジェクト トラッキング、フィーチャ抽出、およびマッチングを支援します。 ディープ ラーニング オブジェクト トラッキング モデルを構築し、一連のツールを使用して、対象オブジェクトを選択し、トラッキングできます。 オブジェクトの識別用四角形に対応する重心をデジタイズして、プロジェクトのジオデータベースにポイント クラスとして保存できます。 その後、アーカイブ ビデオの再生時に、保存されたポイントを表示できます。

要件

FMV のオブジェクト トラッキング機能は、ArcGIS AllSourceArcGIS Image Analyst エクステンションで利用可能です。

注意:

ビデオ カード ドライバーが最新であることを確認します。

ディープ ラーニング モデル

ビデオ内のオブジェクトをトラッキングするには、トレーニング済みのディープ ラーニング モデルが 1 つ以上必要です。 トラッキングの有効性は、ディープ ラーニング トレーニング サンプル データの品質および対象オブジェクトとトレーニング データがどれだけ密接に関連しているかによって決まります。 たとえば、高速道路に沿って移動中のトラックをトラッキングするには、トラックのトレーニング サンプルが多くの角度からラベル付けされている必要があります。 トレーニング サンプルのソース (注釈付きの画像) はモーション イメージでなければなりません。 ラベル付きのトレーニング サンプルは、オブジェクト (この例ではトラック) をトラッキングするようにディープ ラーニング モデルをトレーニングするために使用されます。 このモデルは、自動車のように外観が異なるオブジェクトをトラッキングする機能が制限されていますが、より大型のレクリエーショナル ビークルやバスをトラッキングするには十分な機能を備えています。

ArcGIS AllSource でディープ ラーニング ワークフローを実行するには、ディープ ラーニング フレームワーク パッケージをインストールする必要があります。 ビデオおよび静止画像トレーニング データの準備、オブジェクトのラベル付け、ディープ ラーニング モデルの作成、推測、および結果の確認のためのさまざまなツールを使用できます。 これらのパッケージのインストール方法については、「ArcGIS 用のディープ ラーニング フレームワークのインストール」をご参照ください。

ディープ ラーニングは計算上の負荷が大きいため、バージョン 6.0 以降の CUDA 計算機能がサポートされている高性能 GPU が推奨されます。

ディープ ラーニングおよびディープ ラーニング ワークフローの詳細については、「ディープ ラーニングの概要」および「ArcGIS Pro のディープ ラーニング」をご参照ください。 ArcGIS の一連のディープ ラーニング ツールに関する詳細については、「ディープ ラーニング ツールセットの概要」をご参照ください。

オブジェクト トラッキング タブ

[オブジェクト トラッキング] タブは、[コンテンツ] ウィンドウでビデオを選択すると有効になります。

FMV のオブジェクト トラッキング リボン

注意:
[オブジェクト トラッキング] タブは、ArcGIS AllSource にディープ ラーニング パッケージがインストールされ、有効化された時点で使用可能になります。

下記のセクションには、[オブジェクト トラッキング] タブのさまざまなグループのツールが示されています。

トラッキング対象オブジェクト グループ

[トラッキング オブジェクト] グループのツールを使用すると、次に示すように、ビデオ データでトラッキング中のオブジェクトを識別して管理できます。

  • [トラッキングの有効化] - 指定したオブジェクト追跡構成を使用してオブジェクト トラッキングをアクティブにします。
  • [オブジェクトの追加] - オブジェクトをクリックするか、オブジェクトの周囲に対話形式で四角形を描画して、オブジェクト トラッキングを実行するためのオブジェクトを追加します。 持続モードを有効化するには、ダブルクリックします。
  • [オブジェクトの移動] - 既存のオブジェクトのトラッキング四角形をクリックして選択し、オブジェクトの更新された位置の周囲に四角形を再度描画します。 持続モードを有効化するには、ダブルクリックします。
  • [オブジェクトの削除] - オブジェクトをクリックするか、オブジェクトを取り囲むボックスを描画して、ビデオ プレイヤーから追跡対象オブジェクトを削除します。 持続モードを有効化するには、ダブルクリックします。
  • [オブジェクトの削除] - オブジェクトをクリックするか、オブジェクトを取り囲むボックスを描画して、ビデオ プレイヤーおよび追跡対象オブジェクト マネージャーから追跡対象オブジェクトを削除します。 持続モードを有効化するには、ダブルクリックします。
  • オブジェクトからフィーチャへの変換 - オブジェクト検出用四角形の重心を新しいフィーチャクラスとして保存します。

保存グループ

[保存] グループの [オブジェクトからフィーチャへの変換] ツールを使用して、追跡対象オブジェクトの重心をジオデータベースに保存します。

管理グループ

[管理] グループのツールは、オブジェクト追跡を管理するのに役立ちます。

  • [追跡の構成] - オブジェクト追跡を構成し、デフォルトのオブジェクト追跡モデルに更新を適用します。
  • [追跡対象オブジェクト] - [追跡対象オブジェクト マネージャー] ウィンドウを表示します。

オブジェクト追跡の構成ウィンドウ

[追跡の構成] ボタンをクリックすると、[オブジェクト追跡の構成] ウィンドウが開きます。 このウィンドウには、[オブジェクト追跡モデル] および [自動検出モデル] の設定が含まれています。

オブジェクト追跡の構成ウィンドウ

設定

[オブジェクト追跡モデル] パラメーターを使用して、ディープ ラーニング モデルを選択し、オブジェクトのトラッキング用の追加パラメーターを設定できます。

参照ボタン パスからのデータ をクリックすると、[パスからディープ ラーニング モデルを追加] ダイアログ ボックスが開きます。 URL を指定するか、ローカル ディレクトリにあるファイルを参照して、ディープ ラーニング モデル パッケージ ファイル (.dlpk) へのパスを指定します。 [モデル] テキスト ボックスでは、モデルの名前にエイリアスを割り当てることができます。 [追加] をクリックすると、モデルが読み込まれ、ダイアログ ボックスが閉じます。 モデル名が、[モデル] ドロップダウン リストに表示され、選択可能になります。

設定には、[最小オブジェクト サイズ (ピクセル)][失われたトラッキングの検出][失われたトラッキングの回復]、および [自動検出モデル] という、オブジェクト トラッキングを制御するためのオプションが含まれています。

  • [失われたトラッキングの検出] - オブジェクトが、視野角の変化、不明瞭化、フレームの外への移動などの外観の変化に基づいて、正常にトラッキングされるかどうかを指定します。 デフォルト設定はオンです。
    • [間隔 (フレーム)] - アプリケーションが、オブジェクトの外観の変化をチェックする間隔 (フレーム数) を設定します。 デフォルトは 5 です。
  • [失われたトラッキングの回復] - トラッキングが失われた後にオブジェクトの検索が試行されるかどうかを指定します。 デフォルト設定はオンです。
    • [信頼度の閾値 (0-1)] - 回復を成功させるために必要な、マッチング対象ソース イメージ フィーチャと検索対象オブジェクト フィーチャの間の最小比率を設定します。 信頼度の閾値は 0 ~ 1 の数値です。 デフォルト値は 0.1 です。
    • [オーバーラップ閾値 (0-1)] - 回復を成功させるために必要な、検出対象オブジェクトと検索対象オブジェクトの間の最小オーバーラップ率を設定します。 閾値は 0 ~ 1 の数値です。 デフォルト値は 0.1 です。
    • [最大検索間隔 (フレーム数)] - オブジェクトが失われた場合、ビデオ フレーム単位で定義された最大検索間隔を設定します。 デフォルト値は 60 です。
    • ステータス キューのサイズ - 検索間隔が終了する前にオブジェクトが失われた場合に、オブジェクトの状態を維持するフレーム数。
  • [自動検出モデル] - ディープ ラーニング ベースの検出モデルを使用して、ターゲット オブジェクトの検出と識別を自動的に行うかどうかを指定します。 デフォルトはオフです。 参照ボタン パスからのデータ を使用してローカル ディレクトリにあるファイルを参照して .dlpk ファイルを選択するか、URL を指定して、ディープ ラーニング モデル パッケージ ファイルへのパスを指定します。
    • [間隔 (フレーム)] - オブジェクトの外観の変化がチェックされる間隔 (フレーム数) を設定します。 デフォルト設定は 5 フレームです。
    • [信頼度の閾値 (0-1)] - 回復を成功させるために必要な、マッチング対象ソース イメージ フィーチャと検索対象オブジェクト フィーチャの間の最小比率を設定します。 信頼度の閾値は 0 ~ 1 の数値です。 デフォルト値は 0.1 です。

追跡対象オブジェクト マネージャー ウィンドウ

[トラッキング対象オブジェクト] タブでは、トラッキング対象オブジェクトを表示して管理できます。 トラッキング対象オブジェクトごとに、下で説明される [ステータス][ID]、および [ソース] の値がテーブルにリスト表示されます。

  • ステータス - 各トラッキング対象オブジェクトのステータス (アクティブなトラッキング対象、喪失、検索中)。
  • ID - 各トラッキング対象オブジェクトの一意識別子。
  • ソース - 識別されるオブジェクトが含まれるソース ビデオ ファイル。

[追跡対象オブジェクト マネージャー] ウィンドウでは、[トラッキングの有効化] がアクティブである場合に、[追跡対象オブジェクト] リボンを操作します。

  • [トラッキングの有効化] - 指定したオブジェクト追跡構成を使用してオブジェクト トラッキングをアクティブにします。
  • [オブジェクトの追加] - オブジェクトをクリックするか、オブジェクトの周囲に対話形式で四角形を描画して、オブジェクト トラッキングを実行するためのオブジェクトを追加します。 持続モードを有効化するには、ダブルクリックします。
  • [オブジェクトの移動] - トラッキング四角形をクリックして選択し、オブジェクトの更新された位置の周囲に四角形を再度描画することによって、既存のオブジェクトを移動します。 持続モードを有効化するには、ダブルクリックします。
  • [オブジェクトの削除] - オブジェクトをクリックするか、オブジェクトを取り囲むボックスを描画して、ビデオ プレイヤーから追跡対象オブジェクトを削除します。 持続モードを有効化するには、ダブルクリックします。
  • [オブジェクトの削除] - オブジェクトをクリックするか、オブジェクトを取り囲むボックスを描画して、ビデオ プレイヤーおよび [追跡対象オブジェクト マネージャー] ウィンドウから追跡対象オブジェクトを削除します。 持続モードを有効化するには、ダブルクリックします。

オブジェクトのトラッキング

オブジェクトをトラッキングするには、次の手順を実行します。

  1. [オブジェクト トラッキングの表示] ウィンドウの [追跡の構成] ウィンドウでディープ ラーニング モデルを読み込んで、トラッキング パラメーターを設定します。
  2. [トラッキングの有効化] をクリックして、オブジェクト トラッキング ツールをアクティブ化します。
  3. [オブジェクトの追加] をクリックして、ビデオ プレイヤーでトラッキングするオブジェクトの周囲に四角形を描画するか、オブジェクトをクリックします。

    自動検出機能モードを使用する場合、このステップは必要ありません。

    オブジェクトがビデオ フレームごとにトラッキングされます。

  4. [追跡対象オブジェクト マネージャー] ウィンドウで、追跡対象オブジェクトのステータスを表示します。
  5. オブジェクトが見えなくなって、トラッキングが失われた場合は、[オブジェクトの移動] をクリックし、オブジェクトの更新された位置の周囲に四角形を再度描画して再度トラッキングに参加します。

    自動検出機能モードを使用する場合、このステップは必要ありません。

  6. 必要に応じて、[追加] をクリックし、トラッキング対象のオブジェクトを追加します。

    自動検出機能モードを使用する場合、このステップは必要ありません。

  7. 必要に応じて、[削除] をクリックし、アクティブなトラッキングからオブジェクトを除外します。

    自動検出機能モードを使用する場合、このステップは必要ありません。

  8. [保存] グループの [トラッキング] タブで、[オブジェクトからフィーチャへの変換] をクリックし、オブジェクトの重心をフィーチャクラスに格納するために使用する出力場所と接頭辞名を指定します。

    必要に応じて、フィーチャクラスをマップ上に追加するかどうかや、重心が保存される秒単位での頻度 (間隔) を指定します。