專利名稱:降低了復(fù)雜度的信號傳輸系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及到一個包括一個發(fā)送器的傳輸系統(tǒng),發(fā)送器通過一個傳輸信道發(fā)送一個輸入信號到一個接收器。發(fā)送器包含一個編碼器,編碼器帶有一個器激勵信號發(fā)生器,激勵信號發(fā)生器用來從一個主序列中得到多個激勵序列。該多元激勵序列是主序列的部分成分,上述部分成分在幾個位置之間相互移位。用來選擇一個激勵序列的選擇裝置在一個合成信號和一個目標信號之間產(chǎn)生一個最小誤差,合成信號從上述激勵序列中得到,目標信號從輸入信號中得到。發(fā)送器被用來發(fā)送一個信號給接收器,該信號代表一個最佳激勵序列。接收器包含一個解碼器,解碼器帶有一個器激勵信號發(fā)生器,激勵信號發(fā)生器用來從代表最佳激勵序列的信號中得到被選擇的激勵序列;接收器還包含一個合成濾波器,合成濾波器用來從激勵信號抽樣中的最佳序列中得到一個合成信號。
本發(fā)明還涉及到一個發(fā)送器、一個編碼器、一種傳輸方法和一種編碼方法。
符合前文敘述的一個傳輸系統(tǒng)從US Patent No.5,140,638得到。
該傳輸系統(tǒng)可以用來通過象無線信道、同軸電纜或光纖這樣的傳送媒體來傳輸話音信號。該傳送系統(tǒng)也可以用來在象磁帶或磁盤這樣的錄音媒體上錄下話音信號??赡艿膽?yīng)用是自動應(yīng)答機或口錄機。
在現(xiàn)代話音傳輸系統(tǒng)中,被傳送的話音信號通常通過合成技術(shù)使用解析編碼方法來編碼。在該技術(shù)中,合成信號由合成濾波器產(chǎn)生,該合成濾波器被多個激勵序列激勵。合成話音信號被多個激勵序列所確定,代表著合成信號與目標信號之間誤差的誤差信號也被確定,在這里,目標信號由輸入信號得到。產(chǎn)生最小誤差的激勵序列被選擇并以編碼的形式發(fā)送到接收器。
在接收器側(cè),激勵序列被恢復(fù),通過施加該激勵序列到一個合成濾波器產(chǎn)生一個合成信號。該合成信號是發(fā)送器的輸入信號的一個復(fù)制品。
為了獲得一個很好的信號傳輸質(zhì)量,選擇涉及到大量的(例如1024個)激勵序列。該選擇包括大量的濾波器操作,這些濾波器操作需要很強的計算能力。為了減少對計算能力的要求,通常使用所謂的一維碼本。就是說碼本包含一個抽樣主序列,激勵序列是從這個主序列中選擇出來的。因為相鄰的序列有大量的抽樣是相同的,所以可以使用遞歸方法進行濾波,這樣就大量節(jié)省了對計算資源的需求。而且,對主序列(激勵序列從中選擇)的使用,導致存儲激勵序列的內(nèi)存需求的減少。在相鄰序列間具有大量共同抽樣的一個結(jié)果是相鄰序列間有一個大的相關(guān)值。為了減少計算量,在上述提到的美國專利揭示的編碼器中,并沒有使用主序列中所有可能的序列,僅使用了在長度為p個抽樣的距離上被相互移位的序列。這樣做會導致一些質(zhì)量損耗。
本發(fā)明的目的是根據(jù)前文所述來提供一種傳輸系統(tǒng)。在前文中,提到了既提高編碼質(zhì)量,同時又不增加計算復(fù)雜度的傳輸系統(tǒng)。
因此,根據(jù)本發(fā)明的傳輸系統(tǒng),其特征在于該選擇裝置用來從主序列中得到至少一個其它激勵序列,其它激勵序列相對被選擇的序列被移位,移位距離小于激勵序列間的偏移;其特征還在于,該選擇裝置用來從被選擇的激勵序列中和從至少一個其它的激勵序列中選擇激勵序列,該激勵序列在合成信號和目標信號間產(chǎn)生一個最小誤差,合成信號從上述其它的激勵序列中得到,目標信號從輸入信號中得到,作為最佳序列。
通過使用具有比兩個激勵序列間偏移值更小偏移值的一個或n個其它激勵序列,可以更準確地接近目標信號。因為該附加激勵序列在最佳激勵序列附近選擇,這樣額外的計算量非常小。可以看出,主序列可以存儲在一個固定的碼本中,但主序列也可存儲在一個自適應(yīng)碼本中,該碼本的內(nèi)容從以前用過的激勵序列中得到。
本發(fā)明的一個實施例,其特征在于兩個激勵序列間的偏移在兩個到五個位置之間。
實驗已證明,p值在2到5之間是一個好的選擇。
本發(fā)明的另一個實施例,其特征在于其編碼器含有一個合成濾波器,該合成濾波器用來從上述激勵序列中得到一個合成信號,上述該合成濾波器相對解碼器中的合成濾波器而言,復(fù)雜度低一些。
在本實施例中,編碼器使用的合成濾波器相對解碼器使用的合成濾波器復(fù)雜度要低一些。實驗令人驚奇地顯示,與接收器中合成濾波器的復(fù)雜度相比,編碼器中合成濾波器的復(fù)雜度(過濾程序)可以下降10-20倍。
本發(fā)明該實施例的另一個實施例,其特征在于,其選擇裝置被安排選擇至少一個其它激勵序列;其特征在于,編碼器含有一個額外的合成濾波器,該合成濾波器用來從至少兩個激勵序列中得到附加的合成信號;其特征還在于,選擇裝置被安排從至少兩個激勵序列中選擇激勵序列,這樣就在相應(yīng)的附加合成輸入信號和參考信號之間得到一個最小誤差。參考信號從輸入信號中得到,作為被選擇的激勵信號。
在本實施例中,基于對減少復(fù)雜度的合成濾波器的使用從至少兩個激勵序列中做一個預(yù)選擇。隨后,使用一個相對復(fù)雜些的合成濾波器作出最終選擇。該合成濾波器可能與接收器中的合成濾波器一樣,但它也可能比接收器中的合成濾波器復(fù)雜度低一些??梢钥闯?,參考信號可能與目標信號一樣,但這些信號也有可能不相同。
現(xiàn)在參考圖解來解釋本發(fā)明。
這里給出了下述圖
圖1,本發(fā)明可以應(yīng)用在其中的一個傳輸系統(tǒng);圖2,根據(jù)本發(fā)明得到的一個編碼器;圖3,自適應(yīng)碼本選擇設(shè)備的一個部分,該選擇設(shè)備用來從主序列中預(yù)選多個激勵序列;圖4,用來選擇至少一個其它激勵序列的選擇裝置的一個部分;圖5,根據(jù)本發(fā)明得到的激勵序列選擇設(shè)備;圖6,根據(jù)本發(fā)明得到的固定碼本選擇設(shè)備;圖7,一個解碼器應(yīng)用在根據(jù)圖1得到的一個傳輸系統(tǒng)中。
在圖1的傳輸系統(tǒng)中,輸入信號被施加到發(fā)送器2中。在發(fā)送器2中,使用根據(jù)本發(fā)明得到的一個編碼器對輸入信號編碼。編碼器4的輸出信號被送到發(fā)送設(shè)備6的一個輸入端,通過傳輸媒體8將編碼器4的輸出信號發(fā)送到接收器10。發(fā)送設(shè)備的操作可能包括把從編碼器得到的信號(二進制)進行調(diào)制,可能以二進制的形式調(diào)制在適合傳送媒體8的載波信號上。在接收器10中,接收到的信號被前端12轉(zhuǎn)換成適合解碼器14的一個信號。前端12的操作可能包括濾波、解調(diào)和檢測二進制符號。通過前端12的輸出信號,解碼器14得到一個復(fù)原的輸入信號。
在圖2的編碼器中,編碼器4的輸入端承載著數(shù)字化的輸入信號樣本i[n],與成幀設(shè)備20的輸入部分相連。成幀設(shè)備的輸出部分承載著輸出信號x[n],與高通濾波器22相連。高通濾波器22的輸輸出端承載著一個輸出信號s[n],與感知加權(quán)濾波器32相連,還與LPC分析器24的一個輸入端相連。LPC分析器24的第一個輸出端承載著輸出信號r[k],與量化器26相連;LPC分析器的第二個輸出端為降低復(fù)雜度的合成濾波器承載濾波器系數(shù)af。
量化器26的輸出端承載著輸出信號c[k]與內(nèi)插器28的一個輸入端相連,還與多路復(fù)用器59的第一個輸入端相連。內(nèi)插器28的輸出端承載著信號aq[k][s],與感知加權(quán)濾波器32的第二輸入端相連,與零輸入響應(yīng)濾波器34的一個輸入端相連,還與脈沖響應(yīng)計算器36的一個輸入端相連。感知加權(quán)濾波器32的輸出端承載著信號w[n],與減法器38的第一個輸入端相連。零輸入響應(yīng)濾波器34的輸出端承載著輸出信號z[n]與減法器38的第二個輸入端相連。
減法器38的輸出端承載著一個目標信號t[n],與自適應(yīng)碼本濾波設(shè)備40的一個輸入端相連,與自適應(yīng)碼本預(yù)選設(shè)備42的一個輸入端相連,還與減法器41的一個輸入端相連。沖激響應(yīng)計算器36的輸出端承載著輸出信號h[n],與自適應(yīng)碼本選擇設(shè)備40的一個輸入端相連,與自適應(yīng)碼本預(yù)選設(shè)備42的一個輸入端相連,與固定碼本選擇設(shè)備44的一個輸入端相連,還與激勵信號選擇設(shè)備46的一個輸入端相連。激勵信號選擇設(shè)備46也可叫做固定譯碼本預(yù)選設(shè)備。自適應(yīng)碼本預(yù)選設(shè)備42的一個輸出端承載著輸出信號ia[k],與自適應(yīng)碼本選擇設(shè)備40的一個輸入端相連。自適應(yīng)碼本預(yù)選設(shè)備42、自適應(yīng)碼本選擇設(shè)備40、固定碼本預(yù)選設(shè)備46、固定碼本選擇設(shè)備44一起組合成選擇設(shè)備45。
自適應(yīng)碼本選擇設(shè)備的第一個輸出端承載著輸出信號Ga,與多路復(fù)用器59的第二個輸入端相連,還與乘法器52的第一個輸入端相連。自適應(yīng)碼本選擇設(shè)備的第二個輸出端承載著輸出信號Ia,與多路復(fù)用器59的第三個輸入端相連,還與自適應(yīng)碼本48的一個輸入端相連。自適應(yīng)碼本選擇設(shè)備40的第三個輸出端承載著輸出信號p[n],與減法器41的第二個輸入端相連。
減法器41的輸出端承載著輸出信號e[n],與固定碼本選擇設(shè)備44的第二個輸入端相連,還與固定碼本預(yù)選設(shè)備46的第二個輸入端相連。固定碼本預(yù)選設(shè)備46的一個輸出端承載著輸出信號if[k],與固定碼本選擇設(shè)備44的第三個輸入端相連。固定譯碼本選擇設(shè)備的第一個輸出端承載著輸出信號Gf,與乘法器54的第一個輸入端相連,還與多路復(fù)用器59的第四個輸入端相連。固定碼本選擇設(shè)備44的第二個輸出端承載著輸出信號P,與激勵發(fā)生器50的第一個輸入端相連,還與多路復(fù)用器59的第五個輸入端相連。固定碼本選擇設(shè)備44的第三個輸出端承載著輸出信號L[k],與激勵發(fā)生器50的第二個輸入端相連,還與多路復(fù)用器59的第六個輸入端相連。激勵發(fā)生器50的一個輸出端承載著輸出信號yf[n],與乘法器54的第二個輸入端相連。自適應(yīng)譯碼本48的一個輸出端承載著輸出信號ya[n],與乘法器52的第二個輸入端相連。乘法器52的一個輸出端與加法器56的第一個輸入端相連。乘法器54的一個輸出端與加法器56的第二個輸入端相連。加法器56的一個輸出端承載著輸出信號yaf[n],與內(nèi)存更新單元58相連,后者與自適應(yīng)碼本48連接。
多路復(fù)用器59的一個輸出端構(gòu)成編碼器4的輸出。
在解釋根據(jù)圖2得到的本編碼器實施例時,基于如下假設(shè)輸入信號是一個寬帶話音信號,其頻帶范圍為0-7kHz。還假設(shè)了樣本速率為16kHz。然而,可以看出,本發(fā)明不僅僅限于應(yīng)用于這類信號。
在成幀設(shè)備20中,話音信號i[n]被分成連續(xù)的N個信號樣本x[n],也叫做幀。這樣的一個幀持續(xù)時間典型值為10-30ms。通過使用高通濾波器22,成幀信號中的直流成分被濾掉,由此在高通濾波器22的輸出端可以得到無直流成分的信號。通過線性預(yù)測分析器24,可確定K個線性預(yù)測系數(shù)a[k]。對于窄帶話音信號,K的典型值在8到12之間;對于寬帶話音信號,K的典型值在16到20之間。然而,有的K值也可能在此典型值范圍之外。在本文后面將解釋這些線性預(yù)測系數(shù)在合成濾波器中的使用。
為計算預(yù)測系數(shù)a[k],首先,信號s[n]以漢明窗被加權(quán),得到一個加權(quán)的信號sw[n];然后預(yù)測系數(shù)a[n]通過以下步驟從信號sw[n]中得到先計算自動相關(guān)系數(shù),隨后執(zhí)行Levinson-Durbin算法,用來循環(huán)確定a[k]值。第一個循環(huán)步驟的結(jié)果被存為af,用于降低了復(fù)雜度的合成濾波器。另一方面,可以把第二個循環(huán)步驟的結(jié)果af1和af2,作為給降低復(fù)雜度的合成濾波器的參數(shù)。可以看出,如果使用了一個二階的降低復(fù)雜度的合成濾波器,可能僅僅進行預(yù)選擇就行了。這樣可以免除使用一個全復(fù)雜度的合成濾波器濾波。為消除預(yù)測參數(shù)a[k]所代表的譜線包絡(luò)中的極端銳峰值,要進行擴展帶寬的操作,就是將每個系數(shù)a[k]乘以rk。修正后的預(yù)測系數(shù)ab[k]變換成對數(shù)區(qū)系數(shù)r[k]。
為了減少用于發(fā)送對數(shù)區(qū)系數(shù)到接收器的比特數(shù)目,量化器26以一種不均勻的方式量化對數(shù)區(qū)系數(shù)。量化器26產(chǎn)生一個信號C[k],用于指示對數(shù)區(qū)系數(shù)的量化程度。
為了給合成濾波器選擇最佳激勵序列,幀s[n]被分成S個子幀。為實現(xiàn)平滑濾波器變遷,內(nèi)插器28在當前系數(shù)C[k]和上一個系數(shù)Cp[k]之間為每一個子幀進行線性內(nèi)插,并把相應(yīng)的對數(shù)區(qū)系數(shù)轉(zhuǎn)換成預(yù)測參數(shù)aq[k][s]。s等于當前子幀的索引。
合成編碼器在進行解析時,將一個話音信號幀(或子幀)與一個多元合成話音幀相比較,該多元合成話音幀中每一個與通過合成濾波器濾波得到的不同激勵序列相對應(yīng)。該合成濾波器的轉(zhuǎn)移函數(shù)為1/A(z),其中A(z)等于A(z)=1-Σk=0P-1aq[k][s]·z-k-1----(1)]]>在(1)式中,P是預(yù)測次序,k是運行指數(shù),z-1是整體時延運算子。
為了照顧到人類聽覺系統(tǒng)的感知特性,用一個感知加權(quán)濾波器將話音幀和合成話音幀之間的偏差濾掉,這個過濾過程的轉(zhuǎn)移函數(shù)為A(z)/A(z/γ)。γ是一個常數(shù),通常其值大約為0.8。所選擇的最佳激勵信號是這樣一個信號它使感知加權(quán)濾波器輸出信號的功率最小。
對于大部分話音編碼來說,感知加權(quán)濾波器在比較操作之前進行操作。這意味著,話音信號要被一個濾波器進行過濾,濾波器的轉(zhuǎn)移函數(shù)為A(z)/A(z/γ)。還意味著該合成濾波器要被一個修正后的合成濾波器所替代,轉(zhuǎn)移函數(shù)為1/A(z/γ)??梢钥闯觯@里還使用了其它類型的感知加權(quán)濾波器,例如就使用了一個轉(zhuǎn)移函數(shù)為A(z/γ1)/A(z/γ2)的感知加權(quán)濾波器。感知加權(quán)濾波器32根據(jù)上面討論過的轉(zhuǎn)移函數(shù)A(z)/A(z/γ),對話音信號進行濾波。感知加權(quán)濾波器32的參數(shù)每一個子幀都被內(nèi)插預(yù)測參數(shù)aq[k][s]更新。可以看出,本發(fā)明的范圍包括所有不同轉(zhuǎn)移函數(shù)的感知加權(quán)濾波器,還包括感知加權(quán)濾波器上的所有位置。
修正后的合成濾波器的輸出信號也依賴于從以前子幀中選擇的激勵序列。依賴于當前激勵序列和以前激勵序列的合成話音信號部分可以被分離。因為零輸入濾波器的輸出信號依賴于當前激勵序列,該信號可以被移到話音信號通路,如對圖2中濾波器34所進行的一樣。
因為修正后的合成濾波器的輸出信號被從感知加權(quán)話音信號中減去,零輸入響應(yīng)濾波器34的信號也被從感知加權(quán)話音信號中扣除。以上扣除由減法器38來減去。在減法器38的輸出端,可以得到目標信號t[n]。
編碼器4包含一個本地解碼器30。本地解碼器30包含一個自適應(yīng)碼本48,該自適應(yīng)碼本用來隨后存儲多個先前被選擇的激勵序列。自適應(yīng)碼本48是用自適應(yīng)碼本索引Ia尋址的。自適應(yīng)碼本48的輸出信號ya[n]被乘法器52放大,增益系數(shù)為Ga。本地解碼器30還包含激勵發(fā)生器50,該激勵發(fā)生器用來產(chǎn)生多個的預(yù)定激勵序列。激勵序列yf[n]是一個所謂的規(guī)則脈沖激勵序列,它包含多個激勵樣本,這些樣值被一些值為0的樣值所隔開。參數(shù)PH(相位)代表該激勵樣本的位置。該激勵樣本的取值可以是-1、0和+1中的一個。激勵樣本的值由變量L[k]給出。激勵發(fā)生器50的輸出信號yf[n]被乘法器54放大,增益系數(shù)為Gf。乘法器52和54的輸出信號被加法器56相加,得到一個激勵信號yaf[n]。信號yaf[n]被存儲在自適應(yīng)碼本48中,用于下一個子幀。
自適應(yīng)碼本預(yù)選設(shè)備42中確定一組縮減了的激勵序列。這些序列的系數(shù)ia[k]被傳到自適應(yīng)碼本選擇設(shè)備40。在自適應(yīng)碼本預(yù)選設(shè)備42中,使用了一個根據(jù)本發(fā)明的一階的降低了復(fù)雜度的合成濾波器。另外,這里并沒有考慮到所有的激勵序列,而只是一個數(shù)目減少了的激勵序列至少在兩個置位上相互移位。移位的范圍從2到5是一個比較號的選擇。在這里既把合成濾波器的復(fù)雜度降低了,又把要考慮的激勵序列的數(shù)目減少了,這樣就大大降低了編碼器的復(fù)雜度。
自適應(yīng)碼本預(yù)選設(shè)備40的作用是從被預(yù)選過的激勵序列中得到最佳激勵序列。在該選擇中,使用了一個全復(fù)雜度的合成濾波器,只試驗了少量的位于被預(yù)選過的激勵序列附近的激勵序列。這里被試驗的激勵序列間的位移比預(yù)選擇時的位移要小。根據(jù)本發(fā)明得到的一個編碼器使用的位移為1。由于涉及到的激勵序列數(shù)目較少,最終選擇的額外復(fù)雜度較低。自適應(yīng)碼本選擇設(shè)備還產(chǎn)生一個合成信號p[n],它通過加權(quán)合成濾波器對存儲的激勵序列進行濾波再將合成信號乘上值Ga。
減法器41從目標信號t[n]中減去信號p[n],得到一個不同的信號e[n]。在固定碼本預(yù)選設(shè)備46中,從信號e[n]中得到一個經(jīng)過后向濾波的目標信號tf[n]。從所有可能的激勵序列中,預(yù)選出與被濾波的目標信號最相近的激勵序列,這些被預(yù)選出的激勵序列的系數(shù)if[k]被送到固定碼本選擇設(shè)備44中。固定碼本選擇設(shè)備44中從固定碼本預(yù)選設(shè)備46預(yù)選出的激勵序列中找出最佳激勵信號。在尋找最佳激勵信號時,使用了一個全復(fù)雜度的合成濾波器。信號C[k]、Ga、Ia、Gf、PH和L[k]被復(fù)用器59復(fù)用成一個單一的輸出信號流。
沖激響應(yīng)計數(shù)器36根據(jù)以下遞歸式從預(yù)測參數(shù)aq[k][s]中計算出沖激響應(yīng)值h[n]h[n]=0;n<0h[n]=1;n=0(2)h[n]=Σi=0P-1h[n-l-i]·aq[i][s]γi+1;l≤n<Nm]]>在(2)式中,Nm是沖激響應(yīng)要求的長度。在本系統(tǒng)中,該長度對于子幀中的樣本數(shù)。
在圖3的自適應(yīng)碼本預(yù)選設(shè)備42中,目標信號t[n]被施加到時間反相器50的一個輸入端。時間反相器50的輸出端與零狀態(tài)濾波器52的一個輸入端相連。零狀態(tài)濾波器52的輸出端與時間反相器54的一個輸入端相連。時間反相器54的輸出端與互相關(guān)器56的第一個輸入端相連?;ハ嚓P(guān)器56的一個輸出端與除法器64的第一個輸入端相連。
自適應(yīng)譯碼本48的一個輸出端與互相關(guān)器56的第二個輸入端相連,還通過選擇開關(guān)49與降低了復(fù)雜度的零狀態(tài)合成濾波器60的一個輸入端相連。該選擇開關(guān)的另一端與內(nèi)存更新單元58的一個輸出端相連。降低了復(fù)雜度的合成濾波器60的輸出端與能量估計器62的一個輸入端相連。能量估計器62的一個輸出端與能量表63的一個輸入端相連。能量表63的一個輸出端與除法器64的第二個輸入端相連。除法器64的輸出端與峰值檢測器65的一個輸入端相連,峰值檢測器65的輸出端與選擇器66的一個輸入端相連。選擇器66的第一個輸出端自適應(yīng)碼本48的一個輸入端相連,用來選擇不同的激勵序列。選擇器66的第二個輸出端承載著指示從自適應(yīng)碼本中得到的被選擇的激勵序列的一個信號,與自適應(yīng)譯碼本48的一個選擇輸入端相連,還與能量表63的一個選擇輸入端相連。
自適應(yīng)碼本預(yù)選設(shè)備42用來從自適應(yīng)碼本中選擇激勵序列和相應(yīng)的增益系數(shù)ga。該操作把誤差信號ε降低到最小,ε等于
在(3)式中,Nm是在一個子幀中的樣本數(shù),y[l][n]是零狀態(tài)合成濾波器對激勵序列ca[l][n]的響應(yīng)。用(3)式對ga求導,令導數(shù)為0,可得出ga的最佳值ga=Σn=0Nm-1t[n]·y[l][n]Σn=0Nm-1y2[l][n]---(4)]]>把(4)代入(3)得到ε
使ε最小化相當于讓(5)式中第二項f[l]最大化并超過1。f[l]也可寫成f[l]=[Σn=0Nm-1t[n]·y[l][n]]2Σn=0Nm-1y2[l][n]=[Σn=0Nm-1t[n]·(Σi=0Nm-1ca[l][i]·h[n-i])]2Σn=0Nm-1y2[l·][n]---(6)]]>在(6)中,h[n]是圖3中濾波器52的沖激響應(yīng),它根據(jù)(2)式算出。(6)也可寫成f[l]=[Σi=0Nm-1ca[l][i]·(Σn=0Nm-1t[n]·h[n-i])]2Σn=0Nm-1y2[l][n]=[Σi=0Nm-1ca[l][i]·ta[i]]2Σn=0Nm-1y2[l][n]---(7)]]>(7)式用于自適應(yīng)碼本的預(yù)選。使用(7)式的好處是對于所有的碼本項目,僅需一個濾波操作就可確定(7)的分子。使用(6)式則對于預(yù)選擇中涉及到的每一個譯碼本記錄,都要進行一次濾波操作。為確定(7)式中分母,需要對所有譯碼本項目進行濾波,在這里使用了一個降低復(fù)雜度的合成濾波器。
f[l]的分母Ea是激勵序列的能量,涉及降低復(fù)雜度的合成濾波器60的濾波。實驗顯示,單個濾波器系數(shù)變化很慢,每幀僅更新一次。所以對于每幀,可以僅對激勵序列能量計算一次,但在這里需要稍微修改選擇過程。為了從自適應(yīng)碼本中預(yù)選激勵序列,由(7)推導出的量度rap[i·Lm+l]根據(jù)以下公式計算得到rap[i·Lm+L]=[Σn=0Nm-1ca[Lmin+i·Lm+l·Sa-n]·ta[n]]2Ea(i·Lm+l)----(8)]]>在(8)式中,i和l是運算參數(shù),Lmin是要考慮的話音信號的最小可能的高音周期,Nm是每個子幀的樣本數(shù),Sa是后續(xù)激勵序列之間的位移,Lm是一個常數(shù),用于定義每個子幀存儲的能量值的個數(shù),它等于1+(Nm-1)/Sa。(8)式中搜索的參數(shù)范圍是0≤l<Lm以及0≤i<S。搜索總是包括第一個碼本項目,該碼本項目與先前寫在自適應(yīng)碼本48中的一個激勵序列的起始部分相對應(yīng)。這樣就可以對存儲在能量表63中的上次計算出的能量值Ea重復(fù)使用。
在更新自適應(yīng)碼本48時,被選擇的上一個子幀的激勵信號yaf[n]被送到存儲器更新單元58中。選擇開關(guān)49處于0位置,當前可得到的激勵序列被降低復(fù)雜度的合成濾波器60所濾波。當前濾波得到的激勵序列的能量值被存儲在Lm內(nèi)存位置。內(nèi)存63中已有的能量值則往下移。最早的Lm能量值則從內(nèi)存63中溢出,因為在自適應(yīng)碼本中不再有相應(yīng)的激勵序列。目標信號ta[n]由時間反向器50、濾波器52和時間反向器54的組合體計算得到?;ハ嚓P(guān)器56計算(8)的分子,除法器64則執(zhí)行(8)式中分子與分母的相除。峰值檢測器65確定碼本系數(shù),碼本系數(shù)給出了(8)式的最大值Pa。選擇器66把由峰值檢測器65發(fā)現(xiàn)的Pa序列的相鄰激勵序列的系數(shù)相加,并把所有這些系數(shù)送到自適應(yīng)碼本40中。
在幀的中部(即已通過S/2的子幀),af值被更改。隨后,選擇開關(guān)推到1位置,并且與涉及自適應(yīng)碼本預(yù)選擇的激勵序列相對應(yīng)的能量值被重新計算,并存儲于內(nèi)存63中。
在圖4的自適應(yīng)碼本選擇器40中,自適應(yīng)碼本48的一個輸出端,與零狀態(tài)合成濾波器70(全復(fù)雜度)的一個輸出端相連。合成濾波器70從計算器36中接收到它的脈沖響應(yīng)參數(shù)。合成濾波器70的輸出與互相關(guān)器72的一個輸入端相連,還與能量估計器74的一個輸入端相連。目標信號t[n]被施加到互相關(guān)器72的第二個輸入端。互相關(guān)器72的一個輸出端與除法器76的第一個輸入端相連。能量估計器74的一個輸出端與除法器76的第二個輸入端相連。除法器76的輸出端與選擇器78的第一個輸入端相連。被預(yù)選的激勵序列的系數(shù)ia[k]被施加到選擇器78的第二個輸入端。選擇器的第一個輸出端與自適應(yīng)碼本48的一個選擇輸入端相連。選擇器78的另外兩個輸出端提供輸出信號Ga和Ia。
最佳激勵序列的選擇就是要使ra[r]項最大化,上述ra[r]項等于ra[r]=[Σn=0Nm-1t[n]·y[r][n]]2Σn=0Nm-1y2[r][n]---(9)]]>
(9)式相當于(5)式中的f[l]項。信號y[r][n]由濾波器70從激勵序列中得到。每次要對一個激勵序列進行濾波之前,濾波器70的初始狀態(tài)被設(shè)置成0。假設(shè)變量ia[r]以系數(shù)遞增的順序包含了被預(yù)選的激勵序列和它們相鄰序列的系數(shù)。這就是說,ia[r]包含了Pa隨后的系數(shù)組,這里的每一個系數(shù)組都包括Sa個連續(xù)的自適應(yīng)碼本系數(shù)。對于帶有系數(shù)組的第一個系數(shù)的碼本項目,y[r·Sa][n]根據(jù)下式計算得到y(tǒng)[r·Sa][n]=Σl=0nh[n-l]·ca[ia[r·Sa]-l];0≤n<Nm---(10)]]>因為除了一個以外的其它相同激勵樣本都與計算y[r·Sa+l][n]有關(guān),所以y[r·Sa+l][n]的值可以由y[r·Sa][n]遞推得到。該遞推可應(yīng)用到所有在系數(shù)組有系數(shù)的激勵序列。該遞推可概括成下式y(tǒng)[r·Sa+i+l][n]=y(tǒng)[r·Sa+i][n-l]+h[n]·ca[ia[r·Sa+i+l]](11)互相關(guān)器72根據(jù)濾波器70的輸出信號和目標信號t[n]確定(9)式的分子。能量估計器74確定(9)式的分母。在除法器的輸出端可得到(9)式的結(jié)果。選擇器78使(9)式的計算用于所有被預(yù)選的系數(shù),并存儲自適應(yīng)碼本48的最佳系數(shù)Ia。隨后,選擇器根據(jù)下式計算增益值gg=Σn=0Nm-1t[n]·y~[n]Σn=0Nm-1y~2[n]---(12)]]>在(12)式中,y是濾波器70對被選擇的系數(shù)為Ia的激勵序列的響應(yīng)。增益系數(shù)g被以一種不均勻量化操作量化為量化增益系數(shù)Ga,它在選擇器78的輸出端得到。選擇器78還輸出自適應(yīng)碼本對合成信號的影響p[n],p[n]由下式得到p[n]=Ga·y~[n]---(13)]]>在圖5的固定碼本預(yù)選設(shè)備中,信號e[n]被施加到后向濾波器80的有關(guān)輸入端。后向濾波器80的輸出端與互相關(guān)器86的第一個輸入端相連,還與相位選擇器82的一個輸入端相連。相位選擇器的輸出端與幅度選擇器84的一個輸入端相連。幅度選擇器84的輸出端與互相關(guān)器86的第二個輸入端相連,還與一個降低復(fù)雜度的合成濾波器88的一個輸入端相連。降低復(fù)雜度的合成濾波器88的輸出端與能量估計器90的一個輸入端相連。
互相關(guān)器86的輸出端與除法器92的第一個輸入端相連。能量估計器90的輸出端與除法器92的第二個輸入端相連。除法器92的輸出端與選擇器94的一個輸入端相連。在選擇器的輸出端可以得到固定碼本的預(yù)選激勵序列的系數(shù)if[k]。
后向濾波器80從信號e[n]中計算出被后向濾波的信號tf[n]。該后向濾波器的操作與圖3中自適應(yīng)碼本預(yù)選設(shè)備42中有關(guān)的后向濾波操作一樣。固定碼本被安排成所謂的三進制RPE(規(guī)則脈沖激勵)碼本,即一個包含多個等距離間隔的脈沖的譯碼本,這些脈沖被幾個預(yù)定的零值所隔開。該三進制RPE碼本有Nm個脈沖,其中Np個脈沖幅度為+1、0和-1中的一個。這些Np個脈沖位于一個規(guī)則的柵格上,該柵格由相位PH和脈沖展寬D定義,且0≤PH<D。柵格位置pos由PH+D·l給出,且0≤l<Np。余下的Nm-Np個脈沖為0。上面定義的三進制RPE碼本有D·(3Np-l)個項目。為降低復(fù)雜度,為每個子幀產(chǎn)生一個包含Nf個項目子集的本地RPE碼本。該本地的RPE碼本中的所有激勵序列具有相同的相位PH,這個相位由相位選擇器82搜索間隔為0≤PH<D的PH值而確定的。它使下式最大化Σl=0Np-1|tf[PH+D·l]|----(14)]]>在幅度選擇器中填充兩個數(shù)組。第一個數(shù)組為amp,它包含變量amp[l],amp[l]等于sign(tf[PH+D·l]),在這里sign是符號函數(shù)。第二個數(shù)組為pos[l],它包含一個標志,指示|tf[PH+D·l]|的Nz個最大值的標志。對于這些值,激勵脈沖不允許為0值。隨后,一個二維數(shù)組cf[k][n]被Nf個激勵序列填充,這些激勵序列相位PH和樣本值分別滿足數(shù)組amp和pos內(nèi)容的要求。這些激勵序列與殘余序列非常相似,在這里由后向濾波器信號tf[n]所代表。
對候選激勵序列的選擇基于的原理與自適應(yīng)碼本預(yù)選設(shè)備42中所用的原理一樣?;ハ嚓P(guān)器86計算出向濾波器信號tf[n]和被預(yù)選的激勵序列之間的相關(guān)值。合成濾波器88(降低復(fù)雜度的)用來對激勵序列進行濾波,能量估計器90計算被濾波的激勵序列相應(yīng)的能量。除法器將相關(guān)值除以激勵序列相應(yīng)的能量。選擇器94選擇對應(yīng)于除法器92輸出信號中Pf個最大值的激勵序列,并把這些候選激勵序列的系數(shù)存儲于數(shù)組if[k]中。
在圖6的固定碼本選擇設(shè)備44中,縮減的譯碼本94的一個輸出端與合成濾波器96的一個輸入端相連。合成濾波器96的輸出端與互相關(guān)器98的第一個輸入端相連,還與能量估計器100的一個輸入端相連。信號e[n]被施加到互相關(guān)器98的第二個輸入端上?;ハ嚓P(guān)器98的輸出端與乘法器108的第一個輸入端相連,還與除法器102的第一個輸入端相連。能量估計器100的輸出端與除法器102的第二個輸入端相連,還與乘法器112的一個輸入端相連。除法器102的輸出端與量化器104的一個輸入端相連。量化器104的輸出端與乘法器105的一個輸入端相連,還與平方器110相連。
乘法器105的輸出端與乘法器108的第二個輸入端相連,平方器110的輸出端與乘法器112的第二個輸入端相連。乘法器108的輸出端與減法器114的第一個輸入端相連。乘法器112的輸出端與減法器114的第二個輸入端相連。減法器114的輸出端與選擇器116的一個輸入端相連。選擇器116的第一個輸出端與縮減的碼本94的一個選擇輸入端相連。選擇器116的三個輸出端分別承載著代表固定碼本搜索的最后結(jié)果的信號P,L[k],Gf。
在固定碼本選擇設(shè)備42中執(zhí)行一個閉合環(huán)路搜索過程,用來搜索最佳激勵序列。這個搜索包括確定標記r,該r值使表達式rf[r]值最大。rf[r]等于rf[r]=2·Gf·Σn=0Nm-1e[n]·y[r][n]-GF2·Σn=0Nm-1y2[r][n]---(15)]]>在(15)式中,y[r][n]是被濾波的激勵序列,Gf是最佳增益系數(shù)g的量化形式,g等于g=Σn=0Nm-1e[n]·y[r][n]Σn=0Nm-1y2[r][n]---(16)]]>
展開ε的表達式可得到(15)式,刪掉與r無關(guān)的項,用量化增益Gf取代最佳增益。信號y[r][n]可根據(jù)下式計算y[r][n]=Σj=0nh[n-j]·cf[if][r][j];0≤n<Nm---(17)]]>因為對于j=P+D·l(0≤l<Np)(17),cf[if[r]][j]僅有非0值,因此(17)可簡化為y[r][n]=Σl=0n-PDh[n-P-D·l]·cf[r][P+D·l]---(18)]]>濾波器96確定(18)式。(15)式的分子部分由互相關(guān)器98確定,分母部分由能量估計器100來計算。在除法器102的輸出端可得到g值。g值被量化器104量化成Gf。在乘法器108的輸出端,可得到(15)式的第一項,在乘法器112的輸出端可得到(15)式第二項。在減法器114的輸出端可得到表達式rf[r]。選擇器116選擇使(15)式值最大的r值。并把增益Gf、非0激勵脈沖的幅度L[k]和激勵序列的最佳相位PH送到它的輸出端。
在圖7中,解碼器14的輸入信號被施加到解復(fù)用器118的一個輸入端。解復(fù)用器118的第一個輸出端承載著信號C[k]與內(nèi)插器130的一個輸入端相連。解復(fù)用器118的第二個輸出端承載著信號Ia與自適應(yīng)碼本120的一個輸入端相連。自適應(yīng)碼本120的一個輸出端與乘法器124的第一個輸入端相連。解復(fù)用器118的第三個輸出端承載著信號Ga與乘法器124的第二個輸入端相連。解復(fù)用器118的第四個輸出端承載著信號Gf與乘法器126的第一個輸入端相連。解復(fù)用器118的第五個輸出端承載著信號PH與激勵發(fā)生器122的第一個輸入端相連。解復(fù)用器118的第六個輸出端承載著信號L[k]與激勵發(fā)生器122的第二個輸入端相連。激勵發(fā)生器的一個輸出端與乘法器126的第二個輸入端相連。乘法器124的輸出端與加法器128的第一個輸入端相連,乘法器126的輸出端與加法器128的第二個輸入端相連。
加法器128的輸出端與合成濾波器132的第一個輸入端相連。合成濾波器的輸出端與后置濾波器134的第一個輸入端相連。內(nèi)插器130的輸出端與合成濾波器132的第二個輸入端相連,還與后置濾波器134的第二個輸入端相連。在后置濾波器134的輸出端可得到解碼器的輸出信號。
自適應(yīng)碼本120根據(jù)標記Ia為每個子幀產(chǎn)生一個激勵序列。上述激勵信號被乘法器124乘上增益系數(shù)Ga。激勵發(fā)生器122根據(jù)相位PH和幅度值L[k]為每個子幀產(chǎn)生一個激勵序列。從激勵發(fā)生器122得到的激勵序列被乘法器126乘上增益系數(shù)Gf。乘法器124和126的輸出信號被加法器128相加,得到完整的激勵信號。該激勵信號被反饋到自適應(yīng)碼本120,以修改自適應(yīng)碼本120的內(nèi)容。在內(nèi)插預(yù)測參數(shù)aq[k][s]的控制下,合成濾波器132從加法器128輸出的激勵信號中得到一個合成話音信號,對于每一個子幀,內(nèi)插的預(yù)測參數(shù)aq[k][s]都要被更新。內(nèi)插的預(yù)測參數(shù)aq[k][s]是通過內(nèi)插參數(shù)C[k],并把它轉(zhuǎn)變成預(yù)測參數(shù)而得到的。后置濾波器134用來提高話音信號的感知質(zhì)量。它的轉(zhuǎn)移函數(shù)為F(z)=G[s]·l-Σi=0P-10.65i+1·aq[i][s]·Z-(i+1)l-Σi=0P-10.75i+1·aq[i][s]·z-(i+1)·(1-0.3·z-1)---(19)]]>在(19)式中,G[s]是一個增益系數(shù),該增益系數(shù)用來補償由于后置濾波器134的濾波功能而帶來的不同的衰減。
權(quán)利要求
1.包含一個發(fā)送器的傳輸系統(tǒng),發(fā)送器通過一個傳輸信道發(fā)送一個輸入信號到一個接收器,發(fā)送器包含一個編碼器,編碼器帶有一個器激勵信號發(fā)生器,激勵信號發(fā)生器用來從一個主序列中得到多個激勵序列,該多個激勵序列是主序列的部分成分,上述部分成分在幾個位置之間被相互移位,用來選擇一個激勵序列的選擇裝置,該激勵序列在一個合成信號和一個目標信號之間產(chǎn)生一個最小誤差,合成信號從上述激勵序列中得到,目標信號從輸入信號中得到,發(fā)送器被用來發(fā)送一個信號給接收器,該信號代表一個最佳激勵序列,接收器包含一個解碼器,解碼器帶有一個器激勵信號發(fā)生器,激勵信號發(fā)生器用來從代表最佳激勵序列的信號中得到被選擇的激勵序列,接收器還包含一個合成濾波器,合成濾波器用來從激勵信號抽樣中的最佳序列中得到一個合成信號,其特征在于,該選擇裝置用來從主序列中得到至少一個其它激勵序列,其它激勵序列相對被選擇的序列被移位,移位距離小于激勵序列間的偏移;其特征還在于,該選擇裝置用來從被選擇的激勵序列中和至少一個其它的激勵序列中選擇,該激勵序列在合成信號和目標信號間產(chǎn)生一個最小誤差,合成信號從上述其它的激勵序列中得到,目標信號從輸入信號中得到。
2.根據(jù)權(quán)利要求1的傳輸系統(tǒng),其特征在于,兩個激勵序列間的偏移在兩個到五個位置之間。
3.根據(jù)權(quán)利要求1和2的傳輸系統(tǒng),其特征在于,其編碼器含有一個合成濾波器,該合成濾波器用來從上述激勵序列中得到一個合成信號,上述合成濾波器相對解碼器中的合成濾波器而言,復(fù)雜度低一些。
4.根據(jù)權(quán)利要求3的傳輸系統(tǒng),其特征在于,其選擇裝置被安排選擇至少一個其它激勵序列,其特征在于編碼器含有一個額外的合成濾波器,該合成濾波器用來從至少兩個激勵序列中得到附加的合成信號,其特征還在于,選擇裝置被安排從至少兩個激勵序列中選擇激勵序列作為被選擇的激勵信號,使得相應(yīng)的附加合成輸入信號和參考信號之間得到一個最小誤差,參考信號從輸入信號中得到。
5.發(fā)送一個輸入信號的發(fā)送器,包含一個編碼器,編碼器帶有一個激勵信號發(fā)生器,激勵信號發(fā)生器用來從一個主序列中得到多個激勵序列,該多個激勵序列是主序列的部分成分,上述部分成分在幾個位置之間相互移位,選擇裝置用來選擇一個激勵序列使得在一個合成信號和一個目標信號之間產(chǎn)生一個最小誤差,合成信號從上述激勵序列中得到,目標信號從輸入信號中得到,發(fā)送器被用來發(fā)送一個代表最佳激勵序列的信號,其特征在于,該選擇裝置用來從主序列中得到至少一個其它激勵序列,其它激勵序列相對被選擇的序列移位,移位距離小于激勵序列間的偏移;其特征還在于,該選擇裝置用來從被選擇的激勵序列中和至少一個其它的激勵序列中選擇一個激勵序列作為最佳序列,該激勵序列在合成信號和目標信號間產(chǎn)生一個最小誤差,合成信號從上述其它的激勵序列中得到,目標信號從輸入信號中得到。
6.根據(jù)權(quán)利要求5的傳輸系統(tǒng),其特征在于,兩個激勵序列間的偏移在兩個到五個位置之間。
7.包含一個激勵信號發(fā)生器的編碼器,激勵信號發(fā)生器用來從一個主序列中得到多個激勵序列,該多個激勵序列是主序列的部分成分,上述部分成分在幾個位置之間相互移位,選擇裝置用來選擇一個激勵序列使得在一個合成信號和一個目標信號之間產(chǎn)生一個最小誤差,合成信號從上述激勵序列中得到,目標信號從輸入信號中得到,用來產(chǎn)生一個代表最佳激勵序列的編碼器,其特征在于,該選擇裝置用來從主序列中得到至少一個其它激勵序列,其它激勵序列相對被選擇的序列被移位,移位距離小于激勵序列間的偏移,其特征還在于,該選擇裝置用來從被選擇的激勵序列中和至少一個其它的激勵序列中選擇激勵序列作為最佳序列,該激勵序列在合成信號和目標信號間產(chǎn)生一個最小誤差,合成信號從上述其它的激勵序列中得到,目標信號從輸入信號中得到。
8.根據(jù)權(quán)利要求7的編碼器,其特征在于,兩個激勵序列間的偏移在兩個到五個位置之間。
9.通過一個傳輸信道發(fā)送一個輸入信號的方法,該方法包括從一個主序列中得到多個激勵序列,該多個激勵序列是主序列的部分成分,上述部分成分在幾個位置之間相互移位。選擇裝置用來選擇一個激勵序列使得在一個合成信號和一個目標信號之間產(chǎn)生一個最小誤差,合成信號從上述激勵序列中得到,目標信號從輸入信號中得到;經(jīng)傳輸介質(zhì)發(fā)送一個代表最佳激勵序列的信號,以從傳輸介質(zhì)收到的信號中得到被選擇的激勵序列,并從激勵信號抽樣的最佳激勵序列中得到一個合成信號;其特征在于,該方法包括從主序列中得到至少一個其它激勵序列,其它激勵序列相對被選擇的序列被移位,移位距離小于激勵序列間的偏移;其特征還在于,該方法包括從被選擇的激勵序列中和從至少一個其它的激勵序列中選擇激勵序列作為最佳序列,該激勵序列在合成信號和目標信號間產(chǎn)生一個最小誤差,合成信號從上述其它的激勵序列中得到,目標信號從輸入信號中得到。
10.對一個輸入信號編碼的方法,包括從一個主序列中得到多個激勵序列,該多個激勵序列是主序列的部分成分,上述部分成分在幾個位置之間被相互移位,選擇一個激勵序列使得在一個合成信號和一個目標信號之間產(chǎn)生一個最小誤差,合成信號從上述激勵序列中得到,目標信號從輸入信號中得到,并產(chǎn)生一個代表一個最佳激勵序列的信號,其特征在于該方法包括從主序列中得到至少一個其它激勵序列,其它激勵序列相對被選擇的序列移位,移位距離小于激勵序列間的偏移;其特征還在于,該選擇方法包括從被選擇的激勵序列中和至少一個其它的激勵序列中選擇激勵序列作為最佳序列,該激勵序列在合成信號和目標信號間產(chǎn)生一個最小誤差,合成信號從上述其它的激勵序列中得到,目標信號從輸入信號中得到。
全文摘要
在一個CELP編碼器中,對一個目標信號和多個合成信號作了比較。這個合成信號是這樣得到的:用一個合成濾波器對從一個一維碼本中得到的多個激勵序列進行濾波,該合成濾波器的參數(shù)從目標信號中得到。這樣就選擇了一個激勵信號,該激勵信號在上述目標信號和合成信號之間產(chǎn)生一個最小誤差。對最佳激勵信號的搜索需要相當復(fù)雜的計算。為降低復(fù)雜度,對少量激勵序列進行預(yù)選擇,這個預(yù)選擇是僅對每L
文檔編號G10L19/04GK1189264SQ97190355
公開日1998年7月29日 申請日期1997年1月31日 優(yōu)先權(quán)日1996年2月15日
發(fā)明者F·武珀曼, F·M·J·德邦特 申請人:菲利浦電子有限公司