Interazione basata sullo sguardo fisso su HoloLens 2

Eye tracking demo in MRTK

Una delle nostre interessanti nuove funzionalità su HoloLens 2 è il tracciamento oculare. Nella pagina Tracciamento oculare in HoloLens 2 è stata menzionata la necessità per ogni utente di eseguire una calibrazione, sono state fornite alcune indicazioni per gli sviluppatori e i casi d'uso evidenziati per il tracciamento oculare. L'input sguardo fisso è ancora un nuovo tipo di input dell'utente e c'è molto da imparare.

Anche se l'input dello sguardo fisso viene usato solo in modo secondario nell'esperienza Holographic Shell (l'interfaccia utente visualizzata quando si avvia il HoloLens 2), diverse app, ad esempio "HoloLens Playground", mostrano ottimi esempi su come l'input sguardo fisso può aggiungere alla magia dell'esperienza olografica. In questa pagina vengono illustrate le considerazioni di progettazione per l'integrazione dell'input sguardo fisso per interagire con le applicazioni olografiche.

Verranno illustrati i vantaggi principali e anche le sfide uniche che si presentano con l'input sguardo fisso. In base a questi, vengono forniti diversi consigli di progettazione che consentono di creare interfacce utente supportate per lo sguardo fisso.

Supporto di dispositivi

Funzionalità HoloLens (prima generazione) HoloLens 2 Visori VR immersive
Sguardo fisso ✔️

Demo dei concetti relativi alla progettazione del tracciamento oculare e della testa

Per vedere i concetti di progettazione head e tracciamento oculare in azione, vedere la demo video Progettazione Ologrammi - Tracciamento testa e tracciamento oculare di seguito. Al termine, continuare per un approfondimento più dettagliato su argomenti specifici.

Questo video è stato tratto dall'app HoloLens 2 "Progettazione Ologrammi". Scarica e goditi l'esperienza completa qui.

Linee guida per la progettazione dell'input sguardo fisso

La creazione di un'interazione che sfrutta la selezione rapida degli occhi può essere complessa. In questa sezione vengono riepilogati i vantaggi e le sfide principali da considerare durante la progettazione dell'applicazione.

Vantaggi dell'input sguardo fisso

  • Puntamento ad alta velocità. Il muscolo oculare è il muscolo più veloce che reagisce nel corpo umano.

  • Sforzo limitato. Non sono quasi necessari movimenti fisici.

  • Natura implicita. Spesso descritto dagli utenti come "lettura mentale", le informazioni sui movimenti oculari di un utente consentono al sistema di sapere quale destinazione l'utente prevede di interagire.

  • Canale di input alternativo. Lo sguardo fisso può fornire un potente input di supporto per l'input manuale e vocale basato su anni di esperienza degli utenti in base al coordinamento con gli occhi della mano.

  • Attenzione visiva. Un altro vantaggio importante è la possibilità di dedurre ciò che un utente sta prestando attenzione. Ciò può essere utile in varie aree dell'applicazione che vanno dalla valutazione più efficace di diverse progettazioni per facilitare interfacce utente più intelligenti e segnali sociali avanzati per la comunicazione remota.

In breve, l'uso dello sguardo fisso come input offre un segnale di input contestuale veloce e semplice. Questo è potente se combinato con altri input, ad esempio la voce e l'input manuale , per confermare la finalità dell'utente.

Sfide dello sguardo fisso come input

Anche se lo sguardo fisso può essere usato per creare esperienze utente soddisfacenti, che ti fanno sentire come un supereroe, è anche importante sapere cosa non è buono per tenere conto in modo appropriato di questo. L'elenco seguente illustra alcune problematiche da considerare e come risolverle quando si usa l'input sguardo fisso:

  • Lo sguardo fisso è "sempre acceso" Il momento in cui apri i coperchi degli occhi, i tuoi occhi iniziano a fissare sulle cose nell'ambiente. Reagire a ogni aspetto che si emettono accidentalmente azioni, perché si è guardato qualcosa per troppo tempo, potrebbe comportare un'esperienza insoddisfacente. È consigliabile combinare lo sguardo fisso con un comando vocale, un gesto della mano, un clic del pulsante o un'attesa estesa per attivare la selezione di una destinazione (per altre informazioni, vedere sguardo fisso e commit). Questa soluzione consente anche una modalità in cui l'utente può guardare liberamente senza essere sovraccaricato involontariamente attivando qualcosa. Questo problema deve essere considerato anche quando si progetta un feedback visivo e uditivo quando si esamina una destinazione. Prova a non sovraccaricare l'utente con effetti pop-out immediati o suoni al passaggio del mouse. La sottigliezza è fondamentale. Verranno illustrate alcune procedure consigliate per questo argomento più avanti quando si parla di raccomandazioni sulla progettazione.

  • Osservazione e controllo Imagine che vuoi raddrizzare con precisione una fotografia sul tuo muro. Guardi pertanto i bordi e l'area circostante per verificare che l'immagine sia allineata correttamente. Si supponga ora come eseguire questa operazione quando si vuole usare lo sguardo fisso come input per spostare l'immagine. L'esecuzione diventa veramente difficoltosa. Questo descrive il doppio ruolo dello sguardo fisso quando è necessario sia per l'input che per il controllo.

  • Lasciare prima di fare clic: Per le selezioni rapide di destinazione, la ricerca ha dimostrato che lo sguardo fisso di un utente può andare avanti prima di concludere un clic manuale (ad esempio, un tocco d'aria). Prestare particolare attenzione alla sincronizzazione del segnale sguardo fisso veloce con input di controllo più lento (ad esempio, voce, mani, controller).

  • Destinazioni piccole: Sai la sensazione quando provi a leggere testo che è un po ' troppo piccolo per leggere comodamente? Questa sensazione di tensione sui tuoi occhi può causare la stanchezza e l'usura, perché cerchi di adattare gli occhi per mettere a fuoco meglio. Si tratta di una sensazione che è possibile richiamare negli utenti quando li forzano a selezionare destinazioni troppo piccole nell'applicazione usando la destinazione oculare. Durante la progettazione, per creare un'esperienza piacevole e confortevole per gli utenti, è consigliabile definire destinazioni con un angolo visivo di almeno 2 gradi.

  • Movimenti di sguardo fisso rabbia I nostri occhi eseguono rapidi movimenti dalla correzione alla correzione. Se guardi i percorsi di analisi dei movimenti oculari registrati, noterai che risultano irregolari. I tuoi occhi si muovono rapidamente e in salti spontanei rispetto ai movimenti della testa o della mano.

  • Verifica dell'affidabilità: L'accuratezza del tracciamento oculare può degradare un po' nel cambiare la luce man mano che gli occhi si adattano alle nuove condizioni. Anche se questo non deve necessariamente influire sulla progettazione dell'applicazione, poiché l'accuratezza deve rientrare nella limitazione di 2°, potrebbe essere necessario che l'utente calibra nuovamente.

Suggerimenti per la progettazione

Di seguito è riportato un elenco di raccomandazioni di progettazione specifiche in base ai vantaggi e alle sfide descritte per l'input sguardo fisso:

  1. Lo sguardo fisso non equivale allo sguardo fisso:

    • Valutare se i movimenti oculari sfughe e veloci si adattano all'attività di input: Anche se i movimenti oculari veloci e stracciati sono ideali per la selezione rapida di destinazioni nel nostro campo di visualizzazione, è meno applicabile per le attività che richiedono traiettorie di input uniformi (ad esempio, disegno o spostamento di annotazioni). In questo caso, è preferibile usare il puntamento con la mano o con la testa.

    • Evitare di associare qualcosa direttamente allo sguardo fisso dell'utente ,ad esempio un dispositivo di scorrimento o un cursore. Con i cursori, questo può comportare un effetto "cursore in fuga" a causa di lievi offset nel segnale dello sguardo fisso proiettato. Con un dispositivo di scorrimento, può entrare in conflitto con il doppio ruolo di controllare il dispositivo di scorrimento con gli occhi, mentre vuole controllare se l'oggetto si trova nella posizione corretta. Per l'esempio del dispositivo di scorrimento, è più opportuno usare lo sguardo fisso in combinazione con i movimenti della mano. Ciò significa che l'utente potrebbe passare rapidamente e senza sforzo tra molti dispositivi di scorrimento, alzando la mano e avvicinando il pollice e il dito indice per afferrarlo e spostarlo. Quando l'avvicinamento delle dita viene rilasciato, il dispositivo di scorrimento smette di muoversi. Gli utenti potrebbero diventare sopraffatto e distratti, soprattutto se il segnale è impreciso per quell'utente.

  2. Combinare lo sguardo fisso con altri input: L'integrazione del tracciamento oculare con altri input, ad esempio movimenti della mano, comandi vocali o pressione dei pulsanti, offre diversi vantaggi:

    • Consenti osservazione gratuita: Dato che il ruolo principale dei nostri occhi è osservare l'ambiente, è importante che gli utenti siano autorizzati a guardare intorno senza attivare alcun feedback o azioni (visivo, uditivo e così via). La combinazione del tracciamento oculare con un altro controllo di input consente una transizione uniforme tra l'osservazione del tracciamento oculare e le modalità di controllo di input.

    • Provider di contesto avanzato: L'uso di informazioni su dove e su cosa sta guardando l'utente durante la pronuncia di un comando vocale o l'uso di un movimento della mano consente di incanalare facilmente l'input attraverso il campo di visualizzazione. Ad esempio: pronunciare "put that there" per selezionare e posizionare in modo rapido e fluente un ologramma nella scena esaminando una destinazione e la destinazione desiderata.

    • Necessità di sincronizzare gliinputi: Combinando rapidi movimenti oculari con input più complessi, ad esempio comandi vocali lunghi o movimenti delle mani, comporta il rischio che l'utente continui già a guardare intorno prima che il comando di input aggiuntivo venga completato e riconosciuto. Se si creano controlli di input personalizzati (ad esempio, movimenti della mano personalizzati), assicurarsi di registrare l'inizio di questo input o la durata approssimativa per correlarla con ciò che un utente aveva esaminato in passato.

  3. Feedback sottile per l'input di tracciamento oculare: È utile fornire feedback quando viene esaminata una destinazione per indicare che il sistema funziona come previsto, ma deve essere mantenuto sottile. Ciò può includere la fusione lenta in e fuori, le evidenziazioni visive o l'operazione di altri comportamenti di destinazione sottili, ad esempio movimenti lenti, ad esempio un leggero aumento delle dimensioni della destinazione. Ciò indica che il sistema ha rilevato correttamente che l'utente sta esaminando una destinazione senza interrompere inutilmente il flusso di lavoro corrente dell'utente.

  4. Evitare di applicare movimenti oculari innaturali come input: Non forzare gli utenti a usare movimenti oculari specifici (movimenti dello sguardo fisso) per attivare azioni nell'applicazione.

  5. Tenere conto delle inesattezze: Distinguiamo due tipi di imprecisioni, che sono evidenti agli utenti: offset e jitter. Il modo più semplice per risolvere un offset consiste nel fornire destinazioni sufficientemente grandi con cui interagire. È consigliabile usare un angolo visivo maggiore di 2° come riferimento. Ad esempio, la miniatura è di circa 2° nell'angolo visivo quando si estende il braccio. Segui pertanto le indicazioni seguenti:

    • Non forzare gli utenti a selezionare destinazioni minuscole. La ricerca ha dimostrato che se gli obiettivi sono sufficientemente grandi e il sistema sono progettati bene, gli utenti descrivono le loro interazioni come senza sforzo e magico. Se le destinazioni diventano troppo piccole, gli utenti descrivono l'esperienza come stancante e frustrante.

Questa pagina fornisce una buona panoramica per iniziare a comprendere lo sguardo fisso come input nella realtà mista. Per iniziare a sviluppare, vedere le nostre informazioni sullo sguardo visivo in Unity e sguardo oculare in DirectX.

Vedere anche