CN112584142A - 一种编解码方法、装置及其设备 - Google Patents
一种编解码方法、装置及其设备 Download PDFInfo
- Publication number
- CN112584142A CN112584142A CN201910944559.2A CN201910944559A CN112584142A CN 112584142 A CN112584142 A CN 112584142A CN 201910944559 A CN201910944559 A CN 201910944559A CN 112584142 A CN112584142 A CN 112584142A
- Authority
- CN
- China
- Prior art keywords
- pixel position
- reference weight
- weight value
- current block
- value
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 99
- 230000003247 decreasing effect Effects 0.000 claims description 54
- 238000003860 storage Methods 0.000 claims description 18
- 230000007423 decrease Effects 0.000 claims description 15
- 230000009466 transformation Effects 0.000 description 68
- 239000013598 vector Substances 0.000 description 40
- 230000000875 corresponding effect Effects 0.000 description 34
- 238000010586 diagram Methods 0.000 description 30
- 230000008569 process Effects 0.000 description 17
- 230000006870 function Effects 0.000 description 11
- 238000004590 computer program Methods 0.000 description 7
- 230000002093 peripheral effect Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 4
- 238000005192 partition Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013139 quantization Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 241000375392 Tana Species 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Images
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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- 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/182—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 pixel
-
- 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/184—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 bits, e.g. of the compressed video stream
-
- 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/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- 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/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请提供一种编解码方法、装置及其设备,该方法包括:在确定对当前块启动加权预测时,确定当前块的参考权重值列表;针对当前块内第一指定行的第一像素位置,获取第一像素位置的参考权重索引信息;将按照第一像素位置的参考权重索引信息,从参考权重值列表中确定的参考权重值作为第一像素位置的目标权重值;根据第一像素位置的参考权重索引信息,以及第一像素位置和第二像素位置的位置关系,确定第二像素位置的参考权重索引信息;将按照第二像素位置的参考权重索引信息,从参考权重值列表中确定的参考权重值作为第二像素位置的目标权重值;根据当前块的每个像素位置的目标权重值确定当前块的加权预测值。通过本申请的技术方案,提高编码性能。
Description
技术领域
本申请涉及编解码技术领域,尤其是涉及一种编解码方法、装置及其设备。
背景技术
为了达到节约空间的目的,视频图像都是经过编码后才传输的,完整的视频编码方法可以包括预测、变换、量化、熵编码、滤波等过程。其中,预测编码可以包括帧内编码和帧间编码。进一步的,帧间编码是利用视频时间域的相关性,使用邻近已编码图像的像素预测当前像素,以达到有效去除视频时域冗余的目的。此外,帧内编码是指利用视频空间域的相关性,使用当前帧图像的已经编码块的像素预测当前像素,以达到去除视频空域冗余的目的。
相关技术中,当前块为矩形,而实际物体的边缘往往不是矩形,对于物体边缘来说,往往存在两个不同对象(如存在前景的物体和背景)。当两个对象的运动不一致时,矩形划分不能很好的将两个对象分割,为此将当前块划分为两个非方子块,对两个非方子块进行加权预测。例如,三角预测模式将当前块划分为两个三角子块,对两个三角子块进行加权预测。
为了实现加权预测,需要确定当前块的每个子块(如三角子块等)的权重值,并基于权重值对该子块进行加权预测。但是,相关技术中,并没有设置权重值的有效方式。由于无法为当前块的每个子块设置合理的权重值,从而导致预测效果不佳,编码性能差等问题。
发明内容
本申请提供了一种编解码方法、装置及其设备,提高了预测的准确性。
本申请提供一种编解码方法,所述方法包括:
在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定行的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定行是所述当前块内的任意一行;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定行中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
本申请提供一种编解码方法,所述方法包括:
在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定列的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定列是所述当前块内的任意一列;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定列中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
本申请提供一种编解码装置,所述装置包括:
第一确定模块,用于在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
第二确定模块,用于根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;针对当前块内第一指定行的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定行是所述当前块内的任意一行;根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定行中除所述第一像素位置之外的任意一个像素位置;
第三确定模块,用于根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
本申请提供一种编解码装置,所述装置包括:
第一确定模块,用于在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
第二确定模块,用于根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;针对当前块内第一指定列的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定列是所述当前块内的任意一列;根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定列中除所述第一像素位置之外的任意一个像素位置;
第三确定模块,用于根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
本申请提供一种解码端设备,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;
所述处理器用于执行机器可执行指令,以实现如下步骤:
在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定行的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定行是所述当前块内的任意一行;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定行中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值;
或者,所述处理器用于执行机器可执行指令,以实现如下步骤:
在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定列的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定列是所述当前块内的任意一列;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定列中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
本申请提供一种编码端设备,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;
所述处理器用于执行机器可执行指令,以实现如下步骤:
在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定行的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定行是所述当前块内的任意一行;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定行中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值;
或者,所述处理器用于执行机器可执行指令,以实现如下步骤:
在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定列的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定列是所述当前块内的任意一列;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定列中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
由以上技术方案可见,本申请实施例中,在确定对当前块启动加权预测时,可以根据参考权重值列表中的参考权重值,确定当前块的每个像素位置的目标权重值。上述方式能够提出一种设置权重值的有效方式,能够为当前块的每个像素位置设置合理的目标权重值,从而提高预测准确性,提高预测性能,提高编码性能,能够使预测值更接近原始像素,并带来编码性能的提高。针对当前块的每行像素位置或者每列像素位置,在确定一个像素位置的排列顺序后,其它像素位置的排列顺序均可以参考该像素位置的排列顺序,从而减少运算次数。
附图说明
图1是视频编码框架的示意图;
图2A-图2E是加权预测的示意图;
图3是本申请一种实施方式中的编解码方法的流程图;
图4A和图4B是当前块内的每个像素位置的指向示意图;
图4C和图4D是角度预测模式的示意图;
图4E是距离参数的示意图;
图4F是GEO模式划分角度的示意图;
图5A-图5D是参考权重值的设置示意图;
图6A-图6F是目标权重值的示意图;
图7是本申请一种实施方式中的编解码方法的流程图;
图8A和图8B是目标权重值的示意图;
图9A和图9B是本申请一种实施方式中的编解码装置的结构示意图;
图9C是本申请一种实施方式中的解码端设备的硬件结构图;
图9D是本申请一种实施方式中的编码端设备的硬件结构图。
具体实施方式
在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请实施例和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但是,这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”,或“当……时”,或“响应于确定”。
本申请实施例中提出一种编解码方法、装置及其设备,可以涉及如下概念:
帧内预测、帧间预测(intra prediction and inter prediction)与IBC(帧内块拷贝)预测:
帧内预测是指,利用视频空间域的相关性,使用当前块的已编码块进行预测,以达到去除视频空域冗余的目的。帧内预测规定了多种预测模式,每种预测模式对应一种纹理方向(DC模式除外),例如,若图像纹理呈现水平状排布,则水平预测模式可以更好的预测图像信息。
帧间预测是指,基于视频时域的相关性,由于视频序列包含有较强的时域相关性,使用邻近已编码图像像素预测当前图像的像素,可以达到有效去除视频时域冗余的目的。视频编码标准帧间预测部分都采用了基于块的运动补偿技术,主要原理是为当前图像的每一个像素块在之前已编码图像中寻找一个最佳匹配块,该过程称为运动估计(MotionEstimation,ME)。
帧内块拷贝(IBC,Intra Block Copy)是指,允许同帧参考,当前块的参考数据来自同一帧,帧内块拷贝也可以称为帧内块复制。示例性的,帧内块拷贝技术是使用块矢量获取当前块的预测值。基于屏幕内容中同一帧内存在大量重复出现的纹理这一特性,在采用块矢量获取当前块的预测值时,能够提升屏幕内容序列的压缩效率。
运动矢量(Motion Vector,MV):在帧间编码中,可以使用运动矢量表示当前帧图像的当前块与参考帧图像的参考块之间的相对位移。每个划分的块都有相应的运动矢量传送到解码端,如果对每个块的运动矢量进行独立编码和传输,特别是小尺寸的大量块,则消耗很多比特。为降低用于编码运动矢量的比特数,可以利用相邻块之间的空间相关性,根据相邻已编码块的运动矢量对当前待编码块的运动矢量进行预测,然后对预测差进行编码,这样可以有效降低表示运动矢量的比特数。在对当前块的运动矢量进行编码时,可以先使用相邻已编码块的运动矢量预测当前块的运动矢量,然后对该运动矢量的预测值(MVP,Motion Vector Prediction)与运动矢量的真正估值之间的差值(MVD,Motion VectorDifference)进行编码。
运动信息(Motion Information):由于运动矢量表示当前块与某个参考块之间的位置偏移,为了准确的获取指向块的信息,除了运动矢量,还需要参考帧图像的索引信息来表示当前块使用哪个参考帧图像。在视频编码技术中,对于当前帧图像,通常可以建立一个参考帧图像列表,参考帧图像索引信息则表示当前块采用了参考帧图像列表中的第几个参考帧图像。此外,很多编码技术还支持多个参考图像列表,因此,还可以使用一个索引值来表示使用了哪一个参考图像列表,这个索引值可以称为参考方向。综上所述,在视频编码技术中,可以将运动矢量,参考帧索引,参考方向等与运动相关的信息统称为运动信息。
块矢量(Block Vector,BV):块矢量应用在帧内块拷贝技术中,帧内块拷贝技术是使用块矢量进行运动补偿,即采用块矢量获取当前块的预测值。与运动矢量不同的是,块矢量表示当前块与当前帧已编码块中的最佳匹配块之间的相对位移。基于同一帧内存在大量重复纹理这一特性,在采用块矢量获取当前块的预测值时,能够显著提升压缩效率。
率失真原则(Rate-Distortion Optimized):评价编码效率的有两大指标:码率和PSNR(Peak Signal to Noise Ratio,峰值信噪比),比特流越小,则压缩率越大,PSNR越大,则重建图像质量越好,在模式选择时,判别公式实质上也就是对二者的综合评价。例如,模式对应的代价:J(mode)=D+λ*R,其中,D表示Distortion(失真),通常可以使用SSE指标来进行衡量,SSE是指重建图像块与源图像的差值的均方和;λ是拉格朗日乘子,R就是该模式下图像块编码所需的实际比特数,包括编码模式信息、运动信息、残差等所需的比特总和。
视频编码框架:参见图1所示,可以使用视频编码框架实现本申请实施例的编码端处理流程,视频解码框架的示意图与图1类似,在此不再重复赘述,可以使用视频解码框架实现本申请实施例的解码端处理流程。示例性的,在视频编码框架和视频解码框架中,可以包括但不限于帧内预测、运动估计/运动补偿、参考图像缓冲器、环内滤波、重建、变换、量化、反变换、反量化、熵编码器等模块。在编码端,通过这些模块之间的配合,可以实现编码端处理流程,在解码端,通过这些模块之间的配合,可以实现解码端处理流程。
在相关技术中,若当前块为矩形,而实际物体的边缘往往不是矩形,即,对于物体的边缘来说,往往存在两个不同对象(如存在前景的物体和背景等)。当两个对象的运动不一致时,则矩形划分不能很好的将这两个对象进行分割,为此,可以将当前块划分为两个非方子块,并对两个非方子块进行加权预测。示例性的,加权预测是利用多个预测值进行加权操作,从而获得最终预测值,加权预测可以包括:帧间和帧内的联合加权预测,帧间和帧间的联合加权预测,帧内和帧内的联合加权预测。针对加权预测的权重值,可以为当前块的所有像素位置设置相同的权重值,也可以为当前块的所有像素位置设置不同的权重值。
参见图2A所示,为帧间帧内联合加权预测的示意图。
CIIP(Combined inter/intra prediction,帧间帧内联合预测)预测块由帧内预测块(即采用帧内预测模式得到像素位置的帧内预测值)和帧间预测块(即采用帧间预测模式得到像素位置的帧间预测值)加权得到,每个像素位置采用的帧内预测值与帧间预测值的权重比是1:1。例如,针对每个像素位置,将该像素位置的帧内预测值与该像素位置的帧间预测值进行加权,得到该像素位置的联合预测值,最终将每个像素位置的联合预测值组成CIIP预测块。
参见图2B所示,为帧间三角划分加权预测(Triangular Partition Mode,TPM)的示意图。
TPM预测块由帧间预测块1(即采用帧间预测模式得到像素位置的帧间预测值)和帧间预测块2(即采用帧间预测模式得到像素位置的帧间预测值)加权得到。TPM预测块可以划分为两个区域,一个区域可以为帧间区域1,另一个区域可以为帧间区域2,TPM预测块的两个帧间区域可以呈非方形分布,虚线分界线的角度可以为主对角线或者副对角线两种。
示例性的,针对帧间区域1的每个像素位置,主要是基于帧间预测块1的帧间预测值确定,例如,将该像素位置的帧间预测块1的帧间预测值与该像素位置的帧间预测块2的帧间预测值进行加权时,帧间预测块1的帧间预测值的权重值较大,帧间预测块2的帧间预测值的权重值较小(甚至为0),得到该像素位置的联合预测值。针对帧间区域2的每个像素位置,主要是基于帧间预测块2的帧间预测值确定,例如,将该像素位置的帧间预测块1的帧间预测值与该像素位置的帧间预测块2的帧间预测值进行加权时,帧间预测块2的帧间预测值的权重值较大,帧间预测块1的帧间预测值的权重值较小(甚至为0),得到该像素位置的联合预测值。最终,可以将每个像素位置的联合预测值组成TPM预测块。
参见图2C所示,为帧间帧内联合三角加权预测的示意图。通过对帧间帧内联合加权预测进行修改,使CIIP预测块的帧间区域和帧内区域呈现三角加权划分预测的权重分布。
CIIP预测块由帧内预测块和帧间预测块加权得到。CIIP预测块可以划分为两个区域,一个区域可以为帧内区域,另一个区域可以为帧间区域,CIIP预测块的帧间帧内可以呈非方形分布,虚线分界线区域可采用混合加权方式或者直接进行分割,且该虚线分界线的角度可以为主对角线或者副对角线两种,帧内区域和帧间区域的位置可变。
针对帧内区域的每个像素位置,主要是基于帧内预测值确定,例如,将该像素位置的帧内预测值与该像素位置的帧间预测值进行加权时,帧内预测值的权重值较大,帧间预测值的权重值较小(甚至为0),得到该像素位置的联合预测值。针对帧间区域的每个像素位置,主要是基于帧间预测值确定,例如,将该像素位置的帧内预测值与该像素位置的帧间预测值进行加权时,帧间预测值的权重值较大,帧内预测值的权重值较小(甚至为0),得到该像素位置的联合预测值。最终,将每个像素位置的联合预测值组成CIIP预测块。
参见图2D所示,为帧间块几何分割模式(Geometrical partitioning for interblocks,GEO)的示意图,GEO模式用于利用一条分割线将帧间预测块划分为两个子块,不同于TPM模式,GEO模式可以采用更多的划分方向,GEO模式的加权预测过程与TPM模式类似。
TPM预测块由帧间预测块1和帧间预测块2加权得到。TPM预测块可以划分为两个区域,一个区域可以为帧间区域1,另一个区域可以为帧间区域2。
示例性的,针对帧间区域1的每个像素位置,主要是基于帧间预测块1的帧间预测值确定,例如,将该像素位置的帧间预测块1的帧间预测值与该像素位置的帧间预测块2的帧间预测值进行加权时,帧间预测块1的帧间预测值的权重值较大,帧间预测块2的帧间预测值的权重值较小(甚至为0),得到该像素位置的联合预测值。针对帧间区域2的每个像素位置,主要是基于帧间预测块2的帧间预测值确定,例如,将该像素位置的帧间预测块1的帧间预测值与该像素位置的帧间预测块2的帧间预测值进行加权时,帧间预测块2的帧间预测值的权重值较大,帧间预测块1的帧间预测值的权重值较小(甚至为0),得到该像素位置的联合预测值。最终,可以将每个像素位置的联合预测值组成TPM预测块。
示例性的,TPM预测块的权重值设置与像素位置离分割线的距离有关,参见图2E所示,像素位置A,像素位置B和像素位置C位于分割线右下侧,像素位置D,像素位置E和像素位置F位于分割线左上侧。对于像素位置A,像素位置B和像素位置C来说,帧间区域2的权重值排序为B≥A≥C,帧间区域1的权重值排序为C≥A≥B。对于像素位置D,像素位置E和像素位置F来说,帧间区域1的权重值排序为D≥F≥E,帧间区域2的权重值排序为E≥F≥D。上述方式需要计算像素位置与分割线的距离,继而确定像素位置的权重值。
针对上述各种情况,为了实现加权预测,均需要确定当前块的每个像素位置的权重值,并基于每个像素位置的权重值对该像素位置进行加权预测。但是,相关技术中,并没有设置权重值的有效方式,无法设置合理的权重值,从而导致预测效果不佳,编码性能差等问题。
针对上述发现,本申请实施例中提出一种权重值的导出方式,通过为当前块设置参考权重值列表,从而根据参考权重值列表中的参考权重值,确定当前块的每个像素位置的目标权重值。上述方式提出一种设置权重值的有效方式,能够为每个像素位置设置比较合理的目标权重值,提高预测准确性,提高预测性能,提高编码性能,预测值更接近原始像素。
以下结合几个具体实施例,对本申请实施例中的编解码方法进行详细说明。
实施例1:参见图3所示,为本申请实施例中的编解码方法的流程示意图,该编解码方法可以应用于解码端或者编码端,该编解码方法可以包括以下步骤:
步骤301,在确定对当前块启动加权预测时,确定当前块的参考权重值列表。
示例性的,参考权重值列表可以包括多个参考权重值(也可以称为候选参考权重值),所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置。
步骤301中,解码端或者编码端需要确定是否对当前块启动加权预测。若启动加权预测,采用本申请实施例的编解码方法。若不启动加权预测,则不采用本申请实施例的编解码方法。
在一种可能的实施方式中,可以判断当前块的特征信息是否满足特定条件。如果是,则可以确定对当前块启动加权预测;如果否,则可以确定不对当前块启动加权预测。
该特征信息包括但不限于以下之一或者任意组合:当前块所在当前帧的帧类型,当前块的尺寸信息,开关控制信息。该开关控制信息可以包括但不限于:SPS(序列级)开关控制信息,或者,PPS(图像参数级)开关控制信息,或者,TILE(片级)开关控制信息。
例如,若该特征信息为当前块所在当前帧的帧类型,当前块所在当前帧的帧类型满足特定条件,可以包括但不限于:若当前块所在当前帧的帧类型为B帧,则确定帧类型满足特定条件。或者,若当前块所在当前帧的帧类型为I帧,则确定帧类型满足特定条件。
例如,若特征信息为当前块的尺寸信息,且尺寸信息包括当前块的宽度和当前块的高度,则当前块的尺寸信息满足特定条件,可以包括但不限于:若当前块的宽度大于或等于第一数值、当前块的高度大于或等于第二数值,确定当前块的尺寸信息满足特定条件。或,若当前块的宽度大于或等于第三数值、当前块的高度大于或等于第四数值、当前块的宽度小于或等于第五数值、当前块的高度小于或等于第六数值,确定当前块的尺寸信息满足特定条件。或,若当前块的宽度和高度的乘积大于或等于第七数值,确定当前块的尺寸信息满足特定条件。
示例性的,上述数值可以根据经验配置,如8、16、32、64、128等,对此不做限制。例如,第一数值可以为8,第二数值可以为8,第三数值可以为8,第四数值可以为8,第五数值可以为64,第六数值可以为64,第七数值可以为64。当然,上述只是示例,对此不做限制。综上所述,若当前块的宽度大于或等于8、当前块的高度大于或等于8,确定当前块的尺寸信息满足特定条件。或,若当前块的宽度大于或等于8、当前块的高度大于或等于8、当前块的宽度小于或等于64、当前块的高度小于或等于64,确定当前块的尺寸信息满足特定条件。或,若当前块的宽度和高度的乘积大于或等于64,确定当前块的尺寸信息满足特定条件。
例如,若特征信息为开关控制信息,则该开关控制信息满足特定条件,可以包括但不限于:若开关控制信息为允许当前块启用加权预测,则确定该开关控制信息满足特定条件。
例如,若该特征信息为当前块所在当前帧的帧类型,当前块的尺寸信息,则该帧类型满足特定条件,且该尺寸信息满足特定条件时,可以确定当前块的特征信息满足特定条件。若该特征信息为当前块所在当前帧的帧类型,开关控制信息,则该帧类型满足特定条件,且该开关控制信息满足特定条件时,可以确定当前块的特征信息满足特定条件。若该特征信息为当前块的尺寸信息、开关控制信息,则该尺寸信息满足特定条件,且该开关控制信息满足特定条件时,可以确定当前块的特征信息满足特定条件。若该特征信息为当前块所在当前帧的帧类型、当前块的尺寸信息、开关控制信息,则该帧类型满足特定条件,且尺寸信息满足特定条件,且开关控制信息满足特定条件时,可以确定当前块的特征信息满足特定条件。
在一种可能的实施方式中,编码端确定是否对当前块启动加权预测后,还可以向解码端发送是否启动加权预测的语法,该语法表示当前块是否启动加权预测,解码端根据该语法确定是否对当前块启动加权预测。示例性的,该语法用于表示当前块是否启动加权预测,该语法的语法元素采用基于上下文的自适应二进制算术编码或基于上下文的自适应二进制算术解码,该语法元素的编码仅采用一个上下文模型进行编码或者解码,在现有方案中会采用多个上下文模型(包括判断当前块的上边块/左边块是否启动了加权预测,当前块的尺寸是否超过一定阈值等)进行编码或者解码,本实施例可以简化上下文模型数目及概率更新的过程。
示例性的,该语法用于表示当前块是否启动加权预测,该语法的语法元素采用基于上下文的自适应二进制算术编码或基于上下文的自适应二进制算术解码,该语法元素的编码仅采用至多2个上下文模型进行编码或者解码,仅判断当前块的尺寸是否超过一定阈值,而现有方案会采用多个上下文模型(包括判断当前块的上边块/左边块是否启动加权预测,当前块的尺寸是否超过阈值)进行编码或者解码,本实施例可以简化上下文模型数目及概率更新的过程,简化编解码过程,不需要判断左边块和上边块是否采用了语法来判决上下文模型的选择。
在步骤301中,解码端或者编码端确定对当前块启动加权预测时,还可以确定当前块的参考权重值列表,所述参考权重值列表可以包括多个参考权重值。
在一种可能的实施方式中,当前块可以对应一个参考权重值列表,所有行共用该参考权重值列表,即,所有行均采用该参考权重值列表进行目标权重值的设置。
在另一种可能的实施方式中,当前块可以对应多个参考权重值列表,若干行共用一个参考权重值列表。以参考权重值列表A1和参考权重值列表A2为例,当然,参考权重值列表的数量可以更多。在此情况下,不同行对应的参考权重值列表可以相同,也可以不同。例如,第一行对应参考权重值列表A1,第二行对应参考权重值列表A2,第三行对应参考权重值列表A1,第四行对应参考权重值列表A2,以此类推。又例如,第一行对应参考权重值列表A2,第二行对应参考权重值列表A1,第三行对应参考权重值列表A2,第四行对应参考权重值列表A1,以此类推。又例如,第1行至a行对应参考权重值列表A1,第(a+1)行至b行对应参考权重值列表A2,b为当前块的总行数,a为b的一半。当然,上述只是几个示例,对此不做限制。
示例性的,当前块可以对应两个参考权重值列表,奇数行共用一个参考权重值列表,偶数行共用另一个参考权重值列表。例如,第1、3、5、7、2N+1行共用一个参考权重值列表。第2、4、6、8、2N行共用另一个参考权重值列表,其中N为正整数。当然,上述只是示例,对此不做限制。
示例性的,当存在多个参考权重值列表时,多个参考权重值列表的单调性一致,例如,都是单调递减或者都是单调递增,如第一个参考权重值列表为[8888...886420000...00],第二个参考权重值列表为[8888...875310000...00]。当然,上述只是示例,对此不做限制。
示例性的,当存在多个参考权重值列表时,编码端和解码端可以约定每行对应的参考权重值列表。或者,也可以由编码端决策每行对应的参考权重值列表,如采用率失真原则决策每行对应的参考权重值列表,并将决策结果通知给解码端,由解码端根据该决策结果确定每行对应的参考权重值列表。当然,上述方式只是两个示例,对此不做限制。
为了方便描述,后续以当前块的所有行共用同一个参考权重值列表为例。
示例性的,关于当前块对应的参考权重值列表,参考权重值列表中的参考权重值数量可以为设定的固定值,该固定值可以根据经验任意设置,对此不做限制。或者,参考权重值列表中的参考权重值数量可以与当前块的尺寸(如当前块的宽度)相关,如参考权重值数量可以为2*当前块的宽度,或4*当前块的宽度,或(3*当前块的宽度+1)等,对此不做限制,可以根据实际需要选择。
示例性的,参考权重值列表中的参考权重值,可以是预先配置的,或,根据权重配置参数配置的。权重配置参数可以包括权重变换率和权重变换的起始位置。权重变换的起始位置是由距离参数确定的;或者,权重变换的起始位置是由权重预测角度和距离参数确定的。
示例性的,针对参考权重值列表中的多个参考权重值,可以是非一致的参考权重值,比如说,参考权重值列表中的多个参考权重值,可以不完全相同。
示例性的,参考权重值可以是预先配置的,或者,参考权重值可以是根据权重配置参数配置的。参考权重值列表中的多个参考权重值,是单调递增或单调递减。例如,参考权重值的最大值为M1,参考权重值的最小值为M2,则针对参考权重值列表中的多个参考权重值,从最大值M1至最小值M2的单调递减;或者,从最小值M2至最大值M1的单调递增。
假设M1为8,M2为0,则参考权重值列表中的多个参考权重值是:从8至0的单调递减;或者,从0至8的单调递增。例如,假设参考权重值列表中存在32个参考权重值,则第1-16个参考权重值为8,第17个参考权重值为6,第18个参考权重值为4,第19个参考权重值为2,第20-32个参考权重值为0。或者,第1-16个参考权重值为0,第17个参考权重值为2,第18个参考权重值为4,第19个参考权重值为6,第20-32个参考权重值为8。
当然,上述只是一个举例,参考权重值列表中的多个参考权重值可以任意设置。
在一种可能的实施方式中,可以根据权重配置参数确定参考权重值列表中的参考权重值,而权重配置参数包括权重变换率和权重变换的起始位置,且权重变换的起始位置是由距离参数确定的;或者,权重变换的起始位置是由权重预测角度和距离参数确定的。
综上所述,可以获取当前块的距离参数,根据距离参数确定权重变换的起始位置,然后根据权重变换的起始位置和权重变换率确定权重配置参数,根据权重配置参数确定参考权重值列表中的参考权重值。或者,可以获取当前块的距离参数和权重预测角度,并根据距离参数和权重预测角度确定权重变换的起始位置,然后根据权重变换的起始位置和权重变换率确定权重配置参数,根据权重配置参数确定参考权重值列表中的参考权重值。
示例性的,权重预测角度表示当前块内部的像素位置所指向的角度方向,例如,参见图4A所示,基于某一种权重预测角度,示出了当前块内部的像素位置所指向的角度方向,这个角度方向指向了参考权重值列表中的某个参考权重值。显然,由于参考权重值的数量大于当前块的宽度,如当前块的宽为8(表示每行存在8个像素位置),则参考权重值的数量可以为16、32等,对此不做限制,因此,当前块内部的像素位置所指向的角度方向,可以指向参考权重值列表中的某个参考权重值。针对同一个像素位置,当权重预测角度不同时,像素位置所指向的参考权重值也不同,参见图4B所示,为另一种权重预测角度,当前块内部的像素位置所指向的角度方向,这个角度方向指向了参考权重值列表中的某个参考权重值。
权重预测角度可以是任意角度,如10度,20度,30度等等,对此不做限制。权重预测角度的分布可以是在180度内均匀或非均匀的分布,或者在360度内的均匀或非均匀分布,示例性的,权重预测角度可以采用帧内预测模式中的角度预测模式所对应的角度,当然,帧内预测模式的角度只是一个示例,权重预测角度还可以采用其它类型的角度,对此不做限制。
帧内预测模式可以包括65种角度模式,每种角度模式表示一种角度,如角度模式18表示水平方向的角度,角度模式50表示垂直方向的角度,权重预测角度可以是65种角度模式表示的任意角度。帧内预测中的2号角度模式和66号角度模式对应角度是一致的。
参见图4C所示,示出了帧内预测模式的8种角度模式,权重预测角度可以是帧内预测模式的8种角度模式表示的任意一种角度。参见图4D所示,示出了帧内预测模式的16种角度模式,权重预测角度可以是帧内预测模式的16种角度模式表示的任意一种角度。
示例性的,距离参数用于指示参考权重值列表中的哪些参考权重值作为当前块的目标区域。例如,可以根据权重预测角度确定参考权重值的范围,如当前块内部的所有像素位置指向的第一个参考权重值为第5个参考权重值,所有像素位置指向的最后一个参考权重值为第24个参考权重值,则参考权重值的范围为第5-24个参考权重值。然后,将这些参考权重值(第5-24个参考权重值)进行N等分,N的取值可以任意设置,如4、6、8等,以8为例进行说明。距离参数用于表示采用参考权重值列表中的哪些参考权重值作为当前块的目标区域。
参见图4E所示,在将这些参考权重值(第5-24个参考权重值)进行8等分后,可以得到7个距离参数。当距离参数为0时,表示虚线0指向的参考权重值作为当前块的目标区域。当距离参数为1时,表示虚线1指向的参考权重值作为当前块的目标区域。当距离参数为2时,表示虚线2指向的参考权重值作为当前块的目标区域。当距离参数为3时,表示虚线3指向的参考权重值作为当前块的目标区域。当距离参数为4时,表示虚线4指向的参考权重值作为当前块的目标区域。当距离参数为5时,表示虚线5指向的参考权重值作为当前块的目标区域。当距离参数为6时,表示虚线6指向的参考权重值作为当前块的目标区域。
针对不同的权重预测角度,N的取值可以不同,例如,针对权重预测角度A,N的取值为6,表示将基于权重预测角度A确定的所有参考权重值进行6等分,针对权重预测角度B,N的取值为8,表示将基于权重预测角度B确定的所有参考权重值进行8等分。
上述是以将基于权重预测角度确定的所有参考权重值进行N等分为例,实际应用中,还可以采用不均匀的划分方式,将所有参考权重值划分成N份,而不是N等分,对此不做限制。
在将所有参考权重值进行8等分后,可以得到7个距离参数,实际应用中,可以基于7个距离参数中的任一距离参数设置参考权重值,也可以先从7个距离参数中选择部分距离参数(如7个距离参数中的5个距离参数),并基于选择的5个距离参数设置参考权重值。
示例性的,解码端或者编码端采用如下方式获取当前块的权重预测角度和距离参数:
方式一、编码端和解码端约定相同的权重预测角度作为当前块的权重预测角度,如编码端和解码端均将权重预测角度A作为当前块的权重预测角度。编码端和解码端约定相同的距离参数作为当前块的距离参数,如编码端和解码端均将距离参数4作为当前块的距离参数。
方式二、编码端可以构建权重预测角度列表,该权重预测角度列表可以包括至少一个权重预测角度,如权重预测角度A和权重预测角度B。编码端可以构建距离参数列表,该距离参数列表可以包括至少一个距离参数,如距离参数0-距离参数6。编码端遍历权重预测角度列表中的每个权重预测角度,并遍历距离参数列表中的每个距离参数,将遍历到的权重预测角度作为当前块的权重预测角度,将遍历到的距离参数作为当前块的距离参数。
例如,编码端遍历到权重预测角度A和距离参数0时,将遍历到的权重预测角度A作为当前块的权重预测角度,将遍历到的距离参数0作为当前块的距离参数,基于权重预测角度A和距离参数0执行相关步骤,得到当前块的加权预测值。编码端遍历到权重预测角度A和距离参数1时,将遍历到的权重预测角度A作为当前块的权重预测角度,将遍历到的距离参数1作为当前块的距离参数,基于权重预测角度A和距离参数1执行相关步骤,得到当前块的加权预测值,以此类推。编码端遍历到权重预测角度B和距离参数0时,将遍历到的权重预测角度B作为当前块的权重预测角度,将遍历到的距离参数0作为当前块的距离参数,基于权重预测角度B和距离参数0执行相关步骤,得到当前块的加权预测值,以此类推。
编码端基于权重预测角度A和距离参数0得到当前块的加权预测值后,根据该加权预测值确定率失真代价值,对此确定方式不做限制。基于权重预测角度A和距离参数1得到当前块的加权预测值后,根据该加权预测值确定率失真代价值,以此类推。基于权重预测角度B和距离参数0得到当前块的加权预测值后,根据该加权预测值确定率失真代价值,以此类推。然后,从所有率失真代价值中选择最小率失真代价值,将最小率失真代价值对应的权重预测角度作为目标权重预测角度,将最小率失真代价值对应的距离参数作为目标距离参数。
编码端在向解码端发送编码比特流时,该编码比特流可以包括目标权重预测角度在权重预测角度列表中的第一索引值,该第一索引值表示目标权重预测角度是权重预测角度列表中的第几个权重预测角度。该编码比特流还可以包括目标距离参数在距离参数列表中的第二索引值,该第二索引值表示目标距离参数是距离参数列表中的第几个距离参数。
解码端可以构建权重预测角度列表,该权重预测角度列表可以包括至少一个权重预测角度,如权重预测角度A和权重预测角度B,解码端的权重预测角度列表与编码端的权重预测角度列表相同。解码端可以构建距离参数列表,该距离参数列表可以包括至少一个距离参数,如距离参数0-距离参数6,解码端的距离参数列表与编码端的距离参数列表相同。
解码端接收到编码比特流后,从编码比特流中解析出第一索引值,并从权重预测角度列表中选择与该第一索引值对应的权重预测角度,该权重预测角度作为目标权重预测角度,即解码端得到的当前块的权重预测角度,后续以权重预测角度A为例进行说明。从编码比特流中解析出第二索引值,并从距离参数列表中选择与该第二索引值对应的距离参数,该距离参数作为目标距离参数,即解码端得到的当前块的距离参数,后续以距离参数4为例进行说明。
解码端得到当前块的权重预测角度A和距离参数4后,基于权重预测角度A和距离参数4执行相关步骤,得到当前块的加权预测值,具体方式参见后续实施例,在此不再赘述。
在一种可能的实施方式中,针对GEO模式来说,可以通过角度参数和跨度参数确定权重值,参见图4F所示,角度参数表示划分的角度方向,跨度参数表示分割线离当前块中心的距离,通过两者得到唯一的分割线。权重值设置与像素位置离分割线的距离有关,参见图2E所示,对于像素位置A,像素位置B和像素位置C来说,帧间区域2的权重值排序为B≥A≥C,帧间区域1的权重值排序为C≥A≥B。对于像素位置D,像素位置E和像素位置F来说,帧间区域1的权重值排序为D≥F≥E,帧间区域2的权重值排序为E≥F≥D。
与上述方式不同的是,本申请实施例中,可以获取当前块的权重预测角度和距离参数,并根据距离参数和权重预测角度确定权重变换的起始位置,根据权重变换的起始位置和权重变换率确定权重配置参数,根据权重配置参数确定参考权重值列表中的参考权重值。或者,可以根据距离参数确定权重变换的起始位置,根据权重变换的起始位置和权重变换率确定权重配置参数,根据权重配置参数确定参考权重值列表中的参考权重值。
在一种可能的实施方式中,可以配置一个函数关系,该函数关系可以包括:参考权重值与权重变换率、参考权重值的索引值(用于表示是所有参考权重值的第几个)、权重变换的起始位置之间的函数关系,而权重变换率和权重变换的起始位置可以统称为权重配置参数。
例如,函数关系的示例可以为y=a*(x-s),y表示参考权重值,a表示权重变换率,x表示参考权重值的索引值,s表示权重变换的起始位置,权重变换的终止位置可以由a与s唯一确定,且限制参考权重值位于最小值与最大值之间,最小值和最大值均可以根据经验配置,对此不做限制,例如,最小值为0,最大值为8。若a为2,则参考权重值从0到8需要经过0,2,4,6,8五个数,若0对应权重变换的起止位置,那么权重变换的终止位置即为权重变换的起始位置+4,即8对应的位置。当然,上述只是函数关系的一个示例,对此函数关系不做限制,只要基于权重配置参数能够确定参考权重值即可。为了使参考权重值位于最小值与最大值之间,函数关系的一个示例可以为Clip3(最小值,最大值,a*(x-s))。Clip3表示当a*(x-s)小于最小值时,参考权重值是最小值,当a*(x-s)大于最大值时,参考权重值是最大值。
a表示权重变换率,a可以根据经验进行配置,对此不做限制,如a可以是不为0的整数,如a可以是-4、-3、-2、-1、1、2、3、4等,为了方便描述,以a为2为例进行说明。
示例性的,当a为正整数时,a可以与参考权重值的数量正相关,即参考权重值的数量越多时,a的取值越大。当负为正整数时,a可以与参考权重值的数量负相关,即参考权重值的数量越多时,a的取值越小。当然,上述只是a的取值的示例,对此不做限制。
s表示权重变换的起始位置,s可以是由距离参数确定的,例如,s=f(距离参数),即s是与距离参数有关的函数。例如,在参考权重值的范围确定后,将确定的范围进行N等分,N的取值可以任意设置,如4、6、8等,而距离参数用于表示采用哪个参考权重值作为目标区域,这个距离参数对应的目标区域就是权重变换的起始位置。例如,一共存在80个参考权重值,距离参数用于表示采用第10个参考权重值作为目标区域,则权重变换的起始位置s为10。或者,s表示权重变换的起始位置,s可以是由权重预测角度和距离参数确定的,例如,s=f(权重预测角度,距离参数),即s是与权重预测角度和距离参数有关的函数。例如,可以根据权重预测角度确定参考权重值的范围,即根据权重预测角度确定当前块内部的像素位置指向的参考权重值,所有像素位置指向的参考权重值就组成参考权重值的范围。在参考权重值的范围确定后,可以将确定的范围进行N等分,N的取值可以任意设置,距离参数用于表示采用哪个参考权重值作为目标区域,而这个距离参数对应的目标区域就是权重变换的起始位置。
综上所述,在函数关系y=a*(x-s)中,权重变换率a和权重变换的起始位置s均为已知值,因此,函数关系用于指示参考权重值的索引值x与参考权重值y之间的关系,可以通过该函数关系设置每个参考权重值。例如,假设权重变换率a为2,权重变换的起始位置s为2,则该函数关系为y=2*(x-2),针对每个索引值x,可以得到参考权重值y。
示例性的,需要设置的x的范围与权重预测角度相关或直接固定等。
例如,假设设置20个参考权重值,第一个参考权重值的索引值x为0,第二个参考权重值的索引值x为1,以此类推,基于函数关系y=2*(x-2),将索引值0代入该函数关系,得到y为-4,由于-4小于最小值0,因此,将第一个参考权重值设置为0,以此类推。假设设置20个参考权重值,第一个参考权重值的索引值x为-3,第二个参考权重值的索引值x为-2,以此类推,基于函数关系y=2*(x-2),将索引值-3代入该函数关系,得到y为-10,由于-10小于最小值0,因此,将第一个参考权重值设置为0,以此类推。
显然,基于上述函数关系y=2*(x-2),能够实现参考权重值从0至8的单调递增。
又例如,假设设置20个参考权重值,第一个参考权重值的索引值x为19,第二个参考权重值的索引值x为18,以此类推,基于函数关系y=2*(x-2),将索引值19代入该函数关系,得到y为34,由于34大于最大值8,因此,将第一个参考权重值设置为8,以此类推。假设设置20个参考权重值,第一个参考权重值的索引值x为12,第二个参考权重值的索引值x为11,以此类推,基于函数关系y=2*(x-2),将索引值12代入该函数关系,得到y为20,由于20大于最大值8,因此,将第一个参考权重值设置为8,以此类推。
显然,基于上述函数关系y=2*(x-2),能够实现参考权重值从8至0的单调递减。
综上所述,只要将参考权重值的索引值x代入函数关系,就可以得到该参考权重值。对于每个参考权重值的索引值x来说,可以按照这些参考权重值的顺序,为这些参考权重值设置索引值,对此设置方式不做限制,只要索引值依次增加或者依次减少即可。
在一种可能的实施方式中,参考权重值列表可以包括目标区域的参考权重值,该目标区域的第一邻近区域的参考权重值,该目标区域的第二邻近区域的参考权重值。
目标区域包括基于权重变换的起始位置确定的一个或者多个参考权重值。例如,基于权重变换的起始位置,确定一个参考权重值,将这个参考权重值作为目标区域,比如说,权重变换的起始位置s是第10个参考权重值,则可以将第10个参考权重值作为目标区域,或者,将第9个参考权重值作为目标区域,或者,将第11个参考权重值作为目标区域,当然,上述只是几个示例,对此不做限制。又例如,基于权重变换的起始位置,确定多个参考权重值,将这多个参考权重值作为目标区域,比如说,权重变换的起始位置s是第10个参考权重值,则将第9-11个参考权重值作为目标区域,或者,将第8-12个参考权重值作为目标区域,或者,将第10-12个参考权重值作为目标区域,当然,上述只是几个示例,对此不做限制。
第一邻近区域的参考权重值均为第一参考权重值,第二邻近区域的参考权重值是单调递增或单调递减。或者,第一邻近区域的参考权重值均为第二参考权重值,第二邻近区域的参考权重值均为第三参考权重值,第二参考权重值与第三参考权重值不同。或者,第一邻近区域的参考权重值是单调递增或单调递减,第二邻近区域的参考权重值是单调递增或单调递减;例如,第一邻近区域的参考权重值是单调递增,第二邻近区域的参考权重值也是单调递增;又例如,第一邻近区域的参考权重值是单调递减,第二邻近区域的参考权重值也是单调递减。
示例性的,目标区域可以包括一个参考权重值;或者,目标区域可以包括多个参考权重值。若目标区域包括多个参考权重值,则目标区域的多个参考权重值是单调递增或单调递减。所述单调递增可以是严格单调递增(即目标区域的多个参考权重值是严格单调递增);所述单调递减可以是严格单调递减(即目标区域的多个参考权重值是严格单调递减)。
例如,参见图5A所示,假设需要设置20个参考权重值,这些参考权重值是从8至0的单调递减,目标区域包括第12-14个参考权重值,第一邻近区域包括第1-11个参考权重值,第二邻近区域包括第15-20个参考权重值,则第一邻近区域的所有参考权重值均为8,第二邻近区域的所有参考权重值均为0,第一邻近区域的参考权重值8与第二邻近区域的参考权重值0不同。针对目标区域的参考权重值,第12个参考权重值为6,第13个参考权重值为4,第14个参考权重值为2,是单调递减的,比如说,目标区域的参考权重值是严格单调递减。
又例如,参见图5A所示,目标区域包括第12个参考权重值,第一邻近区域包括第1-11个参考权重值,第二邻近区域包括第13-20个参考权重值,则第一邻近区域的所有参考权重值均为8,第二邻近区域的所有参考权重值,是从4到0的单调递减(非严格单调递减)。
又例如,参见图5A所示,目标区域包括第13个参考权重值,第一邻近区域包括第1-12个参考权重值,第二邻近区域包括第14-20个参考权重值,则第一邻近区域的所有参考权重值,是从8到6的单调递减(非严格单调递减)。第二邻近区域的所有参考权重值,是从2到0的单调递减(非严格单调递减)。
又例如,参见图5A所示,目标区域包括第14个参考权重值,第一邻近区域包括第1-13个参考权重值,第二邻近区域包括第15-20个参考权重值,则第一邻近区域的所有参考权重值,是从8到4的单调递减(非严格单调递减)。第二邻近区域的所有参考权重值均是0。
例如,参见图5B所示,假设需要设置20个参考权重值,这些参考权重值是从0至8的单调递增,目标区域包括第12-14个参考权重值,第一邻近区域包括第1-11个参考权重值,第二邻近区域包括第15-20个参考权重值,则第一邻近区域的所有参考权重值均为0,第二邻近区域的所有参考权重值均为8,第一邻近区域的参考权重值0与第二邻近区域的参考权重值8不同。针对目标区域的参考权重值,第12个参考权重值为2,第13个参考权重值为4,第14个参考权重值为6,是单调递增的,比如说,目标区域的参考权重值是严格单调递增。
又例如,参见图5B所示,目标区域包括第12个参考权重值,或目标区域包括第13个参考权重值,或目标区域包括第14个参考权重值时,实现参见上述实施例,在此不再赘述。
在一种可能的实施方式中,可以配置一个函数关系,该函数关系可以包括:参考权重值与权重变换率、参考权重值的索引值(用于表示是所有参考权重值的第几个)、权重变换的起始位置之间的函数关系,而权重变换率和权重变换的起始位置可以统称为权重配置参数。
例如,函数关系的示例可以为:当x位于[0,k]时,y=Clip3(最小值,最大值,a1*(x-s1))。当x位于[k+1,t]时,y=Clip3(最小值,最大值,a2*(x-s2))。y表示参考权重值,a1和a2表示权重变换率,x表示参考权重值的索引值,s1表示范围[0,k]中的权重变换的起始位置,s2表示范围[k+1,t]中的权重变换的起始位置,t表示参考权重值的总数量。
上述方式能够限制参考权重值位于最小值与最大值之间,Clip3表示当a1*(x-s1)小于最小值时,参考权重值是最小值,当a1*(x-s1)大于最大值时,参考权重值是最大值。当a2*(x-s2)小于最小值时,参考权重值是最小值,当a2*(x-s2)大于最大值时,参考权重值是最大值。最小值和最大值均可以根据经验配置,对此不做限制,例如,最小值可以为0,最大值可以为8。当然,上述只是函数关系的一个示例,对此函数关系不做限制。
a1和a2均表示权重变换率,权重变换率可以根据经验进行配置,对此不做限制,如权重变换率可以是不为0的整数,如-4、-3、-2、-1、1、2、3、4等。示例性的,当a1为正整数时,a2可以为负整数,当a1为负整数时,a2可以为正整数。例如,a1可以为-a2,即两者的变化率是一致的,反映到参考权重值的设置上,就是参考权重值的渐变宽度一致。
s1表示范围[0,k]的权重变换的起始位置,s1可以是由距离参数确定,例如,s1=f(距离参数),即s1是一个与距离参数有关的函数。例如,在参考权重值的范围确定后,从这些参考权重值中确定范围[0,k],k是一个根据经验配置的数值,表示第0个至第k个参考权重值。将范围[0,k]的所有参考权重值进行N等分,N的取值可以任意设置,如4、6、8等,而距离参数用于表示范围[0,k]中的哪个参考权重值作为目标区域,而这个距离参数对应的目标区域就是权重变换的起始位置s1。或者,s1可以是由权重预测角度和距离参数确定的,例如,s1=f(权重预测角度,距离参数),即s1是一个与权重预测角度和距离参数有关的函数。例如,可以根据权重预测角度确定参考权重值的范围,在参考权重值的范围确定后,从这些参考权重值中确定范围[0,k],将范围[0,k]的所有参考权重值进行N等分,距离参数用于表示范围[0,k]中的哪个参考权重值作为当前块的目标区域,从而权重变换的起始位置s1。
s2表示范围[k+1,t]的权重变换的起始位置,s2可以是由距离参数确定,或者由权重预测角度和距离参数确定,s2的实现参见s1,只是范围发生变化,即范围为[k+1,t]。
显然,假设距离参数为3,针对所有参考权重值的范围[0,k],可以将范围[0,k]进行N等分,基于范围[0,k]中与距离参数3对应的参考权重值确定权重变换的起始位置s1,将范围[k+1,t]进行N等分,基于范围[k+1,t]中与距离参数3对应的参考权重值确定权重变换的起始位置s2。当然,上述只是确定权重变换的起始位置s1和s2的示例,对此不做限制。
综上所述,在上述函数关系中,权重变换率a1和a2,权重变换的起始位置s1和s2均为已知值,因此,函数关系用于指示x与参考权重值y之间的关系。针对每个x,若该x位于[0,k]时,则通过函数关系y=Clip3(最小值,最大值,a1*(x-s1))确定参考权重值。若x位于[k+1,t]时,则通过函数关系y=Clip3(最小值,最大值,a2*(x-s2))确定参考权重值。针对每个x,可以得到参考权重值y。其中,需要设置的x的范围与权重预测角度相关或直接固定等。
在一种可能的实施方式中,参考权重值列表包括第一目标区域的参考权重值,第二目标区域的参考权重值,只与第一目标区域相邻的第一邻近区域的参考权重值,与第一目标区域和第二目标区域均相邻的第二邻近区域的参考权重值,只与第二目标区域相邻的第三邻近区域的参考权重值。示例性的,第一目标区域可以是基于权重变换的起始位置s1确定的一个或者多个参考权重值,例如,基于权重变换的起始位置s1,可以确定一个参考权重值,将这个参考权重值作为第一目标区域。又例如,基于权重变换的起始位置s1,可以确定多个参考权重值,将这多个参考权重值作为第一目标区域。第二目标区域可以是基于权重变换的起始位置s2确定的一个或者多个参考权重值,例如,基于权重变换的起始位置s2,可以确定一个参考权重值,将这个参考权重值作为第二目标区域。又例如,基于权重变换的起始位置s2,可以确定多个参考权重值,将这多个参考权重值作为第二目标区域。
示例性的,第一邻近区域的参考权重值均为第一参考权重值;第二邻近区域的参考权重值均为第二参考权重值;第三邻近区域的参考权重值均为第三参考权重值。
该第一参考权重值与该第三参考权重值可以相同,该第一参考权重值与该第二参考权重值可以不同,该第三参考权重值与该第二参考权重值可以不同。
示例性的,若第一目标区域包括多个参考权重值,则第一目标区域的多个参考权重值可以是单调递增或单调递减;若第二目标区域包括多个参考权重值,则第二目标区域的多个参考权重值可以是单调递增或单调递减。例如,第一目标区域的多个参考权重值是单调递增,且第二目标区域的多个参考权重值可以是单调递减;或者,第一目标区域的多个参考权重值是单调递减,且第二目标区域的多个参考权重值可以是单调递增。
示例性的,第一目标区域的多个参考权重值的单调递增,是严格单调递增;第一目标区域的多个参考权重值的单调递减,是严格单调递减。第二目标区域的多个参考权重值的单调递增,是严格单调递增;第二目标区域的多个参考权重值的单调递减,是严格单调递减。
例如,参见图5C所示,假设需要设置20个参考权重值,且这些参考权重值是从8至0的单调递减,在单调递减到0后,又从0至8单调递增,第一目标区域包括第6-8个参考权重值,第二目标区域包括第12-14个参考权重值,第一邻近区域包括第1-5个参考权重值,第二邻近区域包括第9-11个参考权重值,第三邻近区域包括第15-20个参考权重值。
第一邻近区域的所有参考权重值均为8,第二邻近区域的所有参考权重值均为0,第三邻近区域的所有参考权重值均为8。显然,第一邻近区域的参考权重值8与第三邻近区域的参考权重值8相同,第一邻近区域的参考权重值8与第二邻近区域的参考权重值0不同。
针对第一目标区域的参考权重值,第6个参考权重值为6,第7个参考权重值为4,第8个参考权重值为2,是单调递减的,比如说,第一目标区域的参考权重值是严格单调递减。
针对第二目标区域的参考权重值,第12个参考权重值为2,第13个参考权重值为4,第14个参考权重值为6,是单调递增的,比如说,第二目标区域的参考权重值是严格单调递增。
又例如,参见图5C所示,假设第一目标区域包括第6个参考权重值,第二目标区域包括第12个参考权重值,则第一邻近区域包括第1-5个参考权重值,第二邻近区域包括第7-11个参考权重值,第三邻近区域包括第13-20个参考权重值。第一邻近区域的所有参考权重值均为8,第二邻近区域的所有参考权重值,是从4到0的单调递减(即非严格单调递减),第三邻近区域的所有参考权重值,是从4到8的单调递增(即非严格单调递增)。
又例如,参见图5C所示,假设第一目标区域包括第7个参考权重值,第二目标区域包括第13个参考权重值,则第一邻近区域包括第1-6个参考权重值,第二邻近区域包括第8-12个参考权重值,第三邻近区域包括第14-20个参考权重值。第一邻近区域的所有参考权重值,是从8到6的单调递减(即非严格单调递减)。第二邻近区域的所有参考权重值,是从2到0在到2。第三邻近区域的所有参考权重值,是从6到8的单调递增(即非严格单调递增)。
又例如,参见图5C所示,假设第一目标区域包括第8个参考权重值,第二目标区域包括第14个参考权重值,则第一邻近区域包括第1-7个参考权重值,第二邻近区域包括第9-13个参考权重值,第三邻近区域包括第15-20个参考权重值。第一邻近区域的所有参考权重值,是从8到4的单调递减(即非严格单调递减)。第二邻近区域的所有参考权重值,是从0到2的单调递增(即非严格单调递增)。第三邻近区域的所有参考权重值,均是8。
例如,参见图5D所示,假设需要设置20个参考权重值,且这些参考权重值是从0至8的单调递增,在单调递增到8后,又从8至0单调递减,第一目标区域包括第6-8个参考权重值,第二目标区域包括第12-14个参考权重值,第一邻近区域包括第1-5个参考权重值,第二邻近区域包括第9-11个参考权重值,第三邻近区域包括第15-20个参考权重值。
第一邻近区域的所有参考权重值均为0,第二邻近区域的所有参考权重值均为8,第三邻近区域的所有参考权重值均为0。显然,第一邻近区域的参考权重值0与第三邻近区域的参考权重值0相同,第一邻近区域的参考权重值0与第二邻近区域的参考权重值8不同。
针对第一目标区域的参考权重值,第6个参考权重值为2,第7个参考权重值为4,第8个参考权重值为6,是单调递增的,比如说,第一目标区域的参考权重值是严格单调递增。
针对第二目标区域的参考权重值,第12个参考权重值为6,第13个参考权重值为4,第14个参考权重值为2,是单调递减的,比如说,第二目标区域的参考权重值是严格单调递减。
又例如,参见图5D所示,第一目标区域包括第6个参考权重值,第二目标区域包括第12个参考权重值,或,第一目标区域包括第7个参考权重值,第二目标区域包括第13个参考权重值,或,第一目标区域包括第8个参考权重值,第二目标区域包括第14个参考权重值时,实现参见上述实施例,其参考权重值的设置可以参见图5D所示,在此不再赘述。
步骤302,根据参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定行的第一像素位置,获取第一像素位置的参考权重索引信息;将按照第一像素位置的参考权重索引信息,从参考权重值列表中确定的参考权重值作为第一像素位置的目标权重值;示例性的,第一指定行是当前块内的任意一行;
根据第一像素位置的参考权重索引信息,以及第一像素位置和第二像素位置的位置关系,确定第二像素位置的参考权重索引信息;将按照第二像素位置的参考权重索引信息,从参考权重值列表中确定的参考权重值作为第二像素位置的目标权重值;示例性的,第二像素位置是第一指定行中除第一像素位置之外的任意一个像素位置。
在一种可能的实施方式中,针对当前块内第一指定行的第一像素位置,获取第一像素位置的参考权重索引信息,可以包括但不限于:根据第一像素位置的位置信息和当前块的权重预测角度,确定第一像素位置的参考权重索引信息。
示例性的,第一像素位置的位置信息可以包括:第一像素位置所在行的行数。
示例性的,根据第一像素位置的参考权重索引信息,以及第一像素位置和第二像素位置的位置关系,确定第二像素位置的参考权重索引信息,可以包括但不限于:根据第一像素位置和第二像素位置的位置关系,确定参考权重索引信息的偏移值;根据第一像素位置的参考权重索引信息和该偏移值,确定第二像素位置的参考权重索引信息。
示例性的,根据第一像素位置和第二像素位置的位置关系,确定参考权重索引信息的偏移值,可以包括但不限于:可以根据第一像素位置和第二像素位置的位置关系,确定第一像素位置和第二像素位置的间隔,并根据该间隔和固定系数的乘积确定偏移值。
在另一种可能的实施方式中,对于任意两个相邻像素位置,则:根据其中一个像素位置的参考权重索引信息,以及两个相邻像素之间的相对位置,确定另一像素位置的参考权重索引信息。示例性的,根据其中一个像素位置的参考权重索引信息,以及两个相邻像素之间的相对位置,确定另一像素位置的参考权重索引信息,可以包括但不限于:根据两个相邻像素之间的相对位置,确定偏移值的正负号,偏移值为固定整数;然后,根据所述偏移值和所述其中一个像素位置的参考权重索引信息,确定另一像素位置的参考权重索引信息。
在上述实施例中,第一像素位置可以是第一指定行的起始像素位置。当然,第一像素位置也可以是第一指定行的其它像素位置,如第2、3、4个像素位置等,对此不做限制。
以下结合几个具体应用场景,对上述技术方案进行说明。
应用场景1:参见图6A所示,以第一指定行是当前块的第5行,第一像素位置是起始像素位置(即第1个像素位置)为例。针对当前块的其它行,实现方式类似。
针对当前块内第一指定行(第5行)的第一像素位置(第1个像素位置),获取第一像素位置的参考权重索引信息(表示参考权重值列表中的第几个参考权重值)。在一种可能的实施方式中,可以采用如下方式确定第一像素位置的参考权重索引信息:L=aM+b,L表示第一像素位置的参考权重索引信息,M表示第一像素位置所在行的行数,a和b是根据权重预测角度确定的参数值,在权重预测角度确定后,就可以确定出参数值a和参数值b。
当然,上述方式只是确定参考权重索引信息的一个示例,对此不做限制,可以根据第一像素位置的位置信息和当前块的权重预测角度,确定第一像素位置的参考权重索引信息。
参见图6B所示,为参数值a和参数值b的示意图,假设当前块的权重预测角度为A,则每行的第1个像素位置对应的参考权重索引信息可以为:针对第3行的第1个像素位置,则参考权重索引信息可以为tanA*(Q+2);针对第5行的第1个像素位置,则参考权重索引信息可以为tanA*(Q+4);针对第7行的第1个像素位置,则参考权重索引信息可以为tanA*(Q+6);针对第M行的第1个像素位置,则参考权重索引信息可以为tanA*(Q+M-1)。
在上述例子中,Q为辅助调整索引值的固定参数,一种可行的方案下Q可以为当前块与参考权重值列表的间隔,可以任意设置,如1.5、1、-4.5、3等。
综上所述,参考权重索引信息L为tanA*M+tanA*(Q-1),比如说,a为tanA,b为tanA*(Q-1),显然,在权重预测角度A确定后,可以确定出参数值a和参数值b,继而根据参数值a,参数值b,行数M确定第一像素位置的参考权重索引信息L。
参见图6C所示,为参数值a和参数值b的另一个示意图,假设当前块的权重预测角度为A,则每行的第1个像素位置对应的参考权重索引信息为:针对第3行的第1个像素位置,则参考权重索引信息为tanA*(Q+2)-J;针对第5行的第1个像素位置,则参考权重索引信息为tanA*(Q+4)-J;针对第7行的第1个像素位置,则参考权重索引信息为tanA*(Q+6)-J;针对第M行的第1个像素位置,则参考权重索引信息为tanA*(Q+M-1)-J。
在上述例子中,Q为当前块与参考权重值列表的间隔,可以任意设置,如1、2、3等。J为当前块的第一个像素位置与参考权重值列表的第一个位置的间隔,为一个已知值。
综上所述,参考权重索引信息L为tanA*M+[tanA*(Q-1)-J],比如说,a为tanA,b为tanA*(Q-1)-J。显然,在权重预测角度A确定后,可以确定出参数值a和参数值b,继而根据参数值a,参数值b,行数M确定第一像素位置的参考权重索引信息L。
当然,上述只是确定参数值a和参数值b的两个示例,对此不做限制。例如,可以在编码端和解码端直接约定参数值a和参数值b的取值;或者,可以采用其它方式。
综上所述,在第一指定行是当前块的第5行,第一像素位置是起始像素位置时,则第一像素位置的参考权重索引信息为a*5-b,参数值a和参数值b是已知值,因此,可以确定出第一像素位置的参考权重索引信息,如参考权重索引信息为6,则表示参考权重值列表的第6个参考权重值。将参考权重值列表的第6个参考权重值作为第一像素位置的目标权重值。
示例性的,当第一像素位置的参考权重索引信息较小(如0.6等),超出参考权重值列表的范围时,可以对参考权重索引信息进行扩大处理,如0.6扩大10倍,即参考权重索引信息为6,当第一像素位置的参考权重索引信息比较大(如60等),超出参考权重值列表的范围时,可以对参考权重索引信息进行缩写处理,如60缩小10倍,即参考权重索引信息为6。
示例性的,第一像素位置的参考权重索引信息可能出于运算精度的考虑在计算时被扩大,则需要在最终索引参考权重值时被相应缩小。在进行缩小操作时需要进行四舍五入。
示例性的,可以根据第一像素位置的参考权重索引信息,第一像素位置和第二像素位置的位置关系,确定第二像素位置的参考权重索引信息。例如,根据第一像素位置和第二像素位置的位置关系,确定参考权重索引信息的偏移值;根据第一像素位置的参考权重索引信息和该偏移值,确定第二像素位置的参考权重索引信息。
示例性的,可以根据第一像素位置和第二像素位置的位置关系,确定第一像素位置和第二像素位置的间隔,并根据该间隔和固定系数的乘积确定偏移值。
例如,假设固定系数为K,K为大于或者等于1的正整数,如K为1、2、3、4,对此不做限制,后续以2为例进行说明。第1个像素位置的参考权重索引信息为6,针对第2个像素位置,第2个像素位置与第1个像素位置的间隔为1,因此,偏移值为1*2=2,即参考权重索引信息的偏移值为2,第2个像素位置的参考权重索引信息为8(即6+2)。然后,可以将参考权重值列表的第8个参考权重值作为第2个像素位置的目标权重值。
针对第3个像素位置,第3个像素位置与第1个像素位置的间隔为2,偏移值为2*2=4,即参考权重索引信息的偏移值为4,第3个像素位置的参考权重索引信息为10(即6+4)。然后,可以将参考权重值列表的第10个参考权重值作为第3个像素位置的目标权重值。
针对第4个像素位置,第4个像素位置与第1个像素位置的间隔为3,偏移值为3*2=6,即参考权重索引信息的偏移值为6,第3个像素位置的参考权重索引信息为12(即6+6)。然后,可以将参考权重值列表的第12个参考权重值作为第4个像素位置的目标权重值。
以此类推,对于其它像素位置,实现过程参见上述像素位置,在此不再重复赘述。
综上所述,能够得到第5行的每个像素位置的参考权重索引信息,针对其它行的参考权重索引信息,与第5行的每个像素位置的实现方式类似,在此不再重复赘述。
应用场景2:参见图6D所示,以第一指定行是当前块的第5行,第一像素位置是非起始像素位置(如第4个像素位置)为例。针对当前块的其它行,实现方式类似。
针对当前块内第一指定行(第5行)的第一像素位置(第4个像素位置),获取第一像素位置的参考权重索引信息(表示参考权重值列表中的第几个参考权重值),例如,可以采用如下方式确定第一像素位置的参考权重索引信息:L=aM+b,L表示第一像素位置的参考权重索引信息,M表示第一像素位置所在行的行数,a和b是根据权重预测角度确定的参数值,在权重预测角度确定后,就可以确定出参数值a和参数值b,具体方式参见应用场景1。
假设第一像素位置的参考权重索引信息为12,则表示参考权重值列表的第12个参考权重值,将参考权重值列表的第12个参考权重值作为第一像素位置的目标权重值。
例如,假设固定系数为K,K为大于或者等于1的正整数,如K为1、2、3、4,对此不做限制,后续以2为例进行说明。针对位于第4个像素位置右侧的像素位置,偏移值的正负号为正,针对位于第4个像素位置左侧的像素位置,偏移值的正负号为负。
针对第5个像素位置,第5个像素位置与第4个像素位置的间隔为1,偏移值为1*2=2,即参考权重索引信息的偏移值为2,第5个像素位置的参考权重索引信息为14(即12+2)。然后,可以将参考权重值列表的第14个参考权重值作为第5个像素位置的目标权重值。
针对第6个像素位置,第6个像素位置与第4个像素位置的间隔为2,偏移值为2*2=4,即参考权重索引信息的偏移值为4,第6个像素位置的参考权重索引信息为16(即12+4)。然后,可以将参考权重值列表的第16个参考权重值作为第6个像素位置的目标权重值。
针对第3个像素位置,第3个像素位置与第4个像素位置的间隔为1,偏移值为1*2=2,即参考权重索引信息的偏移值为2,第3个像素位置的参考权重索引信息为10(即12-2)。然后,可以将参考权重值列表的第10个参考权重值作为第3个像素位置的目标权重值。
针对第2个像素位置,第2个像素位置与第4个像素位置的间隔为2,偏移值为2*2=4,即参考权重索引信息的偏移值为4,第2个像素位置的参考权重索引信息为8(即12-4)。然后,可以将参考权重值列表的第8个参考权重值作为第2个像素位置的目标权重值。
以此类推,对于其它像素位置,实现过程参见上述像素位置,在此不再重复赘述。
示例性的,参见图6E所示,假设当前块的权重预测角度为A,则第一像素位置(假设为第3行的第3个像素位置)对应的参考权重索引信息可以为:L=tanA*(Q+2)+J。在此基础上,针对第3行的第6个像素位置,参考权重索引信息可以为第3个像素位置的参考权重索引信息L+固定系数*间隔,即L+2*3。针对第3行的第N个像素位置,参考权重索引信息可以为第3个像素位置的参考权重索引信息L+固定系数*间隔,即L+2*(N-3)。
应用场景3:参见图6A所示,以第一指定行是当前块的第5行,第一像素位置是起始像素位置(即第1个像素位置)为例。针对当前块的其它行,实现方式类似。
针对当前块内第一指定行(第5行)的第一像素位置(第1个像素位置),获取第一像素位置的参考权重索引信息(表示参考权重值列表中的第几个参考权重值)。例如,可以采用如下方式确定第一像素位置的参考权重索引信息:L=aM+b,L表示第一像素位置的参考权重索引信息,M表示第一像素位置所在行的行数,a和b是根据权重预测角度确定的参数值,在权重预测角度确定后,就可以确定出参数值a和参数值b,具体方式参见应用场景1。
示例性的,对于任意两个相邻像素位置,则:根据其中一个像素位置的参考权重索引信息,以及两个相邻像素之间的相对位置,确定另一像素位置的参考权重索引信息。可以根据两个相邻像素之间的相对位置,确定偏移值的正负号,偏移值为固定整数;然后,根据所述偏移值和其中一个像素位置的参考权重索引信息,确定另一像素位置的参考权重索引信息。
假设第一像素位置的参考权重索引信息为6,则表示参考权重值列表的第6个参考权重值,将参考权重值列表的第6个参考权重值作为第一像素位置的目标权重值。
针对第2个像素位置,两个相邻像素为第1个像素位置和第2个像素位置,由于第2个像素位置位于第1个像素位置的右侧,因此,偏移值的正负号为正,且偏移值为固定整数(如1、2、3等,后续以2为例进行说明),综上所述,第2个像素位置的参考权重索引信息为8(即6+2),并将参考权重值列表的第8个参考权重值作为第2个像素位置的目标权重值。
针对第3个像素位置,两个相邻像素为第2个像素位置(参考权重索引信息为8)和第3个像素位置,由于第3个像素位置位于第2个像素位置的右侧,因此,偏移值的正负号为正,且偏移值为2,综上所述,第3个像素位置的参考权重索引信息为10(即8+2),并将参考权重值列表的第10个参考权重值作为第3个像素位置的目标权重值,以此类推。
以此类推,对于其它像素位置,实现过程参见上述像素位置,在此不再重复赘述。
应用场景4:参见图6D所示,以第一指定行是当前块的第5行,第一像素位置是非起始像素位置(如第4个像素位置)为例。针对当前块的其它行,实现方式类似。
针对当前块内第一指定行(第5行)的第一像素位置(第4个像素位置),获取第一像素位置的参考权重索引信息(表示参考权重值列表中的第几个参考权重值),例如,可以采用如下方式确定第一像素位置的参考权重索引信息:L=aM+b,L表示第一像素位置的参考权重索引信息,M表示第一像素位置所在行的行数,a和b是根据权重预测角度确定的参数值,在权重预测角度确定后,就可以确定出参数值a和参数值b,具体方式参见应用场景1。
假设第一像素位置的参考权重索引信息为12,则表示参考权重值列表的第12个参考权重值,将参考权重值列表的第12个参考权重值作为第一像素位置的目标权重值。
针对第5个像素位置,两个相邻像素为第4个像素位置和第5个像素位置,由于第5个像素位置位于第4个像素位置的右侧,因此,偏移值的正负号为正,且偏移值为固定整数(如1、2、3等,以2为例进行说明),综上所述,第5个像素位置的参考权重索引信息为14(即12+2),并将参考权重值列表的第14个参考权重值作为第5个像素位置的目标权重值。
针对第6个像素位置,两个相邻像素为第5个像素位置和第6个像素位置,由于第6个像素位置位于第5个像素位置的右侧,因此,偏移值的正负号为正,且偏移值为2,综上所述,第6个像素位置的参考权重索引信息为16(即14+2),并将参考权重值列表的第16个参考权重值作为第6个像素位置的目标权重值。
针对第3个像素位置,两个相邻像素为第4个像素位置和第3个像素位置,由于第3个像素位置位于第4个像素位置的左侧,因此,偏移值的正负号为负,且偏移值为2,综上所述,第3个像素位置的参考权重索引信息为10(即12-2),并将参考权重值列表的第10个参考权重值作为第3个像素位置的目标权重值。
针对第2个像素位置,两个相邻像素为第3个像素位置和第2个像素位置,由于第2个像素位置位于第3个像素位置的左侧,因此,偏移值的正负号为负,且偏移值为2,综上所述,第2个像素位置的参考权重索引信息为8(即10-2),并将参考权重值列表的第8个参考权重值作为第2个像素位置的目标权重值。
以此类推,对于其它像素位置,实现过程参见上述像素位置,在此不再重复赘述。当然偏移值的正负号可以进行对调,即左侧为正,右侧为负,本质上是一致的,在此不再重复。
示例性的,参见图6F所示,假设当前块的权重预测角度为A,则第一像素位置是第4行的第4个像素位置时,将第4个像素位置的参考权重索引信息记为R1,则第5个像素位置的参考权重索引信息为R1+2,记为R2,第6个像素位置的参考权重索引信息为R2+2。又例如,第一像素位置是第4行的第5个像素位置时,将第5个像素位置的参考权重索引信息记为R1,则第4个像素位置的参考权重索引信息为R1-2,第6个像素位置的参考权重索引信息为R1+2。本示例中的2记为固定偏移值,可以调整为其他整数。
步骤303,根据当前块的每个像素位置的目标权重值确定当前块的加权预测值。
在一种可能的实施方式中,针对当前块的每个像素位置,根据该像素位置的目标权重值确定该像素位置的关联权重值;其中,每个像素位置的目标权重值与关联权重值的和均为固定的预设数值(即权重值的最大值)。根据第一预测模式确定该像素位置的第一预测值;根据第二预测模式确定该像素位置的第二预测值;然后,根据该像素位置的第一预测值,该目标权重值,该像素位置的第二预测值,该关联权重值,确定该像素位置的加权预测值。在得到每个像素位置的加权预测值后,可以根据每个像素位置的加权预测值得到当前块的加权预测值,比如说,将每个像素位置的加权预测值组成当前块的加权预测值。
例如,假设固定的预设数值为8,针对当前块的像素位置1,目标权重值为0,则像素位置1的关联权重值为8。针对当前块的像素位置2,目标权重值为2,则像素位置2的关联权重值为6。针对当前块的像素位置3,目标权重值为4,则像素位置3的关联权重值为4。针对当前块的像素位置4,目标权重值为6,则像素位置4的关联权重值为2。针对当前块的像素位置5,目标权重值为8,则像素位置5的关联权重值为0,以此类推。
示例性的,针对当前块的每个像素位置,可以根据第一预测模式确定该像素位置的第一预测值,并根据第二预测模式确定该像素位置的第二预测值,对此预测值的确定方式不做限制。然后,假设目标权重值是第一预测模式对应的权重值,关联权重值是第二预测模式对应的权重值,则该像素位置的加权预测值可以为:(该像素位置的第一预测值*该像素位置的目标权重值+该像素位置的第二预测值*该像素位置的关联权重值)/固定的预设数值。或者,假设目标权重值是第二预测模式对应的权重值,关联权重值是第一预测模式对应的权重值,则该像素位置的加权预测值可以为:(该像素位置的第二预测值*该像素位置的目标权重值+该像素位置的第一预测值*该像素位置的关联权重值)/固定的预设数值。在得到每个像素位置的加权预测值后,就可以将每个像素位置的加权预测值组成当前块的加权预测值。
在一种可能的实施方式中,第一预测模式为帧内块拷贝预测模式,第二预测模式为帧内块拷贝预测模式。在这种情况下,可以为当前块构建块矢量候选列表,并从块矢量候选列表中选择第一块矢量和第二块矢量,第一块矢量和第二块矢量不同。然后,根据第一块矢量确定当前块的每个像素位置的第一预测值,并根据第二块矢量确定当前块的每个像素位置的第二预测值。上述方式可以参见帧内块拷贝预测模式的预测过程,在此不再赘述。
在另一种可能的实施方式中,第一预测模式为帧内块拷贝预测模式,第二预测模式为帧内预测模式。在这种情况下,可以为当前块构建块矢量候选列表,并从块矢量候选列表中选择块矢量,根据该块矢量确定当前块的每个像素位置的第一预测值,上述方式可以参见帧内块拷贝预测模式的预测过程,在此不再赘述。可以为当前块构建帧内预测模式候选列表,并从帧内预测模式候选列表中选择子帧内模式(如角度模式等),根据该子帧内模式确定当前块的每个像素位置的第二预测值,上述方式参见帧内预测模式的预测过程,在此不再赘述。
在另一种可能的实施方式中,第一预测模式为帧内块拷贝预测模式,第二预测模式为帧间预测模式。在这种情况下,可以为当前块构建块矢量候选列表,并从块矢量候选列表中选择块矢量,根据该块矢量确定当前块的每个像素位置的第一预测值,上述方式可以参见帧内块拷贝预测模式的预测过程,在此不再赘述。还可以为当前块构建运动信息候选列表,并从运动信息候选列表中选择一个运动信息,根据该运动信息确定当前块的每个像素位置的第二预测值,上述方式可以参见帧间预测模式的预测过程,在此不再赘述。
在另一种可能的实施方式中,第一预测模式为帧内预测模式,第二预测模式为帧内预测模式。在这种情况下,可以为当前块构建帧内预测模式候选列表,并从帧内预测模式候选列表中选择第一子帧内模式和第二子帧内模式,第一子帧内模式和第二子帧内模式不同。根据第一子帧内模式确定当前块的每个像素位置的第一预测值,根据第二子帧内模式确定当前块的每个像素位置的第二预测值,上述方式参见帧内预测模式的预测过程,在此不再赘述。
在另一种可能的实施方式中,第一预测模式为帧内预测模式,第二预测模式为帧间预测模式。在这种情况下,可以为当前块构建帧内预测模式候选列表,并从帧内预测模式候选列表中选择子帧内模式,根据该子帧内模式确定当前块的每个像素位置的第一预测值,上述方式参见帧内预测模式的预测过程,在此不再赘述。还可以为当前块构建运动信息候选列表,并从运动信息候选列表中选择一个运动信息,根据该运动信息确定当前块的每个像素位置的第二预测值,上述方式可以参见帧间预测模式的预测过程,在此不再赘述。
在另一种可能的实施方式中,第一预测模式为帧间预测模式,第二预测模式为帧间预测模式。在这种情况下,可以为当前块构建运动信息候选列表,并从运动信息候选列表中选择第一运动信息和第二运动信息,第一运动信息和第二运动信息可以不同。然后,根据第一运动信息确定当前块的每个像素位置的第一预测值,根据第二运动信息确定当前块的每个像素位置的第二预测值,上述方式可以参见帧间预测模式的预测过程,在此不再赘述。
当然,上述只是第一预测模式和第二预测模式的示例,对此不做限制。
由以上技术方案可见,本申请实施例中,在确定对当前块启动加权预测时,可以根据参考权重值列表中的参考权重值,确定当前块的每个像素位置的目标权重值。上述方式能够提出一种设置权重值的有效方式,能够为当前块的每个像素位置设置合理的目标权重值,从而提高预测准确性,提高预测性能,提高编码性能,能够使预测值更接近原始像素,并带来编码性能的提高。针对当前块的每行像素位置或者每列像素位置,在确定一个像素位置的排列顺序后,其它像素位置的排列顺序均可以参考该像素位置的排列顺序,从而减少运算次数。
实施例2:参见图7所示,为本申请实施例中的编解码方法的流程示意图,该编解码方法可以应用于解码端或者编码端,该编解码方法可以包括以下步骤:
步骤701,在确定对当前块启动加权预测时,确定当前块的参考权重值列表。
示例性的,参考权重值列表可以包括多个参考权重值(也可以称为候选参考权重值),所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置。
示例性的,步骤701可以参见步骤301,在此不再重复赘述,与步骤301的区别在于,步骤301是针对行的处理,而步骤701是针对列的处理。
例如,当前块可以对应一个参考权重值列表,所有列共用该参考权重值列表。或,当前块可以对应多个参考权重值列表,若干列共用一个参考权重值列表,例如,当前块可以对应两个参考权重值列表,奇数列共用一个参考权重值列表,偶数列共用另一个参考权重值列表。
又例如,关于当前块对应的参考权重值列表,参考权重值列表中的参考权重值数量可以为设定的固定值,该固定值可以根据经验任意设置,对此不做限制。或者,参考权重值列表中的参考权重值数量可以与当前块的尺寸(如当前块的高度)相关,如参考权重值数量可以为2*当前块的高度,或4*当前块的高度,对此不做限制,可以根据实际需要选择。
步骤702,根据参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定列的第一像素位置,获取第一像素位置的参考权重索引信息;将按照第一像素位置的参考权重索引信息,从参考权重值列表中确定的参考权重值作为第一像素位置的目标权重值;示例性的,第一指定列是当前块内的任意一列;
根据第一像素位置的参考权重索引信息,以及第一像素位置和第二像素位置的位置关系,确定第二像素位置的参考权重索引信息;将按照第二像素位置的参考权重索引信息,从参考权重值列表中确定的参考权重值作为第二像素位置的目标权重值;示例性的,第二像素位置是第一指定列中除第一像素位置之外的任意一个像素位置。
在一种可能的实施方式中,针对当前块内第一指定列的第一像素位置,获取第一像素位置的参考权重索引信息,可以包括但不限于:根据第一像素位置的位置信息和当前块的权重预测角度,确定第一像素位置的参考权重索引信息。
示例性的,第一像素位置的位置信息可以包括:第一像素位置所在列的列数。
示例性的,根据第一像素位置的参考权重索引信息,以及第一像素位置和第二像素位置的位置关系,确定第二像素位置的参考权重索引信息,可以包括但不限于:根据第一像素位置和第二像素位置的位置关系,确定参考权重索引信息的偏移值;根据第一像素位置的参考权重索引信息和该偏移值,确定第二像素位置的参考权重索引信息。
示例性的,根据第一像素位置和第二像素位置的位置关系,确定参考权重索引信息的偏移值,可以包括但不限于:可以根据第一像素位置和第二像素位置的位置关系,确定第一像素位置和第二像素位置的间隔,并根据该间隔和固定系数的乘积确定偏移值。
在另一种可能的实施方式中,对于任意两个相邻像素位置,则:根据其中一个像素位置的参考权重索引信息,以及两个相邻像素之间的相对位置,确定另一像素位置的参考权重索引信息。示例性的,根据其中一个像素位置的参考权重索引信息,以及两个相邻像素之间的相对位置,确定另一像素位置的参考权重索引信息,可以包括但不限于:根据两个相邻像素之间的相对位置,确定偏移值的正负号,偏移值为固定整数;然后,根据所述偏移值和所述其中一个像素位置的参考权重索引信息,确定另一像素位置的参考权重索引信息。
在上述实施例中,第一像素位置可以是第一指定列的起始像素位置。当然,第一像素位置也可以是第一指定列的其它像素位置,如第2、3、4个像素位置等,对此不做限制。
以下结合几个具体应用场景,对上述技术方案进行说明。
应用场景1:参见图8A所示,以第一指定列是当前块的第4列,第一像素位置是起始像素位置(即第1个像素位置)为例。针对当前块的其它列,实现方式类似。
针对当前块内第一指定列(第4列)的第一像素位置(第1个像素位置),获取第一像素位置的参考权重索引信息(表示参考权重值列表中的第几个参考权重值)。在一种可能的实施方式中,可以采用如下方式确定第一像素位置的参考权重索引信息:L=aM+b,L表示第一像素位置的参考权重索引信息,M表示第一像素位置所在列的列数,a和b是根据权重预测角度确定的参数值,在权重预测角度确定后,就可以确定出参数值a和参数值b。
当然,上述方式只是确定参考权重索引信息的一个示例,对此不做限制,可以根据第一像素位置的位置信息和当前块的权重预测角度,确定第一像素位置的参考权重索引信息。
参见图8B所示,为参数值a和参数值b的示意图,假设当前块的权重预测角度为A,则每列的第1个像素位置对应的参考权重索引信息可以为:针对第4列的第1个像素位置,则参考权重索引信息可以为tanA*(Q+3)+J;针对第6列的第1个像素位置,则参考权重索引信息可以为tanA*(Q+5)+J;针对第M列的第1个像素位置,则参考权重索引信息可以为tanA*(Q+M-1)+J。在上述例子中,Q可以为当前块与参考权重值列表的间隔,可以任意设置,如1、2、3等,对此不做限制。J为当前块的第一个像素位置与参考权重值列表的第一个位置(即参考权重值列表下方的第一个位置,表示起始位置)的间隔,为一个已知值。
示例性的,当J为当前块的第一个像素位置与参考权重值列表上方的第一个位置(也可以表示起始位置)的间隔时,则上述公式中的J,均可以替换为列表长度减去J。综上所述,参考权重索引信息与参考权重值列表的起始位置设置有关,对此不做限制。
综上所述,参考权重索引信息L为tanA*M+[tanA*(Q-1)-J],比如说,a为tanA,b为tanA*(Q-1)-J。显然,在权重预测角度A确定后,可以确定出参数值a和参数值b,继而根据参数值a,参数值b,列数M确定第一像素位置的参考权重索引信息L。
当然,上述只是确定参数值a和参数值b的一个示例,对此不做限制。例如,可以在编码端和解码端直接约定参数值a和参数值b的取值;或者,可以采用其它方式。
综上所述,在第一指定列是当前块的第4列,第一像素位置是起始像素位置时,则第一像素位置的参考权重索引信息为a*4-b,参数值a和参数值b是已知值,因此,可以确定出第一像素位置的参考权重索引信息,如参考权重索引信息为6,则表示参考权重值列表的第6个参考权重值。将参考权重值列表的第6个参考权重值作为第一像素位置的目标权重值。
在确定第一像素位置的参考权重索引信息后,可以根据第一像素位置的参考权重索引信息,第一像素位置和第二像素位置(即第4列中除第一像素位置外的其它任意一个像素位置)的位置关系,确定第二像素位置的参考权重索引信息,具体实现方式参见实施例1的应用场景1,只是将针对“行”的处理,更改为针对“列”的处理,在此不再赘述。
应用场景2:以第一指定列是当前块的第4列,第一像素位置是非起始像素位置(如第4个像素位置)为例。针对当前块内第一指定列的第一像素位置(第4个像素位置),可以采用如下方式确定第一像素位置的参考权重索引信息:L=aM+b,L表示第一像素位置的参考权重索引信息,M表示第一像素位置所在列的列数,a和b是根据权重预测角度确定的参数值。
在确定第一像素位置的参考权重索引信息后,可以根据第一像素位置的参考权重索引信息,第一像素位置和第二像素位置(即第4列中除第一像素位置外的其它任意一个像素位置)的位置关系,确定第二像素位置的参考权重索引信息,具体实现方式参见实施例1的应用场景2,只是将针对“行”的处理,更改为针对“列”的处理,在此不再赘述。
应用场景3:以第一指定列是当前块的第4列,第一像素位置是起始像素位置(即第1个像素位置)为例。针对当前块内第一指定列的第一像素位置(第1个像素位置),可以采用如下方式确定第一像素位置的参考权重索引信息:L=aM+b,L表示第一像素位置的参考权重索引信息,M表示第一像素位置所在列的列数,a和b是根据权重预测角度确定的参数值。
示例性的,在确定第一像素位置的参考权重索引信息后,对于任意两个相邻像素位置,根据其中一个像素位置的参考权重索引信息,以及两个相邻像素之间的相对位置,确定另一像素位置的参考权重索引信息。可以根据两个相邻像素之间的相对位置,确定偏移值的正负号,偏移值为固定整数;然后,根据所述偏移值和其中一个像素位置的参考权重索引信息,确定另一像素位置的参考权重索引信息。具体实现方式可以参见实施例1的应用场景3,只是将针对“行”的处理,更改为针对“列”的处理,在此不再赘述。
应用场景4:以第一指定列是当前块的第4列,第一像素位置是非起始像素位置(如第4个像素位置)为例。针对当前块内第一指定列的第一像素位置(第4个像素位置),可以采用如下方式确定第一像素位置的参考权重索引信息:L=aM+b,L表示第一像素位置的参考权重索引信息,M表示第一像素位置所在列的列数,a和b是根据权重预测角度确定的参数值。
示例性的,在确定第一像素位置的参考权重索引信息后,对于任意两个相邻像素位置,根据其中一个像素位置的参考权重索引信息,以及两个相邻像素之间的相对位置,确定另一像素位置的参考权重索引信息。可以根据两个相邻像素之间的相对位置,确定偏移值的正负号,偏移值为固定整数;然后,根据所述偏移值和其中一个像素位置的参考权重索引信息,确定另一像素位置的参考权重索引信息。具体实现方式可以参见实施例1的应用场景4,只是将针对“行”的处理,更改为针对“列”的处理,在此不再赘述。
步骤703,根据当前块的每个像素位置的目标权重值确定当前块的加权预测值。
其中,步骤703的实现过程可以参见步骤303,在此不再重复赘述。
由以上技术方案可见,本申请实施例中,在确定对当前块启动加权预测时,可以根据参考权重值列表中的参考权重值,确定当前块的每个像素位置的目标权重值。上述方式能够提出一种设置权重值的有效方式,能够为当前块的每个像素位置设置合理的目标权重值,从而提高预测准确性,提高预测性能,提高编码性能,能够使预测值更接近原始像素,并带来编码性能的提高。针对当前块的每列像素位置或者每列像素位置,在确定一个像素位置的排列顺序后,其它像素位置的排列顺序均可以参考该像素位置的排列顺序,从而减少运算次数。
实施例3:以下结合一个具体例子,对上述针对“行”的处理过程进行说明。
步骤a1、设置参考权重值列表的长度为4*Width,Width为当前块的宽度。
步骤a2、根据权重预测角度和距离参数设置参考权重值列表。例如,参考权重值列表为weight=[0000...00123456788888…88],对此参考权重值列表的设置过程不做限制。
示例性的,0000...00123456788888…88可以是0000...001122334455667788...88,也可以是0000...001223345566788...88等,对此参考权重值列表的内容不做限制。
步骤a3、在确定第M行的第一个像素位置的参考权重索引信息时,可以利用公式aM+b确定参考权重索引信息L(即参考权重值列表中的位置)。然后,将该参考权重索引信息对应的参考权重值weight[L]确定为第一个像素位置的目标权重值。
步骤a4、在确定第M行的第二个像素位置的参考权重索引信息时,利用第M行第一个像素位置的参考权重索引信息加上固定值Z,得到第二个像素位置的参考权重索引信息(L+Z),将该参考权重索引信息的参考权重值weight[L+Z]确定为第二个像素位置的目标权重值。
步骤a5、在确定第M行的第三个像素位置的参考权重索引信息时,将参考权重索引信息(L+2*Z),的参考权重值weight[L+2*Z]确定为第三个像素位置的目标权重值。
以此类推,对于其它像素位置的目标权重值,在此不再重复赘述。
实施例4:以下结合一个具体例子,对上述针对“列”的处理过程进列说明。
步骤b1、设置参考权重值列表的长度为4*Height,Height为当前块的高度。
步骤b2、根据权重预测角度和距离参数设置参考权重值列表。例如,参考权重值列表为weight=[0000...00123456788888…88],对此参考权重值列表的设置过程不做限制。
示例性的,0000...00123456788888…88可以是0000...001122334455667788...88,也可以是0000...001223345566788...88等,对此参考权重值列表的内容不做限制。
步骤b3、在确定第M列的第一个像素位置的参考权重索引信息时,可以利用公式aM+b确定参考权重索引信息L(即参考权重值列表中的位置)。然后,将该参考权重索引信息对应的参考权重值weight[L]确定为第一个像素位置的目标权重值。
步骤a4、在确定第M列的第二个像素位置的参考权重索引信息时,利用第M列第一个像素位置的参考权重索引信息加上固定值Z,得到第二个像素位置的参考权重索引信息(L+Z),将该参考权重索引信息的参考权重值weight[L+Z]确定为第二个像素位置的目标权重值。
步骤a5、在确定第M列的第三个像素位置的参考权重索引信息时,将参考权重索引信息(L+2*Z),的参考权重值weight[L+2*Z]确定为第三个像素位置的目标权重值。
以此类推,对于其它像素位置的目标权重值,在此不再重复赘述。
实施例5:在实施例3和实施例4的基础上,从每个像素位置的参考权重索引信息根据第1个像素位置的参考权重索引信息导出,改为每个像素位置的参考权重索引信息根据前一个像素位置的参考权重索引信息导出,例如,可以采用如下方式如下:
步骤c1、设置参考权重值列表的长度为4*Width,Width为当前块的宽度。
步骤c2、根据权重预测角度和距离参数设置参考权重值列表。例如,参考权重值列表为weight=[0000...00123456788888…88],对此参考权重值列表的设置过程不做限制。
示例性的,0000...00123456788888…88可以是0000...001122334455667788...88,也可以是0000...001223345566788...88等,对此参考权重值列表的内容不做限制。
步骤c3、在确定第M行的第一个像素位置的参考权重索引信息时,可以利用公式aM+b确定参考权重索引信息L(即参考权重值列表中的位置)。然后,将该参考权重索引信息对应的参考权重值weight[L]确定为第一个像素位置的目标权重值。
步骤c4、在确定第M行的第二个像素位置的参考权重索引信息时,利用第M行第一个像素位置的参考权重索引信息加上固定值Z,得到第二个像素位置的参考权重索引信息(L+Z),将该参考权重索引信息的参考权重值weight[L+Z]确定为第二个像素位置的目标权重值。
步骤c5、在确定第M行的第三个像素位置的参考权重索引信息时,将参考权重索引信息((L+Z)+Z)的参考权重值weight[((L+Z)+Z)]确定为第三个像素位置的目标权重值。
步骤a6、在确定第M行的第四个像素位置的参考权重索引信息时,将参考权重索引信息((L+2*Z)+Z)的参考权重值weight[((L+2*Z)+Z)]确定为第四个像素位置的目标权重值。以此类推,对于其它像素位置的目标权重值,在此不再重复赘述。
实施例6:为了确定当前块的参考权重值列表,可以采用如下方式实现:
1)当权重预测角度小于等于135度时,
a)当权重预测角度大于90度时,
参考权重值的设置公式为:
ref[x]=Clip3(0,8,((x<<1)-((((step*(usefulsize-64))+(usefulcenter<<2)+64)>>7)))),
其中x的范围是[-nTbH,nTbW+1]
b)否则,当权重预测角度小于等于90度时,
ref[x]=Clip3(0,8,((x<<1)-((((step*(usefulsize-64))+(usefulcenter<<2)+64))>>
7)))),其中x的范围是[0,2*nTbW]
2)否则,当权重预测大于135度时,
a)当权重预测角度大于90度时,
参考权重值的设置公式为:
ref[x]=Clip3(0,8,((x<<1)-((((step*(usefulsize-64))+(usefulcenter<<2)+64)>>7)))),
其中x的范围是[-nTbW,nTbH+1]
b)否则,当权重预测角度小于等于90度时,
ref[x]=Clip3(0,8,((x<<1)-((((step*(usefulsize-64))+(usefulcenter<<2)+64))>>
7)))),其中x的范围是[0,2*nTbH]
在上述公式中,nTbW为当前块的宽,nTbH为当前块的高,step为距离参数,usefulsize为有效权重区域,usefulcenter用于辅助导出距离参数对应的位置,其中usefulsize以及usefulcenter的可行计算公式为:
1)当权重预测角度小于等于135度时,
usefulsize=(nTbW-1)<<5)+(abs(intraPredAngle)*(nTbH-1)
a)当权重预测角度大于等于90度时,
usefulcenter=((32-abs(intraPredAngle)*nTbH)<<1)+usefulsize-64
b)否则,当权重预测角度小于90度时,
usefulcenter=(((32+abs(intraPredAngle))<<1)+usefulsize)-64
2)否则,当权重预测角度大于135度时,
usefulsize=(nTbH-1)<<5)+(abs(intraPredAngle)*(nTbW-1)
a)当权重预测角度大于等于90度时,
usefulcenter=((32-abs(intraPredAngle)*nTbW)<<1)+usefulsize-64)
b)否则,当权重预测角度小于90度时,
usefulcenter=(((32+abs(intraPredAngle))<<1)+usefulsize)-64)
在上述公式中,nTbW为当前块的宽,nTbH为当前块的高,intraPredAngle对应权重预测角度。
实施例7:为了确定当前块的参考权重值列表,可以采用如下方式实现,:
1)当权重预测角度小于等于135度时,
a)当权重预测角度大于90度时,参考权重值的设置公式为:
ref[x]=Clip3(0,8,((x<<1)-((((step*(usefulsize–96)*2)+(usefulsize–96)+(usefulcenter<<3)+128)>>8)))),其中x的范围是[-nTbH,nTbW+1]
b)否则,当权重预测角度小于等于90度时,
ref[x]=Clip3(0,8,((x<<1)-((((step*(usefulsize-64)*2)+(usefulsize–96)+(usefulcenter<<3)+128))>>8)))),其中x的范围是[0,2*nTbW]
2)否则,当权重预测角度大于135度时,
a)当权重预测角度大于90度时,
参考权重值的设置公式为:
ref[x]=Clip3(0,8,((x<<1)-((((step*(usefulsize–96)*2)+(usefulsize–96)+(usefulcenter<<3)+128)>>8)))),其中x的范围是[-nTbW,nTbH+1]
b)否则,当权重预测角度小于等于90度时,
ref[x]=Clip3(0,8,((x<<1)-((((step*(usefulsize-64)*2)+(usefulsize–96)+(usefulcenter<<3)+128))>>8)))),其中x的范围是[0,2*nTbH]
在上述公式中,nTbW为当前块的宽,nTbH为当前块的高,step为距离参数,usefulsize为有效权重区域,usefulcenter用于辅助导出距离参数对应的位置,其中usefulsize以及usefulcenter的可行计算公式为:
1)权重预测角度小于等于135度时,
usefulsize=(nTbW-1)<<5)+(abs(intraPredAngle)*(nTbH-1)
a)当权重预测角度大于90度时,
usefulcenter=((32-abs(intraPredAngle)*nTbH)<<1)+usefulsize-64
b)否则,当权重预测角度小于等于90度时,
usefulcenter=(((32+abs(intraPredAngle))<<1)+usefulsize)-64
2)否则,当权重预测角度大于135度时,
usefulsize=(nTbH-1)<<5)+(abs(intraPredAngle)*(nTbW-1)
a)当权重预测角度大于90度时,
usefulcenter=((32-abs(intraPredAngle)*nTbW)<<1)+usefulsize-64)
b)否则,当权重预测角度小于等于90度时,
usefulcenter=(((32+abs(intraPredAngle))<<1)+usefulsize)-64)
在上述公式中,nTbW为当前块的宽,nTbH为当前块的高,intraPredAngle对应权重预测角度。
实施例8:为了确定当前块参考权重值列表,可以采用如下方式实现,:
1)当权重预测角度小于等于135度时,
a)当权重预测角度大于90度时,参考权重值的设置公式为:
ref[x]=Clip3(0,8,((x<<1)-((((step*(usefulsize–96)*3)+(usefulcenter<<3)+128)>>8)))),其中x的范围是[-nTbH,nTbW+1]
b)否则,当权重预测角度小于等于90度时,
ref[x]=Clip3(0,8,((x<<1)-((((step*(usefulsize–96)*3)+(usefulcenter<<3)+128))>>8)))),其中x的范围是[0,2*nTbW]
2)否则,当权重预测角度大于135度时,
a)当权重预测角度大于90度时,
参考权重值的设置公式为:
ref[x]=Clip3(0,8,((x<<1)-((((step*(usefulsize–96)*3)+(usefulcenter<<3)+128)>>8)))),其中x的范围是[-nTbW,nTbH+1]
b)否则,当权重预测角度小于等于90度时,
ref[x]=Clip3(0,8,((x<<1)-((((step*(usefulsize–96)*3)+(usefulcenter<<3)+128))>>8)))),其中x的范围是[0,2*nTbH]
在上述公式中,nTbW为当前块的宽,nTbH为当前块的高,step为距离参数,usefulsize为有效权重区域,usefulcenter用于辅助导出距离参数对应的位置,其中usefulsize以及usefulcenter的可行计算公式为:
1)当权重预测角度小于等于135度时,
usefulsize=(nTbW-1)<<5)+(abs(intraPredAngle)*(nTbH-1)
a)当权重预测角度大于90度时,
usefulcenter=((32-abs(intraPredAngle)*nTbH)<<1)+usefulsize-64
b)否则,当权重预测角度小于等于90度时,
usefulcenter=(((32+abs(intraPredAngle))<<1)+usefulsize)-64
2)否则,当权重预测角度大于135度时,
usefulsize=(nTbH-1)<<5)+(abs(intraPredAngle)*(nTbW-1)
a)当权重预测角度大于90度时,
usefulcenter=((32-abs(intraPredAngle)*nTbW)<<1)+usefulsize-64)
b)否则,当权重预测角度小于等于90度时,
usefulcenter=(((32+abs(intraPredAngle))<<1)+usefulsize)-64)
在上述公式中,nTbW为当前块的宽,nTbH为当前块的高,intraPredAngle对应权重预测角度。
在上述实施例6,实施例7和实施例8中,这些实施例提供的若干公式中,常数项以及位移数可以根据不同方案进行值的修改,此处不做限制。
实施例9:在上述实施例的基础上,在对当前块的周边块进行编解码时,还可以将当前块的权重预测角度作为周边块的帧内预测模式,并根据该帧内预测模式对周边块进行编解码。
示例性的,在当前块的周边块为帧内预测块时,在周边块的帧内预测模式候选列表的构建过程中,可以将当前块的权重预测角度(参见上述实施例所示)与帧内预测耦合,从而将当前块的权重预测角度添加到周边块的帧内预测模式候选列表中。
基于与上述方法同样的申请构思,本申请实施例还提出一种编解码装置,所述装置应用于编码端或者解码端,参见图9A所示,为所述装置的结构图,包括:
第一确定模块911,用于在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;第二确定模块912,用于根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;针对当前块内第一指定行的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定行是所述当前块内的任意一行;根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定行中除所述第一像素位置之外的任意一个像素位置;第三确定模块913,用于根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
第二确定模块912针对当前块内第一指定行的第一像素位置,获取所述第一像素位置的参考权重索引信息时具体用于:根据所述第一像素位置的位置信息和当前块的权重预测角度,确定所述第一像素位置的参考权重索引信息。
所述第一像素位置的位置信息,包括:所述第一像素位置所在行的行数。
第二确定模块912据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息时具体用于:根据所述第一像素位置和第二像素位置的位置关系,确定参考权重索引信息的偏移值;根据所述第一像素位置的参考权重索引信息和所述偏移值,确定所述第二像素位置的参考权重索引信息。
第二确定模块912根据所述第一像素位置和第二像素位置的位置关系,确定参考权重索引信息的偏移值时具体用于:根据所述第一像素位置和第二像素位置的位置关系,确定所述第一像素位置和第二像素位置的间隔,并根据所述间隔和固定系数的乘积确定所述偏移值。
第二确定模块912还用于:对于任意两个相邻像素位置,则根据其中一个像素位置的参考权重索引信息,以及所述两个相邻像素之间的相对位置,确定另一像素位置的参考权重索引信息。示例性的,第二确定模块912具体用于:根据所述两个相邻像素之间的相对位置,确定偏移值的正负号,偏移值为固定整数;根据偏移值和所述其中一个像素位置的参考权重索引信息,确定另一像素位置的参考权重索引信息。
在上述实施例中,所述第一像素位置是所述第一指定行的起始像素位置。
在上述实施例中,所述参考权重值列表中的多个参考权重值是单调递增或单调递减。
所述参考权重值列表包括目标区域的参考权重值,目标区域的第一邻近区域的参考权重值,目标区域的第二邻近区域的参考权重值;所述第一邻近区域的参考权重值均为第一参考权重值,所述第二邻近区域的参考权重值是单调递增或单调递减;或者,所述第一邻近区域的参考权重值均为第二参考权重值,所述第二邻近区域的参考权重值均为第三参考权重值,所述第二参考权重值与所述第三参考权重值不同;或者,所述第一邻近区域的参考权重值是单调递增或单调递减,所述第二邻近区域的参考权重值是单调递增或单调递减。
所述目标区域包括一个参考权重值;或,所述目标区域包括多个参考权重值;若所述目标区域包括多个参考权重值,则所述目标区域的多个参考权重值是单调递增或单调递减。
所述参考权重值列表包括第一目标区域的参考权重值,第二目标区域的参考权重值,只与所述第一目标区域相邻的第一邻近区域的参考权重值,与所述第一目标区域和所述第二目标区域均相邻的第二邻近区域的参考权重值,只与所述第二目标区域相邻的第三邻近区域的参考权重值;所述第一邻近区域的参考权重值均为第一参考权重值;所述第二邻近区域的参考权重值均为第二参考权重值;所述第三邻近区域的参考权重值均为第三参考权重值。
第一参考权重值与第三参考权重值相同,且第一参考权重值与第二参考权重值不同。
若所述第一目标区域包括多个参考权重值,则所述第一目标区域的多个参考权重值是单调递增或单调递减;若所述第二目标区域包括多个参考权重值,则所述第二目标区域的多个参考权重值是单调递增或单调递减。所述第一目标区域的多个参考权重值是单调递增,且所述第二目标区域的多个参考权重值是单调递减;或者,所述第一目标区域的多个参考权重值是单调递减,且所述第二目标区域的多个参考权重值是单调递增。
所述单调递增是严格单调递增;所述单调递减是严格单调递减。
所述当前块对应一个参考权重值列表,所有行共用所述参考权重值列表;或者,所述当前块对应多个参考权重值列表,若干行共用一个参考权重值列表。
奇数行共用一个参考权重值列表,偶数行共用另一个参考权重值列表。
基于与上述方法同样的申请构思,本申请实施例还提出一种编解码装置,所述装置应用于编码端或者解码端,参见图9B所示,为所述装置的结构图,包括:
第一确定模块921,用于在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;第二确定模块922,用于根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;针对当前块内第一指定列的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定列是所述当前块内的任意一列;根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定列中除所述第一像素位置之外的任意一个像素位置;第三确定模块923,用于根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
第二确定模块922针对当前块内第一指定列的第一像素位置,获取所述第一像素位置的参考权重索引信息时具体用于:根据所述第一像素位置的位置信息和当前块的权重预测角度,确定所述第一像素位置的参考权重索引信息。
第二确定模块922根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息时用于:根据所述第一像素位置和第二像素位置的位置关系,确定参考权重索引信息的偏移值;根据所述第一像素位置的参考权重索引信息和所述偏移值,确定所述第二像素位置的参考权重索引信息。
第二确定模块922还用于:对于任意两个相邻像素位置,则:根据其中一个像素位置的参考权重索引信息,以及所述两个相邻像素之间的相对位置,确定另一像素位置的参考权重索引信息。
在上述实施例中,所述第一像素位置是所述第一指定列的起始像素位置。
基于与上述方法同样的申请构思,本申请实施例提供的解码端设备,从硬件层面而言,其硬件架构示意图具体可以参见图9C所示。包括:处理器931和机器可读存储介质932,其中:所述机器可读存储介质932存储有能够被所述处理器931执行的机器可执行指令;所述处理器931用于执行机器可执行指令,以实现本申请上述示例公开的方法。
例如,所述处理器931用于执行机器可执行指令,以实现如下步骤:在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定行的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定行是所述当前块内的任意一行;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定行中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值;
或者,所述处理器931用于执行机器可执行指令,以实现如下步骤:在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定列的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定列是所述当前块内的任意一列;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定列中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
基于与上述方法同样的申请构思,本申请实施例提供的编码端设备,从硬件层面而言,其硬件架构示意图具体可以参见图9D所示。包括:处理器941和机器可读存储介质942,其中:所述机器可读存储介质942存储有能够被所述处理器941执行的机器可执行指令;所述处理器941用于执行机器可执行指令,以实现本申请上述示例公开的方法。
例如,所述处理器941用于执行机器可执行指令,以实现如下步骤:在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定行的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定行是所述当前块内的任意一行;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定行中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值;
或者,所述处理器941用于执行机器可执行指令,以实现如下步骤:在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定列的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定列是所述当前块内的任意一列;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定列中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
基于与上述方法同样的申请构思,本申请实施例还提供一种机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被处理器执行时,能够实现本申请上述示例公开的方法。其中,上述机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请实施例可提供为方法、系统、或计算机程序产品。本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (29)
1.一种编解码方法,其特征在于,所述方法包括:
在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定行的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定行是所述当前块内的任意一行;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定行中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
2.根据权利要求1所述的方法,其特征在于,所述针对当前块内第一指定行的第一像素位置,获取所述第一像素位置的参考权重索引信息,包括:
根据所述第一像素位置的位置信息和当前块的权重预测角度,确定所述第一像素位置的参考权重索引信息。
3.根据权利要求2所述的方法,其特征在于,
所述第一像素位置的位置信息,包括:所述第一像素位置所在行的行数。
4.根据权利要求1所述的方法,其特征在于,
所述根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息,包括:
根据所述第一像素位置和第二像素位置的位置关系,确定参考权重索引信息的偏移值;
根据所述第一像素位置的参考权重索引信息和所述偏移值,确定所述第二像素位置的参考权重索引信息。
5.根据权利要求4所述的方法,其特征在于,所述根据所述第一像素位置和第二像素位置的位置关系,确定参考权重索引信息的偏移值,包括:
根据所述第一像素位置和第二像素位置的位置关系,确定所述第一像素位置和第二像素位置的间隔,并根据所述间隔和固定系数的乘积确定所述偏移值。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对于任意两个相邻像素位置,则:根据其中一个像素位置的参考权重索引信息,以及所述两个相邻像素之间的相对位置,确定另一像素位置的参考权重索引信息。
7.根据权利要求6所述的方法,其特征在于,
所述根据其中一个像素位置的参考权重索引信息,以及所述两个相邻像素之间的相对位置,确定另一像素位置的参考权重索引信息,包括:
根据所述两个相邻像素之间的相对位置,确定偏移值的正负号,偏移值为固定整数;
根据偏移值和所述其中一个像素位置的参考权重索引信息,确定另一像素位置的参考权重索引信息。
8.根据权利要求1-7任一项所述的方法,其特征在于,
所述第一像素位置是所述第一指定行的起始像素位置。
9.根据权利要求1所述的方法,其特征在于,
所述参考权重值列表中的多个参考权重值是单调递增或单调递减。
10.根据权利要求1所述的方法,其特征在于,所述参考权重值列表包括目标区域的参考权重值,目标区域的第一邻近区域的参考权重值,目标区域的第二邻近区域的参考权重值;
所述第一邻近区域的参考权重值均为第一参考权重值,所述第二邻近区域的参考权重值是单调递增或单调递减;或者,
所述第一邻近区域的参考权重值均为第二参考权重值,所述第二邻近区域的参考权重值均为第三参考权重值,所述第二参考权重值与所述第三参考权重值不同;或者,
所述第一邻近区域的参考权重值是单调递增或单调递减,所述第二邻近区域的参考权重值是单调递增或单调递减。
11.根据权利要求10所述的方法,其特征在于,
所述目标区域包括一个参考权重值;或,所述目标区域包括多个参考权重值;若所述目标区域包括多个参考权重值,则所述目标区域的多个参考权重值是单调递增或单调递减。
12.根据权利要求1所述的方法,其特征在于,所述参考权重值列表包括第一目标区域的参考权重值,第二目标区域的参考权重值,只与所述第一目标区域相邻的第一邻近区域的参考权重值,与所述第一目标区域和所述第二目标区域均相邻的第二邻近区域的参考权重值,只与所述第二目标区域相邻的第三邻近区域的参考权重值;
所述第一邻近区域的参考权重值均为第一参考权重值;所述第二邻近区域的参考权重值均为第二参考权重值;所述第三邻近区域的参考权重值均为第三参考权重值。
13.根据权利要求12所述的方法,其特征在于,所述第一参考权重值与所述第三参考权重值相同,且所述第一参考权重值与所述第二参考权重值不同。
14.根据权利要求12所述的方法,其特征在于,若所述第一目标区域包括多个参考权重值,则所述第一目标区域的多个参考权重值是单调递增或单调递减;若所述第二目标区域包括多个参考权重值,则所述第二目标区域的多个参考权重值是单调递增或单调递减。
15.根据权利要求14所述的方法,其特征在于,所述第一目标区域的多个参考权重值是单调递增,且所述第二目标区域的多个参考权重值是单调递减;或者,所述第一目标区域的多个参考权重值是单调递减,且所述第二目标区域的多个参考权重值是单调递增。
16.根据权利要求11、14、15中任一项所述的方法,其特征在于,
所述单调递增是严格单调递增;所述单调递减是严格单调递减。
17.根据权利要求1所述的方法,其特征在于,
所述当前块对应一个参考权重值列表,所有行共用所述参考权重值列表;或者
所述当前块对应多个参考权重值列表,若干行共用一个参考权重值列表。
18.根据权利要求1所述的方法,其特征在于,
奇数行共用一个参考权重值列表,偶数行共用另一个参考权重值列表。
19.根据权利要求1所述的方法,其特征在于,所述根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值,包括:
针对所述当前块的每个像素位置,根据所述像素位置的目标权重值确定所述像素位置的关联权重值;其中,每个像素位置的目标权重值与关联权重值的和均为固定的预设数值;
根据第一预测模式确定所述像素位置的第一预测值;
根据第二预测模式确定所述像素位置的第二预测值;
根据所述像素位置的第一预测值,所述目标权重值,所述像素位置的第二预测值,所述关联权重值,确定所述像素位置的加权预测值;
根据每个像素位置的加权预测值得到所述当前块的加权预测值。
20.根据权利要求19所述的方法,其特征在于,
所述第一预测模式为帧内块拷贝预测模式;所述第二预测模式为帧内块拷贝预测模式;
或者,所述第一预测模式为帧内块拷贝预测模式;所述第二预测模式为帧内预测模式;
或者,所述第一预测模式为帧内块拷贝预测模式;所述第二预测模式为帧间预测模式;
或者,所述第一预测模式为帧内预测模式;所述第二预测模式为帧内预测模式;
或者,所述第一预测模式为帧内预测模式;所述第二预测模式为帧间预测模式;
或者,所述第一预测模式为帧间预测模式;所述第二预测模式为帧间预测模式。
21.一种编解码方法,其特征在于,所述方法包括:
在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定列的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定列是所述当前块内的任意一列;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定列中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
22.根据权利要求21所述的方法,其特征在于,所述针对当前块内第一指定列的第一像素位置,获取所述第一像素位置的参考权重索引信息,包括:根据所述第一像素位置的位置信息和当前块的权重预测角度,确定所述第一像素位置的参考权重索引信息。
23.根据权利要求21所述的方法,其特征在于,
所述根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息,包括:
根据所述第一像素位置和第二像素位置的位置关系,确定参考权重索引信息的偏移值;
根据所述第一像素位置的参考权重索引信息和所述偏移值,确定所述第二像素位置的参考权重索引信息。
24.根据权利要求21所述的方法,其特征在于,所述方法还包括:
对于任意两个相邻像素位置,则:根据其中一个像素位置的参考权重索引信息,以及所述两个相邻像素之间的相对位置,确定另一像素位置的参考权重索引信息。
25.根据权利要求21-24任一项所述的方法,其特征在于,
所述第一像素位置是所述第一指定列的起始像素位置。
26.一种编解码装置,其特征在于,所述装置包括:
第一确定模块,用于在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
第二确定模块,用于根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;针对当前块内第一指定行的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定行是所述当前块内的任意一行;根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定行中除所述第一像素位置之外的任意一个像素位置;
第三确定模块,用于根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
27.一种编解码装置,其特征在于,所述装置包括:
第一确定模块,用于在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
第二确定模块,用于根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;针对当前块内第一指定列的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定列是所述当前块内的任意一列;根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定列中除所述第一像素位置之外的任意一个像素位置;
第三确定模块,用于根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
28.一种解码端设备,其特征在于,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;
所述处理器用于执行机器可执行指令,以实现如下步骤:
在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定行的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定行是所述当前块内的任意一行;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定行中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值;
或者,所述处理器用于执行机器可执行指令,以实现如下步骤:
在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定列的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定列是所述当前块内的任意一列;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定列中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
29.一种编码端设备,其特征在于,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;
所述处理器用于执行机器可执行指令,以实现如下步骤:
在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定行的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定行是所述当前块内的任意一行;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定行中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值;
或者,所述处理器用于执行机器可执行指令,以实现如下步骤:
在确定对当前块启动加权预测时,确定当前块的参考权重值列表,所述参考权重值列表包括多个参考权重值,所述参考权重值列表中的参考权重值是预先配置或根据权重配置参数配置;
根据所述参考权重值列表按照以下方式确定当前块内每个像素位置的目标权重值;
针对当前块内第一指定列的第一像素位置,获取所述第一像素位置的参考权重索引信息;将按照所述第一像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第一像素位置的目标权重值;所述第一指定列是所述当前块内的任意一列;
根据所述第一像素位置的参考权重索引信息,以及所述第一像素位置和第二像素位置的位置关系,确定所述第二像素位置的参考权重索引信息;将按照所述第二像素位置的参考权重索引信息,从所述参考权重值列表中确定的参考权重值作为所述第二像素位置的目标权重值,所述第二像素位置是所述第一指定列中除所述第一像素位置之外的任意一个像素位置;
根据所述当前块的每个像素位置的目标权重值确定所述当前块的加权预测值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910944559.2A CN112584142B (zh) | 2019-09-30 | 2019-09-30 | 一种编解码方法、装置及其设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910944559.2A CN112584142B (zh) | 2019-09-30 | 2019-09-30 | 一种编解码方法、装置及其设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112584142A true CN112584142A (zh) | 2021-03-30 |
CN112584142B CN112584142B (zh) | 2022-09-30 |
Family
ID=75116694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910944559.2A Active CN112584142B (zh) | 2019-09-30 | 2019-09-30 | 一种编解码方法、装置及其设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112584142B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112887732A (zh) * | 2021-04-30 | 2021-06-01 | 浙江智慧视频安防创新中心有限公司 | 一种权值可配置的帧间帧内联合预测编解码的方法及装置 |
CN113709462A (zh) * | 2021-04-13 | 2021-11-26 | 杭州海康威视数字技术股份有限公司 | 一种编解码方法、装置及其设备 |
WO2021244496A1 (zh) * | 2020-06-01 | 2021-12-09 | 杭州海康威视数字技术股份有限公司 | 一种编解码方法、装置及其设备 |
WO2022001837A1 (zh) * | 2020-06-30 | 2022-01-06 | 杭州海康威视数字技术股份有限公司 | 一种编解码方法、装置及其设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102695061A (zh) * | 2011-03-20 | 2012-09-26 | 华为技术有限公司 | 一种权重因子的确定方法和装置,以及一种帧内加权预测方法和装置 |
EP2824927A2 (en) * | 2002-08-08 | 2015-01-14 | Panasonic Intellectual Property Corporation of America | Moving picture decoding method |
US20170347103A1 (en) * | 2016-05-25 | 2017-11-30 | Arris Enterprises Llc | Weighted angular prediction coding for intra coding |
WO2018062892A1 (ko) * | 2016-09-28 | 2018-04-05 | 엘지전자(주) | 가중치 인덱스에 기초하여 최적의 예측을 수행하는 방법 및 장치 |
US20180288425A1 (en) * | 2017-04-04 | 2018-10-04 | Arris Enterprises Llc | Memory Reduction Implementation for Weighted Angular Prediction |
CN109479129A (zh) * | 2016-07-18 | 2019-03-15 | 韩国电子通信研究院 | 图像编码/解码方法和装置以及存储比特流的记录介质 |
-
2019
- 2019-09-30 CN CN201910944559.2A patent/CN112584142B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2824927A2 (en) * | 2002-08-08 | 2015-01-14 | Panasonic Intellectual Property Corporation of America | Moving picture decoding method |
CN102695061A (zh) * | 2011-03-20 | 2012-09-26 | 华为技术有限公司 | 一种权重因子的确定方法和装置,以及一种帧内加权预测方法和装置 |
US20170347103A1 (en) * | 2016-05-25 | 2017-11-30 | Arris Enterprises Llc | Weighted angular prediction coding for intra coding |
CN109479129A (zh) * | 2016-07-18 | 2019-03-15 | 韩国电子通信研究院 | 图像编码/解码方法和装置以及存储比特流的记录介质 |
WO2018062892A1 (ko) * | 2016-09-28 | 2018-04-05 | 엘지전자(주) | 가중치 인덱스에 기초하여 최적의 예측을 수행하는 방법 및 장치 |
US20180288425A1 (en) * | 2017-04-04 | 2018-10-04 | Arris Enterprises Llc | Memory Reduction Implementation for Weighted Angular Prediction |
Non-Patent Citations (1)
Title |
---|
TIMOFEY SOLOVYE: "Non-CE4: Restrictions on triangular merge list size", 《JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 14TH MEETING: GENEVA, CH, 19–27 MARCH 2019》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021244496A1 (zh) * | 2020-06-01 | 2021-12-09 | 杭州海康威视数字技术股份有限公司 | 一种编解码方法、装置及其设备 |
US12081737B2 (en) | 2020-06-01 | 2024-09-03 | Hangzhou Hikvision Digital Technology Co., Ltd. | Encoding and decoding method and apparatus, and device therefor |
WO2022001837A1 (zh) * | 2020-06-30 | 2022-01-06 | 杭州海康威视数字技术股份有限公司 | 一种编解码方法、装置及其设备 |
JP2023531010A (ja) * | 2020-06-30 | 2023-07-20 | 杭州海康威視数字技術股▲フン▼有限公司 | 符号化・復号方法、装置及びその機器 |
JP7528273B2 (ja) | 2020-06-30 | 2024-08-05 | 杭州海康威視数字技術股▲フン▼有限公司 | 符号化・復号方法、装置及びその機器 |
CN113709462A (zh) * | 2021-04-13 | 2021-11-26 | 杭州海康威视数字技术股份有限公司 | 一种编解码方法、装置及其设备 |
CN113794881A (zh) * | 2021-04-13 | 2021-12-14 | 杭州海康威视数字技术股份有限公司 | 一种编解码方法、装置及其设备 |
CN113709462B (zh) * | 2021-04-13 | 2023-02-28 | 杭州海康威视数字技术股份有限公司 | 一种编解码方法、装置及其设备 |
CN112887732A (zh) * | 2021-04-30 | 2021-06-01 | 浙江智慧视频安防创新中心有限公司 | 一种权值可配置的帧间帧内联合预测编解码的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112584142B (zh) | 2022-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112584142B (zh) | 一种编解码方法、装置及其设备 | |
CN111385569B (zh) | 一种编解码方法及其设备 | |
CN113709470B (zh) | 一种编解码方法、装置及其设备 | |
EP3817381A1 (en) | Image encoding/decoding method and apparatus for throughput enhancement, and recording medium storing bitstream | |
CN112543323B (zh) | 一种编解码方法、装置及其设备 | |
JP7541599B2 (ja) | 復号化方法、復号化デバイス、復号化側機器、電子機器及び不揮発性記憶媒体 | |
CN113452997B (zh) | 一种编解码方法、装置及其设备 | |
CN113709501B (zh) | 一种编解码方法、装置及其设备 | |
AU2021286043B2 (en) | Encoding and decoding method and apparatus, and device therefor | |
CN113709488B (zh) | 一种编解码方法、装置及其设备 | |
CN114079783B (zh) | 一种编解码方法、装置及其设备 | |
CN113747166B (zh) | 一种编解码方法、装置及其设备 | |
CN112291558A (zh) | 一种编解码方法、装置及其设备 | |
CN112449181B (zh) | 一种编解码方法、装置及其设备 | |
CN113794885B (zh) | 一种编解码方法、装置及其设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |