我正在尝试开发一个需要带通滤波器的应用程序。采样率为 30Hz,我希望滤波器保留的频率范围是:0.5Hz-4Hz。
我使用 mkfilter 来设计我自己的过滤器,但它始终被我在 github 上的示例项目中找到的其他过滤器所超越。作者没有记录他使用的参数并且无法访问。
是否可以对产生此过滤器的 mkfilter 参数进行逆向工程?(见下面的快速代码)
xv[0] = xv[1]; xv[1] = xv[2];
xv[2] = xv[3]; xv[3] = xv[4];
xv[4] = xv[5]; xv[5] = xv[6];
xv[6] = xv[7]; xv[7] = xv[8];
xv[8] = xv[9]; xv[9] = xv[10];
xv[10] = value/gain
yv[0] = yv[1]; yv[1] = yv[2];
yv[2] = yv[3]; yv[3] = yv[4];
yv[4] = yv[5]; yv[5] = yv[6];
yv[6] = yv[7]; yv[7] = yv[8];
yv[8] = yv[9]; yv[9] = yv[10];
yv[10] = (xv[10] - xv[0]) + 5 * (xv[2] - xv[8]) +
10 * (xv[6] - xv[4]) + (-0.0000000000 * yv[0]) +
(0.0357796363 * yv[1]) + (-0.1476158522 * yv[2]) +
(0.3992561394 * yv[3]) + (-1.1743136181 * yv[4]) +
(2.4692165842 * yv[5]) + (-3.3820859632 * yv[6]) +
(3.9628972812 * yv[7]) + (-4.3832594900 * yv[8]) +
(3.2101976096 * yv[9])
return yv[10]
```
