SlideShare una empresa de Scribd logo
1 de 46
Facultad de Ingeniería, Universidad de la Republica
Cual es el problema a resolver?
•Alta competencia del deporte y del futbol moderno.
•Mercado que mueve millones de dólares.
•Exponencial uso de la tecnología.


         Surge la necesidad de
      obtener información objetiva
       sobre el rendimiento de un
          equipo o jugadores.
Como se pude lograr?
 •La idea es medir y cuantificar eventos.




  La técnica utilizada para obtener algunos de
     estos datos, es utilizar un conjunto de
     cámaras fijas instaladas en el estadio.
Soluciones comerciales existentes
Objetivos:

•Crear un prototipo software que prueba la viabilidad
técnica de una solución en el dominio de interés.

•Generar un conjunto de datos de prueba propio, con
el apoyo económico de la Fundación Ricaldoni.

•Obtener una estimación del grado de incertidumbre
del resultado obtenido.
Procesamiento por cámara


                                 La entrada es el video que
                                 llega de la cámara, la
                                 salida es un conjunto de
                                 datos que describen la
                                 posición y categoría de
                                 cada uno de los objetos
                                 detectados.


    Jugadores, goleros, jueces
Procesamiento unificado


                          La entrada es el conjunto
                          de datos de la primera
                          etapa, la salida es otro
                          conjunto de datos que
                          describen la posición y
                          categoría de los objetos
                          en un modelo único del
                          campo de juego.
Software. Características
 •Diseño modular, que hace fuerte uso de los
 patrones de diseño : Singleton y Strategy

 •Cada Modulo resuelve un problema particular
  y colabora para obtener la solución global.

 •Utilizando Singleton, logramos que la única instancia de
 cada Modulo sea fácilmente accesible y además que tenga
 bajo acoplamiento.

 •Utilizando Strategy, pudimos intercambiar, distintas
 versiones de un mismo algoritmo durante las pruebas al
 sistema.
Software. Características
 •El prototipo se implemento utilizando
  Matlab R2009b .

 •Java jdk1.6.0_12 , IDE Eclipse para la
 comunicación con la API de VIPER GT.
Componentes de la primera etapa
Componentes de la segunda etapa
Conjunto de datos de prueba
   ISSIA DATASET
•   6 cámaras
•   Calibración, puntos en
    el piso
•   Datos Ground Truth

   SCEPTRE DATASET
•   8 cámaras
•   Calibración,
    constantes TSAI
Datos obtenidos por el grupo
   PARQUE CENTRAL           PROBLEMAS:
•   1 cámara
                             • Sombras
                             • Ubicación de las cámaras
   MÉNDEZ PIANA             • Sincronización de las
•   4 cámaras                cámaras
                             • Configuración de las cámaras
   FRANZINI DATASET
•   4 cámaras
•   Calibración, puntos de
    la cancha
Datos obtenidos por el grupo




 18 /11/2010: Partido amistoso Uruguay-Argentina sub 17 , Parque
 Central
Datos obtenidos por el grupo




126/03/2011: Estadio Luis
Franzini
Generación de datos de Ground Truth
con VIPER GT
Modelado del fondo
   Método: Mixture of
    Gaussians

   Distinguir entre puntos
    estáticos y en movimiento
    (los valores bajos de
    energía son utilizados para
    construir el fondo mientras
    que los altos se descartan
    por la probabilidad de
    pertenecer a objetos
    móviles).
D r1
D c1




        D c2
D r2

       Rc, Cc
Procesamiento multicamara
Cada cámara arroja: estimación + incertidumbre sobre
la posición y categoría de cada “Target”.


                            Se busca “combinar” de manera
                            adecuada cada una de las
                            medidas, para incrementar la
                            precisión global del sistema.


El resultado es enviado a un proceso que utiliza la
restricción de cantidad de elementos por categoría para
condicionar la salida del sistema. (este dato viene de una
fuente externa al sistema)
Procesamiento multicamara
 Nuevamente se utiliza el fitro de Kalman, pero ahora
 en el plano de la cancha.


                                          x = [x                 y ']
                                                                        T
Vector de estados, posición y velocidad
sobre el plano de la cancha:                       y        x'

                                          z = [x   y]
Observaciones:                                          T


     1    0 T 0
     0    1 0 T
Aw =                                1 0 0 0
     0    0 1 0                Hw =         
                                     0 1 0 0
     0    0 0 1
Procesamiento multicamara
Se construye una matriz de asociación (binaria) para
cada cámaras: Targets X Observaciones

                        1 indica una asociación entre el
  1  0
   1  0                Target y la observación.
    1  0
  0 10 0
   0  0                0 no hay asociación.
    0  0
  0 01 0
   0  1
    0  1
     0  1

Se calcula utilizando la mínima distancia de
Mahalanobis y el algoritmo del vecino mas cercano
Procesamiento multicamara
Utilizando la matriz binaria, todas las observaciones
que aplican a un “Target” son combinadas, ponderando
por la inversa de la covarianza de cada medida.
Procesamiento multicamara

Hasta aquí, seria la salida de una aplicación típica de
seguimiento.


Pero… nosotros conocemos el numero “correcto” de
elementos que el sistema debe retornar.



Podemos “condicionar” la salida global para usar esta
información. => MAP
Procesamiento multicamara
Creación y muerte de los
targets
Las observaciones que no son asociadas con ningún
target activo, son potenciales nuevos targets.

Se utiliza el numero de cámaras esperado que
“observan” el nuevo target para decidir y la “antigüedad”
en cuadros.

La creación o muerte de Targers , una vez que el
sistema llega al numero esperado, es un evento que no
debe ocurrir con frecuencia.
Performance SingleView




A los videos de entrada, los etiquetamos manualmente
mediante el ViperGT en sus posiciones y categorías
correctas y lo comparamos con el XML salida del sistema
utilizando ViperPE. La presentación de resultados se da
mediante Presicion & Recall.
Precision & Recall
Algunos números….



                                                                          ISSIA
                                                                          DATASET




La “Precision" es de 60/69 es decir un 86 %

esto se podrá interpretar como que de los 69 objetos a testear en el archivo xml
de salida del sistema, se pudieron “matchear” o encontrar correspondientes a 60
de ellos con objetos en el archivo de GT.

El “Recall" es de 37/76, es decir que de los 76 objetos test registrados como

verdaderos en el archivo de GT solamente se asignaron 37 de ellos (es decir
para 37 de esos objetos test se encontró correspondiente en el archivo xml de
salida del sistema).
Para que mostrar un resultado intermedio ?

1) Necesidad de investigar como esta evolucionando la performance
por cámara al modificar parámetros de diseño.


2) Comparar como afectan los esquemas de clasificación de
categorías a los esquemas de localización espacial.


3) Tener una idea mas precisa sobre como mejora la performance
final al integrar todas las cámaras, mediante la sencilla
comparación de la performance intermedia y la final.

 Esto nos demuestra que efectivamente tener varias cámaras
 distribuidas espacialmente de forma conveniente nos facilita
 la resolución del problema, pudiendo integrar información
 proveniente de varias cámaras y ponderando dicha
 información entre ellas para resolver los principales
 problemas (falsas detecciones, oclusiones mal resueltas,
 etc..) y así aumentar la performance final del problema
 propuesto.
Resultados de Multiview
Hablar de los resultados de esta etapa es hablar del
rendimiento del sistema en general.


La idea es:

Contar el numero de elementos detectados en cada
categoría cuadro a cuadro y compararlo con el
esperado.


 El numero de objetos detectados en un buen
 indicador del rendimiento del sistema.
Resultados de Multiview
3000 cuadros del dataset ISSIA




                                 Cuadro1 12,8453
                                 Cuadro2 12,8225
                                 Abrbitros 2,2460
                                 Golero1   0,8977
                                 Golero2   1,1140
Resultados de Multiview
Un numero levemente superior al esperado en la
cantidad de jugadores, se explica porque el sistema
tiende a “continuar” los tracks.


Los líneas no son tomados por las cámaras.


En esta secuencia, uno de los arqueros es mal
clasificado, dada su similitud con la camiseta de los
jugadores de cancha.
Conclusiones

Se adquirió experiencia y conocimiento en las
técnicas utilizadas, hasta llegar a dominarlas y
poder integrar las soluciones parciales a la solución
global.

El prototipo construido nos permitió probar que
una solución al problema es técnicamente factible
y realizable.

Creemos que el conocimiento adquirido en el
área del problema, los obstáculos y problemas
que tuvimos que sortear para llegar a este punto,
son en definitiva, el real valor de proyecto
Que cosas identificamos como futuras
mejoras a la solución ?
1) Flujos de datos:

Problema actual:

El principal problema es que el “parser" de los archivos XML no
accede secuencialmente a la información, sino que carga en
memoria todo el archivo. Esto se traduce en cientos de MB en
memoria RAM !!!.

Posible solución:

La primera solución para este problema es sustituir el “parser" que
utiliza VIPER por alguno que acceda secuencialmente a la
información.

Otra solución mas comprometida, seria eliminar completamente el
uso de archivos XML y utilizar una base de datos en la que la
primera etapa inserte y la segunda etapa acceda a leer.
Que cosas identificamos como futuras
 mejoras a la solución ?
2) Movimiento de cámara y sombras:

Problema actual:

El principal problema con el movimiento de la cámara es la falsa
detección de las líneas del campo de juego.
Mientras que las sombras de los jugadores producen una mala
segmentación (la sombra también se mueve ! )

Posible solución:

Crear un bloque del sistema que se encargue de la estabilización
total del video y que elimine las sombras de los jugadores.
Que cosas identificamos como futuras
 mejoras a la solución ?
3) Otras mejoras identificadas a implementar:

        3.1) tracking al balón .

        3.2) clasificación de categorías SingleView mas
        inteligente ( no en todos los frames del video para
        un mismo objetivo)

        3.3) Automatización en el proceso de modelado
        de fondo (extracción periódica y automática del
        Background)

        3.4) Aspectos de arquitectura global que nos
        permitan acercarnos aun mas al limite de tiempo
        real.

        Entre otros….

Más contenido relacionado

Destacado

One Crow to Ten Crows
One Crow to Ten CrowsOne Crow to Ten Crows
One Crow to Ten Crowsvanthorn
 
Wyspianski
WyspianskiWyspianski
Wyspianskifulya1
 
Facial Skin Care Packaging Design By Illumination Consulting
Facial Skin Care Packaging Design By Illumination Consulting Facial Skin Care Packaging Design By Illumination Consulting
Facial Skin Care Packaging Design By Illumination Consulting Illumination Consulting
 
HACE Leadership Academy
HACE Leadership AcademyHACE Leadership Academy
HACE Leadership Academythegome
 
Hair salons in new york
Hair salons in new yorkHair salons in new york
Hair salons in new yorkEric Jin
 
Educ. espec. general luisa
Educ. espec. general luisaEduc. espec. general luisa
Educ. espec. general luisaLuisa Lara
 
Convenio tránsito vehículos_emergencia.09.2011
Convenio tránsito vehículos_emergencia.09.2011Convenio tránsito vehículos_emergencia.09.2011
Convenio tránsito vehículos_emergencia.09.2011yonovotexel
 
Adjudication des contrats municipaux 22 09-2011
Adjudication des contrats municipaux 22 09-2011Adjudication des contrats municipaux 22 09-2011
Adjudication des contrats municipaux 22 09-2011Imagineo
 
Grup Soler · Mantenimiento Mossos d'Esquadra · 2014
Grup Soler ·  Mantenimiento Mossos d'Esquadra · 2014Grup Soler ·  Mantenimiento Mossos d'Esquadra · 2014
Grup Soler · Mantenimiento Mossos d'Esquadra · 2014grupsoler
 
Session 3 4 communication
Session 3 4 communicationSession 3 4 communication
Session 3 4 communicationSarem Rim
 
Weekly Announcements!
Weekly Announcements!Weekly Announcements!
Weekly Announcements!verbatim8
 

Destacado (20)

One Crow to Ten Crows
One Crow to Ten CrowsOne Crow to Ten Crows
One Crow to Ten Crows
 
Wyspianski
WyspianskiWyspianski
Wyspianski
 
Facial Skin Care Packaging Design By Illumination Consulting
Facial Skin Care Packaging Design By Illumination Consulting Facial Skin Care Packaging Design By Illumination Consulting
Facial Skin Care Packaging Design By Illumination Consulting
 
Power
PowerPower
Power
 
HACE Leadership Academy
HACE Leadership AcademyHACE Leadership Academy
HACE Leadership Academy
 
Fisica 1 de luciano
Fisica 1 de lucianoFisica 1 de luciano
Fisica 1 de luciano
 
Mlb(eric)
Mlb(eric)Mlb(eric)
Mlb(eric)
 
Hair salons in new york
Hair salons in new yorkHair salons in new york
Hair salons in new york
 
El rey leon
El rey leonEl rey leon
El rey leon
 
Educ. espec. general luisa
Educ. espec. general luisaEduc. espec. general luisa
Educ. espec. general luisa
 
ข้อมูลโคร..[1]
ข้อมูลโคร..[1]ข้อมูลโคร..[1]
ข้อมูลโคร..[1]
 
Convenio tránsito vehículos_emergencia.09.2011
Convenio tránsito vehículos_emergencia.09.2011Convenio tránsito vehículos_emergencia.09.2011
Convenio tránsito vehículos_emergencia.09.2011
 
Algoritmos daniela
Algoritmos danielaAlgoritmos daniela
Algoritmos daniela
 
Health qigong
Health qigongHealth qigong
Health qigong
 
Adjudication des contrats municipaux 22 09-2011
Adjudication des contrats municipaux 22 09-2011Adjudication des contrats municipaux 22 09-2011
Adjudication des contrats municipaux 22 09-2011
 
Maria corina machado, una heroina real
Maria corina machado, una heroina realMaria corina machado, una heroina real
Maria corina machado, una heroina real
 
Grup Soler · Mantenimiento Mossos d'Esquadra · 2014
Grup Soler ·  Mantenimiento Mossos d'Esquadra · 2014Grup Soler ·  Mantenimiento Mossos d'Esquadra · 2014
Grup Soler · Mantenimiento Mossos d'Esquadra · 2014
 
Session 3 4 communication
Session 3 4 communicationSession 3 4 communication
Session 3 4 communication
 
Weekly Announcements!
Weekly Announcements!Weekly Announcements!
Weekly Announcements!
 
Diferencia constituyente
Diferencia constituyenteDiferencia constituyente
Diferencia constituyente
 

Similar a Final

diseño_contro_PID_discreto conv.docx
diseño_contro_PID_discreto conv.docxdiseño_contro_PID_discreto conv.docx
diseño_contro_PID_discreto conv.docxProfessorWilliams
 
Capítulo 07 interpretación de resultados
Capítulo 07 interpretación de resultadosCapítulo 07 interpretación de resultados
Capítulo 07 interpretación de resultadosSergio Valenzuela Mayer
 
Capítulo 07 interpretación de resultados
Capítulo 07 interpretación de resultadosCapítulo 07 interpretación de resultados
Capítulo 07 interpretación de resultadosSergio Valenzuela Mayer
 
Clase redes neuronales 3
Clase redes neuronales 3Clase redes neuronales 3
Clase redes neuronales 3JUANCHO_ANAYA
 
12 feb 2013 investigación (1)
12 feb 2013 investigación (1)12 feb 2013 investigación (1)
12 feb 2013 investigación (1)heideryxiomara
 
Reporte proyecto primer parcial 1
Reporte proyecto primer parcial 1Reporte proyecto primer parcial 1
Reporte proyecto primer parcial 1dave
 
Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...
Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...
Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...JCarlos Gonzalez Joyé
 
Guia para el programa desktop garp
Guia para el programa desktop garpGuia para el programa desktop garp
Guia para el programa desktop garpMildred_Lagos
 
Agente Reconedor de Señales de Transito
Agente Reconedor de Señales de TransitoAgente Reconedor de Señales de Transito
Agente Reconedor de Señales de TransitoDiego Guamán
 
Inteligencia artificial avanzada
Inteligencia artificial avanzadaInteligencia artificial avanzada
Inteligencia artificial avanzadaDiego Guamán
 
Correciones radiometricas
Correciones radiometricasCorreciones radiometricas
Correciones radiometricasEDIER AVILA
 
03.1 med-pres
03.1 med-pres03.1 med-pres
03.1 med-presxavazquez
 
CIITEC Fundamentos de Deep Learning.pptx
CIITEC  Fundamentos de Deep Learning.pptxCIITEC  Fundamentos de Deep Learning.pptx
CIITEC Fundamentos de Deep Learning.pptxicebeam7
 
Computación evolutiva no tradicional
Computación evolutiva no tradicionalComputación evolutiva no tradicional
Computación evolutiva no tradicionalJuan J. Merelo
 
algoritmos en R Studio
algoritmos en R Studioalgoritmos en R Studio
algoritmos en R Studiojuan198
 

Similar a Final (20)

diseño_contro_PID_discreto conv.docx
diseño_contro_PID_discreto conv.docxdiseño_contro_PID_discreto conv.docx
diseño_contro_PID_discreto conv.docx
 
Capítulo 07 interpretación de resultados
Capítulo 07 interpretación de resultadosCapítulo 07 interpretación de resultados
Capítulo 07 interpretación de resultados
 
1
11
1
 
Capítulo 07 interpretación de resultados
Capítulo 07 interpretación de resultadosCapítulo 07 interpretación de resultados
Capítulo 07 interpretación de resultados
 
Clase redes neuronales 3
Clase redes neuronales 3Clase redes neuronales 3
Clase redes neuronales 3
 
12 feb 2013 investigación (1)
12 feb 2013 investigación (1)12 feb 2013 investigación (1)
12 feb 2013 investigación (1)
 
Reporte proyecto primer parcial 1
Reporte proyecto primer parcial 1Reporte proyecto primer parcial 1
Reporte proyecto primer parcial 1
 
Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...
Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...
Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...
 
Presentacion05
Presentacion05Presentacion05
Presentacion05
 
Presentacion05
Presentacion05Presentacion05
Presentacion05
 
Guia para el programa desktop garp
Guia para el programa desktop garpGuia para el programa desktop garp
Guia para el programa desktop garp
 
Agente Reconedor de Señales de Transito
Agente Reconedor de Señales de TransitoAgente Reconedor de Señales de Transito
Agente Reconedor de Señales de Transito
 
Diseño de redes usando simuladores
Diseño de redes usando simuladoresDiseño de redes usando simuladores
Diseño de redes usando simuladores
 
Inteligencia artificial avanzada
Inteligencia artificial avanzadaInteligencia artificial avanzada
Inteligencia artificial avanzada
 
Correciones radiometricas
Correciones radiometricasCorreciones radiometricas
Correciones radiometricas
 
03.1 med-pres
03.1 med-pres03.1 med-pres
03.1 med-pres
 
CIITEC Fundamentos de Deep Learning.pptx
CIITEC  Fundamentos de Deep Learning.pptxCIITEC  Fundamentos de Deep Learning.pptx
CIITEC Fundamentos de Deep Learning.pptx
 
Computación evolutiva no tradicional
Computación evolutiva no tradicionalComputación evolutiva no tradicional
Computación evolutiva no tradicional
 
Estimación temprana de proyectos software #pmot #pmlat @iprocuratio
Estimación temprana de proyectos software #pmot #pmlat @iprocuratioEstimación temprana de proyectos software #pmot #pmlat @iprocuratio
Estimación temprana de proyectos software #pmot #pmlat @iprocuratio
 
algoritmos en R Studio
algoritmos en R Studioalgoritmos en R Studio
algoritmos en R Studio
 

Final

  • 1. Facultad de Ingeniería, Universidad de la Republica
  • 2. Cual es el problema a resolver? •Alta competencia del deporte y del futbol moderno. •Mercado que mueve millones de dólares. •Exponencial uso de la tecnología. Surge la necesidad de obtener información objetiva sobre el rendimiento de un equipo o jugadores.
  • 3. Como se pude lograr? •La idea es medir y cuantificar eventos. La técnica utilizada para obtener algunos de estos datos, es utilizar un conjunto de cámaras fijas instaladas en el estadio.
  • 5.
  • 6. Objetivos: •Crear un prototipo software que prueba la viabilidad técnica de una solución en el dominio de interés. •Generar un conjunto de datos de prueba propio, con el apoyo económico de la Fundación Ricaldoni. •Obtener una estimación del grado de incertidumbre del resultado obtenido.
  • 7. Procesamiento por cámara La entrada es el video que llega de la cámara, la salida es un conjunto de datos que describen la posición y categoría de cada uno de los objetos detectados. Jugadores, goleros, jueces
  • 8.
  • 9. Procesamiento unificado La entrada es el conjunto de datos de la primera etapa, la salida es otro conjunto de datos que describen la posición y categoría de los objetos en un modelo único del campo de juego.
  • 10.
  • 11. Software. Características •Diseño modular, que hace fuerte uso de los patrones de diseño : Singleton y Strategy •Cada Modulo resuelve un problema particular y colabora para obtener la solución global. •Utilizando Singleton, logramos que la única instancia de cada Modulo sea fácilmente accesible y además que tenga bajo acoplamiento. •Utilizando Strategy, pudimos intercambiar, distintas versiones de un mismo algoritmo durante las pruebas al sistema.
  • 12. Software. Características •El prototipo se implemento utilizando Matlab R2009b . •Java jdk1.6.0_12 , IDE Eclipse para la comunicación con la API de VIPER GT.
  • 13. Componentes de la primera etapa
  • 14. Componentes de la segunda etapa
  • 15.
  • 16. Conjunto de datos de prueba  ISSIA DATASET • 6 cámaras • Calibración, puntos en el piso • Datos Ground Truth  SCEPTRE DATASET • 8 cámaras • Calibración, constantes TSAI
  • 17. Datos obtenidos por el grupo  PARQUE CENTRAL PROBLEMAS: • 1 cámara • Sombras • Ubicación de las cámaras  MÉNDEZ PIANA • Sincronización de las • 4 cámaras cámaras • Configuración de las cámaras  FRANZINI DATASET • 4 cámaras • Calibración, puntos de la cancha
  • 18. Datos obtenidos por el grupo 18 /11/2010: Partido amistoso Uruguay-Argentina sub 17 , Parque Central
  • 19. Datos obtenidos por el grupo 126/03/2011: Estadio Luis Franzini
  • 20. Generación de datos de Ground Truth con VIPER GT
  • 21.
  • 22. Modelado del fondo  Método: Mixture of Gaussians  Distinguir entre puntos estáticos y en movimiento (los valores bajos de energía son utilizados para construir el fondo mientras que los altos se descartan por la probabilidad de pertenecer a objetos móviles).
  • 23. D r1 D c1 D c2 D r2 Rc, Cc
  • 24.
  • 25. Procesamiento multicamara Cada cámara arroja: estimación + incertidumbre sobre la posición y categoría de cada “Target”. Se busca “combinar” de manera adecuada cada una de las medidas, para incrementar la precisión global del sistema. El resultado es enviado a un proceso que utiliza la restricción de cantidad de elementos por categoría para condicionar la salida del sistema. (este dato viene de una fuente externa al sistema)
  • 26. Procesamiento multicamara Nuevamente se utiliza el fitro de Kalman, pero ahora en el plano de la cancha. x = [x y '] T Vector de estados, posición y velocidad sobre el plano de la cancha: y x' z = [x y] Observaciones: T 1 0 T 0 0 1 0 T Aw =   1 0 0 0 0 0 1 0 Hw =      0 1 0 0 0 0 0 1
  • 27. Procesamiento multicamara Se construye una matriz de asociación (binaria) para cada cámaras: Targets X Observaciones 1 indica una asociación entre el 1  0 1  0 Target y la observación. 1  0 0 10 0 0  0 0 no hay asociación. 0  0 0 01 0 0  1 0  1 0  1 Se calcula utilizando la mínima distancia de Mahalanobis y el algoritmo del vecino mas cercano
  • 28. Procesamiento multicamara Utilizando la matriz binaria, todas las observaciones que aplican a un “Target” son combinadas, ponderando por la inversa de la covarianza de cada medida.
  • 29. Procesamiento multicamara Hasta aquí, seria la salida de una aplicación típica de seguimiento. Pero… nosotros conocemos el numero “correcto” de elementos que el sistema debe retornar. Podemos “condicionar” la salida global para usar esta información. => MAP
  • 30.
  • 32. Creación y muerte de los targets Las observaciones que no son asociadas con ningún target activo, son potenciales nuevos targets. Se utiliza el numero de cámaras esperado que “observan” el nuevo target para decidir y la “antigüedad” en cuadros. La creación o muerte de Targers , una vez que el sistema llega al numero esperado, es un evento que no debe ocurrir con frecuencia.
  • 33.
  • 34. Performance SingleView A los videos de entrada, los etiquetamos manualmente mediante el ViperGT en sus posiciones y categorías correctas y lo comparamos con el XML salida del sistema utilizando ViperPE. La presentación de resultados se da mediante Presicion & Recall.
  • 36. Algunos números…. ISSIA DATASET La “Precision" es de 60/69 es decir un 86 % esto se podrá interpretar como que de los 69 objetos a testear en el archivo xml de salida del sistema, se pudieron “matchear” o encontrar correspondientes a 60 de ellos con objetos en el archivo de GT. El “Recall" es de 37/76, es decir que de los 76 objetos test registrados como verdaderos en el archivo de GT solamente se asignaron 37 de ellos (es decir para 37 de esos objetos test se encontró correspondiente en el archivo xml de salida del sistema).
  • 37. Para que mostrar un resultado intermedio ? 1) Necesidad de investigar como esta evolucionando la performance por cámara al modificar parámetros de diseño. 2) Comparar como afectan los esquemas de clasificación de categorías a los esquemas de localización espacial. 3) Tener una idea mas precisa sobre como mejora la performance final al integrar todas las cámaras, mediante la sencilla comparación de la performance intermedia y la final. Esto nos demuestra que efectivamente tener varias cámaras distribuidas espacialmente de forma conveniente nos facilita la resolución del problema, pudiendo integrar información proveniente de varias cámaras y ponderando dicha información entre ellas para resolver los principales problemas (falsas detecciones, oclusiones mal resueltas, etc..) y así aumentar la performance final del problema propuesto.
  • 38. Resultados de Multiview Hablar de los resultados de esta etapa es hablar del rendimiento del sistema en general. La idea es: Contar el numero de elementos detectados en cada categoría cuadro a cuadro y compararlo con el esperado. El numero de objetos detectados en un buen indicador del rendimiento del sistema.
  • 39. Resultados de Multiview 3000 cuadros del dataset ISSIA Cuadro1 12,8453 Cuadro2 12,8225 Abrbitros 2,2460 Golero1 0,8977 Golero2 1,1140
  • 40. Resultados de Multiview Un numero levemente superior al esperado en la cantidad de jugadores, se explica porque el sistema tiende a “continuar” los tracks. Los líneas no son tomados por las cámaras. En esta secuencia, uno de los arqueros es mal clasificado, dada su similitud con la camiseta de los jugadores de cancha.
  • 41.
  • 42. Conclusiones Se adquirió experiencia y conocimiento en las técnicas utilizadas, hasta llegar a dominarlas y poder integrar las soluciones parciales a la solución global. El prototipo construido nos permitió probar que una solución al problema es técnicamente factible y realizable. Creemos que el conocimiento adquirido en el área del problema, los obstáculos y problemas que tuvimos que sortear para llegar a este punto, son en definitiva, el real valor de proyecto
  • 43.
  • 44. Que cosas identificamos como futuras mejoras a la solución ? 1) Flujos de datos: Problema actual: El principal problema es que el “parser" de los archivos XML no accede secuencialmente a la información, sino que carga en memoria todo el archivo. Esto se traduce en cientos de MB en memoria RAM !!!. Posible solución: La primera solución para este problema es sustituir el “parser" que utiliza VIPER por alguno que acceda secuencialmente a la información. Otra solución mas comprometida, seria eliminar completamente el uso de archivos XML y utilizar una base de datos en la que la primera etapa inserte y la segunda etapa acceda a leer.
  • 45. Que cosas identificamos como futuras mejoras a la solución ? 2) Movimiento de cámara y sombras: Problema actual: El principal problema con el movimiento de la cámara es la falsa detección de las líneas del campo de juego. Mientras que las sombras de los jugadores producen una mala segmentación (la sombra también se mueve ! ) Posible solución: Crear un bloque del sistema que se encargue de la estabilización total del video y que elimine las sombras de los jugadores.
  • 46. Que cosas identificamos como futuras mejoras a la solución ? 3) Otras mejoras identificadas a implementar: 3.1) tracking al balón . 3.2) clasificación de categorías SingleView mas inteligente ( no en todos los frames del video para un mismo objetivo) 3.3) Automatización en el proceso de modelado de fondo (extracción periódica y automática del Background) 3.4) Aspectos de arquitectura global que nos permitan acercarnos aun mas al limite de tiempo real. Entre otros….

Notas del editor

  1. Cada componente resulve un aspecto especifico del problema. Los componentes son invocados en orden , por otro componente “Controller”