CN118975244A - 编解码方法、装置、编码设备、解码设备以及存储介质 - Google Patents
编解码方法、装置、编码设备、解码设备以及存储介质 Download PDFInfo
- Publication number
- CN118975244A CN118975244A CN202280094569.1A CN202280094569A CN118975244A CN 118975244 A CN118975244 A CN 118975244A CN 202280094569 A CN202280094569 A CN 202280094569A CN 118975244 A CN118975244 A CN 118975244A
- Authority
- CN
- China
- Prior art keywords
- color component
- current block
- value
- prediction
- prediction block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/186—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Color Television Systems (AREA)
- Image Processing (AREA)
Abstract
本申请实施例公开了一种编解码方法、装置、编码设备、解码设备以及存储介质,该方法包括:确定当前块的第一颜色分量的参考样值;根据当前块的第一颜色分量的参考样值,确定加权系数;根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块;其中,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量;对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块;根据第二预测块,确定当前块的第二颜色分量采样点的重建值。这样,不仅可以提高色度预测的准确性,节省码率,而且还能够提升编解码性能。
Description
本申请实施例涉及视频编解码技术领域,尤其涉及一种编解码方法、装置、编码设备、解码设备以及存储介质。
随着人们对视频显示质量要求的提高,高清和超高清视频等新视频应用形式应运而生。国际标组织ISO/IEC和ITU-T的联合视频研究组(Joint Video Exploration Team,JVET)制定了下一代视频编码标准H.266/多功能视频编码(Versatile Video Coding,VVC)。
H.266/VVC中包含了颜色分量间预测技术。然而,H.266/VVC的颜色分量间预测技术计算得到的编码块的预测值与原始值之间存在较大偏差,这导致预测准确度低,造成解码视频的质量下降,降低了编码性能。
发明内容
本申请实施例提供一种编解码方法、装置、编码设备、解码设备以及存储介质,不仅可以提高色度预测的准确性,节省码率,而且还能够提升编解码性能。
本申请实施例的技术方案可以如下实现:
第一方面,本申请实施例提供了一种解码方法,包括:
确定当前块的第一颜色分量的参考样值;
根据当前块的第一颜色分量的参考样值,确定加权系数;
根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块;其中,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量;
对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块;
根据第二预测块,确定当前块的第二颜色分量采样点的重建值。
第二方面,本申请实施例提供了一种编码方法,包括:
确定当前块的第一颜色分量的参考样值;
根据当前块的第一颜色分量的参考样值,确定加权系数;
根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块;其中,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量;
对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块;
根据第二预测块,确定当前块的第二颜色分量采样点的预测差值。
第三方面,本申请实施例提供了一种编码装置,包括第一确定单元、第一预测单元和第一滤波单元;其中,
第一确定单元,配置为确定当前块的第一颜色分量的参考样值;以及根据当前块的第一颜色分量的参考样值,确定加权系数;
第一预测单元,配置为根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块;其中,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量;
第一滤波单元,配置为对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块;
第一确定单元,还配置为根据第二预测块,确定当前块的第二颜色分量采样点的预测差值。
第四方面,本申请实施例提供了一种编码设备,包括第一存储器和第一处理器;其中,
第一存储器,用于存储能够在第一处理器上运行的计算机程序;
第一处理器,用于在运行计算机程序时,执行如第二方面所述的方法。
第五方面,本申请实施例提供了一种解码装置,包括第二确定单元、第二预测单元和第二滤波单元;其中,
第二确定单元,配置为确定当前块的第一颜色分量的参考样值;以及根据当前块的第一颜色分量的 参考样值,确定加权系数;
第二预测单元,配置为根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块;其中,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量;
第二滤波单元,配置为对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块;
第二确定单元,还配置为根据第二预测块,确定当前块的第二颜色分量采样点的重建值。
第六方面,本申请实施例提供了一种解码设备,包括第二存储器和第二处理器;其中,
第二存储器,用于存储能够在第二处理器上运行的计算机程序;
第二处理器,用于在运行计算机程序时,执行如第一方面所述的方法。
第七方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,所述计算机程序被执行时实现如第一方面所述的方法、或者实现如第二方面所述的方法。
本申请实施例提供了一种编解码方法、装置、编码设备、解码设备以及存储介质,无论是编码端还是解码端,通过确定当前块的第一颜色分量的参考样值;根据当前块的第一颜色分量的参考样值,确定加权系数;根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块;其中,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量;对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块。这样,在编码端根据第二预测块,能够确定当前块的第二颜色分量采样点的预测差值;使得在解码端,根据第二预测块可以确定出当前块的第二颜色分量采样点的重建值。如此,利用当前块相邻的参考像素与当前块内的颜色分量信息,不仅充分考虑了已有的颜色分量信息,使得在不损失亮度信息的基础上能够建立更准确的非线性映射模型对每个色度分量的参考样值分配权重进行加权预测;而且对于第一滤波处理还充分考虑了不同的颜色格式信息,根据不同的颜色格式信息进行色度和/或亮度的采样滤波,能够始终保证色度分量和亮度分量的空间分辨率一致,这样既可以保证已有亮度信息的准确性,又可以在利用未损失的亮度信息进行色度分量预测时,能够提高色度预测的准确性,节省码率,同时提升编解码性能。
图1为一种有效相邻区域的分布示意图;
图2为一种不同预测模式下选择区域的分布示意图;
图3为一种模型参数推导方案的流程示意图;
图4A为本申请实施例提供的一种编码器的组成框图示意图;
图4B为本申请实施例提供的一种解码器的组成框图示意图;
图5为本申请实施例提供的一种解码方法的流程示意图一;
图6A为本申请实施例提供的一种当前块的参考区域示意图;
图6B为本申请实施例提供的一种参考色度信息的上采样插值示意图;
图7为本申请实施例提供的一种WCP模式与其他预测模式的加权预测示意图;
图8为本申请实施例提供的一种基于权重的色度预测的框架示意图;
图9为本申请实施例提供的一种解码方法的流程示意图二;
图10为本申请实施例提供的一种解码方法的流程示意图三;
图11为本申请实施例提供的一种解码方法的流程示意图四;
图12为本申请实施例提供的一种上采样插值的处理过程示意图一;
图13为本申请实施例提供的一种上采样插值的处理过程示意图二;
图14为本申请实施例提供的一种上采样插值的权重取值示意图;
图15为本申请实施例提供的一种上采样插值的处理过程示意图三;
图16为本申请实施例提供的一种解码方法的流程示意图五;
图17为本申请实施例提供的一种解码方法的流程示意图六;
图18为本申请实施例提供的一种编码方法的流程示意图一;
图19为本申请实施例提供的一种编码方法的流程示意图二;
图20为本申请实施例提供的一种编码装置的组成结构示意图;
图21为本申请实施例提供的一种编码设备的具体硬件结构示意图;
图22为本申请实施例提供的一种解码装置的组成结构示意图;
图23为本申请实施例提供的一种解码设备的具体硬件结构示意图;
图24为本申请实施例提供的一种编解码系统的组成结构示意图。
为了能够更加详尽地了解本申请实施例的特点与技术内容,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本申请实施例。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。还需要指出,本申请实施例所涉及的术语“第一\第二\第三”仅是用于区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
在视频图像中,一般采用第一颜色分量、第二颜色分量和第三颜色分量来表征编码块(Coding Block,CB);其中,这三个颜色分量分别为一个亮度分量、一个蓝色色度分量和一个红色色度分量。示例性地,亮度分量通常使用符号Y表示,蓝色色度分量通常使用符号Cb或者U表示,红色色度分量通常使用符号Cr或者V表示;这样,视频图像可以用YCbCr格式表示,也可以用YUV格式表示;除此之外,视频图像也可以是RGB格式、YCgCo格式等,本申请实施例不作任何限定。
可以理解,在当前的视频图像或者视频编解码过程中,对于跨分量预测技术,主要包括分量间线性模型(Cross-component Linear Model,CCLM)预测模式和多方向线性模型(Multi-Directional Linear Model,MDLM)预测模式,无论是根据CCLM预测模式推导的模型参数,还是根据MDLM预测模式推导的模型参数,其对应的预测模型均可以实现第一颜色分量到第二颜色分量、第二颜色分量到第一颜色分量、第一颜色分量到第三颜色分量、第三颜色分量到第一颜色分量、第二颜色分量到第三颜色分量、或者第三颜色分量到第二颜色分量等颜色分量间的预测。
以第一颜色分量到第二颜色分量的预测为例,假定第一颜色分量为亮度分量,第二颜色分量为色度分量,为了减少亮度分量与色度分量之间的冗余,在VVC中使用CCLM预测模式,即根据同一编码块的亮度重建值来构造色度的预测值,如:Pred
C(i,j)=α·Rec
L(i,j)+β。
其中,i,j表示编码块中待预测像素的位置坐标,i表示水平方向,j表示竖直方向;Pred
C(i,j)表示编码块中位置坐标(i,j)的待预测像素对应的色度预测值,Rec
L(i,j)表示同一编码块中(经过下采样的)位置坐标(i,j)的待预测像素对应的亮度重建值。另外,α和β表示模型参数,可通过参考像素推导得到。
对于编码块而言,其相邻区域可以分为五部分:左侧相邻区域、上侧相邻区域、左下侧相邻区域、左上侧相邻区域和右上侧相邻区域。在H.266/VVC中包括三种跨分量线性模型预测模式,分别为:左侧及上侧相邻的帧内CCLM预测模式(可以用INTRA_LT_CCLM表示)、左侧及左下侧相邻的帧内CCLM预测模式(可以用INTRA_L_CCLM表示)和上侧及右上侧相邻的帧内CCLM预测模式(可以用INTRA_T_CCLM表示)。在这三种预测模式中,每种预测模式都可以选取预设数量(比如4个)的参考像素用于模型参数α和β的推导,而这三种预测模式的最大区别在于用于推导模型参数α和β的参考像素对应的选择区域是不同的。
具体地,针对色度分量对应的编码块尺寸为W×H,假定参考像素对应的上侧选择区域为W′,参考像素对应的左侧选择区域为H′;这样,
对于INTRA_LT_CCLM模式,参考像素可以在上侧相邻区域和左侧相邻区域进行选取,即W′=W,H′=H;
对于INTRA_L_CCLM模式,参考像素可以在左侧相邻区域和左下侧相邻区域进行选取,即H′=W+H,并设置W′=0;
对于INTRA_T_CCLM模式,参考像素可以在上侧相邻区域和右上侧相邻区域进行选取,即W′=W+H,并设置H′=0。
需要注意的是,在VTM中,对于右上侧相邻区域内最多只存储了W范围的像素点,对于左下侧相邻区域内最多只存储了H范围的像素点。虽然INTRA_L_CCLM模式和INTRA_T_CCLM模式的选择区域的范围定义为W+H,但是在实际应用中,INTRA_L_CCLM模式的选择区域将限制在H+H之内,INTRA_T_CCLM模式的选择区域将限制在W+W之内;这样,
对于INTRA_L_CCLM模式,参考像素可以在左侧相邻区域和左下侧相邻区域进行选取,H′=min{W+H,H+H};
对于INTRA_T_CCLM模式,参考像素可以在上侧相邻区域和右上侧相邻区域进行选取,W′=min{W+H,W+W}。
参见图1,其示出了一种有效相邻区域的分布示意图。在图1中,左侧相邻区域、左下侧相邻区域、 上侧相邻区域和右上侧相邻区域都是有效的;另外,灰色填充的块即为编码块中位置坐标为(i,j)的待预测像素。
如此,在图1的基础上,针对三种预测模式的选择区域如图2所示。其中,在图2中,(a)表示了INTRA_LT_CCLM模式的选择区域,包括了左侧相邻区域和上侧相邻区域;(b)表示了INTRA_L_CCLM模式的选择区域,包括了左侧相邻区域和左下侧相邻区域;(c)表示了INTRA_T_CCLM模式的选择区域,包括了上侧相邻区域和右上侧相邻区域。这样,在确定出三种预测模式的选择区域之后,可以在选择区域内进行用于模型参数推导的像素选取。如此选取到的像素可以称为参考像素,通常参考像素的个数为4个;而且对于一个尺寸确定的W×H的编码块,其参考像素的位置一般是确定的。
在获取到预设数量的参考像素之后,目前是按照图3所示的模型参数推导方案的流程示意图进行色度预测。根据图3所示的流程,假定预设数量为4个,该流程可以包括:
S301:在选择区域中获取参考像素。
S302:判断有效参考像素的个数。
S303:若有效参考像素的个数为0,则将模型参数α设置为0,β设置为默认值。
S304:色度预测值填充为默认值。
S305:若有效参考像素的个数为4,则经过比较获得亮度分量中较大值的两个参考像素和较小值的两个参考像素。
S306:计算较大值对应的均值点和较小值对应的均值点。
S307:根据两个均值点推导得到模型参数α和β。
S308:使用α和β所构建的预测模型进行色度预测。
需要说明的是,在VVC中,有效参考像素为0的这一步骤是根据相邻区域的有效性进行判断的。
还需要说明的是,利用“两点确定一条直线”原则来构建预测模型,这里的两点可以称为拟合点。目前的技术方案中,在获取到4个参考像素之后,经过比较获得亮度分量中较大值的两个参考像素和较小值的两个参考像素;然后根据较大值的两个参考像素,求取一均值点(可以用mean
max表示),根据较小值的两个参考像素,求取另一均值点(可以用mean
min表示),即可得到两个均值点mean
max和mean
min;再将mean
max和mean
min作为两个拟合点,能够推导出模型参数(用α和β表示);最后根据α和β构建出预测模型,并根据该预测模型进行色度分量的预测处理。
然而,在相关技术中,针对每个编码块都使用简单的线性模型Pred
C(i,j)=α·Rec
L(i,j)+β来预测色度分量,并且每个编码块任意位置像素都使用相同的模型参数α和β进行预测。这样会导致以下缺陷:一方面,不同内容特性的编码块都利用简单线性模型进行亮度到色度的映射,以此实现色度预测,但是并非任意编码块内的亮度到色度的映射函数都可以准确由此简单线性模型拟合,这导致部分编码块预测效果不够准确;另一方面,在预测过程中,编码块内不同位置的像素点均使用相同的模型参数α和β,编码块内不同位置的预测准确性的同样存在较大差异;又一方面,在CCLM技术的预测过程中,在YUV422、YUV411、YUV420等具有色度亚采样格式视频下获取相邻区域的参考亮度像素和当前块内的重建亮度像素时需要对亮度重建值进行下采样,但是人眼对亮度信号很敏感,亮度下采样后造成的亮度信息损失会影响亮度到色度映射模型的准确性,导致色度预测的准确性下降。简单来说,目前的CCLM技术下部分编码块的预测值与原始值之间存在较大偏差,导致预测准确度低,造成质量下降,进而降低了编解码效率。
基于此,本申请实施例提供了一种编码方法,通过确定当前块的第一颜色分量的参考样值;根据当前块的第一颜色分量的参考样值,确定加权系数;根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块;其中,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量;对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块;根据第二预测块,确定当前块的第二颜色分量采样点的预测差值。
本申请实施例还提供了一种解码方法,通过确定当前块的第一颜色分量的参考样值;根据当前块的第一颜色分量的参考样值,确定加权系数;根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块;其中,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量;对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块;根据第二预测块,确定当前块的第二颜色分量采样点的重建值。
这样,利用当前块相邻的参考像素与当前块内的颜色分量信息,不仅充分考虑了已有的颜色分量信息,使得在不损失亮度信息的基础上能够建立更准确的非线性映射模型对每个色度分量的参考样值分配权重进行加权预测;而且对于第一滤波处理还充分考虑了不同的颜色格式信息,根据不同的颜色格式信息进行色度和/或亮度的采样滤波,能够始终保证色度分量和亮度分量的空间分辨率一致,这样既可以保证已有亮度信息的准确性,又可以在利用未损失的亮度信息进行色度分量预测时,基于准确的亮度信 息有利于提高非线性映射模型的准确性和稳定性,从而能够提高色度预测的准确性,节省码率,提升编解码效率,进而提升编解码性能。
下面将结合附图对本申请各实施例进行详细说明。
参见图4A,其示出了本申请实施例提供的一种编码器的组成框图示意图。如图4A所示,编码器(具体为“视频编码器”)100可以包括变换与量化单元101、帧内估计单元102、帧内预测单元103、运动补偿单元104、运动估计单元105、反变换与反量化单元106、滤波器控制分析单元107、滤波单元108、编码单元109和解码图像缓存单元110等,其中,滤波单元108可以实现去方块滤波及样本自适应缩进(Sample Adaptive 0ffset,SAO)滤波,编码单元109可以实现头信息编码及基于上下文的自适应二进制算术编码(Context-based Adaptive Binary Arithmetic Coding,CABAC)。针对输入的原始视频信号,通过编码树块(Coding Tree Unit,CTU)的划分可以得到一个视频编码块,然后对经过帧内或帧间预测后得到的残差像素信息通过变换与量化单元101对该视频编码块进行变换,包括将残差信息从像素域变换到变换域,并对所得的变换系数进行量化,用以进一步减少比特率;帧内估计单元102和帧内预测单元103是用于对该视频编码块进行帧内预测;明确地说,帧内估计单元102和帧内预测单元103用于确定待用以编码该视频编码块的帧内预测模式;运动补偿单元104和运动估计单元105用于执行所接收的视频编码块相对于一或多个参考帧中的一或多个块的帧间预测编码以提供时间预测信息;由运动估计单元105执行的运动估计为产生运动向量的过程,所述运动向量可以估计该视频编码块的运动,然后由运动补偿单元104基于由运动估计单元105所确定的运动向量执行运动补偿;在确定帧内预测模式之后,帧内预测单元103还用于将所选择的帧内预测数据提供到编码单元109,而且运动估计单元105将所计算确定的运动向量数据也发送到编码单元109;此外,反变换与反量化单元106是用于该视频编码块的重构建,在像素域中重构建残差块,该重构建残差块通过滤波器控制分析单元107和滤波单元108去除方块效应伪影,然后将该重构残差块添加到解码图像缓存单元110的帧中的一个预测性块,用以产生经重构建的视频编码块;编码单元109是用于编码各种编码参数及量化后的变换系数,在基于CABAC的编码算法中,上下文内容可基于相邻编码块,可用于编码指示所确定的帧内预测模式的信息,输出该视频信号的码流;而解码图像缓存单元110是用于存放重构建的视频编码块,用于预测参考。随着视频图像编码的进行,会不断生成新的重构建的视频编码块,这些重构建的视频编码块都会被存放在解码图像缓存单元110中。
参见图4B,其示出了本申请实施例提供的一种解码器的组成框图示意图。如图4B所示,解码器(具体为“视频解码器”)200包括解码单元201、反变换与反量化单元202、帧内预测单元203、运动补偿单元204、滤波单元205和解码图像缓存单元206等,其中,解码单元201可以实现头信息解码以及CABAC解码,滤波单元205可以实现去方块滤波以及SAO滤波。输入的视频信号经过图4A的编码处理之后,输出该视频信号的码流;该码流输入解码器200中,首先经过解码单元201,用于得到解码后的变换系数;针对该变换系数通过反变换与反量化单元202进行处理,以便在像素域中产生残差块;帧内预测单元203可用于基于所确定的帧内预测模式和来自当前帧或图片的先前经解码块的数据而产生当前视频解码块的预测数据;运动补偿单元204是通过剖析运动向量和其他关联语法元素来确定用于视频解码块的预测信息,并使用该预测信息以产生正被解码的视频解码块的预测性块;通过对来自反变换与反量化单元202的残差块与由帧内预测单元203或运动补偿单元204产生的对应预测性块进行求和,而形成解码的视频块;该解码的视频信号通过滤波单元205以便去除方块效应伪影,可以改善视频质量;然后将经解码的视频块存储于解码图像缓存单元206中,解码图像缓存单元206存储用于后续帧内预测或运动补偿的参考图像,同时也用于视频信号的输出,即得到了所恢复的原始视频信号。
需要说明的是,本申请实施例的方法主要应用在如图4A所示的帧内预测单元103部分和如图4B所示的帧内预测单元203部分。也就是说,本申请实施例既可以应用于编码器,也可以应用于解码器,甚至还可以同时应用于编码器和解码器,但是本申请实施例不作具体限定。
还需要说明的是,当应用于帧内预测单元103部分时,“当前块”具体是指当前待进行帧内预测的编码块;当应用于帧内预测单元203部分时,“当前块”具体是指当前待进行帧内预测的解码块。
在本申请的一实施例中,参见图5,其示出了本申请实施例提供的一种解码方法的流程示意图一。如图5所示,该方法可以包括:
S501:确定当前块的第一颜色分量的参考样值。
需要说明的是,本申请实施例的解码方法应用于解码装置,或者集成有该解码装置的解码设备(也可简称为“解码器”)。另外,本申请实施例的解码方法具体可以是指一种帧内预测方法,更具体地,是一种基于权重的色度预测(Weight-based Chroma Prediction,WCP)方法。
在本申请实施例中,视频图像可以划分为多个解码块,每个解码块可以包括第一颜色分量、第二颜色分量和第三颜色分量,而这里的当前块是指视频图像中当前待进行帧内预测的解码块。另外,假定当前块进行第一颜色分量的预测,而且第一颜色分量为亮度分量,即待预测分量为亮度分量,那么当前块也可以称为亮度预测块;或者,假定当前块进行第二颜色分量的预测,而且第二颜色分量为色度分量,即待预测分量为色度分量,那么当前块也可以称为色度预测块。
还需要说明的是,在本申请实施例中,当前块的参考信息可以包括有当前块的相邻区域中的第一颜色分量采样点的取值和当前块的相邻区域中的第二颜色分量采样点的取值,这些采样点(Sample)可以是根据当前块的相邻区域中的已解码像素确定的。在一些实施例中,当前块的相邻区域可以包括下述至少之一:上侧相邻区域、右上侧相邻区域、左侧相邻区域和左下侧相邻区域。
在这里,上侧相邻区域和右上侧相邻区域整体可以看作上方区域,左侧相邻区域和左下侧相邻区域整体可以看作左方区域;除此之外,相邻区域还可以包括左上方区域,详见图6所示。其中,在对当前块进行第二颜色分量的预测时,当前块的上方区域、左方区域和左上方区域作为相邻区域均可被称为当前块的参考区域,而且参考区域中的像素都是已解码的参考像素。
还需要说明的是,在本申请实施例中,当前块的相邻区域可以包括与当前块相邻的多行或者多列。例如,左方区域可以包括一列或者多列,上方区域可以包括一行或者多行,甚至对于行或者列的数量增多或者减少,本申请实施例均不作任何限定。
在一些实施例中,确定当前块的第一颜色分量的参考样值(Sample),可以包括:根据当前块的相邻区域中的第一颜色分量采样点的取值,确定当前块的第一颜色分量的参考样值。
需要说明的是,在本申请实施例中,当前块的参考像素可以是指与当前块相邻的参考像素点,也可称为当前块的相邻区域中的第一颜色分量采样点、第二颜色分量采样点,用Neighboring Sample或Reference Sample表示。其中,这里的相邻可以是空间相邻,但是并不局限于此。例如,相邻也可以是时域相邻、空间与时域相邻,甚至当前块的参考像素还可以是对空间相邻、时域相邻、空间和时域相邻的参考像素点进行某种处理后得到的参考像素等等,本申请实施例不作任何限定。
还需要说明的是,在本申请实施例中,第一颜色分量为亮度分量,第二颜色分量为色度分量。那么,当前块的相邻区域中的第一颜色分量采样点的取值表示为当前块的参考像素对应的参考亮度信息,当前块的相邻区域中的第二颜色分量采样点的取值则表示为当前块的参考像素对应的参考色度信息。
还需要说明的是,在本申请实施例中,从当前块的相邻区域中确定第一颜色分量采样点的取值,这里的相邻区域可以是仅包括上侧相邻区域,或者仅包括左侧相邻区域,也可以是包括上侧相邻区域和右上侧相邻区域,或者包括左侧相邻区域和左下侧相邻区域,或者包括上侧相邻区域和左侧相邻区域,或者甚至还可以包括上侧相邻区域、右上侧相邻区域和左侧相邻区域等等,本申请实施例不作任何限定。
还需要说明的是,在本申请实施例中,相邻区域也可以是根据当前块的预测模式进行确定。在一种具体的实施例中,可以包括:
若当前块的预测模式为水平模式,则根据上侧相邻区域和/或右上侧相邻区域中的像素,确定参考像素;
若当前块的预测模式为垂直模式,则根据左侧相邻区域和/或左下侧相邻区域中的像素,确定参考像素。
示例性地,如果当前块的预测模式是水平模式,那么色度分量的预测中相邻区域可以只选取上侧相邻区域和/或右上侧相邻区域;如果当前块的预测模式是垂直模式,那么色度分量预测中相邻区域可以只选取左侧相邻区域和/或左下侧相邻区域。
进一步地,在一些实施例中,对于第一颜色分量采样点的取值的确定,该方法还可以包括:对相邻区域中的第一颜色分量采样点进行筛选处理,确定第一颜色分量采样点的取值。
需要说明的是,在相邻区域中的第一颜色分量采样点中,可能会存在部分不重要的采样点(例如,这些采样点的相关性较差)或者部分异常的采样点,为了保证预测的准确性,需要将这些采样点剔除掉,以便得到有效的第一颜色分量采样点的取值。也就是说,在本申请实施例中,根据当前块的相邻区域中的第一颜色分量采样点,组成第一采样点集合;那么可以对第一采样点集合进行筛选处理,确定第一颜色分量采样点的取值。
在一种具体的实施例中,所述对相邻区域中的第一颜色分量采样点进行筛选处理,确定第一颜色分量采样点的取值,可以包括:
基于相邻区域中的第一颜色分量采样点的位置和/或颜色分量强度,确定待选择采样点位置;
根据待选择采样点位置,从相邻区域中确定第一颜色分量采样点的取值。
需要说明的是,在本申请实施例中,颜色分量强度可以用颜色分量信息来表示,比如参考亮度信息、参考色度信息等;这里,颜色分量信息的值越大,表明了颜色分量强度越高。这样,针对相邻区域中的 第一颜色分量采样点进行筛选,可以是根据采样点的位置来进行筛选的,也可以是根据颜色分量强度来进行筛选的,从而根据筛选得到的采样点确定出有效的第一颜色分量采样点,进而确定出第一颜色分量采样点的取值。
在一些实施例中,所述确定当前块的第一颜色分量的参考样值,还可以包括:
对第一颜色分量采样点的取值进行第二滤波处理,得到当前块的第一颜色分量的滤波相邻样值;
根据当前块的第一颜色分量的滤波相邻样值,确定当前块的第一颜色分量的参考样值。
在本申请实施例中,当前块的第一颜色分量的滤波相邻样值的数量大于第一颜色分量采样点的取值的数量。
在本申请实施例中,第二滤波处理可以为上采样滤波处理。其中,第一颜色分量为亮度分量,为了保证参考亮度信息不损失,这里可以是参考亮度信息保持不变,也可以是对参考亮度信息进行上采样滤波处理。示例性地,如果当前块的尺寸大小为2M×2N,参考亮度信息为2M+2N个,那么在经过上采样滤波之后,可以变换至4M+4N个。
在一些实施例中,所述确定当前块的第一颜色分量的参考样值,还可以包括:基于当前块中第一参考颜色分量采样点的重建值,确定当前块的第一颜色分量的参考样值。
需要说明的是,在本申请实施例中,第一参考颜色分量可以为亮度分量;那么,当前块中第一参考颜色分量采样点的重建值即为当前块的重建亮度信息。
进一步地,在一些实施例中,所述确定当前块的第一颜色分量的参考样值,还可以包括:
对当前块中第一参考颜色分量采样点的重建值进行第三滤波处理,得到当前块中第一参考颜色分量采样点的滤波样值;
根据当前块中第一参考颜色分量采样点的滤波样值,确定当前块的第一颜色分量的参考样值。
在本申请实施例中,当前块中第一参考颜色分量采样点的滤波样值的数量大于当前块中第一参考颜色分量采样点的重建值的数量。
在本申请实施例中,第三滤波处理可以为上采样滤波处理。其中,第一参考颜色分量为亮度分量,为了保证当前块内的重建亮度信息不损失,获得更精确的色度预测值,这里可以是当前块内的重建亮度信息保持不变,也可以是对当前块内的重建亮度信息进行上采样滤波处理。示例性地,如果当前块内的重建亮度信息的数量为2M×2N,那么在经过上采样滤波之后,可以变换至4M×4N。
需要说明的是,在本申请实施例中,考虑到在加权预测之前对参考信息的滤波处理,可以是仅对参考亮度信息进行滤波处理,也可以是仅对重建亮度信息进行滤波处理,还可以是对参考亮度信息和重建亮度信息均进行滤波处理,这里并不作任何限定。那么对于亮度差的计算,可以是参考亮度信息和重建亮度信息之差的绝对值,也可以是滤波处理后的参考亮度信息和重建亮度信息之差的绝对值,还可以是参考亮度信息和滤波处理后的重建亮度信息之差的绝对值,甚至还可以是滤波处理后的参考亮度信息和滤波处理后的重建亮度信息之差的绝对值。
还需要说明的是,在本申请实施例中,当前块的第一颜色分量的参考样值也可以设置为亮度差信息。因此,在一种可能的实现方式中,当前块的第一颜色分量的参考样值设置为第一颜色分量采样点的取值与第一参考颜色分量采样点的重建值之差的绝对值。
在另一种可能的实现方式中,当前块的第一颜色分量的参考样值设置为第一颜色分量的滤波相邻样值与第一参考颜色分量采样点的重建值之差的绝对值。
在又一种可能的实现方式中,当前块的第一颜色分量的参考样值设置为第一颜色分量的滤波相邻样值与第一参考颜色分量采样点的滤波样值之差的绝对值。
在再一种可能的实现方式中,当前块的第一颜色分量的参考样值设置为第一颜色分量采样点的取值与第一参考颜色分量采样点的滤波样值之差的绝对值。
也就是说,在保持亮度信息不损失的情况下,可以对当前块的相邻区域中的参考亮度信息进行上采样滤波处理,也可以对当前块内的重建亮度信息进行上采样滤波处理,还可以对这两者都进行上采样滤波处理,甚至还可以对这两者都不进行上采样滤波处理,然后根据不同组合来确定亮度差信息,将亮度差信息作为当前块的第一颜色分量的参考样值。
S502:根据当前块的第一颜色分量的参考样值,确定加权系数。
需要说明的是,在本申请实施例中,所述根据当前块的第一颜色分量的参考样值,确定加权系数,可以包括:
确定在预设映射关系下第一颜色分量的参考样值对应的取值;
将加权系数设置为等于取值。
可以理解地,在本申请实施例中,第一颜色分量的参考样值可以为当前块的第一颜色分量的滤波相邻样值与当前块中第一参考颜色分量采样点的滤波样值之差的绝对值。其中,第一参考颜色分量为第一 颜色分量,且第一颜色分量是与本申请实施例待预测的第二颜色分量不同的颜色分量。
示例性地,假定第一颜色分量为色度分量,第二颜色分量为亮度分量,本申请实施例主要是对当前块中待预测像素的色度分量进行预测。首先选取当前块中的至少一个待预测像素,分别计算其重建色度与相邻区域中的参考色度之间的亮度差(用|ΔC
k|表示);不同位置的待预测像素在相邻区域的色度差存在差异,色度差最小的参考像素位置会跟随当前块中待预测像素的变化,通常色度差的大小代表色度之间的相近程度。如果|ΔC
k|较小,表明色度值的相似性比较强,对应的加权系数(用w
k表示)可以赋予较大的权重;反之,如果|ΔC
k|较大,表明色度值的相似性比较弱,w
k可以赋予较小的权重。也就是说,w
k与|ΔC
k|之间的关系近似呈反比。这样,根据|ΔC
k|可以建立预设的映射关系,如下所示,
w
k=f(|ΔC
k|) (1)
在这里,以式(1)为例,|ΔC
k|表示第一颜色分量的参考样值,f(|ΔC
k|)表示在预设映射关系下第一颜色分量的参考样值对应的取值,w
k表示加权系数,即将w
k设置为等于f(|ΔC
k|)。
还需要说明的是,在本申请实施例中,如果第二颜色分量的参考样值的数量为N个,那么加权系数的数量也为N个;其中,N个加权系数之和等于1,且每一个加权系数均为大于或等于0且小于或等于1的值,即0≤w
k≤1。但是需要注意的是,“N个加权系数之和等于1”仅属于理论概念;在实际的定点化实现过程中,加权系数的绝对值可以大于1。
可以理解地,在概率论和相关领域中,归一化指数函数,或称Softmax函数,是逻辑函数的一种推广。它能将一个含任意实数的N维向量z“压缩”到另一个N维向量σ(z)中,使得每一个元素的范围都在(0,1)之间,并且所有元素的和为1,经常被作为多分类神经网络的非线性激活函数。Softmax函数如下所示,
然而,Softmax函数可以满足w
k的条件约束,但是其函数值随向量元素的增大而增大,不符合w
k与|ΔC
k|近似反比的关系。因此,为了适应w
k的设计,并且满足对w
k非线性的期望,可以带参数γ的Softmax函数来实现式(1)的f函数,具体如下所示,
其中,为了实现w
k与|ΔC
k|近似反比的关系,可以将γ限定为负数。也就是说,在第一参考颜色分量参数为|ΔC
k|的情况下,|ΔC
k|与w
k之间的映射关系可以表示为:
根据式(4),在一些实施例中,所述确定在预设映射关系下第一颜色分量的参考样值对应的取值,可以包括:
确定第一因子;
根据第一因子和第一颜色分量的参考样值,确定第一乘积值;
确定第一乘积值在预设映射关系下对应的取值。
需要说明的是,在本申请实施例中,第一因子为小于零的常数值。其中,以Softmax函数为例,在式(4)中,γ表示第一因子,|ΔC
k|表示第一参考颜色分量参数,γ|ΔC
k|表示第一乘积值,w
k表示加权系数;k=1,2,…,N。
在一种具体的实施例中,所述确定第一因子,可以包括:第一因子是预设常数值。
需要说明的是,在这种情况下,对于γ而言,可以根据色度相对平坦的特性调整邻近色度的加权系数分布,从而捕获适合自然图像色度预测的加权系数分布。为了确定适合自然图像色度预测的参数γ,遍历给定的γ集合,通过不同γ下预测色度与原始色度间的差距来衡量γ合适与否。示例性地,γ可以取-2
ε,其中ε∈{1,0,-1,-2,-3};经过试验发现,在此γ集合中,γ的最佳取值为-0.25。因此,在一种具体的实施例中,γ可以设置为-0.25,但是本申请实施例并不作具体限定。
在另一种具体的实施例中,所述确定第一因子,可以包括:根据当前块的尺寸参数,确定第一因子的取值。
进一步地,在一些实施例中,该方法还可以包括:根据预设的当前块的尺寸参数与第一因子的取值映射查找表,确定第一因子的取值。
在这里,当前块的尺寸参数可以包括以下参数的至少之一:当前块的宽度,当前块的高度、当前块的宽度与高度的乘积。
需要说明的是,本申请实施例可以采用分类方式固定第一因子的取值。例如,将根据当前块的尺寸参数分为三类,确定每一类对应的第一因子的取值。针对这种情况,本申请实施例还可以预先存储当前块的尺寸参数与第一因子的取值映射查找表,然后根据该查找表即可确定出第一因子的取值。示例性地, 表1示出了本申请实施例提供的一种第一因子与当前块的尺寸参数之间的对应关系。需要注意的是,表1仅是一种示例性查找表,并不作具体限定。
表1
当前块的尺寸参数 | 第一因子 |
Min(W,H)<=4 | -0.125 |
Min(W,H)>4&&Min(W,H)<=16 | -0.0833 |
Min(W,H)>16 | -0.0625 |
在又一种具体的实施例中,所述确定第一因子,可以包括:根据当前块的参考像素数量,确定第一因子的取值。
进一步地,在一些实施例中,该方法还可以包括:根据预设的当前块的参考像素数量与第一因子的取值映射查找表,确定第一因子的取值。
需要说明的是,本申请实施例可以将参考像素数量划分为三类,仍然采用分类方式固定第一因子的取值。例如,将根据当前块的参考像素数量划分为三类,确定每一类对应的第一因子的取值。针对这种情况,本申请实施例也可以预先存储当前块的参考像素数量与第一因子的取值映射查找表,然后根据该查找表即可确定出第一因子的取值。示例性地,表2示出了本申请实施例提供的一种第一因子与当前块的参考像素数量之间的对应关系。需要注意的是,表2仅是一种示例性查找表,并不作具体限定。
表2
参考像素数量 | 第一因子 |
0<R<16 | -0.1113 |
16<=R<32 | -0.0773 |
R>=32 | -0.0507 |
进一步地,对于第一乘积值而言,所述根据第一因子和第一颜色分量的参考样值,确定第一乘积值,可以包括:
将第一乘积值设置为等于第一因子和第一颜色分量的参考样值的乘积;
或者,
将第一乘积值设置为等于对第一颜色分量的参考样值进行比特右移后得到的数值,其中,比特右移的位数等于第一因子;
或者,
将第一乘积值设置为根据第一因子对第一颜色分量的参考样值进行加法和比特移位操作后得到的数值。
示例性地,假定第一因子等于0.25,第一颜色分量的参考样值用Ref表示,那么第一乘积值可以等于0.25×Ref,而0.25×Ref又可表示为Ref/4,即Ref>>2。另外,在定点化计算过程中,还有可能会将浮点数转换为加法和位移操作;也就是说,对于第一乘积值而言,其计算方式不作任何限定。
还可以理解地,在本申请实施例中,第一颜色分量也可以为亮度分量,第二颜色分量为色度分量,这时候选取当前块中的至少一个待预测像素,分别计算其重建亮度与相邻区域中的参考亮度之间的亮度差(用|ΔY
k|表示)。其中,如果|ΔY
k|较小,表明亮度值的相似性比较强,对应的加权系数(用w
k表示)可以赋予较大的权重;反之,如果|ΔY
k|较大,表明亮度值的相似性比较弱,w
k可以赋予较小的权重,也就是说,在计算加权系数时,第一颜色分量的参考样值也可以为|ΔY
k|,进而计算出加权系数。
需要注意的是,在对当前块中待预测像素的色度分量进行预测时,由于待预测像素的色度分量值无法直接确定,因而参考像素与待预测像素之间的色度差|ΔC
k|也无法直接得到;但是当前块的局部区域内,分量间存在强相关性,这时候可以根据参考像素与待预测像素之间的亮度差|ΔY
k|来推导得到|ΔC
k|;即根据|ΔY
k|和第二因子的乘积,可以得到|ΔC
k|;这样,第一乘积值等于第一因子与|ΔY
k|的乘积。
也就是说,在本申请实施例中,对于第一颜色分量的参考样值而言,其可以是|ΔC
k|,即色度差的绝对值;或者也可以是|ΔY
k|,即亮度差的绝对值;或者还可以是|αΔY
k|,即亮度差的绝对值与预设乘子之积等等。其中,这里的预设乘子即为本申请实施例所述的第二因子。
进一步地,对于第二因子而言,在一种具体的实施例中,该方法还可以包括:根据参考像素的第一颜色分量值与参考像素的第二颜色分量值进行最小二乘法计算,确定第二因子。
也就是说,假定参考像素的数量为N个,参考像素的第一颜色分量值即为当前块的参考亮度信息,参考像素的第二颜色分量值即为当前块的参考色度信息,那么可以对N个参考像素的色度分量值和亮度分量值进行最小二乘法计算,得到第二因子。示例性地,最小二乘法回归计算如下所示,
其中,L
k表示第k个参考像素的亮度分量值,C
k表示第k个参考像素的色度分量值,N表示参考像素的个数;α表示第二因子,其可以是采用最小二乘法回归计算得到。需要注意的是,第二因子也可以是固定取值或者基于固定取值进行微调整等等,本申请实施例并不作具体限定。
另外,对于预设映射关系而言,预设映射关系可以为预设函数关系。在一些实施例中,预设映射关系可以是Softmax函数。其中,Softmax函数是归一化指数函数,但是本申请实施例也可以不用归一化,其取值并不局限在[0,1]范围内。
示例性地,以|ΔY
k|作为第一颜色分量的参考样值为例,那么第k个参考像素对应的加权系数w
k可以由式(4)计算得到,也可以替换如下:
其中,S表示控制参数,S与第一因子(γ)之间的关系为:
示例性地,S的取值与当前块的尺寸参数有关。其中,当前块的尺寸参数包括当前块的宽度和高度。在一种可能的实现方式中,如果宽度和高度的最小值小于或等于4,那么S的取值等于8;如果宽度和高度的最小值大于4且小于或等于16,那么S的取值等于12;如果宽度和高度的最小值大于16,那么S的取值等于16。在另一种可能的实现方式中,如果宽度和高度的最小值小于或等于4,那么S的取值等于7;如果宽度和高度的最小值大于4且小于或等于16,那么S的取值等于11;如果宽度和高度的最小值大于16,那么S的取值等于15。或者,S的取值与当前块的参考像素数量(R)有关。在一种可能的实现方式中,如果R小于16,那么S的取值等于8;如果R大于或等于16且小于32,那么S的取值等于12;如果R大于或等于16,那么S的取值等于16;本申请实施例对此均不作任何限定。
还需要说明的是,除了Softmax函数之外,在另一些实施例中,预设映射关系可以是与第一颜色分量的参考样值具有反比关系的加权函数。
示例性地,仍以|ΔY
k|作为第一颜色分量的参考样值为例,还可以将式(4)的Softmax函数替换如下:
其中,k=1,2,…N,offset=1或2或0.5或0.25。
这样,预设映射关系为预设函数关系时,可以是如式(4)所示,也可以是如式(6)或式(7)所示,还可以是如式(8)或式(9)所示,甚至还可以是其他能够拟合参考像素的参考亮度值与当前块中待预测像素的亮度重建值越接近、参考像素的参考色度值对当前块中待预测像素的重要性越高的趋势构建加权系数的函数模型等,本申请实施例不作具体限定。
除此之外,在一些实施例中,预设映射关系还可以为预设的查表(look-up table)方式。也就是说,本申请实施例还可以简化操作,例如采用数组元素查表方式来减少一部分的计算操作。其中,对于预设映射关系而言,可以是:根据预设的第一颜色分量的参考样值、第一因子与数组元素的映射查找表,确定数组元素值;然后确定数组元素值在预设映射关系下对应的取值;再将加权系数设置为等于该取值。
具体来说,可以将计算加权系数的f模型通过简化操作实现,比如查表方式。其中,对于待预测像素(i,j)的亮度差|ΔY
k|,也可以用|ΔY
kij|表示;这样,通过f模型计算加权系数w
kij=f(|ΔY
kij|)。在这里,可将f模型中的分子以自变量|ΔY
kij|和S种类数作为数组索引进行存储,后续f模型中涉及与分子计算相同的操作均通过查表得到,从而能够避免分子、分母部分的计算操作。
需要说明的是,在本申请实施例中,这里的存储可以分为完全存储或部分存储。
在一种具体的实施例中,完全存储是将|ΔY
kij|值域范围、S种类数的分子全部存储,完全存储下需要开辟(|ΔY
kij|值域范围乘以S种类数)大小的数组空间。其中,所需存储数组大小为|ΔY
kij|值域范围大小,此时性能不变。
示例性地,以10比特(bit)像素、式(7)为例,变量|ΔY
kij|值域范围为0~1023内的整数,S种类数为3,以|ΔY
kij|和S种类数作为二维数组storMole的索引来完全存储分子:
这时候,式(7)的加权系数计算可简化为:
如此,二维数组storMole[索引1][索引2]的元素如表3所示。
表3
进一步地,完全存储也可依照S的分类设置对应的数组偏移量,再根据(|ΔY
kij|加偏移量)作为一维数组ostorMole的索引来完全存储分子,具体如下所示:
这时候,式(7)的加权系数计算可简化为:
如此,一维数组ostorMole[索引]的元素如表4所示。
表4
在另一种具体的实施例中,部分存储是将计算加权系数中的所有分子值选取部分进行存储,可选取|ΔY
kij|部分值域范围和/或S部分种类的分子值进行存储,不在选取范围内的f模型值默认为0,所需的 存储数组大小为(选取的|ΔY
kij|值域范围乘以S的选取种类数)大小。
示例性地,以10bit像素、式(7)为例,假设选取|ΔY
kij|值域范围为0~99整数、3种S的分子值进行部分存储,那么|ΔY
kij|值域范围为0~99内的整数,S种类数为3,以此|ΔY
kij|和S种类数作为二维数组partstorMole的索引来存储分子:
这时候,式(7)的加权系数计算可简化为:
如此,二维数组partstorMole[索引1][索引2]的元素如表5所示。
表5
也就是说,部分存储的存储范围可根据实际需求进行存储,不局限于示例中的|ΔY
kij|在100整数以内、3种S种类;部分存储同样也可对选取的部分S种类设置对应的偏移量从而开辟一维存储空间存储,本申请实施例对此不作任何限定。另外,对于表3~表5来说,为了定点化计算,这里也可以存储放大后的整数值;这样,后续在确定出预测值之后还需要进行相应的缩小操作。
这样,根据第一颜色分量的参考样值(例如|ΔY
kij|),即可确定出加权系数,具体可以包括:w
1、w
2、…、w
N等N个加权系数,其中,N表示第二颜色分量的参考样值的数量。在这里,理论上而言,这N个加权系数之和等于1,而且每一个加权系数均为大于或等于0且小于或等于1的值。但是需要注意的是,“N个加权系数之和等于1”仅属于理论概念;在实际的定点化实现过程中,加权系数的绝对值可以大于1。
S503:根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块。
需要说明的是,在本申请实施例中,为了保证亮度信息不损失,此时针对当前块中每个重建亮度位置都进行了色度预测,使得所得到的第一预测块尺寸大于原来的当前块尺寸,即:第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量。
还需要说明的是,在本申请实施例中,对于当前块的第二颜色分量的参考样值的确定,该方法还可以包括:根据当前块的相邻区域中的第二颜色分量采样点的取值,确定当前块的第二颜色分量的参考样值。
在这里,相邻区域可以包括下述至少之一:上侧相邻区域、右上侧相邻区域、左侧相邻区域和左下侧相邻区域。
在一种具体的实施例中,该方法还可以包括:
对当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到当前块的第二颜色分量的滤波相邻样值;
根据当前块的第二颜色分量的滤波相邻样值,确定当前块的第二颜色分量的参考样值。
在本申请实施例中,当前块的第二颜色分量的滤波相邻样值的数量大于当前块的相邻区域中的第二颜色分量采样点的取值的数量。
在本申请实施例中,第四滤波处理可以为上采样滤波;其中,上采样率是2的正整数倍。
也就是说,第一颜色分量为亮度分量,第二颜色分量为色度分量,为了保证参考亮度信息不损失,这里也可以对参考色度信息进行上采样滤波。示例性地,对于YUV420格式的2M×2N的当前块,其色度块大小为M×N,相邻区域的参考色度信息的数量为M+N,上采样滤波后可以得到2M+2N个色度参考样值,然后使用加权预测的方式得到2M×2N个色度预测值,后续再下采样滤波处理以得到M×N个色度预测值作为最终预测值。需要注意的是,对于YUV420格式的2M×2N的当前块,其色度块大小为M×N,相邻区域的参考色度信息的数量为M+N,也可以仅使用这M+N个参考色度信息,使用加权系数计算得到2M×2N个色度预测值,后续再下采样滤波处理以得到M×N个色度预测值作为最终预测值。
另外,对于YUV420格式的2M×2N的当前块,其色度块大小为M×N,相邻区域的参考色度信息的数量为M+N,上采样滤波后得到4M+4N个色度参考样值;或者,对于YUV444格式的2M×2N的当前块,其色度块大小为2M×2N,相邻区域的参考色度信息的数量为2M×2N,上采样滤波后得到4M+4N个色度参考样值;后续根据这些色度参考样值使用加权预测以及下采样滤波处理的方式,也可以得到M×N个色度预测值作为最终预测值,本申请实施例对此并不作任何限定。
还需要说明的是,在本申请实施例中,无论是对相邻区域中第一颜色分量采样点的取值进行的第二滤波处理,还是对当前块中第一参考颜色分量采样点的重建值进行的第三滤波处理,甚至还是对相邻区域中第二颜色分量采样点的取值进行的第四滤波处理,这三种滤波处理均可以为上采样滤波处理。其中,第二滤波处理可以采用第一滤波器,第三滤波处理可以采用第二滤波器,第四滤波处理可以采用第三滤波器;对于这三种滤波器而言,在这里,第一滤波器、第二滤波器和第三滤波器均可以为上采样滤波器。由于处理的数据不同,滤波器的上采样率也可能存在不同,因此,这三种滤波器可以相同,也可以不同。进一步地,第一滤波器、第二滤波器和第三滤波器均可以为神经网络滤波器,本申请实施例对此均不作任何限定。
可以理解地,假定第一颜色分量为亮度分量,第二颜色分量为色度分量,那么由于相邻区域中第一颜色分量采样点的取值(即参考亮度信息)的空间分辨率、相邻区域中第二颜色分量采样点的取值(即参考色度信息)的空间分辨率,甚至当前块中第一参考颜色分量采样点的重建值(即重建亮度信息)的空间分辨率都会受到颜色格式信息的影响;因此,还可以根据当前的颜色格式信息进行第二滤波处理、第三滤波处理或者第四滤波处理。下面以第四滤波处理为例,在一些实施例中,该方法还可以包括:基于颜色格式信息,对当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到当前块的第二颜色分量的滤波相邻样值。
在一种具体的实施例中中,对于第四滤波处理而言,还可以包括:若颜色格式信息指示为4:2:0采样,则对当前块的相邻区域中的第二颜色分量采样点的取值进行上采样滤波;其中,上采样率是2的正整数倍。
需要说明的是,在本申请实施例中,颜色格式信息可以包括4:4:4采样、4:2:2采样、4:1:1采样、4:2:0采样等等。其中,如果颜色格式信息指示为4:4:4采样(也可表示为YUV444)的视频,即亮度与色度的空间分辨率相等,那么不需要对参考色度信息作任何处理;如果颜色格式信息指示为4:2:2采样(也可表示为YUV422)、或者4:1:1采样(也可表示为YUV411)、4:2:0采样(也可表示为YUV420)等具有色度亚采样特征的视频,即亮度和色度的空间分辨率不一致,且色度分量的空间分辨率小于亮度分量的空间分辨率,那么需要对从相邻区域中获取的参考色度信息进行上采样滤波处理。
这样,对于参考色度信息进行的上采样滤波,上采样滤波方式可以是线性插值方法中的任何一种,比如最邻近插值、双线性内插值、双三次插值、均值插值、中值插值、复制插值等;也可以是非线性插值方法中的任何一种,比如基于小波变换的插值算法、基于边缘信息的插值算法等;也可以基于卷积神经网络进行上采样滤波,本申请实施例不作任何限定。示例性地,参见图6B,以YUV420视频格式、复制插值为例进行说明,这里示出了4×1的参考色度信息、8×2的参考亮度信息的示例。其中,8×2的用斜纹填充块为参考亮度信息,4×1的用网格填充块为同位的参考色度信息,4×1的用网格填充块中每个像素点相当于上采样滤波后的8×2的色度块中每2×2子块的左上角像素点,即复制插值后的2×2子块中每个色度像素点的像素值相同。具体地,对于一个2×2子块,另外三个色度像素点(用点填充块)均是左上角像素点(用网格填充块)进行复制得到的。
进一步地,在确定出当前块的第二颜色分量的参考样值之后,在一些实施例中,对于S503来说,根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块,可以包括:
确定第二颜色分量的参考样值与对应的加权系数的加权值;
将第一预测块中第二颜色分量采样点的预测值设置为等于N个加权值之和;其中,N表示第二颜色分量的参考样值的数量,N是正整数。
也就是说,如果第二颜色分量的参考样值的数量有N个,那么首先确定每一个第二颜色分量的参考样值与对应的加权系数的加权值(即w
kC
k),然后将这N个加权值之和作为预测块中的第二颜色分量采样点的预测值。具体地,其计算公式具体如下,
示例性地,首先根据当前块中(i,j)位置的重建亮度信息与相邻区域中的参考亮度信息,计算绝对亮度差值;然后再根据Softmax函数计算加权系数,进而可以利用式(16)得到预测块中(i,j)位置的色度分量的预测值。特别地,需要注意的是,这种方式利于并行处理,可以加快计算速度。
还可以理解地,在对当前块的相邻区域中的参考亮度信息和参考色度信息均进行上采样滤波处理时,这时候,还可以包括:基于颜色格式信息,利用第一水平上采样因子和第一垂直上采样因子对当前块的相邻区域中的第一颜色分量采样点的取值进行第二滤波处理,得到当前块的第一颜色分量的滤波相邻样值;以及利用第二水平上采样因子和第二垂直上采样因子对当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到当前块的第二颜色分量的滤波相邻样值。
在一种可能的实现方式中,该方法还可以包括:
若颜色格式信息指示为4:4:4采样,则确定第二水平上采样因子等于第一水平上采样因子,第二垂直上采样因子等于第一垂直上采样因子;
若颜色格式信息指示为4:2:2采样,则确定第二水平上采样因子等于2倍的第一水平上采样因子,第二垂直上采样因子等于第一垂直上采样因子;
若颜色格式信息指示为4:1:1采样,则确定第二水平上采样因子等于4倍的第一水平上采样因子,第二垂直上采样因子等于第一垂直上采样因子;
若颜色格式信息指示为4:2:0采样,则确定第二水平上采样因子等于2倍的第一水平上采样因子,第二垂直上采样因子等于2倍的第一垂直上采样因子。
需要说明的是,在本申请实施例中,对参考亮度信息进行上采样滤波,此时亮度信息没有任何损失。在这种情况下,由于YUV视频中的亮度分量的空间分辨率总是大于等于色度分量的空间分辨率,因此参考色度信息必然要进行上采样滤波才能和参考亮度信息的空间分辨率保持一致。这时候需要根据YUV视频格式和对参考亮度信息的空间上采样频率(第一水平上采样因子和第一垂直上采样因子)来决定参考色度信息的空间上采样频率(第二水平上采样因子和第二垂直上采样因子)。
其中,将第一水平上采样因子用S_Hor_RefLuma表示,将第一垂直上采样因子用S_Ver_RefLuma表示,将第二水平上采样因子用S_Hor_RefChroma表示,将第二垂直上采样因子用S_Ver_RefChroma表示。这样,对于YUV444格式的视频,S_Hor_RefChroma可以设置为等于S_Hor_RefLuma,S_Ver_RefChroma可以设置为等于S_Ver_RefLuma;对于YUV422格式的视频:S_Hor_RefChroma可以设置为等于2倍的S_Hor_RefLuma,S_Ver_RefChroma可以设置为等于S_Ver_RefLuma;对于YUV411格式的视频:S_Hor_RefChroma可以设置为等于4倍的S_Hor_RefLuma,S_Ver_RefChroma可以设置为等于S_Ver_RefLuma;对于YUV420格式的视频:S_Hor_RefChroma可以设置为等于2倍的S_Hor_RefLuma,S_Ver_RefChroma可以设置为等于2倍的S_Ver_RefLuma。
还可以理解地,在不对当前块内的重建亮度信息进行上采样滤波处理时,这时候可以根据YUV视频格式推断第一预测块的尺寸大小。因此,在另一种可能的实现方式中,该方法还可以包括:
若颜色格式信息指示为4:4:4采样,则确定第一预测块的宽度等于当前块的宽度,第一预测块的高度等于当前块的高度;
若颜色格式信息指示为4:2:2采样,则确定第一预测块的宽度等于2倍的当前块的宽度,第一预测块的高度等于当前块的高度;
若颜色格式信息指示为4:1:1采样,则确定第一预测块的宽度等于4倍的当前块的宽度,第一预测块的高度等于当前块的高度;
若颜色格式信息指示为4:2:0采样,则确定第一预测块的宽度等于2倍的当前块的宽度,第一预测块的高度等于2倍的当前块的高度。
需要说明的是,在本申请实施例中,第一预测块的尺寸参数包括宽度和高度,其中,第一预测块的宽度用predSizeW表示,第一预测块的高度用predSizeH表示;当前块的尺寸参数也包括宽度和高度,其中,当前块的宽度用nTbW表示,当前块的高度用nTbH表示。这样,对于YUV444格式的视频,亮度分量和色度分量的空间分辨率相等,此时predSizeW可以设置为等于nTbW,predSizeH可以设置为等于nTbH;对于YUV422格式的视频,亮度分量和色度分量具有相同的垂直分辨率,但色度分量的 水平分辨率是亮度分量的1/2,此时predSizeW可以设置为等于2倍的nTbW,predSizeH可以设置为等于nTbH;对于YUV411格式的视频,亮度分量和色度分量具有相同的垂直分辨率,但色度分量的水平分辨率是亮度分量的1/4,此时predSizeW可以设置为等于4倍的nTbW,predSizeH可以设置为等于nTbH;对于YUV420格式的视频,色度分量的水平分辨率和垂直分辨率都是亮度分量的1/2,此时predSizeW可以设置为等于2倍的nTbW,predSizeH可以设置为等于2倍的nTbH。
还可以理解地,在对当前块内的重建亮度信息进行上采样滤波处理时,当前块亮度上采样之后需要根据YUV视频格式和对当前块亮度的空间上采样频率来推断第一预测块的尺寸大小。这时候,可以包括:基于颜色格式信息,利用第三水平上采样因子和第三垂直上采样因子对当前块中第一参考颜色分量采样点的重建值进行第三滤波处理,得到当前块中第一参考颜色分量采样点的滤波样值。
在又一种可能的实现方式中,该方法还可以包括:
若颜色格式信息指示为4:4:4采样,则确定第一预测块的宽度等于当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于当前块的高度与第三垂直上采样因子的乘积;
若颜色格式信息指示为4:2:2采样,则确定第一预测块的宽度等于2倍的当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于当前块的高度与第三垂直上采样因子的乘积;
若颜色格式信息指示为4:1:1采样,则确定第一预测块的宽度等于4倍的当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于当前块的高度与第三垂直上采样因子的乘积;
若颜色格式信息指示为4:2:0采样,则确定第一预测块的宽度等于2倍的当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于2倍的当前块的高度与第三垂直上采样因子的乘积。
需要说明的是,在本申请实施例中,将第三水平上采样因子用S_Hor_RecLuma表示,将第三垂直上采样因子用S_Ver_RecLuma表示,然后,根据S_Hor_RecLuma和S_Ver_RecLuma对当前块内的重建亮度信息进行上采样滤波。这时候对于第一预测块的尺寸而言,对于YUV444格式的视频,亮度分量和色度分量的空间分辨率相等,此时predSizeW可以设置为等于S_Hor_RecLuma与nTbW的乘积,predSizeH可以设置为等于S_Ver_RecLuma与nTbH的乘积;对于YUV422格式的视频,亮度分量和色度分量具有相同的垂直分辨率,但色度分量的水平分辨率是亮度分量的1/2,此时predSizeW可以设置为等于2倍的S_Hor_RecLuma与nTbW的乘积,predSizeH可以设置为等于S_Ver_RecLuma与nTbH的乘积;对于YUV411格式的视频,亮度分量和色度分量具有相同的垂直分辨率,但色度分量的水平分辨率是亮度分量的1/4,此时predSizeW可以设置为等于4倍的S_Hor_RecLuma与nTbW的乘积,predSizeH可以设置为等于S_Ver_RecLuma与nTbH的乘积;对于YUV420格式的视频,色度分量的水平分辨率和垂直分辨率都是亮度分量的1/2,此时predSizeW可以设置为等于2倍的S_Hor_RecLuma与nTbW的乘积,predSizeH可以设置为等于2倍的S_Ver_RecLuma与nTbH的乘积。
需要注意的是,在本申请实施例中,predSizeH大于或等于当前块的高度nTbH,或者predSizeW大于或等于当前块的宽度nTbW,使得第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量。
S504:对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块。
S505:根据第二预测块,确定当前块的第二颜色分量采样点的重建值。
需要说明的是,在本申请实施例中,第一滤波处理可以为下采样滤波处理。这样,对于经过下采样滤波之后的第二预测块,第二预测块中包含的第二颜色分量的预测值的数量与当前块中包含的第二颜色分量采样点的数量相同。
在一种可能的实现方式中,所述对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块,可以包括:
利用预设滤波器对第一预测块进行下采样滤波处理,确定当前块的第二颜色分量的第二预测块。
还需要说明的是,在本申请实施例中,预设滤波器可以为下采样滤波器。进一步地,这里的下采样滤波器可以为神经网络滤波器,本申请实施例对此不作任何限定。
在另一种可能的实现方式中,所述对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块,可以包括:
确定水平下采样因子和垂直下采样因子;
根据水平下采样因子和垂直下采样因子对第一预测块进行下采样滤波处理,得到当前块的第二颜色分量的第二预测块。
在一种具体的实施例中,根据水平下采样因子和垂直下采样因子对第一预测块进行下采样滤波处理,得到当前块的第二颜色分量的第二预测块,可以包括:若水平下采样因子大于1,或者垂直下采样因子大于1,则对第一预测块进行下采样滤波处理,得到第二预测块。
在本申请实施例中,对第一预测块进行下采样滤波处理,可以包括下述至少一项:
对第一预测块在水平方向进行下采样滤波处理;
对第一预测块在垂直方向进行下采样滤波处理;
对第一预测块在水平方向进行下采样滤波处理后再在垂直方向进行下采样滤波处理;
对第一预测块在垂直方向进行下采样滤波处理后再在水平方向进行下采样滤波处理。
在这里,首先可以根据第一预测块的宽度和当前块的宽度计算水平下采样因子,根据第一预测块的高度和当前块的高度计算垂直下采样因子;然后,根据水平下采样因子和垂直下采样因子对第一预测块进行下采样滤波。具体来说,如果水平下采样因子大于1,垂直下采样因子等于1,那么只需要对第一预测块在水平方向进行下采样;如果水平下采样因子等于1,垂直下采样因子大于1,那么只需要对第一预测块在垂直方向进行下采样;如果水平下采样因子大于1,垂直下采样因子大于1,那么对第一预测块在水平方向和垂直方向都需要进行下采样,其中,可以执行先水平方向再垂直方向的下采样,也可以执行先垂直方向再水平方向的下采样,甚至还可以采用神经网络结构中的卷积操作代替这里的下采样操作,本申请实施例不作任何限定。
还需要说明的是,对于第一滤波处理,还可以采用隔点抽取的方式进行下采样滤波,比如二维滤波器、一维滤波器等等。其中,对于一维滤波器而言,可以是“先垂直方向再水平方向”,也可以是“先水平方向再垂直方向”,还可以是固定滤波顺序,甚至还可以是可灵活调整的滤波顺序(如有标识信息指示的滤波顺序、与预测模式或块大小绑定的顺序等),本申请实施例对此不作任何限定。
在一些实施例中,所述对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块,可以包括:第一滤波处理包括下采样滤波处理;其中,下采样滤波处理的输入是第一下采样输入块;下采样滤波处理的输出是第一下采样输出块。
进一步地,在一些实施例中,上采样滤波处理,可以包括:
确定下采样因子,其中,下采样因子包括以下至少之一:水平下采样因子、垂直下采样因子;
根据下采样因子对第一下采样输入块进行下采样滤波处理,得到第一下采样输出块。
在一种可能的实现方式中,根据下采样因子对第一下采样输入块进行下采样滤波处理,得到第一下采样输出块,可以包括:若水平下采样因子大于1,或者垂直下采样因子大于1,则对第一下采样输入块进行下采样滤波处理,得到第一下采样输出块。
在本申请实施例中,对第一下采样输入块进行下采样滤波处理,包括下述至少一项:
对第一下采样输入块在水平方向进行下采样滤波处理;
对第一下采样输入块在垂直方向进行下采样滤波处理;
对第一下采样输入块在水平方向进行下采样滤波处理后再在垂直方向进行下采样滤波处理;
对第一下采样输入块在垂直方向进行下采样滤波处理后再在水平方向进行下采样滤波处理。
在这里,首先可以根据第一下采样输入块的宽度和第一下采样输出块的宽度计算水平下采样因子,根据第一下采样输入块的高度和第一下采样输出块的高度计算垂直下采样因子;然后,根据水平下采样因子和垂直下采样因子对第一下采样输入块进行下采样滤波。具体来说,如果水平下采样因子大于1,垂直下采样因子等于1,那么只需要对第一下采样输入块在水平方向进行下采样;如果水平下采样因子等于1,垂直下采样因子大于1,那么只需要对第一下采样输入块在垂直方向进行下采样;如果水平下采样因子大于1,垂直下采样因子大于1,那么对第一下采样输入块在水平方向和垂直方向都需要进行下采样,其中,可以执行先水平方向再垂直方向的下采样,也可以执行先垂直方向再水平方向的下采样,甚至还可以采用神经网络结构中的卷积操作代替这里的下采样滤波操作,本申请实施例不作任何限定。
在另一种可能的实现方式中,对第一预测块进行下采样滤波,确定第二预测块。这时候,该方法还可以包括:将第一预测块作为第一下采样输入块;将第一下采样输出块作为当前块的第二颜色分量的第二预测块。
在另一种可能的实现方式中,对第一预测块先进行增强滤波,然后再进行下采样滤波,确定第二预测块。这时候,该方法还可以包括:对第一预测块进行滤波增强处理,确定第一增强预测块;将第一增强预测块作为第一下采样输入块;将第一下采样输出块作为当前块的第二颜色分量的第二预测块。
在又一种可能的实现方式中,对第一预测块先进行下采样滤波,然后再进行增强滤波,确定第二预测块。这时候,该方法还还可以包括:将第一预测块作为第一下采样输入块;将第一下采样输出块作为第一下采样滤波预测块;对第一下采样滤波预测块进行滤波增强处理,确定当前块的第二颜色分量的第二预测块。
在再一种可能的实现方式中,对第一预测块先进行增强滤波,再进行下采样滤波,然后再进行增强滤波,确定第二预测块。这时候,该方法还还可以包括:对第一预测块进行第一滤波增强处理,确定第二增强预测块;将第二增强预测块作为第一下采样输入块;将第一下采样输出块作为第二下采样滤波预测块;对第二下采样滤波预测块进行第二滤波增强处理,确定当前块的第二颜色分量的第二预测块。
除此之外,在一些实施例中,所述对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块,还可以包括:根据水平下采样因子和垂直下采样因子,对第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到第二预测块。
在一种可能的实现方式中,对第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到第二预测块,可以包括:对第一预测块在水平方向上每水平下采样因子数量的第二颜色分量的预测值进行加权和计算,得到第二预测块。
在另一种可能的实现方式中,对第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到第二预测块,可以包括:对第一预测块在垂直方向上每垂直下采样因子数量的第二颜色分量的预测值进行加权和计算,得到第二预测块。
在又一种可能的实现方式中,对第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到第二预测块,可以包括:对第一预测块在水平方向上每水平下采样因子数量的第二颜色分量的预测值进行加权和计算,以及在垂直方向上每垂直下采样因子数量的第二颜色分量的预测值进行加权和计算,得到第二预测块。
也就是说,本申请实施例也可以不考虑水平下采样和垂直下采样的情况,针对需要下采样的方向(垂直方向或水平方向)每预设个数的色度预测值进行加权和计算;其中,如果每一个色度预测值的权值相等,那么在一种特殊情况下,每预设个数的色度预测值进行加权和计算也可以看作是对这预设个数的色度预测值求均值,将该均值作为下采样滤波后的预测值。
进一步地,在一些实施例中,该方法还可以包括:根据第一预测块中部分采样点的第一颜色分量的参考样值,确定加权系数;根据加权系数和第一预测块中部分采样点的第二颜色分量的参考样值,确定当前块的第二颜色分量的第二预测块。
在一种具体的实施例中,根据加权系数和第一预测块中部分采样点的第二颜色分量的参考样值,确定当前块的第二颜色分量的第二预测块,可以包括:根据加权系数对第一预测块中第(i,j)位置处采样点的第二颜色分量的参考样值进行加权计算,得到当前块中第(x,y)位置处采样点的第二颜色分量的预测值;其中,i、j、x、j均为大于或等于零的整数。
需要说明的是,在本申请实施例中,为了减少计算复杂度,不对当前块内的重建亮度信息进行上采样滤波,这时候可以考虑不对当前块内的重建亮度信息中每个亮度位置进行同位色度点的预测,可以选取部分亮度位置进行同位色度点的预测,从而在得到预测块之后可以不进行下采样滤波,能够保证已有亮度信息的准确性,准确的亮度信息有利于提高非线性映射模型的准确性和稳定性,进而提高了色度预测值的准确性。
在这种实现方式中,为了节省后续对预测块进行上采样或者下采样的操作,可以根据YUV视频格式特征选取相应的位置进行色度预测,假设当前亮度点的位置为CurRecLuma(i,j),则需要进行色度预测的采样点的位置为CurPredChroma(x,y)。这时候,在一些实施例中,该方法还可以包括:
若颜色格式信息指示为4:4:4采样,则将x设置为等于i,将y设置为等于j;
若颜色格式信息指示为4:2:2采样,则将x设置为等于i与2的乘积,将y设置为等于j;
若颜色格式信息指示为4:1:1采样,则将x设置为等于i与4的乘积,将y设置为等于j;
若颜色格式信息指示为4:2:0采样,则将x设置为等于i与2的乘积,将y设置为等于j与2的乘积。
进一步地,在一些实施例中,该方法还可以包括:确定水平取样位置因子和垂直取样位置因子;将x设置为等于i与水平取样位置因子的乘积,将y设置为等于j与垂直取样位置因子的乘积。
也就是说,为了进一步减少预测时的计算复杂度,可以选择更少的同位色度点进行预测。假设当前亮度点的位置为CurRecLuma(i,j),则需要进行色度预测的点的位置为CurPredChroma(x,y)。假设当前块内重建亮度信息的水平取样位置因子为S_Pos_Hor,垂直取样位置因子为S_Pos_Ver。那么当前亮度点位置和需要进行色度预测的采样点的位置之间的关系如下:
当颜色格式信息指示为YUV444格式/YUV422格式/YUV411格式/YUV420格式的视频时,x可以设置为等于i与S_Pos_Hor的乘积,y可以设置为等于j与S_Pos_Ver的乘积。
进一步地,在确定出第二预测块之后,该第二预测块在一定条件下还需要后处理作为最终的第二预测块。因此,在一些实施例中,该方法还可以包括:在确定当前块的第二颜色分量的第二预测块之后,对第二预测块进行相关处理,将处理后的第二预测块作为第二预测块。
在本申请实施例中,对第二预测块进行相关处理,包括下述至少一项:
对第二预测块进行第三滤波处理;
利用预设补偿值对第二预测块进行修正处理;
利用至少一种预测模式下当前块的第二颜色分量的预测值对第二预测块进行加权融合处理。
需要说明的是,在一种可能的实现方式中,第三滤波处理可以为平滑滤波处理。示例性地,在WCP模式下,为了降低逐像素独立且并行预测带来的不稳定性,例如可以对第二预测块进行平滑滤波处理,然后将处理后的第二预测块作为最终的第二预测块。
在另一种可能的实现方式中,根据当前块的相邻区域中的参考样值,确定第二预测块的第二颜色分量的预设补偿值;根据预设补偿值对第二预测块中的第二颜色分量采样点的预测值进行修正处理,确定最终的第二预测块。示例性地,为了进一步提升WCP模式的预测准确度,可以对第二预测块进行位置相关的修正过程。例如,利用空间位置接近的参考像素对每个待预测第二颜色分量采样点计算色度补偿值,用此色度补偿值对第二预测块中的第二颜色分量采样点进行修正,根据修正后的预测值确定第二颜色分量采样点的最终预测值,进而得到最终的第二预测块。
在又一种可能的实现方式中,根据至少一种预测模式对第二预测块中的第二颜色分量采样点进行预测处理,确定第二预测块中的第二颜色分量采样点的至少一个初始预测值;根据至少一个初始预测值与第二预测块中第二颜色分量采样点的预测值进行加权融合处理,确定最终的第二预测块。
需要说明的是,为了进一步提升WCP模式的预测准确度,还可以将其他预测模式下计算的色度预测值与WCP模式下计算的色度预测值进行加权融合,根据此融合结果确定最终的色度预测块。示例性地,如图7所示,其他预测模式可以包括:平面(Planar)模式、直流(DC)模式、垂直模式、水平模式和CCLM模式等,而且每一个预测模式均与一个开关连接,该开关用于控制这种预测模式下的色度预测值是否参与加权融合处理。假定Planar模式对应的权重值为W_Planar、DC模式对应的权重值为W_DC、垂直模式对应的权重值为W_Ver、水平模式对应的权重值为W_Hor、CCLM模式对应的权重值为W_CCLM、WCP模式对应的权重值为W_Wcp;对于Planar模式下的色度预测值、DC模式下的色度预测值、垂直模式下的色度预测值、水平模式下的色度预测值和CCLM模式下的色度预测值,如果只有CCLM模式连接的开关处于闭合状态,那么可以根据W_CCLM和W_Wcp对CCLM模式下的色度预测值和WCP模式下的色度预测值进行加权融合,而根据W_CCLM和W_Wcp的取值可以决定是进行等权重或不等权重的加权融合,加权结果即为第二颜色分量采样点的最终色度预测值,进而得到最终的第二预测块。
在一些实施例中,在确定出第二预测块之后,所述根据第二预测块,确定当前块的第二颜色分量采样点的重建值,可以包括:
确定当前块的第二颜色分量采样点的预测差值;
根据第二预测块,确定当前块的第二颜色分量采样点的预测值;
根据当前块的第二颜色分量采样点的预测差值和当前块的第二颜色分量采样点的预测值,确定当前块的第二颜色分量采样点的重建值。
需要说明的是,在本申请实施例中,确定当前块的第二颜色分量采样点的预测差值(residual),可以是通过解析码流,确定当前块的第二颜色分量采样点的预测差值。
还需要说明的是,在本申请实施例中,根据第二预测块确定当前块的第二颜色分量采样点的预测值,可以是将当前块的第二颜色分量采样点的预测值设置为等于第二预测块的值;或者也可以是对第二预测块的值进行上采样滤波,将当前块的第二颜色分量采样点的预测值设置为等于所述上采样滤波后的输出值。
这样,以色度分量为例,通过解析码流,确定当前块的色度预测差值;然后根据第二预测块,可以确定当前块的色度预测值;然后对色度预测值和色度预测差值进行加法计算,可以得到当前块的色度重建值。
可以理解地,本申请实施例是在WCP模式的预测过程中,利用未损失的亮度信息进行色度预测,主要包括三方面:一方面,充分利用参考像素与当前块的亮度信息,实现了参考像素色度加权系数的计算;另一方面,充分考虑已有亮度信息的重要性,在不损失亮度信息的基础上建立更准确的非线性映射模型对参考色度点分配权重进行加权预测;又一方面,在进行参考色度上采样和根据当前块每个亮度点位置进行同位色度预测时,充分考虑各种YUV视频格式的特征,根据不同YUV视频的色度亚采样格式和亮度上采样情况始终保证色度分量和亮度分量的空间分辨率一致,充分利用已有的未损失亮度信息进行同位色度预测,以提高WCP模式中色度预测值的准确性。
简单来说,本申请实施例还提供了一种基于权重的色度预测的框架,如图8所示,对于下采样的当前块内重建亮度信息(即下采样亮度块)中的每个采样点recY[i][j],首先根据recY[i][j]与相邻亮度向量refY[k]的差值的绝对值得到亮度差向量diffY[i][j];其次,根据与diffY[i][j]相关的非线性映射模型,导出归一化权值向量cWeight[i][j];再次,利用权值向量,将权值向量与当前块的相邻色度向量进行向量乘法,可以得到预测的色度预测值
本实施例提供了一种解码方法,通过确定当前块的第一颜色分量的参考样值;根据当前块的第一颜 色分量的参考样值,确定加权系数;根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块;其中,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量;对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块;根据第二预测块,确定当前块的第二颜色分量采样点的重建值。这样,利用当前块相邻的参考像素与当前块内的颜色分量信息,不仅充分考虑了已有的颜色分量信息,使得在不损失亮度信息的基础上能够建立更准确的非线性映射模型对每个色度分量的参考样值分配权重进行加权预测;而且对于第一滤波处理还充分考虑了不同的颜色格式信息,根据不同的颜色格式信息进行色度和/或亮度的采样滤波,能够始终保证色度分量和亮度分量的空间分辨率一致,从而既保证了已有亮度信息的准确性,又在利用未损失的亮度信息进行色度分量预测时,基于准确的亮度信息有利于提高非线性映射模型的准确性和稳定性,进而提高了色度预测的准确性,节省码率,提升编解码效率,进而提升编解码性能。
在本申请的另一实施例中,基于前述实施例所述的解码方法,以当前块进行色度预测为例,在本申请实施例中,当前块的重建亮度信息、相邻区域的参考亮度信息及参考色度信息都是已解码的参考信息。因此,本申请实施例提出了一种利用上述这些信息的基于权重的色度预测技术,并在此基础上,为了保证参考亮度信息和当前块内的重建亮度信息不损失,实现参考色度匹配参考亮度的空间分辨率、当前预测色度匹配当前已有的重建亮度的空间分辨率,在已匹配的基础上对预测色度进行下采样滤波,最后对色度预测值进行后处理。
可以理解地,在本申请实施例中,在WCP预测技术的基础上主要提出了:在不损失亮度信息的情况下进一步提高色度预测的准确性。在这里,WCP模式的色度预测过程的详细步骤如下:
WCP模式的输入:当前块的位置(xTbCmp,yTbCmp),当前块的宽度nTbW及当前块的高度nTbH。
WCP模式的输出:当前块的预测值predSamples[x][y],其中以当前块内左上角位置为坐标原点,x=0,...,nTbW-1,y=0,...,nTbH-1。
其中,WCP模式的预测过程可以包含确定核心参数、参考色度信息的上采样滤波、获取目标信息、基于权重的色度预测、当前预测色度的下采样滤波、后处理过程等步骤。在经过这些步骤之后,可以得到当前块的色度预测值。
在一种具体的实施例中,参见图9,其示出了本申请实施例提供的一种解码方法的流程示意图二。如图9所示,该方法可以包括:
S901:确定WCP模式的核心参数。
需要说明的是,对于S901而言,对WCP模式涉及的核心参数进行确定,即可以通过配置或通过某种方式获取或推断WCP模式的核心参数,例如在解码端从码流获取核心参数。
在这里,WCP模式的核心参数包括但不限于控制参数(S)、基于权重的色度预测输入的个数(inSize)、基于权重的色度预测输出的个数(排列成predSizeW×predSizeH)。其中,基于权重的色度预测输出的第一预测块可以用predWcp表示,这里基于权重的色度预测输出的个数可以设置为相同的值(如predSizeW=predSizeH=T/4)或者与当前块的尺寸参数相关(如predSizeW=nTbW,predSizeH=nTbH)。其中,控制参数(S)可以用于对后续环节中非线性函数进行调整或用来对后续环节涉及的数据进行调整。
对于核心参数的确定,在一定条件下受块尺寸或块内容或块内像素数的影响。例如:
如果WCP模式应用的块尺寸种类较多或块尺寸之间的差异较大或块内容差异很大或块内像素数差异较大,可以对当前块根据其块尺寸或块内容或块内像素数进行分类,根据不同的类别确定相同或不同的核心参数。即不同类别对应的控制参数(S)或基于权重的色度预测输入的个数inSize或基于权重的色度预测输出的个数(排列成predSizeW×predSizeH)可以相同或不同。注意,predSizeW和高predSizeH也可以相同或不同。
下面为了更好说明核心参数的确定,以两种简单分类为例进行说明:
分类示例1:WCP模式可以根据当前块的宽度和高度将当前块分类,用wcpSizeId表示块的种类。对不同种类的块,控制参数(S)、基于权重的色度预测输入的个数inSize、基于权重的色度预测输出的个数(排列成predSizeW×predSizeH)可以相同或不同。这里以分为3类的一种示例进行说明:
根据当前块的宽度和高度将当前块分为3类,不同类别的控制参数(S)可以设为不同,不同类别的inSize、基于权重的色度预测输出的个数(排列成predSizeW×predSizeH)可以设为相同。nTbW为当前块的宽度,nTbH为当前块的高度,块的种类wcpSizeId的定义如下:
wcpSizeId=0:表示min(nTbW,nTbH)<=4的当前块。其中,控制参数(S)为8,inSize为(2×nTbH+2×nTbW),基于权重的色度预测输出nTbH×nTbW个色度预测值;
wcpSizeId=1:表示4<min(nTbW,nTbH)<=16的当前块。其中,控制参数(S)为12,inSize为 (2×nTbH+2×nTbW),基于权重的色度预测输出nTbH×nTbW个色度预测值;
wcpSizeId=2:表示min(nTbW,nTbH)>16的当前块。其中,控制参数(S)为16,inSize为(2×nTbH+2×nTbW),基于权重的色度预测输出nTbH×nTbW个色度预测值;
以表格形式表示上述核心参数的数量关系,如表6所示。
表6
wcpSizeId | S | inSize | predSizeH | predSizeW |
0 | 8 | 2×nTbH+2×nTbW | nTbH | nTbW |
1 | 12 | 2×nTbH+2×nTbW | nTbH | nTbW |
2 | 16 | 2×nTbH+2×nTbW | nTbH | nTbW |
分为3类还可以另一种示例进行说明:
根据当前块的宽度和高度将当前块分为3类,不同类别的控制参数(S)可以设为不同,不同类别的inSize、基于权重的色度预测输出的个数(排列成predSizeW×predSizeH)可以设为相同。nTbW为当前块的宽度,nTbH为当前块的高度,块的种类wcpSizeId的定义如下:
wcpSizeId=0:表示min(nTbW,nTbH)<=4的当前块。其中,控制参数(S)为8,inSize为(2×nTbH+2×nTbW),基于权重的色度预测输出nTbH×nTbW个色度预测值;
wcpSizeId=1:表示4<min(nTbW,nTbH)<=16的当前块。其中,控制参数(S)为12,inSize为(1.5×nTbH+1.5×nTbW),基于权重的色度预测输出nTbH/2×nTbW/2个色度预测值;
wcpSizeId=2:表示min(nTbW,nTbH)>16的当前块。其中,WCP控制参数(S)为16,inSize为(nTbH+nTbW),基于权重的色度预测输出nTbH/4×nTbW/4个色度预测值;
以表格形式表示上述核心参数的数量关系,如表7所示。
表7
wcpSizeId | S | inSize | predSizeH | predSizeW |
0 | 8 | 2×nTbH+2×nTbW | nTbH | nTbW |
1 | 12 | 1.5×nTbH+1.5×nTbW | nTbH/2 | nTbW/2 |
2 | 16 | nTbH+nTbW | nTbH/4 | nTbW/4 |
分类示例2:WCP模式也可以根据当前块的宽度和高度将当前块分类,用wcpSizeId表示块的种类。对不同种类的块,控制参数(S)、基于权重的色度预测输入的个数inSize、基于权重的色度预测输出的个数(排列成predSizeW×predSizeH)可以相同或不同。这里以分为3类的一种示例进行说明:
根据当前块的宽度和高度将当前块分为3类,不同类别的控制参数(S)可以设为不同,不同类别的inSize、基于权重的色度预测输出的个数(排列成predSizeW×predSizeH)可以设为相同。nTbW为当前块的宽度,nTbH为当前块的高度,nTbW×nTbH表示当前块的像素数。块的种类wcpSizeId的定义如下:
wcpSizeId=0:表示(nTbW×nTbH)<128的当前块。其中,控制参数(S)为10,inSize为(2×nTbH+2×nTbW),基于权重的色度预测输出nTbH×nTbW个色度预测值;
wcpSizeId=1:表示128<=(nTbW×nTbH)<=256的当前块。其中,控制参数(S)为8,inSize为(2×nTbH+2×nTbW),基于权重的色度预测输出nTbH×nTbW个色度预测值;
wcpSizeId=2:表示(nTbW×nTbH)>256当前块。其中,控制参数(S)为1,inSize为(2×nTbH+2×nTbW),基于权重的色度预测输出nTbH×nTbW个色度预测值;
以表格形式表示上述核心参数的数量关系,如表8所示。
表8
wcpSizeId | S | inSize | predSizeH | predSizeW |
0 | 10 | 2×nTbH+2×nTbW | nTbH | nTbW |
1 | 8 | 2×nTbH+2×nTbW | nTbH | nTbW |
2 | 1 | 2×nTbH+2×nTbW | nTbH | nTbW |
分为3类还可以另一种示例进行说明:
根据当前块的宽度和高度将当前块分为3类,不同类别的控制参数(S)可以设为不同,不同类别的inSize、基于权重的色度预测输出的个数(排列成predSizeW×predSizeH)可以设为相同。nTbW为当前块的宽度,nTbH为当前块的高度,nTbW×nTbH表示当前块的像素数。块的种类wcpSizeId的定义如下:
wcpSizeId=0:表示(nTbW×nTbH)<64的当前块。其中,控制参数(S)为16,inSize为(2×nTbH+2×nTbW),基于权重的色度预测输出nTbH×nTbW个色度预测值;
wcpSizeId=1:表示64<=(nTbW×nTbH)<=512的当前块。其中,控制参数(S)为4,inSize为(1.5×nTbH+1.5×nTbW),基于权重的色度预测输出nTbH/2×nTbW/2个色度预测值;
wcpSizeId=2:表示(nTbW×nTbH)>512的当前块。其中,控制参数(S)为1,inSize为(nTbH+nTbW),基于权重的色度预测输出nTbH/4×nTbW/4个色度预测值;
以表格形式表示上述核心参数的数量关系,如表9所示。
表9
wcpSizeId | S | inSize | predSizeH | predSizeW |
0 | 16 | 2×nTbH+2×nTbW | nTbH | nTbW |
1 | 4 | 1.5×nTbH+1.5×nTbW | nTbH/2 | nTbW/2 |
2 | 1 | nTbH+nTbW | nTbH/4 | nTbW/4 |
S902:在参考亮度信息不损失的情况下,对参考色度信息进行上采样滤波,以保持与参考亮度信息具有相同的空间分辨率。
需要说明的是,对于S902而言,在预测当前块时,当前块的上方区域、左上方区域及左方区域作为当前块的相邻区域(也可被称为“参考区域”),如前述的图6A所示,相邻区域中的像素都是已解码的参考像素。
在这里,从相邻区域中可以获取参考色度信息refC和参考亮度信息refY。由于人眼对亮度信息较敏感,且本申请实施例主要利用已有亮度信息建立模型来预测色度,因此基于不损失参考亮度信息的角度考虑,实现参考色度信息的空间分辨率匹配跟随参考亮度信息的空间分辨率,针对不同YUV视频格式对参考色度信息进行上采样滤波。在一种具体的实施例中,如图10所示,对于S902来说,该步骤可以包括:
S1001:参考亮度信息不损失。
S1002:参考亮度信息保持不变。
S1003:对参考亮度信息进行上采样滤波。
S1004:在参考亮度信息保持不变时,参考色度信息保持不变。
S1005:在参考亮度信息保持不变时,对参考色度信息进行上采样滤波。
S1006:在参考亮度信息进行上采样滤波时,对参考色度信息进行上采样滤波。
需要说明的是,在保证参考亮度信息不损失的情况下,可以分为两种操作情况:(1)参考亮度信息保持不变;(2)对参考亮度信息进行上采样滤波。其中,对于操作情况(1),又可以分为两类子情况:(a)参考色度信息保持不变;(b)对参考色度信息进行上采样滤波。而对于操作情况(2),此时不存在参考色度信息保持不变的子情况,需要对参考色度信息进行上采样滤波。
对于操作情况(1),即步骤S1002而言,参考亮度信息保持不变,此时亮度信息没有任何损失。在这种操作情况下,由于YUV视频格式的多样性,需要对参考色度信息进行不同的子情况处理:
子情况1:对于YUV444格式的视频,亮度分量和色度分量的空间分辨率相等,此时不需要对参考色度分量作任何处理。
子情况2:对于YUV422、YUV411、YUV420等具有色度亚采样特征的视频,亮度分量和色度分量的空间分辨率不一致,且色度分量的空间分辨率小于亮度分量的空间分辨率,此时需要根据YUV视频格式对参考色度分量进行上采样滤波处理。上采样滤波方式可以是线性插值方法中的任何一种,比如最邻近插值、双线性内插值、双三次插值、均值插值、中值插值、复制插值等;也可以是非线性插值方法中的任何一种,比如基于小波变换的插值算法、基于边缘信息的插值算法等;也可以基于卷积神经网络进行上采样滤波,本申请实施例不作任何限定。这里以YUV420视频格式、复制插值为例进行说明,图6B示出了4×1的参考色度信息、8×2的参考亮度信息进行参考色度复制的插值方法。如图6B所示,8×2的用斜纹填充块为参考亮度信息,4×1的用网格填充块为同位的参考色度信息,4×1的用网格填充块中每个像素点相当于上采样滤波后的8×2的色度块中每2×2子块的左上角像素点,即复制插值后的2×2子块中每个色度像素点的像素值相同。具体地,对于一个2×2子块,另外三个色度像素点(用点填充块)均是左上角像素点(用网格填充块)进行复制得到的
对于操作情况(2),即步骤S1003而言,对参考亮度信息进行上采样滤波,此时亮度信息没有任何损失。在这种操作情况下,由于YUV格式的视频中亮度分量的空间分辨率总是大于或等于色度分量的空间分辨率,因此参考色度信息必然需要进行上采样滤波才能和参考亮度信息的空间分辨率保持一致。 这时候需要根据YUV视频格式和对参考亮度信息的空间上采样频率来决定参考色度信息的空间上采样频率。这里将参考亮度信息的水平上采样频率(即前述实施例的第一水平上采样因子)记为S_Hor_RefLuma,将参考亮度信息的垂直上采样频率(即前述实施例的第一垂直上采样因子)记为S_Ver_RefLuma,将参考色度信息的水平上采样频率(即前述实施例的第二水平上采样因子)记为S_Hor_RefChroma,将参考色度信息的垂直上采样频率(即前述实施例的第二垂直上采样因子)记为S_Ver_RefChroma。
对于YUV444格式的视频:S_Hor_RefChroma=S_Hor_RefLuma,
S_Ver_RefChroma=S_Ver_RefLuma;
对于YUV422格式的视频:S_Hor_RefChroma=2×S_Hor_RefLuma,
S_Ver_RefChroma=S_Ver_RefLuma;
对于YUV411格式的视频:S_Hor_RefChroma=4×S_Hor_RefLuma,
S_Ver_RefChroma=S_Ver_RefLuma;
对于YUV420格式的视频:S_Hor_RefChroma=2×S_Hor_RefLuma,
S_Ver_RefChroma=2×S_Ver_RefLuma。
S903:根据核心参数,确定当前块的目标信息。
需要说明的是,对于S903而言,当前块的目标信息可以包括参考色度信息(refC)、参考亮度信息(refY)和重建亮度信息(recY)。其中,从图6A的参考区域中获取到参考色度信息refC和参考亮度信息refY。注意,获取的参考色度信息包括但不限于根据参考亮度信息位置获取对应的参考色度信息。获取的参考亮度信息包括但不限于:选取当前块的上方区域的参考亮度重建值和左方区域的参考亮度重建值。
还需要说明的是,在本申请实施例中,refC或refY或recY在一定条件下可以进行前处理操作后作为基于权重的色度预测输入。
示例性地,对不同尺寸的当前块,refC或refY或recY可以进行不同的滤波操作。其中,获取目标信息可以包括:
获取inSize数量的参考色度信息refC。这里的refC有可能经过了上采样滤波,也有可能未经过上采样滤波;若需要进行前处理操作例如滤波处理,则refC是经过前处理操作后得到的。
获取inSize数量的参考亮度信息refY。这里的refY有可能经过了上采样滤波,也有可能未经过上采样滤波;若需要进行前处理操作例如滤波处理,则refY是经过前处理操作后得到的。
此外,获取目标信息还可以包括获取当前块内的重建亮度信息recY。对于recY的情况将在后续步骤中对其进行详细描述。
S904:在当前块内的重建亮度信息不损失的情况下,根据目标信息进行基于权重的色度预测计算,得到当前块的第一预测块。
需要说明的是,为了不损失当前块内的重建亮度信息,获取的重建亮度信息recY可以是不经过任何处理的,也可以是经过上采样滤波之后的。对于获取重建亮度信息来说,如图11所示,可以包括以下步骤:
S1101:当前块内的重建亮度信息不损失。
S1102:当前块内的重建亮度信息保持不变。
S1103:对当前块内的重建亮度信息进行上采样滤波。
也就是说,为了得到更精确的色度预测值,本申请实施例对于当前块中的每个亮度像素,都将其与参考亮度进行作差得到亮度差,再而根据亮度差获取每个参考亮度同位参考色度的权重,最后根据权重进行加权预测得到每个同位色度的基于权重的色度预测值。如此,经过上述过程得到的预测块的空间分辨率与当前块的空间分辨率一致。因此可针对当前块内的重建亮度信息分为以下两种情况进行操作:
对于操作情况1(即步骤S1102而言):若不对当前块内的重建亮度信息进行任何处理,则需要根据YUV视频格式推断输出第一预测块的尺寸:
对于YUV444格式的视频,亮度分量和色度分量的空间分辨率相等,此时:predSizeW=nTbW,predSizeH=nTbH;
对于YUV422格式的视频,亮度分量和色度分量具有相同的垂直分辨率,但色度分量的水平分辨率是亮度分量的1/2,此时:predSizeW=2×nTbW,predSizeH=nTbH;
对于YUV411格式的视频,亮度分量和色度分量具有相同的垂直分辨率,但色度分量的水平分辨率是亮度分量的1/4,此时:predSizeW=4×nTbW,predSizeH=nTbH;
对于YUV420格式的视频,色度分量的水平分辨率和垂直分辨率都是亮度分量的1/2,此时:predSizeW=2×nTbW,predSizeH=2×nTbH。
对于操作情况2(即步骤S1103而言):若对当前块内的重建亮度信息进行上采样滤波,上采样滤波方式可以是线性插值方法中的任何一种,比如最邻近插值、双线性内插值、双三次插值、均值插值、中值插值、复制插值等;也可以是非线性插值方法中的任何一种,比如基于小波变换的插值算法、基于边缘信息的插值算法等;也可以基于卷积神经网络进行上采样等等。当前块内的重建亮度信息在上采样滤波之后需要根据YUV视频格式和对重建亮度信息的空间上采样频率来推断输出第一预测块的尺寸。这里将重建亮度信息的水平上采样频率(即前述实施例的第三水平上采样因子)记为S_Hor_RecLuma,将重建亮度信息的垂直上采样频率(即前述实施例的第三垂直上采样因子)记为S_Ver_RecLuma。
对于YUV444格式的视频,亮度分量和色度分量的空间分辨率相等,此时:
predSizeW=S_Hor_RecLuma×nTbW,predSizeH=S_Ver_RecLuma×nTbH;
对于YUV422格式的视频,亮度分量和色度分量具有相同的垂直分辨率,但色度分量的水平分辨率是亮度分量的1/2,此时:
predSizeW=2×nTbW×S_Hor_RecLuma,predSizeH=nTbH×S_Ver_RecLuma;
对于YUV411格式的视频,亮度分量和色度分量具有相同的垂直分辨率,但色度分量的水平分辨率是亮度分量的1/4,此时:
predSizeW=4×nTbW×S_Hor_RecLuma,predSizeH=nTbH×S_Ver_RecLuma;
对于YUV420格式的视频,色度分量的水平分辨率和垂直分辨率都是亮度分量的1/2,此时:
predSizeW=2×nTbW×S_Hor_RecLuma,predSizeH=2×nTbH×S_Ver_RecLuma。
示例性地,假定重建亮度信息的水平上采样频率S_Hor_RecLuma简称为upHor,重建亮度信息的垂直上采样频率S_Ver_RecLuma简称为upVer,那么对重建亮度信息recY进行上采样滤波,从而生成输入的重建亮度信息in_recY,一种插值过程的示例如下:
先将上参考重建亮度像素refY_T填入到将要输入的重建亮度信息的上一行in_recY[x][-1],将左参考重建亮度像素refY_L填入到将要输入的重建亮度信息的左一列in_recY[-1][y]。其中,x=0,…,predSizeW-1,y=0,…,predSizeH-1。此时通过下式将recY放入in_recY中对应位置((x+1)×upHor-1,(y+1)×upVer-1)中:
in_recY[(x+1)×upHor-1][(y+1)×upVer-1]=recY[x][y] (17)
可以理解为将in_recY均等划分为recSizeW×recSizeH个子块,则放入的位置就是每个子块的右下角位置。参见图12,以predSizeW=8和predSizeH=8、当前块尺寸为4×4为例,其中,斜纹填充为上参考重建亮度像素refY_T,竖条填充为左参考重建亮度像素refY_L,网格填充为当前块的重建亮度信息recY填入的位置。
●若水平上采样因子upHor大于1,则先进行水平方向上的上采样,上采样过程如下式所示:
sum=(upHor-dX)×rec_Y[xHor][yHor]+dX×rec_Y[xHor+upHor][yHor] (18)
该过程参见图13,以predSizeW=8和predSizeH=8、当前块尺寸为4×4为例,水平上采样时左参考亮度像素refY_L中与rec_Y填入水平位置对应的点也会作为上采样的参考点,这里也将其用网格填充标识。则此时网格填充点均为上采样的参考点,水平方向上每两个网格填充点之间通过线性插值得到的预测点用横条填充标识。
上采样方法采用线性插值上采样,即两个上采样亮度参考点(网格填充)之间的每个插值出来的点(横条填充)的值都是两个上采样参考亮度点的加权平均。根据式(18)和式(19),左侧上采样参考色度点的权重为(upHor-dX)/upHor,右侧上采样参考色度点的权重为dX/upHor,其中,dX=1,…,upHor-1(即当前插值点与左侧参考点之间的距离)。这样,在水平方向插值时,权重仅与水平上采样频率upHor有关。图14展示了一个权重的示例。在该示例中,upHor=4。其中,对于图14中的第一个插值点,左侧上采样参考色度点的权重为3/4,右侧上采样参考色度点的权重为1/4;对于图14中的第二个插值点,左侧上采样参考色度点的权重为2/4,右侧上采样参考色度点的权重为2/4;对于图14中的第三个插值点,左侧上采样参考色度点的权重为1/4,右侧上采样参考色度点的权重为3/4。
●若垂直上采样因子upVer大于1,需要进行垂直方向上的上采样,该过程与水平上采样过程类似。具体过程如下式所示:
sum=(upVer-dY)×rec_Y[xVer][yVer]+dY×rec_Y[xVer][yVer+upVer] (20)
该过程参见图15,以predSizeW=8和predSizeH=8、当前块尺寸为4×4为例,在完成如图13所示的水平上采样后,上参考亮度像素refY_T和in_recY所有已有的点都将作为垂直上采样的参考点,这里也都将其用网格填充标识。那么此时网格填充点均为上采样的参考点,垂直方向上每两个网格填充点 之间通过线性插值得到预测点用横条填充标识。
上采样方法同样使用线性插值,根据式(20)和式(21),上侧上采样参考点的权重为(upVer-dY)/upVer,下侧参考点的权重为dY/upVer,其中,dY=1,…,upVer-1(即当前插值点与上侧参考点之间的距离)。这样,在垂直插值时,权重仅与垂直上采样频率upVer有关。
这样,根据上述过程即可得到最终的in_recY。针对上述的插值过程,除了采用“先水平再垂直”的上采样方法,也可以采用“先垂直再水平”的上采样方法,还可以将“先水平再垂直”上采样后的重建亮度值和“先垂直再水平”上采样后的重建亮度值进行平均以得到最终输入的重建亮度值in_recY,也可以采用神经网络中的卷积操作代替上采样操作,本申请实施例对此均不作任何限定。
如此,最终获取输入的目标信息可以包括:inSize数量的参考色度信息refC、inSize数量的参考亮度信息refY以及当前块内的重建亮度信息recY。
可以理解地,对于S904而言,对于核心参数所规定的尺寸内的色度预测值用C
pred[i][j]表示,其中,i=0,…,predSizeW-1,j=0,…,predSizeH-1,逐个进行获取。注意,predSizeH和predSizeW为核心参数,在本申请实施例中,predSizeH大于或等于当前块的高度nTbH或predSizeW大于或等于当前块的宽度nTbW相同或不同。这样,基于权重的色度预测包括以下操作:通过获取权重、根据权重进行加权预测得到基于权重的色度预测值。而权重的获取过程包括构造亮度差向量和计算权重。其详细计算过程如下:
对于i=0,…,predSizeW-1,j=0,…,predSizeH-1
对于k=0,1...,inSize-1
构造亮度差向量中各个元素diffY[i][j][k]
计算权重向量中各个元素cWeight[i][j][k](或cWeightFloat[i][j][k]),然后由cWeight[i][j](或cWeightFloat[i][j][k])和refC计算色度预测值C
pred[i][j]。
在一种具体的实施例中,在获取重建亮度信息之后,如图16所示,该方法还可以包括:
S1601:对于每个亮度位置的待预测像素,利用目标信息所包括的参考色度信息、参考亮度信息和当前块的重建亮度信息构造亮度差向量。
需要说明的是,对核心参数所规定尺寸内的每个待预测像素C
pred[i][j],将其对应的重建亮度信息recY[i][j]与inSize数量的参考亮度信息refY相减并取绝对值得到亮度差向量diffY[i][j][k]。具体计算公式如下:
diffY[i][j][k]=abs(refY[k]-recY[i][j]) (22)
其中,
abs(x)表示x的绝对值。
还需要说明的是,在一定条件下,可以对待预测像素的亮度差向量进行线性或非线性数值处理。例如,可根据核心参数中的控制参数S来缩放待预测像素的亮度差向量的数值。
S1602:对于每个亮度位置的待预测像素,根据亮度差向量,利用非线性函数计算权重向量。
需要说明的是,在本申请实施例中,采用权重模型对每个待预测像素C
pred[i][j]对应的亮度差向量diffY[i][j]进行处理得到对应的浮点型权重向量cWeightFloat[i][j]。这里的权重模型包括但不限于非线性归一化函数、非线性指数归一化函数等等非线性函数,并不作任何限定。
示例性地,可以采用非线性Softmax函数作为权重模型,每个待预测像素对应的亮度差向量diffY[i][j]作为权重模型的输入,该权重模型输出每个待预测像素对应的浮点型权重向量cWeightFloat[i][j],计算公式如下所示:
在一定条件下,也可以根据核心参数中的控制参数(S)对权重模型进行调整。示例性地,如果当前块的尺寸灵活,那么可以根据控制参数(S)调整权重模型,以非线性Softmax函数为例,可根据当前块所属的块分类类别不同,选取不同的控制参数来调整函数,此时每个待预测像素对应的权重向量计算公式如下所示:
在本申请实施例中,还可以对加权系数进行定点化处理。因此,在一些实施例中,该方法还包括:若加权系数为浮点加权系数,则对浮点加权系数进行定点化处理,得到定点加权系数。
如此,在上述式(23)或者式(24)计算完毕之后,可以对cWeightFloat进行定点化处理,如下所示:
cWeight[i][j][k]=round(cWeightFloat[i][j][k]×2
Shift) (25)
其中,round(x)=Sign(x)×Floor(abs(x)+0.5)。这里,Floor(x)表示小于或等于x的最大整数,
abs(x)表示x的绝对值。另外,Shift是为了提高精度采取的定点化操作中所设置的移位量。
S1603:对于每个亮度位置的待预测像素,根据权重向量与目标信息所包括的参考色度信息进行加权计算,得到色度预测值。
需要说明的是,根据每个待预测像素对应的权重向量cWeight[i][j](或cWeightFloat[i][j])和参考色度信息refC计算待预测像素的色度预测值。具体地,将每个待预测像素C
pred[i][j]的参考色度信息refC与每个待预测像素对应的权重向量元素逐一对应相乘得到subC[i][j](或subCFloat[i][j]),将相乘结果累加即为每个待预测像素的色度预测值C
pred[i][j],即实现对色度分量的加权预测。
在一种可能的实现方式中,可以包括:根据浮点加权系数和参考色度信息进行加权计算,得到待预测像素的初始预测值;对初始预测值进行定点化处理,得到待预测像素的目标预测值。
示例性地,计算公式如下所示:
对于k=0,1,...,inSize-1
subCFloat[i][j][k]=(cWeightFloat[i][j][k]×refC[k]) (26)
在计算完毕之后,还可以对subCFloat[i][j][k]进行定点化处理,定点化过程中为保留一定的计算精度,这里可以乘上一个系数,具体如下所示:
subC[i][j][k]=round(subCFloat[i][j][k]×2
Shift) (27)
或者:
对于i=0,…,predSizeW-1,j=0,…,predSizeH-1
在计算完毕后,对C
predFloat[i][j]进行定点化,如:
C
pred[i][j]=round(C
predFloat[i][j]) (29)
在另一种可能的实现方式中,可以根据定点加权系数和参考色度信息进行加权计算,得到待预测像素的初始预测值;对初始预测值进行定点化补偿处理,得到待预测像素的目标预测值。
示例性地,计算公式如下所示:
对于k=0,1,...,inSize-1
subC[i][j][k]=(cWeight[i][j][k]×refC[k]) (30)
然后使用定点化的subC[i][j][k]进行计算,具体如下:
对于i=0,…,predSizeW-1,j=0,…,predSizeH-1
其中,Offset=1<<(Shift
1-1),Shift
1是在计算cWeight[i][j][k]或者subC[i][j][k]时(Shift
1=Shift),也可以是其他环节为了提高精度采取的定点化操作中需要的移位量。
S1604:对于每个亮度位置的待预测像素,对计算得到的色度预测值进行修正处理,确定当前块的第一预测块。
需要说明的是,色度预测值应该限定在一预设范围内。如果超出该预设范围,那么需要进行相应的修正操作。示例性地,在一种可能的实现方式中,可以对C
pred[i][j]的色度预测值进行钳位(clip)操作,具体如下:
●当C
pred[i][j]的值小于0时,将其置为0;
●当C
pred[i][j]的值大于(1<<BitDepth)-1时,其置为(1<<BitDepth)-1。
其中,BitDepth为色度像素值所要求的比特深度,以保证预测块中所有色度预测值都在0到(1<<BitDepth)-1之间。
即:
C
pred[i][j]=Clip3(0,(1<<BitDepth)-1,C
pred[i][j]) (32)
其中,
或者,将式(32)和式(33)进行合并,得到如下公式所示:
S905:对计算得到的第一预测块进行下采样滤波,确定当前块的第二预测块,且第二预测块与当前块的色度分量具有相同的空间分辨率。
需要说明的是,对于S905而言,对当前块内的重建亮度信息中每个位置都进行了色度预测最终得到predSizeW×predSizeH大小的第一预测块,此时第一预测块的尺寸必定是大于或等于当前块的尺寸,因此需要对此时的第一预测块进行下采样滤波,以恢复到和当前块一样的尺寸。
首先根据输出的第一预测块的宽度predSizeW和当前块的宽度nTbW,计算得到水平下采样因子downHor;同样根据输出的第一预测块的高度predSizeH和当前块的高度nTbH,计算得到垂直下采样因子downVer,计算方法如下所示:
downHor=predSizeW/nTbW (35)
downVer=predSizeH/nTbH (36)
紧接着,按照如下情况将第一预测块predWcp进行下采样滤波后将采样值填入到第二预测块predSamples中:
(ⅰ)若downHor大于1,downVer等于1,则只需要水平方向进行下采样滤波,具体公式如下:
predSamples[x][y]=(predWcp[downHor×x-1][y]+2×predWcp
[downHor×x][y]+predWcp[downHor×x+1][y]+2)>>2 (37)
(ⅱ)若downHor等于1,downVer大于1,则只需要垂直方向进行下采样,具体公式如下:
predSamples[x][y]=(predWcp[x][downVer×y-1]+2×predWcp
[x][downVer×y]+predWcp[x][downVer×y+1]+2)>>2 (38)
(ⅲ)若downHor和downVer都大于1,则水平和垂直方向都需要进行下采样,具体公式如下:
predSamples[x][y]=(predWcp[downHor×x-1][downVer×y]+predWcp[downHor×x-1][downVer×y+1]+2×predWcp[downHor×x][downVer×y]+2×predWcp[downHor×x][downVer×y+1]+predWcp[downHor×x+1][downVer×y]+predWcp[downHor×x+1][downVer×y+1]+4)>>3
(39)
(ⅳ)若downHor和downVer都等于1,则水平和垂直方向都不需要进行下采样,具体公式如下:
predSamples[x][y]=predWcp[x][y] (40)
其中,x=0,…,predSizeW-1,y=0,...,predSizeH-1,predSamples为最终下采样后的色度预测值。
S906:对第二预测块的色度预测值进行后处理操作,确定当前块的目标预测块。
需要说明的是,对于S906而言,基于权重的色度预测输出的色度预测值(predWcp)之后,在一定条件下还需要后处理操作后作为最终的色度预测值(predSamples),否则最终的色度预测值predSamples即为predWcp。
示例性地,为了降低WCP逐像素独立并行预测带来的不稳定性,可以对predWcp进行平滑滤波作为最终的色度预测值predSamples。或者,为了进一步提升WCP预测值的准确性,可以对predWcp进行位置相关的修正过程。比如:利用空间位置接近的参考像素对每个待预测像素计算色度补偿值,用此色度补偿值对predWcp进行修正,将修正后的预测值作为最终的色度预测值predSamples。或者,为了进一步提升WCP预测值的准确性,可以将其他色度预测模式计算的色度预测值与WCP计算的色度预测值predWcp进行加权融合,将此融合结果作为最终的色度预测值predSamples。比如:可以将CCLM模式预测得到的色度预测值与WCP计算的色度预测值predWcp进行等权重或不等权重加权,加权结果作为最终的色度预测值predSamples。或者,为了提高WCP预测性能,可以采用神经网络模型对WCP的预测输出predWcp进行修正等等,本申请实施例对此不作任何限定。
还可以理解地,在本申请实施例中,在进行色度预测时为了不损失亮度信息,还可以不对参考亮度信息和当前已重建亮度信息进行下采样滤波,采取保持亮度或者对其上采样的操作,然后对当前已重建亮度信息的每个亮度点计算与参考亮度信息的绝对差值进行非线性映射得到每个参考色度点的权重并对所有参考色度点进行加权获得同位色度点的预测值。如此,需要预测的色度点数和当前已重建亮度区域的亮度点数相同,从而需要对色度预测块进行下采样恢复和原始色度块一样大小的尺寸。这种做法可以保证已有亮度信息的准确性,准确的亮度信息有利于提高非线性映射模型的准确性和稳定性,从而增加色度预测值的准确性。
为了减少计算复杂度,不对当前已重建亮度信息进行上采样滤波,然后考虑不对当前当前已重建亮度信息中每个亮度位置进行同位色度点的预测,可以选取部分亮度位置进行同位色度点的预测。如此,后续也不一定必须对色度预测块进行下采样滤波。在另一种具体的实施例中,如图17所示,该方法可以包括:
S1701:当前块内的重建亮度信息不损失。
S1702:当前块内的重建亮度信息保持不变。
S1703:对于部分亮度位置的待预测像素,利用目标信息所包括的参考色度信息、参考亮度信息和当前块的重建亮度信息构造亮度差向量。
S1704:对于部分亮度位置的待预测像素,根据亮度差向量,利用非线性函数计算权重向量。
S1705:对于部分亮度位置的待预测像素,根据权重向量与目标信息所包括的参考色度信息进行加权计算,得到色度预测值。
S1706:对于部分亮度位置的待预测像素,对计算得到的色度预测值进行修正处理,确定当前块的第一预测块。
需要说明的是,在本申请实施例中,这里的修正处理,包括clip操作。
还需要说明的是,在本申请实施例中,可以选取部分亮度位置进行同位色度点的预测,该过程说明如下:
(ⅰ)为了节省后续对色度预测块进行上采样滤波或者下采样滤波的操作,可以根据YUV视频格式特征选取相应的位置进行色度预测,假设当前亮度点的位置为CurRecLuma(i,j),则需要进行色度预测的点的位置为CurPredChroma(x,y),两者位置的坐标关系具体如下:
当指示为YUV444格式的视频时:x=i,y=j;
当指示为YUV422格式的视频时:x=2×i,y=j;
当指示为YUV411格式的视频时:x=4×i,y=j;
当指示为YUV420格式的视频时:x=2×i,y=2×j。
(ⅱ)为了进一步减少色度预测时的计算复杂度,可以选择更少的同位色度点进行预测。假设当前亮度点的位置为CurRecLuma(i,j),则需要进行色度预测的点的位置为CurPredChroma(x,y)。假设当前亮度块的水平取样位置因子为S_Pos_Hor,垂直取样位置因子为S_Pos_Ver。当前亮度点位置和需要进行色度预测的点的位置两者关系具体如下:
当指示为YUV444格式/YUV422格式/YUV411格式/YUV420格式的视频时:x=i×S_Pos_Hor,y=j×S_Pos_Ver。
还可以理解地,在本申请实施例中,除了本申请实施例针对不同情况下采取的不同下采样滤波方法,也可以针对所有情况,即不考虑水平下采样因子和垂直下采样因子的情况,对需要下采样滤波的方向(垂直方向或水平方向)每nTbW/predSizeW或nTbH/predSizeH个预测值求这些预测值的均值,然后将该均值作为下采样后的预测值。或者,也可以采用神经网络模型中的卷积和池化操作代替下采样滤波的操作,本申请实施例对此不作任何限定。
本实施例提供了一种解码方法,通过本实施例对前述实施例的具体实现进行详细阐述,从中可以看出,根据前述实施例的技术方案,可以提高WCP预测技术下色度预测值的准确性。具体地,通过相邻区域的参考信息与当前块的亮度信息计算加权系数,将此加权系数参与当前块的色度预测,充分挖掘了当前块与相邻区域在亮度信息上的相关性,并将此相关性参与当前块的色度预测,从而提升了色度预测的准确性。例如,该解码方法在测试软件ECM3.1上,以48帧间隔在全帧内(All Intra)条件下进行测试,可以在Y,Cb,Cr上分别获得-0.10%,-0.74%,-0.61%的BD-rate变化(即同等峰值信噪比(Peak Signal to Noise Ratio,PSNR)下平均码率变化)。尤其在大分辨率的序列上,具有更好的性能表现,在Class A1测试序列上可以达到Y有-0.24%的BD-rate变化。另外,本申请实施例在基于WCP进行色度预测时为了不损失亮度信息,不对相邻区域的参考亮度和当前已重建的亮度区域进行下采样滤波,采取保持亮度或者对其上采样的操作,然后对当前已重建亮度信息中的每个亮度点计算与参考亮度的绝对差值进行非线性映射得到每个参考色度的权重并对所有参考色度点进行加权获得同位色度点的预测值。这样可以保证已有亮度信息的准确性,而且准确的亮度信息有利于提高非线性映射模型的准确性和稳定性,进一步增加了色度预测的准确性。
在本申请的又一实施例中,参见图18,其示出了本申请实施例提供的一种编码方法的流程示意图一。如图18所示,该方法可以包括:
S1801:确定当前块的第一颜色分量的参考样值。
需要说明的是,本申请实施例的编码方法应用于编码装置,或者集成有该编码装置的编码设备(也可简称为“编码器”)。另外,本申请实施例的编码方法具体可以是指一种帧内预测方法,更具体地,是一种基于权重的色度预测方法。
在本申请实施例中,视频图像可以划分为多个编码块,每个编码块可以包括第一颜色分量、第二颜色分量和第三颜色分量,而这里的当前块是指视频图像中当前待进行帧内预测的编码块。另外,假定当前块进行第一颜色分量的预测,而且第一颜色分量为亮度分量,即待预测分量为亮度分量,那么当前块也可以称为亮度预测块;或者,假定当前块进行第二颜色分量的预测,而且第二颜色分量为色度分量,即待预测分量为色度分量,那么当前块也可以称为色度预测块。
还需要说明的是,在本申请实施例中,当前块的参考信息可以包括有当前块的相邻区域中的第一颜色分量采样点的取值和当前块的相邻区域中的第二颜色分量采样点的取值,这些采样点(Sample)可以 是根据当前块的相邻区域中的已编码像素确定的。在一些实施例中,当前块的相邻区域可以包括下述至少之一:上侧相邻区域、右上侧相邻区域、左侧相邻区域和左下侧相邻区域。
在一些实施例中,所述确定当前块的第一颜色分量的参考样值,可以包括:根据当前块的相邻区域中的第一颜色分量采样点的取值,确定当前块的第一颜色分量的参考样值。
需要说明的是,在本申请实施例中,当前块的参考像素可以是指与当前块相邻的参考像素点,也可称为当前块的相邻区域中的第一颜色分量采样点、第二颜色分量采样点,用Neighboring Sample或Reference Sample表示。另外,在本申请实施例中,第一颜色分量为亮度分量,第二颜色分量为色度分量;此时当前块的相邻区域中的第一颜色分量采样点的取值表示为当前块的参考像素对应的参考亮度信息,当前块的相邻区域中的第二颜色分量采样点的取值则表示为当前块的参考像素对应的参考色度信息。
在一些实施例中,对于第一颜色分量采样点的取值的确定,该方法还可以包括:对相邻区域中的第一颜色分量采样点进行筛选处理,确定第一颜色分量采样点的取值。
需要说明的是,在相邻区域中的第一颜色分量采样点中,可能会存在部分不重要的采样点(例如,这些采样点的相关性较差)或者部分异常的采样点,为了保证预测的准确性,需要将这些采样点剔除掉,以便得到有效的第一颜色分量采样点的取值。也就是说,在本申请实施例中,根据当前块的相邻区域中的第一颜色分量采样点,组成第一采样点集合;那么可以对第一采样点集合进行筛选处理,确定第一颜色分量采样点的取值。
在一种具体的实施例中,所述对相邻区域中的第一颜色分量采样点进行筛选处理,确定第一颜色分量采样点的取值,可以包括:
基于相邻区域中的第一颜色分量采样点的位置和/或颜色分量强度,确定待选择采样点位置;根据待选择采样点位置,从相邻区域中确定第一颜色分量采样点的取值。
需要说明的是,在本申请实施例中,颜色分量强度可以用颜色分量信息来表示,比如参考亮度信息、参考色度信息等;这里,颜色分量信息的值越大,表明了颜色分量强度越高。这样,针对相邻区域中的第一颜色分量采样点进行筛选,可以是根据采样点的位置来进行筛选的,也可以是根据颜色分量强度来进行筛选的,从而根据筛选得到的采样点确定出有效的第一颜色分量采样点,进而确定出第一颜色分量采样点的取值。
在一些实施例中,所述确定当前块的第一颜色分量的参考样值,还可以包括:对第一颜色分量采样点的取值进行第二滤波处理,得到当前块的第一颜色分量的滤波相邻样值;根据当前块的第一颜色分量的滤波相邻样值,确定当前块的第一颜色分量的参考样值。在本申请实施例中,当前块的第一颜色分量的滤波相邻样值的数量大于第一颜色分量采样点的取值的数量。
在本申请实施例中,第二滤波处理可以为上采样滤波处理。其中,第一颜色分量为亮度分量,为了保证参考亮度信息不损失,这里可以是参考亮度信息保持不变,也可以是对参考亮度信息进行上采样滤波处理。
在一些实施例中,所述确定当前块的第一颜色分量的参考样值,还可以包括:基于当前块中第一参考颜色分量采样点的重建值,确定当前块的第一颜色分量的参考样值。
在本申请实施例中,第一参考颜色分量可以为亮度分量;那么,当前块中第一参考颜色分量采样点的重建值即为当前块的重建亮度信息。
进一步地,在一些实施例中,所述确定当前块的第一颜色分量的参考样值,还可以包括:对当前块中第一参考颜色分量采样点的重建值进行第三滤波处理,得到当前块中第一参考颜色分量采样点的滤波样值;根据当前块中第一参考颜色分量采样点的滤波样值,确定当前块的第一颜色分量的参考样值。
在本申请实施例中,当前块中第一参考颜色分量采样点的滤波样值的数量大于当前块中第一参考颜色分量采样点的重建值的数量。
在本申请实施例中,第三滤波处理可以为上采样滤波处理。其中,第一参考颜色分量为亮度分量,为了保证当前块内的重建亮度信息不损失,获得更精确的色度预测值,这里可以是当前块内的重建亮度信息保持不变,也可以是对当前块内的重建亮度信息进行上采样滤波处理。
可以理解地,在本申请实施例中,当前块的第一颜色分量的参考样值还可以设置为亮度差信息。因此,在一种可能的实现方式中,当前块的第一颜色分量的参考样值设置为第一颜色分量采样点的取值与第一参考颜色分量采样点的重建值之差的绝对值。
在另一种可能的实现方式中,当前块的第一颜色分量的参考样值设置为第一颜色分量的滤波相邻样值与第一参考颜色分量采样点的重建值之差的绝对值。
在又一种可能的实现方式中,当前块的第一颜色分量的参考样值设置为第一颜色分量的滤波相邻样值与第一参考颜色分量采样点的滤波样值之差的绝对值。
在再一种可能的实现方式中,当前块的第一颜色分量的参考样值设置为第一颜色分量采样点的取值 与第一参考颜色分量采样点的滤波样值之差的绝对值。
也就是说,在保持亮度信息不损失的情况下,可以对当前块的相邻区域中的参考亮度信息进行上采样滤波处理,也可以对当前块内的重建亮度信息进行上采样滤波处理,还可以对这两者都进行上采样滤波处理,甚至还可以对这两者都不进行上采样滤波处理,然后根据不同组合来确定亮度差信息,将亮度差信息作为当前块的第一颜色分量的参考样值。
S1802:根据当前块的第一颜色分量的参考样值,确定加权系数。
需要说明的是,在本申请实施例中,所述根据当前块的第一颜色分量的参考样值,确定加权系数,可以包括:确定在预设映射关系下第一颜色分量的参考样值对应的取值;将加权系数设置为等于取值。
可以理解地,在本申请实施例中,第一颜色分量的参考样值可以为当前块的第一颜色分量的滤波相邻样值与当前块中第一参考颜色分量采样点的滤波样值之差的绝对值。其中,第一参考颜色分量为第一颜色分量,且第一颜色分量是与本申请实施例待预测的第二颜色分量不同的颜色分量。
需要说明的是,在本申请实施例中,对当前块中待预测像素的色度分量进行预测,可以选取当前块中的至少一个待预测像素,分别计算其重建亮度与相邻区域中的参考亮度之间的亮度差(用|ΔY
k|表示)。其中,如果|ΔY
k|较小,表明亮度值的相似性比较强,对应的加权系数(用w
k表示)赋予较大的权重;反之,如果|ΔY
k|较大,表明亮度值的相似性比较弱,w
k赋予较小的权重。也就是说,预设映射关系下,w
k与|ΔY
k|之间近似呈反比。
进一步地,在一些实施例中,所述确定在预设映射关系下第一颜色分量的参考样值对应的取值,可以包括:确定第一因子;根据第一因子和第一颜色分量的参考样值,确定第一乘积值;确定第一乘积值在预设映射关系下对应的取值。
在一种具体的实施例中,所述确定第一因子,可以包括:第一因子是预设常数值。
在另一种具体的实施例中,所述确定第一因子,可以包括:根据当前块的尺寸参数,确定第一因子的取值。
进一步地,在一些实施例中,该方法还可以包括:根据预设的当前块的尺寸参数与第一因子的取值映射查找表,确定第一因子的取值。
在这里,当前块的尺寸参数可以包括以下参数的至少之一:当前块的宽度,当前块的高度、当前块的宽度与高度的乘积。
需要说明的是,本申请实施例可以采用分类方式固定第一因子的取值。例如,将根据当前块的尺寸参数分为三类,确定每一类对应的第一因子的取值。针对这种情况,本申请实施例还可以预先存储当前块的尺寸参数与第一因子的取值映射查找表,然后根据该查找表即可确定出第一因子的取值。示例性地,前述的表1示出了一种第一因子与当前块的尺寸参数之间的对应关系示意。
在又一种具体的实施例中,所述确定第一因子,可以包括:根据当前块的参考像素数量,确定第一因子的取值。
进一步地,在一些实施例中,该方法还可以包括:根据预设的当前块的参考像素数量与第一因子的取值映射查找表,确定第一因子的取值。
需要说明的是,本申请实施例可以将参考像素数量划分为三类,仍然采用分类方式固定第一因子的取值。例如,将根据当前块的参考像素数量划分为三类,确定每一类对应的第一因子的取值。针对这种情况,本申请实施例也可以预先存储当前块的参考像素数量与第一因子的取值映射查找表,然后根据该查找表即可确定出第一因子的取值。示例性地,前述的表2示出了一种第一因子与当前块的参考像素数量之间的对应关系示意。
进一步地,对于第一乘积值而言,所述根据第一因子和第一颜色分量的参考样值,确定第一乘积值,可以包括:
将第一乘积值设置为等于第一因子和第一颜色分量的参考样值的乘积;或者,
将第一乘积值设置为等于对第一颜色分量的参考样值进行比特右移后得到的数值,其中,比特右移的位数等于第一因子;或者,
将第一乘积值设置为根据第一因子对第一颜色分量的参考样值进行加法和比特移位操作后得到的数值。
示例性地,假定第一因子等于0.25,第一颜色分量的参考样值用Ref表示,那么第一乘积值可以等于0.25×Ref,而0.25×Ref又可表示为Ref/4,即Ref>>2。另外,在定点化计算过程中,还有可能会将浮点数转换为加法和位移操作;也就是说,对于第一乘积值而言,其计算方式不作任何限定。
还可以理解地,在本申请实施例中,第一参考颜色分量也可以为色度分量,即选取当前块中的至少一个待预测像素,分别计算其重建色度与相邻区域中的参考色度之间的色度差(用|ΔC
k|表示)。其中,如果|ΔC
k|较小,表明色度值的相似性比较强,对应的加权系数(用w
k表示)可以赋予较大的权重;反 之,如果|ΔC
k|较大,表明色度值的相似性比较弱,w
k可以赋予较小的权重,也就是说,在计算加权系数时,第一颜色分量的参考样值也可以为|ΔC
k|,进而计算出加权系数。
简单来说,在本申请实施例中,对于第一颜色分量的参考样值而言,其可以是|ΔC
k|,即色度差的绝对值;或者也可以是|ΔY
k|,即亮度差的绝对值;或者还可以是|αΔY
k|,即亮度差的绝对值与预设乘子之积等等。其中,这里的预设乘子即为本申请实施例所述的第二因子。
进一步地,对于第二因子而言,在一种具体的实施例中,该方法还可以包括:根据参考像素的第一颜色分量值与参考像素的第二颜色分量值进行最小二乘法计算,确定第二因子。
也就是说,假定参考像素的数量为N个,参考像素的第一颜色分量值即为当前块的参考亮度信息,参考像素的第二颜色分量值即为当前块的参考色度信息,那么可以对N个参考像素的色度分量值和亮度分量值进行最小二乘法计算,得到第二因子。示例性地,最小二乘法回归计算如前述的式(5)所示,可以计算得到第二因子。
另外,对于预设映射关系而言,在一些实施例中,预设映射关系可以是Softmax函数,如前述的式(6)或式(7)所示。其中,Softmax函数是归一化指数函数,但是本申请实施例也可以不用归一化,其取值并不局限在[0,1]范围内。
还需要说明的是,对于预设映射关系而言,除了Softmax函数之外,在另一些实施例中,预设映射关系可以是与第一颜色分量的参考样值具有反比关系的加权函数,如前述的式(8)或式(9)所示。
这样,预设映射关系可以是如式(4)所示,也可以是如式(6)或式(7)所示,还可以是如式(8)或式(9)所示,甚至还可以是其他能够拟合参考像素的参考亮度值与当前块中待预测像素的亮度重建值越接近、参考像素的参考色度值对当前块中待预测像素的重要性越高的趋势构建加权系数的函数模型等,甚至也可以简化操作,例如采用数组元素查表方式来减少一部分的计算操作等等,本申请实施例不作具体限定。
如此,根据第一颜色分量的参考样值(例如|ΔY
kij|),即可确定出加权系数,具体可以包括:w
1、w
2、…、w
N等N个加权系数,其中,N表示第二颜色分量的参考样值的数量。在这里,理论上而言,这N个加权系数之和等于1,而且每一个加权系数均为大于或等于0且小于或等于1的值。
S1803:根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块。
需要说明的是,在本申请实施例中,为了保证亮度信息不损失,此时针对当前块中每个重建亮度位置都进行了色度预测,使得所得到的第一预测块尺寸大于原来的当前块尺寸,即:第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量。
还需要说明的是,在本申请实施例中,对于当前块的第二颜色分量的参考样值的确定,该方法还可以包括:根据当前块的相邻区域中的第二颜色分量采样点的取值,确定当前块的第二颜色分量的参考样值。在这里,相邻区域可以包括下述至少之一:上侧相邻区域、右上侧相邻区域、左侧相邻区域和左下侧相邻区域。
在一种具体的实施例中,该方法还可以包括:对当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到当前块的第二颜色分量的滤波相邻样值;根据当前块的第二颜色分量的滤波相邻样值,确定当前块的第二颜色分量的参考样值。在本申请实施例中,当前块的第二颜色分量的滤波相邻样值的数量大于当前块的相邻区域中的第二颜色分量采样点的取值的数量。
在本申请实施例中,第四滤波处理可以为上采样滤波;其中,上采样率是2的正整数倍。
具体来说,第一颜色分量为亮度分量,第二颜色分量为色度分量,为了保证参考亮度信息不损失,可以对参考色度信息进行上采样滤波。示例性地,对于YUV420格式的2M×2N的当前块,其色度块大小为M×N,相邻区域的参考色度信息的数量为M+N,上采样滤波后可以得到2M+2N个色度参考样值,然后使用加权预测的方式得到2M×2N个色度预测值,后续再下采样滤波以得到M×N个色度预测值作为最终预测值。需要注意的是,对于YUV420格式的2M×2N的当前块,其色度块大小为M×N,相邻区域的参考色度信息的数量为M+N,也可以仅使用这M+N个参考色度信息,使用加权系数计算得到2M×2N个色度预测值,后续再下采样滤波处理以得到M×N个色度预测值作为最终预测值。另外,对于YUV420格式的2M×2N的当前块,其色度块大小为M×N,相邻区域的参考色度信息的数量为M+N,上采样滤波后得到4M+4N个色度参考样值;或者,对于YUV444格式的2M×2N的当前块,其色度块大小为2M×2N,相邻区域的参考色度信息的数量为2M×2N,上采样滤波后得到4M+4N个色度参考样值;后续根据这些色度参考样值使用加权预测以及下采样滤波的方式,也可以得到M×N个色度预测值作为最终预测值,这里不作任何限定。
还需要说明的是,在本申请实施例中,无论是对相邻区域中第一颜色分量采样点的取值进行的第二滤波处理,还是对当前块中第一参考颜色分量采样点的重建值进行的第三滤波处理,甚至还是对相邻区 域中第二颜色分量采样点的取值进行的第四滤波处理,这三种滤波处理均为上采样滤波处理。其中,第二滤波处理可以采用第一滤波器,第三滤波处理可以采用第二滤波器,第四滤波处理可以采用第三滤波器;对于这三种滤波器而言,在这里,第一滤波器、第二滤波器和第三滤波器均可以为上采样滤波器。由于处理的数据不同,滤波器的上采样率也可能存在不同,因此,这三种滤波器可以相同,也可以不同。进一步地,第一滤波器、第二滤波器和第三滤波器均可以为神经网络滤波器,本申请实施例对此也不作任何限定。
可以理解地,由于相邻区域中第一颜色分量采样点的取值(即参考亮度信息)的空间分辨率、相邻区域中第二颜色分量采样点的取值(即参考色度信息)的空间分辨率,甚至当前块中第一参考颜色分量采样点的重建值(即重建亮度信息)的空间分辨率都会受到颜色格式信息的影响;因此,还可以根据当前的颜色格式信息进行第二滤波处理、第三滤波处理或者第四滤波处理。下面以第四滤波处理为例,在一些实施例中,该方法还可以包括:基于颜色格式信息,对当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到当前块的第二颜色分量的滤波相邻样值。
在一种具体的实施例中中,对于第四滤波处理而言,还可以包括:若颜色格式信息指示为4:2:0采样,则对当前块的相邻区域中的第二颜色分量采样点的取值进行上采样滤波;其中,上采样率是2的正整数倍。
需要说明的是,在本申请实施例中,如果颜色格式信息指示为亮度与色度的空间分辨率相等(如YUV444格式),那么不需要对参考色度信息作任何处理;如果颜色格式信息指示为亮度和色度的空间分辨率不一致(如YUV422格式/YUV411格式/YUV420格式等具有色度亚采样特征的视频),且色度分量的空间分辨率小于亮度分量的空间分辨率,那么需要对从相邻区域中获取的参考色度信息进行上采样滤波处理。
进一步地,在确定出当前块的第二颜色分量的参考样值之后,在一些实施例中,对于S1803来说,根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块,可以包括:确定第二颜色分量的参考样值与对应的加权系数的加权值;将第一预测块中第二颜色分量采样点的预测值设置为等于N个加权值之和;其中,N表示第二颜色分量的参考样值的数量,N是正整数。
也就是说,如果第二颜色分量的参考样值的数量有N个,那么首先确定每一个第二颜色分量的参考样值与对应的加权系数的加权值(即w
kC
k),然后将这N个加权值之和作为预测块中的第二颜色分量采样点的预测值。具体地,其计算公式具体如前述的式(16)所示。需要注意的是,这种方式利于并行处理,可以加快计算速度。
还可以理解地,在对当前块的相邻区域中的参考亮度信息和参考色度信息均进行上采样滤波处理时,这时候,还可以包括:基于颜色格式信息,利用第一水平上采样因子和第一垂直上采样因子对当前块的相邻区域中的第一颜色分量采样点的取值进行第二滤波处理,得到当前块的第一颜色分量的滤波相邻样值;以及利用第二水平上采样因子和第二垂直上采样因子对当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到当前块的第二颜色分量的滤波相邻样值。
在一种可能的实现方式中,该方法还可以包括:
若颜色格式信息指示为4:4:4采样,则确定第二水平上采样因子等于第一水平上采样因子,第二垂直上采样因子等于第一垂直上采样因子;
若颜色格式信息指示为4:2:2采样,则确定第二水平上采样因子等于2倍的第一水平上采样因子,第二垂直上采样因子等于第一垂直上采样因子;
若颜色格式信息指示为4:1:1采样,则确定第二水平上采样因子等于4倍的第一水平上采样因子,第二垂直上采样因子等于第一垂直上采样因子;
若颜色格式信息指示为4:2:0采样,则确定第二水平上采样因子等于2倍的第一水平上采样因子,第二垂直上采样因子等于2倍的第一垂直上采样因子。
需要说明的是,在本申请实施例中,对参考亮度信息进行上采样滤波,此时亮度信息没有任何损失。在这种情况下,由于YUV视频中的亮度分量的空间分辨率总是大于等于色度分量的空间分辨率,因此参考色度信息必然要进行上采样滤波才能和参考亮度信息的空间分辨率保持一致。这时候可以根据YUV视频格式和对参考亮度信息的空间上采样频率(即第一水平上采样因子和第一垂直上采样因子)来决定参考色度信息的空间上采样频率(即第二水平上采样因子和第二垂直上采样因子)。
还可以理解地,在不对当前块内的重建亮度信息进行上采样滤波处理时,这时候可以根据YUV视频格式推断第一预测块的尺寸大小。因此,在另一种可能的实现方式中,该方法还可以包括:
若颜色格式信息指示为4:4:4采样,则确定第一预测块的宽度等于当前块的宽度,第一预测块的高度等于当前块的高度;
若颜色格式信息指示为4:2:2采样,则确定第一预测块的宽度等于2倍的当前块的宽度,第一预测 块的高度等于当前块的高度;
若颜色格式信息指示为4:1:1采样,则确定第一预测块的宽度等于4倍的当前块的宽度,第一预测块的高度等于当前块的高度;
若颜色格式信息指示为4:2:0采样,则确定第一预测块的宽度等于2倍的当前块的宽度,第一预测块的高度等于2倍的当前块的高度。
还可以理解地,在对当前块内的重建亮度信息进行上采样滤波处理时,当前块亮度上采样之后需要根据YUV视频格式和对当前块亮度的空间上采样频率来推断第一预测块的尺寸大小。这时候,可以包括:基于颜色格式信息,利用第三水平上采样因子和第三垂直上采样因子对当前块中第一参考颜色分量采样点的重建值进行第三滤波处理,得到当前块中第一参考颜色分量采样点的滤波样值。
在又一种可能的实现方式中,该方法还可以包括:
若颜色格式信息指示为4:4:4采样,则确定第一预测块的宽度等于当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于当前块的高度与第三垂直上采样因子的乘积;
若颜色格式信息指示为4:2:2采样,则确定第一预测块的宽度等于2倍的当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于当前块的高度与第三垂直上采样因子的乘积;
若颜色格式信息指示为4:1:1采样,则确定第一预测块的宽度等于4倍的当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于当前块的高度与第三垂直上采样因子的乘积;
若颜色格式信息指示为4:2:0采样,则确定第一预测块的宽度等于2倍的当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于2倍的当前块的高度与第三垂直上采样因子的乘积。
需要说明的是,在本申请实施例中,第一预测块的宽度用predSizeW表示,第一预测块的高度用predSizeH表示,当前块的宽度用nTbW表示,当前块的高度用nTbH表示。这样,根据前述方法所得到的第一预测块,predSizeH大于或等于当前块的高度nTbH,或者predSizeW大于或等于当前块的宽度nTbW;也就是说,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量。
S1804:对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块。
S1805:根据第二预测块,确定当前块的第二颜色分量采样点的预测差值。
需要说明的是,在本申请实施例中,第一滤波处理可以为下采样滤波处理。这样,对于经过下采样滤波之后的第二预测块,第二预测块中包含的第二颜色分量的预测值的数量与当前块中包含的第二颜色分量采样点的数量相同。
在一种可能的实现方式中,所述对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块,可以包括:利用预设滤波器对第一预测块进行下采样滤波处理,确定当前块的第二颜色分量的第二预测块。
还需要说明的是,在本申请实施例中,预设滤波器可以为下采样滤波器。进一步地,这里的下采样滤波器可以为神经网络滤波器,本申请实施例对此不作任何限定。
在另一种可能的实现方式中,所述对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块,可以包括:
确定水平下采样因子和垂直下采样因子;
根据水平下采样因子和垂直下采样因子对第一预测块进行下采样滤波处理,得到当前块的第二颜色分量的第二预测块。
在一种具体的实施例中,根据水平下采样因子和垂直下采样因子对第一预测块进行下采样滤波处理,得到当前块的第二颜色分量的第二预测块,可以包括:若水平下采样因子大于1,或者垂直下采样因子大于1,则对第一预测块进行下采样滤波处理,得到第二预测块。
在本申请实施例中,对第一预测块进行下采样滤波处理,可以包括下述至少一项:
对第一预测块在水平方向进行下采样滤波处理;
对第一预测块在垂直方向进行下采样滤波处理;
对第一预测块在水平方向进行下采样滤波处理后再在垂直方向进行下采样滤波处理;
对第一预测块在垂直方向进行下采样滤波处理后再在水平方向进行下采样滤波处理。
在这里,首先可以根据第一预测块的宽度和当前块的宽度计算水平下采样因子,根据第一预测块的高度和当前块的高度计算垂直下采样因子;然后,根据水平下采样因子和垂直下采样因子对第一预测块进行下采样滤波。具体来说,如果水平下采样因子大于1,垂直下采样因子等于1,那么只需要对第一预测块在水平方向进行下采样;如果水平下采样因子等于1,垂直下采样因子大于1,那么只需要对第一预测块在垂直方向进行下采样;如果水平下采样因子大于1,垂直下采样因子大于1,那么对第一预测块在水平方向和垂直方向都需要进行下采样,其中,可以执行先水平方向再垂直方向的下采样,也可 以执行先垂直方向再水平方向的下采样,甚至还可以采用神经网络结构中的卷积操作代替这里的下采样操作,本申请实施例不作任何限定。
还需要说明的是,对于第一滤波处理,还可以采用隔点抽取的方式进行下采样滤波,比如二维滤波器、一维滤波器等等。其中,对于一维滤波器而言,可以是“先垂直方向再水平方向”,也可以是“先水平方向再垂直方向”,还可以是固定滤波顺序,甚至还可以是可灵活调整的滤波顺序(如有标识信息指示的滤波顺序、与预测模式或块大小绑定的顺序等),本申请实施例对此不作任何限定。
除此之外,在一些实施例中,所述对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块,还可以包括:根据水平下采样因子和垂直下采样因子,对第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到第二预测块。
在这里,对第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到第二预测块,可以包括:
对第一预测块在水平方向上每水平下采样因子数量的第二颜色分量的预测值进行加权和计算,得到第二预测块;或者,
对第一预测块在垂直方向上每垂直下采样因子数量的第二颜色分量的预测值进行加权和计算,得到第二预测块;或者,
对第一预测块在水平方向上每水平下采样因子数量的第二颜色分量的预测值进行加权和计算,以及在垂直方向上每垂直下采样因子数量的第二颜色分量的预测值进行加权和计算,得到第二预测块。
也就是说,本申请实施例也可以不考虑水平下采样和垂直下采样的情况,针对需要下采样的方向(垂直方向或水平方向)每预设个数的色度预测值进行加权和计算;其中,如果每一个色度预测值的权值相等,那么在一种特殊情况下,每预设个数的色度预测值进行加权和计算也可以看作是对这预设个数的色度预测值求均值,将该均值作为下采样滤波后的预测值。
进一步地,在一些实施例中,该方法还可以包括:根据第一预测块中部分采样点的第一颜色分量的参考样值,确定加权系数;根据加权系数和第一预测块中部分采样点的第二颜色分量的参考样值,确定当前块的第二颜色分量的第二预测块。
在一种具体的实施例中,根据加权系数和第一预测块中部分采样点的第二颜色分量的参考样值,确定当前块的第二颜色分量的第二预测块,可以包括:根据加权系数对第一预测块中第(i,j)位置处采样点的第二颜色分量的参考样值进行加权计算,得到当前块中第(x,y)位置处采样点的第二颜色分量的预测值;其中,i、j、x、j均为大于或等于零的整数。
需要说明的是,在本申请实施例中,为了减少计算复杂度,不对当前块内的重建亮度信息进行上采样滤波,这时候可以考虑不对当前块内的重建亮度信息中每个亮度位置进行同位色度点的预测,可以选取部分亮度位置进行同位色度点的预测,从而在得到预测块之后可以不进行下采样滤波,能够保证已有亮度信息的准确性,准确的亮度信息有利于提高非线性映射模型的准确性和稳定性,进而提高了色度预测值的准确性。
在这种实现方式中,为了节省后续对预测块进行上采样或者下采样的操作,可以根据YUV视频格式特征选取相应的位置进行色度预测,假设当前亮度点的位置为CurRecLuma(i,j),则需要进行色度预测的采样点的位置为CurPredChroma(x,y)。这时候,在一些实施例中,该方法还可以包括:
若颜色格式信息指示为4:4:4采样,则将x设置为等于i,将y设置为等于j;
若颜色格式信息指示为4:2:2采样,则将x设置为等于i与2的乘积,将y设置为等于j;
若颜色格式信息指示为4:1:1采样,则将x设置为等于i与4的乘积,将y设置为等于j;
若颜色格式信息指示为4:2:0采样,则将x设置为等于i与2的乘积,将y设置为等于j与2的乘积。
进一步地,在一些实施例中,该方法还可以包括:确定水平取样位置因子和垂直取样位置因子;将x设置为等于i与水平取样位置因子的乘积,将y设置为等于j与垂直取样位置因子的乘积。
也就是说,为了进一步减少预测时的计算复杂度,可以选择更少的同位色度点进行预测。假设当前亮度点的位置为CurRecLuma(i,j),则需要进行色度预测的点的位置为CurPredChroma(x,y)。假设当前块内重建亮度信息的水平取样位置因子为S_Pos_Hor,垂直取样位置因子为S_Pos_Ver。那么当前亮度点位置和需要进行色度预测的采样点的位置之间的关系如下:
当颜色格式信息指示为YUV444格式/YUV422格式/YUV411格式/YUV420格式的视频时,x可以设置为等于i与S_Pos_Hor的乘积,y可以设置为等于j与S_Pos_Ver的乘积。
进一步地,在确定出第二预测块之后,该第二预测块在一定条件下还需要后处理作为最终的第二预测块。因此,在一些实施例中,该方法还可以包括:在确定当前块的第二颜色分量的第二预测块之后,对第二预测块进行相关处理,将处理后的第二预测块作为第二预测块。
在本申请实施例中,对第二预测块进行相关处理,包括下述至少一项:
对第二预测块进行第三滤波处理;
利用预设补偿值对第二预测块进行修正处理;
利用至少一种预测模式下当前块的第二颜色分量的预测值对第二预测块进行加权融合处理。
也就是说,针对第二预测块的相关处理,为了降低WCP逐像素独立并行预测带来的不稳定性,可以对第二预测块进行平滑滤波作为最终的色度预测值。或者,为了进一步提升WCP预测值的准确性,可以对第二预测块进行位置相关的修正过程。比如:利用空间位置接近的参考像素对每个待预测像素计算色度补偿值,用此色度补偿值对预测块进行修正,将修正后的预测值作为最终的色度预测值。或者,为了进一步提升WCP预测值的准确性,可以将其他色度预测模式计算的色度预测值与WCP计算的色度预测值进行加权融合,将此融合结果作为最终的色度预测值。或者,为了提高WCP预测性能,可以采用神经网络模型对WCP计算的色度预测值进行修正等等,本申请实施例对此不作任何限定。
在一些实施例中,在确定出第二预测块之后,如图19所示,在S1804之后,还可以包括以下步骤:
S1901:根据第二预测块,确定当前块的第二颜色分量采样点的预测值。
S1902:根据当前块的第二颜色分量采样点的原始值和当前块的第二颜色分量采样点的预测值,确定当前块的第二颜色分量采样点的预测差值。
S1903:对当前块的第二颜色分量采样点的预测差值进行编码,将所得到的编码比特写入码流。
需要说明的是,在本申请实施例中,根据第二预测块确定当前块的第二颜色分量采样点的预测值,可以是将当前块的第二颜色分量采样点的预测值设置为等于第二预测块的值;或者也可以是对第二预测块的值进行上采样滤波,将当前块的第二颜色分量采样点的预测值设置为等于所述上采样滤波后的输出值。
还需要说明的是,在确定出当前块的第二颜色分量采样点的预测值后,根据第二颜色分量采样点的原始值和第二颜色分量采样点的预测值,即可确定出第二颜色分量采样点的预测差值,具体可以是对第二颜色分量采样点的原始值和第二颜色分量采样点的预测值进行减法计算,从而能够确定出当前块的第二颜色分量采样点的预测差值。这样,在将第二颜色分量采样点的预测差值写入码流后,后续在解码端,通过解码即可获得第二颜色分量采样点的预测差值,以便恢复当前块的第二颜色分量采样点的重建值。
综上可知,在WCP模式的预测过程中,利用未损失的亮度信息进行色度预测,主要包括三方面:一方面,充分利用参考像素与当前块的亮度信息,实现了参考像素色度加权系数的计算;另一方面,充分考虑已有亮度信息的重要性,在不损失亮度信息的基础上建立更准确的非线性映射模型对参考色度点分配权重进行加权预测;又一方面,在进行参考色度上采样和根据当前块每个亮度点位置进行同位色度预测时,充分考虑各种YUV视频格式的特征,根据不同YUV视频的色度亚采样格式和亮度上采样情况始终保证色度分量和亮度分量的空间分辨率一致,充分利用已有的未损失亮度信息进行同位色度预测,以提高WCP模式中色度预测值的准确性。
本申请实施例还提供了一种编码方法,通过确定当前块的第一颜色分量的参考样值;根据当前块的第一颜色分量的参考样值,确定加权系数;根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块;其中,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量;对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块;根据第二预测块,确定当前块的第二颜色分量采样点的预测差值。这样,利用当前块相邻的参考像素与当前块内的颜色分量信息,不仅充分考虑了已有的颜色分量信息,使得在不损失亮度信息的基础上能够建立更准确的非线性映射模型对每个色度分量的参考样值分配权重进行加权预测;而且对于第一滤波处理还充分考虑了不同的颜色格式信息,根据不同的颜色格式信息进行色度和/或亮度的采样滤波,能够始终保证色度分量和亮度分量的空间分辨率一致,这样既可以保证已有亮度信息的准确性,又可以在利用未损失的亮度信息进行色度分量预测时,基于准确的亮度信息有利于提高非线性映射模型的准确性和稳定性,从而能够提高色度预测的准确性,节省码率,同时提升编解码性能。
在本申请的又一实施例中,本申请实施例还提供了一种码流,该码流是根据待编码信息进行比特编码生成的;其中,待编码信息至少包括:当前块的第二颜色分量采样点的预测差值。
在本申请实施例中,在当前块的第二颜色分量采样点的预测差值由编码端传递到解码端之后,解码端通过解码获得第二颜色分量采样点的预测差值,然后结合当前块的第二颜色分量采样点的预测值,从而能够恢复出当前块的第二颜色分量采样点的重建值。这样,不仅充分考虑了已有的颜色分量信息,而且还充分考虑了不同的颜色格式信息,既能够保证已有亮度信息的准确性,又能够在利用未损失的亮度信息进行色度分量预测时,基于准确的亮度信息有利于提高非线性映射模型的准确性和稳定性,从而能够提高色度预测的准确性,节省码率,同时提升编解码性能。
在本申请的再一实施例中,基于前述实施例相同的发明构思,参见图20,其示出了本申请实施例 提供的一种编码装置300的组成结构示意图。如图20所示,该编码装置300可以包括:第一确定单元3001、第一预测单元3002和第一滤波单元3003;其中,
第一确定单元3001,配置为确定当前块的第一颜色分量的参考样值;以及根据当前块的第一颜色分量的参考样值,确定加权系数;
第一预测单元3002,配置为根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块;其中,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量;
第一滤波单元3003,配置为对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块;
第一确定单元3001,还配置为根据第二预测块,确定当前块的第二颜色分量采样点的预测差值。
在一些实施例中,第二预测块中包含的第二颜色分量的预测值的数量与当前块中包含的第二颜色分量采样点的数量相同。
在一些实施例中,第一确定单元3001,还配置为根据当前块的相邻区域中的第一颜色分量采样点的取值,确定当前块的第一颜色分量的参考样值;其中,相邻区域包括下述至少之一:上侧相邻区域、右上侧相邻区域、左侧相邻区域和左下侧相邻区域。
在一些实施例中,第一确定单元3001,还配置为对相邻区域中的第一颜色分量采样点进行筛选处理,确定第一颜色分量采样点的取值。
在一些实施例中,第一确定单元3001,还配置为基于相邻区域中的第一颜色分量采样点的位置和/或颜色分量强度,确定待选择采样点位置;以及根据待选择采样点位置,从相邻区域中确定第一颜色分量采样点的取值。
在一些实施例中,第一滤波单元3003,还配置为对第一颜色分量采样点的取值进行第二滤波处理,得到当前块的第一颜色分量的滤波相邻样值;以及根据当前块的第一颜色分量的滤波相邻样值,确定当前块的第一颜色分量的参考样值。
在一些实施例中,当前块的第一颜色分量的滤波相邻样值的数量大于第一颜色分量采样点的取值的数量。
在一些实施例中,第一确定单元3001,还配置为基于当前块中第一参考颜色分量采样点的重建值,确定当前块的第一颜色分量的参考样值。
在一些实施例中,当前块的第一颜色分量的参考样值设置为第一颜色分量采样点的取值与第一参考颜色分量采样点的重建值之差的绝对值。
在一些实施例中,当前块的第一颜色分量的参考样值设置为第一颜色分量的滤波相邻样值与第一参考颜色分量采样点的重建值之差的绝对值。
在一些实施例中,第一滤波单元3003,还配置为对当前块中第一参考颜色分量采样点的重建值进行第三滤波处理,得到当前块中第一参考颜色分量采样点的滤波样值;以及根据当前块中第一参考颜色分量采样点的滤波样值,确定当前块的第一颜色分量的参考样值。
在一些实施例中,当前块中第一参考颜色分量采样点的滤波样值的数量大于当前块中第一参考颜色分量采样点的重建值的数量。
在一些实施例中,当前块的第一颜色分量的参考样值设置为第一颜色分量的滤波相邻样值与第一参考颜色分量采样点的滤波样值之差的绝对值。
在一些实施例中,当前块的第一颜色分量的参考样值设置为第一颜色分量采样点的取值与第一参考颜色分量采样点的滤波样值之差的绝对值。
在一些实施例中,第一确定单元3001,还配置为确定在预设映射关系下第一颜色分量的参考样值对应的取值;以及将加权系数设置为等于取值。
在一些实施例中,第一确定单元3001,还配置为确定第一因子;以及根据第一因子和第一颜色分量的参考样值,确定第一乘积值;以及确定第一乘积值在预设映射关系下对应的取值。
在一些实施例中,第一因子是预设常数值。
在一些实施例中,第一确定单元3001,还配置为根据当前块的尺寸参数,确定第一因子的取值;其中,当前块的尺寸参数包括以下参数的至少之一:当前块的宽度,当前块的高度。
在一些实施例中,预设映射关系是Softmax函数。
在一些实施例中,预设映射关系是与第一颜色分量的参考样值具有反比关系的加权函数。
在一些实施例中,第一确定单元3001,还配置为根据当前块的相邻区域中的第二颜色分量采样点的取值,确定当前块的第二颜色分量的参考样值。
在一些实施例中,第一滤波单元3003,还配置为对当前块的相邻区域中的第二颜色分量采样点的 取值进行第四滤波处理,得到当前块的第二颜色分量的滤波相邻样值;以及根据当前块的第二颜色分量的滤波相邻样值,确定当前块的第二颜色分量的参考样值。
在一些实施例中,当前块的第二颜色分量的滤波相邻样值的数量大于当前块的相邻区域中的第二颜色分量采样点的取值的数量。
在一些实施例中,第四滤波处理是上采样滤波;其中,上采样率是2的正整数倍。
在一些实施例中,第一滤波单元3003,还配置为基于颜色格式信息,对当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到当前块的第二颜色分量的滤波相邻样值。
在一些实施例中,第一滤波单元3003,还配置为若颜色格式信息指示为4:2:0采样,则对当前块的相邻区域中的第二颜色分量采样点的取值进行上采样滤波;其中,上采样率是2的正整数倍。
在一些实施例中,第一滤波单元3003,还配置为利用第一水平上采样因子和第一垂直上采样因子对当前块的相邻区域中的第一颜色分量采样点的取值进行第二滤波处理,得到当前块的第一颜色分量的滤波相邻样值;以及利用第二水平上采样因子和第二垂直上采样因子对当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到当前块的第二颜色分量的滤波相邻样值;
第一确定单元3001,还配置为若颜色格式信息指示为4:4:4采样,则确定第二水平上采样因子等于第一水平上采样因子,第二垂直上采样因子等于第一垂直上采样因子;若颜色格式信息指示为4:2:2采样,则确定第二水平上采样因子等于2倍的第一水平上采样因子,第二垂直上采样因子等于第一垂直上采样因子;若颜色格式信息指示为4:1:1采样,则确定第二水平上采样因子等于4倍的第一水平上采样因子,第二垂直上采样因子等于第一垂直上采样因子;若颜色格式信息指示为4:2:0采样,则确定第二水平上采样因子等于2倍的第一水平上采样因子,第二垂直上采样因子等于2倍的第一垂直上采样因子。
在一些实施例中,第一确定单元3001,还配置为若颜色格式信息指示为4:4:4采样,则确定第一预测块的宽度等于当前块的宽度,第一预测块的高度等于当前块的高度;若颜色格式信息指示为4:2:2采样,则确定第一预测块的宽度等于2倍的当前块的宽度,第一预测块的高度等于当前块的高度;若颜色格式信息指示为4:1:1采样,则确定第一预测块的宽度等于4倍的当前块的宽度,第一预测块的高度等于当前块的高度;若颜色格式信息指示为4:2:0采样,则确定第一预测块的宽度等于2倍的当前块的宽度,第一预测块的高度等于2倍的当前块的高度。
在一些实施例中,第一滤波单元3003,还配置为利用第三水平上采样因子和第三垂直上采样因子对当前块中第一参考颜色分量采样点的重建值进行第三滤波处理,得到当前块中第一参考颜色分量采样点的滤波样值;
第一确定单元3001,还配置为若颜色格式信息指示为4:4:4采样,则确定第一预测块的宽度等于当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于当前块的高度与第三垂直上采样因子的乘积;若颜色格式信息指示为4:2:2采样,则确定第一预测块的宽度等于2倍的当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于当前块的高度与第三垂直上采样因子的乘积;若颜色格式信息指示为4:1:1采样,则确定第一预测块的宽度等于4倍的当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于当前块的高度与第三垂直上采样因子的乘积;若颜色格式信息指示为4:2:0采样,则确定第一预测块的宽度等于2倍的当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于2倍的当前块的高度与第三垂直上采样因子的乘积。
在一些实施例中,第一预测单元3002,还配置为确定第二颜色分量的参考样值与对应的加权系数的加权值;以及将第一预测块中第二颜色分量采样点的预测值设置为等于N个加权值之和;其中,N表示第二颜色分量的参考样值的数量,N是正整数。
在一些实施例中,第一滤波处理为下采样滤波处理。
在一些实施例中,第一滤波单元3003,还配置为利用预设滤波器对第一预测块进行下采样滤波处理,确定当前块的第二颜色分量的第二预测块。
在一些实施例中,第一滤波单元3003,还配置为确定水平下采样因子和垂直下采样因子;以及根据水平下采样因子和垂直下采样因子对第一预测块进行下采样滤波处理,得到当前块的第二颜色分量的第二预测块。
在一些实施例中,第一滤波单元3003,还配置为若水平下采样因子大于1,或者垂直下采样因子大于1,则对第一预测块进行下采样滤波处理,得到第二预测块。
在一些实施例中,第一滤波单元3003,还配置为对第一预测块进行下述至少一项的下采样滤波处理:
对第一预测块在水平方向进行下采样滤波处理;
对第一预测块在垂直方向进行下采样滤波处理;
对第一预测块在水平方向进行下采样滤波处理后再在垂直方向进行下采样滤波处理;
对第一预测块在垂直方向进行下采样滤波处理后再在水平方向进行下采样滤波处理。
在一些实施例中,第一滤波单元3003,还配置为根据水平下采样因子和垂直下采样因子,对第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到第二预测块。
在一些实施例中,第一滤波单元3003,还配置为对第一预测块在水平方向上每水平下采样因子数量的第二颜色分量的预测值进行加权和计算,得到第二预测块。
在一些实施例中,第一滤波单元3003,还配置为对第一预测块在垂直方向上每垂直下采样因子数量的第二颜色分量的预测值进行加权和计算,得到第二预测块。
在一些实施例中,第一滤波单元3003,还配置为对第一预测块在水平方向上每水平下采样因子数量的第二颜色分量的预测值进行加权和计算,以及在垂直方向上每垂直下采样因子数量的第二颜色分量的预测值进行加权和计算,得到第二预测块。
在一些实施例中,第一滤波单元3003,还配置为根据第一预测块中部分采样点的第一颜色分量的参考样值,确定加权系数;以及根据加权系数和第一预测块中部分采样点的第二颜色分量的参考样值,确定当前块的第二颜色分量的第二预测块。
在一些实施例中,第一滤波单元3003,还配置为根据加权系数对第一预测块中第(i,j)位置处采样点的第二颜色分量的参考样值进行加权计算,得到当前块中第(x,y)位置处采样点的第二颜色分量的预测值;其中,i、j、x、j均为大于或等于零的整数。
在一些实施例中,第一确定单元3001,还配置为若颜色格式信息指示为4:4:4采样,则将x设置为等于i,将y设置为等于j;若颜色格式信息指示为4:2:2采样,则将x设置为等于i与2的乘积,将y设置为等于j;若颜色格式信息指示为4:1:1采样,则将x设置为等于i与4的乘积,将y设置为等于j;若颜色格式信息指示为4:2:0采样,则将x设置为等于i与2的乘积,将y设置为等于j与2的乘积。
在一些实施例中,第一确定单元3001,还配置为确定水平取样位置因子和垂直取样位置因子;以及将x设置为等于i与水平取样位置因子的乘积,将y设置为等于j与垂直取样位置因子的乘积。
在一些实施例中,第一滤波单元3003,还配置为在确定当前块的第二颜色分量的第二预测块之后,对第二预测块进行相关处理,将处理后的第二预测块作为第二预测块;其中,对第二预测块进行相关处理,包括下述至少一项:
对第二预测块进行第三滤波处理;
利用预设补偿值对第二预测块进行修正处理;
利用至少一种预测模式下当前块的第二颜色分量的预测值对第二预测块进行加权融合处理。
在一些实施例中,第一确定单元3001,还配置为根据第二预测块,确定当前块的第二颜色分量采样点的预测值;以及根据当前块的第二颜色分量采样点的原始值和当前块的第二颜色分量采样点的预测值,确定当前块的第二颜色分量采样点的预测差值。
在一些实施例中,参见图20,该编码装置300还可以包括编码单元3004,配置为对当前块的第二颜色分量采样点的预测差值进行编码,将所得到的编码比特写入码流。
可以理解地,在本申请实施例中,“单元”可以是部分电路、部分处理器、部分程序或软件等等,当然也可以是模块,还可以是非模块化的。而且在本实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
因此,本申请实施例提供了一种计算机可读存储介质,应用于编码装置300,该计算机可读存储介质存储有计算机程序,所述计算机程序被第一处理器执行时实现前述实施例中任一项所述的方法。
基于上述编码装置300的组成以及计算机可读存储介质,参见图21,其示出了本申请实施例提供的编码设备310的具体硬件结构示意图。如图21所示,编码设备310可以包括:第一通信接口3101、第一存储器3102和第一处理器3103;各个组件通过第一总线系统3104耦合在一起。可理解,第一总线系统3104用于实现这些组件之间的连接通信。第一总线系统3104除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图21中将各种总线都标为第一总线系统 3104。其中,
第一通信接口3101,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;
第一存储器3102,用于存储能够在第一处理器3103上运行的计算机程序;
第一处理器3103,用于在运行所述计算机程序时,执行:
确定当前块的第一颜色分量的参考样值;
根据当前块的第一颜色分量的参考样值,确定加权系数;
根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块;其中,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量;
对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块;
根据第二预测块,确定当前块的第二颜色分量采样点的预测差值。
可以理解,本申请实施例中的第一存储器3102可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本申请描述的系统和方法的第一存储器3102旨在包括但不限于这些和任意其它适合类型的存储器。
而第一处理器3103可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过第一处理器3103中的硬件的集成逻辑电路或者软件形式的指令完成。上述的第一处理器3103可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于第一存储器3102,第一处理器3103读取第一存储器3102中的信息,结合其硬件完成上述方法的步骤。
可以理解的是,本申请描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(Application Specific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable Logic Device,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。对于软件实现,可通过执行本申请所述功能的模块(例如过程、函数等)来实现本申请所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
可选地,作为另一个实施例,第一处理器3103还配置为在运行所述计算机程序时,执行前述实施例中任一项所述的方法。
本实施例提供了一种编码设备,该编码设备还可以包括前述实施例任一项所述的编码装置300。对于编码设备而言,不仅充分考虑了已有的颜色分量信息,而且还充分考虑了不同的颜色格式信息,既能够保证已有亮度信息的准确性,又能够在利用未损失的亮度信息进行色度分量预测时,基于准确的亮度信息有利于提高非线性映射模型的准确性和稳定性,从而能够提高色度预测的准确性,节省码率,同时提升编解码性能。
基于前述实施例相同的发明构思,参见图22,其示出了本申请实施例提供的一种解码装置320的组成结构示意图。如图22所示,该解码装置320可以包括:第二确定单元3201、第二预测单元3202和第二滤波单元3203;其中,
第二确定单元3201,配置为确定当前块的第一颜色分量的参考样值;以及根据当前块的第一颜色分量的参考样值,确定加权系数;
第二预测单元3202,配置为根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块;其中,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含 的第二颜色分量采样点的数量;
第二滤波单元3203,配置为对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块;
第二确定单元3201,还配置为根据第二预测块,确定当前块的第二颜色分量采样点的重建值。
在一些实施例中,第二预测块中包含的第二颜色分量的预测值的数量与当前块中包含的第二颜色分量采样点的数量相同。
在一些实施例中,第二确定单元3201,还配置为根据当前块的相邻区域中的第一颜色分量采样点的取值,确定当前块的第一颜色分量的参考样值;其中,相邻区域包括下述至少之一:上侧相邻区域、右上侧相邻区域、左侧相邻区域和左下侧相邻区域。
在一些实施例中,第二确定单元3201,还配置为对相邻区域中的第一颜色分量采样点进行筛选处理,确定第一颜色分量采样点的取值。
在一些实施例中,第二确定单元3201,还配置为基于相邻区域中的第一颜色分量采样点的位置和/或颜色分量强度,确定待选择采样点位置;以及根据待选择采样点位置,从相邻区域中确定第一颜色分量采样点的取值。
在一些实施例中,第二滤波单元3203,还配置为对第一颜色分量采样点的取值进行第二滤波处理,得到当前块的第一颜色分量的滤波相邻样值;以及根据当前块的第一颜色分量的滤波相邻样值,确定当前块的第一颜色分量的参考样值。
在一些实施例中,当前块的第一颜色分量的滤波相邻样值的数量大于第一颜色分量采样点的取值的数量。
在一些实施例中,第二确定单元3201,还配置为基于当前块中第一参考颜色分量采样点的重建值,确定当前块的第一颜色分量的参考样值。
在一些实施例中,当前块的第一颜色分量的参考样值设置为第一颜色分量采样点的取值与第一参考颜色分量采样点的重建值之差的绝对值。
在一些实施例中,当前块的第一颜色分量的参考样值设置为第一颜色分量的滤波相邻样值与第一参考颜色分量采样点的重建值之差的绝对值。
在一些实施例中,第二滤波单元3203,还配置为对当前块中第一参考颜色分量采样点的重建值进行第三滤波处理,得到当前块中第一参考颜色分量采样点的滤波样值;以及根据当前块中第一参考颜色分量采样点的滤波样值,确定当前块的第一颜色分量的参考样值。
在一些实施例中,当前块中第一参考颜色分量采样点的滤波样值的数量大于当前块中第一参考颜色分量采样点的重建值的数量。
在一些实施例中,当前块的第一颜色分量的参考样值设置为第一颜色分量的滤波相邻样值与第一参考颜色分量采样点的滤波样值之差的绝对值。
在一些实施例中,当前块的第一颜色分量的参考样值设置为第一颜色分量采样点的取值与第一参考颜色分量采样点的滤波样值之差的绝对值。
在一些实施例中,第二确定单元3201,还配置为确定在预设映射关系下第一颜色分量的参考样值对应的取值;以及将加权系数设置为等于取值。
在一些实施例中,第二确定单元3201,还配置为确定第一因子;以及根据第一因子和第一颜色分量的参考样值,确定第一乘积值;以及确定第一乘积值在预设映射关系下对应的取值。
在一些实施例中,第一因子是预设常数值。
在一些实施例中,第二确定单元3201,还配置为根据当前块的尺寸参数,确定第一因子的取值;其中,当前块的尺寸参数包括以下参数的至少之一:当前块的宽度,当前块的高度。
在一些实施例中,预设映射关系是Softmax函数。
在一些实施例中,预设映射关系是与第一颜色分量的参考样值具有反比关系的加权函数。
在一些实施例中,第二确定单元3201,还配置为根据当前块的相邻区域中的第二颜色分量采样点的取值,确定当前块的第二颜色分量的参考样值。
在一些实施例中,第二滤波单元3203,还配置为对当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到当前块的第二颜色分量的滤波相邻样值;以及根据当前块的第二颜色分量的滤波相邻样值,确定当前块的第二颜色分量的参考样值。
在一些实施例中,当前块的第二颜色分量的滤波相邻样值的数量大于当前块的相邻区域中的第二颜色分量采样点的取值的数量。
在一些实施例中,第四滤波处理是上采样滤波;其中,上采样率是2的正整数倍。
在一些实施例中,第二滤波单元3203,还配置为基于颜色格式信息,对当前块的相邻区域中的第 二颜色分量采样点的取值进行第四滤波处理,得到当前块的第二颜色分量的滤波相邻样值。
在一些实施例中,第二滤波单元3203,还配置为若颜色格式信息指示为4:2:0采样,则对当前块的相邻区域中的第二颜色分量采样点的取值进行上采样滤波;其中,上采样率是2的正整数倍。
在一些实施例中,第二滤波单元3203,还配置为利用第一水平上采样因子和第一垂直上采样因子对当前块的相邻区域中的第一颜色分量采样点的取值进行第二滤波处理,得到当前块的第一颜色分量的滤波相邻样值;以及利用第二水平上采样因子和第二垂直上采样因子对当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到当前块的第二颜色分量的滤波相邻样值;
第二确定单元3201,还配置为若颜色格式信息指示为4:4:4采样,则确定第二水平上采样因子等于第一水平上采样因子,第二垂直上采样因子等于第一垂直上采样因子;若颜色格式信息指示为4:2:2采样,则确定第二水平上采样因子等于2倍的第一水平上采样因子,第二垂直上采样因子等于第一垂直上采样因子;若颜色格式信息指示为4:1:1采样,则确定第二水平上采样因子等于4倍的第一水平上采样因子,第二垂直上采样因子等于第一垂直上采样因子;若颜色格式信息指示为4:2:0采样,则确定第二水平上采样因子等于2倍的第一水平上采样因子,第二垂直上采样因子等于2倍的第一垂直上采样因子。
在一些实施例中,第二确定单元3201,还配置为若颜色格式信息指示为4:4:4采样,则确定第一预测块的宽度等于当前块的宽度,第一预测块的高度等于当前块的高度;若颜色格式信息指示为4:2:2采样,则确定第一预测块的宽度等于2倍的当前块的宽度,第一预测块的高度等于当前块的高度;若颜色格式信息指示为4:1:1采样,则确定第一预测块的宽度等于4倍的当前块的宽度,第一预测块的高度等于当前块的高度;若颜色格式信息指示为4:2:0采样,则确定第一预测块的宽度等于2倍的当前块的宽度,第一预测块的高度等于2倍的当前块的高度。
在一些实施例中,第二滤波单元3203,还配置为利用第三水平上采样因子和第三垂直上采样因子对当前块中第一参考颜色分量采样点的重建值进行第三滤波处理,得到当前块中第一参考颜色分量采样点的滤波样值;
第二确定单元3201,还配置为若颜色格式信息指示为4:4:4采样,则确定第一预测块的宽度等于当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于当前块的高度与第三垂直上采样因子的乘积;若颜色格式信息指示为4:2:2采样,则确定第一预测块的宽度等于2倍的当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于当前块的高度与第三垂直上采样因子的乘积;若颜色格式信息指示为4:1:1采样,则确定第一预测块的宽度等于4倍的当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于当前块的高度与第三垂直上采样因子的乘积;若颜色格式信息指示为4:2:0采样,则确定第一预测块的宽度等于2倍的当前块的宽度与第三水平上采样因子的乘积,第一预测块的高度等于2倍的当前块的高度与第三垂直上采样因子的乘积。
在一些实施例中,第二预测单元3202,还配置为确定第二颜色分量的参考样值与对应的加权系数的加权值;以及将第一预测块中第二颜色分量采样点的预测值设置为等于N个加权值之和;其中,N表示第二颜色分量的参考样值的数量,N是正整数。
在一些实施例中,第一滤波处理为下采样滤波处理。
在一些实施例中,第二滤波单元3203,还配置为利用预设滤波器对第一预测块进行下采样滤波处理,确定当前块的第二颜色分量的第二预测块。
在一些实施例中,第二滤波单元3203,还配置为确定水平下采样因子和垂直下采样因子;以及根据水平下采样因子和垂直下采样因子对第一预测块进行下采样滤波处理,得到当前块的第二颜色分量的第二预测块。
在一些实施例中,第二滤波单元3203,还配置为若水平下采样因子大于1,或者垂直下采样因子大于1,则对第一预测块进行下采样滤波处理,得到第二预测块。
在一些实施例中,第二滤波单元3203,还配置为对第一预测块进行下述至少一项的下采样滤波处理:
对第一预测块在水平方向进行下采样滤波处理;
对第一预测块在垂直方向进行下采样滤波处理;
对第一预测块在水平方向进行下采样滤波处理后再在垂直方向进行下采样滤波处理;
对第一预测块在垂直方向进行下采样滤波处理后再在水平方向进行下采样滤波处理。
在一些实施例中,第二滤波单元3203,还配置为根据水平下采样因子和垂直下采样因子,对第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到第二预测块。
在一些实施例中,第二滤波单元3203,还配置为对第一预测块在水平方向上每水平下采样因子数量的第二颜色分量的预测值进行加权和计算,得到第二预测块。
在一些实施例中,第二滤波单元3203,还配置为对第一预测块在垂直方向上每垂直下采样因子数量的第二颜色分量的预测值进行加权和计算,得到第二预测块。
在一些实施例中,第二滤波单元3203,还配置为对第一预测块在水平方向上每水平下采样因子数量的第二颜色分量的预测值进行加权和计算,以及在垂直方向上每垂直下采样因子数量的第二颜色分量的预测值进行加权和计算,得到第二预测块。
在一些实施例中,第二滤波单元3203,还配置为根据第一预测块中部分采样点的第一颜色分量的参考样值,确定加权系数;以及根据加权系数和第一预测块中部分采样点的第二颜色分量的参考样值,确定当前块的第二颜色分量的第二预测块。
在一些实施例中,第二滤波单元3203,还配置为根据加权系数对第一预测块中第(i,j)位置处采样点的第二颜色分量的参考样值进行加权计算,得到当前块中第(x,y)位置处采样点的第二颜色分量的预测值;其中,i、j、x、j均为大于或等于零的整数。
在一些实施例中,第二确定单元3201,还配置为若颜色格式信息指示为4:4:4采样,则将x设置为等于i,将y设置为等于j;若颜色格式信息指示为4:2:2采样,则将x设置为等于i与2的乘积,将y设置为等于j;若颜色格式信息指示为4:1:1采样,则将x设置为等于i与4的乘积,将y设置为等于j;若颜色格式信息指示为4:2:0采样,则将x设置为等于i与2的乘积,将y设置为等于j与2的乘积。
在一些实施例中,第二确定单元3201,还配置为确定水平取样位置因子和垂直取样位置因子;以及将x设置为等于i与水平取样位置因子的乘积,将y设置为等于j与垂直取样位置因子的乘积。
在一些实施例中,第二滤波单元3203,还配置为在确定当前块的第二颜色分量的第二预测块之后,对第二预测块进行相关处理,将处理后的第二预测块作为第二预测块;其中,对第二预测块进行相关处理,包括下述至少一项:
对第二预测块进行第三滤波处理;
利用预设补偿值对第二预测块进行修正处理;
利用至少一种预测模式下当前块的第二颜色分量的预测值对第二预测块进行加权融合处理。
在一些实施例中,第二确定单元3201,还配置为确定当前块的第二颜色分量采样点的预测差值;以及根据第二预测块,确定当前块的第二颜色分量采样点的预测值;以及根据当前块的第二颜色分量采样点的预测差值和当前块的第二颜色分量采样点的预测值,确定当前块的第二颜色分量采样点的重建值。
在一些实施例中,参见图22,该解码装置320还可以包括解码单元3204,配置为解析码流,确定当前块的第二颜色分量采样点的预测差值。
可以理解地,在本实施例中,“单元”可以是部分电路、部分处理器、部分程序或软件等等,当然也可以是模块,还可以是非模块化的。而且在本实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本实施例提供了一种计算机可读存储介质,应用于解码器320,该计算机可读存储介质存储有计算机程序,所述计算机程序被第二处理器执行时实现前述实施例中任一项所述的方法。
基于上述解码装置320的组成以及计算机可读存储介质,参见图23,其示出了本申请实施例提供的解码设备330的具体硬件结构示意图。如图23所示,解码设备330可以包括:第二通信接口3301、第二存储器3302和第二处理器3303;各个组件通过第二总线系统3304耦合在一起。可理解,第二总线系统3304用于实现这些组件之间的连接通信。第二总线系统3304除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图23中将各种总线都标为第二总线系统3304。其中,
第二通信接口3301,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;
第二存储器3302,用于存储能够在第二处理器3303上运行的计算机程序;
第二处理器3303,用于在运行所述计算机程序时,执行:
确定当前块的第一颜色分量的参考样值;
根据当前块的第一颜色分量的参考样值,确定加权系数;
根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块;其中,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量;
对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块;
根据第二预测块,确定当前块的第二颜色分量采样点的重建值。
可选地,作为另一个实施例,第二处理器3303还配置为在运行所述计算机程序时,执行前述实施 例中任一项所述的方法。
可以理解,第二存储器3302与第一存储器3102的硬件功能类似,第二处理器3303与第一处理器3103的硬件功能类似;这里不再详述。
本实施例提供了一种解码设备,该解码设备还可以包括前述实施例所述的解码装置320。对于解码设备而言,不仅充分考虑了已有的颜色分量信息,而且还充分考虑了不同的颜色格式信息,既能够保证已有亮度信息的准确性,又能够在利用未损失的亮度信息进行色度分量预测时,基于准确的亮度信息有利于提高非线性映射模型的准确性和稳定性,从而能够提高色度预测的准确性,节省码率,同时提升编解码性能。
在本申请的再一实施例中,参见图24,其示出了本申请实施例提供的一种编解码系统的组成结构示意图。如图24所示,编解码系统340可以包括编码器3401和解码器3402。其中,编码器3401可以为集成有前述实施例所述编码装置300的设备,或者也可以为前述实施例所述的编码设备310;解码器3402可以为集成有前述实施例所述解码装置320的设备,或者也可以为前述实施例所述的解码设备330。
在本申请实施例中,在该编解码系统340中,无论是编码器3401还是解码器3402,均充分考虑了已有的颜色分量信息,而且还充分考虑了不同的颜色格式信息,既能够保证已有亮度信息的准确性,又能够在利用未损失的亮度信息进行色度分量预测时,基于准确的亮度信息有利于提高非线性映射模型的准确性和稳定性,从而能够提高色度预测的准确性,节省码率,同时提升编解码性能。
需要说明的是,在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
本申请实施例中,无论是编码端还是解码端,通过确定当前块的第一颜色分量的参考样值;根据当前块的第一颜色分量的参考样值,确定加权系数;根据加权系数和当前块的第二颜色分量的参考样值,确定当前块的第二颜色分量的第一预测块;其中,第一预测块中包含的第二颜色分量的预测值的数量大于当前块中包含的第二颜色分量采样点的数量;对第一预测块进行第一滤波处理,确定当前块的第二颜色分量的第二预测块。这样,在编码端根据第二预测块,能够确定当前块的第二颜色分量采样点的预测差值;将预测差值写入码流中;使得在解码端,根据第二预测块和解码得到的预测差值可以确定出当前块的第二颜色分量采样点的重建值。如此,利用当前块相邻的参考像素与当前块内的颜色分量信息,不仅充分考虑了已有的颜色分量信息,使得在不损失亮度信息的基础上能够建立更准确的非线性映射模型对每个色度分量的参考样值分配权重进行加权预测;而且对于第一滤波处理还充分考虑了不同的颜色格式信息,根据不同的颜色格式信息进行色度和/或亮度的采样滤波,能够始终保证色度分量和亮度分量的空间分辨率一致,这样既可以保证已有亮度信息的准确性,又可以在利用未损失的亮度信息进行色度分量预测时,基于准确的亮度信息有利于提高非线性映射模型的准确性和稳定性,从而能够提高色度预测的准确性,节省码率,提升编解码效率,进而提升编解码性能。
Claims (96)
- 一种解码方法,包括:确定当前块的第一颜色分量的参考样值;根据所述当前块的第一颜色分量的参考样值,确定加权系数;根据所述加权系数和所述当前块的第二颜色分量的参考样值,确定所述当前块的第二颜色分量的第一预测块;其中,所述第一预测块中包含的所述第二颜色分量的预测值的数量大于所述当前块中包含的第二颜色分量采样点的数量;对所述第一预测块进行第一滤波处理,确定所述当前块的第二颜色分量的第二预测块;根据所述第二预测块,确定所述当前块的所述第二颜色分量采样点的重建值。
- 根据权利要求1所述的方法,其中,所述第二预测块中包含的所述第二颜色分量的预测值的数量与所述当前块中包含的第二颜色分量采样点的数量相同。
- 根据权利要求1所述的方法,其中,所述确定当前块的第一颜色分量的参考样值,包括:根据所述当前块的相邻区域中的第一颜色分量采样点的取值,确定所述当前块的第一颜色分量的参考样值;其中,所述相邻区域包括下述至少之一:上侧相邻区域、右上侧相邻区域、左侧相邻区域和左下侧相邻区域。
- 根据权利要求3所述的方法,其中,所述方法还包括:对所述相邻区域中的第一颜色分量采样点进行筛选处理,确定所述第一颜色分量采样点的取值。
- 根据权利要求4所述的方法,其中,所述对所述相邻区域中的第一颜色分量采样点进行筛选处理,确定所述第一颜色分量采样点的取值,包括:基于所述相邻区域中的第一颜色分量采样点的位置和/或颜色分量强度,确定待选择采样点位置;根据所述待选择采样点位置,从所述相邻区域中确定所述第一颜色分量采样点的取值。
- 根据权利要求3所述的方法,其中,所述确定所述当前块的第一颜色分量的参考样值,还包括:对所述第一颜色分量采样点的取值进行第二滤波处理,得到所述当前块的第一颜色分量的滤波相邻样值;根据所述当前块的第一颜色分量的滤波相邻样值,确定所述当前块的第一颜色分量的参考样值。
- 根据权利要求6所述的方法,其中,所述当前块的第一颜色分量的滤波相邻样值的数量大于所述第一颜色分量采样点的取值的数量。
- 根据权利要求3或6所述的方法,其中,所述确定当前块的第一颜色分量的参考样值,还包括:基于所述当前块中第一参考颜色分量采样点的重建值,确定所述当前块的第一颜色分量的参考样值。
- 根据权利要求8所述的方法,其中,所述当前块的第一颜色分量的参考样值设置为所述第一颜色分量采样点的取值与所述第一参考颜色分量采样点的重建值之差的绝对值。
- 根据权利要求8所述的方法,其中,所述当前块的第一颜色分量的参考样值设置为所述第一颜色分量的滤波相邻样值与所述第一参考颜色分量采样点的重建值之差的绝对值。
- 根据权利要求3或6所述的方法,其中,所述确定所述当前块的第一颜色分量的参考样值,还包括:对所述当前块中第一参考颜色分量采样点的重建值进行第三滤波处理,得到所述当前块中第一参考颜色分量采样点的滤波样值;根据所述当前块中第一参考颜色分量采样点的滤波样值,确定所述当前块的第一颜色分量的参考样值。
- 根据权利要求11所述的方法,其中,所述当前块中第一参考颜色分量采样点的滤波样值的数量大于所述当前块中第一参考颜色分量采样点的重建值的数量。
- 根据权利要求11所述的方法,其中,所述当前块的第一颜色分量的参考样值设置为所述第一颜色分量的滤波相邻样值与所述第一参考颜色分量采样点的滤波样值之差的绝对值。
- 根据权利要求11所述的方法,其中,所述当前块的第一颜色分量的参考样值设置为所述第一颜色分量采样点的取值与所述第一参考颜色分量采样点的滤波样值之差的绝对值。
- 根据权利要求1所述的方法,其中,所述根据所述当前块的第一颜色分量的参考样值,确定加权系数,包括:确定在预设映射关系下所述第一颜色分量的参考样值对应的取值;将所述加权系数设置为等于所述取值。
- 根据权利要求15所述的方法,其中,所述确定在预设映射关系下所述第一颜色分量的参考样值对应的取值,包括:确定第一因子;根据所述第一因子和所述第一颜色分量的参考样值,确定第一乘积值;确定所述第一乘积值在所述预设映射关系下对应的取值。
- 根据权利要求16所述的方法,其中,所述确定第一因子,包括:所述第一因子是预设常数值。
- 根据权利要求16所述的方法,其中,所述确定第一因子,包括:根据所述当前块的尺寸参数,确定所述第一因子的取值;其中,所述当前块的尺寸参数包括以下参数的至少之一:所述当前块的宽度,所述当前块的高度。
- 根据权利要求15所述的方法,其中,所述确定在预设映射关系下所述第一颜色分量的参考样值对应的取值,包括:所述预设映射关系是Softmax函数。
- 根据权利要求15所述的方法,其中,所述确定在预设映射关系下所述第一颜色分量的参考样值对应的取值,包括:所述预设映射关系是与所述第一颜色分量的参考样值具有反比关系的加权函数。
- 根据权利要求1所述的方法,其中,所述方法还包括:根据所述当前块的相邻区域中的第二颜色分量采样点的取值,确定所述当前块的第二颜色分量的参考样值。
- 根据权利要求21所述的方法,其中,所述方法还包括:对所述当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到所述当前块的第二颜色分量的滤波相邻样值;根据所述当前块的第二颜色分量的滤波相邻样值,确定所述当前块的第二颜色分量的参考样值。
- 根据权利要求22所述的方法,其中,所述当前块的第二颜色分量的滤波相邻样值的数量大于所述当前块的相邻区域中的第二颜色分量采样点的取值的数量。
- 根据权利要求22所述的方法,其中,所述方法还包括:所述第四滤波处理是上采样滤波;其中,上采样率是2的正整数倍。
- 根据权利要求22所述的方法,其中,所述方法还包括:基于颜色格式信息,对所述当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到所述当前块的第二颜色分量的滤波相邻样值。
- 根据权利要求25所述的方法,其中,所述第四滤波处理,还包括:若所述颜色格式信息指示为4:2:0采样,则对所述当前块的相邻区域中的第二颜色分量采样点的取值进行上采样滤波;其中,上采样率是2的正整数倍。
- 根据权利要求22所述的方法,其中,所述方法还包括:利用第一水平上采样因子和第一垂直上采样因子对所述当前块的相邻区域中的第一颜色分量采样点的取值进行第二滤波处理,得到所述当前块的第一颜色分量的滤波相邻样值;以及利用第二水平上采样因子和第二垂直上采样因子对所述当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到所述当前块的第二颜色分量的滤波相邻样值;相应地,所述方法还包括:若所述颜色格式信息指示为4:4:4采样,则确定所述第二水平上采样因子等于所述第一水平上采样因子,所述第二垂直上采样因子等于所述第一垂直上采样因子;若所述颜色格式信息指示为4:2:2采样,则确定所述第二水平上采样因子等于2倍的所述第一水平上采样因子,所述第二垂直上采样因子等于所述第一垂直上采样因子;若所述颜色格式信息指示为4:1:1采样,则确定所述第二水平上采样因子等于4倍的所述第一水平上采样因子,所述第二垂直上采样因子等于所述第一垂直上采样因子;若所述颜色格式信息指示为4:2:0采样,则确定所述第二水平上采样因子等于2倍的所述第一水平上采样因子,所述第二垂直上采样因子等于2倍的所述第一垂直上采样因子。
- 根据权利要求8所述的方法,其中,所述方法还包括:若颜色格式信息指示为4:4:4采样,则确定所述第一预测块的宽度等于所述当前块的宽度,所述第一预测块的高度等于所述当前块的高度;若颜色格式信息指示为4:2:2采样,则确定所述第一预测块的宽度等于2倍的所述当前块的宽度,所述第一预测块的高度等于所述当前块的高度;若颜色格式信息指示为4:1:1采样,则确定所述第一预测块的宽度等于4倍的所述当前块的宽度,所述第一预测块的高度等于所述当前块的高度;若颜色格式信息指示为4:2:0采样,则确定所述第一预测块的宽度等于2倍的所述当前块的宽度,所述第一预测块的高度等于2倍的所述当前块的高度。
- 根据权利要求11所述的方法,其中,所述方法还包括:利用第三水平上采样因子和第三垂直上采样因子对所述当前块中第一参考颜色分量采样点的重建值进行第三滤波处理,得到所述当前块中第一参考颜色分量采样点的滤波样值;相应地,所述方法还包括:若颜色格式信息指示为4:4:4采样,则确定所述第一预测块的宽度等于所述当前块的宽度与所述第三水平上采样因子的乘积,所述第一预测块的高度等于所述当前块的高度与所述第三垂直上采样因子的乘积;若颜色格式信息指示为4:2:2采样,则确定所述第一预测块的宽度等于2倍的所述当前块的宽度与所述第三水平上采样因子的乘积,所述第一预测块的高度等于所述当前块的高度与所述第三垂直上采样因子的乘积;若颜色格式信息指示为4:1:1采样,则确定所述第一预测块的宽度等于4倍的所述当前块的宽度与所述第三水平上采样因子的乘积,所述第一预测块的高度等于所述当前块的高度与所述第三垂直上采样因子的乘积;若颜色格式信息指示为4:2:0采样,则确定所述第一预测块的宽度等于2倍的所述当前块的宽度与所述第三水平上采样因子的乘积,所述第一预测块的高度等于2倍的所述当前块的高度与所述第三垂直上采样因子的乘积。
- 根据权利要求1所述的方法,其中,所述根据所述加权系数和所述当前块的第二颜色分量的参考样值,确定所述当前块的第二颜色分量的第一预测块,包括:确定所述第二颜色分量的参考样值与对应的所述加权系数的加权值;将所述第一预测块中所述第二颜色分量采样点的预测值设置为等于N个所述加权值之和;其中,N表示所述第二颜色分量的参考样值的数量,N是正整数。
- 根据权利要求1所述的方法,其中,所述第一滤波处理为下采样滤波处理。
- 根据权利要求31所述的方法,其中,所述对所述第一预测块进行第一滤波处理,确定所述当前块的第二颜色分量的第二预测块,包括:利用预设滤波器对所述第一预测块进行下采样滤波处理,确定所述当前块的第二颜色分量的第二预测块。
- 根据权利要求31所述的方法,其中,所述对所述第一预测块进行第一滤波处理,确定所述当前块的第二颜色分量的第二预测块,包括:确定水平下采样因子和垂直下采样因子;根据所述水平下采样因子和所述垂直下采样因子对所述第一预测块进行下采样滤波处理,得到所述当前块的第二颜色分量的第二预测块。
- 根据权利要求33所述的方法,其中,所述根据所述水平下采样因子和所述垂直下采样因子对所述第一预测块进行下采样滤波处理,得到所述当前块的第二颜色分量的第二预测块,包括:若所述水平下采样因子大于1,或者所述垂直下采样因子大于1,则对所述第一预测块进行下采样滤波处理,得到所述第二预测块。
- 根据权利要求34所述的方法,其中,所述对所述第一预测块进行下采样滤波处理,包括下述至少一项:对所述第一预测块在水平方向进行下采样滤波处理;对所述第一预测块在垂直方向进行下采样滤波处理;对所述第一预测块在水平方向进行下采样滤波处理后再在垂直方向进行下采样滤波处理;对所述第一预测块在垂直方向进行下采样滤波处理后再在水平方向进行下采样滤波处理。
- 根据权利要求33所述的方法,其中,所述对所述第一预测块进行第一滤波处理,确定所述当前块的第二颜色分量的第二预测块,包括:根据所述水平下采样因子和所述垂直下采样因子,对所述第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到所述第二预测块。
- 根据权利要求36所述的方法,其中,所述对所述第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到所述第二预测块,包括:对所述第一预测块在水平方向上每所述水平下采样因子数量的第二颜色分量的预测值进行加权和 计算,得到所述第二预测块。
- 根据权利要求36所述的方法,其中,所述对所述第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到所述第二预测块,包括:对所述第一预测块在垂直方向上每所述垂直下采样因子数量的第二颜色分量的预测值进行加权和计算,得到所述第二预测块。
- 根据权利要求36所述的方法,其中,所述对所述第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到所述第二预测块,包括:对所述第一预测块在水平方向上每所述水平下采样因子数量的第二颜色分量的预测值进行加权和计算,以及在垂直方向上每所述垂直下采样因子数量的第二颜色分量的预测值进行加权和计算,得到所述第二预测块。
- 根据权利要求1所述的方法,其中,所述方法还包括:根据所述第一预测块中部分采样点的第一颜色分量的参考样值,确定加权系数;根据所述加权系数和所述第一预测块中部分采样点的第二颜色分量的参考样值,确定所述当前块的第二颜色分量的第二预测块。
- 根据权利要求40所述的方法,其中,所述根据所述加权系数和所述第一预测块中部分采样点的第二颜色分量的参考样值,确定所述当前块的第二颜色分量的第二预测块,包括:根据所述加权系数对所述第一预测块中第(i,j)位置处采样点的第二颜色分量的参考样值进行加权计算,得到所述当前块中第(x,y)位置处采样点的第二颜色分量的预测值;其中,i、j、x、j均为大于或等于零的整数。
- 根据权利要求41所述的方法,其中,所述方法还包括:若颜色格式信息指示为4:4:4采样,则将x设置为等于i,将y设置为等于j;若颜色格式信息指示为4:2:2采样,则将x设置为等于i与2的乘积,将y设置为等于j;若颜色格式信息指示为4:1:1采样,则将x设置为等于i与4的乘积,将y设置为等于j;若颜色格式信息指示为4:2:0采样,则将x设置为等于i与2的乘积,将y设置为等于j与2的乘积。
- 根据权利要求41所述的方法,其中,所述方法还包括:确定水平取样位置因子和垂直取样位置因子;将x设置为等于i与所述水平取样位置因子的乘积,将y设置为等于j与所述垂直取样位置因子的乘积。
- 根据权利要求1所述的方法,其中,所述方法还包括:在确定所述当前块的第二颜色分量的第二预测块之后,对所述第二预测块进行相关处理,将处理后的第二预测块作为所述第二预测块;其中,所述对所述第二预测块进行相关处理,包括下述至少一项:对所述第二预测块进行第三滤波处理;利用预设补偿值对所述第二预测块进行修正处理;利用至少一种预测模式下所述当前块的第二颜色分量的预测值对所述第二预测块进行加权融合处理。
- 根据权利要求1所述的方法,其中,所述根据所述第二预测块,确定所述当前块的所述第二颜色分量采样点的重建值,包括:确定所述当前块的所述第二颜色分量采样点的预测差值;根据所述第二预测块,确定所述当前块的所述第二颜色分量采样点的预测值;根据所述当前块的所述第二颜色分量采样点的预测差值和所述当前块的所述第二颜色分量采样点的预测值,确定所述当前块的所述第二颜色分量采样点的重建值。
- 一种编码方法,包括:确定当前块的第一颜色分量的参考样值;根据所述当前块的第一颜色分量的参考样值,确定加权系数;根据所述加权系数和所述当前块的第二颜色分量的参考样值,确定所述当前块的第二颜色分量的第一预测块;其中,所述第一预测块中包含的所述第二颜色分量的预测值的数量大于所述当前块中包含的第二颜色分量采样点的数量;对所述第一预测块进行第一滤波处理,确定所述当前块的第二颜色分量的第二预测块;根据所述第二预测块,确定所述当前块的所述第二颜色分量采样点的预测差值。
- 根据权利要求46所述的方法,其中,所述第二预测块中包含的所述第二颜色分量的预测值的 数量与所述当前块中包含的第二颜色分量采样点的数量相同。
- 根据权利要求46所述的方法,其中,所述确定当前块的第一颜色分量的参考样值,包括:根据所述当前块的相邻区域中的第一颜色分量采样点的取值,确定所述当前块的第一颜色分量的参考样值;其中,所述相邻区域包括下述至少之一:上侧相邻区域、右上侧相邻区域、左侧相邻区域和左下侧相邻区域。
- 根据权利要求48所述的方法,其中,所述方法还包括:对所述相邻区域中的第一颜色分量采样点进行筛选处理,确定所述第一颜色分量采样点的取值。
- 根据权利要求49所述的方法,其中,所述对所述相邻区域中的第一颜色分量采样点进行筛选处理,确定所述第一颜色分量采样点的取值,包括:基于所述相邻区域中的第一颜色分量采样点的位置和/或颜色分量强度,确定待选择采样点位置;根据所述待选择采样点位置,从所述相邻区域中确定所述第一颜色分量采样点的取值。
- 根据权利要求48所述的方法,其中,所述确定所述当前块的第一颜色分量的参考样值,还包括:对所述第一颜色分量采样点的取值进行第二滤波处理,得到所述当前块的第一颜色分量的滤波相邻样值;根据所述当前块的第一颜色分量的滤波相邻样值,确定所述当前块的第一颜色分量的参考样值。
- 根据权利要求51所述的方法,其中,所述当前块的第一颜色分量的滤波相邻样值的数量大于所述第一颜色分量采样点的取值的数量。
- 根据权利要求48或51所述的方法,其中,所述确定当前块的第一颜色分量的参考样值,还包括:基于所述当前块中第一参考颜色分量采样点的重建值,确定所述当前块的第一颜色分量的参考样值。
- 根据权利要求53所述的方法,其中,所述当前块的第一颜色分量的参考样值设置为所述第一颜色分量采样点的取值与所述第一参考颜色分量采样点的重建值之差的绝对值。
- 根据权利要求53所述的方法,其中,所述当前块的第一颜色分量的参考样值设置为所述第一颜色分量的滤波相邻样值与所述第一参考颜色分量采样点的重建值之差的绝对值。
- 根据权利要求48或51所述的方法,其中,所述确定所述当前块的第一颜色分量的参考样值,还包括:对所述当前块中第一参考颜色分量采样点的重建值进行第三滤波处理,得到所述当前块中第一参考颜色分量采样点的滤波样值;根据所述当前块中第一参考颜色分量采样点的滤波样值,确定所述当前块的第一颜色分量的参考样值。
- 根据权利要求56所述的方法,其中,所述当前块中第一参考颜色分量采样点的滤波样值的数量大于所述当前块中第一参考颜色分量采样点的重建值的数量。
- 根据权利要求56所述的方法,其中,所述当前块的第一颜色分量的参考样值设置为所述第一颜色分量的滤波相邻样值与所述第一参考颜色分量采样点的滤波样值之差的绝对值。
- 根据权利要求56所述的方法,其中,所述当前块的第一颜色分量的参考样值设置为所述第一颜色分量采样点的取值与所述第一参考颜色分量采样点的滤波样值之差的绝对值。
- 根据权利要求46所述的方法,其中,所述根据所述当前块的第一颜色分量的参考样值,确定加权系数,包括:确定在预设映射关系下所述第一颜色分量的参考样值对应的取值;将所述加权系数设置为等于所述取值。
- 根据权利要求60所述的方法,其中,所述确定在预设映射关系下所述第一颜色分量的参考样值对应的取值,包括:确定第一因子;根据所述第一因子和所述第一颜色分量的参考样值,确定第一乘积值;确定所述第一乘积值在所述预设映射关系下对应的取值。
- 根据权利要求61所述的方法,其中,所述确定第一因子,包括:所述第一因子是预设常数值。
- 根据权利要求61所述的方法,其中,所述确定第一因子,包括:根据所述当前块的尺寸参数,确定所述第一因子的取值;其中,所述当前块的尺寸参数包括以下参数的至少之一:所述当前块的宽度,所述当前块的高度。
- 根据权利要求60所述的方法,其中,所述确定在预设映射关系下所述第一颜色分量的参考样值对应的取值,包括:所述预设映射关系是Softmax函数。
- 根据权利要求60所述的方法,其中,所述确定在预设映射关系下所述第一颜色分量的参考样值对应的取值,包括:所述预设映射关系是与所述第一颜色分量的参考样值具有反比关系的加权函数。
- 根据权利要求46所述的方法,其中,所述方法还包括:根据所述当前块的相邻区域中的第二颜色分量采样点的取值,确定所述当前块的第二颜色分量的参考样值。
- 根据权利要求66所述的方法,其中,所述方法还包括:对所述当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到所述当前块的第二颜色分量的滤波相邻样值;根据所述当前块的第二颜色分量的滤波相邻样值,确定所述当前块的第二颜色分量的参考样值。
- 根据权利要求67所述的方法,其中,所述当前块的第二颜色分量的滤波相邻样值的数量大于所述当前块的相邻区域中的第二颜色分量采样点的取值的数量。
- 根据权利要求67所述的方法,其中,所述方法还包括:所述第四滤波处理是上采样滤波;其中,上采样率是2的正整数倍。
- 根据权利要求67所述的方法,其中,所述方法还包括:基于颜色格式信息,对所述当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到所述当前块的第二颜色分量的滤波相邻样值。
- 根据权利要求70所述的方法,其中,所述第四滤波处理,还包括:若所述颜色格式信息指示为4:2:0采样,则对所述当前块的相邻区域中的第二颜色分量采样点的取值进行上采样滤波;其中,上采样率是2的正整数倍。
- 根据权利要求67所述的方法,其中,所述方法还包括:利用第一水平上采样因子和第一垂直上采样因子对所述当前块的相邻区域中的第一颜色分量采样点的取值进行第二滤波处理,得到所述当前块的第一颜色分量的滤波相邻样值;以及利用第二水平上采样因子和第二垂直上采样因子对所述当前块的相邻区域中的第二颜色分量采样点的取值进行第四滤波处理,得到所述当前块的第二颜色分量的滤波相邻样值;相应地,所述方法还包括:若所述颜色格式信息指示为4:4:4采样,则确定所述第二水平上采样因子等于所述第一水平上采样因子,所述第二垂直上采样因子等于所述第一垂直上采样因子;若所述颜色格式信息指示为4:2:2采样,则确定所述第二水平上采样因子等于2倍的所述第一水平上采样因子,所述第二垂直上采样因子等于所述第一垂直上采样因子;若所述颜色格式信息指示为4:1:1采样,则确定所述第二水平上采样因子等于4倍的所述第一水平上采样因子,所述第二垂直上采样因子等于所述第一垂直上采样因子;若所述颜色格式信息指示为4:2:0采样,则确定所述第二水平上采样因子等于2倍的所述第一水平上采样因子,所述第二垂直上采样因子等于2倍的所述第一垂直上采样因子。
- 根据权利要求53所述的方法,其中,所述方法还包括:若颜色格式信息指示为4:4:4采样,则确定所述第一预测块的宽度等于所述当前块的宽度,所述第一预测块的高度等于所述当前块的高度;若颜色格式信息指示为4:2:2采样,则确定所述第一预测块的宽度等于2倍的所述当前块的宽度,所述第一预测块的高度等于所述当前块的高度;若颜色格式信息指示为4:1:1采样,则确定所述第一预测块的宽度等于4倍的所述当前块的宽度,所述第一预测块的高度等于所述当前块的高度;若颜色格式信息指示为4:2:0采样,则确定所述第一预测块的宽度等于2倍的所述当前块的宽度,所述第一预测块的高度等于2倍的所述当前块的高度。
- 根据权利要求56所述的方法,其中,所述方法还包括:利用第三水平上采样因子和第三垂直上采样因子对所述当前块中第一参考颜色分量采样点的重建值进行第三滤波处理,得到所述当前块中第一参考颜色分量采样点的滤波样值;相应地,所述方法还包括:若颜色格式信息指示为4:4:4采样,则确定所述第一预测块的宽度等于所述当前块的宽度与所述第三水平上采样因子的乘积,所述第一预测块的高度等于所述当前块的高度与所述第三垂直上采样因子的 乘积;若颜色格式信息指示为4:2:2采样,则确定所述第一预测块的宽度等于2倍的所述当前块的宽度与所述第三水平上采样因子的乘积,所述第一预测块的高度等于所述当前块的高度与所述第三垂直上采样因子的乘积;若颜色格式信息指示为4:1:1采样,则确定所述第一预测块的宽度等于4倍的所述当前块的宽度与所述第三水平上采样因子的乘积,所述第一预测块的高度等于所述当前块的高度与所述第三垂直上采样因子的乘积;若颜色格式信息指示为4:2:0采样,则确定所述第一预测块的宽度等于2倍的所述当前块的宽度与所述第三水平上采样因子的乘积,所述第一预测块的高度等于2倍的所述当前块的高度与所述第三垂直上采样因子的乘积。
- 根据权利要求46所述的方法,其中,所述根据所述加权系数和所述当前块的第二颜色分量的参考样值,确定所述当前块的第二颜色分量的第一预测块,包括:确定所述第二颜色分量的参考样值与对应的所述加权系数的加权值;将所述第一预测块中所述第二颜色分量采样点的预测值设置为等于N个所述加权值之和;其中,N表示所述第二颜色分量的参考样值的数量,N是正整数。
- 根据权利要求46所述的方法,其中,所述第一滤波处理为下采样滤波处理。
- 根据权利要求76所述的方法,其中,所述对所述第一预测块进行第一滤波处理,确定所述当前块的第二颜色分量的第二预测块,包括:利用预设滤波器对所述第一预测块进行下采样滤波处理,确定所述当前块的第二颜色分量的第二预测块。
- 根据权利要求76所述的方法,其中,所述对所述第一预测块进行第一滤波处理,确定所述当前块的第二颜色分量的第二预测块,包括:确定水平下采样因子和垂直下采样因子;根据所述水平下采样因子和所述垂直下采样因子对所述第一预测块进行下采样滤波处理,得到所述当前块的第二颜色分量的第二预测块。
- 根据权利要求78所述的方法,其中,所述根据所述水平下采样因子和所述垂直下采样因子对所述第一预测块进行下采样滤波处理,得到所述当前块的第二颜色分量的第二预测块,包括:若所述水平下采样因子大于1,或者所述垂直下采样因子大于1,则对所述第一预测块进行下采样滤波处理,得到所述第二预测块。
- 根据权利要求79所述的方法,其中,所述对所述第一预测块进行下采样滤波处理,包括下述至少一项:对所述第一预测块在水平方向进行下采样滤波处理;对所述第一预测块在垂直方向进行下采样滤波处理;对所述第一预测块在水平方向进行下采样滤波处理后再在垂直方向进行下采样滤波处理;对所述第一预测块在垂直方向进行下采样滤波处理后再在水平方向进行下采样滤波处理。
- 根据权利要求78所述的方法,其中,所述对所述第一预测块进行第一滤波处理,确定所述当前块的第二颜色分量的第二预测块,包括:根据所述水平下采样因子和所述垂直下采样因子,对所述第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到所述第二预测块。
- 根据权利要求81所述的方法,其中,所述对所述第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到所述第二预测块,包括:对所述第一预测块在水平方向上每所述水平下采样因子数量的第二颜色分量的预测值进行加权和计算,得到所述第二预测块。
- 根据权利要求81所述的方法,其中,所述对所述第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到所述第二预测块,包括:对所述第一预测块在垂直方向上每所述垂直下采样因子数量的第二颜色分量的预测值进行加权和计算,得到所述第二预测块。
- 根据权利要求81所述的方法,其中,所述对所述第一预测块在水平方向和/或垂直方向上每预设个数的第二颜色分量的预测值进行加权和计算,得到所述第二预测块,包括:对所述第一预测块在水平方向上每所述水平下采样因子数量的第二颜色分量的预测值进行加权和计算,以及在垂直方向上每所述垂直下采样因子数量的第二颜色分量的预测值进行加权和计算,得到所述第二预测块。
- 根据权利要求46所述的方法,其中,所述方法还包括:根据所述第一预测块中部分采样点的第一颜色分量的参考样值,确定加权系数;根据所述加权系数和所述第一预测块中部分采样点的第二颜色分量的参考样值,确定所述当前块的第二颜色分量的第二预测块。
- 根据权利要求85所述的方法,其中,所述根据所述加权系数和所述第一预测块中部分采样点的第二颜色分量的参考样值,确定所述当前块的第二颜色分量的第二预测块,包括:根据所述加权系数对所述第一预测块中第(i,j)位置处采样点的第二颜色分量的参考样值进行加权计算,得到所述当前块中第(x,y)位置处采样点的第二颜色分量的预测值;其中,i、j、x、j均为大于或等于零的整数。
- 根据权利要求86所述的方法,其中,所述方法还包括:若颜色格式信息指示为4:4:4采样,则将x设置为等于i,将y设置为等于j;若颜色格式信息指示为4:2:2采样,则将x设置为等于i与2的乘积,将y设置为等于j;若颜色格式信息指示为4:1:1采样,则将x设置为等于i与4的乘积,将y设置为等于j;若颜色格式信息指示为4:2:0采样,则将x设置为等于i与2的乘积,将y设置为等于j与2的乘积。
- 根据权利要求86所述的方法,其中,所述方法还包括:确定水平取样位置因子和垂直取样位置因子;将x设置为等于i与所述水平取样位置因子的乘积,将y设置为等于j与所述垂直取样位置因子的乘积。
- 根据权利要求46所述的方法,其中,所述方法还包括:在确定所述当前块的第二颜色分量的第二预测块之后,对所述第二预测块进行相关处理,将处理后的第二预测块作为所述第二预测块;其中,所述对所述第二预测块进行相关处理,包括下述至少一项:对所述第二预测块进行第三滤波处理;利用预设补偿值对所述第二预测块进行修正处理;利用至少一种预测模式下所述当前块的第二颜色分量的预测值对所述第二预测块进行加权融合处理。
- 根据权利要求46所述的方法,其中,所述根据所述第二预测块,确定所述当前块的所述第二颜色分量采样点的预测差值,包括:根据所述第二预测块,确定所述当前块的所述第二颜色分量采样点的预测值;根据所述当前块的所述第二颜色分量采样点的原始值和所述当前块的所述第二颜色分量采样点的预测值,确定所述当前块的所述第二颜色分量采样点的预测差值。
- 根据权利要求90所述的方法,其中,所述方法还包括:对所述当前块的所述第二颜色分量采样点的预测差值进行编码,将所得到的编码比特写入码流。
- 一种编码装置,包括第一确定单元、第一预测单元和第一滤波单元;其中,所述第一确定单元,配置为确定当前块的第一颜色分量的参考样值;以及根据所述当前块的第一颜色分量的参考样值,确定加权系数;所述第一预测单元,配置为根据所述加权系数和所述当前块的第二颜色分量的参考样值,确定所述当前块的第二颜色分量的第一预测块;其中,所述第一预测块中包含的所述第二颜色分量的预测值的数量大于所述当前块中包含的第二颜色分量采样点的数量;所述第一滤波单元,配置为对所述第一预测块进行第一滤波处理,确定所述当前块的第二颜色分量的第二预测块;所述第一确定单元,还配置为根据所述第二预测块,确定所述当前块的所述第二颜色分量采样点的预测差值。
- 一种编码设备,包括第一存储器和第一处理器;其中,所述第一存储器,用于存储能够在所述第一处理器上运行的计算机程序;所述第一处理器,用于在运行所述计算机程序时,执行如权利要求46至91任一项所述的方法。
- 一种解码装置,包括第二确定单元、第二预测单元和第二滤波单元;其中,所述第二确定单元,配置为确定当前块的第一颜色分量的参考样值;以及根据所述当前块的第一颜色分量的参考样值,确定加权系数;所述第二预测单元,配置为根据所述加权系数和所述当前块的第二颜色分量的参考样值,确定所述当前块的第二颜色分量的第一预测块;其中,所述第一预测块中包含的所述第二颜色分量的预测值的数 量大于所述当前块中包含的第二颜色分量采样点的数量;所述第二滤波单元,配置为对所述第一预测块进行第一滤波处理,确定所述当前块的第二颜色分量的第二预测块;所述第二确定单元,还配置为根据所述第二预测块,确定所述当前块的所述第二颜色分量采样点的重建值。
- 一种解码设备,包括第二存储器和第二处理器;其中,所述第二存储器,用于存储能够在所述第二处理器上运行的计算机程序;所述第二处理器,用于在运行所述计算机程序时,执行如权利要求1至45任一项所述的方法。
- 一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机程序,所述计算机程序被执行时实现如权利要求1至45任一项所述的方法、或者实现如权利要求46至91任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2022/086471 WO2023197194A1 (zh) | 2022-04-12 | 2022-04-12 | 编解码方法、装置、编码设备、解码设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118975244A true CN118975244A (zh) | 2024-11-15 |
Family
ID=88328746
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280094569.1A Pending CN118975244A (zh) | 2022-04-12 | 2022-04-12 | 编解码方法、装置、编码设备、解码设备以及存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20250047834A1 (zh) |
EP (1) | EP4510576A1 (zh) |
CN (1) | CN118975244A (zh) |
WO (1) | WO2023197194A1 (zh) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020029187A1 (zh) * | 2018-08-09 | 2020-02-13 | Oppo广东移动通信有限公司 | 视频图像分量的预测方法、装置及计算机存储介质 |
CN113412617B (zh) * | 2018-12-21 | 2024-09-27 | 三星电子株式会社 | 编码方法及其装置和解码方法及其装置 |
EP3955574B1 (en) * | 2019-12-19 | 2024-09-25 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Image component prediction method, encoder, decoder, and storage medium |
-
2022
- 2022-04-12 CN CN202280094569.1A patent/CN118975244A/zh active Pending
- 2022-04-12 EP EP22936848.5A patent/EP4510576A1/en active Pending
- 2022-04-12 WO PCT/CN2022/086471 patent/WO2023197194A1/zh active Application Filing
-
2024
- 2024-10-09 US US18/910,977 patent/US20250047834A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2023197194A1 (zh) | 2023-10-19 |
US20250047834A1 (en) | 2025-02-06 |
EP4510576A1 (en) | 2025-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN119420941A (zh) | 基于矩阵的内预测 | |
CN113068028B (zh) | 视频图像分量的预测方法、装置及计算机存储介质 | |
US20230262212A1 (en) | Picture prediction method, encoder, decoder, and computer storage medium | |
WO2023051653A1 (en) | Method, apparatus, and medium for video processing | |
CN114128269A (zh) | 内预测模式的编码 | |
US20250039358A1 (en) | Encoding device, decoding device, and storage medium | |
CN113766233B (zh) | 图像预测方法、编码器、解码器以及存储介质 | |
TW202404358A (zh) | 編解碼方法、裝置、編碼設備、解碼設備以及儲存媒介 | |
WO2023051654A1 (en) | Method, apparatus, and medium for video processing | |
CN118975244A (zh) | 编解码方法、装置、编码设备、解码设备以及存储介质 | |
CN119487848A (zh) | 编解码方法、编码器、解码器以及存储介质 | |
US20250039413A1 (en) | Encoding method, decoding method, and decoding device | |
CN114830658A (zh) | 变换方法、编码器、解码器以及存储介质 | |
CN118614063A (zh) | 编解码方法、装置、编码设备、解码设备以及存储介质 | |
WO2024098263A1 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
WO2024153241A1 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
WO2024145852A1 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
WO2024222745A1 (en) | Method, apparatus, and medium for video processing | |
WO2024222654A1 (en) | Method, apparatus, and medium for video processing | |
WO2024077520A1 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
WO2023241634A1 (en) | Method, apparatus, and medium for video processing | |
US20250039441A1 (en) | Coding method, decoding method and decoding device | |
CN119032561A (zh) | 编解码方法、装置、编码设备、解码设备以及存储介质 | |
WO2024081872A1 (en) | Method, apparatus, and medium for video processing | |
WO2023197193A1 (zh) | 编解码方法、装置、编码设备、解码设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |