W ciągu ostatnich kilku lat na rynku konsumenckim pojawiły się tanie urządzenia do śledzenia wzroku. Są one głównie sprzedawane jako urządzenia do gier, ale znalazły również zastosowanie w dostępie do komputera dla osób niepełnosprawnych fizycznie.
Eye-trackery (lub gaze-trackery) są urządzeniami składającymi się z diod LED na podczerwień i jednej lub więcej kamer na podczerwień. Poprzez przechwytywanie odbicia światła podczerwonego od oczu użytkownika, algorytm przetwarzania obrazu może określić, gdzie na monitorze komputera użytkownik aktualnie patrzy. Historycznie, urządzenia te były bardzo drogie, ale niektóre z nich sprzedają się teraz za mniej niż 200 dolarów.
Dla tego artykułu, skupię się na Tobii Eye Tracker 4C. Osobiście używam tego urządzenia od ponad roku. Kosztuje ono około 150 dolarów i jest przeznaczone dla graczy. Magnes samoprzylepny pozwala na zamontowanie urządzenia na dolnej krawędzi monitora komputerowego, a połączenie USB 3.0 przesyła dane do komputera. Aby móc korzystać z wszystkich dostępnych narzędzi, wymagany jest system Windows 8, 8.1 lub 10. Niektóre funkcje są możliwe w systemie Windows 7. Firma Tobii nie udostępniła podobnego sprzętu ze sterownikami dla systemów Mac lub Linux. (Inne urządzenia na rynku mają podobną specyfikację techniczną i będą działać z większością tego samego oprogramowania.)
Zauważyłem, że Eye Tracker 4C działa najlepiej z umiarkowanie dużym monitorem zewnętrznym, ale istnieje górny limit rozmiaru monitora: albo 27 cali, albo 30 cali w zależności od współczynnika proporcji. Aby urządzenie działało prawidłowo, podstawowym wymogiem jest, aby twarz użytkownika była skierowana w stronę monitora, a dwoje oczu znajdowało się na tej samej wysokości. W tradycyjnym ustawieniu monitora oznacza to siedzenie w pozycji pionowej twarzą do monitora, ale wiele innych pozycji może być osiągniętych dzięki kreatywnemu montażowi monitora.
Możliwe jest użycie eye-trackera z laptopem, ale celowanie będzie mniej dokładne. Ekran może również stać się czynnikiem ograniczającym podczas pracy na laptopie, ponieważ klawiatura ekranowa wystarczająco duża do śledzenia wzroku będzie prawdopodobnie zajmować co najmniej połowę ekranu. Kilka laptopów przeznaczonych do gier jest dostępnych z zasadniczo tym samym sprzętem do śledzenia wzroku zintegrowanym z samym laptopem.
Tobii dostarcza sterowniki i oprogramowanie do kalibracji, wraz z kilkoma innymi narzędziami. Kalibracja jest dość prosta, wymaga jedynie od użytkownika wpatrywania się w kilka punktów na ekranie przez kilka sekund każdy. Domyślnie oprogramowanie próbuje śledzić oba oczy użytkownika, ale można je skonfigurować tak, aby śledziło tylko prawe lub tylko lewe oko.
Większość oprogramowania pomocniczego dostarczanego przez Tobii należy uznać za bardziej demo niż przydatne oprogramowanie, ale jedna funkcja w szczególności jest warta wspomnienia. Możesz skonfigurować oprogramowanie tak, aby kursor myszy „przeskakiwał” do bieżącego punktu patrzenia, gdy użytkownik zacznie poruszać myszą w tym ogólnym kierunku. Może to być całkiem przydatne w przypadku połączenia technologii eye tracking z fizyczną myszą (lub trackballem, lub joystickiem, itp.). Taka konfiguracja umożliwia obsługę dużych ruchów myszy na ekranie przez eye tracker oraz sterowanie małymi, precyzyjnymi ruchami przez mysz fizyczną. Inne opcje obejmują skonfigurowanie kursora do przeskakiwania po naciśnięciu klawisza i ustawienie progów dla minimalnej odległości przeskoku.
Aby sterować komputerem całkowicie za pomocą oczu, wymagane jest dodatkowe oprogramowanie. Opcją wysokiej jakości, darmową i opartą na otwartych źródłach jest OptiKey. (Pełne ujawnienie: współtworzyłem klawiaturę OptiKey i jej dokumentację.) OptiKey jest narzędziem, które pozwala użytkownikom na interakcję z komputerem z systemem Windows i generowanie syntezy mowy za pomocą wzroku. Jest to klawiatura ekranowa, na której użytkownik wskazuje wzrokiem i klika albo za pomocą przełącznika, albo przez zatrzymanie się na klawiszu. Dobrze zaprojektowane narzędzia emulacji myszy są również dołączone. Obejmują one opcje, które pozwalają na łatwiejsze wybieranie małych celów poprzez powiększanie obszaru ekranu. OptiKey oferuje również wiele metod przewidywania i uzupełniania słów z klawiatury oraz możliwość zmiany typowych ustawień bez opuszczania środowiska klawiatury. Po uruchomieniu OptiKey użytkownik może współpracować z komputerem używając jedynie eye-trackera (i opcjonalnie przełącznika). OptiKey zawiera klawiatury w wielu językach, a nawet zestaw klawiatur obrazkowych (zaprojektowanych, aby umożliwić komunikację dzieciom i innym osobom, które mają problemy z językiem pisanym).
Jest całkowicie możliwe użycie OptiKey do pisania kodu źródłowego, ale niektóre z symboli, które są często używane w kodzie, są ukryte w OptiKey, wymagając od użytkownika nawigacji przez wiele podklawiatur, zanim dotrze do żądanego symbolu. Mój niesamowity przyjaciel Maxie pomógł mi stworzyć i zaimplementować kilka alternatywnych układów klawiatury lepiej dostosowanych do kodowania, a naszą pracę (jak również instrukcje tworzenia własnych klawiatur) można znaleźć na GitHub.
Project Iris to kolejny pakiet oprogramowania, który współpracuje z eye-trackerem. Jest on dostosowany do umożliwienia tworzenia własnych interfejsów dla programów Windows opartych na eye-trackingu. Jego najpotężniejszą cechą są „interaktory”, prostokąty na ekranie, które reagują, gdy użytkownik na nie patrzy, wyzwalając naciśnięcia klawiszy lub inne działania. Oprogramowanie to jest szczególnie przydatne, gdy ważne jest wprowadzanie danych w czasie rzeczywistym, na przykład w grach wideo. To oprogramowanie nie jest darmowe, ale jest dostępna darmowa 14-dniowa wersja próbna.
Dasher jest kolejną darmową i open-source’ową klawiaturą ekranową, a jej projekt działa bardzo dobrze dla hałaśliwych danych wejściowych, takich jak eyetrackery. Aby używać Dashera, musisz najpierw zmapować dane wejściowe z eye trackera na mysz. Można to zrobić za pomocą Project Iris lub prostego skryptu FreePIE (zobacz poniżej). Dasher jest bardzo dobry do szybkiego wprowadzania tekstu, ale nie jest dobry do edycji lub nawigacji po interfejsie użytkownika. Lubię opisywać używanie Dashera z eye trackerem jako „interaktywne czytanie”. Dasher ma dość stromą krzywą uczenia się, ale na szczycie tej krzywej jest naprawdę tak łatwy jak czytanie.
Jeśli chcesz napisać własny kod do interfejsu z eye trackerem, FreePIE jest świetnym miejscem do rozpoczęcia. Pozwala on na pisanie skryptów w Pythonie, które pobierają dane wejściowe z dowolnej liczby urządzeń (w tym z eye trackera) i emulują mysz i/lub klawiaturę jako dane wyjściowe.