CN118679735A - 用于视频编解码的跨分量预测的方法和装置 - Google Patents
用于视频编解码的跨分量预测的方法和装置 Download PDFInfo
- Publication number
- CN118679735A CN118679735A CN202380021375.3A CN202380021375A CN118679735A CN 118679735 A CN118679735 A CN 118679735A CN 202380021375 A CN202380021375 A CN 202380021375A CN 118679735 A CN118679735 A CN 118679735A
- Authority
- CN
- China
- Prior art keywords
- video block
- region
- samples
- video
- chroma
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 100
- 241000023320 Luma <angiosperm> Species 0.000 claims abstract description 89
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 claims abstract description 89
- 238000012417 linear regression Methods 0.000 claims abstract description 14
- 238000000354 decomposition reaction Methods 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000011664 signaling Effects 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 2
- 230000000875 corresponding effect Effects 0.000 description 37
- 238000009795 derivation Methods 0.000 description 14
- 230000002123 temporal effect Effects 0.000 description 9
- 238000013461 design Methods 0.000 description 8
- 239000011159 matrix material Substances 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 238000012549 training Methods 0.000 description 5
- 230000006978 adaptation Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 3
- 230000002596 correlated effect Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 2
- KLPWJLBORRMFGK-UHFFFAOYSA-N Molindone Chemical compound O=C1C=2C(CC)=C(C)NC=2CCC1CN1CCOCC1 KLPWJLBORRMFGK-UHFFFAOYSA-N 0.000 description 2
- 230000001364 causal effect Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000008030 elimination Effects 0.000 description 2
- 238000003379 elimination reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 229940028394 moban Drugs 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- DNTFEAHNXKUSKQ-RFZPGFLSSA-N (1r,2r)-2-aminocyclopentane-1-sulfonic acid Chemical compound N[C@@H]1CCC[C@H]1S(O)(=O)=O DNTFEAHNXKUSKQ-RFZPGFLSSA-N 0.000 description 1
- IESVDEZGAHUQJU-ZLBXKVHBSA-N 1-hexadecanoyl-2-(4Z,7Z,10Z,13Z,16Z,19Z-docosahexaenoyl)-sn-glycero-3-phosphocholine Chemical compound CCCCCCCCCCCCCCCC(=O)OC[C@H](COP([O-])(=O)OCC[N+](C)(C)C)OC(=O)CC\C=C/C\C=C/C\C=C/C\C=C/C\C=C/C\C=C/CC IESVDEZGAHUQJU-ZLBXKVHBSA-N 0.000 description 1
- 229920002148 Gellan gum Polymers 0.000 description 1
- 125000000205 L-threonino group Chemical group [H]OC(=O)[C@@]([H])(N([H])[*])[C@](C([H])([H])[H])([H])O[H] 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本公开内容提供了一种用于对视频数据进行解码的方法。该方法包括:从比特流获得视频块和区域信息,其中,区域信息包括指示从位于视频块外部的区域的集合中选择的区域的索引,用于导出多元线性回归(MLR)模型;基于区域信息获得区域中的亮度样点值和色度样点值;使用区域中的亮度样点值和色度样点值来导出MLR模型;通过将MLR模型应用于该色度样点的对应亮度样点值来预测视频块中的色度样点值中的每个色度样点值;以及使用经预测色度样点值来获得解码视频块。
Description
技术领域
概括地说,本公开内容的各方面涉及视频编解码和压缩,并且更具体地,涉及用于跨分量预测技术的方法和装置。
背景技术
各种视频编解码技术可以被用于压缩视频数据。视频编解码是根据一个或多个视频编解码标准执行的。例如,视频编解码标准包括通用视频编解码(VVC)、高效视频编解码(H.265/HEVC)、高级视频编解码(H.264/AVC)、移动图像专家组(MPEG)编解码等。视频编解码通常采用利用视频图像或序列中存在的冗余的预测方法(例如,帧间预测、帧内预测等)。视频编解码技术的一个重要目标是将视频数据压缩成使用较低比特率的形式,同时避免或最小化视频质量的下降。
发明内容
下面给出了根据本公开内容的一个或多个方面的简要概括,以便于提供对这样的方面的基本理解。该概括不是对全部预期方面的广泛综述,并且既不旨在标识全部方面的关键或重要元素,也不旨在描绘任何或全部方面的范围。其唯一目的是以简化形式给出一个或多个方面的一些概念,作为稍后给出的更详细的描述的前序。
根据实施例,提供了一种用于对视频数据进行解码的方法,包括:从比特流获得视频块和区域信息,其中,区域信息包括指示从位于视频块外部的区域的集合中选择的用于导出多元线性回归(MLR)模型的区域的索引;基于区域信息获得区域中的亮度样点值和色度样点值;使用区域中的亮度样点值和色度样点值来导出MLR模型;通过将MLR模型应用于该色度样点的对应的亮度样点值来预测视频块中的色度样点值中的每个色度样点值;以及使用经预测色度样点值来获得解码视频块。
根据实施例,提供了一种用于对视频数据进行编码的方法,包括:从视频帧获得视频块;基于区域信息获得区域中的亮度样点值和色度样点值,其中,区域信息包括指示从位于视频块外部的区域的集合中选择的用于导出MLR模型的区域的索引;使用区域中的亮度样点值和色度样点值来导出多元线性回归(MLR)模型;通过将MLR模型应用于该色度样点的对应的亮度样点值来预测视频块中的色度样点值中的每个色度样点值;使用经预测色度样点值和区域信息来获得包括编码视频块的比特流。
根据实施例,提供了一种计算机系统,包括:一个或多个处理器;以及一个或多个存储设备,其存储计算机可执行指令,计算机可执行指令在被执行时使一个或多个处理器执行本公开内容的方法的操作。
根据实施例,提供了一种计算机程序产品,其存储计算机可执行指令,计算机可执行指令在被执行时使一个或多个处理器执行本公开内容的方法的操作。
根据实施例,提供了一种计算机可读介质,其存储计算机可执行指令,计算机可执行指令在被执行时使一个或多个处理器接收比特流并且执行本公开内容的方法的操作。
根据实施例,提供了一种计算机可读介质,其存储计算机可执行指令,计算机可执行指令在被执行时使一个或多个处理器执行本公开内容的方法的操作并且发送包括与经预测色度样点相关联的编码视频信息的比特流。
附图说明
下文将结合附图描述所公开的各方面,提供附图以示出而非限制所公开的各方面。
图1示出通用的基于块的混合视频编码系统的框图。
图2A至2E示出五种拆分类型,包括四元分割、水平二元分割、垂直二元分割、水平三元分割和垂直三元分割。
图3示出基于块的视频解码器的总体框图。
图4示出CCLM模式中涉及的左侧样点和上方样点以及当前块的样点的位置的示例。
图5A至图5C示出导出CCLM参数的示例。
图6示出基于值Threshold将相邻样点分类为两组的示例。
图7示出基于拐点将相邻样点分类为两组的示例。
图8示出与预测块相邻的四个参考行的示例。
图9A和图9B示出色度样点与一个或多个亮度样点之间的相关性的示意图。
图10示出根据本公开内容的一个或多个方面的在多元线性回归(MLR)模型中使用6抽头的示例。
图11示出根据本公开内容的一个或多个方面的示例性不同的滤波器形状和/或抽头数量。
图12示出其中FLM可能仅使用顶部或左侧亮度和/或色度样点(扩展的)进行参数导出的示例。
图13示出其中FLM可以使用不同的行进行参数导出的示例。
图14示出根据本公开内容的一个或多个方面的用于对视频数据进行解码的方法的工作流。
图15示出根据本公开内容的一个或多个方面的用于对视频数据进行编码的方法的工作流。
图16示出根据本公开内容的一个或多个方面的用于对视频数据进行编码的方法的工作流。
图17示出根据本公开内容的一个或多个方面的用于对视频数据进行解码的方法的工作流。
图18示出根据本公开内容的一个或多个方面的用于对视频数据进行解码的方法的工作流。
图19示出根据本公开内容的一个或多个方面的用于对视频数据进行编码的方法的工作流。
图20示出根据本公开内容的一个或多个方面的用于对视频数据进行解码的方法的工作流。
图21示出根据本公开内容的一个或多个方面的用于对视频数据进行编码的方法的工作流。
图22示出根据本公开内容的一个或多个方面的示例性计算系统。
具体实施方式
现在将详细参照具体实现方式,在附图中示出具体实现方式的示例。在以下详细描述中,阐述了大量非限制性具体细节以便帮助理解本文呈现的主题。但是对于本领域普通技术人员将显而易见的是,在不脱离权利要求的范围的情况下,可以使用各种替代方案,并且可以在没有这些具体细节的情况下实践主题。例如,对于本领域普通技术人员将显而易见的是,本文呈现的主题可以在具有数字视频能力的许多类型的电子设备上实现。
应当说明的是,在本公开内容的说明书和权利要求书以及附图中使用的术语“第一”、“第二”等被用于区分对象,而不被用于描述任何具体的顺序或次序。应当理解的是,这样使用的数据在适当情况下可以被互换,以便本文描述的本公开内容的实施例可以以除了在附图中所示的或在本公开内容中描述的那些顺序以外的顺序实现。
VVC标准的第一版于2020年7月定稿,其与在前一代视频编解码标准HEVC相比提供了大约50%的比特率节省或者同等的感知质量。尽管VVC标准与其以前的标准相比提供了显著的编解码改进,但是有证据表明,利用额外的编解码工具可以实现更优越的编解码效率。最近,在ITU-TVCEG和ISO/IEC MPEG的合作下,联合视频探索团队(JVET)开始对能够实现VVC的编解码效率的大幅增强的先进技术进行探索。2021年4月,建立了一个名为增强型压缩模型(ECM)的软件代码库,用于未来的视频编解码探索工作。ECM参考软件是基于由JVET为VVC开发的VVC测试模型(VTM)的,其中进一步扩展和/或改进了若干现有的模块(例如,帧内/帧间预测、变换、环路滤波器等)。将来,任何超出VVC标准的新编解码工具都需要被集成到ECM平台中,并且使用JVET公共测试条件(CTC)进行测试。
与所有之前的视频编解码标准类似,ECM是建立在基于块的混合视频编解码框架之上的。图1示出通用的基于块的混合视频编码系统的框图。输入视频信号被逐块(被称为编码单元(CU))处理。在ECM-1.0中,CU可以多达128x128像素。然而,与VVC相同,一个编码树单元(CTU)被拆分成CU,以适应基于四叉树/二叉树/三叉树的不同局部特性。在多类型树结构中,一个CTU首先按照四叉树结构被分割。然后,每个四叉树叶节点可以按照二叉树和三叉树结构被进一步分割。如图2A、2B、2C、2D和2E中所示,存在五种拆分类型,四元分割、垂直二元分割、水平二元分割、垂直扩展四元分割和水平扩展四元分割。
在图1中,可以执行空间预测和/或时间预测。空间预测(或“帧内预测”)使用来自同一视频图片/条带中的已编码的相邻块的样点(其被称为参考样点)的像素来预测当前视频块。空间预测减少了视频信号中固有的空间冗余。时间预测(也被称为“帧间预测”或“运动补偿预测”)使用来自已编码的视频图片的重构像素来预测当前视频块。时间预测减少了视频信号中固有的时间冗余。通常通过一个或多个运动矢量(MV)发信号通知针对给定CU的时间预测信号,MV指示当前CU与其时间参考之间的运动的量和方向。而且,如果支持多个参考图片,则另外发送一个参考图片索引,该参考图片索引被用于识别时间预测信号来自参考图片存储中的哪个参考图片。在空间和/或时间预测之后,编码器中的模式决策块例如基于率失真优化方法来选择最佳预测模式。然后,从当前视频块中减去预测块;并且使用变换对预测残差进行去相关并量化。经量化残差系数被逆量化和逆变换,以形成经重构残差,然后将经重构残差添加回预测块以形成CU的经重构信号。此外,在经重构CU被放入参考图片存储中并被用于对未来的视频块进行编码之前,可以将环路滤波(诸如去块滤波器、样点自适应偏移(SAO)和自适应环路滤波器(ALF))应用于经重构CU上。为了形成输出视频比特流,编码模式(帧间或帧内)、预测模式信息、运动信息和经量化残差系数均被发送到熵编码单元,以被进一步压缩和打包以形成比特流。应当注意的是,如本文使用的术语“块”或“视频块”可以是帧或图片的一部分,尤其是矩形(正方形或非正方形)部分。参考例如HEVC和VVC,块或视频块可以是或对应于编码树单元(CTU)、CU、预测单元(PU)或变换单元(TU)和/或可以是或对应于相应的块(例如,编码树块(CTB)、编码块(CB)、预测块(PB)或变换块(TB))和/或子块。
图3示出基于块的视频解码器的总体框图。视频比特流首先在熵解码单元处进行熵解码。编码模式和预测信息被发送到空间预测单元(如果是帧内编码)或时间预测单元(如果是帧间编码),以形成预测块。残差变换系数被发送到逆量化单元和逆变换单元以重构残差块。然后将预测块和残差块相加在一起。经重构块在其被存储在参考图片存储中之前可以进一步经过环路滤波。然后将参考图片存储中的经重构视频发送出去以驱动显示设备,并且被用于预测未来的视频块。
本公开内容的主要重点是进一步增强被应用于ECM中的跨分量预测的编解码工具、跨分量线性模型(CCLM)的编解码效率。在下文中,简要回顾了ECM中的一些相关的编解码工具。然后,讨论了CCLM的现有设计中的一些不足之处。最后,提出了改进现有CCLM预测设计的解决方案。
为了减少跨分量冗余,在VVC中使用跨分量线性模型(CCLM)预测模式,针对CCLM,色度样点是通过使用如下所示的线性模型基于同一CU的经重构亮度样点来预测的:
predC(i,j)=α·recL′(i,j)+ β (1)
其中,predC(i,j)表示CU中的经预测色度样点,并且recL'(i,j)表示通过对经重构亮度样点recL(i,j)执行下采样获得的同一CU的经下采样的重构亮度样点,并且α和β是线性模型参数,这些线性模型参数是从最多四个相邻色度样点及其对应的经下采样的亮度样点导出的,这些样点可以被称为相邻亮度-色度样点对。假设当前色度块具有W×H的尺寸,则如下所示获得W’和H’:
—当应用LM模式时,W’=W,H’=H;
—当应用LM-A模式时,W’=W+H;
—当应用LM-L模式时,H’=H+W。
其中,在LM模式中,CU的上方样点和左侧样点一起被用于计算线性模型系数;在LM_A模式中,仅CU的上方样点被用于计算线性模型系数;并且在LM_L模式中,仅CU的左侧样点被用于计算线性模型系数。
如果色度块的上方相邻样点的位置被表示为S[0,-1]…S[W’-1,-1],并且色度块的左侧相邻样点的位置被表示为S[-1,0]…S[-1,H’-1],则如下所示选择四个相邻色度样点的位置:
—当应用LM模式并且上方和左侧相邻样点都可用时,选择S[W’/4,-1]、S[3*W’/4,-1]、S[-1,H’/4]、S[-1,3*H’/4]作为四个相邻色度样点的位置;
—当应用LM-A模式或仅上方样点可用时,选择S[W’/8,-1]、S[3*W’/8,-1]、S[5*W’/8,-
1]、S[7*W’/8,-1]作为四个相邻色度样点的位置;
—当应用LM-L模式或仅左侧相邻样点可用时,选择S[-1,H’/8]、S[-1,3*H’/8]、S[-1,
5*H’/8]、S[-1,7*H’/8]作为四个相邻色度样点的位置。
通过下采样操作获得与所选择的位置相对应的四个相邻亮度样点,并将获得的四个相邻亮度样点比较四次以找到两个较大的值:x0 A和x1 A以及两个较小的值x0 B和x1 B。与两个较大值和两个较小值相对应的色度样点值被分别表示为y0 A、y1 A、y0 B和y1 B。然后,如下导出Xa、Xb、Ya和Yb:
Xa=(x0 A+x1 A+1)>>1;
Xb=(x0 B+x1 B+1)>>1;
Ya=(y0 A+y1 A+1)>>1;
Yb=(y0 B+y1 B+1)>>1(2)
最后,根据以下等式获得线性模型参数α和β:
β=Yb-α·Xb (4)
图4示出在CCLM模式中涉及的左侧样点和上方样点以及当前块的样点的位置的示例,包括CU中的N×N色度块的左侧样点和上方样点的位置以及CU中的2N×2N亮度块的左侧样点和上方样点的位置。
用于计算参数α的除法运算是利用查找表实现的。为了减少存储该表格所需的存储量,通过指数符号表达diff值(最大值与最小值之间的差值)和参数α。例如,采用4比特有效部分和指数近似diff。因此,1/diff的表格被简化成如下所示的用于该有效数字的16个值的16个元素:
DivTable[]={0,7,6,5,5,4,4,3,3,2,2,1,1,1,1,0}(5)
这将具有既降低计算的复杂度又降低存储必要表格所需的存储器尺寸。
除了上方模板和左侧模板可以一起被用于计算线性模型系数之外,它们还可以在其它2种LM模式(被称为LM_A和LM_L模式)中交替使用。
在LM_T模式中,仅上方模板被用于计算线性模型系数。为了获得更多样点,将上方模板扩展至(W+H)个样点。在LM_L模式中,仅左侧模板被用于计算线性模型系数。为了获得更多样点,将左侧模板扩展至(H+W)个样点。
在LM_LT模式中,左侧模板和上方模板被用于计算线性模型系数。
为了匹配4:2:0视频序列的色度样点位置,对亮度样点应用两种类型的下采样滤波器,以在水平方向和垂直方形上都取得2比1的下采样比。通过SPS级标志来指定对下采样滤波器的选择。两个下采样滤波器如下所示,它们分别对应于“类型0”和“类型2”内容。
注意,当上部参考行位于CTU边界处时,仅一个亮度行(帧内预测中的一般行缓存器)被用于产生经下采样亮度样点。
这种参数计算是作为解码过程的部分执行的,而非仅作为编码器搜索操作来执行。因此,不使用语法向解码器传达α值和β值。
对于色度帧内模式编码,对色度帧内模式编码允许总共8个帧内模式。这些模式包括五种传统帧内模式和三种跨分量线性模型模式(CCLM、LM_A和LM_L)。色度模式信令和导出过程在表1中示出。色度模式编码直接取决于对应的亮度块的帧内预测模式。由于在I切片中启用了针对亮度分量和色度分量的单独块分割结构,因此一个色度块可以对应于多个亮度块。因此,对于色度DM模式,直接继承覆盖当前色度块的中心位置的对应的亮度块的帧内预测模式。
表1-当启用cclm时从亮度模式导出色度预测模式
如表2中所示,无论sps_cclm_enabled_flag的值如何,都使用单个二值化表。
表2-用于色度预测模式的统一二值化表
intra_chroma_pred_mode的值 | 二进制串 |
4 | 00 |
0 | 0100 |
1 | 0101 |
2 | 0110 |
3 | 0111 |
5 | 10 |
6 | 110 |
7 | 111 |
在表2中,第一个二进制指示它是常规模式(0)还是LM模式(1)。如果它是LM模式,则下一个二进制指示它是LM_CHROMA(0)还是不是LM_CHROMA。如果它不是LM_CHROMA,则下一个二进制指示它是LM_L(0)还是LM_A(1)。对于这种情况,当sps_cclm_enabled_flag为0时,可以在熵编码之前丢弃对应的intra_chroma_pred_mode的二值化表的第一个二进制。或者,换句话说,第一个二进制被推断为0,并且因此未被编码。该单个二值化表被用于sps_cclm_enabled_flag等于0和1的情况。表2中的前两个二进制是使用其自己的上下文模型进行上下文编码的,并且其余二进制是旁路编码的。
此外,为了减少双树中的亮度-色度时延,当64×64亮度编码树节点采用非拆分(Not Split)(并且ISP不被用于64×64CU)或QT进行分割时,允许32×32/32×16色度编码树节点中的色度CU按以下方式使用CCLM:
—如果32×32色度节点未拆分或分割QT拆分,则32×32节点中的所有色度CU都可以使
用CCLM
—如果32×32色度节点采用水平BT进行分割,并且32×16子节点不拆分或使用垂直BT拆分,则32×16色度节点中的所有色度CU都可以使用CCLM
在所有其它亮度和色度编码树拆分条件下,针对色度CU不允许CCLM。
在ECM开发期间,去除了α和β的简化导出(最小-最大近似)。相反,在下采样亮度样点和因果色度样点的因果重构数据之间进行线性最小二乘求解,以导出模型参数α和β。
其中,RecC(i)和Rec’L(i)指示目标块周围的经重构色度样点和经下采样亮度样点,I指示相邻数据的总样点数。
LM_A、LM_L模式也被称为多方向线性模型(MDLM)。图5A示出当无法从L形重构区域预测块内容时MDLM工作的示例。图5B示出仅使用左侧重构样点来导出CCLM参数的MDLM_L。图5C示出仅使用顶部重构样点来导出CCLM参数的MDLM_T。
在ECM-1.0中,提出了多模型LM(MMLM)预测模式,很多MMLM预测模式,色度样点是通过使用如下所示的两个线性模型基于同一CU的经重构亮度样点来预测的:
其中,predC(i,j)表示CU中的经预测色度样点,并且recL′(i,j)表示同一CU的经下采样重构亮度点。Threshold(门限)被计算为相邻重构亮度样点的平均值。图6示出基于值Threshold将相邻样点分类成两组的示例。对于每组,参数αi和βi(其中i分别等于1和2)从来自两个样点的亮度值与色度值之间的直线关系导出,这两个样点是组内的最小亮度样点A(XA,YA)和最大亮度样点B(XB,YB)。这里XA、YA是针对样点A的x坐标值(即,亮度值)和y坐标值(即,色度值),并且XB、YB是针对样点B的x坐标值和y坐标值。线性模型参数α和β是根据以下等式获得的。
β=yA-αXA (11)
这样的方法也被称为最小-最大方法。可以避开上述等式中的除法,而用乘法和移位来代替。
对于具有正方形形状的编码块,直接应用上述两个等式。对于非正方形的编码块,首先对较长边界的相邻样点进行二次采样,以具有与较短边界相同的样点数量。
除了其中上方模板和左侧模板一起被用于计算线性模型系数的场景之外,两个模板还可以在其它两个MMLM模式(被称为MMLM_A模式和MMLM_L模式)中交替使用。
在MMLM_A模式中,仅上方模板中的像素样点被用于计算线性模型系数。为了获得更多样点,将上方模板扩展至(W+H)的尺寸。在MMLM_L模式中,仅左侧模板中的像素样点被用于计算线性模型系数。为了获得更多样点,将左侧模板扩展至(H+H)的尺寸。
注意,当上部参考行位于CTU边界处时,仅一个亮度行(其被存储在行缓冲器中用于帧内预测)被用于产生下采样亮度样点。
对于色度帧内模式编码而言,针对色度帧内模式编码允许总共11个帧内模式。这些模式包括五种传统帧内模式和六种跨分量线性模型模式(CCLM、LM_A、LM_L、MMLM、MMLM_A和MMLM_L)。色度模式信令和导出过程在表3中示出。色度模式编码直接取决于对应的亮度块的帧内预测模式。由于在I切片中启用了针对亮度分量和色度分量的单独块分割结构,因此一个色度块可以对应于多个亮度块。因此,对于色度DM模式,直接继承覆盖当前色度块的中心位置的对应的亮度块的帧内预测模式。
表3-当启用MMLM时从亮度模式导出色度预测模式
MMLM和LM模式也可以以自适应方式一起使用。对于MMLM,两个线性模型如下所示:
其中,predC(i,j)表示CU中的经预测色度样点,并且recL′(i,j)表示同一CU的经下采样重构亮度样点。Threshold(门限)可以基于亮度平均值和色度平均值以及亮度的最小值和最大值以及色度的最小值和最大值一起来简单地确定。图7示出基于拐点T(由箭头指示)将相邻样点分类成两组的示例。线性模型参数α1和β1从来自两个样点的亮度值与色度值之间的直线关系导出,这两个样点是最小亮度样点A(XA,YA)和Threshold(XT,YT)。线性模型参数α2和β2从来自两个样点的亮度值与色度值之间的直线关系导出,这两个样点是最大亮度样点B(XB,YB)和Threshold(XT,YT)。这里XA、YA是针对样点A的x坐标值(即,亮度值)和y坐标值(即,色度值),并且XB、YB是针对样点B的x坐标值和y坐标值。对于每组的线性模型参数αi和βi(其中i分别等于1和2)是根据以下等式获得的。
β1=YA-α1XA
β2=YT-α2XT (13)
对于具有正方形形状的编码块,直接应用上述等式。对于非正方形的编码块,首先对较长边界的相邻样点进行二次采样,以具有与较短边界相同的样点数量。
除了其中上方模板和左侧模板一起被用于确定线性模型系数的场景之外,两个模板还可以在其它两种MMLM模式(分别被称为MMLM_A模式和MMLM_L模式)中交替使用。
在MMLM_A模式中,仅上方模板中的像素样点被用于计算线性模型系数。为了获得更多样点,将上方模板扩展至(W+W)的尺寸。在MMLM_L模式中,仅左侧模板中的像素样点被用于计算线性模型系数。为了获得更多样点,将左侧模板扩展至(H+H)的尺寸。
注意,当上部参考行位于CTU边界处时,仅一个亮度行(其被存储在行缓冲器中用于帧内预测)被用于产生下采样亮度样点。
对于色度帧内模式编码,存在被用于选择LM模式(CCLM、LM_A和LM_L)或多模型LM模式(MMLM、MMLM_A和MMAM_L)的条件检查。该条件检查如下所示:
其中,BlkSizeThresLM表示LM模式的最小块尺寸,并且BlkSize ThresMM表示MMLM模式的最小块尺寸。符号d表示预先确定的门限。在一个示例中,d可以取为0的值。在另一示例中,d可以取为8的值。
对于色度帧内模式编码,针对色度帧内模式编码允许总共8个帧内模式。这些模式包括五种传统帧内模式和三种跨分量线性模型模式。色度模式信令和导出过程在表1中示出。值得注意的是,对于给定CU,如果该CU是在线性模型模式下编码的,那么基于上述条件检查来确定该线性模型模式是传统的单模型LM模式还是MMLM模式。与表3中所示的情况不同,没有要发信号通知的单独MMLM模式。色度模式编码直接取决于对应的亮度块的帧内预测模式。由于在I切片中启用了针对亮度分量和色度分量的单独块分割结构,因此一个色度块可以对应于多个亮度块。因此,对于色度DM模式,直接继承覆盖当前色度块的中心位置的对应的亮度块的帧内预测模式。
多参考行(MRL)帧内预测使用更多的参考行用于帧内预测。在图8中,描绘了4个参考行的示例,其中段A和段F的样点不是从经重构的相邻样点中提取的,而是分别用来自段B和段E的最接近的样点填充的。HEVC帧内图片预测使用最近的参考行(即,参考行0)。在MRL中,使用2个额外的行(参考行1和参考行3)。
选择的参考行的索引(mrl_idx)被发信号通知并且被用于生成帧内预测值。对于大于0的参考行索引,仅在MPM列表中包括额外的参考行模式,并且仅发信号通知mpm索引而没有其余模式。在帧内预测模式之前发信号通知参考行索引,并且如果发信号通知非零参考行索引,则帧内预测模式不包括平面模式。
对CTU内的块的第一行禁用MRL,以防止在当前CTU行外使用扩展的参考样点。此外,当使用额外的行时,PDPC被禁用。对于MRL模式,非零参考行索引的DC帧内预测模式中的DC值的导出与参考行索引0的导出对准。MRL需要存储具有CTU的3个相邻亮度参考行来生成预测。跨分量线性模型(CCLM)工具还需要3个相邻亮度参考行用于其下采样滤波器。使用相同3行的MRL的定义与CCLM一致,以减少解码器的存储要求。
在现有的CCLM或MMLM设计中,相邻重构亮度-色度样点对基于值Threshold被分类成一个或多个样点组,该值Threshold仅考虑亮度DC值。也就是说,通过仅考虑亮度样点的强度来对亮度-色度样点对进行分类。然而,亮度分量通常保留丰富的纹理,并且当前亮度样点可以与相邻亮度样点高度相关,这样的样点间相关性(AC相关性)可以有利于亮度-色度样点对的分类,并且可以带来额外的编解码效率。
此外,如图9A中所示,CCLM假设给定的色度样点只与对应的亮度样点(L0.5,其可以作为分数亮度样点位置)相关,并且使用具有普通最小二乘法(OLS)估计的简单线性回归(SLR)来预测给定的色度样点。然而,如图9B中所示,在某个视频内容中,一个色度样点可能同时与多个亮度样点相关(AC或DC相关),因此多元线性回归(MLR)模型可以进一步提高预测精度。
本公开内容的重点是通过引入考虑亮度边缘或AC信息的分类器来提高亮度分量和色度分量的编解码效率。除了现有的带分类的MMLM之外,本公开内容还提供了示例性的提出的分类器。生成用于不同样点组的线性预测模型的过程可能类似于CCLM或MMLM(例如,经由最小二乘法或简化的最小-最大方法等),但具有用于分类的不同的度量。
本公开内容的重点还在于导出基于滤波器的线性模型(FLM),以进一步提高预测精度。
在本公开内容的一个方面中,第一分类器可以被用于对相邻亮度样点(例如,相邻亮度-色度样点对中的相邻亮度样点)和/或对应于要被预测的色度样点的亮度样点进行分类。对应于色度样点的亮度样点可以通过下采样操作来获得,以匹配4:2:0视频序列的对应的色度样点的位置。例如,对应于色度样点的亮度样点可以通过对对应于色度样点的多于一个(例如,4个)重构亮度样点(例如,位于色度样点周围)执行下采样操作来获得。替代地,例如,在4:4:4视频序列的情况下,可以直接从经重构亮度样点获得亮度样点。替代地,亮度样点可以从位于对应的色度样点的相应的同位位置处的经重构亮度样点中的相应的经重构亮度样点获得。例如,要被分类的亮度样点可以从对应于色度样点的四个经重构亮度样点中的一个经重构亮度样点获得,该经重构亮度样点位于四个经重构亮度样点的左上方位置,其可以被视为色度样点的同位位置。第一分类器可以根据亮度样点的边缘强度对其进行分类。例如,可以选择一个方向(例如,0度、45度或90度等)来计算边缘强度。方向可以由当前样点和沿该方向的相邻样点(例如,位于当前样点的右上方45度的相邻样点)形成。可以通过从当前样点中减去相邻样点来计算边缘强度。边缘强度可以通过M-1个门限被量化成M个段中的一个段,并且第一分类器可以使用M个类别对当前样点进行分类。替代地或另外地,N个方向可以由当前样点和沿N个方向的N个相邻样点形成。可以通过分别从当前样点中减去N个相邻样点来计算N个边缘强度。类似地,如果N个边缘强度中的每个边缘强度可以通过M-1个门限被量化成M个段中的一个段,则第一分类器可以使用MN个类别对当前样点进行分类。
在本公开内容的另一方面中,第二分类器可以被用于根据局部图案进行分类。例如,当前亮度样点Y0可以与其相邻的N个亮度样点Yi进行比较。如果Y0的值大于Yi的值,则可以将分数加1,否则,可以将分数减1。分数可以被量化以形成K个类别。第二分类器可以将当前样点分类成K个类别中的一个类别。例如,相邻亮度样点可以从位于当前亮度样点上方、左侧、右侧和下方的四个邻居获得,即没有对角线邻居。
在本公开内容的一个或多个方面中,可以组合多个第一分类器、第二分类器或本文描述的第一分类器或第二分类器或其它分类器的不同实例。例如,第一分类器可以与现有的基于MMLM门限的分类器组合。对于另一示例,第一分类器的实例A可以与第一分类器的另一实例B组合,其中实例A和实例B采用不同的方向(例如,分别采用垂直方向和水平方向)。
本领域技术人员将认识到的是,尽管VVC标准中的现有CCLM设计被用作描述中的基础CCLM方法,但是在本公开内容中描述的提出的跨分量方法也可以被应用于采用相似设计精神的其它预测编解码工具。例如,对于AV1标准中来自亮度的色度(CfL),也可以通过将亮度/色度样点对划分成多个样点组来应用所提出的方法。
本领域技术人员将认识到的是,Y/Cb/Cr在视频编解码领域中也可以被表示为Y/U/V。例如,如果视频数据是RGB格式的,则也可以通过将YUV符号简单地映射到GBR来应用所提出的方法。
图14示出根据本公开内容的一个或多个方面的用于对视频数据进行解码的方法1400的工作流。方法1400可以使用本文描述的分类器中的任何一个分类器或其任何组合,并且可以由视频解码器(例如,图3的视频解码器)使用。在步骤1410处,可以从比特流获得视频数据的视频块(例如,CU)。例如,可以接收视频数据的亮度样点的编码块。可以对亮度样点的编码块进行解码以获得经重构亮度样点。在步骤1420处,可以基于亮度样点的边缘信息将亮度样点分类成多个样点组中的一个样点组。亮度样点可以对应于视频块的要被预测的色度样点,并且可以从经重构亮度样点中的一个或多个经重构亮度样点获得。例如,可以对经重构亮度样点执行或不执行下采样操作,以获得亮度样点。例如,可以通过使用本文描述的分类器中的一个分类器或其任何组合来执行分类。在步骤1430处,可以通过将对应于所分类的样点组的多个线性预测模型中的一个线性预测模型应用于亮度样点来预测色度样点。
在实施例中,将亮度样点分类成多个样点组中的一个样点组可以进一步基于亮度样点的强度值(例如,与现有的基于MMLM门限的分类器相结合)。
在实施例中,多个样点组中的每个样点组可以对应于多个线性预测模型中的不同线性预测模型。
在实施例中,边缘信息可以包括亮度样点的边缘的方向和强度。
在实施例中,将亮度样点分类成多个样点组中的一个样点组可以包括基于沿亮度样点的一个方向的边缘的强度或沿亮度样点的不同方向的边缘的多个强度将亮度样点分类成多个样点组中的一个样点组。
在实施例中,方法1400可以包括基于视频块周围的相邻亮度样点的边缘信息将这些相邻亮度样点分类成多个样点组。多个线性预测模型中的每个线性预测模型可以例如通过最小二乘法或简化的最小-最大方法等从被分类成对应于该线性预测模型的样点组的相邻亮度样点和对应于被分类成样点组的相邻亮度样点的相邻色度样点导出(例如,相邻亮度-色度样点对,其中的亮度样点被分类成对应于该线性预测模型的样点组)。
图15示出根据本公开内容的一个或多个方面的用于对视频数据进行编码的方法1500的工作流。方法1500可以使用本文描述的分类器中的任何一个分类器或其任何组合,并且可以由视频编码器(例如,图1的视频编码器)使用。在步骤1510处,可以从视频帧中获得视频数据的视频块。例如,可以对视频数据的亮度样点的块进行编码以获得亮度样点的编码块。可以对亮度样点的编码块进行解码以获得经重构亮度样点。在步骤1520处,可以基于亮度样点的边缘信息将对应于色度样点的亮度样点分类成多个样点组中的一个样点组,其中,亮度样点是从经重构亮度样点中的一个或多个经重构亮度样点获得的。在步骤1530处,可以通过将对应于所分类的样点组的多个线性预测模型中的一个线性预测模型应用于亮度样点来预测色度样点。
在本公开内容的一个或多个方面中,对于要被预测的色度样点,经重构的同位和相邻亮度样点可以被用于预测色度样点,以捕获同位亮度样点、相邻亮度样点和色度样点之间的样点间相关性。对经重构亮度样点进行线性加权,并且与一个“偏移”相结合,以生成经预测色度样点(C:经预测色度样点,Li:第i个经重构的同位或相邻亮度样点,αi:滤波器系数,β:偏移,N:滤波器抽头)。注意,线性加权加上偏移值直接形成经预测色度样点(根据视频内容自适应地可以是低通、高通),并且然后与残差相加以形成经重构色度样点。
对于给定CU,顶部和左侧重构亮度和色度样点可以被用于导出或训练FLM参数((αi,,β)。与CCLM一样,αi和β可以经由OLS导出。收集顶部和左侧训练样点,并且在编码器和解码器两侧计算一个伪逆矩阵,以导出参数,然后这些参数被用于预测给定CU中的色度样点。令N表示被应用于亮度样点的滤波器抽头的数量,M表示被用于训练参数的总顶部和左侧重构亮度和色度样点对数,表示具有第i个样点对和第j个滤波器抽头的亮度样点,Ci表示具有第i个样点对的色度样点,以下公式示出了伪逆矩阵A+的导出以及参数。图10示出N为6(6抽头)、M为8的示例。顶部2行和左侧3列亮度样点以及顶部1行和左侧1列色度样点被用于导出或训练参数。
b=Ax
x=(ATA)-1ATb=A+b (16)
请注意,可以仅通过αi而没有偏移β来预测色度样点,这可以是所提出的方法的一个子集。
请注意,尽管VVC标准中的现有CCLM设计被用作以下描述中的基础CCLM方法,但是对于视频编解码领域的技术人员而言,在本公开内容中描述的提出的跨分量方法也可以被应用于采用相似设计精神的其它预测编解码工具。例如,对于AV1标准中来自亮度的色度(CfL),也可以通过将多个亮度样点包括到MLR模型来应用所提出的FLM。
注意,Y/Cb/Cr在视频编解码领域中也可以被表示为Y/U/V。
注意,例如,如果视频是RGB格式,则也可以通过在下面的段落中将YUV符号简单地映射到GBR来应用所提出的FLM。
注意,本公开内容中的附图可以与本公开内容中提到的所有示例相结合。
图16示出根据本公开内容的一个或多个方面的用于对视频数据进行编码的方法1600的工作流。在步骤1610处,可以从视频帧获得视频块(例如,包括亮度块和/或色度块的CU)。在步骤1620处,可以确定被用于导出多元线性回归(MLR)模型的区域。例如,该区域可以包括与色度块及其同位亮度块相邻的左侧一列或多列和/或顶部一行或多行重构色度样点和亮度样点,例如,如图10中所示,与同位亮度块相邻的左侧3列和顶部2行重构亮度样点以及与色度块相邻的左侧1列和顶部1行重构色度样点。
在步骤1630处,可以获得区域中的亮度样点值和色度样点值。例如,可以直接使用区域中的重构亮度样点的值和重构色度样点的值,而无需进行任何修改,诸如下采样等。
在步骤1640处,可以使用区域中的亮度样点值和色度样点值来导出MLR模型。MLR模型可以包括至少两个系数αi和一个偏移β。例如,可以导出具有六个系数αi和一个偏移β的MLR模型,以使用六个亮度样点和一个偏移来预测一个色度样点。MLR模型的导出可以包括伪逆矩阵计算和正规方程,并且导出标量β,A+中的最右边的列必须被设置为1。
在步骤1650处,可以通过将MLR模型应用于该色度样点的对应亮度样点来预测视频块中的色度样点中的每个色度样点。每个色度样点(例如,如图10中所示的色度样点0’)的对应亮度样点可以包括该色度样点的同位亮度样点(例如,如图10中所示的亮度样点0’、1’、2’、3’、4’和5’)。例如,可以直接使用经重构同位亮度样点的值,而无需进行任何修改,诸如下采样等。
在步骤1660处,可以使用经预测色度样点来获得编码视频块。例如,编码视频块可以被包括在比特流中进行发送或用于存储。
图17示出根据本公开内容的一个或多个方面的用于对视频数据进行解码的方法1700的工作流。在步骤1710处,可以从比特流获得视频块(例如,CU)。在步骤1720处,可以确定被用于导出多元线性回归(MLR)模型的区域。在步骤1730处,可以获得该区域中的亮度样点值和色度样点值。在步骤1740处,可以使用区域中的亮度样点值和色度样点值来导出MLR模型。在步骤1750处,可以通过将MLR模型应用于该色度样点的对应亮度样点来预测视频块中的色度样点中的每个色度样点。在步骤1760处,可以使用经预测色度样点来获得解码视频块。
为了进一步提高编解码性能,可以在FLM预测中使用额外的设计。如图10中所示,6抽头亮度滤波器被用于FLM预测。然而,尽管多抽头滤波器可以很好地适应训练数据(例如,顶部和左侧相邻重构亮度样点和色度样点),但是在一些情况下,训练数据无法捕获测试数据的全部特征,这可能导致过度拟合,并且可能无法很好地预测测试数据(即,要被预测的色度块样点)。此外,不同的滤波器形状可以很好地适应不同的视频块内容,导致更准确的预测。
为了解决该问题,滤波器形状和滤波器抽头的数量可以在序列参数集(SPS)、适配参数集(APS)、图片参数集(PPS)、图片标头(PH)、条带标头(SH)、区域、CTU、CU、子块或样点级别中预定义或发信号通知或切换。可以预定义滤波器形状候选的集合,并且对滤波器形状候选的集合的选择可以在SPS、APS、PPS、PH、SH、区域、CTU、CU、子块或样点级别中发信号通知或切换。不同的分量(例如,U和V)可以具有不同的滤波器开关控制。例如,可以预定义滤波器形状候选的集合(例如,用索引0~5指示),并且滤波器形状(1,2)可以表示2抽头亮度滤波器,滤波器形状(1,2,4)可以表示3抽头亮度滤波器等等,如图10中所示。U分量和V分量的滤波器形状选择可以在PH中或在CU或CTU级别中切换。注意,如本文所述,N-抽头可以表示具有或没有偏移β的N-抽头。如下给出一个示例。
在本公开内容的一个方面中,不同的色度类型和/或颜色格式可以具有不同的预定义的滤波器形状和/或抽头。例如,预定义的滤波器形状(1,2,4,5)可以被用于4:2:0类型-0,预定义的滤波器形状(0,1,2,4,7)可以被用于4:2:0类型-2,以及预定义的滤波器形状(1,4)可以被用于4:2:2,并且预定义的滤波器形状(0,1,2,3,4,5)可以被用于4:4:4,如图11中所示。
在本公开内容的另一方面中,用于导出MLR模型的不可用的亮度样点和色度样点可以从可用的重构样点中填充。例如,如果使用如图11中的6抽头(0,1,2,3,4,5)滤波器,则对于位于左侧图片边界处的CU,包括样点(0,3)的左侧列是不可用的(超出图片边界),因此样点(0,3)从样点(1,4)中重复的填充,以应用6抽头滤波器。注意,填充过程可以被应用于训练数据(顶部和左侧相邻重构亮度样点和色度样点)和测试数据(CU中的亮度样点和色度样点)两者。
图18示出根据本公开内容的一个或多个方面的用于对视频数据进行解码的方法1800的工作流。在步骤1810处,可以从比特流获得视频块(例如,包括亮度块和/或色度块的CU)和滤波器形状信息。滤波器形状信息可以指示用于导出MLR模型和应用MLR的滤波器的形状和/或滤波器抽头的数量。例如,滤波器形状信息可以在序列参数集(SPS)、适配参数集(APS)、图片参数集(PPS)、图片标头(PH)、条带标头(SH)、区域、编码树单元(CTU)、编码单元(CU)、子块或样点级别中发信号通知。滤波器形状信息可以包括多个滤波器形状候选中的一个滤波器形状候选的索引,以指示要使用的多个滤波器形状候选中的哪个滤波器形状候选。多个滤波器形状候选可以是预定义的,并且可以具有不同的滤波器形状和/或不同的滤波器抽头数量,例如,具有2抽头的滤波器形状(1,2)、具有3抽头的滤波器形状(1,2,4)和具有6抽头的滤波器形状(0,1,2,3,4,5)等等,如图10和图11中所示。
在步骤1820处,可以确定用于导出多元线性回归(MLR)模型的区域。例如,该区域可以包括与色度块及其同位亮度块相邻的左侧一列或多列和/或顶部一行或多行重构色度样点和亮度样点,例如,如图10中所示,与同位亮度块相邻的左侧3列和顶部2行重构亮度样点以及与色度块相邻的左侧1列和顶部1行重构色度样点;或如图11中所示,与同位亮度块相邻的左侧3列和顶部3行重构亮度样点以及与色度块相邻的左侧1列和顶部1行重构色度样点,等等。
在步骤1830处,可以获得区域中的亮度样点值和色度样点值。如果区域中的一些样点不可用,则可以使用填充。例如,可以通过在区域中重复可用的样点值来执行填充。对于其它示例,可以通过插入预定义的值(例如,0或1)等来执行填充。
在步骤1840处,可以基于滤波器形状信息使用区域中的亮度样点值和色度样点值来导出MLR模型。例如,可以基于如图11中所示的滤波器形状(0,1,2,3,4,5)导出MLR模型,以具有六个系数,或者可以基于如图11中所示的滤波器形状(0,1,2,3,4,5,6,7,8)导出MLR模型,以具有九个系数,其中被用于训练或导出MLR模型的亮度样点值和色度样点值对可以根据滤波器形状信息从区域中确定。
在步骤1850处,可以基于滤波器形状信息通过将MLR模型应用于该色度样点的对应亮度样点来预测视频块中的色度样点中的每个色度样点。可以基于滤波器形状信息来确定被用于预测当前色度样点的对应亮度样点。如果对应亮度样点中的一些亮度样点不可用,则可以使用填充。例如,可以通过为不可用的亮度样点重复对应亮度样点中的可用亮度样点的值来执行填充。
在步骤1860处,可以使用经预测色度样点来获得解码视频块。可以基于相同或不同的滤波器形状信息来预测视频块的不同的色度分量(例如,U和V)。例如,在上述示例中,可以基于指示索引3或4的滤波器形状信息使用MLR模型来预测色度分量U,并且可以基于指示索引0、1、2、3、4或5的滤波器形状信息使用MLR模型来预测色度分量V。不同的颜色格式可以具有不同的滤波器信息,其指示不同的滤波器形状和/或滤波器抽头的数量。
图19示出根据本公开内容的一个或多个方面的用于对视频数据进行编码的方法1900的工作流。在步骤1910处,可以从视频帧获得视频块(例如,包括亮度块和/或色度块的CU)。在步骤1920处,可以确定用于导出多元线性回归(MLR)模型的区域。在步骤1930处,可以获得区域中的亮度样点值和色度样点值。在步骤1940处,可以基于滤波器形状信息使用区域中的亮度样点值和色度样点值来导出MLR模型。例如,编码器可以在FLM预测中选择要使用的多个滤波器形状候选中的哪个滤波器形状候选来导出MLR模型。多个滤波器形状候选可以具有不同的滤波器形状和/或不同的滤波器抽头数量。在步骤1950处,可以基于滤波器形状信息通过将MLR模型应用于该色度样点的对应亮度样点来预测视频块中的色度样点中的每个色度样点。在步骤1960处,可以使用经预测色度样点和滤波器形状信息来获得包括编码视频块的比特流。例如,在比特流中,滤波器形状信息可以在序列参数集(SPS)、适配参数集(APS)、图片参数集(PPS)、图片标头(PH)、条带标头(SH)、区域、编码树单元(CTU)、编码单元(CU)、子块或样点级别中发信号通知。滤波器形状信息可以经由指示从多个滤波器形状候选中选择的一个滤波器形状候选的索引的语法来携带。在一个示例中,可以使用单独的索引来指示从多个滤波器形状候选中选择的不同的滤波器形状候选,以用于不同的色度分量或用于不同的颜色格式。在另一示例中,可以使用单个索引来指示从多个滤波器形状候选中选择的相同的滤波器形状候选,以用于不同的色度分量。另外地或替代地,滤波器形状信息可以在相同或不同的级别(例如,SPS、APS、PPS、PH、SH、区域、CTU、CU、子块或样点)中发信号通知,以用于不同的色度分量。
如上所述,必须在编码器和解码器两者处导出MLR模型(线性方程)。根据本公开内容的一个或多个方面,提出了几种方法来导出伪逆矩阵A+,或直接求解线性方程。还可以应用其它已知的方法,像牛顿的方法、凯莱-哈密顿方法以及如在https:// en.wikipedia.org/wiki/Invertible_matrix中提到的特征分解。
在本公开内容中,为简化起见,A+可以被表示为A-1。所提出的方法如下所示:
1.通过转置伴随矩阵(adjA),闭式,解析解来求解A-1:
下文示出一种nxn的一般形式、一种2x2的情况和一种3x3的情况。如果FLM使用3x3,则需要求解2个标度加1个偏移。
在本节中,b=Ax,x=(ATA)-1ATb=A+b表示为A-1b
通过去除第j行和第i列得到(n-1)x(n-1)子矩阵
2.高斯-约当消元
线性方程可以通过增广矩阵[A In]和一系列初等行操作使用高斯-约当消元求解,以获得行约化阶梯形式[I|X]。下文示出2x2和3x3示例。
3.乔莱斯基分解
为了求解Ax=b,可以首先通过Cholesky-Crout算法分解A,得到一个上三角矩阵和一个下三角矩阵,并且可以串行地应用一次前向替换加一次反向替换以得到解。下文示出3x3示例。
除上述示例外,一些情况需要特殊处理。例如,如果一些情况导致线性方程无法被求解,则可以使用默认值来填充色度预测值。默认值可以是预定义的,或者在SPS/APS/PPS/PH/SH/区域/CTU/CU/子块/样点级别中发信号通知或切换,例如,当预定义1<<(bitDepth-1)或meanC-meanL(来自可用或FLM重构相邻区域子集的平均色度/亮度值)时。
以下示例表示当矩阵A无法被求解时的情况,此时可以将默认预测值指派给整个当前块:
1.通过闭式(解析,转置伴随矩阵)求解,但是A是奇异的(即,detA=0);
2.通过乔莱斯基分解求解,但是A不能进行乔莱斯基分解,gjj<REG_SQR,其中REG_SQR为一个小值,可以是预定义的、或在SPS/APS/PPS/PH/SH/区域/CTU/CU/子块/样点级别中发信号通知或切换。
图10示出使用顶部2个和/或左侧3个亮度行以及顶部1个和/或左侧1个色度行导出FLM参数的典型情况。然而,如上所述,由于不同的块内容和不同的相邻样点的重构质量,使用不同的区域进行参数导出可以带来编解码益处。下面提出了几种选择用于参数导出的应用的区域的方法:
1.与MDLM类似,FLM导出可能仅使用顶部或左侧亮度和/或色度样点来导出参数。使用FLM、FLM_L还是FLM_T可以是预定义的、或在SPS/APS/PPS/PH/SH/区域/CTU/CU/子块/样点级别中发信号通知或切换。假设当前色度块具有W×H的尺寸,则如下所示获得W’和H’:
—当应用FLM模式时,W’=W,H’=H;
—当应用FLM_T模式时,W’=W+We;其中We表示扩展的顶部亮度/色度样点;
—当应用FLM_L模式时,H’=H+He,其中He表示扩展的左侧亮度/色度样点。
扩展的亮度/色度样点(We,He)的数量可以是预定义的、或在SPS/APS/PPS/PH/SH/区域/CTU/CU/子块/样点级别中发信号通知或切换。
例如,预定义(We,He)=(H,W)为VVC CCLM,或(W,H)为ECM CCLM。不可用的(We,He)亮度/色度样点可以从最近的(水平、垂直)亮度/色度样点重复填充。
图12示出FLM_L和FLM_T的图示(例如,在4抽头下)。当应用FLM_L或FLM_T时,分别只使用H’或W’亮度/色度样点进行参数导出。
2.与MRL类似,不同的行索引可以是预定义的、或在SPS/APS/PPS/PH/SH/区域/CTU/CU/子块/样点级别中发信号通知或切换,以指示所选择的亮度和/或色度样点对行。这可能得益于不同行样点的不同的重构质量。
图13示出(与MRL类似)FLM可以使用不同的行进行参数导出(例如,在4抽头下)。例如,FLM可以使用索引1的浅蓝色/浅黄色亮度和/或色度样点。
3.扩展CCLM区域并且提取顶部N和/或左侧M行进行参数导出。图13示出可以同时使用所有深蓝色、浅蓝色和深黄色、浅黄色区域。使用更大的区域(数据)进行训练可能会产生更稳健的MLR模型。
图20示出根据本公开内容的一个或多个方面的用于对视频数据进行解码的方法2000的工作流。
在步骤2010处,可以从比特流获得视频块和区域信息,其中,区域信息包括指示从位于视频块外部的区域的集合中选择的用于导出多元线性回归(MLR)模型的区域的索引。例如,区域的集合可以包括:a)位于视频块上方的一个或多个行;b)位于视频块左侧的一个或多个行;以及c)位于视频块上方的一个或多个行和位于视频块左侧的一个或多个行。当区域是位于视频块上方的一个或多个行时,该区域或者具有与视频块相同的宽度,或者比视频块宽样点的第一预定义数量。当区域比视频块宽时,第一预定义数量与视频块的宽度或高度相同,并且其中,第一预定义数量可以在不同的编码块级别中发信号通知或切换。另一方面,当区域是位于视频块左侧的一个或多个行时,该区域或者具有与视频块相同的高度,或者比视频块长样点的第二预定义数量。当区域比视频块长时,第二预定义数量与视频块的宽度或高度相同,并且其中,第二预定义数量可以在不同的编码块级别中发信号通知或切换。在另一实施例中,当区域是位于视频块上方的一个或多个行和位于视频块左侧的一个或多个行时,该区域具有与视频块相同的高度和宽度,或该区域的高度和宽度是视频块的高度和宽度的两倍。在又一实施例中,区域与视频块相邻,或与视频块间隔位于视频块上方和/或左侧的一个或多个行。
在步骤2020处,可以基于区域信息获得区域中的亮度样点值和色度样点值。在一个实施例中,对区域中的亮度样点值和色度样点值中的一个或多个进行填充,并且其中,填充可以是来自最近样点的重复填充。
在步骤2030处,可以使用区域中的亮度和色度样点值来导出MLR模型。在一个实施例中,MLR模型是通过伪逆矩阵计算导出的,并且其中,伪逆矩阵是通过以下方法中的一种求解的:a)闭式解;b)高斯-约当消元;c)乔莱斯基分解;d)牛顿法;e)凯莱-哈密尔顿法;以及f)特征分解,并且其中,该方法还包括当伪逆矩阵不能被求解时,使用默认值作为经预测色度样点值。
在步骤2040处,可以通过将MLR模型应用于该色度样点的对应亮度样点值来预测视频块中的色度样点值中的每个色度样点值。
在步骤2050处,可以使用经预测色度样点值来获得解码视频块。
图21示出根据本公开内容的一个或多个方面的用于对视频数据进行编码的方法2100的工作流。
在步骤2110处,可以从视频帧获得视频块。
在步骤2120处,可以基于区域信息获得区域中的亮度样点值和色度样点值,其中,区域信息包括指示从位于视频块外部的区域的集合中选择的用于导出MLR模型的区域的索引。
在步骤2130处,可以使用区域中的亮度样点值和色度样点值来导出多元线性回归(MLR)模型。例如,区域的集合可以包括:a)位于视频块上方的一个或多个行;b)位于视频块左侧的一个或多个行;以及c)位于视频块上方的一个或多个行和位于视频块左侧的一个或多个行。当区域是位于视频块上方的一个或多个行时,该区域或者具有与视频块相同的宽度,或者比视频块宽样点的第一预定义数量。当区域比视频块宽时,第一预定义数量与视频块的宽度或高度相同,并且其中,第一预定义数量可以在不同的编码块级别中发信号通知或切换。另一方面,当区域是位于视频块左侧的一个或多个行时,该区域或者具有与视频块相同的高度,或者比视频块长样点的第二预定义数量。当区域比视频块长时,第二预定义数量与视频块的宽度或高度相同,并且其中,第二预定义数量可以在不同的编码块级别中发信号通知或切换。在另一实施例中,当区域是位于视频块上方的一个或多个行和位于视频块左侧的一个或多个行时,该区域具有与视频块相同的高度和宽度,或该区域的高度和宽度是视频块的高度和宽度的两倍。在又一实施例中,区域与视频块相邻,或与视频块间隔位于视频块上方和/或左侧的一个或多个行。在一个实施例中,MLR模型是通过伪逆矩阵计算导出的,并且其中,伪逆矩阵是通过以下方法中的一种求解的:a)闭式解;b)高斯-约当消元;c)乔莱斯基分解;d)牛顿法;e)凯莱-哈密尔顿法;以及f)特征分解,并且其中,该方法还包括当伪逆矩阵不能被求解时,使用默认值作为经预测色度样点值。
在步骤2140处,可以通过将MLR模型应用于该色度样点的对应亮度样点值来预测视频块中的色度样点值中的每个色度样点值。在一个实施例中,对区域中的亮度和色度样点值中的一个或多个进行填充,并且其中,填充可以是来自最近样点的重复填充。
在步骤2150处,可以使用经预测色度样点值和区域信息来获得包括编码视频块的比特流。
用于FLM预测的对应语法被定义如下。
FLC:固定长度码
TU:截断一元码
EGk:阶数为k的指数-哥伦布码,其中k可以是固定的、或在SPS/APS/PPS/PH/SH/区域/CTU/CU/子块/样点级别中发信号通知/切换。
SVLC:有符号EG0
UVLC:无符号EG0
注意,每个语法元素的二值化可以被更改。
图22示出根据本公开内容的一个或多个方面的示例性计算系统2200。计算系统2200可以包括至少一个处理器2210。计算系统2200还可以包括至少一个存储设备2220。存储设备2220可以存储计算机可执行指令,当计算机可执行指令被执行时,使处理器2210执行上述方法的步骤。处理器2210可以是通用处理器,或者还可以被实现为计算设备的组合,例如,DSP与微处理器的组合、多个微处理器、一个或多个微处理器与DSP内核的结合、或者任何其它这样的配置。存储设备2220可以存储输入数据、输出数据、由处理器2210生成的数据和/或由处理器2210执行的指令。
应当理解的是,存储设备2220可以存储计算机可执行指令,当计算机可执行指令被执行时,使处理器2210执行根据本公开内容的实施例的任何操作。
本公开内容的实施例可以被体现在计算机可读介质(诸如非暂时性计算机可读介质)中。非暂时性计算机可读介质可以包括指令,当指令被执行时,使一个或多个处理器执行根据本公开内容的实施例的任何操作。例如,指令当被执行时,可以使一个或多个处理器接收比特流并且执行如上所述的解码操作。对于另一示例,指令当被执行时,可以使一个或多个处理器执行编码操作并且发送包括与如上所述的经预测色度样点相关联的编码视频信息的比特流。
应当理解的是,上述方法中的所有操作仅仅是示例性的,并且本公开内容不限于方法中的任何操作或这些操作的顺序,并且应当涵盖相同或类似概念下的所有其它等同物。
还应当理解的是,上述方法中的所有模块都可以以各种方法实现。这些模块可以被实现为硬件、软件或其组合。此外,这些模块中的任何模块都可以在功能上进一步划分为子模块或组合在一起。
提供先前描述,以使本领域的任何技术人员能够实施本文描述的各个方面。对于本领域技术人员而言,对这些方面的各种修改将是显而易见的,并且本文定义的一般原理可以被应用于其它方面。因此,权利要求并非旨在被限定于本文所示的方面。本领域的普通技术人员已知的或以后将会知道的、贯穿本公开内容描述的各个方面的元素的所有结构和功能等效物通过引用明确并入本文,并且旨在被权利要求所涵盖。
Claims (24)
1.一种用于对视频数据进行解码的方法,包括:
从比特流获得视频块和区域信息,其中,所述区域信息包括指示从位于所述视频块外部的区域的集合中选择的用于导出多元线性回归(MLR)模型的区域的索引;
基于所述区域信息来获得所述区域中的亮度样点值和色度样点值;
使用所述区域中的所述亮度样点值和色度样点值来导出所述MLR模型;
通过将所述MLR模型应用于该色度样点的对应亮度样点值来预测所述视频块中的所述色度样点值中的每个色度样点值;以及
使用经预测色度样点值来获得解码视频块。
2.根据权利要求1所述的方法,其中,所述区域的集合包括:a)位于所述视频块上方的一个或多个行;b)位于所述视频块左侧的一个或多个行;以及c)位于所述视频块上方的一个或多个行和位于所述视频块左侧的一个或多个行。
3.根据权利要求2所述的方法,其中,当所述区域是位于所述视频块上方的一个或多个行时,所述区域或者具有与所述视频块相同的宽度,或者比所述视频块宽样点的第一预定义数量。
4.根据权利要求3所述的方法,其中,所述第一预定义数量与所述视频块的所述宽度或高度相同,并且其中,所述第一预定义数量能够在不同的编码块级别中发信号通知或切换。
5.根据权利要求2所述的方法,其中,当所述区域是位于所述视频块左侧的一个或多个行时,所述区域或者具有与所述视频块相同的高度,或者比所述视频块长样点的第二预定义数量。
6.根据权利要求5所述的方法,其中,所述第二预定义数量与所述视频块的所述宽度或高度相同,并且其中,所述第二预定义数量能够在不同的编码块级别中发信号通知或切换。
7.根据权利要求2所述的方法,其中,当所述区域是位于所述视频块上方的一个或多个行和位于所述视频块左侧的一个或多个行时,所述区域具有与所述视频块相同的高度和宽度,或所述区域的高度和宽度是所述视频块的高度和宽度的两倍。
8.根据权利要求1所述的方法,其中,所述区域与所述视频块相邻,或与所述视频块间隔位于所述视频块上方和/或左侧的一个或多个行。
9.根据权利要求1所述的方法,其中,所述区域中的所述亮度样点值和色度样点值中的一个或多个被填充,并且其中,所述填充能够是来自最近样点的重复填充。
10.根据权利要求1所述的方法,其中,所述MLR模型是通过伪逆矩阵计算导出的,并且其中,所述伪逆矩阵是通过以下各项中的一项求解的:a)闭式解;b)高斯-约当消元;c)乔莱斯基分解;d)牛顿法;e)凯莱-哈密尔顿法;以及f)特征分解,并且其中,所述方法还包括当所述伪逆矩阵不能被求解时,使用默认值作为所述经预测色度样点值。
11.一种用于对视频数据进行编码的方法,包括:
从视频帧获得视频块;
基于区域信息来获得区域中的亮度样点值和色度样点值,其中,所述区域信息包括指示从位于所述视频块外部的区域的集合中选择的用于导出所述MLR模型的所述区域的索引;
使用所述区域中的所述亮度样点值和色度样点值来导出多元线性回归(MLR)模型;
通过将所述MLR模型应用于该色度样点的对应亮度样点值来预测所述视频块中的所述色度样点值中的每个色度样点值;以及
使用经预测色度样点值和所述区域信息来获得包括编码视频块的比特流。
12.根据权利要求11所述的方法,其中,所述区域的集合包括:a)位于所述视频块上方的一个或多个行;b)位于所述视频块左侧的一个或多个行;以及c)位于所述视频块上方的一个或多个行和位于所述视频块左侧的一个或多个行。
13.根据权利要求12所述的方法,其中,当所述区域是位于所述视频块上方的一个或多个行时,所述区域或者具有与所述视频块相同的宽度,或者比所述视频块宽样点的第一预定义数量。
14.根据权利要求13所述的方法,其中,所述第一预定义数量与所述视频块的所述宽度或高度相同,并且其中,所述第一预定义数量能够在不同的编码块级别中发信号通知或切换。
15.根据权利要求12所述的方法,其中,当所述区域是位于所述视频块左侧的一个或多个行时,所述区域或者具有与所述视频块相同的高度,或者比所述视频块长样点的第二预定义数量。
16.根据权利要求15所述的方法,其中,所述第二预定义数量与所述视频块的所述宽度或高度相同,并且其中,所述第二预定义数量能够在不同的编码块级别中发信号通知或切换。
17.根据权利要求12所述的方法,其中,当所述区域是位于所述视频块上方的一个或多个行和位于所述视频块左侧的一个或多个行时,所述区域具有与所述视频块相同的高度和宽度,或所述区域的高度和宽度是所述视频块的高度和宽度的两倍。
18.根据权利要求11所述的方法,其中,所述区域与所述视频块相邻,或与所述视频块间隔位于所述视频块上方和/或左侧的一个或多个行。
19.根据权利要求11所述的方法,其中,所述区域中的所述亮度样点值和色度样点值中的一个或多个被填充,并且其中,所述填充能够是来自最近样点的重复填充。
20.根据权利要求11所述的方法,其中,所述MLR模型是通过伪逆矩阵计算导出的,并且其中,所述伪逆矩阵是通过以下各项中的一项求解的:a)闭式解;b)高斯-约当消元;c)乔莱斯基分解;d)牛顿法;e)凯莱-哈密尔顿法;以及f)特征分解,并且其中,所述方法还包括当所述伪逆矩阵不能被求解时,使用默认值作为所述经预测色度样点值。
21.一种计算机系统,包括:
一个或多个处理器;以及
一个或多个存储设备,其存储计算机可执行指令,所述计算机可执行指令当被执行时,使所述一个或多个处理器执行根据权利要求1-20中一项所述的方法的操作。
22.一种计算机程序产品,其存储计算机可执行指令,所述计算机可执行指令当被执行时,使一个或多个处理器执行根据权利要求1-20中一项所述的方法的操作。
23.一种计算机可读介质,其存储计算机可执行指令,所述计算机可执行指令当被执行时,使一个或多个处理器接收比特流并且基于所述比特流执行根据权利要求1-10中一项所述的方法的操作。
24.一种计算机可读介质,其存储计算机可执行指令,所述计算机可执行指令当被执行时,使一个或多个处理器执行根据权利要求11-20中一项所述的方法的操作并且发送包括与所述经预测色度样点相关联的编码视频信息的比特流。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US63/308,757 | 2022-02-10 | ||
US202263317439P | 2022-03-07 | 2022-03-07 | |
US63/317,439 | 2022-03-07 | ||
PCT/US2023/012722 WO2023154410A1 (en) | 2022-02-10 | 2023-02-09 | Method and apparatus for cross-component prediction for video coding |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118679735A true CN118679735A (zh) | 2024-09-20 |
Family
ID=92717747
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202380021375.3A Pending CN118679735A (zh) | 2022-02-10 | 2023-02-09 | 用于视频编解码的跨分量预测的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118679735A (zh) |
-
2023
- 2023-02-09 CN CN202380021375.3A patent/CN118679735A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12034921B2 (en) | Apparatus and method for applying artificial neural network to image encoding or decoding | |
EP3451293A1 (en) | Method and apparatus for filtering with multi-branch deep learning | |
EP3451670A1 (en) | Method and apparatus for filtering with mode-aware deep learning | |
KR20200020859A (ko) | 비디오 인코딩 및 디코딩에서 가장 가능성있는 모드(mpm) 정렬 및 시그널링을 위한 방법 및 장치 | |
CN116866563A (zh) | 图像编码/解码方法、存储介质以及图像数据的传输方法 | |
US11632546B2 (en) | Method and device for effective video encoding/decoding via local lighting compensation | |
US20210352326A1 (en) | Method and device for encoding/decoding images, and recording medium for storing bitstream | |
US20150163498A1 (en) | Video encoding apparatus and video encoding method | |
CN115176475A (zh) | 多参考线色度预测 | |
KR20220166354A (ko) | 비디오 필터링을 위한 방법 및 장치 | |
JP2024510179A (ja) | 一般化サンプルオフセット | |
CN118679735A (zh) | 用于视频编解码的跨分量预测的方法和装置 | |
EP4101163A1 (en) | Method and apparatus for video filtering | |
CN114866783A (zh) | 帧间预测方法、编码器、解码器以及计算机存储介质 | |
CN116980596A (zh) | 一种帧内预测方法、编码器、解码器及存储介质 | |
CN118541975A (zh) | 用于视频编解码的跨分量预测的方法和装置 | |
KR20240140939A (ko) | 비디오 코딩을 위한 교차-컴포넌트 예측을 위한 방법 및 장치 | |
WO2023154410A1 (en) | Method and apparatus for cross-component prediction for video coding | |
CN118525514A (zh) | 用于视频编解码的跨分量预测的方法和装置 | |
WO2024088340A1 (en) | Method and apparatus of inheriting multiple cross-component models in video coding system | |
US20230199196A1 (en) | Methods and Apparatuses of Frequency Domain Mode Decision in Video Encoding Systems | |
US20240323363A1 (en) | Image encoding/decoding method and device, and recording medium storing bitstream | |
CN118318437A (zh) | 用于视频编解码的跨分量预测的方法和装置 | |
CN118435589A (zh) | 视频编解码系统中多假设帧内模式交叉分量线性模型的方法和装置 | |
WO2023183510A1 (en) | Method and apparatus for cross-component prediction for video coding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication |