HM学习心得--CU分割的认识

CU分割的认识

在研究HEVC帧内快速算法中,一定会遇到的一类算法就是对CU分割的优化。因此,对CU分割的认识就犹为重要。
首先,先介绍下CU分割的相关基础知识。CU包含一个亮度CB和两个色度CBs。CU可以分割成一个或4个PU和多个TU。在HEVC帧内编码预测中,默认的CU深度为0~3,对应的CU尺寸分别为64X64、32X32、16X16、8X8。大尺寸CU分割为小尺寸CU是以四叉树的结构进行的。(对CU更为详细的介绍请查阅“Overview of the High Efficiency Video Coding(HEVC) Standard”一文 )。
其次,了解下HM的CU分割与修剪过程。如下图1所示。首先,Depth=0,尺寸为64X64在CU先分割为四个32X32的子CUs,然后其中一个32X32的子CU继续分割为四个16X16的子CUs,以此类推,直到Depth=3,CU大小为8x8。然后,由下往上进行修剪。即,对四个8X8的CUs的RD cost求和(记为cost1),与对应上一级16X16的父CU的RD cost(记为cost2)比较,若cost1小于cost2则保留8X8的CU分割,否则继续往上修剪。图中每个CU的数字表示的是对应的处理顺序。

有了上述对CU分割的基本认识,对于代码的阅读就比较容易了。关键在于自己要多调试,对于有疑问的变量可以打印输出来观察看是否与理论的一致。通过对代码的调试与理论相结合,搞懂代码就不再是难事了。
另外,在CU快速决策算法中,经常的思路是利用某个统计变量来自适应决策CU的分割范围,即将CU的深度由原来的0~3,缩小一个或两个或三个等;或者提前终止某一层的CU继续往下分割。因此,这些算法的关键就在于找到代码中CU进一步分割的标志。在这个标志的地方自定义一个变量,当满足某一条件时变量为假,来终止CU的进一步分割。而对于不进行小尺寸的CU(如只进行2和3深度CU的遍历),同样自定义一个变量,当条件满足时变量为假,来跳过小尺寸CU的模式决策等相关过程。
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值