Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios...

48
Diseño de Soluciones de Análisis de Vídeo Orientado a Escenarios Reales Alejandro Viloria Director de I+D Hands-on Image Processing 2010 © 2010 VAXTOR SYSTEMS S.L. VAXTOR SYSTEMS S.L. Edificio I. Camino del Cerro de los Gamos, 1 28224 Pozuelo de Alarcón (Madrid) SPAIN Teléfono.: +34 91 790 1230 Fax: +34 91 790 1239 E-mail: [email protected] Web: http://www.vaxtor.com VAXTOR SYSTEMS CORPORATION 6701 Democracy Blvd. Suite 300. Bethesda, Maryland 20817 USA Phone.: +1 301 571 2444 Fax: +3 301 564 9619 E-mail: [email protected] Web: http://www.vaxtor.com

description

Presentación de Vaxtor Systems sobre eanálisis de vídeo orientado a escenarios reales realizada durante las jornadas HOIP 2010 organizadas por la Unidad de Sistemas de Información e Interacción TECNALIA. Más información en http://www.tecnalia.com/es/ict-european-software-institute/index.htm

Transcript of Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios...

Page 1: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Diseño de Soluciones de Análisis de Vídeo Orientado a Escenarios Reales

Alejandro ViloriaDirector de I+D

Hands-on Image Processing 2010

© 2010 VAXTOR SYSTEMS S.L.

VAXTOR SYSTEMS S.L.Edificio I. Camino del Cerro de los Gamos, 1

28224 Pozuelo de Alarcón (Madrid) – SPAIN –Teléfono.: +34 91 790 1230 Fax: +34 91 790 1239

E-mail: [email protected] Web: http://www.vaxtor.com

VAXTOR SYSTEMS CORPORATION6701 Democracy Blvd. Suite 300.

Bethesda, Maryland 20817 – USA –Phone.: +1 301 571 2444 Fax: +3 301 564 9619

E-mail: [email protected] Web: http://www.vaxtor.com

Page 2: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Índice

• Introducción

• Metodología

• Arquitectura del framework de experimentación

• El motor de análisis de vídeo

• La integración del sistema

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 3: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Introducción

• Objetivo:– Desarrollo de un sistema de análisis de vídeo

• Guiado por:– Datos reales (secuencias de vídeo del escenario)

• Realizando para ello:– Una etapa de experimentación con baterías de algoritmos de análisis

en todos los niveles de la arquitectura y seleccionando la mejor configuración de ellos.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 4: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Índice

• Introducción

• Metodología

• Arquitectura del framework de experimentación

• El motor de análisis de vídeo

• La integración del sistema

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 5: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Metodología

• Si no se posee conocimiento previo sobre el problema:– Se inicia una búsqueda sobre las técnicas más adecuadas para la resolución del problema.– Se intentan reproducir los resultados vistos en publicaciones científicas.– Se busca mejorar el sistema partiendo del conocimiento anterior y con propuestas nuevas.– Se modulariza adecuadamente y se incorporan los nuevos algoritmos a la base de

conocimiento de la empresa, de forma que puedan ser utilizados de forma independiente en el framework de experimentación.

• Se configura una maqueta del motor de análisis en el framework de experimentación seleccionando adecuadamente los algoritmos a utilizar en cada etapa de procesamiento

• Una vez instalado el sistema base, se procede a capturar secuencias de vídeo de la escena real.

• Por último, se parametriza el sistema de forma que se logre un funcionamiento óptimo.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 6: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Índice

• Introducción

• Metodología

• El framework de experimentación

• El motor de análisis de vídeo

• La integración del sistema

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 7: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Framework de Experimentación

• El proceso de análisis se divide en etapas secuenciales.– Para cada etapa se cuenta con una gran cantidad de algoritmos de procesamiento.

– Los algoritmos se han abstraído y generalizado para que puedan ser utilizados en una gran variedad de entornos y condiciones.

Imagen

Reconocimiento

Localización Seguimiento

PostProcesamiento

PreProcesamiento

Identificación

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 8: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento

Objetivo:Preparar la imagen para su procesamiento

Posibles tareas a realizar:[Static] Preparación de la imagen:

Dimensionamiento de la imagen

Cambio del espacio de color

[Dynamic] Ajuste dinámico de la imagen

Detección y corrección del Egomotion

Estabilización de la Imagen

[Static] Mejora de la imagen:

Corrección del ruido

Corrección de la iluminación

Corrección del color, contraste, etc

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 9: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento IDimensionamiento de la Imagen I

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

●Coste computacional:●O(WxH) → O(kW2) → O(W2)●Detalle vs. Velocidad ¿Qué interesa en cada caso?

●Reescalado de la imagen:●Los algoritmos típicos de reescalado (Lineal, Bilineal, Lanczos, Bicúbico, ...) están pensados para aumentar la resolución de la imagen.●Algoritmos para reducir la resolución:

●Puntual (Mediana, Moda, etc): “Artefactos”. Pérdida de información. Saltos bruscos.●Kernels (Medias, Gaussiana, etc): Desenfoque vs. Saltos bruscos

●Alternativas al reescalado de la imagen:●Definición de Regiones de Interés (ROI’s).●Procesamiento multiescala: Enfoque piramidal.●Explotar el paralelismo. Uso de GPU’s.

●Super-Resolución:●A partir de varias imágenes construir una de mayor resolución y

más detalle.

Objetivo:

Aumentar la velocidad de procesamiento de las etapas que trabajan sobre la imagen en un orden cuadrático de magnitud.→Reducir el espacio de búsqueda / procesamiento→Eliminación / filtrado de outliers

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 10: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento IIDimensionamiento de la Imagen II

Lineal

Gausiana Promedio

Mediana

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 11: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento IIIDimensionamiento de la Imagen III

Super -ResoluciónBatería de imágenes de baja resolución (5 frames de vídeo con un móvil) © 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 12: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento IVEspacios de color I

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

●Modelos aditivos de color:●RGB, RYB, CMY, CMYK...●Composición sencilla.●Utilizados en sistemas de visualización digital.

●Independencia Iluminación-Comp. Cromáticas:●Estándares de visualización:

●YCbCr, YUV, YIQ, YES, …●Probablemente la imagen venga de forma nativa en uno de estos modelos de color

●Descripción más natural del color (HS):●HSV, HSI, HSL, HSC, TSL, …●Modelos de color más intuitivos.●Identificación fácil de sombras.

●Modelos perceptualmente uniformes:●L*a*b*, L*u*v*, CIECAM97, CIECAM02, IPT●Intentan que la distancia/distribución de los colores sea más uniforme perceptualmente hablando.

Objetivo:

Representar la imagen mediante las características más informativas para el proceso de detección.→Selección de los atributos colorimétricos más significativos.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 13: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento VEspacios de Color II

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 14: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento VIAlineamiento de Imágenes I

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

Objetivo:

Ajustar el encuadre de las imagen actual con respecto a las anteriores.→Reduce la disparidad entre las imágenes aumentando su similitud y permitiendo compararlas.→Mejora de la coherencia espacio-temporal de la secuencia de imágenes.

●Necesario si la imagen proviene de una cámara exterior o en movimiento →Estabilización de vídeo.

●Intenta detectar y corregir:●Transformaciones Afines:

●Traslación: Cambios en la posición de la cámara.●Rotación: Giros de la cámara en el eje de visión.●Escala: Acercamiento/Alejamiento de la cámara.

●Deformación por la Lente: o por el efecto del zoom...

●Algoritmos basados en:●Estimación de la transformación Afín.●Detección de zonas características:

●Ej: seguimiento de puntos característicos●Ej: zonas con alta densidad de “bordes”●Ej: regiones de color homogéneo

●Puesta en correspondencia de dichas zonas:●Ej: Algoritmo de KLT●Ej: Algoritmos de Pattern Matching●Ej: Grafos de adyacencia

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 15: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento VIIAlineamiento de Imágenes II

●Realizando transformaciones Afines (traslación, escala, rotación, cizalla)

●Realizando operaciones de Deformación (corrección de la óptica, perspectiva, etc.)

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 16: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento VIIIEliminación de Ruido I

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

Objetivo:

Eliminar / Reducir el ruido existente en las imágenes sin perder detalle (en la medida de lo posible).→Mejora de la coherencia espacial de las imágenes.→Eliminación de outliers en los datos.

●Ruido estructurado:●Análisis en Fourier (FFT):

●Transformación muy pesada para realizarse en RT●Pendiente: Análisis automático de la FFT para detectar “picos” anómalos.

●Máscaras de ruido:●Se analiza la estructura del ruido periódicamente y se crea una máscara de suavizado.

●Ruido no-estructurado:●Suavizado de la imagen:

●Algoritmos “globales”: Se aplican a toda la imagen●Algoritmos “locales”: Se aplican sólo a las regiones homogéneas●Algoritmos “inteligentes”: Detección automática de outliers mediante técnicas estadísticas.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 17: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento IXEliminación de Ruido II

Imagen con bandas de ruidoImagen corregida

Identificación del ruido en Fourier

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 18: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento XEliminación de Ruido III

Eliminación del ruido + Corrección Automática del Color© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 19: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento XCorrección de la Iluminación I

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

Objetivo:

Homogeneizar la iluminación en la imagen, eliminando efectos indeseados como zonas sobreiliminadas y zonas en penumbra.→Al normalizar el plano de iluminación se mejora la coherencia espacial global.→Mejora la compacticidad de los datos.

●Corrección global de la iluminación:●Normalización Lineal de la Iluminación

●Grey-World, White-Patch, etc.

●Normalización Gamma de la Iluminación●Ecualización del Histograma●Cálculo del plano de iluminación de la imagen:

●Interpolación de la variable de iluminación a lo largo del espacio de la imagen (2D) mediante un plano 3D.●Remapping de cada valor de la iluminación sobre un plano de iluminación fijo (normalizado).

●Corrección local de la iluminación:●Mejora del contraste local en zonas en penumbra o sobre iluminadas:

●Variantes de los métodos: Retinex, Rizzi, Meylan...●Algoritmos Genéticos y ANN's que utilizan la información local y el histórico reciente.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 20: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento XICorrección de la Iluminación II

Corrección del plano de iluminación

Corrección local de la iluminaciónCorrección del plano de la iluminación © 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 21: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento XIICorrección del Color I

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

Objetivo:

Homogeneizar el color en la imagen puede realzar elementos que aparentemente están ocultos (camuflados).→Al normalizar el color de la imagen se mejora la coherencia espacial global.→Mejora la distribución de los datos.

●Corrección global del color:●Ej: Normalización Lineal del Color.●Ej: Ecualización del Histograma.

●Corrección local del color:●Algoritmos comunes: Retinex, Rizzi, Meylan...●Algoritmos Genéticos y ANN's que utilizan la información local y el histórico reciente.

●Distinción entre:●Algoritmos que utilizan el color como un vector.●Algoritmos que procesan cada canal por separado.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 22: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento XIICorrección del Color II

Corrección local del color

Corrección global del color

Ecualización del histograma

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 23: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PreProcesamiento XIIICorrección del Color III

Imagen originalDetección automática de señales +Corrección automática del color +Eliminación automática del ruido

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 24: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de LocalizaciónImagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

Objetivo:●Detectar zonas de interés en la imagen

Alternativas de implantación:●Localización por Detección de Movimiento:

●Eliminación del Fondo●Detección del Flujo Óptico

●Localización por Detección de Características:●Detección de Puntos de Interés ●Segmentación por Color●Segmentación de Texturas

●Localización por Detección de Plantillas:●Detección de Plantillas Rígidas●Ajuste de Plantillas Flexibles●Detección de Patrones (Pattern-Matching)

●Típicamente se subdivide en:●Módulo de Segmentación: Detección.●Módulo de Etiquetado: Filtrado de bajo nivel.●Módulo de Agrupamiento: Extracción de elementos

conectados.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 25: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de Localización I

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

●Píxeles que “no cambian mucho” en el tiempo → Bkg●Se compara cada frame con un Modelo de Fondo

●Algoritmos clásicos:●Umbral fijo: Poco robusto●Mediana: Cada píxel se modela con una Mediana temporal.●Gausiana: Cada píxel se modela con una Gausiana.●MoG: Cada píxel se modela con una Mezcla de Gausianas.

●Problemas comunes:●Camuflaje●Fondo móvil: Waving-Trees●Cambios de iluminación / sombras*●Objetos inmóviles durante mucho tiempo*●Desaparición de elementos clasificados como fondo*●Movimiento de la cámara*●Condiciones de exterior: lluvia, nieve, etc*●Gran cantidad de objetos móviles●MoG: Mejora parcialmente efectos Waving-Trees

●A tener en cuenta:●Inicialización del Modelo de Fondo●Mantenimiento del Modelo de Fondo

Objetivo:

Extraer elementos de una imagen.→Clasificar los elementos de la escena como BackGround y ForeGround.→Análisis del contenido de una imagen.

Eliminación del Fondo I

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 26: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de Localización IIEliminación del Fondo II

FondoFrame i Máscara

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 27: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de Localización IIIEliminación del Fondo III

Sombras

Agrupamiento

Camuflaje

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 28: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de Localización IV

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

●Aplicable si el objeto a detectar (o eliminar) posee unas características de color bien definidas.

●A partir de múltiples muestras de color se crea un modelo de detección:●Se selecciona el espacio de color que mejor concentre las muestras de color.●Se selecciona el algoritmo para realizar el modelo. Típicamente:

●Gausiana: El color se modela con una Gausiana.●MoG: El color se modela con una Mezcla de Gausianas.●ANN’s: El color se modela utilizando algún tipo de clasificador basado en redes neuronales. Los más utilizados son: MLP’s, FSOM’s y SVM’s.

●Problemas comunes:●La existencia de ese color en otros objetos de la escena.●El modelo de color puede ser dependiente de la cámara.●Para ser tolerantes a los cambios de iluminación se necesitan muestras donde varíe ésta.

●Alternativa:●En vez de utilizar un modelo de detección fijo, partir de uno genérico (o de otro segmentador) e ir configurando en tiempo de ejecución un modelo de detección para ese color

Objetivo:

Extraer elementos de una imagen.→Identificar el objeto por su color característico o eliminar el fondo (Backgroung) si éste tiene una configuración de colores inconfundibles.→Análisis del contenido de una imagen.

Segmentación por Color I

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 29: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de Localización V

Muestras de color de piel en RGB, YCbCr y HSVMuestras de color de mar en HSV

Segmentación por Color II

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 30: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de Localización VI

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

●Aplicable si el objeto a detectar (o eliminar) posee unas características de forma y color bien definidas.

●Distinción entre detección de patrones 2D y 3D.●Se suele preferir definir patrones 2D como imágenes.

●A partir de múltiples muestras del objeto se crea un patrón de detección:●Se selecciona el algoritmo para realizar el patrón. Típicamente:

●Meta-imagen: Imagen que contiene las variaciones típicas del objeto.●Extracción de características: Se identifican algunas características propias del objeto (configuración de aristas y ángulos, disposición de colores principales, etc.), que permiten acelerar la búsqueda del patrón.●ANN’s: El objeto se modela utilizando algún tipo de clasificador basado en redes neuronales. Los más utilizados son: MLP’s, FSOM’s y SVM’s.

●Problemas comunes:●Tolerencia a fallos: Falsos positivos vs Falsos negativos.●La búsqueda de patrones suele ser muy costosa.

●El objeto puede encontrarse en cualquier posición de la imagen, con un tamaño desconocido y una orientación (ángulo) variable.

●Para ser tolerantes a los cambios de iluminación se necesitan muestras donde varíe ésta.

Objetivo:

Extraer elementos de una imagen.→Identificar el objeto por su color característico o eliminar el fondo (Backgroung) si éste tiene una configuración de colores inconfundibles.→Análisis del contenido de una imagen.

Detección de Patrones I

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 31: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de Localización VIIDetección de Patrones II

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 32: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de Localización VIIIOtros métodos de Localización

Flujo óptico Puntos característicos

Búsqueda por plantillas deformables

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 33: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de Reconocimiento

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

Es el módulo más se explota el conocimiento a priori.

Objetivo:●Filtrar los elementos segmentados dejando sólo aquellos que contienen información útil.●Generación de meta-información asociada a ellos.

Alternativas de reconocimiento:●Reconocimiento Positivo: Reconocimiento de los elementos objetivo

del estudio.

●Reconocimiento Negativo: Filtrado de los elementos no interesantes

del estudio

Típicamente se subdivide en:●Módulo de Caracterización: Análisis de parámetros intrínsecos del elemento.●Módulo de Gestión de Zonas: Asignación de los elementos a “zonas” predefinidas de la imagen.●Módulo de Apariencia: Semejanza de los elementos detectados a ciertas plantillas o patrones.●Módulo de Vecindad: Establecimiento de relaciones de

vecindad entre los elementos de la imagen.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 34: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de Reconocimiento IMódulo de Caracterización

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

●Análisis de los parámetros intrínsecos de los elementos detectados.

●Ej: Dimensiones●Ej: Valores estadísticos del blob●Ej: Histograma de colores

●Sistema de reglas para la eliminación de elementos inadecuados para el procesamiento:

●Ej: tamaños mínimo y máximo, ratios de aspecto, tamaño acorde con la perspectiva de la escena●Ej: Evaluación del histograma.

●El conjunto de reglas pueden realizarse sobre distintos descriptores del elemento detectado:

●Ej: blob (conjunto conectado de píxels).●Ej: Bounding-Box (rectángulo que lo contiene).●Ej: elipse que lo contiene.

●Asignación de meta-información a cada elemento

Objetivo:

Filtrar el conjunto de elementos detectados para quedarse sólo con aquellos realmente válidos.→Detección de errores en la segmentación→Imposición de reglas empíricas al sistema.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 35: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de Reconocimiento IIMódulo de Gestión de Zonas

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

●Previo al procesamiento, se establecen una descripción de la escena en base a “zonas de interés”.

●Asignación a cada elemento detectado de las zonas en las que se encuentra (meta-información)

●Con esta información se puede:●Limitar del análisis a determinadas zonas de la imagen.●Realizar un análisis distinto según la(s) zona(s) en las que se encuentre.●Descartar los elementos que se encuentran fuera de las zonas especificadas.

●El conjunto de reglas pueden realizarse sobre distintos descriptores del elemento detectado (blob, Bounding-Box, etc).

Objetivo:

Filtrar el conjunto de elementos detectados para quedarse sólo con aquellos realmente válidos.→Detección de errores en la segmentación→Imposición de reglas empíricas al sistema.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 36: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de Reconocimiento IIIMódulo de Apariencia

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

●Establecimiento de etiquetas de apariencia: ●Ej: Semejanza a patrones preestablecidos

●Ej: Comparación de patrones (Pattern-Matching)●Ej: Comparación de plantillas (Template-Matching)

●Ej: Comparación de histogramas.●Ej: Determinación de puntos característicos.

●Con esta información se puede:●Limitar del análisis a un conjunto de elementos.●Realizar un análisis distinto según su apariencia.●Separar un elemento en dos (o más).●Evaluar el solapamiento entre elementos.

●Asignación de meta-información a cada elemento

●La “Apariencia” no tiene por qué ser un criterio discriminante y puede se ser reevaluada en módulos posteriores que contengan más información.

Objetivo:

Filtrar el conjunto de elementos detectados para quedarse sólo con aquellos realmente válidos.→Detección de errores en la segmentación→Imposición de reglas empíricas al sistema.→Análisis del contenido de una imagen.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 37: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de Reconocimiento IVMódulo de Vecindad

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

●Establecimiento de las relaciones en el posicionamiento de los elementos.

●Imposición de restricciones sobre las configuraciones válidas.

●Ej: Una persona no puede estar “dentro” de otra: camiseta.

●Las relaciones se pueden establecer entre distintos descriptores de los elementos (blob, Bounding-Box, etc).

●Asignación de meta-información a cada elemento

Objetivo:

Filtrar el conjunto de elementos detectados para quedarse sólo con aquellos realmente válidos.→Detección de errores en la segmentación→Imposición de reglas empíricas al sistema.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 38: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

Objetivo:●Realizar el seguimiento de los elementos de interés a lo largo de una secuencia de imágenes.●Explota la información temporal para mejorar la detección

Típicamente se subdivide en:●Módulo de Puesta en Correspondencia: Realización de la correspondencia de los elementos detectados en el frameactual con los elementos del histórico.●Módulo de Análisis de la Trayectoria: Añade la nueva posición a la trayectoria del elemento y la reestima.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Módulo de Seguimiento

Page 39: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de Seguimiento I

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

●Mantiene un histórico con los elementos aparecidos hasta el momento en la escena.

●Con cada frame, realiza la asignación de cada elemento detectado con los elementos del histórico.

●Para la puesta en correspondencia hace uso de:●La coherencia espacio-temporal.●Estimación de la trayectoria del elemento.●Una medida de similitud entre elementos.

●Tiene que contemplar:●Elementos nuevos que aparecen●Elementos que desaparecen●Elementos que pueden quedar ocluídos (solapamientos)●Trayectorias erráticas, cruces, cambios bruscos, etc.

●Algoritmos clásicos:●Asignación al más cercano/al más parecido (empírico)●Modificación del Algoritmo Húngaro de asignaciones.●Programación dinámica●Variantes de KLT

Módulo de Puesta en Correspondencia

Objetivo:

Establecer quién es quién en el nuevo escenario.→Detectar oclusiones y solapamientos. temporales.→Detectar errores de segmentación.→Debe de ser tolerante a errores de asignación.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 40: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de Seguimiento II

Imagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

●Evalúa la calidad de la estimación anterior de la trayectoria con el nuevo hecho.

●Para los elementos “perdidos”, puede iniciar una búsqueda más fina partiendo de la estimación anterior.●Para los elementos con trayectoria “errática” puede decidir utilizar otro método de estimación de la trayectoria.

●(Re)estimación de la trayectoria del elemento:●Algoritmos típicos:

●Estimación lineal a partir de las 2 últimas observaciones.●Estimación lineal como sistema de inercia●Interpolación con splines.●Filtros Kalman●Filtros de partículas

Módulo de Análisis de la Trayectoria

Objetivo:

Utilizar la coherencia temporal para predecir la nueva posición.→Detección de errores en la puesta en correspondencia.→Modelar el movimiento de cada elemento.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 41: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Módulo de PostProcesamientoImagen

PreProcesamiento

Identificación

Reconocimiento

Localización Seguimiento

PostProcesamiento

Este módulo es específico del problema a resolver.

Objetivo:●Realizar análisis específicos a partir del estado del sistema.

Ejemplos:●Generación de información de conteo (pasajeros, vehículos).●Detección de intrusión.●Generación de informes de inventariado.●Control de una cámara PTZ.●Detección de elementos en la carretera.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 42: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Índice

• Introducción

• Metodología

• Arquitectura del framework de experimentación

• El motor de análisis de vídeo

• La integración del sistema

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 43: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

El motor de análisis de vídeo• Una vez realizada la etapa de

experimentación con vídeos reales, se procede a integrar los algoritmos seleccionados en el motor de análisis de vídeo.

– El plataforma de experimentación permite probar y parametrizar diferentes algoritmos de forma independiente.

– Muchos de estos algoritmos pueden tener una parte de cálculo común → optimización.

– El motor de análisis, además incluye las interfaces para la adquisición del vídeo, y la integración con el sistema completo (mensajería de eventos del sistema, reporte de resultados, etc.).

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Medición de velocidades mediante análisis de videoAutovía A-42 Madrid-Toledo

Video disponible en el Canal Vaxtor Systems de YouTube, accesible desde nuestro web

Page 44: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

Índice

• Introducción

• Metodología

• Arquitectura del framework de experimentación

• El motor de análisis de vídeo

• La integración del sistema

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 45: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

La Integración del Sistema

P0 P1 P2 P3

P4 P5 P6 P7

Equipo 1

PY PZ

Equipo N

SysMgr

DataReporter

EvRep

El sistema se compone de:•Elementos de procesamiento (P0-PZ): Motores de análisis.

•Cada uno se encarga del procesamiento de la señal de vídeo.•Pueden estar distribuidos en varios equipos (servidores de procesamiento).

•Gestor del sistema (SysMgr): Supervisión del sistema.

•Es el único punto de entrada al sistema.•Mantiene el scheduler.

•Informador de Datos (DataReporter): Centralización de los datos de salida.

•Es el único punto de acceso a los resultados de los motores de análisis.

•Informador de Eventos (EventReporter): Centralización de los eventos del sistema

•Es el único punto de acceso a los eventos de sistema generados.

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Page 46: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

La Integración del Sistema I

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Solución de Conteo de PersonasEstaciones de Cuenca y Requena. AVE Madrid-Valencia

Page 47: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

La Integración del Sistema II

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

Solución de Conteo de Personas. Sector Retail

Video disponible en el Canal Vaxtor Systems de YouTube, accesible desde nuestro web

Page 48: Hoip10 presentacion diseño de soluciones de análisis de vídeo orientado a escenarios reales_vaxtor

© 2010 VAXTOR SYSTEMS S.L.

Hands-on Image Processing 2010

GRACIAS

Alejandro ViloriaDirector de I+D

E-mail: [email protected]

VAXTOR SYSTEMS S.L.Edificio I. Camino del Cerro de los Gamos, 1

28224 Pozuelo de Alarcón (Madrid) – SPAIN –Teléfono.: +34 91 790 1230 Fax: +34 91 790 1239

E-mail: [email protected] Web: http://www.vaxtor.com

VAXTOR SYSTEMS CORPORATION6701 Democracy Blvd. Suite 300.

Bethesda, Maryland 20817 – USA –Phone.: +1 301 571 2444 Fax: +3 301 564 9619

E-mail: [email protected] Web: http://www.vaxtor.com