使用倒谱分析估算基频

时间:2011-10-18 20:22:28

标签: signal-processing fft

用C编写了一个频域音高检测算法,现在我正在尝试估算基频。我有来自傅立叶变换的最大幅度区间,但这也可以是不必要的谐波F0。我在某处读到可以使用cepstral analysis估算F0。那么,这是我遵循的步骤:

  1. 获取时域缓冲区x,制作窗口副本w。
  2. FTTw = FFT(w)
  3. a = FTTw的平方数量的对数
  4. FTTa = FFT(a)
  5. b = FTTa的平方幅度
  6. 使用b
  7. 估算基础

    我在最后一步(6)遇到了麻烦。 b中的幅度相当高,我不确定我是否完全理解它们所代表的内容(quefrencies?),最重要的是我如何根据它们来估计基础。

    欢迎任何建议!谢谢!

1 个答案:

答案 0 :(得分:1)

倒谱中峰值的位置(在频率轴上)告诉您原始信号的音高周期。峰值的幅度并不是特别重要。