マルチオブジェクトトラッキングデータセットの概要

マルチオブジェクトトラッキングは、ビデオ解析において重要なコンポーネントであり、ビデオフレーム全体でオブジェクトを識別し、検出された各オブジェクトの一意なIDを維持します。Ultralytics YOLOは、監視、スポーツ解析、交通監視など、さまざまなドメインに適用できる強力なトラッキング機能を提供します。

データセットフォーマット(近日公開予定)

Ultralyticsのトラッキングは現在、トラッカー固有のトレーニングを必要とせず、検出、セグメンテーション、またはポーズモデルを再利用しています。ネイティブのトラッカー学習サポートは現在積極的に開発中です。

利用可能なトラッカー

Ultralytics YOLOは、以下のトラッキングアルゴリズムをサポートしています。

  • BoT-SORT - このトラッカーを有効にするには botsort.yaml を使用します(デフォルト)
  • ByteTrack - このトラッカーを有効にするには bytetrack.yaml を使用します

使用方法

from ultralytics import YOLO

model = YOLO("yolo26n.pt")
results = model.track(source="https://youtu.be/LNwODJXcvt4", conf=0.1, iou=0.7, show=True)

フレーム間でのトラックの保持

ビデオフレーム全体で連続的なトラッキングを行うには、 persist=True パラメータを使用できます。

import cv2

from ultralytics import YOLO

# Load the YOLO model
model = YOLO("yolo26n.pt")

# Open the video file
cap = cv2.VideoCapture("path/to/video.mp4")

while cap.isOpened():
    success, frame = cap.read()
    if success:
        # Run tracking with persistence between frames
        results = model.track(frame, persist=True)

        # Visualize the results
        annotated_frame = results[0].plot()
        cv2.imshow("Tracking", annotated_frame)

        if cv2.waitKey(1) & 0xFF == ord("q"):
            break
    else:
        break

cap.release()
cv2.destroyAllWindows()

FAQ

Ultralytics YOLOでマルチオブジェクトトラッキングを使用するにはどうすればよいですか?

Ultralytics YOLOでマルチオブジェクトトラッキングを使用するには、提供されているPythonまたはCLIの例から開始できます。開始方法は以下の通りです。

from ultralytics import YOLO

model = YOLO("yolo26n.pt")  # Load the YOLO26 model
results = model.track(source="https://youtu.be/LNwODJXcvt4", conf=0.1, iou=0.7, show=True)

これらのコマンドはYOLO26モデルをロードし、特定の信頼度(conf)とIntersection over Unioniou)の閾値を使用して、指定されたビデオソース内のオブジェクトをトラッキングします。詳細については、trackモードのドキュメントを参照してください。

Ultralyticsでトラッカーをトレーニングするための今後の機能は何ですか?

Ultralyticsは継続的にAIモデルを強化しています。今後の機能として、スタンドアロントラッカーのトレーニングが可能になる予定です。それまでは、Multi-Object Detectorがトレーニング済み検出、セグメンテーション、またはポーズモデルを活用して、スタンドアロンのトレーニングなしでトラッキングを行います。最新情報については、ブログをフォローするか、今後の機能を確認してください。

なぜマルチオブジェクトトラッキングにUltralytics YOLOを使用するべきなのですか?

Ultralytics YOLO is a state-of-the-art object detection model known for its real-time performance and high accuracy. Using YOLO for multi-object tracking provides several advantages:

  • リアルタイムトラッキング: 動的な環境に最適な、効率的で高速なトラッキングを実現します。
  • トレーニング済みモデルの柔軟性: 最初からトレーニングする必要はありません。トレーニング済みの検出、セグメンテーション、またはポーズモデルをそのまま使用できます。
  • 使いやすさ: PythonとCLIの両方でのシンプルなAPI統合により、トラッキングパイプラインのセットアップが容易になります。
  • 充実したドキュメントとコミュニティサポート: Ultralyticsは、問題を解決しトラッキングモデルを強化するための包括的なドキュメントとアクティブなコミュニティフォーラムを提供しています。

YOLOを用いたトラッキングのセットアップと使用に関する詳細については、トラッキング使用ガイドをご覧ください。

Ultralytics YOLOを用いたマルチオブジェクトトラッキングでカスタムデータセットを使用できますか?

はい、Ultralytics YOLOでマルチオブジェクトトラッキングにカスタムデータセットを使用できます。スタンドアロントラッカーのトレーニングサポートは今後の機能ですが、すでにトレーニング済みモデルをカスタムデータセットに対して使用することは可能です。YOLOと互換性のある適切なフォーマットでデータセットを準備し、ドキュメントに従って統合してください。

Ultralytics YOLOトラッキングモデルの結果をどのように解釈すればよいですか?

Ultralytics YOLOでトラッキングジョブを実行した後、結果にはトラッキングされたオブジェクトのID、バウンディングボックス、信頼度スコアなど、さまざまなデータポイントが含まれます。これらの結果を解釈する方法の概要は以下の通りです。

  • トラッキングID: 各オブジェクトには一意なIDが割り当てられ、フレーム全体でトラッキングするのに役立ちます。
  • バウンディングボックス: これらはフレーム内のトラッキング対象オブジェクトの位置を示します。
  • 信頼度スコア: これらは、トラッキング対象オブジェクトを検出した際のモデルの自信度を反映しています。

これらの結果の解釈と可視化に関する詳細なガイダンスについては、結果ハンドリングガイドを参照してください。

トラッカーの設定をカスタマイズするにはどうすればよいですか?

トラッカーの設定ファイルを変更したバージョンを作成することで、トラッカーをカスタマイズできます。ultralytics/cfg/trackersから既存のトラッカー設定ファイルをコピーし、必要に応じてパラメータを変更し、トラッカーを実行する際にこのファイルを指定してください。

from ultralytics import YOLO

model = YOLO("yolo26n.pt")
results = model.track(source="video.mp4", tracker="custom_tracker.yaml")

コメント