Ögonspårning på HoloLens 2

Ögonspårningsdemo i MRTK

HoloLens 2 möjliggör en ny kontextnivå och mänsklig förståelse inom den holografiska upplevelsen genom att ge utvecklare möjlighet att använda information om vad användaren tittar på. Den här sidan förklarar hur utvecklare kan dra nytta av ögonspårning i olika användningsfall och vad de kan leta efter när de utformar ögonbaserade användarinteraktioner.

API:et för ögonspårning har utformats med en användares integritet i åtanke och undviker att skicka någon identifierbar information, särskilt biometrik. För ögonspårnings kompatibla program måste användaren ge appen behörighet att använda ögonspårningsinformation.

Stöd för enheter

Funktion HoloLens (första gen) HoloLens 2 Integrerande headset
Ögonögon ✔️

Designkoncept för huvud- och ögonspårning – demo

Om du vill se designbegreppen för huvud- och ögonspårning i praktiken kan du titta på videodemonstrationen Designing Hologram - Head Tracking and Eye Tracking nedan. När du är klar kan du fortsätta med en mer detaljerad beskrivning av specifika ämnen.

Den här videon har tagits från appen "Designa Hologram" HoloLens 2. Ladda ned och få en fullständig upplevelse här.

Kalibrering

För att ögonspårningen ska fungera korrekt måste varje användare gå igenom en ögonspårningsanvändare som användaren måste titta på en uppsättning holografiska mål för. Detta gör att enheten kan justera systemet för en mer bekväm och högkvalitativ visningsupplevelse för användaren och för att säkerställa korrekt ögonspårning på samma gång.

Ögonspårning bör fungera för de flesta användare, men det finns sällsynta fall där en användare inte kan kalibrera korrekt. Kalibreringen kan misslyckas av olika orsaker, inklusive men inte begränsat till:

  • Användaren avanmälde sig tidigare från kalibreringsprocessen
  • Användaren blev störande och följde inte kalibreringsmålen
  • Användaren har vissa typer av kontaktlinser och glasögon, som systemet ännu inte stöder
  • Användaren har vissa ögonsergon, ögontillstånd eller ögonoperationer, som systemet ännu inte har stöd för
  • Externa faktorer som hindrar tillförlitlig ögonspårning, till exempel utsmetning på HoloLens-visorn eller glasögon, intensiv direktbehåring och ocklusioner på grund avbehåring framför ögonen

Utvecklare bör se till att ge tillräckligt stöd för användare vars ögonspårningsdata kanske inte är tillgängliga (som inte kan kalibreras korrekt). Vi har angett rekommendationer för återställningslösningar i avsnittet längst ned på den här sidan.

Om du vill veta mer om kalibreringen och om hur du får en smidig upplevelse kan du titta på vår sida för kalibrering av ögonspårningsanvändare.


Tillgängliga ögonspårningsdata

Innan vi går in i detalj på specifika användningsfall för ögonigenkänning vill vi kortfattat peka på de funktioner som HoloLens 2-API:et för ögonspårning tillhandahåller. Utvecklare får åtkomst till en enda blick ray (blickens ursprung och riktning) vid cirka 30 BP (30 Hz). Mer detaljerad information om hur du kommer åt ögonspårningsdata finns i våra utvecklarguider för att använda ögonögon i DirectX och ögonögon i Unity.

Den förutsagda blicken är ungefär inom 1,5 grader i visuell vinkel runt det faktiska målet (se bilden nedan). Eftersom små fel förväntas bör utvecklarna planera för viss marginal kring det här lägre värdet (till exempel kan 2,0–3,0 grader resultera i en mycket bekvämare upplevelse). Vi diskuterar hur du kan hantera valet av små mål i detalj nedan. För att ögonspårningen ska fungera korrekt måste varje användare gå igenom en kalibrering av ögonspårningsanvändaren.

Optimal målstorlek vid 2 mätaravstånd
Optimal målstorlek vid ett avstånd på 2 mätare


Användningsfall

Med ögonspårning kan program spåra var användaren letar i realtid. I följande användningsfall beskrivs vissa interaktioner som är möjliga med ögonspårning HoloLens 2 i mixad verklighet. Dessa användningsfall är ännu inte en del av Holographic Shell-upplevelsen (det vill säga gränssnittet som du ser när du startar din HoloLens 2). Du kan prova några av dem i Mixed Reality Toolkit, som innehåller flera intressanta och kraftfulla exempel för att använda ögonspårning, till exempel snabba och enkla val av mål som stöds med ögonstöd och automatiskt bläddra igenom text baserat på vad användaren tittar på.

Användarens avsikt

Information om var och vad en användare tittar på ger en kraftfull kontext för andra indata, till exempel röst, händer och styrenheter. Detta kan användas för olika uppgifter. Detta kan till exempel vara allt från att snabbt och enkelt rikta in sig på scenen genom att titta på ett hologram och säga "select" (se även blick och genomför)eller "placera det här..." och sedan titta över var användaren vill placera hologrammet och säga "... there". Exempel på detta finns i Mixed Reality Toolkit - Eye-supported Target Selection och Mixed Reality Toolkit - Eye-supported Target Positioning.

Ett exempel på användarens avsikt kan dessutom vara att använda information om vad användarna tittar på för att förbättra engagemanget med indelade virtuella agenter och interaktiva hologram. Virtuella agenter kan till exempel anpassa tillgängliga alternativ och deras beteende baserat på innehåll som visas för närvarande.

Implicita åtgärder

Kategorin för implicita åtgärder är nära kopplad till användarens avsikt. Tanken är att hologram eller användargränssnittselement reagerar på ett språkigt sätt som kanske inte ens känns som om användaren interagerar med systemet alls, utan snarare att systemet och användaren är synkroniserade. Ett exempel är ögonbaserad automatisk rullning där användaren kan läsa en lång text, som automatiskt börjar rulla när användaren kommer längst ned i textrutan för att hålla användaren i läsflödet, utan att lyfta ett finger.
En viktig aspekt av detta är att rullningshastigheten anpassas efter användarens läshastighet. Ett annat exempel är zoom med ögonstöd och panorering där användaren kan känna sig som att gå exakt mot vad användaren fokuserar på. Utlösning och kontroll av zoomhastighet kan styras av röst- eller handinmatning, vilket är viktigt för att ge användaren en känsla av kontroll och undvika att bli överbelastad. Vi tar upp dessa designöverväganden i detalj nedan. När användaren har zoomat in kan han eller hon smidigt följa, till exempel en gatukurs för att utforska sin egen närområde med hjälp av blicken. Demoexempel för dessa typer av interaktioner finns i Mixed Reality Toolkit – Navigeringsexempel med ögonstöd.

Andra användningsfall för implicita åtgärder kan vara:

  • Smarta meddelanden: Har du någonsin bli uppretad av meddelanden som dyker upp precis där du letar? Med hänsyn till vad en användare är uppmärksam på kan du göra den här upplevelsen bättre genom att avväga meddelanden där användaren för närvarande tittar. Detta begränsar störande och stänger dem automatiskt när användaren har läst klart.
  • Belysna hologram: Hologram som reagerar underligt när de används. Detta kan variera från något glödande användargränssnittselement, en långsamt blommande blomma till en virtuell hund som börjar titta tillbaka på användaren och vifta med svansen. Den här interaktionen kan ge en intressant känsla av anslutning och nöjdhet i ditt program.

Spårning av uppmärksamhet

Information om var eller vad användarna tittar på kan vara ett mycket kraftfullt verktyg. Det kan hjälpa till att utvärdera användbarheten för design och identifiera problem i arbetsflöden för att göra dem mer effektiva. Visualisering och analys av ögonspårning är en vanlig metod inom olika programområden. Med HoloLens 2 tillhandahåller vi en ny dimension för den här förståelsen eftersom 3D-hologram kan placeras i verkliga kontexter och utvärderas i enlighet med detta. I Mixed Reality Toolkit finns grundläggande exempel på loggning och inläsning av ögonspårningsdata och hur du visualiserar dem. Microsoft arbetar för att underlätta innovationen samtidigt som användarna får en informerad och transparent upplevelse av hur deras ögonspårningsinformation används. Vi kommer att samarbeta med våra utvecklare och UX-team för att ge vägledning till tredje part för att säkerställa att upplevelserna är centrerade kring användaren.

Andra program i det här området kan vara:

  • Fjärrvisualisering med ögonstyrning: Fjärrvisualiseringar med ögonstyrning: Visualisera vad fjärranslutna medarbetare tittar på för att kunna ge omedelbar feedback och underlätta mer exakt informationsbearbetning.
  • Användarundersökningar: Spårning av uppmärksamhet kan hjälpa forskare att få mer insikter om hur användare uppfattar och interagerar med den naturliga miljön, utan att störa, för att utforma mer störande interaktioner mellan människor och datorer. Ögonspårning kan ge information som inte förklaras direkt av deltagarna i studien, som annars lätt kan missas av forskaren.
  • Träning och prestandaövervakning: Öva på och optimera körningen av uppgifter genom att identifiera flaskhalsar mer effektivt i körningsflödet. Ögonspårning kan ge naturlig, realtids- och objektiv information för att förbättra utbildning, produktivitet och säkerhet på arbetsplatsen.
  • Designutvärderingar, marknadsföring och konsumentforskning: Med ögonspårning kan kommersiella företag utföra marknadsförings- och konsumentstudier i verkliga miljöer eller analysera vad som fångar användarens uppmärksamhet för att förbättra produkt- eller rymddesignen.

Andra användningsfall

  • Spel: Har du någonsin vilja ha superkrafter? Här är din chans! Du kan hologram genom att titta på dem. Så här gör du med självljus från ögonen – prova i RoboRaid för HoloLens 2. Förvandla dig till sten eller frys dem. Använd din x-ray vision för att utforska byggnader. Din fantasi är gränsen! Se dock till att inte överväldiga användaren – om du vill veta mer kan du läsa våra riktlinjer för ögonbaserad indatadesign.

  • Expressiva avatarer: Ögonspårning hjälper till med mer uttrycksfulla 3D-avatarer genom att använda realtidsdata för ögonspårning för att animera avatarens ögon som visar vad användaren tittar på.

  • Textinmatning: Ögonspårning kan användas som ett alternativ för textinmatning med låg arbetsinsats, särskilt när tal eller händer är olämpliga att använda.


Använda blicken för interaktion

Det kan vara svårt att skapa en interaktion som drar nytta av en snabb ögonanpassning. Å ena sidan rör sig ögonen så snabbt att du måste vara försiktig med hur du använder blickindata, eftersom användarna annars kan uppleva upplevelsen som överväldigande eller störande. Å andra sidan kan du också skapa verkligt fantastiska upplevelser som kommer att göra dina användare till en riktig upplevelse! Som hjälp kan du ta en översikt över viktiga fördelar, utmaningar och designrekommendationer för interaktion med blicken.

Återställningslösningar när ögonspårning inte är tillgängligt

I sällsynta fall kanske ögonspårningsdata inte är tillgängliga. Detta kan vara på grund av olika orsaker som de vanligaste anges nedan:

  • Systemet kunde inte kalibrera användaren.
  • Användaren överhoppade kalibreringen.
  • Användaren kalibreras, men väljer att inte ge appen tillstånd att använda sina ögonspårningsdata.
  • Användaren har unika glasögon eller ett ögontillstånd som systemet ännu inte stöder.
  • Externa faktorer som påverkar tillförlitlig ögonspårning, till exempel smudges på HoloLens-visorn eller glasögon, intensiv direkthämtning och ocklusioner på grund avbehåring framför ögonen.

Utvecklare bör se till att det finns lämpligt reservstöd för dessa användare. På sidan Ögonspårning i DirectX förklarar vi de API:er som krävs för att identifiera om det finns tillgängliga ögonspårningsdata.

Vissa användare kan ha bestämt sig för att återkalla, åtkomst till sina ögonspårningsdata och är okej med avvägningen av en user användarupplevelse av sekretessen med att inte ge åtkomst till sina ögonspårningsdata, men i vissa fall kan detta vara oavsiktligt. Om din app använder ögonspårning, och detta är en viktig del av upplevelsen, rekommenderar vi att du tydligt kommunicerar detta till användaren.

Att informera användaren om varför ögonspårning är viktigt för ditt program (kanske till och med att lista vissa förbättrade funktioner) för att få ut så mycket som möjligt av ditt program, kan hjälpa användaren att bättre förstå vad de ger upp. Hjälp användaren att identifiera varför ögonspårning kanske inte fungerar (baserat på kontrollerna ovan) och ge några förslag för att snabbt felsöka potentiella problem.

Om du till exempel kan identifiera att systemet stöder ögonspårning, att användaren kalibreras och till och med har gett sitt tillstånd, men inga ögonspårningsdata tas emot, kan detta peka på andra problem, till exempel smetar eller ögon som är ockluderade.

Det finns sällsynta fall av användare vars ögonspårning kanske inte fungerar. Därför bör du respektera det genom att tillåta att stänga eller till och med inaktivera påminnelser för att aktivera ögonspårning i din app.

Fall back for apps using eye-gaze as a primary input pointer (Gå tillbaka för appar med ögonögonvisning som primär indatapekare)

Om din app använder ögonögon som pekarindata för att snabbt välja hologram i scenen, men spårningsdata för ögon är inte tillgängliga, rekommenderar vi att du faller tillbaka till huvudet och börjar visa markören med huvudet. Vi rekommenderar att du använder en tidsgräns (till exempel 500–1 500 ms) för att avgöra om du ska växla eller inte. Den här åtgärden förhindrar att markörer visas varje gång systemet kort kan förlora spårning på grund av snabba ögonrörelser eller winks och blinkningar. Om du är Unity-utvecklare hanteras den automatiska återställningen till huvudet redan i Mixed Reality Toolkit. Om du är DirectX-utvecklare måste du hantera den här växeln själv.

Gå tillbaka till andra ögonspårningsspecifika program

Din app kan använda blicken på ett unikt sätt som är skräddarsytt för ögonen. Till exempel, att animera en avatars ögon eller för ögonbaserade uppmärksamhets heatmaps som förlitar sig på exakt information om visuell uppmärksamhet. I det här fallet finns det ingen tydlig reserv. Om ögonspårning inte är tillgängligt kan dessa funktioner behöva inaktiveras. Vi rekommenderar återigen att tydligt meddela den användare som kanske inte känner till att funktionen inte fungerar.


Den här sidan har förhoppningsvis gett dig en bra översikt för att komma igång med att förstå rollen för ögonspårning och ögonigenkänning för HoloLens 2. För att komma igång med utveckling kan du kolla in vår information om rollen för blick för att interagera med hologram,titta i Unity och titta i DirectX.

Se även