專利名稱:參數(shù)語音合成方法和系統(tǒng)的制作方法
技術(shù)領域:
本發(fā)明涉及參數(shù)語音合成技術(shù)領域,更為具體地,涉及一種連續(xù)合成任意時長語音的參數(shù)語音合成方法和系統(tǒng)。
背景技術(shù):
語音合成通過機械、電子的方法產(chǎn)生人造語音,其是使人機交互更加自然的一項重要技術(shù)。當前常見的語音合成技術(shù)有兩類,一類是基于單元挑選和波形拼接的語音合成方法,另一類是基于聲學統(tǒng)計模型的參數(shù)語音合成方法。由于參數(shù)語音合成方法對存儲空間的要求相對較小,更適于應用在小型電子設備上。在參數(shù)語音合成方法中,分為訓練與合成兩個階段。在訓練階段,參見圖1,首先提取出語料庫中所有語音的聲學參數(shù),這包括靜態(tài)參數(shù),如頻譜包絡參數(shù)、基因頻率參數(shù),和動態(tài)參數(shù),如頻譜包絡參數(shù)和基音頻率參數(shù)的一階和二階差分參數(shù);然后為每個音素根據(jù)其上下文標注信息訓練出對應的聲學統(tǒng)計模型,同時訓練出針對整個語料庫的全局方差模型;最后由所有音素的聲學統(tǒng)計模型及全局方差模型組成模型庫。在合成階段,采用分層離線處理的方式,進行語音的合成。如圖1所示,包括第一層分析輸入的整段文本得到所有帶上下文信息的音素組成音素序列。第二層從訓練好的模型庫中提取音素序列中每個音素對應的模型組成模型序列。第三層使用最大似然算法從模型序列中預測出每一幀語音對應的聲學參數(shù)組成語音參數(shù)序列。第四層使用全局方差模型對語音參數(shù)序列進行整體優(yōu)化。第五層將所有優(yōu)化后的語音參數(shù)序列輸入到參數(shù)語音合成器生成最終的合成語音。發(fā)明人在實現(xiàn)本發(fā)明的過程中,發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下缺陷現(xiàn)有的參數(shù)語音合成方法,在合成階段的分層操作中采用一種橫向的處理方式 取出所有統(tǒng)計模型的參數(shù)、以最大似然算法預測生成所有幀的平滑參數(shù)、以全局方差模型得到所有幀的優(yōu)化參數(shù),最后從參數(shù)合成器輸出所有幀的語音,即在每一層都需要保存所有幀的相關(guān)參數(shù),導致語音合成時所需的隨機存儲器(Random Access Memory, RAM)的容量隨著合成語音時長的增長呈正比例增加,而芯片上RAM的大小是固定的,很多應用中芯片的RAM小到不足100K字節(jié),現(xiàn)有的參數(shù)語音合成方法無法在具有較小RAM的芯片上連續(xù)合成任意時長語音。下面結(jié)合上述合成階段中第三層和第四層的操作,進一步詳細說明造成上述問題的原因在上述合成階段的第三層操作中,參見圖4,運用最大似然算法從模型序列中預測出語音參數(shù)序列的實施過程必須通過逐幀前向遞推和后向遞推兩步來實現(xiàn)。在第一步遞推過程結(jié)束后,會為每幀語音產(chǎn)生對應的臨時參數(shù)。所有幀的臨時參數(shù)再輸入到第二步的反向遞推過程才能預測出所需的參數(shù)序列。當合成語音時長越長時,對應的語音幀數(shù)就越多, 預測每幀語音參數(shù)時都會產(chǎn)生一幀對應的臨時參數(shù)。所有幀的臨時參數(shù)都必須保存在RAM 中,才能完成第二步的遞推預測過程,從而導致無法在具有較小RAM的芯片上連續(xù)合成任意時長語音。并且,第四層中的操作需要從第三層輸出的所有幀語音參數(shù)中計算出均值與方差,再運用全局方差模型對語音參數(shù)的平滑值進行整體優(yōu)化生成最終的語音參數(shù)。因此,也需要相應幀數(shù)的RAM保存第三層輸出的所有幀的語音參數(shù),也導致無法在具有較小RAM的芯片上連續(xù)合成任意時長語音。
發(fā)明內(nèi)容
鑒于上述問題,本發(fā)明的目的是解決原有的語音合成過程中需要的RAM大小隨著合成語音長度呈正比例增加、進而無法在小RAM的芯片上連續(xù)合成出任意時長語音的問題。根據(jù)本發(fā)明的一個方面,提供了一種參數(shù)語音合成方法,包括訓練階段和合成階段,其中所述合成階段具體包括依次對輸入文本的音素序列中每一音素的每一幀語音進行如下處理對輸入文本的音素序列中的當前音素,從統(tǒng)計模型庫中提取相應的統(tǒng)計模型,并將該統(tǒng)計模型在當前音素當前幀下相應的模型參數(shù)作為當前所預測語音參數(shù)的粗略值;利用所述粗略值以及當前時刻之前預定數(shù)目語音幀的信息,對所述粗略值進行濾波,得到當前所預測語音參數(shù)的平滑值;根據(jù)統(tǒng)計得到的所述語音參數(shù)的全局均值和全局標準差比值,對所述當前所預測語音參數(shù)的平滑值進行全局優(yōu)化,生成所需的語音參數(shù);對生成的所述語音參數(shù)進行合成,得到對當前音素當前幀所合成的一幀語音。其中,優(yōu)選的方案是,利用所述粗略值以及上一時刻語音幀的信息,對所述粗略值進行濾波,得到當前所預測語音參數(shù)的平滑值,該上一時刻語音幀的信息為上一時刻所預測語音參數(shù)的平滑值。此外,優(yōu)選的方案是,利用如下公式,根據(jù)統(tǒng)計得到所述語音參數(shù)的全局均值和全局標準差比值,對所述當前所預測語音參數(shù)的平滑值進行全局優(yōu)化,生成所需的語音參數(shù)yt - r - (yt - m) + mZi = w(yt-yt) + yt其中,yt為t時刻的語音參數(shù)在優(yōu)化前的平滑值,Λ為初步優(yōu)化后的值,w為權(quán)重值,Zt為全局優(yōu)化后得到的所需的語音參數(shù),r為統(tǒng)計得到的所預測語音參數(shù)的全局標準差比值,m為統(tǒng)計得到的所預測語音參數(shù)的全局均值,r和m的取值為常數(shù)。進一步的,本方案還包括利用子帶濁音度參數(shù)構(gòu)造濁音子帶濾波器和清音子帶濾波器;將由基音頻率參數(shù)構(gòu)造的準周期性脈沖序列,經(jīng)過所述濁音子帶濾波器得到語音信號的濁音成分;將由白噪聲構(gòu)造的隨機序列,經(jīng)過所述清音子帶濾波器得到語音信號的清音成分;將所述濁音成分與清音成分相加得到混合激勵信號;將所述混合激勵信號通過由頻譜包絡參數(shù)構(gòu)造的濾波器后輸出一幀合成的語音波形。進一步的,本方案在所述合成階段之前,所述方法還包括訓練階段,在訓練階段,從語料庫中提取的聲學參數(shù)僅包括靜態(tài)參數(shù),或者,從語料庫中提取的聲學參數(shù)包括靜態(tài)參數(shù)和動態(tài)參數(shù);訓練后所得到的統(tǒng)計模型的模型參數(shù)中僅保留靜態(tài)模型參數(shù);在合成階段中,根據(jù)所述當前音素,將訓練階段中所得到所述統(tǒng)計模型在當前音素當前幀下相應的靜態(tài)模型參數(shù)作為當前所預測語音參數(shù)的粗略值。根據(jù)本發(fā)明的另一方面,提供了一種參數(shù)語音合成系統(tǒng),包括循環(huán)合成裝置,用于在合成階段,依次對輸入文本的音素序列中每一音素的每一幀語音進行語音合成;所述循環(huán)合成裝置包括粗略搜索單元,用于對輸入文本的音素序列中的當前音素,從統(tǒng)計模型庫中提取相應的統(tǒng)計模型,并將該統(tǒng)計模型在當前音素當前幀下相應的模型參數(shù)作為當前所預測語音參數(shù)的粗略值;平滑濾波單元,用于利用所述粗略值以及當前時刻之前預定數(shù)目語音幀的信息, 對所述粗略值進行濾波,得到當前所預測語音參數(shù)的平滑值;全局優(yōu)化單元,用于根據(jù)統(tǒng)計得到的所述語音參數(shù)的全局均值和全局標準差比值,對所述當前所預測語音參數(shù)的平滑值進行全局優(yōu)化,生成所需的語音參數(shù);參數(shù)語音合成單元,用于對生成的所述語音參數(shù)進行合成,得到對當前音素當前幀所合成的一幀語音。進一步的,所述平滑濾波單元包括低通濾波器組,用于利用所述粗略值以及上一時刻語音幀的信息,對所述粗略值進行濾波,得到當前所預測語音參數(shù)的平滑值,該上一時刻語音幀的信息為上一時刻所預測語音參數(shù)的平滑值。進一步的,所述全局優(yōu)化單元包括全局參數(shù)優(yōu)化器,用于利用如下公式,根據(jù)統(tǒng)計得到所述語音參數(shù)的全局均值和全局標準差比值,對所述當前所預測語音參數(shù)的平滑值進行全局優(yōu)化,生成所需的語音參數(shù)yt - r - (yt - m) + mZi =w-(y[-y[) + y[其中,yt為t時刻的語音參數(shù)在優(yōu)化前的平滑值,Λ為初步優(yōu)化后的值,w為權(quán)重值,Zt為全局優(yōu)化后得到的所需的語音參數(shù),r為統(tǒng)計得到的所預測語音參數(shù)的全局標準差比值,m為統(tǒng)計得到的所預測語音參數(shù)的全局均值,r和m的取值為常數(shù)。進一步的,所述參數(shù)語音合成單元,包括濾波器構(gòu)造模塊,用于利用子帶濁音度參數(shù)構(gòu)造濁音子帶濾波器和清音子帶濾波器;所述濁音子帶濾波器,用于對由基音頻率參數(shù)構(gòu)造的準周期性脈沖序列進行濾波,得到語音信號的濁音成分;所述清音子帶濾波器,用于對由白噪聲構(gòu)造的隨機序列進行濾波,得到語音信號的清音成分;加法器,用于將所述濁音成分與清音成分相加得到混合激勵信號;合成濾波器,用于將所述混合激勵信號通過由頻譜包絡參數(shù)構(gòu)造的濾波器后輸出一幀合成的語音波形。
進一步的,所述系統(tǒng)還包括訓練裝置,用于在訓練階段,從語料庫中提取的聲學參數(shù)僅包括靜態(tài)參數(shù),或者,從語料庫中提取的聲學參數(shù)包括靜態(tài)參數(shù)和動態(tài)參數(shù);以及,在訓練后所得到的統(tǒng)計模型的模型參數(shù)中僅保留靜態(tài)模型參數(shù);所述粗略搜索單元,具體用于在合成階段中,根據(jù)所述當前音素,將訓練階段中所得到所述統(tǒng)計模型在當前音素當前幀下相應的靜態(tài)模型參數(shù)作為當前所預測語音參數(shù)的粗略值。由上所述,本發(fā)明實施例的技術(shù)方案通過利用當前幀之前的語音幀的信息以及預先統(tǒng)計得到語音參數(shù)的全局均值和全局標準差比值等技術(shù)手段,提供了一種新型的參數(shù)語音合成方案。本發(fā)明所提供的參數(shù)語音合成方法和系統(tǒng),采用縱向處理的合成方法,即每一幀語音的合成都需要經(jīng)過取出統(tǒng)計模型粗略值、濾波得平滑值、全局優(yōu)化得優(yōu)化值、參數(shù)語音合成得語音四個步驟,之后每一幀語音的合成都再次重復這四個步驟,從而在參數(shù)語音合成處理的過程中僅需要保存當前幀需要的固定存儲容量的參數(shù)即可,使語音合成所需要的 RAM不會隨著合成語音長度的增加而增加,合成語音的時長不再受到RAM的限制。另外,本發(fā)明中所采用的聲學參數(shù)為靜態(tài)參數(shù),在模型庫中也僅保存各模型的靜態(tài)均值參數(shù),從而能夠有效減少統(tǒng)計模型庫的大小。再者,本發(fā)明在合成語音的過程中使用多子帶清濁混合激勵,使每個子帶中清音與濁音按照濁音度進行混合,從而使清音和濁音在時間上不再有明確的硬邊界,避免了語音合成后音質(zhì)的明顯畸變。本方案能夠合成出具有較高連續(xù)性、一致性和自然度的語音,有助于語音合成方法在小存儲空間芯片上的推廣和應用。為了實現(xiàn)上述以及相關(guān)目的,本發(fā)明的一個或多個方面包括后面將詳細說明并在權(quán)利要求中特別指出的特征。下面的說明以及附圖詳細說明了本發(fā)明的某些示例性方面。 然而,這些方面指示的僅僅是可使用本發(fā)明的原理的各種方式中的一些方式。此外,本發(fā)明旨在包括所有這些方面以及它們的等同物
通過參考以下結(jié)合附圖的說明及權(quán)利要求書的內(nèi)容,并且隨著對本發(fā)明的更全面理解,本發(fā)明的其它目的及結(jié)果將更加明白及易于理解。在附圖中圖1為現(xiàn)有技術(shù)中基于動態(tài)參數(shù)及最大似然準則的參數(shù)語音合成方法分階段示意圖;圖2為本發(fā)明一個實施例的參數(shù)語音合成方法的流程圖;圖3為本發(fā)明一個實施例的參數(shù)語音合成方法分階段示意圖;圖4為現(xiàn)有技術(shù)中基于動態(tài)參數(shù)的最大似然參數(shù)預測示意圖;圖5為本發(fā)明一個實施例的基于靜態(tài)參數(shù)的濾波平滑參數(shù)預測示意圖;圖6為根據(jù)本發(fā)明一個實施例的基于混合激勵的合成濾波器示意圖;圖7為現(xiàn)有技術(shù)中基于清/濁判決的合成濾波示意圖;圖8為本發(fā)明另一個實施例的參數(shù)語音合成系統(tǒng)的方框示意圖;圖9為本發(fā)明另一個實施例的參數(shù)語音合成單元的邏輯結(jié)構(gòu)示意8
圖10為本發(fā)明又一個實施例的參數(shù)語音合成方法的流程圖;圖11為本發(fā)明又一個實施例的參數(shù)語音合成系統(tǒng)的結(jié)構(gòu)示意圖。在所有附圖中相同的標號指示相似或相應的特征或功能。
具體實施例方式以下將結(jié)合附圖對本發(fā)明的具體實施例進行詳細描述。圖2示出了根據(jù)本發(fā)明一個實施例的參數(shù)語音合成方法的流程圖。如圖2所示,本發(fā)明所提供的能夠連續(xù)合成任意時長語音的參數(shù)語音合成方法的實現(xiàn)包括如下步驟S210 分析輸入文本,根據(jù)對輸入文本的分析獲取包含上下文信息的音素序列;S220:依次取出上述音素序列中的一個音素,在統(tǒng)計模型庫中搜索所述音素的各聲學參數(shù)對應的統(tǒng)計模型,按幀取出所述音素的各統(tǒng)計模型作為待合成語音參數(shù)的粗略值;S230:使用濾波器組對上述待合成語音參數(shù)的粗略值進行參數(shù)平滑,得到平滑后的語音參數(shù);S240:使用全局參數(shù)優(yōu)化器對所述平滑后的語音參數(shù)進行全局參數(shù)優(yōu)化,得到優(yōu)化后的語音參數(shù);S250:利用參數(shù)語音合成器對所述優(yōu)化后的語音參數(shù)進行合成,輸出一幀合成語
曰;S260:判斷所述音素的所有幀是否都處理完畢,如果沒有,則對所述音素的下一幀重復步驟S220 S250的語音合成處理,直至處理完所述音素序列中的所有音素的所有幀。為了能夠進一步清楚的對本發(fā)明的參數(shù)語音合成技術(shù)進行說明,以突出本發(fā)明的技術(shù)特點,下面將分階段、分步驟與現(xiàn)有技術(shù)中的參數(shù)語音合成方法逐一進行對比說明。圖3為本發(fā)明實施例的參數(shù)語音合成方法分階段示意圖。如圖3所示,與現(xiàn)有技術(shù)中基于動態(tài)參數(shù)及最大似然準則的參數(shù)語音合成方法相類似,本發(fā)明的參數(shù)語音合成的實現(xiàn)也包括訓練和合成兩個階段,其中,訓練階段用于通過語料庫中的語音信息提取語音的聲學參數(shù),并根據(jù)所提取的聲學參數(shù)訓練出每個音素在每個上下文信息時對應的統(tǒng)計模型,形成合成階段所需要的音素的統(tǒng)計模型庫。步驟S210 S260屬于合成階段,在合成階段,主要包括文本分析、參數(shù)預測和語音合成三部分,其中參數(shù)預測部分又可以細分為目標模型搜索、參數(shù)生成和參數(shù)優(yōu)化三個環(huán)節(jié)。首先,在訓練階段提取訓練語料庫的聲學參數(shù)的過程中,本發(fā)明與現(xiàn)有參數(shù)語音合成技術(shù)的主要區(qū)別在于現(xiàn)有技術(shù)中所提取的聲學參數(shù)中包含動態(tài)參數(shù),而本發(fā)明中所提取的聲學參數(shù)可以全部為靜態(tài)參數(shù),也可以包含表征前后幀參數(shù)變化的動態(tài)參數(shù),如一階或二階差分參數(shù),以提高模型訓練后的精度。具體地,本發(fā)明從語料庫中提取的聲學參數(shù)至少包括三種靜態(tài)參數(shù)頻譜包絡參數(shù)、基音頻率參數(shù)、子帶濁音度參數(shù),還可以選擇性地包括其它如共振峰頻率等參數(shù)。其中,頻譜包絡參數(shù)可以是線性預測系數(shù)(LPC)或其衍生參數(shù),如線譜對參數(shù) (LSP),也可以是倒譜類參數(shù);還可以是前幾個共振峰的參數(shù)(頻率、帶寬、幅值)或者離散傅立葉變換系數(shù)。另外,還可以使用這些頻譜包絡參數(shù)在美爾域的變種,以改善合成語音的音質(zhì)?;纛l率使用對數(shù)基音頻率,子帶濁音度為子帶中濁音所占比重。除了上述靜態(tài)參數(shù)外,從語料庫中提取的聲學參數(shù)還可以包括表征前后幀聲學參數(shù)變化的動態(tài)參數(shù),如前后幾幀基音頻率間的一階或二階參數(shù)。訓練時要將各音素自動對齊到語料庫中大量的語音片段上,然后從這些語音片段中統(tǒng)計出該音素對應的聲學參數(shù)模型。聯(lián)合使用靜態(tài)參數(shù)和動態(tài)參數(shù)進行自動對齊的精度略高于僅使用靜態(tài)參數(shù)的情形,使得模型的參數(shù)更準確。但是,由于本發(fā)明在合成階段并不需要模型中的動態(tài)參數(shù),因此,本發(fā)明在最終訓練出的模型庫中僅保留靜態(tài)參數(shù)。在根據(jù)所提取的聲學參數(shù)訓練出每個音素在不同上下文信息時各聲學參數(shù)對應的統(tǒng)計模型的過程中,采用隱馬爾可夫模型(HMM,Hidden Markov Model)對各聲學參數(shù)進行建模。具體地,對于頻譜包絡參數(shù)與子帶濁音度參數(shù),使用連續(xù)概率分布的HMM建模,而對于基音頻率則采用多空間概率分布的HMM建模。這種建模方案為現(xiàn)有技術(shù)中已有的建模方案,因此在下面的表述中只對該建模方案作簡單的說明。HMM是一種典型的統(tǒng)計信號處理方法,由于其隨機性、可以處理未知字長的字符串輸入、可以有效的避開切分的問題以及具有大量快速有效的訓練和識別算法等特點,被廣泛應用于信號處理的各個領域。HMM的結(jié)構(gòu)為5個狀態(tài)左右型,每個狀態(tài)上觀察概率的分布為單高斯密度函數(shù)。而該函數(shù)由參數(shù)的均值和方差唯一確定。所述的均值由靜態(tài)參數(shù)的均值、動態(tài)參數(shù)(一階與二階差分)的均值組成。所述的方差由靜態(tài)參數(shù)的方差、動態(tài)參數(shù)(一階與二階差分)的方差組成。訓練時根據(jù)上下文信息為每個音素的各聲學參數(shù)訓練出一個模型,為了提高模型訓練的穩(wěn)健性,需要根據(jù)音素的上下文信息對相關(guān)的音素進行聚類,如采用基于決策樹的聚類方法。在上述聲學參數(shù)對應的模型訓練完成之后,再使用這些模型對訓練語料庫中的語音進行幀到狀態(tài)的強制對齊,然后利用對齊過程中產(chǎn)生的時長信息(即各狀態(tài)對應的幀數(shù)),訓練音素在不同上下文信息時采用決策樹聚類后的狀態(tài)時長模型,最終由每個音素在不同上下文信息時的各聲學參數(shù)對應的統(tǒng)計模型形成統(tǒng)計模型庫。在訓練完成后,本發(fā)明在模型庫中僅保存各模型的靜態(tài)均值參數(shù)。而現(xiàn)有的參數(shù)語音合成方法則需要保留靜態(tài)均值參數(shù)、一階差分參數(shù)、二階差分的均值參數(shù)及這些參數(shù)所對應的方差參數(shù),統(tǒng)計模型庫較大。實踐證明,在本發(fā)明中,僅保存各模型的靜態(tài)均值參數(shù)的統(tǒng)計模型庫的大小只有現(xiàn)有技術(shù)中形成的統(tǒng)計模型庫的約1/6,極大地減少了統(tǒng)計模型庫的存儲空間。其中,所減少的數(shù)據(jù)雖然在現(xiàn)有的參數(shù)語音合成技術(shù)中是必須的,但對于本發(fā)明提供的參數(shù)語音合成技術(shù)方案則是不需要的,因此,數(shù)據(jù)量的減少并不會影響本發(fā)明參數(shù)語音合成的實現(xiàn)。在合成階段,首先需要對輸入的文本進行分析,以便從中提取出包含上下文信息的音素序列(步驟S210),作為參數(shù)合成的基礎。在此,音素的上下文信息指的是與當前音素前后相鄰的音素的信息,這些上下文信息可以是其前后一個或幾個音素的名稱,也可以包含其它語言層或音韻層的信息。比如,一個音素的上下文信息包括當前音素名、前后兩個音素名、所在音節(jié)的音調(diào)或者重音,還可以選擇性地包括所在詞的詞性等。在確定了輸入文本中包含上下文信息的音素序列之后,就可以依次取出序列中的一個音素,在統(tǒng)計模型庫中搜索該音素的各聲學參數(shù)對應的統(tǒng)計模型,然后按幀取出該音素的各統(tǒng)計模型作為待合成語音參數(shù)的粗略值(步驟S220)。在目標統(tǒng)計模型的搜索過程中,將音素的上下文標注信息輸入到聚類決策樹中,即可搜索出頻譜包絡參數(shù)、基音頻率參數(shù)、子帶濁音度參數(shù)、狀態(tài)時長參數(shù)對應的統(tǒng)計模型。其中的狀態(tài)時長參數(shù)不是從原始語料庫中提取的靜態(tài)聲學參數(shù),它是在訓練中作狀態(tài)與幀的對齊時生成的新參數(shù)。從模型各狀態(tài)中依次取出所保存的靜態(tài)參數(shù)的均值即為各參數(shù)對應的靜態(tài)均值參數(shù)。其中,狀態(tài)時長均值參數(shù)被直接用于確定待合成的某個音素中各狀態(tài)該持續(xù)多少幀,而頻譜包絡、基音頻率、子帶濁音度等靜態(tài)均值參數(shù)就是待合成語音參數(shù)的粗略值。在確定了待合成語音參數(shù)的粗略值之后,基于濾波器組對所確定的語音參數(shù)粗略值進行濾波,從而預測語音參數(shù)(步驟S230)。在這一步驟中,利用一組專門的濾波器分別對頻譜包絡、基音頻率和子帶濁音度進行濾波,以預測合成效果更好的語音參數(shù)值。本發(fā)明在步驟S230中所采用的濾波方法為基于靜態(tài)參數(shù)的平滑濾波方法。圖5為本發(fā)明基于靜態(tài)參數(shù)的濾波平滑參數(shù)預測示意圖,如圖5所示,本發(fā)明用這組參數(shù)預測濾波器取代了現(xiàn)有的參數(shù)語音合成技術(shù)中的最大似然參數(shù)預測器,利用一組低通濾波器用以分別預測待合成語音參數(shù)的頻譜包絡參數(shù)、基音頻率參數(shù)、子帶濁音度參數(shù)。處理過程如公式(1)所示yt = ht*xt (1)其中,t表示時間為第t巾貞,^是從模型中得到的某個語音參數(shù)在第t幀時的粗略值,yt為經(jīng)過濾波平滑后的值,運算符*表示卷積,ht為預先設計好的濾波器的沖擊響應。對于不同類型的聲學參數(shù),由于參數(shù)特性不同,ht可以被設計成不同的表示。對于頻譜包絡參數(shù)、子帶濁音度參數(shù),可使用公式( 所示的濾波器進行參數(shù)的預測。yt = α · yt_1+(l-a) · Xt (2)其中,α為預先設計好的固定的濾波器系數(shù),α的選擇可根據(jù)實際語音中頻譜包絡參數(shù)、子帶濁音度隨時間變化的快慢程度由實驗確定。對于基音頻率參數(shù),則可使用公式(3)所示的濾波器進行參數(shù)的預測。yt = β . y^+d-β) · xt (3)其中,β為預先設計好的固定的濾波器系數(shù),β的選擇可根據(jù)實際語音中基音頻率參數(shù)隨時間變化的快慢程度由實驗確定??梢钥闯?,本發(fā)明所使用的這組濾波器在預測待合成語音參數(shù)的過程中所涉及的參數(shù)不會延及將來的參數(shù),某一時刻的輸出幀僅僅依賴于該時刻及之前的輸入幀或該時刻的前一時刻的輸出幀,而與將來的輸入或輸出幀無關(guān),從而使濾波器組所需要的RAM大小能夠事先固定。也就是說,在本發(fā)明中,運用公式( 和( 預測語音的聲學參數(shù)時,當前幀的輸出參數(shù)僅依賴于當前幀的輸入及前一幀的輸出參數(shù)。這樣,整個參數(shù)的預測過程使用固定大小的RAM緩存即可現(xiàn)實,不會隨著待合成語音時長的增加而增加,從而就可以連續(xù)預測出任意時長的語音參數(shù),解決了現(xiàn)有技術(shù)中運用最大似然準則預測參數(shù)過程中所需RAM隨合成語音時長呈正比例增長的問題。由上述公式( 和( 可以看出,本方案在使用濾波器組對當前時刻的待合成語音參數(shù)的粗略值進行參數(shù)平滑時,可以根據(jù)該時刻的粗略值以及上一時刻語音幀的信息,對該粗略值進行濾波,得到平滑后的語音參數(shù)。在此,上一時刻語音幀的信息為上一時刻所預測語音參數(shù)的平滑值。在預測出語音參數(shù)的平滑值之后,就可以使用全局參數(shù)優(yōu)化器對平滑后的各語音參數(shù)進行優(yōu)化,進而確定優(yōu)化后的語音參數(shù)(步驟SM0)。為了使合成語音參數(shù)的方差與訓練語料庫中語音參數(shù)的方差一致,改善合成語音的音質(zhì),本發(fā)明在優(yōu)化語音參數(shù)的過程中,使用下面的公式(4)對合成語音參數(shù)的變化范圍進行調(diào)節(jié)。
權(quán)利要求
1.一種參數(shù)語音合成方法,包括在合成階段,依次對輸入文本的音素序列中每一音素的每一幀語音進行如下處理 對輸入文本的音素序列中的當前音素,從統(tǒng)計模型庫中提取相應的統(tǒng)計模型,并將該統(tǒng)計模型在當前音素當前幀下相應的模型參數(shù)作為當前所預測語音參數(shù)的粗略值;利用所述粗略值以及當前時刻之前預定數(shù)目語音幀的信息,對所述粗略值進行濾波, 得到當前所預測語音參數(shù)的平滑值;根據(jù)統(tǒng)計得到的所述語音參數(shù)的全局均值和全局標準差比值,對所述當前所預測語音參數(shù)的平滑值進行全局優(yōu)化,生成所需的語音參數(shù);對生成的所述語音參數(shù)進行合成,得到對當前音素當前幀所合成的一幀語音。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述利用所述粗略值以及當前時刻之前預定數(shù)目語音幀的信息,對所述粗略值進行濾波,得到當前所預測語音參數(shù)的平滑值具體包括利用所述粗略值以及上一時刻語音幀的信息,對所述粗略值進行濾波,得到當前所預測語音參數(shù)的平滑值;其中,所述上一時刻語音幀的信息為上一時刻所預測語音參數(shù)的平滑值。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,利用如下公式,根據(jù)統(tǒng)計得到所述語音參數(shù)的全局均值和全局標準差比值,對所述當前所預測語音參數(shù)的平滑值進行全局優(yōu)化,生成所需的語音參數(shù) yt =r-(yt-m) + mzt =^<yt-yt)+yt其中,yt為t時刻的語音參數(shù)在優(yōu)化前的平滑值,滅為初步優(yōu)化后的值,W為權(quán)重值,Zt 為全局優(yōu)化后得到的所需的語音參數(shù),r為統(tǒng)計得到的所預測語音參數(shù)的全局標準差比值, m為統(tǒng)計得到的所預測語音參數(shù)的全局均值,r和m的取值為常數(shù)。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述對生成的所述語音參數(shù)進行合成,得到對當前音素當前幀所合成的一幀語音包括利用子帶濁音度參數(shù)構(gòu)造濁音子帶濾波器和清音子帶濾波器; 將由基音頻率參數(shù)構(gòu)造的準周期性脈沖序列,經(jīng)過所述濁音子帶濾波器得到語音信號的濁音成分;將由白噪聲構(gòu)造的隨機序列,經(jīng)過所述清音子帶濾波器得到語音信號的清音成分; 將所述濁音成分與清音成分相加得到混合激勵信號;將所述混合激勵信號通過由頻譜包絡參數(shù)構(gòu)造的濾波器后輸出一幀合成的語音波形。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述合成階段之前,所述方法還包括訓練階段,在訓練階段,從語料庫中提取的聲學參數(shù)僅包括靜態(tài)參數(shù),或者,從語料庫中提取的聲學參數(shù)包括靜態(tài)參數(shù)和動態(tài)參數(shù);訓練后所得到的統(tǒng)計模型的模型參數(shù)中僅保留靜態(tài)模型參數(shù); 合成階段中所述將該統(tǒng)計模型在當前音素當前幀下相應的模型參數(shù)作為當前所預測語音參數(shù)的粗略值具體為根據(jù)所述當前音素,將訓練階段中所得到所述統(tǒng)計模型在當前音素當前幀下相應的靜態(tài)模型參數(shù)作為當前所預測語音參數(shù)的粗略值。
6.一種參數(shù)語音合成系統(tǒng),包括循環(huán)合成裝置,用于在合成階段,依次對輸入文本的音素序列中每一音素的每一幀語音進行語音合成;所述循環(huán)合成裝置包括粗略搜索單元,用于對輸入文本的音素序列中的當前音素,從統(tǒng)計模型庫中提取相應的統(tǒng)計模型,并將該統(tǒng)計模型在當前音素當前幀下相應的模型參數(shù)作為當前所預測語音參數(shù)的粗略值;平滑濾波單元,用于利用所述粗略值以及當前時刻之前預定數(shù)目語音幀的信息,對所述粗略值進行濾波,得到當前所預測語音參數(shù)的平滑值;全局優(yōu)化單元,用于根據(jù)統(tǒng)計得到的所述語音參數(shù)的全局均值和全局標準差比值,對所述當前所預測語音參數(shù)的平滑值進行全局優(yōu)化,生成所需的語音參數(shù);參數(shù)語音合成單元,用于對生成的所述語音參數(shù)進行合成,得到對當前音素當前幀所合成的一幀語音。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其中,所述平滑濾波單元包括低通濾波器組,所述低通濾波器組,用于利用所述粗略值以及上一時刻語音幀的信息,對所述粗略值進行濾波,得到當前所預測語音參數(shù)的平滑值;其中,所述上一時刻語音幀的信息為上一時刻所預測語音參數(shù)的平滑值。
8.根據(jù)權(quán)利要求6所述的系統(tǒng),其中,所述全局優(yōu)化單元包括全局參數(shù)優(yōu)化器,所述全局參數(shù)優(yōu)化器,用于利用如下公式,根據(jù)統(tǒng)計得到所述語音參數(shù)的全局均值和全局標準差比值,對所述當前所預測語音參數(shù)的平滑值進行全局優(yōu)化,生成所需的語音參數(shù)yt =r-(yt-m) + mzt =^<yt-yt)+yt其中,yt為t時刻的語音參數(shù)在優(yōu)化前的平滑值,滅為初步優(yōu)化后的值,W為權(quán)重值,Zt 為全局優(yōu)化后得到的所需的語音參數(shù),r為統(tǒng)計得到的所預測語音參數(shù)的全局標準差比值, m為統(tǒng)計得到的所預測語音參數(shù)的全局均值,r和m的取值為常數(shù)。
9.根據(jù)權(quán)利要求6所述的系統(tǒng),其中,所述參數(shù)語音合成單元,包括濾波器構(gòu)造模塊,用于利用子帶濁音度參數(shù)構(gòu)造濁音子帶濾波器和清音子帶濾波器;所述濁音子帶濾波器,用于對由基音頻率參數(shù)構(gòu)造的準周期性脈沖序列進行濾波,得到語音信號的濁音成分;所述清音子帶濾波器,用于對由白噪聲構(gòu)造的隨機序列進行濾波,得到語音信號的清音成分;加法器,用于將所述濁音成分與清音成分相加得到混合激勵信號;合成濾波器,用于將所述混合激勵信號通過由頻譜包絡參數(shù)構(gòu)造的濾波器后輸出一幀合成的語音波形。
10.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括訓練裝置,所述訓練裝置,用于在訓練階段,從語料庫中提取的聲學參數(shù)僅包括靜態(tài)參數(shù),或者,從語料庫中提取的聲學參數(shù)包括靜態(tài)參數(shù)和動態(tài)參數(shù);以及,在訓練后所得到的統(tǒng)計模型的模型參數(shù)中僅保留靜態(tài)模型參數(shù);所述粗略搜索單元,具體用于在合成階段中,根據(jù)所述當前音素,將訓練階段中所得到所述統(tǒng)計模型在當前音素當前幀下相應的靜態(tài)模型參數(shù)作為當前所預測語音參數(shù)的粗略值。
全文摘要
本發(fā)明提供了一種參數(shù)語音合成方法和系統(tǒng),該方法包括依次對輸入文本的音素序列中每一音素的每一幀語音進行如下處理對當前音素,從統(tǒng)計模型庫中提取相應的統(tǒng)計模型,并將該統(tǒng)計模型在當前音素當前幀下相應的模型參數(shù)作為當前所預測語音參數(shù)的粗略值;利用粗略值以及當前時刻之前預定數(shù)目語音幀的信息,得到當前所預測語音參數(shù)的平滑值;根據(jù)統(tǒng)計得到的語音參數(shù)的全局均值和全局標準差比值,對語音參數(shù)的平滑值進行全局優(yōu)化,生成所需的語音參數(shù);對生成的所述語音參數(shù)進行合成,得到對當前音素當前幀所合成的一幀語音。利用本方案,能夠使語音合成所需要的RAM不會隨著合成語音長度的增加而增加,合成語音的時長不再受到RAM的限制。
文檔編號G10L19/08GK102385859SQ20111033182
公開日2012年3月21日 申請日期2011年10月27日 優(yōu)先權(quán)日2011年8月10日
發(fā)明者吳鳳梁, 職振華 申請人:歌爾聲學股份有限公司