App-SigVisualizer icon indicating copy to clipboard operation
App-SigVisualizer copied to clipboard

Is it possible to put filter in SigVisualizer?

Open iPsych opened this issue 5 years ago • 2 comments

I am trying to put the filtering or PSD calculation in the middle of SigVisualizer. In the paintwidget.py, where is the best place to put the some code lines using scipy.signal and mne.filter?

from scipy.signal import lfilter, lfilter_zi
from mne.filter import create_filter

window = 10
n_samples = int(self.sfreq * window)
#self.sfreq=params['metadata']['srate']
#n_chans=params['metadata']['ch_count']

self.data_f = np.zeros((n_samples, self.n_chans))
self.data = np.zeros((n_samples, self.n_chans))
self.af = [1.0]
self.bf = create_filter(self.data_f.T, self.sfreq, 3, 40.,
                            method='fir')

iPsych avatar Jan 26 '20 12:01 iPsych

Hi @iPsych , looks to me like this should be added somewhere under the get_data() method of class PaintWidget(QWidget). @cboulay would you have any input on whether/how we could potentially put filters here?

Yida-Lin avatar Mar 03 '20 04:03 Yida-Lin

I tried to implement this in my fork, it seems to work well (at least as long as there is only one stream). I put the filter right into the DataThread.run method. https://github.com/mkeute/App-SigVisualizer

mkeute avatar Jun 30 '22 07:06 mkeute