昨天我們介紹了頻譜跟梅爾頻率,那有沒有機會我可以把這兩個結合在一起,獲得更有用的資訊呢?
沒有錯拉
我們只要把頻譜轉換到梅爾刻度上就可以得到很基礎的梅爾倒頻譜,
幸運的是我們可以不用那麼麻煩,因為 librosa 都幫你做好了。
有了梅爾倒頻譜之後,我們還是能夠繼續簡化它,梅爾倒頻譜係數就是一組用來建立梅爾倒頻譜的關鍵係數,它通常是 13 維的資料
這是因為丟棄高維的係數,就像是一個低通濾波器,可以使訊號平滑化,增進語音處理的性能
取得係數的方法,如果你想要自己算的話,就是把梅爾倒頻譜再做一次倒頻譜,但 librosa 已經幫你做好了
(更詳細的作法,你可以參考這篇)
mfcc = librosa.feature.mfcc(wave,sr=sr, n_mfcc=13)
你也可以隨時把它轉回來
librosa.feature.inverse.mfcc_to_mel(mfcc)
過零率是指一個信號的正負號變化的比率,這個特徵在音樂分類的任務上是敲擊聲的關鍵特徵
實際看一下資料就可以感受到了
它可以用來表達每個音框的頻率分布以及趨勢,每個音框都會計算出一個特徵值,
在分析一段聲音時,我們通常將音訊切成比較短的單位,就叫音框
如果這個值越低就說明越多的能量在低頻,反之亦然。
實際看一下資料就可以感受到了
librosa.feature 裏頭還有一些其他 feature,但比較難去找實際的資料來說明,像是 Tonnetz 這個可能跟樂理以及音調有關係。
今天我們學到了一些聲音的特徵,還有提取的方法,那明天就來實作一個簡單的音樂分類器吧!