專(zhuān)利名稱(chēng):語(yǔ)音編碼方法及其裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及把數(shù)字語(yǔ)音信號(hào)壓縮成較小信息量的語(yǔ)音編碼方法及其裝置,尤其涉及語(yǔ)音編碼方法及其裝置的驅(qū)動(dòng)向量(fixedexcitation)的搜索。
背景技術(shù):
到目前為止,在多數(shù)語(yǔ)音編碼方法和裝置中,把輸入語(yǔ)音劃分為頻譜包絡(luò)信息和音源,分別以幀為單位進(jìn)行編碼生成語(yǔ)音代碼。
最具有代表性的是,在文獻(xiàn)1“使用共軛結(jié)構(gòu)代數(shù)碼驅(qū)動(dòng)線(xiàn)性預(yù)測(cè)的8kbit/s語(yǔ)音編碼(CS-ACELP)”(ITU-T Recommendation G.729,“CODING OF SPEECH AT 8kbit/s USING CONJUGATE-STURUCTURE ALGEBRAIC-CODE-EXCITED LINEAR-PREDICTION(CS-ACELP)”),1996年3月)等文獻(xiàn)中所公開(kāi)的、使用代碼驅(qū)動(dòng)線(xiàn)性預(yù)測(cè)編碼(Code-Excited Linear PredictionCELP)方式的語(yǔ)音編碼方法和裝置。
圖8是表示在文獻(xiàn)1中所公開(kāi)的傳統(tǒng)的CELP系統(tǒng)的語(yǔ)音編碼裝置的整個(gè)結(jié)構(gòu)的框圖。
圖中1為輸入語(yǔ)音、2為線(xiàn)性預(yù)測(cè)分析部件、3為線(xiàn)性預(yù)測(cè)系數(shù)編碼部件、4為自適應(yīng)音源編碼部件、5為驅(qū)動(dòng)音源編碼部、6為增益編碼部件、7為復(fù)用部件、8為語(yǔ)音代碼。
在該傳統(tǒng)的語(yǔ)音編碼裝置中,以10ms為1幀進(jìn)行處理。對(duì)于音源的編碼,則把一個(gè)幀分割為兩個(gè)子幀并對(duì)每個(gè)子幀進(jìn)行處理。而且,為了使說(shuō)明容易理解,在以后的說(shuō)明中,不對(duì)幀和子幀進(jìn)行特別的區(qū)分,簡(jiǎn)單地記為幀。
以下,就該傳統(tǒng)的語(yǔ)音編碼裝置的動(dòng)作進(jìn)行說(shuō)明。首先,輸入語(yǔ)音1被輸入到線(xiàn)性預(yù)測(cè)分析部件2和自適應(yīng)音源編碼部件4和增益編碼部件6。線(xiàn)性預(yù)測(cè)分析部件2對(duì)輸入語(yǔ)音1進(jìn)行分析,并抽出語(yǔ)音的頻譜包絡(luò)信息即線(xiàn)性預(yù)測(cè)系數(shù)。線(xiàn)性預(yù)測(cè)系數(shù)編碼部件3對(duì)該線(xiàn)性預(yù)測(cè)系數(shù)進(jìn)行編碼,并把該代碼輸出到復(fù)用部件7,同時(shí)為了對(duì)音源進(jìn)行編碼輸出被量化的線(xiàn)性預(yù)測(cè)系數(shù)。
自適應(yīng)音源編碼部件4,將以前的規(guī)定長(zhǎng)度的音源(信號(hào))作為自適應(yīng)音源代碼本進(jìn)行存儲(chǔ),并對(duì)應(yīng)于在內(nèi)部產(chǎn)生的數(shù)個(gè)比特的二進(jìn)制值表示的各個(gè)自適應(yīng)音源代碼,生成周期性地重復(fù)以前的音源的時(shí)間序列向量(自適應(yīng)向量)。然后,使時(shí)間序列向量通過(guò)使用了從線(xiàn)性預(yù)測(cè)系數(shù)編碼部件3輸出的經(jīng)量化的線(xiàn)性預(yù)測(cè)系數(shù)的合成濾波器,得到暫時(shí)的合成語(yǔ)音。檢查該暫時(shí)的合成語(yǔ)音乘以適當(dāng)增益后的信號(hào)與輸入語(yǔ)音1之間的失真,并選擇使該失真最小化的自適應(yīng)音源代碼輸出到復(fù)用部件7,同時(shí)把對(duì)應(yīng)于被選擇的自適應(yīng)音源代碼的時(shí)間序列向量作為自適應(yīng)音源,輸出到驅(qū)動(dòng)音源編碼部分5和增益編碼部件6。并且,把從輸入語(yǔ)音1減去依據(jù)自適應(yīng)音源的合成語(yǔ)音乘以適當(dāng)增益后的信號(hào)所得的信號(hào),作為編碼對(duì)象信號(hào)輸出到驅(qū)動(dòng)音源編碼部分5。
驅(qū)動(dòng)音源編碼部分5,首先,對(duì)應(yīng)于在內(nèi)部產(chǎn)生的用二進(jìn)制值表示的各驅(qū)動(dòng)音源代碼,順序地從存儲(chǔ)在內(nèi)部的驅(qū)動(dòng)音源代碼本讀出時(shí)間序列向量(驅(qū)動(dòng)向量)。然后,使時(shí)間序列向量通過(guò)使用了從線(xiàn)性預(yù)測(cè)系數(shù)編碼部件3輸出的量化的線(xiàn)性預(yù)測(cè)系數(shù)的合成濾波器,得到暫時(shí)的合成語(yǔ)音。對(duì)該暫時(shí)的合成語(yǔ)音乘以適當(dāng)增益后的信號(hào)和從輸入語(yǔ)音1減去依據(jù)自適應(yīng)音源的合成語(yǔ)音所得的信號(hào)即編碼對(duì)象信號(hào)之間的失真加以檢查,并選擇使該失真最小化的驅(qū)動(dòng)音源代碼輸出到復(fù)用部件7,同時(shí)把對(duì)應(yīng)于被選擇的驅(qū)動(dòng)音源代碼的時(shí)間序列向量作為驅(qū)動(dòng)音源,輸出到增益編碼部件6。
增益編碼部件6,首先,對(duì)應(yīng)于在內(nèi)部產(chǎn)生的用二進(jìn)制值表示的各增益代碼,順序地從存儲(chǔ)在內(nèi)部的增益代碼本讀出增益向量。然后,把各增益向量的各要素,跟從自適應(yīng)音源編碼部件4輸出的自適應(yīng)音源和從驅(qū)動(dòng)音源編碼部分5輸出的驅(qū)動(dòng)音源相乘,然后進(jìn)行相加來(lái)生成音源,讓生成的該音源通過(guò)使用了從線(xiàn)性預(yù)測(cè)系數(shù)編碼部件3輸出的量化的線(xiàn)性預(yù)測(cè)系數(shù)的合成濾波器,得到暫時(shí)的合成語(yǔ)音。對(duì)該暫時(shí)的合成語(yǔ)音與輸入語(yǔ)音1之間的失真加以檢查,并選擇使該失真最小化的增益代碼輸出到復(fù)用部件7。另外,把對(duì)應(yīng)于該增益代碼的上述生成的音源輸出到自適應(yīng)音源編碼部件4。
最后,自適應(yīng)音源編碼部件4,使用通過(guò)增益編碼部件6生成的對(duì)應(yīng)于增益代碼的音源,對(duì)內(nèi)部的自適應(yīng)音源代碼本進(jìn)行更新。
復(fù)用部件7復(fù)用從線(xiàn)性預(yù)測(cè)系數(shù)編碼部件3輸出的線(xiàn)性預(yù)測(cè)系數(shù)的代碼、從自適應(yīng)音源編碼部件4輸出的自適應(yīng)音源代碼、從驅(qū)動(dòng)音源編碼部5輸出的驅(qū)動(dòng)音源代碼、從增益編碼部件6輸出的增益代碼,并輸出由此得到的語(yǔ)音代碼8。
圖9是表示在文獻(xiàn)1等中所公開(kāi)的傳統(tǒng)的CELP系語(yǔ)音編碼裝置的驅(qū)動(dòng)音源編碼部分5的詳細(xì)結(jié)構(gòu)的框圖。
圖9中9為自適應(yīng)向量生成部件、10和14為合成濾波器、11為減法運(yùn)算部件、12為編碼對(duì)象信號(hào)、13為驅(qū)動(dòng)向量生成部件、15為失真計(jì)算部分、20為搜索部件、21為驅(qū)動(dòng)音源代碼、22為驅(qū)動(dòng)音源。失真計(jì)算部分15由聽(tīng)覺(jué)加權(quán)濾波器16、聽(tīng)覺(jué)加權(quán)濾波器17、減法運(yùn)算部件18、功率計(jì)算部件19構(gòu)成。而且,自適應(yīng)向量生成部件9、合成濾波器10、減法運(yùn)算部件11包括在自適應(yīng)音源編碼部件4內(nèi),但是,為了更容易理解內(nèi)容,一起在圖中示出。
首先,自適應(yīng)音源編碼部件4內(nèi)的自適應(yīng)向量生成部件9,把對(duì)應(yīng)于前述自適應(yīng)音源代碼的時(shí)間序列向量,作為自適應(yīng)音源輸出到合成濾波器10。
自適應(yīng)音源編碼部件4內(nèi)的合成濾波器10,把從圖8中的線(xiàn)性預(yù)測(cè)系數(shù)編碼部件3輸出的經(jīng)量化的線(xiàn)性預(yù)測(cè)系數(shù)作為濾波器系數(shù)加以設(shè)定,并對(duì)從自適應(yīng)向量生成部件9輸出的自適應(yīng)音源進(jìn)行合成濾波,把得到的合成語(yǔ)音輸出到減法運(yùn)算部件11。
自適應(yīng)音源編碼部件4內(nèi)的減法運(yùn)算部件11,求出從合成濾波器10輸出的合成語(yǔ)音和輸入語(yǔ)音1之間的差信號(hào),并將得到的差信號(hào)作為驅(qū)動(dòng)音源編碼部分5中的編碼對(duì)象信號(hào)12加以輸出。
另一方面,搜索部件20使得以二進(jìn)制值表示的各驅(qū)動(dòng)音源代碼順序地產(chǎn)生,并順序地輸出到驅(qū)動(dòng)向量生成部件13。
驅(qū)動(dòng)向量生成部件13對(duì)應(yīng)于從搜索部件20輸出的驅(qū)動(dòng)音源代碼,從存儲(chǔ)在內(nèi)部的驅(qū)動(dòng)音源代碼本讀出時(shí)間序列向量,并作為驅(qū)動(dòng)向量輸出到合成濾波器14。而且,作為驅(qū)動(dòng)音源代碼本,有存儲(chǔ)預(yù)先準(zhǔn)備的噪聲向量的驅(qū)動(dòng)音源代碼本和通過(guò)用代數(shù)方式使脈沖位置和極性相結(jié)合描述的代數(shù)音源代碼本等。另外,還有相加兩個(gè)以上的代碼本形式的驅(qū)動(dòng)音源代碼本,或者將使用了自適應(yīng)音源的重復(fù)周期的聲調(diào)周期化包含在內(nèi)的驅(qū)動(dòng)音源代碼本。
合成濾波器14,把從線(xiàn)性預(yù)測(cè)系數(shù)編碼部件3輸出的經(jīng)量化的線(xiàn)性預(yù)測(cè)系數(shù)作為濾波器系數(shù)加以設(shè)定,并對(duì)從驅(qū)動(dòng)向量生成部件13輸出的驅(qū)動(dòng)向量進(jìn)行合成濾波,把得到的合成語(yǔ)音輸出到失真計(jì)算部分15。
失真計(jì)算部分15內(nèi)的聽(tīng)覺(jué)加權(quán)濾波器16,基于從線(xiàn)性預(yù)測(cè)系數(shù)編碼部件3輸出的經(jīng)量化的線(xiàn)性預(yù)測(cè)系數(shù),算出聽(tīng)覺(jué)加權(quán)濾波器系數(shù),并把該聽(tīng)覺(jué)加權(quán)濾波器系數(shù)設(shè)定為濾波器系數(shù),對(duì)從自適應(yīng)音源編碼部件4內(nèi)的減法運(yùn)算部件11輸出的編碼對(duì)象信號(hào)12進(jìn)行濾波,把得到的信號(hào)輸出到減法運(yùn)算部件18。
失真計(jì)算部分15內(nèi)的聽(tīng)覺(jué)加權(quán)濾波器17,設(shè)定于聽(tīng)覺(jué)加權(quán)濾波器16相同的濾波器系數(shù),對(duì)從合成濾波器14輸出的合成語(yǔ)音進(jìn)行濾波,把得到的信號(hào)輸出到減法運(yùn)算部件18。
失真計(jì)算部分15內(nèi)的減法運(yùn)算部件18,求出在從聽(tīng)覺(jué)加權(quán)濾波器16輸出的信號(hào)和從聽(tīng)覺(jué)加權(quán)濾波器17輸出的信號(hào)乘以適當(dāng)?shù)脑鲆婧蟮玫降男盘?hào)之間的差信號(hào),并把該差信號(hào)輸出到功率計(jì)算部件19。
失真計(jì)算部分15內(nèi)的功率計(jì)算部件19,求出從減法運(yùn)算部件18輸出的差信號(hào)的總功率,并將它作為搜索用評(píng)價(jià)值輸出到搜索部件20。
搜索部件20對(duì)使從失真計(jì)算部分15內(nèi)的功率計(jì)算部件19輸出的搜索用評(píng)價(jià)值加以最小化的驅(qū)動(dòng)音源代碼進(jìn)行搜索,并把使搜索用評(píng)價(jià)值最小化的驅(qū)動(dòng)音源代碼作為驅(qū)動(dòng)音源代碼21進(jìn)行輸出。另外,驅(qū)動(dòng)向量生成部件13將在輸入該驅(qū)動(dòng)音源代碼21時(shí)輸出的驅(qū)動(dòng)向量,作為驅(qū)動(dòng)音源22進(jìn)行輸出。
而且,在減法運(yùn)算部件18中相乘的增益,通過(guò)解偏微分方程式被唯一地確定,以使搜索用評(píng)價(jià)值達(dá)到最小化。為了減少運(yùn)算量,有各種關(guān)于實(shí)際的失真計(jì)算部分15的內(nèi)部結(jié)構(gòu)的改型見(jiàn)于報(bào)道。
另外,在日本專(zhuān)利申請(qǐng)?zhí)亻_(kāi)平7-271397號(hào)公報(bào)上,公開(kāi)了幾種減少失真計(jì)算部分的運(yùn)算量的方法。以下,就在日本專(zhuān)利申請(qǐng)?zhí)亻_(kāi)平7-271397號(hào)公報(bào)上所公開(kāi)的失真計(jì)算部分的方法進(jìn)行說(shuō)明。
設(shè)將驅(qū)動(dòng)向量通過(guò)合成濾波器14而得到的合成語(yǔ)音為Yi,輸入語(yǔ)音為R(相當(dāng)于圖9中的編碼對(duì)象信號(hào)12)時(shí),定義為兩個(gè)信號(hào)之間的波形失真的搜索用評(píng)價(jià)值,如式(1)所示。
E=|R-αYi|2(1)這與在圖9中說(shuō)明的搜索用評(píng)價(jià)值計(jì)算中,沒(méi)有導(dǎo)入聽(tīng)覺(jué)加權(quán)濾波器的場(chǎng)合相一致。α為在減法運(yùn)算部件18中所乘的增益,將式(1)對(duì)α進(jìn)行偏微分后所得到的式設(shè)為零,求出α,并代入到式(1)得到式(2)。
E=|R|2-(R,YI)2/|Yi|2(2)式(2)中的第一項(xiàng)是不依賴(lài)于驅(qū)動(dòng)向量的常數(shù),因此,使搜索用評(píng)價(jià)值E的最小化,相當(dāng)于使式(2)的第二項(xiàng)的最大化。因此,在很多場(chǎng)合把式(2)中的第二項(xiàng)原樣地直接作為搜索用評(píng)價(jià)值使用。
由于運(yùn)算該式(2)的第二項(xiàng)需要很多運(yùn)算量,所以在日本專(zhuān)利申請(qǐng)?zhí)亻_(kāi)平7-271397號(hào)公報(bào)中,進(jìn)行使用了簡(jiǎn)化的搜索用評(píng)價(jià)值的預(yù)選擇,只對(duì)預(yù)選擇的驅(qū)動(dòng)向量計(jì)算式(2)的第二項(xiàng)進(jìn)行計(jì)算來(lái)減少運(yùn)算量。作為在預(yù)選擇中使用的經(jīng)簡(jiǎn)化的搜索用評(píng)價(jià)值,有式(3)~(5)等已經(jīng)被采用。
E′=(R,Yi)2(3)E′=W(yi)(R,Yi)2(4)E′=W(C,i)(R,Yi)2(5)式中,Yi為驅(qū)動(dòng)向量,C為存儲(chǔ)在代碼本的驅(qū)動(dòng)向量組,據(jù)報(bào)道,把由它們所定義的加權(quán)系數(shù)W與式(3)相乘所得的值作為預(yù)選擇中的搜索用評(píng)價(jià)值,由此,與使用式(3)相比,使用式(4)或式(5)時(shí)的預(yù)選擇的精度會(huì)更高。
預(yù)選擇時(shí)的經(jīng)簡(jiǎn)化的搜索用評(píng)價(jià)值即式(3)、式(4)、式(5),與本選擇時(shí)的搜索用評(píng)價(jià)值即式(2)的第二項(xiàng)相比,只有基于驅(qū)動(dòng)向量組C或驅(qū)動(dòng)向量yi的加權(quán)系數(shù)的乘法運(yùn)算和用驅(qū)動(dòng)向量的合成語(yǔ)音Yi的功率相除的除法運(yùn)算部分不同。式(3)、式(4)、式(5)中的任何一項(xiàng),都與式(2)的第二項(xiàng)相近似,對(duì)于評(píng)價(jià)式(1)中表示的兩個(gè)信號(hào)之間的波形失真沒(méi)有什么區(qū)別。
但是,在上述的傳統(tǒng)語(yǔ)音編碼方法和裝置中,存在下述的問(wèn)題。
如果能用于驅(qū)動(dòng)音源代碼的信息量少時(shí),即驅(qū)動(dòng)向量的數(shù)變小時(shí),即使選擇了使式(1)至式(5)中所說(shuō)明的使波形失真最小化的驅(qū)動(dòng)音源代碼,在對(duì)包括該驅(qū)動(dòng)音源代碼的語(yǔ)音代碼進(jìn)行解碼而得到的解碼語(yǔ)音中,也還有引起音質(zhì)惡化的場(chǎng)合。
圖10是說(shuō)明引起音質(zhì)惡化的一個(gè)示例的說(shuō)明圖。圖10中,(a)是編碼對(duì)象信號(hào)、(c)是驅(qū)動(dòng)向量、(b)是使(c)中表示的驅(qū)動(dòng)向量通過(guò)合成濾波器后得到的合成語(yǔ)音。它們都表示編碼對(duì)象幀內(nèi)部的信號(hào)。在該例中,作為驅(qū)動(dòng)向量使用了把脈沖位置和極性用代數(shù)方式描述的代數(shù)音源。
圖10的場(chǎng)合,在幀的后半部分(a)和(b)類(lèi)似度較高,能夠比較良好地描述(a),但在幀的前半部分(b)的振幅為0,則完全不能描述(a)。在語(yǔ)音的上升部分等自適應(yīng)音源的增益沒(méi)有取較大值時(shí),在許多場(chǎng)合下,解碼語(yǔ)音中如圖10所示的幀的一部分編碼特性極端惡化的部分,聽(tīng)起來(lái)是局部的反常噪聲的情況很多。
也就是說(shuō),在選擇使所有幀的波形失真最小化的驅(qū)動(dòng)音源代碼的傳統(tǒng)方法中,存在如圖10所示,即使幀內(nèi)部存在一部分編碼特性極端惡化的部分也被選擇,從而使解碼語(yǔ)音的品質(zhì)惡化的問(wèn)題。
而且,即使使用日本專(zhuān)利申請(qǐng)?zhí)亻_(kāi)平7-271397號(hào)公報(bào)中所公開(kāi)的被簡(jiǎn)化的搜索用評(píng)價(jià)值,也不能消除此問(wèn)題。
本發(fā)明是為了解決以上所述的問(wèn)題而提出,并提供一種很少產(chǎn)生解碼語(yǔ)音局部反常噪聲的高質(zhì)量的語(yǔ)音編碼方法和裝置為目的。并且,本發(fā)明的目的還在于,將運(yùn)算量的增加抑制到最小限度,并提供一種高質(zhì)量的語(yǔ)音編碼方法和裝置。
發(fā)明內(nèi)容
為了達(dá)到上述目的,本發(fā)明的語(yǔ)音編碼方法是一種對(duì)把輸入語(yǔ)音稱(chēng)為幀的每個(gè)預(yù)定長(zhǎng)度區(qū)域進(jìn)行編碼的語(yǔ)音編碼方法,其中包括生成多個(gè)驅(qū)動(dòng)向量的驅(qū)動(dòng)向量生成步驟;對(duì)每個(gè)驅(qū)動(dòng)向量,在從輸入語(yǔ)音求出的編碼對(duì)象信號(hào)和從驅(qū)動(dòng)向量求出的合成向量之間定義的有關(guān)波形的失真作為第一失真進(jìn)行計(jì)算的第一失真計(jì)算步驟;對(duì)每個(gè)驅(qū)動(dòng)向量,計(jì)算出在所述編碼對(duì)象信號(hào)和從驅(qū)動(dòng)向量求出的合成向量之間定義的第一失真不同的第二失真的第二失真計(jì)算步驟;對(duì)每個(gè)驅(qū)動(dòng)向量,利用所述第一失真和第二失真計(jì)算出規(guī)定的搜索用評(píng)價(jià)值的評(píng)價(jià)值計(jì)算步驟;以及選擇使搜索用評(píng)價(jià)值最小化的驅(qū)動(dòng)向量,并輸出與被選擇的驅(qū)動(dòng)向量預(yù)先對(duì)應(yīng)聯(lián)系上的代碼的搜索步驟。
并且,所述語(yǔ)音編碼方法包括用以選擇所述第一失真計(jì)算步驟中算出的第一失真小的兩個(gè)或兩個(gè)以上的驅(qū)動(dòng)向量的預(yù)選擇步驟,其特征在于并且,把前述第二失真計(jì)算步驟、評(píng)價(jià)值計(jì)算步驟、搜索步驟的對(duì)象限定于預(yù)選擇步驟所選擇的驅(qū)動(dòng)向量。
并且,所述語(yǔ)音編碼方法包括多個(gè)生成互不相同的驅(qū)動(dòng)向量的驅(qū)動(dòng)向量生成步驟,同時(shí)還包括對(duì)每個(gè)驅(qū)動(dòng)向量生成步驟,選擇所述第一失真計(jì)算步驟中算出的第一失真小的一個(gè)或一個(gè)以上的驅(qū)動(dòng)向量的預(yù)選擇步驟;其特征在于并且,把所述第二失真計(jì)算步驟、評(píng)價(jià)值計(jì)算步驟、搜索步驟的對(duì)象,限定在預(yù)選擇步驟所選擇的驅(qū)動(dòng)向量上。
并且,所述語(yǔ)音編碼方法的特征在于所述第一失真計(jì)算步驟在幀內(nèi)相加輸入語(yǔ)音求出的編碼對(duì)象信號(hào)通過(guò)聽(tīng)覺(jué)加權(quán)濾波器后的信號(hào)和驅(qū)動(dòng)向量求出的合成向量通過(guò)聽(tīng)覺(jué)加權(quán)濾波器后的信號(hào)的每個(gè)抽樣的誤差功率,將所得到的結(jié)果作為第一失真。
并且,所述語(yǔ)音編碼方法的特征在于,所述第二失真計(jì)算步驟把關(guān)于幀內(nèi)的時(shí)間方向的振幅或功率的偏移的失真作為第二失真。
并且,所述語(yǔ)音編碼方法的特征在于,所述第二失真計(jì)算步驟求出幀內(nèi)的編碼對(duì)象信號(hào)的振幅或功率的重心位置,同時(shí)求出幀內(nèi)的合成向量的振幅或功率的重心位置,并把求出的兩個(gè)重心位置之間的差作為第二失真。
并且,所述語(yǔ)音編碼方法的特征在于,所述評(píng)價(jià)值計(jì)算步驟通過(guò)按照第二失真對(duì)第一失真進(jìn)行修正來(lái)計(jì)算搜索用評(píng)價(jià)值。
并且,所述語(yǔ)音編碼方法的特征在于,所述評(píng)價(jià)值計(jì)算步驟通過(guò)第一失真和第二失真的加權(quán)和來(lái)計(jì)算搜索用評(píng)價(jià)值。
并且,所述語(yǔ)音編碼方法的特征在于,所述評(píng)價(jià)值計(jì)算步驟依照從輸入語(yǔ)音算出的規(guī)定參數(shù),變更計(jì)算搜索用評(píng)價(jià)值的處理。
并且,所述語(yǔ)音編碼方法的特征在于,包括貢獻(xiàn)度計(jì)算步驟,該貢獻(xiàn)度計(jì)算步驟求出從驅(qū)動(dòng)向量以外的音源向量求出的合成向量的能量與輸入語(yǔ)音的能量的比率,并把該比率作為其他音源的貢獻(xiàn)度;而且,以算出的其他音源貢獻(xiàn)度作為所述評(píng)價(jià)值計(jì)算步驟中的規(guī)定參數(shù)。
并且,所述語(yǔ)音編碼方法的特征在于,所述評(píng)價(jià)值計(jì)算步驟根據(jù)驅(qū)動(dòng)向量從哪一個(gè)驅(qū)動(dòng)向量生成步驟輸出來(lái)變更計(jì)算搜索用評(píng)價(jià)值的處理。
并且,所述語(yǔ)音編碼方法的特征在于,所述評(píng)價(jià)值計(jì)算步驟包括將第一失真原樣地作為搜索用評(píng)價(jià)值的處理,作為計(jì)算搜索用評(píng)價(jià)值的處理之一。
并且,本發(fā)明的語(yǔ)音編碼裝置是一種對(duì)把輸入語(yǔ)音稱(chēng)為幀的每個(gè)規(guī)定長(zhǎng)度區(qū)間進(jìn)行編碼的語(yǔ)音編碼裝置,其特征在于,包括多個(gè)生成驅(qū)動(dòng)向量的驅(qū)動(dòng)向量生成部件;對(duì)每個(gè)驅(qū)動(dòng)向量,將關(guān)于從輸入語(yǔ)音求出的編碼對(duì)象信號(hào)和從驅(qū)動(dòng)向量求出的合成向量之間定義的波形的失真作為第一失真進(jìn)行計(jì)算的第一失真計(jì)算部件;對(duì)每個(gè)驅(qū)動(dòng)向量,計(jì)算跟從輸入語(yǔ)音求出的編碼對(duì)象信號(hào)和從驅(qū)動(dòng)向量求出的合成向量之間定義的第一失真不同的第二失真的第二失真計(jì)算部件;對(duì)每個(gè)驅(qū)動(dòng)向量,利用所述第一失真和第二失真計(jì)算出規(guī)定的搜索用評(píng)價(jià)值的評(píng)價(jià)值計(jì)算部件;選擇使搜索用評(píng)價(jià)值最小化的驅(qū)動(dòng)向量,并輸出與被選擇的驅(qū)動(dòng)向量預(yù)先對(duì)應(yīng)聯(lián)系上的代碼的搜索部件。
并且,所述語(yǔ)音編碼裝置的特征在于,所述第一失真計(jì)算部件在幀內(nèi)對(duì)讓輸入語(yǔ)音求出的編碼對(duì)象信號(hào)通過(guò)聽(tīng)覺(jué)加權(quán)濾波器后的信號(hào)和讓從驅(qū)動(dòng)向量求出的合成向量通過(guò)聽(tīng)覺(jué)加權(quán)濾波器后的信號(hào)的每個(gè)抽樣的誤差功率進(jìn)行相加運(yùn)算,將其結(jié)果作為第一失真。
并且,所述語(yǔ)音編碼裝置的特征在于,所述第二失真計(jì)算部件把關(guān)于幀內(nèi)的時(shí)間方向的振幅或功率的偏移的失真作為第二失真。
并且,所述語(yǔ)音編碼裝置的特征在于,所述評(píng)價(jià)值計(jì)算部件通過(guò)依照第二失真對(duì)第一失真進(jìn)行修正來(lái)計(jì)算搜索用評(píng)價(jià)值。
并且,所述語(yǔ)音編碼裝置的特征在于,所述評(píng)價(jià)值計(jì)算部件依照從輸入語(yǔ)音算出的規(guī)定參數(shù),變更對(duì)搜索用評(píng)價(jià)值的計(jì)算處理。
圖1是表示采用本發(fā)明的語(yǔ)音編碼方法的語(yǔ)音編碼裝置的第一實(shí)施例的驅(qū)動(dòng)音源編碼部分5的詳細(xì)結(jié)構(gòu)的框圖。
圖2是表示本發(fā)明第一實(shí)施例的搜索用評(píng)價(jià)值計(jì)算部分29的結(jié)構(gòu)的結(jié)構(gòu)圖。
圖3是說(shuō)明本發(fā)明第一實(shí)施例的第二失真計(jì)算部分24的動(dòng)作的說(shuō)明圖。
圖4是表示本發(fā)明第二實(shí)施例的搜索用評(píng)價(jià)值計(jì)算部分29的結(jié)構(gòu)的結(jié)構(gòu)圖。
圖5是表示采用本發(fā)明的語(yǔ)音編碼方法的語(yǔ)音編碼裝置的第三實(shí)施例的驅(qū)動(dòng)音源編碼部分5的詳細(xì)結(jié)構(gòu)的框圖。
圖6是表示采用本發(fā)明的語(yǔ)音編碼方法的語(yǔ)音編碼裝置的第四實(shí)施例的驅(qū)動(dòng)音源編碼部分5的詳細(xì)結(jié)構(gòu)的框圖。
圖7是表示本發(fā)明第四實(shí)施例的搜索用評(píng)價(jià)值計(jì)算部分29的結(jié)構(gòu)的結(jié)構(gòu)圖。
圖8是表示在文獻(xiàn)“使用共軛結(jié)構(gòu)代數(shù)碼驅(qū)動(dòng)的線(xiàn)性預(yù)測(cè)的8kbit/s語(yǔ)音編碼(CS-ACELP)”(ITU-T Recommendation G.729,“CODING OF SPEECH AT 8kbit/s USING CONJUGATE-STURUCTURE ALGEBRAIC-CODE-EXCITED LINEAR-PREDICTION(CS-ACELP)”),1996年3月)中所公開(kāi)的CELP系語(yǔ)音編碼裝置的整體結(jié)構(gòu)的框圖。
圖9是表示在上述文獻(xiàn)1等中公開(kāi)的CELP系語(yǔ)音編碼裝置的驅(qū)動(dòng)音源編碼部分5的詳細(xì)結(jié)構(gòu)的框圖。
圖10是關(guān)于引起音質(zhì)惡化之一例的說(shuō)明圖。
本發(fā)明的最佳實(shí)施例以下,參照附圖,就本發(fā)明的各實(shí)施例進(jìn)行說(shuō)明。
第一實(shí)施例圖1是表示采用本發(fā)明的語(yǔ)音編碼方法的語(yǔ)音編碼裝置的第一實(shí)施例的驅(qū)動(dòng)音源編碼部分5的詳細(xì)結(jié)構(gòu)的框圖。
本第一實(shí)施例的語(yǔ)音編碼裝置的整個(gè)結(jié)構(gòu)與圖8中所示的結(jié)構(gòu)相同,只是在驅(qū)動(dòng)音源編碼部分5上附加了輸入語(yǔ)音1的輸入端。
在圖1中,與圖9中所示的傳統(tǒng)例的驅(qū)動(dòng)音源編碼部分5結(jié)構(gòu)相同的部分均標(biāo)上相同符號(hào)而省略其說(shuō)明。新的符號(hào)中,23是由聽(tīng)覺(jué)加權(quán)濾波器16和17、減法運(yùn)算部件18以及功率計(jì)算部件19構(gòu)成的第一失真計(jì)算部分;24是由重心計(jì)算部件25和26及減法運(yùn)算部件27構(gòu)成的第二失真計(jì)算部分,28是自適應(yīng)音源貢獻(xiàn)度計(jì)算部件,29是搜索用評(píng)價(jià)值計(jì)算部分。再有,自適應(yīng)向量生成部件9、合成濾波器10、減法運(yùn)算部件11,包括在圖8所示的自適應(yīng)音源編碼部件4內(nèi),但為了更容易理解內(nèi)容,在圖上一并示出。
以下,就本第一實(shí)施例的驅(qū)動(dòng)音源編碼部分5的動(dòng)作進(jìn)行說(shuō)明。
首先,自適應(yīng)音源編碼部件4內(nèi)的自適應(yīng)向量生成部件9,把對(duì)應(yīng)于前述自適應(yīng)音源代碼的時(shí)間序列向量,作為自適應(yīng)音源輸出到合成濾波器10。
自適應(yīng)音源編碼部件4內(nèi)的合成濾波器10,把從線(xiàn)性預(yù)測(cè)系數(shù)編碼部件3輸出的經(jīng)量化的線(xiàn)性預(yù)測(cè)系數(shù)作為濾波器系數(shù)設(shè)定,并對(duì)從自適應(yīng)向量生成部件9輸出的自適應(yīng)音源進(jìn)行合成濾波,把得到的合成語(yǔ)音輸出到減法運(yùn)算部件11和自適應(yīng)音源貢獻(xiàn)度計(jì)算部件28。
自適應(yīng)音源編碼部件4內(nèi)的減法運(yùn)算部件11,求出從合成濾波器10輸出的合成語(yǔ)音和輸入語(yǔ)音1之間的差信號(hào),并把得到的差信號(hào)作為驅(qū)動(dòng)音源編碼部分5的編碼對(duì)象信號(hào)12,輸出到第一失真計(jì)算部分23和第二失真計(jì)算部分24。
自適應(yīng)音源貢獻(xiàn)度計(jì)算部件28,利用輸入語(yǔ)音1和從合成濾波器10輸出的合成語(yǔ)音,計(jì)算在對(duì)輸入語(yǔ)音1進(jìn)行編碼中自適應(yīng)音源貢獻(xiàn)的大小,并把求出的自適應(yīng)音源貢獻(xiàn)度輸出到搜索用評(píng)價(jià)值計(jì)算部分29。具體的自適應(yīng)音源貢獻(xiàn)度計(jì)算如以下所述進(jìn)行。
首先,在從合成濾波器10輸出的合成語(yǔ)音上乘上適當(dāng)?shù)脑鲆鏁r(shí),設(shè)定增益以對(duì)輸入語(yǔ)音1的波形失真達(dá)到最小化,并求出在從合成濾波器10輸出的合成語(yǔ)音上乘上該增益后的信號(hào)的功率Pa。求出輸入語(yǔ)音1的功率P,并計(jì)算Pa對(duì)P的比率即Pa/P作為自適應(yīng)音源貢獻(xiàn)度。而且,可根據(jù)偏微分方程式確定適當(dāng)?shù)脑鲆?,還可以通過(guò)與式(2)相同地把增益從計(jì)算式中消除的形式直接求出波形失真。如設(shè)輸入語(yǔ)音1為R,從合成濾波器10輸出的合成語(yǔ)音為X,則自適應(yīng)音源貢獻(xiàn)度G可通過(guò)式(6)計(jì)算。
G=(R,X)2/|R|2|X|2(6)另一方面,搜索部件20順序地產(chǎn)生用二進(jìn)制值表示的各驅(qū)動(dòng)音源代碼,順序地輸出到驅(qū)動(dòng)向量生成部件13。
驅(qū)動(dòng)向量生成部件13對(duì)應(yīng)于從搜索部件20輸出的驅(qū)動(dòng)音源代碼,從存儲(chǔ)在內(nèi)部的驅(qū)動(dòng)音源代碼本讀出時(shí)間序列向量,并作為驅(qū)動(dòng)向量輸出到合成濾波器14。而且,作為驅(qū)動(dòng)音源代碼本,有存入了預(yù)先準(zhǔn)備的噪聲向量的驅(qū)動(dòng)音源代碼本,通過(guò)用代數(shù)方式使脈沖位置和極性相結(jié)合來(lái)描述的代數(shù)音源代碼本等。另外,還有將兩個(gè)以上的代碼本相加的形式的驅(qū)動(dòng)音源代碼本,或者包括使用了自適應(yīng)音源的重復(fù)周期的聲調(diào)周期化的驅(qū)動(dòng)音源代碼本。
合成濾波器14,將從線(xiàn)性預(yù)測(cè)系數(shù)編碼部件3輸出的經(jīng)量化的線(xiàn)性預(yù)測(cè)系數(shù)設(shè)定為濾波器系數(shù),并對(duì)從驅(qū)動(dòng)向量生成部件13輸出的驅(qū)動(dòng)向量進(jìn)行合成濾波,把得到的合成語(yǔ)音輸出到第一失真計(jì)算部分23和第二失真計(jì)算部分24。
第一失真計(jì)算部分23內(nèi)的聽(tīng)覺(jué)加權(quán)濾波器16,基于從線(xiàn)性預(yù)測(cè)系數(shù)編碼部件3輸出的量化的線(xiàn)性預(yù)測(cè)系數(shù),算出聽(tīng)覺(jué)加權(quán)濾波器系數(shù),并把該聽(tīng)覺(jué)加權(quán)濾波器系數(shù)設(shè)定為濾波器系數(shù),對(duì)從自適應(yīng)音源編碼部件4內(nèi)的減法運(yùn)算部件11輸出的編碼對(duì)象信號(hào)12進(jìn)行濾波,把得到的信號(hào)輸出到減法運(yùn)算部件18。
第一失真計(jì)算部分23內(nèi)的聽(tīng)覺(jué)加權(quán)濾波器17,設(shè)定與聽(tīng)覺(jué)加權(quán)濾波器16相同的濾波器系數(shù),對(duì)從合成濾波器14輸出的合成語(yǔ)音進(jìn)行濾波,把得到的信號(hào)輸出到減法運(yùn)算部件18。
第一失真計(jì)算部分23內(nèi)的減法運(yùn)算部件18,求出在從聽(tīng)覺(jué)加權(quán)濾波器16輸出的信號(hào)和從聽(tīng)覺(jué)加權(quán)濾波器17輸出的信號(hào)乘以適當(dāng)?shù)脑鲆娑玫降男盘?hào)之間的差信號(hào),并把該差信號(hào)輸出到功率計(jì)算部件19。
第一失真計(jì)算部分23內(nèi)的功率計(jì)算部件19,求出從減法運(yùn)算部件18輸出的差信號(hào)的總功率,并將它作為第一失真輸出到搜索用評(píng)價(jià)值搜索部件29。而且,在減法運(yùn)算部件18中相乘的增益,通過(guò)解偏微分方程式被唯一地確定,使得第一失真成為最小。而對(duì)于實(shí)際的失真計(jì)算部分23的內(nèi)部結(jié)構(gòu)來(lái)說(shuō),為了減少運(yùn)算量,可使用傳統(tǒng)的修改方法。
在第二失真計(jì)算部分24內(nèi)的重心計(jì)算部件25中,求出從減法運(yùn)算部件11輸出的編碼對(duì)象信號(hào)12的幀內(nèi)的振幅重心位置,并將求出的重心位置輸出到減法運(yùn)算部件27。振幅的重心位置,可通過(guò)計(jì)算設(shè)為對(duì)象的信號(hào)的振幅(抽樣值的絕對(duì)值)的幀內(nèi)總值,并再次從前端位置計(jì)算振幅的總值,然后算出到達(dá)幀內(nèi)總值一半的位置來(lái)求得。
在第二失真計(jì)算部分24內(nèi)的重心計(jì)算部件26中,求出從合成濾波器14輸出的合成語(yǔ)音幀內(nèi)振幅的重心位置,并將求出的重心位置輸出到減法運(yùn)算部件27。重心位置的計(jì)算與在重心計(jì)算部件25中所進(jìn)行的計(jì)算相同。
第二失真計(jì)算部分24內(nèi)的減法運(yùn)算部件27,求出從重心計(jì)算部件25輸出的重心位置與從重心計(jì)算部件26輸出的重心位置之間的差,并將求出的重心位置的差作為第二失真輸出到搜索用評(píng)價(jià)值計(jì)算部分29。
搜索用評(píng)價(jià)值計(jì)算部分29利用從自適應(yīng)音源貢獻(xiàn)度計(jì)算部件28輸出的自適應(yīng)音源貢獻(xiàn)度和從第一失真計(jì)算部分23輸出的第一失真及從第二失真計(jì)算部分24輸出的第二失真,求出用于最終搜索的搜索用評(píng)價(jià)值,并把該搜索用評(píng)價(jià)值輸出到搜索部件20。
搜索部件20對(duì)使從搜索用評(píng)價(jià)值搜索部件29輸出的搜索用評(píng)價(jià)值最小的驅(qū)動(dòng)音源代碼進(jìn)行搜索,并把使搜索用評(píng)價(jià)值最小的驅(qū)動(dòng)音源代碼作為驅(qū)動(dòng)音源代碼21進(jìn)行輸出。另外,驅(qū)動(dòng)向量生成部件13將在輸入該驅(qū)動(dòng)音源代碼21時(shí)輸出的驅(qū)動(dòng)向量,作為驅(qū)動(dòng)音源22進(jìn)行輸出。
圖2是表示上述搜索用評(píng)價(jià)值計(jì)算部分29的結(jié)構(gòu)的結(jié)構(gòu)圖。
圖2中,30和32是轉(zhuǎn)換部件,31是乘法運(yùn)算部件。
乘法運(yùn)算部件31在從第一失真計(jì)算部分23輸出的第一失真上乘上預(yù)先準(zhǔn)備的常數(shù)β,輸出乘法運(yùn)算結(jié)果。常數(shù)β以1.2~2.0程度的值為最適宜。
轉(zhuǎn)換部件32在從第二失真計(jì)算部分24輸出的第二失真超過(guò)規(guī)定的閾值的場(chǎng)合,把轉(zhuǎn)換開(kāi)關(guān)連接到從乘法運(yùn)算部件31輸出的乘法運(yùn)算結(jié)果,在從第二失真計(jì)算部分24輸出的第二失真不超過(guò)規(guī)定的閾值的場(chǎng)合,把轉(zhuǎn)換開(kāi)關(guān)連接到從第一失真計(jì)算部分23輸出的第一失真。規(guī)定的閾值以幀長(zhǎng)度的10分之1左右為適宜。由此,轉(zhuǎn)換部件32在第二失真大時(shí)輸出在第一失真上乘上β的運(yùn)算結(jié)果,在第二失真小時(shí)直接輸出第一失真。
轉(zhuǎn)換部件30在從自適應(yīng)音源貢獻(xiàn)度計(jì)算部件28輸出的自適應(yīng)音源貢獻(xiàn)度超過(guò)規(guī)定的閾值的場(chǎng)合,把轉(zhuǎn)換開(kāi)關(guān)連接到從第一失真計(jì)算部分23輸出的第一失真,在從自適應(yīng)音源貢獻(xiàn)度計(jì)算部件28輸出的自適應(yīng)音源貢獻(xiàn)度不超過(guò)規(guī)定的閾值的場(chǎng)合,連接到轉(zhuǎn)換部件32的輸出結(jié)果。規(guī)定的閾值,以0.3~0.4左右為適宜。然后,該轉(zhuǎn)換部件30的輸出作為搜索用評(píng)價(jià)值,由搜索用評(píng)價(jià)值計(jì)算部分29輸出。
通過(guò)以上結(jié)構(gòu),通常第一失真作為搜索用評(píng)價(jià)值進(jìn)行輸出,只有在第二失真大且自適應(yīng)音源貢獻(xiàn)度小的場(chǎng)合,在第一失真上乘上常數(shù)β后的值作為搜索用評(píng)價(jià)值進(jìn)行輸出。也就是說(shuō),只有在第二失真大并且自適應(yīng)音源貢獻(xiàn)度小的場(chǎng)合,搜索用評(píng)價(jià)值修正成較大的值,并在后面的搜索部件20中抑制選擇相應(yīng)的驅(qū)動(dòng)音源代碼。
圖3是第二失真計(jì)算部分24動(dòng)作的說(shuō)明圖。再有,編其碼對(duì)象信號(hào)與圖10的相同。
重心計(jì)算部件25求出如圖3(a)所示的編碼對(duì)象信號(hào)的重心位置。重心計(jì)算部件26求出如圖3(b)所示的合成濾波后的驅(qū)動(dòng)向量的重心位置。然后,減法運(yùn)算部件27計(jì)算出如圖3(b)所示的該兩個(gè)重心位置的差。
如該圖3所示,與編碼對(duì)象信號(hào)相比,合成濾波后的驅(qū)動(dòng)向量的振幅在幀內(nèi)部極端地偏離時(shí),作為重心位置差算出的第二失真值很大。
圖3(d)是與圖3(b)的場(chǎng)合不同的驅(qū)動(dòng)向量通過(guò)合成濾波器時(shí)的合成語(yǔ)音。與圖3(b)相比,以幀的后半部分為中心波形失真稍微大一些,但重心位置的差較小。在選擇生成如該圖3(d)的驅(qū)動(dòng)向量的場(chǎng)合,幀內(nèi)部沒(méi)有零振幅的部分,而且解碼語(yǔ)音的惡化也小,但是,在傳統(tǒng)的方法中,由于只用波形失真進(jìn)行選擇,因此,選擇了生成如圖3(b)的驅(qū)動(dòng)向量。與此相反地,在本實(shí)施例中,由于能夠把重心位置的差作為第二失真反映在搜索用評(píng)價(jià)值上,因此,能夠選擇生成波形失真沒(méi)有那么大而且重心位置差也小的如圖3(d)所示的驅(qū)動(dòng)向量。
而且,在上述的實(shí)施例中,根據(jù)編碼對(duì)象信號(hào)12和從合成濾波器14輸出的合成語(yǔ)音的振幅重心位置之間的差計(jì)算出第二失真,但是第二失真的計(jì)算不僅僅局限于此,也可以根據(jù)功率重心的位置差進(jìn)行計(jì)算,或者從聽(tīng)覺(jué)加權(quán)濾波器16輸出的信號(hào)和聽(tīng)覺(jué)加權(quán)濾波器17輸出的信號(hào)來(lái)評(píng)價(jià)第二失真。
另外,也可以在時(shí)間方向上把幀分割成數(shù)個(gè)子幀,對(duì)編碼對(duì)象信號(hào)12和從合成濾波器14輸出的合成語(yǔ)音,分別計(jì)算出各分割的自幀內(nèi)的平均振幅或平均功率,然后,求出每個(gè)編碼對(duì)象信號(hào)12的分割的子幀的算出結(jié)果和從合成濾波器14輸出的合成語(yǔ)音的每個(gè)分割的子幀的算出結(jié)果的平方距離為第二失真。并且,也可算出這幾種類(lèi)型的第二失真后,在搜索用評(píng)價(jià)值計(jì)算部件29中使用多個(gè)第二失真。
另外,也可以采用這樣的結(jié)構(gòu)在搜索用評(píng)價(jià)值計(jì)算部分29中,不設(shè)轉(zhuǎn)換部件32,把乘法運(yùn)算部件31的輸出改接到轉(zhuǎn)換部件30上,而將在乘法運(yùn)算部件31中使用的β按照第二失真進(jìn)行變更。
對(duì)于第一失真計(jì)算部分23來(lái)說(shuō),也不僅僅局限于該結(jié)構(gòu),可以采用不設(shè)聽(tīng)覺(jué)加權(quán)濾波器的結(jié)構(gòu),或者對(duì)減法運(yùn)算部件18的輸出一并進(jìn)行聽(tīng)覺(jué)加權(quán)的結(jié)構(gòu),或者采用用以減少上述運(yùn)算量的各種變形。
對(duì)于自適應(yīng)音源貢獻(xiàn)度計(jì)算部件28來(lái)說(shuō),也可以對(duì)兩個(gè)輸入信號(hào)進(jìn)行聽(tīng)覺(jué)加權(quán)濾波后再進(jìn)行貢獻(xiàn)度計(jì)算。
在本第一實(shí)施例中,將從輸入語(yǔ)音1減去自適應(yīng)向量通過(guò)了合成濾波器10后的合成語(yǔ)音的結(jié)果作為編碼對(duì)象信號(hào),但是,也可以把輸入語(yǔ)音1直接作為編碼對(duì)象信號(hào)使用,并代之以將驅(qū)動(dòng)向量通過(guò)了合成濾波器14后的合成語(yǔ)音跟自適應(yīng)向量通過(guò)了合成濾波器10后的合成語(yǔ)音正交的結(jié)構(gòu)。
另外,在本第一實(shí)施例中,對(duì)每一幀進(jìn)行驅(qū)動(dòng)向量搜索,但是,當(dāng)然也可以與傳統(tǒng)技術(shù)相同地,把幀分割成多個(gè),而對(duì)每個(gè)子幀進(jìn)行搜索。
如上所述,根據(jù)本第一實(shí)施例,將關(guān)于編碼對(duì)象信號(hào)和從驅(qū)動(dòng)向量求出的合成向量之間定義的波形的失真被作為第一失真計(jì)算,并且對(duì)和定義在編碼對(duì)象信號(hào)和從驅(qū)動(dòng)向量求出的合成向量之間的第一失真不同的第二失真進(jìn)行計(jì)算,并對(duì)使利用該第一失真和第二失真計(jì)算出的搜索用評(píng)價(jià)值最小的驅(qū)動(dòng)向量進(jìn)行選擇;因此,能夠通過(guò)第二失真檢測(cè)到只用第一失真是無(wú)法知道的引起解碼語(yǔ)音惡化的可能性高的驅(qū)動(dòng)向量,并具有能夠?qū)崿F(xiàn)很少產(chǎn)生解碼語(yǔ)音的局部反常噪聲的高質(zhì)量的語(yǔ)音編碼的效果。
另外,根據(jù)本第一實(shí)施例,將從輸入語(yǔ)音求出的編碼對(duì)象信號(hào)通過(guò)了聽(tīng)覺(jué)加權(quán)濾波器后的信號(hào)和使從驅(qū)動(dòng)向量求出的合成向量通過(guò)了聽(tīng)覺(jué)加權(quán)濾波器后的信號(hào)的每個(gè)抽樣的誤差功率在幀內(nèi)部進(jìn)行相加運(yùn)算,將其結(jié)果作為第一失真,因此,可對(duì)主觀上解碼語(yǔ)音的失真感小的驅(qū)動(dòng)向量進(jìn)行選擇,具有能夠?qū)崿F(xiàn)高質(zhì)量的語(yǔ)音編碼的效果。
另外,根據(jù)本第一實(shí)施例,由于把關(guān)于幀內(nèi)時(shí)間方向的振幅或功率偏移的失真作為第二失真,因此,通過(guò)第二失真能夠檢測(cè)到局部地產(chǎn)生太小振幅等引起解碼語(yǔ)音的主觀上惡化的可能性高的驅(qū)動(dòng)向量,并具有能夠?qū)崿F(xiàn)很少產(chǎn)生解碼語(yǔ)音的局部反常噪聲的高質(zhì)量的語(yǔ)音編碼的效果。
另外,根據(jù)本第一實(shí)施例,由于求出幀內(nèi)部的編碼對(duì)象信號(hào)的振幅或功率的重心位置,求出幀內(nèi)部的合成向量的振幅或功率的重心位置,并把求出的兩個(gè)重心位置的差作為第二失真,因此,不管其處理是否簡(jiǎn)單,都可對(duì)幀內(nèi)部的振幅或功率的偏移進(jìn)行計(jì)算,并通過(guò)第二失真能夠檢測(cè)到局部地產(chǎn)生太小振幅等引起解碼語(yǔ)音主觀上的惡化的可能性高的驅(qū)動(dòng)向量,并具有能夠?qū)崿F(xiàn)很少產(chǎn)生解碼語(yǔ)音的局部反常噪聲的高質(zhì)量的語(yǔ)音編碼的效果。
另外,根據(jù)本第一實(shí)施例,通過(guò)依照第二失真對(duì)第一失真進(jìn)行修正,計(jì)算出搜索用評(píng)價(jià)值,因此,能夠選擇使基本上是波形失真的第一失真變小的、即使對(duì)于與第一失真不同的第二失真也很少出現(xiàn)問(wèn)題的驅(qū)動(dòng)向量,具有能夠?qū)崿F(xiàn)高質(zhì)量語(yǔ)音編碼的效果。
另外,根據(jù)本第一實(shí)施例,依照從輸入語(yǔ)音算出的自適應(yīng)音源貢獻(xiàn)度等規(guī)定參數(shù),計(jì)算出搜索用評(píng)價(jià)值,因此,通過(guò)按照語(yǔ)音的狀態(tài)或者編碼特性等只使用第一失真或者根據(jù)第二失真進(jìn)行修正,能夠選擇很難引起解碼語(yǔ)音的品質(zhì)惡化的、適合于該幀的驅(qū)動(dòng)向量,具有能夠?qū)崿F(xiàn)高質(zhì)量的語(yǔ)音編碼的效果。
另外,根據(jù)本第一實(shí)施例,計(jì)算出從自適應(yīng)音源(驅(qū)動(dòng)向量以外的音源向量)求出的合成向量的能量與輸入語(yǔ)音的能量的比率,并把該比率作為自適應(yīng)音源貢獻(xiàn)度(其他音源貢獻(xiàn)度),用于搜索用評(píng)價(jià)值的計(jì)算,因此,能夠求出適合于每個(gè)幀的搜索用評(píng)價(jià)值,只在解碼語(yǔ)音中的驅(qū)動(dòng)向量貢獻(xiàn)度大的幀內(nèi)才使用第二失真等,能夠選擇很難引起解碼語(yǔ)音品質(zhì)惡化的、適合于該幀的驅(qū)動(dòng)向量,具有能夠?qū)崿F(xiàn)高質(zhì)量的語(yǔ)音編碼的效果。
另外,根據(jù)本第一實(shí)施例,作為計(jì)算搜索用評(píng)價(jià)值處理之一,包含了把第一失真原樣地直接當(dāng)作搜索用評(píng)價(jià)值的處理,因此,在解碼語(yǔ)音中的驅(qū)動(dòng)向量的貢獻(xiàn)度小、即使驅(qū)動(dòng)向量的振幅存在偏移也不致引起解碼語(yǔ)音惡化等場(chǎng)合中,能夠選擇使波形失真即第一失真最小的驅(qū)動(dòng)向量,具有能夠防止不必要地利用第二失真反而導(dǎo)致音質(zhì)惡化的效果。
第二實(shí)施例圖4是表示本發(fā)明第二實(shí)施例的搜索用評(píng)價(jià)值計(jì)算部分29的結(jié)構(gòu)的結(jié)構(gòu)圖。
圖4中,30是轉(zhuǎn)換部件、33和34是乘法運(yùn)算部件、37是加法運(yùn)算部件。
乘法運(yùn)算部件33在從第一失真計(jì)算部分23輸出的第一失真上乘預(yù)先準(zhǔn)備的常數(shù)β1,并把該乘法運(yùn)算結(jié)果輸出到加法運(yùn)算部件37。由于常數(shù)β1固定在1.0也沒(méi)關(guān)系,所以乘法運(yùn)算部件33本身可以省略。
另外,乘法運(yùn)算部件34在從第二失真計(jì)算部分24輸出的第二失真上乘預(yù)先準(zhǔn)備的常數(shù)β2,并把該乘法運(yùn)算結(jié)果輸出到加法運(yùn)算部件37。常數(shù)β2設(shè)定得使乘法運(yùn)算部件34的平均輸出小于乘法運(yùn)算部件33的平均輸出。
進(jìn)而,加法運(yùn)算部件37對(duì)乘法運(yùn)算部件33的輸出和乘法運(yùn)算部件34的輸出進(jìn)行相加,并把相加結(jié)果輸出到轉(zhuǎn)換部件30。
轉(zhuǎn)換部件30在從自適應(yīng)音源貢獻(xiàn)度計(jì)算部件28輸出的自適應(yīng)音源貢獻(xiàn)度超過(guò)規(guī)定的閾值的場(chǎng)合,把轉(zhuǎn)換開(kāi)關(guān)連接到從第一失真計(jì)算部分23輸出的第一失真;在從自適應(yīng)音源貢獻(xiàn)度計(jì)算部件28輸出的自適應(yīng)音源貢獻(xiàn)度不超過(guò)規(guī)定閾值的場(chǎng)合,連接到轉(zhuǎn)換部件37的輸出結(jié)果。作為規(guī)定的閾值,以0.3~0.4左右為適宜。然后,該轉(zhuǎn)換部件30的輸出作為搜索用評(píng)價(jià)值,從搜索用評(píng)價(jià)值計(jì)算部分29輸出。
通過(guò)以上結(jié)構(gòu),通常第一失真作為搜索用評(píng)價(jià)值進(jìn)行輸出,只有在自適應(yīng)音源貢獻(xiàn)度小的場(chǎng)合,第二失真被包含于搜索用評(píng)價(jià)值并加以輸出。另外,通過(guò)預(yù)先設(shè)定β1和β2,使乘法運(yùn)算部件34的平均輸出小于乘法運(yùn)算部件33的平均輸出,結(jié)果主要用第一失真并且也用第二失真進(jìn)行修正。因此,只有在第二失真較大且自適應(yīng)音源貢獻(xiàn)度小的場(chǎng)合,搜索用評(píng)價(jià)值才被修正為大值,并在后面的搜索部件20中相應(yīng)的驅(qū)動(dòng)音源代碼的選擇被抑制。
如上所述,根據(jù)本第二實(shí)施例,通過(guò)第一失真和第二失真的加權(quán)和計(jì)算出搜索用評(píng)價(jià)值,因此,能夠選擇使基本上是波形失真的第一失真變小的、即使與第一失真不同的第二失真也很少出現(xiàn)問(wèn)題的驅(qū)動(dòng)向量,并具有能夠?qū)崿F(xiàn)高質(zhì)量的語(yǔ)音編碼的效果。
并且,根據(jù)本第二實(shí)施例,計(jì)算出從驅(qū)動(dòng)向量以外的音源向量求出的合成向量的能量與輸入語(yǔ)音的能量的比率,并把該比率作為評(píng)價(jià)值計(jì)算步驟的規(guī)定參數(shù),因此,能夠求出適合于每個(gè)幀的搜索用評(píng)價(jià)值,只有在解碼語(yǔ)音中的驅(qū)動(dòng)向量貢獻(xiàn)度大的幀內(nèi)才使用第二失真等,能夠選擇很難引起解碼語(yǔ)音品質(zhì)惡化的、適合于該幀的驅(qū)動(dòng)向量,并具有能夠?qū)崿F(xiàn)高質(zhì)量的語(yǔ)音編碼的效果。
并且,根據(jù)本第二實(shí)施例,作為計(jì)算搜索用評(píng)價(jià)值的一種處理,包含了把第一失真原樣地直接當(dāng)作搜索用評(píng)價(jià)值的處理,因此,在解碼語(yǔ)音中的驅(qū)動(dòng)向量的貢獻(xiàn)度小、即使驅(qū)動(dòng)向量的振幅存在偏移解碼語(yǔ)音也不致惡化等場(chǎng)合中,能夠選擇使波形失真即第一失真最小的驅(qū)動(dòng)向量,具有能夠防止不必要地使用第二失真反而導(dǎo)致引起音質(zhì)惡化的效果。
第三實(shí)施例圖5是表示采用本發(fā)明的語(yǔ)音編碼方法的語(yǔ)音編碼裝置的第三實(shí)施例的驅(qū)動(dòng)音源編碼部分5的詳細(xì)結(jié)構(gòu)的框圖。
在本第三實(shí)施例中,語(yǔ)音編碼裝置的整個(gè)結(jié)構(gòu)與圖8中的相同,只是在驅(qū)動(dòng)音源編碼部分5上附加了輸入語(yǔ)音1的輸入端。
圖5中,與圖1中表示的第一實(shí)施例相同的部分采用相同的符號(hào)表示,省略其說(shuō)明。新的符號(hào)35表示預(yù)選擇部件。
以下,參照附圖對(duì)動(dòng)作進(jìn)行說(shuō)明。
從線(xiàn)性預(yù)測(cè)系數(shù)編碼部件3輸出的經(jīng)量化的線(xiàn)性預(yù)測(cè)系數(shù)、從減法運(yùn)算部件11輸出的編碼對(duì)象信號(hào)12和對(duì)每個(gè)驅(qū)動(dòng)向量從合成濾波器14輸出的合成語(yǔ)音,第一失真計(jì)算部分23求出聽(tīng)覺(jué)加權(quán)濾波器后的差信號(hào)的總功率,并將它作為第一失真輸出到預(yù)選擇部件35。
預(yù)選擇部件35對(duì)從第一失真計(jì)算部分23輸出的每個(gè)驅(qū)動(dòng)向量的第一失真進(jìn)行互相比較,并預(yù)選擇M個(gè)該第一失真小的驅(qū)動(dòng)向量。再有,M是小于整個(gè)驅(qū)動(dòng)向量數(shù)的數(shù)。然后把預(yù)選擇的驅(qū)動(dòng)向量的號(hào)碼輸出到第二失真計(jì)算部分24,同時(shí)把對(duì)應(yīng)于預(yù)選擇的各驅(qū)動(dòng)向量的第一失真輸出到搜索用評(píng)價(jià)值計(jì)算部分29。
第二失真計(jì)算部分24對(duì)預(yù)選擇部件35所預(yù)選擇并輸出的M個(gè)驅(qū)動(dòng)向量的號(hào)碼所指定的各驅(qū)動(dòng)向量,求出從減法運(yùn)算部件11輸出的編碼對(duì)象信號(hào)12和對(duì)每個(gè)驅(qū)動(dòng)向量從合成濾波器14輸出的合成語(yǔ)音之間的幀內(nèi)振幅的重心位置的差值,并將求出的重心位置的差值作為第二失真輸出到搜索用評(píng)價(jià)值計(jì)算部分29。
搜索用評(píng)價(jià)值計(jì)算部分29利用從自適應(yīng)音源貢獻(xiàn)度計(jì)算部件28輸出的自適應(yīng)音源貢獻(xiàn)度、預(yù)選擇部件35所預(yù)選擇并輸出的M個(gè)第一失真、從第二失真計(jì)算部分24輸出的M個(gè)第二失真,求出M個(gè)用于最終搜索的搜索用評(píng)價(jià)值,并把該搜索用評(píng)價(jià)值輸出到搜索部件20。
搜索部件20對(duì)使從搜索用評(píng)價(jià)值搜索部件29輸出的搜索用評(píng)價(jià)值最小的驅(qū)動(dòng)音源代碼進(jìn)行搜索,并將使搜索用評(píng)價(jià)值最小的驅(qū)動(dòng)音源代碼作為驅(qū)動(dòng)音源代碼21輸出。另外,驅(qū)動(dòng)向量生成部件13將在輸入該驅(qū)動(dòng)音源代碼21時(shí)輸出的驅(qū)動(dòng)向量,作為驅(qū)動(dòng)音源22輸出。
而且,在上述第三實(shí)施例中,與第一實(shí)施例同樣地,根據(jù)編碼對(duì)象信號(hào)12和從合成濾波器14輸出的合成語(yǔ)音的振幅重心位置之間的差值來(lái)計(jì)算出第二失真;但是第二失真的計(jì)算不僅局限于此,也可以根據(jù)功率重心的位置差進(jìn)行計(jì)算,或者也可以對(duì)聽(tīng)覺(jué)加權(quán)濾波器后的信號(hào)來(lái)評(píng)價(jià)第二失真。另外,也可以在時(shí)間方向上把幀分割成數(shù)個(gè)子幀,對(duì)各編碼對(duì)象信號(hào)12和從合成濾波器14輸出的各合成語(yǔ)音,分別計(jì)算出分割子幀的平均振幅或平均功率,然后,求出每個(gè)編碼對(duì)象信號(hào)12的分割子幀的算出結(jié)果和每個(gè)從合成濾波器14輸出的合成語(yǔ)音分割子幀的算出結(jié)果的平方距離,作為第二失真。并且,能夠在計(jì)算出這幾種類(lèi)型的第二失真后,在搜索用評(píng)價(jià)值計(jì)算部件29中使用多個(gè)第二失真。
對(duì)于第一失真計(jì)算部分23來(lái)說(shuō),可以是不設(shè)聽(tīng)覺(jué)加權(quán)濾波器的結(jié)構(gòu),或者是對(duì)聽(tīng)覺(jué)加權(quán)進(jìn)行一并處理的結(jié)構(gòu),或者采用能減少運(yùn)算量的各種變形結(jié)構(gòu)。
并且,在本第三實(shí)施例中,從輸入語(yǔ)音1減去讓自適應(yīng)向量通過(guò)合成濾波器10后的合成語(yǔ)音的運(yùn)算結(jié)果作為編碼對(duì)象信號(hào),但是,也可以與第一實(shí)施例一樣,把輸入語(yǔ)音1原樣地直接作為編碼對(duì)象信號(hào)使用,并代之以讓驅(qū)動(dòng)向量通過(guò)合成濾波器14后的合成語(yǔ)音跟讓自適應(yīng)向量通過(guò)合成濾波器10后的合成語(yǔ)音正交的結(jié)構(gòu)。
另外,在本第三實(shí)施例中,對(duì)每一個(gè)幀進(jìn)行驅(qū)動(dòng)向量搜索,但是,當(dāng)然也可以與傳統(tǒng)技術(shù)相同地,把幀分割成多個(gè)子幀,對(duì)每個(gè)子幀進(jìn)行搜索。
如以上所述,根據(jù)本第三實(shí)施例,由于預(yù)選擇第一失真小的不少于兩個(gè)的驅(qū)動(dòng)向量,而且,第二失真的計(jì)算、搜索用評(píng)價(jià)值的計(jì)算和搜索對(duì)象都限定于預(yù)選擇的驅(qū)動(dòng)向量,因此,除了第一實(shí)施例所具有的效果外,還可以將第二失真的計(jì)算和搜索用評(píng)價(jià)值的計(jì)算抑制到較小的運(yùn)算量,并通過(guò)第二失真能夠檢測(cè)因(與只用第一失真進(jìn)行搜索的傳統(tǒng)的結(jié)構(gòu)的相比較小的)運(yùn)算量的增加引起解碼語(yǔ)音惡化的可能性高的驅(qū)動(dòng)向量,具有能夠?qū)崿F(xiàn)很少產(chǎn)生解碼語(yǔ)音的局部反常噪聲的高質(zhì)量的語(yǔ)音編碼的效果。
第四實(shí)施例圖6是表示采用本發(fā)明的語(yǔ)音編碼方法的語(yǔ)音編碼裝置的第四實(shí)施例的驅(qū)動(dòng)音源編碼部分5的詳細(xì)結(jié)構(gòu)的框圖。
在本第四實(shí)施例中,語(yǔ)音編碼裝置的整個(gè)結(jié)構(gòu)與圖8中的相同,只是在驅(qū)動(dòng)音源編碼部分5上附加了輸入語(yǔ)音1的輸入端。與圖5中所表示的第三實(shí)施例相同的部分用相同的符號(hào)表示,省略其說(shuō)明。在本第四實(shí)施例中,驅(qū)動(dòng)向量生成部件13中設(shè)有從第一驅(qū)動(dòng)向量生成部件到第N驅(qū)動(dòng)向量生成部件的N個(gè)驅(qū)動(dòng)向量生成部件和轉(zhuǎn)換部件。
以下,參照附圖對(duì)動(dòng)作進(jìn)行說(shuō)明。
驅(qū)動(dòng)向量生成部件13設(shè)有從第一驅(qū)動(dòng)向量生成部件到第N驅(qū)動(dòng)向量生成部件的N個(gè)驅(qū)動(dòng)向量生成部件和轉(zhuǎn)換部件,如果從外部輸入驅(qū)動(dòng)向量生成部件號(hào)碼和驅(qū)動(dòng)向量號(hào)碼,則按照該驅(qū)動(dòng)向量生成部件號(hào)碼和驅(qū)動(dòng)向量號(hào)碼輸出一個(gè)驅(qū)動(dòng)向量。轉(zhuǎn)換部件根據(jù)被輸入的驅(qū)動(dòng)向量生成部件號(hào)碼,把轉(zhuǎn)換開(kāi)關(guān)連接到一個(gè)驅(qū)動(dòng)向量生成部件,而被連接的第一到第N驅(qū)動(dòng)向量生成部件,根據(jù)被輸入的驅(qū)動(dòng)向量號(hào)碼,輸出指定的驅(qū)動(dòng)向量。
而且,多個(gè)驅(qū)動(dòng)向量生成部件互不相同,可以預(yù)先設(shè)置用以對(duì)具有各種形式的語(yǔ)音信號(hào)進(jìn)行穩(wěn)定編碼的各種形式的驅(qū)動(dòng)向量生成部件,如能量集中在幀內(nèi)的前半部分的驅(qū)動(dòng)向量生成部件、能量集中在幀內(nèi)的后半部分的驅(qū)動(dòng)向量生成部件、能量在幀內(nèi)比較分散地分布的驅(qū)動(dòng)向量生成部件、只由少量脈沖構(gòu)成的驅(qū)動(dòng)向量生成部件以及由多個(gè)脈沖構(gòu)成的驅(qū)動(dòng)向量生成部件等。
搜索部件20順序地產(chǎn)生用二進(jìn)制值表示的各驅(qū)動(dòng)音源代碼,并把該驅(qū)動(dòng)音源代碼分解成驅(qū)動(dòng)向量生成部件號(hào)碼和驅(qū)動(dòng)向量號(hào)碼,然后將驅(qū)動(dòng)向量生成部件號(hào)碼輸出到驅(qū)動(dòng)向量生成部件13內(nèi)的轉(zhuǎn)換部件和搜索用評(píng)價(jià)值計(jì)算部分29。另外,還把驅(qū)動(dòng)向量號(hào)碼輸出到驅(qū)動(dòng)向量生成部件13內(nèi)的第一到第N驅(qū)動(dòng)向量生成部件。
驅(qū)動(dòng)向量生成部件13按照從搜索部件20輸出的驅(qū)動(dòng)向量生成部件號(hào)碼和驅(qū)動(dòng)向量號(hào)碼,把一個(gè)驅(qū)動(dòng)向量輸出到合成濾波器14。
合成濾波器14將從線(xiàn)性預(yù)測(cè)系數(shù)編碼部件3輸出的經(jīng)量化的線(xiàn)性預(yù)測(cè)系數(shù)設(shè)定為濾波器系數(shù),并對(duì)從驅(qū)動(dòng)向量生成部件13輸出的驅(qū)動(dòng)向量進(jìn)行合成濾波,把得到的合成語(yǔ)音輸出到第一失真計(jì)算部分23和第二失真計(jì)算部分24。
第一失真計(jì)算部分23根據(jù)從線(xiàn)性預(yù)測(cè)系數(shù)編碼部件3輸出的經(jīng)量化的線(xiàn)性預(yù)測(cè)系數(shù)、從減法運(yùn)算部件11輸出的編碼對(duì)象信號(hào)12和對(duì)每個(gè)驅(qū)動(dòng)向量從合成濾波器14輸出的合成語(yǔ)音,求出聽(tīng)覺(jué)加權(quán)濾波器后的差信號(hào)的總功率,并將它作為第一失真輸出到預(yù)選擇部件35。
預(yù)選擇部件35對(duì)從第一失真計(jì)算部分23輸出的每個(gè)驅(qū)動(dòng)向量的第一失真進(jìn)行互相比較,并預(yù)選擇M個(gè)該第一失真小的驅(qū)動(dòng)向量。而且,M是少于整個(gè)驅(qū)動(dòng)向量個(gè)數(shù)的數(shù)。然后把預(yù)選擇的驅(qū)動(dòng)向量的號(hào)碼輸出到第二失真計(jì)算部分24,同時(shí)把和預(yù)選擇的各驅(qū)動(dòng)向量對(duì)應(yīng)的第一失真輸出到搜索用評(píng)價(jià)值計(jì)算部分29。而且,在從搜索部件20輸入驅(qū)動(dòng)向量生成部件號(hào)碼的結(jié)構(gòu)中,也可以對(duì)每個(gè)相同的驅(qū)動(dòng)向量生成部件號(hào)碼預(yù)選擇L個(gè)驅(qū)動(dòng)向量。如果假設(shè)L為1,則預(yù)選擇數(shù)M就與N一致。
第二失真計(jì)算部分24對(duì)預(yù)選擇部件35所預(yù)選擇輸出的M個(gè)驅(qū)動(dòng)向量的號(hào)碼所指定的各驅(qū)動(dòng)向量,求出從減法運(yùn)算部件11輸出的編碼對(duì)象信號(hào)12和對(duì)每個(gè)驅(qū)動(dòng)向量從合成濾波器14輸出的合成語(yǔ)音之間的幀內(nèi)振幅的重心位置的差,并將求出的重心位置的差作為第二失真輸出到搜索用評(píng)價(jià)值計(jì)算部分29。
搜索用評(píng)價(jià)值計(jì)算部分29利用從自適應(yīng)音源貢獻(xiàn)度計(jì)算部件28輸出的自適應(yīng)音源貢獻(xiàn)度、從搜索部件20輸出的驅(qū)動(dòng)向量生成部件號(hào)碼、預(yù)選擇部件35所預(yù)選擇輸出的M個(gè)第一失真、從第二失真計(jì)算部分24輸出的M個(gè)第二失真,求出用于最終搜索的M個(gè)搜索用評(píng)價(jià)值,并把該搜索用評(píng)價(jià)值輸出到搜索部件20。
搜索部件20對(duì)使從搜索用評(píng)價(jià)值搜索部件29輸出的搜索用評(píng)價(jià)值最小化的驅(qū)動(dòng)音源代碼進(jìn)行搜索,并把使搜索用評(píng)價(jià)值最小化的驅(qū)動(dòng)音源代碼作為驅(qū)動(dòng)音源代碼21進(jìn)行輸出。另外,驅(qū)動(dòng)向量生成部件13將在輸入該驅(qū)動(dòng)音源代碼21時(shí)輸出的驅(qū)動(dòng)向量,作為驅(qū)動(dòng)音源22進(jìn)行輸出。
圖7是表示搜索用評(píng)價(jià)值計(jì)算部分29的結(jié)構(gòu)的結(jié)構(gòu)圖。
圖7中,30、32、36是轉(zhuǎn)換部件,31是乘法運(yùn)算部件。
在搜索用評(píng)價(jià)值計(jì)算部分29內(nèi),對(duì)應(yīng)于驅(qū)動(dòng)向量生成部件號(hào)碼設(shè)定有N個(gè)常數(shù)β1至βN。
轉(zhuǎn)換部件36按照從搜索部件20輸出的驅(qū)動(dòng)向量生成部件號(hào)碼來(lái)切換轉(zhuǎn)換開(kāi)關(guān),并選擇一個(gè)常數(shù)進(jìn)行輸出,具體方式是當(dāng)驅(qū)動(dòng)向量生成部件號(hào)碼為1時(shí)輸出β1,當(dāng)驅(qū)動(dòng)向量生成部件號(hào)碼為N時(shí)輸出βN。
乘法運(yùn)算部件31在從第一失真計(jì)算部分23輸出的第一失真上,乘以從轉(zhuǎn)換部件36輸出的常數(shù),并輸出乘法運(yùn)算的結(jié)果。
轉(zhuǎn)換部件32在從第二失真計(jì)算部分24輸出的第二失真超過(guò)規(guī)定閾值的場(chǎng)合,把轉(zhuǎn)換開(kāi)關(guān)連接到乘法運(yùn)算部件31輸出的乘法運(yùn)算結(jié)果;在從第二失真計(jì)算部分24輸出的第二失真不超過(guò)規(guī)定閾值的場(chǎng)合,把轉(zhuǎn)換開(kāi)關(guān)連接到第一失真計(jì)算部分23輸出的第一失真。規(guī)定的閾值以幀長(zhǎng)度的10分之1左右為適宜。由此,轉(zhuǎn)換部件32在第二失真大時(shí)輸出在第一失真上乘以對(duì)應(yīng)于驅(qū)動(dòng)向量生成部件號(hào)碼的常數(shù)的運(yùn)算結(jié)果,在第二失真小時(shí)原樣地直接輸出第一失真。
轉(zhuǎn)換部件30在從自適應(yīng)音源貢獻(xiàn)度計(jì)算部件28輸出的自適應(yīng)音源貢獻(xiàn)度超過(guò)規(guī)定閾值的場(chǎng)合,把轉(zhuǎn)換開(kāi)關(guān)連接到第一失真計(jì)算部分23輸出的第一失真;在從自適應(yīng)音源貢獻(xiàn)度計(jì)算部件28輸出的自適應(yīng)音源貢獻(xiàn)度不超過(guò)規(guī)定的閾值的場(chǎng)合,連接到轉(zhuǎn)換部件32的輸出結(jié)果。規(guī)定的閾值,以0.3~0.4左右為適宜。然后,該轉(zhuǎn)換部件30的輸出作為搜索用評(píng)價(jià)值,從搜索用評(píng)價(jià)值計(jì)算部分29輸出。
通過(guò)以上結(jié)構(gòu),通常以第一失真作為搜索用評(píng)價(jià)值進(jìn)行輸出,只有在第二失真大并且自適應(yīng)音源貢獻(xiàn)度小的場(chǎng)合,才將在第一失真上乘以對(duì)應(yīng)于驅(qū)動(dòng)向量生成部件號(hào)碼的常數(shù)的后的值作為搜索用評(píng)價(jià)值加以輸出。也就是說(shuō),只有在第二失真大且自適應(yīng)音源貢獻(xiàn)度小的場(chǎng)合,搜索用評(píng)價(jià)值才被修正成大值,而且,該修正的大小按照驅(qū)動(dòng)向量生成部件號(hào)碼加以控制,在后續(xù)的搜索部件20中抑制相應(yīng)的驅(qū)動(dòng)音源代碼選擇。
而且,與第二實(shí)施例相同,上述第四實(shí)施例中可把轉(zhuǎn)換開(kāi)關(guān)32變更為如圖4中所示的乘法運(yùn)算部件33和加法運(yùn)算部件37。
另外,與第一實(shí)施例同樣地,根據(jù)編碼對(duì)象信號(hào)12和合成濾波器14輸出的合成語(yǔ)音的振幅重心位置之間的差值計(jì)算出第二失真,但是第二失真的計(jì)算不僅局限于此,也可以根據(jù)功率重心的位置差進(jìn)行計(jì)算,也可以相對(duì)于聽(tīng)覺(jué)加權(quán)濾波器后的信號(hào)來(lái)評(píng)價(jià)第二失真。也可以在時(shí)間方向上把幀分割成數(shù)個(gè)子幀,對(duì)編碼對(duì)象信號(hào)12和從合成濾波器14輸出的合成語(yǔ)音,分別計(jì)算出各分割的子幀內(nèi)的平均振幅或平均功率,然后,求出對(duì)每個(gè)編碼對(duì)象信號(hào)12的分割子幀的算出結(jié)果和每個(gè)從合成濾波器14輸出的合成語(yǔ)音分割子幀的算出結(jié)果的平方距離,作為第二失真。并且,也有可能采用這樣的結(jié)構(gòu)計(jì)算出這幾種類(lèi)型的第二失真,在搜索用評(píng)價(jià)值計(jì)算部件29中使用多個(gè)第二失真。
對(duì)第一失真計(jì)算部分23來(lái)說(shuō),也有可能采用不設(shè)聽(tīng)覺(jué)加權(quán)濾波器的結(jié)構(gòu),對(duì)聽(tīng)覺(jué)加權(quán)一并進(jìn)行處理的結(jié)構(gòu),或者用以減少運(yùn)算量的各種變化形式。
并且,在本第四實(shí)施例中,從輸入語(yǔ)音1減去自適應(yīng)向量通過(guò)了合成濾波器10后的合成語(yǔ)音的運(yùn)算結(jié)果作為編碼對(duì)象信號(hào),但是,也可以與第一實(shí)施例一樣,把輸入語(yǔ)音1原樣地直接作為編碼對(duì)象信號(hào)使用,并代之以讓驅(qū)動(dòng)向量通過(guò)了合成濾波器14后所得到的合成語(yǔ)音跟自適應(yīng)向量通過(guò)了合成濾波器10后所得到的合成語(yǔ)音正交的結(jié)構(gòu)。
并且,在本第四實(shí)施例中,對(duì)每一個(gè)幀進(jìn)行驅(qū)動(dòng)向量搜索,但是,當(dāng)然也可以與傳統(tǒng)技術(shù)相同地,把幀分割成多個(gè)子幀,并對(duì)每個(gè)子幀進(jìn)行搜索。
如以上所述,根據(jù)該第四實(shí)施例,由于包括多個(gè)生成相互不同的驅(qū)動(dòng)向量的驅(qū)動(dòng)向量生成部件(步驟),在每個(gè)驅(qū)動(dòng)向量生成部件(步驟),預(yù)選擇所述第一失真計(jì)算部件(步驟)算出的第一失真小的至少一個(gè)驅(qū)動(dòng)向量,而且,第二失真的計(jì)算、搜索用評(píng)價(jià)值的計(jì)算和搜索對(duì)象都限定于預(yù)選擇的驅(qū)動(dòng)向量,因此,除了第三實(shí)施例所具有的效果外,能夠?yàn)槊總€(gè)音源位置限定和脈沖數(shù)等各不相同的驅(qū)動(dòng)向量生成部件(步驟)留下至少一個(gè)驅(qū)動(dòng)向量的候選向量,并通過(guò)第二失真從音源位置限定和脈沖數(shù)等各不相同的驅(qū)動(dòng)向量的候選向量中檢測(cè)引起解碼語(yǔ)音惡化的可能性高的驅(qū)動(dòng)向量,抑制選擇該驅(qū)動(dòng)向量,由此,盡管只是增加少量的運(yùn)算量,卻能夠?qū)崿F(xiàn)很少產(chǎn)生解碼語(yǔ)音的局部反常噪聲的高質(zhì)量的語(yǔ)音編碼的效果。
而且,在第三實(shí)施例中,由于無(wú)法保證音源位置限定和脈沖數(shù)等各不相同的驅(qū)動(dòng)向量被預(yù)選擇,因此,例如只有能量集中在幀內(nèi)的前半部分的驅(qū)動(dòng)向量被預(yù)選擇的場(chǎng)合,有可能該被預(yù)選擇的驅(qū)動(dòng)向量中不包括重心位置的差(第二失真)小的驅(qū)動(dòng)向量。這種場(chǎng)合,就不能消除解碼語(yǔ)音的局部惡化。
依據(jù)本第四實(shí)施例,根據(jù)是從哪一個(gè)驅(qū)動(dòng)向量生成部件(步驟)輸出的驅(qū)動(dòng)向量,在β1與βN之間變更用于計(jì)算出搜索用評(píng)價(jià)值的常數(shù)(變更計(jì)算搜索用評(píng)價(jià)值的處理),因此,在第二失真變大時(shí)對(duì)易引起解碼語(yǔ)音惡化的驅(qū)動(dòng)向量生成部件(步驟)選擇性地加大搜索用評(píng)價(jià)值的第二失真的權(quán)重,從而能夠抑制選擇從該驅(qū)動(dòng)向量生成部件(步驟)輸出的驅(qū)動(dòng)向量,具有能夠?qū)崿F(xiàn)很少產(chǎn)生解碼語(yǔ)音的局部反常噪聲的高質(zhì)量的語(yǔ)音編碼的效果。
第五實(shí)施例上述第一實(shí)施例至第四實(shí)施例,都是采用本發(fā)明的有關(guān)對(duì)通過(guò)自適應(yīng)向量和驅(qū)動(dòng)向量的相加運(yùn)算構(gòu)成的音源中的驅(qū)動(dòng)向量搜索的結(jié)構(gòu),但是音源的結(jié)構(gòu)不僅局限于該結(jié)構(gòu),例如,對(duì)于只由為了描述語(yǔ)音的上升部分的驅(qū)動(dòng)向量構(gòu)成的音源,也可以采用本發(fā)明。
該場(chǎng)合,可以不需要自適應(yīng)音源編碼部件4、自適應(yīng)向量生成部件9以及合成濾波器10,自適應(yīng)音源貢獻(xiàn)度計(jì)算部件28的輸出始終設(shè)為0。
通過(guò)這樣的結(jié)構(gòu),即使在只由驅(qū)動(dòng)向量構(gòu)成音源的場(chǎng)合,也能夠通過(guò)第二失真檢測(cè)只由第一失真所不能發(fā)現(xiàn)的、引起解碼語(yǔ)音惡化的可能性高的驅(qū)動(dòng)向量,具有能夠?qū)崿F(xiàn)很少產(chǎn)生解碼語(yǔ)音的局部反常噪聲的高質(zhì)量的語(yǔ)音編碼的效果。
第六實(shí)施例上述第一實(shí)施例至第四實(shí)施例,是采用本發(fā)明的關(guān)于驅(qū)動(dòng)向量的搜索結(jié)構(gòu),但是,對(duì)于自適應(yīng)向量的搜索也可以采用本發(fā)明。
該場(chǎng)合,最好把第五實(shí)施例中的驅(qū)動(dòng)向量生成部件13變更為自適應(yīng)向量生成部件9。
根據(jù)以上結(jié)構(gòu),通過(guò)第二失真能夠檢測(cè)只由第一失真不能發(fā)現(xiàn)的、引起解碼語(yǔ)音惡化的可能性高的自適應(yīng)向量,具有能夠?qū)崿F(xiàn)很少產(chǎn)生解碼語(yǔ)音的局部反常噪聲的高質(zhì)量的語(yǔ)音編碼的效果。
第七實(shí)施例在上述第一實(shí)施例至第四實(shí)施例中,只選擇了一個(gè)驅(qū)動(dòng)向量,但是,當(dāng)然也可以設(shè)置兩個(gè)驅(qū)動(dòng)子向量生成部件,并根據(jù)分別從由它們輸出的兩個(gè)驅(qū)動(dòng)子向量的相加運(yùn)算來(lái)設(shè)為一個(gè)驅(qū)動(dòng)向量的結(jié)構(gòu)。
該場(chǎng)合,即使其他的結(jié)構(gòu)與第一實(shí)施例至第四實(shí)施例的結(jié)構(gòu)相同也無(wú)妨,但是,這樣的結(jié)構(gòu)也是可能的,就是在對(duì)從一個(gè)驅(qū)動(dòng)子向量生成部件輸出的驅(qū)動(dòng)子向量進(jìn)行搜索時(shí),求出已經(jīng)被確定的另一個(gè)驅(qū)動(dòng)子向量和自適應(yīng)音源的貢獻(xiàn)度并用于搜索用評(píng)價(jià)值的計(jì)算。
根據(jù)以上結(jié)構(gòu),通過(guò)第二失真能夠檢測(cè)只由第一失真不能發(fā)現(xiàn)的、引起解碼語(yǔ)音惡化的可能性高的驅(qū)動(dòng)子向量,具有能夠?qū)崿F(xiàn)很少產(chǎn)生解碼語(yǔ)音的局部反常噪聲的高質(zhì)量的語(yǔ)音編碼的效果。
如以上所述,依據(jù)本發(fā)明,計(jì)算關(guān)于在編碼對(duì)象信號(hào)和從驅(qū)動(dòng)向量求出的合成向量之間定義的波形的失真作為第一失真,計(jì)算在編碼對(duì)象信號(hào)和從驅(qū)動(dòng)向量求出的合成向量之間定義的與第一失真不同的第二失真,并選擇使利用該第一失真和第二失真計(jì)算出的搜索用評(píng)價(jià)值最小的驅(qū)動(dòng)向量;因此,通過(guò)第二失真能夠檢測(cè)出只由第一失真不能發(fā)現(xiàn)的、引起解碼語(yǔ)音惡化的可能性高的驅(qū)動(dòng)向量,能夠?qū)崿F(xiàn)很少產(chǎn)生解碼語(yǔ)音的局部反常噪聲的高質(zhì)量的語(yǔ)音編碼。
權(quán)利要求
1.一種對(duì)每個(gè)稱(chēng)為幀的規(guī)定長(zhǎng)度區(qū)間給輸入語(yǔ)音編碼的語(yǔ)音編碼方法,其中包括生成多個(gè)驅(qū)動(dòng)向量的驅(qū)動(dòng)向量生成步驟;對(duì)每個(gè)驅(qū)動(dòng)向量,計(jì)算出關(guān)于在從輸入語(yǔ)音求出的編碼對(duì)象信號(hào)和從驅(qū)動(dòng)向量求出的合成向量之間定義的波形的失真作為第一失真的第一失真計(jì)算步驟;對(duì)每個(gè)驅(qū)動(dòng)向量,計(jì)算出在所述編碼對(duì)象信號(hào)和從驅(qū)動(dòng)向量求出的合成向量之間定義的、與第一失真不同的失真的第二失真的第二失真計(jì)算步驟;對(duì)每個(gè)驅(qū)動(dòng)向量,利用所述第一失真和第二失真計(jì)算出規(guī)定的搜索用評(píng)價(jià)值的評(píng)價(jià)值計(jì)算步驟;以及選擇使搜索用評(píng)價(jià)值成為最小的驅(qū)動(dòng)向量,并輸出與被選擇的驅(qū)動(dòng)向量預(yù)先對(duì)應(yīng)上的代碼的搜索步驟。
2.如權(quán)利要求1所述的語(yǔ)音編碼方法,其特征在于設(shè)有選擇所述第一失真計(jì)算步驟算出的第一失真小的不少于兩個(gè)驅(qū)動(dòng)向量的預(yù)選擇步驟;將所述第二失真計(jì)算步驟、評(píng)價(jià)值計(jì)算步驟、搜索步驟的對(duì)象限定于預(yù)選擇步驟選擇的驅(qū)動(dòng)向量。
3.如權(quán)利要求1所述的語(yǔ)音編碼方法,其特征在于設(shè)有多個(gè)生成互不相同的驅(qū)動(dòng)向量的驅(qū)動(dòng)向量生成步驟,同時(shí)還設(shè)有為每個(gè)驅(qū)動(dòng)向量生成步驟選擇所述第一失真計(jì)算步驟所算出的第一失真小的至少一個(gè)驅(qū)動(dòng)向量的預(yù)選擇步驟;將所述第二失真計(jì)算步驟、評(píng)價(jià)值計(jì)算步驟、搜索步驟的對(duì)象限定于預(yù)選擇步驟選擇的驅(qū)動(dòng)向量。
4.如權(quán)利要求1所述的語(yǔ)音編碼方法,其特征在于所述第一失真計(jì)算步驟中,在幀內(nèi)對(duì)讓從輸入語(yǔ)音求出的編碼對(duì)象信號(hào)通過(guò)聽(tīng)覺(jué)加權(quán)濾波器后得到的信號(hào)和讓從驅(qū)動(dòng)向量求出的合成向量通過(guò)聽(tīng)覺(jué)加權(quán)濾波器后得到的信號(hào)的每個(gè)抽樣的誤差功率進(jìn)行相加,并將相加的結(jié)果設(shè)為第一失真。
5.如權(quán)利要求1所述的語(yǔ)音編碼方法,其特征在于所述第二失真計(jì)算步驟將關(guān)于幀內(nèi)的時(shí)間方向的振幅或功率的偏移的失真設(shè)為第二失真。
6.如權(quán)利要求5所述的語(yǔ)音編碼方法,其特征在于所述第二失真計(jì)算步驟求出幀內(nèi)的編碼對(duì)象信號(hào)的振幅或功率的重心位置,同時(shí)求出幀內(nèi)的合成向量的振幅或功率的重心位置,并將求出的兩個(gè)重心位置之間的差值設(shè)為第二失真。
7.如權(quán)利要求1所述的語(yǔ)音編碼方法,其特征在于所述評(píng)價(jià)值計(jì)算步驟通過(guò)根據(jù)第二失真對(duì)第一失真進(jìn)行修正來(lái)計(jì)算出搜索用評(píng)價(jià)值。
8.如權(quán)利要求1所述的語(yǔ)音編碼方法,其特征在于所述評(píng)價(jià)值計(jì)算步驟用第一失真和第二失真的加權(quán)和來(lái)計(jì)算出搜索用評(píng)價(jià)值。
9.如權(quán)利要求1所述的語(yǔ)音編碼方法,其特征在于所述評(píng)價(jià)值計(jì)算步驟按照從輸入語(yǔ)音算出的規(guī)定參數(shù),對(duì)計(jì)算搜索用評(píng)價(jià)值的處理加以更改。
10.如權(quán)利要求9所述的語(yǔ)音編碼方法,其特征在于設(shè)有貢獻(xiàn)度計(jì)算步驟,該步驟求出從驅(qū)動(dòng)向量以外的音源向量得到的合成向量能量和輸入語(yǔ)音能量之間的比率,將該比率設(shè)為其他音源貢獻(xiàn)度;所算出的其他音源貢獻(xiàn)度被設(shè)為所述評(píng)價(jià)值計(jì)算步驟中的規(guī)定參數(shù)。
11.如權(quán)利要求3所述的語(yǔ)音編碼方法,其特征在于所述評(píng)價(jià)值計(jì)算步驟根據(jù)驅(qū)動(dòng)向量從哪個(gè)驅(qū)動(dòng)向量生成步驟輸出來(lái)對(duì)計(jì)算搜索用評(píng)價(jià)值的處理加以變更。
12.如權(quán)利要求1所述的語(yǔ)音編碼方法,其特征在于所述評(píng)價(jià)值計(jì)算步驟中包括將第一失真原樣地直接設(shè)為搜索用評(píng)價(jià)值的處理,作為計(jì)算搜索用評(píng)價(jià)值的處理之一。
13.一種對(duì)每個(gè)稱(chēng)為幀的規(guī)定長(zhǎng)度區(qū)間給輸入語(yǔ)音的編碼的語(yǔ)音編碼裝置,其中設(shè)有生成多個(gè)驅(qū)動(dòng)向量的驅(qū)動(dòng)向量生成部件;對(duì)每個(gè)驅(qū)動(dòng)向量,計(jì)算出關(guān)于在從輸入語(yǔ)音求出的編碼對(duì)象信號(hào)和從驅(qū)動(dòng)向量求出的合成向量之間定義的波形的失真作為第一失真的第一失真計(jì)算部件;對(duì)每個(gè)驅(qū)動(dòng)向量,計(jì)算出與在所述編碼對(duì)象信號(hào)和從驅(qū)動(dòng)向量求出的合成向量之間定義的第一失真不同的第二失真的第二失真計(jì)算部件;對(duì)每個(gè)驅(qū)動(dòng)向量,利用所述第一失真和第二失真計(jì)算出規(guī)定的搜索用評(píng)價(jià)值的評(píng)價(jià)值計(jì)算部件;以及選擇使搜索用評(píng)價(jià)值成為最小的驅(qū)動(dòng)向量,并輸出與被選擇的驅(qū)動(dòng)向量預(yù)先對(duì)應(yīng)上的代碼的搜索部件。
14.如權(quán)利要求13所述的語(yǔ)音編碼裝置,其特征在于所述第一失真計(jì)算部件中,在幀內(nèi)對(duì)讓從輸入語(yǔ)音求出的編碼對(duì)象信號(hào)通過(guò)聽(tīng)覺(jué)加權(quán)濾波器后得到的信號(hào)和讓從驅(qū)動(dòng)向量求出的合成向量通過(guò)聽(tīng)覺(jué)加權(quán)濾波器后得到的信號(hào)的每個(gè)抽樣的誤差功率進(jìn)行相加,將相加的結(jié)果設(shè)為第一失真。
15.如權(quán)利要求13所述的語(yǔ)音編碼裝置,其特征在于所述第二失真計(jì)算部件將關(guān)于幀內(nèi)的時(shí)間方向的振幅或功率的偏移的失真作為第二失真。
16.如權(quán)利要求13所述的語(yǔ)音編碼裝置,其特征在于所述評(píng)價(jià)值計(jì)算部件通過(guò)根據(jù)第二失真對(duì)第一失真進(jìn)行修正來(lái)計(jì)算出搜索用評(píng)價(jià)值。
17.如權(quán)利要求13所述的語(yǔ)音編碼裝置,其特征在于所述評(píng)價(jià)值計(jì)算部件按照從輸入語(yǔ)音算出的規(guī)定參數(shù),對(duì)計(jì)算搜索用評(píng)價(jià)值的處理加以變更。
全文摘要
以提供一種很少產(chǎn)生解碼語(yǔ)音的局部反常噪音的高質(zhì)量的語(yǔ)音編碼方法和裝置為目的。所述裝置中設(shè)有多個(gè)生成驅(qū)動(dòng)向量的驅(qū)動(dòng)向量生成部件13;對(duì)每個(gè)驅(qū)動(dòng)向量,計(jì)算出以關(guān)于在從輸入語(yǔ)音求出的編碼對(duì)象信號(hào)和從驅(qū)動(dòng)向量求出的合成向量之間定義的波形的失真作為第一失真的第一失真計(jì)算部分23;對(duì)每個(gè)驅(qū)動(dòng)向量,計(jì)算出在所述編碼對(duì)象信號(hào)和從驅(qū)動(dòng)向量求出的合成向量之間定義的、與第一失真不同的失真作為第二失真的第二失真計(jì)算部分24;對(duì)每個(gè)驅(qū)動(dòng)向量,用所述第一失真和第二失真計(jì)算出規(guī)定的搜索用評(píng)價(jià)值的評(píng)價(jià)值計(jì)算部分29;選擇使搜索用評(píng)價(jià)值為最小的驅(qū)動(dòng)向量,并輸出與被選擇的驅(qū)動(dòng)向量預(yù)先對(duì)應(yīng)上的代碼的搜索部件20。
文檔編號(hào)G10L19/04GK1483188SQ01821214
公開(kāi)日2004年3月17日 申請(qǐng)日期2001年4月16日 優(yōu)先權(quán)日2000年10月26日
發(fā)明者田崎裕久 申請(qǐng)人:三菱電機(jī)株式會(huì)社