CN115066896A - 具有模式全局设置的基于矩阵的帧内预测 - Google Patents

具有模式全局设置的基于矩阵的帧内预测 Download PDF

Info

Publication number
CN115066896A
CN115066896A CN202080095826.4A CN202080095826A CN115066896A CN 115066896 A CN115066896 A CN 115066896A CN 202080095826 A CN202080095826 A CN 202080095826A CN 115066896 A CN115066896 A CN 115066896A
Authority
CN
China
Prior art keywords
matrix
based intra
prediction mode
intra prediction
vector
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
Application number
CN202080095826.4A
Other languages
English (en)
Inventor
J·普法夫
T·辛兹
P·赫勒
P·默克尔
B·斯塔伦伯格
M·舍弗
B·布罗斯
M·温肯
M·西克曼
H·施瓦茨
D·马佩
T·韦根
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Original Assignee
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV filed Critical Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Publication of CN115066896A publication Critical patent/CN115066896A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一种用于使用帧内预测解码图片的预定块(18)的设备,配置成从数据流(12)读取模式索引(200),所述模式索引指向基于矩阵的帧内预测模式列表(204)中的一个。此外,所述设备配置成通过计算从所述预定块(18)的邻域中的参考样本(17)导出的输入向量(102)与和由所述模式索引(200)指向的所述基于矩阵的帧内预测模式(k)关联的预测矩阵(19)之间的矩阵向量积(206),并且通过将通过所述矩阵向量积(206)获得的输出向量(208)的分量(210)关联到所述预定块的样本位置(104)上,来预测所述预定块(18)的样本(108)。针对每个基于矩阵的帧内预测模式,与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵(19)的所有项由具有预定位深度的固定点表示来表示,所述预定位深度对于所述基于矩阵的帧内预测模式是相等的。此外,所述设备配置成针对每个基于矩阵的帧内预测模式,通过针对所述输出向量的每个分量以对于所述基于矩阵的帧内预测模式相等的位的数量以执行右移位来计算所述输入向量(102)和与所述相应的基于矩阵的帧内预测模式(k)关联的所述预测矩阵(19)之间的所述矩阵向量积(206)。

Description

具有模式全局设置的基于矩阵的帧内预测
技术领域
根据本发明的实施例涉及具有用于图片和视频编码/解码的模式全局设置的基于矩阵的帧内预测。
背景技术
典型的基于块的图像或视频编解码器通常通过预测性编码来操作。因此,当编码图像或视频信号的接收器在给定块上生成该信号时,他从已经从编码数据可用的信息中构造预测信号。此预测信号用作该块上的信号的第一近似。在第二步骤中,预测残差从位流中解码,并添加到预测信号。预测信号越好,则传送预测残差所需要的位的数量变得越小。因此,预测信号的质量极大地影响整体编解码器的效率。
通常,存在生成预测信号的两种方法。仅在视频编解码器中使用的第一种方法是帧间预测。这里,从属于与当前帧不同的帧的重构样本中生成预测信号。第二种方法是帧内预测。这里,从属于相同帧并且通常在空间上与给定块邻近的重构样本中生成预测信号。
在经典的编解码器中,使用角度预测模式或DC和平面模式来执行帧内预测。角度预测模式沿由角度参数定义的特定方向复制块的左侧和上方的重构样本,其中对于小数角度位置,使用插值滤波器。DC模式生成预测信号作为块的左侧和上方的邻近样本的平均样本值。最后,平面模式将预测信号生成为沿水平和垂直方向的预测的线性组合。可选地,预测信号的后滤波或参考样本的预平滑可以针对前面提到的预测技术中的任何一个而应用。
与上面描述的经典帧内预测方法不同,引入基于矩阵的帧内预测(MIP)作为生成帧内预测信号的新技术。它是演进通用视频编码(VVC)标准[1]的当前草案的一部分。MIP可以被看作更一般的数据驱动的基于神经网络的帧内预测模式的低复杂度变体。每个MIP模式通过将取决于预测模式的预定义矩阵与顶部和左边界样本的下采样版本相乘并且然后上采样结果来生成帧内预测信号。针对更多细节,我们参考基于矩阵的帧内预测的章节回顾。
MIP的关键属性是经由使用大训练数据集合的训练算法来确定用于各种MIP模式的矩阵。在此训练算法中,试图找到矩阵,使得它们最小化关于训练数据的预定义损失函数。这里,使用随机梯度下降方法,其中矩阵项被迭代地更新。用于确定矩阵项的此类方法要求以浮点运算的计算,并且因此,所得到的矩阵项被给出为浮点数。因此,在训练之后,针对每个MIP模式i,获得具有浮点项的矩阵
Figure BDA0003784408510000021
使得在浮点中,针对MIP模式i,减小的预测信号
Figure BDA0003784408510000022
被给出为
Figure BDA0003784408510000023
其中rred表示给定块的边界的下采样版本,并且其中·表示矩阵向量乘法。
另一方面,对于最终标准中的应用,每个矩阵-向量乘法(1)需要由整数操作中指定的规则来近似。这意味着针对每个MIP模式i,具有整型(integral)项和正整数ci和di的矩阵Ai必须被指定,使得减小的预测信号predref的计算被指定为
predred=((Ai-ci)·rred+(1<<(di-1)))>>di。 (2)
这里,Ai-ci表示当从Ai的每一个项减去ci时产生的矩阵。最后,如果v和w是向量,其中w具有整型项,则V+(1<<(di-1))表示通过将1<<(di-1)加到v每一个项而产生的向量,并且w>>di表示通过将w的每个项向右移位di而产生的向量。通过MIP的基本思想,(2)必须针对所有可能的输入向量rred近似(1)。
因此,期望获得具有整型项的矩阵Ai(针对其等式(2)针对可变输入向量rred适度好地近似等式(1))。否则,在编解码器中指定的并且需要使用矩阵Ai来执行(2)中的矩阵-向量积的MIP预测模式可能很大程度上偏离“真实”的行为(即,使用与矩阵
Figure BDA0003784408510000031
的矩阵-向量积的训练的MIP模式),参见等式(1)。因此,会违反对支持MIP的帧内预测的数据驱动方法的整个概念。
因此,期望提供用于使图片编码和/或视频编码更有效地支持基于矩阵的帧内预测的概念。此外或备选地,期望减小位流,并且因此减小信号通知成本。
这通过本申请的独立权利要求的主题来实现。
发明内容
根据本发明的进一步实施例由本申请的从属权利要求的主题定义。
根据本发明的第一方面,本申请的发明人认识到,当试图使用基于矩阵的帧内预测模式(MIP模式)来预测图片的预定块的样本时遇到的一个问题源于在MIP模式执行的矩阵-向量积(即,矩阵-向量乘法)需要通过整数操作来近似的事实,由此可能出现近似的与未近似的矩阵-向量积(即,“真实”('true')矩阵-向量积)之间的大偏离。在以下中,近似矩阵-向量积可以被理解为相应MIP模式的矩阵-向量积,因为对于每个MIP模式,仅计算此近似矩阵-向量积并且不计算“真实”矩阵-向量积来确定预定块的预测信号。根据本申请的第一方面,通过由矩阵向量积实现对预测信号的计算的约束来克服此困难。发明人发现有利的是,通过具有预定位深度的固定点表示来表示与MIP模式关联的预测矩阵的所有项,以及针对所有基于矩阵的帧内预测模式(例如至少针对与相同块大小相关的模式,但是可选地可能针对所有块大小的预测矩阵),应用相同的预定位深度。这使能有效地实现矩阵-向量积,因为如果所有预测矩阵的项具有共同的固定的预定位深度,则使用适于该预定位深度的特定乘法器,并且跨所有MIP模式共享该特定乘法器以用于计算矩阵-向量积是可能的。此外,如果所有预测矩阵的所有项可以以固定点表示(即以固定精度)存储,则使能有效的存储器管理(在处置预测矩阵时)。此外,发明人发现有利的是,针对每个MIP模式,通过针对输出向量的每个分量以对于所有MIP模式(例如至少对于与相同块大小相关的MIP模式,但是可选地可能对于所有块大小的预测矩阵)相等的位的数量执行右移位,来计算输入向量和与相应MIP模式关联的预测矩阵之间的矩阵向量积。这基于对于所有MIP模式的固定右移位使能矩阵向量积中的移位的有效实现的思想,因为如果移位值不取决于MIP模式,则节省了表查找,并且可以针对MIP实现单个固定移位操作,这有益于矩阵向量积的紧凑SIMD实现,并且减小了矩阵向量积在硬件实现中的取决于情况的实现。
相应地,根据本申请的第一方面,一种用于使用帧内预测解码图片的预定块的设备配置成从数据流读取模式索引,并且一种用于使用帧内预测编码图片的预定块的设备配置成将模式索引插入到数据流中,例如,用于编码的设备,即编码器,可能已经通过速率失真优化从模式列表中选择了此模式,以及可选地,选择了诸如帧间预测模式的进一步模式。模式索引指向基于矩阵的帧内预测模式列表中的一个。此外,设备(即用于解码的设备和/或用于编码的设备)配置成通过计算从所述预定块的邻域中的参考样本导出的输入向量与和由所述模式索引指向的所述基于矩阵的帧内预测模式关联的预测矩阵之间的矩阵向量积,并且通过将通过所述矩阵向量积获得的输出向量的分量关联到所述预定块的样本位置上,来预测所述预定块的样本。针对每个基于矩阵的帧内预测模式,与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵的所有项由具有预定位深度的固定点表示来表示,所述预定位深度对于所述基于矩阵的帧内预测模式(例如至少对于与相同块大小相关的基于矩阵的帧内预测模式,但是可选地可能对于所有块大小的矩阵)是相等的。此外,所述设备配置成针对每个基于矩阵的帧内预测模式,通过针对所述输出向量的每个分量以对于所述基于矩阵的帧内预测模式(例如至少对于与相同块大小相关的基于矩阵的帧内预测模式,但是可选地可能对于所有块大小的矩阵)相等的位的数量执行右移位来计算所述输入向量和与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵之间的所述矩阵向量积。
根据实施例,所述基于矩阵的帧内预测模式列表中的基于矩阵的帧内预测模式的所述数量是12、16或32。
根据实施例,用于解码的设备和/或用于编码的设备被配置使得所述基于矩阵的帧内预测模式列表中的所述基于矩阵的帧内预测模式具有与其关联的6个、8个或16个不同矩阵。例如,可能存在相互排它块大小集合的不同列表,一个列表具有与针对第一块大小集合内的块大小的12个模式关联的6个不同矩阵,一个列表具有与针对第二块大小集合内的较小块大小的16个模式关联的8个不同矩阵,以及一个列表具有与针对第三块大小集合内的甚至更小的块大小的32个模式关联的16个不同矩阵。
根据实施例,用于解码的设备和/或用于编码的设备配置成通过将所述右移位应用到由针对输出向量的每个分量的所述矩阵向量积获得的中间结果上来以固定点运算计算所述输入向量和与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵之间的所述矩阵向量积。例如,通过输入向量与预测矩阵之间的矩阵向量积或者通过输入向量与预测矩阵之间的矩阵向量积来获得中间结果,所述中间结果偏移了正整数,例如,从预测矩阵的每一个项减去正整数/向预测矩阵的每一个项添加正整数引起中间矩阵,并且通过输入向量与中间矩阵之间的矩阵向量积来获得中间结果。
根据实施例,用于解码的设备和/或用于编码的设备配置成在计算所述矩阵向量积之前,例如针对每个基于矩阵的帧内预测模式,通过相加或通过减去将与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵的所有项偏移对于所述基于矩阵的帧内预测模式(例如至少对于与相同块大小相关的基于矩阵的帧内预测模式但是可选地可能对于所有块大小的矩阵)相等的偏移值。这基于针对所有MIP模式的固定偏移值通过节省表查找而使能有效地实现矩阵向量积的思想。
根据实施例,用于解码的设备和/或用于编码的设备配置成针对每个基于矩阵的帧内预测模式,针对与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵的每个项,存储以所述预定位深度的所述固定点表示。
根据实施例,用于解码的设备/用于编码的设备配置成:以10位分辨率解码/编码所述图片;针对每个基于矩阵的帧内预测模式,以7位精度存储与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵的所述项的量值,以及使用6位作为针对右移位的位的所述数量。
根据实施例,用于解码的设备和/或用于编码的设备配置成针对每个基于矩阵的帧内预测模式,以8位标记量值表示存储与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵的所述项。备选地,在与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵的所述项具有相同的标记的情况下,用于解码的设备和/或用于编码的设备配置成在计算所述矩阵向量积之前,针对每个基于矩阵的帧内预测模式,例如通过相加或通过减去将与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵的所有项偏移对于所述基于矩阵的帧内预测模式相等的偏移值,其中针对每个基于矩阵的帧内预测模式,与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵的所有项通过标记的8位表示可表示。相应地,根据此备选,由于指示标记不是必需的,因此可以针对每个矩阵项仅存储7位量值。
根据实施例,用于解码的设备和/或用于编码的设备配置成通过将所述右移位应用到由针对输出向量的每个分量的所述矩阵向量积获得的并且以与和所述基于矩阵的帧内预测模式关联的所述预测矩阵的所述项以其存储的位精度两倍一样高的位精度表示的中间结果上来以固定点运算计算所述输入向量与和所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵之间的所述矩阵向量积。例如,以与和所述基于矩阵的帧内预测模式关联的所述预测矩阵的所述项以其存储的位精度两倍一样高的位精度来表示这样计算的矩阵-向量积,例如通过将预测矩阵偏移正整数(得到中间矩阵)、计算输入向量与中间矩阵之间的矩阵-向量积(得到中间结果)、并且对中间结果执行右移位而获得的预测信号。
根据实施例,所述基于矩阵的帧内预测模式列表包括一个或多个基于矩阵的帧内预测模式对。注意到,所述基于矩阵的帧内预测模式列表可以不专门由此类模式对组成,而是还可以存在专门使用转置选项或非转置选项应用的其它模式。对于每个基于矩阵的帧内预测模式对,与所述相应基于矩阵的帧内预测模式对中的第一基于矩阵的帧内预测模式关联的所述预测矩阵等于与所述相应基于矩阵的帧内预测模式对中的第二基于矩阵的帧内预测模式关联的所述预测矩阵。所述设备(即,用于解码的设备和/或用于编码的设备)配置成使得如果由所述模式索引指向的所述基于矩阵的帧内预测模式是所述相应基于矩阵的帧内预测模式对中的所述第一基于矩阵的帧内预测模式(例如具有奇数模式索引的模式),则所述预定块的所述邻域中的所述参考样本与所述输入向量的分量的关联以及所述预定块的所述样本位置与所述输出向量的所述分量的关联相对于在由所述模式索引指向的所述基于矩阵的帧内预测模式是所述相应基于矩阵的帧内预测模式对中的所述第二基于矩阵的帧内预测模式(例如具有偶数模式索引的模式)的情况下的所述关联被转置。也就是说,如果在前一种情况下输入向量的某个分量与位置(x,y)关联(其中(0,0)表示预定块的左上角样本),则在后一种情况下它与(y,x)关联。相同情况应用于输出向量的分量。
根据实施例,用于解码的设备和/或用于编码的设备配置成针对多个块尺寸使用所述基于矩阵的帧内预测模式列表。
根据实施例,用于解码的设备和/或用于编码的设备配置成通过在所述输出向量的基础上或在所述输出向量和所述预定块的所述邻域中的所述参考样本的基础上上采样和/或插值,来预测所述预定块的样本,所述样本从所述输出向量的所述分量所关联的所述样本位置偏移。
根据实施例,用于解码的设备和/或用于编码的设备配置成通过下采样和/或池化从所述预定块的所述邻域中的所述参考样本导出所述输入向量。
根据实施例,所述预定块的所述邻域中的所述参考样本包括所述预定块上方的第一参考样本和所述预定块左侧的第二参考样本。所述设备(即,用于解码的设备和/或用于编码的设备)配置成通过以下操作从所述预定块的所述邻域中的所述参考样本导出所述输入向量:通过下采样和/或池化从所述第一参考样本导出第一中间分量;通过下采样和/或池化从所述第二参考样本导出第二中间分量;连结所述第一中间分量和所述第二中间分量以导出初步输入向量,以及从所述初步输入向量形成所述输入向量。
根据实施例,用于解码的设备/用于编码的设备配置成以B位分辨率解码/编码所述图片。所述设备配置成通过以下操作来从所述初步输入向量中形成所述输入向量:从所述初步输入向量的第一分量减去2B-1以便获得所述输入向量的第一分量,并从所述初步输入向量的进一步分量减去所述初步输入向量的所述第一分量以便获得所述输入向量的进一步分量,或者从所述初步输入向量的进一步分量减去所述初步输入向量的第一分量,使得所述输入向量从所述进一步分量形成。此外,所述设备配置成通过所述初步输入向量的所述第一分量的逐分量相加来校正所述输出向量。
根据实施例,所述基于矩阵的帧内预测模式列表中的所述基于矩阵的帧内预测模式的所述预测矩阵的所述项对应于表2中的项(下面示出的),但是请注意到,可能选择另一移位值来列出表中的值,并且可能表中的值可能以另一比例表示。
根据实施例,用于解码的设备和/或用于编码的设备配置成使用针对预定块选择的训练的预测矩阵以用于通过计算从所述预定块的邻域中的参考样本导出的输入向量与和针对预定块选择的基于矩阵的帧內预测模式关联的训练的预测矩阵之间的矩阵向量积,并且通过将通过所述矩阵向量积获得的输出向量的分量关联到所述预定块的样本位置上,来预测所述预定块的样本。例如,训练的预测矩阵由用于训练预测矩阵的设备来训练,例如,由根据第二方面的设备来训练。
根据本发明的第二方面,本申请的发明人认识到,当试图使用基于矩阵的帧内预测模式(MIP模式)来预测图片的预定块的样本时遇到的一个问题源于在MIP模式执行的矩阵-向量积(即,矩阵-向量乘法)需要通过整数操作来近似,以及用于此类矩阵-向量乘法的训练预测矩阵以浮点精度获得的事实。根据本申请的第二方面,通过在训练此类矩阵-向量积的预测矩阵时已经通过矩阵-向量积实现对预测信号的计算的约束来克服此困难。发明人发现有利的是,通过使用取决于预测失真测量的成本函数来优化与MIP模式关联的预测矩阵的项,所述预测失真测量与将预测矩阵的项设置成中间值关联,使用可微分函数将表示性值映射到所述中间值上。通过这种方法,限制所有预测矩阵项的范围,并避免在训练期间可能不更新一些项是可能的。在训练期间,项以浮点表示来表示,并且然后中间值被量化到具有对于所有MIP模式相等的预定位深度的固定点表示上。这使能有效地实现矩阵向量积(因为如果所有预测矩阵的项具有共同的固定的预定位深度)。此类预测矩阵使能视频或图片编码器/解码器使用适于该预定位深度的特定乘法器,并且跨所有MIP模式共享该特定乘法器以用于计算矩阵向量积。此外,如果所有预测矩阵的所有项可以以固定点表示(即以固定精度)存储,则使能有效的存储器管理(在处置预测矩阵时)。
相应地,根据本申请的第二方面,提供了一种设备,所述设备用于通过计算从预定块的邻域中的参考样本导出的输入向量和与针对所述预定块选择的基于矩阵的帧内预测模式关联的所述预测矩阵中的一个之间的矩阵向量积,并将由所述矩阵向量积获得的输出向量的分量关联到所述预定块的样本位置上,来训练基于矩阵的帧内预测模式列表的预测矩阵,所述基于矩阵的帧内预测模式中的一个应当针对预定块被选择以用于预测所述预定块的样本。所述设备配置成(例如通过使用已知(例如原始)样本的预定块的训练的集合以及其对应的邻域)通过使用梯度下降方法、使用取决于与将所述预测矩阵的所述项设置成中间值关联的预测失真测量的成本函数优化所述基于矩阵的帧内预测模式列表的所述预测矩阵的项的以浮点表示来表示的表示性值,来训练所述基于矩阵的帧内预测模式列表的所述预测矩阵,使用可微分函数将所述表示性值映射到所述中间值上。预测失真测量例如定义了随着降低的预测质量的成本增加,如从将可微分函数应用到训练下的预测矩阵上(意味着将可微分函数应用到训练下的预测矩阵的每一个项上)而引起的。所述可微分函数的域和共域由所述浮点表示定义,所述可微分函数的图像具有预定动态范围,并且所述可微分函数对于所述基于矩阵的帧内预测模式是相等的。此外,所述设备配置成例如在训练之后将中间值量化到固定点表示上使得针对每个基于矩阵的帧内预测模式,与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵具有由具有预定位深度的固定点表示来表示的所有项,使得所述预定位深度对于所述基于矩阵的帧内预测模式是相等的,并且使得针对每个基于矩阵的帧内预测模式,所述输入向量和与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵之间的所述矩阵向量积通过针对所述输出向量的每个分量以对于所述基于矩阵的帧内预测模式相等的位的数量来执行右移位是可计算的。
根据实施例,所述可微分函数(即限幅函数)在图像的原点具有斜率1,严格单调增加,并且在所述图像的上界和下界具有水平渐近线。可微分函数的图像的上界和下界处的水平渐近线可以定义预定动态范围。
根据实施例,所述可微分函数由下式表示/定义:
Figure BDA0003784408510000111
其中α,β,γ和δ是取决于所述预定动态范围(即,限幅范围)的实数,并且λ是非负整数。
根据实施例,所述可微分函数(即,限幅函数)由在所述图像在所述共域内的移位方面的移位参数(例如δ)可参数化。所述设备配置成使用所述梯度下降方法(可以是,但不必须是)来使所述移位参数经受优化,并且从所述移位参数导出对于所述基于矩阵的帧内预测模式相等的偏移值,以便在所述矩阵向量积的所述计算之前用于针对每个基于矩阵的帧内预测模式,例如通过相加或通过减去,偏移与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵的所有项。
与用于使用帧内预测解码图片的预定块的方法相关的实施例,所述方法包括:从数据流读取模式索引,所述模式索引指向基于矩阵的帧内预测模式列表中的一个;以及通过计算在从所述预定块的邻域中的参考样本导出的输入向量与和由所述模式索引指向的基于矩阵的帧内预测模式关联的预测矩阵之间的矩阵向量积,并且通过将通过所述矩阵向量积获得的输出向量的分量关联到所述预定块的样本位置上,来预测所述预定块的样本。针对每个基于矩阵的帧内预测模式,与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵的所有项由具有预定位深度的固定点表示来表示,所述预定位深度对于所述基于矩阵的帧内预测模式(例如至少对于与相同块大小相关的基于矩阵的帧内预测模式但是可选地可能对于所有块大小的矩阵)是相等的。此外,所述方法包括针对每个基于矩阵的帧内预测模式,通过针对所述输出向量的每个分量以对于所述基于矩阵的帧内预测模式(例如至少对于与相同块大小相关的基于矩阵的帧内预测模式但是可选地可能对于所有块大小的矩阵)相等的位的数量执行右移位来计算所述输入向量和与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵之间的所述矩阵向量积。
与用于使用帧内预测编码图片的预定块的方法相关的实施例,所述方法包括:将模式索引插入到所述数据流中,所述模式索引指向基于矩阵的帧内预测模式列表中的一个,例如,此模式可能已经通过速率失真优化从基于矩阵的帧内预测模式列表(并且可选地,也从诸如帧间预测模式的进一步模式)中选择。所述方法进一步包括通过计算从所述预定块的邻域中的参考样本导出的输入向量与和由所述模式索引指向的所述基于矩阵的帧内预测模式关联的预测矩阵之间的矩阵向量积,并且通过将由所述矩阵向量积获得的输出向量的分量关联到所述预定块的样本位置上,来预测所述预定块的样本。针对每个基于矩阵的帧内预测模式,与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵的所有项由具有预定位深度的固定点表示来表示,所述预定位深度对于所述基于矩阵的帧内预测模式(例如至少对于与相同块大小相关的基于矩阵的帧内预测模式但是可选地可能对于所有块大小的矩阵)是相等的。此外,所述方法包括针对每个基于矩阵的帧内预测模式,通过针对所述输出向量的每个分量以对于所述基于矩阵的帧内预测模式(例如至少对于与相同块大小相关的基于矩阵的帧内预测模式但是可选地可能对于所有块大小的矩阵)相等的位的数量执行右移位来计算所述输入向量和与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵之间的所述矩阵向量积。
如上面描述的方法基于与上面描述的编码器/解码器相同的考量。顺便提一下,所述方法可以通过所有的特征和功能性来完成,所述特征和功能也关于编码器/解码器来描述。
与方法相关的实施例,所述方法用于通过计算从预定块的邻域中的参考样本导出的输入向量和与针对所述预定块选择的基于矩阵的帧内预测模式关联的所述预测矩阵中的一个之间的矩阵向量积,并且通过将由所述矩阵向量积获得的输出向量的分量关联到所述预定块的样本位置上,来训练基于矩阵的帧内预测模式列表的预测矩阵,所述基于矩阵的帧内预测模式中的一个应当针对预定块被选择以用于预测所述预定块的样本。所述方法包括(例如通过使用已知(例如原始)样本的预定块的训练的集合以及其对应的邻域)通过使用梯度下降方法、使用取决于与将所述预测矩阵的所述项设置成中间值关联的预测失真测量的成本函数优化所述基于矩阵的帧内预测模式列表的所述预测矩阵的项的以浮点表示来表示的表示性值,来训练所述基于矩阵的帧内预测模式列表的所述预测矩阵,使用可微分函数将所述表示性值映射到所述中间值上,所述可微分函数的域和共域由所述浮点表示定义,所述可微分函数的图像具有预定动态范围,并且所述可微分函数对于所述基于矩阵的帧内预测模式是相等的。此外,所述方法包括例如在训练之后将中间值量化到固定点表示上使得针对每个基于矩阵的帧内预测模式,与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵具有由具有预定位深度的固定点表示来表示的所有项,使得所述预定位深度对于所述基于矩阵的帧内预测模式是相等的,并且使得针对每个基于矩阵的帧内预测模式,所述输入向量和与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵之间的所述矩阵向量积通过针对所述输出向量的每个分量以对于所述基于矩阵的帧内预测模式相等的位的数量来执行右移位是可计算的。
如上面描述的方法基于与用于训练预测矩阵的上面描述的设备相同的考量。顺便提一下,所述方法可以通过所有特征和功能性来完成,所述特征和功能性也关于用于训练预测矩阵的设备来描述。
实施例涉及一种数据流,所述数据流具有使用本文描述的用于编码的方法编码到其中的图片或视频。
实施例涉及一种具有程序代码的计算机程序,所述计算机程序当在计算机上运行时用于执行本文描述的方法。
附图说明
附图不必需是按比例的;替代地重点一般置于示出本发明的原理。在以下描述中,参考以下附图描述本发明的各种实施例,其中:
图1示出了编码成数据流的实施例;
图2示出了编码器的实施例;
图3示出了图片重构的实施例;
图4示出解码器的实施例;
图5.1示出了根据实施例的具有减小的样本值向量的块的预测;
图5.2示出了根据实施例的使用样本插值的块的预测;
图5.3示出了根据实施例的具有减小的样本值向量的块的预测,其中仅一些边界样本被平均;
图5.4示出了根据实施例的具有减小的样本值向量的块的预测,其中四个边界样本的群组被平均;
图6.1示出了基于模式索引的图片的预定块的基于矩阵的帧内预测;
图6.2示出了基于矩阵的帧内预测模式对与样本间距离设置的应用之间的关系;
图7示出了根据实施例的用于使用MIP模式用于预测来进行解码的设备;
图8示出了根据实施例的用于训练预测矩阵的设备;以及
图9示出了示范可微分函数。
具体实施方式
在以下描述中,通过相等或等效的参考标号(即使在不同的图中出现)来表示相等或等效的元件或者具有相同或等效功能性的元件。
在以下描述中,阐明了多个细节以提供对本发明的实施例的更全面的解释。然而,可以在没有这些特定细节的情况下实施本发明的实施例对于本领域技术人员将是显而易见的。在其它实例中,为了避免使本发明的实施例模糊,以框图形式而不是详细地示出公知的结构和装置。此外,除非以其它方式具体指出,否则后文中描述的不同实施例的特征可以彼此组合。
在以下中,描述了当使用基于矩阵的帧内预测时可以帮助实现更有效的压缩的各种示例。例如,基于矩阵的帧内预测可以被添加到启发式设计的其它帧内预测模式,或者可以被专门提供。
为了易于理解以下示例,描述通过适合于其的可能的编码器和解码器(本申请的上面概述的示例可以构建到其中)的呈现而开始。图1示出了用于将图片10逐块编码成数据流12的设备。所述设备使用附图标记14来指示,并且可以是静止图片编码器或视频编码器。换句话说,当编码器14配置成将包括图片10的视频16编码成数据流12时,图片10可以是视频16之中的当前图片,或者编码器14可以专门将图片10编码成数据流12。
如提到的,编码器14以逐块方式或基于块来执行编码。为此,编码器14将图片10细分成块,所述编码器14的单元将图片10编码成数据流12。下面更详细地阐述将图片10细分成块18的可能细分的示例。一般地,细分可以结束于恒定大小的块18,诸如以行和列布置的块的阵列,或者结束于不同块大小的块18,诸如通过使用分层多树细分,其中从图片10的整个图片区域开始多树细分,或者从图片10到树块的阵列的预分割开始多树细分,其中这些示例不应当被视为排除将图片10细分成块18的其它可能方式。
进一步地,编码器14是预测性编码器,其配置成将图片10预测性编码成数据流12。对于某个块18,这意味着编码器14确定块18的预测信号,并将预测残差(即预测误差,预测信号以所述预测误差偏离块18内的实际图片内容)编码成数据流12。
编码器14可以支持不同的预测模式,以便导出某个块18的预测信号。在以下的示例中重要的预测模式是帧内预测模式,根据所述帧内预测模式,从图片10的相邻的、已经编码的样本空间地预测块18的内部。将图片10编码成数据流12,并且相应地,对应的解码过程,可以基于在块18之间定义的某个编码顺序20。例如,编码顺序20可以按光栅扫描顺序,诸如从顶部到底部逐行地遍历块18,例如从左到右遍历每个行。在基于分层多树的细分的情况下,可以在每个分层级别内应用光栅扫描排序,其中可以应用深度优先遍历顺序,即,根据编码顺序20,某个分层级别的块内的叶符(leaf note)可以在具有相同父块的相同分层级别的块之前。取决于编码顺序20,块18的相邻的、已经编码样本通常可以位于块18的一个或多个侧。在本文呈现的示例的情况下,例如,块18的相邻的、已经编码的样本位于块18的顶部和左侧。
帧内预测模式可能不是由编码器14所支持的仅有模式。例如,在编码器14是视频编码器的情况下,编码器14还可以支持帧内预测模式,根据所述帧内预测模式从视频16的前述编码图片临时预测块18。此类帧内预测模式可以是运动补偿预测模式,根据其发信号通知用于此类块18的运动向量,所述运动向量指示部分的相对空间偏移(块18的预测信号要从其导出作为副本)。此外或备选地,其它非帧内预测模式也可以可用,例如在编码器14是多视图编码器的情况下的视图间预测模式,或非预测性模式,根据其原样(即,在没有任何预测的情况下)对块18的内部进行编码。
在通过将本申请的描述集中到帧内预测模式上而开始之前,针对可能的基于块的编码器的更特定示例(即针对如关于图2所描述的编码器14的可能的实现)则分别呈现适合于图1和2的解码器的两个对应示例。
图2示出了图1的编码器14的可能实现,也就是其中编码器配置成使用变换编码来编码预测残差的一种实现,尽管这几乎是示例,并且本申请不限于该种类预测残差编码。根据图2,编码器14包括减法器22,所述减法器配置成从入站信号(即,图片10)或在块的基础上从当前块18减去对应的预测信号24,以便获得预测残差信号26,然后由预测残差编码器28将所述预测残差信号编码成数据流12。预测残差编码器28由有损编码级28a和无损编码级28b组成。有损级28a接收预测残差信号26,并且包括量化预测残差信号26的样本的量化器30。如上面已经提到的,本示例使用预测残差信号26的变换编码,并且相应地有损编码级28a包括连接在减法器22和量化器30之间的变换级32,以便变换此类谱分解的预测残差26,其中量化器30的量化关于变换系数(其中呈现残差信号26)发生。所述变换可以是DCT、DST、FFT、Hadamard变换等等。然后,变换和量化的预测残差信号34经受通过无损编码级28b的无损编码,其是将量化的预测残差信号34熵编码成数据流12的熵编码器。编码器14进一步包括连接到量化器30的输出的预测残差信号重构级36,以便以在解码器处也可用的方式(即对量化器30中的编码损失进行考虑),从变换和量化的预测残差信号34重构预测残差信号。为此,预测残差重构级36包括执行量化器30的量化的逆的去量化器38,之后是执行相对于由变换器32执行的变换的逆变换(例如谱分解的逆,例如上面提到的特定变换示例中的任何一个的逆)的逆变换器40。编码器14包括加法器42,其将如由逆变换器40输出的重构预测残差信号与预测信号24相加,以便输出重构信号,即重构样本。此输出被馈送到编码器14的预测器44中,所述预测器然后基于其确定预测信号24。是预测器44支持上面已经关于图1讨论的所有预测模式。图2还示出了在编码器14是视频编码器的情况下,编码器14还可以包括滤波完全重构图片的环内滤波器46,所述完全重构图片在已经被滤波之后形成预测器44的关于帧间预测块的参考图片。
如上面已经提到的,编码器14基于块而操作。对于随后的描述,感兴趣的基于块的操作是将图片10细分成块的一个操作,针对其从由预测器44或编码器14分别支持的帧内预测模式的集合或多个帧内预测模式中选择帧内预测模式,并且单独地执行所选择的帧内预测模式。然而,也可以存在图片10被细分成的其它种类的块。例如,可以以粒度或者以偏离块18的块为单位来进行上面提到的图片10是帧间编码还是帧内编码的决定。例如,可以在图片10被细分成的编码块的级别来执行帧间/帧内模式决定,并且每个编码块被细分成预测块。具有编码块(已针对其决定使用帧内预测)的预测块每个被细分成帧内预测模式决定。为此,对于这些预测块中的每个,决定关于哪个支持的帧内预测模式应该用于相应的预测块。这些预测块将形成这里感兴趣的块18。与帧间预测关联的编码块内的预测块会由预测器44不同地处理。它们会通过确定运动向量并从由运动向量所指向的参考图片中的位置复制此块的预测信号而从参考图片被帧间预测。另一种块细分涉及被细分成变换块,以所述变换块为单位执行通过变换器32和逆变换器40的变换。变换块可以是例如进一步细分编码块的结果。自然地,本文所阐述的示例不应该被视为限制性的,并且还存在其它示例。仅为了完整起见,注意到,例如,细分成编码块可以使用多树细分,并且也可以通过使用多树细分一步细分编码块来获得预测块和/或变换块。
图3中描绘了适合于图1的编码器14的用于逐块解码的设备或解码器54。此解码器54进行编码器14相反操作,即,其以逐块的方式从数据流12解码图片10,并且为此支持多个帧内预测模式。解码器54可以包括例如残差提供器156。上面关于图1讨论的所有其它可能性对于解码器54也是有效的。为此,解码器54可以是静止图片解码器或视频解码器,并且所有预测模式和预测可能性也由解码器54支持。编码器14与解码器54之间的差异主要在于以下事实:编码器14根据某一优化来选取或选择编码决定,例如,诸如以便最小化可以取决于编码速率和/或编码失真的某一成本函数。这些编码选项或编码参数中的一个可以涉及在可用或支持的帧内预测模式之中选择要用于当前块18的帧内预测模式。然后,可以由编码器14在数据流12内针对当前块18发信号通知所选择的帧内预测模式,其中解码器54使用数据流12中的此信号通知针对块18重新进行所述选择。同样地,将图片10细分成块18可以在编码器14内经受优化,并且可以在数据流12内传达对应的细分信息,其中解码器54在细分信息的基础上恢复将图片10细分成块18。综上所述,解码器54可以是在块的基础上进行操作的预测性解码器,并且除了帧内预测模式之外,解码器54可以例如在解码器54是视频解码器的情况下,支持其它预测模式(例如帧间预测模式)。在解码中,解码器54也可以使用关于图1讨论的编码顺序20,并且由于此编码顺序20在编码器14和解码器54两者处被遵循,所以相同的相邻样本在编码器14和解码器54两者处可用于当前块18。相应地,为了避免不必需的重复,编码器14的操作模式的描述也应当应用于解码器54,只要涉及到将图片10细分成块,例如,只要涉及到预测以及只要涉及到预测残差的编码。差异在于以下事实:编码器14通过优化来选取数据流12内的一些编码选项或编码参数和信号,或者将编码参数插入数据流12中,然后由解码器54从数据流12导出所述编码参数,以便重新进行预测、细分等等。
图4示出了图3的解码器54的可能实现,也就是,适合于如图2中示出的图1的编码器14的实现的一种实现。由于图4的编码器54的许多元件与图2的对应编码器中出现的那些元件相同,所以在图4中使用了被提供具有撇号的相同附图标记以便指示这些元件。特别地,加法器42’、可选的环内滤波器46’和预测器44’以与它们在图2的编码器中相同的方式被连接到预测环路中。应用于加法器42’的重构的(即去量化和重新变换的)预测残差信号由求逆熵编码器28b的熵编码的熵解码器56、之后是由去量化器38’和逆变换器40’组成的残差信号重构级36’的序列导出,正如在编码侧的情况一样。解码器的输出是图片10的重构。图片10的重构可以直接在加法器42’的输出处可用,或者备选地,可以在环内滤波器46’的输出处可用。可以在解码器的输出处布置某一后滤波器以便使图片10的重构经受某一后滤波以便改进图片质量,但是在图4中未描绘此选项。
再次,关于图4,上面关于图2所提出的描述对于图4也应当是有效的,除了仅编码器执行优化任务和关于编码选项的关联的决定。然而,关于块细分、预测、去量化和重新变换的所有描述对于图4的解码器54也是有效的。
本文描述的实施例使用所谓的基于矩阵的帧内预测。一般概念在下面概述。
基于矩阵的帧内预测的回顾
为了保持本申请独立,在此章节中,描述了通用视频编码[1]的工作草案7中包括的当前基于矩阵的帧内预测(MIP)方法的主要步骤。针对更多细节,参考[1]。
基于矩阵的帧内预测(MIP)是一种用于在具有宽度W和高度H的矩形块上生成帧内预测信号的方法。用于MIP预测过程的输入是由块上方一个行的重构样本rtop和块左侧一个列的重构样本rleft组成的重构样本r、MIP模式索引i以及MIP模式是否要被转置的信息。然后,使用以下三个步骤生成MIP预测信号:
1.对于取决于W和H,并且满足win,red≤W和hin,red≤H的指定的自然数win,red和hin,red,rtop中的一个通过下采样/求平均生成大小win,red的减小的顶部输入rtop,red,并且rleft中的一个通过下采样/求平均生成大小hin,red是减小的左侧输入rleft,red
然后,将rtop,red和rleft,red连结到减小的输入rred,full,如果MIP模式不要被转置,则rred,full被定义为
rred,full=[rtop,red,rleft,red],
如果MIP模式要被转置则定义为
rred,full=[rleft,red,rtop,red],
接下来,rred,full中的一个定义减小的输入rred。这里,rred具有与rred,full相同大小win,red+hin,red或具有大小win,red+hin,red-1。在第一种情况下,rred定义为
rred[0]=rred,full[0]-2B-1
其中B是位深度,并且定义为
rred[i]=rred,full[i]-rred,full[0],i>0。
在第二种情况下,rred定义为
rred[i]=rred,full[i+1]-rred,full[0]。
2.对于取决于W和H,并且满足wout,red≤W和hout,red≤H的指定的自然数wout,red和hout,red,在具有宽度wout,red和高度hout,red的块上将减小的预测信号predred生成为
predred=((Ai-ci)·rred+(1<<(di-1)))>>di
这里Ai是取决于W和H并且取决于MIP模式索引i的矩阵以及ci和di是取决于MIP模式索引i的非负整数,其中这种相关性要由本发明去除。此外,如果MIP模式不需要被转置,则predred是wout,red·hout,red-以行为主的顺序的通过具有宽度wout,red和高度hout,red的块上的信号来标识的尺寸的向量,并且如果MIP模式需要被转置,则是以列为主的顺序的。
然后,将rred,full[0]加到predred
最后,将结果限幅到给定的位范围[0,2B)。
3.如果wout,red<W或者hout,red<H,则应用上采样/线性插值以从在前述步骤结束时获得的减小预测信号中生成完整MIP预测信号。这里,重构样本被包括在线性插值中。
实现示例的呈现
上面概述了一般概念。所述概念在下文中有时被称为ALWIP(仿射线性加权帧内预测)(作为MIP(基于矩阵的帧内预测)的备选同义词),以便再次更详细地解释这些模式的使用。
在随后的图5.1-5.4中,针对不同的块形状示出了在邻域基础上填充输入向量、计算矩阵向量乘法和线性插值的整个过程。注意到,其余形状被视为是所描绘的情况中的一个。
1.给定4×4块,ALWIP(或MIP)可以沿边界的每个轴取两个平均值,参见图5.1。作为求平均的备选,取邻域的每隔一个样本,或者更一般和准确地,从邻域中的恰好一个样本中取矩阵-向量-乘法19的输入向量的每一个分量。所得到的四个输入样本进入矩阵向量乘法。从集合S0矩阵中取矩阵,所述集合是针对附近的块大小的矩阵集合。在加上偏移之后,这可以产生16个最终预测样本。对于生成预测信号,线性插值不是必需的。因此,执行每样本总共(4*16)/(4*4)=4次乘法。例如,参见示出4×4块的ALWIP的图5.1。上面已经解释了精确计算。
2.给定8×8块,ALWIP可以沿边界的每个轴取四个平均值,参见图5.2。得到的八个输入样本进入矩阵向量乘法19。从集合S1中取矩阵。这在预测块的奇数位置上产生16个样本。因此,执行每样本总共(8*16)/(8*8)=2次乘法。在加上偏移之后,通过使用减小的顶部边界垂直地插值这些样本。水平插值之后使用原始的左边界。例如,参见示出8×8块的ALWIP的图5.2。
3.给定8×4块,ALWIP可以沿边界的水平轴取四个平均值和左边界上的四个原始边界值,参见图5.3。所得到的八个输入样本进入矩阵向量乘法。从集合S1取矩阵。这在预测块的奇数水平和每个垂直位置上产生16个样本。因此,执行每样本总共(8*16)/(8*4)=4次乘法。在加上偏移之后,通过使用原始左边界水平地插值这些样本。例如,参见示出8×4块的ALWIP的图5.3。
相应地处理转置的情况。
4.给定16×16块,ALWIP可以沿边界的每个轴取四个平均值。所得到的八个输入样本进入矩阵向量乘法。从集合S2取矩阵。这在预测块的奇数位置上产生64个样本。因此,执行每样本总共(8*64)/(16*16)=2次乘法。在加上偏移之后,通过使用顶部边界的八个平均值垂直地插值这些样本。水平插值之后使用原始的左边界。例如,参见示出16×16块的ALWIP的图5.4。
对于较大的形状,过程可以基本上相同,并且检查每样本的乘法的数量小于两个是容易的。
对于W×8块,由于在奇数水平和每个垂直位置处给出了样本,因此仅水平插值是必需的。因此,在这些情况下执行每样本至多(8*64)/(16*8)=4次乘法。
最后,对于W×4块(其中W>8),令Ak是通过沿下采样块的水平轴省去对应于奇数项的每一个行而产生的矩阵。因此,输出大小可以是32,并且再次,仅水平插值保持要被执行。可以执行每样本至多(8*32)/(16*4)=4次乘法。
可以相应地处理转置的情况。这在随后的附图中示出。
图6.1示出了用于使用帧内预测解码图片的预定块18的设备54。
设备54配置成使用二进制化码202从数据流12读取模式索引200,所述模式索引指向基于矩阵的帧内预测模式列表204中的一个。基于矩阵的帧内预测模式列表204由偶数数量的基于矩阵的帧内预测模式组成,其中列表204的基于矩阵的帧内预测模式被分组成基于矩阵的帧内预测模式对212。每个对212由第一基于矩阵的帧内预测模式和第二基于矩阵的帧内预测模式组成。设备54配置成使用二进制化码202以使得对于每个基于矩阵的帧内预测模式对212,第一基于矩阵的帧内预测模式被指配第一码字且第二基于矩阵的帧内预测模式被指配第二码字且两个码字的长度相等的方式从数据流12读取模式索引200。
可选地,二进制化码202是可变长度码,所述可变长度码包括不同长度的码字。备选地,二进制化码可以是截断二进制码,并且基于矩阵的帧内预测模式的数量不是二的幂,使得截断二进制码具有不同长度的码字。与第一基于矩阵的帧内预测模式对212关联的基于矩阵的帧内预测模式可以被指配码字,所述码字的长度与指配到与第二基于矩阵的帧内预测模式对212关联的基于矩阵的帧内预测模式的码字不同。然而,基于矩阵的帧内预测模式对212的两个码字长度相等。
根据实施例,设备54可以配置成使用上下文自适应二进制运算解码器的等概率旁路模式从数据流12读取模式索引200。
类似于用于使用帧内预测解码图片的预定块18的设备54(即,解码器),用于使用帧内预测编码图片的预定块18的设备(即,编码器)可以配置成使用二进制化码202且可选地使用上下文自适应二进制运算编码器的等概率旁路模式将模式索引200编码到数据流12中。
解码器和编码器配置成通过计算从预定块18的邻域中的参考样本17导出的输入向量102与和由模式索引200指向的基于矩阵的帧内预测模式k关联的预测矩阵19之间的矩阵向量积206来预测预定块18的样本108。矩阵向量积206的计算引起输出向量208。此外,通过将由矩阵向量积206获得的输出向量208的分量210关联到预定块18的样本位置104上,来预测预定块18的样本108。预定块18的样本108的这种预测可以如关于图5.1至5.4所描述地被执行。
对于每个基于矩阵的帧内预测模式对212,与相应基于矩阵的帧内预测模式对212中的第一基于矩阵的帧内预测模式关联的预测矩阵19等于与相应基于矩阵的帧内预测模式对212中的第二基于矩阵的帧内预测模式关联的预测矩阵19。因此,对于基于矩阵的帧内预测模式2k和2k+1,使用相同的预测矩阵19。对于每个基于矩阵的帧内预测模式对212,编码器和解码器被配置使得,如果由模式索引200指向的基于矩阵的帧内预测模式是相应基于矩阵的帧内预测模式对212中的第一基于矩阵的帧内预测模式(例如具有奇数模式索引2k+1的模式),则预定块18的邻域中的参考样本17与输入向量112的分量214的关联以及预定块18的样本位置104与输出向量208的分量210的关联相对于在由模式索引200指向的基于矩阵的帧内预测模式是相应基于矩阵的帧内预测模式对212中的第二基于矩阵的帧内预测模式(例如具有偶数模式索引2k的模式)的情况下的所述关联被转置。
解码器/编码器可以配置成基于模式索引200的奇偶性来确定由模式索引200指向的基于矩阵的帧内预测模式是相应基于矩阵的帧内预测模式对中的第一基于矩阵的帧内预测模式还是相应基于矩阵的帧内预测模式对212中的第二基于矩阵的帧内预测模式。模式索引200的奇偶性可以指示输入向量102和输出向量208是否以转置方式使用以用于预定块18的样本108的预测。也就是说,如图6.2中示出的,如果在前一种情况下输入向量102的分量1到n的某个分量与位置(x,y)关联(其中(0,0)表示预定块18的左上角样本AA),则在后一种情况下它与(y,x)关联。相同情况应用于输出向量208的分量(AA,AB,AC,BA,CA,…)。
每个对212由第一基于矩阵的帧内预测模式和第二基于矩阵的帧内预测模式组成,所述模式通过相同的预测矩阵19彼此相关,并且仅在输入向量102和输出向量208被转置或不被转置方面在彼此之间不同。这是有利的,因为在数据流12中仅需要模式索引200来指示基于矩阵的帧内预测模式以及是否以转置方式使用基于矩阵的帧内预测模式。不需要附加的索引或标志来针对矩阵向量积206指示输入向量102和输出向量208要以转置方式使用。
根据实施例,解码器/编码器配置成使用模式索引200除以2的整数部分从多个预测矩阵中索引预测矩阵19。这基于以下思想:一对212的两个基于矩阵的帧内预测模式使用相同的预测矩阵19来预测预定块18的样本108,针对此原因,已经通过用模式索引200指向列表204中的相关对212来充分地指示预测矩阵19。
如图6.1和6.2中示出的,解码器/编码器可以配置成根据预定块18的水平尺寸220相对于水平缺省尺寸的第一比率水平地和/或根据预定块18的垂直尺寸222相对于垂直缺省尺寸的第二比率垂直地设置217预定块18的样本位置104的样本间距离216和预定块18的邻域中的参考样本17的样本间距离218。这使能针对多个块尺寸使用基于矩阵的帧内预测模式列表204。所述设备可以通过插值来填充预测样本之间的空间。预定块18的样本位置104的样本间距离216和预定块18的邻域中的参考样本17的样本间距离218的样本间距离设置217使能预定块18中的预测样本108和预定块18的邻域中的参考样本17的改进的分布。因此,预测样本可以被相等地分布,使能预定块18的样本的改进的插值。
根据实施例,解码器/编码器配置成针对多个块尺寸相等地对基于矩阵的帧内预测模式列表204中的基于矩阵的帧内预测模式进行排序。备选地,所述顺序可以适于例如宽大于高的块,反之亦然,即高大于宽,或二次(quadratic)的块。此排序可以增加编码效率且减小位流,因为用于共同块尺寸的基于矩阵的帧内预测模式可以与短码字关联,且用于罕见块尺寸的基于矩阵的帧内预测模式可以与较长码字关联。
可选地,多个块尺寸包括对应于大于4的纵横比的至少一个块尺寸。基于矩阵的帧内预测可以被优化,使得具有水平尺寸220与垂直尺寸222的纵横比大于4的预定块18。也就是说,多个块尺寸包括具有比垂直尺寸222至少大四倍的水平尺寸220的预定块和/或具有比水平尺寸220大至少四倍的垂直尺寸222的预定块。图6.2可以示出具有对应于大于4的纵横比的块尺寸的预定块18。
根据下面提出的实施例,MIP模式以使MIP的使用与和在当前VVC版本中迄今预期的使用相比较甚至更有效的方式来应用。
以下中的实施例将主要示出鉴于解码器的特征和功能性。然而,可以由编码器包括相同或类似的特征和功能性是清楚的,例如,由解码器执行的解码可以对应于通过编码器的编码。此外,编码器可以包括如与关于反馈环路中(例如,预测级36中)的解码器所描述的相同特征。
图7示出了用于使用帧内预测解码图片的预定块18的设备54。
设备54配置成从数据流12读取模式索引200。模式索引200指向基于矩阵的帧内预测模式2051-205n列表204中的一个,即,MIP模式。基于矩阵的帧内预测模式列表204中基于矩阵的帧内预测模式2051-205n的数量n例如是12、16或32。而且,所述实施例集中于使用MIP模式2051-205n的帧内预测,模式索引200也可以可使用用于指示进一步的模式是清楚的,像进一步的帧内预测模式和/或帧间预测模式。模式索引200可以由用于使用帧内预测编码图片的预定块18的设备14插入到数据流12中。
根据实施例,基于矩阵的帧内预测模式列表204中的基于矩阵的帧内预测模式2051-205n具有与其关联的6个、8个或16个不同预测矩阵19。
根据实施例,基于矩阵的帧内预测模式列表204包括用于多个块尺寸的MIP模式。
根据实施例,可以存在有两个或更多个MIP模式列表204,其中两个或更多个MIP模式列表204在与MIP模式关联的预定块18的块大小方面彼此不同。与相同或类似块大小关联的MIP模式被包括在两个或更多个MIP模式列表204的相同列表中。例如,可以存在相互排它块大小集合的不同列表,一个具有与第一块大小集合内的块大小的12个模式关联的6个不同矩阵,一个具有与第二块大小集合内的较小块大小的16个模式关联的8个不同矩阵,并且一个具有与第三块大小集合内的甚至更小的块大小的32个模式关联的16个不同矩阵。这仅仅是示例,并且不同数量的列表204也是可能的并且每个列表可以包括与不同于上面描述的块大小集合的块大小集合关联的MIP模式是清楚的。
设备54配置成通过计算从预定块18的邻域中的参考样本17导出的输入向量102和与由模式索引200指向的基于矩阵的帧内预测模式205关联的预测矩阵19之间的矩阵向量积206,并且通过将通过矩阵向量积206获得的输出向量208的分量210关联到预定块18的样本位置104上,来预测预定块18的样本108。
对于每个基于矩阵的帧内预测模式2051-205n,与相应的基于矩阵的帧内预测模式205关联的预测矩阵19的所有项由具有预定位深度192的固定点表示190来表示。固定点表示190可以具有小数部分194(具有n个位)、整数部分196(具有m个位)以及可选的标记位198。如图7中示出的,预定位深度192对于MIP模式列表204中的所有基于矩阵的帧内预测模式2051-205n是相等的,比较下面的约束1。在存在有两个或更多个MIP模式列表204的情况下,对于两个或更多个MIP模式列表204中的每个列表,例如,预定位深度192对于相应MIP模式列表中的所有基于矩阵的帧内预测模式2051-205n是相等的。换句话说,例如,预定位深度192对于与相同块大小集合相关的MIP模式至少是相同的。
根据实施例,设备54配置成针对每个基于矩阵的帧内预测模式2051-205n,针对与相应基于矩阵的帧内预测模式205关联的预测矩阵19中的每个项存储以预定位深度的固定点表示。例如,这在下面的表示例中示出,参见列表1至列表4。
对于每个基于矩阵的帧内预测模式2051-205n,设备54配置成通过针对输出向量的每个分量210以对于MIP模式列表204中的所有基于矩阵的帧内预测模式2051-205n相等的位的数量211执行右移位209来计算输入向量102和与相应的基于矩阵的帧内预测模式205关联的预测矩阵19之间的矩阵向量积206,如图7中示出的。针对右移位的位的数量211例如是x个位。在存在有两个或更多个MIP模式列表204的情况下,对于两个或更多个MIP模式列表204中的每个列表,位的数量211例如对于相应的MIP模式列表中的所有基于矩阵的帧内预测模式2051-205n是相等的。换句话说,位的数量211,例如,对于与相同块大小集合相关的MIP模式至少是相同的。右移位209,例如,在上面描述的等式(2)中由>>指示,并且对于位的数量211,比较di,其中设备54应用位的数量211对于基于矩阵的帧内预测模式2051-205n相等的约束,比较下面的约束2。
对在等式(2)中的矩阵Ai(即预测矩阵19)和参数ci和di的以下约束是可期望的。
1.用于MIP的矩阵项的范围是固定的,例如,预测矩阵19的项由具有预定位深度192的固定点表示190来表示。因此,存在有例如预定义的非负整数μ1,low、μ1,up和μ2,low、μ2,up,使得对于每个MIP模式i2051-205n以及对于矩阵Ai(即预测矩阵19)的每个矩阵项ak,l,具有
Figure BDA0003784408510000291
以及
Figure BDA0003784408510000292
如下给出这种约束的两个特定示例。
第一示例是对于固定的正整数μ,对于MIP预测中使用的所有矩阵Ai的所有矩阵项ak,l,具有
0≤ak,l≤2μ-1
以及
-2μ≤ak,l-ci≤2μ-1。
根据第一示例,与相应的基于矩阵的帧内预测模式205关联的预测矩阵19的项具有相同的标记,例如为正,且设备54配置成在计算矩阵向量积206之前,针对每个基于矩阵的帧内预测模式2051-205n,使与相应的基于矩阵的帧内预测模式205关联的预测矩阵19的所有项偏移对于基于矩阵的帧内预测模式2051-205n相等的偏移值ci,其中,针对每个基于矩阵的帧内预测模式2051-205n,与相应的基于矩阵的帧内预测模式205关联的预测矩阵19的所有项由标记的8位表示可表示。相应地,根据此备选,可以针对每个矩阵项存储仅7位量值。这是由于不必须存储标记位的事实。
第二示例是针对每个MIP模式i2051-205n,具有ci=0,以及存在有固定的正整数v,使得对于每个MIP模式i2051-205n和所述矩阵Ai的每个矩阵项ak,l,具有
-2v≤ak,l≤2v-1。
根据第二示例,设备54配置成针对每个基于矩阵的帧内预测模式2051-205n以8位标记量值表示存储与相应的基于矩阵的帧内预测模式205关联的预测矩阵19的项。在此第二示例中,设备54在计算矩阵向量积206之前不使与相应的基于矩阵的帧内预测模式205关联的预测矩阵19的项偏移偏移值ci
2.移位值di,即针对右移位209的位的数量211,独立于MIP模式i2051-205n。因此,存在有正整数d,使得针对每个MIP模式i2051-205n,具有
di=d。
可选地,以下约束也可能是可期望的:
3.值ci,即,对预测矩阵19的项的偏移,独立于MIP模式i2051-205n。因此,存在有正整数c,使得对于每个MIP模式i2051-205n,具有
ci=c。
因此,设备54可以配置成在计算矩阵向量积206之前,针对每个基于矩阵的帧内预测模式2051-205n,例如通过相加或通过减去使与相应的基于矩阵的帧内预测模式205关联的预测矩阵19的所有项偏移对于MIP模式列表204的所有基于矩阵的帧内预测模式2051-205n相等的偏移值,比较c。
在两个或更多个MIP模式列表204的情况下,对于两个或更多个MIP模式列表204中的每个列表,偏移值c例如对于相应的MIP模式列表中的所有基于矩阵的帧内预测模式2051-205n是相等的。换句话说,偏移值c例如对于与相同块大小集合相关的MIP模式至少是相同的。
实行这些约束的原因如下。约束1使能有效地实现等式(2)的矩阵-向量乘法206(Ai-ci)·rred,因为如果所有矩阵(Ai-ci)的项具有共同的固定位深度(即,预定的位深度192),则适于该位深度的特定乘法器可以被使用,并且跨所有MIP模式2051-205n共享,以用于计算矩阵-向量积206。此外,如果所有矩阵Ai的所有项都可以以固定精度存储,即预测矩阵19的项以固定点表示190来表示,则使能有效的存储器管理(在处置矩阵Ai时)。这里,重要的示例是所有矩阵Ai的所有项可以以8位精度(即以一个字节)存储。换句话说,预测矩阵19的项可以以固定点表示190(具有预定位深度192是8位)来表示。
约束2使能有效地实现表达式(2)中的移位,因为如果移位值,即针对右移位的位的数量211,不取决于MIP模式i,则节省了表查找,并且可以针对MIP实现单个固定移位操作,这对等式(2)的紧凑SIMD实现是有益的,并且其在硬件实现中减小了等式(2)的取决于情况的实现,即近似具有以浮点精度的预测矩阵的矩阵向量积的矩阵向量积206的取决于情况的实现。这里,特别重要的示例是值6被用作固定移位,即,被用作位的数量211。原因是对于10位内容,在MIP预测过程中将限幅到10位范围应用到predred。因此,在下移位6之前,即在等式(2)中执行右移位209(具有位的数量211是6),可以以16位(即2字节)存储项(Ai-ci)·rred+(1<<(di-1)),其中项(Ai-ci)·rred+(1<<(di-1))表示由针对输出向量208的每个分量210的矩阵向量积206获得的中间结果108’。
根据实施例,设备54配置成通过将右移位209应用到例如由针对输出向量208的每个分量210的矩阵-向量积206获得的中间结果108’(例如(Ai-ci)·rred+(1<<(di-1)))而以固定点运算计算输入向量102与和相应的基于矩阵的帧内预测模式205关联的预测矩阵19之间的矩阵-向量积206。可选地,中间结果108’以与位精度(与基于矩阵的帧内预测模式关联的预测矩阵19的项以所述位精度存储)至少两倍一样高的位精度来表示,例如,中间结果108’可以以16位来存储,并且预测矩阵19的项可以存储为7位量值或存储为标记的8位表示。
根据实施例,所述设备配置成以10位分辨率解码所述图片,针对每个基于矩阵的帧内预测模式2051-205n以7位精度存储与相应的基于矩阵的帧内预测模式关联的预测矩阵19的项的量值,以及使用6位作为位的数量211。
类似于约束2),约束3)使能更有效地实现等式(2)(再次节省表查找)。
本申请意图解决的问题是,约束2或约束3应该如何连同约束1一起被满足使得等式(2)用作等式(1)的近似是不明显的。
例如,假设通过约束1,每个MIP矩阵Ai的所有矩阵项必须以8位精度存储,以及通过约束2,固定移位di=6必须用于等式(2)中的所有MIP模式i。而且,为了简单性假设ci=0。这会意味着,如果等式(2)应该近似等式(1),则对于作为MIP的训练算法的结果的每个浮点矩阵
Figure BDA0003784408510000321
必须存在有非负整数ci,使得
Figure BDA0003784408510000322
的每个项
Figure BDA0003784408510000323
必须满足
Figure BDA0003784408510000324
其中ε适度地小,以便使
Figure BDA0003784408510000325
可以执行等式(2)以适度地近似等式(1)。这里,对矩阵的每个项应用舍入round。此外,对于实数x,定义了
clip(x,27):=min(max(x,-27),27-1)
并且由clip(A,27)表示,A是矩阵,所述矩阵通过将clip(-,27)应用到A的A每个项而产生。注意到,如果假设存在有具有8位范围中的整型项的矩阵A′i(针对其等式(2)针对具有固定移位6的可变输入向量rred近似等式(1)),则在指配(4)中定义的矩阵Ai必须适度好地近似
Figure BDA0003784408510000326
另一方面,先验地,不存在为什么训练算法(其输出是MIP矩阵
Figure BDA0003784408510000327
)应该产生由(4)中定义的对应矩阵ai近似的矩阵
Figure BDA0003784408510000328
的原因。问题是
Figure BDA0003784408510000329
可能包含绝对值大于
Figure BDA00037844085100003210
的矩阵项,并且因此等式(4)中的限幅通过丢弃矩阵
Figure BDA00037844085100003211
的最高有效矩阵项的部分而在(1)和(2)之间引入了实质差异。因此,将后验应用(4)到训练的矩阵
Figure BDA00037844085100003212
可能导致在编解码器中指定的并且需要使用矩阵ai来执行等式(2)中的矩阵-向量积的MIP预测模式很大程度上偏离“真实”的行为(即,使用与矩阵
Figure BDA00037844085100003213
的矩阵-向量积的训练的MIP模式)的现象。因此,会违反对支持MIP的帧内预测的数据驱动方法的整个概念。
事实上,可以观察到,将等式(4)应用于作为在当前VVC草案[1]中使用的MIP模式的基础的训练矩阵
Figure BDA0003784408510000331
当与基本训练模式相比较时,显著地改变了一些MIP模式的行为,因为矩阵
Figure BDA0003784408510000332
中的一些包含远大于2的项。
最后,注意到,仅解决约束1而不解决约束2是微不足道的,只要每个矩阵
Figure BDA0003784408510000333
的项位于-27与27-1之间,这是针对支持当前VVC草案[1]的MIP模式的矩阵
Figure BDA0003784408510000334
的情况。这里,假设目前ci=0,简单地定义移位值di,使得
Figure BDA0003784408510000335
对于
Figure BDA0003784408510000336
的每个矩阵项
Figure BDA0003784408510000337
成立,并且使得(5)对于任何d′i>di不成立。
进一步地,要说明,设备54可以包括如关于图6.1和6.2所描述的特征和/或功能性。这例如意味着基于矩阵的帧内预测模式2051-205n列表204包括一个或多个基于矩阵的帧内预测模式对212。注意到,列表204可以不是专门由此类MIP模式对212组成(因为它们被描绘成在图6.1中的列表204中存在),而是还可以存在专门使用转置选项或非转置选项来应用的其它MIP模式。对于每个基于矩阵的帧内预测模式2051-205n对212,与相应基于矩阵的帧内预测模式对212中的第一基于矩阵的帧内预测模式关联的预测矩阵19等于与相应基于矩阵的帧内预测模式对中的第二基于矩阵的帧内预测模式关联的预测矩阵19,例如对于模式2k和2k+1,使用相同的矩阵19。所述设备被配置使得如果由模式索引200指向的基于矩阵的帧内预测模式205是相应基于矩阵的帧内预测模式对212中的第一基于矩阵的帧内预测模式,则预定块的邻域中的参考样本17与输入向量112的分量214的关联以及预定块18的样本位置104与输出向量208的分量210的关联相对于在由模式索引200指向的基于矩阵的帧内预测模式205是相应基于矩阵的帧内预测模式对212中的第二基于矩阵的帧内预测模式的情况下的所述关联被转置。也就是说,如果在前一种情况下输入向量102的某个分量与位置(x,y)关联(其中(0,0)表示预定块18的左上角样本),则在后一种情况下它与(y,x)关联。相同情况应用于输出向量208的分量。针对更多细节,参见图6.1和6.2的描述。
进一步地,要说明,设备54可以包括如关于图5.1至5.4所描述的特征和/或功能性。
根据实施例,设备54配置成通过在输出向量208的基础上或在输出向量208和预定块18的邻域中的参考样本17的基础上的上采样和/或插值来预测从输出向量208的分量210所关联的样本位置偏移的预定块18的样本,如例如图5.1至5.4中的一个中示出的。
根据实施例,设备54配置成通过下采样和/或池化从预定块18的邻域中的参考样本17导出输入向量102,如例如图5.1至5.4中的一个中示出的。
根据实施例,预定块18的邻域中的参考样本17包括预定块18上方的第一参考样本17c和预定块18左侧的第二参考样本17a。设备54配置成通过以下操作来从预定块18的邻域中的参考样本17导出输入向量102:通过下采样和/或池化来从第一参考样本17c导出第一中间分量,通过下采样和/或池化来从第二参考样本17a导出第二中间分量,将第一中间分量和第二中间分量连结以导出初步输入向量,以及从初步输入向量形成输入向量。
根据实施例,设备54配置成以B位分辨率解码图片。设备54可以配置成通过从初步输入向量的第一分量减去2B-1以便获得输入向量102的第一分量,并且从初步输入向量的进一步的分量减去初步输入向量的第一分量以便获得输入向量102的进一步的分量,来从初步输入向量形成输入向量102。备选地,设备54可以配置成通过从初步输入向量的进一步的分量减去初步输入向量的第一分量使得输入向量102从进一步的分量形成来从初步输入向量形成输入向量102。此外,设备54配置成通过初步输入向量的第一分量的逐分量相加来校正输出向量208。
根据实施例,基于矩阵的帧内预测模式列表204中的基于矩阵的帧内预测模式2051-205n的预测矩阵的项对应于下面表2中的项,参见例如列表2。然而,注意到,可能选择另一移位值(即另一位的数量211),以用于列出表中的值,并且可能地,可能以另一比例表示表中的值。
以下实施例将集中于具有预定义的固定系数范围和预定义的固定移位的基于矩阵的帧内预测模式的数据驱动训练及在编解码器中的其应用。
在本发明中呈现的针对得到固定位深度、固定移位和固定偏移的问题的解决方案是要已经在MIP预测模式的训练中,即在矩阵
Figure BDA0003784408510000351
的推导中,包括约束1、约束2和约束3。因此,已经在训练期间限制了的所有矩阵项的范围,其中梯度下降算法被应用以针对关于大训练数据集合的预定义的损失函数将矩阵连续地引导朝向(局部)最优。
这样做的最简单方式会是将每个矩阵乘以2d,d如在约束2中,然后加上来自约束3的偏移c(如果期望),然后将结果限幅到约束1的期望范围,然后减去偏移c,并且最后将结果除以2d。然而,这是不可行的,因为限幅函数在限幅范围之外具有梯度零,并且因此,在此类方法中,在随机梯度下降的某一点落在限幅范围之外的每一个权重从那时起会永远不被更新。
图8示出了用于训练基于矩阵的帧内预测模式2051-205n列表204的预测矩阵19i的设备310的实施例,所述基于矩阵的帧内预测模式中的一个205i应当针对预定块18选择以用于通过计算从预定块18的邻域中的参考样本17导出的输入向量102和与针对预定块18选择的基于矩阵的帧内预测模式205i关联的预测矩阵19i中的一个之间的矩阵向量积206,并将由矩阵向量积206获得的输出向量208的分量210关联到预定块18的样本位置104上来预测预定块18的样本108。
设备310配置成使用梯度下降方法322来训练320基于矩阵的帧内预测模式2051-205n列表204的预测矩阵19i。预测矩阵19i例如通过使用已知原始样本的预定块18的训练集合以及它们的对应邻域17来训练320。通过使用成本函数324优化以浮点表示来表示的基于矩阵的帧内预测模式2051-205n列表204的预测矩阵19i的项的表示性值,比较
Figure BDA0003784408510000368
来训练320预测矩阵19i,成本函数324取决于预测失真测量326,预测失真测量326与将预测矩阵19i的项设置成中间值,使用可微分函数328,比较f(x),将表示性值映射到所述中间值上。成本函数324取决于预测失真测量326例如使得成本325随着降低的预测质量而增加,如从
Figure BDA0003784408510000362
得到的,意味着f(x)应用到
Figure BDA0003784408510000361
的每一个项上。预测失真测量326可以定义使用包括中间值的预测矩阵可获得的预测信号MIPi
Figure BDA0003784408510000363
和与训练集合的预定块关联的原始信号之间的偏离。如图8中可以看出的,在预测信号MIPi
Figure BDA0003784408510000364
等于原始信号的情况下,预测失真量度326为零。矩阵
Figure BDA0003784408510000365
的项可以是上面提到的表示性值,并且矩阵
Figure BDA0003784408510000366
的项可以是上面提到的中间值。矩阵
Figure BDA0003784408510000367
可以表示训练下的预测矩阵。要注意到,具有成本函数324和成本325与预测失真测量326的相关性的梯度下降方法322仅被示意性地示出以示出基本设备310的基础原理。
可微分函数328的域(例如图9中的x轴302),和共域(例如图9中的y轴304)由浮点表示定义,可微分函数328的图像300具有预定的动态范围,并且可微分函数328对于基于矩阵的帧内预测模式2051-205n是相等的。预定动态范围例如由max(image 300)/min(image300)定义。根据实施例,max(image 300)是a+δ并且min(image 300)是-α+δ,参见下面的等式(7)。要注意到,图9仅示出了示范可微分函数f(x)328的曲线图。
此外,设备310配置成例如在训练320之后将中间值量化330到固定点表示190上,使得对于每个基于矩阵的帧内预测模式2051-205n,与相应的基于矩阵的帧内预测模式205i关联的预测矩阵19i具有由具有预定位深度192的固定点表示190表示的所有项,使得预定位深度192对于基于矩阵的帧内预测模式2051-205n是相等的,并且使得对于每个基于矩阵的帧内预测模式2051-205n,与相应的基于矩阵的帧内预测模式205i关联的预测矩阵19和输入向量102之间的矩阵向量积206通过针对输出向量208的每个分量以对于基于矩阵的帧内预测模式2051-205n相等的位的数量211执行右移位209而可计算,例如,意味着固定点表示的非移出部分bx+1至by+x足以表示α,参见下面的等式(7)。要注意到,图8示出作为(x+y+1)位标记量值表示的固定点表示190。然而,例如在所有中间值具有相同标记(例如所有中间值可能是正值)的情况下,固定点表示190是(x+y)位量值表示也是可能的。
因此,作为解决方案,在本发明中,通过平滑函数(例如可微分函数328)来近似限幅操作。更准确地,从约束1、约束2以及可选地约束3之中,计算未按比例的矩阵项的范围,即,预测矩阵项的表示性值的范围,比较
Figure BDA0003784408510000371
使得如果在训练期间应用
Figure BDA0003784408510000372
其中
Figure BDA0003784408510000374
表示训练过程中的当前矩阵,则结果位于约束1的范围内。然后,在训练期间,通过应用实现为以下的限幅函数的平滑近似f,即可微分函数328,将每个
Figure BDA0003784408510000375
限幅到此范围:
Figure BDA0003784408510000373
其中α,β,γ以及δ是取决于限幅范围(即预定的动态范围)实数。此外,λ是可以实验地选择的非负整数。图9示出了限幅函数f(x)的示例,即可微分函数328的示例。
根据实施例,可微分函数328在原点具有斜率1,严格单调增加,并且在图像300的上界和下界具有水平渐近线。
根据实施例,可微分函数328通过移位参数(例如,在图像300在共域304内的移位方面的δ)可参数化。此外,设备310可以配置成使用梯度下降方法322使移位参数经受优化。此外,设备310可以配置成从移位参数导出偏移值,比较c,以便在计算矩阵向量积206之前,被用于针对每个基于矩阵的帧内预测模式,例如通过相加或通过减去来偏移与相应的基于矩阵的帧内预测模式关联的预测矩阵19的所有项。导出的偏移值c对于基于矩阵的帧内预测模式2051-205n是相等的。
总之,本申请的发明是具有由满足约束1和约束2的等式(2)给出的部分的MIP的实现,或者是具有由满足约束1、约束2和约束3的等式(2)给出的部分的MIP的实现,并且在两种情况下,在用于然后被量化成整型矩阵的浮点矩阵
Figure BDA0003784408510000382
的训练算法中,如本章节中所描述地采用约束1和约束2,并且如果可期望,则还采用约束3。
以下实施例描述了预测矩阵的存储表示的示例。
以下列表示出了从使用本申请中提供的技术的针对用于mipSizeId=2,[1]的MIP模式的训练而得到的浮点矩阵
Figure BDA0003784408510000383
详细地,以使得训练生成矩阵系数的方式选择限幅函数(即可微分函数)的参数,所述矩阵系数可以使用具有固定移位6和固定偏移32的7位未标记整数数字来表示。
Figure BDA0003784408510000381
Figure BDA0003784408510000391
Figure BDA0003784408510000401
Figure BDA0003784408510000411
Figure BDA0003784408510000421
Figure BDA0003784408510000431
Figure BDA0003784408510000441
Figure BDA0003784408510000451
Figure BDA0003784408510000461
Figure BDA0003784408510000471
Figure BDA0003784408510000481
Figure BDA0003784408510000491
Figure BDA0003784408510000501
Figure BDA0003784408510000511
Figure BDA0003784408510000521
Figure BDA0003784408510000531
Figure BDA0003784408510000541
Figure BDA0003784408510000551
Figure BDA0003784408510000561
Figure BDA0003784408510000571
Figure BDA0003784408510000581
Figure BDA0003784408510000591
Figure BDA0003784408510000601
Figure BDA0003784408510000611
Figure BDA0003784408510000621
Figure BDA0003784408510000631
列表1:从训练得到的浮点矩阵系数
列表1中示出的矩阵系数满足前述章节中呈现的要求。为了示出这一点,列表2示出了乘以26之后的矩阵系数。这些系数的范围与最终范围偏离仅固定偏移32。因此,下面的值是根据示例的以固定点表示的存储矩阵项。矩阵是7×64矩阵(7分量输入向量和64分量输出向量)。存在针对6个模式的6个矩阵。根据实施例,项可以偏离下面示出的值。例如,仅为了说明目的选择乘以26,并且相应地,当选取另一因子时,矩阵的项(如它们在下面示出的)可能看起来不同。
Figure BDA0003784408510000632
Figure BDA0003784408510000641
Figure BDA0003784408510000651
Figure BDA0003784408510000661
Figure BDA0003784408510000671
Figure BDA0003784408510000681
Figure BDA0003784408510000691
Figure BDA0003784408510000701
Figure BDA0003784408510000711
Figure BDA0003784408510000721
Figure BDA0003784408510000731
Figure BDA0003784408510000741
Figure BDA0003784408510000751
Figure BDA0003784408510000761
Figure BDA0003784408510000771
Figure BDA0003784408510000781
Figure BDA0003784408510000791
Figure BDA0003784408510000801
Figure BDA0003784408510000811
Figure BDA0003784408510000821
Figure BDA0003784408510000831
Figure BDA0003784408510000841
Figure BDA0003784408510000851
Figure BDA0003784408510000861
Figure BDA0003784408510000871
列表2:按比例的浮点矩阵系数
现在,将固定偏移32加到这些矩阵系数,得到矩阵集合,其中所有系数等于或大于-0.5,并且因此舍入成非负值。此集合在列表3中示出。
Figure BDA0003784408510000872
Figure BDA0003784408510000881
Figure BDA0003784408510000891
Figure BDA0003784408510000901
Figure BDA0003784408510000911
Figure BDA0003784408510000921
Figure BDA0003784408510000931
Figure BDA0003784408510000941
Figure BDA0003784408510000951
Figure BDA0003784408510000961
Figure BDA0003784408510000971
Figure BDA0003784408510000981
Figure BDA0003784408510000991
Figure BDA0003784408510001001
Figure BDA0003784408510001011
Figure BDA0003784408510001021
Figure BDA0003784408510001031
Figure BDA0003784408510001041
Figure BDA0003784408510001051
Figure BDA0003784408510001061
Figure BDA0003784408510001071
Figure BDA0003784408510001081
Figure BDA0003784408510001091
Figure BDA0003784408510001101
Figure BDA0003784408510001111
Figure BDA0003784408510001121
列表3:在相加恒定偏移之后的按比例浮点矩阵系数
最后,将上面矩阵系数舍入成整数精度,即,将中间值量化330到固定点表示190上。由于上面集合的最小系数是-0.5,因此所得到的整数系数是非负的,并且因此可以由无标记整数数字表示。上面矩阵集合的最大系数是127.5。这些系数会通常被舍入成128,但是这里被舍入成127,引入了相同的绝对舍入误差。因此,列表4中示出的所得到整数系数来自无标记7位范围。此外,由于最小舍入系数是0且最大舍入系数是127,因此所得到整数系数完全利用此范围。
Figure BDA0003784408510001122
Figure BDA0003784408510001131
Figure BDA0003784408510001141
Figure BDA0003784408510001151
Figure BDA0003784408510001161
Figure BDA0003784408510001171
Figure BDA0003784408510001181
Figure BDA0003784408510001191
Figure BDA0003784408510001201
Figure BDA0003784408510001211
Figure BDA0003784408510001221
Figure BDA0003784408510001231
Figure BDA0003784408510001241
Figure BDA0003784408510001251
列表4:无标记7位整数系数
尽管已经在设备的上下文中描述了一些方面,但这些方面还表示对对应方法的描述是清楚的,其中块或装置对应于方法步骤或方法步骤的特征。类似地,在方法步骤的上下文中描述的方面还表示对应设备的对应块或项目或特征的描述。方法步骤中的一些或所有可以由(或使用)硬件设备来执行,像例如微处理器、可编程计算机或电子电路。在一些实施例中,最重要的方法步骤中的一个或多个可以由此类设备执行。
本发明的数据流可以存储在数字存储介质上,或者可以在诸如无线传输介质或诸如因特网的有线传输介质的传输介质上传送。
取决于某些实现要求,本发明的实施例可以以硬件或软件来实现。所述实现可以使用在其上存储了电可读控制信号的数字存储介质来执行,例如软盘、DVD、蓝光、CD、ROM、PROM、EPROM、EEPROM或FLASH存储器,其与可编程计算机系统协作(或能够与可编程计算机系统协作),使得执行相应的方法。因此,数字存储介质可以是计算机可读的。
根据本发明的一些实施例包括具有电子可读控制信号的数据载体,其能够与可编程计算机系统协作,以便执行这里描述的方法中的一个。
一般地,本发明的实施例可以被实现为具有程序代码的计算机程序产品,当计算机程序产品在计算机上运行时,所述程序代码操作用于执行所述方法中的一个。程序代码例如可以存储在机器可读载体上。
其它实施例包括存储在机器可读载体上的用于执行本文描述的方法中的一个的计算机程序。
因此,换句话说,本发明方法的实施例是具有程序代码的计算机程序,当所述计算机程序在计算机上运行时,所述程序代码用于执行本文描述的方法中的一个。
因此,本发明方法的进一步实施例是数据载体(或数字存储介质,或计算机可读介质),所述数据载体包括记录在其上的用于执行本文描述的方法中的一个的计算机程序。数据载体、数字存储介质或记录介质通常是有形的和/或非过渡性的。
因此,本发明方法的进一步实施例是表示用于执行本文描述的方法中的一个的计算机程序的数据流或信号序列。数据流或信号序列例如可以被配置成经由数据通信连接(例如经由因特网)来传输。
进一步实施例包括处理部件,例如计算机或可编程逻辑装置,其被配置成或适于执行本文描述的方法中的一个。
进一步实施例包括一种计算机,在其上安装了用于执行本文描述的方法中的一个的计算机程序。
根据本发明的进一步实施例包括一种设备或系统,所述设备或系统配置成向接收器传输(例如,电子地或光地)用于执行本文描述的方法中的一个的计算机程序。例如,接收器可以是计算机、移动装置、存储器装置等等。所述设备或系统例如可以包括用于向接收器传输计算机程序的文件服务器。
在一些实施例中,可编程逻辑装置(例如现场可编程门阵列)可以用于执行本文描述的方法的功能性中的一些或所有。在一些实施例中,现场可编程门阵列可以与微处理器协作以便执行本文描述的方法中的一个。一般地,所述方法优选地由任何硬件设备来执行。
本文描述的设备可以使用硬件设备或使用计算机或使用硬件设备和计算机的组合来实现。
本文描述的设备或本文描述的设备的任何组件可以至少部分地以硬件和/或以软件来实现。
本文描述的方法可以使用硬件设备或使用计算机或使用硬件设备和计算机的组合来执行。
本文描述的方法或本文描述的设备的任何组件可以至少部分地由硬件和/或由软件来执行。
上面描述的实施例对于本发明原理仅是说明性的。理解到,本文描述的布置和细节的修改和变化对于本领域的其它技术人员将是显而易见的。因此,其意图要仅由所附专利权利要求的范围并且不是由通过本文实施例的描述和解释而呈现的特定细节来限制。
参考文献
[1]B.Bross等人,通用视频编码(Versatile Video Coding)(草案7),文献JVET-P2001,Geneva,2019年10月

Claims (41)

1.一种用于使用帧内预测解码图片的预定块(18)的设备(54),配置成
从数据流(12)读取模式索引(200),所述模式索引指向基于矩阵的帧内预测模式列表(204)中的一个,
通过计算从所述预定块(18)的邻域中的参考样本(17)导出的输入向量(102)与和由所述模式索引(200)指向的所述基于矩阵的帧内预测模式(k)关联的预测矩阵(19)之间的矩阵向量积(206),并且通过将通过所述矩阵向量积(206)获得的输出向量(208)的分量(210)关联到所述预定块的样本位置(104)上,来预测所述预定块(18)的样本(108),
其中针对每个基于矩阵的帧内预测模式(2051-205n),与所述相应的基于矩阵的帧内预测模式(205;205i)关联的所述预测矩阵(19)的所有项由具有预定位深度(192)的固定点表示(190)来表示,所述预定位深度(192)对于所述基于矩阵的帧内预测模式(2051-205n)是相等的,
其中所述设备(54)配置成针对每个基于矩阵的帧内预测模式(2051-205n),通过针对所述输出向量(208)的每个分量(210)以对于所述基于矩阵的帧内预测模式(2051-205n)相等的位的数量(211)来执行右移位(209)来计算所述输入向量(102)和与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)之间的所述矩阵向量积(206)。
2.根据权利要求1所述的设备(54),其中所述基于矩阵的帧内预测模式列表中的基于矩阵的帧内预测模式(2051-205n)的所述数量是12、16或32。
3.根据权利要求1或2所述的设备(54),被配置使得所述基于矩阵的帧内预测模式列表中的所述基于矩阵的帧内预测模式(2051-205n)具有与其关联的6个、8个或16个不同矩阵。
4. 根据任何前述权利要求1至3所述的设备(54),其中所述设备(54)配置成通过将所述右移位(209)应用到由针对输出向量(208)的每个分量(210)的所述矩阵向量积(206)获得的中间结果(108’)上来以固定点运算计算所述输入向量(102)和与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)之间的所述矩阵向量积(206)。
5. 根据权利要求1至4中任一项所述的设备(54),其中所述设备(54)配置成在计算所述矩阵向量积(206)之前,针对每个基于矩阵的帧内预测模式(2051-205n),将与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)的所有项偏移对于所述基于矩阵的帧内预测模式(2051-205n)相等的偏移值。
6. 根据前述权利要求1至5中任一项所述的设备(54),其中所述设备(54)配置成针对每个基于矩阵的帧内预测模式(2051-205n),针对与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)的每个项,存储以所述预定位深度(192)的所述固定点表示(190)。
7.根据前述权利要求1至6中任一项所述的设备(54),其中所述设备(54)配置成
以10位分辨率解码所述图片,
针对每个基于矩阵的帧内预测模式(2051-205n),以7位精度存储与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)的所述项的量值,以及
使用6位作为位的所述数量(211)。
8. 根据权利要求7所述的设备(54),
其中所述设备(54)配置成针对每个基于矩阵的帧内预测模式(2051-205n),以8位标记量值表示存储与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)的所述项,或者
其中与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)的所述项具有相同的标记,并且所述设备(54)配置成在计算所述矩阵向量积(206)之前,针对每个基于矩阵的帧内预测模式(2051-205n),将与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)的所有项偏移对于所述基于矩阵的帧内预测模式(2051-205n)相等的偏移值,其中针对每个基于矩阵的帧内预测模式(2051-205n),与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)的所有项通过标记的8位表示可表示。
9. 根据前述权利要求1至8中任一项所述的设备(54),其中所述设备(54)配置成通过将所述右移位(209)应用到由针对输出向量(208)的每个分量(210)的所述矩阵向量积(206)获得的并且以与和所述基于矩阵的帧内预测模式(2051-205n)关联的所述预测矩阵(19)的所述项以其存储的位精度两倍一样高的位精度表示的中间结果(108’)上来以固定点运算计算所述输入向量(102)与和所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)之间的所述矩阵向量积(206)。
10.根据前述权利要求1至9中任一项所述的设备(54),配置成
其中所述基于矩阵的帧内预测模式(2051-205n)列表(204)包括一个或多个基于矩阵的帧内预测模式对(212),并且,对于每个基于矩阵的帧内预测模式对,与所述相应基于矩阵的帧内预测模式对中的第一基于矩阵的帧内预测模式关联的所述预测矩阵(19)等于与所述相应基于矩阵的帧内预测模式对中的第二基于矩阵的帧内预测模式关联的所述预测矩阵(19),并且所述设备(54)配置成使得如果由所述模式索引指向的所述基于矩阵的帧内预测模式是所述相应基于矩阵的帧内预测模式对中的所述第一基于矩阵的帧内预测模式,则所述预定块的所述邻域中的所述参考样本(17)与所述输入向量(112)的分量(214)的关联以及所述预定块(18)的所述样本位置(104)与所述输出向量(208)的所述分量(210)的关联相对于在由所述模式索引指向的所述基于矩阵的帧内预测模式是所述相应基于矩阵的帧内预测模式对中的所述第二基于矩阵的帧内预测模式的情况下的所述关联被转置。
11.根据前述权利要求1至10中任一项所述的设备(54),配置成
针对多个块尺寸使用所述基于矩阵的帧内预测模式(2051-205n)列表。
12.根据前述权利要求1至11中任一项所述的设备(54),其中所述设备(54)配置成通过在所述输出向量的基础上或在所述输出向量和所述预定块的所述邻域中的所述参考样本的基础上上采样和/或插值,来预测所述预定块的样本,所述样本从所述输出向量(208)的所述分量(210)所关联的所述样本位置偏移。
13.根据前述权利要求1至12中任一项所述的设备(54),其中所述设备(54)配置成通过下采样和/或池化从所述预定块(18)的所述邻域中的所述参考样本(17)导出所述输入向量(102)。
14.根据前述权利要求1至13中任一项所述的设备(54),
其中所述预定块(18)的所述邻域中的所述参考样本(17)包括所述预定块上方的第一参考样本和所述预定块左侧的第二参考样本,
其中所述设备(54)配置成通过以下操作从所述预定块(18)的所述邻域中的所述参考样本(17)导出所述输入向量(102)
通过下采样和/或池化从所述第一参考样本导出第一中间分量,
通过下采样和/或池化从所述第二参考样本导出第二中间分量,
连结所述第一中间分量和所述第二中间分量以导出初步输入向量,以及
从所述初步输入向量形成所述输入向量。
15.根据权利要求14所述的设备(54),配置成
以B位分辨率解码所述图片;
通过以下操作来从所述初步输入向量中形成所述输入向量,
从所述初步输入向量的第一分量减去2B-1 以便获得所述输入向量的第一分量,并从所述初步输入向量的进一步分量减去所述初步输入向量的所述第一分量以便获得所述输入向量的进一步分量,或者
从所述初步输入向量的进一步分量减去所述初步输入向量的第一分量,使得所述输入向量从所述进一步分量形成,以及
通过所述初步输入向量的所述第一分量的逐分量相加来校正所述输出向量。
16. 根据前述权利要求1至15中任一项所述的设备(54),其中所述基于矩阵的帧内预测模式列表中的所述基于矩阵的帧内预测模式(2051-205n)的所述预测矩阵的所述项对应于表2中的所述项。
17.一种用于使用帧内预测解码图片的预定块(18)的设备(14),配置成
将模式索引(200)插入到数据流(12)中,所述模式索引指向基于矩阵的帧内预测模式(2051-205n)列表(204)中的一个,
通过计算从所述预定块(18)的邻域中的参考样本(17)导出的输入向量(102)与和由所述模式索引(200)指向的所述基于矩阵的帧内预测模式(k)关联的预测矩阵(19)之间的矩阵向量积(206),并且通过将通过所述矩阵向量积(206)获得的输出向量(208)的分量(210)关联到所述预定块的样本位置(104)上,来预测所述预定块(18)的样本(108),
其中针对每个基于矩阵的帧内预测模式(2051-205n),与所述相应的基于矩阵的帧内预测模式(205;205i)关联的所述预测矩阵(19)的所有项由具有预定位深度(192)的固定点表示(190)来表示,所述预定位深度(192)对于所述基于矩阵的帧内预测模式(2051-205n)是相等的,
其中所述设备(14)配置成针对每个基于矩阵的帧内预测模式(2051-205n),通过针对所述输出向量的每个分量以对于所述基于矩阵的帧内预测模式(2051-205n)相等的位的数量(211)来执行右移位(209)来计算所述输入向量(102)和与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)之间的所述矩阵向量积(206)。
18.根据权利要求17所述的设备(14),其中所述基于矩阵的帧内预测模式列表中的基于矩阵的帧内预测模式(2051-205n)的所述数量是12、16或32。
19.根据权利要求17或18所述的设备(14),被配置使得所述基于矩阵的帧内预测模式列表中的所述基于矩阵的帧内预测模式(2051-205n)具有与其关联的6个、8个或16个不同矩阵。
20. 根据任何前述权利要求17至19所述的设备(14),其中所述设备(14)配置成通过将所述右移位(209)应用到由针对输出向量(208)的每个分量(210)的所述矩阵向量积(206)获得的中间结果(108’)上来以固定点运算计算所述输入向量(102)和与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)之间的所述矩阵向量积(206)。
21. 根据权利要求17至20中任一项所述的设备(14),其中所述设备(14)配置成在计算所述矩阵向量积(206)之前,针对每个基于矩阵的帧内预测模式(2051-205n),将与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)的所有项偏移对于所述基于矩阵的帧内预测模式(2051-205n)相等的偏移值。
22. 根据前述权利要求17至21中任一项所述的设备(14),其中所述设备(14)配置成针对每个基于矩阵的帧内预测模式(2051-205n),针对与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)的每个项,存储以所述预定位深度(192)的所述固定点表示(190)。
23.根据前述权利要求17至22中任一项所述的设备(14),其中所述设备(14)配置成
以10位分辨率编码所述图片,
针对每个基于矩阵的帧内预测模式(2051-205n),以7位精度存储与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)的所述项的量值,以及
使用6位作为位的所述数量(211)。
24. 根据权利要求23所述的设备(14),
其中所述设备(14)配置成针对每个基于矩阵的帧内预测模式(2051-205n),以8位标记量值表示存储与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)的所述项,或者
其中与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)的所述项具有相同的标记,并且所述设备(14)配置成在计算所述矩阵向量积(206)之前,针对每个基于矩阵的帧内预测模式(2051-205n),将与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)的所有项偏移对于所述基于矩阵的帧内预测模式(2051-205n)相等的偏移值,其中针对每个基于矩阵的帧内预测模式(2051-205n),与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)的所有项通过标记的8位表示可表示。
25. 根据前述权利要求17至24中任一项所述的设备(14),其中所述设备(14)配置成通过将所述右移位(209)应用到由针对输出向量(208)的每个分量(210)的所述矩阵向量积(206)获得的并且以与和所述基于矩阵的帧内预测模式(2051-205n)关联的所述预测矩阵(19)的所述项以其存储的位精度两倍一样高的位精度表示的中间结果(108’)上来以固定点运算计算所述输入向量(102)与和所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)之间的所述矩阵向量积(206)。
26.根据前述权利要求17至25中任一项所述的设备(14),配置成
其中所述基于矩阵的帧内预测模式(2051-205n)列表(204)包括一个或多个基于矩阵的帧内预测模式对(212),并且,对于每个基于矩阵的帧内预测模式对,与所述相应基于矩阵的帧内预测模式对中的第一基于矩阵的帧内预测模式关联的所述预测矩阵(19)等于与所述相应基于矩阵的帧内预测模式对中的第二基于矩阵的帧内预测模式关联的所述预测矩阵(19),并且所述设备(14)配置成使得如果由所述模式索引指向的所述基于矩阵的帧内预测模式是所述相应基于矩阵的帧内预测模式对中的所述第一基于矩阵的帧内预测模式,则所述预定块的所述邻域中的所述参考样本(17)与所述输入向量(112)的分量(214)的关联以及所述预定块(18)的所述样本位置(104)与所述输出向量(208)的所述分量(210)的关联相对于在由所述模式索引指向的所述基于矩阵的帧内预测模式是所述相应基于矩阵的帧内预测模式对中的所述第二基于矩阵的帧内预测模式的情况下的所述关联被转置。
27.根据前述权利要求17至26中任一项所述的设备(14),配置成
针对多个块尺寸使用所述基于矩阵的帧内预测模式(2051-205n)列表。
28.根据前述权利要求17至27中任一项所述的设备(14),其中所述设备(14)配置成
通过在所述输出向量的基础上或在所述输出向量和所述预定块的所述邻域中的所述参考样本的基础上上采样和/或插值,来预测所述预定块的样本,所述样本从所述输出向量(208)的所述分量(210)所关联的所述样本位置偏移。
29.根据前述权利要求17至28中任一项所述的设备(14),其中所述设备(14)配置成通过下采样和/或池化从所述预定块(18)的所述邻域中的所述参考样本(17)导出所述输入向量(102)。
30.根据前述权利要求17至29中任一项所述的设备(14),
其中所述预定块(18)的所述邻域中的所述参考样本(17)包括所述预定块上方的第一参考样本和所述预定块左侧的第二参考样本,
其中所述设备(14)配置成通过以下操作从所述预定块(18)的所述邻域中的所述参考样本(17)导出所述输入向量(102)
通过下采样和/或池化从所述第一参考样本导出第一中间分量,
通过下采样和/或池化从所述第二参考样本导出第二中间分量,
连结所述第一中间分量和所述第二中间分量以导出初步输入向量,以及
从所述初步输入向量形成所述输入向量。
31.根据权利要求30所述的设备(14),配置成
以B位分辨率编码所述图片;
通过以下操作来从所述初步输入向量形成所述输入向量,
从所述初步输入向量的第一分量减去2B-1以便获得所述输入向量的第一分量,并从所述初步输入向量的进一步分量减去所述初步输入向量的所述第一分量以便获得所述输入向量的进一步分量,或者
从所述初步输入向量的进一步分量减去所述初步输入向量的第一分量,使得所述输入向量从所述进一步分量形成,以及
通过所述初步输入向量的所述第一分量的逐分量相加来校正所述输出向量。
32.根据前述权利要求17至31中任一项所述的设备(14),其中所述基于矩阵的帧内预测模式列表中的所述基于矩阵的帧内预测模式(2051-205n)的所述预测矩阵的所述项对应于表2中的所述项。
33. 一种设备(310),用于通过计算从预定块(18)的邻域中的参考样本(17)导出的输入向量(102)和与针对所述预定块选择的基于矩阵的帧内预测模式(k)关联的所述预测矩阵(19)中的一个之间的矩阵向量积(206),并且通过将由所述矩阵向量积(206)获得的输出向量(208)的分量(210)关联到所述预定块的样本位置(104)上,来训练基于矩阵的帧内预测模式(2051-205n)列表(204)的预测矩阵,所述基于矩阵的帧内预测模式中的一个应当针对预定块被选择以用于预测所述预定块(18)的样本(108),
其中所述设备(310)配置成
通过使用梯度下降方法、使用取决于与将所述预测矩阵(19)的所述项设置成中间值关联的预测失真测量的成本函数优化所述基于矩阵的帧内预测模式列表(204)的所述预测矩阵的项的以浮点表示来表示的表示性值,来训练所述基于矩阵的帧内预测模式(2051-205n)列表(204)的所述预测矩阵,使用可微分函数将所述表示性值映射到所述中间值上,所述可微分函数的域和共域由所述浮点表示定义,所述可微分函数的图像(300)具有预定动态范围,并且所述可微分函数对于所述基于矩阵的帧内预测模式(2051-205n)是相等的,
将所述中间值量化到固定点表示(190)上,使得针对每个基于矩阵的帧内预测模式(2051-205n),与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)具有由具有预定位深度(192)的固定点表示(190)表示的所有项,使得所述预定位深度(192)对于所述基于矩阵的帧内预测模式(2051-205n)是相等的,并且使得针对每个基于矩阵的帧内预测模式(2051-205n),所述输入向量(102)和与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)之间的所述矩阵向量积(206)通过针对所述输出向量的每个分量以对于所述基于矩阵的帧内预测模式(2051-205n)相等的位的数量(211)来执行右移位(209)是可计算的。
34.根据权利要求33所述的设备(310),
其中所述可微分函数在原点具有斜率1,严格单调增加,并且在所述图像的上界和下界具有水平渐近线。
35.根据权利要求33或34所述的设备(310),其中
Figure DEST_PATH_IMAGE002
其中和是取决于所述预定动态范围的实数,并且是非负整数。
36.根据前述权利要求33至35中任一项所述的设备(310),
其中所述可微分函数由在所述图像在所述共域内的移位方面的移位参数可参数化,并且所述设备(310)配置成使用所述梯度下降方法来使所述移位参数经受优化,并且从所述移位参数导出对于所述基于矩阵的帧内预测模式(2051-205n)相等的偏移值,以便在所述矩阵向量积(206)的所述计算之前用于针对每个基于矩阵的帧内预测模式(2051-205n)偏移与所述相应的基于矩阵的帧内预测模式(205; 205i)关联的所述预测矩阵(19)的所有项。
37.一种用于使用帧内预测解码图片的预定块(18)的方法,包括
从数据流(12)读取模式索引(200),所述模式索引指向基于矩阵的帧内预测模式列表(204)中的一个,
通过计算在从所述预定块(18)的邻域中的参考样本(17)导出的输入向量(102)与和由所述模式索引(200)指向的所述基于矩阵的帧内预测模式(k)关联的预测矩阵(19)之间的矩阵向量积(206),并且通过将通过所述矩阵向量积(206)获得的输出向量(208)的分量(210)关联到所述预定块的样本位置(104)上,来预测所述预定块(18)的样本(108),
其中针对每个基于矩阵的帧内预测模式,与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵(19)的所有项由具有预定位深度(192)的固定点表示(190)来表示,所述预定位深度(192)对于所述基于矩阵的帧内预测模式是相等的,
其中所述方法包括针对每个基于矩阵的帧内预测模式,通过针对所述输出向量的每个分量以对于所述基于矩阵的帧内预测模式相等的位的数量(211)执行右移位(209)来计算所述输入向量(102)和与所述相应的基于矩阵的帧内预测模式(k)关联的所述预测矩阵(19)之间的所述矩阵向量积(206)。
38.一种用于使用帧内预测编码图片的预定块(18)的方法,包括
将模式索引(200)插入到所述数据流(12)中,所述模式索引指向基于矩阵的帧内预测模式列表(204)中的一个,
通过计算从所述预定块(18)的邻域中的参考样本(17)导出的输入向量(102)与和由所述模式索引(200)指向的所述基于矩阵的帧内预测模式(k)关联的预测矩阵(19)之间的矩阵向量积(206),并且通过将由所述矩阵向量积(206)获得的输出向量(208)的分量(210)关联到所述预定块的样本位置(104)上,来预测所述预定块(18)的样本(108),
其中针对每个基于矩阵的帧内预测模式,与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵(19)的所有项由具有预定位深度(192)的固定点表示(190)来表示,所述预定位深度对于所述基于矩阵的帧内预测模式是相等的,
其中所述方法包括针对每个基于矩阵的帧内预测模式,通过针对所述输出向量的每个分量以对于所述基于矩阵的帧内预测模式相等的位的数量执行右移位来计算所述输入向量(102)和与所述相应的基于矩阵的帧内预测模式(k)关联的所述预测矩阵(19)之间的所述矩阵向量积(206)。
39. 一种方法,用于通过计算从预定块(18)的邻域中的参考样本(17)导出的输入向量(102)和与针对所述预定块选择的基于矩阵的帧内预测模式(k)关联的所述预测矩阵(19)中的一个之间的矩阵向量积(206),并且通过将由所述矩阵向量积(206)获得的输出向量(208)的分量(210)关联到所述预定块的样本位置(104)上,来训练基于矩阵的帧内预测模式列表(204)的预测矩阵,所述基于矩阵的帧内预测模式中的一个应当针对预定块被选择以用于预测所述预定块(18)的样本(108),
所述方法包括
通过使用梯度下降方法、使用取决于与将所述预测矩阵(19)的所述项设置成中间值关联的预测失真测量的成本函数优化所述基于矩阵的帧内预测模式列表(204)的所述预测矩阵的项的以浮点表示来表示的表示性值,来训练所述基于矩阵的帧内预测模式列表(204)的所述预测矩阵,使用可微分函数将所述表示性值映射到所述中间值上,所述可微分函数的域和共域由所述浮点表示定义,所述可微分函数的图像(300)具有预定动态范围,并且所述可微分函数对于所述基于矩阵的帧内预测模式是相等的,
将所述中间值量化到固定点表示(190)上,使得针对每个基于矩阵的帧内预测模式,与所述相应的基于矩阵的帧内预测模式关联的所述预测矩阵(19)具有由具有预定位深度的固定点表示(190)表示的所有项,使得所述预定位深度对于所述基于矩阵的帧内预测模是相等的,并且使得针对每个基于矩阵的帧内预测模式,所述输入向量(102)和与所述相应的基于矩阵的帧内预测模式(k)关联的所述预测矩阵(19)之间的所述矩阵向量积(206)通过针对所述输出向量的每个分量以对于所述基于矩阵的帧内预测模式相等的位的数量来执行右移位是可计算的。
40.一种通过根据权利要求38所述的方法生成的数据流。
41.一种具有程序代码的计算机程序,所述计算机程序当在计算机上运行时,用于执行根据权利要求37、38和39中任一项的方法。
CN202080095826.4A 2019-12-06 2020-12-04 具有模式全局设置的基于矩阵的帧内预测 Pending CN115066896A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP19214201 2019-12-06
EP19214201.6 2019-12-06
PCT/EP2020/084691 WO2021110943A1 (en) 2019-12-06 2020-12-04 Matrix based intra prediction with mode-global settings

Publications (1)

Publication Number Publication Date
CN115066896A true CN115066896A (zh) 2022-09-16

Family

ID=69024094

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080095826.4A Pending CN115066896A (zh) 2019-12-06 2020-12-04 具有模式全局设置的基于矩阵的帧内预测

Country Status (11)

Country Link
US (1) US20230036509A1 (zh)
EP (1) EP4070542A1 (zh)
JP (1) JP7479471B2 (zh)
KR (1) KR20220121827A (zh)
CN (1) CN115066896A (zh)
AU (2) AU2020397503B2 (zh)
BR (1) BR112022010988A2 (zh)
CA (1) CA3163771A1 (zh)
MX (1) MX2022006797A (zh)
TW (1) TWI789653B (zh)
WO (1) WO2021110943A1 (zh)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8606023B2 (en) 2006-06-26 2013-12-10 Qualcomm Incorporated Reduction of errors during computation of inverse discrete cosine transform
MX2021011036A (es) 2019-09-24 2021-10-13 Guangdong Oppo Mobile Telecommunications Corp Ltd Procedimientos de determinacion del valor de prediccion, codificador, decodificador y medio de almacenamiento informatico.

Also Published As

Publication number Publication date
WO2021110943A1 (en) 2021-06-10
AU2020397503A1 (en) 2022-06-23
KR20220121827A (ko) 2022-09-01
US20230036509A1 (en) 2023-02-02
CA3163771A1 (en) 2021-06-10
BR112022010988A2 (pt) 2022-08-16
TWI789653B (zh) 2023-01-11
JP7479471B2 (ja) 2024-05-08
AU2020397503B2 (en) 2023-11-09
AU2024200696A1 (en) 2024-02-22
MX2022006797A (es) 2022-09-12
TW202130173A (zh) 2021-08-01
EP4070542A1 (en) 2022-10-12
JP2023504726A (ja) 2023-02-06

Similar Documents

Publication Publication Date Title
US11343497B2 (en) Method and apparatus for processing video signal
US10623768B2 (en) Intra prediction method of chrominance block using luminance sample, and apparatus using same
CN113170114B (zh) 仿射线性加权帧内预测
CN105409218B (zh) 解码器和解码方法
US9344744B2 (en) Apparatus for intra predicting a block, apparatus for reconstructing a block of a picture, apparatus for reconstructing a block of a picture by intra prediction
CN108347604B (zh) 视频解压方法、视频压缩方法和非暂时性计算机可读媒体
JP7325540B2 (ja) ブロックベース予測
JP7477538B2 (ja) 行列ベースのイントラ予測および二次変換を使用したコーディング
WO2012087034A2 (ko) 화면 내 예측 방법 및 이러한 방법을 사용하는 장치
WO2012115420A2 (ko) 필터링을 이용한 화면 내 예측 방법 및 이러한 방법을 사용하는 장치
GB2559063A (en) Adaptive transform method based on in-screen prediction and apparatus using the method
JP2023021214A (ja) 算術エンコーダ、算術デコーダ、ビデオエンコーダ、ビデオデコーダ、符号化方法、復号方法、およびコンピュータプログラム
CN112567743A (zh) 图像编码装置、图像解码装置及程序
JP2024069438A (ja) イントラ予測を用いた符号化
AU2020397503B2 (en) Matrix based intra prediction with mode-global settings
AU2020354500B2 (en) Efficient implementation of matrix-based intra-prediction
JP2023519945A (ja) 4:4:4のクロマフォーマット及びシングルツリーの場合のすべてのチャネルに対するmip

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination