基于节拍谱的语音音乐分类模型
節(jié)拍譜的取得方式為按照論文《THE BEAT SPECTRUM:A NEW APPROACH TO RHYTHM ANALYSIS》獲得,但是在分類中,有點陰差陽錯的計算出不同的結果。
按照得到的節(jié)拍譜后,使用閾值對節(jié)拍譜判定得到語音音樂兩類分類。
根據(jù)音頻的相關特征的語音音樂分類的算法的流程圖如圖1所示。
圖 1 算法流程
其具體的算法步驟如下:
步驟1:提取MFCC參數(shù)。其提取原理框圖如圖2所示。預處理包含分幀加窗等。FFT為快速傅里葉變換。Mel-Filtering為梅爾三角濾波器組,DCT為離散余弦變換。本實驗使用MATLAB的MFCC函數(shù)來提取得到MFCC參數(shù)。
圖 2 MFCC參數(shù)提取過程
步驟2:用余弦相似度計算特征參數(shù)兩兩之間的相似性,可得到一個相似矩陣。其中語音信號的節(jié)拍沒有周期性的規(guī)律,音樂信號會周期性地形成峰值。本實驗使用MATLAB的COS函數(shù)來計算得到特征向量的相似性。余弦距離更多的是從方向上區(qū)分差異,而對絕對的數(shù)值不敏感,正因為余弦相似度在數(shù)值上的不敏感,只能分辨?zhèn)€體在維之間的差異,沒法衡量每個維數(shù)值的差異,所以得到的相似矩陣更能體現(xiàn)出節(jié)拍的周期性規(guī)律。
步驟3:用相似矩陣的自相關性得到節(jié)拍譜。它能夠反映節(jié)奏的周期性變化規(guī)律,節(jié)拍譜不依賴于能量或頻率等特定屬性,因此適用于任何類型的音樂或音頻,其反應了節(jié)拍周期性變化規(guī)律。本實驗使用MATLAB的xcorr函數(shù)來計算其自相關。節(jié)拍譜中的峰值對應于音樂信號中的主要節(jié)奏成分,不同峰的相對振幅反映了其對應韻律成分的強弱。一些擁有強烈節(jié)奏感的音樂的節(jié)拍譜的峰值變化會比較明顯,而節(jié)奏感比較弱的峰值變化會稍微弱些。
圖 3 語音節(jié)拍譜圖
圖 4 音樂節(jié)拍譜圖
圖3為語音的節(jié)拍譜圖,圖4為音樂的節(jié)拍譜圖,可以看到音樂具有明顯的起伏。
步驟4:歸一化。歸一化目的把得到的數(shù)據(jù)限制在一定區(qū)間內(nèi),使得各個音頻的數(shù)據(jù)易于后續(xù)的處理。
步驟5: 統(tǒng)計并計算閾值判定音頻類別。閾值基于總體判定的準確率來設定的,判定流程如圖4。當語音或音樂的準確率下降過大時,則閾值調(diào)整完畢。
圖 4 閾值判定流程圖
https://download.csdn.net/download/diantongqingjie/20469329https://download.csdn.net/download/diantongqingjie/20469329https://download.csdn.net/download/diantongqingjie/20469329
總結
以上是生活随笔為你收集整理的基于节拍谱的语音音乐分类模型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: x12arima季节调整方法_深秋是腌洋
- 下一篇: MATLAB 转PDF图片过大导致两边缺