確定FFT(快速傅立葉變換)通常是時間頻率的折衷。如果我們計算更長時間(15到20秒)的FFT,我們可以得到更準確的頻率,但數量卻非常少。對於較小的時間間隔頻率通常會出現明顯變化 什麼是最好的時間間隔,我們可以擁有足夠數量的頻率點的可靠數據?確定java中給定時間的頻率
回答
這取決於您的音頻類型。也許你應該考慮使用小波分析。有了這個,你可以提取非常準確的高頻率而不會失去對低頻的識別。
我正在接受麥克風的輸入。音頻格式爲: float sampleRate = 44100; int sampleSizeInBits = 8; int channels = 1; \t boolean signed = true; \t boolean bigEndian = true; – sumit 2012-03-28 20:54:02
是不是像1秒的FFT給你人類可以聽到的所有東西(2Hz到22.5Khz)?之後,你*混合1秒的結果。 ..我完全錯了嗎?我沒有看到問題(除了低振幅噪聲,我認爲可以通過其他方法減少) – user978548 2012-03-28 21:29:35
讀取Nysquist-Shannon Sampling Theorem - 在1/2B處採樣,其中B是信號中的最大頻率,應該使您能夠在不丟失數據的情況下重建它。
這意味着對我說,你可以通過抽樣樣本中的最低頻率的兩倍期間得到不錯的FFT的信號 - 那就是,我想,如果樣品是週期性的:P
當B是最大頻率時,您至少需要它的兩倍大小,而不是一半。 – 2012-03-29 11:45:22
「最佳」取決於你的需求。
如果時間分辨率更重要,那麼較少的點數可能會更好。
如果頻率分辨率比更大數量的點更重要可能會更好。
如果本底噪聲很高,那麼甚至更多的點可能會更好。
如果你不關心,那麼使用一個簡短的FFT來節省計算時間和能量。 (或者不要爲FFT而煩惱,只是從/ dev/random中獲取一些結果)。如果感興趣的信號不是平穩的(例如它們隨時間變化),那麼你可能想要一個足夠短的FFT來將感興趣的所有單獨的頻譜事件分離到它們自己的FFT窗口中。
如果您需要頻率分辨率能夠清楚地區分相鄰噪聲峯值的頻譜信號峯值,那麼您需要的FFT長度至少爲採樣率的兩倍除以您想要分離的峯值之間的最小增量頻率,如果你開窗。如果你不需要這個精度,那麼一個更短的FFT就可以做到。
如果與您感興趣的信號相比,噪聲水平和干擾足夠低,您可以使用更短的FFT內插來自獨立峯值的頻率估計,或者甚至不用FFT。對於零噪聲中的單個正弦波,少至3或4個無鋸齒樣點可能會有效。
- 1. 如何計算給定波的頻率和時間
- 2. 確定XQuery中出現的頻率
- 3. SQL:確定活動以給定頻率發生
- 4. 如何估計(在給定頻率的信號功率)與時間python
- 5. Elmah - 頻率上限/限制#errors在給定的時間間隔內登錄
- 6. iPhone定時器頻率
- 7. 確定字符頻率的函數
- 8. 如何從FFT確定頻率值
- 9. 確定相對字母頻率
- 10. 確定高頻區間
- 11. 確定給定時區的UTC時間是否在DST
- 12. 不確定滴答數據的滾動頻率xts時間序列
- 13. 確定FPGA上的時鐘頻率Spartan-6
- 14. 確定視頻文件的(典型的?)關鍵幀頻率
- 15. R時間序列頻率
- 16. 確定出現在骰子卷中的數字的頻率
- 17. 表中的R值的重複來確定頻率表
- 18. 給定字符串中期望字符的頻率
- 19. 降低linux內核定時器頻率
- 20. 如何獲得Java中給定URL的正確響應(毫秒)時間?
- 21. 給定時間的停止時間表
- 22. 確定兩個Hashmap中重複值的頻率
- 23. 如何確定每個文檔中術語的術語頻率?
- 24. 給定的時間戳
- 25. 生成特定持續時間內頻率的斜坡音頻信號
- 26. std :: chrono似乎沒有給出準確的時鐘分辨率/頻率
- 27. 如何確定FFT結果指標頻率並畫出幅/頻率圖
- 28. 確定賽季在Java中與JodaTime定的時間戳和時區
- 29. 給定集的功率集
- 30. 如何在android中調度固定速率後修改java定時器間隔?
「足夠數量的頻點」 - 足夠用於什麼? – 2012-03-28 20:52:47
足以匹配兩個樣本..感謝您指出.. :) – sumit 2012-03-28 20:56:35
理論上,隨着您增加處理樣本的數量,您可以提高精確度,唯一的「成本」是處理時間/空間。如果您需要更頻繁的測量,請使用滑動窗口,例如每2000個樣本處理8000個樣本「窗口」,重新處理您已處理的一些樣本(6000個)。然而,「正確的」時間間隔是最適合您需要的時間間隔,可以是每秒10次,可以是每分鐘10次。 – 2012-03-28 20:57:50