本文介绍了无法取得正确的iphone频率值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图分析在iOS平台上的频率检测算法。所以,我发现使用几种实现FFT和CoreAudio的(和)。但是,在这两种情况下出现的频率一些IM precision存在:
I'm trying to analyze frequency detection algorithms on iOS platform. So I found several implementations using FFT and CoreAudio (example 1 and example 2). But in both cases there is some imprecision in frequency exists:
- (1)对于A4(440Hz的)显示441.430664赫兹。
- (1)为C 6 -C(1046.5赫兹)表示1518.09082赫兹。
- (2)对于A4(440Hz的)显示了440.72赫兹。
- (2)为C 6 -C(1046.5赫兹)表示1042.396606赫兹。
为什么发生这种情况,以及如何避免这个问题,并检测更准确的方式频率ω
Why this happens and how to avoid this problem and detect frequency in more accurate way?
推荐答案
分辨率在频域中是负相关的FFT箱的数目。您需要为:
Resolution in the frequency domain is inversely related to number of FFT bins. You need to either:
- 增加FFT的大小,以获得更高的分辨率
- 相邻箱的使用幅度来调整频率估计
- 使用的频率估计,而不是如FFT的替代方法参数化模型
这篇关于无法取得正确的iphone频率值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!