一种运动向量编码方法及装置与流程

文档序号:12697099阅读:164来源:国知局
一种运动向量编码方法及装置与流程

本发明涉及视频图像编码领域,尤其涉及一种运动向量编码方法及装置。



背景技术:

块基运动向量编码技术,是块基混合离散余弦变换视频编码标准的核心技术之一。

现有的块基运动向量编码方法,如传统的H.263、H.264编码方法中,首先从空域或时域寻找与编码块相邻的多个已经编码的编码块运动向量的中值,作为编码块运动向量的预测;然后用编码块运动向量减去编码块运动向量的预测,得到编码块运动向量的差分,对编码块运动向量的差分进行编码即可。在上述现有的编码方法中,只应用与编码块相邻的多个已经编码的编码块运动向量的中值,作为编码块运动向量的预测,对编码块运动向量的预测较少,并且对于任意一个编码块运动向量,都是采用编码运动向量差分的方法进行编码,编码方法简单,编码效率较低。



技术实现要素:

基于上述现有技术的缺陷和不足,本发明提出一种运动向量编码方法及装置,在对运动向量进行编码时应用多个预测运动向量,全面考虑不同情况进行相应的编码处理,编码效率较高。

一种运动向量编码方法,包括:

从待编码图像块的参考预测编码块的运动向量中,查找得到设定数量的,所述待编码图像块运动向量的预测运动向量,组成预测运动向量集合;

将所述待编码图像块运动向量分别与所述预测运动向量集合中的预测运动向量进行对比,判断在所述预测运动向量集合中,是否存在与所述待编码图像块运动向量相同的预测运动向量;

如果在所述预测运动向量集合中,存在与所述待编码图像块运动向量相同的预测运动向量,则编码与所述待编码图像块运动向量相同的预测运动向量的序号索引,作为所述待编码图像块运动向量的编码;

如果在所述预测运动向量集合中,不存在与所述待编码图像块运动向量相同的预测运动向量,则根据所述预测运动向量集合中的预测运动向量,对所述待编码图像块运动向量进行差分编码处理,得到所述待编码图像块运动向量的编码。

优选地,所述从待编码图像块的参考预测编码块的运动向量中,查找得到设定数量的,所述待编码图像块运动向量的预测运动向量,组成预测运动向量集合,包括:

根据高效视频编码HEVC编码方法,从待编码图像块的空域相邻编码块的运动向量,以及时域参考图像中相同位置的编码块的运动向量中,查找得到设定数量的,对应待编码图像块运动向量的预测运动向量,组成预测运动向量集合;

剔除所述预测运动向量集合中,设定数量的预测运动向量中的,重复的预测运动向量。

优选地,在从待编码图像块的参考预测编码块的运动向量中,查找得到设定数量的,所述待编码图像块运动向量的预测运动向量,组成预测运动向量集合之后,在将所述待编码图像块运动向量分别与所述预测运动向量集合中的预测运动向量进行对比,判断在所述预测运动向量集合中,是否存在与所述待编码图像块运动向量相同的预测运动向量之前,该方法还包括:

根据所述待编码图像块运动向量的参考索引,以及所述预测运动向量集合中的预测运动向量的参考索引,分别对所述预测运动向量集合中的预测运动向量进行缩放处理,使所述预测运动向量集合中的预测运动向量与所述待编码图像块运动向量所表示的偏移量相同。

优选地,所述编码与所述待编码图像块运动向量相同的预测运动向量的序号索引,包括:

生成表征在所述预测运动向量集合中,存在与所述待编码图像块运动向量相同的参考运动向量的标识信息;

编码所述标识信息,以及编码与所述待编码图像块运动向量相同的预测运动向量的序号索引。

优选地,所述根据所述预测运动向量集合中的预测运动向量,对所述待编码图像块运动向量进行差分编码处理,得到所述待编码图像块运动向量的编码,包括:

根据所述预测运动向量集合中的预测运动向量的X分量,计算得到所述待编码图像块运动向量的X分量差分;

根据所述预测运动向量集合中的预测运动向量的Y分量,计算得到所述待编码图像块运动向量的Y分量差分;

对所述X分量差分、对应所述X分量差分的序号索引、所述Y分量差分及对应所述Y分量差分的序号索引,进行编码处理,得到所述待编码图像块运动向量的编码。

优选地,所述根据所述预测运动向量集合中的预测运动向量的X分量,计算得到所述待编码图像块运动向量的X分量差分,包括:

分别提取得到所述预测运动向量集合中的预测运动向量的X分量;

生成第一序列,所述第一序列中包含所述预测运动向量集合中的第一个预测运动向量的X分量;

遍历所述预测运动向量集合中的剩余预测运动向量的X分量,每遍历到一个预测运动向量的X分量时,计算该预测运动向量的X分量与所述第一序列中的预测运动向量的X分量的距离;如果该预测运动向量的X分量与所述第一序列中的预测运动向量的X分量的距离都大于1,则将该预测运动向量的X分量加入所述第一序列;

从所述第一序列中,查找得到与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量,记录与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量在所述第一序列中的序号索引;

根据与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量,以及所述待编码图像块运动向量的X分量,计算得到所述待编码图像块运动向量的X分量差分。

优选地,所述根据所述预测运动向量集合中的预测运动向量的Y分量,计算得到所述待编码图像块运动向量的Y分量差分,包括:

分别提取得到所述预测运动向量集合中的预测运动向量的Y分量;

将所述预测运动向量集合中的预测运动向量的Y分量,划分为第二序列和第三序列;其中,所述第二序列中的预测运动向量的Y分量对应的预测运动向量的X分量,与所述第一序列中的,与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量相同;所述第三序列中的预测运动向量的Y分量对应的预测运动向量的X分量,与所述第一序列中的,与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量不同;

生成第四序列,所述第四序列中包含所述第二序列中的第一个预测运动向量的Y分量;

遍历所述第二序列中剩余的预测运动向量的Y分量,每遍历到一个预测运动向量的Y分量时,计算该预测运动向量的Y分量与所述第四序列中的预测运动向量的Y分量的距离;如果该预测运动向量的Y分量与所述第四序列中的预测运动向量的Y分量的距离都大于1,则将该预测运动向量的Y分量加入所述第四序列;

生成第五序列,所述第五序列中包含所述第三序列中的第一个预测运动向量的Y分量;

遍历所述第三序列中剩余的预测运动向量的Y分量,每遍历到一个预测运动向量的Y分量时,计算该预测运动向量的Y分量与所述第五序列中的预测运动向量的Y分量的距离;如果该预测运动向量的Y分量与所述第五序列中的预测运动向量的Y分量的距离都大于1,则将该预测运动向量的Y分量加入所述第五序列;

从所述第四序列及所述第五序列中,查找得到与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量,记录与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量所在的序列,以及与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量在其所在的序列中的序列索引;

根据与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量,以及所述待编码图像块运动向量的Y分量,计算得到所述待编码图像块运动向量的Y分量差分。

优选地,所述对所述X分量差分、对应所述X分量差分的序号索引、所述Y分量差分及对应所述Y分量差分的序号索引,进行编码处理,得到所述待编码图像块运动向量的编码,包括:

对所述X分量差分及所述Y分量差分的绝对值之和、所述X分量差分的绝对值、所述X分量差分、所述Y分量差分、与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量在所述第一序列中的序号索引、表征与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量所在的序列的信息、与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量在其所在的序列中的序列索引分别进行编码处理。

一种运动向量编码装置,包括:

预测处理单元,用于从待编码图像块的参考预测编码块的运动向量中,查找得到设定数量的,所述待编码图像块运动向量的预测运动向量,组成预测运动向量集合;

判断单元,用于将所述待编码图像块运动向量分别与所述预测运动向量集合中的预测运动向量进行对比,判断在所述预测运动向量集合中,是否存在与所述待编码图像块运动向量相同的预测运动向量;

第一编码单元,用于所述判断单元判断在所述预测运动向量集合中,存在与所述待编码图像块运动向量相同的预测运动向量时,编码与所述待编码图像块运动向量相同的预测运动向量的序号索引,作为所述待编码图像块运动向量的编码;

第二编码单元,用于所述判断单元判断在所述预测运动向量集合中,不存在与所述待编码图像块运动向量相同的预测运动向量时,根据所述预测运动向量集合中的预测运动向量,对所述待编码图像块运动向量进行差分编码处理,得到所述待编码图像块运动向量的编码。

优选地,所述预测处理单元从待编码图像块的参考预测编码块的运动向量中,查找得到设定数量的,所述待编码图像块运动向量的预测运动向量,组成预测运动向量集合时,具体用于:

根据高效视频编码HEVC编码方法,从待编码图像块的空域相邻编码块的运动向量,以及时域参考图像中相同位置的编码块的运动向量中,查找得到设定数量的,对应待编码图像块运动向量的预测运动向量,组成预测运动向量集合;剔除所述预测运动向量集合中,设定数量的预测运动向量中的,重复的预测运动向量。

优选地,所述装置还包括:

缩放处理单元,用于根据所述待编码图像块运动向量的参考索引,以及所述预测运动向量集合中的预测运动向量的参考索引,分别对所述预测运动向量集合中的预测运动向量进行缩放处理,使所述预测运动向量集合中的预测运动向量与所述待编码图像块运动向量所表示的偏移量相同。

优选地,所述第一编码单元编码与所述待编码图像块运动向量相同的预测运动向量的序号索引时,具体用于:

生成表征在所述预测运动向量集合中,存在与所述待编码图像块运动向量相同的参考运动向量的标识信息;编码所述标识信息,以及编码与所述待编码图像块运动向量相同的预测运动向量的序号索引。

优选地,所述第二编码单元,包括:

第一分量计算单元,用于根据所述预测运动向量集合中的预测运动向量的X分量,计算得到所述待编码图像块运动向量的X分量差分;

第二分量计算单元,用于根据所述预测运动向量集合中的预测运动向量的Y分量,计算得到所述待编码图像块运动向量的Y分量差分;

差分编码单元,用于对所述X分量差分、对应所述X分量差分的序号索引、所述Y分量差分及对应所述Y分量差分的序号索引,进行编码处理,得到所述待编码图像块运动向量的编码。

优选地,所述第一分量计算单元根据所述预测运动向量集合中的预测运动向量的X分量,计算得到所述待编码图像块运动向量的X分量差分时,具体用于:

分别提取得到所述预测运动向量集合中的预测运动向量的X分量;

生成第一序列,所述第一序列中包含所述预测运动向量集合中的第一个预测运动向量的X分量;

遍历所述预测运动向量集合中的剩余预测运动向量的X分量,每遍历到一个预测运动向量的X分量时,计算该预测运动向量的X分量与所述第一序列中的预测运动向量的X分量的距离;如果该预测运动向量的X分量与所述第一序列中的预测运动向量的X分量的距离都大于1,则将该预测运动向量的X分量加入所述第一序列;

从所述第一序列中,查找得到与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量,记录与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量在所述第一序列中的序号索引;

根据与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量,以及所述待编码图像块运动向量的X分量,计算得到所述待编码图像块运动向量的X分量差分。

优选地,所述第二分量计算单元根据所述预测运动向量集合中的预测运动向量的Y分量,计算得到所述待编码图像块运动向量的Y分量差分时,具体用于:

分别提取得到所述预测运动向量集合中的预测运动向量的Y分量;

将所述预测运动向量集合中的预测运动向量的Y分量,划分为第二序列和第三序列;其中,所述第二序列中的预测运动向量的Y分量对应的预测运动向量的X分量,与所述第一序列中的,与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量相同;所述第三序列中的预测运动向量的Y分量对应的预测运动向量的X分量,与所述第一序列中的,与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量不同;

生成第四序列,所述第四序列中包含所述第二序列中的第一个预测运动向量的Y分量;

遍历所述第二序列中剩余的预测运动向量的Y分量,每遍历到一个预测运动向量的Y分量时,计算该预测运动向量的Y分量与所述第四序列中的预测运动向量的Y分量的距离;如果该预测运动向量的Y分量与所述第四序列中的预测运动向量的Y分量的距离都大于1,则将该预测运动向量的Y分量加入所述第四序列;

生成第五序列,所述第五序列中包含所述第三序列中的第一个预测运动向量的Y分量;

遍历所述第三序列中剩余的预测运动向量的Y分量,每遍历到一个预测运动向量的Y分量时,计算该预测运动向量的Y分量与所述第五序列中的预测运动向量的Y分量的距离;如果该预测运动向量的Y分量与所述第五序列中的预测运动向量的Y分量的距离都大于1,则将该预测运动向量的Y分量加入所述第五序列;

从所述第四序列及所述第五序列中,查找得到与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量,记录与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量所在的序列,以及与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量在其所在的序列中的序列索引;

根据与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量,以及所述待编码图像块运动向量的Y分量,计算得到所述待编码图像块运动向量的Y分量差分。

优选地,所述差分编码单元对所述X分量差分、对应所述X分量差分的序号索引、所述Y分量差分及对应所述Y分量差分的序号索引,进行编码处理,得到所述待编码图像块运动向量的编码时,具体用于:

对所述X分量差分及所述Y分量差分的绝对值之和、所述X分量差分的绝对值、所述X分量差分、所述Y分量差分、与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量在所述第一序列中的序号索引、表征与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量所在的序列的信息、与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量在其所在的序列中的序列索引分别进行编码处理。

本发明提出的运动向量编码方法,首先获取设定数量的当前编码块运动向量的预测运动向量,并对设定数量的预测运动向量进行缩放处理;然后,对比判断在预测运动向量中是否存在与当前编码块运动向量相同的预测运动向量,如果有,则直接编码该预测运动向量的序号索引;如果没有,则根据设定数量的预测运动向量,对当前编码块运动向量进行差分编码处理。在上述编码处理过程中,应用到多个预测运动向量,并且对当前编码块运动向量进行编码时,首先考虑到在多个预测运动向量中是否有与当前编码块运动向量相同的预测运动向量,如果有,则直接将该预测运动向量的编码作为当前编码块运动向量的编码,只编码该预测运动向量的序号索引即可;如果没有,则利用上述多个预测运动向量,对当前编码块运动向量进行编码。其编码过程应用到的预测运动向量较多,全面考虑不同的情况进行相应的编码处理,编码效率较高。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1是本发明实施例提供的一种运动向量编码方法的流程示意图;

图2是本发明实施例提供的一种获取运动向量的预测运动向量的示意图;

图3是本发明实施例提供的另一种运动向量编码方法的流程示意图;

图4是本发明实施例提供的另一种运动向量编码方法的流程示意图;

图5是本发明实施例提供的另一种运动向量编码方法的流程示意图;

图6是本发明实施例提供的一种运动向量编码装置的结构示意图;

图7是本发明实施例提供的另一种运动向量编码装置的结构示意图;

图8是本发明实施例提供的另一种运动向量编码装置的结构示意图。

具体实施方式

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

本发明实施例公开了一种运动向量编码方法,参见图1所示,该方法包括:

S101、从待编码图像块的参考预测编码块的运动向量中,查找得到设定数量的,所述待编码图像块运动向量的预测运动向量,组成预测运动向量集合;

具体的,对待编码图像块的运动向量进行编码时,通常首先找到待编码图像块运行向量的预测运动向量,利用预测运动向量对待编码图像块的运动向量进行编码。在本发明实施例中,从待编码图像块的参考预测编码块的运动向量中,查找得到设定数量的,待编码图像块运动向量的预测运动向量。利用多个预测运动向量参与对待编码图像块的运动向量的编码,以期提高对待编码图像块运动向量的编码效率。进一步地,查找得到设定数量的预测运动向量后,组成预测运动向量集合。

S102、将所述待编码图像块运动向量分别与所述预测运动向量集合中的预测运动向量进行对比,判断在所述预测运动向量集合中,是否存在与所述待编码图像块运动向量相同的预测运动向量;

具体的,将待编码图像块的运动向量,以及待编码图像块的运动向量的参考索引,与预测运动向量集合中的各个预测运动向量,以及各个预测运动向量的参考索引进行对比。如果某个预测运动向量与待编码图像块的运动向量相同,并且该预测运动向量的参考索引与待编码图像块运动向量的参考索引也相同,那么认为该预测运动向量与待编码图像块的运动向量相同。

如果在所述预测运动向量集合中,存在与所述待编码图像块运动向量相同的预测运动向量,则执行步骤S103、编码与所述待编码图像块运动向量相同的预测运动向量的序号索引,作为所述待编码图像块运动向量的编码;

具体的,如果在预测运动向量集合中,存在与待编码图像块的运动向量相同的预测运动向量,鉴于预测运动向量是已经完成编码的运动向量,其编码是准确的。因此,在本发明实施例中,当确定预测运动向量集合中存在与待编码图像块的运动向量相同的预测运动向量时,为了节省运算量,直接将与待编码图像块运动向量相同的预测运动向量的编码作为待编码图像块的运动向量的编码,只编码该预测运动向量的序号索引即可。在对待编码图像块的运动向量进行解码时,只解码对该预测运动向量的序号索引的编码,进一步地,通过序号索引找到该预测运动向量的编码,即是找到了待编码图像块运动向量的编码,解码该预测运动向量的编码,也就完成了对待编码图像块运动向量的解码。

如果在所述预测运动向量集合中,不存在与所述待编码图像块运动向量相同的预测运动向量,则执行步骤S104、根据所述预测运动向量集合中的预测运动向量,对所述待编码图像块运动向量进行差分编码处理,得到所述待编码图像块运动向量的编码。

具体的,如果在预测运动向量集合中,不存在与待编码图像块运动向量相同的预测运动向量,那么根据对待编码图像块运动向量的预测,对待编码图像块运动向量进行差分编码处理,得到待编码图像块运动向量的编码。需要说明的是,在本发明实施例中,利于待编码图像块的运动向量的多个预测运动向量对待编码图像块的运动向量进行差分编码处理,相对于现有技术的处理方法,其编码精度更高。

本发明提出的运动向量编码方法,首先获取设定数量的当前编码块运动向量的预测运动向量,并对设定数量的预测运动向量进行缩放处理;然后,对比判断在预测运动向量中是否存在与当前编码块运动向量相同的预测运动向量,如果有,则直接编码该预测运动向量的序号索引;如果没有,则根据设定数量的预测运动向量,对当前编码块运动向量进行差分编码处理。在上述编码处理过程中,应用到多个预测运动向量,并且对当前编码块运动向量进行编码时,首先考虑到在多个预测运动向量中是否有与当前编码块运动向量相同的预测运动向量,如果有,则直接将该预测运动向量的编码作为当前编码块运动向量的编码,只编码该预测运动向量的序号索引即可;如果没有,则利用上述多个预测运动向量,对当前编码块运动向量进行编码。其编码过程应用到的预测运动向量较多,全面考虑不同的情况进行相应的编码处理,编码效率较高。

可选的,在本发明的另一个实施例中,所述从待编码图像块的参考预测编码块的运动向量中,查找得到设定数量的,所述待编码图像块运动向量的预测运动向量,组成预测运动向量集合,包括:

根据高效视频编码HEVC编码方法,从待编码图像块的空域相邻编码块的运动向量,以及时域参考图像中相同位置的编码块的运动向量中,查找得到设定数量的,对应待编码图像块运动向量的预测运动向量,组成预测运动向量集合;

具体的,待编码图像块的空域相邻编码块,是指在空间上与待编码图像块相邻的,属于同一帧图像的已经编码过的图像块;待编码图像块的时域参考图像中相同位置的编码块,是指已经编码过的,与待编码图像块不在同一帧图像,但是处于相同图像位置的图像块。本发明实施例采用HEVC编码方法,从待编码图像块的空域相邻编码块的运动向量,以及时域参考图像中相同位置的编码块的运动向量中,查找得到设定数量的预测运动向量。

例如,如图2所示,假设X是待编码图像块,Y是时域上X的参考图像中的同位置图像块。采用HEVC的获得空域和时域预测运动向量的方法,首先从X的左上相邻图像块的运动向量中按顺序查找预测运动向量,如按照A0、B0、B2、A1、B1的顺序获得预测运动向量,如果某个位置的运动向量不存在,那么跳过它。然后,从时域参考图像的相同位置编码块中获得若干预测运动向量,如右图所示两个黑点的位置,C0和C1。

剔除所述预测运动向量集合中,设定数量的预测运动向量中的,重复的预测运动向量。

具体的,在查找得到设定数量的预测运动向量后,对比确认在设定数量的预测运动向量中,是否有重复的预测运动向量,即确认是否有运动向量相同,并且参考索引也相同的预测运动向量。如果有,则剔除重复的预测运动向量,使预测运动向量集合中的预测运动向量均不相同。

可选的,在本发明的另一个实施例中,参见图3所示,在执行步骤S301、从待编码图像块的参考预测编码块的运动向量中,查找得到设定数量的,所述待编码图像块运动向量的预测运动向量,组成预测运动向量集合之后,在执行步骤S303、将所述待编码图像块运动向量分别与所述预测运动向量集合中的预测运动向量进行对比,判断在所述预测运动向量集合中,是否存在与所述待编码图像块运动向量相同的预测运动向量之前,该方法还包括:

S302、根据所述待编码图像块运动向量的参考索引,以及所述预测运动向量集合中的预测运动向量的参考索引,分别对所述预测运动向量集合中的预测运动向量进行缩放处理,使所述预测运动向量集合中的预测运动向量与所述待编码图像块运动向量所表示的偏移量相同。

具体的,运动向量的参考索引,代表该运动向量的偏移量。如果两个运动向量的参考索引不同,不能认为这两个运动向量相同。因此,为了保证能够在预测运动向量集合中找到与待编码图像运动向量相同的预测运动向量,本发明实施例对预测运动向量集合中的预测运动向量进行缩放处理,使预测运动向量的偏移量,即参考索引,与待编码图像块运动向量的参考索引相同。相应的,在将预测运动向量的参考索引进行缩放的同时,将预测运动向量的坐标缩放相同倍数。需要说明的是,在对预测运动向量进行缩放处理之前,本发明实施例首先对预测运动向量集合中的预测运动向量进行排序处理,具体的首先按照索引从小到大的顺序,选择参考索引与待编码图像块运动向量的参考索引相同的预测运动向量,然后再按参考索引从小到大的顺序,选择其他预测运动向量。经过上述处理后,在对预测运动向量进行缩放处理时,实际上主要是对参考索引与待编码图像块运动向量的参考索引不同的预测运动向量。

例如,假设某一预测运动向量的坐标为(4,8),参考索引为2;待编码图像块运动向量的坐标为(X,Y),参考索引为1。那么对该预测运动向量进行缩放时,将其参考索引缩小1倍,可以使其参考索引与待编码图像块运动向量的参考索引相同。相应的,在将该预测运动向量的参考索引缩小1倍的同时,将该预测运动向量的坐标也缩小1倍,变为(2,4)。因此,对该预测运动向量进行缩放处理后,其坐标为(2,4),参考索引为1。

本实施例中的步骤S301、S303~S305分别对应图1所示的方法实施例中的步骤S101、S102~S104,其具体内容请参见对应图1所示的方法实施例的内容,此处不再赘述。

可选的,在本发明的另一个实施例中,参见图4所示,所述编码与所述待编码图像块运动向量相同的预测运动向量的序号索引,包括:

S403、生成表征在所述预测运动向量集合中,存在与所述待编码图像块运动向量相同的参考运动向量的标识信息;

具体的,在对待编码图像块运动向量编码的过程中,当经过生成预测运动向量集合,以及将待编码图像块运动向量与预测运动向量集合中的预测运动向量进行对比,发现在预测运动向量集合中存在与待编码图像块运动向量相同的预测运动向量时,生成一个标志信息,并将该标志信息的取值设置为0。也就是说,该标志信息的取值为0时,表示在预测运动向量集合中,存在与待编码图像块运动向量相同的预测运动向量。

S404、编码所述标识信息,以及编码与所述待编码图像块运动向量相同的预测运动向量的序号索引。

具体的,将步骤S403中生成的标志信息及其取值进行编码,并且,将与待编码图像块的运动向量相同的预测运动向量在预测运动向量集合中的序号索引进行编码。

例如,假设预测运动向量集合中的预测运动向量共有n个,编号为mvp0、mvp1、…mvpn-1。如果待编码图像块的运动向量MV和上面的任何一个预测运动向量相同,设这个运动向量在预测运动向量集合中的序号索引是j,即mvpj,那么令ismvdabs0=0,否则令ismvdabs0=1。然后编码ismvdabs0=0,以及编码j,并结束对待编码图像块的运动向量MV的编码过程。

本实施例中的步骤S401、S402、S405,分别对应图1所示的方法实施例中的步骤S101、S102、S104,其具体内容请参见对应图1所示的方法实施例的内容,此处不再赘述。

可选的,在本发明的另一个实施例中,参见图5所示,所述根据所述预测运动向量集合中的预测运动向量,对所述待编码图像块运动向量进行差分编码处理,得到所述待编码图像块运动向量的编码,包括:

S504、根据所述预测运动向量集合中的预测运动向量的X分量,计算得到所述待编码图像块运动向量的X分量差分;

具体的,从预测运动向量集合中,提取得到所有预测运动向量的X分量,作为待编码图像块运动向量的X分量的预测。然后,根据待编码图像块运动向量的X分量的预测,从待编码图像块运动向量的X分量的预测中选出与待编码图像块运动向量的X分量的绝对值差最小的待编码图像块运动向量的X分量的预测,仿照H.264中计算运动向量的差分的方法,计算得到待编码图像块运动向量的X分量与该待编码图像块运动向量的X分量的预测的差,作为待编码图像块运动向量的X分量的差分。

S505、根据所述预测运动向量集合中的预测运动向量的Y分量,计算得到所述待编码图像块运动向量的Y分量差分;

具体的,从预测运动向量集合中,提取得到所有预测运动向量的Y分量,作为待编码图像块运动向量的Y分量的预测。然后,根据待编码图像块运动向量的Y分量的预测,从待编码图像块运动向量的Y分量的预测中选出与待编码图像块运动向量的Y分量的绝对值差最小的待编码图像块运动向量的Y分量的预测,仿照H.265中计算运动向量的差分的方法,计算得到待编码图像块运动向量的Y分量与该待编码图像块运动向量的Y分量的预测的差,作为待编码图像块运动向量的Y分量的差分。

S506、对所述X分量差分、对应所述X分量差分的序号索引、所述Y分量差分及对应所述Y分量差分的序号索引,进行编码处理,得到所述待编码图像块运动向量的编码。

具体的,在得到待编码图像块运动向量的X分量差分,以及待编码图像块运动向量的Y分量差分后,按照常用的编码方法,对所述X分量差分、对应所述X分量差分的序号索引、所述Y分量差分及对应所述Y分量差分的序号索引,进行编码处理,得到的一系列编码,作为待编码图像块运动向量的编码。

本实施例中的步骤S501~S503分别对应图1所示的方法实施例中的步骤S101~S103,其具体内容请参见对应图1所示的方法实施例的内容,此处不再赘述。

可选的,在本发明的另一个实施例中,所述根据所述预测运动向量集合中的预测运动向量的X分量,计算得到所述待编码图像块运动向量的X分量差分,包括:

分别提取得到所述预测运动向量集合中的预测运动向量的X分量;

例如,在剔除查找得到的重复的预测运动向量后,得到的预测运动向量集合中的预测运动向量为mvp0、mvp1、…mvpn-1,在本步骤处理中,提取得到各个预测运动向量的X分量,即mvpx0、mvpx1、…mvpxn-1。

生成第一序列,所述第一序列中包含所述预测运动向量集合中的第一个预测运动向量的X分量;

例如,生成第一序列,其中包含mvpx0。

遍历所述预测运动向量集合中的剩余预测运动向量的X分量,每遍历到一个预测运动向量的X分量时,计算该预测运动向量的X分量与所述第一序列中的预测运动向量的X分量的距离;如果该预测运动向量的X分量与所述第一序列中的预测运动向量的X分量的距离都大于1,则将该预测运动向量的X分量加入所述第一序列;

具体的,参照上述举例,逐个从小到大遍历mvpx1到mvpxn-1,如果当前mvpxi与第一序列中已有的mvpx的距离小于等于1,那么剔除这个mvpxi,否则将这个mvpxi加入第一序列。

从所述第一序列中,查找得到与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量,记录与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量在所述第一序列中的序号索引;

具体的,参照上述举例,遍历完mvpx1到mvpxn-1后,设第一序列中的元素有m个,即mvpxx0到mvpxxm-1。设带编码的图像块的运动向量的x分量为mvx,从第一序列中选择一个和它绝对值差最小的mvpxx,设其序号索引为t,即这个mvpxx为mvpxxt。

根据与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量,以及所述待编码图像块运动向量的X分量,计算得到所述待编码图像块运动向量的X分量差分。

具体的,参照上述举例,待编码图像块运动向量的X分量差分mvxdiff=mvx-mvpxxt。

可选的,在本发明的另一个实施例中,所述根据所述预测运动向量集合中的预测运动向量的Y分量,计算得到所述待编码图像块运动向量的Y分量差分,包括:

分别提取得到所述预测运动向量集合中的预测运动向量的Y分量;

例如,在剔除查找得到的重复的预测运动向量后,得到的预测运动向量集合中的预测运动向量为mvp0、mvp1、…mvpn-1,在本步骤处理中,提取得到各个预测运动向量的Y分量,即mvpy0、mvpy1、…mvpyn-1。

将所述预测运动向量集合中的预测运动向量的Y分量,划分为第二序列和第三序列;其中,所述第二序列中的预测运动向量的Y分量对应的预测运动向量的X分量,与所述第一序列中的,与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量相同;所述第三序列中的预测运动向量的Y分量对应的预测运动向量的X分量,与所述第一序列中的,与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量不同;

具体的,参照上述举例,根据与待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量mvpxxt,将mvpy0、mvpy1、…mvpyn-1分成第二序列和第三序列。第二序列中的预测运动向量的Y分量对应的预测运动向量的X分量mvpx全部等于mvpxxt,第三序列中的预测运动向量的Y分量对应的预测运动向量的X分量mvpx全部不等于mvpxxt。

生成第四序列,所述第四序列中包含所述第二序列中的第一个预测运动向量的Y分量;

遍历所述第二序列中剩余的预测运动向量的Y分量,每遍历到一个预测运动向量的Y分量时,计算该预测运动向量的Y分量与所述第四序列中的预测运动向量的Y分量的距离;如果该预测运动向量的Y分量与所述第四序列中的预测运动向量的Y分量的距离都大于1,则将该预测运动向量的Y分量加入所述第四序列;

具体的,参照上述举例,逐个从小到大遍历第二序列中剩余的预测运动向量的Y分量,如果当前预测运动向量的Y分量与第四序列中已有的预测运动向量的Y分量的距离小于等于1,那么剔除这个预测运动向量的Y分量,否则将这个预测运动向量的Y分量加入第四序列。

生成第五序列,所述第五序列中包含所述第三序列中的第一个预测运动向量的Y分量;

遍历所述第三序列中剩余的预测运动向量的Y分量,每遍历到一个预测运动向量的Y分量时,计算该预测运动向量的Y分量与所述第五序列中的预测运动向量的Y分量的距离;如果该预测运动向量的Y分量与所述第五序列中的预测运动向量的Y分量的距离都大于1,则将该预测运动向量的Y分量加入所述第五序列;

具体的,参照上述举例,逐个从小到大遍历第三序列中剩余的预测运动向量的Y分量,如果当前预测运动向量的Y分量与第五序列中已有的预测运动向量的Y分量的距离小于等于1,那么剔除这个预测运动向量的Y分量,否则将这个预测运动向量的Y分量加入第五序列。

从所述第四序列及所述第五序列中,查找得到与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量,记录与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量所在的序列,以及与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量在其所在的序列中的序列索引;

具体的,参照上述举例,设待编码图像块的运动向量的y分量为mvy,找到第四序列和第五序列中与mvy绝对差最小的那个mvpy。如果它在第四序列,那么设isusemvxeq=1,否则设isusemvxeq=0。

根据与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量,以及所述待编码图像块运动向量的Y分量,计算得到所述待编码图像块运动向量的Y分量差分。

具体的,参照上述举例,设这个mvpy在相应的那个序列中的序号索引为i,即这个mvpy为mvpyi,则待编码图像块运动向量的Y分量差分mvydiff=mvy-mvpyi。

可选的,在本发明的另一个实施例中,所述对所述X分量差分、对应所述X分量差分的序号索引、所述Y分量差分及对应所述Y分量差分的序号索引,进行编码处理,得到所述待编码图像块运动向量的编码,包括:

对所述X分量差分及所述Y分量差分的绝对值之和、所述X分量差分的绝对值、所述X分量差分、所述Y分量差分、与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量在所述第一序列中的序号索引、表征与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量所在的序列的信息、与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量在其所在的序列中的序列索引分别进行编码处理。

具体的,参照上述举例,首先编码abs(mvxdiff)+abs(mvydiff),然后编码abs(mvxdiff)。如果mvxdiff不等于零,那么编码mvxdiff的符号,然后如果mvydiff不等于0,那么编码mvydiff的符号。然后编码mvpx的索引t,再接下来编码isusemvxeq,最后编码mvpy的索引i。

经过上述处理,即完成了对待编码图像块运动向量的编码处理。相应的,在对采用上述编码方法编码的图像块运动向量进行解码时,参照上述各实施例中的举例,其过程概述如下:首先和编码过程一样,先构造mvp序列,然后解码ismvdabs0,如果为0,那么解码mvp的索引j后结束这个过程。否则依次解码abs(mvxdiff)+abs(mvydiff)、abs(mvxdiff)、mvxdiff的符号、mvydiff的符号。解码后获得mvxdiff和mvydiff。然后像编码过程一样构造图像块运动向量的x分量的预测序列,然后解码出mvpx的索引t,从序列中获得mvpxxt。再根据mvpxxt像编码过程中一样构造y的两个预测序列,然后解码isusemvxeq,选择相应的序列,解码mvpy的索引i,从y的相应的预测序列中获得mvpyi。最后得到图像块运动向量的x分量mvx=mvxdiff+mvpxxt,y分量mvy=mvydiff+mvpyi。

本发明实施例还公开了一种运动向量编码装置,参见图6所示,该装置包括:

预测处理单元601,用于从待编码图像块的参考预测编码块的运动向量中,查找得到设定数量的,所述待编码图像块运动向量的预测运动向量,组成预测运动向量集合;

判断单元602,用于将所述待编码图像块运动向量分别与所述预测运动向量集合中的预测运动向量进行对比,判断在所述预测运动向量集合中,是否存在与所述待编码图像块运动向量相同的预测运动向量;

第一编码单元603,用于所述判断单元602判断在所述预测运动向量集合中,存在与所述待编码图像块运动向量相同的预测运动向量时,编码与所述待编码图像块运动向量相同的预测运动向量的序号索引,作为所述待编码图像块运动向量的编码;

第二编码单元604,用于所述判断单元602判断在所述预测运动向量集合中,不存在与所述待编码图像块运动向量相同的预测运动向量时,根据所述预测运动向量集合中的预测运动向量,对所述待编码图像块运动向量进行差分编码处理,得到所述待编码图像块运动向量的编码。

具体的,本实施例中各个单元的具体工作内容,请参见对应的方法实施例的内容,此处不再赘述。

本发明提出的运动向量编码装置,在对图像运动向量编码时,首先由预测处理单元601获取设定数量的当前编码块运动向量的预测运动向量,并对设定数量的预测运动向量进行缩放处理;然后,判断单元602对比判断在预测运动向量中是否存在与当前编码块运动向量相同的预测运动向量,如果有,则第一编码单元603直接编码该预测运动向量的序号索引;如果没有,则第二编码单元604根据设定数量的预测运动向量,对当前编码块运动向量进行差分编码处理。在上述编码处理过程中,应用到多个预测运动向量,并且对当前编码块运动向量进行编码时,首先考虑到在多个预测运动向量中是否有与当前编码块运动向量相同的预测运动向量,如果有,则直接将该预测运动向量的编码作为当前编码块运动向量的编码,只编码该预测运动向量的序号索引即可;如果没有,则利用上述多个预测运动向量,对当前编码块运动向量进行编码。其编码过程应用到的预测运动向量较多,全面考虑不同的情况进行相应的编码处理,编码效率较高。

可选的,在本发明的另一个实施例中,所述预测处理单元601从待编码图像块的参考预测编码块的运动向量中,查找得到设定数量的,所述待编码图像块运动向量的预测运动向量,组成预测运动向量集合时,具体用于:

根据高效视频编码HEVC编码方法,从待编码图像块的空域相邻编码块的运动向量,以及时域参考图像中相同位置的编码块的运动向量中,查找得到设定数量的,对应待编码图像块运动向量的预测运动向量,组成预测运动向量集合;剔除所述预测运动向量集合中,设定数量的预测运动向量中的,重复的预测运动向量。

具体的,本实施例中预测处理单元601的具体工作内容,请参见对应的方法实施例的内容,此处不再赘述。

可选的,在本发明的另一个实施例中,参见图7所示,所述装置还包括:

缩放处理单元605,用于根据所述待编码图像块运动向量的参考索引,以及所述预测运动向量集合中的预测运动向量的参考索引,分别对所述预测运动向量集合中的预测运动向量进行缩放处理,使所述预测运动向量集合中的预测运动向量与所述待编码图像块运动向量所表示的偏移量相同。

具体的,本实施例中缩放处理单元605的具体工作内容,请参见对应的方法实施例的内容,此处不再赘述。

可选的,在本发明的另一个实施例中,所述第一编码单元603编码与所述待编码图像块运动向量相同的预测运动向量的序号索引时,具体用于:

生成表征在所述预测运动向量集合中,存在与所述待编码图像块运动向量相同的参考运动向量的标识信息;编码所述标识信息,以及编码与所述待编码图像块运动向量相同的预测运动向量的序号索引。

具体的,本实施例中第一编码单元603的具体工作内容,请参见对应的方法实施例的内容,此处不再赘述。

可选的,在本发明的另一个实施例中,参见图8所示,第二编码单元604,包括:

第一分量计算单元6041,用于根据所述预测运动向量集合中的预测运动向量的X分量,计算得到所述待编码图像块运动向量的X分量差分;

第二分量计算单元6042,用于根据所述预测运动向量集合中的预测运动向量的Y分量,计算得到所述待编码图像块运动向量的Y分量差分;

差分编码单元6043,用于对所述X分量差分、对应所述X分量差分的序号索引、所述Y分量差分及对应所述Y分量差分的序号索引,进行编码处理,得到所述待编码图像块运动向量的编码。

具体的,本实施例中各个单元的具体工作内容,请参见对应的方法实施例的内容,此处不再赘述。

可选的,在本发明的另一个实施例中,所述第一分量计算单元6041根据所述预测运动向量集合中的预测运动向量的X分量,计算得到所述待编码图像块运动向量的X分量差分时,具体用于:

分别提取得到所述预测运动向量集合中的预测运动向量的X分量;

生成第一序列,所述第一序列中包含所述预测运动向量集合中的第一个预测运动向量的X分量;

遍历所述预测运动向量集合中的剩余预测运动向量的X分量,每遍历到一个预测运动向量的X分量时,计算该预测运动向量的X分量与所述第一序列中的预测运动向量的X分量的距离;如果该预测运动向量的X分量与所述第一序列中的预测运动向量的X分量的距离都大于1,则将该预测运动向量的X分量加入所述第一序列;

从所述第一序列中,查找得到与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量,记录与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量在所述第一序列中的序号索引;

根据与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量,以及所述待编码图像块运动向量的X分量,计算得到所述待编码图像块运动向量的X分量差分。

具体的,本实施例中第一分量计算单元6041的具体工作内容,请参见对应的方法实施例的内容,此处不再赘述。

可选的,在本发明的另一个实施例中,所述第二分量计算单元6042根据所述预测运动向量集合中的预测运动向量的Y分量,计算得到所述待编码图像块运动向量的Y分量差分时,具体用于:

分别提取得到所述预测运动向量集合中的预测运动向量的Y分量;

将所述预测运动向量集合中的预测运动向量的Y分量,划分为第二序列和第三序列;其中,所述第二序列中的预测运动向量的Y分量对应的预测运动向量的X分量,与所述第一序列中的,与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量相同;所述第三序列中的预测运动向量的Y分量对应的预测运动向量的X分量,与所述第一序列中的,与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量不同;

生成第四序列,所述第四序列中包含所述第二序列中的第一个预测运动向量的Y分量;

遍历所述第二序列中剩余的预测运动向量的Y分量,每遍历到一个预测运动向量的Y分量时,计算该预测运动向量的Y分量与所述第四序列中的预测运动向量的Y分量的距离;如果该预测运动向量的Y分量与所述第四序列中的预测运动向量的Y分量的距离都大于1,则将该预测运动向量的Y分量加入所述第四序列;

生成第五序列,所述第五序列中包含所述第三序列中的第一个预测运动向量的Y分量;

遍历所述第三序列中剩余的预测运动向量的Y分量,每遍历到一个预测运动向量的Y分量时,计算该预测运动向量的Y分量与所述第五序列中的预测运动向量的Y分量的距离;如果该预测运动向量的Y分量与所述第五序列中的预测运动向量的Y分量的距离都大于1,则将该预测运动向量的Y分量加入所述第五序列;

从所述第四序列及所述第五序列中,查找得到与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量,记录与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量所在的序列,以及与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量在其所在的序列中的序列索引;

根据与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量,以及所述待编码图像块运动向量的Y分量,计算得到所述待编码图像块运动向量的Y分量差分。

具体的,本实施例中第二分量计算单元6042的具体工作内容,请参见对应的方法实施例的内容,此处不再赘述。

可选的,在本发明的另一个实施例中,所述差分编码单元6043对所述X分量差分、对应所述X分量差分的序号索引、所述Y分量差分及对应所述Y分量差分的序号索引,进行编码处理,得到所述待编码图像块运动向量的编码时,具体用于:

对所述X分量差分及所述Y分量差分的绝对值之和、所述X分量差分的绝对值、所述X分量差分、所述Y分量差分、与所述待编码图像块运动向量的X分量的绝对值差最小的预测运动向量的X分量在所述第一序列中的序号索引、表征与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量所在的序列的信息、与所述待编码图像块运动向量的Y分量的绝对值差最小的预测运动向量的Y分量在其所在的序列中的序列索引分别进行编码处理。

具体的,本实施例中差分编码单元6043的具体工作内容,请参见对应的方法实施例的内容,此处不再赘述。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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