帧间预测方法和设备与流程

文档序号:20204592发布日期:2020-03-27 21:04阅读:269来源:国知局
帧间预测方法和设备与流程

本申请涉及视频图像技术,特别涉及帧间预测方法和设备。



背景技术:

帧间预测,是指利用视频图像中图像块的时域相邻块的重建像素值进行预测编码,广泛用于普通电视、会议电视、视频电话、高清晰度电视等领域。

目前,在进行帧间预测时,常因为视频图像存在残影和/或视频图像的边缘模糊等因素导致视频图像中多个图像块的帧间预测像素块不是最佳帧间预测像素块,降低帧间预测精确度和编码性能。



技术实现要素:

本申请提供了帧间预测方法和设备,以通过当前图像块的运动信息指导帧间预测像素。

本申请提供的技术方案包括:

本申请提供第一种帧间预测方法,该方法应用于编码端,包括:

根据当前图像块的运动信息确定目标多假设预测mhp位置集合;

确定目标mhp位置集合中各个目标mhp位置对应的候选帧间预测像素;

依据各个候选帧间预测像素确定所述当前图像块的目标帧间预测像素。

作为一个实施例,所述根据当前图像块的运动信息确定目标多假设预测mhp位置集合包括:

根据当前图像块的运动信息确定候选mhp位置集合;

从所述候选mhp位置集合中选择至少两个候选mhp位置;

将选择出的各个候选mhp位置组成所述目标mhp位置集合。

作为一个实施例,所述运动信息包括:运动矢量;

所述根据当前图像块的运动信息确定候选mhp位置集合包括:

依据所述当前图像块的运动矢量的方向,选择与所述运动矢量的终止点的距离满足预设条件的至少两个位置作为候选mhp位置组成所述候选mhp位置集合。

作为一个实施例,所述依据当前图像块的运动矢量的方向,选择与所述运动矢量的终止点的距离满足预设条件的至少两个位置作为候选mhp位置组成所述候选mhp位置集合包括:

依据当前图像块的运动矢量的方向,在目标坐标系中确定目标区域,所述目标区域为所述目标坐标系中与所述运动矢量的方向匹配的区域;

根据所述预设条件将所述目标区域中的至少两个位置作为候选mhp位置组成所述候选mhp位置集合。

作为一个实施例,所述目标坐标系是以第一指定点为原点的坐标系;

所述第一指定点为所述运动矢量的终止点或者为所述运动矢量的方向上除所述终止点之外的其他点。

作为一个实施例,所述运动信息还包括:所述当前图像块采用的参考帧对应的第一参考帧索引;

所述候选mhp位置集合中各个候选mhp位置对应第二参考帧索引;

当所述第一参考帧索引与所述第二参考帧索引相同时,所述目标坐标系是以所述第一指定点为原点的坐标系。

当所述第一参考帧索引与所述第二参考帧索引不同时,所述目标坐标系是以第二指定点为原点的坐标系,所述第二指定点为目标运动矢量的终止点或者为所述运动矢量的方向上除所述目标运动矢量的终止点之外的其他点;

其中,所述目标运动矢量是所述当前图像块的运动矢量与l之积得到的运动矢量,所述l为l1与l2的比值,所述l1为所述第二参考帧索引对应的参考帧与当前图像块所在当前帧的时域跨度,所述l2为所述第一参考帧索引对应的参考帧与当前帧的时域跨度。

在一个例子中,所述第一参考帧索引、第二参考帧索引为所述编码端已记录的参考帧列表中参考帧的索引。

在一个例子中,所述依据当前图像块的运动矢量的方向,在目标坐标系中确定目标区域包括:

若当前图像块的运动矢量中的横向分量和纵向分量的乘积大于0,确定所述目标坐标系中的横向坐标轴、纵向坐标轴、第一坐标象限区域和第三坐标象限区域为所述目标区域;

若当前图像块的运动矢量中的横向分量和纵向分量的乘积小于0,确定所述目标坐标系中的横向坐标轴、纵向坐标轴、第二坐标象限区域和第四坐标象限区域为所述目标区域。

在一个例子中,所述依据当前图像块的运动矢量在目标坐标系中确定目标区域包括:

若当前图像块的运动矢量中的横向分量为0,确定所述目标坐标系中的纵向坐标轴为所述目标区域;

若当前图像块的运动矢量中的纵向分量为0,确定所述目标坐标系中的横向坐标轴为所述目标区域。

作为一个实施例,所述依据各个候选帧间预测像素确定所述当前图像块的目标帧间预测像素包括:

根据所述各个候选帧间预测像素的加权系数对所述各个候选预测像素进行加权运算;

确定加权运算结果为所述当前图像块的目标帧间预测像素。

在一个例子中,该方法进一步包括:

存储当前图像块的至少一个目标mhp位置存储,以向与所述当前图像块相邻的其他图像块提供帧间预测参考;或者,

将依据当前图像块的至少一个目标mhp位置计算出的计算结果进行存储,以向与所述当前图像块相邻的其他图像块提供帧间预测参考。

在一个例子中,该方法进一步包括:

向解码端发送携带mhp位置策略信息的编码比特流,所述mhp位置策略信息用于向所述解码端提供确定目标mhp位置的策略。

其中,所述mhp位置策略信息包括第一指示信息,所述第一指示信息用于指示可用的候选mhp位置集合;或者,所述mhp位置策略信息包括第二指示信息,所述第二指示信息用于指示可用的目标mhp位置;或者,所述mhp位置策略信息包括第三指示信息,所述第三指示信息包括运动信息偏移量,以指示依据所述当前图像块的运动信息和所述运动信息偏移量确定目标mhp位置。

本申请提供第二种帧间预测方法,该方法应用于解码端,包括:

根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合;

确定目标mhp位置集合中各个目标mhp位置对应的候选帧间预测像素;

依据各个候选帧间预测像素确定所述当前图像块的目标帧间预测像素。

在一个例子中,所述mhp位置策略信息包括第一指示信息,所述第一指示信息用于指示可用的候选mhp位置集合;

所述根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合包括:

根据当前图像块的运动信息确定候选mhp位置集合;

依据所述第一指示信息指示的可用候选mhp位置集合从已确定的所有候选mhp位置集合中确定目标mhp位置集合。

在一个例子中,所述mhp位置策略信息包括第二指示信息,所述第二指示信息用于指示可用的目标mhp位置;

所述根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合包括:

根据当前图像块的运动信息确定候选mhp位置集合;

依据所述第二指示信息指示的可用目标mhp位置从候选mhp位置集合中选择目标mhp位置并组成所述目标mhp位置集合。

在一个例子中,所述mhp位置策略信息包括第三指示信息,所述第三指示信息包括运动信息偏移量,以指示依据所述当前图像块的运动信息和所述运动信息偏移量确定目标mhp位置;

所述根据已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合包括:

依据所述第三指示信息指示的运动信息偏移量和所述当前图像块的运动信息确定目标mhp位置;

将确定的所述目标mhp位置组成所述目标mhp位置集合。

本申请提供第三种帧间预测方法,该方法应用于解码端,包括:

根据当前图像块的运动信息确定当前图像块对应的目标多假设预测mhp位置集合;

确定目标mhp位置集合中各个目标mhp位置对应的候选帧间预测像素;

依据各个候选帧间预测像素确定所述当前图像块的目标帧间预测像素。

在一个例子中,所述根据当前图像块的运动信息确定当前图像块对应的目标mhp位置集合包括:

根据当前图像块的运动信息确定候选mhp位置集合;

从所述候选mhp位置集合中选择至少两个候选mhp位置;

将选择出的各个候选mhp位置组成所述目标mhp位置集合。

在一个例子中,所述运动信息包括:运动矢量;

所述根据当前图像块的运动信息确定候选mhp位置集合包括:

依据所述当前图像块的运动矢量的方向,选择与所述运动矢量的终止点的距离满足预设条件的至少两个位置作为候选mhp位置组成所述候选mhp位置集合。

在一个例子中,所述依据当前图像块的运动矢量的方向,选择与所述运动矢量的终止点的距离满足预设条件的至少两个位置作为候选mhp位置组成所述候选mhp位置集合包括:

依据当前图像块的运动矢量的方向,在目标坐标系中确定目标区域,所述目标区域为所述目标坐标系中与所述运动矢量的方向匹配的区域;

根据所述预设条件将所述目标区域中的至少两个位置作为候选mhp位置组成所述候选mhp位置集合。

在一个例子中,所述目标坐标系是以第一指定点为原点的坐标系;

所述第一指定点为所述运动矢量的终止点或者为所述运动矢量的方向上除所述终止点之外的其他点。

在一个例子中,所述运动信息还包括:所述当前图像块采用的参考帧对应的第一参考帧索引;

所述候选mhp位置集合中各个候选mhp位置对应第二参考帧索引。

在一个例子中,当所述第一参考帧索引与所述第二参考帧索引相同时,所述目标坐标系是以第一指定点为原点的坐标系。

在一个例子中,当所述第一参考帧索引与所述第二参考帧索引不同时,所述目标坐标系是以第二指定点为原点的坐标系,所述第二指定点为目标运动矢量的终止点或者为所述运动矢量的方向上除所述目标运动矢量的终止点之外的其他点;

所述目标运动矢量是所述当前图像块的运动矢量与l之积得到的运动矢量,所述l为l1与l2的比值,所述l1为所述第二参考帧索引对应的参考帧与当前图像块所在当前帧的时域跨度,所述l2为所述第一参考帧索引对应的参考帧与当前帧的时域跨度。

在一个例子中,所述第一参考帧索引、第二参考帧索引为所述编码端已记录的参考帧列表中参考帧的索引。

在一个例子中,所述依据当前图像块的运动矢量在目标坐标系中确定目标区域包括:

若当前图像块的运动矢量中的横向分量和纵向分量的乘积大于0,确定所述目标坐标系中的横向坐标轴、纵向坐标轴、第一坐标象限区域和第三坐标象限区域为所述目标区域;

若当前图像块的运动矢量中的横向分量和纵向分量的乘积小于0,确定所述目标坐标系中的横向坐标轴、纵向坐标轴、第二坐标象限区域和第四坐标象限区域为所述目标区域。

在一个例子中,所述依据当前图像块的运动矢量在目标坐标系中确定目标区域包括:

若当前图像块的运动矢量中的横向分量为0,确定所述目标坐标系中的纵向坐标轴为所述目标区域;

若当前图像块的运动矢量中的纵向分量为0,确定所述目标坐标系中的横向坐标轴为所述目标区域。

作为一个实施例,所述根据当前图像块的运动信息确定当前图像块对应的目标多假设预测mhp位置集合包括:

根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合。

在一个例子中,所述mhp位置策略信息包括第一指示信息,所述第一指示信息用于指示可用的候选mhp位置集合;

所述根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合包括:

根据当前图像块的运动信息确定所有候选mhp位置集合;

依据所述第一指示信息指示的可用候选mhp位置集合从所有候选mhp位置集合中确定目标mhp位置集合。

在一个例子中,所述mhp位置策略信息包括第二指示信息,所述第二指示信息用于指示可用的目标mhp位置;

所述根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合包括:

根据当前图像块的运动信息确定所有候选mhp位置集合;

依据所述第二指示信息指示的可用目标mhp位置从所有候选mhp位置集合中选择目标mhp位置组成所述目标mhp位置集合。

在一个例子中,所述mhp位置策略信息包括第三指示信息,所述第三指示信息包括运动信息偏移量,以指示依据所述当前图像块的运动信息和所述运动信息偏移量确定目标mhp位置;

所述根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合包括:

依据所述第三指示信息指示的运动信息偏移量和所述当前图像块的运动信息确定目标mhp位置;

将确定的所述目标mhp位置组成所述目标mhp位置集合。

作为一个实施例,所述依据各个候选帧间预测像素确定所述当前图像块的目标帧间预测像素包括:

根据所述各个候选帧间预测像素的加权系数对所述各个候选预测像素进行加权运算;

确定加权运算结果为所述当前图像块的目标帧间预测像素。

作为一个实施例,该方法进一步包括:

存储当前图像块的至少一个目标mhp位置存储,以向与所述当前图像块相邻的其他图像块提供帧间预测参考;或者,

将依据当前图像块的至少一个目标mhp位置计算出的计算结果进行存储,以向与所述当前图像块相邻的其他图像块提供帧间预测参考。

本申请实施例提供一种编码端设备,包括:机器可读存储介质和处理器;

其中,所述机器可读存储介质,用于存储机器可读指令;

所述处理器,用于读取所述机器可读指令,并执行所述指令以实现上述第一种帧间预测方法。

本申请实施例提供第一种解码端设备,包括:机器可读存储介质和处理器;

其中,所述机器可读存储介质,用于存储机器可读指令;

所述处理器,用于读取所述机器可读指令,并执行所述指令以实现上述第二种帧间预测方法。

本申请实施例提供第二种解码端设备,包括:机器可读存储介质和处理器;

其中,所述机器可读存储介质,用于存储机器可读指令;

所述处理器,用于读取所述机器可读指令,并执行所述指令以实现上述第三种帧间预测方法。

由以上技术方案可以看出,本申请中,编码端或者解码端通过根据当前图像块的运动信息确定目标mhp位置集合,再根据目标mhp位置集合中各个目标mhp位置对应的候选帧间预测像素推导当前图像块的目标帧间预测像素,能够保证最终得到的当前图像块的目标帧间预测像素是最佳预测像素块。即使视频图像存在残影和/或视频图像的边缘模糊等因素,也能保证最终得到的当前图像块的目标帧间预测像素更接近当前图像块的原始像素,是最佳预测像素块,提高帧间预测精确度和编码性能。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

图1为本申请实施例1提供的帧间预测方法流程图;

图2为本申请实施例1提供的步骤101的实施例实现流程图;

图3为本申请实施例1提供的步骤201实现流程图;

图4为本申请实施例1提供的步骤302的实现流程图;

图5a至5d为本申请实施例1提供的目标区域示意图;

图6为本申请实施例1提供的步骤201另一实现流程图;

图7为本申请实施例1提供的目标区域示意图;

图8为本申请实施例2提供的帧间预测方法流程图;

图9为本申请实施例3提供的帧间预测方法流程图;

图10为本申请提供的编码端设备结构图;

图11为本申请提供的编码端设备的硬件结构示意图;

图12为本申请提供的解码端设备结构图;

图13为本申请提供的图12所示解码端设备的硬件结构示意图;

图14为本申请提供的解码端设备的另一结构图;

图15为本申请提供的图14所示解码端设备的硬件结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

实施例1:

本实施例1以应用于编码端为例描述。

参见图1,图1为本申请实施例1提供的帧间预测方法流程图。该方法应用于编码端,可包括以下步骤:

步骤101,根据当前图像块的运动信息(mi:motioninformation)确定目标多假设预测(mhp:multi-hypothesisprediction)位置集合。

在本申请中,当前图像块的大小不限,其可为编码标准中规定的最大编码树单元(ctu:codingtreeunit),也可以比ctu大或者比ctu小,本申请并不具体限定。

在本申请中,当前图像块的运动信息可指与运动相关的编码信息,比如可为运动矢量(mv:motionvector)、参考帧索引(referenceindex)等,本申请并不具体限定。这里,运动矢量表示当前图像块与其参考图象中的最佳匹配块之间的相对位移。参考帧索引是指当前图像块采用了预设的参考帧列表中的第几个参考帧。

本申请在进行帧间预测时是根据当前图像块的运动信息指导用于帧间预测的目标mhp位置集合,基于目标mhp位置集合进行帧间预测,这相比现有基于固定模式确定目标mhp位置集合,能够提高帧间预测精准度。至于本步骤101中如何根据当前图像块的运动信息确定目标mhp位置集合,其有很多实现方式,下文图2所示的流程举例示出其中一种实现方式,这里暂不赘述。

步骤102,确定目标mhp位置集合中各个目标mhp位置对应的候选(candidate)帧间预测像素(interpredictionsignal)。

在本申请中,候选帧间预测像素是指从当前图像块的参考帧中导出的像素,其是用于获取当前图像块的目标帧间预测像素的依据,具体见步骤103。

作为一个实施例,目标mhp位置可通过运动矢量或者运动矢量和参考帧索引来表示。这里的参考帧索引用于指示目标mhp位置使用了预设的参考帧列表中的第几个参考帧。在本步骤102中,当目标mhp位置通过运动矢量表示,则默认目标mhp位置的运动矢量指向与当前图像块一致的参考帧,从而获取各mhp目标位置对应的候选帧间预测像素。当目标mhp位置通过运动矢量和参考帧索引表示,则根据各mhp位置的运动矢量以及其指向的参考帧获取各mhp目标位置对应的候选帧间预测像素。

步骤103,依据各个候选帧间预测像素确定所述当前图像块的目标帧间预测像素。

作为一个实施例,本步骤103中,依据各个候选帧间预测像素确定当前图像块的目标帧间预测像素可包括:根据所述各个候选帧间预测像素的加权系数对各个候选预测像素进行加权运算,确定加权运算结果为所述当前图像块的目标帧间预测像素。

在一个例子中,各个候选帧间预测像素的加权系数可相同。当各个候选帧间预测像素的加权系数相同时,上述根据各个候选帧间预测像素的加权系数对各个候选预测像素进行加权运算相当于各个候选帧间预测像素进行加权平均。

在另一个例子中,各个候选帧间预测像素的加权系数也可不同,比如可根据各个候选帧间预测像素对应的目标mhp位置与当前图像块的距离远近设置。一种可行的设置方法为:距离越近,加权系数越大。特别的,当当前图像块的运动信息位于目标mhp位置集合时,目标mhp位置集合中与当前图像块的运动信息对应的目标mhp位置(实质是当前图像块的运动信息)对应的候选帧间预测像素的加权系数最大。

至此,完成图1所示流程。

通过图1所示流程可以看出,本申请中,编码端通过根据当前图像块的运动信息确定目标mhp位置集合,再根据目标mhp位置集合中各个目标mhp位置对应的候选帧间预测像素推导当前图像块的目标帧间预测像素,能够保证最终得到的当前图像块的目标帧间预测像素是最佳预测像素块。即使视频图像存在残影和/或视频图像的边缘模糊等因素,也能保证最终得到的当前图像块的目标帧间预测像素更接近当前图像块的原始像素,是最佳预测像素块,提高帧间预测精确度和编码性能。

参见图2,图2为本申请实施例1提供的步骤101的实施例实现流程图。如图2所示,该流程可包括以下步骤:

步骤201,根据当前图像块的运动信息确定候选mhp位置集合。

这里,当前图像块的运动信息可为与运动相关的编码信息。

作为一个实施例,当前图像块的运动信息可为当前图像块的运动矢量(mv:motionvector)。图3举例示出了当前图像块的运动信息为当前图像块的运动矢量时如何根据当前图像块的运动信息确定候选mhp位置集合,这里暂不赘述。

作为另一个实施例,当前图像块的运动信息可为当前图像块的运动矢量和当前图像块采用的参考帧对应的参考帧索引(记为第一参考帧索引)。这里的第一参考帧索引为编码端已记录的当前帧的参考帧列表中的某一参考帧的索引。图6以当前图像块的运动信息为运动矢量和第一参考帧索引为例举例示出了根据当前图像块的运动信息确定候选mhp位置集合,这里暂不赘述。

步骤202,从所述候选mhp位置集合中选择至少两个候选mhp位置。

作为一个实施例,本步骤202中,可随机从所述候选mhp位置集合中选择至少两个候选mhp位置,也可以按照预设需求或条件对所述候选mhp位置集合中的各个候选mhp位置进行优先级排序,按照优先级从高到底的选择至少两个,比如按照间距越小,优先级越高进行排序。

作为另一个实施例,本步骤202中,可根据实际需求从候选mhp位置集合中选择满足需求的至少两个候选mhp位置。这里的需求包括但不限于外部指令、业务需求、与当前图像块的距离满足设定距离等。

步骤203,将选择出的各个候选mhp位置组成所述目标mhp位置集合。

最终,通过图2所示流程实现了上述步骤101中根据当前图像块的运动信息确定目标mhp位置集合。

参见图3,图3为本申请实施例1提供的步骤201实现流程图。如图3所示,该流程可包括以下步骤:

步骤301,当所述运动信息包括运动矢量时,执行步骤302。

步骤302,依据所述当前图像块的运动矢量的方向,选择与所述运动矢量的终止点的距离满足预设条件的至少两个位置作为候选mhp位置组成所述候选mhp位置集合。

通过图3所示流程能够在运动信息包括运动矢量时,根据当前图像块的运动矢量限制当前图像块的候选mhp位置集合,限制的候选mhp位置集合中的候选mhp位置为沿着所述运动矢量的方向且满足预设条件的位置,相比现有在当前图像块周围选择若干位置点进行帧间预测,本申请后续基于候选mhp位置集合进行帧间预测更加精准。

需要说明的是,本步骤302的具体实现有很多实现方式,比如:

在一个例子中,本步骤302可先以所述运动矢量在横向方向的偏移量和/或在纵向方向的偏移量为基准选择候选mhp位置。其中,在以所述运动矢量在横向方向的偏移量为基准选择位置时,常会出现若沿着所述运动矢量的方向,则最终选择的候选mhp位置的纵向分量取值不为整数。在以所述运动矢量在纵向方向的偏移量为基准选择位置时也会出现类似情况。针对这种情况,本申请实施例会以向上取整或者向下取整。举个例子:比如运动矢量的终止点为(1,2),假若以所述运动矢量在纵向方向的偏移量为基准选择位置,偏移量为沿着所述运动矢量的方向正向偏移1,即可选取的位置的纵向分量为3,此时,若按照沿着运动矢量的方向,则可选取的位置的横向分量应为1.5,而像素点的横向分量或纵向分量都应是整数,基于此,此时可针对1.5向下取整,取值1,即选取位置(1,3),或者针对1.5向上取整,取值2,即选取位置(2,3)。

在另一个例子中,步骤302可按照以下方式实现:随机将沿着所述运动矢量的方向且满足预设条件的至少两个位置作为候选mhp位置组成所述候选mhp位置集合。比如,假若指定候选mhp位置集合中候选mhp位置的数量n为2,则候选mhp位置集合可包括当前图像块的运动矢量(记为mv1)和第一候选mv,第一候选mv根据mv1在横向方向的偏移量p1和mv1在纵向方向的偏移量p2生成的运动矢量。或者,n为2时,候选mhp位置集合可包括第二候选mv和第三候选mv,第二候选mv根据mv1在横向方向的偏移量p3和mv1在纵向方向上的偏移量p4生成,第三候选mv在横向方向的偏移量p5和mv1在纵向方向上的偏移量p6生成。n为3时,候选mhp位置集合可包括mv1、对称或非对称的第四候选mv和第五候选mv,第四候选mv在横向方向的偏移量p7和mv1在纵向方向上的偏移量p8生成。第五候选mv在横向方向的偏移量p9和mv1在纵向方向上的偏移量p10生成,依次类推。其中,上述在横向方向上的偏移量与在纵向方向上的偏移量可以相同也可以不同,上述在横向方向上的偏移方向可以沿着横向正向,也可以沿着横向反向,述在纵向方向上的偏移方向可以沿着纵向正向,也可以沿着纵向反向,最终以按照最接近mv1的终止点的原则确定。

在又一个例子中,步骤302可通过坐标变化实现。图4举例示出了如何通过坐标变化实现步骤302,这里暂不赘述。

作为一个实施例,本步骤302中,上述预设条件可根据实际需求设置,比如距离与运动矢量的终止点小于预设距离值,设置预设距离值的目的是在一个靠近运动矢量的终止点的范围内确定候选mhp位置。

至此,完成图3所示流程。

通过图3所示流程实现了当前图像块的运动信息包括运动矢量时如何根据当前图像块的运动信息确定候选mhp位置集合。

需要说明的是,图3所示的上述当前图像块的运动信息包括运动矢量时如何根据当前图像块的运动信息确定候选mhp位置集合,只是一种举例,并非用于限定。

参见图4,图4为本申请实施例1提供的步骤302的实现流程图。如图4所示,该流程可包括以下步骤:

步骤401,依据当前图像块的运动矢量的方向,在目标坐标系中确定目标区域。

这里的目标区域为目标坐标系中与所述运动矢量的方向匹配的区域。

在一个例子中,这里的目标坐标系不同于当前图像块的运动矢量所在的坐标系,其是以第一指定点为原点的坐标系。这里,当当前图像块的运动矢量为零运动矢量时,这里的第一指定点可为当前图像块的运动矢量所在的坐标系的原点,而当当前图像块的运动矢量不为零运动矢量时,这里第一指定点可举例不为当前图像块的运动矢量所在的坐标系的原点。需要说明的是,上述第一指定点只是为便于描述而进行的命名,并非用于限定。

作为一个实施例,这里的第一指定点为所述运动矢量的终止点或者为所述运动矢量的方向上除所述终止点之外的其他点。

在步骤401中,依据当前图像块的运动矢量的方向,在目标坐标系中确定目标区域具体可依赖于当前图像块的运动矢量中横向分量和纵向分量的取值。其中,若当前图像块的运动矢量中的横向分量和纵向分量的乘积大于0(即当前图像块的运动矢量指向其所在坐标系的第一坐标象限区域或第三坐标象限区域),确定所述目标坐标系(非当前图像块的运动矢量所在坐标系)中的横向坐标轴、纵向坐标轴、第一坐标象限区域和第三坐标象限区域为所述目标区域;若当前图像块的运动矢量中的横向分量和纵向分量的乘积小于0(即当前图像块的运动矢量指向其所在坐标系的第二坐标象限区域或第四坐标象限区域),确定所述目标坐标系(非当前图像块的运动矢量所在坐标系)中的横向坐标轴、纵向坐标轴、第二坐标象限区域、第四坐标象限区域为所述目标区域;若当前图像块的运动矢量中的横向分量为0(即当前图像块的运动矢量指向其所在坐标系的纵向坐标轴),确定所述目标坐标系中的纵向坐标轴为所述目标区域;若当前图像块的运动矢量中的纵向分量为0(即当前图像块的运动矢量指向其所在坐标系的横向坐标轴),确定所述目标坐标系中的横向坐标轴为所述目标区域。

步骤402,根据所述预设条件将所述目标区域中的至少两个位置作为候选mhp位置组成所述候选mhp位置集合。

至此,完成图4所示流程。

下面通过4个例子对图4所示流程进行举例描述:

例1:

在例1中,假设当前图像块的运动矢量记为mv1,其中,mv1的横向分量为a,纵向分量为b。

在例1中,按照上述图4所示流程,假设上述的目标坐标系为当前图像块的运动矢量mv1的终止点(a、b)为原点,以运动矢量表示候选mtp位置集合为例,当ab大于0时,则:

假若候选mhp位置集合中候选mhp位置的数量n为2,则可将图5a所示的目标坐标系下的原点、b1点(k1、k2)作为候选mhp位置,即候选mhp位置集合为:目标坐标系下的{(0,0),(k1,k2)}。而应用于当前图像块的运动矢量所在的坐标系(记为原始坐标系),则候选mhp位置集合变换为:原始坐标系的{(a,b),(a+k1,b+k2)}。

仍以候选mhp位置集合中候选mhp位置的数量n为2为例,也可将图5a所示的目标坐标系下的b2点(-k3,-k4)、b1点(k1、k2)作为候选mhp位置,即候选mhp位置集合为:目标坐标系下的{(-k3,-k4),(k1,k2)}。而应用于当前图像块的运动矢量所在的坐标系(记为原始坐标系),则候选mhp位置集合变换为:原始坐标系的{(a-k3,b-k4),(a+k1,b+k2)}。

再以候选mhp位置集合中候选mhp位置的数量n为3为例,也可将图5a所示的目标坐标系下的b2点(-k3,-k4)、原点、b1点(k1、k2)作为候选mhp位置,即候选mhp位置集合为:目标坐标系下的{(-k3,-k4),(0、0),(k1,k2)}。而应用于当前图像块的运动矢量所在的坐标系(记为原始坐标系),则候选mhp位置集合变换为:原始坐标系的{(a-k3,b-k4),(a,b),(a+k1,b+k2)}。

候选mhp位置集合中候选mhp位置的数量n还可为其他值,其类似n为2、3的情况,这里不再一一赘述。

在上面描述中,k1至k4为整数,可相同,也可不同,具体可依据最接近mv1的终止点的原则取值。

至此,完成例1的描述。

例2:

在例2中,假设当前图像块的运动矢量记为mv1,其中,mv1的横向分量为a,纵向分量为b。

在例2中,按照上述图4所示流程,假设上述的目标坐标系为当前图像块的运动矢量mv1的终止点(a、b)为原点,以运动矢量表示候选mtp位置集合为例,当ab小于0时,则:

假若候选mhp位置集合中候选mhp位置的数量n为2,则可将图5b所示的目标坐标系下的原点、c1点(-k5、k6)作为候选mhp位置,即候选mhp位置集合为:目标坐标系下的{(0,0),(-k5,k6)}。而应用于当前图像块的运动矢量所在的坐标系(记为原始坐标系),则候选mhp位置集合变换为:原始坐标系的{(a,b),(a–k5,b+k6)}。

仍以候选mhp位置集合中候选mhp位置的数量n为2为例,也可将图5b所示的目标坐标系下的c1点(-k5,k6)、c2点(k7、-k8)作为候选mhp位置,即候选mhp位置集合为:目标坐标系下的{(-k5,k6),(k7,-k8)}。而应用于当前图像块的运动矢量所在的坐标系(记为原始坐标系),则候选mhp位置集合变换为:原始坐标系的{(a-k5,b+k6),(a+k7,b–k8)}。

再以候选mhp位置集合中候选mhp位置的数量n为3为例,也可将图5b所示的目标坐标系下的c1点(-k5,k6)、原点、c2点(k7、-k8)作为候选mhp位置,即候选mhp位置集合为:目标坐标系下的{(-k5,k6),(0,0),(k7,-k8)}。而应用于当前图像块的运动矢量所在的坐标系(记为原始坐标系),则候选mhp位置集合变换为:原始坐标系的{(a-k5,b+k6),(a,b),(a+k7,b–k8)}。

候选mhp位置集合中候选mhp位置的数量n还可为其他值,其类似n为2、3的情况,这里不再一一赘述。

在上面描述中,k5至k8为整数,可相同,也可不同,具体可依据最接近mv1的终止点的原则取值。

至此,完成例2的描述。

例3:

在例3中,假设当前图像块的运动矢量记为mv1,其中,mv1的横向分量为0,纵向分量为b,b≠0。

在例3中,按照上述图4所示流程,假设上述的目标坐标系为当前图像块的运动矢量mv1的终止点(0、b)为原点,以运动矢量表示候选mtp位置集合为例,则:

假若候选mhp位置集合中候选mhp位置的数量n为2,则可将图5c所示的目标坐标系下的原点、d1点(0、k9)作为候选mhp位置,即候选mhp位置集合为:目标坐标系下的{(0,0),(0,k9)}。而应用于当前图像块的运动矢量所在的坐标系(记为原始坐标系),则候选mhp位置集合变换为:原始坐标系的{(a,b),(a,b+k9)}。

仍以候选mhp位置集合中候选mhp位置的数量n为2为例,也可将图5c所示的目标坐标系下的d1点(0,k9)、d2点(0、-k10)作为候选mhp位置,即候选mhp位置集合为:目标坐标系下的{(0,k9),(0、-k10)}。而应用于当前图像块的运动矢量所在的坐标系(记为原始坐标系),则候选mhp位置集合变换为:原始坐标系的{(a,b+k9),(a,b–k10)}。

再以候选mhp位置集合中候选mhp位置的数量n为3为例,也可将图5c所示的目标坐标系下的d1点(0,k9)、原点、d2点(0、-k10)作为候选mhp位置,即候选mhp位置集合为:目标坐标系下的{(0,k9),(0,0),(0、-k10)}。而应用于当前图像块的运动矢量所在的坐标系(记为原始坐标系),则候选mhp位置集合变换为:原始坐标系的{(a,b+k9),(a,b),(a,b–k10)}。

候选mhp位置集合中候选mhp位置的数量n还可为其他值,其类似n为2、3的情况,这里不再一一赘述。

在上面描述中,k9至k10为整数,可相同,也可不同,具体可依据最接近mv1的终止点的原则取值。

至此,完成例3的描述。

例4:

在例4中,假设当前图像块的运动矢量记为mv1,其中,mv1的横向分量为a,a≠0,纵向分量为0。

在例4中,按照上述图4所示流程,假设上述的目标坐标系为当前图像块的运动矢量mv1的终止点(a、0)为原点,以运动矢量表示候选mtp位置集合为例,则:

假若候选mhp位置集合中候选mhp位置的数量n为2,则可将图5d所示的目标坐标系下的原点、e1点(k11、0)作为候选mhp位置,即候选mhp位置集合为:目标坐标系下的{(0,0),(k11,0)}。而应用于当前图像块的运动矢量所在的坐标系(记为原始坐标系),则候选mhp位置集合变换为:原始坐标系的{(a,b),(a+k11,b)}。

仍以候选mhp位置集合中候选mhp位置的数量n为2为例,也可将图5d所示的目标坐标系下的e1点(k11,0)、e2点(-k12、0)作为候选mhp位置,即候选mhp位置集合为:目标坐标系下的{(-k12、0),(k11,0)}。而应用于当前图像块的运动矢量所在的坐标系(记为原始坐标系),则候选mhp位置集合变换为:原始坐标系的{(a-k12,b),(a+k11,b)}。

再以候选mhp位置集合中候选mhp位置的数量n为3为例,也可将图5d所示的目标坐标系下的e1点(k11,0)、原点、e2点(-k12、0)作为候选mhp位置,即候选mhp位置集合为:目标坐标系下的{(-k12、0),(0,0),(k11,0)}。而应用于当前图像块的运动矢量所在的坐标系(记为原始坐标系),则候选mhp位置集合变换为:原始坐标系的{(a-k12,b),(a,b),(a+k11,b)}

候选mhp位置集合中候选mhp位置的数量n还可为其他值,其类似n为2、3的情况,这里不再一一赘述。

在上面描述中,k11至k12为整数,可相同,也可不同,具体可依据最接近mv1的终止点的原则取值。

至此,完成例4的描述。

以上通过4个例子对图4所示的如何将沿着所述运动矢量的方向且满足预设条件的至少两个位置作为候选mhp位置组成所述候选mhp位置集合。

需要说明的是,上述4个例子只是为便于理解进行的举例,并非用于限定。

参见图6,图6为本申请实施例1提供的步骤201另一实现流程图。如图6所示,该流程可包括以下步骤:

步骤601,当所述运动信息包括运动矢量和第一参考帧索引时,执行步骤602。

步骤602,依据所述当前图像块的运动矢量的方向,选择与所述运动矢量的终止点的距离满足预设条件的至少两个位置作为候选mhp位置组成所述候选mhp位置集合,其中,所述候选mhp位置集合中各个候选mhp位置对应第二参考帧索引,第二参考帧索引与第一参考帧索引相同或不同。

这里的第二参考帧索引为编码端已记录的参考帧列表中参考帧的索引。

在一个例子中,当第一参考帧索引与第二参考帧索引相同时,本步骤602中确定候选mhp位置集合的方式可参考上述步骤302,这里不再赘述。

在另一个例子中,当第一参考帧索引与第二参考帧索引不同时,本步骤602中确定候选mhp位置集合的方式可参考上述步骤302,只是在上述步骤302具体实现时,目标坐标系的原点有所改变,具体为:目标运动矢量的终止点或者为所述运动矢量的方向上除所述目标运动矢量的终止点之外的其他点。这里的目标运动矢量是所述当前图像块的运动矢量与l之积得到的运动矢量,所述l为l1与l2的比值,所述l1为所述第二参考帧索引对应的参考帧与当前图像块所在当前帧的时域跨度,所述l2为所述第一参考帧索引对应的参考帧与当前帧的时域跨度。下面举例描述:

假设l1取值为3,l2取值为1,l取值为3,当前图像块的运动矢量为mv1,mv1的横向分量为a,纵向分量为b,则上述目标运动矢量为3mv1,3mv1的横向分量为3a,纵向分量为3b。

如上描述,假设目标坐标系的原点为目标运动矢量的终止点(3a、3b),以运动矢量表示候选mtp位置集合为例,则当ab大于0时,可将图7所示的目标坐标系下的横向坐标轴、纵向坐标轴、第一坐标象限区域和第三坐标象限区域确定为目标区域,将目标区域中的至少两个位置作为候选mhp位置组成所述候选mhp位置集合。比如:

假若候选mhp位置集合中候选mhp位置的数量n为2,则可将图7所示的目标坐标系下的原点、f1点(k13、k14)作为候选mhp位置,即候选mhp位置集合为:目标坐标系下的{(0,0),(k13,k14)}。而应用于当前图像块的运动矢量所在的坐标系(记为原始坐标系),则候选mhp位置集合变换为:原始坐标系的{(3a,3b),(3a+k13,3b+k14)}。其中,候选mhp位置集合中各个候选mhp位置均对应第二参考帧索引。

至此,完成图6所示流程。

通过图6所示流程实现了当前图像块的运动信息包括括运动矢量和第一参考帧索引时如何确定候选mhp位置集合。

本实施例1中,编码端在为当前图像块确定目标mhp位置后,可向解码端发送比特流时携带当前图像块的mhp位置策略信息,mhp位置策略信息用于向所述解码端提供确定目标mhp位置的策略。

在一个例子中,所述mhp位置策略信息包括第一指示信息;所述第一指示信息用于在有多个候选mhp位置集合的前提下指示可用的候选mhp位置集合。

在另一个例子中,所述mhp位置策略信息包括第二指示信息;所述第二指示信息用于指示可用的目标mhp位置。

在有一个例子中,所述mhp位置策略信息包括第三指示信息;所述第三指示信息包括运动信息偏移量,以指示依据所述当前图像块的运动信息和所述运动信息偏移量确定目标mhp位置。比如当前图像块的运动信息通过当前图像块的运动矢量表示,举例为(2,2),若上述的运动信息偏移量为1,则意味着根据(2,2)和运动信息偏移量1得到的(3、3)和/或(1,1)为当前图像块的目标mhp位置。

另外,本实施例1中,编码端在为当前图像块确定目标mhp位置后,作为一个实施例,可进一步存储当前图像块的至少一个参考mhp位置,以向与所述当前图像块相邻的其他图像块提供帧间预测参考。特别的,在双向参考帧模式下,可以存储两个参考mhp位置。需要说明的是,这里存储的参考mhp位置可指当前图像块的目标mhp位置;也可指当前图像块的至少一个目标mhp位置计算出的计算结果,等等。

至此,完成实施例1的描述。

实施例2:

本实施例2以应用于解码端为例描述。

参见图8,图8为本申请实施例2提供的帧间预测方法流程图。该方法应用于解码端,可包括以下步骤:

步骤801,根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合。

这里的mhp位置策略信息为用于指示解码端确定目标mhp位置的策略。下文会举例描述mhp位置策略信息,这里暂不赘述。

步骤802,确定目标mhp位置集合中各个目标mhp位置对应的候选帧间预测像素。

本步骤802与上述的步骤102类似,不再赘述。

步骤803,依据各个候选帧间预测像素确定所述当前图像块的目标帧间预测像素。

本步骤803与上述的步骤103类似,不再赘述。

至此,完成图8所示流程。

通过图8所示流程可以看出,本申请中,解码端通过根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合,再根据目标mhp位置集合中各个目标mhp位置对应的候选帧间预测像素推导当前图像块的目标帧间预测像素,能够保证最终得到的当前图像块的目标帧间预测像素是最佳预测像素块。即使视频图像存在残影和/或视频图像的边缘模糊等因素,也能保证最终得到的当前图像块的目标帧间预测像素更接近当前图像块的原始像素,是最佳预测像素块,提高帧间预测精确度和编码性能。

在本实施例2中,作为一个实施例,上述的mhp位置策略信息包括第一指示信息,所述第一指示信息用于指示可用的候选mhp位置集合。这里,解码端会按照类似编码端的方式确定候选mhp位置集合。解码端确定出的所有候选mhp位置集合与编码端确定出的所有候选mhp位置集合相同。

在一个例子中,第一指示信息可包括:可用候选mhp位置集合通过指示值1表示,而不可用的候选mhp位置集合通过指示值0表示。在另一个例子中,第一指示信息可包括:仅指示可用候选mhp位置集合,而不可用的候选mhp位置集合不指示。

基于第一指示信息,上述步骤801可包括:依据所述第一指示信息指示的可用候选mhp位置集合确定目标mhp位置集合。最终目标mhp位置集合包括第一指示信息指示的可用候选mhp位置集合。

作为另一个实施例,上述的mhp位置策略信息包括第二指示信息,所述第二指示信息用于指示可用的目标mhp位置。这里,解码端会按照类似编码端确定候选mhp位置集合的方式确定候选mhp位置集合。

在一个例子中,第二指示信息可包括:编码端已确定出的目标mhp位置集合中可用的目标mhp位置通过指示值1表示,而不可用的目标mhp位置通过指示值0表示。在另一个例子中,仅指示可用的目标mhp位置,而不可用的目标mhp位置不指示。

基于第二指示信息,上述步骤801可包括:根据当前图像块的运动信息确定候选mhp位置集合;依据所述第二指示信息指示的可用目标mhp位置从候选mhp位置集合中确定目标mhp位置并组成所述目标mhp位置集合。最终目标mhp位置集合包括第二指示信息指示的可用目标mhp位置。

作为又一个实施例,上述的mhp位置策略信息包括第三指示信息,所述第三指示信息包括运动信息偏移量,以指示依据所述当前图像块的运动信息和所述运动信息偏移量确定目标mhp位置。

基于第三指示信息,本步骤801中,根据已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合包括:

依据所述第三指示信息指示的运动信息偏移量和所述当前图像块的运动信息确定目标mhp位置;

将确定的所述目标mhp位置组成所述目标mhp位置集合。

比如,解码端处理到的当前图像块的运动信息通过当前图像块的运动矢量表示,举例为(2,2),若上述的运动信息偏移量为1,则意味着根据(2,2)和运动信息偏移量1得到的(3、3)和(1,1)为当前图像块的目标mhp位置,最终确定的当前图像块的目标mhp位置集合为(3、3)和(1,1)。

需要说明的是,上述限定mhp位置策略信息为第一指示信息、第二指示信息、第三指示信息只是为便于理解而进行的举例,并非用于限定。

至此,完成实施例2的描述。

实施例3:

本实施例3以应用于解码端为例描述。

参见图9,图9为本申请实施例3提供的帧间预测方法流程图。该方法应用于解码端,可包括以下步骤:

步骤901,根据当前图像块的运动信息确定当前图像块对应的目标mhp位置集合。

本步骤901中,根据当前图像块的运动信息确定当前图像块对应的目标mhp位置集合有多种实现方式,一种实现方式可采用实施例1中描述的根据当前图像块的运动信息确定当前图像块对应的目标mhp位置集合的实现方式;另一种实现方式可在已接收的来自编码端的编码比特流携带mhp位置策略信息的前提下,采用实施例2中描述的根据当前图像块的运动信息和接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合的实现方式。

步骤902,确定目标mhp位置集合中各个目标mhp位置对应的候选帧间预测像素。

步骤902与上述步骤102类似,这里不再赘述。

步骤903,依据各个候选帧间预测像素确定所述当前图像块的目标帧间预测像素。

步骤903与上述步骤103类似,这里不再赘述。

至此,完成图9所示流程。

通过图9所示流程可以看出,本申请中,解码端通过根据当前图像块的运动信息确定目标mhp位置集合,再根据目标mhp位置集合中各个目标mhp位置对应的候选帧间预测像素推导当前图像块的目标帧间预测像素,能够保证最终得到的当前图像块的目标帧间预测像素是最佳预测像素块。即使视频图像存在残影和/或视频图像的边缘模糊等因素,也能保证最终得到的当前图像块的目标帧间预测像素更接近当前图像块的原始像素,是最佳预测像素块,提高帧间预测精确度和编码性能。

至此,完成实施例3的描述。以上对本申请提供的方法进行了描述。

需要说明的是,作为一个实施例,在本申请中,上述当前图像块的大小的规格可大于或等于预设尺寸。这里的预设尺寸可根据实际需求设置,作为一个实施例,这里的预设尺寸可为8x8。

还需要说明的是,作为一个实施例,在本申请中,在当前图像块为双向帧间预测块(即当前图像块本身存在两套运动信息)的情况下,一种实现方式是:应用于编码端,针对当前图像块的其中一套运动信息执行本申请实施例1提供的方式,应用于解码端,针对当前图像块的其中一套运动信息执行本申请实施例2或3提供的方式。

作为另一个实施例,在本申请中,在当前图像块为双向帧间预测块(即当前图像块本身存在两套运动信息)的情况下,一种实现方式是:应用于编码端,针对当前图像块的两套运动信息均执行本申请实施例1提供的方式;应用于解码端,针对当前图像块的两套运动信息执行本申请实施例2或3提供的方式。

其中,应用于编码端,在当前图像块的两套运动信息均执行本申请实施例1提供的方式的前提下,编码端可向解码端传输两套编码比特流,分别指示当前图像块的每套运动信息对应的可用mhp位置;或者,编码端向解码端传输一套编码比特流,同时指示当前图像块的每套运动信息对应的可用mhp位置;或者,编码端向解码端传输三套编码比特流t1至t3,其中,t1指示当前图像块的两套运动信息对应的公共可用mhp位置,t2指示当前图像块的其中一套运动信息对应的除上述公共可用mhp位置之外的剩余可用mhp位置,t2指示当前图像块的其中一套运动信息对应的除上述公共可用mhp位置之外的剩余可用mhp位置,t2指示当前图像块的另一套运动信息对应的除上述公共可用mhp位置之外的剩余可用mhp位置。等等。

下面对本申请提供的装置进行描述:

参见图10,图10为本申请提供的编码端设备的结构图。如图10所示,该设备可包括:

mhp位置单元1001,用于根据当前图像块的运动信息确定目标mhp位置集合;

确定单元1002,用于确定目标mhp位置集合中各个目标mhp位置对应的候选帧间预测像素;

帧间预测单元1003,用于依据各个候选帧间预测像素确定所述当前图像块的目标帧间预测像素。

作为一个实施例,mhp位置单元1001根据当前图像块的运动信息确定目标mhp位置集合可包括:

根据当前图像块的运动信息确定候选mhp位置集合;

从所述候选mhp位置集合中选择至少两个候选mhp位置;

将选择出的各个候选mhp位置组成所述目标mhp位置集合。

在一个例子中,所述运动信息包括:运动矢量;基于此,mhp位置单元1001根据当前图像块的运动信息确定候选mhp位置集合可包括:

依据所述当前图像块的运动矢量的方向,选择与所述运动矢量的终止点的距离满足预设条件的至少两个位置作为候选mhp位置组成所述候选mhp位置集合。

在一个例子中,mhp位置单元1001依据所述当前图像块的运动矢量的方向,选择与所述运动矢量的终止点的距离满足预设条件的至少两个位置作为候选mhp位置组成所述候选mhp位置集合包括:

依据当前图像块的运动矢量的方向,在目标坐标系中确定目标区域,所述目标区域为所述目标坐标系中与所述运动矢量的方向匹配的区域;

根据所述预设条件将所述目标区域中的至少两个位置作为候选mhp位置组成所述候选mhp位置集合。

作为一个实施例,所述目标坐标系是以第一指定点为原点的坐标系;

所述第一指定点为所述运动矢量的终止点或者为所述运动矢量的方向上除所述终止点之外的其他点。

在一个例子中,所述运动信息还包括:所述当前图像块采用的参考帧对应的第一参考帧索引;所述候选mhp位置集合中各个候选mhp位置对应第二参考帧索引。

其中,当所述第一参考帧索引与所述第二参考帧索引相同时,所述目标坐标系是以第一指定点为原点的坐标系,第一指定点为所述运动矢量的终止点或者为所述运动矢量的方向上除所述终止点之外的其他点。

当所述第一参考帧索引与所述第二参考帧索引不同时,所述目标坐标系是以第二指定点为原点的坐标系,所述第二指定点为目标运动矢量的终止点或者为所述运动矢量的方向上除所述目标运动矢量的终止点之外的其他点;

所述目标运动矢量是所述当前图像块的运动矢量与l之积得到的运动矢量,所述l为l1与l2的比值,所述l1为所述第二参考帧索引对应的参考帧与当前图像块所在当前帧的时域跨度,所述l2为所述第一参考帧索引对应的参考帧与当前帧的时域跨度。

这里,所述第一参考帧索引、第二参考帧索引为所述编码端已记录的参考帧列表中参考帧的索引。

在一个例子中,mhp位置单元1001依据当前图像块的运动矢量的方向,在目标坐标系中确定目标区域包括

若当前图像块的运动矢量中的横向分量和纵向分量的乘积大于0,确定所述目标坐标系中的第一坐标象限区域和第三坐标象限区域为所述目标区域;

若当前图像块的运动矢量中的横向分量和纵向分量的乘积小于0,确定所述目标坐标系中的第二坐标象限区域、第四坐标象限区域为所述目标区域。

在另一个例子中,mhp位置单元1001依据当前图像块的运动矢量的方向,在目标坐标系中确定目标区域包括:

若当前图像块的运动矢量中的横向分量为0,确定所述目标坐标系中的纵向坐标轴为所述目标区域;

若当前图像块的运动矢量中的纵向分量为0,确定所述目标坐标系中的横向坐标轴为所述目标区域。

这里,帧间预测单元1003依据各个候选帧间预测像素确定所述当前图像块的目标帧间预测像素包括:

根据所述各个候选帧间预测像素的加权系数对所述各个候选预测像素进行加权运算;

确定加权运算结果为所述当前图像块的目标帧间预测像素。

作为一个实施例,mhp位置单元1001进一步存储当前图像块的至少一个目标mhp位置存储,以向与所述当前图像块相邻的其他图像块提供帧间预测参考;或者,将依据当前图像块的至少一个目标mhp位置计算出的计算结果进行存储,以向与所述当前图像块相邻的其他图像块提供帧间预测参考。

在一个例子中,如图10所示,该装置进一步包括:

发送单元1004,用于向解码端发送携带mhp位置策略信息的编码比特流,所述mhp位置策略信息用于向所述解码端提供确定目标mhp位置的策略。

作为一个实施例,所述mhp位置策略信息包括第一指示信息;所述第一指示信息用于指示可用的候选mhp位置集合。

作为另一个实施例,所述mhp位置策略信息包括第二指示信息;所述第二指示信息用于指示所述可用的目标mhp位置。

作为又一个实施例,所述mhp位置策略信息包括第三指示信息;所述第三指示信息包括运动信息偏移量,以指示依据所述当前图像块的运动信息和所述运动信息偏移量确定目标mhp位置。

至此,完成图10所示的编码端设备结构图。

本申请还提供了图10所示编码端设备的硬件结构图。如图11所示,该硬件结构可包括:

机器可读存储介质1101,用于存储机器可读指令;

处理器1102,用于读取所述机器可读指令,并执行所述指令以实现实施例1描述的帧间预测方法。

至此,完成图11所示的硬件结构描述。

参见图12,图12为本申请提供的解码端设备结构图。如图12所示,解码端设备可包括:

mhp位置单元1201,用于根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合。

确定单元1202,用于确定目标mhp位置集合中各个目标mhp位置对应的候选帧间预测像素;

帧间预测单元1203,用于依据各个候选帧间预测像素确定所述当前图像块的目标帧间预测像素。

作为一个实施例,所述mhp位置策略信息包括第一指示信息,所述第一指示信息用于指示可用的候选mhp位置集合;

mhp位置单元1201根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合包括:

根据当前图像块的运动信息确定候选mhp位置集合;

依据所述第一指示信息指示的可用候选mhp位置集合从已确定的所有候选mhp位置集合中确定目标mhp位置集合。

作为另一个实施例,所述mhp位置策略信息包括第二指示信息,所述第二指示信息用于指示可用的目标mhp位置;

mhp位置单元1201根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合包括:

根据当前图像块的运动信息确定候选mhp位置集合;

依据所述第二指示信息指示的可用目标mhp位置从候选mhp位置集合中选择目标mhp位置并组成所述目标mhp位置集合。

作为又一个实施例,所述mhp位置策略信息包括第三指示信息,所述第三指示信息包括运动信息偏移量,以指示依据所述当前图像块的运动信息和所述运动信息偏移量确定目标mhp位置;

mhp位置单元1201根据已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合包括:

依据所述第三指示信息指示的运动信息偏移量和所述当前图像块的运动信息确定目标mhp位置;

将确定的所述目标mhp位置组成所述目标mhp位置集合。

至此,完成图12所示的解码端设备结构图。

本申请还提供了图12所示解码端设备的硬件结构图。如图13所示,该硬件结构可包括:

机器可读存储介质1301,用于存储机器可读指令;

处理器1302,用于读取所述机器可读指令,并执行所述指令以实现实施例2描述的帧间预测方法。

至此,完成图13所示的硬件结构描述。

参见图14,图14为本申请提供的解码端设备的另一结构图。如图14所示,解码端设备包括:

mhp位置单元1401,用于根据当前图像块的运动信息确定当前图像块对应的目标mhp位置集合。

确定单元1402,用于确定目标mhp位置集合中各个目标mhp位置对应的候选帧间预测像素;

帧间预测单元1403,用于依据各个候选帧间预测像素确定所述当前图像块的目标帧间预测像素。

作为一个实施例,mhp位置单元1401根据当前图像块的运动信息确定当前图像块对应的目标mhp位置集合包括:

根据当前图像块的运动信息确定候选mhp位置集合;

从所述候选mhp位置集合中选择至少两个候选mhp位置;

将选择出的各个候选mhp位置组成所述目标mhp位置集合。

在一个例子中,所述运动信息包括:运动矢量。

mhp位置单元1401根据当前图像块的运动信息确定候选mhp位置集合包括:

依据所述当前图像块的运动矢量的方向,选择与所述运动矢量的终止点的距离满足预设条件的至少两个位置作为候选mhp位置组成所述候选mhp位置集合。

这里,所述依据当前图像块的运动矢量的方向,选择与所述运动矢量的终止点的距离满足预设条件的至少两个位置作为候选mhp位置组成所述候选mhp位置集合包括:

依据当前图像块的运动矢量的方向,在目标坐标系中确定目标区域,所述目标区域为所述目标坐标系中与所述运动矢量的方向匹配的区域;

根据所述预设条件将所述目标区域中的至少两个位置作为候选mhp位置组成所述候选mhp位置集合。

其中,所述目标坐标系是以第一指定点为原点的坐标系;所述第一指定点为所述运动矢量的终止点或者为所述运动矢量的方向上除所述终止点之外的其他点。

在另一个例子中,所述运动信息还包括:所述当前图像块采用的参考帧对应的第一参考帧索引;

所述候选mhp位置集合中各个候选mhp位置对应第二参考帧索引。

在一个例子中,所述第一参考帧索引与所述第二参考帧索引相同;

所述目标坐标系是以第一指定点为原点的坐标系,第一指定点为所述运动矢量的终止点或者为所述运动矢量的方向上除所述终止点之外的其他点。

在另一个例子中,所述第一参考帧索引与所述第二参考帧索引不同,所述目标坐标系是以第二指定点为原点的坐标系,所述第二指定点为目标运动矢量的终止点或者为所述运动矢量的方向上除所述目标运动矢量的终止点之外的其他点;

所述目标运动矢量是所述当前图像块的运动矢量与l之积得到的运动矢量,所述l为l1与l2的比值,所述l1为所述第二参考帧索引对应的参考帧与当前图像块所在当前帧的时域跨度,所述l2为所述第一参考帧索引对应的参考帧与当前帧的时域跨度。

在本申请实施例中,所述第一参考帧索引、第二参考帧索引为所述编码端已记录的参考帧列表中参考帧的索引。

在本申请实施例中,所述依据当前图像块的运动矢量的方向,在目标坐标系中确定目标区域包括:

若当前图像块的运动矢量中的横向分量和纵向分量的乘积大于0,确定所述目标坐标系中的横向坐标轴、纵向坐标轴、第一坐标象限区域和第三坐标象限区域为所述目标区域;

若当前图像块的运动矢量中的横向分量和纵向分量的乘积小于0,确定所述目标坐标系中的横向坐标轴、纵向坐标轴、第二坐标象限区域和第四坐标象限区域为所述目标区域。

在本申请另一实施例中,所述依据当前图像块的运动矢量的方向,在目标坐标系中确定目标区域包括:

若当前图像块的运动矢量中的横向分量为0,确定所述目标坐标系中的纵向坐标轴为所述目标区域;

若当前图像块的运动矢量中的纵向分量为0,确定所述目标坐标系中的横向坐标轴为所述目标区域。

作为另一个实施例,mhp位置单元1401根据当前图像块的运动信息确定当前图像块对应的目标mhp位置集合包括:

根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合。

在一个例子中,所述mhp位置策略信息包括第一指示信息,所述第一指示信息用于指示可用的候选mhp位置集合;

mhp位置单元1401根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合包括:

根据当前图像块的运动信息确定所有候选mhp位置集合;

依据所述第一指示信息指示的可用候选mhp位置集合从所有候选mhp位置集合中确定目标mhp位置集合。

在一个例子中,所述mhp位置策略信息包括第二指示信息,所述第二指示信息用于指示可用的目标mhp位置;

mhp位置单元1401根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合包括:

根据当前图像块的运动信息确定候选mhp位置集合;

依据所述第二指示信息指示的可用目标mhp位置从候选mhp位置集合中选择目标mhp位置并组成所述目标mhp位置集合。

在一个例子中,所述mhp位置策略信息包括第三指示信息,所述第三指示信息包括运动信息偏移量,以指示依据所述当前图像块的运动信息和所述运动信息偏移量确定目标mhp位置;

mhp位置单元1401根据当前图像块的运动信息和已接收的来自编码端的编码比特流携带的mhp位置策略信息确定当前图像块对应的目标mhp位置集合包括:

依据所述第三指示信息指示的运动信息偏移量和所述当前图像块的运动信息确定目标mhp位置;

将确定的所述目标mhp位置组成所述目标mhp位置集合。

作为一个实施例,帧间预测单元1403依据各个候选帧间预测像素确定所述当前图像块的目标帧间预测像素包括:

根据所述各个候选帧间预测像素的加权系数对所述各个候选预测像素进行加权运算;

确定加权运算结果为所述当前图像块的目标帧间预测像素。

作为一个实施例,mhp位置单元1401进一步存储当前图像块的至少一个目标mhp位置存储,以向与所述当前图像块相邻的其他图像块提供帧间预测参考;或者,将依据当前图像块的至少一个目标mhp位置计算出的计算结果进行存储,以向与所述当前图像块相邻的其他图像块提供帧间预测参考。

至此,完成图14所示的解码端设备结构图。

本申请还提供了图14所示编码端设备的硬件结构图。如图15所示,该硬件结构可包括:

机器可读存储介质1501,用于存储机器可读指令;

处理器1502,用于读取所述机器可读指令,并执行所述指令以实现实施例3描述的帧间预测方法。

至此,完成图15所示的硬件结构描述。

以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1