proyecto fin de carrera - universidad de...

99
Equation Chapter 1 Section 1 Proyecto Fin de Carrera Ingeniería de Telecomunicación Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo Dpto. Teoría de la Señal y Comunicaciones Escuela Técnica Superior de Ingeniería Universidad de Sevilla Autor: David Diego Jiménez Fernández Tutoras: Irene Fondón García María Auxiliadora Sarmiento Vega Sevilla, 2018

Upload: others

Post on 09-Feb-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Equation Chapter 1 Section 1

Proyecto Fin de Carrera

Ingeniería de Telecomunicación

Seguimiento de jugadores en partidos de fútbol

mediante procesado de vídeo

Dpto. Teoría de la Señal y Comunicaciones

Escuela Técnica Superior de Ingeniería

Universidad de Sevilla

Autor: David Diego Jiménez Fernández

Tutoras: Irene Fondón García

María Auxiliadora Sarmiento Vega

Sevilla, 2018

Page 2: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo
Page 3: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

iii

Proyecto Fin de Carrera

Ingeniería de Telecomunicación

Seguimiento de jugadores en partidos de fútbol

mediante procesado de vídeo

Autor:

David Diego Jiménez Fernández

Tutoras:

Irene Fondón García

Profesora Contratada Doctora

María Auxiliadora Sarmiento Vega

Profesora Contratada Doctora Interina

Dpto. de Teoría de la Señal y Comunicaciones

Escuela Técnica Superior de Ingeniería

Universidad de Sevilla

Sevilla, 2018

Page 4: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo
Page 5: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

v

Proyecto Fin de Carrera: Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Autor: David Diego Jiménez Fernández

Tutoras: Irene Fondón García

María Auxiliadora Sarmiento Vega

El tribunal nombrado para juzgar el Proyecto arriba indicado, compuesto por los siguientes miembros:

Presidente:

Vocales:

Secretario:

Acuerdan otorgarle la calificación de:

Sevilla, 2018

El Secretario del Tribunal

Page 6: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo
Page 7: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

vii

A mi familia

Page 8: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo
Page 9: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

ix

Agradecimientos

Quisiera agradecer en este momento a todos los que me han arropado durante este largo viaje académico,

profesional y sobre todo personal, y que han hecho que consiga avanzar en esta etapa de mi vida.

En primer lugar, a las profesoras Irene Fondón y a María Auxiliadora Sarmiento por su apoyo y palabras de

ánimo, así como por su enorme paciencia comprendiendo mis circunstancias durante la realización del presente

proyecto.

Por supuesto, a mi familia: tanto a la que siempre ha estado, como a la que ha llegado, como a la que

desafortunadamente ya no puede estar. Lo sois absolutamente todo para mí, y cualquier frase aquí plasmada no

alcanzaría ni remotamente a expresar lo que habéis supuesto en mi vida.

Finalmente, a los amigos y demás compañeros de viaje, por ser como sois y soportarme como soy.

Gracias.

Page 10: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo
Page 11: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

xi

Resumen

Con el crecimiento exponencial de las fuentes de vídeo que vivimos en la actualidad, el análisis automático de

dicho contenido se ha convertido en una tarea imperativa. Un tipo particular de dichas fuentes de vídeo que

despierta un gran interés comercial son los deportes de equipo, y en especial el fútbol. En torno al análisis de los

datos provenientes de los partidos de fútbol se ha generado una industria que requiere una elevada toma de datos

de forma manual para obtener estadísticas y rendimiento de los jugadores. Estos datos son útiles para el público,

los medios de comunicación y los entrenadores.

Sin embargo, los deportes de equipo son actividades complejas para los sistemas de procesamiento de vídeo

debido a las amplias zonas en las que se desarrollan, los movimientos no lineales variables e impredecibles de

los jugadores, cambios de iluminación, sombras y perspectiva, y oclusiones causadas por las interactuaciones de

los jugadores propias del desarrollo del juego.

El presente proyecto se centra en la aplicación de distintas técnicas de procesado de imagen y vídeo para realizar

la detección y seguimiento de múltiples jugadores simultáneamente, con la particularidad de trabajar con fuentes

de vídeo reales proporcionadas por distintos equipos, con altos niveles de ruido y con situaciones complicadas.

A partir de esos datos de trayectorias unívocas de los jugadores en todo momento, se pueden obtener estadísticas

adicionales con potencial para analizar las tácticas, identificar patrones erráticos o significativos de dichos

jugadores, medir distancias recorridas, velocidades medias e instantáneas, generar mapas de calor, etc.

Page 12: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo
Page 13: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

xiii

Abstract

Nowadays, automatic analysis of video content has become a mandatory task due to the exponential growth of

video data sources. A specific kind of video data that has attained a lot of recent commercial interest are team

sports, specially soccer. Moreover, a whole industry has grown around data analysis of soccer matches. This

industry requires a high amount of manual labelling in order to get statistics and player performance data. The

so obtained data is very useful for the audience, broadcast media and of course, team coaches.

However, team sports are complex activities for automatic video processing systems because of wide playing

fields, non-linear messy movements of the players, illumination, cast shadows and perspective variations, and

occlusions caused by player interactions over the course of a game.

This project focuses on the application of various image and video processing techniques to achieve multitarget

detection and tracking of players, with the distinctive feature of using real video sources provided by different

soccer teams, with high cluttered and noisy situations.

From the extracted trajectories of the players, additional data can be inferred that is useful to analyse tactics, find

erratic patterns of the players, obtain distance travelled, average and instant speeds, create heatmaps, etc.

Page 14: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Prefacio

El seguimiento de múltiples objetivos automáticamente es un área en desarrollo dentro de la visión artificial que

tiene importancia fundamental en muchísimas aplicaciones. La motivación de este proyecto es intentar

profundizar un poco dentro de este vasto campo de investigación, materializando resultados en una aplicación

práctica.

Durante el desarrollo de este proyecto se pudo comprobar de primera mano el interés real que existe por parte

de clubes deportivos y empresas en este tipo de tecnologías y en la obtención de los datos de seguimiento de

jugadores y estadísticas de la forma más automatizada posible.

El objetivo por tanto se materializó en desarrollar y programar un marco de trabajo modular usando técnicas de

visión artificial que pusiera de manifiesto la viabilidad y la utilidad de los resultados obtenidos. El sistema debe

adaptarse a distintas fuentes de vídeo, ser resistente en la medida de lo posible a las oclusiones de los jugadores

y extraer y almacenar toda la información posible de las secuencias de vídeo utilizadas.

Durante el desarrollo del proyecto hubo que hacer frente a la dificultad de obtener secuencias de vídeo originales

para el estudio, por lo que se contó con la colaboración de clubes de fútbol de divisiones inferiores para la

conseguir estas grabaciones. No obstante, el hecho de no tener control sobre los parámetros específicos de estas

grabaciones desde un punto de vista de ingeniería provocó que las características de las secuencias con las que

había que trabajar distaran mucho de ser óptimas: perspectivas acentuadas, sombras prominentes, baja

resolución, vídeo no estabilizado, etc. Por lo tanto, un objetivo adicional del presente proyecto ha sido explorar

los límites de los requisitos necesarios y priorizar la modularidad y configuración del marco de trabajo heurístico.

Para hacer este sistema posible, se optó por programación C++ utilizando la librería de software libre de visión

artificial OpenCV para las tareas de bajo nivel, y se desarrollaron en esta plataforma los subsistemas de

configuración de los procesamientos efectuados, detección, clasificación, gestión de seguimiento multiobjetivo

y oclusiones, extracción de estadísticas, etc.

Finalmente, cabe mencionar que el trabajo desarrollado en el ámbito de este proyecto se prolongó en el tiempo

más allá del alcance aquí presentado trabajando en el seno de la Fundación Andaluza de la Imagen, el Color

y la Óptica - FAICO, y que ya se han adelantado varias de las líneas futuras de investigación y mejoras

propuestas al final del proyecto.

Page 15: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

xv

Índice

Agradecimientos ix

Resumen xi

Abstract xiii

Prefacio xiv

Índice xv

Índice de Tablas xvii

Índice de Figuras xix

Notación xxi

1 Introducción 1 1.1 Herramientas estadísticas tradicionales en el fútbol 2 1.2 Herramientas de seguimiento 3

2 Estado del arte 5 2.1. Bloques lógicos generales de un sistema de seguimiento 5

2.1.1 Detección 6 2.1.2 Clasificación 12 2.1.3 Seguimiento 13

3 Sistema Implementado 17 3.1 Resumen 17 3.2 Entrenamiento y preprocesamiento 19

3.2.1 Perspectiva 20 3.2.2 Homografía 20 3.2.3 Histogramas 23

3.3 Detección 24 3.4 Clasificación 27 3.5 Asignación 29 3.6 Seguimiento 30

3.6.1 Lógica de seguimiento de tracks individuales 32 3.6.2 Lógica de seguimiento de oclusiones 33

3.7 Homografía 36 3.8 Estadísticas deportivas 37

3.8.1 Mapas de calor 37 3.8.2 Líneas de fuera de juego posicionales 38 3.8.3 “Campogramas” 39 3.8.4 Medir cualquier distancia relativa 39

4 Resultados 41 4.1 Métricas utilizadas 41 4.2 Secuencias de vídeo estudiadas 44

4.2.1 Mairena - Conil 45

Page 16: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

4.2.2 Entrenamiento Mairena (Secuencia 04) 48 4.2.3 Sevilla - Córdoba (Secuencia 01) 51 4.2.4 España - Bolivia 54

5 Conclusiones 59

6 Líneas futuras 61

7 Anexo A – Otras secuencias 63 7.1 Mairena - Conil 63 7.2 Coria - Mairena 64 7.3 Mairena (Partido de Entrenamiento 11) 65 7.4 Sevilla – Córdoba (Secuencia 01) 67 7.5 Sevilla - Córdoba (Secuencia 02) 68 7.6 España – Bolivia (Movimiento de cámara) 70

8 Anexo B – Parámetros usados 71

Referencias 73

Índice de Conceptos 77

Page 17: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

xvii

ÍNDICE DE TABLAS

Tabla 3-1. Correspondencia de puntos para algunas homografías precalculadas. 22

Tabla 4-1.Mairena - Conil. Comparativa para un mismo fotograma de las distintas pruebas. 45

Tabla 4-2. Mairena - Conil. Precision, Recall y Accuracy de detector y de clasificador para los distintos criterios

de medida. 46

Tabla 4-3.Mairena - Conil. Estimadores del módulo de seguimiento de múltiples objetivos. 48

Tabla 4-4.Entrenamiento Mairena (Secuencia 04). Comparativa para un mismo fotograma de las distintas

pruebas. 49

Tabla 4-5. Entrenamiento Mairena (04). Precision, Recall y Accuracy de detector y de clasificador para los

distintos criterios de medida. 50

Tabla 4-6. Entrenamiento Mairena (04). Estimadores del módulo de seguimiento de múltiples objetivos. 51

Tabla 4-7.Sevilla - Córdoba (Secuencia 01). Comparativa para un mismo fotograma de las distintas pruebas.

52

Tabla 4-8.Sevilla - Córdoba (Secuencia 01). Precision, Recall y Accuracy de detector y de clasificador para los

distintos criterios de medida. 53

Tabla 4-9. Sevilla - Córdoba (Secuencia 01). Estimadores del módulo de seguimiento de múltiples objetivos.

54

Tabla 4-10.España - Bolivia. Comparativa para un mismo fotograma de las distintas pruebas. 55

Tabla 4-11.España - Bolivia. Precision, Recall y Accuracy de detector y de clasificador para los distintos criterios

de medida. 56

Tabla 4-12. España - Bolivia. Estimadores del módulo de seguimiento de múltiples objetivos. 57

Tabla 7-1.Mairena - Conil. Seguimiento lateral y cenital, relación de homografía, mapas de calor principales

63

Tabla 7-2.Mairena - Conil. Histogramas HS usados de entrenamiento. Equipo 1 (gris – azul), equipo 2 (amarillo

– azul), árbitro (rojo – negro). 64

Tabla 7-3.Coria-Mairena. Seguimiento lateral y cenital, relación de homografía, mapas de calor principales

64

Tabla 7-4.Coria - Mairena. Histogramas HS usados de entrenamiento. Equipo 1 (gris – azul), equipo 2 (blanco),

árbitro (rojo – negro). 65

Tabla 7-5.Mairena – Entrenamiento 11. Seguimiento lateral y cenital, relación de homografía, mapas de calor

principales 66

Tabla 7-6.Mairena – Entrenamiento 11. Histogramas HS usados de entrenamiento. Equipo 1 (gris – azul),

portero equipo 1 (rojo), equipo 2 (azul), árbitro (amarillo). 66

Tabla 7-7.Sevilla – Córdoba (Secuencia 01). Seguimiento lateral y cenital, relación de homografía, mapas de

calor principales 67

Tabla 7-8.Sevilla – Córdoba (Secuencia 01). Histogramas HS usados de entrenamiento. Equipo 1 (marrón),

equipo 2 (blanco), portero equipo 2 (rojo), árbitro (verde y negro). 68

Tabla 7-9.Sevilla – Córdoba (Secuencia 02). Seguimiento lateral y cenital, relación de homografía, mapas de

calor principales 69

Page 18: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Tabla 7-10.España – Bolivia (Movimiento de cámara). Seguimiento lateral y cenital, relación de homografía.

70

Tabla 7-11.España Bolivia. Histogramas HS usados de entrenamiento. Equipo 1 (blanco - verde), portero equipo

1 y árbitro (gris), equipo 2 (rojo). 70

Page 19: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

xix

ÍNDICE DE FIGURAS

Figura 1-1. Ejemplo de software comercial “Focus X2” de manejo de datos. 2

Figura 2-1. Bloques conceptuales básicos de sistema de seguimiento con procesado de vídeo. 5

Figura 2-2. Ejemplos de modelos de partes deformables, gradientes orientados, articulados y de densidades de

probabilidad. (Figura de [23]) 7

Figura 2-3. Superior: Conjunto acotado de contornos: movimiento de vacas ( [24]) .Inferior: Posibles siluetas de

jugadores (muchísimas más posibilidades). 8

Figura 2-4. Aplicación de detector de Canny a imagen. 9

Figura 2-5. Campo de vectores de movimiento de un peatón usando flujo óptico. 9

Figura 2-6. GMM + EM en acción. Los elementos móviles se van difuminando. 11

Figura 2-7. Izquierda: Detector de movimiento sin eliminación de sombras. Derecha: Con eliminación de

sombras. (Figura de [30]) 11

Figura 2-8. Proceso de etiquetado manual de muestras de una categoría u otra. Caso de jugador o no jugador.

(Figura de [31]) 12

Figura 2-9. SVM separando lo más posible dos categorías de entrenamiento, en este caso a partir de

características de espacio de color de la silueta objeto de la clasificación. 13

Figura 2-10. Modelo de movimiento de un único objetivo en 2D. 14

Figura 2-11. Consideración de la perspectiva en la distribución de probabilidad. 14

Figura 2-12. Esquema de movimiento y remuestreo de partículas convergiendo al seguir a un objetivo. 15

Figura 2-13. Representación de Mean-Shift Tracking buscando minimizar la función de similitud de un objetivo

móvil. 16

Figura 3-1. Bloques conceptuales implementados para el sistema de seguimiento con procesado de vídeo.

19

Figura 3-2. Modelo de proyección de la cámara para compensar la perspectiva introducida. 20

Figura 3-3. Imagen con proporciones estándar de campo de fútbol utilizada para proyectar el plano cenital.

21

Figura 3-4. Cambios de iluminación afectan a todo el RGB, mientras que solo afectan al Valor de HSV. 23

Figura 3-5. Contornos típicos de entrenamiento. 23

Figura 3-6. Izquierda: fotograma inicial. Derecha: detector de terreno de juego con condiciones ideales según

[34]. 24

Figura 3-7. Arriba: fotograma inicial. Abajo: distintos de detectores de terreno sin resultados satisfactorios.

24

Figura 3-8. Operaciones morfológicas para detectar jugadores en movimiento tras eliminar sombras. 25

Figura 3-9. Empeoramiento del problema de las sombras por mala morfología, causando gran oclusión

innecesaria. 26

Figura 3-10. Comparación de histogramas HS de detecciones individuales con los precalculados. (Figura de

[16]) 27

Page 20: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Figura 3-11. Detalle de imagen: Dificultad en la clasificación de equipos de distintas categorías. 28

Figura 3-12. Salida de la clasificación a partir del bloque detector. 28

Figura 3-13. a) Asignación basada en el vecino más cercano. No consigue el mejor mínimo global de la

asignación de costes. b) Programación lineal, M = N, se alcanza el mínimo global de asignación. 29

Figura 3-14. Izquierda: Solución de la minimización global de costes en el problema de asignación en el grafo

bipartito. Derecha: Aplicación práctica con dos tracks que se encuentren en la función de densidad de

probabilidad elipsoidal asignados a las detecciones rectangulares correspondientes. 30

Figura 3-15. El jugador más cercano al plano imagen puede recorrer en dirección x el campo de visión en tres

zancadas. Ese mismo jugador en la banda opuesta necesitaría unas diez veces más, aunque fuera a la misma

velocidad. Los tracks del fondo a medida que aumenta la coordenada y deben “ralentizarse”. 31

Figura 3-16. Secuencia recién comenzada. Empieza a haber detecciones de los que se han movido (no todos),

pero no hay tracks dado que están esperando confirmación consecutiva. 32

Figura 3-17. Izquierda: La zona de exclusión del árbitro (“1 amarillo”) impide que se inicie un track rojo por

una mala clasificación. Derecha: el jugador “4 marrón” no está detectado pero su track aguanta su identidad

cierto número de fotogramas antes de correr peligro. 33

Figura 3-18. Caso de uso de detector y seguimiento de oclusiones y cómo afecta a los tracks individuales.

35

Figura 3-19. Efecto de la proyección de todos los tracks y sus estelas desde un plano imagen sobre un plano

cenital usando la matriz de proyección calculada desde el principio de la secuencia. 36

Figura 3-20. Efecto pernicioso de la perspectiva sobre la zona de extrapolación de la proyección (el plano más

alejado del plano imagen), a pesar de tener en cuenta el escalado lineal, el Eje Y’ del plano cenital es muy

sensible a las más mínimas perturbaciones del Eje Y del plano imagen. 37

Figura 3-21. Ejemplos de mapas de calor con distribución “Colorscale Jet” obtenidos de algunas secuencias.

38

Figura 3-22. Ejemplo de cómo las líneas de fuera de juego posicionales evolucionan con el estado de los

jugadores. En esta secuencia, la línea virtual izquierda queda delimitada por el jugador “marrón” más a la

izquierda, mientras que la línea virtual derecha queda delimitada por el jugador “blanco” más a la derecha.

38

Figura 3-23. Ejemplo de campogramas obtenidos en tiempo real a partir de las posiciones de los objetivos de la

escena. 39

Figura 3-24. Ejemplo de medición de distancia en el plano cenital y reproyección de esa información de vuelta

hacia el plano imagen. 39

Figura 4-1. Ejemplos concretos de errores y aciertos de detector y clasificador. Izquierda: Imagen de entrada con

los resultados de ambos bloques. Derecha: figuras detectadas tras el proceso de clasificación rodeadas por un

rectángulo del color elegido, o rellenas de rojo si clasificación no concluyente. 43

Figura 4-2. Falso jugador mal clasificado debido al constante movimiento de la cámara. 56

Page 21: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

xxi

Notación

FPS

RGB

Frames per second

Red, Green, Blue

HSV Hue, Saturation, Value

TP True Positive

TN True Negative

FP False Positive

FN False Negative

MT Mostly Tracked

PT Partially Tracked

ML Mostly Lost

IDS Identifier Switch

FRMT Fragmentations

sen Función seno

sinxy Función seno de x elevado a y

cosxy Función coseno de x elevado a y

Sa Función sampling

sgn Función signo

rect Función rectángulo

Sinc Función sinc

∂y ∂x

x◦

Derivada parcial de y respecto

Notación de grado, x grados.

Pr(A) Probabilidad del suceso A

SNR Signal-to-noise ratio

MSE Minimum square error

: Tal que

< Menor o igual

> Mayor o igual

⇔ Si y sólo si

Page 22: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo
Page 23: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

1

1 INTRODUCCIÓN

as técnicas y algoritmos de visión artificial de detección y seguimiento automático de múltiples objetivos

han sufrido una revolución y un desarrollo sin precedentes en los últimos años. Además, se ven

acompañadas de una evolución tecnológica que permite abordar problemas computacionalmente

impensables hace relativamente poco tiempo y por si no fuera suficiente, las aplicaciones de este tipo de técnicas

no dejan de crecer debido al desarrollo de otros tipos de tecnologías paralelas y la aparición de nuevas

necesidades, como por ejemplo los drones, vehículos autónomos, control de multitudes, control de tráfico y

flujos migratorios, etc.

Paralelamente, un campo en principio lúdico que ha demostrado un especial interés en estas técnicas es el de las

retransmisiones deportivas. Los espectadores cada vez son más ávidos de estadísticas, parámetros e información,

y los medios de comunicación desean el nicho de mercado de poder facilitarla de forma comercial. Los

entrenadores buscan maximizar el rendimiento y tener toda la información posible para poder tomar decisiones

en tiempo real e incluso predecir lances del juego, y planificar estrategias y entrenamientos futuros.

No obstante, a pesar de todos los avances, el seguimiento automático total y preciso de múltiples objetivos sigue

siendo un campo en desarrollo sin una solución óptima cerrada válida para todos los casos. Esta dificultad se ve

incrementada en el caso de los deportes colectivos debido a la propia naturaleza de estos:

• La región de análisis es muy amplia pero los objetivos del seguimiento ocupan poco espacio relativo.

• La propia captura de imagen de una región tan amplia implica la introducción de una notable

perspectiva, lo cual provoca que un mismo objetivo tenga tamaños y velocidades muy dispares para el

sistema de visión según la posición del campo donde se encuentre.

• Tiende a haber muchas aglomeraciones, oclusiones e interactuaciones entre los objetivos del

seguimiento.

• Condiciones muy variables de iluminación y sombras entre distintos eventos deportivos y dentro de un

mismo evento.

• Los movimientos son inherentemente no lineales, bruscos e impredecibles porque se busca engañar al

rival. Esto no solo implica la ausencia de patrones en el seguimiento, sino en la propia detección de los

objetivos debido a los cambios de pose.

Uno solo de los motivos anteriores bastaría para complicar bastante la tarea de un sistema de seguimiento

multiobjetivo. Todos ellos a la vez suponen un gran reto que implica explotar todas y cada una de las propiedades

que se pueda para acotar el problema de la detección y el seguimiento multiobjetivo con garantías.

L

Page 24: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Introducción

2

Por la repercusión mediática del fútbol se decidió elegir este deporte de equipo para desarrollar el marco de

trabajo de este proyecto. A continuación, se comentarán por encima las funcionalidades y la evolución de los

sistemas comerciales1 específicos para este deporte a medida que aumentaba la demanda y la tecnología se

introducía en este campo.

1.1 Herramientas estadísticas tradicionales en el fútbol

Las industrias audiovisual, periodística y deportiva llevan años buscando métodos y tecnologías capaces de

generar nuevas estadísticas y sus formas de presentación, tanto para el público como para los propios

entrenadores [1].

Tradicionalmente las soluciones utilizadas han consistido en potentes herramientas de anotación manual y bases

de datos que permiten a los analistas ir tomando registros de todos los eventos que se consideren de interés para

el juego revisando las distintas secuencias de vídeo prácticamente fotograma a fotograma. Con todos estos datos

introducidos en el sistema, se pueden generar gráficas de todo tipo, dibujar y editar los vídeos para señalar las

jugadas deseadas, y mantener estadísticas de cada uno de los jugadores por separado [2].

Figura 1-1. Ejemplo de software comercial “Focus X2” de manejo de datos.

Ejemplos de estos sistemas los encontramos en las soluciones comerciales:

• SportsCode

• Nacsport

• Dartfish

• ER1C

• Focus X2

1 Las soluciones comentadas no son gratuitas y no se han podido probar de primera mano, sino que la información ha sido extraída de la publicidad de estos productos.

Algunos creen que el fútbol es cuestión de vida o

muerte… Yo os aseguro que es mucho más que eso.

- Bill Shankly -

Page 25: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

3

3 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

• LongoMatch

• Instat Football

• SoccerLAB

Huelga decir que son soluciones que requieren de un trabajo manual exhaustivo con decenas de personas

estudiando los vídeos pormenorizadamente e introduciendo los datos de interés, lo cual propició que la visión

artificial fuera una evolución natural de estos sistemas.

1.2 Herramientas de seguimiento

Una vez demostrado el interés de la industria por la obtención de los datos de monitorización de los jugadores,

se comenzaron a desarrollar sistemas capaces de utilizar algunas técnicas de visión artificial integradas dentro

de sistemas más complejos que aúnan otras fuentes de información como pueden ser sensores portados por los

propios jugadores (wereables) o el balón.

Requieren una gran inversión dado que despliegan alrededor del estadio objeto de estudio un conjunto de

múltiples cámaras de alta definición con una estructura de red capaz de capturar y almacenar todo el partido

desde un punto de vista más adecuado para su posterior procesado que desde un punto de vista de retransmisión

deportiva, por tanto están más orientados a extraer información para los entrenadores que para los espectadores.

Ejemplos de estos sistemas los encontramos en las soluciones comerciales [3]:

• TRACAB

• ProZone (STATS Company)

• AmiscoPro (STATS Company)

A pesar de ser sistemas de progresiva introducción en escenarios reales, son costosos y aún no existen aquellos

completamente automatizados capaces de funcionar sin intervención humana y ofrecer datos precisos en todas

las circunstancias del juego y condiciones de iluminación. Por tanto, constantemente se requieren

recalibraciones, correcciones de errores y entrada manual de datos [4].

Page 26: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo
Page 27: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

5

2 ESTADO DEL ARTE

continuación procederemos a analizar brevemente algunas de las técnicas de visión artificial

desarrolladas en trabajos previos dentro de los campos de la detección y el seguimiento de objetivos. No

obstante, debe quedar claro que su estudio pormenorizado está mucho más allá del alcance del presente

proyecto, dado que la literatura de estos campos es vastísima y no deja de crecer continuamente debido a ser

campos en investigación activa, no existir soluciones cerradas y poseer muchísimo interés dentro de la visión

artificial. En concreto, hablaremos únicamente de las técnicas más relevantes utilizadas para seguir el

movimiento de deportistas basadas en algunas de las estudiadas con profundidad en [5].

2.1. Bloques lógicos generales de un sistema de seguimiento

Seguir de forma satisfactoria a uno o varios objetivos en una secuencia de vídeo consiste en mantener su

identidad a lo largo del tiempo, evitando que dicha identidad se varíe o se confunda con otro objetivo distinto al

seguido. Por lo tanto, es sencillo comprender que para que esto sea posible un paso previo importante es ser

capaces de saber a qué objetivos hay que seguir, distinguiéndolos de todo aquello que no sean objetivos (como

por ejemplo el fondo de la imagen). En el caso del seguimiento multiobjetivo, además hay que establecer algún

tipo de criterio que haga distintos a los objetivos los unos de los otros.

Conceptualmente, los bloques funcionales del sistema de seguimiento mediante procesado de vídeo son los

siguientes:

Figura 2-1. Bloques conceptuales básicos de sistema de seguimiento con procesado de vídeo.

• Detección: Antes de realizar ningún tipo de seguimiento a través de los fotogramas del vídeo es

inevitable tener que obtener un conjunto de detecciones de los objetivos de interés lo más preciso

posible. Para ello es necesario definir en el contexto de nuestro sistema qué es un objetivo, y qué lo hace

distinguible de los demás para poder encontrarlo en sucesivos fotogramas. Para ello, en la literatura se

han utilizado tradicionalmente descriptores de color [6], forma [7], modelos de apariencia [8], plantillas

de jugadores [9], etc.

• Clasificación: Una vez que se conocen para cada fotograma los posibles objetivos que hay que seguir,

hay que segmentarlos con el fin de establecer sus categorías. En el tipo de vídeos con el que

trabajaremos, nos encontramos habitualmente con cinco categorías básicas de objetivos desplazándose

por el terreno de juego, distinguibles principalmente por los colores de las equipaciones que visten:

A

Detección Fotogramas

de vídeo

Clasificación Seguimiento

Page 28: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Estado del arte

6

equipo 1, portero del equipo 1, equipo 2, portero del equipo 2, y árbitros. Existen trabajos anteriores que

han intentado en mayor o menor medida afinar más este tipo de segmentación utilizando cámaras

específicas de alta resolución siguiendo primeros planos de los jugadores con el fin de identificar sus

caras en una base de datos [10] [11], o utilizar un OCR2 sobre los números de sus camisetas [12] [13],

pero suelen ser soluciones mucho más complejas y que no siempre mejoran notablemente los resultados

al introducir muchas complicaciones al sistema de seguimiento en caso de una identificación errónea.

En la práctica suele bastar con utilizar histogramas de color [14], los cuales son representaciones de los

distintos valores de intensidad del color en sus distintas componentes en alguno de los espacios de color

habituales como RGB [15] o HSV [16]. Comparando la información del color de cada uno de los

objetivos usando algún tipo de clasificador de métrica sencilla, otros medios algo más complejos como

la agrupación de píxeles mediante el desplazamiento de media [17] u otro tipo de clasificadores como

máquinas de vectores de soporte se consigue la clasificación por categorías de cada uno de los objetivos

• Seguimiento: El seguimiento implica mantener una identidad a lo largo del tiempo a partir de una

detección previa o actual, de forma que la evolución del estado del objeto y del sistema permitan

emplear las estimaciones anteriores como base para las futuras. Como ya se ha comentado previamente,

es necesario estudiar el conjunto de fotogramas dado que en imágenes estáticas no tiene sentido hablar

de seguimiento de objetivos propiamente dicho. Por el contrario, en secuencias de vídeo, la detección y

el seguimiento suelen ir inherentemente juntas. Gracias a ello, realizar un seguimiento del objetivo en

un entorno ruidoso3 mejora los resultados con respecto a utilizar únicamente detecciones instantáneas

en el fotograma actual. Algunas de las técnicas más profusamente utilizadas son aquellas basadas en el

filtro de Kalman [18] [19], filtro de partículas [16] [15], evolución de kernel [20] o seguidores de mapa

de ocupación probabilística [21] [22].

A continuación, entraremos un poco en detalle en cada uno de estos grandes grupos funcionales.

2.1.1 Detección

Los objetivos dentro del campo del seguimiento no dejan de ser más que elementos que son de interés para

extraer más información de ellos. Ya ha quedado claro que el paso previo a poder seguir los distintos objetivos

es detectarlos, pero es bastante razonable que antes de abordar la detección se tenga claro cómo poder describir

y representar dichos objetivos para que el sistema sea capaz de encontrarlos.

Según [5], las formas básicas de describir objetos para que sean útiles para la visión artificial se pueden agrupar

en las siguientes:

• Puntos: El objeto queda representado por un punto característico (centroide, centro de su base, etc.) o

un conjunto de ellos.

• Formas geométricas: por ejemplo, un rectángulo o elipse que envuelva al objeto.

• Contornos y siluetas, que dan lugar a representaciones no rígidas.

• Modelos articulados y esqueléticos, que determinan las relaciones entre distintas partes del objeto.

2 Optical Character Recognition: Detector Óptico de Caracteres. 3 Entiéndanse fuentes de ruido que afecten tanto a las detecciones como al seguimiento, por ejemplo: iluminación, sombras, artefactos de vídeo, oclusiones, entradas y salidas de escena, etc.

Page 29: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

7 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Figura 2-2. Ejemplos de modelos de partes deformables, gradientes orientados, articulados y de densidades

de probabilidad. (Figura de [23])

También existen formas de combinar la forma de representación con la apariencia del objetivo, dando lugar a

otro tipo de descriptores complejos como pueden ser:

• Densidades de probabilidad de apariencia, con las que se estudia alguna propiedad paramétrica (por

ejemplo, distribuciones gaussianas) o no paramétricas (como histogramas) en las regiones de los

objetivos delimitados por los descriptores anteriores.

• Plantillas: directamente englobadas por formas geométricas sencillas, contienen toda la información

tanto espacial como de apariencia del objetivo y son muy útiles si el objeto buscado coincide

exactamente con ella, pero pierden utilidad rápidamente a medida que el objeto en el transcurso del

seguimiento cambie hasta el punto de no coincidir con su plantilla.

• Modelos de apariencia activa: son aquellos en los que se guarda un vector de relaciones entre puntos

característicos específicos de un objeto y se detecta el objeto buscando un conjunto de puntos que

satisfaga dichas asociaciones.

• Modelos multivista: Pueden ser una generalización de los anteriores en el sentido de que se calculan

de antemano todas las posibles apariencias que se van a estudiar en siguientes etapas. A pesar de su

potencia, tienen la desventaja de tener que conocer todas las relaciones en todas las perspectivas a priori.

Como ejemplo que ayude a ilustrar de forma práctica lo anterior, [24] utiliza las combinaciones de movimientos

posibles en vacas para establecer un seguimiento de estas y poder estudiar irregularidades en sus patrones de

desplazamiento. No obstante, la variabilidad que presentaría este caso en el análisis del seguimiento de jugadores

en un deporte como el fútbol complicaría muchísimo este paso de detección que estamos estudiando.

Page 30: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Estado del arte

8

Figura 2-3. Superior: Conjunto acotado de contornos: movimiento de vacas ( [24]). Inferior: Posibles siluetas

de jugadores (muchísimas más posibilidades).

En el caso concreto de trabajar con las siluetas, plantillas o contornos activos, la dimensionalidad del problema

de detectar a los jugadores se dispara y son necesarias otro tipo de técnicas como por ejemplo PCA (Análisis de

Componentes Principales) para agruparlas y simplificarlas [25].

De cara a encontrar características unívocas entre los que serán los objetivos del seguimiento y todo aquello que

no lo sea, las distintas técnicas buscan explotar aquellas propiedades que mejor describan las representaciones

explicadas anteriormente. Muchos algoritmos utilizan distintas mezclas de características para conformar un

espacio de estados en el que buscar las similitudes que determinen a los objetivos, a la vez que procuran

maximizar las diferencias que permiten distinguirlos entre sí y del fondo de la escena. Los más frecuentes según

[5] son:

• Color: El color de un objeto es el resultado de la distribución espectral de potencia del elemento que

origina la iluminación, del medio que atraviesa dicha luz, y de las propiedades reflectantes del objeto

iluminado. El más habitual es el conocido como modelo RGB4, aunque no tiene la propiedad de respetar

las diferencias percibidas por el ojo humano a medida que nos desplazamos por los valores de sus

componentes. Otros modelos también usados en la literatura son el HSV5, L*u*v*, L*a*b*, etc. Es un

descriptor muy potente y frecuente, pero tiende a ser poco robusto ante cambios de iluminación.

• Fronteras: El contorno de un objeto suele ser una frontera de separación entre intensidades cercanas.

Algunas técnicas de filtrado de imagen son capaces de medir estos cambios de intensidad en distintas

direcciones para poner de manifiesto los bordes de los objetos, siendo la más famosa de ellas el detector

de Canny.

4 Red, Green, Blue: Rojo, verde y azul. 5 Hue, Saturation, Value: de matiz, saturación y valor

Page 31: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

9 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Figura 2-4. Aplicación de detector de Canny a imagen6.

• Textura: mide variaciones de intensidad en la imagen a partir de las cuales se obtienen propiedades

derivadas como rugosidad, suavidad, patrones repetitivos, etc. Posee la ventaja de ser bastante resistente

a cambios de iluminación, pero de cara a su uso para detectar jugadores en secuencias de vídeo no es

una elección adecuada. Podría no obstante usarse para detectar el terreno de juego debido al patrón

repetitivo de la hierba del campo, por ejemplo.

• Flujo óptico: Es una técnica para medir las variaciones de intensidad de la matriz de píxeles de la

imagen, obteniendo múltiples vectores de desplazamiento por regiones entre fotogramas consecutivos.

No obstante, su uso requiere muchísimas optimizaciones dado que es computacionalmente muy

intensivo. Tiene también aplicaciones estabilizando la cámara si esta sufriera perturbaciones.

Figura 2-5. Campo de vectores de movimiento de un peatón usando flujo óptico7.

• Diferencia de fotogramas: surgida como contrapartida al flujo óptico para aportar una reducida carga

computacional, se basa en ir restando las imágenes de la secuencia de vídeo entre sí, de forma que cada

píxel que posea una diferencia inferior a un umbral será clasificado como “fondo”. Sin embargo, es

muy débil a cualquier tipo de ruido que ocurra en la escena y la selección de dicho umbral cambia

mucho los resultados.

La selección de características del detector es una tarea crítica que condiciona los siguientes módulos del sistema

6 Imagen de https://en.wikipedia.org/wiki/Canny_edge_detector 7 Imagen de http://crcv.ucf.edu/projects/Abnormal_Crowd/

Page 32: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Estado del arte

10

de seguimiento, y hay trabajos orientados a desarrollar sistemas capaces de elegir de forma automática las

características o mezcla de ellas óptimas en cada momento, de forma que se maximice la información extraída

de ellas. Por ejemplo, han surgido técnicas de clasificación automática de clasificadores menos robustos, de

forma que todos ellos operando a la vez de forma ponderada ofrezcan el mayor rendimiento posible [26].

Además, en torno a todos los descriptores y características anteriormente introducidas en este epígrafe han

surgido multitud de técnicas y algoritmos que han desarrollado toda una nueva disciplina dentro de la visión

artificial como es la clasificación de patrones y la detección de características8. En concreto, los Histogramas

de Gradientes Orientados [27] han suscitado mucho interés y han sido utilizados para detectar y clasificar con

éxito distintos tipos de objetos. Existen bases de datos ya entrenadas de peatones, y aunque sus características

no se adaptan adecuadamente al problema de los jugadores (no suelen ir corriendo ni encontrarse en poses

forzadas), nada impediría entrenar un sistema detector de jugadores a partir de las suficientes muestras.

Sin embargo, hay todo un abanico de características del que aún no hemos hablado y que podemos explotar dado

que estamos trabajando con secuencias de vídeos que presentan las peculiaridades y dificultades explicadas en

capítulos anteriores, entre otras:

• Jugadores pequeños comparados con su entorno.

• Indistinguibles entre sí en las secuencias con las que trabajamos.

• Formas extremadamente variadas.

• Terreno de juego al aire libre con condiciones de iluminación que hacen extremadamente difícil utilizar

el color como método de detección (aunque será imprescindible para la clasificación como ya veremos).

• Se desean tiempos de procesamiento reducidos.

Dicha peculiaridad que nos vemos obligados a explotar de cara a tener detecciones fiables en las secuencias de

vídeo con las que trabajaremos es la evolución temporal del sistema objeto de estudio, o dicho de otra forma, el

hecho de que nuestros objetivos de interés se mueven, pero nuestras cámaras son estáticas.

Inspirados por los avances anteriores de flujo óptico y diferencia de fotogramas, surgieron técnicas de

eliminación de fondo (Background Subtraction), en la que se usa una imagen de referencia para computar la

diferencia entre el fotograma actual y dicha imagen, de forma que todo lo que se haya movido aparezca resaltado.

Una de las formas más comunes de eliminación del fondo es el promediado del fondo [28], aunque tiende a

producir estelas en los objetos que se van moviendo, perturbando mucho las medidas. Una alternativa mucho

más avanzada es la propuesta por Stauffer [29], modelando cada píxel mediante un Modelo de Mezcla de

Gaussianas (GMM), actualizando cada píxel con nuevas gaussianas durante la ejecución y el transcurso de

fotogramas.

La probabilidad de que un píxel pertenezca al fondo es:

𝑝(𝒙𝑛|𝑓𝑜𝑛𝑑𝑜) = ∑ 𝑤𝑗

𝐽

𝑗=1

ζ𝑗

(2–1)

donde J es el número de distribuciones gaussianas, wj es el peso de ponderación de cada una de ellas para dicho

píxel, y ζ𝑗 es la componente j-ésima gaussiana definida a partir de su media 𝜇𝑗 y matriz de covarianzas 𝛴𝑗 como:

ζ𝑗(𝑥𝑛; 𝜇𝑗, 𝛴𝑗) =1

(2𝜋)𝐽/2|𝛴𝑗|1/2 𝑒−1

2(𝑥−𝜇𝑗)𝐽 ∑ (𝑥−𝜇𝑗)−1

𝑗 (2–2)

8 Se recomienda encarecidamente la lectura de [5] y [14] para una profusa taxonomía y explicaciones.

Page 33: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

11 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Este método es lo bastante robusto como para entornos de exterior dado que maneja bien los cambios moderados

de iluminación. Tiene la contrapartida de ser algo más intenso computacionalmente, pero con la evolución

tecnológica de la que hablábamos en la introducción de este proyecto hoy en día se puede usar perfectamente en

aplicaciones de tiempo real. Una versión de este algoritmo se encuentra implementada en la librería OpenCV y

se utiliza frecuentemente en investigación. Esta versión utiliza un algoritmo de para encontrar estimadores de

máxima verosimilitud (EM - Expectation Maximization) para que la fase inicial de aprendizaje que transcurre

durante los primeros fotogramas del vídeo converja rápidamente, para posteriormente comenzar a funcionar de

forma recursiva actualizando el modelo del fondo del terreno de juego.

Figura 2-6. GMM + EM en acción. Los elementos móviles se van difuminando.

Existe un compromiso entre la frecuencia a la que se actualiza el modelo del fondo, y la frecuencia con la que

un objeto que se mueve lentamente o no se mueve es asignado a dicho fondo. Esto es particularmente importante

en el caso de los jugadores que se muevan poco (como por ejemplo los porteros), que tenderán a fusionarse con

el fondo y desaparecer si permanecen estáticos mucho tiempo.

Además, al utilizar esta técnica, surge un problema importante que hay que resolver: las sombras de los objetos

móviles también se mueven. De hecho, en función de la perspectiva del plano imagen con respecto al plano de

movimiento y del origen de las fuentes de iluminación, dichas sombras pueden ser incluso mucho mayores que

los propios objetos que estamos buscando detectar. Afortunadamente se han desarrollado muchos estudios cuyo

objetivo es minimizar este efecto [30]. En la figura siguiente, a pesar de no poseer sombras prominentes, se

aprecia el efecto dramático de estas sobre el detector. En las circunstancias de iluminación que nos

encontraremos en los partidos de fútbol este efecto es muchísimo mayor.

Figura 2-7. Izquierda: Detector de movimiento sin eliminación de sombras. Derecha: Con eliminación de

sombras. (Figura de [30])

Page 34: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Estado del arte

12

2.1.2 Clasificación

Una vez que para cada fotograma se han obtenido todas las siluetas (o blobs en inglés) que más probablemente

se correspondan con nuestros objetos de estudio, el siguiente paso es categorizar o segmentar cada una de las

detecciones para establecer grupos que compartan información entre sí.

Por la particularidad del fútbol, aunque los jugadores tienen posiciones iniciales habituales, ningún jugador tiene

una posición fija en el campo que haga que la existencia de una detección en dicha zona le confiera

automáticamente la pertenencia a un grupo concreto. Esta característica espacial sí se podría aprovechar en otros

deportes como tenis o voleibol, pero no en este deporte.

En el caso que nos atañe, las únicas categorías que podemos utilizar son las correspondientes a ambos conjuntos

de vestimentas y de forma opcional los dos porteros y los árbitros en caso de aparecer en la escena. Por ello, los

clasificadores que se utilicen deberán basarse en la clasificación de color como información principal.

Siguiendo la exhaustiva revisión de [5], encontramos distintos clasificadores usados habitualmente:

• Desplazamiento de la media (Mean-Shift) [17]: Para cada imagen, se elige un número de puntos dentro

del espacio de color y se desplaza un elipsoide multidimensional a la media de cada una de las

agrupaciones de colores. El vector de desplazamiento de medias se procesa iterativamente hasta que

cada una de las agrupaciones deja de variar, momento en el que el algoritmo ha convergido. Esto reduce

significativamente las dimensiones del espacio de color de la detección, siendo capaces asignar el

resultado a una categoría.

• Aprendizaje supervisado: El objetivo de estas técnicas es asignar numerosas muestras de forma

manual a una o a otra categoría, de forma que cuando llegue una nueva muestra sin clasificar, en función

de los descriptores extraídos durante el entrenamiento con las muestras previas, el sistema otorgue una

etiqueta de clasificación a la silueta específica. El concepto es fácil de visualizar si pensamos en los

casos previos de detección como se ilustra en la siguiente figura, en la que se entrena un sistema con

muestras de “jugador” y muestras de “no jugador”, pero es igualmente válido para el caso de separación

de colores (esta silueta pertenece a cierto color o a otro):

Figura 2-8. Proceso de etiquetado manual de muestras de una categoría u otra. Caso de jugador o no jugador.

(Figura de [31])

Dentro de este campo nos encontramos las categorías de redes neuronales (en las que una función de

propagación y transferencia actúan ponderadas por los pesos de las salidas de cada uno de los pasos de

decisión), o máquinas de vectores de soporte (SVM – Support Vector Machines), las cuales maximizan

la distancia de las muestras a un hiperplano de separación de características para obtener la clasificación

más robusta posible de las nuevas muestras que lleguen.

Page 35: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

13 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Figura 2-9. SVM separando lo más posible dos categorías de entrenamiento, en este caso a partir de

características de espacio de color de la silueta objeto de la clasificación.9

2.1.3 Seguimiento

Finalmente llegamos al apartado de seguimiento de objetivos, o como es conocido habitualmente incluso en la

literatura no anglosajona, “Tracking”. Como ya introdujimos al inicio de este capítulo, tras haber detectado los

objetos móviles y haberles asignado una categoría de clasificación, hay que mantener la identidad constante y

almacenar las trayectorias a lo largo de todos los fotogramas en los que aparezcan cada uno de los objetivos. La

información extraída de todos los objetos móviles visibles en el plano de la imagen10 consiste en la posición,

velocidad, tamaño, color, etc., y es información que se utilizará para hacer evolucionar el sistema a medida que

avanza el tiempo haciendo predicciones en caso de entornos ruidosos. Es el hecho de que los sensores de vídeo

siempre introduzcan ruido y de que haya interacciones complejas entre objetivos el motivo por el cual solo

comentaremos los métodos estadísticos más habituales dentro de la literatura del seguimiento de objetivo,

dejando a un lado los modelos deterministas y de emparejamiento directo de plantillas.

2.1.3.1 Filtro de Kalman

Una de las herramientas matemáticas más famosas para el seguimiento de objetos es el filtro de Kalman [18]

[19], el cual supuso una revolución en múltiples campos de la ingeniería. En él, un sistema dinámico (un jugador

en nuestro caso) se modela mediante una ecuación de transición de estado lineal y una ecuación de medida. Se

supone que hay ruido gaussiano independiente en ambas ecuaciones. Este filtro permite de forma dinámica

calcular los valores del vector de estados, asegurando la solución óptima en estas condiciones.

Hay dos pasos dentro del filtro de Kalman:

• Fase de predicción: extrapola la nueva posición del objetivo que se obtendría en el siguiente paso futuro

del modelo de transición de estados. Esta predicción puede a su vez asociarse con una nueva medida en

el siguiente fotograma para afinar la precisión del seguimiento.

• Fase de actualización: se utiliza la detección de este paso como medida para actualizar y corregir el

estado del filtro en el instante actual.

9 Imagen de https://thedatalass.com/2018/02/26/support-vector-machine/ 10 Notablemente afectada por el efecto de la perspectiva de la cámara al capturar la imagen.

Page 36: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Estado del arte

14

El filtro de Kalman por tanto modela la función de distribución de probabilidad de la medida del objetivo móvil

como una gaussiana. En efecto, bajo la suposición de que la probabilidad de encontrar al objetivo en el fotograma

siguiente satisface esta distribución con respecto a la posición en la que se encuentra ahora, este tipo de

seguimiento ofrece resultados muy prometedores.

Figura 2-10. Modelo de movimiento de un único objetivo en 2D.

Además, a la hora de usar este tipo de filtros predictivos de Kalman, hay que tener en cuenta un par de

consideraciones adicionales:

• En una imagen real, la perspectiva del plano imagen hace que la distribución de movimiento no sea una

gaussiana 2D ideal dado que el objetivo cambia de tamaño proporcionalmente a medida que se desplaza

en el eje vertical de la imagen e incluso de velocidad aparente, aunque su velocidad real siguiera siendo

la misma. Esto hace que la curva de probabilidad tienda levemente a ser más una elipse. En la siguiente

figura vemos de forma acentuada este efecto. Sobre cómo afecta la profundidad a las distintas medidas

del seguimiento hablaremos en el siguiente capítulo (Punto 3.2.1), pero si la tasa de fotogramas por

segundo es adecuada, la suposición para un objetivo sigue siendo apropiada.

Figura 2-11. Consideración de la perspectiva en la distribución de probabilidad.

• Además, dado que el filtro de Kalman solo funciona adecuadamente con distribuciones gaussianas, no

puede utilizarse directamente como tal en escenarios multiobjetivo dado que habría que modelar un

número variable y desconocido de distribuciones de probabilidad a priori sobre un espacio de estados

de dimensión desconocida. La forma de abordar esta fuerte limitación es utilizar un banco dinámico de

filtros de Kalman, como ya se comentará en el apartado 3.6.

Page 37: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

15 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

2.1.3.2 Filtro de Partículas

En general, los filtros de partículas o de “Condensación”11 son una extensión de los métodos de Monte Carlo,

gracias a los cuales se puede aproximar cualquier distribución multimodal con un gran conjunto de partículas12

[32] que de forma probabilística convergen en cada uno de los objetivos a los que siguen. Gracias a esto, no es

necesario añadir lógicas adicionales que coordinen los distintos objetivos, dado que cada uno de ellos mantiene

su identidad a lo largo del tiempo gracias al elevado número de “partículas” que se van relanzando y

remuestreando cada fotograma hasta converger sobre la nueva posición de las detecciones de sus objetivos.

En la siguiente figura apreciamos cómo, tras producirse un movimiento de un objetivo, la distribución de

probabilidad (que no tiene por qué ser gaussiana) se remuestrea y converge en otra, de forma que el objetivo

sigue localizado.

Figura 2-12. Esquema de movimiento y remuestreo de partículas convergiendo al seguir a un objetivo.

Los filtros de partículas a pesar de ser muy versátiles y potentes rastreando movimientos abruptos, y están

viviendo una explosión de investigación creciente, pero no están exentos de problemas. En concreto sufren en

los siguientes aspectos:

• Necesitan una gran cantidad de partículas para funcionar correctamente en entornos multiobjetivo, por

lo que su carga computacional es muy elevada.

• Presentan mucha dificultad a la hora de encontrar parámetros óptimos importantes para su

funcionamiento, como pueden ser el número exacto de partículas o la ponderación de los pesos del

remuestreo de partículas.

• Tienden a sufrir dos efectos opuestos, ambos perniciosos para el correcto funcionamiento del

seguimiento multiobjetivo: a veces degeneran las partículas produciendo saltos abruptos o pérdidas de

objetivos, y otras veces convergen demasiadas partículas sobre una región tan pequeña que se pierde

toda diversidad y el sistema no es capaz de encontrar su objetivo si este cambia su patrón de

movimiento.

Además, hay algunos efectos inherentes al funcionamiento de estos sistemas que sin ser ni mucho menos algo

negativo con respecto a su funcionamiento, hacían que no se ajustaran exactamente al resultado del marco de

trabajo deseado desarrollado en el presente proyecto:

• Debido a la naturaleza aleatoria con la que se “lanzan” las partículas en la inicialización de objetivos,

cómo se actualizan los pesos de cada partícula y cómo se remuestrean las partículas introduciendo algo

de ruido para luchar contra la pérdida de diversidad, es prácticamente imposible asegurar la repetitividad

de los datos extraídos de las secuencias de vídeo. La gran mayoría de las ocasiones no supone ningún

problema, siendo necesario un gran número de ejecuciones del algoritmo sobre la misma secuencia para

obtener información promediada de forma útil de las secuencias de movimiento.

11 CONDENSATION: “Conditional Density Propagation Over Time”. 12 Entendiendo por partícula un conjunto de características detectadas con éxito.

Page 38: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Estado del arte

16

• Además, en un contexto de oclusiones y de extracciones de características continuas como el que

estamos manejando, cuando un objetivo se “pierde” debido a una oclusión y sus partículas asociadas

no convergen durante varios fotogramas en él, no tenemos ningún tipo de información de movimiento

ni de detección, o como mucho suponemos que está quieto. Cuando el objetivo reaparece más adelante

en el tiempo, en el mejor de los casos las partículas convergen voraz y rápidamente dando la sensación

de que prácticamente se ha “teletransportado” hacia su nueva posición, dando valores anómalos de

velocidad, posición, perdiendo la coherencia de la inercia del movimiento, etc.

• Al ser capaces de remuestrear las partículas y saltar hacia los objetivos a medida que se mueven, no se

ven limitados por la restricción de necesitar cámaras estáticas por utilizar un detector de movimiento

que alimente a por ejemplo el seguimiento basado en filtro de Kalman. Esta ventaja la

desaprovecharíamos dado que nuestro conjunto de secuencias de vídeo se basa en cámaras estáticas.

2.1.3.3 Seguimiento mediante desplazamiento de la media

También son muy utilizados en muchas investigaciones e implementaciones los filtros de desplazamiento de la

media [17] [20] (Mean-Shift Tracking) con modificaciones para no depender en exclusiva de plantillas rígidas

consiguiendo adaptarse a cambios de tamaño y orientación que transcurran de forma suave. Una vez que cada

una de las regiones queda descrita por su histograma de color, se computa la diferencia de similitudes de su

espacio de estados entre la zona de interés y la zona actual, de forma que el seguimiento del objetivo se consigue

encontrando el mínimo local de las funciones de similitud, tal y como se ilustra en la siguiente figura:

Figura 2-13. Representación de Mean-Shift Tracking buscando minimizar la función de similitud de un

objetivo móvil13.

Sin embargo, hay que tener especial cuidado escogiendo los tamaños adecuados del kernel o si no podemos

acabar perdiendo muy fácilmente a los objetivos seguidos.

13 Figura de Mahesh Chandra – Mean Shift Algorithm - YouTube

Page 39: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

17

3 SISTEMA IMPLEMENTADO

lo largo de este capítulo se irán analizando las particularidades del sistema finalmente implementado con

el fin de realizar el seguimiento de múltiples jugadores en partidos de fútbol mediante procesado de vídeo,

basándonos en los fundamentos explicados anteriormente.

La premisa del sistema acaba siendo estudiar y desarrollar un sistema modular que mediante grabaciones de

encuentros de fútbol obtenidas mediante una única cámara estática (en principio) sea capaz de extraer distintas

estadísticas del movimiento de cada uno de los agentes que en aparecen en dichas grabaciones.

A partir del diagrama de un sistema de seguimiento (5) ya visto en el capítulo anterior, se comenzó a desarrollar

el marco de trabajo de seguimiento desde cero para distintas secuencias de vídeo utilizando lenguaje de

programación C++ y la librería de software libre de visión artificial OpenCV.

Dado que las grabaciones obtenidas para el desarrollo del presente proyecto presentan graves dificultades desde

un punto de vista de iluminación, ruido de imagen o perspectiva, se aprovechan como reto para explorar y poner

de manifiesto las dificultades de los sistemas de seguimiento mediante procesado de vídeo en entornos apenas

controlados.

El presente trabajo está inspirado en la metodología y estadísticas obtenidas de seguimiento presentadas en [16]

y [15], pero utilizando versiones propias de los algoritmos en los distintos bloques funcionales y adaptando el

flujo de trabajo a las necesidades de implementación y secuencias de vídeo con las que se trabajan. Todas las

decisiones tomadas y modificaciones implementadas han ido en pos de mejorar el rendimiento del seguimiento

para cada una de las secuencias de vídeo.

3.1 Resumen

El diagrama de bloques funcionales implementado es algo más complejo que el básico explicado en el capítulo

anterior, e introduce una serie de pasos adicionales que se comentan a continuación:

• Dado que la idea del sistema es conseguir el procesamiento en tiempo real, se ha procurado calcular con

anterioridad toda la información posible de la cámara, la perspectiva que se mostraba del terreno de

juego y todas las características posibles de los objetivos que se iban a seguir. Esto se materializa en la

introducción de un paso previo de preprocesamiento del vídeo y la obtención de los histogramas de

color de los jugadores de antemano.

• Debido a que la calidad de las imágenes dista mucho de ser ideal, para la detección de los jugadores se

descartó la eliminación del fondo mediante un modelo de color motivado por lo ruidoso de las salidas

producidas y se optó por un modelo de obtención de la máscara de movimiento mediante Mezcla de

Gaussianas con eliminación de sombras.

• A continuación, se utilizan un conjunto de operaciones morfológicas [14] sobre las máscaras de posibles

candidatos a jugadores, seguido de un detector basado en restricciones geométricas de las siluetas

resultantes. Estas operaciones se realizan sin memoria, operando únicamente con el conocimiento que

proporciona el fotograma actual. Además, se ha diseñado un modelo de proyección lineal que afecta a

todas las restricciones morfológicas y geométricas debido a la fuerte perspectiva que presentan cada

una de las secuencias de vídeo analizadas, de forma que se compense el hecho de que el tamaño, sombra

proyectada y velocidad de un jugador en el primer plano son mucho mayores que si ese mismo jugador

se encontrara en el plano del fondo.

• A aquellas siluetas que cumplen los requisitos anteriores se les estudia su histograma de color dado que

es la principal característica (por no decir la única) que tenemos para categorizar al jugador como de un

A

Page 40: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Sistema Implementado

18

equipo u otro (estando también considerados los dos porteros y los árbitros, que suelen ir con colores

distintos a los de ambos equipos). Dichos histogramas han sido previamente calculados también a partir

de muestras aleatorias obtenidas de los propios vídeos, y utilizan el espacio de color HSV eliminando

la componente de valor para ser más resistentes a cambios de iluminación, tal y como se utiliza en [16].

Tras ello, utilizando una métrica sencilla se asigna cada silueta a una de las categorías existentes para

esa secuencia de vídeo.

La consecuencia directa del detector modular comentado hasta ahora es que una de las primeras peculiaridades

que implementa el sistema desarrollado en este proyecto es la selección automática de objetivos como

contrapartida a muchos otros trabajos donde la selección inicial requiere una entrada manual activa por parte del

usuario. El precio que pagar por esta selección y clasificación automática de objetivos es un trabajo previo de

selección de histogramas y de ajuste del modelo de compresión lineal causado por la perspectiva que la cámara

nos fija.

• En este punto tenemos para cada fotograma un conjunto de detecciones válidas para cada equipo. El

punto elegido para representar a cada jugador será el punto central de la base del rectángulo que le

rodea, dado que al desarrollarse la acción sobre un plano nos interesa más la zona de contacto con dicho

plano. Ahora, para cada objetivo se supone de distribución gaussiana de movimiento afectado por la

perspectiva, y entra en acción un banco de filtros predictivos de Kalman con una lógica de gestión de

cada uno de los tracks14 alimentada por detecciones consecutivas entre fotogramas. Esta lógica decide

cuándo se origina cada track y cuándo desaparece.

• No obstante, esta forma de separar detecciones de seguimiento implica que haga falta una lógica

adicional de asignación entre los N tracks activos en ese momento y las M detecciones válidas que se

hayan producido. Adelantamos que la implementación de esta asignación es algoritmo de Kuhn-

Munkres o su versión simplificada conocida como “Algoritmo Húngaro” [33], el cual resuelve un

problema de asignación unívoca en un grafo bipartito tal y como el que modela la situación de N tracks

y M detecciones.

• Para lidiar contra las temidas oclusiones, otra de las contribuciones del presente proyecto ha sido

desarrollar tanto un detector de oclusiones a partir de las máscaras de píxeles ya filtrados y un módulo

completo de seguimiento de oclusiones. Tanto este detector como el seguimiento son similares a sus

equivalentes utilizados para detecciones y seguimiento de cada objetivo por separado, pero aportan un

conjunto de reglas distintas capaces de modificar en tiempo de ejecución el comportamiento y la lógica

del banco de filtros de Kalman.

Finalmente, aunque no menos importante, se llega a la extracción de características de cada uno de los tracks

que justifica todo el proyecto. Sin embargo, se pudo comprobar que la información que realmente se desea es

mucho más fácil de entender y útil si está representada en un plano cenital del campo de juego donde las medidas

de posición, velocidad y aceleración tienen sentido intrínseco y obvio sin verse alteradas por la perspectiva que

introduce el plano imagen.

• Para resolver este problema se utilizan transformaciones homográficas entre el plano imagen y el plano

del terreno de juego [15]. Esto implica realizar un emparejamiento de puntos del terreno de juego vistos

desde la cámara y un modelo de campo cenital y cálculo previo de la matriz de proyección antes de

iniciar el procesamiento. Una vez almacenada esta transformación, se les aplica a todos y cada uno de

los tracks durante el procesamiento en tiempo real para obtener las proyecciones de todos esos puntos

y trayectorias sobre un plano que posee unas medidas de escala conocidas.

• Una vez que se tiene la identidad y la posición de todos los jugadores en todos los instantes de tiempo

en un sistema de referencia a escala en el que se puede medir, se tiene casi cualquier tipo de información

posible del movimiento: posición, velocidad, aceleración, distancias recorridas parciales y totales,

distancias relativas entre cualquier jugador, etc. A modo de ilustración, como ejemplo de información

derivada que se puede extraer de los datos básicos, se han implementado un generador de mapas de

calor, una representación dinámica de cuántos jugadores hay en cada parcela del terreno y un detector

14 El concepto de “track” incluye la trayectoria y la identidad unívoca de cada uno de los objetivos seguidos por el algoritmo.

Page 41: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

19 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

de fueras de juego posicionales, todos ellos sistemas con mucha fuerza visual y capaces de captar la

atención del espectador en tiempo real.

Se muestra a continuación la modificación de los bloques constructivos con respecto al esquema básico

comentado al principio del proyecto en secuencias de vídeo de una sola cámara:

Figura 3-1. Bloques conceptuales implementados para el sistema de seguimiento con procesado de vídeo.

3.2 Entrenamiento y preprocesamiento

Este bloque engloba el conjunto de tareas necesarias que se han realizado para precalcular la mayor cantidad de

información posible con el fin de acotar la inmensa variabilidad de posibilidades explotando las peculiaridades

de las distintas secuencias. Además, este cálculo por adelantado permite ganar velocidad en la posterior

ejecución al no tener que realizar estas operaciones en línea. Las tareas son las siguientes:

Detección Fotogramas

Clasificación

Asignación

Entrenamiento y

preprocesamiento

Oclusión

Seguimiento Homografía Estadísticas

Sí No

Page 42: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Sistema Implementado

20

3.2.1 Perspectiva

Debido a la fuerte perspectiva que introduce la captura de la imagen en las secuencias de vídeo procesadas, los

objetos de interés (jugadores) no poseen las mismas propiedades geométricas y cinemáticas en función de si se

encuentran más cerca o más lejos de la cámara. Este hecho dificulta enormemente el reconocimiento de patrones

o formas, así como el ajuste del modelo de movimiento necesario para el seguimiento. Además, complica

notablemente el filtrado de la imagen mediante operaciones morfológicas dado que si se es demasiado agresivo

con dicho filtrado hay riesgo de eliminar mucha información útil, mientras que por el contrario si se es muy

permisivo eliminando artefactos perniciosos para el seguimiento, corremos el riesgo de generar muchas falsas

detecciones.

Por ello, y aprovechando que los jugadores deambulan por un único plano horizontal (el terreno de juego), para

cada una de las secuencias de vídeo se ha utilizado un modelo de aproximación lineal entre la altura 2D de la

imagen de cada objeto y su posición vertical dentro de dicha imagen, de forma que:

Donde h es la altura del objeto 2D, yB es la posición que ocupa verticalmente la parte inferior del objeto en la

imagen (es decir, los pies), HL es la coordenada y de la línea del horizonte dentro de la imagen, y R es la relación

de expansión de la altura del objeto, calculada intentando responder a la pregunta de “¿cuántas veces cabría el

un objeto visto en el primer plano de la imagen si estuviera en la línea del horizonte?”

Figura 3-2. Modelo de proyección de la cámara para compensar la perspectiva introducida.

Para cada una de las secuencias de vídeo estudiadas se han buscado pistas visuales que permitan establecer esta

relación lineal, necesaria para el ajuste de casi todos los parámetros del detector y del seguimiento.

3.2.2 Homografía

Ya hemos establecido el hecho de que es muy conveniente obtener una transformación de todos los parámetros

que obtengamos en el plano imagen (vista lateral obtenida por la cámara) al plano cenital con el fin de extraer

estadísticas útiles.

ℎ = 𝑅(𝑦𝐵 − 𝐻𝐿) (3–1)

HL

Page 43: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

21 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Figura 3-3. Imagen con proporciones estándar de campo de fútbol utilizada para proyectar el plano cenital.15

Una homografía se define como una transformación invertible desde un espacio de proyección que convierte

líneas rectas en líneas rectas y puntos en puntos, de forma que se tiene una pareja de proyecciones de perspectiva.

Describen lo que ocurre a la posición percibida de los objetos cuando cambia el punto de vista del observador.

aunque no respeta los tamaños ni los ángulos.

Por lo tanto, dado para cada secuencia de vídeo un conjunto de correspondencias entre puntos origen del plano

imagen P = (x; y; 1), y puntos destino del plano cenital P’ = (x’; y’; 1), se puede estimar la matriz de

transformación H que satisfaga:

𝑃′ = 𝐻𝑃

Con coordenadas homogéneas:

𝑥′ =ℎ11𝑥 + ℎ12𝑦 + ℎ13

ℎ31𝑥 + ℎ32𝑦 + ℎ33

𝑦′ =ℎ21𝑥 + ℎ22𝑦 + ℎ23

ℎ31𝑥 + ℎ32𝑦 + ℎ33

Donde hij son los valores de la matriz de Homografía.

Además, cuantos más puntos se utilicen para establecer cada una de las homografías, más precisa será la

interpolación (o extrapolación) de todos y cada uno de los nuevos puntos que se originen en el plano imagen y

quieran proyectarse al plano cenital. Para permitir la introducción de estas correspondencias de puntos se ha

programado desde cero en C++ un módulo que permite la selección secuencial de los mismos en el plano de la

cámara y sobre un plano cenital virtual. A continuación, se muestran algunas de las homografías usadas en las

secuencias de vídeo:

• Las marcas azules se han introducido de forma manual en el sistema buscando siempre puntos

característicos fácilmente reconocibles entre el plano imagen y el plano cenital.

• La región amarilla translúcida de cada imagen de las cámaras es una región de interés introducida

15 Imagen en alta resolución obtenida de http://wallpaperswide.com/football_pitch-wallpapers.html

(3–2)

(3–3)

(3–4)

Page 44: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Sistema Implementado

22

también de forma manual adaptada a cada cámara con el fin de no realizar ningún procesamiento de

vídeo en ninguna zona de que no sea de interés porque claramente nunca habrá jugadores en ella.

• La región amarilla translúcida de cada imagen cenital es la proyección de la región de interés del plano

imagen sobre el plano cenital, únicamente usando la matriz de proyección homográfica generada a partir

de las parejas de puntos. Se puede apreciar a simple vista la bondad de las proyecciones calculadas.

Tabla 3-1. Correspondencia de puntos para algunas homografías precalculadas.

Planos imagen Planos cenitales

Cualquier punto interior a las zonas señaladas de los distintos planos imagen (es decir, las zonas en las que se

moverán los jugadores) tendrá su correspondencia en el interior de la zona calculada de los diferentes planos

cenitales, lo cual será fundamental para hacernos una idea del movimiento de los jugadores a medida que

avanzan los fotogramas de las secuencias de vídeo. En el Anexo A (Punto 7) se pueden encontrar más ejemplos

de homografías utilizadas para distintas secuencias.

Page 45: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

23 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

3.2.3 Histogramas

Ha quedado establecido que la característica más importante (por no decir la única) que podemos usar a la hora

de clasificar las distintas detecciones de jugadores para otorgarles la pertenencia a un equipo u otro (o árbitros y

porteros si se diera el caso) es el color. Para ello, tras analizar las distintas secuencias de vídeo con las que se ha

trabajado se decidió implementar un clasificador sencillo de histogramas de las distintas siluetas, siguiendo un

modelo similar al empleado en [16]

El espacio de color más habitual es el RGB, pero representando el color así cualquier cambio de iluminación

afecta por igual a las tres componentes de color: rojo, verde y azul. Dado que las condiciones de iluminación

son tan variables en las secuencias estudiadas se decidió utilizar un espacio de color que pudiera inmunizarse un

poco más a la aparición de sombras y reflejos, así como de artefactos propios de la codificación del vídeo debido

a una baja resolución. El espacio elegido es el HSV, pero prescindiendo de la componente de Valor (o intensidad)

que es la que concentra toda la información de luminosidad. Por tanto, al quedarnos solo con las componentes

de matiz y saturación, tenemos representaciones más puras del tono de color exacto que estamos buscando,

mientras que las variaciones del Valor solo implican que el tono se haga “más claro” o “más oscuro”.

Figura 3-4. Cambios de iluminación afectan a todo el RGB, mientras que solo afectan al Valor de HSV.16

Para ello se clasificaron manualmente 10 siluetas al azar de cada una de las categorías de cada una de las

secuencias de vídeo, y se almacenó el valor de sus histogramas bidimensionales HS. En aras de reducir la

intervención humana todo lo posible, el criterio de selección de siluetas fue simplemente almacenar todos los

contornos generados por un detector de movimiento simple, sin ajustar ni modificar, para introducir

voluntariamente cierto nivel de ruido en las muestras de entrenamiento, similar al ruido que luego sería constante

durante la ejecución del procesamiento y la clasificación. Algunos ejemplos automáticamente generados que

fueron clasificados manualmente para una de las secuencias son los siguientes:

Figura 3-5. Contornos típicos de entrenamiento.

Seguidamente durante la ejecución del programa, todas las siluetas que el detector de movimiento y de

restricciones geométricas valida se convierten al espacio de color HSV utilizando OpenCV para realizar las

operaciones matemáticas, se les elimina igualmente la componente V y se comparan con los histogramas de

16 Figuras obtenidas de https://en.wikipedia.org/wiki/HSL_and_HSV

Page 46: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Sistema Implementado

24

entrenamiento almacenados.

En el módulo de clasificación 3.4 se darán más detalles sobre el proceso de decisión de clasificación.

3.3 Detección

Inicialmente se abordó el problema de la detección de los jugadores en cada uno de los fotogramas intentando

clasificar utilizando color y textura para eliminar la zona del terreno de juego. Esta aproximación al problema

se ha utilizado con éxito en la literatura en vídeos seleccionados específicamente para ello, incluso utilizando

histogramas RGB completos para detectar y eliminar todo aquello que fuera clasificado como “verde” [34].

Figura 3-6. Izquierda: fotograma inicial. Derecha: detector de terreno de juego con condiciones ideales según

[34].

En nuestro conjunto de datos, incluso asumiendo que un campo de fútbol tiene el verde como color distintivo

dominante, no se debe olvidar que el clima, la iluminación, las sombras y los propios artefactos del vídeo hacen

que no se pueda fijar de forma invariante un rango de tonalidades que se puedan filtrar para eliminar el fondo

del campo de forma fiable. Se probaron distintas combinaciones de filtrado (tanto fijas como adaptativas [6]) y

no se conseguían resultados satisfactorios.

Figura 3-7. Arriba: fotograma inicial. Abajo: distintos de detectores de terreno sin resultados satisfactorios.

De hecho, intentar hacer el filtrado más agresivo en el rango de colores únicamente acababa perjudicando más

Page 47: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

25 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

a aquellos elementos que queríamos detectar, sin conseguir siquiera eliminar los artefactos de ruido indeseables.

Se decidió optar por utilizar técnicas de eliminación de fondo basado en movimiento para centrar los esfuerzos

en encontrar todo aquello que sí fuera jugador sin mermar la eficiencia computacional. El algoritmo utilizado en

este módulo fue un Modelo de Mezcla de Gaussianas con estimación de máxima verosimilitud (EM) para la

inicialización que viene implementado en la librería OpenCV, modificando los valores de los umbrales de

inicialización y del número de gaussianas utilizado para adecuar la carga computacional a las secuencias

procesadas. Consecuencia del uso del algoritmo de EM es que en cada comienzo de procesamiento se tardan un

número de fotogramas en inicializar el modelo durante los cuales no obtenemos ninguna detección.

Tras probar distintas implementaciones y grupos de parámetros de diferentes detectores de movimiento, la

conclusión que se obtiene es que no se ha llegado a ninguna combinación que funcione como una “navaja suiza”

apta para todos los vídeos en todas las condiciones.

A pesar del uso de técnicas ampliamente probadas para esta tarea, las secuencias de vídeo con las que trabajamos

siguen presentando tal cantidad de ruido y sombras moviéndose que es necesario definir conjuntos de

operaciones morfológicas [14] con kernels diagonales u horizontales adaptados a reducir aquellos patrones de

carácter más horizontal que sobresalgan de las siluetas detectadas. Para ilustrar a lo que nos referimos,

observemos la siguiente imagen:

Figura 3-8. Operaciones morfológicas para detectar jugadores en movimiento tras eliminar sombras.

En ella se pueden apreciar varios detalles importantes de los que ya hemos hablado:

• La notable perspectiva afecta críticamente a los modelos, histogramas y geometría de todos los

algoritmos implementados (en concreto, el caso radical del árbitro de la banda del fondo, que es apenas

un punto negro casi imperceptible por ser varios órdenes de magnitud más pequeño que los jugadores

en primer plano)

• La extrema relevancia de las sombras, las cuales muchas veces nuestro cerebro ha aprendido a ignorar

pero que también afectan y cómo las operaciones morfológicas pueden separar incluso sombras muy

notables de los jugadores que las originan sin comprometer a las siluetas más pequeñas de interés.

• Además, se puede apreciar la necesidad de movimiento que impone el sistema para funcionar. Los dos

árbitros (amarillo dentro del área) permanecen muy estáticos mucho tiempo, tienden a desaparecer y

sus detecciones no sobreviven a los filtros morfológicos. Una posible solución es llevar distintos

modelos de detección de movimiento en paralelo e ir refrescándolos cada cierto número de fotogramas

con el fin de tener más control sobre aquellos elementos que se fusionan con el fondo de forma no

deseada.

Junto con las operaciones morfológicas17 básicas y sus derivadas más inmediatas como pueden ser la apertura

17 Redirigimos al lector en este punto a la profusa explicación de operaciones morfológicas que se puede encontrar en [14].

Page 48: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Sistema Implementado

26

(erosión + dilatación, útil para eliminar pequeñas regiones conectadas entre sí) o el cierre (dilatación + erosión,

útil para cerrar pequeños agujeros dentro de siluetas conectadas), en algunas secuencias se han tenido que utilizar

otras más complejas como las denominadas “Top-Hat” y “Black-Hat” para computar en algunos casos las

diferencias entre las máscaras iniciales y su apertura o cierre. Dichos conjuntos de operaciones utilizadas sobre

las máscaras binarias previas a la segmentación de los jugadores y sus parámetros han sido elegidos de forma

empírica para cada una de las secuencias con las que se ha utilizado el entorno de trabajo diseñado. Por norma

general, se intentará siempre romper los huecos relevantes que se encuentren en las siluetas con respecto a algún

criterio de simetría para evitar aumentar el problema de las sombras en vez de reducirlo. Por ejemplo, en la

siguiente imagen se muestra una situación en la que utilizar las operaciones morfológicas en un orden no

adecuado da lugar a acrecentar el problema de las sombras:

Figura 3-9. Empeoramiento del problema de las sombras por mala morfología, causando gran oclusión

innecesaria.

A continuación, para cada una de las secuencias se utilizan las siguientes restricciones geométricas heurísticas

que determinarán si nos encontramos ante una posible detección individual, ante una oclusión o ante una silueta

descartable (estos parámetros se consideran para el primer plano de la imagen y se escalan mediante el modelo

lineal de profundidad explicado en la sección 3.2.1 a medida que cada posible silueta ve aumentada su

coordenada y):

• Para ser considerada un objetivo individual (escalado según su coordenada y):

o Área mínima que ocuparía una persona en el primer plano del plano imagen.

o Alturas mínima y máxima.

o Anchuras mínima y máxima.

o Relación de aspecto entre el alto y el ancho (con el fin de explotar cualquier restricción posible,

los jugadores pasan prácticamente la totalidad del tiempo de las secuencias erguidos, y dada la

naturaleza más o menos “horizontal” de las sombras que hayan podido resistir las operaciones

morfológicas es conveniente descartarlas así).

• Para ser considerada una posible oclusión (escalado según su coordenada y):

o Debe incumplir los requisitos de objetivo individual.

o Debe a su vez satisfacer unas restricciones más laxas pero no ilimitadas de área ocupada y

tamaño.

• Para ser descartada:

o No debe cumplir ninguna condición anterior. En este caso la detección se ignora por ser

demasiado pequeña (es ruido espurio), demasiado grande (es un error grave del detector de

movimiento o una oclusión demasiado inmanejable que debe manejar el sistema de

seguimiento dejando los tracks con la inercia que ya tuvieran) o es “demasiado” horizontal por

lo que casi seguro es una sombra y debe ignorarse.

Tras aplicar estos criterios a todas las siluetas de la máscara resultante, se genera un vector de rectángulos que

circunscriben a las detecciones individuales y otro vector de siluetas que pueden ser oclusiones. Además, en el

caso de las detecciones individuales se computa la posición de cada uno de los puntos medio de la base de los

Page 49: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

27 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

rectángulos para estimar lo que sería el punto medio de contacto del jugador con el plano del suelo. Dicho punto

será el que se proyecte sobre el plano cenital utilizando la matriz de homografía para visualizar la posición de

cada objetivo sobre el plano.

3.4 Clasificación

Este bloque es el encargado de obtener los histogramas bidimensionales HS para cada una de las posibles

detecciones individuales tal y como se explicó 3.2.3. Una vez obtenidos, se comparan utilizando la distancia de

Bhattacharyya, que es una métrica estadística simple que mide el parecido entre histogramas y su

superposición. El procedimiento se ilustra a continuación:

Figura 3-10. Comparación de histogramas HS de detecciones individuales con los precalculados. (Figura de

[16])

Usando este criterio, histogramas idénticos obtienen una distancia de 0, mientras que dos completamente

distintos obtendrían un valor 1, obedeciendo a la siguiente métrica tras comparar la nueva muestra con todos los

entrenados:

Donde pv es el histograma de la nueva silueta, qv es uno de los precalculados en la fase de entrenamiento y M es

el número de comparaciones.

Para cada una de las comparaciones se va guardando un valor que idealmente debe tender a 0. Si tras terminar

las comparaciones con todos los histogramas de todas las categorías posibles (dos equipos, dos porteros y

árbitros) no hay ninguno que se aproxime a 0 por debajo de cierto umbral empírico mínimo o no se diferencia

el mínimo absoluto del segundo mínimo entre sí lo suficiente, concluimos que la detección individual no ha

podido asignarse a ninguna categoría y se marca como detección descartada.

donde

𝐷𝑏(𝑦) = √1 − 𝑃[𝑝𝑣(𝑦), 𝑞𝑣]

(3–5)

𝑃[𝑝𝑣(𝑦), 𝑞𝑣] = ∑ √𝑝𝑣(𝑦)𝑞𝑣

𝑀

𝑣=1

(3–6)

Page 50: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Sistema Implementado

28

Este criterio, aunque pueda parecer drástico, es conveniente en el contexto de las grabaciones no profesionales

con las que trabajamos en el presente proyecto. En muchos casos incluso un observador humano tendría serias

dudas al decidirse por alguna categoría de clasificación a pesar de jugar con conocimiento de la evolución de los

objetivos, con más razón si cabe en el caso de un detector y un clasificador sin memoria entrenado a partir de

unas pocas muestras de vídeos ruidosos, con perspectiva muy forzada, objetivos pequeños, iluminación hostil y

tiempos de exposición a veces inadecuados. Por todo ello es preferible no arriesgar emitiendo una clasificación

en caso de duda y dejando que sea el siguiente bloque constructivo de seguimiento el que tome decisiones acerca

de la creación, actualización y destrucción de tracks. Un ejemplo que ilustra este hecho es la aparente similitud

entre las dos siguientes categorías de clasificación de uno de los datasets:

Figura 3-11. Detalle de imagen: Dificultad en la clasificación de equipos de distintas categorías.

Una vez terminada la función del bloque clasificador obtendremos una salida como la siguiente:

Figura 3-12. Salida de la clasificación a partir del bloque detector.

En dicha figura se pueden apreciar los bloques de detección y clasificación trabajando conjuntamente para

detectar el movimiento de la escena, limpiarla de ruido, reducir las sombras al mínimo (aunque en esta secuencia

de vídeo se consigue a costa de penalizar la precisión de las siluetas debido a la altísima perspectiva) y la

clasificación en dos categorías:

• Las siluetas que han podido ser clasificadas con éxito por haber encontrado una distancia de

Bhattacharyya suficientemente pequeña de forma unívoca reciben su categoría en forma de rectángulo

del color asociado a la detección (rojo o verde en esta secuencia de vídeo)

• Aquellas que no cumplen algún requisito del detector directamente ni se admiten al clasificador

(hablamos de los fragmentos de sombras grises o blancos)

• Aquellas que sí han sido admitidas al clasificador pero no arrojan un resultado concluyente son

rechazadas dejando al siguiente bloque de seguimiento la tarea de gestionar qué hacer si hubiera algún

track asociado a ese objetivo.

Page 51: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

29 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

3.5 Asignación

Para explicar este apartado supondremos que el conocimiento que actualmente tenemos del sistema de

seguimiento es suficiente: se da por hecho la existencia de un bloque que registra, actualiza, mantiene y destruye

cuando es necesario los identificadores de los jugadores ya clasificados en alguna de las categorías y sus

trayectorias a lo largo del tiempo basado en un modelo de movimiento probabilístico (banco dinámico de filtros

de Kalman). Por tanto es fácil comprender que en cualquier instante temporal t tendremos un conjunto de N

tracks que hayan sido inicializado en instantes anteriores, y otro conjunto de M detecciones confirmadas por

el detector y clasificador sin memoria en ese instante t. Por ello:

Definición de Asignación Multiobjetivo: Proceso de asociar M medidas inciertas a N tracks ya conocidos.

En función de si hay más detecciones que tracks activos (entran jugadores nuevos en escena o hay mucho ruido

de detección) o viceversa (salen jugadores de escena, errores en el detector o clasificador) se abre un abanico de

posibilidades que deberá resolver la lógica que gobierna el banco de filtros de Kalman implementado al

considerar el exceso de trayectorias como un posible criterio para hacerlas desaparecer, o el exceso de medidas

como un posible criterio para originar el seguimiento de nuevas trayectorias.

El problema de la asignación conlleva crear una matriz de pesos que ponderen mediante algún tipo de métrica

(euclídea, Mahalanobis con las covarianzas, etc. [35]) que se pueda reducir a un vector de asignaciones

minimizando los costes. Hay que tener en cuenta que la forma de resolver este problema mediante los vecinos

más cercanos no asegura el mínimo global del vector de costes, por lo que es necesario resolver un problema

más complejo de programación lineal (Algoritmo de Kuhn-Munkres (M ≠ N) o Húngaro (M = N)) [33] que

efectúe la asignación garantizando el mínimo global del sistema. La siguiente figura ilustra esta cuestión:

Figura 3-13. a) Asignación basada en el vecino más cercano. No consigue el mejor mínimo global de la

asignación de costes. b) Programación lineal, M = N, se alcanza el mínimo global de asignación.18

La implementación del Algoritmo de Kuhn-Munkres utilizada para resolver el problema de asignación se realiza

sobre la marcha fotograma a fotograma sin memoria de asignaciones previas. Se ha utilizado una versión en

lenguaje de programación C++ del sistema desarrollado inicialmente para MATLAB que se encuentra

disponible en [36].

18 Figura de Kai Arras, Gian Diego Tipaldi, 2010, transparencias de “Robotics Data Association” – Freiburg University

Page 52: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Sistema Implementado

30

Figura 3-14. Izquierda: Solución de la minimización global de costes en el problema de asignación en el grafo

bipartito. Derecha: Aplicación práctica con dos tracks que se encuentren en la función de densidad de

probabilidad elipsoidal asignados a las detecciones rectangulares correspondientes.

Como particularización de la implementación utilizada y como ya se ha explicado que ocurre en los otros

módulos del sistema de seguimiento multiobjetivo desarrollado, hay que tener en cuenta la aplicación de la

aproximación lineal para compensar la perspectiva en todos los cálculos que se hagan en la asignación de pesos

en la matriz que resuelve el módulo de asignación.

3.6 Seguimiento

Como ya se ha comentado varias veces a lo largo del presente proyecto, el peso del módulo de seguimiento recae

sobre un vector dinámico de filtros de Kalman [19] [37], en el que aprovechando el alcance de la solución

implementada se busca lograr un sistema de seguimiento que sea modular y capaz de operar en tiempo real.

Cuando cada jugador es detectado y clasificado por primera vez se añade un filtro de Kalman dedicado en

exclusiva al seguimiento de dicho jugador. Un jugador individual puede ser modelado gracias a los descriptores

y definición de objetivo utilizados como un estado xk y una medida zk en cierto instante k.

𝑥𝑘 = [𝑥 𝑦 𝑣𝑥 𝑣𝑦]𝑇 (3–7)

𝑧𝑘 = [𝑥 𝑦]𝑇 (3–8)

Donde x e y son las coordenadas en el plano imagen del punto medio la base del jugador, y vx y vy representan la

velocidad del jugador en el plano imagen teniendo en cuenta el efecto de la perspectiva (Apartado 3.2.1).

A partir de aquí el filtro de Kalman modela las siguientes ecuaciones estocásticas diferenciales

𝑥𝑘 = 𝐴𝑥𝑘−1 + 𝑤𝑘−1 (3–9)

𝑥𝑘 = 𝐻𝑥𝑘 + 𝑣𝑘 (3–10)

Donde A es la matriz de estado del modelo (con ∆t el parámetro que indica cada cuánto se realiza la fase de

actualización del filtro de Kalman - habitualmente la inversa de los fotogramas por segundo del vídeo para

actualizar una vez por fotograma el estado del modelo), H es la matriz del modelo de observaciones y las

variables aleatorias wk y vk representan ruido del proceso y de la medida.

Page 53: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

31 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

𝐴 = [

1 0 ∆𝑡 00 1 0 ∆𝑡0 0 1 00 0 0 1

]

(3–11)

𝐻 = [1 0 0 00 1 0 0

]

(3–12)

Dado que la velocidad de cada jugador no es en absoluto constante a lo largo del partido, eligiendo ∆t con

cuidado podemos controlar la frecuencia de actualización del filtro de Kalman correspondiente. Este dato es

importante sobre todo para aquellos jugadores que se encuentren bastante al fondo de la escena puesto en esa

región la perspectiva una vez más nos supone problemas adicionales:

• Es la zona más propensa a ruido incontrolable tanto de artefactos de vídeo, como de iluminación, como

de oclusiones que perjudiquen la medida (fuentes de ruido ajenas al sistema).

• Debido a las sombras tan prominentes y necesitar operaciones morfológicas a veces agresivas, la zona

del fondo de la escena es la más propensa a sufrir errores de detección autoprovocado por el propio

sistema.

• En este entorno tan complejo, además los jugadores se mueven a muy baja velocidad en el plano imagen

aunque vayan corriendo muy rápidamente en la proyección del plano cenital. Por tanto hay que

“ralentizar” el modelo cinemático de los tracks a medida que se alejan del primer plano para evitar tener

objetivos muy propensos a saltar entre detecciones a muy alta velocidad relativa. Esto se realiza

utilizando el mismo concepto de proporcionalidad lineal ya explicado previamente, actualizando las

matrices A y H con un ratio escalado por el coeficiente de profundidad. En la siguiente figura podemos

comprender un poco mejor a lo que nos referimos:

Figura 3-15. El jugador más cercano al plano imagen puede recorrer en dirección x el campo de visión en tres

zancadas. Ese mismo jugador en la banda opuesta necesitaría unas diez veces más, aunque fuera a la misma

velocidad. Los tracks del fondo a medida que aumenta la coordenada y deben “ralentizarse”.

Page 54: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Sistema Implementado

32

3.6.1 Lógica de seguimiento de tracks individuales

Un aspecto importante dentro del sistema de seguimiento implementado es la lógica de gestión del vector de

filtros de Kalman, cada uno de los cuales es responsable de idealmente mantener la identidad de un único jugador

a lo largo del tiempo. Dicha gestión es la responsable de los criterios de generación, actualización y destrucción

de los tracks de cada categoría de clasificación de equipos.

Es por tanto un sistema capaz de adaptarse automáticamente al cambio en el número de objetivos en tiempo de

ejecución inicializando tracks cuando entran nuevos jugadores en escena y destruyéndolos cuando salen de

escena o dejan de ser relevantes.

Además del identificador19, de información de posición en el plano imagen y en el plano cenital, información

sobre su modelo cinemático y del equipo al que pertenece, cada track tiene una serie de parámetros adicionales

que condicionan su comportamiento:

• Contador de fotogramas consecutivos para inicializarse: Debido al alto ruido que poseen las secuencias

de vídeo, la fase de entrenamiento del algoritmo EM previo al detector de movimiento y el hecho de

que el detector y el clasificador distan mucho de ser perfectos, no es conveniente crear un track a la

primera detección confirmada de un jugador, sino que antes de ello se exige un cierto número de

fotogramas validados para aumentar la confianza de la creación.

Figura 3-16. Secuencia recién comenzada. Empieza a haber detecciones de los que se han movido (no

todos), pero no hay tracks dado que están esperando confirmación consecutiva.

• Contador de fotogramas consecutivos para destruirse: Cuando un track se queda sin asignar varios

fotogramas consecutivos a ninguna detección de su misma categoría la probabilidad de que ese track se

pierda irremediablemente o le robe la identidad a otro se dispara. A veces forma parte del desarrollo

normal (el jugador ha salido de escena) pero otras veces hay que dar el seguimiento por finalizado.

• Zona de exclusión: es una “peana” elipsoidal imaginaria situada alrededor de cada uno de los tracks

confirmados (afectada por el ratio de profundidad, como prácticamente todos los parámetros

geométricos y cinemáticos del sistema). Cada vez que se va a originar un track nuevo porque se ha

cumplido la condición de varias detecciones confirmadas consecutivas de la misma clase, se

comprueba que dicho punto de generación no pertenece a ninguna zona de exclusión de ningún

otro track. Puede parecer una decisión muy drástica, pero este sistema impide que aparezcan múltiples

“jugadores” de la nada, o que un mismo jugador confirmado de un equipo empezara a generar múltiples

tracks en el mismo punto si el clasificador empieza a fallar. Gracias a ello se consigue que en todo caso

el track que está en esa zona deba ser eliminado si le corresponde antes de inicializar otro perteneciente

a otro equipo. Además, tienen otra implicación muy deseable que se entenderá mejor cuando se hable

de las oclusiones en el siguiente apartado.

• Se estudió la posibilidad de directamente no permitir crear nunca ningún track en amplias zonas del

campo dado que los jugadores no deberían aparecer de la nada pero se desestimó por la frecuencia con

la que jugadores que no se movían desde el principio de la secuencia empezaban a caminar.

19 Etiqueta única y unívoca para cada track de un equipo distinto que se haya creado en la secuencia de vídeo.

Page 55: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

33 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Figura 3-17. Izquierda: La zona de exclusión del árbitro (“1 amarillo”) impide que se inicie un track rojo

por una mala clasificación. Derecha: el jugador “4 marrón” no está detectado pero su track aguanta su

identidad cierto número de fotogramas antes de correr peligro.

Con todo eso aclarado, tras resolver el problema de asociación entre N tracks existentes y M detecciones

posibles, se abre un abanico de posibilidades para cada categoría de “equipo” de clasificación:

• No hay tracks y sí detecciones: Se inician tracks si han sido confirmados durante varios fotogramas

consecutivos.

• No hay detecciones pero sí tracks: Ejecutan su predicción de movimiento pero se decrementa su

fiabilidad, aumentando el riesgo de desaparecer.

• Hay más detecciones que tracks: se asigna cada track a su detección válida más cercana (dentro de un

límite, escalado por la profundidad), se comprueba si se pueden iniciar tracks válidos para las

detecciones sin asignar (si las zonas de exclusión y los contadores de validación lo permiten) y si quedan

tracks sin asignar se ejecuta su predicción pero se decrementa su fiabilidad.

• Hay más tracks que detecciones: mismo procedimiento que el caso anterior.

3.6.2 Lógica de seguimiento de oclusiones

Uno de los principales objetivos del presente proyecto es la gestión de oclusiones. Cuando estas son debidas a

un cruce rápido entre varios jugadores sin que crezca la máscara del detector es más que probable que cada uno

de los respectivos filtros de Kalman utilice su inercia para reencontrarse con su detección una vez se separe la

oclusión.

Por el contrario, si dicha oclusión permanece en el tiempo, o si directamente la máscara de la oclusión era

demasiado grande para pertenecer a una única entidad (en función de la profundidad) el detector marca esa

silueta como una silueta “abductora” capaz de retener en su órbita a tracks individuales sin dejar que incrementen

su contador de destrucción.

Idealmente este sistema permitiría mantener pseudoindefinidamente tracks (de distintas categorías o de la

misma) dentro de una oclusión sin permitir que desaparezcan con el tiempo, ni que se creen en su interior (por

ser una silueta abductora no dispara el clasificador para evitar confusiones por la mezcla de colores, ver diagrama

de bloques de 3.1), y por las zonas de exclusión de los tracks abducidos).

Page 56: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Sistema Implementado

34

Es más, una oclusión puede a su vez evolucionar en el tiempo, creciendo, encogiéndose y moviéndose. Por tanto,

e inspirados por el vector dinámico de filtros de Kalman ya explicado para los jugadores individuales se ha

procedido a implementar un vector dinámico de filtros de Kalman para gestionar las siluetas abductoras que

equivalen a oclusiones por ser demasiado grandes.

El algoritmo de gestión de oclusiones se inicializa con cero subgrupos. Cuando el detector de oclusiones estima

que aparece alguna, se inicia de forma similar al gestor de tracks normales, con la salvedad de que las oclusiones

tienden a mutar mucho más rápido: crecen, encogen, se separan, se fusionan con otras, etc. Por ello los

parámetros explicados en 3.6.1 no aplican en el caso de las oclusiones.

No distingue entre la categoría de los tracks individuales que la conforman: las oclusiones pueden producirse

tanto entre jugadores de un mismo equipo, como de ambos, o incluso los árbitros y porteros.

Funciona mejor para oclusiones que duren poco en el tiempo (del orden de decenas de fotogramas consecutivos

o menos). Para órdenes mayores de magnitud temporal, la probabilidad de que la dirección de entrada de un

track individual haya perdido cualquier relación con su dirección de salida se dispara, suponiendo un estrés muy

elevado para el sistema de asignación de tracks, que puede llegar a confundirse cuando quedan libres de la

oclusión.

Debido a la mencionada volatilidad de las oclusiones (los jugadores se unen desde distintas profundidades,

regatean, cambian de velocidad, las sombras de los jugadores se unen, o simplemente ocurre una mala detección

en el paso anterior), una oclusión puede desaparecer repentinamente. En ese caso, si esa oclusión había llegado

a absorber tracks individuales, estos quedarán libres manteniendo la inercia que les hubiera impuesto la silueta

abductora, tras lo cual el paso de asignación los emparejará con las detecciones individuales que por necesidad

habrán de aparecer en esa zona.

Situación similar ocurre si no había llegado a absorber ningún track individual: el track abductor se destruye sin

haber afectado a ninguno de los tracks individuales que seguirán emparejados con su detección correspondiente

sin haber visto modificado su patrón de inercia ni trayectoria

El mecanismo de absorción de tracks individuales dentro de uno colectivo es el siguiente:

• Cuando un track queda cerca de la región de influencia de una oclusión confirmada por el detector,

queda vinculado a esta de forma que respeta la inercia que llevara su patrón de movimiento, pero no se

le permite moverse libremente. En lugar de eso ve su movimiento modificado por la silueta de la

oclusión.

• Se guarda la posición relativa de entrada en la silueta abductora, y se hacen búsquedas en la dirección

y el sentido en el que se estuviera moviendo por si apareciera una detección individual sin asignar

adyacente al otro lado del blob abductor (el jugador ha cruzado la oclusión) o en la zona por la que ha

entrado (el jugador ha regateado y abandona la oclusión por donde entró).

Una peculiaridad de la implementación del seguidor de oclusiones es que no se pueden inicializar tracks

individuales dentro de él. Esta imposición es fácil de asumir dado que para que una oclusión se forme, debe

haber un conjunto de tracks ya existentes que converjan en el mismo espacio (los tracks no deben aparecer de

la nada), y tiene una ventaja doble:

• No tener que decidir el número exacto de detecciones individuales que conforman la detección de la

oclusión. Las situaciones observadas en las distintas secuencias de vídeo son tan variadas que permitir

generar tracks en mitad de una oclusión supone problemas muy graves como no tener una inercia de

movimiento que actualizar y predecir con su filtro de Kalman (todos los tracks aparecerían en un mismo

punto y prácticamente parados, con el consecuente problema de asignación que esto implica por

necesitar una detección individual a la que emparejarse).

• No tener que decidir una categoría de clasificación para cada track recién creado dentro de una oclusión.

El histograma de una oclusión no tiene por qué corresponderse con ninguna de las categorías de

clasificación utilizadas (debido a la posible existencia de sombras en la oclusión), o en caso de sí

corresponderse, tener una puntación de clasificación muy baja. Además, se necesitarían varios

fotogramas consecutivos de validación antes de generar un track nuevo, hecho que haría que se tuvieran

aún más fuentes de error en el seguimiento multiobjetivo.

Page 57: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

35 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Tras la extensa explicación de los detalles de implementación del seguidor de oclusiones y cómo afecta a los

tracks individuales a lo largo del tiempo, vamos a analizar el detalle de una secuencia paso a paso para acabar

de comprender el funcionamiento de forma mucho más clara:

Figura 3-18. Caso de uso de detector y seguimiento de oclusiones y cómo afecta a los tracks individuales.

a) Tres jugadores bien detectados y estudiados: “1 azul”, “1 amarillo”, “2 amarillo”. El azul empieza a

provocar una oclusión etiquetada como “1 negra”.

b) El azul y el “1 amarillo” quedan integrados en una oclusión clasificada como tal por conformar una

silueta demasiado grande para poder ser un único jugador (escalado por la profundidad).

c) Los tres jugadores avanzan hacia la derecha, pero el azul se queda rezagado. El track de la oclusión

considera que se han separado y deja libres a los tres individuales respetando su inercia y posiciones

relativas. La oclusión “1 negra” desaparece, pero seguidamente ambos jugadores amarillos crean otra

oclusión y aparece un nuevo track abductor (“3 negro”).

d) El azul sigue atrás, totalmente independiente. Ambos amarillos siguen manteniendo la “oclusión 3” que

avanza lentamente.

e) Los tres jugadores salen corriendo repentinamente hacia la derecha (se aprecia en sus estelas), y el azul

queda englobado en el track abductor.

f) El azul vuelve a quedarse atrás, se asigna correctamente a su detección azul y aunque sigue avanzando

hacia la derecha, su silueta está separada de la “oclusión 3” mientras ambos amarillos siguen unidos

pero gracias al sistema de seguimiento de oclusiones mantienen sus identidades en la secuencia.

(Aunque no tiene nada que ver con el caso de estudio, nótese cómo el jugador al fondo inicialmente

clasificado como “5 amarillo” tras múltiples detecciones azules ha acabado siendo “6 azul”. Este hecho

es perfectamente asumible dado que incluso un observador humano tendría dificultades detectando y

clasificando correctamente a ese jugador tan chico en una imagen de tan poca resolución).

g) Finalmente ambos jugadores amarillos abandonan la escena, se deshace la “oclusión 3” por lo que los

tracks individuales quedan libres y al no haber detecciones que los alimenten ambos tracks inician la

cuenta atrás para ser destruidos.

Aunque el detector y mantenedor de oclusiones mejoran notablemente la estabilidad, fiabilidad y precisión del

sistema de seguimiento global, sigue habiendo muchas situaciones de las que no se puede recuperar (algunas

incluso propias del desarrollo normal del partido, como saques de esquina, celebraciones de gol, jugadas a balón

parado, etc.).

a) b) c) d)

e) f) g) h)

Page 58: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Sistema Implementado

36

3.7 Homografía

Este bloque únicamente se encarga de utilizar las matrices de proyección homográfica que ya estaban

computadas desde el principio (3.2.2) entre el plano imagen y el plano cenital para obtener todas las trayectorias

representadas a la vez en tiempo real sobre un sistema de coordenadas que permite interpretar mucho mejor

todos los datos extraídos por el sistema.

Con el fin de aumentar la comodidad visual de los datos representados sobre la proyección cenital no solo se

proyectan los puntos (x,y) del plano lateral, sino una ventana temporal de cada una de las trayectorias dando

lugar a las estelas por las que ha pasado cada uno de los jugadores:

Figura 3-19. Efecto de la proyección de todos los tracks y sus estelas desde un plano imagen sobre un

plano cenital usando la matriz de proyección calculada desde el principio de la secuencia.

Aprovechamos la figura anterior para poner de manifiesto un nuevo efecto pernicioso de la perspectiva y repasar

las dificultades a las que nos hemos enfrentado durante todo el proyecto. Un jugador al fondo de la imagen puede

ser incluso más de un orden de magnitud más pequeño que otro en primer plano, lo cual tiene las consecuencias

ya analizadas:

• Debilidad a las propias operaciones morfológicas de limpieza de sombras y ruido.

• Necesidad de escalado con la profundidad.

• Menor fiabilidad de la detección, clasificación y seguimiento en el fondo.

Pero es que ahora además se aprecia que las asociaciones de puntos entre plano imagen y plano cenital en el

fondo implican una extrapolación de la proyección, lo que es lo mismo, pequeñas variaciones de incluso píxeles

en el Eje Y implican una proyección prácticamente oscilante en el Eje Y’ del plano cenital en el lado opuesto.

Repetimos la figura anterior realzando estos comportamientos:

Page 59: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

37 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Figura 3-20. Efecto pernicioso de la perspectiva sobre la zona de extrapolación de la proyección (el plano

más alejado del plano imagen), a pesar de tener en cuenta el escalado lineal, el Eje Y’ del plano cenital es

muy sensible a las más mínimas perturbaciones del Eje Y del plano imagen.

3.8 Estadísticas deportivas

Dado que éste es un proyecto de ingeniería, es muy satisfactorio poder otorgarle un enfoque práctico con el fin

de ver que el trabajo realizado se materializa en unos resultados concretos. La función de este bloque lógico es

por tanto englobar una serie de ideas y aplicaciones que sirvan de demostración de qué se podría hacer a partir

de la información de posición de cada jugador en los instantes temporales que dura cada una de las secuencias

obtenida por el sistema, así como enseñar implementaciones reales que la industria demanda. Además, podemos

con ello completar uno de los objetivos iniciales del proyecto, que era realizar un entorno de trabajo modular

que pusiera de manifiesto la utilidad práctica de los resultados obtenidos.

3.8.1 Mapas de calor

Sin duda una de las aplicaciones que más fuerza visual aporta a los datos de movimiento sobre un terreno de

juego de cara al espectador son los conocidos como mapas de calor. Mediante ellos se obtiene una representación

de por dónde se ha movido cada jugador o todo el equipo de forma conjunta, y con un gradiente de colores se

representa el porcentaje de tiempo que se ha pasado en cada uno de los puntos.

En el marco del proyecto se ha realizado una implementación partiendo desde cero. Lo interesante es que es

capaz de irse calculando el mapa de calor en tiempo real a medida que se van obteniendo los datos de posición

de cada jugador. Para ello se va generando una máscara binaria con un círculo centrado en la posición cenital de

cada jugador cada fotograma y contabilizando en número de fotogramas total que se está realizando el

procedimiento. Cada círculo se superpone con otros a medida que los jugadores se van moviendo, añadiendo

valores a las medidas ponderadas de ocupación. Finalmente, la máscara binaria resultante se utiliza para colorear

el gradiente de color usando una suma de matrices ponderada para obtener el efecto de transparencia sobre el

plano cenital sobre el que se pintaban las proyecciones homográficas. A continuación, mostramos algunos mapas

de calor de algunas de las secuencias empleadas:

Page 60: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Sistema Implementado

38

Figura 3-21. Ejemplos de mapas de calor con distribución “Colorscale Jet” obtenidos de algunas

secuencias.

3.8.2 Líneas de fuera de juego posicionales

Otro tipo de información derivada de los datos posicionales obtenidos por el sistema de seguimiento una vez

que estamos sobre el plano cenital es la posibilidad de obtener en tiempo real las líneas virtuales de “fuera de

juego posicional”. Para ello hay que encontrar en cada fotograma al jugador de un equipo más cercano a su

propia portería y trazar en su coordenada X’ del plano cenital una línea perpendicular al campo. Cualquier

jugador del otro equipo atacante que esté más cerca de su portería rival que el último defensa contrario incurrirá

en un fuera de juego posicional. No obstante, es más bien un ejercicio teórico, porque en la práctica hay dos

matices importantes que hacen que la implementación tenga poca utilidad real:

• Estamos únicamente usando una cámara en el alcance inicial del proyecto, por lo que “el último jugador

detectado más cercano a su portería” es más que probable que no sea en todo el campo (hecho que sí

tendría utilidad real), sino solo en el campo de visión de la cámara.

• Las líneas de fuera de juego solo tienen sentido si está involucrado el balón. El estudio del balón está

fuera del alcance inicial del proyecto.

Sin embargo, una vez más estamos ante un buen demostrador visual de información práctica el cual implica

establecer relaciones adicionales entre los jugadores y emitir avisos o alertas específicos.

Figura 3-22. Ejemplo de cómo las líneas de fuera de juego posicionales evolucionan con el estado de los

jugadores. En esta secuencia, la línea virtual izquierda queda delimitada por el jugador “marrón” más a la

izquierda, mientras que la línea virtual derecha queda delimitada por el jugador “blanco” más a la derecha.

Page 61: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

39 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

3.8.3 “Campogramas”

Un “campograma” es un término relacionado con el mundo del fútbol que implica dividir todo el campo en

cuadrantes virtuales con una numeración concreta para conocer la ocupación de cada uno de ellos en tiempo

real. Esta información es útil para los entrenadores. A partir de los datos de posición de todos los jugadores, y

utilizando las técnicas de ponderación de máscaras para pintar transparencias desarrolladas para los mapas de

calor (3.8.1), se decidió desarrollar este módulo de cara a completar el demostrador del entorno de trabajo. Por

supuesto también es capaz de operar en tiempo real junto con los otros sistemas desarrollados.

Figura 3-23. Ejemplo de campogramas obtenidos en tiempo real a partir de las posiciones de los objetivos

de la escena.

3.8.4 Medir cualquier distancia relativa

Este último punto parece algo obvio conociendo lo que puede hacer el sistema, pero conviene dejarlo

explícitamente dicho para abrir la puerta a toda una rama de estudio de la información y modelado semántico de

la interactuación entre jugadores, pudiendo ser de gran ayuda para estudiar y planificar estrategias. En concreto

y una vez más, aprovechando la comodidad que da tener la representación cenital donde se pueden medir

distancias reales a escala conocida sin perspectiva:

Figura 3-24. Ejemplo de medición de distancia en el plano cenital y reproyección de esa información de

vuelta hacia el plano imagen.

Page 62: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo
Page 63: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

41

4 RESULTADOS

n este capítulo procederemos a presentar la evaluación del sistema implementado al ejecutar los algoritmos

con los parámetros de configuración elegidos para las secuencias de vídeo estudiadas. Se ha procurado

escoger secuencias con peculiaridades muy distintas entre sí para ver cómo se comportaba el sistema final

trabajando en condiciones complicadas y ver si las configuraciones y relaciones entre los subsistemas de

detección, clasificación y seguimiento aportan una mejoría significativa cuando se diseña cada uno de los

bloques con las consideraciones necesarias para que los otros bloques trabajen de forma óptima.

Para evaluar los resultados se han escogido fragmentos de algunas de las secuencias procesadas por el sistema

en los que se producían situaciones complicadas por los siguientes motivos:

• Detección: Problemas de sombras, perspectiva y baja calidad de algunos vídeos provocan muchos

artefactos y ruido. Se han evaluado los resultados de las secuencias con el sistema de eliminación de

sombras tanto activado como desactivado para ver su impacto en la detección y en los posteriores

sistemas.

• Clasificación: Debido a problemas de iluminación, oclusiones y cambio en la pose de los objetivos, las

métricas utilizadas para la clasificación pueden arrojar resultados erróneos de clasificación. Al calcular

la distancia de Bhattacharyya de un objetivo que va a ser clasificado comparando su histograma en el

espacio de color HS(V) con todo el conjunto de entrenamiento, se ha cuantificado cuánto supone

cambiar la distancia relativa mínima exigida para que el clasificador se decida por una u otra categoría.

En secuencias con objetivos de colores muy diferentes entre sí dicha distancia puede ser más elevada y

el clasificador no cometerá tantos errores, pero en secuencias en las que los objetivos se parezcan entre

sí (por tener equipaciones muy similares o directamente por problemas de iluminación que saturen los

colores), habrá que bajar dicha distancia para poder obtener clasificaciones, con el consecuente aumento

de errores debido a la sensibilidad del clasificador.

• Seguimiento: Cuanto más robustos sean los módulos de detección y clasificación, más robusto será el

sistema de seguimiento porque los errores de un sistema se propagan hacia el siguiente. Por ello el

módulo de seguimiento deberá lidiar con los problemas que no solventen los módulos anteriores. Se

evaluará el rendimiento de este módulo de tracking configurando el escalado de parámetros del vector

de filtros de Kalman y activando y desactivando el submódulo de tratamiento de oclusiones descrito en

3.6.2.

4.1 Métricas utilizadas

Para evaluar el rendimiento antes debemos definir los siguientes conceptos:

• Positivos reales (True Positives, TP): son aquellos valores ciertos tanto para la predicción como para la

realidad. En estos casos el sistema ha acertado con su decisión.

• Negativos reales (True Negatives, TN): son aquellos valores no ciertos tanto para la predicción como

para la realidad. En este caso el sistema acierta al no clasificar el elemento como un “positivo”.

E

Page 64: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Resultados

42

• Falsos positivos (False Positives, FP): El sistema comete un error al considerar que lo que está

analizando se corresponde con un positivo cuando en la realidad no lo es.

• Falsos negativos (False Negatives, FN): El sistema se equivoca al no contabilizar un positivo que en la

realidad sí lo debería haber sido.

Aplicados al caso concreto de nuestro detector y nuestro clasificador:

• Detector:

o VP: un jugador real es detectado como tal, y no es etiquetado como tal por el módulo de

clasificación.

o VN: el detector descarta ruido provocado por sombras, códec de vídeo o cualquier otro

elemento que no sea un jugador, y no lo marca como tal. Los sistemas de clasificación y

seguimiento no tendrán que lidiar con este problema porque ya lo ha corregido el detector.

o FP: el detector marca como “jugador” algo que no debería serlo (engañando por tanto al

clasificador como al sistema de seguimiento, que deberán intentar darse cuenta del error y

compensarlo de alguna manera).

o FN: un jugador real no es detectado. El posterior clasificador no puede hacer nada por corregir

este error en este fotograma, recayendo dicha responsabilidad sobre el sistema de seguimiento.

• Clasificador:

o VP: el jugador real es clasificado con la categoría de equipo que le corresponde según el análisis

de su histograma de matiz y saturación (HS).

o VN: el clasificador no emite una clasificación concluyente para un objetivo que en verdad no

era un jugador. Podemos decir que en este caso el clasificador corrige un falso positivo del

detector, dado que un objetivo que en realidad no era un jugador consiguió llegar hasta el

módulo de clasificación, donde allí ha sido descartado.

o FP: el clasificador se equivoca en la categoría de clasificación. Esto puede ser debido a la

similitud en esa circunstancia del histograma HS del objetivo con los histogramas

precalculados.

o FN: el clasificador no es capaz de determinar la categoría del jugador, a pesar de ser un jugador

de verdad y no una mala detección. Esto puede ser debido a similitudes muy altas entre los

colores de las camisetas, cambios en la pose del jugador con respecto a los histogramas HS

precalculados, o problemas de iluminación.

Page 65: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

43 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Ilustremos la estrecha relación entre detector y clasificador con un ejemplo práctico concreto:

Figura 4-1. Ejemplos concretos de errores y aciertos de detector y clasificador. Izquierda: Imagen de entrada con

los resultados de ambos bloques. Derecha: figuras detectadas tras el proceso de clasificación rodeadas por un

rectángulo del color elegido, o rellenas de rojo si clasificación no concluyente.

En la imagen anterior se muestra etiquetado un fotograma procesado de una de las secuencias procesadas que

contiene varios casos simultáneos de detección y clasificación. A la izquierda se han etiquetado los casos

(comenzando por “D” si pertenecen al detector y por “C” si pertenecen al clasificador). A la derecha se aprecia

el resultado del criterio de detección y clasificación. De forma práctica se pueden apreciar:

• DFN (Detector - Falso Negativo): hay un entrenador quieto vestido de blanco que ni siquiera ha sido

detectado (su silueta no aparece. El motivo es que no se ha movido y no ha activado el detector de

movimiento siquiera).

• DTP + CTP (Detector y Clasificador - Verdaderos positivos); hay múltiples casos, se puede apreciar

que sus siluetas han sido detectadas y sus colores correctamente clasificados.

• CFP (Clasificador – Falso Positivo): el clasificador se ha equivocado considerando al jugador del peto

verde como del equipo rojo. Esta secuencia es muy sensible a la clasificación del histograma porque

ambos grupos de clasificación tienen elementos comunes (camiseta roja). Por eso es necesario el umbral

de separación mínima entre categorías.

• CFN (Clasificador – Falso Negativo): la silueta rellena de rojo de la parte superior de la imagen derecha

ha sido detectada correctamente por el detector, pero el clasificador no ha sido capaz de establecer la

categoría del jugador y lo rechaza. Vemos que el umbral de clasificación establece una relación de

compromiso entre los FP y los FN del clasificador.

• DFP + CTN (Detector FP, y Clasificador TN): la silueta rellena de rojo del extremo derecho había sido

detectada erróneamente porque se debe a un error del vídeo (realmente no hay jugador ahí todavía). Al

ser presentada esa silueta al clasificador, este la ha rechazado correctamente por no tener una categoría.

• DTN (Detector – Verdadero Negativo): la sombra del extremo derecho es bastante notable pero el

detector ha sido capaz de descartarla antes siquiera de presentársela al clasificador.

A partir de los conceptos anteriores se definen las siguientes métricas habituales para evaluar el rendimiento de

detectores y clasificadores:

• Precisión (Precision, P): es la relación entre las observaciones positivas predichas correctamente y el

total de observaciones positivas. Cuanto más preciso es el sistema, menor tasa de falsos positivos debe

tener.

𝑃 =𝑇𝑃

𝑇𝑃 + 𝐹𝑃

(4–1)

Page 66: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Resultados

44

• Exhaustividad (Recall, R): es la relación entre las observaciones positivas predichas correctamente y el

número de observaciones relevantes.

• Exactitud (Accuracy, A): es la relación entre las observaciones correctamente predichas y el total de

observaciones.

El sistema de seguimiento es algo más complejo de evaluar dado que la casuística que pueden seguir las

trayectorias es mucho mayor, hasta el punto de rozar a veces la subjetividad, dado que requiere tener en cuenta

la evolución temporal antes de decidir si se responde correctamente, considerando que por ejemplo en una misma

secuencia pueden existir trayectorias muy cortas perfectamente seguidas (un jugador entra en escena y sale de

ella al poco tiempo), y trayectorias muy largas sujetas a muchas perturbaciones.

Algunas métricas habituales [31] para evaluar conjuntamente el rendimiento del sistema de seguimiento y la

lógica de gestión adicional de tracks se presentan a continuación:

• MT (Mostly Tracked): Son las trayectorias seguidas satisfactoriamente durante la ventana temporal de

estudio.

• PT (Partially Tracked): Aquellas que sufren algún incidente que hacen que la ventana temporal no

hayan sido seguidas correctamente siempre.

• ML (Mostly Lost): Aquellas que no son capaces de seguir a su objetivo correspondiente y están perdidas

casi en la totalidad de su ventana de actuación.

• IDS (ID Switches): Es el número de cruces de identidad al confundirse dos trayectorias e intercambiar

objetivos.

• FRMT (Fragmentations): Número de trayectorias fragmentadas, es decir, cuyo objetivo se ha perdido

y se ha reiniciado el seguimiento con otro identificador. Aunque este caso no se considera un éxito

completo, existen algoritmos capaces de reconstruir trayectorias de seguimiento fragmentadas.

4.2 Secuencias de vídeo estudiadas

Los fragmentos de vídeo analizados han sido obtenidos con distintas cámaras de baja/media resolución, con una

tasa de entre 20 y 30 fotogramas por segundo obtenidas gracias a la colaboración de algunos clubes de fútbol

con la Fundación Andaluza de la Imagen, el Color y la Óptica - FAICO. Se ha procurado escoger para el

análisis pormenorizado ventanas temporales que presenten situaciones de interés para los sistemas de detección,

clasificación y seguimiento. Para evaluar los distintos módulos se han usado las métricas cambiando las

condiciones de funcionamiento de cada uno de ellos:

• Detector con módulo de eliminación de sombras o sin él. Es de esperar que cuando se desactive la

eliminación de sombras se tienda a obtener muchos más errores en el detector (los cuales implicarán un

aumento de errores en el clasificador) y la aparición de muchas más “falsas oclusiones” en el sistema

de seguimiento al unirse varios jugadores entre sí en la máscara binaria a través de sus sombras.

𝑅 =𝑇𝑃

𝑇𝑃 + 𝐹𝑁

(4–2)

𝐴 =𝑇𝑃 + 𝑇𝑁

𝑇𝑃 + 𝑇𝑁 + 𝐹𝑃 + 𝐹𝑁

(4–3)

Page 67: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

45 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

• Clasificador con cambios en la separación mínima entre histogramas HS necesaria para discriminar

categorías de equipos. En secuencias de vídeo en las que cueste distinguir ambos equipos (debido a baja

calidad o a similitud innata de las categorías de clasificación), aumentar la separación mínima exigida

entre los histogramas HS implicará que el clasificador se muestre mucho más indeciso y genere más

falsos negativos. Reducir esta separación mínima exigida hará que el clasificador tome muchos más

riesgos y pueda dar lugar a cambios de categoría de un mismo jugador en sucesivos fotogramas. Ambos

casos supondrán un estrés adicional para el sistema de seguimiento posterior.

• Módulo de seguimiento con tratamiento de oclusiones y sin ellas. Cuando ocurren oclusiones, los tracks

que intervengan en ellas pueden perderse rápidamente u ocurrir intercambios de identidad no deseados.

El número de trayectorias perdidas, cambios de identidad y fragmentaciones debería ser mayor si no se

utiliza el sistema de tratamiento de oclusiones desarrollado en este proyecto, y en general los índices de

las trayectorias de los distintos equipos a medida que avance la secuencia será mucho más alto.

Una consecuencia de utilizar estos criterios es que el detector no cambiará sus estadísticas cuando el criterio

estudiado sea cambiar un parámetro del clasificador (por eso las curvas de Precision, Recall y Accuracy del

detector se solaparán en los criterios de cambio del umbral de histogramas y activación de seguimiento de

oclusiones. Sin embargo, lo contrario sí se cumple porque los cambios en el detector sí que se propagan al

módulo de clasificador y al módulo de seguimiento.

Procedemos a analizar las secuencias.

4.2.1 Mairena - Conil

La secuencia completa dura 3:49s, está grabada a 25 FPS con una atípica resolución de 352x576, y se han

escogido ventanas de 400 fotogramas. Este vídeo presenta un elevado nivel de ruido, equipos difícilmente

distinguibles (amarillo y gris) bajo una iluminación natural intensa que provoca altas sombras. Ruido de

codificación elevado. La baja altura de la cámara sobre una grada cercana introduce una perspectiva importante.

Tabla 4-1.Mairena - Conil. Comparativa para un mismo fotograma de las distintas pruebas.

a)

• Eliminación de sombras

• Mínima separación HS

exigida: 2%

• Seguidor de oclusiones

b)

• Sin eliminación de sombras

Page 68: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Resultados

46

Como resultado llamativo tenemos que, al contrario de lo que podría parecer, reducir la separación mínima

exigida entre los histogramas de clasificación para rechazar o no la decisión parece ser algo positivo para el

clasificador puesto que desaparecen sus falsos negativos (representados como siluetas rellenas de rojo). Sin

embargo, debido al enorme parecido que hay entre ambos tipos de jugadores, en la práctica acaban

produciéndose multitud de cambios consecutivos en la clasificación de un mismo jugador a lo largo del tiempo,

con todo el problema que eso supone para el sistema de seguimiento.

El caso de aumentar la separación mínima cuando las equipaciones son tan similares por las condiciones de

grabación de la secuencia conlleva que el clasificador rechace muchas más decisiones por no estar totalmente

seguro, lo cual se puede traducir si ocurre con mucha frecuencia en que el sistema de seguimiento se queda sin

observaciones y se pierden las trayectorias.

Tabla 4-2. Mairena - Conil. Precision, Recall y Accuracy de detector y de clasificador para los distintos

criterios de medida.

c)

• Mínima separación HS

exigida: 5%

d)

• Mínima separación HS

exigida: 0%

e)

• Sin seguidor de oclusiones

0,60

0,80

1,00

20 40 60 80 100 120 140 160 180 200 220 240 260 280 300 320 340 360 380 400

PRECISION (CLASIFICADOR)

NORMAL SOMBRAS C_INSENSIBLE

C_SENSIBLE SIN OCLUSIONES

Page 69: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

47 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Se ve que el detector es bastante preciso porque no introduce falsos positivos. Paradójicamente esto puede ser

un síntoma negativo dado que implica que las operaciones geométricas son agresivas con el fin de quitar las

sombras y puede que quiten algún objetivo válido cometiendo por tanto un falso negativo.

También ocurre el efecto de que si el detector empieza a fallar muchísimo (caso de computar todas las sombras),

es probable que el clasificador tenga poco trabajo que hacer porque apenas hay detecciones válidas, entonces

puede llegar a dos casos límites en los que Precision y Recall parecen tender a infinito:

• Se han encontrado “todos los TP existentes”, aunque su número era cero. FN = 0, por lo que

técnicamente Recall = 1 en este caso frontera.

• No se genera ninguna medida espuria al mantener FP = 0, por lo que en este caso límite técnicamente

Precision = 1 (aunque ni siquiera había datos).

No obstante, este efecto se ve empañado en el clasificador por el hecho de existir esa extrema similitud de

histogramas por la mala iluminación (fuerte luz directa solar da en las camisetas blancas y amarillas, y la cámara

tiene los niveles de brillo muy altos) hace que en general el clasificador sea poco fiable. Usar el clasificador más

sensible hace que mejoren un poco las medidas, pero a costa de variar mucho la clasificación de un mismo

objetivo a lo largo de los fotogramas lo cual es muy perjudicial para el seguimiento.

Page 70: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Resultados

48

Con respecto a las métricas de seguimiento hemos obtenido lo siguiente:

Tabla 4-3.Mairena - Conil. Estimadores del módulo de seguimiento de múltiples objetivos.

Caso MT PT ML IDS FRMT

a) 9 5 3 4 3

b) 3 8 6 7 4

c) 9 5 4 6 7

d) 6 6 5 6 7

e) 7 5 6 7 8

De las distintas respuestas se infiere un patrón esperado a priori:

• Desactivar el detector de sombras perjudica a las detecciones y los errores se arrastran a otros módulos

• Hacer menos sensible al clasificador aumenta el número de fragmentaciones.

• Los resultados no son muy llamativos en vídeos con mucha perspectiva y mala iluminación, tiende a

haber mucho caos.

• Desactivar el gestor de oclusiones dispara los robos de identidad, aunque la suposición es que a medida

que la oclusión dure en el tiempo ocurra justo lo contrario.

• El sistema aparentemente más estable es el que tiene todos los módulos activados y utiliza un criterio

de separación de histogramas HS tras haber hecho varias pruebas con el entrenamiento inicial.

4.2.2 Entrenamiento Mairena (Secuencia 04)

Esta secuencia tiene una duración total de 2:35, grabada a 30 FPS con una resolución de 640x480 píxeles y se

han analizado ventanas de 400 fotogramas. A pesar de tener mejor calidad de imagen que la secuencia 4.2.1, la

bajísima altura de la cámara tiene la consecuencia de sufrir una perspectiva extrema lo cual implica lidiar con

objetivos muy grandes en primer plano y objetivos mucho más chicos a solo pocos metros del plano imagen

(esto se aplica igual para sus sombras). Además, los jugadores van vestidos igual. Su única diferencia es un peto

que no cubre otras partes de la camiseta común para todos, lo que supone una fuente de errores para el

clasificador en cuanto cambia la pose de los jugadores.

Page 71: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

49 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Tabla 4-4.Entrenamiento Mairena (Secuencia 04). Comparativa para un mismo fotograma de las distintas

pruebas.

Los resultados son los siguientes:

a)

• Eliminación de sombras

• Mínima separación HS

exigida: 2%

• Seguidor de oclusiones

b)

• Sin eliminación de

sombras

c)

• Mínima separación HS

exigida: 7%

d)

• Mínima separación HS

exigida: 0%

e)

• Sin seguidor de oclusiones

Page 72: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Resultados

50

Tabla 4-5. Entrenamiento Mairena (04). Precision, Recall y Accuracy de detector y de clasificador para los

distintos criterios de medida.

A la vista de los resultados del detector, es muy significativo que la versión que no elimina las sombras parezca

mejorar las detecciones. Seguramente sea debido a que al ser una secuencia que necesita unas operaciones

morfológicas muy agresivas para eliminar las poderosas sombras, el hecho de tener siluetas grandes favorezca

que no desaparezcan tan fácilmente pequeñas siluetas de jugadores.

Con respecto al clasificador, una vez más sorprende que la versión más sensible parezca tener mejores

resultados, pero esto es debido a que los histogramas de esta secuencia son extremadamente fáciles de confundir

entre sí al menor cambio en la pose del objetivo (recordemos que todos llevan las mismas camisetas, con

variaciones en los petos). Lo que ocurre es que esa explosión de cambios de color asignado a un mismo objetivo

dificulta mucho la tarea del seguimiento.

0,60

0,80

1,00

20 40 60 80 100 120 140 160 180 200 220 240 260 280 300 320 340 360 380 400

PRECISION (CLASIFICADOR)

NORMAL SOMBRAS C_INSENSIBLE

C_SENSIBLE SIN OCLUSIONES

Page 73: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

51 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Con respecto a las métricas de seguimiento hemos obtenido lo siguiente:

Tabla 4-6. Entrenamiento Mairena (04). Estimadores del módulo de seguimiento de múltiples objetivos.

Caso MT PT ML IDS FRMT

a) 6 3 3 3 4

b) 3 5 4 7 6

c) 7 5 1 2 4

d) 6 7 3 6 7

e) 6 3 6 5 6

Es muy interesante observar que tanto endurecer como relajar el criterio de separación de histogramas en esta

secuencia rápida con oclusiones breves y proclive a confundir jugadores mejora significativamente el

seguimiento. El motivo puede ser que distinto según a qué caso nos refiramos:

• Si se toman menos riesgos surgen menos tracks y es más fácil emparejarlos bien.

• Si el clasificador es más permisivo pueden existir rachas de buenas predicciones que encuentran

rápidamente un objetivo con el que emparejarse negando la posibilidad a otros tracks de aparecer por

la implementación de zonas de exclusión.

• También desactivar el seguidor de oclusiones hace que los tracks vayan rápidamente a donde necesiten

En todo caso es probable que escogiendo otras ventanas temporales o más largas los resultados fueran mucho

peores debido a la perspectiva, las sombras, la velocidad de los regates y la similitud de los histogramas.

4.2.3 Sevilla - Córdoba (Secuencia 01)

Esta secuencia tiene una duración total de 5:35, grabada a 50 FPS con una resolución de 1280x720 píxeles y se

han analizado ventanas de 400 fotogramas. La calidad de imagen es muy buena, la iluminación más controlada

y la profundidad no es tan crítica porque está grabada la secuencia desde gran altura. La contrapartida es que el

tamaño relativo de los jugadores es muy bajo por estar a gran distancia.

Page 74: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Resultados

52

Tabla 4-7.Sevilla - Córdoba (Secuencia 01). Comparativa para un mismo fotograma de las distintas pruebas.

Se aprecia que los espacios de color HS son más separables que en otras secuencias de vídeo, y el sistema es

más robusto a cambios en dicho umbral mínimo exigido. Solo cuando se sube mucho dicha separación

a)

• Eliminación

de sombras

• Mínima

separación HS

exigida: 5%

• Seguidor de

oclusiones

b)

• Sin

eliminación de

sombras

c)

• Mínima

separación HS

exigida: 8%

d)

• Mínima

separación HS

exigida: 2%

e)

• Sin seguidor

de oclusiones

Page 75: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

53 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

obligatoria aparece alguna indecisión del clasificador, y reducirla no conlleva que aparezcan esos “parpadeos”

de clasificaciones en fotogramas consecutivos.

Un ejemplo concreto lo vemos en el fotograma 140 en el que se aprecia que el detector “normal” con separación

del 5% cometió un FP y un solo FN, mientras la versión del clasificador más conservadora que no se arriesga

con menos del 8% de diferencia no cometió ningún FP en ese fotograma, pero por el contrario tuvo tres FN.

Viendo en detalle los datos tenemos que:

Tabla 4-8.Sevilla - Córdoba (Secuencia 01). Precision, Recall y Accuracy de detector y de clasificador para los

distintos criterios de medida.

La sensación es que con conjuntos tan bien separables de histogramas no compensa la versión del clasificador

más conservadora porque su tasa de falsos positivos no ha mejorado pero sí ha crecido la cantidad de falsos

0,60

0,80

1,00

20 40 60 80 100 120 140 160 180 200 220 240 260 280 300 320 340 360 380 400

PRECISION (CLASIFICADOR)

NORMAL SOMBRAS C_INSENSIBLE

C_SENSIBLE SIN OCLUSIONES

Page 76: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Resultados

54

negativos motivados por exigir una mayor separación en los histogramas HS aun estando ya bastante lejanos

entre sí en esos espacios de características.

El argumento complementario se aplica al clasificador que asume más riesgo cuando los espacios de color HS

son bien separables. Elimina bastantes dudas del clasificador normal (reduce el número de falsos negativos) a

costa de aumentar muy pocos falsos positivos, como se puede apreciar en el fotograma 40 y el 120.

Esto se aprecia en sus curvas de Recall y Accuracy de clasificación, en las que la versión arriesgada supera

incluso a la que cuando durante el desarrollo se consideró óptima.

Por otra parte, cuando desactivamos la detección de sombras aumentan mucho los verdaderos negativos del

detector (significa que está haciendo un buen trabajo quitando mucho ruido), pero decaen notablemente los

verdaderos positivos y arrastramos algunos errores de clasificación adicionales.

Con respecto a las métricas de seguimiento hemos obtenido lo siguiente:

Tabla 4-9. Sevilla - Córdoba (Secuencia 01). Estimadores del módulo de seguimiento de múltiples objetivos.

Caso MT PT ML IDS FRMT

a) 11 4 3 2 4

b) 7 7 5 4 6

c) 9 6 3 4 4

d) 10 7 4 4 5

e) 7 4 5 5 6

Esta secuencia es bastante robusta gracias a no tener todos los problemas que le achacábamos a las primeras.

Merece la pena mencionar que la categoría que más problemas da es la del árbitro, siendo de suponer que es por

la similitud del árbitro con el césped del terreno de juego.

4.2.4 España - Bolivia

Esta secuencia tiene una duración de únicamente 29 segundos, grabada a 30 FPS con una resolución de

1210x682 píxeles y se han analizado ventanas de 400 fotogramas. La calidad de imagen es buena, la iluminación

controlada y la profundidad, aunque notable, no es muy crítica porque está tomada desde gran altura. La principal

peculiaridad de esta secuencia es que está grabada con una cámara sujeta a mano alzada sin estabilizar. Se utilizó

un algoritmo de estabilización [38] basado en compensar el flujo óptico de la imagen, pero incluso así está sujeta

a permanentes vibraciones que hacen que nuestro detector de movimiento esté siempre dibujando muchas de las

líneas del campo y secciones del césped, y se quería comprobar el funcionamiento del sistema bajo este tipo de

circunstancias.

Page 77: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

55 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Tabla 4-10.España - Bolivia. Comparativa para un mismo fotograma de las distintas pruebas.

Uno de los efectos no deseados del hecho de que haya movimiento continuo y el fondo no llegue a integrarse es

el hecho de que en ciertas zonas del campo aparezcan falsos positivos del detector y del clasificador casi

permanentemente, como por ejemplo muchas intersecciones de líneas del campo que acaban colándose:

a)

• Eliminación de sombras

• Mínima separación HS

exigida: 3%

• Seguidor de oclusiones

b)

• Sin eliminación de sombras

c)

• Mínima separación HS

exigida: 6%

d)

• Mínima separación HS

exigida: 1%

e)

• Sin seguidor de oclusiones

Page 78: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Resultados

56

Figura 4-2. Falso jugador mal clasificado debido al constante movimiento de la cámara.

De hecho, según los datos, ni siquiera el clasificador conservador es capaz de notar que esas líneas emborronadas

por el movimiento no son jugadores, dado que acaban siendo manchas blancas con pequeños parches verdes,

justo como los jugadores del equipo blanco con pantalones verdes.

Tabla 4-11.España - Bolivia. Precision, Recall y Accuracy de detector y de clasificador para los distintos

criterios de medida.

0,60

0,80

1,00

20 40 60 80 100 120 140 160 180 200 220 240 260 280 300 320 340 360 380 400

PRECISION (CLASIFICADOR)

NORMAL SOMBRAS C_INSENSIBLE

C_SENSIBLE SIN OCLUSIONES

Page 79: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

57 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Los resultados son aparentemente decentes porque realmente la tasa de falsos positivos tanto de detector como

de clasificador no son muy altas, pero se aprecia una oscilación muy alta independientemente del criterio

seleccionado (aunque la versión que no detecte sombras es siempre peor que cualquier otra y más en un vídeo

con tanto movimiento de cámara). En realidad no son resultados buenos: casi siempre que un jugador pase por

encima de las líneas del campo ese jugador se perderá o se clasificará mal.

Al habernos basado en detección de movimiento como criterio principal, la clara conclusión es que todo el

entorno de trabajo propuesto es débil una cámara móvil o a un fondo que no se esté quieto con frecuencia. Una

de las líneas de desarrollos futuros debe ser por tanto añadir las bondades de métodos más robustos a estas

circunstancias.

Con respecto a las métricas de seguimiento hemos obtenido lo siguiente:

Tabla 4-12. España - Bolivia. Estimadores del módulo de seguimiento de múltiples objetivos.

Caso MT PT ML IDS FRMT

a) 11 4 7 4 7

b) 7 4 20 9 22

c) 12 7 6 4 8

d) 11 8 8 6 9

e) 7 8 9 7 11

Esta secuencia sería excelente para el sistema de seguimiento de no ser por el nefasto movimiento de la cámara

que no deja de generarnos tracks espurios mal clasificados que no desaparecen (especialmente grave al

desactivar el módulo que elimina sombras). A pesar de ello, en el modo de funcionamiento normal los objetivos

se siguen casi a la perfección dado que son claramente direfenciables y se ha escogido una ventana temporal sin

muchos cruces de jugadores entre sí.

Finalmente y concluyendo el apartado, se puede decir que los resultados cuando todos los algoritmos están

trabajando conjuntamente y se ha encontrado el criterio de separación de los histogramas HS son mejores que

cuando falta alguno de los módulos desarrollados o se fuerza por exceso o defecto al clasificador.

Page 80: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo
Page 81: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

59

5 CONCLUSIONES

l objetivo inicial del presente proyecto era programar prácticamente desde cero un marco de trabajo

modular en el que se experimentara con distintas técnicas de procesado de imagen, vídeo y

configuraciones de una sola cámara para que en varias secuencias de vídeo se pudiera seguir a múltiples

objetivos, a la vez que se investigaban formas de luchar contra las oclusiones inherentes a este tipo de problemas.

Podemos decir por tanto que dicho objetivo se ha cumplido.

Existen muchísimos trabajos centrados en la detección y seguimiento de peatones, multitudes y deportes, y es

curioso que siendo aparentemente tan similares en concepto (estudio de grupos de personas en distintas

actitudes), cada uno de ellos presenten una serie de peculiaridades que pueden acabar convirtiendo el problema

en algo muy distinto a los otros, requiriendo explotar todas y cada una de las posibles restricciones para llegar a

resultados satisfactorios.

La realización de este proyecto ha requerido investigar y profundizar en múltiples conceptos de distintas áreas

de la visión artificial, procesamiento de señales y tratamiento de datos: desde técnicas ópticas, de iluminación y

modelado del color, hasta algoritmos de programación lineal, múltiples técnicas de tracking, pasando por

extracción y clasificación de características, técnicas estadísticas, proyecciones de espacios de estados, etc.

Además, se han podido probar de primera mano las ventajas y los inconvenientes de multitud de métodos,

buscando soluciones híbridas y alternativas a veces incluso poco ortodoxas para resolver los problemas

concretos que iban surgiendo por el camino. De hecho, cuantas más técnicas se conocían, más aumentaba la

sensación de no dejar de sorprenderse uno por lo densos que son las distintas áreas de conocimiento, cómo

colaboran entre sí y cómo no dejan de surgir técnicas, revisiones e implementaciones cada vez más eficientes de

algoritmos y fundamentos que llevan asentados incluso décadas, pero que hoy en día siguen rabiosamente

vigentes.

En el transcurso del proyecto se ha podido comprobar (o sufrir incluso, si se permite la expresión) que hay que

cuidar todos los aspectos dentro del campo de la visión artificial: de poco sirve utilizar algoritmos complejísimos

y costosísimos computacionalmente si el problema principal es una mala elección del hardware, de las

condiciones de iluminación o la perspectiva. También se han desarrollado técnicas prácticas heurísticas capaces

de abordar al menos mínimamente el complejísimo problema de las oclusiones, modelándolas como si fueran

también entidades que aparecen, evolucionan, y desaparecen. No obstante, el problema de seguimiento mediante

procesado de vídeo sigue siendo un problema en desarrollo, y no existe ningún sistema aún que no requiera un

fuerte preprocesado y/o postprocesado supervisado de los datos.

El entorno de trabajo ha sido desarrollado enteramente en C++ y se han acabado teniendo que abordar muchos

problemas prácticos de implementación de cara a conseguir que el sistema funcione en tiempo real al menos

para una cámara. El resultado es un proyecto de muchos miles de líneas de código, con una cantidad ingente de

parámetros y opciones de configuración, capaz de trabajar con unos datasets muy alejados de lo que se

consideraría óptimo habitualmente.

E

Page 82: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo
Page 83: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

61

6 LÍNEAS FUTURAS

omo ya se comentó al principio del proyecto, la duración del trabajo desarrollado ha excedido al alcance

aquí mostrado, con lo que algunas de las líneas propuestas como futuras se han empezado ya a investigar

e incluso a desarrollar gracias al trabajo del autor en el seno de la Fundación Andaluza de la Imagen,

el Color y la Óptica - FAICO. Algunas líneas futuras que sería muy interesante incorporar al proyecto para

seguir mejorando los resultados podrían ser:

• Integrar algoritmos de estabilización óptica para no depender tanto de las cámaras estáticas y el detector

de movimiento y poder probar otras alternativas. Con este aspecto se ganaría una mejor detección de

jugadores que tienden a estar parados.

• Seguimiento del balón: este aspecto es básico para poder modelar y predecir las interacciones entre los

jugadores. Para ello habría que rediseñar todos los conceptos implementados de detección y

seguimiento, y rehacer un aspecto muy importante: habría que replantear el modelo de coplanaridad

más en serio, puesto que el balón puede ir a ras de suelo pero también puede desplazarse volando. Esto

abriría la puerta a estudiar a los jugadores que saltan o se caen.

• Un paso evidente que el sistema implementado ya permite es dar la salto a un sistema multicámara. Con

esto abarcaríamos más terreno de juego (o su totalidad), tendríamos información redundante que puede

servir para luchar contra las oclusiones, y para minimizar el problema de la perspectiva dado que a

medida que una cámara se hace menos confiable por estar lejos de la acción desarrollada, habría otra

cámara que se hiciera más confiable por estar más cerca en el lado opuesto. Además, tendría que ir de

la mano con la fusión de distintos tipos de entradas, y la búsqueda de características comunes en el

espacio de estados de los objetivos, por ejemplo usando PCA.

• Utilizar abiertamente soluciones mixtas con el fin de obtener lo mejor de cada caso, por ejemplo:

o Si el filtro de partículas tiende “pegar saltos” y no ser fluido en la evolución de sus estados,

pero es la solución lógica para distribuciones multimodales complejas, y el filtro de Kalman a

veces peca de no responder correctamente a modelos cinemáticos complejos, se puede probar

a utilizar un filtro de Kalman para suavizar esos saltos del filtro de partículas (si el coste

computacional lo permite).

o Utilizar directamente un detector o clasificador de personas (por ejemplo, HOG entrenado) solo

en las regiones que sepamos que tienen una oclusión. Con esto ganaríamos velocidad con

respecto a usar dichos detectores en toda la imagen, y además reafirmaríamos dentro de las

oclusiones a los tracks individuales, luchando para evitar que se pierdan.

o Utilizar clasificadores más avanzados y robustos para nuestra clasificación de color que una

simple distancia de Bhattacharyya, como pueden ser los SVM o redes neuronales. Con este

paso reduciríamos directamente también la necesidad de intervención humana a la hora de

añadir nuevas secuencias de vídeo, y el sistema sería más práctico dado que mejoraría la gestión

de los histogramas permitiendo afinar las clasificaciones de color si tenemos equipos con

camisetas y pantalones de colores intercambiados, o a rayas, o más similares.

• Añadir otro nuevo tipo de confirmación de tracks: utilizar cámaras independientes cuyo objetivo sea

generar confirmaciones más fiables utilizando OCR en las camisetas que confirmen la identidad, o

detectores de caras. Aunque está claro que no podrían ofrecer una medición continuada, sí podrían

utilizarse para ratificar identidades aunque sea de vez en cuando, mejorando las hipótesis de

C

Page 84: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Líneas futuras

62

62

seguimiento (por ejemplo, si una identidad abandona la escena y vuelve a incorporarse, para que hubiera

una forma de restablecer la identidad perdida).

• En relación con el punto anterior, estudiar cómo se podrían incorporar fuentes de vídeo exterior con

técnicas de PTZ (Pan, Tilt, Zoom) para intentar aprovechar directamente las cámaras de retransmisiones

deportivas ya existentes en la actualidad y cómo afectaría la introducción de nuevas fuentes de vídeo al

tracking.

• Desde un punto de vista más estético, la creación de una interfaz gráfica completa para gestionar todos

los datasets supone una mejoría en el aspecto menos técnico pero sí más lúdico o comercial del

proyecto, es decir, servir como plataforma demostradora de tecnologías impactantes y fácil de recordar.

Además, el hecho de tener que implementar sistemas multihilo para poder operar con la interfaz gráfica

no puede otra cosa más que beneficiar a que se reimplementen y optimicen partes del código

desarrollado.

• Finalmente, y aunque haya sido una parte muy característica de este proyecto, sería interesante tener

acceso a grabaciones mayor calidad (resolución, perspectiva, iluminación, etc.) para poder comprobar

cómo funcionan los algoritmos sin tener la necesidad de mantener un gran conjunto paramétrico de

restricciones para cada secuencia de vídeo actual, y poder utilizar las métricas de evaluación más típicas

de algoritmos de seguimiento con la esperanza de no conseguir siempre resultados muy malos debido

a problemas obvios relacionados con la grabación de los vídeos.

Page 85: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

63

7 ANEXO A – OTRAS SECUENCIAS

continuación se presentan algunas de las múltiples secuencias de vídeo para las cuales se han definido

conjuntos de parámetros, extraído y entrenado histogramas, computado homografías, etc., con el objetivo

de conocer algunas de las peculiaridades con las que se ha trabajado. También se muestra una

representación gráfica bidimensional de los histogramas HS utilizados para el entrenamiento de cada una de las

categorías del clasificador para implementar el criterio de selección explicado en 3.4. Dichas representaciones

son útiles para apreciar tanto las similitudes entre objetivos de una misma categoría como sus diferencias entre

sí (por motivos de ruido o pose del jugador) y entre categorías distintas.

7.1 Mairena - Conil

Secuencia de 3:49 minutos, 25 FPS, 5725 fotogramas. Esta secuencia ya ha sido estudiada en el apartado 4.2.1.

Se presentan como información adicional una muestra del cálculo dinámico de las líneas de fuera de juego, la

homografía utilizada y las trayectorias calculadas de ambos equipos durante toda la secuencia representadas

sobre un mapa de calor.

Tabla 7-1.Mairena - Conil. Seguimiento lateral y cenital, relación de homografía, mapas de calor principales

A

Page 86: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Anexo A – Otras secuencias

64

64

Tabla 7-2.Mairena - Conil. Histogramas HS usados de entrenamiento. Equipo 1 (gris – azul), equipo 2

(amarillo – azul), árbitro (rojo – negro).

7.2 Coria - Mairena

Secuencia de 34 segundos, 25 FPS, 850 fotogramas. La calidad de la imagen es algo mejor que la secuencia

anterior, aunque la calidad de la clasificación sufre algo más en este caso porque como era de esperar, al trabajar

con histogramas HS a los que les retiramos la componente “V” perdemos información del cambio de intensidad

y podemos confundir con mucha frecuencia el color “blanco” con el color “gris” de ambos equipos.

Tabla 7-3.Coria-Mairena. Seguimiento lateral y cenital, relación de homografía, mapas de calor principales

Page 87: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

65 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Tabla 7-4.Coria - Mairena. Histogramas HS usados de entrenamiento. Equipo 1 (gris – azul), equipo 2

(blanco), árbitro (rojo – negro).

7.3 Mairena (Partido de Entrenamiento 11)

Secuencia de 1:36 minutos, 29 FPS, 2784 fotogramas. Se aprecia una perspectiva crítica que hace apenas

distinguibles los jugadores a partir de pocos metros, mientras que las sombras son mucho más prominentes en

general que los propios jugadores.

Page 88: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Anexo A – Otras secuencias

66

66

Tabla 7-5.Mairena – Entrenamiento 11. Seguimiento lateral y cenital, relación de homografía, mapas de calor

principales

Tabla 7-6.Mairena – Entrenamiento 11. Histogramas HS usados de entrenamiento. Equipo 1 (gris – azul),

portero equipo 1 (rojo), equipo 2 (azul), árbitro (amarillo).

Page 89: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

67 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

7.4 Sevilla – Córdoba (Secuencia 01)

Secuencia de 2:04 minutos, de 25 FPS, 3100 fotogramas, ya estudiada en el apartado 4.2.3. Aprovechamos para

presentar una muestra de sus líneas de fuera de juego posicionales, la homografía coplanar utilizada y la

representación de todas las trayectorias.

Tabla 7-7.Sevilla – Córdoba (Secuencia 01). Seguimiento lateral y cenital, relación de homografía, mapas de

calor principales

Page 90: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Anexo A – Otras secuencias

68

68

Tabla 7-8.Sevilla – Córdoba (Secuencia 01). Histogramas HS usados de entrenamiento. Equipo 1 (marrón),

equipo 2 (blanco), portero equipo 2 (rojo), árbitro (verde y negro).

7.5 Sevilla - Córdoba (Secuencia 02)

Secuencia de 57”, 25 FPS, 1653 fotogramas. Su peculiaridad es que se corresponde al mismo partido que la

secuencia anterior, aunque no a los mismos instantes temporales. Aun así su estudio fue interesante para iniciar

los trabajos de fusión de datos y homografías coplanares entre distintas cámaras simultáneamente.

Page 91: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

69 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

Tabla 7-9.Sevilla – Córdoba (Secuencia 02). Seguimiento lateral y cenital, relación de homografía, mapas de

calor principales

En este caso se utilizaron exactamente los mismos histogramas HS que se muestran en la Tabla 7-8 dado que

pertenece al mismo partido pero desde otro punto de vista con el fin de aprovechar los resultados.

Page 92: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Anexo A – Otras secuencias

70

70

7.6 España – Bolivia (Movimiento de cámara)

Secuencia de 29”, 30 FPS, 870 fotogramas. Como ya se comentó en 4.2.4, este caso es un poco especial, dado

que el vídeo de entrada no está fijo sino que la cámara se mueve bastante. Se probó un algoritmo de flujo óptico

para intentar compensar el movimiento de la cámara, pero aun así hay momentos en los que el detector de

movimiento genera demasiado ruido.

Tabla 7-10.España – Bolivia (Movimiento de cámara). Seguimiento lateral y cenital, relación de homografía.

Tabla 7-11.España Bolivia. Histogramas HS usados de entrenamiento. Equipo 1 (blanco - verde), portero

equipo 1 y árbitro (gris), equipo 2 (rojo).

Page 93: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

71

8 ANEXO B – PARÁMETROS USADOS

continuación se muestran algunos de las parámetros necesarios para hacer flexible al entorno de trabajo

implementado adaptándose a secuencias de vídeo tan distintas entre sí. Algunos son puramente estéticos

(colores de representación, longitud de estelas dibujadas etc.), pero otros afectan a los modelos de

movimiento de los filtros predictivos, al detector geométrico, a la recta para compensar la perspectiva, etc.).

BGSUBTRACTOR_BASICO:

MORPHOPS_BASICAS:

FILTROPREDICTIVO_BASICO: 1

USAR_OCLUSIONES: 1

Y_MINIMA_ABSOLUTA:

Y_MAXIMA_ABSOLUTA:

PROPORCION_YMAX_YMIN:

PARAMETRO_HKALMAN_VELOCIDAD_MINIMA: 0.3

AREA_MIN_ABSOLUTA:

AREA_MIN_BLOB_CERCA:

ANCHO_MIN_BLOB_CERCA:

ANCHO_MAX_BLOB_CERCA:

ALTO_MIN_BLOB_CERCA:

ALTO_MAX_BLOB_CERCA:

PROPORCION_MIN_ALTOANCHO: 1.5

COEF_TAMAÑO_ADICIONAL_PARA_SER_OCLUSION: 9.9999999999999989e-001

RATIO_MIN_PIXELES_BLANCOS_PARA_OCLUSION:

RATIO_MAX_DIMENSIONES_FRAME_RESPECTO_OCLUSION:

POSICION_TRACK_EN_LA_BASE_SEGUN_SOMBRAS:

MAX_SKIPPED_FRAMES_INDIVIDUAL: 25

NUM_MINIMO_FRAMES_CONFIRM_INDIVIDUAL: 1

MAX_DELTATIME_INDIVIDUAL: 7.9999998211860657e-002

MAX_ACCELMAGNIT_INDIVIDUAL: 2.5000000000000000e-001

MAX_LONG_ESTELA_INDIVIDUAL: 100

A

Page 94: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Anexo B – Parámetros usados

72

72

MAX_LONG_ESTELA_INDIVIDUAL_MOSTRADA: 10

MAX_UMBRAL_EUCLIDEO_ASIGNACION_INDIVIDUAL: 120.

MAX_UMBRAL_EUCLIDEO_PEANA_PROHIBIDA_INDIVIDUAL:

MAX_UMBRAL_EUCLIDEO_ABSORCION_A_OCLUSION:

MAX_UMBRAL_EUCLIDEO_LIBERACION_ABSORBIDO:

MAX_SKIPPED_FRAMES_OCLUSION: 10

NUM_MINIMO_FRAMES_CONFIRM_OCLUSION: 0

MAX_DELTATIME_OCLUSION: 5.9999998658895493e-002

MAX_ACCELMAGNIT_OCLUSION: 2.5000000000000000e-001

MAX_LONG_ESTELA_ OCLUSION: 80

MAX_UMBRAL_EUCLIDEO_ASIGNACION_ OCLUSION: 60.

MAX_UMBRAL_EUCLIDEO_PEANA_PROHIBIDA_ OCLUSION:

COEFIC_BLENDING_ABSORBIDOS: 7.5000000000000000e-001

VerticesROILateral:

PuntosHomografiaLateral

PuntosHomografiaCenital:

Page 95: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

73

REFERENCIAS

[1] G. Thomas, «Sports TV Applications of Computer Vision,» BBC, 2012, p. 22.

[2] A. Margaryan y M. Gaydovskly, «Report on Video Analytic Software,» p. 16, 2014.

[3] Á.-P. D. B. P. Castellano J, «Evaluation of research using computerised tracking systems (Amisco and

Prozone) to analyse physical performance in elite soccer: a systematic review,» Sports Med, nº 44(5), pp.

701-12, 2014-05.

[4] G. R. J. F. G. J. A. C. J. Ballesta Castells C, «Métodos actuales de análisis del partido de fútbol,» Revista

Internacional de Medicina y Ciencias de la Actividad Física y el Deporte, vol. 15, pp. 785-803, 2015.

[5] O. J. A. Yilmaz, «Object Tracking: A Survey,» ACM Computing Surveys, vol. 38, nº 4, p. 13, 2006.

[6] J. F. A. D. S. B. J R Nuñez, «Soccer video segmentation. Referee and player detection,» de 15th

International Conference on Systems Signals and Image Processing, 2008.

[7] X. T. W. L. T. W. Y. Z. Hongqi Wang Jia Liu, «Automatic player detection, labeling and tracking in

broadcast soccer video,» Patter Recognition Letters, vol. 30, nº 2, pp. 103-113, 2009.

[8] Y. S. H. K. K.-s. H. Sunghoon Choi, «Where are the ball and players? Soccer game analysis with color-

based tracking and image mosaick,» Science And Technology, pp. 1-15, 1997.

[9] P. S. Zhifei Xu, «Segmentation of players and team discrimination in soccer videos,» de Proceedings of

2005 IEEE International Workshop on VLSI Design and Video Technology, 2005.

[10] A. B. W. N. M. Bertini, «Player Identification in Soccer Videos,» de Proc. Seventh ACM SIGMM Int'l

Workshop Multimedia Information Retrieval, 2005.

[11] M. B. A. B. W. N. L. Ballan, «Soccer Players Identification Based on Visual Local Features,» de Proc.

Sixth ACM Int'l Conf. Image and Video Retrieval, 2007.

[12] H. D. V. P. N. R. M. Saric, «Player Number Localization and Recognition in Soccer Video Using HSV

Color Space and Internal Contours,» de Proc. 10th WSEAS Int'l Conf. Automation and Information, 2008.

[13] Q. H. S. J. Y. L. W. G. Q. Ye, «Jersey Number Detection in Sports Video for Athlete Identification,» de

Proc. SPIE, 2005.

[14] R. E. W. Rafael C. González, Digital Image Processing (Third Edition), New Jersey: Pearson Prentice

Hall, 2008.

[15] J.-A. T. J. J. L. K. P. M. Wei-Lwun Lu, «Learning to Track and Identify Players from Broadcast Sports

Videos,» IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 35, nº 7, 2013.

Page 96: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

Referencias

74

74

[16] R. K. J. H. I. E. Raffay Hamid, «A visualization framework for team sports captured uing multiple static

cameras,» Computer Vision and Image Understanding, vol. 118, pp. 171-183, 2014.

[17] P. M. D. Comaniciu, «Mean shift: A robust approach toward feature space analysis,» IEEE Trans. Patt.

Analy. Mach. Intell., vol. 24, nº 5, pp. 603-619, 2002.

[18] D. Magee, «Tracking Multiple Vehicles Using Foreground, Background and Motion Models,» Image and

Vision Computing, 2004.

[19] R. E. Kalman, «A New Approach to Linear Filtering and Prediction Problems,» Journal of Basic

Engineering, vol. 82, pp. 35-45, 1960.

[20] V. R. P. M. D. Comaniciu, «Kernel-Based Object Tracking,» IEEE Trans. Pattern Analysis and Machine

Intelligence, vol. 25, nº 5, pp. 564-575, 2003.

[21] J. B. R. L. P. F. François Fleuret, Multi-Camera People Tracking with a Probabilistic Occupancy Map,

Lausanne, 2010.

[22] J. B. F. F. P. F. Horesh Ben Shitrit, «Tracking Multiple People under Global Appearance Constraints,»

Lausanne, 2014.

[23] D. A. M. D. R. P. F. Felzenszwalb, «A discriminatively trained, multiscale, deformable part model,» de

Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), 2008.

[24] R. B. Derek Magee, Feature Tracking in real world scenes (or How to track a Cow), Leeds.

[25] P. Huang, «Automatic Gait Recognition via Statistical Approaches,» PhD thesis - Department of

Electronics and Computer Science, Southampton, 1999.

[26] P. V. K. Tieu, «Boosting image retrieval,» Int. Journal Computer Vision, vol. 56, nº 1, pp. 75-89, 2004.

[27] HOG, «https://en.wikipedia.org/wiki/Histogram_of_oriented_gradients,» [En línea].

[28] T. C. C. C. S. H. Y. H. Y. Chen, «Efficient hierarchical method for background subtraction,» Pattern

Recognition, vol. 40, nº 10, pp. 2706-2715, 2007.

[29] W. G. C. Stauffer, «Learning patterns of activity using real-time tracking,» IEEE Transactions on Pattern

Analysis and Machine Intelligence, vol. 22, nº 8, pp. 747-757, 2000.

[30] C. S. B. C. L. Andres Sanin, «Shadow Detection: A Survey and Comparative Evaluation of Recent

Methods,» Pattern Recognition, vol. 45, nº 4, pp. 1684-1695, 2012.

[31] H. A. L. L. S. L. Junliang Xing, «Multiple Player Tracking in Sports Video: A Dual-Mode Two-Way

Bayesian Inference Approach With Progressive Observation Modeling,» IEEE Transactions on Image

Processing, vol. 20, nº 6, 2011.

[32] F. A. E. Koller-Meier, «Tracking multiple objects using the condensation algorithm,» Journal of Robotics

and Autonomous Systems, vol. 34, 2001.

[33] «https://en.wikipedia.org/wiki/Hungarian_algorithm,» [En línea].

Page 97: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

75 Seguimiento de jugadores en partidos de fútbol mediante procesado de vídeo

[34] J. L. S. B. Y. Huang, «Players and ball detection in soccer videos based on color segmentation and shape

analysis,» de Procedures of ICMCAM, 2007.

[35] J. G. J. J. A. F. M. José Luis Blanco, «An alternative to the Mahalanobis distance for determining optimal

correspondences in data association,» IEEE Transactions on Robotics, vol. 28, nº 4, pp. 980-986, 2012.

[36] M. Buehren, «Functions for the rectangular assignment problem,» [En línea]. Available:

https://www.mathworks.com/matlabcentral/fileexchange/6543-functions-for-the-rectangular-

assignment-problem.

[37] L. G. A. S. L. P. R. M. L. E. Catarina B. Santiago, «Tracking Players in Indoor Sports Using a Vision

System Inspired in Fuzzy and Parallel Processing,» de Cutting Edge Research in New Technologies, Porto,

Intech.

[38] N. Ho, «Nghia Ho's Computer Vision Blog,» [En línea]. Available: http://nghiaho.com/?p=2093.

Page 98: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo
Page 99: Proyecto Fin de Carrera - Universidad de Sevillabibing.us.es/proyectos/abreproy/12433/descargar_fichero/PFC-2433-JIMENEZ.pdfCon el crecimiento exponencial de las fuentes de vídeo

77

ÍNDICE DE CONCEPTOS

Bhattacharyya ................................. 27

datasets .............................................. 28

homografía ........................................ 21

HSV ................................................. 6, 8

Kalman ................................................ 6

Mezcla de Gaussianas .................... 10

RGB ..................................................... 6

seguimiento ........................................ xi

Tracking ............................................ 13

tracks ................................................. 18