Video Understanding
La comprensione video è la capacità dell'IA di interpretare ciò che accade in un video nel tempo: azioni, eventi e il loro ordine. Attività, famiglie di modelli e codice.
La comprensione dei video è il campo della visione artificiale che interpreta ciò che accade in un video nel tempo: quali oggetti e persone sono presenti, cosa fanno, quando iniziano e finiscono gli eventi e come un evento porta a un altro. Il riconoscimento delle immagini analizza ogni fotogramma isolatamente, mentre i modelli di comprensione dei video elaborano il movimento e l'ordine temporale, elementi da cui dipendono molte domande. Un singolo fotogramma mostra una persona a metà del movimento verso una sedia, ma solo i fotogrammi vicini permettono di capire se si sta sedendo o alzando. Il campo spazia dall'etichettatura di brevi clip alle risposte a domande aperte su ore di filmati.
Attività principali#
- Riconoscimento delle azioni: Assegna un'unica etichetta, come «flessione» o «caduta», a una breve clip ritagliata.
- Localizzazione temporale delle azioni: Individua l'inizio e la fine di ogni azione in un video lungo e non ritagliato; il rilevamento spaziotemporale delle azioni identifica anche ciascun attore in ogni fotogramma.
- Tracciamento degli oggetti: Segue ogni oggetto nei diversi fotogrammi assegnandogli un ID persistente, base per il conteggio, la misurazione della velocità e l'analisi delle traiettorie.
- Segmentazione video: Produce maschere di pixel per oggetti o aree della scena, mantenendole coerenti da un fotogramma all'altro.
- Didascalie e risposte a domande sui video: Descrive una clip in testo o risponde a domande come «cosa ha fatto il conducente prima che l'auto si fermasse?»
- Ancoraggio temporale: Individua il momento corrispondente a una frase, come «il portiere afferra la palla»; questa attività è chiamata anche recupero del momento.
- Rilevamento delle anomalie: Segnala eventi insoliti, come una caduta, una rissa o un veicolo che procede contromano.
Come funzionano i modelli video#
I modelli video devono acquisire sia l'aspetto, cioè l'aspetto degli oggetti, sia il movimento, cioè il modo in cui cambiano. Le reti a due flussi elaboravano i fotogrammi RGB e il flusso ottico in rami separati; le reti neurali convoluzionali (CNN) 3D eseguono convoluzioni congiuntamente su altezza, larghezza e tempo; il Temporal Shift Module aggiunge la modellazione temporale alle CNN 2D senza costi computazionali aggiuntivi, spostando parte dei canali di ogni strato nei fotogrammi adiacenti. I transformer video applicano la self-attention alle patch spazio-temporali, mentre TimeSformer ha reso questo approccio più efficiente applicando l'attenzione separatamente nel tempo e nello spazio. Il pretraining self-supervised su video non etichettati produce encoder versatili e potenti: il V-JEPA 2 di Meta ha appreso da oltre 1 milione di ore di video online predicendo le rappresentazioni delle regioni mascherate e ha raggiunto un'accuratezza top-1 del 77,3% su Something-Something v2, un benchmark di azioni mano-oggetto che si distinguono soprattutto per il movimento. I modelli video-linguistici campionano i fotogrammi, codificano ciascuno in token visivi e li passano a un modello linguistico di grandi dimensioni (LLM), che risponde alle domande in testo.
Il risultato richiesto al sistema determina in gran parte quale di queste famiglie di modelli utilizzare:
Eventi ricavati dalle tracce degli oggetti#
Molti sistemi pratici comprendono i video ragionando sulle tracce: un rilevatore individua gli oggetti in ogni fotogramma, un tracker li collega in traiettorie e regole o modelli convertono le traiettorie in eventi, come l'ingresso in una zona, l'attraversamento di una linea o una sosta troppo lunga. La soluzione Ultralytics per il conteggio degli oggetti funziona così, usando il tracciamento di YOLO26: conta ogni oggetto tracciato una sola volta quando il suo percorso attraversa una linea e registra la direzione in base alle sue posizioni in fotogrammi consecutivi:
import cv2
from ultralytics import solutions
# Count people (COCO class 0) crossing a horizontal line through the middle of the 640x360 frame
counter = solutions.ObjectCounter(model="yolo26n.pt", region=[(0, 180), (640, 180)], classes=[0])
cap = cv2.VideoCapture("https://github.com/ultralytics/assets/releases/download/v0.0.0/solutions_ci_demo.mp4")
while True:
success, frame = cap.read()
if not success:
break
results = counter(frame)
# A crossing and its direction come from each person's track, so they exist only across frames
print(f"Crossed moving down: {results.in_count}, moving up: {results.out_count}")I due conteggi descrivono eventi che non compaiono in nessun singolo fotogramma, poiché per distinguere una persona che scende a piedi da una che sale servono almeno due posizioni della stessa persona tracciata.
Comprensione dei video e termini correlati#
- Riconoscimento delle immagini: Classifica o rileva i contenuti in singole immagini. Applicarlo a ogni fotogramma di un video produce risultati per fotogramma, senza alcuna informazione su identità, movimento o ordine.
- Tracciamento di più oggetti (MOT): Un componente fondamentale della comprensione dei video, che mantiene le identità tra i fotogrammi senza interpretare cosa fanno gli oggetti.
- Generazione video: Crea nuovi video a partire da testo o immagini, nella direzione opposta, anche se entrambi gli approcci si basano su modelli che descrivono come cambiano le scene nel tempo.
- IA multimodale: Combina il video con audio, sottotitoli o altri dati, utile quando la colonna sonora o il parlato contiene le informazioni chiave.
Applicazioni#
- Analisi sportiva: Traccia i giocatori e la palla per misurare velocità, possesso e moduli, e individua le azioni salienti nelle registrazioni delle partite complete.
- Traffico e città intelligenti: Conta veicoli e pedoni, misura le velocità e rileva veicoli contromano o fermi.
- Monitoraggio di negozi e sicurezza: Misura la lunghezza delle code, segnala le cadute nelle strutture di assistenza e rileva l'ingresso di persone in zone riservate.
- Media e moderazione dei contenuti: Indicizza grandi raccolte di video per agevolare le ricerche e segnala i caricamenti che violano le policy.
- Robotica e veicoli autonomi: Prevedono dove si sposteranno pedoni e altri veicoli.
Sfide#
Il video moltiplica il costo di ogni immagine: un minuto a 30 fotogrammi al secondo contiene 1.800 fotogrammi, quindi i modelli ne campionano pochi, spesso da 8 a 64 per clip, rischiando comunque di perdere eventi brevi. I video lunghi mettono a dura prova la memoria e la lunghezza del contesto, mentre annotare azioni con orari di inizio e fine precisi richiede molto più tempo che etichettare immagini. L'API Gemini di Google campiona i video a un fotogramma al secondo e usa circa 100 token al secondo di video con la risoluzione multimediale bassa predefinita; i suoi modelli con una finestra di contesto da un milione di token possono quindi elaborare fino a tre ore di video, oppure un'ora ad alta risoluzione.










