回答
那麼,你可以嘗試另一組頻域的算法,如小波。但我不確定這是否會影響您的準確性問題。其實,我不明白你在FFT方面遇到什麼問題。它總是和絃的近似值,沒有完美的方式來檢索聲音上的這種信息。
因此,它取決於您在該頻譜上進行的分析,使用單個音符,實際上有許多比FFT更好的算法,但使用和絃您很可能必須使用FFT。
您將不得不處理的問題是將高次諧波的基本諧波分開,有一件事可能有幫助,那就是隻考慮吉他範圍內的頻率。 如果您只需要使用吉他聲音,您應該花點時間研究吉他的正常頻域圖並嘗試使用它來提高您的精確度。
嗨!使用FFT時,是否可以使用箱的強度來嘗試確定構成和絃的音符?因爲我認爲他們會有一些相互關聯的類型。 – user488792 2011-02-07 08:38:16
有一些使用DFT(FFT)的相當成功的工具,但是他們在計算DFT之後做了大量的處理。
嘗試使用this link獲取當前技術狀態摘要,或者用於開源和絃提取算法的谷歌「Chordino」或「Chordata」。
簡短的答案是,你需要遠遠超過一種算法。良好的和絃識別方法可以更恰當地描述爲「系統」,但通常它們確實基於對頻域的初始變換(通常是DFT)。
如果你想要的歌曲的和絃representaton與此類似
C G Am F7 F6 C ...
那麼這實際上是略微從一段音頻識別註釋去掉一個問題。實際上,有兩個問題(粗略地說):
- 發現其間距本隨時
- 隨着時間的推移這些分組間距,以便能夠和絃標籤分配給的時間間隔。
事實證明,從時域(正常音頻)轉換到頻域(頻譜表示)的方式只是有限的重要性。事後處理非常重要,通常使用複雜的概率模型(類似於語音識別中的模型:HMM,DBN ......)來解決這個問題。
請嘗試谷歌學者「和絃轉錄」或「和絃檢測」或「和絃標籤」進行該領域的高級研究。
大多數這些方法使用離散傅里葉變換(DFT)來創建初始光譜圖。在進一步的處理中,它們也往往略有不同,儘管已經使用了不同的時間序列平滑技術:隱馬爾可夫模型,動態貝葉斯網絡,支持向量機(SVMstruct)和條件隨機場等等。 最先進的轉錄器使用自動調諧,關鍵信息,低音信息和度量位置信息來改善結果。我的thesis(第2章)給出了一個很好的概述。
開源和絃檢測算法:
- Chordino在http://isophonics.net/nnls-chroma
- 脊索動物在http://clam-project.org/
- LabROSA和絃識別http://labrosa.ee.columbia.edu/projects/chords/
希望這有助於。
+1爲好答案,並能夠在答案中引用您自己的論文。 – gary 2011-01-27 14:49:44
我在使用LabROSA Chord Recognition時遇到困難,您能指導我如何使用它嗎?我使用終端命令extractFeaturesAndTrain_svm和doChordID_svm,但它不可識別 – 2017-03-21 08:04:58
如果您正確設置了軟件,FFT可以並且會給你所有的單音。 FFT的全部內容是區分色調,或者如果您是天體物理學家,您想知道明星發出的光線中的各個元素(sulpher,hydrogen ...)。
諧波不是一個問題,因爲它們的功率比基本頻率低,例如C = 440hz,但C = 880hz,但880是FFT結果中較小的峯值。
nope,如果您嘗試繪製FFT產生的頻譜,例如對於在小提琴上演奏的C5音符,您會看到C5的低音振幅比C6。 – 2016-05-14 17:21:39
@YuriyKravets我認爲他意味着你可以找到根音,因爲它會是最大的「權力」,因爲他說的 – 2016-09-18 10:35:13
- 1. 從音頻樣本中識別單個吉他和絃
- 2. 是否有Android庫來識別吉他和絃?
- 3. 吉他和絃檢測
- 4. 賢頻檢測和色彩(吉他弦)
- 5. 文本,基於字符串的和絃識別算法?
- 6. cocos2d適用於iPad的吉他琴絃
- 7. 在和絃進程中計算吉他和絃的最舒服的手指位置
- 8. 如何用Flash的聲音合成器模擬吉他弦/和絃?
- 9. 在linux和/或python中產生吉他和絃的最簡單方法
- 10. 通過原始音頻再現吉他弦與和聲
- 11. 在電路顯示器上顯示吉他和絃
- 12. 在Android SDK中生成吉他和絃圖像
- 13. 使用PHP創建圖像以顯示吉他和絃
- 14. 和絃檢測算法?
- 15. 計算正弦和餘弦
- 16. 2D形狀識別和解析算法
- 17. 算法分析和結構識別
- 18. 計算餘弦算法
- 19. 歌曲識別算法
- 20. iPhoto人臉識別算法
- 21. 重複識別算法
- 22. 模式識別算法
- 23. 識別加密算法
- 24. 識別GSM加密算法
- 25. 山脈識別算法
- 26. 服裝識別算法
- 27. 字符識別(OCR算法)
- 28. 手勢識別算法 - Kinect
- 29. 用於吉他琴絃的FFT音高檢測
- 30. Google主頁使用的是什麼技術(吉他弦)
問問Melodyne的傢伙:http://www.youtube.com/watch?v = jFCjv4_jqAY – herzmeister 2010-10-27 12:25:49
你認爲FFT在你的情況下是不是真的? – Biggles 2010-10-27 12:37:53