def __init__(self): self.names = [] self.settings = [] self.settings_val = [] # ---Importation des donnees du .mat--- # data_filename = 'U001ai.mat' data_folder = 'SSVEP_Training/Dataset/' data_path = data_folder + data_filename data = loadmat(data_path) success = 0 i = 0 verbose = False self.registered_patients = [] self.patients = [] patients = [] suc_rate = [] self.success_by_freq = [0, 0, 0, 0, 0] rank = 1 average_success = [] for i in range(rank): average_success.append([0]) for filename in os.listdir(data_folder): if filename[-5] != 'x': verbose = False if filename == 'U005aii.mat': verbose = True if filename[-6:-4] == 'ii': seq = 1 else: seq = 0 data = loadmat(data_folder + filename) i += 1 if filename[:5] in self.registered_patients: patient_idx = self.registered_patients.index(filename[:5]) self.patients[patient_idx].addNewData(data, seq) for i in range(rank): suc_rate = self.patients[ self.registered_patients.index( filename[:5])].successRate(i + 1) average_success[i] = np.add(average_success[i], suc_rate) # print("Patient {}, success rate : {} %".format(filename, suc_rate)) else: self.registered_patients.append(filename[:5]) self.patients.append( cl.Patient(filename[:5], data, seq, rank)) for i in range(rank): n = average_success[i][0] n /= len(self.registered_patients) print("Sucess rate rank {} : {}%".format(i + 1, n)) self.successRate() self.frame = GUI.MainApplication(self.registered_patients, self.patients[0].getChannelsName(), self.success_by_freq) self.window = self.frame.frames[GUI.MainWindow] LW = self.frame.frames[GUI.MainWindow].lengthw mwindow_size = str(1260 + LW) + 'x' + str(350) self.frame.geometry(mwindow_size) self.frame.mainloop() self.guiLoop()