-
Notifications
You must be signed in to change notification settings - Fork 1
Processing Pipeline
The Spoke processing pipeline for each of the three current display modes: !
A brief description of each of the processing stages during each timer period:
A chunk of raw data (typically equal to timer period) is read from a SpikeGLX remote connection.
Optional feature of global mean subtraction (to correct for channel DC offset variation) applied to current raw data chunk.
Optional feature of bandpass filtering applied to current raw data chunk.
Following this stage, the processed raw data chunk (via Stage 2 & 3) is formed into the 'fullData' buffer for subsequent periods. This data may be combined with data from prior processing periods, as needed to complete processing of data snippets spanning periods (e.g. storage & display of a waveform snippet
Detection of signal threshold crossings spike(s) and/or stimuli in the fullData buffer, as needed for the current display mode.
Compute reducedData from the fullData buffer, based on the detected spikes & stimulus.
The reducedData stored depends on the display mode selected:
- Spike-triggered Waveform mode: spike timestamps, waveform snippets
- Stim-triggered Waveform mode: stim timestamps, waveform snippets
- Raster mode: spike timestamps, stim timestamps, spike-stim associations
Compute & implements updates to waveform or raster plot based on reducedData.
Periodically compute RMS & mean of the current fullData buffer chunk, after removing detected spikes in order to select out the baseline. These statistics are used for: spike threshold detection, RMS-multiple threshold detection, and RMS-multiple display units.
Following this stage, the current fullData buffer chunk is discarded, save for any final portion needed for the subsequent timer period.