用于哼唱检索的方法和装置的制作方法

文档序号:2837388阅读:205来源:国知局

专利名称::用于哼唱检索的方法和装置的制作方法
技术领域
:本发明涉及自动搜索音乐的领域,更具体地讲,涉及一种用于畔唱检索(QBSH)的方法和装置,通过该方法和装置,用户能够快速检索到他/她期望听到的音乐。
背景技术
:传统上,当用户希望听音乐时,他/她不得不输入音乐的名称、歌手名字或者与音乐相关的其他信息,来在音乐库中检索特定音乐。然而,随着音乐库中存储的音乐的数量的增加,用户越来越难以记住如此众多的音乐的信息,因此,查找音乐变得困难。为了解决这一问题,开发了一种基于内容的检索方法,即,畔唱检索(QBSH)。QBSH具体目的在于通过输入用户的哼唱、一^L音乐的录音或者口哨来搜索到期望的音乐,因此能够帮助用户从音乐库中找到他/她已经忘掉歌词、歌唱者等信息的音乐。在第US20070131094A1号美国专利中,提供了一种畔唱检索方法。该方法使用3D搜索算法来执行音乐信息检索,即,在三维空间(t,S,H)中执行搜索,其中,t表示时间,S表示语音学的语言特征,H表示UDS字符串。在该发明中,将具有附加"da"字的标准言语识别器和畔唱检索系统结合起来。另一个美国专利第US6188010B1号也提供了一种哼唱^f企索方法,该方法能够实现当仅得知歌曲的旋律时也能搜索到该歌曲。在该方法中,用户通过使用钢琴输入一首歌曲的旋律,来检索歌曲。美国专利第US6121530以及US5874686号也提出了有关音乐检索的方法。传统QBSH通常包含下列几个主要部分(a)从用户啤唱里提取基频并将提取的基频转换为半音;(2)得到半音轮廓后,进行音符切分,通常情况下,将音符的时长信息忽略,所谓音符切分指的是将轮廓线按照时长切分为1/8、1/4等音符序列;(c)将半音旋律轮廓转换为其它形式。由于用户很难哼唱出音乐谱中的精确的音符,往往会低一些或高一些,直接用音符值进行匹配会有很大的误差,因此,通常的做法是使用一些其他的特征表示方式,如减均值、音符差、UDS字符串等;(d)进行旋律搜索。在将旋律转换为其他形式后,一般采用字符串匹配算法、动态时间规整(DTW)、Viterbi搜索等。然而,传统QBSH系统的问题在于准确率较低,因为对于用户畔唱,很难得到准确的音符切分,会有很多的插入、删除、替换错误;并且音符切分后,旋律序列中的音符数目较少,使得对于旋律的表示非常不准确,导致采用后面的匹配算法后,准确率有很大的不足。这种情况随着音乐库中音乐数目的增加会变得更加严重。而且,检索速度也会随着音乐库中音乐数目的增加而显著变慢。因此,需要一种能够根据用户的哼唱快速准确和快速地从大规模音乐库中找出所要的音乐的方法和装置。
发明内容本发明的目的在于一种能够提高哼唱检索的准确率和速度的用于口亨唱检索的方法和装置,以解决现有技术中的问题。本发明的构思主要包括两个要点(1)在音乐库上执行自动音乐小节切分,以得到搜索的可能起始位置或结束位置;(2)使用不同的旋律分辨率。首先,执行低分辨率搜索,以从大音乐库中快速搜索出一小组可能的音乐,然后,执行高分辨率搜索,以提高匹配精度。根据本发明的一方面,提供了一种用于哼唱检索的音乐模板创建方法,包括提取音乐库中的每首音乐的主旋律轮廓;将提取的主旋律轮廓按照音乐小节进行切分;将按照音乐小节切分后的旋律轮廓转换为帧级音符序列,并将其存储为模板序列。根据本发明的一方面,在进行音乐小节切分时,执行下述步骤获得歌曲旋律的相关信息;根据获得的信息找到每一小节的起始点和结束点;在旋律轮廓上标记每个小节的起始点和结束点。根据本发明的一方面,在将按照音乐小节切分的旋律轮廓转换为帧级音符轮廓时,可按照预定的帧移来对旋律轮廓的音符进行采样,以得到旋律音符序列。根据本发明的一方面,所述音乐模板创建方法,还可包括将旋律音符序列转换为减均值形式的旋律音符序列。根据本发明的另一方面,提供了一种用于哼唱检索的方法,包括输入从哼唱中提取的帧级;险索序列;输入按照音乐小节进行切分的帧级模板序列;将检索序列和模板序列进行匹配;根据匹配的结果,输出检索结果。根据本发明的另一方面,将检索序列和模板序列进行匹配的步骤包括以第一帧移从哼唱检索序列中提取低分辨率检索序列;以第一帧移从输入的模板序列中提取低分辨率模板序列;将低分辨率检索序列和提取的低分辨率模板序列进行匹配,根据匹配的结果,从音乐库中得到一组候选模板序列;以比第一帧移小的第二帧移从输入的检索序列中提取高分辨率帧级检索序列;以第二帧移从得到的候选模板序列中的每一个提取高分辨率模板序列;将高分辨率检索序列和高分辨率模板序列进行匹配。其中,采用具有快拍子伸缩的线性伸缩算法进行检索序列和模板序列之间的匹配。根据本发明的另一方面,在进行检索序列和模板序列之间的匹配时,执行如下步骤(a)输入检索序列Q和模板序列T;(b)使伸缩比例r等于r0,并使伸缩比例r的偏移S等于SQ;(c)计算Q,=Qxr,并利用线性伸缩算法计算序列Q,和模板序列T之间的距离值d叫Q广TI;(e)计算Qh妙-Qx(r+S),并利用线性伸缩算法计算序列Qhigh和模板序列T之间的距离值dhigh=|Qhigh-T|;(f)计算Qbw=Qx(r-S),并利用线性伸缩算法计算序列Qi。w和模板序列T之间的距离值d!。w叫Qtow-TI;(g)比较d、dh妙和d,。w的大小;(h)如果4igh最小,则使r-r+S,d=dhlgh,如果d!。w最小,则使n-S,d=dlow,如果d最小,则保持r和d值不变;(i)判断S是否大于预设值;(j)如果S大于预定值,则<吏3=5/2,并返回到步骤(e);(k)如果5小于预定值,则输出距离值d;(l)如果d小于预定值,则表示检索序列和模板序列匹配,输出与模板序列对应的音乐作为检索结果。其中,ro和5o分别为1.4和0.4,所述预定值为0.09。根据本发明的另一方面,在进行检索序列和模板序列之间的匹配时,使用快速迭代对齐算法计算检索序列和模板序列之间的距离值,如果两者之间的距离值小于预定值,则输出与该模板序列对应的音乐作为检索结果,否则丟弃该模板,进行检索序列与下一个模板序列之间的匹配。根据本发明的另一方面,在进行检索序列和模板序列之间的匹配时,执行如下步骤(a)输入检索序列Q=(qhq2,...,qN)和模板序列丁=(^,t2,...,tM),其中,N表示检索序列的帧数,M表示模板序列的帧数;(b)输入迭代次数D,同时使j-N/2,i=0;(c)将序列Q在j点分为两个序列=(qi,q2,...,化)和02=(qj+1,qj+2,…,qN);(d)分别将序列的和值sum(QJ以及Q序列的和值s腿(Q),以及两者的比值R=sum(Q!)/sum(Q);(e)使k=M/2,T产(t!,t2,...,tk),T2=(tk+l,tk+2,...,tM);(f)利用线性伸缩算法求Q!和T,的距离值的d,以及Q2和T2之间的距离值d2,并使S广山+d2;(g)将模板序列T从第h点分开,分为两个序列Tf(t!,t2,…,th),T2=(th+1,th+2,...,tM),并使序列T3和T的和值之间的比等于R;(h)利用线性伸缩算法求Q!和T3的距离值的d3以及Q2和T4之间的距离值d4,并使S2二d3+d4;(i)判断SI和S2之间的大小关系,如果S1小于S2,则使S:Sl,i=k,否则使S-S2,i=h;(j)如果D等于零,则输出S值,如果D不等于零,则D二D-1,并使T产(t,,t2,...,ti),T2=(ti+1,ti+2,..,,tM),然后分别令Q:Q"T=T^。Q=Q2,丁=丁2重新执行步骤(a),并对Q=Q,,T^T!以及Q=Q2,T=T2的返回值进行累加作为S的值并输出;(k)如果S小于预定的距离值,则输出与模板序列T对应的音乐作为检索结果,否则,执行检索序列与下一个模板序列之间的匹配。根据本发明的又一方面,一种用于畔唱检索的音乐模板创建装置,包括提取音乐库中的每首音乐的主旋律轮廓的提取单元;将提取的主旋律轮廓按照音乐小节进行切分的音乐小节切分单元;将按照音乐小节切分后的旋律轮廓转换为音符序列并将其存储为模板序列的转换单元。根据本发明的又一方面,提供了一种用于哼唱检索的装置,包括输入切分的帧级模板序列的模板序列输入单元;将检索序列和模板序列进行匹配的匹配单元;根据匹配的结果输出检索结果的输出单元。根据本发明的又一方面,提供了一种用于口亨唱检索的装置,包括模板创建单元,用于对音乐库中每首音乐提取主旋律,并创建按照音乐小节进行切分的模板组;旋律提取单元,用于从用户的畔唱中提取检索旋律轮廓;旋律匹配单元,用于将提取的检索旋律轮廓与模板组中的每一模板进行匹配,并根据匹配结果,输出候选音乐。根据本发明的又一方面,所述的装置还包括多分辨率模板序列创建单元,用于以预定帧移从提取的主旋律中提取音符序列,从而创建多分辨率帧级旋律模板序列。根据本发明的又一方面,所述的装置还包括多分辨率检索序列创建单元,用于从检索旋律轮廓提取音符序列,从而创建多分辨率帧级旋律检索序列。通过下面结合附图对实施例进行的描述,本发明的上述和其他目的和特点将会变得更加清楚,其中图1是根据本发明的畔唱检索方法的框图;图2是示出在图1的模块100中执行的创建模板组的详细流程图;图3是示出在图1的模块200中执行的从哼唱中提取旋律的详细流程图;图4是示出在图1的模块300中执行的旋律匹配处理的详细流程图;图5是示出传统线性伸缩算法的示图;图6A和6B示出传统RA算法的示图;图7是示出本发明实施例中的均值位移算法的示图。具体实施方式以下,参照附图来详细说明本发明的实施例。图1是根据本发明实施例的哼唱检索方法的整体框图。如图l所示,根据本发明实施例的噂唱检索方法包括三个模块模板组创建模块100、旋律提取模块200和旋律匹配处理模块300。在模块100中,进行模板组创建,制作用于后续匹配处理的模板。模板组创建过程可以离线操作。在该模块中,对音乐库中的每首音乐提取主旋律,然后对提取的主旋律执行音乐小节切分,从而制作多分辨率模板组。图2示出了图1的模块100中的创建模板组的详细流程。将参照图2详细描述模板组创建的过程。在步骤SIOI,输入音乐库。在步骤S102中,提取每首音乐的主旋律。主旋律的提取方式根据MIDI的类型而不同。对于单轨MIDI音乐,由于只有一个音轨,所以该音轨里所存储的旋律即为主旋律。对于多音轨MIDI音乐,一般主旋律在第一个音轨中,但是有的MIDI音乐可能不是这样,因此需要作出如下几个条件的判断(1)音轨名里有"MELODIES","VOCAL","SING","SOLO","LEAD","VOICE"这些词;(2)音轨中音符的力度(即音符的强弱)的平均值最大;(3)音轨中音符的时长最长,即第一个音符的起始时刻到最后一个音符的结束时刻。满足上面3个条件之一的音轨,认为是主旋律所在的音轨,将里面的音符信息作为主旋律提取出来。在步骤S103,从音乐中提取其他信息。对于一首音乐来说,它的速度、拍子记号(指的4/4拍,2/4拍)、1/4音符的时长等是非常有用的信息。这些信息通常写在MIDI音乐的每个音轨的头中,因此这些信息都可以从每首MIDI的音轨中得到。在步骤S104中,根据在步骤S103中得到的信息,找出每个小节的起始时刻和结束时刻。具体地,根据在步骤S103中获得信息,如节拍、拍子记号,1/4音符的时长,可以容易地标出音乐小节的起始时刻和结束时刻。将步骤S103和S104的操作统称为音乐小节切分。因为人们在哼唱的时候,一般总是从某一小节的开头开始,到某一小节的结束终止,因此可以利用这一习惯来提高搜索的准确率,并可以在一定程度上提高搜索的速度。而且用户在执行搜索时,可以从音乐的任意位置进行搜索,也就是说,用户的口亨唱可以从歌曲的任意部分开始。因此,在根据本发明的实施例中,采用自动音乐小节切分。在步骤S105,创建帧级多分辨率旋律轮廓。根据帧移(frameshift)的不同,可以得到不同分辨率的旋律音符序列。低分辨率指的是采用比较大的帧移对每首音乐的音符采样,这样得到的音符数目较少,对旋律的描述比较粗。高分辨率指的是采用比较小的帧移对每首音乐的音符采样,这样得到的音符数目比较多,对旋律的描述比较清晰。一般来说,一首音乐可以得到两个或两个以上的旋律序列,这要根据具体的应用而定。这里需要说明的是,最后的旋律音符序列都被表示为减均值(meansubtraction)形式的序列(与后面将要描述的步骤S205类似)。在步骤S106,输出用于匹配处理的模板组,即,将每首音乐中提取的多个不同分辨率的旋律序列组成用于匹配的模板集合。在模块200中,从用户的哼唱中提取旋律轮廓用于后续的匹配处理。图3是示出在图1中的模块200中从口亨唱中提取旋律的详细流程。下面,参照图3详细描述该过程。在步骤S201中,输入用户的畔唱。所述输入可以是用户具有歌词、没有歌词的查询、也可以是音乐的一段录音或者是口哨。这些类型的检索均可以被存储为wave形式的文件。在步骤S202中,对输入的,唱进行基频抽取。在该过程中,在提取啤唱中的基频时,根据最大分辨率,即最小的帧移,进行基频抽取。当需要低分辨率的旋律轮廓时,从以最小帧移抽取的旋律序列中进行抽取。例如,当最小帧移是O.ls,语音长8s时,则得到80帧数据。如果要得到0.2s的旋律序列,则从所述80帧数据中取偶数(或奇数)序号的值即可。提取基频的算法是传统的自相关算法,这里不再详细描述。在步骤S203中,进行旋律轮廓的平滑处理。由于提取基频的算法不可能准确地提取出畔唱中实际的基频值,因而会有一些半频或倍频(即真实基频的一半或倍数)错误,或者产生一些奇异点(即,^^立点),因而需要对提取的基频轮廓进行平滑处理。这里采用的平滑处理算法为常用的中值滤波和线性滤波方式。在基频抽取之后,在步骤S204,执行基频到半音的变换。每个基频被变换为如式(1)所示的半音符(semitone):<formula>formulaseeoriginaldocumentpage12</formula>其中,freq是基频。在步骤S205,对转换后的半音执行减均值。由于用户很难准确地哼唱出音乐谱中的每个音符,而且不同的人对同一首音乐也会畔出不同的音符,通常男的会高一些,女的会低一些,因此,为了减少这一情况对匹配算法的影响,需要将音符序列改变为用于匹配处理的特定的表示。在本发明的实施例中,采用了"减均值"的旋律序列表示方式。具体地讲,将半音符序列转换为最终用于匹配算法中的序列,即,给定一段半音符序列,将其中的非零值相加求均值,然后用原序列中的每个非零均值去减该均值,得到用于匹配的序列。需要说明的是,原半音符序列中为零的值被丢弃了,在抽取音乐的主旋律时(即图2中的步骤S105),也是按照这种方式进行的。在步骤S206,输出帧级旋律轮廓。在该处理中,使用简单采样方法来从最高分辨率帧级音符轮廓获得不同分辨率的帧级音符轮廓。该操作与对音乐库中的每首音乐制作不同分辨率的模板过程类似,这里不再详细描述。当从用户的啤唱中提取出旋律轮廓之后,在模块300中进行旋律轮廓和模板组的匹配,从而得到用户期望查找的结果。图4示出了模块300中的旋律轮廓与模板组的匹配的详细流程。下面,参照图4进行详细描述。在步骤S301,输入在模块200中得到的从哼唱中提取的帧级旋律轮廓。在下面的匹配处理中,也可将帧级旋律轮廓称作口亨唱检索序列。在步骤S302,输入在模块100中得到的模板组。在下面的匹配处理中,也可将用于匹配的每一个模板称作模板序列。在步骤S303中,形成低分辨率旋律轮廓。该处理用于分别从帧级多分辨率旋律轮廓中和帧级多分辨率模板组得到相同分辨率的旋律轮廓。由于低分辨率的旋律轮廓的采样点较少,所以能够在从啤唱中提取的旋律轮廓与模板组的旋律轮廓之间进行快速比对,短时间内得出候选项。在步骤S304中,执行快速匹配处理,以选出一小组用于后续比较的候选项。具体地,采用快速匹配算法进行提取的旋律轮廓(即,哼唱检索序列^)与模板组(即,模板序列r)之间的匹配。可以采用各种匹配算法来进行所述匹配处理。在本发明的实施例中,提出了一种快速伸缩算法,即,在线性伸缩(LS)算法的基础上,加入快速拍子伸缩操作,下面称为算法1,具体如下:_<table>tableseeoriginaldocumentpage13</column></row><table>下面,对上述算法1及其中的变量进行解释。首先输入检索序列2二fa,2,…,^),并输入在模块100中得到的模板序列尸=(^/2广.,^),其中,N表示。亨唱序列中的帧数,M表示模板序列中的帧数。r表示序列g的伸缩比例,5表示r的偏移,2"表示将序列g拉伸r倍,例如,原来^的长度为100,r为1.5,则变换后2i的长度为150。其中,和5。是两个预设值,在实验中分别被设置为1.4和0.4。"="(0,"是对Q和r采用线性伸缩算法求距离值的线性伸缩函数。图5示出了"^"fo,r)的含义。如图5所示,横轴为模板序列,纵轴为啤唱检索序列,取对角线上的点对距离值进行计算,即,求两者的差的绝对值。比如说横轴为200个点,纵轴为IOO个点,则对角线的斜率为0.5,那么给定横轴上的2个点,对应纵轴上1个点,分别求横轴上的两个点与纵轴上的1个点对应的距离值,将这些距离值累加起来,得到的就是模板序列和,唱检索序列之间的距离值。在执行算法1并输出距离值之后,利用4个滤波器来进一步降低候选项的数量。这些滤波器分别基于方差、子段均值比较、质心比较和音符分布比较,详细描述如表1所示。表1<table>tableseeoriginaldocumentpage14</column></row><table><table>tableseeoriginaldocumentpage15</column></row><table>使用上述5个滤波器,主要用于筛选用于后面精确匹配的模板集合。经过在步骤S304的筛选,候选音乐的数量规模变小。在步骤S305,输出小规模的模板组。在步骤S306,形成高分辨率旋律轮廓。在该步骤中,得到具有相同分辨率的高分辨率旋律轮廓和模板,用于最后的精确匹配。该操作和得到低分辨率旋律轮廓的原理相同,这里不再重复描述。在步骤S307中,执行精确匹配方法。在该处理中,使用快速迭代对齐(fast—RA)算法。快速迭代对齐算法被称为算法2,该算法是在迭代对齐(RA)的基础上提出的一种快速算法,具体描述如下。<table>tableseeoriginaldocumentpage15</column></row><table><table>tableseeoriginaldocumentpage16</column></row><table>图6A和6B示出了传统的RA算法。如图6A所示,粗实线是检索序列和模板序列之间的最佳对齐路径。在迭代的第一步,比较三条对齐路径实线、虛线和双点划线。如果通过虛线路径获得的值最小,则在迭代的下一步骤中,将该路径分为两部分,如图6B所示。然后,分别在左右两个部分中重复上述操作,即分别沿着三条路径进行计算,分别获得值最小的一条路径。然后,左右两部分中的距离值最小的两条路径的组合即为最后得出的路径。本发明的快RA算法的不同之处在于,为了提高计算速度,通过计算,判断最佳匹配路径的曲线是向上弯的还是向下弯的,然后,仅计算弯曲方向相同的路径,例如,在图6A中,通过计算判断最佳匹配路径是向上弯的,从而仅计算虛线对应的路径即可,从而可以省去对另外一条路径的计算。通常,女歌唱者的基频高于男歌唱者的基频,也就是说,不同的人即使是对同一首音乐也会具有不同的基频值(音符值)。这对于匹配处理的精度是个问题。为了解决这一问题,采用均值移位来使检索序列和模板序列之间的值最小。在本发明中,提出了一种采用均值移位的快RA算法,称为算法3,将在后面详纟田描述。这里提到的均值位移也是一种算法,如在前面提到的减均值一样,原始的旋律序列要减去它的均值。由于人啤唱的差异,检索序列的均值和模板序列的均值会有一些偏差,为了弥补这种偏差,使用了均值移位算法,即,将检索序列的均值移到(上下移动)一个合适的位置,使得检索序列的均值和模板序列的均值之间的距离最小。算法3.釆用均值以为的快RA(g,r,D)算法_<table>tableseeoriginaldocumentpage17</column></row><table>(注S表示均值偏移值)<table>tableseeoriginaldocumentpage17</column></row><table>在算法3中,在试验中,^是被设置为2的预设值。2土S是指检索序列g加上或减去均值偏移值的所有值,如图7所示。在图7中,t为检索序列的均值,开始5为2,这时比较t、t-2、t+2时检索序列与模板序列的距离值。如果t+2的距离值最小,则选定t+2,记为t',5除以2,然后比较t'、t'-l、t'+l时的距离值,选择最小的距离值作为最终的结果。在步骤S308,输出匹配结果,得到用户期望查找的音乐的候选项。具体地说,如果口亨唱检索序列和模板序列之间的距离小于预定值,则认为两者匹配,从而与该模板对应的歌曲即为候选歌曲。通过精确匹配处理,候选项进一步缩小,从而快速找到用户查找的音乐。在上述匹配处理中,采用了不同分辨率的旋律轮廓匹配,首先采用较低分辨率的音乐旋律轮廓线进行匹配搜索,以便从一个非常大的音乐库中筛选出一个小的候选集合,在这个小的候选集合上,再使用高精度的旋律轮廓线进行精确匹配,来得到最后的匹配音乐集。因此,根据本发明的匹配处理方法,可以提高搜索速度。本发明具有如下优点(l)在提取旋律时,进行自动音乐小节切分,按照小节进行搜索,提高了准确率;(2)通过不同分辨率的旋律轮廓进行匹配,先用较低分辨率的旋律轮廓线进行匹配,从一个非常大的音乐库中筛选出一个小的候选集合,再在这个小的候选集合上,使用高精度的旋律轮廓线进行精确匹配,来提高搜索速度,快速而准确的根据用户哼唱从大规模音乐库中找出所要的音乐;(3)对于用户的要求较低,面向普通用户,允许在畔唱中有一定的错误(插入、删除、替换),并可以带歌词畔唱,或者使用"dada,,,"lala"来进行畔唱,也可以吹口哨,或者录一段音乐片段来进行搜索;(3)可以用于PC、手机、MP3播放器上。尽管已经参照本发明的特定优选实施例示出和描述了本发明,但是本领域的技术人员应该理解,在不脱离由权利要求限定的本发明的精神和范围的情况下,可以在形式和细节上作出各种改变。权利要求1、一种用于哼唱检索的音乐模板创建方法,包括提取音乐的主旋律轮廓;对提取的主旋律轮廓按照音乐小节进行切分;将按照音乐小节切分后的旋律轮廓转换为帧级旋律音符序列,并将其存储为模板序列。2、如权利要求1所述的音乐模板创建方法,其中,在进行音乐小节切分时,包括下述步骤获得音乐旋律的相关信息;根据获得的信息找到每一小节的起始点和结束点;在旋律轮廓上标记每个小节的起始点和结束点。3、如权利要求1所述的音乐模板创建方法,其中,在将旋律轮廓转换为帧级旋律音符序列时,按照预定的帧移来对旋律轮廓的音符进行采样,从而得到帧级旋律音符序列。4、如权利要求3所述的音乐模板创建方法,还包括将旋律音符序列转换为减均值形式的旋律音符序列。5、一种用于啤唱^f全索的方法,包括输入从畔唱中提取的检索序列;输入按照音乐小节进行切分的模板序列组,所述^t板序列组包含与音乐库中每首音乐对应的模板序列;将检索序列和模板序列进行匹配;如果模板序列和检索序列匹配,则将与该模板序列对应的音乐输出作为检索结果。6、如权利要求5所述的方法,其中,将检索序列和模板序列进行匹配的步骤包括以第一帧移从啤唱检索序列中提取低分辨率检索序列;以第一帧移从输入的模板序列中提取低分辨率模板序列;将低分辨率检索序列和低分辨率模板序列进行匹配,根据匹配的结果,筛选出一组候选模板序列;以比第一帧移小的第二帧移从输入的检索序列中提取高分辨率检索序列;以第二帧移从得到的候选模板序列的每一个中提取高分辨率模板序列;将高分辨率检索序列和高分辨率模板序列进行匹配。7、如权利要求5所述的方法,其中,采用线性伸缩算法进行检索序列和模板序列之间的匹配。8、如权利要求5所述的方法,其中,在进行检索序列和模板序列之间的匹配时,执行如下步骤(a)输入纟全索序列Q和模板序列T;(b)使伸缩比例r等于r。,并使伸缩比例r的偏移5等于50;(c)计算Q,=Qxr,并利用线性伸缩算法计算序列Q,和模板序列T之间的距离值d叫Q广TI;(e)计算Qhigh=Qx(r+5),并利用线性伸缩算法计算序列Qh妙和模板序列T之间的距离值dhigh=|Qhigh-T|;(f)计算QlQW=Qx(r-S),并利用线性伸缩算法计算序列Q^和模板序列T之间的距离值dk叫Qlow一丄I,(g)比较d、4igh和d,。w的大小;(h)如果4igh最小,则使r"+S,d=dhigh,如果d!。w最小,则使r"-5,d=dbw,如果d最小,则保持r和d值不变;(i)判断S是否大于预设值;(j)如果5大于预定值,则使5=5/2,并返回到步骤(e);(k)如果5小于预定值,则输出距离值d;(l)判断d是否小于预定阈值,如果d小于预定阈值,则确定模板序列与斗全索序列匹配。9、如权利要求8所述的方法,其中,r。和So分别为1.4和0.4,所述预定值为0.09。10、如权利要求6所述的方法,其中,在进行检索序列和模板序列之间的匹配时,使用迭代对齐算法计算检索序列和模板序列之间的距离值,如果两者之间的距离值小于预定值,则输出与该模板序列对应的音乐作为检索结果,否则丢弃该模板,进行检索序列与下一个才莫板序列之间的匹配。11、如权利要求6所述的方法,其中,在进行检索序列和模板序列之间的匹配时,执行如下步骤(a)專lr入斗全索序歹l)Q=(qi,q2,…,qN)和才莫寺反序歹寸T=(tht2,...,tM),其中,N表示检索序列的帧数,M表示模板序列的帧数;(b)输入迭代次数D,同时使j=N/2,i=0;(c)在j点将序列Q分为两个序列=(q,,q2,...,qj)和Q2=(q_i+1,qi+2,...,);(d)分别将序列Q,的和值sum(Q!)以及Q序列的和值sum(Q),以及两者的比值Ro=sum(Q,)/sum(Q);(e)使k=M/2,Tf(t,,t2,tk),T2=(tk+1,tk+2,tM);(f)利用线性伸缩算法求Q!和的距离值的山以及Q2和丁2之间的距离值4,并使S,d!+d2;(g)将模板序列T从第h点分开,分为两个序列T产(t!,t2,...,th),T4=(th+1,th+2,...,tM),并使序列T3和T的和值之间的比等于Ro;(h)利用线性伸缩算法求Q,和T3的距离值的d3以及Q2和丁4之间的距离值山,并<吏82=<13+(14;(i)判断S,和S2之间的大小关系,如果Si小于S2,则4吏S-Spi=k,否则使S-S2,i=h;(j)如果D等于零,则输出S值,如果D不等于零,则D二D-1,并使T「(t,,t2,...,t'),T2=(ti+1,ti+2,...,tM),然后分别令Q:Q,,T-T,和Q^Q"T=丁2重新执行步骤(a),并对Q-Qi,T-T,以及Q-Q2,丁=丁2的返回值进行累加作为S的值并输出;(k)如果S小于预定的距离值,则输出与模板序列T对应的音乐作为检索结果,否则,执行检索序列与下一个模板序列之间的匹配。12、一种用于畔唱检索的音乐模板创建装置,包括提取音乐库中的每首音乐的主旋律轮廓的提取单元;将提取的主旋律轮廓按照音乐小节进行切分的音乐小节切分单元;将按照音乐小节切分后的旋律轮廓转换为音符序列并将其存储为模板序列的转换单元。13、一种用于啤唱检索的装置,包括输入按照音乐小节进行切分的帧级模板序列的模板序列输入单元;将检索序列和模板序列进行匹配的匹配单元;根据匹配的结果输出检索结果的输出单元。14、一种用于啤唱检索的装置,包括模板创建单元,用于对音乐库中每首音乐提取主旋律,并创建按照音乐小节进行切分的模板组;旋律提取单元,用于从用户的哼唱中提取检索旋律轮廓;旋律匹配单元,用于将提取的检索旋律轮廓与模板组中的每一模板进行匹配,并根据匹配结果,输出候选音乐。15、如权利要求14所述的装置,还包括多分辨率模板序列创建单元,用于以预定帧移从提取的主旋律中提取音符序列,从而创建多分辨率帧级旋律模板序列;多分辨率检索序列创建单元,用于从检索旋律轮廓提取音符序列,从而创建多分辨率帧级旋律检索序列。16、如权利要求14所述的装置,其中,旋律匹配单元包括距离值计算单元,用于计算多分辨率帧级旋律模板序列和多分辨率帧级旋律检索序列之间的距离值;检索结果输出单元,用于判断所述距离值是否小于预定阈值,如果小于预定阈值,则判断该模板序列与检索序列匹配,并输出与该模板序列相应的音乐作为检索结果,否则,进行下一个模板与检索序列之间的匹配。全文摘要提供了一种用于哼唱检索的方法和装置,所述方法包括输入从哼唱中提取的检索序列;输入按照音乐小节进行切分的模板序列组,所述模板序列组包含与音乐库中每首音乐对应的模板序列;将检索序列和模板序列进行匹配;如果模板序列和检索序列匹配,则将与该模板序列对应的音乐输出作为检索结果。根据本发明,可以提高哼唱检索的准确率和速度。文档编号G10H1/00GK101398827SQ20071015189公开日2009年4月1日申请日期2007年9月28日优先权日2007年9月28日发明者严基完,史媛媛,璇朱,李在原,菁邓申请人:三星电子株式会社;北京三星通信技术研究有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1