Multi-Object Tracking (MOT)
Esplora il tracking multi-oggetto (MOT) nella computer vision. Scopri come rilevare e monitorare entità usando Ultralytics YOLO26 per la guida autonoma, il retail e molto altro.
Il tracking di più oggetti (MOT) è un'attività dinamica nell'ambito della visione artificiale (CV) che consiste nel rilevare più entità distinte all'interno di un flusso video e mantenerne l'identità nel tempo. A differenza del normale rilevamento degli oggetti, che tratta ogni fotogramma come un'istantanea isolata, il MOT introduce una dimensione temporale nell'intelligenza artificiale (AI). Assegnando un numero identificativo univoco (ID) a ogni istanza rilevata, come uno specifico pedone in mezzo alla folla o un veicolo su un'autostrada, gli algoritmi MOT consentono ai sistemi di tracciare le traiettorie, analizzare il comportamento e comprendere le interazioni. Questa capacità è fondamentale per la moderna comprensione dei video e consente alle macchine di percepire la continuità in un ambiente in evoluzione.
Come funziona il MOT#
La maggior parte dei moderni sistemi di tracking funziona secondo il paradigma del "tracking basato sul rilevamento". Questo approccio suddivide il processo in due fasi principali: identificare ciò che è presente nel fotogramma e poi associare questi risultati agli oggetti già noti del passato.
-
Rilevamento: in ogni fotogramma, un modello ad alte prestazioni come YOLO26 analizza l'immagine per individuare gli oggetti, generando riquadri di delimitazione e probabilità delle classi.
-
Predizione del movimento: per prevedere dove si sposterà un oggetto, gli algoritmi utilizzano spesso un filtro di Kalman. Questo strumento matematico stima lo stato di un sistema dinamico, come velocità e posizione, contribuendo a restringere l'area di ricerca nel fotogramma successivo.
-
Associazione dei dati: il sistema abbina i nuovi rilevamenti alle tracce esistenti. Metodi di ottimizzazione come l'algoritmo ungherese risolvono questo problema di assegnazione minimizzando il costo degli abbinamenti, spesso basandosi sull'Intersezione sull'unione (IoU) per misurare la sovrapposizione spaziale.
-
Re-identificazione (ReID): quando si verificano ostruzioni visive, note come occlusioni, i tracker avanzati utilizzano gli embedding visivi per riconoscere l'oggetto quando ricompare. Questo aiuta a prevenire lo "scambio di ID", assicurando che il sistema sappia che l'auto che esce da un tunnel è la stessa che vi è entrata.
Distinguere il MOT dal tracking di un singolo oggetto#
Sebbene la terminologia sia simile, il tracking di più oggetti (MOT) differisce notevolmente dal tracking di un singolo oggetto (SOT). Il SOT si concentra sul seguire uno specifico obiettivo inizializzato nel primo fotogramma, ignorando spesso tutte le altre entità. Al contrario, il MOT deve gestire un numero sconosciuto e variabile di obiettivi, che possono entrare o uscire dalla scena in qualsiasi momento. Questo rende il MOT più impegnativo dal punto di vista computazionale, poiché richiede una logica solida per gestire l'inizio e la fine delle tracce, oltre alle complesse interazioni tra più corpi in movimento.
Applicazioni nel mondo reale#
La capacità di tracciare simultaneamente più entità promuove l'innovazione in diversi settori importanti.
- Guida autonoma: le auto a guida autonoma dipendono fortemente dal MOT per muoversi in sicurezza. Tracciando pedoni, ciclisti e altri veicoli, i sistemi autonomi possono prevedere le posizioni future per evitare collisioni. Questo spesso comporta la fusione dei dati provenienti da telecamere e sensori LiDAR per ottenere la massima affidabilità.
- Analisi del retail: nei negozi fisici, i rivenditori utilizzano l'AI nel retail per mappare i percorsi dei clienti. Gli algoritmi MOT generano mappe di calore del flusso dei visitatori, aiutando i responsabili a ottimizzare la disposizione del negozio e a migliorare la gestione delle code nelle ore di punta.
- Analisi dello sport: le squadre professionistiche utilizzano il MOT per analizzare i movimenti dei giocatori e gli schieramenti di squadra. Tracciando ogni giocatore in campo, gli allenatori possono estrarre metriche dettagliate su velocità, distanza percorsa e posizione tattica utilizzando tecniche di stima della posa.
Implementare il MOT con Python#
Ultralytics rende semplice implementare il tracking con modelli all'avanguardia. Il metodo track() integra perfettamente la logica di rilevamento e tracking, supportando algoritmi come ByteTrack e BoT-SORT. L'esempio seguente mostra come tracciare i veicoli in un video utilizzando il modello YOLO26 consigliato.
from ultralytics import YOLO
# Load the official YOLO26 small model
model = YOLO("yolo26s.pt")
# Track objects in a video file (or use '0' for webcam)
# The 'persist=True' argument keeps track IDs consistent between frames
results = model.track(source="traffic_analysis.mp4", show=True, persist=True)
# Print the IDs of objects tracked in the first frame
if results[0].boxes.id is not None:
print(f"Tracked IDs: {results[0].boxes.id.int().tolist()}")Sfide del tracking di più oggetti#
Nonostante i progressi, il MOT rimane un campo complesso. L'occlusione è una delle principali difficoltà: quando gli oggetti si incrociano o si nascondono dietro ostacoli, mantenere la loro identità è complesso. Le scene affollate, come una maratona molto partecipata o uno stormo di uccelli, mettono alla prova i limiti degli algoritmi di associazione dei dati. Inoltre, mantenere velocità di inferenza in tempo reale durante l'elaborazione di flussi video ad alta risoluzione richiede architetture di modello efficienti e spesso hardware specializzato come i dispositivi NVIDIA Jetson.
Per affrontare queste sfide, i ricercatori stanno esplorando approcci di deep learning end-to-end che unificano rilevamento e tracking in un'unica rete, oltre a sfruttare la Ultralytics Platform per annotare dataset complessi e addestrare modelli personalizzati robusti.









