CN112753222A - 视频编码和解码中的运动矢量预测 - Google Patents

视频编码和解码中的运动矢量预测 Download PDF

Info

Publication number
CN112753222A
CN112753222A CN201980061798.1A CN201980061798A CN112753222A CN 112753222 A CN112753222 A CN 112753222A CN 201980061798 A CN201980061798 A CN 201980061798A CN 112753222 A CN112753222 A CN 112753222A
Authority
CN
China
Prior art keywords
motion vector
spatial
spatio
temporal motion
current 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.)
Pending
Application number
CN201980061798.1A
Other languages
English (en)
Inventor
F·莱纳内克
F·加尔平
T·波里尔
P·博尔德斯
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.)
InterDigital VC Holdings Inc
Original Assignee
InterDigital VC Holdings Inc
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 InterDigital VC Holdings Inc filed Critical InterDigital VC Holdings Inc
Publication of CN112753222A publication Critical patent/CN112753222A/zh
Pending legal-status Critical Current

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
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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
    • H04N19/55Motion estimation with spatial constraints, e.g. at image or region borders
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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
    • H04N19/513Processing of motion vectors

Abstract

通常,编码或解码图像部分可以涉及根据从当前译码单元(CU)周围的空间位置取得的空间运动矢量候选和时间运动矢量候选来确定用于合并操作模式的时空运动矢量预测(STMVP)候选,其中至少一个实施例包括基于考虑至多两个空间位置并且基于空间和时间运动矢量候选中的至少两者的平均来确定STMVP候选。

Description

视频编码和解码中的运动矢量预测
技术领域
本公开涉及视频编码和解码。
背景技术
为了实现高压缩效率,诸如由HEVC(高效视频编码)标准定义的图像和视频编码方案通常采用预测和变换编码以利用视频内容中的空间和时间冗余。通常,帧内或帧间预测用于利用帧内或帧间相关性,然后对原始块与预测块之间的差异(通常表示为预测误差或预测残差)进行变换、量化和熵译码。为了重构视频,通过与预测、变换、量化和熵译码对应的逆处理来解码压缩数据。视频压缩技术的最近补充包括由联合视频探索小组(JVET)开发的联合探索模型(JEM)的参考软件和/或文档的各种版本。诸如JEM的努力的目的是对诸如HEVC的现有标准进行进一步改进。
发明内容
根据至少一个实施例的另一一般方面,呈现一种用于编码视频数据的方法,其包括基于在与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、以及与和所述当前块相关联的第三空间位置共位的时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动向量的组合,获得第一时空运动矢量预测候选,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于获得的所述第一时空运动矢量预测候选来修改第一值;基于所述第一值与表示非子块时空运动矢量预测候选的有序集合中的位置的第二值具有关系,并且基于在第三或第四空间运动矢量或所述时间运动矢量之中可用的至少两个运动矢量,获得第二时空运动矢量预测候选,其中所述第三和第四空间运动矢量与不同于所述第一和第二空间位置的第五和第六空间位置相关联,并且其中所述第五空间位置邻近所述当前块的左边,并且所述第六空间位置邻近所述当前块的上方;将所述第一和第二时空运动矢量预测候选的至少一者包括在所述非子块时空运动矢量预测候选的有序集合中;以及基于所述第一和第二时空运动矢量预测候选中的所述至少一者编码所述视频数据以产生经编码视频数据。
根据至少一个实施例的另一一般方面,呈现用于编码视频数据的设备,其包括至少一个或多个处理器,其中所述一个或多个处理器经配置以用于:基于在与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、以及与和所述当前块相关联的第三空间位置共位的时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得第一时空运动矢量预测候选,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于获得的所述第一时空运动矢量预测候选来修改第一值;基于所述第一值与表示非子块时空运动矢量预测候选的有序集合中的位置的第二值具有关系,并且基于在第三或第四空间运动矢量或所述时间运动矢量之中可用的至少两个运动矢量,获得第二时空运动矢量预测候选,其中所述第三和第四空间运动矢量与不同于所述第一和第二空间位置的第五和第六空间位置相关联,并且其中所述第五空间位置邻近所述当前块的左边,并且所述第六空间位置邻近所述当前块的上方;将所述第一和第二时空运动矢量预测候选的至少一者包括在所述非子块时空运动矢量预测候选的有序集合中;以及基于所述第一和第二时空运动矢量预测候选中的所述至少一者编码所述视频数据以产生经编码视频数据。
根据至少一个实施例的另一一般方面,呈现用于解码视频数据的设备,其包括一或多个处理器,其中所述一或多个处理器经配置以用于:基于在与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、以及与和所述当前块相关联的第三空间位置共位的时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得第一时空运动矢量预测候选,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于获得的所述第一时空运动矢量预测候选来修改第一值;基于所述第一值与表示非子块时空运动矢量预测候选的有序集合中的位置的第二值具有关系,并且基于在第三或第四空间运动矢量或所述时间运动矢量之中可用的至少两个运动矢量,获得第二时空运动矢量预测候选,其中所述第三和第四空间运动矢量与不同于所述第一和第二空间位置的第五和第六空间位置相关联,并且其中所述第五空间位置邻近所述当前块的左边,并且所述第六空间位置邻近所述当前块的上方;将所述第一和第二时空运动矢量预测候选的至少一者包括在所述非子块时空运动矢量预测候选的有序集合中;以及基于所述第一和第二时空运动矢量预测候选者中的所述至少一者解码所述视频数据以产生经解码视频数据。
根据至少一个实施例的另一一般方面,呈现一种用于解码视频数据的方法,其包括基于与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、以及与和所述当前块相关联的第三空间位置共位的时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得第一时空运动矢量预测候选,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于获得的所述第一时空运动矢量预测候选来修改第一值;基于所述第一值与表示非子块时空运动矢量预测候选的有序集合中的位置的第二值具有关系,并且基于在第三或第四空间运动矢量或所述时间运动矢量之中可用的至少两个运动矢量,获得第二时空运动矢量预测候选,其中所述第三和第四空间运动矢量与不同于所述第一和第二空间位置的第五和第六空间位置相关联,并且其中所述第五空间位置邻近所述当前块的左边,并且所述第六空间位置邻近所述当前块的上方;将所述第一和第二时空运动矢量预测候选的至少一者包括在所述非子块时空运动矢量预测候选的有序集合中;以及基于所述第一和第二时空运动矢量预测候选中的所述至少一者解码所述视频数据以产生经解码视频数据。
一般来说,另一方面涉及经格式化以包括经编码视频数据的比特流,其中所述经编码视频数据是通过本文描述的至少一种方法编码。
本发明的一个或多个实施例还提供了一种计算机可读存储介质,其上存储有用于根据本文描述的方法或装置来编码或解码视频数据的指令。本实施例还提供了一种计算机可读存储介质,其上存储有根据本文描述的方法或装置生成的比特流。本实施例还提供了用于发送或接收根据本文描述的方法或装置生成的比特流的方法和装置。
以上给出了本主题的简化概述,以便提供对本主题实施例的一些方面的基本理解。本概述不是对本主题的详尽综述。其并非旨在标识各实施例的关键/重要元素或描绘本主题的范围。其唯一目的是以简化形式呈现本主题的一些概念,作为稍后呈现的更详细描述的序言。
附图说明
通过结合附图考虑下文的详细描述,可以更好地理解本公开,在附图中:
图1提供描绘视频编码器的实施例的示例的框图;
图2提供描绘视频解码器的实施例的示例的框图;
图3示出了涉及译码树单元(CTU)的本公开的各方面;
图4示出了涉及CTU和译码单元(CU)的本公开的各方面;
图5提供了示出帧间预测信息的信号传输的流程图;
图6提供了示出合并模式中使用的空间和时间运动矢量预测值的位置的框图;
图7提供了示出创建合并运动矢量预测值候选的列表的流程图;
图8提供了示出创建合并运动矢量预测值候选的列表的另一流程图;
图9示出了时空运动矢量预测值(STMVP)合并候选的递归推导;
图10示出了为确定非子块STMVP合并候选而考虑的空间位置;
图11提供了说明确定非子块STMVP合并候选的总体方法的流程图;
图12示出了考虑用于确定非子块STMVP合并候选的空间位置的实施例的示例;
图13示出了时间运动矢量预测值候选推导的方法;
图14示出了提供用于确定非子块STMVP合并候选的时间运动矢量预测值的实施例的示例;
图15提供了示出用于确定合并模式的非子块STMVP的实施例的流程图;
图16示出了关于确定STMVP以包括在合并列表中的示例;
图17示出了用于提供备选合并候选的实施例的示例;
图18提供了示出用于提供非子块STMVP合并候选的实施例的示例的流程图;
图19提供了示出构建AMVP候选列表的方法的流程图;
图20提供了示出确定AMVP候选列表的方法的实施例的示例的流程图;
图21提供了示出根据本文描述的各个方面的装置的实施例的示例的框图;
图22示出了实施例的另一示例;
图23示出了实施例的另一示例;以及
图24示出了实施例的另一示例。
应当理解,附图是为了说明各个方面和实施例的示例的目的,并且不一定是唯一可能的配置。在所有附图中,相同的参考标记表示相同或相似的特征。
具体实施方式
一般而言,至少一个实施例涉及一种用于确定块的运动矢量的时空运动矢量(MV)预测值的方法,其中考虑减少数量的时空候选位置来构建当前块的时空MV预测值。如以下所解释的,设想了各种修改和实施例,其可以提供对视频译码系统的改进,包括但不限于增加的压缩或译码效率和降低的复杂度中的一者或两者。
现在转到附图,图1示出了视频编码器100的示例,例如HEVC编码器。HEVC是由视频编码联合合作团队(JCT-VC)开发的压缩标准(参见,例如,“ITU-T H.265 ITU的电信标准段(10/2014),系列H:视听和多媒体系统,视听服务的基础设施-运动视频的译码、高效率视频译码、推荐ITU-T H.265”)。图1还可说明其中对HEVC标准作出改进的编码器或采用类似于HEVC的技术的编码器,例如基于或改进于JVET开发中的JEM(联合探索模型)的编码器。
在本申请中,术语“重构”和“解码”可以互换使用,术语“像素”和“样本”可以互换使用,并且术语“图片”和“帧”可以互换使用。通常,但不是必须的,术语“重构”在编码器侧使用,而“解码”在解码器侧使用。
HEVC规范在“块”与“单元”之间进行区分,其中“块”寻址样本阵列中的特定区域(例如,亮度、Y),且“单元”包含所有经编码色彩分量(Y、Cb、Cr或单色)的并置块、语法元素及与所述块相关联的预测数据(例如,运动矢量)。
为了编码,将图片分割为具有可配置大小的正方形的译码树块(CTB),并且将编码树块的连续集合分组为片。译码树单元(CTU)包含编码的颜色分量的CTB。CTB是将四叉树分割成译码块(CB)的根,且译码块可分割成一个或多个预测块(PB)且形成将四叉树分割成变换块(TB)的根。对应于译码块、预测块和变换块,译码单元(CU)包括预测单元(PU)和变换单元(TU)的树结构集合,PU包括所有颜色分量的预测信息,并且TU包括每个颜色分量的残差译码语法结构。CB的大小,亮度分量的PB和TB应用于相应的CU、PU和TU。在本申请中,术语“块”可以用于表示CTU、CU、PU、TU、CB、PB和TB中的任何一者。另外,“块”也可以用于指代如H.264/AVC或其他视频编码标准中指定的宏块和分区,并且更一般地指代各种大小的数据阵列。
在图1的编码器100中,如下所述,由编码器元件对图像进行编码。以CU为单位处理要编码的图片。每一CU是使用帧内或帧间模式编码的。当CU以帧内模式编码时,其执行帧内预测(160)。在帧间模式中,执行运动估计(175)和补偿(170)。编码器决定(105)使用帧内模式或帧间模式中的哪一者来编码CU,并且通过预测模式标志来指示帧内/帧间决定。通过从原始图像块中减去(110)预测块来计算预测残差。
然后,对预测残差进行变换(125)和量化(130)。对量化的变换系数以及运动矢量和其它语法元素进行熵译码(145)以输出比特流。编码器也可跳过变换,并在4×4TU的基础上直接对未变换的残余信号应用量化。编码器还可以绕过变换和量化,即,直接对残差进行编码而不应用变换或量化过程。在直接PCM译码中,不应用预测,并且译码单元样本被直接编码到比特流中。
编码器对编码块进行解码,以提供用于进一步预测的参考。对量化变换系数进行去量化(140)和逆变换(150)以对预测残差进行解码。组合(155)解码的预测残差和预测块,重构图像块。环内滤波器(165)被应用于重构的图像,例如,执行解块/SAO(样本自适应偏移)滤波以减少编码伪像。将滤波图像存储在参考图片缓冲器(180)中。
图2示出了例如HEVC解码器等视频解码器200的示例的框图。在示例解码器200中,信号或比特流由如下所述的解码器元件解码。视频解码器200通常执行与如图1中所描述的编码回合互逆的解码回合,其执行视频解码作为编码视频数据的部分。图2还可说明其中对HEVC标准作出改进的解码器或采用类似于HEVC的技术的解码器,例如基于JEM或在JEM上改进的解码器。
具体地,解码器的输入包括视频信号或比特流,其可以由诸如图1的视频编码器100的视频编码器生成。信号或比特流首先被熵解码(230)以获得变换系数、运动矢量和其它编码信息。变换系数被去量化(240)和逆变换(250)以解码预测残差。将解码的预测残差与预测块进行组合(255),重构图像块。预测块可以根据帧内预测(260)或运动补偿预测(即,帧间预测)(275)获得(270)。高级运动矢量预测(AMVP)和合并模式技术可用于导出用于运动补偿的运动矢量,其可使用内插滤波器来计算参考块的子整数样本的内插值。环内滤波器(265)被应用于重构的图像。将滤波图像存储在参考图片缓冲器(280)中。
在HEVC视频压缩标准中,采用运动补偿时间预测来利用存在于视频的连续图像之间的冗余。为此,将运动矢量与每一预测单元(PU)相关联。每个译码树单元(CTU)由压缩域中的译码树(CT)表示。这是CTU的四叉树划分,其中每个叶被称为译码单元(CU),如图3中所示。
然后,每个CU被给予一些帧内或帧间预测参数(预测信息)。为此,将其空间地分割成一个或多个预测单元(PU),每个PU被分配一些预测信息。如图4所示,在CU级上分配帧内或帧间译码模式,其示出了将译码树单元划分为译码单元、预测单元和变换单元的示例。
确切地,一个运动矢量被分配给HEVC中的每个PU。该运动矢量用于所考虑的PU的运动补偿时间预测。因此,在HEVC中,链接预测块及其参考块的运动模型涉及平移。
HEVC中采用两种模式来编码运动数据。它们分别被称为AMVP(自适应运动矢量预测)和合并。AMVP涉及用信号发送用于预测当前PU的参考图片、运动矢量预测值索引(在两个预测值的列表当中取得)和运动矢量差。通常,本文描述的至少一个实施例涉及合并模式。
合并模式包括对运动数据预测值的列表中收集的一些运动数据的索引进行信号发送和解码。该列表由五个候选组成,并且在解码器和编码侧以相同的方式构造。因此,合并模式旨在导出从合并列表中取得的一些运动信息。合并列表通常包含与一些空间和时间周围块相关联的运动信息,当当前PU正在被处理时,这些块在它们的解码状态中可用。
在由JVET(联合视频探索小组)组开发的联合探索模型(JEM)中,具有在解码器侧确定的相关联参数的一些附加时间预测工具,包括时空运动矢量预测(STMVP)。STMVP的基本原理是预测当前PU的基于4×4子块的运动场。这是通过递归的子块到子块运动矢量推导来完成的。对于每个子块,预测的MV是每个参考列表的周围的顶部、左边和时间相邻块的运动矢量的平均值。
一种方法包括不使用正被处理的当前块的子块的STMVP工具的版本。该过程涉及在一些给定的候选空间位置搜索一些周围的运动矢量。对所找到的当前块的可用空间邻居和当前PU的时间运动矢量预测值求平均值以形成当前CU的运动矢量预测值。检查多达四个空间位置以找到要求平均的两个可用空间运动矢量预测值。这种方法的优点在于PU不被分成子块。为提供译码增益的整个PU导出单个时空运动矢量预测值。
一般来说,至少一个实施例涉及时空运动矢量推导以产生将成为在合并模式中使用的合并候选列表的一部分的某一候选运动数据候选预测值。在STMVP合并候选的构造中考虑了减少数量的空间位置。结果,在解码过程中使用较少的测试。实际上,对于在该过程中访问的每个空间位置,驱动两个测试以检查在所考虑的相邻空间位置处一些解码的PU信息是可用的,并且检查对应编码单元的编码模式(帧内/帧间)。获得了降低的复杂度,而没有压缩效率方面的任何损失。
一般来说,至少一个实施例可包含根据取自当前CU周围的空间位置的至少两个运动矢量之间的平均值确定或获得合并候选者。仅考虑两个空间位置,并且没有时间候选被检索。在沿着当前PU的顶部和左边缘的中间位置处取得两个所预想的候选。
一般而言,至少一个实施例可以包括根据组合确定或获得的合并候选,例如,位于如关于前述实施例描述的相同位置处的两个空间候选MV之间的平均,以及时间候选MV。。与前面的实施例相比,可以实现提高的译码效率(平均比特率降低约0.1%)。
通常,另一实施例涉及检索时间候选MV的方式。根据一个方面,可以选择在当前CU之下和右侧的空间位置处的时间MV。稍后呈现一些变型。这样的实施例和/或变型可以提供译码效率和解码器复杂度之间的折衷的改进。
通常,至少一个附加实施例包括决定所提出的STMVP是否可用的策略。
通常,至少一个额外实施例可提供构建合并候选列表的改进次序。
通常,至少一个附加实施例可以提供用于构建时空MV预测值,从而提高译码效率。
通常,至少一个附加实施例提供了关于AMVP帧间译码模式的所提出的STMVP运动矢量预测值的使用。
HEVC标准中的合并模式涉及从所选择的运动信息预测值候选导出给定预测单元的帧间预测信息(在下文中也称为运动信息)。运动信息包括PU的所有帧间预测参数,也就是说:
-单向或双向时间预测类型
-每个参考图像列表内的参考图像索引
-一个或多个运动矢量
HEVC中的帧间预测信息的译码和解码在图5中总结,其示出了帧间预测信息的信令。可以看出,根据合并模式的运动信息译码/解码发生在两种模式中:跳过模式和合并模式。在这两种模式中,一个单一字段被用信号通知以使解码器能够检索PU的运动信息:所谓的合并索引。所述合并索引指示所述合并运动信息预测值的列表中的哪一运动矢量预测值用于导出当前PU的运动信息。在下文中,将运动信息预测值的列表称为合并列表或合并候选列表。此外,将候选运动信息预测值称为合并候选。
在HEVC中,合并候选列表系统地由五个合并候选构成。合并列表在编码器和解码器两侧上如下构造。如图6中可见,可考虑多达五个空间位置来检索一些潜在候选。它们根据以下顺序被访问:
1-左(Al)
2-上(Bl)
3-右上(B0)
4-左下(A0)
5-左上(B2)
其中符号A0、Al、BO、Bl、B2表示在图6的左边示出的空间位置,在图6中,在图6的左边示出了在具有空间合并候选的合并模式中使用的空间和时间运动矢量预测值的位置,并且在图6的右侧示出了时间合并候选,选择了彼此不同的四个空间候选。然后,通过考虑位于位置H的时间运动信息,选择表示为TMVP的时间预测值,然后“中心”是所考虑的参考图像中位置H处的不可用的候选者。然后,进行最后的修剪过程(见图7),以确保所选择的空间和时间候选组不包含冗余候选。
接下来,在B切片的情况下,如果合并列表不完整,则将另一类型的候选推到合并列表:即所谓的组合候选。此可涉及形成由与来自已存在于所述列表中的一个候选的一个参考图片列表(L0)相关联的运动信息构成的候选,其中所述运动关联到与来自已存在于所述合并列表中的另一候选的另一参考图片列表(L1)。如果合并列表仍然不完整(五个元素),则将零运动矢量推到合并列表的后面,直到其完整为止。HEVC中的合并列表构建的整个过程在图8的图中详细描述。
确定在视频编解码器中使用的STMVP(时空运动矢量预测)合并候选的第一方法可以包括以下方法。这里,块(通常是预测单元或译码单元)被划分为子块或子PU,通常大小为4×4。这在图9中说明,其中A、B、C、D是当前块(大小为8×8)中所含有的4×4子块。块a、b、c、d表示当前块的相邻4×4块。在该方法的STMVP合并候选构造中,以光栅扫描顺序递归地导出每个子块的运动矢量。
对于每个子块,检索其顶部和左边相邻运动矢量。将每一如此获得的来自每一参考图片列表的运动矢量缩放到所考虑的参考图片列表中的第一参考图片的时间位置。此外,在HEVC的时间运动矢量预测之后,获得所考虑的子块的时间运动矢量预测值(TMVP)。在当前子块是图9的块A的情况下,所描述的方法涉及检索块D的共位块的运动矢量,以及涉及缩放。结果,分配给当前子块的STMVP运动矢量被计算为最多3个检索到的相邻空间和时间运动矢量的平均值。
生成STMVP合并候选的第二种方法不将PU划分为子块。所述方法涉及检索当前PU的两个顶部和左边空间相邻运动矢量,以及当前CU的时间运动矢量预测值。空间邻居取自图10所示的称为Afar的空间位置,其提供了在确定非子块STMVP合并候选对象时考虑的空间位置的示例。Afar相对于当前的PU的左上位置的空间位置由坐标(nbPW*5/2,-1)给出。这里nbPW是当前块的宽度。如果在位置Afar没有运动矢量可用(不存在或帧内译码),则位置Amid被认为是当前块的顶部相邻运动矢量。
左相邻块的选择是类似的。如果可用,则选择在相对空间位置(-1,nbPH/2)处的相邻运动矢量,记为Lfar。nbPH是当前块的高度。如果不可用,则选择位置Lmid(-1,nbPH/2)处的左邻近运动矢量,如果其可用的话。
图10中所示的空间位置的变型可以用于上述方法中的一个或多个。例如,可以使用以下:
-Afar=(2*nbPW,-1)
-Amid=(nbPW-l,-1)
-Lfar=(-1,2*nbPH)
-Lmid=(-l,nbPH-l)
接下来,例如,如在HEVC的时间运动矢量预测中一样导出当前块的TMVP预测值。最后,当前块的STMVP合并候选可被计算为多达三个获得的空间和时间相邻运动矢量的平均。因此,与上述第一种方法中基于子块的方法相反,这里的STMVP候选由每参考图像列表最多一个运动矢量构成。
图11描述了一种确定非基于子块的STMVP合并候选的方法,例如,上述第二种方法,该过程的输入是当前正在处理的块(PU)、其位置和其大小。该过程的输出是标志“可用_stmvp”,如果STMVP候选已由该方法确定,则该标志“可用_stmvp”等于“真”,否则该标志“可用_stmvp”等于“假”。
该方法的第一部分对应于空间相邻运动矢量的检索。随后是当前块的时间运动矢量预测值的推导。最后,计算所检索的运动矢量的平均。注意,如果没有检索到空间或时间相邻MV,则将过程的输出标志“可用_stmvp”设置为假。这意味着平均是在一到三个运动矢量之间计算的。
一般而言,如下所述的实施例的各种实例可包括STMVP合并候选者,其被确定而无需将当前块分割成子块的任何分割,并且被确定为当前块的顶部、左边和时间相邻运动矢量的组合,如上所述。另外,在至少一个实施例中,例如,在导出左空间相邻运动矢量时所设想的空间位置仅包括当前块周围的中Amid和Lmid空间位置。这在图12中示出。
一个结果是,与涉及诸如在上述第二种方法中的四个空间位置的测试的场景相比,需要减少的测试次数来导出这些空间MV预测值。这种情况涉及解码过程中的最大操作和校验次数,并且可以被认为是“最坏情况”的情况。
在至少一个实施例中,例如,前述实施例的变型可包含对应于一些其它空间位置的Amid和Lmid。例如,它们可以分别对应于当前块周围的右上(Al)和左下(Bl)位置。
在至少一个其它实施例中,例如,如图14所示修改并确定时间运动矢量预测值。在图14中,空间位置H被定义为当前块的右边和右下角底部的4×4子块位置。如果空间位置H位于CTU的当前行之外,则位置H的共位块被认为是不可用的。在这种情况下,例如在图13所示的布置中,考虑与当前块的中心相对应的空间位置,并且检索在该中心位置处的共位运动矢量。这里,建议将空间位置H定义为当前CU的右下角右侧的4×4子块位置。该位置包含在CTU的当前行中,如图14所示,因此,在这种情况下,新定义的H位置被认为是有效的,并且该过程检查与该位置共位的一些MV是否在当前切片的共位切片中可用。如果不是,则当前块的中心被用作检索共位运动矢量的回退空间位置。此特征的优点在于,若用于非子块STMVP合并候选者的建构中,则可改善整体译码效率。此外,在最坏情况的情况下,在校验和操作的数量方面,它不会给解码器带来任何复杂性。
在至少一个其它实施例中,图14的时间运动矢量预测不仅可以用于STMVP合并候选的构造,而且可以用于通常在合并模式中使用的标记为TMVP时间运动矢量预测值的推导。该实施例的一方面可以是在整个合并模式中仅导出一个时间运动矢量预测值。它在STMVP合并模式和TMVP模式之间共享,因此,对于两个不同的合并模式只能计算一次。这保持了为给定预测单元计算的一个时间运动矢量预测值的最大值。因此,关于时间候选的最大数目的解码处理的复杂度不增加。
在至少一个其他实施例中,例如,STMVP合并候选的确定的特性涉及STMVP合并候选对象被确定为可用或不可用的条件。这里,如果至少获得两个运动矢量(空间和/或时间),STMVP合并候选可被认为是可用的。因此,例如为了计算平均运动矢量而组合的运动矢量的数量包括在二和三之间。结果可以是译码效率的提高。
图15示出了提供并入有先前所描述实施例的方面的非子块STMVP合并模式的方法的实施例的示例。
在上述第一和第二方法中,合并候选列表的排序如下:
6-左(Al)
7-上(Bl)
8-右上(B0)
9-左下(A0)
10-左上(B2)
11-TMVP
12-组合的预测值
13-零运动矢量
在包括替换时间运动矢量预测(ATMVP)的第三种方法中,采用了合并模式。基本上,它涉及从参考图片检索运动信息并由运动矢量指向。所使用的运动矢量和参考图片索引是从以上经典合并列表中的第一合并候选导出的那些。因此,合并候选的有序列表是如下列表。
1-左(Al)
2-上(Bl)
3-右上(B0)
4-左下(A0)
5-ATMVP
6-左上(B2)
7-TMVP
8-组合的预测值
9-零运动矢量
在上述第二种方法中,STMVP合并候选可被插入到合并列表中ATMVP候选之后。这导致以下顺序列表:
10-左(Al)
11-上(Bl)
12-右上(B0)
13-左下(A0)
14-ATMVP
15-STMVP
16-左上(B2)
17-TMVP
18-组合的预测值
19-零运动矢量
在本文所述的至少一个实施例中,合并列表顺序可以如下修改:
1-左(Al)
2-上(Bl)
3-ATMVP
4-STMVP
5-右上(B0)
6-左下(A0)
7-左上(B2)
8-TMVP
9-组合的预测值
10-零运动矢量
这个顺序可以基于这样的观察来选择,即与ATMVP和STMVP被去激活的情况相比,ATMVP和STMVP候选提供了显著的译码效率改进。另外,一方面涉及在列表中给予它们较高的优先级。然后,在合并列表构建过程中较早地考虑它们,并且更可能在达到合并候选的最大数目之前考虑它们。
在至少一个其它实施例中,可对相关性设置条件以获得当前CU的一些所导出的空间和时间相邻运动矢量的组合,例如计算其平均。通常,人们理解,如果两个或三个检索到的MV的平均等于或接近于零运动矢量,而导出的运动矢量远离零MV,则将STMVP候选包括到合并列表中可能是不相关的。这在图16中示出,因此,至少一个实施例的一方面可以包括基于平均MV将STMVP候选视为潜在相关。例如,这可以采取以下形式。如果平均运动矢量的L范数与每个检索到的运动矢量的L范数相比可忽略,则平均运动矢量被认为在STMVP合并候选中不可使用。因此,该标准涉及评估以下测试:
Figure BDA0002984725350000171
其中∈是阈值。如果上述测试为真,则STMVP合并候选可以不被包括在合并候选列表中。
在另一个实施例中,STMVP合并候选对象可基于各种方法来确定,以合并检索到的空间和时间运动矢量。例如,一个实施例可以包括基于计算或获得三个运动矢量之间的平均的替代方案来获得运动矢量的组合。例如,可以基于运动矢量之间的加权平均来获得运动矢量的组合。这可以提供一些MV预测值候选,这些候选与在通常合并模式中使用的经典候选不冗余。图17中示出了实施例的示例,其以标记椭圆的形式示出了公共2D规划中的经典合并候选(x轴和y轴分别对应于运动矢量的x和y坐标)。此外,还显示了矢量
Figure BDA0002984725350000181
Figure BDA0002984725350000182
网格区域对应于可通过使用三个矢量的各种加权平均获得以下这三个矢量的一个或多个组合来覆盖的2D区域,所述加权平均具有正权重。当前实施例可包括考虑通过对该2D区域的这种网格化获得的运动矢量以生成一些更高级的STMVP合并候选。例如,可以通过以有序的方式通过网格并且选择与通常候选不冗余并且符合上述平均标准的第一候选来获得运动矢量的一个或多个组合。
通常,至少一个附加实施例可以包括将若干STMVP合并候选引入合并列表。可以通过考虑当前块周围的各种空间位置来获取这样的多个候选,以检索一些空间相邻运动矢量。为此,可以使用图18中描述的STMVP合并候选构建过程。该图描述了根据本实施例修改的图15的实施例。可以看出,例如输入索引“target_index”的值被作为给该修改的过程的输入。一方面涉及搜索将出现在多个非子块STMVP合并候选的期望有序集合中的位置“目标索引”处的STMVP合并候选。可以根据预定义的顺序来调用围绕当前块的多个空间位置上的循环。每次至少两个相邻(空间+时间)候选被找到,它们的平均值可以被认为是有效的STMVP合并候选。每当识别出有效的STMVP合并候选时,可修改另一值,例如递增。例如,诸如valid_cand_index的值可以表示STMVP候选的期望集合中的当前有效STMVP候选的索引。当valid_cand_index等于target_idx时,过程结束。否则,该过程进一步在下一空间位置上迭代以考虑搜索下一STMVP候选以提供给总体合并候选列表。
在实施例的另一示例中,可在AMVP帧间预测模式中使用时空运动矢量预测候选。这意味着,AMVP运动矢量预测值的列表的构造可整合作为时空候选的附加候选。这在图20中示出,其示出了修改的图19的过程。实际上,构建STMVP的过程正在被调用(图15的过程),并且如果得到的STMVP预测值可用,则其可用作复制的MV移除步骤的附加输入。以此方式,如果从空间和时间候选检索中得到AMVP候选的不完整集合,则可以在两个最终AMVP候选中考虑STMVP。
在对先前实施例的另一变型中,可基于在图15的第一阶段中收集的空间和/或时间相邻运动矢量预测值来计算一些附加合并候选并将其插入到合并候选者列表中。
在已经获得这些空间时间候选之后,在图15的实施例中,将空间时间合并候选计算为2或3个运动矢量的平均。
本变型包括在图15的第一阶段中获得三个运动矢量的情况下,生成一个或多个附加合并候选。
·根据第一子变型,将附加合并候选计算为已经检索的两个空间相邻运动矢量的平均。一旦计算了平均,就可检查其不同于已收集在合并候选者列表中的每一合并候选者。在这个(可选的)单一性检查之后,两个空间相邻运动矢量之间的计算的平均被添加到合并候选列表。如果执行上述可选检查,则仅当平均运动矢量与合并列表中已经包含的每个候选不同时,才将平均运动矢量添加到列表。
·第二子变型可以作为上述第一子变型的补充或替代来执行。该第二子变型包括计算所检索的时间运动矢量预测值与两个所检索的空间运动矢量预测值之一(例如,左边)之间的平均运动矢量。一旦计算了平均值,就可检查其不同于已收集在合并候选者列表中的每一合并候选。在这个(可选的)单一性检查之后,将两个时间和空间相邻运动矢量之间的计算的平均添加到合并候选列表。如果执行上述可选检查,则仅当平均运动矢量与合并列表中已经包含的每个MV不同时,才将平均运动矢量添加到列表中。
·根据第三子变型,作为上述第二子变型的补充或替代来执行,第二子变型中的相同过程被执行,但是具有时间运动矢量预测值和另一空间运动矢量预测值(例如,上文)。
图22示出了该变型的过程。
最后,这种变型以相同的方式既在编码器侧又在解码器侧发生。此外,对于其它合并候选,根据从比特流解码的合并CU的合并索引值,解码器能够检测新添加的合并候选的使用,并且如上所述导出它们。
与图15的实施例相比,本变型的至少一个优点可以是进一步增加的压缩效率。
在对先前实施例的进一步变型和对先前变型的进一步变型中,可基于在图15的第一阶段中收集的空间相邻运动矢量预测值来计算一些附加合并候选并将其插入到合并候选列表中。
在获得这些空间时间候选之后,在本文档的第一实施例中,将空间时间合并候选计算为2或3个运动矢量的平均。
本变型包括在图15的第一阶段期间已经检索到至少一个空间相邻运动矢量的情况下生成1或2个附加合并候选。
·根据第一子变型,将第一找到的空间相邻运动矢量(例如,左空间相邻运动矢量)添加到合并候选者列表作为附加合并候选。可选的单一性检查步骤验证该运动矢量预测值不同于已经存在于合并列表中的每个合并候选。
·根据第二子变型,将第二找到的空间相邻运动矢量(例如,以上运动矢量)添加到合并候选者列表作为附加合并候选。可选的单一性检查步骤验证该运动矢量预测值不同于已经存在于合并列表中的每个合并候选。
因此,在此第二变型中,可将多达两个附加合并候选者推送到合并候选者列表。
注意,这个变型仅在图15的第一阶段期间收集的空间候选的空间位置不同于在所考虑的视频编解码器中使用的合并候选中已经存在的空间位置的情况下是相关的。实际上,如果用于计算STMVP候选的空间候选是图12的Amid和Lmid候选,则可以发生本变型。
此外,这种变型以相同的方式既在编码器侧又在解码器侧发生。此外,对于其它合并候选,根据从比特流解码的合并CU的合并索引值,解码器能够检测新添加的合并候选的使用,并且如上所述导出它们。
本变型的优点可以是进一步提高压缩效率。
本发明的这种变型可以与前述变型结合使用。
根据本文描述的任何实施例的变型,可以不应用应用于用于生成时空合并候选的空间相邻运动矢量预测值的缩放步骤。因此,此运动矢量缩放步骤可从图15或图18的过程中移除或可选择性地移除或选择性地启用。这使得能够降低用于计算空间时间运动矢量预测值(一个或多个)的处理的复杂度。
根据另一变型,当不应用空间MV预测值的缩放时,则可以应用以下处理以优化所考虑的视频编解码器的整体译码效率。
该变型的基本原理是根据空间MV预测值的相应参考图片索引来选择一对空间MV预测值。该方法包括至少两个特征。首先,在多个空间位置当中搜索当前CU的顶部和左边相邻运动矢量。图24示出了分别针对顶部和左边相邻运动矢量预测值考虑的空间位置。其次,选择所找到的满足对参考图片索引的约束或条件的第一对运动矢量预测值,并使用该第一对运动矢量预测值来计算没有任何空间MV预测值缩放的STMVP运动矢量预测值。
置于空间MV预测值候选的参考图像指示上的约束或条件的例子可以包括以下示例性约束之一。
如果在由所考虑的空间MV候选使用的其参考图片列表(列表L0、L1或两者)中的每一个列表中,参考图片索引等于0,则可选择一对空间MV候选者。
根据对参考图片索引的另一典型约束,如果在两个考虑的空间MV候选(列表L0、L1或两者)共同使用的其参考图像列表的每一者中,两个候选的参考图像索引相等,则可以选择一对空间MV候选。另外,在该最后一个变型中,如果两个空间候选的参考图像索引彼此相等并且等于零,则时间MV预测值用于生成最终的空间时间MV预测值。如果它们彼此相等但不等于零,则时间MV预测值可以用于生成平均的空间时间MV预测值。
根据另一实施例,图24的变型可以与图22的实施例结合,这意味着,在根据其参考图像索引选择一对空间MV预测值候选之后,如果STMVP合并候选是利用三个运动矢量计算的,则根据图22的过程,一些附加的STMVP候选可以被计算并被添加到合并候选列表。
根据另一实施例,当查找如图24所示的一对空间MV候选时,不同于当前块的空间相邻MV的一些空间候选可以被考虑。例如,存储在所谓的基于历史的运动矢量预测值(例如,本领域已知的HMVP)缓冲器中的一些矢量可以被认为是候选运动矢量预测值。然后,对其参考图像索引的约束可以用于选择MV预测值以用于计算空间时间运动矢量预测值。
HMVP基本上涉及将用于对给定图片、切片、图块或图块群组中的连续块进行译码/解码的运动矢量存储在FIFO(先进先出)缓冲器中,且稍后再使用所述运动矢量来预测用于对所考虑的图片/切片/图块/图块群组中的后续块进行译码的运动矢量(一个或多个)。
根据另一实施例,可搜索多个时空运动矢量候选,且计算两个空间运动矢量预测值和一个时间运动矢量预测值。为此,可在当前块周围或在HMVP缓冲器中寻找若干不同对的空间运动矢量预测值。此外,可以使用对候选运动矢量的参考图片索引的上述约束来选择空间运动矢量候选的若干不同对。
根据另一实施例,可根据在考虑STMVP候选时的合并列表大小相对于最大允许合并列表大小来决定将空间时间运动矢量预测值包含到合并候选列表中。作为一实例,如果至少两个空闲位置是正在构造中的合并列表中剩余,那么可允许或启用包含空间时间运动矢量候选者,否则不允许。
根据另一实施例,可将合并候选者列表排序,使得将时空运动矢量预测值(一个或多个)插入到合并候选者列表中的HMVP候选者之前。
根据另一方法,可将时空运动矢量候选(一个或多个)放在合并候选列表中的HMVP候选之后。
根据另一实施例,时空MV预测值(一个或多个)可以与合并候选者列表中的HMVP候选交错。例如,可以首先放置一个STMVP候选,然后放置一个HMVP候选,然后放置另一个STMVP候选,等等。或者,HMVP候选可首先出现,然后是STMVP候选(一个或多个),然后是一些其它HMVP候选。
根据另一实施例,STMVP候选可以与被称为成对平均候选的候选进行交错。成对平均候选包含已存在于正构造的合并候选列表中的运动矢量之间的平均运动矢量的集合。在STMVP候选与成对候选交错的情况下,它们可计算为存在于成对候选中的非时间MV候选的平均,以及与正被编码/解码的块相关联的时间运动矢量预测值(TMVP)。然后,在该实施例中,一个成对候选可以首先出现在列表中,然后是STMVP候选,然后是成对候选,等等。或者,基于第一成对候选计算的STMVP候选可以首先出现在列表中,成对候选,然后出现基于第二成对候选计算的STMVP候选,等等。
根据至少一个其它实施例,如果成对平均候选和STMVP候选都用于构造合并列表,则如果一些STMVP候选(一个或多个)已经存在于正在构造的合并中,则用于基于已经存在于列表中的候选来构造成对平均候选的过程可以从其构造过程中排除STMVP候选(一个或多个)。
根据另一实施例,例如包括标志的高级语法元素(例如,切片报头、图块群组报头、图块报头或图片报头语法元素)指示STMVP候选(一个或多个)是否用于构造所考虑的切片、图块群组、图块或图片中在合并模式下经译码或解码的每一CU的合并候选列表。
根据实施例,在编码器侧决定该标志的值,以便优化译码效率。
根据实施例,根据当前切片、图块、图块群组或图片所属于的时间层来决定标志的值。作为示例,如果切片、图块、图块群组或图片在时间层0中,那么可将标志选择为0(假)。否则,它可以被选择为1(真)。
根据实施例,根据可用并且可以用于当前切片、图块、图块群组或者图片的时间预测的参考图片的集合来决定标志的值。作为一示例,如果所述切片、图块、图块群组或图片具有POC值低于当前POC的至少一个参考图片及POC值高于当前POC的至少一个参考图片,那么可将所述标志选择为1(真)。否则,它可以被选择为0(假)。
作为另一实例,如果每一参考图片列表L0及L1中具有参考图片索引0的参考图片具有比当前切片、图块、图块群组或图片的POC低及高的相应POC,那么可将标志选择为1(真)。否则,它可以被选择为0(假)。
根据实施例,标志的值在编码器侧根据正被译码的序列的帧内周期来决定。
作为示例,如果内部周期是严格高于零的整数值,则可以选择标记1(真)。否则,它可以被选择为0(假)。
在解码器侧,在切片、图块、图块群组或图片报头(图片参数集)中分析标志。接着,当解码所考虑的切片、图块、图块群组或图片中的每一译码单元时,考虑标志的值以便在构建正以合并模式解码的给定CU的合并候选列表期间包含空间时间(STMVP)候选(一个或多个)。
根据另一实施例,当在所考虑的切片、图块群组、图块或图片中构造在合并模式中译码或解码的每一CU的合并候选者列表时,存在于标志中的例如切片报头、图块群组报头、图块报头或图片报头语法元素的高级语法元素指示与STMVP候选(一个或多个)在合并候选者列表中的位置有关的信息。
作为示例,根据该标志的给定值(例如,1或真),STMVP候选在合并列表中位于第四空间合并候选之后。因此,在该方法中,合并列表将包括以下排序的合并候选集合:
-第一空间候选:左,记为Al
-第二空间候选:上,记为Bl
-第三空间候选:右上,记为B0
-第四空间候选:左下,记为A0
-提出的STMVP候选
-第五空间候选:左上,记为B2
-时间运动矢量预测候选,记为TMVP
-基于历史的运动矢量预测候选,记为HMVP
-成对平均候选
-零运动矢量
如果该标志值为0(假),则STMVP候选位置在时间运动矢量预测值(TMVP)之后,并且合并候选列表被排序如下:
-第一空间候选:左,记为Al
-第二空间候选:上,记为Bl
-第三空间候选:右上,记为B0
-第四空间候选:左下,记为A0
-第五空间候选:左上,记为B2
-时间运动矢量预测候选,记为TMVP
-提出的STMVP候选
-基于历史的运动矢量预测候选,记为HMVP
-成对平均候选
-零运动矢量
根据实施例,在编码器侧决定该标志的值,以便优化译码效率。
根据实施例,根据当前切片、图块、图块群组或图片所属于的时间层来决定标志的值。作为示例,如果切片、图块、图块群组或图片在时间层0中,那么可将标志选择为0(假)。否则,它可以被选择为1(真)。
根据实施例,根据可用并且可以用于当前切片、图块、图块群组或者图片的时间预测的参考图片的集合来决定标志的值。作为示例,如果所述切片、图块、图块群组或图片具有POC值低于当前POC的至少一个参考图片及POC值高于当前POC的至少一个参考图片,那么可将所述标志选择为1(真)。否则,它可以被选择为0(假)。
作为另一实例,如果每一参考图片列表L0及L1中具有参考图片索引0的参考图片具有比当前切片、图块、图块群组或图片的POC低及高的相应POC,那么可将标志选择为1(真)。否则,它可以被选择为0(假)。
根据实施例,标志的值在编码器侧根据正被编码的序列的帧内周期来决定。
作为示例,如果内部周期是严格高于零的整数值,则可以选择标记1(真)。否则,它可以被选择为0(假)。
在解码器侧,在片、图块、图块群组或图片报头(图片参数集)中分析标志。然后,当对所考虑的片、图块、图块群组或图片中的每个译码单元进行解码时,当构造在合并模式中被解码的译码单元的合并候选者列表时,考虑标志的值以便如上所述调整合并候选列表中的合并候选的排序。
根据另一实施例,合并候选的两个以上排序之间的选择以同步方式在编码器侧和解码器侧两者上进行。在该实施例中,可以在解码器侧以与编码器侧完全相同的方式应用上述策略中的任何策略。
根据另一实施例,将时间运动矢量预测值(TMVP)置于更靠近合并候选者列表的头部的位置处。作为示例,TMVP候选的位置可在上文所示出的合并列表中在前四空间候选之后且在第五空间候选B2之前。
根据可与最后一个实施例组合的另一实施例,将STMVP候选恰好放在合并候选者列表中的TMVP候选之后。
根据另一实施例,根据以下方式之一来选择用于计算STMVP合并候选的两个空间运动矢量预测值。
-当STMVP候选被计算时,第一空间MV预测值可被设定为等于已经存在于合并列表中的第一空间候选,且第二MV预测值可被设定为等于插入正在构建的合并列表中的最后空间候选。
-第一空间MV预测值可被设定为等于在当前CU上方发现的三个空间候选(即,B0、Bl或B2)中的一者。如果找到,那么可将其设定为等于在当前CU上方的第一找到的空间预测值。在这个变型中,用于计算STMVP候选的第二空间MV预测值可被设置为等于在当前CU的左边(即在A0和Al中)找到的空间候选之一。举例来说,其可经设定等于当前CU的左边的第一所找到的空间MV预测值。在本变型中,如果没有找到上方空间MV预测值或左方空间MV预测值,则可以选择两个空间MV预测值作为正在构造的合并列表中的第一个和第二个,或者选择为正在构造的合并列表中的第一个和最后一个空间MV预测值。
本文档描述了实施例、特征、模型、方法等的各种示例。许多这样的示例被描述为具有特定性,并且至少为了示出个体特性,通常以可能看起来具有限制性的方式来描述。然而,这是为了描述清楚的目的,并且不限制应用或范围。实际上,本文所述的实施例、特征等的各种示例可以各种方式组合和互换,以提供实施例的另外的示例。
根据本公开的实施例的示例包括但不限于以下内容。
一般来说,实施例的至少一个示例可涉及一种用于编码视频数据的设备,其包括一个或多个处理器,其中所述一个或多个处理器被配置用于:确定与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量或与邻近所述当前块的第三空间位置共位的时间运动矢量中至少两个运动矢量可用,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于在所述第一或第二空间运动矢量或所述时间运动矢量当中可用的所述至少两个运动矢量的组合获得第一时空运动矢量预测候选;以及基于所述第一和第二空间运动矢量和所述时间运动矢量中的所有三个可用且基于所述三个可用运动矢量的多个组合中的一者来获得第二时空运动矢量预测候选,所述组合包括:a)所述第一和第二空间运动矢量的第一组合;或者b)第一空间运动矢量和时间运动矢量的第二组合;或者c)第二空间运动矢量和时间运动矢量的第三组合,其中获得第二时空运动矢量所基于的多个组合的所述一者不同于获得第一时空运动矢量所基于的至少两个运动矢量的组合;以及基于所述第一和第二时空运动矢量预测候选者的至少一者编码所述视频数据以产生经编码视频数据。
一般来说,实施例的至少一个其它实例可涉及一种用于编码视频数据的方法,其包括:确定与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量或与邻近所述当前块的第三空间位置共位的时间运动矢量中至少两个运动矢量可用,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于在所述第一或第二空间运动矢量或所述时间运动矢量当中可用的所述至少两个运动矢量的组合获得第一时空运动矢量预测候选;以及基于所述第一和第二空间运动矢量和所述时间运动矢量中的所有三个可用且基于所述三个可用运动矢量的多个组合中的一者来获得第二时空运动矢量预测候选,所述组合包括:a)所述第一和第二空间运动矢量的第一组合;或者b)第一空间运动矢量和时间运动矢量的第二组合;或者c)第二空间运动矢量和时间运动矢量的第三组合,其中获得第二时空运动矢量所基于的多个组合的所述一者不同于获得第一时空运动矢量所基于的至少两个运动矢量的组合;以及基于所述第一和第二时空运动矢量预测候选的至少一者编码所述视频数据以产生经编码视频数据。
一般来说,实施例的至少一个其它实例可涉及一种用于解码视频数据的装置,其包括一或多个处理器,其中所述一或多个处理器经配置以用于:确定与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量或与邻近所述当前块的第三空间位置共位的时间运动矢量中至少两个运动矢量可用,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于在所述第一或第二空间运动矢量或所述时间运动矢量当中可用的所述至少两个运动矢量的组合获得第一时空运动矢量预测候选;以及基于所述第一和第二空间运动矢量和所述时间运动矢量中的所有三个可用且基于所述三个可用运动矢量的多个组合中的一者来获得第二时空运动矢量预测候选,所述组合包括:a)所述第一和第二空间运动矢量的第一组合;或者b)第一空间运动矢量和时间运动矢量的第二组合;或者c)第二空间运动矢量和时间运动矢量的第三组合,其中获得第二时空运动矢量所基于的多个组合的所述一者不同于获得第一时空运动矢量所基于的至少两个运动矢量的组合;以及基于所述第一和第二时空运动矢量预测候选中的至少一者解码所述视频数据以产生经解码视频数据。
一般来说,实施例的至少一个其它实例可涉及一种用于解码视频数据的方法,其包括:确定与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量或与邻近所述当前块的第三空间位置共位的时间运动矢量中至少两个运动矢量可用,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于在所述第一或第二空间运动矢量或所述时间运动矢量当中可用的所述至少两个运动矢量的组合获得第一时空运动矢量预测候选;以及基于所述第一和第二空间运动矢量和所述时间运动矢量中的所有三个可用且基于所述三个可用运动矢量的多个组合中的一者来获得第二时空运动矢量预测候选,所述组合包括:a)所述第一和第二空间运动矢量的第一组合;或者b)第一空间运动矢量和时间运动矢量的第二组合;或者c)第二空间运动矢量和时间运动矢量的第三组合,其中获得第二时空运动矢量所基于的多个组合的所述一者不同于获得第一时空运动矢量所基于的至少两个运动矢量的组合;以及基于所述第一和第二时空运动矢量预测候选中的至少一者解码所述视频数据以产生经解码视频数据。
一般来说,实施例的至少一个其它实例可涉及如上文所描述的装置或方法,其中所述一或多个处理器进一步经配置用于或所述方法进一步包括:基于所述多个组合中的第二组合获得第三时空运动矢量预测候选,其中所述多个组合中的所述第二组合不同于获得所述第一时空运动矢量预测候选所基于的所述组合及获得所述第二时空运动矢量预测候选所基于的所述多个组合中的所述一者。
一般来说,实施例的至少一个其他示例可以涉及如上所述的装置或方法,其中一个或多个处理器还被配置用于,或者该方法还包括:将缩放应用于正被平均的一个或多个空间运动矢量,或者如果没有应用缩放,则所述确定包括:基于相应的参考图片索引选择一对空间运动矢量预测值,其中所述选择包括:搜索满足置于所述参考图片索引上的条件的多个相邻空间位置以得到当前CU的顶部和左边相邻运动矢量;以及基于所选择的空间运动矢量预测值对来获得所述时空运动矢量预测值。
一般来说,实施例的至少一个其它实例可涉及如上所述的装置或方法,其中所述一个或多个处理器进一步经配置用于或所述方法进一步包括:将缩放应用于正被平均的一个或多个空间运动矢量,或如果未应用缩放,那么所述确定包含基于满足置于参考图片索引上的条件的相应参考图片索引从基于历史的运动矢量预测值缓冲器选择空间运动矢量预测值对;以及基于所选择的空间运动矢量预测值对来获得所述时空运动矢量预测值。
一般来说,实施例的至少一个其他示例可以涉及一种装置或方法,涉及如上所述的条件,其中所述条件包括:如果在由所考虑的空间运动矢量候选使用的每一参考图片列表中,参考图片索引等于0,那么可选择空间运动矢量候选对;或者,如果在由两个空间运动矢量候选使用的每一参考图片列表中,所述两个候选的参考图片索引相等,那么可选择空间运动矢量候选对;或者,如果两个空间候选的参考图像索引彼此相等并且等于零,则基于时间运动矢量预测值获得时空运动矢量预测值;或者如果两个空间候选的参考图像索引彼此相等但不等于零,则基于时间运动矢量预测值获得平均的时空运动矢量预测值。
一般来说,实施例的至少一个其它实例可涉及一种用于编码视频数据的装置,其包括一或多个处理器,其中所述一或多个处理器经配置以用于:基于在与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、以及与和所述当前块相关联的第三空间位置共位的时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得第一时空运动矢量预测候选,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于获得所述第一时空运动矢量预测候选来修改第一值;基于所述第一值与表示非子块时空运动矢量预测候选的有序集合中的位置的第二值具有关系,并且基于在第三或第四空间运动矢量或所述时间运动矢量之中可用的至少两个运动矢量,获得第二时空运动矢量预测候选,其中所述第三和第四空间运动矢量与不同于所述第一和第二空间位置的第五和第六空间位置相关联,以及其中所述第五空间位置邻近所述当前块的左边,并且所述第六空间位置邻近所述当前块上方;将所述第一和第二时空运动矢量预测候选的至少一者包括在所述非子块时空运动矢量预测候选的有序集合中;以及基于所述第一和第二时空运动矢量预测候选中的所述至少一者编码所述视频数据以产生经编码视频数据。
一般来说,实施例的至少一个其它实例可涉及一种用于编码视频数据的方法,其包括:基于在与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、以及与和所述当前块相关联的第三空间位置共位的时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得第一时空运动矢量预测候选,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于获得所述第一时空运动矢量预测候选来修改第一值;基于所述第一值与表示非子块时空运动矢量预测候选的有序集合中的位置的第二值具有关系,并且基于在第三或第四空间运动矢量或所述时间运动矢量之中可用的至少两个运动矢量,获得第二时空运动矢量预测候选,其中所述第三和第四空间运动矢量与不同于所述第一和第二空间位置的第五和第六空间位置相关联,以及其中所述第五空间位置邻近所述当前块的左边,并且所述第六空间位置邻近所述当前块上方;将所述第一和第二时空运动矢量预测候选的至少一者包括在所述非子块时空运动矢量预测候选的有序集合中;以及基于所述第一和第二时空运动矢量预测候选中的所述至少一者编码所述视频数据以产生经编码视频数据。
一般来说,实施例的至少一个其它实例可涉及一或多个处理器,其中所述一或多个处理器经配置以用于:基于在与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、以及与和所述当前块相关联的第三空间位置共位的时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得第一时空运动矢量预测候选,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于获得所述第一时空运动矢量预测候选来修改第一值;基于所述第一值与表示非子块时空运动矢量预测候选的有序集合中的位置的第二值具有关系,并且基于在第三或第四空间运动矢量或所述时间运动矢量之中可用的至少两个运动矢量,获得第二时空运动矢量预测候选,其中所述第三和第四空间运动矢量与不同于所述第一和第二空间位置的第五和第六空间位置相关联,以及其中所述第五空间位置邻近所述当前块的左边,并且所述第六空间位置邻近所述当前块上方;将所述第一和第二时空运动矢量预测候选的至少一者包括在所述非子块时空运动矢量预测候选的有序集合中;以及基于所述第一和第二时空运动矢量预测候选者中的所述至少一者解码所述视频数据以产生经解码视频数据。
一般来说,实施例的至少一个其它实例可涉及一种用于解码视频数据的方法,其包括:基于在与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、以及与和所述当前块相关联的第三空间位置共位的时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得第一时空运动矢量预测候选,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于获得所述第一时空运动矢量预测候选来修改第一值;基于所述第一值与表示非子块时空运动矢量预测候选的有序集合中的位置的第二值具有关系,并且基于在第三或第四空间运动矢量或所述时间运动矢量之中可用的至少两个运动矢量,获得第二时空运动矢量预测候选,其中所述第三和第四空间运动矢量与不同于所述第一和第二空间位置的第五和第六空间位置相关联,以及其中所述第五空间位置邻近所述当前块的左边,并且所述第六空间位置邻近所述当前块上方;将所述第一和第二时空运动矢量预测候选的至少一者包括在所述非子块时空运动矢量预测候选的有序集合中;以及基于所述第一和第二时空运动矢量预测候选者中的所述至少一者解码所述视频数据以产生经解码视频数据。
一般来说,实施例的至少一个其它实例可涉及一种用于编码视频数据的装置,其包括一个或多个处理器,其中所述一个或多个处理器经配置以用于:确定与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量和与第三空间位置共位的时间运动矢量当中至少两个运动矢量可用,所述第三空间位置邻近所述当前块的右边且邻接所述当前块的右下角,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于所述第一和第二空间运动矢量以及所述时间运动矢量当中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得时空运动矢量预测候选;以及基于所述时空运动矢量预测候选来编码所述视频数据以产生经编码视频数据。
一般来说,实施例的至少一个其它实例可涉及一种用于编码视频数据的方法,其包括:确定与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量和与第三空间位置共位的时间运动矢量当中至少两个运动矢量可用,所述第三空间位置邻近所述当前块的右边且邻接所述当前块的右下角,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于所述第一和第二空间运动矢量以及所述时间运动矢量当中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得时空运动矢量预测候选;以及基于所述时空运动矢量预测候选来编码所述视频数据以产生经编码视频数据。
一般来说,实施例的至少一个其它实例可涉及用于解码视频数据的装置,其包括一个或多个处理器,其中所述一个或多个处理器经配置以用于:确定与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量和与第三空间位置共位的时间运动矢量当中至少两个运动矢量可用,所述第三空间位置邻近所述当前块的右边且邻接所述当前块的右下角,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于所述第一和第二空间运动矢量以及所述时间运动矢量当中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得时空运动矢量预测候选;以及基于所述时空运动矢量预测候选来解码所述视频数据以产生经解码视频数据。
一般来说,实施例的至少一个其它实例可涉及一种用于解码视频数据的方法,其包括:确定与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量和与第三空间位置共位的时间运动矢量当中至少两个运动矢量可用,所述第三空间位置邻近所述当前块的右边且邻接所述当前块的右下角,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;基于所述第一和第二空间运动矢量以及所述时间运动矢量当中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得时空运动矢量预测候选;以及基于所述时空运动矢量预测候选来解码所述视频数据以产生经解码视频数据。
一般来说,实施例的至少一个其他示例可涉及如本文描述的装置或方法的实施例的任何示例,还包括基于指示时空运动矢量预测候选的相关性的准则来确定是否将至少一个获得的时空运动矢量预测候选添加到合并候选列表。
一般来说,实施例的至少一个其他示例可以涉及如上所述的装置或方法,其中准则包括确定求平均的结果的L范数与至少一个时空运动矢量的获得所基于的至少两个运动矢量中的每一者的L范数相比是否可忽略。
一般来说,实施例的至少一个其它示例可涉及如上所述的装置或方法,其中确定是否将至少一个获得的时空运动矢量预测候选添加到合并候选列表包括确定至少一个时空运动矢量预测候选是否对于合并候选列表中的任何其它候选冗余,并且仅在所述至少一个时空运动矢量预测候选不冗余时将至少一个时空运动矢量预测候选添加到合并候选列表。
一般来说,实施例的至少一个其它实例可涉及如上文所描述的装置或方法,其中确定是否将至少一个所获得的时空运动矢量预测候选包含于合并候选者列表中是基于在考虑至少一个所获得的时空运动矢量预测值候选时,相对于合并候选者列表的最大允许大小,合并候选者列表的大小。
一般而言,实施例的至少一个其他示例可以涉及如上所述的装置或方法,其中至少一个获得的时空运动矢量预测候选基于包括在列表中的候选的排序而包括在合并候选列表中,其中排序包括以下之一:将至少一个获得的时空运动矢量预测候选放置在列表中的第四位置处;或者将所述至少一个获得的时空运动矢量预测候选放置在所述列表中基于替代的时间运动矢量预测候选的位置确定的位置处;或者将所述至少一个获得的时空运动矢量预测候选放置在所述列表中的提供比所述列表中除了替代时间运动矢量预测候选和左邻近候选和上邻近候选之外的所有候选更高的优先级的位置处;或者将所获得的至少一个时空运动矢量预测候选放置在包括在列表中的基于历史的运动矢量预测候选之前或之后;或者将所述至少一个获得的时空运动矢量预测候选与包括在所述列表中的基于历史的运动矢量预测候选交错;或者将所述至少一个获得的时空运动矢量预测候选与所述列表中包括的一个或多个成对平均候选交错。
一般来说,实施例的至少一个其他示例可以涉及如本文描述的装置或方法的实施例的任何示例,其中,基于可用运动矢量的平均值来获得组合或所述多个组合中的一个或多个组合。
一般来说,实施例的至少一个其他示例可以涉及如上所述的涉及平均的装置或方法,其中平均值包括加权平均。
一般来说,实施例的至少一个其他示例可以涉及如上所述的涉及加权平均的装置或方法,其中加权平均包括多个加权平均,多个加权平均中的每一者基于多个权重中的相应一个。
一般来说,实施例的至少一个其它示例可以涉及如本文描述的装置或方法的实施例的任何示例,其中第一空间位置和第二空间位置分别对应于沿着当前块的顶部边缘的中间位置和沿着当前块的左边缘的中间位置。
一般来说,实施例的至少一个其他示例可以涉及如本文描述的装置或方法的实施例的任何示例,其中一个或多个获得的时空运动矢量预测候选用于自适应运动矢量预测操作模式中。
一般来说,实施例的至少一个其他示例可以涉及计算机程序产品,该计算机程序产品包括计算指令,当由一个或多个处理器执行时,该计算指令用于执行如本文所述的方法的实施例的任何示例。
一般来说,实施例的至少一个其它示例可涉及经格式化以包含经编码视频数据的比特流,其中所述经编码视频数据包含与根据如本文所描述的编码视频数据的方法的任何示例获得时空运动矢量预测候选相关联的指示符;以及基于时空运动矢量预测候选编码的图片数据。
一般来说,实施例的至少一个其他示例可以涉及一种设备,包括:根据如本文所述的实施例的任何示例的装置;以及以下至少一者:(i)天线,被配置为接收信号,所述信号包括表示所述视频数据的数据,(ii)频带限制器,被配置为将所接收的信号限制到包括表示所述视频数据的所述数据的频带,以及(iii)显示器,被配置为显示来自所述视频数据的图像。
一般来说,在本文档中描述和设想的实施例的示例可以以许多不同的形式来实现。上述图1和2以及下述图21提供了一些实施例,但是可以想到其他实施例,并且对图1、2和21的讨论不限制实现的广度。至少一个实施例一般提供与视频编码和/或解码相关的示例,并且至少一个其它实施例一般涉及传送所生成或编码的比特流或信号。这些和其它实施例可被实现为方法、装置、其上存储有用于根据所描述的方法中的任一种来编码或解码视频数据的指令的计算机可读存储介质、和/或其上存储有根据所描述的方法中的任一种生成的比特流或信号的计算机可读存储介质。
在本申请中,术语“重构”和“解码”可以互换使用,术语“像素”和“样本”可以互换使用,术语“图像”、“图片”和“帧”可以互换使用。通常,但不是必须的,术语“重构”在编码器侧使用,而“解码”在解码器侧使用。
术语HDR(高动态范围)和SDR(标准动态范围)用于本公开中。那些术语通常向本领域普通技术人员传达动态范围的特定值。然而,也意图在另外的实施例中,其中对HDR的引用被理解为意味着“较高动态范围”,而对SDR的引用被理解为意味着“较低动态范围”。这样的附加实施例不受可能经常与术语“高动态范围”和“标准动态范围”相关联的动态范围的任何特定值的约束。
本文描述了各种方法,并且每种方法包括用于实现所描述的方法的一个或多个步骤或动作。除非方法的正确操作需要特定顺序的步骤或动作,否则可修改或组合特定步骤和/或动作的顺序和/或使用。
本文档中描述的各种方法和其它方面可用于修改模块,例如,如图1和图2中所示的视频编码器100和解码器200的帧内预测、熵译码和/或解码模块(160、360、145、330)。此外,本发明的方面不限于VVC或HEVC,并且可应用于例如,无论是预先存在的还是将来开发的其它标准和建议,以及任何此类标准和建议(包括VVC和HEVC)的扩展。除非另外指出或在技术上排除,否则本文中所描述的方面可单独或组合使用。
例如,在本文挡中使用各种数值。具体值是出于示例目的,并且所描述的方面不限于这些具体值。
图21示出了其中可以实现各个方面和实施例的系统的示例的框图。系统1000可以被实现为包括以下描述的各种组件的设备,并且被配置为执行本文中描述的一个或多个方面。此类设备的示例包括但不限于各种电子设备,诸如个人计算机、膝上型计算机、智能电话、平板计算机、数字多媒体机顶盒、数字电视接收机、个人视频记录系统、连接的家用电器和服务器。系统1000的元件可以单独地或组合地实现在单个集成电路、多个IC和/或分立组件中。例如,在至少一个实施例中,系统1000的处理和编码器/解码器元件分布在多个IC和/或分立组件上。在各种实施例中,系统1000经由例如通信总线或通过专用输入和/或输出端口通信地耦合到其他类似系统或其他电子设备。在各种实施例中,系统1000被配置为实现本文中描述的一个或多个方面。
系统1000包括至少一个处理器1010,其被配置为执行加载在其中的指令,以用于实现例如本文中描述的各个方面。处理器1010可以包括嵌入式存储器、输入输出接口和本领域已知的各种其它电路。系统1000包括至少一个存储器1020(例如,易失性存储器设备和/或非易失性存储器设备)。系统1000包括存储设备1040,其可以包括非易失性存储器和/或易失性存储器,包括但不限于EEPROM、ROM、PROM、RAM、DRAM、SRAM、闪存、磁盘驱动器和/或光盘驱动器。作为非限制性示例,存储设备1040可以包括内部存储设备、附接的存储设备和/或网络可访问的存储设备。
系统1000包括编码器/解码器模块1030,其被配置为例如处理数据以提供编码视频或解码视频,并且编码器/解码器模块1030可以包括其自己的处理器和存储器。编码器/解码器模块1030表示可包括在设备中以执行编码和/或解码功能的模块(一个或多个)。如已知的,设备可以包括编码和解码模块中的一者或两者。另外,编码器/解码器模块1030可实施为系统1000的单独元件或可并入处理器1010内作为如所属领域的技术人员已知的硬件与软件的组合。
要加载到处理器1010或编码器/解码器模块1030上以执行本文档中描述的各种实施例的程序代码可以存储在存储设备1040中,并且随后加载到存储器1020上以供处理器1010执行。根据各种实施例,处理器1010、存储器1020、存储设备1040和编码器/解码器模块1030中的一者或多者可以在执行本文中描述的过程期间存储各种项中的一个或多个。这些存储的项可以包括但不限于输入视频、解码视频或解码视频的部分、比特流或信号、矩阵、变量以及来自等式、公式、运算和运算逻辑的处理的中间或最终结果。
在若干实施例中,处理器1010和/或编码器/解码器模块1030内的存储器用于存储指令,且提供用于在编码或解码期间需要的处理的工作存储器。然而,在其它实施例中,处理设备(例如,处理设备可为处理器1010或编码器/解码器模块1030)外部的存储器用于这些功能中的一者或一者以上。外部存储器可以是存储器1020和/或存储设备1040,例如,动态易失性存储器和/或非易失性闪存。在若干实施例中,外部非易失性闪存用于存储电视的操作系统。在至少一个实施例中,诸如RAM的快速外部动态易失性存储器被用作视频编码和解码操作的工作存储器,诸如MPEG-2、HEVC或VVC(通用视频编码)。
如框1130中所示,可以通过各种输入设备来提供对系统1000的元件的输入。这样的输入设备包括但不限于(i)接收例如由广播方通过空中传输的RF信号的RF部分,(ii)复合输入端子,(iii)USB输入端子,和/或(iv)HDMI输入端子。
在各种实施例中,框1130的输入设备具有本领域已知的相关联的相应输入处理元件。例如,RF部分可以与用于以下的元件相关联:(i)选择期望频率(也称为选择信号,或将信号频带限制到频带),(ii)下变频选择的信号,(iii)再次频带限制到较窄频带以选择(例如)在某些实施例中可以称为信道的信号频带,(iv)解调下变频和频带限制的信号,(v)执行纠错,和(vi)解复用以选择期望的数据分组流。各种实施例的RF部分包括一个或多个元件以执行这些功能,例如,频率选择器、信号选择器、限带器、信道选择器、滤波器、下变频器、解调器、纠错器和解复用器。RF部分可以包括执行各种这些功能的调谐器,这些功能包括例如将接收信号下变频到较低频率(例如,中频或近基带频率)或基带。在一个机顶盒实施例中,RF部分及其相关的输入处理元件接收通过有线(例如,电缆)介质发送的RF信号,并通过滤波、下变频和再次滤波到期望的频带来执行频率选择。各种实施例重新安排上述(和其它)元件的顺序,移除这些元件中的一些,和/或添加执行类似或不同功能的其它元件。添加元件可以包括在现有元件之间插入元件,例如,插入放大器和模数转换器。在各种实施例中,RF部分包括天线。
另外,USB和/或HDMI终端可以包括用于通过USB和/或HDMI连接将系统1000连接到其它电子设备的相应接口处理器。应当理解,输入处理的各个方面,例如,里德-所罗门纠错,可以在例如单独的输入处理IC或处理器1010内实现。类似地,USB或HDMI接口处理的各方面可以在单独的接口IC内或在处理器1010内实现。解调、纠错和解复用的流被提供给各种处理元件,包括例如处理器1010和编码器/解码器1030,其与存储器和存储元件结合操作以处理数据流以便在输出设备上呈现。
系统1000的各元件可设置在集成壳体内,在集成壳体内,各元件可使用合适的连接装置1140互连并在其间传输数据,所述连接装置1140例如本领域已知的内部总线,包括I2C总线、布线和印刷电路板。
系统1000包括通信接口1050,其使得能够经由通信信道1060与其他设备通信。通信接口1050可以包括但不限于被配置为通过通信信道1060发送和接收数据的收发器。通信接口1050可以包括但不限于调制解调器或网卡,并且通信信道1060可以例如在有线和/或无线介质内实现。
在各种实施例中,使用诸如IEEE 802.11的Wi-Fi网络将数据流传输到系统1000。这些实施例的Wi-Fi信号通过例如适于Wi-Fi通信的通信信道1060和通信接口1050被接收。这些实施例的通信信道1060通常连接到接入点或路由器,所述接入点或路由器提供对包括因特网的外部网络的接入以允许流式应用和其它过顶通信。其它实施例使用通过输入框1130的HDMI连接传递数据的机顶盒向系统1000提供流数据。还有一些实施例使用输入框1130的RF连接向系统1000提供流数据。
系统1000可以向各种输出设备提供输出信号,包括显示器1100、扬声器1110和其他外围设备1120。在各实施例的各示例中,其他外围设备1120包括以下中的一者或多者:独立DVR、盘播放器、立体声系统、照明系统、以及基于系统1000的输出提供功能的其他设备。在各种实施例中,使用信令在系统1000和显示器1100、扬声器1110或其它外围设备1120之间传送控制信号,所述信令诸如AV.链路、CEC或其他通信协议,其使得能够在有或没有用户干预的情况下进行设备到设备控制。输出设备可以经由通过相应接口1070、1080和1090的专用连接通信地耦合到系统1000。或者,输出设备可以使用通信信道1060经由通信接口1050连接到系统1000。显示器1100和扬声器1110可以与系统1000的其它组件一起集成在电子设备(例如电视机)中的单个单元中。在各种实施例中,显示接口1070包括显示驱动器,例如,定时控制器(T Con)芯片。
例如,如果输入1130的RF部分是单独机顶盒的一部分,则显示器1100和扬声器1110可以备选地与其它组件中的一个或多个组件分离。在显示器1100和扬声器1110是外部组件的各种实施例中,输出信号可以经由专用输出连接来提供,所述专用输出连接例如包括HDMI端口、USB端口或COMP输出。
实施例可以由处理器1010、或硬件、或硬件和软件的组合实现的计算机软件来执行。作为非限制性示例,实施例可以由一个或多个集成电路实现。存储器1020可以是适合于技术环境的任何类型,并且可以使用任何适当的数据存储技术来实现,作为非限制性示例,诸如光学存储器设备、磁存储器设备、基于半导体的存储器设备、固定存储器和可移动存储器。处理器1010可以是适合于技术环境的任何类型,并且可以包含作为非限制性示例的以下一者或多者:微处理器、通用计算机、专用计算机和基于多核架构的处理器。
贯穿本公开,各种实现方式涉及解码。如本申请中所使用的,“解码”可以包括例如对接收到的编码序列执行的全部或部分过程,以便产生适合于显示的最终输出。在各种实施例中,此类过程包括通常由解码器执行的过程中的一者或多者,例如熵解码、逆量化、逆变换和差分解码。在各种实施例中,此类过程还或替代地包含由本申请中所描述的各种实施方案的解码器执行的过程,例如,从图块化(打包)的图片中提取图片,确定要使用的上采样滤波器并对图片执行上采样,以及将图片翻转回其预期的方向。
作为进一步的示例,在一个实施例中,“解码”仅指熵解码,在另一实施例中,“解码”仅指差分解码,并且在另一实施例中,“解码”指熵解码和差分解码的组合。短语“解码过程”是否旨在具体地指代操作的子集或一般地指代更广泛的解码过程基于具体描述的上下文将是清楚的,并且相信是本领域技术人员所充分理解的。
各种实现涉及编码。以与以上关于“解码”的讨论类似的方式,如在本申请中使用的“编码”可以包括例如对输入视频序列执行的以便产生编码比特流的过程的全部或部分。在各种实施例中,此类过程包括通常由编码器执行的一个或多个过程,例如,分割、差分编码、变换、量化和熵编码。在各种实施例中,这样的过程还或替代地包括由本申请中描述的各种实现的编码器执行的过程。
作为进一步的示例,在一个实施例中,“编码”仅指熵编码,在另一实施例中,“编码”仅指差分编码,而在另一实施例中,“编码”指差分编码和熵编码的组合。短语“编码过程”是否旨在具体地指代操作的子集或一般地指代更广泛的编码过程将基于具体描述的上下文而变得清楚,并且相信是本领域技术人员所充分理解的。
注意,这里使用的语法元素是描述性术语。因此,它们不排除使用其它语法元素名称。
当附图被呈现为流程图时,应当理解,它还提供了对应装置的框图。类似地,当附图被呈现为框图时,应当理解,它还提供了对应的方法/过程的流程图。
各种实施例涉及率失真优化。特别地,在编码过程期间,通常考虑码率和失真之间的平衡或折衷,通常给出计算复杂度的约束。率失真优化通常被公式化为最小化率失真函数,率失真函数是码率和失真的加权和。存在不同的方法来解决率失真优化问题。例如,这些方法可以基于对所有编码选项的广泛测试,包括所有考虑的模式或译码参数值,在译码和解码之后对它们的译码成本和重构信号的相关失真进行完整评估。还可以使用更快的方法来节省编码复杂度,特别是基于预测或预测残差信号而不是重构信号来计算近似失真。还可以使用这两种方法的混合,例如通过仅对一些可能的编码选项使用近似失真,而对其他编码选项使用完全失真。其它方法仅评估可能的编码选项的子集。更一般地,许多方法采用各种技术中的任何一种来执行优化,但是优化不一定是对编码成本和相关失真两者的完整评估。
本文描述的实现方式和方面可以在例如方法或过程、装置、软件程序、数据流或信号中实现。即使仅在单一形式的实现的上下文中讨论(例如,仅作为方法讨论),所讨论的特征的实现也可以以其他形式(例如,装置或程序)来实现。例如,可以以适当的硬件、软件和固件来实现装置。所述方法可以在例如处理器中实现,所述处理器通常指处理设备,包括例如计算机、微处理器、集成电路或可编程逻辑设备。处理器还包括通信设备,例如计算机、蜂窝电话、便携式/个人数字助理(“PDA”)和便于终端用户之间的信息通信的其他设备。
对“一个实施例”、或“一实施例”、或“实现”、或“一个实现”以及其它变化形式的提及意味着结合实施例描述的特定特征、结构、特性等包含于至少一个实施例中。因此,在贯穿本文的各个地方出现的短语“在一个实施例中”、或“在实施例中”、或“在一个实现中”、或“在实现中”以及任何其他变型的出现不一定都指同一实施例。
另外,本文档可以提到“获得”各种信息片段。获得信息可以包括例如以下一者或多者:确定信息、估计信息、计算信息、预测信息或从存储器检索信息。
此外,本文档可以提到“访问”各种信息片段。访问信息可以包括例如以下一者或多者:接收信息、检索信息(例如,从存储器)、存储信息、移动信息、复制信息、计算信息、确定信息、预测信息或估计信息。
另外,本文档可以提到“接收”各种信息。如同“访问”一样,接收旨在是广义的术语。接收信息可以包括例如以下一者或多者:访问信息或(例如从存储器)检索信息。此外,在诸如存储信息、处理信息、发送信息、移动信息、复制信息、擦除信息、计算信息、确定信息、预测信息或估计信息的操作期间,通常以一种方式或另一种方式涉及“接收”。
应当理解,例如在“A/B”、“A和/或B”以及“A和B中的至少一者”的情况下,使用以下“/”、“和/或”以及“的至少一者”中的任何一者旨在涵盖仅对第一列出的选项(A)的选择、或仅对第二列出的选项(B)的选择、或对两个选项(A和B)的选择。作为进一步的例子,在“A、B和/或C”和“A、B和C中的至少一者”的情况下,这样的措词旨在包括仅选择第一个列出的选项(A),或者仅选择第二个列出的选项(B),或者仅选择第三个列出的选项(C),或者仅选择第一个和第二个列出的选项(A和B),或者仅选择第一个和第三个列出的选项(A和C),或者仅选择第二个和第三个列出的选项(B和C),或者选择所有三个选项(A和B和C)。如本领域和相关领域的普通技术人员所清楚的,这可以扩展到所列的多个项目。
此外,如本文所使用的,词语“信号/用信号通知”尤其是指向对应的解码器指示某物。例如,在某些实施例中,编码器用信号通知将用于帧内预测参考阵列的多个权重中的特定一者。这样,在实施例中,在编码器侧和解码器侧使用相同的参数。因此,例如,编码器可以向解码器发送(显式信令)特定参数,使得解码器可以使用相同的特定参数。相反,如果解码器已经具有特定参数以及其它参数,则可以使用信令而不进行发送(隐式信令),以简单地允许解码器知道并选择特定参数。通过避免任何实际功能的传输,在各种实施例中实现了比特节省。应当理解,可以以各种方式来实现信令。例如,在各种实施例中,一个或多个语法元素、标志等被用于将信息用信号通知给对应的解码器。虽然前述内容涉及词语“信号/用信号通知”的动词形式,但是词语“信号/用信号通知”在本文中也可以用作名词。
如对于本领域普通技术人员将显而易见的,实现可以产生被格式化以携带例如可以被存储或发送的信息的各种信号。该信息可以包括例如用于执行方法的指令,或者由所描述的实现之一产生的数据。例如,信号可以被格式化以携带所描述的实施例的比特流。这种信号可以被格式化为例如电磁波(例如,使用频谱的射频部分)或基带信号。格式化可以包括例如对数据流进行编码并且利用编码的数据流对载波进行调制。信号携带的信息可以是例如模拟或数字信息。如已知的,信号可以通过各种不同的有线或无线链路来传输。该信号可以存储在处理器可读介质上。
已经描述了各种实施例。实施例可以包括跨越各种不同的权利要求类别和类型的单独的或以任何组合的以下特征或实体中的任何特征或实体:
·在所述编码器和/或解码器中提供基于被考虑以构造当前块的时空运动矢量预测值的减少数量的时空候选位置来确定块的运动矢量的时空运动矢量预测值。
·在所述编码器和/或解码器中提供时空运动矢量推导,以基于在所述STMVP合并候选的构造中考虑减少数量的空间位置,生成作为在所述合并模式中使用的所述合并候选列表的一部分的一些候选运动数据候选预测值。
·在所述编码器和/或解码器中提供合并候选,所述合并候选者是根据从所述当前CU周围的仅考虑两个空间位置且未检索时间候选的空间位置取得的至少两个运动矢量之间的平均来确定或获得。
·在所述编码器和/或解码器中提供合并候选,所述合并候选者是根据从所述当前CU周围的仅考虑两个空间位置的空间位置取得的至少两个运动矢量之间的平均值来确定或获得的,不检索时间候选,且在沿着当前PU的顶部和左边缘的中间位置处取得所述两个所设想的候选。
·在所述编码器和/或解码器中提供合并候选,所述合并候选是根据位于沿着当前PU的所述顶部边缘和所述左边缘的中间位置处的两个空间候选MV与时间候选MV之间的平均来确定或获得的。
·在所述编码器和/或解码器中提供在当前CU的下方和右侧的空间位置处被检索的所述时间候选MV。
·在所述编码器和/或解码器中提供策略,以决定所提出的STMVP是否可用。
·在编码器和/或解码器中提供构造合并候选的列表的改进顺序。
·在所述编码器和/或解码器中提供用于构建时空MV预测值的步骤,从而提高译码效率。
·在所述编码器和/或解码器中提供关于所述AMVP帧间译码模式的所提出的STMVP运动矢量预测值的使用。
·在信令中插入使得编码器和/或解码器能够提供如本文所述的时空运动矢量推导的语法元素。
·基于这些语法元素选择要在解码器处应用的时空运动矢量推导。
·包括一个或多个所描述的语法元素或其变型的比特流或信号。
·在所述信令中插入语法元素,所述语法元素使得所述解码器能够以对应于编码器所使用的方式提供时空运动矢量推导。
·创建和/或发送和/或接收和/或解码包括一个或多个所描述的语法元素或其变型的比特流或信号。
·TV、机顶盒、蜂窝电话、平板电脑或根据所描述的实施例中的任一者执行时空运动矢量推导的其它电子设备。
·TV、机顶盒、蜂窝电话、平板电脑或根据所描述的实施例中的任一者执行时空运动矢量导出且显示(例如,使用监视器、屏幕或其它类型的显示器)所得图像的其它电子设备。
·TV、机顶盒、蜂窝电话、平板电脑或其他电子设备,其调谐(例如,使用调谐器)信道以接收包括编码图像的信号,并且根据所描述的任何实施例执行时空运动矢量推导。
·TV、机顶盒、蜂窝电话、平板电脑或其他电子设备,其通过空中接收(例如,使用天线)包括编码图像的信号,并且根据所描述的实施例中的任何一个实施例执行时空运动矢量推导。
·一种存储程序代码的计算机程序产品,所述程序代码在由计算机执行时实施根据所描述的实施例中的任一者的时空运动矢量导出。
·一种包括可执行程序指令的非瞬态计算机可读介质,所述可执行程序指令使计算机执行所述指令以实现根据所描述的实施例中的任一者的时空运动矢量推导。
在本公开中,还支持和设想了各种其它一般化的以及特殊化的实施例。

Claims (30)

1.一种用于编码视频数据的装置,包括:
一个或多个处理器,其中所述一个或多个处理器被配置用于:
基于在与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、以及与和所述当前块相关联的第三空间位置共位的时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得第一时空运动矢量预测候选,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;
基于获得的所述第一时空运动矢量预测候选来修改第一值;
基于所述第一值与表示非子块时空运动矢量预测候选的有序集合中的位置的第二值具有关系,并且基于在第三或第四空间运动矢量或所述时间运动矢量之中可用的至少两个运动矢量,获得第二时空运动矢量预测候选,其中所述第三和第四空间运动矢量与不同于所述第一和第二空间位置的第五和第六空间位置相关联,以及其中所述第五空间位置邻近所述当前块的左边,并且所述第六空间位置邻近所述当前块的上方;
将所述第一和第二时空运动矢量预测候选的至少一者包括在所述非子块时空运动矢量预测候选的有序集合中;以及
基于所述第一和第二时空运动矢量预测候选中的所述至少一者,编码所述视频数据以产生经编码视频数据。
2.一种用于编码视频数据的方法,包括:
基于在与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、以及与和所述当前块相关联的第三空间位置共位的时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得第一时空运动矢量预测候选,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;
基于获得的所述第一时空运动矢量预测候选来修改第一值;
基于所述第一值与表示非子块时空运动矢量预测候选的有序集合中的位置的第二值具有关系,并且基于在第三或第四空间运动矢量或所述时间运动矢量之中可用的至少两个运动矢量,获得第二时空运动矢量预测候选,其中所述第三和第四空间运动矢量与不同于所述第一和第二空间位置的第五和第六空间位置相关联,以及其中所述第五空间位置邻近所述当前块的左边,并且所述第六空间位置邻近所述当前块的上方;
将所述第一和第二时空运动矢量预测候选的至少一者包括在所述非子块时空运动矢量预测候选的有序集合中;以及
基于所述第一和第二时空运动矢量预测候选中的所述至少一者,编码所述视频数据以产生经编码视频数据。
3.一种用于解码视频数据的装置,包括:
一个或多个处理器,其中所述一个或多个处理器被配置用于:
基于在与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、以及与和所述当前块相关联的第三空间位置共位的时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得第一时空运动矢量预测候选,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;
基于获得的所述第一时空运动矢量预测候选来修改第一值;
基于所述第一值与表示非子块时空运动矢量预测候选的有序集合中的位置的第二值具有关系,并且基于在第三或第四空间运动矢量或所述时间运动矢量之中可用的至少两个运动矢量,获得第二时空运动矢量预测候选,其中所述第三和第四空间运动矢量与不同于所述第一和第二空间位置的第五和第六空间位置相关联,以及其中所述第五空间位置邻近所述当前块的左边,并且所述第六空间位置邻近所述当前块的上方;
将所述第一和第二时空运动矢量预测候选的至少一者包括在所述非子块时空运动矢量预测候选的有序集合中;以及
基于所述第一和第二时空运动矢量预测候选中的所述至少一者,解码所述视频数据以产生经解码视频数据。
4.一种用于解码视频数据的方法,包括:
基于在与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、以及与和所述当前块相关联的第三空间位置共位的时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得第一时空运动矢量预测候选,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;
基于获得的所述第一时空运动矢量预测候选来修改第一值;
基于所述第一值与表示非子块时空运动矢量预测候选的有序集合中的位置的第二值具有关系,并且基于在第三或第四空间运动矢量或所述时间运动矢量之中可用的至少两个运动矢量,获得第二时空运动矢量预测候选,其中所述第三和第四空间运动矢量与不同于所述第一和第二空间位置的第五和第六空间位置相关联,以及其中所述第五空间位置邻近所述当前块的左边,并且所述第六空间位置邻近所述当前块的上方;
将所述第一和第二时空运动矢量预测候选的至少一者包括在所述非子块时空运动矢量预测候选的有序集合中;以及
基于所述第一和第二时空运动矢量预测候选中的所述至少一者,解码所述视频数据以产生经解码视频数据。
5.一种用于编码视频数据的装置,包括:
一个或多个处理器,其中所述一个或多个处理器被配置用于:
确定与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、或与邻近所述当前块的第三空间位置共位的时间运动矢量中至少两个运动矢量可用,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;
基于在所述第一或第二空间运动矢量或所述时间运动矢量中可用的所述至少两个运动矢量的组合,获得第一时空运动矢量预测候选;以及
基于所述第一和第二空间运动矢量、和所述时间运动矢量的所有三个运动矢量可用且基于所述三个可用运动矢量的多个组合中的一者,获得第二时空运动矢量预测候选,所述组合包括:
a)所述第一和第二空间运动矢量的第一组合;或
b)所述第一空间运动矢量和所述时间运动矢量的第二组合;或
c)所述第二空间运动矢量和所述时间运动矢量的第三组合,其中获得所述第二时空运动矢量所基于的所述多个组合中的所述一者不同于获得所述第一时空运动矢量所基于的所述至少两个运动矢量的所述组合;以及
基于所述第一和第二时空运动矢量预测候选中的至少一者,编码所述视频数据以产生经编码视频数据。
6.一种用于编码视频数据的方法,包括:
确定与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、或与邻近所述当前块的第三空间位置共位的时间运动矢量中至少两个运动矢量可用,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;
基于在所述第一或第二空间运动矢量或所述时间运动矢量中可用的所述至少两个运动矢量的组合,获得第一时空运动矢量预测候选;以及
基于所述第一和第二空间运动矢量、和所述时间运动矢量的所有三个运动矢量可用且基于所述三个可用运动矢量的多个组合中的一者,获得第二时空运动矢量预测候选,所述组合包括:
a)所述第一和第二空间运动矢量的第一组合;或
b)所述第一空间运动矢量和所述时间运动矢量的第二组合;或
c)所述第二空间运动矢量和所述时间运动矢量的第三组合,其中获得所述第二时空运动矢量所基于的所述多个组合中的所述一者不同于获得所述第一时空运动矢量所基于的所述至少两个运动矢量的所述组合;以及
基于所述第一和第二时空运动矢量预测候选中的至少一者,编码所述视频数据以产生经编码视频数据。
7.一种用于解码视频数据的装置,包括:
一个或多个处理器,其中所述一个或多个处理器被配置用于:
确定与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、或与邻近所述当前块的第三空间位置共位的时间运动矢量中至少两个运动矢量可用,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;
基于在所述第一或第二空间运动矢量或所述时间运动矢量中可用的所述至少两个运动矢量的组合,获得第一时空运动矢量预测候选;以及
基于所述第一和第二空间运动矢量、和所述时间运动矢量的所有三个运动矢量可用且基于所述三个可用运动矢量的多个组合中的一者,获得第二时空运动矢量预测候选,所述组合包括:
a)所述第一和第二空间运动矢量的第一组合;或
b)所述第一空间运动矢量和所述时间运动矢量的第二组合;或
c)所述第二空间运动矢量和所述时间运动矢量的第三组合,其中获得所述第二时空运动矢量所基于的所述多个组合中的所述一者不同于获得所述第一时空运动矢量所基于的所述至少两个运动矢量的所述组合;以及
基于所述第一和第二时空运动矢量预测候选中的至少一者,解码所述视频数据以产生经解码视频数据。
8.一种用于解码视频数据的方法,包括:
确定与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、或与邻近所述当前块的第三空间位置共位的时间运动矢量中至少两个运动矢量可用,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;
基于在所述第一或第二空间运动矢量或所述时间运动矢量中可用的所述至少两个运动矢量的组合,获得第一时空运动矢量预测候选;以及
基于所述第一和第二空间运动矢量、和所述时间运动矢量的所有三个运动矢量可用且基于所述三个可用运动矢量的多个组合中的一者,获得第二时空运动矢量预测候选,所述组合包括:
a)所述第一和第二空间运动矢量的第一组合;或
b)所述第一空间运动矢量和所述时间运动矢量的第二组合;或
c)所述第二空间运动矢量和所述时间运动矢量的第三组合,其中获得所述第二时空运动矢量所基于的所述多个组合中的所述一者不同于获得所述第一时空运动矢量所基于的所述至少两个运动矢量的所述组合;以及
基于所述第一和第二时空运动矢量预测候选中的至少一者,解码所述视频数据以产生经解码视频数据。
9.根据权利要求5-8中任意项所述的装置或方法,其中所述一个或多个处理器进一步被配置用于,或所述方法进一步包括:
基于所述多个组合中的第二组合来获得第三时空运动矢量预测候选,其中所述多个组合中的所述第二组合不同于获得所述第一时空运动矢量预测候选所基于的所述组合和获得所述第二时空运动矢量预测候选所基于的所述多个组合中的所述一者。
10.一种用于编码视频数据的装置,包括:
一个或多个处理器,其中所述一个或多个处理器被配置用于:
确定在与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、和与邻近所述当前块的右边且邻接所述当前块的右下角的第三空间位置共位的时间运动矢量中至少两个运动矢量可用,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;
基于所述第一和第二空间运动矢量以及所述时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得时空运动矢量预测候选;以及
基于所述时空运动矢量预测候选,对所述视频数据进行编码以产生经编码视频数据。
11.一种用于编码视频数据的方法,包括:
确定在与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、和与邻近所述当前块的右边且邻接所述当前块的右下角的第三空间位置共位的时间运动矢量中至少两个运动矢量可用,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;
基于所述第一和第二空间运动矢量以及所述时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得时空运动矢量预测候选;以及
基于所述时空运动矢量预测候选,对所述视频数据进行编码以产生经编码视频数据。
12.一种用于解码视频数据的装置,包括:
一个或多个处理器,其中所述一个或多个处理器被配置用于:
确定在与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、和与邻近所述当前块的右边且邻接所述当前块的右下角的第三空间位置共位的时间运动矢量中至少两个运动矢量可用,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;
基于所述第一和第二空间运动矢量以及所述时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得时空运动矢量预测候选;以及
基于所述时空运动矢量预测候选,对所述视频数据进行解码以产生经解码视频数据。
13.一种用于解码视频数据的方法,包括:
确定在与邻近当前块的相应第一和第二空间位置相关联的第一或第二空间运动矢量、和与邻近所述当前块的右边且邻接所述当前块的右下角的第三空间位置共位的时间运动矢量中至少两个运动矢量可用,其中所述第一空间位置邻近所述当前块的左边且所述第二空间位置邻近所述当前块的上方;
基于所述第一和第二空间运动矢量以及所述时间运动矢量中可用的至少两个运动矢量,且基于可用的所述至少两个运动矢量的组合,获得时空运动矢量预测候选;以及
基于所述时空运动矢量预测候选,对所述视频数据进行解码以产生经解码视频数据。
14.根据前述权利要求中任意项所述的装置或方法,其中,所述一个或多个处理器进一步被配置用于或者所述方法进一步包括:对正在组合的一个或多个空间运动矢量应用缩放,或者如果缩放没有被应用,则所述确定包括:
基于相应的参考图片索引,选择空间运动矢量预测值对,其中所述选择包括:为了当前CU的顶部和左边邻近运动矢量,搜索满足置于所述参考图片索引上的条件的多个邻近空间位置;以及
基于所选择的空间运动矢量预测值对,获得所述时空运动矢量预测值。
15.根据权利要求1-13中任意项所述的装置或方法,其中所述一个或多个处理器进一步被配置用于或者所述方法进一步包括:对正被平均的一个或多个空间运动矢量应用缩放,或者如果缩放没有被应用,则所述确定包括:
基于满足置于所述参考图片索引上的条件的各个参考图片索引,从基于历史的运动矢量预测值缓冲器中选择空间运动矢量预测值对;以及
基于所选择的空间运动矢量预测值对,获得所述时空运动矢量预测值。
16.根据权利要求14或15所述的装置或方法,其中所述条件包括:
如果在由所考虑的空间运动矢量候选使用的每一参考图片列表中,所述参考图片索引等于0,那么空间运动矢量候选对可被选择;或
如果在由两个空间运动矢量候选使用的每一参考图片列表中,所述两个候选的所述参考图片索引相等,那么空间运动矢量候选对可被选择;或
如果所述两个空间候选的所述参考图像索引彼此相等并且等于零,则所述时空运动矢量预测值基于所述时间运动矢量预测值而被获得;或
如果所述两个空间候选的所述参考图像索引彼此相等但不等于零,则所述平均的时空运动矢量预测值基于所述时间运动矢量预测值而被获得。
17.根据前述权利要求中任意项所述的装置或方法,进一步包括基于一指示所述时空运动矢量预测候选的相关性的准则,确定是否将至少一个所获得的时空运动矢量预测候选添加到合并候选列表。
18.根据权利要求17所述的装置或方法,其中所述准则包括确定所述平均的结果的L范数与所述至少一个时空运动矢量的所述获得所基于的所述至少两个运动矢量中的每一者的所述L范数相比是否可忽略。
19.根据权利要求17或18所述的装置或方法,其中确定是否将至少一个所获得的时空运动矢量预测候选添加到所述合并候选列表包括:
确定所述至少一个时空运动矢量预测候选是否冗余于所述合并候选列表中的任何其它候选,且仅在所述至少一个时空运动矢量预测候选不冗余的情况下,将所述至少一个时空运动矢量预测候选添加到所述合并候选列表。
20.根据权利要求17-19中任一权利要求所述的装置或方法,其中确定是否将至少一个所获得的时空运动矢量预测候选包括于所述合并候选列表中是基于在考虑所述至少一个所获得的时空运动矢量预测值候选时,相对于所述合并候选者列表的最大允许大小,所述合并候选列表的大小。
21.根据权利要求17-20中任一权利要求所述的装置或方法,其中所述至少一个所获得的时空运动矢量预测候选基于包括于所述合并候选列表中的候选的排序而被包括于所述合并候选列表中,其中所述排序包括以下中的一者:
-将所述至少一个获得的时空运动矢量预测候选放置在所述列表中的第四位置;或
-将所述至少一个获得的时空运动矢量预测候选放置在所述列表中一基于替代的时间运动矢量预测候选的位置而被确定的位置处;或
-将所述至少一个获得的时空运动矢量预测候选放置在所述列表中一提供比所述列表中除了替代时间运动矢量预测候选和左邻近候选和上邻近候选之外的所有候选更高的优先级的位置处;或
-将所述至少一个获得的时空运动矢量预测候选放置在所述列表中包括的基于历史的运动矢量预测候选之前或之后;或
-将所述至少一个获得的时空运动矢量预测候选与在所述列表中包括的基于历史的运动矢量预测候选交错;或
-将所述至少一个获得的时空运动矢量预测候选与在所述列表中包括的一个或多个成对平均候选交错。
22.根据前述权利要求中任意项所述的装置或方法,其中所述组合或所述多个组合中的一个或多个组合基于可用运动矢量的平均而被获得。
23.根据权利要求22所述的装置或方法,其中所述平均包括加权平均。
24.根据权利要求23所述的装置或方法,其中所述加权平均值包括多个加权平均,所述多个加权平均中的每一个加权平均基于多个权重中的相应一个权重。
25.根据前述权利要求中任意项所述的装置或方法,其中所述第一和第二空间位置分别对应于沿着所述当前块的顶部边缘的中间位置和沿着所述当前块的左边缘的中间位置。
26.根据前述权利要求中任意项所述的装置或方法,其中,一个或多个所获得的时空运动矢量预测候选被使用在自适应运动矢量预测操作模式中。
27.一种计算机程序产品,包括计算指令,所述计算指令用于在由一个或多个处理器执行时执行根据权利要求2、4、6、8、11和13-26中任意项所述的方法。
28.一种存储可执行程序指令的非暂时性计算机可读介质,所述可执行程序指令使执行所述指令的计算机执行根据权利要求2、4、6、8、11和13-26中任意项所述的方法。
29.一种比特流,其经格式化以包括经编码视频数据,其中所述经编码视频数据包括:
与根据权利要求2、4、6、8、11和13-26中任意项所述的方法获得时空运动矢量预测候选相关联的指示符;以及
基于所述时空运动矢量预测候选而被编码的图片数据。
30.一种设备,包括:
根据权利要求1、3、5、7、10、12和14-26中任意项所述的设备;以及
以下至少一者:(i)天线,被配置为接收信号,所述信号包括表示所述视频数据的数据,(ii)频带限制器,被配置为将所接收的信号限制到包括表示所述视频数据的所述数据的频带,以及(iii)显示器,被配置为显示来自所述视频数据的图像。
CN201980061798.1A 2018-09-21 2019-09-20 视频编码和解码中的运动矢量预测 Pending CN112753222A (zh)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
EP18306229.8 2018-09-21
EP18306229 2018-09-21
EP18306276 2018-09-28
EP18306276.9 2018-09-28
EP18306292 2018-10-02
EP18306292.6 2018-10-02
EP18306635 2018-12-06
EP18306635.6 2018-12-06
EP19305239.6 2019-03-01
EP19305239 2019-03-01
PCT/US2019/052052 WO2020061395A1 (en) 2018-09-21 2019-09-20 Motion vector prediction in video encoding and decoding

Publications (1)

Publication Number Publication Date
CN112753222A true CN112753222A (zh) 2021-05-04

Family

ID=68073270

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980061798.1A Pending CN112753222A (zh) 2018-09-21 2019-09-20 视频编码和解码中的运动矢量预测

Country Status (4)

Country Link
US (1) US11595685B2 (zh)
EP (1) EP3854095A1 (zh)
CN (1) CN112753222A (zh)
WO (1) WO2020061395A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113228676A (zh) * 2018-11-29 2021-08-06 交互数字Vc控股公司 在合并列表中运动矢量预测量候选排序
EP3939268A1 (en) * 2019-03-11 2022-01-19 VID SCALE, Inc. Intra sub-partitions in video coding
KR20210128497A (ko) * 2019-03-11 2021-10-26 인터디지털 브이씨 홀딩스 인코포레이티드 비디오 인코딩 및 디코딩을 위한 엔트로피 코딩

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160219278A1 (en) * 2015-01-26 2016-07-28 Qualcomm Incorporated Sub-prediction unit based advanced temporal motion vector prediction
WO2017091007A1 (ko) * 2015-11-24 2017-06-01 삼성전자 주식회사 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치
CN107113424A (zh) * 2014-11-18 2017-08-29 联发科技股份有限公司 基于来自单向预测的运动矢量和合并候选的双向预测视频编码方法
US20170332099A1 (en) * 2016-05-13 2017-11-16 Qualcomm Incorporated Merge candidates for motion vector prediction for video coding
CN107690809A (zh) * 2015-06-11 2018-02-13 高通股份有限公司 使用空间及/或时间运动信息的子预测单元运动向量预测
US20180070100A1 (en) * 2016-09-06 2018-03-08 Qualcomm Incorporated Geometry-based priority for the construction of candidate lists
CN108353184A (zh) * 2015-11-05 2018-07-31 联发科技股份有限公司 用于视频编解码的使用平均运动矢量的帧间预测的方法和装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7203237B2 (en) * 2003-09-17 2007-04-10 Texas Instruments Incorporated Transcoders and methods
US20100135395A1 (en) * 2008-12-03 2010-06-03 Marc Paul Servais Efficient spatio-temporal video up-scaling
US10298951B2 (en) * 2017-04-06 2019-05-21 Mediatek Inc. Method and apparatus of motion vector prediction
WO2019183906A1 (zh) * 2018-03-29 2019-10-03 华为技术有限公司 帧间预测的方法和装置
US20190387251A1 (en) * 2018-06-19 2019-12-19 Mediatek Inc. Methods and Apparatuses of Video Processing with Overlapped Block Motion Compensation in Video Coding Systems
US10965951B2 (en) * 2018-06-22 2021-03-30 Avago Technologies International Sales Pte. Limited Memory latency management for decoder-side motion refinement
US20200014931A1 (en) * 2018-07-06 2020-01-09 Mediatek Inc. Methods and Apparatuses of Generating an Average Candidate for Inter Picture Prediction in Video Coding Systems
US11146800B2 (en) * 2018-09-24 2021-10-12 Tencent America LLC Low latency local illumination compensation
US11012687B2 (en) * 2018-10-01 2021-05-18 Tencent America LLC Method and apparatus for video coding

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107113424A (zh) * 2014-11-18 2017-08-29 联发科技股份有限公司 基于来自单向预测的运动矢量和合并候选的双向预测视频编码方法
US20160219278A1 (en) * 2015-01-26 2016-07-28 Qualcomm Incorporated Sub-prediction unit based advanced temporal motion vector prediction
CN107690809A (zh) * 2015-06-11 2018-02-13 高通股份有限公司 使用空间及/或时间运动信息的子预测单元运动向量预测
CN108353184A (zh) * 2015-11-05 2018-07-31 联发科技股份有限公司 用于视频编解码的使用平均运动矢量的帧间预测的方法和装置
WO2017091007A1 (ko) * 2015-11-24 2017-06-01 삼성전자 주식회사 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치
US20170332099A1 (en) * 2016-05-13 2017-11-16 Qualcomm Incorporated Merge candidates for motion vector prediction for video coding
US20180070100A1 (en) * 2016-09-06 2018-03-08 Qualcomm Incorporated Geometry-based priority for the construction of candidate lists

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TIANYANG ZHOU ET AL: "Spatial-temporal merge mode (non subblock STMVP)(JVET-K0532_r2)", JVET 11TH MEETING:, pages 1 - 2 *

Also Published As

Publication number Publication date
US11595685B2 (en) 2023-02-28
EP3854095A1 (en) 2021-07-28
US20220030268A1 (en) 2022-01-27
WO2020061395A1 (en) 2020-03-26

Similar Documents

Publication Publication Date Title
US20220345744A1 (en) Secondary transform for video encoding and decoding
WO2020102067A1 (en) Virtual pipeline for video encoding and decoding
WO2020060808A1 (en) Local illumination compensation for video encoding and decoding using stored parameters
US11595685B2 (en) Motion vector prediction in video encoding and decoding
EP3878178A1 (en) Video encoding or decoding using block extension for overlapped block motion compensation
CN113302924A (zh) 用于视频编码和解码的量化
US20220060688A1 (en) Syntax for motion information signaling in video coding
CN113826397A (zh) 用于图像编码和解码的方法和设备
US11930184B2 (en) Motion vector derivation in video encoding and decoding
KR20220047729A (ko) 비디오 인코딩 및 디코딩을 위한 움직임 벡터 처리
US20230018401A1 (en) Motion vector prediction in video encoding and decoding
US11831872B2 (en) Video encoding and decoding using multiple transform selection
WO2021122416A1 (en) Subblock merge candidates in triangle merge mode
CN114208194A (zh) 用于视频编码和解码的帧间预测参数推导
WO2020096848A1 (en) Parameter grouping among plural coding units for video encoding and decoding
US20230024223A1 (en) Intra sub partitions for video encoding and decoding combined with multiple transform selection, matrix weighted intra prediction or multi-reference-line intra prediction
US20220345693A1 (en) Coding mode information propagation for video coding
US20210344925A1 (en) Block size based motion vector coding in affine mode
EP3706419A1 (en) Multi-model local illumination compensation for video encoding or decoding
KR20220052991A (ko) 스위칭가능한 보간 필터들

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination