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:
- Per tenere traccia di oggetti planari, ossia oggetti a due dimensioni, il modello del moto è una trasformazione 2D, un'omografia o trasformazione affine di una immagine dell'oggetto, per esempio, il fotogramma iniziale.
- Quando l'obiettivo è un oggetto 3D rigido, il modello del moto descrive il suo aspetto in funzione alla sua posizione e all'orientamento nello spazio tridimensionale.
- L'immagine contenente oggetti deformabili può essere coperta da una griglia, e il movimento dell'oggetto è definito dalla posizione dei nodi della griglia.
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.
Algoritmi comuni
[modifica | modifica wikitesto]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[1]. In genere la complessità di calcolo di tali algoritmi è bassa. Alcuni algoritmi tipici sono : il riconoscimento di regioni, il Kernel-based tracking[2](Mean-shift tracking), il Tracking del contorno[3], 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).[4]
Note
[modifica | modifica wikitesto]- ^ Def. Treccani : "bottom-up Strategia che regola la gestione di conoscenze e la risoluzione di problemi, applicata in particolare allo sviluppo dei software informatici, ma estesa anche ad altre teorie scientifiche e umanistiche. In generale, l'approccio b.-u. («dal basso verso l'alto») è un processo di sintesi, da elementi base fino a un sistema complesso. A esso si contrappone l'approccio dall'alto verso il basso (➔ top-down), che viceversa scompone ripetutamente un modello generale fino alle sue componenti elementari. Nella teoria del management, pubblico o privato, le strategie b.-u. e top-down si riferiscono al modo di prendere decisioni e determinare responsabilità, assegnando un ruolo maggiore alla base o al vertice, rispettivamente, della gerarchia organizzativa."
- ^ ACM Digital Library, Kernel-Based Object Tracking, su dl.acm.org, 2003.
- ^ Programmazione.it, Utilizzare il contorno per il target tracking in OpenCV, su programmazione.it, Rocco Galati, 27/09/2010.
- ^ M. Arulampalam, S. Maskell, N. Gordon, and T. Clapp, "A Tutorial on Particle Filters for Online Nonlinear/Non-Gaussian Bayesian Tracking", IEEE Trans. on Signal Processing, Vol. 50, no. 2, Feb. 2002.
Altri progetti
[modifica | modifica wikitesto]- Wikimedia Commons contiene immagini o altri file su Video tracking