CN1737796A - 数字音乐旋律的跨越式高速匹配方法 - Google Patents
数字音乐旋律的跨越式高速匹配方法 Download PDFInfo
- Publication number
- CN1737796A CN1737796A CN 200510029494 CN200510029494A CN1737796A CN 1737796 A CN1737796 A CN 1737796A CN 200510029494 CN200510029494 CN 200510029494 CN 200510029494 A CN200510029494 A CN 200510029494A CN 1737796 A CN1737796 A CN 1737796A
- Authority
- CN
- China
- Prior art keywords
- melody
- note
- segmentation
- coupling
- feature
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Auxiliary Devices For Music (AREA)
Abstract
一种数字音乐旋律的跨越式高速匹配方法,步骤包括:标准旋律特征读取和匹配检索控制步骤;旋律分段位置检测和移动匹配控制步骤;旋律分段旋律分段匹配步骤;旋律匹配检索结果显示步骤。旋律特征由表征音符特征的音高差、时间矢量的序列来描述,“音高差”指与前一个音符频率的差值,以半音为单位;“时间”指该音符的开始时刻,其表达了旋律的节奏特征,在进行输入旋律片段的音符特征序列与整首乐曲的标准旋律的音符特征序列的模式匹配时,以检测到的整首乐曲旋律中的旋律分段为匹配移动单位来进行跨越式移动匹配的控制。本发明可用于卡拉OK***歌曲点播,在教育方面可用于多媒体教学等。
Description
技术领域
本发明涉及的是一种计算机应用技术领域的方法,具体是一种数字音乐旋律的跨越式高速匹配方法。
背景技术
基于哼唱输入的数字音乐检索方式简称哼唱检索(QBH:Query by Humming),它允许用户通过哼唱的形式来检索所需要的歌曲。用户只要能回忆起其中的片段旋律,并通过麦克风哼唱出来,QBH检索***就能为用户找到其所需要的歌曲。在哼唱检索方面,由于用户凭借自己的记忆哼唱,再加之为非特定人哼唱,如何有效地对查询输入的旋律模式进行规整化,如何提高旋律匹配检索时的鲁棒性,以及如何实现面向大规模乐曲的检索高速化等,这些问题还没有得到很好的解决,许多关键技术都还有待于进一步深入研究。
针对哼唱检索,国内外已提出的面向旋律匹配的技术包括有:近似符号串比较算法,典型的如DP(Dynamic Programming)法和快速近似匹配法,音高轮廓几何匹配法和线性对齐近似旋律匹配算法LAN(Linear Alignment Mahcing)。在这些面向旋律匹配的方法中,旋律特征模式由音符特征序列来描述,而音符特征则一般由音符音高(或相对音高差)及音符长度(相对音符长度比)来表征;在对哼唱旋律片段与整首乐曲旋律之间进行非等长音符特征序列的模式匹配时,都是按照音符移动单位将输入旋律片段的音符序列沿着整首乐曲旋律的标准音符序列方向来进行逐一连续移动匹配的。经对现有技术的文献检索发现,刊登在《计算机研究与发展》2003年11月第40卷第11期,pp.1554-1560上的文章“线性对齐近似旋律匹配算法”,设当输入旋律片段沿着标准旋律的音符序列进行移动匹配并移动至第K个音符时,则该算法的核心步骤是:(1)先将输入旋律片段的头部音符与标准旋律的第K个音符对齐,并从以第K个音符为起点的标准旋律中取出长度为输入旋律片段长度1.3倍长的音符序列段作为在该头部音符对齐下的标准旋律匹配段;(2)在时间轴上进行两旋律匹配段的线性对齐近似旋律匹配,即将输入旋律片段线性延展到与标准旋律的音符序列段相同的长度,并在一定的误差范围内对齐发生时刻接近的音符,计算旋律在节奏上的相似度,同时继续比较两段等长旋律在每个时间点上的音高差异,计算旋律在音高上的相似度,最后,综合考虑节奏和音高两方面的相似度,给出输入旋律片段与该标准旋律音符序列段的匹配得分。接着,输入旋律片段的头部音符将继续沿着标准旋律的音符序列向后移动一个音符,并重复上述基于核心步骤的旋律音符序列段的匹配,直至移动到最后为止。线性对齐近似旋律匹配算法具有节奏容错性好、匹配精度高的优点,但是由于这种基于音符移动单位的移动匹配方式响应时间较长,不适于用作大规模数字音乐库的检索匹配。因此,随着数字音乐库的规模日益增大,面向旋律匹配检索的响应速度和检索精度之间的矛盾将会日益突出,成为基于哼唱输入的数字音乐检索***迈向实用化的一大瓶颈。
发明内容
本发明的目的在于针对现有技术的不足,提供一种高性能的数字音乐旋律的跨越式高速匹配方法,使得在保持对用户哼唱输入的容错性的同时,还能大幅度地提高对哼唱输入的匹配检索速度。
本发明是通过以下技术方案实现的,本发明包括以下步骤:
(1)标准旋律特征读取和匹配检索控制步骤:控制保存在旋律特征提取结果存储部的输入旋律的音符特征序列和保存在标准旋律特征库中的整首标准旋律的音符特征序列的读取及其匹配检索进程;
(2)旋律分段位置检测和移动匹配控制步骤:检测乐曲标准旋律中表征各旋律分段位置的特征音符,标准旋律中每两个特征音符间的音符特征序列即被定义为一个旋律特征分段;同时,控制输入旋律片段与乐曲标准旋律中的各旋律分段进行匹配时的跨越式移动方式,以及输出整首旋律匹配结果;
(3)旋律分段匹配步骤:进行输入旋律片段与乐曲标准旋律中某一旋律分段间的模式匹配,旋律分段的匹配结果将返回所述旋律分段位置检测和移动匹配控制步骤的控制进程;
(4)旋律匹配检索结果显示步骤:显示基于输入旋律片段的最终标准旋律匹配检索的结果,包括与前N位匹配的乐曲旋律特征曲线的比较视图及其相关乐曲的文本属性;
所述的旋律特征由表征音符特征的(音高差、时间)矢量的序列来描述。其中,“音高差”指与前一个音符音高(基本频率)的差值,以适应不同旋律的起调和非特定人哼唱,并以半音(Semitone)为单位;“时间”指该音符的开始时刻,其表达了旋律的节奏特征。之所以选用音符起始时刻而非音符持续时间长度来作为表征旋律的节奏参数,是考虑到用户哼唱旋律时的节奏特征。用户在进行哼唱时,一般比较容易把握音符的出现时刻,而对各个音符的持续长度不怎么敏感或差异较大。而若仅仅采用音高信息而忽略时间这一节奏信息,随着音乐库规模的扩大,匹配成功率势必会随之下滑,将变得越来越低。另外,考虑到单以音高信息为参数匹配的局限性,本发明选择(音高差,时间)的矢量序列来描述旋律的特征。在进行输入旋律片段的音符特征序列与整首乐曲旋律的标准音符特征序列的模式匹配时,不是像传统的旋律移动匹配方式那样,即按照音符移动单位将输入旋律片段的音符序列沿着整首乐曲旋律的音符序列方向进行逐一连续移动匹配的控制,而是以检测到的整首乐曲旋律中的各旋律分段的特征音符位置为匹配移动单位来实现跨越式移动匹配的控制,从而为实现大幅度提高基于内容的音乐检索匹配速度提供了一种切实可性的解决方法。
在本发明方法对音符数为N的输入哼唱旋律片段进行匹配检索时,同现有按音符单位逐一移动匹配法,如线性对齐近似旋律匹配法LAN相比较,针对某一音符数为M的乐曲旋律分段的匹配,采用LAN法需要|M-N|K+K/2次,即至少需要|M-N|K次,这里的K为采用LAN法时标准旋律分段对输入旋律片段音符序列长度的容错范围,其单位是音符数。而本发明所述方法,最多需2K次,其中,第1次为输入旋律片段头部与乐曲旋律分段头部对齐下的K次线性对齐匹配;而第2次是为了考虑用户哼唱片段在其起始部存在音符脱落现象,而将输入旋律片段的头部延乐曲旋律分段音符序列方向向后移动一个音符,即相当于将输入旋律片段头部与乐曲旋律分段头部的下一个音符对齐下的K次线性对齐匹配。由此可见,在针对乐曲旋律分段的匹配检索方面,本发明所述匹配法的速度至少要比LAN法快|M-N|/2倍;而针对某一音符数为R、并含有L个旋律分段的整首乐曲旋律的匹配,采用LAN法需要(R-N)K+K/2次,即至少要进行(R-N)K次匹配,而采用本发明所述方法则最多需要2LK次,故本发明所述匹配检索法的速度至少要比LAN法快|R-N|/2L倍。
因此,由于引入了旋律分段检测并以旋律分段为移动匹配单位的概念,使得能通过检测表征分段特征的音符位置来实现大幅度的跨越式移动匹配,从而解决旋律检索高速化的问题。整首乐曲旋律的标准音符序列越长则越能体现本发明所述方法的优越性。
本发明所述的旋律分段位置检测和移动匹配控制步骤,为避免过多的无意义的分段,先由消除可忽略静音段(等效于休止符)步骤搜索标准旋律的音符特征序列,若查找的音符长度小于某一预先设定的静音段长度阈值则将该音符加以删除,并将此段并入前一个音符的发音段。由于静音段长度阈值一般设得较低(如八分音符长度),所以这种删除在匹配检索时对结果几乎没有影响。在删除了可忽略的静音段后,则由特征音符的检测步骤根据音符类别特征及其音符长度特征来对标准旋律中的每个音符进行检测。特征音符类别分为定位类音符和休止类音符,对于这两类音符均按其各自的音符长度是否超过事先所设定的特征音符阈值来确定该音符是否为分段特征音符。在整首标准旋律中每两个特征音符间的音符特征序列即被定义为一个旋律特征分段。
对于定位类特征音符的设定为:其音符长度若大于或等于二分音符长时则将该音符确定为分段特征音符;对于休止类特征音符的设定为:其音符长度若大于或等于八分音符长时则将该类音符确定为分段特征音符。
所述的旋律分段,基于特征音符进行,其依据及其用于哼唱检索的可行性是根据乐理基础知识及对大量乐曲旋律进行统计分析与验证的基础上得出的。首先,对于整首旋律的可划分位置,可考虑休止符位置为一种表征旋律分段特征的特征音符。但是,一般在主旋律中,休止符的数目并不是很多,仅考虑采用休止符作为旋律分段的切分位置势必将造成旋律分段过长,从而没有起到真正的分段作用。通过对大量乐曲旋律的音符特征分析,发现在乐曲,尤其歌曲中,连贯的旋律分段大都在二分音符/全音符处结束。之所以如此,这其中有一个意群的概念。意群是指一个具有相对独立意义的词组、短语或短句,任何的交流都是概念与概念的结合方式的交流。无概念的符号或声音是无意义的,也就不能成为语言。在书面表达里任何句子、文章都是由基本概念以一定的方式结构而成的。就如同我们日常交流一般,都是以一个一个完整的语句或者词组出现,而不会突然从一个词组的中间开始交流,哼唱也是一样,出于人们思维的惯式,拿某句歌词“五千年的风和雨”为例,哼唱人一般不会以“年的风和”这样的分段进行哼唱,因为这样的分段不构成一个独立的意群,在乐曲中,对应于一个个意群的多为一个个乐句,其间以较长的音符或休止符作为间隔的标记,以换取主旋律的交替,演奏中的间歇,实际也是意群的转变。所以本发明可以将这些特征音符所处的位置作为检索匹配时跳跃匹配的基础。
本发明所述的旋律分段匹配步骤,为防止由于用户哼唱片段在其起始部存在音符脱落现象而导致其与乐曲旋律分段匹配的失配,在进行旋律分段匹配时设有基于音符移动单位的旋律头部容错移动匹配控制机制。即在将输入旋律片段与乐曲旋律的某一特征旋律分段进行匹配时,先进行各自旋律头部对齐的线性伸缩匹配,然后将输入旋律片段的旋律头部沿着该乐曲旋律分段的音符序列方向向后移动一个音符再进行一次旋律头部对齐的线性伸缩匹配,直至这种旋律头部容错移动到达所设定的移动范围为止,并取其旋律头部容错移动匹配中的最高匹配得分作为该旋律分段的匹配输出得分返回。在本发明中该容错移动范围设为2个音符长。
本发明所述的旋律分段匹配步骤,也可以由下述特征而构成。即含有针对节奏相似性容错和针对音高相似性容错的控制步骤,其中,节奏相似性容错计算步骤为最大程度地容忍用户在哼唱时所产生的旋律节奏上的误差。为此,在输入旋律片段与乐曲旋律的某一旋律分段进行匹配之前,先参照输入旋律片段的音符数N设定乐曲旋律分段内对应的音符序列的匹配长度P的变化范围K,即β1N≤P≤β2N(β1<β2),K=(β2-β1)N=αN,其中,乐曲旋律分段音符序列的匹配长度P的变化只取决于其尾部位置变化而其头部位置保持不变。然后,以设定的乐曲旋律音符序列匹配长度P将输入旋律片段音符序列作时间上的旋律头部对齐线性伸缩变换,在一定的误差范围内对齐发声时刻接近的音符并计算节奏相似度,直至该旋律分段内P匹配范围内的K=αN次匹配操作完毕。由此容忍用户哼唱音符过长或过短而导致的误差。在计算节奏性相似度时,是根据对齐的音符占总数的比例计算的。音高相似性计算步骤为针对每次线性对齐后的两个旋律音符序列,计算其基于音高差的相似度,这是根据音高接近的旋律片段占旋律总长度的比例来计算的。在所述方法步骤中,每次线性对齐后的节奏匹配和音高差匹配结果将以范围在0-1之间的相对权重形式综合为一个旋律匹配的参数指标,并以K次线性对齐匹配中的最高得分的那次匹配结果作为该旋律分段的1次总匹配的结果而返回。
本发明所述的旋律匹配检索结果显示步骤,也可以由下述特征而构成。即含有可供用户选定的显示输入旋律片段音符特征序列与前N位中任意乐曲旋律分段的音符特征序列匹配效果的旋律特征曲线比较视图生成步骤。所述的旋律特征曲线,其横轴为各音符的起始时间,纵轴为音高(半音(Semitone)单位),输入旋律与乐曲旋律的特征曲线分别用不同的颜色来表示。乐曲旋律特征曲线中的特征音符,按其位置的音符图形面积用涂色方式表示。用户可根据所述的旋律特征曲线比较视图,方便地浏览自己的发音特点并做出必要的分析评估。
在本发明应用于大型的数字音乐数据库后,对于音乐检索的性能可得到明显提高。按本发明而实施的基于哼唱输入的音乐检索***的平均检索时间要比传统按照音符单位移动匹配检索方式的检索***减少2/3左右,***性能的改善效果非常显著。
附图说明
图1为适用于本发明的实施例的音乐旋律跨越式高速匹配装置的功能构成图。
图2为适用于本发明的实施例的音乐旋律跨越式高速匹配处理的流程图。
图3A-图3B为适用于本发明的实施例的音乐旋律跨越式高速匹配跨越移动方法的示意图。
图4A-图4B为用于说明按本发明的实施例进行的音乐旋律跨越式匹配过程中乐曲旋律分段特征检测程序的图。
图5A-图5E为用于说明按本发明的实施例进行的音乐旋律跨越式匹配过程中跨越式移动匹配程序的图。
图6为用于说明按本发明的实施例进行的音乐旋律跨越式匹配结果输出程序的图。
具体实施方式
以下结合附图以本发明技术方案提供以下实例。
基于本发明提出的方法,本发明实施例采用的音乐旋律跨越式高速匹配检索装置结构,如图1所示,具体由旋律特征提取结果存储部1、标准旋律特征库和音乐素材库存储部2、标准旋律特征读取和匹配检索控制部3、旋律分段位置检测和移动匹配控制部4、旋律分段匹配部5、旋律匹配结果存储部6、旋律匹配检索结果显示部7组成。
旋律特征提取结果存储部1用于使从输入旋律信号提取出的旋律特征结果适当地存储于存储器上的工作区。旋律特征结果中的音符特征序列信息为由该数字音乐旋律的跨越式高速匹配检索装置相关联而设置的前级的预处理***(无图示)的音符特征矢量序列提取流程得到的信息(无图示)。
标准旋律特征库和音乐素材库存储部2用于使预先制作及编制好的音乐素材集以及与其相对应的标准旋律特征数据集适当地存储于存储器上的数据库区。
标准旋律特征读取和匹配检索控制部3是用于控制从旋律特征模板文件中对音符特征序列的读取以及匹配检索的控制。标准旋律特征读取和匹配检索控制部3读取保存在旋律特征提取结果存储部1的输入旋律特征并将其依次与标准旋律特征库中的旋律特征进行匹配,匹配的结果则由旋律匹配结果存储部6存储于存储器上的输出区。在读取旋律特征模板文件时,由于***使用了旋律分段特征音符,在移动匹配的时候不是以音符为单位进行,而是以旋律分段为单位进行,这个装置可以读取音符的旋律节点标志,由于模板文件数量较大,需要匹配检索控制部来进行各个模板文件匹配过程的控制。
这里的标准旋律特征库中的旋律特征,是指从相应的乐曲素材数据文件中取出的旋律基本特征信息和音符特征序列的组合。其中,旋律基本信息包括乐曲ID、整首乐曲的音符总数、平均音高、音强、节拍及其它项等关键字节);音符特征序列则包括每个音符的音高特征(半音为单位),音长特征(tick为单位)和旋律分段标志。该旋律特征以被称为旋律特征模板文件的形式存放在数据流文件中,并且在相关的旋律模板文件和音乐素材文件之间建立关联,使得检索到模板文件序号(ID)的时候也可以得到相应的真正的音乐文件。
旋律分段位置检测和移动匹配控制部4用于在单个旋律特征模板文件的音符特征序列中检测旋律分段的特征音符,在匹配移动的时候,由于***使用了旋律分段特征音符,在移动匹配的时候不是以音符为单位进行,而是以旋律分段为单位进行,这个装置可以搜索检测到音符特征序列中的旋律特征音符,在完成一个旋律分段的两次线性对齐算法后,就定位到下一旋律分段开始的音符处,移动匹配控制可以完成这一工作。
旋律分段匹配部5用于完成对于一个旋律分段的匹配过程,第1次为输入旋律片段头部与乐曲旋律分段头部对齐下的K次线性对齐匹配,即考虑到用户输入音符有遗漏或是添加,而将输入段与标准旋律分段在容错匹配长度变化范围内的分段进行线性对齐匹配;而第2次是为了考虑用户哼唱片段在其起始部存在音符脱落现象,而将输入旋律片段的头部延乐曲旋律分段音符序列方向向后移动一个音符,即相当于将输入旋律片段头部与乐曲旋律分段头部的下一个音符对齐下的K次线性对齐匹配。在本发明中乐曲旋律分段的标准音符序列的容错匹配长度P的变化范围设为:0.75N~1.33N,其中N为输入音乐段的音符数。
旋律匹配结果存储部6在每一次与标准旋律模板文件匹配之后,可以将结果存储在该存储部中,包括匹配的模板文件序号,匹配总相似度值,最佳匹配的旋律分段在该文件中的位置等,并且保留前N位的匹配结果用于输出返回用户。本发明中N取10。)
旋律匹配检索结果显示部7在得到哼唱输入与标准旋律文件匹配前N位的计算结果后,可将模板文件序号对应到真正的音乐文件,为用户显示前N位的结果包括哼唱输入的文件名,匹配的排名,详细的音乐文件名,匹配总相似度值,匹配的旋律分段在音乐文件中的位置等。
图2给出了图1所示各功能部分的方法步骤。即其对应关系为:标准旋律特征读取和匹配检索控制步骤通过标准旋律特征读取和匹配检索控制部3实现,并由标准旋律特征读取和匹配检索控制部3判断是否存在乐曲旋律;旋律分段位置检测和移动匹配控制步骤以及是否存在旋律分段的判断通过旋律分段位置检测和移动匹配控制部4和旋律分段匹配部5实现;旋律匹配检索结果显示步骤通过旋律匹配检索结果显示部7实现。此外,图2中的输入节点①、②和输出节点⑥分别对应图1中的旋律特征提取结果存储部1、标准旋律特征库和音乐素材库存储部2和旋律匹配结果存储部6。
下面对实施例进行说明。
在图2中由标准旋律特征读取和匹配检索控制步骤依次读取的乐曲旋律的音符特征序列如图4A所示(音乐旋律:“莫斯科郊外的晚上”)。
图中横轴表示音符起始时间,其单位是MIDI(Musical Instrument DigitalInterface)文件中表示音符时间的特有单位TICK,而纵轴则表示音高,其单位是半音。图中第十个音符、第十八个音符与最后一个音符即为本发明所定义的定位类旋律分段特征音符,而第二十八个音符则为休止类旋律分段特征音符。因此,只要能通过检测手段检测出这些特征音符,则即可将这些特征音符定为旋律分段的标志位置,即一个音乐旋律分段的结束音符标志。在图2中,这部分工作由旋律分段位置检测和移动匹配控制部自动完成。即旋律分段位置检测和移动匹配控制步骤对表征旋律分段特征位置的特征音符的检测是按其音符类别特征及其音符长度特征来进行的。表征分段特征的特征音符,其类别分为定位类特征音符和休止类特征音符,对于这两类音符均按其各自的音符长度是否超过各自预先所设定的阈值来确定该音符是否为分段特征音符。在本实施例中对于定位类特征音符的设定为:其音符长度若大于或等于二分音符长时则将该音符确定为分段特征音符;对于休止类特征音符的设定为:其音符长度若大于或等于八分音符长时则将该类音符确定为分段特征音符。在整首标准旋律中每两个特征音符间的音符特征序列即被定义为一个旋律分段。如图4B所示,由图4A所示的这段乐曲旋律就被检测到4个特征音符并被分为四个旋律分段。
由旋律分段位置检测和移动匹配控制部4在对休止类特征音符的进行检测时,对小于八分音符的静音段,将对其实施删除合并操作,即,经统计发现,长度在八分音符以下的静音段可忽略,此时会将前一个音符的结束时间延长至下一个音符的发音起始时刻为止。
经过检测标注后,由旋律分段位置检测和移动匹配控制部4在存储器上的工作区内可生成相应的带有旋律分段信息的音乐旋律特征模板数据文件,如下表所示。即,旋律特征摸板的数据格式由旋律信息头和旋律音符特征序列组成。其中每个音符特征的数据结构的第一字段表示与前一音符的音高差值,但是首音符在这一字段记录的则是绝对音高值,虽然在匹配时不使用绝对音高值,但这一首音符记录方式对于计算重现描述旋律特征的音高曲线是必需的(如本实施例中的音高曲线);其第二字段记录的是用tick表示的该音符的发音起始时刻,如果是普通音符,就是正值,而如果该音符是分段特征音符,那么就在该音长特征值前加负号,特征音符的第三字段为可选标注位,用于记录特征音符的实际发音时间,同样也是用tick表示。如下表所示,只有当音符为表征旋律分段的特征音符时,该音符的特征字段才会有3个字段,而不是所有音符都具有3个字段。
因此,由标准旋律特征读取和匹配检索控制步骤至旋律分段匹配步骤在对输入旋律片段与整首乐曲的标准旋律进行匹配时,若采用这种带有旋律分段信息的标准旋律特征模板就可以不按音符移动单位来将输入旋律片段的音符序列沿着整首乐曲旋律的音符序列方向来进行连续移动匹配,而是可以按照在每首乐曲旋律中预先标注的旋律分段为匹配移动单位来进行跨越式移动匹配,参照图3,其中,图3A为M>N情况下的跨越式移动匹配控制方式的说明,图3BM=N情况下的跨越式移动匹配控制方式的说明。从而为实现大幅度提高基于内容的音乐检索匹配速度提供了一种切实可性的解决方法。
音乐ID | 音符数 | 平均音高 | 音强 | 节拍 | 音符1 | 音符2 | 音符3 | ||||||||||
3309 | 18 | 69.39 | 127 | 2/4 | 69 | 0 | 3 | 48 | 4 | 96 | |||||||
音符4 | 音符5 | 音符6 | 音符7 | 音符8 | 音符9 | 音符10 | 音符11 | ||||||||||
-4 | 144 | 2 | 192 | -2 | 288 | -1 | 336 | 5 | 432 | -2 | 528 | -5 | -624 | 192 | 3 | 816 | |
音符12 | 音符13 | 音符14 | 音符15 | 音符16 | 音符17 | 音符18 | |||||||||||
4 | 864 | 3 | 912 | 0 | 960 | 2 | 1008 | -2 | 1104 | -2 | 1152 | -1 | -1200 | 192 |
设有一待检索的哼唱输入旋律分段,其经过特征提取预处理(未图示)的输入旋律分段的音符特征序列如图5A所示。该输入旋律分段的音符特征序列中音符特征的描述同图4A(为了便于说明,以下图中纵轴都使用绝对音高而不是与前一音符的音高差)并会由标准旋律特征读取和匹配检索控制部3读入。图5B给出了图4B所示的标准旋律的第一段旋律分段的音符特征序列,该旋律分段的判断与截取处理由标准旋律特征读取和匹配检索控制步骤至旋律分段位置检测和移动匹配控制步骤进行。
下面叙述的本发明的跨越式高速匹配检索,将详细说明线性对齐算法与本发明的跨越式高速匹配算法在匹配过程中移动方式的不同。由图2中的旋律分段位置检测和移动匹配控制步骤先将检索起始位置先设在首音符处,即将输入旋律音符特征序列的首音符与标准旋律的音乐特征序列的第一个旋律分段的第一个音符对齐进行旋律分段的线性对齐匹配。为了防止非音乐专业人士在进行哼唱输入时可能发生的首音符遗漏现象,本发明的算法在线性对齐匹配一次后,向后移动一个音符,再进行第二次匹配,此时与无旋律分段标注的线性对齐算法并无不同。而在结束两次匹配之后,线性对齐算法会继续向后移动一个音符即第三个音符作为起始位置进行下一次移动匹配,而本发明方法则会自动向后移动到下一旋律分段的首音符,即检测到的本旋律分段的特征音符即结束位置,再向后一个音符即为下次移动匹配的起始位置。图5C给出了无旋律分段标注下的线性对齐算法的第三次匹配起始位置,而图5D则给出了本发明中跨越式高速检索匹配算法的第三次匹配起始位置。由图5C和图5D可见,本发明方法在匹配移动速度上大大优于传统的线性对齐算法。
在上述输入旋律片段移动匹配的过程中,其与标准旋律分段的匹配是由图2中的旋律分段匹配步骤完成的。并由旋律分段位置检测和移动匹配控制步骤判断整首旋律的旋律分段标注存在与否,直至输入旋律片段与一个完整的旋律匹配完毕为止。
在图2中由旋律分段匹配步骤进行旋律分段的线性对齐匹配时,是以预先设定的乐曲旋律的音符特征序列匹配长度P将输入旋律片段的音符特征序列作时间上的旋律头部对齐线性伸缩变换,并在一定的误差范围内对齐发声时刻接近的音符并计算节奏相似度,直至该旋律分段内P匹配范围内的K=αN次匹配操作完毕(图3参照)。在本发明实施例中乐曲旋律分段的标准音符序列的节奏容错匹配长度P的变化范围(K)设为:0.75N≤P≤1.33N(K=0.58N),其中,N为输入旋律片段的音符数。如实施例1中的输入段的音符数为8,那么如果标准旋律分段的长度小于6,那么可以认为这两段旋律分段无法进行伸缩变换,即可以跳过这个旋律分段而移动到下一个分段继续匹配。如有标准旋律的音符特征序列(“新世纪福音战士”),如图5 E所示。可以观察到第一个旋律分段只有3个音符,不符合此处输入段长度的匹配范围,所以可以忽略,跳过不做匹配。
在图2中由旋律分段位置检测和移动匹配控制步骤完成一个标准旋律的音符特征序列的跨越式检索匹配计算时,其节奏性相似度(rhythm_score)的计算是根据对齐的音符占总数的比例计算的。因为音符只记录了起始时间,造成最后一个音符的结束时刻无法确定。在本实例中,假设最后一个音符的长度为前面音符的平均值。
而其音高相似度(pitch_score)的计算是根据两个音的接近程度并由sim函数来评估的。考虑到用户哼唱总是存在有一定的音高误差,所以这个函数被设计成为能在一定范围内容忍误差。
最后将节奏相似度和音高相似度相加,就得到两段旋律近似程度的一个总评价。rhythm_score和pitch_score最高均为1.0,所以完全匹配的两端旋律的score为2.0。本实例中输入段较为清晰,预处理结果较好,在与“莫斯科郊外的晚上”匹配时得到的相似度就比较高,该匹配结果的rhythm_score和pitch_score分别为0.98和0.95,因此总的相似度有1.93,最佳匹配出现在该首乐曲旋律的第二个旋律分段。相对的,与其它标准旋律的音符特征序列的相似度就显得较低,如与“新世纪福音战士”的相似度分别为0.32和0.45,总的相似度只有0.77。
在图2中由标准旋律特征读取和匹配检索控制步骤来判断是否所有的标准旋律特征文件都进行匹配计算,从而得到当前输入旋律分段对于每一个标准旋律特征文件的匹配结果,并由旋律匹配检索结果显示步骤输出给用户,其中包括了该标准旋律特征文件的序号、总相似度值、当前文件的最佳匹配位置(起始音符序号,结束音符序号)。
对于实施例中输入的旋律片段,可以分别得到与标准旋律文件“莫斯科郊外的晚上”和“新世纪福音战士”的特征文件进行匹配的结果:
ID(莫斯科郊外的晚上) | 总相似度 | 最佳匹配位置 |
3309 | 1.93 | 11,18 |
ID(新世纪福音战士) | 总相似度 | 最佳匹配位置 |
101 | 0.77 | 9,18 |
在图2中由旋律匹配检索结果显示步骤对保存在旋律匹配结果存储部6中的输入旋律片段与所有标准旋律特征文件的相似度进行排序,得到前N位得分高的标准旋律(ID)作为输出结果,本实例中N取10作为默认值,具体可由用户设定。输出界面实例如图6所示。在界面左侧的旋律特征曲线比较示意图中,显示了当前输入旋律片段和当前标准特征文件的最佳匹配位置上的旋律曲线,单击上方的箭头可以选择不同的标准特征文件。右侧的列表显示了当前输入旋律片段前N位的匹配结果,包括匹配排名、ID、匹配位置、总相似度、乐曲名、歌手和国家。
Claims (9)
1.一种数字音乐旋律的跨越式高速匹配方法,其特征在于,包括以下步骤:
(1)标准旋律特征读取和匹配检索控制步骤:控制保存在旋律特征提取结果存储部的输入旋律的音符特征序列和保存在标准旋律特征库中的整首标准旋律的音符特征序列的读取及其匹配检索进程;
(2)旋律分段位置检测和移动匹配控制步骤:检测乐曲标准旋律中表征各旋律分段位置的特征音符,标准旋律中每两个特征音符间的音符特征序列即被定义为一个旋律特征分段;同时,用于控制输入旋律片段与乐曲标准旋律中的各旋律分段进行匹配时的跨越式移动方式,以及输出整首旋律匹配结果;
(3)旋律分段匹配步骤:输入旋律片段与乐曲标准旋律中某一旋律分段间的模式匹配,旋律分段的匹配结果将返回所述旋律分段位置检测和移动匹配控制步骤的控制进程;
(4)旋律匹配检索结果显示步骤:显示基于输入旋律片段的最终标准旋律匹配检索的结果,包括与前N位匹配的乐曲旋律特征曲线的比较视图及其相关乐曲的文本属性;
旋律特征由表征音符特征的音高差、时间矢量的序列来描述,其中,“音高差”指与前一个音符频率的差值,以适应旋律的起调和非特定人哼唱,并以半音为单位;“时间”指该音符的开始时刻,其表达了旋律的节奏特征,在进行输入旋律片段的音符特征序列与整首乐曲的标准旋律的音符特征序列的模式匹配时,以检测到的整首乐曲旋律中的旋律分段为匹配移动单位来进行跨越式移动匹配的控制。
2.如权利要求1所述的数字音乐旋律的跨越式高速匹配方法,其特征是,所述的旋律分段位置检测和移动匹配控制步骤,分为消除可忽略静音段和检测旋律分段特征音符两个步骤进行,消除可忽略静音段步骤为搜索标准旋律的音符特征序列,查找音符长度小于某一预先设定的静音段长度阈值的音符并将其删除,然后将此段长度并入前一个音符的发音段,即将前一个音符长度延长一个已被决定要删除的静音段;检测旋律分段特征音符为基于音符类别特征及其音符长度特征来进行的,特征音符类别分为定位类特征和休止类特征音符,对于这两类音符均按其各自的音符长度是否超过事先所设定的阈值来确定该音符是否为分段特征音符,在整首标准旋律中每两个特征音符间的音符特征序列即被定义为一个旋律特征分段。
3.如权利要求2所述的数字音乐旋律的跨越式高速匹配方法,其特征是,对于音符类音符的设定为:其音符长度若大于或等于2分音符长时则将该音符确定为分段特征音符;对于休止符类音符的设定为:其音符长度若大于或等于8分音符长时则将该类音符确定为分段特征音符。
4.如权利要求1所述的数字音乐旋律的跨越式高速匹配方法,其特征是,所述的旋律分段匹配步骤中,在进行旋律分段匹配时设有基于音符移动匹配的容错控制机制,即在将输入旋律片段与乐曲旋律的某一特征旋律分段进行匹配时,先进行各自旋律头部对齐的匹配,然后将输入旋律片段的旋律头部沿着乐曲特征旋律分段的音符序列向后移动一个音符再进行一次匹配,直至这种容错移动到达所设移动范围为止,并取其容错移动中的最高匹配得分作为该旋律分段的匹配输出得分返回。
5.如权利要求4所述的数字音乐旋律的跨越式高速匹配方法,其特征是,容错移动范围设为2个音符长。
6.如权利要求1所述的数字音乐旋律的跨越式高速匹配方法,其特征是,所述的旋律分段匹配步骤,含有节奏相似性计算和音高相似性计算步骤,在计算节奏性相似度时,是根据对齐的音符占总数的比例计算的;音高相似性计算步骤为针对每次线性对齐后的两个旋律音符序列,计算其基于音高差的相似度,这是根据音高接近的旋律片段占旋律总长度的比例来计算的;最后将节奏相似度和音高相似度相加,就得到两段旋律近似程度的一个总评价。
7.如权利要求6所述的数字音乐旋律的跨越式高速匹配方法,其特征是,其中,节奏相似性计算步骤为最大程度地容忍用户在哼唱时的节奏上的误差,在输入旋律片段与乐曲旋律的某一旋律分段进行匹配之前,先参照输入旋律片段的音符数长度设定乐曲旋律分段音符序列的匹配长度范围,乐曲旋律分段音符序列的匹配长度变化只取决于其尾部位置变化,然后以设定的乐曲旋律音符序列匹配长度将输入旋律片段音符序列作时间上的线性伸缩变换,在误差范围内对齐发声时刻接近的音符并计算节奏相似度,直至匹配范围内的匹配操作完毕。
8.如权利要求6或者7所述的数字音乐旋律的跨越式高速匹配方法,其特征是,每次线性对齐后的节奏匹配和音高差匹配结果将以范围在0-1之间的相对权重形式综合为一个旋律匹配的参数指标,并以K次线性对齐匹配中的最高得分的那次匹配结果作为该旋律分段的1次总匹配的结果而返回。
9.如权利要求1所述的数字音乐旋律的跨越式高速匹配方法,其特征是,所述的旋律匹配检索结果显示步骤,含有可供用户选定的显示输入旋律片段音符特征序列与前N位中任意乐曲旋律分段的音符特征序列匹配效果的旋律特征曲线比较视图生成步骤,表征旋律的特征曲线,其横轴为各音符的起始时间,纵轴为音高,输入旋律与乐曲旋律的特征曲线分别用不同的颜色来表示,乐曲旋律特征曲线中的特征音符,按其位置的音符图形面积用全涂色方式表示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200510029494 CN1737796A (zh) | 2005-09-08 | 2005-09-08 | 数字音乐旋律的跨越式高速匹配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200510029494 CN1737796A (zh) | 2005-09-08 | 2005-09-08 | 数字音乐旋律的跨越式高速匹配方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1737796A true CN1737796A (zh) | 2006-02-22 |
Family
ID=36080593
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200510029494 Pending CN1737796A (zh) | 2005-09-08 | 2005-09-08 | 数字音乐旋律的跨越式高速匹配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1737796A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1953046B (zh) * | 2006-09-26 | 2010-09-01 | 中山大学 | 一种基于哼唱的乐曲自动选择装置和方法 |
CN101916250A (zh) * | 2010-04-12 | 2010-12-15 | 电子科技大学 | 一种基于哼唱的音乐检索方法 |
CN102820027A (zh) * | 2012-06-21 | 2012-12-12 | 福建星网视易信息***有限公司 | 伴唱字幕显示***及方法 |
CN101398827B (zh) * | 2007-09-28 | 2013-01-23 | 三星电子株式会社 | 用于哼唱检索的方法和装置 |
CN101488128B (zh) * | 2008-01-14 | 2013-06-12 | 三星电子株式会社 | 基于旋律印记的音乐搜索方法和*** |
CN103514182A (zh) * | 2012-06-19 | 2014-01-15 | 国际商业机器公司 | 音乐搜索方法与装置 |
CN105244021A (zh) * | 2015-11-04 | 2016-01-13 | 厦门大学 | 哼唱旋律到midi旋律的转换方法 |
CN106547797A (zh) * | 2015-09-23 | 2017-03-29 | 腾讯科技(深圳)有限公司 | 音频生成方法和装置 |
CN107039024A (zh) * | 2017-02-10 | 2017-08-11 | 美国元源股份有限公司 | 乐谱数据处理方法及装置 |
CN110265051A (zh) * | 2019-06-04 | 2019-09-20 | 福建小知大数信息科技有限公司 | 应用于基础音乐视唱教育的视唱音频智能评分建模方法 |
CN111899762A (zh) * | 2020-06-30 | 2020-11-06 | 平安科技(深圳)有限公司 | 旋律相似度评测方法、装置、终端设备及存储介质 |
CN112331170A (zh) * | 2020-10-28 | 2021-02-05 | 平安科技(深圳)有限公司 | 佛乐旋律相似度的分析方法、装置、设备及存储介质 |
CN113648651A (zh) * | 2021-07-02 | 2021-11-16 | 北京金三惠科技有限公司 | 一种音乐教学基础提升游戏的定位方法及*** |
-
2005
- 2005-09-08 CN CN 200510029494 patent/CN1737796A/zh active Pending
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1953046B (zh) * | 2006-09-26 | 2010-09-01 | 中山大学 | 一种基于哼唱的乐曲自动选择装置和方法 |
CN101398827B (zh) * | 2007-09-28 | 2013-01-23 | 三星电子株式会社 | 用于哼唱检索的方法和装置 |
CN101488128B (zh) * | 2008-01-14 | 2013-06-12 | 三星电子株式会社 | 基于旋律印记的音乐搜索方法和*** |
CN101916250A (zh) * | 2010-04-12 | 2010-12-15 | 电子科技大学 | 一种基于哼唱的音乐检索方法 |
CN101916250B (zh) * | 2010-04-12 | 2011-10-19 | 电子科技大学 | 一种基于哼唱的音乐检索方法 |
CN103514182A (zh) * | 2012-06-19 | 2014-01-15 | 国际商业机器公司 | 音乐搜索方法与装置 |
CN103514182B (zh) * | 2012-06-19 | 2017-05-17 | 国际商业机器公司 | 音乐搜索方法与装置 |
CN102820027A (zh) * | 2012-06-21 | 2012-12-12 | 福建星网视易信息***有限公司 | 伴唱字幕显示***及方法 |
CN102820027B (zh) * | 2012-06-21 | 2014-04-16 | 福建星网视易信息***有限公司 | 伴唱字幕显示***及方法 |
WO2017050059A1 (zh) * | 2015-09-23 | 2017-03-30 | 腾讯科技(深圳)有限公司 | 音频生成方法、服务器和存储介质 |
CN106547797A (zh) * | 2015-09-23 | 2017-03-29 | 腾讯科技(深圳)有限公司 | 音频生成方法和装置 |
US10261965B2 (en) | 2015-09-23 | 2019-04-16 | Tencent Technology (Shenzhen) Company Limited | Audio generation method, server, and storage medium |
CN106547797B (zh) * | 2015-09-23 | 2019-07-05 | 腾讯科技(深圳)有限公司 | 音频生成方法和装置 |
CN105244021A (zh) * | 2015-11-04 | 2016-01-13 | 厦门大学 | 哼唱旋律到midi旋律的转换方法 |
CN105244021B (zh) * | 2015-11-04 | 2019-02-12 | 厦门大学 | 哼唱旋律到midi旋律的转换方法 |
CN107039024A (zh) * | 2017-02-10 | 2017-08-11 | 美国元源股份有限公司 | 乐谱数据处理方法及装置 |
CN110265051A (zh) * | 2019-06-04 | 2019-09-20 | 福建小知大数信息科技有限公司 | 应用于基础音乐视唱教育的视唱音频智能评分建模方法 |
CN111899762A (zh) * | 2020-06-30 | 2020-11-06 | 平安科技(深圳)有限公司 | 旋律相似度评测方法、装置、终端设备及存储介质 |
CN111899762B (zh) * | 2020-06-30 | 2024-05-31 | 平安科技(深圳)有限公司 | 旋律相似度评测方法、装置、终端设备及存储介质 |
CN112331170A (zh) * | 2020-10-28 | 2021-02-05 | 平安科技(深圳)有限公司 | 佛乐旋律相似度的分析方法、装置、设备及存储介质 |
CN112331170B (zh) * | 2020-10-28 | 2023-09-15 | 平安科技(深圳)有限公司 | 佛乐旋律相似度的分析方法、装置、设备及存储介质 |
CN113648651A (zh) * | 2021-07-02 | 2021-11-16 | 北京金三惠科技有限公司 | 一种音乐教学基础提升游戏的定位方法及*** |
CN113648651B (zh) * | 2021-07-02 | 2023-11-17 | 北京金三惠科技有限公司 | 一种音乐教学基础提升游戏的定位方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1737796A (zh) | 数字音乐旋律的跨越式高速匹配方法 | |
CN100373383C (zh) | 基于特征音符的音乐旋律分段自动标注方法 | |
Burred et al. | Hierarchical automatic audio signal classification | |
Lidy et al. | On the suitability of state-of-the-art music information retrieval methods for analyzing, categorizing and accessing non-western and ethnic music collections | |
CN100373382C (zh) | 基于内容的数字音乐检索旋律特征数据库及生成*** | |
JP2009508156A (ja) | 音楽分析 | |
US20060085188A1 (en) | Method for Segmenting Audio Signals | |
Aucouturier et al. | Finding repeating patterns in acoustic musical signals: Applications for audio thumbnailing | |
Chai et al. | Music thumbnailing via structural analysis | |
CN102053998A (zh) | 一种利用声音方式检索歌曲的方法及***装置 | |
CN100367279C (zh) | 数字音乐旋律的跨越式高速匹配装置 | |
Blaß et al. | Content-based music retrieval and visualization system for ethnomusicological music archives | |
Chen | Music sheet score recognition of Chinese Gong-che notation based on Deep Learning | |
Vaglio et al. | The words remain the same: Cover detection with lyrics transcription | |
Su et al. | High-performance content-based music retrieval via automated navigation and semantic features | |
Moelants et al. | The problems and opportunities of content-based analysis and description of ethnic music | |
West et al. | Incorporating machine-learning into music similarity estimation | |
Chai | Structural analysis of musical signals via pattern matching | |
Shenhuang et al. | Query by humming via multiscale transportation distance in random query occurrence context | |
Müller | New developments in music information retrieval | |
Moelants et al. | Problems and opportunities of applying data-& audio-mining techniques to ethnic music | |
Li | [Retracted] Transformation of Nonmultiple Cluster Music Cyclic Shift Topology to Music Performance Style | |
Pinto et al. | A novel xml music information retrieval method using graph invariants | |
Shen et al. | QUC-tree: Integrating query context information for efficient music retrieval | |
Li et al. | Frame-level multi-label playing technique detection using multi-scale network and self-attention mechanism |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |