訊號處理中,次頻帶編碼(sub-band coding, SBC)是一種轉換編碼。其作法是把訊號分成許多頻帶(通常使用快速傅里葉變換)後獨立編碼,通常是將資料做壓縮的第一步,可應用於聲音、多媒體、影像訊號的壓縮。

次頻帶編碼常用於包括MP3演算法在內的許多常見有損音頻壓縮演算法中。

應用於聲音頻號

編輯

基本理論

編輯

次頻帶編碼在聲音頻號上利用聽覺遮蔽(auditory masking)且符合人耳的聽覺系統。一般而言,人耳可聽到一定頻率範圍的聲音,若在某特定頻率的訊號強度很大時,人耳對於該特定頻率附近的頻率辨別率幾乎為0,我們稱強度很大的訊號遮蔽弱的訊號。次頻帶編碼的基本概念即是捨去那些被遮蔽的頻帶,這部分為「失真編碼」,與原本的訊號不同,但其捨去的訊號經過分析後,仍可以不被人耳所辨別。

應用

編輯

最常用於數碼化編碼的方法是脈衝編碼調變(pulse-code modulation),這種方法也適用於CD和錄音帶。數碼化轉換將原本的連續訊號取樣後,並用最接近的整數bits表示,及量子化(quantization),但這樣的方法會產生取捨誤差(rounding error),並在取樣域產生截斷誤差(truncation error)。

為了減少誤差,必須要增加每個代表取樣的位元數,如此一來便造成過大的位元率(像是CD audio的頻道就超過700 kbits/s)。實際上,用過的位元表示並沒有考慮人耳的聽覺系統的敏感度。其改善的方法是用非線性脈衝編碼調變,如µ-law編碼,適用聽覺感知曲線,其截斷誤差是與訊號能量大小做調變。

其中太陽電腦(Sun Microsystems)的Au file format是廣為人知的µ-law編碼方式,使用8位元µ-law編碼可使CD audio的頻道減低至350 kbits/s,但效果與原本相比,較為遜色。

次頻帶編碼應用的另一個例子是G.722(第一個用於16KHz採樣率的寬頻語音編碼演算法),它利用次頻帶可適性差分脈衝編碼調變(sub-band adaptive differential pulse code modulation, SB-ADPCM),位元率在64 kbits/s。SB-ADPCM將頻帶切成兩次頻帶,每個次頻帶再分別用ADPCM。

影像訊號

編輯

介紹影像之前,先以一個一維訊號為例,如圖一所示

 
圖一

圖一中,上圖表示兩頻帶的子帶編碼及解碼,輸入訊號 ,分別經過兩個分析濾波器(analysis filter)  。它們個別的頻率響應如下圖  。其中 為低通濾波器,所得到的 是訊號的低頻部分,其輸出為原訊號大略的特徵(approximation); 為高通濾波器,輸出所得到的 是訊號的細節(detail)。經過降取樣(downsampling)來達到壓縮的效果。而圖一上圖的右半部  分別是合成濾波器(synthesis filter),先將  ,升採樣(upsampling)後還原原本的訊號。

 
圖二

接着介紹二維子帶編碼,如圖二所示,二為訊號 分經過低通、高通濾波器後對橫列降取樣,此時會得到兩張長度約為原本二分之一的圖。再分別對這兩張圖個別經過低通、高通濾波器後對行方向降取樣,可得到四張圖。如圖三所示


圖三從左至右、上至下分別對應到圖二的 ,代表粗略次頻帶(approximation subband)、 ,表示水平的細節、 ,表示垂直方向的細節、 ,表示對角線方向的細節,即是角落(corner)的部分。若針對粗略子帶繼續經過更多次的低通、高通濾波器,便達到壓縮的效果,最廣泛的應用就是JPEG2000,其主要的演算法小波轉換的基本概念即是上面所述。

應用

編輯

在20世紀八十年代開始,MPEG(動態影像專家小組)制定了音頻和影片的編碼標準。例如MP3演算法的核心就是次頻帶編碼技術。

次頻帶編碼被用於G.722編解碼器,它在64kbit/s的位元速率內使用子帶自適應差分脈衝編碼調製(SB-ADPCM)。在SB-ADPCM技術中,頻帶被分成兩個子帶(高頻部分和低頻部分),每個子帶的訊號都使用ADPCM進行編碼。

參考

編輯