• 沒有找到結果。

建構於MPEG-4之強韌性細粒狀可調層次式視訊編碼技術之參數設定研究

N/A
N/A
Protected

Academic year: 2021

Share "建構於MPEG-4之強韌性細粒狀可調層次式視訊編碼技術之參數設定研究"

Copied!
83
0
0

加載中.... (立即查看全文)

全文

(1)國立交通大學 電子工程學系 電子研究所碩士班 碩士論文 建構於 MPEG-4 之強韌性細粒狀可調層次式 視訊編碼技術之參數設定研究 A Study on Parameter Selection of Robust Fine Granularity Scalable Video Coding Over MPEG-4. 研究生. :. 指導教授 :. 王紹宇 王聖智 博士. 中華民國 九十四年 九月.

(2) 建構於 MPEG-4 之強韌性細粒狀可 調層次式視訊編碼技術之參數設定 研究 A Study on Parameter Selection of Robust Fine Granularity Scalable Video Coding Over MPEG-4 研究生 : 王紹宇 指導教授: 王聖智 博士. Student : Shao-Yu Wang Advisor : Dr. Sheng-Jyh Wang 國立交通大學. 電子工程學系. 電子研究所碩士班. 碩士論文 A Thesis Submitted to Institute of Electronics College of Electrical Engineering and Computer Science National Chiao Tung University in partial Fulfillment of the Requirements for the Degree of Master of Science in Electronics Engineering October 2005 Hsinchu, Taiwan, Republic of China..

(3) 建構於 MPEG-4 之強韌性細粒狀可 調層次式視訊編碼技術之參數設定 研究 研究生:王紹宇. 指導教授:王聖智 博士. 國立交通大學 電子工程學系 電子研究所碩士班. 摘要. 在這篇論文裡,以 RFGS 的架構作為基礎,我們提出一種依據影像特質,針 對一段給定的頻寬,快速計算視訊編碼之α與β參數之最佳設定方法。在論文中, 將對先前以 PSNR 為比較基礎的參數最佳選擇法作改善,改成以 MSE 為比較基 礎,並以此為我們提出之快速參數選擇法的目標。首先,我們分析了不同影像在 運動補償後的 residual 特性以及其和最後編碼大小的關係,並發現其規律性;另 外我們也歸納出參數的調整在不同的頻寬條件下,與影像品質之間的關聯性。最 後依照先前整理出的各種規律性,先建立起在單一頻寬時的參數預測模型,再進 一步發展成考量一段給定頻寬的參數最佳化方法。我們提出的方法是利用簡單的 運算即可對於不同的影像進行適當的編碼,以畫面(FRAME)為基礎,產生最佳 的參數組合。. I.

(4) A Study on Parameter Selection of Robust Fine Granularity Scalable Video Coding Over MPEG-4 Student : Shao-Yu Wang. Advisor:Dr. Sheng-Jyh Wang. Department of Electronics Engineering, Institute of Electronics National Chiao Tung University. Abstract. In this thesis, based on the RFGS coding scheme, we propose an approach to automatically calculate the optimized α and β parameters for videos of different properties. Starting from the previous PSNR-based work, we propose new MSE-based approaches to pursue better video quality. We first analyze and model the residuals of motion compensation with different parameter setting under various bit rates. We then investigate the relationship between error drift and available bandwidth, and the relationship between MSE gain and extra bandwidth. With those relationships and models, we proposed first an approach to automatically choose the sets of optimized parameters for a fixed bit rate. Then we proposed a solution for the case with a range of bit rates. Frame-based approaches are studied and these proposed MSE-based approaches require only light computational loads.. II.

(5) 誌謝 首先 感謝我的指導教授 王聖智老師 不只在論文上,課業上給我指導 更使我在處事的態度方法上 獲益良多 感謝實驗室的學長姊 帶領我進行研究 感謝同學們 常常給予我的鼓勵和支持 感謝實驗室的學弟們 夜深時陪我在實驗室渡過 感謝家人 對於我畢業時程失控的體諒 用關懷代替責備 感謝橋牌青年隊隊員們 你們送我的抱枕 讓我在實驗室躺著進入無數次的夢鄉. III.

(6) 目錄 第一章 簡介 .................................................................................................................................................................1 第二章 先前的研究 .....................................................................................................................................................2 2.1 MPEG4 視訊編碼 ..............................................................................................................................................2 2.1.1 移動補償(Motion Compensation) .............................................................................................................3 2.1.2 離散餘弦轉換 (Discrete-Cosine-Transform) ...........................................................................................3 2.1.3 鋸齒狀掃描 (Zigzag Scan) .......................................................................................................................4 2.1.4 變換長度編碼 (Run-Level-Coding) .........................................................................................................4 2.1.5 位元平面編碼 (Bit Plane Coding)............................................................................................................4 2.1.6 可調層次式 (Scalability) ..........................................................................................................................5 2.1.6.1 訊雜比可調層次式(SNR Scalability).................................................................................................................. 5 2.1.6.2 時間解析度可調層次式(Temporal Scalability) .................................................................................................. 6 2.1.6.3 空間解析度可調層次式(Spatial Scalability) ...................................................................................................... 7. 2.2 FGS (FINE GRANULAR SCALABILITY) ................................................................................................................8 2.3 一些改善 FGS 的方法 .....................................................................................................................................13 2.3.1 TFGS (Temporal – SNR FGS) .................................................................................................................13 2.3.2 MCFGS (Motion Compensation FGS).....................................................................................................15 2.3.3 PFGS (Progressive FGS)..........................................................................................................................17 2.4 RFGS (ROBUST FGS).......................................................................................................................................20 2.4.1 LEAKY PREDICTION............................................................................................................................23 2.4.2 PARTIAL PREDICTION .........................................................................................................................24 2.4.3 實驗結果 ..................................................................................................................................................25 第三章 RFGS 最佳化參數挑選...............................................................................................................................27 3.1 先前的 RFGS 最佳化參數挑選方法 ..............................................................................................................27 3.1.1 問題的定義..............................................................................................................................................27 3.1.2. FRAME_BASED 最佳參數..................................................................................................................28. 3.1.3. MB_BASED 最佳參數 .........................................................................................................................28. 3.1.4. 三階段搜尋法(THREE-STEP-SEARCH).............................................................................................31. 3.2 MSE 最佳參數...............................................................................................................................................31 3.3 兩個方法的結果比較 ....................................................................................................................................33 3.4 總結 ................................................................................................................................................................39 第四章 數據分析 .......................................................................................................................................................41 4.1 MSE GAIN ...........................................................................................................................................................42 IV.

(7) 4.1.1. MSE GAIN 的來源 ...............................................................................................................................43. 4.1.2. MSE GAIN 分析 ...................................................................................................................................45. 4.1.3. 總結(規則一).........................................................................................................................................46. 4.2 MSE LOST ...........................................................................................................................................................47 4.2.1. 錯誤漂移(ERROR DRIFT) ...................................................................................................................47. 4.2.2. 可加性 ...................................................................................................................................................48. 4.2.3. 指數型遞減性........................................................................................................................................50. 4.2.4. MSE LOST ............................................................................................................................................51. 4.2.5. 總結(規則二、三) .................................................................................................................................54. 4.3 RESIDUAL 的特性 .............................................................................................................................................54 4.3.1. RESIDUAL 平均值...............................................................................................................................55. 4.3.2. RESIDUAL BYTE 數............................................................................................................................56. 4.3.3. 總結(規則四).........................................................................................................................................57. 第五章 提出的方法 ...................................................................................................................................................60 5.1 方法一..............................................................................................................................................................60 5.2 方法二..............................................................................................................................................................61 5.3 方法三..............................................................................................................................................................62 5.4 方法四..............................................................................................................................................................62 第六章 實驗結果 .......................................................................................................................................................64 6.1 方法一..............................................................................................................................................................64 6.2 方法二..............................................................................................................................................................65 6.3 方法三..............................................................................................................................................................67 6.4 方法四..............................................................................................................................................................68 第七章 結論 ...............................................................................................................................................................71. V.

(8) 圖目錄 圖 2.1 MPEG4 編碼流程圖 .....................................................................................................................................2 圖 2.2 移動補償示意圖 ............................................................................................................................................3 圖 2.3 鋸齒狀掃描 ....................................................................................................................................................4 圖 2.4 位元平面編碼 ................................................................................................................................................5 圖 2.5 雜訊比可調層次式 ........................................................................................................................................6 圖 2.6 時間解析度可調層次式 ................................................................................................................................6 圖 2.7 空間解析度可調層次式 ................................................................................................................................7 圖 2.8 不同編碼方式之比較 ....................................................................................................................................8 圖 2.9. FGS 示意圖 .................................................................................................................................................9. 圖 2.10. FGS 編碼端架構圖 .....................................................................................................................................9. 圖 2.11 FGS 解碼端架構圖....................................................................................................................................10 圖 2.12. FGS 資料分配示意圖 ...............................................................................................................................10. 圖 2.13. FGS 和 SNR SCALABILITY 的比較 ..................................................................................................... 11. 圖 2.14. FGS 和 NON SCALABLE CODING 的比較.........................................................................................12. 圖 2.15. TFGS 編碼端.............................................................................................................................................13. 圖 2.16. TFGS 解碼端.............................................................................................................................................14. 圖 2.17 MCFGS 示意圖.........................................................................................................................................15 圖 2.18 MCFGS 決策方塊圖.................................................................................................................................16 圖 2.19 MCFGS 相較於 FGS 的 PSNR 改善圖...................................................................................................17 圖 2.20. PFGS 精神示意圖 .....................................................................................................................................18. 圖 2.21. PFGS 編碼端架構圖 .................................................................................................................................18. 圖 2.22. PFGS AKIYO COASTGUARD FOREMAN 結果示意圖 ....................................................................19. 圖 2.23 RFGS 想法示意圖 ....................................................................................................................................20 圖 2.24 RFGS 編碼端架構圖.................................................................................................................................21 圖 2.25 RFGS 解碼端架構圖.................................................................................................................................22 圖 2.26 RFGS 線性模型示意圖.............................................................................................................................24 VI.

(9) 圖 2.27 AKIYO 實驗結果......................................................................................................................................25 圖 2.28. FOREMAN 實驗結果...............................................................................................................................25. 圖 2.29 COASTGUARD 實驗結果.......................................................................................................................26 圖 2.30 RFGS 和 PFGS 的結果比較 ....................................................................................................................26 圖 3.1. TR 示意圖..................................................................................................................................................29. 圖 3.2. LG OD 示意圖. .........................................................................................................................................29. 圖 3.3. TEST VECTORS 示意圖.........................................................................................................................30. 圖 3.4. TEST VECTORS 結果示意圖. ................................................................................................................30. 圖 3.5. PSNR 和 MSE 關係示意圖 ......................................................................................................................32. 圖 3.6. 不同 PSNR 值時的 PSNR 影響 ...............................................................................................................32. 圖 3.7. NEWS FRAME-BASED 結果 .................................................................................................................34. 圖 3.8. FOREMAN FRAME-BASED 結果 ........................................................................................................35. 圖 3.9. STEFAN FRAME-BASED 結果..............................................................................................................36. 圖 3.10 MSE 方法和 PSNR 方法最佳參數比較圖 ..............................................................................................37 圖 3.11 平均 MSE PSNR 結果比較圖 ..................................................................................................................38 圖 3.12 最佳化流程示意圖 ....................................................................................................................................39 圖 4.1. MSE 估算示意圖 ......................................................................................................................................42. 圖 4.2. MSE GAIN 來源分析 ...............................................................................................................................43. 圖 4.3. RESIDUAL 大小示意圖...........................................................................................................................44. 圖 4.4. RESIDUAL 大小差值示意圖...................................................................................................................44. 圖 4.5. MSE 和 BYTE 數關係圖..........................................................................................................................45. 圖 4.6. MSE GAIN 和 MSE 值關係圖.................................................................................................................46. 圖 4.7. ERROR DRIFT 示意圖 ...........................................................................................................................48. 圖 4.8. 可加性實驗示意圖 ....................................................................................................................................49. 圖 4.9. 可加性實驗結果示意圖 ............................................................................................................................50. 圖 4.10 指數型遞減性實驗結果示意圖 ................................................................................................................51 圖 4.11. ERROR DRIFT 大小示意圖....................................................................................................................52. 圖 4.12 MSE LOST 和 BYTE 數關係圖(NEWS)................................................................................................52 圖 4.13 MSE LOST 和 BYTE 數關係圖(FOREMAN) .......................................................................................53 VII.

(10) 圖 4.14 MSE LOST 和 BYTE 數關係圖(STEFAN) ............................................................................................53 圖 4.15. ENCODER 示意圖 ...................................................................................................................................55. 圖 4.16 RESIDUAL 平均值示意圖.......................................................................................................................55 圖 4.17 RESIDUAL BYTE 數示意圖 ...................................................................................................................57 圖 4.18 RESIDUAL 線性模型 ( NEWS ) ............................................................................................................58 圖 4.19 RESIDUAL 線性模型 ( NEWS FOREMAN STEFAN ) ......................................................................58 圖 4.20 編碼端參數決定示意圖 ............................................................................................................................59 圖 5.1 方法一示意圖 ................................................................................................................................................60 圖 5.2 方法二示意圖 ................................................................................................................................................61 圖 5.3 方法三示意圖 ................................................................................................................................................62 圖 5.4 方法四示意圖 ................................................................................................................................................63 圖 6.1 方法一結果圖 ................................................................................................................................................65 圖 6.2 方法二結果圖 ................................................................................................................................................66 圖 6.3 方法三結果圖(NEWS)..................................................................................................................................67 圖 6.4 方法三結果圖(FOREMAN).........................................................................................................................68 圖 6.5 方法四結果圖(NEWS)..................................................................................................................................69 圖 6.6 方法四結果圖(FOREMAN).........................................................................................................................69 圖 6.7 方法四結果圖(STEFAN) ..............................................................................................................................70. VIII.

(11) 表目錄 表 2.1 TFGS 效能比較表.......................................................................................................................................14 表 4.1 MSE GAIN 和 BYTE 數關係表 ................................................................................................................46 表 4.2 MSE LOST 和 BYTE 數關係表 ................................................................................................................54 表 4.3 RESIDUAL 平均值和 BYTE 數關係表....................................................................................................59. IX.

(12) 第一章 簡介 網路是最方便最普遍的影像傳播媒介,而隨著有線網路,無線網路的蓬勃發展,如何 提供有效的壓縮方式,使得較佳品質、資料量較大的影像可以被順利地傳輸,已經變成了 一個重要的議題。目前,在 MPEG-4 編碼標中提供了,細粒狀可調層次式編碼[Fine Granularity Scalable Video Coding]的功能,可以使得編碼結果適用於一整段的可能頻寬,也符合了實際 的網路傳輸須求。而本論文將以改良過的 RFGS [Robust Fine Granularity Scalable Video Coding] 架構為基礎,對於不同影像特色進行討論,提出一個可以經過簡單計算出較佳參數組合的 方法。 本論文的架構如下,第二章將介紹先前的研究,包含 MPEG-4 標準、FGS、其他 FGS 的改善方式,以及 RFGS。第三章將介紹先前學長以 PSNR 為考量基礎來計算影像最佳參數 組合的方法,並提出以 MSE 為考量基礎的方式,來提升整體的影像品質。第四章將分析不 同影像的 residual 經過編碼後的資料量大小和參數選擇之間的關係,並且建立起頻寬和 error drift 以及 MSE 大小的關係模型。在接下來的第五章中,則依照先前得到的規律和模型,提 出幾個以畫面為單位的計算最佳參數組合的演算法。第六章將對於實驗的結果進行比較和 討論。最後在第七章中,將提出一個結論。. 1.

(13) 第二章 先前的研究 在本章中,大致上分成兩個部份:第一部分包含第一節,先介紹 MPEG4 編碼規格; 將對於 MPEG-4 中採用的一些方法進行介紹。第二部分則先介紹基本的細粒狀可調層次式 視訊編碼技術[fine granularity scalable video coding (FGS)],接著介紹一些改進 FGS 的方法, 最後則是對於本論文中提出方法的基礎–RFGS 作一個完整的介紹。. 2.1 MPEG4 視訊編碼 先前的 MPEG 標準,如 MPEG-1、MPEG-2,大多數只與壓縮技術有關,MPEG-4 則 包含了很多新的議題,例如位元率的可伸縮性(Bit Rate Scalability) 、動態子畫面(Animated Sprites) 、互動性、版權保護等等。另外,MPEG-4 跟先前的 MPEG 版本有一個很大的不同, 基於網路傳輸的日漸普及,MPEG-4 開始考慮頻寬不一致的情形,使得編碼的結果不再只 是適用於單一頻寬,而是適用於一整段的頻寬,這部份最主要的技術就是 FGS 編碼[Fine Granular Scalability Coding],我們將在下一節中,對於這樣技術的精神和作法,進一步地介 紹和討論。 下圖為 MPEG 編碼器之方塊圖:. 編碼器 編碼器 sequence. +. DCT. ∑. Zigzag scan. Q. Q −1. IDCT +. ∑. -. +. ∑. + MC. Frame buffer. ME 圖 2.1 MPEG4 編碼流程圖. 2. VLC. Bitplane coding. Baselayer. Enhlayer.

(14) 接下來的幾個小節將對於 MPEG-4 編碼中比較重要特別的方法作簡單的介紹,分別是 運動補償,離散餘弦轉換,鋸齒狀掃描,變換長度編碼和位元平面編碼。. 2.1.1 運動補償(Motion Compensation) 運動補償是相當基本而重要的視訊編碼過程,可以達到大量的壓縮效果,由於一般視 訊具有大量的 Temporal Redundancy,也就是接連的幾張畫面,甚至是一整串的畫面,彼此 的關聯性都很高,經過運動補償,就是直接取用前面一張畫面的資料,只對於不同的部份 進行編碼,這樣就可以大量的降低資料量,達到壓縮的目的。運動補償的過程簡述如下: z 以區塊為基礎 (Block-based) 把畫面切割為許多小單位,通常為正方塊。 z 運動估測 (Motion Estimation) 對於每一個方塊,在前一張畫面中尋找最相似的方塊,然後記錄其位置 並且同時記錄相對應的運動向量 (Motion Vector),將位置和運動向量置放 在最後編碼出來的 bit-stream 中 z 運動補償 把目前的方塊的影像數值減去運動估測對應的方塊影像數值,剩下的影 像數值就是 Residual,分為 Y,U,V 三個部份. 圖 2.2 運動補償示意圖[5]. 2.1.2 離散餘弦轉換 (Discrete-Cosine-Transform) 離散餘弦轉換是影像壓縮與視訊壓縮常見的方法,在 MPEG-4 的標準中,就是採用 DCT 係數來壓縮,由於人眼對於高頻訊號比較不敏感,所以影像經過離散餘弦轉換之後,高頻 的係數可以比較粗略地量化,如此一來,可以大幅增加壓縮比,而且對於影像品質的影響 很小。. 3.

(15) 2.1.3 鋸齒狀掃描 (Zigzag Scan) 二維的離散餘弦轉換係數,經過量化後,高頻部分數值很小,幾乎皆為零,能量集中 在低頻係數。而鋸齒狀掃描將係數由低頻排列至高頻,高頻的零被集中排列,這樣子的排 列順序經由變動長度編碼(Run Level Coding),可達到可觀的壓縮比。圖示如下:. 圖 2.3 鋸齒狀掃描[5]. 2.1.4 變換長度編碼 (Run-Level-Coding) 變換長度編碼對於有很多一連串的零的序列,能有很好的壓縮效果,經過鋸齒狀掃描 後,產生的序列,能量集中在前面,後面的數值大多是零,因此 MPEG-4 採用變換長度編 碼對序列壓縮。壓縮鋸齒狀掃描後的序列,延續前一小節的例子,我們只要用 7 個變換長 度編碼符號(Symbol)即可完成長度為 64 的序列的編碼,過程如下: ( Run, Level, End) Æ (0,23,0) (0,15,0) (0,11,0) (0,-9,0) (3,4,0) (5,2,0) (5,-1,1) 各個不同的符號,根據機率的統計,再施以霍夫曼編碼(Huffman coding)。. 2.1.5 位元平面編碼 (Bit Plane Coding) 位元平面編碼是 MPEG-4 達成「可精緻可調層次式(Fine-Granularity-Scalability)」的主要 步驟。離散餘弦轉換的係數,經過量化後,編碼成為基本層(Base-layer)。而量化誤差則進 一步經由位元平面編碼,編碼成加強層(Enhancement-layer),可以擷取不同資料量解碼,還 原出不同的影像品質。位元平面編碼的的過程簡述如下: z 把量化誤差以二進數表示,並且對齊最小有效位(LSB) z 找出所有數值中的最高有效位元(MSB) 4.

(16) z z. 從最高有效位元開始,一層一層的對每個位元層編碼 每一個位元層,分別做鋸齒狀掃描與變換長度編碼. 圖 2.4 位元平面編碼[5]. 如此一來,接收端若是接收了全部的資料,則可以還原出完整的數值;接收端若是接 收了一部分的資料,還是可以還原出所有的數值,只是比較不精確而已。. 2.1.6 可調層次式(Scalability) 廣義來說,MPEG-4 的可調層次式有四種,雜訊比可調層次式、時間解析度可調層次 式、空間解析度可調層次式、還有資料分割(Data Partitioning)。其中資料分割主要用於資料 保護,不如前三者著重於精細可調層次式的實現。所以接下來我們主要分別簡述前三項。. 2.1.6.1 訊雜比可調層次式(SNR Scalability) 這裡所謂的雜訊,並不是傳輸上的通道雜訊。一般編碼規格所謂的訊雜比,其雜訊 (Noise) 是 指 量 化 雜 訊 (Quantization Noise) , 而 MPEG-4 可 精 緻 可 調 層 次 式 編 碼 (Fine-Granularity-Scalability Coding)主要方法是透過位元平面編碼達成,而位元平面編碼所送 達的位元平面層數多寡,直接影響到視訊訊雜比,故訊雜比可調層次式經由位元平面編碼, 即可達到相當精細的程度。. 5.

(17) 圖 2.5 雜訊比可調層次式[5]. 2.1.6.2 時間解析度可調層次式(Temporal Scalability) 一般視訊的時間取樣頻率為每秒 24~30 張,而時間解析度可調層次式即是調整時間取 樣頻率。例如:視訊資料編碼成為兩個串流(stream),只接收第一個串流可解碼還原出每秒 15 張畫面,如再接收第二個串流就可以還原出每秒 30 張畫面,而從 15 張畫面到 30 張畫 面之間,也可以存在許多等級的時間解析度,端看編碼規格支援與否。. 圖 2.6 時間解析度可調層次式[5]. 6.

(18) 2.1.6.3 空間解析度可調層次式(Spatial Scalability) 空間解析度可調層次式所調整的,是視訊檔案的解析度。例如:一個 CIF 格式的視訊 檔案,其畫面解析度為 352 X 288,經過具有空間解析度可調層次式能力的編碼器編碼,形 成兩個串流,只接收第一個串流可解碼還原出 QCIF 格式的視訊(176X144),再接受第二個 串流就可以還原出原來 CIF 格式的畫面。其可調層次式能力的精細程度,端看編碼規格支 援與否。. 圖 2.7 空間解析度可調層次式[5]. 一般來說,時間解析度可調層次式與空間解析度可調層次式的可調層次式程度,不及 雜訊比可調層次式來得精細(Fine-Granularity)。一方面是因為三種可調層次式在本質上的難 易度不同,另一方面因為目前這兩種可調層次式所採用的方法,其可調層次式能力皆不及 雜訊比可調層次式所採用的位元平面編碼。. 7.

(19) 2.2 FGS (Fine Granular Scalability) 在先前的 MPEG 標準中,是在固定的頻寬下,對編碼作最佳化,但是在目前的影像傳 輸中,因為使用網路來作為影像傳輸的媒介,而實際的網路環境,是會有變動的、不穩定 的,為了在這樣的條件下,能得到比較好的影像品質,需要在編碼時,對一個區段的頻寬 來作最佳化的動作,而不再只是對於單一的頻寬來作最佳化。有鑑於此,在 MPEG-4 標準 中,加入了細粒狀可調層次式視訊編碼技術[fine granularity scalable video coding]這項技 術,希望可以逼近於 Distortion-Rate 曲線的效能。下圖為使用不同的編碼方式所得到的影 像品質和頻寬的示意圖,在本節接下來的篇幅中,我們將簡單的介紹 FGS 技術的方法和精 神。. MPEG1. 400k bps 800k bps 1.5M bps 圖 2.8 不同編碼方式之比較 FGS 把影像的編碼分成兩個部份,基本層[Base Layer]和加強層[Enhancement Layer]。 其中最重要的資料都是放在基本層的部份,這些資料量在最差的頻寬條件下都假設能夠被 完整地傳輸,因此必須依照可能的頻寬分佈,對基本層的大小作調整。為了達到最好的壓 8.

(20) 縮率,使得編出來的碼最小,所以本層的編碼方式是採用非可調層次式編碼[non scalable coding]。而加強層的部份,則是採用位元平面編碼[bit-plane coding],將全部的資料量扣除 掉基本層已包含的部份,按照量化後的大小,編碼成數個位元平面。依照當時的頻寬狀況, 解碼端會得到不等量的加強層資料,但是不管有多少的資料因為網路狀況而被丟棄,解碼 端都可以以基本層和部份的加強層資料,解出完整的影像,差別只是在於品質的好壞而已。 採用這樣的編碼方式,可以使得影像經過編碼後,可以適用於一整個區段的頻寬,而不在 只是單一的頻寬。下圖是示意圖: Channel. Encoder. Decoder Enh. Enh. : Enhancement Layer. Enh. Base + K bit-planes (K ≤ N). 圖 2.9 FGS 示意圖 在 FGS 編碼中,除了有經過量化(quantization)之外,也將影像的數值轉換成 DCT 係數, 希望藉由它高低頻分佈的特質,配合上 VLC 編碼,可以達到比較好的壓縮效果。上述的方 法在之前已經已介紹過,這裡不再重複。而在解碼端的部份則有很多大同小異的方式可供 選擇,大致上就是一段一段的讀入資料,直到發現下一張 frame 的 header 為止,下面的兩 張示意圖,分別表示出編碼端(encoder)和解碼端(decoder)的一些細節部份。. 圖 2.10 FGS 編碼端架構圖[4] 9.

(21) 圖 2.11 FGS 解碼端架構圖[4] 而下圖則是簡明的表達出最後編碼出來的資料型式:. 圖 2.12 FGS 資料分配示意圖[4] 下面的兩張圖則分別是 FGS 編碼和 SNR scalability 編碼以及非可調層次式編碼[non scalable coding]效能的比較,前者是一類似於 FGS 的方式,而後者則是在單一頻寬下的最 佳結果。. 10.

(22) 圖 2.13 FGS 和 SNR scalability 的比較[4]. 11.

(23) 圖 2.14 FGS 和 non scalable coding 的比較[4] FGS 編碼方式雖然提供了一個可以使得編碼可以適用於比較大頻寬範圍之解決方案, 但是因為只有基本層的資料被用於運動補償[motion compensation],而加強層的資料為了怕 沒有傳達到而帶來 error drift 的問題,所以並沒有被採用在運動補償中。明顯地,這樣的作 法會降低 temporal prediction 的效率,而影響整體的編碼效能,所以一些改善的方法也相繼 被提出,我們將在接下來的兩個小節中作介紹。. 12.

(24) 2.3 一些改善 FGS 的方法 在 FGS 被納入於 MPEG-4 的標準之後,很多關於改善提升 FGS 效能的方法,相繼在 很多的論文中被提出,接下來將對於其中的三種方法作一個簡單的介紹,分別是 TFGS, MCFGS 和 PFGS,而其中最重要的一種改善方式–RFGS 將在下一節中作一個比較完整的 介紹。. 2.3.1 TFGS (Temporal – SNR FGS) 在這個方法中主要是對於兩項 scalability 作一個結合,提供了三種可能的情形作為選 擇,分別是完全採用 temporal scalability,完全採用 SNR scalability 以及同時採用兩者,可 以依照當時可以被使用的頻寬、使用者的需要、解碼端的架構等,作出最適合的選擇。使 用了這項技術之後,增加了編碼的可調性,由實驗結果也發現,在 PSNR 的效能上有所提 升,下面是架構的示意圖:. 圖 2.15 TFGS 編碼端[2]. 13.

(25) 圖 2.16 TFGS 解碼端[2] 下表則是使用 TFGS 和 FGS 方法在不同的 rate 條件下的結果比較:. 表 2.1 TFGS 效能比較表[2]. 14.

(26) 2.3.2 MCFGS (Motion Compensation FGS) 為了改善原始的 FGS 架構中,不使用加強層資訊來作運動補償而帶來的編碼效率不良 問題,在本方法中將提出兩種不同的編碼方式,分別是 one-loop MCFGS 和 two-loop MCFGS,並且提出了一個選擇的機制,在不同的頻寬條件下在上述兩種方法和原始的 FGS 三者中作一個選擇,改善整體的編碼效能。下圖分別為 MCFGS 精神的示意圖,以及如何 決策的方塊圖。. 圖 2.17 MCFGS 示意圖[6]. 15.

(27) 圖 2.18 MCFGS 決策方塊圖[6] 在 one-loop MCFGS 中,基本層和加強層的運動補償中,都同時採用了基本層和加強 層的資訊,這樣可以大幅地提升編碼效率。但是因為基本層的運動補償也採用了可能無法 獲得的加強層資訊,當頻寬不足時,將帶來嚴重的錯誤處罰,所以此方法只在 B frame 中 被使用,這樣可以避免掉影響到其他張畫面的功能。 而在 two-loop MCFGS 中,則是只有在加強層的運動補償中使用加強層的資訊,這樣 也可以提升部份的編碼效率,同時也可以避免掉過大的錯誤處罰,此方法可同時在 B frame 和 P frame 中來使用。 因為在加強層的編碼是使用位元編碼[bit-plane coding],所以在在本方法中也引入了一 個參數 M,來決定採用多少層的加強層資訊作為運動補償時的參考,這樣可以在編碼效率 和錯誤漂移[error drift]之間得到一個平衡,採用不同的參數 M 將得到不同的編碼效果和適 用範圍。 下圖是 MCFGS 和原始的 FGS 在不同的影像下,所得到的 PSNR 效果比較,圖中的 PSNR 值是採用 MCFGS 之後可以得到的改善量:. 16.

(28) 圖 2.19 MCFGS 相較於 FGS 的 PSNR 改善圖[6]. 2.3.3 PFGS (Progressive FGS) PFGS 也是對於 FGS 架構改善的一種方法,在本方法中有兩項主要的精神,分別是盡 量採用最多的加強層資訊來作運動補償,和在所有的運動補償路徑中,在經過數張的畫面 後,都有從基本層到最高層加強層的路徑。第一項是希望可以把編碼效率盡量的提高,而 第二項則是希望錯誤漂移[error drift]的情形不會太嚴重,一次的錯誤,最多只會維持數張 畫面。下圖是 PFGS 精神的示意圖:. 17.

(29) 圖 2.20 PFGS 精神示意圖[3] 下圖則是 PFGS 的編碼端架構圖:. 圖 2.21 PFGS 編碼端架構圖[3] 在本方法中,為了達到第一項精神,會盡量採用更多的加強層資訊,但是如何在編碼 效率和錯誤處罰中取得平衡就需要作討論。而另一方面因為在運動補償時採用了多個可能 的參考畫面,因此在硬體架構上必須使用多個不同的影像 buffer,這樣增加了一定程度的 成本和複雜度。另外,對於如何維持基本層到最高的加強層之間的路徑,也有不同的設計, 因此陸續有多種不同的 PFGS 版本被提出,也有各自的特色。 下面的結果示意圖對於 single layer,FGS 和 PFGS 的效能作了比較: 18.

(30) 圖 2.22 PFGS Akiyo Coastguard Foreman 結果示意圖[3]. 19.

(31) 2.4 RFGS (Robust FGS) 本篇論文中所提出的方法即是以 RFGS 架構為基礎,提出一個演算法,計算出個別影 像的最佳參數,因此在本節中將對於 RFGS[Robust Fine Granularity Scalable Video Coding] 作完整的介紹。 因為在 MPEG-4 標準中所訂定的 FGS,將編碼後的資料分成基本層和加強層兩個部 份,但是在作 temporal prediction 時,只採用基本層的資料當作參考畫面[reference frame], 而加強層的資料部份,雖然有部份被解碼端所接受和使用,但是只能增加當張畫面的視覺 效果,並不能增強運動補償[motion compensation]的效率,這樣的作法可以避免掉當頻寬不 足時,所帶來的 error drift 情形,不會因為當張資料量的傳輸不足,而影響到接下來一連串 畫面的影像品質。但相對地,相較於傳統的 non scalable coding,FGS 技術也犧牲了相當程 度的整體編碼效率。 如同前一節(2.5)中所提及的,有不少關於提升 FGS 編碼效能的改進技術被提出,而本 節中將介紹的 RFGS 是彈性最大的一種(包含兩個可以機動調整的參數),大幅地提升了此 編碼技術的適用性。 我們接下來將分別介紹兩項被本方法所採用來在編碼效率和錯誤處罰間取得平衡的技 術 leaky prediction 和 partial prediction,也將介紹本方法中所提及的簡易參數猜測模式,最 後並把採用 RFGS 編碼的效能和其他方法作比較。接下來的幾張圖,分別是 leaky prediction 和 partial prediction 的示意圖,以及 RFGS 在編碼端和解碼端的架構圖。. E. B. . 圖 2.23 RFGS 想法示意圖[7] 20.

(32) 圖 2.24 RFGS 編碼端架構圖[7]. 21.

(33) 圖 2.25 RFGS 解碼端架構圖[7]. 22.

(34) 2.4.1. Leaky Prediction. 在 傳 統 的 運 動 補 償 技 術 中 , 都 是 採 用 了 全 部 的 參 考 畫 面 資 料 量 來 作 temporal prediction,這樣雖然能使得編碼效率達到理論上的最佳化,但是一旦頻寬不足時,因為參 考畫面中的資料量部份流失,將使得當張的影像品質,連帶地影響到接下來的數張畫面, 直到下一張的 Intra Frame 出現為止。這樣子所帶來的錯誤處罰將是相當的大,因此在 RFGS 中,leaky prediction 的觀念被引用,就是只採用參考畫面的部份來作 temporal prediction。 這部份引進了一個 leaky prediction 參數 α(α 的值介於 0 到 1 之間),也就是只採用 α 倍 的參考資料,剩餘的部份將編碼於 residual 之中。這樣子雖然犧牲了部份的編碼效率,由於 等比級數的關係,當錯誤發生時,將使得錯誤處罰隨著畫面的進行逐漸地變小,增加了一 定程度的對抗錯誤的能力。在一個比較寬的可能頻寬區間,參數 α 的引進,將提升了不少 編碼的整體效能。相關的數學公式和推導,簡述如下[7]:. 23.

(35) 在 RFGS 論文中,也提出了一個線性模型[linear model],用來挑選 Frame Based 參數 α。 其主要的精神,就是經過搜尋之後,在扣除 outlier 的影響後,發現最適合的參數 α 會和當 時的 Base Layer 影像資訊之 PSNR 呈現一個線性的關係,當影像的品質愈好,PSNR 愈高時, 則採用比較低的參數 α,相反的,如果當時的 PSNR 值較低,則採用比較高的參數 α。因 為此 PSNR 值可以很容易地獲得,所以在 RFGS 論文中就是使用此一模型,來挑選合適的 參數 α。PSNR 值和最適合的參數 α 之關係圖如下所示:. . 圖 2.26 RFGS 線性模型示意圖[7]. 2.4.2. Partial Prediction. 另外一個 RFGS 架構中的特色,就是 partial prediction 的使用。因為原本的 FGS 架構中, 只採用了基本層的資訊來作運動補償,雖然可以避免錯誤的發生,但是也一定程度地影響 到編碼效率,所以在 RFGS 中,將使用部份的加強層資訊,來作運動補償,而要採用多少 的加強層資訊,將由參數 β 來決定(參數 β 的值介於 0 到最大層之間)。如果採用的 β 層 加強層資訊在解碼端順利地取得,可以增加一定程度的編碼效率;但是相反地,如果這 β 層的加強層資訊,無法在解碼端被取得,則不但沒有達到增加編碼效率的效果,還會產生 錯誤,如果沒有適當的機制來加以彌補,還會影響接下來一連串影像畫面的效果(error drift)。所以如何採用適合於當時頻寬狀況的 β,對於最後的整體編碼效能將有很大的影 響,在該篇論文中,也依據實驗的結果,對於不同可能頻寬大小,提出了挑選參數 β 的方 法:當頻寬狀況比 512Kbits 還要差時,將挑選 β= 2;當可能的頻寬狀況在 256Kbits 到 1.2Mbits 之間時,將採用 β=3;最後,當頻寬狀況更好時,將採用 β=4。. 24.

(36) 2.4.3 實驗結果 接下來的幾張圖,將分別表示出 RFGS 和 FGS 以及 Single Layer 在不同的頻寬狀況下 的編碼效果,所採用的測試影像分別是 Akiyo,Foreman 和 Coastguard。. 圖 2.27 Akiyo 實驗結果[7]. 圖 2.28 Foreman 實驗結果[7] 25.

(37) 圖 2.29 Coastguard 實驗結果[7] 接下來的兩張結果示意圖,則是 RFGS 和 PFGS 在不同的 MPEG 測試環境下,採用 Foreman 和 Coastguard 所獲得的影像品質比較圖。. .. 圖 2.30 RFGS 和 PFGS 的結果比較[7] 26.

(38) 第三章 RFGS 最佳化參數挑選 在本章中,第一節我們將陳述之前提出之 RFGS 參數最佳化的方法,第二節將介紹以 MSE 替代 PSNR 為比較基礎的方法,第三節將比較兩種方法所得到的結果和適用性,最後 在第四節中,我們將對於本方法作一個總結。. 3.1 先前的 RFGS 最佳化參數挑選方法 因為 RFGS 的架構中,提供了兩個可變的參數,所以本方法中將取 RFGS 的架構為基 礎,發展出一套尋找每一個 FRAME 每一個 MB 的最佳參數。在本節中,我們將完整地介 紹之前 RFGS 參數最佳化的過程,依序是問題的定義、FRAME_BASED 最佳參數的找尋、 MB_BASED 最佳參數的找尋、以及三階段搜尋法[Three-Step Search]。. 3.1.1 問題的定義 我們將在一段可能的頻寬中,找尋可以帶來最好效果的一組參數,我們將把這一段的 頻寬分成數個區域,並依此產生N個檢查點[check point],S1..…SN,其中如果i<j 則Si<Sj。 如同前面章節中對於RFGS的介紹,temporal prediction的效能在不同區域的頻寬將會有不同 的表現,在比較高的Si時,如採用較多的加強層[EL]資訊,將可以使得temporal prediction 的效率提高,使得motion compensation時的gain Gi變大,進而使得整體的效能提升;相對地, 當在比較低的Si時,如採用過多的加強層[EL]資訊來作temporal prediction,不但無法提升效 率,還會產生error drift的情形,帶來比較大的lost Li,而使整體的效能下降。可調層次式編 碼[scalable coding]就是為了在一段頻寬中帶來最大的編碼效率[coding efficiency],在我們提 出的方法中,將以N個檢查點[check point]的編碼效率的平均,作為編碼效能(coding performance)。 如前所述,在 RFGS 的架構中,提供了兩個可供調整的參數α和β來控制 temporal prediction,其中β (0≤ β ≤max_bitplane)是指有多少層的加強層資訊將被用來作 motion compensation,而α (0≤ α ≤1)則是指有多少比例的資訊將被用來作 motion compensation, 可以達到控制 error drift 的效果。 先前所提出的方法的目標就是找到一組的αopt和 βopt,能夠在給定的頻寬區域中得到最 好的效能,可以用下面的式子來表示: (α opt , β opt ) = arg max( α ,β. 1 × ∑ (Gi + Li )) N i∈SG. …..3.1. 在這個方法中,將以 PSNR 作為一個客觀的影像品質評量標準,而 PSNR 的定義如下:. 27.

(39) PSNR = 20 × log10 (. 255 MSE. ). …..3.2. 其中 MSE 指的是原始影像跟經過編解碼所得到的影像的平均差平方(Mean Squared Error)。. 3.1.2 FRAME_BASED 最佳參數 在最基本的 RFGS 架構中,是依照當時最可能的頻寬來決定參數β。至於參數α的部 份則是根據當時的 PSNR 值,依照一個 linear modle 來決定。在參數決定的過程中,並沒 有採用個別影像特質的資訊。而在先前所提出調整α與β參數的方法中,雖然最終的目標是 決定 MB_BASED 的參數,但是為了避免找到的最佳參數值只是局部最佳[local maximum] 解,所以在開始找尋 MB_BASED 的參數最佳值之前,會先找出 FRAME_BASED 最佳參 數,之後再依此為初始值,接著找出 MB_BASED 的最佳參數。如此不但可以避免掉局部 最佳的情形,也可以有效節省 MB_BASED 搜尋的時間。 在該方法中,選擇β為 2、3、4、5、6 等五種情形,α為 0.96875、0.90125、0.8125、 0.71875、0.59375、0.5、0.40625、0.28125、0.1875 等九種情形,在一共四十五組可能的情 況下,分別測試在 N 個檢查點之下影像的 PSNR 值,取出平均值後,再挑選最好的一組α、 β值,作為此張影像的 FRAME_BASED 最佳參數。如果增加α的測試值數量,可以使得 所找到的最佳參數更為精確。. 3.1.3 MB_BASED 最佳參數 以 CIF 格式的影像而言 在同一張影像中包含了 396 個 MB,在不同的區域中,可能有 著完全不同的影像特質,如影像運動速度、影像複雜度、位置等等,使得不同 MB 中所需 要被編碼的 residual 會有一定程度的差異。有鑑於此,在本方法中決定給予每個 MB 不同 的參數值,藉著對於 MB 之間參數值的微調,提升整體的編碼效能。接下來,將簡要介紹 MB_BASED 最佳參數微調的過程。 在決定了 FRAME_BASED 的參數之後,就以此為 MB_BASED 參數的初始值來進行 微調。首先定義 N 個檢查點在解碼端的 PSNR 值之平均為 APR(average PSNR),在接下來 的最佳化過程中,都將以 APR 作為效能好壞的依據。以下將以β為例子,解釋如何找到最 佳參數的過程。首先,定義 TR(j)(gain trend)表示β值的改變趨勢: TR(j) = 0 +1 -1. if max(APR( β 0 ( j ) + ),APR( β 0 ( j ) − )) <APR( β 0 ( j ) ) else if APR( β 0 ( j ) + )>APR( β 0 ( j ) − ). otherwise,. …..3.3. 28.

(40) 其中 β 0 ( j ) 表示此 MB 的初始β值, β 0 ( j ) + 和 β 0 ( j ) − 分別表示將 β 0 ( j ) 往上和往下調整 一個 step 的β值。下圖的例子可進一步的作為說明:. β0 2 2. 2 2. 最佳的β. β0+ 2 2 2. 3. 1. 2. 3 2 TR. β0- 2 2 0. 1 2. 1. -1 0. 圖 3.1 TR 示意圖 因為之前的計算都是在每個 MB 彼此獨立不會互相影響的前提下,但是在實際的況狀 中,並非如此,MB 參數值的調整也會或多或少地影響到其他 MB 參數值的決定,特別是 相臨近的 MB。也就是說,並不是依照 TR 把每一個 MB 都作調整就可以帶來最佳的效能, 為了方便之後的運算,讓對於 PSNR 有比較大貢獻的 MB 有比較高的優先順序,將作以下 的運算。接下來,定義 LG(j)為只對 jth MB 作相對應於 TR(j)調整後,可以對 APR 帶來的 增益,在算完所有的 LG(j)後,再將 LG 按照值的大小,由大到小重新排列,產生一組新的 LG’(j),同時也產生相對應的 TR’(j)。另外定義 OD 表示優先順序,下圖的例子可作為說明:. 1 LG. 2. 0.5 0.7 0.6. 1. 3. 4. LG’. 1. 0.7 0.6 0.5. OD 4. 2 3 1. 圖 3.2 LG OD 示意圖 最後,依照先前的想法,將利用 TR 和 OD 來產生一系列的測試組合,如果在一張 FRAME 中有 K 個 MB,那麼將產生一共 K 組的測試組合,在第 j 組測試組合中,對於貢 獻較大的 j 個 MB 作調整,其餘的 MB 參數則不予變動,最後分別對這 K 組的組合進行測 量,取出能夠帶來最大 APR 的測試組合作為最佳參數,下圖的例子可作為說明:. 29.

(41) 1 TR. 2 OD. -1 1. 4 2 3 1. -1 1 3. 4. 2 2 2 3. 2 2 2 2 β0 1. 3. 1. 3. 2 3 2 3. 2 3 1 3. 1 3 1 3. Test vector1 Test vector2 Test vector3 Test vector4. MB optimizedβ 圖 3.3 Test Vectors 示意圖 以 K=396,也就是每張 FRAME 有 396 個 MB 的 cif 影像為例,表示出其 396 組測試 組合所帶來的 APR,由下圖中可以明顯地發現,並不是調整所有的 MB 才能帶來最佳的效 能,而產生最佳效能的測試組合(峰值的位置),會隨著影像的不同而改變。. 圖 3.4 Test Vectors 結果示意圖[10]. 30.

(42) 3.1.4 三階段搜尋法 Three-Step-Search 在前面幾小節中分別介紹了FRAME_BASED和MB_BASED的最佳參數找尋方式,而 在本節中的三階段搜尋法則是把兩者作一個結合,同時考量α、β所帶來的影響,搜尋出 最佳的參數組合。因為在實際的測試結果中,發現當進行第三次之後的MB_BASE調整, 對參數組合α、β的改變已經相當有限,而且幾乎沒有帶來更多的PSNR增益。相對之下, 第二次的MB_BASED調整可以對於第一次的MB_BASED調整結果,提供一定程度的PSNR 改善,所以最後本方法是採用一次的FRAME_BASED和兩次的MB_BASED調整,來得到 最後的最佳參數αopt、βopt。詳細的步驟如下: 1.為了增加搜尋組合的廣度,也為了避免局部最佳的情形發生,先進行FRAME_BASED最 佳參數的找尋,得到能夠獲得最佳PSNR值的參數組合α0、β0。 2.接下來,把步驟 1 中所得到的α0、β0作為起始點,把α、β分別調上調下一個step加上 不變動,得到一群組合(a,b), a∈(α0(j)-SP, α0(j), α0(j)+SP ),b∈(β0(j)-SP, β0(j), β0(j)+SP)。 在一共九種可能的組合中找出能得到最大的APR一組,並且依照之前的方法算出TR和 LG.,接著算出TR’,LG’和OD,所得到的參數組合為α0’、β0’。 3.重複步驟 2 中的程序,把初始值換成α0’、β0’,經過運算就可以得到新的一組參數 α0’’、 β0’’,也就是最後的最佳參數αopt、βopt。. 3.2 MSE 最佳參數 在本節中將提出一個改以 MSE 大小為基礎的最佳化參數挑選方式,取代原本的以 PSNR 大小為基礎的方法。因為 MSE 和 PSNR 之間的關係並非線性,在比較低的 PSNR 時, 隨著 MSE 的下降,PSNR 上升的速度較慢,而在比較高的 PSNR 時,隨著 MSE 的下降, PSNR 將帶來可觀的上升。但是視覺的品質並不等同於 PSNR,反而是採用 MSE 的大小較 有代表性,因此在考量影像品質時,在一段可能的頻寬中有 N 個檢查點,如果如同之前的 方法,取各個不同頻寬下的 PSNR 作平均的話,將使得高頻寬的檢查點過度地影響參數的 選擇,雖然挑選出來的參數組合在比較高的頻寬下,有較好的表現,但是將對於低頻寬點 帶來嚴重的影響。有鑑於此,我們提出了改以 MSE 為衡量標準的方式,使得各個頻寬點 的重要性較為平均,提升整體平均的影像品質。下面的示意圖表示出了 PSNR 大小和 MSE 大小之間的關係:. PSNR = 20 × log10 (. 255 MSE. ). …..3.4. 31.

(43) 60. 55. 50. PSNR. 45. 40. 35. 30. 25. 0. 20. 40. 60. 80. 100 MSE. 120. 140. 160. 180. 200. 圖 3.5 PSNR 和 MSE 關係示意圖 在相同差距的 PSNR 時,將因為高低 PSNR 而帶來不同的視覺品質差量,其結果如下 圖所示:. (B). (A) (A). (C). (D) 圖 3.6 不同 PSNR 值時的 PSNR 影響 32.

(44) 以 MSE 為大小為基礎的方法和以 PSNR 大小為基礎的方法大致相同,只是從原本的 挑選較大的 PSNR 平均,改成挑選較小的 MSE 平均而已,其他的步驟和作法都同於之前 的方法,在此也不再重複。 明顯地,當只考量單一個頻寬時,兩個方法挑選出來的最佳參數組合將是相同的,但 是當考量的是一整段的頻寬時,由上述的 PSNR 和 MSE 關係示意圖,可以發現,兩個方 法所挑選出來的最佳參數組合將變得不一樣。我們認為採用較貼近於視覺品質的 MSE 作 為比較標準,將可以帶來比較好的結果,所以在本論文所提出的方法中,也將以 MSE 的 大小作為挑選最佳參數的依據。. 3.3 兩個方法的結果比較 在本節中,將以 FRAME BASED 的結果為例子,比較在同樣的頻寬區域下,採用相同 的檢查點,使用兩種不同的方法所找出的結果有什麼不同。我們將以 news、foreman、stefan 這三個測試影像,分別代表慢速、中速和快速的影像,測試的頻寬從 0Kbyte 到 2560Kbyte, 中間取了九個檢查點,分別是 0Kbyte、256Kbyte、384Kbyte、512Kbyte、768Kbyte、 1024Kbyte、1536Kbyte、2048Kbyte、2560Kbyte 的加強層資料,外加 256Kbyte 的基本層資 料。這樣的測試情況包含了好的頻寬狀況、中等的頻寬狀況和不佳的頻寬狀況。 我們產生了一組考量整個區段的頻寬之參數,使用這組參數,我們測試出在不同的頻 寬條件下,經過編碼、傳輸、解碼影像的品質,用 PSNR 和 MSE 兩種不同的標準來檢視。 雖然用 PSNR 和 MSE 兩種不同的標準來選擇參數,但是目前多數的論文是採用 PSNR 為 衡量標準,因此在本論文中的結果比較圖中,仍將以 PSNR 值為效果好壞的比較標準,所 得到的結果如下圖所示:. 33.

(45) 256K. 384K. 512K. 768K. 1024K. 1535K. 2048K. 2560K 圖 3.7 news frame-based 結果. 34.

(46) 256K. 384K. 512K. 768K. 1024K. 1535K. 2048K. 2560K 圖 3.8 foreman frame-based 結果. 35.

(47) 256K. 384K. 512K. 768K. 1024K. 1535K. 2048K. 2560K 圖 3.9 stefan frame-based 結果. 由以上的結果我們可以發現,在比較差的頻寬條件下,使用 MSE 為基準的最佳參數 挑選模式,將可以得到非常明顯的影像品質改善,而在比較好的頻寬條件下,所得到的品 36.

(48) 質下降則是非常有限的,這跟上節中,對於 MSE 和 PSNR 的特性比較,有著相當程度的 吻合。 下面的圖則是將兩種不同的方法所挑選出來的最佳參數 αβ,以圖型的方式,作一個 比較:. (A). (B). (C) 圖 3.10 MSE 方法和 PSNR 方法最佳參數比較圖 (A)(B)(C)分別為 News Foreman Stefan 的結果 明顯地,我們可以發現在以 MSE 為標準的方法中,考量低頻寬時的情形較為平等, 37.

(49) 所以挑選出來的 β 值較小,改善了在低頻寬時過度嚴重的錯誤漂移[error drift]現象;而以 PSNR 為標準的原始方法中,因為太過於重視高頻寬時的情形,所以挑選出來的 β 值普遍 較高。而在另一個參數 α 的挑選上,則兩個方法大致相同,雖然有一些不一樣,不過沒有 很明顯的規律,不過都挑取了相當高的 α,可見使用較高的 α 來提升編碼效率,是比較 好的方法。 下面的圖我們將表示出在所有的檢查點的平均 MSE 和 PSNR 值:. (A). (B). (C) 圖 3.11 平均 MSE PSNR 結果比較圖 (A)(B)(C)分別為 News Foreman Stefan 的結果 38.

(50) 另外,我們也發現,在這個挑選的過程中,因為只考量本張的參數組合對於下一張影 像的影響,而不是考量整串影像的情況,所以對於 error drift 的估算遠較實際情形來得輕 微,很容易在一開始就挑選了比較不適合的參數,而在後續的挑選過程中,因為前面的錯 誤,而無法修正回來。在我們的測試結果中,以 MSE 為標準的方法,比較注重在低頻寬 時的效果,也可以說是比較注重 error drift 的情形;而以 PSNR 為標準的方法中,則因為 PSNR 的特性,所以過份的注重在高頻寬時的效果,所以導致在低頻寬時,產生了比較嚴 重的 error drift,嚴重影響整體的影像品質。 在我們的結果示意圖中,可以發現,因為 error drift 的關係,使得就算以平均的 PSNR 作為比較標準,PSNR 方法所得到的效果,也只有在一組影像中的前幾張比 MSE 方法所得 到的效果好,之後都比較差,如果以 MSE 作為比較標準的話,則是全部都比 MSE 方法來 得差。由這樣的結果,我們也了解到了 error drift 對於編碼效果影響的嚴重性,在之後的估 算中,將特別地注重此部份的研究。. 3.4 總結 在本章中除了介紹原始的參數 αβ 最佳化方法(採用 PSNR),也提出了為了平等的考 量高低頻寬的重要性,而改成採用 MSE 的方法。經過改善後,大幅度的提升了在低頻寬 時的效果,而在高頻寬時的效果降低相當有限,所以在我們接下來的論文發展中,也將以 MSE 的大小作為決策的標準,最後在比較不同作法的整體效能時,再使用 PSNR 為衡量的 依據。下圖為本方法的流程示意圖:. Test (α,β) …... Average Decoder PSNR ………... Encoder. pseudo channels. Decoder. Average MSE Decision. Optimized(α,β). Re-encode 圖 3.12 最佳化流程示意圖 由上圖中我們可以了解到,採用這個方法來搜尋找最佳化參數,需要經過編碼端、通 道、解碼編,在計算 PSNR 或是 MSE 之後,才能經過一個比較機制來得到最適合的參數 39.

(51) 組合。這樣的作法需要非常多時間的,在目前的電腦環境中,編碼一張影像需要超過三個 小時才能完成,這樣的速度就算是離線作業,也是不可行的。另外,由之前的分析中,我 們也了解到本方法中,只考量到參數組合對於下一張畫面的影響,並不是考慮接下來一整 串畫面,所以當錯誤發生時,會一定程度地低估了錯誤處罰的嚴重性,而影響最佳參數組 合挑選的準確性。 雖然本方法在速度上和錯誤漂移的考量上有很大的缺失,不過仍然証明了對於不同的 影像,不同的頻寬條件下,對於不一樣的畫面,甚至是同一張畫面中的不同 MB,依照不 同的影像選取不同的參數組合,可以帶來不同程度的品質改善。. 40.

(52) 第四章 數據分析 在第三章中所介紹的方法,驗証了我們原先的假設,就是依照不同的影像特質,對於 不同的 FRAME,甚至是不同的 MB,個別採用其適合的最佳參數組合,將可以使得編碼 後的影像,在一整段的可能頻寬間,得到一個最好的平均效果。但是在另一方面,因為原 本搜尋的方法,不論是 FRAME BASED 或者是 MB BASED,雖然已經採用了三階段搜尋 法來縮小尋找的範圍,需要測試的組合還是非常的多,而且前述的方法雖然經過加速,不 過還是一種測試法,包含編碼,通過假設性的通道(channel),再解碼,計算最佳的參數, 如果要取得 MB BASED 的最佳參數組合的話,在現有的電腦環境下,一張 cif 大小的影像, 將需要超過三個小時才能夠編碼完成,就算編碼的須求是事先完成(off line),但是在時間 上還是近乎不可行。 另一方面,在原本的方法中,因為在挑選最佳參數的過程中,只考量到下一張的情形, 大幅地低估了 error drift 的影響,很可能挑選出了不適合的參數組合,如果要改成考慮兩 張,甚至多張的綜合情形,將使得原本就已經非常慢的運算速度,雪上加霜。就算改成使 用了我們所新提出的以 MSE 為考量基準的方法,雖然在高低頻寬的比重上,解決了先前 計算的盲點,相當程度地改善了整體的影像品質,在 error drift 的考量方面,也因為加強了 低頻寬重要性,所以也改善了部份低估 error drift 的缺點,但是還是有相當大的改善空間, 在接下來我們所發展的快速猜測法中,將對於 error drift 的影響,完整地來列入計算。 有鑑於此,利用了前述的方法驗証了採用不同的參數組合有其價值之後,我們將試著 發展出一套猜測的方法,利用影像不同的特質,例如 motion vector 大小、影像複雜度、residual 大小等等,輔以建立的模型(module),在經過簡單的估算後,就可以挑選出接近於最佳化 的參數組合,希望發展出來的方法,可以在稍微地增加運算量的情況下,改善相較於固定 參數組合下的影像品質,並且在可能的情況下,盡量逼近前述方法的效果。 在本章中,我們將試著利用一些方法,統計分析在不同條件下影像的特性,希望在這 些繁瑣的數據中,發現一些規律,建立成模型,提供快速的參數決策過程中來參考。在本 論文的分析中,將以 FRAME BASED 的方式來進行,考量不同影像的一些特質。在前兩個 小節中,我們將分別對於影像經過解碼端之後的特性進行分析,第一節中,我們將分析不 同參數 β 之選擇,如何對於最後的影像效果帶來品質提升,也就是對於 MSE gain 的大小 進行估測。而在第二節中,我們將試著去了解當通道狀況不佳時,產生的錯誤和伴隨而至 的錯誤漂移[error drift]之特性,經過一些實驗的設計,找尋出一個可以快速的估算出不同 頻寬條件下錯誤對於影像品質的影響大小,也就是對於 MSE lost 的大小進行預測。接下來 在第三節中,為了進一步把參數的決策提前,我們對於編碼端內部的結果關聯性進行了解, 提出了一個可以由 residual 大小來預測最後編碼完成後 bit-stream 大小的模型。最後,在第 四節中,我們將作一個簡單的總結。. 41.

(53) 4.1 MSE gain 在原本的最佳化參數挑選方法中,要得到最佳參數組合在每次採用不同的參數組合進 行測試時,都必須要經過完整的編碼、通道、解碼後,再對於得到影像計算 PSNR 或者是 MSE,最後再挑選最適合的參數組合,雖然較為精確,但是也使得所需耗用的時間過長, 而幾乎不實用。因此,我們接下來將分析影像在不同的頻寬下,經過解碼端後,會產生怎 麼樣的影像品質變化,希望能夠直接在編碼端,就可以預測經過通道和解碼後的 MSE 變 化,簡化參數挑選的流程,想法如下圖所示:. Test (α,β)…... pseudo channels Decoder ………... Encoder. Average MSE. Decoder. Decision. Optimized(α,β). Re-encode Test (α,β)….. Bit-stream Byte count. Decision. Encoder Optimized(α,β) 圖 4.1 MSE 估算示意圖. 在接下來的兩節中,將分別對於參數如何降低 MSE 和錯誤如何增加 MSE 來進行分析, 在。而在本節中,第一小節將討論 MSE gain 的成因來源;第二小節將對於 MSE gain 的大 小進行分析統計;最後在第三小節中,我們將作一個總結,並依此提出規則二。. 42.

(54) 4.1.1 MSE gain 的來源 當我們使用不同的參數 β 來編碼時,將使運動補償的效率改變。當 β 值採用得較高 時,將可以使得經過運動補償後的 residual 變得較小,最後編碼完成的 bit-stream 也將變得 較短,byte 數較少,使得在相同的頻寬條件下,解碼端可以得到較多的資訊量,進而使得 最後經過解碼後的影像品質提升。反之,當 β 值採用得較低時,將使得運動補償效率不佳, 解碼端在相同的頻寬下,可以獲得的資訊變少,還原的影像品質較差。其想法如下圖所示:. Enh 4~ β=3. Enh Available Bit rate. Enh 1-3. Base. For M.C.. Base Available. Enh 5~. β=4. Enh 1-4. Base. Enh For M.C.. Available Bit rate. Base Available. 圖 4.2 MSE gain 來源分析 我們實際使用不同的參數組合對於影像進行編碼,而產生不一樣大小的 residual,下 面的圖表示出在不同的 β 值時(α 設為最大值 1),所得到的 residual Y 元素大小,其中顏 色愈深的部份表示 residual 的值愈大,愈淺的部份則表示 residual 的值愈小,所採用的測試 影像為 News。. 43.

(55) β=1. β=2. β=3. β=4. β=5. β=6. 圖 4.3 Residual 大小示意圖 為了更清楚地了解使用不同的 β 值時對於 residual 大小的改變量,我們把不同 β 值之 下的 residual 差值用下圖表示出來。同樣地,顏色愈深的部份表示差值愈大,採用的測試影 像也是 News。. β = 1 to 2. β = 2 to 3. β = 3 to 4. β = 4 to 5 圖 4.4 Residual 大小差值示意圖 44.

(56) 由以上的結果可以明顯地看出 Residual 大小和所採用的 β 值有很大的關聯性,愈大的 β 可以使得最後的 residual 愈小,進一步地使得編碼出來的 bit-stream 長度較小,得到較好 的編碼效率。也可以發現愈低層的加強層資訊被採用時,可以減小的 residual 大小愈大相 對,比較高的加強層資被採用時,所帶來的好處就較為有限,這個特性在最後的 β 值選擇 時,將被考慮。. 4.1.2 MSE gain 分析 在了解了不同的 β 值如何影響編碼出來的 bit-stream byte 數後,為了進一步了解 byte 數和解碼端所得到的影像品質(MSE)之關係,我們實作了一個特殊的通道,可以控制其傳 給解碼端的 byte 數。我們測試了使用不同的 β 值,接收到不同的 byte 數(0~20000),每 200 個 byte 作一次統計,以 News 為例,得到了下圖中的結果,發現 MSE 大小和 byte 數,在 不同的 β 被使用時,都是呈現一個由數段線性所組成的關係,而且,在不同的 β 曲線中, 都有斜率非常相近的線段,只是位置和長度大小不同而已。另一方面,使用不同的影像進 行測試時,所得到的關係都是類似的。. slope. 圖 4.5 MSE 和 Byte 數關係圖 接下來,我們採用描點的方式,把不同 β 值,不同畫面的結果,畫成如下的示意圖。 可以清楚地發現, 同一層的資料量(byte 數)對於最後的 MSE 貢獻是一致的,所以我們只要 知道每一層資料量的大小(bit-stream 分佈)和頻寬大小,就可以不需經由實際的解碼動作, 就估算出解碼之後效果的改變情形。. 45.

(57) linear. 圖 4.6 MSE gain 和 MSE 值關係圖. 4.1.3 總結(規則一) 經由測試不同的影像,我們發現這些線性的關係也是通用的,唯一的不同是,因為不 同影像 residual 的特質,會使得同一層的資料量大小不同。另外,MSE 計算的基準,將隨 著不同的影像而有所不同,但是同一層資料對於最後 MSE 大小的貢獻情形是一樣的。我 們把所得到的結果整理於下表: 基本層和第一層加強層的資料量為基準值 Bit-plane 2 每 200bytes 對於 MSE 之貢獻. 3.5. Bit-plane 3 每 200bytes 對於 MSE 之貢獻. 1. Bit-plane 4 每 200bytes 對於 MSE 之貢獻. 0.3. Bit-plane 5 每 200bytes 對於 MSE 之貢獻. 0.1. Bit-plane 6 每 200bytes 對於 MSE 之貢獻. 0.05. 表 4.1 MSE gain 和 byte 數關係表 因為第一層資料量過小,而且其對於 MSE 大小的貢獻情形較為不一致,而且在頻寬 不要太差的前提下,第一層的資料大多都會順利地傳到解碼端,所以不會影響到 MSE 的 基準,所以我們也不予考慮。 由上表中的關係,我們稱之為規則一,可以在頻寬已經知道的情況下,約略地估計 出經由實際的解碼後最後的效果改變情形。. 46.

(58) 4.2 MSE lost 在我們採用了部份加強層的資訊來提升運動補償效率的同時,如果使用了過多的資料 量,當頻寬不足時,將會對於畫面的效果帶來一定程度的影響,而且因為錯誤漂移的關係, 將不只會影響到一張畫面,而是對於之後所有的畫面(到下一張 Intra 畫面為止)都有影響。 如同第三章中的討論,錯誤漂移和錯誤處罰將要被完整地考慮,避免因為低估它的影響性, 而降低整體的編碼效果。 在本節接下來的篇幅中,接在第一小節對於錯誤漂移[error drift]進行討論。在第二、 三小節中分別討論錯誤漂移的兩項特性:可加性和指數型遞減性。在第四小節中將討論錯誤 處罰對於 MSE 大小的影響。最後,在第五小節中,將作一個總結,並且整理出關於 MSE lost 的兩項規則: 規則二和三。. 4.2.1 錯誤漂移(error drift) 在影像壓縮編碼中,達到好的壓縮效果主要的貢獻就是來自於運動補償的採用,也就 是對於接連的兩張畫面中,只編碼其有差異的地方(residual)。因為一般的情形之下,接續 的兩張畫面會十分地相近,因此需要編碼的部份變成非常的小,藉此達到良好的壓縮效果。 但是相對地,如果前一張的資訊因為頻寬不足,或者是網路問題而無法被解碼端完整 地接收時,如果這些遺失的部份沒有被運動補償所採用,則只會對於該張畫面帶來影響。 但是如果遺失的部份被運動補償作為參考時,因為在作編解碼時,已經把之前一張畫面中 遺失的資料假設為收到,所以這部份的資料並沒有被 residual 所包含,不論傳送下一張的 頻寬為何,都無法補回,這種錯誤會對接下來的一連串畫面品質帶來影響,這樣的影響會 一直持續到下一張 I ( Intra )畫面為止。如下圖所示:. 47.

參考文獻

相關文件

a 全世界各種不同的網路所串連組合而成的網路系統,主要是 為了將這些網路能夠連結起來,然後透過國際間「傳輸通訊 控制協定」(Transmission

使用人工智慧框架基礎(Frame-based)的架構,這些努力的結果即為後來發展的 DAML+OIL。DAML+OIL 是 Web Resource 中可以用來描述語意的 Ontology 標 記語言,它是以 W3C

Wi-Fi 定位即利用無線網路來傳遞信號,根據各種網路參數和算法可以找出使用

隨著影像壓縮技術之進步、半導體科技之快速發展、無線通訊技術與數位傳送輸技術

H2-7:不同 Facebook 得知管道的 Facebook 遊戲使用者在 Facebook 遊戲動機有顯著 差異。. H2-8:不同 Facebook 平均每次使用時間的 Facebook

類神經網路 ( Artificial Neural Network ),根據 DARPA Neural Network

而隨著道路之持續開發,隨之而來的大量環境破壞則成為促進道路生 態學發展的推手。歐美國家自 1920 年開始積極推動有關道路生態之 研究,藉以保護自然環境中之大型哺乳動物。表

無線感測網路是個人區域網路中的一種應用,其中最常採用 Zigbee 無線通訊協 定做為主要架構。而 Zigbee 以 IEEE802.15.4 標準規範做為運用基礎,在下一小節將 會針對 IEEE