簡易檢索 / 詳目顯示

研究生: 王聖諺
Sheng-Yan Wang
論文名稱: 以雲端運算及提前中止法加速高效率視訊編碼HEVC程序之探討
Speed up HEVC Encoding Process by Cloud-Computing and Early Termination Method
指導教授: 陳建中
Jiann-Jone Chen
口試委員: 張意政
none
張峯誠
none
吳怡樂
none
學位類別: 碩士
Master
系所名稱: 電資學院 - 電機工程系
Department of Electrical Engineering
論文出版年: 2014
畢業學年度: 103
語文別: 中文
論文頁數: 95
中文關鍵詞: 雲端畫面間預測快速演算法平行編碼
外文關鍵詞: fast encoding method, parallel encoding
相關次數: 點閱:162下載:9
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 隨著視訊處理技術的進步,視訊編碼品質也相對提升,然而編碼及傳送高畫質高影值視訊隨之而來的問題就是高頻寬高運算,為了有效降低位元率同時保持視訊低失真,HEVC(High Efficient Video Coding)於2013 年4月13日由ITU-T 推薦為正式視訊編碼標準,與前一代視訊編碼標準(H.264/AVC)相較,在相同的編碼品質下可達到兩倍之壓縮率,視訊解析度範圍從4K Ultra HD 至8K。 HEVC 考慮平行處理是未來趨勢,因此提供許多可平行工具予程式開發者使用,例如Wavefront Parallel Processing(WPP)、Tile、Entropy Slice 等。此外HEVC 有編碼單位(Coding Unit, CU)、預測單位(Prediction Unit,PU)以及轉換單位(Transform Unit, TU)等處理單元,相較於H.264/AV 的編碼單位(Macroblock, MB)大小固定為16×16 ,HEVC 的CU 大小可從64×64 至8×8,且支援非對稱分割預測,可有效降低位元率(bitrate),然而許多的畫面分割和預測方法大幅地增加了計算複雜度。本論文根據HEVC 可高效平行處理機制及雲端平行運算特性,提出有效降低編碼時間的架構:(1) 將視訊分割並分配至雲端運算平台之不同節點以進行平行編碼,同時考慮了節點本身並行或加速編碼的可能性,可進一步延伸加速; (2)運算節點可藉由對同一張視訊畫面分割為多個矩形區域(Tiles),運用CPU 多核心架構配合多執行緒平行編碼; (3) 藉由參考周圍或其他畫面的CU 以及PU 特性,提出二種快速演算法以節省不必要的CU 深度分割和PU 預測模式,進一步降低計算複雜度。利用本論文提出的編碼架構,可在少量的位元增加率和PSNR 損失下,平均可以減少94.813%的編碼時間。


    With the advance of video coding technology, the resolution and quality of video frames have been largely improved. However, high resolution and high coding quality also imply high coding bitrate and higher time complexity. The high efficient video coding standard (HEVC), approved by ITU-T, in April 13, 2013, provide twice the compression efficiency, as compared to its previous version, H.264/AVC. The processing resolution range can be from 4K ultra HD up to 8192x4320. The HEVC was also designed to enable parallel processing to provide widespread coding platform applications, such as Wavefront Parallel Processing (WPP), independent tile coding, and entropy slice coding etc. In addition, the HEVC supports different processing units, such as Coding Unit (CU), prediction unit (PU) and transform unit (TU). In comparison with H.264/AVC, whose coding unit is fixed as 16 by 16, the HEVC supports CU from 64x64 to 8x8. The CU can be split asymmetrically to reduce encoding bit rate. However, these high efficient coding procedures also demand higher computation complexity. In this these, we proposed to improve the HEVC coding speed by utilizing cloud computing platform and multi-thread processing, in additional to developing early termination methods: (1) we segment the video into GOP units with different length to distribute to different cloud computing nodes; (2) The video coding can be speedup by parallel processing by dividing the image frame into tiles, such that multi-thread computing can encode them independently; (3) By referencing to surrounding CUs and Pus, the current CU depth decomposition and PU prediction can be early terminated to eliminate extra computational operations. In total, the proposed HEVC speedup coding methods can save 94.813% encoding time, while slightly increasing the bitrates and decreasing the PSNRs, as compared with the HM13.0 HEVC encoder description.

    摘要 1 Abstract 2 致謝 3 目錄 4 圖目錄 6 第一章 緒論 9 1.1 研究動機與目的 9 1.2 問題描述與研究方法 10 1.3 論文組織 11 第二章 背景知識 12 2.1 HEVC 視訊編碼標準介紹 12 2.1.1 HEVC 制定 12 2.1.2 HEVC 網路提取層(NAL) 13 2.1.3 HEVC 視訊編碼層(VCL) 13 2.1.3.1 編碼單位(Coding, CU) 13 2.1.3.2 預測單位(Prediction Unit, PU) 15 2.1.3.3 轉換單位(Transform Unit, TU) 25 2.1.3.4 率失真最佳化(Rate-Distortion Optimization Routine) 25 2.1.3.5 轉換與量化(Transform and Quantization) 27 2.1.3.6 熵編碼(Entropy Encoding) 29 2.1.3.7 HEVC 平行化編碼工具(HEVC Parallel Encoding Tools) 30 2.2 雲端運算內容與服務之相關技術 35 2.2.1 雲端平行處理技術 35 2.2.2 Hadoop 36 2.2.2.1 HDFS 架構 39 2.2.2.2 Hadoop MapReduce 架構 41 第三章 基於雲端之HEVC 分散式平行編碼 45 3.1 系統架構與功能概述 45 3.2 多執行緒平行編碼 51 3.3 HEVC 畫面間快速演算法 57 3.3.1 HEVC 快速演算法之相關文獻探討 57 3.3.2 Proposed Early CU Skip Mode Decision 60 3.3.3 Proposed Early CU Split Decision 65 第四章 實驗結果與討論 72 4.1 實驗環境設置 72 4.2 實驗結果 73 4.2.1 不同加速編碼方法組合比較 73 第五章 結論與未來研究探討 87 5.1 結論 87 5.2 未來展望 88 參考文獻 89

    [1] T. Wiegand et al, “Overview of the H.264/AVC video coding standard,” IEEE Trans.Circuits and Systems for Video Technology, vol. 13, no. 7, pp. 560-576, July 2003.
    [2] Sullivan, G.J et al, “Overview of the High Efficiency Video Coding (HEVC) Standard,”IEEE Trans. Circuits and Systems for Video Technology, vol. 22, no. 12, pp. 1649-1668,Sep 2012.
    [3] The Apache Hadoop. http://hadoop.apache.org/
    [4] VMware. http://www.vmware.com/tw/
    [5] Ubuntu linux. www.ubuntu.com
    [6] HEVC Test Model. http://hevc.hhi.fraunhofer.de/
    [7] http://www.theregister.co.uk/2013/04/11/feature_wtf_is_h265_hevc/
    [8] Kiho Choi and Euee S. Jang “Fast coding unit decision method based on coding tree pruning for high efficiency video coding,” SPIE Optical Engineering, vol. 51, Issue 3,March 2012.
    [9] Lainema J, et al “Intra Coding of the HEVC Standard,” IEEE Trans. Circuits and Systems for Video Technology, vol. 22, no. 12, pp. 1792-1801, Dec 2012.
    [10] http://www.hindawi.com/journals/ijrc/2012/473725/fig1/
    [11] Tang X.-L., Dai S.K., Cai C.H. (2010), “An analysis of TZ search algorithm in JMVC,” IEEE Conf. Green Circuits and Systems (ICGCS), Shanghai, pp 516-520.
    [12] Jui-Feng.Hu et al, “Speeding up the decisions of quad-tree structures and coding modes for HEVC coding units,” Institute of Computer and Communication Engineering Department of Electrical Engineering NCKU, June 2012.
    [13] http://blog.sina.com.cn/s/blog_520811730101m9y2.html
    [14] Misra, K. et al “An Overview of Tiles in HEVC,” IEEE Journal, Selected Topics in Signal Processing, vol 7, no. 6, pp. 969-977, Dec 2013.
    [15] K.-S. Candan et al, “Scalable multimedia data processing in server clusters,” IEEE MultiMedia, vol 18, pp. 3-5, Jan 2010.
    [16] A. Verma et al, “Scaling genetic algorithms using MapReduce,” ISDA Conf. Intelligent Systems Design & Applications, Dec 2009.
    [17] W. Xu et al, “Detecting large-scale system problems by mining console logs,” in ACM Symp. on SOSP, vol 146, pp. 117-132, Oct 2009.
    [18] S. Ghemawat, H. Gobioff, and S.-T. Leung, “The Google File System,” in ACM Symp. on SOSP, Dec 2003.
    [19] J. Dean and S. Ghemawat, “MapReduce: simplified data processing on large clusters,” Comm. of the ACM, vol. 51, pp.107-113, Jan 2008.
    [20] Apache Lucene. http://lucene.apache.org/
    [21] http://www.mpich.org/
    [22] https://www.sourceware.org/pthreads-win32/
    [23] http://ces.itec.kit.edu/ces265/
    [24] Vanne J, et al, “Efficient mode decision schemes for HEVC inter prediction,” IEEE Trans. Circuits and Systems for Video Technology, vol. 24, no. 9, pp. 1579-1593, Sep 2014.
    [25] Seungha Yang, et al “Fast inter mode decision process for HEVC encoder,” IEEE IVMSP Workshop, June 2013.
    [26] Kibeya H, et al “A fast coding algorithm based on fast mode decision for HEVC standard,” IEEE Conf. Sciences and Techniques of Automatic Control and Computer Enginnering (STA), Dec 2013.
    [27] Xiaolin Shen, Lu Yu, Jie Chen “Fast coding unit size selection for HEVC based on Bayesian decision rule,” In Picture Coding Symposium(PCS), pp. 453-456, May 2012.
    [28] Jiajia Lu, et al “A fast block partition algorithm for HEVC,” IEEE Inf. Conf.Communications and Signal Processing (ICICS), pp. 1-5, Dec 2013.
    [29] Yongfei Zhang, et al “Fast Coding Unit Depth Decision Algorithm for Interframe Coding in HEVC,” IEEE Data Compression Conference (DCC), March 201.
    [30] Hui-Li Tan, et al “On fast coding tree block and mode decision for high-Efficiency Video Coding(HEVC),” IEEE Int. Conf. Acoustics, Speech and Signal Processing(ICASSP), pp. 825-828, March 2012.
    [31] Wei-Jhe Hsu, “Fast coding unit decision algorithm for HEVC,” IEEE Signal and Information Processing Association Annual Summit and Conference(APSIPA), pp. 1-5, Nov 2013.
    [32] Kiho-Choi, et al “Leveraging parallel computing in modern video coding standards,” IEEE MulitMedia, vol. 19, pp. 7-11, August 2012.

    QR CODE