H.264/MPEG-4 Part 10 White Paper 譯(五) Reconstruction Filter
重建濾鏡
1. 引言
聯合視頻工作組(JVT)正在定案一個新的自然視頻圖像編碼(壓縮)標準。新標準被稱爲H.264或稱作MPEG-4 Part 10、“高級視頻編碼(AVS)”。這篇文檔描述了H.264編碼解碼器中過濾重建塊的方法。注意H.264草案標準現在尚未定稿,所以鼓勵讀者參考最新版本的標準。
2. 什麼是重建濾鏡
濾鏡是爲了減小塊失真而應用到所胡已解碼宏塊上。抗塊效應濾波器在下述兩種情況下使用:(1)編碼過程:逆變換之後使用(在重建之前併爲了之後的預測而存儲宏塊)(2)解碼過程:重建之前並顯示宏塊。重建濾鏡有兩個作用:(1)使塊邊緣平滑,提高解碼圖像質量(特別是在高壓縮比情況下);(2)過濾的宏塊用於編碼器中另外的幀的運動補償預測,在預測後產生一個更小的殘留幀。(注意:幀內編碼宏塊被過濾,而幀內預測則是使用未經過濾的d 重建的宏塊產生預測。)圖片邊緣沒有被過濾。
以下面的順序對宏塊中的4X4塊的垂直和水平邊緣使用過濾:
1. 對亮度分量的4個垂直邊界進行過濾(以Figure 1中的a,b,c,d序)
2. 對亮度分量的4個水平邊界進行過濾(以Figure 1中的e,f,g,h序)
3. 對每個色度分量的2個垂直邊界進行過濾(i,j序)
4. 對每個色度分量的2個水平邊界進行過濾(k,l序)
每個過濾操作最多對邊界兩邊的三個像素起作用。Figure 2顯示了相鄰塊p和q間垂直或水平邊界兩邊的各4個像素(p0,p1,p2,p3和q0,q1,q2,q3)。這可以有多種輸出,從(a)沒有像素被過濾到(b)p0,p1,p2,q0,q1,q2都被過濾併產生像素P0,P1,P2,Q0,Q1,Q2,這取決於當前的量化器、相鄰塊的編碼模式和跨邊界的圖像採樣的梯度。
3 邊界強度
過濾的輸出取決於邊界強度和跨邊界的圖像採樣的梯度。根據下面規則來選擇邊界強度係數Bs:
p或q採用幀內編碼並且邊界是一個宏塊邊界(即宏塊最外側邊界) |
Bs=4 (過濾強度最大) |
p或q採用幀內編碼並且邊界不是一個宏塊邊界 |
Bs=3 |
p和q都不採用幀內編碼但p或q包含編碼係數 |
Bs=2 |
p和q都不採用幀內編碼且都不包含編碼係數,p和q有不同的參考幀或參考幀號不同或有着不同的運動矢量值。 |
Bs=1 |
p和q都不採用幀內編碼並且都不包含編碼係數;p和q有相同的參考 幀和相同的運動矢量。 |
Bs=0 (未過濾) |
|
在可能會產生很強失真的地方,過濾強度最大。如一些幀內編碼宏塊的邊界或包含編碼係數的塊之間的邊界。
5. 濾鏡決策
集合(p2,p1,p0,q0,q1,q2)中的一組採樣只有滿足下列條件時纔會被過濾:
(1) Bs>0並且
(2) |p0-q0|,|p1-p0|和|q1-q0|都小於一個閥值?或?(?和 ?在標準[1]中定義)
閥值?和 ?隨着塊p和q的量化參數QP的平均值增加而增加。濾鏡決策的目的是在原始圖像跨越邊界時,梯度沒有明顯改變的情況下關閉濾鏡。明顯改變的定義取決於QP。當QP比較小的時候,除了非常微小的跨邊界梯度,其它的都被看做是就應該保護的圖像特徵,這樣閥值?和?就比較小。當QP比較大的時候,塊失真可能會很明顯,這樣?和?就比較大,這樣就會產生更多的過濾。
5. 濾鏡的實現
(1) Bs ? {1,2,3};
對p1,p0,q0和q1使用一個4-輸入線性濾鏡,過濾的的輸出爲P0和Q0(0<Bs<4)
另外,如果|p2-p0|比閥值?小,則對p2,p1,p0和q0使用4-輸入線性濾鏡進行過濾,過濾輸出P1。如果|q2-q0|比閥值?小,則對q2,q1,q0和p0使用4-輸入線性濾鏡進行過濾,過濾輸出Q1。(在色度分量中p1和q1不會被過濾,只在亮度分量中使用)。
(2) Bs=4:
if |p2-p0|<?&&|p0-q0|<round(?/4) then:
使用一個5-輸入濾鏡對p2,p1,p0,q0和q1進行過濾,輸出P0;
使用一個4-輸入濾鏡對p2,p1,p0和q0進行過濾,輸出P1;
(只使用於亮度分量)使用一個5輸入濾鏡對p3,p2,p1,p0和q0進行過濾,輸出P2
else:
使用一個3輸入濾鏡對p1,p0和q1進行過濾,輸出P0;
if |q2-q0|<?&&|p0-q0|<round (?/4) then:
對q2,q1,q0,p0和p1使用一個5輸入濾鏡進行過濾,輸出Q0;
對q2,q1,q0和p0使用一個4輸入濾鏡進行過濾,輸出Q1;
(只使用於亮度分量)對q3,q2,q1,q0和p0使用一個5輸入濾鏡進行過濾,輸出Q2
else:
對q1,q0和p1使用一個3輸入濾鏡進行過濾,輸出Q0
6. 過濾實例
一個QCIF視頻片段使用AVC參考程序以固定量化參數32編碼。Figure 3顯示了視頻片斷的原始幀;Figure 4顯示了禁用環路濾鏡時,幀間編碼和重構後的相同幀。Figure 5使用了環路濾鏡時幀畫面,顯示效果大有改善。這裏仍然有一些失真,但大部分塊邊緣已經消失或是減淡了。注意對比度明顯的邊界被濾鏡保存,而同時圖像平滑區域的塊邊界被平滑。
Figure 6顯示了一個有着更高QP(36)的解碼幀,此時禁用了環路濾鏡(注意增加了大量僞像),Figure 7顯示了相同幀,使用環路濾鏡。
7. 參考資料
1 ITU-T Rec. H.264 / ISO/IEC 11496-10, “Advanced Video Coding”, Final Committee Draft, Document JVT G050, March 2003