CN110933414B - 运动信息候选者列表构建方法、装置及可读存储介质 - Google Patents
运动信息候选者列表构建方法、装置及可读存储介质 Download PDFInfo
- Publication number
- CN110933414B CN110933414B CN201911129453.3A CN201911129453A CN110933414B CN 110933414 B CN110933414 B CN 110933414B CN 201911129453 A CN201911129453 A CN 201911129453A CN 110933414 B CN110933414 B CN 110933414B
- Authority
- CN
- China
- Prior art keywords
- spatial candidate
- block
- motion information
- spatial
- candidate 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.)
- Active
Links
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/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- 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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- 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/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
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- 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/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/96—Tree coding, e.g. quad-tree coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请提供一种运动信息候选者列表构建方法、装置及可读存储介质,该方法包括:确定当前数据块的各空域候选块与所述当前数据块的相关度;根据所述相关度,确定候选运动信息;根据候选运动信息,构建所述当前数据块对应的运动信息候选者列表。该方法可以提高运动信息候选者列表构建的灵活性和效率,并提高视频编码性能。
Description
技术领域
本申请涉及视频编码技术,尤其涉及一种运动信息候选者列表构建方法、装置及可读存储介质。
背景技术
帧间预测是指利用视频时域的相关度,使用邻近已编码图像像素预测当前图像的像素,以达到有效去除视频时域冗余的目的。
目前,主要的视频编码标准的帧间预测部分均采用基于块的运动补偿技术,其主要原理是为当前图像的每一个像素块在之前的已编码图像中寻找一个最佳匹配块,该过程称为运动估计(Motion Estimation,简称ME)。其中用于预测的图像称为参考图像(Reference Frame),参考块到当前像素块的位移称为运动矢量(Motion Vector,简称MV),当前像素块与参考块的差值称为预测残差(Prediction Residual)。
由于空域相邻块的运动信息具有较强的相关度,同时运动信息在时域上也有一定的相关度,因此,若利用空域或者时域上相邻块的运动信息对当前块的运动信息进行预测,得到预测像素值,则仅需要对残差进行编码,可以大幅度的节省运动信息的编码比特数。通过编解码端构建相同的运动信息候选者列表,不需要直接编码运动信息,仅需要编码最终选择选择的候选者列表中的序号(例如Merge_idx)就可以表达运动信息,从而大幅度减少编码比特数。
为了利用相邻块的空域相关度和时域相关度,目前的视频编码标准在运动信息的预测方面提出了合并技术(Merge)、高级运动矢量预测技术(Advanced Motion VectorPrediction,简称AMVP)以及仿射(Affine)技术。其均使用空域和时域运动信息预测的思想,通过建立运动信息候选者列表,并按照预设规则从列表中择取最优的一个候选者作为当前单元的预测信息。
然而实践发现,目前的视频编码标准中的运动信息预测方案中,在构建运动信息候选者列表时,各模式下的运动信息候选者列表的构建顺序是固定的。
发明内容
有鉴于此,本申请提供一种运动信息候选者列表构建方法、装置及可读存储介质。
具体地,本申请是通过如下技术方案实现的:
根据本申请实施例的第一方面,提供一种运动信息候选者列表构建方法,包括:
确定当前数据块的各空域候选块与所述当前数据块的相关度;
根据所述相关度,确定候选运动信息;
根据所述候选运动信息,构建所述当前数据块对应的运动候选者列表。
根据本申请实施例的第二方面,提供一种运动候选者列表构建装置,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述运动候选者列表构建方法。
根据本申请实施例的第三方面计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述运动信息候选者列表构建方法。
本申请实施例的运动信息候选者列表构建方法,当进行运动信息预测时,根据当前数据块的各空域候选块与当前数据块的相关度确定候选运动信息,并根据所确定的候选运动信息构建当前数据块对应的运动信息候选者列表,提高了运动信息候选者列表构建的灵活性和效率,并提高了视频编码性能。
附图说明
图1A~1B是本申请示例性实施例示出的块划分的示意图;
图2是本申请一示例性实施例示出的一种运动信息候选者列表构建方法的流程示意图;
图3是本申请一示例性实施例示出的各空域候选块与当前数据块的位置关系的示意图;
图4A~4H是本申请示例性实施例示出的合并模式下的各空域候选块的检查顺序的示意图;
图4I~4K是本申请示例性实施例示出的AMVP模式下的各空域候选块的检查顺序的示意图;
图4L~4Q是本申请示例性实施例示出的Affine Merge模式下的各空域候选块的检查顺序的示意图;
图4R~4S是本申请示例性实施例示出的基于聚类确定各空域候选块的检查顺序的示意图;
图4T~4U是本申请示例性实施例示出的基于模板确定各空域候选块的检查顺序的示意图;
图5是本申请一示例性实施例示出的一种运动信息候选者列表构建装置的硬件结构示意图;
图6是本申请一示例性实施例示出的一种运动信息候选者列表构建装置的结构示意图;
图7是本申请又一示例性实施例示出的一种运动信息候选者列表构建装置的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
为了使本领域技术人员更好地理解本申请实施例提供的技术方案,下面先对现有视频编码标准中块划分技术进行简单说明。
在HEVC中,一个CTU(Coding Tree Unit,编码树单元)使用四叉树递归划分成CU(Coding Unit,编码单元)。在叶子节点CU级确定是否使用帧内编码或者帧间编码。CU可以进一步划分成两个或者四个PU(Prediction Unit,预测单元),同一个PU内使用相同的预测信息。在预测完成后得到残差信息后,一个CU可进一步四叉划分成多个TU(TransformUnits)。例如,本申请中的当前数据块即为一个PU。
但是在最新提出的VVC(Versatile Video Coding,通用视频编码)中的块划分技术有了较大变化。一种混合了二叉树/三叉树/四叉树的划分结构取代了原先的划分模式,取消了原先CU,PU,TU的概念的区分,支持了CU的更灵活的划分方式。其中,CU可以是正方形也可以是矩形划分。CTU首先进行四叉树的划分,然后四叉树划分的叶子节点可以进一步进行二叉树和三叉树的划分。图1A所示,CU共有五种划分类型,分别为四叉树划分,水平二叉树划分,垂直二叉树划分,水平三叉树划分和垂直三叉树划分,如图1B所示,一种CTU内的CU划分可以是上述五种划分类型的任意组合由上可知不同的划分方式,使得各个PU的形状有所不同,如不同尺寸的矩形,正方形。
为了使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例中技术方案作进一步详细的说明。
请参见图2,为本申请实施例提供的一种运动信息候选者列表构建方法的流程示意图,如图2所示,该运动信息候选者选择列表构建方法可以包括以下步骤:
步骤S200、确定当前数据块的各空域候选块与当前数据块的相关度。
步骤S210、根据该相关度,确定候选运动信息。
本申请实施例中,当前数据块是指当前进行运动信息预测的数据块。其中,应用于编码端,该数据块可以为待编码的数据块(本文中可以称为编码块);应用于解码端,该数据块可以为待解码的数据块(本文中可以称为解码块)。
本申请实施例中,考虑到对于不同形状的数据块,对该数据块进行运动信息预测时,该数据块的各空域候选块与该数据块之间的相关度不完全相同。
因此,当对数据块进行运动信息预测时,相关度越高的空域候选块的运动信息被选中最终的预测运动信息对编码效果越有利,因此,根据空域候选块与当前数据块的相关度,确定候选运动信息的排序时,将相关度高的排在前面一方面可以减少编码索引的开销,另一方面可以提高相关度高的空域候选块的运动信息被选为最终的预测运动信息的概率,进而,可以提高视频编码的性能。
因此,在构建运动信息候选者列表时,可以考虑各空域候选块与当前数据块的相关度,并根据该相关度确定候选运动信息。
本申请实施例中根据相关度确定出的候选运动信息可以包括遍历到的空域候选块的可用运动信息,当然也可以还包括遍历到的时域候选运动信息。
本申请实施例中,运动信息可以包括但不限于运动矢量信息、参考帧索引以及运动方向等信息中的一个或多个。
例如,运动信息可以包括运动矢量信息,或者,运动信息可以包括运动矢量信息和参考帧索引,或者,运动信息可以包括运动矢量信息、参考帧索引以及运动方向。
相应地,在本申请实施例中,可用运动信息也可以包括但不限于运动矢量信息、参考帧索引以及运动方向等信息中的一个或多个。
例如,可用运动信息可以包括运动矢量信息,或者,可用运动信息可以包括运动矢量信息和参考帧索引,或者,可用运动信息可以包括运动矢量信息、参考帧索引以及运动方向。
应该认识到,在本申请实施例中,运动信息并不限于上述所列举信息,其还可以包括其它与当前数据块的运动矢量相关的信息,例如,对于Affine模式,运动信息还可以包括标志位信息等。
此外,在本申请实施例中,对于AMVP模式,候选运动信息除了可以包括可用运动信息之外,还可以包括可用运动信息伸缩后的运动信息,例如,对可获的运动矢量进行伸缩后得到的运动信息。
步骤S220、根据候选运动信息,构建当前数据块对应的运动候选者列表。
本申请实施例中,在确定了候选运动信息之后,可以根据所确定的候选运动信息,构建当前数据块对应的运动候选者列表,运动信息候选者列表中的候选者的排序可以参照各个候选者在运动信息是否可用的检查过程中的遍历顺序。
通过图2所示流程可以看出,在本申请实施例中,当进行运动信息预测时,可以根据数据块的空域相邻块与数据块的相关度确定候选运动信息,提高了运动信息候选者列表构建的灵活性和效率,并提高了视频编码性能。
在本申请其中一个实施例中,上述确定当前数据块的各空域候选块与当前数据块的相关度,可以包括:确定当前数据块的形状;根据该当前数据块的形状确定该当前数据块的各空域候选块与当前数据块的相关度。
在该实施例中,考虑到当数据块的形状不同时,对该数据块进行运动信息预测时,该数据块的各空域相邻块与该数据块之间的相关度不完全相同。因此,对数据块进行运动信息预测时,可以根据该数据块的形状确定各空域相邻块与该数据块的相关度。
在一个示例中,上述根据相关度,确定候选运动信息,可以包括:
确定与该相关度匹配的空域候选块检查顺序;按照空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为候选运动信息。其中,检查出的空域候选块的运动信息是指确定为可用的运动信息。
具体地,考虑到运动信息候选者列表中空域运动信息候选者的顺序与构建运动信息候选者列表时对数据块的空域候选块的检查顺序有关,且运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时,可以减少进行索引值编码时所需比特位,提高视频编码的性能;此外,在进行运动信息预测时,运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时可以减少进行预测运动信息选择的消耗,即在同样编码索引的消耗下,将相关度高的排在前面有利于提高视频编码的性能,因此,在构建运动信息候选者列表时,可以考虑各空域候选块与当前数据块的相关度,并根据该相关度确定空域候选块的检查顺序。
优选地,对于任一空域候选块,当前数据块与该空域候选块之间的相关度越高,该空域候选块的检查顺序越靠前。即与当前数据块的相关度高的空域候选块的检查顺序比与当前数据块的相关度低的空域候选块的检查顺序靠前。
进一步地,考虑到不同预测模式下,对数据块进行运动信息预测时,该数据块的各空域候选块的检查方式并不相同,因此,在确定空域候选块的检查顺序时,还可以考虑当前数据块的预测模式(也可以称为运动信息预测模式或运动预测模式)。
相应地,在确定当前数据块的空域候选块检查顺序时,可以根据各空域候选块与当前数据块的相关度,以及运动信息预测模式确定空域候选块检查顺序。
在一个示例中,当前数据块的形状可以通过当前数据块的宽高比;
例如,可以分别通过当前数据块的宽高比与1的大小关系来表征当前数据块的不同形状。
其中,若当前数据块的宽高比大于1,则当前数据块的形状为宽大于高的矩形;若当前数据块的宽高比等于1,则当前数据块的形状为正方形;若当前数据块的宽高比小于1,则当前数据块的形状为宽小于高的矩形。
相应地,上述根据当前数据块的形状确定当前数据块的各空域候选块与当前数据块的相关度,可以包括:
按照宽高比,以及各空域候选块和当前数据块的相对位置关系确定各空域候选块与当前数据块的相关度。
具体地,可以按照当前数据块的宽高比,以及空域候选块和当前数据块的相对位置关系(如当前数据块的上侧或左侧等)确定空域候选块与当前数据块的相关度,其具体实现将在下文中结合具体实例进行说明。
在本申请另一个实施例中,上述确定当前数据块的各空域候选块与当前数据块的相关度,可以包括:
对当前数据块的上侧数据块或/和左侧数据块的运动信息进行聚类,以得到聚类中心的运动信息;
根据聚类中心的运动信息,以及各空域候选块的运动信息,确定各空域候选块与所述聚类中心的距离;
根据各空域候选块与聚类中心的距离,确定各空域候选块与当前数据块的相关度。
本申请实施例中,除了可以按照数据块的形状确定各空域候选块与数据块的相关度之外,还可以通过对数据块的周围数据块进行聚类的方式,并根据聚类结果确定各空域候选块与当前数据块的相关度。
在该实施例中,当需要进行运动信息预测时,可以对当前数据块的上侧数据块或/和左侧数据块的运动信息进行聚类以得到聚类中心的运动信息。
其中,该上侧数据块可以为当前数据块上侧与当前数据块相邻的N*N大小的数据块;其中,N可以为2的整数次方,其缺省值为4。
同理,左侧数据块可以为当前数据块左侧与当前数据块相邻的N*N的数据块。
可选地,在该实施例中,可以分别对上侧数据块的运动信息进行聚类和对左侧数据块的运动信息进行聚类,以分别得到上侧的聚类中心的运动信息和左侧的聚类中心的运动信息;或者,可以对上侧数据块和左侧数据块的运动信息进行聚类,得到聚类中心的运动信息;或者,可以仅对上侧数据块的运动信息进行聚类或对左侧数据块的运动信息进行聚类,以得到上侧的聚类中心的运动信息或左侧的聚类中心的运动信息。
其中,对上侧数据块的运动信息进行聚类时,可以得到一个或多个聚类中心;同理,对左侧数据块的运动信息进行聚类时,也可以得到一个或多个聚类中心。
在该实施例中,可以根据聚类中心的运动信息,以及各空域候选块的运动信息,确定各空域候选块与聚类中心的距离。
其中,当存在多个聚类中心时,对于任一空域候选块,可以将该空域候选块与各聚类中心的距离的最小值确定该空域候选块与聚类中心的距离。
在确定了各空域候选块与聚类中心的距离之后,可以根据各空域候选块与聚类中心的距离,确定各空域候选块与当前数据块的相关度。
进一步地,在该实施例中,为了简化聚类的复杂度,对当前数据块的上侧数据块或/和左侧数据块的运动信息进行聚类时,可以先按照预设采样规则对当前数据块的上侧数据块或/和左侧数据块的运动信息进行采样,以得到参与聚类的上侧数据块(本文中称为目标上侧数据块)或/和左侧数据块(本文中称为目标左侧数据块),并对目标上侧数据块或/和目标左侧数据块进行聚类。
例如,对于当前数据块的上侧数据块,可以每隔一个或多个数据块采样一个目标上侧数据块。
在一个示例中,各空域候选块与聚类中心的距离,与各空域候选块与当前数据块的相关度负相关,即对于任一空域候选块,其与聚类中心的距离越远,其与当前数据块的相关度越低。
相应地,上述根据相关度,确定候选运动信息,可以包括:
按照各空域候选块与聚类中心的距离从小到大的顺序,从各空域候选块中检查出的空域候选块的可用运动信息中确定候选运动信息。
进一步地,在该实施例中,当聚类中心的运动信息与各空域候选块的运动信息均不同时,可以将聚类中心的运动信息确定为候选运动信息,将候选运动信息加入到当前数据块对应的运动信息候选者列表,以增加候选运动信息的数量,提高运动信息预测的准确性。
为了使本领域技术人员更好地理解本申请实施例提供的技术方案,下面分别结合具体实例对本申请实施例中块形状(以通过块的宽高比表征块形状为例)和空域相邻块与聚类中心的距离对候选运动信息的排序的影响进行说明。
一、块的宽高比对候选运动信息的排序的影响。
下述实施例中,若当前数据块的宽高比大于1,则确定当前数据块的上侧空域候选块与当前数据块的相关度高于当前块的左侧空域候选块与当前数据块的相关度。
若当前数据块的宽高比小于1,则确定当前数据块的左侧空域候选块与当前数据块的相关度高于当前数据块的上侧空域候选块与当前数据块的相关度。
以图3为例,在本申请实施例中,第一空域候选块(下文中称为A1)为当前数据块左侧最下方的空域相邻块;第二空域候选块(下文中称为B1)为当前数据块上侧最右侧的空域相邻块;第三空域候选块(下文中称为B0)为与当前数据块右上角距离最近的空域相邻块;第四空域候选块(下文中称为A0)为与当前数据块的左下角距离最近的空域相邻块;第五空域候选块(下文中称为B2)为与当前数据块左上角距离最近的空域相邻块。
作为一种举例,当当前数据块的宽高比大于1,即当前数据块的宽度大于高度时,B1与当前数据块的相关度高于A1与当前数据块的相关度。
作为一种举例,当当前数据块的宽高比小于1,即当前数据块的宽度小于高度时,B1与当前数据块的相关度低于A1与当前数据块的相关度。
或者作为另一种举例,若当前数据块的宽高比大于1,则B1和B0分别与当前数据块的相关度高于A1和A0分别与当前数据块的相关度。
作为另一种举例,若当前数据块的宽高比小于1,则B1和B0分别与当前数据块的相关度低于A1和A0分别与当前数据块的相关度。
需要说明的是,在本申请实施例中,若当前数据块的宽高比等于1,即当前数据块的宽度与高度相等,则可以根据其它条件进一步确定空域候选块与当前数据块的相关度,比如可以采用与大于1时的情形相同,也可以与小于1时的情形相同。
例如,当预测模式为合并模式时,可以确定B1与当前数据块的相关度高于A1与当前数据块的相关度;当预测模式为AMVP模式,可以确定B1与当前数据块的相关度低于A1与当前数据块的相关度。
下面分别针对不同的预测模式,对当前数据块的宽高比对空域候选块的运动信息是否可用的检查顺序,以及确定的候选运动信息在候选者列表中的排序的影响进行说明。
1、预测模式为合并模式
H265/HEVC在运动信息预测方面提出了合并技术(Merge模式的运动信息预测)和AMVP技术(即AMVP模式的运动信息预测)。两者均使用了空域和时域运动信息预测的思想,通过建立候选运动信息列表,基于率失真代价择取最优的一个运动信息候选者作为当前数据块的预测运动信息。其中:
Merge模式下,当前数据块的运动信息直接基于空域或者时域上相邻的数据块的运动信息预测得到,不存在运动矢量差(Motion Vector Difference,MVD);
Merge模式的运动信息预测会为当前数据块建立一个运动信息候选者列表,该运动信息候选者列表中存在5个候选运动信息(及其对应的参考帧信息)。通过遍历这5个候选运动信息,并且进行率失真代价的计算,最终选取率失真代价最小的一个运动信息候选者作为该Merge模式的最佳运动信息(即预测运动信息)。若编解码端依照一样的方式构建运动信息候选者列表,则编码器只需要传输预测运动信息在运动信息候选者列表中的索引即可,这样可以大幅度节省了运动信息的编码比特数。
Merge模式的运动信息预测建立的运动信息候选者列表中包含了空域和时域两种情形,而对于B Slice,还包含组合列表的方式,分别介绍如下。
1)、空域运动信息候选者列表按照A1→B1→B0→A0→(B2)的顺序进行可用运行信息检查和列表构建,其中B2为替补。即当A1,B1,B0,A0中的一个或者多个不存在可用运动信息时,则需要检查B2的运动信息。
其中,对于空域运动信息候选者列表,在JEM中加入了ATMVP和STMVP的候选者,B2的顺序在ATMVP和STMVP的后面,且在时域候选者的前面。BMS中仅加入了ATMVP,B2的位置在ATMVP的后面,且在时域候选者的前面。
2)、时域运动信息候选者列表的建立是利用了当前数据块在邻近已编码图像中的对应位置的数据块的运动信息。与空域运动信息候选者列表不同,时域运动信息候选者列表不能直接使用候选块的运动信息,而需要根据参考图像的位置关系做相应的比例伸缩调整。其中,HEVC规定,时域最多只提供一个候选运动信息。
3)、对于B Slice中的数据块来说,由于存在两个运动信息,因此其运动信息候选者列表也需要提供两个预测运动信息。HEVC标准将运动信息候选者列表中的前4个候选运动信息进行两两组合,产生B Slice的组合列表。
可见,现有Merge模式的运动信息预测,各空域候选块的检查顺序是固定的(A1→B1→B0→A0→(B2)),未充分考虑到在不同块形状下不同空域候选块与当前数据块的相关性不同,灵活性较差,且编码性能较差。本申请提供的方法可以解决此类问题。
下面对本申请实施例提供的技术方案中的Merger模式的运动信息预测的运动信息候选者列表的构建进行说明。
1)、在第一种实施方式中,空域候选块检查顺序至少包括4个空域候选块的遍历次序;该4个空域候选块的遍历次序位于第五空域候选块之前,该第五空域候选块为替补空域候选块。
其中,该4个空域候选块包括第一空域候选块(即图2所示的A1)、第二空域候选块(即图2所示的B1)、第三空域候选块(即图2所示的B0)和第四空域候选块(即图2所示的A0);第五空域候选块即为图2所示的B2。
对于合并模式,空域最多提供4个候选运动信息,即最多使用上述5个空域候选块中的4个空域候选块(A1、B1、B0和A0)的运动信息,列表按照4个空域候选块的遍历顺序建立,其中B2为替补。即当A1,B1,B0,A0中的一个或者多个不存在可用运动信息的时候,则需要B2的运动信息,B2的位置在4个空域候选块之后,但4个空域候选块之后可能插入其他候选者之后才到B2,B2在时域候选者的前面。
在第一种实施方式的示例一中,当当前数据块的宽高比大于1时,上述4个空域候选块的遍历次序可以为第一遍历顺序;其中,该第一遍历顺序为依次遍历第二空域候选块,第一空域候选块,第四空域候选块和第三空域候选块(下文中描述为B1→A1→A0→B0)。
基于第一种实施方式或者第一种实施方式的示例一,在第一种实施方式的示例二中,当当前数据块的宽高比小于1时,上述4个空域候选块的遍历次序可以为第三遍历顺序;其中,该第三遍历为依次遍历第一空域候选块,第二空域候选块,第三空域候选块和第四空域候选块(下文中描述为A1→B1→B0→A0)。
基于第一种实施方式、第一种实施方式的示例一以及第一种实施方式的示例二中的任一实现方式,在第一种实施方式的示例三中,当当前数据块的宽高比等于1时,上述4个空域候选块的遍历次序可以为第二遍历顺序;其中,该第二遍历顺序为依次遍历第二空域候选块,第一空域候选块,第三空域候选块和第四空域候选块(下文中描述为B1→A1→B0→A0)。
在第一种实施方式的示例四中,当当前数据块的宽高比大于1时,上述4个空域候选块的遍历次序可以为第四遍历顺序;其中,该第四遍历顺序为依次遍历第二空域候选块,第三空域候选块,第一空域候选块和第四空域候选块(下文中描述为B1→B0→A1→A0)。
基于第一种实施方式或第一种实施方式的示例四,在第一种实施方式的示例五中,当当前数据块的宽高比小于1时,上述4个空域候选块的遍历次序可以为第五遍历顺序;其中,该第五遍历顺序为依次遍历第一空域候选块,第四空域候选块,第二空域候选块和第三空域候选块(下文中描述为A1→A0→B1→B0)。
基于第一种实施方式的示例一、第一种实施方式的示例二、第一种实施方式的示例四以及第一种实施方式的示例五中的任一实现方式,在第一种实施方式的示例六中,当当前数据块的宽高比等于1时,上述4个空域候选块的遍历次序可以为第一遍历顺序、第三遍历顺序、第四遍历顺序和第五遍历顺序中的一种。
其中,对应合并模式下的第一种实施方式的各示例,当前数据块的宽高比对空域候选块检查顺序的影响的部分实施例可以如表1所示:
表1
需要说明的是,在合并模式下,上述实施例中,未进行限定的检查顺序可以采用默认顺序,即现有视频编码标准中的顺序。例如,对于实施例X0,当宽高比等于1或小于1时,空域候选块的检查顺序可以采用默认顺序;对于实施例X1,当宽高比大于1或等于1时,空域候选块的检查顺序可以采用默认顺序,例如默认顺序可以是第三遍历顺序。
此外,上述实施例中,确定了空域候选块检查顺序之后,可以按照所确定的空域候选块检查顺序,遍历出第一空域候选块、第二空域候选块、第三空域候选块以及第四空域候选块中的可用运动信息,将遍历出的所有可用运动信息确定为候选运动信息。
其中,在合并模式下,空域候选块的运动信息是否可用的判断可以参见现有视频编码标准中的相关描述,本发明实施例在此不做赘述。
进一步地,确定了候选运动信息之后,可以按照空域候选块检查顺序,确定所有可用运动信息在运动信息候选者列表中的顺序。
应该认识到,在本申请实施例中,在合并模式下,当当前数据块的宽高比大于1时,当前数据块的各空域候选块的检查顺序并不限于上述实施例中描述的顺序,也可以是其它B1排在A1前面的顺序,其余实现在此不做穷举。
同理,在合并模式下,当当前数据块的宽高比小于1时,当前数据块的各空域候选块的检查顺序也并不限于上述实施例中描述的顺序,也可以是其它A1排在B1前面的顺序,其余实现在此不做穷举。
同理,在合并模式下,当当前数据块的宽高比等于1时,当前数据块的各空域候选块的检查顺序并不限于上述实施例中描述的顺序,也可以是其它B1排在A1前面的顺序,或,其它A1排在B1前面的顺序,其余实现在此不做穷举。
下面结合附图,对上述实施例中的部分进行说明。
实施例X0
在该实施例中,若当前数据块的宽高比大于1,则当前数据块的各空域候选块的检查顺序可以为:按照B1、A1、A0、B0的遍历顺序(下文中表述为B1→A1→A0→B0),请示意图可以如图4A所示。
若当前数据块的宽高比小于或等于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即A1→B1→B0→A0。
需要说明的是,在该实施例中,B2的检查顺序可以参见现有视频编码标准中的描述。
实施例X1
在该实施例中,若当前数据块的宽高比小于1,则当前数据块的各空域候选块的检查顺序可以为:A1→B1→B0→A0,请示意图可以如图4B所示。
若当前数据块的宽高比大于1或等于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即A1→B1→B0→A0。
需要说明的是,在该实施例中,其中,B2的检查顺序可以参见现有视频编码标准中的描述。
实施例X2
在该实施例中,若当前数据块的宽高比等于1,则当前数据块的各空域候选块的检查顺序可以为:B1→A1→B0→A0,请示意图可以如图4C所示。
若当前数据块的宽高比大于1或者小于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即A1→B1→B0→A0。
需要说明的是,在该实施例中,其中,B2的检查顺序可以参见现有视频编码标准中的描述。
实施例X6
在该实施例中,若当前数据块的宽高比大于1,则当前数据块的各空域候选块的检查顺序可以为:B1→A1→A0→B0,其示意图如图4A所示。
若当前数据块的宽高比等于1,则当前数据块的各空域候选块的检查顺序可以为:B1→A1→B0→A0,其示意图如图4C所示。
若当前数据块的宽高比小于1,则当前数据块的各空域候选块的检查顺序可以为:A1→B1→B0→A0,其示意图如图4B所示。
需要说明的是,在该实施例中,B2的检查顺序可以参见现有视频编码标准中的描述。
实施例X7
在该实施例中,若当前数据块的宽高比大于1,则当前数据块的各空域候选块的检查顺序可以为:B1→B0→A1→A0,其示意图如图4D所示。
若当前数据块的宽高比小于1或等于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即A1→B1→B0→A0。
需要说明的是,在该实施例中,其中,B2的检查顺序可以参见现有视频编码标准中的描述。
实施例X8
在该实施例中,若当前数据块的宽高比小于1,则当前数据块的各空域候选块的检查顺序可以为:A1→A0→B1→B0,其示意图如图4E所示。
若当前数据块的宽高比大于1或等于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即A1→B1→B0→A0。
需要说明的是,在该实施例中,其中,B2的检查顺序可以参见现有视频编码标准中的描述。
实施例X31
在该实施例中,若当前数据块的宽高比大于1,则当前数据块的各空域候选块的检查顺序可以为:B1→B0→A1→A0,其示意图如图4D所示。
若当前数据块的宽高比等于1,则当前数据块的各空域候选块的检查顺序可以为:B1→A1→B0→A0,其示意图如图4C所示。
若当前数据块的宽高比小于1,则当前数据块的各空域候选块的检查顺序可以为:A1→A0→B1→B0,其示意图如图4E所示。
需要说明的是,在该实施例中,B2的检查顺序可以参见现有视频编码标准中的描述。
实施例X32
在该实施例中,若当前数据块的宽高比大于1,则当前数据块的各空域候选块的检查顺序可以为:B1→B0→A1→A0,其示意图如图4D所示。
若当前数据块的宽高比等于1,则当前数据块的各空域候选块的检查顺序可以为:A1→B1→B0→A0,其示意图如图4F所示。
若当前数据块的宽高比小于1,则当前数据块的各空域候选块的检查顺序可以为:A1→A0→B1→B0,其示意图如图4E所示。
需要说明的是,在该实施例中,B2的检查顺序可以参见现有视频编码标准中的描述。
实施例X33
在该实施例中,若当前数据块的宽高比大于或等于1,则当前数据块的各空域候选块的检查顺序可以为:B1→B0→A1→A0,其示意图如图4D所示。
若当前数据块的宽高比小于1,则当前数据块的各空域候选块的检查顺序可以为:A1→A0→B1→B0,其示意图如图4E所示。
需要说明的是,在该实施例中,B2的检查顺序可以参见现有视频编码标准中的描述。
实施例X34
在该实施例中,若当前数据块的宽高比大于1,则当前数据块的各空域候选块的检查顺序可以为:B1→B0→A1→A0,其示意图如图4D所示。
若当前数据块的宽高比小于或等于1,则当前数据块的各空域候选块的检查顺序可以为:A1→A0→B1→B0,其示意图如图4E所示。
需要说明的是,在该实施例中,B2的检查顺序可以参见现有视频编码标准中的描述。
可见,在上述实施例中,当当前数据块的宽高比大于1时,对上述4个空域候选块进行检查时,先检查B1,后检查A1,利用当前数据块的宽高比大于1时,上侧空域候选块与当前数据块的相关度高于左侧空域候选块与当前数据块的相关度的特性,优先对相关度高的空域候选块进行检查,并按照空域候选块的检查顺序确定可用运动信息在运动信息候选者列表中的顺序,可以减少进行索引值编码时所需比特位,提高视频编码的性能;此外,在进行运动信息预测时,运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时可以减少进行预测运动信息选择的消耗,即在同样编码索引的消耗下,将相关度高的排在前面有利于提高视频编码的性能。
同理,当前数据块的宽高比小于1时,先检查A1,后检查B1,利用当前数据块的宽高比小于1时,左侧空域候选块与当前数据块的相关度高于上侧空域候选块与当前数据块的相关度的特性,减少进行索引值编码时所需比特位,提高视频编码的性能;此外,在进行运动信息预测时,运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时可以减少进行预测运动信息选择的消耗,即在同样编码索引的消耗下,将相关度高的排在前面有利于提高视频编码的性能。
需要说明的是,在本申请实施例中,根据上述实施例示出的检查顺序检查出了上述4个空域候选块的可用运动信息之后,在构建运动信息候选者列表时,该4个空域候选块中可用运动信息对应的候选运动信息在运动信息候选者列表中的顺序与该4个空域候选块的检查顺序一致。
但应该认识到,上述实施例中,仅示出了上述4个空域候选块的检查顺序,相应地,其也仅限定了上述4个空域候选块之间的相对检查顺序,以及该4个空域候选块对应的候选运动信息在运动信息候选者列表中的相对顺序,而并未对上述4个空域候选块对应的候选运动信息与其它候选运动信息(如时域候选运动信息、ATMVP对应的候选运动信息和/或STMVP对应的候选运动信息等)在运动信息候选者列表中的顺序进行限定,即上述4个空域候选块对应的候选运动信息与其它候选运动信息在运动信息候选者列表中的相对顺序可以参见现有视频编码标准中的相关描述,或者,可以按照其它策略确定。
举例来说,在一种实现方式中,若上述4个空域候选块的运动信息均可用,则该4个空域候选块的运动信息均作为候选运动信息加入运动信息候选者列表,且该4个空域候选块对应的候选运动信息的相对顺序与上述4个空域候选块的检查顺序一致,且该4个空域候选块对应的运动信息之后依次还可以包括ATMVP对应的候选运动信息、STMVP对应的候选运动信息(若存在)以及时域候选块对应的候选运动信息。
若上述4个空域候选块的运动信息中至少一个不可用,则除了需要将该4个空域候选块的运动信息中的可用运动信息作为候选运动信息加入运动信息候选者列表之外,还需要检查B2的运动信息是否可用,若可用,则该4个空域候选块运动信息中的可用运动信息对应的候选运动信息的相对顺序与上述4个空域候选块的检查顺序一致,且该4个空域候选块运动信息中的可用运动信息对应的候选运动信息之后依次还可以包括ATMVP对应的候选运动信息、STMVP对应的候选运动信息(若存在)、B2对应的候选运动信息以及时域候选块对应的候选运动信息。
2)、在第二种实施方式中,空域候选块检查顺序位于时域候选块的前面,且空域候选块检查顺序至少包括5个空域候选块的遍历顺序。
其中,该5个空域候选块包括第一空域候选块(即图2所示的A1)、第二空域候选块(即图2所示的B1)、第三空域候选块(即图2所示的B0)、第四空域候选块(即图2所示的A0)以及第五空域候选块(即图2所示的B2)。
在第二种实施方式的示例一中,当当前数据块的宽高比大于1时,上述5个空域候选块的遍历次序可以为第六遍历顺序;其中,该第六遍历顺序为依次遍历第三空域候选块、第二空域候选块、第五空域候选块、第一空域候选块和第四空域候选块(下文中描述为B0→B1→B2→A1→A0)。
基于第二种实施方式或第二种实施方式的示例一,在第二种实施方式的示例二中,当当前数据块的宽高比小于1时,该5个空域候选块的遍历次序为第七遍历顺序;其中,该第七遍历顺序为依次遍历第一空域候选块、第四空域候选块、第三空域候选块、第二空域候选块和第五空域候选块(下文中描述为A1→A0→B0→B1→B2)。
基于第二种实施方式、第二种实施方式的示例一以及第二种实施方式的示例二中的任一实现方式,在第二种实施方式的示例三中,当当前数据块的宽高比等于1时,确定的空域候选块检查顺序,与当当前数据块的宽高比大于1时相同;或者,
当当前数据块的宽高比等于1时,确定的空域候选块检查顺序与当当前数据块的宽高比小于1时相同。
其中,对应合并模式下的第二种实施方式的各示例,当前数据块的宽高比对空域候选块检查顺序的影响的部分实施例可以如表2所示:
表2
需要说明的是,在合并模式下,上述实施例中,未进行限定的检查顺序可以采用默认顺序,即现有视频编码标准中的顺序。例如,对于实施例X35,当宽高比等于1或小于1时,空域候选块的检查顺序可以采用默认顺序;对于实施例X36,当宽高比大于1或等于1时,空域候选块的检查顺序可以采用默认顺序。
此外,上述实施例中,确定了空域候选块检查顺序之后,可以按照所确定的空域候选块检查顺序,遍历出第一空域候选块,第二空域候选块,第三空域候选块、第四空域候选块和第五空域候选块中的可用运动信息,将遍历出的所有可用运动信息确定为候选运动信息。
其中,在合并模式下,空域候选块的运动信息是否可用的判断可以参见现有视频编码标准中的相关描述,本发明实施例在此不做赘述。
进一步地,确定了候选运动信息之后,可以按照空域候选块检查顺序,确定所有可用运动信息在运动信息候选者列表中的顺序。
应该认识到,在本申请实施例中,在合并模式下,当当前数据块的宽高比大于1时,当前数据块的各空域候选块的检查顺序并不限于上述实施例中描述的顺序,也可以是其它B1排在A1前面的顺序,其余实现在此不做穷举。
同理,在合并模式下,当当前数据块的宽高比小于1时,当前数据块的各空域候选块的检查顺序也并不限于上述实施例中描述的顺序,也可以是其它A1排在B1前面的顺序,其余实现在此不做穷举。
同理,在合并模式下,当当前数据块的宽高比等于1时,当前数据块的各空域候选块的检查顺序并不限于上述实施例中描述的顺序,也可以是其它B1排在A1前面的顺序,或,其它A1排在B1前面的顺序,其余实现在此不做穷举。
下面结合附图,对上述实施例中的部分进行说明。
实施例X35
在该实施例中,若当前数据块的宽高比大于1,则当前数据块的各空域候选块的检查顺序可以为:B0→B1→B2→A1→A0,请示意图可以如图4G所示。
若当前数据块的宽高比小于或等于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即A1→B1→B0→A0→B2。
实施例X36
在该实施例中,若当前数据块的宽高比小于1,则当前数据块的各空域候选块的检查顺序可以为:A1→A0→B0→B1→B2,请示意图可以如图4H所示。
若当前数据块的宽高比大于1或等于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即A1→B1→B0→A0→B2。
可见,在上述实施例中,当当前数据块的宽高比大于1时,对上述5个空域候选块进行检查时,先检查B1,后检查A1,利用当前数据块的宽高比大于时,上侧空域候选块与当前数据块的相关度高于左侧空域候选块与当前数据块的相关度的特性,优先对相关度高的空域候选块进行检查,并按照空域候选块的检查顺序确定可用运动信息在运动信息候选者列表中的顺序,可以减少进行索引值编码时所需比特位,提高视频编码的性能;此外,在进行运动信息预测时,运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时可以减少进行预测运动信息选择的消耗,即在同样编码索引的消耗下,将相关度高的排在前面有利于提高视频编码的性能。
同理,当前数据块的宽高比小于1时,先检查A1,后检查B1,利用当前数据块的宽高比小于1时,左侧空域候选块与当前数据块的相关度高于上侧空域候选块与当前数据块的相关度的特性,减少进行索引值编码时所需比特位,提高视频编码的性能;此外,在进行运动信息预测时,运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时可以减少进行预测运动信息选择的消耗,即在同样编码索引的消耗下,将相关度高的排在前面有利于提高视频编码的性能。
需要说明的是,在本申请实施例中,根据上述实施例示出的检查顺序检查出了上述5个空域候选块的可用运动信息之后,在构建运动信息候选者列表时,该5个空域候选块中可用运动信息对应的候选运动信息在运动信息候选者列表中的顺序与该5个空域候选块的检查顺序一致。
但应该认识到,上述实施例中,仅示出了上述5个空域候选块的检查顺序,相应地,其也仅限定了上述5个空域候选块之间的相对检查顺序,以及该5个空域候选块对应的候选运动信息在运动信息候选者列表中的相对顺序,而并未对上述5个空域候选块对应的候选运动信息与其它候选运动信息(如时域候选运动信息、ATMVP对应的候选运动信息和/或STMVP对应的候选运动信息等)在运动信息候选者列表中的顺序进行限定,即上述5个空域候选块对应的候选运动信息与其它候选运动信息在运动信息候选者列表中的相对顺序可以参见现有视频编码标准中的相关描述,或者,可以按照其它策略确定。
举例来说,在一种实现方式中,若上述5个空域候选块的运动信息均可用,则该5个空域候选块的运动信息均作为候选运动信息加入运动信息候选者列表,且该5个空域候选块对应的候选运动信息的相对顺序与上述5个空域候选块的检查顺序一致,且该5个空域候选块对应的运动信息之后依次还可以包括ATMVP对应的候选运动信息、STMVP对应的候选运动信息(若存在)以及时域候选块对应的候选运动信息。
2、运动信息预测模式为AMVP模式
AMVP模式的运动信息预测也是利用空域和时域上相邻数据块的运行信息的相关性,为当前数据块建立运动信息候选者列表。编码器从中选出最优的预测运动信息,并对运动信息进行差分编码;解码端通过建立相同的运动信息候选者列表,仅需要运动矢量残差和预测运动信息在该列表中的序号就可以计算出当前数据块的运动信息;其中,AMVP模式下的运动信息候选者列表的长度为2。
1)、构建AMVP模式下的空域运动信息候选者列表时,先对当前数据块左侧的空域候选块进行检查,再对当前数据块上侧的空域候选块进行检查;当前数据块的左侧和上侧各产生一个空域候选运动信息,左侧空域候选块的检查顺序为A0→A1→scaled A0→scaled A1,上侧空域候选块的检查顺序为B0→B1→B2(scaled B0→scaled B1→scaledB2)。
2)、AMVP模式下的时域运动信息候选者列表的构建与Merge模式下的时域运动信息候选者列表的构建方式相同。
其中,当空域运动信息候选者和时域运动信息候选者的总数不足2个时,需要通过补零运动信息候选者(0,0)的方式补足2个。
可见,现有视频编码标准中AMVP模式的运动信息预测,各空域候选块的检查顺序是固定的(即先遍历左侧的空域候选块,遍历顺序为A0→A1→scaled A0→scaled A1,再遍历上侧的空域候选块,遍历顺序为B0→B1→B2(scaled B0→scaled B1→scaled B2)),该顺序可以作为AMVP模式的默认顺序,未充分考虑到在不同块形状下不同空域候选块与当前数据块的相关性不同,灵活性较差,且编码性能较差。本申请提供的方法可以解决此类问题。
下面对本申请实施例提供的技术方案中的AMVP模式的运动信息预测的运动信息候选者列表的构建进行说明。
1)、在AMVP模式的第一种实施方式中,空域候选块检查顺序至少可以包括第八遍历顺序和第九遍历顺序;其中,第八遍历顺序用于进行当前数据块的上侧空域候选块的遍历,第九遍历顺序用于进行当前数据块的左侧空域候选块的遍历;该上侧空域候选块包括:第三空域候选块、第二空域候选块和第五空域候选块;该左侧空域候选块包括:第四空域候选块和第一空域候选块;第八遍历顺序为依次遍历第三空域候选块、第二空域候选块和第五空域候选块(下文中描述为B0→B1→B2);第九遍历顺序为依次遍历第四空域候选块和第一空域候选块(下文中描述为A0→A1)。其中,至少的含义为:除了遍历这5个空域候选块,在满足一定条件时也需要遍历5个空域候选块对应的伸缩块。
在AMVP模式的第一种实施方式的示例一中,当当前数据块的宽高比大于1时,上述按照空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为候选运动信息,可以包括:
步骤1:先按照第八遍历顺序遍历上侧空域候选块。
具体包括:按照所述第八遍历顺序依次遍历所述上侧空域候选块,得到一个可用运动信息;或者,
当所述上侧空域候选块的运动信息可获但均不可用时,遍历所述第三空域候选块对应的伸缩块scaled B0、所述第二空域候选块对应的伸缩块scaled B1和所述第五空域候选块对应的伸缩块scaled B2,得到一个可用运动信息;或者,
当所述上侧空域候选块的运动信息均不可获时,得到0个可用运动信息。
步骤2:按照第九遍历顺序依次遍历左侧空域候选块。
具体包括:按照所述第九遍历顺序依次遍历所述左侧空域候选块,遍历出一个可用运动信息或者0个可用运动信息;
其中,当所述左侧空域候选块的运动信息可获,且所述上侧空域候选块的运动信息均不可获(包括全部为帧内预测的情况)时,依次遍历所述第四空域候选块对应的伸缩块scaled A0和所述第一空域候选块对应的伸缩块scaled A1,得到一个可用运动信息。
其中,当所述上侧空域候选块和所述左侧空域候选块的运动信息均不可获时,得到0个空域的可用运动信息。
步骤3:将步骤1和步骤2遍历出的所有可用运动信息确定为候选运动信息。
在AMVP模式第一种实施方式的示例二中,当前数据块的宽高比小于1时,上述按照空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为候选运动信息,包括:
步骤1:先按照第九遍历顺序依次遍历左侧空域候选块。
具体包括:按照所述第九遍历顺序依次遍历所述左侧空域候选块,得到一个可用运动信息;或者,
当所述左侧空域候选块的运动信息可获但均不可用时,遍历所述第四空域候选块对应的伸缩块和所述第一空域候选块对应的伸缩块,得到一个可用运动信息;或者,
当所述左侧空域候选块的运动信息均不可获时,得到0个可用运动信息。
步骤2:按照第八遍历顺序遍历上侧空域候选块。
具体包括:按照所述第八遍历顺序依次遍历所述上侧空域候选块,遍历出一个可用运动信息或者0个可用运动信息;
其中,当所述上侧空域候选块的运动信息可获,且所述左侧空域候选块的运动信息均不可获(包括全部为帧内预测的情况)时,依次遍历所述第三空域候选块对应的伸缩块、所述第二空域候选块对应的伸缩块和所述第五空域候选块对应的伸缩块,得到一个可用运动信息。
其中,当所述上侧空域候选块和所述左侧空域候选块的运动信息均不可获时,得到0个空域的可用运动信息。
步骤3:将步骤1和步骤2遍历出的所有可用运动信息确定为候选运动信息。
在AMVP模式第一种实施方式的示例三中,当当前数据块的宽高比等于1时,确定的空域候选块检查顺序,以及按照空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为候选运动信息的方式与当当前数据块的宽高比大于1时相同。
在AMVP模式第一种实施方式的示例四中,当当前数据块的宽高比等于1时,确定的空域候选块检查顺序,以及按照空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为候选运动信息的方式与当当前数据块的宽高比小于1时相同。
综上,对于AMVP模式第一种实施方式中,当前数据块的宽度小于高度时,空域候选块的遍历顺序属于先左侧,后上侧的情况,A0,A1的伸缩是基于A0,A1存在可获,但是均不可用的情况下进行伸缩。对于上侧的B0,B1,B2的伸缩是基于A0,A1均不可获得的条件。
对于AMVP模式第一种实施方式中,当前数据块的宽度大于高度时,空域候选块的遍历顺序属于先上侧,后左侧的情况,B0,B1,B2的伸缩是基于B0,B1,B2存在可获,但是均不可用的情况下进行伸缩。对于左侧的A1,A0的伸缩是基于B0,B1,B2均不可获得的条件。
其中,对应AMVP模式下的第一种实施方式的各示例,当前数据块的宽高比对空域候选块检查顺序的影响的部分实施例可以如表3所示,其中scaled A0→scaled A1,以及scaled B0→scaled B1→scaled B2为满足一些条件下的遍历,非必选:
表3
需要说明的是,在AMVP模式下,上述实施例中,未进行限定的检查顺序可以采用默认顺序,即现有视频编码标准中的顺序。例如,对于实施例Y,当宽高比等于1或小于1时,空域候选块的遍历顺序可以采用AMVP模式下默认顺序;对于实施例Y2,当宽高比小于1时,空域候选块的遍历顺序可以采用AMVP模式下的默认顺序。
此外,在AMVP模式下,上述实施例中,可以将B2作为上侧空域候选块。
其中,本申请实施例中,在AMVP模式下,对于任意一个空域候选块,当该空域候选块的运动信息可以获取(即存在有效运动信息),但该空域候选块的运动信息对应的参考图像与当前数据块的参考图像不同时,确定该空域候选块的运动信息不可用。当该空域候选块的运动信息可以获取,且该空域候选块的运动信息对应的参考图像与当前数据块的参考图像相同时,确定该空域候选块的运动信息可用。
以左侧候选空域块按照A0-A1-scaleA0-scaleA1的遍历顺序为例,确定空域候选块的运动信息是否可用具体包括:
确定A0的运动信息可获之后,判断A0运动信息包含的参考帧图像信息是否与当前图像块所在的参考帧图像相同,如果是相同的,说明A0的运动信息可用,无需进行scaleA0的遍历。如果不同,则认为A0不可用,则进行A1块的遍历,如果判断A1块运动信息不可获取或者A1运动信息包含的参考帧图像信息与当前图像块所在的参考帧图像不同,那么就进行scaleA0的遍历,从而得到对A0的运动信息进行伸缩处理之后的可用运动信息,如果相同,说明A1的运动信息可用,无需进行scaleA0的遍历。
此外,对于任一空域候选块,遍历该空域候选块对应的伸缩块,其含义是对该空域候选块的运动信息进行伸缩,伸缩处理之后的运动信息作为可用运动信息,当该空域候选块的运动信息不可获时,不能进行伸缩。其具体实现可以参见现有视频编码标准中的相关描述。
应该认识到,在本申请实施例中,在AMVP模式下,当当前数据块的宽高比大于1时,当前数据块的各空域候选块的检查顺序并不限于上述实施例中描述的顺序,也可以是其它先遍历上侧空域候选块,后遍历左侧空域块的顺序,例如,先遍历B1→B0→B2→Scale B1→Scale B0→Scale B2,后遍历A0→A1→Scale A0→Scale A1,其余实现在此不做穷举。
同理,在AMVP模式下,当当前数据块的宽高比小于1时,当前数据块的各空域候选块的检查顺序也并不限于上述实施例中描述的顺序,也可以是其它先遍历左侧空域候选块,后遍历上侧空域块的顺序,例如,先遍历A1→A0→Scale A1→Scale A0,后遍历B0→B1→B2→Scale B0→Scale B1→Scale B2,其余实现在此不做穷举。
同理,在AMVP模式下,当当前数据块的宽高比等于1时,当前数据块的各空域候选块的检查顺序并不限于上述实施例中描述的顺序,也可以是其它先遍历左侧空域候选块,后遍历上侧空域块的顺序,或,其它先遍历上侧空域候选块,后遍历左侧空域块的顺序,其余实现在此不做穷举。
下面结合附图,对上述实施例中的部分进行说明。
实施例Y0
在该实施例中,若当前数据块的宽高比大于1,则当前数据块的各空域候选块的检查顺序为先按照B0→B1→B2→scaled B0→scaled B1→scaled B2的顺序进行遍历;后按照A0→A1→scaled A0→scaled A1的顺序进行遍历,其示意图可以如图4I所示。
若当前数据块的宽高比小于1或等于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即先按照A0→A1→scaled A0→scaled A1的顺序进行遍历,再按照B0→B1→B2→scaled B0→scaled B1→scaled B2的顺序遍历,其中为scaled A0→scaled A1为可选,scaled B0→scaled B1→scaled B2为可选。
可见,在上述实施例中,当当前数据块的宽高比大于1时,对空域候选块进行检查时,先检查上侧的空域候选块,后检查左侧的空域相邻块,利用当前数据块的宽高比大于时,上侧空域候选块与当前数据块的相关度高于左侧空域候选块与当前数据块的相关度的特性,优先对相关度高的空域候选块进行检查,并按照空域候选块的检查顺序确定可用运动信息在运动信息候选者列表中的顺序,可以减少进行索引值编码时所需比特位,提高视频编码的性能;此外,在进行运动信息预测时,运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时可以减少进行预测运动信息选择的消耗,即在同样编码索引的消耗下,将相关度高的排在前面有利于提高视频编码的性能。
同理,当前数据块的宽高比小于1时,先检查左侧的空域候选块,后检查上侧的空域相邻块,利用当前数据块的宽高比小于1时,左侧空域候选块与当前数据块的相关度高于上侧空域候选块与当前数据块的相关度的特性,减少进行索引值编码时所需比特位,提高视频编码的性能;此外,在进行运动信息预测时,运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时可以减少进行预测运动信息选择的消耗,即在同样编码索引的消耗下,将相关度高的排在前面有利于提高视频编码的性能。
需要说明的是,在本申请实施例中,根据上述实施例示出的检查顺序检查出了上述各空域候选块对应的候选运动信息运动信息之后,各空域候选块中对应的候选运动信息在运动信息候选者列表中的顺序与各空域候选块的检查顺序一致。
但应该认识到,上述实施例中,仅示出了上述各空域候选块的检查顺序,相应地,其也仅限定了上述各空域候选块之间的相对检查顺序,以及各空域候选块对应的候选运动信息在运动信息候选者列表中的相对顺序,而并未对各空域候选块对应的候选运动信息与其它候选运动信息(如时域候选运动信息、零运动信息等)在运动信息候选者列表中的顺序进行限定,即上述各空域候选块对应的候选运动信息与其它候选运动信息在运动信息候选者列表中的相对顺序可以参见现有视频编码标准中的相关描述,或者,可以按照其它策略确定。
2)、在AMVP模式第二种实施方式中,确定的空域候选块检查顺序至少可以包括第十遍历顺序和第十一遍历顺序;其中,第十遍历顺序用于进行当前数据块的上侧空域候选块的遍历,第十一遍历顺序用于进行当前数据块的左侧空域候选块的遍历;上侧空域候选块包括:第三空域候选块和第二空域候选块;左侧空域候选块包括:第四空域候选块、第一空域候选块和第五空域候选块;第十遍历顺序为依次遍历第三空域候选块和第二空域候选块(下文中描述为B0→B1);第十一遍历顺序为依次遍历第四空域候选块、第一空域候选块和第五空域候选块(下文中描述为A0→A1→B2)。其中,至少的含义为:除了遍历这5个空域候选块,在满足一定条件时也需要遍历5个空域候选块对应的伸缩块。
在AMVP模式第二种实施方式的示例一中,当当前数据块的宽高比大于1时,上述按照空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为候选运动信息,可以包括:
步骤1:先按照第十遍历顺序遍历上侧空域候选块。
具体包括:按照该第十遍历顺序遍历上侧空域候选块,得到一个可用运动信息;或,
当上侧空域候选块的运动信息可获但均不可用时,遍历第三空域候选块对应的伸缩块和第二空域候选块对应的伸缩块,得到一个可用运动信息;或者,
当该上侧空域候选块的运动信息均不可获时,得到0个可用运动信息。
步骤2:再按照第十一遍历顺序依次遍历左侧空域候选块。
具体包括:按照该第十一遍历顺序依次遍历该左侧空域候选块,遍历出一个可用运动信息或者0个可用运动信息;
其中,当左侧空域候选块的运动信息可获,且上侧空域候选块的运动信息均不可获(包括全部为帧内预测的情况)时,依次遍历第四空域候选块对应的伸缩块、第一空域候选块对应的伸缩块和第五空域候选块对应的伸缩块,得到一个可用运动信息。
其中,当上侧空域候选块和左侧空域候选块的运动信息均不可获时,得到0个空域的可用运动信息。
步骤3:将遍历出的所有可用运动信息确定为候选运动信息。
在AMVP模式第二种实施方式的示例二中,当当前数据块的宽高比小于1时,上述按照空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为候选运动信息,可以包括:
步骤1:先按照第十一遍历顺序依次遍历左侧空域候选块。
具体包括:按照第十一遍历顺序依次遍历左侧空域候选块,得到一个可用运动信息;或者,
当左侧空域候选块的运动信息可获但不可用时,遍历第四空域候选块对应的伸缩块、第一空域候选块对应的伸缩块和第五空域候选块对应的伸缩块,得到一个可用运动信息;或者,
当左侧空域候选块的运动信息均不可获时,得到0个可用运动信息。
步骤2:再按照第十遍历顺序遍历上侧空域候选块。
具体包括:按照第十遍历顺序依次遍历上侧空域候选块,遍历出一个可用运动信息或者0个可用运动信息;
其中,当上侧空域候选块的运动信息可获,且左侧空域候选块的运动信息均不可获(包括全部为帧内预测的情况)时,依次遍历第三空域候选块对应的伸缩块和第二空域候选块对应的伸缩块,得到一个可用运动信息。
其中,当左侧空域候选块和上侧空域候选块的运动信息均不可获时,得到0个空域的运动信息。
步骤3:将遍历出的所有可用运动信息确定为候选运动信息。
在AMVP模式第二种实施方式的示例三中,当当前数据块的宽高比等于1时,确定的空域候选块检查顺序,以及按照空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为候选运动信息的方式与当当前数据块的宽高比大于1时相同。
在AMVP模式第二种实施方式的示例四中,当当前数据块的宽高比等于1时,确定的空域候选块检查顺序,以及按照空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为候选运动信息的方式与当当前数据块的宽高比小于1时相同。
其中,对应AMVP模式下的第一种实施方式的各示例,当前数据块的宽高比对空域候选块检查顺序的影响的部分实施例可以如表4所示,其中scaled A0→scaled A1→scaled B2,以及scaled B0→scaled B1为满足一些条件下的遍历,非必选:
表4
需要说明的是,在AMVP模式下,上述实施例中,未进行限定的检查顺序可以采用默认顺序,即现有视频编码标准中的固定顺序。例如,对于实施例Y4,当宽高比等于1或小于1时,空域候选块的遍历顺序可以采用默认顺序;对于实施例Y5,当宽高比大于1或等于1时,空域候选块的遍历顺序可以采用默认顺序。
此外,在AMVP模式下,上述实施例中,可以将B2作为左侧空域候选块。
应该认识到,在本申请实施例中,在AMVP模式下,当当前数据块的宽高比大于1时,当前数据块的各空域候选块的检查顺序并不限于上述实施例中描述的顺序,也可以是其它先遍历上侧空域候选块,后遍历左侧空域块的顺序,例如,先遍历B1→B0→Scale B1→Scale B0,后遍历A0→A1→B2→Scale A0→Scale A1→Scale B2,其余实现在此不做穷举。
同理,在AMVP模式下,当当前数据块的宽高比小于1时,当前数据块的各空域候选块的检查顺序也并不限于上述实施例中描述的顺序,也可以是其它先遍历左侧空域候选块,后遍历上侧空域块的顺序,例如,先遍历A1→A0→B2→Scale A1→Scale A0→ScaleB2,后遍历B0→B1→Scale B0→Scale B1,其余实现在此不做穷举。
同理,在AMVP模式下,当当前数据块的宽高比等于1时,当前数据块的各空域候选块的检查顺序并不限于上述实施例中描述的顺序,也可以是其它先遍历左侧空域候选块,后遍历上侧空域块的顺序,或,其它先遍历上侧空域候选块,后遍历左侧空域块的顺序,其余实现在此不做穷举。
下面结合附图,对上述实施例中的部分进行说明。
实施例Y5
在该实施例中,若当前数据块的宽高比大于1,则当前数据块的各空域候选块的检查顺序为先按照B0→B1→scaled B0→scaled B1的顺序进行遍历;后按照A0→A1→B2→scaled A0→scaled A1→scaledB2的顺序进行遍历,其示意图可以如图4J所示,其中为scaled A0→scaled A1→scaledB2为可选,scaled B0→scaled B1为可选。
若当前数据块的宽高比小于1或等于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即先按照A0→A1→scaled A0→scaled A1的顺序进行遍历,再按照B0→B1→B2→scaled B0→scaled B1→scaled B2的顺序遍历,其中为scaled A0→scaled A1为可选,scaled B0→scaled B1→scaled B2为可选。
实施例Y6
在该实施例中,若当前数据块的宽高比小于1,则当前数据块的各空域候选块的检查顺序为先按照A0→A1→B2→Scale A0→Scale A1→Scale B2的顺序进行遍历;后按照B0→B1→Scale B0→Scale B1的顺序进行遍历,其示意图可以如图4K所示,其中为scaled A0→scaled A1→scaledB2为可选,scaled B0→scaled B1为可选。
若当前数据块的宽高比大于1或等于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即先按照A0→A1→scaled A0→scaled A1的顺序进行遍历,再按照B0→B1→B2→scaled B0→scaled B1→scaled B2的顺序遍历,其中为scaled A0→scaled A1为可选,scaled B0→scaled B1→scaled B2为可选。
实施例Y10
若当前数据块的宽高比大于1或等于1,则当前数据块的各空域候选块的检查顺序为先按照B0→B1→scaled B0→scaled B1的顺序进行遍历;后按照A0→A1→B2→scaledA0→scaled A1→scaledB2的顺序进行遍历,其示意图可以如图4J所示。
若当前数据块的宽高比小于1,则当前数据块的各空域候选块的检查顺序为先按照A0→A1→B2→Scale A0→Scale A1→Scale B2的顺序进行遍历;后按照B0→B1→ScaleB0→Scale B1的顺序进行遍历,其示意图可以如图4K所示,其中为scaled A0→scaled A1→scaledB2为可选,scaled B0→scaled B1为可选。
可见,在上述实施例中,当当前数据块的宽高比大于1时,对空域候选块进行检查时,先检查上侧的空域候选块,后检查左侧的空域相邻块,利用当前数据块的宽高比大于时,上侧空域候选块与当前数据块的相关度高于左侧空域候选块与当前数据块的相关度的特性,优先对相关度高的空域候选块进行检查,并按照空域候选块的检查顺序确定可用运动信息在运动信息候选者列表中的顺序,可以减少进行索引值编码时所需比特位,提高视频编码的性能;此外,在进行运动信息预测时,运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时可以减少进行预测运动信息选择的消耗,即在同样编码索引的消耗下,将相关度高的排在前面有利于提高视频编码的性能。
同理,当前数据块的宽高比小于1时,先检查左侧的空域候选块,后检查上侧的空域相邻块,利用当前数据块的宽高比小于1时,左侧空域候选块与当前数据块的相关度高于上侧空域候选块与当前数据块的相关度的特性,减少进行索引值编码时所需比特位,提高视频编码的性能;此外,在进行运动信息预测时,运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时可以减少进行预测运动信息选择的消耗,即在同样编码索引的消耗下,将相关度高的排在前面有利于提高视频编码的性能。
需要说明的是,在本申请实施例中,根据上述实施例示出的检查顺序检查出了上述各空域候选块对应的候选运动信息之后,各空域候选块中对应的候选运动信息在运动信息候选者列表中的顺序与各空域候选块的检查顺序一致。
但应该认识到,上述实施例中,仅示出了上述各空域候选块的检查顺序,相应地,其也仅限定了上述各空域候选块之间的相对检查顺序,以及各空域候选块对应的候选运动信息在运动信息候选者列表中的相对顺序,而并未对各空域候选块对应的候选运动信息与其它候选运动信息(如时域候选运动信息、零运动信息等)在运动信息候选者列表中的顺序进行限定,即上述各空域候选块对应的候选运动信息与其它候选运动信息在运动信息候选者列表中的相对顺序可以参见现有视频编码标准中的相关描述,或者,可以按照其它策略确定。
举例来说,按照上述方式选出至多2个空域候选运动信息(上侧或/和左侧),并按照现有视频编码标准中AMVP模式的时域候选运动信息选择方式选出了至多1个时域候选运动信息,将该至多2个空域候选运动信息和至多1个时域候选运动信息进行合并,得到合并后的运动信息候选者列表。
其中,进行空域候选运动信息和时域候选运动信息合并时,若存在2个相同的运动信息(即时域候选运动信息与其中1个空域候选运动信息相同)时,仅保留该2个相同的候选运动信息中的空域候选运动信息。
该合并后的运动信息候选者列表中各候选运动信息的排序依次为空域候选运动信息(若存在2个,则按照其对应的空域候选块的检查顺序一致)和时域候选运动信息。
若合并后的运动信息候选者列表中存在2个或3个候选运动信息,则将前2个加入到最终的运动信息候选者列表。
若合并后的运动信息候选者列表中存在小于2个(0个或1个)候选运动信息,则通过补零运动信息(即(0,0))的方式填充至2个,并将该2个候选运动信息加入到最终的运动信息候选者列表。
需要说明的是,在本申请实施例中,在先遍历左侧空域候选块,后遍历上侧空域候选块,且第五空域候选块作为上侧空域候选块的实施例中,左侧的第四空域候选块和第一空域候选块的伸缩是在第四空域候选块和第一空域候选块存在可获,但是均不可用的情况下进行的。上侧的第三空域候选块、第二空域候选块和第五空域候选块的伸缩是在第四空域候选块和第一空域候选块均不可获的情况下进行的。
在先遍历上侧空域候选块,后遍历左侧空域候选块,且第五空域候选块作为上侧空域候选块的实施例中,上侧的第三空域候选块、第二空域候选块和第五空域候选块的伸缩是在第三空域候选块、第二空域候选块和第五空域候选块存在可获,但是均不可用的情况下进行的。左侧的第四空域候选块和第一空域候选块的伸缩是在第三空域候选块、第二空域候选块和第五空域候选块均不可获的情况下进行的。
在先遍历左侧空域候选块,后遍历上侧空域候选块,且第五空域候选块作为左侧空域候选块的实施例中,左侧的第四空域候选块、第一空域候选块和第五空域候选块的伸缩是在第四空域候选块、第一空域候选块和第五空域候选块存在可获,但是均不可用的情况下进行的。上侧的第三空域候选块和第二空域候选块的伸缩是在第四空域候选块、第一空域候选块和第五空域候选块均不可获的情况下进行的。
在先遍历上侧空域候选块,后遍历左侧空域候选块,且第五空域候选块作为左侧空域候选块的实施例中,上侧的第三空域候选块和第二空域候选块的伸缩是在第三空域候选块和第二空域候选块存在可获,但是均不可用的情况下进行的。左侧的第四空域候选块、第一空域候选块和第五空域候选块的伸缩是在第三空域候选块和第二空域候选块均不可获的情况下进行的。
3、预测模式为Affine Merge模式
Affine模式技术是Affine模式是H.266新引进的帧间预测模式,针对旋转,缩放的场景有很好的预测效果。
JEM中Affine模式分为两种,一种是Affine Inter,一种是Affine Merge。AffineMerge通过遍历A1→B1→B0→A0→B2找到第一个是Affine模式编码的候选者即可。对于AF_MERGE方式无需传输一些额外的索引值,只需传输是否使用Affine Merge的Flag即可。
可见,现有Affine Merge模式的运动信息预测,各空域候选块的检查顺序是固定的(即A1→B1→B0→A0→B2),未充分考虑到在不同块形状下不同空域候选块与当前数据块的相关性不同,灵活性较差,且编码性能较差。本申请提供的方法可以解决此类问题。
下面对本申请实施例提供的技术方案中的Affine Merge模式的运动信息预测的运动信息候选者列表的构建进行说明。
1)、在Affine Merge模式第一种实施方式中,当当前数据块的宽高比大于1时,确定的空域候选块检查顺序为第一遍历顺序、第四遍历顺序中的一种,但当按照空域候选块检查顺序未遍历出任何可用运动信息时,继续遍历第五空域候选块;或者,当当前数据块的宽高比大于1时,确定的空域候选块检查顺序为第六遍历顺序。
相应地,上述按照空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为候选运动信息,可以包括:
按照空域候选块检查顺序遍历出第一个可用运动信息之后停止遍历。
在第一种实施方式的示例二中,当当前数据块的宽高比小于1时,确定的空域候选块检查顺序为第三遍历顺序、第五遍历顺序中的一种,但当按照空域候选块检查顺序未遍历出任何可用运动信息时,继续遍历第五空域候选块;或者,当当前数据块的宽高比小于1时,确定的空域候选块检查顺序为第七遍历顺序。
相应地,上述按照空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为候选运动信息,包括:
按照空域候选块检查顺序遍历出第一个可用运动信息之后停止遍历。
在第一种实施方式的示例三中,当运动信息预测模式为仿射合并Affine Merge模式且当当前数据块的宽高比等于1时,确定的空域候选块检查顺序为第一遍历顺序、第二遍历顺序、第三遍历顺序、第四遍历顺序、第五遍历顺序中的一种,但当按照空域候选块检查顺序未遍历出任何可用运动信息时,继续遍历第五空域候选块;或者,确定的空域候选块检查顺序为第六遍历顺序或第七遍历顺序中的一种。
相应地,上述按照空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为候选运动信息,可以包括:
按照空域候选块检查顺序遍历出第一个可用运动信息之后停止遍历。
其中,对应Affine Merger模式下的第一种实施方式和第二种实施方式的各示例,当前数据块的宽高比对空域候选块检查顺序的影响的部分实施例可以如表5所示:
表5
需要说明的是,在Affine Merge模式下,上述实施例中,未进行限定的检查顺序可以采用默认顺序,即现有视频编码标准中的顺序。例如,对于实施例Z,当宽高比等于1或小于1时,空域候选块的检查顺序可以采用默认顺序;对于实施例Z1,当宽高比大于1或小于1时,空域候选块的检查顺序可以采用默认顺序。
此外,在Affine Merge模式下,上述实施例中,当对各空域候选块进行遍历时,当遍历出第一个可用运动信息时,停止遍历。
其中,在Affine Merge模式下,空域候选块的运动信息是否可用的判断可以参见现有视频编码标准中的相关描述,本发明实施例在此不做赘述。
应该认识到,在本申请实施例中,在Affine Merge模式下,当当前数据块的宽高比大于1时,当前数据块的各空域候选块的检查顺序并不限于上述实施例中描述的顺序,也可以是其它B1排在A1前面的顺序,其余实现在此不做穷举。
同理,在Affine Merge模式下,当当前数据块的宽高比小于1时,当前数据块的各空域候选块的检查顺序也并不限于上述实施例中描述的顺序,也可以是其它A1排在B1前面的顺序,其余实现在此不做穷举。
同理,在Affine Merge模式下,当当前数据块的宽高比等于1时,当前数据块的各空域候选块的检查顺序并不限于上述实施例中描述的顺序,也可以是其它B1排在A1前面的顺序,或,其它A1排在B1前面的顺序,其余实现在此不做穷举。
下面结合附图,对上述实施例中的部分进行说明。
实施例Z3
在该实施例中,若当前数据块的宽高比大于1,则当前数据块的各空域候选块的检查顺序为:B1→A1→A0→B0→B2,其示意图可以如图4L所示。
若当前数据块的宽高比等于1,则当前数据块的各空域候选块的检查顺序为:B1→A1→B0→A0→B2,其示意图可以如图4M所示。
若当前数据块的宽高比小于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即A1→B1→B0→A0→B2,其示意图可以如图4N。
实施例Z6
在该实施例中,若当前数据块的宽高比大于1,则当前数据块的各空域候选块的检查顺序为:B1→B0→A1→A0→B2,其示意图可以如图4O所示。
若当前数据块的宽高比等于1,则当前数据块的各空域候选块的检查顺序为:B1→A1→B0→A0→B2,其示意图可以如图4M所示。
若当前数据块的宽高比小于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即A1→A0→B1→B0→B2,其示意图可以如图4P。
实施例Z15
在该实施例中,若当前数据块的宽高比大于1,则当前数据块的各空域候选块的检查顺序为:B1→A1→A0→B0→B2,其示意图可以如图4L所示。
若当前数据块的宽高比小于或等于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即A1→B1→B0→A0→B2。
实施例Z16
在该实施例中,若当前数据块的宽高比大于1,则当前数据块的各空域候选块的检查顺序为:B0→B1→B2→A1→A0,其示意图可以如图4Q所示。
若当前数据块的宽高比小于或等于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即A1→B1→B0→A0→B2。
实施例Z17
在该实施例中,若当前数据块的宽高比大于或等于1,则当前数据块的各空域候选块的检查顺序为:B1→A1→A0→B0→B2,其示意图可以如图4L所示。
若当前数据块的宽高比小于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即A1→B1→B0→A0→B2,其示意图可以如图4N。
实施例Z18
在该实施例中,若当前数据块的宽高比大于1,则当前数据块的各空域候选块的检查顺序为:B1→A1→A0→B0→B2,其示意图可以如图4L所示。
若当前数据块的宽高比小于或等于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即A1→B1→B0→A0→B2,其示意图可以如图4N。
实施例Z19
在该实施例中,若当前数据块的宽高比大于或等于1,则当前数据块的各空域候选块的检查顺序为:B1→B0→A1→A0→B2,其示意图可以如图4O所示。
若当前数据块的宽高比小于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即A1→A0→B1→B0→B2,其示意图可以如图4P。
实施例Z20
以预测模式为Affine-Merge模式为例。
在该实施例中,若当前数据块的宽高比大于1,则当前数据块的各空域候选块的检查顺序为:B1→B0→A1→A0→B2,其示意图可以如图4O所示。
若当前数据块的宽高比小于或等于1,则当前数据块的各空域候选块的检查顺序可以与现有视频编码标准中的空域候选块的检查顺序相同,即A1→A0→B1→B0→B2,其示意图可以如图4P。
可见,在上述实施例中,当当前数据块的宽高比大于1时,对上述5个空域候选块进行检查时,先检查B1,后检查A1,利用当前数据块的宽高比大于时,上侧空域候选块与当前数据块的相关度高于左侧空域候选块与当前数据块的相关度的特性,优先对相关度高的空域候选块进行检查,并按照空域候选块的检查顺序确定可用运动信息在运动信息候选者列表中的顺序,可以减少进行索引值编码时所需比特位,提高视频编码的性能;此外,在进行运动信息预测时,运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时可以减少进行预测运动信息选择的消耗,即在同样编码索引的消耗下,将相关度高的排在前面有利于提高视频编码的性能。
同理,当前数据块的宽高比小于1时,先检查A1,后检查B1,利用当前数据块的宽高比小于1时,左侧空域候选块与当前数据块的相关度高于上侧空域候选块与当前数据块的相关度的特性,减少进行索引值编码时所需比特位,提高视频编码的性能;此外,在进行运动信息预测时,运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时可以减少进行预测运动信息选择的消耗,即在同样编码索引的消耗下,将相关度高的排在前面有利于提高视频编码的性能。
二、空域候选块与聚类中心的距离对当前数据块的宽高比对空域候选块的运动信息是否可用的检查顺序,以及确定的候选运动信息在候选者列表中的排序的影响
下述实施例中,各空域候选块与聚类中心的距离,与各空域候选块与当前数据块的相关度负相关,即对于任一空域候选块,其与聚类中心的距离越远,其与当前数据块的相关度越低。
当根据相关度确定候选运动信息时,可以按照各空域候选块与聚类中心的距离从小到大的顺序,从各空域候选块中检查出的空域候选块的运动信息中确定候选运动信息。
其中,当存在多个聚类中心时,对于任一空域候选块,可以将该空域候选块与各聚类中心的距离的最小值确定该该空域候选块与聚类中心的距离。
此外,当聚类中心的运动信息与各空域候选块的运动信息均不同时,将聚类中心的运动信息确定为候选运动信息,将候选运动信息加入到当前数据块对应的运动信息候选者列表。
实施例一
以运动信息预测模式为合并模式为例
参见图4R,在该实施例中,利用当前数据块的上侧数据块和左侧数据块(已编码块)的运动信息进行聚类,例如对于64*64的数据块来说,分别利用上侧数据块1-16的运动信息和左侧数据块1-16(4*4的数据块)的运动信息,聚类得到聚类中心的运动信息;获取各空域候选块的运动信息,进而,根据聚类中心的运动信息与各空域候选块的运动信息,分别确定各空域候选块与聚类中心的距离,并根据该距离确定各候选运动信息在运动候选者列表中的排序。
其中,与聚类中心的距离越小的空域候选块对应的候选运动信息,在运动候选者列表中排序越靠前;当两个候选运动信息对应的空域候选块与聚类中心的距离相同时,该两个候选运动信息在运动候选者列表中的排序前后与现有视频编码标准中的排序相同。
此外,当聚类中心的运动信息与各空域候选块的运动信息均不同时,将该聚类中心的运动信息也确定为候选运动信息。
实施例二
以运动信息预测模式为合并模式为例
参见图4S,在该实施例中,为简化聚类的复杂度,对当前数据块的上侧数据块和左侧数据块(已编码块)的运动信息进行采样(假设采样得到的目标上侧数据块为上侧数据块2、4、6、…、16,目标左侧数据块为左侧数据块2、4、6、…、16),进行聚类,分别利用目标上侧数据块的运动信息和目标左侧数据块的运动信息,聚类得到聚类中心的运动信息;获取各空域候选块的运动信息,进而,根据聚类中心的运动信息与各空域候选块的运动信息,分别确定各空域候选块与聚类中心的距离,并根据该距离确定各候选运动信息在运动候选者列表中的排序。
其中,与聚类中心的距离越小的空域候选块对应的候选运动信息,在运动候选者列表中排序越靠前;当两个候选运动信息对应的空域候选块与聚类中心的距离相同时,该两个候选运动信息在运动信息候选者列表中的排序前后与现有视频编码标准中的排序相同。
此外,当聚类中心的运动信息与各空域候选块的运动信息均不同时,将该聚类中心的运动信息也确定为候选运动信息。
三、基于模块确定空域候选块的运动信息是否可用的检查顺序,以及确定的候选运动信息在候选者列表中的排序
实施例三
以运动信息预测模式为合并模式为例
参见图4T,在该实施例中,根据A1的运动信息,在参考帧找到模板Template1和模板Template2的匹配块,并计算与当前数据块的Template1和Template2的预测像素的差值;将该差值作为失真度量DistortionA1。其中,差值计算是逐像素进行的。
根据B1的运动信息,在参考帧找到Template1和Template2的匹配块,并计算与当前数据块的Template1和Template2的预测像素的差值;将该差值作为失真度量DistortionB1。
同理,依次计算DistortionA0,DistortionB0,DistortionB2。最后,根据Distortion从小到大的顺序将对应的候选运动信息在运动信息候选者列表中进行排序。
实施例三
以运动信息预测模式为合并模式为例
参见图4U,在该实施例中,为简化Distortion的计算,进行差值计算时,对模板进行下采样,如仅进行偶数位置的像素进行计算。
相应地,根据A1的运动信息,在参考帧找到Template1和Template2的匹配块,并计算与当前数据块的Template1和Template2的预测像素的差值;将该差值作为失真度量DistortionA1。其中,差值计算是逐像素进行的。
根据B1的运动信息,在参考帧找到Template1和Template2的匹配块,并计算与当前数据块的Template1和Template2的预测像素的差值;将该差值作为失真度量DistortionB1。
同理,依次计算DistortionA0,DistortionB0,DistortionB2。最后,根据Distortion从小到大的顺序将对应的可用候选运动信息在运动信息候选者列表中进行排序。
本申请实施例中,当进行运动信息预测时,根据当前数据块的各空域候选块与当前数据块的相关度确定候选运动信息,并根据所确定的候选运动信息构建当前数据块对应的运动信息候选者列表,提高了运动信息候选者列表构建的灵活性和效率,并提高了视频编码性能。
以上对本申请提供的方法进行了描述。下面对本申请提供的装置进行描述:
请参见图5,为本申请实施例提供的一种运动信息候选者列表构建装置的硬件结构示意图。该运动信息候选者列表构建装置可以包括处理器501、通信接口502、存储器503和通信总线504。处理器501、通信接口502以及存储器503通过通信总线504完成相互间的通信。其中,存储器503上存放有计算机程序;处理器501可以通过执行存储器503上所存放的程序,实现上文描述的运动信息候选者列表构建方法。
本文中提到的存储器503可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,存储器502可以是:RAM(Radom AccessMemory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
如图6所示,从功能上划分,上述运动信息候选者列表构建装置可以包括第一确定单元610、第二确定单元620和构建单元630;其中:
第一确定单元610,用于确定当前数据块的各空域候选块与所述当前数据块的相关度;
第二确定单元620,用于根据所述相关度,确定候选运动信息;
构建单元630,用于根据候选运动信息,构建所述当前数据块对应的运动信息候选者列表。
在一种可选的实施方式中,第一确定单元610,具体用于确定所述当前数据块的形状;根据所述当前数据块的形状确定所述当前数据块的各空域候选块与所述当前数据块的相关度。
在一种可选的实施方式中,第二确定单元620,具体用于确定与所述相关度匹配的空域候选块检查顺序;按照所述空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为所述候选运动信息。
在一种可选的实施方式中,第二确定单元620,具体用于确定所述当前数据块的运动信息预测模式;根据所述相关度、以及所述运动信息预测模式确定所述空域候选块检查顺序。
在一种可选的实施方式中,所述当前数据块的形状通过所述当前数据块的宽高比表征;
相应地,第一确定单元610,具体用于按照所述宽高比,以及所述各空域候选块和所述当前数据块的相对位置关系确定所述各空域候选块与当前数据块的相关度。
在一种可选的实施方式中,第一确定单元610,具体用于若所述当前数据块的宽高比大于1,则确定所述当前数据块的上侧空域候选块与所述当前数据块的相关度高于所述当前数据块的左侧空域候选块与所述当前数据块的相关度;或/和,
若所述当前数据块的宽高比小于1,则确定所述当前数据块的左侧空域候选块与所述当前数据块的相关度高于所述当前数据块的上侧空域候选块与所述当前数据块的相关度;
第二确定单元620,具体用于按照所述相关度的高低和各个空域候选块相对于当前数据块的位置信息,确定按照先后顺序依次遍历的各个待遍历空域候选块以及各个待遍历空域候选块的遍历次序。
在一种可选的实施方式中,当所述运动信息预测模式为合并模式时,所述空域候选块检查顺序至少包括4个空域候选块的遍历次序;所述4个空域候选块的遍历次序位于第五空域候选块之前,所述第五空域候选块为替补空域候选块;
其中,所述4个空域候选块包括第一空域候选块、第二空域候选块、第三空域候选块和第四空域候选块,其中,所述第一空域候选块为当前数据块左侧最下方的空域相邻块,所述第二空域候选块为当前数据块上侧最右侧的空域相邻块,所述第三空域候选块为与当前数据块右上角距离最近的空域相邻块,所述第四空域候选块为与当前数据块左下角距离最近的空域相邻块,所述第五空域候选块为与当前数据块左上角距离最近的空域相邻块。
在一种可选的实施方式中,当所述运动信息预测模式为合并模式,且所述当前数据块的宽高比大于1时,所述4个空域候选块的遍历次序为第一遍历顺序,所述第一遍历顺序为依次遍历所述第二空域候选块,所述第一空域候选块,所述第四空域候选块和所述第三空域候选块。
在一种可选的实施方式中,当所述运动信息预测模式为合并模式,且所述当前数据块的宽高比小于1时,所述4个空域候选块的遍历次序为第三遍历顺序,所述第三遍历顺序为依次遍历所述第一空域候选块,所述第二空域候选块,所述第三空域候选块和所述第四空域候选块。
在一种可选的实施方式中,当所述运动信息预测模式为合并模式,且所述当前数据块的宽高比等于1时,所述4个空域候选块的遍历次序为第二遍历顺序,所述第二遍历顺序为依次遍历所述第二空域候选块,所述第一空域候选块,所述第三空域候选块和所述第四空域候选块。
在一种可选的实施方式中,当所述运动信息预测模式为合并模式,且所述当前数据块的宽高比大于1时,所述4个空域候选块的遍历次序为第四遍历顺序,所述第四遍历顺序为依次遍历所述第二空域候选块,所述第三空域候选块,所述第一空域候选块和所述第四空域候选块。
在一种可选的实施方式中,当所述运动信息预测模式为合并模式,且所述当前数据块的宽高比小于1时,所述4个空域候选块的遍历次序为第五遍历顺序,所述第五遍历顺序为依次遍历所述第一空域候选块,所述第四空域候选块,所述第二空域候选块和所述第三空域候选块。
在一种可选的实施方式中,当所述运动信息预测模式为合并模式,且所述当前数据块的宽高比等于1时,所述4个空域候选块的遍历次序为第一遍历顺序、第三遍历顺序、所述第四遍历顺序和所述第五遍历顺序中的一种,其中,所述第一遍历顺序为依次遍历所述第二空域候选块,所述第一空域候选块,所述第四空域候选块和所述第三空域候选块;所述第三遍历顺序为依次遍历所述第一空域候选块,所述第二空域候选块,所述第三空域候选块和所述第四空域候选块。
在一种可选的实施方式中,当所述运动信息预测模式为合并模式时,确定的所述空域候选块检查顺序位于时域候选块的前面,且所述空域候选块检查顺序至少包括5个空域候选块的遍历次序;
其中,所述5个空域候选块包括第一空域候选块、第二空域候选块、第三空域候选块、第四空域候选块和第五空域候选块,其中,所述第一空域候选块为当前数据块左侧最下方的空域相邻块,所述第二空域候选块为当前数据块上侧最右侧的空域相邻块,所述第三空域候选块为与当前数据块右上角距离最近的空域相邻块,所述第四空域候选块为与当前数据块左下角距离最近的空域相邻块,所述第五空域候选块为与当前数据块左上角距离最近的空域相邻块。
在一种可选的实施方式中,当所述运动信息预测模式为合并模式,且所述当前数据块的宽高比大于1时,所述5个空域候选块的遍历次序为第六遍历顺序,所述第六遍历顺序为依次遍历所述第三空域候选块、所述第二空域候选块、所述第五空域候选块、所述第一空域候选块和所述第四空域候选块。
在一种可选的实施方式中,当所述运动信息预测模式为合并模式,且所述当前数据块的宽高比小于1时,所述5个空域候选块的遍历次序为第七遍历顺序,所述第七遍历顺序为依次遍历所述第一空域候选块、所述第四空域候选块、所述第三空域候选块、所述第二空域候选块和所述第五空域候选块。
在一种可选的实施方式中,当所述运动信息预测模式为合并模式,且所述当前数据块的宽高比等于1时,确定的所述空域候选块检查顺序,与当所述当前数据块的宽高比大于1时相同;或者,
当所述运动信息预测模式为合并模式,且所述当前数据块的宽高比等于1时,确定的所述空域候选块检查顺序与当所述当前数据块的宽高比小于1时相同。
在一种可选的实施方式中,第二确定单元620,具体用于按照确定的所述空域候选块检查顺序,遍历出所述第一空域候选块,所述第二空域候选块,所述第三空域候选块、所述第四空域候选块和所述第五空域候选块中的可用运动信息,将遍历出的所有可用运动信息确定为所述候选运动信息;
构建单元630,具体用于按照所述空域候选块检查顺序,确定所有可用运动信息在所述运动信息候选者列表中的顺序。
在一种可选的实施方式中,当所述运动信息预测模式为AMVP模式时,确定的所述空域候选块检查顺序至少包括第八遍历顺序和第九遍历顺序,所述第八遍历顺序用于进行当前数据块的上侧空域候选块的遍历,所述第九遍历顺序用于进行当前数据块的左侧空域候选块的遍历;所述上侧空域候选块包括:第三空域候选块、第二空域候选块和第五空域候选块;所述左侧空域候选块包括:第四空域候选块和第一空域候选块;
所述第八遍历顺序为依次遍历第三空域候选块、第二空域候选块和第五空域候选块;
所述第九遍历顺序为依次遍历第四空域候选块和第一空域候选块。
在一种可选的实施方式中,第二确定单元620,具体用于当前数据块的宽高比大于1时,先按照所述第八遍历顺序遍历所述上侧空域候选块,再按照所述第九遍历顺序遍历所述左侧空域候选块;将遍历出的所有可用运动信息确定为所述候选运动信息。
在一种可选的实施方式中,第二确定单元620,具体用于当前数据块的宽高比小于1时,先按照所述第九遍历顺序遍历所述左侧空域候选块,再按照所述第八遍历顺序遍历所述上侧空域候选块;
将遍历出的所有可用运动信息确定为所述候选运动信息。
在一种可选的实施方式中,当所述运动信息预测模式为AMVP模式时,确定的所述空域候选块检查顺序至少包括第十遍历顺序和第十一遍历顺序,所述第十遍历顺序用于进行当前数据块的上侧空域候选块的遍历,所述第十一遍历顺序用于进行当前数据块的左侧空域候选块的遍历;所述上侧空域候选块包括:第三空域候选块和第二空域候选块;所述左侧空域候选块包括:第四空域候选块、第一空域候选块和第五空域候选块;
所述第十遍历顺序为依次遍历所述第三空域候选块和所述第二空域候选块;
所述第十一遍历顺序为依次遍历所述第四空域候选块、所述第一空域候选块和第五空域候选块。
在一种可选的实施方式中,第二确定单元620,具体用于当所述当前数据块的宽高比大于1时,先按照所述第十遍历顺序遍历所述上侧空域候选块,再按照所述第十一遍历顺序遍历所述左侧空域候选块;
将遍历出的所有可用运动信息确定为所述候选运动信息。
在一种可选的实施方式中,第二确定单元620,具体用于当所述当前数据块的宽高比小于1时,先按照所述第十一遍历顺序遍历所述左侧空域候选块,再按照所述第十遍历顺序遍历所述上侧空域候选块;
将遍历出的所有可用运动信息确定为所述候选运动信息。
在一种可选的实施方式中,当所述当前数据块的宽高比等于1时,确定的所述空域候选块检查顺序,以及所述按照所述空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为所述候选运动信息的方式与当所述当前数据块的宽高比大于1时相同;或者,
当所述当前数据块的宽高比等于1时,确定的所述空域候选块检查顺序,以及所述按照所述空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为所述候选运动信息的方式与当所述当前数据块的宽高比小于1时相同。
在一种可选的实施方式中,当所述运动信息预测模式为Affine Merge模式且所述当前数据块的宽高比大于1时,确定的所述空域候选块检查顺序为第一遍历顺序、第三遍历顺序和第四遍历顺序中的一种,但当按照所述空域候选块检查顺序未遍历出任何可用运动信息时,继续遍历第五空域候选块;或者,确定的所述空域候选块检查顺序为第六遍历顺序。
相应地,第二确定单元620,具体用于按照所述空域候选块检查顺序遍历出第一个可用运动信息之后停止遍历。
在一种可选的实施方式中,当所述运动信息预测模式为Affine Merge模式且所述当前数据块的宽高比小于1时,确定的所述空域候选块检查顺序为第三遍历顺序、第五遍历顺序中的一种,但当按照所述空域候选块检查顺序未遍历出任何可用运动信息时,继续遍历第五空域候选块;或者,确定的所述空域候选块检查顺序为第七遍历顺序。
相应地,第二确定单元620,具体用于按照所述空域候选块检查顺序遍历出第一个可用运动信息之后停止遍历。
在一种可选的实施方式中,当所述运动信息预测模式为Affine Merge模式且当所述当前数据块的宽高比等于1时,确定的所述空域候选块检查顺序为第一遍历顺序、第二遍历顺序、第三遍历顺序、第四遍历顺序、第五遍历顺序中的一种,但当按照所述空域候选块检查顺序未遍历出任何可用运动信息时,继续遍历第五空域候选块;或者,确定的所述空域候选块检查顺序为第六遍历顺序或第七遍历顺序中的一种。
相应地,第二确定单元620,具体用于按照所述空域候选块检查顺序遍历出第一个可用运动信息之后停止遍历。
在一种可选的实施方式中,如图7所示,所述运动信息候选者列表构建装置还可以包括:聚类单元640;其中:
聚类单元640,用于对所述当前数据块的上侧数据块或/和左侧数据块的运动信息进行聚类,以得到聚类中心的运动信息;
第一确定单元610,具体用于根据所述聚类中心的运动信息,以及各空域候选块的运动信息,确定所述各空域候选块与所述聚类中心的距离;根据所述各空域候选块与所述聚类中心的距离,确定各空域候选块与所述当前数据块的相关度。
在一种可选的实施方式中,聚类单元640,具体用于按照预设采样规则对所述当前数据块的上侧数据块或/和左侧数据块的运动信息进行采样,以得到目标上侧数据块或/和目标左侧数据块;对所述目标上侧数据块或/和目标左侧数据块进行聚类
在一种可选的实施方式中,当存在多个聚类中心时,对于任一空域候选块,将该空域候选块与该多个聚类中心的距离中的最小值,确定为该空域候选块与所述聚类中心的距离。
在一种可选的实施方式中,所述各空域候选块与所述聚类中心的距离,与所述各空域候选块与所述当前数据块的相关度负相关。
相应地,第二确定单元620,具体用于按照所述各空域候选块与所述聚类中心的距离从小到大的顺序,从各空域候选块中检查出的空域候选块的运动信息中确定所述候选运动信息。
在一种可选的实施方式中,第二确定单元620,具体用于当所述聚类中心的运动信息与所述各空域候选块的运动信息均不同时,将所述聚类中心的运动信息确定为所述候选运动信息,将所述候选运动信息加入到所述当前数据块对应的运动信息候选者列表。
本申请实施例还提供了一种存储有计算机程序的机器可读存储介质,例如图5中的存储器503,所述计算机程序可由图5所示运动信息候选者列表构建装置中的处理器501执行上文描述的运动信息候选者列表构建方法。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (17)
1.一种运动信息候选者列表构建方法,其特征在于,包括:
根据当前数据块的各空域候选块和所述当前数据块的相对位置,确定所述各空域候选块与所述当前数据块的相关度;
确定与所述相关度匹配的空域候选块检查顺序;所述确定与所述相关度匹配的空域候选块检查顺序,包括:当预测模式为合并模式或仿射合并模式,且所述当前数据块的宽高比大于1时,所述空域候选块检查顺序包括5个空域候选块的遍历次序;所述5个空域候选块包括空域候选块B1、空域候选块A1、空域候选块B0、空域候选块A0和空域候选块B2,所述5个空域候选块中最先遍历的前两个空域候选块为空域候选块B1和空域候选块A1,空域候选块B1的检查顺序先于空域候选块A1;
按照所述空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为候选运动信息;根据所述候选运动信息,构建所述当前数据块对应的运动信息候选者列表;
其中,所述空域候选块A1为当前图像块左侧最下方的空域相邻块,所述空域候选块B1为当前图像块上方最右侧的空域相邻块,所述空域候选块B0为与当前图像块右上角距离最近的空域相邻块,所述空域候选块A0为与当前图像块左下角距离最近的空域相邻块,所述空域候选块B2为与当前图像块左上角距离最近的空域相邻块。
2.根据权利要求1所述的方法,其特征在于,所述确定与所述相关度匹配的空域候选块检查顺序,包括:
确定所述当前数据块的预测模式;
根据所述相关度、以及所述预测模式确定所述空域候选块检查顺序。
3.根据权利要求1所述的方法,其特征在于,所述空域候选块检查顺序包括4个空域候选块的遍历次序;所述4个空域候选块包括空域候选块B1、空域候选块A1、空域候选块B0和空域候选块A0,所述4个空域候选块中最先遍历的前两个空域候选块为空域候选块B1和空域候选块A1,空域候选块B1的检查顺序先于空域候选块A1。
4.根据权利要求3所述的方法,其特征在于,当预测模式为合并模式且所述当前数据块的宽高比等于1时,所述空域候选块检查顺序包括4个空域候选块的遍历次序,所述空域候选块检查顺序为:空域候选块B1-空域候选块A1-空域候选块B0-空域候选块A0。
5.根据权利要求4所述的方法,其特征在于,当所述预测模式为合并模式且所述当前数据块的宽高比等于1时,所述空域候选块检查顺序包括5个空域候选块的遍历次序,所述空域候选块检查顺序为:空域候选块B1-空域候选块A1-空域候选块B0-空域候选块A0-空域候选块B2,所述空域候选块B2在所述空域候选块检查顺序的前四个空域候选块的至少一个空域运动信息不可用时进行检查。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述按照所述空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为所述候选运动信息,包括:
按照确定的所述空域候选块检查顺序,遍历出各个空域候选块的可用运动信息,将遍历出的可用运动信息作为所述候选运动信息加入所述当前数据块对应的运动信息候选者列表。
7.根据权利要求6所述的方法,其特征在于,所述当前数据块对应的运动信息候选者列表中还包括遍历到的时域候选运动信息。
8.一种编码装置,其特征在于,包括:第一确定单元、第二确定单元和构建单元;其中:
第一确定单元,用于确定根据当前数据块的各空域候选块和所述当前数据块的相对位置,确定所述各空域候选块与所述当前数据块的相关度;
第二确定单元,用于确定与所述相关度匹配的空域候选块检查顺序,并按照所述空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为候选运动信息;
构建单元,用于根据所述候选运动信息,构建所述当前数据块对应的运动信息候选者列表;
其中,所述第二确定单元,具体用于当预测模式为合并模式或仿射合并模式,且所述当前数据块的宽高比大于1时,确定所述空域候选块检查顺序包括5个空域候选块的遍历次序;所述5个空域候选块包括空域候选块B1、空域候选块A1、空域候选块B0、空域候选块A0和空域候选块B2,所述5个空域候选块中最先遍历的前两个空域候选块为空域候选块B1和空域候选块A1,空域候选块B1的检查顺序先于空域候选块A1;
所述空域候选块A1为当前图像块左侧最下方的空域相邻块,所述空域候选块B1为当前图像块上方最右侧的空域相邻块,所述空域候选块B0为与当前图像块右上角距离最近的空域相邻块,所述空域候选块A0为与当前图像块左下角距离最近的空域相邻块,所述空域候选块B2为与当前图像块左上角距离最近的空域相邻块。
9.一种解码装置,其特征在于,包括:第一确定单元、第二确定单元和构建单元;其中:
第一确定单元,用于根据当前数据块的各空域候选块和所述当前数据块的相对位置,确定所述各空域候选块与所述当前数据块的相关度;
第二确定单元,用于确定与所述相关度匹配的空域候选块检查顺序,并按照所述空域候选块检查顺序,将从各空域候选块中检查出的空域候选块的运动信息确定为候选运动信息;
构建单元,用于根据所述候选运动信息,构建所述当前数据块对应的运动信息候选者列表;
其中,所述第二确定单元,具体用于当预测模式为合并模式或仿射合并模式,且所述当前数据块的宽高比大于1时,确定所述空域候选块检查顺序包括5个空域候选块的遍历次序;所述5个空域候选块包括空域候选块B1、空域候选块A1、空域候选块B0、空域候选块A0和空域候选块B2,所述5个空域候选块中最先遍历的前两个空域候选块为空域候选块B1和空域候选块A1,空域候选块B1的检查顺序先于空域候选块A1;
所述空域候选块A1为当前图像块左侧最下方的空域相邻块,所述空域候选块B1为当前图像块上方最右侧的空域相邻块,所述空域候选块B0为与当前图像块右上角距离最近的空域相邻块,所述空域候选块A0为与当前图像块左下角距离最近的空域相邻块,所述空域候选块B2为与当前图像块左上角距离最近的空域相邻块。
10.根据权利要求9所述的解码装置,其特征在于,
所述第二确定单元,具体用于确定所述当前数据块的预测模式;根据所述相关度、以及所述预测模式确定所述空域候选块检查顺序。
11.根据权利要求9所述的解码装置,其特征在于,所述空域候选块检查顺序包括4个空域候选块的遍历次序;所述4个空域候选块包括空域候选块B1、空域候选块A1、空域候选块B0和空域候选块A0,所述4个空域候选块中最先遍历的前两个空域候选块为空域候选块B1和空域候选块A1,空域候选块B1的检查顺序先于空域候选块A1。
12.根据权利要求11所述的解码装置,其特征在于,当预测模式为合并模式且所述当前数据块的宽高比等于1时,所述空域候选块检查顺序包括4个空域候选块的遍历次序,所述空域候选块检查顺序为:空域候选块B1-空域候选块A1-空域候选块B0-空域候选块A0。
13.根据权利要求12所述的解码装置,其特征在于,当所述预测模式为合并模式且所述当前数据块的宽高比等于1时,所述空域候选块检查顺序包括5个空域候选块的遍历次序,所述空域候选块检查顺序为:空域候选块B1-空域候选块A1-空域候选块B0-空域候选块A0-空域候选块B2,所述空域候选块B2在所述空域候选块检查顺序的前四个空域候选块的至少一个空域运动信息不可用时进行检查。
14.根据权利要求9-13任一项所述的解码装置,其特征在于,
所述第二确定单元,具体用于按照确定的所述空域候选块检查顺序,遍历出各个空域候选块的可用运动信息,将遍历出的所有可用运动信息作为所述候选运动信息加入所述当前数据块对应的运动信息候选者列表。
15.根据权利要求14所述的解码装置,其特征在于,所述当前数据块对应的运动信息候选者列表中还包括遍历到的时域候选运动信息。
16.一种解码装置,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一所述的方法步骤。
17.一种编码装置,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911129453.3A CN110933414B (zh) | 2018-06-29 | 2018-06-29 | 运动信息候选者列表构建方法、装置及可读存储介质 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911129453.3A CN110933414B (zh) | 2018-06-29 | 2018-06-29 | 运动信息候选者列表构建方法、装置及可读存储介质 |
CN201810714334.3A CN110662072B (zh) | 2018-06-29 | 2018-06-29 | 运动信息候选者列表构建方法、装置及可读存储介质 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810714334.3A Division CN110662072B (zh) | 2018-06-29 | 2018-06-29 | 运动信息候选者列表构建方法、装置及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110933414A CN110933414A (zh) | 2020-03-27 |
CN110933414B true CN110933414B (zh) | 2022-07-29 |
Family
ID=69027216
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911129453.3A Active CN110933414B (zh) | 2018-06-29 | 2018-06-29 | 运动信息候选者列表构建方法、装置及可读存储介质 |
CN201810714334.3A Active CN110662072B (zh) | 2018-06-29 | 2018-06-29 | 运动信息候选者列表构建方法、装置及可读存储介质 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810714334.3A Active CN110662072B (zh) | 2018-06-29 | 2018-06-29 | 运动信息候选者列表构建方法、装置及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN110933414B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111698506B (zh) | 2019-03-11 | 2022-04-26 | 杭州海康威视数字技术股份有限公司 | 运动信息候选者列表构建方法、三角预测解码方法及装置 |
WO2021196238A1 (zh) * | 2020-04-03 | 2021-10-07 | 深圳市大疆创新科技有限公司 | 一种视频处理方法、视频处理设备及计算机可读存储介质 |
CN111953974B (zh) * | 2020-08-26 | 2021-08-27 | 珠海大横琴科技发展有限公司 | 一种运动参数候选列表构建方法、装置及计算机设备 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9036692B2 (en) * | 2010-01-18 | 2015-05-19 | Mediatek Inc. | Motion prediction method |
KR101768207B1 (ko) * | 2010-01-19 | 2017-08-16 | 삼성전자주식회사 | 축소된 예측 움직임 벡터의 후보들에 기초해 움직임 벡터를 부호화, 복호화하는 방법 및 장치 |
US9124898B2 (en) * | 2010-07-12 | 2015-09-01 | Mediatek Inc. | Method and apparatus of temporal motion vector prediction |
US8824558B2 (en) * | 2010-11-23 | 2014-09-02 | Mediatek Inc. | Method and apparatus of spatial motion vector prediction |
CN102611881B (zh) * | 2011-01-19 | 2014-06-25 | 华为技术有限公司 | 参考运动矢量获取方法、模块及编、解码装置 |
US8755437B2 (en) * | 2011-03-17 | 2014-06-17 | Mediatek Inc. | Method and apparatus for derivation of spatial motion vector candidate and motion vector prediction candidate |
US10171813B2 (en) * | 2011-02-24 | 2019-01-01 | Qualcomm Incorporated | Hierarchy of motion prediction video blocks |
JP2012253482A (ja) * | 2011-06-01 | 2012-12-20 | Sony Corp | 画像処理装置および方法、記録媒体、並びにプログラム |
TW201626802A (zh) * | 2011-09-28 | 2016-07-16 | Jvc Kenwood Corp | 動態影像編碼裝置、動態影像編碼方法、動態影像編碼程式、送訊裝置、送訊方法及送訊程式、以及動態影像解碼裝置、動態影像解碼方法、動態影像解碼程式、收訊裝置、收訊方法及收訊程式 |
KR20130045785A (ko) * | 2011-10-26 | 2013-05-06 | 경희대학교 산학협력단 | 메모리 관리 방법 및 그를 이용한 복호화 장치 |
TWI607650B (zh) * | 2011-12-28 | 2017-12-01 | Jvc Kenwood Corp | Motion picture decoding apparatus, motion picture decoding method, and motion picture decoding program |
TWI653878B (zh) * | 2011-12-28 | 2019-03-11 | Jvc建伍股份有限公司 | 動態影像解碼裝置、動態影像解碼方法及記錄有動態影像解碼程式的記錄媒體 |
CN105723713A (zh) * | 2013-12-19 | 2016-06-29 | 夏普株式会社 | 合并候选导出装置、图像解码装置以及图像编码装置 |
CN106534858B (zh) * | 2015-09-10 | 2019-09-06 | 展讯通信(上海)有限公司 | 真实运动估计方法及装置 |
WO2017156705A1 (en) * | 2016-03-15 | 2017-09-21 | Mediatek Inc. | Affine prediction for video coding |
RU2696551C1 (ru) * | 2016-03-15 | 2019-08-02 | МедиаТек Инк. | Способ и устройство для кодирования видео с компенсацией аффинного движения |
US10560718B2 (en) * | 2016-05-13 | 2020-02-11 | Qualcomm Incorporated | Merge candidates for motion vector prediction for video coding |
CN106331723B (zh) * | 2016-08-18 | 2019-12-13 | 上海交通大学 | 一种基于运动区域分割的视频帧率上变换方法及系统 |
-
2018
- 2018-06-29 CN CN201911129453.3A patent/CN110933414B/zh active Active
- 2018-06-29 CN CN201810714334.3A patent/CN110662072B/zh active Active
Non-Patent Citations (2)
Title |
---|
HEVC中Merge模式候选决策的探究和优化;辛亚坤;《微型机与应用》;20160810(第15期);全文 * |
Modification of the merge candidate list for dependent views in 3D-HEVC;E-G. Mora等;《 2013 IEEE International Conference on Image Processing》;20140213;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110662072B (zh) | 2022-04-26 |
CN110662072A (zh) | 2020-01-07 |
CN110933414A (zh) | 2020-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110809161B (zh) | 运动信息候选者列表构建方法及装置 | |
US20200145689A1 (en) | Picture prediction method and picture prediction apparatus | |
US20170374379A1 (en) | Picture prediction method and related apparatus | |
US9451266B2 (en) | Optimal intra prediction in block-based video coding to calculate minimal activity direction based on texture gradient distribution | |
US9106922B2 (en) | Motion estimation engine for video encoding | |
CN110933414B (zh) | 运动信息候选者列表构建方法、装置及可读存储介质 | |
CN109804627A (zh) | 图像编码/解码方法和设备 | |
CN103079071A (zh) | 视频解码器 | |
US10785498B2 (en) | System and method of mapping multiple reference frame motion estimation on multi-core DSP architecture | |
WO2011095259A1 (en) | Selecting predicted motion vector candidates | |
CN109889827B (zh) | 帧内预测编码方法、装置、电子设备及计算机存储介质 | |
CN112055203B (zh) | 帧间预测方法、视频编码方法及其相关装置 | |
CN107360433A (zh) | 一种帧间预测编码方法和装置 | |
KR20190088557A (ko) | 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 | |
CN113225555B (zh) | 一种视频编解码中的几何划分模式预测方法及装置 | |
CN109565595A (zh) | 一种使用基于分割的视频编码块划分的视频编码设备和方法 | |
CN110933439B (zh) | 运动信息候选者列表构建方法、装置及可读存储介质 | |
CN111901590A (zh) | 一种用于帧间预测的细化运动矢量存储方法及装置 | |
US20120106638A1 (en) | Decoder-Side Motion Derivation with Motion Vector Predictors | |
JP6390275B2 (ja) | 符号化回路、符号化方法 | |
CN103796026A (zh) | 一种基于双参考帧的运动估计方法 | |
CN111669592B (zh) | 一种编解码方法、装置及其设备 | |
CN112702598B (zh) | 基于位移操作进行编解码的方法、装置、电子设备及介质 | |
CN116074533B (zh) | 运动矢量预测方法、系统、电子设备及存储介质 | |
CN113453008B (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 |