我有一个嘈杂的方形信号作为输入,但它有很多噪音。我应该使用带通滤波器来恢复我的信号。
我知道切比雪夫滤波器是带通滤波器;但它不起作用。过滤后的数据仍然有噪声。
Chebyshev 滤波器: Chebyshev 滤波器在通带中提供比 Butterworth 滤波器更锐利的截止。Chebyshev 滤波器的一个缺点是增益最小值和最大值在截止频率以下。由于通带中的波纹,它不用于音频系统。尽管在通带中只有一个频率可用的某些应用中它要好得多,但需要消除许多其他频率。
% I use A picoscope2000 serie for data acquisition. (MATLAB)
ps2000_getdata;
% The data is saved a cha_a (MATLAB)
cha_a = (bufferChA/1000);
% Here i use the Chebyshev bandpass filter to filter the noisy data(MATLAB)
[A,B,C,D] = cheby2(10,40,[900 1100]/1500);
d = designfilt('bandpassiir','FilterOrder',20, ...
'StopbandFrequency1',900,'StopbandFrequency2',1100, ...
'StopbandAttenuation',40,'SampleRate',8000);
y= filter(d,cha_a); % convolution
sos = ss2sos(A,B,C,D);
fvt = fvtool(d,y,'Fs',8000);
legend(fvt,'cheby2','designfilt')
我的输入数据假设是平方数据。而且当您查看输出的脉冲响应时,它看起来不像是方波信号的脉冲响应。仍然有噪音。如何调整我的过滤器?还是我用好过滤器?