370 likes | 551 Views
Sistemas de Interacción Multimodal. XMMVR: Framework de integración de interacción multimodal con mundos 3D David Escudero Mancebo Doctorado 2008-2009 Curso T02306. Presentación. Introducción Presentación del lenguaje XMMVR Arquitectura de soporte El leguaje XMMVR en profundidad
E N D
Sistemas de Interacción Multimodal XMMVR: Framework de integración de interacción multimodal con mundos 3D David Escudero Mancebo Doctorado 2008-2009 Curso T02306
Presentación • Introducción • Presentación del lenguaje XMMVR • Arquitectura de soporte • El leguaje XMMVR en profundidad • Evaluación • Trabajo futuro • Conclusiones • Bibliografía
Introducción • Los sistemas de Realidad Virtual y los Sistemas de Diálogo tienen un gran potencial para mejorar la interacción hombre máquina. • Ambos campos de investigación han experimentado un gran avance en las últimas décadas. • La integración podría ser vista como una evolución natural. • Sin embargo no ha sido así: escasas aproximaciones en el estado del arte. • Se han centrado en evolucionar intensivamente. • Sigue habiendo problemas técnicos en ambos campos. • XMMVR es una aportación en este sentido.
Introducción • Los sistemas de diálogo pueden mejorar la interacción en sistemas de realidad virtual: • Permiten introducir comandos sin usar las manos. • Permiten referenciar objetos fuera del campo visual. • Existen dificultades de cara a la integración por la heterogenidad de los recursos a combinar: • Modelos 3D estáticos o dinámicos • Recursos de interacción gráfica: ratón, display, hápticos. • Recursos para la interacción vocal: sistema de diálogo. • Planteamos un lenguaje de definición común donde podamos describir estos tres elementos así como la interacción entre ellos.
Introducción • Los Sistemas de Diálogo y los Sistemas de Realidad Virtual se caracterizan por: • Existencia de abundantes prototipos de investigación. • Bastantes sistemas comerciales • Algunos estándares. X3D o VXML por ejemplo. • Los sistemas de marcas han mostrado su eficacia a la hora de definir marcos de desarrollo y estándares a los adaptar productos. • Nuestra propuesta se apoya en un lenguaje de marcas: • Utiliza componentes en X3D y VXML • Especifica la interacción entre el mundo gráfico y el mundo hablado. • Existen multitud de lenguajes de marcas que abordan problemas similares: VXML, SALT, X+V, Behaviour3D, VHML, MPML, MIML, • Ninguno con el objetivo que nos planteamos.
El lenguaje XMMVR • eXtensible markup language for MultiModal interaction with Virtual Reality words o (XMMVR) es un lenguaje para especificar escenas 3D, comportamientos e interacción. • Los mundo o componente 3D se modelan como un elemento de XMMVR. • Es un lenguaje híbrido que incluye VXML y X3D. • Se apoya en una metáfora de teatro guiada por eventos.
El lenguaje XMMVR • El reparto o cast incluye los actores (elementos 3D) que participan en la aplicación. • Una secuencia especifica las escenas que forman parte de la aplicación • El contexto permite guardar el estado.
El lenguaje XMMVR • Cada actor • Tiene una apariencia gráfica (fichero VRML) • Tiene una serie de comportamientos predefinidos • Formato <evento, condición, acción>
El lenguaje XMMVR • Eventos: • El usuario genera eventos gráficos usando dispositivos GUI. • Los diálogos generan eventos vocales VUI al finalizar (los diálogos se especifican en VXML). • Los actores pueden generar eventos lanzando mensajes a otros actores (tipo ACT) • El sistema puede lanzar eventos (tipo SYS) por ejemplo al empezar una escena.
El lenguaje XMMVR • Acciones: • Tipo GUI, VUI, ACT, SYS • Acciones GUI que cambian la apariencia de las escenas. • Acciones VUI para lanzar diálogos. • Acciones ACT para lanzar mensajes a otros actores. • Acciones SYS para navegar entre escenas.
El lenguaje XMMVR • El elemento sequence gestiona la distribución de escenas: • Las escenas por defecto se van mostrando en el en orden en que son especificadas. • Los eventos y acciones tipo SYS alterarían la secuencia. • La escena incluye un escenario de fondo VRML y los actores que participan.
La plataforma XMMVR • Hemos desarrollado una plataforma software que da soporte al lenguaje XMMVR • Cada nueva aplicación se programa en el lenguaje XMMVR. • La plataforma interpreta este lenguaje y ejecuta la aplicación correspondiente. • La plataforma gobierna los elementos 3D y gestiona la interacción recogiendo eventos y ejecutando las acciones correspondientes.
La plataforma XMMVR • Un objetivo es que sea operativa en entornos web: • Condicionó el leguaje de representación 3D VRML, • Condicionó el lenguaje de especificación de diálogos VXM • Condicionó el lenguaje de definición de la arquitetura: Java • Los actuales trabajos están también condicionados por esta restricción.
La plataforma XMMVR • Problemas a resolver: • Gestión de los diálogos. • El control del mundo 3D. • La gestión de los eventos. • La realización concurrente de acciones.
Gestión de los diálogos: • Un módulo embebido en el navegador solicita un diálogos al módulo DISPATCHER. • La dinámica arranca con una solicitud de diálogo.
Tecnología: • JAVA Aplet en IE. • CORTONA como visualizador de VRML, EAI API para la interacción con elementos VRML. • Servlet en Apache Tomcat. • Intérprete de VXML propio, Plataforma vocal ATLAS.
Comunicación con elementos externos: • Interpreta el documento XMMVR. • Recibe eventos VUI y GUI introducidos por el usuario. • Los nodos VRML usan el EAI para modificar el aspecto de la película.
Event Scheduling: • Los eventos se encolan. • La tabla determina las acciones a realizar • Las acciones se ejecutan concurrentemente. • Alarm Manager
Control Stage: • Ejecuta métodos de los actores. • Mantiene una tabla con el estado.
W3C Multimodal Interaction Group (MMI): • Componte gráfica y vocal. • Interaction manager y Data Component.
El lenguaje XMMVR en profundidad • Ver DTD • Ver Ejemplo • ¿Por qué shockwave? • Herramienta gráfica potente: 3D Studio, web… • Comunicación con otras aplicaciones: flash, activeX • ¿Cómo se hizo? • Interprete de xml • Dualidad de los actores. • Sensibilidad de actores a eventos. • Invocación dinámica a métodos. Indireccionamiento de símbolos. • Carga dinámica de escenarios. • ¿Qué falta por hacer? • Diálogos
Evaluación • La evaluación en entornosvirtuales y en HCI es un campo de investicación en el que hay todavía mucho quehacer. • En J.L. Gabbard, D. Hix, J.E. Swan II. User-Centered Design and Evaluation of Virtual Environments. IEEE Computer Graphics and Applications, 1999 se estableceunapropuesta con cuatro tareas iterativas: • User task analysis is the process of identifying a complete description of tasks, subtasks, and methods required to use a system, as well as other resources necessary for user(s) and the system to cooperatively perform tasks. • Expert guidelines-based evaluation (heuristic evaluation or usability inspection) aims to identify potential usability problems by comparing a user interaction design—either existing or evolving—to established usability design guidelines. • Formative user-centered evaluation is an empirical, observational evaluation method that ensures usability of interactive systems by including users early and continually throughout user interaction development. • Summative comparative evaluation is an empirical assessment of an interaction design in comparison with other maturing interaction designs for performing the same user tasks. • Nosotrospresentamos un lenguajequeesperamos sea de prosópitoamplio, por lo que el análisis de tareas… • La evaluacióncentrada en usuarioesprematura. • El Expert guideline se centra en la revisión de metáforas.
Evaluación • Metáforas de interacción gráfica: (CONTIGRA: http://www.contigra.com/ ) • Fundamental metaphors • Structural metaphors • Navigational metaphors • Metáforas de interacción vocal . McGlashan, T. Axling. Talking to Agents in Virtual Worlds, UK VR-SIG Conf., 1996 • Metáforas de cooperación entre modosJ. C. Martin. TYCOON: theoretical and software tools for multimodal interfaces, AAAI Press , 1998
Evaluación • Interacción gráfica, Fundamental metaphors: • Theatre metaphor (tm): User has an static position and a point of view where world changes around. • Locomotion metaphor (lm): User has a dynamic position and will be translated through a structure.
Evaluación • Interaccióngráfica, Structural metaphors • Rooms: Can be considered as parts of both fundamental metaphors (tm, lm) and are applied on areas like virtual entertainment, education or electronic commerce. • Revolving stages: Are characteristical examples of the theatre metaphor (tm), because the user’s point of view keeps constant. • Buildings with floors, corridors, levels: Are typical examples of the locomotion metaphor (lm). • Space stations, molecules, bubble-nets: Belong to the locomotion metaphor (lm). • Urban metaphors: Are examples of the locomotion metaphor (lm).
Evaluación • Interaccióngráfica, Navigational metaphors • Elevator / hydraulic ramp: Due to its lineal movement, they support sequential tasks. • Track vehicle / train: Two directions are possible with this sequential metaphor in most of the cases. • Cable railway / slide: Sequential metaphor with one way where an only strict sequence of visited action spaces is allowed. • Flying chair / carpet: Belongs to the group of parallel metaphors because user can fly to more than one or two action spaces. • Tele-Portage / “Beam me up”: Despite of disorientation, it is an appropriate metaphor for completely free structures and allows the election of several destination spaces.
Evaluación • Metáforas de Interacción gráfica: • Structural metaphors are quickly developed with our solution: metaphor of “rooms” can be developed assigning the scene element to every room defined in the application; metaphor of “revolving stages” could be solved assigning the element scene to each of the stage as well; in the cases of “buildings”, “space stations” and “urban” the solution could be the same delimiting the building, space station or urban in several levels that could be our scenes. • To implement Navigational metaphors we can assign every element of these metaphors to element actor of our language. Thus, the elevator metaphor could be an actor moving over floors (element scene) resulting a combination of a navigational metaphor (elevator) and a structural metaphor (building).
Evaluación • Interaction vocal • Proxy: The user can take control of various agents in the virtual world and thereby interacts with the virtual world through them; for example, painter, paint the house red! • Divinity: The user acts like a god and controls the world directly; for example, Let the house be red! • Telekinesis: Objects and agents in the virtual world can be dialogue partners in their own right; house, paint yourself red! • Interface Agent: The user communicates with an agent, separate from the virtual world, which carries out their spoken commands. • The system is prepared to resolve Proxy and Interface Agent metaphors because the dialogues are vinculated to the different actors through the behaviour element. Nevertheless, the use of the Proxy metaphor should demand the availability of a VoiceXML interpreter with different voices to associate to the different agents to play. • Telekinesis and Divinity metaphors will be simulated using an actor without graphical appearance responsible to dialogue with the user and to interact with the rest of agents through ACT type events.
Evaluación • Cooperation between modalities • Transfer: Part of the information produced by a modality is used by another modality. • Equivalence: Both types could treat the same information. • Specialization: A determinated type of information is always processed by the same modality. • Redundancy: The same information is processed by both modalities. • Complementarity: Different parts of information are processed by each modality but have to be combined. • Transfer y complementarity: hash table State of the World • Equivalence also can be done because the sequence of actions can be executed as a consequence of a vocal or graphical event. • Specialization is responsiveness of the programmer of scenes that can delegate determinated task to one or other modality. By last, • Redundancy: locking situations because actions can be executed concurrently. This is predicted with the inclusion of the element Alarm manager expected to be able to cancel actions from the queues.
Trabajo futuro • Consolidar el lenguaje. • Migración a otras plataformas. • Sincronización entre modos. • Desarrollo de aplicaciones ilustrativas. • Evaluación basada en usuarios.
Conclusiones • XMMVR permite escribir scripts para especificar mundos virtuales con interacción multimodal. • Aporta modularidad, mejorando las posibilidades de reutilización. • Se ha implementado una plataforma de soporte. • La evaluación evidencia carencias que abren la posibilidad de afrontar nuevas versiones. • La migración a otras tecnologías es también un desafío.
Bibliografía • Congreso Español de Informática Gráfica 2004, Sevilla • Congreso Español de Interacción Hombre Máquina 2006, Puertollano • Congreso Español de Informática Gráfica 2007, Zaragoza • Congreso Español de Interacción Hombre Máquina 2007, Zaragoza • International Workshop on Computer Graphics 2008, Chequia • Jornadas Españolas sobre Realidad Virtual 2008, Albacete • Jornadas de Tecnologías del Habla 2008, Bilbao • Human Computer Interaction International 2009, San Diego • Capítulo de Libro en Springer 2009
Sistemas de Interacción Multimodal XMMVR: Framework de integración de interacción multimodal con mundos 3D David Escudero Mancebo Doctorado 2008-2009 Curso T02306