Context-adaptive coded block pattern coding for H.264/AVC

Similar documents
h 8x8 chroma a b c d Boundary filtering: 16x16 luma H.264 / MPEG-4 Part 10 : Intra Prediction H.264 / MPEG-4 Part 10 White Paper Reconstruction Filter

Motion Vector Prediction With Reference Frame Consideration

1 Overview. Coding flow

Enhanced SATD-based cost function for mode selection of H.264/AVC intra coding

AN IMPROVED CONTEXT ADAPTIVE BINARY ARITHMETIC CODER FOR THE H.264/AVC STANDARD

Bit Rate Estimation for Cost Function of H.264/AVC

THE newest video coding standard is known as H.264/AVC

AN ENHANCED EARLY DETECTION METHOD FOR ALL ZERO BLOCK IN H.264

INTERNATIONAL ORGANISATION FOR STANDARDISATION ORGANISATION INTERNATIONALE DE NORMALISATION ISO/IEC JTC1/SC29/WG11 CODING OF MOVING PICTURES AND AUDIO

Direction-Adaptive Transforms for Coding Prediction Residuals

The MPEG4/AVC standard: description and basic tasks splitting

Single Frame Rate-Quantization Model for MPEG-4 AVC/H.264 Video Encoders

4x4 Transform and Quantization in H.264/AVC

Intra Frame Coding for Advanced Video Coding Standard to reduce Bitrate and obtain consistent PSNR Using Gaussian Pulse

H.264/MPEG4 Part INTRODUCTION Terminology

CHAPTER 3. Implementation of Transformation, Quantization, Inverse Transformation, Inverse Quantization and CAVLC for H.

Modelling of produced bit rate through the percentage of null quantized transform coefficients ( zeros )

IMPROVED INTRA ANGULAR PREDICTION BY DCT-BASED INTERPOLATION FILTER. Shohei Matsuo, Seishi Takamura, and Hirohisa Jozawa

LOSSLESS INTRA CODING IN HEVC WITH INTEGER-TO-INTEGER DST. Fatih Kamisli. Middle East Technical University Ankara, Turkey

Detailed Review of H.264/AVC

High Throughput Entropy Coding in the HEVC Standard

6. H.261 Video Coding Standard

Achieving H.264-like compression efficiency with distributed video coding

MODERN video coding standards, such as H.263, H.264,

CSE 408 Multimedia Information System Yezhou Yang

A Video Codec Incorporating Block-Based Multi-Hypothesis Motion-Compensated Prediction

Intra Prediction by a linear combination of Template Matching predictors

Fast Intra Coding Method of H.264 for Video Surveillance System

Intraframe Prediction with Intraframe Update Step for Motion-Compensated Lifted Wavelet Video Coding

(12) Patent Application Publication (10) Pub. No.: US 2009/ A1

Transform-Domain Rate-Distortion Optimization Accelerator for H.264/AVC Video Encoding

Human Visual System Based Adaptive Inter Quantization

Introduction to Video Compression H.261

Introduction p. 1 Compression Techniques p. 3 Lossless Compression p. 4 Lossy Compression p. 5 Measures of Performance p. 5 Modeling and Coding p.

Scalable resource allocation for H.264 video encoder: Frame-level controller

Enhanced Stochastic Bit Reshuffling for Fine Granular Scalable Video Coding

Rate-Constrained Multihypothesis Prediction for Motion-Compensated Video Compression

Prediction-Guided Quantization for Video Tone Mapping

A VC-1 TO H.264/AVC INTRA TRANSCODING USING ENCODING INFORMATION TO REDUCE RE-QUANTIZATION NOISE

Analysis of Rate-distortion Functions and Congestion Control in Scalable Internet Video Streaming


MULTIVIEW video can provide real depth perception,

H.264 / MPEG-4 Part 10 : Intra Prediction

1462 IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, VOL. 19, NO. 10, OCTOBER 2009

Product Obsolete/Under Obsolescence. Quantization. Author: Latha Pillai

A Novel Multi-Symbol Curve Fit based CABAC Framework for Hybrid Video Codec s with Improved Coding Efficiency and Throughput

Converting DCT Coefficients to H.264/AVC

SSIM-Inspired Perceptual Video Coding for HEVC

Statistical Analysis and Distortion Modeling of MPEG-4 FGS

Evaluation of H.265 and H.264 for Panoramas Video under Different Map Projections

A Framework for Adaptive Scalable Video Coding Using Wyner-Ziv Techniques

arxiv: v1 [cs.mm] 10 Mar 2016

Computer Engineering Mekelweg 4, 2628 CD Delft The Netherlands MSc THESIS

MPEG-4 AVC/H.264 Motion Vector Prediction Rev. 4

Neural network based intra prediction for video coding

Fast Bi-Directional Prediction Selection in H.264/MPEG-4 AVC Temporal Scalable Video Coding

The training of Karhunen Loève transform matrix and its application for H.264 intra coding

A DISTRIBUTED VIDEO CODER BASED ON THE H.264/AVC STANDARD

AFUNDAMENTAL and challenging problem in video

Lecture 2: Introduction to Audio, Video & Image Coding Techniques (I) -- Fundaments

Efficient Large Size Transforms for High-Performance Video Coding

Video Coding With Linear Compensation (VCLC)

OPTIMAL INTRA CODING OF HEVC BY STRUCTURED SET PREDICTION MODE WITH DISCRIMINATIVE LEARNING. Wenrui Dai, Hongkai Xiong

Lecture 2: Introduction to Audio, Video & Image Coding Techniques (I) -- Fundaments. Tutorial 1. Acknowledgement and References for lectures 1 to 5

Estimation-Theoretic Delayed Decoding of Predictively Encoded Video Sequences

HM9: High Efficiency Video Coding (HEVC) Test Model 9 Encoder Description Il-Koo Kim, Ken McCann, Kazuo Sugimoto, Benjamin Bross, Woo-Jin Han

CSE 126 Multimedia Systems Midterm Exam (Form A)

Resource allocation for H.264 video encoder: Sequence-level controller

(12) United States Patent (10) Patent No.: US 8,542,748 B2. Zhao et al. (45) Date of Patent: Sep. 24, 2013

Throughput Improvement on CABAC for Depth Videos with Modified Level Coding

New Trends in High Definition Video Compression - Application to Multiple Description Coding

A TWO-STAGE VIDEO CODING FRAMEWORK WITH BOTH SELF-ADAPTIVE REDUNDANT DICTIONARY AND ADAPTIVELY ORTHONORMALIZED DCT BASIS

MATCHING-PURSUIT DICTIONARY PRUNING FOR MPEG-4 VIDEO OBJECT CODING

Application of a Bi-Geometric Transparent Composite Model to HEVC: Residual Data Modelling and Rate Control

Run-length & Entropy Coding. Redundancy Removal. Sampling. Quantization. Perform inverse operations at the receiver EEE

Compression and Coding

An Investigation of 3D Dual-Tree Wavelet Transform for Video Coding

Thor update. High Efficiency, Moderate Complexity Video Codec using only RF IPR

arxiv: v1 [cs.mm] 16 Feb 2016

Redundancy Allocation Based on Weighted Mismatch-Rate Slope for Multiple Description Video Coding

A Study of Embedding Operations and Locations for Steganography in H.264 Video

Adaptive Quantization Matrices for HD and UHD Display Resolutions in Scalable HEVC

Improved Adaptive Transform for Residue in H.264/AVC Lossless Video Coding

Fast Progressive Wavelet Coding

Light Field Image Compression with Sub-apertures Reordering and Adaptive Reconstruction

Multimedia Networking ECE 599

DELIVERING video of good quality over the Internet or

Rate-distortion Analysis and Control in DCT-based Scalable Video Coding. Xie Jun

Progressive Wavelet Coding of Images

Multimedia Communications Fall 07 Midterm Exam (Close Book)

Order Adaptive Golomb Rice Coding for High Variability Sources

Title. Author(s)Lee, Kenneth K. C.; Chan, Y. K. Issue Date Doc URL. Type. Note. File Information

Modeling of DCT Coefficients in the H.264 Video Encoder-Edición Única

Part 2: Video Coding Techniques

L. Yaroslavsky. Fundamentals of Digital Image Processing. Course

An Efficient Hardware Architecture of Intra Prediction and TQ/IQIT Module for H.264 Encoder

Image Compression - JPEG

HARMONIC VECTOR QUANTIZATION

Half-Pel Accurate Motion-Compensated Orthogonal Video Transforms

VIDEO CODING USING A SELF-ADAPTIVE REDUNDANT DICTIONARY CONSISTING OF SPATIAL AND TEMPORAL PREDICTION CANDIDATES. Author 1 and Author 2

Transcription:

Context-adaptive coded block pattern coding for H.264/AVC Yangsoo Kim a), Sungjei Kim, Jinwoo Jeong, and Yoonsik Choe b) Department of Electrical and Electronic Engineering, Yonsei University 134, Sinchon-dong, Seodaemun-gu, Seoul, 120 749, Korea a) yskim72@yonsei.ac.kr b) yschoe@yonsei.ac.kr Abstract: For coding of quantized transform coefficients, a coded block pattern (CBP) is a key syntax element to represent the existence of coefficients in a macroblock efficiently. In H.264/AVC, the CBP is coded by using a fixed variable length coding table, called Exp-Golomb codes. However, since the CBP is highly affected by the change of quantization parameter (QP), in this paper, we show the CBP distributions according to the change of QP and propose an context-adaptive CBP coding method. The proposed scheme selects the coding table adaptively based on the context of neighbors CBP. Experimental results show that the proposed scheme reduces average 1.15% in total bit rate and 12.54% in CBP bit rate compared to the anchor, H.264/AVC. Keywords: H.264/AVC, CBP, entropy coding Classification: Electron devices, circuits, and systems References [1] ITU-T and ISO/IEC, Advanced video coding for generic audiovisual services, ITU-T Recommendation H.264 and ISO/IEC 14496-10 AVC, July 2003. [2] ISO/IEC JTC1, Information technology - Generic coding of moving pictures and associated audio information: Video, ISO/IEC 13818-2:1996 (MPEG-2 Video), March 1996. [3] ITU-T, Video coding for low bitrate communications, ITU-T Recommendation H.263, Sept. 1996. [4] ISO/IEC JTC1, Information technology - Coding of audio-visual objects - Part 2: Visual, ISO/IEC 14496-2:1999 (MPEG-4 Video), Dec. 1999. [5] G. Bjontegaard and K. Lillevold, Context-adaptive VLC (CAVLC) coding of coefficient, Joint Video Team Doc. JVT-C028, Fairfax, May 2002. [6] Y. Vatis, KTA software coordination, [Online] http://www.tnt.uni-hannover.de/ vatis/kta/ [7] T. Tan, G. Sullivan, and T. Wedi, Recommended Simulation Common Conditions for Coding Efficiency Experiments Revision 3, ITU-T SG16/Q6 Doc. VCEG-AI10, Berlin, July 2008. [8] G. Bjontegaard, Calculation of Average PSNR Differences Between RD- Curves, ITU-T SG16/Q6 Doc. VCEG-M33, Texas, April 2001. 1777

1 Introduction In the latest video coding standard, H.264/AVC, syntax elements are efficiently coded with two variable length coding techniques: one is the contextadaptive variable length coding (CAVLC) and the other is the exponential golomb coding (Exp-Golomb) [1]. Due to these efficient entropy coding techniques, H.264/AVC provides better compression performance compared to previous standards such as MPEG-2/4 and H.263 [2, 3, 4]. For syntax elements of quantized transform coefficients, CAVLC compresses them efficiently by introducing the context-adaptive coding concept to support the change of quantization parameter (QP) [5], but for the rest of syntax elements, Exp-Golomb code provides a fixed coding table without considering the variation of QP. However, the syntax elements are affected by the change of QP because QP controls the number of non-zero coefficients in a block. Especially, a coded block pattern (CBP) highly depends on the change of QP because it represents whether transform coefficients exist in a 8 8 block or not. Therefore, in this paper, we show the necessity of the adaptive coding technique for CBP coding experimentally, then propose the context-adaptive CBP coding scheme to support the variation of QP efficiently. Compared to the conventional CBP coding method, H.264/AVC, experimental results show that the proposed method reduces total bit rate by up to 1.63% and CBP bit rate 22.47% in BDRATE. The rest of this paper is organized as follows. Section 2 reviews the definition of CBP briefly, then shows the change of CBP distribution according to QP. The proposed CBP coding method is presented in Section 3. Simulation results are reported in Section 4, and Section 5 concludes this paper. 2 Distributions of CBP and QP The CBP is a syntax element specified in the macroblock layer and indicates which of the four 8x8 luma blocks and associated chroma blocks in a macroblock may contain non-zero transform coefficients. A CBP consists of six bits b 5 b 4 b 3 b 2 b 1 b 0, where b 3 b 2 b 1 b 0 specifies four luma blocks (CBPLuma) and b 5 b 4 specifies associated chroma blocks (CBPChroma). In the CBPChroma case, two bits b 5 b 4 are not just allocated for each chroma block but classified into three groups as following: CBPChroma=00(0), if all chroma coefficients are equal to 0. CBPChroma=01(1), if one or more chroma DC coefficients shall be non-zero and all chroma AC coefficients are equal to 0. CBPChroma=10(2), if zero or more chroma DC coefficients are nonzero and one or more AC coefficients shall be non-zero. For this reason, the total number of CBP type is 16 3 = 48, the number of combinations of 4 luma blocks and 3 chroma patterns. 1778

Fig. 1. The CBP distributions according to the change of QP Now, we investigate the effects of QPs on the CBP distributions. Figure 1 shows the CBP distributions according to the variations of QPs for intra and inter cases. In Fig. 1 (a) for intra case, the occurrence probabilities of QP22 at 15 th,31 st,and47 th positions are higher than other positions. At these positions, all of the CBPLuma s bit values (b 3 b 2 b 1 b 0 ) have 1s, which means that at least one transform coefficient exists in all 8 8 blocks. However, the probabilities of QP37 at 15 th,31 st,and47 th are relatively reduced compared to the QP22 case, but those at the positions 12 th,17 th,21 st,and23 rd are slightly increased. At those positions, the transform coefficients of luma components are partially existed (CBPLuma 0). These results are sufficiently expected, because the QP controls the number of transform coefficients in a block. For the inter case, the CBP distributions slightly differ from the intra case. From Fig. 1 (b), the probability of CBP for inter blocks is rather skewed into at the position of zero code number. This is caused by the amount of transform coefficients to transmit. Due to the effectiveness of temporal redundancy reduction tools, for the inter case, the portion of the block containing 1779

non-zero transform coefficients is lower than the intra case. In Fig. 1 (b), the occurrence probabilities of QP22 at 0 th,15 th,31 st,47 th are relatively higher than other positions. On the other hand, the occurrence probabilities of QP37 at 0 th,15 th,31 st,47 th are decreased and the probability at 0 th is extremely increased. From the preliminary experiments, we conclude that the even CBP should be adaptively coded with considering the variation of QPs. Based on this observation, we propose the context-adaptive CBP coding scheme in the next section. 3 Proposed CBP coding method In section 2, we discussed that the CBP distributions for intra and inter mode are changed according to the variation of QPs. Since the CBP is affected by QPs, if we assume that all QPs in a slice have equal values, the CBP of the current block is highly correlated with the CBPs of neighbor blocks. In order to reflect the changes of QPs efficiently, we set two coding parameters, avgcbpluma and avgcbpchroma. The avgcbpluma is defined by averaging the count of 8 8 luma transform coefficients existence in the neighbor macroblock A and B, and the avgcbpchroma is defined by averaging the CBPChroma values of the neighbor macroblock A and B. Let us explain the calculation of avgcbpluma and avgcbpchroma with anexampleinfig. 2. Ifneighbor macroblocka has 2 non-zero transform coefficient blocks and B has 4 non-zero blocks as in Fig. 2 (a), then avgcbpluma is calculated as 3. For the CBPChroma case as in Fig. 2 (b), if the neighbor macroblock A has the CBPChroma value 2 (one of two DC components has 1 value and two AC components have 0 values) and B has CBPChroma = 0 (All DC and AC components are 0s), then the avgcbpchroma is calculated as 1. Based on these two parameters, we set four contexts as follows. Context=0, if avgcbpluma 2 and avgcbpchroma 1. Context=1, if avgcbpluma 2 and avgcbpchroma < 1. Fig. 2. An example of the calculation for avgcbpluma and avgcbpchroma 1780

Context=2, if avgcbpluma < 2 and avgcbpchroma 1. Context=3, if avgcbpluma < 2 and avgcbpchroma < 1. For the context 0 and 1 cases, we set both avgcbpluma to have a high value in order to reflect the high and middle rates conditions efficiently and set the avgcbpchroma to have low and high, respectively. On the other hand, for the context 2 and 3 cases, we set the avgcbpluma as a low value to cover the middle and low rates conditions. 4 Simulation results To evaluate the coding performance of the proposed scheme, we implemented the proposed scheme in JM11.0KTA2.7 software, which is most recently updated [6]. In the simulations, the baseline profile and IPPP structure are used under VCEG common test conditions [7] except 1 reference frame. The coding performances of the previous work and the proposed scheme are evaluated in terms of BDRATE [8]. All comparison is made against the KTA 2.7 software as an anchor. Note that the tables for four contexts were estimated in advance (offline-trained) and generated by Huffman codes for training sequences which are not included in test sequences. Table I shows the experimental results between the H.264/AVC and the proposed method for CBP syntax elements. The overall average coding gain is approximately 1.15% reduced in BDRATE (noted BDRATE tot in Table I) and the average CBP coding gain is 12.54% in BDRATE (noted BDRATE cbp ) compared to the KTA 2.7 software as an anchor. In Table I, the average gain of the proposed method for each resolution increases according to the size of resolution. The average gain of HD (1280 720) sequences is 1.51% compared to H.264/AVC and that of QCIF (176 144) sequences is 0.91% in BDRATE. This relatively increased gain of higher resolution sequences results from the increase of the number of macroblock in higher resolution. In the sense of BDRATE cbp, especially, for City sequence containing complex textures and panning camera motion, the proposed method provides a higher Table I. Experimental results for VCEG test sequences QP: 22, 27, 32, 37, ref num=1 Proposed vs. Anchor SIZE FrameSkip Sequence BDRATE tot [%] BDRATE cbp [%] DCPX[%] 1 Container 0.786 3.736 0.716 QCIF 1 Foreman 1.069 15.810 0.796 1 Silent Voice 0.868 6.521 0.911 1 Paris 0.971 3.165 0.807 0 Foreman 1.306 14.634 0.747 CIF 0 Mobile 0.844 9.726 0.836 0 Tempete 1.014 12.312 0.916 0 ShuttleStart 1.591 16.514 1.086 0 Night 1.420 12.463 1.096 720P 0 Crew 1.566 17.500 1.119 0 Bigships 1.354 15.583 1.236 0 City 1.634 22.472 1.344 Average of QCIF 0.908 8.689 0.808 Average of CIF 1.034 9.959 0.827 Average of 720P 1.513 16.906 1.176 Average of Overall 1.152 12.536 0.968 1781

compression gain, but for Container, Silent Voice, and Paris sequences (CSP sequences) having homogeneous textures and the static camera motion, the proposed method shows a relatively smaller gain. The result is affected by the change of syntax elements in a bitstream. Due to the large portion of homogeneous region in CSP sequences, the portion of skip mode and/or zero coefficient blocks in those sequences are larger than in City sequence, and thus BDRATE cbp is rather smeared but highly effective to the overall gain. The complexity of the proposed method compared to the anchor is approximately 0.97% increased in terms of DCPX (Delta ComPleXity percentage) as Eq. (1). This increment value is sufficiently acceptable when we consider the absolute computational complexity of video coding. DCPX(%) = proposed complexity anchor complexity anchor complexity 100(%) (1) 5 Conclusions This paper presents a context-adaptive coded block pattern coding scheme for H.264/AVC. In contrast to the conventional method which supports a fixed coding table, the proposed scheme provides four adaptive coding tables to adapt the variation of neighbors CBPs and QPs. Therefore, the proposed method can be additionally implemented on the structure of the conventional method without major modifications. Experimental results also show that the proposed scheme reduces the overall coding performance by up to 1.63% and the CBP coding performance by up to 22.47% in BDRATE without the high increase of the computational complexity compared to the anchor, H.264/AVC. Acknowledgments This research was supported by the MKE (The Ministry of Knowledge Economy), Korea, under the ITRC (Information Technology Research Center) support program supervised by the NIPA (National IT Industry Promotion Agency) (NIPA-2011-C1090-1101-0006). 1782