用於快速H.264編碼之可適性可變區塊大小提早終止演算法
全文
(2) 用於快速 H.264 編碼之可適性可變區塊大小提早終止演 算法 學生:張述理. 指導教授:蘇崇彥 博士. 國立臺灣師範大學應用電子科技研究所碩士班 中文摘要 在移動估測後,不同的影像序列會有不同比例的區塊具有零移動向 量,我們稱此區塊為零移動區塊。當 區塊的移動向量為零,則區塊內 (0,0) 這點會有最小的代價值。先 前的可變區塊大小零移動區塊偵測演算法利用 此特性,僅計算 (0,0) 這個搜尋點,並且給予不同大小區塊不同的門檻值, 藉此來預測該區塊是否為零移動區塊。當 該 區 塊被預測 為零移動 區塊時 , 則可提早終止搜尋,以加快編碼速度。. 然而,使 用固定門檻值的方式無法適應影像內容的變化。因此,本論 文提出讓門檻值在固定範圍內進行變動,搭配已編碼畫面所得到的零移動 區塊變化趨勢,在 編碼的過程中動態的調整各 模式的門檻值,可 以省略不 必要的計算點數來達到節省編碼時間的目的。實驗結果證實,本 研究所採 用的動態調整門檻值的觀念,能較有 效的貼近 各種不同 內容的影 像序列 。 平均能加快 14.40%的編碼時間,平 均能減少 21.34%的移動估測時間,且 平均只有 0.03dB 的影像品質降低,以及平均 1.15kbit 位元率的增加。 故 能在對影像品質有較小的影響下,節 省更多的 編碼時間 及移動估 測時間 , 達到更佳的視訊編碼效率。. 關鍵字: H.264、零移動區塊、提早終止。. i.
(3) An Adaptive Variable Block-Size Early Termination Algorithm for Fast H.264 Video Coding. Student:Shu-Li Chang. Advisor:Dr. Chung-Yen Su. Institute of Applied Electronics Technology National Taiwan Normal University ABSTRACT In a video sequence, a portion of blocks has a zero motion vector (MV) after motion estimation. We call these blocks as zero motion blocks. If a block is a zero motion block, it is likely to have the smallest cost at MV (0,0). The variable block-size zero motion detection defines several candidate thresholds for seven block sizes. It predicts the zero motion vectors by examining the (0,0) point in a search area. If the cost at (0,0) is smaller than the thresholds, the remaining motion search is skipped which can accelerate the entire coding procedure. However, a fixed set of thresholds can not react to the variation of different video sequences. To solve this problem, we proposed an adaptive set of thresholds. By dynamically change the thresholds for different coding modes, we can predict more zero motion blocks,. early. stop. motion. estimation,. and. omit. remaining. computation.. Experimental results show that the proposed method can averagely reduce the entire coding time up to 14.40% and the motion estimation time up to 21.34% at the price of negligible coding loss.. Keyword: H.264、 zero motion blocks、 early termination. ii.
(4) 誌. 謝. 感謝指導教授 蘇崇彥老師在這兩年的時間裡不辭辛勞的指導我,不 管 在 研 究 領 域 的 專 業 知 識 或 是 求 學 做 人 的 道 理,都 讓 我 受 益 匪 淺;另 外 , 還 要 感 謝 VIP 實驗室的學長、同學以及學弟們 。沒有學長們的指導與幫 忙,宜賢、啟銘和耿豪的相互照應,應用電子所師長們的照顧,以及應用 電子所同學間砥礪學習,我 的碩士生 涯就不會 過的這麼 順遂且多 采多姿 。 在此希望蘇老師、VIP 實驗室和應用電子所的師長、同 學們在往後的生活 都能過的順心如意,也希望我們的友誼永遠長存。. 另外,在 此由衷的感謝口試委員吳炳飛教授、瞿忠正教授以及高文忠 教授對本論文所給予寶貴的建議與指 導,讓本論文更趨完善。. 最後我要感謝一路陪伴我成長的家人和女友,給我無後顧之憂的環 境,在背後默默的支持我,因為有你們的鼓勵與支持,我才能順利的完成 我的學業。. 在此,感謝在我人生中,給我幫助、 鼓勵和批評的人,謝謝 !. 述 理 2008 年 于 VIP 實驗室. iii.
(5) 目. 錄. 中文摘要 .....................................................................................................i ABSTRACT................................................................................................. ii 誌. 謝 ....................................................................................................... iii. 目. 錄 ....................................................................................................... iv. 圖目錄 ....................................................................................................... vi 表目錄 ......................................................................................................vii 第一章. 緒論 ............................................................................................. 1. 1.1. 研究 背景 ..................................................................................... 1. 1.2. 研究目的 ..................................................................................... 2. 1.3. 全文 架構 ..................................................................................... 3. 第二章. 相關文獻探討 .............................................................................. 4. 2.1. H.264 視訊壓縮流程 ................................................................... 4. 2.2. 移動 估測 (Motion Estimation) .................................................... 5. 2.3. 零區 塊 (Zero Block) 偵測演算法 ............................................... 9. 2.3.1. 可 變區塊大小零移動偵測 (VBZMD)[9]............................... 10. 2.3.2. 可 變區塊大小最佳移動偵測 (VBBMD)[9]........................... 14. 2.3.3. 增 強型全零區塊偵測演算法 [9] .......................................... 16. 第三章. 可適性提早終止演算法 ............................................................. 21. 3.1. 可適性提早終止演算法介紹 ..................................................... 21. 3.2. 門檻值訂定之討論 .................................................................... 25. 3.3. 門檻值變動之討論 .................................................................... 30. 第四章. 實驗結果 .................................................................................... 34. 4.1. 實驗條件和發展環境 ................................................................ 34. 4.2. 參數 設計 ................................................................................... 36. 4.3. 可適性提早終止演算法實驗結果 .............................................. 46 iv.
(6) 第五章. 結論及未來展望 ........................................................................ 53. 參考文獻 .................................................................................................. 54. v.
(7) 圖目錄 圖 1-1. H.264 三種不同規範[2] ................................................................ 2. 圖 2-1. H.264 編碼系統架構圖 [5] ............................................................. 4. 圖 2-2. 移動估測示意圖 ............................................................................ 6. 圖 2-3. 七種不同大小的區塊編碼模式 ...................................................... 7. 圖 2-4. 殘值區塊不同模式的編碼 [5]......................................................... 8. 圖 2-5. VBZMD 演算法 [9] ...................................................................... 12. 圖 2-6. H.264 移動向量預測模式 ............................................................ 14. 圖 2-7. 全零區塊與門檻值的分佈情形 (QP = 28) [13] ........................... 17. 圖 3-1. H.264 編碼流程圖與所提出之演算法 ......................................... 22. 圖 3-2. AET 演算法之細部執行流程 ....................................................... 23. 圖 3-3. NZMB(t) 與 NZMB ave (t)的例子 .................................................. 31. 圖 4-1. 實驗所使用的國際標準測試影像 ................................................ 35. 圖 4-2. 十個測試影像編碼時間比較圖 .................................................... 48. 圖 4-3. 十個測試影像移動估測時間比較圖 ............................................ 48. 圖 4-4. Akiyo 測試影像門檻值變動情形 ................................................. 49. 圖 4-5. Salesman 測試影像門檻值變動情形 ............................................ 49. 圖 4-6. News 測試影像門檻值變動情形 .................................................. 50. 圖 4-7. Silent 測試影像門檻值變動情形 ................................................. 50. 圖 4-8. Foreman 測試影像門檻值變動情形 ............................................. 51. 圖 4-9. Coastguard 測試影像門檻值變動情形 ......................................... 51. vi.
(8) 表目錄 表 2-1. 七種模式零移動區塊的比例 (QP = 32)[9] .................................. 10. 表 2-2. Foreman 影像在不同正確率所使用的門檻值 (QP = 32)[9]......... 11. 表 2-3. VBZMD 演算法的效能 [9] ......................................................... 13. 表 2-4. 預測移動向量區塊之比例 [9] ..................................................... 15. 表 2-5. VBBMD 使用最佳門檻值與 VBZMD 之比較 (QP = 32)[9]......... 16. 表 3-1. 測試影像中 ZMB 的平均 cost 值 (QP = 32) ................................ 25. 表 3-2. 測試影像中最大、最小 cost 值與標準差(QP = 32) ................... 27. 表 3-3. 七個模式所使用的門檻值變動範圍 .......................................... 30. 表 3-4. 編碼中畫面與前 N 張畫面平均 ZMB 的變動率 ........................ 32. 表 4-1. 實驗條件 ................................................................................... 34. 表 4-2. Akiyo 測試影像在不同 w 與 Y 下的 PSNR 值 ........................... 37. 表 4-3. Salesman 測試影像在不同 w 與 Y 下的 PSNR 值 ...................... 37. 表 4-4. News 測試影像在不同 w 與 Y 下的 PSNR 值 ............................ 38. 表 4-5. Silent 測試影像在不同 w 與 Y 下的 PSNR 值 ............................ 38. 表 4-6. Foreman 測試影像在不同 w 與 Y 下的 PSNR 值 ....................... 39. 表 4-7. Coastguard 測試影像在不同 w 與 Y 下的 PSNR 值 ................... 39. 表 4-8. 六個測試影像在不同 w 與 Y 下的平均 PSNR 值 ...................... 41. 表 4-9. Akiyo 測試影像在不同 w 與 Y 下的編碼時間 ........................... 42. 表 4-10. Salesman 測試影像在不同 w 與 Y 下的編碼時間 ...................... 42. 表 4-11. News 測試影像在不同 w 與 Y 下的編碼時間 ............................ 43. 表 4-12. Silent 測試影像在不同 w 與 Y 下的編碼時間 ........................... 43. 表 4-13. Foreman 測試影像在不同 w 與 Y 下的編碼時間 ....................... 44. 表 4-14. Coastguard 測試影像在不同 w 與 Y 下的編碼時間 ................... 44. 表 4-15. 六個測試影像在不同 w 與 Y 下的平均編碼時間 ...................... 45. 表 4-16. AET 演算法實驗結果 ................................................................ 47 vii.
(9) 第一章. 1.1. 緒論. 研究背景. 科技的進步造就了電子產業的快速發展,使得消費者對於數位娛樂的 需求日益提高。由 早期的純文字格式,進步到靜態影像和動態影音。因 此 產生了許多音訊、視訊編碼標準,讓 人類能夠享受高品質的數位影像、音 訊帶來的娛樂效果。近年來通訊網路的進步,第三代( 3G)、第 三點五代 (3.5G)行動通訊的開放,加上數位電視(Digital TV,DTV) 和 高 畫 質 電視(High Definition TV,HDTV )的開播,大幅提高了視訊傳輸和影 像資料處理的需求,因此需要更高效率的視訊規格。. 視 訊 編 碼 標 準 主 要 可 分 為 兩 類 , 一 是 由 國 際 電 信 聯 盟 ITU (International Telecommunications Union, ITU)中的視訊編碼專家小組 VCEG(video coding experts group,VCEG)所 制定的 H.261、H.262、H.263 等 。 另 一 則 是 由 國 際 標 準 組 織 ISO ( International Standardization Organization, ISO)中的動畫專家小組 MPEG ( Moving Picture Experts Group, MPEG)所制定的 MPEG 系列標準。為了提供更高的壓縮效率及 網路的適用性,由 VCEG 與 MPEG 所共同組成的 JVT 團隊在 2003 年制定 了 H.264。此標準在 VCEG 稱為 H.264,在 MPEG 中,被歸類為 MPEG-4 的第十個部份,並 命名為進階視訊編碼(Advanced Video Coding,AVC), 故亦被稱為 H.264/AVC。. 做為下一代的視訊編碼標準,H.264 有以下的優點:在相同的視訊的 品 質 下 , 和 H.263 相 較 , 只 需 其 不 到 一 半 的 位元 率 。 適 用 於 各 種 不 同 位 元率的環境,而不單著重在低位元率的環境。擁有更強悍的網路傳輸設 1.
(10) 計,具有較高的抗錯能力 (Error Resilience)。 採用多幅移動向量估測與可 變區塊大小來增進壓縮效能。H.264 達到過去所不曾有的效果,但伴隨而 至的是高度複雜的演算法。為了讓 H.264 能廣泛的應用,主要訂定了三種 規 格 , 如 圖 1-1 所 示 。 包 括 基 本 規 範 (Baseline Profile)、 主 要 規 範 (Main Profile)和延伸規範 (Extended Profile) [2],基本規範可用於視訊品質要求 較低的 3G 視訊電話;主要規範可用於高畫質 的視訊儲存;延伸規範則可 用於串流媒體應用。. 圖 1-1. 1.2. H.264 三種不同規範[2]. 研究目的. H.264 之所以能達到高壓縮效率,同時保有高視訊品質,是因採用了 許多新的編碼技術。如畫框內的預測 (Intra Prediction)、四分之ㄧ像素點的 移動估測 (Quarter Pixel Motion Estimation)、多張參考畫面 (Multi-reference Frame)、 更 高 壓 縮 效 率 的 熵 編 碼 (Entropy Coding)[2]等 。 這 些 新 技 術 也 為 H.264 帶 來 高 度 的 運 算 複 雜 度 和 大 量 的 計 算 量 , 較 難 以 滿 足 即 時 上 (Real-Time)的需求。如何減少複雜度和計算量,成為近幾年來熱門的研究 2.
(11) 方向。. 在處理一連串的連續性影像時,若將完整的影像一張一張的傳輸,除 了等待的時間會變長,同時也會佔用相當多的頻寬或儲存資源。因此,若 我們能對影像進行壓縮,除 了可以減少傳輸的 等待時間,亦能降低使用的 資源。在 動態的影像中,相 鄰兩張畫面間具有高度的相關性,透 過兩相鄰 畫面的比對和計算,我們可得到畫面的移動向量(Motion Vector,MV)和 殘 值影像,減少所需處理的資料量,達 到資料壓縮的目的。這種處理的方式 我們稱之為移動估測。. 根據統計 [1][3][4],在 H.264 影像壓縮過程中,移動估測佔用最多的 編碼時間。在使用一張參考畫面的編碼條件下,移動估測約佔了整體編碼 時間的百分之六十,若使用五張參考畫面,則 移動估測佔整體編碼時間提 高至百分之八十 [3]。若 加 入 其 他 編 碼 條 件,可 能 就 需 要 更 多 的 編 碼 時 間 。 因此本論文主要是對於如何降低移動估測的計算量進行研究,以 加速整體 的編碼時間。. 1.3. 全文架構. 本文提出一可適性快速 H.264 提早終止演算法,並對此演算法做詳細 的探討。第一章為本論文的簡介,分 別提出了研究背景與研究目的。第 二 章將介紹 H.264 的壓縮流程,以及過去專家學者所提出的相關演算法,並 列出其優缺點。第 三章為本研究所提出的可適性提早終止演算法,包括 其 架構、動 機及改善部分。第 四章為實驗的步驟及相關的模擬結果,分別針 對所得到的實驗數據做分析與比較。 第五章則為本研究的結論與未來展 望。. 3.
(12) 第二章. 2.1. 相關文獻探討. H.264 視訊壓縮流程. H.264 視訊編碼標準採用許多新的編碼技術,以達到較高的視訊品質 及壓縮效率。然而,這些技術也同時提高了 H.264 的運算複雜度,增加 系統的編碼時間。. H.264 採用的是混合式區塊編碼的架構(Hybrid-Block Coding)。對 於輸 入的畫面定義出三種不同的型態,分 別為 I 畫 面、P 畫面和 B 畫面。若 對 整張輸入畫面直接進行編碼,不使用參考畫面,則為 I 畫面。若 輸入畫面 有參考到前一張或是多張畫面即為 P 畫面。若 輸入畫面有參考到前後一張 或 前 後 多 張 畫 面,稱 之 為 B 畫 面。圖 2-1 為 H.264 編 碼 器 的 系 統 架 構 圖 。. 圖 2-1. H.264 編碼系統架構圖 [5]. 4.
(13) 從圖 2-1 可得知,對於 I 畫面而言,輸入影像會先選擇內部預測 (Intra Prediction) , 再 將 內 部 預 測 的 結 果 與 原 畫 面 相 減 , 經 由 離 散 餘 弦 轉 換 (Discrete Cosine Transform, DCT) 、 量 化 Q (Quantization) 、 重 新 排 序 (Reorder) 、熵編碼 (Entropy Encode)後形成資料流輸出。對於 P 畫面而言, 會 利 用 輸 入 影 像 與 參 加 畫 面 進 行 移 動 估 測 , 再 進 行 移 動 補 償 (Motion Compensation,MC),再將得到的結果與原畫面做計算,重覆的將殘值進 行離散餘弦轉換、量化、重新排序 、 熵編碼後形成資料流輸出。H.264 還 內含了去方塊濾波器(In-Loop De-blocking Filter),優點是經過處理後的重 建視訊品質較好,在移動估測時能大幅提升精 確度,進 而消除不必要的冗 餘計算。. 2.2. 移動估測 (Motion Estimation). 畫框間編碼(Inter-Frame Coding)是以時間域 (Time Domain)為基礎的編 碼技術,移動估測在此佔了很重要的地位。一般的做法是以區塊比對 (Block Matching) 的 方 式 做 處 理 , 最 常 使 用 的 就 是 區 塊 移 動 估 測 (Block Motion Estimation, BME), 而 區 塊 移 動 估 測 主 要 是 利 用 區 塊 匹 配 的 方 法 來 判 斷 兩 區 塊 的 相 似 度 , 即 為 區 塊 匹 配 演 算 法 (Block Matching Algorithm,BMA)。當處理一張畫面時,先將此張畫面分割成一個個 16x16 的 巨 區 塊 (Macroblock), 再 以 巨 區 塊 為 單 位 來 做 移 動 估 測 , 預 估 移 動 向 量。移動向量是以此張畫面為基準,在參考畫面中有限的搜尋範圍(Search Range)內,尋找差異量最小的區塊,如圖 2-2 所示。再 將所搜尋到的位置 相減,即是移動向量。然後做移動補償。. 然而,要判斷兩區塊間的相似程度,需利用數學式來當作檢驗的標 準,常用來檢驗兩區塊間相似程度的 數學式有下列三個:. 5.
(14) 1.. 平方誤差總合(Sum of squared error,SSE): SSE =. N −1 N −1. ∑∑(f. t. (i , j ) − f. t −1. (i + x , j + y )) 2 ..................(2-1). i=0 j =0. 2.. 平均絕對誤差(Mean absolute error,MAE): MAE =. 3.. 1 N2. N −1 N −1. ∑∑. f t (i, j ) − f t −1 (i + x, j + y ) …................( 2-2). i =0 j =0. 絕對誤差總和(Sum of absolute difference, SAD): N −1 N −1. SAD = ∑∑ f t (i, j ) − f t −1 (i + x, j + y ) .……..………..( 2-3) i =0 j =0. 上述三式中, f t (i, j ) 是目前畫面區塊中的像素值, f t −1 (i, j ) 為參考畫面中經 由 重 建 後 區 塊 的 像 素 值 , x、 y 為 區 塊 移 動 之 相 對 應 位 置 。 為 了 兼 顧 計 算 速度與比對的精確度,以及軟硬體的實現複雜度來考慮,絕對誤差總合 SAD 是一般最常採用的衡量方式。. 圖 2-2. 移動估測示意圖. 6.
(15) 在前一代的視訊標準,如: H.263 和 MPEG-4,已採用可變區塊大小 的方式來進行編碼。H.264 為了達到更高的視訊品質及壓縮比,採用了七 種 不 同 大 小 的 區 塊 來 進 行 編 碼,分 別 為 16×16、16×8、8×16、8×8、8×4、 4×8 和 4×4,如圖 2-2 所示。一開始有四種模式能選擇,分別為 16×16、 16×8、 8×16 和 8×8, 在 這 四 個 模 式 決 定 出 一 個 最 好 的 模 式 。 若 最 好 的 模 式為 8×8 時,才會將每一個 8×8 的區塊繼續往下切割。有四種分 割模式 , 分 別 為 8×8、8×4、4×8 和 4×4,再 從 這 4 種 模 式 中,挑 出 最 好 的 模 式 。. 16 x 16. 16 x 8. 8 x 16. 8x8. 2 1. 3 Mode = 2 8x4. Mode = 3 4x8. 5 6. 圖 2-3. 4. 4. Mode = 4 4x4 7. 7. 7. 7. 6. 5 Mode = 5. 4. 3. 2 Mode = 1. 4. Mode = 6. Mode = 7. 七種不同大小的區塊編碼模式. 在可變區塊大小的移動估測下,選擇 適當的區塊大小來做移動補 償, 可達到較佳的視覺品質以及較高壓縮效能。從 圖 2-4 可看出在背景或較平 滑的區域,多採用較大區塊的切割模式。如: 16×16、16×8 和 8×16; 相 反的,人 的五官、物體邊緣…等較複雜、細膩的區域大多採用較小區塊的 切割模式。如:8×8、8×4、4×8 和 4×4。選擇較大的區塊模式來編碼,移 動向量所需要的編碼位元數較少,但 其相對的誤差可能較大;反 之,如 果 選擇較小的區塊模式來進行編碼,移 動向量所需的編碼位元數會增加,但 其誤差就會較小,畫面的細節部份也能有較好 的表現。因此選取適當的區 7.
(16) 塊切割模式才能兼顧影像的品質和壓縮的效率。. 圖 2-4. 殘值區塊不同模式的編碼 [5]. 壓縮過程中,除了要考慮影像品質的好壞,同 時也必須考慮移動向量 的 編 碼 位 元 數 。 在 H.264 中 加 入 了 位 元 率 失 真 最 佳 化 (Rate-Distortion Optimization,RDO)的概念,因此判斷一個區塊是否適合當作重建區塊 , 可以不單只採用其絕對誤差總合,還 必須考慮位元率的分配。H.264 採 用 了 Lagrangian cost 來做為其代價函數(Cost Function),其數學式為:. J = SAD + λR………………………..…(2-4). 其 中 , SAD 代 表 區 塊 與 重 建 區 塊 間 的 相 似 程 度 或 是 誤 差 程 度 , λ 表 示 Lagrangian 係數, R 表示需要使用多少位元來編碼移動向量。編碼模式 的決定會同時考慮到失真率和位元率 ,來選擇最佳的模式。. 8.
(17) 2.3. 零區塊 (Zero Block) 偵測演算法. H.264 在移動估測支援了七種不同大小區塊的切割模式,為了降低視 訊品質的失真,找到最合適的區塊模 式,會對每一種區塊進行 SAD 運 算 和計算其移動向量所需的資訊,並求得代價值,再從各個模式中找出擁有 最小代價值的模式,得到最佳的模式,以找出最相似的區塊。從 視訊編碼 的整體運算量來看,是非常龐大且耗時的。因 此,為了能讓 H.264 在軟體 或硬體上達到即時的應用,在移動估測的研究 上,專家學者提出很多快速 的 方 法 來 改 善。主 要 可 以 分 為 兩 大 類:一 是 加 快 移 動 估 測 的 搜 尋 演 算 法 , 藉 由 減 少 搜 尋 的 點 數 來 達 到 與 全 域 搜 尋 (full search , FA)相 近 的 影 像 品 質,例如:三步搜尋演算法 (Three Step Search,TSS)[10]、六角型搜尋演 算 法 (Hexagon-based Search , HBS)[6] 、 增 強 型 區 域 預 測 搜 尋 演 算 法 (Enhanced Predictive Zonal Search, EPZS)[7];另一類則是藉由預測區塊 為零移動區塊,或 是區塊的離散餘弦轉換係數經量化後會全為零,來提 早 終止移動估測。. 提早終止演算法主要的做法是將 SAD 值或是 RD cost 值與預先設定的 門檻值做比較。當 SAD 值或是 RD cost 值小於門檻值時,則省略後續的 搜尋動作;反之則進行相關的搜尋演算法。在 前一代的視訊規格 H.263 中 亦 有 學 者 提 出 類 似 的 演 算 法 : 零 移 動 偵 測 (Zero Motion Detection , ZMD)[8]。但此方法卻無法使用於 H.264,因在 H.263 中,僅使用了兩種 大小的區塊來做編碼,16×16、8×8。在 H.264 中,卻使用了七種大小的區 塊來做編碼。因此,有學者延伸了 ZMD[8]的觀念,提出了可變區塊大小 零移動偵測演算法 (Variable Block-size Zero Motion Detection,VBZMD)[9] 與 可 變 區 塊 大 小 最 佳 移 動 偵 測 (Variable Block-size Best Motion Detection,VBBMD)演算法 [9],用以提早終止移動估測、降低計算量。. 9.
(18) 2.3.1. 可變區塊大小零移動偵測(VBZMD)[9]. 對於多數的影像而言,會有部份數量的區塊在移動估測後,得到其移 動向量為零。從表 2-1 可看到在七種模式下,六個測試影像在量化係數 (Quantization Parameter,QP)為 32 的情況下,有 30.71%到 98.03%的區塊 移動向量為零。因 此,若能及早預測零移動區塊(Zero Motion Block,ZMB) 就能提早終止移動估測和省略部份的計算量。. 表 2-1. 七種模式零移動區塊的比例 (QP = 32)[9]. Mode Mode Mode Mode Mode Mode Mode Sequence 1. 2. 3. 4. 5. 6. 7. Akiyo. 98.03 97.51 97.18 97.28 97.14 96.47 97.04. Salesman. 96.80 95.92 95.69 95.15 94.78 94.13 94.33. News. 91.90 91.72 91.98 92.35 91.93 91.31 91.78. Silent. 85.01 84.65 84.15 85.01 84.75 84.23 85.06. Coastguard. 32.44 33.51 32.8 30.91 31.4 30.71 31.06. Foreman. 43.97 44.15 43.57 44.25 44.81 43.73 45.42. 在零移動偵測 ZMD[8]演算法中,Yang 等人 [8]是利用區塊的絕對誤差 總合 SAD 值,與門檻值做比較。在 H.264 標準中,是利用價值函數 J 來 評斷是否為最相似區塊的標準。若一區塊為零 區塊,則 其在移動向量座標 MV(0,0)這點會擁有最小的代價值。因此,Yang 等人 [8]對於七種模式定 義 了七個不同的門檻值 THZ i (i=1 to 7),當區塊在 MV(0,0)這點的代價值滿 足式子 (2-5),即可認定該區塊為零區塊。. 10.
(19) J i < THZ i. for i = 1, 2…7…..……….(2-5). 那麼要如何定出合適的門檻值就是 VBZMD 演算法的關鍵所在。當 所 定義的門檻值愈大時,則能偵測的零區塊愈多、省略愈多的計算量。相 對 地,也會使得區塊編碼模式的選擇愈容易產生 錯誤,進 而造成影像品質的 下降。因 此需要在影像品質與計算複雜度間取得一個平衡點。VBZMD 的 作者認為維持影像品質比降低計算複雜度來的重要,因 此,便利用偵測的 正確率來做為定義門檻值的依據。. 表 2-2. Foreman 影像在不同正確率所使用的門檻值 (QP = 32)[9]. Accuracy Mode 1 Mode 2 Mode 3 Mode 4 Mode 5 Mode 6 Mode 7 80%. 600. 550. 570. 400. 315. 300. 250. 75%. 960. 650. 660. 480. 360. 350. 270. 70%. 1650. 920. 890. 600. 410. 400. 300. 65%. 2270. 1200. 1160. 700. 470. 460. 350. 60%. 2800. 1500. 1430. 880. 530. 530. 400. 表 2-2 中,正確率 (Accuracy)表示區塊代價值小於門檻值且該區塊為零區 塊 的 機 率。透 過 此 表,我 們 能 在 影 像 品 質 與 計 算 複 雜 度 間 取 得 一 個 平 衡 , 選擇出一個較佳的門檻值。根據實驗的結果,在相同的門檻值時,動態較 小的測試影像其正確率會高於動態較大的測試影像,因 此,動態較大的影 像可使用的門檻值將可直接用於動態較小的影像上。國際標準測試影像 Foreman 可代表動態較大的影像,因 此,可將 Foreman 影像所使用的門檻 值套用到其他影像。有鑑於此,在 VBZMD 中所採用的門檻值是以 Foreman 11.
(20) 測試影像為基準,因為該影像屬於動態較大的影像。. 在 VBZMD 演算法中,如果一個區塊在點 (0,0)的零動態代價值小於相 關的門檻值,則認定(0,0)為該區塊的最佳移動向量,同 時,跳至計算同巨 區塊中的下一區塊。如果處理中的區塊是巨區塊中的後一個區塊,則計 算 該巨區塊中各區塊下一個模式的代價值。當計算完七種模式後,選擇擁有 最小代價值的模式為最佳編碼模式。在模式一 的情況,因巨區塊中只有一 個區塊,若其代價值亦足夠小,則不僅(0,0)為該區塊的最佳移動向量,同 時模式一亦為該巨區塊的最佳編碼模式。因此,VBZMD 的作者額外定義 了一個較小的門檻值 THS 用於模式一。若區塊的代價值小於 THS 值,則 停止巨區塊的估測計算,VBZMD 的完整演算法如圖 2-5 所示:. 圖 2-5. VBZMD 演算法 [9]. 12.
(21) 整個演算法經實作後,其模擬結果如表 2-3 所示。對於動態較小的視訊影 像而言,零區塊正確率的降低,不一定會造成影像品質的下降;對於動態 較大的視訊影像,影像品質與零區塊 正確率成正比。搜尋點數 (Points per Macroblock,PPMB)與正確率亦成正比,即所定義的門檻值越大時,所 需 搜尋的相對點數愈少、省略的計算或區塊就愈 多,編碼所需要的位元率也 相對地提高。. 表 2-3. VBZMD 演算法的效能 [9]. PSNR Sequence. Method. Accuracy. Bit-rate PPMB. (dB) Fast ME. Akiyo. (kbps). 35.22. 63.86. 14.52. 80%. 35.18. 29.02. 14.65. 75%. 35.20. 21.42. 14.67. 70%. 35.19. 7.96. 14.70. 65%. 35.18. 5.17. 14.59. 60%. 35.17. 4.17. 14.67. Fast ME + VBZMD. Fast ME. Foreman. 32.90. 160.48 79.34. 80%. 32.87. 124.97 79.00. 75%. 32.86. 112.85 79.55. 70%. 32.82. 88.75. 80.49. 65%. 32.77. 64.77. 82.19. 60%. 32.75. 49.39. 84.73. Fast ME + VBZMD. 13.
(22) 2.3.2. 可變區塊大小最佳移動偵測(VBBMD)[9]. VBZMD 已可達到相當良好的成效。但 Yang 等人 [8]認為可以藉由移 動向量的判斷使演算法達到更好的效果。在 H.264 的規格中,移 動向量的 預測模式是由左方 (A)、上方(B)和上右方 (C) (或 上 左 方(D))之區塊移動 向 量的中值 (Median Value), 來做為現在編碼中的區塊預測之移動向量。如 圖 2-6 所 示。E 表示編碼中的區塊,A、B、C、D 為 E 的相鄰區塊。一般 常見的方法是以 A、B、C 三個區塊為主要的參考區塊。. D. B. A. E. 圖 2-6. C. H.264 移動向量預測模式. 相鄰區塊間的移動向量會有高度的相關性,因 此,預測的移動向量有 高度的機會與移動估測後所得到的最佳移動向 量相同。為了方便描述,該 作者定義了預測移動向量區塊(Predicted Vector Blocks, PVB),用以表示 區塊的最佳移動向量與預測移動向量相同之區塊。同 時,該作 者 也 做 了 不 同測試影像間 PVB 的統計資料,如表 2-4 所示:. 14.
(23) 表 2-4. 預測移動向量區塊之比例 [9]. Mode Mode Mode Mode Mode Mode Mode Sequence 1. 2. 3. 4. 5. 6. 7. Akiyo. 98.03 97.51 97.18 97.28 97.14 96.47 97.04. Salesman. 96.80 95.92 95.69 95.15 94.78 94.13 94.33. News. 91.90 91.72 91.98 92.35 91.93 91.31 91.78. Silent. 85.01 84.65 84.15 85.01 84.75 84.23 85.06. Coastguard. 32.44 33.51 32.80 30.91 31.40 30.71 31.06. Foreman. 43.97 44.15 43.57 44.25 44.81 43.73 45.42. 從表 2-4 可看出, PVB 的比例對於不同的測試影像會大於 ZMB 的比例。 此 結 果 對 於 低 動 態 (Low Motion)或 是 中 動 態 (Median Motion)的 測 試 影 像 並不是很明顯。在 大動態 (Large Motion)的測試影像,如表 2-3 所列之國 際 標準測試影像 Coastguard、Foreman 則相關性提升不少, PVB 與 ZMB 之 比 例 提 升 了 23% 到 122%。 同 時 另 一 個 實 驗 表 示 對 於 多 數 的 測 試 影 像 而 言,有 高 達 97%以上之區塊是 ZMB 同時也是 PVB[9]。因此,可 以利用預 測之最佳移動向量來取代零移動向量 (Zero Motion Vector,ZMV)。. 基 於 VBZMD , 作 者 提 出 了 可 變 區 塊 大 小 最 佳 移 動 偵 測 (Variable Block-size Best Motion Detection,VBBMD)演算法 [9]。主要的想法是藉由 預測的移動向量所計算出的代價值和預先給定的門檻值作比較。如果預測 的移動向量所計算出的代價值小於門檻值,則 把預測之移動向量認定為最 佳的移動向量,同 時省略去剩餘的計算。與 VBZMD 相 同,如 何 根 據 不 同 的區塊大小來選擇門檻值仍是一重要的因素。其主要的方法仍舊仿照 VBZMD, 除 了 用 預 測 的 移 動 向 量 去 取 代 零 移 動 向 量 之 動 作 , 其 餘 作 法 與 15.
(24) VBZMD 相同。根 據使用不同測試影像在不同門檻值的結果去選擇一最佳 的門檻值。. 該作者認為門檻值為(2500,1500,1400,920,625,570,500),在正確率 66% 時,能有一良好的影像品質與搜尋點 數的交換。在此模式一 THS 的 門 檻 值為 800。在表 2-5 中,作者列出了當 PSNR (Peak Signal to Noise Ratios, PSNR)相同的情況下,VBBMD 比 VBZMD 需要較少的搜尋點數,但位元 率會有些微的增加。. 表 2-5. VBBMD 使用最佳門檻值與 VBZMD 之比較 (QP = 32)[9]. PSNR Sequence. Method. Bit-rate PPMB. (dB). Akiyo. Foreman. 2.3.3. (kbps). Fast ME. 35.22. 63.86. 14.52. Fast ME + VBZMD. 35.18. 5.17. 14.59. Fast ME + VBBMD. 35.18. 4.17. 14.59. Fast ME. 32.90. 160.48. 79.34. Fast ME + VBZMD. 32.77. 64.77. 82.19. Fast ME + VBBMD. 32.77. 30.12. 82.34. 增強型全零區塊偵測演算法[9]. 在 H.264 中,以 4x4 區塊大小的整數離散餘弦轉換取代傳統的離散餘 弦轉換。然而,有許多的區塊經由離散餘弦轉換和量化處理後,其轉換係 數值均為零,我們稱此區塊為全零區塊(All Zero Block,AZB)。全零區. 16.
(25) 塊偵測演算法最先由 Zhou 等人 [17]於 H.263 上提出,他推導出一個區塊 內所有離散餘弦轉換係數在量化後全為零的條 件,若滿足此條件之區塊為 全零區塊。Sousa [18] 根 據 Zhou 等 人[17]的觀念,提出了一個更精確的 條件。而 Moon[19]分析了 H.264 的整數離散餘弦轉換和量化特性,並將 Sousa 的演算法進一步改良提出了一 個更有效率的判斷式。. Su[13] 延伸前人的觀點,統 計全零區塊與門檻值的分佈情形。發 現在 前人所推導出來的門檻值之外,仍存 在著許多全零區塊。如圖 2-7 所示: 在四個子圖中,第 三條藍線的右邊,還有為數眾多的全零區塊。因此,Su[13] 廣泛的探討轉換係數和量化公式的關係,推導出一新的門檻值,用以偵測 更多的全零區塊。. (a) Foreman. (b) Mother_daughter. (c) Silent. 圖 2-7. (d) News. 全零區塊與門檻值的分佈情形 (QP = 28) [13]. 17.
(26) Su[13]主要做法是先將核心轉換矩陣 W ij 取絕對值,展開後得到:. [W ] ij. 4x4. [ ] [ X ] [C ]. ≤ C ij. S ⎡ ⎢S + S + S 0 1 =⎢ ⎢ S ⎢ ⎣S + S 2 + S3. 4x4. ij. 4x4. ij. T. 4x4. S + S0 + S2. S. S + 3S 0 + S1 + S 2. S + S 0 + S1. S + S0 + S2 S + 3S 2 + S 0 + S 3. S S + S 2 + S3. S + S1 + S3. ⎤ S + 3S1 + S 0 + S3 ⎥⎥ .…….(2-6) S + S1 + S3 ⎥ ⎥ S + 3S3 + S1 + S 2 ⎦. 其中 X ij 是大小 4x4 的殘值訊號,C ij 是 4x4 整數轉換矩陣,S i (i=1 to 4)為:. S 0 = X 00 + X 03 + X 30 + X 33 S1 = X 01 + X 02 + X 31 + X 32 S 2 = X 10 + X 13 + X 20 + X 23. .…………..........….(2-7). S 3 = X 11 + X 12 + X 21 + X 22. S = S 0 +S 1 +S 2 +S 3 = SAD, SAD 值能在編碼過程中得到,故無需計算。經 由比較運算,根據三個不同的 r 值得到三個臨界值。. Wij ≤ S + 5 max{S i }, for r = 0 Wij ≤ S + 2 max{S i }, for r = 1 .………….....….(2-8) Wij ≤ S , for r = 2. r 值為在 4x4 矩陣中不同的位置係數,其關係如下:. r = 0,位置(i,j)={(1,1),(1,3),(3,1),(3,3)}。 r = 1,位置(i,j)={(0,1),(0,3),(1,0),(1,2), (2,1),(2,3),(3,0),(3,2)}。 r = 2,位置(i,j)={(0,0),(0,2),(2,0),(2,2)}。. 18.
(27) 將(2-9)代 入 H.264 量化公式後,依三個不同的 r 值 可 得 : S + 5 max{S i } ⋅ M (QP%6,0) + f 215+ ( QP / 6 ) S + 2 max{S i } ⋅ M (QP%6,1) + f ………….......(2-9) Z ij (QP,1) ≤ 215+ ( QP / 6 ) S ⋅ M (QP%6,2) + f Z ij (QP,2) ≤ 215+ ( QP / 6 ) Z ij (QP,0) ≤. 為了滿足量化係數為零的條件,假設 Z ij (QP, R) < 1 ,故可得:. S≤. 215+ ( QP / 6) − f − 5 max{S i } for r = 0 M (QP%6,0) …………......( 2-10). = 4T (0) − 5 max{S i } for r = 0 S≤. 215+ ( QP / 6 ) − f − 2 max{S i } for r = 1 M (QP%6,0) …………......(2-11). = 2T (1) − 2 max{S i } for r = 1. S≤. 215+ ( QP / 6 ) − f M (QP%6,0). = T (2). for r = 2. ……..……………..(2-12). for r = 2. 其中 QP 為 H.264 中量化係數(Quantization Parameter,QP ) ,M(QP%6,r) 為乘法係數,其值如下 [16]:. ⎡ 5243 ⎢ 4660 ⎢ ⎢ 4194 M ij = M (QP%6, r ) = ⎢ ⎢ 3647 ⎢ 3355 ⎢ ⎣⎢ 2893. 19. 8066 7490 6554 5825 5243 4559. 13107 ⎤ 11916⎥⎥ 10082⎥ ⎥ ……..……......( 2-13) 9362 ⎥ 8192 ⎥ ⎥ 7282 ⎦⎥.
(28) 最後再將所得到的值相互比較取最小 值,即可得到新的門檻值 TH。. TH = min{(4T (0) − 5 max{S i }), (2T (1) − 2 max{S i }), T (2)} ……........(2-14). 並將新的門檻值套用至演算法,用以偵測出更 多的全零區塊,來 省略掉不 必要的整數離散餘弦轉換和量化運算計算,且 不會對影像品質造成任何的 降低。. Su[13]的演算法主要步驟詳述如下: 步驟一:判斷每一個 4x4 區塊的 SAD 值是否小於 T(2),如果小於 T(2), 則到步驟二。反之,則進行整數離散 餘弦轉換和量化運算。. 步驟二:判斷 SAD 值是否小於 T(0),若小 於 T(0),則此區塊為全零區塊, 可省略後續的整數離散餘弦轉換和量 化運算;反之,計算 TH 值, 然後到步驟三。. 步驟三:判斷 SAD 值是否小於 TH 值,若小於門檻值,則此區塊為全零 區塊,可 省略後續的整數離散餘弦轉換和量化運算;反 之,則 進 行 整數離散餘弦轉換和量化運算。. 20.
(29) 第三章. 3.1. 可適性提早終止演算法. 可適性提早終止演算法介紹. 在 VBBMD[9]與 VBZMD[9]演算法中,區塊的七種不同編碼模式會與 七個預先定義的門檻值做比對。同時,另有一個較小的門檻值用於模式 一,以做為進一步的省略動作。上述的演算法在各模式下,皆使用固定的 門檻值,若需要調整不同的正確率或 用於不同影像則需自行改變參數。. 本文提出了一個新式的演算法改善使用固定門檻值的情形,使其更能 適用於不同的影像序列中,所提出的演算法稱為:可適性提早終止 (Adaptive Early Termination,AET)演算法 [9]。這個演算法的主要精神在 於藉由 ZMB 的數目,動態的調整各模式的門檻值。圖 3-1 顯 示 了 AET 演 算法及 H.264 編碼流程。從圖中可看出,所提出的 AET 演算法主要在於 修改移動估測的區塊,共分成三個執行步驟。首先,我們與 VBZMD 演算 法相同,為七種不同區塊大小分別訂定了一基 本的門檻值,用以省略零移 動區塊 ZMBs。接 著我們使用 H.264 編碼軟體 JM[9]中的快速移動估測 Fast ME,搭 配 VBZMD[9]演 算 法。最 後,則 是 計 算 整 張 畫 面 中 的 ZMB 數 目 , 做為門檻值的調整依據,並 將修正過 後的門檻值套用在下一張畫面。在 編 碼的過程中,反覆的執行 AET 演算法,使得門檻值較有彈性更能適用於 不同的視訊影像中。. 21.
(30) 圖 3-1. H.264 編碼流程圖與所提出之演算法. 在快速移動估測 Fast ME,搭配 VBZMD[9]演算法的這個步驟中,編 碼 中 巨 區 塊 (MB)的 七 個 代 價 值 會 與 七 個 門 檻 值 做 比 較 , 若 代 價 值 小 於 門 檻值,則 會進行相關的省略動作;否 則會執行 Fast ME 去尋找最佳的移動 向量 (MV)與代價值。接著我們將詳細介紹 AET 演算法之細部執行流程, 如圖 3-2 所示。. 22.
(31) Input a P frame. Set THZi = THZi0. No. Frame number ≧M Yes Calculate PNZ(t). Yes. PNZ(t) ≧X% No Yes. THZi = THZi + w·di. PNZ(t) ≦Y% No. THZi = THZi - w·di. No. THZi ≧THZiMax Yes. THZi ≦THZimin. No THZi =THZiMax. Yes THZi = THZimin. Fast ME with VBZMD [7]. Calculate NZMB. Frame number = Frame number + 1. End of sequence ?. No. Yes End. 圖 3-2. AET 演算法之細部執行流程. 23.
(32) AET 演算法主要是針對 P 畫面所設計,因此在編碼的過程中,除 了第 一張畫面是 I 畫面,剩餘的畫面我們皆以 P 畫面的型式來進行編碼,以 便 做為所提演算法之效能分析。在編碼的初期,初始的 M 張 P 畫面,會先 執行快速移動估測 Fast ME,搭配 VBZMD[9],並計算此張 P 畫面中零移 動區塊的數目 (Number of ZMB,NZMB)。. 若編碼的 P 畫面張數已大於所給定的 M 值,則將計算零移動區塊變動 數目的百分比 (Percentage of NZMB, PNZ)。接著 PNZ 將與所訂定的變動 百分比之上界 X%、變動百分比下界 Y%做比較。若 PNZ 大於 X%,就需 將門檻值往上增加,並判斷增加後的 門檻值是否大於一組最大門檻值;反 之,若 PNZ 小於 Y%,就 需將門檻值向下減少,並判斷降低後的門檻值 是 否小於一組最小門檻值。經 由上述的步驟,即 完成門檻值的調整。完成門 檻值的變動後,則 將門檻值套用至快速移動估測 Fast ME 搭配 VBZMD[9] 的演算法之中,進行區塊的相關省略動作。. 當我們使用門檻值的機制去省略 Block 時,可能會有以下兩種錯誤發 生:. 1.. Block 不是 ZMB,不能省略,但該 Block 卻被省略。. 2.. Block 是 ZMB,應該被省略,但卻沒有正確判斷出來並省略。. 當第一種情況發生時,通常是由於門檻值過大 所造成。除非我們在後續增 加相關的處理演算法,否則我們無法再對此類的 MB 進行處理,因其已經 被省略。當第二種情況發生時,通常是由於門檻值太小所造成。幸好後續 還有 Fast ME 的搜尋演算法可對其進行補救。由上述兩種情形可得知,門 檻值的訂定是相當重要的!那麼要如何對於各 種不同區塊大小、模式,選 擇適當的門檻值用以進行區塊的省略 ,將會在下一節進行詳細的探討。. 24.
(33) 3.2. 門檻值訂定之討論. 要進行門檻值的變動前,我 們需要先選擇適合的門檻值。吾人對十個 我們常用的國際標準測試視訊影像進行分析,在七種不同模式下,當該 區 塊為 ZMB 時,其平均代價值,如表 3-1 所示。在表 3-2 列出了各測試影 像之最大代價值、最小代價值與各模 式代價值之標準差。. 表 3-1 Sequence. 測試影像中 ZMB 的平均代價值 (QP = 32). Mode 1. Mode 2. Mode 3. Mode 4. Mode 5. Mode 6. Mode 7. Akiyo. 929. 459. 436. 244. 150. 142. 104. Mother_daughter. 1023. 531. 506. 282. 169. 161. 109. Container. 1445. 758. 679. 392. 238. 202. 129. News. 1233. 636. 596. 339. 209. 185. 121. Salesman. 1428. 716. 677. 374. 221. 205. 129. Silent. 1531. 749. 690. 387. 226. 202. 130. CarPhone. 1399. 704. 638. 367. 267. 201. 133. Table. 1298. 673. 643. 352. 214. 192. 123. Foreman. 1555. 762. 722. 399. 248. 225. 147. Coastguard. 2151. 1070. 923. 569. 366. 307. 194. 平均值. 1316. 679. 686. 349. 190. 187. 111. 標準差. 363. 186. 190. 93. 49. 48. 28. 從表 3-1 我們可看到,代價值的大小可反應出測試影像的類型是屬於 低動態影像或高動態影像。當 ZMB 的平均代價值愈大時,此測試影像的 內容變動的越劇烈,屬於高動態影像;而平均代價值愈小,畫面間的變動 就愈小,屬於低動態影像。 25.
(34) 接著我們對於七個模式得到的代價值進行探討。首先,在這十個常用 的國際標準測試影像中,能 夠很清楚的看出從低動態影像到高動態影像其 ZMB 的平均代價值差異度是很大的。ZMB 代價值最低的測試影像:Akiyo ( 929,459,436,244,150,142,104 ), 與 ZMB 代 價 值 最 高 的 測 試 影 像 : coastguard(2151,1070,923,569,366,307,194) ,模式一到模式七的代價值至 少 都 差 了 兩 倍 。 與 十 個 測 試 影 像. ZMB. 的 平 均 代 價 值. ( 1316,679,686,349,190,187,111) 相 較 , 亦 相 差 甚 遠 。 足 以 印 證 吾 人 在 前 述章節所提到的論點:Yang 等人 [9]所提出的固定門檻值的觀念,不適用 於各種不同內容的影像。. 在表 3-1 中,在這十個測試影像的模式一到模式三,這三組區塊大小 較大的模式,其代價值差異度較大。特別是模式一,十 個測試影像間的代 價值標準差高達 351;模式四到模式七這四組區塊大小較小的模式,其 代 價值差異度較小。將表 3-1 與 Yang 等人 [9]所提出的數據表 2-2 相比較, Foreman. 測 試 影 像 所 得 到 的. ZMB. 平 均 代 價 值 :. (1555,762,722,399,248,225,147)與 Yang 等 人[9]在 表 2-2 所列出的正確 率百分之七十這組門檻值較為接近:(1650,920,890,600,410,400,300), 絕 大 多 數 的 測 試 影 像 其 七 個 模 式 的 代 價 值 皆 小 於 Foreman 的 數 據 。 同 時 , Yang 等 人[9]亦有提出一論點,Yang 等人 [9]認為可將使用在高動態影像之 較大門檻值套用至低動態之測試影像中,故吾人將引用 Yang 等 人[9]所 提 之(1650,920,890,600,410,400,300)這 組門檻值,作為在本文後續實驗中 的初始門檻值。. 26.
(35) 表 3-2. 測試影像中最大、最小代價值與標準差(QP = 32). Sequence. Mode 1 Mode 2 Mode 3 Mode 4 Mode 5 Mode 6 Mode 7 最大值. 4516. 3508. 2401. 999. 998. 956. 877. 平均值. 929. 459. 436. 244. 150. 142. 104. 最小值. 186. 85. 95. 80. 60. 60. 60. 標準差. 504. 263. 245. 160. 105. 85. 49. 最大值. 4606. 2992. 2772. 1850. 1238. 1019. 700. 平均值. 1428. 716. 677. 374. 221. 205. 129. 最小值. 363. 139. 147. 80. 80. 80. 60. 標準差. 435. 234. 206. 140. 106. 83. 50. Mother_daughter 最 大 值. 4848. 2258. 2193. 1242. 1160. 792. 648. 平均值. 1023. 531. 506. 282. 169. 161. 109. 最小值. 111. 80. 80. 62. 60. 60. 60. 標準差. 504. 315. 248. 172. 110. 88. 44. 最大值. 3272. 2498. 1859. 1447. 1684. 891. 974. 平均值. 1135. 550. 531. 295. 181. 168. 115. 最小值. 139. 80. 80. 80. 80. 80. 60. 標準差. 619. 300. 276. 172. 117. 88. 50. 最大值. 7839. 4481. 4632. 4259. 1592. 1471. 1272. 平均值. 1445. 758. 679. 392. 238. 202. 129. 最小值. 233. 80. 86. 80. 80. 80. 60. 標準差. 732. 492. 344. 262. 205. 129. 78. Akiyo. Salesman. News. Container. 27.
(36) Silent. CarPhone. Table. Foreman. Coastguard. 最大值. 6485. 3851. 3440. 1794. 1836. 1182. 824. 平均值. 1531. 749. 690. 387. 226. 202. 130. 最小值. 408. 136. 193. 80. 60. 80. 60. 標準差. 556. 273. 212. 150. 120. 82. 50. 最大值. 7476. 5249. 4343. 2736. 1887. 1668. 1198. 平均值. 1399. 704. 638. 367. 267. 201. 133. 最小值. 128. 80. 80. 74. 60. 60. 60. 標準差. 800. 454. 378. 259. 201. 134. 81. 最大值. 7153. 7793. 8377. 4838. 2923. 2550. 1656. 平均值. 1298. 673. 643. 352. 214. 192. 123. 最小值. 305. 130. 122. 80. 80. 80. 60. 標準差. 718. 406. 353. 227. 171. 125. 78. 最大值. 7945. 3879. 3782. 2104. 1716. 1047. 817. 平均值. 1555. 762. 722. 399. 248. 225. 147. 最小值. 125. 80. 80. 68. 60. 60. 60. 標準差. 682. 396. 318. 222. 180. 125. 79. 最大值. 6376. 4150. 3128. 2468. 2064. 1256. 1226. 平均值. 2151. 1070. 923. 569. 366. 307. 194. 最小值. 448. 233. 195. 101. 80. 80. 60. 標準差. 794. 521. 412. 279. 256. 155. 122. 表 3-2 列出了各測試影像從模式一到模式七的最大代價值、最小代價 值、平均代價值與標準差。無論是低動態影像或高動態影像,各 測試影像 模式一的標準差都相當大,至少在 435 以上,最高甚至於高達 800,平 均 28.
(37) 也高達 634。可見對於模式一門檻值的訂定,必須要有另一機制以減少誤 判 的 情 況 發 生 。 因 此 Yang 等 人 [9]對 於 模 式 一 另 外 設 置 一 較 小 的 門 檻 值 THS,用 來降低模式一產生的誤判情形。這樣的作法,是相當合理的。Yang 等人 [9]根據不同的正確率將 THS 定義了兩個數值 720 或 800。從表 3-2 可 得 , 十 個 測 試 影 像 中 模 式 一 最 小 的 平 均 代 價 值 為 Akiyo: 929。 Yang 等人 [9]為模式一所額外訂定的 THS 值皆小於最小的平均代價值,且 720 和 800 的差值,對 於多數影像的代價值而言影響比例不高,為了加快影像 壓縮過程,吾人認為採用較大的值 800 是較為適當的。. 接著我們觀察模式二與模式三,對於絕大多數影像來說兩者間的代價 值很相近,多數影像的差值都在 50 以內。因此,這組代價值相近的模式 在門檻值的訂定上,Yang 等人 [9]所提出的數據模式二與模式三:920 與 890,與實驗所得到的代價值很接近,僅有些微的差異。. 模式四到模式七,這四個區塊大小較 小的模式,其平均代價值較 小, 所訂定的門檻值應該也較低,但 Yang 等人[9]所提出的數據卻比平均值高 出 許 多 。 就 Foreman 測 試 影 像 而 言 , 模 式 四 到 模 式 七 平 均 代 價 值 是 (399,248,225,147),Yang 等人 [9] 所提出的是( 600,410,400,300)。模式 四到模式六至少都高出了百分之五十以上,模 式七的值甚至比平均代價值 高出兩倍以上。 Yang 等人 [9]之所以會套用較大的門檻值,吾人認為可以 從各測試影像的平均代價值與標準差來推斷。各測試影像四個模式的標準 差都很大,至少是平均代價值的百分之五十。僅僅使用平均代價值作為門 檻值,則 能省略的區塊數目將會下降,使得編碼速度變慢。若將四個模式 的平均代價值加上正一個標準差,則 能夠提高可省略的計算數目,此時 的 門檻值便與 Yang 等人 [9]所提出的門檻值相近。故吾人認為 Yang 等人 [9] 為了降低編碼的計算量、提升編碼速 度而採用較大的門檻值。. 從表 3-2 我們可以清楚的得知,在這十個測試影像中,平均代價值, 29.
(38) 與最大代價值、最 小代價值相差甚遠,使得吾人在訂定門檻值變動的上限 與門檻值變動的下限變的很困難。為 了兼顧編碼速度與影像品質,門檻 值 的訂定不能太小也不能過大。於是吾人使用 Yang 等 人 [9]所提出的數據, 正 確 率 百 分 之 七 十 五 這 組 門 檻 值 ( 960,650,660,400,360,350,270) 做 為 最 小門檻值 THZ Min。最大門檻值 THZ Max 則是將初始門檻值乘以兩倍。如表 3-3 所 示 :. 表 3-3. 七個模式所使用的門檻值變動範圍. Mode 1 Mode 2 Mode 3 Mode 4 Mode 5 Mode 6 Mode 7 THZ Max. 3300. 1840. 1780. 1200. 820. 800. 600. THZ i0. 1650. 920. 890. 600. 410. 400. 300. THZ Min. 960. 650. 660. 480. 360. 350. 270. 3.3. 門檻值變動之討論. 門檻值訂定完成後,我們便可以在範圍內將門檻值適度的調整,使 得 代價值更能適用於不同內容的影像。 門檻值的變動方式為:. THZ i = THZ i ± w ⋅ d i ……………………………( 3-1). w 是權重值(Weighting Factor),d i 是各模式增加的步階值 (Step Size)。門 檻 值的變動是根據零移動區塊變動數目的百分比 PNZ。其計算方式為:. PNZ (t ) =. NZMB (t ) − NZMBave (t ) × 100% …………………..( 3-2) NZMBave (t ). 30.
(39) NZMB(t)為編碼中畫面的 ZMB 數目。NZMB ave (t)為編碼中畫面的前 N 張 畫面的平均 ZMB 數目。N 的數目可以為一到五,代表前一張到前五張的 畫面的平均 ZMB 數目。取一到五,是因在連續影像序列中,相鄰畫面間 的相關性是較高的,同時在 H.264 的編碼中,P 畫面可參考的畫面最多為 五張,故我們取最多五張來做觀察,若取太多會使得相關性降低。 NZMB ave (t)的計算方式如下:. NZMBave (t ) =. 1 N. N. ∑ NZMB(t − i). ………………………(3-3). i =1. 圖 3-3 是 NZMB(t)和 NZMB ave (t)的計算方式,以參考五張畫面的平均為例 子。. t-5 t-4 t-3 t-2 t-1. NZMBave (t ) =. 1 5 ∑ NZMB(t − i) 5 i =1. t. }. NZMB(t ). 圖 3-3. NZMB(t) 與 NZMB ave (t)的例子. 那麼該使用前幾張的畫面來判斷,以決定 N 呢?於是吾人去統計了十個 測試影像的前一張到前五張的變動率。變動率百分比 R%計算方式如式子 (4)所示:. 31.
(40) R% =. NZMB (t ) − NZMBave (t ) × 100% ……………………(3-4) NZMBave (t ). NZMB(t)與 NZMB ave (t)相減後所得到的值,除 以 NZMB ave (t),取絕對值後 再乘以百分之一百,就可以得到 NZMB(t)與 NZMB ave (t)間的變動情形。取 絕對值是因為變動有可能是正(增加)、有可能是負(減少)。十個測試影 像 的變動率如表 3-4 所示。. 表 3-4 Sequence. 編碼中畫面與前 N 張畫面平均 ZMB 的變動率 N. Akiyo. 1. 3. 31.4% 27.3% 25.6% 23.4% 22.2%. 26.0%. Coastguard. 40.0% 38.0% 38.8% 39.4% 40.5%. 39.3%. Foreman. 0.9%. 1.2%. Average. Carphone. 0.9%. 1.1%. 5. 1.1%. 1.0%. 0.9%. 4. 1.3%. Container. 0.8%. 2. 0.9%. 0.9%. 0.9%. 33.3% 36.1% 38.8% 42.7% 44.4%. 39.1%. Mother_daughter. 3.1%. 3.1%. 3.4%. 3.7%. 4.0%. 3.5%. News. 4.5%. 4.2%. 4.0%. 3.8%. 3.1%. 3.9%. Salesman. 1.0%. 1.2%. 1.3%. 1.5%. 1.6%. 1.3%. Silent. 3.0%. 3.4%. 3.8%. 4.3%. 4.6%. 3.8%. Table. 9.0%. 6.4%. 6.9%. 7.2%. 7.6%. 7.4%. 一般而言,與編碼中的畫面相鄰的畫面(即 N=1)變動率應該是最小的。但 從表 3-4 可得知,當 N=1 時有半數以上的測試影像其變動率不是最小值的 情 形 ; 同 時 , 若 要 觀 察 影 像 內 容 的 變 動 趨 勢 使 用 一 張 畫 面 (N=1)似 乎 不 是 一個很好的選擇。當 N=3 時變動率相對於其他數值穩定,與平均值較接. 32.
(41) 近。但吾人認為選擇變動率稍為偏高的 N = 4 或 5,較容易觀察影像的變 動趨勢,故在本論文中使用 N = 5 來做實驗。此外,從 這張表中我們可以 得知,對 於中低動態的測試影像,其 變動率較低;若所選擇的變動百分比 之上界 X%、變動百分比下界 Y%過大或過小時,會造成門檻值增加到最 大值不再變動,或 是停留在最小值不再提升的情形。因 此,吾人認為可以 在門檻值變動的過程中,在 固定的畫面張數,將門檻值進行重新設定,使 門檻值回歸基準門檻值,以 降低過大的門檻值 所帶來的誤差,或 是過小的 門檻值使得影像編碼速度減慢。. 33.
(42) 第四章. 4.1. 實驗結果. 實驗條件和發展環境. 本論文使用 H.264 編碼參考軟體 Joint -Model,版本為 11.0 版 [15]。電 腦硬體為 Intel P4 3.0GHz、2GB RAM。電 腦 作 業 系 統 為 Window XP SP2, 採用 Microsoft Visual C++ 6.0 做為編譯環境。表 4-1 列出主要的實驗條件: 表 4-1. 實驗條件. B slice. Not used. MV search range. 32. QP. 32. Frame rate. 30.0. Number of reference frames. 1. Frames to be Encoded. 300. Rate distortion optimization. Disable. Coding options used. Hadamard transform, CABAC. Video size. QCIF (176x144). Intra period. Only First frame Akiyo, Carphone, Coastguard,. Test sequences. Container, Foreman, Mother_daughter, News, Salesman, Silent, Table. 34.
(43) 圖 4-1 顯 示 出 本 論 文 中 所 使 用 的 國 際 標 準 測 試 影 像 : 低 動 態 的 影 像 有:(a)、(d)、(f)、(h)。中 動 態 的 影 像 有:(g)、(i)、(j)。高 動 態 的 影 像 有 : (b)、 (c)、(e)。. (a) Akiyo. (c) Coastgurad. (f) Mother_daughter. (b) Carphone. (d) Container. (e) Foreman. (g) News. (h) Salesman. (i) Silent. 圖 4-1. (j) Table. 實驗所使用的國際標準測試影像. 35.
(44) 4.2. 參數設計. 在本論文所提出的演算法中,共有以下四個參數需要設定,分別為 PNZ 的變動上界 X%、PNZ 的變動下界 Y%,門檻值變動的權重值 w 和 各 模式的步階值 d i 。. PNZ 的變動上界 X%,吾人直接設定 X = 0。表 示前幾張畫面所得到之 NZMB ave (t)與 NZMB(t)是相當接近的,畫面甚至於沒有任何的變動,故可 適度的提高門檻值以加快編碼速度。PNZ 的變動下界 Y%,吾人認為會受 到門檻值變動的權重值 w 和各模式的步階值 d i 影響。因 為 PNZ 的計算是 由 NZMB(t)和 NZMB ave (t)所得到,而 NZMB(t)和 NZMB ave (t)又會因門檻 值的大小不同而有數目上的變化。為 了簡化計 算,故 吾 人 將 d i 訂 定 如 下 :. d1 = 165, d 2 = 92, d 3 = 89, d 4 = 60, ……………………..………… (4-1) d 5 = 41, d 6 = 40, d 7 = 30.. 將 THZ i0 到 THZ Max 切割成十等份,w 可有 1 到 10 不同的權重值,Y%亦 會 因不同的 w 值而有不同的結果。以下將對 w = 1 到 10 和 Y = 1 到 10 其 PSNR 和編碼時間的相對關係表進行分析,選擇較適 合用於多 數影像的 係數值 。 以下各列出兩個低動態、中動態和高 動態影像序列在不同 w 與 Y 所 表 現 的 PSNR 和編碼時間。其中 PSNR 的計算方式如(4-2)所示,. PSNR (dB) = 10 log 36. 255 2 …………………………….( 4-2) MSE.
(45) Akiyo 測試影像在不同 w 與 Y 下的 PSNR 值. 表 4-2 w. Y. 1. 2. 1. 38.16. 38.16. 38.15 38.16 38.16 38.15 38.16 38.19 38.15 38.15. 2. 38.15. 38.16. 38.15 38.16 38.16 38.17 38.15 38.15 38.16 38.16. 3. 38.16. 38.19. 38.19 38.19 38.18 38.16 38.16 38.18 38.16 38.18. 4. 38.17. 38.19. 38.19 38.19 38.18 38.16 38.16 38.18 38.16 38.18. 5. 38.17. 38.19. 38.19 38.19 38.18 38.16 38.16 38.18 38.16 38.18. 6. 38.17. 38.19. 38.19 38.19 38.18 38.16 38.16 38.18 38.16 38.18. 7. 38.17. 38.19. 38.19 38.19 38.18 38.16 38.16 38.18 38.16 38.18. 8. 38.17. 38.19. 38.19 38.19 38.18 38.16 38.16 38.18 38.16 38.18. 9. 38.17. 38.19. 38.19 38.19 38.18 38.16 38.16 38.18 38.16 38.18. 10. 38.17. 38.19. 38.19 38.19 38.18 38.16 38.16 38.18 38.16 38.18. w. 4. 5. 6. 7. 8. 9. 10. Salesman 測試影像在不同 w 與 Y 下的 PSNR 值. 表 4-3. Y. 3. 1. 2. 3. 4. 5. 1. 36.61. 36.63. 36.63 36.63 36.61 36.62 36.62 36.61 36.62 36.60. 2. 36.63. 36.61. 36.62 36.62 36.63 36.61 36.60 36.61 36.60 36.63. 3. 36.63. 36.61. 36.61 36.61 36.63 36.63 36.64 36.62 36.63 36.61. 4. 36.60. 36.60. 36.61 36.61 36.63 36.63 36.62 36.62 36.62 36.63. 5. 36.65. 36.64. 36.65 36.63 36.64 36.62 36.63 36.64 36.64 36.64. 6. 36.65. 36.64. 36.65 36.63 36.64 36.62 36.63 36.64 36.64 36.64. 7. 36.65. 36.64. 36.65 36.63 36.64 36.62 36.63 36.64 36.64 36.64. 8. 36.65. 36.64. 36.65 36.63 36.64 36.62 36.63 36.64 36.64 36.64. 9. 36.65. 36.64. 36.65 36.63 36.64 36.62 36.63 36.64 36.64 36.64. 10. 36.65. 36.64. 36.65 36.63 36.64 36.62 36.63 36.64 36.64 36.64. 37. 6. 7. 8. 9. 10.
(46) 表 4-4 w. Y. News 測試影像在不同 w 與 Y 下的 PSNR 值. 1. 2. 1. 36.84. 36.85. 36.85 36.84 36.85 36.85 36.88 36.86 36.86 36.83. 2. 36.84. 36.85. 36.86 36.85 36.83 36.85 36.86 36.86 36.87 36.87. 3. 36.84. 36.82. 36.86 36.87 36.85 36.85 36.86 36.87 36.84 36.87. 4. 36.85. 36.84. 36.87 36.85 36.87 36.85 36.86 36.87 36.84 36.85. 5. 36.80. 36.86. 36.87 36.84 36.85 36.85 36.85 36.84 36.84 36.87. 6. 36.88. 36.85. 36.85 36.86 36.84 36.85 36.85 36.85 36.85 36.87. 7. 36.88. 36.85. 36.86 36.86 36.84 36.85 36.85 36.86 36.85 36.85. 8. 36.88. 36.85. 36.86 36.86 36.84 36.85 36.85 36.86 36.85 36.85. 9. 36.88. 36.85. 36.86 36.86 36.84 36.85 36.85 36.86 36.85 36.85. 10. 36.88. 36.85. 36.86 36.86 36.84 36.85 36.85 36.86 36.85 36.85. 表 4-5 w. Y. 3. 4. 5. 6. 7. 8. 9. 10. Silent 測試影像在不同 w 與 Y 下的 PSNR 值. 1. 2. 3. 4. 5. 1. 36.02. 36.02. 36.01 36.02 36.04 36.03 36.02 36.03 36.05 36.04. 2. 36.04. 36.05. 36.03 36.02 36.03 36.01 36.04 36.04 36.02 36.03. 3. 36.03. 36.03. 36.03 36.02 36.04 36.07 36.05 36.02 36.05 36.04. 4. 36.01. 36.03. 36.02 36.06 36.03 36.04 36.05 36.03 36.06 36.01. 5. 36.05. 36.04. 36.02 36.05 36.02 36.03 36.05 36.02 36.03 36.03. 6. 36.05. 36.02. 36.05 36.03 36.04 36.02 36.05 36.03 36.03 36.03. 7. 36.04. 36.01. 36.04 36.04 36.04 36.04 36.01 36.03 36.05 36.04. 8. 36.03. 36.03. 36.04 36.03 36.05 36.04 35.99 36.03 36.04 36.04. 9. 36.03. 36.03. 36.04 36.03 36.03 36.05 35.99 36.03 36.04 36.04. 10. 36.03. 36.03. 36.04 36.03 36.03 36.05 35.99 36.03 36.04 36.04. 38. 6. 7. 8. 9. 10.
(47) 表 4-6 w. Y. Foreman 測試影像在不同 w 與 Y 下的 PSNR 值. 1. 2. 1. 36.69. 36.68. 36.70 36.69 36.68 36.68 36.72 39.69 36.69 36.70. 2. 36.69. 36.69. 36.69 36.67 36.69 36.68 36.70 36.71 36.69 36.70. 3. 36.69. 36.68. 36.69 36.69 36.70 36.68 36.70 36.71 36.69 36.70. 4. 36.69. 36.68. 36.69 36.70 36.68 36.70 36.70 36.69 36.69 36.69. 5. 36.67. 36.68. 36.69 36.69 36.70 36.69 36.69 36.70 36.68 36.69. 6. 36.68. 36.67. 36.70 36.68 36.69 36.69 36.70 36.69 36.69 36.70. 7. 36.67. 36.67. 36.70 36.68 36.70 36.68 36.67 36.69 36.69 36.69. 8. 36.67. 36.68. 36.67 36.68 36.68 36.68 36.67 36.70 36.68 36.67. 9. 36.67. 36.66. 36.68 36.68 36.68 36.68 36.67 36.69 36.66 36.67. 10. 36.66. 36.64. 36.67 36.68 36.68 36.67 36.69 36.69 36.68 36.69. w. 4. 5. 6. 7. 8. 9. 10. Coastguard 測試影像在不同 w 與 Y 下的 PSNR 值. 表 4-7. Y. 3. 1. 2. 3. 4. 5. 1. 38.27. 38.28. 38.29 38.30 38.29 38.33 38.31 38.19 38.26 38.26. 2. 38.27. 38.23. 38.28 38.25 38.29 38.28 38.31 38.18 38.27 38.27. 3. 38.29. 38.30. 38.27 38.26 38.26 38.28 38.27 38.25 38.27 38.27. 4. 38.29. 38.31. 38.28 38.26 38.29 38.30 38.25 38.30 38.23 38.35. 5. 38.27. 38.27. 38.24 38.27 38.28 38.22 38.22 38.30 38.25 38.28. 6. 38.33. 38.28. 38.34 38.28 38.25 38.22 38.34 38.28 38.25 38.31. 7. 38.33. 38.30. 38.32 38.32 38.28 38.25 38.27 38.30 38.31 38.30. 8. 38.32. 38.30. 38.27 38.23 38.27 38.28 38.27 38.30 38.31 38.30. 9. 38.28. 38.31. 38.30 38.31 38.26 38.28 38.27 38.27 38.26 38.30. 10. 38.29. 38.32. 38.25 38.28 38.31 38.29 38.28 38.27 38.25 38.30. 39. 6. 7. 8. 9. 10.
(48) 在 表 4-2 到 表 4-7 中 , 紅 色 的 字 體 代 表 該 測 試 影 像 中 所 得 到 的 最 大 PSNR 值。從這六個影像中不難看出,因不同的影像序列其特性不同,故 所得到的最佳 w 與 Y 的對應值也就相對不同。以下列出各測試影像最 高 PSNR 值 其 w 與 Y (w, Y) 的對應值:. 1.. Akiyo:( 2,3) ~( 2,10),(3,3) ~(3,10),(4,3)~(4,10)。. 2.. Salesman:(3,5) ~( 3,10),(1,5) ~( 1,10)。. 3.. News:( 1,6) ~( 1,10),(7,1)。. 4.. Silent:( 6,3)。. 5.. Foreman:(7,1)。. 6.. Coastguard:(10,4)。. 根 據 上 述 列 出 的 數 值,可 以 歸 納 出 一 個 簡 單 的 結 論。對 於 低 動 態 的 影 像 , 選用較高的 w 值,會得到較高的 PSNR 值;中動態的影像其 w 值應選用 較小的 w 值;高動態的影像與中動態相同,選用較小的 w 值,會得到 較 佳的影像品質。Y 值則在各個影像都不同,因 此,則無法歸納出其一致性 或該如何選用。但 是以上規則並不是相當的精 確,因各影像序列有其獨特 性。那麼該如何選擇一組適合所有測試影像的 w 與 Y 值?吾人利用平 均 的 PSNR 值去做選取,將表 4-2 到表 4-7 得到之 PSNR 值進行平均,所得 結果列於表 4-8 中,而為求精確我們將平均值列至小數點後三位。. 40.
(49) 表 4-8 w. Y. 1. 2. 六個測試影像在不同 w 與 Y 下的平均 PSNR 值. 3. 4. 5. 6. 7. 8. 9. 10. 1. 37.098 37.103 37.105 37.107 37.105 37.110 37.118 37.095 37.105 37.097. 2. 37.103 37.098 37.105 37.095 37.105 37.100 37.110 37.092 37.102 37.110. 3. 37.107 37.105 37.108 37.107 37.110 37.112 37.113 37.108 37.107 37.112. 4. 37.102 37.108 37.110 37.112 37.113 37.113 37.107 37.115 37.100 37.118. 5. 37.102 37.113 37.110 37.112 37.112 37.095 37.100 37.113 37.100 37.115. 6. 37.127 37.108 37.130 37.112 37.107 37.093 37.122 37.112 37.103 37.122. 7. 37.123 37.110 37.127 37.120 37.113 37.100 37.098 37.117 37.117 37.117. 8. 37.120 37.115 37.113 37.103 37.110 37.105 37.095 37.118 37.113 37.113. 9. 37.113 37.113 37.120 37.117 37.105 37.107 37.095 37.112 37.102 37.113. 10. 37.113 37.112 37.110 37.112 37.113 37.107 37.100 37.112 37.103 37.117. 在表 4-8 中,紅色字體代表最高的平均 PSNR 值;藍色字體代表該組 w 與 Y 值所得到的平均 PSNR 值亦相當不錯,也可參考選用該組數據;綠 色字體代表所得到的平均 PSNR 值是比較偏低的幾組,而橘色字體則代表 所得到的平均 PSNR 值是最低。當 w = 8,Y = 2 時,所 得到的 PSNR 值最 低,其 PSNR = 37.092:而當 w = 3,Y = 6 時,在六個測試影像所得到的 平均 PSNR 值會最高,其 PSNR = 37.130;雖然 PSNR 會有差距但是差距 都相當的小,約 0.04dB。因此,在本研究後續的實驗中,將選定 w = 3, Y = 6 作為測試值。至於不同的 w 與 Y 值,因為對於編碼時間的影響相 當 的小,故在選擇適用於 w 與 Y 的對應值時,僅以各測試影像的 PSNR 值 作為考量,以求降低編碼過程中所帶來的影像品質損失。表 4-9 到表 4-14 列出六個測試影像 w 與 Y 對應值於編碼時間的關係,表內所得到的值 為 十次測試結果的平均值。. 41.
(50) 表 4-9 w. Y. 1. 2. Akiyo 測試影像在不同 w 與 Y 下的編碼時間. 3. 4. 5. 6. 7. 8. 9. 10. 1. 65.721 65.457 65.453 65.409 65.392 65.310 65.539 65.595 65.047 65.519. 2. 65.496 65.452 65.479 65.692 65.121 65.749 65.454 65.166 65.608 65.590. 3. 65.327 65.495 65.605 65.610 65.561 65.108 65.149 65.421 65.601 65.515. 4. 65.298 65.529 65.565 65.486 65.440 65.332 65.606 65.637 65.551 65.560. 5. 65.718 65.347 65.371 65.248 65.399 65.595 65.449 65.526 65.346 65.475. 6. 65.355 65.358 65.634 65.433 65.561 65.419 65.203 65.159 65.432 65.339. 7. 65.218 65.203 65.450 65.281 65.469 65.600 65.605 65.372 65.388 65.614. 8. 65.407 65.583 65.580 65.230 65.577 65.684 65.487 65.735 65.165 65.576. 9. 65.595 65.433 65.456 65.404 65.219 65.512 65.455 65.621 65.421 65.089. 10. 65.495 65.545 65.673 65.362 65.326 65.748 65.344 65.416 65.220 65.608. 表 4-10 w. Y. 1. 2. Salesman 測試影像在不同 w 與 Y 下的編碼時間. 3. 4. 5. 6. 7. 8. 9. 10. 1. 67.291 67.262 67.331 67.460 67.785 67.908 67.681 67.574 67.659 67.503. 2. 67.138 67.233 66.937 67.264 67.197 67.273 67.303 67.079 67.280 67.476. 3. 67.180 66.906 67.198 67.118 67.104 67.164 67.111 66.951 67.085 67.046. 4. 67.247 67.049 67.075 67.110 67.121 66.997 67.112 66.870 67.173 67.105. 5. 66.845 66.862 66.917 66.955 67.007 66.914 66.937 66.900 66.937 66.900. 6. 67.031 67.041 67.024 67.125 66.778 66.947 66.922 66.991 66.833 66.997. 7. 67.059 66.944 66.871 66.784 66.809 66.754 66.861 66.838 66.810 66.866. 8. 66.971 67.009 66.905 67.030 66.795 66.842 67.014 66.923 67.022 66.864. 9. 67.018 66.997 66.941 66.982 66.778 66.860 66.968 67.011 66.925 66.900. 10. 66.922 66.913 67.260 66.972 66.925 66.846 66.998 66.847 66.715 66.981. 42.
(51) 表 4-11 w. Y. 1. 2. News 測試影像在不同 w 與 Y 下的編碼時間. 3. 4. 5. 6. 7. 8. 9. 10. 1. 68.251 68.234 67.992 67.979 68.102 68.056 68.059 68.058 68.030 68.142. 2. 67.529 67.747 67.663 67.866 67.735 67.762 67.906 67.849 67.771 67.829. 3. 67.602 67.387 67.662 67.636 67.529 67.691 67.670 67.698 67.458 67.481. 4. 67.466 67.558 67.449 67.436 67.717 67.538 67.710 67.604 67.703 67.569. 5. 67.463 67.286 67.256 67.501 67.501 67.274 67.360 67.523 67.416 67.702. 6. 67.507 67.446 67.374 67.382 67.443 67.450 67.584 67.417 67.314 67.485. 7. 67.549 67.408 67.533 67.267 67.498 67.343 67.474 67.466 67.267 67.487. 8. 67.645 67.671 67.537 67.657 67.424 67.436 67.370 67.548 67.292 67.621. 9. 67.565 67.396 67.406 67.278 67.502 67.373 67.459 67.741 67.428 67.427. 10. 67.519 67.571 67.506 67.521 67.217 67.515 67.468 67.427 67.618 67.263. 表 4-12 w. Y. 1. 2. Silent 測試影像在不同 w 與 Y 下的編碼時間. 3. 4. 5. 6. 7. 8. 9. 10. 1. 70.495 70.720 70.660 70.965 71.454 71.211 71.420 71.122 71.312 71.619. 2. 69.561 69.726 70.260 70.513 70.750 70.553 70.883 71.150 71.195 70.933. 3. 69.487 69.329 69.764 69.801 70.203 70.046 70.506 70.161 69.973 70.371. 4. 69.195 68.964 69.036 69.465 70.256 69.355 69.417 69.474 69.551 69.861. 5. 69.141 68.968 69.337 69.044 69.392 68.912 69.375 68.725 69.568 69.296. 6. 68.789 68.829 69.014 68.987 69.220 68.886 69.175 69.188 69.079 69.131. 7. 69.048 68.863 69.004 68.929 69.117 68.697 68.767 69.940 68.749 69.043. 8. 68.947 68.837 68.726 68.742 68.916 68.851 68.774 68.749 68.881 68.838. 9. 68.757 68.789 68.752 68.685 68.812 68.683 68.867 68.785 69.161 68.711. 10. 68.853 68.995 68.731 68.830 68.947 68.722 68.984 68.941 69.017 68.961. 43.
(52) 表 4-13 w. Y. 1. 2. Foreman 測試影像在不同 w 與 Y 下的編碼時間. 3. 4. 5. 6. 7. 8. 9. 10. 1. 76.365 74.882 75.369 75.983 76.750 76.482 76.587 75.862 75.192 76.855. 2. 75.633 75.153 75.528 75.911 76.358 75.915 76.514 76.012 76.191 76.385. 3. 75.744 75.344 75.336 75.569 76.446 76.262 76.189 75.688 76.157 75.989. 4. 74.349 75.065 75.092 75.250 75.714 76.290 75.563 75.601 76.026 76.219. 5. 74.917 74.374 75.099 75.115 76.047 75.394 75.548 75.649 75.874 75.953. 6. 74.398 73.659 74.390 75.086 75.828 75.570 75.637 75.496 75.797 76.220. 7. 73.838 73.549 74.112 84.856 75.835 75.385 75.095 75.711 75.983 75.134. 8. 73.584 73.646 73.915 74.644 75.186 75.313 75.333 74.993 74.548 75.182. 9. 73.350 72.707 75.492 74.336 75.542 74.904 74.764 74.773 74.916 75.411. 10. 73.163 73.042 73.636 74.251 75.053 74.789 74.679 74.964 74.768 74.992. 表 4-14 w. Y. 1. 2. Coastguard 測試影像在不同 w 與 Y 下的編碼時間. 3. 4. 5. 6. 7. 8. 9. 10. 1. 75.446 74.055 74.254 75.346 73.871 75.137 75.258 74.833 75.023 75.007. 2. 75.536 73.588 74.310 75.461 73.631 74.729 75.173 74.802 74.607 75.030. 3. 74.842 74.105 73.380 75.511 73.551 74.470 75.191 74.087 74.317 74.745. 4. 73.888 73.716 73.242 75.471 74.020 73.981 75.040 74.391 74.563 75.006. 5. 75.570 72.678 73.484 75.270 73.306 74.117 74.837 74.046 73.929 74.629. 6. 73.963 72.575 73.497 75.320 73.038 74.080 74.089 74.220 74.390 74.350. 7. 73.151 71.998 73.369 75.825 73.611 73.886 73.700 76.527 74.238 73.988. 8. 73.340 72.448 75.192 75.819 73.395 73.885 73.887 73.532 73.823 74.129. 9. 72.602 72.244 75.567 75.561 72.969 73.661 73.907 73.491 74.119 74.148. 10. 73.193 72.280 75.808 74.086 72.983 73.716 73.752 73.553 73.849 74.187. 44.
(53) 表 4-15 w. Y. 1. 2. 六個測試影像在不同 w 與 Y 下的平均編碼時間. 3. 4. 5. 6. 7. 8. 9. 10. 1. 70.595 70.102 70.177 70.524 70.559 70.684 70.757 70.507 70.377 70.774. 2. 70.149 69.817 70.030 70.451 70.132 70.330 70.539 70.286 70.442 70.541. 3. 70.030 69.761 69.824 70.208 70.066 70.124 70.303 70.001 70.099 70.191. 4. 69.574 69.647 69.577 70.036 70.045 69.916 70.075 69.930 70.095 70.220. 5. 69.942 69.253 69.577 69.856 69.775 69.701 69.918 69.728 69.845 69.993. 6. 69.507 69.151 69.489 69.889 69.645 69.725 69.768 69.745 69.808 69.920. 7. 69.311 68.994 69.390 71.490 69.723 69.611 69.584 70.309 69.739 69.689. 8. 69.316 69.199 69.643 69.854 69.549 69.669 69.644 69.580 69.455 69.702. 9. 69.148 68.928 69.936 69.708 69.470 69.499 69.570 69.570 69.662 69.614. 10. 69.191 69.058 69.769 69.504 69.409 69.556 69.538 69.525 69.531 69.665. 表 4-15 列出六個測試影像在不同 w 與 Y 值下的平均編碼時間,最高 PSNR 值其編碼時間以紅色字體表示,最低 PSNR 值其編碼時間以綠色字 體表示,需要最少的編碼時間以藍色字體表示,而需要最多讀編碼時間則 以橘色字體表示。當 w = 10、Y = 1 時,所需要的編碼時間最長,所需編 碼時間為 70.774 秒;當 w = 2、Y = 9 時,所需要的編碼時間最短,所需 編碼時間為 68.928 秒,編碼三百張畫面時間僅僅相差 1.846 秒。當 w = 10、 Y = 1 時其門檻值會因些微變動就需 要不斷的提高或下降,同時增加或減 少的幅度也是最大,因此,造成計算 量增加,編碼時間上升。. 45.
(54) 4.3. 可適性提早終止演算法實驗結果. 在各項參數決定後,將延續前幾節的討論,將 本研究所提出的演算法 進行實驗和分析。表 4-16 列出了主要幾項的研究結果,包含了:. 1.. 編碼時間節省 (Time Saving,TS)。. 2.. 移動估測時間節省 (Motion Estimation Time Saving,METS)。. 3.. PSNR 提 升(Elevated PSNR,EPSNR)。. 4.. 增加的位元率 (Increased Bit-Rate, IBR )。. 其計算方式如下:. ⎛ CodingTime FME − CodingTime AET TS % = ⎜⎜ CodingTime FME ⎝. ⎞ ⎟⎟ × 100% ………………( 4-3) ⎠. ⎛ METime FME − METime AET METS % = ⎜⎜ METime FME ⎝. ⎞ ⎟⎟ × 100% ….……………(4-4) ⎠. EPSNR = PSNR AET − PSNR FME ………….…………….(4-5). IBR = BR AET − BR FME ……………………….…... (4-6). 在式子 (4-3)到 (4-6)中,下標 FME 表 示 H.264 編碼參考軟體 JM 的快速移 動估測 (Fast Motion Estimation,FME);下標 AET 表示本文所提出的提早 終止演算法。. 46.
(55) 表 4-16. AET 演算法實驗結果. No.. Sequence. TS (%). METS (%). EPSNR (dB). IBR (kbit/s). a. Akiyo. 9.37%. 14.20%. 0.02. 0.08. b. Carphone. 15.74%. 23.19%. -0.12. 0.91. c. Coastguard. 20.61%. 28.27%. 0.01. 2.16. d. Container. 14.45%. 19.79%. -0.04. 0.21. e. Foreman. 17.76%. 26.07%. -0.05. 2.14. f. Mother_daughter. 11.90%. 18.23%. -0.08. 1.23. g. News. 11.93%. 19.37%. -0.03. 0.69. h. Salesman. 13.49%. 21.62%. 0.00. 0.67. i. Silent. 14.41%. 21.27%. 0.01. 1.32. j. Table. 14.35%. 21.45%. -0.04. 2.07. Average. 14.40%. 21.34%. -0.03. 1.15. 從表 4-16 可看出,在使用 AET 演算法後,十 個測試影像的編碼時間可以 降低 9.37%至 20.61%,平均可節省 14.40%的壓縮時間;移動估測時間可 降低 14.74%至 26.77%,平 均可節省 21.34%的移動估測時間。影 像品質的 損失也不會太多,僅有一半的測試影像會造成 影像品質的降低,平均的影 像品質損失為 0.03dB;額外增加的位元率只有 1.15k bit/s。圖 4-2 列出十 個測試影像編碼時間的比較圖;圖 4-3 列出十個測試影像移動估測時間的 比較圖,在圖中 AET 演算法所需的編碼時間和移動估測時間均較 FME 短 少一截。接著列出低動態 (圖 4-4、 圖 4-5)、中動態 (圖 4-6、 圖 4-7)和 (高 動態圖 4-8、圖 4-9)各兩個影像序列門檻值的變動情形。. 47.
(56) Coding Time. second 100.000 90.000 80.000 70.000 60.000. Fast ME AET. 50.000 40.000 30.000 20.000 10.000 0.000 a. b. c. 圖 4-2. d. e. f. g. h. i. j. video seq.. 十個測試影像編碼時間比較圖. Motion Estimaiton Time. second 70.000 60.000 50.000 40.000. Fast ME AET. 30.000 20.000 10.000 0.000 a. b. 圖 4-3. c. d. e. f. g. h. i. 十個測試影像移動估測時間比較圖. 48. j. video seq..
(57) Akiyo. cost value 3500 3000. THZ[1]. 2500. THZ[2] THZ[3]. 2000. THZ[4] 1500. THZ[5] THZ[6]. 1000. THZ[7]. 500 0 1. 51. 101. 151. 201. 251. 圖 4-4. Akiyo 測試影像門檻值變動情形. frame. Salesman. cost value 3500 3000. THZ[1] 2500. THZ[2] THZ[3]. 2000. THZ[4] 1500. THZ[5] THZ[6]. 1000. THZ[7]. 500 0 1. 51. 圖 4-5. 101. 151. 201. 251. Salesman 測試影像門檻值變動情形. 49. frame.
相關文件
Proceedings of the 28 th Conference of the International Group for the Psychology of Mathematics Education, 2004 Vol 4 pp
(A)受器 感覺神經元 聯絡神經元 運動神經元 動器 (B)動器 運動神經元 聯絡神經元 感覺神經元 受器 (C)動器 感覺神經元 聯絡神經元 運動神經元 受器 (D)受器 運動神經元
Adapting the former Hangzhou Machine Factory as offices and for commercial uses Hangzhou XinTianDi Factory H, 杭州新天地工業遺存 H 地塊 (under construction) (Serie
首先,在前言對於為什麼要進行此項研究,動機為何?製程的選擇是基於
In order to improve the aforementioned problems, this research proposes a conceptual cost estimation method that integrates a neuro-fuzzy system with the Principal Items
更能有效且快速評估之目的,Hoosier Riverwatch (2000) 提出市民版 的 QHEI 評 估 法 (Citizens Qualitative Habitat Evaluation Index,
Ko, “Fast Intra Prediction Mode Selection Scheme Using Temporal Correlation in H.264,” IEEE International Region 10 Conference, pp. Yu, “A Fast Mode Decision Method for
Ahmad, A Variable Block Size Motion Estimation Algorithm for Real-time H.264 Video Encoding, Signal Processing: Image Communication,