音乐检索研究现状:
从搜索的目标分,主要可分为两大类:SEARCHING SYMBOLIC DATA,SEARCHING AUDIO DATA。我对这两类的理解是:前者是检索乐谱;后者则是检索音频。
SEARCHING SYMBOLIC DATA
1 String-based methods for monophonic melodies
由于这种方式最终是把音乐转化成一种字符串的形式,因此后期的检索就可以用到很多字符串比较的算法,比如计算编辑距离,寻找最长公共子串,找到一个字符串在另一个中的出现次数等等非常成熟的算法。
1.1 距离度量
1.1.1 完全匹配法:即用户的输入必须是完全和数据库中音乐的某一段匹配。采 用的距离度量方法是KMP算法(Knuth-Morris-Pratt)和BM算法 (Boyer-Moore)。
代表系统:Kornstadt的Themefinder。
这个音乐搜索引擎只面向具备专业音乐知识的用户,因为你要准确地输入相关的音乐参数才能进行搜索。
1.1.2 模糊匹配法:即用户的输入和数据库的音乐进行模糊匹配。采用的距离度量方法是编辑距离计算。
代表系统:Prechelt and Typke的Musipedia。
Music Search Engine - Musipedia
Musipedia - 一個以midi 為主的音樂搜尋引擎。(簡體中文版)
Musicpedia 主要是搜尋它自已的資料庫,不過也可以對整個 web
做搜尋!它的搜尋技術平台是用 Alexa search
platform。如果印象中有段旋律,但卻不是明確地記得是哪首音樂或歌的話,可以拿它來嘗試找看看。它提供了四種搜尋方式:
鍵盤輸入搜尋 (Keyboard search)
在上面的鍵盤一個一個音按好之後搜尋即可,網頁下方有使用方法
弦律輪廓搜尋 (contour search)
這部份它是使用一種叫做 Parsons Code 來當 Melodic Contours。簡單來講,就是利用連續音的起伏,當下個音比現在這個音還變高時,就
encode 成 U, 變低則為 D, 不變則為 R,當然,每首音樂的第一個音若拿來編碼,可能造成不準確,因此,在 Parsons Code 中,第一個音以星號
* 來表示。
哼唱搜尋 (Sing or Whistle)
可直接用錄音的, 或者要唱還是吹口哨都可以。
節奏搜尋 (Rhythm search)
按下 Start Tapping 後,就可以利用鍵盤敲出節奏來搜尋。
比較值得一提的是關於它如何比對 midi 的相似度,主要使用 Editing distance 與 Earth Mover‘s Distance。
Musipedia 的前身是 Melodyhound,由 Rainer Typke 從 1997 年開始規劃建置的,直到 Wikipedia
出現後,2006 年時,這個音樂搜尋引擎才改名為 Musipedia,並且也開始能夠搜尋 WWW 上的 midi 音樂。Melodyhound
目前還是可以使用的。
1.2 索引建立
1.2.1 通常可以采用inverted files或者B-trees等方法来建立索引。The lack of the
equivalent of words in music can be overcome by just cutting melodies into
n-grams (Downie, 1999) and indexing those.
参考文献:
J. S. Downie. Evaluating a simple approach to music information
retrieval: Conceiving melodic n-grams as text. PhD thesis, University of Western
Ontario, London, Ontario, Canada, 1999. R. Typke, P. Giannopoulos, R. C.
Veltkamp, F. Wiering, and R. van Oostrum. Using transportation distances for
measuring melodic similarity. In ISMIR Proceedings, pages 107–114, 2003.
2 Set-based methods for polyphonic music
这种方法吧音乐看成是一个旋律属性的集合,这种属性包括持续音调,音调的开始时间和持续时间。
2.1 距离度量
2.1.1 finding supersets
M. Clausen, R. Engelbrecht, D. Meyer, and J. Schmitz. PROMS: a web-based tool
for searching in polyphonic music. In ISMIR Proceedings, 2000.
2.1.2 Earth Mover’s Distance
R. Typke, P. Giannopoulos, R. C. Veltkamp, F. Wiering,and R. van Oostrum.
Using transportation distances for measuring melodic similarity. In ISMIR
Proceedings, pages 107–114, 2003.
代表系统:Typke的Orpheus。在该系统中,音符被表示成二维的一个向量,包含了起始时间以及音高,Earth Mover’s Distance
作为距离的度量方法,vantage objects作为索引的方式。
2.2 索引建立
2.2.1 inverted files
M. Clausen, R. Engelbrecht, D. Meyer, and J. Schmitz. PROMS: a web-based tool
for searching in polyphonic music. In ISMIR Proceedings, 2000.
2.2.2 Triangle inequality for indexing
R. Typke, P. Giannopoulos, R. C. Veltkamp, F. Wiering,and R. van Oostrum.
Using transportation distances for measuring melodic similarity. In ISMIR
Proceedings, pages 107–114, 2003.
3 Probabilistic Matching
通过训练隐马尔科夫模型,来计算查询音频和数据库中音频的相似度
3.1 距离度量
首先用数据库音频训练隐马尔科夫模型,然后通过计算查询音频的后验概率,得到两个音频的相似程度。
代表系统:Hoos的GUIDO/MIR
3.2 索引建立
采用的树的分层聚类
参考文献:
H. Hoos, K. Renz, and M. G¨org. GUIDO/MIR - an experimental musical
information retrieval system based on guido music notation. In ISMIR
Proceedings, pages 41–50, 2001.
SEARCHING AUDIO DATA
1 Extracting perceptionally relevant features
将一段音频分割成小段,提取每一小段的听觉感知特征,通过比较特征序列来检索。主要有以下特征:Loudness, Pitch, Tone,
Mel-filtered Cepstral Coefficients, Derivatives。
代表系统:Jang的Super MBox
该系统先提取音乐的基频,然后采用动态时间规整比较两个基频序列的相似度。
2 Audio
Fingerprinting
在复杂环境下,采用“声纹”能够获得更好的效果。这也是我接下去的时间打算重点学习的一个方向。
代表系统:Wang的Shazam
3 Set-based Methods
利用音频特征的集合进行检索
4 Self-Organizing Map
SOM是一种很常用的人工智能神经网络算法,主要用于无监督学习领域,对相似的音频进行聚类和分类。
代表系统:Rauber的SOMeJB-The SOM-enhanced JukeBox