專利名稱:一種演唱的評分系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及語音信號處理技術(shù)領(lǐng)域,更具體地說,本發(fā)明涉及一種演 唱的評分系統(tǒng)和方法。
背景技術(shù):
旋律是歌曲最重要的特征,能夠代表歌曲大部分的信息量。旋律由各 個(gè)音符組成,通過音符的前后連接順序與變化的節(jié)奏快慢來體現(xiàn)。更具體 地說,旋律可以視為由多個(gè)具有不同屬性(通常為音高和音長)的音符連 接組成的音符序列。
音高,是指音符的基音頻率的高低。不同的音符是指具有不同音高的
音樂基本單位。音高可以以赫茲(Hz)為單位來衡量,但通常所用的衡量 單位是半音程(semitone),特別是在一些用記錄的旋律來代表歌曲的文 件格式中,半音程更為常見,例如MIDI文件。
音長,是指音符持續(xù)的時(shí)間長度, 一般以秒(s )或者亳秒(ms )為單位。
對于演唱的評價(jià)方法,目前常見的是卡拉OK的評分系統(tǒng),這種評分系
統(tǒng)計(jì)算演唱者的演唱和數(shù)據(jù)庫中原聲(或者可以視為原聲的數(shù)據(jù))兩者之 間一些簡單物理特征的差異,例如比較演唱信號與目標(biāo)信號采樣點(diǎn)間距離, 比較聲平曲線間的距離,比^&頻序列之間的距離等差異,將這些差異作 為評價(jià)標(biāo)準(zhǔn)。這種評分系統(tǒng)僅在簡單的物理特征層面上進(jìn)行比對,當(dāng)用戶的演唱和數(shù)據(jù)庫中的原聲在這些物理特征上有較大差異,但從旋律角度上
卻又比較匹配時(shí),卡拉OK的評分系統(tǒng)就會(huì)表現(xiàn)很不穩(wěn)定。所以,基于簡單 物理特征差異的評分方法并不適合于演唱的聲樂評價(jià)。
另外,現(xiàn)有的評分方法是針對演唱內(nèi)容與伴奏內(nèi)容完全同步(或假設(shè) 完全同步)的情況,如果實(shí)際情況的演唱與伴奏不同步,就會(huì)出現(xiàn)評分很 不準(zhǔn)確的問題?;谶@樣的同步假設(shè),現(xiàn)有的評分方法都只能對于整首歌 曲給出一個(gè)演唱得分,對于演唱片段卻不能給出實(shí)際的、準(zhǔn)確的評分。
發(fā)明內(nèi)容
為克服現(xiàn)有技術(shù)中演唱評分不準(zhǔn)確并且需要演唱內(nèi)容與伴奏內(nèi)容完全
同步的缺陷,;^發(fā)明提供了一種演唱的評分系統(tǒng)和方法。
本發(fā)明的一個(gè)方面,提供一種演唱的評分系統(tǒng),包括
輸入模塊,任意選取需要打分的演唱語音信號;
評分模塊,比較演唱語音信號在旋律上與目標(biāo)歌曲的差異,獲得對演 唱語音信號與目標(biāo)歌曲相似度評價(jià)的得分。
所述的評分系統(tǒng),還可以包括
音符切分量化模塊,對所述輸入模塊選取的所述演唱語音信號進(jìn)行音 符切分并量化;
定位模塊,基于音符切分量化模塊中量化后的所述音符,建立演唱語 音信號的音高差序列,在目標(biāo)歌曲庫中搜索、定位演唱語音數(shù)據(jù)的對應(yīng)段;
距離計(jì)算模塊,將定位模塊中得到的所述對應(yīng)段與演唱語音數(shù)據(jù)的音 高差序列進(jìn)行多種距離計(jì)算,所述多種距離是指演唱語音信號與目標(biāo)歌曲 之間在旋律上的距離,包括音高序列距離,音長序列距離,整體匹配距離。
其中,所述定位模塊還可以包括根據(jù)所述演唱語音信號的音高差序列,以及從目標(biāo)歌曲數(shù)據(jù)庫中取得目標(biāo)歌曲的音高差序列,應(yīng)用動(dòng)態(tài)時(shí)間
規(guī)整(DTW)算法,實(shí)現(xiàn)演唱語音信號的準(zhǔn)確定位,同時(shí)得到演唱語音信號 和目標(biāo)歌曲之間具體的匹配關(guān)系。
其中,所述應(yīng)用動(dòng)態(tài)時(shí)間規(guī)整算法優(yōu)選地包括利用滑動(dòng)窗截取目標(biāo) 歌曲音高差序列,將其與演唱語音信號的音高差序列進(jìn)行DTW比對,得到 代表不相似度的代價(jià)值,取代價(jià)值最小的滑動(dòng)窗位置對應(yīng)的目標(biāo)歌曲片斷 作為演唱的匹配段。
其中,所述滑動(dòng)窗的大小不小于演唱音符序列的長度,優(yōu)選的是,一 般取2倍于演唱音符序列長度作為滑動(dòng)窗大小。
本發(fā)明的另一方面,提供一種演唱的評分方法,包括
步驟IO)、任意選取需要打分的演唱語音信號;
步驟20)、比較演唱語音信號在旋律上與目標(biāo)歌曲的差異,獲得對演 唱語音信號與目標(biāo)歌曲相似度評價(jià)的評分。
其中,步驟20)還可以包括 '
步驟210)、對步驟IO)中選取的所述演唱語音信號進(jìn)行音符切分并
量化;
步驟220 )、基于步驟210)中量化后的所述音符,建立演唱語音信號 的音高差序列,在目標(biāo)歌曲庫中搜索、定位演唱語音數(shù)據(jù)的對應(yīng)段;
步驟230 )、將步驟220)中得到的所述對應(yīng)段與演唱語音數(shù)據(jù)的音高 差序列進(jìn)行多種距離計(jì)算,所述的多種距離是指演唱語音信號與目標(biāo)歌曲 之間在旋律上的距離,包括音高序列距離,音長序列距離,整體匹配距離;
步驟240 )、將步驟230 )中計(jì)算得到的所述多種距離進(jìn)行綜合,得到 評分。
其中,步驟220 )進(jìn)一步包括才艮據(jù)所述演唱語音信號的音高差序列,以及從目標(biāo)歌曲數(shù)據(jù)庫中取得目標(biāo)歌曲的音高差序列,應(yīng)用動(dòng)態(tài)時(shí)間規(guī)整
(DTW)算法,實(shí)現(xiàn)演唱語音信號的準(zhǔn)確定位,同時(shí)得到演唱語音信號和目 標(biāo)歌曲之間具體的匹配關(guān)系。
其中,所述應(yīng)用動(dòng)態(tài)時(shí)間規(guī)整算法優(yōu)選地包括利用滑動(dòng)窗截取目標(biāo) 歌曲音高差序列,將其與演唱語音信號的音高差序列進(jìn)行DTW比對,得到 代表不相似度的代價(jià)值,取代價(jià)值最小的滑動(dòng)窗位置對應(yīng)的目標(biāo)歌曲片斷 作為演唱的匹配段。
通過應(yīng)用本發(fā)明,使得演唱語音信號相對于目標(biāo)歌曲有較好的一致性, 并可以得到準(zhǔn)確的評分,同時(shí),本發(fā)明的評價(jià)系統(tǒng)無需演唱與伴奏完全同 步,而是利用定位技術(shù)進(jìn)行匹配,使得本發(fā)明可以對演唱者的演唱片斷進(jìn) 行評價(jià),不依賴于同步信息的輸入或要求演唱者從歌曲的開始唱到結(jié)尾。
圖l是本發(fā)明一個(gè)實(shí)施例的演唱評分系統(tǒng)組成圖2是本發(fā)明一個(gè)實(shí)施例的演唱評分流程圖3是本發(fā)明實(shí)施例用到的動(dòng)態(tài)時(shí)間規(guī)整(DTW)的路徑約束圖。
具體實(shí)施例方式
下面結(jié)合附圖及具體實(shí)施方式
對本發(fā)明做進(jìn)一步地描述。 如圖1所示,在本發(fā)明的一個(gè)優(yōu)選實(shí)施例中,包括輸入模塊和評分模 塊,輸入模塊任意選取需要打分的演唱語音信號;評分模塊主要通過比較 演唱語音信號在旋律上與目標(biāo)歌曲的差異,來獲得對演唱語音信號與目標(biāo) 歌曲相似度評價(jià)的評分。評分模塊進(jìn)一步包括,音符切分量化模塊、定位 模塊和距離計(jì)算模塊。同時(shí)結(jié)合圖2所示的本實(shí)施例的演唱評分流程圖。
首先在輸入模塊中,輸入演唱的語音數(shù)據(jù),可以是完M曲的語音數(shù) 據(jù),也可以^1歌曲的呼唱語音片段。
然后,在音符切分量化模塊中,對該輸入的語音數(shù)據(jù)進(jìn)行音符切分。 在本實(shí)施例中,采用的語音數(shù)據(jù)格式為16K采樣率,每個(gè)采樣點(diǎn)用16比特 數(shù)(Bit)來表示,實(shí)際應(yīng)用中,本發(fā)明不限于只處理16"16Bit數(shù)據(jù),可 以釆用任何格式的采樣率。使用基于突出度的音符切分方法(參見中國發(fā) 明專利申請, 一種基于能量的音符切分方法,公開號為CN1963919 )進(jìn)行 音符切分?;谕怀龆鹊囊舴蟹址绞绞且环N簡單可靠的基于能量的音符 切分方法,通過諧波和能量突出度曲線,得到其有效極值點(diǎn),從而找到音 符切分的位置。對于音符的切分方法,也可以采用本領(lǐng)域的其他音符切分 方法。
在音符切分點(diǎn)確定的情況下,進(jìn)行音符音高和音長的量化,在量化過 程中去掉因?yàn)楹粑鼩庖鸬牟淮_定語音段,增加了音符序列的有效性。音 高量化單位為半音程(semitone),音長量化單位為亳秒(ms)。具體量 化方式為
音高的量化首先由音符切分點(diǎn)確定音符的起始位置和終止位置,假 設(shè)為?;,7;;提取基頻(基頻提取方法的一個(gè)實(shí)施例可以參見文獻(xiàn)1、 Dik Hermes,諧波和基頻檢測方法,美國聲學(xué)學(xué)報(bào),1988年1月,第257頁-第 264頁;2、李明,溫源,俞鐵城,基于聲調(diào)特征提取的高性能基頻提取方 法,國際漢語計(jì)算會(huì)漢,2001年,笫162頁-第166頁),然后在t; t;范
圍內(nèi)確定基頻變化率較小的穩(wěn)定部分,將此穩(wěn)定部分的基頻的平均值作為 該音符的基頻值/。,然后再量化到半音程單位上,具體公式如下
iV(/0) = 69 + 121og24,w(/j就是量化后的音高值。
音長的量化就是由t;和t;決定,具體公式為
<formula>formula see original document page 9</formula>
其中""r就是量化后的音長值,單位為亳秒(ms)。 下一步,在定位模塊中,從歌曲中搜索定位演唱段?;诒景l(fā)明寬泛 的應(yīng)用要求,提取的演唱者的語音信號無需從歌曲的開頭處到歌曲的結(jié)尾 處。本實(shí)施例的演唱定位是一種基于演唱內(nèi)容即旋律的定位匹配算法,根 據(jù)上一步音符切分并量化后的結(jié)果,可以得到演唱的音高差序列,同時(shí), 可以從歌曲旋律數(shù)據(jù)庫中取得目標(biāo)歌曲的音高差序列。在已知兩組音高差 序列的^ftl 上,應(yīng)用動(dòng)態(tài)時(shí)間規(guī)整(Dynamic Time Warping, DTW)算法, 實(shí)現(xiàn)演唱片斷的準(zhǔn)確定位,并且可以同時(shí)得到演唱片斷和目標(biāo)歌曲匹配片 斷之間具體的匹配關(guān)系。對于實(shí)現(xiàn)兩組音高差序列的準(zhǔn)確定位,可以采用 本領(lǐng)域內(nèi)技術(shù)人員可知的其他算法。
上述定位匹配算法,概括的說,就是利用動(dòng)態(tài)時(shí)間規(guī)整算法在目標(biāo)歌 曲音高差序列中尋找到一段與演唱者演唱音高差序列最匹配的片段音高差 序列,同時(shí)由動(dòng)態(tài)時(shí)間規(guī)整的結(jié)果給出具體的匹配關(guān)系;具體的說,就是 利用滑動(dòng)窗截取目標(biāo)歌曲音高差序列的一部分片斷(滑動(dòng)窗常用的為矩形 滑動(dòng)窗),將其與演唱音符序列進(jìn)行DTW比對,得到代表不相似度的代價(jià) 值(cost value)?;瑒?dòng)窗以固定步長向后滑動(dòng),直到目標(biāo)歌曲的結(jié)束位 置。每次滑動(dòng),DTW過程都能計(jì)算出一個(gè)代價(jià)值。最后,取代價(jià)值最小的 滑動(dòng)窗位置對應(yīng)的目標(biāo)歌曲片斷,也就是最相似的目標(biāo)歌曲音高差片段作 為演唱的匹配段。其中,滑動(dòng)窗的大小與演唱音符序列的長度有關(guān),滑動(dòng) 窗的長度不小于演唱音符序列的長度,優(yōu)選的是, 一般取2倍于演唱音符 序列長度作為滑動(dòng)窗大小,而代價(jià)值的計(jì)算主^l據(jù)動(dòng)態(tài)時(shí)間規(guī)整算法。動(dòng)態(tài)時(shí)間規(guī)整(DTW)算法是一個(gè)應(yīng)用很廣泛的模式匹配的方法,具體 的說,是在一定的路徑限制下尋找代價(jià)最小的最佳路徑的方法。在該算法 中,允許的路徑方式和恰當(dāng)?shù)拇鷥r(jià)函數(shù)具有至關(guān)重要的作用。在本實(shí)施例 中,選取其中一種DTW算法,如圖3所示,DTW算法允許有五種路徑方式, 黑色短粗線分別代表一種路徑。而代價(jià)值的計(jì)算,可以概括為設(shè)查詢旋 律的音高差序列為X-{xl,x2,...,xNX},對應(yīng)的樂曲中的旋律的音高差序列 為Y={yl, y2, ..., yNY}。兩者的動(dòng)態(tài)時(shí)間規(guī)整算法如下
初始化d(o,o) = o
遞歸
<formula>formula see original document page 10</formula>其中d為各條路徑的代價(jià)值,具體計(jì)算方式如下 <formula>formula see original document page 10</formula>
其中,Cp為懲罰因子,目的是增加非線性歸整的代價(jià)。
下一步,在距離計(jì)算模塊中,計(jì)量演唱片斷與匹配片斷的相似度,也 即是演唱片斷與目標(biāo)匹配片斷之間的距離計(jì)算。本發(fā)明強(qiáng)調(diào)的u于內(nèi)容 的度量演唱片斷與目標(biāo)匹配片斷之間的相似度,而不僅M限于具體的計(jì)算方法,基于上一步DTW的匹配結(jié)果,可以有許多相似度的度量方法,下 面就提供兩種常用的計(jì)算方法。 1.第一優(yōu)選方法
根據(jù)DTW過程的匹配結(jié)果,可以計(jì)算演唱段與匹配段之間的多種距離, 包括音高序列距離,音長序列距離,整體匹配距離等,對于這些距離的計(jì) 算,可以有多種方法,本實(shí)施例優(yōu)選的計(jì)算的具體過程如下
首先,計(jì)算演唱段與匹配段之間音高差序列的距離,具體實(shí)現(xiàn)方法
計(jì)算其歐式距離,同時(shí)取均值
》,1.)2
其次,計(jì)算演唱段與匹配段之間的音長序列距離,實(shí)現(xiàn)方法 設(shè)查詢旋律的音長序列為A={al,a2,...,aNX},對應(yīng)的樂曲中的旋律的 音長序列為B-(bl,b2,…,bNY),根據(jù)前后音符的情況,做音長歸一化
<formula>formula see original document page 11</formula>
再計(jì)算其歐式距離,取均值:<formula>formula see original document page 11</formula>
然后,計(jì)算整體匹配距離,這里,不再定義一個(gè)新的距離測度,而是
將DTW過程中得到的代價(jià)值作為對演唱者的演唱和目標(biāo)歌曲匹配片斷間的 一個(gè)整體的距離,它針對的主要是演唱音高差序列相對于目標(biāo)匹配片斷的插入、刪除錯(cuò)誤等問題,是度量兩個(gè)音高差序列整體上匹配關(guān)系的一種距
最后,計(jì)算演唱的綜合得分,計(jì)算公式:
Ow,F =100.0
:『—+~^~x[
° 力縱血
= max(l 00.0 — Ow/V, 0.0) 其中,*W。"和^^"分別是允許的最大音高序列距離和最大音長序列
距離, 一般情況下,W,鵬取4.0, yz離—取i。g4較為合適;。"卿是DTW 過程的最終代價(jià)函數(shù)的值;『"。"、w:。以及『鮮分別是音高、音長以及DTW 代價(jià)函數(shù)在最終評分中所占有的線性權(quán)重, 一般『自、『—的取值范圍優(yōu)選
的為0.15-0.25,更優(yōu)的取0.2,『,的取值范圍優(yōu)選的為0.55-0. 65,更 優(yōu)的取O. 6。 &。 是最終的評價(jià)得分。 2.第二優(yōu)選方法
首先,分別計(jì)算演唱段音高差序列與目標(biāo)匹配段音高差序列的余弦距
離,
p,乂
其次,計(jì)算演唱段與匹配段之間的音長序列距離
dwrC^ =, 上1 .
然后,是整體匹配距離的計(jì)算,這里,不再定義一個(gè)新的距離測度,
而是將DTW過程中得到的代價(jià)值作為對演唱者的演唱和目標(biāo)歌曲匹配片斷間的一個(gè)整體的距離,它針對的主要是演唱音高差序列相對于目標(biāo)匹配片 斷的插入、刪除餘溪等問題,l變量兩個(gè)音高差序列整體上匹配關(guān)系的一
種距離;
最后,計(jì)算演唱的綜合得分,
CWf 二CW。, +100.0x(l —"她Cos") + 10.0x(1 —t/wrCoy) = 100.0 - 20.0 x Ow/F / 7V 。'e
其中,Co^是代價(jià)函數(shù),c。w鮮是DTW過程的最終代價(jià)函數(shù)的值,而 &。 是最終的評價(jià)得分。
最后應(yīng)說明的是,以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非對其 限制,并且在應(yīng)用上可以延伸到其他的f"改、變化、應(yīng)用和實(shí)施例,同時(shí) 認(rèn)為所有這樣的^^改、變化、應(yīng)用、實(shí)施例都在本發(fā)明的精神和范圍內(nèi)。
權(quán)利要求
1、一種演唱的評分系統(tǒng),包括輸入模塊,任意選取需要打分的演唱語音信號;評分模塊,比較演唱語音信號在旋律上與目標(biāo)歌曲的差異,獲得對演唱語音信號與目標(biāo)歌曲相似度評價(jià)的得分。
2、 權(quán)利要求l的評分系統(tǒng),還可以包括音符切分量化模塊,對所述輸入模塊選取的所述演唱語音信號進(jìn)行音 符切分并量化;定位模塊,基于音符切分量化模塊中量化后的所述音符,建立演唱語 音信號的音高差序列,在目標(biāo)歌曲庫中搜索、定位演唱語音數(shù)據(jù)的對應(yīng)段;距離計(jì)算模塊,將定位模塊中得到的所述對應(yīng)段與演唱語音數(shù)據(jù)的音 高差序列進(jìn)行多種距離計(jì)算,所述多種距離是指演唱語音信號與目標(biāo)歌曲 之間在旋律上的距離,包括音高序列距離,音長序列距離,整體匹配距離。
3、 權(quán)利要求2的評分系統(tǒng),其中,所述定位模塊還可以包括根據(jù)所 述演唱語音信號的音高差序列,以及從目標(biāo)歌曲數(shù)據(jù)庫中取得目標(biāo)歌曲的 音高差序列,應(yīng)用動(dòng)態(tài)時(shí)間規(guī)整(DTW)算法,實(shí)現(xiàn)演唱語音信號的準(zhǔn)確定 位,同時(shí)得到演唱語音信號和目標(biāo)歌曲之間具體的匹配關(guān)系。
4、 權(quán)利要求3的評分系統(tǒng),其中,所述應(yīng)用動(dòng)態(tài)時(shí)間規(guī)整算法優(yōu)選地 包括利用滑動(dòng)窗截取目標(biāo)歌曲音高差序列,將其與演唱語音信號的音高 差序列進(jìn)行DTW比對,得到代表不相似度的代價(jià)值,取代價(jià)值最小的滑動(dòng) 窗位置對應(yīng)的目標(biāo)歌曲片斷作為演唱的匹配段。
5、 權(quán)利要求4的評分系統(tǒng),其中,所述滑動(dòng)窗的大小不小于演唱音符 序列的長度,優(yōu)選的是, 一般取2倍于演唱音符序列長度作為滑動(dòng)窗大小。
6、 一種演唱的評分方法,包括步驟IO)、任意選取需要打分的演唱語音信號; 步驟20)、比較演唱語音信號在旋律上與目標(biāo)歌曲的差異,獲得對演 唱語音信號與目標(biāo)歌曲相似度評價(jià)的評分。
7、 權(quán)利要求6的方法,步驟20)還可以包括步驟210)、對步驟IO)中選取的所述演唱語音信號進(jìn)行音符切分并量化;步驟220 )、基于步驟210)中量化后的所述音符,建立演唱語音信號 的音高差序列,在目標(biāo)歌曲庫中搜索、定位演唱語音數(shù)據(jù)的對應(yīng)段;步驟230 )、將步驟220)中得到的所述對應(yīng)段與演唱語音數(shù)據(jù)的音高 差序列進(jìn)行多種距離計(jì)算,所述的多種距離是指演唱語音信號與目標(biāo)歌曲 之間在旋律上的距離,包括音高序列距離,音長序列距離,整體匹配距離;步驟240 )、將步驟230 )中計(jì)算得到的所述多種距離進(jìn)行綜合,得到 評分。
8、 權(quán)利要求7的方法,其中,步驟220 )進(jìn)一步包括根據(jù)所述演唱 語音信號的音高差序列,以及從目標(biāo)歌曲數(shù)據(jù)庫中取得目標(biāo)歌曲的音高差 序列,應(yīng)用動(dòng)態(tài)時(shí)間規(guī)整(DTW)算法,實(shí)現(xiàn)演唱語音信號的準(zhǔn)確定位,同 時(shí)得到演唱語音信號和目標(biāo)歌曲之間具體的匹配關(guān)系。
9、 權(quán)利要求8的方法,其中,所述應(yīng)用動(dòng)態(tài)時(shí)間規(guī)整算法優(yōu)選地包括 利用滑動(dòng)窗截取目標(biāo)歌曲音高差序列,將其與演唱語音信號的音高差序列 進(jìn)行DTW比對,得到代表不相似度的代價(jià)值,取代價(jià)值最小的滑動(dòng)窗位置 對應(yīng)的目標(biāo)歌曲片斷作為演唱的匹配段。
10、 權(quán)利要求9的方法,其中,所述滑動(dòng)窗的大小不小于演唱音符序 列的長度,優(yōu)選的是, 一般取2倍于演唱音符序列長度作為滑動(dòng)窗大小。
全文摘要
本發(fā)明公開了一種演唱的評分系統(tǒng)和方法,通過對演唱語音信號進(jìn)行音符切分、量化,搜索歌曲中的對應(yīng)演唱歌曲片段,計(jì)算多種距離,并綜合得到演唱評分。通過應(yīng)用本發(fā)明,使得只要演唱數(shù)據(jù)在旋律上與原聲有較好的一致性,就可以得到較準(zhǔn)確的評價(jià)得分,同時(shí),本發(fā)明的評價(jià)系統(tǒng)無需演唱與伴奏完全同步,而是利用定位技術(shù)進(jìn)行匹配,使得本發(fā)明可以對演唱者的演唱片斷進(jìn)行評價(jià),不依賴于同步信息的輸入或要求演唱者從歌曲的開始唱到結(jié)尾。
文檔編號G10H1/00GK101430876SQ20071017703
公開日2009年5月13日 申請日期2007年11月8日 優(yōu)先權(quán)日2007年11月8日
發(fā)明者建 劉, 川 曹, 明 李, 潘接林, 顏永紅 申請人:中國科學(xué)院聲學(xué)研究所