• 沒有找到結果。

可調層次式視訊編碼技術之前處理與後處理技術研究 -- 王聖智教授

調整 macro block 的參數,來最佳化 temporal prediction,以提升視訊的品質。在 FGS 的 技術中,因 Robust FGS (H.C. Huang, C.N. Wang, and T. Chiang, “A robust fine granularity scalability using trellis-based predictive leak,” IEEE Trans. Circuits Syst. Video Technol., pp.

372-385, vol. 12, no. 6, Jun. 2002)提供了很有彈性的方法來調整 temporal prediction,因此 本研究以 Robust FGS 為基礎,對其參數加以最佳化。實驗證實,本研究所提出的方法 可以在不同給定的頻寬區段與不同測試條件下提升視訊的品質,特別是 slow motion 的 視訊編碼。

(1) 背景

要將龐大的視訊資料以有限的頻寬傳送,必須仰賴高效率的壓縮技術,因此,在過 去的幾十年中,視訊的壓縮技術越來越受到重視。傳統的視訊壓縮技術(如 MPEG1)著重 於固定頻寬的視訊壓縮,然而,若要將視訊資料傳輸於網路,則必須進行可調層次式視 訊編碼,因為網路的頻寬是動態變化的,在這種狀況下,當要對視訊壓縮時,必須考慮 一段 bitrate 區間,而非單點,這類視訊技術普遍稱作可調層次式視訊編碼技術(Scalable Video Coding)。FGS 為 SVC 的解決方案之一,並已列入 MPEG4 標準中。FGS 將視訊 資料依重要程度區分為代表核心資訊的 base layer,以及用於增加解析度的 enhancement layer,base layer 是以 DCT-based non-scalable single layer 編碼,而 enhancement layer 則 再細分為不同的 bitplanes(如圖 2-1 所示),當頻寬不足或軟硬體資源不足時,可以僅傳 送資料量較少的 base layer 資訊而獲得影像品質較差的視訊資料,而當頻寬充裕或軟硬 體資源充足時,則可以將 enhancement layer 中的 bitplane 資料陸續添加進來,以獲得較 佳的影像品質。

圖 2-1. Fine Granularity

(2) 架構

我們希望視訊編碼在一段 bitrate 區間中最佳化,在這個區間中的所有可能狀況都要

列入考慮。預測編碼 temporal prediction 在不同 bitrate 區間會呈現不同的效應,在 high bitrate 區間,使用越多 EL 的資料來做 temporal prediction 將會有越多的增益,因為大部 分的資料都已經傳送到 decoder 端,誤差飄移(error drift)將會很小,相反的在 low bitrate 區間應使用較少 EL 的資料來做 temporal prediction,因接收端收到的資料量並不多。在 本研究中,我們試著探討 motion compensation gain 與 error drift 之間的交互作用,並嘗 試平衡 motion compensation gain 與 error drift,藉以將視訊編碼在一段區間內最佳化。

給定一 bitrate 區間 PB 及 N 個監測點(checkpoints) S1 ….SN, Si<Sj if i<j。 在不同的 FGS 方法中,RFGS 提出了一個很有彈性的架構來控制 temporal control,因此,我們的系統 是以 RFGS(圖 2-2)為基礎來最佳化 temporal prediction。在 RFGS 中有 α 與β兩個參數, Layer 中 maximum bitplane 為 M,α被 quantized 為 Q steps,則所有可能的 solution space 為(K)Q+M,為了在再這麼大 solution space 中找出最佳解,我們先做 initial guess,然後再 以迭代(iterative)的方式搜尋最佳解。

我們使用在解碼端得到的平均 PSNR(定義為 APR)來估計 motion compensation gain G and error drift loss L 的淨效應。對於每個 MB(j),1≤j≤K,我們先決調整趨勢 TR(j) ,TR(j) 定義為:

TR(j)= 0 if max(

β

0

( j )

+,

β

0

( j )

)<

β

0

( j )

+1 else if APR(

β

0

( j )

+)>APR(

β

0

( j )

) -1 otherwise,

其中

β

0

( j )

+ and

β

0

( j )

代表對第 j 個 MB 的β上下移動一個 step 且保持其餘的 MBs 的β 值不變的狀況下所得到的新β組合。接著,定義 Impulse gain likelihood function LG 為:

LG(j)=max(APR(

β

0

( j )

+)-APR(

β

0),

APR(β0(j))-APR(

β

0)).

函數 LG 提供了一個好的指標,來決定哪個 MB 參數變化應該有較高的優先權。

我們提出了一個 three-step search 演算法,同時將α 與β列入考慮,並且為了權衡時 間複雜度與精確度,我們將 iteration 的數目限制在三次,演算法如下:

Phase 1: 為了增廣搜尋區域並避免落入 local minimum,第一階段以 frame-based 的方式 決定整張 frame 的α 與β(共 M x Q 測試向量),設為

α r

0

β

0

r

。 Phase 2: 以

α r

0

β

0

r

為 initial guess,對 frame 裡的 MB,以α0(j)與β0(j)為中心,向上及向 下位移一個單位 SP,行成定義區間組合(a,b), a∈(α0(j)-SP, α0(j), α0(j)+SP ), b∈(β0(j)-SP, β0(j), β0(j)+SP),對這些組合加以排序,並找出區間中具有最大 APR 的參數組合,來決 定 TR and LG 接著以 2.2 節的方法找出 LG’ ,TR’, 及 OD,藉以得到第二 iteration 的最佳 參數組合

α r

0

'

β

0

'

r

。 Phase 3: 以

α r

0

'

β

0

'

r

為 initial guess,重複 phase2 的動作,並以產生 peak 的

α r

0

"

β

0

"

r

為 suggested optimal α 與β之組合

α r

opt

β

opt

r

(3) 實驗結果

為了驗證提出方法的可行性,我們把提出的方法應用在常用的測試視訊,並紀錄其 結果。測試條件如下:

A.

S r

= {256, 284, 512, 768, 1024, 1536, 2048, 2560} kbps.

B. GOV = 15 (one I frame followed by 14 P frames).

C. Video format= CIF, 30 frames per second.

D. Base layer= 256 kbps, no rate control

測試視訊包含三個 video sequences, News, Foreman, and Stefan,分別代表 slow mo-tion, moderate momo-tion, and fast motion。為了將提出的方法(以 M2 表示)與原來的 RFGS 做 比較,我們以實驗的方式得到當 PB=(256k,2560k)時,dominated β為(2,3,4) ,然後,對 這三個β找出最佳的α配對,分別為 F1(0.9,2), F2(0.8,3), 與 F3(0.8,4) 。圖 2-3(a)顯示 對”News”的實驗結果,與固定參數的 RFGS 比較(F1,F2,F3),平均 PSNR 增益約為 2dB,

證明了我們所提出的方法對於 slow motion sequence 的編碼有相當好的效果。圖 2-3(b) 顯示

S r

中各個不同的監測點的平均 GOP(15 frames) PSNR,對於固定參數的 RFGS 而言,

若採用比較多的 temporal prediction,將導致 high rate performance 較好,但 low rate drift error 較大,相反的比較少的 temporal prediction 會導致 low rate performance 較好,但 high rate efficiency 不足。然而,由圖 2-3 (b)可看出,我們所提出的適應性調整方法幾乎在所 有監測點都有不錯的表現。

圖 2-3 (a). News sequence (frame v.s. PSNR) 圖 2-3 (b). News sequence (rate v.s. PSNR)