CN103841425A - 用于运动矢量预测的运动矢量列表建立的方法、装置 - Google Patents

用于运动矢量预测的运动矢量列表建立的方法、装置 Download PDF

Info

Publication number
CN103841425A
CN103841425A CN201410091553.2A CN201410091553A CN103841425A CN 103841425 A CN103841425 A CN 103841425A CN 201410091553 A CN201410091553 A CN 201410091553A CN 103841425 A CN103841425 A CN 103841425A
Authority
CN
China
Prior art keywords
adjacent block
motion vector
vector predictor
current
prediction piece
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410091553.2A
Other languages
English (en)
Other versions
CN103841425B (zh
Inventor
林永兵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201410091553.2A priority Critical patent/CN103841425B/zh
Priority claimed from CN201210377579.4A external-priority patent/CN102883163B/zh
Publication of CN103841425A publication Critical patent/CN103841425A/zh
Application granted granted Critical
Publication of CN103841425B publication Critical patent/CN103841425B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明提供一种用于运动矢量预测的运动矢量列表建立的方法、装置。涉及视频编码领域。解决了采用串行方式建立同一编码单元中的至少两个PU的运动矢量列表的问题,提高并行处理能力。具体可以包括:获取当前预测块空域上的相邻块,当前预测块位于当前编码单元中;根据当前编码单元的划分方式确定当前预测块的适用相邻块,适用相邻块位于当前编码单元外;根据适用相邻块的运动矢量预测值并按照预设顺序从适用相邻块中获取运动矢量预测值,并将获取到的运动矢量预测值加入到运动矢量列表。可应用于建立运动矢量列表中。

Description

用于运动矢量预测的运动矢量列表建立的方法、装置
技术领域
本发明涉及视频编码领域,尤其涉及用于运动矢量预测的运动矢量列表建立的方法、装置。
背景技术
HEVC(High Efficiency Video Coding,高效视频编码标准)中的帧间预测技术,采用传统的MCP(Motion Compensated Prediction,运动补偿预测)的方法,在运动矢量预测方面,HEVC采用多运动矢量竞争的方法,提高了运动矢量预测的精度,从而提升编码压缩性能。
HEVC帧间预测模式可以包括但不限于:Merge mode(合并模式)、Skip mode(跳过模式)等,且均是利用多运动矢量竞争的方法进行帧间预测的。在进行运动矢量预测时,用到了运动矢量列表。对于Merge mode和Skip mode,运动矢量列表中允许有最多4个空域运动矢量预测值和1个时域运动矢量预测值,Merge mode和Skip mode共用同一个运动矢量列表。编码器从该运动矢量列表中选出一个最佳的运动矢量预测值作为当前PU(Prediction Unit,预测单元<以下可称为预测块>)的运动矢量预测值。
其中,运动矢量列表的建立方法可以包括:
如图1所示,与当前PU在空域上相邻块可以包括:相邻块A0(当前PU左下角位置对应的左下参考块)、相邻块A1(当前PU左下角位置对应的左边参考块)、相邻块B0(当前PU右上角位置对应的右上参考块)、相邻块B1(当前PU右上角位置对应的上边参考块)、相邻块B2(当前PU左上角位置对应的左上参考块);TMVP(Temporal Motion Vector predictor,运动矢量时域预测值)为当前PU在时域上相应的运动矢量预测值。
首先,按照相邻块A1、相邻块B1、相邻块B0、相邻块A0、相邻块B2、相邻块TMVP的顺序依次从各相邻块以及TMVP中获取运动矢量预测值,然后,按照HEVC中的规则将获取到的各运动矢量预测值加入运动矢量列表中。具体的运动矢量列表建立过程为本领域技术人员熟知的技术,在此不再赘述。
进一步的,当前CU(Coding Unit,编码单元<以下可称为编码单元>)可以包含至少两个PU,采用串行方式建立至少两个PU的运动矢量列表的。
在实现上述运动矢量列表建立的过程中,发明人发现现有技术中至少存在如下问题:若当前CU包含至少两个PU,采用串行方式建立至少两个PU的运动矢量列表,使得同一CU中的至少两个PU建立运动矢量列表的速度较慢,降低并行处理能力。
发明内容
本发明的实施例提供一种用于运动矢量预测的运动矢量列表建立的方法、装置,解决了采用串行方式建立同一编码单元中的至少两个PU的运动矢量列表的问题,提高并行处理能力。
为达到上述目的,本发明的实施例采用如下技术方案:
一方面,提供一种用于运动矢量预测的运动矢量列表建立的方法,包括:
获取当前预测块空域上的相邻块,所述当前预测块位于当前编码单元中;
根据所述当前编码单元的划分方式确定所述当前预测块的适用相邻块,所述适用相邻块位于所述当前编码单元外;
根据所述适用相邻块的运动矢量预测值并按照预设顺序从所述适用相邻块中获取运动矢量预测值,并将获取到的运动矢量预测值加入到所述运动矢量列表。
另一方面,提供一种用于运动矢量预测的运动矢量列表建立的装置,包括:
接收器,用于获取当前预测块空域上的相邻块,所述当前预测块位于当前编码单元中;
处理器,用于根据所述当前编码单元的划分方式确定所述当前预测块的适用相邻块,所述适用相邻块位于所述当前编码单元外;根据所述适用相邻块的运动矢量预测值并按照预设顺序从所述适用相邻块中获取运动矢量预测值,并将获取到的运动矢量预测值加入到所述运动矢量列表。
本发明实施例提供的用于运动矢量预测的运动矢量列表建立的方法、装置,采用上述方案后,当建立预测块的运动矢量列表时,首先,获取当前预测块空域上的相邻块,当前预测块位于当前编码单元中;根据当前编码单元的划分方式确定当前预测块的适用相邻块,适用相邻块位于当前编码单元外;根据适用相邻块的运动矢量预测值并按照预设顺序从适用相邻块中获取运动矢量预测值,并将获取到的运动矢量预测值加入到所述运动矢量列表。这样,建立预测块的运动矢量列表时,不考虑位于当前编码单元中的相邻块,当编码单元包含至少两个预测块时,可以采用并行方式建立至少两个预测块的运动矢量列表,增加了同一编码单元中的至少两个预测块建立运动矢量列表的速度,提高了并行处理能力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本实施例提供的编码单元CU、PU以及相邻块的结构示意图;
图2a至图2g为本实施例提供的编码单元CU的不同划分方式下的结构示意图;
图3为本实施例提供的一种用于运动矢量预测的运动矢量列表建立的方法流程图;
图4为本实施例提供的一种用于运动矢量预测的运动矢量列表建立的装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有技术中,CU中可以包含至少两个PU,采用串行方式建立至少两个PU的运动矢量列表,即当前PU建立运动矢量列表完成后,下一个PU才开始建立运动矢量列表。
具体的可以包括:
如图2a至图2g所示,一个CU(图中的实现框)可以进一步划分成多个PU,在HEVC中,CU可以有7种partition(划分)方式。如图2a至图2c中的partition方式是把当前CU划分成左右2个PU(PU1和PU2),又如图2d的partition方式是把当前CU划分成4个PU(PU1、PU2、PU3、PU4),其他类型不再赘述。
以图2a所示的partition为例,由于,PU2的空域参考块A1位于PU2内,因此,只有当PU1编码结束后,PU2才可以开始建立运动矢量列表,PU1与PU2采用串行方式建立运动矢量列表。具体的,首先,PU1按照上述方法建立运动矢量列表,然后,PU2按照上述方法建立运动矢量列表。
这样,使得至少两个PU建立运动矢量列表的速度较慢,降低压缩编码的性能。
为了解决上述至少两个PU建立运动矢量列表的速度较慢,降低压缩编码的性能的问题,本实施例提供一种用于运动矢量预测的动矢量列表建立的方法,如图3所示,可以包括:
301、获取当前预测块空域上的相邻块,当前预测块位于当前编码单元中;
302、根据当前编码单元的划分方式确定当前预测块的适用相邻块,适用相邻块位于当前编码单元外;
303、根据适用相邻块的运动矢量预测值并按照预设顺序从适用相邻块中获取运动矢量预测值,并将获取到的运动矢量预测值加入到运动矢量列表。
采用上述方案后,当建立预测块的运动矢量列表时,首先,获取当前预测块空域上的相邻块,当前预测块位于当前编码单元中;根据当前编码单元的划分方式确定当前预测块的适用相邻块,适用相邻块位于当前编码单元外;根据适用相邻块的运动矢量预测值并按照预设顺序从适用相邻块中获取运动矢量预测值,并将获取到的运动矢量预测值加入到运动矢量列表。这样,建立预测块的运动矢量列表时,不考虑位于当前编码单元中的相邻块,当编码单元包含至少两个预测块时,可以采用并行方式建立至少两个预测块的运动矢量列表,增加了同一编码单元中的至少两个预测块建立运动矢量列表的速度,提高了并行处理能力。
本实施例提供另一种用于运动矢量预测的运动矢量列表建立的方法,该方法是对图3所示的方法的进一步扩展,如图3所示,可以包括:
301、获取当前预测块空域上的相邻块,当前预测块位于当前编码单元中。
如图1所示,预测块空域上的相邻块可以包括:位于预测块左下侧的相邻块A0,位于预测块左侧的相邻块A1,位于预测块右上侧的相邻块B0,位于预测块上侧的相邻块B1,位于预测块左上侧的相邻块B2。
本实施例对获取预测块空域上的相邻块的方法、预测块以及相邻块不作限定,为本领域技术人员熟知的技术,在此不再赘述。
302、根据当前编码单元的划分方式确定当前预测块的适用相邻块,适用相邻块位于当前编码单元外。
进一步,如图2e至图2g所示,若当前编码单元CU被上下划分为第一预测块PU1和第二预测块PU2,且当前预测块为第二预测块PU2,则PU2的适用相邻块包括第二预测块的:相邻块A0、相邻块A1、相邻块B0、相邻块B2。此时,相邻块B1位于当前编码单元CU中,不作为第二预测块PU2的适用相邻块。
如图2a至图2c所示,若当前编码单元CU被左右划分为第一预测PU1块和第二预测块PU2,且当前预测块为第二预测块PU2,则PU2的适用相邻块包括第二预测块PU2的:相邻块A0、相邻块B0、相邻块B1、相邻块B2。此时,相邻块A1位于当前编码单元CU中,不作为第二预测块PU2的适用相邻块。
进一步的,可以通过相邻块的标志位确定适用相邻块。标志位可以为但不限于用于标识相邻块不位于CU中。
本实施例对通过相邻块的标志位确定适用相邻块的方法不作限定,为本领域技术人员熟知的技术,在此不再赘述。
303、根据适用相邻块的运动矢量预测值并按照预设顺序从适用相邻块中获取运动矢量预测值,并将获取到的运动矢量预测值加入到运动矢量列表。
进一步的,按照预设顺序从适用相邻块中获取运动矢量预测值可以包括:
若适用相邻块为帧间编码块,则按照相邻块A1、相邻块B1、相邻块B0、相邻块A0、相邻块B2的顺序从适用相邻块中获取运动矢量预测值。
具体的,若适用相邻块为帧间编码块,说明该相邻块包含有运动矢量信息,则从该相邻块中获取运动矢量预测值。
具体的,若预测块的适用相邻块包括第二预测块的:相邻块A0、相邻块A1、相邻块B0、相邻块B2,则按照相邻块A0、相邻块A1、相邻块B0、相邻块B2的顺序从相邻块A0、相邻块A1、相邻块B0、相邻块B2中获取运动矢量预测值;可见,当前CU上下划分为第一和第二预测块时,第二预测块的适用相邻块不包括位于第一预测块内的相邻块B1,因此,不会从B1获取运动矢量预测值。
若预测块的适用相邻块包括第二预测块PU2的:相邻块A0、相邻块B0、相邻块B1、相邻块B2,则按照相邻块A0、相邻块B0、相邻块B1、相邻块B2的顺序从相邻块A0、相邻块B0、相邻块B1、相邻块B2中获取运动矢量预测值。可见,当前CU左右划分为第一和第二预测块时,第二预测块的适用相邻块不包括位于第一预测块内的相邻块A1,因此,不会从A1获取运动矢量预测值。
进一步的,若获取到的运动矢量预测值为当前适用相邻块的运动矢量预测值,则将获取到的运动矢量预测值加入到运动矢量列表包括:
判断当前适用相邻块的运动矢量预测值与除当前适用相邻块以外的其他适用相邻块的运动矢量预测值是否相同;若不相同,则将当前适用相邻块的运动矢量预测值加入运动矢量列表。
可见,上述过程中,由于适用相邻块不包括位于当前CU内的相邻块,因此CU内的多个PU,不存在依赖性,可以并行执行。例如,当前CU左右划分为第一和第二预测块时,第二预测块的适用相邻块不包括位于第一预测块内的相邻块A1,A1的运动矢量预测值不会参与该判断过程。因此第二预测块与第一预测块可以并行执行该过程。
具体的,作为本实施例的一种实施方式,若当前适用相邻块为相邻块B1,则判断相邻块B1的运动矢量预测值与相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B0,则判断相邻块B0的运动矢量预测值与相邻块B1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块A0,则判断相邻块A0的运动矢量预测值与相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B2,则判断相邻块B2的运动矢量预测值与相邻块A1的运动矢量预测值、相邻块B1的运动矢量预测值中至少一项是否相同。
进一步的,若获取到的运动矢量预测值为当前适用相邻块的运动矢量预测值,则将获取到的运动矢量预测值加入到运动矢量列表还可以包括:
判断当前适用相邻块的运动矢量预测值与已被加入到运动矢量列表中的运动矢量预测值是否相同;若不相同,则将当前适用相邻块的运动矢量预测值加入运动矢量列表。
具体的,作为本实施例的一种实施方式,若当前适用相邻块为相邻块B1,则判断相邻块B1的运动矢量预测值与已被加入运动矢量列表的相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B0,则判断相邻块B0的运动矢量预测值与已被加入运动矢量列表的相邻块B1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块A0,则判断相邻块A0的运动矢量预测值与已被加入运动矢量列表的相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B2,则判断相邻块B2的运动矢量预测值与已被加入运动矢量列表的相邻块A1的运动矢量预测值、已被加入运动矢量列表的相邻块B1的运动矢量预测值中至少一项是否相同。
进一步的,在建立运动矢量列表过程中还可以考虑TMVP中的运动矢量。
作为本实施例的一种实施方式,按照预设顺序从适用相邻块中获取运动矢量预测值还可以为:按照相邻块A1、相邻块B1、相邻块B0、相邻块A0、相邻块B2、TMVP的顺序从适用相邻块和/或TMVP中获取运动矢量预测值。
为了更清晰的描述本实施的方案,下面对在CU不同划分方式下的运动矢量列表建立的方法进行具体描述。
1、CU被左右划分为PU1和PU2
(1)PU1建立运动矢量列表
1)按照相邻块A1,相邻块B1,相邻块B0,相邻块A0,相邻块B2的顺序,从相邻块A1,相邻块B1,相邻块B0,相邻块A0,相邻块B2中获取运动矢量,并加入到运动矢量列表中。
a.当前相邻块为相邻块A1时,仅当相邻块A1中包含运动矢量预测值时,将相邻块A1的运动矢量预测值加入到运动矢量列表中;
b.当前相邻块为相邻块B1时,仅当相邻块B1中包含运动矢量预测值,并且该预测值与已被加入运动矢量列表中的相邻块A1的运动矢量预测值不相同时,将相邻块B1的运动矢量预测值加入到运动矢量列表中;
c.当前相邻块为相邻块B0时,仅当相邻块B0中包含运动矢量预测值,并且该预测值与已被加入运动矢量列表中的相邻块B1的运动矢量预测值不相同时,将相邻块B0的运动矢量预测值加入到运动矢量列表中;
d.当前相邻块为相邻块A0时,仅当相邻块A0中包含运动矢量预测值,并且该预测值与已被加入运动矢量列表中的相邻块A1的运动矢量预测值不相同时,将相邻块A0的运动矢量预测值加入到运动矢量列表中;
e.当前相邻块为相邻块B2时,仅当相邻块B2中包含运动矢量预测值,该预测值与已被加入运动矢量列表中的相邻块A1的运动矢量预测值、和与已被加入运动矢量列表中的相邻块B1的运动矢量预测值均不相同,并且相邻块A1、相邻块B1、相邻块B0、相邻块A0中至少一项的运动矢量预测值未被加入运动矢量列表中时,将相邻块B2的运动矢量预测值加入运动矢量列表中。
2)从TMVP中获取运动矢量预测值,并加入到运动矢量列表中。具体的,利用PU1的时域参考图像获取PU1的TMVP,如果PU1的TMVP可用,则将TMVP的运动矢量加入到运动矢量列表中。
(2)PU2建立运动矢量列表
1)按照相邻块B1,相邻块B0,相邻块A0,相邻块B2的顺序,从相邻块B1,相邻块B0,相邻块A0,相邻块B2中获取运动矢量,并加入到运动矢量列表中。
a.当前相邻块为相邻块B1时,仅当相邻块B1中包含运动矢量预测值时,将相邻块B1的运动矢量预测值加入到运动矢量列表中;
b.当前相邻块为相邻块B0时,仅当相邻块B0中包含运动矢量预测值,并且该预测值与已被加入运动矢量列表中的相邻块B1的运动矢量预测值不相同时,将相邻块B0的运动矢量预测值加入到运动矢量列表中;
c.当前相邻块为相邻块A0时,仅当相邻块A0中包含运动矢量预测值时,将相邻块A0的运动矢量预测值加入到运动矢量列表中;
d.当前相邻块为相邻块B2时,仅当相邻块B2中包含运动矢量预测值,该预测值与已被加入运动矢量列表中的相邻块B1的运动矢量预测值不相同时,将相邻块B2的运动矢量预测值加入运动矢量列表中。
2)从TMVP中获取运动矢量预测值,并加入到运动矢量列表中。具体的,利用PU1的时域参考图像获取PU1的TMVP,如果PU1的TMVP可用,则将TMVP的运动矢量加入到运动矢量列表中。
此时,由于在建立PU2的运动矢量列表时,不考虑PU2的相邻块A1,则可以采用并行方式建立PU1与PU2的运动矢量列表。
2、CU被上下划分为PU1和PU2
(1)PU1建立运动矢量列表
与“1、CU被左右划分为PU1和PU2”中“(1)PU1建立运动矢量列表”的方法类似,在此不再赘述。
(2)PU2建立运动矢量列表
1)按照相邻块A1,相邻块B0,相邻块A0,相邻块B2的顺序,从相邻块A1,相邻块B0,相邻块A0,相邻块B2中获取运动矢量,并加入到运动矢量列表中。
a.当前相邻块为相邻块A1时,仅当相邻块A1中包含运动矢量预测值时,将相邻块A1的运动矢量预测值加入到运动矢量列表中;
b.当前相邻块为相邻块B0时,仅当相邻块B0中包含运动矢量预测值时,将相邻块B0的运动矢量预测值加入到运动矢量列表中;
c.当前相邻块为相邻块A0时,仅当相邻块A0中包含运动矢量预测值,并且该预测值与已被加入运动矢量列表中的相邻块A1的运动矢量预测值不相同时,将相邻块A0的运动矢量预测值加入到运动矢量列表中;
d.当前相邻块为相邻块B2时,仅当相邻块B2中包含运动矢量预测值,该预测值与已被加入运动矢量列表中的相邻块A1的运动矢量预测值不相同时,将相邻块B2的运动矢量预测值加入运动矢量列表中。
2)从TMVP中获取运动矢量预测值,并加入到运动矢量列表中。具体的,利用PU1的时域参考图像获取PU1的TMVP,如果PU1的TMVP可用,则将TMVP的运动矢量加入到运动矢量列表中。
此时,由于在建立PU2的运动矢量列表时,不考虑PU2的相邻块B1,则可以采用并行方式建立PU1与PU2的运动矢量列表。
采用上述方案后,当建立预测块的运动矢量列表时,首先,获取当前预测块空域上的相邻块,当前预测块位于当前编码单元中;根据当前编码单元的划分方式确定当前预测块的适用相邻块,适用相邻块位于当前编码单元外;根据适用相邻块的运动矢量预测值并按照预设顺序从适用相邻块中获取运动矢量预测值,并将获取到的运动矢量预测值加入到运动矢量列表。这样,建立预测块的运动矢量列表时,不考虑位于当前编码单元中的相邻块,当编码单元包含至少两个预测块时,可以采用并行方式建立至少两个预测块的运动矢量列表,增加了同一编码单元中的至少两个预测块建立运动矢量列表的速度,提高了并行处理能力。
下面提供一些装置实施例,提供的装置实施例分别与上述方法实施例相对应,具体的装置及装置中包含的接收器处理器的实施方法参见方法实施例。
本实施例提供一种用于运动矢量预测的运动矢量列表建立的装置,如图4所示,可以包括:
接收器41,用于获取当前预测块空域上的相邻块,当前预测块位于当前编码单元中;
处理器42,用于根据当前编码单元的划分方式确定当前预测块的适用相邻块,适用相邻块位于当前编码单元外;根据适用相邻块的运动矢量预测值并按照预设顺序从适用相邻块中获取运动矢量预测值,并将获取到的运动矢量预测值加入到运动矢量列表。
进一步的,接收器41获取到的预测块空域上的相邻块包括:位于预测块左下侧的相邻块A0,位于预测块左侧的相邻块A1,位于预测块右上侧的相邻块B0,位于预测块上侧的相邻块B1,位于预测块左上侧的相邻块B2。
进一步的,处理器42,还用于若当前编码单元被上下划分为第一预测块和第二预测块,且当前预测块为第二预测块,则预测块的适用相邻块包括第二预测块的:相邻块A0、相邻块A1、相邻块B0、相邻块B2;
若当前编码单元被左右划分为第一预测块和第二预测块,且当前预测块为第二预测块,则预测块的适用相邻块包括第二预测块的:相邻块A0、相邻块B0、相邻块B1、相邻块B2。
进一步的,处理器42,还用于若适用相邻块为帧间编码块,则按照相邻块A1、相邻块B1、相邻块B0、相邻块A0、相邻块B2的顺序从适用相邻块中获取运动矢量预测值。
进一步的,处理器42,还用于判断当前适用相邻块的运动矢量预测值与除当前适用相邻块以外的其他适用相邻块的运动矢量预测值是否相同;
若不相同,则将当前适用相邻块的运动矢量预测值加入运动矢量列表。
进一步的,处理器42,还用于判断当前适用相邻块的运动矢量预测值与已被加入到运动矢量列表中的运动矢量预测值是否相同;
若不相同,则将当前适用相邻块的运动矢量预测值加入运动矢量列表。
进一步的,处理器42,还用于若当前适用相邻块为相邻块B1,则判断相邻块B1的运动矢量预测值与相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B0,则判断相邻块B0的运动矢量预测值与相邻块B1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块A0,则判断相邻块A0的运动矢量预测值与相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B2,则判断相邻块B2的运动矢量预测值与相邻块A1的运动矢量预测值、相邻块B1的运动矢量预测值中至少一项是否相同。
进一步的,处理器42,还用于若当前适用相邻块为相邻块B1,则判断相邻块B1的运动矢量预测值与已被加入运动矢量列表的相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B0,则判断相邻块B0的运动矢量预测值与已被加入运动矢量列表的相邻块B1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块A0,则判断相邻块A0的运动矢量预测值与已被加入运动矢量列表的相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B2,则判断相邻块B2的运动矢量预测值与已被加入运动矢量列表的相邻块A1的运动矢量预测值、已被加入运动矢量列表的相邻块B1的运动矢量预测值中至少一项是否相同。
采用上述方案后,当建立预测块的运动矢量列表时,首先,接收器获取当前预测块空域上的相邻块,当前预测块位于当前编码单元中;处理器根据当前编码单元的划分方式确定当前预测块的适用相邻块,适用相邻块位于当前编码单元外;根据适用相邻块的运动矢量预测值并按照预设顺序从适用相邻块中获取运动矢量预测值,并将获取到的运动矢量预测值加入到运动矢量列表。这样,建立预测块的运动矢量列表时,不考虑位于当前编码单元中的相邻块,当编码单元包含至少两个预测块时,可以采用并行方式建立至少两个预测块的运动矢量列表,增加了同一编码单元中的至少两个预测块建立运动矢量列表的速度,提高了并行处理能力。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (16)

1.一种用于运动矢量预测的运动矢量列表建立的方法,其特征在于,其特征在于,包括:
确定当前预测块空域上的相邻块,所述当前预测块位于当前编码单元中;
根据所述当前编码单元的划分方式确定所述当前预测块的适用相邻块,所述适用相邻块位于所述当前编码单元外;
根据所述适用相邻块的运动矢量预测值并按照预设顺序从所述适用相邻块中获取运动矢量预测值,并将获取到的运动矢量预测值加入到所述运动矢量列表。
2.根据权利要求1所述的用于运动矢量预测的运动矢量列表建立的方法,其特征在于,其特征在于,所述预测块空域上的相邻块包括:
位于预测块左下侧的相邻块A0,位于预测块左侧的相邻块A1,位于预测块右上侧的相邻块B0,位于预测块上侧的相邻块B1,位于预测块左上侧的相邻块B2。
3.根据权利要求2所述的用于运动矢量预测的运动矢量列表建立的方法,其特征在于,所述根据所述当前编码单元的划分方式确定所述当前预测块的适用相邻块包括:
若所述当前编码单元被上下划分为第一预测块和第二预测块,且所述当前预测块为第二预测块,则所述预测块的适用相邻块包括所述第二预测块的:相邻块A0、相邻块A1、相邻块B0、相邻块B2;
若所述当前编码单元被左右划分为第一预测块和第二预测块,且所述当前预测块为第二预测块,则所述预测块的适用相邻块包括所述第二预测块的:相邻块A0、相邻块B0、相邻块B1、相邻块B2。
4.根据权利要求2或3所述的用于运动矢量预测的运动矢量列表建立的方法,其特征在于,所述按照预设顺序从所述适用相邻块中获取运动矢量预测值包括:
若所述适用相邻块为帧间编码块,则按照相邻块A1、相邻块B1、相邻块B0、相邻块A0、相邻块B2的顺序从所述适用相邻块中获取运动矢量预测值。
5.根据权利要求4所述的用于运动矢量预测的运动矢量列表建立的方法,其特征在于,若所述获取到的运动矢量预测值为当前适用相邻块的运动矢量预测值,则所述将获取到的运动矢量预测值加入到所述运动矢量列表包括:
判断所述当前适用相邻块的运动矢量预测值与除所述当前适用相邻块以外的其他适用相邻块的运动矢量预测值是否相同;
若不相同,则将所述当前适用相邻块的运动矢量预测值加入所述运动矢量列表。
6.根据权利要求4所述的用于运动矢量预测的运动矢量列表建立的方法,其特征在于,若所述获取到的运动矢量预测值为当前适用相邻块的运动矢量预测值,则所述将获取到的运动矢量预测值加入到所述运动矢量列表包括:
判断所述当前适用相邻块的运动矢量预测值与已被加入到所述运动矢量列表中的运动矢量预测值是否相同;
若不相同,则将所述当前适用相邻块的运动矢量预测值加入所述运动矢量列表。
7.根据权利要求5所述的用于运动矢量预测的运动矢量列表建立的方法,其特征在于,所述判断所述当前适用相邻块的运动矢量预测值与除所述当前适用相邻块以外的其他适用相邻块的运动矢量预测值是否相同包括:
若当前适用相邻块为相邻块B1,则判断所述相邻块B1的运动矢量预测值与相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B0,则判断所述相邻块B0的运动矢量预测值与相邻块B1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块A0,则判断所述相邻块A0的运动矢量预测值与相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B2,则判断所述相邻块B2的运动矢量预测值与相邻块A1的运动矢量预测值、所述相邻块B1的运动矢量预测值中至少一项是否相同。
8.根据权利要求6所述的用于运动矢量预测的运动矢量列表建立的方法,其特征在于,所述判断所述当前适用相邻块的运动矢量预测值与已被加入到所述运动矢量列表中的运动矢量预测值是否相同包括:
若当前适用相邻块为相邻块B1,则判断所述相邻块B1的运动矢量预测值与已被加入所述运动矢量列表的相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B0,则判断所述相邻块B0的运动矢量预测值与已被加入所述运动矢量列表的相邻块B1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块A0,则判断所述相邻块A0的运动矢量预测值与已被加入所述运动矢量列表的相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B2,则判断所述相邻块B2的运动矢量预测值与已被加入所述运动矢量列表的相邻块A1的运动矢量预测值、已被加入所述运动矢量列表的相邻块B1的运动矢量预测值中至少一项是否相同。
9.一种用于运动矢量预测的运动矢量列表建立的装置,其特征在于,包括:
接收器,用于确定当前预测块空域上的相邻块,所述当前预测块位于当前编码单元中;
处理器,用于根据所述当前编码单元的划分方式确定所述当前预测块的适用相邻块,所述适用相邻块位于所述当前编码单元外;根据所述适用相邻块的运动矢量预测值并按照预设顺序从所述适用相邻块中获取运动矢量预测值,并将获取到的运动矢量预测值加入到所述运动矢量列表。
10.根据权利要求9所述的用于运动矢量预测的运动矢量列表建立的装置,其特征在于,所述接收器获取到的所述预测块空域上的相邻块包括:
位于预测块左下侧的相邻块A0,位于预测块左侧的相邻块A1,位于预测块右上侧的相邻块B0,位于预测块上侧的相邻块B1,位于预测块左上侧的相邻块B2。
11.根据权利要求10所述的用于运动矢量预测的运动矢量列表建立的装置,其特征在于,所述处理器,还用于若所述当前编码单元被上下划分为第一预测块和第二预测块,且所述当前预测块为第二预测块,则所述预测块的适用相邻块包括所述第二预测块的:相邻块A0、相邻块A1、相邻块B0、相邻块B2;
若所述当前编码单元被左右划分为第一预测块和第二预测块,且所述当前预测块为第二预测块,则所述预测块的适用相邻块包括所述第二预测块的:相邻块A0、相邻块B0、相邻块B1、相邻块B2。
12.根据权利要求10或11所述的用于运动矢量预测的运动矢量列表建立的装置,其特征在于,所述处理器,还用于若所述适用相邻块为帧间编码块,则按照相邻块A1、相邻块B1、相邻块B0、相邻块A0、相邻块B2的顺序从所述适用相邻块中获取运动矢量预测值。
13.根据权利要求12所述的用于运动矢量预测的运动矢量列表建立的装置,其特征在于,所述处理器,还用于判断所述当前适用相邻块的运动矢量预测值与除所述当前适用相邻块以外的其他适用相邻块的运动矢量预测值是否相同;
若不相同,则将所述当前适用相邻块的运动矢量预测值加入所述运动矢量列表。
14.根据权利要求12所述的用于运动矢量预测的运动矢量列表建立的装置,其特征在于,所述处理器,还用于判断所述当前适用相邻块的运动矢量预测值与已被加入到所述运动矢量列表中的运动矢量预测值是否相同;
若不相同,则将所述当前适用相邻块的运动矢量预测值加入所述运动矢量列表。
15.根据权利要求13所述的用于运动矢量预测的运动矢量列表建立的装置,其特征在于,所述处理器,还用于若当前适用相邻块为相邻块B1,则判断所述相邻块B1的运动矢量预测值与相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B0,则判断所述相邻块B0的运动矢量预测值与相邻块B1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块A0,则判断所述相邻块A0的运动矢量预测值与相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B2,则判断所述相邻块B2的运动矢量预测值与相邻块A1的运动矢量预测值、所述相邻块B1的运动矢量预测值中至少一项是否相同。
16.根据权利要求14所述的用于运动矢量预测的运动矢量列表建立的装置,其特征在于,其特征在于,所述处理器,还用于若当前适用相邻块为相邻块B1,则判断所述相邻块B1的运动矢量预测值与已被加入所述运动矢量列表的相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B0,则判断所述相邻块B0的运动矢量预测值与已被加入所述运动矢量列表的相邻块B1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块A0,则判断所述相邻块A0的运动矢量预测值与已被加入所述运动矢量列表的相邻块A1的运动矢量预测值是否相同;
若当前适用相邻块为相邻块B2,则判断所述相邻块B2的运动矢量预测值与已被加入所述运动矢量列表的相邻块A1的运动矢量预测值、已被加入所述运动矢量列表的相邻块B1的运动矢量预测值中至少一项是否相同。
CN201410091553.2A 2012-10-08 2012-10-08 用于运动矢量预测的运动矢量列表建立的方法、装置 Active CN103841425B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410091553.2A CN103841425B (zh) 2012-10-08 2012-10-08 用于运动矢量预测的运动矢量列表建立的方法、装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410091553.2A CN103841425B (zh) 2012-10-08 2012-10-08 用于运动矢量预测的运动矢量列表建立的方法、装置
CN201210377579.4A CN102883163B (zh) 2012-10-08 2012-10-08 用于运动矢量预测的运动矢量列表建立的方法、装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201210377579.4A Division CN102883163B (zh) 2012-10-08 2012-10-08 用于运动矢量预测的运动矢量列表建立的方法、装置

Publications (2)

Publication Number Publication Date
CN103841425A true CN103841425A (zh) 2014-06-04
CN103841425B CN103841425B (zh) 2017-04-05

Family

ID=50804502

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410091553.2A Active CN103841425B (zh) 2012-10-08 2012-10-08 用于运动矢量预测的运动矢量列表建立的方法、装置

Country Status (1)

Country Link
CN (1) CN103841425B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI653881B (zh) 2017-04-06 2019-03-11 聯發科技股份有限公司 運動向量預測的方法與裝置
CN107211156B (zh) * 2015-01-26 2019-08-30 高通股份有限公司 一种译码视频数据的方法、装置及计算机可读存储媒体
CN110876059A (zh) * 2018-09-03 2020-03-10 华为技术有限公司 运动矢量的获取方法、装置、计算机设备及存储介质
WO2020057664A1 (zh) * 2018-09-21 2020-03-26 华为技术有限公司 运动矢量的确定方法和装置
WO2020182165A1 (zh) * 2019-03-11 2020-09-17 杭州海康威视数字技术股份有限公司 运动信息候选者列表构建方法、三角预测解码方法及装置
CN112055206A (zh) * 2020-08-24 2020-12-08 浙江大华技术股份有限公司 一种帧间预测方法、电子设备和存储装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5982441A (en) * 1996-01-12 1999-11-09 Iterated Systems, Inc. System and method for representing a video sequence
EP1513349A2 (en) * 2003-09-07 2005-03-09 Microsoft Corporation Bitstream-controlled post-processing video filtering
CN1885948A (zh) * 2005-06-21 2006-12-27 中国科学院计算技术研究所 视频编码的运动矢量空间预测方法
CN1965321A (zh) * 2003-09-07 2007-05-16 微软公司 视频编解码器中的片层
CN101072356A (zh) * 2006-05-12 2007-11-14 中国科学院计算技术研究所 一种运动矢量预测方法
US20080159641A1 (en) * 2005-07-22 2008-07-03 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20100080285A1 (en) * 2008-09-26 2010-04-01 Qualcomm Incorporated Determining availability of video data units
WO2010056013A2 (en) * 2008-11-11 2010-05-20 Samsung Electronics Co., Ltd. Moving picture encoding/decoding apparatus and method for processing of moving picture divided in units of slices
CA2765828A1 (en) * 2009-06-18 2010-12-23 Kabushiki Kaisha Toshiba Video encoding apparatus and a video decoding apparatus
CN102685477A (zh) * 2011-03-10 2012-09-19 华为技术有限公司 获取用于合并模式的图像块的方法和设备

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5982441A (en) * 1996-01-12 1999-11-09 Iterated Systems, Inc. System and method for representing a video sequence
EP1513349A2 (en) * 2003-09-07 2005-03-09 Microsoft Corporation Bitstream-controlled post-processing video filtering
CN1965321A (zh) * 2003-09-07 2007-05-16 微软公司 视频编解码器中的片层
CN1885948A (zh) * 2005-06-21 2006-12-27 中国科学院计算技术研究所 视频编码的运动矢量空间预测方法
US20080159641A1 (en) * 2005-07-22 2008-07-03 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
CN101072356A (zh) * 2006-05-12 2007-11-14 中国科学院计算技术研究所 一种运动矢量预测方法
US20100080285A1 (en) * 2008-09-26 2010-04-01 Qualcomm Incorporated Determining availability of video data units
WO2010056013A2 (en) * 2008-11-11 2010-05-20 Samsung Electronics Co., Ltd. Moving picture encoding/decoding apparatus and method for processing of moving picture divided in units of slices
CA2765828A1 (en) * 2009-06-18 2010-12-23 Kabushiki Kaisha Toshiba Video encoding apparatus and a video decoding apparatus
CN102685477A (zh) * 2011-03-10 2012-09-19 华为技术有限公司 获取用于合并模式的图像块的方法和设备

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11477477B2 (en) 2015-01-26 2022-10-18 Qualcomm Incorporated Sub-prediction unit based advanced temporal motion vector prediction
CN107211156B (zh) * 2015-01-26 2019-08-30 高通股份有限公司 一种译码视频数据的方法、装置及计算机可读存储媒体
US10298951B2 (en) 2017-04-06 2019-05-21 Mediatek Inc. Method and apparatus of motion vector prediction
TWI653881B (zh) 2017-04-06 2019-03-11 聯發科技股份有限公司 運動向量預測的方法與裝置
CN110876059A (zh) * 2018-09-03 2020-03-10 华为技术有限公司 运动矢量的获取方法、装置、计算机设备及存储介质
CN110876059B (zh) * 2018-09-03 2022-06-10 华为技术有限公司 运动矢量的获取方法、装置、计算机设备及存储介质
US11563949B2 (en) 2018-09-03 2023-01-24 Huawei Technologies Co., Ltd. Motion vector obtaining method and apparatus, computer device, and storage medium
US11259042B2 (en) 2018-09-21 2022-02-22 Huawei Technologies Co., Ltd. Motion vector determining method and apparatus
WO2020057664A1 (zh) * 2018-09-21 2020-03-26 华为技术有限公司 运动矢量的确定方法和装置
WO2020182165A1 (zh) * 2019-03-11 2020-09-17 杭州海康威视数字技术股份有限公司 运动信息候选者列表构建方法、三角预测解码方法及装置
US11863714B2 (en) 2019-03-11 2024-01-02 Hangzhou Hikvision Digital Technology Co., Ltd. Method for constructing motion information candidate list, method and apparatus for triangle prediction decoding
CN112055206A (zh) * 2020-08-24 2020-12-08 浙江大华技术股份有限公司 一种帧间预测方法、电子设备和存储装置
CN112055206B (zh) * 2020-08-24 2024-06-07 浙江大华技术股份有限公司 一种帧间预测方法、电子设备和存储装置

Also Published As

Publication number Publication date
CN103841425B (zh) 2017-04-05

Similar Documents

Publication Publication Date Title
CN102883163B (zh) 用于运动矢量预测的运动矢量列表建立的方法、装置
CN103841426A (zh) 用于运动矢量预测的运动矢量列表建立的方法、装置
CN103841425A (zh) 用于运动矢量预测的运动矢量列表建立的方法、装置
CN102946536B (zh) 候选矢量列表构建的方法及装置
WO2013070001A1 (ko) 후보 리스트 공유 방법 및 이러한 방법을 사용하는 장치
CN102685474A (zh) 预测模式的编解码方法、编解码设备及网络系统
CN103079067B (zh) 运动矢量预测值列表构建方法和视频编解码方法及装置
CN104718760A (zh) 运动矢量推导三维视频编码的方法和装置
CN102946535A (zh) 预测块的视差矢量预测值获取的方法和装置
CN110166775A (zh) 帧内预测方法、编码器及存储装置
CN109005412B (zh) 运动矢量获取的方法及设备
CN113573066A (zh) 一种视频编码的方法及装置
Wang et al. Fast mode and depth decision algorithm for intra prediction of quality SHVC
CN113542737A (zh) 编码模式确定方法、装置、电子设备及存储介质
CN104104959A (zh) 深度图像帧内预测方法及装置
CN103379322A (zh) 一种先进运动矢量预测amvp的并行实现方法、装置及系统
CN103379323A (zh) 一种先进运动矢量预测amvp的并行实现方法、装置及系统
CN103379324A (zh) 一种先进运动矢量预测amvp的并行实现方法、装置及系统
CN109068140A (zh) 视频编码中运动向量的确定方法、装置及视频编解码设备
CN105898309A (zh) 转码的方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant