Eu li um artigo sobre uma interface cérebro-computador. Neste artigo, os autores relataram "cada sinal foi filtrado com um filtro Chebishev Tipo I de passagem de banda de 8 ordens, cujas frequências de corte são de 0,1 e 10 Hz e foi dizimado de acordo com a alta frequência de corte". Eu tentei projetar esse filtro com scipy:
import scipy.signal as signal
signal.cheby1(8,0.05,[0.1,10.0],btype='band',analog=0,output='ba')
O resultado foi:
Warning: invalid value encountered in sqrt
(array([ nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan,
nan, nan, nan, nan, nan, nan]), array([ nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan,
nan, nan, nan, nan, nan, nan]))
Não tenho experiência no processamento de sinais, então, na verdade, não sei o que estou fazendo. Não sei se eles usaram um filtro IIR ou FIR ou se tenho que escalar as frequências de corte ou se estou usando a ondulação errada. Espero que você possa me ajudar.