H.266/VVC中的帧内子划分(Intra Sub-Partitions,ISP)

ISP (Intra Sub-Partitions)编码模式由LIP(Line-Based Intra)模式改进而来,主要是改正了之前LIP算法存在的一些硬件问题。

LIP

将亮度帧内预测块划分成一维(1-D)的子块或者行并逐行编码。即一个W×H的块可以被划分成H个(W×1)的横行或者是W个(1×H)的竖行。如下图:
H.266/VVC中的帧内子划分(Intra Sub-Partitions,ISP)_第1张图片
但是这样划分存在一些问题:
1、划分的子块内样点数小于16( VTM2.0中最小的亮度分量块样点数)。比如4×4的块会被划分成4个4×1的行。
2、较大的块采用这种模式复杂度太高。
3、由于样点使用光栅扫描存储,对于列子块(1×N)的情况可能更难实现。

ISP

根据块大小将块划分成2个或者4个子块。如下表所示:
H.266/VVC中的帧内子划分(Intra Sub-Partitions,ISP)_第2张图片
4×8和8×4的帧内子块划分方式:
H.266/VVC中的帧内子划分(Intra Sub-Partitions,ISP)_第3张图片
其余尺寸的帧内子块划分方式:
H.266/VVC中的帧内子划分(Intra Sub-Partitions,ISP)_第4张图片
这样一来每个子块的样点数都不会小于16。
对于每个子块,解码端对编码端传过来的残差信号进行熵解码,并经过反量化反变换后加上帧内预测信号就可以得到重建信号。然后进行下一个子块的重建。所有子块使用相同的帧内预测模式。
基于上述过程,ISP可以有两种处理顺序:正序(Normal Processing Order, NPO)和反序(Reversed Processing Order, RPO)。以竖直划分为例:正序就是子块从左往右处理,反序就是从右往左处理。
同时编码端还要传输一个标志位表明是否使用了ISP模式,如果使用还要进一步传输是竖直划分还是水平划分的标志。

你可能感兴趣的:(VVC技术研究)