馬青閣 曹西征 趙宛 汪旭彬 關金晨
摘 要:主旋律是音樂旋律信息的重要組成部分,文章通過對表征音樂旋律特征向量的提取,采用H- K分類算法構建音軌分類器模型,對MIDI片旋律音軌和伴奏旋律音軌進行分類。最后通過候選音軌提取出主旋律音軌,研究表明,這種方法對10個音軌內的主旋律提取準確率由75%提升到90%,對于2個音軌以內的主旋律提取可以達到95%的準確率。
關鍵詞:MIDI;主旋律;音軌熵;特征布爾數組;特征向量
MIDI的本質是一種符號性聲音文件,對音樂信息檢索、音樂旋律匹配等應用起到重要作用。
MIDI文件包含多個音軌信息,由于不能準確地識別主旋律音軌。本文首先提取基于音軌音符的特征量以及符合MIDI特征的信息熵共同組成MIDI文件的特征向量,在提取特征向量[4]的基礎上構建音軌分類器模型,并通過H-K算法對MIDI主旋律音軌和伴奏旋律音軌進行分類等方法來提高抽取準確率。
1 信息熵
1.2 起奏間隔熵
起奏間隔熵為從一個音符起奏到下一個起奏時刻之間的時間差序列熵。x為相鄰2個音符之間的起奏時間差,該音軌的起奏間隔熵可表示為:
注:表示為時間差。
1.3 熵值的計算模型
在MIDI文件中,每條音軌是由音符序列構成。在一條音軌中多個音符同時發聲,利用H-K算法抽取音符序列作為當前音軌的音符序列;當音符同時發聲并構成和弦時,選取最高的音符序列作為該音軌的音符序列。選取每條同時發音的音軌音符,然后利用一個片段或整個音符序列計算熵值,把熵值最高的音軌當成主旋律音軌,并計算出主旋律音軌的正確率,將正確率最高的熵值看作是音軌的信息熵。
2 音軌的特征向量
由于信息熵不能詳細表述MIDI音軌的具體特征,故選擇其他音軌特征來構成音軌特征向量。這些特征向量能夠有效的區分主旋律與伴奏音軌,本文選取的9個特征向量如下。
2.1 音高特征
(1)最高值:在某條音軌中所有音符的最高音高值。(2)平均值:音軌中所有音符音高的平均值。(3)最低值:一條音軌中所有音符的最低音高值。
2.2 音符時值特征
(1)最小時值:所有音符的最小時值。(2)最大時值:在音軌中,所有音符時值中的最大值。
2.3 音程特征
(1)平均值:音軌中連續2個音符之間音高的平均值。(2)最大值:某條音軌中所有連續2個音符之間的最大音高值。(3)不同音程的個數:音軌中所有連續2個音符之間不同的音高個數。(4)最小值:在一條音軌中,連續2個音符之間的最小音高值。
3 H-K算法的主旋律提取
3.1 主音軌的處理
(1)根據MIDI文件的音軌頭里樂曲相關說明,獲得音軌通道的相關分配情況。(2)MIDI文件通常將通道10分配給打擊樂器使用,因此10號音軌通道一般不會是主旋律音軌。(3)主旋律音軌是音軌的主要組成部分,當音符數量小于音符數量平均值時一般不是主旋律音軌。(4)各音軌長度平均值一半大于音軌總長度時,一般不是主音軌。(5)當和聲是主旋律音軌時,大多數音符以是單旋律,并且音軌中各時間戳包含的音符數量大于3時,此音軌不可能是主旋律音軌。以上5條規則提高了主旋律提取的準確性。
3.2 基于H-K算法的主旋律提取
在最小均方誤差準則下利用H-K算法求得權矢量,此方法可用于線性和非線性可分,在線性可分的情況下,可以求出最優權矢量,在求非線性可分的情況下能夠判別出來,并實現退出迭代的過程。在本文中利用H- K算法[6]對主旋律音軌進行定位。
準則函數J是w和b的函數,在迭代修正w時,也對矢量b進行修正,得到J關于w和b的極小值點。在迭代調整過程時b的各分量均為正數,同時b(k)的各分量只能向增大的方向調整,同時也需滿足J使w更趨向解的中心。
4 選出主旋律的音軌
通過比較具有旋律特征的候選音軌,擇優選出主旋律音軌。在比較時采用了積分制的辦法提取出主旋律音軌,根據包含時間戳相對多,音高曲線相對高。具體步驟如下所示:(1)首先為每個音軌建立累加值,初始值為0。(2)然后以小節為單位,遍歷所有候選音軌。在遍歷過程中找出小節的最高音符,當小節的對應數組有效值為true時,為該音節所在的音軌加分,其值為該小節時間戮個數。(3)遍歷完成后,分數最高的是主旋律音軌。
5 實驗的結果與分析
首先分析MIDI音樂文件,并對特征音軌主旋律的音樂特征量進行抽取,采用H-K算法構建音軌分類器模型來區分主旋律和伴奏旋律音軌,然后建立布爾數組篩選主旋律音軌。最后,通過比較分析候選音軌提取出主旋律音軌。表1給出主旋律音軌正確率變化情況,顯然數據越大,主旋律音軌提取準確率越高。
表1 樣本數據主旋律的提取準確率
6 結語
本文提出一種基于H-K算法構建音軌分類器模型來提取出MIDI文件主旋律,提取出序列特征向量區分主旋律與非主旋律音軌,選取3組樣本數據,然后對樣本數據進行主旋律的提取。實驗表明,通過改變影響主旋律的特征向量并利用H-K算法和主旋律音軌的篩選等方法能夠有效地提高主旋律音軌的準確率,但是由于設計過程中涉及算法可能造成計算誤差,從而降低主旋律的提取準確率。
[參考文獻]
[1]趙芳,吳亞棟,宿繼奎.基于音軌特征量的多音軌MIDI主旋律抽取方法[J].計算機工程,2007(2):165-167.
[2]馬建紅,工萬森.基于數據倉庫的保險管理系統的設計與實現[J].微機發展,2004(7):64-66.
[3]趙芳,昊亞棟,宿繼李.基于音軌特征量的多音軌MIDI主旋律抽取方法[J].計算機工程,2007(2):165-167.
[4]張文歆.基于多基頻提取的歌曲主旋律提取研究[D].北京:北京郵電大學,2015.
[5]黃志剛,周昌樂,蔣旻雋.MIDI文件主旋律音軌的抽取[J].廈門大學學報:自然科學版,2010(1):43-46.
[6]劉勇,林景棟,穆偉力.基于H-K算法的MIDI音樂主旋律提取[J].計算機技術與發展,2011(6):154-156.
[7]李娟,周明全,李鵬.MIDI主旋律特征提取構建音樂數據庫[J].計算機工程與應用,2011(26):124-128.
[8]金星,洪延姬,文明,等.布爾邏輯和與邏輯積運算及可靠性分析應用[J].彈箭與制導學報,2003(1):69-72.
Exploration of MIDI Files Based on H-K Algorithm Extract Melody Tracks
Ma Qingge, Cao Xizheng, Zhao Wan, Wang Xubin, Guan Jinchen
(Computer and Information Engineering College, Henan Normal University, Xinxiang 453007, China)
Abstract:Theme is an important part of music melody information, based on the characterization of music melody feature vector extraction, the H - K audio classification algorithm to construct classifier model, MIDI audio piece of melody and accompaniment melody track for classification. Finally through the candidate track extract melody track, research has shown that this approach within the 10 tracks on the main melody extraction accuracy increase from 75% to 75%, the two tracks of less than the main melody of extraction can reach 95% accuracy.
Key words:MIDI; audio themes; entropy; boolean array characteristics; feature vector