使用zero-pole-gain巴特沃斯滤波器

16个视图(30天)
娜塔莉N
娜塔莉N 2017年3月4日
回答: 明星黾 2017年3月4日
你好,
我想要使用巴特沃斯滤波器,但这个设计:
% Zero-Pole-Gain设计
(z,磷、钾)=黄油(n, n, ftype);
我怎么能那么过滤数据?例如,就像这样:
dataOut =过滤器(b, a, dataIn);

接受的答案

明星黾
明星黾 2017年3月4日
zero-pole-gain是一个好的开始。过滤你的数据,我将把它转换成二阶节实现稳定,然后使用该过滤数据。使用 filtfilt 实际的过滤函数,因为它有一个最大平坦的相位响应,因此不会产生任何过滤信号相位失真。
总是好确定你的过滤器是做你想要什么用 freqz 第一个函数。
试试这个:
(z,磷、钾)=黄油(n, n, ftype);
(sos, g) = zp2sos (z,磷、钾);
图(1)
freqz (sos、2 ^ 16)
dataOut = filtfilt (sos, g, dataIn);
这应该工作。

更多的答案(0)

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!