第三章 MPEG2 簡介
3.3 MPEG-2 壓縮格式、編碼跟解碼…19
為了取得高壓縮比效果, MPEG 採用了複合式多種壓縮技巧,首
先是以區塊為基礎的動態補償 (block-based motion compensation)方
法,利用前一畫面至目前畫面內容之預測 (prediction),或是由前一
畫面其下移畫面至目前畫面內容之內插預測 (interpolation
prediction),再利用 DCT 轉換除去空間上的相關性,並配合量化
(quantized) 程序略除不重要的資訊,最後經由 VLC (variable length
coding) 方式編碼後與動態向量複合產生視訊壓縮編碼。
圖 3-2 MPEG2 中的一個 Group of picture
我們對於上述的 (block-based motion compensation) 方法、預測
(predicition)方法以及使用內插預測( interpolation prediction )的方法舉
一實例作說明。如上圖所示,我們列出一 Group of picture (包含圖
像 I、圖像 B 及圖像 P) :在這範例中,可以發現第一張圖像 I 為
獨立編碼,它與其它圖像沒有任何關連。第五張圖像 I 是參考第一
張圖像 I,此種編碼方式為順向預測。而第二張圖像 B 不僅參考
了第一張圖像 I 還包括了未來第五張圖像 P,此種作法稱為內插
預測 (interpolation prediction)的方法。 Group of picture 中其他部份可
按不同圖形型態依此類推。透過動態補償的方式,消除畫面間時間
和空間的關聯性,僅用最小的資料量來記錄彼此間的差異,也就是
利用 Motion Vector 來記錄,如此可大大的增加壓縮的效率。
MPEG2 是數位電視的標準,主要被用來製作 DVD,其提供兩
種解析度 720×480 與 1280×720,每秒可播放 60 張的影像。MPEG 檔
案在播放時,一秒中總是有數十張的影像快速閃過,故中間有許多
的影像會有重複的部分,壓縮時就是壓縮這一部分,除了重複的以
外,也可以紀錄影像移動的位移,其中;在 I 畫面中,我們將畫面
分割為 16×16 的區塊來處理,這些區塊稱為 macro block。每個
macro block 又由 4 個 8×8 的 Y 區塊、一個 Cr 區塊及一個 Cb
區塊組成。這裡的 Cr、Cb 區塊都是由 16×16 做部份取樣而成 8×
8 的區塊,也就是用 YUV411 的格式,如圖(一)。接下來的步驟就
先將每個 8×8 的區塊做 DCT 轉換,然後量化,再以 Run-Length
及 Huffman 編碼的方式壓縮。在 P 畫面中,所要儲存的資料主要
是該畫面和參考畫面(前一個 I 畫面)的不同處。在同一張畫面中的
任何一部份,往往可以在前一張畫面中的某一個位置找到,我們只
要記錄那一個部份是從前一張畫面的那一部份移動過來的,就可以
使需要儲存的畫面資訊減少許多,這種技巧稱為運動補償 ( motion
compensation )。在 P 畫面中裡同樣是以 macro block 為單位,每一
個 macro block 照理可以在參考畫面中找到。
如圖(二),我們在參考畫面的某一個範圍內尋找和該 macro
block 最接近的,也就是誤差最小的區塊,這個作法稱為區塊比對
( block matching )。如果區塊比對時找到最接近的,就只要記錄該區
塊在兩個畫面中的位移,也就是所謂的運動向量 ( motion vector ),
以及誤差的部份。至於 B 畫面則和 P 畫面的原理相同,只是它的
每一個 macro block 的參考畫面可以是從前面的 I 畫面 ( 或 P 畫
面 ),也可以是後面的 P 畫面( 或 I 畫面 ),或者是兩者的平均。
因為是雙向的,所以稱為 Bi-directional。I、P、B 三種畫面的壓縮
過程如圖(三)所示。
圖 3.3 壓縮流程圖
3.4 MPEG2 的應用
MPEG-2 除了做為 DVD 的指定標準外,MPEG-2 還可用於為廣
播,有線電視網,電纜網絡以及衛星直播(Direct Broadcast Satellite)
提供廣播級的數字視頻。而 MPEG-2 的另一特點是,其可提供一個
較廣的範圍改變壓縮比,以適應不同畫面質量,儲存容量,以及頻
寬的要求。對於最終用戶來說,由於現存電視機分辨率限制,
MPEG-2 所帶來的高清晰度畫面質量(如 DVD 畫面)在電視上效果並
不明顯,到是其音頻特性(如加重低音,多聲道等)更引人注目。