Avatares Conversacionales 3D en Tiempo Real para su Integración en Interfaces de Usuario y Entornos TV Amalia Ortiz (1), Jorge Posada (1), Karmelo Vivanco (2), Miguel G. Tejedor (3), Eva Navas (4), Inma Hernaez (4) (1) Departamento de Edutainment y Turismo (VICOMTech) (2) Baleuko (3) Talape (4) Universidad del Paı́s Vasco/Euskal Herriko Unibertsitatea (Grupo Aholab) aortiz@vicomtech.es Resumen Las interfaces actuales no permiten al usuario interactuar con el sistema de una manera natural e intuitiva. Surge la necesidad de crear un nuevo lenguaje de comunicación hombre-máquina. Para ello, se están desarrollando las denominadas ”Interfaces Conversacionales de Usuario”, que integran un asistente virtual 3D capaz de realizar funciones del sistema. En este articulo se presenta un proyecto industrial (*) basado en este tipo de interfaces, describiendo su modo de funcionamiento, la importancia de unir el uso de la sı́ntesis de voz a una representación gráfica tridimensional y las aplicaciones que puede tener. (*) Este trabajo ha sido parcialmente financiado por el programa INTEK 2001 del Gobierno Vasco, código CN01BA09. 1. Introducción actualmente encuentran importantes restricciones tecnológicas en el desarrollo de aplicaciones. Algunas de las caracterı́sticas que hay que tener en cuenta durante el desarrollo para su uso en aplicaciones multimedia son: peso poligonal bajo, capacidad emocional, flexibilidad a la hora de ser integrado en otras plataformas (PC’s, PDA’s, TV Digital, etc.) y sobre todo, respuesta en tiempo real, ya que las animaciones pregrabadas no sirven si se desea una comunicación interactiva. En el apartado 2 se describe la importancia del uso de emociones y el empleo de lenguas minoritarias en las nuevas tecnologı́as. A continuación, en el apartado 3, pasamos a explicar el proyecto en el que estamos trabajando (ABATEUS), con una descripción del sistema desarrollado y sus funcionalidades. Por último, en el apartado 4, se describen algunas de las posibles aplicaciones que pueden tener este tipo de interfaces, tanto en general como para nuestro proyecto en concreto. Recientemente la influencia de los ordenadores ha crecido hasta el punto de convertirse en una herramienta muy útil y utilizada por la mayorı́a de las personas, no sólo en su trabajo, sino también en su tiempo de ocio. Con este crecimiento, la tecnologı́a ha ido también evolucionando y es cada vez más potente y novedosa, pero también más compleja y difı́cil de entender para el usuario medio. Es ası́ como surge la necesidad de realizar un cambio en los sistemas y métodos de interacción hombre-maquina[1]. Hoy en dı́a, la forma más común de realizar cualquier tarea en un ordenador personal esta basada en el paradigma WIMP (Windows, Iconos, Menús y Punteros). Sin embargo, este modo de actuación es insuficiente para proporcionar al usuario una interfaz natural e interactiva, que le permita un uso eficiente de las nuevas tecnologı́as. La forma de comunicación natural entre humanos esta basada en el habla. Las innovadoras interfaces de usuario que actualmente están siendo desarrolladas, incorporan módulos de sı́ntesis y reconocimiento de voz. Una manera adicional de enriquecer estas nuevas interfaces es la integración en el sistema de un asistente virtual 3D, más comúnmente denominado ’avatar’, con capacidad de habla en tiempo real. En estas nuevas interfaces, llamadas ”interfaces conversacionales de usuario”, la figura del avatar juega un papel muy importante. Los avatares son personajes virtuales, representados por el cuerpo entero o únicamente por la cabeza, que pueden simular aspectos de la comunicación humana (oral o no oral), y Figura 1: Consola de ABATEUS. Cabeza de BetiZu 2. El proyecto ABATEUS El objetivo global del proyecto ABATEUS es implementar una plataforma para el desarrollo de avatares parlantes en euskera, Figura 2: Arquitectura del Sistema. basados en los personajes animados de dos productoras de televisión y explorar formas innovadoras de utilizarlos en aplicaciones multimedia y Televisión Digital, ası́ como en su entorno de producción televisiva tradicional. El proyecto está basado en un primer prototipo de plataforma de avatares, que existe actualmente para otras lenguas. Para el desarrollo del proyecto se ha formado un consorcio integrado por la asociación VICOMTech, el Grupo Aholab de la Universidad del Paı́s Vasco/Euskal Herriko Unibertsitatea(UPV/EHU) y las productoras Baleuko y Talape. Baleuko y Talape cuentan con una amplia experiencia en animación 3D. Baleuko ha producido, entre otros, uno de los primeros largometrajes 3D en Europa. Produce también alrededor de 8 minutos semanales de BetiZu, una serie de animación 3D para el canal de televisión vasco, ETB, que se ha convertido en uno de los programas televisivos para niños más vistos en el Paı́s Vasco. Baleuko y Talape están interesados en el área de gráficos por computador y su aplicación para televisión, en particular, para el personaje BetiZu, una vaca espacial que habla euskera [Figura 1]. El proyecto ABATEUS ayudará en el proceso de producción de Baleuko a automatizar la animación facial de sus personajes en las secuencias habladas y permitirá el uso de su personaje estrella en otras áreas innovadoras y poco convencionales. Esta tecnologı́a puede mejorar el actual escenario de modelado, animación y producción de contenidos televisivos y extender las actividades de las empresas a otros canales de comunicación como puede ser Internet o CD’s multimedia. VICOMTech es responsable de la plataforma avatar, especialmente de la sincronización entre la animación facial y el audio, y de los algoritmos de gráficos 3D. Dentro de este área es importante destacar la relevancia de las expresiones emocionales en la animación facial ası́ como de la implementación de las reglas de comportamiento, para dar al avatar una movilidad creı́ble y poder integrarlo en aplicaciones de TV. VICOMTech colabora en estos proyectos con GRIS y ZGDV (Departamento de Digital Storytelling) compartiendo sus conocimientos en el área de avatares, en la que ambos grupos han tenido una gran experiencia. ZGDV, GRIS y VICOMTech son miembros de la INI-GraphicsNet. El grupo Aholab, de la UPV/EHU, está desarrollando un sintetizador de voz en Euskera capaz de soportar carga emocional. Su primera versión, sin carga emocional, ya ha sido integrada en ABATEUS. Actualmente el primer prototipo es completamente funcional y capaz de sintetizar textos en euskera con el personaje de BetiZu. El trabajo en sı́ntesis de voz emocional, calidad de renderización e integración en otros módulos o plataformas está en curso. 2.1. Descripción del sistema Como se puede ver en la Figura 2, la arquitectura del sistema está dividida en tres módulos fundamentales que explicamos a continuación: 2.1.1. Módulo de Sı́ntesis de Voz (Aholab) El funcionamiento del sistema es el siguiente: el texto etiquetado de entrada (que puede provenir de múltiples posibles fuentes: teclado, Internet, archivo), contiene el texto que se va a pronunciar, más unas etiquetas especiales que indican las emociones con que se deben emitir ciertas partes del texto, ası́ como eventos emocionales complejos relacionados tales como risas, lloros, etc. El módulo de preprocesado interpreta ese texto etiquetado y extrae las emociones que se transfieren a la plataforma gráfica para controlar la expresión de la cara. El texto a pronunciar, ası́ como las emociones y los eventos relacionados con ellas se transfieren también al procesador lingüı́stico del conversor texto a voz. El procesador lingüı́stico calcula la cadena de sonidos necesaria para emitir el mensaje contenido en el texto con la emoción indicada por las etiquetas, asignando a cada fonema sus caracterı́sticas prosódicas, principalmente su duración y entonación. Estas caracterı́sticas prosódicas, junto con la cadena de sonidos a pronunciar (fonemas y sonidos asociados a los eventos emocionales) se transfieren a la plataforma gráfica y al módulo motor de sı́ntesis de voz en Euskera. Finalmente el motor de sı́ntesis genera la señal de voz correspondiente, que se lanza simultáneamente a la secuencia animada de imágenes calculada por la plataforma avatar. Una de las labores de Aholab es la grabación y la creación de una Base de Datos emocional con la voz de BetiZu usando los estudios de grabación de Baleuko. 2.1.2. Módulo de Animación y Sincronización (VICOMTech) Por otro lado, para reproducir la salida gráfica se necesitan algunos de los parámetros del sintetizador de voz con el fin de coordinar los gestos faciales de habla. Principalmente son la frecuencia fundamental o pitch y la duración de cada fonema, aunque también se incluyen sonidos y eventos emocionales basados en marcas o etiquetas del texto. Con estos datos, se asociará cada fonema a su visema correspondiente -equivalente visual del fonema- mediante técnicas avanzadas de morphing [2] y con base en ’objetivos morph’ básicos (morph targets) que representan posiciones preestablecidas del rostro. La animación 3D gestual del habla está basada en los parámetros procedentes del sintetizador junto con la aplicación de una serie de reglas de comportamiento internas (asociadas con emociones), y la combinación de los objetos básicos, establecidos previamente, y combinados con la técnica morphing. Cada objeto es una representación 3D de la cara en una posición determinada (ej. Boca abierta en forma de O). De esta manera, se podrán representar cambios a lo largo del tiempo como una interpolación de figuras dadas. 2.2. Funcionalidades de ABATEUS A continuación se presentan algunas de las principales funcionalidades que ya ofrece la plataforma avatar desarrollada para el proyecto: MULTILUNGUALIDAD : Un resultado clave de nuestro proyecto es la inclusión del euskera en la plataforma de desarrollo del avatar. Ası́, el sistema está disponible para el inglés, el castellano y el alemán. Para estas lenguas la voz es sintetizada utilizando el sistema de sı́ntesis público MBROLA [3]. Para el caso del euskera, como ya se ha mencionado, se incorpora el sistema de sı́ntesis AhoTTS [4] ANIMACIÓN FACIAL : Las partes faciales que son habitualmente animadas en el avatar son: la cabeza, los labios, los ojos, las pupilas, las cejas y las pestañas. Para este trabajo, se utilizan también animaciones propias del ’cartoon’, como el movimiento de las orejas de Betizu, la nariz, etc. Algunas de las animaciones simplemente se realizan generando una deformación individual más una traslación o desplazamiento en una determinada trayectoria, como es el caso de las pupilas o el movimiento de la cabeza. Otras, como las de los labios, se realizan utilizando técnicas de morphing. Los objetos básicos son determinados para un personaje particular mediante diversas posiciones faciales, representadas por mallas poligonales en ficheros con el formato estándar de Alias Wavefront. Estas posiciones faciales, pueden ser fácilmente producidas en el entorno usual de trabajo de Baleuko y Talape. 2.1.3. Módulo de Adaptación de Geometrı́as (VICOMTech) Este es el módulo encargado de adaptar nuevos personajes a la plataforma a partir de los ficheros de mallas obtenidos en los entornos habituales de trabajo de Baleuko y Talape para animación 3D. La generación de los archivos de mallas es completamente automática, puesto que éste es un estándar de facto para la descripción de mallas poligonales en la industria de animación gráfica. Para cada personaje debe generarse un número preestablecido de posiciones faciales estáticas 3D. A partir de estos archivos, el módulo adaptador de mallas poligonales faciales genera una representación interna de la información geométrica apta para el procesado y la aplicación de las técnicas de morphing necesarias para la animación en la plataforma. Figura 3: Técnica Morphing. Para representar una animación con esta técnica, lo primero que hay que hacer es encontrar un apropiado conjunto de objetos básicos (Bi en la Figura 3 y en la fórmula 1), de tal manera que todas las expresiones faciales necesarias para producir la animación, se puedan obtener a partir de una combinación de estos objetos básicos. Para este proyecto se han definido 14 objetos básicos diferentes. La animación se representa por una geometrı́a base (ej: malla headDefault) y un conjunto de keyframes o vector de pesos. Cada valor del vector de pesos corresponde al valor de interpolación (ai en la Figura 3 y en la fórmula 1). Los objetos básicos están definidos por una serie de vértices , vij que se mueven a lo largo del tiempo para producir la animación. Las secuencias de animaciones se van a generar realizando las operaciones definidas en la fórmula 1 según los valores de entrada, tal y como se observa en la figura 3. B(a) = n−1 X i=0 ai B i = ( n−1 X ai vij ) (1) i=0 EMOCIONES FACIALES : Una de las principales ventajas de contar con un avatar 3D conversacional es la de generar al usuario la ilusión de estar interactuando con el sistema como si estuviera comunicándose con una persona real. Esto se consigue imitando diálogos y formas de movimiento de las comunicaciones entre humanos. Un ejemplo del empleo de estas estrategias de comunicación nos lo proporcionan los sistemas de ’Digital StoryTelling’[5]. DIFERENTES PERSONAJES : El sistema es flexible, de tal forma que contiene un módulo especial que permite el cambio de un avatar a otro de una manera sencilla para el usuario. Esto permitirá a la empresa la utilización futura de la plataforma ABATEUS, no sólo para su personaje protagonista, BetiZu, sino para cualquiera de ellos. Ası́ mismo, la arquitectura del sistema soporta avatares de carácter humano o de dibujo animado 3D. TEXTURAS Y MATERIALES : El sistema soporta materiales diferentes y texturas, incluyendo fotografı́as de personas. Con dos o tres fotos es posible reproducir un avatar con una apariencia real, aunque actualmente este proceso requiere una intensa intervención manual del programador. EVENTOS : El sistema es capaz de captar eventos de usuario tales como ”Parar!.o ”Hablar!”. La lı́nea de investigación está centrada actualmente en los eventos emocionales, como risas, suspiros, sorpresa, llanto, etc. que se introducen manualmente en el texto de entrada. 3. Lı́neas de aplicación El prototipo podrá ser fácilmente extensible a cualquiera de los siguientes escenarios: La sincronización del habla con la animación facial, y la simulación de expresiones emocionales son actualmente áreas de investigación muy activas y son elementos claves en el proceso de comunicación. La expresividad y las reglas de comportamiento del avatar son tan importantes para conseguir captar la atención del usuario como una buena calidad de voz e imagen. Las emociones implementadas en el avatar son un subgrupo de las emociones definidas según MPEG-4: alegrı́a, tristeza, enfado y neutral, con un control paramétrico de la intensidad de cada una de ellas. Figura 4: BetiZu en la web. ALTA RESOLUCIÓN : El objetivo del proyecto es permitir, tanto como sea posible, el soporte de modelos de alta resolución. La investigación se centra en soportar las mismas resoluciones utilizadas por la empresa en los procesos de animación 3D, sin perder calidad en una ejecución rápida y sincronizada con el audio. Actualmente utilizan modelos de aproximadamente 25000 polı́gonos para las animaciones faciales finales, aunque durante el proceso de animacion trabajan con modelos menos pesados. La plataforma gráfica, actualmente es capaz de mover modelos de 5000 polı́gonos. La resolución final utilizada permitirá al usuario ejecutar el programa en un PC ordinario con tarjeta gráfica sin ninguna especificación especial. 3.1. Internet Actualmente, Internet es un medio bien conocido y que esta al alcance de muchos usuarios. Es una vı́a rápida de información, pero también de comunicación. Las redes no son exclusivamente utilizadas hoy en dı́a como medio de búsqueda de información sobre múltiples temas, sino también como vı́a de comunicación con otros puntos del mundo, ya sea a través del correo electrónico como a través del chat. La utilización de avatares en la red [6], personaliza la conexión del visitante, haciéndola más natural. El papel del avatar integrado en una página web ofrece, entre otras, funcionalidades interactivas como: asistentes en e-commerce o e-learning, acompañante y guı́a en los juegos de red o Tele-presencia en chats. En nuestro caso[Figura 4], la aplicación consiste en un lector de noticias de BetiZu para la página web de Baleuko. Este prototipo ha sido implementado mediante applets de Java. La animación gráfica se ejecuta en el cliente mientras que la generación de los archivos de audio se generan en el servidor. La arquitectura de red está diseñada para que el usuario no tenga que instalar ningún nuevo programa en su ordenador, de tal forma que podrá interactuar con BetiZu en el momento de conectarse a la página. Toda la ejecución es transparente para él. 3.2. Televisión Digital Interactiva La televisión digital interactiva enriquece la experiencia de ver televisión, dando al espectador la posibilidad de ser un agente activo gracias a varias aplicaciones[7], como pueden ser; Chat, Juegos, E-commerce, Guı́a de programas electrónicos, etc. El avatar tiene cabida dentro de todas estas aplicaciones ayudando a generar en el espectador la sensación de estar realmente interactuando con un personaje real y de una manera individualizada. Como ejemplo, algunas de las aplicaciones de avatares para una plataforma televisiva podrı́an ser: Guı́a a través de la programación televisiva y de los diferentes canales. el lenguaje de comunicación, el tipo de interfaces y los servicios interactivos que se les proporcione durante la teleformación[11]. La tele-presencia es esencial para captar la atención del alumno. Por ello, los avatares ofrecerán un incremento en la aceptación del sistema de educación, tomando el rol de: profesor, alumno o compañero, o incluso como guı́a en un Entorno Virtual Educativo. En la figura 5 se observa un prototipo con base en un entorno virtual educativo en el que BetiZu actúa como profesora. El entorno consiste en un espacio tridimensional dividido en tres zonas o habitaciones que contienen diversos objetos sobre los que se puede interactuar. El usuario puede moverse por todo el entorno, siempre en el plano horizontal, pudiendo orientar la vista en los tres ejes. Se han tenido en cuenta las posibles colisiones que puedan ocurrir entre el visitante y el entorno, de tal forma que el usuario no podrá atravesar las paredes ni los objetos. La implementación del prototipo esta realizada en Open Inventor y C++. El principal elemento de interacción entre el visitante y el entorno es BetiZu. Como se observa en la figura 5, ésta se encuentra en una ventana activa fuera del entorno virtual. Cuando detecta alguna tipo de interacción con el entorno, averigua de donde viene la orden y realiza las acciones pertinentes, como comenzar una descripción del objeto o explicar las posibilidades de interacción que ofrece la habitación virtual en la que se encuentra el usuario. Personaje que puede interactuar individualmente con el espectador transmitiendo contenidos interactivos. Presentador virtual 3.3. Aplicaciones multimedia Las aplicaciones multimedia, como audio, vı́deo, etc. son un gran apoyo a la hora de presentar información de cualquier tipo, educativo, de ocio, etc. Pero muchas veces, no es suficiente. Cada vez se está utilizando más el contenido hyper-media [8], pero sigue faltando el agente inteligente con representación gráfica, que permita una interacción natural para el hombre. Dentro del contexto Edutainment (Educación y Entretenimiento) podemos tomar como ejemplo una aplicación multimedia cuyo objetivo sea contar cuentos a niños. El audio y el vı́deo son imprescindibles para ello, pero para captar la atención del espectador, poder personalizar el cuento y hacerlo dinámico, según indican los estudios realizados sobre Digital Storytelling, falta la figura del ’cuenta cuentos’[9]. En el contexto concreto del proyecto ABATEUS, un cuentacuentos con la apariencia de Betizu, en el que el niño pudiera ver cómo su personaje de dibujos animados le cuenta un cuento personalizado e interactivo, serı́a de gran ayuda para la producción y difusión de la serie. La caracterı́stica de personalización se consigue gracias a la capacidad de respuesta en tiempo real del sistema. 3.4. Educación La interacción estudiante-estudiante, en adición a la interacción estudiante-contenido y estudiante-profesor, es una parte a menudo descuidada en la educación a distancia [10]. En este contexto, la motivación de los alumnos variará según Figura 5: BetiZu integrada en Entorno Educativo. 3.5. Entornos normales de producción para televisión Las animaciones 3D para televisión actualmente utilizan algunos de los programas de modelado y animación existentes en el mercado. En concreto, las empresas Baleuko y Talape, animan su serie televisiva, con uno de estos programas comerciales realizándolo de forma manual. Integrando esta tecnologı́a en su entorno actual de producción, se podrı́a ayudar a la automatización de la animación facial en las secuencias habladas. El módulo de animación que utilizan, obtendrı́a como entrada, la salida gráfica y el audio sincronizados de la plataforma avatar. 4. Conclusiones y Trabajo Futuro Los avatares y las interfaces conversacionales de usuario abren muchas puertas a la interacción hombre-maquina, proveyendo una interfaz mucho más natural e intuitiva. En definitiva, son una forma innovadora y audaz para mejorar la interfaz de usuario en varios aspectos, y muy flexible para ser integrado en otras plataformas. En concreto, para este proyecto, se va a facilitar con valor adicional, la integración de los avatares en la televisión 3D, en la producción de pelı́culas y en áreas relacionadas. Por otro lado, las lenguas minoritarias han sido dejados de lado en el mercado dentro del área de las tecnologı́as del habla. Esta tecnologı́a debe poder llegar a todas las culturas por lo que consideramos prioritario el desarrollo de avatares en estas lenguas. Encontramos ası́ dos tecnologı́as con mucho potencial de sinergia, la de la sı́ntesis de voz y la de gráficos por computador. Dentro del área de sı́ntesis de voz, es importante resaltar la necesidad de avanzar especialmente en las lenguas minoritarias, y los avatares necesitan de esta capacidad para poder comunicarse con el usuario. Este proyecto une ambas tecnologı́as y es la prueba de que existen muchas posibilidades cientı́ficas y prácticas de interacción entre ambos. Con el se mejora la calidad de interacción entre el hombre y la máquina, ofreciendo al usuario la posibilidad de hacerlo en su propio idioma. Se han obtenido ya unos buenos resultados iniciales, que serán mejorados en la segunda fase del proyecto. Las lı́neas de investigación futuras se centrarán en las expresiones corporales y relaciones espaciales. Esto significa ampliar la animación facial a animación corporal y a su integración total en entornos virtuales, aplicando reglas de comportamiento dependiendo de su situación espacial dentro del entorno. Por otro lado, existe la necesidad de crear una comunicación hablada bidireccional, en la que el usuario pueda utilizar para la interacción, además de el ratón y el teclado, su propia voz. Por ello, otra de las lı́neas de investigación futuras en el área de avatares conversacionales es la incorporación de sistemas de reconocimiento de voz. 5. Referencias [1] Maes, P.: Agents that Reduce Work and Information Overload, Communications of the ACM, Vol. 7/7, July 1994. [2] Alexa M., Behr J., Müller W. (2000). ”The Morph Node”. Proc. Web3d/VRML 2000, Monterey, CA., pp. 29-34 [3] http://tcts.fpms.ac.be/synthesis/mbrola.html [4] Inma Hernaez, Eva Navas, Juan Luis Murugarren, Borja Etxebarria: Description of the AhoTTS System for the Basque Language.2001 [5] Norbert Braun, ”Storytelling & Conversation to Improve the Fun Factor in Software Applications”. CHI 2002 Conference on Human Factors in Computing Systems, Workshop Funologie, Minneapolis, Minnesota, SIGCHI, ACM, USA ”Interactive problem solving with speech”, J. Acoust. Soc. Amer., Vol. 84, 1988, p S213(A). [6] Braun N, Finke M, Rieger Th: Community TV: An Approach to Interaction for Groups and Single Users on In- ternet Video. In: Kluev, V.V. (Hrsg.) u.a.; World Scientific and Engineering Society (WSES): Proceedings of WSES Conferences 2001. CD-ROM : SSIP-MIV- SIMRODLICS. 2001 [7] Hari Om Srivastava: Interactive TV: Technology and Markets. Editado por: Digital Audio And Video Series. [8] Braun, N., Finke, M. Interaction of Video on Demand Systems with Human-like Avatars and Hypermedia. 7th International Workshop on Interactive Distributed Multimedia Systems and Telecommunication Services, IDMS2000 (en cooperación con ACM SIGCOMM y SIGMM) Octubre 17-20, 2000, Enschede, Holanda. [9] Ryokai, K., Vaucelle, C., Cassell, J.(2002). ”Literacy Learning by Storytelling with a Virtual Peer”. Proceedings of Computer Support for Collaborative Learning. January 7-11, Boulder, CO, pp. 352-360. [10] Antón Nijholt. Computer-facilitated Communit Building for E-Learning. Center of Telematics and Information Technology. University of Twente, Po Box 217. Publication 2002 [11] Ryokai, K., Vaucelle, C., Cassell, J.(2002). ”Literacy Learning by Storytelling with a Virtual Peer”. Proceedings of Computer Support for Collaborative Learning. January 7-11, Boulder, CO, pp. 352-360.