Next Article in Journal
Multi-Granulation Entropy and Its Applications
Previous Article in Journal
Bootstrap Methods for the Empirical Study of Decision-Making and Information Flows in Social Systems
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Entropy-Based Fast Largest Coding Unit Partition Algorithm in High-Efficiency Video Coding

1
College of Information Engineering, North China University of Technology, Beijing 100144, China
2
Institute of Information Science, Beijing Jiaotong University, Beijing 100144, China
*
Authors to whom correspondence should be addressed.
Entropy 2013, 15(6), 2277-2287; https://doi.org/10.3390/e15062277
Submission received: 3 April 2013 / Revised: 22 April 2013 / Accepted: 30 May 2013 / Published: 6 June 2013

Abstract

:
High-efficiency video coding (HEVC) is a new video coding standard being developed by the Joint Collaborative Team on Video Coding. HEVC adopted numerous new tools, such as more flexible data structure representations, which include the coding unit (CU), prediction unit, and transform unit. In the partitioning of the largest coding unit (LCU) into CUs, rate distortion optimization (RDO) is applied. However, the computation complexity of RDO is too high for real-time application scenarios. Based on studies on the relationship between CUs and their entropy, this paper proposes a fast algorithm based on entropy to partition LCU as a substitute for RDO in HEVC. Experimental results show that the proposed entropy-based LCU partition algorithm can reduce coding time by 62.3% on average, with an acceptable loss of 3.82% using Bjøntegaard delta rate.

1. Introduction

As the next generation of video coding standards, high-efficiency video coding (HEVC) [1] aims to reduce bit rate in half with the same reconstructed video quality as H.264/AVC, which is thelatest-generation video coding. Many useful tools are adopted in HEVC, such as Sample Adaptive Offset, Motion Vector Merging, Merge Skip and Residual Quadtree Transform [2].
HEVC provides a larger coding unit (CU), which is fixed 16×16 size in H.264, and a more flexible quadtree structure. The CU sizes of HEVC are 128 × 128, 64 × 64, 32 × 32, 16 × 16, 8 × 8, and 4 × 4. One Largest Coding Unit (LCU) can be split into four equal-sized CUs, and one CU can be encoded or split into four equal-sized CUs [3]. This split only ends when the CU reaches the smallest CU. To find the optimized combination of CUs, the encoder has to fully search all possible CUs. Figure 1 shows an LCU partitioned into CUs. Whether or not a CU whose size is larger than smallest CU is encoded or split into four equal-sized CUs is decided by using a rate distortion optimization (RDO). This ergodic process searches and encodes all possible CUs to choose the CUs with the smallest rate distortion (RD) cost. Using a more flexible quadtree structure results in a more efficient encoder [5] and can bring coding gain by effectively adapting the diversity of picture content. According to [6], a new coding tree structure with a 64 × 64-sized LCU can bring nearly 12% bitrate reduction on the average compared with a 16 × 16-sized LCU.
Figure 1. Quadtree structure of HEVC.
Figure 1. Quadtree structure of HEVC.
Entropy 15 02277 g001
Figure 2 shows an image partitioned by H.264 and HEVC. In Figure 2b, the red lines represents the edge of LCUs (64 × 64) and the larger CU results in a more focused encoder [7]. The areas with lesser information content are partitioned into larger CUs. By contrast, the areas with more information content are partitioned into smaller CUs.
Although a larger CU can bring significant bitrate reduction, the HEVC encoder has to search for all possible CUs to obtain the optimized CUs, resulting in an extremely large computation complexity [8]. To find the optimal CUs, the computation burden is equivalent to encoding an LCU four times because the encoder has to encode the CUs with sizes 64 × 64, 32 × 32, 16 × 16, and 8 × 8. Given that an encoder creates the optimal partition plan only once, 75% of the computation burden is therefore wasted. The large burden computation is not appropriate for many applications of video coding, such as real-time application scenario. We thus proposed a new algorithm to avoid the large computational redundancy in encoding.
Some related proposals on complexity reduction for intra coding in HEVC. Cho [9] proposed a fast splitting and pruning method which performed in two complementary steps: (i) early CU split decision; and (ii) early CU pruning decision. Piao et al. [10] presented a rough mode decision (RMD) method to prescreen the most possible candidate modes for the intra prediction coding of HEVC by computing low-complexity RD cost. Shen [11] proposed a CU size decision algorithm, which collects relevant and computational-friendly features to assist decisions on CU splitting. These related works can only got a 50% coding time reduction at most, and none of them take the information content of CU into account of LCU partition.
Figure 2. Example of the CU partitioning of HEVC: (a) Partitioned by H.264 and (b) Partitioned by HEVC.
Figure 2. Example of the CU partitioning of HEVC: (a) Partitioned by H.264 and (b) Partitioned by HEVC.
Entropy 15 02277 g002
In this paper, we propose an entropy-based fast CU-sized decision algorithm to replace the RDO used in the quadtree structure. This paper is organized as follows: Section 2 briefly introduces the principle of proposed algorithm. In Section 3, we elaborate on the entropy-based fast CU-sized decision algorithm. Experimental results are shown in Section 4, and Section 5 concludes our study.

2. Principle of the Proposed Algorithm

This study shows that the CUs partitioned by RDO process closely relate to the information content of each CU. Figure 2b shows that the partition of LCUs is related to the information content. Given that Shannon entropy is the average unpredictability in a random variable, which is equivalent to its information content, this paper proposed a Shannon entropy [12] technique to replace the RDO in LCU partition.

3. Proposed CU-Sized Decision Algorithm

The proposed algorithm is introduced in this section. Figure 3 shows the flowchart of our proposed algorithm.
As introduced in the previous section, the key point of the proposed algorithm is to find the relationship between the selected CUs and the entropy of these CUs. Based on this point, the CUs partitioned by using the proposed algorithm can have maximum similarity to the optimized CUs, which is the aim of this study.
Figure 3. Flowchart of the proposed algorithm.
Figure 3. Flowchart of the proposed algorithm.
Entropy 15 02277 g003

3.1. Entropy of Each CU

This section shows the calculation of the CU-sized decision algorithm. The equation for the entropy is expressed as follows:
H ( x ) = i = 0 i = j p i log 2 p i
In this equation, H(x) is the entropy, p presents the probability of the factor i, and j is the number of factors. To obtain the information content of CUs, we calculated the entropy of all the possible CUs in an LCU. However, before the calculation, the background noise of the LCU was first dislodged. The background noise is the pixel value difference that should not exist among neighbor pixels. Figure 4 shows that the area is very smooth and the pixel values seem to be the same. However, because of the background noise, the pixel values slightly differed from one another, which resulted in an inaccurate description of the information content using entropy. To dislodge the background noise without high computation complexity, we used an anti-ground noise filter. We adopted 8 as the stepper to quantize all the 256 pixel values. Up to 32 (0–31) pixel values were left, which provided a good condition for the subsequent work.
Figure 4. Example of the anti-ground noise filter.
Figure 4. Example of the anti-ground noise filter.
Entropy 15 02277 g004
We then calculated the entropy of all possible CUs in the LCU. A total of 85 possible CUs were available in the LCU, including one 64 × 64-sized CU, four 32 × 32-sized CUs, sixteen 16 × 16-sized CUs, and sixty-four 8 × 8-sized CUs . We then counted the possibility of the appearance of each pixel in a CU. This possibility was used in the calculation of the entropy. The equation of the possibility count is expressed as:
p i = n i N   ( i = 0 , 1 , 31 )
where N is the number of pixels in a CU and ni is the number of the pixels whose values are i.
We then calculated the entropy of each CU using the following equation:
H ( x ) = i = 0 i = j p i log 2 p i   ( j = 31 )
A total of 85 values for the entropy were calculated, and the results were used as the base for the CU partition.

3.2. Threshold and Judgment of the Proposed Algorithm

Based on the theory in Section 2 and the entropy of all the possible CUs, we conducted several experiments to find the relation between the entropy of each CU and the CUs which were partitioned by RDO. To achieve maximum similarity between the proposed CUs and the optimized CUs, we established some rules and thresholds. Through our search, we found these principles to partition LCU:
  • If the entropy of the CU is extremely small, the CU is likely to terminate its partition.
  • If the entropy of the CU is extremely large, the CU is likely to be partitioned.
  • The CUs whose entropy is approximately the average of all the possible CUs typically appear in the final partitioning map.
Based on these rules, we searched for several thresholds. Taking every video sequence into the consideration, we count the relationship between the optimal CUs which is partitioned by HEVC and the corresponding entropy values. After that we count the entropy value of the CU which is split in HEVC. As we got two kinds of entropy values, we sort these entropy values separately. Then we use formulas (4)–(6) to calculate the threshold for CU partitioning:
T a = min ( E o p t i m a l 60 % , E s p l i t 10 % ) .
T b = max ( E o p t i m a l 10 % , E s p l i t 60 % ) .
T c = min ( | E A v e r a g e E o p t i m a l 90 % | , | E A v e r a g e E s p l i t 90 % | ) .
Ta, Tb, Tc, represent the thresholds for principle a, b, and c. Eoptimalxx% presents the top xx% entropy value in the sort ascending of optimal CU entropy values. Esplitxx% presents the bottom xx% entropy value in the sort ascending of split CU entropy values. For example, if there are 24 optimal CUs, 36 split CUs in a LCU, Eoptimal60% means the 14th entropy value in the sort ascending of optimal CU entropy value, Esplit60% means the 21st entropy value in the sort ascending of optimal CU entropy value. EAverage presents the average of all the entropy values in a LCU. The percentage values, 60%, 10%, 90%, are got with the consideration of the loss of BD-rate.
During our research, we found thresholds , which can provide the maximum similarity between the proposed CUs and optimized CUs are almost the same in most video sequences. So, with the consideration of every video sequence, we get the best thresholds:
  • CUs whose entropy is smaller than 1.2 will not be partitioned.
  • CUs whose entropy exceed 3.5 will be partitioned.
  • CUs whose entropy is 0.15 bigger or 0.15 smaller than the average entropy will not be partitioned.
We can distinguish whether a CU is split or not by determining the thresholds. Thus, we can partition an LCU right after we obtain the entropy values. Figures 5(a,b) show the difference between the proposed CUs and the optimized CUs. The parts with red lines in Figure 5(a) are the parts that did not match with the optimized CUs. Figures 5(a,b), as an example, show the similarity between proposed CUs and optimal CUs. Table 1 shows that the proposed algorithm obtained nearly 70% similarity to the partition of the RDO on average in HEVC. The similarity is calculated by formula (7):
S = n match N CU
NCU represents the number of CU in a LCU, nmatch represents the number of CU which matches the optimal CU.
Table 1. The similarity between proposed CUs and optimal CUs.
Table 1. The similarity between proposed CUs and optimal CUs.
Seq.NameSimilarity(%)
Traffic_2560×1600_30_crop69.3
ParkScene_1920×1080_2470.4
BQTerrace_1920×1080_6072.2
BQMall_832×480_6065.2
RaceHorses_832×480_3067.6
BQSquare_416×240_6071.6
BasketballPass_416×240_5070.2
BlowingBubbles_416×240_5065.1
RaceHorses_416×240_3070.6
Average69.1
Figure 5. (a) CU presentation of the sequence RaceHorsesC optimized by HM10.0 using the proposed algorithm. (b) CU presentation of the sequence RaceHorsesC optimized by HM10.0 with RDO.
Figure 5. (a) CU presentation of the sequence RaceHorsesC optimized by HM10.0 using the proposed algorithm. (b) CU presentation of the sequence RaceHorsesC optimized by HM10.0 with RDO.
Entropy 15 02277 g005

4. Experimental Results

Up to 300 frames of each sequence were coded to test the performance of the proposed algorithm, and the test condition is “All Intra–Main” (AI-Main) [13]. QP values are set to 22, 27, 32, 37. A computer with a 2.8 GHz core was used in this experiment. To fully determine the performance of the proposed algorithm, we used HM10.0 with 16 × 16-sized LCU for the comparison.
We used Equation 7 to measure the reduced coding time:
T = T HM 10.0 T Proposed T HM 10.0
THM10.0 is the coding time of HM10.0 with RDO, TProposed is the coding time of HM10.0 with the proposed algorithm, and △T stands for the time reduction.
Table 2 shows that on average, the coding time of HM10.0 resulted in a 62.0% reduction. The Bjøntegaard delta (BD) rate [13] exhibited a 3.68% loss. A 0.10% decrease at PSNR was also observed. Figure 6 shows the curves of HM10.0 with the proposed algorithm, HM10.0 and HM10.0 with 16 × 16-sized LCU. Figure 6 shows that the proposed curve was extremely near the curve of HM10.0 and was better than the curve of HM10.0 with small LCU (16 × 16).
Figure 6. Experimental results of “RaceHorsesC” (832 × 480) under different QP settings (22,27,32,37). (a) Y PSNR versus Bitrate; (b) U PSNR versus Bitrate; (c) V PSNR versus Bitrate.
Figure 6. Experimental results of “RaceHorsesC” (832 × 480) under different QP settings (22,27,32,37). (a) Y PSNR versus Bitrate; (b) U PSNR versus Bitrate; (c) V PSNR versus Bitrate.
Entropy 15 02277 g006
Table 2. Results for the proposed algorithm.
Table 2. Results for the proposed algorithm.
Proposed techniquesHEVC with 16x16 size LCU
Seq. NameY-BD-rate (%)Y-PSNR(%)U-BD-rate (%)U-PSNR (%)V-BD-Rate (%)V-PSNR(%)△T(%)Y-BD-rate (%)Y-PSNR (%)U-BD-rate(%)U-PSNR(%)V-BD-rate (%)V-PSNR(%)△T(%)
BasketballDrive3.3−0.132.3−0.071.6−0.0565.29.7−0.0920.0−0.0318.9−0.0567.6
BQTerrace3.2−0.071.7−0.031.9−0.0367.33.3−0.066.6−0.0514.2−0.0368.5
ParkScene3.8−0.121.9−0.061.3−0.0764.03.9−0.093.7−0.035.6−0.0267.1
Group Average3.43−0.111.97−0.0531.2−0.0565.95.63−0.0810.1−0.0412.9−0.03367.7
BasketballDrill3.6−0.071.3−0.041.7−0.0561.13.2−0.112.4−0.081.8−0.0868.7
BQMall3.7−0.102.1−0.072.0−0.0661.23.9−0.135.9−0.037.1−0.0366.2
PartyScene4.1−0.112.7−0.051.8−0.0359.64.5−0.091.1−0.051.6−0.0571.2
RaceHorsesC4.0−0.102.5−0.061.9−0.0563.24.3−0.114.9−0.045.4−0.0363.3
Group Average3.85−0.092.15−0.0551.85−0.047562.43.98−0.113.6−0.054.0−0.04867.35
BasketballPass3.4−0.122.3−0.102.1−0.0957.93.8−0.106.4−0.045.1−0.0470.3
BlowingBubbles4.4−0.132.2−0.111.7−0.0859.14.3−0.114.1−0.014.2−0.0164.5
BQSquare3.8−0.083.00.052.7−0.0456.23.9−0.090.5−0.050.6−0.0867.3
RaceHorses3.5−0.072.10.042.0−0.0459.63.7−0.082.2−0.022.1−0.0568.9
Group Average3.77−0.102.40.0752.13−0.062557.83.93−0.103.3−0.033.0−0.04567.75
Total Average3.68−0.102.17−0.0611.73−0.05362.04.51−0.105.67−0.046.63−0.04267.6

5. Conclusions

In this paper, we propose a new technology to partition LCU in HEVC. The proposed algorithm aims to highly reduce the computation complexity with an acceptable loss of BD rate. Based on the results shown, the proposed algorithm significantly reduced the coding time with an acceptable decrease in quality, therefore, entropy-based fast LCU partition is a topic worthy of further investigation.

Acknowledgements

This work is supported by the Natural National Science Foundation of China (No. 61103113 and No.61272051), Jiangsu Provincial Natural Science Foundation (BK2011455) and Beijing Municipal Education Commission General Program (KM201310009004).

Conflict of Interest

The authors declare no conflict of interest.

References

  1. Han, W.-J. Improved video compression efficiency through flexible unit representation and corresponding extension of coding tools. IEEE T. Circ. Syst. Vid. 2010, 12, 1709–1720. [Google Scholar] [CrossRef]
  2. I1-Koo, Kim. High efficiency video coding (HEVC) test model 10 (HM10) encoder description. In Proceedings of the 12th JCT-VC Meeting, Geneva, Switzerland, 14-23 January 2013; pp. 27–28.
  3. Bross, B. High efficiency video coding (HEVC) text specification draft 7. In Proceedings of the 5th JCT-VC Meeting, Geneva, Switzerland, 27 April–7 May 2012; pp. 34–39.
  4. Cassa, M.B. Fast rate distortion optimization for the emerging HEVC standard. In Proceedings of Picture Coding Symposium (PCS), Kraków, Poland, 7–9 May 2012; pp. 493–496.
  5. Han, W.-J. Improved video compression efficiency through flexible unit representation and corresponding extension of coding tools. IEEE T. Circ. Syst. Vid. 2010, 12, 1709–1720. [Google Scholar] [CrossRef]
  6. Kim, M.K.J. JCTVC-C067 TE9: Report on large block structure testing. In Proceedings of Third meeting of the Joint Collaborative Team on Video Coding (JCT-VC), Guangzhou, China, 7–15 October 2010; pp. 2–4.
  7. Kim, I. Block partitioning structure in the HEVC standard. IEEE T. Circ. Syst. Vid. 2012, 12, 1697–1706. [Google Scholar] [CrossRef]
  8. Sullivan, G.J.; Wiegand, T. Rate-distortion optimization for video compression. IEEE Signal Proc. Mag. 1998, 15, 74–90. [Google Scholar] [CrossRef]
  9. Cho, S. Fast CU splitting and pruning for suboptimal CU partitioning in HEVC intra coding. IEEE T. Circ. Syst. Vid. 2013, 2, 1–10. [Google Scholar] [CrossRef]
  10. Piao, Y.; Min, J.H.; Chen, J. Encoder improvement of unified intra prediction. In Proceedings of JCT-VC 3rd Meeting, Guangzhou, China, 7–15 October 2010; pp. 1–3.
  11. Zhao, L.; Zhang, L.; Ma, S.; Zhao, D. Fast mode decision algorithm for intra prediction in HEVC. In Visual Communications and Image Processing (VCIP), Proceedings of the 2011 IEEE, Tainan, Taiwan, 6-9 November 2011; pp. 1–4.
  12. Shunsuke, I. Information Theory for Continuous Systems; World Scientific: Singapore, Singapore, 1993; Volume 1, pp. 2–3. [Google Scholar]
  13. Bossen, F. JCT-VC-L1100: Common test conditions and software reference configurations. In Proceedings of JCT-VC 12th Meeting, Geneva, Switherland, 14–23 January 2013; pp. 2–4.

Share and Cite

MDPI and ACS Style

Zhang, M.; Qu, J.; Bai, H. Entropy-Based Fast Largest Coding Unit Partition Algorithm in High-Efficiency Video Coding. Entropy 2013, 15, 2277-2287. https://doi.org/10.3390/e15062277

AMA Style

Zhang M, Qu J, Bai H. Entropy-Based Fast Largest Coding Unit Partition Algorithm in High-Efficiency Video Coding. Entropy. 2013; 15(6):2277-2287. https://doi.org/10.3390/e15062277

Chicago/Turabian Style

Zhang, Mengmeng, Jianfeng Qu, and Huihui Bai. 2013. "Entropy-Based Fast Largest Coding Unit Partition Algorithm in High-Efficiency Video Coding" Entropy 15, no. 6: 2277-2287. https://doi.org/10.3390/e15062277

Article Metrics

Back to TopTop