VVC帧内预测(五)ISP

帧内子块划分( Intra Sub-Partitions,ISP)会根据尺寸将亮度帧内预测块在水平或垂直方向上分为2个或4个子块。允许ISP划分的最小块尺寸是4x8或8x4。如果块等于4x8或8x4则划分为2个子块(VVC规定每个块至少要有16个样点),如果大于4x8或8x4则划分为4个子块。

块尺寸 子块数量
4x4 不划分
4x8和8x4 2
其他 4

下图是4x8或8x4块的ISP划分:

下图是大于4x8或8x4块的ISP划分:

每个子块通过将残差信号加上预测信号得到重建信号,其中残差信号通过熵解码、反量化、反变化得到。每个子块的重建信号可用于构建下一个子块的预测值。第1个子块是包含CU中左上角像素的子块,然后按照向下(水平划分)或向右(垂直划分)处理各个子块。所有子块共享同一种帧内预测模式。

下面是ISP与其他编码工具交互情况:

  • 当一个块使用MRL(多行预测)时,ISP关闭。

  • 熵编码系数组长度:使用ISP时,所有子块的熵编码都以16个样点为一组。这主要对ISP划分后子块某一维度小于4的情况有影响。其他情况下熵编码系数组都是4x4。如下表。

块尺寸 系数组尺寸
1xN,N≧16 1x16
Nx1,N≧16 16x1
2xN,N≧8 2x8
Nx2,N≧8 8x2
其他 4x4
  • CBF:使用ISP时默认至少有一个非零CBF子块。如果有n个子块,前n-1个都是0,则默认第n个为1。

  • MPM:使用ISP时,默认使用MPM里的预测模式,且MPM里不加入DC模式。如果ISP是水平划分则MPM里水平模式优先,垂直划分是垂直模式优先。

  • 变换核尺寸限制:当尺寸大于16时使用DCT-II变换。

  • PDPC:使用ISP时,默认关闭PDPC。

  • MTS flag:如果CU使用ISP,则该CU的MTS flag被置为0,且不用传到解码端。因此编码端不需要对每个子划分使用不同的变化进行RD计算。其变换模式会根据其帧内预测模式、处理顺序和块尺寸来进行选择。因此不需要在码流中传输其变换模式。例如对于wxh的子块,其水平变换模式和垂直变换依据下面的规则选择:

    • 如果w=1或h=1,不进行水平和垂直变换。

    • 如果w=2或w>32,进行DCT-II水平变换

    • 如果h=2或h>32,进行DCT-II垂直变换

    • 其他情况根据下表进行选择。

帧内预测模式 水平变换模式 垂直变换模式
planar,角度31,32,34,36,37 DST-VII DST-VII
DC,角度33,35 DCT-II DCT-II
角度2,4,6...28,30,39,41,43...63,65 DST-VII DCT-II
角度3,5,7...27,29,38,40,42...,64,66 DCT-II DST-VII

感兴趣的请关注微信公众号Video Coding

发布了87 篇原创文章 · 获赞 108 · 访问量 25万+

猜你喜欢

转载自blog.csdn.net/Dillon2015/article/details/103501126