labvanced logoLabVanced
  • Research
    • Publications
    • Researcher Interviews
    • Use Cases
      • Developmental Psychology
      • Linguistics
      • Clinical & Digital Health
      • Educational Psychology
      • Cognitive & Neuro
      • Social & Personality
      • Arts Research
      • Sports & Movement
      • Marketing & Consumer Behavior
      • Economics
      • HCI / UX
      • Commercial / Industry Use
    • Labvanced Blog
  • Technology
    • Feature Overview
    • Desktop App
    • Phone App
    • Precise Timing
    • Experimental Control
    • Eye Tracking
    • Multi User Studies
    • More ...
      • Questionnaires
      • Artificial Intelligence (AI) Integration
      • Mouse Tracking
      • Data Privacy & Security
      • Text Transcription
  • Learn
    • Guide
    • Videos
    • Walkthroughs
    • FAQ
    • Release Notes
    • Documents
    • Classroom
  • Experiments
    • Cognitive Tests
    • Sample Studies
    • Public Experiment Library
  • Pricing
    • Pricing Overview
    • License Configurator
    • Single License
    • Research Group
    • Departments & Consortia
  • About
    • About Us
    • Contact
    • Downloads
    • Careers
    • Impressum
    • Disclaimer
    • Privacy & Security
    • Terms & Conditions
  • Appgo to app icon
  • Logingo to app icon
Learn
Leitfaden
Videos
Anleitungen
Häufige Fragen
Versionshinweise
Versionshinweise
Dokumente
Klassenzimmer
  • 中國人
  • Deutsch
  • Français
  • Español
  • English
  • 日本語
Leitfaden
Videos
Anleitungen
Häufige Fragen
Versionshinweise
Versionshinweise
Dokumente
Klassenzimmer
  • 中國人
  • Deutsch
  • Français
  • Español
  • English
  • 日本語
  • Leitfaden
    • EINSTIEG

      • Objekte
      • Ereignisse
      • Variablen
      • Aufgabenassistent
      • Versuchsplan
      • Studien Design
        • Aufgaben
        • Blöcke
        • Sitzungen
        • Gruppen
    • HERVORGEHOBENE THEMEN

      • Randomisierung & Ausgewogenheit
      • Blickverfolgung
      • Fragebögen
      • Desktop-App
      • Beispielstudien
      • Teilnehmerrekrutierung
      • API-Zugriff
        • REST API
        • Webhook-API
        • WebSocket API
      • Weitere Themen

        • Präzise Stimulus-Zeiten
        • Multi-User-Studien
        • Kopfverfolgung in Labvanced | Anleitung
    • HAUPT-APP-TABS

      • Überblick: Haupt-Tabs
      • Dashboard
      • Meine Studien
      • Geteilte Studien
      • Meine Dateien
      • Experimentbibliothek
      • Mein Konto
      • Meine Lizenz
    • STUDIENTABS

      • Überblick: Studien-Spezifische Tabs
      • Studien Design
        • Aufgaben
        • Blöcke
        • Sitzungen
        • Gruppen
      • Aufgaben-Editor
        • Hauptfunktionen und Einstellungen
        • Das Versuchssystem
        • Canvas- und Seitenrahmen
        • Objekte
        • Objekt Eigenschaften Tabellen
        • Variablen
        • Systemvariablen-Tabellen
        • Das Ereignissystem
        • Versuchszufälligkeit
        • Texteditor-Funktionen
        • Eyetracking in einer Aufgabe
        • Kopfverfolgung in einer Aufgabe
        • Multi-User-Studien
      • Einstellungen
      • Variablen
      • Medien
      • Texte & Übersetzen
      • Starten & Teilnehmen
      • Teilnehmerverwaltung
      • Datensicht und Export
        • Datensicht und Variablen- & Aufgaben Auswahl (alte Version)
        • Zugriff auf Aufnahmen (ALTE Version)
  • Videos
    • Video Überblick
    • Einstieg in Labvanced
    • Aufgaben erstellen
    • Element Videos
    • Ereignisse & Variablen
    • Erweiterte Themen
  • Anleitungen
    • Einführung
    • Stroop-Aufgabe
    • Lexikalische Entscheidungsaufgabe
    • Posner-Blickführungstest
    • Change Blindness Flicker Paradigma
    • Blickverfolgungsbeispielstudie
    • Blickverfolgungsstudie bei Säuglingen
    • Aufmerksamkeitserfassung Studie mit Mausverfolgung
    • Schnelle serielle visuelle Präsentation
    • ChatGPT Studie
    • Blickverfolgungsdemo: SVGs als AOIs
    • Multi-User-Demo: Zeige den Cursor der Teilnehmer
    • Gamepad / Joystick Controller- Grundlegende Einrichtung
    • Desktop-App-Studie mit EEG-Integration
    • Gruppenausgleich zwischen Subjekten und Variablen Einrichtung
  • FAQ
    • Funktionen
    • Sicherheit & Datenschutz
    • Lizenzierung
    • Präzision von Labvanced
    • Programmgesteuerte Nutzung & API
    • Labvanced offline nutzen
    • Fehlerbehebung
    • Fragen zur Studienerstellung
  • Versionshinweise
  • Dokumente
  • Klassenraum

Desktop-App-Studie mit EEG-Integration

Inhalt:

  1. Überblick
  2. Studieneinstellungen
  3. Ereignisse einrichten
  4. EEG-Datenaufzeichnungssitzung
  5. EEG-Datenanalyse

Überblick

Ziel dieses Leitfadens ist es, zu demonstrieren, wie man eine einfache Studie mit EEG-Integration unter Verwendung der Desktop-App einrichtet.

Hinweis: Für weitere Informationen zur Desktop-App, einschließlich einer Installationsanleitung und eines Überblicks über die Funktionen der App - siehe diese Seite.

Hinweis: Für weitere Informationen zur Desktop-App, einschließlich einer Installationsanleitung und eines Überblicks über die Funktionen der App, siehe diese Seite.

Einstellungen

Im Einstellungen Tab, unter der Spalte Spezielle Funktionen, scrollen Sie nach unten zur Option Lab-Streaming-Layer und aktivieren Sie diese. Für weitere Informationen zu diesen Einstellungen, besuchen Sie diese Seite.

Dann wird dieses Textfeld angezeigt, in dem Sie den Ausgabestream benennen können. Hier haben wir einen einzelnen Stream erstellt und den Standardnamen und die Optionen beibehalten.

Typischerweise möchten Sie einen Ausgabestream für die in Labvanced generierten Ereignisse einrichten und ihn als Markerstrom an Ihre EEG-Aufzeichnungen senden, um Ereignisse zu markieren, damit Sie eine Ereignisse-bezogene Analyse der EEG-Daten durchführen können. Nachdem dies eingerichtet ist, können Sie einzelne Marker in diesem Stream senden, was mit dem Labvanced-Ereignissystem ganz einfach ist.

Einfache Studieneinrichtung

Für die Zwecke dieses Leitfadens werden wir schnell eine Studie zu dem bouba-kiki Effekt einrichten, um eine Grundlage für die Diskussion und eine Grundlage für die Einrichtung der EEG-bezogenen Ereignisse zur Sendung von Markern basierend auf:

  • Welche Stimulus-Kategorie angezeigt wird (d.h. bouba-Kategorie = runde Formen; kiki-Kategorie = stachelige / scharfe Formen)
  • Wann das Bild angeklickt wurde

Um zu sehen, wie wir die Stimuli eingerichtet haben (zum Kontext), verweisen Sie auf die 04:19 Minute im Video:

Kurze Beschreibung des Stimuli-Upload-Prozesses (basierend auf dem obigen Video):

  • Im Versuchssystem erstellen wir die Ebene und benennen sie ‘bouba’, die für die Stimulusbilder runder Formen verwendet wird, und erstellen dann eine weitere Ebene und benennen sie ‘kiki’ für die Bilder der stacheligen Formen.
  • Nun klicken wir unter der Bouba-Bedingung, die im Versuchssystem angezeigt wird, darauf und wählen das Objekt aus, dann laden wir unsere relevanten Bilddateien hoch und wählen die Optionen: i.) so viele Versuche zu erstellen, wie es Stimuli gibt und ii.) automatisch zuzuordnen.
  • Dann machen wir dasselbe für die andere Bedingung, indem wir das Objekt unter dieser Bedingung auswählen und den Prozess wiederholen.

An diesem Punkt haben wir eine einfache Studie mit zwei Arten von Stimuli. Nachdem wir die Ereignisse eingerichtet haben (nächster Abschnitt), wird die endgültige Aufgabe so aussehen, dass ein Klick auf das Bild die Studie zum nächsten Versuch weiterleitet, während EEG-Marker gesendet werden.

Ereignisse einrichten

Nun zu den Ereignissen, die Hauptidee ist, dass wir einen EEG-Marker senden möchten, basierend darauf, welche Art / Kategorie von Bild der Teilnehmer sieht, sowie einen Marker dafür, wann das Bild angeklickt wurde.

Ereignis 1: Marker (Rahmen-/Stimulusbeginn) an EEG senden

Für dieses erste Ereignis möchten wir, dass das EEG Folgendes weiß: a) wann der Rahmen mit den Stimuli beginnt, b.) aus welcher Bildkategorie der Stimulus stammt (d.h. bouba oder kiki).

AUSLÖSER

  • Trial and Frame Trigger → On Frame Start

Auswahl von 'Frame Start' als Auslöser für den Zeitpunkt, an dem der erste EEG-Marker gesetzt werden sollte.
Auswahl von 'Frame Start' als Auslöser für den Zeitpunkt, an dem der erste EEG-Marker gesetzt werden sollte.

AKTION
Da wir zwischen Bedingungen wechseln möchten, benötigen wir eine If/Then-Aktion im Editor:

  • Control Action → Requirement Action (If…Then)

Um die erste Bedingung zu spezifizieren, rufen wir die entsprechende Faktorvariable auf und setzen sie gleich 'bouba.' Dies geschieht durch die folgenden Schritte im Editor:

  • Klicken Sie auf + Requirement
  • Im linken Bleistiftsymbol: Variable → Auswahl der Variable und wählen Sie factor1_tg1_task0
  • Im rechten Bleistiftsymbol: Constant Value → String → geben Sie den String bouba ein

Hinweis: Im Prozess der Experimentgestaltung sollten Sie Ihren Faktoren einzigartige und beschreibende Namen geben. Im obigen Beispiel haben wir den Standardnamen factor1_tg1_task0 verwendet, aber für strukturell solide Designs sollten Sie Ihren Faktoren genauere Namen geben, die die Kategorie widerspiegeln (wie ‘Form’).

Sobald diese IF-Bedingung erfüllt ist, möchten wir, dass das Folgendes passiert:

  • Add Action
  • API Actions → Send LabStreamingLayer Marker
  • Wählen Sie den Stream aus, der zuvor unter den „Studieneinstellungen“ zu diesem Zweck erstellt wurde (d.h. den labvanced_stream_1)
  • Zu sendender Wert: Constant Value → String → geben Sie das Wort bouba ein

Spezifizierung des LSL-Markers basierend auf dem Bildstimulus-Bedingungstyp.
Spezifizierung des LSL-Markers basierend auf dem Bildstimulus-Bedingungstyp.

Wir wiederholen den Prozess für die kiki-Bedingung, indem wir die Option + Add Else If Case auswählen.

Workflow-Tipp: Anstatt ein zweites Ereignis für die ‘kiki’-Bedingung zu erstellen. Kopieren Sie einfach das obige Ereignis (mit dem Duplizieren-Symbol oben neben dem Wort `IF`) und ändern Sie einfach die Strings, um mit dem anderen Faktor oder Stimulus-Typ übereinzustimmen, d.h. ‘kiki’.

ZUSAMMENFASSUNG
Bis zu diesem Punkt haben wir Labvanced eingerichtet, um einen EEG-Marker (basierend auf dem Stimulusformtyp) zu senden, sobald der Rahmen beginnt, d.h. sobald der Stimulus präsentiert wird.

Ereignis 2: Teilnehmerantwort

Nun wollen wir einen Marker senden und etwas messen, das dynamischer ist, d.h. wann das Bild angeklickt wurde. Hier können wir auch die Reaktionszeit quantifizieren und zum nächsten Trial übergehen (alles basierend auf dem Mausklick auf das Bild).

Wir können ein weiteres Ereignis erstellen, sodass, wenn das Bild angeklickt wird, das EEG den Marker „Klick“ erhält.

AUSLÖSER

  • User Input → Mouse Trigger
  • + Add Target → Auswahl des Bildobjekts (image_1)

Auswahl eines Bildklicks als Auslöser dafür, wann der zweite Marker erstellt werden sollte.
Auswahl eines Bildklicks als Auslöser dafür, wann der zweite Marker erstellt werden sollte.

AKTION 1 (Senden des 'Klick'-Markers an EEG)
Erstellen Sie einen neuen Marker durch:

  • API Actions → Send LabStreamingLayer Marker
  • LSL Stream: wählen Sie labvanced_stream_1
  • Wert zu senden: Constant Value → String → geben Sie das Wort Klick ein

AKTION 2 (Aufzeichnen der Reaktionszeit)
Verwenden Sie die Set / Record Variable und erstellen Sie eine Variable, die skalär und numerisch ist, die die Zeit des Mausklicks vom Rahmenbeginn aufzeichnet, indem Sie:

  • + Action
  • Variable Actions → Set / Record Variable
  • Auswahl (grüner Knopf) → +New Variable (oben rechts)
    • Name: RT
    • Format: Skalär
    • Datentyp: Numerisch
    • → ‘OK’
  • Bleistiftsymbol → Trigger (Mouse) → Trigger Time (From Frame Onset)

AKTION 3 (Sprung zum nächsten Versuch)

  • + Action
  • Jump Actions → Jump To → Next Trial

Folgen Sie diesem Verfahren, wird Ihr Ereignis so aussehen:

Drei Aktionen sind zu setzen, die beim Mausklick auf das Zielbild stattfinden: i.) den Marker an das EEG senden, die Reaktionszeit quantifizieren und zum nächsten Versuch übergehen.
Drei Aktionen sind zu setzen, die beim Mausklick auf das Zielbild stattfinden: i.) den Marker an das EEG senden, die Reaktionszeit quantifizieren und zum nächsten Versuch übergehen.

ZUSAMMENFASSUNG
Das obige Ereignis, mit dem Auslöser des Klicks auf ein spezifisches Bild, hat zur Folge, dass folgende Aktionen durchgeführt werden: ein Marker „Klick“ wird direkt an das EEG gesendet, eine Reaktionszeit (vom Rahmenbeginn) wird in Millisekunden aufgezeichnet und in der Variable ‚RT‘ gespeichert, und das Experiment wechselt zum nächsten Versuch.

An diesem Punkt ist eine sehr einfache Studie mit einer Struktur und den Fähigkeiten, Marker an ein EEG zu senden, eingerichtet!

  • Zwei verschiedene Stimulus-Typen
  • EEG erhält Marker basierend auf:
    • angezeigtem Stimulus-Typ
    • wann der 'Klick' stattfand
  • Die Studie zeichnet die Reaktionszeit auf und hat eine Navigation eingerichtet

LOKALMODUS
In der Desktop-App zeigt das Umschalten zurück in den ‘lokalen’ Modus, dass eine Synchronisation stattfindet.

Die Studie wird lokal in der Desktop-App geladen und aktualisiert.
Die Studie wird lokal in der Desktop-App geladen und aktualisiert.

Nach ein paar Sekunden wurde die aktualisierte Studie heruntergeladen, sodass alle online vorgenommenen Änderungen in der lokalen Version reflektiert werden.

Nun kommen wir zu einer EEG-Aufzeichnungs Sitzung.

EEG-Datenaufzeichnungssitzung

Um eine EEG-Datenaufzeichnungssitzung zu starten, benötigen wir natürlich die Labvanced-Studie, die wir oben erstellt haben (mit ihrer Struktur und den Ereignissen zum Senden der Marker). Aber wir benötigen auch einige ergänzende Programme (kostenlos), um das EEG mit Markern zu versehen, sowie die Tools, um die Daten zu visualisieren und möglicherweise zu analysieren.

EEG-Ausrüstung (Muse 2 EEG)

In dieser Demo verwenden wir ein Muse 2 EEG Wearable-Headset. Mit dem BlueMuse (kostenlos) Programm geöffnet (für das Muse 2 EEG-Headset), klicken wir auf die Option 'Start Streaming'. Ein zweites Fenster wird angezeigt, in dem 4 verschiedene Streams angezeigt werden: den EEG-Kanal, das Beschleunigungsmesser, das Gyroskop und so weiter, sowie deren jeweilige Abtastraten.

Starten des Streamings in BlueMuse (rechtes Fenster) und die Streams erscheinen (linkes Fenster).
Starten des Streamings in BlueMuse (rechtes Fenster) und die Streams erscheinen (linkes Fenster).

Diese beiden Fenster können jetzt minimiert werden.

Lab Recorder

Das nächste Tool, das wir verwenden werden, ist der Lab Recorder (kostenlos), der die Software zur Aufzeichnung von LSL ist, die Sie verwenden können, um den LSL-Datenstream, den Sie gerade verbunden haben, aufzuzeichnen und ihn in einer .XDF-Datei zu speichern.

Wenn Sie Ihr EEG-System gestartet und den LSL-Stream gestartet haben, werden sie hier angezeigt. An diesem Punkt hat der Labvanced-Stream noch nicht begonnen, da die Studie noch nicht gestartet wurde. Die Studie muss also gestartet werden, damit dieser Stream ebenfalls startet.

Der obere Stream (in rot) ist nicht gestartet, weil die Studie noch nicht begonnen hat. Das Starten der Studie macht diesen Stream grün. Auf der rechten Seite können Sie angeben, wo die Daten gespeichert werden sollen.
Der obere Stream (in rot) ist nicht gestartet, weil die Studie noch nicht begonnen hat. Das Starten der Studie macht diesen Stream grün. Auf der rechten Seite können Sie angeben, wo die Daten gespeichert werden sollen.

Sobald die Studie gestartet ist (d.h. öffnen Sie die Studie in Labvanced und drücken Sie Record). Sobald die Studie gestartet ist und im Wartelobby ist, können Sie auf die Schaltfläche ‘aktualisieren’ im Lab Recorder klicken und Sie sehen, dass der Labvanced-Stream jetzt bereit ist.

Hinweis: Auf der rechten Seite des Lab Recorder-Programms können Sie den Dateipfad angeben und auswählen, wo die Datenstream-Datei mit den kombinierten Daten aus dem Labvanced-Stream und dem EEG sowie möglicherweise anderen Zeitreihenquellen lokal auf Ihrem Computer gespeichert werden soll.

Klicken Sie jetzt auf Start im Lab Recorder-Programm (obere linke Ecke), um die Aufzeichnung zu starten.

Brain Vision

Um etwas zu sehen, d.h. den Live-Feed des LSL-Streams, müssen Sie ein weiteres Tool wie den Brain Vision Analyzer (kostenlos) von Brain Products starten, das wir hier verwenden, das eine schöne Visualisierung dessen bietet, was aufgezeichnet wird.

Wenn Sie auf Connect klicken, sollten alle Streams hier angezeigt werden. Sie können auch auf den Labvanced-Stream klicken und dann OK klicken.

Jetzt können wir das Experiment beginnen und mit der Aufzeichnung und Visualisierung der EEG-Daten beginnen!

Vorschau des EEG-Livestreams in Brain Vision.
Vorschau des EEG-Livestreams in Brain Vision.

Wenn es einen Klick oder eine Antwort in der Studie gibt, werden die Marker auch im EEG-Stream am unteren Rand des Brain Vision-Programms angezeigt.

Der 'Klick'-Marker und der Bedingungsmarker sind auf dieser Skala nicht so deutlich. Das liegt daran, dass Millisekunden nach dem Klicken auf das Bild der Bedingungsmarker für den neuen Versuch gesetzt wird, sodass sie hier zusammen erscheinen und sich visuell überlappen.

Die in Labvanced erstellten Marker erscheinen unten, basierend auf dem Bedingungstyp und dem Klick.
Die in Labvanced erstellten Marker erscheinen unten, basierend auf dem Bedingungstyp und dem Klick.

Insgesamt funktioniert es ganz gut!

Beenden der Aufzeichnung

Nun ist die Studie abgeschlossen. Wir können die Datenaufzeichnung stoppen, indem wir auf Stop im Lab Recorder-Programm klicken. Es dauert einige Sekunden, bis die Datei erstellt und gespeichert wird.

EEG-Datenanalyse

EEGLAB Standalone

Das Letzte, was wir zeigen möchten, ist, wie man EEG-Daten analysiert. Natürlich gibt es viele Möglichkeiten, EEG-Daten zu analysieren, z.B. in Python oder in R oder mit MatLab.

Wir werden EEGLAB Standalone (kostenlos) von der University of California - San Diego (UCSD) verwenden, die kein MatLab oder Lizenz benötigt, sondern nur eine Laufzeitumgebung, sodass Sie die Datenaufzeichnungen direkt inspizieren können.

Mit den EEGLAB Standalone-Optionen können alle Plugins, wie z.B. diejenigen zum Laden von .XDF-Dateien (die das Ausgabeformat aus dem Lab Recorder sind), direkt geladen werden.

Wählen Sie unter dem Datei-Menü den Punkt Daten importieren → Mit EEGLAB-Funktionen und -Plugins → von .XDF zu . XDFZ Datei und suchen Sie die Datei aus dem Lab Recorder im vorher angegebenen lokalen Ordner, um gespeichert zu werden. Laden Sie sie dann hoch. Dialogfelder erscheinen, um den Import und den Datensatz zu benennen.

Sobald die Datei geöffnet ist, erscheinen Informationen zu den Frames pro Epoch sowie die Anzahl der Ereignisse usw.

Vorschau des Datensatzes [test_1] aus EEGLAB Standalone.
Vorschau des Datensatzes [test_1] aus EEGLAB Standalone.

Wir können zu Plot → Kanal Daten (scrollen) gehen, was einen schönen Überblick über die aufgezeichneten Daten bietet, und Sie können durch die Daten navigieren.

Öffnen der Kanal Daten und Durchlaufen der Aufzeichnungssitzung. Marker sind oben in Pink und Grün aufgelistet.
Öffnen der Kanal Daten und Durchlaufen der Aufzeichnungssitzung. Marker sind oben in Pink und Grün aufgelistet.

Wir werden jetzt keine Analyse durchführen, aber von hier aus können Sie interessante Operationen mit Zeitstempeln und Epochendatensätzen durchführen. Es gibt schöne Materialien und Tutorials von EEGLAB, die eine Vielzahl von Themen abdecken.

Zum Beispiel können Sie unter dem Menüpunkt Plot viele Optionen sehen. Dies ist eine Art Spektrogramm der Aufzeichnung.

Ein Beispiel für eine Figur, die mit EEGLAB Standalone basierend auf den in dieser Demo aufgezeichneten Daten erstellt wurde.
Ein Beispiel für eine Figur, die mit EEGLAB Standalone basierend auf den in dieser Demo aufgezeichneten Daten erstellt wurde.

Wir hoffen, das war nützlich und hat gezeigt, wie schnell eine EEG-Studie mit der Labvanced-Desktop-App eingerichtet werden kann. Vielen Dank!

Prev
Gamepad / Joystick Controller- Grundlegende Einrichtung
Next
Gruppenausgleich zwischen Subjekten und Variablen Einrichtung