Download - Reconocimiento facial e identificación de textos en videos interactivos - Ramis - Perales - Bibiloni
Silvia Ramis Francisco J. Perales,
Antoni Bibiloni (DMI-UIB)
Proyecto desarrollado dentro del proyecto ITVnet.◦ Trata de un recomendador de vídeos vía PC,
android o hbbtv.◦ Extrae las características del vídeo a partir de la
detección y te recomienda los vídeos relacionados.
Han colaborado el grupo UGIVIA junto con el grupo LTIM de DMI de la UIB.
IntroducciónIntroducción
Reconocer e identificar mediante VPO◦ Sujetos Algoritmo PCA◦ Textos explicativos Técnica OCR
Objetivos
Clasificadores cascada Haar de OpenCV.◦ Devuelve 1 si es cara◦ Devuelve 0 en caso
contrario Eliminar falsos
positivos. ◦ Rango de color de la
piel. Cara detectada.
◦ Limitar la zona de la persona.
Detección de CarasDetección de Caras
Detección de Caras
Rango de Color de la piel
◦ Aprendizaje de los colores con el algoritmo AdaBoost
con 1000 cares y 1284 no
cares.
Representación HSI. • H (Hue): tono del color• S (Saturación): apagado o vivo• I (Intensitat): claro u oscuro (prescindible)
Detección de caras:◦ Conjunto de imágenes de
entrenamiento Im.
Algoritmo PCA
m: nº de imagen
Cada imagen detectada Im, representada como un vector Ƭm.
La cara promedio (vector ψ) ◦ K es el nº total de imágenes.
Normaliza: Resta cada imagen del entrenamiento con la cara promedio.
Matriz de Covarianza
Algoritmo PCA
K
mmK 1
1
mm
TAAC ·N Filas:w*h
m Columnas = m imágenes(matriz NxN)
¡No práctico!
mA 21
Matriz de Covarianza◦ Si m<N considera
Extraer los vectores propios (eigenfaces) y valores propios de mayor peso de la matriz de covarianza.
Se obtiene el patrón:
Algoritmo PCA
(matriz mxm)AAC T ·
m Eigenfaces )...( 1 muu
m
Tmm
mT
uwdonde
www
21
Extraer un patrón para cada individuo y crear una base de datos.
Realizar el mismo proceso para la nueva imagen. Calcular la distancia entre la imagen a detectar y
las imágenes de la base de datos. Seleccionar la imagen de la base de datos que más
se aproxima a la nueva imagen.
Si la distancia ϵ es inferior a un umbral asignado se reconoce al individuo.
Identificación
2min m
<?xml version="1.0"?><Faces>
<Segment> <Person id = "programacion"> <MediaTime>
<MediaTimePoint>T00:00:13</MediaTimePoint>
<MediaDuration>PT14S</MediaDuration> </MediaTime>
<Segment/> <Segment>
<Person id = "programacion"> <MediaTime>
<MediaTimePoint>T00:01:07</MediaTimePoint>
<MediaDuration>PT54S</MediaDuration> </MediaTime>
<Segment/> <Segment>
<Person id = "programacion"> <MediaTime>
<MediaTimePoint>T00:02:28</MediaTimePoint>
<MediaDuration>PT27S</MediaDuration> </MediaTime>
<Segment/><Faces/>
Resultados
Pruebas con 13 videos:
77% de aciertos.
Causa de errores:• El individuo tiene la
cara de perfil.
Si el conjunto de caras esta bien alineado, con caras frontales 90.1% de aciertos
Aciertos
10
Fallos 3
Librería OCR tesseract. ◦ Mejor detección si extraemos una subimagen ajustada del
texto. Dificultad: no existe un modelo estándar de
transparencias.
Detección de texto
Solución◦ Estandarizar el tamaño del video.◦ Convertir a una imagen binaria.◦ Contar número de píxeles blancos.◦ Hallar el umbral. Cada umbral representa un estilo
de transparencia.
Detección de títulos◦ proyección horizontal para determinar la zona.
El título se localiza entre las primeras sumas.
Detección de texto
Detección de texto
Observaciones
Mejores detecciones:◦ Letra negra sobre fondo claro.
Detección de texto
Tipo de letra Tamaño de letra
Letra negra sobre fondo claro
≥ 16 (detección óptima)< 16 (confunde letras)
Letra blanca sobre fondo oscuro
≥ 18 en mayúsculas (detección óptima)
Letra muy grande≥ 18 en mayúsculas (detección óptima)
Normalización del tamaño de texto◦ Calcular el tamaño de letra.
Si es menor a 16 agrandarla mediante una interpolación bicúbica.
◦ Normalizar todos los textos a letra negra sobre fondo blanco.
Convertir imagen a binaria. Sea Pb número total de píxeles blancos. Sea Pn número total de píxeles negros. Si Pn > Pb se invierte los colores de la imagen
binaria.
Detección de texto
<?xml version="1.0"?>
<Slides>
<Segment>
<Title>Punteros en lenguaje C </Title>
<MediaTime>
<MediaTimePoint>T00:00:00</MediaTimePoint>
<MediaDuration>PT14S</MediaDuration>
</MediaTime>
</Segment>
<Segment>
<Title>Objetivos </Title>
<MediaTime>
<MediaTimePoint>T00:00:14</MediaTimePoint>
<MediaDuration>PT36S</MediaDuration>
</MediaTime>
</Segment>
<Segment>
<Title>Punteros </Title>
<MediaTime>
<MediaTimePoint>T00:00:50</MediaTimePoint>
<MediaDuration>PT199S</MediaDuration>
</MediaTime>
</Segment>
</Slides>
Resultados de textoResultados de texto
Video Detección OCR
Programación 1 Programación 2 Programación_sistemas_1 Programación_sistemas_2 Programación_sistemas_3 Internet_aula_1 Internet_aula_3 Internet_aula_5 Mercado emisiones UE Mecanismo_mercado Cocina1 Conceptos_clave Consumo_Espana_crisis Mercado_deuda_publica Curso cocina gazpacho Curso cocina pescado con mayonesa Curso cocina puré de calabacín Competencia monopolística
100%100%95%95%100%99%93%89%93%93%90%70%100%100%95%100%99%59%
Media Detección 92.77%
Resultados de textoResultados de textoResultados de texto
Conclusiones y Trabajos Futuros
Se ha presentado un sistema óptimo. Reconoce el 90.1% de individuos en caso de que todas
las imágenes sean frontales y el 92.77% de texto.
Se propone mejorar:◦ El reconocimiento facial con nuevos sistema basados en
RNA, LDA.◦ Aplicar un analizador sintáctico en el OCR◦ Comparar con otro OCR comercial◦ Realizar nuevas pruebas
Financiación proyecto ConnectedTV (IPT-2012-0871-430000)
Parcialmente financiado por el Govern Balear, Grupos Competitivos, 2011, Num. 28/2011/44
Agradecimientos
Gracias por su Atención. Preguntas?