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

跨分量编解码的适用性条件的制作方法

2021-12-15 02:16:00 来源:中国专利 TAG:
跨分量编解码的适用性条件1.相关应用的交叉引用2.根据适用的专利法和/或巴黎公约的规则,本技术旨在及时要求2019年5月8日提交的国际专利申请号pct/cn2019/085996的优先权和利益。出于法律规定的所有目的,上述申请的全部公开内容作为本技术公开内容的一部分通过引用结合于此。
技术领域
:3.本专利文件涉及视频编码/解码技术、设备和系统。
背景技术
::4.尽管在视频压缩方面取得了进步,但数字视频仍然是互联网和其他数字通信网络上使用的最大带宽。随着能够接收和显示视频的连接用户设备数量的增加,预计数字视频使用的带宽需求将继续增长。技术实现要素:5.描述了与数字视频编解码/解码相关的设备、系统和方法,并且特别是视频编码/解码中跨分量线性模型(cross‑componentlinearmodel,cclm)预测模式的简化线性模型推导。所描述的方法可以应用于现有的视频编解码标准(例如,高效视频编解码(highefficiencyvideocoding,hevc))和未来的视频编解码标准(例如,通用视频编解码(versatilevideocoding,vvc))或编解码器。6.在一个代表性方面,所公开的技术包括用于视觉媒体处理的方法。该示例性方法包括:响应于确定视觉媒体数据的对应亮度块的临近亮度块的可用性,导出视觉媒体数据的当前视频色度块的第一参数,使得第一参数被导出为固定值或当前视频色度块的临近亮度样点的基于舍入(rounding)的平均值,其中对应亮度块覆盖与当前视频色度块相关联的位置;基于第一参数确定色度缩放因子;基于色度缩放因子执行当前视频色度块的色度残差缩放;以及使用色度缩放因子进行当前视频色度块和当前视频色度块的比特流表示之间的转换。7.在一个代表性方面,所公开的技术包括用于视觉媒体处理的方法。该示例性方法包括使用规则,该规则基于固定值指定表示与视觉媒体数据的当前视频单元相关联的至少一个色度块的色度残差缩放因子,其中该固定值至少基于一个或多个条件;以及执行当前视频单元和当前视频单元的比特流表示之间的转换。8.在一个代表性方面,所公开的技术包括用于视觉媒体处理的方法。该示例性方法包括:在视觉媒体数据的当前视频块和当前视频块的比特流表示之间的转换期间,至少部分地基于与当前视频块相关联的维度和/或分割信息和/或编解码结构类型,做出选择性地启用或禁用对当前视频块的颜色分量应用跨分量线性模型(cclm)的确定,其中,在cclm中,基于第二组颜色分量的线性组合预测第一组颜色分量。9.在又一示例方面,上述方法可以由包括处理器的视频编码器装置来实现。10.在又一示例方面,上述方法可以由包括处理器的视频解码器装置来实现。11.在又一示例方面,这些方法可以以处理器可执行指令的形式来体现,并存储在计算机可读程序介质上。12.本文件进一步描述了这些和其他方面。附图说明13.图1示出了hevc中的角度帧内预测模式的示例。14.图2示出了不在hevc中的方向模式的示例。15.图3示出了与cclm模式相关的示例。16.图4示出了具有色度缩放架构的亮度映射的示例。17.图5示出了不同颜色格式的亮度块和色度块的示例。18.图6示出了相同颜色格式的亮度块和色度块的示例。19.图7示出了覆盖多种格式的并置亮度块的示例。20.图8示出了较大亮度块内的亮度块的示例。21.图9示出了较大亮度块内和边界框内的亮度块的示例。22.图10是用于实现本文档中描述的视觉媒体解码或视觉媒体编码技术的硬件平台的示例的框图。23.图11示出了根据所公开的技术的用于跨分量预测的线性模型推导的示例方法的流程图。24.图12是其中可以实现所公开的技术的示例视频处理系统的框图。25.图13是视觉媒体处理方法的示例的流程图。26.图14是视觉媒体处理方法的示例的流程图。27.图15是视觉媒体处理方法的示例的流程图。具体实施方式28.2.1对hevc的简要回顾29.2.1.1hevc/h.265中的帧内预测30.帧内预测涉及使用先前在考虑的颜色通道中重构的样点来产生给定tb(变换块)的样点。分别为亮度和色度通道信令通知帧内预测模式,并且色度通道帧内预测模式可选地经由“dm_chroma”模式、取决于亮度通道帧内预测模式。尽管以pb(predictionblock,预测块)级信令通知帧内预测模式,但是根据cu的残差四叉树层次结构,以tb级应用帧内预测处理,从而允许一个tb的编解码对cu内的下一tb的编解码产生影响,并因此减小到用作参考值的样点的距离。31.hevc包括35种帧内预测模式–dc模式、平面模式和33个方向或“角度”帧内预测模式。图1中示出了33种角度帧内预测模式。32.对于与色度颜色通道相关联的pb,帧内预测模式被指定为平面、dc、水平、垂直、“dm_chroma”模式或有时对角模式“34”。33.注意对于色度格式4:2:2和4:2:0,色度pb可能重叠两个或四个(分别)亮度pb;在这种情况下,dm_chroma的亮度方向取自这些亮度pb的左上。34.dm_chroma模式指示亮度颜色通道pb的帧内预测模式应用于色度颜色通道pb。因为这是相对常见的,所以intra_chroma_pred_mode的最可能模式编解码方案偏向于有利于选择该模式。35.2.2通用视频编解码(vvc)算法描述36.2.2.1vvc编解码架构37.为了探索hevc以外的未来视频编解码技术,vceg和mpeg于2015年联合成立了联合视频探索小组(jointvideoexplorationteam,jvet)。jvet会议每季度同时举行一次,新的编解码标准的目标是与hevc相比降低50%的比特率。新的视频编解码标准在2018年4月的jvet会议上正式命名为通用视频编解码(vvc),当时发布了vvc测试模型(vvctestmodel,vtm)的第一个版本。随着vvc标准化工作的不断开展,新的编解码技术在每次jvet会议上都被采用到vvc标准中。vvc工作草案和测试模型vtm在每次会议后都会被更新。vvc项目目前的目标是在2020年7月的会议上实现技术完工(fdis)。38.与大多数先前标准一样,vvc具有基于块的混合编解码架构,将图片间和图片内预测以及变换编解码与熵编解码相结合。图片分割结构将输入视频分成称为编解码树单元(codingtreeunit,ctu)的块。使用具有嵌套多类型树结构的四叉树将ctu划分成编解码单元(codingunit,cu),其中叶编解码单元(cu)定义了共享相同预测模式(例如,帧内或帧间)的区域。在本文件中,术语“单元”定义了覆盖所有颜色分量的图像的区域;术语“块”用于定义覆盖特定颜色分量(例如亮度)的区域,并且在考虑色度采样格式(诸如4:2:0)时,其在空间位置上可能不同。39.2.2.2vvc中的双树/单树分割40.亮度分量和色度分量可以具有用于i条带的单分割树。单树分割64x64是在块级之下,而不是ctu级。在vtm软件中,存在sps标志来控制双树的打开和关闭。41.2.2.3vvc中的帧内预测42.2.2.3.167种帧内预测模式43.为了捕获自然视频中呈现的任意边缘方向,vtm4中的定向帧内模式的数量从hevc使用的33个扩展到65个。不在hevc的新的定向模式在图2中用红点箭头描绘,并且平面和dc模式保持不变。这些更密集的定向帧内预测模式适用于所有块尺寸以及适用于亮度和色度帧内预测。44.2.2.3.2跨分量线性模型预测(cclm)45.为了减少跨分量冗余,在vtm4中使用跨分量线性模型(cclm)预测模式,对于该模式,通过使用如下线性模型,基于同一cu的重构亮度样点来预测色度样点:46.predc(i,j)=α·recl'(i,j) β47.其中predc(i,j)表示cu中的预测的色度样点,并且recl(i,j)表示同一cu的下采样重构亮度样点。线性模型参数α和β是从两个样点的亮度值和色度值之间的关系导出的,这两个样点是在下采样的临近亮度样点的集合中的具有最小样点值和最大样点的亮度样点,以及它们对应色度样点。线性模型参数α和β根据以下等式获得:[0048][0049]β=yb‑α·xb[0050]其中,ya和xa表示具有最大亮度样点值的亮度样点的亮度值和色度值。xb和yb分别表示具有最小亮度样点的亮度样点的亮度值和色度值。图3示出了cclm模式中涉及的左侧和上方样点以及当前块的样点的位置的示例。[0051]计算参数α的除法运算是用查找表实现的。为了减少存储该表所需的存储器,diff值(最大值和最小值之间的差)和参数α用指数表示法表示。例如,diff用一个4比特有效部分(significantpart)和指数来近似。因此,用于1/diff的表被简化为针对16个有效数字值的16个元素,如下所示:[0052]divtable[]={0,7,6,5,5,4,4,3,3,2,2,1,1,1,1,0}[0053]这将有利于降低计算的复杂性以及存储所需表需要的存储器尺寸。[0054]除了上模板和左模板可以一起被用于计算线性模型系数,它们也可以在其他2个lm模式(称为lm_a和lm_l模式)中交替使用。[0055]在lm_a模式中,仅使用上模板来计算线性模型系数。为了得到更多的样点,将上模板被扩展到(w h)。在lm_l模式中,仅使用左模板来计算线性模型系数。为了得到更多的样点,左模板被扩展到(h w)。[0056]对于非正方形块,上模板被扩展为w w,左模板被扩展为h h。[0057]为了匹配4:2:0视频序列的色度样点位置,对亮度样点应用两种类型的下采样滤波器,以在水平和垂直方向两者上实现2比1的下采样比。下采样滤波器的选择由sps级标志指定。两个下采样滤波器如下,它们分别对应“type‑0”(类型‑0)和“type‑2”(类型‑2)内容:[0058][0059][0060]请注意,当上方参考线位于ctu边界时,只有一个亮度线(帧内预测中的通用线缓冲器)用于进行下采样亮度采样。[0061]该参数计算是作为解码过程的一部分来执行的,并且不仅仅是作为编码器搜索操作。因此,不使用语法向解码器传送α和β值。[0062]对于色度帧内模式编解码,色度帧内模式编解码总共允许8种帧内模式。这些模式包括五种传统的帧内模式和三种跨分量线性模型模式(cclm、lma和lml)。色度模式编解码直接取决于对应亮度块的帧内预测模式。由于亮度和色度分量的单独块分割结构在i条带中被启用,一个色度块可以对应于多个亮度块。因此,对于色度dm模式,直接继承覆盖当前色度块中心位置的对应亮度块的帧内预测模式。[0063]2.2.3.2.1对应修改的工作草案(jvet‑n0271)[0064]以下规范基于jvet‑m1001的修改的工作草案和jvet‑n0271中的采用。采用的jvet‑n0220的修改以粗体和下划线显示。[0065]语法表[0066]序列参数集rbsp语法[0067]sps_dmvr_enabled_flagu(1)sps_cclm_enabled_flagu(1)if(sps_cclm_enabled_flag&&chroma_format_idc==1)sps_cclm_colocated_chroma_flagu(1)sps_mts_enabled_flagu(1)[0068]语义[0069]等于0的sps_cclm_enabled_flag指定禁用从亮度分量到色度分量的跨分量线性模型帧内预测。等于1的sps_cclm_enabled_flag指定启用从亮度分量到色度分量的跨分量线性模型帧内预测。[0070]解码过程[0071]在8.4.4.2.8中,intra_lt_cclm、intra_l_cclm和intra_t_cclm帧内预测模式的规范[0072]此过程的输入是:[0073]–帧内预测模式predmodeintra,[0074]–当前变换块的左上样点相对于当前图片的左上样点的样点位置(xtbc,ytbc),[0075]–变量ntbw,指定变换块的宽度,[0076]–变量ntbh,指定变换块的高度,[0077]–色度临近样点p[x][y],其中x=‑1,y=0..2*ntbh‑1且x=0..2*ntbw‑1,y=‑1。[0078]此过程的输出是预测的样点predsamples[x][y],其中x=0..ntbw‑1,y=0..ntbh‑1。[0079]当前亮度位置(xtby,ytby)推导如下:[0080](xtby,ytby)=(xtbc<<1,ytbc<<1)ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑156)[0081]变量availl、availt和availtl的推导如下:[0082]–调用6.4.x[ed.(bb):临近块可用性检查过程tbd](6.4.x[ed.(bb):临近块可用性检查过程tbd])中指定的块的左临近样点推导过程的可用性,其中将设置为等于(xtbc,ytbc)的当前色度位置(xcurr,ycurr)和临近色度位置(xtbc‑1,ytbc)作为输入,并将输出分配给availl。[0083]–调用6.4.x[ed.(bb):临近块可用性检查过程tbd]中指定的块的上方临近样点推导过程的可用性,其中将设置为等于(xtbc,ytbc)当前色度位置(xcurr,ycurr)和临近色度位置(xtbc,ytbc‑1)作为输入,并将输出分配给availt。[0084]–调用6.4.x[ed.(bb):临近块可用性检查过程tbd]中指定的块的左上临近样点推导过程的可用性,其中将设置为等于(xtbc,ytbc)的当前色度位置(xcurr,ycurr)和临近色度位置(xtbc‑1,ytbc‑1)作为输入,并将输出分配给availtl。[0085]–可用的右上临近色度样点numtopright的数量推导如下:[0086]–变量numtopright设置为等于0,且availtr设置为等于true。[0087]–当predmodeintra等于intra_t_cclm时,针对x=ntbw..2*ntbw–1适用以下内容,直到availtr等于false或x等于2*ntbw‑1:[0088]–调用6.4.x[ed.(bb):临近块可用性检查过程tbd]中指定的块的可用性推导过程,将设置为等于(xtbc,ytbc)的当前色度位置(xcurr,ycurr)和临近色度位置(xtbc x,ytbc‑1)作为输入,并将输出分配给availabletr[0089]–当availabletr等于true时,numtopright递增1。[0090]–可用的左下临近色度样点numleftbelow的数量推导如下:[0091]–变量numleftbelow设置为0,且availlb设置为true。[0092]–当predmodeintra等于intra_l_cclm时,针对y=ntbh..2*ntbh–1适用以下内容,直到availlb等于false或y等于2*ntbh‑1:[0093]–调用6.4.x[ed.(bb):临近块可用性检查过程tbd]中指定的块的可用性推导过程,将设置为等于(xtbc,ytbc)的当前色度位置(xcurr,ycurr)和临近色度位置(xtbc‑1,ytbc y)作为输入,并将输出分配给availabletr。[0094]–当availablelb等于true时,numleftbelow递增1。[0095]上方和右上numtopsamp上可用的临近色度样点的数量以及左和左下nleftsamp上的可用的临近色度样点的数量推导如下:[0096]–如果predmodeintra等于intra_lt_cclm,则适用以下内容:[0097]numsampt=availt?ntbw:0ꢀꢀꢀ(8‑157)[0098]numsampl=availl?ntbh:0ꢀꢀꢀ(8‑158)[0099]–否则,适用以下内容:[0100]numsampt=(availt&&predmodeintra==intra_t_cclm)?(ntbw min(numtopright,ntbh)):0(8‑159)[0101]numsampl=(availl&&predmodeintra==intra_l_cclm)?(ntbh min(numleftbelow,ntbw)):0(8‑160)[0102]变量bctuboundary如下导出:[0103]bctuboundary=(ytbc&(1<<(ctblog2sizey‑1)‑1)==0)?true:false.(8‑161)[0104]变量cntn和数组pickposn[](其中n被l和t替换)如下导出:[0105]–将变量numis4n设置为等于((availt&&availl&&predmodeintra==intra_lt_cclm)?0:1)。[0106]–将变量startposn设置为等于numsampn>>(2 numis4n)。[0107]–将变量pickstepn设置为等于max(1,numsampn>>(1 numis4n))。[0108]–如果availn等于true并且predmodeintra等于intra_lt_cclm或intra_n_cclm,则将cntn设置为min(numsampn,(1 numis4n)<<1),并且将pickposn[pos]设置为等于(startposn pos*pickstepn),其中pos=0..(cntn–1)。[0109]–否则,将cntn设置为等于0。[0110]具有x=0..ntbw‑1,y=0..ntbh‑1的预测样点predsamples[x][y]如下导出:[0111]–如果numsampl和numsampt两者都等于0,则适用以下内容:[0112]predsamples[x][y]=1<<(bitdepthc‑1)(8‑162)[0113]–否则,适用以下有序步骤:[0114]1.具有x=0..ntbw*2‑1时,y=0..ntbh*2‑1的并置亮度样点py[x][y]设置为等于去块滤波器过程之前在位置(xtby x,ytby y)处重构的亮度样点。[0115]2.临近亮度样点样点py[x][y]如下导出:[0116]–当numsampl大于0时,x=‑1..‑3,y=0..2*numsampl‑1的临近左亮度样点py[x][y]设置为等于去块滤波器过程之前在位置(xtby x,ytby y)处重构的亮度样点。[0117]–当numsampt大于0时,x=0..2*numsampt‑1,y=‑1,‑2的临近上方亮度样点py[x][y]设置为等于去块滤波器过程之前在位置(xtby x,ytby y)处重构的亮度样点。[0118]–当availtl等于true时,x=‑1,y=‑1,‑2的临近左上亮度样点py[x][y]设置为等于去块滤波器过程之前在位置(xtby x,ytby y)处重构的亮度样点。[0119]3.下采样的并置亮度样点pdsy[x][y],其中x=0..ntbw‑1,y=0..ntbh‑1如下导出:[0120]–如果sps_cclm_colocated_chroma_flag等于1,适用以下内容:[0121]–pdsy[x][y],其中x=1..ntbw‑1,y=1..ntbh–1,如下导出:[0122]pdsy[x][y]=(py[2*x][2*y‑1] py[2*x‑1][2*y] 4*py[2*x][2*y] py[2*x 1][2*y] py[2*x][2*y 1] 4)>>3ꢀꢀꢀꢀꢀꢀꢀꢀ(8‑163)[0123][0124][0125]–如果availl等于true,pdsy[0][y],其中y=1..ntbh–1,如下导出:[0126][0127]pdsy[0][y]=(py[0][2*y‑1] py[‑1][2*y] 4*py[0][2*y] py[1][2*y] py[0][2*y 1] 4)>>3ꢀꢀꢀꢀꢀꢀ(8‑164)[0128]–否则,pdsy[0][y],其中y=1..ntbh–1,如下导出:[0129]pdsy[0][y]=(py[0][2*y‑1] 2*py[0][2*y] py[0][2*y 1] 2)>>2ꢀꢀꢀꢀꢀ(8‑165)[0130]–如果availt等于true,pdsy[x][0],其中x=1..ntbw–1,如下导出:[0131]pdsy[x][0]=(py[2*x][‑1] py[2*x‑1][0] 4*py[2*x][0] py[2*x 1][0] py[2*x][1] 4)>>3ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑166)[0132]–否则,pdsy[x][0],其中x=1..ntbw–1,如下导出:[0133]pdsy[x][0]=(py[2*x‑1][0] 2*py[2*x][0] py[2*x 1][0] 2)>>2ꢀꢀꢀꢀꢀ(8‑167)[0134]–如果availl等于true且availt等于true,pdsy[0][0]如下导出:[0135]pdsy[0][0]=(py[0][‑1] py[‑1][0] 4*py[0][0] py[1][0] py[0][1] 4)>>3(8‑168)[0136]–否则如果availl等于true且availt等于false,pdsy[0][0]如下导出:[0137]pdsy[0][0]=(py[‑1][0] 2*py[0][0] py[1][0] 2)>>2ꢀꢀꢀꢀꢀꢀ(8‑169)[0138]–否则如果availl等于false且availt等于true,pdsy[0][0]如下导出:[0139]pdsy[0][0]=(py[0][‑1] 2*py[0][0] py[0][1] 2)>>2ꢀꢀꢀꢀꢀꢀ(8‑170)[0140]–否则(availl等于false且availt等于false),pdsy[0][0]如下导出:[0141]pdsy[0][0]=py[0][0]ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑171)[0142]–否则,适用以下内容:[0143]–pdsy[x][y],其中x=1..ntbw‑1,y=0..ntbh–1,如下导出:[0144]pdsy[x][y]=(py[2*x‑1][2*y] py[2*x‑1][2*y 1] 2*py[2*x][2*y] 2*py[2*x][2*y 1] py[2*x 1][2*y] py[2*x 1][2*y 1] 4)>>3ꢀꢀꢀꢀꢀ(8‑172)[0145][0146][0147][0148][0149]–如果availl等于true,pdsy[0][y],其中y=0..ntbh–1,如下导出:[0150]pdsy[0][y]=(py[‑1][2*y] py[‑1][2*y 1] [0151]2*py[0][2*y] 2*py[0][2*y 1] [0152]py[1][2*y] py[1][2*y 1] 4)>>3(8‑173)[0153]–否则,pdsy[0][y,其中y=0..ntbh–1,如下导出:[0154]pdsy[0][y]=(py[0][2*y] py[0][2*y 1] 1)>>1ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑174)[0155]4.当numsampl大于0,所选择的临近左色度样点pselc[idx设置为等于p[‑1][pickposl[idx]],其中idx=0..(cntl–1),并且所选择的下采样的临近左亮度样点pseldsy[idx](其中idx=0..(cntl‑1))如下导出:[0156]–变量y设置为等于pickposl[idx]。[0157]–如果sps_cclm_colocated_chroma_flag等于1,适用以下内容:[0158]–如果y>0||availtl==true,[0159]pseldsy[idx]=(py[‑2][2*y‑1] py[‑3][2*y] 4*py[‑2][2*y] py[‑1][2*y] py[‑2][2*y 1] 4)>>3ꢀꢀꢀ(8‑175)[0160][0161][0162]–否则,[0163]pseldsy[idx]=(py[‑3][0] 2*py[‑2][0] py[‑1][0] 2)>>2ꢀꢀꢀꢀꢀꢀꢀ(8‑177)[0164]–否则,适用以下内容:[0165]pseldsy[idx]=(py[‑1][2*y] py[‑1][2*y 1] 2*py[‑2][2*y] 2*py[‑2][2*y 1] py[‑3][2*y] py[‑3][2*y 1] 4)>>3(8‑178)[0166]5.当numsampt大于0,所选择的临近上方色度样点pselc[idx]设置为等于p[pickpost[idx–cntl]][‑1],其中idx=cntl..(cntl cntt–1),并且下采样的临近上方亮度样点pseldsy[idx](其中idx=cntl..(cntl cntt–1))如下指定:[0167]–变量x设置为等于pickpost[idx–cntl].[0168]–如果sps_cclm_colocated_chroma_flag等于1,适用以下内容:[0169]–如果x>0:[0170]–如果bctuboundary等于false,适用以下内容:[0171]pseldsy[idx]=(py[2*x][‑3] py[2*x‑1][‑2] 4*py[2*x][‑2] py[2*x 1][‑2] py[2*x][‑1] 4)>>3ꢀꢀꢀꢀꢀꢀꢀ(8‑179)[0172]–否则(bctuboundary等于true),适用以下内容:[0173]pseldsy[idx]=(py[2*x‑1][‑1] 2*py[2*x][‑1] py[2*x 1][‑1] 2)>>2(8‑180)[0174][0175][0176]–否则:[0177]–如果availtl等于true并且bctuboundary等于false,适用以下内容:[0178][0179]pseldsy[idx]=(py[0][‑3] py[‑1][‑2] 4*py[0][‑2] py[1][‑2] py[0][‑1] 4)>>3ꢀꢀꢀꢀꢀꢀꢀꢀ(8‑181)[0180]–否则如果availtl等于true并且bctuboundary等于true,适用以下内容:[0181]pseldsy[idx]=(py[‑1][‑1] 2*py[0][‑1] py[1][‑1] 2)>>2ꢀꢀꢀꢀꢀꢀꢀꢀ(8‑182)[0182][0183][0184]–否则如果availtl等于false并且bctuboundary等于false,适用以下内容:[0185]pseldsy[idx]=(py[0][‑3] 2*py[0][‑2] py[0][‑1] 2)>>2ꢀꢀꢀ(8‑183)[0186]–否则(availtl等于false并且bctuboundary等于true),适用以下内容:[0187]pseldsy[idx]=py[0][‑1]ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑184)[0188]–否则,适用以下内容:[0189]–如果x>0:[0190]–如果bctuboundary等于false,适用以下内容:[0191]pseldsy[idx]=(py[2*x‑1][‑2] py[2*x‑1][‑1] 2*py[2*x][‑2] 2*py[2*x][‑1] py[2*x 1][‑2] py[2*x 1][‑1] 4)>>3ꢀꢀ(8‑185)[0192][0193]–否则(bctuboundary等于true),适用以下内容:[0194]pseldsy[idx]=(py[2*x‑1][‑1] 2*py[2*x][‑1] py[2*x 1][‑1] 2)>>2ꢀꢀ(8‑186)[0195][0196][0197]–否则:[0198]–如果availtl等于true并且bctuboundary等于false,适用以下内容:[0199]pseldsy[idx]=(py[‑1][‑2] py[‑1][‑1] 2*py[0][‑2] 2*py[0][‑1] py[1][‑2] py[1][‑1] 4)>>3ꢀꢀ(8‑187)[0200]–否则如果availtl等于true并且bctuboundary等于true,适用以下内容:[0201]pseldsy[idx]=(py[‑1][‑1] 2*py[0][‑1] py[1][‑1] 2)>>2ꢀꢀꢀꢀꢀ(8‑188)[0202][0203][0204]–否则如果availtl等于false并且bctuboundary等于false,适用以下内容:[0205]pseldsy[idx]=(py[0][‑2] py[0][‑1] 1)>>1(8‑189)[0206]–否则(availtl等于false并且bctuboundary等于true),适用以下内容:[0207]pseldsy[idx]=py[0][‑1]ꢀꢀꢀꢀꢀꢀ(8‑190)[0208]6.当cntt cntl不等于0,变量miny,maxy,minc和maxc如下导出:[0209]–当cntt cntl等于2,设置pselcomp[3]等于pselcomp[0],pselcomp[2]等于pselcomp[1],pselcomp[0]等于pselcomp[1],以及pselcomp[1]等于pselcomp[3],其中comp被dsy和c替换。[0210]–数组mingrpidx[]和maxgrpidx[]设置为:mingrpidx[0]=0,mingrpidx[1]=2,maxgrpidx[0]=1,maxgrpidx[1]=3.[0211]–如果pseldsy[mingrpidx[0]]>pseldsy[mingrpidx[1]],swap(mingrpidx[0],mingrpidx[1]).[0212]–如果pseldsy[maxgrpidx[0]]>pseldsy[maxgrpidx[1]],swap(maxgrpidx[0],maxgrpidx[1]).[0213]–如果pseldsy[mingrpidx[0]]>pseldsy[maxgrpidx[1]],swap(mingrpidx,maxgrpidx).[0214]–如果pseldsy[mingrpidx[1]]>pseldsy[maxgrpidx[0]],swap(mingrpidx[1],maxgrpidx[0]).[0215]–maxy=(pseldsy[maxgrpidx[0]] pseldsy[maxgrpidx[1]] 1)>>1.[0216]–maxc=(pselc[maxgrpidx[0]] pselc[maxgrpidx[1]] 1)>>1.[0217]–miny=(pseldsy[mingrpidx[0]] pseldsy[mingrpidx[1]] 1)>>1.[0218]–minc=(pselc[mingrpidx[0]] pselc[mingrpidx[1]] 1)>>1.[0219]7.变量a,b,和k如下导出:[0220]–如果numsampl等于0,并且numsampt等于0,适用以下内容:[0221]k=0ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑208)[0222]a=0ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑209)[0223]b=1<<(bitdepthc‑1)ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑210)[0224]–否则,适用以下内容:[0225]diff=maxy‑minyꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑211)[0226]–如果diff不等于0,适用以下内容:[0227]diffc=maxc‑mincꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑212)[0228]x=floor(log2(diff))ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑213)[0229]normdiff=((diff<<4)>>x)&15ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑214)[0230]x =(normdiff!=0)?1:0ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑215)[0231]y=floor(log2(abs(diffc))) 1ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑216)[0232]a=(diffc*(divsigtable[normdiff]|8) 2y‑1)>>yꢀꢀ(8‑217)[0233]k=((3 x‑y)<1)?1:3 x‑yꢀꢀꢀꢀꢀ(8‑218)[0234]a=((3 x‑y)<1)?sign(a)*15:aꢀꢀ(8‑219)[0235]b=minc‑((a*miny)>>k)ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑220)[0236]其中divsigtable[]指定如下:[0237]divsigtable[]={0,7,6,5,5,4,4,3,3,2,2,1,1,1,1,0}(8‑221)[0238]–否则(diff等于0),适用以下内容:[0239]k=0ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑222)[0240]a=0ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑223)[0241]b=mincꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑224)[0242]8.预测样点predsamples[x][y],其中x=0..ntbw‑1,y=0..ntbh–1如下导出:[0243]predsamples[x][y]=clip1c(((pdsy[x][y]*a)>>k) b)(8‑225)[0244]2.2.3.3其他帧内预测方面[0245]vtm4包括许多不同于hevc的帧内编解码工具,例如,以下特征已被包括在块树结构的上方的vvc测试模型3中。[0246]·67种具有广角模式扩展的帧内模式,[0247]·块尺寸和模式相关的4抽头插值滤波器[0248]·位置相关的帧内预测组合(positiondependentintrapredictioncombination,pdpc)[0249]·跨分量线性模型帧内预测[0250]·多参考线帧内预测[0251]·帧内子分割[0252]vvc中的帧间预测[0253]2.2.4.1组合的帧间和帧内预测(combinedinterandintraprediction,ciip)[0254]在vtm4中,当cu以merge模式编解码时,并且如果cu包含至少64个亮度样点(即cu宽度乘以cu高度等于或大于64),则信令通知附加标志,以指示组合的帧间/帧内预测(ciip)模式是否应用于当前cu。[0255]为了形成ciip预测,首先从两个附加语法元素导出帧内预测模式。最多可以使用四种可能的帧内预测模式:dc、平面、水平或垂直。然后,使用规则的帧内和帧间解码过程来导出帧间预测和帧内预测信号。最后,执行帧间和帧内预测信号的加权平均以获得ciip预测。[0256]2.2.4.2各种各样的帧间预测方面[0257]vtm4包括许多与hevc不同的帧间编解码工具,例如,以下特征已被包括在块树结构的上方的vvc测试模型3中。[0258]·仿射运动帧间预测[0259]·基于子块的时域运动矢量预测[0260]·自适应运动矢量分辨率[0261]·基于8x8块的运动压缩,用于时域运动预测[0262]·高精度(1/16像素)运动矢量存储和运动补偿,具有针对亮度分量的8抽头插值滤波器,和针对色度分量的4抽头插值滤波器[0263]·三角分割[0264]·组合的帧内和帧间预测[0265]·具有mvd的merge(mergewithmvd,mmvd)[0266]·对称mvd编解码[0267]·双向光流[0268]·解码器侧向运动矢量细化[0269]·双向预测加权平均[0270]2.2.5环内滤波器(in‑loopfilter)[0271]vtm4中总共有三个环内滤波器。除了去块滤波器和sao(hevc中的两个环路滤波器)之外,vtm4中还采用了自适应环路滤波器(adaptiveloopfilter,alf)。vtm4中的滤波过程的顺序为去块滤波器、sao和alf。[0272]在vtm4中,sao和去块滤波过程与hevc中的过程几乎相同。[0273]在vtm4中,添加了新的过程,称为具有色度缩放的亮度映射(该过程以前称为自适应环内整形器)。此新的过程在去块之前执行。[0274]2.2.6具有色度缩放的亮度映射(lumamappingwithchromascaling,lmcs,又名环内整形)[0275]在vtm4中,在环路滤波器之前添加了称为具有色度缩放的亮度映射(lmcs)的编解码工具,作为新的处理块。lmcs有两个主要部分:1)基于自适应分段线性模型的亮度分量的环内映射;2)对于色度分量,应用亮度相关的色度残差缩放。图4从解码器的角度示出了lmcs架构。图4中的浅蓝色阴影块指示在映射的域中应用处理的位置;并且这些包括去量化、逆变换、亮度帧内预测以及亮度预测与亮度残差的相加。图4中未加阴影的块指示在原始(即,未映射)域中应用处理的位置;并且这些包括环路滤波器,诸如去块、alf和sao、运动补偿的预测、色度帧内预测、色度预测和色度残差的相加,以及将解码的图片存储为参考图片。图4中的浅黄色阴影块是新的lmcs功能块,包括亮度信号的正向和反向映射以及亮度相关的色度缩放过程。像vvc中的大多数其他工具一样,可以使用sps标志在序列级启用/禁用lmcs。[0276]2.2.6.1具有分段线性模型的亮度映射[0277]亮度分量的环内映射通过在动态范围间重新分配码字来调整输入信号的动态范围,以提高压缩效率。亮度映射利用正向映射函数fwdmap和对应的反向映射函数invmap。使用具有16个相等的片段的分段线性模型来信令通知fwdmap函数。invmap函数不需要被信令通知,而是从fwdmap函数中导出的。[0278]亮度映射模型在片组级(tilegrouplevel)信令通知。首先存在标志被信令通知。如果亮度映射模型存在于当前片组中,则对应的分段线性模型参数被信令通知。分段线性模型将输入信号的动态范围分割为16个相等的片段,并且对于每个片段,其线性映射参数使用分配给该片段的码字数量来表示。以10比特输入为例。默认情况下,16个片段中的每一个都将被分配64个码字。信令通知的码字的数量被用于计算缩放因子,并对应地调整该片段的映射函数。在片组级处,另一个lmcs使能标志被信令通知,以指示图4中描绘的lmcs过程是否被应用于当前片组。[0279]fwdmap分段线性模型的每个第i个片段,i=0…15,由两个输入枢轴点inputpivot[]和两个输出(映射的)枢轴点mappedpivot[]定义。[0280]inputpivot[]和mappedpivot[]的计算如下(假设10比特视频):[0281]1)orgcw=64[0282]2)对于i=0:16,inputpivot[i]=i*orgcw[0283]3)对于i=0:16,mappedpivot[i]计算如下:[0284]mappedpivot[0]=0;[0285]for(i=0;i<16;i )[0286]mappedpivot[i 1]=mappedpivot[i] signalledcw[i][0287]其中,signalledcw[i]是第i个片段的码字的被信令通知的数量。[0288]如图4所示,对于帧间编解码的块,在映射的域中执行运动补偿的预测。换句话说,在基于dpb中的参考信号计算运动补偿的预测块ypred之后,应用fwdmap函数来将原始域中的亮度预测块映射到映射的域y′pred=fwdmap(ypred)。对于帧内编解码的块,由于帧内预测是在映射的域中执行的,因此不应用fwdmap函数。计算重构的块yr后,应用invmap函数将映射的域中的重构的亮度值转换回原始域中的重构的亮度值invmap函数适用于帧内和帧间编解码的亮度块两者。[0289]亮度映射过程(正向和/或反向映射)可以使用查找表(look‑up‑table,lut)或使用实时(on‑the‑fly)计算来实现。如果使用lut,则可以预先计算和预先存储fwdmapplut和invmaplut,以便在片组级使用,并且正向和反向映射可以分别简单地实现为fwdmap(ypred)=fwdmaplut[ypred]和invmap(yr)=invmaplut[yr]。可替代地,可以使用实时计算。以正向映射函数fwdmap为例。为了找出亮度样点所属的片段,样点值被右移6位(对应于16个相等的片段)。然后,检索该片段的线性模型参数并动态应用,以计算映射的亮度值。设i为片段索引,a1、a2分别为inputpivot[i]和inputpivot[i 1],并且b1、b2分别为mappedpivot[i]和mappedpivot[i 1]。fwdmap函数被评估如下:[0290]fwdmap(ypred)=((b2‑b1)/(a2‑a1))*(ypred‑a1) b1[0291]除了在计算样点值所属的片段时需要应用条件检查而不是简单的右移位(因为映射的域中的片段尺寸不等)之外,可以以类似的方式实时计算invmap函数。[0292]2.2.6.2亮度相关的色度残差缩放[0293]色度残差缩放设计用于补偿亮度信号和其对应色度信号之间的相互作用。色度残差缩放是否被启用也在片组级信令通知。如果亮度映射被启用,并且如果双树分割(也称为独立色度树)未应用于当前片组,则会信令通知附加标志,以指示是否启用亮度相关的色度残差缩放。当不使用亮度映射时,或者当在当前片组中使用双树分割时,亮度相关的色度残差缩放被禁用。此外,对于面积小于或等于4的色度块,始终禁用亮度相关的色度残差缩放。[0294]色度残差缩放取决于对应亮度预测块的平均值(对于帧内和帧间编解码的块两者)。将avgy′表示为亮度预测块的平均值。cscaleinv的值按以下步骤计算:[0295]1)基于invmap函数找到avgy′所属的分段线性模型的索引yidx。[0296]2)cscaleinv=cscaleinv[yidx],其中cscaleinv[]是预先计算的16片段lut。[0297]如果当前块被编解码为帧内、ciip或帧内块复制(ibc,也称为当前图片参考或cpr)模式,则avgy′被计算为帧内、ciip或ibc预测亮度值的平均值;否则,avgy′被计算为正向映射的帧间预测亮度值的平均值(图4中的y′pred)。与基于样点执行的亮度映射不同,cscaleinv是整个色度块的常数值。使用cscaleinv,色度残差缩放应用如下:[0298]编码器侧:cresscale=cres*cscale=cres/cscaleinv[0299]解码器侧:cres=cresscale/cscale=cresscale*cscaleinv[0300]2.2.6.3jvet‑m1001_v7中对应工作草案以及jvet‑n0220中的采用[0301]以下规范基于jvet‑m1001的修改的工作草案和jvet‑n0220的采用。采用的jvet‑n0220中的修改以粗体和下划线显示。[0302]语法表[0303]在7.3.2.1中,序列参数集rbsp语法[0304]sps_triangle_enabled_flagu(1)sps_lmcs_enabled_flagu(1)sps_ladf_enabled_flagu(1)[0305]在7.3.4.1中,常规片组头语法[0306][0307]在7.3.4.4中,具有色度缩放数据语法的亮度映射[0308][0309][0310]语义[0311]在7.4.3.1中,序列参数集rbsp语义[0312]sps_lmcs_enabled_flag等于1指定在cvs中使用具有色度缩放的亮度映射。sps_lmcs_enabled_flag等于0指定在cvs中不使用具有色度缩放的亮度映射。[0313]tile_group_lmcs_model_present_flag等于1指定在片组头中存在lmcs_data()。tile_group_lmcs_model_present_flag等于0指定在片组头中不存在lmcs_data()。当不存在tile_group_lmcs_model_present_flag时,将其推断为等于0。[0314]tile_group_lmcs_enabled_flag等于1指定为当前片组启用了具有色度缩放的亮度映射。tile_group_lmcs_enabled_flag等于0指定当前片组未启用具有色度缩放的亮度映射。如果不存在tile_group_lmcs_enabled_flag,将其推断为等于0。[0315]tile_group_chroma_residual_scale_flag等于1指定为当前片组启用了色度残差缩放。tile_group_chroma_residual_scale_flag等于0指定当前片组未启用色度残差缩放。如果不存在tile_group_chroma_residual_scale_flag,则将其推断为等于0。[0316]在7.4.5.4中,具有色度缩放数据语义的亮度映射[0317]lmcs_min_bin_idx指定具有色度缩放构建过程的亮度映射中使用的最小二进制位索引。lmcs_min_bin_idx的值应在0到15(包括0和15)的范围内。[0318]lmcs_delta_max_bin_idx指定在15和用于具有色度缩放构造过程的亮度映射的最大二进制位索引lmcsmaxbinidx之间的增量(delta)值。lmcs_delta_max_bin_idx的值应在0到15(包括0和15)的范围内。lmcsmaxbinidx的值设置为等于15至lmcs_delta_max_bin_idx。lmcsmaxbinidx的值应大于或等于lmcs_min_bin_idx。[0319]lmcs_delta_cw_prec_minus1加1指定用于表示语法lmcs_delta_abs_cw[i]的位数。lmcs_delta_cw_prec_minus1的值应在0至bitdepthy‑2(包括0和bitdepthy‑2)的范围内。[0320]lmcs_delta_abs_cw[i]指定第i个二进制位的绝对增量码字值。[0321]lmcs_delta_sign_cw_flag[i]指定变量lmcsdeltacw[i]的符号,如下所示:[0322]–如果lmcs_delta_sign_cw_flag[i]等于0,则lmcsdeltacw[i]为正值。[0323]–否则(lmcs_delta_sign_cw_flag[i]不等于0),lmcsdeltacw[i]为负值。[0324]当lmcs_delta_sign_cw_flag[i]不存在时,推断其等于0。[0325]变量orgcw的推导如下:[0326]orgcw=(1<<bitdepthy)/16ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(7‑70)[0327]变量lmcsdeltacw[i],其中i=lmcs_min_bin_idx..lmcsmaxbinidx,推导如下:[0328][0329]lmcsdeltacw[i]=(1‑2*lmcs_delta_sign_cw_flag[i])*lmcs_delta_abs_cw[i]ꢀꢀ(7‑71)[0330]变量lmcscw[i]推导如下:[0331]–对于i=0..lmcs_min_bin_idx‑1,lmcscw[i]设置为等于0。[0332]–对于i=lmcs_min_bin_idx..lmcsmaxbinidx,适用以下内容:[0333]lmcscw[i]=orgcw lmcsdeltacw[i]ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(7‑72)[0334]lmcscw[i]的值应在(orgcw>>3)至(orgcw<<3‑1)的范围内(包括(orgcw>>3)和(orgcw<<3‑1))。[0335]–对于i=lmcsmaxbinidx 1..15,lmcscw[i]设为等于0。[0336]满足以下条件是比特流一致性的要求:[0337][0338]变量inputpivot[i],其中i=0..16推导如下:[0339]inputpivot[i]=i*orgcwꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(7‑74)[0340]变量lmcspivot[i],其中i=0..16,变量scalecoeff[i]和invscalecoeff[i],其中i=0..15推导如下:[0341]lmcspivot[0]=0;[0342]for(i=0;i<=15;i ){[0343]lmcspivot[i 1]=lmcspivot[i] lmcscw[i][0344]scalecoeff[i]=(lmcscw[i]*(1<<11) (1<<(log2(orgcw)‑1)))>>(log2(orgcw))ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(7‑75)[0345]if(lmcscw[i]==0)[0346]invscalecoeff[i]=0[0347]else[0348]invscalecoeff[i]=orgcw*(1<<11)/lmcscw[i]}[0349]变量chromascalecoeff[i],其中i=0…15,推导如下:[0350]if(lmcscw[i]==0)[0351]chromascalecoeff[i]=(1<<11)[0352]else{[0353]chromascalecoeff[i]=invscalecoeff[i]}[0354]变量cliprange,lmcsminval和lmcsmaxval推导如下:[0355]cliprange=((lmcs_min_bin_idx>0)&&(lmcsmaxbinidx<15)(7‑77)[0356]lmcsminval=16<<(bitdepthy‑8)ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(7‑78)[0357]lmcsmaxval=235<<(bitdepthy‑8)ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(7‑79)[0358]注意–只有当tile_group_lmcs_model_present_flag等于1时,才会更新数组inputpivot[i]、lmcspivot[i]、scalecoeff[i]、和invscalecoeff[i]、scalecoeff[i]、cliprange、lmcsminval和lmcsmaxval。因此,例如,lmcs模型可以与irap图片一起被发送,但是lmcs对于该irap图片是被禁用的。[0359]3.现有实现的缺点[0360]lmcs/cclm的当前设计可能具有以下问题:[0361]1.在lmcs编解码工具中,色度残差缩放因子由并置亮度预测块的平均值导出,这导致了在lmcs色度残差缩放中处理色度样点的延迟。[0362]a)在单个/共享的树的情况下,延迟是由以下引起的:(a)等待整个亮度块的所有可用预测样点,以及(b)平均由(a)获得的所有亮度预测样点。[0363]b)在双/单树的情况下,延迟甚至更糟糕,因为在i条带中启用了亮度和色度分量的单块分割结构。因此,一个色度块可以对应于多个亮度块,并且一个4×4色度块可以对应于64×64亮度块。因此,最糟糕的情况是当前4×4色度块的色度残差缩放因子可能需要等待,直到整个64×64亮度块中的所有预测样点都可用。总之,双/单树中的延迟问题会严重得多。[0364]2.在cclm编解码工具中,用于帧内色度预测的cclm模型计算取决于亮度块和色度块两者的左和上参考样点。并且色度块的cclm预测取决于同一cu的并置亮度重构的样点。这将导致双/单树中的高延迟。[0365]·在双/单树的情况下,一个4×4色度块可以对应于64×64亮度块。因此,最糟糕的情况是当前色度块的cclm过程可能需要等待,直到对应的整个64×64亮度块被重构。这个延迟问题类似于双/单树中的lmcs色度缩放。[0366]4.示例技术和实施例[0367]为了解决这些问题,我们提出了几种方法来消除/减少/限制亮度相关的色度残差缩放、cclm和其他依赖于来自不同颜色分量的信息的编解码工具中的跨分量依赖性。[0368]下面描述的详细实施例应该被认为是解释一般概念的示例。这些实施例不应被狭义地解释。此外,这些实施例可以以任何方式组合。[0369]注意,虽然下面描述的项目符号(bullet)明确提到了lmcs/cclm,但是这些方法也可以适用于依赖于来自不同颜色分量的信息的其他编解码工具。此外,下面提到的术语“亮度”和“色度”可以分别由“第一颜色分量”和“第二颜色分量”代替,诸如在rgb颜色格式中的“g分量”和“b/r分量”。[0370]在以下讨论中,“并置样点/块”的定义与vvc工作草案jvet‑m1001中的并置样点/块的定义一致。更具体地说,在4:2:0颜色格式中,假设色度块的左上样点位于位置(xtbc,ytbc),则并置亮度块位置的左上样点(xtby,ytby)的推导如下:(xtby,ytby)=(xtbc<<1,ytbc<<1)。如图5所示,当前色度块的左上样点位于色度图片中的(x=16,y=16),则它的并置亮度块的左上样点位于亮度图片中的(x=32,y=32),而与亮度图片中的并置亮度块的块分割无关。再例如,在相同颜色分量中,并置块的左上样点在参考帧中的位置应该与当前块的左上样点在当前帧中的位置相同,如图6所示,假设当前块的左上样点在当前帧中是(x,y),那么当前块的并置块的左上样点在参考帧中具有相同的位置(x,y)。[0371]在下面的讨论中,“对应块”可能与当前块具有不同的位置。例如,当前块和参考帧中对应块之间可能存在运动偏移。如图6所示,假设当前块位于当前帧中的(x,y)处,并且它具有运动矢量(mvx,mvy),则当前块的对应块可以位于参考帧中的(x mvx,y mvy)。并且对于ibc编解码的块,并置亮度块(由零矢量指示)和对应亮度块(由非零矢量指示)可以位于当前帧的不同位置。作为另一个示例,当亮度块的分割与色度块的分割不一致时(在i条带的双树分割中),当前色度块的并置亮度块可以属于更大的亮度块,这取决于覆盖并置亮度块的左上样点的重叠的亮度编解码块的分割尺寸。如图5所示,假设粗体矩形表示块的分割,使得64×64亮度块首先被bt划分,然后64×64亮度块的右边部分被tt进一步划分,这导致尺寸分别等于32×16、32×32、32×16的三个亮度块。因此,查看当前色度块的并置亮度块的左上样点(x=32,y=32),它属于tt分割的中心32x32亮度块。在这种情况下,我们将覆盖并置亮度块左上样点的相关亮度块称为“对应亮度块”。因此,在本例中,对应亮度块的左上样点位于(x=32,y=16)。[0372]在下文中,dmvd(decoder‑sidemotionvectorderivation,解码器侧运动矢量推导)用于表示bdof(也称为bio)或/和dmvr(decode‑sidemotionvectorrefinement,解码侧运动矢量细化)或/和fruc(framerateup‑conversion,帧速率上转换)或/和在解码器处细化运动矢量或/和预测样点值的其他方法。[0373]消除lmcs的色度缩放延迟和cclm的模型计算[0374]1.提出对于帧间编解码的块,参考帧中的当前块的一个或多个参考样点可用于推导lmcs模式中的色度残差缩放因子。[0375]a)在一个示例中,参考亮度样点可以直接用于推导色度残差缩放因子。[0376]i.可替代地,插值可以首先应用于参考样点,并且插值的样点可以用于推导色度残差缩放因子。[0377]ii.可替代地,不同参考帧中的参考样点可用于推导最终参考样点,最终参考样点用于色度残差缩放因子推导。[0378]1)在一个示例中,对于双向预测编解码的块,可以应用上述方法。[0379]iii.在一个示例中,参考样点的强度可以在用于推导色度残差缩放因子之前被转换到整形域。[0380]iv.在一个示例中,参考样点的线性组合可用于推导色度残差缩放因子。[0381]1)例如,a×s b可以用来推导色度残差缩放因子,其中s是参考样点,a和b是参数。在一个示例中,a和b可以通过局部照明补偿(localizedilluminatecompensation,lic)导出。[0382]b)在一个示例中,参考帧中的参考亮度样点的位置可以取决于当前块的(一个或多个)运动矢量。[0383]i.在一个示例中,参考样点属于参考亮度块,该参考亮度块在参考图片中,并且具有与当前亮度块相同的宽度和高度。参考图片中的参考亮度样点的位置可以被计算为其对应亮度样点在当前图片中的位置加上运动矢量。[0384]ii.在一个示例中,参考亮度样点的位置可以由当前亮度块的左上(或中心、或右下)样点的位置和当前块的运动矢量导出,称为参考帧中的对应亮度样点。[0385]1)在一个示例中,整数运动矢量(integermotionvector)可用于推导参考帧中的对应亮度样点。在一个示例中,与一个块相关联的运动矢量可以向零舍入(roundedtowardzero),或者从零舍入(roundedawayfromzero)以导出整数运动矢量。[0386]2)可替代地,分数运动矢量(fractionalmotionvector)可用于推导参考帧中的对应亮度样点,使得可能需要插值过程来导出分数参考样点。[0387]iii.可替代地,参考亮度样点的位置可以由当前亮度块的左上(或中心,或右下)样点的位置导出。[0388]iv.可替代地,参考帧中一些预定义位置处的多个对应亮度样点可以被选取来计算色度残差缩放因子。[0389]c)在一个示例中,多个参考亮度样点的中值或平均值可用于推导色度残差缩放因子。[0390]d)在一个示例中,预定义参考帧中的参考亮度样点可用于推导色度残差缩放因子。[0391]i.在一个示例中,预定义参考帧可以是参考图片列表0的参考索引等于0的参考帧。[0392]ii.可替代地,用于预定义参考帧的参考索引和/或参考图片列表可以在序列/图片/片组/条带/片/ctu行/视频单元级中信令通知。[0393]iii.可替代地,可以导出多个参考帧中的参考亮度样点,并且可以利用平均或加权平均值来获得色度残差缩放因子。[0394]2.提出是否以及如何在lmcs模式中从亮度样点中导出色度残差缩放因子可能取决于当前块是否应用双向预测。[0395]a)在一个示例中,单独为每个预测方向导出色度残差缩放因子。[0396]3.提出是否以及如何在lmcs模式中从亮度样点导出色度残差缩放因子可以取决于当前块是否应用基于子块的预测。[0397]a)在一个示例中,基于子块的预测是仿射预测;[0398]b)在一个示例中,基于子块的预测是可选时域运动矢量预测(alternativetemporalmotionvectorprediction,atmvp)。[0399]c)在一个示例中,色度残差缩放因子是针对每个子块单独导出的。[0400]d)在一个示例中,即使色度残差缩放因子是由子块预测的,也为整个块导出色度残差缩放因子。[0401]i.在一个示例中,一个选择的子块(例如,左上子块)的运动矢量可用于标识当前块的参考样点,如项目符号1中所述。[0402]4.提出用于推导色度残差缩放因子的亮度预测值可以是中间亮度预测值,而不是最终亮度预测值。[0403]a)在一个示例中,双向光流处理(bi‑directionalopticalflow,bdof,也称为bio)的过程之前的亮度预测值可以用于推导色度残差缩放因子。[0404]b)在一个示例中,解码器侧运动矢量细化(decoder‑sidemotionvectorrefinement,dmvr)的过程之前的亮度预测值可用于推导色度残差缩放因子。[0405]c)在一个示例中,在lic的过程之前的亮度预测值可以用于推导色度残差缩放因子。[0406]d)在一个示例中,jvet‑n0236中提出的预测细化光流(predictionrefinementopticalflow,prof)的过程之前的亮度预测值可以用于推导色度残差缩放因子。[0407]5.中间运动矢量可用于标识参考样点。[0408]a)在一个示例中,在bdof或/和dmvr或/和其他dmvd方法的过程之前的运动矢量可以用于标识参考样点。[0409]b)在一个示例中,jvet‑n0236中提出的预测细化光流(prof)的过程之前的运动矢量可用于标识参考样点。[0410]6.在当前块以帧间模式编解码时,上述方法可以适用。[0411]7.提出对于ibc编解码的块,当前帧的参考块中的一个或多个参考样点可以用于推导lmcs模式中的色度残差缩放因子。当块被ibc编解码时,术语“运动矢量”也可以被称为“块矢量”,其中参考图片被设置为当前图片。[0412]a)在一个示例中,参考样点属于参考块,该参考块在当前图片中,并且具有与当前块相同的宽度和高度。参考样点的位置可以被计算为其对应样点的位置加上运动矢量。[0413]b)在一个示例中,参考亮度样点的位置可以通过将当前亮度块的左上(或中心,或右下)样点的位置加上运动矢量来导出。[0414]c)可替代地,参考亮度样点的位置可以通过将当前亮度块的左上(或中心,或右下)样点的位置加上当前块的块矢量来导出。[0415]d)可替代地,在当前亮度块的参考区域中的一些预定义位置处的多个对应亮度样点可以被挑选以计算色度残差缩放因子。[0416]e)在一个示例中,可以用函数来计算多个对应亮度样点,以导出色度残差缩放因子。[0417]i.例如,可以计算多个对应亮度样点的中值或平均值,以导出色度残差缩放因子。[0418]f)在一个示例中,参考样点的强度可以在用于推导色度残差缩放因子之前被转换到整形域。[0419]i.可替代地,参考样点的强度可以在用于推导色度残差缩放因子之前被转换到原始域。[0420]8.提出可以使用位于当前帧中当前亮度块的标识的(一个或多个)位置的一个或多个预测/重构的样点来导出lmcs模式中当前色度块的色度残差缩放因子。[0421]a)在一个示例中,如果当前块是帧间编解码的,则位于当前亮度块的中心的亮度预测(或重构)样点可以被挑选以导出色度残差缩放因子。[0422]b)在一个示例中,可以选取第一mxn个亮度预测(或重构)样点的平均值来导出色度残差缩放因子,其中mxn可以小于并置亮度块尺寸widthxheight。[0423]9.提出了用于计算cclm模型的过程的整个或部分可以用于lmcs模式中当前色度块的色度残差缩放因子推导。[0424]a)在一个示例中,在cclm模型参数推导过程中,位于并置亮度块的临近亮度样点的标识的位置的参考样点可用于推导色度残差缩放因子。[0425]i.在一个示例中,可以直接使用那些参考样点。[0426]ii.可替代地,可以对那些参考样点应用下采样,并且可以应用下采样的参考样点。[0427]b)在一个示例中,为cclm模型计算选择的s个参考样点中的k个可以用于lmcs模式中的色度残差缩放因子推导。例如,k等于1,s等于4。[0428]c)在一个示例中,在cclm模式中,并置亮度块的参考样点的平均/最小/最大值可以用于lmcs模式中的色度残差缩放因子推导。[0429]10.如何选择样点以导出色度残差缩放因子可以取决于当前块的编解码的信息。[0430]a)编解码的信息可以包括qp、编解码模式、poc、帧内预测模式、运动信息等。[0431]b)在一个示例中,对于ibc编解码或非ibc编解码的块,选择样点的方式可能不同。[0432]c)在一个示例中,基于参考图片信息,诸如参考图片和当前图片之间的poc距离,选择样点的方式可以不同。[0433]11.提出色度残差缩放因子和/或cclm模型计算可以依赖于覆盖并置亮度块的左上样点的对应亮度块的临近样点。在本发明中,“编解码块”可以指在hevc规范或vvc工作草案中规定的视频编解码区域,诸如cu/tu/pu。[0434]a)“对应亮度编解码块”可以被定义为覆盖并置亮度编解码块的左上位置的编解码块。[0435]i.图5示出了一个示例,其中对于双树情况下的帧内编解码的色度块,色度分量的ctu分割可以不同于亮度分量的ctu分割。首先,检索覆盖当前色度块的并置亮度块的左上样点的“对应亮度编解码块”。然后,通过使用“对应亮度编解码块”的块尺寸信息,可以导出“对应亮度编解码块”的左上样点,覆盖并置亮度块的左上样点的“对应亮度编解码块”的左上亮度样点位于(x=32,y=16)。[0436]b)在一个示例中,可能需要块尺寸/分割/位置/协调来导出覆盖并置亮度编解码块的左上样点的“对应亮度编解码块”的位置。[0437]i.在一个示例中,可以为特定颜色分量(诸如亮度分量)的每个块存储块尺寸、和/或块分割、和/或块协调。[0438]ii.在一个示例中,“对应亮度编解码块”和当前块可以总是在相同ctu或ctu行内,因此行缓冲器中可能没有块尺寸/分割/位置/协调的存储。[0439]c)在一个示例中,不在“对应亮度编解码块”中的重构的样点可以用于推导色度残差缩放因子和/或cclm的模型计算。[0440]i.在一个示例中,与“对应亮度编解码块”相邻的重构的样点可用于推导色度残差缩放因子和/或cclm模型计算。[0441]1)在一个示例中,位于“对应亮度编解码块”的左侧临近列和/或上方临近行的n个样点可用于推导色度残差缩放因子和/或cclm的模型计算,其中n=1…2w 2h,w和h是“对应亮度编解码块”的宽度和高度。[0442]a)假设“对应亮度编解码块”的左上样点是(xcb,ycb),那么在一个示例中,上述临近亮度样点可以位于(xcb w/2,ycb‑1),或者(xcb‑1,ycb‑1)。在另一个示例中,左临近亮度样点可以位于(xcb w‑1,ycb‑1)。[0443]b)在一个示例中,临近样点的位置可以是固定的,和/或以预定义的检查顺序。[0444]2)在一个示例中,可以选择n个临近样点中的1个来导出色度残差缩放因子和/或cclm的模型计算。假设n=3,并且三个临近样点(xcb‑1,ycb‑h‑1),(xcb w/2,ycb‑1),(xcb‑1,ycb‑1)的检查顺序,则可以选择检查列表中的第一个可用的临近样点来导出色度残差缩放因子。[0445]3)在一个示例中,位于“对应亮度编解码块”的左侧临近列和/或上方临近行的n个样点的中值或平均值可用于推导色度残差缩放因子和/或cclm的模型计算,其中n=1…2w 2h,w和h是“对应亮度编解码块”的宽度和高度。[0446]d)在一个示例中,是否执行色度残差缩放可以取决于对应亮度块的“可用的”临近样点。[0447]i.在一个示例中,临近样点的“可用性”可以取决于当前块/子块的编码模式或/和临近样点的编码模式。[0448]1)在一个示例中,对于以帧间模式编解码的块,以帧内模式或/和ibc模式或/和ciip模式或/和lic模式编解码的临近样点可以被认为是“不可用的”。[0449]2)在一个示例中,对于以帧间模式编解码的块,临近样点采用扩散滤波器或/和双边滤波器或/和哈达玛变换滤波器(hadamardtransformfilter)可被视为“不可用”。[0450]ii.在一个示例中,临近样点的“可用性”可以取决于当前图片/片/片组/vpdu/条带的宽度和/或高度。[0451]1)在一个示例中,如果临近块位于当前图片之外,则它被视为“不可用”。[0452]iii.在一个示例中,当没有“可用的”临近样点时,可以不允许色度残差缩放。[0453]iv.在一个示例中,当“可用的”临近样点的数量小于k(k>=1)时,可以不允许色度残差缩放。[0454]v.可替代地,不可用的临近样点可以用默认的固定值、填充(padding)或替换来填补(fill),从而可以总是应用色度残差缩放。[0455]1)在一个示例中,如果临近样点不可用,则可以用1<<(bitdepth‑1)填补,其中bitdepth指定亮度/色度分量的样点的位深度。[0456]2)可替代地,如果临近样点不可用,则它可以由来自位于左/右/上/下临近的周围样点的填充来填补。[0457]3)可替代地,如果临近样点不可用,则它可以以预定义的检查顺序被第一可用的相邻样点替代。[0458]4)可替代地,如果临近样点不可用,则可以用预定义的滤波的/映射的值(例如,1<<(bitdepth–1的滤波的/映射的值),其中bitdepth指定亮度/色度分量的样点的位深度)来填补它。[0459]a)在一个示例中,滤波/映射过程可以是lmcs的正向映射的lut索引。[0460]e)在一个示例中,是否以及如何执行色度残差缩放可以取决于当前块的编解码模式和/或临近块的编解码模式。[0461]i.“当前块”可以指当前色度块,或者它可以指并置亮度块,或者覆盖并置色度块的至少一个样点的对应亮度块。“临近块”(相邻或不相邻)可以指与当前色度块临近的色度块,或者它们可以指与当前亮度块临近的亮度块。[0462]ii.在一个示例中,可以利用一个亮度临近块的编解码模式,其覆盖相对于当前块的左上坐标的给定位置,诸如(‑1,‑1)。[0463]iii.在一个示例中,可以利用覆盖多个位置的多个临近块的编解码模式,诸如相对于当前块的左上坐标的(x,‑1)(例如,其中x为0..块的宽度减1),和/或相对于当前块的左上坐标的(‑1,y)(例如,其中y为‑1...块的高度减1)。[0464]iv.在一个示例中,如果一个临近块的重构需要访问当前条带/条带组中的样点,诸如它是x编解码的,则色度残差缩放被禁用。[0465]1)例如,模式x可以是帧内模式;[0466]2)例如,模式x可以是ciip模式;[0467]3)例如,模式x可以是ibc模式;[0468]4)在一个示例中,如果当前块是帧间编解码的而不是ciip编解码的,并且与对应亮度块临近的临近块是用模式x编解码的,则色度残差缩放被禁用。[0469]v.在一个示例中,如果一个临近块的重构需要访问当前条带/片组中的样点,诸如它是x编解码的,则可以使用默认值来导出色度残差缩放因子。[0470]1)例如,模式x可以是帧内模式;[0471]2)例如,模式x可以是ciip模式;[0472]3)例如,模式x可以是ibc模式;[0473]4)在一个示例中,如果当前块是帧间编解码的而不是ciip编解码的,并且对应亮度块的临近块是用模式x编解码的,则可以使用默认值来导出色度残差缩放因子。[0474]5)在一个示例中,默认值可以取决于亮度/色度样点的位深度。[0475]6)在一个示例中,默认值可以被设置为1<<(bitdepth‑1)的滤波的/映射的值,其中bitdepth指定亮度/色度分量的样点的位深度。在一个示例中,滤波/映射过程可以是lmcs的正向映射的lut索引。[0476]f)在一个示例中,临近“对应亮度编解码块”的滤波的/映射的重构的样点可以用于推导色度残差缩放因子和/或cclm的模型计算。[0477]i.在一个示例中,滤波/映射过程可以包括帧内块的参考平滑滤波、诸如双边滤波的后滤波、基于哈达玛(hadamard)变换的滤波、整形器域的正向映射等。[0478]12.提出使用固定值来导出当前条带/片组中色度块(诸如cu或tu)数量的色度残差缩放因子。[0479]a)在一个示例中,用于n个色度块的色度残差缩放因子可以由固定值导出,其中n是1,即当前片/片组中色度块的总数。[0480]b)在一个示例中,可以使用固定值来找到该值所属的分段线性模型的索引,然后可以根据导出的分段索引来计算色度残差缩放因子。在一个示例中,固定值可以取决于亮度样点的内部位深度。[0481]c)在一个示例中,固定值可以直接用于表示色度残差缩放因子。[0482]d)在一个示例中,固定值和/或固定色度残差缩放因子可以取决于块的图片/条带/片组类型(例如,i或p或b条带)和/或编解码模式(例如,帧内模式或帧间模式)。[0483]e)在一个示例中,对于不同的图片/条带/片组/片,固定值可以不同。[0484]f)在一个示例中,固定色度残差缩放因子可以直接用于缩放lmcs中的色度残差。[0485]i.在一个示例中,固定色度残差缩放因子可以在视频单元(诸如dps/sps/pps/vps/aps/片头/片组头)中信令通知。[0486]ii.在一个示例中,图片/条带/片组/片的固定色度残差缩放因子可以取决于图片/条带/条带组/片中亮度样点整形的映射函数(例如分段线性函数)。[0487]1)在一个示例中,固定色度残差缩放因子可以取决于jvet‑m1001‑v7中定义的数组invscalecoeff[]和/或数组scalecoeff[]。[0488]a)例如,由图片/条带/片组/片的固定色度残差缩放因子所依赖的数组invscalecoeff[]和/或数组scalecoeff[]可用于对图片/条带/片组/片中的亮度样点进行整形。[0489]2)在一个示例中,固定色度残差缩放因子可以由用于整形亮度样点的分段线性函数的所有缩放系数中的最小/最大/中值/平均值导出。[0490]a)例如,固定色度残差缩放因子可以由invscalecoeff[i]的最小/最大/中值/平均值导出,其中i是从最小索引(诸如jvet‑m1001‑v7中的lmcs_min_bin_idx)到最大索引(诸如jvet‑m1001‑v7中的lmcsmaxbinidx)。[0491]i.例如,固定色度残差缩放因子可以等于invscalecoeff[i]的最小/最大/中值/平均值,其中i是从最小索引(例如jvet‑m1001‑v7中定义的lmcs_min_bin_idx)到最大索引(例如jvet‑m1001‑v7中定义的lmcsmaxbinidx)。[0492]ii.可替代地,固定色度残差缩放因子可以由invscalecoeff[i]的最小/最大/中值/平均值导出,其中i是从最小索引(诸如0)到最大索引(诸如15),并且jvet‑m1001‑v7中定义的lmcscw[i]不等于0。[0493]g)在一个示例中,固定值可以用于表示分段函数索引,以导出色度缩放因子。[0494]i.在一个示例中,固定值可以在视频单元(诸如dps/sps/pps/vps/aps/条带头/片组头)中信令通知。[0495]ii.在一个示例中,固定值可以表示亮度样点强度,其可以用于标识分段函数索引,并且所标识的分段函数索引进一步用于找到色度缩放因子。在一个示例中,固定值可以等于0,或者(1<<lumabitdepth)–1,或者1<<(lumabitdepth‑1),其中lumabitdepth表示亮度样点的位深度。[0496]1)在一个示例中,如果固定值在分段函数的输入范围内,则分段函数被标识。[0497]2)在一个示例中,如果固定值在分段函数的输出范围内,则分段函数被标识。[0498]iii.在一个示例中,固定值可以表示固定分段函数索引,其可以用于找到色度缩放因子。[0499]1)在一个示例中,固定值可以等于在lmcs构建过程中使用的最小二进制位索引(例如,lmcs_min_bin_idx),[0500]2)在一个示例中,固定值可以等于在lmcs构建过程中使用的最大二进制位索引(例如,lmcsmaxbinidx)。[0501]3)在一个示例中,固定值可以等于lmcs构建过程中使用的最大二进制位索引和最小二进制位索引的平均值。[0502]对是否应用色度残差缩放和/或cclm的限制[0503]13.提出是否应用色度残差缩放或cclm取决于对应和/或并置亮度块的分割。[0504]a)在一个示例中,是否启用或禁用具有跨分量信息的工具可以取决于并置亮度(例如,y或g分量)块内的cu/pu/tu的数量。[0505]i.在一个示例中,如果并置亮度(例如,y或g分量)块内的cu/pu/tu的数量超过数量阈值,则可以禁用这些工具。[0506]ii.可替代地,是否启用或禁用具有跨分量信息的工具可以取决于分割树的深度。[0507]1)在一个示例中,如果并置亮度块内的cu的最大(或最小或平均或其他变化)四叉树深度超过阈值,则可以禁用这些工具。[0508]2)在一个示例中,如果并置亮度块内的cu的最大(或最小或平均或其他变化)bt和/或tt深度超过阈值,则可以禁用这些工具。[0509]iii.可替代地,此外,是否启用或禁用具有跨分量信息的工具可以取决于色度块的块维度。[0510]iv.可替代地,此外,是否启用或禁用具有跨分量信息的工具可能取决于并置亮度是否跨多个vpdu/预定义区域尺寸。[0511]v.上述讨论中的阈值可以是固定数字,或者可以信令通知,或者可以取决于标准简档(profile)/级/层级。[0512]b)在一个示例中,如果当前色度块的并置亮度块被多个分割划分(例如,在图7中),则可以禁用色度残差缩放和/或cclm。[0513]i.可替代地,如果当前色度块的并置亮度块没有被划分(例如,在一个cu/tu/pu内),则可以应用色度残差缩放和/或cclm。[0514]c)在一个示例中,如果当前色度块的并置亮度块包含多于m个cu/pu/tu,则色度残差缩放和/或cclm可以被禁用。[0515]i.在一个示例中,m可以是大于1整数。[0516]ii.在一个示例中,m可以取决于它是cclm还是色度残差缩放过程。[0517]iii.m可以是固定的数字,或者可以信令通知,或者可以取决于标准简档/级/层级[0518]d)并置亮度块内的上述cu可以被解释为并置亮度块内的所有cu。可替代地,并置亮度块内的cu可被解释为并置亮度块内的部分cu,诸如沿并置亮度块边界的cu。[0519]e)并置亮度块内的上述cu可以被解释为子cu或子块。[0520]i.例如,子cu或子块可以用于atmvp中;[0521]ii.例如,子cu或子块可以用于仿射预测中;[0522]iii.例如,子cu或子块可以用于帧内子分割(intrasub‑partition,isp)模式中。[0523]f)在一个示例中,如果覆盖并置亮度块的左上亮度样点的cu/pu/tu大于预定义的亮度块尺寸,则可以禁用色度残差缩放和/或cclm。[0524]i.在图8中描绘了一个示例,并置亮度块是3232,但是它在尺寸等于64x64的对应亮度块内,那么如果预定义的亮度块尺寸是32x64,则在这种情况下禁用色度残差缩放和/或cclm。[0525]ii.可替代地,如果当前色度块的并置没有被划分,并且覆盖并置亮度块的左上亮度样点的对应亮度块被完全包括在预定义的边界框内,则可以应用当前色度块的色度残差缩放和/或cclm。如图9所示,边界框可以被定义为具有宽度w和高度h的矩形,由wxh表示,其中对应亮度块具有宽度32和高度64,并且边界框具有宽度40和高度70。[0526]1)在一个示例中,边界框的尺寸wxh可以根据ctu宽度和/或高度来定义,或者根据cu宽度和/或高度来定义,或者根据任意值来定义。[0527]g)在一个示例中,如果当前色度块的并置亮度块被多个分割划分,则只有并置亮度块的预定义分割内的预测样点(或重构的样点)被用于推导lmcs模式中的色度残差缩放因子。[0528]i.在一个示例中,并置亮度块的第一分割中的所有预测样点(或重构的样点)的平均值被用于推导lmcs模式中的色度残差缩放因子。[0529]ii.可替代地,并置亮度块的第一分割中的左上预测样点(或重构的样点)用于推导lmcs模式中的色度残差缩放因子。[0530]iii.可替代地,并置亮度块的第一分割中的中心预测样点(或重构的样点)用于推导lmcs模式中的色度残差缩放因子。[0531]h)提出是否以及如何应用诸如cclm和lmcs的跨分量工具可以取决于覆盖并置亮度块的至少一个样点的一个或多个亮度cu的(一个或多个)编解码模式。[0532]i.例如,如果覆盖并置亮度块的至少一个样点的一个或多个亮度cu用仿射模式编解码,则跨分量工具被禁用;[0533]ii.例如,如果覆盖并置亮度块的至少一个样点的一个或多个亮度cu用双向预测编解码,则跨分量工具被禁用;[0534]iii.例如,如果覆盖并置亮度块的至少一个样点的一个或多个亮度cu用bdof编解码,则跨分量工具被禁用;[0535]iv.例如,如果覆盖并置亮度块的至少一个样点的一个或多个亮度cu用dmvr编解码,则跨分量工具被禁用;[0536]v.例如,如果用jvet‑n0217中提出的矩阵仿射预测模式对覆盖并置亮度块的至少一个样点的一个或多个亮度cu编解码,则跨分量工具被禁用;[0537]vi.例如,如果覆盖并置亮度块的至少一个样点的一个或多个亮度cu用帧间模式编解码,则跨分量工具被禁用;[0538]vii.例如,如果覆盖并置亮度块的至少一个样点的一个或多个亮度cu用isp模式编解码,则跨分量工具被禁用;[0539]viii.在一个示例中,“覆盖并置亮度块的至少一个样点的一个或多个亮度cu”可以指对应亮度块。[0540]i)当cclm/lmcs被禁用时,可以跳过cclm/lmcs的使用的指示的信令通知。[0541]j)在本公开中,cclm可以指cclm的任何变型模式,包括lm模式、lm‑t模式和lm‑l模式。[0542]14.提出是否以及如何应用诸如cclm和lmcs的跨分量工具可以在色度块的一部分上执行。[0543]a)在一个示例中,是否以及如何在色度子块级应用跨分量工具,诸如cclm和lmcs。[0544]i.在一个示例中,色度子块被定义为色度cu中的2×2或4×4块。[0545]ii.在一个示例中,对于色度子块,在当前色度cu的对应亮度编解码块覆盖子块的对应块的所有样点时,可以应用cclm。[0546]iii.在一个示例中,对于色度子块,在当前色度cu的对应亮度编解码块没有覆盖对应块的所有样点时,不应用cclm。[0547]iv.在一个示例中,cclm或lmcs的参数是针对每个色度子块导出的,因为将该子块视为色度cu。[0548]v.在一个示例中,当cclm或lmcs被应用于色度子块时,可以使用并置块的样点。[0549]15.提出是否以及如何应用诸如cclm的跨分量工具可以取决于块维度和/或分割信息和/或分割结构类型(例如,双树或单树)。[0550]a)在一个示例中,可以针对色度双树分割禁用cclm。[0551]b)在一个示例中,根据块维度,可以有条件地禁用cclm。[0552]i.在一个示例中,假设当前块维度是wb×hb,根据wb、hb和两个整数t1和t2之间的关系,可以禁用下面的cclm。[0553]1)在一个示例中,如果wb>=t1且hb>=t2,则可以禁用cclm。例如t1=t2=8。[0554]2)在一个示例中,如果wb*hb>=t1,则可以禁用cclm。例如t1=64。[0555]3)在一个示例中,如果min(wb,hb)>=t1,则可以禁用cclm。例如t1=8。[0556]4)在一个示例中,如果max(wb,hb)>=t1,则可以禁用cclm。例如t1=8。[0557]5)在一个示例中,如果wb<=t1且hb<=t2,则可以禁用cclm。例如t1=t2=16。[0558]6)在一个示例中,如果wb*hb<=t1,则可以禁用cclm。例如t1=4096。[0559]7)在一个示例中,如果min(wb,hb)<=t1,则可以禁用cclm。例如t1=64。[0560]8)在一个示例中,如果max(wb,hb)<=t1,则可以禁用cclm。例如t1=64。[0561]c)在一个示例中,cclm可能受到块维度和/或分割信息的限制。[0562]i.在一个示例中,对于维度为wb×hb的色度块,如果满足以下条件中的一个或多个,则禁用cclm。例如,wb=hb=32。在下面的项目符号中,并置亮度块维度可以是(sh×wb)×(sv×hb),其中sh和sv是缩放因子。例如,当颜色格式为4:2:0时,sh=sv=2。[0563]1)当前色度块位于水平划分的叶节点,并且并置亮度块位于垂直划分的叶节点[0564]a)在一个示例中,当前色度块用split_tt_hor模式划分,并且并置亮度块用split_tt_ver模式划分[0565]b)在一个示例中,当前色度块用split_tt_hor模式划分,并且并置亮度块用split_bt_ver模式划分[0566]c)在一个示例中,当前色度块用split_bt_hor模式划分,并且并置亮度块用split_tt_ver模式划分[0567]d)在一个示例中,当前色度块用split_bt_hor模式划分,并且并置亮度块用split_bt_ver模式划分[0568]2)当前色度块位于垂直划分的叶节点,并且并置亮度块位于水平划分的叶节点[0569]a)在一个示例中,当前色度块用split_tt_ver模式划分,并且并置亮度块用split_tt_hor模式划分[0570]b)在一个示例中,当前色度块用split_tt_ver模式划分,并置亮度块用split_bt_hor模式划分[0571]c)在一个示例中,当前色度块用split_bt_ver模式划分,并置亮度块用split_tt_hor模式划分[0572]d)在一个示例中,当前色度块用split_bt_ver模式划分,并置亮度块用split_bt_hor模式划分[0573]d)在一个示例中,如果针对块禁用了cclm,则与cclm相关的语法元素可能不会在该块中信令通知。[0574]i.可替代地,如果针对块禁用了cclm,则可以信令通知与cclm相关的语法元素,但是cclm模式不应该用在一致性比特流中的块中。[0575]ii.可替代地,如果针对块禁用了cclm,则可以信令通知与cclm相关的语法元素。如果信令通知cclm模式,可以应用默认模式,诸如平面或dc。[0576]色度残差缩放在lmcs模式中的适用性[0577]16.提出除了jvet‑m1001中指定的片组头之外,还可以在其他语法级信令通知是否可以应用与亮度相关的色度残差缩放。[0578]a)例如,可以在序列级(例如,在sps中)、在图片级(例如,在pps或图片头中)、在条带级(例如,在条带头中)、在片级、在ctu行级处、在ctu级、在cu级信令通知chroma_residual_scale_flag。chroma_residual_scale_flag等于1表示为信令通知的语法级以下的cu启用了色度残差缩放。chroma_residual_scale_flag等于0表示未启用信令通知的语法级以下的色度残差缩放。当不存在chroma_residual_scale_flag时,推断它等于0。[0579]b)在一个示例中,如果色度残差缩放限制在分割节点级。然后,对于分割节点所覆盖的cu,可以不信令通知chroma_residual_scale_flag并将其推断为0。在一个示例中,分割节点可以是ctu(ctu被视为四叉树分割的根节点)。[0580]c)在一个示例中,如果对于等于或小于32x32的色度块尺寸限制了色度残差缩放,则对于等于或小于32x32的色度块尺寸,可能不会信令通知chroma_residual_scale_flag并将其推断为0。[0581]cclm模式的适用性[0582]17.提出除了jvet‑m1001中规定的sps级之外,是否可以应用cclm模式可以在其他语法级信令通知。[0583]a)例如,可以在图片级(例如,在pps或图片头中)、条带级(例如,在条带头中)、片组级(例如,在条带组头中)、片级、ctu行级、ctu级、cu级信令通知它。[0584]b)在一个示例中,如果不能应用cclm,则cclm_flag可能不会被信令通知并推断为0。[0585]i.在一个示例中,如果色度残差缩放对于等于或小于8×8的色度块尺寸是受约束的,则对于等于或小于8×8的色度块尺寸,cclm_flag可以不被信令通知并被推断为0。[0586]帧内模式和帧间模式的色度残差缩放因子推导的统一[0587]18.色度残差缩放因子可以在对亮度块进行编码/解码之后导出,并且可以被存储并用于随后的编解码的块。[0588]a)在一个示例中,亮度块中的某些预测样点或/和中间预测样点或/和重构的样点或/和重构的样点在环路滤波之前(例如,在由去块滤波器或/和sao滤波器或/和双边滤波器或/和哈达玛变换滤波器或/和alf滤波器处理之前)可用于推导色度残差缩放因子。[0589]i.例如,亮度块的底行或/和右列中的部分样点可以用于色度残差缩放因子的推导。[0590]b)在单个树的情况下,当编码以帧内模式或/和ibc模式或/和帧间模式编解码的块时,临近块的导出色度残差缩放因子可用于推导当前块的缩放因子。[0591]i.在一个示例中,可以按顺序检查某些临近块,并且第一可用色度残差缩放因子可以用于当前块。[0592]ii.在一个示例中,可以按顺序检查某些临近块,并且可以基于前k个可用的临近色度残差缩放因子来导出缩放因子。[0593]iii.在一个示例中,对于以帧间模式和/或ciip模式编解码的块,如果临近块以帧内模式和/或ibc模式和/或ciip模式编解码,则临近块的色度残差缩放因子可以被认为是“不可用的”。[0594]iv.在一个示例中,可以按照左(或左上)‑>上(或右上)的顺序检查临近块。[0595]1)可替代地,可以按照上(或右上)‑>左(或左上)的顺序检查临近块。[0596]c)在单独的树的情况下,当编码色度块时,可以首先标识对应亮度块。然后,其(例如,对应亮度块)临近块的导出色度残差缩放因子可用于推导当前块的缩放因子。[0597]i.在一个示例中,可以按顺序检查某些临近块,并且第一可用色度残差缩放因子可以用于当前块。[0598]ii.在一个示例中,可以按顺序检查某些临近块,并且可以基于前k个可用的临近色度残差缩放因子来导出缩放因子。[0599]d)可以以预定顺序检查临近块。[0600]i.在一个示例中,可以按照左(或左上)‑>上(或右上)的顺序检查临近块[0601]ii.在一个示例中,可以按照上(或右上)‑>左(或左上)的顺序检查临近块。[0602]iii.在一个示例中,可以按照左下‑>左‑>右上‑>左上的顺序检查临近块。[0603]iv.在一个示例中,可以按照左‑>上‑>右上‑>左下‑>左上的顺序检查临近块。[0604]e)在一个示例中,是否应用色度残差缩放可以取决于临近块的“可用性”。[0605]i.在一个示例中,当没有“可用的”临近块时,色度残差缩放可能被禁用。[0606]ii.在一个示例中,当“可用的”临近块的数量小于k(k>=1)时,色度残差缩放可能被禁用。[0607]iii.可替代地,当没有“可用的”临近块时,色度残差缩放因子可以由默认值导出。[0608]1)在一个示例中,默认值1<<(bitdepth‑1)可用于推导色度残差缩放因子。[0609]f)在一个示例中,当前色度块的色度残差缩放因子可以被存储并用于随后的编解码的块。[0610]g)在一个示例中,色度残差缩放因子的存储可以从行缓冲器中移除。[0611]i.在一个示例中,在当前块和要被访问的临近(相邻或不相邻)块在不同的区域中时,其色度残差缩放因子可以被认为是“不可用的”,并且可以不用于推导当前块的色度残差缩放因子。[0612]1)区域可以是条带、片、片组、ctu行或ctu。[0613]2)可替代地,在这种情况下,其色度残差缩放因子可以被认为是默认值。[0614]3)可替代地,在这种情况下不能应用色度残差缩放。[0615]h)在一个示例中,当前色度块的色度残差缩放因子可以被动态更新,并且可以被保存在历史表中,用于后续块的缩放因子推导。[0616]i.历史表可以以fifo(first‑infirst‑out,先进先出)的方式更新。[0617]ii.在对色度块进行解码/编码之后,可以导出色度残差缩放因子(例如,根据亮度值),并且可以将其存储在fifo历史表中。[0618]iii.在一个示例中,fifo历史表最多可以包含1个条目。在这种情况下,最新解码的块的导出的色度残差缩放因子被用于当前块。[0619]iv.在一个示例中,在对图片、和/或条带、和/或片组、和/或片、和/或ctu行和/或ctu进行编码/解码之前,刷新历史表。[0620]1)在一个示例中,当历史表被刷新时,默认色度残差缩放因子可以被放入历史表中。[0621]2)在一个示例中,当fifo历史表被刷新时,历史表被设置为空。[0622]5.实施例[0623]5.1实施例#1[0624]下面讨论的示例性实施例用于第4节第11项中的说明性方法。[0625]新添加的部分以下划线和粗体显示,并且从vvc工作草案中删除的部分以粗体大写显示。修改基于最新的vvc工作草案(jvet‑m1007‑v7)和jvet‑n220‑v3中的新采用。[0626]8.7.5.4用于色度样点的亮度相关的色度残差缩放过程的图像重构[0627]该过程的输入包括:[0628]‑当前变换块的左上样点相对于当前图片的左上样点的位置(xcurr,ycurr),[0629]‑指定变换块宽度的变量ncurrsw,[0630]‑指定变换块高度的变量ncurrsh,[0631]‑(ncurrsw)x(ncurrsh)数组predsamples,指定当前块的色度预测样点,[0632]‑(ncurrsw)x(ncurrsh)数组recsamples,指定当前块的色度残差样点。[0633]这个过程的输出是重构的色度图片样点数组recsamples。[0634]当前亮度位置(xtby,ytby)设置为(xcurr<<1,ycurr<<1)[0635]对应亮度位置(xtbcorry、ytbcorry)推导如下:[0636]‑如果tile_group_type等于2(i片组),且qtbtt_dual_tree_intra_flag等于1,则对应亮度位置(xtbcorry,ytbcorry)被设置为覆盖当前亮度位置(xtby,ytby)的左上样点的对应cu的左上样点位置。[0637]‑否则,对应亮度位置(xtbcorry,ytbcorry)将被设置为当前亮度位置(xtby,ytby)[0638]变量availl的推导如下:[0639]‑调用第6.4节中规定的块的左临近样点推导过程的可用性[ed.(bb):临近块可用性检查过程tbd],以对应亮度位置(xtbcorry,ytbcorry)和临近亮度位置(xtbcorry‑1,ytbcorry)作为输入,并且输出分配给availl。[0640]当availl等于true时,x=1,y=0的左上临近亮度样点py[x][y]被设置为等于在位置(xtbcorry x,ytbcorry y)进行去块滤波器过程之前的重构的亮度样点。x=1,y=1的临近左上亮度样点pymap[x][y]的映射值推导如下:[0641]idxy=py[x][y]>>log2(orgcw)[0642]pymap[x][y]=clip1y(lmcspivot[idxy][0643] (scalecoeff[idxy]*(py[x][y]—inputpivot[idxy]) (1<<10))>>11)[0644]对于i=0..ncurrsw‑1,j=0..ncurrsh–1,重构的色度图片样点recsample推导如下:[0645]–如果tile_group_chroma_residual_scale_flag等于0或ncurrsw*ncurrsh小于或等于4,则以下情况适用:[0646]recsamples[xcurr i][ycurr j]=clip1c(predsamples[i][j] ressamples[i][j])(8‑1063)[0647]–如果以下条件之一为真,则将recsamples[xcurr i][ycurr j]设置为等于clip1c(predsamples[i][j] ressamples[i][j])[0648]–tile_group_chroma_residual_scale_flag等于0[0649]–ncurrsw*ncurrsh小于或等于4[0650]–availl等于假(false)[0651]–cupredmode[xcurr][ycurr]等于mode_inter,ciip_flag[xcurr][ycurr]等于0,而cupredmode[xtbcorry‑1][ytbcorry]与mode_intra相等[0652]–cupredmode[xcurr][ycurr]等于mode_inter,ciip_flag[xcurr][ycurr]等于0,而cupredmode[xtbcorry‑1][ytbcorry]与mode_ibc相等[0653]–cupredmode[xcurr][ycurr]等于mode_inter并且ciip_flag[xcurr][ycurr]等于0,并且cupredmode[xtbcorry‑1][ytbcorry]与mode_inter相等,而ciip_flag[xcurr][ycurr]1个[0654]–否则(tile_group_chroma_residual_scale_flag等于1并且ncurrsw*ncurrsh大于4),适用以下内容:[0655]–对于变量varscale的推导,适用以下有序步骤:[0656]1.变量invavgluma的推导如下:[0657][0658]变量idxyinv是通过调用第8.7.5.3.2节中指定的分段函数索引的标识而推导的,其中invavgluma作为输入,并且idxyinv作为输出。[0659]2.变量varscale的推导如下:[0660]varscale=chromascalecoeff[idxyinv]ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑1065)[0661]–recsamples的推导如下:[0662]–如果tu_cbf_cidx[xcurr][ycurr]等于1,则适用以下内容:[0663]ressamples[i][j]=clip3(‑(1<<bitdepthc),[0664]1<<bitdepthc‑1,ressamples[i][j])[0665]recsamples[xcurr i][ycurr j]=clipcidx1(predsamples[i][j] sign(ressamples[i][j])*((abs(ressamples[i][j])*varscale (1<<10))>>11))ꢀꢀꢀꢀꢀ(8‑1066)[0666]–否则(tu_cbf_cidx[xcurr][ycurr]等于0),适用以下内容:[0667]recsamples[xcurr i][ycurr j]=clipcidx1(predsamples[i][j])(8‑1067)[0668]5.2实施例#2[0669]下面的实施例是针对本发明描述的第11项中的方法。[0670]新添加的部分以下划线和粗体显示,从vvc工作草案中删除的部分以粗体大写显示。修改基于最新的vvc工作草案(jvet‑m1007‑v7)和jvet‑n220‑v3中的新采用。[0671]实施例#2和#1之间的区别如下:[0672]–检查多个临近亮度样点,以导出色度残差缩放因子。[0673]–当临近亮度样点不可用时,或者当临近亮度以intra/ciip/ibc模式编解码,而当前亮度以inter模式编解码时,#2使用为色度残差缩放因子推导的默认值。[0674]8.7.5.4用于色度样点的亮度相关的色度残差缩放过程的图像重构[0675]该过程的输入包括:[0676]‑当前变换块的左上样点相对于当前图片的左上样点的位置(xcurr,ycurr),[0677]‑指定变换块宽度的变量ncurrsw,[0678]‑指定变换块高度的变量ncurrsh,[0679]‑(ncurrsw)x(ncurrsh)数组predsamples,指定当前块的色度预测样点,[0680]‑(ncurrsw)x(ncurrsh)数组recsamples,指定当前块的色度残差样点。[0681]这个过程的输出是重构的色度图片样点数组recsamples。[0682]当前亮度位置(xtby,ytby)设置为(xcurr<<1,ycurr<<1)[0683]对应亮度位置(xtbcorry、ytbcorry)推导如下:[0684]‑如果tile_group_type等于2(i片组),且qtbtt_dual_tree_intra_flag等于1,则对应亮度位置(xtbcorry,ytbcorry)被设置为覆盖当前亮度位置(xtby,ytby)的左上样点的对应cu的左上样点位置。[0685]‑否则,对应亮度位置(xtbcorry,ytbcorry)将被设置为当前亮度位置(xtby,ytby)[0686]变量availtl的推导如下:[0687]–调用第6.4节中规定的块的上方临近样点推导过程的可用性[ed.(bb):临近块可用性检查过程tbd]。以对应亮度位置(xtbcorry,ytbcorry)和临近亮度位置(xtbcorry,ytbcorry1)作为输入,并且输出分配给availt。[0688]numavailneigh设置为等于availtl availt。[0689]如果numavailneigh大于或等于1,则将x=‑1,0,y=‑1的临近亮度样点py[x][y]设置为等于在位置(xtbcorry x,ytbcorry y)进行去块滤波器过程之前的重构的亮度样点的平均值。临近亮度样点pyavg的平均值推导如下:[0690]pyavg=((availtl?py[‑1][‑1]:0) (availt?py[0][‑1]:0))>>(numavailneigh>1?1:0)[0691]否则,如果以下条件之一为真,则将pyavg设置为等于(1<<(1<<(bitdepthy‑1))。[0692]–availtl等于假[0693]–cupredmode[xcurr][ycurr]等于mode_inter,并且ciip_flag[xcurr][ycurr]等于0,并且cupredmode[xtbcorry‑1][ytbcorry–1]与mode_intra相等[0694]–cupredmode[xcurr][ycurr]等于mode_inter,ciip_flag[xcurr][ycurr]等于0,并且cupredmode[xtbcorry‑1][ytbcorry–1]与mode_ibc相等[0695]–cupredmode[xcurr][ycurr]等于mode_inter并且ciip_flag[xcurr][ycurr]等于0,并且cupredmode[xtbcorry‑1][ytbcorry–1]与mode_inter相等,并且ciip_flag[xcurr][ycurr等于1[0696]临近左上亮度样点的映射值pymapavg推导如下:[0697]idxy=pyavg>>log2(orgcw)[0698]pymapavg=clip1y(lmcspivot[idxy][0699] (scalecoeff[idxy]*(pyavg‑inputpivot[idxy]) (1<<10))>>11)[0700]对于i=0..ncurrsw‑1,j=0..ncurrsh‑1,重构的色度图片样点recsamples推导如下:[0701]–如果tile_group_chroma_residual_scale_flag等于0或ncurrsw*ncurrsh小于或等于4,则适用以下内容:[0702]recsamples[xcurr i][ycurr j]=clip1c(predsamples[i][j] ressamples[i][j])ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑1063)[0703]–否则(tile_group_chroma_residual_scale_flag等于1并且ncurrsw*ncurrsh大于4),适用以下内容:[0704]–对于变量varscale的推导,适用以下有序步骤:[0705]–变量invavgluma的推导如下:[0706][0707]变量idxyinv是通过调用第8.7.5.3.2节中指定的分段函数索引的标识而推导的,其中invavgluma作为输入,并且idxyinv作为输出。[0708]变量varscale的推导如下:[0709]varscale=chromascalecoeff[idxyinv]ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑1065)[0710]–recsamples的推导如下:[0711]–如果tu_cbf_cidx[xcurr][ycurr]等于1,则适用以下内容:[0712]ressamples[i][j]=clip3(‑(1<<bitdepthc),[0713]1<<bitdepthc‑1,ressamples[i][j])[0714]recsamples[xcurr i][ycurr j]=clipcidx1(predsamples[i][j] sign(ressamples[i][j])*((abs(ressamples[i][j])*varscale (1<<10))>>11))ꢀꢀꢀꢀꢀ(8‑1066)[0715]–否则(tu_cbf_cidx[xcurr][ycurr]等于0),适用以下内容:[0716]recsamples[xcurr i][ycurr j]=clipcidx1(predsamples[i][j])[0717]ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑1067)[0718]5.3实施例#3[0719]下面的实施例是针对发明描述的第12项中的方法。[0720]新添加的部分以粗体斜体突出显示,从vvc工作草案中删除的部分以大写粗体突出显示。修改基于最新的vvc工作草案(jvet‑m1007‑v7)和jvet‑n220‑v3中的新采用。[0721]8.7.5.4用于色度样点的亮度相关的色度残差缩放过程的图像重构[0722]该过程的输入包括:[0723]–当前变换块的左上样点相对于当前图片的左上样点的位置(xcurr,ycurr),[0724]‑指定变换块宽度的变量ncurrsw,[0725]‑指定变换块高度的变量ncurrsh,[0726]‑(ncurrsw)x(ncurrsh)数组predsamples,指定当前块的色度预测样点,[0727]‑(ncurrsw)x(ncurrsh)数组ressamples,指定当前块的色度残差样点。[0728]这个过程的输出是重构的色度图片样点数组recsamples。[0729]对于i=0..ncurrsw–1、j=0..ncurrsh‑1,重构的色度图片样点recsamples推导如下:[0730]–如果slice_chroma_residual_scale_flag等于0或ncurrsw*ncurrsh小于或等于4,则适用以下内容:[0731]recsamples[xcurr i][ycurr j]=clip1c(predsamples[i][j] ressamples[i][j])ꢀꢀꢀ(8‑1063)[0732]–否则(slice_chroma_residual_scale_flag等于1且ncurrsw*ncurrsh大于4),适用以下内容:[0733]–对于变量varscale的推导,适用以下有序步骤:[0734]1.变量invavgluma的推导如下:[0735][0736]2.变量idxyinv是通过调用第8.7.5.3.2节中规定的分段函数索引的标识导出的,其中invavgluma作为输入,idxyinv作为输出。[0737]3.变量varscale的推导如下:[0738]varscale=chromascalecoeff[idxyinvlmcs_min_bin_idx](8‑1064)[0739]–recsamples的推导如下:[0740]–如果tu_cbf_cidx[xcurr][ycurr]等于1,则适用以下内容:[0741]ressamples[i][j]=clip3(‑(1<<bitdepthc),1<<bitdepthc‑1,ressamples[i][j])[0742][0743]recsamples[xcurr i][ycurr j]=clipcidx1(predsamples[i][j] sign(ressamples[i][j])*((abs(ressamples[i][j])*varscale (1<<10))>>11))ꢀꢀꢀꢀꢀꢀꢀꢀ(8‑1066)[0744]–否则(tu_cbf_cidx[xcurr][ycurr]等于0),适用以下内容:[0745]recsamples[xcurr i][ycurr j]=clipcidx1(predsamples[i][j])ꢀꢀꢀ(8‑1067)[0746]5.4实施例#4[0747]下面的实施例是针对发明描述的第12项中的方法。[0748]新添加的部分以粗体斜体突出显示,从vvc工作草案中删除的部分以大写粗体突出显示。修改基于最新的vvc工作草案(jvet‑m1007‑v7)和jvet‑n220‑v3中的新采用。[0749]8.7.5.4用于色度样点的亮度相关的色度残差缩放过程的图像重构[0750]该过程的输入包括:[0751]–当前变换块的左上样点相对于当前图片的左上样点的位置(xcurr,ycurr),[0752]‑指定变换块宽度的变量ncurrsw,[0753]‑‑指定变换块高度的变量ncurrsh,[0754]‑(ncurrsw)x(ncurrsh)数组predsamples,指定当前块的色度预测样点,[0755]‑(ncurrsw)x(ncurrsh)数组recsamples,指定当前块的色度残差样点。[0756]该过程的输出是重构的色度图片样点数组recsamples。[0757]对于i=0..ncurrsw‑1,j=0..ncurrsh‑1,重构的色度图片样点recsamples的计算如下:[0758]–如果slice_chroma_residual_scale_flag等于0或ncurrsw*ncurrsh小于或等于4,则适用以下内容:[0759]recsamples[xcurr i][ycurr j]=clip1c(predsamples[i][j] ressamples[i][j])(8‑1063)[0760]–否则(slice_chroma_residual_scale_flag等于1且ncurrsw*ncurrsh大于4),适用以下内容:[0761]–对于变量varscale的推导,适用以下有序步骤:[0762]1.变量invavgluma的推导如下:[0763][0764]invavgluma=0ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑1064)[0765]2.变量idxyinv是通过调用第8.7.5.3.2节中指定的分段函数索引的标识而推导的,其中invavgluma作为输入,并且idxyinv作为输出。[0766]3.变量varscale的推导如下:[0767]varscale=chromascalecoeff[idxyinv](8‑994)[0768]–recsamples的推导如下:[0769]–如果tu_cbf_cidx[xcurr][ycurr]等于1,则适用以下内容:[0770]ressamples[i][j]=clip3(‑(1<<bitdepthc),[0771]1<<bitdepthc‑1,ressamples[i][j])[0772]recsamples[xcurr i][ycurr j]=clipcidx1(predsamples[i][j] sign(ressamples[i][j])*((abs(ressamples[i][j])*varscale (1<<10))>>11))ꢀꢀꢀꢀꢀ(8‑1066)[0773]–否则(tu_cbf_cidx[xcurr][ycurr]等于0),适用以下内容:[0774]recsamples[xcurr i][ycurr j]=clipcidx1(predsamples[i][j])ꢀꢀꢀ(8‑1067)[0775]5.5实施方案#5[0776]下面的实施例用于本发明说明书的项目12中的方法。[0777]新添加的部分以粗斜体突出显示,vvc工作草案中已删除的部分以大写粗体突出显示。这些修改基于最新的vvc工作草案(jvet‑m1007‑v7)和jvet‑n220‑v3中的新采用。[0778]7.4.5.4具有色度缩放数据语义的亮度映射[0779]i=0…15的变量chromascalecoeff[i]的推导如下:[0780]if(lmcscw[i]==0)[0781]chromascalecoeff[i]=(1<<11)[0782]else{[0783]chromascalecoeff[i]=invscalecoeff[i][0784]}[0785]变量varscale的推导如下:[0786]varscale=chromascalecoeff[0];[0787]for(i=1;i<=15;i )[0788]{[0789]if(chromascalecoeff[i]>varscale)[0790]varscale=chromascalecoeff[i][0791]}[0792]8.7.5.4用于色度样点的亮度相关的色度残差缩放过程的图像重构[0793]该过程的输入是:[0794]–当前变换块的左上样点相对于当前图片的左上样点的位置(xcurr,ycurr),[0795]–变量ncurrsw,指定变换块的宽度,[0796]–变量ncurrsh,指定变换块的高度,[0797]–(ncurrsw)x(ncurrsh)数组predsamples,指定当前块的色度预测样点,[0798]–(ncurrsw)x(ncurrsh)数组ressamples,指定当前块的色度残差样点。[0799]该过程的输出是重构的色度图片样点数组recsamples。[0800]对于i=0..ncurrsw‑1,j=0..ncurrsh‑1,重构的色度图片样点recsamples的导出如下:[0801]–如果slice_chroma_residual_scale_flag等于0或ncurrsw*ncurrsh小于或等于4,则适用以下内容:[0802]recsamples[xcurr i][ycurr j]=clip1c(predsamples[i][j] ressamples[i][j])ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(8‑1063)[0803]–否则(slice_chroma_residual_scale_flag等于1且ncurrsw*ncurrsh大于4),适用以下内容:[0804]‑对于变量varscale的推导,适用以下有序步骤:[0805]4.变量invavgluma导出如下:[0806][0807]5.通过调用第8.7.5.3.2节中指定的分段函数索引来标识变量idxyinv,其中invavgluma作为输入,并且idxyinv作为输出。[0808]6.变量varscale的推导如下:[0809]varscale=chromascalecoeff[idxyinv](8‑994)[0810]‑recsamples的推导如下:[0811]‑如果tu_cbf_cidx[xcurr][ycurr]等于1,则适用以下内容:[0812]ressamples[i][j]=clip3(‑(1<<bitdepthc),[0813]1<<bitdepthc‑1,ressamples[i][j])[0814]recsamples[xcurr i][ycurr j]=clipcidx1(predsamples[i][j] sign(ressamples[i][j])*((abs(ressamples[i][j])*varscale (1<<10))>>11))ꢀꢀꢀ(8‑1066)[0815]‑否则(tu_cbf_cidx[xcurr][ycurr]等于0),适用以下内容:[0816]recsamples[xcurr i][ycurr j]=clipcidx1(predsamples[i][j])ꢀꢀꢀ(8‑1067)[0817]6.所公开的技术的示例实现[0818]图10是视频处理装置1000的框图。装置1000可用于实施本文所述的一种或多种方法。装置1000可以体现在智能手机、平板电脑、计算机、物联网(iot)接收器等中。装置1000可以包括一个或多个处理器1002、一个或多个存储器1004和视频处理硬件1006。(一个或多个)处理器1002可以被配置成实现本文档中描述的一种或多种方法(包括但不限于方法800和900)。存储器(或多个存储器)1004可以用于存储用于实现这里描述的方法和技术的数据和代码。视频处理硬件1006可以用于在硬件电路中实现本文档中描述的一些技术。[0819]在一些实施例中,视频编解码方法可以使用如参考图10所述的在硬件平台上实现的装置来实现。[0820]图11示出了根据所公开的技术的用于跨分量预测的线性模型推导的示例方法1100的流程图。方法1100包括,在步骤1110处,执行当前视频块和当前视频块的比特流表示之间的转换,其中,在转换期间,从包括在一个或多个参考帧中的第一组颜色分量值导出当前视频块的第二组颜色分量值,其中第一组颜色分量值可用于视频编解码步骤的线性模型中。[0821]可以使用以下基于条款的格式来描述一些实施例。[0822]1.一种用于视频处理的方法,包括:[0823]执行当前视频块和当前视频块的比特流表示之间的转换,其中,在转换期间,从包括在一个或多个参考帧中的第一组颜色分量值导出当前视频块的第二组颜色分量值,其中第一组颜色分量值可用于视频编解码步骤的线性模型。[0824]2.条款1的方法,其中第一组颜色分量值在用于视频编解码步骤的线性模型之前被插值。[0825]3.条款1‑2中任一项或多项的方法,其中第一组颜色分量值的线性组合可用作线性模型中的参数。[0826]4.条款1的方法,其中至少部分地基于当前视频块的运动信息来选择包括在一个或多个参考帧中的第一组颜色分量值的位置。[0827]5.条款4的方法,其中根据当前视频块中对应亮度分量值的位置和当前视频块的运动信息来计算一个或多个参考帧中亮度分量值的位置。[0828]6.条款5的方法,其中对应亮度分量值的位置是当前视频块中的左上样点、中心样点或右下样点。[0829]7.条款6的方法,其中当前视频块的运动信息对应于整数运动矢量或分数运动矢量。[0830]8.条款7的方法,其中使用一个或多个参考帧中的分数亮度分量值来导出分数运动矢量。[0831]9.条款7的方法,其中整数运动矢量是通过向零或远离零舍入而导出的。[0832]10.条款1的方法,其中包括在一个或多个参考帧中的第一组颜色分量值的位置是预定义的位置。[0833]11.条款1‑10中任一项或多项的方法,其中第一组颜色分量值的中值或平均值被用于导出当前视频块的第二组颜色分量值。[0834]12.条款1‑11中任一项或多项的方法,其中一个或多个参考帧是预定义参考帧。[0835]13.条款12的方法,其中预定义参考帧包括具有参考图片列表的参考索引的帧。[0836]14.条款13的方法,其中参考索引为零,并且参考图片列表为零。[0837]15.条款13的方法,其中参考索引和/或参考图片列表在与以下一个或多个相关联的比特流表示中信令通知:序列、图片、片、组、条带、片、编解码树单元的行或视频块。[0838]16.条款1的方法,其中当前视频块的第二组颜色分量值是从包括在一个或多个参考帧中的第一组颜色分量值的数学平均或加权平均中导出的。[0839]17.条款1的方法,其中基于当前视频块是否是双向预测编解码的块,从包括在一个或多个参考帧中的第一组颜色分量值中选择性地导出当前视频块的第二组颜色分量值。[0840]18.条款17的方法,其中当前视频块的第二组颜色分量值是针对第一组颜色分量值的每个预测方向单独导出的。[0841]19.条款1的方法,其中基于当前视频块是否与基于子块的预测相关联,从包括在一个或多个参考帧中的第一组颜色分量值中选择性地导出当前视频块的第二组颜色分量值。[0842]20.条款1的方法,其中基于子块的预测对应于仿射预测或可选时域运动矢量预测(atmvp)。[0843]21.条款19‑20中任一项或多项的方法,其中为各个子块导出当前视频块的第二组颜色分量值。[0844]22.条款19‑21中任一项或多项的方法,其中当前视频块的第二组颜色分量值是针对整个当前视频块导出的,而不管基于子块的预测如何。[0845]23.条款19‑22中任一项或多项的方法,其中至少部分基于当前视频块的子块的运动矢量来选择包括在一个或多个参考帧中的第一组颜色分量值。[0846]24.条款1‑23中任一项或多项的方法,其中包括在一个或多个参考帧中的第一组颜色分量值是中间颜色分量值。[0847]25.条款1‑24中任一项或多项的方法,其中视频编解码步骤先于另一个视频编解码步骤。[0848]26.条款25的方法,其中至少部分基于当前视频块或当前视频块的子块的中间运动矢量来选择包括在一个或多个参考帧中的第一组颜色分量值,并且其中在另一视频编解码步骤之前计算中间运动矢量。[0849]27.条款24‑26中任一项或多项的方法,其中另一视频编解码步骤包括以下步骤中的一个或其组合:双向光流步骤(bdof)、解码器侧运动矢量细化(dmvr)步骤、预测细化光流(prof)步骤。[0850]28.条款1‑27中任一项或多项的方法,其中包括在一个或多个参考帧中的第一组颜色分量值对应于与对应亮度块相关联的mxn亮度分量值。[0851]29.条款28的方法,其中对应亮度块是当前视频块的并置亮度块。[0852]30.条款29的方法,其中m和n的乘积小于当前视频块的并置亮度块的块宽度和块高度的乘积。[0853]31.条款27‑30中任一项或多项的方法,其中包括在一个或多个参考帧中的第一组颜色分量值对应于在并置亮度块的临近亮度样点的位置处标识的参考样点的至少一部分。[0854]32.条款1‑31中任一项或多项的方法,其中第一组颜色分量值在用于视频编解码步骤的线性模型之前被下采样。[0855]33.条款1的方法,其中至少部分地基于当前视频块的以下信息中的一个或多个来选择当前视频块的第二组颜色分量值:量化参数、编解码模式或图片顺序计数(poc)。[0856]34.条款31的方法,其中临近亮度样点的位置使得并置亮度块的左上样点被覆盖。[0857]35.条款28的方法,其中包含在一个或一个以上参考帧中的第一组颜色分量值对应于在对应亮度块外部的位置处标识的参考样点的至少一部分。[0858]36.条款28的方法,其中基于对应亮度块的临近样点的可用性,从包括在一个或多个参考帧中的第一组颜色分量值中选择性地导出当前视频块的第二组颜色分量值。[0859]37.条款28的方法,其中对应亮度块的临近样点的可用性基于以下一个或多个:当前视频块的编解码模式的使用、对应亮度块的临近样点的编解码模式的使用、对应亮度块的编解码模式的使用、一个或多个临近视频块的编码模式的使用、与对应亮度块的临近样点相关联的滤波器类型的使用,或者对应亮度块的临近样点相对于当前视频块或其子块的位置。[0860]38.条款28的方法,还包括:[0861]响应于缺少对应亮度块的临近样点的可用性,用其他样点替换、填补或填充不可用样点。[0862]39.条款28的方法,还包括:[0863]对临近对应亮度块的样点应用平滑滤波器。[0864]40.一种用于视频处理的方法,包括:[0865]执行当前视频块和当前视频块的比特流表示之间的转换,其中,在转换期间,从包括在一个或多个参考帧中的第一组颜色分量值导出当前视频块的第二组颜色分量值,其中第一组颜色分量值可用于视频编解码步骤的线性模型中;以及[0866]响应于确定包括在一个或多个参考帧中的第一组颜色分量值是当前视频块的并置亮度块,基于与当前视频块的并置亮度块相关联的一个或多个条件,选择性地启用或禁用当前视频块的第二组颜色分量值的导出。[0867]41.条款40的方法,其中与当前视频块的并置亮度块相关联的一个或多个条件包括:并置亮度块的分割尺寸、达到阈值数目的并置亮度块的编解码单元的数目、达到阈值尺寸的并置亮度块的左上亮度样点、并置亮度块的分割树深度、覆盖并置亮度块的左上亮度样点的对应亮度块、并置亮度块或当前视频块的维度、或者覆盖并置亮度块的左上亮度样点并附加包括在预定义尺寸的边界框内的对应亮度块。[0868]42.条款40的方法,其中指示选择性地启用或禁用导出的信息被包括在比特流表示中。[0869]43.条款28的方法,其中对应亮度块的临近样点的可用性与根据预定义顺序检查临近样点相关联。[0870]44.条款41的方法,其中并置亮度块和当前视频块与同一编解码树单元或编解码树单元的同一行相关联。[0871]45.一种用于视频处理的方法,包括:[0872]在当前视频块和当前视频块的比特流表示之间执行转换,其中,在转换期间,从包括在一个或多个参考帧中的第一组颜色分量值导出当前视频块的第二组颜色分量值,其中第一组颜色分量值可用于视频编解码步骤的线性模型中;以及[0873]响应于确定满足当前视频块或当前视频块的临近视频块的一个或多个属性,选择性地启用或禁用当前视频块的第二组颜色分量值的导出。[0874]46.条款45的方法,其中当前视频块或当前视频块的临近视频块的一个或多个属性对应于覆盖相对于当前视频块的空间位置的空间位置的临近亮度块。[0875]47.条款45的方法,其中当前视频块或当前视频块的临近视频块的一个或多个属性对应于当前视频块的临近视频块相对于当前视频块的空间位置的空间位置。[0876]48.条款45的方法,还包括:[0877]响应于确定临近视频块的重构至少部分基于当前视频块的编解码模式,禁用导出当前视频块的第二组颜色分量值。[0878]49.条款45的方法,还包括:[0879]响应于确定当前视频块是帧间编解码的块而不是组合的帧间和帧内预测编解码的块,并且与当前视频块的对应亮度块临近的块是帧内编解码的块、组合的帧间和帧内预测(ciip)块或帧内块复制(ibc)编解码的块,禁用导出当前视频块的第二组颜色分量值。[0880]50.条款45的方法,还包括:[0881]响应于确定当前视频块是帧间编解码的块而不是组合的帧间和帧内预测编解码的块,并且与当前视频块的对应亮度块临近的块是帧内编解码的块、组合的帧间和帧内预测(ciip)块或帧内块复制(ibc)编解码的块,启用导出当前视频块的第二组颜色分量值,其中第一组颜色分量值是固定值。[0882]51.条款45的方法,其中第一组颜色分量值是固定值。[0883]52.条款51的方法,其中固定值对应于视频编解码步骤的线性模型的分段索引。[0884]53.条款1‑52中任一项或多项的方法,其中临近样点可以与当前视频块相邻或不相邻。[0885]54.条款1‑52中任一项或多项的方法,其中临近样点可以与邻临近当前视频块的色度块或临近当前视频块的色度块相关联。[0886]55.条款1‑54中任一项或多项的方法,其中当前视频块对应于色度块、并置亮度块或覆盖并置色度块的左上亮度样点的对应亮度块。[0887]56.条款1‑54中任一项或多项的方法,其中存储当前视频块的第二组颜色分量值,以结合一个或多个其他视频块使用。[0888]57.条款1‑56中任一项或多项的方法,其中线性模型对应于跨分量线性模型(cclm),并且视频编解码步骤对应于具有色度缩放(lmcs)模式的亮度映射。[0889]58.条款1‑57中任一项或多项的方法,其中当前视频块是帧间编解码的块、双向预测编解码的块、组合的帧间和帧内预测(ciip)块或帧内块复制(ibc)编解码的块。[0890]59.条款1‑58中任一项或多项的方法,其中存储当前视频块的第二组颜色分量值,以便与比特流表示中的其他视频块相关联地使用。[0891]60.条款59的方法,其中当前视频块的第二组颜色分量值被存储在线缓冲器中,用于由包括在其它视频块中的临近视频块选择性地可用或不可用,其中当前视频块和临近视频块与不同的条带、片、片组、编解码树单元或编解码树单元的行相关联。[0892]61.条款60的方法,其中当前视频块的第二组颜色分量值是固定值。[0893]62.条款60的方法,其中防止导出当前视频块的第二组颜色分量值。[0894]63.条款59的方法,其中防止导出当前视频块的第二组颜色分量值。[0895]64.条款59的方法,其中当前视频块的第二组颜色分量值被存储在表中,用于由包括在其它视频块中的临近视频块选择性地可用或不可用。[0896]65.条款64的方法,其中当前视频块的第二组颜色分量值被动态更新。[0897]66.条款65的方法,其中当前视频块的第二组颜色分量值与其它视频块中的前一视频块相同。[0898]67.条款64的方法,其中当前视频块的第二组颜色分量值以先进先出(fifo)的方式被动态更新。[0899]68.条款1‑67中任一项或多项的方法,其中第一组颜色分量值对应于亮度样点值,并且第二组颜色分量值对应于色度缩放因子。[0900]69.一种用于视频处理的方法,包括:基于规则,确定用于在包括至少两个分量块的视频块和视频块的比特流表示之间的转换的跨分量编解码器工具的适用性;以及通过选择性地使用跨分量编解码器工具来执行转换。[0901]70.条款69的方法,其中规则基于当前视频块的维度。[0902]71.条款69‑70的方法,其中规则基于当前视频块的分割信息。[0903]72.条款69‑71中任一项的方法,其中规则基于当前视频块的分割树结构。[0904]73.条款72的方法,其中分割树结构是双树或单树之一。[0905]74.条款72的方法,其中规则指定禁用跨分量编解码器工具,因为当前视频块是具有双树分割树结构的色度块。[0906]75.条款69‑74中任一项的方法,其中规则指定在比特流表示中省略跨分量编解码器工具的语法元素的信令。[0907]第4节第15项描述了条款69‑75的其他示例和方面。[0908]76.一种视频系统中的装置,包括处理器和其上带有指令的非暂时性存储器,其中指令在由处理器执行时,使处理器实现条款1至75中任一项中的方法。[0909]77.一种存储在非暂时性计算机可读介质上的计算机程序产品,该计算机程序产品包括用于执行条款1至75中任一项的方法的程序代码。[0910]图12是示出其中可以实现这里公开的各种技术的示例视频处理系统1200的框图。各种实现可以包括系统1200的一些或所有组件。系统1200可以包括用于接收视频内容的输入1202。视频内容可以以原始或未压缩格式被接收,例如8或10位多分量像素值,或者可以以压缩或编码格式被接收。输入1202可以代表网络接口、外围总线接口或存储接口。网络接口的示例包括有线接口(诸如以太网、无源光网络(pon)等)和无线接口(诸如wi‑fi或蜂窝接口)。[0911]系统1200可以包括编解码组件1204,其可以实现本文档中描述的各种编码或编码方法。编解码组件1204可以降低从输入1202到编解码组件1204的输出的视频的平均比特率,以产生视频的编解码表示。因此,编解码技术有时被称为视频压缩或视频转码技术。编解码组件1204的输出可以被存储,或者通过连接的通信来传输,如组件1206所表示的。组件1208可以使用在输入端1202接收的视频的存储或传送的比特流(或编解码)表示来生成发送到显示接口1210的像素值或可显示视频。从比特流表示生成用户可视视频的过程有时被称为视频解压缩。此外,虽然某些视频处理操作被称为“编解码”操作或工具,但是应当理解,编解码工具或操作在编码器处使用,并且反转编解码的结果的对应解码工具或操作将由解码器执行。[0912]外围总线接口或显示接口的示例可以包括通用串行总线(usb)或高清晰度多媒体接口(hdmi)或显示端口等。存储接口的示例包括sata(串行高级技术附件)、pci、ide接口等。本文档中描述的技术可以体现在各种电子设备中,诸如移动电话、膝上型电脑、智能手机或能够执行数字数据处理和/或视频显示的其他设备。[0913]图13是视觉媒体处理方法的示例的流程图。该流程图的步骤结合本文件第4节中的示例12g(ii)进行了描述。在步骤1302,该过程响应于确定视觉媒体数据的对应亮度块的临近亮度块的可用性,导出视觉媒体数据的当前视频色度块的第一参数,使得第一参数被导出为固定值或当前视频色度块的临近亮度样点的或基于舍入的平均值,其中对应亮度块覆盖与当前视频色度块相关联的位置。在步骤1304,该过程基于第一参数确定色度缩放因子。在步骤1306,该过程基于色度缩放因子执行当前视频色度块的色度残差缩放。在步骤1308,该过程使用色度缩放因子进行当前视频色度块和比特流之间的转换。[0914]图14是视觉媒体处理方法的示例的流程图。该流程图的步骤结合本文件第4节中的示例12d进行了描述。在步骤1402,该过程使用规则,该规则基于固定值指定表示与视觉媒体数据的当前视频单元相关联的至少一个色度块的色度残差缩放因子,其中该固定值至少基于一个或多个条件。在步骤1404,该过程执行当前视频单元和当前视频单元的比特流表示之间的转换。[0915]图15是视觉媒体处理方法的示例的流程图。该流程图的步骤结合本文件第4节中的示例15进行了描述。在步骤1502,在视觉媒体数据的当前视频块和当前视频块的比特流表示之间的转换期间,该过程至少部分地基于与当前视频块相关联的维度和/或分割信息和/或编解码结构类型,做出选择性地启用或禁用对当前视频块的颜色分量应用跨分量线性模型(cclm)的确定,其中,在cclm中,基于第二组颜色分量来预测第一组颜色分量。[0916]本文档的一些实施例现在以基于条款的格式呈现。[0917]x1.一种用于视觉媒体处理的方法:[0918]响应于确定视觉媒体数据的对应亮度块的临近亮度块的可用性,导出视觉媒体数据的当前视频色度块的第一参数,使得第一参数被导出为固定值或当前视频色度块的临近亮度样点的基于舍入的平均值,其中对应亮度块覆盖与当前视频色度块相关联的位置;[0919]基于第一参数确定色度缩放因子;[0920]基于色度缩放因子执行当前视频色度块的色度残差缩放;以及[0921]使用色度缩放因子进行当前视频色度块和当前视频色度块的比特流表示之间的转换。[0922]x2.条款x1的方法,其中基于第一参数确定色度缩放因子包括:[0923]使用第一参数来标识分段线性函数的索引。[0924]x3.条款x2的方法,还包括:[0925]在标识分段线性函数的索引时的情况下,确定在当前视频色度块的色度残差缩放中使用的色度残差因子。[0926]x4.条款x1的方法,其中色度残差缩放因子作为字段被包括在比特流表示中。[0927]x5.条款x1‑x4中任一项或多项的方法,其中,如果临近亮度块中的至少一个可用,则第一参数被导出为当前视频色度块的临近亮度样点的基于舍入的平均值。[0928]x6.条款x1‑x4中任一项或多项的方法,其中,如果临近亮度块不可用,则第一参数被导出作为固定值。[0929]x7.条款x1或x6的方法,其中固定值为零。[0930]x8.条款x1或x6的方法,其中固定值基于亮度颜色分量和/或色度颜色分量的位深度。[0931]x9.条款x8的方法,其中固定值是(1<<bitdepth)–1或1<<(bitdepth‑1),其中bitdepth表示亮度颜色分量和/或色度颜色分量的位深度。[0932]x10.条款x6的方法,其中固定值是分段线性函数中的最大二进制位索引。[0933]x11.条款x6的方法,其中固定值是分段线性函数中的最小二进制位索引。[0934]x12.条款x6的方法,其中固定值是自适应分段线性函数中的最小二进制位索引和最大二进制位索引的平均值。[0935]a1.一种用于视觉媒体处理的方法:[0936]使用规则,规则基于固定值指定表示与视觉媒体数据的当前视频单元相关联的至少一个色度块的色度残差缩放因子,其中固定值至少基于一个或多个条件;以及[0937]执行当前视频单元和当前视频单元的比特流表示之间的转换。[0938]a2.条款a1的方法,其中一个或多个条件包括:[0939](1)图片/条带/片组/片/子图片/编码树单元(ctu)行/ctu/虚拟流水线数据单元(vpdu)的类型,[0940](2)图片/条带/片组/片/子图片/ctu行/ctu/vpdu的宽度和/或高度,[0941](3)当前视频单元的编解码模式,或[0942](4)当前视频单元的临近样点。[0943]a3.条款a2的方法,其中为第一类型的图片/条带/片组/片/子图片/ctu行/ctu/vpdu计算第一固定值,并为第二类型的图片/条带/片组/片/子图片/ctu行/ctu/vpdu计算第二固定值。[0944]b1.一种用于视觉媒体处理的方法,包括:[0945]在视觉媒体数据的当前视频块和当前视频块的比特流表示之间的转换期间,至少部分地基于与当前视频块相关联的维度和/或分割信息和/或编解码结构类型,做出选择性地启用或禁用对当前视频块的颜色分量应用跨分量线性模型(cclm)的确定,其中,在cclm中,基于第二组颜色分量的线性组合预测第一组颜色分量。[0946]b2.条款b1的方法,其中编解码结构类型是单树或双树。[0947]b3.条款b1的方法,其中基于当前视频块是色度块和指定双树分割的分割信息禁用cclm。[0948]b4.条款b1的方法,其中基于当前视频块的维度未能满足至少一个阈值条件禁用cclm。[0949]b5.条款b1的方法,其中至少一个阈值条件基于(i)当前视频块的宽度和/或当前视频块的高度与(ii)一个或多个阈值参数之间的数学关系。[0950]b6.条款b1的方法,其中一个或多个阈值参数具有8、16、64或4096的值。[0951]b7.条款b1的方法,其中当分割信息指定当前视频块位于具有水平划分的叶节点处,并且与当前视频块相关联的并置亮度块位于具有垂直划分的叶节点处时,禁用cclm。[0952]b8.条款b7的方法,其中在当前视频块是具有水平三元划分的色度块,并且并置亮度块具有垂直三元划分时,禁用cclm。[0953]b9.条款b7的方法,其中在当前视频块是具有水平二元划分的色度块划分,并且并置亮度块具有垂直三元划分时,禁用cclm。[0954]b10.条款b7的方法,其中在当前视频块是具有水平二元划分的色度块划分,并且并置亮度块具有垂直三元划分时,禁用cclm。[0955]b11.条款b7的方法,其中在当前视频块是具有水平二元划分的色度块划分,并且并置亮度块具有垂直二元划分时,禁用cclm。[0956]b12.条款b1的方法,其中当分割信息指定当前视频块位于具有垂直划分的叶节点处,并且与当前视频块相关联的并置亮度块位于具有水平划分的叶节点处时,禁用cclm。[0957]b13.条款b12的方法,其中在当前视频块是具有垂直三元划分的色度块,并且并置亮度块具有水平三元划分时,禁用cclm。[0958]b14.条款b12的方法,其中在当前视频块是具有垂直三元划分的色度块,并且并置亮度块是具有水平二元划分的亮度块时,禁用cclm。[0959]b15.条款b12的方法,其中在当前视频块是具有二元垂直划分的色度块,并且并置亮度块是水平三元划分时,禁用cclm。[0960]b16.条款b11的方法,其中在当前视频块是具有垂直二元划分的色度块,并且并置亮度块具有水平二元划分时,禁用cclm。[0961]b17.条款b1‑b16中任一项或多项的方法,还包括:[0962]在确定对于当前视频块禁用cclm的情况下,从比特流表示中排除指示cclm的应用的语法元素。[0963]b18.条款b1‑b16中任一项或多项的方法,还包括:[0964]在确定对于当前视频块禁用cclm的情况下,在比特流表示中包括指示cclm的应用的语法元素,其中跳过与cclm相关联的一个或多个预测模式的使用。[0965]b19.条款b1‑b16中任一项或多项的方法,还包括:[0966]在确定对于当前视频块禁用cclm的情况下,在比特流表示中包括指示cclm的应用的语法元素,应用默认预测模式。[0967]b20.条款b19的方法,其中默认预测模式是平面模式或dc模式。[0968]b21.权利要求x1‑b20中任一项或多项的方法,其中转换包括从视频块生成比特流表示。[0969]b22.权利要求x1‑b20中任一项或多项的方法,其中转换包括从比特流表示生成视频块的像素值。[0970]b23.一种视频编码器装置,包括处理器,该处理器被配置为实现条款x1‑b20中任一项或多项的方法。[0971]b24.一种视频解码器装置,包括处理器,该处理器被配置为实现条款x1‑b20中任一项或多项的方法。[0972]b25.一种其上存储有代码的计算机可读介质,该代码包含用于实现条款x1‑b20中任一项或多项的方法的处理器可执行指令。[0973]在本文件中,术语“视频处理”或“视觉媒体处理”可以指视频编码、视频解码、视频压缩或视频解压缩。例如,视频压缩算法可以在从视频的像素表示到对应比特流表示的转换期间应用,反之亦然。如语法所定义的,当前视频块的比特流表示可以例如对应于在比特流中位于共同位置或分布在不同位置的比特。例如,宏块可以根据变换和编解码的误差残差值进行编码,并且还可以使用比特流中的头和其他字段中的比特。此外,在转换期间,解码器可以基于该确定,在知道一些字段可能存在或不存在的情况下解析比特流,如以上解决方案中所述。类似地,编码器可以确定某些语法字段是否被包括,并且通过从编解码表示中包括或排除语法字段来对应地生成编解码表示。[0974]根据前述内容,将会理解,为了说明的目的,这里已经描述了当前公开的技术的具体实施例,但是在不脱离本发明的范围的情况下,可以进行各种修改。因此,除了所附权利要求之外,当前公开的技术不受限制。[0975]本专利文件中描述的主题和功能操作的实现可以在各种系统、数字电子电路或计算机软件、固件或硬件中实现,包括本说明书中公开的结构及其结构等同物,或者它们中的一个或多个的组合。本说明书中描述的主题的实现可以被实现为一个或多个计算机程序产品,即编码在有形和非暂时性计算机可读介质上的计算机程序指令的一个或多个模块,用于由数据处理装置执行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基底、存储器设备、实现机器可读传播信号的物质组合、或者它们中的一个或多个的组合。术语“数据处理单元”或“数据处理装置”包括用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多个处理器或计算机。除了硬件之外,该装置可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。[0976]计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言编写,包括编译或解释语言,并且它可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程或适合在计算环境中使用的其他单元。计算机程序不一定对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本),存储在专用于所讨论的程序的单个文件中,或者存储在多个协同文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。计算机程序可以被部署为在一台计算机上或位于一个站点或分布在多个站点并通过通信网络互连的多台计算机上执行。[0977]本说明书中描述的过程和逻辑流程可以由一个或多个可编程处理器执行,该处理器执行一个或多个计算机程序,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路来执行,并且装置也可以被实现为专用逻辑电路,例如,fpga(现场可编程门数组)或asic(专用集成电路)。[0978]适于执行计算机程序的处理器包括,例如,通用和专用微处理器,以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本要素是执行指令的处理器和一个或多个存储指令和数据的存储设备。通常,计算机还将包括或可操作地耦合到一个或多个用于存储数据的大容量存储设备,例如磁盘、磁光盘或光盘,以从其接收数据或向其传送数据,或两者兼有。然而,计算机不需要这样的设备。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储设备,例如eprom、eeprom和闪存设备。处理器和存储器可以由专用逻辑电路来补充或并入专用逻辑电路。[0979]说明书和附图仅被认为是示例性的,其中示例性意味着示例。如这里所使用的,“或”的使用旨在包括“和/或”,除非上下文清楚地另外指明。[0980]虽然本专利文件包含许多细节,但这些细节不应被解释为对任何发明或所要求保护的范围的限制,而是对特定发明的特定实施例的特定特征的描述。本专利文件中在单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独实现或者在任何合适的子组合中实现。此外,尽管特征可以在上文中被描述为在某些组合中起作用,并且甚至最初被如此要求保护,但是在一些情况下,来自所要求保护的组合的一个或多个特征可以从该组合中删除,并且所要求保护的组合可以针对子组合或子组合的变型。[0981]类似地,虽然在附图中以特定顺序描述了操作,但是这不应该被理解为要求以所示的特定顺序或顺序执行这些操作,或者要求执行所有示出的操作,以获得期望的结果。此外,本专利文件中描述的实施例中的各种系统组件的分离不应理解为在所有实施例中都需要这种分离。[0982]仅描述了几个实施方式和示例,并且可以基于本专利文件中描述和示出的内容做出其他实施方式、增强和变化。当前第1页12当前第1页12
再多了解一些

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

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

相关文献