Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

30
Filtro de Partículas Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio

Transcript of Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Page 1: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Filtro de PartículasFiltro de Partículas

Aplicado al seguimiento de objetos

Jose Maria Buades Rubio

Page 2: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

SeguimientoSeguimiento

• A partir de un instante de tiempo ta, que se conoce el estado del objeto se desea localizar el objeto a lo largo del tiempo ta+1, ta+2, ta+3, ... , ta+n

• Nos interesa un estimador recursivo. Determinar el estado actual ti a partir del estado anterior ti-1

Page 3: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Filtro de KalmanFiltro de Kalman

• Estimador recursivo para un variable xn gobernada por una ecuación estocástica lineal xk=Axk-1 + Buk + wk-1

• El Filtro de Kalman Extendido permite que el proceso no sea lineal xk=ƒ(xk-1, uk , wk-1)

Page 4: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Filtro de KalmanFiltro de Kalman

Proceso de control xk = Axk-1 + Buk + wk-1

A matriz de n*nB matriz de n*l, ul

p(w) ~ N(0, Q)

Proceso de medición zk = Hxk + vk

p(v) ~ N(0, R)H matriz de m*n, zm

Datos iniciales: A, B, H, Q, R, x0 y P0

Pk es el error estimado en el instante k

Page 5: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Algoritmo de Kalman Algoritmo de Kalman FilterFilter

Page 6: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Problemática. OclusionesProblemática. Oclusiones

• La mayoría de los algoritmos no obtienen buenos resultados en el caso de que el objeto sufra oclusiones parciales o totales

• Al perder el rastro del objeto no retornan a una situación de estabilidad

• Filtro de partículas trata de solventar esta problemática

Page 7: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Filtro de Partículas vsFiltro de Partículas vsFiltro Kalman Filtro Kalman

• Filtro de Kalman es unimodal

• Filtro de Partículas es multimodalContempla varias alternativas, un objeto puede estar localizado en dos puntos igualmente probables

Page 8: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Filtro de KalmanFiltro de Kalman

Page 9: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Filtro de PartículasFiltro de Partículas

Page 10: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Filtro de PartículasFiltro de PartículasFormulación MatemáticaFormulación Matemática

xt – Estado del objeto en el tiempo t. Por ejemplo posición x, y, z

Xt ={x1, ..., xt} La historia del objeto

zt – El conjunto de imágenes en el instante t

Zt ={z1, ..., zt} La historia de las imágenes

Page 11: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Filtro de PartículasFiltro de PartículasFormulación MatemáticaFormulación MatemáticaModelo Dinámico Modelo Dinámico EstocásticoEstocásticoConsideramos que la dinámica del

objeto se rige por un proceso de Markov

p(xt|Xt) = p(xt|xt-1)

Page 12: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Filtro de PartículasFiltro de PartículasFormulación MatemáticaFormulación MatemáticaLikelihoodLikelihoodLas observaciones zt se consideran

independientes

El proceso de observación se define con la función de densidad p(zt|xt) para cada instante t, pudiendo ser independiente del tiempo p(z|x)

t

iiittttt xzpXxpXxΖp

1111,

Page 13: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Filtro de PartículasFiltro de PartículasFormulación MatemáticaFormulación MatemáticaPropagaciónPropagación

La probabilidad de un estado xt viene dado de forma recursiva por

Aquí aparecen dos funciones: LikelihoodModelo Dinámico

1

)()(

donde

1111

1

tx

tttttt

ttttttt

tttt

ZxpxxpZxp

ZxpxzpkZxp

Zxpxp

Page 14: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

AlgoritmoAlgoritmo

• Estas funciones están definidas sobre el espacio continuo de los reales

• La integral se calcula en discreto para facilitar los cálculos

• Se simulan n partículas a las cuales se les aplica las funcionesSimulación (Dynamic Model - estado) Similitud (Likelihood - probabilidad)

Page 15: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

AlgoritmoAlgoritmo

Page 16: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

1 Seleccionar una partícula s’t(n)

a.- Generar un numero aleatorio [0,1]b.- encontrar el j para el cual ct-1

(j) rc.- s’t

(n) = s’t-1(j)

2 Predecir mediante el muestreop(xt| xt-1 = s´t

(n))para escoger st

(n)

p.e. st(n) = As´t

(n) + Bwt(n)

3 Mediciónt

(n) = p(zt| xt = st(n))

Normalizar para que nt(n) = 1

ct(0) = 0

ct(n) = ct

(n-1) + t(n) (n=1,...,N)

Page 17: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Resultados. Sin oclusionesResultados. Sin oclusiones

Page 18: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

1 iteración, 100 partículas1 iteración, 100 partículas

Page 19: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

2 iteraciones, 50 2 iteraciones, 50 partículaspartículas

Page 20: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

4 iteraciones, 25 4 iteraciones, 25 partículaspartículas

Page 21: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

8 iteraciones, 100 8 iteraciones, 100 partículaspartículas

Page 22: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Resultados. Con Resultados. Con oclusionesoclusiones

Page 23: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

4 iteraciones, 25 4 iteraciones, 25 partículaspartículas

Page 24: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

4 iteraciones, 100 4 iteraciones, 100 partículaspartículas

Page 25: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Resultados.Resultados.Jonathan DeutscherJonathan Deutscher

Page 26: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Resultados.Resultados.Jonathan DeutscherJonathan Deutscher

Page 27: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Resultados.Resultados.Hedvig SidenbladhHedvig Sidenbladh

Page 28: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Resultados.Resultados.Hedvig SidenbladhHedvig Sidenbladh

Page 29: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

Problemas derivados del Problemas derivados del número finito de número finito de partículaspartículas

• Diferentes ejecuciones pueden dar resultados diferentes

• Reseguir un único pico, posiblemente el erróneo

• Realizar el seguimiento sin disponer de información útil

Page 30: Filtro de Partículas Aplicado al seguimiento de objetos Jose Maria Buades Rubio.

ReferenciasReferencias

Michael Isard and Andrew Black “CONDENSATION – Conditional Density Propagation for Visual Tracking” IJCV 29 (1) pp 5-28 (1998)

O. King and D.A. Forsyth “How Does CONDENSATION Behave wieh a Finite Number of Samples” ECCV’2000 Vol1 pp 695-709

Jonathan Deutscher, Andrew Blake and Ian Reid “Articulated Body Motion Capture by Annealed Particle Filter” CVPR’2000

Hedvig Sidenbladh, Michael J. Black and David J. Fleet “Stochastic Tracking of 3D Human Figures Using 2D Image Motion” ECCV’2000

Briad D. Ripley “Stochastic Simulation” Ed. Jhon Wiley & Sons

Athanasios Papoulis “Probability & Statistics” Ed. Prentice Hall