Improved Context-Based Adaptive Binary Arithmetic Coding in MPEG-4 AVC/H.264 Video Codec

Similar documents
IMPROVED CONTEXT-ADAPTIVE ARITHMETIC CODING IN H.264/AVC

Optimized architectures of CABAC codec for IA-32-, DSP- and FPGAbased

Context-Adaptive Binary Arithmetic Coding with Precise Probability Estimation and Complexity Scalability for High- Efficiency Video Coding*

An Efficient Table Prediction Scheme for CAVLC

Fast Decision of Block size, Prediction Mode and Intra Block for H.264 Intra Prediction EE Gaurav Hansda

STUDY AND IMPLEMENTATION OF VIDEO COMPRESSION STANDARDS (H.264/AVC, DIRAC)

International Journal of Emerging Technology and Advanced Engineering Website: (ISSN , Volume 2, Issue 4, April 2012)

Performance Comparison between DWT-based and DCT-based Encoders

Reduced Frame Quantization in Video Coding

Advanced Video Coding: The new H.264 video compression standard

Comparative and performance analysis of HEVC and H.264 Intra frame coding and JPEG2000

H.264/AVC BASED NEAR LOSSLESS INTRA CODEC USING LINE-BASED PREDICTION AND MODIFIED CABAC. Jung-Ah Choi, Jin Heo, and Yo-Sung Ho

EE Low Complexity H.264 encoder for mobile applications

A COMPARISON OF CABAC THROUGHPUT FOR HEVC/H.265 VS. AVC/H.264. Massachusetts Institute of Technology Texas Instruments

A Quantized Transform-Domain Motion Estimation Technique for H.264 Secondary SP-frames

Content-Based Adaptive Binary Arithmetic Coding (CABAC) Li Li 2017/2/9

H.264 / AVC Context Adaptive Binary Arithmetic Coding (CABAC)

Pattern based Residual Coding for H.264 Encoder *

A comparison of CABAC throughput for HEVC/H.265 VS. AVC/H.264

An Efficient Adaptive Binary Arithmetic Coder and Its Application in Video Coding

H.264 STREAM REPLACEMENT WATERMARKING WITH CABAC ENCODING

IBM Research Report. Inter Mode Selection for H.264/AVC Using Time-Efficient Learning-Theoretic Algorithms

THE H.264 ADVANCED VIDEO COMPRESSION STANDARD

NEW CAVLC ENCODING ALGORITHM FOR LOSSLESS INTRA CODING IN H.264/AVC. Jin Heo, Seung-Hwan Kim, and Yo-Sung Ho

ISSN: An Efficient Fully Exploiting Spatial Correlation of Compress Compound Images in Advanced Video Coding

Deblocking Filter Algorithm with Low Complexity for H.264 Video Coding

Performance Analysis of DIRAC PRO with H.264 Intra frame coding

H.264/AVC und MPEG-4 SVC - die nächsten Generationen der Videokompression

OVERVIEW OF IEEE 1857 VIDEO CODING STANDARD

Digital Video Processing

Design of a High Speed CAVLC Encoder and Decoder with Parallel Data Path

H.264 / AVC (Advanced Video Coding)

An Implementation of Multiple Region-Of-Interest Models in H.264/AVC

Testing HEVC model HM on objective and subjective way

VHDL Implementation of H.264 Video Coding Standard

Objective: Introduction: To: Dr. K. R. Rao. From: Kaustubh V. Dhonsale (UTA id: ) Date: 04/24/2012

JPEG 2000 vs. JPEG in MPEG Encoding

Introduction to Video Coding

High Efficiency Video Coding (HEVC) test model HM vs. HM- 16.6: objective and subjective performance analysis

Rate Distortion Optimization in Video Compression

Video Quality Analysis for H.264 Based on Human Visual System

2014 Summer School on MPEG/VCEG Video. Video Coding Concept

Comparative and performance analysis of HEVC and H.264 Intra frame coding and JPEG2000

Advanced Encoding Features of the Sencore TXS Transcoder

Intra-Mode Indexed Nonuniform Quantization Parameter Matrices in AVC/H.264

Rate-distortion Optimized Streaming of Compressed Light Fields with Multiple Representations

EE 5359 Low Complexity H.264 encoder for mobile applications. Thejaswini Purushotham Student I.D.: Date: February 18,2010

[30] Dong J., Lou j. and Yu L. (2003), Improved entropy coding method, Doc. AVS Working Group (M1214), Beijing, Chaina. CHAPTER 4

Scalable Video Coding

Complexity Reduced Mode Selection of H.264/AVC Intra Coding

A Dedicated Hardware Solution for the HEVC Interpolation Unit

A LOW-COMPLEXITY AND LOSSLESS REFERENCE FRAME ENCODER ALGORITHM FOR VIDEO CODING

Reducing/eliminating visual artifacts in HEVC by the deblocking filter.

A NOVEL SCANNING SCHEME FOR DIRECTIONAL SPATIAL PREDICTION OF AVS INTRA CODING

SCALABLE HYBRID VIDEO CODERS WITH DOUBLE MOTION COMPENSATION

Rate-distortion Optimized Streaming of Compressed Light Fields with Multiple Representations

White paper: Video Coding A Timeline

RFCAVLC8t: a Reference Frame Compression Algorithm for Video Coding Systems

Image and Video Coding I: Fundamentals

EFFICIENT DEISGN OF LOW AREA BASED H.264 COMPRESSOR AND DECOMPRESSOR WITH H.264 INTEGER TRANSFORM

Outline Introduction MPEG-2 MPEG-4. Video Compression. Introduction to MPEG. Prof. Pratikgiri Goswami

Wavelet-Based Video Compression Using Long-Term Memory Motion-Compensated Prediction and Context-Based Adaptive Arithmetic Coding

BANDWIDTH-EFFICIENT ENCODER FRAMEWORK FOR H.264/AVC SCALABLE EXTENSION. Yi-Hau Chen, Tzu-Der Chuang, Yu-Jen Chen, and Liang-Gee Chen

Lecture 13 Video Coding H.264 / MPEG4 AVC

Comparative Study of Partial Closed-loop Versus Open-loop Motion Estimation for Coding of HDTV

Upcoming Video Standards. Madhukar Budagavi, Ph.D. DSPS R&D Center, Dallas Texas Instruments Inc.

One-pass bitrate control for MPEG-4 Scalable Video Coding using ρ-domain

Optimum Quantization Parameters for Mode Decision in Scalable Extension of H.264/AVC Video Codec

Video Codecs. National Chiao Tung University Chun-Jen Tsai 1/5/2015

System-on-Chip Design Methodology for a Statistical Coder

An Improved H.26L Coder Using Lagrangian Coder Control. Summary

Fraunhofer Institute for Telecommunications - Heinrich Hertz Institute (HHI)

FAST SPATIAL LAYER MODE DECISION BASED ON TEMPORAL LEVELS IN H.264/AVC SCALABLE EXTENSION

STACK ROBUST FINE GRANULARITY SCALABLE VIDEO CODING

BLOCK MATCHING-BASED MOTION COMPENSATION WITH ARBITRARY ACCURACY USING ADAPTIVE INTERPOLATION FILTERS

Professor, CSE Department, Nirma University, Ahmedabad, India

New Techniques for Improved Video Coding

Complexity Estimation of the H.264 Coded Video Bitstreams

Bit Allocation for Spatial Scalability in H.264/SVC

A Novel Deblocking Filter Algorithm In H.264 for Real Time Implementation

Block-Matching based image compression

Reduced 4x4 Block Intra Prediction Modes using Directional Similarity in H.264/AVC

Video Coding Using Spatially Varying Transform

RECOMMENDATION ITU-R BT

An Efficient Mode Selection Algorithm for H.264

Homogeneous Transcoding of HEVC for bit rate reduction

Department of Electrical Engineering

A Image Comparative Study using DCT, Fast Fourier, Wavelet Transforms and Huffman Algorithm

Coding of Coefficients of two-dimensional non-separable Adaptive Wiener Interpolation Filter

A Novel Partial Prediction Algorithm for Fast 4x4 Intra Prediction Mode Decision in H.264/AVC

Fast Mode Decision for H.264/AVC Using Mode Prediction

H.264 Video Transmission with High Quality and Low Bitrate over Wireless Network

Advances of MPEG Scalable Video Coding Standard

DIGITAL TELEVISION 1. DIGITAL VIDEO FUNDAMENTALS

Unit-level Optimization for SVC Extractor

WITH the growth of the transmission of multimedia content

Overview, implementation and comparison of Audio Video Standard (AVS) China and H.264/MPEG -4 part 10 or Advanced Video Coding Standard

Transcoding from H.264/AVC to High Efficiency Video Coding (HEVC)

EE 5359 H.264 to VC 1 Transcoding

Overview of H.264 and Audio Video coding Standards (AVS) of China

Transcription:

Improved Context-Based Adaptive Binary Arithmetic Coding in MPEG-4 AVC/H.264 Video Codec Abstract. An improved Context-based Adaptive Binary Arithmetic Coding (CABAC) is presented for application in compression of high definition video. In comparison to standard CABAC, the improved CABAC codec works with proposed more sophisticated mechanism of data statistics estimation that is based on the Context-Tree Weighting (CTW) method. Compression performance of the improved CABAC was tested and confronted with coding efficiency of the state-of-the-art CABAC algorithm used in MPEG-4 AVC. Experimental results revealed that 1.5%-8% coding efficiency gain is possible after application of the improved CABAC in MPEG-4 AVC High Profile. Keywords: entropy coding, adaptive arithmetic coding, CABAC, AVC, advanced video coding 1 Introduction An important part of video encoder is the entropy encoder that is used for removing correlation that exists within coded data. Numerous techniques of entropy coding were elaborated, many of them have been applied in video compression. The state-ofthe-art entropy coding technique used in video compression is the Context-based Adaptive Binary Arithmetic Coding (CABAC) [3, 5, 6, 14] that is used in the newest Advanced Video Coding (AVC) standard (ISO MPEG-4 AVC and ITU-T Rec. H.264) [1, 5, 6]. In comparison to other entropy coders used in video compression, CABAC encoder uses efficient arithmetic coding and far more sophisticated mechanisms of data statistics modeling which are extremely important from the compression performance point of view. The goal of the paper is to show that it is possible to reasonably increase compression performance of adaptive entropy encoder by using more accurate techniques of conditional probabilities estimation. The paper presents the improved version of CABAC with more exact technique of data statistics modeling that is based on the well known from the literature Context-Tree Weighting (CTW) algorithm [7, 8, 9, 14, 15]. The older versions of improved CABAC codec have been already presented by authors in [1, 11, 12, 13]. Nevertheless, the older versions of improved CABAC were working only with 4x4 transform for residual coding. In the High Profile of MPEG-4 AVC the 8x8 transform is additionally used. When using 8x8 transform, independent set of statistical models is used in standard CABAC. The 8x8

transform coding mode was not supported by the previous versions of improved CABAC. Coding tools of High Profile significantly improve compression capability of encoder (especially for high definition (HD) sequences). This paper makes the continuation of previous research works and presents the newest version of improved CABAC codec that works with 4x4 and 8x8 transform. In this paper, the improved CABAC was tested in application to compression of high definition video. New not published yet experimental results on improved CABAC compression performance for 8x8 transform mode are presented in the paper. 2 CABAC algorithm Detailed description of CABAC algorithm can be found in [1, 3, 6, 14]. Only short review of CABAC is presented here to show some features of the entropy codec that are important from the point of view of this paper. In general, CABAC consists of three functional blocks: binarizer, context modeler and arithmetic encoder core (see Fig. 1). for context model update Binarizer loop over s probability, Context modeler Regular coding engine coded s m-ary data binary data regular path (in regular mode) bypass path (in bypass mode) Bypass coding engine Arithmetic Coder (M-coder) stream coded s Fig. 1. Block diagram of standard CABAC encoder. The main idea of CABAC algorithm is the following. In order to speed up processing of symbols, binary arithmetic codec (the so-called M-codec) was used in CABAC [1, 3, 4, 5, 6]. Due to application of binary arithmetic codec, all non-binary valued syntax elements must be mapped into string of binary symbols. This is realized by the binarizer at the first stage of coding. The binarizer has a huge impact on the number of s that are put to arithmetic codec core. Therefore, CABAC exploits adaptive binarization by the application of several different binarization schemes for coded syntax elements. Results of binarization are put to arithmetic encoder core. The arithmetic encoder core allows to efficiently representing binary symbols with exploiting statistics of coded data estimated by the context modeler. The way of data statistics estimation to a large extent determines compression performance of adaptive arithmetic encoder. Therefore, in order to obtain an accurate adaptation to the current signal statistic, total number of 46 finite-state machines (FSM) was defined in CABAC context modeler for all syntax elements. Individual

FSM is used to calculate the conditional probability of a binary symbol that appeared in a given context. By encoding a binary symbol, CABAC chooses the right FSM depending on type of syntax element and its values in two neighboring blocks. That is the context encoding and independent statistics estimation for individual syntax elements make the power of CABAC algorithm. The algorithm of data statistics estimation used in CABAC belongs to the most advanced used in adaptive entropy encoders. 3 Research problem CABAC algorithm realizes advanced data statistics modeling, nevertheless some simplifications were done in the mechanism data statistics estimation. First of all, only one transition rule was defined for 46 FSMs that calculates the conditional probabilities of symbols. Secondly, the limited set of only 128 pre-defined quantized values of probabilities is used by arithmetic codec core. Both simplifications of CABAC negatively affect its compression performance. An interesting research problem is to check the possibility of improving compression performance of CABAC by the use of even more exact method of data statistics estimation. This makes the subject of further part of the paper. 4 Improved CABAC algorithm Authors proposed the original improvement of CABAC algorithm that increases compression performance of entropy codec. Modifications concern the context modeler functional block only. Other parts of CABAC algorithm (binarization and arithmetic codec core) were left unchanged (see Fig. 2). m-ary data Binarizer binary data loop over s Context probability, modeler with CTW Original improvements Regular coding engine Bypass coding engine Arithmetic Coder (M-coder) coded s stream coded s Fig. 2. Block diagram of improved CABAC encoder. In the improved CABAC, the standard method of data statistics modeling (used in original CABAC) was replaced with more sophisticated mechanism of the conditional probabilities estimation that exploits the well known CTW method. To do this, the

46 FSMs were replaced with new 46 more accurate statistical models, each statistical model uses binary context tree of depth D (see Fig. 3). The binary context tree is a collection of nodes, each node keeps the information about the statistics of and 1 symbols that appeared in a given context in video data stream. It is difficult to predict which context will be the best for encoding the current symbol. Therefore, the CTW method appropriately weights the statistics collected in individual nodes of context tree to produce the weighted conditional probability for symbol. depth D 2 1 3 Contexts tree Contexts tree 3 Contexts tree 1 Contexts tree 46 λ λ λ λ 1 1 1 1 1 1 1 1 1 1 1 1 Statistical model Statistical model 3 Statistical model 1 Statistical model 46 Fig. 3. Statistical models in improved CABAC. In the proposed mechanism of data statistics gathering the depth D of context trees strongly influences the precision of estimated conditional probabilities. In the previous research works [1, 11, 14] authors tested the influence of this parameter on compression performance of entropy encoder. The improved CABAC was tested for depths D equal to 2, 4, 8, and 12. Obtained results proved, that the greater depth D of context trees the more accurate estimation of probabilities and better entropy encoder efficiency. The final conclusion of the research was that depth D=8 is a good compromise between the efficiency and complexity of entropy codec. In the newest version of improved CABAC depth D=8 is used for context trees. In comparison to the previous versions of improved CABAC codec, the current version was developed to work with both the 4x4 and the 8x8 transform mode. 5 Methodology of experiments The proposed improved mechanism of data statistics estimation was implemented and embedded into the structure of CABAC entropy codec. The modified CABAC algorithm was successfully activated in the reference software JM 1.2 [2] of MPEG- 4 AVC video codec. It must be emphasized that both video encoder and video decoder were prepared to obtain reliable experimental results. This phase of works was very difficult and time-consuming for the reason of JM 1.2 reference software implementation complexity (about 9 thousands lines of program code in C). The compression performance of the modified MPEG-4 AVC encoder was tested and confronted with coding efficiency of the original MPEG-4 AVC video encoder. This paper focuses on efficiency of the improved MPEG-4 AVC working in High Profile,

rate reduction [%] which distinguishes the paper from previous works [1, 11, 12, 13]. Experiments were done according to the following scenario: Full HD test video sequences were used: Pedestrian Area, River Bed, Rush Hour and Station (spatial resolution: 192x18, temporal resolution: 25 Hz); Test video sequences were encoded with JM 1.2 encoder forcing different values of rate at the output of video encoder. Different rates were obtained by setting different values of quantization parameter QP in video encoder (from QP=2 to QP=44 with step 6) that is responsible for the quality of decoded video sequence. Experiments were done for I-, P- and B-frames by setting the GOP structure on IBBPBBP ; The improved CABAC codec was tested for 8x8 transform mode used in High Profile of MPEG-4 AVC standard; Encoding tools were used in both the modified and the original MPEG-4 AVC encoder that guarantee identical quality of reconstructed sequences regardless of entropy encoder applied. Correctness of encoded streams was checked in each experiment. 6 Experimental results Obtained results revealed that the modified High Profile MPEG-4 AVC encoder with improved CABAC is characterized by higher compression performance relative to the original MPEG-4 AVC. In the first step of research, experiments were done for individual frame types (I, P and B). Detailed experimental results for this scenario were presented in Fig. 4. Results were averaged over 4 test video sequences. 8 7.5 7 6.5 6 5.5 5 4.5 4 3.5 3 2.5 2 I-slices P-slices B-slices 2 26 32 38 44 quantization parameter (QP) Fig. 4. Average rate reduction due to application of improved MPEG-4 AVC encoder instead of the original MPEG-4 AVC (for I-, P-, and B-frames, 8x8 transform mode).

rate reduction [%] The improved CABAC outperforms the original CABAC for all types of frames (I, P and B). Nevertheless, different values of rate reduction were observed for I-, P-, and B-frames. Additionally, different results were obtained for individual QP values that determine the size of stream at the output of video encoder. Greater rate reduction was observed for smaller rates (bigger values of QP parameter). Best results were noticed for B-frames (2.5%-7.5% reduction of rate), the worst results were observed for P-frames (only 2.5%-3% rate reduction). In the case of I-frames 2.5%-4% rate reduction was observed. In the second step of research, the efficiency of improved CABAC was tested for whole test sequences. Detailed experimental results were depicted in Fig. 5. 8 7.5 7 6.5 6 5.5 5 4.5 4 3.5 3 2.5 2 1.5 1 pedestrian area riverbed rush hour station 2 4 6 8 1 12 14 16 18 2 rate [Mb/s] Fig. 5. Average rate reduction due to application of improved MPEG-4 AVC encoder instead of the original MPEG-4 AVC (for individual test video sequences, 8x8 transform mode). After the application of improved CABAC within MPEG-4 AVC rate reduction of 1.5%-8% was noticed in comparison to standard MPEG-4 AVC encoder. Different results were obtained for individual test video sequences. Best results were obtained for Pedestrian Area (2.5%-8%), the smaller rate reduction was observed for Station sequence (1.5%-2.5%). In the case of each video sequence, better results were achieved for bigger values of QP parameter (which corresponds to smaller rates). Experimental results revealed that gap in compression performance between improved and original CABAC strongly depends on: value of rate, content of sequence and frame type. The three mentioned above parameters affects statistical properties of residual signal that is finally encoded with entropy encoder. The improved CABAC algorithm is able to track changing statistics of coded data. In the original CABAC codec, context modeler takes advantage of predefined probability distribution of data which reduces the ability of entropy codec to track data statistics efficiently. When the real statistics of data differs from the assumed one, coding efficiency of standard CABAC decreases. It results in greater rate reduction when using the improved CABAC.

Higher coding efficiency of improved CABAC was obtained at the cost of computational complexity increase. The application of improved CABAC in the MPEG-4 AVC reference decoder increased total decoding time up to 25% (for the useful in high definition television range of rates below 8 Mb/s). The authors are fully aware that this result may be different for another implementation of MPEG-4 AVC. 7 Conclusions The improved adaptive arithmetic codec CABAC was presented in application to high performance video coding. The improved CABAC exploits authors more accurate mechanism of the conditional probabilities estimation. Experiments revealed superior coding efficiency of improved CABAC relative to the state-of-the-art CABAC algorithm. When comparing to the original CABAC encoder, improved CABAC allows for 1.5%-8% rate reduction when applied in MPEG-4 AVC High Profile. The improved CABAC codec is more complex than the original CABAC. In comparison to original MPEG-4 AVC, improved MPEG-4 AVC video decoder is up to 25% more computationally complex for high definition sequences. Acknowledgment The work was supported by the public founds as a research project. References 1. ISO/IEC 14496-1, Generic Coding of Audio-Visual Objects, Part 1: Advanced Video Coding, March 26 2. H.264/AVC software coordination site http://bs.hhi.de/~suehring/tml 3. D. Marpe, H. Schwarz, and T. Wiegand, Context-Based Adaptive Binary Arithmetic Coding in the H.264/AVC Video Compression Standard, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 13, No. 7, pp. 62-636, July 23 4. D. Marpe, G. Marten, and H. L. Cycon, A Fast Renormalization Technique for H.264/MPEG4-AVC Arithmetic Coding, 51st Internationales Wissenschaftliches Kolloquium Technische Universitat Ilmenau, September 26 5. Special issue on H.264/AVC video coding standard, IEEE Transactions on Circuit and Systems for Video Technology, Vol. 13, July 23 6. I. E. G. Richardson, H.264 and MPEG-4 Video Compression. Video Coding for Nextgeneration Multimedia, Wiley 23 7. F. M. J. Willems, Y. M. Shtarkov, and Tj. J. Tjalkens, The Context-Tree Weighting Method: Basic Properties, IEEE Transactions on Information Theory, Vol. 41, No. 3, pp. 653-664, May 1995 8. F. M. J. Willems, The Context-Tree Weighting Method: Extensions, IEEE Transactions on Information Theory, Vol. 44, No. 2, pp. 792-797, March 1998

9. F. M. J. Willems, and Tj. J. Tjalkens, Complexity Reduction of the Context-Tree Weighting Algorithm: A study for KPN research, Technical Report EIDMA-RS.97.1, Euler Institute for Discrete Mathematics and its Applications, Eindhoven University of Technology, 1997 1.***, "Improved Arithmetic Coding in H.264/AVC Using Context-Tree Weighting and Prediction by Partial Matching". European Signal Processing Conf. EUSIPCO 27, pp. 127-1274, September 27, Poznań, Poland 11.***, "Improved Ari-thmetic Coding In H.264/AVC Using Context-Tree Weighting Method". Picture Coding Symposium PCS 27, November 27, Lisboa, Portugal. 12. ***, Improved Context-Adaptive Arithmetic Coding in H.264/AVC, European Signal Processing Conference EUSIPCO 29, August 29, Glasgow, Scotland 13.***, Ulepszone Adaptacyjne Kodowanie Arytmetyczne w Standardzie H.264/AVC, Krajowa Konferencja Radiokomunikacji, Radiofonii i Telewizji KKRRiT 29, Czerwiec 29, Warszawa 14. ***, Advanced Adaptation Algorithms of Arithmetic Coding in Hybrid Video Compression, Doctoral Dissertation, Poznań University of Technology, 28 15. D. Salomon, Data Compression. The Complete Reference 4th Edition, Springer-Verlag, 26