interaction designprofs.sci.univr.it/~castella/scambio/mastercgd-2014/id_lesson3.pdf · scena ed...

52
Interaction Design Master in Computer Game Dev* *Questa presentazione contiene diversi contributi forniti da studenti del master degli scorsi anni come: Alba, Bertolino, Ventilii, Pizzolato.

Upload: others

Post on 29-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Interaction Design

Master in Computer Game Dev* *Questa presentazione contiene diversi contributi forniti da studenti del master degli scorsi anni come: Alba, Bertolino, Ventilii, Pizzolato.

Page 2: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Strumenti tecnologici

• Per costruire sistemi in grado di mettere in pratica l’idea del ‘pervasive’-media occorrono strumenti tecnologici hardware-software adeguati

• Strumenti tecnologici:

– Dispositivi HW

– SW che implementano tecniche di CV e PR

– Infrastrutture HW e SW

– Protocolli di comunicazione e networking

Page 3: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Strumenti tecnologici

• Giusto per citerne alcuni.....

wifi, www, socialnetwork, QR code, RFID, GPS, GoogleMap,

StreatView, dispositivi testuali e sistemi di riconoscimento del testo,

strumenti touch screen, tabletPC, data glove, eyegaze, dispositivi

olografici, HMD, optical see thorough, video-based, CAVE, work

banch, TOF cameras, stereo cameras, ....

Page 4: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Wifi

• Il termine Wi-Fi indica il protocollo e i relativi dispositivi che consentono a terminali di utenza di collegarsi tra loro attraverso una rete locale in maniera wireless (WLAN) basandosi sulle specifiche dello standard IEEE 802.11.

• A sua volta la rete locale così ottenuta può essere interallacciata alla rete Internet tramite un router ed usufruire di tutti i servizi di connettività relativi.

Page 5: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

GPS

• Il Sistema di Posizionamento Globale è un sistema di posizionamento e navigazione che, attraverso una rete dedicata di satelliti artificiali in orbita, fornisce ad un ricevente le informazioni sulle sue coordinate geografiche ovunque sulla Terra

• E’ gestito dagli USA, ci sono in programma anche per altri paesi (EU, Cina, Russia, India)

Page 6: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

GPS

• Vengono interrogati almeno quattro satelliti del sistema, tramite la trasmissione di un segnale radio da parte di ciascun satellite . La posizione viene stimata dall'elaborazione dei segnali ricevuti da parte del ricevitore (i.e., triangolazione)

• Si raggiunge una precisione nell’ordine del metro (da 1 a 10 m, dipende da vari fattori)

Page 7: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Location-based service

• Grazie alla disponibilità dei dispositivi GPS è possibile organizzare servizi basati sulla stima della locazione geografica dell’utente

• Es. – Suggerire un evento in un certo luogo

– Richiedere il servizio più vicino (es. Bust stop)

– Localizzare persone presenti nei paraggi

– Ricevere informazioni su deviazioni del traffico

– Svilluppare sistemi di proximity marketing

Page 8: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Google Map

• Google Maps (nome precedente Google Local) è un servizio accessibile dal relativo sito web che consente la ricerca e la visualizzazione di mappe geografiche di buona parte della Terra

https://maps.google.it/

Page 9: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Google map

• E’ possibile anche ricercare servizi in particolari luoghi, tra cui ristoranti, monumenti, negozi, trovare un possibile percorso stradale tra due punti e visualizzare foto satellitari di molte zone con diversi gradi di dettaglio

• E’ interessante da abbinare al GPS

Page 10: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Google Street View

• Google Street View è una caratteristica di Google Maps e Google Earth che fornisce viste panoramiche a 360° gradi in orizzontale e a 290º in verticale lungo le strade (a distanza di 10-20 metri l'una dall'altra) e permette agli utenti di vedere parti di varie città del mondo a livello del terreno.

Page 11: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Codice QR

• Un Codice QR è un codice a barre bidimensionale composto da moduli neri disposti all'interno di uno schema di forma quadrata. Viene impiegato per memorizzare informazioni generalmente destinate ad essere lette tramite un smartphone.

• In un solo crittogramma sono contenuti 7.089 caratteri numerici o 4.296 alfanumerici.

• Il nome QR è l'abbreviazione dell'inglese quick response

Page 12: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Codice QR

• In pratica il QR codifica un indirizzo web a cui accedere

• In senso metaforico rappresenta una porta d’ingresso al Cyberspace

Page 13: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

RFID

• Il termine Rfid significa identificazione a radiofrequenza (i.e, Radio Frequency Identification), si riferisce a un insieme di sistemi che permettono di identificare gli oggetti in modo automatico

• L’identificazione avviene usando un’antenna per leggere un chip digitale (chiamato tag, o transponder) che è stato applicato sull’oggetto

Page 14: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Optical Character Recognition (OCR)

• Strumento che consente di trasformare una bitmap in testo

• Fonts differenti possono creare problemi per algoritmi semplici basati sul template matching

• Esistono sistemi più complessi:

– segmentazione del testo

– scomposizione in linee e archi

– decifrazione dei caratteri

Page 15: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

OCR

• Si possono riconoscere anche i caratteri scritti a mano

• Il testo scritto a mano può essere inserito nel computer, utilizzando una penna e una digitising tablet

• acquisizione in modo naturale di tutte le informazioni utili: percorso dello stroke , pressione etc.

• segmentazione ed interpretazione dello scritto in singole lettere;

• trattare con diversi stili di scrittura

Page 16: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Riconoscimento del parlato

• Sistema promettente sia come riconoscimento di comandi vocali che come “speech-to-text”

• funziona meglio in particolari situazioni utente unico, vocabolario ristretto

• Problemi:

– interferenza del rumore esterno

– imprecisioni nella pronuncia

– accenti

Page 17: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Software per sintesi e riconoscimento del parlato

Page 18: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Binary Domain

• riesce a trasformare la voce del videogiocatore in comandi da impartire ai propri compagni di squadra

• utilizza le librerie SpeechFX • All’interno del gioco è possibile

anche rispondere alle domande dei propri compagni di squadra con brevi parole quali, «si», «no», «certo», «assolutamente», …

Page 19: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Binary Domain

http://www.speechfxinc.com/ - Sito di SpeechFX

Page 20: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Dispositivi touch-screen

• dispositivo di puntamento a manipolazione diretta : rileva la presenza di dita sullo schermo

• veloce non richiede un puntatore specifico

• adatto all’uso in ambienti ostili (sporchi…)

• le dita sono uno strumento di puntamento impreciso

• tenere il braccio sollevato può risultare faticoso

Page 21: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Es: microsoft surface 2.0

http://www.microsoft.com/surface/en/us/default.aspx

Page 22: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Es: I-Pad

Page 23: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Dataglove

• rileva angoli e posizione 3-D della mano

• Può trasmettere il force-feedback

• facile da usare , potenzialmente potente e espressiva

• Invasivo nell’uso, costoso

• Potenziali utilizzi: gesture recognition, sistemi immersivi, training

Page 24: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Eyegaze

• rileva movimenti dell’occhio per controllare il cursore e per monitorare l’interazione: veloce, accurato

Page 25: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

BCI device

• I dispositivi Brain Computer Interface permettono di guidare l’interazione attraverso segnali cerebrali

• Es. Mindwave

Page 26: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

BCI device

MindWave - http://www.neurosky.com/

Page 27: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Dispositivi di uscita alternativi

• Visivi:

– rappresentazioni analogiche: quadranti (dial ), indicatori di misura (gauge ), luci etc.

– head-up display : negli abitacoli degli aerei

Page 28: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Dispositivi olografici

CRS4 Visual Computing, http://www.crs4.it/vic/

Page 29: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Head Mounted Display

• Piccoli display montati sulla testa, completamente immersivi, hanno bisogno di un tracker per tracciare la posizione e l’orientazione della testa.

Page 30: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Optical see through

• Combinatori ottici parzialmente trasparenti sono posti di fronte agli occhi, permettono di vedere in essi il riflesso di immagini virtuali rappresentate su

piccoli display

Page 31: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Video based

• Fa uso di piccole video-camere per catturare la visione del mondo reale che sarebbe vista dagli occhi. Le immagini reali sono combinate con quelle virtuali, create dal computer, per creare immaginidi AR che vengono visualizzate su un classico HMD (non see-through)

Page 32: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

HMD per Ps3

• http://www.sony.it/product/personal-3d-viewer/hmz-t2#tab –

• Sito Sony HMZ-T2

Interaction Design 34

Page 33: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Oculus

• http://www.oculusvr.com/

Page 34: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Cave Automatic Virtual Environment

• Sistemi basati sulla proizione: proiezione diretta o con retro-proizione, l’utente è completamente circondato da immagini proiettate su grandi schermi. Crea un senso di elevata immersione

Page 35: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

CAVE

http://www.youtube.com/watch?v=-Sf6bJjwSCE

Page 36: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

CAVE applicazioni

• evaluation of engineering designs (virtual prototyping)

• driving simulators

• training for dangerous situations and other scenarios

• molecular modeling

• virtual reconstruction of archeological sites

• medical and biological visualization

• artistic expression of ideas, and more

Page 37: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

CAVE applicazioni

Page 38: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Ultimate Battlefield 3 Simulator

http://www.youtube.com/watch?v=LPXICaVdutc

Page 39: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Workbanch

• Banchi di lavoro: schermi piatti che presentano immagini in modalita’ stereo. Possono essere montati anche in orizzontale. Immersione parziale, alto senso di presenza dell’oggetto

Page 40: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Sensori Range

• I sensori range sono in grado di catturare la profondità delle immagini

– Producono depth map o range image (chiaro=vicino)

Page 41: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Depth from stereo

• Data una coppia di immagini di una stessa scena da due punti di vista leggermente differenti (destro e sinistro) si ricava la mappa di disparità che è in relazione con la profondità della scena

Left Right Disparità

Page 42: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Depth from stereo

• Catturando un flusso video per canale è possibile effettuare l'elaborazione stereo in real-time

VIDERE http://www.videredesign.com

Page 43: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Time of flight camera

• Le TOF camera catturano le informazioni tridimensionali lanciando un array di segnali sulla scena ed applicando il principio del tempo di volo per calcolare la profondità

Page 44: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Kinect

• Proposto per videogiochi, ora è uno strumento generico per gestire l’interazione:

– Interazione gesturale

• Full body

• Mano

– Interazione vocale

– Interazione facciale

Page 45: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Social Media

• Social media è un termine generico che indica tecnologie e pratiche online che le persone adottano per condividere contenuti testuali, immagini, video e audio

• I social media rappresentano fondamentalmente un cambiamento nel modo in cui la gente apprende, legge e condivide informazioni e contenuti

• Trasforma le persone comuni da fruitori di contenuti ad editori

Page 46: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Social Media

Page 47: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Take home message

• Ora si hanno a disposizione svariati strumenti tecnologici da cui si può attingere per progettare sistemi di comunicazione multimediale o ‘pervasive-mediale

• Questi strumenti sono progettati anche per essere integrati tra di loro (es. Google map + GPS, o HDM + dataglove)

Page 48: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Rispetto alla progettazione...

• I progettisti di interfacce assumono di avere a disposizione processori a velocità infinita, creando interfacce sempre più complicate;

• Se il processore è troppo lento il sistema non riesce a rispondere a tutti gli input in tempo:

• overshooting : il sistema ha memorizzato in un buffer le battiture;

Page 49: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Rispetto alla progettazione...

• icon wars : l’utente clicca su una finestra e non succede niente, allora clicca su un’altra, e quando il sistema risponde le finestre si attivano ovunque

• Se il processore è troppo veloce:

• documenti e schermate di help che scorrono troppo veloci per riuscire a leggere

Page 50: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Limiti da considerare

• Limiti computazionali (computation bound ):

• il tempo perso in attesa di una computazione causa frustrazione all’utente

• Limiti del canale di memorizzazione (storage channel bound ):

• il trasferimento di dati dal disco rigido alla memoria può provocare un collo di bottiglia

Page 51: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Limiti da considerare

• Limiti della Grafica (graphics bound ):

• il refresh del display può richiedere molto tempo

• Limiti della rete (network capacity ):

• l’utilizzo di risorse di rete provoca una riduzione della performance dell’interfaccia se la rete risulta essere troppo lenta

Page 52: Interaction Designprofs.sci.univr.it/~castella/scambio/MasterCGD-2014/ID_Lesson3.pdf · scena ed applicando il principio del tempo di volo per calcolare la profondità . Kinect •Proposto

Considerazione conclusive

• L' interfaccia (ie., l’architettura) deve :

– evitare il disorientamento dell'utente;

– permettere il controllo del processo;

– garantire qualità e comunicabilità dei risultati;

– garantire l'evoluzione del sistema;

– permettere la gestione integrata di tutte le attività che richiedono l'utilizzo di un documento;

– adattare l'interfaccia alla crescente abilità dell'utente.