TRECVID 2012. Reconociendo el contenido de los vídeos.

Después de dos días de sesiones intensivas en TRECVID’02, estoy impresionado por el nivel de los grupos que participan y las exposiciones tan interesantes que han presentado. Me doy cuenta que a pesar del trabajo que nos ha llevado a todo el grupo durante este año y la decepción de no haber conseguido unos resultados satisfactorios, la decisión de participar en este evento va a suponer un avance para el grupo en su conjunto.

Dicho esto, voy a tratar de resumir de la forma más comprensible posible cual es el «estado del arte», es decir las técnicas y métodos que se usan en la actualidad en el área de la búsqueda y recuperación de vídeos. Vamos allá.

Aunque las tareas que se plantean en TRECVID son variadas, todas ellas están enfocadas a conseguir que el ordenador sea capaz de interpretar el contenido de un vídeo. Así por ejemplo la tarea denominada «semantic indexing» (indexación semántica), en la que hemos participado nosotros, consiste en identificar entre los vídeos de una colección dada, cuales de esos vídeos incluyen en su contenido alguna referencia a un concepto dado de entre una lista de 346 conceptos seleccionados. Ejemplos de esos conceptos son «adulto», «instrumentos musicales», «correr», «sentarse», «nadar», «ordenadores».

Otra de las tareas, denominada «known-item search» (búsqueda de algo conocido) plantea un escenario en que el usuario sabe de un vídeo, lo ha visto antes pero no sabe dónde buscar, entonces describe con palabras lo que está buscando, lo que recuerda sobre el vídeo en cuestión y el sistema debe reportarle una lista en orden de relevancia de aquellos vídeos que se acercan a dicha descripción. Un ejemplo más de las tareas planteadas consiste en encontrar en la colección aquellos vídeos que contienen un objeto, un lugar o una persona concreta, tales como «el Capitolio», «la estrella del Mercedes» o «el logo de pepsi».

Un último ejemplo de tareas es la denominada «multimedia event detection» que propone reconocer vídeos en los que sucede un evento determinado, tal como «fiesta de cumpleaños», «cambiar la rueda de un vehículo» o «una proposición de matrimonio».

Para conseguir que un ordenador sea capaz de reconocer con más o menos acierto información semántica incrustada en el contenido de un vídeo es necesario entrenarlo, lo cual requiere un trabajo previo consistente en coleccionar ejemplos positivos de todos aquellos conceptos, eventos o en general cualquier otro contenido que se desee reconocer. Vamos un proceso muy similar al que se da en los seres humanos desde su más tierna infancia.

Sin embargo, la principal diferencia con los humanos es que los ordenadores tienen un lenguaje muy limitado, limitadísimo, sólo son capaces de diferenciar entre un 0 y un 1, o sea un bit. De manera que para conseguir una tarea tan ardua como enseñarle a un ordenador a reconocer el contenido de una serie de imágenes a las que se añade un sonido, es necesario convertir estos estímulos audiovisuales en colecciones de números. Este proceso se denomina extracción de características.

Las características que se extraen de un vídeo pueden ser de caracter visual -pictórico-, sonoro o incluso de texto (tanto el que puede ir incrustado en el vídeo, el cual se puede extraer mediante un reconocedor óptico de caracteres -OCR- como el que va acompañando al documento en forma de metadato, como el título o anotaciones varias colocadas por los usuarios o el propio creador del vídeo), pero para simplificar nos centraremos en las primeras.  Las características visuales son a su vez muy variadas también, pero para poner un ejemplo ilustrativo,algunas que se utilizan con frecuencia son los histogramas de color, que consisten en obtener un histograma que muestre para cada color, el número de pixeles de dicho color que contiene la imágen. Tal histograma no es mas que una representación numérica de la imágen en su conjunto (un vector de tantos valores como colores se consideren). Estas características se denominan globales, ya que representan a toda la imágen. Las hay también locales, que se centran en representar zonas puntuales de la imágen que de algún modo sobresalen de las demás y por tanto pueden ayudar a caracterizar en cierto modo a estas imágenes. Un ejemplo típico de este tipo de características son los descriptores denominados SIFT (Scale Invariant Feature Transform).

File:Corner.png

En esta imagen (wikipedia) se muestra un ejemplo de características SIFT locales. Cada uno de los puntos detectados tiene algo de interesante en dicha imágen, de modo que esta colección de puntos puede servir para caracterizarla de algún modo.  Esta imagen es sencilla y no contiene mucha información, pero cuando se trata de imágenes con mayor carga semántica, el número de puntos puede llegar a ser grande. Teniendo en cuenta que cada punto es un vector de 128 valores, la cantidad de valores que se precisan para caracterizar una sola imágen puede llegar a ser inmanejable. para evitar esta profusión de puntos por cada imágen, los puntos se agrupan en clases, denominadas «visual words» (palabras visuales) que se representan por un único vector de 128 valores. De este modo se dispone de un diccionario («codebook») de palabras visuales que permite volver al concepto de histograma, registrando para cada imagen las palabras visuales que contiene de cada tipo.

En este ejemplo ilustrativo sólo hemos hablado de SIFT, pero existen un número considerable de características locales, cada una de ellas remarcando un tipo de información de la misma imagen. Cada tipo de característica tiene su propio diccionario visual, de modo que para cada tipo de característica que deseemos extraer, obtenemos un histograma diferente.

Todo lo dicho anteriormente es concerniente a una imagen en particular, pero un vídeo es una secuencia de imágenes. El proceso típico para tratar el vídeo consiste en separar el vídeo en tomas o escenas («shots») y coger de cada toma un conjunto reducido de fotogramas («keyframes») que permitan representar la toma en su conjunto. Los diferentes keyframes obtenidos representan al vídeo en su conjunto.

Una vez recopilado el material (ejemplos positivos y negativos, normalmente en forma de keyframes) con el que vamos a entrenar a nuestro sistema (colecciones de muestras positivas y negativas para cada clase o concepto que queramos enseñar a reconocer a nuestro sistema), se realiza el proceso de extracción de características y se utiliza un clasificador. En la actualidad casi todos los grupos utilizan SVM («Support Vector Machines»). Un clasificador SVM  no es mas que un método matemático capaz de identificar un hiperplano que permite separa los ejemplos positivos de los negativos. Cuando a posteriori llegue una nueva imagen desconocida sólo habrá que calcular a qué lado del hiperplano se sitúa, si está al lado de los positivos atribuiremos la imágen a la clase en cuestión y en caso contrario no la atribuiremos a dicha clase.

Teniendo en cuenta que para reconocer diferentes cosas es preciso utilizar diferentes tipos de características, los clasificadores se entrenan para cada tipo de característica en particular y luego se lleva a cabo un proceso de fusión de estos clasificadores para finalmente conseguir uno definitivo que nos permita decidir si un documento concreto se atribuye o no a una clase determinada.

La mayor parte de las ponencias utilizaban este método para conseguir identificar contenido semántico dentro de los vídeos.

Seguiremos informando.

Acerca de barrena

Bienvenidos a este diario, semanario, mensuario o como quiera que se desee denominar a este espacio donde intento comunicar los hechos más relevantes de mi actividad académica.
Esta entrada fue publicada en Investigación. Guarda el enlace permanente.

2 respuestas a TRECVID 2012. Reconociendo el contenido de los vídeos.

  1. Félix dijo:

    Tu presentación, si se ha producido, ¿qué impresión crees que ha llegado a producir?

  2. barrena dijo:

    Dado lo ajustado de la agenda, sólo tres o cuatro grupos por tarea han podido presentar sus resultados, teniendo en cuenta que es la primera vez que participamos y que los resultados que obtuvimos no sobresalieron sobre los demás, no fuimos elegidos para presentar. Sin embargo me ha dado tiempo de explicar nuestro trabajo a muchos de los participantes en las sesiones «extraoficiales», por los pasillos y la cafetería, vamos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *