Yolo Vision Shenzhen
Shenzhen
Iscriviti ora
Glossario

Inseguimento di più oggetti (MOT)

Esplorare il Multi-Object Tracking (MOT): track e re-identificare gli oggetti nei fotogrammi video con YOLO11, filtri di Kalman, corrispondenza di aspetto e moderna associazione di dati.

L'inseguimento di più oggetti (Multi-Object Tracking, MOT) è un'attività fondamentale nella computer vision che prevede il rilevamento di più entità distinte all'interno di un flusso video e di mantenere la loro identità unica in fotogrammi consecutivi. Mentre rilevamento standard degli oggetti identifica ciò che è in una singola immagine statica, il MOT introduce una dimensione temporale, rispondendo alla domanda su dove si muovono determinati oggetti nel tempo. oggetti specifici si muovono nel tempo. Assegnando un numero di identificazione (ID) persistente a ogni istanza rilevata, MOT permette ai sistemi di analizzare le traiettorie, le di analizzare le traiettorie, comprendere le interazioni e contare gli oggetti unici, rendendolo un componente fondamentale delle moderne applicazioni di comprensione video. moderne applicazioni di comprensione video.

La meccanica dei sistemi di tracciamento

La maggior parte dei sistemi MOT all'avanguardia, compresi quelli alimentati da YOLO11operano secondo il paradigma del "tracking-by-detection". per il rilevamento". Questo flusso di lavoro separa il processo in fasi distinte che si ripetono per ogni fotogramma del video per garantire un'elevata precisione e continuità. precisione e continuità.

  1. Rilevamento: Il sistema utilizza innanzitutto un modello ad alte prestazioni per individuare gli oggetti di interesse, generando caselle di delimitazione e punteggi di confidenza.
  2. Previsione del movimento: Per associare i rilevamenti tra i vari fotogrammi, algoritmi come il filtro di filtro di Kalman stimano la posizione futura di un di un oggetto in base alla sua velocità e posizione passata. Questo crea una stima dello stato che restringe l'area di ricerca per il fotogramma successivo. fotogramma successivo.
  3. Associazione dei dati: Il sistema associa i nuovi rilevamenti alle tracce esistenti. Le tecniche di ottimizzazione come l'algoritmo ungherese risolvono questo problema di problema di assegnazione minimizzando il costo dell'abbinamento, spesso calcolando l'Intersezione su Unione (IoU) tra le tracce. Intersezione su Unione (IoU) tra la traccia prevista e il nuovo rilevamento. la track prevista e il nuovo rilevamento.
  4. Re-identificazione (ReID): In scenari in cui gli oggetti si incrociano o vengono temporaneamente nascosti - un fenomeno noto come fenomeno noto come occlusione, i tracker tracker avanzati utilizzano le incorporazioni visive per riconoscere l'oggetto quando riappare, impedendo il cambio di ID.

MOT e termini correlati di visione artificiale

È importante distinguere il MOT da concetti simili per selezionare la tecnologia appropriata per un caso d'uso specifico.

  • rispetto al rilevamento di oggetti: Il rilevamento considera ogni fotogramma come un evento indipendente. Se un veicolo appare in due fotogrammi consecutivi, un rilevatore vede due istanze separate di "auto". Al contrario, il rilevamento degli oggetti mette in relazione queste istanze, riconoscendole come lo stesso veicolo che si muove nel tempo.
  • vs. Single-Object Tracking (SOT): SOT si concentra sul seguire un obiettivo specifico inizializzato dall'utente, spesso ignorando tutte le altre attività. utente, spesso ignorando tutte le altre attività. Il MOT è più complesso in quanto deve detect, track e gestire autonomamente un numero sconosciuto e fluttuante di oggetti che entrano ed escono dalla scena. un numero sconosciuto e fluttuante di oggetti che entrano ed escono dalla scena, richiedendo una robusta logica di gestione della memoria. logica di gestione della memoria.

Applicazioni nel mondo reale

La capacità di track più oggetti simultaneamente è alla base dell'innovazione in diversi settori, convertendo i dati video grezzi in dati video grezzi in intuizioni modelli predittivi.

  • Trasporto intelligente: Nel campo dell'IA nel settore automobilistico AI nel settore automobilistico, il MOT è fondamentale per guida autonoma e il monitoraggio del traffico. Consente ai sistemi di eseguire stima della velocità calcolando la distanza percorsa da un veicolo nel tempo e aiuta a prevedere potenziali collisioni monitorando le traiettorie di pedoni e ciclisti. ciclisti.
  • Analitica del commercio al dettaglio: I negozi "Brick-and-mortar" sfruttano L'intelligenza artificiale nella vendita al dettaglio per comprendere il comportamento dei clienti. Applicando applicando l'intelligenza artificiale per il conteggio preciso degli oggetti, i retailer possono misurare il traffico pedonale, analizzare i tempi di permanenza in corsie specifiche e ottimizzare la gestione delle code per migliorare lo shopping. gestione delle code per migliorare l'esperienza esperienza di acquisto.
  • Analisi sportiva: Gli allenatori e gli analisti utilizzano il MOT per track giocatori e la palla durante le partite. Questi dati dati facilitano l'analisi avanzata della stima della posa, aiutando le squadre a capire a comprendere le formazioni, la stanchezza dei giocatori e le dinamiche di gioco in scenari di scenari di inferenza in tempo reale.

Implementare il tracciamento con Python

Il ultralytics semplifica la complessità di MOT, integrando potenti tracker come SORTEGGIAMENTO e ByteTrack direttamente nella pipeline di predizione pipeline. Questi tracker possono essere scambiati facilmente tramite gli argomenti.

L'esempio seguente mostra come caricare un modello YOLO11 preaddestrato e applicare il tracciamento a un file video:

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()

Questo codice gestisce l'intera pipeline, dal rilevamento all'assegnazione dell'ID, consentendo agli sviluppatori di concentrarsi sulla logica di alto livello, come il conteggio delle regioni o il comportamento. logica di alto livello, come il conteggio delle regioni o l'analisi analisi comportamentale. Per ulteriori personalizzazioni, consultare la documentazione della modalità di tracciamento.

Unitevi alla comunità di Ultralytics

Entra nel futuro dell'AI. Connettiti, collabora e cresci con innovatori globali

Iscriviti ora