自適應差分脈碼調製

自適應差分脈碼調製

自適應差分脈碼調製是指具有自適應預測和量化功能的差分脈碼調製。其量化器的量化級(階距)能隨信號值變化作自適應調整,以提高量化信噪比;同時其預測器的預測係數能隨信號統計特性的變化作自適應調整,以減小預測誤差,降低傳輸誤碼率。CCITTG.721建議規定了64kb/s和32kb/sADPCM的國際標準。每樣值8b的64kb/s話音PCM經轉換成線性PCM碼後,可被壓縮為每差分樣值4b的32kb/sDPCM數據。為適應不同統計特性的話音和中、低速率已調話帶數據的透明傳送,還規定採用雙標度因子的自適應等措施。其後CCITTG.723建議將速率擴展到24kb/s和40kb/s;G.726建議則用來代替G.721和G.723,形成了24,32,40kb/sADPCM標準,並建議採用一種稱為嵌人式ADPCM的標準化算法;後又演變為CCITTG.727建議,形成了16,24,32和40kb/s的可變速率標準。根據G.727建議,高速率編碼可得到與64kb/s話音等效的質量,並可承載高速話帶數據;採用暫時降質處理的ADPCM可相應減低速度又減輕電話網的擁塞。ADPCM具有重建信號質量好、編碼時延小、工程實現複雜性低等優點,被廣泛套用於話音壓縮設備和數字電路倍增設備(DCME)、數字用戶環路(DSL)等數字增容設備中。

簡介

數字通信系統和傳統的模擬通信系統相比較,具有抗干擾性強、保密性好、可靠性高和經濟性好等顯著優點。尤其是,它便於實現綜合業務數字網(ISDN)。因此,脈碼調製(PCM)的數字通信系統已經在大容量數字微波、光纖通信系統以及市話網局間中繼傳輸系統中獲得廣泛的套用。目前,世界各國的數字通信網正在得到迅速發展,可以預見,本世紀90年代或21世紀,數字通信將逐步成為主要通信方式。

但是,現有的PCM編碼需採用64kibt/s的A律或μ律對數壓擴的方法,才能符合長途電話傳愉語音的質量指標,其占用頻帶要比模擬單邊帶通信系統寬很多倍。因此,在擁有相同頻頻寬度的傳輸系統中,PCM能傳送的電話路數要比模擬單邊帶通信方式傳送的電話路數少得多。這樣,對於費用昂貴的長途大容量傳輸系統,尤其是對於衛星通信系統,採用PCM數字通信方式時的經濟性能很難和模擬通信相比擬。至於在超短波波段的移動通信網中,由於其頻帶有限(每路電話必須小於25kHz),64kbit/s PCM更難於獲得套用。因此,幾十年來,人們一直致力於研究壓縮數位化語音占用領帶的工作,也就是努力在相同質量指標的條件下,降低數位化語音數碼率,以提高數字通信系統的頻帶利用率。

通常,人們把低於64kbit/s數碼率的語音編碼方法稱為語音壓縮編碼技術。語音壓縮編碼方法很多,如有差分脈碼調製(DPCM),子帶編碼(SBC),變換域編碼(ATC),多脈衝激勵線性預測編碼(MPLPC),參數或波形矢量編碼(VQ),隨機碼激勵統計編碼(CELP)等等。多年來大量的研究表明,自適應差分脈碼調製(ADPCM)是語音壓縮編碼中複雜度較低的一種方法,它能在32kbit/s數碼率上達到符合64kbit/s數碼率的語音質量要求,也就是符合長途電話的質量要求。為此,CCITT國際電報電話諮詢委員會,自1981年至1984年經過三年多時間的研究討論,提出了32kbit/sADPCM語音編碼的G.721建議,作為長途傳輸中的一種新型的國際通用的語音編碼方法。1986年6月又對G.721建議進行了適當修正,使32kbit/sADPCM語音編碼方法更趨於實用化,得到了進一步的完善。

應當指出,ADPCM編碼方法在更低的數碼率(如16kibts/~8kibt/s等)上套用時,其語音質量已明顯下降,不能達到高質量通信系統的要求。但它可和其他語音編碼方法(如子帶編碼等)組合起來,達到狡高的質量。還應指出,對圖象信號也可進行ADPCM編碼,以獲得高質量的數位化圖象信號。下面首先介紹ADPCM的基本原理,接著概述自適應量化與自適應預測的原理。隨後,討論了CCITTG.721建議推薦的32kbit/sADPCM算法的特點。最後,綜述了國內外實現32kbit/sADPCM編碼器的最新發展動向 。

脈衝編碼調製(PCM)

模擬信號經過抽樣、量化後輸出的是一個數字電平序列,這裡還要將量化的電平序列進行編碼,其相反過程就是解碼,並且這裡的編解碼過程屬於信源編碼的範疇 。

脈衝編碼調製的基本原理

自適應差分脈碼調製 自適應差分脈碼調製

PCM是一種波形編碼的形式,它將模擬信號進行抽樣量化輸出數字電平序列,得到二進制信號,再通過並串轉換器轉換成串列脈衝信號,並且用脈衝對模擬信號的幅度進行編碼,這就是脈衝編碼調製。如下,是一個簡易的PCM通信系統框圖,如圖。

自適應差分脈碼調製 自適應差分脈碼調製

由圖可見,通過對量化PAM信號編碼得到了PCM信號,也就是把每一個抽樣量化的採樣值用一組數據量表示。當然設計者確定了每一個量化級的具體表示代碼,如表所示為一個8級量化的並以格雷碼錶示的3位PCM碼的示例。本論文所設計編解碼器是對16位PCM碼的處理。

自適應差分脈碼調製 自適應差分脈碼調製

為了便於數字運算,在編碼器中先將輸入的8位PCM碼c(n)轉換成14位線性碼s1(n)。然後,同預測信號sp(n)相減產生差值信號d(n),再對d(n)進行自適應量化,產生4bit ADPCM代碼I(n)。一方面把I(n)送給解碼器,另一方面把I(n)進行本地解碼得到量化後的差值信號dq(n),再同預測信號sp(n)相加得到本地重建信號sr(n),自適應預測器採用二階極點、六階零點的混合預測器,它利用sr(n)、dq(n)以及前幾個時刻的值,對下一時刻將要的信號s1(n+1)進行預測,計算出sp(n+1)。為了使量化器能適應語音、帶內數據及信令等具有不同統計特性以及不同幅度的輸入信號,自適應要依輸入信號的特性自動改變自適應速度參數來控制量階。這一功能有量化器定標因子自適應、自適應速度控制、單音及過渡檢測3個功能單元完成。它的編碼器框圖如圖。

自適應差分脈衝編碼調製是利用樣本與樣本之間的高度相關性和量化階自適應來壓縮數據的一種波形編碼技術,它綜合了的自適應特性和系統的差分特性,是一種性能比較好的波形編碼。的核心想法是利用自適應的思想改變數化階的大小,即使用小的量化階距一去編碼小的差值,使用大的量化階去編碼大的差值,使用過去的樣本值估算下一個輸入樣本的預測值,使實際樣本值和預測值之間的差值總是最小。

脈衝編碼調製的特性

PCM信號通常是串列傳輸,其頻寬範圍如下式

自適應差分脈碼調製 自適應差分脈碼調製
自適應差分脈碼調製 自適應差分脈碼調製
自適應差分脈碼調製 自適應差分脈碼調製

式中 表示抽樣頻率,n表示PCM編碼的位數(量化級數M=2n)。當採用(sinx)/x作為PCM波形的生成函式時,式中等號成立。如表所示,給出了兩種波形編碼方式:矩形脈衝抽樣和雙極形波形編碼,列出了採用兩種方式的PCM信號最小頻寬的情況(採用的是最小抽樣頻率fs=2B)。可見,PCM波形的頻譜與用來生成它的函式波形有密切關係,波形編碼的方式也與之有著密切關係。

自適應差分脈碼調製 自適應差分脈碼調製
自適應差分脈碼調製 自適應差分脈碼調製

PCM信號是數字量,在把轉換成模擬信號時,通常用信噪比(SNR)來對系統的性能進行評估。表中 為峰值信號功率同平均噪聲功率的比值, 為平均信號功率同平均噪聲功率的比值,通常情況下以這兩個參數來評估系統是否採用了符合抽樣定理的採樣頻率。

自適應差分脈碼調製 自適應差分脈碼調製
自適應差分脈碼調製 自適應差分脈碼調製
自適應差分脈碼調製 自適應差分脈碼調製

式中, 表示PCM傳輸過程中的誤碼率,M為量化電平級數。

由表可見,信噪比隨著量化級數的增多而增大,但是信道寬度也隨之增大。所以通常會使用一些特定的算法來對PCM信號進行壓縮後再進行傳輸,這樣來降低傳輸信號對頻寬的要求。本論文主要研究的就是基於ADPCM算法,對PCM語音信號進行壓縮的方法。

自適應脈衝編碼調製

自適應差分脈衝編碼調製(ADPCM),是一種性能很好的波形編碼算法,它綜合了差分脈衝編碼調製(DPCM)的差分特性和自適應脈衝編碼調製(APCM)的自適應特性。ADPCM具有算法比較簡單、延遲低、重建新號音質高等優點,因而被廣泛套用於數字語音處理領域。ADPCM算法將16bit的PCM抽樣數據有效壓縮成4bit ADPCM數據,用於存儲或傳輸。

ADPCM的核心思想:

•其一,隨著輸入信號的幅度變化,讓量化間隔的大小進行自適應的調整,從而達到改善量化效果的目的;

•其二,用以前的樣本值去估計下面輸入抽樣值的預測值,從而使實際抽樣值與預測值儘可能的接近,即差值儘可能小。

自適應差分脈碼調製 自適應差分脈碼調製
自適應差分脈碼調製 自適應差分脈碼調製

ADPCM算法的量化值並不是表示採樣點的幅值,而是採樣點處的抽樣值與前一個採樣點預測值的差值。ADPCM是一種波形編碼技術,利用輸入信號的前後相關性,自適應量化間隔來對PCM數據進行壓縮。在實際的體系套用中,一般是根據前面的多個抽樣值來預測下一個輸入的抽樣值,這樣才能獲得更加準確的預測值,減小了誤差。由於每次抽樣都會產生非線性的預測誤差,因此才稱為自適應差分脈衝編碼調製。在算法的完成過程當中選用了量化步長索引調整表和索引值對應的量化步長表兩個常數表格。量化步長表的作用是以常數的形式確定量化步長值和下標;而索引調整表則是依據表里了的誤差值來調整抽樣預測值的下標,再以此來調整預測值的大小。

自適應差分脈碼調製 自適應差分脈碼調製

如圖是ADPCM編碼器的原理圖。輸入為16bit抽樣PCM信號X(n),它與上一次抽樣的預測值X(n-1)相減求差值d(n),然後差值d(n)和當前的量化步長q(n)通過一個編碼器,並對該差值進行量化輸出得到4bit位寬的ADPCM壓縮碼L(n)。輸出L(n)的同時,用它來調整,更新量化步長q(n+1),並且計算此編碼周期的當前抽樣的預測值X(n)(也是解碼輸出值)。下面新一級PCM信號輸入進行相同的操作,這樣持續的將PCM信號編碼成ADPCM信號。

如圖所示為ADPCM解碼器的原理圖,可見是編碼的逆過程,輸入為4bitADPCM信號L(n),將它和當前的量化步長(第一個數為初始量化步長)送入一個解碼器,求出差值d(n),與此同時輸入的L(n)還要用來計算調整得到下一級的量化步長q(n+1)。下面將差值d(n)與上一級預測值X(n-1)相加得到16bit PCM解碼輸出信號,將此同時將此PCM輸出信號作為下一級預測值。

自適應差分脈碼調製 自適應差分脈碼調製

不管是編碼還是解碼,即無論是PCM信號壓縮成ADPCM信號,都需要用ADPCM的值來計算更新量化步長q(n),並且是通過兩次查表來實現的。首先,通過量化步長索引調整表(表3.3),查出ADPCM值對應的量化步長索引值,然後將此索引值同之前的索引值相加得到對應的量化步長(表3.4)的下標,通過此下標就查到了新的量化步長。這樣就完成了量化步長的調整。

相關詞條

相關搜尋

熱門詞條

聯絡我們