interazione multimodale su mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

39
Interazione multimodale su Mobile interazione vocale, touch e grafica su diverse piattaforme mobile Autore: Fabrizio Gramuglio Email: [email protected] Web: http://www.dotvocal.com Sponsor:

Upload: iwa

Post on 11-May-2015

823 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Interazione multimodale su Mobile interazione vocale, touch e grafica su diverse

piattaforme mobile

Autore: Fabrizio GramuglioEmail: [email protected]: http://www.dotvocal.com

Sponsor:

Page 2: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Chi sono

Fabrizio Gramuglio @ Smau 2009-10-21

Attività Svolta

Socio fondatore e analista programmatore per

DotVocal S.r.l. (http://www.dotvocal.com).

Mi occupo di sviluppo e consulenza nell’ambito di

applicazioni multimodali su differenti dispositivi: dal

desktop computer, car pc, dispositivi mobile ed

embeddedn devices..

Si occupa, inoltre, di infrastrutture SIP, 3G e IMS, e

dell’introduzione dell’uso del voce nella relazione

tra utente e web.

Ha diretto numerosi progetti nazionali e

internazionali (Fiat-Lancia, Garnier, Wuerth,

LogObject –SwissCom, Aton, etc.) collaborando ed

interagendo con diversi partner quali: Microsoft,

Loquendo, Tetco-VoxPilot, e Genesis.

Network: http://www.iwa.it http://www.itlists.org http://blog.iwa.it

http://webaccessibile.org http://www.skillprofiles.eu

Page 3: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Cos'è IWA/HWG

Partecipazioni e attività IWA/HWG è un’Associazione professionale no profit riconosciuta

leader mondiale nella fornitura dei principi e delle certificazioni di

formazione per i professionisti della Rete Internet; è presente in

100 paesi, con 130 sedi ufficiali in rappresentanza di più di

165.000 associati.

La sua missione:

Fornire programmi formativi di qualità;

Fornire agli associati supporto e collaborazione a livello

regionale, nazionale e internazionale, nonché un marchio di

affiliazione riconosciuto a livello mondiale;

Promuovere i principi universali di etica e di pratica

professionale per tutti i professionisti della Rete Internet;

Fornire supporto per la definizione e lo studio di normative

nei Paesi in cui è presente

Network: http://www.iwa.it http://www.itlists.org http://blog.iwa.it

http://webaccessibile.org http://www.skillprofiles.eu

Fabrizio Gramuglio @ Smau 2009-10-21

Page 4: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Agenda:

Lo stato dell’arte

Tecnologie

Archietture

Linguaggi e framework

Applicazioni

Cosa stiamo facendo?

Cosa dovremmo fare?

Tecnologie

Architetture

Linguaggi e Framework

Fabrizio Gramuglio @ Smau 2009-10-21

Page 5: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Stato dell’arte – lo stato dell’arte

Con la locuzione stato dell'arte si intende il più alto livello di sviluppo finora raggiunto,

di una tecnologia o di un campo scientifico, sinonimo de "all' avanguardia",

"dell'ultima generazione".

Il primo uso della locuzione "stato dell'arte" risale al 1910. Fu infatti l'autore H. H. Suplee,

nel suo manuale di ingegneria intitolato Turbine a gas, a scrivere: Ad oggi stato

dell'arte è tutto ciò che è possibile fare. (Wikipedia.it)

Lo stato dell’arte della tecnologia non è rappresentato soltanto dal livello della tecnologia e dalla

sua capacità di produrre risultati affidabili e/o accurati, ma anche dalla sua penetrazione

nel mercato sotto forma di applicazione (grazie a killer applications) e alla percezione

della tecnologia stessa da parte dell’utente.

Es: touch screen, background culturale su riconoscimento vocale e applicazioni di mobile

payments

Fabrizio Gramuglio @ Smau 2009-10-21

Page 6: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Multimodalità

Fornire all’utente la possibilità di selezionare la modalità di interazione che preferisce

e

Mettere in grado lo sviluppatore di fornire una end-user experience efficiente per

qualsiasi scelta faccia l’utente

Fabrizio Gramuglio @ Smau 2009-10-21

Page 7: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Multimodalità

Visuale:

Persistente

Effetti visuali (animazioni, immagini, grafici).

Elevato numero di informazioni visualizzabili.

Limitata su dispositivi con display ridotto o assente.

Limitata in ambienti con scarsa visibilità.

Richiede impegno dell’apparato visivo.

Vocale:

Transiente.

Effetti audio (prosodia, enfasi).

Adatta a ogni tipo di dispositivo.

Limitato numero di informazioni.

contemporaneamente presentabili.

Fabrizio Gramuglio @ Smau 2009-10-21

Page 8: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Multimodalità: le interfacce

Fabrizio Gramuglio @ Smau 2009-10-21

• Tastiera:

• Permette inserimento di dati, può essere ridotta su alcuni dispositivi (tastiera

numerica).

• Assente o difficile da usare su dispositivi di piccole dimensioni.

• Richiede attenzione e l’uso di almeno una mano.

• Penna:

• Permette l’inserimento di dati in dispositivi di piccole dimensioni.

• Richiede attenzione e l’uso di entrambi le mani.

• Sensori:

• Richiede la presenza di sensori sul dispositivo.

Page 9: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Multimodalità: le interfacce

Fabrizio Gramuglio @ Smau 2009-10-21

• Voce, tastiera o penna per gli input

• Speech Recognition and recording

• Tasti e mouse

• Handwriting recognition and trace capture

• Output Sonori, tattili o visuali

• Display convenzionali (GUI)

• TTS e audio (VUI)

• Haptic interfaces (TUI)

• Testo come comun-denominatore e base per l’accessibilità

Page 10: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Multimodalità: le interfacce

Fabrizio Gramuglio @ Smau 2009-10-21

Adattarsi dinamicamente al contenuto

• Preferenze personali

• Rumore d’ambiente

• Privacy

• Consumo Batterie

• Segnale scarso

• Località geografica (GPS)

Page 11: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Multimodalità: user interface

Fabrizio Gramuglio @ Smau 2009-10-21

• La user interface deve essere strutturata e separata in piccole sequenze di

azioni

• Dialogo: tra l’utente e applicazione espresso attraverso linguaggi di

Markup, e client e server/side script

• Passare dall’una all’altra a seconda della disponibilità della rete.

• combinare VUI, GUI e TUI

• supportare “User initiative” per la modifica della modalità

• tradurre gli input in FORM

Page 12: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

LINGUAGGI

Autore: Fabrizio GramuglioEmail: [email protected]: http://www.dotvocal.com

Sponsor:

Page 13: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: SALT

Fabrizio Gramuglio @ Smau 2009-10-21

La prima versione di questo linguaggio, ovvero la 1.0, venne pubblicata nel

Luglio 2003 sul sito del SALT Forum (http://www.saltforum.org). Il progetto

è seguito, ad oggi, da circa sei aziende fondatrici

(Cisco, Converse, Intel, Microsoft, Philips e SpeechWorks) e da circa settanta

diverse aziende che lavorano al suo miglioramento.

Microsoft ha dichiarato che la versione 2010 del suo OCS (Speech Server) non

supporterà SALT (e neppure CCXML).

Cisco NON supporta CCXML

Page 14: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: SALT

Fabrizio Gramuglio @ Smau 2009-10-21

Linguaggio royalty-free.

Integrabile con le tecnologie Web standard: HTML, XHTML, cHTML, WML …

Riutilizzo degli standard: Voce: SRGS, SSML, EMMA, CCXML, ECMA: CSTA.

Può funzionare in modo sia dichiarativo sia basato su eventi e script.

Modello di esecuzione standard del Web: DOM, eventi e linguaggi di scripting.

Page 15: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: SALT

Fabrizio Gramuglio @ Smau 2009-10-21

<?xml version="1.0"?>

<html xmlns:salt="urn:saltforum.org/salt">

<body>

<form action="form_action.asp" method="get">

<h1> Travel data </h1>

Departure city: <input id="txtDepCity" type="text" name="fname" onFocus="recoCity.Start()"/>

<salt:listen id="recoCity" reject="0.25" onNoReco="onNoRecoScript()">

<salt:grammar src="cities.grxml"/>

<salt:bind targetElement="txtDepCity" value="//smlCity"/>

</salt:listen>

</form>

<script>

function onNoRecoScript() { ... }

</script>

</body>

</html>

Page 16: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: X+V

Fabrizio Gramuglio @ Smau 2009-10-21

X+V fa la sua prima comparsa, a livello di specifica, nell’ottobre 2001, mentre la

versione 1.1 risale a Gennaio 2003

(http://www3.ibm.com/software/pervasive/multimodal/x+v/11/spec.htm)

Il progetto è nato grazie a IBM, Opera e Motorola, e l’apporto di altre sei aziende

(Cisco, Converse,Intel, Microsoft, Philips e SpeechWorks).

Page 17: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: X+V

Fabrizio Gramuglio @ Smau 2009-10-21

Basato su HTML.

Integrabile con le tecnologie Web standard: HTML, XHTML, cHTML, WML ed

estendibile ad altri linguaggi.

Riutilizzo degli standard: Voce: VoiceXML, SRGS, SSML, EMMA..

L’integrazione con il VoiceXML è maggiore rispetto al SALT e permette utilizzo

di tutte le tipologie di dialogo.

La sincronizzazione avviene utilizzando XML Events e l’elemento xv:sync in X+V

1.1.

Page 18: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: X+V

Fabrizio Gramuglio @ Smau 2009-10-21

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<form id="formId" xmlns="www.w3.org/2001/vxml">

<field name="fromField">

<grammar src=“cities.grxml"/>

<filled>

<assign name="document.main.fromCity.value“ expr="fromField"/>

</filled>

</field>

</form>

</head>

<body>

<form name="main">

<input name="fromCity" type="text" ev:event="focus“ ev:handler="#formId"/>

</form>

Page 19: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: W3C MM

Fabrizio Gramuglio @ Smau 2009-10-21

Architettura W3C MMI

XHTML + scripting

XHTML + state transition networks

Plan and rule based approaches

Promise of XHTML + SVG

SCXML per transitional states

INKml per INK e Touch

VXML per le interfacce vocali

EMMA come scripting per automazioni (EMMA = ECMA multimodale)

Page 20: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: W3C MM

Fabrizio Gramuglio @ Smau 2009-10-21

Page 21: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: W3C MM

Fabrizio Gramuglio @ Smau 2009-10-21

Page 22: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: W3C MM

Fabrizio Gramuglio @ Smau 2009-10-21

Page 23: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: W3C MM

Fabrizio Gramuglio @ Smau 2009-10-21

Page 24: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: W3C MM

Fabrizio Gramuglio @ Smau 2009-10-21

E’ un formato XML che gestisce lo scambio di dati tra l’applicazione e il

manager d’interazione

Permette all’applicazione di annotare specifici formati di dati tra cui confidence

level, time stamps, mode of input, alternative recognition

Può essere generato attraverso la combinazione di:

• SRGS

• SI

Page 25: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: EMMA

Fabrizio Gramuglio @ Smau 2009-10-21

Touch + penna

Voce + touch/penna

Page 26: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: EMMA

Fabrizio Gramuglio @ Smau 2009-10-21

• L’utente segnala una zona della mappa e dice “zoom here”

• (file 1): gestione client per Touch e Speech

• Interpretazione dell’azione (sul client)

• (file 2): due diverse interpretazioni per la stessa azione

• Combinazione delle azioni ed interpretazione sul server (interaction

manager)

• file 3

Page 27: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: EMMA

Fabrizio Gramuglio @ Smau 2009-10-21

• State Chart XML

• EMMA

• DFP (Data-Flow-Presentation) Framework

• Distribuited Multimodal Syncronization Protocol

Page 28: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: DMSP

Fabrizio Gramuglio @ Smau 2009-10-21

• Distribuited Multimodal Syncronization Protocol

• Media Server Control Protocol (MSCP)

• LRDP: The Lightweight Remote Display Protocol (Remote UI BoF)

• Media Resource Control Protocol Version 2 (MRCPv2)

Page 29: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: DMSP

Fabrizio Gramuglio @ Smau 2009-10-21

• Distribuited Multimodal Syncronization Protocol

• Media Server Control Protocol (MSCP)

• LRDP: The Lightweight Remote Display Protocol (Remote UI BoF)

• Media Resource Control Protocol Version 2 (MRCPv2)

• 4 modalità (Distributed Modalities):

• Model-View-Controller (MVC)

• Design pattern

• View independent model

• Event-based modality synchronization

Page 30: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: Model View Control

Fabrizio Gramuglio @ Smau 2009-10-21

• Modalities are Views in the

MVC pattern

• GUI, Speech, Pen

• Individual browsers for

each modality

• Compound browsers for

multiple modalities

Page 31: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: MVC Design Pattern

Fabrizio Gramuglio @ Smau 2009-10-21

Multimodal system can be modeled in

terms of the MVC pattern

Each modality can be decomposed

and implemented in its own

MVC pattern

A modality can implement a view

independent model and

controller locally or use one in

the network (e.g., an IM)

Page 32: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: Indipendent design

Fabrizio Gramuglio @ Smau 2009-10-21

Enables a centralized model

Modality interaction updates view and model

Local event filters reflect "important" events to view

independent model

A modality listens to view independent model for only the

events it cares about

Compound clients, centralized control (IM) as well as

distributed modalities all enabled with a single protocol

Page 33: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Linguaggi: Sincronizzazione eventi

Fabrizio Gramuglio @ Smau 2009-10-21

Compound Client: All modalities rendered in client

Interactions in one modality reflected in others through

event-based changes to one or more model

GUI DOM serves as view independent model

Page 34: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Overview

Fabrizio Gramuglio @ Smau 2009-10-21

Runtime Framework è il nostro “browser”.

• carica ed inizializza il documento

• inizializza il component software

• se il Component è remoto, apre la connessione

• gestisce i differenti namespaces

• esegue i loop base applicativi e setta gli stati del client su SCXML

• gestisce comandi asincroni e sincroni da e per le API multimodali

Page 36: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Demo

Fabrizio Gramuglio @ Smau 2009-10-21

Semplice interazione vocale su mobile

• GUI

• VUI

• Gestione grammatiche: lunga lista di token / multi campo

• In questo esempio la GUI viene utilizzata come trigger per il PTT e per mostrare i

risultati all’utente.

• I motori di riconoscimento e sintesi possono essere ospitati su un server o sul client

(compact model 1,64 Mb)

Page 37: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Demo

Fabrizio Gramuglio @ Smau 2009-10-21

Page 38: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Q & A:

Grazie per essere intervenuti.

Fabrizio Gramuglio

[email protected]

Fabrizio Gramuglio @ Smau 2009-10-21

Page 39: Interazione multimodale su Mobile: interazione vocale, touch e grafica su diverse piattaforme mobile

Termini e Licenza del documento

Quest'opera è stata rilasciata sotto la licenza Creative Commons Attribuzione-Noncommerciale-Non opere derivate 3.0 Unported. Per leggere una copia della licenzavisita il sito web http://creativecommons.org/licenses/by-nc-nd/3.0/ o spedisci una letteraa Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105,USA.

Diritti, marchi registrati e siti web riportati in immagini e url sono riservati e proprietà dei

diretti interessati e relative aziende.

IWA/HWG e l’associazione IWA Italy non sono direttamente o indirettamente

responsabili dei contenuti riportati nel presente documento che sono ad esclusiva cura e

responsabilità del relatore.

Fabrizio Gramuglio @ Smau 2009-10-21