CN117596393A - 视频解码或编码方法、电子设备、存储介质及程序产品 - Google Patents

视频解码或编码方法、电子设备、存储介质及程序产品 Download PDF

Info

Publication number
CN117596393A
CN117596393A CN202311028752.4A CN202311028752A CN117596393A CN 117596393 A CN117596393 A CN 117596393A CN 202311028752 A CN202311028752 A CN 202311028752A CN 117596393 A CN117596393 A CN 117596393A
Authority
CN
China
Prior art keywords
samples
sample
cross
filter
reconstructed
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
CN202311028752.4A
Other languages
English (en)
Inventor
朱弘正
郭哲瑋
修晓宇
闫宁
陈伟
马常月
王祥林
于冰
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.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
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 Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Publication of CN117596393A publication Critical patent/CN117596393A/zh
Pending legal-status Critical Current

Links

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/124Quantisation
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/186Methods 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 a colour or a chrominance component
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • 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/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

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

Abstract

本公开提供一种视频解码或编码方法、电子设备、存储介质及程序产品。视频解码方法包括:接收包括多个块的比特流,其中,每个块包括亮度样点块和色度样点块;获取与当前块中的当前色度样点对应的重建亮度样点;基于所述重建亮度样点与所述重建亮度样点的至少一个相邻亮度样点之间的相关性,对所述重建亮度样点进行分类,其中,所述重建亮度样点被分类到多个组中的一个组;对所述重建亮度样点应用与分类到的组对应的跨分量预测模型来预测所述当前色度样点,其中,对不同组的重建亮度样点应用不同的跨分量预测模型。

Description

视频解码或编码方法、电子设备、存储介质及程序产品
技术领域
本公开涉及视频编解码技术领域,更具体地说,涉及一种视频解码或编码方法、电子设备、存储介质及程序产品。
背景技术
各种视频编解码技术可用于压缩视频数据。根据一个或更多个视频编解码标准执行视频编解码。例如,视频编解码标准包括通用视频编解码(VVC)、联合探索测试模型编解码(JEM)、高效视频编解码(H.265/HEVC)、高级视频编解码(H.264/AVC)、运动图片专家组编解码(MPEG)等。视频编解码通常使用利用了视频图像或序列中存在的冗余的预测方法(例如,帧间预测、帧内预测等)。视频编解码技术的重要目标在于将视频数据压缩为使用更低比特率的形式,同时避免或最小化视频质量的下降。
VVC标准的第一版本在2020年07月完成,与前一代视频编解码标准HEVC相比,VVC标准的第一版本提供大约50%的比特率节省或同等的感知质量。尽管VVC标准提供与其前身相比显著的编解码改进,但有证据表明可利用额外编解码工具实现更优异的编解码效率。最近,在ITU-TVECG和ISO/IECMPEG的协作下的联合视频探索小组(JVET)开始探索可以实现比VVC显著提高编解码效率的先进技术。2021年04月,为未来的视频编解码探索工作建立了一个称为增强压缩模型(ECM)的软件码库。ECM参考软件基于由JVET为VVC开发的VVC测试模型(VTM),其中,若干现有模块(例如,帧内/帧间预测、变换、环路滤波器等)被进一步扩展和/或改进。未来,除了VVC标准之外的任何新的编解码工具都需要集成到ECM平台中,并使用JVET通用测试条件(CTC)进行测试。
本部分提供了与本公开相关的背景技术信息。本部分内包含的信息不应被解释为现有技术。
发明内容
本公开提供一种视频解码或编码方法、电子设备、存储介质及程序产品,以至少解决上述相关技术中的问题。
根据本公开实施例的第一方面,提供一种视频解码方法,包括:接收包括多个块的比特流,其中,每个块包括亮度样点块和色度样点块;获取与当前块中的当前色度样点对应的重建亮度样点;基于所述重建亮度样点与所述重建亮度样点的至少一个相邻亮度样点之间的相关性,对所述重建亮度样点进行分类,其中,所述重建亮度样点被分类到多个组中的一个组;对所述重建亮度样点应用与分类到的组对应的跨分量预测模型来预测所述当前色度样点,其中,对不同组的重建亮度样点应用不同的跨分量预测模型。
根据本公开实施例的第二方面,提供一种视频解码方法,包括:接收包括多个块的比特流,其中,每个块包括亮度样点块和色度样点块;解析所述比特流中的指示用于卷积跨分量模型的滤波器的信息,其中,所述信息中包括指示所述滤波器的滤波器形状的信息,其中,所述滤波器形状用于导出所述滤波器中的非线性项的值,所述非线性项的值是基于应用于所述滤波器的空间分量亮度样点中的至少一个亮度样点确定的;将确定的卷积跨分量模型应用于所述空间分量亮度样点来预测对应的色度样点。
根据本公开实施例的第三方面,提供一种视频编码方法,包括:将视频图片划分为多个块,每个块包括亮度样点块和色度样点块;获取与当前块中的当前色度样点对应的重建亮度样点;基于所述重建亮度样点与所述重建亮度样点的至少一个相邻亮度样点之间的相关性,对所述重建亮度样点进行分类,其中,所述重建亮度样点被分类到多个组中的一个组;对所述重建亮度样点应用与分类到的组对应的跨分量预测模型来预测所述当前色度样点,其中,对不同组的重建亮度样点应用不同的跨分量预测模型。
根据本公开实施例的第四方面,提供一种视频编码方法,包括:将视频图片划分为多个块,每个块包括亮度样点块和色度样点块;确定用于卷积跨分量模型的滤波器的滤波器形状,其中,所述滤波器形状用于导出所述滤波器中的非线性项的值,所述非线性项的值是基于应用于所述滤波器的空间分量亮度样点中的至少一个亮度样点确定的;将确定的卷积跨分量模型应用于所述空间分量亮度样点来预测对应的色度样点。
根据本公开实施例的第五方面,提供一种电子设备,包括:至少一个处理器;至少一个存储计算机可执行指令的存储器,其中,所述计算机可执行指令在被所述至少一个处理器运行时,促使所述至少一个处理器执行根据本公开的视频编码方法或视频解码方法。
根据本公开实施例的第六方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令被至少一个处理器运行时,促使所述至少一个处理器执行根据本公开的视频编码方法或视频解码方法。
根据本公开实施例的第七方面,提供一种计算机程序产品,包括计算机指令,所述计算机指令被至少一个处理器执行时实现根据本公开的视频编码方法或视频解码方法。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1示出了通用的基于块的混合视频编码系统的框图。
图2示出了VVC的五种划分类型。
图3示出通用的基于块的混合视频解码系统的框图。
图4示出了CCLM模式中涉及的当前块的左侧样点和上方样点以及当前块的样点的位置的示例。
图5A示出了当不能从L形重建区域预测块内容时MDLM工作的示例。
图5B和图5C示出了MDLM_L/MDLM_T仅使用左侧/上方重建样点来导出CCLM参数。
图6示出了基于值Threshold将相邻样点分类为两组的示例。
图7示出了基于由箭头指示的拐点T将相邻样点分类为两组的示例。
图8示出了CCLM的斜率调整过程。
图9示出了当前色度块和其同位重建亮度样点的示意图。
图10示出了相邻重建Y、Cb和Cr样点的示意图。
图11示出了解码器侧帧内模式导出的过程的示意图。
图12中示出了与块单元相邻的4条参考线的示例的示意图。
图13示出卷积滤波器的空间分量的示意图。
图14示出了用于导出滤波器系数的参考区域的示意图。
图15示出了色度样点与亮度样点的相关性的示意图。
图16示出了根据本公开的示例性实施例的用于导出模型参数的相邻样点的示意图。
图17示出了根据本公开的示例性实施例的用于导出模型参数的相邻样点的另一示意图。
图18、图19、图20和图21示出根据本公开的示例性实施例的滤波器示例的示意图。
图22示出了根据本公开的示例性实施例的用于隐式滤波器形状推导的模板区域的示意图。
图23示出了根据本公开的示例性实施例的用于导出模型参数的相邻样点的另一示意图。
图24示出了根据本公开的示例性实施例的用于导出模型参数的相邻样点的另一示意图。
图25示出了根据本公开的示例性实施例的GLM模式下的预操作的示例的示意图。
图26示出了根据本公开的示例性实施例的梯度模式与其它模式结合的示例的示意图。
图27是示出根据本公开的示例性实施例的视频解码方法的流程图。
图28是示出根据本公开的另一示例性实施例的视频解码方法的流程图。
图29是示出根据本公开的另一示例性实施例的视频解码方法的流程图。
图30是示出根据本公开的另一示例性实施例的视频解码方法的流程图。
图31是示出根据本公开的示例性实施例的视频解码方法的流程图。
图32是示出根据本公开的示例性实施例的视频编码方法的流程图。
图33是示出根据本公开的另一示例性实施例的视频编码方法的流程图。
图34是示出根据本公开的另一示例性实施例的视频编码方法的流程图。
图35是示出根据本公开的另一示例性实施例的视频编码方法的流程图。
图36是示出根据本公开的另一示例性实施例的视频编码方法的流程图。
图37是根据本公开的示例性实施例的电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在此需要说明的是,在本公开中出现的“若干项之中的至少一项”均表示包含“该若干项中的任意一项”、“该若干项中的任意多项的组合”、“该若干项的全体”这三类并列的情况。例如“包括A和B之中的至少一个”即包括如下三种并列的情况:(1)包括A;(2)包括B;(3)包括A和B。又例如“执行步骤一和步骤二之中的至少一个”,即表示如下三种并列的情况:(1)执行步骤一;(2)执行步骤二;(3)执行步骤一和步骤二。
与所有前述视频编解码标准类似,ECM建立在基于块的混合视频编解码框架上。图1示出了通用的基于块的混合视频编码系统的框图。输入视频信号被逐块(称为编码单元(CU))处理。在ECM-1.0中,CU可多达128×128个像素。然而,与VVC相同,一个编码树单元(CTU)基于四叉树/二叉树/三叉树被划分为多个CU以适应变化的局部特性。在多类型树结构中,首先通过四叉树结构对一个CTU进行分割。然后,可通过二叉树和三叉树结构进一步对每个四叉树叶节点进行分割。如图2所示,图2示出了VVC的五种划分类型,包括四元分割、水平二元分割、垂直二元分割、水平三元分割和垂直三元分割。
在图1中,可以执行空间预测和/或时间预测。空间预测(或“帧内预测”)使用来自同一视频图像/条带中已经编码的相邻块的样点(称为参考样点)的像素来预测当前视频块。空间预测减少了视频信号中固有的空间冗余。时间预测(也称为“帧间预测”或“运动补偿预测”)使用来自已经编码的视频图片的重建像素来预测当前视频块。时间预测减少了视频信号中固有的时间冗余。给定CU的时间预测信号通常由一个或多个运动矢量(MV)被用信号发送,该运动矢量指示当前CU与其时间参考之间的运动量和方向。此外,如果支持多个参考图片,则另外发送一个参考图片索引,该索引用于标识时间预测信号来自参考图片存储器中的哪个参考图片。
在空间和/或时间预测之后,编码器中的帧内/帧间模式决策块例如基于率失真优化方法来选择最优预测模式。然后从当前视频块减去预测块;并且使用变换对预测残差进行去相关并进行量化。量化的残差系数被反量化和逆变换以形成重建残差,然后重建残差被加回到预测块以形成CU的重建信号。在将重建CU放入参考图片存储器并用于对未来视频块进行编解码之前,可进一步对重建CU应用环路滤波,诸如去块滤波器、样点自适应偏移(SAO)和自适应环路滤波器(ALF)。为了形成输出的视频比特流,编解码模式(帧间或帧内)、预测模式信息、运动信息和量化的残差系数都被发送到熵编码单元以进一步压缩和打包以形成比特流。
图3示出通用的基于块的混合视频解码系统的框图。
首先通过熵解码电路对输入的视频比特流进行解码,以导出量化的系数等级和预测相关信息。然后通过反量化电路和逆变换电路处理量化的系数等级以获得重建的预测残差。编解码模式和预测信息被发送到空间预测电路(在帧内编解码的情况下)或时间预测电路(在帧间编解码的情况下)以形成预测块。残差变换系数被发送到反量化电路和逆变换电路以重建残差块。然后将预测块和残差块相加在一起。重建块可在其被存储在参考图片存储器中之前进一步被执行环路滤波。然后将参考图片存储器中的重建视频发送出去以驱动显示设备以及用于预测未来视频块。
本公开的主要焦点是进一步提高应用于ECM中的跨分量预测编码工具——跨分量线性模型(cross-component linear model,CCLM)的编码效率。在下文中,简要回顾了ECM中的一些相关编码工具。然后,讨论了现有CCLM设计中的一些不足之处。最后,给出了改进现有CCLM预测设计的解决方案。
1.1跨分量线性模型预测
为了减少跨分量冗余,在VVC中使用跨分量线性模型(CCLM)预测模式,对于该模式,通过使用如下的线性模型,基于同一CU的重建亮度样点来预测色度样点:
predC(i,j)=α·recL′(i,j)+β(1-1)
其中,predC(i,j)中表示CU中的预测色度样点,并且recL′(i,j)表示同一CU的重建亮度样点或者下采样亮度样点。例如,在4:2:2或4:2:0色度采样格式下,一个色度样点对应多个亮度样点,因此,重建亮度样点需要被下采样以保持与色度样点一致的分辨率。
CCLM参数(α和β)是用最多四个相邻的色度样点及其对应的亮度样点(或下采样亮度样点)导出的。假设当前色度块尺寸为W(宽)×H(高),则W’和H’设置为
-当应用LM(linear model,线性模型)模式时,W'=W,H'=H;
-当应用LM-A模式时,W'=W+H,其中,LM-A模式指示使用上方相邻样点来导出模型参数的模式;
-当应用LM-L模式时,H'=H+W,其中,LM-L模式指示使用上方相邻样点来导出模型参数的模式;
以上相邻位置表示为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(1-2)
最后,根据以下等式获得线性模型参数α和β。
β=Yb-α·Xb (1-4)
图4示出了CCLM模式中涉及的当前块的左侧样点和上方样点以及当前块的样点的位置的示例。
计算参数α的除法运算是用查找表实现的。为了减少存储该表所需的存储器,diff值(最大值与最小值之间的差值)和参数α使用指数形式表示。例如,diff用4比特有效部分和指数来近似表示。因此,对于16个有效的值,针对1/diff的表被简化为16个元素,如下:
DivTable[]={0,7,6,5,5,4,4,3,3,2,2,1,1,1,1,0} (1-5)
这将具有降低计算复杂度以及存储所需要的表所需的存储器大小的益处。
除了上方模板和左侧模板可以一起用于计算线性模型系数之外,它们也可以二者择一地用于另外2个LM模式(称为LM_A模式和LM_L模式)中。
在LM_A模式中,仅使用上方模板来计算线性模型系数。为了获得更多样点,将上方模板扩展到(W+H)个样点。在LM_L模式中,仅使用左侧模板来计算线性模型系数。为了获得更多样点,将左侧模板扩展到(H+W)个样点。
在LM_LA模式中,左侧模板和上方模板用于计算线性模型系数。
为了匹配4:2:0视频序列的色度样点位置,将两种类型的下采样滤波器应用于亮度样点,以在水平方向和垂直方向上实现2比1的下采样比。下采样滤波器的选择由SPS级标志指定。两个下采样滤波器如下,其分别对应于“type-0”和“type-2”内容。
注意,当上方参考线在CTU边界处时,仅使用一条亮度线(帧内预测中的一般线缓冲器)来产生下采样的亮度样点。
该参数计算作为解码过程的一部分来执行,而不仅仅是作为编码器搜索操作。因此,不使用语法将α和β值传送到解码器。
对于色度帧内模式编解码,允许总共8个帧内模式用于色度帧内模式编解码。那些模式包括五个传统帧内模式以及三个跨分量线性模型模式(CCLM、LM_A和LM_L)。色度模式信令及导出过程展示于表1-1中。色度模式编解码直接取决于对应亮度块的帧内预测模式。由于在I条带中启用用于亮度分量和色度分量的单独块分割结构,因此一个色度块可对应于多个亮度块。因此,对于色度DM模式,直接继承覆盖当前色度块的中心位置的对应亮度块的帧内预测模式。
表1-1当启用CCLM时从亮度模式导出色度预测模式
无论sps_cclm_enabled_flag的值如何,都使用单个二值化表,如表1-2所示。
表1-2用于色度预测模式的统一的二值化表
在表1-2中,第一二进制位指示色度预测模式是常规模式(0)还是LM模式(1)。如果色度预测模式为LM模式,则下一二进制位指示其是否为LM_CHROMA(0)。如果色度预测模式不是LM_CHROMA,则下一二进制位指示色度预测模式是LM_L(0)还是LM_A(1)。对于这种情况,当sps_cclm_enabled_flag为0时,可以在熵编码之前丢弃用于对应intra_chroma_pred_mode的二值化表的第一二进制位。或者,换句话说,第一二进制位被推断为0且因此不被编码。此单个二值化表用于sps_cclm_enabled_flag等于0和1的两种情况。表1-2中的前两个二进制位用其自身的上下文模型被上下文编码,且其余二进制位被旁路编码。
另外,为了减少双树中的亮度-色度延迟,当64×64亮度编码树节点在不拆分(并且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模式也称为多向线性模型(Multi-Directional Linear Model,MDLM)。图5A示出了当不能从L形重建区域预测块内容时MDLM工作的示例。参照图5A,示例性地示出了要编码的区块内及附近的区域可能存在绿色区域、粉色区域和黄色区域的分布状况,在此状况下因为要编码的区块内只有绿色部分及粉色部分,但是附近的区域却有绿色部分、粉色部分和黄色部分的参考区域,在此情况下,MDLM可以只选择绿色部分和粉色部分作为参考区域,即,左边长方区域。图5B和图5C示出了MDLM_L/MDLM_T仅使用左侧/上方重建样点来导出CCLM参数。参照图5B,可仅使用左侧重建样点(绿色区域)来导出CCLM参数。参照图5C,可仅使用上方重建样点(绿色区域)来导出CCLM参数。
1.2 JCTVC-C206:集成
最小均方(LMS)CCLM的初始集成设计首先在JCTVC-C206中提出。然后通过一系列的简化对该方法进行改进,包括JCTVC-F0233/I0178,将α精度nα从13降低到7,JCTVC-I0151降低最大乘法器位宽,JCTVC-H0490/I0166将除法LUT条目从64减少到32,最终导致ECM LMS版本。
[1]J.S.Kim,S.W.Park等,“New intra chroma prediction using inter-channel correlation(使用信道间相关的新帧内色度预测)”,ITU-T/ISOJCT-VC,JCTVC-B021,日内瓦,瑞士,2010年7月
[3]S.H.Lee,N.I.Cho,,“Intra Prediction Method Based on the LinearRelationship between the Channels for YUV 4:2:0Intra Coding(针对YUV 4:2:0帧内编码的基于信道间线性关系的帧内预测方法)”,IEEE国际图像处理会议2009
1.2.1基本算法
与文献[1]和[3]中的方法相同,该方法利用线性关系来模拟亮度信号和色度信号的相关性。根据同位块的重建亮度值预测色度值,如下所示。
PredC[x,y]=α·RecL[x,y]+β (1-10)
其中,PredC指示块中的色度样点的预测并且RecL指示块中的重建亮度样点。参数α和β从当前块周围的因果重建样点导出。
如文献[1]所述,亮度和色度分量在YUV4:2:0采样中具有不同的采样比。色度分量采样率为亮度分量采样率的一半,垂直方向相位差为0.5像素。重建的亮度需要沿垂直方向进行下采样和沿水平方向进行子采样,以匹配色度信号的大小,如下所示。
RecL'[x,y]=(RecL[2x,2y]+RecL[2x,2y+1])>>1 (1-11)
在这篇文章中,下采样亮度分量和色度分量的因果重建数据之间的线性最小二乘解被用来导出模型参数α和β。
其中,RecC(i)和Rec’L(i)指示目标块周围的重建色度样点和下采样的亮度样点,I指示相邻数据的总样点数量。
1.2.2整数实现
公式(1-12)中需要浮点运算来计算线性模型α参数,以保持高数据精度。并且当由浮点值表示α时,在公式(1-10)中涉及浮点乘法。在本节中,设计了该算法的整数实现。
在所提出的方法中,参数a的小数部分被量化以具有nα比特数据精度。参数a值由放大和舍入的整数值α'表示,并且a'=a×(1<<nα)。然后公式(1-10)性模型变为。
predC[x,y]=(α'·RecL'[x,y]>>nα)+β' (1-14)
其中,β'是浮点β的舍入值,α'可被计算如下。
出用表格查找和乘法来代替等式(1-15)的除法运算。A2首先被缩小比例以减小表的大小。A1也被缩小比例,以避免乘积溢出。
然后,在A2中,只保留由值定义的最高有效位,其他位被置零。近似值A2'可以被计算为
其中,[...]表示舍入运算,可被计算为
其中,bdepth(A2)表示值A2的比特深度。
对执行相同的操A1作。
考虑到A1和A2的量化表示,公式(1-15)可以重写如下。
其中,表示为长度为/>的查找表,以避免除法。
在此模拟中,常数参数被设置为:
·nα等于13,该值是数据准确性和计算成本之间的折衷值。
·等于6,导致查找表大小为64,当bdepth(A2)<6(例如,A2<32)时,通过放大A2来进一步减小查找表的大小。
·ntable等于15,导致表元素的16位数据表示。
·设置为15,以避免乘积溢出并保持16位乘法。
最后,α'被裁剪至[-2-15,215-1],以保持公式(1-14)中的16位乘法。使用此裁剪时,当nα等于13时,实际a值被限制为[-4,4),这有助于防止误差放大。
使用计算参数α',参数β'被计算如下。
上面公式的除法可以简单地用移位代替,因为值I是2的幂。
1.3 JCTVC-I0166:简化参数计算
1.3.1导言
在HM6.0[1]中,应用称为LM的帧内预测模式来基于线性模型使用同位亮度PU的重建来预测色度PU。线性模型的参数由斜率(a>>k)和y截距(b)组成,它们是使用最小均方解从相邻的亮度和色度像素导出的。预测样点predSamples[x,y]的值被导出如下:
predSamples[x,y]=Clip1C(((pY’[x,y]*a)>>k)+b),其中x,y=0..nS-1, (1-22)
其中,PY’[x,y]是来自相应亮度分量的重建像素,nS指定当前色度PU的块大小。当坐标x和y等于或大于0时,PY’是来自同位亮度PU(即,当前色度PU的同位块的亮度PU)的重建像素。当x或y小于0时,PY’是同位亮度PU的相邻重建像素。
推导过程中的一些中间变量L、C、LL、LC、k2和k3被推导如下:
k2=Log2((2*nS)>>k3) (1-27)
k3=Max(0,BitDepthC+Log2(nS)-14) (1-28)
因此,变量a、b和k可以导出为:
a1=(LC<<k2)–L*C (1-29)
a2=(LL<<k2)–L*L (1-30)
k1=Max(0,Log2(abs(a2))-5)–Max(0,Log2(abs(a1))-14)+2 (1-31)
a1s=a1>>Max(0,Log2(abs(a1))-14) (1-32)
a2s=abs(a2>>Max(0,Log2(abs(a2))-5)) (1-33)
a3=a2s<1?0:Clip3(-215,215-1,a1s*lmDiv+(1<<(k1-1))>>k1) (1-34)
a=a3>>Max(0,Log2(abs(a3))-6) (1-35)
k=13–Max(0,Log2(abs(a))-6) (1-36)
b=(L–((a*C)>>k1)+(1<<(k2-1)))>>k2 (1-37)
其中,lmDiv在63个条目的查找表中指定,即,表1-3,该表由公式(1-38)在线生成:
lmDiv(a2s)=((1<<15)+a2s/2)/a2s (1-38)
表1-3 lmDiv的规范
a2s 1 2 3 4 5 6 7 8 9 10 11 12 13
lmDiv 32768 16384 10923 8192 6554 5461 4681 4096 3641 3277 2979 2731 2521
a2s 14 15 16 17 18 19 20 21 22 23 24 25 26
lmDiv 2341 2185 2048 1928 1820 1725 1638 1560 1489 1425 1365 1311 1260
a2s 27 28 29 30 31 32 33 34 35 36 37 38 39
lmDiv 1214 1170 1130 1092 1057 1024 993 964 936 910 886 862 840
a2s 40 41 42 43 44 45 46 47 48 49 50 51 52
lmDiv 819 799 780 762 745 728 712 697 683 669 655 643 630
a2s 53 54 55 56 57 58 59 60 61 62 63 64
lmDiv 618 607 596 585 575 565 555 546 537 529 520 512
在公式(1-34)中,a1s是16位有符号整数,lmDiv是16位无符号整数。因此,需要16位乘法器和16位存储器。在本公开中,我们提出将乘法器的比特深度减少到内部比特深度,以及减小查找表的大小。
1.3.2减少乘法器的比特深度
通过将公式(1-32)改变如下以将a1s的比特深度减小为内部比特深度:
a1s=a1>>Max(0,Log2(abs(a1))–(BitDepthC–2)) (1-39)
具有内部比特深度的lmDiv的值通过公式(1-40)得到,并存储在查找表中。
lmDiv(a2s)=((1<<(BitDepthC-1))+a2s/2)/a2s (1-40)
表1-4示出了内部比特深度10的示例。
表1-4内部比特深度等于10的lmDiv的规范
还对公式(1-31)和(1-36)进行如下修改:
k1=Max(0,Log2(abs(a2))-5)–Max(0,Log2(abs(a1))–(BitDepthC–2)) (1-41)
k=BitDepthC–1–Max(0,Log2(abs(a))-6) (1-42)
1.3.3查找表的缩减条目
所提出的方法将条目从63减少到32,并将每个条目的位从16减少到10,如表1-5所示。通过这样做,几乎可以节省70%的内存。公式(1-34)、方程(1-38)和方程(1-36)的相应变化如下。
a3=a2s<32?0:Clip3(-215,215-1,a1s*lmDiv+(1<<(k1-1))>>k1) (1-43)
lmDiv(a2s)=((1<<(BitDepthC+4))+a2s/2)/a2s (1-44)
k=BitDepthC+4–Max(0,Log2(abs(a))-6). (1-45)
表1-5内部比特深度等于10的lmDiv的规范
a2s 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
lmDiv 512 496 482 468 455 443 431 420 410 400 390 381 372 364 356 349
a2s 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
lmDiv 341 334 328 321 315 309 303 298 293 287 282 278 273 269 264 260
1.4多模型线性模型预测(Multi-model linear model prediction,MMLM)
在ECM-1.0中,提出了多模型LM(MMLM)预测模式,其中,色度样点是通过使用如下两个线性模型基于相同CU的重建亮度样点来预测的:
其中,predC(i,j)表示CU中的预测色度样点,recL′(i,j)表示同一CU的重建亮度样点(或下采样重建亮度样点),α1、β1、α2和β2表示MMLM模型的模型参数。例如,但不限于,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
(1-47)
这种方法也称为最小-最大方法。可以避免上述公式中的除法,并用乘法和移位来代替。
对于具有正方形形状的编码块,直接应用以上两个公式。对于非正方形编码块,首先对较长边界的相邻样点进行下采样,以具有与较短边界相同数量的样点。
除了上方模板和左侧模板一起用于计算线性模型系数的场景之外,两个模板也可以二者择一地用于其它两个MMLM模式(称为MMLM_A和MMLM_L模式)中。
在MMLM_A模式中,仅使用上方模板中的像素样点来计算线性模型系数。为了获得更多样点,将上方模板扩展到(W+W)的大小。在MMLM_L模式中,仅使用左侧模板中的像素样点来计算线性模型系数。为了获得更多样点,将左侧模板扩展到(H+H)的大小。
注意,当上方参考线在CTU边界处时,仅使用一个亮度行(其存储在用于帧内预测的线缓冲器中)来产生下采样的亮度样点。
对于色度帧内模式编解码,允许总共11个帧内模式用于色度帧内模式编解码。那些模式包括五个传统帧内模式和六个跨分量线性模型模式(CCLM、LM_A、LM_L、MMLM、MMLM_A和MMLM_L)。色度模式信令及导出过程展示于表1-6中。色度模式编解码直接取决于对应亮度块的帧内预测模式。由于在I条带中启用用于亮度分量和色度分量的单独块分割结构,因此一个色度块可对应于多个亮度块。因此,对于色度DM模式,直接继承覆盖当前色度块的中心位置的对应亮度块的帧内预测模式。
表1-6当启用MMLM时从亮度模式导出色度预测模式
1.4.1 LM和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)。虚线Ymean表示亮度平均值。这里,XA、YA是样点A的x坐标(即,亮度值)和y坐标(即,色度值)值,并且XB、YB是样点B的x坐标和y坐标值。根据以下等式获得针对每组的线性模型参数α2和β2,其中,i分别等于1和2。
β1=YA1XA (1-50)
β2=YT2XY (1-52)
对于具有正方形的编码块,直接应用以上方程式。对于非正方形编码块,首先对较长边界的相邻样点进行下采样,以具有与较短边界相同数量的样点。
除了上方模板和左侧模板一起用于确定线性模型系数的场景之外,两个模板也可以二者择一地用于另外两个MMLM模式(分别称为MMLM_A和MMLM_L模式)中。
在MMLM_A模式中,仅使用上方模板中的像素样点来计算线性模型系数。为了获得更多样点,将上方模板扩展到(W+W)的大小。在MMLM_L模式中,仅使用左侧模板中的像素样点来计算线性模型系数。为了获得更多样点,将左侧模板扩展到(H+H)的大小。
注意,当上方参考线在CTU边界处时,仅使用一个亮度行(其存储在用于帧内预测的线缓冲器中)来产生下采样的亮度样点。
对于色度帧内模式编解码,存在用于选择LM模式(CCLM、LM_A和LM_L)或多模型LM模式(MMLM、MMLM_A和MMLM_L)的条件检查。条件检查如下:
其中,blockarea表示当前块尺寸,BlkSizeThresLM表示LM模式的最小块尺寸,并且BlkSizeThresMM表示MMLM模式的最小块尺寸。符号d表示预定阈值。在一个示例中,d可以取值0。在另一示例中,d可以取值8。
对于色度帧内模式编解码,允许总共8个帧内模式用于色度帧内模式编解码。这些模式包括五种传统帧内模式和三种跨分量线性模型模式。色度模式信令及导出过程展示于表1-1中。值得注意的是,对于给定CU,如果在线性模型模式下对其进行编码,则基于以上条件检查来确定其是常规单模型LM模式还是MMLM模式。与表1-6中所展示的情况不同,不存在待用信号发送的单独MMLM模式。色度模式编解码直接取决于对应亮度块的帧内预测模式。由于在I条带中启用用于亮度分量和色度分量的单独块分割结构,因此一个色度块可对应于多个亮度块。因此,对于色度DM模式,直接继承覆盖当前色度块的中心位置的对应亮度块的帧内预测模式。
1.5CCLM的斜率调整
在ECM开发期间,JVET-Y0055/Z0049建议对CCLM进行斜率调整。
基本原理
CCLM使用具有2个参数的模型将亮度值映射到色度值。斜率参数“a”和偏置参数“b”定义映射如下:
chromaVal = a * lumaVal + b (1-54)
提出用信号发送对斜率参数的调整“u”以将模型更新为以下形式:
chromaVal = a’ * lumaVal + b’ (1-55)
其中,
a’=a+u
b’=b-u*yr
通过该选择,映射函数围绕具有亮度值yr的点倾斜或旋转。提出使用在模型创建中使用的参考亮度样点的平均值作为yr,以便提供对模型的有意义的修改。图8示出了CCLM的斜率调整过程。在图8的左侧示图中,示出CCLM的斜率调整之前的亮度-色度关系,在图8的右侧示图中,示出CCLM的斜率调整之后的亮度-色度关系。
实现方式
斜率调整参数被提供为-4与4之间的整数(包含-4和4),且在比特流中用信号发送。斜率调整参数的单位是每一个亮度样点值的色度样点值的1/8th(对于10比特内容)。
调整可用于使用块上方和左侧两者的参考样点的CCLM模型(“LM_CHROMA_IDX”及“MMLM_CHROMA_IDX”),但不可用于“单侧”模式。该选择基于编解码效率与复杂度权衡考虑。
当斜率调整应用于多模式CCLM模型时,可调整两个模型且因此针对单个色度块用信号发送多达两个斜率更新。
编码器方法
所提出的编码器方法针对Cr的斜率更新的最佳值执行基于SATD的搜索,并且针对Cb执行类似的基于SATD的搜索。如果任一个结果为非零斜率调整参数,则组合的斜率调整对(针对Cr的基于SATD的更新、针对Cb的基于SATD的更新)被包括在针对TU的RD检查列表中。
1.6色度帧内预测模式的融合
在ECM开发过程中,JVET-Y0092/Z0051提出了色度帧内模式的融合。
1.6.1导言
ECM-4.0中针对色度分量启用的帧内预测模式是六种跨分量线性模型(LM)模式(包括CCLM_LT、CCLM_L、CCLM_T、MMLM_LT、MMLM_L和MMLM_T模式)、直接模式(DM)和四种默认色度帧内预测模式。四个默认模式由列表{0,50,18,1}给出,并且如果DM模式已经属于该列表,则列表中的模式将被模式66替换。
ECM-4.0中包括用于亮度帧内预测的解码器侧帧内模式导出(decoder-sideintra mode derivation,DIMD)方法。首先,针对当前块的第二相邻行和列的L形模板的每一重建亮度样点来计算水平梯度和垂直梯度以构建梯度直方图(HoG)。然后,具有最大和第二大直方图幅度值的两个帧内预测模式与平面模式混合,以生成当前亮度块的最终预测因子。
为了提高色度帧内预测的编解码效率,在最后的JVET会议中提出了两种方法,并在EE2测试1.2中进行了研究,包括解码器侧导出的色度帧内预测模式(DIMD色度)以及非LM模式与MMLM_LT模式的融合。
1.6.2建议的方法
1.6.2.1测试1.2a:DIMD色度模式
在测试1.2a中,提出了DIMD色度模式。所提出的DIMD色度模式使用DIMD导出方法以基于同位重建亮度样点导出当前块的色度帧内预测模式。具体来说,针对当前色度块的每一同位重建亮度样点来计算水平梯度和垂直梯度以构建HoG,如图9中所示,图9示出了当前色度块和其同位重建亮度样点的示意图,其中,灰色样点为当前色度块的同位重建亮度样点。然后,具有最大直方图幅度值的帧内预测模式用于执行当前色度块的色度帧内预测。
当从DIMD色度模式导出的帧内预测模式与从DM模式导出的帧内预测模式相同时,具有第二大直方图幅度值的帧内预测模式用作DIMD色度模式。
用信号发送CU级标志以指示是否应用所提出的DIMD色度模式,如表1-7中所示。
表1-7所提出的方法中的intra_chroma_pred_mode的二值化过程
1.6.2.2测试1.2b:色度帧内预测模式的融合
在测试1.2b中,提出DM模式和四个默认模式可以与MMLM_LT模式融合,如下所示:
pred=(w0*pred0+w1*pred1+(1<<(shift-1)))>>shift (1-56)
其中,pred0为通过应用非LM模式获得的预测因子,pred1为通过应用MMLM_LT模式获得的预测因子且pred为当前色度块的最终预测因子。两个权重w0和w1由相邻色度块的帧内预测模式确定,并且shift被设置为等于2。具体来说,当上方相邻块和左侧相邻块均以LM模式编码时,{w0,w1}={1,3};当上方相邻块和左侧相邻块均以非LM模式编码时,{w0,w1}={3,1};否则,{w0,w1}={2,2}。
对于语法设计,如果选择非LM模式,则用信号发送一个标志以指示是否应用融合。并且所提出的融合仅应用于I条带。
1.6.2.3试验1.2c:试验1.2a+试验1.2b
在测试1.2c中,对DIMD色度模式和色度帧内预测模式的融合进行组合。具体地,应用测试1.2a中描述的DIMD色度模式,并且对于I条带,DM模式、四个默认模式和DIMD色度模式可以使用测试1.2b中描述的权重与MMLM_LT模式进行融合,而对于非I条带,仅DIMD色度模式可以使用相等的权重与MMLM_LT模式进行融合。
1.6.2.4试验1.2d:减少处理的试验1.2a+试验1.2b
在测试1.2d中,对具有减少处理的DIMD色度模式和色度帧内预测模式的融合进行组合。具体来说,具有减少处理的DIMD色度模式基于第二相邻行和列中的相邻重建Y、Cb和Cr样点导出帧内模式,如图10中所示,图10示出了相邻重建Y、Cb和Cr样点的示意图,其中,方框内的样点为当前块内的样点,方框外的样点为相邻重建样点,例如,灰色样点。其他部分与测试1.2c相同。
1.7解码器侧帧内模式推导(DIMD)
当应用DIMD时,从重建相邻样点导出两个帧内模式,且这两个预测因子利用如JVET-00449中所描述的从梯度导出的权重与平面模式预测因子进行组合,如图11中所示,图11示出了解码器侧帧内模式导出的过程的示意图,在此过程中,在不需要帧内模式信令的情况下来估计帧内预测方向。具体地,参照图11,第一步:根据滤波参数针对当前块的相邻重点样点区域中的每个样点(例如,黄色样点)计算出水平梯度值Gx及垂直梯度值Gy;第二步:根据水平梯度值Gx及垂直梯度值Gy找出对应的预测方向,例如,将梯度值Gx及Gy映射到[2,66]内的最近预测方向;第三步:收集所有的预测方向,针对每个预测方向,计算具有该方向的相邻像素的所有绝对梯度Gx和Gy的总和,找出数目最多的前两个预测方向(例如,M1和M2);第四步:使用数目最多的前两个预测方向及planar预测进行加权求和以获得最后合成最终的预测区块。利用由CCLM使用的相同的基于查找表(LUT)的整合方案来执行权重导出中的除法运算。例如,方向计算中的除法运算(公式(1-57))通过下面的基于LUT的方案(公式(1-58至1-61))来计算:
Orient=Gy/Gx (1-57)
通过以下基于LUT的方案来计算:
x=Floor(Log2(Gx)) (1-58)
normDiff=((Gx<<4)>>x)&15 (1-59)
x+=(3+(normDiff!=0)?1:0) (1-60)
Orient=(Gy*(DivSigTable[normDiff]|8)+(1<<(x-1)))>>x (1-61)
其中
DivSigTable[16]={0,7,6,5,5,4,4,3,3,2,2,1,1,1,1,0}。
导出的帧内模式被包括在帧内最可能模式(MPM)的首要列表中,因此在构建MPM列表之前执行DIMD过程。DIMD块的首要导出的帧内模式与块一起存储且用于相邻块的MPM列表构造。
1.8多参考线(Multiple reference line,MRL)帧内预测
多参考线(MRL)帧内预测使用更多参考线进行帧内预测。图12中示出了与块单元相邻的4条参考线的示例的示意图。参照图12,段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对齐,以减少解码器的存储要求。
1.9用于帧内预测的卷积跨分量模型(Convolutional cross-component model,CCCM)
在ECM开发过程中,JVET-Z0064提出了色度帧内模式的卷积跨分量模型(CCCM)。
1.9.1导言
提出应用卷积跨分量模型(convolutional cross-component model,CCCM)从重构的亮度样点中预测色度样点,其原理与当前的CCLM模型类似。与CCLM一样,当使用色度子采样时,重建亮度样点被下采样以匹配较低分辨率色度网格。
此外,类似于CCLM,存在使用CCCM的单模型或多模型变体的选项。多模型变体使用两个模型,一个模型针对高于平均亮度参考值的样点导出,另一个模型针对其余样点导出(遵循CCLM设计的精神)。可以针对具有至少128个可用参考样点的PU选择多模型CCCM模式。
1.9.2卷积滤波器
所提出的卷积7抽头滤波器由5抽头加号形状的空间分量、非线性项和偏置项组成。图13示出卷积滤波器的空间分量的示意图。如图13所示,滤波器的空间5抽头分量的输入由中心(C)亮度样点及其上/北(N)、下/南(S)、左/西(W)和右/东(E)相邻样点组成,该中心(C)亮度样点与要预测的色度样点同位。
非线性项P被表示为中心亮度样点C的2次方,并被缩放到内容的样点值范围:
P=(C*C+midVal)>> bitDepth (1-62)
其中,bitDepth表示比特深度,midVal表示中间色度值。也就是说,对于10位(也称为,10比特)内容,计算如下:
P=(C*C+512)>>10 (1-63)
偏置项B表示输入和输出之间的标量偏移(类似于CCLM中的偏移项),并被设置为中间色度值(对于10位内容,为512)。
滤波器的输出被计算为滤波器系数ci和输入值之间的卷积,并被裁剪到有效色度样点的范围:
predChromaVal=c0C+c1N+c2S+c3E+c4W+c5P+c6B (1-64)
其中,c0、c1、c2、c3、c4、c5和c6表示滤波器系数。
1.9.3滤波器系数的计算
通过最小化参考区域中预测的色度样点和重建的色度样点之间的均方误差(MSE)来计算滤波器系数ci。图14示出了用于导出滤波器系数的参考区域的示意图。参照图14,由PU上方和左侧的6条线的色度样点组成的参考区域(绿色区域)。此外,参考区域还可向右延伸一个PU宽度,并在PU边界以下延伸一个PU高度,延伸区域可为蓝色区域。参考区域被调整为仅包括可用的样点。蓝色显示的区域的扩展需要支持加号形状的空间滤波器的“侧样点”,并且在不可用区域时被填充。
通过计算亮度输入的自相关矩阵和亮度输入与色度输出之间的互相关向量来执行MSE最小化。对自相关矩阵进行LDL分解,并使用回代法计算最终滤波器系数。该过程大致遵循ECM中ALF滤波器系数的计算,然而选择LDL分解代替Cholesky分解以避免使用平方根运算。所提出的方法仅使用整数算法。
1.9.4比特流信令
该模式的使用通过CABAC编码的PU级标志被用信号发送。包括一个新的CABAC上下文来支持这一点。当涉及到信令时,CCCM被认为是CCLM的子模式。也就是说,只有当帧内预测模式是LM_CHROMA_IDX(启用单模式CCCM)或
MMLM_CHROMA_IDX(启用多模式CCCM)时,才用信号发送CCCM标志。
1.9.5编码器操作
编码器在色度预测模式循环中执行两个新的RD检查,一个用于检查单模型CCCM模式,一个用于检查多模型CCCM模式。
2问题陈述
对于现有的MMLM设计,基于值Threshold将相邻的重建亮度/色度样点对分类为两组,该值Threshold仅考虑亮度DC值(直流分量值)。即,通过仅考虑一个亮度样点的强度来分类亮度/色度样点对。然而,亮度分量通常保留丰富的纹理,并且当前样点可能与相邻样点高度相关,这种样点间相关(AC(交流分量)相关)可能有利于亮度/色度样点对的分类,并且可以带来额外的编码效率。
此外,图15示出了色度样点与亮度样点的相关性的示意图。如图15(a)所示,CCLM假设给定的色度样点C仅与相应的亮度样点L相关(L0.5,可作为分数亮度样点位置),并使用具有普通最小二乘(ordinary least squares,OLS)估计的简单线性回归(simplelinear regression,SLR)(例如,aL+b,其中,a和b表示线性回归的参数)来预测给定的色度样点。然而,如图15(b)所示,在一些视频内容中,一个色度样点C可能同时与多个亮度样点(例如,L0,L1)相关(AC或DC相关),因此多元线性回归(multiple linear regression,MLR)模型(例如,a0L0+a1L1+b,其中,a0,a1和b表示线性回归的参数)可能会进一步提高预测精度。
虽然CCCM模式可以提高帧内预测效率,但其性能仍有进一步提高的空间。同时,现有CCCM模式的某些部分也需要简化以实现高效的编解码器硬件,或者改进以获得更好的编码效率。此外,它的实现复杂性和编码效率之间的权衡需要进一步改善。
3提出的方法1
3.1边缘分类线性模型(3.1Edge-classified linear model,ELM)
本公开的重点是提高亮度和色度分量的编码效率,具有类似于MMLM的设计原理,但是引入了考虑亮度边缘/AC信息的分类器。除了现有的带分类MMLM,第3.2节提供了建议的分类器示例。生成预测色度样点的过程与MMLM相同(原始最小二乘法、简化的最小-最大值法等),但分类方法不同。
请注意,尽管在下面的描述中,VVC标准中的现有CCLM设计被用作基本CCLM方法,但是对于视频编码领域的技术人员来说,本公开中描述的所提出的跨分量方法也可以应用于具有类似设计原理的其他预测编码工具。例如,对于AV1标准中的亮度(CfL)的色度,也可以通过将亮度/色度样点对分成多个组来应用所提出的ELM。
注意,Y/Cb/Cr在视频编码区也可以表示为Y/U/V。
注意,如果视频是RGB格式,例如,在下面的段落中,通过简单地将YUV符号映射到GBR,也可以应用建议的ELM。
注意,本公开中的附图可以与本公开中提到的所有示例相结合。
在公开的实施例中,提供一种对视频信号进行解码的方法,包括接收用于视频信号的第一块的经编码的亮度样点块;对所述经编码的亮度样点块进行解码以获得重建的亮度样点;基于边缘信息的方向和强度将重建的亮度样点分类成多个样点组;对不同样点组的重建亮度样点应用不同的线性预测模型;基于所应用的线性预测模型来预测视频信号的第一块的色度样点。
3.2分类
分类器C0:将现有的基于MMLM阈值的分类器表示为C0,它产生2个类。
分类器C1:局部二进制模式(Local Binary Pattern,LBP)
(1)将当前样点Y0与相邻的N个样点Yi进行比较。
(2) 如果 Y0> Yi, 分数score +=1
否则如果 Y0< Yi, 分数score -=1
(3)对分数进行量化以形成K个类。
(4)使用K个类对当前样点进行分类。
例如,
(1)将当前样点Y0与相邻的4个样点Yi(无对角线)进行比较。
(2)如果Y0>Yi,分数score+=1
否则如果Y0<Yi,分数score-=1
(3)将分数量化为3类:(分数>0,=0,<0)。
(4)使用3个类对当前样点进行分类。
分类器C2:
(1)选择一个方向来计算边缘强度。该方向由当前样点和沿该方向的N个相邻样点形成。通过将当前样点减去一个相邻样点来计算一个边缘强度。
(2)通过M-1个阈值Ti将边缘强度量化为M个段。
(3)使用M个类对当前样点进行分类。
例如,
(1)一个方向是根据MMLM模式绑定的。例如,MMLM_L:ver(垂直方向),MMLM_A:hor(水平方向),MMLM:使用分类器C0。该方向由当前样点和沿该方向的1个相邻样点形成。通过将当前样点减去相邻样点来计算边缘强度。
(2)通过1个简单阈值0将边缘强度量化为2个段。(>0,<=0)
(3)使用2个类对当前样点进行分类。
分类器C3(与第4节FLM和第5节GLM链接):
(1)如图25所示,选择一个边缘检测滤波器形状(例如,1-tap)来计算边缘强度。该方向由当前样点和沿该方向的N个相邻样点形成。一个边缘强度由滤波后的值计算。
(2)通过M-1个阈值Ti将边缘强度量化为M个段。(或使用映射表)
滤波器形状、滤波器抽头和映射表可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region(区域)/CTU/CU/Subblcok(子块)/Sample(样点)级中预定义或用信号发送/切换。
(3)使用K个类对当前样点进行分类。(例如,K=M)
上述分类器可以组合以形成联合分类器。例如,结合分类器C0和分类器C2,产生2*2类。例如,组合分类器C2和分类器C2,但具有不同的边界方向(MMLM_L:hor,MMLM_A:ver,),这产生2*2类。
要分类的亮度样点可以首先下采样以对准CCLM设计。
3.3样点处理
如图4所示,对于具有同位亮度块的待预测色度块:
(1)重建同位亮度块样点。
(2)对同位的相邻亮度样点(灰度)进行下采样。
(3)根据第3.2节中的分类器对相邻的亮度/色度样点对进行分类。
(4)为不同的类推导不同的线性模型。
(5)对不同类别的重建亮度样点应用不同的线性模型。
(6)基于应用的线性预测模型预测色度样点。
4建议的方法2
4.1基于滤波器的线性模型(Filter-based linear model,FLM)
对于要预测的色度样点,重建的同位亮度样点和相邻亮度样点可用于预测色度样点,以捕获同位亮度样点、相邻亮度样点和色度样点之间的样点间相关性。重建的亮度样点被线性加权并与一个“偏移”组合以生成预测的色度样点(C:预测的色度样点,:Li-第i重建的同位或相邻的亮度样点,αi:滤波器系数,β:偏移,N:滤波器抽头)。注意线性加权加偏移值直接形成预测的色度样点(可以根据视频内容自适应地是低通、高通),然后与残差相加形成重建的色度样点。
在诸如CCCM的一些实现中,偏移项也可以实现为中间色度值B(对于10位内容,为512)乘以另一系数。
对于给定的CU,顶部和左侧重建的亮度和色度样点可用于导出/训练FLM参数(αi,β)。类似于CCLM,αi和β可以通过OLS导出。收集顶部和左侧训练样点,并在编码器/解码器侧计算一个伪逆矩阵以导出参数,然后使用这些参数来预测给定CU中的色度样点。令N表示应用于亮度样点的滤波器抽头数,M表示用于训练参数的顶部和左侧重建的亮度/色度样点对总数,表示具有第i个样点对和第j个滤波器抽头的亮度样点,Ci表示具有第i个样点对的色度样点,下面的等式显示了伪逆矩阵A+的导出以及参数。图16示出了根据本公开的示例性实施例的用于导出模型参数的相邻样点的示意图。如图16所示,示出了N为6(即,6抽头),M为8的示例,顶部2行/左侧3列亮度样点和顶部1行/左侧1列色度样点用于导出/训练参数。
b=Ax
x=(ATA)-1ATb=A+b
请注意,可以仅通过αi而没有偏移β来预测色度样点,偏移是所提出的方法的子集。
请注意,尽管在下面的描述中,VVC标准中的现有CCLM设计被用作基本CCLM方法,但是对于视频编码领域的技术人员来说,本公开中描述的所提出的跨分量方法也可以应用于具有类似设计原理的其他预测编码工具。例如,对于AV1标准中的从亮度到色度(CfL),也可以通过将多个亮度样点包括到MLR模型来应用所提出的FLM。
提出的ELM/FLM/GLM可以直接扩展到AV1标准中的CfL设计,它显式地传输模型参数(α,β)。例如,(1抽头情况)在编码器处,在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处推导α和β,并在CfL模式下被用信号发送到解码器。
注意,Y/Cb/Cr在视频编码区也可以表示为Y/U/V。
注意,如果视频是RGB格式,例如,在下面的段落中,通过简单地将YUV符号映射到GBR,也可以应用建议的FLM。
注意,本公开中的附图可以与本公开中提到的所有示例相结合。
本公开的实施例中,提供一种解码视频信号的方法,包括:接收用于视频信号的第一块的经编码的亮度样点块;对所述经编码的亮度样点块进行解码以获得重建的亮度样点;确定亮度样点区域和色度样更少区域以导出多元线性回归(MLR)模型;用伪逆矩阵法推导MLR模型;将MLR模型应用于重建的亮度样点;基于所应用的MLR模型预测视频信号的第一块的色度样点。
4.2滤波器形状
如图16所示,6抽头亮度滤波器用于FLM预测。然而,尽管多抽头滤波器可以很好地拟合训练数据(即,顶部/左侧相邻的重建亮度/色度样点),但在训练数据不能捕获测试数据的全部特征的一些情况下,它可能导致过度拟合,并且可能不能很好地预测测试数据(即,要预测的色度块样点)。此外,不同的滤波器形状可以很好地适应不同的视频块内容,导致更准确的预测。
为了解决这一问题,可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处预定义滤波器形状/滤波器抽头数或用信号发送/切换。一组滤波器形状候选可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处预定义或用信号发送/切换。不同的分量(U/V)可能具有不同的滤波器切换控制。如图16所示,可预定义一组滤波器形状候选(例如,idx=0~5),滤波器形状可表示滤波器使用的样点位置,也可能指示抽头数,例如,滤波器形状(1,2)表示2抽头亮度滤波器并使用位置1和2的亮度样点,滤波器形状(1,2,4)表示3抽头亮度滤波器并使用位置1,2和4的亮度样点,等等。U/V分量的滤波器形状选择可以在PH或CU/CTU级处切换。注N-tap可以表示有偏移β或没有偏移β的N-tap,如第4.1节所述。
表4-1滤波器形状
当FLM/CCCM形状包含CCCM中的非线性项时,
predChromaVal=c0C+c1N+c2S+c3E+c4W+c5P+c6B,P=(C*C+midVal)>>
bitDepth
其中,C表示中心亮度样点,N、S、W和E分别表示中心亮度样点C的上方相邻样点(即,北侧相邻样点)、下方相邻样点(即,南侧相邻样点)、左侧相邻样点(即,西侧相邻样点)和右侧相邻样点(即,东侧相邻样点),中心亮度样点C与要预测的色度样点同位,c0、c1、c2、c3、c4、c5和c6表示滤波器系数,P表示非线性项,B表示偏置项,bitDepth表示比特深度,midVal表示中间色度值。
用于导出P的值可以是当前和邻近亮度样点的组合,但不限于C*C。
P=(Q*R+midVal)>>bitDepth比特深度,Q和R表示用于导出非线性项的值。
Q/R可以是当前和邻近亮度样点的线性组合(在下采样域中或没有下采样过程)。
例如,
(1)Q,R选自N,S,E,W,C中的一个
(2)Q=R=(N+S+E+W)/4
(3)Q=C,R=(N+S+E+W)/4
(4)Q*R=C*N,C*S,C*E,C*W
用于导出非线性项的不同值(Q/R)被视为不同的滤波器形状,可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处预定义或被用信号发送/切换。一组滤波器形状候选可以在
SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处预定义或用信号发送/切换。
不同的色度类型/颜色格式可以有不同的预定义滤波器形状/抽头。图17示出了根据本公开的示例性实施例的用于导出模型参数的相邻样点的另一示意图。例如,如图17所示,对于420类型-0,可选择预定义滤波器形状(1,2,4,5)。对于420类型-2,可选择预定义滤波器形状(0,1,2,4,7),对于422类型,可选择预定义滤波器形状(1,4)。对于444类型,可选择预定义滤波器形状(0,1,2,3,4,5)。
用于导出MLR模型的不可用亮度/色度样点可以被可用的重建样点填充。例如,如果使用如图17所示的6抽头(0,1,2,3,4,5)滤波器,对于位于左图像边界的CU,包括(0,3)在内的左列不可用(在图像边界之外),因此(0,3)是从(1,4)开始的重复填充,以应用6抽头滤波器。请注意在训练数据(顶部/左侧相邻的重建亮度/色度样点)和测试数据(CU中的亮度/色度样点)中应用的填充过程。
图18、图19、图20和图21示出根据本公开的示例性实施例的滤波器示例的示意图。一个或多个滤波器(具有不同形状和不同抽头数)可用于FLM预测,如图18、图19、图20所示,在图18和19中,绿色部分表示滤波器形状和抽头数,在图20中,以表格形式示出了滤波器形状和抽头数。一组或多组滤波器(具有不同形状和不同抽头数)可用于FLM预测示例如图21所示,以表格形式示出了多组滤波器形状和抽头数,组A-组J,组M和组N。
4.2.1隐式滤波器形状推导
类似于5.2.1,可以隐式导出滤波器形状候选,而无需显式地用信令发送比特。在这种情况下,滤波器形状候选不限于定向梯度滤波器(因为FLM比GLM更通用)。例如,滤波器形状候选可以是CCCM十字形状滤波器,或者如图18、图19、图20、图21所示的滤波器,或者本公开中提到的其他滤波器形状。由于较长的滤波器抽头理论上总是更好地拟合训练数据(模板区域),但可能过度拟合,因此机器学习领域中众所周知的“N折交叉验证”技术可用于训练滤波器系数。该方法将可用的训练数据分成N个集合,并使用部分集合进行训练,其他集合进行验证。
下面描述滤波器形状推导过程。
(1)确定当前CU的M个滤波器形状候选,其中,M可以是大于1的整数。
(2)将可用的L形模板区域划分为N个区域,表示为R0,R1,…RN-1(将训练数据分成N个集合,N折训练)。
(3)将M个滤波器形状候选独立地应用于部分可用模板区域(可以是R0,R1,…RN-1中的单个或多个区域)。
(4)根据M个滤波器形状分别导出M个滤波器系数集合,表示为F0,F1,…FM-1
(5)将导出的F0,F1,…FM-1滤波器系数集合应用于可用模板区域的其他部分(即,R0,R1,…RN-1之中的不同于(3)使用的可用模板区域部分。
(6)按SAD、SSD或SATD累加误差,表示为E0,E1,…EM-1
(7)排序并选取K个最小误差,表示为E’0,E’1,…E’K-1,它们对应于K个滤波器形状或K个滤波器系数集合,其中,K是大于或等于1且小于或等于M的整数。
(8)选择K中的1个滤波器形状,以应用于当前CU进行色度预测。
注意,在编码器侧,需要用信号发送指示选择K个滤波器形状中的哪一个滤波器形状的语法信息(例如,标志)。在K为1的情况下,则可不需要发信号,这是因为误差最小的滤波器形状是应用的滤波器形状。
下面,举例说明滤波器形状推导过程。
(1)为当前CU预定义4个滤波器形状候选(例如,如图18中的滤波器中的4个)。
(2)将可用的L形模板区域(CCCM 6个色度行/列,注意,在CCCM设计中,每个色度样点涉及用于下采样的6个亮度样点)划分为2个区域,表示为R0,R1。例如,偶数行或列:R0,奇数行或列:R1
图22示出了根据本公开的示例性实施例的用于隐式滤波器形状推导的模板区域的示意图。如图22中的(a)所示,蓝色区域表示当前色度CU,黄色和红色区域表示用于隐式滤波器形状推导的模板区域,其中,偶数行区域R0(红色区域)用于训练/导出4个滤波器系数集合,奇数行区域R1(黄色区域)用于验证/比较和排序4个滤波器系数集的代价。注意,R0和R1仅为示例,可互相替换。
(3)将4个滤波器形状候选独立应用于部分可用模板区域(R0)。
(4)导出4个滤波器系数集合(根据4个滤波器形状),表示为F0,F1,…F3
(5)将导出的F0,F1,…F3滤波器系数集合应用于可用模板区域的其他部分(R1),即,不同于(3)中的可用模板部分。
(6)按SAD、SSD或SATD累加误差,表示为E0,E1,…E3
(7)排序并选取1个最小误差,表示为E’0,对应于1个滤波器形状/1个滤波器系数集合
(8)K为1,则不需要发信号(误差最小的滤波器形状是应用的滤波器形状)
下面,再次举例说明滤波器形状推导过程。
(1)为当前CU预定义4个滤波器形状候选。
(2)将可用的L形模板区域(CCCM 6色度行/列)分成2个区域,表示为R0,R1
例如,交错的行或列R0,R1
0 1 1 0
1 0或0 1
如图22中的(b)所示,蓝色区域表示当前色度CU,黄色和红色区域表示用于隐式滤波器形状推导的模板区域,其中,模板区域中R0(黄色区域)和R1(红色区域)交错。注意,R0和R1仅为示例,可互相替换。
(3)将4个滤波器形状候选独立应用于部分可用模板区域(单个R0)。
(4)导出4个滤波器系数集合(根据4个滤波器形状),表示为F0,F1,…F3
(5)将导出的F0,F1,…F3滤波器系数集合应用于可用模板区域的其他部分(R1),不同于(3)中的可用模板部分。
(6)按SAD、SSD或SATD累加误差,表示为E0,E1,…E3
(7)排序并选取2个最小误差,表示为E’0,E’1,对应于2个滤波器形状/2个滤波器系数集合。
(8)在2个滤波器形状中选择1个滤波器形状,以应用于当前CU进行色度预测。
注意,在编码器侧,需要用信号发送指示选择2个滤波器形状中的哪一个滤波器形状的语法信息(例如,标志)。
注意:隐式滤波器形状推导方法也可用于确定是否在CCCM滤波器系数中引入非线性项(将有/无非线性项视为不同的滤波器形状)。
注意:隐式滤波器形状推导方法也可用于确定是否禁用CCCM滤波器系数中的下采样过程(将有/无下采样过程视为不同的滤波器形状)。
4.3矩阵推导
如第4.1节所述,必须在编码器/解码器处导出MLR模型(线性方程)。在本节中,提出了几种方法来导出伪逆矩阵A+,或直接求解线性方程组。也可以应用其他已知的方法,如牛顿法、凯莱-汉密尔顿法等的特征分解。
请注意,本节中A+的表示A-1是为了简化。
1.用共轭矩阵(adjA),封闭形式,解析解来求解A-1
下面显示了一个nxn通用表格,一个2x2和一个3x3案例。如果FLM使用3x3,则需要求解2个缩放器加1个偏移。
b=Axx=(ATA)-1ATb=A+b,在本节中被表示为A-1b
通过删除第j行和第i列得到的(n-1)x(n-1)子矩阵
2.高斯-若尔当消元法
线性方程可以使用高斯-若尔当消元法,通过增广矩阵[A In]和一系列初等行运算来求解,以获得简化的行梯队形式[I|X]。下面显示了2x2和3x3的例子。
3.Cholesky分解
要求解Ax=b,A先用Cholesky-Crout算法分解,得到一个上三角矩阵和一个下三角矩阵,再依次应用一个正向代入加一个反向代入来得到解。下面显示了一个3x3的例子。
特殊处理:如果满足某些条件,使得线性方程无法求解,则可以使用默认值来填充色度预测值。默认值可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处预定义或通过信号发送/切换。例如,预定义的1<<(bitDepth比特深度-1)、meanC、meanL或meanC-meanL(平均当前色度或来自可用的其他色度、亮度值或FLM重建的邻近区域的子集)。默认值αi可以是0。
1.用共轭矩阵求解A-1,但是A是零行列式的,detA为0。
2.A不能进行Cholesky分解,gjj<REG-SQR,其中,REG_SQR是一个小值,可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处预定义或发送信号/切换。
4.4应用区域
图16显示了使用顶部2/左3亮度线和顶部1/左1色度线导出FLM参数的典型情况。然而,使用不同的区域进行参数推导可能会带来编码好处,因为不同的块内容和不同相邻样点的重建质量不同,如第1.1节所述。提出了几种选择参数推导应用区域的方法。
1.与MDLM类似,FLM推导只能使用上方或左侧亮度/色度样点来推导参数。
是否使用FLM、FLM_L或FLM_A可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处预定义或通过信号发送/切换。
当应用FLM模式时,W’=W,H’=H。
当应用FLM_A模式时,W’=W+We;其中,We表示扩展的顶部亮度/色度样点。
当应用FLM_L模式时,H’=H+He;其中,He表示扩展的左亮度/色度样点。
扩展亮度/色度样点(We,He)的数量可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/
区域/CTU/CU/子块/样点级处预定义或用信号通知/切换。
例如,预定义(We,He)=(H,W),如VVC CCLM的(H,W),或如ECMCCLM的(W,H)。不可用的(We,He)亮度/色度样点可以从最近的(水平、垂直)亮度/色度样点重复填充。
图23示出了根据本公开的示例性实施例的用于导出模型参数的相邻样点的另一示意图。如图23所示,示出了FLM_L/FLM_A(例如,在4抽头下)的示例。当应用FLM_L或FLM_A时,仅H’或W’亮度/色度样点分别用于参数推导。
2.与MRL类似,可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/子块/样点级片预定义或发信号/切换不同的线索引,以指示所选的亮度/色度样点对线。
这可能得益于不同线样点的不同重建质量。
图24示出了根据本公开的示例性实施例的用于导出模型参数的相邻样点的另一示意图。如图24所示,与MRL类似,FLM可以使用不同的线进行参数推导(例如,在4抽头下)。例如,索引1:使用浅蓝色区域和黄色区域的亮度/色度样点。
3.扩展CCLM区域,并取完整的顶部N/左侧M个线进行参数推导。例如,图24显示的所有暗蓝色区域、浅蓝色区域和黄色区域可以同时使用。使用更大区域(数据)的训练可能得到更鲁棒的MLR模型。
4.5语法
FLC:固定长度代码
TU:截断一元码
EGk:k阶指数golomb码,其中k可以在
SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处固定或用信号发送/切换。
SVLC:有符号EG0
UVLC:无符号EG0
表4-1FLM语法示例。注意每个语法元素的二值化都是可以改变的。
5建议的方法3
5.1梯度线性模型(Gradient linear model,GLM)
尽管所建议的方法2中的FLM提供了最佳的灵活性(导致最佳的性能),但是如果滤波器抽头的数量增加,它需要求解许多未知参数。当逆矩阵大于3×3时,封闭形式的推导是不合适的(乘法器太多),并且需要像Cholesky这样的迭代方法,这增加了解码器的处理周期。在本节中,提出了应用MLR模型之前的预操作,包括利用样点梯度来运用亮度AC信息和色度强度之间的相关性。在梯度的帮助下,可以有效地减少滤波器抽头的数量。一般来说,GLM是由FLM简化而来的。我们关注未知参数<=3(2-抽头+1偏移或3-抽头无偏移)的例子。
请注意,本节中的方法/示例可以从第3节、第4节中提到的方法中组合/重用,包括但不限于分类、滤波器形状、矩阵推导(特殊处理)、应用区域、语法。此外,本节中列出的方法/示例也可以应用于第3节、第4节(更多抽头),以在一定的复杂性权衡下获得更好的性能。
在本公开中,参考样点/训练模板/重建的邻近区域通常是指用于导出MLR模型参数的亮度样点,该MLR模型参数然后被应用于一个CU中的内部亮度样点,以预测CU中的色度样点。
5.2滤波器形状
代替直接使用亮度样点强度值作为MLR的输入,可以应用预操作(例如,预线性加权、符号、缩放/abs、阈值化、ReLU)来降低未知参数的维度。例如,代替在2亮度样点上应用2抽头,可以对2亮度样点进行预线性加权,然后可以应用更简单的1抽头来降低复杂性。图25示出了根据本公开的示例性实施例的GLM模式下的预操作的示例的示意图。如图25所示,显示了GLM 1抽头/2抽头(带偏移)预操作的一些示例,其中,每个2x3的蓝色方块为一个示例,显示的系数为定位到相应位置处的相乘参数,圆圈为对应的色度样点位置,黄色数字为第N组系数的索引,2抽头系数表示为(a,b),G1示出了16种Roberts/Prewitt等的梯度模式。不同的单抽头模式是为不同的梯度方向设计的,并使用不同的“插值”亮度样点(加权到不同的亮度位置)进行梯度计算。预操作参数(系数、符号、缩放/abs、阈值、ReLU)可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处固定或通过信号发送/切换。注意,在示例中,如果多个系数应用于一个样点(例如-1,4),则可以合并它们(例如3)以减少操作。
预操作可以根据梯度、边缘方向(检测)、像素强度、像素变化、像素方差、Roberts/Prewitt/compass/Sobel/Laplacian算子、高通滤波器、低通滤波器...等等来执行。示例中列出的边缘方向检测器可以扩展到不同的边缘方向。例如,沿不同方向应用的1-tap(1,-1)或2-tap(a,b)来检测不同的边缘梯度。滤波器形状/系数可以相对于色度位置对称,如图25所示(420类型-0的情况,即,4个亮度样点对应1个色度样点的情况)。
预操作可以重复应用。例如,使用低通平滑FIR滤波器[1,2,1]/4或[1,2,1;1,2,1]/8对模板(例如,用于推导模型参数的相邻样点区域)应用一个模板滤波以去除异常值。然后,应用1-tap GLM导出MLR模型。
2的幂约束:预操作系数(最终应用于(例如,3)或中间应用于(例如,-1,4)每个亮度样点)可以被限制为2的幂值,以节省乘数。
一个单抽头GLM的示例。符号与第4.1节相似。请注意,L这里代表经过“预操作”的亮度样点。例如,1抽头GLM[-1,0,1;-1,0,1],如图25所示。单抽头GLM的参数推导可以重复使用CCLM设计(在5.4节中描述),但要考虑定向梯度(可能与高通滤波器一起使用)。2抽头或多抽头GLM需要额外的MLR参数推导(不能重用)。
b=Ax
x=(ATA)-1ATb=A+b
5.2.1隐式滤波器形状推导
代替显式地用信号通知所选择的滤波器形状索引,可以在解码器处导出所使用的定向滤波器形状以节省比特开销。
(1)对当前块的第i相邻行和列的L形模板的每个重建亮度样点应用N种定向梯度滤波器,其中,N是大于1的整数。
(2)按SAD、SSD或SATD累加经过N种定向梯度滤波器滤波后的值(梯度)。
(3)基于累加后的梯度建立梯度直方图(HoG)。
(4)HoG中的最大值是导出的(亮度)梯度方向
例如,重用ECM-4.0中包含的用于亮度帧内预测的解码器侧帧内模式推导(DIMD)方法。
(1)对当前块的第二相邻行和列的L形模板的每个重建亮度样点应用2种方向梯度滤波器(3x3 hor/ver Sobel)。
(2)按SAD累加滤波后的值(梯度)。
(3)建立梯度直方图(HoG)。
(4)HoG中的最大值是导出的(亮度)梯度方向。
例如,形状候选包括:[-1,0,1;-1,0,1],[1,2,1;-1,-2,-1],最大值为hor(水平方向),则针对GLM使用形状[-1,0,1;-1,0,1]。
用于导出梯度方向的梯度滤波器可以与GLM形状相同或不同。例如,两者都使用水平[-1,0,1;-1,0,1]。
5.3分类
FLM/GLM可以与MMLM或ELM结合使用。以GLM为例(1抽头或2抽头)。当与分类器相结合时,每个组可以共享或拥有自己的滤波器形状,语法指示每个组的形状。例如,与分类器C0’结合。
组0:grad_hor(水平梯度),模型0;组1:grad_ver(垂直梯度),模型1
组0:grad_hor,模型0,组1:grad_hor,模型1,仅生成一次hor亮度图案
1.结合MMLM分类器C0:
基于Threshold,将相邻的重建亮度/色度样点对分类成2组:
为不同的组推导不同的MLR模型(可以是简化的GLM);
将CU内的亮度/色度样点对分类为2组;
对不同组的重建亮度样点应用不同的MLR模型;
基于不同分类的MLR模型预测CU中的色度样点。
recL′(i,j):下采样重建亮度样点
recC(i,j):重建的色度样点(注意只有邻居可用)
Threshold:相邻重建亮度样点的平均值
注意,类别(2)的数量可以通过增加Threshold的数量来扩展到多个类别。例如,基于相邻重建(下采样)亮度样点的最小/最大值等分,或者,在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级别处固定或用信号发送/切换)
例如,但不限于,首先,可将当前块的相邻重建亮度样点值与预定阈值进行比较,来对相邻重建亮度样点分类。例如,相邻重建亮度样点值可以是参考亮度样点区域中的参考亮度样点的值或下采样值,预定阈值可以是一个或多个阈值,例如,在预定阈值为一个阈值的情况下,可将相邻重建亮度样点分为两类,例如,可将大于或等于该阈值的相邻重建亮度样点分为一类,并将小于该阈值的相邻重建亮度样点分为另一类;在预定阈值为两个阈值的情况下,可将相邻重建亮度样点分为三类,以此类推。随后,可利用分类到同一组的相邻重建亮度样点以及对应的相邻重建色度样点来推导MLR模型,得到多个MLR模型。随后,根据当前块内的亮度样点值与所述预定阈值进行比较,来对当前块内的亮度样点分类。随后,针对当前块内的分类到同一类的亮度样点应用属于该类的相邻重建亮度/色度样点推导出的MLR模型,来预测对应的色度样点。
2.结合MMLM分类器,变体C0’:
应用于相邻亮度样点的FLM/GLM的滤波值用于分类,而不是MMLM亮度DC强度。例如,如果应用1抽头(1,-1)GLM,则使用平均AC值(物理意义)。处理可以类似于1。
基于一个或多个滤波器形状、一个或多个滤波值和K-1个ThresholdTi,将相邻的重建亮度/色度样点对分类为K个组;
为不同的组推导不同的MLR模型(可以是简化的GLM);
将CU内的亮度/色度样点对分类为K组;
对不同组的重建亮度样点应用不同的MLR模型;
基于不同分类的MLR模型预测CU中的色度样点。
Threshold可以是预定义的(例如,0,或者可以是表格)或者以
SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处用信号发送/
切换。例如,Threshold可以是相邻重建(可下采样)亮度样点的平均AC值(滤波值)
(2组),或者基于最小/最大AC(K组)被等分。
3.结合ELM分类器C3:
如图25所示,选择一个滤波器形状(例如,1-tap)来计算边缘强度,该方向由当前样点和沿该方向的N个相邻样点(例如全部6个)形成,通过滤波值(例如,等效值)计算一个边缘强度;
通过M-1个阈值Ti将边缘强度量化为M个片段;
使用K个类对当前样点进行分类,例如,K==M;
为不同的组推导不同的MLR模型(可以是简化的GLM);
将CU内的亮度/色度样点对分类为K组;
对不同组的重建亮度样点应用不同的MLR模型;
基于不同分类的MLR模型预测CU中的色度样点。
用于分类的滤波器形状可以与用于MLR预测的滤波器形状相同或不同。阈值M-1的数目和阈值值Ti都可以在
SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处固定或用信号发送/切换。
注意第3节ELM中的其他分类器/组合分类器也可用于FLM/GLM。
特殊处理:如果一组中的分类样点小于一个数(例如,预定义的4),则第4.3节中提到的默认值可应用于分组参数(αi,,β)。如果对于所选LM模式,相应的相邻重建样点不可用,则可应用默认值。例如,选择的MMLM_L模式,但留下的样点无效。
5.4简化与统一
本节提供了GLM的简化。第4.3节FLM中的矩阵/参数推导需要浮点运算(例如,闭合形式的除法),这对于解码器硬件来说是昂贵的,因此需要定点设计。对于单抽头GLM的情况,它可以被视为CCLM的修改亮度重建样点生成(例如,水平梯度方向,从CCLM[1,2,1;1,2,1]/8到GLM[-1,0,1;-1,0,1]),原始CCLM过程可以重复用于GLM,包括定点运算、MDLM下采样、分割表、应用的大小限制、最小-最大近似和斜率调整。对于所有项目,单抽头GLM可以有自己的配置或共享与CCLM相同的设计。例如,使用简化的min-max方法推导参数(代替LMS),并在推导GLM模型后结合斜率调整。在这种情况下,用于旋转斜率的中心点(亮度值yr)成为参考亮度样点“梯度”的平均值。另一个例子是,当针对该CU开启GLM时,CCLM斜率调整被推断为关闭,并且不需要发送与斜率调整相关的语法信号。
本节以典型案例参考示例(顶部1行,左侧1列)为例。注意如图24所示,扩展重建区域也可以使用具有相同精神的简化,并且可以使用指示特定区域的语法(如MDLM、MRL)。
请注意,以下几个方面可以结合起来,共同应用。例如,结合参考样点下采样和除法表来执行除法过程。
当应用分类(MMLM/ELM)时,每个组可以应用相同或不同的简化操作。例如,在应用右移之前将每组的样点分别填充到目标样点数,然后应用相同的推导过程,相同的除法表。
5.4.1定点实现
单抽头情况下可以重用CCLM设计,通过右移实现除以n,通过LUT实现除以A2。整数化参数,包括第1.2节中的nα,ntable和第1.3节中的中间参数,可以与CCLM相同,也可以具有不同的值,以获得更高的精度。整数化参数可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处预定义或用信号发送/切换,可以根据序列比特深度进行调节。例如,ntable=比特深度bitdepth+4。
5.4.2 MDLM下采样
当GLM与MDLM组合时,用于参数推导的现有总样点可能不是2的幂值,需要填充到2的幂值,以右移运算代替除法。例如,对于8x4色度CU,MDLM需要W+H=12个样点,MDLM_T但只有8个样点可用(重建),填充等量下采样4个样点(0,2,4,6)。
int targetSampNum=1<<(floorLog2(existsampnum-1)+1);
if(targetSampNum!=existSampNum)//如果existSampNum不是2的幂值
{
xPadMdlmTemplateSample
}
int step=(int)(existSampNum/sampNumToBeAdd);
对于(int i=0;i<sampNumToBeAdd;i++)
{
pTempSrc【i】=pSrc【i*step】;
pTempCur【i】=pCur【i*step】;
}
也可以应用其他填充方法,例如,但不限于,对最后一个相邻样点(最右边/最下面)的重复/镜像填充。
GLM的填充方法可以与CCLM的填充方法相同或不同。
注:在ECM版本中,8x4色度CU MDLM_T/MDLM_L分别需要2T/2L=16/8个样点,在这种情况下,可以应用相同的填充方法来满足目标2的幂的样点数。
5.4.3除法LUT
在AVC/HEVC/AV1/VVC/AVS等已知标准开发中,为CCLM/LIC(Local IlluminationCompensation,局部照明补偿)提出的除法LUT可用于GLM除法。例如,在比特深度=10的情况下重用JCTVC-I0166中的LUT(第1.3.3节中的表1-5)。除法LUT可以不同于CCLM。例如,CCLM使用在第1.1节中的带DivTable的最小-最大,但GLM使用在第1.3.3节的32个条目的LMS除法LUT。
当GLM与MMLM组合时,meanL值可能不总是正的(例如,使用滤波后的值/梯度值来分类组),因此需要提取sgn(meanL),并使用abs(meanL)来查找除法LUT。注意用于MMLM分类和参数推导的除法LUT可以不同。例如,使用较低精度的LUT(如最小-最大中的LUT)进行均值分类,使用较高精度的LUT(如LMS)进行参数推导。
5.4.4尺寸限制和延迟约束
与CCLM设计类似,一些尺寸限制可以应用于ELM/FLM/GLM。例如,如第1.1节所述,对双树中亮度-色度延迟的约束相同。
尺寸限制可以根据CU面积/宽度/高度/深度。禁用阈值可以预定义或在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处被用信号发送。例如,预定义禁用阈值:色度CU面积<128。
5.4.5线缓冲区缩减
类似于CCLM设计,如果当前色度CU的同位亮度区域包含一个CTU内的第一行,则顶部模板样点生成可以被限制为1行,以减少CTU行线缓冲区存储。注意,当上方参考线在CTU边界处时,仅使用一条亮度线(帧内预测中的通用线缓冲区)来制作下采样亮度样点。
例如,在图24中,如果当前色度CU的同位亮度区域包含一个CTU内的第一行,则顶部模板可以被限制为仅使用1行(而不是2行)用于参数推导(其他CU仍然可以使用2行)。当在解码器硬件上逐行处理CTU时,这节省了亮度采样线缓冲存储。可以使用几种方法来实现线缓冲区的减少。注意有限的“1”行的示例可以通过类似的操作扩展到N行。2抽头或多抽头也可以应用这样的操作。当多抽头时,可能还需要对色度样点应用这样的操作。
例如,在图25中,示出了1-抽头[1,0,-1;1,0,-1]:
1.缩小形状:可以缩小到【0,0,0;1,0,-1】,仅使用以下行系数。
2.填充:可从下面的行亮度样点填充有限的上面的行亮度样点(重复、镜像、0、meanL、meanC…等)。
5.4.6色度帧内预测模式的融合
类似于1.6节中的融合设计,由于GLM可以作为一种特殊的CCLM模式,融合设计可以重用或有自己的方式。可以应用多个权重(例如,权重数量>=2)来生成最终预测值。例如,
pred=(w0*pred0+w1*pred1+(1<<(shift-1)))>>shift
pred0是非LM预测因子,与pred1GLM预测因子融合。
pred0是CCLM之一(包括所有MDLM/MMLM)的预测因子,与pred1GLM预测因子融合。
pred0是GLM的预测因子,与pred1GLM预测因子融合。
根据相邻块是否用CCLM/GLM/其他编码模式编码,块尺寸/宽度/高度,不同的I/P/B条带可以具有不同的权重w0和w1设计。
例如,由相邻色度块的帧内预测模式确定,并且shift被设置为等于2。具体地,当上面和左边的相邻块都用LM模式编码时,{w0,w1}={1,3};当上面和左边的相邻块都用非LM模式编码时{w0,w1}={3,1};否则,{w0,w1}={2,2}。对于非I条带条带,w0和w1都被设置为等于2。
对于语法设计,如果选择了非LM模式,则用信号发送一个标志信号来指示是否应用了融合。
5.5扩展:单抽头线性模型
单抽头GLM具有良好的增益复杂度权衡,因为它可以重用现有的CCLM模块,而无需引入额外的推导。这种单抽头设计可以扩展(推广)到:
1.对于要预测的色度样点,通过组合同位的和相邻的亮度样点来产生单个对应的亮度样点l;
2.其中所述组合可以是
(1)线性滤波器,例如高通梯度滤波器(GLM)、低通平滑滤波器(CCLM)
(2)n次幂的非线性滤波器,例如Ln,n可以是正的、负的或+-小数,例如
+1/2,平方根,可以舍入并重新缩放到比特深度动态范围。
例如,+3,立方,可以舍入并重新缩放到比特比特深度动态范围。
3.可以重复使用2.的组合。例如,对重建的亮度样点应用[1,2,1;1,2,1]/8
FIR平滑,以及1/2的非线性幂。
4.非线性滤波器可以实现为LUT,例如,对于比特深度=10,n的幂,n=1/2,LUT[i]=(int)(sqrt(i)+0.5)<<5,i=0~1023,其中5是针对比特深度=10的动态范围的缩放。
当线性滤波器不能有效地处理亮度-色度关系时,非线性滤波器提供了选项。是否使用非线性项可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处预定义或用信号发送/切换。
在上述情况下,GLM可以指广义线性模型(线性或非线性地生成单个亮度样点,并馈入CCLM线性模型),线性/非线性生成称为通用模式。
可以组合不同的梯度/通用模式。形成另一种模式的一些例子:
1.将1个梯度模式与CCLM下采样值相结合。
2.将1个梯度模式与非线性L2值相结合。
3.将一个梯度模式与另一个梯度模式组合,可以具有不同或相同的方向。
4.组合可以是正、负或线性加权。
5.6GLM在下采样域中的应用
如5.2所述,预操作可以重复应用,GLM可以应用于预线性加权/预操作样点。例如,作为CCLM,使用低通平滑FIR滤波器[1,2,1;1,2,1]/8(CCLM下采样平滑滤波器)对模板应用一个模板滤波以去除异常值,以生成下采样亮度样点(1:1对应色度样点)。然后,将1-tapGLM应用于平滑的下采样亮度样点上来导出MLR模型。
一些应用于下采样亮度样点的梯度模式(3x3索贝尔/普鲁伊特…等等)如下。注意,与5.5中一样,基于梯度的模式可以与下采样域中的其他梯度模式/一般模式相结合。
1.将1个梯度模式与一个基于DC/低通的模式相结合,
例如,[0,0,0;0,1,0;0,0,0],[1,2,1;2,4,1;1,2,1]
2.将1个梯度模式与非线性值L2相结合。
3.将1个梯度模式与另一个梯度模式相结合,可以具有不同或相同的方向。
4.组合可以是加、减或线性加权。
图26示出了根据本公开的示例性实施例的梯度模式与其它模式结合的示例的示意图。如图26所示,示出16种梯度模式与其它模式结合的示例。
应用于下采样域的GLM可以适应CCCM框架,但是可能会牺牲高频精度,因为在应用GLM之前应用了低通平滑。
5.7GLM用作CCCM的输入
如1.9所示,CCCM在卷积之前应用CCLM亮度下采样(“与CCLM一样,当使用色度子采样时,重建的亮度样点被下采样以匹配较低分辨率的色度网格。”)。由于1抽头GLM也可以被视为改变CCLM下采样滤波器系数(例如,从[1,2,1;1,2,1]/8到[1,2,1,-1,-2,-1],低通到高通),GLM可以用作CCCM的输入。具体地,GLM用基于梯度的系数(例如,[1,2,1,-1,-2,-1])代替亮度下采样滤波器([1,2,1;1,2,1]/8)。在这种情况下,CCCM操作变成“梯度的线性/非线性组合”。
predChromaVal=c0C+c1N+c2S+c3E+c4W+c5P+c6B
其中C、N、S、E、W、P是当前或相邻样点的梯度(与原始下采样值相比)。在进入CCCM卷积之前,可以以相同的方式应用本公开中描述的相关GLM方法,例如,分类、单独的Cb/Cr控制、语法、模式组合、PU尺寸限制等。
基于梯度的系数替换可以应用于特定的CCCM抽头。此外,不仅可以使用高通系数替换,还可以使用低通/带通/全通系数替换。替换可与第4.2节中的FLM/CCCM形状切换结合使用(导致不同数量的抽头)。例如,图25中的梯度模式可用于替换。
(1)预定义用于CCCM/FLM下采样的一个或多个系数候选;
(2)确定此CU的CCCM/FLM滤波器形状和滤波器抽头数;
(3)对不同的滤波器抽头应用不同的CCLM下采样系数,
其中,所述系数可以是高通滤波器(GLM)或低通/带通/全通滤波器;
(4)为CCCM输入样点生成下采样亮度样点(使用所应用的系数);
(5)将生成的下采样亮度样点送入CCCM过程。
例如,
(1)候选包括:[1,2,1;1,2,1]/8,[1,0,-1;1,0,-1]
(2)predChromaVal=c0C+c1N+c2S+c3E+c4W+c5P+c6B,使用典型CCCM十字形,7抽头
(3)N,S,W,E:[1,2,1;1,2,1]/8,保留原始CCLM下采样滤波器,
C,P:[1,0,-1;1,0,-1],替换为水平梯度滤波器,P在物理上表示梯度^2。
又例如,
(1)候选包括:
[1,2,1;1,2,1]/8,[1,0,-1;1,0,-1],[1,2,1;-1,-2,-1],[2,1,-1;1,-1,-2],[-1,1,2;-2,-1,1]
(2)predChromaVal=c0C0+c1C1+c2C2+c3C3+c4C4+c5P+c6B
(3)C0:[1,2,1;1,2,1]/8,保留原始CCLM下采样滤波器
C1:[1,0,-1;1,0,-1]
C2:[1,2,1;-1,-2,-1]
C3:[2,1,-1;1,-1,-2]
C4:[-1,1,2;-2,-1,1]
C5:[1,2,1;1,2,1]/8,保留原始CCLM下采样滤波器
C0 to C5和P具有相同的下采样亮度位置(==在典型的CCCM十字形中的C)。C1 toC4由不同方向的基于Sobel梯度滤波器(在图25中)生成。
又例如,
(1)候选包括:
[1,2,1;1,2,1]/8,[1,0,-1;1,0,-1],[1,2,1;-1,-2,-1]
[0,1,1;0,1,1],[1,1,0;1,1,0]
(1)predChromaVal=c0C0+c1C1+c2C2+c3C3+c4C4+c5P+c6B
(2)C0:[1,2,1;1,2,1]/8,保留原始CCLM下采样滤波器
C1:[1,0,-1;1,0,-1]
C2:[1,2,1;-1,-2,-1]
C3:[0,1,1;0,1,1]
C4:[1,1,0;1,1,0]
C5:[1,2,1;1,2,1]/8,保留原始CCLM下采样滤波器
C0 to C5和P具有相同的下采样亮度位置(==在典型的CCCM十字形中的C)。C1 toC2由不同方向的基于Sobel梯度滤波器(如图25)生成。
C3 to C4由低通滤波器产生。
可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处预定义或用信号发送/切换哪些CCCM/FLM抽头来应用系数替换。
对于每个CCCM/FLM抽头,哪些系数候选用于CCCM/FLM下采样可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处预定义或用信号发送/切换。
例如,
(1)候选包括:[1,2,1;1,2,1]/8,[1,0,-1;1,0,-1],[1,2,1;-1,
-2,-1],[2,1,-1;1,-1,-2],[-1,1,2;-2,-1,1]
(2)predChromaVal=c0C+c1N+c2S+c3E+c4W+c5P+c6B,使用典型CCCM十字形,7抽头
(3)C:在5个候选滤波器中切换下采样滤波器
N,S,W,E:[1,2,1;1,2,1]/8,保留原始CCLM下采样滤波器
P:在5个候选滤波器中切换下采样滤波器
又例如,
(1)候选包括:[1,2,1;1,2,1]/8,[1,0,-1;1,0,-1],[1,2,1;-1,
-2,-1],[0,1,1;0,1,1],[1,1,0;1,1,0]
(2)predChromaVal=c0C+c1W+c2E+c3P+c4B,水平减号形状,5抽头
(3)C:在5个候选之间切换
W,E:在3个候选之间切换:[1,2,1;1,2,1]/8,[0,1,1;0,1,1],[1,1,0;1,1,0]
P:[1,2,1;1,2,1]/8,保留原始CCLM下采样滤波器
5.8语法
FLC:固定长度代码
TU:截断一元码
EGk:k阶指数golomb码,其中k可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/区域/CTU/CU/Subblcok/Sample级处固定或用信号发送/切换。
SVLC:有符号EG0
UVLC:无符号EG0
表5-1 GLM语法的一个例子。
注意每个语法元素的二值化都是可以改变的。
针对Cb/Cr分量的GLM开/关控制可以联合或单独进行。例如,在CU级,
1.1个标志用于指示针对此CU是否激活GLM
2.如果激活,1个标志用于指示是否针对Cb/Cr都激活
3.如果不是两个都激活,则1个标志用于表示是Cb还是Cr激活
4.当Cb和/或Cr激活时,分别用信号发送滤波器索引/梯度(常规)模式
5.所有标志都可以有自己的上下文模型或被旁路编码
是否用信号发送GLM开/关标志的信号取决于亮度/色度编码模式、CU尺寸。
例如,在ECM5色度帧内模式语法中,当满足下面所有条件或者满足下面条件中的至少一个条件时,可将GLM推断为关闭:
1.MMLM/MMLM_L/MMLM_T
2.CU区域<A,其中A可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/区域
/CTU/CU/子块/样点级处预定义或用信号发送/切换。
3.如果与CCCM结合,则在CCCM开启时推断为关闭
请注意,当GLM与MMLM结合时,不同的模型可以共享相同的梯度/常规模式或有自己的梯度/常规模式。
表5-2帧内色度预测模式
当GLM与CCCM/FLM结合时,如果当前CU被启用为CCCM/FLM,则可以将CU级GLM启用标志推断为off。
hasGlmFlag&=!pu.cccmFlag
其中,hasGlmFlag表示GLM启用标志,pu.cccmFlag表示CCCM启用标志。
6提议的方法4
注意,本公开中的附图可以与本公开中提到的所有示例相结合。
注意,所公开的方法可以独立地或联合地应用。
6.1无下采样过程的CCCM
CCCM要求在计算模型参数和应用CCCM模型之前处理下采样的亮度参考值,这增加了解码器的处理周期。在本节中,提出了没有下采样过程的CCCM,包括利用非下采样亮度参考值和/或非下采样亮度参考的不同选择(例如,在4:2:0采样格式下,4个亮度值对应1个色度值,因此,使用非下采样亮度参考需要选择4个亮度值)。如6.2中所述,可以为此目的使用一个或多个滤波器形状,以选择不同的亮度位置及其相乘的系数。
请注意,本节中的方法/示例可以从第3节、第4节、第5节中提到的方法中组合/重用,包括但不限于分类、滤波器形状、矩阵推导(特殊处理)、应用区域、语法。此外,本节中列出的方法/示例也可以应用于第3节、第4节、第5节(更多抽头),以在一定的复杂性权衡下获得更好的性能。
在本公开中,参考样点/训练模板/重建的邻近区域通常是指用于导出MLR模型参数的亮度样点,该MLR模型参数然后被应用于一个CU中的内部亮度样点,以预测CU中的色度样点。
6.2滤波器形状
一个或多个形状/数量的滤波器抽头可用于CCCM预测,如图18、图19、图20所示。一组或多组滤波器抽头可用于FLM预测,示例如图21所示。所选亮度参考值是非下采样的。一个或多个预定义形状/数目的滤波器抽头可用于TB/CB/条带条带/图片/序列级的基于先前解码信息的CCCM预测。
尽管多抽头滤波器可以很好地拟合训练数据(即,顶部/左侧相邻的重建亮度/色度样点),但在训练数据不能捕获测试数据的全部特征的一些情况下,它可能导致过拟合,并且可能不能很好地预测测试数据(即,要预测的色度块样点)。此外,不同的滤波器形状可以很好地适应不同的视频块内容,导致更准确的预测。为了解决这一问题,可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblock/Sample级处预定义或用信号发送/切换滤波器形状/滤波器抽头数。一组滤波器形状候选可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblock/Sample级处预定义或用信号发送/切换。不同的分量(U/V)可能具有不同的滤波器切换控制。例如,预定义一组滤波器形状候选(idx=0~5),滤波器形状(1,2)表示2抽头亮度滤波器并且使用位置1和2的亮度样点,滤波器形状(1,2,4)表示3抽头亮度滤波器并且使用位置1 2和4的亮度样点,如图16所示…等等。U/V分量的滤波器形状选择可以在PH或CU/CTU级处切换。注N-tap可以表示有偏移β或没有偏移β的N-tap,如第4.1节所述。
表6-1滤波器形状
不同的色度类型/颜色格式可以有不同的预定义滤波器形状/抽头。例如,如图17所示,针对420类型-0,使用预定义的滤波器形状(1,2,4,5),针对420类型-2,使用预定义的滤波器形状(0,1,2,4,7),针对422类型,使用预定义的滤波器形状(1,4)、针对444类型,使用预定义的滤波器形状(0,1,2,3,4,5)。
用于导出MLR模型的不可用亮度/色度样点可以从可用的重建样点中填充。例如,如果使用如图17所示的6抽头(0,1,2,3,4,5)滤波器,对于位于左图像边界的CU,包括(0,3)在内的左列不可用(在图像边界之外),因此(0,3)是从(1,4)开始的重复填充,以应用6抽头滤波器。请注意在训练数据(顶部/左侧相邻的重建亮度/色度样点)和测试数据(CU中的亮度/色度样点)中应用的填充过程。
根据本公开的一个或多个实施例,用于导出MLR模型的不可用亮度/色度样点可以被跳过并且不被使用。则对于不可用的亮度/色度样点不需要填充过程。
7提议的方法5
注意,本公开中的附图可以与本公开中提到的所有示例相结合。
注意,所公开的方法可以独立地或联合地应用。
7.1具有LDL分解CCLM/MMLM
CCCM需要进行LDL分解来计算CCCM模型的模型参数,避免了使用平方根运算,只需要整数运算。在本节中,提出了具有LDL分解的CCLM/MMLM。LDL分解也可用于ELM/FLM/GLM,如3、4、5中所述。
请注意,本节中的方法/示例可以从第3节、第4节、第5节中提到的方法中组合/重用,包括但不限于分类、滤波器形状、矩阵推导(特殊处理)、应用区域、语法。此外,本节中列出的方法/示例也可以应用于第3节、第4节、第5节(更多抽头),以在一定的复杂性权衡下获得更好的性能。
在本公开中,参考样点/训练模板/重建的邻近区域通常是指用于导出MLR模型参数的亮度样点,该MLR模型参数然后被应用于一个CU中的内部亮度样点,以预测CU中的色度样点。
7.2扩展范围的CCLM/MMLM
一个或多个参考样点可用于CCLM/MMLM预测,即,如图14所示,参考区域可与CCCM的参考区域相同。基于TB/CB/条带条带/图片/序列级处的先前解码信息,不同的参考区域可用于CCLM/MMLM预测。
尽管具有多个参考区域的训练数据可以很好地拟合模型参数的计算,但在某些情况下,训练数据不能捕获测试数据的全部特征,这可能导致过度拟合,并且可能不能很好地预测测试数据(即,要预测的色度块样点)。此外,不同的参考区域可以很好地适应不同的视频块内容,导致更准确的预测。为了解决这一问题,可以在
SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblock/Sample级处预定义或用信号发送/切换参考区域的参考形状/数量。一组参考区域候选可以在
SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblock/Sample级处预定义或用信号发送/切换。不同的分量(U/V)可能具有不同的参考区域切换控制。例如,预定义一组参考区域候选(idx=0~4),如下表7-1所示。U/V分量的参考区域选择可以在PH或CU/CTU级中切换。不同的色度类型/颜色格式可以具有不同的预定义参考区域。
/>
用于导出MLR模型的不可用亮度/色度样点可以从可用的重建样点中填充。请注意在训练数据(顶部/左侧相邻的重建亮度/色度样点)和测试数据(CU中的亮度/色度样点)中应用的填充过程。
根据本公开的一个或多个实施例,用于导出MLR模型的不可用亮度/色度样点可以被跳过并且不被使用。则对于不可用的亮度/色度样点不需要填充过程。
8提议的方法6
注意,本公开中的附图可以与本公开中提到的所有示例相结合。
注意,所公开的方法可以独立地或联合地应用。
8.1具有最小样点限制的FLM/GLM/ELM/CCCM
FLM需要处理下采样的亮度参考值并计算模型参数,这增加了解码器的处理周期,尤其是对于小块。在本节中,提出了具有最小样点限制的FLM,例如,FLM仅用于大于预定义数量的样点,例如64、128。可以为此目的使用一个或多个不同的限制,例如,FLM仅在单个模型中用于大于预定义数量(例如256)的样点,而FLM仅在多个模型中用于大于预定义数量(例如128)的样点。
根据本公开的一个或多个实施例,单个模型的预定义最小样点的数量可以小于或等于多个模型的预定义最小样点的数量。例如,FLM/GLM/ELM/CCCM仅在单个模型中用于大于或等于预定义数量的样点,如128,FLM/GLM/ELM/CCCM仅在多个模型中用于大于或等于预定义数量的样点,如256。
根据本公开的一个或多个实施例,用于FLM/GLM/ELM的预定义最小样点的数目可以大于或等于用于CCCM的预定义最小样点的数目。例如,CCCM仅在单个模型中用于大于或等于预定义数的样点,如0,而CCCM仅在多个模型中用于大于或等于预定义数的样点,如128。FLM仅在单个模型中用于大于或等于预定义数的样点,如128,FLM仅在多个模型中用于大于或等于预定义数的样点,如256。
请注意,本节中的方法/示例可以从第3节、第4节、第5节中提到的方法组合/重用,包括但不限于分类、滤波器形状、矩阵推导(特殊处理)、应用区域、语法。此外,本节中列出的方法/示例也可以应用于第3节、第4节、第5节(更多抽头),以在一定的复杂性权衡下获得更好的性能。
9提议的方法7
注意,本公开中的附图可以与本公开中提到的所有示例相结合。
注意,所公开的方法可以独立地或联合地应用。
9.1FLM/GLM/ELM/CCCM/CCLM组合多模式
根据本公开的一个或多个实施例,可以进一步组合FLM/GLM/ELM/CCCM/CCLM的多模式的两个模型以带来额外的编码效率。例如,首先分别导出CCCM(ci)和GLM(a,b)的参数,然后通过线性回归导出CCCM和GLM之间的权重(wi),最后用加权的CCCM和GLM从重建的亮度样点中预测色度样点。
GLMpredChromaVal=a*lumaVal+b
CCCMpredChromaVal=c0*C+c1*N+c2*S+c3*E+c4*W+c5*P+c6*B
FinalpredChromaVal=w0*GLMpredChromaVal+w1*CCCMpredChromaVal
根据本公开的一个或多个实施例,存在以
SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处用信号发送/切换的标志,以指示是否使用组合模式。
根据本公开的一个或多个实施例,可以在解码器处导出模式标志以节省比特开销,而不是显式地用信号发送所选择的模式标志。下面具体描述模式推导过程。
(1)确定当前CU的M个模型候选,模型候选可包括是单个模型和/或多个模型的组合;
(2)将可用的L形模板区域划分为N个区域,表示为R0,R1,…RN-1(将训练数据分成N组,N折训练);
(3)将M个组合候选独立应用于部分可用模板区域(可以是R0,R1,…RN-1中的单个或多个区域);
(4)导出M个滤波器系数集(根据M个滤波器形状),表示为F0,F1,…FM-1
(5)将导出的F0,F1,…FM-1滤波器系数集应用于可用模板区域的其他部分,即,不同于(3)中的可用模板部分;
(6)按SAD、SSD或SATD累加误差,表示为E0,E1,…EM-1
(7)排序并选取K个最小误差,表示为E’0,E’1,…E’K-1,对应于K个组合滤波器/K个滤波器系数集;
(8)选择K中的1个模型候选,以应用于当前CU以进行色度预测。
注意,在编码器侧,需要用信号发送指示选择K个模型候选中的哪一个模型候选的语法信息(例如,标志)。在K为1的情况下,则可不需要发信号,这是因为误差最小的模型候选是应用的模型。
例如,
(1)为当前CU预定义3个模型候选,例如CCCM、GLM以及CCCM和GLM的组合;
(2)将可用的L形模板区域(CCCM 6个色度行/列,注意,在CCCM设计中,每个色度样点涉及用于下采样的6个亮度样点)划分为2个区域,表示为R0,R1,例如,偶数行或列:R0,奇数行或列:R1
例如,图22的(a)示出了在模板区域中,偶数行区域R0用于训练/导出3个滤波器系数集,奇数行区域R1用于验证/比较和排序3个滤波器系数集的代价的示例。
(3)将3个模型候选独立应用于部分可用模板区域(单个R0)
(4)推导出3个滤波器系数集(根据3个滤波器形状),表示为F0,F1,F2
(5)将导出的F0,F1,F2滤波器系数集应用于可用模板区域(R1)的其他部分,不同于(3)中的可用模板部分;
(6)通过SAD、SSD或SATD累加误差,表示为E0,E1,E2
(7)排序并选取1个最小误差,表示为E’0,对应于1个模型候选;
(8)K为1,则不需要发信号,误差最小的模型候选是应用的模型。
请注意,本节中的方法/示例可以从所有章节中提到的方法中组合/重用,包括但不限于分类、滤波器形状、矩阵推导(特殊处理)、应用区域、语法。此外,本节中列出的方法/示例也可以应用于所有章节,以在一定的复杂性权衡下获得更好的性能。
图27是示出根据本公开的示例性实施例的视频解码方法的流程图。
参照图27,在步骤S101,可接收包括多个块的比特流,其中,每个块包括亮度样点块和色度样点块。这里,在一个块中,亮度样点块中的亮度样点的数量和与其对应的色度样点块中的色度样点的数量可相同或不同。例如,当使用yuv 4:2:0格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×N色度样点;当使用yuv 4:2:2格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×2N色度样点;当使用yuv 4:4:4格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个2N×2N色度样点。
在步骤S102,获取与当前块中的当前色度样点对应的重建亮度样点。
根据本公开的示例性实施例,重建亮度样点来自所述当前块中与所述当前色度样点对应的亮度样点块和/或所述当前色度样点的同位亮度样点块。重建亮度样点可以是经过下采样的重建亮度样点,也可以是未经过下采样的重建亮度样点。例如,当使用yuv 4:2:0和yuv 4:2:2格式时,需要对重建亮度样点进行下采样以保持与色度样点的分辨率一致。当使用yuv 4:4:4格式时,由于亮度样点和色度样点的分辨率本身是一致的,因此无需对重建亮度样点进行下采样。
在步骤S103,可基于重建亮度样点与重建亮度样点的至少一个相邻亮度样点之间的相关性,对重建亮度样点进行分类,其中,重建亮度样点被分类到多个组中的一个组。这里,可利用重建亮度样点边缘/AC信息对重建亮度样点进行分类到不同组,使得不同组的重建亮度样点应用于不同的跨分量预测模型,从而提高视频图像的编解码质量。这里,跨分量预测模型可以是上面提及的任何可应用此种分类方法的跨分量预测模型,例如,CCLM模型、MMLM模型、FLM模型、GLM模型、CCCM模型等。
根据本公开的示例性实施例,可将重建亮度样点分别与预定数量的相邻亮度样点(例如,4个无对角线的相邻亮度样点)进行比较;基于比较结果获得所述重建亮度样点与所述相邻亮度样点的相关值(例如,根据重建亮度样点与相邻亮度样点的大小关系计算分数);基于相关值对重建亮度样点进行分类,其中,根据至少一个预设相关值阈值将相关值划分为多个组(例如,可预定分数阈值为0,将重建亮度样点划分为三个组,即,分数>0、分数=0、分数小于0)。
根据本公开的示例性实施例,可计算重建亮度样点在预定方向上的边缘强度;基于边缘强度对所述重建亮度样点进行分类,其中,根据至少一个预设边缘强度阈值将边缘强度划分为多个组。例如,可通过当前重建亮度样点减去预定方向上的相邻亮度样点来计算边缘强度。
根据本公开的示例性实施例,预定方向根据当前预测模式被确定。例如,但不限于,当当前预测模式为MMLM_L时,预定方向可设置为垂直方向,当当前预测模式为MMLM_A时,预定方向可设置为水平方向。
根据本公开的示例性实施例,可确定边缘检测滤波器,其中,边缘检测滤波器包括滤波器形状和滤波器抽头数;基于边缘检测滤波器来计算重建亮度样点在所述预定方向上的边缘强度。例如,可通过确定的边缘检测滤波器来计算重建亮度样点在所述预定方向上的边缘强度,并根据预定数量个阈值对边缘强度进行分类,从而对对应的重建亮度样点进行分类。例如,可使用映射表来表示边缘强度量化。
根据本公开的示例性实施例,可在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region(区域)/CTU/CU/Subblcok(子块)/Sample(样点)级中预定义或用信号发送/切换滤波器形状、滤波器抽头和映射表中的至少一个。
根据本公开的示例性实施例,还可根据第4.2.1或5.2.1章节的隐式滤波器形状推导的方法来确定边缘检测滤波器。
在步骤S104,可对重建亮度样点应用与分类到的组对应的跨分量预测模型来预测当前色度样点,其中,对不同组的重建亮度样点应用不同的跨分量预测模型。
根据本公开的示例性实施例,可基于当前块的相邻重建亮度样点与该相邻重建亮度样点的至少一个相邻亮度样点之间的相关性,对所述相邻重建亮度样点进行分类;其中,当前块中的重建亮度样点与相邻重建亮度样点的分类规则相同,例如,都可使用边缘强度来对当前块中的重建亮度样点与相邻重建亮度样点进行分类。可利用分类到同一组的相邻重建亮度样点以及对应的相邻重建色度样点来推导多元线性回归模型,从而得到多个线性回归模型;对当前块中的重建亮度样点应用与当前块中的重建亮度样点同一组的相邻重建亮度样点推导出的多元线性回归模型,来预测当前色度样点。
根据本公开的示例性实施例,可在当前块的尺寸小于预设最小尺寸限制的情况下,针对所述当前块禁用所述跨分量预测模型。例如,跨分量预测模型可包括上面提及的任何跨分量预测模型,例如,可包括,但不限于,基于滤波器的线性模型(FLM)、梯度线性模型(GLM)、边缘分类线性模型(ELM)和卷积跨分量模型(CCCM)之一。
根据本公开的示例性实施例,针对单模型的预设最小尺寸限制小于或等于针对多模型的预设最小尺寸限制。例如,FLM在单个模型中仅用于大于预设最小尺寸(例如,128)的样点块,而FLM在多个模型中仅用于大于预设最小尺寸(例如,256)的样点块。
根据本公开的示例性实施例,针对基于滤波器的线性预测模型、梯度线性模型和边缘分类线性模型的预设最小尺寸限制大于或等于针对卷积跨分量模型的预设最小尺寸限制。例如,CCCM在单个模型中仅用于大于或等于预设最小尺寸(例如,0)的样点块,而CCCM在多个模型中仅用于大于或等于预设最小尺寸(例如,128)的样点块。FLM在单个模型中仅用于大于或等于预设最小尺寸(例如,128)的样点块,FLM在多个模型中仅用于大于或等于预设最小尺寸(例如,128)的样点块。
根据本公开的示例性实施例,跨分量预测模型可包括至少一个跨分量预测模型,其中,至少一个跨分量预测模型是多个预设跨分量预测模型中的至少一个跨分量预测模型。例如,多个预设跨分量预测模型可包括上面提及的任何跨分量预测模型,例如,可包括,但不限于,基于滤波器的线性模型(FLM)、梯度线性模型(GLM)、边缘分类线性模型(ELM)和卷积跨分量模型(CCCM)中的多个。在此情况下,在至少一个跨分量预测模型包括多个跨分量预测模型的组合的情况下,分别将每个跨分量预测模型应用于当前块,得到多个色度预测值;对多个色度预测值进行加权处理,得到当前块的色度预测值。例如,但不限于,当确定用于当前块的跨分量预测模型为CCCM和GLM的组合时,可首先分别导出CCCM(ci)和GLM(a,b)的参数,然后通过线性回归导出CCCM和GLM之间的权重(wi),最后用加权的CCCM和GLM从重建亮度样点中预测色度样点。如下公式所示:
GLMpredChromaVal=a*lumaVal+b
CCCMpredChromaVal=c0*C+c1*N+c2*S+c3*E+c4*W+c5*P+c6*B
FinalpredChromaVal=w0*GLMpredChromaVal+w1*CCCMpredChromaVal
其中,GLMpredChromaVal表示应用GLM的色度预测值,CCCMpredChromaVal表示应用CCCM的色度预测值,FinalpredChromaVal表示最终的色度预测值,w0和w1表示权重值。
根据本公开的示例性实施例,可通过显示方式确定应用于当前块的至少一个跨分量预测模型。也就是说,编码器侧可在比特流中发送指示应用于当前块的至少一个跨分量预测模型的标志或者指示指示针对当前块是否使用多个跨分量预测模型的组合的标志。可通过解析所述比特流中的标志来确定应用于当前块的跨分量预测模型。
根据本公开的示例性实施例,可通过隐式方式来确定应用于当前块的至少一个跨分量预测模型。也就是说,编码器侧可不发送相关标志,在解码器侧来推导应用于当前块的跨分量预测模型。例如,可确定针对当前块的多个跨分量预测模型候选和与所述当前块相邻的模板区域,其中,多个跨分量预测模型候选包括单个跨分量预测模型和/或多个跨分量预测模型的组合;将每个跨分量预测模型候选分别应用于模板区域中的第一区域中的样点,导出每个跨分量预测模型候选的滤波器系数;将每个跨分量预测模型候选的滤波器系数应用于模板区域中的第二区域中的样点,确定每个跨分量预测模型候选的误差值;基于每个跨分量预测模型候选的误差值,从多个跨分量预测模型候选中选择一个跨分量预测模型候选,作为应用于当前块的跨分量预测模型。
根据本公开的示例性实施例,从所述多个跨分量预测模型候选中选择误差值最小的一个跨分量预测模型候选;或者从多个跨分量预测模型候选中确定误差值最小的预定数量个跨分量预测模型候选,并基于从比特流中解析的指示所选择的跨分量预测模型候选的标志,来从预定数量个跨分量预测模型候选中选择一个跨分量预测模型候选,其中,预定数量大于1。
图28是示出根据本公开的另一示例性实施例的视频解码方法的流程图。
参照图28,在步骤S201,可接收包括多个块的比特流,其中,每个块包括亮度样点块和色度样点块。这里,在一个块中,亮度样点块中的亮度样点的数量和与其对应的色度样点块中的色度样点的数量可相同或不同。例如,当使用yuv 4:2:0格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×N色度样点;当使用yuv 4:2:2格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×2N色度样点;当使用yuv 4:4:4格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个2N×2N色度样点。
在步骤S202,可获取与当前块中的当前色度样点对应的多个重建亮度样点。根据本公开的示例性实施例,多个重建亮度样点包括与所述当前色度样点的相邻亮度样点和/或同位亮度样点。重建亮度样点可以是经过下采样的重建亮度样点,也可以是未经过下采样的重建亮度样点。
在步骤S203,可确定与当前块相邻的参考亮度样点区域和参考色度样点区域。
根据本公开的示例性实施例,可从与当前块相邻的左侧样点区域和/或上方样点区域中确定参考亮度样点区域和参考色度样点区域。例如,参考亮度样点区域和参考色度样点区域可以是图24显示的所有参考区域。
根据本公开的示例性实施例,可根据当前块的预测模式,从与当前块相邻的左侧样点区域和/或上方样点区域中确定参考亮度样点区域和参考色度样点区域。例如,当应用FLM模式时,W’=W,H’=H,其中,W’和H’表示参考亮度样点区域和参考色度样点区域,W和H分别指示与当前块相邻的左侧样点区域和上方样点区域。当应用FLM_T模式时,W’=W+We;其中,We表示扩展的顶部亮度/色度样点。当应用FLM_L模式时,H’=H+He;其中,He表示扩展的左亮度/色度样点。
根据本公开的示例性实施例,可解析比特流中包括的指示参考亮度样点区域和参考色度样点区域的索引,例如,该索引可以是参考线索引,用于指示作为参考亮度样点和参考色度样点的线,与MRL类似;基于索引,与当前块相邻的左侧样点区域和/或上方样点区域中确定所述参考亮度样点区域和所述参考色度样点区域。
在步骤S204,基于参考亮度样点区域中的参考亮度样点和参考色度样点区域中的参考色度样点,通过伪逆矩阵来导出跨分量预测模型。
在步骤S204,对多个重建亮度样点应用跨分量预测模型来预测当前色度样点,其中,跨分量预测模型通过多元线性回归模型实现,并且多元线性回归模型中的滤波器系数分别与多个重建亮度样点相乘。
根据本公开的示例性实施例,可从参考亮度样点区域中的参考亮度样点和参考色度样点区域中的参考色度样点中确定多个样点对,其中,每个样点对包括一个参考色度样点和多个参考亮度样点;将多元线性回归模型应用于多个样点对,导出伪逆矩阵;基于伪逆矩阵,确定多元线性回归模型中的滤波器系数。
根据本公开的示例性实施例,可确定多元线性回归模型中的滤波器,其中,滤波器包括滤波器形状和滤波器抽头数;基于滤波器形状和滤波器抽头数,确定多个重建亮度样点,其中,滤波器形状与所个重建亮度样点的位置对应,滤波器抽头数与多个重建亮度样点的数量对应。
根据本公开的示例性实施例,根据所述当前块的色度类型和色度采样格式来确定滤波器,其中,针对不同色度类型和色度采样格式预设不同的滤波器。例如,但不限于,如图17所示,对于420类型-0,可选择预定义滤波器形状(1,2,4,5)。对于420类型-2,可选择预定义滤波器形状(0,1,2,4,7),对于422类型,可选择预定义滤波器形状(1,4)。对于444类型,可选择预定义滤波器形状(0,1,2,3,4,5)
根据本公开的示例性实施例,通过显式方式确定多元线性回归模型中的滤波器。也就是说,在编码侧可发送指示滤波器的标志,因此,在解码侧,可解析比特流中的指示滤波器的标志;并基于解析的标志来确定滤波器。
根据本公开的示例性实施例,通过隐式方式确定多元线性回归模型中的滤波器。此方法也可应用于CCCM模型。也就是说,在编码侧不发送指示滤波器的标志,因此,在解码侧,可推导多元线性回归模型中的滤波器。例如,可确定多个滤波器候选和与当前块相邻的模板区域;将每个滤波器候选分别应用于所述模板区域中的第一区域中的样点,导出每个滤波器候选的滤波器系数;将每个滤波器候选的滤波器系数应用于所述模板区域中的第二区域中的样点,确定每个滤波器候选的误差值;基于每个滤波器候选的误差值,从多个滤波器候选中选择一个滤波器候选,作为多元线性回归模型中的滤波器。
根据本公开的示例性实施例,从多个滤波器候选中选择误差值最小的一个滤波器候选;或者从多个滤波器候选中确定误差值最小的预定数量个滤波器候选,并基于从比特流中解析的指示所选择的滤波器候选的标志,来从预定数量个滤波器候选中选择一个滤波器候选,其中,预定数量大于1。
根据本公开的示例性实施例,多元线性回归模型中的滤波器包括非线性项和/或偏移项;在多元线性回归模型中的滤波器包括非线性项的情况下,非线性项基于多个重建亮度样点中的至少一个重建亮度样点被确定,并且滤波器系数分别与多个重建亮度样点和非线性项相乘。
根据本公开的示例性实施例,可在应用多元线性回归模型之前,可执行一些预操作,以降低重建亮度样点维度,效地减少滤波器抽头的数量,从而提高视频图像编解码效率。例如,可对多个重建亮度样点执行预处理,得到至少一个经过预处理的重建亮度样点,其中,经过预处理的重建亮度样点的数量小于多个重建亮度样点的数量;对至少一个经过预处理的重建亮度样点应用跨分量预测模型来预测与当前色度样点。
根据本公开的示例性实施例,确定梯度滤波器,其中,梯度滤波器包括梯度方向;将梯度滤波器应用于所述多个重建亮度样点,得到至少一个经过滤波的重建亮度样点。
根据本公开的示例性实施例,可确定多个梯度滤波器候选;将每个梯度滤波器候选分别应用于与当前块相邻的预定模板中的重建亮度样点,得到每个梯度滤波器候选的梯度值;基于每个梯度滤波器候选的梯度值建立梯度直方图;基于梯度直方图中的最大值对应的梯度方向确定梯度滤波器。
根据本公开的示例性实施例,可将上面提到的FLM或GLM可以与MMLM或ELM结合使用,来提高视频图像编解码质量。例如,可将用于导出多元线性回归模型的参考亮度/色度样点分类为不同组,针对不同组分别导出不同的多元线性回归模型,另外,将当前块内的亮度/色度样点分类为不同组,针对不同组的亮度样点应用不同的多元线性回归模型。
例如,但不限于,可将当前块的相邻重建亮度样点值与预定阈值进行比较,来对相邻重建亮度样点分类。例如,相邻重建亮度样点值可以是参考亮度样点区域中的参考亮度样点的值或下采样值,预定阈值可以是一个或多个阈值,例如,在预定阈值为一个阈值的情况下,可将相邻重建亮度样点分为两类,例如,可将大于或等于该阈值的相邻重建亮度样点分为一类,并将小于该阈值的相邻重建亮度样点分为另一类;在预定阈值为两个阈值的情况下,可将相邻重建亮度样点分为三类,以此类推。可利用分类到同一组的相邻重建亮度样点以及对应的相邻重建色度样点来推导多元线性回归模型,从而得到多个线性回归模型。根据当前块内的亮度样点值与所述预定阈值进行比较,来对当前块内的亮度样点分类。针对当前块内的分类到同一类的亮度样点应用属于该类的相邻重建亮度/色度样点推导出的多元线性回归模型,来预测对应的色度样点。
此外,上述分类的方法不限于使用当前块的相邻重建亮度样点值与预定阈值进行比较的方法,还可以将应用于相邻重建亮度样点的FLM或GLM的滤波值来对相邻重建亮度样点进行分类,或者可使用相邻重建亮度样点的边缘强度值来对相邻重建亮度样点进行分类。
图29是示出根据本公开的另一示例性实施例的视频解码方法的流程图。
参照图29,在步骤S301,可接收包括多个块的比特流,其中,每个块包括亮度样点块和色度样点块。这里,在一个块中,亮度样点块中的亮度样点的数量和与其对应的色度样点块中的色度样点的数量可相同或不同。例如,当使用yuv 4:2:0格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×N色度样点;当使用yuv 4:2:2格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×2N色度样点;当使用yuv 4:4:4格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个2N×2N色度样点。
在步骤S302,在当前块的尺寸小于预设最小尺寸限制的情况下,针对当前块禁用预定跨分量预测模型。
根据本公开的示例性实施例,预定跨分量预测模型可以是上面提及的任何跨分量预测模型,例如,可包括,但不限于,基于滤波器的线性模型(FLM)、梯度线性模型(GLM)、边缘分类线性模型(ELM)和卷积跨分量模型(CCCM)之一。
根据本公开的示例性实施例,针对单模型的预设最小尺寸限制小于或等于针对多模型的预设最小尺寸限制。例如,FLM在单个模型中仅用于大于预设最小尺寸(例如,128)的样点块,而FLM在多个模型中仅用于大于预设最小尺寸(例如,256)的样点块。
根据本公开的示例性实施例,针对基于滤波器的线性预测模型、梯度线性模型和边缘分类线性模型的预设最小尺寸限制大于或等于针对卷积跨分量模型的预设最小尺寸限制。例如,CCCM在单个模型中仅用于大于或等于预设最小尺寸(例如,0)的样点块,而CCCM在多个模型中仅用于大于或等于预设最小尺寸(例如,128)的样点块。FLM在单个模型中仅用于大于或等于预设最小尺寸(例如,128)的样点块,FLM在多个模型中仅用于大于或等于预设最小尺寸(例如,128)的样点块。
图30是示出根据本公开的另一示例性实施例的视频解码方法的流程图。
参照图30,在步骤S401,接收包括多个块的比特流,其中,每个块包括亮度样点块和色度样点块。这里,在一个块中,亮度样点块中的亮度样点的数量和与其对应的色度样点块中的色度样点的数量可相同或不同。例如,当使用yuv 4:2:0格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×N色度样点;当使用yuv 4:2:2格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×2N色度样点;当使用yuv 4:4:4格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个2N×2N色度样点。
在步骤S402,可确定应用于当前块的至少一个跨分量预测模型,其中,所述至少一个跨分量预测模型是多个预设跨分量预测模型中的至少一个跨分量预测模型。
根据本公开的示例性实施例,可通过显示方式确定应用于当前块的至少一个跨分量预测模型。也就是说,编码器侧可在比特流中发送指示应用于当前块的至少一个跨分量预测模型的标志或者指示指示针对当前块是否使用多个跨分量预测模型的组合的标志。可通过解析所述比特流中的标志来确定应用于当前块的跨分量预测模型。
根据本公开的示例性实施例,可通过隐式方式来确定应用于当前块的至少一个跨分量预测模型。也就是说,编码器侧可不发送相关标志,在解码器侧来推导应用于当前块的跨分量预测模型。例如,可确定针对当前块的多个跨分量预测模型候选和与所述当前块相邻的模板区域,其中,多个跨分量预测模型候选包括单个跨分量预测模型和/或多个跨分量预测模型的组合;将每个跨分量预测模型候选分别应用于模板区域中的第一区域中的样点,导出每个跨分量预测模型候选的滤波器系数;将每个跨分量预测模型候选的滤波器系数应用于模板区域中的第二区域中的样点,确定每个跨分量预测模型候选的误差值;基于每个跨分量预测模型候选的误差值,从多个跨分量预测模型候选中选择一个跨分量预测模型候选,作为应用于当前块的跨分量预测模型。
根据本公开的示例性实施例,从所述多个跨分量预测模型候选中选择误差值最小的一个跨分量预测模型候选;或者从多个跨分量预测模型候选中确定误差值最小的预定数量个跨分量预测模型候选,并基于从比特流中解析的指示所选择的跨分量预测模型候选的标志,来从预定数量个跨分量预测模型候选中选择一个跨分量预测模型候选,其中,预定数量大于1。
在步骤403,可在至少一个跨分量预测模型包括多个跨分量预测模型的组合的情况下,分别将每个跨分量预测模型应用于当前块,得到多个色度预测值;
在步骤404,可对多个色度预测值进行加权处理,得到当前块的色度预测值。
例如,但不限于,当确定用于当前块的跨分量预测模型为CCCM和GLM的组合时,可首先分别导出CCCM(ci)和GLM(a,b)的参数,然后通过线性回归导出CCCM和GLM之间的权重(wi),最后用加权的CCCM和GLM从重建亮度样点中预测色度样点。
如下公式所示:
GLMpredChromaVal=a*lumaVal+b
CCCMpredChromaVal=c0*C+c1*N+c2*S+c3*E+c4*W+c5*P+c6*B
FinalpredChromaVal=w0*GLMpredChromaVal+w1*CCCMpredChromaVal
其中,GLMpredChromaVal表示应用GLM的色度预测值,CCCMpredChromaVal表示应用CCCM的色度预测值,FinalpredChromaVal表示最终的色度预测值,w0和w1表示权重值。
当然,确定出应用于当前块的跨分量预测模型的组合为任何组合时,都可使用上述类似的方式来计算最终色度样点预测值。
图31是示出根据本公开的示例性实施例的视频解码方法的流程图。
参照图31,在步骤S501,可接收包括多个块的比特流,其中,每个块包括亮度样点块和色度样点块。这里,在一个块中,亮度样点块中的亮度样点的数量和与其对应的色度样点块中的色度样点的数量可相同或不同。例如,当使用yuv 4:2:0格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×N色度样点;当使用yuv 4:2:2格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×2N色度样点;当使用yuv 4:4:4格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个2N×2N色度样点。
在步骤S502,可解析比特流中的指示用于卷积跨分量模型的滤波器的信息。例如,所述信息可包括指示滤波器的滤波器形状和滤波器抽头数的信息。又例如,所述信息还可包括指示从多个预定滤波器形状候选中选择哪个滤波器形状的信息,在这种情况下,一组预定滤波器形状候选可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处预定义或用信号发送/切换。滤波器形状可用于导出滤波器中的非线性项的值,非线性项的值是基于应用于滤波器的空间分量亮度样点中的至少一个亮度样点确定的。
例如,卷积跨分量模型可被表示为:
predChromaVal=c0C+c1N+c2S+c3E+c4W+c5P+c6B,
其中,predChromaVal表示要预测的色度样点的预测色度值,c0、c1、c2、c3、c4、c5和c6表示滤波器系数,C、N、S、W、E、P和B为分别与滤波器系数相乘的项,其中,C、N、S、W、E为应用于滤波器的空间分量亮度样点,分别为中心亮度样点、上方相邻样点(北侧相邻样点)、下方相邻样点(南侧相邻样点)、左侧相邻样点(西侧相邻样点)和右侧相邻样点(东侧相邻样点),中心亮度样点C与要预测的色度样点同位,P表示非线性项,B表示偏置项。
在当前的标准中,非线性项P=(C*C+midVal)>>bitDepth,其中,C为中心亮度样点,bitDepth表示比特深度,midVal表示中间色度值。也就是说,非线性项P是由中心亮度样点确定的,但如果仅针对中心亮度样点来确定非线性项P,并没有充分利用空间分量的信息。因此,为了提高预测准确性,可使用所有空间分量亮度样点(例如,C、N、S、W和E)中的至少一个亮度样点来导出非线性项P。
根据本公开的示例性实施例,可将非线性项P设置为:
P=(Q*R+midVal)>>bitDepth比特深度,Q和R表示用于导出非线性项的值。
Q和R可以是当前(中心C)亮度样点和相邻亮度样点(N、S、W和E)的线性组合(经过下采样或无下采样)。例如,但不限于,Q和R选自N,S,E,W,C中的一个,或者,Q=R=(N+S+E+W)/4,或者,Q=C,R=(N+S+E+W)/4,或者Q*R=C*N、C*S、C*E和C*W中的一个。这里,用于导出非线性项P的不同值(Q/R)被视为不同的滤波器形状,可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处预定义或被用信号发送/切换。
在步骤503,可将与指示的滤波器对应的卷积跨分量模型应用于空间分量亮度样点来预测对应的色度样点。
根据本公开的示例性实施例,可将GLM用于CCCM的输入,也就是说,CCCM操作可变成“梯度的线性/非线性组合”。例如,可计算空间分量亮度样点在预定方向上的梯度值,并将卷积跨分量模型应用于空间分量亮度样点在预定方向上的梯度值来预测对应的色度样点。也就是说,在上述的卷积跨分量模型的公式中,C、N、S、W和E可以是应用于滤波器的空间分量亮度样点的梯度值。
根据本公开的示例性实施例,可针对每个空间分量亮度样点,从预定梯度滤波器候选中选择梯度滤波器;将选择的梯度滤波器应用于对应的空间分量亮度样点,得到该空间分量亮度样点的梯度值。
根据本公开的示例性实施例,在步骤503中,应用的空间分量亮度样点可以为非下采样亮度样点,从而减少了解码器的处理周期。在这种情况下,可确定在该模式下采用的滤波器形状。
图32是示出根据本公开的示例性实施例的视频编码方法的流程图。
参照图32,在步骤S601,可将视频图片划分为多个块,其中,每个块包括至少一个亮度样点块和至少一个色度样点块。这里,在一个块中,亮度样点块中的亮度样点的数量和与其对应的色度样点块中的色度样点的数量可相同或不同。例如,当使用yuv 4:2:0格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×N色度样点;当使用yuv4:2:2格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×2N色度样点;当使用yuv4:4:4格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个2N×2N色度样点。
在步骤S602,获取与当前块中的当前色度样点对应的重建亮度样点。
根据本公开的示例性实施例,重建亮度样点来自所述当前块中与当前色度样点对应的亮度样点块和/或当前色度样点的同位亮度样点块。重建亮度样点可以是经过下采样的重建亮度样点,也可以是未经过下采样的重建亮度样点。例如,当使用yuv 4:2:0和yuv4:2:2格式时,需要对重建亮度样点进行下采样以保持与色度样点的分辨率一致。当使用yuv4:4:4格式时,由于亮度样点和色度样点的分辨率本身是一致的,因此无需对重建亮度样点进行下采样。
在步骤S603,可基于重建亮度样点与重建亮度样点的至少一个相邻亮度样点之间的相关性,对重建亮度样点进行分类,其中,重建亮度样点被分类到多个组中的一个组。这里,可利用重建亮度样点边缘/AC信息对重建亮度样点进行分类到不同组,使得不同组的重建亮度样点应用于不同的跨分量预测模型,从而提高视频图像的编解码质量。这里,跨分量预测模型可以是上面提及的任何可应用此种分类方法的跨分量预测模型,例如,CCLM模型、MMLM模型、FLM模型、GLM模型、CCCM模型等等。
根据本公开的示例性实施例,可将重建亮度样点分别与预定数量的相邻亮度样点(例如,4个无对角线的相邻亮度样点)进行比较;基于比较结果获得所述重建亮度样点与所述相邻亮度样点的相关值(例如,根据重建亮度样点与相邻亮度样点的大小关系计算分数);基于相关值对重建亮度样点进行分类,其中,根据至少一个预设相关值阈值将相关值划分为多个组(例如,可预定分数阈值为0,将重建亮度样点划分为三个组,即,分数>0、分数=0、分数小于0)。
根据本公开的示例性实施例,可计算重建亮度样点在预定方向上的边缘强度;基于边缘强度对所述重建亮度样点进行分类,其中,根据至少一个预设边缘强度阈值将边缘强度划分为多个组。例如,可通过当前重建亮度样点减去预定方向上的相邻亮度样点来计算边缘强度。
根据本公开的示例性实施例,预定方向根据当前预测模式被确定。例如,但不限于,当当前预测模式为MMLM_L时,预定方向可设置为垂直方向,当当前预测模式为MMLM_A时,预定方向可设置为水平方向。
根据本公开的示例性实施例,可确定边缘检测滤波器,其中,边缘检测滤波器包括滤波器形状和滤波器抽头数;基于边缘检测滤波器来计算重建亮度样点在所述预定方向上的边缘强度。例如,可通过确定的边缘检测滤波器来计算重建亮度样点在所述预定方向上的边缘强度,并根据预定数量个阈值对边缘强度进行分类,从而对对应的重建亮度样点进行分类。例如,可使用映射表来表示边缘强度量化。
根据本公开的示例性实施例,可在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region(区域)/CTU/CU/Subblcok(子块)/Sample(样点)级中预定义或用信号发送/切换滤波器形状、滤波器抽头和映射表中的至少一个。
根据本公开的示例性实施例,还可根据第4.3.1或5.2.1章节的隐式滤波器形状推导的方法来确定边缘检测滤波器。
在步骤S604,可对重建亮度样点应用与分类到的组对应的跨分量预测模型来预测当前色度样点,其中,对不同组的重建亮度样点应用不同的跨分量预测模型。
根据本公开的示例性实施例,可基于当前块的相邻重建亮度样点与该相邻重建亮度样点的至少一个相邻亮度样点之间的相关性,对所述相邻重建亮度样点进行分类;其中,当前块中的重建亮度样点与相邻重建亮度样点的分类规则相同,例如,都可使用边缘强度来对当前块中的重建亮度样点与相邻重建亮度样点进行分类。可利用分类到同一组的相邻重建亮度样点以及对应的相邻重建色度样点来推导多元线性回归模型,从而得到多个线性回归模型;对当前块中的重建亮度样点应用与当前块中的重建亮度样点同一组的相邻重建亮度样点推导出的多元线性回归模型,来预测当前色度样点。
根据本公开的示例性实施例,在当前块的尺寸小于预设最小尺寸限制的情况下,针对当前块禁用跨分量预测模型。例如,跨分量预测模型可以包括上面提及的任何跨分量预测模型,例如,可包括,但不限于,基于滤波器的线性模型(FLM)、梯度线性模型(GLM)、边缘分类线性模型(ELM)和卷积跨分量模型(CCCM)之一。
根据本公开的示例性实施例,针对单模型的预设最小尺寸限制小于或等于针对多模型的预设最小尺寸限制。例如,FLM在单个模型中仅用于大于预设最小尺寸(例如,128)的样点块,而FLM在多个模型中仅用于大于预设最小尺寸(例如,256)的样点块。
根据本公开的示例性实施例,针对基于滤波器的线性预测模型、梯度线性模型和边缘分类线性模型的预设最小尺寸限制大于或等于针对卷积跨分量模型的预设最小尺寸限制。例如,CCCM在单个模型中仅用于大于或等于预设最小尺寸(例如,0)的样点块,而CCCM在多个模型中仅用于大于或等于预设最小尺寸(例如,128)的样点块。FLM在单个模型中仅用于大于或等于预设最小尺寸(例如,128)的样点块,FLM在多个模型中仅用于大于或等于预设最小尺寸(例如,128)的样点块。
根据本公开的示例性实施例,跨分量预测模型包可括至少一个跨分量预测模型,其中,至少一个跨分量预测模型是多个预设跨分量预测模型中的至少一个跨分量预测模型。例如,多个预设跨分量预测模型可以包括上面提及的任何跨分量预测模型,例如,可包括,但不限于,基于滤波器的线性模型(FLM)、梯度线性模型(GLM)、边缘分类线性模型(ELM)和卷积跨分量模型(CCCM)中的多个。在此情况下,在至少一个跨分量预测模型包括多个跨分量预测模型的组合的情况下,分别将每个跨分量预测模型应用于当前块,得到多个色度预测值;对多个色度预测值进行加权处理,得到当前块的色度预测值。例如,但不限于,当确定用于当前块的跨分量预测模型为CCCM和GLM的组合时,可首先分别导出CCCM(ci)和GLM(a,b)的参数,然后通过线性回归导出CCCM和GLM之间的权重(wi),最后用加权的CCCM和GLM从重建亮度样点中预测色度样点。如下公式所示:
GLMpredChromaVal=a*lumaVal+b
CCCMpredChromaVal=c0*C+c1*N+c2*S+c3*E+c4*W+c5*P+c6*B
FinalpredChromaVal=w0*GLMpredChromaVal+w1*CCCMpredChromaVal
其中,GLMpredChromaVal表示应用GLM的色度预测值,CCCMpredChromaVal表示应用CCCM的色度预测值,FinalpredChromaVal表示最终的色度预测值,w0和w1表示权重值。
根据本公开的示例性实施例,可通过显示方式来指示应用于当前块的至少一个跨分量预测模型。也就是说,编码器侧可在比特流中发送指示应用于当前块的至少一个跨分量预测模型的标志或者指示指示针对当前块是否使用多个跨分量预测模型的组合的标志。在解码侧可通过解析所述比特流中的标志来确定应用于当前块的跨分量预测模型。
根据本公开的示例性实施例,可通过隐式方式来指示应用于当前块的至少一个跨分量预测模型。也就是说,编码器侧可不发送相关标志,在解码器侧来推导应用于当前块的跨分量预测模型。编码器侧和解码器侧都使用相同的推导方式。例如,可确定针对当前块的多个跨分量预测模型候选和与所述当前块相邻的模板区域,其中,多个跨分量预测模型候选包括单个跨分量预测模型和/或多个跨分量预测模型的组合;将每个跨分量预测模型候选分别应用于模板区域中的第一区域中的样点,导出每个跨分量预测模型候选的滤波器系数;将每个跨分量预测模型候选的滤波器系数应用于模板区域中的第二区域中的样点,确定每个跨分量预测模型候选的误差值;基于每个跨分量预测模型候选的误差值,从多个跨分量预测模型候选中选择一个跨分量预测模型候选,作为应用于当前块的跨分量预测模型。
根据本公开的示例性实施例,从所述多个跨分量预测模型候选中选择误差值最小的一个跨分量预测模型候选;或者从多个跨分量预测模型候选中确定误差值最小的预定数量个跨分量预测模型候选,从预定数量个跨分量预测模型候选中选择一个跨分量预测模型候选,并在比特流中用信号发送指示所选择的跨分量预测模型候选的标志,其中,预定数量大于1。图33是示出根据本公开的另一示例性实施例的视频编码方法的流程图。
参照图33,在步骤S701,可将视频图片划分为多个块,其中,每个块包括亮度样点块和色度样点块。这里,在一个块中,亮度样点块中的亮度样点的数量和与其对应的色度样点块中的色度样点的数量可相同或不同。例如,当使用yuv 4:2:0格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×N色度样点;当使用yuv 4:2:2格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×2N色度样点;当使用yuv 4:4:4格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个2N×2N色度样点。
在步骤S702,可获取与当前块中的当前色度样点对应的多个重建亮度样点。根据本公开的示例性实施例,多个重建亮度样点包括与所述当前色度样点的相邻亮度样点和/或同位亮度样点。重建亮度样点可以是经过下采样的重建亮度样点,也可以是未经过下采样的重建亮度样点。
在步骤S703,可确定与当前块相邻的参考亮度样点区域和参考色度样点区域。
根据本公开的示例性实施例,可从与当前块相邻的左侧样点区域和/或上方样点区域中确定参考亮度样点区域和参考色度样点区域。例如,参考亮度样点区域和参考色度样点区域可以是图24显示的所有参考区域。
根据本公开的示例性实施例,可根据当前块的预测模式,从与当前块相邻的左侧样点区域和/或上方样点区域中确定参考亮度样点区域和参考色度样点区域。例如,当应用FLM模式时,W’=W,H’=H,其中,W’和H’表示参考亮度样点区域和参考色度样点区域,W和H分别指示与当前块相邻的左侧样点区域和上方样点区域。当应用FLM_T模式时,W’=W+We;其中,We表示扩展的顶部亮度/色度样点。当应用FLM_L模式时,H’=H+He;其中,He表示扩展的左亮度/色度样点。
根据本公开的示例性实施例,可在比特流中用信号发送指示参考亮度样点区域和参考色度样点区域的索引,例如,该索引可以是参考线索引,用于指示作为参考亮度样点和参考色度样点的线,与MRL类似。
在步骤S704,基于参考亮度样点区域中的参考亮度样点和参考色度样点区域中的参考色度样点,通过伪逆矩阵来导出跨分量预测模型。
在步骤S704,对多个重建亮度样点应用跨分量预测模型来预测当前色度样点,其中,跨分量预测模型通过多元线性回归模型实现,并且多元线性回归模型中的滤波器系数分别与多个重建亮度样点相乘。
根据本公开的示例性实施例,可从参考亮度样点区域中的参考亮度样点和参考色度样点区域中的参考色度样点中确定多个样点对,其中,每个样点对包括一个参考色度样点和多个参考亮度样点;将多元线性回归模型应用于多个样点对,导出伪逆矩阵;基于伪逆矩阵,确定多元线性回归模型中的滤波器系数。
根据本公开的示例性实施例,可确定多元线性回归模型中的滤波器,其中,滤波器包括滤波器形状和滤波器抽头数;基于滤波器形状和滤波器抽头数,确定多个重建亮度样点,其中,滤波器形状与所个重建亮度样点的位置对应,滤波器抽头数与多个重建亮度样点的数量对应。
根据本公开的示例性实施例,根据当前块的色度类型和色度采样格式来确定滤波器,其中,针对不同色度类型和色度采样格式预设不同的滤波器。例如,但不限于,如图17所示,对于420类型-0,可选择预定义滤波器形状(1,2,4,5)。对于420类型-2,可选择预定义滤波器形状(0,1,2,4,7),对于422类型,可选择预定义滤波器形状(1,4)。对于444类型,可选择预定义滤波器形状(0,1,2,3,4,5)
根据本公开的示例性实施例,通过显示方式指示多元线性回归模型中的滤波器。也就是说,在编码侧可发送指示滤波器的标志,因此,在解码侧,可解析比特流中的指示滤波器的标志;并基于解析的标志来确定滤波器。也就是说,在编码侧,可在从多个滤波器候选中确定滤波器后,在比特流中用信号发送指示滤波器的标志。
根据本公开的示例性实施例,通过隐式方式确定多元线性回归模型中的滤波器。此方法也可应用于CCCM模型。也就是说,在编码侧不发送指示滤波器的标志,因此,在解码侧,可推导多元线性回归模型中的滤波器。在编码侧和编码侧应用相应的推导方式。例如,可确定多个滤波器候选和与当前块相邻的模板区域;将每个滤波器候选分别应用于所述模板区域中的第一区域中的样点,导出每个滤波器候选的滤波器系数;将每个滤波器候选的滤波器系数应用于所述模板区域中的第二区域中的样点,确定每个滤波器候选的误差值;基于每个滤波器候选的误差值,从多个滤波器候选中选择一个滤波器候选,作为多元线性回归模型中的滤波器。
根据本公开的示例性实施例,从多个滤波器候选中选择误差值最小的一个滤波器候选;或者从多个滤波器候选中确定误差值最小的预定数量个滤波器候选,从预定数量个滤波器候选中选择一个滤波器候选,并在比特流中用信号发送指示所选择的滤波器候选的标志,其中,预定数量大于1。
根据本公开的示例性实施例,多元线性回归模型中的滤波器包括非线性项和/或偏移项;在多元线性回归模型中的滤波器包括非线性项的情况下,非线性项基于多个重建亮度样点中的至少一个重建亮度样点被确定,并且滤波器系数分别与多个重建亮度样点和非线性项相乘。
根据本公开的示例性实施例,可在应用多元线性回归模型之前,可执行一些预操作,以降低重建亮度样点维度,效地减少滤波器抽头的数量,从而提高视频图像编解码效率。例如,可对多个重建亮度样点执行预处理,得到至少一个经过预处理的重建亮度样点,其中,经过预处理的重建亮度样点的数量小于多个重建亮度样点的数量;对至少一个经过预处理的重建亮度样点应用跨分量预测模型来预测与当前色度样点。
根据本公开的示例性实施例,确定梯度滤波器,其中,梯度滤波器包括梯度方向;将梯度滤波器应用于所述多个重建亮度样点,得到至少一个经过滤波的重建亮度样点。
根据本公开的示例性实施例,可确定多个梯度滤波器候选;将每个梯度滤波器候选分别应用于与当前块相邻的预定模板中的重建亮度样点,得到每个梯度滤波器候选的梯度值;基于每个梯度滤波器候选的梯度值建立梯度直方图;基于梯度直方图中的最大值对应的梯度方向确定梯度滤波器。
根据本公开的示例性实施例,可将上面提到的FLM或GLM可以与MMLM或ELM结合使用,来提高视频图像编解码质量。例如,可将用于导出多元线性回归模型的参考亮度/色度样点分类为不同组,针对不同组分别导出不同的多元线性回归模型,另外,将当前块内的亮度/色度样点分类为不同组,针对不同组的亮度样点应用不同的多元线性回归模型。
例如,但不限于,首先,可将当前块的相邻重建亮度样点值与预定阈值进行比较,来对相邻重建亮度样点分类。例如,相邻重建亮度样点值可以是参考亮度样点区域中的参考亮度样点的值或下采样值,预定阈值可以是一个或多个阈值,例如,在预定阈值为一个阈值的情况下,可将相邻重建亮度样点分为两类,例如,可将大于或等于该阈值的相邻重建亮度样点分为一类,并将小于该阈值的相邻重建亮度样点分为另一类;在预定阈值为两个阈值的情况下,可将相邻重建亮度样点分为三类,以此类推。随后,可利用分类到同一组的相邻重建亮度样点以及对应的相邻重建色度样点来推导多元线性回归模型,从而得到多个线性回归模型。随后,根据当前块内的亮度样点值与所述预定阈值进行比较,来对当前块内的亮度样点分类。随后,针对当前块内的分类到同一类的亮度样点应用属于该类的相邻重建亮度/色度样点推导出的多元线性回归模型,来预测对应的色度样点。
此外,上述分类的方法不限于使用当前块的相邻重建亮度样点值与预定阈值进行比较的方法,还可以将应用于相邻重建亮度样点的FLM或GLM的滤波值来对相邻重建亮度样点进行分类,或者可使用相邻重建亮度样点的边缘强度值来对相邻重建亮度样点进行分类。
图34是示出根据本公开的另一示例性实施例的视频编码方法的流程图。
参照图34,在步骤S81,可将视频图片划分为多个块,其中,每个块包括亮度样点块和色度样点块。这里,在一个块中,亮度样点块中的亮度样点的数量和与其对应的色度样点块中的色度样点的数量可相同或不同。例如,当使用yuv 4:2:0格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×N色度样点;当使用yuv 4:2:2格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×2N色度样点;当使用yuv 4:4:4格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个2N×2N色度样点。
在步骤S802,在当前块的尺寸小于预设最小尺寸限制的情况下,针对当前块禁用预定跨分量预测模型。
根据本公开的示例性实施例,预定跨分量预测模型可以是上面提及的任何跨分量预测模型,例如,可包括,但不限于,基于滤波器的线性模型(FLM)、梯度线性模型(GLM)、边缘分类线性模型(ELM)和卷积跨分量模型(CCCM)之一。
根据本公开的示例性实施例,针对单模型的预设最小尺寸限制小于或等于针对多模型的预设最小尺寸限制。例如,FLM在单个模型中仅用于大于预设最小尺寸(例如,128)的样点块,而FLM在多个模型中仅用于大于预设最小尺寸(例如,256)的样点块。
根据本公开的示例性实施例,针对基于滤波器的线性预测模型、梯度线性模型和边缘分类线性模型的预设最小尺寸限制大于或等于针对卷积跨分量模型的预设最小尺寸限制。例如,CCCM在单个模型中仅用于大于或等于预设最小尺寸(例如,0)的样点块,而CCCM在多个模型中仅用于大于或等于预设最小尺寸(例如,128)的样点块。FLM在单个模型中仅用于大于或等于预设最小尺寸(例如,128)的样点块,FLM在多个模型中仅用于大于或等于预设最小尺寸(例如,128)的样点块。
图35是示出根据本公开的另一示例性实施例的视频编码方法的流程图。
参照图35,在步骤S901,接收包括多个块的比特流,其中,每个块包括亮度样点块和色度样点块。这里,在一个块中,亮度样点块中的亮度样点的数量和与其对应的色度样点块中的色度样点的数量可相同或不同。例如,当使用yuv 4:2:0格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×N色度样点;当使用yuv 4:2:2格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×2N色度样点;当使用yuv 4:4:4格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个2N×2N色度样点。
在步骤S902,可确定应用于当前块的至少一个跨分量预测模型,其中,所述至少一个跨分量预测模型是多个预设跨分量预测模型中的至少一个跨分量预测模型。
根据本公开的示例性实施例,可通过显示方式来指示应用于当前块的至少一个跨分量预测模型。也就是说,编码器侧可在比特流中发送指示应用于当前块的至少一个跨分量预测模型的标志或者指示指示针对当前块是否使用多个跨分量预测模型的组合的标志。在解码侧可通过解析所述比特流中的标志来确定应用于当前块的跨分量预测模型。
根据本公开的示例性实施例,可通过隐式方式来指示应用于当前块的至少一个跨分量预测模型。也就是说,编码器侧可不发送相关标志,在解码器侧来推导应用于当前块的跨分量预测模型。编码器侧和解码器侧都使用相同的推导方式。例如,可确定针对当前块的多个跨分量预测模型候选和与所述当前块相邻的模板区域,其中,多个跨分量预测模型候选包括单个跨分量预测模型和/或多个跨分量预测模型的组合;将每个跨分量预测模型候选分别应用于模板区域中的第一区域中的样点,导出每个跨分量预测模型候选的滤波器系数;将每个跨分量预测模型候选的滤波器系数应用于模板区域中的第二区域中的样点,确定每个跨分量预测模型候选的误差值;基于每个跨分量预测模型候选的误差值,从多个跨分量预测模型候选中选择一个跨分量预测模型候选,作为应用于当前块的跨分量预测模型。
根据本公开的示例性实施例,从所述多个跨分量预测模型候选中选择误差值最小的一个跨分量预测模型候选;或者从多个跨分量预测模型候选中确定误差值最小的预定数量个跨分量预测模型候选,从预定数量个跨分量预测模型候选中选择一个跨分量预测模型候选,并在比特流中用信号发送指示所选择的跨分量预测模型候选的标志,其中,预定数量大于1。
在步骤903,可在至少一个跨分量预测模型包括多个跨分量预测模型的组合的情况下,分别将每个跨分量预测模型应用于当前块,得到多个色度预测值;
在步骤904,可对多个色度预测值进行加权处理,得到当前块的色度预测值。
例如,但不限于,当确定用于当前块的跨分量预测模型为CCCM和GLM的组合时,可首先分别导出CCCM(ci)和GLM(a,b)的参数,然后通过线性回归导出CCCM和GLM之间的权重(wi),最后用加权的CCCM和GLM从重建亮度样点中预测色度样点。如下公式所示:
GLMpredChromaVal=a*lumaVal+b
CCCMpredChromaVal=c0*C+c1*N+c2*S+c3*E+c4*W+c5*P+c6*B
FinalpredChromaVal=w0*GLMpredChromaVal+w1*CCCMpredChromaVal
其中,GLMpredChromaVal表示应用GLM的色度预测值,CCCMpredChromaVal表示应用CCCM的色度预测值,FinalpredChromaVal表示最终的色度预测值,w0和w1表示权重值。
当然,确定出应用于当前块的跨分量预测模型的组合为任何组合时,都可使用上述类似的方式来计算最终色度样点预测值。
此外,可通过视频解码装置中的各个模块来执行如图27至图30所示的视频解码方法的步骤。可通过视频编码装置中的各个模块来执行如图31至图34所示的视频编码方法的步骤。
图36是根据本公开的另一示例性实施例的视频编码方法的流程图。
参照图36,在步骤S1001,接收包括多个块的比特流,其中,每个块包括亮度样点块和色度样点块。这里,在一个块中,亮度样点块中的亮度样点的数量和与其对应的色度样点块中的色度样点的数量可相同或不同。例如,当使用yuv 4:2:0格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×N色度样点;当使用yuv 4:2:2格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个N×2N色度样点;当使用yuv 4:4:4格式时,一个2N×2N的块可包括一个2N×2N亮度样点以及两个2N×2N色度样点。
在步骤S1002,可确定用于卷积跨分量模型的滤波器的滤波器形状,其中,滤波器形状用于导出所述滤波器中的非线性项的值,所述非线性项的值是基于应用于所述滤波器的空间分量亮度样点中的至少一个亮度样点确定的。在这种情况下,可在比特流中发送指示用于卷积跨分量模型的滤波器的信息。例如,所述信息可包括指示滤波器的滤波器形状和滤波器抽头数的信息。又例如,所述信息还可包括指示从多个预定滤波器形状候选中选择哪个滤波器形状的信息,在这种情况下,一组预定滤波器形状候选可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处预定义或用信号发送/切换。
例如,卷积跨分量模型可被表示为:
predChromaVal=c0C+c1N+c2S+c3E+c4W+c5P+c6B,
其中,predChromaVal表示要预测的色度样点的预测色度值,c0、c1、c2、c3、c4、c5和c6表示滤波器系数,C、N、S、W、E、P和B为分别与滤波器系数相乘的项,其中,C、N、S、W、E为应用于滤波器的空间分量亮度样点,分别为中心亮度样点、上方相邻样点(北侧相邻样点)、下方相邻样点(南侧相邻样点)、左侧相邻样点(西侧相邻样点)和右侧相邻样点(东侧相邻样点),中心亮度样点C与要预测的色度样点同位,P表示非线性项,B表示偏置项。
在当前的标准中,非线性项P=(C*C+midVal)>>bitDepth,其中,C为中心亮度样点,bitDepth表示比特深度,midVal表示中间色度值。也就是说,非线性项P是由中心亮度样点确定的,但如果仅针对中心亮度样点来确定非线性项P,并没有充分利用空间分量的信息。因此,为了提高预测准确性,可使用所有空间分量亮度样点(例如,C、N、S、W和E)中的至少一个亮度样点来导出非线性项P。
根据本公开的示例性实施例,可将非线性项P设置为:
P=(Q*R+midVal)>>bitDepth比特深度,Q和R表示用于导出非线性项的值。
Q和R可以是当前(中心C)亮度样点和相邻亮度样点(N、S、W和E)的线性组合(经过下采样或无下采样)。例如,但不限于,Q和R选自N,S,E,W,C中的一个,或者,Q=R=(N+S+E+W)/4,或者,Q=C,R=(N+S+E+W)/4,或者Q*R=C*N、C*S、C*E和C*W中的一个。这里,用于导出非线性项P的不同值(Q/R)被视为不同的滤波器形状,可以在SPS/DPS/VPS/SEI/APS/PPS/PH/SH/Region/CTU/CU/Subblcok/Sample级处预定义或被用信号发送/切换。
在步骤1003,可将确定的卷积跨分量模型应用于空间分量亮度样点来预测对应的色度样点。
根据本公开的示例性实施例,可将GLM用于CCCM的输入,也就是说,CCCM操作可变成“梯度的线性/非线性组合”。例如,可计算空间分量亮度样点在预定方向上的梯度值,并将卷积跨分量模型应用于空间分量亮度样点在预定方向上的梯度值来预测对应的色度样点。也就是说,在上述的卷积跨分量模型的公式中,C、N、S、W和E可以是应用于滤波器的空间分量亮度样点的梯度值。
根据本公开的示例性实施例,可针对每个空间分量亮度样点,从预定梯度滤波器候选中选择梯度滤波器;将选择的梯度滤波器应用于对应的空间分量亮度样点,得到该空间分量亮度样点的梯度值。
根据本公开的示例性实施例,在步骤1003中,应用的空间分量亮度样点可以为非下采样亮度样点,从而减少了解码器的处理周期。在这种情况下,可确定在该模式下采用的滤波器形状。
图37是根据本公开的示例性实施例的电子设备的框图。
参照图37,电子设备1000包括至少一个存储器1001和至少一个处理器1002,所述至少一个存储器1001中存储有计算机可执行指令集合,当计算机可执行指令集合被至少一个处理器1002执行时,执行根据本公开的示例性实施例的视频编码方法或视频解码方法。
作为示例,电子设备1000可以是PC计算机、平板装置、个人数字助理、智能手机、或其他能够执行上述指令集合的装置。这里,电子设备1000并非必须是单个的电子设备,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。电子设备1000还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子设备。
在电子设备1000中,处理器1002可包括中央处理器(CPU)、图形处理器(GPU)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
处理器1002可运行存储在存储器1001中的指令或代码,其中,存储器1001还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,网络接口装置可采用任何已知的传输协议。
存储器1001可与处理器1002集成为一体,例如,将RAM或闪存布置在集成电路微处理器等之内。此外,存储器1001可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储器1001和处理器1002可在操作上进行耦合,或者可例如通过I/O端口、网络连接等互相通信,使得处理器1002能够读取存储在存储器中的文件。
此外,电子设备1000还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。电子设备1000的所有组件可经由总线和/或网络而彼此连接。
根据本公开的示例性实施例,还可提供一种计算机可读存储介质,其中,当计算机可读存储介质中的指令被至少一个处理器运行时,促使至少一个处理器执行根据本公开的视频编码方法或视频解码方法。这里的计算机可读存储介质的示例包括:只读存储器(ROM)、随机存取可编程只读存储器(PROM)、电可擦除可编程只读存储器(EEPROM)、随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、闪存、非易失性存储器、CD-ROM、CD-R、CD+R、CD-RW、CD+RW、DVD-ROM、DVD-R、DVD+R、DVD-RW、DVD+RW、DVD-RAM、BD-ROM、BD-R、BD-R LTH、BD-RE、蓝光或光盘存储器、硬盘驱动器(HDD)、固态硬盘(SSD)、卡式存储器(诸如,多媒体卡、安全数字(SD)卡或极速数字(XD)卡)、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘以及任何其他装置,所述任何其他装置被配置为以非暂时性方式存储计算机程序以及任何相关联的数据、数据文件和数据结构并将所述计算机程序以及任何相关联的数据、数据文件和数据结构提供给处理器或计算机使得处理器或计算机能执行所述计算机程序。上述计算机可读存储介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,此外,在一个示例中,计算机程序以及任何相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得计算机程序以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布式方式存储、访问和执行。
根据本公开的示例性实施例,还可提供一种计算机程序产品,包括计算机指令,该计算机指令可由至少一个处理器执行以完成根据本公开的示例性实施例的视频编码方法或视频解码方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (21)

1.一种视频解码方法,其特征在于,所述视频解码方法包括:
接收包括多个块的比特流,其中,每个块包括亮度样点块和色度样点块;
获取与当前块中的当前色度样点对应的重建亮度样点;
基于所述重建亮度样点与所述重建亮度样点的至少一个相邻亮度样点之间的相关性,对所述重建亮度样点进行分类,其中,所述重建亮度样点被分类到多个组中的一个组;
对所述重建亮度样点应用与分类到的组对应的跨分量预测模型来预测所述当前色度样点,其中,对不同组的重建亮度样点应用不同的跨分量预测模型。
2.如权利要求1所述的视频解码方法,其特征在于,基于所述重建亮度样点与所述重建亮度样点的至少一个相邻亮度样点之间的相关性,对所述重建亮度样点进行分类,包括:
将所述重建亮度样点分别与预定数量的相邻亮度样点进行比较;
基于比较结果获得所述重建亮度样点与所述相邻亮度样点的相关值;
基于所述相关值对所述重建亮度样点进行分类,其中,根据至少一个预设相关值阈值将相关值划分为多个组。
3.如权利要求1所述的视频解码方法,其特征在于,基于所述重建亮度样点与所述重建亮度样点的至少一个相邻亮度样点之间的相关性,对所述重建亮度样点进行分类,包括:
计算所述重建亮度样点在预定方向上的边缘强度;
基于所述边缘强度对所述重建亮度样点进行分类,其中,根据至少一个预设边缘强度阈值将边缘强度划分为多个组。
4.如权利要求3所述的视频解码方法,其特征在于,所述计算所述重建亮度样点在预定方向上的边缘强度,包括:
确定边缘检测滤波器,其中,所述边缘检测滤波器包括滤波器形状和滤波器抽头数;
基于所述边缘检测滤波器来计算所述重建亮度样点在所述预定方向上的边缘强度。
5.如权利要求1所述的视频解码方法,其特征在于,还包括:
基于所述当前块的相邻重建亮度样点与所述相邻重建亮度样点的至少一个相邻亮度样点之间的相关性,对所述相邻重建亮度样点进行分类;
利用分类到同一组的相邻重建亮度样点以及对应的相邻重建色度样点来推导多元线性回归模型,得到多个线性回归模型;
其中,所述对所述重建亮度样点应用与分类到的组对应的跨分量预测模型来预测所述当前色度样点,包括:
对所述重建亮度样点应用与所述重建亮度样点同一组的相邻重建亮度样点推导出的多元线性回归模型,来预测所述当前色度样点。
6.如权利要求1所述的视频解码方法,其特征在于,还包括:
在当前块的尺寸小于预设最小尺寸限制的情况下,针对所述当前块禁用所述跨分量预测模型。
7.如权利要求6所述的视频解码方法,其特征在于,针对单模型的预设最小尺寸限制小于或等于针对多模型的预设最小尺寸限制。
8.如权利要求6所述的视频解码方法,其特征在于,针对基于滤波器的线性预测模型、梯度线性模型和边缘分类线性模型的预设最小尺寸限制大于或等于针对卷积跨分量模型的预设最小尺寸限制。
9.如权利要求1所述的视频解码方法,其特征在于,所述跨分量预测模型包括至少一个跨分量预测模型,其中,所述至少一个跨分量预测模型是多个预设跨分量预测模型中的至少一个跨分量预测模型;
其中,所述视频解码方法还包括:
在所述至少一个跨分量预测模型包括多个跨分量预测模型的组合的情况下,分别将每个跨分量预测模型应用于所述当前块,得到多个色度预测值;
对所述多个色度预测值进行加权处理,得到所述当前块的色度预测值。
10.如权利要求9所述的视频解码方法,其特征在于,所述至少一个跨分量预测模型通过以下步骤被确定:
解析所述比特流中的指示针对当前块是否使用多个跨分量预测模型的组合的标志;
基于所述标志确定所述至少一个跨分量预测模型。
11.如权利要求9所述的视频解码方法,其特征在于,所述至少一个跨分量预测模型通过以下步骤被确定:
确定针对当前块的多个跨分量预测模型候选和与所述当前块相邻的模板区域,其中,所述多个跨分量预测模型候选包括单个跨分量预测模型和/或多个跨分量预测模型的组合;
将每个跨分量预测模型候选分别应用于所述模板区域中的第一区域中的样点,导出每个跨分量预测模型候选的滤波器系数;
将每个跨分量预测模型候选的滤波器系数应用于所述模板区域中的第二区域中的样点,确定每个跨分量预测模型候选的误差值;
基于每个跨分量预测模型候选的误差值,从所述多个跨分量预测模型候选中选择一个跨分量预测模型候选,作为应用于所述当前块的跨分量预测模型。
12.一种视频解码方法,其特征在于,包括:
接收包括多个块的比特流,其中,每个块包括亮度样点块和色度样点块;
解析所述比特流中的指示用于卷积跨分量模型的滤波器的信息,其中,所述信息中包括指示所述滤波器的滤波器形状的信息,其中,所述滤波器形状用于导出所述滤波器中的非线性项的值,所述非线性项的值是基于应用于所述滤波器的空间分量亮度样点中的至少一个亮度样点确定的;
将与指示的滤波器对应的卷积跨分量模型应用于所述空间分量亮度样点来预测对应的色度样点。
13.如权利要求12所述视频解码方法,其特征在于,所述将确定的卷积跨分量模型应用于所述空间分量亮度样点来预测对应的色度样点,包括:
计算所述空间分量亮度样点在预定方向上的梯度值;
将所述卷积跨分量模型应用于所述空间分量亮度样点在预定方向上的梯度值来预测对应的色度样点。
14.如权利要求13所述的视频解码方法,其特征在于,所述计算所述空间分量亮度样点在预定方向上的梯度值,包括:
针对每个空间分量亮度样点,从预定梯度滤波器候选中选择梯度滤波器;
将选择的梯度滤波器应用于对应的空间分量亮度样点,得到该空间分量亮度样点的所述梯度值。
15.如权利要求12所述的视频解码方法,其特征在于,所述空间分量亮度样点为非下采样亮度样点。
16.一种视频编码方法,其特征在于,所述视频编码方法包括:
将视频图片划分为多个块,每个块包括亮度样点块和色度样点块;
获取与当前块中的当前色度样点对应的重建亮度样点;
基于所述重建亮度样点与所述重建亮度样点的至少一个相邻亮度样点之间的相关性,对所述重建亮度样点进行分类,其中,所述重建亮度样点被分类到多个组中的一个组;
对所述重建亮度样点应用与分类到的组对应的跨分量预测模型来预测所述当前色度样点,其中,对不同组的重建亮度样点应用不同的跨分量预测模型。
17.一种视频编码方法,其特征在于,所述视频编码方法包括:
将视频图片划分为多个块,每个块包括亮度样点块和色度样点块;
确定用于卷积跨分量模型的滤波器的滤波器形状,其中,所述滤波器形状用于导出所述滤波器中的非线性项的值,所述非线性项的值是基于应用于所述滤波器的空间分量亮度样点中的至少一个亮度样点确定的;
将确定的卷积跨分量模型应用于所述空间分量亮度样点来预测对应的色度样点。
18.一种电子设备,其特征在于,包括:
至少一个处理器;
至少一个存储计算机可执行指令的存储器,
其中,所述计算机可执行指令在被所述至少一个处理器运行时,促使所述至少一个处理器执行如权利要求1到15中的任一权利要求所述的视频解码方法或如权利要求16到17中的任一权利要求所述的视频编码方法。
19.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令被至少一个处理器运行时,促使所述至少一个处理器执行如权利要求1到15中的任一权利要求所述的视频解码方法来处理所接收的比特流并将处理后的比特流存储在所述计算机可读存储介质中,或执行如权利要求16到17中的任一权利要求所述的视频编码方法以产生比特流并将产生的比特流存储在所述计算机可读存储介质中。
20.一种存储有比特流的计算机可读存储介质,所述比特流由权利要求16到17中任一权利要求所述的视频编码方法产生,待通过权利要求1到15中任一权利要求所述的视频解码方法进行解码。
21.一种计算机程序产品,包括计算机指令,所述计算机指令被至少一个处理器执行时实现如权利要求1到15中的任一权利要求所述的视频解码方法或如权利要求16到17中的任一权利要求所述的视频编码方法。
CN202311028752.4A 2022-08-16 2023-08-15 视频解码或编码方法、电子设备、存储介质及程序产品 Pending CN117596393A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202263398489P 2022-08-16 2022-08-16
US63/398,489 2022-08-16

Publications (1)

Publication Number Publication Date
CN117596393A true CN117596393A (zh) 2024-02-23

Family

ID=89913973

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311028752.4A Pending CN117596393A (zh) 2022-08-16 2023-08-15 视频解码或编码方法、电子设备、存储介质及程序产品

Country Status (1)

Country Link
CN (1) CN117596393A (zh)

Similar Documents

Publication Publication Date Title
CN110476424B (zh) 一种视频编解码方法及装置
US10841577B2 (en) Method and apparatus for video encoding and video decoding based on neural network
EP3979647A1 (en) Coding/decoding method and device, and storage medium
CN116320496A (zh) 用于滤波的方法和装置
KR102359415B1 (ko) 비디오 코딩을 위한 인터 예측 장치 및 방법을 위한 보간 필터
HUE034631T2 (en) Adaptive partition coding
CN114073087A (zh) 基于矩阵的内预测
JP7486595B2 (ja) ビデオフィルタリングのための方法及び装置
WO2019204234A1 (en) Unequal weight planar motion vector derivation
JP2024069438A (ja) イントラ予測を用いた符号化
CN114747212A (zh) 用于视频滤波中的偏移的方法和设备
US9788000B2 (en) Method and apparatus for inter color component prediction
CN117596393A (zh) 视频解码或编码方法、电子设备、存储介质及程序产品
CN116391355A (zh) 视频编码中边界处理的方法和设备
WO2024026098A1 (en) Method and apparatus for cross-component prediction for video coding
WO2024107967A2 (en) Method and apparatus for cross-component prediction for video coding
WO2023183510A1 (en) Method and apparatus for cross-component prediction for video coding
US20230199196A1 (en) Methods and Apparatuses of Frequency Domain Mode Decision in Video Encoding Systems
JP7498297B2 (ja) ビデオフィルタリングのための方法および装置
WO2019190342A1 (en) Image processing apparatus and method
WO2024035939A1 (en) Method and apparatus for cross-component prediction for video coding
WO2024006409A1 (en) Method and apparatus for cross-component prediction for video coding
WO2024072945A1 (en) Method and apparatus for cross-component prediction for video coding
WO2023250115A1 (en) Method and apparatus for cross-component prediction for video coding
WO2024081291A1 (en) Method and apparatus for cross-component prediction for video coding

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