Dateien hochladen nach „“
This commit is contained in:
parent
91a01ce030
commit
81d3df4fd4
@ -91,9 +91,9 @@ class Modell(Thread):
|
||||
z = z.strip()
|
||||
items = z.split(' ')
|
||||
pid = items[0]
|
||||
|
||||
#kill -TERM veranlasst dem Prozess sich selbst zu beenden (nicht erzwungen)
|
||||
Popen(["kill", "-TERM", str(pid)], stdout=PIPE).communicate()
|
||||
if pid is not 0:
|
||||
#kill -TERM veranlasst dem Prozess sich selbst zu beenden (nicht erzwungen)
|
||||
Popen(["kill", "-TERM", str(pid)], stdout=PIPE).communicate()
|
||||
|
||||
|
||||
print("killed openvibe-acquisitionserver")
|
||||
|
@ -7,6 +7,7 @@ from subprocess import *
|
||||
from threading import Thread
|
||||
import time
|
||||
from UIModell import *
|
||||
import re
|
||||
|
||||
class ModellTaktil(Modell):
|
||||
|
||||
@ -62,7 +63,7 @@ class ModellTaktil(Modell):
|
||||
while True:
|
||||
output = process.stdout.readline()
|
||||
print(output.strip())
|
||||
x = output.find("schlagwort?")
|
||||
x = output.find("Application terminated")
|
||||
y = output.find("Error")
|
||||
if(x != -1):
|
||||
print("Training finished")
|
||||
@ -82,16 +83,18 @@ class ModellTaktil(Modell):
|
||||
break
|
||||
|
||||
|
||||
self.controller.stop()
|
||||
#self.controller.stop()
|
||||
|
||||
def trainXDawn(self):
|
||||
'''--------------------------------------------------------------------------------------------------
|
||||
Holt aus der shared Library die Befehle und startet das XDawnTraining. Reagiert auf Error oder
|
||||
die Ausgabe das das Training beendet wurde. Bei Beenden startet es das ClassifierTraining, bei Error wird der Vorgang gestoppt.
|
||||
'''
|
||||
print("start training Xdawn")
|
||||
print("Start training Xdawn")
|
||||
self.controller.addInfoText('Starten des xDawn-Trainings -- ')
|
||||
command = self.dll.getCommandXDawn_taktil().split(" ")
|
||||
command = self.dll.getCommandXDawn_taktil() #.split(" ")
|
||||
print("Command: " + command)
|
||||
command = command.split(" ")
|
||||
process = Popen(command, stdout=PIPE, universal_newlines=True)
|
||||
|
||||
self.openVibeAktiv = True
|
||||
@ -117,7 +120,7 @@ class ModellTaktil(Modell):
|
||||
print("stop")
|
||||
break
|
||||
|
||||
self.controller.stop()
|
||||
#self.controller.stop()
|
||||
|
||||
#self.controller.filterClassic()
|
||||
|
||||
@ -135,18 +138,19 @@ class ModellTaktil(Modell):
|
||||
|
||||
self.openVibeAktiv = True
|
||||
counter = 0
|
||||
acc = 0
|
||||
while True:
|
||||
output = process.stdout.readline()
|
||||
print(output.strip())
|
||||
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")
|
||||
if(x != -1):
|
||||
counter = counter +1
|
||||
#counter = 18
|
||||
if(counter >= 17):
|
||||
print("Training finished")
|
||||
self.controller.addInfoText('Training beendet\n')
|
||||
self.controller.addInfoText('Training beendet (' + acc + ')\n')
|
||||
process.terminate()
|
||||
self.controller.stop("save")
|
||||
break
|
||||
@ -156,8 +160,18 @@ class ModellTaktil(Modell):
|
||||
self.controller.addInfoText("Fehler beim Classifier Training aufgetaucht\n")
|
||||
process.terminate()
|
||||
break
|
||||
elif(accuracy != -1):
|
||||
print("ACCURACY" + output)
|
||||
if(accuracy != -1):
|
||||
#print("Output:")
|
||||
#print(output)
|
||||
ansi_escape = re.compile(r'\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])')
|
||||
test = output.encode("windows-1252").decode("utf-8")
|
||||
i = len("Cross-validation test")
|
||||
#print(output[accuracy:accuracy+i+12])
|
||||
#print(test[accuracy+i+12:accuracy+i+40].strip())
|
||||
acc_s = test[accuracy+i:accuracy+i+41].strip()
|
||||
acc = ansi_escape.sub('', acc_s)
|
||||
print(acc)
|
||||
|
||||
if not self.aktiv:
|
||||
print("stop")
|
||||
break
|
||||
@ -180,7 +194,7 @@ class ModellTaktil(Modell):
|
||||
output = process.stdout.readline()
|
||||
print(output.strip())
|
||||
y = output.find("Error")
|
||||
x = output.find("Schlagwort")
|
||||
x = output.find("Application terminated")
|
||||
if(x != -1):
|
||||
print("End Spelling")
|
||||
process.terminate()
|
||||
|
@ -9,9 +9,11 @@ werden koennen
|
||||
try:
|
||||
from Tkinter import * #Fuer Python 2.7
|
||||
import tkFileDialog as fd
|
||||
print("python2.7")
|
||||
except ImportError: #Fuer Python >3
|
||||
from tkinter import *
|
||||
from tkinter import filedialog as fd
|
||||
print("python >3")
|
||||
|
||||
from UIController import *
|
||||
|
||||
@ -29,8 +31,8 @@ class View(Tk):
|
||||
self.controller = c
|
||||
self.PATH_DEFAULT = path_default
|
||||
self.title("Visuelles Buchstabieren")
|
||||
self.h = 1000
|
||||
self.w = 2000
|
||||
self.h = self.winfo_screenheight()
|
||||
self.w = self.winfo_screenwidth()
|
||||
self.geometry('{}x{}'.format(self.w,self.h))
|
||||
self.faktor = [(0.073),(0.727), (0.2)]
|
||||
#self.resizable(height=False, width= False)
|
||||
@ -80,11 +82,11 @@ class View(Tk):
|
||||
Stoppt alle laufenden Threads und schliesst OpenVibe und den Aquisitionserver bevor sich das Fenster
|
||||
schliesst
|
||||
'''
|
||||
print("closing")
|
||||
self.controller.commandStop()
|
||||
self.controller.stopAcquisitionServer()
|
||||
print("destroy")
|
||||
try:
|
||||
print("closing")
|
||||
self.controller.commandStop()
|
||||
self.controller.stopAcquisitionServer()
|
||||
print("destroy")
|
||||
self.dialog.destroy()
|
||||
except:
|
||||
pass
|
||||
|
Loading…
x
Reference in New Issue
Block a user