本文整理匯總了Python中mne.realtime.RtEpochs.next方法的典型用法代碼示例。如果您正苦於以下問題:Python RtEpochs.next方法的具體用法?Python RtEpochs.next怎麽用?Python RtEpochs.next使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類mne.realtime.RtEpochs
的用法示例。
在下文中一共展示了RtEpochs.next方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: test_find_events
# 需要導入模塊: from mne.realtime import RtEpochs [as 別名]
# 或者: from mne.realtime.RtEpochs import next [as 別名]
def test_find_events():
"""Test find_events in rt_epochs."""
raw = read_raw_fif(raw_fname, preload=True, verbose=False)
picks = pick_types(raw.info, meg='grad', eeg=False, eog=True,
stim=True, exclude=raw.info['bads'])
event_id = [0, 5, 6]
tmin, tmax = -0.2, 0.5
stim_channel = 'STI 014'
stim_channel_idx = pick_channels(raw.info['ch_names'],
include=[stim_channel])
# Reset some data for ease of comparison
raw._first_samps[0] = 0
raw.info['sfreq'] = 1000
# Test that we can handle consecutive events with no gap
raw._data[stim_channel_idx, :] = 0
raw._data[stim_channel_idx, 500:520] = 5
raw._data[stim_channel_idx, 520:530] = 6
raw._data[stim_channel_idx, 530:532] = 5
raw._data[stim_channel_idx, 540] = 6
raw._update_times()
# consecutive=False
find_events = dict(consecutive=False)
rt_client = MockRtClient(raw)
rt_epochs = RtEpochs(rt_client, event_id, tmin, tmax, picks=picks,
stim_channel='STI 014', isi_max=0.5,
find_events=find_events)
rt_client.send_data(rt_epochs, picks, tmin=0, tmax=10, buffer_size=1000)
rt_epochs.start()
# make sure next() works even if no iter-method has been called before
rt_epochs.next()
events = [5, 6]
for ii, ev in enumerate(rt_epochs.iter_evoked()):
assert ev.comment == str(events[ii])
assert ii == 1
# consecutive=True
find_events = dict(consecutive=True)
rt_client = MockRtClient(raw)
rt_epochs = RtEpochs(rt_client, event_id, tmin, tmax, picks=picks,
stim_channel='STI 014', isi_max=0.5,
find_events=find_events)
rt_client.send_data(rt_epochs, picks, tmin=0, tmax=10, buffer_size=1000)
rt_epochs.start()
events = [5, 6, 5, 6]
for ii, ev in enumerate(rt_epochs.iter_evoked()):
assert ev.comment == str(events[ii])
assert ii == 3
# min_duration=0.002
find_events = dict(consecutive=False, min_duration=0.002)
rt_client = MockRtClient(raw)
rt_epochs = RtEpochs(rt_client, event_id, tmin, tmax, picks=picks,
stim_channel='STI 014', isi_max=0.5,
find_events=find_events)
rt_client.send_data(rt_epochs, picks, tmin=0, tmax=10, buffer_size=1000)
rt_epochs.start()
events = [5]
for ii, ev in enumerate(rt_epochs.iter_evoked()):
assert ev.comment == str(events[ii])
assert ii == 0
# output='step', consecutive=True
find_events = dict(output='step', consecutive=True)
rt_client = MockRtClient(raw)
rt_epochs = RtEpochs(rt_client, event_id, tmin, tmax, picks=picks,
stim_channel='STI 014', isi_max=0.5,
find_events=find_events)
rt_client.send_data(rt_epochs, picks, tmin=0, tmax=10, buffer_size=1000)
rt_epochs.start()
events = [5, 6, 5, 0, 6, 0]
for ii, ev in enumerate(rt_epochs.iter_evoked()):
assert ev.comment == str(events[ii])
assert ii == 5
# Reset some data for ease of comparison
raw._first_samps[0] = 0
raw.info['sfreq'] = 1000
# Test that we can handle events at the beginning of the buffer
raw._data[stim_channel_idx, :] = 0
raw._data[stim_channel_idx, 1000:1005] = 5
raw._update_times()
# Check that we find events that start at the beginning of the buffer
find_events = dict(consecutive=False)
rt_client = MockRtClient(raw)
rt_epochs = RtEpochs(rt_client, event_id, tmin, tmax, picks=picks,
stim_channel='STI 014', isi_max=0.5,
find_events=find_events)
rt_client.send_data(rt_epochs, picks, tmin=0, tmax=10, buffer_size=1000)
rt_epochs.start()
events = [5]
for ii, ev in enumerate(rt_epochs.iter_evoked()):
assert ev.comment == str(events[ii])
assert ii == 0
#.........這裏部分代碼省略.........