Il video tracking è una tecnica che utilizza una telecamera, per il riconoscimento di uno o più oggetti, che si muovono nel tempo. Un algoritmo analizza i fotogrammi del video, e dà, in uscita la posizione degli oggetti bersaglio.
La principale difficoltà nel video tracking consiste nel catturare l'esatta posizione dei bersagli in fotogrammi consecutivi, in particolare nel momento in cui gli oggetti si muovono più rapidamente rispetto alla frequenza dei fotogrammi. I sistemi di video tracking, di solito, usano uno schema del moto che descrive come l'immagine del bersaglio potrebbe mutare in funzione dei possibili movimenti dell'oggetto da osservare sistematicamente.
Semplici esempi di modelli del moto sono:
Lo scopo dell’algoritmo di tracking è di analizzare i fotogrammi del video, al fine di stimare i parametri del moto. Questi parametri definiscono la posizione del bersaglio.
In un sistema di monitoraggio visivo, sono presenti due fattori principali i : individuazione e rappresentazione dei bersagli, filtraggio e associazione dei dati.
La localizzazione e la rappresentazione dei bersagli è generalmente un processo bottom-up. In genere la complessità di calcolo di tali algoritmi è bassa. Alcuni algoritmi tipici sono : il riconoscimento di regioni, il Kernel-based tracking(Mean-shift tracking), il Tracking del contorno, e il Matching a caratteristiche visuali.
Il filtraggio e l'associazione dei dati è invece un processo top-down, che presuppone l'inserimento di informazioni preliminari sulla scena o sull'oggetto, occupandosi delle dinamiche dell'oggetto e della valutazione di diverse ipotesi. La complessità computazionale di tali algoritmi è in genere molto più elevata. Di seguito due comuni algoritmi di filtraggio: Filtro di Kalman, Filtro particellare (Particle filter).