自适应颜色变换和量化参数之间的相互作用的制作方法

文档序号:31370626发布日期:2022-09-02 22:31阅读:155来源:国知局
自适应颜色变换和量化参数之间的相互作用的制作方法
自适应颜色变换和量化参数之间的相互作用
1.相关申请的交叉引用
2.根据巴黎公约适用的专利法和/或规则,本技术要求2019年12月19日提交的国际专利申请pct/cn2019/126472的优先权和利益。出于法律规定的所有目的,上述申请的全部公开内容作为本技术公开内容的一部分引入作为参考。
技术领域
3.该专利文件涉及图像和视频编码和解码。


背景技术:

4.在互联网和其他数字通信网络中,数字视频占用了最大的带宽。随着能够接收和显示视频的连接用户设备数量的增加,预计数字视频使用的带宽需求将继续增长。


技术实现要素:

5.本文档公开了可被视频编码器和解码器用来在图像/视频编码或解码期间执行自适应颜色变换(act)和基于块的增量脉冲编解码调制(bdpcm)的技术。
6.在示例方面,公开了一种视频处理的方法。该方法包括根据规则在包括当前视频单元的视频和该视频的比特流表示之间执行转换,其中该规则规定自适应颜色变换(act)模式和基于块的增量脉冲编解码调制(bdpcm)模式可用于以互斥的方式编解码当前视频单元。
7.在另一个示例方面,公开了一种视频处理的方法。该方法包括:对于作为色度视频单元的视频的当前视频单元和视频的比特流表示之间的转换,基于规则确定基于块的增量脉冲编解码调制(bdpcm)模式是否可用;以及基于该确定来执行转换,其中该规则基于自适应颜色变换(act)模式是否用于编解码当前视频单元和/或bdpcm模式是否用于编解码对应于当前视频单元的亮度视频单元。
8.在又一示例方面,公开了一种视频处理的方法。该方法包括在包括作为色度视频单元的当前视频单元的视频和视频的比特流表示之间执行转换,其中当前视频单元使用自适应颜色变换(act)模式和基于块的增量脉冲编解码调制(bdpcm)模式来编解码,其中比特流表示符合格式规则,其中该格式规则指定当前视频单元的色度分量的bdpcm预测方向的指示由以bdpcm模式编解码的对应的亮度视频单元的bdpcm预测方向确定,并且其中该指示的信令通知不存在于所述比特流表示中。
9.在又一示例方面,公开了一种视频处理的方法。该方法包括根据规则在包括当前视频单元的视频和视频的比特流表示之间执行转换,其中,该规则指定在编码期间,在基于块的增量脉冲编解码调制(bdpcm)模式被应用于当前视频单元之后,自适应颜色变换(act)模式被应用于当前视频单元,或者在解码期间,在bdpcm模式被应用于当前视频单元之前,act模式被应用于当前视频单元。
10.在又一示例方面,公开了一种视频处理方法。该方法包括:对于包括当前视频单元
的视频和该视频的比特流表示之间的转换,确定对于该转换,自适应颜色变换(act)模式被启用,并且基于该确定,通过对与当前视频单元相关联的量化参数(qp)执行剪裁(clip)操作来执行该转换。
11.在又一示例方面,公开了一种视频编码器装置。视频编码器包括被配置为实现上述方法的处理器。
12.在又一示例方面,公开了一种视频解码器装置。视频解码器包括被配置为实现上述方法的处理器。
13.在又一示例方面,公开了一种其上存储有代码的非暂时性计算机可读介质。该代码以处理器可执行代码的形式体现了本文描述的方法之一。
14.这些以及其他特征将在本文件中描述。
附图说明
15.图1示出了视频解码器中的环路自适应颜色变换(act)的示例屏幕内容编解码(scc)解码器流程。
16.图2示出了利用act的示例解码过程。
17.图3是示出示例视频处理系统的框图,其中可以实现本文公开的各种技术。
18.图4是用于视频处理的示例硬件平台的框图。
19.图5是示出可以实现本公开的一些实施例的示例视频编解码系统的框图。
20.图6是示出可以实现本公开的一些实施例的编码器的示例的框图。
21.图7是示出可以实现本公开的一些实施例的解码器的示例的框图。
22.图8至图12示出了视频处理的示例方法的流程图。
具体实施方式
23.在本文件中使用章节标题是为了易于理解,而不是将每个章节中公开的技术和实施例的适用性仅限制于该章节。此外,在一些描述中使用h.266术语仅仅是为了易于理解,而不是为了限制所公开技术的范围。因此,本文描述的技术也适用于其他视频编解码器协议和设计。
24.1.概要
25.该专利文件涉及图像/视频编解码技术。具体地,它涉及图像/视频编解码中的自适应颜色变换。它可以应用于正在开发的标准,例如通用视频编解码。它也适用于未来的视频编解码标准或视频编解码器。
26.2.简单描述
27.视频编解码标准主要通过众所周知的itu-t和iso/iec标准的发展而演进。itu-t制定了h.261和h.263,iso/iec制定了mpeg-1和mpeg-4visual,这两个组织联合制定了h.262/mpeg-2视频和h.264/mpeg-4高级视频编解码(avc)和h.265/hevc标准。自h.262以来,视频编解码标准基于混合视频编解码结构,其中利用了时域预测加变换编码。为了探索hevc以外的未来视频编解码技术,vceg和mpeg于2015年联合成立了联合视频探索小组(jvet)。此后,jvet采用了许多新方法,并将其输入到名为联合探索模型(jem)的参考软件中。2018年4月,vceg(q6/16)和iso/iec jtc1 sc29/wg11(mpeg)成立了联合视频专家小组
(jvet),致力于vvc标准,目标是与hevc相比将比特率降低50%。
28.vvc草案的最新版本,即通用视频编解码(草案7)可在以下网址找到:http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/16_geneva/wg11/jvet-p2001-v14.zip。
29.vvc最新的参考软件名为vtm,可在以下网址找到:https://vcgit.hhi.fraunhofer.de/jvet/vvcsoftware_vtm/tags/vtm-7.0。
30.2.1.hevc scc中的自适应颜色变换(act)
31.自适应颜色变换(act)在第18届jct-vc会议(2014年6月30日至7月9日,日本札幌)上被采用到hevc屏幕内容编解码(scc)测试模型2中。act使用基于ycocg和ycocg-r颜色空间的颜色变换矩阵,在预测残差域中执行环内颜色空间转换。使用标志cu_residual_act_flag在cu级自适应地开启或关闭act。act可以与交叉分量预测(ccp)相结合,后者是hevc已经支持的另一分量间去相关方法。当两者都启用时,act在解码器ccp后执行,如图1所示。
32.2.1.1.act中的颜色空间转换
33.act中的颜色空间转换基于ycocg-r变换。有损编解码和无损编解码(cu_transquant_bypass_flag=0或1)使用相同的逆变换,但在有损编解码的情况下,co和cg分量会附加左移1位。具体来说,以下颜色空间变换用于有损和无损编解码的前向和逆向转换:
34.用于有损编解码的前向变换(非规范性):
[0035][0036]
用于无损编解码的逆变换(非规范性):
[0037]
co=r-b
[0038]
t=b+(co>>1)
[0039]
cg=(g-t)
[0040]
y=t+(cg>>1)
[0041]
逆转换(规范性):
[0042]
if(lossy){
[0043]
co=co<<1
[0044]
cg=cg<<1
[0045]
}
[0046]
t=y-(cg>>1)
[0047]
g=cg+t
[0048]
b=t-(co>>1)
[0049]
r=co+b
[0050]
前向颜色变换是非归一化的,其范数对于y和cg约等于对于co约等于为了补偿前向变换的非归一化性质,分别对(y,co,cg)应用(-5,-3,-5)的增量qp(delta qp)。换句话说,对于cu的给定“正常”qp,如果act开启,则(y,co,cg)的量化参数分别设置为(qp-5,qp-3,qp-5)。调整后的量化参数仅影响cu中的残差的量化和逆量化。对于去块,仍然
使用“正常”qp值。剪裁为0将应用于调整后的qp值,以确保它们不会变为负值。注意,这种qp调整仅适用于有损编解码,因为无损编解码不执行量化(cu_transquant_bypass_flag=1)。在scm 4中,引入了附加qp偏移值的pps/条带级信令。当应用自适应颜色变换时,这些qp失调值可以代替(-5,-3,-5)用于cu。
[0051]
当颜色分量的输入比特深度不同时,在act期间应用适当的左移来将样点比特深度对准最大比特深度,并且在act之后应用适当的右移来恢复原始样点比特深度。
[0052]
2.2.vvc中的act
[0053]
图2示出了应用act的vvc的解码流程图。如图2所示,颜色空间转换是在残差域中进行的。具体地,在逆变换之后引入一个附加解码模块,即逆act,以将来自ycgco域的残差转换回原始域。
[0054]
在vvc中,除非最大变换尺寸小于一个编解码单元(cu)的宽度或高度,否则一个cu叶节点也被用作变换处理的单元。因此,在所提出的实现中,针对一个cu信令通知act标志,以选择用于对其残差进行编解码的颜色空间。此外,遵循hevc act设计,对于inter(帧间)和ibc cu,act仅在cu中的至少有一个非零系数时启用。对于帧内cu,仅当色度分量选择亮度分量的相同帧内预测模式(即,dm模式)时,才启用act。
[0055]
用于颜色空间转换的核心变换与用于hevc的核心变换保持相同。此外,与hevc的act设计相同,为了补偿颜色变换前后残差信号的动态范围改变,将(-5,-5,-3)的qp调整应用于变换残差。
[0056]
另一方面,前向和逆颜色变换需要访问所有三个分量的残差。相应地,在所提出的实现中,act在以下两种场景下被禁用,在这两种场景下,三个分量的所有残差都不可用。
[0057]
1.分离树分割:当应用分离树时,一个ctu内的亮度和色度样点由不同的结构分割。这导致亮度树中的cu仅包含亮度分量,并且色度树中的cu仅包含两个色度分量。
[0058]
2.帧内子分割预测(isp):isp子分割仅应用于亮度,而色度信号在没有划分的情况下被编解码。在当前的isp设计中,除了最后的isp子分割,其他子分割仅包含亮度分量。
[0059]
vvc草案中编解码单位的文本如下所示。
[0060]
[0061]
[0062]
[0063]
[0064]
[0065][0066][0067]
cu_act_enabled_flag等于1指定当前编解码单元的残差在yc
gco
颜色空间中被编
解码。cu_act_enabled_flag等于0指定当前编解码单元的残差在原始颜色空间中被编解码。当cu_act_enabled_flag不存在时,推断为等于0。
[0068]
2.3.在vvc转换跳过模式
[0069]
如在hevc中,块的残差可以用变换跳过模式来编解码,该变换跳过模式完全跳过块的变换过程。此外,对于变换跳过块,使用sps中信令通知的最小允许量化参数(qp),其在vtm7.0中设置为等于6*(internalbitdepth

inputbitdepth)+4。
[0070]
2.4.基于块的增量脉冲编解码调制(bdpcm)
[0071]
在jvet-m0413中,提出了基于块的增量脉码调制(bdpcm)来有效地编码屏幕内容,然后被采用到vvc中。
[0072]
bdpcm中使用的预测方向可以是垂直和水平预测模式。类似于帧内预测,通过预测方向(水平或垂直预测)上的样点复制对整个块进行帧内预测。残差被量化,并且量化的残差与其预测器(水平或垂直)量化的值之间的增量被编解码。这可以描述如下:对于尺寸为m(行)
×
n(列)的块,设r
i,j
,0≤i≤m-1,0≤j≤n-1是在使用来自上方或左侧块边界样点的未滤波的样点水平地(跨预测的块逐行复制左侧邻近像素值)或垂直地(将顶部邻近线复制到预测的块中的每个线)执行帧内预测之后的预测残差。设q(r
i,j
),0≤i≤m-1,0≤j≤n-1表示残差r
i,j
的量化版本,其中残差是原始块和预测的块值之间的差。然后,将块dpcm应用于量化的残差样点,产生具有元素的修改的m
×
n阵列当垂直bdpcm信令通知时:
[0073][0074]
对于水平预测,类似的规则适用,并且残差量化的样点通过下式获得
[0075][0076]
残差量化的样点被发送到解码器。
[0077]
在解码器侧,上述计算被反向以产生q(r
i,j
),0≤i≤m-1,0≤j≤n-1。
[0078]
对于垂直预测情况,
[0079][0080]
对于水平情况,
[0081][0082]
逆量化的残差q-1
(q(r
i,j
))被加到帧内块预测值,以产生重构的样点值。
[0083]
这种方案的主要优点是,在系数解析期间,逆bdpcm可以即时完成,只需在解析系数时添加预测器,或者可以在解析之后执行。
[0084]
在vtm7.0中,bdpcm也可以应用于色度模块,色度bdpcm具有独立的标志和bdpcm方向,与亮度bdpcm模式不同。
[0085]
2.5.变换系数的缩放过程
[0086]
与jvet-p2001-ve中变换系数的缩放过程相关的文本如下。
[0087]
该过程的输入包括:
[0088]

指定相对于当前图片的左顶部亮度样点的当前亮度变换块的左顶部样点的亮度位置(xtby,ytby),
[0089]

指定变换块宽度的变量ntbw,
[0090]

指定变换块高度的变量ntbh,
[0091]

指定编解码单元的预测模式的变量predmode,
[0092]

指定当前块的颜色分量的变量cidx。
[0093]
这个过程的输出是具有元素d[x][y]的缩放的变换系数的(ntbw)x(ntbh)数组d。
[0094]
量化参数qp导出如下:
[0095]

如果cidx等于0,则以下情况适用:
[0096]
qp=qp

y (1129)
[0097]

否则,如果tucresmode[xtby][ytby]等于2,则以下情况适用:
[0098]
qp=qp

cbcr (1130)
[0099]

否则,如果cidx等于1,则以下情况适用:
[0100]
qp=qp

cb (1131)
[0101]

否则(cidx等于2),以下情况适用:
[0102]
qp=qp

cr (1132)
[0103]
量化参数qp被修改,并且变量rectnontsflag和bdshift被导出如下:
[0104]

如果transform_skip_flag[xtby][ytby][cidx]等于0,则以下情况适用:
[0105]
qp=qp-(cu_act_enabled_flag[xtby][ytby]?5:0)(1133)
[0106]
rectnontsflag=(((log2(ntbw)+log2(ntbh))&1)==1)?1:0(1134)
[0107]
bdshift=bitdepth+rectnontsflag+
ꢀꢀ
(1135)
[0108]
((log2(ntbw)+log2(ntbh))/2)-5+pic_dep_quant_enabled_flag
[0109]

否则(transform_skip_flag[xtby][ytby][cidx]等于1),以下情况适用:
[0110]
qp=max(qpprimetsmin,qp)-(cu_act_enabled_flag[xtby][ytby]?5:0)
[0111]
(1136)
[0112]
rectnontsflag=0
ꢀꢀ
(1137)
[0113]
bdshift=10
ꢀꢀ
(1138)
[0114]
变量bdoffset的导出如下:
[0115]
bdoffset=(1《《bdshift)》》1
ꢀꢀ
(1139)
[0116]
列表levelscale[][]被指定为levelscale[j][k]={{40,45,51,57,64,72},{57,64,72,80,90,102}},其中j=0..1,k=0..5.
[0117]
(ntbw)x(ntbh)数组dz被设置为等于(ntbw)x(ntbh)数组transcoefflevel[xtby][ytby][cidx]。
[0118]
为了导出缩放的变换系数d[x][y],其中x=0..ntbw-1,y=0..ntbh-1,以下情况适用:
[0119]

中间缩放因子m[x][y]导出如下:
[0120]

如果以下一个或多个条件成立,m[x][y]被设置为等于16:
[0121]

sps_scaling_list_enabled_flag等于0。
[0122]

pic_scaling_list_present_flag等于0。
[0123]

transform_skip_flag[xtby][ytby][cidx]等于1。
[0124]

scaling_matrix_for_lfnst_disabled_flag等于1,并且lfnst_idx[xtby][ytby]不等于0。
[0125]

否则,以下情况适用:
[0126]

变量id基于predmode、cidx、ntbw和ntbh,如中所述表36并且变量log2matrixsize被导出如下:
[0127]
log2matrixsize=(id《2)?1:(id《8)?2:3(1140)
[0128]

缩放因子m[x][y]导出如下:
[0129]
m[x][y]=scalingmatrixrec[id][i][j]
[0130]
其中i=(x《《log2matrixsize)》》log2(ntbw),
[0131]
j=(y《《log2matrixsize)》》log2(ntbh)
ꢀꢀ
(1141)
[0132]

如果id大于13,并且x和y都等于0,则m[0][0]进一步修改如下:
[0133]
m[0][0]=scalingmatrixdcrec[id-14]
ꢀꢀ
(1142)
[0134]
注意

当下列任一条件为真时,量化矩阵元素m[x][y]可以归零
[0135]

x大于32
[0136]

y大于32
[0137]

解码后的tu不是由默认变换模式编解码的(即,变换类型不等于0),并且x大于16
[0138]

解码后的tu不是由默认变换模式编解码的(即,变换类型不等于0),并且y大于16
[0139]

缩放因子ls[x][y]导出如下:
[0140]

如果pic_dep_quant_enabled_flag等于1,并且transform_skip_flag[xtby][ytby][cidx]等于0,则适用以下情况:
[0141]
ls[x][y]=(m[x][y]*levelscale[rectnontsflag][(qp+1)%6])《《((qp+1)/6)(1143)
[0142]

否则(pic_dep_quant_enabled_flag等于0或transform_skip_flag[xtby][ytby][cidx]等于1),以下情况适用:
[0143]
ls[x][y]=(m[x][y]*levelscale[rectnontsflag][qp%6])《《(qp/6)(1144)
[0144]

当bdpcmflag[xtby][yyby][cidx]等于1时,dz[x][y]修改如下:
[0145]

如果bdpcmdir[xtby][yyby][cidx]等于0且x大于0,则以下情况适用:
[0146]
dz[x][y]=clip3(coeffmin,coeffmax,dz[x-1][y]+dz[x][y])
[0147]
(1145)
[0148]

否则,如果bdpcmdir[xtby][ytby][cidx]等于1且y大于0,则以下情况适用:
[0149]
dz[x][y]=clip3(coeffmin,coeffmax,dz[x][y-1]+dz[x][y])
ꢀꢀ
(1146)
[0150]

值dnc[x][y]的导出如下:
[0151]
dnc[x][y]=(dz[x][y]*ls[x][y]+bdoffset)》》bdshift(1147)
[0152]

缩放的变换系数d[x][y]导出如下:
[0153]
d[x][y]=clip3(coeffmin,coeffmax,dnc[x][y])(1148)
[0154]
表36

根据predmode、cidx、ntbw和ntbh指定缩放矩阵标识符变量id
[0155][0156]
3.由本文描述的实施例和解决方案解决的技术问题
[0157]
1.在当前设计中,对一个块可以启用act和亮度bdpcm模式。
[0158]
然而,对于采用act模式编解码的块,色度bdpcm模式始终禁用。
[0159]
因此,可对同一编解码单元中的亮度和色度块不同地导出预测信号,这可能效率较低。
[0160]
2.当act启用时,块的量化参数(qp)可能变成负数。
[0161]
3.act目前的设计不支持无损编解码。
[0162]
4.技术解决方案的示例
[0163]
以下描述的技术解决方案应被视为解释一般概念的示例。不应该以狭隘的方式解释这些技术解决方案。此外,这些技术解决方案可以以任何方式组合。
[0164]
在以下描述中,术语“块”可以表示视频区域,诸如编解码单元(cu)、预测单元(pu)、变换单元(tu),其可以包含三种颜色分量的样点。术语“bdpcm”并不局限于vvc的设计,但它可以代表使用不同预测信号生成方法对残差进行编解码的技术。
[0165]
act和bdpcm之间交互的示例实施例
[0166]
1.是否启用色度bdpcm模式可能取决于act和/或亮度bdpcm模式的使用。
[0167]
a.在一个示例中,当在块上启用act时,色度bdpcm模式的使用的指示(例如,intra_bdpcm_chroma_flag)可被推断为亮度bdpcm模式的使用的指示(例如,intra_bdpcm_luma_flag)。
[0168]
i.在一个示例中,色度bdpcm模式的推断的值被定义为(act和亮度bdpcm模式被启用?真:假)。
[0169]
1.在一个示例中,当intra_bdpcm_luma_flag为假时,intra_bdpcm_chroma_flag可被设置为等于假。
[0170]
a.或者,当intra_bdpcm_luma_flag为真时,intra_bdpcm_chroma_flag可被设置为等于真。
[0171]
ii.或者,在一个示例中,如果块的亮度bdpcm模式和act的使用的指示为真,则色度bdpcm模式的使用的指示可被推断为真。
[0172]
b.或者,可以有条件地检查是否信令通知对块使用act,诸如对块中的亮度和色度样点使用相同的bdpcm预测方向。
[0173]
i.或者,此外,在使用bdpcm模式之后,信令通知act使用的指示。
[0174]
2.当在块上启用act时,色度bdpcm模式的预测方向的指示(例如,intra_bdpcm_chroma_dir_flag)可被推断为亮度bdpcm模式的使用的预测方向的指示(例如,intra_bdpcm_luma_dir_flag)。
[0175]
a.在一个示例中,intra_bdpcm_chroma_dir_flag的推断的值被定义为(act被启用?intra_bdpcm_luma_dir_flag:0)。
[0176]
i.在一个示例中,如果亮度bdpcm模式的预测方向的指示是水平的,那么色度bdpcm模式的预测方向的指示可推断为水平的。
[0177]
ii.或者,在一个示例中,如果亮度bdpcm模式的预测方向的指示是垂直的,那么色度bdpcm模式的预测方向的指示可推断为垂直的。
[0178]
3.act和bdpcm模式可以排他地应用。
[0179]
a.在一个示例中,当在块上启用act模式时,可以在块上禁用bdpcm模式。
[0180]
i.或者,此外,bdpcm模式的使用的指示可以在act模式的使用的指示的信令通知之后被信令通知。
[0181]
ii.或者,此外,bdpcm模式的使用的指示可以不被信令通知并且被推断为假(0)。
[0182]
b.在一个示例中,当在块上启用bdpcm模式时,可以在块上禁用act模式。
[0183]
i.或者,此外,act模式的使用的指示可以在bdpcm模式的使用的指示的信令通知之后被信令通知。
[0184]
ii.或者,此外,act模式的使用的指示可以不被信令通知并且被推断为假(0)。
[0185]
c.在一个示例中,以上示例中的bdpcm模式可表示亮度bdpcm模式和/或色度bdpcm模式。
[0186]
4.在解码器处,可以在反向bdpcm之前应用逆向act。
[0187]
a.在一个示例中,即使当亮度和色度bdpcm具有不同的预测模式时,也可应用act。
[0188]
b.或者,在编码器处,可以在bdpcm之后应用正向act。
[0189]
在启用act时qp设置的示例实施例
[0190]
5.提出在启用act时剪裁qp。
[0191]
a.在一个示例中,剪裁函数可以被定义为(l,h,x),其中l是输入x的最低可能值,并且h是输入x的最高可能值
[0192]
i.在一个示例中,l可以被设置为等于0。
[0193]
ii.在一个示例中,h可以被设置为等于63。
[0194]
b.在一个示例中,qp可以是在2.5节中给出的qp。
[0195]
c.在一个示例中,可以在act模式的qp调整之后执行剪裁。
[0196]
d.在一个示例中,当应用变换跳过时,l可以被设置为等于变换跳过模式的最小允许的qp。
[0197]
通用技术(项6-7)
[0198]
6.在上述示例中,l、h、m、n和/或k是整数,并且可以取决于
[0199]
i.在dps/sps/vps/pps/aps/图片报头/条带报头/片组报头/最大编解码单元(lcu)/编解码单元(cu)/lcu行/lcu的组/tu/pu块/视频编解码单元中信令通知的消息
[0200]
ii.cu/pu/tu/块/视频编解码单元的位置
[0201]
iii.包含沿边缘的样点的块的编解码的模式
[0202]
iv.应用于包含沿边缘的样点的块的变换矩阵
[0203]
v.当前块和/或其邻近块的块维度/块形状
[0204]
vi.颜色格式的指示(诸如4:2:0、4:4:4、rgb或yuv)
[0205]
vii.编解码树结构(诸如双树或单树)
[0206]
viii.条带/片组类型和/或图片类型
[0207]
ix.颜色分量(例如,可能仅应用于cb或cr)
[0208]
x.时域层id
[0209]
xi.标准的档次(profile)/级别(level)/层次(tier)
[0210]
xii.或者,a、b、m、n和/或k可以信令通知解码器。
[0211]
7.上面提出的方法可以在某些条件下应用。
[0212]
a.在一个示例中,条件是颜色格式是4:2:0和/或4:2:2。
[0213]
b.在一个示例中,可以在序列/图片/条带/片/图块/视频区域级(诸如sps/pps/图片报头/条带报头)中信令通知上述方法的使用的指示。
[0214]
c.在一个示例中,上述方法的使用可以取决于
[0215]
i.视频内容(例如屏幕内容或自然内容)
[0216]
ii.在dps/sps/vps/pps/aps/图片报头/条带报头/片组报头/最大编解码单元(lcu)/编解码单元(cu)/lcu行/lcu的组/tu/pu块/视频编解码单元中信令通知的消息
[0217]
iii.cu/pu/tu/块/视频编解码单元的位置
[0218]
iv.包含沿边缘的样点的块的编解码的模式
[0219]
v.应用于包含沿边缘的样点的块的变换矩阵
[0220]
vi.当前块和/或其邻近块的块维度
[0221]
vii.当前块和/或其邻近块的块形状
[0222]
viii.颜色格式的指示(如4:2:0、4:4:4、rgb或yuv)
[0223]
ix.编解码树结构(如双树或单树)
[0224]
x.条带/片组类型和/或图片类型
[0225]
xi.颜色分量(例如,可能仅应用于cb或cr)
[0226]
xii.时域层id
[0227]
xiii.标准的档次/级别/层次
[0228]
xiv.或者,m和/或n可以信令通知解码器。
[0229]
5.实施例
[0230]
这些实施例基于jvet-p2001-ve。新添加的文本用粗体斜体突出显示。删除的文本用斜体标记。
[0231]
5.1.实施例#1
[0232]
该实施例涉及act和bdpcm模式之间的相互作用。
[0233][0234][0235]
5.2.实施例#2
[0236]
该实施例涉及act和bdpcm模式之间的相互作用。
[0237]
intra_bdpcm_chroma_flag等于1指定bdpcm被应用于位置(x0,y0)处的当前色度编解码块,即,变换被跳过,帧内色度预测模式由intra_bdpcm_chroma_dir_flag指定。intra_bdpcm_chroma_flag等于0指定bdpcm不应用于位置(x0,y0)处的当前色度编解码块。
[0238]
当intra_bdpcm_chroma_flag不存在且cu_act_enabled_flag(and cu_act_enabled_flag)为false时,推断为等于0。
[0239]
当intra_bdpcm_chroma_flag不存在且cu_act_enabled_flag为真时,推断为等于intra_bdpcm_luma_flag。
[0240]
对于x=x0..x0+cbwidth

1,y=y0..y0+cbheight-1和cidx=1..2,变量bdpcmflag[x][y][cidx]设置为等于intra_bdpcm_chroma_flag。
[0241]
intra_bdpcm_chroma_dir_flag等于0指定bdpcm预测方向是水平的。intra_bdpcm_chroma_dir_flag等于1指定bdpcm预测方向是垂直的。当cu_act_enabled_flag为真时,intra_bdpcm_chroma_dir_flag设置为等于intra_bdpcm_luma_dir_flag。
[0242]
对于x=x0..x0+cbwidth-1,y=y0..y0+cbheight-1和cidx=1..2,变量bdpcmdir[x][y][cidx]设置为等于intra_bdpcm_chroma_dir_flag。
[0243]
5.3.实施例#3
[0244]
该实施例涉及qp设置。
[0245]
8.7.3变换系数的缩放过程
[0246]
该过程的输入包括:
[0247]

指定相对于当前图片的左顶部亮度样点的当前亮度变换块的左顶部样点的亮度位置(xtby,ytby),
[0248]

指定变换块宽度的变量ntbw,
[0249]

指定变换块高度的变量ntbh,
[0250]

指定编解码单元的预测模式的变量predmode,
[0251]

指定当前块的颜色分量的变量cidx。
[0252]
这个过程的输出是具有元素d[x][y]的缩放的变换系数的(ntbw)x(ntbh)数组d。
[0253]

[0254]
量化参数qp被修改,并且变量rectnontsflag和bdshift被导出如下:
[0255]

如果transform_skip_flag[xtby][ytby][cidx]等于0,则以下情况适用:
[0256]
qp=qp-(cu_act_enabled_flag[xtby][ytby]?5:0)
ꢀꢀ
(1133)
[0257]
qp=clip3(0,63,qp)
[0258]
rectnontsflag=(((log2(ntbw)+log2(ntbh))&1)==1)?1:0
ꢀꢀ
(1134)
[0259]
bdshift=bitdepth+rectnontsflag+
ꢀꢀ
(1135)
[0260]
((log2(ntbw)+log2(ntbh))/2)-5+pic_dep_quant_enabled_flag
[0261]

否则(transform_skip_flag[xtby][ytby][cidx]等于1),以下情况适用:
[0262]
qp=max(qpprimetsmin,qp)-(cu_act_enabled_flag[xtby][ytby]?5:0)
ꢀꢀ
(1136)
[0263]
qp=max(qpprimetsmin,qp-(cu_act_enabled_flag[xtby][ytby]?5:0))
[0264]
rectnontsflag=0
ꢀꢀ
(1137)
[0265]
bdshift=10
ꢀꢀ
(1138)
[0266]

[0267]
图3是示出示例视频处理系统3000的框图,其中可以实现本文公开的各种技术。各种实现可以包括系统3000的一些或所有组件。系统3000可以包括用于接收视频内容的输入3002。视频内容可以以原始或未压缩的格式接收,例如8或10比特多分量像素值,或者可以是压缩的或编码的格式。输入3002可以表示网络接口、外围总线接口或存储接口。网络接口的示例包括有线接口,诸如以太网、无源光网络(pon)等,以及无线接口,诸如wi-fi或蜂窝接口。
[0268]
系统3000可以包括编解码组件3004,其可以实现本文档中描述的各种编码或编码方法。编解码组件3004可以降低从输入3002到编解码组件3004的输出的视频的平均比特
率,以产生视频的编解码的表示。因此,编解码技术有时被称为视频压缩或视频代码转换技术。如组件3006所表示的,编解码组件3004的输出可以被存储,或者经由连接的通信被传输。组件3008可以使用在输入3002处接收的视频的存储或传输的比特流(或编解码的)表示来生成发送到显示接口3010的像素值或可显示视频。从比特流表示生成用户可视视频的过程有时被称为视频解压缩。此外,虽然某些视频处理操作被称为“编解码”操作或工具,但是应当理解,编解码工具或操作在编码器处使用,并且与编码结果反向的对应的解码工具或操作将由解码器执行。
[0269]
外围总线接口或显示器接口的示例可以包括通用串行总线(usb)或高清多媒体接口(hdmi)或显示端口等。存储接口的示例包括sata(串行高级技术附件)、pci、ide接口等。本文档中描述的技术可以在各种电子设备中实现,诸如移动电话、膝上型电脑、智能手机或能够执行数字数据处理和/或视频显示的其他设备。
[0270]
图4是视频处理装置4000的框图。装置4000可用于实现本文描述的一种或多种方法。装置4000可以体现在智能手机、平板电脑、计算机、物联网(iot)接收器等中。装置4000可以包括一个或多个处理器4002、一个或多个存储器4004和视频处理硬件4006。(一个或多个)处理器4002可以被配置为实现在本文档(例如,在图8至图12中)中描述的一种或多种方法。(一个或多个)存储器4004可用于存储用于实现本文所述方法和技术的数据和代码。视频处理硬件4006可以用于在硬件电路中实现本文档中描述的一些技术。
[0271]
图5是说明可利用本发明的技术的示例视频编解码系统100的框图。如图5所示,视频编解码系统100可以包括源设备110和目的地设备120。源设备110生成可被称为视频编码设备的编码的视频数据。目的地设备120可解码由源设备110生成的编码的视频数据,目的地设备120可称为视频解码设备。源设备110可以包括视频源112、视频编码器114和输入/输出(i/o)接口116。
[0272]
视频源112可以包括诸如视频捕获设备、从视频内容提供商接收视频数据的接口和/或用于生成视频数据的计算机图形系统的源,或者这些源的组合。视频数据可以包括一个或多个图片。视频编码器114对来自视频源112的视频数据进行编码,以生成比特流。比特流可以包括形成视频数据的编解码的表示的比特序列。比特流可以包括编解码的图片和相关联的数据。编解码的图片是图片的编解码的表示。相关联的数据可以包括序列参数集、图片参数集和其他语法结构。i/o接口116可以包括调制器/解调器(调制解调器)和/或传输器。编码的视频数据可经由i/o接口116通过网络130a直接传输到目的地设备120。编码的视频数据还可存储在存储媒体/服务器130b上以供目的地设备120存取。
[0273]
目的地设备120可以包括i/o接口126、视频解码器124和显示设备122。
[0274]
i/o接口126可以包括接收器和/或调制解调器。i/o接口126可以从源设备110或存储介质/服务器130b获取编码的视频数据。视频解码器124可以解码该编码的视频数据。显示设备122可以向用户显示解码的视频数据。显示设备122可以与目的地设备120集成在一起,或者可以在目的地设备120的外部,目的地设备120被配置为与外部显示设备接口。
[0275]
视频编码器114和视频解码器124可以根据视频压缩标准操作,视频压缩标准为诸如高效视频编解码(hevc)标准、通用视频编解码(vvm)标准和其他当前和/或进一步的标准。
[0276]
图6是示出视频编码器200的示例的框图,该视频编码器200可以是图5所示系统
100中的视频编码器114。
[0277]
视频编码器200被配置为执行本发明的任何或所有技术。在图6的示例中,视频编码器200包括多个功能组件。本发明中描述的技术可在视频编码器200的各种组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。
[0278]
视频编码器200的功能组件可包括分割单元201、可以包括模式选择单元203、运动估计单元204、运动补偿单元205和帧内预测单元206的预测单元202、残差生成单元207、变换单元208、量化单元209、逆量化单元210、逆变换单元211、重构单元212、缓冲器213和熵编码单元214。
[0279]
在其他示例中,视频编码器200可以包括更多、更少或不同的功能组件。在示例中,预测单元202可包括帧内块复制(ibc)单元。ibc单元可以以ibc模式执行预测,其中至少一个参考图片是当前视频块所在的图片。
[0280]
此外,诸如运动估计单元204和运动补偿单元205的一些组件可以被高度集成,但是为了解释的目的,在图6的示例中被分开表示。
[0281]
分割单元201可将图片分割成一个或一个以上视频块。视频编码器200和视频解码器300可以支持各种视频块尺寸。
[0282]
模式选择单元203可基于误差结果选择编解码模式(例如帧内或帧间)之一,并将得到的帧内或帧间编解码的块提供给残差生成单元207以生成残差块数据,并提供给重构单元212以重构编码块用作参考图片。在一些示例中,模式选择单元203可以选择帧内和帧间预测(ciip)模式的组合,其中预测基于帧间预测信号和帧内预测信号。在帧间预测的情况下,模式选择单元203还可以为块选择运动向量的分辨率(例如,子像素或整数像素精度)。
[0283]
为了对当前视频块执行帧间预测,运动估计单元204可通过将来自缓冲器213的一个或一个以上参考帧与当前视频块进行比较来生成当前视频块的运动信息。运动补偿单元205可基于来自缓冲器213的除了与当前视频块相关联的图片之外的图片的运动信息和解码的样点来确定当前视频块的预测的视频块。
[0284]
运动估计单元204和运动补偿单元205可对当前视频块执行不同的操作,例如,取决于当前视频块是在i条带、p条带还是b条带中。
[0285]
在一些示例中,运动估计单元204可对当前视频块执行单向预测,且运动估计单元204可在列表0或列表1的参考图片中搜索当前视频块的参考视频块。运动估计单元204然后可以生成指示包含参考视频块的列表0或列表1中的参考图片的参考索引和指示当前视频块与参考视频块之间的空域位移的运动向量。运动估计单元204可输出参考索引、预测方向指示符和运动向量作为当前视频块的运动信息。运动补偿单元205可基于由当前视频块的运动信息指示的参考视频块来生成当前块的预测视频块。
[0286]
在其它示例中,运动估计单元204可对当前视频块执行双向预测,运动估计单元204可在列表0中的参考图片中搜索当前视频块的参考视频块,且还可在列表1中的参考图片中搜索当前视频块的另一参考视频块。运动估计单元204然后可以生成指示包含参考视频块的列表0和列表1中的参考图片的参考索引和指示参考视频块与当前视频块之间的空域位移的运动向量。运动估计单元204可输出当前视频块的参考索引和运动向量作为当前视频块的运动信息。运动补偿单元205可基于由当前视频块的运动信息指示的参考视频块
来生成当前视频块的预测视频块。
[0287]
在一些示例中,运动估计单元204可输出用于解码器的解码处理的完整运动信息。
[0288]
在一些示例中,运动估计单元204可能不输出当前视频的完整运动信息集。相反,运动估计单元204可参考另一视频块的运动信息来信令通知当前视频块的运动信息。例如,运动估计单元204可确定当前视频块的运动信息与邻近视频块的运动信息足够相似。
[0289]
在一个示例中,运动估计单元204可在与当前视频块相关联的语法结构中指示值,该值向视频解码器300指示当前视频块具有与另一视频块相同的运动信息。
[0290]
在另一示例中,运动估计单元204可在与当前视频块相关联的语法结构中标识另一视频块和运动向量差(mvd)。运动向量差指示当前视频块的运动向量和所指示的视频块的运动向量之间的差。视频解码器300可使用所指示的视频块的运动向量和运动向量差来确定当前视频块的运动向量。
[0291]
如上所述,视频编码器200可以预测性地信令通知运动向量。可由视频编码器200实施的预测信令通知技术的两个示例包含高级运动向量预测(amvp)和合并模式信令通知。
[0292]
帧内预测单元206可对当前视频块执行帧内预测。当帧内预测单元206对当前视频块执行帧内预测时,帧内预测单元206可基于同一图片中的其它视频块的解码的样点来生成当前视频块的预测数据。当前视频块的预测数据可以包括预测的视频块和各种语法元素。
[0293]
残差生成单元207可通过从当前视频块减去(例如,由负号指示)当前视频块的(一个或多个)预测的视频块来生成当前视频块的残差数据。当前视频块的残差数据可包括对应于当前视频块中样点的不同样点分量的残差视频块。
[0294]
在其它示例中,当前视频块可能没有当前视频块的残差数据,例如在跳过模式中,且残差生成单元207可不执行减法操作。
[0295]
变换处理单元208可通过将一个或一个以上变换应用于与当前视频块相关联的残差视频块来生成当前视频块的一个或一个以上变换系数视频块。
[0296]
在变换处理单元208生成与当前视频块相关联的变换系数视频块之后,量化单元209可基于与当前视频块相关联的一个或一个以上量化参数(qp)值来量化与当前视频块相关联的变换系数视频块。
[0297]
逆量化单元210和逆变换单元211可分别对变换系数视频块应用逆量化和逆变换,以从变换系数视频块重构残差视频块。重构单元212可将重构的残差视频块添加到来自由预测单元202生成的一个或一个以上预测的视频块的对应的样点,以产生与当前块相关联的重构的视频块,以存储在缓冲器213中。
[0298]
在重构单元212重构视频块之后,可执行环路滤波操作以减少视频块中的视频块伪像。
[0299]
熵编码单元214可以从视频编码器200的其他功能组件接收数据。当熵编码单元214接收数据时,熵编码单元214可以执行一个或多个熵编码操作以生成熵编码的数据并输出包括熵编码的数据的比特流。
[0300]
图7是示出视频解码器300的示例的框图,该视频解码器300可以是图5所示系统100中的视频解码器114。
[0301]
视频解码器300可以被配置为执行本发明的任何或所有技术。在图7的示例中,视
频解码器300包括多个功能组件。本公开中描述的技术可以在视频解码器300的各种组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。
[0302]
在图7的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、逆量化单元304、逆变换单元305、重构单元306和缓冲器307。在一些示例中,视频解码器300可以执行通常与针对视频编码器200(图6)描述的编码过程互逆的解码过程。
[0303]
熵解码单元301可检索编码的比特流。编码的比特流可以包括熵编解码的视频数据(例如,视频数据的编码的块)。熵解码单元301可解码熵编解码的视频数据,且从熵解码的视频数据,运动补偿单元302可确定运动信息,包含运动向量、运动向量精度、参考图片列表索引和其它运动信息。运动补偿单元302例如可以通过执行amvp和合并模式来确定此信息。
[0304]
运动补偿单元302可产生运动补偿的块,可能基于插值滤波器执行插值。语法元素中可以包括要以子像素精度使用的插值滤波器的标识符。
[0305]
运动补偿单元302可使用如视频编码器20在视频块的编码期间所使用的插值滤波器来计算参考块的子整数像素的插值的值。运动补偿单元302可根据接收的语法信息来确定视频编码器200所使用的插值滤波器,并使用插值滤波器来产生预测块。
[0306]
运动补偿单元302可使用一些语法信息来确定用于编码编码的视频序列的(一个或多个)帧和/或(一个或多个)条带的块的尺寸、描述编码的视频序列的图片的每个宏块如何被分割的分割信息、指示每个分割如何被编码的模式、每个帧间编码的块的一个或一个以上参考帧(和参考帧列表)以及解码编码的视频序列的其它信息。
[0307]
帧内预测单元303可以使用例如在比特流中接收的帧内预测模式来从空域相邻的块形成预测块。逆量化单元303逆量化(即,去量化)比特流中提供的并且由熵解码单元301解码的量化的视频块系数。逆变换单元303应用逆变换。
[0308]
重构单元306可将残差块与由运动补偿单元202或帧内预测单元303生成的对应的预测块相加,以形成解码的块。如果需要,还可以应用去块滤波器来对解码的块进行滤波,以便去除块效应伪像。解码的视频块然后被存储在缓冲器307中,缓冲器307为后续的运动补偿/帧内预测提供参考块,并且还产生解码的视频以在显示设备上呈现。
[0309]
图8至图12示出了可以在例如图3至图7所示的实施例中实现上述技术解决方案的示例方法。
[0310]
图8示出了视频处理的示例方法800的流程图。方法800包括,在操作810,根据规定自适应颜色变换(act)模式和基于块的增量脉冲编解码调制(bdpcm)模式可用于以互斥方式编解码当前视频单元的规则,执行包括当前视频单元的视频和视频的比特流表示之间的转换。
[0311]
图9示出了视频处理的示例方法900的流程图。方法900包括,在操作910,对于视频的作为色度视频单元的当前视频单元和视频的比特流表示之间的转换,基于规定自适应颜色变换(act)模式是否用于编解码当前视频单元和/或基于块的增量脉冲编解码调制(bdpcm)模式是否用于编解码对应于当前视频单元的亮度视频单元的规则,确定bdpcm模式是否可用。
[0312]
方法900包括,在操作920,基于该确定执行该转换。
[0313]
图10示出了视频处理的示例方法1000的流程图。方法1000包括,在操作1010,执行
包括作为色度视频单元的当前视频单元的视频和视频的比特流表示之间的转换,当前视频单元是使用自适应颜色变换(act)模式和基于块的增量脉冲编解码调制(bdpcm)模式编解码的,并且比特流表示符合格式规则,所述格式规则指定当前视频单元的色度分量的bdpcm预测方向的指示由以bdpcm模式编解码的对应的亮度视频单元的bdpcm预测方向确定,并且指定所述指示的信令通知不存在于所述比特流表示中。
[0314]
图11示出了视频处理的示例方法1100的流程图。方法1100包括,在操作1110,根据规则在包括当前视频单元的视频和视频的比特流表示之间执行转换,该规则指定在编码期间,在基于块的增量脉冲编解码调制(bdpcm)模式被应用于当前视频单元之后,自适应颜色变换(act)模式被应用于当前视频单元,或者在解码期间,在bdpcm模式被应用于当前视频单元之前,act模式被应用于当前视频单元。
[0315]
图12示出了视频处理的示例方法1200的流程图。方法1200包括,在操作1210,对于包括当前视频单元的视频和该视频的比特流表示之间的转换,确定为该转换启用了自适应颜色变换(act)模式。
[0316]
方法1200包括,在操作1220,基于该确定,通过对与当前视频单元相关联的量化参数(qp)执行剪裁操作来执行该转换。
[0317]
接下来提供一些实施例优选的解决方案的第一列表。
[0318]
a1.一种视频处理的方法,包括根据规则在包括当前视频单元的视频和视频的比特流表示之间执行转换,其中该规则指定自适应颜色变换(act)模式和基于块的增量脉冲编解码调制(bdpcm)模式可用于以互斥的方式编解码当前视频单元。
[0319]
a2.解决方案a1的方法,其中针对当前视频单元启用act模式,并且其中针对当前视频单元禁用bdpcm模式。
[0320]
a3.解决方案a2的方法,其中,对于视频的亮度分量,在比特流表示中的act模式的使用指示之后,信令通知bdpcm模式的使用指示。
[0321]
a4.解决方案a2的方法,其中,对于视频的色度分量,从比特流表示中排除bdpcm模式的使用的指示,并且其中该指示被推断为假。
[0322]
a5.解决方案a1的方法,其中针对当前视频单元启用bdpcm模式,并且其中针对当前视频单元禁用act模式。
[0323]
a6.解决方案a5的方法,其中在比特流表示中的bdpcm模式的使用指示之后,信令通知act模式的使用指示。
[0324]
a7.解决方案a5的方法,其中从比特流表示中排除act模式使用的指示,并且其中该指示被推断为假。
[0325]
a8.解决方案a5至a7中任一项的方法,其中bdpcm模式对应于用于视频的亮度分量的bdpcm模式。
[0326]
a9.解决方案a5至a7中任一项的方法,其中bdpcm模式对应于用于视频的色度分量的bdpcm模式。
[0327]
a10.一种视频处理的方法,包括:对于作为色度视频单元的视频的当前视频单元和视频的比特流表示之间的转换,基于规则确定基于块的增量脉冲编解码调制(bdpcm)模式是否可用,以及基于该确定执行该转换,其中该规则基于自适应颜色变换(act)模式是否用于编解码当前视频单元和/或bdpcm模式是否用于编解码对应于当前视频单元的亮度视
频单元。
[0328]
a11.解决方案a10的方法,其中act模式被启用,并且其中用于色度分量的bdpcm模式的使用被推断为与用于亮度分量的bdpcm模式的使用相同。
[0329]
a12.解决方案a10的方法,其中在比特流表示中包括act模式的使用的指示是基于用于亮度分量和色度分量的bdpcm预测方向。
[0330]
a13.一种视频处理的方法,包括在包括作为色度视频单元的当前视频单元的视频和视频的比特流表示之间执行转换,其中当前视频单元使用自适应颜色变换(act)模式和基于块的增量脉冲编解码调制(bdpcm)模式来编解码,其中比特流表示符合格式规则,其中该格式规则指定当前视频单元的色度分量的bdpcm预测方向的指示由以bdpcm模式编解码的对应的亮度视频单元的bdpcm预测方向确定,并且其中该指示的信令通知不存在于比特流表示中。
[0331]
a14.解决方案a13的方法,其中在确定针对当前视频单元启用了act模式时,针对当前视频单元的色度分量的bdpcm预测方向的使用的指示被推断为零。
[0332]
a15.一种视频处理的方法,包括根据规则在包括当前视频单元的视频和视频的比特流表示之间执行转换,其中,该规则指定在编码期间,在基于块的增量脉冲编解码调制(bdpcm)模式被应用于当前视频单元之后,自适应颜色变换(act)模式被应用于当前视频单元,或者在解码期间,在bdpcm模式被应用于当前视频单元之前,act模式被应用于当前视频单元。
[0333]
a16.解决方案a15的方法,其中用于视频编解码单元的色度分量的bdpcm模式的第一预测模式不同于用于视频的亮度分量的bdpcm模式的第二预测模式。
[0334]
a17.解决方案a1至a16中任一项的方法,其中所述视频单元包括编解码单元(cu)、预测单元(pu)或变换单元(tu)。
[0335]
a18.解决方案a1至a17中任一项的方法,其中所述转换包括从比特流表示中解码视频。
[0336]
a19.解决方案a1至a17中任一项的方法,其中所述转换包括将视频编码为比特流表示。
[0337]
a20.一种视频处理装置,包括处理器,该处理器被配置为实现解决方案a1至a19中任一项或多项所述的方法。
[0338]
a21.一种其上存储有指令的计算机可读介质,该指令在被执行时使得处理器实现解决方案a1至a19中的任一项或多项所述的方法。
[0339]
a22.一种计算机可读介质,存储根据解决方案a1至a19中的任一项生成的比特流表示。
[0340]
a23.一种用于存储比特流表示的视频处理装置,其中该视频处理装置被配置为实现解决方案a1至a19中的任何一个或多个中所述的方法。
[0341]
接下来提供一些实施例优选的解决方案的第二列表。
[0342]
b1.一种视频处理的方法,包括:对于包括当前视频单元的视频和该视频的比特流表示之间的转换,确定为该转换启用了自适应颜色变换(act)模式;以及基于该确定,通过对与当前视频单元相关联的量化参数(qp)执行剪裁操作来执行该转换。
[0343]
b2.解决方案b1的方法,其中剪裁操作使用被定义为如下的剪裁函数
[0344][0345]
其中x是输入自变量,l是剪裁函数的最小输出值,并且h是剪裁函数的最大输出值,并且其中l、h和x是整数。
[0346]
b3.解决方案b2的方法,其中l=0。
[0347]
b4.解决方案b2的方法,其中h=63。
[0348]
b5.解决方案b2的方法,其中l等于基于使用变换跳过模式编解码的当前视频单元的变换跳过模式的最小允许的qp。
[0349]
b6.解决方案b1的方法,其中在针对act模式的qp调整操作之后执行剪裁操作。
[0350]
b7.解决方案b2至b5中任一项的方法,其中l和h基于以下中的至少之一:(a)在解码器参数集(dps)、序列参数集(sps)、视频参数集(vps)、图片参数集(pps)、自适应参数集(aps)、图片标头、条带标头、片组标头、最大编解码单元(lcu)、编解码单元(cu)、lcu行、lcu的组、变换单元(tu)、预测单元(pu)块或视频编解码单元中信令通知的消息,(b)cu、pu、tu、块或视频编解码单元的位置,(c)包括沿边缘的至少一个样点的一个或多个块的编解码的模式,(d)应用于一个或多个块的一个或多个变换矩阵,(e)当前视频单元和/或邻近视频单元的维度或形状,(f)颜色格式的指示,(g)编解码树结构,(h)条带类型、片组类型和/或图片类型,(i)视频的颜色分量,(j)时域层标识(id),以及(k)标准的配置文件、级或层次。
[0351]
b8.解决方案b1至b7中任一项的方法,其中执行剪裁操作还基于视频的颜色格式是4:2:0或4:4:4。
[0352]
b9.解决方案b1至b7中任一项的方法,其中执行剪裁操作进一步基于在序列参数集(sps)、图片参数集(pps)、图片报头或条带报头中信令通知的剪裁操作的使用的指示。
[0353]
b10.解决方案b1至b7中任一项的方法,其中执行剪辑操作还基于以下至少之一:(a)视频内容,(b)在解码器参数集(dps)、序列参数集(sps)、视频参数集(vps)、图片参数集(pps)、自适应参数集(aps)、图片报头、条带报头、片组标头、最大编解码单元(lcu)、编解码单元(cu)、lcu行、lcu的组,变换单元(tu)、预测单元(pu)块或视频编解码单元中信令通知的消息,(c)cu、pu、tu、块或视频编解码单元的位置,(d)包括沿边缘的至少一个样点的一个或多个块的编解码的模式,(e)应用于一个或多个块的一个或多个变换矩阵,(f)当前视频单元和/或邻近视频单元的维度或形状,(g)颜色格式的指示,(h)编解码树结构,(i)条带类型、片组类型和/或图片类型,(j)视频的颜色分量,(k)时域层标识(id),以及(l)标准的配置文件、级或层次。
[0354]
b11.解决方案b1至b10中任一项的方法,其中视频单元包括编解码单元(cu)、预测单元(pu)或变换单元(tu)。
[0355]
b12.解决方案b1至b11中任一项的方法,其中转换包括从比特流表示解码视频。
[0356]
b13.解决方案b1至b11中任一项的方法,其中所述转换包括将视频编码为比特流表示。
[0357]
b14.一种视频处理装置,包括被配置为实现解决方案b1至b13中的任何一个或多个中所述的方法的处理器。
[0358]
b15.一种其上存储有指令的计算机可读介质,该指令在被执行时使得处理器实现解决方案b1至b13中的任何一个或多个中所述的方法。
[0359]
b16.一种计算机可读介质,其存储根据解决方案b1至b13中的任一项生成的比特流表示。
[0360]
b17.一种用于存储比特流表示的视频处理装置,其中该视频处理装置被配置为实现解决方案b1至b13中的任何一个或多个中的方法。
[0361]
在本文档中,术语“视频处理”可以指视频编码、视频解码、视频压缩或视频解压缩。例如,在从视频的像素表示到对应的比特流表示的转换期间,可以应用视频压缩算法,反之亦然。如语法所定义,当前视频块的比特流表示可(例如)对应于共同定位或散布在比特流内不同位置的比特。例如,可以根据变换的和编解码的误差残差值,并且还使用比特流中的报头和其他字段中的比特,对宏块进行编码。
[0362]
本文中描述的所公开的和其他解决方案、示例、实施例、模块和功能操作可以在数字电子电路中实现,或者在计算机软件、固件或硬件中实现,包括本文中公开的结构及其结构等同物,或者在它们中的一个或多个的组合中实现。所公开的和其他实施例可以实现为一个或多个计算机程序产品,即编码在计算机可读介质上的计算机程序指令的一个或多个模块,用于由数据处理装置执行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基底、存储设备、实现机器可读传播信号的物质组合,或者它们中的一个或多个的组合。术语“数据处理装置”包含用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多个处理器或计算机。除了硬件之外,该装置可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。传播信号是人工生成的信号,例如,机器生成的电、光或电磁信号,其被生成来编码信息以传输到合适的接收机装置。
[0363]
计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言编写,包括编译或解释语言,并且它可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程或适用于计算环境的其他单元。计算机程序不一定对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本),存储在专用于所讨论的程序的单个文件中,或者存储在多个协作文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。计算机程序可以被部署为在一台计算机或位于一个地点或分布在多个地点并通过通信网络互连的多台计算机上执行。
[0364]
本文中描述的过程和逻辑流程可以由一个或多个可编程处理器来执行,这些处理器执行一个或多个计算机程序,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路来执行,并且装置也可以被实现为专用逻辑电路,例如fpga(现场可编程门阵列)或asic(专用集成电路)。
[0365]
举例来说,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储设备。通常,计算机还将包括或可操作地耦合到一个或多个用于存储数据的大容量存储设备,例如磁盘、磁光盘或光盘,以从该大容量存储设备接收数据或向其传送数据,或两者兼有。然而,计算机不需要有这样的设备。适于存储计算机程序指令和
数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储设备,包括例如半导体存储设备,例如eprom、eeprom和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及cd rom和dvd-rom盘。处理器和存储器可以由专用逻辑电路来补充或并入其中。
[0366]
虽然本专利文件包含许多细节,但这些细节不应被解释为对任何主题或所要求保护的内容的范围的限制,而是对特定技术的特定实施例所特有的特征的描述。在本专利文件中在独立实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独或以任何合适的子组合来实现。此外,尽管特征可能在上面被描述为在某些组合中起作用,并且甚至最初被如此要求保护,但是来自所要求保护的组合的一个或多个特征在一些情况下可以从该组合中删除,并且所要求保护的组合可以针对子组合或子组合的变体。
[0367]
类似地,虽然在附图中以特定的顺序描述了操作,但是这不应该被理解为要求这些操作以所示的特定顺序或顺序执行,或者要求所有示出的操作都被执行,以获得期望的结果。此外,在本专利文献中描述的实施例中的各种系统组件的分离不应被理解为在所有实施例中都需要这种分离。
[0368]
仅描述了一些实施方式和示例,并且可以基于本专利文献中描述和示出的内容进行其他实施方式、增强和变化。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1