專利名稱:一種檢測語音信號基音周期的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及語音編碼領(lǐng)域,尤其涉及一種檢測語音信號基音周期的方法。
背景技術(shù):
語音信號的基音周期檢測是語音編碼中一個(gè)非常重要的問題,它具有時(shí)變性和準(zhǔn)周期性,迄今為止,尚未找到一個(gè)完善的、通用的檢測方法。目前,針對不同的系統(tǒng)應(yīng)用人們已經(jīng)開發(fā)出了一些基音檢測方法,例如自相關(guān)法、平均幅度差函數(shù)法、線性預(yù)測分析方法、小波變換法等等。在傳統(tǒng)的語音編碼中,一種通常用到的基音周期檢測算法為時(shí)域自相關(guān)函數(shù)(ACF)法,它通過短時(shí)自相關(guān)函數(shù)計(jì)算自相關(guān)函數(shù),并將最大值處的延時(shí)作為基音周期。但研究發(fā)現(xiàn),傳統(tǒng)的ACF算法在無噪聲環(huán)境下有時(shí)會發(fā)生檢測基音倍頻和半頻錯(cuò)誤,并且在噪聲環(huán)境中,這種錯(cuò)誤的發(fā)生率明顯增加。
此外,寬帶語音與傳統(tǒng)的窄帶語音相比,在基音周期檢測方法上存在差異性,因?yàn)閷拵дZ音的頻譜范圍高端延展到7~8kHz,而基音的諧波結(jié)構(gòu)在高頻段并不顯著,這會給基音周期的檢測帶來一定的困難,因此需要結(jié)合寬帶語音的特性對傳統(tǒng)的自相關(guān)函數(shù)法做一定的修改以保證檢測結(jié)果的準(zhǔn)確性。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題在于提供一種檢測語音信號基音周期的方法,以克服基音周期加倍的缺點(diǎn),并在基音周期檢測中體現(xiàn)出基音周期的平滑性。
為了解決上述技術(shù)問題,本發(fā)明提供一種檢測語音信號基音周期的方法,該方法包括 (1)給基音周期候選值序列中的每個(gè)基音周期候選值分別選擇一個(gè)與其對應(yīng)的自相關(guān)函數(shù)值的縮放因子; (2)對當(dāng)前考察的基音周期候選值所對應(yīng)的自相關(guān)函數(shù)值與自相關(guān)函數(shù)值序列中的最大值/縮放因子進(jìn)行比較,如果當(dāng)前考察的基音周期候選值所對應(yīng)的自相關(guān)函數(shù)值大于自相關(guān)函數(shù)序列中的最大值/縮放因子,且當(dāng)前考察的基音周期候選值小于當(dāng)前最佳的基音周期,則當(dāng)前考察的基音周期候選值就為最佳基音候選值,否則,繼續(xù)考察下一個(gè)基音周期候選值,直到得出最佳基音周期候選值。
其中,還包括步驟(3),對自相關(guān)函數(shù)序列中的最大值對應(yīng)的基音周期候選值是否為所述最佳基音周期候選值的加倍進(jìn)行判斷,如果是,則保持該最佳基音周期候選值不變;如果不是,則將自相關(guān)函數(shù)序列中最大值對應(yīng)的基音周期候選值作為最佳基音周期候選值。
其中,進(jìn)一步包括步驟(4),利用基音周期全局參考來確定基音周期。
其中,使用基音周期全局參考對基音周期候選值序列中值比較接近于基音周期全局參考的候選值所對應(yīng)的自相關(guān)函數(shù)進(jìn)行加權(quán)。
其中,所述基音全局參考是由語音的特性以及相鄰幀語音的特性所確定。
其中,當(dāng)所述基音周期最佳候選值接近于基音周期全局參考時(shí),將該基音周期最佳候選值設(shè)定為當(dāng)前幀的基音周期。
其中,所述步驟(1)還包括,當(dāng)基音周期候選值大于一個(gè)門限值時(shí),選擇一個(gè)較大的縮放因子,否則,選擇一個(gè)較小的縮放因子。
本發(fā)明所述的一種檢測語音信號基音周期的方法,克服了基音周期加倍的缺點(diǎn),并在基音周期檢測中體現(xiàn)出了基音周期的平滑性。
圖1是本發(fā)明所述方法的流程方框圖; 圖2是AMR-WB+算法的平均信噪比與本發(fā)明實(shí)施例所述的平均信噪比的對比示意圖; 圖3是本發(fā)明實(shí)施例所述的平均信噪比減去AMR-WB+算法的平均信噪比的差值示意圖。
具體實(shí)施例方式 下面結(jié)合附圖對本發(fā)明作進(jìn)一步的詳細(xì)描述。
參考圖1,為本發(fā)明所述方法的流程方框圖。具體過程如下 步驟110給基音周期候選值序列中的每個(gè)基音周期候選值分別選擇一個(gè)與其對應(yīng)的自相關(guān)函數(shù)值的縮放因子; 步驟120對當(dāng)前考察的基音周期候選值所對應(yīng)的自相關(guān)函數(shù)值與自相關(guān)函數(shù)值序列中的最大值/縮放因子進(jìn)行比較,如果當(dāng)前考察的基音周期候選值所對應(yīng)的自相關(guān)函數(shù)值大于自相關(guān)函數(shù)序列中的最大值/縮放因子,且當(dāng)前考察的基音周期候選值小于當(dāng)前最佳的基音周期,則當(dāng)前考察的基音周期候選值就為最佳基音候選值,否則,繼續(xù)考察下一個(gè)基音周期候選值,直到得出最佳基音周期候選值。
本發(fā)明所述的自相關(guān)函數(shù)值的計(jì)算表達(dá)式為 其中,delay代表基音周期候選值。在下面的敘述中,保存自相關(guān)函數(shù)的若干最大值以及它們所對應(yīng)的基音周期候選值,并暫定自相關(guān)函數(shù)最大值對應(yīng)的基音周期候選值作為最佳基音周期候選值。
針對基音周期的加倍問題,本發(fā)明采用固定加權(quán)的方式加以消除,增加真實(shí)的基音周期被選擇的概率,選擇一個(gè)最佳的基音周期候選值,其具體過程為 對于基音周期候選值序列中每一個(gè)基音周期候選值,選擇一個(gè)與其對應(yīng)的自相關(guān)函數(shù)值的縮放因子,這個(gè)縮放因子的選擇是根據(jù)基音周期候選值的大小來選擇,選取方式比較簡單,當(dāng)基音周期候選值大于一個(gè)門限1時(shí),選擇較大的一個(gè)縮放因子1,否則,選擇一個(gè)較小的縮放因子2;然后比較該基音周期候選值對應(yīng)的自相關(guān)函數(shù)值與自相關(guān)函數(shù)值序列中的最大值/縮放因子,如果當(dāng)前考慮的基音周期候選值小于當(dāng)前最佳的基音周期,且當(dāng)前考慮的基音周期候選值的對應(yīng)的自相關(guān)函數(shù)值大于自相關(guān)函數(shù)序列中的最大值/縮放因子,則設(shè)定基音周期最佳候選值為當(dāng)前考慮的基音周期候選值。如此循環(huán),直至考察完基音周期候選值序列中的每一個(gè)基音周期候選值。
然后,判斷自相關(guān)函數(shù)序列中的最大值對應(yīng)的基音周期候選值是否為當(dāng)前最佳基音周期候選值的加倍,若是,保持當(dāng)前的最佳基音周期候選值,否則,設(shè)定自相關(guān)函數(shù)序列中最大值對應(yīng)的基音周期候選值作為最佳基音周期候選值。
針對基音周期的平滑性問題,在本發(fā)明中引入基音周期全局參考的概念來表征濁音語音的基音周期平滑性,在基音周期搜索的過程中,使用基音周期全局參考作為基音周期確定的輔助判斷依據(jù)。
在判斷時(shí),首先使用基音周期全局參考對基音周期候選值序列中值比較接近于基音周期全局參考的候選值對應(yīng)的自相關(guān)函數(shù)進(jìn)行加權(quán),以增大比較接近基音周期全局參考的候選值被選定為最佳基音周期候選值的概率。由于基音周期全局參考可以代表近幾幀的基音周期變化規(guī)律,因而加權(quán)的目的在于增強(qiáng)基音周期的平滑性。
基音周期全局參考需要綜合根據(jù)語音的特性以及相鄰幀語音的特性來確定,依據(jù)如下四條準(zhǔn)則 1.自相關(guān)函數(shù)候選序列中存在對應(yīng)的基音周期候選值是當(dāng)前最佳基音周期候選值的加倍; 2.候選自相關(guān)函數(shù)值序列中最大值很大,并且明顯比其它值大很多; 3.當(dāng)前基音周期最佳候選值與當(dāng)前的基音周期全局參考接近; 4.候選自相關(guān)函數(shù)值序列中最大值比較大,并且當(dāng)前基音周期全局候選是當(dāng)前最佳基音周期候選值的加倍。
滿足以上4條準(zhǔn)則之一,即可將基音周期全局參考更新為當(dāng)前最佳基音周期候選值。
如不能確定新的基音周期候選,則將原有的基音周期全局候選保持一定幀數(shù)后置為0(即不在基音周期確定的過程中發(fā)揮作用)。
引用基音周期全局參考的目的在于當(dāng)基音周期全局參考存在時(shí),表示當(dāng)前語音段周期性比較明顯,因此,可以利用基音周期全局參考對自相關(guān)函數(shù)序列進(jìn)行加權(quán),從而使基音周期具有一定的平滑性。
確定最終的基音周期有三種情況 (1)基音周期最佳候選值與基音周期全局參考比較接近。
在這種情況下(1)基音周期全局參考是由當(dāng)前幀的最佳基音周期候選值來確定的,這時(shí),說明最佳基音周期候選值判定可靠,因此直接輸出最佳基音周期值作為基音周期;(2)當(dāng)前幀確定的最佳基音周期候選值滿足了基音周期平滑性的依據(jù),但是只是因?yàn)樵肼?,聲道干擾等各種干擾,該基音周期候選值對應(yīng)的自相關(guān)函數(shù)值偏小,不足以確定可靠的基音周期全局參考,這樣當(dāng)前幀將延續(xù)上一幀的全局基音周期參考。這時(shí),將當(dāng)前幀確定的最佳基音周期候選值設(shè)定為當(dāng)前幀的基音周期。
(2)最大自相關(guān)函數(shù)值小于某一門限值。
在這種情況下,語音段信號的相關(guān)程度比較小,不易判斷出明顯的基音周期,此時(shí),當(dāng)前的基音周期搜索沒有實(shí)際意義,只是為后來的閉環(huán)基音搜索提供一個(gè)最大程度去除長時(shí)相關(guān)性的參考。因而將自相關(guān)函數(shù)最大值所對應(yīng)的基音周期搜索候選值作為基音周期。
(3)無法明顯判斷基音周期。
在當(dāng)前情況下,引入一個(gè)基音周期確定參考值(trkp)的概念,該值用來對最后的基音周期的確定起到參考的作用,該值確定的步驟如下(a)若基音周期全局參考非零,trkp值設(shè)定為基音周期的全局參考;(b)否則,trkp值設(shè)定為上一個(gè)不為0的基音周期全局參考,若上一個(gè)不為0的基音周期全局參考保持超過一定的幀數(shù),則該值強(qiáng)制為0。利用上述的條件確定的基音周期確定參考值(trkp)對整個(gè)基音周期候選序列進(jìn)行搜索,找到基音周期候選值最接近trkp的一個(gè)值,將其對應(yīng)的自相關(guān)函數(shù)加倍,并重新排序自相關(guān)函數(shù)值,相應(yīng)的移動對應(yīng)的基音周期搜索候選值,并找到自相關(guān)函數(shù)最大值所對應(yīng)的基音周期候選值作為基音周期輸出。
通過實(shí)驗(yàn)對本發(fā)明進(jìn)行驗(yàn)證,以ACELP編碼模式中的分段信噪比作為客觀評價(jià)標(biāo)準(zhǔn),實(shí)驗(yàn)結(jié)果如下表所示,該表是AMR-WB+算法的平均信噪比與本發(fā)明實(shí)施例所述的平均信噪比的對比
參考圖2,為AMR-WB+算法的平均信噪比與本發(fā)明實(shí)施例所述的平均信噪比的對比示意圖。其中,圓圈代表AMR-WB+在ACELP模式下計(jì)算各序列得到的平均信噪比,星號代表本發(fā)明在ACELP模式下計(jì)算各序列得到的平均信噪比。
如圖3所示,為本發(fā)明實(shí)施例所述的平均信噪比減去AMR-WB+算法的平均信噪比的差值示意圖。
實(shí)驗(yàn)結(jié)果表明,本發(fā)明實(shí)施例所述的算法可以提高ACELP編碼模式中的分段信噪比,其性能優(yōu)于AMR-WB+的開環(huán)基音搜索算法。
本方案以自相關(guān)函數(shù)基礎(chǔ),利用基音周期的平滑性,引入基音周期全局參考作為基音周期判斷的輔助條件,有效解決了基音周期加倍的問題并在基音周期預(yù)測中體現(xiàn)出基音周期的平滑性,實(shí)驗(yàn)結(jié)果表明本發(fā)明所述算法性能優(yōu)于AMR-WB+中的算法性能。
權(quán)利要求
1.一種檢測語音信號基音周期的方法,其特征在于,包括
(1)給基音周期候選值序列中的每個(gè)基音周期候選值分別選擇一個(gè)與其對應(yīng)的自相關(guān)函數(shù)值的縮放因子;
(2)對當(dāng)前考察的基音周期候選值所對應(yīng)的自相關(guān)函數(shù)值與自相關(guān)函數(shù)值序列中的最大值/縮放因子進(jìn)行比較,如果當(dāng)前考察的基音周期候選值所對應(yīng)的自相關(guān)函數(shù)值大于自相關(guān)函數(shù)序列中的最大值/縮放因子,且當(dāng)前考察的基音周期候選值小于當(dāng)前最佳的基音周期,則當(dāng)前考察的基音周期候選值就為最佳基音候選值,否則,繼續(xù)考察下一個(gè)基音周期候選值,直到得出最佳基音周期候選值。
2.如權(quán)利要求1所述的方法,其特征在于,還包括步驟(3),對自相關(guān)函數(shù)序列中的最大值對應(yīng)的基音周期候選值是否為所述最佳基音周期候選值的加倍進(jìn)行判斷,如果是,則保持該最佳基音周期候選值不變;如果不是,則將自相關(guān)函數(shù)序列中最大值對應(yīng)的基音周期候選值作為最佳基音周期候選值。
3.如權(quán)利要求2所述的方法,其特征在于,進(jìn)一步包括步驟(4),利用基音周期全局參考來確定基音周期。
4.如權(quán)利要求3所述的方法,其特征在于,使用基音周期全局參考對基音周期候選值序列中值比較接近于基音周期全局參考的候選值所對應(yīng)的自相關(guān)函數(shù)進(jìn)行加權(quán)。
5.如權(quán)利要求3或4所述的方法,其特征在于,所述基音全局參考是由語音的特性以及相鄰幀語音的特性所確定。
6.如權(quán)利要求3所述的方法,其特征在于,當(dāng)所述基音周期最佳候選值接近于基音周期全局參考時(shí),將該基音周期最佳候選值設(shè)定為當(dāng)前幀的基音周期。
7.如權(quán)利要求1所述的方法,其特征在于,所述步驟(1)還包括,當(dāng)基音周期候選值大于一個(gè)門限值時(shí),選擇一個(gè)較大的縮放因子,否則,選擇一個(gè)較小的縮放因子。
8.如權(quán)利要求1所述的方法,其特征在于,所述自相關(guān)函數(shù)值的計(jì)算表達(dá)式為
其中,delay代表基音周期候選值。
全文摘要
本發(fā)明公開了一種檢測語音信號基音周期的方法,包括給基音周期候選值序列中的每個(gè)基音周期候選值分別選擇一個(gè)與其對應(yīng)的自相關(guān)函數(shù)值的縮放因子;對當(dāng)前考察的基音周期候選值所對應(yīng)的自相關(guān)函數(shù)值與自相關(guān)函數(shù)值序列中的最大值/縮放因子進(jìn)行比較,如果當(dāng)前考察的基音周期候選值所對應(yīng)的自相關(guān)函數(shù)值大于自相關(guān)函數(shù)序列中的最大值/縮放因子,且當(dāng)前考察的基音周期候選值小于當(dāng)前最佳的基音周期,則當(dāng)前考察的基音周期候選值就為最佳基音候選值,否則,繼續(xù)考察下一個(gè)基音周期候選值,直到得出最佳基音周期候選值。應(yīng)用本發(fā)明所述方法,克服了基音周期加倍的缺點(diǎn),并在基音周期檢測中體現(xiàn)出了基音周期的平滑性。
文檔編號G10L19/00GK101183526SQ20061013816
公開日2008年5月21日 申請日期2006年11月14日 優(yōu)先權(quán)日2006年11月14日
發(fā)明者軍 陳 申請人:中興通訊股份有限公司