-->

Eyetracker Dokumentation

Vorbereitung, Aufstellung usw.
Kalibrierung
1. Positionierung der VP, Mechanische Einstellungen
2. Tracking des Augenbilds
3. Kalibrierung durchfuehren
Verschiedenes zum Thema Kalibrierung
iView X-Software/ -Konfiguration
Arbeiten mit Konfigurationen
Konfigurationsoptionen
Verschiedenes zum Thema IVX Software
Ansteuerung/Programmierung
Einrichtung einer Programmierumgebung zur Experimentalsteuerung unter DOS+C+Allegro+Watt32
Hinweise zur Programmierung von Eyetracking-Experimenten
Auswertung
1. Rohdaten sichern
2. Rohdaten in event-Daten umwandeln (Begaze)
3. ggf. event-Daten korrigieren
4. ggf. event-Daten weiterverarbeiten
Verschiedenes
Remote-Sitzungen
Hier eine vorsichtig systematisierte Sammlung an praktischen Hinweisen zum Umgang mit dem iView X Eyetracker (Sensomotoric Instruments, Berlin) -- aus persoenlicher Erfahrung, Gespraechen mit SMI, u.a.

Vorbereitung, Aufstellung usw.

Fuer korrekte Daten wichtige Konfigurationsoptionen:

Kalibrierung

1. Positionierung der VP, Mechanische Einstellungen

Zuerst die Einstellungen nur am Turm vornehmen.

Erst jetzt die Augenposition im Augenbild kontrollieren

Wenn die VP bequem sitzt, das Auge in der Mitte des Augenbilds auf dem IVX-Rechner zu sehen ist, koennen die Softwareeinstellungen angepasst werden:

2. Tracking des Augenbilds

Tracking-Einstellungen: Um Augendaten erheben zu koennen muss die IVX-Software im von der Kamera uebermittelten Augenbild die Pupille und den Cornealreflex (CR; kleiner weisser Punkt im Augenbild) identifizieren koennen. Dies muss 1x in einer Sitzung, vor der Kalibrierung, eingestellt werden. Ist dies erreicht (= stabiles Tracking), erscheint (abh. von den "overlay"-Einstellungen) ein schwarzes Kreuz auf Pupille bzw.ein weisses auf dem CR. Bei instabilem Tracking bittet man die VP, den Mittelpunkt zu fixieren und reguliert ueber zwei Schieberegler unter dem Augenbild:

  1. Pupil Threshold: Reguliert das Tracking der Pupille.
  2. CR Threshold: Reguliert das Tracking des CR.

Hat man ein stabiles Tracking erreicht. Bitte man die VP einmal ueber alle fuer die Kalibrierung verwendeten Punkte auf dem Bildschirm zu schauen und reguliert ggf. an Punkten mit instabilem Tracking nach.

Weitere Parameter:

3. Kalibrierung durchfuehren

Bei der Kalibrierung wird die Augenposition (d.h. das Augenbild) mit Bildschirmkoordinaten abgeglichen; d.h. korrekte Kalibrierung ist Voraussetzung fuer korrekten Augendaten.

Zu starten ueber Calibration->Start. Zwei Modi

  1. Automatische Kalibrierung: Kalibrierungspunkte werden automatisch "akzeptiert", wenn der Blick auf einen Kalibrierungspunkt fokussiert. Dafuer braucht man Unterstuetzung von der Experimentalsoftware (Presentation: ja; DOS/C: nein). Calibration->Auto Accept aktivieren.
  2. Manuelle Kalibrierung: Kalibrierungspunkte muessen der VP angesagt werden, wie sie auf dem IVX-Bildschirm hervorgehoben werden und von Hand durch Druck auf die Leertaste "akzeptiert" werden. Calibration->Auto Accept deaktivieren.

Nach der Kalibrierung deren Korrektheit kurz auf willkuerlich gewaehlten Punkten kontrollieren.

Verschiedenes zum Thema Kalibrierung

iView X-Software/ -Konfiguration

Arbeiten mit Konfigurationen

Sobald mehrere Personen mit unterschiedlichen Einstellungen an der IVX-Software arbeiten sollte jeder sein eigenes Profil verwenden, damit er nicht die Einstellungen des/r anderen zerschiesst.

Anlegen eines Profils: Nachdem man seine Einstellungen gemacht hat waehlt man ueber Setup->Save Setup einen Dateiname unter dem man seine Einstellungen ablegen moechte (z.B. im IVX-Verzeichnis unter C:\Programme\SMI\iView X\jim01.ivs)

Laden eines Profils: Das Laden eines Profils geht nur beim startup des Programms und muss als Kommandozeilenparameter uebergeben werden. Dazu

Beim oeffnen dieses Icons wird das IVX-Programm mit den zuvor abgespeicherten Einstellungen geladen und Aenderungen an der Konfiguration ... FIXME, NACHLESEN!

Konfigurationsoptionen

Die folgende Auflistung ist weder vollstaendig, noch soll sie die online-Hilfe des IVX-Programms ersetzen. Sie enthaelt Optionen, mit denen wir schon eigene Erfahrungen gemacht haben, weil sie geaendert wurden oder/und wichtig/kritisch sind ...

OptionSemantikAnmerkungen
Setup -> Eyetracker -> Advanced -> OverlaysAnzeigeoptionen fuer das Augenbild: Pupillenfadenkreuz/CR-Fadenkreuz/Konturen/AOIs anzeigen/nicht anzeigenDen "Advanced"-Dialog erreicht man auch ueber den Advanced-Button unterhalb des Fensters des Augenbilds
... -> AOIArea Of Interest im Augenbild einstellenMoeglichkeit, den fuer die Augendaten relevanten Augenbereich zu verringern
... -> RejectionDiverse Parameter zur Regulierung des TrackingverhaltensAchtung: Nur veraendern, wenn man weiss, was man tut! FIXME: mehr?
... -> Rejection-> reflex pupil distanceLegt die min- und max-Werte fuer Abstand Pupille - CR fest. Dass in extremen Blickpositionen (z.B. oben rechts) der CR verloren wird kann damit zusammenhaengen; dann den max-Wert vergroessern.Achtung: Wird ueblicherweise nicht veraendert, nur bei sehr schlechtem Trackingverhalten anfassen!
... -> Rejection-> reflex perimeterRegelt die min- und max-Werte fuer die Groesse des CR (in Pixeln) fest. Muss ggf., bei VPs mit sehr kleinem CR, verkleinert werden.Achtung: Wird ueblicherweise nicht veraendert, nur bei sehr schlechtem Trackingverhalten anfassen!
... -> Rejection-> pupil densityMuss (u.a.) verstellt werden, wenn auf Augenlider oder -brauen getrackt wird.Achtung: Wird ueblicherweise nicht veraendert, nur bei sehr schlechtem Trackingverhalten anfassen!
... -> LinecutGraphik zur Qualitaet des AugenbildsIst ein indirektes Mass fuer die Qualitaet des Augenbilds: die Vertiefung in dieser Grafik, die die Pupille markiert sollte sich moeglichst tief von der Umgebung absetzen; ausserdem sollten moeglichst wenig "Streifen" zu sehen sein, d.h. einzelne nach oben ausbrechende Linien im Diagramm
Setup -> Calibration -> Method -> Calibration MethodWieviele Punkte und welche Methode soll zur Kalibrierung verwendet werden?
Setup -> Calibration -> Method -> Check LevelFIXME! Stefanie?
Setup -> Calibration -> Geometry -> Stimulus Screen ResolutionBildschirmaufloesung des Experimentalbildschirms in PixelAchtung: Muss stimmen sonst falsche Werte!
... -> Stimulus Physical DimensionGroesse des Experimentalbildschirms in mmAchtung: Muss stimmen sonst falsche Werte!
... -> Montior-Head DistanceEntfernung Auge-Experimentalbildschirm in mmAchtung: Muss stimmen sonst falsche Werte!
Setup -> Preferences -> Hardware -> Eyetracker -> Config -> Operation ModeAufzeichnungsrate des Geraets (240 oder 350 Hz)
Setup -> Preferences -> Hardware -> Eyetracker -> Config -> Adjust ImageRegelt Helligkeit und Kontrast des Augenbilds.Achtung: Wird ueblicherweise nicht veraendert, nur bei sehr schlechtem Trackingverhalten anfassen! Die Darstellung des Augenbilds reagiert sehr sensibel auf eine Aenderung der Werte.
... -> AssignmentWelches Auge wird getrackt?Achtung: Muss mit der Hebelstellung ("Left" - "Right") am Turm uebereinstimmen!
Setup -> Preferences -> Hardware -> Remote -> Ethernet -> Config -> ListenAuf welchem Netzwerkinterface (und welchem Port) sollen Daten vom Experimentalrechner empfangen werden?Ist die IP-Adresse, die in der Netzwerkkarten-Definition von Windows eingetragen ist (z.B. "192.168.1.1). Port ist ueblicherweise 4444.
... -> Send UDP packets toAn welche IP-Adresse (und welchen Port) sollen Daten vom IVX an den Experimentalrechner gesendet werden?Ist die IP-Adresse der Netzwerkkarte, ueber die der Experimentalrechner mit dem IVX-Rechner verbunden ist (z.B. "192.168.1.2). Port ist ueblicherweise 4444. Wenn der Experimentalrechner eingeschaltet ist und das Netzwerkkabel in beiden Netzwerkkarten steckt, sollte die Kontrollleuchte neben den Optionen gruen leuchten.

Verschiedenes zum Thema IVX Software

Ansteuerung/Programmierung

Auf dem Experimentalrechner wurden zwei Umgebungen zur Experimentalsteuerung benutzt: "Presentation" unter Windows und C unter DOS und Linux. Die weiteren Anmerkungen in diesem Teil beziehen sich auf die letzte Alternative (DOS).

Einrichtung einer Programmierumgebung zur Experimentalsteuerung unter DOS+C+Allegro+Watt32

Komponenten (von uns verwendete Versionen)

  1. Computer mit Netzwerkkarte (3COM 3c905C-TX/TX-M)
  2. MS-DOS Betriebssystem (6.2)
  3. Netzwerkkartentreiber fuer DOS
  4. djgpp Compiler-Umgebung (2.03; gcc-Version FIXME) zum Uebersetzen der C-Programme
  5. Allegro game programming library (4.02): Bibliothek zur Grafik-Ausgabe
  6. Watt32 Socket library(???): Bibliothek zur Ansteuerung des Netzwerkinterfaces
  7. (ivx_udp: Schnittstelle zur Ansteuerung des IVX-Eyetrackers)

MSDOS-Betriebssystem installieren

...

Netzkartentreiber installieren

Das Angebot an Treibern fuer Netzwerkkarten unter DOS ist beschraenkt. Fuer die verbreitet 3Com-Serie 3C90x sollten Treiber unter http://support.3com.com/infodeli/inotes/techtran/e36e_5ea.htm verfuegbar sein.

DJGPP installieren

djgpp ist eine Portierung des GNU-C-Compilers auf MS-DOS/Windows und bringt neben dem Gnu-C-Compiler (gcc) etliche tools zur Programmierung mit.

Allegro installieren

Allegro ist eine maechtige Grafik-Bibliothek

Watt-32 installieren

Watt-32 ist eine C-Bibliothek zur Verwendung der TCP/IP-Protokollfamilie. Sie wird fuer die Kommunikation mit dem IVX-Rechner benoetigt. Sie ist ein Port der BSD-Socket-API, d.h. umfasst die meisten der low-level-Routinen der socket-Programmierung unter Unix/Linux-artigen Betriebssystemen.

Hinweise zur Programmierung von Eyetracking-Experimenten

Fuer die Programmierung von Eyetracking-Experimenten in C wurde ein selbstgeschriebenes Interface (ivx_udp.h zur Kommunikation mit dem IVX-Rechner ueber das UDP-Protokoll (in DOS und Unix/Linux) verwendet.

Auswertung

Im folgenden Hinweise zu folgender Auswertungsstrategie:

  1. Rohdaten durch ivx speichern lassen
  2. Rohdaten in durch begaze-Programm in event-Daten (d.h. setweise in Fixations-, Sakkaden- usw. events eingeteilte) auswerten lassen
  3. ggf. event-Daten korrigieren
  4. ggf. event-Daten weiterverarbeiten

Bei der Auswertung der Augendaten haben sich uns etliche bugs (des iView X- sowie des Begaze-Programms) gezeigt, auf die an passender Stelle im folgenden hingewiesen wird. SMI hat wiederholt versprochen diese zu beheben, weshalb sie in neueren Programm-Versionen evtl. nicht mehr auftreten.

1. Rohdaten sichern

Das iView X-Programm bietet die Moeglichkeit, die Rohdaten im internen idf-Format oder als ASCII-File (*.txt) zu speichern. Es empfiehlt sich, beides zu machen, da man evtl. das txt-File fuer eine nachtraegliche Korrektur der event-Daten benoetigt.

Neben dem ivx-Programm kann man nachtraeglich das Programm *IDFConvert* verwenden, um aus idf-Dateien txt-Dateien zu erzeugen (vgl. u.).

Bekannte Bugs

2. Rohdaten in event-Daten umwandeln (Begaze)

Begaze

IDF-Converter

Das in der iView X-Software mitgelieferte Programm IDFConvert bietet 3 Funktionen: Konvertieren

  1. vom idf- ins ASCII-Format
  2. von idf-Daten in event-Daten
  3. von iView X-Daten ins (alte) iView 3-Format

Bekannte Bugs

3. ggf. event-Daten korrigieren

Dieser Schritt war bisher nur deshalb notwendig, da begaze bei der Erzeugung der event-Daten MSGs verschluckt, die fuer die weitere Auswertung gebraucht werden. Dafuer wurde ein selbstgeschriebenes Perl-script verwendet, das aber noch nicht so allgemein ist, dass es generisch fuer jedes durchgefuehrte Experiment verwendet werden konnte. Vgl. EyetrackerSoftware:beformat

4. ggf. event-Daten weiterverarbeiten

Ausgehend von den durch begaze erzeugten event-Daten muessen die Daten fuer die weitere Auswertung evtl. weiterverarbeitet oder umformatiert werden. Dafuer wurden zweierlei tools verwendet:

  1. Eyedata-Analyzer, der in der Techfak der Uni Bielefeld entwickelt wird und (wie muendlich versichert) fuer Forschungszwecke innerhalb der Uni Bielefeld frei eingesetzt werden kann.
  2. Verschiedene selbstgeschriebene Perl-scripte, die die event-Daten fuer die Weiterverarbeitung durch SPSS umformatieren (vgl. EyetrackerSoftware:beformat)

Verschiedenes

Remote-Sitzungen

SMI hat die Moeglichkeit im Fehlerfall ueber das Internet den IVX-Rechner remote zu steuern und zu pruefen. Fuer die online-Sitzungen sind folgende Vorkehrungen getroffen worden: