線性預測編碼
線性預測編碼
線性預測編碼,用線性預測原理降低編碼數碼率的信號編碼。在一般情況下它的編碼數碼率比直接採樣后編碼的數碼率低得多。線性預測編碼(LPC)是主要用於音頻信號處理與語音處理中根據線性預測模型的信息用壓縮形式表示數字語音信號譜包絡(en:spectral envelope)的工具。它是最有效的語音分析技術之一,也是低位速下編碼方法高質量語音最有用的方法之一,它能夠提供非常精確的語音參數預測。
目錄
用線性預測原理降低編碼數碼率的信號編碼。它主要用於話音、圖像和遙測信號的編碼。信號一般是時間的函數,具有前後相關聯的性質(相關性),後面的信號是由前面的信號漸變而來的,知道前面的信號就能對即將到來的信號進行預測。前後信號相關性越強,這種預測就越準確。預測編碼不是對連續的信號直接採樣后編碼(見脈碼調製),而是先根據信號的相關性測算,把測算用的參數以及測算值和真實值的誤差進行編碼。在一般情況下它的編碼數碼率比直接採樣后編碼的數碼率低得多。
線性預測 預測之前先把信號離散化(採樣)。設過去的已知採樣值序列為則可用下式預測即將到來的(現時)樣值sn
慗n(預測值)
即把過去的p個樣值分別乘上適當的係數,再累加起來即得到現時樣值的預測值。當取實數,則p個樣值中任何一個有變化,都使預測值慗n成比例地變化。預測公式是一個線性方程,所以這種預測稱為線性預測。式中p稱為預測階數;稱為預測係數;真實值與預測值之差,稱為預測誤差。預測的目的就是找出一組合適的係數,使誤差en的統計值最小。實際預測過程一般是先把採樣序列按一定的數目組成幀,然後逐幀進行預測,每幀都找出該幀的p個最佳預測係數。預測的好壞(精確度)不是以某一個樣值的預測結果來衡量,而是要看幀內各樣值預測的總效果。在用線性預測編碼通信時,把每幀的p個預測係數和各樣值預測誤差en編碼後傳輸。收信端則利用這些參數來重建原信號。
話音信號預測 話音信號有以下的特性(見聲碼器):①濁音是准周期信號,鄰近周期具有相似的波形,即前後波形按基音周期相關聯;②由口、鼻腔構成的聲道在傳輸聲源信號時有能量集中區或共振峰。聲道是惰性腔體,不可能發生突變,因而話音信號具有短時間內的相關性。
根據話音信號的特性,可以取幀長為25毫秒,則每秒有40幀。如果採用8階預測(),預測係數用4位編碼,則預測係數共需比特/秒。若信號採樣率為6400樣值/秒,各樣值的預測誤差en用1位編碼,則需要6400比特/秒。總數碼率為7680比特/秒。僅當信號具有相關性並且預測做得相當精確時,才能使預測誤差en的統計值很小,從而可以用很少的碼位來對它編碼。預測係數的分幀表徵和預測誤差的碼位節省,是減少線性預測編碼數碼率的主要手段。
類型 線性預測可有多種方案。①簡單的固定係數預測:預測係數在長時間內不變;②自適應預測:每一幀都重新計算預測係數和預測剩餘信號的平均能量等,以便能很好地適應信號的複雜變化;③單級預測:利用信號的短時相關性進行預測;④多級預測:既利用短時相關性又利用前後周期相關性進行預測。在實際運用中,對預測演演算法、預測係數的表徵、編碼型式等都要進行優選。目標是減少運算量和存儲量,在精度受限時確保預測穩定(不振蕩),以及減少測算誤差、編碼誤差和傳輸差錯等因素對重建信號的不良影響。
預測效果 話音線性預測編碼器能以脈碼調製幾分之一的碼率提供優於聲碼器的話音質量,可以通過一個高質量的話路傳輸。應用線性預測原理的聲碼器,稱為線性預測聲碼器。頻譜包絡可以看成是可變濾波器的傳輸特性。線性預測聲碼器用線性預測方法求出這個濾波器在每幀內的係數,連同話音的基頻一起編碼後傳輸。在收信端利用這些參數來合成話音。它與普通線性預測編碼器的主要差別是不傳輸預測的剩餘信號,同時重建話音的方式也不完全一樣。預測技術還可作為信號分析的工具用於其他處理設備中,如話音識別、圖像處理、數字信號存儲等。
預測效果取決於以下諸因素:①對被測信號統計特性的認識;②符合實際統計特性的預測方案;③簡捷而高效的預測演演算法。隨著大規模集成電路與計算機技術的發展,線性預測編碼技術將在通信和信號處理中發揮更大的作用。
參考書目
J. D. Markel, A. H. Gray, Linear Prediction of Speech, Springer-Verlag, Berlin, Hedelbery,New York, 1976.