孫亞鵬,王嘯飛
(湖南科技大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,湘潭411201)
隨著語音技術(shù)的迅速發(fā)展,語音庫作為其中的重要一環(huán)凸顯了越來越重要的作用。一個(gè)高質(zhì)量的語音庫,在語音應(yīng)用的各種重要領(lǐng)域,例如語音合成、語音識(shí)別、情緒感知、人機(jī)交互等,可以獲得更好的效果。
傳統(tǒng)的語音庫的構(gòu)建,需要經(jīng)過一系列的人工工作過程,例如文本處理、語料處理、語音錄制、語音處理、語音存儲(chǔ)等。使用傳統(tǒng)的構(gòu)建方法時(shí),整個(gè)過程耗時(shí)長、受到地域限制多、花費(fèi)大、人工處理誤差大一致性不好??紤]到這些因素,結(jié)合現(xiàn)在正在蓬勃發(fā)展和普及應(yīng)用的Android 智能手機(jī),可以開發(fā)一個(gè)基于智能手機(jī)的語音庫自動(dòng)構(gòu)建的App。通過該App 可以在服務(wù)器端或者管理端預(yù)先設(shè)置好需要錄音的文本,然后用戶打開App 后,根據(jù)現(xiàn)實(shí)的文本,在提示下進(jìn)行朗讀,獲得朗讀錄音后,進(jìn)行濾波去除噪聲,然后進(jìn)行語音的切分對(duì)齊,最后將一一對(duì)應(yīng)好的語音和文本存入語音庫。下面將進(jìn)一步進(jìn)行闡述。
語音的發(fā)音是基于文字的,所以需要先確定好文本內(nèi)容和格式,App 可以設(shè)置多種格式文本進(jìn)行顯示,可以是字、詞、句、段落和文章。在服務(wù)器端或者管理端,將需要朗讀錄音的文本,按照需要的格式進(jìn)行錄入。完成后,用戶在App 上將看到按照設(shè)定的格式一個(gè)一個(gè)顯示的文本內(nèi)容,就可以在提示下進(jìn)行錄音操作。
語音的錄制時(shí)語音庫構(gòu)建的一項(xiàng)關(guān)鍵性工作,其效果直接決定了語音庫的質(zhì)量高低。用戶在App 上的朗讀指定的文本進(jìn)行語音錄制時(shí),其操作簡(jiǎn)單明了,在這個(gè)環(huán)節(jié)除了對(duì)用戶的錄制過程進(jìn)行一定的指導(dǎo)外,還有一些工作可以提高語音錄制的效果。例如說在推廣App 的使用時(shí),可以在選定特定的用戶群體上下一些功夫,若是錄制的是標(biāo)準(zhǔn)普通話,則可以分析用戶數(shù)據(jù),更多的選定一些大學(xué)生、教師等一些群體進(jìn)行推廣錄制;若是錄制的是某種方言,則選定這個(gè)方言的聚居區(qū)一定年紀(jì)的人群進(jìn)行推廣錄制;若是要求的是女性或者男性語音用來做合成,也可以根據(jù)需要進(jìn)行靈活選擇,以此為基礎(chǔ),能夠完成一些專業(yè)化特色化語音庫的快速構(gòu)建。
由于語音在錄制過程中是使用用戶智能手機(jī)的App 軟件在開放環(huán)境下進(jìn)行錄制的,不是在錄音棚之類的專業(yè)環(huán)境下,所以很可能帶有一些噪聲,另外電子設(shè)備在工作環(huán)境下也會(huì)自帶噪聲干擾。對(duì)錄制的語音進(jìn)行濾波去噪是一種必要的預(yù)處理操作。
在進(jìn)行語音濾波去噪處理時(shí),首先要進(jìn)行的是將長段的語音數(shù)據(jù)分割為短段的語音數(shù)據(jù),這是考慮長段的語音數(shù)據(jù)在統(tǒng)計(jì)上是不平穩(wěn)的,我們需要先將之處理為合適的平穩(wěn)的語音數(shù)據(jù)。在實(shí)踐中漢明窗和矩形窗經(jīng)常被用來處理這個(gè)問題,這里使用選擇漢明窗進(jìn)行分幀處理。其分幀組幀處理如圖1 所示。
接下來需要進(jìn)行參數(shù)估計(jì),考慮到實(shí)時(shí)性要求,采用端點(diǎn)檢測(cè)法來區(qū)分語音段和噪聲段,通過兩段功率譜相減可以得到語音段的參數(shù)。
然后利用改進(jìn)的卡爾曼濾波前期處理過的語音數(shù)據(jù)進(jìn)行濾波,考慮到實(shí)際噪聲信號(hào)有色性,改進(jìn)的卡爾曼濾波可以在有色噪聲情況下獲得更好的濾波效果。改進(jìn)卡爾曼濾波的增益計(jì)算公式:K=PHT(HPHT+μR)-1其中當(dāng)μ =1 時(shí),就相當(dāng)于白噪聲假設(shè)原始卡爾曼增益,因此改進(jìn)后的公式更加適應(yīng)一般情形一些,更加具有普遍性。
經(jīng)過去噪處理的語音,接下來要進(jìn)行切分對(duì)齊處理,就是按照文本里的文字,和語音中的每個(gè)字的發(fā)音,進(jìn)行一一對(duì)應(yīng)的切分對(duì)齊,使得每個(gè)字都對(duì)應(yīng)好自己的發(fā)音。整個(gè)過程中主要包括語句自動(dòng)切分技術(shù)和音段自動(dòng)切分技術(shù)。
在語句自動(dòng)切分處理時(shí),首先是隱馬爾可夫的訓(xùn)練和語音解碼,得到被處理語音的特征參數(shù),對(duì)每個(gè)音素建立隱馬爾可夫,然后獲得音素的時(shí)間信息,對(duì)于語句的標(biāo)點(diǎn)符號(hào),采取音素sil 代表。最后根據(jù)語句的音素sil 的時(shí)間信息,將篇幅語音切分成句子語音。
在音段自動(dòng)切分處理中結(jié)合隱馬爾可夫和維特比算法,使用維特比算法對(duì)語音信號(hào)和相應(yīng)文本進(jìn)行強(qiáng)制對(duì)齊,可以取得較好的切分效果。過程如圖2 所示。
圖2 音段自動(dòng)切分圖
完成語音和文本的切分對(duì)齊后,最后將語音數(shù)據(jù)和文本數(shù)據(jù)一一對(duì)應(yīng)存儲(chǔ),建立索引,基本完成了語音庫建設(shè)。
利用現(xiàn)在普及的移動(dòng)智能手機(jī)和計(jì)算機(jī)技術(shù)構(gòu)建語音庫,相較于傳統(tǒng)的語音庫建設(shè),在效率方面可以達(dá)到更加高效快速,在效果方面可以達(dá)到更加一致專業(yè)。不論是在建設(shè)大型、綜合性的語音庫,還是特殊、專業(yè)化的小型語音庫都不失為一種更好的途徑和選擇。