一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

使用量化残差差分脉冲编解码调制编解码的帧内编解码视频的制作方法

2021-12-14 21:28:00 来源:中国专利 TAG:

使用量化残差差分脉冲编解码调制编解码的帧内编解码视频
1.相关申请的交叉引用
2.根据适用的专利法和/或依据巴黎公约的规则,本技术旨在及时要求2019年5月1日提交的国际专利申请no.pct/cn2019/085398的优先权和权益。出于根据法律的所有目的,前述申请的整个公开通过引用而并入作为本技术公开的一部分。
技术领域
3.本专利文档涉及视频编解码技术、设备和系统。


背景技术:

4.尽管在视频压缩方面取得了进步,但数字视频仍然是互联网和其他数字通信网络上使用的最大带宽。随着能够接收和显示视频的连接用户设备数量的增加,预计数字视频使用的带宽需求将继续增长。


技术实现要素:

5.本文档描述了在视频或图像的解码或编码期间使用二次变换的各种实施例和技术。
6.在一个示例方面,一种视频处理方法包括通过使用差分编解码模式确定要存储的与视频的当前视频块相关联的第一帧内编解码模式来执行当前视频块和当前视频块的比特流表示之间的转换,其中与当前视频块相关联的第一帧内编解码模式根据差分编解码模式所使用的第二预测模式来确定,并且其中在差分编解码模式下,当前视频块的帧内预测的量化残差和量化残差的预测之间的差使用差分脉冲编解码调制(dpcm)表示在当前视频块的比特流表示中表示。
7.在另一个示例方面,一种视频处理方法包括根据规则来确定差分编解码模式在视频的当前视频块和当前视频块的比特流表示之间的转换期间使用的帧内编解码模式;以及基于该确定,使用差分编解码模式来执行当前视频块和当前视频块的比特流表示之间的转换,其中在差分编解码模式下,当前视频块的帧内预测的量化残差和量化残差的预测之间的差使用差分脉冲编解码调制(dpcm)表示在当前视频块的比特流表示中表示,并且其中量化残差的预测根据帧内编解码模式来执行。
8.在另一个示例方面,公开了一种视频处理方法。该方法包括,使用差分编解码模式并选择性地使用基于共存规则的帧内预测模式来执行当前视频块和当前视频块的比特流表示之间的转换;其中,帧内预测模式用于生成当前视频块的样点的预测;并且其中,差分编解码模式用于使用差分脉冲编解码调制表示来表示来自像素的预测的量化残差块。
9.在另一个示例方面,公开了另一种视频处理的方法。该方法包括,使用差分编解码模式来执行当前视频块和当前视频块的比特流表示之间的转换,其中在该差分编解码模式下使用差分脉冲编解码调制表示来表示来自当前视频块的像素的预测的量化残差块;其中,预测的第一方向或差分编解码模式的第二方向可从比特流表示推断。
10.在又一个示例方面,公开了另一种视频处理的方法。该方法包括,基于应用性规则来确定差分编解码模式适用于当前视频块和当前视频块的比特流表示之间的转换;以及使用差分编解码模式来执行当前视频块和比特流表示之间的转换。这里,在差分编解码模式下,使用在不同于水平方向或垂直方向的残差预测方向上执行的差分脉冲编解码调制表示来表示来自当前视频块的像素的帧内预测的量化残差块。
11.在又一个示例方面,公开了另一种视频处理的方法。该方法包括,确定差分编解码模式适用于当前视频块和当前视频块的比特流表示之间的转换;以及使用差分编解码模式的实施规则来执行当前视频块和比特流表示之间的转换;其中,在差分编解码模式下,使用在不同于水平方向或垂直方向的残差预测方向上执行的差分脉冲编解码调制表示来表示来自当前视频块的像素的帧内预测的量化残差块。
12.在又一个示例方面,公开了另一种视频处理方法。该方法包括确定在当前视频块和当前视频块的比特流表示之间的转换期间使用的差分编解码模式和与当前视频块相关联的帧内编解码模式相同,并且使用差分编解码模式的实施规则来执行当前视频块和比特流表示之间的转换。
13.在又一个示例方面,公开了一种视频处理装置。该装置包括被配置为执行以上公开的方法的处理器。
14.在又一个示例方面,公开了一种计算机可读介质。该介质上存储有用于上述方法的处理器实施的代码。
15.本文档描述了这些和其他方面。
附图说明
16.图1是帧内块复制的图示。
17.图2示出了以调色板模式编解码的块的示例。
18.图3示出了示例使用调色板预测值来信令通知调色板条目。
19.图4示出了水平和垂直遍历扫描的示例。
20.图5示出了调色板索引的编解码的示例。
21.图6示出了仿射线性加权帧内预测(alwip)过程的示例过程。
22.图7示出了仿射线性加权帧内预测(alwip)过程的示例过程。
23.图8示出了仿射线性加权帧内预测(alwip)过程的示例过程。
24.图9示出了仿射线性加权帧内预测(alwip)过程的示例过程。
25.图10是用于实施本文档中描述的技术的示例硬件平台的框图。
26.图11是视频处理的示例方法的流程图。
27.图12示出了四个merge候选的示例。
28.图13示出了在视频编解码中使用的示例merge候选对。
29.图14示出了67种帧内预测模式的示例。
30.图15是示出可以利用本公开的技术的示例视频编解码系统的框图。
31.图16是示出视频编码器的示例的框图。
32.图17是示出视频解码器的示例的框图。
33.图18是示出可以在其中实施本文公开的各种技术的示例视频处理系统的框图。
34.图19和图20示出了视频处理的示例方法的流程图。
具体实施方式
35.本文档中使用章节标题是为了便于理解,而不是将章节中公开的实施例仅限于该章节。此外,虽然参考通用视频编解码或其他特定视频编解码器描述了特定实施例,但是所公开的技术也适用于其他视频编解码技术。此外,虽然一些实施例详细描述了视频编解码步骤,但是应当理解,撤销编解码的对应解码步骤将由解码器实施。此外,术语视频处理包括视频编解码或压缩、视频解码或解压缩以及视频转码,其中视频像素从一个压缩格式表示为另一个压缩格式或以不同的压缩比特率表示。
36.1.摘要
37.本专利文档涉及视频编解码技术。具体地,它涉及视频编解码中的dpcm编解码。它可以应用于现有的视频编解码标准,如hevc,或即将要定案的标准(多功能视频编解码)。它也可以应用于未来的视频编解码标准或视频编解码器。
38.2.初步讨论
39.视频编解码标准主要是通过熟知的itu

t和iso/iec标准的发展而演变的。itu

t制定了h.261和h.263,iso/iec制定了mpeg

1和mpeg

4可视化,并且这两个组织联合制定了h.262/mpeg

2视频和h.264/mpeg

4高级视频编解码(advanced video coding,avc)和h.265/hevc[1]标准。自h.262以来,视频编解码标准基于混合视频编解码结构,其中利用了时域预测加变换编解码。为了探索hevc以外的未来视频编解码技术,vceg和mpeg于2015年联合成立了联合视频探索组(joint video exploration team,jvet)。此后,jvet采用了许多新方法,并将其放入名为联合探索模型(joint exploration model,jem)[3,4]的参考软件中。2018年4月,vceg(q6/16)和iso/iec jtc1 sc29/wg11(mpeg)之间的联合视频专家组(jvet)成立,以致力于vvc(versatile video coding,多功能视频编解码)标准,目标是与hevc相比比特率降低50%。
[0040]
vvc草案的最新版本,即通用视频编解码(草案4)可以在以下处找到:
[0041]
phenix.it

sudparis.eu/jvet/doc_end_user/current_document.php?id=5755
[0042]
the latest reference software of vvc,named vtm,could be found at:
[0043]
vcgit.hhi.fraunhofer.de/jvet/vvcsoftware_vtm/tags/vtm

4.0
[0044]
2.1帧内块复制
[0045]
hevc屏幕内容编解码扩展(hevc

scc)[1]和当前vvc测试模型(vtm

4.0)采用了帧内块复制(ibc),也称为当前图片参考。ibc将运动补偿的概念从帧间编解码扩展到帧内编解码。如图1所示范的,当应用ibc时,当前块由相同图片中的参考块预测。在当前块被编解码或解码之前,参考块中的样点必须已经被重构。尽管ibc对大多数相机捕捉的序列并不那么有效,但它示出对屏幕内容的显著编解码增益。原因是屏幕内容图片中有很多重复的图案,诸如图标和文本字符。ibc可以有效地移除这些重复图案之间的冗余。在hevc

scc中,如果帧间编解码单元(cu)选择当前图片作为其参考图片,则它可以应用ibc。在这种情况下,mv被重命名为块矢量(bv),并且bv总是具有整数像素精度。为了与主简档hevc兼容,当前图片在解码图片缓冲区(dpb)中被标记为“长期”参考图片。应当注意,类似地,在多视图/3d视频编解码标准中,帧间视图参考图片也被标记为“长期”参考图片。
[0046]
在bv找到其参考块之后,可以通过复制参考块来生成预测。残差可以通过从原始信号中减去参考像素得到。然后,可以像在其他编解码模式下一样应用变换和量化。
[0047]
图1是帧内块复制的图示。
[0048]
然而,当参考块在图片之外,或与当前块重叠,或在重构区域之外,或在受一些约束限制的有效区域之外时,部分或全部像素值没有被定义。基本上,有两种解决方案来处理这样的问题。一种是不允许这样的情况,例如在比特流一致性中。另一种是对那些未定义的像素值应用填充。以下子章节详细描述了解决方案。
[0049]
2.2hevc屏幕内容编解码扩展中的ibc
[0050]
在hevc的屏幕内容编解码扩展中,当块使用当前图片作为参考时,它应该保证整个参考块在可用的重构区域内,如以下规范文本所指示的:
[0051]
变量offsetx和offsety被推导如下:
[0052]
offsetx=(chromaarraytype==0)?0:(mvclx[0]&0x7?2:0)(0

106)
[0053]
offsety=(chromaarraytype==0)?0:(mvclx[1]&0x7?2:0)(0

107)
[0054]
比特流一致性的要求是,当参考图片是当前图片时,亮度运动矢量mvlx应当遵守以下约束:
[0055]

当调用第6.4.1条中指定的z扫描顺序块可用性的推导过程时,其中以设置为等于(xcb,ycb)的(xcurr,ycurr)和设置为等于(xpb (mvlx[0]>>2)

offsetx,ypb (mvlx[1]>>2)

offsety)的邻近亮度位置(xnby,ynby)作为输入,输出应当等于true(真)。
[0056]

当调用第6.4.1条中指定的z扫描顺序块可用性的推导过程时,其中以设置为等于(xcb,ycb)的(xcurr,ycurr)和设置为等于(xpb (mvlx[0]>>2) npbw

1 offsetx,ypb (mvlx[1]>>2) npbh

1 offsety)的邻近亮度位置(xnby,ynby)作为输入,输出应当等于true。
[0057]

一个或两个以下条件应当为真:
[0058]

(mvlx[0]>>2) npbw xb1 offsetx的值小于或等于0。
[0059]

(mvlx[1]>>2) npbh yb1 offsety的值小于或等于0。
[0060]

以下条件应当为真:
[0061]
(xpb (mvlx[0]>>2) npbsw

1 offsetx)/ctbsizey

xcurr/ctbsizey<=ycurr/ctbsizey

(ypb (mvlx[1]>>2) npbsh

1 offsety)/ctbsizey(0

108)
[0062]
因此,参考块与当前块重叠或者参考块在图片之外的情况将不会发生。不需要填充参考或预测块。
[0063]
2.3vvc测试模型中的ibc
[0064]
在当前vvc测试模型(即,vtm

4.0设计)中,整个参考块应该与当前编解码树单元(ctu)一起,并且不与当前块重叠。因此,不需要填充参考或预测块。ibc标志被编解码为当前cu的预测模式。因此,对于每个cu,总共有三种预测模式,mode_intra、mode_inter和mode_ibc。
[0065]
2.3.1ibcmerge模式
[0066]
在ibcmerge模式中,从比特流中解析指向ibcmerge候选列表中的条目的索引。ibcmerge列表的构建可以根据以下步骤顺序进行总结:
[0067]

步骤1:推导空域候选
[0068]

步骤2:插入hmvp候选
[0069]

步骤3:插入成对平均候选
[0070]
在空域merge候选的推导中,在位于图12中描绘的位置的候选当中最多选择四个merge候选。推导的顺序为a1、b1、b0、a0和b2。仅当位置a1、b1、b0、a0的任何pu不可用(例如,因为它属于另一个条带或片)或未以ibc模式编解码时,才考虑位置b2。在位置a1处的候选被添加之后,剩余候选的插入经受冗余检查,该冗余检查确保具有相同运动信息的候选从列表中排除,以便提高编解码效率。为了降低计算复杂度,在所提到的冗余检查中并没有考虑所有可能的候选对。相反,仅考虑图13中用箭头链接的对,并且如果用于冗余检查的对应候选不具有相同的运动信息,则候选仅被添加到列表。
[0071]
在插入空域候选之后,如果ibc merge列表尺寸仍然小于最大ibc merge列表尺寸,则可以插入来自hmvp表的ibc候选。在插入hmvp候选时执行冗余检查。
[0072]
最终,成对平均候选被插入到ibc merge列表中。
[0073]
当由merge候选标识的参考块在图片之外,或者与当前块重叠,或者在重构区域之外,或者在受一些约束限制的有效区域之外时,该merge候选被称为无效merge候选。
[0074]
注意,无效merge候选可以被插入到ibc merge列表中。
[0075]
2.3.2ibc amvp模式
[0076]
在ibc amvp模式下,从比特流中解析指向ibc amvp列表中的条目的amvp索引。ibc amvp列表的构建可以根据以下步骤顺序进行总结:
[0077]

步骤1:推导空域候选
[0078]

检查a0、a1,直到找到可用候选。
[0079]

检查b0、b1、b2,直到找到可用候选。
[0080]

步骤2:插入hmvp候选
[0081]

步骤3:插入零候选
[0082]
在插入空域候选之后,如果ibc amvp列表尺寸仍然小于最大ibc amvp列表尺寸,则可以插入hmvp表中的ibc候选。
[0083]
最后,零候选被插入到ibc amvp列表中。
[0084]
2.4调色板模式
[0085]
调色板模式背后的基本思想是cu中的样点由代表性色彩值的小集合表示。该集合被称为调色板。也可以通过信令通知逸出符号(escape symbol)(其后是(可能是量化的)分量值)来指示调色板之外的样点。这在图2中示出。
[0086]
2.5hevc屏幕内容编解码扩展(hevc

scc)中的调色板模式
[0087]
在hevc

scc中的调色板模式下,使用预测方式对调色板和索引图进行编解码。
[0088]
2.5.1调色板条目的编解码
[0089]
对于调色板条目的编解码,保持调色板预测值。调色板的最大尺寸以及调色板预测值在sps中被信令通知。在hevc

scc中,在pps中引入了palette_predictor_initializer_present_flag。当该标志为1时,用于初始化调色板预测值的条目在比特流中信令通知。调色板预测值在每个ctu行、每个条带和每个片的开头初始化。根据palette_predictor_initializer_present_flag的值,调色板预测值被重置为0或使用pps中信令通知的调色板预测值初始化器条目进行初始化。在hevc

scc中,启用了尺寸为0的调色板预测
值初始化器,以允许在pps级别显式禁用调色板预测值初始化。
[0090]
对于调色板预测值中的每个条目,信令通知重用标志,以指示它是否是当前调色板的一部分。这在图3中示出。使用零的游程长度编解码来传送重用标志。此后,新调色板条目的数量使用0阶的指数golomb码来信令通知。最终,新调色板条目的分量值被信令通知。
[0091]
2.5.2调色板索引的编解码
[0092]
如图4所示,使用水平和垂直遍历扫描对调色板索引进行编解码。使用palette_transpose_flag在比特流中显式信令通知扫描顺序。对于该子章节的其余部分,假设扫描为水平。
[0093]
调色板索引使用两种主要的调色板样点模式进行编解码:“index”和“copy_above”。如前所解释的,逸出符号也作为“index”模式被信令通知,并被分配等于最大调色板尺寸的索引。除了顶行或先前模式为“copy_above”时,该模式使用标志来信令通知。在“copy_above”模式下,复制上面行中的样点的调色板索引。在“index”模式下,调色板索引是显式信令通知的。对于“index”和“copy_above”模式两者,指定也使用相同模式进行编解码的后续样点的数量的游程值被信令通知。当逸出符号是“index”或“copy_above”模式下的游程的一部分时,针对每个逸出符号信令通知逸出分量值。调色板索引的编解码在图5中示出。
[0094]
该语法顺序按如下方式完成。首先,信令通知cu的索引值的数量。随后是使用截断二进制编解码的整个cu的实际索引值的信令通知。索引数量以及索引值都在旁路模式下进行编解码。这将索引相关的旁路二进制位分组在一起。然后调色板样点模式(如有必要)和游程以交错方式信令通知。最终,对应于整个cu的逸出样点的分量逸出值被分组在一起,并在旁路模式下进行编解码。
[0095]
附加语法元素,last_run_type_flag,在信令通知索引值之后被信令通知。该语法元素与索引的数量相结合,消除了信令通知与块中的最后游程相对应的游程值的需要。
[0096]
在hevc

scc中,也针对4:2:2、4:2:0和单色色度格式启用调色板模式。对于所有色度格式,调色板条目和调色板索引的信令通知几乎是相同的。在非单色格式的情况下,每个调色板条目由3个分量组成。对于单色格式,每个调色板条目由单个分量组成。对于子采样色度方向,色度样点与可被2整除的亮度样点索引相关联。在为cu重构调色板索引后,如果样点只有与其相关联的单个分量,则只使用调色板条目的第一分量。信令通知的唯一差别是逸出分量值。对于每个逸出样点,根据与该样点相关联的分量的数量,信令通知的逸出分量值的数量可能不同。
[0097]
2.6变换跳过模式下的系数编解码
[0098]
在jvet

m0464和jvet

n0280中,为了使残差编解码适应变换跳过级别的统计和信号特征,对变换跳过(ts)模式下的系数编解码提出了几个修改。
[0099]
提议的修改列出如下。
[0100]
没有最后的显著扫描位置:由于残差信号反映了预测之后的空域残差,并且没有对ts执行通过变换的能量集中,所以不再给出在变换块的右下角的尾随零或不显著级别的更高概率。因此,在这种情况下,省略了最后显著扫描位置信令。相反,要处理的第一子块是变换块内的最右底部子块
[0101]
子块cbf:最后显著扫描位置信令的缺失要求ts的具有coded_sub_block_flag的
子块cbf信令被修改如下:
[0102]

由于量化,前述无意义序列可能仍然局部地出现在变换块内。因此,如上所述移除最后显著扫描位置,并为所有子块编解码coded_sub_block_flag。
[0103]

覆盖dc频率位置的子块(左顶部子块)的coded_sub_block_flag呈现了特殊情况。在vvc草案3中,该子块的coded_sub_block_flag从不被信令通知并且总是被推断为等于1。当最后显著扫描位置位于另一个子块中时,这意味着在dc子块之外有至少一个显著级别。因此,dc子块可以只包含零/非显著级别,尽管该子块的coded_sub_block_flag被推断为等于1。在ts中缺失最后扫描位置信息的情况下,每个子块的coded_sub_block_flag被信令通知。这还包括dc子块的coded_sub_block_flag,除了当所有其他coded_sub_block_flag语法元素已经等于0时。在这种情况下,dccoded_sub_block_flag被推断为等于1(inferdcsbcbf=1)。因为在该dc子块中必须有至少一个显著级别,所以如果该dc子块中的所有其他sig_coeff_flag语法元素都等于0,则反而(0,0)处的第一位置的sig_coeff_flag语法元素不被信令通知并被推导为等于1(injectsbdcsigcoefflag=1)。
[0104]

coded_sub_block_flag的上下文建模被改变。上下文模型索引被计算为当前子块的左边的coded_sub_block_flag和上方的coded_sub_block_flag之和,而不是两者的逻辑析取(disjunction)。
[0105]
sig_coeff_flag上下文建模:修改sig_coeff_flag上下文建模中的局部模板,以仅包括当前扫描位置左边的邻居(nb0)和上方的邻居(nb1)。上下文模型偏移只是重要邻近位置sig_coeff_flag[nb0] sig_coeff_flag[nb1]的数量。因此,根据当前变换块内的对角线d的不同上下文集的选择被移除。这产生了三个上下文模型和用于编解码sig_coeff_flag标志的单个上下文模型集。
[0106]
abs_level_gt1_flag和par_level_flag上下文建模:对abs_level_gt1_flag和par_level_flag采用单个上下文模型。
[0107]
abs_remainder编解码:尽管变换跳过残差绝对级别的经验分布通常仍然符合拉普拉斯或几何分布,但是存在比变换系数绝对级别更大的不稳定性。具体地,对于残差绝对级别,连续实现窗口内的方差更高。这激发了对abs_remainder语法二值化和上下文建模的以下修改:
[0108]

在二值化中使用更高的截止值(即,从利用sig_coeff_flag、abs_level_gt1_flag、par_level_flag和abs_level_gt3_flag的编解码到abs_remainder的rice码的转变点)、以及每个二进制位位置的专用上下文模型产生更高的压缩效率。增加截止值将导致更多的“大于x”标志,例如引入abs_level_gt5_flag、abs_level_gt7_flag等,直到达到截止值。截止值本身固定为5(numgtflags=5)。
[0109]

修改rice参数推导的模板,即仅当前扫描位置的左边的邻居和上方的邻居被认为类似于sig_coeff_flag上下文建模的局部模板。
[0110]
coeff_sign_flag上下文建模:由于记号序列内的不稳定性以及预测残差常常偏置的事实,即使当全局经验分布几乎均匀分布时,也可以使用上下文模型对记号进行编解码。单个专用上下文模型用于记号的编解码,并且符号在sig_coeff_flag之后被解析,以将所有上下文编解码二进制位保持在一起。
[0111]
2.7量化残差块差分脉冲码调制(qr

bdpcm)
[0112]
在jvet

m0413中,提出了量化残差块差分脉冲码调制(qr

bdpcm)来有效编解码屏幕内容。
[0113]
qr

bdpcm中使用的预测方向可以是垂直和水平预测模式。通过在类似于帧内预测的预测方向(水平或垂直预测)上的样点复制,对整个块进行帧内预测。残差被量化,量化残差与其预测值(水平或垂直)量化值之间的增量(delta)被编解码。这可以通过以下进行描述:对于尺寸为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时:
[0114][0115]
对于水平预测,应用类似的规则,通过以下获得残差量化样点
[0116][0117]
残差量化样点被传送到解码器。
[0118]
在解码器侧,使上面计算相反,以产生q(r
i,j
),0≤i≤m

1,0≤j≤n

1。对于垂直预测情况,
[0119][0120]
对于水平情况,
[0121][0122]
逆量化残差q
‑1(q(r
i,j
))被添加到帧内块预测值,以产生重构样点值。
[0123]
该方案的主要好处是,在系数解析期间可以动态地执行逆dpcm,只要在解析系数时添加预测值,或者其可以在解析之后被执行。
[0124]
qr

bdpcm的草案文本改变如下所示。
[0125]
7.3.6.5编解码单元语法
[0126]
[0127]
[0128][0129]
等于1的bdpcm_flag[x0][y0]指定bdpcm_dir_flag存在于包括位置(x0,y0)处的亮度编解码块的编解码单元中
[0130]
等于0的bdpcm_dir_flag[x0][y0]指定要在bdpcm块中使用的预测方向为水平,否则为垂直。
[0131]
8.4.2亮度帧内预测模式的推导过程
[0132]
该过程的输入为:
[0133]

亮度位置(xcb,ycb),指定当前亮度编解码块相对于当前图片的左顶部亮度样点的左顶部样点,
[0134]

变量cbwidth,指定亮度样点中的当前编解码块的宽度,
[0135]

变量cbheight,指定亮度样点中的当前编解码块的高度。
[0136]
在该过程中,推导亮度帧内预测模式intrapredmodey[xcb][ycb]。
[0137]
表8

1指定了帧内预测模式intrapredmodey[xcb][ycb]的值和相关联名称。
[0138]
表8
‑1‑
帧内预测模式和相关联名称的规范
[0139][0140]


:帧内预测模式intra_lt_cclm、intra_l_cclm和intra_t_cclm仅适用于色度分量。
[0141]
intrapredmodey[xcb][ycb]通过以下有序步骤推导:
[0142]

邻近位置(xnba,ynba)和(xnbb,ynbb)分别被设置为等于(xcb

1,ycb cbheight

1)和(xcb cbwidth

1,ycb

1)。
[0143]

对于x被a或b代替,变量candintrapredmodex被推导如下:
[0144]

[0145]

变量ispdefaultmode1和ispdefaultmode2被定义如下:
[0146]

[0147]

candmodelist[x](其中x=0..5)被推导如下:
[0148]

[0149]

intrapredmodey[xcb][ycb]通过应用以下过程来推导:
[0150]

如果bdpcm_flag[xcb][ycb]等于1,则intrapredmodey[xcb][ycb]被设置为等于candmodelist[0]。
[0151]

否则,如果intra_luma_mpm_flag[xcb][ycb]等于1,则intrapredmodey[xcb][ycb]被设置为等于candmodelist[intra_luma_mpm_idx[xcb][ycb]]。
[0152]

否则,intrapredmodey[xcb][ycb]通过应用以下有序步骤来推导:
[0153]

[0154]
变量intrapredmodey[x][y](其中x=xcb..xcb cbwidth

1,并且y=ycb..ycb cbheight

1)被设置为等于intrapredmodey[xcb][ycb]。
[0155]
2.8基于矩阵的帧内预测(mip)
[0156]
基于矩阵的帧内预测也称为仿射线性加权帧内预测(alwip),其使用加权矩阵来推导帧内预测信号。
[0157]
2.8.1方法描述
[0158]
为了预测具有宽度w和高度h的矩形块的样点,仿射线性加权帧内预测(alwip)将块左边的h个重构邻近边界样点的一条线和块上方的w个重构邻近边界样点的一条线作为输入。如果重构样点不可用,则像在传统帧内预测中那样生成它们。
[0159]
预测信号的生成基于以下三个步骤:
[0160]
1.在边界样点中,通过平均提取在w=h=4的情况下的四个样点和在所有其他情况下的八个样点。
[0161]
2.使用平均样点作为输入,执行矩阵矢量乘法,随后添加偏移。结果是原始块中样点的子采样集上的简化预测信号。
[0162]
3.剩余位置处的预测信号是通过线性插值从子采样集上的预测信号生成的,其中该线性插值是每个方向上的单步线性插值。
[0163]
生成预测信号所需的矩阵和偏移矢量取自矩阵的三个集合s0、s1、s2。集合s0由18个矩阵i∈{0,...,17}和18个偏移矢量i∈{0,...,17}组成,每个矩阵具有16行和4列,并且每个偏移矢量的尺寸为16。该集合的矩阵和偏移矢量用于尺寸为4
×
4.的块。集合s1由10个矩阵i∈{0,...,9}和10个偏移矢量i∈{0,...,9}组成,每个矩阵具有16行和8列,并且每个偏移矢量的尺寸为16。该集合的矩阵和偏移矢量用于尺寸为4
×
8、8
×
4和8
×
8的块。最终,集合s2由6个矩阵i∈{0,...,5}和6个偏移矢量i∈{0,...,5}组成,每个矩阵具有64行和8列,并且每个偏移矢量的尺寸为64。该集合的矩阵和偏移矢量或者这些矩阵和偏移矢量的一部分用于所有其他块形状。
[0164]
计算矩阵矢量乘积所需的乘法总数总是小于或等于4
·
w
·
h。换句话说,对于alwip模式,需要每个样点最多四次乘法。
[0165]
2.8.2边界的平均
[0166]
在第一步中,输入边界bdry
top
和bdry
left
被简化为更小的边界和这里,在4
×
4块的情况下,两者都由2个样点组成,并且在所有其他情况下,两者都由4个样点组成。
[0167]
在4
×
4块的情况下,对于0≤i<2,定义
[0168][0169]
并且近似地定义
[0170]
否则,如果块宽度w给出为w=4
·2k
,对于0≤i<4,则定义
[0171][0172]
并且近似地定义
[0173]
这两个简化的边界和连结为简化的边界矢量bdry
red
,因此,对于形状4
×
4的块,该矢量的尺寸为4,而对于所有其它形状的块,该矢量的尺寸为8。如果mode指的是alwip模式,该连结被定义如下:
[0174][0175]
最终,对于子采样预测信号的插值,在大块上,需要平均边界的第二版本。也就是说,如果min(w,h)>8且w≥h,写为w=8*2
l
,并且对于0≤i<8,定义
[0176][0177]
如果min(w,h)>8且h>w,则近似地定义
[0178]
2.8.3通过矩阵矢量乘法生成简化的预测信号
[0179]
在简化的输入矢量bdry
red
中,生成简化的预测信号pred
red
。后一个信号是在具有宽度w
red
和高度h
red
的下采样块上的信号。这里,w
red
和h
red
被定义为:
[0180][0181][0182]
通过计算矩阵矢量乘积并添加偏移来计算简化的预测信号pred
red

[0183]
pred
red
=a
·
bdry
red
b。
[0184]
这里,a是矩阵,如果w=h=4,则具有w
red
·
h
red
行和4列,并且在所有其他情况下,具有8列。b是尺寸为w
red
·
h
red
的矢量。
[0185]
矩阵a和矢量b取自集合s0、s1、s2中的一个,如下所示。定义索引idx=idx(w,h),如下:
[0186][0187]
此外,表达m如下:
[0188][0189]
然后,如果idx≤1或idx=2并且min(w,h)>4,表达和和在idx=2并且min(w,h)=4的情况下,假设a是通过省去的每行而出现的矩阵,在w=4的情况下,其对应于下采样块中的奇数x坐标,或者在h=4的情况下,其对应于下采样块中的奇数y坐标。
[0190]
最终,在以下情况下,简化的预测信号被其转置所代替:
[0191]

w=h=4并且mode≥18
[0192]

max(w,h)=8并且mode≥10
[0193]

max(w,h)>8并且mode≥6
[0194]
在w=h=4的情况下,计算pred
red
所需的乘法次数为4,因为在这种情况下a具有4列和16行。在所有其他情况下,a具有8列和w
red
·
h
red
行,并且立即验证在这些情况下需要8
·
w
red
·
h
red
≤4
·
w
·
h次乘法,即,也在这些情况下,需要每个样点最多4次乘法来计算pred
red

[0195]
2.8.4整个alwip过程的图示
[0196]
在图6、图7、图8和图9中针对不同形状示出了平均、矩阵矢量乘法和线性插值的整个过程。请注意,剩余形状被视为所描述的情况之一。
[0197]
1.给出4
×
4块,alwip沿着边界的每个轴取两个平均值。得到的四个输入样点进入矩阵矢量乘法。矩阵取自集合s0。在添加偏移之后,这产生16个最终预测样点。线性插值对于生成预测信号不是必需的。因此,执行每个样点总共(4
·
16)/(4
·
4)=4次乘法。
[0198]
图6是4
×
4块的alwip的图示。
[0199]
2.给出8
×
8块,alwip沿着边界的每个轴取四个平均值。得到的八个输入样点进入矩阵矢量乘法。矩阵取自集合s1。这在预测块的奇数位置产生16个样点。因此,执行每个样点总共8
·
16)/(8
·
8)=2次乘法。在添加偏移之后,通过使用简化的顶部边界对这些样点进行垂直插值。使用原始的左边界进行水平插值。
[0200]
图7是8
×
8块的alwip的图示。
[0201]
3.给出8
×
4块,alwip沿着边界的水平轴取四个平均值,并且在左边界上取四个原始边界值。得到的八个输入样点进入矩阵矢量乘法。矩阵取自集合s1。这在预测块的奇数水平和每个垂直位置上产生16个样点。因此,执行每个样点总共(8
·
16)/(8
·
4)=4次乘法。在添加偏移之后,通过使用原始左边界对这些样点进行水平插值。
[0202]
图8是8
×
4块的alwip的图示。
[0203]
转置后的情况被相应地对待。
[0204]
4.给出16
×
16块,alwip沿着边界的每个轴取四个平均值。得到的八个输入样点进入矩阵矢量乘法。矩阵取自集合s2。这在预测块的奇数位置产生64个样点。因此,执行每个样点总共(8
·
64)/(16
·
16)=2次乘法。在添加偏移之后,通过使用顶部边界的八个平均值对这些样点进行垂直插值。使用原始的左边界进行水平插值。
[0205]
图9是16
×
16块的alwip的图示。
[0206]
对于更大的形状,过程基本相同,容易检查每个样点的乘法次数少于四次。
[0207]
对于w
×
8块,其中w>8,仅需要水平插值,因为样点是在奇数水平和每个垂直位置给出的。在这种情况下,执行每个样点(8
·
64)/(w
·
8)=64/w次乘法来计算简化预测。
[0208]
最终,对于w
×
4块,其中w>8,假设a
k
是通过省去对应于沿着下采样块的水平轴的奇数条目的每行而出现的矩阵。因此,输出尺寸为32,并且再次,只剩下水平插值要执行。对于简化预测的计算,执行每个样点(8
·
32)/(w
·
4)=64/w次乘法。对于w=16,不需要附加的乘法,而对于w>16,线性插值需要每个样点少于2次乘法。因此,乘法的总数小于或等于四。
[0209]
转置后的情况被相应地对待。
[0210]
2.8.5单步线性插值
[0211]
对于w
×
h块,其中max(w,h)≥8,预测信号通过线性插值从简化的预测信号出现。根据块形状,线性插值在垂直、水平或两个方向上进行。如果要在两个方向上应用线性插值,则如果w<h,首先在水平方向上应用,否则首先在垂直方向上应用。
[0212]
不失一般性地考虑w
×
h块,其中max(w,h)≥8并且w≥h。然后,如下执行一维线性插值。不失一般性,它足以描述垂直方向上的线性插值。首先,简化的预测信号通过边界信号扩展到顶部。定义垂直上采样因子u
ver
=h/h
red
,并且写为然后,通过以下定义扩展的简化预测信号
[0213][0214]
然后,从该扩展的简化预测信号,通过以下生成垂直线性插值预测信号
[0215][0216]
对于0≤x<w
red
,0≤y<h
red
并且0≤k<u
ver

[0217]
仅比特移位线性插值算法不需要任何乘法。
[0218]
2.8.6提出的帧内预测模式的信号化
[0219]
对于帧内模式下的每个编解码单元(cu),在比特流中传送指示alwip模式是否将被应用于对应的预测单元(pu)的标志。如果要应用alwip模式,则alwip模式的索引predmode使用具有3个mpm的mpm列表来信令通知。
[0220]
这里,如下,使用上方和左边pu的帧内模式来执行mpm的推导。有将alwip模式分配给每个传统的帧内预测模式predmode
anqular
的三个固定的表map_angular_to_alwip
idx
,idx∈{0,1,2}
[0221]
predmode
alwip
=map_angular_to_alwip
idx
[predmode
angular
].
[0222]
对于具有宽度w和高度h的每个pu,定义索引
[0223]
idx(pu)=idx(w,h)∈{0,1,2}
[0224]
这指示如在上面第1.3节中,从三个集合中的哪一个取得alwip参数。
[0225]
如果上面的预测单元pu
above
可用,与当前pu属于相同的ctu,并且处于帧内模式,则如果idx(pu)=idx(pu
above
)并且如果alwip以alwip模式应用于pu
above
,则表达
[0226][0227]
如果上面的pu可用,则与当前pu属于相同的ctu,并且处于帧内模式,并且如果传统的帧内预测模式被应用于上面的pu,则表达
[0228][0229]
在所有其他情况下,表达
[0230][0231]
这意味着该模式不可用。以同样的方式,但没有左边pu需要与当前pu属于相同的ctu的限制,推导模式
[0232]
最终,提供了三个固定的默认列表list
idx
,idx∈{0,1,2},每个列表包含三种不同的alwip模式。在默认列表list
idx(pu)
以及模式和中,通过用默认值替换

1以及消除重复来构建三个不同的mpm。
[0233]
2.8.7传统的亮度和色度帧内预测模式的自适应mpm列表推导
[0234]
所提出的alwip模式与传统的帧内预测模式的基于mpm的编解码并置如下。传统的帧内预测模式的亮度和色度mpm列表推导过程使用固定的表map_alwip_to_angular
idx
,idx∈{0,1,2},将给出的pu上的alwip模式predmode
alwip
映射到传统的帧内预测模式之一
[0235]
predmode
angular
=map_alwip_to_angular
idx(pu)
[predmode
alwip
]
[0236]
对于亮度mpm列表推导,无论何时遇到使用alwip模式predmode
alwip
的邻近亮度块,该块都被视为是否使用传统的帧内预测模式predmode
angular
。对于色度mpm列表推导,每当当前亮度块使用lwip模式时,相同的映射用于将alwip模式转化为传统的帧内预测模式。
[0237]
2.9具有67种帧内预测模式的帧内模式编解码
[0238]
为了捕捉自然视频中呈现的任意边缘方向,vtm4中的方向帧内模式的数量从如hevc所使用的33个扩展到65个。不在hevc中的新方向模式在图14中被描绘为红点箭头,并且平面模式和dc模式保持不变。这些更密集的方向帧内预测模式适用于所有块尺寸以及亮度和色度帧内预测。
[0239]
针对帧内块提出了统一的6

mpm列表,而不管是否应用了mrl和isp编解码工具。如在vtm4.0中那样,基于左边邻近块和上方邻近块的帧内模式来构建mpm列表。假设左边的模式被表示为left,并且上方块的模式被表示为above,统一的mpm列表被构建如下:
[0240]

当邻近块不可用时,其帧内模式默认设置为planar(平面)。
[0241]

如果模式left和above都是非角度模式:
[0242]

mpm列表

{planar,dc,v,h,v

4,v 4}
[0243]

如果模式left和above之一是角度模式,并且另一个是非角度:
[0244]

将模式max设置为left和above中的更大模式
[0245]

ompm列表

{planar,max,dc,max

1,max 1,max

2}
[0246]

如果left和above都是角度并且他们不同:
[0247]

将模式max设置为left和above中的更大模式
[0248]

如果模式left和above的差异在2到62(含)的范围内
[0249]

mpm列表

{planar,left,above,dc,max

1,max 1}
[0250]

否则
[0251]

mpm列表

{planar,left,above,dc,max

2,max 2}
[0252]

如果left和above都是角度并且他们相同:
[0253]

mpm列表

{planar,left,left

1,left 1,dc,left

2}
[0254]
7.3.6.5编解码单元语法
[0255]
[0256][0257]
语法元素intra_luma_mpm_flag[x0][y0]、intra_luma_not_planar_flag[x0][y0]、intra_luma_mpm_idx[x0][y0]和intra_luma_mpm_remainder[x0][y0]指定亮度样点的帧内预测模式。阵列索引x0、y0指定所考虑的编解码块的左顶部亮度样点相对于图片的左顶部亮度样点的位置(x0,y0)。当intra_luma_mpm_flag[x0][y0]等于1时,根据条款8.4.2,从邻近的帧内预测编解码单元推断帧内预测模式。
[0258]
当intra_luma_mpm_flag[x0][y0]不存在时,其被推断为等于1。
[0259]
当intra_luma_not_planar_flag[x0][y0]不存在时,其被推断为等于1。
[0260]
2.10色度帧内模式编解码
[0261]
对于色度帧内模式编解码,允许总共8种帧内模式用于色度帧内模式编解码。这些模式包括五种传统帧内模式和三种跨分量线性模型模式。色度dm模式使用对应的亮度帧内预测模式。由于在i条带中启用亮度和色度分量的单独块分割结构,因此一个色度块可以对应于多个亮度块。因此,对于色度dm模式,直接继承覆盖当前色度块的中心位置的对应亮度
块的帧内预测模式。
[0262]
3.由所公开的实施例解决的技术问题的示例
[0263]
尽管qr

bdpcm可以实现对屏幕内容编解码的编解码益处,但它可能仍有一些缺点。
[0264]
1.qr

bdpcm模式下的预测仅限于水平帧内预测和垂直帧内预测,这可能限制qr

bdpcm模式下的预测效率。
[0265]
2.为qr

bdpcm编解码块信令通知帧内预测模式,这可能增加qr

bdpcm模式的速率成本
[0266]
3.当在qr

bdpcm模式下将信令通知的消息映射到预测模式时,没有考虑邻近信息
[0267]
4.qr

bdpcm通过仅支持水平dpcm和垂直dpcm来表示残差,这可能包括对复杂残差块的编解码性能
[0268]
5.qr

bdpcm中的残差范围可能超过其他非qr

bdpcm模式的最大范围
[0269]
6.qr

bdpcm不考虑块形状
[0270]
7.如何在用qr

bdpcm对亮度块进行编解码时处理色度是未知的。
[0271]
8.qr

bdpcm仅使用第一mpm模式作为存储的帧内模式,这可能限制帧内模式的编解码效率。
[0272]
4.示例实施例和技术
[0273]
以下项列表应该被视为解释一般构思的示例。不应该狭隘地解释这些发明。此外,这些发明可以以任何方式组合。
[0274]
1.qr

bdpcm编解码块中的样点预测可以通过基于矩阵的帧内预测(mip)方法来生成。
[0275]
a.在一个示例中,当对一个块启用qr

bdpcm和mip两者时,限制仅支持mip中的部分允许模式。
[0276]
i.在一个示例中,部分允许模式可以包括可以被映射到水平和/或垂直正常帧内模式的、与基于矩阵的帧内预测方法相关联的那些模式。
[0277]
ii.在一个示例中,部分允许模式可以仅包括可以被映射到水平和/或垂直正常帧内模式的、与基于矩阵的帧内预测方法相关联的那些模式。
[0278]
b.在一个示例中,当对一个块启用qr

bdpcm和mip两者时,支持mip中的所有允许模式。
[0279]
2.qr

bdpcm编解码块中的样点预测可以通过除了垂直/水平帧内预测之外的帧内预测模式来生成。
[0280]
a.在一个示例中,qr

bdpcm编解码块中的样点可以通过帧内预测模式k来预测
[0281]
i.在一个示例中,k可以是平面模式
[0282]
ii.在一个示例中,k可以是dc模式
[0283]
iii.在一个示例中,k可以是水平模式
[0284]
iv.在一个示例中,k可以是垂直模式
[0285]
v.在一个示例中,k可以是最可能模式列表中的一个候选。
[0286]
vi.在一个示例中,k可以在比特流中被信令通知
[0287]
b.qr

bdpcm的允许的帧内预测模式可以基于
[0288]
i.在sps/vps/pps/图片头/条带头/片组头/lcu行/lcu组中信令通知的消息
[0289]
ii.当前块和/或其邻近块的块大小
[0290]
iii.当前块和/或其邻近块的块形状
[0291]
iv.当前块的邻近块的预测模式(帧内/帧间)
[0292]
v.当前块的邻近块的帧内预测模式
[0293]
vi.当前块的邻近块的qr

bdpcm模式的指示
[0294]
vii.当前块和/或其邻近块的当前量化参数
[0295]
viii.色彩格式(诸如4:2:0、4:4:4)的指示
[0296]
ix.单独编解码树结构/双编解码树结构
[0297]
x.条带/片组类型和/或图片类型
[0298]
3.qr

bdpcm编解码块中的样点预测可以通过非相邻样点生成。
[0299]
a.在一个示例中,对于ibc merge模式,也可以启用qr

bdpcm。
[0300]
b.在一个示例中,对于ibc amvp模式,也可以启用qr

bdpcm。
[0301]
c.在ibc和qr

bdpcm中使用的块矢量可以被信令通知或推导或预定义。
[0302]
i.在一个示例中,ibc模式可以由运动矢量(块矢量)和/或merge索引指示。
[0303]
ii.在一个示例中,ibc模式可以由默认运动矢量指示。
[0304]
1.在一个示例中,默认运动矢量可以为(

w,0),其中w是正整数
[0305]
2.在一个示例中,默认运动矢量可以为(0,

h),其中h是正整数
[0306]
3.在一个示例中,默认运动矢量可以为(

w,

h),其中w和h是两个正整数
[0307]
iii.在一个示例中,在ibc和qp

bpdcm编解码块中使用的运动矢量的指示可以基于:
[0308]
1.在sps/vps/pps/图片头/条带头/片组头/lcu行/lcu组中信令通知的消息
[0309]
2.当前块和/或其邻近块的块大小
[0310]
3.当前块和/或其邻近块的块形状
[0311]
4.当前块的邻近块的预测模式(帧内/帧间)
[0312]
5.当前块的邻近块的运动矢量
[0313]
6.当前块的邻近块的qr

bdpcm模式的指示
[0314]
7.当前块和/或其邻近块的当前量化参数
[0315]
8.色彩格式(诸如4:2:0、4:4:4)的指示
[0316]
9.单独编解码树结构/双编解码树结构
[0317]
10.条带/片组类型和/或图片类型
[0318]
d.在一个示例中,qr

bdpcm模式中的样点预测可以由帧间预测工具(例如,仿射模式、merge模式和帧间模式)生成
[0319]
4.qr

bdpcm中的量化残差预测方向的指示可以被动态地推导。
[0320]
a.在一个示例中,qr

bdpcm中的量化残差预测方向的指示可以基于当前帧内预测模式的指示来推断
[0321]
i.在一个示例中,当帧内预测模式是垂直时,qr

bdpcm中的量化残差预测的方向可以被推断为垂直
[0322]
ii.在一个示例中,当帧内预测模式是水平时,qr

bdpcm中的量化残差预测的方向
可以被推断为水平
[0323]
iii.在一个示例中,当帧内预测模式是水平时,qr

bdpcm中的量化残差预测的方向可以被推断为垂直
[0324]
iv.在一个示例中,当帧内预测模式是垂直时,qr

bdpcm中的量化残差预测的方向可以被推断为水平
[0325]
b.在一个示例中,qr

bdpcm中的量化残差预测方向的指示可以基于
[0326]
i.在sps/vps/pps/图片头/条带头/片组头/lcu行/lcu组中信令通知的消息
[0327]
ii.当前块和/或其邻近块的块大小
[0328]
iii.当前块和/或其邻近块的块形状
[0329]
iv.当前块和/或其邻近块的最可能模式
[0330]
v.当前块的邻近块的预测模式(帧内/帧间)
[0331]
vi.当前块的邻近块的帧内预测模式
[0332]
vii.当前块的邻近块的运动矢量
[0333]
viii.当前块的邻近块的qr

bdpcm模式的指示
[0334]
ix.当前块和/或其邻近块的当前量化参数
[0335]
x.色彩格式(诸如4:2:0、4:4:4)的指示
[0336]
xi.单独编解码树结构/双编解码树结构
[0337]
xii.应用于当前块的变换类型
[0338]
xiii.条带/片组类型和/或图片类型
[0339]
5.要存储的qr

bdpcm编解码块的帧内模式可以与帧内预测过程中使用的帧内预测模式对齐。
[0340]
a.在一个示例中,当qr

bdpcm采用垂直帧内预测(例如,当前块的bdpcm_dir_flag为1)时,要存储的qr

bdpcm编解码块的帧内模式可以被推断为垂直模式。
[0341]
b.在一个示例中,当qr

bdpcm采用水平帧内预测(例如,当前块的bdpcm_dir_flag为0)时,要存储的qr

bdpcm编解码块的帧内模式可以被推断为水平模式。
[0342]
c.在一个示例中,当qr

bdpcm采用左顶部帧内预测方向时,要存储的qr

bdpcm编解码块的帧内模式可以被推断为左顶部模式(例如,vvc中的模式34)。
[0343]
d.在一个示例中,要存储的qr

bdpcm编解码块的帧内模式可以被推断为当在qr

bdpcm模式下的帧内预测过程中采用时的模式。
[0344]
e.在一个示例中,要存储的qr

bdpcm编解码块的帧内模式可以被推断为当在qr

bdpcm模式下的残差预测过程中采用时的模式。
[0345]
f.在一个示例中,在qr

bdpcm中编解码的块的帧内模式可以被推断为最可能模式(mpm)列表中的一种模式。
[0346]
g.在一个示例中,在qr

bdpcm中编解码的块的帧内模式可以被推断为预定义模式。
[0347]
i.在一个示例中,预定义模式可以是
[0348]
1.平面模式
[0349]
2.dc模式
[0350]
3.垂直模式
[0351]
4.水平模式
[0352]
h.在一个示例中,在qr

bdpcm模式下编解码的块的帧内模式可以基于以下来确定
[0353]
i.色彩分量
[0354]
ii.在sps/vps/pps/图片头/条带头/片组头/lcu行/lcu组中信令通知的消息
[0355]
iii.bdpcm_dir_flag
[0356]
iv.bdpcm_flag
[0357]
ii.当前块和/或其邻近块的块大小
[0358]
iii.当前块和/或其邻近块的块形状
[0359]
iv.当前块和/或其邻近块的最可能模式
[0360]
v.当前块的邻近块的预测模式(帧内/帧间)
[0361]
vi.当前块的邻近块的帧内预测模式
[0362]
vii.当前块的邻近块的运动矢量
[0363]
viii.当前块的邻近块的qr

bdpcm模式的指示
[0364]
ix.当前块和/或其邻近块的当前量化参数
[0365]
x.色彩格式(诸如4∶2∶0、4∶4∶4)的指示
[0366]
xi.编解码树结构
[0367]
xii.应用于当前块的变换类型
[0368]
xiii.条带/片组类型和/或图片类型
[0369]
i.在一个示例中,存储的帧内预测模式可以用于对随后块进行编解码,诸如用于要编解码的随后块的mpm列表构建
[0370]
6.从qr

bdpcm中的信令通知的索引到qr

bdpcm模式中的帧
[0371]
内预测模式的映射可以基于
[0372]
a.在sps/vps/pps/图片头/条带头/片组头/lcu行/lcu组中信令通知的消息
[0373]
b.当前块和/或其邻近块的块大小
[0374]
c.当前块和/或其邻近块的块形状
[0375]
d.当前块和/或其邻近块的最可能模式
[0376]
e.当前块的邻近块的预测模式(帧内/帧间)
[0377]
f.当前块的邻近块的帧内预测模式
[0378]
g.当前块的邻近块的运动矢量
[0379]
h.当前块的邻近块的qr

bdpcm模式的指示
[0380]
i.当前块和/或其邻近块的当前量化参数
[0381]
j.色彩格式(诸如4∶2∶0、4∶4∶4)的指示
[0382]
k.单独编解码树结构/双编解码树结构
[0383]
l.应用于当前块的变换类型
[0384]
m.条带/片组类型和/或图片类型
[0385]
7.在qr

bdpcm中,沿水平和垂直方向预测量化残差。提出沿着除了垂直和水平方向之外的方向预测量化残差。假设q(r
i,j
)表示量化残差,表示残差预测处理之后的量化残差。
[0386]
a.在一个示例中,可以支持45度qr

bdpcm。
[0387]
i.在一个示例中,dpcm可以沿着45度方向执行,其中如果q(r
(i

1),(j

1)
)可用,则可以通过q(r
i,j
)

q(r
(i

1),(j

1)
)推导。
[0388]
b.在一个示例中,可以支持45度qr

bdpcm。
[0389]
i.在一个示例中,dpcm可以沿着135度方向执行,其中如果q(r
(i

1),(j 1)
)可用,则可以通过q(r
i,j
)

q(r
(i

1),(j 1)
)推导。
[0390]
c.在一个示例中,可以在qr

bdpcm中支持任何方向。
[0391]
i.在一个示例中,如果q(r
(i

m),(j

n)
)可用,则可以通过q(r
i,j
)

q(r
(i

m),(j

n)
)推导。
[0392]
1.在一个示例中,m和/或n可以在比特流中被信令通知
[0393]
2.在一个示例中,m和/或n可以是整数,并且可以基于
[0394]
3.在sps/vps/pps/图片头/条带头/片组头/lcu行/lcu组中信令通知的消息
[0395]
4.i和/或j
[0396]
5.当前块和/或其邻近块的块大小
[0397]
6.当前块和/或其邻近块的块形状
[0398]
7.当前块和/或其邻近块的最可能模式
[0399]
8.当前块的邻近块的预测模式(帧内/帧间)
[0400]
9.当前块的邻近块的帧内预测模式
[0401]
10.当前块的邻近块的运动矢量
[0402]
11.当前块的邻近块的qr

bdpcm模式的指示
[0403]
12.当前块和/或其邻近块的当前量化参数
[0404]
13.色彩格式(诸如4∶2∶0、4∶4∶4)的指示
[0405]
14.单独编解码树结构/双编解码树结构
[0406]
15.条带/片组类型和/或图片类型
[0407]
8.qr

bdpcm可以被应用于色度块(例如,cb/cr或b/r色彩分量)。
[0408]
a.在一个示例中,亮度和色度qr

bdpcm编解码块的允许帧内预测方向可以相同,例如,仅水平和垂直。
[0409]
b.在一个示例中,亮度和色度qr

bdpcm编解码块的允许预测方法可以相同,例如,ibc/帧间/水平和垂直帧内预测模式。
[0410]
c.在一个示例中,亮度和色度qr

bdpcm编解码块的允许残差预测方向可以相同。
[0411]
d.在一个示例中,色度qr

bdpcm的残差预测方向可以从对应亮度块的残差预测方向推导。
[0412]
i.在一个示例中,对应亮度块可以是并置亮度块。
[0413]
ii.在一个示例中,对应亮度块可以是包含色度块的左上角的并置样点的亮度块。
[0414]
iii.在一个示例中,对应亮度块可以是包含色度块的中心样点的并置样点的亮度块。
[0415]
e.在一个示例中,cclm和qr

bdpcm不能被应用于相同色度块。
[0416]
i.可替代地,cclm也可以适用于qr

bdpcm编解码块。
[0417]
f.在一个示例中,联合色度残差编解码(例如,联合cb和cr编解码)方法和qr

bdpcm不能被应用于相同色度块。
[0418]
9.qr

bdpcm中的重构量化残差可以被限制在特定范围内。
[0419]
a.在一个示例中,可以添加所有量化残差差(例如,等式2
‑7‑
1和2
‑7‑
2中的)可以在特定范围内的约束。
[0420]
b.在一个示例中,可以添加所有重构量化残差(例如,等式2
‑7‑
3和2
‑7‑
4中的q(r
i,j
))可以在特定范围内的约束。
[0421]
c.在一个示例中,裁剪操作可以被应用于量化残差差(例如,等式2
‑7‑
1和2
‑7‑
2中的),使得重构量化残差可以在特定范围内。
[0422]
d.在一个示例中,裁剪操作可以被应用于重构量化残差差(例如,等式2
‑7‑
3和2
‑7‑
4中的q(r
i,j
)),使得重构量化残差可以在特定范围内。
[0423]
e.在一个示例中,裁剪操作可以被定义为(x<min?min:(x>max?max:x))
[0424]
f.在一个示例中,裁剪操作可以被定义为(x<=min?min:(x>=max?max:x))
[0425]
g.在一个示例中,裁剪操作可以被定义为(x<min?min:(x>=max?max:x))
[0426]
h.在一个示例中,裁剪操作可以被定义为(x<=min?min:(x>max?max:x))
[0427]
i.在一个示例中,min和/或max可以是负的或正的
[0428]
j.在一个示例中,min被设置为

32768,并且max被设置为32767。
[0429]
i.可替代地,min和/或max可以取决于没有用qr

bdpcm编解码的块的逆量化的范围。
[0430]
ii.可替代地,min和/或max可以取决于输入样点/重构样点的比特深度。
[0431]
iii.可替代地,min和/或max可以取决于是否使用无损编解码。
[0432]
1.在一个示例中,min和/或max可以取决于transquant_bypass_enabled_flag。
[0433]
2.在一个示例中,min和/或max可以取决于cu_transquant_bypass_flag。
[0434]
k.在一个示例中,min和/或max可以基于
[0435]
i.在sps/vps/pps/图片头/条带头/片组头/lcu行/lcu组中信令通知的消息
[0436]
ii.当前块和/或其邻近块的块大小
[0437]
iii.当前块和/或其邻近块的块形状
[0438]
iv.当前块和/或其邻近块的最可能模式
[0439]
v.当前块的邻近块的预测模式(帧内/帧间)
[0440]
vi.当前块的邻近块的帧内预测模式
[0441]
vii.当前块的邻近块的运动矢量
[0442]
viii.当前块的邻近块的qr

bdpcm模式的指示
[0443]
ix.当前块和/或其邻近块的当前量化参数
[0444]
x.色彩格式(诸如4:2:0、4:4:4)的指示
[0445]
xi.单独编解码树结构/双编解码树结构
[0446]
xii.应用于当前块的变换类型
[0447]
xiii.条带/片组类型和/或图片类型
[0448]
10.可以从块的最后一行/列到第一行/列应用qr

dpcm。
[0449]
a.在一个示例中,当残差预测方向为水平时,第(i 1)列的残差可以用于预测第i
列的残差。
[0450]
b.在一个示例中,当残差预测方向为垂直时,第(i 1)行的残差可以用于预测第i行的残差。
[0451]
11.qr

dpcm可以被应用于块的子集。
[0452]
a.在一个示例中,当残差预测方向为水平时,qr

dpcm不适用于残差的最左边k列。
[0453]
b.在一个示例中,当残差预测方向为垂直时,qr

dpcm不适用于残差的最上方k行。
[0454]
c.在一个示例中,当残差预测方向为水平时,qr

dpcm不适用于残差的最右边k列。
[0455]
d.在一个示例中,当残差预测方向为垂直时,qr

dpcm不适用于残差的最底部k行。
[0456]
e.上述k的值可以是预定义值,基于
[0457]
i.在sps/vps/pps/图片头/条带头/片组头/lcu行/lcu组中信令通知的消息
[0458]
ii.当前块和/或其邻近块的块大小
[0459]
iii.当前块和/或其邻近块的块形状
[0460]
iv.当前块和/或其邻近块的最可能模式
[0461]
v.当前块的邻近块的预测模式(帧内/帧间)
[0462]
vi.当前块的帧内预测模式
[0463]
vii.当前块的邻近块的帧内预测模式
[0464]
viii.当前块的邻近块的运动矢量
[0465]
ix.当前块的邻近块的qr

bdpcm模式的指示
[0466]
x.当前块和/或其邻近块的当前量化参数
[0467]
xi.色彩格式(诸如4:2:0、4:4:4)的指示
[0468]
xii.单独编解码树结构/双编解码树结构
[0469]
xiii.应用于当前块的变换类型
[0470]
xiv.条带/片组类型和/或图片类型
[0471]
12.可以对块逐段应用qr

dpcm
[0472]
a.在一个示例中,当残差预测方向为垂直并且n=nk时,残差预测可以被执行为
[0473][0474]
b.在一个示例中,当残差预测方向为水平并且m=mk时,残差预测可以被执行为
[0475][0476]
13.对一个色彩分量启用/禁用qr

dpcm可以从与另一个色彩分量相关联的推导。
[0477]
a.在一个示例中,对于色度块,是否启用qr

dpcm可以取决于与并置亮度块内的一个或多个代表性块相关联的qr

dpcm的使用。
[0478]
i.在一个示例中,可以以与用于dm推导相同的方式定义代表性块。
[0479]
ii.在一个示例中,如果并置亮度块内的代表性块是qr

dpcm编解码的,并且当前色度块是以dm模式编解码的,则也可以对当前色度块启用qr

dpcm。
[0480]
b.可替代地,可以针对色度分量信令通知qr

dpcm的使用的指示。
[0481]
i.在一个示例中,可以信令通知一个标志以指示对两个色度分量的使用。
[0482]
ii.可替代地,可以信令通知两个标志以分别指示对两个色度分量的使用。
[0483]
iii.在一个示例中,当色度块以特定模式(诸如cclm)编解码时,跳过信令通知qr

dpcm的使用的指示。
[0484]
14.以上方法也可以适用于dpcm/qr

dpcm的其他变化。
[0485]
5.实施例
[0486]
在jvet

n0413提供的草稿之上的改变以粗体斜体突出显示。删除的文本标有
[0487]
5.1实施例1
[0488]
i.亮度帧内预测模式的推导过程
[0489]
该过程的输入是:
[0490]

亮度位置(xcb,ycb),指定当前亮度编解码块相对于当前图片的左顶部亮度样点的左顶部样点,
[0491]

变量cbwidth,指定亮度样点中的当前编解码块的宽度,
[0492]

变量cbheight,指定亮度样点中的当前编解码块的高度。
[0493]
在该过程中,推导亮度帧内预测模式intrapredmodey[xcb][ycb]。
[0494]
表8

1指定了帧内预测模式intrapredmodey[xcb][ycb]的值和相关联名称。
[0495]
表8
‑1‑
帧内预测模式和相关联名称的规范
[0496]
帧内预测模式相关联名称0intra_planar1intra_dc2..66intra_angular2..intra_angular6681..83intra_lt_cclm、intra_l_cclm、intra_t_cclm
[0497]


:帧内预测模式intra_lt_cclm、intra_l_cclm和intra_t_cclm仅适用于色度分量。
[0498]
intrapredmodey[xcb][ycb]通过以下有序步骤推导:
[0499]

邻近位置(xnba,ynba)和(xnbb,ynbb)分别被设置为等于(xcb

1,ycb cbheight

1)和(xcb cbwidth

1,ycb

1)。
[0500]

对于x被a或b代替,变量candintrapredmodex被推导如下:
[0501]

[0502]

变量ispdefaultmode1和ispdefaultmode2被定义如下:
[0503]

[0504]

candmodelist[x](其中x=0..5)被推导如下:
[0505]

[0506]

intrapredmodey[xcb][ycb]通过应用以下过程来推导:
[0507][0508]

如果bdpcm_flag[xcb][ycb]等于1,则intrapredmodey[xcb][ycb]被设置为等于(bdpcm_dir_flag[xcb][ycb]==0?intra_angular18:intra_angular50)。
[0509]

否则,如果intra_luma_mpm_flag[xcb][ycb]等于1,则intrapredmodey[xcb]
[ycb]被设置为等于candmodelist[intra_luma_mpm_idx[xcb][ycb]]。
[0510]

否则,intrapredmodey[xcb][ycb]通过应用以下有序步骤来推导:
[0511]

[0512]
变量intrapredmodey[x][y](其中x=xcb..xcb cbwidth

1,并且y=ycb..ycb cbheight

1)被设置为等于intrapredmodey[xcb][ycb]。
[0513]
5.2实施例2
[0514]
8.4.2亮度帧内预测模式的推导过程
[0515]
该过程的输入是:
[0516]

亮度位置(xcb,ycb),指定当前亮度编解码块相对于当前图片的左顶部亮度样点的左顶部样点,
[0517]

变量cbwidth,指定亮度样点中的当前编解码块的宽度,
[0518]

变量cbheight,指定亮度样点中的当前编解码块的高度。
[0519]
推导亮度帧内预测模式intrapredmodey[xcb][ycb]。
[0520]
表8

1指定了帧内预测模式intrapredmodey[xcb][ycb]的值和相关联名称。
[0521]
表8
‑1‑
帧内预测模式和相关联名称的规范
[0522]
帧内预测模式相关联名称0intra_planar1intra_dc2..66intra_angular2..intra_angular6681..83intra_lt_cclm、intra_l_cclm、intra_t_cclm
[0523]


:帧内预测模式intra_lt_cclm、intra_l_cclm和intra_t_cclm仅适用于色度分量。
[0524]
intrapredmodey[xcb][ycb]通过以下有序步骤推导:
[0525]

如果bdpcm_flag[xcb][ycb]等于1,则intrapredmodey[xcb][ycb]被设置为等于(bdpcm_dir_flag[xcb][ycb]==0?intra_angular18:intra_angular50)。
[0526]

否则,intrapredmodey[xcb][ycb]通过应用以下有序步骤来推导:
[0527]

邻近位置(xnba,ynba)和(xnbb,ynbb)分别被设置为等于(xcb

1,ycb cbheight

1)和(xcb cbwidth

1,ycb

1)。
[0528]

对于x被a或b代替,变量candintrapredmodex被推导如下:
[0529]

[0530]

变量ispdefaultmode1和ispdefaultmode2被定义如下:
[0531]

[0532]

candmodelist[x](其中x=0..5)被推导如下:
[0533]

[0534]

intrapredmodey[xcb][ycb]通过应用以下过程来推导:
[0535]

如果intra_luma_mpm_flag[xcb][ycb]等于1,则intrapredmodey[xcb][ycb]被设置为等于candmodelist[intra_luma_mpm_idx[xcb][ycb]]。
[0536]

否则,intrapredmodey[xcb][ycb]通过应用以下有序步骤来推导:
[0537]

[0538]
变量intrapredmodey[x][y](其中x=xcb..xcb cbwidth

1,并且y=ycb..ycb cbheight

1)被设置为等于intrapredmodey[xcb][ycb]。
[0539]
6.参考
[0540]
[1]itu

t and iso/iec,“high efficiency video coding”,rec.itu

t h.265|iso/iec 23008

2(02/2018).
[0541]
[2]b.bross,j.chen,s.liu,versatile video coding(draft 4),jvet

m1001,jan.2019
[0542]
图10是视频处理装置1000的框图。装置1000可以用于实施本文描述的一个或多个方法。装置1000可以体现在智能手机、平板电脑、计算机、物联网(iot)接收器等中。装置1000可以包括一个或多个处理器1002、一个或多个存储器1004和视频处理硬件1006。(多个)处理器1002可以被配置为实施本文档中描述的一种或多种方法。存储器(多个存储器)1004可以用于存储用于实施本文描述的方法和技术的数据和代码。视频处理硬件1006可以用于在硬件电路系统中实施本文档中描述的一些技术。
[0543]
图11是视频处理的示例方法1100的流程图。方法1100包括使用差分编解码模式并选择性地使用基于共存规则的帧内预测模式来执行当前视频块和当前视频块的比特流表示之间的转换(1102)。帧内预测模式用于生成当前视频块的样点的预测。差分编解码模式用于使用差分脉冲编解码调制表示来表示来自像素的预测的量化残差块。
[0544]
图15是示出可以利用本公开的技术的示例视频编解码系统100的框图。如图15所示,视频编解码系统100可以包括源设备110和目标设备120。源设备110生成编码视频数据,其中该源设备110可以被称为视频编码设备。目标设备120可以解码由源设备110生成的编码视频数据,目标设备120可以被称为视频解码设备。源设备110可以包括视频源112、视频编码器114和输入/输出(i/o)接口116。
[0545]
视频源112可以包括源,诸如视频捕捉设备、从视频内容提供器接收视频数据的接口、和/或用于生成视频数据的计算机图形系统、或这些源的组合。视频数据可以包括一个或多个图片。视频编码器114对来自视频源112的视频数据进行编码,以生成比特流。比特流可以包括形成视频数据的编解码表示的比特序列。比特流可以包括编解码图片和相关数据。编解码图片是图片的编解码表示。相关数据可以包括序列参数集、图片参数集和其他语法结构。i/o接口116可以包括调制器/解调器(调制解调器)和/或发射器。编码视频数据可以通过网络130a经由i/o接口116直接传输到目标设备120。编码视频数据也可以存储在存储介质/服务器130b上,以供目标设备120访问。
[0546]
目标设备120可以包括i/o接口126、视频解码器124和显示设备122。
[0547]
i/o接口126可以包括接收器和/或调制解调器。i/o接口126可以从源设备110或存储介质/服务器130b获取编码视频数据。视频解码器124可以对编码视频数据进行解码。显示设备122可以向用户显示解码视频数据。显示设备122可以与目标设备120集成,或者可以在被配置为与外部显示设备接口的目标设备120的外部。
[0548]
视频编码器114和视频解码器124可以根据视频压缩标准进行操作,例如高效视频编解码(hevc)标准、多功能视频编解码(vvc)标准和其他当前和/或另外的标准。
[0549]
图16是示出视频编码器200的示例的框图,视频编码器200可以是图15所示的系统100中的视频编码器114。
[0550]
视频编码器200可以被配置为执行本公开的任何或所有技术。在图16的示例中,视频编码器200包括多个功能组件。本公开中描述的技术可以在视频编码器200的各种组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。
[0551]
视频编码器200的功能组件可以包括分割单元201、预测单元202(其可以包括模式选择单元203、运动估计单元204、运动补偿单元205和帧内预测单元206)、残差生成单元207、变换单元208、量化单元209、逆量化单元210、逆变换单元211、重构单元212、缓冲区213和熵编码单元214。
[0552]
在其他示例中,视频编码器200可以包括更多、更少或不同的功能组件。在示例中,预测单元202可以包括帧内块复制(ibc)单元。ibc单元可以执行ibc模式下的预测,其中至少一个参考图片是当前视频块所在的图片。
[0553]
此外,诸如运动估计单元204和运动补偿单元205的一些组件可以高度集成,但是为了解释的目的,在图16的示例中分开表示。
[0554]
分割单元201可以将图片分割为一个或多个视频块。视频编码器200和视频解码器300可以支持各种视频块尺寸。
[0555]
模式选择单元203可以基于误差结果选择编解码模式(例如,帧内或帧间)之一,并且将作为结果的帧内编解码块或帧间编解码块提供给残差生成单元207以生成残差块数据,以及提供给重构单元212以重构编码块以用作参考图片。在一些示例中,模式选择单元203可以选择帧内和帧间预测模式的组合(ciip),其中预测基于帧间预测信号和帧内预测信号。在帧间预测的情况下,模式选择单元203还可以选择块的运动矢量的分辨率(例如,子像素或整数像素精度)。
[0556]
为了对当前视频块执行帧间预测,运动估计单元204可以通过将来自缓冲区213的一个或多个参考帧与当前视频块进行比较,来生成当前视频块的运动信息。运动补偿单元205可以基于运动信息和来自缓冲区213的除了与当前视频块相关联的图片之外的图片的解码样点,来确定当前视频块的预测视频块。
[0557]
运动估计单元204和运动补偿单元205可以对当前视频块执行不同的操作,例如,取决于当前视频块是在i条带、p条带还是b条带中。
[0558]
在一些示例中,运动估计单元204可以对当前视频块执行单向预测,并且运动估计单元204可以为当前视频块的参考视频块搜索列表0或列表1的参考图片。运动估计单元204然后可以生成指示列表0或列表1中的参考图片的参考索引,该参考索引包含参考视频块和指示当前视频块和参考视频块之间的空域位移的运动矢量。运动估计单元204可以输出参考索引、预测方向指示符和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前块的预测视频块。
[0559]
在其他示例中,运动估计单元204可以对当前视频块执行双向预测,运动估计单元204可以在列表0中的参考图片中搜索当前视频块的参考视频块,并且还可以在列表1中搜索当前视频块的另一个参考视频块。运动估计单元204然后可以生成参考索引,该参考索引指示包含参考视频块的列表0和列表1中的参考图片以及指示参考视频块和当前视频块之间的空域位移的运动矢量。运动估计单元204可以输出当前视频块的参考索引和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前视频块的预测视频块。
[0560]
在一些示例中,运动估计单元204可以输出完整的运动信息集,以用于解码器的解码处理。
[0561]
在一些示例中,运动估计单元204可以不输出当前视频的完整的运动信息集。而是运动估计单元204可以参考另一个视频块的运动信息信令通知当前视频块的运动信息。例如,运动估计单元204可以确定当前视频块的运动信息与邻近视频块的运动信息足够相似。
[0562]
在一个示例中,运动估计单元204可以在与当前视频块相关联的语法结构中指示值,该值向视频解码器300指示当前视频块具有与另一个视频块相同的运动信息。
[0563]
在另一示例中,运动估计单元204可以在与当前视频块相关联的语法结构中标识另一视频块和运动矢量差(mvd)。运动矢量差指示当前视频块的运动矢量和所指示的视频块的运动矢量之间的差。视频解码器300可以使用所指示的视频块的运动矢量和运动矢量差来确定当前视频块的运动矢量。
[0564]
如上所讨论的,视频编码器200可以预测性地信令通知运动矢量。可以由视频编码器200实施的预测信令通知技术的两个示例包括高级运动矢量预测(amvp)和merge模式信令通知。
[0565]
帧内预测单元206可以对当前视频块执行帧内预测。当帧内预测单元206对当前视频块执行帧内预测时,帧内预测单元206可以基于相同图片中的其他视频块的解码样点来生成当前视频块的预测数据。当前视频块的预测数据可以包括预测视频块和各种语法元素。
[0566]
残差生成单元207可以通过从当前视频块中减去(例如,由减号指示)当前视频块的(多个)预测视频块来生成当前视频块的残差数据。当前视频块的残差数据可以包括与当前视频块中样点的不同样点分量相对应的残差视频块。
[0567]
在其他示例中,例如在跳过模式中,对于当前视频块可能没有当前视频块的残差数据,并且残差生成单元207可能不执行减去操作。
[0568]
变换处理单元208可以通过将一个或多个变换应用于与当前视频块相关联的残差视频块来为当前视频块生成一个或多个变换系数视频块。
[0569]
在变换处理单元208生成与当前视频块相关联的变换系数视频块之后,量化单元209可以基于与当前视频块相关联的一个或多个量化参数(qp)值来量化与当前视频块相关联的变换系数视频块。
[0570]
逆量化单元210和逆变换单元211可以分别对变换系数视频块应用逆量化和逆变换,以从变换系数视频块重构残差视频块。重构单元212可以将重构后的残差视频块添加到来自预测单元202生成的一个或多个预测视频块的对应样点,以产生与当前块相关联的重构视频块,用于存储在缓冲区213中。
[0571]
在重构单元212重构视频块之后,可以执行环路滤波操作,以减少视频块中的视频块效应。
[0572]
熵编码单元214可以从视频编码器200的其他功能组件接收数据。当熵编码单元214接收到数据时,熵编码单元214可以执行一个或多个熵编码操作,以生成熵编码数据,并输出包括该熵编码数据的比特流。
[0573]
图17是示出视频解码器300的示例的框图,视频解码器300可以是图15所示的系统100中的视频解码器114。
[0574]
视频解码器300可以被配置为执行本公开的任何或所有技术。在图17的示例中,视频解码器300包括多个功能组件。本公开中描述的技术可以在视频解码器300的各种组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。
[0575]
在图17的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、逆量化单元304、逆变换单元305以及重构单元306和缓冲区307。在一些示例中,视频解码器300可以执行通常与针对视频编码器200(图16)描述的编码过程相反的解码过程。
[0576]
熵解码单元301可以检索编码比特流。编码比特流可以包括熵编解码的视频数据(例如,视频数据的编码块)。熵解码单元301可以解码熵编解码的视频数据,并且根据熵解码的视频数据,运动补偿单元302可以确定包括运动矢量、运动矢量精度、参考图片列表索引和其他运动信息的运动信息。运动补偿单元302可以例如通过执行amvp和merge模式来确定这样的信息。
[0577]
运动补偿单元302可以产生运动补偿块,可以基于插值滤波器执行插值。要以子像素精度使用的插值滤波器的标识符可以包括在语法元素中。
[0578]
运动补偿单元302可以使用如视频编码器20在视频块的编码期间使用的插值滤波器来计算参考块的子整数像素的插值。运动补偿单元302可以根据所接收的语法信息确定视频编码器200使用的插值滤波器,并使用该插值滤波器来产生预测块。
[0579]
运动补偿单元302可以使用一些语法信息来确定用于对编码视频序列的(多个)帧和/或(多个)条带进行编码的块的尺寸、描述编码视频序列的图片的每个宏块如何被分割的分割信息、指示每个分割如何被编码的模式、每个帧间编码块的一个或多个参考帧(和参考帧列表)以及用于对编码视频序列进行解码的其他信息。
[0580]
帧内预测单元303可以使用例如在比特流中接收的帧内预测模式来从空域上相邻的块形成预测块。逆量化单元303对在比特流中提供并由熵解码单元301解码的量化后的视频块系数进行逆量化,即,解量化。逆变换单元303应用逆变换。
[0581]
重构单元306可以将残差块与由运动补偿单元202或帧内预测单元303生成的对应预测块相加,以形成解码块。如果需要,还可以应用去块滤波器来滤波解码块,以便移除块效应。解码的视频块然后被存储在缓冲区307中,为后续运动补偿/帧内预测提供参考块,并且还产生解码的视频以在显示设备上呈现。
[0582]
在一些实施例中,在alwip模式或mip模式下,当前视频块的预测块通过按行和列平均来确定,随后是矩阵乘法,随后是插值以确定预测块。
[0583]
图18是示出可以在其中实施本文公开的各种技术的示例视频处理系统2100的框图。各种实施方式可以包括系统2100的一些或所有组件。系统2100可以包括用于接收视频内容的输入2102。视频内容可以以例如8或10比特多分量像素值的原始或未压缩格式而接收,或者可以是压缩或编码格式。输入2102可以表示网络接口、外围总线接口或存储接口。网络接口的示例包括诸如以太网、无源光网络(passive optical network,pon)等的有线接口和诸如wi

fi或蜂窝接口的无线接口。
[0584]
系统2100可以包括可以实施本文档中描述的各种编解码或编码方法的编解码组件2104。编解码组件2104可以将来自输入2102的视频的平均比特率减小到编解码组件2104的输出,以产生视频的编解码表示。编解码技术因此有时被称为视频压缩或视频转码技术。
编解码组件2104的输出可以被存储,或者经由如由组件2106表示的通信连接而发送。在输入2102处接收的视频的存储或通信传送的比特流(或编解码)表示可以由组件2108用于生成像素值或传送到显示接口2110的可显示视频。从比特流表示生成用户可视视频的过程有时被称为视频解压缩。此外,虽然特定视频处理操作被称为“编解码”操作或工具,但是将理解,编解码工具或操作在编码器处被使用,并且反转编解码结果的对应的解码工具或操作将由解码器执行。
[0585]
外围总线接口或显示接口的示例可以包括通用串行总线(usb)、或高清晰度多媒体接口(high definition multimedia interface,hdmi)、或显示端口(displayport)等。存储接口的示例包括sata(serial advanced technology attachment,串行高级技术附件)、pci、ide接口等。本文档中描述的技术可以体现在各种电子设备中,诸如移动电话、膝上型电脑、智能电话、或能够执行数字数据处理和/或视频显示的其他设备。
[0586]
所公开技术的一些实施例包括做出启用视频处理工具或模式的决定或确定。在示例中,当视频处理工具或模式被启用时,编码器将在视频块的处理中使用或实施该工具或模式,但是不一定基于工具或模式的使用来修改产生的比特流。也就是说,当基于决定或确定启用视频处理工具或模式时,从视频的块到视频的比特流表示的转换将使用该视频处理工具或模式。在另一示例中,当视频处理工具或模式被启用时,解码器将在知道比特流已经基于视频处理工具或模式而修改的情况下处理比特流。也就是说,将使用基于该决定或该确定而启用的视频处理工具或模式来执行从视频的比特流表示到视频的块的转换。
[0587]
所公开技术的一些实施例包括做出禁用视频处理工具或模式的决定或确定。在示例中,当视频处理工具或模式被禁用时,编码器将不在视频的块到视频的比特流表示的转换中使用该工具或模式。在另一示例中,当视频处理工具或模式被禁用时,解码器将在知道比特流还没有使用基于该决定或该确定而禁用的视频处理工具或模式而修改的情况下处理比特流。
[0588]
图19示出了示例视频处理方法1900的流程图。方法1900包括通过使用差分编解码模式确定要存储的与视频的当前视频块相关联的第一帧内编解码模式来执行当前视频块和当前视频块的比特流表示之间的转换1902,其中与当前视频块相关联的第一帧内编解码模式根据差分编解码模式所使用的第二预测模式来确定,并且其中在差分编解码模式下,当前视频块的帧内预测的量化残差和量化残差的预测之间的差使用差分脉冲编解码调制(dpcm)表示在当前视频块的比特流表示中表示。
[0589]
在方法1900的一些实施例中,响应于第二预测模式是垂直预测模式,第一帧内编解码模式被推断为垂直帧内预测模式。在方法1900的一些实施例中,响应于第二预测模式是水平预测模式,第一帧内编解码模式被推断为水平帧内预测模式。在方法1900的一些实施例中,响应于第二预测模式是左顶部对角线预测模式,第一帧内编解码模式被推断为左顶部对角线帧内预测模式。在方法1900的一些实施例中,第一帧内编解码模式被推断为与第二预测模式相同。
[0590]
在方法1900的一些实施例中,第二预测模式被推断为与第一帧内编解码模式相同。在方法1900的一些实施例中,第一帧内编解码模式基于最可能模式(mpm)列表中的模式来推断。在方法1900的一些实施例中,第一帧内编解码模式是预定义的帧内预测模式。在方法1900的一些实施例中,预定义的帧内预测模式包括平面模式。在方法1900的一些实施例
中,预定义的帧内预测模式包括dc模式。在方法1900的一些实施例中,预定义的帧内预测模式包括垂直模式。在方法1900的一些实施例中,预定义的帧内预测模式包括水平模式。在方法1900的一些实施例中,视频的附加视频块用第一帧内编解码模式进行编解码,并且其中当前视频块在时间上先于附加视频块。在方法1900的一些实施例中,使用第一帧内编解码模式为附加视频块构建最可能模式(mpm)列表。
[0591]
图20示出了示例视频处理方法2000的流程图。方法2000包括根据规则来确定差分编解码模式在视频的当前视频块和当前视频块的比特流表示之间的转换期间使用的帧内编解码模式2002。操作2004包括基于该确定,使用差分编解码模式来执行当前视频块和当前视频块的比特流表示之间的转换,其中在差分编解码模式下,当前视频块的帧内预测的量化残差和量化残差的预测之间的差使用差分脉冲编解码调制(dpcm)表示在当前视频块的比特流表示中表示,并且其中量化残差的预测根据帧内编解码模式来执行。
[0592]
在方法2000的一些实施例中,规则指定帧内编解码模式基于与当前视频块相关联的色彩分量来确定。在方法2000的一些实施例中,规则指定帧内编解码模式基于在以下中信令通知的消息来确定:序列参数集(sps)、视频参数集(vps)、图片参数集(pps)、图片头、条带头、片组头、最大编解码单元(lcu)行或lcu组。在方法2000的一些实施例中,规则指定帧内编解码模式基于指示在差分编解码模式下执行帧内编解码模式的方向的标志来确定。在方法2000的一些实施例中,规则指定帧内编解码模式基于指示量化残差的预测的方向的标志来确定。在方法2000的一些实施例中,规则指定帧内编解码模式基于当前视频块或当前视频块的邻近视频块的块大小来确定。
[0593]
在方法2000的一些实施例中,规则指定帧内编解码模式基于当前视频块或当前视频块的邻近视频块的形状来确定。在方法2000的一些实施例中,规则指定帧内编解码模式基于当前视频块或当前视频块的邻近视频块的最可能模式(mpm)来确定。在方法2000的一些实施例中,规则指定帧内编解码模式基于当前视频块的邻近视频块的帧间预测模式或帧内预测模式来确定。在方法2000的一些实施例中,规则指定帧内编解码模式基于当前视频块的邻近视频块的运动矢量来确定。在方法2000的一些实施例中,规则指定帧内编解码模式基于当前视频块的邻近视频块是否使用差分编解码模式进行编解码的指示来确定。
[0594]
在方法2000的一些实施例中,规则指定帧内编解码模式基于当前视频块或当前视频块的邻近视频块的量化参数的值来确定。在方法2000的一些实施例中,规则指定帧内编解码模式基于用于对当前视频块进行编解码的色彩格式来确定。在方法2000的一些实施例中,规则指定帧内编解码模式基于单独编解码树结构还是双编解码树结构用于对当前视频块进行编解码来确定。在方法2000的一些实施例中,规则指定帧内编解码模式基于应用于当前视频块的变换类型来确定。在方法2000的一些实施例中,规则指定帧内编解码模式基于与当前视频块相关联的条带或片组类型或图片类型来确定。
[0595]
以下列出的示例是对附加实施例的描述。
[0596]
1.一种视频处理的方法,包括:使用差分编解码模式并选择性地使用基于共存规则的帧内预测模式来执行当前视频块和当前视频块的比特流表示之间的转换;其中,帧内预测模式用于生成当前视频块的样点的预测;并且其中,差分编解码模式用于使用差分脉冲编解码调制表示来表示来自像素的预测的量化残差块。
[0597]
2.根据示例1所述的方法,其中,所述帧内预测模式是基于矩阵的帧内预测模式
(mip),并且其中共存规则将mip限制为mip的部分允许模式。
[0598]
3.根据示例2所述的方法,其中,部分允许模式包括水平正常帧内模式或垂直正常帧内模式。
[0599]
示例1

3的进一步实施例在第4节的项1中描述。例如,差分编解码模式可以表示qr

bdpcm编解码模式的当前版本。
[0600]
4.根据示例1所述的方法,其中,帧内预测模式包括沿着非水平或非垂直方向的预测。
[0601]
5.根据示例1或4所述的方法,其中,帧内预测模式是平面或dc预测模式。
[0602]
6.根据示例1或4所述的方法,其中,帧内预测模式是垂直预测模式或水平预测模式。
[0603]
7.根据示例1或4所述的方法,其中,帧内预测模式由比特流表示中的字段标识。
[0604]
8.根据示例1或4所述的方法,其中,帧内预测模式取决于当前视频块或邻近块的块大小。
[0605]
9.根据示例1或4所述的方法,其中,帧内预测模式取决于当前块或邻近块的形状。
[0606]
10.根据示例1或4所述的方法,其中,帧内预测模式取决于当前视频块或邻近视频块使用帧间预测还是帧内预测进行编解码。
[0607]
11.根据示例1或4所述的方法,其中,帧内预测模式取决于邻近视频块是否使用差分编解码模式进行编解码。
[0608]
12.根据示例1或4所述的方法,其中,帧内预测模式取决于用于当前视频块或邻近视频块的量化参数的值。
[0609]
13.根据示例1或4所述的方法,其中,帧内预测模式取决于用于对当前视频块进行编解码的色彩格式。
[0610]
14.根据示例1或4所述的方法,其中,帧内预测模式取决于单独编解码树结构还是双编解码树结构用于对当前视频块进行编解码。
[0611]
示例4至14的进一步实施例在第4节的项2中提供。
[0612]
15.根据示例1所述的方法,其中,当前视频块的样点的生成预测从邻近视频区域中的非相邻样点执行。
[0613]
16.根据示例1所述的方法,其中,帧内预测模式包括帧内块复制merge模式。
[0614]
17.根据示例1所述的方法,其中,帧内预测模式包括帧内块复制高级运动矢量预测模式。
[0615]
18.根据示例15至17中任一项所述的方法,其中,帧内预测模式由块矢量或merge索引指示。
[0616]
示例15至18的进一步实施例在第4节的项3中提供。
[0617]
19.根据示例1所述的方法,其中,共存规则基于比特流表示中的字段来指定从差分编解码模式下的信令通知的索引到帧内预测模式的映射。
[0618]
20.根据示例1所述的方法,其中,共存规则基于当前视频块或邻近块的大小来指定从差分编解码模式下的信令通知的索引到帧内预测模式的映射。
[0619]
21.根据示例1所述的方法,其中,共存规则基于当前视频块或邻近块的形状来指定从差分编解码模式下的信令通知的索引到帧内预测模式的映射。
[0620]
22.根据示例1所述的方法,其中,共存规则基于当前视频块或邻近块的预测模式来指定从差分编解码模式下的信令通知的索引到帧内预测模式的映射。
[0621]
23.根据示例1所述的方法,其中,共存规则基于当前视频块或邻近块的最可能模式来指定从差分编解码模式下的信令通知的索引到帧内预测模式的映射。
[0622]
24.根据示例1所述的方法,其中,共存规则基于当前视频块或邻近块的运动矢量来指定从差分编解码模式下的信令通知的索引到帧内预测模式的映射。
[0623]
25.根据示例1所述的方法,其中,共存规则基于邻近块是否使用差分编解码模式进行编解码来指定从差分编解码模式下的信令通知的索引到帧内预测模式的映射。
[0624]
26.根据示例1所述的方法,其中,共存规则基于由当前视频块或邻近块使用的量化参数来指定从差分编解码模式下的信令通知的索引到帧内预测模式的映射。
[0625]
27.根据示例1所述的方法,其中,共存规则基于当前视频块的色彩格式来指定从差分编解码模式下的信令通知的索引到帧内预测模式的映射。
[0626]
28.根据示例1所述的方法,其中,共存规则基于当前视频块使用单独编解码树还是双编解码树来指定从差分编解码模式下的信令通知的索引到帧内预测模式的映射。
[0627]
29.根据示例1所述的方法,其中,共存规则基于应用于当前视频块的变换来指定从差分编解码模式下的信令通知的索引到帧内预测模式的映射。
[0628]
30.根据示例1所述的方法,其中,共存规则基于当前视频块的条带类型或片组类型或图片类型来指定从差分编解码模式下的信令通知的索引到帧内预测模式的映射。
[0629]
示例19至30的进一步实施例在第4节的项2中提供。
[0630]
31.一种视频处理的方法,包括:使用差分编解码模式来执行当前视频块和当前视频块的比特流表示之间的转换,其中在该差分编解码模式下使用差分脉冲编解码调制表示来表示来自当前视频块的像素的预测的量化残差块;其中,预测的第一方向或差分编解码模式的第二方向可从比特流表示推断。
[0631]
32.根据示例31所述的方法,其中,像素的预测的第一方向可从用于预测的帧内预测模式隐式推断。
[0632]
33.根据示例32所述的方法,其中,差分编解码模式的第二方向可推断为与预测的第一方向相同的方向。
[0633]
34.根据示例31所述的方法,其中,第二方向可从用于预测的帧内预测模式推断。
[0634]
35.根据示例31所述的方法,其中,第二方向可从当前视频块或邻近块的大小或者当前视频块或邻近块的形状推断。
[0635]
36.根据示例31所述的方法,其中,第二方向可从邻近块的运动矢量推断。
[0636]
37.根据示例31所述的方法,其中,第二方向可从当前视频块或邻近块的最可能模式推断。
[0637]
38.根据示例31所述的方法,其中,第二方向可从邻近块的预测模式推断。
[0638]
39.根据示例31所述的方法,其中,第二方向可从邻近块的帧内预测模式推断。
[0639]
40.根据示例31所述的方法,其中,第二方向可从邻近块是否使用差分编解码模式来推断。
[0640]
示例31

40的进一步实施例在第4节的项4中提供。
[0641]
41.一种视频处理的方法,包括:基于应用性规则来确定差分编解码模式适用于当
前视频块和当前视频块的比特流表示之间的转换;以及使用差分编解码模式来执行当前视频块和比特流表示之间的转换;
[0642]
其中,在差分编解码模式下,使用在不同于水平方向或垂直方向的残差预测方向上执行的差分脉冲编解码调制表示来表示来自当前视频块的像素的帧内预测的量化残差块。
[0643]
42.根据示例41所述的方法,其中,残差预测方向是45度方向。
[0644]
43.根据示例41所述的方法,其中,残差预测方向是135度方向。
[0645]
44.根据示例41所述的方法,其中,残差预测方向与比特流表示中的字段或者当前视频块或邻近块的大小或者当前视频块或邻近块的形状相关。
[0646]
示例41至44的进一步实施例在第4节的项7中提供。
[0647]
45.根据示例41所述的方法,其中,应用性规则指定由于当前视频块是色度块而使用差分编解码模式。
[0648]
46.根据示例45所述的方法,其中,应用性规则还指定当前视频块的残差预测方向是与对应于当前视频块的亮度块的方向相同的方向。
[0649]
47.根据示例41所述的方法,其中,应用性规则指定由于当前视频块不使用跨分量线性模型(cclm)编解码模式而使用差分编解码。
[0650]
示例45至47的进一步实施例在第4节的项8中提供。
[0651]
48.根据示例41所述的方法,其中,应用性规则指定从差分编解码模式对一个色彩分量的应用性推导差分编解码模式对另一个色彩分量的应用性。
[0652]
示例48的进一步实施例在第4节的项12中提供。
[0653]
49.一种视频处理的方法,包括:确定差分编解码模式适用于当前视频块和当前视频块的比特流表示之间的转换;以及使用差分编解码模式的实施规则来执行当前视频块和比特流表示之间的转换;其中,在差分编解码模式下,使用在不同于水平方向或垂直方向的残差预测方向上执行的差分脉冲编解码调制表示来表示来自当前视频块的像素的帧内预测的量化残差块。
[0654]
50.根据示例49所述的方法,其中,实施规则指定将量化残差块的值限制在一范围内。
[0655]
51.根据示例49所述的方法,其中,实施规则指定使用裁剪来获得量化残差块。
[0656]
示例49

51的进一步实施例在第4节的项9中提供。
[0657]
52.根据示例49所述的方法,其中,实施规则指定执行从当前视频块的最后一行到当前视频块的第一行的预测。
[0658]
53.根据示例49所述的方法,其中,实施规则指定执行从当前视频块的最后一列到当前视频块的第一列的预测。
[0659]
示例52至53的进一步实施例在第4节的项10中提供。
[0660]
54.根据示例49所述的方法,其中,实施规则指定将差分编解码模式仅应用于当前视频块的子集。
[0661]
55.根据示例54所述的方法,其中,子集排除残差的k个左列,其中k是小于块的像素宽度的整数。
[0662]
56.根据示例54所述的方法,其中,子集排除残差的k个顶行,其中k是小于块的像
素高度的整数。
[0663]
示例54至56的进一步实施例在第4节的项10中提供。
[0664]
57.根据示例49所述的方法,其中,实施规则指定将差分编解码模式逐段应用于转换。
[0665]
示例57的进一步实施例在第4节的项12中提供。
[0666]
58.一种视频处理的方法,包括:确定在当前视频块和当前视频块的比特流表示之间的转换期间使用的差分编解码模式和与当前视频块相关联的帧内编解码模式相同;以及使用差分编解码模式的实施规则来执行当前视频块和比特流表示之间的转换;其中,在差分编解码模式下,来自当前视频块的像素的帧内预测的量化残差块使用在不同于水平或垂直方向的残差预测方向上执行的差分脉冲编解码调制表示来表示。
[0667]
59.根据示例58所述的方法,其中,差分编解码模式是垂直帧内预测模式。
[0668]
60.根据示例58所述的方法,其中,差分编解码模式是水平帧内预测模式。
[0669]
61.根据示例58所述的方法,其中,差分编解码模式是预定义的帧内预测模式。
[0670]
示例58

61的进一步实施例在第4节的项5中描述。
[0671]
62.一种视频处理装置,包括被配置为实施示例1至61中的一个或多个的处理器。
[0672]
63.一种存储有代码的计算机可读介质,该代码在由处理器执行时使得处理器实施根据示例1至61中的任一项或多项所述的方法。
[0673]
在本文档的列出的示例中,术语转换可以指为当前视频块生成比特流表示或者从比特流表示生成当前视频块。比特流表示不需要表示连续的比特组,并且可以被划分为头字段或表示编解码像素值信息的码字中包括的比特。
[0674]
在上面的示例中,应用性规则可以是预定义的,并且对于编码器和解码器是已知的。
[0675]
应当理解,所公开的技术可以体现在视频编码器或解码器中,以使用包括使用关于帧内编解码中使用差分编解码模式的考虑的各种实施规则的技术来提高压缩效率,如本文档中所述。
[0676]
本文档中描述的所公开的以及其他解决方案、示例、实施例、模块和功能操作可以在数字电子电路中、或者在计算机软件、固件或硬件(包括本文档中公开的结构及其结构等同物)中、或者在它们中的一个或多个的组合中被实施。所公开的以及其他实施例可以被实施为一个或多个计算机程序产品,即在计算机可读介质上编码的计算机程序指令的一个或多个模块,该计算机程序指令用于由数据处理装置运行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储器设备、影响机器可读传播信号的物质的组合、或它们中的一个或多个的组合。术语“数据处理装置”包含用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机、或多个处理器或计算机。除了硬件之外,装置还可以包括为所讨论的计算机程序创建运行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、或它们中的一个或多个的组合的代码。传播信号是被生成以对信息进行编码以用于发送到合适的接收器装置的人工生成的信号,例如机器生成的电信号、光学信号或电磁信号。
[0677]
计算机程序(也已知为程序、软件、软件应用、脚本或代码)可以以任何形式的编程语言(包括编译或解释语言)编写,并且其可以以任何形式部署,包括作为独立程序或作为
适合在计算环境中使用的模块、组件、子例程或其他单元。计算机程序不一定对应于文件系统中的文件。程序可以存储在保存其他程序或数据(例如,存储在标记语言文档中的一个或多个脚本)的文件的一部分中,存储在专用于所讨论的程序的单个文件中,或存储在多个协调文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。计算机程序可以被部署以在一个计算机上或在位于一个站点上或跨多个站点分布并通过通信网络互连的多个计算机上运行。
[0678]
本文档书中描述的过程和逻辑流程可以由运行一个或多个计算机程序的一个或多个可编程处理器执行,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路执行,并且装置也可以被实施为专用逻辑电路,例如,fpga(field programmable gate array,现场可编程门阵列)或asic(专用集成电路)。
[0679]
适合于运行计算机程序的处理器包括例如通用和专用微处理器、以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘),或可操作地耦合以从该一个或多个大容量存储设备接收数据或向该一个或多个大容量存储设备传递数据、或者从其接收数据并向其传递数据。然而,计算机不需要这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如eprom、eeprom和闪存设备;磁盘,例如内部硬盘或可换式磁盘;磁光盘;以及cd rom和dvd

rom磁盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。
[0680]
虽然本专利文档包含许多细节,但这些细节不应被解释为对任何主题或可能要求保护的范围的限制,而是作为指定于特定技术的特定实施例的特征的描述。在本专利文档中在单独的实施例的上下文中描述的特定特征也可以在单个实施例中组合实施。相反,在单个实施例的上下文中描述的各种特征也可以分别在多个实施例中或以任何合适的子组合实施。此外,尽管特征可以在上面描述为以特定组合起作用并且甚至最初如此要求保护,但是在一些情况下可以从组合排除来自所要求保护的组合的一个或多个特征,并且所要求保护的组合可以针对子组合或子组合的变化。
[0681]
类似地,虽然在附图中以特定顺序描绘了操作,但是这不应该被理解为需要以所示的特定顺序或以先后顺序执行这样的操作或者执行所有示出的操作以实现期望的结果。此外,在本专利文档中描述的实施例中的各种系统组件的分离不应被理解为在所有实施例中都需要这样的分离。
[0682]
仅描述了一些实施方式和示例,并且可以基于本专利文档中描述和示出的内容来进行其他实施方式、增强和变化。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献