"Block Artifacts Reduction Using Two HEVC Encoder Methods" Dr.K.R.RAO

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

STUDY AND PERFORMANCE COMPARISON OF HEVC AND H.264 VIDEO CODECS

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

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

STUDY AND PERFORMANCE COMPARISON OF HEVC AND H.264 VIDEO ENCODERS

High Efficiency Video Coding. Li Li 2016/10/18

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

HEVC The Next Generation Video Coding. 1 ELEG5502 Video Coding Technology

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

COMPARISON OF HIGH EFFICIENCY VIDEO CODING (HEVC) PERFORMANCE WITH H.264 ADVANCED VIDEO CODING (AVC)

Testing HEVC model HM on objective and subjective way

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

ENCODER COMPLEXITY REDUCTION WITH SELECTIVE MOTION MERGE IN HEVC ABHISHEK HASSAN THUNGARAJ. Presented to the Faculty of the Graduate School of

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

EE Low Complexity H.264 encoder for mobile applications

Fast Intra Mode Decision in High Efficiency Video Coding

Intra Prediction Efficiency and Performance Comparison of HEVC and VP9

Implementation and analysis of Directional DCT in H.264

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

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

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

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

Lec 10 Video Coding Standard and System - HEVC

Comparative study of coding efficiency in HEVC and VP9. Dr.K.R.Rao

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

EE 5359 MULTIMEDIA PROCESSING SPRING Final Report IMPLEMENTATION AND ANALYSIS OF DIRECTIONAL DISCRETE COSINE TRANSFORM IN H.

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

Professor, CSE Department, Nirma University, Ahmedabad, India

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

CONTENT ADAPTIVE COMPLEXITY REDUCTION SCHEME FOR QUALITY/FIDELITY SCALABLE HEVC

EE5359:MULTIMEDIA PROCESSING

High Efficiency Video Coding: The Next Gen Codec. Matthew Goldman Senior Vice President TV Compression Technology Ericsson

Mark Kogan CTO Video Delivery Technologies Bluebird TV

Analysis of Motion Estimation Algorithm in HEVC

EE5359:MULTIMEDIA PROCESSING

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

Lecture 13 Video Coding H.264 / MPEG4 AVC

Intra Prediction Efficiency and Performance Comparison of HEVC and VP9

OVERVIEW OF IEEE 1857 VIDEO CODING STANDARD

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

VIDEO COMPRESSION STANDARDS

Homogeneous Transcoding of HEVC for bit rate reduction

Digital Video Processing

VHDL Implementation of H.264 Video Coding Standard

Week 14. Video Compression. Ref: Fundamentals of Multimedia

Video compression with 1-D directional transforms in H.264/AVC

The Scope of Picture and Video Coding Standardization

Fast Intra Coding Based on Reference Samples Similarity in HEVC

Analysis of Information Hiding Techniques in HEVC.

Advanced Encoding Features of the Sencore TXS Transcoder

Laboratoire d'informatique, de Robotique et de Microélectronique de Montpellier Montpellier Cedex 5 France

Image/video compression: howto? Aline ROUMY INRIA Rennes

10.2 Video Compression with Motion Compensation 10.4 H H.263

A COST-EFFICIENT RESIDUAL PREDICTION VLSI ARCHITECTURE FOR H.264/AVC SCALABLE EXTENSION

Scalable Extension of HEVC 한종기

VIDEO AND IMAGE PROCESSING USING DSP AND PFGA. Chapter 3: Video Processing

Chapter 11.3 MPEG-2. MPEG-2: For higher quality video at a bit-rate of more than 4 Mbps Defined seven profiles aimed at different applications:

THE H.264 ADVANCED VIDEO COMPRESSION STANDARD

High Efficiency Video Decoding on Multicore Processor

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

High Efficiency Video Coding (HEVC)

A VIDEO TRANSCODING USING SPATIAL RESOLUTION FILTER INTRA FRAME METHOD IN MULTIMEDIA NETWORKS

Intel Stress Bitstreams and Encoder (Intel SBE) HEVC Getting Started

Video Coding Using Spatially Varying Transform

MPEG-4: Simple Profile (SP)

N RISCE 2K18 ISSN International Journal of Advance Research and Innovation

Department of Electrical Engineering

Performance Comparison between DWT-based and DCT-based Encoders

EFFICIENT PU MODE DECISION AND MOTION ESTIMATION FOR H.264/AVC TO HEVC TRANSCODER

Selected coding methods in H.265/HEVC

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

Optimizing the Deblocking Algorithm for. H.264 Decoder Implementation

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

JPEG 2000 vs. JPEG in MPEG Encoding

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

Sample Adaptive Offset Optimization in HEVC

COMPLEXITY REDUCTION IN HEVC INTRA CODING AND COMPARISON WITH H.264/AVC VINOOTHNA GAJULA. Presented to the Faculty of the Graduate School of

Fast Implementation of VC-1 with Modified Motion Estimation and Adaptive Block Transform

An Efficient Mode Selection Algorithm for H.264

Video coding. Concepts and notations.

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

Review and Implementation of DWT based Scalable Video Coding with Scalable Motion Coding.

Reduced Frame Quantization in Video Coding

Xin-Fu Wang et al.: Performance Comparison of AVS and H.264/AVC 311 prediction mode and four directional prediction modes are shown in Fig.1. Intra ch

EE 5359 H.264 to VC 1 Transcoding

LIST OF TABLES. Table 5.1 Specification of mapping of idx to cij for zig-zag scan 46. Table 5.2 Macroblock types 46

EFFICIENT INTRA PREDICTION SCHEME FOR LIGHT FIELD IMAGE COMPRESSION

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

COMPARATIVE ANALYSIS OF DIRAC PRO-VC-2, H.264 AVC AND AVS CHINA-P7

An Efficient Table Prediction Scheme for CAVLC

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

A Dedicated Hardware Solution for the HEVC Interpolation Unit

A NOVEL APPROACH TO IMPROVE QUALITY OF 4G WIRELESS NETWORK FOR H.265/HEVC STANDARD WITH LOW DATA RATE

PERFORMANCE ANALYSIS OF AVS-M AND ITS APPLICATION IN MOBILE ENVIRONMENT

CMPT 365 Multimedia Systems. Media Compression - Video

Smoooth Streaming over wireless Networks Sreya Chakraborty Final Report EE-5359 under the guidance of Dr. K.R.Rao

Performance analysis of AAC audio codec and comparison of Dirac Video Codec with AVS-china. Under guidance of Dr.K.R.Rao Submitted By, ASHWINI S URS

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

AUDIOVISUAL COMMUNICATION

Interframe coding A video scene captured as a sequence of frames can be efficiently coded by estimating and compensating for motion between frames pri

Transcription:

"Block Artifacts Reduction Using Two HEVC Encoder Methods" Under the guidance of Dr.K.R.RAO EE 5359 - Multimedia Processing Interim report Submission date: 21st April 2015 Submitted By: Bhargav Vellalam Srikanteswar Email ID : bhargav.vellalamsrikanteswa@mavs.uta.edu UTA ID: 1001048654

TABLE OF CONTENTS : 1. Abstract...5 2. Introduction...5 2.1 HEVC Encoder...8 2.2 HEVC Decoder...9 3. Features of HEVC...10 3.1 Coding Tree Unit...10 3.2 TU's and Transform Blocks...10 3.3 Motion Vector Signaling...10 3.4 Motion Compensation...11 3.5 Intra Prediction...12 3.6 Entropy Coding...13 3.7 In-loop Deblocking Filter...14 3.8 Sample Adaptive Offset...14 4. Block Artifacts Analysis...14 5. Comparison metrics...17 5.1 Peak Signal to Noise Ratio(PSNR)...17 5.2 BD-PSNR and BD-Bitrate...18 6. Proposed Implementation... 19 6.1 Deblocking strength adaptation order...19 6.2 Reducing Intra block size...20 6.3 Deblocking parameters used in the project...21 7. Profile used for implementation...22 7.1 Main profile in HEVC...22 7.2 Testing Platform...22 7.3 Testing configuration...22 EE5359 MULTIMEDIA PROCESSING Page 2

7.4 Configuration of HM 16.4...23 8. Test sequences...24 9. Results...26 10. References...33 EE5359 MULTIMEDIA PROCESSING Page 3

ACRONYMS 3D - Three Dimension AVC - Advanced Video Coding AMVP - Advanced motion vector prediction BD-BR - Bjontegaard Delta Bit Rate BD-PSNR - Bjontegaard Delta Peak Signal to Noise Ratio CB - Coding Block CTU - Coding Tree Unit CU - Coding Unit CABAC - Context Adaptive Binary Arithmetic Coding DCT- Discrete Cosine Transform FPS - Frames Per Second GOP - Group Of Pictures HD - High Definition HEVC - High Efficiency Video Coding ISO - International Organization for Standardization MPEG - Moving Picture Experts Group MSE - Mean Square Error MV - Motion Vector PB - Prediction Block POC - Picture Order Count PU - Prediction Unit EE5359 MULTIMEDIA PROCESSING Page 4

QP - Quantization Parameter RD - Rate Distortion SAO - Sample Adaptive Offset SSIM - Structural Similarity Index TB - Transform Block TU- Transform Unit VCEG - Visual Coding Experts Group EE5359 MULTIMEDIA PROCESSING Page 5

1.ABSTRACT The HEVC de-blocking filter significantly improves the subjective quality of coded video sequences at lower bitrates. During the final phase of HEVC standardization, it was shown that the reference software encoder may produce visible block artifacts on some sequences with content that shows chaotic motion, such as water or fire [6]. The proposed project analyzes the reasons for blocking artifacts in various such sequences and describes two simple encoder-side methods that improve the subjective quality on these sequences without degrading the quality on other content and without significant bit rate increase. 2.INTRODUCTION High-Efficiency Video Coding (HEVC) [1][2] is the latest video coding standard of the ITU-T Visual Coding Experts Group (VCEG) and the ISO/IEC Moving Picture Experts Group (MPEG) [1] The first edition of the HEVC standard has been finalized in January 2013, resulting in an aligned text that has been published by both ITU-T and ISO/IEC. Further scalabe video coding and multivew extension were developed in 2014 as HEVC allows for combined scalable and multiview coding [30]. HEVC screen content coding is expected for completion in early 2016, in which intra block copy with extended search area and palette based coding are the key elements being considered [30]. For most of the previous MPEG-x and H.26x codecs [1], the largest independently encoded entity was a 16 16 pixels macroblock. For HEVC, the picture is split into coding-tree units (CTU) with a maximum size of 64 64 pixels. Every CTU is a root of a EE5359 MULTIMEDIA PROCESSING Page 6

quadtree, which can be further divided into leaf-level coding units (CU) in a quadtree fashion. Each CU contains one or more prediction units (PU) that are predicted independently of each other. A CU is also associated with a transform quadtree that compresses the prediction residual and has a structure similar to that of a CTU. The leaves of the quadtree are transform units (TU). Partitions for motion prediction have square or rectangular shapes. The size of the prediction blocks in HEVC can vary from 4 4 samples to 64 64, while transform sizes vary from 4 4 to 32 32 samples. The size of intra-predicted partitions varies from 4 4 to 32 32 luma samples as shown in fig 1. Figure 1 : Picture, slice, Coding Tree Unit (CTU), Coding Unit [17] HEVC uses two in-loop filters: a deblocking filter and a sample adaptive offset (SAO) filter, which is applied to the output of the deblocking filter. In-loop filters improve the subjective quality of reconstructed video as well as compression efficiency. HEVC enables significantly improved compression performance relative to existing standards -in the range of 50% bit rate reduction [1] for equal perceptual video quality.an increasing diversity of services, the growing popularity of HD video, and the emergence of beyond-hd formats (e.g.4kx2k or 8kx4k resolution) are creating even stronger needs for coding efficiency superior to H.264/MPEG-4 [4] AVC's capabilities. EE5359 MULTIMEDIA PROCESSING Page 7

HEVC is designed to address existing applications of H.264/MPEG-4 AVC and to focus on two key issues: increased video resolution and increased use of parallel processing architectures [1]. It primarily targets consumer applications as pixel formats are limited to 4:2:0 8-bit and 4:2:0 10-bit as shown in fig 2. The new revision of the standard has enabled new usecases with the support of additional pixel formats such as 4:2:2 and 4:4:4 as shown in fig 3, depth higher than 10-bit [5], embedded bit stream scalability and 3D video [3]. Figure 2 : 4:2:0 sampling pattern [22] Figure 3 : 4:2:2 and 4:4:4 sampling pattern [22] EE5359 MULTIMEDIA PROCESSING Page 8

2.1 HEVC ENCODER The Figure 4 [9] represents the detailed block diagram of HEVC encoder Figure 4: Block Diagram of HEVC Encoder [9] The video encoder performs the following steps [17]: Partitioning each picture into multiple units Predicting each unit using inter or intra prediction, and subtracting the prediction from the unit Transforming and quantizing the residual (the difference between the original picture unit and the prediction) Entropy encoding transform output, prediction information, mode information and headers EE5359 MULTIMEDIA PROCESSING Page 9

2.2 HEVC DECODER The Figure 5 [9] represents the detailed block diagram of HEVC decoder Figure 5: Block Diagram of HEVC Decoder [10] The video decoder performs the following steps [17]: Entropy decoding and extracting the elements of the coded sequence Rescaling and inverting the transform stage Predicting each unit and adding the prediction to the output of the inverse transform Reconstructing a decoded video image EE5359 MULTIMEDIA PROCESSING Page 10

3. FEATURES OF HEVC 3.1 Coding tree unit HEVC replaces 16 16 pixel macroblocks, which were used in previous standards, with Coding tree units (CTUs) which can use a larger block structures of up to 64x64 samples and can better sub-partition the picture into variable sized structures[1] HEVC initially divides the picture into CTUs which can be 64 64, 32 32, or 16 16 with a larger pixel block size usually increasing the coding efficiency [1]. 3.2 TUs and transform blocks The prediction residual is coded using block transforms. A TU tree structure has its root at the CU level. The luma CB residual may be identical to the luma transform block (TB) or may be further split into smaller luma TBs. The same applies to the chroma TBs. Integer basis functions similar to those of a discrete cosine transform (DCT) [19] are defined for the square TB sizes 4 4, 8 8, 16 16, and 32 32 [1] as shown in fig 6. Figure 6 : Partitioning of Transform Blocks from Coding Blocks [18] 3.3 Motion vector signaling Advanced motion vector prediction (AMVP) is used, including derivation of several most probable candidates based on data from adjacent PBs and the reference picture. A merge mode for MV coding can also be used, allowing the inheritance of MVs from temporally or spatially neighboring PBs [1]. EE5359 MULTIMEDIA PROCESSING Page 11

3.4 Motion compensation Quarter-sample precision is used for the MVs as shown in Figure.7, and 7-tap or 8-tap filters [9] are used for interpolation of fractional-sample positions (compared to six-tap filtering of half-sample positions followed by linear interpolation for quarter-sample positions in H.264/MPEG-4 AVC) [1]. Similar to H.264/MPEG-4 AVC, multiple reference pictures are used as shown in Figure.5. For each PB, either one or two motion vectors can be transmitted, resulting either in unipredictive or bipredictive coding, respectively. As in H.264/MPEG-4 AVC, a scaling and offset operation may be applied to the prediction signal(s) in a manner known as weighted prediction [1]. Figure 7: Quadtree structure used for MVs [9] EE5359 MULTIMEDIA PROCESSING Page 12

Figure 8 : Concept of multi-frame motion-compensated prediction [9] 3.5 Intra Prediction Intra prediction is employed to remove the spatial redundancies within an image. In H.264/AVC, intra prediction of the target block is conducted in spatial domain by referring to the neighboring samples from left, up and top-right regions. Although unified intra prediction is still conducted in spatial domain in current HEVC, boundary pixels from the left down region may be used as context pixels for prediction [7]. Besides DC prediction mode, the 33 possible intra prediction directions are illustrated in Figure 3 [7]. EE5359 MULTIMEDIA PROCESSING Page 13

Figure 9: Intra prediction directions in HEVC [7] 3.6 Entropy coding HEVC uses a Context Adaptive Binary Arithmetic Coding (CABAC) that is fundamentally similar to CABAC in H.264/MPEG-4 AVC [1]. CABAC is the only entropy encoder method that is allowed in HEVC. CABAC and the entropy coding of transform coefficients in HEVC were designed for a higher throughput than H.264/MPEG-4 AVC [12], while maintaining higher compression efficiency for larger transform block sizes relative to simple extensions [13]. EE5359 MULTIMEDIA PROCESSING Page 14

3.7 In-loop deblocking filtering A deblocking filter similar to the one used in H.264/MPEG-4 AVC is operated within the inter picture prediction loop. However, the design is simplified in regard to its decisionmaking and filtering processes, and is made more friendly to parallel processing [1]. 3.8 Sample adaptive offset (SAO) A nonlinear amplitude mapping is introduced within the interpicture prediction loop after the deblocking filter. Its goal is to better reconstruct the original signal amplitudes by using a look-up table that is described by a few additional parameters that can be determined by histogram analysis at the encoder side [1]. 4. BLOCK ARTIFACT ANALYSIS Block-based transform coding is popularly used in image and video compression standards such as JPEG, MPEG and H.26x because of its excellent energy compaction capability and low hardware complexity [14]. These standards achieve good compression ratio and quality of the reconstructed image and video after quantization is not very coarse. However, in very low bit rates, the annoying artifacts in image and video compression coding occur and degrade the quality. This artifact is called blocking artifact [14]. Blocking is known as one of the most visual and objectionable artifacts of block-based compression methods [16]. In a coding scheme that uses block-based prediction and transform coding, discontinuities can occur in the reconstructed signal at the block boundaries. Visible discontinuities at the block boundaries are blocking artifacts [15]. EE5359 MULTIMEDIA PROCESSING Page 15

Figure 10 : Example of block boundary with blocking artifact [15] As mentioned earlier, it has been reported at a later stage of the standardization process that some remaining block artifacts are present in the sequences that have content with much chaotic motion, such as water, rain, snow, fire etc. Several explanations can be found for these remaining artifacts. Both random-access and low-delay test configurations in HEVC toggle the picture quality in hierarchical manner depending on picture position. Random access configuration uses hierarchical-b GOP8 structure (see Fig. 6) [6], where the base QP is used for the intra-coded pictures, QP+1 is used for the B- pictures at depth 0, B-picture contains motion-compensated difference information relative to previously decoded pictures. For example with Picture order count of 8, i.e. pictures used at the lowest depth, QP + 2 for the pictures at coding depth 1. Depth 2 uses QP + 3 and non-reference b-pictures at depth 3 use QP + 4 [6]. Non reference b-pictures are pictures with highest temporal levels and these pictures need not be stored and can be outputted just after the decoding, since all of these non reference pictures are coded in display order [34]. EE5359 MULTIMEDIA PROCESSING Page 16

Figure 11 : Hierarchical-B coding structure with GOP8 illustrating different depths of the picture in the coding structure [6] By inspection of encoded videos, it has been found that block artifacts mostly appear in the pictures with higher depth, in particular in the non-reference pictures at depth 3 and reference pictures at depth 2. Some milder artifacts are present in pictures at depth 1. Pictures at depth 0 usually have higher quality and do not exhibit block artifacts [6]. Another observation from studying the encoded sequences is that visible block artifacts are often associated with large intra-blocks (e.g. 32 32 blocks), although the artifacts are sometimes also present between inter-predicted blocks. When the motion is chaotic it is difficult to get good prediction from the previously decoded pictures. In such cases, intra-picture prediction is often chosen by the encoder [6]. EE5359 MULTIMEDIA PROCESSING Page 17

5. COMPARISON METRICS 5.1 PEAK SIGNAL TO NOISE RATIO Peak signal-to-noise ratio (PSNR) [29] is an expression for the ratio between the maximum possible power values of a signal and the power of distorting noise that affects the quality of its representation. Because many signals have a very wide dynamic range, the PSNR is usually expressed in terms of the logarithmic decibel scale. PSNR is most commonly used to measure the quality of reconstruction of lossy compression codecs. The signal in this case is the original data, and the noise is the error introduced by compression. When comparing compression codecs, PSNR is an approximation to human perception of reconstruction quality. Although a higher PSNR generally indicates that the reconstruction is of higher quality, in some cases it may not. One has to be extremely careful with the range of validity of this metric; it is only conclusively valid when it is used to compare results from the same codec and same content. PSNR is defined via the mean squared error (MSE). Given a noise-free m x n monochrome image I and its noisy approximation K, MSE is defined as: EE5359 MULTIMEDIA PROCESSING Page 18

The PSNR is defined as: Here, MAX(I) is the maximum possible pixel value of the image. For test sequences in 4:2:0 color format, PSNR is computed as a weighted average of luminance ( PSNRy ) and chrominance ( PSNRu, PSNRv ) components [27] as given below: 5.2 BJONTEGAARD DELTA BITRATE (BD-BR) AND BJONTEGAARD DELTA PSNR (BD-PSNR) Based on the rate-distortion (R-D) curve fitting, BD-PSNR provides a good evaluation of the R-D performance [24]. BD metrics allow to compute the average gain in PSNR or the average per cent saving in bitrate between two rate-distortion curves. However, BD-PSNR has a critical drawback: It does not take the coding complexity into account [25]. EE5359 MULTIMEDIA PROCESSING Page 19

6. PROPOSED IMPLEMENTATION Two methods are employed in this project to analyze the problem of blocking artifacts in content with chaotic motion and two simple methods are described to improve the subjective quality without degrading the quality on other content and without increase in bit rate. 6.1 DEBLOCKING STRENGTH ADAPTATION ORDER In order to attenuate block artifacts in a picture with higher depth, HEVC can be configured to signal the deblocking filter offsets at the slice/picture level. Higher offsets are sent for the frames, which are at higher depth in the coding hierarchy. The parameters used in the experiment are provided in Table 1. Table 1: Deblocking parameters for pictures at different depths [6] The proposed approach relaxes the deblocking decisions thresholds and clipping values for the pictures at higher depth, which results in deblocking being applied more frequently to these pictures, modifying larger number of samples from the block boundary and allowing larger modifications to the samples [6]. EE5359 MULTIMEDIA PROCESSING Page 20

6.2 REDUCING INTRA BLOCK SIZE The HEVC deblocking filtering can only modify three pixels from the block boundary. When the rate-distortion optimization chooses 32 32 intra-predicted CUs at higher depth, the prediction is often coarse and since the transform coefficients are also coarsely quantized, block artifacts can appear. It might be difficult to conceal a blocking artifact by just applying the deblocking filtering [6]. Consider a 32 32 lighter and darker uniform blocks arranged in a checkerboard pattern. Even if the deblocking is applied to all block boundaries and transitions between the blocks are smooth, the block pattern would still be visible since there are only three pixels from each side of the block boundary that are modified while most samples in the block are not changed by deblocking [6]. To improve visual quality, the HEVC reference encoder can limit the maximum TU size to 16 16 samples for coding of intra CUs in inter-predicted slices by setting the configuration parameter RD-penalty appropriately, enabling this parameter can reduce the visibility of coding unit boundaries in the coded picture [20]. This constraint will also restrict the maximum intrapredicted block size and will increase the bit rate. Alternatively, a penalty for using 32 32 intra-prediction blocks can be applied to the rate-distortion cost by setting the RD-penalty to 1 [6]. EE5359 MULTIMEDIA PROCESSING Page 21

6.3 DEBLOCKING PARAMETERS USED IN THE PROJECT 1. tc_offset_div2 : In-loop deblocking filter parameter tc_offset_div2 is added to the base parameter LoopFilterTcOffset div2 to set the final tc_offset_div2 parameter for this picture signalled in the slice segment header. The final value of tc_offset_div2 shall be an integer number in the range -6 to +6 [8]. 2. beta_offset_div2: In-loop deblocking filter parameter beta_offset_div2 is added to the base parameter LoopFilterBetaOffset div2 to set the final beta_offset_div2 parameter for this picture signalled in the slice segment header. The final value of beta_offset_div2 shall be an integer number in the range-6 to +6 [8]. 3. Rate Distortion-penalty: RD-penalty for 32x32 TU for intra in non-intra slices. Enabling this parameter can reduce the visibility of CU boundaries in the coded picture [8]. 0 No RD-penalty 1 RD-penalty 2 Maximum RD-penalty (no 32x32 TU). The proposed approach relaxes the deblocking decision thresholds and clipping values for the pictures at higher depth, which results in deblocking being applied more frequently to these pictures, modifying larger number of samples from the block boundary and allowing larger modifications to the samples [8]. EE5359 MULTIMEDIA PROCESSING Page 22

The proposed methods improve the subjective quality parameters like SSIM [31], BD- PSNR [25] on difficult sequences, such as the sequences that contain water, rain, fire etc [11]. The proposed methods do not impair the quality of the video sequences that have slow or linear motion, i.e. "normal" video content. These two methods offer a practical solution that improves the subjective quality significantly when encoding the sequences with chaotic motion with HEVC encoder [8]. 7. PROFILE USED FOR IMPLEMENTATION The HM 16.4 main profile [8] is used for implementation in this project. 7.1 MAIN PROFILE IN HEVC This profile allows for a bit depth of 8-bits per sample with 4:2:0 chroma sampling as shown in figure 3, which is the most common type of video used with consumer devices. 7.2 TESTING PLATFORM Processor Memory : Intel(R) core(tm) i5-4200, 2.30 GHz : 6 GB Operating system : 64 bit windows 8 7.3 TESTING CONFIGURATION For the random-access test condition, hierarchical B structure is used for coding [27]. Figure 12 shows graphical presentation of random-access configuration. The number associated with each picture represents encoding order. Intra picture shall be inserted cyclically per about one second. The first intra picture of a video sequence shall be encoded as IDR picture and the other intra pictures shall be encoded as non-idr intra pictures. The pictures located between successive intra pictures in display order shall be encoded as B-pictures. The GPB picture shall be used as the lowest temporal layer that can refer to I or GPB picture for inter prediction. The EE5359 MULTIMEDIA PROCESSING Page 23

second and third temporal layers consists of referenced B pictures, and the highest temporal layer contains non-referenced B picture only. QP of each inter coded picture shall be derived by adding offset to QP of Intra coded picture depending on temporal layer. Reference picture list combination is used for management and entropy coding of reference picture index. Figure 12: Graphical representation of Random Access configuration [27] 7.4 CONFIGURATION OF HM 16.4 Profile : main IntraPeriod : 1 # Period of I-Frame ( -1 = only first) GOPSize : 8 # GOP Size (number of B slice = GOPSize-1) QP : 32 # Quantization parameter(0-51) FastSearch : 1 # 0:Full search 1:TZ search SearchRange : 64 # (0: Search range is a Full frame) EE5359 MULTIMEDIA PROCESSING Page 24

Sample command line parameters for HM16.4 encoder: F:\HEVCcodes\bin\vc9\x64\Release>TAppEncoder.exe -c F:\HEVCcodes\cfg\encoder_randomaccess_main.cfg - wdt 416 -hgt 240 -fr 30 -f 20 -i F:\test_sequences\videos\RaceHorses_416x240_30\RaceHorses_416x240_30.yuv >> F:\results\racehorse_encqp32_mod.txt 8. TEST SEQUENCES The following test sequences [11] of various resolutions are used for analyzing this project. Test Sequence Resolution Frame Rate (fps) RaceHorses_416x240_30.yuv 416 x 240 30 ParkScene_1920x1080_24.yuv 1920 x 1080 24 Kimono_1920x1080_24.yuv 1920 x 1080 24 Figure 13: RaceHorses_416x240_30.yuv [11] EE5359 MULTIMEDIA PROCESSING Page 25

Figure 14 : ParkScene_1920x1080_24.yuv [11] Figure 15 : Kimono_1920x1080_24.yuv [11] EE5359 MULTIMEDIA PROCESSING Page 26

PSNR (db) Block Artifact reduction using Two HEVC Encoder methods 9. RESULTS The results of random access configuration for the test sequences are as follows: QP RaceHorses_416x240_30.yuv, Number of frames encoded = 20 Without any modifications in parameters With Modifications in parameters PSNR in Bit rate in Encoding time PSNR in Bit rate in Encoding time db Kbps in seconds db Kbps in seconds 27 34.7591 768.459 79.432 36.0351 770.324 79.865 32 31.8996 391.606 65.654 33.4353 392.167 65.764 37 29.0116 202.498 55.002 30.1921 203.321 55.474 42 26.3355 106.451 47.453 28.3315 106.982 48.015 Table 2: Results for RaceHorses_416x240_30.yuv sequence in Random Access Configuration 38 36 Bit rate (Kbps) vs PSNR (db) without reducing block artifacts reducing block artifacts 34 32 30 28 26 100 200 300 400 500 600 700 800 Bit rate (Kbps) Figure 16: R-D plot for RaceHorses_416x240_30.yuv sequence EE5359 MULTIMEDIA PROCESSING Page 27

Encoding time (sec) Block Artifact reduction using Two HEVC Encoder methods Figure 17: QP vs PSNR comparison for RaceHorses_416x240_30.yuv sequence 80 75 QP vs Encoding time (sec) without reducing block artifacts reducing block artifacts 70 65 60 55 50 45 26 28 30 32 34 36 38 40 42 QP Figure 18: QP vs Encoding time comparison for RaceHorses_416x240_30.yuv sequence EE5359 MULTIMEDIA PROCESSING Page 28

PSNR (db) Block Artifact reduction using Two HEVC Encoder methods ParkScene_1920x1080_24.yuv, Number of frames encoded = 20 Without any modifications in parameters With Modifications in parameters QP PSNR in db Bit rate in Kbps Encoding time in seconds PSNR in db Bit rate in Kbps Encoding time in seconds 27 36.5334 5025.068 433.705 38.6108 5042.032 438.019 32 33.9527 2446.392 384.648 36.3063 2451.162 385.542 37 32.7518 1181.467 351.892 34.2761 1182.426 353.292 42 31.2945 525.1252 334.243 32.4792 527.441 335.929 Table 3: Results for ParkScene_1920x1080_24.yuv sequence in Random Access Configuration 39 38 Bit rate (Mbps) vs PSNR (db) without reducing block artifacts reducing block artifacts 37 36 35 34 33 32 31 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 Bit rate (Mbps) Figure 19: R-D plot for ParkScene_1920x1080_24.yuv sequence EE5359 MULTIMEDIA PROCESSING Page 29

Encoding time (sec) Block Artifact reduction using Two HEVC Encoder methods Figure 20 : QP vs PSNR comparison for ParkScene_1920x1080_24.yuv sequence 440 420 QP vs Encoding time (sec) without reducing block artifacts reducing block artifacts 400 380 360 340 320 26 28 30 32 34 36 38 40 42 QP Figure 21 : QP vs Encoding time comparison for ParkScene_1920x1080_24.yuv sequence EE5359 MULTIMEDIA PROCESSING Page 30

PSNR (db) Block Artifact reduction using Two HEVC Encoder methods Kimono_1920x1080_24.yuv, Number of frames encoded = 20 Without any modifications in parameters With Modifications in parameters QP PSNR in db Bit rate in Kbps Encoding time in seconds PSNR in db Bit rate in Kbps Encoding time in seconds 27 38.629 3505.91 566.04 40.923 3518.67 572.55 32 36.037 1812.34 485.97 38.632 1818.54 492.14 37 34.924 974.05 430.43 36.241 980.02 436.702 42 33.598 508.58 390.62 34.893 513.731 397.791 Table 4: Results for Kimono_1920x1080_24.yuv sequence in Random Access Configuration 41 40 Bit rate (Mbps) vs PSNR (db) without reducing block artifacts reducing block artifacts 39 38 37 36 35 34 33 0.5 1 1.5 2 2.5 3 3.5 4 Bit rate (Mbps) Figure 22: R-D plot for Kimono _1920x1080_24.yuv sequence EE5359 MULTIMEDIA PROCESSING Page 31

Encoding time (sec) Block Artifact reduction using Two HEVC Encoder methods Figure 23: QP vs PSNR comparison for Kimono_1920x1080_24.yuv sequence 580 560 QP vs Encoding time (sec) without reducing block artifacts reducing block artifacts 540 520 500 480 460 440 420 400 380 26 28 30 32 34 36 38 40 42 QP Figure 24: QP vs Encoding time comparison for Kimono_1920x1080_24.yuv sequence EE5359 MULTIMEDIA PROCESSING Page 32

The table below shows BD-Bit rate and BD-PSNR metrics comparison for block artifacts reduction. Test Sequence BD-PSNR(dB) %BD- Bit rate RaceHorses_416x240_30.yuv 1.5592 0.5706 ParkScene_1920x1080_24.yuv 2.3799 0.7936 Kimono_1920x1080_24.yuv 2.6460 0.7932 Table 5: BD results for all sequences in random access configuration Figure 25: BD-PSNR comparison with and without blocking artifacts Figure 25 indicates that there is an average of 2.19 db increase in BD-PSNR with reduction of blocking artifacts. EE5359 MULTIMEDIA PROCESSING Page 33

Figure 26: %BD-Bitrate comparison with and without blocking artifacts Figure 26 indicates that there is 0.719% increase in average BD-bitrate with reduction of blocking artifacts. 10. REFERENCES 1. G.J. Sullivan et al, Overview of the high efficiency video coding (HEVC) standard, IEEE Transactions on CSVT, vol. 22, pp.1649-1668, Dec. 2012. 2. P. Hanhart et al, Subjective quality evaluation of the upcoming HEVC video compression standard SPIE Applications of digital image processing XXXV, vol.8499, pp.8499-30, Aug. 2012. EE5359 MULTIMEDIA PROCESSING Page 34

3. G J. Sullivan et al, "Standardized Extensions of HEVC, IEEE Journal of Selected topics in Signal Processing, Vol.7, no.6, pp.1001-1016, Dec. 2013. 4. F. Bossen et al, HEVC Complexity and Implementation Analysis, IEEE Transactions on CSVT, vol.22, pp.1685-1696, Dec. 2012. 5. HEVC white paper-ateme: http://www.ateme.com/an-introduction-to-uhdtv-and-hevc. 6. A. Norkin et al, "Two HEVC encoder methods for block artifact reduction ", IEEE International Conference on Visual Communications and Image Processing (VCIP) Article no.14028673, pp.1-6, Nov. 2013 7. L. Zhao et al, Fast mode decision algorithm for intra prediction in HEVC, IEEE International Conference on Visual Communications and Image Processing (VCIP) Article no.6115979, pp. 6-9, Nov. 2011. 8. HEVC Reference Software HM16.4. https://hevc.hhi.fraunhofer.de/svn/svn_hevcsoftware/tags/hm-16. 9. D. Marpe,T.Weigand and G.J.Sullivan, The H.264/MPEG4 advanced video coding standard and its applications, IEEE Communications Magazine, Vol. 44, pp. 134-143, Aug. 2006. 10. C. Fogg, Suggested figures for the HEVC specification, ITU-T / ISO-IEC Document: JCTVC J0292r1, July 2012. 11. Required test sequences http://media.xiph.org/video/derf/ 12. V. Sze and M. Budagavi, "High Throughput CABAC Entropy Coding in HEVC", IEEE Transactions on CSVT, Vol.22, pp,1778-1791, Dec. 2012. 13. T.Nguyen et al, "Transform Coding Techniques in HEVC" IEEE Journal of Selected Topics in Signal Processing,Vol.7, pp. 978 989, Dec. 2013. 14. W.Y.Wei, "Deblocking Algorithms in Video and Image Compression Coding." Graduate Institute of Communication Engineering, National Taiwan University, Taipei, Taiwan, ROC. 15. A. Norkin et al, HEVC Deblocking Filter, IEEE Transactions on CSVT, Vol. 22, No. 12, pp. 1746-1754, Dec. 2012. EE5359 MULTIMEDIA PROCESSING Page 35

16. W.Shen et al, A high-throughput VLSI architecture for deblocking filter in HEVC IEEE International Symposium on Circuits and Systems (ISCAS), pp 673-676, May 2013 17. Access to HEVC tutorial by I.E.G. Richardson: http://www.vcodex.com/h265.html 18. I. E.G. Richardson, The H.264 Advanced Video Compression Standard, 2nd Edition, Wiley 2010. 19. N.Ahmed, T.Natarajan and K.R.Rao, " Discrete Cosine Transform ", IEEE Transactions on Computers, Vol. 23, PP 90-93, Jan.1974. 20. Access to HM 16.4 software manual: http://hevc.kw.bbc.co.uk/svn/jctvc-a124/tags/hm- 16.4/doc/software-manual.pdf 21. V.Sze, M,Budagavi and G.J.Sullivan,"High Efficiency Video Coding (HEVC): Algorithms and Architectures", Springer 2014. 22. I.E.G. Richardson, Video Codec Design: Developing Image and Video Compression Systems, Wiley, 2002. 23. M.Wein," High Efficiency Video Coding, Coding Tools and Specification", Springer 2015. 24. X. Li et al, Rate-complexity-distortion evaluation for hybrid video coding, IEEE International Conference on Multimedia and Expo (ICME), pp. 685-690, July 2010. 25. G. Bjontegaard, Calculation of Average PSNR Differences between RD Curves, document VCEGM33, ITU-T SG 16/Q 6, Austin, TX, Apr. 2001. 26. I.E.G. Richardson, "Coding Video: A Practical Guide to HEVC and Beyond" Wiley, May. 2015. 27. J. Vanne et al, Comparative Rate-Distortion-Complexity Analysis of HEVC and AVC Video Codecs, IEEE Transactions on CSVT, Vol. 22, No. 12, pp. 1885-1898, Dec. 2012. 28. HM Encoder Description: http://mpeg.chiariglione.org/standards/mpeg-h/highefficiency-video-coding/n14703-high-efficiency-video-coding-hevc-encoder EE5359 MULTIMEDIA PROCESSING Page 36

29. White paper on PSNR-NI: http://www.ni.com/white-paper/13306/en/ 30. HEVC Tutorial by V.Sze and M.Budagavi, Design and Implementation of Next Generation video coding systems, IEEE International Symposium on Circuits and Systems (ISCAS),Melbourne,Australia, June 2014. Available on : http://www.rle.mit.edu/eems/publications/tutorials/ 31. A.Hore and D.Ziou," Image Quality Metrics : PSNR vs SSIM",IEEE International Conference on Pattern Recognition (ICPR),pp. 2366-2369, Aug. 2010. 32. G. Correa et al, Fast HEVC encoding decisions using data mining, IEEE Transactions on CSVT, vol.25, pp. 660-673, Apr. 2015. 33. Intel VTune AmplIfier XE Software profiler website : http://software.intel.com 34. H.Schwarz, D.Marpe and T.Weigand," Analysis of Hierarchical B pictures and MCTF", IEEE International Conference on Multimedia and Expo (ICME), pp. 9-12, July 2006. EE5359 MULTIMEDIA PROCESSING Page 37