Skip to content
Tutorials1 min read

マルチオブジェクトトラッキングアノテーション

マルチオブジェクトトラッキングアノテーションの概念と、Potatoのビデオアノテーション機能が基本的なトラッキングワークフローをサポートする方法の概要。

Potato Team·

マルチオブジェクトトラッキングアノテーション

マルチオブジェクトトラッキング(MOT)アノテーションは、監視、自動運転、スポーツ分析のための学習データを作成します。本チュートリアルでは、MOTアノテーションの概念と、Potatoの現在のビデオアノテーション機能が基本的なトラッキングワークフローをどのようにサポートできるかを説明します。

MOTアノテーションの課題

  • フレーム間で一貫したオブジェクトIDを維持すること
  • オクルージョンと再出現の処理
  • 混雑したシーンでのトラッキング
  • IDスイッチとマージの管理

現在のビデオアノテーションサポート

Potatoは現在、video_annotationタイプを通じて基本的なビデオアノテーションをサポートしています。自動ID管理、補間、オクルージョン処理などの本格的なMOT固有の機能はまだ実装されていませんが、基本的なビデオラベリングワークフローを設定できます。

基本的なビデオアノテーションの設定

yaml
annotation_task_name: "Video Object Labeling"
 
data_files:
  - data/videos.json
 
annotation_schemes:
  - annotation_type: video_annotation
    name: objects
    description: "Label objects in video frames"
    video_path: video
    labels:
      - name: person
      - name: vehicle
      - name: cyclist

サンプルデータフォーマット

data/videos.jsonファイルにはビデオパスを含むエントリが必要です:

json
[
  {
    "id": "video_001",
    "video": "/path/to/video.mp4"
  },
  {
    "id": "video_002",
    "video": "/path/to/another_video.mp4"
  }
]

手動トラッキングワークフロー

専用のMOT機能がなくても、手動でトラッキングアノテーションを実行できます:

手動でトラックを作成する

  1. オブジェクトが最初に出現するフレームに移動する
  2. ビデオアノテーションインターフェースを使用してオブジェクトにラベルを付ける
  3. アノテーションに一貫した識別子を含める(例:「person_1」)
  4. 後続のフレームに移動し、同じ識別子でラベリングを続ける

オクルージョンの処理

オブジェクトが隠れた場合:

  1. オブジェクトが最後に見えたフレームを記録する
  2. オブジェクトが再出現したら、トラックの連続性を維持するために同じ識別子を使用する
  3. アノテーションノートにオクルージョン期間を記録する

提案されているMOT機能

以下の機能はPotatoのMOTアノテーション機能を強化するもので、将来の開発で検討されています:

  • 自動ID割り当て: 新しいオブジェクトのIDを自動インクリメント
  • トラック補間: キーフレーム間の線形または3次補間
  • オクルージョン処理: 可視性レベル(visible、partial、heavy、not_visible)
  • 軌跡の可視化: フレーム間のオブジェクトパスの表示
  • トラック管理パネル: トラックIDのマージ、分割、管理
  • フレームごとの属性: フレームごとに変化するプロパティ

これらの機能に興味がある場合は、Potato開発チームに連絡するか、プロジェクトに貢献してください。

手動MOTアノテーションのコツ

  1. 短いセグメントで作業する: 一度に100〜200フレーム
  2. 一貫した命名: 明確なIDスキームを使用する(例:「person_001」、「vehicle_023」)
  3. プロセスを記録する: オクルージョンやトラックの決定に関するメモを残す
  4. レビューパス: 順方向、次に逆方向で再生してエラーを見つける
  5. 外部ツールを使用する: 検出モデルによる前処理を検討する

代替アプローチ

完全なMOTアノテーション機能が必要なプロジェクトの場合:

  1. ハイブリッドワークフロー: 初期ラベリングにPotatoを使用し、トラック管理には専用のMOTツールを使用する
  2. 事前アノテーション: オブジェクト検出器を実行して初期バウンディングボックスを生成し、Potatoで精緻化する
  3. 後処理: Potatoのアノテーションをエクスポートし、外部でトラッキングアルゴリズムを適用する

次のステップ


現在のビデオアノテーションドキュメントについては、/docs/features/image-annotationをご覧ください。