计算a&;用Java实现DSP带通滤波的b系数

计算a&;用Java实现DSP带通滤波的b系数,java,signal-processing,Java,Signal Processing,事实上,我是DSP领域和这个问答社区的新手。 目前,我正在编写Java程序,使用AMDF从wav文件中检测基音(基音检测)。是我干的。 问题是,我没有使用任何滤波器来消除不需要的频率。所以,我做了一些研究,最后来到这里。 事实上,我对代码没有问题,我只是把他用来计算系数的方程式搞混了。我已经问过他参考资料(还没有回复),读过文档,读过一些关于IIR数字滤波器的书,但还没有找到关于参考资料的线索。 任何人都可以为我指出此代码的强引用: protected void calcCoeff() {

事实上,我是DSP领域和这个问答社区的新手。 目前,我正在编写Java程序,使用AMDF从wav文件中检测基音(基音检测)。是我干的。 问题是,我没有使用任何滤波器来消除不需要的频率。所以,我做了一些研究,最后来到这里。 事实上,我对代码没有问题,我只是把他用来计算系数的方程式搞混了。我已经问过他参考资料(还没有回复),读过文档,读过一些关于IIR数字滤波器的书,但还没有找到关于参考资料的线索。 任何人都可以为我指出此代码的强引用:

protected void calcCoeff()
  {
    float R = 1 - 3 * bw;
    float fracFreq = getFrequency() / getSampleRate();
    float T = 2 * (float) Math.cos(2 * Math.PI * fracFreq);
    float K = (1 - R * T + R * R) / (2 - T);
    a = new float[] { 1 - K, (K - R) * T, R * R - K };
    b = new float[] { R * T, -R * R };
  }