filttro de kalman

Embed Size (px)

DESCRIPTION

filtro de kalman

Citation preview

  • Aplicacion del Filtro de Kalman para mejorar el

    Tracking de jugadores de futbol

    Franci Suni Lopez

    Orientador: Prof Dr. Angel Mogrovejo Flores

    Plan de Tesis presentado a la Facultad de Ciencias de laEducacion como paso previo a la elaboracion de la TesisProfesional.

    UNSA - Universidad Nacional de San AgustnJulio de 2015

  • INDICE

    Indice

    1. Motivacion y Contexto 5

    2. Definicion del Problema 6

    3. Objetivos 6

    3.1. Objetivo Principal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    3.2. Objetivos Especficos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    4. Trabajos Relacionados 7

    4.1. Representacion de Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    4.1.1. Modelos con formas articuladas . . . . . . . . . . . . . . . . . . . . 8

    4.1.2. Modelos esqueleticos . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    4.2. Seleccion de caractersticas . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    4.2.1. Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    4.2.2. Bordes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    4.3. Filtro de Kalman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    4.3.1. Algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    5. Propuesta 11

    6. Cronograma de Actividades 13

    7. Indice Tentivo de la Tesis 13

    Educacion - UNSA 2

  • INDICE DE CUADROS

    Indice de cuadros

    1. Cronograma de Actividades para el desarrollo de la Tesis. . . . . . . . . . . 13

    Educacion - UNSA 3

  • INDICE DE FIGURAS

    Indice de figuras

    1. Esquema del procedimiento basico para el tratamiento digital de imagenes 5

    2. Ejemplos de tracking y trayectorias obtenidas. (a) Tracking mono-objetivo.(b) Tracking multi-objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    3. Posibles Representaciones de un objetivo. (a) Centroide, (b) multiples pun-tos, (c) parche rectangular, (d) parche elptico, (e) parches en multiplespartes, (f) esqueleto, (g) puntos de control en el contorno, (h) contornocompleto del objeto, (i) silueta del objeto. (Figura extrada de [9]). . . . . 9

    4. Distintas formas de seleccionar caractersticas de una imagen. (a) Imagenen el espacio de color HSV. (b) Bordes extrados de la imagen mediante eldetector de bordes de Sobel. . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    5. Ciclo de funcionamiento del filtro de Kalman. La prediccion proyecta laestimacion del estado adelante en el tiempo, mientras que la correccionajusta la estimacion proyectada con una medida del instante actual. . . . . 11

    Educacion - UNSA 4

  • INDICE DE FIGURAS

    1. Motivacion y Contexto

    La Vision Computacional consiste en el estudio de los procesos que intervienen en lavision, para entenderlos y disenar maquinas o aplicaciones con capacidades similares. LaVision Computacional, en un intento de reproducir el comportamiento del ser humano,define tradicionalmente cinco fases principales (ver Figura 1):

    La primera fase, que es puramente sensorial, consiste en la Captura o Adquisicionde las imagenes digitales mediante algun tipo de sensor. Se muestrea, discretiza yalmacena digitalmente la imagen.

    La segunda etapa consiste en el tratamiento digital de las imagenes, con objetode facilitar las etapas posteriores. En esta etapa de Preprocesamiento es donde,mediante filtros o transformaciones geometricas, se eliminan partes indeseables dela imagen o se realzan partes interesantes de la misma.

    La Segmentacion consiste en dividir la escena en regiones de atributos similares. Deesta manera podemos aislar los distintos elementos que la componen y extraer losde interes.

    El siguiente paso es Extraer las caractersticas relevantes del objeto, de cara a cla-sificarlo adecuadamente.

    Por ultimo se llega a la etapa de Reconocimiento o Clasificacion. En ella se pretendedistinguir los objetos segmentados, gracias al analisis de las caractersticas extradaspreviamente para diferenciarlos.

    Figura 1: Esquema del procedimiento basico para el tratamiento digital de imagenes

    Durante las dos ultimas decadas, el seguimiento de objetos en secuencias de vdeoha recibido una especial atencion por parte de la comunidad investigadora. Algunos desus usos mas importantes son:

    Reconocimiento basado en movimiento: identificacion humana, deteccion automaticade objetos.

    Educacion - UNSA 5

  • INDICE DE FIGURAS

    Supervision o vigilancia automatica: monitorear una escena para detectar activida-des sospechosas o eventos no deseados.

    Indexado de video: anotacion automatica de parametros y recuperacion de vdeosen bases de datos multimedia [2].

    Interaccion ordenador-humano: reconocimiento de gestos, seguimiento de los ojos,etc.

    Monitorizacion del trafico: obtencion de estadsticas del trafico en tiempo real paradirigirlo adecuadamente.

    Navegacion de vehculos: capacidades de planificacion de rutas basada en vdeo yevitacion de obstaculos

    Todas ellas requieren un algoritmo de tracking robusto para funcionar de manera optima.Para poder ser aplicado en sistemas de vision, el algoritmo debe ser capaz de controlaroclusiones parciales y totales, cambios de escala del objeto, cambios de iluminacion dela escena, movimientos erraticos, medidas ruidosas... Ademas, para algunas aplicacionescomo supervision o interaccion, los trackers deben proporcionar seguimientos fiables a lolargo de enormes secuencias de vdeo, en tiempo real y a altas frecuencias de refresco.Estas restricciones requieren de una aplicacion estable y computacionalmente eficiente.

    2. Definicion del Problema

    Un problema clasico en vision computacional es el seguimiento de objetos en secuen-cias de imagenes(video), denominado comunmente tracking. Su resolucion consta de tresetapas clave: deteccion de los objetos de interes, seguimiento de dichos objetos de un fra-me al siguiente y, por ultimo, analisis del movimiento que permite reconocer algun patronde comportamiento(ver Figura 2). Un asunto crucial en tracking visual es la adaptaciondel algoritmo general a la aplicacion de seguimiento particular. El principal problema esque, habitualmente, existen multitud de parametros que deben ser fijados, y en muchasocasiones no esta claro como deben ser establecidos para cada problema en particular.

    3. Objetivos

    3.1. Objetivo Principal

    El objetivo fundamental de este proyecto consiste en implementar el Filtro de Kal-man al Tracking(seguimiento) de jugadores de futbol en video, evaluando los resultadosque se obtienen en la aplicacion bajo diferentes condiciones experimentales.

    Educacion - UNSA 6

  • INDICE DE FIGURAS

    Figura 2: Ejemplos de tracking y trayectorias obtenidas. (a) Tracking mono-objetivo. (b)Tracking multi-objetivo

    3.2. Objetivos Especficos

    Incorporar Filtro de Kalman a los algoritmos de tracking.

    Reducir el numero de falsos positivos detectados.

    Corregir errores en la oclusion de jugadores.

    4. Trabajos Relacionados

    En el contexto del seguimiento de objetivos, se puede definir un objetivo u objetocomo cualquier region de la imagen que sea de interes para un analisis posterior. Por ejem-plo, un barco en el mar, vehculos en la carretera, aviones en el aire o gente caminandopor la calle son conjuntos de objetivos que podran ser importantes para hacer segui-miento en un dominio especfico. Habitualmente, los sistemas de tracking se componende cuatro etapas: representacion del objetivo, extraccion de caractersticas, deteccion delobjetivo en la escena y seguimiento del objetivo (trayectoria seguida). Estas etapas estanestrechamente vinculadas, ya que la tecnica escogida para la representacion del objetivocondiciona en gran parte su deteccion y posterior seguimiento. En los siguientes subapar-tados se estudiaran las tecnicas comunmente utilizadas para resolver cada una de las fasesmencionadas.

    4.1. Representacion de Objetivos

    Los objetivos pueden ser representados por su forma y apariencia. En esta seccionse describiran inicialmente las representaciones de la forma de los objetos comunmente

    Educacion - UNSA 7

  • INDICE DE FIGURAS

    utilizadas en el tracking para, despues, estudiar representaciones mas complejas que unenforma y apariencia.

    4.1.1. Modelos con formas articuladas

    Los objetos articulados estan compuestos de diversas partes unidas entre s a travesde uniones. Por ejemplo, el cuerpo humano es un objetivo articulado con cabeza, torso,brazos, piernas, manos y pies unidos mediante articulaciones. La relacion entre las partesesta gobernada por un modelo de movimiento cinematico, por ejemplo, angulo de union,etc. Para representar un objeto articulado, se pueden modelar las partes que lo constituyenusando cilindros o elipses (Figura 3(e)).

    4.1.2. Modelos esqueleticos

    El esqueleto de cualquier objeto puede ser extrado aplicando la transformacion MAT(Medial Axis Transformation) a la silueta del objeto [4]. Este modelo se usa comunmenteen el reconocimiento de objetos [5]. La representacion basada en esqueleto puede utilizarsepara modelar tanto objetos rgidos como articulados (Figura 3(f)).

    4.2. Seleccion de caractersticas

    Seleccionar las caractersticas correctas juega un papel crtico en tracking. En gene-ral, la propiedad mas deseable de una caracterstica visual es su singularidad, de formaque los objetos puedan ser facilmente discriminados en el espacio de caractersticas. Laseleccion de caractersticas esta estrechamente relacionada con la representacion de losobjetos. Por ejemplo, el color es usado como una caracterstica por las representacionesbasadas en histograma mientras que, para las basadas en contornos, se suelen utilizar losbordes del objeto. En general, la mayora de algoritmos de tracking usan una combina-cion de estas caractersticas. Los detalles de las caractersticas visuales mas comunes secomentan a continuacion.

    4.2.1. Color

    El color aparente de un objeto es influenciado principalmente por dos factores f-sicos, 1) la distribucion espectral de potencia de la iluminacion y 2) las propiedades dereflectancia de la superficie del objeto. En procesamiento de imagenes, el espacio de colorRGB (rojo, verde, azul) es comunmente usado para representar el color. Sin embargo, elespacio RGB no es un espacio de color perceptualmente uniforme, es decir que las diferen-cias entre colores en el espacio RGB no se corresponden con las diferencias entre colorespercibidas por el ser humano [6]. Adicionalmente, las dimensiones RGB estan altamente

    Educacion - UNSA 8

  • INDICE DE FIGURAS

    Figura 3: Posibles Representaciones de un objetivo. (a) Centroide, (b) multiples puntos,(c) parche rectangular, (d) parche elptico, (e) parches en multiples partes, (f) esqueleto,(g) puntos de control en el contorno, (h) contorno completo del objeto, (i) silueta delobjeto. (Figura extrada de [9]).

    correladas. Por el contrario, L*u*v y L*a*b son espacios de color perceptualmente unifor-mes, mientras que HSV (Hue, Saturation, Value) es aproximadamente uniforme (Figura4(a)). Sin embargo, estos espacios de color son sensibles al ruido. En resumen, aun no seha dicho la ultima palabra sobre que espacio de color es mas eficiente, por lo que se usanuna gran variedad de ellos en tracking.

    4.2.2. Bordes

    Los lmites de un objeto usualmente generan cambios bruscos en la intensidad dela imagen. La deteccion de bordes es usada para identificar estos cambios (Figura 4(b)).Una propiedad importante de los bordes es que son menos sensibles a los cambios deiluminacion en comparacion con las caractersticas de color. Los algoritmos que hacentracking tomando como referencia el lmite de los objetos normalmente usan bordes comocaracterstica representativa. Gracias a su simplicidad y precision, la aproximacion a ladeteccion de bordes mas popular es el detector de bordes de Canny [7]. Una evaluacionde los algoritmos de deteccion de bordes puede ser consultada en [8].

    Educacion - UNSA 9

  • INDICE DE FIGURAS

    Figura 4: Distintas formas de seleccionar caractersticas de una imagen. (a) Imagen en elespacio de color HSV. (b) Bordes extrados de la imagen mediante el detector de bordesde Sobel.

    4.3. Filtro de Kalman

    El filtro de Kalman consiste en un conjunto de ecuaciones matematicas que proveenuna solucion recursiva optima al problema de filtrado lineal de datos discretos, medianteel metodo de mnimos cuadrados. Se trata de una solucion optima en el sentido de queminimiza la covarianza estimada del error. La meta de esta solucion consiste en calcularun estimador lineal, insesgado y optimo, del estado de un sistema en t con base en lainformacion disponible en t-1, y actualizar, con la informacion adicional disponible ent, dichas estimaciones [9]. El filtro se desempena suponiendo que el sistema puede serdescrito a traves de un modelo estocastico lineal, en donde el estado tiene una distribucionGaussiana. El filtro de Kalman es el principal algoritmo para estimar sistemas dinamicosrepresentados en la forma de espacio de estados. En esta representacion el sistema esdescrito por un conjunto de variables denominadas de estado. El estado contiene toda lainformacion relativa al sistema en un cierto instante de tiempo. Esta informacion debepermitir la inferencia del comportamiento pasado del sistema, con el objetivo de predecirsu comportamiento futuro [10]. Lo que hace al filtro tan interesante es precisamente suhabilidad para predecir el estado de un sistema en el pasado, presente y futuro, aun cuandola naturaleza precisa del sistema modelado es desconocida. En la practica, las variablesde estado individuales de un sistema dinamico no pueden ser exactamente determinadaspor una medicion directa. Dado lo anterior, su medicion se realiza por medio de procesosestocasticos que involucran algun grado de incertidumbre en la medicion.

    4.3.1. Algoritmo

    El filtro de Kalman estima el estado utilizando un control de retroalimentacion:estima el estado en un instante de tiempo determinado y entonces obtiene la retroali-mentacion por medio de los datos observados. Desde este punto de vista las ecuaciones

    Educacion - UNSA 10

  • INDICE DE FIGURAS

    que se utilizan para derivar el filtro de Kalman se pueden dividir en dos grupos: las queactualizan el estado en el tiempo o ecuaciones de prediccion y las que actualizan el estadoa partir de los datos observados o ecuaciones de actualizacion. Las del primer grupo sonresponsables de proyectar la estimacion del estado y de la covarianza del error al momentot tomando como referencia el estado en el momento t-1. El segundo grupo de ecuacionesson responsables de la retroalimentacion, es decir, incorporan nueva informacion dentro dela estimacion a priori anterior con lo cual se llega a una estimacion (a posteriori) mejoradadel estado. Las ecuaciones que actualizan el tiempo pueden ser vistas como ecuacionesde prediccion, mientras que las ecuaciones que incorporan nueva informacion pueden con-siderarse como ecuaciones de correccion. Efectivamente, el algoritmo de estimacion finalpuede definirse como un algoritmo de prediccion-correccion: se pronostica el nuevo estadoy su incertidumbre a partir de la informacion disponible, y se corrige la prediccion con lanueva medida, minimizando estadsticamente el error. Este ciclo se muestra en la Figura5.

    Figura 5: Ciclo de funcionamiento del filtro de Kalman. La prediccion proyecta la esti-macion del estado adelante en el tiempo, mientras que la correccion ajusta la estimacionproyectada con una medida del instante actual.

    5. Propuesta

    Una vez descrito el filtro de Kalman, se puede presentar la solucion que se utilizaraen este estudio, as como las mejoras propuestas con el fin de comparar y evaluar los resul-tados obtenidos. La solucion implementada esta basada en el algoritmo SIR (SequentialImportance Resampling) propuesta en [3]. Este algoritmo mejora el rendimiento del filtrode Kalman a traves de una etapa de remuestreo que previene la degeneracion de los pesos.

    Educacion - UNSA 11

  • INDICE DE FIGURAS

    La solucion empleada en el problema particular del seguimiento de objetivos utiliza:

    Un vector de estados que incluye la posicion del objetivo, sus dimensiones (repre-sentando al mismo como un rectangulo), su velocidad y la variacion temporal de susdimensiones.

    Descriptores de objeto basados en histograma RGB.

    La similitud de Bhattacharyya para calcular la f.d.p. de las observaciones.

    Una f.d.p. del estado (funcion de importancia) independiente de las observaciones.

    Un remuestreo mediante la tecnica ?Stochastic Universal Sampling?.

    Un ruido gaussiano con desviacion tpica prefijada.

    El filtro de Kalman cuenta con multitud de parametros que deben ser definidosadecuadamente para que el rendimiento sea optimo, tanto en terminos de calidad de laestimacion como de carga computacional necesaria. En este captulo se describiran losmas importantes y la influencia que tienen en el tracking. Tambien expondremos diversasmodificaciones que se aplicaran al sistema basico con el objetivo de mejorar su rendimiento:

    Probar diversas tecnicas de remuestreo de los pesos, con el fin de restar importanciaa partculas debiles.

    Emplear otro espacio de color, HSV, en la creacion del histograma.

    Analizar si otras medidas de similitud pueden mejorar los resultados: comparacionde histogramas frente a similitudes entre matrices de covarianza.

    Implementar adaptatividad en la desviacion tpica del ruido gaussiano sobre el es-tado.

    Comprobar si otros vectores de estados pueden dar lugar a una solucion mejor.

    Educacion - UNSA 12

  • INDICE DE FIGURAS

    6. Cronograma de Actividades

    Cuadro 1: Cronograma de Actividades para el desarrollo de la Tesis.Actividad Inicio Aprox. Fin Aprox.

    Elaboracion del Proyecto de Tesis 25-jul-15 30-jul-15Presentacion y Aprobacion del Proyecto 01-ago-15 08-ago-15

    Redaccion de la Parte Teorica de la Tesis 09-ago-15 09-set-15Implementacion de las tecnicas a ser usadas 10-set-15 25-oct-15

    Realizacion de las pruebas y escritura de resultados 26-oct-15 26-nov-15Presentacion del Borrador de Tesis 27-nov-15 04-dic-15

    Correcion de observaciones al Borrador de Tesis 05-dic-15 12-dic-15Presentacion de la Version Final de la Tesis 22-dic-15 24-dic-15

    Sustentacion de la Tesis 26-dic-15 28-dic-15

    7. Indice Tentivo de la Tesis

    La memoria de este proyecto esta organizada en 6 captulos. A continuacion sepresenta una breve descripcion de cada uno:

    Captulo 1: Marco teorico en el que se desarrolla el proyecto, motivacion y objetivosa alcanzar.

    Captulo 2: Breve analisis de las tecnicas y tecnologas comunmente empleadas enel seguimiento de objetos.

    Captulo 3: Descripcion del filtro de Kalman y las tecnicas asociadas: metodo deMonte Carlo y filtro de particulas. Desarrollo del algoritmo.

    Captulo 4: Desarrollo de la solucion propuesta. Descripcion de las funcionalidadesimplementadas tanto en la version basica como en sus extensiones.

    Captulo 5: Aplicacion del sistema implementado al seguimiento de jugadores ba-jo diferentes condiciones: oclusiones, movimiento de camara y multiples jugadores.Analisis de la importancia de los parametros libres. Comparacion de las diferen-tes extensiones. Descripcion y analisis de las medidas y resultados obtenidos de laspruebas.

    Captulo 6: Extraccion de conclusiones en base a los resultados obtenidos. Limita-ciones y debilidades de la aplicacion. Analisis de la continuidad del proyecto a travesde posibles mejoras y desarrollos futuros.

    Educacion - UNSA 13

  • REFERENCIAS

    Referencias

    [1] Landeau Rebeca Elaboracion de trabajos de investigacion 1 l Ed. Editorial Alfa Vene-zuela. (2002)

    [2] MPEG REQUIREMENTS GROUP. ISO/MPEG N4676, MPEG-7 Applications,v11.0, N. Day, ed., MPEG Requirements Group. (2002)

    [3] BAGDANOV, A., DINI, F., DEL BIMBO, A. AND NUNZIATI, W. Improving therobustness of particle-filter based visual trackers using online parameter adaptation.IEEE International Conference on Advanced Video and Signal based Surveillance(AVSS). (2007)

    [4] BALLARD, D., AND BROWN, C. Computer Vision, Cap. 8. Prentice-Hall. (1982)

    [5] ALI, A. AND AGGARWAL, J. p. Segmentation and recognition of continuous humanactivity. IEEE Workshop on Detection and Recognition of Events in Video, (2001)

    [6] PASCHOS, G. Perceptually uniform color spaces for color texture analysis: an empi-rical evaluation. IEEE Transactions on Image Processing 10(6), p. 932-937. (2001)

    [7] CANNY, J. F. A computational approach to edge detection. IEEE Trans. PatternAnalysis and Machine Intelligence, 8 (6), p. 679-698. (1986)

    [8] SHIN, M. C., GOLDGOF, D. B., BOWYER, K. W., AND NIKIFOROU, S. Compa-rison of edge detection algorithms using a structure from motion task. IEEE Transac-tions on Systems, Man, and Cybernetics, Part B 31(4), p. 589-601. (2001)

    [9] WELCH, G. AND BISHOP, G. An introduction to the Kalman Filter. Cap. 4, p.19-24. Department of Computer Science, University of North Carolina at Chapel Hill(2001)

    [10] ROESSER, R. P. A discrete state-space model for linear image processing. IEEETransactions on Automatic Control AC-20, p. 1-10. (1975)

    Educacion - UNSA 14