Dateien hochladen nach „“

This commit is contained in:
Nicole Weber 2022-07-05 16:32:26 +00:00
parent 6032ddfa6b
commit 8d132a63d2
4 changed files with 22 additions and 13 deletions

View File

@ -5,6 +5,7 @@ Das Visuelle Model steuert den Ablauf der aufrufe der Openvibe Funktionen fuer d
from subprocess import * from subprocess import *
from threading import Thread from threading import Thread
import time import time
import re
from UIModell import Modell from UIModell import Modell
@ -132,19 +133,20 @@ class ModellVisuell(Modell):
process = Popen(command, stdout=PIPE, universal_newlines=True) process = Popen(command, stdout=PIPE, universal_newlines=True)
self.openVibeAktiv = True self.openVibeAktiv = True
counter = 0 counter = 0
acc = 0
while True: while True:
output = process.stdout.readline() output = process.stdout.readline()
print(output.strip()) print(output.strip())
x = output.find("aka Classifier trainer") x = output.find("aka Classifier trainer")
accuracy = output.find("Training set accuracy is") accuracy = output.find("Cross-validation test accuracy is ")
y = output.find("Error") y = output.find("Error")
if(x != -1): if(x != -1):
counter = counter +1 counter = counter +1
#counter = 18 #counter = 18
if(counter >= 17): if(counter >= 17):
print("Training finished") print("Training finished")
self.controller.addInfoText('Beenden des Training\n') self.controller.addInfoText('Beenden des Training (' + acc + ')\n')
process.terminate() process.terminate()
self.controller.stop("save") self.controller.stop("save")
break break
@ -154,8 +156,13 @@ class ModellVisuell(Modell):
self.controller.addInfoText("Fehler beim Classifier Training aufgetaucht\n") self.controller.addInfoText("Fehler beim Classifier Training aufgetaucht\n")
process.terminate() process.terminate()
break break
elif(accuracy != -1): if(accuracy != -1):
print("ACCURACY" + output) ansi_escape = re.compile(r'\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])')
test = output.encode("windows-1252").decode("utf-8")
i = len("Cross-validation test")
acc_s = test[accuracy+i:accuracy+i+41].strip()
acc = ansi_escape.sub('', acc_s)
print(acc)
if not self.aktiv: if not self.aktiv:
print("stop") print("stop")
break break

17
dll.cpp
View File

@ -19,10 +19,10 @@ extern "C"{
string pathSpatialCFG_visuell = "Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-spatial-filter.cfg"; string pathSpatialCFG_visuell = "Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-spatial-filter.cfg";
string PATH_DEFAULT_visuell = "Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets"; string PATH_DEFAULT_visuell = "Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets";
string fileCopySpellingVisuell = "p300-visual-1-acquisition.xml"; string fileCopySpellingVisuell = "p300-xdawn-1-acquisition.xml";
string filefreeSpellingVisuell = "p300-visual-4-online.xml"; string filefreeSpellingVisuell = "p300-xdawn-4-online.xml";
string fileXDawnTrainingVisuell = "p300-visual-2-train-xDAWN.xml"; string fileXDawnTrainingVisuell = "p300-xdawn-2-train-xDAWN.xml";
string fileClassifierTrainingVisuell = "p300-visual-3-train-classifier.xml"; string fileClassifierTrainingVisuell = "p300-xdawn-3-train-classifier.xml";
//taktil //taktil
//------------------------------------------------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------------------------------------------------
@ -70,7 +70,7 @@ extern "C"{
char* getCommandFreespellingVisuell() char* getCommandFreespellingVisuell()
{ {
string s = ""; string s = "";
s = s.append(command).append(" ").append(PATH_OV).append(" ").append(config).append(" ").append(PATH_FILES_ConfigFile).append(" ").append( play).append(" ").append(PATH_FILES_Visual).append(filefreeSpellingVisuell).append(" ").append(nogui); s = s.append(command).append(" ").append(PATH_OV).append(" ").append( play).append(" ").append(PATH_FILES_Visual).append(filefreeSpellingVisuell).append(" ").append(nogui);
char char_array[s.length()+1]; char char_array[s.length()+1];
strcpy(char_array, s.c_str()); strcpy(char_array, s.c_str());
char* s_convert = char_array; char* s_convert = char_array;
@ -90,7 +90,7 @@ extern "C"{
char* getCommandCopyspellingVisuell() char* getCommandCopyspellingVisuell()
{ {
string s = ""; string s = "";
s = s.append(command).append(" ").append(PATH_OV).append(" ").append(config).append(" ").append(PATH_FILES_ConfigFile).append(" ").append( play).append(" ").append(PATH_FILES_Visual).append(fileCopySpellingVisuell).append(" ").append(nogui); s = s.append(command).append(" ").append(PATH_OV).append(" ").append( play).append(" ").append(PATH_FILES_Visual).append(fileCopySpellingVisuell).append(" ").append(nogui);
char char_array[s.length()+1]; char char_array[s.length()+1];
strcpy(char_array, s.c_str()); strcpy(char_array, s.c_str());
char* s_convert = char_array; char* s_convert = char_array;
@ -110,7 +110,7 @@ extern "C"{
char* getCommandXDawn_visuell() char* getCommandXDawn_visuell()
{ {
string s = ""; string s = "";
s = s.append(command).append(" ").append(PATH_OV).append(" ").append(config).append(" ").append(PATH_FILES_ConfigFile).append(" ").append( playFast).append(" ").append(PATH_FILES_Visual).append(fileXDawnTrainingVisuell).append(" ").append(nogui); s = s.append(command).append(" ").append(PATH_OV).append(" ").append( playFast).append(" ").append(PATH_FILES_Visual).append(fileXDawnTrainingVisuell).append(" ").append(nogui);
char char_array[s.length()+1]; char char_array[s.length()+1];
strcpy(char_array, s.c_str()); strcpy(char_array, s.c_str());
char* s_convert = char_array; char* s_convert = char_array;
@ -120,7 +120,7 @@ extern "C"{
char* getCommandClassifier_visuell() char* getCommandClassifier_visuell()
{ {
string s = ""; string s = "";
s = s.append(command).append(" ").append(PATH_OV).append(" ").append(config).append(" ").append(PATH_FILES_ConfigFile).append(" ").append( playFast).append(" ").append(PATH_FILES_Visual).append(fileClassifierTrainingVisuell).append(" ").append(nogui); s = s.append(command).append(" ").append(PATH_OV).append(" ").append( playFast).append(" ").append(PATH_FILES_Visual).append(fileClassifierTrainingVisuell).append(" ").append(nogui);
char char_array[s.length()+1]; char char_array[s.length()+1];
strcpy(char_array, s.c_str()); strcpy(char_array, s.c_str());
char* s_convert = char_array; char* s_convert = char_array;
@ -136,6 +136,7 @@ extern "C"{
char* s_convert = char_array; char* s_convert = char_array;
return s_convert; return s_convert;
} }
char* getCommandStartAquisitionServer() char* getCommandStartAquisitionServer()
{ {

BIN
dll.so

Binary file not shown.

View File

@ -6,3 +6,4 @@ cd ~/bci/
chmod +rw log.txt chmod +rw log.txt
./gui >> log.txt ./gui >> log.txt