发布信息

交叉分量自适应环路滤波器的制作方法 专利技术说明

作者:admin      2022-12-02 16:48:33     372



电子通信装置的制造及其应用技术交叉分量自适应环路滤波器1.相关申请的交叉引用2.根据适用的专利法和/或巴黎公约的规则,本技术及时要求2019年11月4日提交的国际专利申请第pct/cn2019/115321号的优先权和利益。出于法律规定的所有目的,通过引用并入上述申请的全部公开内容作为本技术公开内容的一部分。技术领域3.本专利文件涉及视频编码和解码技术、设备和系统。背景技术:4.目前,正在努力改善当前视频编解码技术的性能,以提供更好的压缩比,或提供允许较低复杂度的视频编码和解码方案或并行的实现方式。业内专家最近提出了一些新的视频编解码工具,目前正在进行测试,以确定其有效性。技术实现要素:5.描述了涉及数字视频编解码的设备、系统和方法,具体而言,涉及运动矢量的管理。所描述的方法可以应用于现有的视频编解码标准(例如,高效视频编解码(hevc)或通用视频编解码)和未来的视频编解码标准或视频编解码器。6.在一个代表性方面,所公开的技术可以用于提供一种视频处理的方法。该方法包括:针对包括一个或多个视频块的视频的当前视频单元和视频的比特流表示之间的转换,根据规则确定填充过程,该填充过程用于在将交叉分量自适应环路滤波(cc-alf)工具应用于当前视频单元的至少一些视频块期间填充不可用样点;以及基于确定执行转换,并且其中该规则指定填充过程也用于在将自适应环路滤波(alf)工具应用于当前视频单元的一个或多个视频块期间填充不可用样点。7.在另一个代表性方面,所公开的技术可以用于提供另一种视频处理方法。该方法包括执行视频的视频单元和视频的比特流表示之间的转换,其中,在转换期间,根据自适应环路滤波(alf)过程或交叉分量自适应环路滤波(cc-alf)过程的应用中的规则,以预定义填充次序来填充视频单元的不可用样点。8.在又一个代表性方面,所公开的技术可以用于提供另一种视频处理方法。该方法包括:针对启用了自适应环路滤波器(alf)应用的视频的视频区域,确定该视频区域被视频单元的边界跨越;以及执行视频和视频的比特流表示之间的转换,其中,对于转换,由于视频区域被视频单元的边界跨越,所以根据规则将视频区域拆分成多个划分。9.在又一个代表性方面,所公开的技术可以用于提供另一种视频处理方法。该方法包括根据规则执行视频的视频单元和视频的比特流表示之间的转换,其中该规则指定在不允许跨越视频单元的边界的滤波过程的情况下,不允许将自适应环路滤波(alf)和/或交叉分量自适应环路滤波(cc-alf)应用于位于该边界处的样点。10.在又一个代表性方面,所公开的技术可以用于提供另一种视频处理方法。该方法包括执行视频的视频单元和视频的比特流表示之间的转换,其中比特流表示符合格式规则;其中视频区域不同于编解码树块;其中该格式规则指定比特流表示中是否包括指示自适应环路滤波(alf)工具和/或交叉分量自适应环路滤波(cc-alf)工具对视频区域的适用性的语法元素。11.在又一个代表性方面,所公开的技术可以用于提供另一种视频处理方法。该方法包括:针对视频的视频单元和视频的比特流表示之间的转换,根据规则确定交叉分量自适应环路滤波(cc-alf)工具对视频单元的样点的适用性;以及根据该确定执行转换;其中比特流表示包括cc-alf可用于视频单元的指示,并且其中该规则指定一个或多个覆盖该指示的条件。12.在又一个代表性方面,所公开的技术可以用于提供另一种视频处理方法。该方法包括根据规则执行视频的视频单元和视频的比特流表示之间的转换,其中该规则指定在转换期间使用的算法省略三个裁剪操作中的至少一个,该三个裁剪操作包括对应于色度自适应环路滤波(alf)滤波的第一裁剪操作、对应于交叉分量自适应环路滤波(cc-alf)偏移推导的第二裁剪操作、以及对应于色度滤波样点的细化以推导最终色度样点值的第三裁剪操作。13.在又一个代表性方面,所公开的技术可以用于提供另一种视频处理方法。该方法包括针对视频的第一视频单元和视频的比特流表示之间的转换,根据规则确定交叉分量自适应环路滤波(cc-alf)偏移;以及基于该确定执行转换,并且其中该规则指定所述cc-alf偏移被裁剪到不同于第二范围的第一范围,该第二范围被表示为[–(1《《(bitdepthc–1)),(1《《(bitdepthc–1))–1],其中bitdepthc是比特深度值。[0014]在又一个代表性方面,所公开的技术可以用于提供另一种视频处理方法。该方法包括:针对视频的第一视频单元和视频的比特流表示之间的转换,根据规则推导交叉分量自适应环路滤波(cc-alf)偏移;以及使用cc-alf偏移执行转换,并且其中该规则指定利用基于比特深度值而不是固定值的舍入偏移来对cc-alf偏移进行舍入。[0015]在又一个代表性方面,所公开的技术可以用于提供另一种视频处理方法。该方法包括根据规则执行视频的视频单元和视频的比特流表示之间的转换,其中该规则指定在应用于视频单元的样点的色度自适应环路滤波(alf)过程和/或交叉分量自适应环路滤波(cc-alf)过程期间使用的一个或多个处理步骤是相同的。[0016]在又一个代表性方面,所公开的技术可以用于提供另一种视频处理方法。该方法包括根据规则执行视频的视频单元和视频的比特流表示之间的转换,其中该规则指定,在转换期间,通过应用使用视频单元的第二颜色分量的信息的修改来修改视频单元的第一颜色分量的样点值,其中该修改是基于在视频单元的自适应环路滤波(alf)过程中使用的一个或多个参数。[0017]在又一个代表性方面,所公开的技术可以用于提供另一种视频处理方法。该方法包括:针对视频的第一子图片和视频的比特流表示之间的转换,基于规则确定交叉分量环路滤波(cc-alf)是否适用于第一子图片的样点;以及基于该确定执行转换;其中用于该样点的cc-alf使用来自第二子图片的样点;并且其中该规则基于对于第一子图片和/或第二子图片是否允许跨越子图片边界的环路滤波。[0018]此外,在代表性方面,公开了一种视频系统中的装置,包括处理器和其上具有指令的非暂时性存储器。指令在由处理器执行时使得处理器实现任何一个或多个所公开的方法。[0019]此外,公开了存储在非暂时性计算机可读介质上的计算机程序产品,该计算机程序产品包括用于执行任何一个或多个所公开的方法的程序代码。[0020]在附图、说明书和权利要求中更详细地描述了所公开技术的上述和其他方面和特征。附图说明[0021]图1示出了编码器框图的示例。[0022]图2示出了基于几何变换的自适应环路滤波器(galf)滤波器形状的示例。[0023]图3示出了与亮度分量相关联的环路滤波器线缓冲器的示例。[0024]图4示出了与色度分量相关联的环路滤波器线缓冲器的示例。[0025]图5a和图5b示出了当n=4时在虚拟边界处的经修改的alf块分类的示例。[0026]图6a、图6b和图6c示出了与经修改的亮度alf滤波结合的虚拟边界(vb)附近的1线、2线和3线的示例。[0027]图7a和图7b示出了与经修改的色度alf滤波结合的虚拟边界(vb)附近的1线和2线的示例。[0028]图8示出了基于经修改的系数的alf(malf)的示例。[0029]图9a至图9d示出了子采样拉普拉斯计算的示例。[0030]图10a示出了cc-alf相对于其它环路滤波器的放置的示例。[0031]图10b示出了菱形滤波器的示例。[0032]图11示出了3×4菱形滤波器的示例。[0033]图12示出了图片的光栅扫描条带划分的示例。[0034]图13示出了图片的矩形条带划分的示例。[0035]图14示出了图片的矩形条带划分的另一个示例。[0036]图15示出了图片的子图片划分的示例。[0037]图16示出了alf处理单元的示例和窄alf处理单元的示例。[0038]图17示出了将重复填充应用于alf处理单元的示例。[0039]图18示出了填充不可用样点的示例。[0040]图19是用于实现本文件中描述的视觉媒体解码或视觉媒体编码技术的硬件平台的示例的框图。[0041]图20示出了用于视频处理的示例方法的流程图。[0042]图21是其中可以实现所公开的技术的示例视频处理系统的框图。[0043]图22是示出了示例视频编解码系统的框图。[0044]图23是示出了根据所公开技术的一些实施例的编码器的框图。[0045]图24是示出了根据所公开技术的一些实施例的解码器的框图。[0046]图25a至图25g示出了基于所公开技术的一些实现方式的视频处理的示例方法的流程图。具体实施方式[0047]1.hevc/h.265中的视频编解码[0048]视频编解码标准主要通过众所周知的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标准。自h.262开始,视频编解码标准基于混合视频编解码结构,其中利用时域预测和变换编解码。为了探索超越hevc的未来视频编解码技术,vceg和mpeg于2015年联合地成立联合视频探索小组(jvet)。此后,jvet采纳了许多新方法且将其引入到命名为联合探索模型(jem)的参考软件中。2018年4月,创建在vceg(q6/16)和iso/iec jtc1 sc29/wg11(mpeg)之间的联合视频专家小组(jvet),以致力于vvc标准,该vvc标准目标为与hevc相比比特率降低50%。[0049]2.1.颜色空间和色度子采样[0050]颜色空间,也称为颜色模型(或颜色系统),是一个抽象的数学模型,它将颜色范围简单地描述为数字的元组,通常是3或4个值或颜色分量(例如rgb)。基本上说,颜色空间是坐标系和子空间的精化。[0051]对于视频压缩,最常用的颜色空间是ycbcr和rgb。[0052]ycbcr、y′cbcr或y pb/cb pr/cr,也写作ycbcr或y′cbcr,是颜色空间族,用作视频和数字摄影系统中彩色图片管线的一部分。y′为亮度分量,cb和cr为蓝色差和红色差色度分量。y′(带上标符号’)与y亮度不同,其意味着是基于伽马(gamma)校正的rgb原色对光强进行非线性编码。[0053]色度子采样是通过对色度信息实现比对亮度信息更低的分辨率来编码图片的实践,利用了人类视觉系统对色差的敏锐度低于对亮度的敏锐度。[0054]2.1.1. 4:4:4[0055]三个y'cbcr分量中的每一个具有相同的采样率,因此没有色度子采样。该方案有时用于高端胶片扫描仪和电影后期制作中。[0056]2.1.2. 4:2:2[0057]两个色度分量以亮度的一半采样率采样:水平色度分辨率减半。这使得未压缩视频信号的带宽减少了三分之一,而几乎没有视觉差异。[0058]2.1.3. 4:2:0[0059]在4:2:0中,水平采样比4:1:1增加了一倍,但由于在该方案中,cb和cr通道仅在每个交替线上被采样,因此垂直分辨率减半。因此,数据速率是相同的。cb和cr各自以2的因子在水平和垂直方向二者上进行子采样。有三种4:2:0方案的变型,它们具有不同的水平和垂直定址。[0060]·在mpeg-2中,cb和cr水平共址。cb和cr在垂直方向上的像素之间定址(间隙地定址)。[0061]·在jpeg/jfif中,h.261和mpeg-1、cb和cr间隙地定址、在交替亮度样点之间的中间定址。[0062]·在4:2:0dv中,cb和cr在水平方向上共址。垂直方向上,它们在交替线上共址。[0063]2.1.4.不同颜色分量的编解码[0064]根据separate_colour_plane_flag的值,变量chromaarraytype的值分配如下:[0065]–如果separate_colour_plane_flag等于0,则chromaarraytype被设置为等于chroma_format_idc。[0066]–否则(separate_colour_plane_flag等于1),则chromaarraytype被设置为等于0。[0067]2.2典型视频编解码器的编解码流程[0068]图1示出了vvc的编码器框图的示例,其包括三个环路内滤波块:去方块滤波器(df)、样点自适应偏移(sao)和alf。与使用预定义滤波器的df不同,sao和alf利用当前图片的原始样点通过分别添加偏移和应用有限脉冲响应(fir)滤波器来减少原始样点与重构样点之间的均方误差,其中编解码侧信息信令通知偏移和滤波器系数。alf位于每个图片的最后一个处理阶段,可以被看作是试图捕获和修复由先前阶段造成的伪影的工具。[0069]2.3 jem中基于几何变换的自适应环路滤波器[0070]在jem中,应用了采用基于块的滤波器自适应的基于几何变换的自适应环路滤波器(galf)。对于亮度分量,基于局部梯度的方向和活动,为每个2×2块选择25个滤波器中的一个。[0071]2.3.1.滤波器形状[0072]在jem中,可以为亮度分量选择多达三种菱形滤镜形状(如图2所示)。图2示出了三种galf滤波器形状,5×5菱形、7×7菱形、9×9菱形(从左到右)。在图片级信令通知索引,以指示用于亮度分量的滤波器形状。[0073]2.3.1.1.块分类[0074]每个2×2块被分类为25个类别中的一个。分类索引c是基于其方向性d和活动的量化值推导出的,如下所示:[0075][0076]为了计算d和首先使用以下的一维拉普拉斯公式计算水平、垂直和两个对角线方向的梯度:[0077][0078][0079][0080][0081]索引i和j是指2×2块中左上样点的坐标,并且r(i,j)表示坐标(i,j)处的重构样点。[0082]然后d水平和垂直方向的梯度的最大值和最小值被设置为:[0083][0084]并且两个对角方向的梯度的最大值和最小值被设置为:[0085][0086]为了推导方向性d的值,将这些值相互比较,并与两个阈值t1和t2进行比较:[0087]步骤1.如果为真,则d被设置为0。[0088]步骤2.如果则从步骤3继续;否则从步骤4继续。[0089]步骤3.如果则d被设置为2;否则d被设置为1。[0090]步骤4.如果则d被设置为4;否则d被设置为3。[0091]活动值a计算如下:[0092][0093]a被进一步量化到0到4的范围(含端点),并且量化值表示为[0094]对于图片中的两个色度分量,不应用分类方法,例如,对每个色度分量应用一组alf系数。[0095]2.3.1.2.滤波器系数的几何变换[0096]在对每个2×2块进行滤波之前,根据为该块计算的梯度值,将几何变换(例如旋转或对角线和垂直翻转)应用于滤波器系数f(k,l)。这等同于将这些变换应用于滤波器支持区域中的样点。想法是通过对准它们的方向性来使应用了alf的不同块更加相似。[0097]引入了三种几何变换,包括对角线、垂直翻转和旋转:[0098]对角线:fd(k,l)=f(l,k),[0099]垂直翻转:,fv(k,l)=f(k,k-l-1)ꢀꢀꢀ(9)[0100]旋转:fr(k,l)=f(k-l-1,k).[0101]其中k是滤波器的尺寸,0≤k,l≤k-1是系数坐标,使得位置(0,0)在左上角,并且位置(k-1,k-1)在右下角。根据为该块计算出的梯度值,将变换应用于滤波器系数f(k,l)。表1总结了变换与四个方向的四个梯度之间的关系。[0102]表1:为一个块计算出的梯度与变换的映射[0103]梯度值变换gd2《gd1且go《gave没有变换gd2《gd1且give《gh对角线gd1《gd2且gh《gv垂直翻转gd1《gd2且gv《gh旋转[0104]2.3.1.3.滤波器参数信令[0105]jem中,对于第一个ctu信令通知galf滤波器参数,例如,在条带标头之后和第一个ctu的sao参数之前。最多可以信令通知亮度滤波器系数的25个集合。为了降低比特开销,可以合并不同分类的滤波器系数。此外,参考图片的galf系数被存储并且允许被重用为当前图片的galf系数。当前图片可以选择使用为参考图片存储的galf系数,并且旁路galf系数信令。在这种情况下,仅信令通知参考图片中的一个的索引,并且为当前图片继承所指示的参考图片的存储的galf系数。[0106]为了支持galf时域预测,维持galf滤波器集的候选列表。在解码新序列的开始处,候选列表为空。在解码一个图片后,可将对应的滤波器集添加到候选列表中。一旦候选列表的尺寸达到最大允许值(例如,当前jem中为6),则新滤波器的集合将盖写解码次序中最旧的集合,即,应用先进先出(fifo)规则来更新候选列表。为了避免重复,只有当对应的图片不使用galf时域预测时,才能将集合添加到列表中。为了支持时域可缩放性,存在滤波器集的多个候选列表,并且每个候选列表都与时域层相关联。更具体地说,由时域层索引(tempidx)分配的每个阵列可以构成具有等于较低的tempidx的先前解码图片的滤波器集。例如,第k个阵列被分配为与等于k的tempidx相关联,并且它只包括来自tempidx小于或等于k的图片中的滤波器集。在对某个图片进行编解码后,与该图片相关联的滤波器集将用于更新与相等或较高的tempidx相关联的那些阵列。[0107]galf系数的时域预测用于帧间编解码帧以最小化信令开销。对于帧内帧,时域预测不可用,并且向每个类分配16个固定滤波器的集合。为了指示固定滤波器的使用,信令通知针对每一类的标志,并且如果需要的话,信令通知所选择的固定滤波器的索引。即使在为给定类选择了固定滤波器时,仍可以为该类发送自适应滤波器的系数f(k,l),在这种情况下,将应用于重构图片的滤波器的系数是系数的两个集合的总和。[0108]亮度分量的滤波过程可以被控制在cu级。信令通知标志,以指示galf是否被应用于cu的亮度分量。对于色度分量,仅在图片级指示是否应用galf。[0109]2.3.1.4.滤波过程[0110]在解码器侧,当针对块启用galf时,对块内的每个样点r(i,j)进行滤波,得到如下所示的样点值r′(i,j),其中l指示滤波器长度,fm,n表示滤波器系数,f(k,l)指示经解码的滤波器系数。[0111][0112]替代地,自适应环路滤波器的滤波过程可以表示如下:[0113]o(x,y)=∑(i,j)w(i,j).i(x+i,y+j),ꢀꢀꢀ(11)[0114]其中样点i(x+i,y+j)是输入样点,o(x,y)是经滤波的输出样点(即滤波器结果),其指示滤波器系数。实际上,在vtm4.0中,它是使用整数运算来实现定点精度计算的:[0115][0116]其中l指示滤波器长度,并且其中w(i,j)是以定点精度表示的滤波器系数。[0117]2.4.非线性alf[0118]2.4.1.滤波重新制定[0119]在不影响编解码效率的情况下,等式(11)可以被重新制定为以下表达式:[0120]o(x,y)=i(x,y)+∑(i,j)≠(0,0)w(i,j).(i(x+i,y+j)-i(x,y)),(13)其中,w(i,j)是与等式()中的w(i,j)相同的滤波器系数[除了w(0,0)在等式(13)中等于1,而其在等式(11)中等于1-∑(i,j)≠(0,0)w(i,j)]。[0121]2.4.2.经修改的滤波器[0122]使用(13)的上述滤波器公式,我们可以容易地引入非线性,以通过使用简单的裁剪函数来在相邻样点值i(x+i,y+j)与正被滤波的当前样点值i(x,y)相差太大时降低它们的影响,以使alf更有效。[0123]在本提案中,alf滤波器修改如下:[0124]o′(x,y)=i(x,y)+∑(i,j)≠(0,0)w(i,j).k(i(x+i,y+j)-i(x,y),k(i,j)),ꢀꢀ(14)[0125]其中k(d,b)=min(b,max(-b,d))是裁剪函数,和k(i,j)是取决于第(i,j)滤波器系数的裁剪参数。编码器执行优化以找到最佳k(i,j)。[0126]为了易于实现,滤波器系数w(i,j)以整数精度存储和使用。上述等式可以被改写如下:[0127]o′(i,j)=i(i,j)+((∑k≠0∑l≠0w(k,l)×k(i(i+k,j+l)-i(i,j),c(k,l))+64)>>7)ꢀꢀꢀ(15)[0128]其中w(k,l)指示经解码的滤波器系数,k(x,y)是裁剪函数,c(k,l)指示经解码的裁剪参数。变量k和l在和之间变化,其中l指示滤波器长度。与函数clip3(-y,y,x)相对应的裁剪函数k(x,y)=min(y,max(-y,x))。[0129]在jvet-n0242实现中,为每个alf滤波器指定裁剪参数k(i,j),每个滤波器系数信令通知一个裁剪值。这意味着每个亮度滤波器在比特流中最多可以信令通知12个裁剪值,针对色度滤波器最多可以信令通知6个裁剪值。[0130]为了限制信令成本和编码器复杂性,我们将裁剪值的评估限制在可能的值的一个小集合中。在提案中,我们仅使用4个固定值,它们对于帧间和帧内片组是相同的。[0131]因为亮度的局部差的方差通常高于色度,所以我们针对亮度和色度滤波器使用两个不同的集合。我们还在每个集合中包括最大样点值(这里为用于10比特深度的1024),以便在不必要时可以禁用裁剪。[0132]表2提供了jvet-n0242测试中使用的裁剪值集。在对数域中,通过大致相等地拆分亮度的样点值的全部范围(编解码为10比特)和色度的4到1024的范围,来选择4个值。[0133]更准确地说,裁剪值的亮度表是通过以下公式获得的:[0134]其中m=210且n=4ꢀꢀꢀ(16)[0135]类似地,根据以下公式获得裁剪值的色度表:[0136]其中m=210,n=4且a=4ꢀꢀꢀ(17)[0137]表2:授权的裁剪值[0138][0139][0140]通过使用与上表2中的裁剪值的索引相对应的golomb编码方案,在“alf_data”语法元素中对所选裁剪值进行编码。此编码方案与滤波器索引的编码方案相同。[0141]2.5.虚拟边界[0142]在硬件和嵌入式软件中,基于图片的处理实际上是不可接受的,因为它需要很高的图片缓冲器。使用片上图片缓冲器非常昂贵,并且使用片外图片缓冲器会显著增加外部存储器访问、功耗和数据访问延迟。因此,在实际产品中,df、sao和alf将从基于图片的解码改为基于lcu的解码。当基于lcu的处理用于df、sao和alf时,整个解码过程可以由lcu在光栅扫描中以用于多个lcu的并行处理的lcu管线方式由lcu完成。在这种情况下,df、sao和alf需要线缓冲器,因为处理一个lcu行需要来自上方lcu行的像素。如果使用片外线缓冲器(如dram),将增加外部存储器带宽和功耗;如果使用片上线缓冲器(如sram),芯片面积将会增加。因此,尽管线缓冲器已经比图片缓冲器小得多,但是仍然希望减少线缓冲器。[0143]在vtm-4.0中,如图3所示,亮度分量所需的线缓冲器总数为11.25个线。对线缓冲器要求的解释如下:不能执行与ctu边缘重叠的水平边缘的去方块,因为决策和滤波需要来自第一ctu的线k、l、m、m和来自底部ctu的线o、p。因此,与ctu边界重叠的水平边缘的去方块被推迟,直到下方的ctu到来。因此,对于线k、l、m、n重构的亮度样点必须存储在线缓冲器中(4线)。然后,可以对线a到j执行sao滤波。可以对线j进行sao滤波,因为去方块不会改变线k中的样点。对于线k的sao滤波,边缘偏移分类决策仅存储在线缓冲器中(这是0.25个亮度线)。只能对线a-f执行alf滤波。如图3所示,对每个4×4块执行alf分类。每个4×4块分类需要尺寸为8×8的活动窗口,这又需要9×9的窗口来计算1维拉普拉斯算子以确定梯度。[0144]因此,对于与线g、h、i、j重叠的4×4块的块分类,需要虚拟边界以下的sao滤波样点。此外,线d、e、f的sao滤波样点对于alf分类是必需的。此外,线g的alf滤波需要来自上述线的三个经sao滤波的线d、e、f。因此,总线缓冲器要求如下:[0145]–线k-n(水平df像素):4线[0146]–线d-j(经sao滤波的像素):7线[0147]–线j和线k之间的sao边缘偏移分类器值:0.25线[0148]因此,所需的亮度线的总数为7+4+0.25=11.25。[0149]类似地,色度分量的线缓冲器要求如图4所示。色度分量的线缓冲器需求被估计为6.25个线。[0150]为了消除sao和alf的线缓冲器要求,在最新的vvc中引入了虚拟边界(vb)的概念。如图3所示,vb是向上移动了n个像素的水平lcu边界。对于每个lcu,sao和alf可以在下方lcu到来之前处理vb以上的像素,但是不能处理vb以下的像素,直到下方的lcu到来,这是由df引起的。考虑到硬件实现成本,所提出的vb和水平lcu边界之间的空间对于亮度被设置为四个像素(即,图3中的n=4),对于色度被设置为两个像素(即,图9中的n=2)。[0151]2.5.1.当vb尺寸n为4时,修改的alf块分类[0152]图5a和图5b描绘了当虚拟边界在ctu边界之上4线时(n=4)的情况下的修改的块分类。图5a示出了从线g开始的4×4块的分类,图5b示出了从线k开始的4×4块的分类。如图5a所示,对于从线g开始的4×4块,块分类仅使用线e到j。然而,对属于线j的样点的拉普拉斯梯度计算需要下面的多一线(线k)。因此,用线j来填充线k。[0153]类似地,如图5b所示,对于从线k开始的4×4块,块分类仅使用线k到线p。然而,对属于线k的样点的拉普拉斯梯度计算需要在上面的多一线(第j线)。因此,用线k来填充线j。[0154]2.5.2.跨越虚拟边界的样点的两侧填充[0155]如图6a至图6c所示,滤波器的截断版本用于对属于接近虚拟边界的线的亮度样点进行滤波。图6a示出了高于/低于虚拟边界(vb)的一个所需线需要被填充(每侧),图6b示出了高于/低于vb的两个所需线需要被填充(每侧),图6c示出了高于/低于vb的三个所需线需要被填充(每侧)。在图6a至6c中,vb由灰线表示。以图6a为例,当如图3所示对线m进行滤波时,即7×7菱形支持的中心样点在线m中,需要访问vb之上的一线。在这种情况下,vb之上的样点是从vb之下的正下方样点复制的,例如实线中的p0样点被复制到上面的虚线位置。对称地,实线中的p3样点也被复制到虚线位置的正下方,即使该位置的样点可用。复制的样点仅用于亮度滤波过程。[0156]用于alf虚拟边界的填充方法可以被表示为“双侧填充”,其中如果位于(i,j)的一个样点(例如,图6b中具有虚线的p0a)被填充,则即使共享相同滤波器系数的位于(m,n)的对应样点(例如,图6c中具有虚线的p3b)可用,该样点也被填充,如图6a至图6c和图7a至图7c所示。[0157]类似地,如图7a至图7c所示,双侧填充方法也用于色度alf滤波。图7a示出了高于/低于虚拟边界(vb)的一个所需线需要被填充(每侧),图7b示出了高于/低于vb的两个所需线需要被填充(每侧)。在图7a和图7b中,vb由灰线表示。[0158]2.5.3.当禁用非线性alf时用于两侧填充的实现方式的替代方法[0159]当非线性alf对于ctb被禁用时,例如,等式(14)中的裁剪参数k(i,j)等于(1《《bitdepth),填充过程可以通过修改滤波器系数来被代替(也称为基于经修改系数的alf,malf)。例如,当对线l/i中的样点进行滤波时,滤波系数c5被修改为c5’,在这种情况下,不需要将亮度样点从图8中的实线p0a复制到虚线p0a以及从实线p3b复制到虚线p3b。在这种情况下,假设要滤波的当前样点位于(x,y),则双侧填充和malf将生成相同的结果。[0160]c5.k(i(x-1,y-1)-i(x,y),k(-1,-1))+c1.k(i(x-1,y-2)-i(x,y),k(-1,-2))[0161]=(c5+c1).k(i(x-1,y-1)-i(x,y),k(-1,-1))ꢀꢀꢀ(18)[0162]因为k(d,b)=d且由于填充,i(x-1,y-1)=i(x-1,y-2)。[0163]然而,当非线性alf被启用时,malf和两侧填充可能生成不同的滤波结果,因为非线性参数与每个系数相关联,例如对于滤波器系数c5和c1,裁剪参数是不同的。因此,[0164]c5.k(i(x-1,y-1)-i(x,y),k(-1,-1))+c1.k(i(x-1,y-2)-i(x,y),k(-1,-2))[0165]!= (c5+c1).k(i(x-1,y-1)-i(x,y),k(-1,-1))ꢀꢀꢀ(19)[0166]因为k(d,b)!=d,即使由于填充i(x-1,y-1)=i(x-1,y-2)。[0167]2.6.vvc中基于几何变换的自适应环路滤波器[0168]与jem相比,vvc galf的当前设计有以下主要变化:[0169]1)自适应滤波器形状被移除。对于亮度分量只允许7×7滤波器形状,对于色度分量只允许5×5滤波器形状。[0170]2)alf滤波器系数在alf自适应参数集(aps)中被信令通知。[0171]3)可以应用非线性alf。[0172]4)对于每个ctu,不管alf被启用还是禁用,都为每个颜色分量信令通知一个比特标志。[0173]5)类索引的计算是以4×4级别而不是2×2级别进行的。此外,如在jvet-l0147中提出的,利用用于alf分类的子采样拉普拉斯计算方法。更具体地说,不需要为一个块内的每个样点计算水平/垂直/45对角线/135度梯度。相反,利用1:2子采样。[0174]2.7.自适应参数集中alf参数的信令[0175]在vvc草案的最新版本中,alf参数可以在自适应参数集(aps)中被信令通知,并且可以由每个ctu自适应地选择。在一个aps中,可以信令通知多达25个集合的亮度滤波器系数和裁剪值索引,以及多达8个集合的色度滤波器系数和裁剪值索引。为了减少比特开销,可以合并亮度分量的不同分类的滤波器系数。在条带标头中,信令通知用于当前条带的aps的索引。[0176]滤波器系数用等于128的范数来量化。为了限制乘法复杂度,应用了比特流一致性,使得非中心位置的系数值应在-27至27-1的范围内(包括端点)。不在比特流中信令通知中心位置系数,并且其被认为等于128。[0177](在jvet-p2001-v9中)alf的详细信令如下。[0178]7.3.2.5自适应参数集语法[0179][0180][0181]7.3.2.16自适应环路滤波器数据语法[0182][0183][0184]7.4.3.5.适配参数集语义[0185]每个aps rbsp在被引用之前应当可用于解码过程,包括在至少一个访问单元中,其temporalid小于或等于引用它或通过外部部件提供的编解码条带nal单元的tmporalid。[0186]设asplayerid是aps nal单元的nuh_layer_id。如果numh_layer_id等于asplayerid的层是独立层(即,vps_independent_layer_flag[generallayeridx[asplayerid]]等于1),则包括aps rbsp的aps nal单元的numh_layer_id应等于引用它的编解码条带nal单元的numh_layer_id。否则,包括aps rbsp的aps nal单元的nuh_layer_id将等于引用它的编解码条带nal单元的nuh_layer_id,或者等于包括引用它的编解码条带nal单元的层的直接依赖层的nuh_layer_id。[0187]在访问单元内具有特定的adaptation_parameter_set_id值和特定的aps_params_type值的所有aps nal单元应该具有相同的内容。[0188]adaptation_parameter_set_id为ap提供标识符,以供其他语法元素引用。[0189]当aps_params_type等于alf_aps或scaling_aps时,adaptation_parameter_set_id的值应在0到7的范围内(包括端点)。[0190]当aps_params_type等于lmcs_aps时,adaptation_parameter_set_id的值应在0到3的范围内(包括端点)。[0191]aps_params_type指定了aps中携带的aps参数的类型,如表3中所指定的。当aps_params_type等于1(lmcs_aps)时,adaptation_parameter_set_id的值应在0到3的范围内(包括端点)。[0192]表3–aps参数类型代码和aps参数类型[0193][0194]注释1-每种类型的aps使用一个单独的值空间用于adaptation_parameter_set_id。[0195]注2–aps nal单元(具有特定的adaptation_parameter_set_id值和特定的aps_params_type值)可以跨越图片共享,并且图片内的不同条带可以引用不同的alf aps。[0196]aps_extension_flag等于0指定aps rbsp语法结构中不存在aps_extension_data_flag语法元素。aps_extension_flag等于1指定aps rbsp语法结构中存在aps_extension_data_flag语法元素。[0197]aps_extension_data_flag可以具有任何值。它的存在和值不影响解码器符合本规范该版本中指定的配置文件。符合本规范该版本的解码器应忽略所有aps_extension_data_flag语法元素。[0198]7.4.3.14自适应环路滤波器数据语义[0199]alf_luma_filter_signal_flag等于1指定信令通知亮度滤波器集合。alf_luma_filter_signal_flag等于0指定不信令通知亮度滤波器集合。[0200]alf_chroma_filter_signal_flag等于1指定信令通知色度滤波器。alf_chroma_filter_signal_flag等于0指定不信令通知色度滤波器。当chromaarraytype等于0时,alf_chroma_filter_signal_flag应等于0。[0201]指定不同自适应环路滤波器的数量的变量numalffilters被设置为等于25。[0202]alf_luma_clip_flag等于0指定对亮度分量应用线性自适应环路滤波。alf_luma_clip_flag等于1指定可以对亮度分量应用非线性自适应环路滤波。[0203]alf_luma_num_filters_signaled_minus1加1指定可以信令通知亮度系数的自适应环路滤波器类的数量。alf_luma_num_filters_signaled_minus1的值应在0至numalffilters-1的范围内(包括端点)。[0204]alf_luma_coeff_delta_idx[filtidx]指定对于filtidx指示的滤波器类别所信令通知的自适应环路滤波器亮度系数增量的索引,范围为0至numalffilters-1。当alf_luma_coeff_delta_idx[filtidx]不存在时,它被推断为等于0。alf_luma_coeff_delta_idx[filtidx]的长度为ceil(log2(alf_luma_num_filters_signaled_minus1+1))比特。[0205]alf_luma_coeff_signalled_flag等于1指示信令通知alf_luma_coeff_flag[sfidx]。alf_luma_coeff_signalled_flag等于0指示不信令通知alf_luma_coeff_flag[sfidx]。[0206]alf_luma_coeff_flag[sfidx]等于1指定信令通知由sfidx指示的亮度滤波器系数。alf_luma_coeff_flag[sfidx]等于0指定由sfidx指示的亮度滤波器的所有滤波器系数被设置为等于0。当不存在时,alf_luma_coeff_flag[sfidx]被设置为等于1。[0207]alf_luma_coeff_abs[sfidx][j]指定由sfidx指示的所信令通知的亮度滤波器的第j个系数的绝对值。当alf_luma_coeff_abs[sfidx][j]不存在时,它推断为等于0。[0208]指数golomb二进制化uek(v)的阶k被设置为等于3。[0209]alf_luma_coeff_sign[sfidx][j]指定由sfidx指示的滤波器的第j个亮度系数的符号,如下所示:[0210]–如果alf_luma_coeff_sign[sfidx][j]等于0,则对应的亮度滤波器系数为正值。[0211]–否则(alf_luma_coeff_sign[sfidx][j]等于1),则对应的亮度滤波器系数为负值。[0212]当alf_luma_coeff_sign[sfidx][j]不存在时,它被推断为等于0。[0213]其中sfidx=0..alf_luma_num_filters_signaled_minus1,j=0..1的变量filtcoeff[sfidx][j]被初始化如下:[0214]filtcoeff[sfidx][j]=alf_luma_coeff_abs[sfidx][j]*ꢀꢀꢀ(7-47)[0215](1-2*alf_luma_coeff_sign[sfidx][j])[0216]具有元素alfcoeffl[adaptation_parameter_set_id][sfidx][j]的亮度滤波器系数alfcoeffl[adaptation_parameter_set_id],其中filtidx=0..numalffilters-1和j=0..11的推导如下:[0217]alfcoeffl[adaptation_parameter_set_id][filtidx][j]=filtcoeff[alf_luma_coeff_delta_idx[filtidx]][j]ꢀꢀꢀ(7-48)[0218]其中i=0..64,j=0..11的固定滤波器系数alffixfiltcoeff[i][j]和其中m=0..15且n=0..24的类到滤波器映射alfclasstofiltmap[m][n]的推导如下:[0219][0220][0221][0222]alfclasstofiltmap=ꢀꢀꢀ(7-50)[0223]{[0224]{8,2,2,2,3,4,53,9,9,52,4,4,5,9,2,8,10,9,1,3,39,39,10,9,52}[0225]{11,12,13,14,15,30,11,17,18,19,16,20,20,4,53,21,22,23,14,25,26,26,27,28,10}[0226]{16,12,31,32,14,16,30,33,53,34,35,16,20,4,7,16,21,36,18,19,21,26,37,38,39}[0227]{35,11,13,14,43,35,16,4,34,62,35,35,30,56,7,35,21,38,24,40,16,21,48,57,39}[0228]{11,31,32,43,44,16,4,17,34,45,30,20,20,7,5,21,22,46,40,47,26,48,63,58,10}[0229]{12,13,50,51,52,11,17,53,45,9,30,4,53,19,0,22,23,25,43,44,37,27,28,10,55}[0230]{30,33,62,51,44,20,41,56,34,45,20,41,41,56,5,30,56,38,40,47,11,37,42,57,8}[0231]{35,11,23,32,14,35,20,4,17,18,21,20,20,20,4,16,21,36,46,25,41,26,48,49,58}[0232]{12,31,59,59,3,33,33,59,59,52,4,33,17,59,55,22,36,59,59,60,22,36,59,25,55}[0233]{31,25,15,60,60,22,17,19,55,55,20,20,53,19,55,22,46,25,43,60,37,28,10,55,52}[0234]{12,31,32,50,51,11,33,53,19,45,16,4,4,53,5,22,36,18,25,43,26,27,27,28,10}[0235]{5,2,44,52,3,4,53,45,9,3,4,56,5,0,2,5,10,47,52,3,63,39,10,9,52}[0236]{12,34,44,44,3,56,56,62,45,9,56,56,7,5,0,22,38,40,47,52,48,57,39,10,9}[0237]{35,11,23,14,51,35,20,41,56,62,16,20,41,56,7,16,21,38,24,40,26,26,42,57,39}[0238]{33,34,51,51,52,41,41,34,62,0,41,41,56,7,5,56,38,38,40,44,37,42,57,39,10}[0239]{16,31,32,15,60,30,4,17,19,25,22,20,4,53,19,21,22,46,25,55,26,48,63,58,55}[0240]},[0241]比特流一致性的要求是,其中filtidx=0..numalffilters-1,j=0..11的alfcoeffl[adaptation_parameter_set_id][filtidx][j]的值应在-27至27-1的范围内(包括端点)。[0242]alf_luma_clip_idx[sfidx][j]指定在乘以由sfidx指示的被信令通知的滤波器的第j个系数之前要使用的裁剪值的裁剪索引。比特流一致性的要求是其中sfidx=0..alf_luma_num_filters_signalled_minus1并且j=0..11的alf_luma_clip_idx[sfidx][j]的值应在0到3的范围内(包括端点)。[0243]具有其中filtidx=0..numalffilters–1并且j=0..11的元素alfclipl[adaptation_parameter_set_id][filtidx][j]的亮度滤波器裁剪值alfclipl[adaptation_parameter_set_id]是按照表4中的指定推导的,其取决于bitdepth被设置为bitdepthy,clipidx被设置为alf_luma_clip_idx[alf_luma_coeff_delta_idx[filtidx]][j]。[0244]alf_chroma_num_alt_filters_minus1加1指定用于色度分量的替代滤波器的数量。[0245]alf_chroma_clip_flag[altidx]等于0指定当使用具有索引altidx的色度滤波器时,对色度分量应用线性自适应环路滤波;alf_chroma_clip_flag[altidx]等于1指定当使用具有索引altidx的色度滤波器时,对色度分量应用非线性自适应环路滤波。当不存在时,alf_chroma_clip_flag[altidx]被推断为等于0。[0246]alf_chroma_coeff_abs[altidx][j]指定具有索引altidx的替代色度滤波器的第j个色度滤波器系数的绝对值。当alf_chroma_coeff_abs[altidx][j]不存在时,它被推断为等于0。比特流一致性的要求是,alf_chroma_coeff_abs[altidx][j]的值应在0至27-1的范围内(包括端点)。[0247]指数golomb二进制化uek(v)的阶k被设置为等于3。[0248]alf_chroma_coeff_sign[altidx][j]指定具有索引altidx的替代色度滤波器的第j个色度滤波器系数的符号,如下所示:[0249]–如果alf_chroma_coeff_sign[altidx][j]等于0,则对应的色度滤波器系数具有正值。[0250]–否则(alf_chroma_coeff_sign[altidx][j]等于1),则对应的色度滤波器系数具有负值。[0251]当alf_chroma_coeff_sign[altidx][j]不存在时,它被推断为等于0。[0252]具有其中altidx=0..alf_chroma_num_alt_filters_minus1,j=0..5元素alfcoeffc[adaptation_parameter_set_id][altidx][j]的色度滤波器系数alfcoeffc[adaptation_parameter_set_id][altidx]的推导如下:[0253]alfcoeffc[adaptation_parameter_set_id][altidx][j]=alf_chroma_coeff_abs[altidx][j]*ꢀꢀꢀ(7-51)[0254](1-2*alf_chroma_coeff_sign[altidx][j])[0255]比特流一致性的要求是,其中altidx=0..alf_chroma_num_alt_filters_minus1,j=0..5的alfcoeffc[adaptation_parameter_set_id][altidx][j]的值应在-27-1至27-1范围内(包括端点)。[0256]alf_chroma_clip_idx[altidx][j]指定在乘以具有索引altidx的替代色度滤波器的第j个系数之前要使用的裁剪值的裁剪索引。比特流一致性的要求是其中altidx=0..alf_chroma_num_alt_filters_minus1,j=0..5的alf_chroma_clip_idx[altidx][j]的值应在0到3的范围内(包括端点)。[0257]具有其中altidx=0..alf_chroma_num_alt_filters_minus1,j=0..5的元素alfclipc[adaptation_parameter_set_id][altidx][j]的色度滤波器裁剪值alfclipc[adaptation_parameter_set_id][altidx]的推导如表4所示,其取决于bitdepth被设置为bitdepthc,clipidx被设置为alf_chroma_clip_idx[altidx][j]。[0258]表4–取决于bitdepth和clipidx的规范alfclip[0259][0260]2.8.ctu的alf参数的信令[0261]在vtm6中,alf滤波器参数在自适应参数集(aps)中被信令通知。在一个aps中,可以信令通知多达25个集合的亮度滤波器系数和裁剪值索引,以及多达8个集合的色度滤波器系数和裁剪值索引。为了减少比特开销,可以合并针对亮度分量的不同分类的滤波器系数。在条带标头中,信令通知用于当前条带的aps的索引。[0262]从ap解码的裁剪值索引允许使用裁剪值的亮度表和裁剪值的色度表来确定裁剪值。这些裁剪值取决于内部比特深度。[0263]在条带标头中,最多可以信令通知7个aps索引,以指定用于当前条带的亮度滤波器集合。可以在ctb级进一步控制滤波过程。总是信令通知标志来指示alf是否应用于亮度ctb。亮度ctb可以从16个固定滤波器集合和来自aps的滤波器集合中选择滤波器集合。为亮度ctb信令通知滤波器集合索引,以指示应用哪个滤波器集合。16个固定滤波器集合在编码器和解码器中都是预定义和硬编解码的。[0264]对于色度分量,在片标头中信令通知aps索引,以指示用于当前片的色度滤波器集合。在ctb级,如果在aps中存在多于一个色度滤波器集合,则针对每个色度ctb信令通知滤波器索引。[0265]更具体地说,以下内容适用:[0266]首先对条带开/关控制标志进行编解码,以指示是否条带中至少有一个ctu应用alf。如果为真,则对于每个ctu,将依次检查并信令通知以下内容:[0267]带下划线的粗体文本指示对现有标准的修改建议。[0268]与亮度部分相关:[0269]1.alf是否应用于亮度ctb。如果是,则转到步骤2。否则,不需要进一步的信令。[0270]2.检查当用于前条带的alf aps数量,用numalfaps表示。[0271]3.如果numalfaps等于0,则信令通知固定滤波器的索引(例如,alf_luma_fixed_filter_idx)。否则,以下适用:[0272]–信令通知标志以指示它是否是从第一个alf aps预测的。[0273]–如果不是,则转到步骤4。否则,停止信令通知亮度ctb的alf参数。[0274]4.如果numalfaps大于1,则信令通知标志来指示它是否是从alfaps预测的。[0275]–如果不是,则信令通知固定滤波器的索引;[0276]–如果是,并且numalfaps大于2,则用截断一元信令通知alf aps的索引减1。[0277]与色度部分相关:[0278]1.alf是否应用于cb/cr ctb。如果是,则转到步骤2。否则,不需要进一步的信令。[0279]2.信令通知与第i个alf个aps相关联的滤波器的索引,其中aps索引在条带标头中被信令通知。[0280]7.3.8.2编解码树单元语法[0281][0282][0283]2.9.交叉分量自适应环路滤波器[0284]交叉分量自适应环路滤波器(cc-alf)使用亮度样点值来细化每个色度分量。基本上,如果应用cc-alf,cc-alf通过对亮度样点进行滤波来为每个色度样点生成校正。它被用作环路滤波器步骤。该工具由比特流中的信息控制,并且该信息包括以下两者(a)每个色度分量的滤波器系数和(b)控制样点块的滤波器的应用的掩码。[0285]下面的图10a示出了cc-alf相对于其他环路滤波器的放置。cc-alf通过对每个色度分量的亮度通道应用线性菱形滤波器(如图10b所示)来工作,该色度分量表示为[0286][0287]其中[0288](x,y)是被细化的色度分量i位置[0289](xc,yc)是基于(x,y)的亮度位置[0290]si是对于色度分量i的亮度中的滤波器支持[0291]ci(x0,y0)表示滤波器系数[0292]在jvet-o0636中进一步描述了cc-alf过程。关键特性包括:[0293]·支持区域围绕其居中的亮度位置(xc,yc)是基于亮度和色度平面之间的空间缩放因子来计算的。[0294]·所有滤波器系数都在asp中传输,并且具有8比特动态范围。[0295]·aps可以在条带标头中被引用。[0296]·用于条带的每个色度分量的cc-alf系数也存储在对应于时域子层的缓冲器中。使用条带级标志有助于这些时域子层滤波器系数集合的重用。[0297]·cc-alf滤波器的应用在可变块尺寸上控制,并由为每个样点块接收的上下文编解码标志来信令通知。对于每个色度分量,在条带级处接收块尺寸以及cc-alf启用标志。[0298]·水平虚拟边界的边界填充利用了重复。对于剩余的边界,使用与常规alf相同类型的填充。[0299]2.9.1.jvet-p1008中cc-alf的进一步简化[0300]与jvet-p0080相比,以下新的方面旨在简化cc-alf的设计。[0301]–复杂性降低[0302]o如图11所示,通过将滤波器形状改变为3×4菱形来减少滤波器操作中的乘法次数。[0303]o将cc-alf系数的动态范围限制在6比特[0304]o允许与色度alf共享乘数[0305]–与alf对齐[0306]o将滤波器选择限制在ctu级的信令[0307]o移除时域层系数缓冲器[0308]o在alf虚拟边界使用对称线选择[0309]此外,由于简化降低了编解码效率,因此限制了每个色度分量最多可以应用4个滤波器。[0310]2.9.1.1.cc-alf的语法和语义[0311]带下划线的粗体文本表示对现有标准的修改建议。[0312]7.3.6条带标头语法[0313]7.3.6.1通用条带标头语法[0314][0315][0316][0317][0318][0319]自适应环路滤波器数据语法[0320][0321][0322][0323]7.3.8.2编解码树单元语法[0324][0325][0326]alf_ctb_cross_component_cb_idc[xctb》》ctblog2sizey][yctb》》ctblog2sizey]等于0指示交叉分量cb滤波器不应用于亮度位置(xctb,yctb)处的cb颜色分量样点块。alf_cross_component_cb_idc[xctb》》ctblog2sizey][yctb》》ctblog2sizey]不等于0指示第alf_cross_component_cb_idc[xctb》》ctblog2sizey][yctb》》ctblog2sizey]个交叉分量cb滤波器应用于亮度位置(xctb,yctb)处的cb颜色分量样点块[0327]alf_ctb_cross_component_cr_idc[xctb》》ctblog2sizey][yctb》》ctblog2sizey]等于0指示交叉分量cr滤波器不应用于亮度位置(xctb,yctb)处的cr颜色分量样点块。alf_cross_component_cr_idc[xctb》》ctblog2sizey][yctb》》ctblog2sizey]不等于0指示第alf_cross_component_cr_idc[xctb》》ctblog2sizey][yctb》》ctblog2sizey]个交叉分量cr滤波器应用于亮度位置(xctb,yctb)处的cr颜色分量样点块[0328]2.10.图片、子图片、条带、片和ctu的分割[0329]2.10.1.图片到制度篇、条带和片的分割[0330]该子条款指定了如何将图片分割成子图片、条带和片。[0331]图片被划分成一个或多个片行和一个或多个片列。片是覆盖图片的矩形区域的一系列ctu。片中的ctu在该片内以光栅扫描次序被扫描。[0332]一个条带由整数个完整的图片块或图片的片中的整数个连续的完整ctu行组成。[0333]支持两种条带模式,即光栅扫描条带模式和矩形条带模式。在光栅扫描条带模式中,条带包括图片的片光栅扫描中的完整片序列。在矩形条带模式中,条带包括共同形成图片的矩形区域的多个完整的片,或者共同形成图片的矩形区域的一个片的多个连续的完整的ctu行。矩形条带内的片在对应于该条带的矩形区域内以片光栅扫描次序被扫描。[0334]子图片包括共同覆盖图片的矩形区域的一个或多个条带。[0335]图12示出了图片的光栅扫描条带分割的示例,其中图片被划分为12个片和3个光栅扫描条带。[0336]图13示出了图片的矩形条带分割的示例,其中图片被划分成24个片(6个片列和4个片行)和9个矩形条带。[0337]图14示出了被分割成片和矩形条带的图片的示例,其中该图片被划分成4个片(2个片列和2个片行)和4个矩形条带。[0338]图15示出了图片的子图片分割的示例,其中图片被分割成28个不同维度的子图片。[ed.(rs):将图15整合到图14中有助于说明这些概念是如何结合的。][0339]当使用三个单独的颜色平面(separate_colour_plane_flag等于1)对图片进行编解码时,条带仅包括由colour_plane_id的对应值标识的一个颜色分量的ctu,并且图片的每个颜色分量阵列由具有相同colour_plane_id值的条带组成。在图片内具有不同的colour_plane_id值的编解码条带可以在以下约束条件下彼此交织:对于每个colour_plane_id值,具有该colour_plane_id值的编解码条带nal单元将按照每个编解码条带nal单元的第一个ctu的片扫描顺序中ctu地址递增的顺序排列。[0340]当separate_colour_plane_flag等于0时,图片的每个ctu正好包括在一个条带中。当separate_colour_plane_flag等于1时,颜色分量的每个ctu正好包括在一个条带中(即,图片的每个ctu的信息正好存在于三个条带中,并且这三个条带具有不同的colour_plane_id值)。[0341]3.现有实现方式的缺点[0342]用于alf虚拟边界的填充方法可被表示为“双侧填充”或“镜像填充”,其中如果位于(i,j)的一个样点被填充,则位于(m,n)的共享相同滤波器系数的对应样点也被填充,即使该样点是可用的,如图6和图7所示。[0343]用于图片边界/360度视频虚拟边界、正常边界(例如,顶部和底部边界)的填充方法可以表示为“单侧填充”或“重复填充”,其中如果要使用的一个样点在边界之外,则它是从图片内部的可用样点(例如,最近的可用样点)复制的。[0344]当前的cc-alf设计具有以下问题:[0345]1.cc-alf中使用的填充方法与非线性alf中使用的填充方法不完全对齐。[0346]2.cc-alf的开/关控制在ctb级中。也就是说,如果启用,则ctb内的所有色度样点将通过从对应于一个色度样点的经滤波的亮度样点添加推导的偏移来修改。[0347]3.对于同时应用了cc-alf和色度alf的每个色度样点,需要来自三个步骤的至少3次裁剪操作(色度alf滤波;cc-alf偏移推导;和细化色度滤波样点以推导最终色度样点)。更具体地说,这三个阶段描述如下:[0348]a.在色度alf过程中对经滤波的色度样点进行裁剪,即,[0349]sumchromaalf=curr+(sumchromaalf+64)》》7)ꢀꢀꢀ(8 1290)[0350]alfpicture[xctbc+x][yctbc+y]=clip3(0,(1《《bitdepthc)–1,sumchromaalf)ꢀꢀꢀ(8-1291)[0351]其中“curr”表示滤波前的色度样点;“sumchromaalf”表示色度alf滤波器系数乘以色度alf滤波器支持中的裁剪色度样点差的总和[0352]b.根据色度比特深度将推导的偏移(由sum表示)裁剪到一个范围,即,[0353]sum=clip3(-(1《《(bitdepthc–1)),(1《《(bitdepthc-1))–1,sum)ꢀꢀꢀ(8-1292)[0354]其中“sum””表示cc-alf滤波器系数乘以cc-alf滤波器支持中的亮度样点的总和[0355]c.在将推导的偏移添加到经滤波的色度样点之后,对最终的细化色度样点进行裁剪:[0356]sum=alfpicture[xctbc+x][yctbc+y]+(sum+64)》》(7+(bitdepthy–bitdepthc))ꢀꢀꢀ(8-1293)[0357]ccalfpicture[xctbc+x][yctbc+y]=clip3(0,(1《《bitdepthc)–1,sum)[0358]ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8-1294)[0359]其中“alfpicture[xctbc+x][yctbc+y]”表示用色度alf(阶段a的输出)滤波后的色度样点;“sum”表示cc-alf滤波器系数乘以cc-alf滤波器支持中的亮度样点的总和(阶段b的输出);ccalfpicture表示最终的细化色度样点(阶段c的输出,最终阶段)。[0360]4.如等式(8-1293)所示,阶段b的输出(即变量sum)以等于64的偏移舍入,这不考虑(bitdepthy-bitdepthc)。当(bitdepthy-bitdepthc)不等于0时,舍入偏移变为次优。[0361]4.示例技术和实施例[0362]下面描述的详细实施例应该被认为是解释一般概念的示例。这些实施例不应该被狭隘地解释。此外,这些实施例可以以任何方式组合。[0363]在本发明中,alf滤波器可表示使用给定颜色分量的信息应用于给定颜色分量的滤波器(例如,使用亮度信息将亮度alf滤波器(线性或非线性)应用于亮度;使用色度信息将色度alf滤波器应用于色度,例如,cb色度alf滤波器用于滤波cb样点;而cr色度alf滤波器用于滤波cr样点);而cc-alf滤波器可以表示使用不同于第一颜色分量信息的至少第二颜色分量的信息应用于第一颜色分量的滤波器(例如,第一颜色分量可以是cb或cr;第二颜色分量可以是亮度)。[0364]在cc-alf中,可以推导“样点的校正”,其将在被alf处理之前被加到样点上,以生成“细化样点”;或者可以直接推导“细化样点”。[0365]视频单元可以是条带/片/砖块/子图片/图片/360度虚拟图片(由360度虚拟边界界定)或包含多个样点/像素的其它种类的视频区域。[0366]在以下论述中,样点“在视频单元的边界处”可意味着样点与视频单元的边界之间的距离小于或不大于阈值。“线”可以指可以包括在一个相同水平位置的样点或在一个相同垂直位置的样点(即,相同行中的样点和/或相同列中的样点)。在一个示例中,函数abs(x)可以定义如下:[0367][0368]“alf处理单元”是指由两个水平边界和两个垂直边界界定的单元。两个水平边界可包括两个alf虚拟边界或一个alf虚拟边界和一个图片边界(或条带边界/片边界/砖块边界/子图片边界/360度虚拟边界)。两个垂直边界可以包括两个垂直ctu边界或者一个垂直ctu边界和一个图片边界(或者条带边界/片边界/砖块边界/子图片边界/360度虚拟边界)。图16中示出了一个示例。[0369]“窄alf处理单元”是指由两个水平边界和两个垂直边界界定的单元。一个水平边界可以包括一个alf虚拟边界或一个360度虚拟边界,而另一个水平边界可以包括一个条带/砖块/片/子图片边界或一个360度虚拟边界或一个图片边界。垂直边界可以是ctu边界或图片边界或360度虚拟边界或条带/砖块/片/子图片边界。图16中示出了一个示例。[0370]在本公开中,如果相邻样点在包括当前样点的当前视频单元之外(例如,在当前图片/子图片/片/条带/砖块/ctu之外),并且不允许跨越这种视频单元边界进行滤波,或者相邻样点和当前样点在360度虚拟边界的不同侧,并且不允许跨越360度虚拟边界进行滤波,则该相邻样点可以被标记为“不可用”。在又一示例中,如果相邻样点在不同视频单元中在当前处理单元(例如alf处理单元或窄alf处理单元)之外且不允许跨越视频单元进行滤波,那么该相邻样点可被标记为“不可用”。[0371]类似地,对于要在cc-alf中滤波的那些样点(例如,当前cc-alf设计中的亮度样点),如果样点位于与包括当前色度样点的视频单元不同的视频单元中,则其也可以被标记为“不可用”。[0372]1.如何在cc-alf中填充“不可用的”样点可以遵循与用于alf的规则相同的规则。[0373]a.在一个示例中,可以应用“镜像填充”来填充cc-alf中alf虚拟边界处的“不可用”样点。[0374]b.在一个示例中,可以应用“重复填充”来填充cc-alf中条带/片/砖块/图片/子图片/360度虚拟边界处的“不可用”样点。[0375]c.在一个示例中,“重复填充”可以应用于cc-alf中除alf虚拟边界之外的所有边界。[0376]i.替代地,“重复填充”可以应用于所有边界。[0377]ii.替代地,“重复填充”可以应用于所有水平边界。[0378]iii.替代地,“重复填充”可以应用于所有垂直边界。[0379]iv.替代地,“镜像填充”可以应用于所有水平边界。[0380]v.替代地,“镜像填充”可以应用于所有垂直边界。[0381]vi.替代地,“镜像填充”可以应用于所有边界。[0382]d.在一个示例中,“重复填充”可以应用于“alf处理单元”或ctu或“窄alf处理单”或“基本alf处理单元”(下文定义)或不同于所有这些处理单元的视频区域。[0383]e.如何应用重复填充可以取决于相邻样点是否在不同的相邻条带中,其中当前条带可以是光栅扫描条带和/或相邻条带可以是光栅扫描条带。[0384]i.在一个示例中,对于光栅扫描条带中的样点,“重复填充”可以应用于“alf处理单元”。例如,在当前的“alf处理单元”中,“不可用的”相邻样点被其最近的样点填充。图17中示出了一个示例,当前“alf处理单元”的左侧相邻样点是“不可用的”,并且每个“不可用的”样点是从当前“alf处理单元”中其最近的样点填充的。[0385]2.处理单元(例如,alf处理单元或/和窄alf处理单元或/和ctu)的不可用相邻样点可以按如下的alf或/和cc-alf中的预定义次序被填充。[0386]a.如果处理单元的上方相邻样点不可用,则可以用处理单元的(多个)顶部行来填充它们。[0387]i.替代地,此外,可以用处理单元的左上样点来填充(多个)左上相邻样点。[0388]ii.替代地,此外,可以用处理单元的右上样点来填充(多个)右上相邻样点。[0389]b.如果处理单元的下方相邻样点不可用,则可以用处理单元的(多个)底部行来填充它们。[0390]i.替代地,此外,可以用处理单元的左下样点来填充(多个)左下相邻样点。[0391]ii.替代地,此外,可以用处理单元的右下样点来填充(多个)右下相邻样点。[0392]c.如果处理单元的左侧相邻样点不可用,则可以用处理单元的(多个)左侧列来填充它们。[0393]d.如果处理单元的右侧相邻样点不可用,则可以用处理单元的(多个)右侧列来填充它们。[0394]e.如果处理单元的(多个)左侧相邻样点和(多个)上方相邻样点可用,而处理单元的(多个)左上相邻样点不可用,则(多个)上方相邻样点可以用于填充处理单元的(多个)左上相邻样点。[0395]i.替代地,(多个)左侧相邻样点可用于填充处理单元的(左上)左上相邻样点。[0396]f.如果处理单元的(多个)左上和上方相邻样点不可用,并且处理单元的(多个)左上相邻样点可用,则(多个)左上相邻样点可用于填充处理单元的(多个)左上相邻样点。[0397]g.如果处理单元的(多个)左上和左侧相邻样点不可用,并且处理单元的(多个)上方相邻样点可用,则(多个)上方相邻样点可用于填充处理单元的(多个)左上相邻样点。[0398]h.如果处理单元的(多个)右侧相邻样点和(多个)下方相邻样点可用,并且处理单元的(多个)右下相邻样点不可用,则(多个)下方相邻样点可用于填充处理单元的(多个)右下相邻样点。[0399]i.替代地,(多个)右侧相邻样点可用于填充处理单元的(多个)右下相邻样点。[0400]i.如果处理单元的(多个)右下和下方相邻样点不可用,并且处理单元的(多个)右侧相邻样点可用,则(多个)右侧相邻样点可用于填充处理单元的(多个)右下相邻样点。[0401]j.如果处理单元的(多个)右下和右侧相邻样点不可用,并且处理单元的(多个)下方相邻样点可用,则(多个)下方相邻样点可用于填充处理单元的(多个)右下相邻样点。[0402]k.如果处理单元的(多个)右上和右侧相邻样点不可用,并且处理单元的(多个)上方相邻样点可用,则(多个)上方相邻样点可用于填充处理单元的(多个)右上相邻样点。[0403]l.如果处理单元的(多个)右上和上方相邻样点不可用,并且处理单元的(多个)右上相邻样点可用,则(多个)右上相邻样点可用于填充处理单元的(多个)右上相邻样点。[0404]m.如果处理单元的(多个)左下和左侧相邻样点不可用,并且处理单元的(多个)下方相邻样点可用,则(多个)下方相邻样点可用于填充处理单元的(多个)左下相邻样点。[0405]n.如果处理单元的(多个)左下和下方相邻样点不可用,并且处理单元的(多个)左侧相邻样点可用,则(多个)左侧相邻样点可用于填充处理单元的(多个)左下相邻样点。[0406]o.处理单元可以包括由ctuup表示的ctu的n行(n是整数,例如n=4)和由ctuup下面的ctudown表示的ctu的ctb size–m行(m是整数,例如m=n)。当检查处理单元的相邻样点是否可用时,可以考虑相邻样点和ctudown之间的关系。[0407]i.在一个示例中,如果相邻样点在不同于ctudown的视频单元中(例如,相邻样点和ctudown属于不同的砖块/片/条带/子图片,或者它们在360度虚拟边界的不同侧),并且不允许跨越这种视频单元的滤波,则认为它是“不可用的”。[0408]ii.替代地,可以考虑相邻样点和ctuup之间的关系来检查相邻样点的可用性。[0409]3.光栅扫描条带中的“不可用”样点可以在cc-alf或/和alf中以预定次序填充。当前ctu在当前条带中。[0410]a.在一个示例中,当上方ctu和左侧ctu与当前条带在同一条带中,并且左上ctu在不同于当前条带的条带中时,左上ctu中的“不可用的”相邻样点用当前ctu的上方ctu中其最近的相邻样点来填充。图18中示出了一个示例。[0411]i.替代地,用当前ctu的左侧ctu中其最近的相邻样点来填充左上ctu中的“不可用”相邻样点。[0412]b.在一个示例中,当下方ctu和右侧ctu与当前条带在同一条带中,并且右下ctu在不同于当前条带的条带中时,右下ctu中的“不可用”相邻样点用当前ctu的下方ctu中其最近的相邻样点来填充。图18中示出了一个示例。[0413]i.替代地,右下ctu中“不可用”的相邻样点用当前ctu的右侧ctu中其最近的相邻样点来填充。[0414]4.当处理单元(例如,alf处理单元或/和窄alf处理单元或/和ctu)被一个或多个砖/片/片/子图片边界或/和360度虚拟边界跨越并且不允许跨越这种边界的滤波时,该处理单元可以被(水平地或/和垂直地)拆分成多个处理单元。[0415]a.替代地,此外,可递归地执行拆分过程,直到没有处理单元被任何砖块/条带/片/子图片边界或/和360度虚拟边界或/和alf虚拟边界跨越,其中不允许跨越这种边界的滤波过程,例如,这种边界只能是处理单元的边界。这种处理单元在下文中被称为“基本alf处理单元”。如果“alf处理单元”没有被任何这样的边界跨越,则“基本alf处理单元”可以是“alf处理单元”。[0416]b.替代地,此外,alf过程或/和cc-alf过程在这种拆分过程完成之后执行,例如,alf过程或/和cc-alf在“基本alf处理单元”上执行。[0417]c.替代地,此外,上述填充方法可以在“基本alf处理单元”上执行。[0418]d.当生成“基本alf处理单元”时,可以以预定义次序检查不同的水平边界。[0419]i.在一个示例中,检查次序是alf虚拟边界、360度虚拟边界和作为砖块/条带/片/子图片边界的ctu边界。[0420]ii.在一个示例中,检查次序是360度虚拟边界、alf虚拟边界和作为砖块/条带/片/子图片边界的ctu边界。[0421]iii.在一个示例中,当生成“基本alf处理单元”时,不同的检查次序可以用于顶部边界和底部边界。[0422]a)例如,对于顶部边界,检查次序是alf虚拟边界、360度虚拟边界和作为砖块/条带/片/子图片边界的ctu边界。[0423]b)例如,对于底部边界,检查次序是360度虚拟边界、alf虚拟边界和作为砖块/条带/片/子图片边界的ctu边界。[0424]e.当生成“基本alf处理单元”时,可以以预定义次序检查不同的垂直边界。[0425]i.在一个示例中,检查次序是360度虚拟边界作为砖块/条带/片/子图片边界的ctu边界。[0426]ii.在一个示例中,检查次序是作为砖块/条带/片/子图片边界的ctu边界和360度虚拟边界。[0427]iii.在一个示例中,当生成“基本alf处理单元”时,不同的检查次序可以用于左侧边界和右侧边界。[0428]5.建议如果不允许跨越视频单元边界的滤波过程,那么可针对此类边界处的样点禁用alf或/和cc-alf过程。[0429]a.在一个示例中,如果在样点的alf或/和cc-alf过程中涉及至少n个(n是整数)“不可用”样点,则针对该样点跳过alf或/和cc-alf过程。例如,n=1或2或3等。[0430]b.在一个示例中,如果样点处于水平视频单元边界处且跨越此类边界的滤波过程不被允许,并且样点与视频单元边界之间的垂直距离小于或等于m个样点,那么针对该样点跳过alf或/和cc-alf。例如,m=0或1或2或3。[0431]c.在一个示例中,如果样点处于垂直视频单元边界处且跨越此类边界的滤波过程不被允许,并且样点与视频单元边界之间的水平距离小于或等于m个样点,那么针对该样点跳过alf或/和cc-alf。例如,m=0或1或2或3。[0432]6.提出了可以为不同于ctb的视频区域决定alf或/和cc-alf的开/关控制。[0433]a.在一个示例中,视频区域是“alf处理单元”或“窄alf处理单元”或“基本alf处理单元”。[0434]b.在一个示例中,可以为视频区域显式地信令通知开/关控制。[0435]c.在一个示例中,可以针对视频区域隐式地推导开/关控制。[0436]7.信令通知的cc-alf的开/关控制标志可与第一视频单元(例如,ctb)相关联,然而,对于第一视频单元内的样点,即使信令通知的标志告知cc-alf被启用,cc-alf仍可被禁用。[0437]a.在一个示例中,是否针对第一视频单元内的样点启用或禁用cc-alf可取决于样点的位置。[0438]b.在一个示例中,是否针对第一视频单元内的样点启用或禁用cc-alf可取决于cc-alf过程中所涉及的亮度样点。[0439]c.在一个示例中,是否针对第一视频单元内的样点启用或禁用cc-alf可取决于当前样点及其相邻样点,例如它们之间的差。[0440]d.在一个示例中,是否针对第一视频单元内的样点启用或禁用cc-alf可取决于所推导的偏移。[0441]i.在一个示例中,如果推导的偏移大于(或不小于)阈值,则可以丢弃该偏移,即cc-alf被禁用(等于偏移被重置为0的情况)。[0442]ii.在一个示例中,如果推导的偏移小于(或不大于)阈值,则可以丢弃该偏移,即cc-alf被禁用(等于偏移被重置为0的情况)。[0443]e.在一个示例中,是否针对第一视频单元内的样点启用或禁用cc-alf可取决于含有色度样点的块和/或相邻块的经编解码信息。[0444]8.建议将裁剪过程阶段从3个(如第3节第3点所述)减少到1个或2个。[0445]a.在一个示例中,如果cc-alf被启用,则色度alf滤波过程中的裁剪过程被省略。[0446]b.在一个示例中,cc-alf过程中的推导的偏移的裁剪过程被省略。[0447]c.在一个示例中,上述两种方法都被应用。[0448]9.cc-alf过程中推导的偏移的裁剪范围可以被设置为不同于[-(1《《(bitdepthc-1)),(1《《(bitdepthc-1))–1]的范围(包括端点)。[0449]a.在一个示例中,可以利用更小的范围。[0450]b.在一个示例中,该范围可以独立于比特深度。[0451]c.在一个示例中,该范围可以自适应地从第一视频区域改变到另一视频区域。[0452]d.在一个示例中,该范围可以从色度alf过程中使用的非线性裁剪范围中推导(例如,等式(14)中的k(i,j))。[0453]10.可以用取决于比特深度信息的值,而不是固定值(即,64)的舍入偏移来对推导的偏移(例如,第3部分的项目符号c中的sum)进行舍入。[0454]a.在一个示例中,舍入偏移可以取决于第一颜色分量(例如,y)和第二颜色分量(例如,cbr或cr)之间的比特深度差。[0455]i.替代地,此外,它也可以取决于cc-alf滤波器系数的比特深度。[0456]ii.在一个示例中,舍入偏移可以被设置为(1《《(k–1+(bitdepthy–bitdepthc))),其中k表示cc-alf滤波器系数的比特深度;bitdepthy和bitdepthc分别表示亮度和色度分量的比特深度。[0457]b.在一个示例中,下面的等式可以用来代替等式(8-1293)。删除的文本用双括号标记(例如,[[a]]指示删除字符“a”)。sum=alfpicture[xctbc+x][yctbc+y]+(sum+off[[64]])》》(7+(bitdepthy-bitdepthc))ꢀꢀꢀ(8-1293)ccalfpicture[xctbc+x][yctbc+y]=clip3(0,(1《《bitdepthc)-1,sum')ꢀꢀꢀ(8-1294)[0458]其中off被设置为等于(1《《(6+(bitdepthy–bitdepthc)))。[0459]11.建议可以联合地优化色度alf和cc-alf。[0460]a.在一个示例中,当对于ctb或视频区域启用色度alf和cc-alf两者时,如果在色度alf之后应用cc-alf,则可仅在cc-alf过程中应用裁剪操作(例如,将由色度alf或/和cc-alf生成的色度样点裁剪到可取决于色度比特深度的预定义范围内)。[0461]b.在一个示例中,当对于ctb或视频区域启用色度alf和cc-alf两者时,如果在色度alf之前应用cc-alf,则可以仅在色度alf过程中应用裁剪操作(例如,将由色度alf或/和cc-alf生成的色度样点裁剪到可以取决于色度比特深度的预定范围内)。[0462]12.假设第一颜色分量中的样点s被修改为s=s+d,其中d是使用第二颜色分量的信息从自适应环路滤波方法推导的偏移,例如cc-alf,则d可以被自适应地裁剪。例如,s可以被修改为s=s+clip3(dlow,dhigh,d),其中dlow和/或dhigh对于不同的样点可以是不同的。[0463]a.例如,dlow和/或dhigh可以从编解码器信令通知到解码器。[0464]b.例如,dlow和/或dhigh可以根据s的值来推导。[0465]c.例如,dlow和/或dhigh可以根据s的位置来推导。[0466]d.例如,可以信令通知或预定义dlow和/或dhigh的几个候选。所选择的候选可以从编解码器信令通知,或者在解码器处推导。[0467]13.假设第一子图片中的第一样点s上的cc-alf可以依赖于第二子图片中的(多个)样点,则根据对于第一子图片和/或第二子图片是否允许跨子图片的环路滤波来确定s是否被cc-alf滤波。(例如第一子图片和/或第二子图片的loop_filter_across_subpic_enabled_flag。[0468]a.在一个示例中,如果对于第一子图片不允许跨子图片的环路滤波,则s不被cc-alf滤波。[0469]b.在一个示例中,如果对于第二子图片不允许跨子图片的环路滤波,则s不被cc-alf滤波。[0470]c.在一个示例中,如果对于第一子图片和第二子图片不允许跨子图片的环路滤波,则s不被cc-alf滤波。[0471]d.在一个示例中,如果对于第一子图片或第二子图片不允许跨子图片的环路滤波,则s不被cc-alf滤波。[0472]14.是否和/或如何应用上述方法可以基于下面列出的一个或多个条件:[0473]a.视频内容(例如屏幕内容或自然内容)[0474]b.在dps/sps/vps/pps/aps/图片标头/条带标头/片组标头/最大编解码单元(lcu)/编解码单元(cu)/lcu行/lcu组/tu/pu块/视频编解码单元中信令通知的消息[0475]c.cu/pu/tu/块/视频编解码单元的位置[0476]d.当前块和/或其相邻块的经解码信息[0477]i.当前块和/或其相邻块的块纬度/块形状[0478]e.颜色格式的指示(如4:2:0、4:4:4、rgb或yuv)[0479]f.编解码树结构(如双树或单树)[0480]g.条带/条带组类型和/或图片类型[0481]h.颜色分量(例如,可以仅应用于亮度分量和/或色度分量)[0482]i.时态层id[0483]j.标准的简档/级别/层次[0484]5.附加实施例[0485]在本文件中,vvc草案中的文字改动以下划线粗体显示。[0486]6.所公开技术的示例实现[0487]图19a是视频处理装置1900的框图。装置1900可用于实现本文描述的一种或多种方法。装置1900可以体现在智能手机、平板电脑、计算机、物联网(iot)接收器等中。装置1900可以包括一个或多个处理器1902、一个或多个存储器1904和视频处理硬件1906。(多个)处理器1902可以被配置为实现本文件中描述的一种或多种方法。存储器1904可用于存储用于实现本文所述方法和技术的数据和代码。(多个)视频处理硬件1906可以用于在硬件电路中实现本文件中描述的一些技术,并且可以部分或完全是处理器1902(例如,图形处理器核心gpu或其他信号处理电路)的一部分。[0488]图21是示出示例视频处理系统2100的框图,其中可以实现本文公开的各种技术。各种实现方式可以包括系统2100的一些或所有组件。系统2100可以包括用于接收视频内容的输入2102。视频内容可以以原始或未压缩的格式接收,例如8或10比特多分量像素值,或者可以是压缩或编码格式。输入2102可以表示网络接口、外围总线接口或存储接口。网络接口的示例包括诸如以太网、无源光网络(pon)等有线接口以及诸如wi-fi或蜂窝接口的无线接口。[0489]系统2100可以包括编解码组件2104,其可以实现本文件中描述的各种编解码或编码方法。编解码组件2104可以降低从输入2102到编解码组件2104的输出的视频的平均比特率,以产生视频的编解码表示。因此,编解码技术有时被称为视频压缩或视频转码技术。如组件2106所表示的,编解码组件2104的输出可以被存储,或者经由连接的通信被发送。组件2108可以使用在输入2102处接收的视频的存储或传送的比特流(或编解码)表示来生成发送到显示接口2110的像素值或可显示视频。从比特流表示生成用户可视视频的过程有时被称为视频解压缩。此外,虽然某些视频处理操作被称为“编解码”操作或工具,但是应当理解,编解码工具或操作在编码器处使用,并且与编解码结果相反的相应解码工具或操作将由解码器执行。[0490]外围总线接口或显示器接口的示例可以包括通用串行总线(usb)或高清多媒体接口(hdmi)或显示端口等。存储接口的示例包括sata(串行高级技术附件)、pci、ide接口等。本文件中描述的技术可以在各种电子设备中实现,例如移动电话、膝上型电脑、智能手机或能够执行数字数据处理和/或视频显示的其他设备。[0491]图22是示出可利用本发明的技术的示例视频编解码系统100的框图。[0492]如图22所示,视频编解码系统100可以包括源设备110和目的地设备120。源设备110生成可被称为视频编码设备的经编码视频数据。目的地设备120可解码由可称为视频解码设备的源设备110生成的经编码视频数据。[0493]源设备110可以包括视频源112、视频编码器114和输入/输出(i/o)接口116。[0494]视频源112可以包括诸如视频捕获设备、从视频内容提供商接收视频数据的接口和/或用于生成视频数据的计算机图形系统之类的源,或者这些源的组合。视频数据可以包括一个或多个图片。视频编码器114对来自视频源112的视频数据进行编码,以生成比特流。比特流可以包括形成视频数据的经编解码表示的比特序列。比特流可以包括编解码图片和相关联数据。经编解码图片是图片的经编解码表示。相关联数据可以包括序列参数集、图片参数集和其他语法结构。i/o接口116可以包括调制器/解调器(调制解调器)和/或发射器。经编解码的视频数据可经由i/o接口116通过网络130a直接传输到目的地设备120。经编解码的视频数据还可存储在存储媒体/服务器130b上以供目的地设备120存取。[0495]目的地设备120可以包括i/o接口126、视频解码器124和显示设备122。[0496]i/o接口126可以包括接收器和/或调制解调器。i/o接口126可以从源设备110或存储介质/服务器130b获取经编码视频数据。视频解码器124可以解码经编码视频数据。显示设备122可以向用户显示经解码视频数据。显示设备122可以与目的地设备120集成在一起,或者可以在目的地设备120的外部,目的地设备120被配置为与外部显示设备接口。[0497]视频编码器114和视频解码器124可以根据视频压缩标准操作,例如高效视频编解码(hevc)标准、多功能视频编解码(vvc)标准和其他当前和/或进一步的标准。[0498]图23是示出视频编码器200的示例的框图,视频编码器200可以是图22中示出的系统100中的视频编码器114。[0499]视频编码器200可被配置为执行本发明的任何或所有技术。在图23的示例中,视频编码器200包括多个功能组件。本发明中描述的技术可在视频编码器200的各种组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。[0500]视频编码器200的功能组件可包括分割单元201、预测单元202、残差生成单元207、变换单元208、量化单元209、逆量化单元210、逆变换单元211、重构单元212、缓冲器213和熵编码单元214,其中预测单元可以202可以包括模式选择单元203、运动估计单元204、运动补偿单元205和帧内预测单元206。[0501]在其他示例中,视频编码器200可以包括更多、更少或不同的功能组件。在一示例中,预测单元202可包括帧内块复制(ibc)单元。ibc单元可以以其中至少一个参考图片是当前视频块所在的图片的ibc模式执行预测。[0502]此外,一些组件(例如,运动估计单元204和运动补偿单元205)可高度集成,但出于解释目的而在图23的示例中单独地表示。[0503]分割单元201可将图片分割成一个或多个视频块。视频编码器200和视频解码器300可以支持各种视频块尺寸。[0504]模式选择单元203可以例如基于错误结果来选择编解码模式(帧内或帧间)中的一者,且将所得帧内或帧间编解码块提供到残差生成单元207以生成残差块数据,且提供到重构单元212以重构编码块以用作参考图片。在一些示例中,模式选择单元203可以选择帧内和帧间预测的组合(ciip)的模式,在该模式中预测基于帧间预测信号和帧内预测信号。在帧间预测的情况下,模式选择单元203还可以为块选择运动矢量的分辨率(例如,子像素或整数像素精度)。[0505]为了对当前视频块执行帧间预测,运动估计单元204可通过将来自缓冲器213的一个或多个参考帧与当前视频块进行比较来生成当前视频块的运动信息。运动补偿单元205可基于来自缓冲器213的除了与当前视频块相关联的图片之外的图片的运动信息和解码样点来确定当前视频块的预测视频块。[0506]运动估计单元204和运动补偿单元205可对当前视频块执行不同的操作,例如,取决于当前视频块是在i条带、p条带还是b条带中。[0507]在一些示例中,运动估计单元204可对当前视频块执行单向预测,且运动估计单元204可在列表0或列表1的参考图片中搜索当前视频块的参考视频块。运动估计单元204可接着生成参考索引和运动矢量,该参考索引指示列表0或列表1中包含参考视频块的参考图片,该运动矢量指示当前视频块与参考视频块之间的空间位移的运动矢量。运动估计单元204可输出参考索引、预测方向指示符和运动矢量作为当前视频块的运动信息。运动补偿单元205可基于由当前视频块的运动信息指示的参考视频块来生成当前块的预测视频块。[0508]在其它示例中,运动估计单元204可对当前视频块执行双向预测,运动估计单元204可在列表0中的参考图片中搜索当前视频块的参考视频块,并且还可在列表1中的参考图片中搜索当前视频块的另一参考视频块。运动估计单元204可接着生成参考索引和运动矢量,该参考索引指示包含参考视频块的列表0和列表1中的参考图片,该运动矢量指示参考视频块与当前视频块之间的空间位移。运动估计单元204可输出当前视频块的参考索引和运动矢量作为当前视频块的运动信息。运动补偿单元205可基于由当前视频块的运动信息指示的参考视频块来生成当前视频块的预测视频块。[0509]在一些示例中,运动估计单元204可输出用于解码器的解码处理的完整运动信息集。[0510]在一些示例中,运动估计单元204可以不输出当前视频的完整运动信息集。相反,运动估计单元204可参考另一视频块的运动信息来信令通知当前视频块的运动信息。举例来说,运动估计单元204可确定当前视频块的运动信息与相邻视频块的运动信息足够相似。[0511]在一个示例中,运动估计单元204可在与当前视频块相关联的语法结构中指示值,该值向视频解码器300指示当前视频块具有与另一视频块相同的运动信息。[0512]在另一示例中,运动估计单元204可在与当前视频块相关联的语法结构中识别另一视频块和运动矢量差(mvd)。运动矢量差指示当前视频块的运动矢量与所指示的视频块的运动矢量之间的差。视频解码器300可使用所指示的视频块的运动矢量和运动矢量差来确定当前视频块的运动矢量。[0513]如上所述,视频编码器200可以预测性地信令通知运动矢量。可由视频编码器200实现的预测信令技术的两个示例包含高级运动矢量预测(amvp)和merge模式信令。[0514]帧内预测单元206可对当前视频块执行帧内预测。当帧内预测单元206对当前视频块执行帧内预测时,帧内预测单元206可基于同一图片中的其它视频块的解码样点来生成当前视频块的预测数据。当前视频块的预测数据可包括预测视频块和各种语法元素。[0515]残差生成单元207可通过从当前视频块减去(例如,由负号指示)当前视频块的预测视频块来生成当前视频块的残差数据。当前视频块的残差数据可包括对应于当前视频块中样点的不同样点分量的残差视频块。[0516]在其它示例中,对于当前视频块可能没有当前视频块的残差数据,例如在跳过模式中,并且残差生成单元207可不执行减法操作。[0517]变换处理单元208可通过将一个或多个变换应用于与当前视频块相关联的残差视频块来生成当前视频块的一个或多个变换系数视频块。[0518]在变换处理单元208生成与当前视频块相关联的变换系数视频块之后,量化单元209可基于与当前视频块相关联的一个或多个量化参数(qp)值来量化与当前视频块相关联的变换系数视频块。[0519]逆量化单元210和逆变换单元211可分别对变换系数视频块应用逆量化和逆变换,以从变换系数视频块重构残差视频块。重构单元212可将重构的残差视频块添加到来自由预测单元202生成的一个或多个预测视频块的对应样点,以产生与当前块相关联的重构视频块,以存储在缓冲器213中。[0520]在重构单元212重构视频块之后,可执行环路滤波操作以减少视频块中的视频块效应伪影。[0521]熵编码单元214可以从视频编码器200的其他功能组件接收数据。当熵编码单元214接收数据时,熵编码单元214可以执行一个或多个熵编码操作以生成熵编码数据并输出包括熵编码数据的比特流。[0522]图24是说明视频解码器300的示例的框图,视频解码器300可以是图22所示的系统100中的视频解码器114。[0523]视频解码器300可被配置为执行本发明的任何或所有技术。在图24的示例中,视频解码器300包括多个功能组件。本公开中描述的技术可以在视频解码器300的各种组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。[0524]在图24的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、逆量化单元304、逆变换单元305、重构单元306和缓冲器307。在一些示例中,视频解码器300可以执行通常与针对视频编码器200(例如,图23)描述的编码遍次相反的解码过程。[0525]熵解码单元301可检索经编码比特流。编码比特流可以包括熵编解码视频数据(例如,编码的视频数据块)。熵解码单元301可解码熵编解码视频数据,并且根据熵解码视频数据,运动补偿单元302可确定运动信息,运动信息包含运动矢量、运动矢量精度、参考图片列表索引和其它运动信息。运动补偿单元302可例如通过执行amvp和merge模式来确定此类信息。[0526]运动补偿单元302可产生运动补偿块,可能基于插值滤波器执行插值。语法元素中可包括要以子像素精度使用的插值滤波器的标识符。[0527]运动补偿单元302可使用如视频编码器200在视频块的编码期间所使用的插值滤波器来计算参考块的子整数像素的插值。运动补偿单元302可根据所接收的语法信息来确定视频编码器200所使用的插值滤波器,并使用该插值滤波器来产生预测块。[0528]运动补偿单元302可使用一些语法信息来确定用于编码编码视频序列的(多个)帧和/或(多个)条带的块的尺寸、描述编码视频序列的图片的每一宏块如何被分割的分割信息、指示每一分割如何被编码的模式、每一帧间编码块的一个或多个参考帧(和参考帧列表)以及解码编码视频序列的其它信息。[0529]帧内预测单元303可以使用例如在比特流中接收的帧内预测模式来从空间邻接块形成预测块。逆量化单元303逆量化(即,去量化)比特流中提供的并且由熵解码单元301解码的量化视频块系数。逆变换单元303应用逆变换。[0530]重构单元306可将残差块与由运动补偿单元202或帧内预测单元303生成的对应预测块相加,以形成解码块。如果需要,还可以应用去方块滤波器来对解码块进行滤波,以便去除块效应伪影。解码视频块然后被存储在缓冲器307中,缓冲器307为后续的运动补偿提供参考块。[0531]所公开的技术的一些实施例包括做出决定或确定以启用视频处理工具或模式。在一示例中,当启用视频处理工具或模式时,编解码器将在视频块的处理中使用或实施所述工具或模式,但可能不一定基于工具或模式的使用来修改所得比特流。也就是说,当基于决定或确定启用视频处理工具或模式时,从视频块到视频的比特流表示的转换将使用该视频处理工具或模式。在另一个示例中,当启用视频处理工具或模式时,解码器将在知道比特流已经基于视频处理工具或模式被修改的情况下处理比特流。也就是说,将使用基于该决定或确定而启用的视频处理工具或模式来执行从视频的比特流表示到视频块的转换。[0532]在本文件中,术语“视频处理”可以指视频编码、视频解码、视频压缩或视频解压缩。例如,在从视频的像素表示到对应的比特流表示的转换期间,可以应用视频压缩算法,反之亦然。如语法所定义,当前视频块的比特流表示可以例如对应于在比特流内共位或散布在不同位置的比特。例如,可以根据经变换和编解码的误差残差值,并且还使用比特流中的标头和其他字段中的比特,对宏块进行编码。[0533]应当理解,通过允许使用本文件中公开的技术,所公开的方法和技术将有益于结合在诸如智能手机、膝上型电脑、台式电脑和类似设备的视频处理设备中的视频编码器和/或解码器实施例。[0534]图20是视频处理的示例方法2000的流程图。方法2000包括,在2010,执行视觉媒体的视频单元和视觉媒体的编解码表示之间的转换,其中,在转换期间,使用自适应环路滤波器(alf)的一个或多个规则被应用于填充与交叉分量自适应环路滤波器(cc-alf)的使用相关联的不可用样点。[0535]一些实施例可以使用以下基于条款的格式来描述。第一组条款示出了前面章节中讨论的技术的示例实施例。[0536]1.一种视频处理方法,包括:执行视觉媒体的视频单元和视觉媒体的编解码表示之间的转换,其中,在转换期间,使用自适应环路滤波器(alf)的一个或多个规则被应用于填充与交叉分量自适应环路滤波器(cc-alf)的使用相关联的不可用样点。[0537]2.根据条款1所述的方法,其中应用于视频单元的颜色分量的alf滤波器是使用由视频单元的颜色分量提供的信息来定义的。[0538]3.根据条款1至2中任一项或多项所述的方法,其中应用于视频单元的第一颜色分量的cc-alf滤波器是使用由视频单元的至少第二颜色分量提供的信息来定义的。[0539]4.根据条款1至3中任一项或多项所述的方法,其中视频单元对应于条带、片、砖块、子图片、图片或由360度虚拟边界界定的360度虚拟图片。[0540]5.根据条款1至4中任一项或多项所述的方法,其中镜像填充的规则被应用于与cc-alf的使用相关联的一个或多个alf虚拟边界处的不可用样点。[0541]6.根据条款1至5中任一项或多项所述的方法,其中用于重复填充的规则被应用于与cc-alf的使用相关联的条带、片、砖块、图片、子图片或360度虚拟边界之一处的不可用样点。[0542]7.根据条款1至6中任一项所述的方法,其中用于重复填充的规则被应用于一个或多个边界上,除了与cc-alf的使用相关联的至少一个或多个alf虚拟边界处。[0543]8.根据条款7所述的方法,其中该一个或多个边界包括以下之一:所有边界、水平边界或垂直边界。[0544]9.根据条款1至6中任一项所述的方法,其中镜像填充的规则被应用于一个或多个边界上,除了与cc-alf的使用相关联的一个或多个alf虚拟边界处。[0545]10.根据条款9所述的方法,其中该一个或多个边界包括以下之一:所有边界、水平边界或垂直边界。[0546]11.根据条款1至10中任一项或多项的方法,其中视频单元对应于alf处理单元、编解码树单元(ctu)或基本alf处理单元。[0547]12.根据条款11所述的方法,其中alf处理单元定义由两个水平边界和两个垂直边界界定的单元。[0548]13.根据条款11所述的方法,其中两个水平边界包括以下之一:两个alf虚拟边界,或者一个alf虚拟边界和图片/条带/片/砖块/子图片的一个边界或者360度虚拟边界。[0549]14.根据条款11所述的方法,其中基于递归地分割alf处理单元、ctu或窄alf处理单元来生成基本alf处理单元,并且其中基本alf处理单元的边界没有被砖块/条带/片/子图片边界、和/或360度虚拟边界、和/或不允许跨越边界滤波的alf虚拟边界跨越。[0550]15.根据条款1至14中任一项或多项所述的方法,其中用于重复填充的规则基于视频单元的相邻样点是否在不同的相邻条带中。[0551]16.根据条款15所述的方法,其中视频单元的当前条带是光栅扫描条带,并且其中相邻条带也是光栅扫描条带。[0552]17.根据条款15至16中任一项或多项所述的方法,其中当前视频单元是alf处理单元,并且其中在alf处理单元中使用其最近的样点来填充不可用的相邻样点。[0553]18.一种视频处理方法,包括:[0554]执行视觉媒体的视频单元和视觉媒体的编解码表示之间的转换,其中,在转换期间,填充视频单元的不可用样点的一个或多个规则指定了与alf过程或cc-alf过程的使用相关联的预定义填充次序。[0555]19.根据条款18所述的方法,其中预定义填充次序包括使用视频单元的至少一个顶部行来填充不可用样点。[0556]20.根据条款18所述的方法,其中预定义填充次序包括使用视频单元的至少一个底部行来填充不可用样点。[0557]21.根据条款18所述的方法,其中预定义填充次序包括使用视频单元的至少一个左侧列来填充不可用样点。[0558]22.根据条款18所述的方法,其中预定义填充次序包括使用视频单元的至少一个右侧列来填充不可用样点。[0559]23.一种视频处理方法,包括:[0560]执行视觉媒体的视频单元和视觉媒体的编解码表示之间的转换,其中,在转换期间,确定视频单元的一个或多个相邻样点是否可用的一个或多个规则包括一个或多个相邻样点和与视频单元相关联的参数之间的关系。[0561]24.根据条款23所述的方法,其中与视频单元相关联的参数(表示为ctudown)被计算为ctu down=ctb size–m,其中m是整数。[0562]25.根据条款24所述的方法,其中,如果相邻样点在具有不同于ctudown的值的第二视频单元中,则该一个或多个规则指定不允许跨越第二视频单元的滤波。[0563]26.根据条款23所述的方法,其中该一个或多个规则附加地包括一个或多个相邻样点和基于视频单元的行数的ctuup参数之间的关系。[0564]27.根据条款18至26中任一项或多项所述的方法,其中不可用样点是相邻样点。[0565]28.根据条款18至26中任一项或多项所述的方法,其中不可用样点包括在光栅扫描条带中。[0566]29.根据条款28所述的方法,其中空间上位于相对于视频单元的左上ctu中的不可用相邻样点被空间上位于相对于视频单元的上方ctu中的其最近相邻样点填充。[0567]30.根据条款28所述的方法,其中空间上位于相对于视频单元的右下ctu中的不可用相邻样点被空间上位于相对于视频单元的下方ctu中的其最近相邻样点填充。[0568]31.一种视频处理方法,包括:[0569]执行视觉媒体的视频单元和视觉媒体的编解码表示之间的转换,其中,在转换期间,应用alf和/或cc-alf的一个或多个规则指定如果不允许跨越边界进行滤波,则禁止对位于视频单元的边界处的样点应用alf和/或cc-alf。[0570]32.根据条款31所述的方法,其中在确定与alf和/或cc-alf相关联的至少n个相邻样点不可用时,禁用应用alf和/或cc-alf。[0571]33.根据条款31所述的方法,其中视频单元的边界是水平边界,并且其中在确定样点和视频单元的水平边界之间的垂直距离小于或等于m个样点时,禁用应用alf和/或cc-alf。[0572]34.根据条款31所述的方法,其中视频单元的边界是垂直边界,并且其中在确定样点和视频单元的垂直边界之间的水平距离小于或等于m个样点时,禁用应用alf和/或cc-alf。[0573]35.一种视频处理方法,包括:[0574]执行视觉媒体的第一视频单元和视觉媒体的经编解码表示之间的转换,其中在转换期间,应用alf和/或cc-alf的一个或多个规则指定针对不同于第一视频单元的第二视频单元选择性地开启或关闭alf和/或cc-alf。[0575]36.根据条款35所述的方法,其中,在第二视频单元的编解码表示中明确指示针对第二视频单元是开启还是关闭alf和/或cc-alf。[0576]37.根据条款35所述的方法,其中,从第二视频单元的编解码表示中推导针对第二视频单元是开启还是关闭alf和/或cc-alf。[0577]38.根据条款35至37中任一项或多项所述的方法,其中与第一视频单元相关联的标志指示启用alf和/或cc-alf,并且其中在转换期间,基于一个或多个条件,针对位于第一视频单元中的样点选择性地禁用应用alf和/或cc-alf。[0578]39.根据条款38所述的方法,其中该一个或多个条件包括样点相对于第一视频单元的空间位置。[0579]40.根据条款38所述的方法,其中该一个或多个条件包括cc-alf中使用的亮度样点值。[0580]41.根据条款38所述的方法,其中该一个或多个条件包括样点与其相邻样点之间的样点值差。[0581]42.根据条款38所述的方法,其中该一个或多个条件包括使用对应于色度样点的滤波亮度样点推导的偏移值和阈值之间的关系。[0582]43.一种视频处理方法,包括:[0583]执行视觉媒体的第一视频单元和视觉媒体的编解码表示之间的转换,其中,在转换期间,选择性地应用alf和/或cc-alf的一个或多个规则指定省略三个裁剪操作中的至少一个,其中,第一裁剪操作对应于色度alf滤波,第二裁剪操作对应于cc-alf偏移推导,以及第三裁剪操作对应于色度滤波器样点的细化以推导最终色度样点值。[0584]44.根据条款43所述的方法,其中应用alf和/或cc-alf的一个或多个规则指定如果应用cc-alf被启用,则省略第一裁剪操作。[0585]45.根据条款43所述的方法,其中应用alf和/或cc-alf的一个或多个规则指定如果应用cc-alf被禁用,则省略第二裁剪操作。[0586]46.根据条款43所述的方法,其中应用alf和/或cc-alf的一个或多个规则指定省略第一裁剪操作和第二裁剪操作。[0587]47.根据条款43所述的方法,其中,在第二裁剪操作期间,推导的cc-alf偏移被定义为位于不同于第二范围的第一范围内,第二范围被表示为[-(1《《(bitdepthc-1)),(1《《(bitdepthc-1))–1],其中第二范围的端点被包括在第二范围内,并且其中bitdepthc是比特深度值。[0588]48.根据条款47所述的方法,其中第一范围不依赖于比特深度值。[0589]49.根据条款47所述的方法,其中与第二视频单元相关联的第三范围被定义为不同于与第一视频单元相关联的第一范围。[0590]50.根据条款47所述的方法,其中第一范围是从对应于色度alf滤波的第一裁剪操作中使用的非线性裁剪范围中推导的。[0591]51.根据条款47所述的方法,其中,在第二裁剪操作期间,使用比特深度值而不是固定值对推导的cc-alf偏移进行舍入。[0592]52.根据条款47所述的方法,其中,在第二裁剪操作期间,使用以下表达式对推导的cc-alf偏移进行舍入:[0593]sum=alfpicture[xctbc+x][yctbc+y]+(sum +off)》》(7+(bitdepthy-bitdepthc))ccalfpicture[xctbc+x][yctbc+y]=clip3(0,(1《《bitdepthc)-1,sum),其中off被设置为等于(1《《(6+(bitdepthy–bitdepthc))),其中alfpicture[xctbc+x][yctbc+y]表示应用第一裁剪操作之后的色度样点,其中sum表示应用第二裁剪操作之后cc-alf滤波器系数乘以cc-alf滤波器支持中的亮度样点的总和,其中ccalfpicture表示应用第三裁剪操作之后的最终色度样点值。[0594]53.一种视频处理方法,包括:[0595]执行视觉媒体的视频单元和视觉媒体的编解码表示之间的转换,其中,在转换期间,针对视频单元联合地优化色度alf过程和/或cc-alf过程。[0596]54.根据条款53所述的方法,其中转换包括用于对由色度alf过程和/或cc-alf过程生成的色度样点进行裁剪的裁剪操作,这导致色度样点位于预定义的范围内。[0597]55.根据条款54所述的方法,其中预定义范围至少部分地基于色度比特深度值。[0598]56.根据条款54所述的方法,其中联合地优化包括如果在色度alf过程之后应用cc-alf过程,则仅在cc-alf过程期间应用裁剪操作。[0599]57.根据条款54所述的方法,其中联合地优化包括如果cc-alf过程在色度alf过程之前应用,则仅在色度alf过程期间应用裁剪操作。[0600]58.一种视频处理方法,包括:[0601]执行视觉媒体的视频单元和视觉媒体的编解码表示之间的转换,其中在转换期间,使用视频单元的第二颜色分量的信息来修改视频单元的第一颜色分量的样点值,其中视频单元的第二颜色分量的信息基于在自适应环路滤波过程中使用的一个或多个参数。[0602]59.根据条款58条所述的方法,其中在自适应环路滤波过程中使用的一个或多个参数是裁剪参数,其中在第一采样值上使用的裁剪参数不同于在第二采样值上使用的裁剪参数,其中第一采样值和第二采样值包括在视频单元中。[0603]60.根据条款59所述的方法,其中裁剪参数被定义为位于具有最小裁剪值和最大裁剪值的范围内。[0604]61.根据条款60所述的方法,其中最小裁剪值和/或最大裁剪值在编解码表示中被显式地信令通知。[0605]62.根据条款60所述的方法,其中最小裁剪值和/或最大裁剪值部分地基于样点值。[0606]63.根据条款60所述的方法,其中最小裁剪值和/或最大裁剪值部分地基于样点值相对于视频单元的空间位置。[0607]64.根据条款60所述的方法,其中最小裁剪值和/或最大裁剪值是预定义的值。[0608]65.根据条款60所述的方法,其中最小裁剪值和/或最大裁剪值从其他参数中推导。[0609]66.一种视频处理方法,包括:[0610]执行视觉媒体的第一视频单元和视觉媒体的编解码表示之间的转换,其中在转换期间,对第一视频单元的第一样点的cc-alf过程的应用选择性地基于视觉媒体的第二视频单元的第二样点,其中选择性地基于包括确定跨越视频单元的环路滤波器是被启用还是被禁用。[0611]67.根据条款66所述的方法,其中基于针对第一视频单元和/或第二视频单元禁用跨视频单元的环路滤波器的确定,跳过对第一视频单元的第一样点的cc-alf过程的应用。[0612]68.根据条款66所述的方法,其中基于针对第一视频单元禁用跨越视频单元的环路滤波器的确定,跳过对第一视频单元的第一样点的cc-alf过程的应用。[0613]69.根据条款66所述的方法,其中基于针对第二视频单元禁用跨越视频单元的环路滤波器的确定,跳过对第一视频单元的第一样点的cc-alf过程的应用。[0614]70.根据条款66至69中的一项或多项所述的方法,其中基于读取与第一视频单元和/或第二视频单元相关联的标志来确定跨越视频单元的环路滤波器是被启用还是被禁用。[0615]71.根据条款1至70中任一项或多项的方法,其中cc-alf过程和/或alf过程与以下至少一项相关联:i.视频单元的内容,ii.在dps/sps/vps/pps/aps/图片标头/条带标头/片组标头/最大编解码单元(lcu)/编解码单元(cu)/lcu行/lcu组/tu/pu块/视频编解码单元中信令通知的消息,iii.cu/pu/tu/块/视频编解码单元的位置,iv.视频单元的形状或维度和/或相邻视频单元的形状或维度,vii.颜色格式的指示,viii.编解码树结构。条带/片组类型和/或图片类型,x.视频单元的颜色分量,xi.时域层id或xii。标准的简档/级别/层次。[0616]72.一种视频解码装置,包括处理器,该处理器被配置为实现条款1至71中的一项或多项所述的方法。[0617]73.一种视频编解码装置,包括被配置为实现条款1至71中的一项或多项所述的方法的处理器。[0618]74.一种其上存储有计算机代码的计算机程序产品,当由处理器执行时,该代码使得处理器实现条款1至71中任一项所述的方法。[0619]75.本文件中描述的方法、设备或系统。[0620]第二组条款示出了前面章节中讨论的技术的示例实施例。[0621]1.一种视频处理方法(例如,图25a中所示的方法2510),包括:针对包括一个或多个视频块的视频的当前视频单元和视频的比特流表示之间的转换,根据规则确定2512填充过程,该填充过程用于在将交叉分量自适应环路滤波(cc-alf)工具应用于当前视频单元的至少一些视频块期间填充不可用样点;以及基于该确定执行2514转换;其中规则指定填充过程还用于在将自适应环路滤波(alf)工具应用于当前视频单元的一个或多个视频块期间填充不可用样点。[0622]2.根据条款1所述的方法,其中alf工具被应用于当前视频单元的颜色分量,并且alf工具包括使用由当前视频单元的颜色分量提供的信息来校正颜色分量的样点值。[0623]3.根据条款1至2中任一项或多项所述的方法,其中cc-alf工具被应用于当前视频单元的被一颜色分量,并且cc-alf工具包括使用当前视频单元的第二分量的样点值来校正当前视频单元的第一分量的样点值。[0624]4.根据条款1至3中任一项或多项所述的方法,其中当前视频单元对应于条带、片、砖块、子图片、图片或由360度虚拟边界界定的360度虚拟图片。[0625]5.根据条款1至4中任一项或多项所述的方法,其中填充过程对应于在与cc-alf工具的使用相关联的一个或多个alf虚拟边界处的不可用样点上应用的镜像填充。[0626]6.根据条款1至4中任一项或多项所述的方法,其中填充过程对应于在与cc-alf的使用相关联的条带、片、砖块、图片、子图片或360度虚拟边界之一处的不可用样点上应用的重复填充。[0627]7.根据条款1至4中任一项所述的方法,其中填充过程对应于在除了与cc-alf的使用相关联的一个或多个alf虚拟边界之外的一个或多个边界上应用重复填充。[0628]8.根据条款7所述的方法,其中一个或多个边界包括以下之一:所有边界、水平边界或垂直边界。[0629]9.根据条款1至4中任一项或多项所述的方法,其中填充过程对应于在除了与cc-alf的使用相关联的一个或多个alf虚拟边界之外的一个或多个边界上应用镜像填充。[0630]10.根据条款9所述的方法,其中该一个或多个边界包括以下之一:所有边界、水平边界或垂直边界。[0631]11.根据条款1至10中任一项或多项所述的方法,其中,当前视频单元对应于alf处理单元、编解码树单元(ctu)或基本alf处理单元。[0632]12.根据条款11所述的方法,其中alf处理单元定义由两个水平边界和两个垂直边界界定的单元。[0633]13.根据条款11所述的方法,其中两个水平边界包括以下之一:两个alf虚拟边界,或者一个alf虚拟边界和一个图片/条带/区块/砖块/子图片的边界或者360度虚拟边界。[0634]14.根据条款11所述的方法,其中基于递归地分割alf处理单元、ctu或窄alf处理单元来生成基本alf处理单元,并且其中基本alf处理单元的边界没有被砖块/条带/片/子图片边界、和/或360度虚拟边界、和/或不允许跨越边界滤波的alf虚拟边界跨越。[0635]15.根据条款1至4中任一项或多项所述的方法,其中填充过程对应于基于当前视频单元的相邻样点是否在不同的相邻条带中的重复填充。[0636]16.根据条款1所述的方法,其中当前视频单元的当前条带是光栅扫描条带,并且其中当前条带的相邻条带也是光栅扫描条带。[0637]17.根据条款15至16中任一项或多项所述的方法,其中当前视频单元是alf处理单元,并且其中在alf处理单元中使用其最近的样点来填充不可用样点。[0638]18.一种视频处理方法(例如,如图25b所示的方法2520),包括:执行2522视频的视频单元和视频的比特流表示之间的转换,其中,在转换期间,根据自适应环路滤波(alf)处理或交叉分量自适应环路滤波(cc-alf)的应用中的规则,以预定义填充次序来填充视频单元的不可用样点。[0639]19.根据条款18所述的方法,其中视频单元对应于处理单元,并且规则指定用于填充视频单元的不可用样点的预定义填充次序。[0640]20.根据条款18所述的方法,其中预定义填充次序包括使用视频单元的至少一行或至少一列来填充不可用样点,并且其中该至少一行或至少一列的位置是基于不可用样点的位置来确定的。[0641]21.根据条款18所述的方法,其中预定义填充次序包括使用视频单元的至少一个样点来填充不可用样点,并且其中该至少一个样点的位置是基于不可用样点的位置来确定的。[0642]22.根据条款18所述的方法,其中视频单元的至少一个相邻样点的可用性是基于一个或多个相邻样点和与视频区域相关联的参数(ctudown或ctuup)之间的关系来确定的,并且其中视频区域对应于包括与编解码树单元(ctu)的n行相对应的ctuup和与ctu的‘ctb size–m’行相对应的ctudown的处理单元,其中m是整数。[0643]23.根据条款22所述的方法,其中,如果相邻样点在不同于ctudown的第二视频单元中,则规则指定不允许跨第二视频单元进行滤波。[0644]24.根据条款18所述的方法,其中视频单元对应于光栅扫描条带中包括的当前编解码树单元,并且规则指定用于填充视频单元的不可用样点的预定义填充次序。[0645]25.根据条款18所述的方法,其中预定义填充次序包括使用其最近的位于光栅扫描条带中的上方ctu中的相邻样点来填充位于与光栅扫描条带不同的条带中的左上ctu中的不可用样点。[0646]26.根据条款18所述的方法,其中预定义填充次序包括使用其最近的位于光栅扫描条带中的左侧ctu中的相邻样点来填充位于与光栅扫描条带不同的条带中的左上ctu中的不可用样点。[0647]27.根据条款18所述的方法,其中预定义填充次序包括使用其最近的位于光栅扫描条带中的下方ctu中的相邻样点来填充位于与光栅扫描条带不同的条带中的右下ctu中的不可用样点。[0648]28.根据条款18所述的方法,其中预定义填充次序包括使用其最近的位于光栅扫描条带中的右侧ctu中的相邻样点来填充位于与光栅扫描条带不同的条带中的右下ctu中的不可用样点。[0649]29.一种视频处理方法(例如,图25c中所示的方法2530),包括:针对启用了自适应环路滤波器(alf)应用的视频的视频区域,确定2532该视频区域被视频单元的边界跨越;以及执行2534视频和视频的比特流表示之间的转换,其中,对于该转换,由于视频区域被视频单元的边界跨越,所以根据规则将视频区域拆分成多个划分。[0650]30.根据条款29所述的方法,其中不允许跨越边界的滤波过程。[0651]31.根据条款29所述的方法,其中视频区域对应于alf处理单元、窄alf处理单元或编解码树单元。[0652]32.根据条款29所述的方法,其中视频单元对应于砖块、条带、片、子图片或360度虚拟图片。[0653]33.根据条款29所述的方法,其中规则还指定递归地拆分视频区域,直到视频区域不被视频单元的边界跨越。[0654]34.根据条款29或30所述的方法,其中滤波过程对应于alf过程或cc-alf过程,并且其中规则还指定在拆分视频区域的拆分过程完成之后执行滤波过程。[0655]35.根据条款29所述的方法,其中用于填充至少一个样点的填充过程在拆分视频区域直到视频区域不被视频单元的边界跨越之后获得的基本alf处理单元上执行。[0656]36.根据条款29所述的方法,其中规则指定以预定义次序检查不同的水平边界以生成基本alf处理单元,基本alf处理单元是在拆分视频区域直到视频区域不被视频单元的边界跨越之后获得的。[0657]37.根据条款36所述的方法,其中预定义次序是alf虚拟边界、360度虚拟边界和作为视频单元边界的编解码树单元(ctu)边界。[0658]38.根据条款36所述的方法,其中预定义次序是360度虚拟边界、alf虚拟边界和作为视频单元边界的编解码树单元(ctu)边界。[0659]39.根据条款36所述的方法,其中规则为视频单元的顶部边界和底部边界指定不同的预定义次序。[0660]40.根据条款29所述的方法,其中规则指定以预定义次序检查不同的垂直边界以生成基本alf处理单元,基本alf处理单元是在拆分视频区域直到视频区域不被视频单元的边界跨越之后获得的。[0661]41.根据条款40所述的方法,其中预定义次序是360度虚拟边界和作为所述视频单元的边界的编解码树单元(ctu)边界。[0662]42.根据条款40所述的方法,其中预定义次序是视频单元的编解码树单元(ctu)边界和360度虚拟边界。[0663]43.根据条款40所述的方法,其中规则为视频单元的左侧边界和右侧边界指定不同的预定义次序。[0664]44.一种视频处理方法,包括:根据规则执行视频的视频单元和视频的比特流表示之间的转换,其中该规则指定在不允许跨越视频单元的边界的滤波过程的情况下,不允许将自适应环路滤波(alf)和/或交叉分量自适应环路滤波(cc-alf)应用于位于所述边界处的样点。[0665]45.根据条款44所述的方法,其中在确定与alf和/或cc-alf相关联的至少n个相邻样点不可用时,应用alf和/或cc-alf被禁用,其中n是整数。[0666]46.根据条款44所述的方法,其中视频单元的边界是水平边界,并且其中在确定样点和视频单元的水平边界之间的垂直距离小于或等于m个样点时,应用alf和/或cc-alf被禁用,其中m是整数。[0667]47.根据条款44所述的方法,其中视频单元的边界是垂直边界,并且其中在确定样点和视频单元的垂直边界之间的水平距离小于或等于m个样点时,应用alf和/或cc-alf被禁用,其中m是整数。[0668]48.一种视频处理方法,包括:执行视频的视频单元和视频的比特流表示之间的转换,其中比特流表示符合格式规则,其中视频区域不同于编解码树块,其中格式规则指定比特流表示中是否包括指示自适应环路滤波(alf)工具和/或交叉分量自适应环路滤波(cc-alf)工具对视频区域的适用性的语法元素。[0669]49.根据条款48所述的方法,其中视频区域对应于alf处理单元。[0670]50.根据条款48所述的方法,其中alf工具和/或cc-alf工具的适用性在所述比特流表示中被显式地指示。[0671]51.根据条款48所述的方法,其中alf工具和/或cc-alf工具的适用性是被推导的。[0672]52.一种视频处理方法(例如,如图25d所示的方法2540),包括:针对视频的视频单元和视频的比特流表示之间的转换,根据规则确定2542交叉分量自适应环路滤波(cc-alf)工具对视频单元的样点的适用性;并且根据该确定执行2544转换;其中比特流表示包括cc-alf可用于视频单元的指示;并且其中该规则指定了一个或多个覆盖该指示的条件。[0673]53.根据条款52所述的方法,其中该一个或多个条件包括样点相对于视频单元的空间位置。[0674]54.根据条款52所述的方法,其中该一个或多个条件包括cc-alf中使用的亮度样点值。[0675]55.根据条款52所述的方法,其中该一个或多个条件包括样点与其相邻样点之间的样点值差。[0676]56.根据条款52所述的方法,其中该一个或多个条件包括使用对应于色度样点的经滤波亮度样点推导的偏移值和阈值之间的关系。[0677]57.根据条款52所述的方法,其中该一个或多个条件包括包括色度样点的块和/或该块的相邻块的经编解码信息。[0678]58.一种视频处理方法,包括:根据规则执行视频的视频单元和视频的比特流表示之间的转换,其中该规则指定在转换期间使用的算法省略三个裁剪操作中的至少一个,这三个裁剪操作包括对应于色度自适应环路滤波(alf)滤波的第一裁剪操作、对应于交叉分量自适应环路滤波(cc-alf)偏移推导的第二裁剪操作、以及对应于色度滤波样点的细化以推导最终色度样点值的第三裁剪操作。[0679]59.根据条款58所述的方法,其中该规则指定在应用cc-alf被启用的情况下省略第一裁剪操作。[0680]60.根据条款58所述的方法,其中该规则指定在应用cc-alf被禁用的情况下省略第二裁剪操作。[0681]61.根据条款58所述的方法,其中该规则指定省略第一裁剪操作和第二裁剪操作。[0682]62.一种视频处理方法(例如,图25e中所示的方法2550),包括:针对视频的第一视频单元和视频的比特流表示之间的转换,根据规则确定2552交叉分量自适应环路滤波(cc-alf)偏移;以及基于该确定执行2554转换,并且其中该规则指定cc-alf偏移被裁剪到不同于第二范围的第一范围,该第二范围被表示为[-(1《《(bitdepthc-1)),(1《《(bitdepthc-1))–1],其中bitdepthc是比特深度值。[0683]63.根据条款62所述的方法,其中第一范围不依赖于比特深度值。[0684]64.根据条款62所述的方法,其中与第二视频单元相关联的第三范围被定义为不同于与第一视频单元相关联的第一范围。[0685]65.根据条款62所述的方法,其中第一范围是从在对应于色度alf滤波的另一个裁剪操作中使用的非线性裁剪范围中推导的。[0686]66.一种视频处理方法(例如,如图25f所示的方法2560),包括:针对视频的第一视频单元和视频的比特流表示之间的转换,根据规则推导2562交叉分量自适应环路滤波(cc-alf)偏移;以及使用cc-alf偏移执行2564转换,并且其中该规则指定利用基于比特深度值而不是固定值的舍入偏移来对cc-alf偏移进行舍入。[0687]67.根据条款66所述的方法,其中舍入偏移取决于第一颜色分量和第二颜色分量之间的比特深度差。[0688]68.根据条款66所述的方法,其中,使用以下表达式对cc-alf偏移进行舍入:sum=alf picture[xctbc+x][yctbc+y]+(sum+off)》》(7+(bitdepthy bitdepthc))和ccalf picture[xctbc+x][yctbc+y]=clip 3(0,(1《《bitdepthc)-1,sum),其中off被设置为等于(1《《《(6+(bitdepthy-bitdepthc)),其中alfpicture[xctbc+x][yctbc+y]表示应用第一裁剪操作之后的色度样点,其中sum表示应用第二裁剪操作之后cc-alf滤波器系数乘以cc-alf滤波器支持中的亮度样点的总和,其中ccalfpicture表示应用第三裁剪操作之后的最终色度样点值,并且其中bitdepthc和bitdepthy分别表示亮度和色度分量的比特深度。[0689]69.一种视频处理方法,包括:根据规则执行视频的视频单元和视频的比特流表示之间的转换,其中该规则指定在应用于视频单元的样点的色度自适应环路滤波(alf)过程和/或交叉分量自适应环路滤波(cc-alf)过程期间使用的一个或多个处理步骤是相同的。[0690]70.根据条款69所述的方法,其中转换包括用于对由色度alf过程和/或cc-alf过程生成的色度样点进行裁剪的裁剪操作,这导致色度样点位于预定义的范围内。[0691]71.根据条款70所述的方法,其中预定义范围至少部分地基于色度比特深度值。[0692]72.根据条款70所述的方法,其中如果在色度alf过程之后应用cc-alf过程,则仅在cc-alf过程期间应用剪切操作。[0693]73.根据条款70所述的方法,其中如果在色度alf过程之前应用cc-alf过程,则仅在色度alf过程期间应用剪切操作。[0694]74.一种视频处理方法,包括:根据规则执行视频的视频单元和视频的比特流表示之间的转换,其中该规则指定,在转换期间,通过使用视频单元的第二颜色分量的信息的修改来修改视频单元的第一颜色分量的样点值,其中该修改基于在视频单元的自适应环路滤波(alf)过程中使用的一个或多个参数。[0695]75.根据条款74所述的方法,其中在自适应环路滤波过程中使用的一个或多个参数是裁剪参数,其中在第一样点值上使用的裁剪参数不同于在第二样点值上使用的裁剪参数,其中第一样点值和第二样点值包括在视频单元中。[0696]76.根据条款75所述的方法,其中裁剪参数被定义为位于具有最小裁剪值和最大裁剪值的范围内。[0697]77.根据条款76所述的方法,其中最小裁剪值和/或最大裁剪值在比特流表示中被显式地信令通知。[0698]78.根据条款76所述的方法,其中最小裁剪值和/或最大裁剪值部分地基于样点值。[0699]79.根据条款76所述的方法,其中最小裁剪值和/或最大裁剪值部分地基于样点值相对于视频单元的空间位置。[0700]80.根据条款76所述的方法,其中最小裁剪值和/或最大裁剪值被信令通知或预定义。[0701]81.根据条款76所述的方法,其中最小裁剪值和/或最大裁剪值是从其他参数中推导的。[0702]82.一种视频处理方法(例如,如图25g所示的方法2570),包括:针对视频的第一子图片和视频的比特流表示之间的转换,基于规则确定2572交叉分量环路滤波(cc-alf)是否适用于第一子图片的样点;以及基于该确定执行2574转换,其中用于该样点的cc-alf使用来自第二子图片的样点;并且其中该规则基于对于第一子图片和/或第二子图片是否允许跨越子图片边界的环路滤波。[0703]83.根据条款82所述的方法,其中在对于第一子图片不允许跨越子图片边界的环路滤波的情况下,在样点上跳过cc-alf。[0704]84.根据条款82所述的方法,其中在对于第二子图片不允许跨越子图片边界的环路滤波的情况下,在第一样点上跳过cc-alf。[0705]85.根据条款82所述的方法,其中在对于第一子图片和/或第二子图片不允许跨越子图片边界的环路滤波的情况下,在第一样点上跳过cc-alf。[0706]86.根据条款82至84中的一个或多个的方法,其中是否允许跨越子图片边界的环路滤波是基于与第一子图片和/或第二子图片相关联的标志。[0707]87.根据前面任一条款所述的方法,其中该方法还基于以下至少一个:1)视频内容的类型,2)在序列参数集(sps)、视频参数集(vps)、图片参数集(pps)、依赖性参数集(dps)、自适应参数集(aps)、图片标头、条带标头、片组标头、最大编解码单元(lcu)、编解码单元(cu)、lcu行、lcu组、变换单元(tu)、预测单元(pu)块或视频编解码单元,3)cu、pu、tu块或视频编解码单元的位置,4)当前块和/或相邻块的经解码信息,5)当前块和/或相邻块的纬度或形状,6)颜色格式的指示,7)编解码树结构,8)条带类型、片组类型和/或图片类型,9)颜色分量的类型,10)时域层标识符,11)标准的简档、级别或层次。[0708]88.根据条款1至87中任一项所述的方法,其中转换包括将视频编码成比特流表示。[0709]89.根据条款1至87中任一项所述的方法,其中转换包括从比特流表示中解码视频。[0710]90.一种视频处理装置,包括处理器,该处理器被配置为实现条款1至89中的任一项或多项所述的方法。[0711]91.一种存储程序代码的计算机可读介质,当该程序代码被执行时,使处理器实施条款1至89中的任一项或多项所述的方法。[0712]92.一种存储根据任何上述方法生成的经编解码表示或比特流表示的计算机可读介质。[0713]本文中描述的所公开的和其他解决方案、示例、实施例、模块和功能操作可以在数字电子电路中实现,或者在计算机软件、固件或硬件中实现,包括本文中公开的结构及其结构等同物,或者在它们中的一个或多个的组合中实现。所公开的和其他实施例可以实现为一个或多个计算机程序产品,即编码在计算机可读介质上的计算机程序指令的一个或多个模块,用于由数据处理装置执行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基底、存储设备、实现机器可读传播信号的物质组合,或者它们中的一个或多个的组合。术语“数据处理装置”包括用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多个处理器或计算机。除了硬件之外,该装置可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。传播信号是人工生成的信号,例如,机器生成的电、光或电磁信号,其被生成来编码信息以传输到合适的接收器装置。[0714]计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言编写,包括编译或解释语言,并且它可以以任何形式来部署,包括作为独立程序或作为模块、组件、子例程或适用于计算环境的其他单元。计算机程序不一定对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分中(例如,存储在标记语言文件中的一个或多个脚本),存储在专用于所讨论的程序的单个文件中,或者存储在多个协作文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。计算机程序可以被部署为在一台计算机上执行或位于一个地点或分布在多个地点并通过通信网络互连的多台计算机上执行。[0715]本文中描述的过程和逻辑流程可以由一个或多个可编程处理器来执行,这些处理器执行一个或多个计算机程序,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路来执行,并且装置也可以被实现为专用逻辑电路,例如fpga(现场可编程门阵列)或asic(专用集成电路)。[0716]举例来说,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储设备。通常,计算机还将包括或可操作地耦合到一个或多个用于存储数据的大容量存储设备,例如磁盘、磁光盘或光盘,以从该大容量存储设备接收数据或向其传送数据,或两者兼有。然而,计算机不需要有这样的设备。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储设备,包括例如半导体存储设备,例如eprom、eeprom和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及cd rom和dvd-rom盘。处理器和存储器可以由专用逻辑电路来补充或并入其中。[0717]虽然本专利文件包含许多细节,但这些细节不应被解释为对任何主题或所要求保护的内容的范围的限制,而是对特定技术的特定实施例所特有的特征的描述。在本专利文件中在单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独或以任何合适的子组合来实现。此外,尽管特征可能在上面被描述为在某些组合中起作用,并且甚至最初被如此要求保护,但是来自所要求保护的组合的一个或多个特征在一些情况下可以从该组合中删除,并且所要求保护的组合可以针对子组合或子组合的变体。[0718]类似地,虽然在附图中以特定的次序描述了操作,但是这不应该被理解为要求这些操作以所示的特定次序或顺序次序执行,或者要求所有示出的操作都被执行,以获得期望的结果。此外,在本专利文件中描述的实施例中的各种系统组件的分离不应被理解为在所有实施例中都需要这种分离。[0719]仅描述了一些实现方式和示例,并且可以基于本专利文件中描述和示出的内容进行其他实现方式、增强和变化。









图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!




内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!




免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

相关内容 查看全部