专利名称:一种演唱的评分系统和方法
技术领域:
本发明涉及语音信号处理技术领域,更具体地说,本发明涉及一种演 唱的评分系统和方法。
背景技术:
旋律是歌曲最重要的特征,能够代表歌曲大部分的信息量。旋律由各 个音符组成,通过音符的前后连接顺序与变化的节奏快慢来体现。更具体 地说,旋律可以视为由多个具有不同属性(通常为音高和音长)的音符连 接组成的音符序列。
音高,是指音符的基音频率的高低。不同的音符是指具有不同音高的
音乐基本单位。音高可以以赫兹(Hz)为单位来衡量,但通常所用的衡量 单位是半音程(semitone),特别是在一些用记录的旋律来代表歌曲的文 件格式中,半音程更为常见,例如MIDI文件。
音长,是指音符持续的时间长度, 一般以秒(s )或者亳秒(ms )为单位。
对于演唱的评价方法,目前常见的是卡拉OK的评分系统,这种评分系
统计算演唱者的演唱和数据库中原声(或者可以视为原声的数据)两者之 间一些简单物理特征的差异,例如比较演唱信号与目标信号采样点间距离, 比较声平曲线间的距离,比^&频序列之间的距离等差异,将这些差异作 为评价标准。这种评分系统仅在简单的物理特征层面上进行比对,当用户的演唱和数据库中的原声在这些物理特征上有较大差异,但从旋律角度上
却又比较匹配时,卡拉OK的评分系统就会表现很不稳定。所以,基于简单 物理特征差异的评分方法并不适合于演唱的声乐评价。
另外,现有的评分方法是针对演唱内容与伴奏内容完全同步(或假设 完全同步)的情况,如果实际情况的演唱与伴奏不同步,就会出现评分很 不准确的问题。基于这样的同步假设,现有的评分方法都只能对于整首歌 曲给出一个演唱得分,对于演唱片段却不能给出实际的、准确的评分。
发明内容
为克服现有技术中演唱评分不准确并且需要演唱内容与伴奏内容完全
同步的缺陷,;^发明提供了一种演唱的评分系统和方法。
本发明的一个方面,提供一种演唱的评分系统,包括
输入模块,任意选取需要打分的演唱语音信号;
评分模块,比较演唱语音信号在旋律上与目标歌曲的差异,获得对演 唱语音信号与目标歌曲相似度评价的得分。
所述的评分系统,还可以包括
音符切分量化模块,对所述输入模块选取的所述演唱语音信号进行音 符切分并量化;
定位模块,基于音符切分量化模块中量化后的所述音符,建立演唱语 音信号的音高差序列,在目标歌曲库中搜索、定位演唱语音数据的对应段;
距离计算模块,将定位模块中得到的所述对应段与演唱语音数据的音 高差序列进行多种距离计算,所述多种距离是指演唱语音信号与目标歌曲 之间在旋律上的距离,包括音高序列距离,音长序列距离,整体匹配距离。
其中,所述定位模块还可以包括根据所述演唱语音信号的音高差序列,以及从目标歌曲数据库中取得目标歌曲的音高差序列,应用动态时间
规整(DTW)算法,实现演唱语音信号的准确定位,同时得到演唱语音信号 和目标歌曲之间具体的匹配关系。
其中,所述应用动态时间规整算法优选地包括利用滑动窗截取目标 歌曲音高差序列,将其与演唱语音信号的音高差序列进行DTW比对,得到 代表不相似度的代价值,取代价值最小的滑动窗位置对应的目标歌曲片断 作为演唱的匹配段。
其中,所述滑动窗的大小不小于演唱音符序列的长度,优选的是,一 般取2倍于演唱音符序列长度作为滑动窗大小。
本发明的另一方面,提供一种演唱的评分方法,包括
步骤IO)、任意选取需要打分的演唱语音信号;
步骤20)、比较演唱语音信号在旋律上与目标歌曲的差异,获得对演 唱语音信号与目标歌曲相似度评价的评分。
其中,步骤20)还可以包括 '
步骤210)、对步骤IO)中选取的所述演唱语音信号进行音符切分并
量化;
步骤220 )、基于步骤210)中量化后的所述音符,建立演唱语音信号 的音高差序列,在目标歌曲库中搜索、定位演唱语音数据的对应段;
步骤230 )、将步骤220)中得到的所述对应段与演唱语音数据的音高 差序列进行多种距离计算,所述的多种距离是指演唱语音信号与目标歌曲 之间在旋律上的距离,包括音高序列距离,音长序列距离,整体匹配距离;
步骤240 )、将步骤230 )中计算得到的所述多种距离进行综合,得到 评分。
其中,步骤220 )进一步包括才艮据所述演唱语音信号的音高差序列,以及从目标歌曲数据库中取得目标歌曲的音高差序列,应用动态时间规整
(DTW)算法,实现演唱语音信号的准确定位,同时得到演唱语音信号和目 标歌曲之间具体的匹配关系。
其中,所述应用动态时间规整算法优选地包括利用滑动窗截取目标 歌曲音高差序列,将其与演唱语音信号的音高差序列进行DTW比对,得到 代表不相似度的代价值,取代价值最小的滑动窗位置对应的目标歌曲片断 作为演唱的匹配段。
通过应用本发明,使得演唱语音信号相对于目标歌曲有较好的一致性, 并可以得到准确的评分,同时,本发明的评价系统无需演唱与伴奏完全同 步,而是利用定位技术进行匹配,使得本发明可以对演唱者的演唱片断进 行评价,不依赖于同步信息的输入或要求演唱者从歌曲的开始唱到结尾。
图l是本发明一个实施例的演唱评分系统组成图2是本发明一个实施例的演唱评分流程图3是本发明实施例用到的动态时间规整(DTW)的路径约束图。
具体实施例方式
下面结合附图及具体实施方式
对本发明做进一步地描述。 如图1所示,在本发明的一个优选实施例中,包括输入模块和评分模 块,输入模块任意选取需要打分的演唱语音信号;评分模块主要通过比较 演唱语音信号在旋律上与目标歌曲的差异,来获得对演唱语音信号与目标 歌曲相似度评价的评分。评分模块进一步包括,音符切分量化模块、定位 模块和距离计算模块。同时结合图2所示的本实施例的演唱评分流程图。
首先在输入模块中,输入演唱的语音数据,可以是完M曲的语音数 据,也可以^1歌曲的呼唱语音片段。
然后,在音符切分量化模块中,对该输入的语音数据进行音符切分。 在本实施例中,采用的语音数据格式为16K采样率,每个采样点用16比特 数(Bit)来表示,实际应用中,本发明不限于只处理16"16Bit数据,可 以釆用任何格式的采样率。使用基于突出度的音符切分方法(参见中国发 明专利申请, 一种基于能量的音符切分方法,公开号为CN1963919 )进行 音符切分。基于突出度的音符切分方式是一种简单可靠的基于能量的音符 切分方法,通过谐波和能量突出度曲线,得到其有效极值点,从而找到音 符切分的位置。对于音符的切分方法,也可以采用本领域的其他音符切分 方法。
在音符切分点确定的情况下,进行音符音高和音长的量化,在量化过 程中去掉因为呼吸气引起的不确定语音段,增加了音符序列的有效性。音 高量化单位为半音程(semitone),音长量化单位为亳秒(ms)。具体量 化方式为
音高的量化首先由音符切分点确定音符的起始位置和终止位置,假 设为?;,7;;提取基频(基频提取方法的一个实施例可以参见文献1、 Dik Hermes,谐波和基频检测方法,美国声学学报,1988年1月,第257页-第 264页;2、李明,温源,俞铁城,基于声调特征提取的高性能基频提取方 法,国际汉语计算会汉,2001年,笫162页-第166页),然后在t; t;范
围内确定基频变化率较小的稳定部分,将此稳定部分的基频的平均值作为 该音符的基频值/。,然后再量化到半音程单位上,具体公式如下
iV(/0) = 69 + 121og24,w(/j就是量化后的音高值。
音长的量化就是由t;和t;决定,具体公式为
<formula>formula see original document page 9</formula>
其中""r就是量化后的音长值,单位为亳秒(ms)。 下一步,在定位模块中,从歌曲中搜索定位演唱段。基于本发明宽泛 的应用要求,提取的演唱者的语音信号无需从歌曲的开头处到歌曲的结尾 处。本实施例的演唱定位是一种基于演唱内容即旋律的定位匹配算法,根 据上一步音符切分并量化后的结果,可以得到演唱的音高差序列,同时, 可以从歌曲旋律数据库中取得目标歌曲的音高差序列。在已知两组音高差 序列的^ftl 上,应用动态时间规整(Dynamic Time Warping, DTW)算法, 实现演唱片断的准确定位,并且可以同时得到演唱片断和目标歌曲匹配片 断之间具体的匹配关系。对于实现两组音高差序列的准确定位,可以采用 本领域内技术人员可知的其他算法。
上述定位匹配算法,概括的说,就是利用动态时间规整算法在目标歌 曲音高差序列中寻找到一段与演唱者演唱音高差序列最匹配的片段音高差 序列,同时由动态时间规整的结果给出具体的匹配关系;具体的说,就是 利用滑动窗截取目标歌曲音高差序列的一部分片断(滑动窗常用的为矩形 滑动窗),将其与演唱音符序列进行DTW比对,得到代表不相似度的代价 值(cost value)。滑动窗以固定步长向后滑动,直到目标歌曲的结束位 置。每次滑动,DTW过程都能计算出一个代价值。最后,取代价值最小的 滑动窗位置对应的目标歌曲片断,也就是最相似的目标歌曲音高差片段作 为演唱的匹配段。其中,滑动窗的大小与演唱音符序列的长度有关,滑动 窗的长度不小于演唱音符序列的长度,优选的是, 一般取2倍于演唱音符 序列长度作为滑动窗大小,而代价值的计算主^l据动态时间规整算法。动态时间规整(DTW)算法是一个应用很广泛的模式匹配的方法,具体 的说,是在一定的路径限制下寻找代价最小的最佳路径的方法。在该算法 中,允许的路径方式和恰当的代价函数具有至关重要的作用。在本实施例 中,选取其中一种DTW算法,如图3所示,DTW算法允许有五种路径方式, 黑色短粗线分别代表一种路径。而代价值的计算,可以概括为设查询旋 律的音高差序列为X-{xl,x2,...,xNX},对应的乐曲中的旋律的音高差序列 为Y={yl, y2, ..., yNY}。两者的动态时间规整算法如下
初始化d(o,o) = o
递归
<formula>formula see original document page 10</formula>其中d为各条路径的代价值,具体计算方式如下 <formula>formula see original document page 10</formula>
其中,Cp为惩罚因子,目的是增加非线性归整的代价。
下一步,在距离计算模块中,计量演唱片断与匹配片断的相似度,也 即是演唱片断与目标匹配片断之间的距离计算。本发明强调的u于内容 的度量演唱片断与目标匹配片断之间的相似度,而不仅M限于具体的计算方法,基于上一步DTW的匹配结果,可以有许多相似度的度量方法,下 面就提供两种常用的计算方法。 1.第一优选方法
根据DTW过程的匹配结果,可以计算演唱段与匹配段之间的多种距离, 包括音高序列距离,音长序列距离,整体匹配距离等,对于这些距离的计 算,可以有多种方法,本实施例优选的计算的具体过程如下
首先,计算演唱段与匹配段之间音高差序列的距离,具体实现方法
计算其欧式距离,同时取均值
》,1.)2
其次,计算演唱段与匹配段之间的音长序列距离,实现方法 设查询旋律的音长序列为A={al,a2,...,aNX},对应的乐曲中的旋律的 音长序列为B-(bl,b2,…,bNY),根据前后音符的情况,做音长归一化
<formula>formula see original document page 11</formula>
再计算其欧式距离,取均值:<formula>formula see original document page 11</formula>
然后,计算整体匹配距离,这里,不再定义一个新的距离测度,而是
将DTW过程中得到的代价值作为对演唱者的演唱和目标歌曲匹配片断间的 一个整体的距离,它针对的主要是演唱音高差序列相对于目标匹配片断的插入、删除错误等问题,是度量两个音高差序列整体上匹配关系的一种距
最后,计算演唱的综合得分,计算公式:
Ow,F =100.0
:『—+~^~x[
° 力縱血
= max(l 00.0 — Ow/V, 0.0) 其中,*W。"和^^"分别是允许的最大音高序列距离和最大音长序列
距离, 一般情况下,W,鹏取4.0, yz離—取i。g4较为合适;。"卿是DTW 过程的最终代价函数的值;『"。"、w:。以及『鮮分别是音高、音长以及DTW 代价函数在最终评分中所占有的线性权重, 一般『自、『—的取值范围优选
的为0.15-0.25,更优的取0.2,『,的取值范围优选的为0.55-0. 65,更 优的取O. 6。 &。 是最终的评价得分。 2.第二优选方法
首先,分别计算演唱段音高差序列与目标匹配段音高差序列的余弦距
离,
p,乂
其次,计算演唱段与匹配段之间的音长序列距离
dwrC^ =, 上1 .
然后,是整体匹配距离的计算,这里,不再定义一个新的距离测度,
而是将DTW过程中得到的代价值作为对演唱者的演唱和目标歌曲匹配片断间的一个整体的距离,它针对的主要是演唱音高差序列相对于目标匹配片 断的插入、删除餘溪等问题,l变量两个音高差序列整体上匹配关系的一
种距离;
最后,计算演唱的综合得分,
CWf 二CW。, +100.0x(l —"她Cos") + 10.0x(1 —t/wrCoy) = 100.0 - 20.0 x Ow/F / 7V 。'e
其中,Co^是代价函数,c。w鮮是DTW过程的最终代价函数的值,而 &。 是最终的评价得分。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非对其 限制,并且在应用上可以延伸到其他的f"改、变化、应用和实施例,同时 认为所有这样的^^改、变化、应用、实施例都在本发明的精神和范围内。
权利要求
1、一种演唱的评分系统,包括输入模块,任意选取需要打分的演唱语音信号;评分模块,比较演唱语音信号在旋律上与目标歌曲的差异,获得对演唱语音信号与目标歌曲相似度评价的得分。
2、 权利要求l的评分系统,还可以包括音符切分量化模块,对所述输入模块选取的所述演唱语音信号进行音 符切分并量化;定位模块,基于音符切分量化模块中量化后的所述音符,建立演唱语 音信号的音高差序列,在目标歌曲库中搜索、定位演唱语音数据的对应段;距离计算模块,将定位模块中得到的所述对应段与演唱语音数据的音 高差序列进行多种距离计算,所述多种距离是指演唱语音信号与目标歌曲 之间在旋律上的距离,包括音高序列距离,音长序列距离,整体匹配距离。
3、 权利要求2的评分系统,其中,所述定位模块还可以包括根据所 述演唱语音信号的音高差序列,以及从目标歌曲数据库中取得目标歌曲的 音高差序列,应用动态时间规整(DTW)算法,实现演唱语音信号的准确定 位,同时得到演唱语音信号和目标歌曲之间具体的匹配关系。
4、 权利要求3的评分系统,其中,所述应用动态时间规整算法优选地 包括利用滑动窗截取目标歌曲音高差序列,将其与演唱语音信号的音高 差序列进行DTW比对,得到代表不相似度的代价值,取代价值最小的滑动 窗位置对应的目标歌曲片断作为演唱的匹配段。
5、 权利要求4的评分系统,其中,所述滑动窗的大小不小于演唱音符 序列的长度,优选的是, 一般取2倍于演唱音符序列长度作为滑动窗大小。
6、 一种演唱的评分方法,包括步骤IO)、任意选取需要打分的演唱语音信号; 步骤20)、比较演唱语音信号在旋律上与目标歌曲的差异,获得对演 唱语音信号与目标歌曲相似度评价的评分。
7、 权利要求6的方法,步骤20)还可以包括步骤210)、对步骤IO)中选取的所述演唱语音信号进行音符切分并量化;步骤220 )、基于步骤210)中量化后的所述音符,建立演唱语音信号 的音高差序列,在目标歌曲库中搜索、定位演唱语音数据的对应段;步骤230 )、将步骤220)中得到的所述对应段与演唱语音数据的音高 差序列进行多种距离计算,所述的多种距离是指演唱语音信号与目标歌曲 之间在旋律上的距离,包括音高序列距离,音长序列距离,整体匹配距离;步骤240 )、将步骤230 )中计算得到的所述多种距离进行综合,得到 评分。
8、 权利要求7的方法,其中,步骤220 )进一步包括根据所述演唱 语音信号的音高差序列,以及从目标歌曲数据库中取得目标歌曲的音高差 序列,应用动态时间规整(DTW)算法,实现演唱语音信号的准确定位,同 时得到演唱语音信号和目标歌曲之间具体的匹配关系。
9、 权利要求8的方法,其中,所述应用动态时间规整算法优选地包括 利用滑动窗截取目标歌曲音高差序列,将其与演唱语音信号的音高差序列 进行DTW比对,得到代表不相似度的代价值,取代价值最小的滑动窗位置 对应的目标歌曲片断作为演唱的匹配段。
10、 权利要求9的方法,其中,所述滑动窗的大小不小于演唱音符序 列的长度,优选的是, 一般取2倍于演唱音符序列长度作为滑动窗大小。
全文摘要
本发明公开了一种演唱的评分系统和方法,通过对演唱语音信号进行音符切分、量化,搜索歌曲中的对应演唱歌曲片段,计算多种距离,并综合得到演唱评分。通过应用本发明,使得只要演唱数据在旋律上与原声有较好的一致性,就可以得到较准确的评价得分,同时,本发明的评价系统无需演唱与伴奏完全同步,而是利用定位技术进行匹配,使得本发明可以对演唱者的演唱片断进行评价,不依赖于同步信息的输入或要求演唱者从歌曲的开始唱到结尾。
文档编号G10H1/00GK101430876SQ20071017703
公开日2009年5月13日 申请日期2007年11月8日 优先权日2007年11月8日
发明者建 刘, 川 曹, 明 李, 潘接林, 颜永红 申请人:中国科学院声学研究所