首页 / 专利库 / 视听技术与设备 / 运动补偿预测 / 运动信息候选者列表构建方法及装置

运动信息候选者列表构建方法及装置

阅读:763发布:2020-05-14

专利汇可以提供运动信息候选者列表构建方法及装置专利检索,专利查询,专利分析的服务。并且本 申请 提供一种运动信息候选者列表构建方法及装置,该方法包括:确定当前图像 块 的各 空域 候选块的检查顺序;其中,当前图像块的上方空域候选块的检查顺序优于当前图像块的左侧空域候选块的检查顺序;根据所述检查顺序,确定空域候选运动信息;根据所述空域候选运动信息,构建所述当前图像块对应的运动信息候选者列表。该方法可以减少编码消耗,提高编码性能。,下面是运动信息候选者列表构建方法及装置专利的具体信息内容。

1.一种运动信息候选者列表构建方法,其特征在于,包括:
确定当前图像的各空域候选块的检查顺序;其中,当前图像块的上方空域候选块的检查顺序优于当前图像块的左侧空域候选块的检查顺序;
根据所述检查顺序,获取可用的空域候选运动信息;
根据获取的所述空域候选运动信息,构建所述当前图像块对应的运动信息候选者列表。
2.根据权利要求1所述的方法,其特征在于,所述确定当前图像块的各空域候选块的检查顺序,包括:
确定所述当前图像块的预测模式;
根据所述预测模式确定当前图像块的各空域候选块的检查顺序。
3.根据权利要求2所述的方法,其特征在于,所述根据所述预测模式确定当前图像块的各空域候选块的检查顺序,包括:
当所述预测模式为合并模式时,所述检查顺序包括4个空域候选块的遍历次序;所述4个空域候选块包括空域候选块B1、空域候选块A1、空域候选块B0和空域候选块A0,所述4个空域候选块中最先遍历的前两个空域候选块为空域候选块B1和空域候选块A1,空域候选块B1的检查顺序优于空域候选块A1。
4.根据权利要求2所述的方法,其特征在于,所述根据所述预测模式确定当前图像块的各空域候选块的检查顺序,包括:
当所述预测模式为三预测模式时,所述检查顺序包括4个空域候选块的遍历次序;所述4个空域候选块包括空域候选块B1、空域候选块A1、空域候选块B0和空域候选块A0,所述4个空域候选块中最先遍历的前两个空域候选块为空域候选块B1和空域候选块A1,空域候选块B1的检查顺序优于空域候选块A1。
5.根据权利要求2所述的方法,其特征在于,所述根据所述预测模式确定当前图像块的各空域候选块的检查顺序,包括:
当所述预测模式为IBC模式时,所述检查顺序包括2个空域候选块的遍历次序;所述2个空域候选块包括空域候选块B1和空域候选块A1,空域候选块B1的检查顺序优于空域候选块A1。
6.根据权利要求2所述的方法,其特征在于,所述根据所述预测模式确定当前图像块的各空域候选块的检查顺序,包括:
当所述预测模式为合并模式时,所述检查顺序包括5个空域候选块的遍历次序,所述5个空域候选块包括空域候选块B1、空域候选块A1、空域候选块B0、空域候选块A0和替补空域候选块B2,所述5个空域候选块中最先遍历的前两个空域候选块为空域候选块B1和空域候选块A1,空域候选块B1的检查顺序优于空域候选块A1,所述空域候选块B1、空域候选块A1、空域候选块B0和空域候选块A0的遍历次序位于所述替补空域候选块B2之前,所述替补空域候选块B2在所述检查次序的前四个空域候选块的至少一个空域运动信息不可获取时进行检查。
7.根据权利要求2所述的方法,其特征在于,所述根据所述预测模式确定当前图像块的各空域候选块的检查顺序,包括:
当所述预测模式为三角预测模式时,所述检查顺序包括5个空域候选块的遍历次序,所述5个空域候选块包括空域候选块B1、空域候选块A1、空域候选块B0、空域候选块A0和替补空域候选块B2,所述5个空域候选块中最先遍历的前两个空域候选块为空域候选块B1和空域候选块A1,空域候选块B1的检查顺序优于空域候选块A1,所述空域候选块B1、空域候选块A1、空域候选块B0和空域候选块A0的遍历次序位于所述替补空域候选块B2之前,所述替补空域候选块B2在所述检查次序的前四个空域候选块的至少一个空域运动信息不可获取时进行检查。
8.根据权利要求1-7任一项所述的方法,其特征在于,当所述预测模式为合并模式时,构建所述当前图像块对应的运动信息候选者列表,包括:
按照所述检查顺序检查当前图像块的各空域候选块,以获取可用的空域候选运动信息,并将所获取的空域候选运动信息加入到运动信息候选者列表中;
确定时域候选运动信息,并将所确定的时域候选运动信息加入到运动信息候选者列表中;
若运动信息候选者列表中候选运动信息的数量不足,则基于已编码/解码块的运动信息构建已编码/解码块的运动信息列表,并从该已编码/解码块的运动信息列表中获取运动信息作为候选运动信息加入到运动信息候选者列表中;
若运行信息候选者列表中候选运动信息的数量仍不足,按照以下方式的其中一种或多种进行补足:
方式一:对运动信息候选者列表中的已有运动信息进行加权,并将加权后的运动信息作为候选运动信息加入所述当前图像块的运动信息候选者列表;
方式二:通过缺省运动信息补足。
9.根据权利要求1-7任一项所述的方法,其特征在于,当所述预测模式为三角预测模式时,构建所述当前图像块对应的运动信息候选者列表,包括:
按照所述检查顺序检查当前图像块的各空域候选块,以获取可用的空域候选运动信息,并将所获取的空域候选运动信息加入到运动信息候选者列表中;
确定时域候选运动信息,并将所确定的时域候选运动信息加入到运动信息候选者列表中;
若运动信息候选者列表中候选运动信息的数量不足,则基于已编码/解码块的运动信息构建已编码/解码块的运动信息列表,并从该已编码/解码块的运动信息列表中获取运动信息作为候选运动信息加入到运动信息候选者列表中;
若运动信息候选者列表中候选运动信息的数量仍不足,按照以下方式的其中一种或多种进行补足:
方式一:对运动信息候选者列表中的已有运动信息进行加权,并将加权后的运动信息作为候选运动信息加入所述当前图像块的运动信息候选者列表;
方式二:通过缺省运动信息补足;
其中,若候选运动信息为双向运动信息,则将双向运动信息的前向运动信息和后向运动信息中的至少一个作为单向运动信息加入运动信息候选者列表。
10.根据权利要求8或9所述方法,其特征在于,所述对运动信息候选者列表中的已有运动信息进行加权,并将加权后的运动信息作为候选运动信息加入所述当前图像块的运动信息候选者列表,包括:
获取运动信息候选者列表中的前两个候选运动信息;
将前两个候选运动信息进行加权后得到的加权候选运动信息加入运动信息候选者列表。
11.根据权利要求1-7任一项所述的方法,其特征在于,当所述预测模式为IBC模式时,构建所述当前图像块对应的运动信息候选者列表,包括:
按照所述检查顺序检查当前图像块的各空域候选块,以获取可用的空域候选运动信息,并将所获取的空域候选运动信息加入到运动信息候选者列表中;
若运动信息候选者列表中候选运动信息的数量不足,则基于已编码/解码块的运动信息构建已编码/解码块的运动信息列表,并从该已编码/解码块的运动信息列表中获取运动信息作为候选运动信息加入到运动信息候选者列表中;和/或
若运动信息候选者列表中候选运动信息的数量仍不足,则通过缺省运动信息补足。
12.根据权利要求1-7任一项所述的方法,其特征在于,若所述预测模式为三角预测模式,所述方法还包括:
解析当前图像块的三角子块的划分信息;
解析所述当前图像块的三角子块对应的运动信息在列表中的索引值;
基于所述划分信息对所述当前图像块进行子块划分;
基于所述索引值,从所述运动信息候选者列表中获取所述图像块的三角子块对应的运动信息;
基于所述图像块的三角子块对应的运动信息,对所述当前图像块进行运动补偿,获得当前图像块的预测运动信息。
13.根据权利要求3-7中任一项所述的方法,其特征在于,所述空域候选块A1为当前图像块左侧最下方的空域相邻块,所述空域候选块B1为当前图像块上方最右侧的空域相邻块,所述空域候选块B0为与当前图像块右上角距离最近的空域相邻块,所述空域候选块A0为与当前图像块左下角距离最近的空域相邻块。
14.根据权利要求6或7所述的方法,其特征在于,所述替补空域候选块B2为与当前图像块左上角距离最近的空域相邻块。
15.一种编码装置,其特征在于,包括:第一确定单元、第二确定单元和构建单元;其中:
第一确定单元,用于确定当前图像块的各空域候选块的检查顺序;其中,当前图像块的上方空域候选块的检查顺序优于当前图像块的左侧空域候选块的检查顺序;
第二确定单元,用于根据所述检查顺序,获取可用的空域候选运动信息;
构建单元,用于根据获取的所述空域候选运动信息,构建所述当前图像块对应的运动信息候选者列表。
16.一种解码装置,其特征在于,包括:第一确定单元、第二确定单元和构建单元;其中:
第一确定单元,用于确定当前图像块的各空域候选块的检查顺序;其中,当前图像块的上方空域候选块的检查顺序优于当前图像块的左侧空域候选块的检查顺序;
第二确定单元,用于根据所述检查顺序,获取可用的空域候选运动信息;
构建单元,用于根据获取的所述空域候选运动信息,构建所述当前图像块对应的运动信息候选者列表。
17.根据权利要求16所述的解码装置,其特征在于,
所述第一确定单元,具体用于确定所述当前图像块的预测模式;根据所述预测模式确定当前图像块的各空域候选块的检查顺序。
18.根据权利要求17所述的解码装置,其特征在于,当所述预测模式为合并模式时,所述检查顺序包括4个空域候选块的遍历次序;所述4个空域候选块包括空域候选块B1、空域候选块A1、空域候选块B0和空域候选块A0,所述4个空域候选块中最先遍历的前两个空域候选块为空域候选块B1和空域候选块A1,空域候选块B1的检查顺序优于空域候选块A1。
19.根据权利要求17所述的解码装置,其特征在于,当所述预测模式为三角预测模式时,所述检查顺序包括4个空域候选块的遍历次序;所述4个空域候选块包括空域候选块B1、空域候选块A1、空域候选块B0和空域候选块A0,所述4个空域候选块中最先遍历的前两个空域候选块为空域候选块B1和空域候选块A1,空域候选块B1的检查顺序优于空域候选块A1。
20.根据权利要求17所述的解码装置,其特征在于,当所述预测模式为IBC模式时,所述检查顺序包括2个空域候选块的遍历次序;所述2个空域候选块包括空域候选块B1和空域候选块A1,空域候选块B1的检查顺序优于空域候选块A1。
21.根据权利要求17所述的解码装置,其特征在于,当所述预测模式为合并模式时,所述检查顺序包括5个空域候选块的遍历次序,所述5个空域候选块包括空域候选块B1、空域候选块A1、空域候选块B0、空域候选块A0和替补空域候选块B2,所述5个空域候选块中最先遍历的前两个空域候选块为空域候选块B1和空域候选块A1,空域候选块B1的检查顺序优于空域候选块A1,所述空域候选块B1、空域候选块A1、空域候选块B0和空域候选块A0的遍历次序位于所述替补空域候选块B2之前,所述替补空域候选块B2在所述检查次序的前四个空域候选块的至少一个空域运动信息不可获取时进行检查。
22.根据权利要求17所述的解码装置,其特征在于,当所述预测模式为三角预测模式时,所述检查顺序包括5个空域候选块的遍历次序,所述5个空域候选块包括空域候选块B1、空域候选块A1、空域候选块B0、空域候选块A0和替补空域候选块B2,所述5个空域候选块中最先遍历的前两个空域候选块为空域候选块B1和空域候选块A1,空域候选块B1的检查顺序优于空域候选块A1,所述空域候选块B1、空域候选块A1、空域候选块B0和空域候选块A0的遍历次序位于所述替补空域候选块B2之前,所述替补空域候选块B2在所述检查次序的前四个空域候选块的至少一个空域运动信息不可获取时进行检查。
23.根据权利要求16-22任一项所述的解码装置,其特征在于,所述构建单元,具体用于:
当所述预测模式为合并模式时,按照所述检查顺序检查当前图像块的各空域候选块,以获取可用的空域候选运动信息,并将所获取的空域候选运动信息加入到运动信息候选者列表中;
确定时域候选运动信息,并将所确定的时域候选运动信息加入到运动信息候选者列表中;
若运动信息候选者列表中候选运动信息的数量不足,则基于已编码/解码块的运动信息构建已编码/解码块的运动信息列表,并从该已编码/解码块的运动信息列表中获取运动信息作为候选运动信息加入到运动信息候选者列表中;
若运行信息候选者列表中候选运动信息的数量仍不足,按照以下方式的其中一种或多种进行补足:
方式一:对运动信息候选者列表中的已有运动信息进行加权,并将加权后的运动信息作为候选运动信息加入所述当前图像块的运动信息候选者列表;
方式二:通过缺省运动信息补足。
24.根据权利要求16-22任一项所述的解码装置,其特征在于,所述构建单元,具体用于:
当所述预测模式为三角预测模式时,按照所述检查顺序检查当前图像块的各空域候选块,以获取可用的空域候选运动信息,并将所获取的空域候选运动信息加入到运动信息候选者列表中;
确定时域候选运动信息,并将所确定的时域候选运动信息加入到运动信息候选者列表中;
若运动信息候选者列表中候选运动信息的数量不足,则基于已编码/解码块的运动信息构建已编码/解码块的运动信息列表,并从该已编码/解码块的运动信息列表中获取运动信息作为候选运动信息加入到运动信息候选者列表中;
若运动信息候选者列表中候选运动信息的数量仍不足,按照以下方式的其中一种或多种进行补足:
方式一:对运动信息候选者列表中的已有运动信息进行加权,并将加权后的运动信息作为候选运动信息加入所述当前图像块的运动信息候选者列表;
方式二:通过缺省运动信息补足;
其中,若候选运动信息为双向运动信息,则将双向运动信息的前向运动信息和后向运动信息中的至少一个作为单向运动信息加入运动信息候选者列表。
25.根据权利要求23或24所述解码装置,其特征在于,所述构建单元,具体用于:
获取运动信息候选者列表中的前两个候选运动信息;
将前两个候选运动信息进行加权后得到的加权候选运动信息加入运动信息候选者列表。
26.根据权利要求16-22任一项所述的解码装置,其特征在于,当所述预测模式为IBC模式时,构建所述当前图像块对应的运动信息候选者列表,包括:
按照所述检查顺序检查当前图像块的各空域候选块,以获取可用的空域候选运动信息,并将所获取的空域候选运动信息加入到运动信息候选者列表中;
若运动信息候选者列表中候选运动信息的数量不足,则基于已编码/解码块的运动信息构建已编码/解码块的运动信息列表,并从该已编码/解码块的运动信息列表中获取运动信息作为候选运动信息加入到运动信息候选者列表中;和/或
若运动信息候选者列表中候选运动信息的数量仍不足,则通过缺省运动信息补足。
27.根据权利要求16-22任一项所述的解码装置,其特征在于,所述装置还包括:
解析单元,用于若所述预测模式为三角预测模式,解析当前图像块的三角子块的划分信息;
所述解析单元,还用于解析所述当前图像块的三角子块对应的运动信息在列表中的索引值;
划分单元,用于基于所述划分信息对所述当前图像块进行子块划分;
获取单元,用于基于所述索引值,从所述运动信息候选者列表中获取所述图像块的三角子块对应的运动信息;
预测单元,用于基于所述图像块的三角子块对应的运动信息,对所述当前图像块进行运动补偿,获得当前图像块的预测运动信息。
28.一种解码装置,其特征在于,包括处理器、通信接口存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序
处理器,用于执行存储器上所存放的程序时,实现权利要求1-14任一所述的方法步骤。
29.一种编码装置,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-14任一所述的方法步骤。

说明书全文

运动信息候选者列表构建方法及装置

技术领域

[0001] 本申请涉及视频编解码技术,尤其涉及一种运动信息候选者列表构建方法及装置。

背景技术

[0002] 间预测是指利用视频时域的相关度,使用邻近已编码/解码图像像素预测当前图像的像素,以达到有效去除视频时域冗余的目的。
[0003] 目前,主要的视频编解码标准的帧间预测部分均采用基于运动补偿技术,其主要原理是为当前图像的每一个像素块在之前的已编码/解码图像中寻找一个最佳匹配块,该过程称为运动估计(Motion Estimation,简称ME)。其中用于预测的图像称为参考图像(Reference Frame),参考块到当前像素块的位移称为运动矢量(Motion Vector,简称MV),当前像素块与参考块的差值称为预测残差(Prediction Residual)。
[0004] 由于空域相邻块的运动信息具有较强的相关度,同时运动信息在时域上也有一定的相关度,因此,若利用空域或者时域上相邻块的运动信息对当前块的运动信息进行预测,得到预测像素值,则仅需要对残差进行编解码,可以大幅度的节省运动信息的编解码比特数。通过编解码端构建相同的运动信息候选者列表,不需要直接编解码运动信息,仅需要编解码最终选择选择的候选者列表中的序号(例如Merge_idx)就可以表达运动信息,从而大幅度减少编解码比特数。
[0005] 为了利用相邻块的空域相关度和时域相关度,目前的视频编解码标准在运动信息的预测方面提出了合并技术(Merge)、高级运动矢量预测技术(Advanced Motion Vector Prediction,简称AMVP)、可选时域运动矢量预测技术(Alternative temporal motion vector prediction,简称ATMVP)、三预测技术(Triangle prediction)、帧内块复制技术(Intra Block Copy,IBC)以及仿射(Affine)技术。其均使用空域运动信息预测、或者空域和时域运动信息预测的思想,通过建立运动信息候选者列表,并按照预设规则从列表中择取最优的一个候选者作为当前单元的预测信息。
[0006] 然而实践发现,目前的视频编解码标准中的运动信息预测方案中,在构建运动信息候选者列表时,被选为最终的预测运动信息的候选运动信息对应的索引号往往并不是位数最少的,导致编解码索引的开销较大,降低了视频编解码性能。发明内容
[0007] 有鉴于此,本申请提供一种运动信息候选者列表构建方法及装置。
[0008] 具体地,本申请是通过如下技术方案实现的:
[0009] 根据本申请实施例的第一方面,提供一种运动信息候选者列表构建方法,包括:
[0010] 确定当前图像块的各空域候选块的检查顺序;其中,当前图像块的上方空域候选块的检查顺序优于当前图像块的左侧空域候选块的检查顺序;
[0011] 根据所述检查顺序,确定空域候选运动信息;
[0012] 根据所述空域候选运动信息,构建所述当前图像块对应的运动信息候选者列表。
[0013] 根据本申请实施例的第二方面,提供一种三角预测解码方法,包括:
[0014] 解析当前图像块的三角子块的划分信息;
[0015] 解析所述当前图像块的三角子块对应的运动信息在列表中的索引值;
[0016] 基于所述划分信息对所述当前图像块进行子块划分;
[0017] 构建所述当前图像块的运动信息候选者列表;其中,所述运动信息候选者列表按照上述运动信息候选者列表构建方法构建;
[0018] 基于所述索引值,从所述运动信息候选者列表中获取所述图像块的三角子块对应的运动信息;
[0019] 基于所述图像块的三角子块对应的运动信息,对所述当前图像块的三角子块,及其中间交界子块,进行运动补偿,获得当前图像块的预测运动信息。
[0020] 根据本申请实施例的第三方面,提供一种索引编码/解码方法,包括:
[0021] 对运动信息候选者的模式索引号进行二值化,以得到二值化码字序列;
[0022] 确定与当前图像块的形状匹配的上下文模型;
[0023] 根据所述上下文模型对所述二值化码字序列的第一个二值化码值进行编码/解码。
[0024] 根据本申请实施例的第四方面,提供一种索引编码/解码方法,包括:
[0025] 根据当前图像块的形状对运动信息候选者的模式索引号进行二值化,以得到二值化码字序列;
[0026] 确定上下文模型;
[0027] 根据所述上下文模型对所述二值化码字序列的第一个二值化码值进行编码/解码。
[0028] 根据本申请实施例的第五方面,提供一种运动信息候选者列表构建装置,包括处理器、通信接口存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;所述存储器存放有计算机程序,所述处理器被所述计算机程序促使:
[0029] 确定当前图像块的各空域候选块的检查顺序;其中,当前图像块的上方空域候选块的检查顺序优于当前图像块的左侧空域候选块的检查顺序;
[0030] 根据所述检查顺序,确定空域候选运动信息;
[0031] 根据所述空域候选运动信息,构建所述当前图像块对应的运动信息候选者列表。
[0032] 根据本申请实施例的第六方面,提供一种三角预测解码装置,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;所述存储器存放有计算机程序,所述处理器被所述计算机程序促使:
[0033] 解析当前图像块的三角子块的划分信息;
[0034] 解析所述当前图像块的三角子块对应的运动信息在列表中的索引值;
[0035] 基于所述划分信息对所述当前图像块进行子块划分;
[0036] 构建所述当前图像块的运动信息候选者列表;其中,所述运动信息候选者列表按照第一方面提供的运动信息候选者列表构建方法构建;
[0037] 基于所述索引值,从所述运动信息候选者列表中获取所述图像块的三角子块对应的运动信息;
[0038] 基于所述图像块的三角子块对应的运动信息,对所述当前图像块的三角子块,及其中间交界子块,进行运动补偿,获得当前图像块的预测运动信息。
[0039] 根据本申请实施例的第七方面,提供一种索引编码/解码装置,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;所述存储器存放有计算机程序,所述处理器被所述计算机程序促使:
[0040] 对运动信息候选者的模式索引号进行二值化,以得到二值化码字序列;
[0041] 确定与当前图像块的形状匹配的上下文模型;
[0042] 根据所述上下文模型对所述二值化码字序列的第一个二值化码值进行编码/解码。
[0043] 根据本申请实施例的第八方面,提供一种索引编码/解码装置,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;所述存储器存放有计算机程序,所述处理器被所述计算机程序促使:
[0044] 根据当前图像块的形状对运动信息候选者的模式索引号进行二值化,以得到二值化码字序列;
[0045] 确定上下文模型;
[0046] 根据所述上下文模型对所述二值化码字序列的第一个二值化码值进行编码/解码。
[0047] 本申请实施例的运动信息候选者列表构建方法,通过确定当前图像块的各空域候选块的检查顺序,并根据所确定的检查顺序,确定空域候选运动信息,进而,根据空域候选运动信息,构建当前图像块对应的运动信息候选者列表,利用当前图像块的上方空域候选块的运动信息最终被选中为预测运动信息的概率高于左侧空域候选块的运动信息最终被选中为预测运动信息的概率的特点,减少了索引编码开销,提高了编码性能。附图说明
[0048] 图1A~1B是本申请示例性实施例示出的块划分的示意图;
[0049] 图2是本申请一示例性实施例示出的一种三角预测的候选信息位置示意图;
[0050] 图3是本申请一示例性实施例示出的一种运动信息候选者列表构建方法的流程示意图;
[0051] 图4是本申请一示例性实施例示出的各空域候选块与当前数据块的位置关系的示意图;
[0052] 图5A是本申请一示例性实施例示出一种空域候选块的检查顺序的示意图;
[0053] 图5B是本申请一示例性实施例示出的一种仿射模式的相邻块的示意图;
[0054] 图5C是本申请一示例性实施例示出的一种已编码/解码运动信息列表的更新示意图;
[0055] 图6是本申请一示例性实施例示出的一种三角预测解码方法的流程示意图;
[0056] 图7是本申请一示例性实施例示出的一种索引编码/解码方法的流程示意图;
[0057] 图8是本申请一示例性实施例示出的一种索引编码/解码方法的流程示意图[0058] 图9是本申请一示例性实施例示出的一种运动信息候选者列表构建装置的硬件结构示意图;
[0059] 图10是本申请一示例性实施例示出的一种运动信息候选者列表构建装置的结构示意图;
[0060] 图11是本申请一示例性实施例示出的一种三角预测解码装置的硬件结构示意图;
[0061] 图12是本申请一示例性实施例示出的一种三角预测解码装置的结构示意图;
[0062] 图13是本申请一示例性实施例示出的一种索引编码/解码装置的硬件结构示意图;
[0063] 图14是本申请一示例性实施例示出的一种索引编码/解码装置的结构示意图;
[0064] 图15是本申请一示例性实施例示出的一种索引编码/解码装置的硬件结构示意图;
[0065] 图16是本申请一示例性实施例示出的一种索引编码/解码装置的结构示意图。

具体实施方式

[0066] 这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
[0067] 在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
[0068] 为了使本领域技术人员更好地理解本申请实施例提供的技术方案,下面先对现有视频编码标准中块划分技术进行简单说明。
[0069] 在HEVC中,一个CTU(Coding Tree Unit,编码树单元)使用四叉树递归划分成CU(Coding Unit,编码单元)。在叶子节点CU级确定是否使用帧内编码或者帧间编码。CU可以进一步划分成两个或者四个PU(Prediction Unit,预测单元),同一个PU内使用相同的预测信息。在预测完成后得到残差信息后,一个CU可进一步四叉划分成多个TU(Transform Units)。例如,本申请中的当前图像块即为一个PU。
[0070] 但是在最新提出的VVC(Versatile Video Coding,通用视频编码)中的块划分技术有了较大变化。一种混合了二叉树/三叉树/四叉树的划分结构取代了原先的划分模式,取消了原先CU,PU,TU的概念的区分,支持了CU的更灵活的划分方式。其中,CU可以是正方形也可以是矩形划分。CTU首先进行四叉树的划分,然后四叉树划分的叶子节点可以进一步进行二叉树和三叉树的划分。图1A所示,CU共有五种划分类型,分别为四叉树划分,平二叉树划分,垂直二叉树划分,水平三叉树划分和垂直三叉树划分,如图1B所示,一种CTU内的CU划分可以是上述五种划分类型的任意组合由上可知不同的划分方式,使得各个PU的形状有所不同,如不同尺寸的矩形,正方形。
[0071] 对本发明中的预测模式进行如下介绍:
[0072] 1、合并模式
[0073] H265/HEVC在运动信息预测方面提出了合并技术(Merge模式的运动信息预测)和AMVP技术(即AMVP模式的运动信息预测)。两者均使用了空域和时域运动信息预测的思想,通过建立候选运动信息列表,基于率失真代价择取最优的一个运动信息候选者作为当前图像块的预测运动信息。
[0074] Merge模式下,当前图像块的运动信息直接基于空域或者时域上相邻的数据块的运动信息预测得到,不存在运动矢量差(Motion Vector Difference,MVD);若编解码端依照一样的方式构建运动信息候选者列表,则编码器只需要传输预测运动信息在运动信息候选者列表中的索引即可,这样可以大幅度节省了运动信息的编码比特数。
[0075] 2、AMVP模式
[0076] AMVP模式的运动信息预测也是利用空域和时域上相邻数据块的运行信息的相关性,为当前图像块建立运动信息候选者列表。编码器从中选出最优的预测运动信息,并对运动信息进行差分编码;解码端通过建立相同的运动信息候选者列表,仅需要运动矢量残差和预测运动信息在该列表中的序号就可以计算出当前图像块的运动信息信息;其中,AMVP模式下的运动信息候选者列表的长度为2。
[0077] 3、Affine Merge模式
[0078] Affine模式技术是Affine模式是H.266新引进的帧间预测模式,针对旋转,缩放的场景有很好的预测效果。
[0079] JEM中Affine模式分为两种,一种是Affine Inter,一种是Affine Merge。Affine Merge通过遍历候选图像块找到第一个是Affine模式编码的候选者即可。对于AF_MERGE方式无需传输一些额外的索引值,只需传输是否使用Affine Merge的Flag即可。
[0080] 4、ATMVP模式
[0081] ATMVP技术是一种基于子块的预测技术,通过空域运动信息确定初始运动信息,以找到参考帧中的对应块;将对应块划分为子块,并将每一个子块的运动信息映射为当前子块的运动信息。
[0082] 5、三角预测
[0083] VVC中采用了三角预测技术,三角预测中将一个块划分成两个三角子块,这两个三角子块拥有不同的单向运动信息;其中,三角预测模式仅用于Merge/Skip模式,且用于预测过程,不影响后续的变换、量化过程。
[0084] 三角预测模式设计了新的运动信息候选者列表,该运动信息候选者列表可以包括五个单向运动信息,候选运动信息可以从图2所示位置1~5的空域相邻块的运动信息,以及位置6和7的时域相邻块的运动信息中获取。通过收集这7个位置的可用运动信息,按照一定规则排序构建单向的运动信息列表。
[0085] 在三角预测模式中,当获取到的候选运动信息数目小于5个时,可以使用零运动信息填充。
[0086] 6、IBC预测
[0087] IBC预测是一种块拷贝技术,在同一帧内找到对应块,将该对应块的运动信息作为当前块的运动信息的预测信息;其中,IBC预测支持IBC合并模式和IBCAMVP模式。类似于常规(Regular)的合并模式和AMVP模式,均需要使用空域相邻块的运动信息作为候选者信息。
[0088] 为了使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例中技术方案作进一步详细的说明。
[0089] 需要说明的是,本文中所描述的运动信息候选者列表构建方法可以应用于编码端设备,也可以应用于解码端设备。
[0090] 当应用于编码端设备时,本文中所描述的当前图像块为编码块,已编码/解码块指代已编码块。
[0091] 当应用于解码端设备时,本文中所描述的当前图像块为解码块,已编码/解码块指代已解码块,本文后续不再复述。
[0092] 请参见图3,为本申请实施例提供的一种运动信息候选者列表构建方法的流程示意图,如图3所示,该运动信息候选者选择列表构建方法可以包括以下步骤:
[0093] 步骤S300、确定当前图像块的各空域候选块的检查顺序;其中,当前图像块的上方空域候选块的检查顺序优于当前图像块的左侧空域候选块的检查顺序。
[0094] 本申请实施例中,考虑到运动信息候选者列表中空域运动信息候选者的顺序与构建运动信息候选者列表时对数据块的空域候选块的检查顺序有关,且运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时,可以减少进行索引值编码时所需比特位,提高视频编码的性能;此外,在进行运动信息预测时,运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时可以减少进行预测运动信息选择的消耗,即在同样编码索引的消耗下,将相关度高的排在前面有利于提高视频编码的性能,因此,在构建运动信息候选者列表时,可以优先检查被选为预测运动信息的概率更高的空域候选块。
[0095] 相应地,在本申请实施例中,确定当前图像块的各空域候选块的检查顺序时,可以将当前图像块的上方空域候选块的检查顺序确定为优于当前图像块的左侧空域候选块的检查顺序。
[0096] 在本申请的一种可能的实施方式中,上述确定当前图像块的各空域候选块的检查顺序,可以包括:
[0097] 确定当前图像块的预测模式;
[0098] 根据预测模式确定当前图像块的各空域候选块的检查顺序。
[0099] 在该实施方式中,考虑到不同预测模式下,最终选为预测运动信息的候选运动信息可能会不同,因此,为了提高所确定的空域候选块的检查顺序的合理性,提高编码性能,可以结合当前图像块的预测模式确定当前图像块的各空域候选块的检查顺序。
[0100] 在该实施方式的一个实施例中,上述根据预测模式确定当前图像块的各空域候选块的检查顺序,可以包括:
[0101] 当当前图像块的预测模式为合并模式、IBC合并模式、仿射合并模式或三角预测合并模式时,当前图像块的各空域候选块的检查顺序至少可以包括4个空域候选块的遍历次序;该4个空域候选块的遍历次序位于第五空域候选块之前,第五空域候选块为替补空域候选块。
[0102] 示例性的,上述4个空域候选块可以包括第一空域候选块、第二空域候选块、第三空域候选块和第四空域候选块。
[0103] 以图4为例,在本申请实施例中,第一空域候选块(下文中称为A1)为当前图像块左侧最下方的空域相邻块;第二空域候选块(下文中称为B1)为当前图像块上侧最右侧的空域相邻块;第三空域候选块(下文中称为B0)为与当前图像块右上角距离最近的空域相邻块;第四空域候选块(下文中称为A0)为与当前图像块的左下角距离最近的空域相邻块;第五空域候选块(下文中称为B2)为与当前图像块左上角距离最近的空域相邻块。
[0104] 作为一种示例,上述4个空域候选块的遍历次序为第一遍历顺序,该第一遍历顺序为依次遍历所述第二空域候选块,所述第一空域候选块,所述第四空域候选块和所述第三空域候选块(可以描述为B1→A1→A0→B0)。
[0105] 即在该示例中,空域候选块的遍历次序可以为B1→A1→A0→B0→(B2),B2为替补空域候选块。
[0106] 示例性的,替补空域候选块可以在至少一个空域候选块的运动信息不可获取时进行检查。
[0107] 在该实施例中,考虑到对于合并模式、IBC合并模式、仿射合并模式以及三角预测合并模式,空域最多提供4个候选运动信息,因此,进行空域候选块检查时,可以至少遍历4个空域候选块,并将第5个空域候选块作为替补空域候选块,在至少一个空域候选块的运动信息不可获取时检查替补空域候选块。
[0108] 而考虑到合并模式、IBC合并模式、仿射合并模式以及三角预测合并模式,B1最终被选中为预测运动信息的概率高于A1最终被选中为预测运动信息的概率,且B2最终被选中为预测运动信息的概率低于其余4个空域候选块最终被选中为预测运动信息的概率,因此,在确定空域候选块的检查顺序时,可以将B1的检查顺序确定为先于A1检查,并将B2确定为替补空域候选块。
[0109] 在该实施方式的另一个实施例中,上述根据预测模式确定当前图像块的各空域候选块的检查顺序,可以包括:
[0110] 当当前图像块的预测模式为三角预测合并模式或仿射合并模式时,当前图像块的各空域候选块的检查顺序可以包括5个空域候选块的遍历次序;
[0111] 示例性的,5个空域候选块包括第一空域候选块、第二空域候选块、第三空域候选块、第四空域候选块和第五空域候选块。
[0112] 作为一种示例,当当前图像块的预测模式为三角预测合并模式时,上述5个空域候选块的遍历顺序为第二遍历顺序,该第二遍历顺序为依次遍历第二空域候选块、第一空域候选块、第四空域候选块、第三空域候选块和第五空域候选块(可以描述为B1→A1→A0→B0→B2)。
[0113] 作为另一种示例,当当前图像块的预测模式为仿射合并模式时,上述5个空域候选块的遍历顺序为第三遍历顺序,该第三遍历顺序为依次遍历第三空域候选块、第二空域候选块、第五空域候选块、第四空域候选块和第一空域候选块(可以描述为B0→B1→B2→A0→A1)。
[0114] 在该实施方式的又一个实施例中,上述根据预测模式确定当前图像块的各空域候选块的检查顺序,可以包括:
[0115] 当当前图像块的预测模式为ATMVP合并模式时,当前图像块的各空域候选块的检查顺序包括1个空域候选块的遍历次序;
[0116] 示例性的,上述1个空域候选块包括第二空域候选块,如图4中的B1。
[0117] 在该实施例中,考虑到ATMVP为基于子块的预测技术,且其在进行预测编码时,仅需参考找到的第一个可用的空域候选块的运动信息。因此,为了提高ATMVP合并模式的编码性能,可以进行空域候选运动信息查找时,可以仅检查空域候选块B1。
[0118] 在该实施方式的又一个实施例中,上述根据预测模式确定当前图像块的各空域候选块的检查顺序,可以包括:
[0119] 当当前图像块的预测模式为合并模式时,当前图像块的各空域候选块的检查顺序包括4个空域候选块的遍历次序;或,
[0120] 当当前图像块的预测模式为IBC合并模式时,当前图像块的各空域候选块的检查顺序包括4个空域候选块的遍历次序;或,
[0121] 当当前图像块的预测模式为三角预测合并模式时,当前图像块的各空域候选块的检查顺序包括4个空域候选块的遍历次序;或,
[0122] 当当前图像块的预测模式为仿射合并模式时,当前图像块的各空域候选块的检查顺序包括4个空域候选块的遍历次序;
[0123] 示例性的,上述4个空域候选块包括第一空域候选块、第二空域候选块、第三空域候选块和第四空域候选块。
[0124] 在该实施例中,考虑到在合并模式、IBC合并模式、三角预测合并模式以及仿射合并模式下,B2最终选为预测运动信息的概率低于其余4个空域候选块,因此,为了提高编码性能,在确定空域候选运动信息时,可以仅对B0、B1、A0和A1这4个空域候选块进行检查。
[0125] 作为一种示例,当当前图像块的预测模式为合并模式时,上述4个空域候选块的遍历次序为第一遍历顺序;或,
[0126] 当当前图像块的预测模式为IBC合并模式时,上述4个空域候选块的遍历次序为第一遍历顺序;或,
[0127] 当当前图像块的预测模式为三角预测合并模式时,上述4个空域候选块的遍历次序为第一遍历顺序;或,
[0128] 当当前图像块的预测模式为仿射合并模式时,上述4个空域候选块的遍历次序为第四遍历顺序,该第四遍历顺序为依次遍历第三空域候选块、第二空域候选块、第四空域候选块和第一空域候选块。
[0129] 在该示例中,考虑到在合并模式、IBC合并模式、三角预测合并模式以及仿射模式下,B1最终被选为预测运动信息的概率高于A1最终被选为预测运动信息的概率,因此,为了减少编码消耗,提高编码性能,在确定空域候选运动信息时,可以将B1的检查顺序确定为先于A1的检查顺序。
[0130] 在该实施方式的又一个实施例中,上述根据预测模式确定当前图像块的各空域候选块的检查顺序,可以包括:
[0131] 当当前图像块的预测模式为AMVP模式、IBC AMVP模式或仿射AMVP模式时,当前图像块的各空域候选块的检查顺序至少包括第五遍历顺序和第六遍历顺序;第五遍历顺序用于进行当前图像块的上方空域候选块的遍历,第六遍历顺序用于进行当前图像块的左侧空域候选块的遍历;上方空域候选块包括:第三空域候选块、第二空域候选块和第五空域候选块;左侧空域候选块包括:第四空域候选块和第一空域候选块;
[0132] 第五遍历顺序为依次遍历第三空域候选块、第二空域候选块和第五空域候选块;
[0133] 第六遍历顺序为依次遍历第四空域候选块和第一空域候选块。
[0134] 作为一种示例,当当前图像块的预测模式为AMVP模式或IBC AMVP模式时,当前图像块的各空域候选块的检查顺序可以为先按照第五遍历顺序依次遍历上方空域候选块,再按照第六遍历顺序遍历左侧空域候选块。
[0135] 在该示例中,考虑到对于AMVP模式、IBC AMVP模式以及仿射AMVP模式,当前图像块上方的空域候选块最终被选中为预测运动信息的概率高于左侧的空域候选块最终被选中为预测运动信息的概率,因此,在确定空域候选块的检查顺序时,可以先遍历当前图像块上方的空域候选块,再遍历当前图像块左侧的空域候选块。
[0136] 需要说明的是,对于仿射AMVP模式,遍历空域候选块的运动信息时,需要检查空域候选块是否为仿射块(Affine块),以及是否有仿射运动信息存储,若为仿射块,且有仿射运动信息存储,则确定空域候选块的运动信息可用;否则,确定空域候选块的运动信息不可用。
[0137] 步骤S310、根据当前图像块的各空域候选块的检查顺序,确定空域候选运动信息。
[0138] 步骤S320、根据所确定的空域候选运动信息,构建当前图像块对应的运动信息候选列表。
[0139] 本申请实施例中,确定了当前图像块的各空域候选块的检查顺序时,可以根据所确定的检查顺序对当前图像块的各空域候选块进行检查,以确定空域候选运动信息,并根据所确定的空域候选运动信息,构建当前图像块对应的运动信息候选者列表。
[0140] 在本申请的一种可能的实施方式中,上述根据所确定的空域候选运动信息,构建当前图像块对应的运动信息候选者列表,可以包括:
[0141] 当当前图像块的预测模式为合并模式时,根据所确定的空域候选运动信息、时域候选运动信息以及当前图像块之前的已编码/解码块的运动信息,构建当前图像块对应的运动信息候选者列表。
[0142] 在该实施方式中,为了增加候选者样本的丰富性,并提高运动信息候选者选择的灵活性,对于合并模式,在构建运动信息候选者列表时,可以考虑当前图像块之前的已编码/解码块的运动信息。
[0143] 在该实施方式中,当确定了空域候选运动信息以及时域候选运动信息,并将所确定的空域候选运动信息以及时域候选运动信息加入到运动信息候选者列表之后,若运动信息候选者列表中的候选运动信息的数量不足,则可以从当前图像块之前的已编码/解码块的运动信息中确定候选运动信息。
[0144] 示例性的,可以将当前图像块之前的已编码/解码块的运动信息保存在一个全局列表(可以称为已编码/解码块的运动信息列表)中,该已编码/解码块的运动信息列表为固定长度,并按照先入先出的规则更新该已编码/解码块运动信息列表中的已编码/解码块的运动信息。
[0145] 在该实施例中,当将空域候选运动信息以及时域候选运动信息加入到运动信息候选者列表之后,若运动信息候选者列表中的候选运动信息的数量不足,则可以从已编码/解码块的运动信息列表中选择候选运动信息。
[0146] 作为该实施方式的一种实施例,上述根据所确定的空域候选运动信息,构建当前图像块对应的运动信息候选者列表,还可以可以包括:
[0147] 当当前图像块的预测模式为合并模式时,对运动信息候选者列表中的已有运动信息进行加权;
[0148] 将加权后的运动信息作为候选运动信息加入所述当前图像块的运动信息候选者列表。
[0149] 在该实施例中,为了增加候选者样本的丰富性,并提高运动信息候选者选择的灵活性,对于合并模式,在构建运动信息候选者列表时,还可以通过对运动信息候选者列表中的已有运动信息进行加权得到新的候选运动信息。
[0150] 需要说明的是,该实施例需要在运动信息候选者列表中的已有运动信息的数量大于1个时进行,例如,取运动信息候选者列表中的前两个已有运动信息进行加权。
[0151] 在该实施例中,若存在双向运动信息,则需要分别对双向运动信息的前向运动信息和后向运动信息进行加权。
[0152] 举例来说,假设候选运动信息1和候选运动信息2均为双向运动信息,候选运动信息1的前向运动信息为前向运动信息11,后向运动信息为后向运动信息12;候选运动信息2的前向运动信息为前向运动信息21,后向运动信息为后向运动信息22,则前向运动信息11和前向运动信息21加权得到的前向运动信息即为候选运动1和候选运动信息2加权后的前向运动信息,后向运动信息12和后向运动信息22进行加权得到的后向运动信息即为候选运动1和候选运动信息2加权后的后向运动信息。
[0153] 又举例来说,假设候选运动信息1为双向运动信息,候选运动信息2为单向运动信息,候选运动信息1的前向运动信息为前向运动信息11,后向运动信息为后向运动信息12,候选运动信息2和前向运动信息11的参考帧属于同一参考列表(如均为List0),则前向运动信息11和候选运动信息2加权得到的前向运动信息即为候选运动信息1和候选运动信息2加权后的前向运动信息,后向运行信息12即为候选运动信息1和候选运动信息2加权后的后向运动信息。
[0154] 示例性的,在本申请实施例中,运动信息候选者列表中通过加权得到的候选运动信息的数量需要不超过预设数量阈值(可以根据实际场景设定,如1个)。
[0155] 在本申请的另一种可能的实施方式中,上述根据所确定的空域候选运动信息,构建当前图像块对应的运动信息候选者列表,可以包括:
[0156] 当当前图像块的预测模式为IBC合并模式时,根据空域候选运动信息以及当前图像块之前的已编码/解码块的运动信息,构建当前图像块对应的运动信息候选者列表。
[0157] 在该实施方式中,为了增加候选者样本的丰富性,并提高运动信息候选者选择的灵活性,对于IBC合并模式,在构建运动信息候选者列表时,可以考虑当前图像块之前的已编码/解码块的运动信息。
[0158] 在该实施方式中,当确定了空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表之后,若运动信息候选者列表中的候选运动信息的数量不足,则可以从当前图像块之前的已编码/解码块的运动信息中确定候选运动信息。
[0159] 示例性的,可以将当前图像块之前的已编码/解码块的运动信息保存在一个全局列表(可以称为已编码/解码块的运动信息列表)中,该已编码/解码块的运动信息列表为固定长度,并按照先入先出的规则更新该已编码/解码块运动信息列表中的已编码/解码块的运动信息。
[0160] 在该实施例中,当将空域候选运动信息加入到运动信息候选者列表之后,若运动信息候选者列表中的候选运动信息的数量不足,则可以从已编码/解码块的运动信息列表中选择候选运动信息。
[0161] 作为该实施方式的一种实施例,上述根据所确定的空域候选运动信息,构建当前图像块对应的运动信息候选者列表,还可以可以包括:
[0162] 当当前图像块的预测模式为IBC合并模式时,对运动信息候选者列表中的已有运动信息进行加权;
[0163] 将加权后的运动信息作为候选运动信息加入所述当前图像块的运动信息候选者列表。
[0164] 在该实施例中,为了增加候选者样本的丰富性,并提高运动信息候选者选择的灵活性,对于IBC合并模式,在构建运动信息候选者列表时,还可以通过对运动信息候选者列表中的已有运动信息进行加权得到新的候选运动信息。
[0165] 需要说明的是,该实施例需要在运动信息候选者列表中的已有运动信息的数量大于1个时进行,例如,取运动信息候选者列表中的前两个已有运动信息进行加权。
[0166] 在该实施例中,若存在双向运动信息,则需要分别对双向运动信息的前向运动信息和后向运动信息进行加权。
[0167] 在本申请的又一种可能的实施方式中,上述根据所确定的空域候选运动信息,构建当前图像块对应的运动信息候选者列表,可以包括:
[0168] 当当前图像块的预测模式为三角预测合并模式,根据空域候选运动信息、时域候选运动信息,构建当前图像块对应的运动信息候选者列表;
[0169] 示例性的,若候选运动信息为双向运动信息,则将双向运动信息的前向运动信息或/和后向运动信息加入运动信息候选者列表。
[0170] 在该实施方式中,考虑到三角预测仅能使用单向运动信息,因此当将空域候选运动信息以及时域候选运动信息加入到三角预测合并模式的运动信息候选者列表之后,需要检查该运动信息候选者列表中是否存在双向运动信息,若存在,则可以将该双向运动信息的前向运动信息或/和后向运动信息加入运动信息候选者列表,以替代该双向运动信息。
[0171] 在本申请的又一种可能的实施方式中,上述根据所确定的空域候选运动信息,构建当前图像块对应的运动信息候选者列表,可以包括:
[0172] 当当前图像块的预测模式为三角预测合并模式,根据空域候选运动信息、时域候选运动信息以及当前图像块之前的已编码/解码块的运动信息,构建当前图像块对应的运动信息候选者列表;
[0173] 示例性的,若候选运动信息为双向运动信息,则将双向运动信息的前向运动信息或/和后向运动信息加入运动信息候选者列表。
[0174] 在该实施方式中,为了增加候选者样本的丰富性,并提高运动信息候选者选择的灵活性,对于三角预测合并模式,在构建运动信息候选者列表时,可以考虑当前图像块之前的已编码/解码块的运动信息。
[0175] 作为该实施方式的一个实施例,上述根据所确定的空域候选运动信息,构建当前图像块对应的运动信息候选者列表,还可以包括:
[0176] 当当前图像块的预测模式为三角预测合并模式时,获取运动信息候选者列表中的前两个候选运动信息;
[0177] 将前两个候选运动信息进行加权后得到的加权候选运动信息加入运动信息候选者列表。
[0178] 在该实施例中,为了增加候选者样本的丰富性,并提高运动信息候选者选择的灵活性,对于三角预测合并模式,在构建运动信息候选者列表时,还可以通过对运动信息候选者列表中的已有运动信息进行加权得到新的候选运动信息。
[0179] 需要说明的是,该实施例需要在运动信息候选者列表中的已有运动信息的数量大于1个时进行,例如,取运动信息候选者列表中的前两个候选运动信息进行加权。
[0180] 作为一种示例,对于三角预测合并模式,运动信息候选者列表中的各候选运动信息可以按照单向运动信息、双向运动信息的前向的运动信息、双向运动信息的后向运动信息、均值加权候选运动信息的顺序排序。
[0181] 在本申请的又一种可能的实施方式中,上述根据所确定的空域候选运动信息,构建当前图像块对应的运动信息候选者列表,可以包括:
[0182] 当当前图像块的预测模式为仿射合并模式时,基于所确定的空域候选运动信息映射计算得到第一类型候选运动信息,并将第一类型候选运动信息加入到运动信息候选者列表;
[0183] 基于当前图像块左上角的运动信息、右上角的运动信息、左下角的运动信息以及时域运动信息中的两个或三个组合并进行映射计算得到第二类型候选运动信息,并将第二类型候选运动信息加入到运动信息候选者列表。
[0184] 在该实施方式中,对于仿射合并模式,在确定了空域候选运动信息之后,可以基于所确定的空域候选运动信息映射计算得到对应的候选运动信息(本文中称为第一类型候选运动信息),并将第一类型候选运动信息加入到运动信息候选者列表。
[0185] 若此时运动信息候选者列表中候选运动信息的数量不足,则可以基于当前图像块左上角的运动信息、右上角的运动信息、左下角的运动信息以及时域运动信息中的两个或三个组合并进行映射计算得到对应的候选运动信息(本文中称为第二类型候选运动信息),并将第二类型候选运动信息加入到运动信息候选者列表。
[0186] 举例来说,如图5B所示,可以通过按照一定顺序遍历位置A2、B2和B3的运动信息的方式,将获取到的第一个可用运动信息确定为当前图像块左上角的运动信息;同理,可以通过按照一定顺序遍历位置B1和B0的运动信息的方式,将获取到的第一个可用运动信息确定为当前图像块右上角的运动信息;可以通过按照一定顺序遍历位置A0和A1的运动信息的方式,将获取到的第一个可用运动信息确定为当前图像块左下角的运动信息;时域运动信息可以为位置T的时域运动信息。
[0187] 在本申请的又一种可能的实施方式中,上述根据所确定的空域候选运动信息,构建当前图像块对应的运动信息候选者列表,可以包括:
[0188] 基于ATMVP合并模式的候选运动信息和仿射合并模式的候选运动信息构建基于子块技术的运动信息候选者列表,并标记各候选运动信息的模式。
[0189] 在该实施例中,考虑到ATMVP合并模式和仿射合并模式均为基于子块的预测技术,因此,对于ATMVP合并模式和仿射合并模式,可以构建同一个基于子块技术的运动信息候选者列表,并分别标记该运动信息候选者列表中各候选运动信息的模式(ATMVP合并模式或仿射合并模式)。
[0190] 例如,可以将ATMVP合并模式的候选运动信息作为该基于子块技术的运动信息候选者列表中的第一个候选运动信息,后续候选运动信息为仿射合并模式的候选运动信息。
[0191] 作为一种示例,上述基于ATMVP合并模式的候选运动信息和仿射合并模式的候选运动信息构建基于子块技术的运动信息候选者列表,可以包括:
[0192] 基于ATMVP合并模式的候选运动信息构建基于子块技术的运动信息候选者列表;
[0193] 将仿射合并模式的候选运动信息加入基于子块技术的运动信息候选者列表。
[0194] 在该示例中,可以先构建基于ATVMP合并模式的候选运动信息,然后再加入基于仿射合并模式的候选运动信息。
[0195] 需要说明的是,在本申请实施例中,对于各种模式(包括合并模式、三角预测合并模式、IBC合并模式、仿射合并模式、AMVP模式、IBC AMVP模式以及仿射AMVP),在构建运动信息候选者列表时,向所构建的运动信息候选者列表中添加候选运动信息时,均需要进行查重处理,以避免运动信息候选者列表中存在重复的候选运动信息。
[0196] 还需要说明的是,在本申请实施例中,解码端设备进行码流解码时,当解码端设备解析到了码流中携带的最优运动信息的索引之后,在构建运动信息候选者列表时,确定了与该索引对应的候选运动信息时,就可以中止运动信息候选者列表的构建,而可以不需要构建完整的运动信息候选者列表。
[0197] 为了使本领域技术人员更好地理解本申请实施例提供的技术方案,下面分别结合具体实例对本申请实施例中的运动信息候选者列表的构建进行说明。
[0198] 实施例一
[0199] 在该实施例中,以合并模式的运动信息候选者列表构建为例。
[0200] 在该实施例中,对于合并模式,将当前图像块的各空域候选块的检查顺序调整为B1→A1→A0→B0→(B2);其中,前4个空域候选块的检查顺序的示意图可以如图5A所示;或者,将当前图像块的各空域候选块的检查顺序调整为B1→A1→A0→B0;或者,将当前图像块的各空域候选块的检查顺序调整为A1→B1→B0→A0。
[0201] 在该实施例中,运动信息候选者列表构建的具体实现如下:
[0202] 1、按照B1→A1→A0→B0→(B2)的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0203] 示例性的,B2在前4个空域候选块的运动信息不均可获取(即至少一个不可获取)时进行检查;
[0204] 或者,按照B1→A1→A0→B0的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0205] 或者,按照A1→B1→B0→A0的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0206] 2、确定时域候选运动信息,并将所确定的时域候选运动信息加入到运动信息候选者列表中;
[0207] 3、若运动信息候选者列表中候选运动信息的数量不足,则基于已编码/解码块的运动信息构建已编码/解码块的运动信息列表,并将该已编码/解码块的运动信息列表中的运动信息作为候选运动信息加入到运动信息候选者列表中;
[0208] 示例性的,已编码/解码块的运动信息列表为固定长度,并按照先进先出的规则更新该运动信息列表中的已编码/解码块的运动信息,其示意图可以如图5C所示;
[0209] 4、若运动信息候选者列表中候选运动信息的数量仍不足,则通过对运动信息候选者列表中已有的候选运动信息进行加权的方式确定新的候选运动信息,并将所确定的新的候选运动信息加入运动信息候选者列表中;
[0210] 示例性的,候选运动信息的加权在运动信息候选者列表中已有的候选运动信息的数量大于1个时进行。
[0211] 若存在双向运动信息,则需要分别对双向运动信息的前向运动信息和后向运动信息进行加权,从而得到双向运动信息候选者。
[0212] 举例来说,候选运动信息1和候选运动信息2均为双向运动信息,候选运动信息1的前向运动信息为前向运动信息11,后向运动信息为后向运动信息12;候选运动信息2的前向运动信息为前向运动信息21,后向运动信息为后向运动信息22,则前向运动信息11和前向运动信息21加权得到的前向运动信息即为候选运动1和候选运动信息2加权后的前向运动信息,后向运动信息12和后向运动信息22进行加权得到的后向运动信息即为候选运动1和候选运动信息2加权后的后向运动信息。
[0213] 5、若运动信息候选者列表中候选运动信息的数量仍不足,则通过缺省运动信息(零运动信息)补足。
[0214] 实施例二
[0215] 在该实施例中,以IBC合并模式的运动信息候选者列表构建为例。
[0216] 在该实施例中,对于IBC合并模式,将当前图像块的各空域候选块的检查顺序调整为B1→A1→A0→B0→(B2);或者,将当前图像块的各空域候选块的检查顺序调整为B1→A1→A0→B0;或者,将当前图像块的各空域候选块的检查顺序调整为A1→B1→B0→A0。
[0217] 在该实施例中,运动信息候选者列表构建的具体实现如下:
[0218] 1、按照B1→A1→A0→B0→(B2)的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0219] 示例性的,B2在前4个空域候选块的运动信息不均可获取(即至少一个不可获取)时进行检查;
[0220] 或者,按照B1→A1→A0→B0的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0221] 或者,按照A1→B1→B0→A0的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0222] 2、若运动信息候选者列表中候选运动信息的数量不足,则基于已编码/解码块的运动信息构建已编码/解码块的运动信息列表,并将该已编码/解码块的运动信息列表中的运动信息作为候选运动信息加入到运动信息候选者列表中;
[0223] 示例性的,已编码/解码块的运动信息列表为固定长度,并按照先进先出的规则更新该运动信息列表中的已编码/解码块的运动信息;
[0224] 3、若运动信息候选者列表中候选运动信息的数量仍不足,则通过对运动信息候选者列表中已有的候选运动信息进行加权的方式确定新的候选运动信息,并将所确定的新的候选运动信息加入运动信息候选者列表中;
[0225] 示例性的,候选运动信息的加权在运动信息候选者列表中已有的候选运动信息的数量大于1个时进行。
[0226] 4、若运动信息候选者列表中候选运动信息的数量仍不足,则通过缺省运动信息补足,缺省运动信息可以是通过对列表中已有的运动信息的伸缩偏移或者对零运动信息的伸缩偏移得到。
[0227] 实施例三
[0228] 在该实施例中,以IBC合并模式的运动信息候选者列表构建为例。
[0229] 在该实施例中,对于IBC合并模式,将当前图像块的各空域候选块的检查顺序调整为B1→A1→A0→B0→(B2);或者,将当前图像块的各空域候选块的检查顺序调整为B1→A1→A0→B0;或者,将当前图像块的各空域候选块的检查顺序调整为A1→B1→B0→A0。
[0230] 在该实施例中,运动信息候选者列表构建的具体实现如下:
[0231] 1、按照B1→A1→A0→B0→(B2)的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0232] 示例性的,B2在前4个空域候选块的运动信息不均可获取(即至少一个不可获取)时进行检查;
[0233] 或者,按照B1→A1→A0→B0的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0234] 或者,按照A1→B1→B0→A0的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0235] 2、若运动信息候选者列表中候选运动信息的数量不足,则基于已编码/解码块的运动信息构建已编码/解码块的运动信息列表,并将该已编码/解码块的运动信息列表中的运动信息作为候选运动信息加入到运动信息候选者列表中;
[0236] 示例性的,已编码/解码块的运动信息列表为固定长度,并按照先进先出的规则更新该运动信息列表中的已编码/解码块的运动信息;
[0237] 3、若运动信息候选者列表中候选运动信息的数量仍不足,则通过缺省运动信息补足,缺省运动信息可以是通过对列表中已有的运动信息的伸缩偏移或者对零运动信息的伸缩偏移得到。
[0238] 实施例四
[0239] 在该实施例中,以三角预测合并模式的运动信息候选者列表构建为例。
[0240] 在该实施例中,对于三角预测合并模式,将当前图像块的各空域候选块的检查顺序调整为B1→A1→A0→B0→B2;或者,将当前图像块的各空域候选块的检查顺序调整为B1→A1→A0→B0→(B2);或者,将当前图像块的各空域候选块的检查顺序调整为B1→A1→A0→B0;或者,将当前图像块的各空域候选块的检查顺序调整为A1→B1→B0→A0。
[0241] 在该实施例中,运动信息候选者列表构建的具体实现如下:
[0242] 1、按照B1→A1→A0→B0→B2的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0243] 或者,按照B1→A1→A0→B0→(B2)的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0244] 示例性的,B2在前4个空域候选块的运动信息不均可获取(即至少一个不可获取)时进行检查;
[0245] 或者,按照B1→A1→A0→B0的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0246] 或者,按照A1→B1→B0→A0的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0247] 2、确定时域候选运动信息,并将所确定的时域候选运动信息加入到运动信息候选者列表中;
[0248] 3、若运动信息候选者列表中存在双向运动信息,将双向运动信息替换为该双向运动信息的前向运动信息或/和后向运动信息;
[0249] 4、若运动信息候选者列表中候选运动信息的数量不足,则获取运动信息候选者列表中的前两个候选运动信息(若存在),并将该前两个候选运动信息进行加权后得到的运动信息加入到运动信息候选者列表;
[0250] 示例性的,运动信息候选者列表中候选运动信息按照:单向运动信息、双向运动信息的前向运动信息、双向运动信息的后向运动信息、加权得到的运动信息的顺序进行排序;
[0251] 5、若运动信息候选者列表中候选运动信息的数量仍不足,则通过缺省运动信息(零运动信息)补足。
[0252] 实施例五
[0253] 在该实施例中,以三角预测合并模式的运动信息候选者列表构建为例。
[0254] 在该实施例中,对于三角预测合并模式,将当前图像块的各空域候选块的检查顺序调整为B1→A1→A0→B0→B2;或者,将当前图像块的各空域候选块的检查顺序调整为B1→A1→A0→B0→(B2);或者,将当前图像块的各空域候选块的检查顺序调整为B1→A1→A0→B0;或者,将当前图像块的各空域候选块的检查顺序调整为A1→B1→B0→A0。
[0255] 在该实施例中,运动信息候选者列表构建的具体实现如下:
[0256] 1、按照B1→A1→A0→B0→B2的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0257] 或者,按照B1→A1→A0→B0→(B2)的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0258] 示例性的,B2在前4个空域候选块的运动信息不均可获取(即至少一个不可获取)时进行检查;
[0259] 或者,按照B1→A1→A0→B0的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0260] 或者,按照A1→B1→B0→A0的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0261] 2、确定时域候选运动信息,并将所确定的时域候选运动信息加入到运动信息候选者列表中;
[0262] 3、若运动信息候选者列表中候选运动信息的数量不足,则基于已编码/解码块的运动信息构建已编码/解码块的运动信息列表,并将该已编码/解码块的运动信息列表中的运动信息作为候选运动信息加入到运动信息候选者列表中;
[0263] 示例性的,已编码/解码块的运动信息列表为固定长度,并按照先进先出的规则更新该运动信息列表中的已编码/解码块的运动信息;
[0264] 4、若运动信息候选者列表中存在双向运动信息,将双向运动信息替换为该双向运动信息的前向运动信息或/和后向运动信息;
[0265] 5、若运动信息候选者列表中候选运动信息的数量仍不足,则获取运动信息候选者列表中的前两个候选运动信息(若存在),并将该前两个候选运动信息进行加权后得到的运动信息加入到运动信息候选者列表;
[0266] 示例性的,运动信息候选者列表中候选运动信息按照:单向运动信息、双向运动信息的前向运动信息、双向运动信息的后向运动信息、加权得到的运动信息的顺序进行排序;
[0267] 6、若运动信息候选者列表中候选运动信息的数量仍不足,则通过缺省运动信息(零运动信息)补足。
[0268] 实施例六
[0269] 在该实施例中,以三角预测合并模式的运动信息候选者列表构建为例。
[0270] 在该实施例中,对于三角预测合并模式,将当前图像块的各空域候选块的检查顺序调整为B1→A1→A0→B0→B2;或者,将当前图像块的各空域候选块的检查顺序调整为B1→A1→A0→B0→(B2);或者,将当前图像块的各空域候选块的检查顺序调整为B1→A1→A0→B0;或者,将当前图像块的各空域候选块的检查顺序调整为A1→B1→B0→A0。
[0271] 在该实施例中,运动信息候选者列表构建的具体实现如下:
[0272] 1、按照B1→A1→A0→B0→B2的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0273] 或者,按照B1→A1→A0→B0→(B2)的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0274] 示例性的,B2在前4个空域候选块的运动信息不均可获取(即至少一个不可获取)时进行检查;
[0275] 或者,按照B1→A1→A0→B0的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0276] 或者,按照A1→B1→B0→A0的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,并将所确定的空域候选运动信息加入到运动信息候选者列表中;
[0277] 2、确定时域候选运动信息,并将所确定的时域候选运动信息加入到运动信息候选者列表中;
[0278] 3、若运动信息候选者列表中候选运动信息的数量不足,则基于已编码/解码块的运动信息构建已编码/解码块的运动信息列表,并将该已编码/解码块的运动信息列表中的运动信息作为候选运动信息加入到运动信息候选者列表中;
[0279] 示例性的,已编码/解码块的运动信息列表为固定长度,并按照先进先出的规则更新该运动信息列表中的已编码/解码块的运动信息;
[0280] 4、若运动信息候选者列表中候选运动信息的数量仍不足,则通过缺省运动信息(零运动信息)补足;
[0281] 5、若运动信息候选者列表中存在双向运动信息,将双向运动信息替换为该双向运动信息的前向运动信息或/和后向运动信息。
[0282] 实施例七
[0283] 在该实施例中,以仿射合并模式的运动信息候选者列表构建为例。
[0284] 在该实施例中,对于仿射合并模式,将当前图像块的各空域候选块的检查顺序调整为:先遍历当前图像块上方的空域候选块(B0-B1-B2),再遍历当前图像块左侧的空域候选块(A0-A1);或者,先遍历当前图像块上方的空域候选块(B0-B1),再遍历当前图像块左侧的空域候选块(A0-A1);或者,先遍历当前图像块左侧的空域候选块(A0-A1),再遍历当前图像块上方的空域候选块(B0-B1)。
[0285] 在该实施例中,运动信息候选者列表构建的具体实现如下:
[0286] 1、按照B0→B1→B2→A0→A1的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,将确定的空域候选运动信息映射计算得到候选运动信息,并加入到运动信息候选者列表;
[0287] 或者,按照B0→B1→A0→A1的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,将确定的空域候选运动信息映射计算得到候选运动信息,并加入到运动信息候选者列表;
[0288] 或者,按照A0→A1→B0→B1的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,将确定的空域候选运动信息映射计算得到候选运动信息,并加入到运动信息候选者列表;
[0289] 2、通过当前图像块左上角的运动信息、右上角的运动信息、左下角的运动信息以及时域运动信息中的两个或三个组合并进行映射计算得到候选运动信息,并加入运动信息候选者列表;
[0290] 举例来说,如图5B所示,可以通过按照一定顺序遍历位置A2、B2和B3的运动信息的方式,将获取到的第一个可用运动信息确定为当前图像块左上角的运动信息;同理,可以通过按照一定顺序遍历位置B1和B0的运动信息的方式,将获取到的第一个可用运动信息确定为当前图像块右上角的运动信息;可以通过按照一定顺序遍历位置A0和A1的运动信息的方式,将获取到的第一个可用运动信息确定为当前图像块左下角的运动信息;时域运动信息可以为位置T的时域运动信息。
[0291] 3、若运动信息候选者列表中候选运动信息的数量仍不足,则通过缺省运动信息(零运动信息)补足。
[0292] 实施例八
[0293] 在该实施例中,以ATMVP模式的运动信息候选者列表构建为例。
[0294] 在该实施例中,对于ATMVP模式,仅检查空域候选块B1的运动信息是否可用;若可用,则采用B1的运动信息进行运动信息候选者列表构建;否则,使用缺省运动信息(如零运动信息)进行运动信息候选者列表构建。
[0295] 实施例九
[0296] 在该实施例中,以基于子块技术的运动信息候选者列表构建为例。
[0297] 在该实施例中,考虑到仿射合并模式和ATMVP合并模式均是基于子块的运动信息进行预测编码,因此,构建运动信息候选者列表时,可以构建基于子块技术的运动信息候选者列表,并标记各候选运动信息的模式。
[0298] 在该实施例中,可以先确定ATMVP合并模式的候选运动信息,然后,再确定仿射合并模式的候选运动信息。
[0299] 示例性的,对于ATMVP合并模式,若B1的运动信息可用,直接采用B1的运动信息作为候选运动信息;若B1的运动信息不可用,则使用缺省运动信息(零运动信息)作为候选运动信息。
[0300] 对于仿射合并模式,运动信息候选者列表构建的具体实现如下:
[0301] 1、按照B0→B1→B2→A0→A1的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,将确定的空域候选运动信息映射计算得到候选运动信息,并加入到运动信息候选者列表;
[0302] 或者,按照B0→B1→A0→A1的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,将确定的空域候选运动信息映射计算得到候选运动信息,并加入到运动信息候选者列表;
[0303] 或者,按照A0→A1→B0→B1的顺序检查当前图像块的各空域候选块,以确定空域候选运动信息,将确定的空域候选运动信息映射计算得到候选运动信息,并加入到运动信息候选者列表;
[0304] 2、通过当前图像块左上角的运动信息、右上角的运动信息、左下角的运动信息以及时域运动信息中的两个或三个组合并进行映射计算得到候选运动信息,并加入运动信息候选者列表;
[0305] 3、若运动信息候选者列表中候选运动信息的数量仍不足,则通过缺省运动信息(零运动信息)补足。
[0306] 实施例十
[0307] 在该实施例中,对于合并模式、IBC合并模式、三角预测合并模式以及仿射合并模式,在检查当前图像块的各空域候选块时,当前图像块上方的空域候选块的检查顺序先于当前图像块左侧的空域候选块的检查顺序。
[0308] 示例性的,对于合并模式的图像块,各空域候选块的检查顺序为:B1→A1→A0→B0→(B2);
[0309] 对于IBC合并模式的图像块,各空域候选块的检查顺序为:B1→A1→A0→B0→(B2);
[0310] 对于三角预测合并模式的图像块,各空域候选块的检查顺序为:B1→A1→A0→B0→B2;
[0311] 对于仿射合并模式的图像块,各空域候选块的检查顺序为:B0→B1→B2→A0→A1。
[0312] 实施例十一
[0313] 在该实施例中,对于合并模式、IBC合并模式、三角预测合并模式以及仿射合并模式,在检查当前图像块的各空域候选块时,当前图像块上方的空域候选块的检查顺序先于当前图像块左侧的空域候选块的检查顺序,且可以不对B2进行检查。
[0314] 示例性的,对于合并模式的图像块,各空域候选块的检查顺序为:B1→A1→A0→B0;
[0315] 对于IBC合并模式的图像块,各空域候选块的检查顺序为:B1→A1→A0→B0;
[0316] 对于三角预测合并模式的图像块,各空域候选块的检查顺序为:B1→A1→A0→B0;
[0317] 对于仿射合并模式的图像块,各空域候选块的检查顺序为:B0→B1→A0→A1。
[0318] 需要说明的是,在该实施例中,除了可以按照上述描述的合并模式的图像块、IBC合并模式的图像块、三角预测合并模式的图像块以及仿射合并模式的图像块均不对B2进行检查的方式实现空域候选块的检查之外,还可以仅其中一个模式的图像块不对B2进行检查,或其中两个模式的图像块不对B2进行检查,或仅其中一个模式的图像块对B2进行检查。
[0319] 举例来说,对于合并模式的图像块,可以不对B2进行检查;对于IBC合并模式的图像块、三角预测合并模式的图像块以及仿射合并模式的图像块,对B2进行检查。
[0320] 又举例来说,对于合并模式的图像块和IBC合并模式的图像块,可以不对B2进行检查;对于三角预测合并模式的图像块以及仿射合并模式的图像块,对B2进行检查。
[0321] 实施例十二
[0322] 在该实施例中,以AMVP模式的运动信息候选者列表构建为例。
[0323] 在该实施例中,对于AMVP模式,将当前图像块的各空域候选块的检查顺序调整为:先进行当前图像块上方的空域候选块的遍历,再进行当前图像块左侧的空域候选块的遍历。
[0324] 示例性的,对于当前图像块上方的空域候选块的检查顺序可以为B0→B1→B2;
[0325] 对于当前图像块左侧的空域候选块的检查顺序可以为A0→A1。
[0326] 在该实施例中,对于AMVP模式,当按照B0→B1→B2的遍历顺序对当前图像块上方的空域候选块进行遍历时,可以得到一个可用运动信息;或者,当当前图像块上方的空域候选块的运动信息可获但均不可用时,还需要遍历B0对应的伸缩块(scaled B0)、B1对应的伸缩块(scaled B1)和B2对应的伸缩块(scaledB2),得到一个可用运动信息;或者,当当前图像块上方的空域候选块的运动信息均不可获时,得到0个可用运动信息。
[0327] 当按照A0→A1的遍历顺序对当前图像块左侧的空域候选块进行遍历时,可以得到一个可用运动信息或0个可用运动信息;
[0328] 示例性的,当当前图像块左侧的空域候选块的运动信息可获,且上方的空域候选块的运动信息均不可获时,依次遍历A0对应的伸缩块(scaled A0)和A1对应的伸缩块(scaled A1),得到一个可用运动信息。
[0329] 实施例十三
[0330] 在该实施例中,以IBC AMVP模式的运动信息候选者列表构建为例。
[0331] 在该实施例中,对于IBC AMVP模式,先进行当前图像块上方的空域候选块的遍历,再进行当前图像块左侧的空域候选块的遍历。
[0332] 示例性的,对于当前图像块上方的空域候选块的检查顺序可以为B0→B1→B2;
[0333] 对于当前图像块左侧的空域候选块的检查顺序可以为A0→A1。
[0334] 实施例十四
[0335] 以仿射AMVP模式的运动信息候选者列表构建为例。
[0336] 在该实施例中,对于仿射AMVP模式,先进行当前图像块上方的空域候选块的遍历,再进行当前图像块左侧的空域候选块的遍历。
[0337] 示例性的,对于当前图像块上方的空域候选块的检查顺序可以为B0→B1→B2;
[0338] 对于当前图像块左侧的空域候选块的检查顺序可以为A0→A1。
[0339] 需要说明的是,在该实施例中,遍历空域候选块的运动信息时,需要检查空域候选块是否为仿射块(Affine块),以及是否有仿射运动信息存储,若为仿射块,且有仿射运动信息存储,则确定空域候选块的运动信息可用;否则,确定空域候选块的运动信息不可用。
[0340] 实施例十五
[0341] 对于合并模式、IBC合并模式、三角预测合并模式以及仿射合并模式,在检查当前图像块的各空域候选块时,当前图像块上方的空域候选块的检查顺序先于当前图像块左侧的空域候选块的检查顺序。
[0342] 示例性的,对于合并模式的图像块,各空域候选块的检查顺序为:B1→A1→A0→B0→(B2);
[0343] 对于IBC合并模式的图像块,各空域候选块的检查顺序为:B1→A1→A0→B0→(B2);
[0344] 对于三角预测合并模式的图像块,各空域候选块的检查顺序为:B1→A1→A0→B0→B2;
[0345] 对于仿射合并模式的图像块,各空域候选块的检查顺序为:B0→B1→B2→A0→A1。
[0346] 对于AMVP模式,将当前图像块的各空域候选块的检查顺序调整为:先按照B0→B1→B2的顺序遍历当前图像块上方的空域候选块,再按照A0→A1的顺序遍历当前图像块左侧的空域候选块。
[0347] 示例性的,对于AMVP模式,当按照B0→B1→B2的遍历顺序对当前图像块上方的空域候选块进行遍历时,可以得到一个可用运动信息;或者,当当前图像块上方的空域候选块的运动信息可获但均不可用时,还需要遍历B0对应的伸缩块(scaled B0)、B1对应的伸缩块(scaled B1)和B2对应的伸缩块(scaledB2),得到一个可用运动信息;或者,当当前图像块上方的空域候选块的运动信息均不可获时,得到0个可用运动信息。
[0348] 当按照A0→A1的遍历顺序对当前图像块左侧的空域候选块进行遍历时,可以得到一个可用运动信息或0个可用运动信息;
[0349] 示例性的,当当前图像块左侧的空域候选块的运动信息可获,且上方的空域候选块的运动信息均不可获时,依次遍历A0对应的伸缩块(scaled A0)和A1对应的伸缩块(scaled A1),得到一个可用运动信息。
[0350] 在该实施例中,对于IBC AMVP模式,将当前图像块的各空域候选块的检查顺序调整为:先按照B0→B1→B2的顺序遍历当前图像块上方的空域候选块,再按照A0→A1的顺序遍历当前图像块左侧的空域候选块。
[0351] 在该实施例中,对于仿射AMVP模式,将当前图像块的各空域候选块的检查顺序调整为:先按照B0→B1→B2的顺序遍历当前图像块上方的空域候选块,再按照A0→A1的顺序遍历当前图像块左侧的空域候选块。
[0352] 示例性的,对于仿射AMVP模式,遍历空域候选块的运动信息时,需要检查空域候选块是否为仿射块(Affine块),以及是否有仿射运动信息存储,若为仿射块,且有仿射运动信息存储,则确定空域候选块的运动信息可用;否则,确定空域候选块的运动信息不可用。
[0353] 实施例十六
[0354] 对于合并模式、IBC合并模式、三角预测合并模式以及仿射合并模式,在检查当前图像块的各空域候选块时,不对B2进行检查。
[0355] 示例性的,对于合并模式的图像块,各空域候选块的检查顺序为:A1→B1→B0→A0;
[0356] 对于IBC合并模式的图像块,各空域候选块的检查顺序为:A1→B1→B0→A0;
[0357] 对于三角预测合并模式的图像块,各空域候选块的检查顺序为:A1→B1→B0→A0;
[0358] 对于仿射合并模式的图像块,各空域候选块的检查顺序为:A0→A1→B0→B1。
[0359] 对于AMVP模式,在检查当前图像块的各空域候选块时,不对B2进行检查。
[0360] 示例性的,对于AMVP模式,当按照A0→A1的遍历顺序对当前图像块左侧的空域候选块进行遍历时,可以得到一个可用运动信息;或者,当当前图像块左侧的空域候选块的运动信息可获但均不可用时,还需要遍历A0对应的伸缩块(scaled A0)和A1对应的伸缩块(scaled A1),得到一个可用运动信息;或者,当当前图像块左侧的空域候选块的运动信息均不可获时,得到0个可用运动信息。
[0361] 当按照B0→B1的遍历顺序对当前图像块上方的空域候选块进行遍历时,可以得到一个可用运动信息或0个可用运动信息;
[0362] 示例性的,当当前图像块上方的空域候选块的运动信息可获,且左侧的空域候选块的运动信息均不可获时,依次遍历B0对应的伸缩块(scaled B0)和B1对应的伸缩块(scaled B1),得到一个可用运动信息。
[0363] 在该实施例中,对于IBC AMVP模式,当前图像块的各空域候选块的检查顺序为:先按照A0→A1的顺序遍历当前图像块左侧的空域候选块,再按照B0→B1的顺序遍历当前图像块上方的空域候选块。
[0364] 在该实施例中,对于仿射AMVP模式,当前图像块的各空域候选块的检查顺序为:先按照A0→A1的顺序遍历当前图像块左侧的空域候选块,再按照B0→B1的顺序遍历当前图像块上方的空域候选块。
[0365] 示例性的,对于仿射AMVP模式,遍历空域候选块的运动信息时,需要检查空域候选块是否为仿射块(Affine块),以及是否有仿射运动信息存储,若为仿射块,且有仿射运动信息存储,则确定空域候选块的运动信息可用;否则,确定空域候选块的运动信息不可用。
[0366] 本申请实施例中,通过确定当前图像块的各空域候选块的检查顺序,并根据所确定的检查顺序,确定空域候选运动信息,进而,根据空域候选运动信息,构建当前图像块对应的运动信息候选者列表,利用当前图像块的上方空域候选块的运动信息最终被选中为预测运动信息的概率高于左侧空域候选块的运动信息最终被选中为预测运动信息的概率的特点,减少了索引编码开销,提高了编码性能。
[0367] 请参见图6,为本申请实施例提供的一种三角预测解码方法,如图6所示,该三角预测解码方法可以包括以下步骤:
[0368] 步骤S600、解析当前图像块的三角子块的划分信息。
[0369] 步骤S610、解析当前图像块的三角子块对应的运动信息在列表中的索引值。
[0370] 步骤S620、基于解析得到的划分信息对当前图像块进行子块划分。
[0371] 本申请实施例中,步骤S600~步骤S620的具体实现可以参见现有三角预测解码流程中的相关描述,本申请实施例在此不做赘述。
[0372] 示例性的,对当前图像块进行子块划分可以对当前块按照对角线划分(与水平向右方向呈45度夹角方向)或按照斜对角线(与水平向右方向呈135度夹角方向)进行子块划分。
[0373] 步骤S630、构建当前图像块的运动信息候选者列表。
[0374] 作为本申请一种可能的实施方式,当前图像块的运动信息候选者列表可以参照上述方法实施例中任一实施例中描述的三角预测合并模式的运动信息候选者列表构建方法。
[0375] 作为本申请另一种可能的实施方式,当前图像块的运动信息候选者列表可以参照上述方法实施例中任一实施例中描述的合并模式的运动信息候选者列表构建方法。
[0376] 作为该实施方式的实施例一,可以采用合并模式的运动信息候选者列表构建方式。若某候选运动信息为双向运动信息,则采用该双向运动信息的前向运动信息。
[0377] 作为该实施方式的实施例二,可以采用合并模式的运动信息候选者列表构建方式。若某候选运动信息为双向运动信息,则采用该双向运动信息的前向运动信息和后向运动信息。
[0378] 作为该实施方式的实施例三,可以采用合并模式的部分运动信息候选者列表,该部分运动信息候选者列表包空域候选运动信息和时域候选运动信息。若某候选运动信息为双向运动信息,则采用该双向运动信息的前向运动信息。
[0379] 作为该实施方式的实施例四,可以采用合并模式的部分运动信息候选者列表,该部分运动信息候选者列表包空域候选运动信息和时域候选运动信息。若某候选运动信息为双向运动信息,则采用该双向运动信息的前向运动信息和后向运动信息。
[0380] 作为该实施方式的实施例五,可以采用合并模式的部分运动信息候选者列表,该部分运动信息候选者列表包空域候选运动信息。若某候选运动信息为双向运动信息,则采用该双向运动信息的前向运动信息。
[0381] 作为该实施方式的实施例六,可以采用合并模式的部分运动信息候选者列表,该部分运动信息候选者列表包空域候选运动信息。若某候选运动信息为双向运动信息,则采用该双向运动信息的前向运动信息和后向运动信息。
[0382] 步骤S640、基于解析得到的索引值,从所构建的运动信息候选者列表中获取当前图像块的三角子块对应的运动信息。
[0383] 步骤S650、基于获取到的当前图像块的三角子块对应的运动信息,对当前图像块的三角子块,及其中间交界子块,进行运动补偿,获得当前图像块的预测运动信息。
[0384] 本申请实施例中,步骤S640~步骤S650的具体实现可以参见现有三角预测解码流程中的相关描述,本申请实施例在此不做赘述。
[0385] 请参见图7,为本申请实施例提供的一种索引编码/解码方法的流程示意图,如图7所示,该索引编码/解码方法可以包括以下步骤:
[0386] 步骤S700、对运动信息候选者的模式索引号进行二值化,以得到二值化码字序列。
[0387] 步骤S710、确定与当前图像块的形状匹配的上下文模型。
[0388] 步骤S720、根据上下文模型对二值化码字序列的第一个二值化码值进行编码/解码。
[0389] 本申请实施例中,当需要对运动信息候选者的模式索引号进行编码时,需要先对运动信息候选者的模式索引号进行二值化,以得到对应的二值化码字序列。
[0390] 例如,传统的合并模式索引号对应二值化码字序列号可以如表1所示:
[0391] 表1
[0392]0 0
1 10
2 110
3 1110
4 11110
5 11111
[0393] 本申请实施例中,考虑到当前图像块的形状不同时,最终被选为预测运动信息的候选运动信息会存在不同,因此,当采用CABAC(Context-based Adaptive Binary Arithmetic Coding,基于上下文的自适应二进制算术编码)对运动信息候选者的模式索引号对应的二值化码字序列的第一个二值化码字进行编码时,若采用固定的上下文模型进行编码,会降低编码性能。
[0394] 因此,为了提高编码性能,在本申请实施例中,对于运动信息候选者的模式索引号进行二值化之后,可以根据当前图像块的形状确定匹配的上下文模型,并根据所确定的上下文模型对二值化码字序列的第一个二值化码值进行编码/解码。
[0395] 作为一种示例,上述当前图像块的形状可以通过当前图像块的宽高比表征;
[0396] 上述确定与当前图像块的形状匹配的上下文模型,可以包括:
[0397] 若当前图像块的宽高比大于等于1,则确定与当前编码块的形状匹配的上下文模型为第一上下文模型;
[0398] 若当前图像块的宽高比小于1,则确定与当前编码块的形状匹配的上下文模型为第二上下文模型。
[0399] 在该示例中,考虑到当当前图像块的宽高比大于等于1时,B1被最终选中为预测运动信息的概率高于A1被最终选中为预测运动信息的概率,因此,当当前图像块的宽高比大于等于1时,可以选择一种在B1被最终选中为预测运动信息的情况下性能更优的上下文模型(本文中称为第一上下文模型),并根据第一上下文模型对二值化码字序列的第一个二值化码值进行编码。
[0400] 当当前图像块的宽高比小于1时,A1被最终选中为预测运动信息的概率高于B1被最终选中为预测运动信息的概率,因此,当当前图像块的宽高比小于1时,可以选择一种在A1被最终选中为预测运动信息的情况下性能更优的上下文模型(本文中称为第二上下文模型),并根据第二上下文模型对二值化码字序列的第一个二值化码值进行编码/解码。
[0401] 请参见图8,为本申请实施例提供的一种索引编码/解码方法的流程示意图,如图8所示,该索引编码/解码方法可以包括以下步骤:
[0402] 步骤S800、根据当前图像块的形状对运动信息候选者的模式索引号进行二值化,以得到二值化码字序列。
[0403] 步骤S810、确定上下文模型。
[0404] 步骤S820、根据所确定的上下文模型对所确定的二值化码字序列的第一个二值化码值进行编码/解码。
[0405] 本申请实施例中,当需要对运动信息候选者的模式索引号进行编码时,需要先对运动信息候选者的模式索引号进行二值化,以得到对应的二值化码字序列。
[0406] 本申请实施例中,考虑到当前图像块的形状不同时,最终被选为预测运动信息的候选运动信息会存在不同,因此,对运动信息候选者的模式索引号采用固定的二值化码字序列会降低编码性能。
[0407] 本申请实施例中,为了提高编码性能,当需要对运动信息候选者的模式索引号进行编码时,可以根据当前图像块的形状对运动信息候选者的模式索引号进行二值化。
[0408] 作为一种示例,上述当前图像块的状态可以通过当前图像块的宽高比表征;
[0409] 上述根据当前图像块的形状对运动信息候选者的模式索引号进行二值化,可以包括:
[0410] 若当前图像块的宽高比大于等于1,则按照第一二值化方式对运动信息候选者的模式索引号进行二值化;其中,第一二值化方式中第二个索引对应1位二值化码字序列;
[0411] 若当前图像块的宽高比小于1,则按照第二二值化方式对运动信息候选者的模式索引号进行二值化;其中,第二二值化方式中第一个索引对应1位二值化码字序列。
[0412] 在该示例中,考虑到当当前图像块的宽高比大于等于1时,B1被最终选中为预测运动信息的概率高于A1被最终选中为预测运动信息的概率,因此,当当前图像块的宽高比大于等于1时,可以选用一种第二个索引对应1位二值化码字序列的二值化方式(本文中称为第一二值化方式)对运动信息候选者的模式索引号进行二值化。
[0413] 当当前图像块的宽高比小于1时,A1被最终选中为预测运动信息的概率高于B1被最终选中为预测运动信息的概率,因此,当当前图像块的宽高比小于1时,可以选用一种第一个索引对应1位二值化码字序列的二值化方式(本文中称为第二二值化方式)对运动信息候选者的模式索引号进行二值化。
[0414] 举例来说,第一二值化方式和第二二值化方式下运动信息候选者的模式索引号与二值化码字序列的对应关系可以如表2所示:
[0415] 表2
[0416]  Width=height
0 0 10
1 10 0
2 110 110
3 1110 1110
4 11110 11110
5 11111 11111
[0417] 本申请实施例中,根据当前编码图像块的形状对运动信息候选者的模式索引号进行二值化,并得到二值化码字序列之后,可以确定上下文模型,并根据所确定的上下文模型对所得到的二值化码字序列的第一个二值化码值进行编码/解码。
[0418] 以上对本申请提供的方法进行了描述。下面对本申请提供的装置进行描述:
[0419] 请参见图9,为本申请实施例提供的一种运动信息候选者列表构建装置的硬件结构示意图。该运动信息候选者列表构建装置可以包括处理器901、通信接口902、存储器903和通信总线904。处理器901、通信接口902以及存储器903通过通信总线904完成相互间的通信。其中,存储器903上存放有计算机程序;处理器901可以通过执行存储器903上所存放的程序,实现上文描述的运动信息候选者列表构建方法。
[0420] 本文中提到的存储器903可以是任何电子磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,存储器902可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
[0421] 如图10所示,从功能上划分,上述运动信息候选者列表构建装置可以包括:第一确定单元1010、第二确定单元1020和构建单元1030;其中:
[0422] 第一确定单元1010,用于确定当前图像块的各空域候选块的检查顺序;其中,当前图像块的上方空域候选块的检查顺序优于当前图像块的左侧空域候选块的检查顺序;
[0423] 第二确定单元1020,用于根据所述检查顺序,确定空域候选运动信息;
[0424] 第三确定单元1030,用于根据所述空域候选运动信息,构建所述当前图像块对应的运动信息候选者列表。
[0425] 作为一种可能的实施方式,第一确定单元1010,具体用于确定所述当前图像块的预测模式;根据所述预测模式确定当前图像块的各空域候选块的检查顺序。
[0426] 作为一种可能的实施方式,当所述预测模式为合并模式、帧内块复制IBC合并模式、仿射合并模式或三角预测合并模式时,所述检查顺序至少包括4个空域候选块的遍历次序;所述4个空域候选块的遍历次序位于第五空域候选块之前,所述第五空域候选块为替补空域候选块;
[0427] 其中,所述4个空域候选块包括第一空域候选块、第二空域候选块、第三空域候选块和第四空域候选块,其中,所述第一空域候选块为当前图像块左侧最下方的空域相邻块,所述第二空域候选块为当前图像块上方最右侧的空域相邻块,所述第三空域候选块为与当前图像块右上角距离最近的空域相邻块,所述第四空域候选块为与当前图像块左下角距离最近的空域相邻块,所述第五空域候选块为与当前图像块左上角距离最近的空域相邻块。
[0428] 作为一种可能的实施方式,所述4个空域候选块的遍历次序为第一遍历顺序,所述第一遍历顺序为依次遍历所述第二空域候选块,所述第一空域候选块,所述第四空域候选块和所述第三空域候选块。
[0429] 作为一种可能的实施方式,构建单元1030,具体用于当所述预测模式为合并模式时,根据所述空域候选运动信息、时域候选运动信息以及所述当前图像块之前的已编码/解码块的运动信息,构建所述当前图像块对应的运动信息候选者列表。
[0430] 作为一种可能的实施方式,构建单元1030,还用于对所述运动信息候选者列表中的已有运动信息进行加权;将加权后的运动信息作为候选运动信息加入所述当前图像块的运动信息候选者列表。
[0431] 作为一种可能的实施方式,构建单元1030,具体用于当所述预测模式为IBC合并模式时,根据所述空域候选运动信息以及所述当前图像块之前的已编码/解码块的运动信息,构建所述当前图像块对应的运动信息候选者列表。
[0432] 作为一种可能的实施方式,构建单元1030,还用于对所述运动信息候选者列表中的已有运动信息进行加权;将加权后的运动信息作为候选运动信息加入所述当前图像块的运动信息候选者列表。
[0433] 作为一种可能的实施方式,当所述预测模式为三角预测合并模式或仿射合并模式时,所述检查顺序包括5个空域候选块的遍历次序;
[0434] 其中,所述5个空域候选块包括第一空域候选块、第二空域候选块、第三空域候选块、第四空域候选块和第五空域候选块,其中,所述第一空域候选块为当前图像块左侧最下方的空域相邻块,所述第二空域候选块为当前图像块上方最右侧的空域相邻块,所述第三空域候选块为与当前图像块右上角距离最近的空域相邻块,所述第四空域候选块为与当前图像块左下角距离最近的空域相邻块,所述第五空域候选块为与当前图像块左上角距离最近的空域相邻块。
[0435] 作为一种可能的实施方式,当所述预测模式为三角预测合并模式时,所述5个空域候选块的遍历次序为第二遍历顺序,所述第二遍历顺序为依次遍历所述第二空域候选块,所述第一空域候选块,所述第四空域候选块、所述第三空域候选块和第五空域候选块。
[0436] 作为一种可能的实施方式,构建单元1030,具体用于当所述预测模式为三角预测合并模式,根据所述空域候选运动信息、时域候选运动信息,构建所述当前图像块对应的运动信息候选者列表;
[0437] 其中,若候选运动信息为双向运动信息,则将所述双向运动信息的前向运动信息或/和后向运动信息加入所述运动信息候选者列表。
[0438] 作为一种可能的实施方式,构建单元1030,具体用于当所述预测模式为三角预测合并模式,根据所述空域候选运动信息、时域候选运动信息以及所述当前图像块之前的已编码/解码块的运动信息,构建所述当前图像块对应的运动信息候选者列表;
[0439] 其中,若候选运动信息为双向运动信息,则将所述双向运动信息的前向运动信息或/和后向运动信息加入所述运动信息候选者列表。
[0440] 作为一种可能的实施方式,构建单元1030,还用于获取所述运动信息候选者列表中的前两个候选运动信息;将所述前两个候选运动信息进行加权后得到的加权候选运动信息加入所述运动信息候选者列表。
[0441] 作为一种可能的实施方式,所述运动信息候选者列表中各候选运动信息按照单向运动信息、双向运动信息的前向运动信息、双向运动信息的后向运动信息、加权候选运动信息的顺序排序。
[0442] 作为一种可能的实施方式,当所述预测模式为仿射合并模式时,所述5个空域候选块的遍历次序为第三遍历顺序,所述第三遍历顺序为依次遍历第三空域候选块、第二空域候选块、第五空域候选块、第四空域候选块和第一空域候选块。
[0443] 作为一种可能的实施方式,构建单元1030,用于当所述预测模式为仿射合并模式时,基于所述空域候选运动信息映射计算得到第一类型候选运动信息,并将所述第一类型候选运动信息加入到所述运动信息候选者列表;基于所述当前图像块左上角的运动信息、右上角的运动信息、左下角的运动信息以及时域运动信息中的两个或三个组合并进行映射计算得到第二类型候选运动信息,并将所述第二类型候选运动信息加入到所述运动信息候选者列表。
[0444] 作为一种可能的实施方式,当所述预测模式为可选时域运动矢量预测ATMVP合并模式时,所述检查顺序包括1个空域候选块的遍历次序;
[0445] 其中,所述1个空域候选块包括第二空域候选块。
[0446] 作为一种可能的实施方式,构建单元1030,用于基于ATMVP合并模式的候选运动信息和仿射合并模式的候选运动信息构建基于子块技术的运动信息候选者列表,并标记各候选运动信息的模式。
[0447] 作为一种可能的实施方式,构建单元1030,用于基于ATMVP合并模式的候选运动信息构建基于子块技术的运动信息候选者列表;
[0448] 将仿射合并模式的候选运动信息加入所述基于子块技术的运动信息候选者列表。
[0449] 作为一种可能的实施方式,当所述预测模式为合并模式时,所述检查顺序包括4个空域候选块的遍历次序;或,
[0450] 当所述预测模式为IBC合并模式时,所述检查顺序包括4个空域候选块的遍历次序;或,
[0451] 当所述预测模式为三角预测合并模式时,所述检查顺序包括4个空域候选块的遍历次序;或,
[0452] 当所述预测模式为仿射合并模式时,所述检查顺序包括4个空域候选块的遍历次序;
[0453] 其中,所述4个空域候选块包括第一空域候选块、第二空域候选块、第三空域候选块和第四空域候选块,其中,所述第一空域候选块为当前图像块左侧最下方的空域相邻块,所述第二空域候选块为当前图像块上方最右侧的空域相邻块,所述第三空域候选块为与当前图像块右上角距离最近的空域相邻块,所述第四空域候选块为与当前图像块左下角距离最近的空域相邻块。
[0454] 作为一种可能的实施方式,当所述预测模式为合并模式时,所述4个空域候选块的遍历次序为第一遍历顺序;或,
[0455] 当所述预测模式为IBC合并模式时,所述4个空域候选块的遍历次序为第一遍历顺序;或,
[0456] 当所述预测模式为三角预测合并模式时,所述4个空域候选块的遍历次序为第一遍历顺序;或,
[0457] 当所述预测模式为仿射合并模式时,所述4个空域候选块的遍历次序为第四遍历顺序,所述第四遍历顺序为依次遍历第三空域候选块、第二空域候选块、第四空域候选块和第一空域候选块。
[0458] 作为一种可能的实施方式,当所述预测模式为高级运动矢量预测AMVP模式或IBC AMVP模式时,所述检查顺序至少包括第五遍历顺序和第六遍历顺序;所述第五遍历顺序用于进行当前图像块的上方空域候选块的遍历,所述第六遍历顺序用于进行当前图像块的左侧空域候选块的遍历;所述上方空域候选块包括:第三空域候选块、第二空域候选块和第五空域候选块;所述左侧空域候选块包括:第四空域候选块和第一空域候选块;
[0459] 所述第五遍历顺序为依次遍历第三空域候选块、第二空域候选块和第五空域候选块;
[0460] 所述第六遍历顺序为依次遍历第四空域候选块和第一空域候选块。
[0461] 作为一种可能的实施方式,第二确定单元1020,具体用于先按照所述第五遍历顺序遍历所述上方空域候选块,再按照所述第六遍历顺序遍历所述左侧空域候选块,以确定所述候选运动信息。
[0462] 作为一种可能的实施方式,第二确定单元1020,具体用于当所述预测模式为AMVP模式时,按照所述第五遍历顺序依次遍历所述上方空域候选块,得到一个可用运动信息;或者,
[0463] 当所述上方空域候选块的运动信息可获但均不可用时,遍历所述第三空域候选块对应的伸缩块、所述第二空域候选块对应的伸缩块和所述第五空域候选块对应的伸缩块,得到一个可用运动信息;或者,
[0464] 当所述上方空域候选块的运动信息均不可获时,得到0个可用运动信息。
[0465] 作为一种可能的实施方式,第二确定单元1020,具体用于当所述预测模式为AMVP模式时,按照所述第六遍历顺序依次遍历所述左侧空域候选块,遍历出一个可用运动信息或者0个可用运动信息;
[0466] 其中,当所述左侧空域候选块的运动信息可获,且所述上侧空域候选块的运动信息均不可获时,依次遍历所述第四空域候选块对应的伸缩块和所述第一空域候选块对应的伸缩块,得到一个可用运动信息。
[0467] 作为一种可能的实施方式,第二确定单元1020,具体用于当所述预测模式为IBC AMVP模式时,按照所述第五遍历顺序依次遍历所述上方空域候选块,遍历出一个可用运动信息或者0个可用运动信息。
[0468] 作为一种可能的实施方式,第二确定单元1020,具体用于当所述预测模式为IBC AMVP模式时,按照所述第六遍历顺序依次遍历所述左侧空域候选块,遍历出一个可用运动信息或者0个可用运动信息。
[0469] 作为一种可能的实施方式,当所述预测模式为仿射AMVP模式时,所述检查顺序为第三遍历顺序。
[0470] 请参见图11,为本申请实施例提供的一种三角预测解码装置的硬件结构示意图。该三角预测解码装置可以包括处理器1101、通信接口1102、存储器1103和通信总线1104。处理器1101、通信接口1102以及存储器1103通过通信总线1104完成相互间的通信。其中,存储器1103上存放有计算机程序;处理器1101可以通过执行存储器1103上所存放的程序,实现上文描述的三角预测解码方法。
[0471] 本文中提到的存储器1103可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,存储器1102可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
[0472] 如图12所示,从功能上划分,上述三角预测解码装置可以包括:解析单元1210、划分单元1220、构建单元1230、获取单元1240和预测单元1250;其中:
[0473] 解析单元1210,用于解析当前图像块的三角子块的划分信息;
[0474] 解析单元1210,还用于解析所述当前图像块的三角子块对应的运动信息在列表中的索引值;
[0475] 划分单元1220,用于基于所述划分信息对所述当前图像块进行子块划分;
[0476] 构建单元1230,用于构建所述当前图像块的运动信息候选者列表;其中,所述运动信息候选者列表的构建可以参照图6所示方法实施例中的相关描述;
[0477] 获取单元1240,用于基于所述索引值,从所述运动信息候选者列表中获取所述图像块的三角子块对应的运动信息;
[0478] 预测单元1250,用于基于所述图像块的三角子块对应的运动信息,对所述当前图像块的三角子块,及其中间交界子块,进行运动补偿,获得当前图像块的预测运动信息。
[0479] 请参见图13,为本申请实施例提供的一种索引编码/解码装置的硬件结构示意图。该索引编码/解码装置可以包括处理器1301、通信接口1302、存储器1303和通信总线1304。
处理器1301、通信接口1302以及存储器1303通过通信总线1304完成相互间的通信。其中,存储器1303上存放有计算机程序;处理器1301可以通过执行存储器1303上所存放的程序,实现上文描述的索引编码/解码方法。
[0480] 本文中提到的存储器1303可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,存储器1302可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
[0481] 如图14所示,从功能上划分,上述索引编码/解码装置可以包括:二值化单元1410、确定单元1420和编码/解码单元1430;其中:
[0482] 二值化单元1410,用于对运动信息候选者的模式索引号进行二值化,以得到二值化码字序列;
[0483] 确定单元1420,用于确定与当前图像块的形状匹配的上下文模型;
[0484] 编码/解码单元1430,用于根据所述上下文模型对所述二值化码字序列的第一个二值化码值进行编码/解码。
[0485] 请参见图15,为本申请实施例提供的一种索引编码/解码装置的硬件结构示意图。该索引编码/解码装置可以包括处理器1501、通信接口1502、存储器1503和通信总线1504。
处理器1501、通信接口1502以及存储器1503通过通信总线1504完成相互间的通信。其中,存储器1503上存放有计算机程序;处理器1501可以通过执行存储器1503上所存放的程序,实现上文描述的索引编码/解码方法。
[0486] 本文中提到的存储器1503可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,存储器1502可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
[0487] 如图16所示,从功能上划分,上述索引编码/解码装置可以包括:二值化单元1610、确定单元1620和编码/解码单元1630;其中:
[0488] 二值化单元1610,用于根据当前图像块的形状对运动信息候选者的模式索引号进行二值化,以得到二值化码字序列;
[0489] 确定单元1620,用于确定上下文模型;
[0490] 编码/解码单元1630,用于根据所述上下文模型对所述二值化码字序列的第一个二值化码值进行编码/解码。
[0491] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0492] 以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈