當前位置:首頁 » 操作系統 » 音頻濾波演算法

音頻濾波演算法

發布時間: 2023-12-19 16:11:57

1. 基於音樂識別的頻譜轉換演算法——CQT

由於在音樂中,所有的音都是由若干八度的12平均律共同組成的,這十二平均律對應著鋼琴中一個八度上的十二個半音。這些半音臨近之間頻率比為2 1/12 。顯然,同一音級的兩個八度音,高八度音是低八度音頻率的兩倍。

因此在音樂當中,聲音都是以指數分布的,但我們的 傅立葉變換得到的音頻譜都是線性分布的,兩者的頻率點是不能一一對應的,這會指使某些音階頻率的估計值產生誤差 。所以現代對音樂聲音的分析,一般都採用一種具有相同指數分布規律的時頻變換演算法——CQT。

CQT指中心頻率按指數規律分布,濾波帶寬不同、但中心頻率與帶寬比為常量Q的濾波器組 。它與傅立葉變換不同的是,它頻譜的橫軸頻率不是線性的,而是 基於log2為底的 ,並且可以 根據譜線頻率的不同該改變濾波窗長度 ,以獲得更好的性能。由於CQT與音階頻率的分布相同,所以通過計算音樂信號的CQT譜,可以直接得到音樂信號在各音符頻率處的振幅值,對於音樂的信號處理來說簡直完美。

我們關註上述「 中心頻率與帶寬比為常量Q 」,從公式上看,我們可以表達為下述公式

下面,我們從計算過程來看恆Q變換的本質
首先,假設我們處理的最低的音為f min ,f k 表示第k分量的頻率,β為一個八度內所包含一個八度的頻譜線數,例如β=36,表示每個八度內有36條頻譜線,每個半音三條頻率分量。

並且有

設 δ f 表示的是頻率 f 處的頻率帶寬,也可以稱為頻率解析度,那麼根據我們的定義得知:

從這個式子,我們得知常量Q是只與β相關的常數。
下面我們假設N k 是隨頻率變換的窗口長度, f s 表示采樣頻率

同時我們的線性頻率應該變為基於log2的非線性頻率

我們的CQT,通過採用不同的窗口寬度,獲得不同的頻率解析度,從而可以得到各個半音的頻率振幅。在CQT中第n幀的第k個半音頻率分量可表示為

其中我們的x(m)為時域信號,w N k 為窗函數

熱點內容
wow刷碎片腳本 發布:2024-11-29 15:58:24 瀏覽:590
明小子源碼 發布:2024-11-29 15:15:30 瀏覽:143
蘋果8plus什麼配置 發布:2024-11-29 14:16:36 瀏覽:677
androidmvp結構 發布:2024-11-29 14:16:34 瀏覽:536
androidsqlite命令 發布:2024-11-29 14:04:38 瀏覽:156
信用卡分期演算法 發布:2024-11-29 13:50:56 瀏覽:808
安卓手機dll文件為什麼打不開 發布:2024-11-29 13:40:49 瀏覽:1003
百分之五十石碳酸怎麼配置 發布:2024-11-29 13:38:56 瀏覽:974
我的世界伺服器如何裝資源包 發布:2024-11-29 13:25:48 瀏覽:22
mc伺服器的ip是什麼 發布:2024-11-29 13:23:33 瀏覽:568