Investigadores del Departamento de Inteligencia Artificial de la Facultad de Informática de la Universidad Politécnica de Madrid (FIUPM), en colaboración con la Universidad Rey Juan Carlos de Madrid, han desarrollado un algoritmo que es capaz de reconocer expresiones faciales en tiempo real (procesando 30 imágenes por segundo), asignando a la persona observada una de las seis expresiones prototípicas: enfado, asco, miedo, alegría, tristeza y sorpresa.
Los resultados de esta investigación han sido publicados en la edición de enero de la revista Pattern Analysis and Applications, en un artículo que firman Luis Baumela y Enrique Muñoz, del DIA, y José Miguel Buenaposada, de la Escuela Superior de Ingeniería Informática de la Universidad Rey Juan Carlos de Madrid.
Aplicando el algoritmo de reconocimiento de expresiones faciales, el prototipo desarrollado es capaz de procesar una secuencia de imágenes de una persona en posición frontal y en movimiento, reconociendo la expresión de su rostro. El software puede aplicarse a secuencias de vídeo en situaciones realistas, permitiendo identificar la expresión facial de una persona situada frente a la pantalla de un ordenador. Aunque de momento es sólo un prototipo, el software es capaz de realizar su trabajo en un ordenador de sobremesa e incluso en un ordenador portátil.
Flexibilidad y adaptabilidad
Cuando una persona se coloca delante de una cámara conectada a un ordenador en el que se ejecuta el prototipo, su rostro es analizado por el sistema (hasta 30 imágenes por segundo) a través de unos recuadros que se fijan al rostro del usuario en una pequeña ventana. Estos recuadros siguen el movimiento del rostro del usuario hasta determinar cuál es la expresión de su cara comparándola con las expresiones realizadas por diferentes personas (333 secuencias) dentro de la base de datos Cohn-Kanade.
La tasa de aciertos del sistema sobre la propia base de datos de Cohn-Kanade es del 89% y puede trabajar en condiciones adversas como grandes cambios de la apariencia de la cara producidos de la iluminación ambiental, pequeños movimientos del rostro o movimientos de la cámara.
Las aplicaciones de este software son diversas: desarrollo de interfaces avanzadas entre las personas y las máquinas, potenciación de las relaciones con el consumidor que compra a través de Internet, y dotación a los avatares de los metaversos de una capacidad inédita de relación con su personaje.
Múltiples aplicaciones
Las interfaces avanzadas hombre máquina pueden enriquecerse con este software porque permitiría construir avatares que simulan realmente las expresiones del rostro de una persona, posibilidad que es realmente atractiva para sectores específicos como los videojuegos.
El comercio electrónico también podría beneficiarse de esta tecnología, ya que en el momento de comprar por Internet, el ordenador sería capaz de identificar los gestos de la persona que se interesa por un producto, de determinar su intención real de compra e incluso de medir su nivel de satisfacción por un producto o servicio, ya que el sistema podría ayudar a reducir las ambigüedades del lenguaje hablado o escrito.
Aplicado a metaversos como el de Second Life, este software permitiría asimismo a los avatares que representan a los usuarios del sistema disponer de la facultad de interpretar, hasta cierto punto, los sentimientos de su personaje a partir de las expresiones de su rostro.
Innovaciones
Aunque existen productos en el mercado de análisis facial (por ejemplo, FaceLab de Seeing Machines) no existen productos específicamente dirigidos al análisis de las expresiones faciales del usuario. El prototipo desarrollado por estos investigadores podría dirigirse a ese tipo de mercado. En la web del grupo de investigación en Percepción Computacional y Robótica de la Facultad se pueden ver algunos vídeos del algoritmo en funcionamiento.
Por otro lado, si bien la mayoría de sistemas parecidos desarrollados por otros investigadores trabajan únicamente sobre la parte de reconocimiento de expresiones, el prototipo desarrollado realiza la tarea completa: localizar y seguir el rostro en la imagen con un algoritmo propio que funciona a pesar de los cambios de iluminación o el movimiento del usuario, y clasificar la expresión facial del usuario. Por último, también incorpora un algoritmo original que calcula las probabilidades de evolución de las expresiones faciales del sujeto analizado.