CN103079067A - 运动矢量预测值列表构建方法和视频编解码方法及装置 - Google Patents

运动矢量预测值列表构建方法和视频编解码方法及装置 Download PDF

Info

Publication number
CN103079067A
CN103079067A CN201310007667XA CN201310007667A CN103079067A CN 103079067 A CN103079067 A CN 103079067A CN 201310007667X A CN201310007667X A CN 201310007667XA CN 201310007667 A CN201310007667 A CN 201310007667A CN 103079067 A CN103079067 A CN 103079067A
Authority
CN
China
Prior art keywords
motion vector
vector predictor
tabulation
spatial domain
image block
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
CN201310007667XA
Other languages
English (en)
Other versions
CN103079067B (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 CN201310007667.XA priority Critical patent/CN103079067B/zh
Publication of CN103079067A publication Critical patent/CN103079067A/zh
Priority to PCT/CN2013/082035 priority patent/WO2014107961A1/zh
Application granted granted Critical
Publication of CN103079067B publication Critical patent/CN103079067B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明实施例公开了运动矢量预测值列表构建方法和视频编解码方法及相关装置。一种运动矢量预测值列表构建方法包括:获得第一图像块对应的N个运动矢量预测值;构建第一图像块对应的运动矢量预测值列表,运动矢量预测值列表记录了N个运动矢量预测值,N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,零值运动矢量预测值和M个空域运动矢量预测值在运动矢量预测值列表中的位置位于时域运动矢量预测值之前,零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层,运动矢量预测值列表中越靠前的位置所对应的索引号越小。本发明实施例提供的方案有利于提升视频压缩编码性能。

Description

运动矢量预测值列表构建方法和视频编解码方法及装置
技术领域
本发明涉及图像处理技术领域,具体涉及运动矢量预测值列表构建方法和视频编解码方法及装置。
背景技术
随着光电采集技术的发展及不断增长的高清数字视频需求,视频数据量越来越大,有限异构的传输带宽、多样化的视频应用不断地对视频编码效率提出了更高的需求,高性能视频编码(HEVC,High Efficient Video Coding)标准的制定工作因需启动。
视频编码压缩的基本原理是利用空域、时域和码字之间的相关性,尽可能去除冗余。目前流行做法是采用基于块的混合视频编码框架,通过预测(包括帧内预测和帧间预测)、变换、量化、熵编码等步骤实现视频编码压缩。这种编码框架,显示了很强的生命力,HEVC也仍沿用这种基于块的混合视频编码框架。
在上述编码框架中,视频序列(sequence)包括一系列图像(picture),图像被进一步划分为切片(slice),slice再被划分为块(block)。视频编码以块为单位,可从picture的左上角位置开始从左到右从上到下一行一行进行编码处理。在一些新的视频编码标准中,Block的概念被进一步扩展。在H.264标准中有宏块(MB,Macro Block),MB可进一步划分成多个预测块(partition,可用于预测编码),在HEVC标准中,采用编码单元(CU,Coding Unit),预测单元(PU,Prediction Unit)和变换单元(TU,Transform Unit)等基本概念,从功能上划分了多种Unit,并采用全新的基于树结构进行描述。比如CU可以按照四叉树进行划分为更小的CU,而更小的CU还可以继续划分,从而形成一种四叉树结构。对于PU和TU也有类似的树结构。无论CU,PU还是TU,本质上都属于块block的概念,CU类似于宏块MB或编码块,是对编码图像进行划分和编码的基本单元;PU可对应预测块,是预测编码的基本单元。对CU按照划分模式进一步划分成多个PU;TU可对应变换块,是对预测残差进行变换的基本单元。HEVC标准中则可把它们统称为编码树块(CTB,Coding Tree Block)等。
帧间预测基于运动补偿预测(MCP,Motion Compensated Prediction)的机制进行。当前图像块根据运动矢量(MV,Motion vector)在参考图像中找到对应的参考块,该参考块作为当前图像块的一个预测值。在双向预测编码中当前图像块有两个或多个运动矢量,可以利用这些运动矢量从两个或多个参考图像中获得多个参考块,利用这些参考块获得当前图像块的预测值,比如他们的平均值作为当前图像块的预测值。当前picture编码允许有多个参考图象,这多个参考图象可形成一个参考图象列表(RefPicList),可从RefPicList中选择一个作为当前图像块的参考图象进行预测编码。当前编码块的运动矢量指向该参考图象。如P slice编码时,有一个参考图象列表,P slice中的block的运动矢量指向该参考图象列表中的一个参考图象;而对于B slice允许有最多2个参考图象列表,B slice中的block允许有两个MV,分别指向这两个参考图象列表中的参考图象。
实践中为节约对当前图像块的运动矢量的编码比特开销,可采用MV预测+编码预测差值的方法进行。可通过MV预测技术获得当前图像块的运动矢量预测值(MVP,MV predictor)。MV预测在编码和解码过程中都执行,以获得相同的MVP,实现编码和解码的匹配。
HEVC标准中的扩展编码(SVC,Scalable video coding)标准是一种分层编码技术,支持多层(multi-layer)编码,支持视频在空域、时域和信噪比等方面的可伸缩性。SVC标准涉及的层(layer)可分为基本层(BL,Base Layer)和增强层(EL,Enhancement Layer),其中,增强层的数量可包括多个。对于EL的编码,除了可利用当前layer中的空域和时域预测技术外,还了利用层间预测(ILP,inter-layer prediction)技术。每个layer是一个视频序列,多个层具有相同或相近的视频内容,各层间存在很大的相关性。ILP技术可很好地去除这些相关性,提高增强层的编码压缩性能。
在HEVC SVC的一种实现方式中,可以把BL的图像作为EL的一个额外参考图像。这种情况下零(Zero)值MVP可能指向来自于BL的参考图像。而现有技术的机制中并未充分利用zero MVP的作用。只在MVP个数不满足MVP list的长度要求时才将zero MVP加入MVP list的末尾。研究和实践发现,现有技术不能很好的适应SVC编码的特性,限制了压缩编码性能的提升。
发明内容
本发明实施例提供运动矢量预测值列表构建方法和视频编解码方法及相关装置,以期提升视频压缩编码性能。
本发明第一方面提供一种运动矢量预测值列表构建方法,可包括:
获得第一图像块对应的N个运动矢量预测值;
构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,所述零值运动矢量预测值和所述M个空域运动矢量预测值在所述运动矢量预测值列表中的位置位于所述时域运动矢量预测值之前,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层,所述运动矢量预测值列表中越靠前的位置所对应的索引号越小。
结合第一方面,在第一种可能的实施方式中,
所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于所述M个空域运动矢量预测值之前;或者,所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,所述M个空域运动矢量预测值包括所述第一空域运动矢量预测值和所述第二空域运动矢量预测值。
结合第一方面或第一方面的第一种可能的实施方式,在第二种可能的实施方式中,所述N个运动矢量预测值还包括层间运动矢量预测值,其中,所述层间运动矢量预测值位于所述运动矢量预测值列表中的起始位置。
结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式,在第三种可能的实施方式中,所述零值运动矢量预测值所指向的参考图像,来自于所述第一图像块所在图像层的相邻图像层。
结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式,在第四种可能的实施方式中,所述零值运动矢量预测值所指向的参考图像来自于基本层。
本发明第二方面提供一种运动矢量预测值列表构建方法,包括:
获得第一图像块对应的N个运动矢量预测值;
构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,用于指示所述零值运动矢量预测值在所述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示所述时域运动矢量预测值在所述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在所述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示所述时域运动矢量预测值在所述运动矢量预测值列表中所处位置的第二位置指示的比特数,其中,所述第一空域运动矢量预测值为所述M个空域运动矢量预测值中的任意一个,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层。
结合第二方面,在第一种可能的实施方式中,
所述第一位置指示的比特数小于所述第三位置指示的比特数;或者,所述第一位置指示的比特数大于第四位置指示的比特数且小于第五位置指示的比特数,其中,所述第四位置指示用于指示第二空域运动矢量预测值在所述运动矢量预测值列表中所处位置,所述第五位置指示用于指示第三空域运动矢量预测值在所述运动矢量预测值列表中所处位置,所述M个空域运动矢量预测值包括所述第二空域运动矢量预测值和所述第三空域运动矢量预测值。
结合第二方面或第二方面的第一种可能的实施方式,在第二种可能的实施方式中,所述N个运动矢量预测值还包括层间运动矢量预测值,其中,第六位置指示的比特数小于第三位置指示的比特数和第二位置指示的比特数,所述第六位置指示用于指示所述层间运动矢量预测值在所述运动矢量预测值列表中所处位置。
本发明第三方面提供一种视频编码方法,包括:
获得第一图像块对应的N个运动矢量预测值;
构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,所述零值运动矢量预测值和所述M个空域运动矢量预测值在所述运动矢量预测值列表中的位置位于所述时域运动矢量预测值之前,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层,所述运动矢量预测值列表中越靠前的位置所对应的索引号越小;
基于所述运动矢量预测值列表确定所述第一图像块的运动矢量预测值;
基于确定出的所述第一图像块的运动矢量预测值对所述第一图像块进行编码。
结合第三方面,在第一种可能的实施方式中,
所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于所述M个空域运动矢量预测值之前;或者,所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,所述M个空域运动矢量预测值包括所述第一空域运动矢量预测值和所述第二空域运动矢量预测值。
结合第三方面或第三方面的第一种可能的实施方式,在第二种可能的实施方式中,所述N个运动矢量预测值还包括层间运动矢量预测值,其中,所述层间运动矢量预测值位于所述运动矢量预测值列表中的起始位置。
本发明第四方面提供一种视频解码方法,包括:
接收已编码的第一图像块和第一位置指示,其中,所述第一位置指示用于指示出第一图像块的运动矢量预测值在运动矢量预测值列表中所处位置;
获得所述第一图像块对应的N个运动矢量预测值;
构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,所述零值运动矢量预测值和所述M个空域运动矢量预测值在所述运动矢量预测值列表中的位置位于所述时域运动矢量预测值之前,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层,所述运动矢量预测值列表中越靠前的位置所对应的索引号越小;
基于所述第一位置指示和所述运动矢量预测值列表确定所述第一图像块的运动矢量预测值;
基于确定出的所述第一图像块的运动矢量预测值对所述第一图像块进行解码。
结合第四方面,在第一种可能的实施方式中,
所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于所述M个空域运动矢量预测值之前;或者,所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,所述M个空域运动矢量预测值包括所述第一空域运动矢量预测值和所述第二空域运动矢量预测值。
结合第四方面或第四方面的第一种可能的实施方式,在第二种可能的实施方式中,所述N个运动矢量预测值还包括层间运动矢量预测值,其中,所述层间运动矢量预测值位于所述运动矢量预测值列表中的起始位置。
本发明第五方面提供一种运动矢量预测值列表构建装置,包括:
获得单元,用于获得第一图像块对应的N个运动矢量预测值;
第一列表构建单元,用于构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,所述零值运动矢量预测值和所述M个空域运动矢量预测值在所述运动矢量预测值列表中的位置位于所述时域运动矢量预测值之前,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层,所述运动矢量预测值列表中越靠前的位置所对应的索引号越小。
结合第五方面,在第一种可能的实施方式中,所述获得单元获得的所述零值运动矢量预测值所指向的参考图像来自于基本层。
本发明第六方面提供一种运动矢量预测值列表构建装置,包括:
获得单元,获得第一图像块对应的N个运动矢量预测值;
第二列表构建单元,用于构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,用于指示所述零值运动矢量预测值在所述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示所述时域运动矢量预测值在所述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在所述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示所述时域运动矢量预测值在所述运动矢量预测值列表中所处位置的第二位置指示的比特数,其中,所述第一空域运动矢量预测值为所述M个空域运动矢量预测值中的任意一个,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层。
结合第六方面,在第一种可能的实施方式中,所述获得单元获得的所述零值运动矢量预测值所指向的参考图像来自于基本层。
本发明第七方面提供一种视频编码器,包括:
获得单元,用于获得第一图像块对应的N个运动矢量预测值;
第一列表构建单元,用于构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,所述零值运动矢量预测值和所述M个空域运动矢量预测值在所述运动矢量预测值列表中的位置位于所述时域运动矢量预测值之前,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层,所述运动矢量预测值列表中越靠前的位置所对应的索引号越小;
运动矢量预测值确定单元,用于基于所述运动矢量预测值列表确定所述第一图像块的运动矢量预测值;
编码单元,用于基于所述运动矢量预测值确定单元确定出的所述第一图像块的运动矢量预测值对所述第一图像块进行编码。
结合第七方面,在第一种可能的实施方式中,所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于所述M个空域运动矢量预测值之前;或者,所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,所述M个空域运动矢量预测值包括所述第一空域运动矢量预测值和所述第二空域运动矢量预测值。
本发明第八方面提供一种视频解码器,包括:
接收单元,用于接收已编码的第一图像块和第一位置指示,其中,所述第一位置指示用于指示出第一图像块的运动矢量预测值在运动矢量预测值列表中所处位置;
获得单元,用于获得所述第一图像块对应的N个运动矢量预测值;
第一列表构建单元,用于构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,所述零值运动矢量预测值和所述M个空域运动矢量预测值在所述运动矢量预测值列表中的位置位于所述时域运动矢量预测值之前,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层,所述运动矢量预测值列表中越靠前的位置所对应的索引号越小;
运动矢量预测值确定单元,用于基于所述第一位置指示和所述运动矢量预测值列表确定所述第一图像块的运动矢量预测值;
解码单元,用于基于所述运动矢量预测值确定单元确定出的所述第一图像块的运动矢量预测值对所述第一图像块进行解码。
结合第八方面,在第一种可能的实施方式中,
所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于所述M个空域运动矢量预测值之前;或者,所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,所述M个空域运动矢量预测值包括所述第一空域运动矢量预测值和所述第二空域运动矢量预测值。
由上可见,本发明实施例技术方案中,获得第一编码块对应的N个预测块的运动矢量;构建第一编码块对应的运动矢量预测值列表,其中,运动矢量预测值列表记录了N个预测块的运动矢量,N个预测块的运动矢量包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,零值运动矢量预测值和M个空域运动矢量预测值在运动矢量预测值列表中的位置位于时域运动矢量预测值之前。由于充分的考虑了零值运动矢量预测值重要性,将零值运动矢量预测值置于运动矢量预测值列表中的靠前位置,如此,则有利于提高零值运动矢量预测值被选作第一编码块的运动矢量的几率,进而有助于更好地发挥零值运动矢量预测值的层间预测作用,进而有利于提高MV预测精度,提升视频编码压缩性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种运动矢量预测值列表构建方法的流程示意图;
图2-a是本发明实施例提供的一种当前图像块和参考图像块的位置关系示意图;
图2-b是本发明实施例提供的一种MVP list的示意图;
图2-c是本发明实施例提供的另一种MVP list的示意图;
图2-d是本发明实施例提供的另一种MVP list的示意图;
图2-e是本发明实施例提供的另一种MVP list的示意图;
图2-f是本发明实施例提供的另一种MVP list的示意图;
图2-g是本发明实施例提供的另一种MVP list的示意图;
图3是本发明实施例提供的另一种运动矢量预测值列表构建方法的流程示意图;
图4是本发明实施例提供的一种视频编码方法的流程示意图;
图5是本发明实施例提供的一种视频解码方法的流程示意图;
图6是本发明实施例提供的另一种视频编码方法的流程示意图;
图7是本发明实施例提供的另一种视频解码方法的流程示意图;
图8是本发明实施例提供的一种运动矢量预测值列表构建装置的示意图;
图9是本发明实施例提供的一种视频处理设备的示意图;
图10是本发明实施例提供的另一种运动矢量预测值列表构建装置的示意图;
图11是本发明实施例提供的另一种视频处理设备的示意图;
图12是本发明实施例提供的一种视频编码器的示意图;
图13是本发明实施例提供的另一种视频编码器的示意图;
图14是本发明实施例提供的另一种视频编码器的示意图;
图15是本发明实施例提供的另一种视频编码器的示意图;
图16是本发明实施例提供的一种视频解码器的示意图;
图17是本发明实施例提供的另一种视频解码器的示意图;
图18是本发明实施例提供的另一种视频解码器的示意图;
图19是本发明实施例提供的另一种视频解码器的示意图。
具体实施方式
本发明实施例提供运动矢量预测值列表构建方法和视频编解码方法及相关装置,以期提升视频压缩编码性能。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
以下分别进行详细说明。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明运动矢量预测值列表构建方法的一个实施例,方法可包括:获得第一图像块对应的N个运动矢量预测值;构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,上述零值运动矢量预测值和上述M个空域运动矢量预测值在上述运动矢量预测值列表中的位置位于上述时域运动矢量预测值之前,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层,运动矢量预测值列表中越靠前的位置所对应的索引号越小。
首先参见图1,图1是本发明实施例提供的一种运动矢量预测值列表构建方法的流程示意图。如图1所示,本发明实施例提供的一种运动矢量预测值列表构建方法可包括以下内容:
101、获得第一图像块对应的N个运动矢量预测值。
在本发明的一些实施例中,第一图像块(可看做是当前图像块)的运动矢量预测值(MVP,Motion vector predictor)包括空域MVP(SMVP,Spatial MVP)和时域MVP(TMVP,Temporal MVP)等。其中,SMVP指当前图像块的相邻位置的参考块对应的MV,该参考块与当前图像块在同一图像内。TMVP是根据当前图像块的时域参考图像获取的MV值,所谓时域,指当前图像块所在的图像与当前图像块的参考图象,在视频序列时间轴上处于不同时间位置,该位置可采用图像命令计数(POC,Picture Order Count)表示。其中,MV时域距离指MV指向的参考图像和当前图像块所在图像之间的距离,即POC差值。在获取TMVP过程中,可对参考块的MV根据时域距离进行缩放以得到当前图像块的MVP。
其中,获得的第一图像块对应的N个运动矢量预测值可包括:零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,其中,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层。其中,M个空域运动矢量预测值各不相同。
102、构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,上述零值运动矢量预测值和上述M个空域运动矢量预测值在上述运动矢量预测值列表中的位置位于上述时域运动矢量预测值之前。其中,运动矢量预测值列表中越靠前的位置所对应的索引号越小,运动矢量预测值列表中各位置的索引号从起始位置开始依次递增。例如,运动矢量预测值列表的起始位置对应的索引号可为0或1,之后位置对应的索引号依次递增。
在本发明的一些实施例中,上述N可等于5、6、7或8或其它可能的值,M可等于2、3、4或5或其它可能的值,当然M小于N。
在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于第一图像块所在图像层的相邻图像层。在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于基本层。
在本发明一些实施例中,上述零值运动矢量预测值在上述运动矢量预测值列表中的位置位于上述M个空域运动矢量预测值之前;或者,上述零值运动矢量预测值在上述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,上述M个空域运动矢量预测值包括第一空域运动矢量预测值和第二空域运动矢量预测值。
在本发明一些实施例中,上述N个运动矢量预测值还可包括层间运动矢量预测值(也可能不可用于),其中,上述层间运动矢量预测值可位于上述运动矢量预测值列表中的起始位置。其中,上述层间运动矢量预测值所指向的参考图像来自于第一图像块所在图像层。其中,上述层间运动矢量预测值可基于其它图像层(例如基本层)的运动矢量得到。
HEVC采用基于多运动矢量竞争的方法,提高了运动矢量预测精度,从而提升编码压缩性能。多运动矢量竞争的原理是,根据当前图像块的多个已编码参考块获得多个运动矢量(包括MV值和MV指向的参考图象的索引值),将这多个运动矢量按照一定顺序置入列表之中,称为MVP列表(list),可给每个运动矢量分配索引号(该索引号可用于指示其在MVP list中的位置)。对当前图像块编码时,从这多个MVP当中选择一个最佳的运动矢量作为当前图像块的运动矢量预测值,并把选中的MVP在MVP list中的索引号写入码流;解码端可解码获得该索引号,解码端也可根据当前图像块的已解码参考块的运动矢量构造MVP list,解码端构造的MVP list与编码端构造的MVP list一致,这样利用解码得到的索引号,解码端可用从其构造的MVP list中确定一个运动矢量作为当前图像块的运动矢量预测值。HEVC有几种帧间预测模式,这些模式大都可采用多运动矢量竞争的方法构建MVP list,用于当前图像块MV预测。当前图像块的参考块包含空域参考块和时域参考块(co-location),其中,空域参考块对应的运动矢量称之为空域运动矢量,而时域参考块对应的运动矢量称之为时域运动矢量。一般的对于merge/skip模式,允许4个候选的空域运动矢量和1个候选的时域运动矢量;对于AMVP模式,允许2个候选的空域运动矢量和1个候选的时域运动矢量。构建的MVP list记录有这些空域运动矢量和时域运动矢量(即当前图像块的MVP)。
其中,HEVC标准的SVC标准是一种分层编码技术,支持多层(multi-layer)编码。发明人研究和实践发现,在HEVC SVC的一种实现方式中,可以把BL的图像作为EL的一个额外参考图像。这种情况下,0值MVP有可能指向来自于BL的参考图像。在这种情况下,0值MVP在分层或SVC编码中有特殊用处。EL和BL有着很强的相关性,层间预测技术(Inter-layer prediction)可以去除这种相关性,提高编码压缩性能。当BL和EL有着相同的图像分辨率时,如SVC中的SNR scalability,则EL和BL中每个block的像素位置一一对应,像素的相对位移为0,因此,可利用一个从EL指向BL的具有零值的MV(即zero MV)进行高效的预测,较好地去除EL和BL的相关性,提升编码压缩性能。当BL和EL具有不同的图像分辨率时,如SVC中的spatial scalability,可对作为EL参考图像的BL进行插值,获得与EL相同的图像尺寸或分辨率,进行层间预测,因此在这种情况下zero MVP仍然可以发挥有效的预测作用。因此,在本发明实施例的技术方案中,则充分的考虑利用zero MVP的作用,不将zero MVP置于MVPlist的末尾,而是将zero MVP置于MVP list中的靠前位置,如此,则有利于提高zero MVP被选作当前编码块的运动矢量的几率,进而有助于更好地发挥指向其它层的zero MVP的层间预测作用,进而有利于提高MV预测精度,提升视频编码压缩性能。
下面结合附图举例构建的几种MVP list。
参见图2-a,假设将A0、A1、B0、B1、B2作为第一图像块(可看做是当前图像块)的相邻参考图像块,即空域参考图像块,空域参考图像块的MV看做是第一图像块的SMVP。其中,如图2所示,参考图像块A0为当前图像块的左下角位置对应的图像块;参考图像块A1为当前图像块的左下角位置对应的图像块;参考图像块B0为当前图像块的右上角位置对应的图像块。参考图像块B1为当前图像块的右上角位置对应的图像块;参考图像块B2为当前图像块的左上角位置对应的图像块。其中,A0、A1、B0、B1、B2有可能是帧间(Inter)已编码图像块,也有可能是帧内(Intra)已编码图像块。其中,Inter已编码图像块有MV(包括MV值大小和其指向的对应参考图象索引),而Intra已编码图像块没有MV。其中,时域运动矢量预测值(TMVP:Temporal MVP)是基于当前图像块的时域参考图象获得的MV,所谓时域,指当前图像块所在的图像与当前图像块的参考图象,在视频序列的时间轴上处于不同位置,或者处于不同layer。其中,层间运动矢量预测值(ILMVP)所指向的参考图像可能来自于第一图像块所在图像层,ILMVP可能基于其它图像层(例如基本层)的运动矢量得到,其中ILMVP可能可用也可能不可用。运动矢量预测值列表中越靠前的位置所对应的索引号越小。
参见图2-b,图2-b示出了一种可能的MVP list,其中,Zero MVP位于SMVP之前,而SMVP(包括SMVP-A0、SMVP-A1、SMVP-B0和SMVP-B1等4个各不相同的SMVP,分别为A0、A1、B0、B1对应的MV,当然,SMVP的数量也可为2或3或其它个数)位于TMVP之前,位于MVP list起始位置的是ILMVP。
参见图2-c,图2-c示出了另一种可能的MVP list,其中,此处假设ILMVP不可用,因此MVP list中不记录ILMVP,Zero MVP位于MVP list起始位置,而SMVP位于TMVP之前。
参见图2-d,图2-d示出了另一种可能的MVP list,其中,Zero MVP位于SMVP之后,Zero MVP位于TMVP之前,ILMVP位于MVP list起始位置。
参见图2-e,图2-e示出了另一种可能的MVP list,其中,此处假设ILMVP不可用,因此MVP list中不记录ILMVP,Zero MVP位于SMVP之后,Zero MVP位于TMVP之前。
参见图2-f,图2-f示出了另一种可能的MVP list,其中,Zero MVP位于各SMVP之间(图2-f以Zero MVP位于SMVP-A1和SMVP-B1之间为例,当然ZeroMVP亦可介于其它两个SMVP之间,以此类推),SMVP位于TMVP之前,ILMVP位于MVP list起始位置。
参见图2-g,图2-g示出了另一种可能的MVP list,其中,此处假设ILMVP不可用,因此MVP list中不记录ILMVP,Zero MVP位于各SMVP之间(图2-g以Zero MVP位于SMVP-A1和SMVP-B1之间为例,当然Zero MVP亦可介于其它两个SMVP之间,以此类推),SMVP位于TMVP之前,ILMVP位于MVP list起始位置。
可以理解,上述举例仅为说明,在实际应用中,空域参考图像块的选取个数和位置均可能灵活的调整,并不限于上述举例。
以上示例,主要以HEVC SVC中的merge mode为例。实际上,对于skip和AMVP mode中涉及的运动矢量列表构造方法,也同样适用。除了HEVCSVC标准外,对于其他涉及分层(multi-layer)的编解码技术中涉及的运动矢量列表构方法,也同样适用。
由上可见,本实施例技术方案中,获得第一编码块对应的N个预测块的运动矢量;构建第一编码块对应的运动矢量预测值列表,其中,运动矢量预测值列表记录了N个预测块的运动矢量,N个预测块的运动矢量包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,零值运动矢量预测值和M个空域运动矢量预测值在运动矢量预测值列表中的位置位于时域运动矢量预测值之前。由于充分的考虑了零值运动矢量预测值重要性,将零值运动矢量预测值置于运动矢量预测值列表中的靠前位置,如此,则有利于提高零值运动矢量预测值被选作第一编码块的运动矢量的几率,进而有助于更好地发挥零值运动矢量预测值的层间预测作用,进而有利于提高MV预测精度,提升视频编码压缩性能。
本发明运动矢量预测值列表构建方法的一个实施例,方法可包括:获得第一图像块对应的N个运动矢量预测值;构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,用于指示上述零值运动矢量预测值在上述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在上述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数,其中,第一空域运动矢量预测值为上述M个空域运动矢量预测值中的任意一个,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层。
首先参见图3,图3是本发明实施例提供的另一种运动矢量预测值列表构建方法的流程示意图。如图3所示,本发明实施例提供的另一种运动矢量预测值列表构建方法可包括以下内容:
301、获得第一图像块对应的N个运动矢量预测值。
在本发明的一些实施例中,获得的第一图像块对应的N个运动矢量预测值可包括:零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,其中,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层。其中,M个空域运动矢量预测值各不相同。
在本发明的一些实施例中,上述N可等于5、6、7或8或其它可能的值,M可等于2、3、4或5或其它可能的值,当然M小于N。
302、构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,用于指示上述零值运动矢量预测值在上述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在上述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数,第一空域运动矢量预测值为上述M个空域运动矢量预测值中的任意一个。
在本发明的一些实施例中,运动矢量预测值列表的不同位置,可使用不同比特数的位置指示来进行指示,根据位置指示的比特数可确定出其指示的运动矢量预测值列表中的相应位置。例如,运动矢量预测值列表中越靠前的位置的对应位置指示的比特数越小或越大,当然,也可能运动矢量预测值列表中越靠中间的位置的对应位置指示的比特数越小或越大,当然可以能是编码端和解码端约定的其它变化规律,甚至也可能没有可循规律。
在本发明的一些实施例中,第一位置指示的比特数小于第三位置指示的比特数;或者,第一位置指示的比特数大于第四位置指示的比特数且小于第五位置指示的比特数,其中,第四位置指示用于指示第二空域运动矢量预测值在上述运动矢量预测值列表中所处位置,第五位置指示用于指示第三空域运动矢量预测值在上述运动矢量预测值列表中所处位置,上述M个空域运动矢量预测值包括第二空域运动矢量预测值和第三空域运动矢量预测值。
在本发明的一些实施例中,上述N个运动矢量预测值还包括层间运动矢量预测值,其中,第六位置指示的比特数小于第三位置指示的比特数和第二位置指示的比特数,第六位置指示用于指示上述层间运动矢量预测值在上述运动矢量预测值列表中所处位置。其中,上述层间运动矢量预测值所指向的参考图像来自于第一图像块所在图像层。其中,上述层间运动矢量预测值可基于其它图像层(例如基本层)的运动矢量得到。
在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于第一图像块所在图像层的相邻图像层。在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于基本层。
由上可见,本实施例技术方案中,获得第一编码块对应的N个预测块的运动矢量;构建第一编码块对应的运动矢量预测值列表,其中,运动矢量预测值列表记录了N个预测块的运动矢量,N个预测块的运动矢量包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,零值运动矢量预测值和M个空域运动矢量预测值在运动矢量预测值列表中所处位置的位置指示的比特数,小于时域运动矢量预测值在运动矢量预测值列表中所处位置的位置指示的比特数。由于充分的考虑了零值运动矢量预测值重要性,将零值运动矢量预测值置于运动矢量预测值列表中位置指示比特数更小的位置,如此则有利于提高零值运动矢量预测值被选作第一编码块的运动矢量的几率,进而有助于更好地发挥零值运动矢量预测值的层间预测作用,进而有利于提高MV预测精度,提升视频编码压缩性能。
本发明视频编码方法的一个实施例,方法可包括:获得第一图像块对应的N个运动矢量预测值;构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,上述零值运动矢量预测值和上述M个空域运动矢量预测值在上述运动矢量预测值列表中的位置位于上述时域运动矢量预测值之前,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层;基于上述运动矢量预测值列表确定第一图像块的运动矢量预测值;基于确定出的第一图像块的运动矢量预测值对第一图像块进行编码。
首先参见图4,图4是本发明实施例提供的一种视频编码方法的流程示意图。如图4所示,本发明实施例提供的一种视频编码可包括以下内容:
401、获得第一图像块对应的N个运动矢量预测值。
在本发明的一些实施例中,获得的第一图像块对应的N个运动矢量预测值可包括:零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,其中,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层。其中,M个空域运动矢量预测值各不相同。
在本发明的一些实施例中,上述N可等于5、6、7或8或其它可能的值,M可等于2、3、4或5或其它可能的值,当然M小于N。
402、构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述零值运动矢量预测值和上述M个空域运动矢量预测值在上述运动矢量预测值列表中的位置位于上述时域运动矢量预测值之前;其中,运动矢量预测值列表中越靠前位置所对应的索引号越小,运动矢量预测值列表中各位置的索引号从起始位置开始依次递增。例如,运动矢量预测值列表的起始位置对应的索引号可为0或1,之后位置对应的索引号依次递增。
在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于第一图像块所在图像层的相邻图像层。在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于基本层。
在本发明一些实施例中,上述零值运动矢量预测值在上述运动矢量预测值列表中的位置位于上述M个空域运动矢量预测值之前;或者,上述零值运动矢量预测值在上述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,上述M个空域运动矢量预测值包括第一空域运动矢量预测值和第二空域运动矢量预测值。
在本发明一些实施例中,上述N个运动矢量预测值还可包括层间运动矢量预测值(也可能不可用于),其中,上述层间运动矢量预测值可位于上述运动矢量预测值列表中的起始位置。其中,上述层间运动矢量预测值所指向的参考图像来自于第一图像块所在图像层。其中,上述层间运动矢量预测值可基于其它图像层(例如基本层)的运动矢量得到。
403、基于上述运动矢量预测值列表确定第一图像块的运动矢量预测值;
在本发明的一些实施例中,可针对每个上述运动矢量预测值列表中的每个运动矢量预测值计算得到对应的率失真代价,可选择最小的率失真代价所对应的运动矢量预测值,作为第一图像块的运动矢量预测值。
404、基于确定出的第一图像块的运动矢量预测值对第一图像块进行编码。
由上可见,本实施例技术方案中,获得第一编码块对应的N个预测块的运动矢量;构建第一编码块对应的运动矢量预测值列表,其中,运动矢量预测值列表记录了N个预测块的运动矢量,N个预测块的运动矢量包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,零值运动矢量预测值和M个空域运动矢量预测值在运动矢量预测值列表中的位置位于时域运动矢量预测值之前。由于充分的考虑了零值运动矢量预测值重要性,将零值运动矢量预测值置于运动矢量预测值列表中的靠前位置,如此,则有利于提高零值运动矢量预测值被选作第一编码块的运动矢量的几率,进而有助于更好地发挥零值运动矢量预测值的层间预测作用,进而有利于提高MV预测精度,提升视频编码压缩性能。
本发明视频解码方法的一个实施例,方法可包括:接收已编码的第一图像块和第一位置指示,其中,第一位置指示用于指示出第一图像块的运动矢量预测值在运动矢量预测值列表中所处位置;获得第一图像块对应的N个运动矢量预测值;构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,上述零值运动矢量预测值和上述M个空域运动矢量预测值在上述运动矢量预测值列表中的位置位于上述时域运动矢量预测值之前,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层,基于第一位置指示和上述运动矢量预测值列表确定第一图像块的运动矢量预测值;基于确定出的第一图像块的运动矢量预测值对第一图像块进行解码。
首先参见图5,图5是本发明实施例提供的另一种视频解码方法的流程示意图。如图5所示,本发明实施例提供的另一种视频解码可包括以下内容:
501、接收已编码的第一图像块和第一位置指示,
其中,第一位置指示用于指示出第一图像块的运动矢量预测值在运动矢量预测值列表中所处位置;
502、获得第一图像块对应的N个运动矢量预测值;
在本发明的一些实施例中,获得的第一图像块对应的N个运动矢量预测值可包括:零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,其中,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层。其中,M个空域运动矢量预测值各不相同。
在本发明一些实施例中,上述N可等于5、6、7或8或其它可能的值,M可等于2、3、4或5或其它可能的值,当然M小于N。
503、构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,上述零值运动矢量预测值和上述M个空域运动矢量预测值在上述运动矢量预测值列表中的位置位于上述时域运动矢量预测值之前,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层;其中,运动矢量预测值列表中越靠前的位置所对应的索引号越小,运动矢量预测值列表中各位置的索引号从起始位置开始依次递增。例如,运动矢量预测值列表的起始位置对应的索引号可为0或1,之后位置对应的索引号依次递增。
在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于第一图像块所在图像层的相邻图像层。在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于基本层。
在本发明一些实施例中,上述零值运动矢量预测值在上述运动矢量预测值列表中的位置位于上述M个空域运动矢量预测值之前;或者,上述零值运动矢量预测值在上述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,上述M个空域运动矢量预测值包括第一空域运动矢量预测值和第二空域运动矢量预测值。
在本发明一些实施例中,上述N个运动矢量预测值还可包括层间运动矢量预测值(也可能不可用于),其中,上述层间运动矢量预测值可位于上述运动矢量预测值列表中的起始位置。其中,上述层间运动矢量预测值所指向的参考图像来自于第一图像块所在图像层。其中,上述层间运动矢量预测值可基于其它图像层(例如基本层)的运动矢量得到。
504、基于第一位置指示和上述运动矢量预测值列表确定第一图像块的运动矢量预测值。
505、基于确定出的第一图像块的运动矢量预测值对第一图像块进行解码。
由上可见,本实施例技术方案中,获得第一编码块对应的N个预测块的运动矢量;构建第一编码块对应的运动矢量预测值列表,其中,运动矢量预测值列表记录了N个预测块的运动矢量,N个预测块的运动矢量包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,零值运动矢量预测值和M个空域运动矢量预测值在运动矢量预测值列表中的位置位于时域运动矢量预测值之前。由于充分的考虑了零值运动矢量预测值重要性,将零值运动矢量预测值置于运动矢量预测值列表中的靠前位置,如此,则有利于提高零值运动矢量预测值被选作第一编码块的运动矢量的几率,进而有助于更好地发挥零值运动矢量预测值的层间预测作用,进而有利于提高MV预测精度,提升视频编码压缩性能。
本发明视频编码方法的一个实施例,方法可包括:获得第一图像块对应的N个运动矢量预测值;构建第一图像块对应的运动矢量预测值列表,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,用于指示上述零值运动矢量预测值在上述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在上述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数,其中,第一空域运动矢量预测值为上述M个空域运动矢量预测值中的任意一个,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层;基于上述运动矢量预测值列表确定第一图像块的运动矢量预测值;基于确定出的第一图像块的运动矢量预测值对第一图像块进行编码。
首先参见图6,图6是本发明实施例提供的另一种视频编码方法的流程示意图。如图6所示,本发明实施例提供的另一种视频编码可包括以下内容:
601、获得第一图像块对应的N个运动矢量预测值。
在本发明的一些实施例中,获得的第一图像块对应的N个运动矢量预测值可包括:零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,其中,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层。其中,M个空域运动矢量预测值各不相同。
在本发明的一些实施例中,上述N可等于5、6、7或8或其它可能的值,M可等于2、3、4或5或其它可能的值,当然M小于N。
602、构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,用于指示上述零值运动矢量预测值在上述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在上述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数,第一空域运动矢量预测值为上述M个空域运动矢量预测值中的任意一个。
在本发明的一些实施例中,运动矢量预测值列表的不同位置,可使用不同比特数的位置指示来进行指示,根据位置指示的比特数可确定出其指示的运动矢量预测值列表中的相应位置。例如,运动矢量预测值列表中越靠前的位置的对应位置指示的比特数越小或越大,当然,也可能运动矢量预测值列表中越靠中间的位置的对应位置指示的比特数越小或越大,当然可以能是编码端和解码端约定的其它变化规律,甚至也可能没有可循规律。
在本发明的一些实施例中,第一位置指示的比特数小于第三位置指示的比特数;或者,第一位置指示的比特数大于第四位置指示的比特数且小于第五位置指示的比特数,其中,第四位置指示用于指示第二空域运动矢量预测值在上述运动矢量预测值列表中所处位置,第五位置指示用于指示第三空域运动矢量预测值在上述运动矢量预测值列表中所处位置,上述M个空域运动矢量预测值包括第二空域运动矢量预测值和第三空域运动矢量预测值。
在本发明的一些实施例中,上述N个运动矢量预测值还包括层间运动矢量预测值,其中,第六位置指示的比特数小于第三位置指示的比特数和第二位置指示的比特数,第六位置指示用于指示上述层间运动矢量预测值在上述运动矢量预测值列表中所处位置。其中,上述层间运动矢量预测值所指向的参考图像来自于第一图像块所在图像层。其中,上述层间运动矢量预测值可基于其它图像层(例如基本层)的运动矢量得到。
在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于第一图像块所在图像层的相邻图像层。在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于基本层。
603、基于上述运动矢量预测值列表确定第一图像块的运动矢量预测值;
在本发明的一些实施例中,可针对每个上述运动矢量预测值列表中的每个运动矢量预测值计算得到对应的率失真代价,可选择最小的率失真代价所对应的运动矢量预测值,作为第一图像块的运动矢量预测值。
604、基于确定出的第一图像块的运动矢量预测值对第一图像块进行编码。
由上可见,本实施例技术方案中,获得第一编码块对应的N个预测块的运动矢量;构建第一编码块对应的运动矢量预测值列表,其中,运动矢量预测值列表记录了N个预测块的运动矢量,N个预测块的运动矢量包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,零值运动矢量预测值和M个空域运动矢量预测值在运动矢量预测值列表中所处位置的位置指示的比特数,小于时域运动矢量预测值在运动矢量预测值列表中所处位置的位置指示的比特数。由于充分的考虑了零值运动矢量预测值重要性,将零值运动矢量预测值置于运动矢量预测值列表中位置指示比特数更小的位置,如此则有利于提高零值运动矢量预测值被选作第一编码块的运动矢量的几率,进而有助于更好地发挥零值运动矢量预测值的层间预测作用,进而有利于提高MV预测精度,提升视频编码压缩性能。
本发明视频解码方法的另一个实施例,方法可包括:接收已编码的第一图像块和第七位置指示,其中,第七位置指示用于指示出第一图像块的运动矢量预测值在运动矢量预测值列表中所处位置;获得第一图像块对应的N个运动矢量预测值;构建第一图像块对应的运动矢量预测值列表,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,用于指示上述零值运动矢量预测值在上述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在上述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数,其中,第一空域运动矢量预测值为上述M个空域运动矢量预测值中的任意一个,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层;基于第七位置指示和上述运动矢量预测值列表确定第一图像块的运动矢量预测值;基于确定出的第一图像块的运动矢量预测值对第一图像块进行解码。
首先参见图7,图7是本发明实施例提供的另一种视频解码方法的流程示意图。如图7所示,本发明实施例提供的另一种视频解码可包括以下内容:
701、接收已编码的第一图像块和第七位置指示,其中,第七位置指示用于指示出第一图像块的运动矢量预测值在运动矢量预测值列表中所处位置;
702、获得第一图像块对应的N个运动矢量预测值。
在本发明的一些实施例中,获得的第一图像块对应的N个运动矢量预测值可包括:零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,其中,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层。其中,M个空域运动矢量预测值各不相同。
在本发明的一些实施例中,上述N可等于5、6、7或8或其它可能的值,M可等于2、3、4或5或其它可能的值,当然M小于N。
703、构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,用于指示上述零值运动矢量预测值在上述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在上述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数,第一空域运动矢量预测值为上述M个空域运动矢量预测值中的任意一个。
在本发明的一些实施例中,运动矢量预测值列表的不同位置,可使用不同比特数的位置指示来进行指示,根据位置指示的比特数可确定出其指示的运动矢量预测值列表中的相应位置。例如,运动矢量预测值列表中越靠前的位置的对应位置指示的比特数越小或越大,当然,也可能运动矢量预测值列表中越靠中间的位置的对应位置指示的比特数越小或越大,当然可以能是编码端和解码端约定的其它变化规律,甚至也可能没有可循规律。
在本发明的一些实施例中,第一位置指示的比特数小于第三位置指示的比特数;或者,第一位置指示的比特数大于第四位置指示的比特数且小于第五位置指示的比特数,其中,第四位置指示用于指示第二空域运动矢量预测值在上述运动矢量预测值列表中所处位置,第五位置指示用于指示第三空域运动矢量预测值在上述运动矢量预测值列表中所处位置,上述M个空域运动矢量预测值包括第二空域运动矢量预测值和第三空域运动矢量预测值。
在本发明的一些实施例中,上述N个运动矢量预测值还包括层间运动矢量预测值,其中,第六位置指示的比特数小于第三位置指示的比特数和第二位置指示的比特数,第六位置指示用于指示上述层间运动矢量预测值在上述运动矢量预测值列表中所处位置。其中,上述层间运动矢量预测值所指向的参考图像来自于第一图像块所在图像层。其中,上述层间运动矢量预测值可基于其它图像层(例如基本层)的运动矢量得到。
在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于第一图像块所在图像层的相邻图像层。在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于基本层。
704、基于第七位置指示和上述运动矢量预测值列表确定第一图像块的运动矢量预测值。
可以理解的是,第七位置指示可与第一位置指示、第二位置指示、第三位置指示、第四位置指示、第五位置指示或第六位置指示相同或不同。
705、基于确定出的第一图像块的运动矢量预测值对第一图像块进行解码。
由上可见,本实施例技术方案中,获得第一编码块对应的N个预测块的运动矢量;构建第一编码块对应的运动矢量预测值列表,其中,运动矢量预测值列表记录了N个预测块的运动矢量,N个预测块的运动矢量包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,零值运动矢量预测值和M个空域运动矢量预测值在运动矢量预测值列表中所处位置的位置指示的比特数,小于时域运动矢量预测值在运动矢量预测值列表中所处位置的位置指示的比特数。由于充分的考虑了零值运动矢量预测值重要性,将零值运动矢量预测值置于运动矢量预测值列表中位置指示比特数更小的位置,如此则有利于提高零值运动矢量预测值被选作第一编码块的运动矢量的几率,进而有助于更好地发挥零值运动矢量预测值的层间预测作用,进而有利于提高MV预测精度,提升视频编码压缩性能。
为便于更好的实施例本发明实施例的上述方案,下面还提供用于实施上述方案的相关装置。
参见图8,本发明实施例提供一种运动矢量预测值列表构建装置800,可包括:获得单元810和第一列表构建单元820。
其中,获得单元810,用于获得第一图像块对应的N个运动矢量预测值;
第一列表构建单元820,用于构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,上述零值运动矢量预测值和上述M个空域运动矢量预测值在上述运动矢量预测值列表中的位置位于上述时域运动矢量预测值之前,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层。其中,运动矢量预测值列表中越靠前的位置所对应的索引号越小,运动矢量预测值列表中各位置的索引号从起始位置开始依次递增。例如运动矢量预测值列表的起始位置对应的索引号可为0或1,之后位置对应的索引号依次递增。
在本发明的一些实施例中,上述N可等于5、6、7或8或其它可能的值,M可等于2、3、4或5或其它可能的值,当然M小于N。
在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于第一图像块所在图像层的相邻图像层。在本发明的一些实施例中,获得单元810获得的上述零值运动矢量预测值所指向的参考图像来自于基本层。
在本发明一些实施例中,上述零值运动矢量预测值在上述运动矢量预测值列表中的位置位于上述M个空域运动矢量预测值之前;或者,上述零值运动矢量预测值在上述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,上述M个空域运动矢量预测值包括第一空域运动矢量预测值和第二空域运动矢量预测值。
在本发明一些实施例中,上述N个运动矢量预测值还可包括层间运动矢量预测值(也可能不可用于),其中,上述层间运动矢量预测值可位于上述运动矢量预测值列表中的起始位置。其中,上述层间运动矢量预测值所指向的参考图像来自于第一图像块所在图像层。其中,上述层间运动矢量预测值可基于其它图像层(例如基本层)的运动矢量得到。
在本发明的一些实施例中,获得单元810获得的上述零值运动矢量预测值所指向的参考图像来自于基本层。
可以理解的是,本实施例的运动矢量预测值列表构建装置800的各功能模块的功能可根据图1所示方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
图9为本发明提供的一种视频处理设备的结构示意图,如图9所示,本实施例的视频处理设备包括至少一个总线901、与总线901相连的至少一个处理器902以及与总线901相连的至少一个存储器903。
其中,处理器902通过总线901,调用存储器903中存储的代码以用于获得第一图像块对应的N个运动矢量预测值;构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,上述零值运动矢量预测值和上述M个空域运动矢量预测值在上述运动矢量预测值列表中的位置位于上述时域运动矢量预测值之前,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层。运动矢量预测值列表中越靠前的位置所对应的索引号越小,运动矢量预测值列表中各位置的索引号从起始位置开始依次递增。例如运动矢量预测值列表的起始位置对应的索引号可为0或1,之后位置对应的索引号依次递增。
本实施例提供的视频处理设备,可以用于执行图1所示方法实施例的技术方案中视频处理设备对应执行的部分,其实现原理和技术效果与之类似,此处不再赘述。图9仅为本发明提供的视频处理设备的结构的一种示意图,具体结构可根据实际进行调整。
参见图10,图10示出本发明实施例提供另一种运动矢量预测值列表构建装置1000,可包括:获得单元1010和第二列表构建单元1020。
其中,获得单元1010,获得第一图像块对应的N个运动矢量预测值;
第二列表构建单元1020,用于构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,用于指示上述零值运动矢量预测值在上述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在上述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数,其中,第一空域运动矢量预测值为上述M个空域运动矢量预测值中的任意一个,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层。
在本发明的一些实施例中,运动矢量预测值列表的不同位置,可使用不同比特数的位置指示来进行指示,根据位置指示的比特数可确定出其指示的运动矢量预测值列表中的相应位置。例如,运动矢量预测值列表中越靠前的位置的对应位置指示的比特数越小或越大,当然,也可能运动矢量预测值列表中越靠中间的位置的对应位置指示的比特数越小或越大,当然可以能是编码端和解码端约定的其它变化规律,甚至也可能没有可循规律。
在本发明的一些实施例中,第一位置指示的比特数小于第三位置指示的比特数;或者,第一位置指示的比特数大于第四位置指示的比特数且小于第五位置指示的比特数,其中,第四位置指示用于指示第二空域运动矢量预测值在上述运动矢量预测值列表中所处位置,第五位置指示用于指示第三空域运动矢量预测值在上述运动矢量预测值列表中所处位置,上述M个空域运动矢量预测值包括第二空域运动矢量预测值和第三空域运动矢量预测值。
在本发明的一些实施例中,上述N个运动矢量预测值还包括层间运动矢量预测值,其中,第六位置指示的比特数小于第三位置指示的比特数和第二位置指示的比特数,第六位置指示用于指示上述层间运动矢量预测值在上述运动矢量预测值列表中所处位置。其中,上述层间运动矢量预测值所指向的参考图像来自于第一图像块所在图像层。其中,上述层间运动矢量预测值可基于其它图像层(例如基本层)的运动矢量得到。
在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于第一图像块所在图像层的相邻图像层。在本发明的一些实施例中,获得单元1010获得的上述零值运动矢量预测值所指向的参考图像来自于基本层。
可以理解的是,本实施例的运动矢量预测值列表构建装置1000的各功能模块的功能可根据图3所示方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
图11为本发明提供的一种视频处理设备的结构示意图,如图11所示,本实施例的视频处理设备包括至少一个总线1101、与总线1101相连的至少一个处理器1102以及与总线1101相连的至少一个存储器1103。
其中,处理器1102通过总线1101,调用存储器1103中存储的代码以用于获得第一图像块对应的N个运动矢量预测值;构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,用于指示上述零值运动矢量预测值在上述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在上述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数,其中,第一空域运动矢量预测值为上述M个空域运动矢量预测值中的任意一个,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层。
本实施例提供的视频处理设备,可以用于执行图3所示方法实施例的技术方案中视频处理设备对应执行的部分,其实现原理和技术效果与之类似,此处不再赘述。图11仅为本发明提供的视频处理设备的结构的一种示意图,具体结构可根据实际进行调整。
参见图12,图12示出本发明实施例提供一种视频编码器1200,可包括:
获得单元1210、第一列表构建单元1220、运动矢量确定单元1230、编码单元1240。
其中,获得单元1210,用于获得第一图像块对应的N个运动矢量预测值;
第一列表构建单元1220,用于构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,上述零值运动矢量预测值和上述M个空域运动矢量预测值在上述运动矢量预测值列表中的位置位于上述时域运动矢量预测值之前,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层。其中,运动矢量预测值列表中越靠前的位置所对应的索引号越小,运动矢量预测值列表中各位置的索引号从起始位置开始依次递增。例如运动矢量预测值列表的起始位置对应的索引号可为0或1,之后位置对应的索引号依次递增。
运动矢量确定单元1230,用于基于上述运动矢量预测值列表确定第一图像块的运动矢量预测值;
编码单元1240,用于基于运动矢量确定单元1230确定出的第一图像块的运动矢量预测值对第一图像块进行编码。
在本发明的一些实施例中,上述零值运动矢量预测值在上述运动矢量预测值列表中的位置位于上述M个空域运动矢量预测值之前;或者,上述零值运动矢量预测值在上述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,上述M个空域运动矢量预测值包括第一空域运动矢量预测值和第二空域运动矢量预测值。
可以理解的是,本实施例的视频编码器1200的各功能模块的功能可根据图4所示方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
图13为本发明提供的一种视频编码器的结构示意图,如图13所示,本实施例的视频编码器包括至少一个总线1301、与总线1301相连的至少一个处理器1302以及与总线1301相连的至少一个存储器1303。
其中,处理器1302通过总线1301,调用存储器1303中存储的代码以用于获得第一图像块对应的N个运动矢量预测值;构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,上述零值运动矢量预测值和上述M个空域运动矢量预测值在上述运动矢量预测值列表中的位置位于上述时域运动矢量预测值之前,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层;基于上述运动矢量预测值列表确定第一图像块的运动矢量预测值;基于确定出的第一图像块的运动矢量预测值对第一图像块进行编码。其中,运动矢量预测值列表中越靠前的位置所对应的索引号越小,运动矢量预测值列表中各位置的索引号从起始位置开始依次递增。例如运动矢量预测值列表的起始位置对应的索引号可为0或1,之后位置对应的索引号依次递增。
本实施例提供的视频编码器,可以用于执行图4所示方法实施例的技术方案中视频编码器对应执行的部分,其实现原理和技术效果与之类似,此处不再赘述。图13仅为本发明提供的计算机系统的结构的一种示意图,具体结构可根据实际进行调整。
参见图14,图14示出本发明实施例提供另一种视频编码器1400,可包括:
获得单元1410、第二列表构建单元1420、运动矢量确定单元1430、编码单元1440。
其中,获得单元1410,用于获得第一图像块对应的N个运动矢量预测值;
第二列表构建单元1420,用于构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,用于指示上述零值运动矢量预测值在上述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在上述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数,其中,第一空域运动矢量预测值为上述M个空域运动矢量预测值中的任意一个,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层。
运动矢量确定单元1430,用于基于上述运动矢量预测值列表确定第一图像块的运动矢量预测值。
编码单元1440,用于基于运动矢量确定单元1430确定出的第一图像块的运动矢量预测值对第一图像块进行编码。
在本发明的一些实施例中,运动矢量预测值列表的不同位置,可使用不同比特数的位置指示来进行指示,根据位置指示的比特数可确定出其指示的运动矢量预测值列表中的相应位置。例如,运动矢量预测值列表中越靠前的位置的对应位置指示的比特数越小或越大,当然,也可能运动矢量预测值列表中越靠中间的位置的对应位置指示的比特数越小或越大,当然可以能是编码端和解码端约定的其它变化规律,甚至也可能没有可循规律。
在本发明的一些实施例中,第一位置指示的比特数小于第三位置指示的比特数;或者,第一位置指示的比特数大于第四位置指示的比特数且小于第五位置指示的比特数,其中,第四位置指示用于指示第二空域运动矢量预测值在上述运动矢量预测值列表中所处位置,第五位置指示用于指示第三空域运动矢量预测值在上述运动矢量预测值列表中所处位置,上述M个空域运动矢量预测值包括第二空域运动矢量预测值和第三空域运动矢量预测值。
在本发明的一些实施例中,上述N个运动矢量预测值还包括层间运动矢量预测值,其中,第六位置指示的比特数小于第三位置指示的比特数和第二位置指示的比特数,第六位置指示用于指示上述层间运动矢量预测值在上述运动矢量预测值列表中所处位置。其中,上述层间运动矢量预测值所指向的参考图像来自于第一图像块所在图像层。其中,上述层间运动矢量预测值可基于其它图像层(例如基本层)的运动矢量得到。
在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于第一图像块所在图像层的相邻图像层。在本发明一些实施例中,上述零值运动矢量预测值所指向的参考图像可来自于基本层。
可以理解的是,本实施例的视频编码器1400的各功能模块的功能可根据图6所示方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
图15为本发明提供的一种视频编码器的结构示意图,如图15所示,本实施例的视频编码器包括至少一个总线1501、与总线1501相连的至少一个处理器1502以及与总线1501相连的至少一个存储器1503。
其中,处理器1502通过总线1501,调用存储器1503中存储的代码以用于获得第一图像块对应的N个运动矢量预测值;构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,用于指示上述零值运动矢量预测值在上述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在上述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数,其中,第一空域运动矢量预测值为上述M个空域运动矢量预测值中的任意一个,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层;基于上述运动矢量预测值列表确定第一图像块的运动矢量预测值;基于确定出的第一图像块的运动矢量预测值对第一图像块进行编码。
本实施例提供的视频编码器,可以用于执行图6所示方法实施例的技术方案中视频编码器对应执行的部分,其实现原理和技术效果与之类似,此处不再赘述。图15仅为本发明提供的计算机系统的结构的一种示意图,具体结构可根据实际进行调整。
可以理解的是,本发明视频编码器例如可以部署于数码相机、手机、电视机、电脑或者可采用HEVC标准的其它能够进行视频播放和/或视频录制的设备之中。
参见图16,图16示出本发明实施例提供一种视频解码器1600,可包括:
接收单元1610、获得单元1620、第二列表构建单元1630、运动矢量确定单元1640和解码单元1650。
接收单元1610,用于接收已编码的第一图像块和第一位置指示,其中,第一位置指示用于指示出第一图像块的运动矢量预测值在运动矢量预测值列表中所处位置;
获得单元1620,用于获得第一图像块对应的N个运动矢量预测值;
第一列表构建单元1630,用于构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,上述零值运动矢量预测值和上述M个空域运动矢量预测值在上述运动矢量预测值列表中的位置位于上述时域运动矢量预测值之前,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层;其中,运动矢量预测值列表中越靠前的位置所对应的索引号越小,运动矢量预测值列表中各位置的索引号从起始位置开始依次递增。例如运动矢量预测值列表的起始位置对应的索引号可为0或1,之后位置对应的索引号依次递增。
运动矢量确定单元1640,用于基于第一位置指示和上述运动矢量预测值列表确定第一图像块的运动矢量预测值;
解码单元1650,用于基于运动矢量确定单元1640确定出的第一图像块的运动矢量预测值对第一图像块进行解码。
在本发明的一些实施例中,上述零值运动矢量预测值在上述运动矢量预测值列表中的位置位于上述M个空域运动矢量预测值之前;或者,上述零值运动矢量预测值在上述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,上述M个空域运动矢量预测值包括第一空域运动矢量预测值和第二空域运动矢量预测值。
可以理解的是,本实施例的视频解码器1600的各功能模块的功能可根据图5所示方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
图17为本发明提供的一种视频解码器的结构示意图,如图17所示,本实施例的视频解码器包括至少一个总线1701、与总线1701相连的至少一个处理器1702以及与总线1701相连的至少一个存储器1703。
其中,处理器1702通过总线1701,调用存储器1703中存储的代码以用于接收已编码的第一图像块和第一位置指示,其中,第一位置指示用于指示出第一图像块的运动矢量预测值在运动矢量预测值列表中所处位置;获得第一图像块对应的N个运动矢量预测值;构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,上述零值运动矢量预测值和上述M个空域运动矢量预测值在上述运动矢量预测值列表中的位置位于上述时域运动矢量预测值之前,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层;基于第一位置指示和上述运动矢量预测值列表确定第一图像块的运动矢量预测值;基于确定出的第一图像块的运动矢量预测值对第一图像块进行解码。其中,运动矢量预测值列表中越靠前的位置所对应的索引号越小,运动矢量预测值列表中各位置的索引号从起始位置开始依次递增。例如运动矢量预测值列表的起始位置对应的索引号可为0或1,之后位置对应的索引号依次递增。
本实施例提供的视频解码器,可以用于执行图5所示方法实施例的技术方案中视频编码器对应执行的部分,其实现原理和技术效果与之类似,此处不再赘述。图17仅为本发明提供的计算机系统的结构的一种示意图,具体结构可根据实际进行调整。
参见图18,图18示出本发明实施例提供另一种视频解码器1800,可包括:
接收单元1810、获得单元1820、第二列表构建单元1830、运动矢量确定单元1840和解码单元1850。
接收单元1810,用于接收已编码的第一图像块和第一位置指示,其中,第一位置指示用于指示出第一图像块的运动矢量预测值在运动矢量预测值列表中所处位置;
获得单元1820,用于获得第一图像块对应的N个运动矢量预测值;
第二列表构建单元1830,用于构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,用于指示上述零值运动矢量预测值在上述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在上述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数,其中,第一空域运动矢量预测值为上述M个空域运动矢量预测值中的任意一个,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层。
运动矢量确定单元1840,用于基于第一位置指示和上述运动矢量预测值列表确定第一图像块的运动矢量预测值;
解码单元1850,用于基于运动矢量确定单元1840确定出的第一图像块的运动矢量预测值对第一图像块进行解码。
在本发明的一些实施例中,上述零值运动矢量预测值在上述运动矢量预测值列表中的位置位于上述M个空域运动矢量预测值之前;或者,上述零值运动矢量预测值在上述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,上述M个空域运动矢量预测值包括第一空域运动矢量预测值和第二空域运动矢量预测值。
可以理解的是,本实施例的视频解码器1800的各功能模块的功能可根据图7所示方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
图19为本发明提供的一种视频解码器的结构示意图,如图19所示,本实施例的视频解码器包括至少一个总线1901、与总线1901相连的至少一个处理器1902以及与总线1901相连的至少一个存储器1903。
其中,处理器1902通过总线1901,调用存储器1903中存储的代码以用于接收已编码的第一图像块和第一位置指示,其中,第一位置指示用于指示出第一图像块的运动矢量预测值在运动矢量预测值列表中所处位置;获得第一图像块对应的N个运动矢量预测值;构建第一图像块对应的运动矢量预测值列表,其中,上述运动矢量预测值列表记录了上述N个运动矢量预测值,上述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,用于指示上述零值运动矢量预测值在上述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在上述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示上述时域运动矢量预测值在上述运动矢量预测值列表中所处位置的第二位置指示的比特数,其中,第一空域运动矢量预测值为上述M个空域运动矢量预测值中的任意一个,上述零值运动矢量预测值所指向的参考图像来自于与第一图像块所在图像层不同的图像层;基于第一位置指示和上述运动矢量预测值列表确定第一图像块的运动矢量预测值;基于确定出的第一图像块的运动矢量预测值对第一图像块进行解码。
本实施例提供的视频解码器,可以用于执行图7所示方法实施例的技术方案中视频编码器对应执行的部分,其实现原理和技术效果与之类似,此处不再赘述。图19仅为本发明提供的计算机系统的结构的一种示意图,具体结构可根据实际进行调整。
可以理解的是,本发明视频解码器例如可以部署于数码相机、手机、电视机、电脑或者可采用HEVC标准的其它能够进行视频播放和/或视频录制的设备之中。
本发明实施例还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的运动矢量预测值列表构建方法的部分或全部步骤。
本发明实施例还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的视频编码方法部分或全部步骤。
本发明实施例还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的视频解码方法的部分或全部步骤。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (22)

1.一种运动矢量预测值列表构建方法,其特征在于,包括:
获得第一图像块对应的N个运动矢量预测值;
构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,所述零值运动矢量预测值和所述M个空域运动矢量预测值在所述运动矢量预测值列表中的位置位于所述时域运动矢量预测值之前,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层,所述运动矢量预测值列表中越靠前的位置所对应的索引号越小。
2.根据权利要求1所述的方法,其特征在于,
所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于所述M个空域运动矢量预测值之前;或者,所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,所述M个空域运动矢量预测值包括所述第一空域运动矢量预测值和所述第二空域运动矢量预测值。
3.根据权利要求1或2所述的方法,其特征在于,所述N个运动矢量预测值还包括层间运动矢量预测值,其中,所述层间运动矢量预测值位于所述运动矢量预测值列表中的起始位置。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述零值运动矢量预测值所指向的参考图像,来自于所述第一图像块所在图像层的相邻图像层。
5.根据权利要求1至3任一项所述的方法,其特征在于,所述零值运动矢量预测值所指向的参考图像来自于基本层。
6.一种运动矢量预测值列表构建方法,其特征在于,包括:
获得第一图像块对应的N个运动矢量预测值;
构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,用于指示所述零值运动矢量预测值在所述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示所述时域运动矢量预测值在所述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在所述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示所述时域运动矢量预测值在所述运动矢量预测值列表中所处位置的第二位置指示的比特数,其中,所述第一空域运动矢量预测值为所述M个空域运动矢量预测值中的任意一个,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层。
7.根据权利要求6所述的方法,其特征在于,
所述第一位置指示的比特数小于所述第三位置指示的比特数;或者,所述第一位置指示的比特数大于第四位置指示的比特数且小于第五位置指示的比特数,其中,所述第四位置指示用于指示第二空域运动矢量预测值在所述运动矢量预测值列表中所处位置,所述第五位置指示用于指示第三空域运动矢量预测值在所述运动矢量预测值列表中所处位置,所述M个空域运动矢量预测值包括所述第二空域运动矢量预测值和所述第三空域运动矢量预测值。
8.根据权利要求6或7所述的方法,其特征在于,所述N个运动矢量预测值还包括层间运动矢量预测值,其中,第六位置指示的比特数小于第三位置指示的比特数和第二位置指示的比特数,所述第六位置指示用于指示所述层间运动矢量预测值在所述运动矢量预测值列表中所处位置。
9.一种视频编码方法,其特征在于,包括:
获得第一图像块对应的N个运动矢量预测值;
构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,所述零值运动矢量预测值和所述M个空域运动矢量预测值在所述运动矢量预测值列表中的位置位于所述时域运动矢量预测值之前,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层,所述运动矢量预测值列表中越靠前的位置所对应的索引号越小;
基于所述运动矢量预测值列表确定所述第一图像块的运动矢量预测值;
基于确定出的所述第一图像块的运动矢量预测值对所述第一图像块进行编码。
10.根据权利要求9所述的方法,其特征在于,
所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于所述M个空域运动矢量预测值之前;或者,所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,所述M个空域运动矢量预测值包括所述第一空域运动矢量预测值和所述第二空域运动矢量预测值。
11.根据权利要求9或10所述的方法,其特征在于,所述N个运动矢量预测值还包括层间运动矢量预测值,其中,所述层间运动矢量预测值位于所述运动矢量预测值列表中的起始位置。
12.一种视频解码方法,其特征在于,包括:
接收已编码的第一图像块和第一位置指示,其中,所述第一位置指示用于指示出第一图像块的运动矢量预测值在运动矢量预测值列表中所处位置;
获得所述第一图像块对应的N个运动矢量预测值;
构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,所述零值运动矢量预测值和所述M个空域运动矢量预测值在所述运动矢量预测值列表中的位置位于所述时域运动矢量预测值之前,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层,所述运动矢量预测值列表中越靠前的位置所对应的索引号越小;
基于所述第一位置指示和所述运动矢量预测值列表确定所述第一图像块的运动矢量预测值;
基于确定出的所述第一图像块的运动矢量预测值对所述第一图像块进行解码。
13.根据权利要求12所述的方法,其特征在于,
所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于所述M个空域运动矢量预测值之前;或者,所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,所述M个空域运动矢量预测值包括所述第一空域运动矢量预测值和所述第二空域运动矢量预测值。
14.根据权利要求12或13所述的方法,其特征在于,所述N个运动矢量预测值还包括层间运动矢量预测值,其中,所述层间运动矢量预测值位于所述运动矢量预测值列表中的起始位置。
15.一种运动矢量预测值列表构建装置,其特征在于,包括:
获得单元,用于获得第一图像块对应的N个运动矢量预测值;
第一列表构建单元,用于构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,所述零值运动矢量预测值和所述M个空域运动矢量预测值在所述运动矢量预测值列表中的位置位于所述时域运动矢量预测值之前,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层,所述运动矢量预测值列表中越靠前的位置所对应的索引号越小。
16.根据权利要求15所述的装置,其特征在于,所述获得单元获得的所述零值运动矢量预测值所指向的参考图像来自于基本层。
17.一种运动矢量预测值列表构建装置,其特征在于,包括:
获得单元,获得第一图像块对应的N个运动矢量预测值;
第二列表构建单元,用于构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,用于指示所述零值运动矢量预测值在所述运动矢量预测值列表中所处位置的第一位置指示的比特数,小于用于指示所述时域运动矢量预测值在所述运动矢量预测值列表中所处位置的第二位置指示的比特数;用于指示第一空域运动矢量预测值在所述运动矢量预测值列表中所处位置的第三位置指示的比特数,小于用于指示所述时域运动矢量预测值在所述运动矢量预测值列表中所处位置的第二位置指示的比特数,其中,所述第一空域运动矢量预测值为所述M个空域运动矢量预测值中的任意一个,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层。
18.根据权利要求17所述的装置,其特征在于,所述获得单元获得的所述零值运动矢量预测值所指向的参考图像来自于基本层。
19.一种视频编码器,其特征在于,包括:
获得单元,用于获得第一图像块对应的N个运动矢量预测值;
第一列表构建单元,用于构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,所述零值运动矢量预测值和所述M个空域运动矢量预测值在所述运动矢量预测值列表中的位置位于所述时域运动矢量预测值之前,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层,所述运动矢量预测值列表中越靠前的位置所对应的索引号越小;
运动矢量预测值确定单元,用于基于所述运动矢量预测值列表确定所述第一图像块的运动矢量预测值;
编码单元,用于基于所述运动矢量预测值确定单元确定出的所述第一图像块的运动矢量预测值对所述第一图像块进行编码。
20.根据权利要求19所述的视频编码器,其特征在于,
所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于所述M个空域运动矢量预测值之前;或者,所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,所述M个空域运动矢量预测值包括所述第一空域运动矢量预测值和所述第二空域运动矢量预测值。
21.一种视频解码器,其特征在于,包括:
接收单元,用于接收已编码的第一图像块和第一位置指示,其中,所述第一位置指示用于指示出第一图像块的运动矢量预测值在运动矢量预测值列表中所处位置;
获得单元,用于获得所述第一图像块对应的N个运动矢量预测值;
第一列表构建单元,用于构建所述第一图像块对应的运动矢量预测值列表,其中,所述运动矢量预测值列表记录了所述N个运动矢量预测值,所述N个运动矢量预测值包括零值运动矢量预测值、时域运动矢量预测值和M个空域运动矢量预测值,所述零值运动矢量预测值和所述M个空域运动矢量预测值在所述运动矢量预测值列表中的位置位于所述时域运动矢量预测值之前,所述零值运动矢量预测值所指向的参考图像来自于与所述第一图像块所在图像层不同的图像层,所述运动矢量预测值列表中越靠前的位置所对应的索引号越小;
运动矢量预测值确定单元,用于基于所述第一位置指示和所述运动矢量预测值列表确定所述第一图像块的运动矢量预测值;
解码单元,用于基于所述运动矢量预测值确定单元确定出的所述第一图像块的运动矢量预测值对所述第一图像块进行解码。
22.根据权利要求21所述的视频解码器,其特征在于,
所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于所述M个空域运动矢量预测值之前;或者,所述零值运动矢量预测值在所述运动矢量预测值列表中的位置位于第一空域运动矢量预测值和第二空域运动矢量预测值之间,所述M个空域运动矢量预测值包括所述第一空域运动矢量预测值和所述第二空域运动矢量预测值。
CN201310007667.XA 2013-01-09 2013-01-09 运动矢量预测值列表构建方法和视频编解码方法及装置 Active CN103079067B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310007667.XA CN103079067B (zh) 2013-01-09 2013-01-09 运动矢量预测值列表构建方法和视频编解码方法及装置
PCT/CN2013/082035 WO2014107961A1 (zh) 2013-01-09 2013-08-22 运动矢量预测值列表构建方法和视频编解码方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310007667.XA CN103079067B (zh) 2013-01-09 2013-01-09 运动矢量预测值列表构建方法和视频编解码方法及装置

Publications (2)

Publication Number Publication Date
CN103079067A true CN103079067A (zh) 2013-05-01
CN103079067B CN103079067B (zh) 2016-03-09

Family

ID=48155463

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310007667.XA Active CN103079067B (zh) 2013-01-09 2013-01-09 运动矢量预测值列表构建方法和视频编解码方法及装置

Country Status (2)

Country Link
CN (1) CN103079067B (zh)
WO (1) WO2014107961A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014107961A1 (zh) * 2013-01-09 2014-07-17 华为技术有限公司 运动矢量预测值列表构建方法和视频编解码方法及装置
CN104717510A (zh) * 2013-12-13 2015-06-17 华为技术有限公司 用于图像处理的方法和装置
WO2015101209A1 (zh) * 2014-01-03 2015-07-09 华为技术有限公司 预测运动矢量的方法、编码设备和解码设备
WO2015124110A1 (en) * 2014-02-21 2015-08-27 Mediatek Singapore Pte. Ltd. Method of video coding using prediction based on intra picture block copy
CN107534778A (zh) * 2015-04-14 2018-01-02 联发科技(新加坡)私人有限公司 获取时间运动矢量预测的方法及装置
CN108172168A (zh) * 2017-12-22 2018-06-15 深圳市华星光电半导体显示技术有限公司 一种补偿表压缩方法
US10652550B2 (en) 2017-12-22 2020-05-12 Shenzhen China Star Optoelectronics Semiconductor Display Technology Co., Ltd. Compensation table compressing method
CN111163322A (zh) * 2020-01-08 2020-05-15 绍兴文理学院 对基于历史运动矢量的索引进行映射的编码及解码方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102611881A (zh) * 2011-01-19 2012-07-25 华为技术有限公司 参考运动矢量获取方法、模块及编、解码装置
US20120195368A1 (en) * 2011-01-27 2012-08-02 Qualcomm Incorporated Performing motion vector prediction for video coding
US20120307903A1 (en) * 2011-05-31 2012-12-06 Panasonic Corporation Moving picture coding method, moving picture coding apparatus, moving picture decoding method, moving picture decoding apparatus, and moving picture coding and decoding apparatus

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4120686B1 (en) * 2011-01-07 2023-08-23 Ntt Docomo, Inc. Predictive encoding method, predictive encoding device, and predictive encoding program of motion vector, and, predictive decoding method, predictive decoding device, and predictive decoding program of motion vector
CN103079067B (zh) * 2013-01-09 2016-03-09 华为技术有限公司 运动矢量预测值列表构建方法和视频编解码方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102611881A (zh) * 2011-01-19 2012-07-25 华为技术有限公司 参考运动矢量获取方法、模块及编、解码装置
US20120195368A1 (en) * 2011-01-27 2012-08-02 Qualcomm Incorporated Performing motion vector prediction for video coding
US20120307903A1 (en) * 2011-05-31 2012-12-06 Panasonic Corporation Moving picture coding method, moving picture coding apparatus, moving picture decoding method, moving picture decoding apparatus, and moving picture coding and decoding apparatus

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ZHONGBO SHI ETAL: "CGS Quality scalability for HEVC", 《IEEE 13TH INTERNATIONAL WORKSHOP ON MULTIMEDIA SIGNAL PROCESSING》, 19 October 2011 (2011-10-19) *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014107961A1 (zh) * 2013-01-09 2014-07-17 华为技术有限公司 运动矢量预测值列表构建方法和视频编解码方法及装置
CN104717510A (zh) * 2013-12-13 2015-06-17 华为技术有限公司 用于图像处理的方法和装置
WO2015085945A1 (zh) * 2013-12-13 2015-06-18 华为技术有限公司 用于图像处理的方法和装置
CN104717510B (zh) * 2013-12-13 2018-08-17 华为技术有限公司 用于图像处理的方法和装置
US10116934B2 (en) 2013-12-13 2018-10-30 Huawei Technologies Co., Ltd. Image processing method and apparatus
WO2015101209A1 (zh) * 2014-01-03 2015-07-09 华为技术有限公司 预测运动矢量的方法、编码设备和解码设备
US10555001B2 (en) 2014-02-21 2020-02-04 Mediatek Singapore Pte. Ltd. Method of video coding using prediction based on intra picture block copy
WO2015124110A1 (en) * 2014-02-21 2015-08-27 Mediatek Singapore Pte. Ltd. Method of video coding using prediction based on intra picture block copy
US11140411B2 (en) 2014-02-21 2021-10-05 Mediatek Singapore Pte. Ltd. Method of video coding using prediction based on intra picture block copy
CN107534778A (zh) * 2015-04-14 2018-01-02 联发科技(新加坡)私人有限公司 获取时间运动矢量预测的方法及装置
CN108172168A (zh) * 2017-12-22 2018-06-15 深圳市华星光电半导体显示技术有限公司 一种补偿表压缩方法
US10652550B2 (en) 2017-12-22 2020-05-12 Shenzhen China Star Optoelectronics Semiconductor Display Technology Co., Ltd. Compensation table compressing method
CN108172168B (zh) * 2017-12-22 2019-11-15 深圳市华星光电半导体显示技术有限公司 一种补偿表压缩方法
CN111163322A (zh) * 2020-01-08 2020-05-15 绍兴文理学院 对基于历史运动矢量的索引进行映射的编码及解码方法
CN111163322B (zh) * 2020-01-08 2022-08-30 绍兴文理学院 对基于历史运动矢量的索引进行映射的编码及解码方法

Also Published As

Publication number Publication date
CN103079067B (zh) 2016-03-09
WO2014107961A1 (zh) 2014-07-17

Similar Documents

Publication Publication Date Title
CN103079067B (zh) 运动矢量预测值列表构建方法和视频编解码方法及装置
US10659803B2 (en) Picture prediction method and related apparatus
CN103975597B (zh) 纹理及深度视图分量当中的内部视图运动预测
CN104838658B (zh) 具有不对称空间分辨率的纹理和深度视图分量当中的内部视图运动预测
CN104363451B (zh) 图像预测方法及相关装置
RU2699258C2 (ru) Способ прогнозирования изображения и устройство прогнозирования изображения
CN103891290A (zh) 运动矢量处理
CN108271023B (zh) 图像预测方法和相关设备
CN102065290B (zh) 视讯译码装置、存储运动矢量信息的方法及存储器分配方法
CN104768011A (zh) 图像编解码方法和相关装置
CN101243692B (zh) 对多视角视频进行编码的方法和设备
CN104704833A (zh) 多视图或3维视频译码中的高级视图间残差预测
CN104521237A (zh) 用于可缩放视频译码及3d视频译码的多假设运动补偿
CN103891281A (zh) 检测用于视频译码的相邻视频单元的可用性
CN104054350A (zh) 用于视频编码的方法和装置
CN102857764A (zh) 帧内预测模式处理的方法和装置
CN104604232A (zh) 用于编码多视点图像的方法及装置,以及用于解码多视点图像的方法及装置
CN105580374A (zh) Mv-hevc中的视图间相依性类型
CN109076234A (zh) 图像预测方法和相关设备
CN112204964A (zh) 基于帧间预测模式的图像处理方法及其装置
WO2014078430A1 (en) Device and method for scalable coding of video information
CN103369315A (zh) 色度分量的帧内预测模式的编码、解码方法、设备及系统
CN104956676A (zh) 层间语法预测控制
CN112055203A (zh) 帧间预测方法、视频编码方法及其相关装置
CN111903123B (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
C14 Grant of patent or utility model
GR01 Patent grant