Exemplo n.º 1
0
 def __generate_single_trial(self, label_nr, samples=1200):
   t0 = 0.5*samples
   rec = Recording(self.number_of_electrodes, samples)
   for i in range(self.number_of_electrodes):
     for t in range(samples):
       fraction_of_signal = 1.0/(1+ math.exp(-(t-t0)))
       rec.set_data(i, t, (1.0-fraction_of_signal)*np.random.normal(0.0, 0.1) + fraction_of_signal*(np.random.normal(0.0, 0.2*(label_nr+1)) + 0.1*math.cos(t*label_nr)))
       rec.set_label(t, label_nr if t >= t0 else 0)
   return rec
 def load_recordings(self):
   try:
     data = np.loadtxt( self.filename )
   except IOError as e:
     print "I/O error({0}): {1}".format(e.errno, e.strerror)
   
   samples = data.size/3 # a single recording
   # samples = round(samples*0.03) # SPEEDUP HACK
   nr_electrodes = data[0].size - 1 # first column is labels
   
   rec = Recording(nr_electrodes, samples)
   sample_index = 0
   for t_vec in data[:samples]:
     rec.set_label(sample_index, round(t_vec[0]))
     for e in range(nr_electrodes):
       rec.set_data(e, sample_index, t_vec[1+e])
     sample_index += 1
   
   return [rec]