视频处理系统中参考量化参数推导的方法与装置转让专利
申请号 : CN201780042173.1
文献号 : CN109479139B
文献日 : 2022-03-18
发明人 : 黄晗 , 陈庆晔 , 庄子德 , 黄毓文
申请人 : 联发科技股份有限公司
摘要 :
权利要求 :
1.一种视频数据处理方法,处理视频编码系统中的视频数据,其中根据划分方法将片中的颜色分量的视频数据分割为多个编码块,包括:接收与当前片中的当前编码块相关联的输入数据;
使用跟踪处理导出当前量化组的左上位置(xQg,yQg),其中该跟踪处理包括:根据分割类型和当前块的宽度以及该当前块的高度中的一个或两个跟踪和更新该当前块的位置(x0,y0),以及当该当前块的面积大于或等于增量量化参数信令的最小面积时,该左上位置(xQg,yQg)被确定为等于该位置(x0,y0);
通过该当前量化组的一个或多个相邻量化参数确定该当前编码块的参考量化参数,其中该当前量化组的该相邻量化参数由该当前量化组的该左上位置(xQg,yQg)确定;以及根据该当前编码块的该参考量化参数对该当前编码块进行编码或解码。
2.根据权利要求1所述的视频数据处理方法,其特征在于,如果该当前量化组的该一个或多个相邻量化参数中的任何一个不可用,则先前的量化参数用于替换不可用的相邻量化参数,并且基于该先前的量化参数决定该当前编码块的该参考量化参数。
3.根据权利要求2所述的视频数据处理方法,其特征在于,通过跟踪方法确定该先前的量化参数,并且该跟踪方法包括将该先前的量化参数初始化为先前编码的编码树单元的最后编码的量化参数或如果该先前编码的编码树单元不可用,将该先前的量化参数初始化为片量化参数,跟踪该先前的量化参数,并且在该当前编码块的量化参数的导出处理之后更新该先前的量化参数作为导出的量化参数。
4.根据权利要求3所述的视频数据处理方法,其特征在于,该导出过程根据该当前编码块的该左上位置(xCb,yCb)和该当前量化组的该左上位置(xQg,yQg)导出该导出的量化参数。
5.根据权利要求4所述的视频数据处理方法,其特征在于,通过亮度阵列的多个采样的预测量化参数、增量量化参数和比特深度来计算该导出的量化参数。
6.根据权利要求1所述的视频数据处理方法,当该分割类型是四叉树分割时,根据分割标志以及该当前块的高度和宽度两者来更新该当前块的该位置(x0,y0),并且更新的位置被检查是在该当前片内。
7.根据权利要求1所述的视频数据处理方法,其特征在于,当该分割类型是二叉树分割时,根据二叉树分割模式和该当前块的宽度及高度之一来更新该当前块的该位置(x0,y0),以及更新的位置被检查在该当前片内。
8.一种视频数据处理装置,处理视频编码系统中的视频数据,其中根据划分方法将片中的颜色分量的视频数据分割为多个编码块,该装置包括一个或多个电子电路,其被配置为:
接收与当前片中的当前编码块相关联的输入数据;
使用跟踪处理导出当前量化组的左上位置(xQg,yQg),其中该跟踪处理包括:根据分割类型和当前块的宽度以及该当前块的高度中的一个或两个跟踪和更新该当前块的位置(x0,y0),以及当该当前块的面积大于或等于增量量化参数信令的最小面积时,该左上位置(xQg,yQg)被确定为等于该位置(x0,y0);
通过该当前量化组的一个或多个相邻量化参数确定该当前编码块的参考量化参数,其中该当前量化组的该相邻量化参数由该当前量化组的该左上位置(xQg,yQg)确定;以及根据该当前编码块的该参考量化参数对该当前编码块进行编码或解码。
9.一种非挥发性计算机可读介质,存储导致装置的处理电路执行视频处理方法的程序指令,并且该方法包括:
接收与当前片中的当前编码块相关联的输入数据;
使用跟踪处理导出当前量化组的左上位置(xQg,yQg),其中该跟踪处理包括:根据分割类型和当前块的宽度以及该当前块的高度中的一个或两个跟踪和更新该当前块的位置(x0,y0),以及当该当前块的面积大于或等于增量量化参数信令的最小面积时,该左上位置(xQg,yQg)被确定为等于该位置(x0,y0);
通过该当前量化组的一个或多个相邻量化参数确定该当前编码块的参考量化参数,其中该当前量化组的该相邻量化参数由该当前量化组的该左上位置(xQg,yQg)确定;以及根据该当前编码块的该参考量化参数对该当前编码块进行编码或解码。
说明书 :
视频处理系统中参考量化参数推导的方法与装置
Quad‑tree plus binary tree structure”的PCT专利申请号为PCT/CN2016/092011的在先
申请的优先权。在此合并参考该PCT专利申请。
【技术领域】
对视频数据进行编码或解码。
【背景技术】
Coding,简写为JCT‑VC)小组开发的最新视频编码标准。HEVC标准依赖于基于块的编码结
构,其将每个片(slice)分成多个编码树单元(Coding Tree Unit,简写为CTU)。在HEVC主配
置文件中,CTU的最小和最大面积由序列参数集(Sequence Parameter Set,简写为SPS)中
指示的语法元素指定。根据光栅扫描顺序对片中的CTU进行处理。根据四叉树划分方法,将
每个CTU进一步递归地分成一个或多个编码单元(coding unit,简写为CU),以适应各种局
部特征。CU尺寸被限制为小于或等于SPS中指定的最小允许CU尺寸。图1中示出了用于CTU的
四叉树块分割结构的示例,其中实线表示CTU 100中的CU边界。
元(Prediction Unit,简写为PU)。图2显示了在HEVC标准中定义的八种PU划分类型。根据图
2所示的八个PU划分类型之一,每个CU分成一个、两个或四个PU。因为将相同的预测处理应
用于PU中的所有像素,并且预测相关信息以PU为基础传送到解码器,PU作为用于共享预测
信息的基本代表性块。在获得由预测处理产生的残差信号之后,属于CU的残差信号的残差
数据根据另一个四叉树块分割结构被分割为一个或多个变换单元(Transform Unit,简写
为TU),用于将残差数据变换成变换系数,用于压缩数据表示。图1中的虚线表示TU边界。TU
是用于对残差信号进行变换和量化的基本代表性块。对于每个TU,将具有与TU相同尺寸的
变换矩阵应用于残差信号以产生变换系数,并且这些变换系数被量化并以TU为基础传送到
解码器。
为指定分别与CTU、CU、PU和TU相关联的一个颜色分量的二维采样阵列。例如,CTU由一个亮
度(luminance/luma)CTB,两个色度(chrominance/chroma)CTB及其相关联的语法元素组
成。在HEVC系统中,通常将相同的四叉树块分割结构应用于亮度和色度分量,除非达到色度
块的最小尺寸。
垂直分割。虽然二叉树划分方法支持更多的划分形状,因此比四叉树划分方法更加灵活,但
为了在所有可能的划分形状中选择最佳划分形状,编码复杂度和信令开销增加。称为四叉
树二叉树(Quad‑Tree‑Binary‑Tree,简写为QTBT)结构的组合划分方法将四叉树划分方法
与二叉树划分方法相结合,平衡了两种划分方法的编码效率和编码复杂度。在图3A中示出
了示例性的QTBT结构,其中诸如CTU的大块首先被四叉树划分方法分割,然后被二叉树划分
方法分割。图3A示出了根据QTBT划分方法的块分割结构的示例,图3B示出了图3A所示的
QTBT块分割结构的编码树图。图3A和图3B中的实线表示四叉树分割,而虚线表示二叉树分
割。在二叉树结构的每个分割(即非叶)节点中,一个标志指示使用哪种分割类型(对称水平
分割或对称垂直分割),0表示水平分割,1表示垂直分割。通过省略从CU到PU和CU到TU的分
割,可以简化分割过程,因为二叉树块划分结构的叶节点是用于预测和变换编码的基本代
表性块。例如,图3A所示的QTBT结构将大块分割成多个较小的块,并且这些较小的块通过预
测和变换编码进行处理,而不进一步分割。
例性的三叉树划分类型包括水平中心侧(center‑side)三叉树划分和垂直中心侧三叉树划
分。三叉树划分方法可以通过允许垂直或水平四分之一划分来提供沿块边界更快地定位小
对象的能力。
特率。亮度分量的增量QP信令(signaling)由两个标志:使能标志cu_qp_delta_enabled_
flag和深度标志diff_cu_qp_delta_depth控制。使能标志cu_qp_delta_enabled_flag用于
指示增量QP信令被启用或禁用,深度标志diff_cu_qp_delta_depth用于设置增量QP信令的
最小面积。深度标志diff_cu_qp_delta_depth以高级语法呈现。大于或等于增量QP信令的
最小面积的编码块(CB)具有其自己的增量QP,而小于最小面积的CB与一个或多个其他CB共
享一个增量QP。具有其自己的增量QP的单个CB或共享相同增量QP的多个CB被称为量化单元
或量化组。图4示出了图1的CTU中的量化组的示例,其中CTU的面积为64×64,增量QP信令的
最小面积为16×16。图4中的粗实线表示量化组的边界,实线表示CU边界,虚线表示TU边界。
一个量化组中的多个CU共享相同的增量QP。
则不可用的QP被解码顺序中的先前编码的量化组的先前的QP替代。如果先前的编码量化组
不可用,则诸如片QP的默认QP被用作前一个QP。
来确定。在图4中,使当前图像的左上亮度采样的坐标为(0,0),将当前亮度编码块46的左上
角亮度采样460的坐标设为(xCb,yCb)。当前亮度编码块46在当前量化组44内。位置(xQg,
yQg)指定相对于当前画面的左上角亮度采样当前量化组44的左上角亮度采样440。将左上
角亮度采样440的水平位置xQg设定为等于xCb–(xCb&((1<
Log2MinCuQpDeltaSize)–1)),其中Log2MinCuQpDeltaSize表示增量QP信令的最小面积的
log 2值。在导出当前量化组44的左上位置(xQg,yQg)之后,使用当前量化组44的z扫描顺序
索引来导出先前编码量化组42的z扫描顺序索引。例如,解码顺序中的先前编码量化组42由
当前量化组的z扫描顺序索引减去1导出。
【发明内容】
分量的视频数据划分为多个CB。颜色分量的示例是亮度分量和色度分量。划分方法的一个
例子首先通过四叉树划分视频数据,然后通过二叉树划分或三叉树划分进行分割。所述方
法和装置包括由编码器或解码器接收在当前片中与当前CB相关联的输入数据。编码器或解
码器使用递归处理或跟踪处理导出包括当前CB的当前量化组的左上位置(xQg,yQg)。当前
CB的参考QP由当前量化组的一个或多个相邻QP确定,并且当前量化组的相邻QP由当前量化
组的左上位置(xQg,yQg)确定。
位置(xQg,yQg)等于当前CB的左上位置(xCb,yCb)。递归处理还包括检查当前CB是否是四叉
叶节点块,或者包含当前CB的当前四叉树叶节点块的面积是否小于增量QP信令的最小面
积,如果检查结果是肯定的,则使用左上位置(xCb,yCb)和增量QP信号的最小面积导出左上
位置(xQg,yQg)。否则,将当前递归的位置(x0,y0)初始化为包含当前CB的当前四叉树叶节
点块的左上位置(xCqt,yCqt),并且位置(x0,y0)根据到当前递归的分割标志递归更新,直
到位置(x0,y0)等于当前CB的左上位置(xCb,yCb)为止。如果当前递归的面积大于或等于增
量QP信令的最小面积,则左上位置(xQg,yQg)被更新为等于当前递归的位置(x0,y0)。使用
当前量化组的导出左上位置(xQg,yQg)的实施例来确定相邻块的相邻QP,例如当前量化组
的左邻近块的左QP和当前量化组的相邻块的上方QP。基于相邻块的相邻QP计算参考QP。
Log2MinCuQpDeltaSize)‑1),且yQg=yCb‑(yCb&((1<
Log2MinCuQpDeltaSize<
块的面积的log 2值log2CqtSize导出的:xCqt=(xCb>>log2CqtSize<
CB的编码树块(CTB)。当当前块的面积大于或等于增量QP信令的最小面积时,左上位置
(xQg,yQg)被确定为等于位置(x0,y0)。然后,通过跟踪过程导出的左上位置(xQg,yQg)用于
确定当前CB的参考QP。例如,编码器或解码器根据左上位置(xQg,yQg)确定一个或多个相邻
QP以计算参考QP。
叉树分割模式和当前块的宽度和高度之一进行更新。更新的位置在当前片或当前图片内。
方法来确定。该跟踪方法首先将“先前的QP”初始化为先前已编码的编码树单元(CTU)的最
后一个编码的QP。或者,如果先前已编码的编码树单元不可用,初始化为片QP。在针对后续
量化组的当前CB的量化参数的导出处理之后,将“先前的QP”更新为导出QP。导出过程的示
例根据当前CB的左上位置(xCb,yCb)和当前量化组的左上位置(xQg,yQg)导出导出的QP。可
以通过预测的QP,增量QP和亮度阵列的采样的比特深度来计算导出的QP。
过对具体实施方案的以下描述的审查,本发明的其它方面和特征对于本领域具有通常知识
者将变得显而易见。
【附图说明】
【具体实施方式】
细的描述并不旨在限制如所要求保护的本发明的范围,而是仅代表本发明的选定实施例。
的各个地方的短语“在一个实施例中”或“在一些实施例中”的出现不一定全部指代相同的
实施例,这些实施例可以单独实现或结合一个或多个其他实施例来实现。此外,所描述的特
征,结构或特征可以以任何合适的方式组合在一个或多个实施例中。然而,相关领域的技术
人员将认识到,可以在没有一个或多个具体细节,或其他方法,组件等的情况下实践本发
明。在其他情况下,未示出已知的结构或操作的详细描述以避免模糊本发明的方面。
非平方量化组,当前量化组的左上亮度采样的水平和垂直位置xQg和yQg不能由量化组的最
小亮度面积简单地导出。另外,解码顺序中的先前的量化组可能不是通过z扫描顺序索引简
单导出的。图5示出了根据QTBT划分方法从大块50拆分的量化组52、54和56的示例,其中大
块50首先被垂直分割划分,然后左划分进一步被水平分割划分。使curr表示当前量化组56
的z扫描顺序索引,则z扫描顺序索引减1(即curr‑1)表示左划分顶部的量化组52。然而,解
码顺序中的先前编码量化组实际上是左划分底部的量化组54。
码量化组的先前QP来导出参考QP。
形块,例如,块划分方法首先通过四叉树分割来分割亮度编码树块(CTB)以生成亮度
(luminance/luma)四叉树叶节点块,随后可以使用二叉树划分或三叉树划分来进一步分割
每个亮度四叉树叶节点块。在本实施例中,亮度四叉树叶节点块被定义为四叉树分割停止
的块,所以亮度四叉树叶节点块总是正方形。让位置(xCb,yCb)指定当前图像中当前图像中
当前亮度编码块(CB)相对于当前图像的左上采样的左上采样。当前亮度编码块的宽度和高
度的log 2值分别为log2CbWidth和log2CbHeight,亮度CTB的面积的log 2值为
Log2CtbSize。亮度编码块的宽度和高度不一定相等,但是由于亮度CTB是正方形亮度CTB的
宽度和高度相等。变量cqtDepth指定包含当前编码块的四叉叶节点块的四叉树深度。位置
(xQg,yQg)指定当前量化组的左上采样相对于当前图像的左上采样的位置。当前亮度编码
块在当前量化组内。
面给出了当前亮度编码块的面积与增量QP信令的最小面积之间的比较:
(xQg,yqg)为:
和当前亮度四叉叶节点块的四叉树深度计算:
log2Width、块高度的log 2值log2Height、左上位置(xCb,yCb)当前编码块、当前量化组的
左上位置(xQg,yQg)和变量bFound。当前递归的位置(x0,y0)被初始化为包含当前亮度编码
块的当前亮度四叉树叶节点块的左上位置(xCqt,yCqt),块宽度的log 2值log2Width被初
始化为log2CqtSize,块高度的log 2值log2Height也初始化为log2CqtSize,变量bFound初
始化为false。在递归处理中,如果当前递归的面积大于或等于增量QP信令的最小面积,则
将位置(xQg,yQg)设置为等于当前递归的位置(x0,y0)。如果当前递归的位置(x0,y0)等于
(xCb,yCb),则变量bFound设置为true,当变量bFound为true时,递归处理停止。否则变量
bFound仍然为false,递归处理继续搜索位置(xQg,yQg)。
树分割,二叉树分割标志bt_cu_split_flag[x0][y0]指定位置(x0,y0)处的块的二叉树分
割类型,其中0表示不进一步分割,1表示水平分割,2表示垂直分割。当前递归的位置(x0,
y0)根据四叉树分割标志或二进制分割标志递归地更新,直到位置(x0,y0)等于当前亮度编
码块的左上位置(xCb,yCb)。在每个递归中,如果当前递归的面积大于或等于增量QP信号的
最小面积,则当前量化组的左上位置(xQg,yQg)被更新为等于当前递归的位置(x0,y0)。用
于拆分视频数据的划分方法是图6和图7中的QTBT划分,但是相同的递归处理也可以应用于
其他划分方法。例如,如果划分方法是三叉树划分,则当前递归的位置(x0,y0)根据当前递
归是水平三叉树分割还是垂直三叉树分割递归更新,如果当前递归的面积大于或等于增量
QP信令的最小面积,则将当前量化组的左上位置(xQg,yQg)更新为等于位置(x0,y0)。在另
一个例子中,划分方法首先用四叉树划分视频数据,然后用二叉树划分或三叉树划分,根据
当前的递归是否是四叉树分割、水平二叉树分割、垂直二叉树分割、水平三叉树分割或垂直
三叉树分割递归更新当前递归的位置(x0,y0)。
当前量化组的上方相邻块的上方QP导出。编码器根据当前亮度编码块的QP对当前亮度编码
块的残差信号进行量化,从QP和参考QP导出增量QP,并向视频比特流中的当前亮度编码块
发送增量QP。解码器从接收到的视频比特流中确定当前亮度编码块的增量QP,从增量QP和
参考QP导出当前亮度编码块的QP,并且根据当前亮度编码块的QP,恢复当前亮度编码块的
量化残差信号。
码树块(CTB)的左上角亮度采样的位置。对于使用诸如QTBT划分方法的分割方法编码的视
频数据,如果使能标志cu_qp_delta_enabled_flag指示使能,并且当前编码块的面积大于
或等于增量QP信令的最小面积,则将左上位置(xQg,yQg)设置为等于当前编码块的左上位
置,即log2CbWidth+log2CbHeight>=(Log2MinCuQpDeltaSize<<1)。用于跟踪处理的相应
语法表的细节包括在图8中。
割标志qt_split_cu_flag[x0][y0]由函数coding_qtbt决定。当使能标志cu_qp_delta_
enabled_flag为true,并且当前块的面积大于或等于增量QP信令的最小面积时,确定左上
位置(xQg,yQg)作为当前块(x0,y0)的位置,并将先前编码量化组的先前QP QuLastCodedQP
确定为当前块的最后编码QP LastCodeQP。当当前划分是四叉树分割时,根据分割标志qt_
split_cu_flag[x0][y0](当前块的宽度和高度)更新当前块的位置。检查当前块的更新位
置在当前片或当前图片内,更新的位置、宽度的一半(即log2CbWidth‑1)、高度的一半(即
log2CbHeight‑1)和cqtDepth+1被用作函数coding_qtbt的输入。当当前划分是二叉树分割
时,根据二叉树分割模式bt_split_mode,根据当前块的宽度或高度来更新当前块的位置
(x0,y0)。例如,如果二叉树分割模式是水平分割,则基于高度来更新当前块的位置,并且更
新的位置被检查在当前片或当前图片内。更新的位置、宽度log2CbWidth、高度的一半(即
log2CbHeight‑1)和cqtDepth是函数coding_qtbt的输入。在另一示例中,如果二叉树分割
模式是垂直分割,则基于宽度来更新当前块的位置,并且更新的位置被检查在当前图片内。
通过提供更新的位置、宽度log2CbWidth‑1的一半、高度log2CbHeight和cqtDepth来执行函
数coding_qtbt。图8中的实施例使用QTBT划分方法分割视频数据,类似的跟踪处理可以应
用于使用其他划分方法的视频数据分割。示例性的划分方法使用四叉树划分然后进行二叉
树划分或三叉树划分来分割视频数据,并且图8中的语法表仅需要在当前划分是三叉树划
分的情况下再插入一个分支,其中,当当前划分是三叉树分割时,当前块的位置(x0,y0)根
据水平三叉树分割或垂直三叉树分割进行更新。
QuLastCodedQP和LastCodedQP在对当前CTU进行编码或解码的开始处初始化,其中初始值
被设置为先前编码的CTU的LastCodedQP,或者如果先前编码的CTU不可用,则初始值被设置
为片QP。当使能标志cu_qp_delta_enabled_flag为true且当前编码块的面积大于或等于增
量QP信令的最小面积时,将变量QuLastCodedQP设置为等于LastCodedQP,即log2CbWidth+
log2CbHeight>=(Log2MinCuQpDeltaSize<<1)。换句话说,当在编码或解码期间遇到量化
组的第一编码块时,将变量QuLastCodedQP设置为等于LastCodedQP。相应语法表的一个例
子如图8所示。
组的左上位置(xQg,yQg)首先用于识别左边和上方相邻编码块。当前量化组的参考QP被计
算为左邻近编码块的左QP和上方相邻编码块的上方QP的平均值,即(QpLeft+QpAbove+1)>>
1。如果左QP和上方QP中的任一个不可用,则不可用的相邻QP的QP值被导出的先前QP
QuLastCodedQP替换以计算参考QP。参考QP用于在量化与编码器侧的量化组相关联的视频
数据时确定增量QP;并且参考QP用于基于在解码器侧的接收到的增量QP来确定用于逆量化
的QP。
QuLastCodedQP,并且在编码块的量化参数的导出处理之后,将QuLastCodedQP更新为导出
的QP,即QPY。以下对编码块的量化参数的导出处理进行说明。导出过程从位置(xCb,yCb)和
(xQg,yQg)导出变量QPY、亮度QP QP'Y和色度QPs QP'Cb及QP'Cr。位置(xCb,yCb)指定当前画
面中相对于当前画面的左上角亮度采样的当前亮度编码块的左上角亮度采样,并且位置
(xQg,yQg)指定当前量化组相对于当前图像的左上角亮度采样的亮度采样的左上角的亮度
采样。增量QP信令的最小面积由变量Log2MinCuQpDeltaSize定义,该变量决定共享相同QP
的CTB内最小面积的亮度面积。通过以下步骤导出预测亮度QP qPY_PRED:
中的第一量化组时。第二条件是当包含当前编码块的当前量化组是瓦片(tile)中的第一量
化组时。第三条件是当包含当前编码块的当前量化组是编码树块行(row)中的第一量化组,
并且使能标志entropy_coding_sync_enabled_flag为true,指示熵编码同步被使能时。如
果三个条件都不为true,则将预测亮度QP qPY_PRED设置为等于QuLastCodedQP。
是否可用,其中将位置(xCurr,yCurr)设置为等于当前编码块的左上位置(xCb,yCb),而相
邻位置(xNbY,yNbY)被设置为等于(xQg‑1,yQg)。如果以下两个条件中的一个或多个为
true,则将左QP qPY_A设置为等于预测亮度QP qPY_PRED。第一个条件是当可用性导出处理的
输出指示左QP不可用时,即变量availableA等于FALSE。第二个条件是当包含覆盖相邻位置
(xQg‑1,yQg)的编码块的CTB的编码树块地址ctbAddrA不等于变量CtbAddrInTs时。变量
CtbAddrInTs的导出如下:
CtbLog2SizeY指定编码树块(CTB)的面积的log 2值。
置(xCurr,yCurr)设置为等于当前编码块的左上位置(xCb,yCb),相邻位置(xNbY,yNbY)被
设置为等于(xQg,yQg‑1)。如果以下两个条件中的一个或多个为true,则将上方QP PY_B设置
为等于预测亮度QP qPY_PRED。第一个条件是当可用性导出处理的输出指示上方QP不可用时,
即变量available等于FALSE。第二个条件是当包含覆盖位置(xQg,yQg‑1)的编码块的CTB的
编码树块地址ctbAddrB不等于变量ctbAddrInTs时,其中变量ctbAddrB由下式导出:
CtbLog2SizeY指定编码树块(CTB)的面积的log 2值。
BitDepthY的采样的比特深度,且BitDepthY=8+bit_depth_luma_minus8。
行运动估计(ME)和运动补偿(MC),以基于参考来自其他一个或多个图像的视频数据来提供
预测值。开关1114根据编码的模式信息从每个块由帧内预测1010或帧间预测1012中选择预
测值。帧内预测1010或帧间预测1012将选定的预测值提供给加法器1016以形成残差。通过
变换(T)1018进一步处理当前块的残差,接着进行量化(Q)1020处理。然后,经熵编码器1034
对经变换和量化的残差信号进行编码以形成视频比特流。在量化1020中,每个量化组的变
换的残差由QP量化,并且根据本发明的实施例之一来确定参考QP,以导出每个量化组的增
量QP。然后,利用包括每个量化组的增量QP的边信息(side information)来压缩视频比特
流。根据当前量化组的左上位置和先前编码的QP中的一个或两个导出当前量化组的参考
QP。通过逆量化(IQ)1022和逆变换(IT)1024处理当前块的经变换和量化的残差信号以恢复
预测残差。如图10所示,通过在重构(REC)1026处加回所选择的预测值来恢复残差,以产生
重构的视频数据。重构的视频数据可以存储在参考图像缓冲器(Ref.Pict.Buffer)1032中,
并用于预测其它图像。由于编码处理,来自REC 1026的重构的视频数据可能受到各种损害,
因此,在将重构的视频数据存储在参考图像缓冲器1032中之前,将环路处理滤波器(In‑
loop Processing Filter,简写为ILPF)1028应用于重构的视频数据,以进一步增强图像质
量。语法元素被提供给熵编码器1034,用于并入到视频比特流中。
量化残差信号以及其他系统信息。熵解码器1110解析每个量化组的增量QP。解码器1100的
解码处理类似于编码器1000处的重构循环,除了解码器1100仅需要帧间预测1114中的运动
补偿预测。每个块由帧内预测1112或帧间预测1114解码。开关1116根据解码的模式信息从
每个块由帧内预测1112或帧间预测1114中选择帧内预测值。通过逆量化(IQ)1120和逆变换
(IT)1122来恢复经变换和量化的残差信号。逆量化1120确定当前量化组的参考QP,并且根
据从由熵解码器1110解析的增量QP导出的QP和参考QP来恢复与当前量化组相关联的量化
残差信号。参考QP根据当前量化组的左上位置和先前QP中的一个或两个导出。可以使用根
据实施例的递归处理或跟踪处理来导出左上位置,并且可以根据跟踪方法的实施例导出先
前的QP。通过在REC 1118中加回预测值来重构恢复的残差信号,以产生重构的视频。重构视
频进一步由环路处理滤波器(ILPF)1124处理,以产生最终解码的视频。如果当前解码的图
像是参考图像,则当前解码的图像的重构视频也存储在参考图像缓冲器1128中用于解码顺
序中的后期图像。
实现。例如,处理器执行程序指令以控制输入视频数据的接收。处理器配备有单个或多个处
理核心。在一些示例中,处理器执行程序指令以在编码器1000和解码器1100中的一些组件
中执行功能,并且与处理器电耦合的存储器用于存储程序指令/对应于块的重构图像的信
息和/或在编码或解码过程中的中间数据。在一些实施例中的存储器包括非挥发性计算机
可读介质,诸如半导体或固态存储器、随机存取存储器(RAM)、只读存储器(ROM)、硬盘、光
盘,或其他合适的存储介质。存储器也可以是上面列出的两个或多个非挥发性性计算机可
读介质的组合。如图10和图11所示,编码器1000和解码器1100可以在相同的电子装置中实
现,因此如果在相同的电子装置中实现,则编码器1000和解码器1100的各种功能组件可以
被共享或重用。例如,图10中的重构1026、变换1024、逆量化1022、环路处理滤波器1028和参
考图像缓冲器1032中的一个或多个也可以用作图11中的重构1118、逆变换1122、逆量化
1120、环路处理滤波器1124和参考图像缓冲器1128。
例如,可以在计算机处理器、数字信号处理器(DSP)、微处理器或场可程序化闸阵列(FPGA)
上执行的程序代码中实现对当前块的当前模式集的确定。这些处理器可以被配置为通过执
行定义本发明所体现的特定方法的机器可读软件代码或固件代码来执行根据本发明的特
定任务。
附权利要求而不是前面的描述来指示。在权利要求的等同物的含义和范围内的所有变化将
被包括在其范围内。