マルチオブジェクトトラッキング(MOT)の探求:YOLO11、カルマンフィルター、アピアランスマッチング、最新のデータアソシエーションを使って、ビデオフレーム全体でオブジェクトをtrack し、再識別します。
マルチオブジェクトトラッキング(MOT)は、コンピュータビジョンにおける極めて重要なタスクである。 コンピュータビジョンにおける極めて重要なタスクである。 ビデオストリーム内の複数の別個のエンティティを検出し、連続するフレーム間でそれらのユニークなアイデンティティを維持する。一方 標準的な物体検出は、単一の静止画像に存在するものを識別する。 標準的な物体検出は、1つの静止画像に存在するものを特定する。 という疑問に答えます。検出された各インスタンスに永続的な識別番号(ID)を割り当てることで、MOTは以下のことを可能にする。 システムは軌跡を分析し、相互作用を理解し、ユニークなアイテムを数えることができる。 現代の映像理解アプリケーションの基本要素となっている。
を動力源とするものも含め、ほとんどの最新MOTシステムは、このようなものである。 YOLO11を搭載したものも含め、最先端のMOTシステムのほとんどは、"トラッキング・バイ・ディテクション "パラダイムで作動している。 パラダイムで作動する。このワークフローでは、プロセスを明確な段階に分け、映像のフレームごとにそれを繰り返すことで、高い精度と連続性を確保している。 精度と連続性を確保する。
特定のユースケースに適切な技術を選択するためには、MOTを類似概念と区別することが重要である。
複数の物体を同時にtrack する能力は、生のビデオデータを実用的なデータに変換し、様々な業界のイノベーションを促進します。 データを実用的な 予測モデリングに変換します。
について ultralytics パッケージは、以下のような強力なトラッカーを統合することで、MOTの複雑さを簡素化している。
ボット・ソート そして
バイトトラック 予測パイプラインに直接
パイプラインに直接組み込まれる。これらのトラッカーは引数で簡単に入れ替えることができる。
以下の例は、事前に学習されたYOLO11 モデルをロードし、ビデオファイルにトラッキングを適用する方法を示しています:
from ultralytics import YOLO
# Load an official YOLO11 model pretrained on COCO
model = YOLO("yolo11n.pt")
# Perform tracking on a video file
# 'persist=True' ensures IDs are maintained between frames
# 'tracker' allows selection of algorithms like 'bytetrack.yaml' or 'botsort.yaml'
results = model.track(source="traffic_analysis.mp4", persist=True, tracker="bytetrack.yaml")
# Visualize the results
for result in results:
result.show()
このコードは、検出からIDの割り当てまで、パイプライン全体を処理する。 のような高レベルのロジックに集中できる。 分析に集中できる。さらなるカスタマイズについては トラッキング・モードのドキュメントを参照。