使用自相关方法了解音高检测

信息处理 采样 自相关 沥青
2022-02-17 02:16:06

我一直在阅读A Smarter Way to Find Pitch,描述了它使用自相关的音高检测算法。

我一直无法理解准确性声明。它说:

MPM 以标准 44.1 kHz 采样率实时运行。它在不使用低通滤波的情况下运行,因此它可以处理具有高谐波频率的声音,例如小提琴,并且可以可靠地显示一音分的音高变化。

我无法理解如何检测到一分钱的变化是可能的。考虑以 441Hz 播放的音符,以 44.1kHz 采样,我们会在 tao=100 个样本(延迟空间)处测量第一个峰值。

据我了解,可以测量的下一个最接近的音符将在第 101 个样本处有一个峰值。这将是 437Hz 的频率,或比第一个音符低约 16 美分。我在这里想念什么?

2个回答

对于更高分辨率的周期性估计,给定适当的带限数据,可以在自相关之前对数据进行上采样(内插),和/或对自相关结果进行内插(Sinc 核或多项式的某个阶数)。

当然,这假设信号具有足够高的 S/N,并且周期性本身在音色(谐波含量)、相位、频率或幅度方面未调制,这对于现实世界的音高声音并不总是如此。因此,对于基音估计上的某个期望的统计误差界限,可能需要更大数量的周期。

在使用自相关或AMDF 或 ASDF 等等效方法时,添加到 hot 的答案中,尽管自相关Rx[k]在滞后的整数值处进行评估k,这意味着峰值和初始周期长度将是整数个样本,您可以使用峰值处的点和两个相邻值进行二次插值,以获得“真实”峰值的位置。这将为您提供比整数个样本滞后更好的精度(与“准确性”不同)。

看看这两个其他链接的答案,以获得问题的某种形式的数学表达式以及我如何解决它。