Śledzenie oczu na HoloLens 2
HoloLens 2 pozwala na nowy poziom kontekstu i zrozumienia przez człowieka w środowisku holograficznego, zapewniając deweloperom możliwość korzystania z informacji o tym, co patrzy użytkownik. Na tej stronie wyjaśniono, jak deweloperzy mogą korzystać ze śledzenia oczu w różnych przypadkach użycia i czego szukać podczas projektowania interakcji użytkowników opartych na spojrzeniu.
Interfejs API śledzenia oczu został zaprojektowany z myślą o prywatności użytkownika; unika przekazywania wszelkich możliwych do zidentyfikowania informacji, szczególnie wszelkich danych biometrycznych. W przypadku aplikacji obsługujących śledzenie oczu użytkownik musi udzielić aplikacji uprawnienia do korzystania z informacji śledzenia oczu.
Obsługa urządzeń
Funkcja | HoloLens (1. generacja) | HoloLens 2 | Immersyjne zestawy słuchawkowe |
Spojrzenie wzrokowe | ❌ | ✔️ | ❌ |
Pokaz koncepcji projektowania head and eye tracking
Jeśli chcesz zobaczyć koncepcje projektowe Head and Eye Tracking w akcji, zapoznaj się z naszym pokazem wideo Projektowanie Hologramów — śledzenie głowy i śledzenie oczu poniżej. Po zakończeniu przejdź dalej, aby uzyskać bardziej szczegółowe informacje na temat konkretnych tematów.
To wideo zostało zrobione z aplikacji "Projektowanie hologramów" HoloLens 2. Pobierz i ciesz się pełnym doświadczeniem tutaj.
Kalibracja
Aby śledzenie oczu działało dokładnie, każdy użytkownik musi przejść przez śledzenie oczu kalibracji użytkownika , dla którego użytkownik musi przyjrzeć się zestawowi celów holograficznej. Dzięki temu urządzenie może dostosować system, co zapewnia wygodniejsze i lepsze środowisko wyświetlania dla użytkownika oraz zapewnia dokładne śledzenie oczu w tym samym czasie.
Śledzenie oczu powinno działać dla większości użytkowników, ale rzadko występują przypadki, w których użytkownik nie może pomyślnie skalibrować. Kalibracja może zakończyć się niepowodzeniem z różnych powodów, w tym z następujących powodów:
- Użytkownik zrezygnował wcześniej z procesu kalibracji.
- Użytkownik został rozproszony i nie przestrzegał celów kalibracji.
- Użytkownik ma pewne typy soczewek kontaktowych i okularów, które system jeszcze nie obsługuje.
- Użytkownik ma pewną fizjologię oczu lub warunki oczu lub miał operację oczu, którą system jeszcze nie obsługuje.
- Czynniki zewnętrzne hamujące niezawodne śledzenie oczu, takie jak rozmazy na wizjerce HoloLens lub okulary, intensywne bezpośrednie światło słoneczne i okluzji z powodu włosów przed oczami.
Deweloperzy powinni zapewnić odpowiednią obsługę dla użytkowników, dla których dane śledzenia oczu mogą nie być dostępne (którzy nie mogą pomyślnie skalibrować). Udostępniliśmy zalecenia dotyczące rozwiązań rezerwowych w sekcji w dolnej części tej strony.
Aby dowiedzieć się więcej o kalibracji i sposobie zapewnienia płynnego działania, zobacz naszą stronę kalibracji użytkownika śledzenia oczu .
Dostępne dane śledzenia oczu
Śledzenie oczu na HoloLens 2 umożliwia deweloperom projektowanie naturalnych i intuicyjnych scenariuszy wejściowych i interakcji. Interfejs API śledzenia oczu zawiera informacje o tym, co użytkownik patrzy jako jedno spojrzenie wzroku (źródło i kierunek) na około 30 FP (30 Hz). Aby śledzenie oczu działało dokładnie, każdy użytkownik musi przejść przez kalibrację użytkownika śledzenia oczu. Aby uzyskać bardziej szczegółowe informacje na temat uzyskiwania dostępu do danych śledzenia oczu, zapoznaj się z naszymi przewodnikami dla deweloperów dotyczącymi korzystania z funkcji DirectX i wzroku w środowisku Unity.
Przewidywana perspektywa wzroku wynosi około 1,5 stopnia w kątze wizualnym wokół rzeczywistego celu (zobacz poniższą ilustrację). Oczekiwane są niewielkie nieprawdopodobne, więc deweloperzy powinni zaplanować pewien margines wokół tej niższej wartości (na przykład 2.0-3.0 stopni może spowodować znacznie wygodniejsze środowisko). Bardziej szczegółowo omówimy sposób rozwiązywania problemów z wyborem małych celów.
Optymalny rozmiar docelowy na odległości 2-metrowej
Rozszerzone dane śledzenia oczu
Rozszerzone interfejsy API śledzenia oczu umożliwiają deweloperom odblokowanie następnego poziomu innowacyjnych scenariuszy, takich jak ocena kondycji, monitorowanie i terapia, zapewniając bardziej szczegółowe informacje na temat wzroku użytkownika.
Rozszerzone interfejsy API śledzenia oczu zapewniają dostęp do istniejących wartości śledzenia oczu i nowych funkcji, takich jak pojedyncze (lewe i prawe) wektory wzroku, obsługiwane współczynniki ramek i możliwość ustawiania szybkości śledzenia oczu na 30, 60 lub 90fps. Aby użyć interfejsu API rozszerzonego śledzenia oczu, zapoznaj się z naszymi przewodnikami dla deweloperów dotyczącymi używania interfejsów API rozszerzonego śledzenia oczu dla natywnego lub aparatu Unity.
Przypadki zastosowań
Śledzenie oczu umożliwia aplikacjom śledzenie lokalizacji, w której użytkownik szuka w czasie rzeczywistym. W poniższych przypadkach użycia opisano niektóre interakcje, które są możliwe z śledzeniem oczu na HoloLens 2 w rzeczywistości mieszanej. Te przypadki użycia nie są jeszcze częścią środowiska powłoki Holographic Shell (interfejs widoczny podczas uruchamiania HoloLens 2). Niektóre z nich można wypróbować w zestawie narzędzi Mixed Reality Toolkit. Zestaw narzędzi udostępnia kilka interesujących i zaawansowanych przykładów dotyczących korzystania ze śledzenia oczu, takich jak szybkie i bezproblemowe wybieranie obiektów docelowych obsługiwanych przez oko i automatyczne przewijanie tekstu na podstawie tego, co patrzy użytkownik.
Intencja użytkownika
Informacje o tym, gdzie i na czym patrzy użytkownik, zapewnia zaawansowany kontekst dla innych danych wejściowych, takich jak głos, ręce i kontrolery. Może to być używane do różnych zadań. Na przykład użytkownik może szybko i bez wysiłku kierować na scenę, przeglądając hologram i mówiąc "select" (zobacz również spojrzenie i zatwierdzenie) lub "put this...", a następnie spójrz na miejsce, w którym chcą umieścić hologram i powiedzieć "... tam". Przykłady tego rozwiązania można znaleźć w Mixed Reality Toolkit — wybór obiektów docelowych obsługiwanych przez oko i zestaw narzędzi Mixed Reality Toolkit — obsługa wzroku w pozycji docelowej.
Ponadto przykładem intencji użytkownika może być użycie informacji o tym, co użytkownicy patrzą na zwiększenie zaangażowania wbudowanych agentów wirtualnych i interakcyjnych hologramów. Na przykład agenci wirtualni mogą dostosować dostępne opcje i ich zachowanie na podstawie aktualnie wyświetlanej zawartości.
Niejawne akcje
Kategoria niejawnych akcji ściśle odnosi się do intencji użytkownika. Chodzi o to, że hologramy lub elementy interfejsu użytkownika reagują w sposób instynktowny, który może nawet nie czuć się tak, jakby użytkownik w ogóle wchodzi w interakcję z systemem, ale raczej że system i użytkownik są zsynchronizowane. Jednym z przykładów jest automatyczne przewijanie oczu oparte na spojrzeniu , w którym użytkownik może odczytać długi tekst, który automatycznie rozpoczyna przewijanie, gdy użytkownik dostanie się do dołu pola tekstowego. Dzięki temu użytkownik jest w przepływie czytania bez podnoszenia palca. Kluczowym aspektem jest to, że szybkość przewijania dostosowuje się do szybkości odczytu użytkownika.
Innym przykładem jest powiększenie obsługiwane przez oko i przesuwanie, w którym użytkownik może czuć się jak nurkuje dokładnie w kierunku tego, co koncentruje się na.
Wyzwalanie i sterowanie prędkością powiększenia można kontrolować za pomocą głosu lub rąk, co jest ważne w celu zapewnienia użytkownikowi poczucia kontroli, unikając przytłoczenia. Omówimy te zagadnienia dotyczące projektowania bardziej szczegółowo poniżej. Po powiększeniu użytkownik może płynnie śledzić, na przykład, oczywiście ulicę, aby zbadać swoją dzielnicę przy użyciu wzroku. Przykłady demonstracyjne dla tych typów interakcji można znaleźć w przykładzie Mixed Reality Toolkit — nawigacja obsługiwana przez oko.
Inne przypadki użycia dla niejawnych akcji mogą obejmować:
- Powiadomienia inteligentne: Czy kiedykolwiek jesteś zirytowany przez powiadomienia wyskakujące bezpośrednio w środku widoku? Możesz poprawić to środowisko, wyłączając powiadomienia z miejsca, w którym użytkownik patrzy obecnie. Ogranicza to rozproszenie uwagi i automatycznie odrzuca je po zakończeniu czytania przez użytkownika.
- Uważne hologramy: Są to hologramy, które reagują w subtelny sposób, gdy są patrząc na. Może to wahać się od lekko świecących elementów interfejsu użytkownika do powoli kwitnącego kwiatu do wirtualnego psa, który zaczyna patrzeć wstecz na użytkownika i wagging jego ogon. Ta interakcja może zapewnić interesujące poczucie łączności i satysfakcji w aplikacji.
Śledzenie uwagi
Informacje o tym, gdzie lub na co użytkownicy patrzą, mogą być niezwykle zaawansowanym narzędziem. Może pomóc ocenić użyteczność projektów i zidentyfikować problemy w przepływach pracy, aby uczynić je bardziej wydajnymi. Wizualizacja i analiza śledzenia oczu to powszechna praktyka w różnych obszarach aplikacji. Dzięki HoloLens 2 zapewniamy nowy wymiar tego zrozumienia. Hologramy 3D można umieścić w rzeczywistych kontekstach i odpowiednio ocenić.
Zestaw Mixed Reality Toolkit zawiera podstawowe przykłady rejestrowania i ładowania danych śledzenia oczu oraz sposób ich wizualizacji.
Firma Microsoft jest przeznaczona do ułatwiania innowacji przy jednoczesnym zapewnieniu, że użytkownicy mają świadome i przejrzyste doświadczenie w sposobie wykorzystania informacji dotyczących śledzenia oczu. Będziemy nadal współpracować z naszymi deweloperami i zespołami środowiska użytkownika, aby zapewnić wskazówki dla innych firm w celu zapewnienia, że środowiska są skoncentrowane wokół użytkownika.
Inne aplikacje w tym obszarze mogą obejmować:
- Zdalna wizualizacja wzroku: Wizualizuj, na co patrzą współpracownicy zdalni. Może to zapewnić natychmiastową opinię i ułatwić dokładniejsze przetwarzanie informacji.
- Badania nad użytkownikami: Śledzenie uwagi może zapewnić wgląd w sposób, w jaki użytkownicy postrzegają i angażują się w środowisko naturalne bez zakłócania. Może to pomóc deweloperom zaprojektować bardziej instynktowne interakcje między ludźmi i komputerami. Śledzenie oczu może dostarczyć informacji, które nie są bezpośrednio wyrażane przez uczestników badania i mogą być łatwo pominięte przez badacza.
- Monitorowanie trenowania i wydajności: Przećwiczyć i zoptymalizować wykonywanie zadań, identyfikując wąskie gardła w przepływie wykonywania. Śledzenie oczu może dostarczać naturalne, w czasie rzeczywistym i obiektywne informacje, które pomagają poprawić szkolenia, produktywność i bezpieczeństwo w miejscu pracy.
- Oceny projektowe, marketing i badania konsumentów: Śledzenie oczu umożliwia firmom komercyjnym wykonywanie badań marketingowych i konsumenckich w rzeczywistych środowiskach lub analizowanie tego, co przyciąga uwagę użytkownika w celu poprawy projektu produktu lub przestrzeni.
Inne przypadki użycia
- Gier: Czy kiedykolwiek chciałeś mieć supermocarstwo? Oto twoja szansa!
Hologramy można lewitować, patrząc na nie.
Strzelaj promienie laserowe z oczu- wypróbuj go w RoboRaid na HoloLens 2.
Zamieniać wrogów w kamień lub zamrozić je.
Eksplorowanie budynków za pomocą wzroku rentgenowskiego.
Twoja wyobraźnia jest granicą! Uważaj jednak, że użytkownik nie jest przytłaczający. Aby dowiedzieć się więcej, zobacz nasze wytyczne dotyczące projektowania danych wejściowych oparte na spojrzeniu wzroku.
Wyraziste awatary: Śledzenie oczu pomaga w bardziej wyrazistych awatarach 3D za pomocą danych śledzenia oczu na żywo, aby animować oczy awatara i sprawić, aby śledzić to, co użytkownik patrzy.
Wpis tekstowy: Śledzenie oczu może służyć jako alternatywa dla wprowadzania tekstu o niskim nakładzie pracy, zwłaszcza gdy mowę lub ręce są niewygodne do użycia.
Korzystanie z wzroku w celu interakcji
Tworzenie interakcji, która wykorzystuje szybkie ukierunkowanie oczu, może być trudne. Ponieważ oczy mogą poruszać się szybko, jeśli nie uważasz, jak korzystać z danych wejściowych wzroku, użytkownicy mogą znaleźć doświadczenie przytłaczające lub rozpraszające. Ale jest to warte wyzwania, ponieważ śledzenie oczu umożliwia tworzenie naprawdę magicznych doświadczeń, które będą wzbudzić użytkowników! Aby ci pomóc, zapoznaj się z naszym omówieniem kluczowych zalet, wyzwań i zaleceń projektowych dotyczących interakcji.
Rozwiązania rezerwowe, gdy śledzenie oczu jest niedostępne
W rzadkich przypadkach dane śledzenia oczu mogą być niedostępne. Może się to zdarzyć z wielu powodów — najczęściej wymieniono poniżej:
- System nie skalibrował użytkownika.
- Użytkownik pominął kalibrację.
- Użytkownik jest skalibrowany, ale postanowił nie udzielić aplikacji uprawnień do korzystania z danych śledzenia oczu.
- Użytkownik ma unikatowe okulary lub jakiś stan oka, którego system jeszcze nie obsługuje.
- Czynniki zewnętrzne hamujące niezawodne śledzenie oczu, takie jak rozmazy na visor lub okulary HoloLens, intensywne bezpośrednie światło słoneczne i okluzji z powodu włosów przed oczami.
Deweloperzy powinni zapewnić odpowiednią obsługę rezerwową dla tych użytkowników. Na stronie Eye Tracking in DirectX (Śledzenie oczu w usłudze DirectX ) objaśniamy interfejsy API wymagane do wykrywania, czy dane śledzenia oczu są dostępne.
Niektórzy użytkownicy mogą zdecydować, że większa prywatność jest dla nich ważniejsza niż ulepszona obsługa śledzenia oczu, dzięki czemu celowo odwołują dostęp do danych śledzenia oczu. Jednak w niektórych przypadkach odwołanie może być niezamierzone. Jeśli aplikacja korzysta ze śledzenia oczu i jest to ważna część środowiska, zalecamy, aby wyraźnie komunikować się z użytkownikiem. Wyjaśnienie użytkownikowi, w jaki sposób śledzenie oczu odblokowuje pełny potencjał aplikacji, może pomóc im lepiej zrozumieć, co rezygnuje. Jeśli śledzenie oczu jest włączone, ale nie działa, pomóż użytkownikowi zidentyfikować i rozwiązać problem, korzystając z powyższej listy kontrolnej jako przewodnika. Jeśli na przykład można wykryć, że system obsługuje śledzenie oczu, a użytkownik jest skalibrowany i udzielił im uprawnień, ale nie otrzymano żadnych danych śledzenia oczu, może to wskazywać na problemy, takie jak rozmycie lub okłucie oczu.
Istnieją rzadkie przypadki, w których śledzenie oczu po prostu nie działa dla kogoś i nie ma oczywistego powodu. Należy to zachować z szacunkiem, zezwalając użytkownikowi na odrzucanie lub wyłączanie przypomnień dotyczących włączania śledzenia oczu w aplikacji.
Powrót do aplikacji przy użyciu wzroku jako podstawowego wskaźnika wejściowego
Jeśli aplikacja używa wzroku jako danych wejściowych wskaźnika, aby szybko wybrać hologramy na scenie, ale dane śledzenia oczu są niedostępne, zalecamy powrót do spojrzenia na głowę i pokazanie kursora głowy. Zalecamy użycie limitu czasu (na przykład 500–1500 ms), aby określić, czy należy przełączyć się. Ta akcja uniemożliwia pojawianie się kursorów za każdym razem, gdy system może na krótko stracić śledzenie z powodu szybkich ruchów oczu lub mruga i miga. Jeśli jesteś deweloperem aparatu Unity, automatyczny powrót do głównego spojrzenia jest już obsługiwany w zestawie narzędzi Mixed Reality Toolkit. Jeśli jesteś deweloperem directx, musisz samodzielnie obsłużyć ten przełącznik.
Powrót do innych aplikacji specyficznych dla śledzenia oczu
Twoja aplikacja może używać wzroku w unikatowy sposób dostosowany specjalnie do oczu — na przykład animowania oczu awatara lub map map cieplnych uwagi opartych na wzroku, które opierają się na dokładnych informacjach na temat uwagi wizualnej. W tym typie przypadku nie ma wyraźnego rezerwowego. Jeśli śledzenie oczu jest niedostępne, może być konieczne wyłączenie tych funkcji. Ponownie zalecamy, aby wyraźnie komunikować się z użytkownikiem, który może nie wiedzieć, że ta funkcja nie działa.
Ta strona ma nadzieję, że dostarczyła Ci dobrego przeglądu, aby rozpocząć zrozumienie roli śledzenia oczu i wprowadzania wzroku dla HoloLens 2. Aby rozpocząć opracowywanie, zapoznaj się z naszymi informacjami na temat roli wzroku w celu interakcji z hologramami, spojrzeniem wzrokowym w akwenie aparatu Unity i spojrzeniem wzrokowym w programie DirectX.