Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND DEVICE FOR ROUNDING COORDINATE VALUE OF NON-FULL PIXEL POSITION MOTION VECTOR
Document Type and Number:
WIPO Patent Application WO/2012/097751
Kind Code:
A1
Abstract:
Disclosed are a method and device for rounding a coordinate value of a non-full pixel position motion vector during video coding and decoding. The method includes: performing a rounding operation on a coordinate value of a non-full pixel position motion vector, wherein for each dimension of the coordinate of the non-full pixel position motion vector, the rounding operation includes the step of rounding the coordinate value of the dimension non-full pixel position motion vector to one of coordinate positions A and B of a full pixel when the dimension coordinate is the non-full pixel position and if the distances between the coordinate of the dimension non-full pixel position motion vector and the coordinate positions A and B of two adjoining full pixels at the dimension non-full pixel position are equal to each other, wherein the coordinate position of the full pixel is determined by the sign of the dimension non-full pixel position motion vector coordinate value. Therefore, the problem that the existing process for selecting an optimum motion vector from a motion vector candidate set is high in complexity can be solved, and at the same time better encoding performance can be maintained.

Inventors:
YANG, Mingyuan (Huawei Administration Building, Bantian Longgang Distric, Shenzhen Guangdong 9, 518129, CN)
杨名远 (中国广东省深圳市龙岗区坂田华为总部办公楼, Guangdong 9, 518129, CN)
LIN, Sixin (Huawei Administration Building, Bantian Longgang Distric, Shenzhen Guangdong 9, 518129, CN)
林四新 (中国广东省深圳市龙岗区坂田华为总部办公楼, Guangdong 9, 518129, CN)
Application Number:
CN2012/070681
Publication Date:
July 26, 2012
Filing Date:
January 20, 2012
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HUAWEI TECHNOLOGIES CO., LTD. (Huawei Administration Building, Bantian Longgang Distric, Shenzhen Guangdong 9, 518129, CN)
华为技术有限公司 (中国广东省深圳市龙岗区坂田华为总部办公楼, Guangdong 9, 518129, CN)
YANG, Mingyuan (Huawei Administration Building, Bantian Longgang Distric, Shenzhen Guangdong 9, 518129, CN)
杨名远 (中国广东省深圳市龙岗区坂田华为总部办公楼, Guangdong 9, 518129, CN)
LIN, Sixin (Huawei Administration Building, Bantian Longgang Distric, Shenzhen Guangdong 9, 518129, CN)
International Classes:
H04N7/26
Attorney, Agent or Firm:
BEIJING CATALY IP ATTORNEY AT LAW (ZHENG, LimingRoom505, Block B, State Guest Hotel, NO.9A Fuchengmenwai Stree, Xicheng District Beijing 7, 100037, CN)
Download PDF:
Claims:
权 利 要求

1. 一种非整像素位置运动矢量的坐标值取整方法, 其特征在于, 所述方 法包括:

对非整像素位置运动矢量的坐标值进行取整操作, 所述取整操作包括对 于非整像素位置运动矢量的坐标的每一维度, 当该维度坐标为非整像素位置 时, 如果该维度非整像素位置运动矢量的坐标距离该维度非整像素位置邻近 的两个整像素的坐标位置 A, B距离相同时, 将该维度非整像素位置运动矢量 的坐标值取整至整像素的坐标位置 A, B其中一个, 所述整像素的坐标位置的 确定由该维度非整像素位置运动矢量坐标值的符号确定。

2. 根据权利要求 1所述的方法, 其特征在于, 所述整像素的坐标位置的 确定由该维度非整像素位置运动矢量坐标值的符号确定包括:

当该非整像素位置运动矢量的坐标值的符号为正时, 对该非整像素位置 运动矢量的坐标值取整后得到的整像素坐标位置为 A和 B中绝对值小的位置; 当该非整像素位置运动矢量的坐标值符号为负时, 对该非整像素位置运动矢 量的坐标值取整后得到的整像素坐标位置为 A和 B中绝对值大的位置, 或者: 当该非整像素位置运动矢量的坐标值的符号为负时, 对该非整像素位置 运动矢量的坐标值取整后得到的整像素坐标位置为 A和 B中绝对值小的位置; 当该非整像素位置运动矢量的坐标值符号为正时, 对该非整像素位置运动矢 量的坐标值取整后得到的整像素坐标位置为 A和 B中绝对值大的位置。

3. 根据权利要求 1所述的方法, 其特征在于, 所述对非整像素位置运动矢 量的坐标值进行取整操作之前还包括-.

获取当前编码或者解码块的候选运动矢量集合, 为所述初始候选运动矢 量集合中的运动矢量添加一个反向运动矢量, 根据所述反向运动矢量和所述 初始候选运动矢量集合中的运动矢量生成新的候选运动矢量集合, 以用于进 行取整操作。

4.根据权利要求 1所述的方法, 其特征在于, 所述将该维度非整像素位 置运动矢量的坐标值取整至整像素的坐标位置 A, B其中一个包括:

将该维度非整像素位置运动矢量的坐标值在该维度进行右移两位操作, 再左移两位操作, 取整至整像素的坐标位置 A, B其中一个。 5、根据权利要求 1所述的方法, 其特征在于, 所述对非整像素位置运动 矢量的坐标值进行取整操作还包括:

如果该维度非整像素位置运动矢量的坐标位置为四分之一像素位置, 将 该维度非整像素位置运动矢量的坐标值取整至最近的整像素的坐标位置。

6、根据权利要求 5所述的方法, 其特征在于, 所述对四分之一像素位置 运动矢量的坐标值进行取整操作包括:

对四分之一像素位置运动矢量的坐标值的该维度坐标取绝对值, 再加二 后, 右移两位, 再左移两位后得到取整后的该维度坐标的绝对值, 该维度坐 标符号保持不变。

7. 根据权利要求 1所述的方法, 其特征在于, 所述对非整像素位置运动矢 量的坐标值进行取整操作之后还包括:

从取整后的候选运动矢量集合中选择用于编码或解码的运动矢量进行编 解码。

8、根据权利要求 1所述的方法, 其特征在于, 所述非整像素位置运动矢 量的坐标值取整包括:

以整像素位置为取整目标,将二分之一像素位置和 /或四分之一像素位置 取整至整像素位置; 或者, 以整像素位置和二分之一像素位置为取整目标, 则将二分之一像素位置视为整像素位置,将四分之一像素位置和 /或八分之一 像素位置取整至整像素和二分之一像素位置。

9. 一种非整像素位置运动矢量的坐标值取整装置, 其特征在于, 所述装 置包括:

取整单元: 用于对非整像素位置运动矢量的坐标值进行取整操作, 所述 取整操作包括对于非整像素位置运动矢量的坐标的每一维度, 当该维度坐标 为非整像素位置时, 如果该维度非整像素位置运动矢量的坐标距离该维度非 整像素位置邻近的两个整像素的坐标位置 A, B距离相同时, 将该维度非整 像素位置运动矢量的坐标值取整至整像素的坐标位置 A, B其中一个, 所述 整像素的坐标位置的确定由该维度非整像素位置运动矢量坐标值的符号确 定。

10. 根据权利要求 9所述的装置, 其特征在于, 所述整像素的坐标位置的 确定由该维度非整像素位置运动矢量坐标值的符号确定包括:

当该非整像素位置运动矢量的坐标值的符号为正时, 对该非整像素位置 运动矢量的坐标值取整后得到的整像素坐标位置为 A和 B中绝对值小的位置; 当该非整像素位置运动矢量的坐标值符号为负时, 对该非整像素位置运动矢 量的坐标值取整后得到的整像素坐标位置为 A和 B中绝对值大的位置, 或者: 当该非整像素位置运动矢量的坐标值的符号为负时, 对该非整像素位置 运动矢量的坐标值取整后得到的整像素坐标位置为 A和 B中绝对值小的位置; 当该非整像素位置运动矢量的坐标值符号为正时, 对该非整像素位置运动矢 量的坐标值取整后得到的整像素坐标位置为 A和 B中绝对值大的位置。

11.根据权利要求 9所述的装置, 其特征在于, 所述装置还包括: 获取单元: 用于获取当前编码或者解码块的候选运动矢量集合; 添加单元: 用于为所述初始候选运动矢量集合中的运动矢量添加一个反 向运动矢量;

生成单元: 用于根据所述反向运动矢量和所述初始候选运动矢量集合中 的运动矢量生成新的候选运动矢量集合, 以用于进行取整操作。

12.根据权利要求 9所述的装置, 其特征在于, 所述装置还包括: 编码单元: 用于从取整后的候选运动矢量集合中选择用于编解码的运动 矢量进行编解码。

Description:
非整像素位置运动矢量的坐标值取整方法和装 置 本申请要求于 2011年 1月 21 日提交的申请号为 201110024401.7, 发明 名称为 "非整像素位置运动矢量的坐标值取整方法和 置"的中国专利申请和 2011年 1月 24日提交的申请号为 201110025766.1 , 发明名称为"非整像素位 置运动矢量的坐标值取整方法和装置"的中国 利申请的优先权,其全部内容 通过引用结合在本申请中。 技术领域

本发明涉及通信技术领域, 特别涉及视频编解码中的一种非整像素位置 运动矢量的坐标值取整方法和装置。

背景技术

运动预测和运动补偿是视频压縮中的重要技术 , 视频压缩码流中的一部 分比特用于传输运动矢量信息, 特别在低码率情况下, 对于高清视频来说, 用于传输运动矢量信息所耗费的比特通常超过 码流总比特数的百分之五十。 因此, 需要通过选择最优的运动矢量, 来提高编码效率。针对连续动态图像 的视频编码, 将连续若干幅图像分成?、 B、 I三种类型, 对于 P帧, 是 根据本帧与相邻的前一帧(I帧或 P帧)的相关性进行预测来压缩本帧数 据; 对于 B帧, 则是根据相邻的前一帧、 本帧以及后一帧数据的相关性 进行预测来压缩本帧。 针对 P帧和 B帧的不同, 其在选择运动矢量时, P帧仅需根据其前一帧获得运动矢量集合, 而 B帧可以根据其前一帧和 后一帧获得运动矢量集合。

运动矢量用来描述本帧和作为参考的相邻帧之 间的运动偏移关系。 为了提高帧间预测的准确度, 现有技术釆用非整像素插值技术, 提高帧 间预测精度。 如图 1 所示, 描述了进行帧间预测时, 作为参考块的相邻 帧中像素的二分之一精度像素或者四分之一精 度像素位置关系。 其中大 写的 A/B/C/D/E/F...表示整像素精度位置, 小写的 b/h/j/m/t/aa/hh/dd/ee... 表示二分之一精度像素位置, 小写的 a/c/d/e/g/i/k/n/p/q/r...表示四分之一 精度像素位置。 其中整像素位置为图像原有像素, 二分之一和四分之一 精度位置像素为通过整像素插值获得的非整像 素位置像素。 插值过程使 用插值滤波器, 比如二分之一像素 b的获取可以使用插值滤波器( 1, - 5, 20, 20, -5 , 1 ) /64 对整像素点 D/E/F/G/H/I插值获得, 四分之一精度像素 a可以通过整插值滤波器( 1,1 ) /2 对整像素点 F和二分之一像素点 b插 值滤波获取。

以 B帧为例, 现有技术中一种运动估计和补偿方案为: 在每帧图像中包 含了若干待编码码块,对于一个待编码码块, 根据该待编码码块周边码块(通 常指该待编码码块左侧码块、 左上方码块、 上方码块及右上方码块) 的运动 矢量得到空域候选运动矢量 , 以及根据这些空域候选运动矢量计算的中值运 动矢量; 获取该待编码码块前一帧中相同位置上的码块 , 及其四邻域、 八邻 域码块的运动矢量, 得到时域候选运动矢量; 从上述空域候选运动矢量、 中 值运动矢量和时域候选运动矢量组成的候选运 动矢量集合中选择一个或多个 最优的运动矢量, 作为当前块的运动补偿的前向运动矢量和 /或后向运动矢 量。 通过在编码端和解码端使用相同的最优运动矢 量的选取过程, 可以不必 传输运动矢量信息,从而节省运动矢量信息的 传输比特。一般的选取过程为: 利用一个待编码块的候选运动矢量集合中每个 运动信息所指向的前向或者后 向参考帧中对应的参考块作为模板块, 以该运动矢量信息的镜像位置在后向 或者前向参考帧中获取和模板对应块, 计算两个模板和模板对应块之间的差 异情况(可以使用均方差或者像素插值绝对值 和),选取差异最小的运动信息 作为当前待编码块的最优运动矢量。 使用该运动矢量进行运动预测补偿, 实 现编码和解码。

但是由于现有方案中的候选运动矢量集中存在 非整像素精度运动矢量, 在使用这些运动矢量计算最优运动矢量时,需 要进行大量的分像素插值操作, 复杂度高。 发明内容

本申请实施例提供了一种视频编解码过程中非 整像素位置运动矢量坐标 取整的方法和装置, 以解决在现有运动矢量候选集中选取最优运动 矢量过程 复杂度高问题, 同时保持较好的编码性能。 本申请实施例提出一种非整像素位置运动矢量 的坐标值取整方法, 包括: 对非整像素位置运动矢量的坐标值进行取整操 作, 所述取整操作包括对 于非整像素位置运动矢量的坐标的每一维度, 当该维度坐标为非整像素位置 时, 如果该维度非整像素位置运动矢量的坐标距离 该维度非整像素位置邻近 的两个整像素的坐标位置 A, B距离相同时, 将该维度非整像素位置运动矢量 的坐标值取整至整像素的坐标位置 A, B其中一个, 所述整像素的坐标位置的 确定由该维度非整像素位置运动矢量坐标值的 符号确定。

本申请实施例还提出一种非整像素位置运动矢 量的坐标值取整装置, 包 括:

取整单元: 用于对非整像素位置运动矢量的坐标值进行取 整操作, 所述 取整操作包括对于非整像素位置运动矢量的坐 标的每一维度, 当该维度坐标 为非整像素位置时, 如果该维度非整像素位置运动矢量的坐标距离 该维度非 整像素位置邻近的两个整像素的坐标位置 A, B距离相同时, 将该维度非整像 素位置运动矢量的坐标值取整至整像素的坐标 位置 A, B其中一个, 所述整像 素的坐标位置的确定由该维度非整像素位置运 动矢量坐标值的符号确定。

本发明实施例提出的技术方案, 通过釆用对非整像素位置运动矢量的坐 标值进行取整操作, 所述取整操作包括对于非整像素位置运动矢量 的坐标的 每一维度, 当该维度坐标为非整像素位置时, 如果该维度非整像素位置运动 矢量的坐标距离该维度非整像素位置邻近的两 个整像素的坐标位置 A, B距离 相同时, 将该维度非整像素位置运动矢量的坐标值取整 至整像素的坐标位置 A, B其中一个, 所述整像素的坐标位置的确定由该维度非整像 素位置运动矢 量坐标值的符号确定的技术手段, 解决了在现有运动矢量候选集中选取最优 运动矢量过程复杂度高得问题, 同时保持较好的编码性能。 附图说明

为了更清楚地说明本申请实施例或现有技术中 的技术方案, 下面将对实 施例或现有技术描述中所需要使用的附图作简 单地介绍, 显而易见地, 对于 本领域普通技术人员而言, 在不付出创造性劳动性的前提下, 还可以根据这 些附图获得其他的附图。 图 1为运动矢量精度位置示意图;

图 2A为本发明第二实施例流程图;

图 2B为本申请实施例 B帧中编码块的运动矢量选择示意图;

图 2C为本申请实施例 B帧匀速线性运动的模型示意图;

图 3为本发明实施例的装置示意图。 具体实施方式

本发明如下实施例提供了一种非整像素位置运 动矢量坐标取整的方法及 装置。 本发明实施例的上述目的、 特征和优点能够更加明显易懂, 下面结合附图对 本发明实施例中技术方案作进一步详细的说明 。

实施例一:

本发明实施例提供一种非整像素位置运动矢量 的坐标值取整方法, 包括: 对非整像素位置运动矢量的坐标值进行取整操 作, 所述取整操作包括对于非 整像素位置运动矢量的坐标的每一维度, 当该维度坐标为非整像素位置时, 如果该维度非整像素位置运动矢量的坐标距离 该维度非整像素位置邻近的两 个整像素的坐标位置 A, B距离相同时, 将该维度非整像素位置运动矢量的坐 标值取整至整像素的坐标位置 A, B其中一个, 所述整像素的坐标位置的确定 由该维度非整像素位置运动矢量坐标值的符号 确定。

本发明实施例提出的技术方案, 通过采用对非整像素位置运动矢量的坐 标值进行取整操作, 所述取整操作包括对于非整像素位置运动矢量 的坐标的 每一维度, 当该维度坐标为非整像素位置时, 如果该维度非整像素位置运动 矢量的坐标距离该维度非整像素位置邻近的两 个整像素的坐标位置 A, B距离 相同时, 将该维度非整像素位置运动矢量的坐标值取整 至整像素的坐标位置 A, B其中一个, 所述整像素的坐标位置的确定由该维度非整像 素位置运动矢 量坐标值的符号确定的技术手段, 解决了在现有运动矢量候选集中选取最优 运动矢量过程复杂度高得问题, 同时保持较好的编码性能。

本发明实施例中, 若该维度非整像素位置运动矢量的坐标距离该 维度非 整像素位置邻近的两个整像素的坐标位置 A, B距离相同, 则该维度非整像 素位置运动矢量的坐标位置为二分之一像素位 置。 则将该维度非整像素位置 运动矢量的坐标值取整至整像素的坐标位置 A, B其中一个包括: 将该维度 非整像素位置运动矢量的坐标值在该维度进行 右移两位操作, 再左移两位操 作, 取整至整像素的坐标位置 A, B其中一个。 本发明实施例中, 所述整像素的坐标位置的确定由该维度非整像 素位置 运动矢量坐标值的符号确定包括:

当该非整像素位置运动矢量的坐标值的符号为 正时, 对该非整像素位置 运动矢量的坐标值取整后得到的整像素坐标位 置为 A和 B中绝对值小的位置; 当该非整像素位置运动矢量的坐标值符号为负 时, 对该非整像素位置运动矢 量的坐标值取整后得到的整像素坐标位置为 A和 B中绝对值大的位置, 或者: 当该非整像素位置运动矢量的坐标值的夺号为 负时, 对该非整像素位置 运动矢量的坐标值取整后得到的整像素坐标位 置为 A和 B中绝对值小的位置; 当该非整像素位置运动矢量的坐标值符号为正 时, 对该非整像素位置运动矢 量的坐标值取整后得到的整像素坐标位置为 A和 B中绝对值大的位置。

某些实施方式中, 若该维度非整像素位置运动矢量的坐标位置不 是二分 之一像素位置, 而是四分之一像素位置, 则对于四分之一像素位置运动矢量 坐标值取整至整像素精度位置为, 将该维度非整像素位置运动矢量的坐标值 取整至最近的整像素的坐标位置。

某些实施方式中, 对非整像素位置运动矢量的坐标值进行取整操 作之前 还包括: 获取当前编码或者解码块的候选运动矢量集合 , 为所述初始候选运 动矢量集合中的运动矢量添加一个反向运动矢 量, 根据所述反向运动矢量和 所述初始候选运动矢量集合中的运动矢量生成 新的候选运动矢量集合, 以用 于进行取整操作。

本发明所述各实施例中, 以二分之一位置像素位置为例对非整像素位置 运动矢量的坐标值取整方法进行说明, 但并不构成对本发明的限制, 若以整 像素位置为取整目标, 将二分之一像素位置和 /或四分之一像素位置取整至整 像素位置; 另外一种实时方式中, 以整像素位置和二分之一像素位置为取整 目标, 则将二分之一像素位置视为整像素位置, 将四分之一像素位置和 /或八 分之一像素位置取整至整像素和二分之一像素 位置。 即此时, 本发明实施例 所说的整像素位置包括二分之一像素位置。 按此思路, 本领域技术人员显然 容易想到进一步的扩展方法。 实施例二:

参见图 2A, 为本申请非整像素位置运动矢量坐标取整方法 的第一实施例 流程图:

步骤 101 : 获取当前编码块或解码块的初始候选运动矢量 集合。

具体的 , 根据当前编码块或解码块的周边编码块或解码 块得到空域候选 运动矢量, 根据参考帧得到当前编码块或解码块的时域候 选运动矢量, 该参 考帧可以为当前编码块或解码块所在的当前帧 的前一帧, 或后一帧, 或前一 帧和后一帧, 将空域候选运动矢量和时域候选运动矢量组成 初始运动矢量集 合。

参见图 2B, 为具有双向运动补偿特性的 B帧中编码块或解码块的运动 矢量选择示意图。 假设当前帧中的编码块或解码块 mv为当前编码块或解码 块,则当前编码块或解码块 mv的周边编码块或解码块通常指图 2B中示出的 mv的左侧编码块或解码块 mv a 、 上方编码块或解码块 mv b 、 右上方编码块或 解码块 mv e 、 左上方编码块或解码块 mv d , 根据上述编码块或解码块 mv a 、 mv b 、 mv e 、 mv d 获得当前编码块或解码块 mv的空域候选运动矢量; 假设以 参考帧为当前帧中的前一帧为例 , 则当前编码块或解码块 mv在前一帧中对 应位置处的编码块或解码块为 mv ∞1 , 相应的 mv ∞1 的四邻域及八邻域编码块 或解码块分别为 mv。至 mv 7 ,根据上述 mv^和 mv。至 mv 7 获得 mv的时域候 选运动矢量, 同理, 也可以才艮据当前编码块或解码块 mv在后一帧中对应位 置处的编码块或解码块 mv e 。及其四邻域及八邻域编码块或解码块 mvo,至 mv 7 ,获得时域候选运动矢量。

步骤 102: 为初始候选运动矢量集合中的运动矢量添加反 向运动矢量。 具体的, 可以根据预设运动模型为初始候选运动矢量集 合中的运动矢量 添加反向运动矢量。预设运动模型包括勾速直 线运动模型、或加速运动模型。 以匀速直线运动模型为例, 参见图 2C, 为 B帧匀速线性运动的模型示 意图。 假设 是该后向运动矢量, 是前向运动矢量, B帧与前向参考帧之 间的距离为 7> , 与后向参考帧之间的距离为 7, 则对于图 2C中示出的匀速 直线运动模型来说, 每一对前向运动矢量和后向运动矢量当满足如 下关系:

V f l T f = -V h I T h 。 另外, 除了上述图 2C中示出的匀速直线运动模型外, 也可以采用加速运 动模型, 此时两个运动矢量 和 之间可以满足关系 = _ ( * +a ), 其中 a 为速度差。

以上取反操作可以对初始候选运动矢量集合中 的每一个运动矢量进行操 作, 也可以对初始候选运动矢量集合中已经构成反 向关系的不进行该操作, 而对剩余的运动矢量进行该操作。

步骤 103: 根据反向运动矢量和初始候选运动矢量集合中 的运动矢量生 成新的候选运动矢量集合。

在为初始候选运动矢量集合中的运动矢量添加 完反向运动矢量后, 将所 添加的反向运动矢量和原来初始候选运动矢量 集合中的运动矢量中的所有前 向运动矢量组成前向候选运动矢量集合, 以及所有后向运动矢量组成后向候 选运动矢量集合。

除了上述分别建立前向候选运动矢量集合和后 向候选运动矢量集合的方 式外, 也可以在一个新的候选运动矢量集合中包含所 有前向运动矢量和后向 运动矢量, 该新的候选运动矢量集合中包含了若干组运动 矢量, 每一组运动 矢量中有相对应的前向运动矢量和后向运动矢 量, 每一組相对应的前向运动 矢量和后向运动矢量可以通过标识信息进行区 别。

步骤 104: 为新的候选运动矢量集合中的运动矢量进行取 整操作。

具体的, 对于候选运动矢量集合中的运动矢量, 根据其运动矢量位置的 进行取整操作。 对于候选运动矢量其中每一维度, 当该维度坐标为非整像素 位置时, 如果该维度非整像素位置运动矢量的坐标距离 该维度非整像素位置 邻近的两个整像素的坐标位置 A, B距离相同时, 将该维度非整像素位置运动 矢量的坐标值取整至整像素的坐标位置 A, B其中一个, 所述整像素的坐标位 置的确定由该维度非整像素位置运动矢量坐标 值的符号确定; 以四分之一非整像素精度运动估计和运动补偿 为例, 参见图 1所示像素点 位置关系, 如果候选运动矢量集合中的运动矢量指向 F或 G位置, 则为整像素 精度运动矢量, 如果候选运动矢量集合中的运动矢量指向 b位置, 则为二分之 一精度运动矢量,如果候选动矢量集合中的运 动矢量指向 a或 c位置, 为四分之 一精度运动矢量。 对于候选动矢量集合中的运动矢量为整像素精 度时, 不需 要对其进行取整操作。 对于候选动矢量集合中的运动矢量为四分之一 精度时, 根据临近原则对其取整操作, 例如当运动矢量 (xl , yl)指向 a位置时, 由于和 a 临近的两个整像素位置为 F(x2, y2)和 G(x3, y3), 而 a距离 F距离比距离 G距离 更近, 因此将 a取整至 F点位置, 候选运动矢量 (xl, yl)取整至 (x2, y2)。 同理 c 点取整至 G位置。 对于候选运动矢量集合中的运动矢量为二分之 一精度时, 由 于该运动矢量指向位置距离其相邻的两个整像 素位置距离相等, 因此, 在取 整时, 需要根据当前运动矢量的符号取整至不同的整 像素位置。 当运动矢量 (xl , yl)指向图 1中二分之一像素位置 b时, 整像素位置 F和 G距离 b相等。 如果 当对 b取整时, 如果 xl的符号为正, F和 G点的横坐标也为正, 并且, F横坐标 的绝对值小于 G点横坐标的绝对值, 则将 b的 xl维度坐标取整至 F点坐标 x2,如 果 xl符号为负, F和 G点的横坐标也为负, 并且, F横坐标的绝对值大于于 G点 横坐标的绝对值, 将 b的 xl维度坐标取整至 F点坐标 x2; 同理, 当运动矢量 (xl , yl)指向图 1中二分之一像素位置 h时, 其纵坐标方向距离 F(x2, y2)和 N(x4, y4) 距离相等, 对于 yl为正, 将 yl坐标取整至 N点坐标 y4, 当 yl为负, 将 yl坐标取 整至 N点坐标 y4。 以上取整过程也可以反过来, 如果 xl的符号为正, F和 G点 的横坐标也为正, 并且, F横坐标的绝对值小于 G点横坐标的绝对值, 则将 b 的 xl维度坐标取整至 G点坐标 x3 , 如果 xl符号为负, F和 G点的横坐标也为负, 并且, F横坐标的绝对值大于于 G点横坐标的绝对值,将 b的 xl维度坐标取整至 G点坐标 x3。

以上过程可以表示为如下伪代码描述, 对于运动矢量集合中的一个运动 矢量 MV, 其横坐标和纵坐标值分别为 MV— X和 MV_y, 以对 MV— x取整为例, 如下:

iTmp = MV— X;

MV_pos = abs(MV x) & 0x3; If(MV_pos = =3 II MV_pos = =1)

{

iSign = iTmp >= 0 ? 1: -1 ;

iAbs = abs( iTmp );

iTmp = ((( iAbs + 2 ) » 2 ) « 2 );

MV x = iSign * iTmp;

}

Else if(MV_pos = =2)

{

iTmp = ((MV_x » 2 ) « 2 );

MV = iTmp;

}

以上取整过程的具体描述为, 对候选运动矢量横坐标和纵坐标分别进行 取整操作, 以横坐标为例, 利用横坐标最低两位判断当前横坐标是二分之 一 像素还是四分之一像素, 对四分之一像素位置运动矢量的坐标值取绝对 值, 再加二后, 右移两位, 再左移两位后得到取整后的该维度坐标的绝对 值, 该 维度坐标符号保持不变。 对二分之一像素位置运动矢量的坐标值的该维 度坐 标进行右移两位操作, 再左移两位操作, 得到取整后的该维度坐标值。 对于 整像素点不进行取整操作, 也可以在实现中为了实现方便, 进行取整操作。

步骤 105: 从取整后的候选运动矢量集合中选择用于编码 或解码的运动矢 量进行编码或解码。

具体的利用一个待编码块或解码块的候选运动 矢量集合中每个运动信息 所指向的前向或者后向参考帧中对应的参考块 作为模板块, 以该运动矢量信 息的镜像位置在后向或者前向参考帧中获取和 模板对应块, 计算两个模板和 模板对应块之间的差异情况, 选取差异最小的运动信息作为当前待编码块的 最优运动矢量。。使用该运动矢量进行运动预 测或补偿,实现编码和解码过程。

另外, 编码终端也可以利用选择的运动矢量完成其它 编码过程, 该过程 与现有技术一致, 在此不再赘述。 实施例三: 实施例二中以四分之一精度的运动预测和补偿 过程为例描述 了本发明方案, 当运动预测和补偿精度为二分之一像素时的取 整方法, 或者 为八分之一像素时的取整方法, 或者将取整操作定义为将四分之一和八分之 一点归一化至二分之一和整像素精度位置的操 作和本发明实施例二的操作过 程类似。

本申请取整方法的取整目标可以根据实际系统 要求进行扩展, 对于实施 例一方案, 以整像素位置为取整目标, 将二分之一和 /或四分之一取整至整像 素位置;

或者, 以整像素位置和二分之一像素位置为取整目标 , 则将二分之一像 素位置视为整像素位置, 将四分之一和 /或八分之一取整至整像素和二分之一 像素位置。

不同的取整目标选择会带来不同的压缩性能和 复杂度, 满足不同的应用 需求。

实施例四: 取整的另一种实现方案

在实施例一中的步骤 104的取整过程的具体实现还可以采用如下对横 坐 标取整的伪代码描述的取整过程:

iTmp = MV x;

MV_pos = MV x & 0x3;

if((MV_ pos = =1) && (MV— x <0))

MV = MV -1;

else if((MV_ pos = = 3)&&( MV x >0))

MV = MV +1;

iTmp = ((MV— x » 2 ) « 2 );

MV x = iTmp;

以上取整过程的具体描述为, 根据候选运动矢量横坐标和纵坐标分别进 行取整操作, 以横坐标为例, 当横坐标最低两位为 1, 并且横坐标为负值, 横 坐标减一; 当横坐标最低两位为 3, 并且横坐标为正值, 横坐标加一; 对以上 操作后的横坐标右移两位后, 再左移两位得到取整后的横坐标值, 完成横坐 标的取整过程。 在具体实现时, 实施例二和实施例四中的伪代码方案仅为该取 整方法的 易想到其它具体实现方式, 在本发明实施例披露的技术思想下, 任何可以体 现本发明实质的软硬件实现方案均属于本发明 保护范围。 如图 3所示, 本发明实施例提出一种非整像素位置运动矢量 的坐标值取整 装置, 所述装置包括:

取整单元 301: 用于对非整像素位置运动矢量的坐标值进行取 整操作, 所述取整操作包括对于非整像素位置运动矢量 的坐标的每一维度, 当该维度 坐标为非整像素位置时, 如果该维度非整像素位置运动矢量的坐标距离 该维 度非整像素位置邻近的两个整像素的坐标位置 A, B距离相同时, 将该维度 非整像素位置运动矢量的坐标值取整至整像素 的坐标位置 A, B其中一个, 所述整像素的坐标位置的确定由该维度非整像 素位置运动矢量坐标值的符号 确定

所述整像素的坐标位置的确定由该维度非整像 素位置运动矢量坐标值的 符号确定包括:

当该非整像素位置运动矢量的坐标值的符号为 正时, 对该非整像素位置 运动矢量的坐标值取整后得到的整像素坐标位 置为 A和 B中绝对值小的位置; 当该非整像素位置运动矢量的坐标值符号为负 时, 对该非整像素位置运动矢 量的坐标值取整后得到的整像素坐标位置为 A和 B中绝对值大的位置, 或者: 当该非整像素位置运动矢量的坐标值的符号为 负时, 对该非整像素位置 运动矢量的坐标值取整后得到的整像素坐标位 置为 A和 B中绝对值小的位置; 当该非整像素位置运动矢量的坐标值符号为正 时, 对该非整像素位置运动矢 量的坐标值取整后得到的整像素坐标位置为 A和 B中绝对值大的位置。

本发明实施例提出的技术方案, 通过采用对非整像素位置运动矢量的坐 标值进行取整操作, 所述取整操作包括对于非整像素位置运动矢量 的坐标的 每一维度, 当该维度坐标为非整像素位置时, 如果该维度非整像素位置运动 矢量的坐标距离该维度非整像素位置邻近的两 个整像素的坐标位置 A, B距离 相同时, 将该维度非整像素位置运动矢量的坐标值取整 至整像素的坐标位置 A, B其中一个, 所述整像素的坐标位置的确定由该维度非整像 素位置运动矢 量坐标值的符号确定的技术手段, 解决了在现有运动矢量候选集中选取最优 运动矢量过程复杂度高得问题, 同时保持较好的编码性能。

某些实施方式中, 所述装置还包括:

获取单元 302: 用于获取当前编码或者解码块的候选运动矢量 集合; 添加单元 303: 用于为所述初始候选运动矢量集合中的运动矢 量添加一 个反向运动矢量;

生成单元 304: 用于根据所述反向运动矢量和所述初始候选运 动矢量集 合中的运动矢量生成新的候选运动矢量集合, 以用于进行取整操作。

某些实施方式中, 所述装置还包括:

编码单元 305: 用于从取整后的候选运动矢量集合中选择用于 编码或解 码的运动矢量进行编解码。 本发明实施例的装置用于执行本发明实施例的 方法步骤, 方法部分的内 容可以适用于装置部分。 本领域的技术人员可以清楚地了解到本发明实 施例中的技术可借助软件 加必需的通用硬件平台的方式来实现。 基于这样的理解, 本发明实施例中的 现出来, 该计算机软件产品可以存储在存储介质中, 如 ROM/RAM、 磁碟、 光盘等, 包括若干指令用以使得一台计算机设备(可以 是个人计算机, 服务 器, 或者网络设备等)执行本发明各个实施例或者 实施例的某些部分所述的 方法。

本说明书中的各个实施例均采用递进的方式描 述, 各个实施例之间相同 相似的部分互相参见即可, 每个实施例重点说明的都是与其他实施例的不 同 之处。 尤其, 对于系统实施例而言, 由于其基本相似于方法实施例, 所以描 述的比较简单, 相关之处参见方法实施例的部分说明即可。

以上所述的本发明实施方式, 并不构成对本发明保护范围的限定。 任何 在本发明的精神和原则之内所作的修改、 等同替换和改进等, 均应包含在本 发明的保护范围之内。