![]() |
|
以作者查詢圖書館館藏 、以作者查詢臺灣博碩士 、以作者查詢全國書目 、勘誤回報 、線上人數:47 、訪客IP:18.227.46.243
姓名 張紓萍(Shu-Ping Chang) 查詢紙本館藏 畢業系所 電機工程學系 論文名稱 一應用於MPEG-4 AVC/H.264有效率且低成本之適應性可變長度編碼器設計之實現
(Implementation of an Efficient and Low Cost CAVLC for MPEG-4 AVC/H.264 Video Coding Application)相關論文 檔案 [Endnote RIS 格式]
[Bibtex 格式]
[相關文章]
[文章引用]
[完整記錄]
[館藏目錄]
[檢視]
[下載]
- 本電子論文使用權限為同意立即開放。
- 已達開放權限電子全文僅授權使用者為學術研究之目的,進行個人非營利性質之檢索、閱讀、列印。
- 請遵守中華民國著作權法之相關規定,切勿任意重製、散佈、改作、轉貼、播送,以免觸法。
摘要(中) 為了達到更好的壓縮率,包含一適應性可變長度熵編碼(CAVLC)器的無失真熵編碼器(Entropy encoder)被MPEG-4 AVC/H.264影像編碼器採用.相較於傳統的可變長度編碼器,適應性可變長度熵編碼器可以達到更好的編碼效率;但是相對的演算法的複雜度也比較高.另一方面,由於適應性可變長度熵編碼器存在著高度的資料相關性,因此在硬體實現方面也會變的比較複雜.同時,產出率也是一個重要的考量,特別是應用於處理高解析度的視訊影像.
隨著處理的視訊有越高的解析度,在編(解)碼時使用一個有效率的適應性可變長度熵編(解)碼器是很重要的.這份論文提出一個有效率而且低成本的適應性可變長度熵編碼器,可應用在MPEG-4 AVC/H.264相關的視訊編碼器.被提出的架構中,包含兩個主要的概念以及三個技術.第一個概念是,整合架構中掃瞄和編碼的部分;另外一個概念是利用一副輸入暫存器來達到每一個4x4方塊之間的管線功能.另外三個技術分別為,簡化七個使用於編碼非零值的表格,利用六種模式來決定目前的4x4方塊的參數nC以及減少用於nC產生器的記憶體使用量.這三個技術可以提高我們的編碼效率並且降低我們的成本.
並且,本文提出的適應性可變長度熵編碼器架構,已被燒錄到FPGA(型號為Xilinx Virtex-4 XC4VLX60),並且聯合H.264/AVC原始編碼C語言程式做驗證工作.編碼所產生的檔案(bitstream.264),經過H.264/AVC原始解碼C語言程式的解碼之後,所得到的檔案(bitstream.yuv)可以被成功的播放.摘要(英) In order to achieve the higher compression ratio, Context-Based Adaptive Variable Length Coding (CAVLC) is adopted as one of entropy encoder in MPEG-4 AVC/H.264 [1], [2]. Compared with the traditional entropy encoder, CAVLC can achieve better coding efficiency, but the algorithm complexity is higher. On the other hand, because of the data dependency in CAVLC, it results a complex CAVLC encoding in hardware implementation. At the same time, throughput is the other concern in CAVLC, especially for higher resolution video such as HDTV.
Deal with higher resolution of video information, encoding (or decoding) with an efficient CAVLC encoder is important. In this paper, an efficient and low cost CAVLC encoder is proposed for video coding applications of MPEG-4 AVC/H.264. Two main concepts are proposed to increase the throughput. One is the combination of scan phase and coding phase; the other is the block-based pipelining by the associated input buffer. We also propose three schemes to speed up the coding efficiency as well as reduce the area cost. One is to simplify the seven LEV-VLCN tables used by level coding. Another is to generate the nC value according to six block modes. The last one is to reduce the memory size used by nC generator.
And the proposed CAVLC design is downloaded to FPGA (Xilinx Virtex-4 XC4VLX60), and co-simulation with the h.264 source JM10.1 encoder c program for further verification. The encoded bitstream file (bitstream.264) can be decoded by h.264 source JM10.1 decoder c program and played successfully.關鍵字(中) ★ 適應性可變長度編碼器
★ 有效率
★ 低成本關鍵字(英) ★ h.264
★ CAVLC論文目次 摘要 i
ABSTRACT ii
致謝 iii
CONTENT iv
LIST OF FIGURES vii
LIST OF TABLES ix
CHAPTER 1 INTRODUCTION 1
1.1 BACKGROUND 1
1.2 MOTIVATION 2
1.3 INTRODUCTION TO MPEG-4 AVC/H.264 3
1.3.1 INTER PREDICTION 9
1.3.1.1 TREE STRUCTURED MOTION COMPENSATION 9
1.3.1.2 MOTION VECTORS 10
1.3.1.3 MOTION VECTORS PREDICTION 10
1.3.2 INTER PREDICTION 11
1.3.3 DEBLOCKING FILTER 11
1.3.4 TRANSFORM AND QUANTIZATION 12
1.3.5 REORDERED 12
1.3.6 ENTROPY CODING 13
1.4 THESIS ORGANIZATION 14
CHAPTER 2 INTRODUCTION TO CONTEXT-BASED ADAPTIVE VARIABLE LENGTH CODING (CAVLC) 15
2.1 TYPICAL CAVLC ALGORITHM 16
2.1.1 ENCODE THE COEFF_TOKEN 17
2.1.2 ENCODE THE SIGN OF EACH TRAILINGONE 19
2.1.3 ENCODE THE LEVELS 19
2.1.3.1 ENCODING PROCEDURE 1 19
2.1.3.2 ENCODING PROCEDURE 2 20
2.1.4 ENCODE THE TOTAL_ZEROS 22
2.1.5 ENCODE THE RUN_BEFORE 23
2.2 AN EXAMPLE FOR CAVLC 23
CHAPTER 3 PREVIOUS WORKS ON CAVLC DESIGN 26
3.1 ARRANGEMENT OF PREVIOUS WORK 26
3.2 CONSIDERATION FOR PROPOSED DESIGN 30
3.2.1 BLOCK-BASED-PIPELINED 30
3.2.2 FORWARD READ RESIDUAL FROM EXTERNAL MEMORY 30
3.2.3 THE NC MODE DECISION 31
3.2.4 LEVEL ENCODER 32
CHAPTER 4 PROPOSED CAVLC ALGORITHM 33
CHAPTER 5 PROPOSED CAVLC ARCHITECTURE 35
5.1 ASSOCIATED INPUT BUFFER 37
5.2 INFORMATION STATISTICS 38
5.3 REGISTER (FOR DATA-BASED PIPELINING) 39
5.4 NC GENERATOR 39
5.4.1 POSITION GENERATION 40
5.4.2 UP BLOCK TOTALCOEFF MEMORY 41
5.4.3 CURRENT MB TOTALCOEFF REGISTER 43
5.4.4 NC MODE DECISION 44
5.5 CODING STAGE 48
5.5.1 LEVEL ENCODER 49
5.5.1.1 VLC NUMBER GENERATION 50
5.5.1.2 ADDRESS GENERATOR 51
5.5.1.3 MERGED TABLE FOR TABLE 52
5.5.1.4 ESCAPE CODE GENERATOR 54
5.6 BITSTREAM PACKER 54
5.7 CONTROL UNIT 57
5.8 ZERO SKIPPING MODE 57
CHAPTER 6 IMPLEMENTATION ON PLATFORM XILNX VIRTEX-4 XC4VLC60 59
6.1 INTRODUCTION TO XILINX VIRTEX-4 XC4VLC60 60
6.1.1 DEFAULT MODE 60
6.1.2 APPLICATION MODE (APP MODE) 61
6.2 SOFTWARE/HARDWARE CO-SIMULATION 62
6.2.1 THE ENCODING PROCEDURE OF DIFFERENT MB MODES 64
6.2.1.1 LUMA_INTRA16X16 MODE 65
6.2.1.2 LUMA 4X4 MODE 66
6.2.1.3 CHROMADC MODE 66
6.2.1.4 CHROMAAC MODE 67
6.2.2 WRITEDATA TO FIFO BY USER APPLICATION PROGRAM 68
6.2.3 READDATA FROM FIFO BY USER APPLICATION PROGRAM 70
6.2.4 READDATA FROM FIFO BY USER FPGA 71
CHAPTER 7 PERFORMANCE EVALUATION AND COMPARISON 73
7.1 SIMULATION RESULTS 73
7.1.1 EXPERIMENTAL ENVIRONMENT 74
7.1.2 EXPERIMENTAL RESULTS 74
7.2 IMPLEMENTATION RESULTS 76
7.3 SYNTHESIS RESULTS FOR FPGA 77
CHAPTER 8 CONCLUSION AND FUTURE WORK 79
8.1 CONCLUSION 79
8.2 FUTURE WORK 80
REFERENCES 82參考文獻 [1] MPEG LA, http://www.mpegla.com.
[2] Iain E G Richardson, ‘Video Codec Design’, John Wiley & Sons, 2002
[3] Microsoft Windows Media 9 Series, http://www.microsoft.com/windows/windowsmedia/.
[4] J. V. Team, “Draft ITU-T Recommendation and Final Draft International Standard of Joint Video Specification”, ITU-T Rec. H.264 and ISO/IEC 14496-10 AVC, May 2003.
[5] Information Technology—Coding of Audio-Visual Objects—Part 2: Visual,
ISO/IEC 14496-2, 1999.
[6] Video Coding for Low Bit Rate Communication, ITU-T Rec. H.263, 1998.
[7] Information Technology—Generic Coding of Moving Pictures and Associated Audio Information: Video, ISO/IEC 13818-2 and ITU-T Rec. H.262, 1996.
[8] A. Joch, F. Kossentini, H. Schwarz, T. Wiegand, and G. J. Sullivan, “Performance comparison of video coding standards using Lagragian coder control,” in Proc. ICIP, 2002, pp. 501–504.
[9] T. Wiegand, G. J. Sullivan, G. Bjøntegaard, and A. Luthra, “Overview of the H.264/AVC video coding standard,” IEEE Trans. Circuits Syst. Video Technol., vol. 13, no. 7, pp. 560–576, Jul. 2003.
[10] Y. Su and M.-T. Sun, “Fast multiple reference frame motion estimation for H.264,” in Proc. ICME, 2004, pp. 695–698.
[11] Y.-W. Huang, T.-C.Wang, B.-Y. Hsieh, T.-C.Wang, T.-H. Chang, and L.-G. Chen, “Architecture design for deblocking filter in H.264/JVT/ AVC,” in Proc. ICME, 2003, pp. I693–I696.
[12] T.-C. Chen, Y.-W. Huang, and L.-G. Chen, “Fully utilized and reusable architecture for fractional motion estimation of H.264/AVC,” in Proc. ICASSP, 2004, pp. V9–V12.
[13] Y.-W. Huang, B.-Y. Hsieh, T.-C. Chen, and L.-G. Chen, “Hardware architecture design for H.264/AVC intra frame coder,” in Proc. ISCAS, 2004, pp. II269–II272.
[14] T.-C. Chen, Y.-W. Huang, and L.-G. Chen, “Analysis and design of macroblock pipelining for H.264/AVC VLSI architecture,” in Proc. ISCAS, 2004, pp. II273–II276.
[15] T. Wiegand, G. J. Sullivan, G. Bjontegarard and A. Luthra, “Overview of the H.264/AVC Video Coding Standard ”, IEEE Transaction on Circuits and Systems for Video Technology, Vol. 13, NO. 7, pp. 506 – 576, July 2003.
[16] ITU-T Rec.H.264/ISO/IEC 14496-10, “Advanced Video Coding“, March 2005.
[17] Jar-Ferr Kevin Yang, 經濟部工業局電子工業人才培訓計畫, Advanced MPEG-4 Multimedia Techniques and Their Prospects, 台北, 2005
[18] Chen, T.-C.; Huang, Y.-W.; Tsai, C.-Y.; Hsieh, B.-Y.; Chen, L.-G.;“Architecture Design of Context-Based Adaptive Variable-Length Coding for H.264/AVC”, in Proc. TCSII’06, vol.53 Page(s):832 - 836, Sep. 2006.
[19] Chih-Da Chien; Keng-Po Lu; Yi-Hung Shih; Jiun-In Guo; “A high performance CAVLC encoder design for MPEG-4 AVC/H.264 video coding applications”, in Proc. ISCAS’06, Page(s):4, May, 2006.
[20] Min-Chi Tsai; Tian-Sheuan Chang; “High Performance Context Adaptive Variable Length Coding Encoder for MPEG-4 AVC/H.264 Video Coding”, in Proc. APCCAS’06, Page(s):586 – 589, Dec. 2006.
[21] Daeok Kim; Eungu Jung; Hyunho Park; Hosoon Shin; Dongsoo Har; “Implementation of High Performance CAVLC for H.264/AVC Video Codec ”, in Proc. the 6th International Workshop on System-on-Chip for Real-Time Applications, Page(s):20 – 23, Dec. 2006.
[22] Chuan-Yung Tsai; Tung-Chien Chen; Liang-Gee Chen; “Low Power Entropy Coding Hardware Design for H.264/AVC Baseline Profile Encoder”, in Proc. ICME’06, Page(s):1941 – 1944, July, 2006.
[23] Yeong-Kang Lai; Chih-Chung Chou; Yu-Chieh Chung; “A simple and cost effective video encoder with memory-reducing CAVLC ”, in Proc.ISCAS’05, Vol. 1 , Page(s):432 – 4351, May, 2005.
[24] Rahman, C.A.; Badawy, W.; “An Area Efficient Real-time CAVLC IP-Block towards the H.264/AVC Encoder”, in Proc. SIPS’06, Page(s):368 – 371, Oct. 2006.
[25] Tsai, An-Chao; Paul, Anand; Wang, Jia-Ching; Wang, Jhing-Fa; “Programmable Logic Array Design for H.264 Context-Based Adaptive Variable Length Coding”, in Proc. TENCON’06, Page(s):1 – 4, Nov.2006.
[26] Rahman, C. A.; Badawy, W.; “CAVLC Encoder Design for Real-Time Mobile Video Applications”, in Proc. TCSII’07, Vol. 54, Page(s):873 – 877, Oct. 2007.
[27] Silva, Thaisa; Vortmann, Joao; Agostini, Luciano; Bampi, Sergio; Susin, Altamiro; “FPGA Based Design of CAVLC and Exp-Golomb Coders for H.264AVC Baseline Entropy Coding”, in Proc. SPL’07, Page(s):161 – 166, Feb. 2007.指導教授 蔡宗漢(Tsung-Han Tsai) 審核日期 2008-1-21 推文 plurk
funp
live
udn
HD
myshare
netvibes
friend
youpush
delicious
baidu
網路書籤 Google bookmarks
del.icio.us
hemidemi
myshare