2012-04-14 3 views
2

Ich habe versucht, einige Antworten auf meine Fragen vom Emotiv Support Team und der Community zu bekommen, aber niemand hat geantwortet, also dachte ich, dass einige von Ihnen die Emotiv API benutzen.Emotiv Epoc Datenerfassung

Ich habe eine harte Zeit herauszufinden, wie der Rohdatenerfassungsprozess funktioniert. Ich lese alle Themen, die ich über die EEG-Rohdatenerfassung mit dem Emotiv-Headset finden konnte, aber sie haben nicht geholfen.

hier sind meine Fragen:

  • Ist es irgendwie möglich 1 Probe pro Kanal zu erwerben?

In meiner Anwendung gibt es eine Timer-Funktion, die genau alle 1ms aufruft. Und ich möchte eine andere Funktion aufrufen, wenn der Puffer 1 Probe pro Kanal enthält.

  • Speichert die Funktion EE_DataUpdateHandle() alle abgerufenen Beispiele beim Aufruf?

abgefragt ich die EE_DataGetNumberOfSample() Funktion, um eine andere Funktion aufzurufen, wenn der Puffer 1 Probe pro Kanal, aber die EE_DataGetNumberOfSample() Funktion gibt nie 1 Probe. Liegt das daran, dass EE_DataUpdateHandle() alle anderen Beispiele ausgibt, wenn es aufgerufen wird? Ich dachte, wenn die EE_DataUpdatedHandle() - Funktion aufgerufen wird, zeigt es auf die neuen Daten richtig? -> Bedeutet dies, dass alle zuvor gesammelten Daten nicht mehr zugänglich sind? Gibt es keine Funktion, die EDK_OK nur zurückgibt, wenn 1 Sample pro Kanal zum Abrufen bereit ist? So kann ich jede ms in meiner Timer-Funktion abfragen und wenn es EDK_OK zurückgibt, rufe ich EE_DataGet auf und es gibt 1 Sample pro Kanal zurück.

  • ich gelesen, dass Sie vorschlagen Sl EEP() verwenden, um den Puffer vor dem Aufruf das EE_DataUpdateHandle gefüllt zu bekommen() denken Sie, ist es möglich, nur in meiner Timer-Funktion zählt 1/128 Sekunden, um zum Abrufen 1 Probe pro Kanal? Ich bin wirklich nicht sicher, wie das geht ... nach etwa 7,8 ms sollte es 1 Sample pro Kanal im Puffer geben, oder? Was passiert, wenn ich die Funktion EE_DataGet alle 8ms anrufe, da meine Timerfunktion nur alle 1ms aufgerufen wird?

Ok, ich hoffe, dass Sie einige Vorschläge haben, wie Sie mein Problem lösen können!

Cheers, Dominik

Antwort

1

OpenVibe ist Open Source und kommt mit Emotiv-Treiber, die Sie überprüfen können.

0

Ich denke, es wäre nicht möglich, nur 1 Probe von einem Kanal auf einmal zu erhalten, außer emotiv ihr Programmiermodell zu ändern.

Die aktuelle emtiviv-API-Bibliothek scheint Daten vom Headset zu erfassen und in einem Datenpuffer zu speichern, während die Client-Anwendung nur Daten aus dem Puffer mit EE_DataGet abfragen kann.

Wahrscheinlich würde der Puffer nicht mit nur einem Dateneintrag von Emotiv Bibliothek gefüllt werden. Wenn dies nicht der Fall ist, können Sie so schnell wie möglich Abfragen durchführen (schneller als Datenerfassung), um zu sehen, ob Sie nur ein Beispiel mit EE_DataGet abrufen können (und dann EE_DataUpdateHandle aufrufen, um Puffer für neue Probe zu bereinigen).

Verwandte Themen