1. objective of the project · web viewiec – international electrotechnical commission iso –...

50
Department of Electrical Engineering The University of Texas at Arlington A Project report on Inter mode decision for HEVC utilizing Inter-Level and Spatiotemporal Correlations Under the guidance of Dr. K. R. Rao For the fulfillment of the course Multimedia Processing (EE5359) Spring 2016 1

Upload: lamdieu

Post on 07-Jul-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

Department of Electrical Engineering

The University of Texas at Arlington

A Project report on

Inter mode decision for HEVC utilizing Inter-Level and

Spatiotemporal Correlations

Under the guidance of Dr. K. R. Rao

For the fulfillment of the course Multimedia Processing (EE5359)Spring 2016

Submitted by

Divya Nityanand ID: 1001112716

Email: [email protected]

1

Page 2: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

Table of Contents1. Objective of the project.............................................................................................................................................2

2. H.265 / High Efficiency Video Coding....................................................................................................................2

2.1 Introduction.........................................................................................................................................................2

2.2 Encoder and Decoder in HEVC..........................................................................................................................2

2.3 Features of HEVC...............................................................................................................................................2

2.3.2 Prediction....................................................................................................................................................2

2.3.3 Transform and Quantization........................................................................................................................2

3. Inter-Prediction.........................................................................................................................................................2

3.1.1 Motion Vector Prediction............................................................................................................................2

3.1.2 Advanced Motion Vector Prediction Process.............................................................................................2

3.1.3 Merge Mode................................................................................................................................................2

3.1.4 Motion Compensation.................................................................................................................................2

3.2 Inter-prediction Mode Decision..........................................................................................................................2

3.3 Inter-prediction PU Mode Decision Complexity................................................................................................2

3.4 FAST Algorithm for Inter-prediction Mode Decision........................................................................................2

3.4.1 Skip Mode...................................................................................................................................................2

3.4.2 Prediction Size Based Mode Decision........................................................................................................2

3.4.3 RD Cost Based Mode Decision...................................................................................................................2

3.4.4 Algorithm for Mode Decision.....................................................................................................................2

3.5 Summary.............................................................................................................................................................2

4. Results..............................................................................................................................................................2

4.1 Test Conditions...................................................................................................................................................2

4.2 Encoding Time Gain...........................................................................................................................................2

4.3 BD-PSNR and BD Bitrate..................................................................................................................................2

4.4 RD Plot...............................................................................................................................................................2

5. Conclusions and Future Work..........................................................................................................................2

5.1 Conclusions....................................................................................................................................................2

5.2 Future Work...................................................................................................................................................2

REFERENCES..............................................................................................................................................................2

2

Page 3: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

Acknowledgement

I would like to thank Dr. K.R. Rao for his continuous support and guidance during the course of the project. I thank him for providing necessary feedback and dedicating his precious time to review the reports and presentation slides during the different phases of the project.

I would also like extend my gratitude towards Mr. Tuan Ho for helping and addressing the issues faced during the course of the project without which the project would not have been successful.

I would also like extend my gratitude to Dr. Liquan Shen, one of the authors of the papers I have referred for my project, for the help in understanding and completion of my project.

3

Page 4: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

List of Acronyms and Abbreviations

AVC – Advanced Video Coding

BDBR- Bjontegaard Delta Bit Rate

CB – Coding Block

CBF- Coded Block Flag

CPU- Central Processing Unit

CTB – Coding Tree Block

CTU – Coding Tree Unit

CU – Coding Unit

ES-MD- Early Skip-Mode Decision

ET- Early Termination

GOP – Group of Pictures

GPU- Graphics Processing Unit

HEVC – High Efficiency Video Coding

HM – HEVC Test Model

IEC – International Electrotechnical Commission

ISO – International Standards Organization

ITU – International Telecommunication Union

JCT-VC - Joint Collaborative Team on Video Coding

MC – Mode Complexity Parameter

ME – Motion Estimation

MPEG – Moving Picture Experts Group

MV – Motion Vector

PB – Prediction Block

PSC-MD- Prediction size correlation based mode decision

PSNR- Peak Signal to Noise Ratio

PU – Prediction Unit

4

Page 5: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

RD- Rate Distortion

RDC-MD- RD cost correlation-based mode decision

TB: Transform Block.

TU – Transform Unit

VCEG – Video Coding Experts Group

VPS – Video Parameter Set

WQVGA – Wide Quarter Video Graphics Array

WVGA – Wide Video Graphics Array

Abstract

High Efficiency Video Coding (HEVC) adopts the quadtree structured coding unit (CU), which allows the recursive splitting of any frame into four equally sized blocks. While performing inter prediction it checks for all the different modes like the SKIP mode, merge mode, inter 2N × 2N, inter 2N × N, inter N × 2N, inter 2N × nU, inter 2N × nD, inter nL × 2N, inter nR × 2N, inter N × N (only available for the smallest CU), intra 2N × 2N, and intra N × N (only available for the smallest CU) in inter-frames. This operation is carried out for all depths from 0 to 4 and the mode with the least distortion error/rate is chosen. The efficiency of this operation is very high, but it comes at the cost of very high computational complexity. By jointly exploiting the inter-level correlation of quadtree structure and the spatiotemporal correlation, an algorithm for fast inter-mode decision algorithm for HEVC has been developed [1]. Test sequences of different resolutions have been implemented and compared with the original HM software 16.0, the encoding time saved, the bitrate and PSNR values are tabulated.

5

Page 6: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

1. Objective of the project

Computational complexity is one of the biggest disadvantages in HEVC, the cause being the time consuming task of Inter prediction, where all the different prediction modes are applied on the frame block before a decision is made based depending on the least distortion. The inter prediction becomes more complex due to the quad tree partitioning.This project concentrates on studying different algorithms that aim to exploit the inter-level correlation of quadtree structure and the spatiotemporal correlation, along with statistically analyzing the distribution of the prediction modes. The aim is to implement the algorithms to determine its performance and compare the reduction in computational complexity compared to the existing HEVC standard when applied to various video sequences. [1]

6

Page 7: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

2. H.265 / High Efficiency Video Coding

2.1 Introduction

High Efficiency Video Coding (HEVC) [12] is an international standard for video compression developed by a working group of ISO/IEC MPEG (Moving Picture Experts Group) and ITU-T VCEG (Video Coding Experts Group). The main goal of HEVC standard is to significantly improve compression performance compared to existing standards (such as H.264/Advanced Video Coding [13]) in the range of 50% bit rate reduction at similar visual quality [5]. 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 [5]. It primarily targets consumer applications as pixel formats are limited to 4:2:0 8-bit and 4:2:0 10-bit. The next revision of the standard, planned for 2014, will enable new use-cases with the support of additional pixel formats such as 4:2:2 and 4:4:4 and bit depth higher than 10-bit [20], embedded bitstream scalability and 3D video [33].

2.2 Encoder and Decoder in HEVCSource video, consisting of a sequence of video frames, is encoded or compressed by a video encoder to create a compressed video bit stream. The compressed bit stream is stored or transmitted. A video decoder decompresses the bit stream to create a sequence of decoded frames [17]. The video encoder performs the following steps:

• 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 The video decoder performs the following steps:

• 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

7

Page 8: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

The Figure 1 represents the block diagram of HEVC CODEC [17]:

Figure 1. Block diagram of HEVC CODEC [17]

Figure 2 and Figure 3 represent the detailed block diagrams of HEVC encoder and decoder respectively.

Figure 2. Block diagram of HEVC Encoder [5]

8

Page 9: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

Figure 3. Block diagram of HEVC Decoder [31]

2.3 Features of HEVCHEVC supports highly flexible partitioning of a video sequence. Each frame of the sequence is split up into rectangular or square regions (units or blocks), each of which is predicted from previously coded data [17]. After prediction, any residual information is transformed and entropy encoded. Each coded video frame, or picture, is partitioned into tiles and/or slices, which are further partitioned into coding tree units (CTUs). The CTU is the basic unit of coding, analogous to the macro-block in earlier standards [17], and can be up to 64x64 pixels in size. A coding tree unit can be subdivided into square regions known as coding units (CUs) using a quadtree structure. Each CU is predicted using inter or intra prediction and transformed using one or more transform units.

9

Page 10: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

Figure 4: Picture, Slice, Coding Tree Unit (CTU), Coding Unit (CU) [17]

Figure 5 Quad tree CU structure in HEVC [41] [5]

The Coding Tree Unit (CTU) consists of a Luma Coding Tree Block (CTB) and the corresponding chroma CTBs and syntax elements. The CTU specifies the positions and the sizes of the luma Coding Block (CB) and chroma CB. One luma CB and generally two chroma CBs together with syntax form a Coding Unit (CU). A CTB can have one CU or be split into several CUs. The decision to code an area of image as intra or inter is taken at the CU level. A CU is the root for both the Prediction Unit (PU) and the Transform Unit (TU). A Prediction Block (PB) can be the size of a CB or be split further into smaller luma and chroma PBs. The supported sizes are 64x64, 32x32, 16x16, 8x8 and 4x4. For inter prediction modes, non-square modes are allowed as shown in figure 6. An inter frame PBcannot have a size of 4x4. Similarly, starting at the level of a CU, a CB can have one Transform Block (TB) of the same size as the CB or be split into smaller TBs [5] [42] [43] as shown in figures 7 and 8.

10

Page 11: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

Figure 6 Intra and Inter frame prediction modes for HEVC [41]

Figure 7 Splitting Coding unit into prediction units and transform units [44]

11

Page 12: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

Figure 8 Splitting Coding tree unit into Coding Blocks [5]

2.3.2 PredictionFrames of video are coded using intra or inter prediction. Intra prediction: Intra-picture prediction operates according to the TB size, and previously decoded boundary samples from spatially neighboring TBs are used to form the prediction signal. Directional prediction with 33 different directional orientations is defined for (square) TB sizes from 4×4 up to 32×32. The possible prediction directions are shown in figure 9. Alternatively, planar prediction can also be used. The chroma component should be explicitly signed as horizontal, vertical, planar, or DC prediction modes if it is different from luma prediction modes.

Figure 9 Mode decision for intra picture prediction [5]

12

Page 13: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

Inter prediction: Compared to intrapicture-predicted CBs, the HEVC standard supports more PB partition shapes for interpicture-predicted CBs. The partitioning modes of PART_2N×2N, PART_2N×N, and PART_N×2N as shown in figure 10 indicate the cases when the CB is not split, split into two equal-size PBs horizontally, and split into two equal-size PBs vertically, respectively. PART−N×N specifies that the CB is split into four equal-size PBs, but this mode is only supported when the CB size is equal to the smallest allowed CB size. In addition, there are four partitioning types that support splitting the CB into two PBs having different sizes: PART−2N×nU, PART−2N×nD, PART−nL×2N, and PART−nR×2N (U=up, D=down, L=left and R=right) as shown in figure 6. These types are known as asymmetric motion partitions

Figure 10 Partition mode in HEVC inter-prediction [45]

2.3.3 Transform and QuantizationAny residual data remaining after prediction, is transformed using a block transform based on the Discrete Cosine Transform (DCT) or Discrete Sine Transform (DST). One or more block transforms of size 32x32, 16x16, 8x8 and 4x4 (only for intra luma) are applied to residual data in each CU. Then the transformed data is quantized.

13

Page 14: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

Figure 11: CTU showing range of transform (TU) sizes [17]

14

Page 15: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

3. Inter-Prediction

The motion estimation model in HEVC for video content with inter frame redundancy improves inter prediction accuracy. A non-translational change in screen content cannot be compensated by traditional motion estimation model [28]. Thus removal of inter frame redundancy is poor and accurately predicting inter frame changes has to be addressed in screen content coding. Figure 6 shows an example of inter frame changes such as foreground change in a video conference call.

Figure 6: Example of foreground change in screen content [38].

The HEVC standard defines the coding unit (CU) as the basic processing unit instead of the macroblock (MB). Unlike a MB whose size is fixed at 16×16 pixels, the size of a CU is not fixed, varying from 8×8 to 64×64. A large CU reduces the motion information data. Thus, the compression efficiency is improved in a lossless manner, especially for high-resolution videos. A CU can be partitioned into smaller CUs and the structure among different CUs is represented by a quad-tree. The depth of this tree can be as large as four. The largest CU in depth 0 is denoted as LCU. For a CU whose size is denoted by 2N×2N, predictions are performed for various block sizes of 2N×2N, 2N×N, N×2N and N×N. The processing unit for prediction is called the prediction unit (PU) [27].

3.1.1 Motion Vector Prediction Like the AVC, the HEVC standard has two reference lists: L0 and L1. They can hold 16 references each, but the maximum total number of unique pictures is 8. This means that to find a maximum output, the same picture has to be added more than once. The encoder may choose to do this to be able to predict the same picture with different weights (weighted prediction). The HEVC standard uses more complex motion prediction than AVC. The HEVC standard uses candidate list indexing. There are two MV prediction modes: merge and AMVP (advanced motion vector prediction). The encoder decides between these two modes for each PU and signals it in the bitstream with a flag. Only the AMVP process can result in any desired MV, since it is the only one that codes an MV delta. Each mode builds a list of candidate MVs, and then selects one of them using an index coded in the bitstream.

15

Page 16: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

Figure 13 Position of spatial candidates of motion information [5]

Figure 14 Quad-tree splitting flag. 1- Level 1 (L1), 0 – Level (L0) [46]

16

Page 17: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

3.1.2 Advanced Motion Vector Prediction Process AMVP process is performed once for each MV; so once per L0 or L1 PU for unidirectional PU, or twice for a bidirectional PU as shown in figure 14. The bitstream specifies the reference picture to use for each MV. A two-deep candidate list is formed:

First, a left predictor is obtained, a0 is preferred over a1, same list is preferred over the opposite list, and neighbor is preferred that points to the same picture over one that does not. If no neighbor points to the same picture, the motion vector is scaled to match the picture distance (similar process as the AVC temporal direct mode). If all this results are in a valid candidate, a motion vector is added to the candidate list.

Second, upper predictor is obtained, b0 is preferred over b1, b1 is preferred over b2 and the neighbor MV that points to the same picture is preferred for motion vector prediction over the one that are not in same picture. Neighbor scaling for the upper predictor is only done if it was not done for the left neighbor, ensuring no more than one scaling operation per PU. If the candidate is found, it is added to the list. If the list still contains less than two candidates, a temporal candidate (scaled MV according to picture distance) is obtained, which is co-located with the right bottom of the PU. If the candidate lies outside the CTB row, or outside the picture, or if the co-located PU is intra, center position is tried again. If temporal candidate is found, it is added to the list. If the candidate list is still empty, a (0,0) motion vector is added until full. Finally, with the transmitted index, right candidate is selected and is added in the transmitted MV delta.

3.1.3 Merge Mode The merge process results in a candidate list of up to five entries deep, configured in the slice header. Each entry ends up being L0, L1 or bidirectional. Four spatial candidates are added in this order: a 1, b1, b0, a0, b2. A candidate is not added to the list if it is the same as one of the earlier candidates. Then, if the list still has room, a temporal candidate is added, which is found by the same process as in AMVP (Advance Motion Vector Prediction) process. Then, if the list still has room, bidirectional candidates are added and formed by making combinations of the L0 and L1 vectors of the other candidates already in the list. Then finally if the list still is not full, (0,0) MVs are added with increasing reference indices. The final motion vector is obtained by picking one of the up-to-five candidates as signaled in the bitstream.

The HEVC sub-samples the temporal motion vectors on a 16x16 grid. Thus, decoder only needs to make room for two motion vectors (L0 and L1) per 16x16 regions in the picture when it allocates the temporal motion vector buffer. When the decoder calculates the co-located position, lower 4 bits are zeroed out of the x/y position, snapping the location to a multiple of 16 and picture is considered to be co-located, that is signaled in the slice header.

3.1.4 Motion Compensation Like MPEG-4/AVC [5], HEVC specifies motion vectors in 1/4-pel, but uses an 8tap filter for luma (all positions), and a 4-tap 1/8-pel filter for chroma as shown in figure 15. Because of the 8-tap filter, any given NxM sized block requires extra pixels on all sides (3 left/above, 4 right and below) to provide the filter with the data it needs. With small blocks like an 8x4, (8+7) x (4+7) = 15x11 pixels are needed. The HEVC standard limits the smallest block to be uni-directional and 4x4 is not supported since more small blocks require more memory read, thus increasing more memory access, more time and more power.

17

Page 18: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

The HEVC standard also supports weighted prediction for both uni- and bidirectional PUs. However, the weights are always explicitly transmitted in the slice header, there is no implicit weighted prediction like in MPEG-4/AVC [5]. Quarter-sample precision is used for the motion vectors. 7-tap (weights: -1, 4, -10, 58, 17, -5, 1) or 8-tap (weights: -1, 4, -11, 40, 40, -11, 4, 1) filters are used for interpolation of fractional-sample positions as shown in figure 15. Similar to H.264/MPEG-4 AVC [5], multiple reference pictures are used as shown in figure 16. For each PB, either one or two motion vectors can be transmitted, resulting either in unipredictive or bipredictive coding, respectively. A scaling and offset operation can be applied to the prediction signal/signals in a manner known as weighted prediction.

Figure 15 Integer and fractional sample position for luma interpolation [5]

Figure 16 Multiple pictures used as reference for the current picture for motion compensation [2]

18

Page 19: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

Figure 15 shows the positions labeled with upper-case letters, A i,j, representing the available luma samples at integer sample locations, whereas the other positions labeled with lower-case letters represent samples at non-integer sample locations, which need to be generated by interpolation. The samples labeled a0,j, b0,j, c0,j, d0,0, h0,0, and n0,0 are derived from the samples Ai,j by applying the eight-tap filter for half-sample positions and the seven-tap filter for the quarter-sample positions as follows [5]:

where the constant B ≥ 8 is the bit depth of the reference samples (typically B = 8 for most applications). In these formulas, the symbol, >>, denotes an arithmetic right shift operation. The samples labeled e 0,0,

f0,0, g0,0, i0,0, j0,0, k0,0, p0,0, q0,0, and r0,0 can be derived by applying the corresponding filters to samples located at vertically adjacent a0,j, b0,j and c0,j positions as follows [5]:

3.2 Inter-prediction Mode Decision Figure 15 depicts partition modes in HEVC inter-prediction and figures 16 and 17 depict mode decision process of the HEVC encoder. This process is recursively implemented for each inter-coded CU at every quadtree depth h after which a final assignment of coding modes is accomplished at CTU level.

19

Page 20: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

Figure 17 Partition mode in HEVC inter-prediction [45]

Figure 18 Mode decision I n HM software for N ∈ 8, 16 [27]

Figure 19 Mode decision in HM software for N ∈ 4, 32 [27]

Consider an inter-coded CU at depth h, then the HEVC encoder evaluates the Skip, Merge, Square, and SMP modes for CU of size 2N × 2N and selects the best interim mode (Mh’) among them. If N ∈ 8, 16, Mh’ is used to assign a mode set for the subsequent AMP mode decision. The mode set contains

20

Page 21: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

none of the AMP modes if Mh’ ∈ Skip, Merge, half of the AMP modes if Mh’ ∈ PART_2N×N, PART_N×2N, and all AMP modes if Mh’ ∈ PART_2N×2N. After the AMP modes, the encoder evaluates the Intra mode and resolves the best mode (Mh).

The HEVC encoder takes advantage of a low-complexity merge mode only testing in the AMP mode evaluation if Mh’ and the coding mode of the parent CU (Mh-1) meets the conditions [47]. With N = 32, the encoder restricts the assessment of the AMP modes to the merge mode, so its flowchart for N = 32 converges to that for N = 4 as shown in figure 16. The HEVC encoder also offers three optional early termination mechanisms to speed-up its mode decision: early CU (ECU) [49], early skip detection (ESD) [48], and CBF fast mode (CFM) [50], where CBF denotes a coded block flag. The ECU monitors Mh at the end of each quadtree depth h and terminates the mode decision process for the further depths (h + 1 … hmax) if Mh = Skip. When the ESD is enabled for early mode decision, the evaluation of PART_2N×2N is conducted before the Skip/Merge modes in order to discover its motion information and the CBFs at the earliest possible stage of each quadtree depth h. If PART_2N×2N at depth h contains only luma/chroma PBs whose CBF = 0 and no supplementary motion information, ESD sets Mh = Skip and terminates the remaining mode evaluations at depths h … hmax. CFM monitors CBFs of the Square, SMP, and AMP modes at each quadtree depth h. If an evaluated mode at depth h contains only PBs having CBF = 0, it is selected as Mh without evaluating the remaining modes at that depth and the mode decision proceeds to depth h + 1.

3.3 Inter-prediction PU Mode Decision Complexity The inherent data structures defined in the HEVC standard can be highlighted as one of the main causes of its high complexity [51]. Frames are now divided into treeblocks, which can be subdivided into Coding Units (CU). Furthermore, CUs can be recursively partitioned, forming a quad-tree structure, which is illustrated in figure 18. The CU quad-tree decision is originally performed using the Rate- Distortion Optimization (RDO) decision [52], which evaluates the bitrate and the objective quality (generally expressed by the PSNR, in dB) produced by every possible configuration. In other words, the prediction, residual coding and entropy coding stages are performed for every possible CU partition. During the prediction stage, each CU is once again divided into Prediction Units (PU), introducing a PU decision inside each node of the CU decision tree. Each PU decision also considers the RDO as decision strategy for mode selection [51].

Figure 20 CU partitioning [53]

21

Page 22: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

In the proposed method encoding time is heuristically accelerated by acting on a different level in the CU quadtree decision: the PU level, more specifically in the interprediction step. HEVC defines that each PU must be predicted for the three different modes available: skip, intra and inter-prediction. Analyses point that the inter-frame prediction consumes from 60% up to 90% of the total encoding time [53]. Such complexity is derived from motion estimation, the main tool in the inter-frame prediction, which performs exhaustive searches in order to find the best match between the current block of pixels that is being encoded and an area of pixels from one or more reference frames as shown in figures 19 and 20. These results indicate immense degrees of optimizations, since each CU node in the quad-tree must call ME for each possible PU partition.

Figure 21 Encoder complexity of HEVC [54]

Figure 22 Complexity distribution between ME and skip/merge mode [54]

3.4 FAST Algorithm for Inter-prediction Mode Decision

3.4.1 Skip Mode SKIP mode is the dominant mode at low bitrates (high QPs) in the HEVC, and the

distribution is similar to that in the previous video coding standard, H.264/AVC. Once SKIP mode is pre-defined, the variable-sized ME computation of a CU can be entirely skipped. Usually the decision to use SKIP mode is delayed until the RD costs of all other modes (inter modes and intra modes) have been calculated and SKIP mode is found to have the minimum RD cost. Based on this consideration, early SKIP mode decision strategy is proposed for HEVC to avoid the entire variable-sized ME process as well as evaluations on Intra modes.

22

Page 23: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

3.4.2 Prediction Size Based Mode Decision At each depth level, various prediction mode sizes are used in the prediction procedures. Large sizes are always chosen for CUs in the homogeneous region, and small sizes are chosen for CUs with active motion or rich texture [55].

A mode complexity (MC) parameter of the current CU can be defined according to the mode context of the available predictors in Ω (mode complexity- MC) as follows [1]:

MC= ∑i=1

M

w i .k i . α i

∑i=1

M

k i . α i

where M is the number of CUs equal to 8 and wi is the mode-weight factor. Only the prediction modes of those available adjacent CUs in Ω (mode complexity) will be used. Hence, ki is set to 1, when the CUi is available; otherwise, kj is set to "0". The value αi is the CU-weight factor, which is assigned to the adjacent CUs according to their correlation from the current CU. The stronger correlation between the neighboring CU and the current CU, the larger the weight should be assigned. Experiments are conducted to compute the correlation degree of neighboring CUs and the current CU [1].

Generally, the more complexity the CU has, the larger the value of the mode complexity will be. Based on the mode complexity, each CU is classified as simple mode, normal mode, or complex mode as follows [1]:

where, Tr0 is equal to the mode-weight factor of Inter 2Nx2N or Intra 2Nx2N, i.e., 1, and Tr1 is equal to the mode-weight factor of Inter NxN, i.e., 4.

For a CU with simple mode, the area covered by the current CU and its adjacent CUs usually contain slow-motion content or homogeneous texture, and the optimal prediction modes of its adjacent CUs are usually within the Inter 2N×2N, Intra 2N×2N, merge mode and the SKIP mode. Therefore, a CU with a simple mode only a needs ME of size 2N×2N that performs Intra 2N×2N prediction. For a CU with complex mode, most of its adjacent CUs choose small-size inter modes or Intra N×N, and thus it is not necessary to perform ME on sizes of 2N×2N, 2N×N and N×2N. Thus, inter-mode decision for HEVC jointly utilizes inter-level and spatio-temporal correlations [1].

3.4.3 RD Cost Based Mode Decision In HM, the mode decision process exhaustively searches the best mode from

candidate modes according to the RD optimization scheme. It is analyzed in [1] [56] that

23

Page 24: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

the majority of best prediction modes after mode decision in inter frames are usually with large size modes such as SKIP mode, Merge mode and Inter 2Nx2N, which implies that small-sized ME and intra prediction are unnecessary in most cases. So, it is better to have a proper early termination (ET) strategy in the midway of fast mode decision algorithm. Basically, ET strategies are all threshold-based, and most of ET threshold determination algorithms are based on the RD cost. Meanwhile, a large amount of inter level, spatial and temporal correlations exists in the coding procedure of the HEVC. Thus, the resultant RD cost information of the current CU is closely related to that of its adjacent CUs. Thus, the RD cost of the current CU (RDcostpre) can be predicted using the minimal RD cost values from the available predictors in Ω as follows [1]:

RDcostpre=¿¿

where Rdcosti are the RD cost of CUi, and Rdcost7 and Rdcost8 are the RD costs of parent CUs in the two upper depth levels. α i and ki are defined as the same as those motion complexity in section 3.4.2. The threshold (Thr) is determined based on the minimum value among RDcostpre and RD costs of spatial neighboring predictors in Ω [1]:

Thr = λ * min Rdcost1, Rdcost2, Rdcost3, Rdcost4, RDcostpre

where λ is the adjustment parameter. To set the value of λ, the signaling information CBF in the HEVC syntax should be considered, which specifies the non-zero transform coefficient levels. The CBF will be generated after checking each prediction mode. If the CBF of a test mode equals to zero, the current CU is an all-zero block. In this case, the adjustment parameter is reset with 1.25 x λ. When the minimal RD cost value is smaller than threshold (Thr), the mode decision procedure is terminated in the proposed method, and small-sized ME and intra-prediction are skipped.

3.4.4 Algorithm for Mode Decision Based on the strategies of early SKIP mode decision, prediction size based mode decision and RD cost based mode decision, the proposed adaptive inter-mode decision algorithm for HEVC is determined as below [1]:

Step 1: Start mode decision for CUs in inter frames

Step 2: Derive coding information of parent CUs in the upper depth levels and spatially/temporally adjacent CUs.

Step 3: Test SKIP mode and Merge mode. If the current CU meets one of the three early SKIP mode decision conditions in section 3.4.1, go to Step 7.

Step 4: Compute MC from section 3.4.2. When the current CU is with simple mode, the candidate mode is Inter 2Nx2N and Intra 2Nx2N; when the current CU is with complex mode, the candidate modes include Inter NxN, Inter 2NxnU, Inter 2NxnD, Inter nLx2N, Inter nRx2N, and Intra NxN (available for the smallest CUs); otherwise, the candidate modes include all prediction modes.

24

Page 25: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

Step 5: Compute Threshold (Thr) for early termination from section 3.4.2.

Step 6: Loop each candidate inter mode and intra mode:

Step 6.1: Perform ME and get RD cost and CBF of the current mode;

Step 6.2: If the RD cost value is smaller than threshold (Thr), terminate the mode decision procedure and go to Step 7.

End Loop

Step 7: Determine the best prediction mode for the current CU.

3.5 Summary This chapter outlines the description of inter-prediction and existing mode decision performed in HM software along with a description of the fast adaptive termination of the mode decision algorithm for inter-prediction in the HEVC standard. Chapter 4 outlines the experimental setup, results and conclusions based on the algorithm discussed in [1].

25

Page 26: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

4. Results

4.1 Test Conditions In order to evaluate the performance of the proposed mode decision algorithm,

the algorithm is implemented on the HEVC reference software (HM 16.0) [47]. The random access and low delay profiles are used for coding with GOP (Group of pictures) chosen as 8. Coding tree block size is fixed at 64x64 pixels for luma with maximum depth of 4 resulting in minimum CU size of 8x8 pixels for luma. The proposed algorithm is evaluated for QPs 27 and 32 using following test sequences recommended by JCT-VC.

Table 1 Test Sequences UsedNo. Sequence Name Resolution Type No. of frames1. BQMall 832x480 WVGA 1002. Johnny 1280x720 SD 1003. ParkScene 1920x1080 HD 100

Figure 23: BQMall

Figure 24: Johnny

26

Page 27: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

Figure 25: ParkScene

4.2 Encoding Time Gain On implementing the algorithm proposed in [1], encoding time for the following test sequences is reduced by 30-55% as compared to the unmodified encoding HM16.0. The following test results show the difference in encoding time of original HM16.0 and the proposed strategy (ESMD) for different quantization parameter (QP) values and for different configuration files as suggested by JCTVC [46].

Encoding time (s) for Low Delay configuration QP=32Test Sequences Original ESMD Encoding time gain %

BQMall 2030.45 1429.085 29.61732621Johnny 2674.56 899.987 66.35009123

ParkScene 16042.2 5774.367 64.0051382Table 2 Encoding time for sequences for Low Delay configuration QP=32

BQMall Johnny ParkScene0

2000400060008000

1000012000140001600018000

2030.45 2674.56

16042.198

1429.085 899.987

5774.367

Encoding time for different sequences - Low delay QP =32

Original ESMD

Test Sequences

Enco

ding

tim

e (s

)

Figure 26: Encoding time for sequences for Low Delay configuration QP=32

Encoding time (s) for Random Access configuration QP=32

Test Sequences Original ESMD Encoding time gain %BQMall 1439.809 795.065 44.77982844Johnny 2396.66 1095.498 54.2906378

ParkScene 8631.249 3857.257 55.31055818Table 3 Encoding time for sequences for Random access configuration QP=32

27

Page 28: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

BQMall Johnny ParkScence0

2000

4000

6000

8000

10000

1439.8092396.66

8631.249

795.065 1095.498

3857.257

Encoding time for different sequences - Random Access QP=32

Original ESMD

Test Sequences

Enco

ding

Tim

e (s

)

Figure 27: Encoding time for sequences for Random access configuration QP=32

Encoding time (s) for Low Delay configuration QP=27Test Sequences Original ESMD Encoding time gain %

BQMall 2183.651 1741.579 20.244627Johnny 3273.547 1656.938 49.38401679

ParkScene 10623.61 7476.184 29.62669556Table 4 Encoding time for sequences for Low Delay configuration QP=27

BQMall Johnny ParkScence0

2000

4000

6000

8000

10000

12000

2183.6513273.547

10623.608

1741.579 1656.938

7476.184

Encoding time for different sequences - Low delay QP =27

Original ESMDTest Sequences

Enco

ding

Tim

e (s

)

Figure 28: Encoding time for sequences for Low Delay configuration QP=27

Encoding time (s) for Random Access configuration

28

Page 29: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

QP=27Test Sequences Original ESMD Encoding time gain %

BQMall 1591.673 1185.844 25.49700849Johnny 2324.703 905.944 61.02968852

ParkScene 7189.537 4980.36 30.72766716Table 5 Encoding time for sequences for Random access configuration QP=27

BQMall Johnny ParkScence0

10002000300040005000600070008000

1591.6732324.703

7189.537

1185.844 905.944

4980.36

Encoding time for different sequences - Random Access QP=27

Original ESMD

Test Sequences

Enco

ding

Tim

e (s

)

Figure 29: Encoding time for sequences for Random access configuration QP=27

BQMall Johnny ParkScene0

10

20

30

40

50

60

70

29.6173

66.35 64.005

44.7798

54.2906 55.3105

Encoding time savings for QP=32

Low Delay Random Access

Test Sequences

Enco

ding

Tim

e sa

ving

s (%

)

Figure 30 Encoding time savings for different test sequences and QP=32

29

Page 30: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

BQMall Johnny ParkScene0

10

20

30

40

50

60

70

20.244

49.384

29.626625.497

61.029688

30.72766

Encoding time savings for QP=27

Low Delay Random Access

Test Sequences

Enco

ding

Tim

e sa

ving

s (%

)

Figure 31 Encoding time savings for different test sequences and QP=27

4.3 BD-PSNR and BD BitrateTo objectively evaluate the coding efficiency of video codecs, Bjontegaard Delta PSNR (BD-PSNR) and Bjontegaard Delta bitrate (BD-Bitrate) are used. Based on the rate-distortion (R-D) curve fitting, BD-PSNR is able to provide a good evaluation of the R-D performance. BD-PSNR is a curve fitting metric based on rate and distortion of the video sequence. However, this does not take into account the complexity of the encoder, but the BD metric tells a lot about the quality of video sequence [45] [47]. The following results show a plot of BD-PSNR and BD bitrate for different test sequences versus for the different QP values.

BD-PSNR values (%) BQMall Johnny ParkScene

QP= 27 -0.36 -0.2383 -0.54QP= 32 -0.49 -0.4311 -0.754

Table 6 BD-PSNR values for different test sequences and QPs

30

Page 31: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

BQMall Johnny ParkScene

-0.8-0.7-0.6-0.5-0.4-0.3-0.2-0.1

0

-0.36

-0.2383

-0.54-0.49

-0.4311

-0.754

BD-PSNR for different test sequences for different QPs

QP= 27 QP= 32

Test Sequences

BD P

SNR

(%)

Figure 32 BD-PSNR values for different test sequences and QPs

BD-Bitrate values (%) BQMall Johnny ParkScene

QP= 27 0.7861 0.2071 0.592QP= 32 2.09 0.4446 1.1516

Table 7 BD-Bitrate values for different test sequences and QPs

BQMall Johnny ParkScene0

0.5

1

1.5

2

2.5

0.7861

0.2071

0.592

2.09

0.4446

1.1516

BD-Bitrate for different test sequences for different QPs

QP= 27 QP= 32

Test Sequences

BD B

itrat

e (%

)

Figure 33 BD-Bitrate values for different test sequences and QPs

31

Page 32: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

4.4 RD Plot

QP

JohnnyLD RA

Original ESMD Original ESMDBitrate (kbps)

PSNR (dB)

Bitrate (kbps)

PSNR (dB)

Bitrate (kbps)

PSNR (dB)

Bitrate (kbps)

PSNR (dB)

27 603.2688 42.19 601.8 42.1801 837.2784 42.7538 836.0448 42.753632 276.62 40.15 274.45 40.1341 434.98 40.78 434.9654 40.77

Table 8 Bitrate and PSNR values for different profiles and QPs

400 450 500 550 600 650 700 750 800 850 90039.5

40

40.5

41

41.5

42

42.5

43

42.7536

40.77

42.7538

40.78

RD plot for Johnny (LD)

OriginalESMD

Bitrate (kbps)

PSNR

(dB)

Figure 34 RD plot for Johnny LD profile

32

Page 33: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

400 450 500 550 600 650 700 750 800 850 90039.5

40

40.5

41

41.5

42

42.5

43

42.7536

40.77

42.7538

40.78

RD plot for Johnny (RA)

OriginalESMD

Bitrate (kbps)

PSNR

(dB)

Figure 35 RD plot for Johnny RA profile

BQMallLD RA

QP Original ESMD Original ESMD

Bitrate(kbps)PSNR (dB) Bitrate(kbps)

PSNR (dB) Bitrate(kbps)

PSNR (dB) Bitrate(kbps)

PSNR (dB)

27 2624.1504 37.5327 2623.7232 37.52 2534.256 37.9254 2529.72 37.919932 1542.12 34.6542 1539.982 34.125 1654.23 35.784 1655.735 35.2698

Table 9 Bitrate and PSNR values for different profiles and QPs

400 450 500 550 600 650 700 750 800 850 90039.5

40

40.5

41

41.5

42

42.5

43

42.7536

40.77

42.7538

40.78

RD plot for BQMall (LD)

OriginalESMD

Bitrate (kbps)

PSNR

(dB)

Figure 36 RD plot for BQMall LD profile

33

Page 34: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

400 450 500 550 600 650 700 750 800 850 90039.5

40

40.5

41

41.5

42

42.5

43

42.7536

40.77

42.7538

40.78

RD plot for BQMall (RA)

OriginalESMD

Bitrate (kbps)

PSNR

(dB)

Figure 37 RD plot for BQMall RA profile

ParkSceneLD RA

QP Original ESMD Original ESMDBitrate (kbps)

PSNR (dB)

Bitrate (kbps)

PSNR (dB)

Bitrate (kbps)

PSNR (dB)

Bitrate (kbps)

PSNR (dB)

27 3649.4074 37.72 3647.14 37.71 3584.69 38.28 3584.9683 38.275732 1556.84 35.15 1555.13 35.13 1655.55 35.81 1653.15 35.8

Table 10 Bitrate and PSNR values for different profiles and QPs

400 450 500 550 600 650 700 750 800 850 90039.5

4040.5

4141.5

4242.5

4342.7536

40.77

42.7538

40.78

RD plot for ParkScene (LD)

OriginalESMD

Bitrate (kbps)

PSNR

(dB)

Figure 38 RD plot for ParkScene LD profile

34

Page 35: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

400 450 500 550 600 650 700 750 800 850 90039.5

40

40.5

41

41.5

42

42.5

43

42.7536

40.77

42.7538

40.78

RD plot for ParkScene (RA)

OriginalESMD

Bitrate (kbps)

PSNR

(dB)

Figure 39 RD plot for ParkScene RA profile

35

Page 36: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

5. Conclusions and Future Work

5.1 Conclusions In this project, upon implementing the algorithm ESMD [1] and comparing with the original HM software 16.0, coding time gain in the range of 30%-60% for low delay profile and 40%-55% for random access profiles has been obtained for the different test sequences. A negligible loss of coding efficiency (0.78%–1.88% BDBR increase) is observed.

5.2 Future WorkNeural networks [55] can also be used for mode decision for fast inter-prediction. Networks can be trained with a number of test sequences and subsequently these networks can be used for mode decision in which the necessity of calculating RD cost for different modes can be eliminated.

36

Page 37: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

REFERENCES

[1] L. Shen, Z. Zhang and Z. Liu, “Adaptive inter-mode decision for HEVC jointly utilizing inter-level and spatiotemporal correlations”, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 24, pp. 1709-1722, October 2014.

[2] T. Wiegand et al, “Overview of the H.264/AVC video coding standard”, IEEE Transactions on Circuits and Systems for Video Technology, vol.13, no.7, pp. 560-576, March 2003. [3] M. Karczewicz et al., “A hybrid video coder based on extended macroblock sizes, improved interpolation, and flexible motion representation,” IEEE Transactions on Circuits and Systems for Video Technology, vol. 20, no. 12, pp. 1698–1708, December 2010.

[4]HEVC tutorial http://www.apsipa2013.org/wpcontent/uploads/2013/09/Tutorial_8_NextGenerationVideoCoding_Part_2.pdf

[5] G. J. Sullivan et al, “Overview of the High Efficiency Video Coding (HEVC) Standard”, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 22, No. 12, pp. 1649-1668, December 2012.

[6] Y. Lee and Y. Lin, “Zero-block mode decision algorithm for H.264/AVC,” IEEE Transactions on Image Processing, vol. 18, no. 3, pp. 524–533, March 2009.

[7]. B. Bing, “Next-Generation Video Coding and Streaming,” Wiley, Hoboken, NJ, 2015.

[8] A. Asghar, et al, “Motion Estimation and Inter Prediction Mode Selection in HEVC,” Recent Researches in Telecommunications, Informatics, Electronics and Signal Processing, March 2013.

[9] D. Marpe et al, “The H.264/MPEG4 advanced video coding standard and its applications”, IEEE Communications Magazine, Vol. 44, pp. 134-143, August 2006.

[10] HEVC tutorial by I.E.G. Richardson: http://www.vcodex.com/h265.html

[11] C. Fogg, “Suggested figures for the HEVC specification”, ITU-T / ISO-IEC Document: JCTVC J0292r1, July 2012.

[12] B. Bross et al, “High Efficiency Video Coding (HEVC) Text Specification Draft 10”, Document JCTVCL1003, ITU-T/ISO/IEC Joint Collaborative Team on Video Coding (JCT-VC), March 2013 available on http://phenix.it-sudparis.eu/jct/doc_end_user/current_document.php?id=7243

[13] JVT Draft ITU-T recommendation and final draft international standard of joint video specification (ITU-T Rec. H.264-ISO/IEC 14496-10 AVC), March 2003, JVT-G050 available on http://ip.hhi.de/imagecom_G1/assets/pdfs/JVT-G050.pdf

[14] M. Wein, “High Efficiency Video Coding: Coding Tools and Specification”, Springer, 2014.

37

Page 38: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

[15] H. Wang, S. Kwong, and C. Kok, “An efficient mode decision algorithm for H.264/AVC encoding optimization,” IEEE Transactions on Multimedia, vol. 9, no. 4, pp. 882–888, June 2007.

[16] M. Jakubowski and G. Pastuszak, “Block-based motion estimation algorithms-a survey,” Journal of Opto-Electronics Review, vol. 21, pp 86-102, March 2013. http://link.springer.com/article/10.2478%2Fs11772-013-0071-0#page-1

[17] HEVC tutorial by I.E.G. Richardson: http://www.vcodex.com/h265.html

[18] N. Purnachand, et al, “Fast motion estimation algorithm for HEVC,” IEEE second International Conference on Consumer Electronics – Berlin, pp. 34–37, September 2012.

[19] HM Software Manual - https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/

[20] HEVC white paper-Ateme: http://www.ateme.com/an - introduction - to - uhdtv - and - hevc

[21] Tortoise SVN: http://tortoisesvn.net/downloads.html

[22] Multimedia processing course website: courses: EE 5359: http://www.uta.edu/faculty/krrao/dip/

[23] U.S.M. Dayananda, “Study and Performance comparison of HEVC and H.264 video codecs” Final project report , EE Dept., UTA, Arlington, TX, Dec. 2011 available on http://www.uta.edu/faculty/krrao/dip/Courses/EE5359/index_tem.html

[24] V. Sze, M. Budagavi and G.J. Sullivan (Editors), “High Efficiency Video Coding (HEVC) Algorithms and Architectures” Springer, 2014.

[25]Reference for inter-prediction- http://www.uta.edu/faculty/krrao/dip/Courses/EE5359/KushalShah_Thesis.pdf

[26] Reference to HEVC Basics- http://www.uta.edu/faculty/krrao/dip/Courses/EE5359/index_tem.html FinalRep presented by Siddaraj Basawaraj Pratapur

[27] C. E. Rhee et al, “A Survey of Fast Mode Decision Algorithms for Inter-Prediction and Their Applications to High Efficiency Video Coding”, IEEE Transactions on Consumer Electronics, vol. 58, no. 4, pp 1375-1383, December. 2012.

[28] W. Zhu et al, "Screen Content Coding Based on HEVC Framework," IEEE Transactions on Multimedia, vol.16, no.5, pp.1316-1326, August 2014.

[29] F. Bossen, B. Bross, K. Suhring, and D. Flynn, “HEVC complexity and implementation analysis,” IEEE Transactions on Circuits and Systems for Video Technology., vol. 22, no. 12, pp. 1685–1696, December 2012.

[30] Picture Quality for different pixel format -https://library.creativecow.net/solorio_marco/BMD-Cinema-Camera-holds-its-own/1

38

Page 39: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

[31] C. Fogg, “Suggested figures for the HEVC specification”, ITU-T / ISO-IEC Document: JCTVC J0292r1, July 2012.

[32] Tutorials---> X. Wang et al, “Paralleling variable block size motion estimation of HEVC on CPU plus GPU platform”, IEEE International Conference on Multimedia and Expo workshop, 2013.

[33] G. Sullivan et al, “Standardized Extensions of High Efficiency Video Coding (HEVC)”, IEEE Journal of selected topics in Signal Processing, Vol. 7, No. 6, pp. 1001-1016, December, 2013.

[34] K.R. Rao, D.N. Kim and J.J. Hwang, “Video coding standards: AVS China, H.264/MPEG-4 Part10, HEVC, VP6, DIRAC and VC-1”, Springer, 2014.

[35] M. Kavanagh, “H.265/HEVC Overview and Comparison with H.264/AVC,” Sold by: Amazon Digital Services, Inc. August, 2015.

[36] Test sequences---> http: //media.xiph.org/video/derf/

[37] Test sequences---> http://trace.eas.asu.edu/yuv/

[38] Tutorials---> N. Ling, “High efficiency video coding and its 3D extension: A research perspective,” Keynote Speech, ICIEA, Singapore, July 2012.

[39] Link to access the JCT-VC documents http://phenix.int-evry.fr/jct/doc_end_user/current_meeting.php?id_meeting=166&search_id_group=1&search_sub_group=1

[40] Tutorials - D. Grois, B. Bross and D. Marpe, “HEVC/H.265 Video Coding Standard (Version 2) including the Range Extensions, Scalable Extensions, and Multiview Extensions,” IEEE International Conference on Image Processing, Quebec City, Canada, September 2015. This tutorial is for personal use only. Password: a2FazmgNK

[41] S. Lui et al, “Video Prediction Block Structure and the Emerging High Efficiency Video Coding Standard”, IEEE proceedings on Signal & Information Processing Association Annual Summit and Conference, Asia-Pacific, pp. 1-4, December 2012.

[42] G.J. Sullivan et al, “Efficient quadtree coding of images and video", IEEE Transactions on Image Processing, vol. 3, pp. 327-331, May 1994.

[43] P. Helle et al, “Block merging for quadtree-based partitioning in HEVC”, IEEE Transactions on Circuits and Systems for Video Technology, vol. 22, pp. 1720-1731, May 2012.

[44] K. Choi et al, “Fast coding unit decision method based on coding tree pruning for high efficiency video coding”, Proc. SPIE Optical Engineering, vol. 51, 030502 , March 2012.

[45] G. Bjontegaard, “Calculation of average PSNR differences between RD-curves”, Q6/SG16, Video Coding Experts Group (VCEG), 2-4 April. 2001.

[46] Z. Wang et al, “Image quality assessment: From error visibility to structural similarity”, IEEE Transactions on Image Processing, vol. 13, pp. 600-612, April 2004.

39

Page 40: 1. Objective of the project · Web viewIEC – International Electrotechnical Commission ISO – International Standards Organization ITU – International Telecommunication Union

[47] HMX.X, HEVC code: http://hevc.kw.bbc.co.uk/svn/jctvc-a124/branches/

[48] J. Yang et al, “Early SKIP detection for HEVC,” document JCTVC-G543, Geneva, Switzerland, November, 2011.

[49] K. Choi et al, “Coding tree pruning based CU early termination,” document JCTVC-F092, Torino, Italy, July 2011.

[50] R. H. Gweon et al, “Early termination of CU encoding to reduce HEVC complexity”, document JCTVC-F045, Torino, Italy, July 2011.

[51] JCT. Working Draft 3 of High-Efficiency Video Coding. JCTVCE603, 2011

[52] G. Sullivan et al, "Rate-Distortion Optimization for Video Compression", IEEE Signal Processing Magazine, vol. 15, pp.74-90, November, 1998.

[53] F. Sampaio et al, “Motion Vectors Merging: Low Complexity Prediction Unit Decision Heuristic for the Inter-prediction of HEVC Encoders”, IEEE International Conference on Multimedia and Expo (ICME), pp. 657 – 662, November, 2012

[54] A. Lee et al, "An efficient inter prediction mode decision method for fast motion estimation in HEVC", International Conference on ICT Convergence (ICTC), pp. 502- 505, 2013.

[55] X. Shen et al, “Fast coding unit size selection for HEVC based on Bayesian decision rule”, IEEE Picture Coding Symposium (PCS), pp. 453-456, May 2012.

40