def test1(): bl1 = generate_block_for_sorting( nb_unit=2, duration=3. * pq.s, nb_segment=2, ) oebl1 = OEBase.from_neo(bl1, dbinfo.mapped_classes, cascade=True) oebl1.save() bl2 = generate_block_for_sorting( nb_unit=3, duration=2.5 * pq.s, nb_segment=1, ) oebl2 = OEBase.from_neo(bl2, dbinfo.mapped_classes, cascade=True) oebl2.save() oebl3 = merge_blocks([oebl1, oebl2], ) print 'name', oebl3.name #~ print oebl3.recordingchannelgroups for rcg in oebl3.recordingchannelgroups: print '#' * 3 print rcg for rc in rcg.recordingchannels: print rc
def test1(): bl1 = generate_block_for_sorting(nb_unit = 2, duration = 3.*pq.s, nb_segment = 2, ) oebl1 = OEBase.from_neo(bl1, dbinfo.mapped_classes, cascade =True) oebl1.save() bl2 = generate_block_for_sorting(nb_unit = 3, duration = 2.5*pq.s, nb_segment = 1, ) oebl2 = OEBase.from_neo(bl2, dbinfo.mapped_classes, cascade =True) oebl2.save() oebl3 = merge_blocks([oebl1, oebl2], ) print 'name', oebl3.name #~ print oebl3.recordingchannelgroups for rcg in oebl3.recordingchannelgroups: print '#'*3 print rcg for rc in rcg.recordingchannels: print rc
url = 'sqlite:///test_spikesorting.sqlite' dbinfo = open_db(url = url, use_global_session = True, myglobals = globals(),) session = dbinfo.Session() oebl = session.query(Block).first() if oebl is None: print 'do not exists: so create' bl = generate_block_for_sorting(nb_unit = 6, duration = 30.*pq.s, noise_ratio = 0.2, nb_segment = 2, ) #~ for s, seg in enumerate(bl.segments): #~ for k, sptr in enumerate(seg.spiketrains): #~ print 's', s, 'k', k, sptr.size print bl.recordingchannelgroups oebl = OEBase.from_neo(bl, dbinfo.mapped_classes, cascade =True) print oebl.recordingchannelgroups oebl.save() else: print 'exist : transform to neo' bl = oebl.to_neo(cascade = True) rcg = bl.recordingchannelgroups[0] sps = spikesorter = SpikeSorter(rcg) if True: #~ spikesorter.ButterworthFilter( f_low = 200.) #~ spikesorter.MedianThresholdDetection(sign= '-', median_thresh = 6.,) #~ spikesorter.AlignWaveformOnPeak(left_sweep = 1*pq.ms , right_sweep = 2*pq.ms, sign = '-') #~ spikesorter.PcaFeature(n_components = 4)
) session = dbinfo.Session() oebl = session.query(Block).first() if oebl is None: print 'do not exists: so create' bl = generate_block_for_sorting( nb_unit=6, duration=30. * pq.s, noise_ratio=0.2, nb_segment=2, ) #~ for s, seg in enumerate(bl.segments): #~ for k, sptr in enumerate(seg.spiketrains): #~ print 's', s, 'k', k, sptr.size print bl.recordingchannelgroups oebl = OEBase.from_neo(bl, dbinfo.mapped_classes, cascade=True) print oebl.recordingchannelgroups oebl.save() else: print 'exist : transform to neo' bl = oebl.to_neo(cascade=True) rcg = bl.recordingchannelgroups[0] sps = spikesorter = SpikeSorter(rcg) if True: #~ spikesorter.ButterworthFilter( f_low = 200.) #~ spikesorter.MedianThresholdDetection(sign= '-', median_thresh = 6.,) #~ spikesorter.AlignWaveformOnPeak(left_sweep = 1*pq.ms , right_sweep = 2*pq.ms, sign = '-') #~ spikesorter.PcaFeature(n_components = 4) spikesorter.CombineFeature(use_peak=True,