我正在寻找从声音信号中提取音高.
IRC上的某个人刚刚向我解释了如何采用双FFT实现这一目标.特别:
我正在尝试使用vDSP
我无法理解我之前没有遇到过这种技术.我做了很多狩猎和提问; 几周值得.更重要的是,我无法理解为什么我没有想到它.
我试图用vDSP库实现这一目标.它看起来好像有处理所有这些任务的功能.
但是,我想知道最终结果的准确性.
我之前使用的技术是将单个FFT的频率区域扫描为局部最大值.当它遇到一个时,它使用一种狡猾的技术(自上次FFT以来的相位变化)来更准确地将实际峰值放置在箱内.
我担心这种精确度会因为我在这里介绍的技术而丢失.
我想这种技术可以在第二次FFT之后使用,以准确地得到基波.但有点看起来信息在第2步中丢失了.
由于这是一个潜在的棘手过程,有经验的人可以只看一下我正在做的事情并检查它的理智吗?
此外,我听说有一种替代技术涉及在相邻的箱子上安装二次方.这是否具有可比性?如果是这样,我会赞成它,因为它不涉及记住bin阶段.
所以,问题:
有人能指出我对这种技术的一些研究或文献吗?
主要问题:它足够准确吗?可以提高准确度吗?一位专家刚刚告诉我,准确性是不充分的.这是行的结束吗?
皮
PS当我想创建标签时,我很生气,但不能.:| 我已向维护人员建议SO跟踪尝试的标签,但我确信我被忽略了.我们需要vDSP标签,加速框架,倒谱分析
我正在开发一把闪光吉他,发现麦克风数据频率的唯一明显方法似乎是使用 FFT。然而,经过大约 30 个小时的研究后,我无法找到最好的方法。我应该使用谐波积谱 (HPS)、倒谱还是最大似然?调谐器必须显示 25 到 3000Hz 的频率。
另外,如果有人知道一些准备找到基本频率的开源代码,请告诉我。我可以将它翻译成 ActionScript。
谢谢!