由於人耳對聲音的感知(如:頻率、音調)是非線性的,為了對聲音的感知進行度量,產生了一系列的尺度(如:十二平均律),這里重點說下Bark尺度與Mel尺度。剛開始的時候,我自己也沒弄明白這兩個尺度的區別。后來才逐漸的明白他們的思考出發點,這里簡單分享出來。
Bark(巴克)頻率尺度是以Hz為單位,把頻率映射到心理聲學的24個臨界頻帶上,第25個臨界頻帶占據約:16K~20kHz的頻率,1個臨界頻帶的寬度等於一個Bark,簡單的說,Bark尺度是把物理頻率轉換到心理聲學的頻率。Bark尺度頻率的中心頻率與臨界帶寬邊界頻率如下表所示:
臨界頻帶 | 頻率/Hz | ||
Bark頻帶 | 中心頻率 | 下界頻率 | 上界頻率 |
1 | 50 | 0 | 100 |
2 | 150 | 100 | 200 |
3 | 250 | 200 | 300 |
4 | 350 | 300 | 400 |
5 | 450 | 400 | 510 |
6 | 570 | 510 | 630 |
7 | 700 | 630 | 770 |
8 | 840 | 770 | 920 |
9 | 1000 | 920 | 1080 |
10 | 1170 | 1080 | 1270 |
11 | 1370 | 1270 | 1480 |
12 | 1600 | 1480 | 1720 |
13 | 1850 | 1720 | 2000 |
14 | 2150 | 2000 | 2320 |
15 | 2500 | 2320 | 2700 |
16 | 2900 | 2700 | 3150 |
17 | 3400 | 3150 | 3700 |
18 | 4000 | 3700 | 4400 |
19 | 4800 | 4400 | 5300 |
20 | 5800 | 5300 | 6400 |
21 | 7000 | 6400 | 7700 |
22 | 8500 | 7700 | 9500 |
23 | 10500 | 9500 | 12000 |
24 | 13500 | 12000 | 15500 |
25 | 18775 | 15500 | 22050 |
我發現有不少式子試圖對上表進行建模,用的比較多的一個式子是(Zwicker,Terhardt 1980):
\[B = 13{\tan ^{ - 1}}\left( {\frac{{0.76f}}{{1000}}} \right) + 3.5{\tan ^{ - 1}}{\left( {\frac{f}{{7500}}} \right)^2}\]
上式中頻率f代表中心頻率,我把上面的式子在Matlab中代入進行計算,發現前5個Bark頻帶與計算出來的出入比較大,尚不知道這是什么原因。
Mel頻率尺度也是一種頻率映射感知模型,它描述的是音高感知的非線性映射,函數表示如下:
\[m = 1127.01048{\log _e}\left( {1 + \frac{f}{{700}}} \right)\]
要注意的一點是,這里的頻率f單位是1kHz,也就是說,1kHz是Mel頻率與以赫茲為單位的真實頻率之間的參考點(1kHz=1000mel),另一方面,Mel一詞來源於音樂術語melody,是旋律的頻率分量與與音高感知之間距離的度量。