CN114009033A - 用于用信号通知对称运动矢量差模式的方法和装置 - Google Patents

用于用信号通知对称运动矢量差模式的方法和装置 Download PDF

Info

Publication number
CN114009033A
CN114009033A CN202080040476.1A CN202080040476A CN114009033A CN 114009033 A CN114009033 A CN 114009033A CN 202080040476 A CN202080040476 A CN 202080040476A CN 114009033 A CN114009033 A CN 114009033A
Authority
CN
China
Prior art keywords
mvd
reference picture
motion vector
flag
smvd
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
CN202080040476.1A
Other languages
English (en)
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.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology 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 Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Publication of CN114009033A publication Critical patent/CN114009033A/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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/172Methods 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 picture, frame or field
    • 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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

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

Abstract

提供了用于对称运动矢量差(SMVD)模式的计算机实施的方法、装置和非暂时性计算机可读存储介质。该方法包括:获得与当前视频块相关联的第一和第二参考图片;获得当前视频块的第一参考图片列表;获得当前视频块的第二参考图片列表,第二参考图片列表包括第二参考图片;接收运动参数;通过将MVD加到与第一参考图片相关联的对应运动矢量预测值,来计算与第一参考图片相关联的第一运动矢量;通过从与第二参考图片相关联的对应运动矢量预测值中减去MVD,来计算与第二参考图片相关联的第二运动矢量;以及通过组合基于第一运动矢量和第二运动矢量生成的预测块,来获得当前视频块的预测信号。

Description

用于用信号通知对称运动矢量差模式的方法和装置
相关申请的交叉引用
本申请基于2019年5月30日提交的临时申请第62/854961号并要求其优先权,其全部内容通过整体引用而被并入本文。
技术领域
本公开涉及视频编解码和压缩。更具体地,本公开涉及关于对称运动矢量差(SMVD)模式的信令方法的方法和装置。
背景技术
可以使用各种视频编解码技术来压缩视频数据。根据一种或多种视频编解码标准来执行视频编解码。例如,视频编解码标准包括通用视频编解码(VVC)、联合探索测试模型(JEM)、高效视频编解码(H.265/HEVC)、高级视频编解码(H.264/AVC)、运动图片专家组(MPEG)编解码等。视频编解码一般使用预测方法(例如,帧间预测、帧内预测等),预测方法利用了视频图像或序列中存在的冗余。视频编解码技术的一个重要目标是将视频数据压缩成使用较低比特率的形式,同时避免或最小化视频质量的下降。
发明内容
本公开的示例提供了使用对称运动矢量差(SMVD)的用于视频解码的方法和装置。
根据本公开的第一方面,提供了一种用于对称运动矢量差(SMVD)模式的计算机实施的方法。该方法可以包括:在解码器处获得与当前视频块相关联的第一参考图片和第二参考图片。按照显示顺序,第一参考图片和第二参考图片中的一个参考图片可以在当前图片之前,并且另一个参考图片可以在当前图片之后。该方法还可以包括:在解码器处获得当前视频块的第一参考图片列表,第一参考图片列表包括第一参考图片。该方法可以包括:在解码器处获得当前视频块的第二参考图片列表,第二参考图片列表包括第二参考图片。该方法可以附加地包括:由解码器接收运动参数。运动参数由编码器基于SMVD模式用信号发送到比特流中。运动参数包括语法元素smvd_distance_idx和smvd_direction_idx,它们分别指定用于SMVD模式的运动矢量差(MVD)的幅值和方向。该方法可以包括:在解码器处,通过将MVD加到与第一参考图片相关联的对应运动矢量预测值,来计算与第一参考图片相关联的第一运动矢量。该方法还可以包括:在解码器处,通过从与第二参考图片相关联的对应运动矢量预测值中减去MVD,来计算与第二参考图片相关联的第二运动矢量。该方法可以包括:在解码器处,通过组合基于第一运动矢量和第二运动矢量生成的预测块,来获得当前视频块的预测信号。
根据本公开的第二方面,一种用于具有运动矢量差的合并模式(MMVD)的计算机实施的方法。该方法可以包括:由解码器接收语法元素。语法元素基于MMVD而被用信号发送到比特流中,以指示被加至所选择的合并候选的运动的运动矢量差(MVD)值,并且语法元素包括用于选择合并候选的合并候选标记。这些MVD值是MVD值的允许的动态范围内的任意数字。该方法还可以包括:基于所选择的合并候选的运动来获得当前视频块的预测信号。
根据本公开的第三方面,提供了一种用于解码视频信号的计算设备。计算设备可以包括一个或多个处理器、非暂时性计算机可读存储器,非暂时性计算机可读存储器存储由一个或多个处理器可执行的指令。一个或多个处理器可以被配置为获得与当前视频块相关联的第一参考图片和第二参考图片。按照显示顺序,第一参考图片和第二参考图片中的一个参考图片可以在当前图片之前,并且另一个参考图片可以在当前图片之后。一个或多个处理器还可以被配置为获得当前视频块的第一参考图片列表,第一参考图片列表包括第一参考图片。一个或多个处理器可以被配置为获得当前视频块的第二参考图片列表,第二参考图片列表包括第二参考图片。一个或多个处理器可以被配置为接收运动参数。运动参数由编码器基于对称运动矢量差(SMVD)模式用信号发送到比特流中。运动参数包括语法元素smvd_distance_idx和smvd_direction_idx,并且它们分别指定用于SMVD模式的运动矢量差(MVD)的幅值和方向。一个或多个处理器可以被配置为,通过将MVD加到与第一参考图片相关联的对应运动矢量预测值,来计算与第一参考图片相关联的第一运动矢量。一个或多个处理器可以被配置为,通过从与第二参考图片相关联的对应运动矢量预测值中减去MVD,来计算与第二参考图片相关联的第二运动矢量。一个或多个处理器可以被配置为,通过组合基于第一运动矢量和第二运动矢量生成的预测块,来获得当前视频块的预测信号。
根据本公开的第四方面,提供了一种非暂时性计算机可读存储介质,其中存储有指令。当指令由装置的一个或多个处理器执行时,指令可以使得装置执行:接收语法元素。语法元素基于具有运动矢量差的合并模式(MMVD)而被用信号发送到比特流中,以指示被加至所选择的合并候选的运动的运动矢量差(MVD)值,并且语法元素包括用于选择合并候选的合并候选标记。这些MVD值是MVD值的允许的动态范围内的任意数字。指令还可以使得装置执行:基于所选择的合并候选的运动来获得当前视频块的预测信号。
附图说明
并入本说明书并构成该说明书的一部分的附图图示了与本公开一致的示例,并且与描述一起用于解释本公开的原理。
图1是根据本公开的示例的编码器的框图。
图2是根据本公开的示例的解码器的框图。
图3A是图示根据本公开的示例的多类型树结构中的块分割的示图。
图3B是图示根据本公开的示例的多类型树结构中的块分割的示图。
图3C是图示根据本公开的示例的多类型树结构中的块分割的示图。
图3D是图示根据本公开的示例的多类型树结构中的块分割的示图。
图3E是图示根据本公开的示例的多类型树结构中的块分割的示图。
图4A是根据本公开的示例的对称运动矢量差(SMVD)模式的示图图示。
图4B是根据本公开的示例的SMVD模式的示图图示。
图4C是根据本公开的示例的SMVD模式的示图图示。
图5是根据本公开的用于SMVD模式的计算机实施的方法。
图6是根据本公开的用于具有运动矢量差的合并模式(MMVD)的计算机实施的方法。
图7是图示根据本公开的示例的与用户接口耦合的计算环境的示图。
具体实施方式
现在将详细参考示例实施例,其示例在附图中被图示。以下描述参考附图,其中不同附图中的相同数字表示相同或类似的元素,除非另有表示。在实施例的以下描述中阐述的实施方案并不表示与本公开一致的所有实施方案。相反,它们仅仅是与所附权利要求中记载的公开内容相关的各方面一致的装置和方法的示例。
本公开中使用的术语仅用于描述特定实施例的目的,并且不旨在限制本公开。如在本公开和所附权利要求中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文清楚地另有指示。还应当理解,本文所使用的术语“和/或”旨在表明和包括相关联的列出项目中的一个或多个项目的任何或所有可能的组合。
应当理解,尽管术语“第一”、“第二”、“第三”等在本文中可以用于描述各种信息,但是这些信息不应当被这些术语限制。这些术语仅用于区分一类信息和另一类信息。例如,在不脱离本公开的范围的情况下,第一信息可以被称为第二信息;并且类似地,第二信息也可以被称为第一信息。如本文所使用的,取决于上下文,术语“如果”可以被理解为意为“当……时”或“一经……”或“响应于判断”。
HEVC标准的第一版于2013年10月最终确定,与上一代视频编解码标准H.264/MPEGAVC相比,它提供了大约50%的比特率节省或同等的感知质量。尽管HEVC标准比其前身提供了显著的编解码改进,但有证据表明,可以使用附加的编解码工具来实现优于HEVC的编解码效率。基于此,VCEG和MPEG都开始了针对未来视频编解码标准化的新编解码技术的探索工作。2015年10月,ITU-T VECG和ISO/IEC MPEG成立了一个联合视频探索小组(JVET),开始对能够实现编解码效率的大幅提升的先进技术的重要研究。通过在HEVC测试模型(HM)之上集成若干附加的编解码工具,JVET维护了一个被称为联合探索模型(JEM)的参考软件。
2017年10月,ITU-T和ISO/IEC发布了关于具有超越HEVC的能力的视频压缩的联合提案征集(CfP)。2018年4月,在第10届JVET会议上,接收并评估了23份CfP响应,其展现出比HEVC高约40%的压缩效率增益。基于这样的评估结果,JVET启动了新的项目来开发新一代视频编解码标准,该标准被命名为通用视频编解码(VVC)。同月,建立了一个称为VVC测试模型(VTM)的参考软件代码库,用于演示VVC标准的参考实施方案。
图1示出了用于VVC的基于块的视频编码器的一般示图。具体地,图1示出了典型的编码器100。编码器100具有视频输入110、运动补偿112、运动估计114、帧内/帧间模式决策116、块预测值140、加法器128、变换130、量化132、预测相关信息142、帧内预测118、图片缓冲器120、逆量化134、逆变换136、加法器126、存储器124、环内滤波器122、熵编解码138和比特流144。
在编码器100中,视频帧被分割成多个视频块以供处理。对于每个给定的视频块,基于帧间预测方法或帧内预测方法来形成预测。
表示当前视频块(视频输入110的一部分)与其预测值(块预测值140的一部分)之间的差异的预测残差从加法器128被发送到变换130。变换系数然后从变换130被发送到量化132,以用于熵减少。量化的系数然后被馈送到熵编解码138,以生成压缩视频比特流。如图1所示,来自帧内/帧间模式决策116的预测相关信息142(诸如视频块分割信息、运动矢量(MV)、参考图片索引和帧内预测模式)也通过熵编解码138馈送并保存到压缩比特流144中。压缩比特流144包括视频比特流。
在编码器100中,还需要解码器相关的电路***,以便出于预测的目的而重建像素。首先,通过逆量化134和逆变换136来重建预测残差。该重建的预测残差与块预测值140相组合,以生成针对当前视频块的未滤波的重建像素。
空间预测(或“帧内预测”)使用来自与当前视频块相同的视频帧中的已经编解码的相邻块的样本(其被称为参考样本)的像素,来预测当前视频块。
时间预测(也称为“帧间预测”)使用来自已经编解码的视频图片的重建像素来预测当前视频块。时间预测减少了视频信号中固有的时间冗余。通常通过一个或多个MV来用信号发送用于给定的编解码单元(CU)或编解码块的时间预测信号,该一个或多个MV指示当前CU与其时间参考之间的运动量和运动方向。另外,如果支持多个参考图片,则附加地发送一个参考图片索引,其用于标识时间预测信号来自参考图片存储装置中的哪个参考图片。
运动估计114摄取视频输入110和来自图片缓冲器120的信号,并将运动估计信号输出到运动补偿112。运动补偿112摄取视频输入110、来自图片缓冲器120的信号、以及来自运动估计114的运动估计信号,并将运动补偿信号输出到帧内/帧间模式决策116。
在空间和/或时间预测被执行之后,编码器100中的帧内/帧间模式决策116选择最佳预测模式,例如基于率失真优化方法。块预测值140然后从当前视频块中被减去,并且使用变换130和量化132将得到的预测残差去相关。得到的量化残差系数由逆量化134逆量化并由逆变换136逆变换,以形成重建的残差,该重建的残差然后被加回到预测块,以形成CU的重建信号。在将重建的CU放入图片缓冲器120的参考图片存储装置并用于编解码未来的视频块之前,可以对重建的CU应用进一步的环内滤波122,诸如去块滤波器、样本自适应偏移(SAO)、和/或自适应环内滤波器(ALF)。为了形成输出视频比特流144,编解码模式(帧间或帧内)、预测模式信息、运动信息和量化残差系数都被发送到熵编解码单元138,以被进一步压缩和打包以形成比特流。
类似于HEVC,VVC建立在基于块的混合视频编解码框架之上。图1给出了一般性的基于块的混合视频编码***的框图。
输入视频信号被逐块(称为编解码单元(CU))处理。在VTM-1.0中,CU可以高达128×128像素。然而,与分割块仅基于四叉树的HEVC不同,在VVC中,一个编解码树单元(CTU)基于四叉树/二叉树/三叉树被拆分成CU,以适配变化的局部特性。此外,去除了HEVC中的多种分割单元类型的概念,即CU、预测单元(PU)和变换单元(TU)的分离在VVC中不再存在;相反,每个CU总是被用作用于预测和变换两者的基本单元,而没有进一步的分割。在多类型树结构中,一个CTU首先通过四叉树结构被分割。然后,每个四叉树叶节点可以通过二叉树结构和三叉树结构被进一步分割。
如图3A、图3B、图3C、图3D和图3E所示,存在五种拆分类型:四元分割、水平二元分割、垂直二元分割、水平三元分割和垂直三元分割。
图3A示出了图示根据本公开的多类型树结构中的块四元分割的示图。
图3B示出了图示根据本公开的多类型树结构中的块垂直二元分割的示图。
图3C示出了图示根据本公开的多类型树结构中的块水平二元分割的示图。
图3D示出了图示根据本公开的多类型树结构中的块垂直三元分割的示图。
图3E示出了图示根据本公开的多类型树结构中的块水平三元分割的示图。
在图1中,可以执行空间预测和/或时间预测。空间预测(或“帧内预测”)使用来自相同视频图片/条带中的已经编解码的相邻块的样本(其称为参考样本)的像素,来预测当前视频块。空间预测减少了视频信号中固有的空间冗余。时间预测(也称为“帧间预测”或“运动补偿预测”)使用来自已经编解码的视频图片的重建像素,来预测当前视频块。时间预测减少了视频信号中固有的时间冗余。通常通过一个或多个运动矢量(MV)来用信号发送用于给定CU的时间预测信号,该一个或多个运动矢量指示当前CU与其时间参考之间的运动量和运动方向。另外,如果支持多个参考图片,则附加地发送一个参考图片索引,其用于标识时间预测信号来自参考图片存储装置中的哪个参考图片。在空间和/或时间预测之后,编码器中的模式决策块选择最佳的预测模式,例如基于率失真优化方法。预测块然后从当前视频块中被减去,并且预测残差使用变换被去相关且被量化。量化残差系数被逆量化并且被逆变换,以形成重建的残差,该重建的残差然后被加回到预测块,以形成CU的重建信号。进一步地,在将重建的CU放入参考图片存储库并用于编解码未来的视频块之前,可以对重建的CU应用环内滤波,诸如去块滤波器、样本自适应偏移(SAO)、以及自适应环内滤波器(ALF)。为了形成输出视频比特流,编解码模式(帧间或帧内)、预测模式信息、运动信息和量化残差系数都被发送到熵编解码单元,以被进一步压缩和打包以形成比特流。
图2示出了用于VVC的视频解码器的一般框图。具体地,图2示出了典型的解码器200框图。解码器200具有比特流210、熵解码212、逆量化214、逆变换216、加法器218、帧内/帧间模式选择220、帧内预测222、存储器230、环内滤波器228、运动补偿224、图片缓冲器226、预测相关信息234和视频输出232。
解码器200类似于图1的编码器100中存在的重建相关部分。在解码器200中,传入的视频比特流210首先通过熵解码212被解码,以导出量化的系数等级和预测相关信息。量化的系数等级然后通过逆量化214和逆变换216被处理,以获得重建的预测残差。在帧内/帧间模式选择器220中实施的块预测值机制被配置为基于已解码的预测信息,执行帧内预测222或运动补偿224。通过使用加法器218,将来自逆变换216的重建的预测残差和由块预测值机制生成的预测输出相加,来获得一组未滤波的重建像素。
重建的块在其被存储在充当参考图片存储库的图片缓冲器226中之前,可以进一步经过环内滤波器228。图片缓冲器226中的重建视频可以被发送以驱动显示设备,以及用于预测未来的视频块。在环内滤波器228开启的情况下,对这些重建像素执行滤波操作,以导出最终重建的视频输出232。
图2给出了基于块的视频解码器的一般框图。视频比特流首先在熵解码单元处被熵解码。编解码模式和预测信息被发送到空间预测单元(如果被帧内编解码)或时间预测单元(如果被帧间编解码),以形成预测块。残差变换系数被发送到逆量化单元和逆变换单元,以重建残差块。预测块和残差块然后被相加在一起。重建的块在其被存储在参考图片存储装置之前,可以进一步经过环内滤波。参考图片存储库中的重建视频然后被发送出去以驱动显示设备,以及用于预测未来的视频块。
本公开的聚焦点是改进VVC中的对称运动矢量差(SMVD)工具的信令方法。在下文中,简要回顾了与本公开中提出的方法密切相关的已有帧间编解码技术。之后,讨论了指示SMVD模式的当前信令设计。最后,我们描述了所提出的用于SMVD模式的信令方法。
用于AMVP模式的运动信令
总体而言,VVC中的运动信息信令与HEVC标准中的运动信息信令保持相同。具体地,首先用信号发送一个帧间预测语法,即inter_pred_idc,以指示预测信号是来自列表L0、列表L1还是两者。针对每个所使用的参考列表,通过用信号发送一个用于对应参考列表的参考图片索引ref_idx_lx(x = 0, 1)来标识对应的参考图片,并且对应的MV由一个MVP索引mvp_lx_flag(x = 0, 1)来表示,该MVP索引用于选择MV预测值(MVP),随后是目标MV和所选择的MVP之间的其运动矢量差(MVD)。此外,在条带级别用信号发送一个控制标记mvd_l1_zero_flag。当mvd_l1_zero_flag等于0时,在比特流中用信号发送L1 MVD;否则(当mvd_l1_zero_flag标记等于1时),不用信号发送L1 MVD,并且其值总是在编码器和解码器处被推断为零。
对称MVD模式
对于HEVC中的常规帧间模式,当一个编解码块被双向预测时,当前块的预测信号被生成为两个预测块的平均值,这两个预测块是通过与参考列表L0和L1相关联的一对运动参数(包括MV和参考索引两者)来生成的。这些运动参数在比特流中从编码器被用信号发送到解码器。然而,取决于应用于帧间预测的具体预测结构(例如,用于随机接入配置的分层B结构),一个双向预测块的列表L0和列表L1中的运动参数可能高度相关。因此,在这种情况下,就编解码效率而言,单独用信号发送两组不同的运动参数(针对每个预测方向发送一组运动参数)可能并不总是最佳的。为了进一步改进编解码效率,在VVC标准中引入了SMVD模式,以减少双向预测的信令开销。具体地,为了启用SMVD模式,需要以下操作:
首先,在条带级别,变量BiDirPredFlag、RefIdxSymL0和RefIdxSymL1被如下导出:a)搜索参考图片列表0中按照显示顺序最接近当前图片的前向参考图片。如果找到,则RefIdxSymL0被设置为等于所定位的前向参考图片的参考索引。b)搜索参考图片列表1中按照显示顺序最接近当前图片的后向参考图片。如果找到,则RefIdxSymL1被设置为等于所定位的后向参考图片的参考索引。c)如果前向图片和后向图片两者都被找到,则BiDirPredFlag被设置为等于1。d)否则,以下适用:i)搜索参考图片列表0中按照显示顺序最接近当前图片的后向参考图片。如果找到,则RefIdxSymL0被设置为等于该后向参考图片的参考索引。ii)搜索参考图片列表1中按照显示顺序最接近当前图片的前向参考图片。如果找到,则RefIdxSymL1被设置为等于该前向参考图片的参考索引。iii)如果后向图片和前向图片两者都被找到,则BiDirPredFlag被设置为等于1。否则,BiDirPredFlag被设置为等于0。
第二,在CU级别,用信号发送一个SMVD控制标记(即sym_mvd_flag),以指示SMVD模式是否用于当前CU。仅当CU是双向预测的并且BiDirPredFlag等于1时,才用信号发送此标记。当该标记为真时,仅L0 MVP索引和L1 MVP索引(即mvp_l0_flag、mvp_l1_flag)和L0运动矢量差(即MVD0)显式地从编码器被用信号发送到解码器。用于确定对应参考图片的L0参考索引和L1参考索引分别被设置为等于用于列表0和列表1的RefIdxSymL0和RefIdxSymL1。此外,假设L1运动矢量差(即MVD1)与L0运动矢量差对称,即MVD1的值被设置为等于–MVD0。更详细地,当前双向预测块的最终MV可以表示为
Figure DEST_PATH_IMAGE002
(1)
其中
Figure DEST_PATH_IMAGE004
Figure DEST_PATH_IMAGE006
是列表L0和列表L1中的运动矢量预测值,并且
Figure DEST_PATH_IMAGE008
是L0运动矢量差。
图4A、图4B和图4C图示了SMVD模式。
图4A示出了具有MVD0的列表0中的参考图片420。
图4B示出了当前图片440。
图4C示出了具有MVD1的列表1中的参考图片460。
具有运动矢量差的合并模式(MMVD)
除了常规合并模式(该模式从一个当前块的空间/时间邻居导出其运动信息)之外,在VVC中引入了一种特殊的合并模式,称为具有运动矢量差的合并模式(MMVD),并且其在编解码块级别由一个MMVD标记用信号通知。在MMVD模式中,在选择并且用信号发送一个基础合并候选之后,用信号发送附加的语法元素以指示MVD,这些MVD被加至所选择的合并候选的运动。MMVD语法元素包括用以选择基础的合并候选的合并候选标记、用以指定运动幅值的距离索引、以及用以指示MVD方向的方向索引。在MMVD模式中,可以选择合并列表中的前两个候选之一作为基础MV。用信号发送合并候选标记,以指定合并列表中的前两个候选中的哪一个候选被使用。
如下表所示,距离索引指定MVD幅值,MVD幅值是基于距起始点的一组预定义的偏移来定义的。
表1 距离索引和预定义偏移的关系
距离 IDX 0 1 2 3 4 5 6 7
偏移 (以亮度样本为单位) 1/4 1/2 1 2 4 8 16 32
方向索引用于指定用信号发送的MVD的符号。注意,MVD符号的意义可以根据起始MV(即所选择的基础合并候选的MV)而变化。当起始MV是单向预测MV或双向预测MV(其中MV指向两个参考图片,这两个参考图片的POC都大于当前图片的POC,或者都小于当前图片的POC)时,用信号发送的符号是被加至起始MV的MVD的符号。当起始MV是指向两个参考图片(其中一个图片的POC大于当前图片,并且另一个图片的POC小于当前图片)的双向预测MV时,用信号发送的符号被应用于L0 MVD,并且用信号发送的符号的相反值被应用于L1 MVD。
表2 由方向索引指定的MVD符号
方向IDX 00 01 10 11
x轴 + N/A N/A
y轴 N/A N/A +
SMVD和MMVD的信令方法
如上文所描述的,为了减少运动参数的信令开销,在VVC标准中存在两个控制标记来指示在解析比特流时是否可以绕过L1 MVD语法元素。首先,在当前条带中的标记mvd_l1_zero_flag的值等于1时,该条带中所有双向预测块的L1 MVD将总是被推断为零,而无需信令。第二,当条带级别的控制标记BiDirPredFlag等于1时(即,针对当前条带,存在前向参考图片和后向参考图片两者),则在编解码块级别,针对条带中的每个双向预测块用信号发送一个附加的sym_mvd_flag标记。当SMVD标记为真时,在比特流中仅用信号发送列表L0中的MVD,并且L1 MVD被推断为L0 MVD的相反值。由于L1 MVD的不同的推断规则,mvd_l1_zero_flag标记和sym_mvd_flag标记不能同时生效。为了解决这种冲突,在VVC的工作草案5和VVC参考软件VTM-5.0中,应用了两种不同的方法来处理那两个控制标记的交互,其说明如下:
VVC的工作草案5中的SMVD信令设计
表3示出了VVC的工作草案5中的编解码单元语法,其中SMVD相关的语法元素以灰色突出显示。如可以看出的,当SMVD控制标记BiDirPredFlag为真(这通过将RefIdxSymL0和RefIdxSymL1的值设置为大于-1来指示)时,在当前条带中,在编解码块级别用信号发送sym_mvd_flag,以指示SMVD是否被应用于每个双向预测块。此外,如表3中所示,mvd_l1_zero_flag标记用于控制sym_mvd_flag标记在L1 MVD导出上的应用。具体地,仅当标记mvd_l1_zero_flag为0时,标记sym_mvd_flag才被用于确定L1 MVD值。在这种情况下,如果sym_mvd_flag具有为1的值,则L1 MVD值被推断为与L0 MVD相反。否则,L1 MVD被显式地用信号发送。当标记mvd_l1_zero_flag等于1时,L1 MVD的值总是被推断为零,而不考虑sym_mvd_flag的值。
表3 VVC的工作草案5中的编解码单元语法
Figure DEST_PATH_IMAGE010
Figure DEST_PATH_IMAGE012
VTM-5.0中的SMVD信令设计
如表3中所示,在VVC的工作草案5中,它允许同时启用sym_mvd_flag标记和mvd_l1_zero_flag标记两者。当标记mvd_l1_zero_flag为真时,在编解码块级别用信号发送的sym_mvd_flag仅用于导出L0参考索引和L1参考索引ref_l0_idx和ref_l1_idx,并且L0 MVD仍然被用信号发送,而L1 MVD的值总是被推断为0。
与VVC的工作草案5不同,VTM-5.0中的SMVD信令方法不允许sym_mvd_flag标记和mvd_l1_zero_flag共存,即这两个标记不能同时为真。这是通过在标记mvd_l1_zero_flag等于1时将变量BiDirPredFlag设置为0来完成的。
两种SMVD信令方法的比较
基于以上讨论,可以看出,在mvd_l1_zero_flag为真时,关于如何处理SMVD模式,VVC的工作草案5和测试模型VTM-5.0之间存在差异。总体而言,这两种方法都不是最优的。首先,尽管VVC的工作草案5中的方法允许sym_mvd_flag标记和mvd_l1_zero_flag标记共存,但是在确定L1 MVD值时,mvd_l1_zero_flag比sym_mvd_flag具有更高的优先级。具体地,仅当mvd_l1_zero_flag标记为关时,sym_mvd_flag才能变得有效。如果标记mvd_l1_zero_flag为开,则不管sym_mvd_flag的值如何,L1 MVD的值总是被限制为零。以此方式,当sym_mvd_flag和mvd_l1_zero_flag两者针对一个块都为真时,其可能导致非零的L0 MVD(如在比特流中用信号发送的)和零L1 MVD(如由mvd_l1_zero_flag所指示的)。这种情况不符合SMVD模式的物理意义,即L0 MVD和L1 MVD是对称的。另一方面,尽管VTM-5.0中的方法可以通过针对mvd_l1_zero_flag为真的条带禁用SMVD模式来避免这种意义冲突,但由于SMVD语法不能被应用于条带中的任何块的事实,它可能潜在地导致编解码性能损失。
VVC中的MMVD信令设计
表1-1描绘了VVC的工作草案5中的合并模式语法表,其中MMVD相关的语法元素以灰色突出显示。如表1-1中所示,首先用信号发送一个mmvd_merge_flag,以指示针对当前编解码块是否启用MMVD模式。当MMVD模式被启用时,进一步用信号发送一个合并候选标记(即mmvd_cand_flag),以选择合并列表中的前两个候选之一作为基础MV。之后,用信号发送两个语法元素(即mmvd_distance_idx和mmvd_direction_idx),以指定应用于MMVD基础MV的MVD的幅值和符号。
表1-1 VVC的工作草案5中的合并模式语法表
Figure DEST_PATH_IMAGE014
SMVD和MMVD之间的比较
基于以上讨论,可以看出,在MMVD和SMVD两者都提供运动信令的语法捷径的意义上,这两种工具是非常类似的编解码工具。一个编解码块的列表L0和列表L1中的运动参数是密切相关的。此外,给定所选择的基础MV,这两种模式都仅用信号发送一个MVD,该MVD然后基于L0 MVD与L1 MVD对称的假设被应用于L0方向MV和L1方向MV两者。然而,基于已有的VVC的工作草案5,在两种模式下使用了不同的MVD的信令方法。在SMVD模式中,以与帧间非合并模式相同的方式来用信号发送MVD语法。在MMVD模式中,基于由语法mmvd_distance_idx和mmvd_direction_idx所指示的一组预定义的幅值和方向来用信号发送MVD。为了实现更好的设计一致性,可能更希望具有一种用于SMVD和MMVD两者的统一的MVD信令方法。
SMVD和MMVD的协调信令
在本公开中,提供了解决方案,以更好地处理SMVD模式和mvd_l1_zero_flag标记之间的交互。具体地,所提出的方法的主要方面可以总结如下:
首先,在第一类解决方案中,提出允许标记sym_mvd_flag和标记mvd_l1_zero_flag以类似于VVC的工作草案5中的当前SMVD信令方法的方式共存。此外,进行修改以确保sym_mvd_flag标记和mvd_l1_zero_flag标记两者的物理意义都被满足。
其次,在第二类解决方案中,提出排他性地启用SMVD模式和条带级别的mvd_l1_zero_flag标记,使得sym_mvd_flag标记和mvd_l1_zero_flag不能被同时打开。
用于同时启用sym_mvd_flag和mvd_l1_zero_flag的解决方案
在本章节中,提出了各种信令方法,以同时启用sym_mvd_flag和mvd_l1_zero_flag两者。
解决方案一:当mvd_l1_zero_flag标记为真时,提出基于sym_mvd_flag的值来调节L0 MVD的存在。当sym_mvd_flag为开时,则L0 MVD将不被用信号发送并且总是被推断为零;否则(即sym_mvd_flag为关),L0 MVD将在比特流中被用信号发送。表4示出了基于所提出的方法(解决方案一)的修改的语法表,其中新修改的语法元素以灰色突出显示。
表4 在应用解决方案一之后的修改的编解码单元语法表
Figure DEST_PATH_IMAGE016
Figure DEST_PATH_IMAGE018
如表4中所指示的,利用所提出的方法(解决方案一),通过启用sym_mvd_flag标记和mvd_l1_zero_flag标记的不同组合的具体编解码场景可以总结如下:
当mvd_l1_zero_flag标记为关(即假)并且sym_mvd_flag标记为开(即真)时,sym_mvd_flag标记以与VVC的工作草案5中的已有SMVD设计中的相同方式工作。也就是说,sym_mvd_flag用于绕过对用于L0参考索引和L1参考索引(ref_l0_idx和ref_l1_idx)以及L1MVD的语法元素的解析。同时,所推断的L1 MVD值总是被设置为与用信号发送的L0 MVD值相反。
当mvd_l1_zero_flag标记为开并且sym_mvd_flag标记为关时,这种情况等同于HVEC和VVC中的默认mvd_l1_zero_flag情况,其中仅L1 MVD不在比特流中被发送并且总是被推断为零。
当mvd_l1_zero_flag标记和sym_mvd_flag标记两者都为开时,sym_mvd_flag标记用于绕过L0参考索引和L1参考索引(ref_l0_idx和ref_l1_idx)的语法元素。替代地,这些参考索引的值是被导出的。在这种情况下,其L0 MVD和L1 MVD两者都被推断为0。
当mvd_l1_zero_flag标记和sym_mvd_flag标记两者都为关时,这种情况等同于正常的帧间情况,其中所有L0参考索引和L1参考索引(ref_l0_idx和ref_l1_idx)、L0 MVP索引和L1 MVP索引(mvp_l0_idx和mvp_l1_idx)、以及L0 MVD和L1 MVD从编码器被发送到解码器。
解决方案二:在第二种解决方案中,提出将L0 MVD语法的信令放置在sym_mvd_flag前面,使得当mvd_l1_zero_flag为真时,仅当对应的L0 MVD等于0时,才用信号发送sym_mvd_flag。表5示出了基于所提出的方法(解决方案二)的修改的语法表,其中新修改的语法元素以灰色突出显示,并且去除的语法元素以删除线字体突出显示。
表5 在应用解决方案二之后的修改的编解码单元语法表
Figure DEST_PATH_IMAGE020
Figure DEST_PATH_IMAGE022
应该提及的是,因为在解决方案一和解决方案二中,当启用sym_mvd_flag标记和mvd_l1_zero_flag标记两者时,L0 MVD的值被强制为零,所以两种解决方案都可以解决VVC的工作草案5中的SMVD模式的定义冲突问题。
解决方案三:在第三种解决方案中,在确定L1 MVD的值时,提出先于mvd_l1_zero_flag标记检查sym_mvd_flag。表6示出了基于所提出的方法(解决方案三)的修改的语法表,其中新修改的语法元素以灰色突出显示,并且去除的语法元素用删除线字体。如表6中所示,与VVC的工作草案5中的信令方法(其中在sym_mvd_flag标记之前检查mvd_l1_zero_flag标记)不同,在所提出的方法中,在决定L1 MVD时,sym_mvd_flag标记具有比mvd_l1_zero_flag更高的优先级。具体地,在这种方法中,在sym_mvd_flag针对当前块被关闭时,mvfd_l1_zero_flag仅能确定L1 MVD(即,将L1 MVD设置为零)值。在sym_mvd_flag针对当前块为开时,无论mvd_l1_zero_flag为开还是关,L1 MVD将总是被设置为列表L0中MVD值的相反值。此外,值得一提的是,与前两种解决方案不同,第三种解决方案可能具有mvd_l1_zero_flag的物理意义冲突问题。具体地,在sym_mvd_flag标记和mvd_l1_zero_flag两者针对当前块都为真时,其可能导致非零L0 MVD和非零L1 MVD,这与mvd_l1_zero_flag标记的定义不完全一致。
表6 在应用解决方案三之后的修改的编解码单元语法表
Figure DEST_PATH_IMAGE024
Figure DEST_PATH_IMAGE026
解决方案四:在第四种解决方案中,针对SMVD模式,提出简单地将VVC的工作草案5中的当前语法设计扩展到VTM-5.0,即表3。
SMVD模式和mvd_l1_zero_flag的排他性启用
在本章节中,提出排他性地启用SMVD模式和mvd_l1_zero_flag,使得sym_mvd_flag标记和mvd_l1_zero_flag标记不能被同时打开。具体地,可以应用两种方法。在本公开的方法中,提出应用VTM-5.0中使用的SMVD信令方法,也即,当确定是否在条带级别启用/禁用SMVD模式时,如果mvd_l1_zero_flag为真,则条带级别的控制标记BiDirPredFlag总是被设置为等于零,使得sym_mvd_flag的信令被跳过并被推断为零。作为结果,针对当前条带内的所有编解码块,SMVD模式被禁用。
在本公开的方法中,提出保持变量BiDirPredFlag的导出不变,如在“对称MVD模式”的章节中所描述的。然而,BiDirPredFlag的值用于调节条带报头中的mvd_l1_zero_flag的存在。当变量BiDirPredFlag等于0时,用信号发送mvd_l1_zero_flag。否则,当变量BiDirPredFlag等于1时,mvd_l1_zero_flag不被发送,而总是被推断为零。作为结果,当变量BiDirPredFlag等于1时,针对L1 MVD信令,总是禁用零MVD推断规则。表7示出了基于本公开的所提出方法的经修改的条带报头语法表。
表7 修改的条带报头语法表
Figure DEST_PATH_IMAGE028
SMVD模式的MVD缩放
在当前的SMVD设计中,L1运动矢量差(即MVD1)被假设为与L0运动矢量差对称,即MVD1的值被设置为等于–MVD0。仅在当前图片和L0参考图片之间的图片顺序计数(POC)差(或称为POC距离)POCcur – POCL0与L1参考图片和当前图片之间的图片顺序计数(POC)差POCL1 – POCcur相同时,该假设才成立。
在本公开中,当L0参考图片和L1参考图片的POC距离不同时,针对SMVD模式启用MVD缩放,以针对SMVD模式提供更准确的MVD导出。在一种解决方案中,针对SMVD模式仅用信号发送L0 MVD,并且根据POC距离POCcur – POCL0和POCcur – POCL0,以与HEVC中的MVP缩放相同的方式来缩放L1 MVD。在另一种解决方案中,MVD被用信号发送到一个指定的参考列表(例如,列表0或列表1),并且根据POC距离POCcur – POCL0和POCcur – POCL0,以与HEVC中的MVP缩放相同的方式来缩放用于另一个参考列表的MVD。可以在条带级别、瓦片级别、瓦片组级别、图片级别(例如图片参数集)或序列级别(例如序列参数集)用信号发送所指定的参考列表。在又一种解决方案中,可以基于在条带级别、瓦片级别、瓦片组级别、图片级别(例如图片参数集)或序列级别(例如序列参数集)的一些预先确定的规则来导出所指定的参考列表。在一个示例中,使用以下规则来导出所指定的参考列表。
如果(POCcur – POCL0)的绝对值大于(POCcur – POCL1)的绝对值,则参考列表1被用作用于SMVD的所指定的参考列表;否则,参考列表0被用作所指定的参考列表。
SMVD和MMVD的信令方法的协调
如之前所讨论的,关于如何用信号发送应用于对应的基础MV的MVD,SMVD模式和MMVD模式的当前信令设计不是统一的。具体地,SMVD模式的MVD基于帧间非合并模式的MVD信令的语法元素来指示。MMVD模式的MVD基于一组预定义的幅值和方向来指示,该组预定义的幅值和方向由新引入的语法元素mmvd_distance_idx和mmvd_direction_idx指定。为了实现一个更统一的设计,在本公开中提出了两种方法来协调SMVD模式和MMVD模式的MVD信令方法。
图5示出了根据本公开的用于SMVD模式的计算机实施的方法。该方法可以例如应用于解码器。
在步骤510中,解码器可以获得与当前视频块相关联的第一参考图片和第二参考图片。按照显示顺序,第一参考图片和第二参考图片中的一个参考图片在当前图片之前,并且另一个参考图片在当前图片之后。例如,当第二参考图片在当前图片之后时,第一参考图片可以在当前图片之前,或者当第二参考图片在当前图片之前时,第一参考图片可以在当前图片之后。
在步骤512中,解码器可以获得当前视频块的第一参考图片列表,第一参考图片列表包括第一参考图片。
在步骤514中,解码器可以获得当前视频块的第二参考图片列表,第二参考图片列表包括第二参考图片。
在步骤516中,解码器可以接收运动参数。运动参数由编码器基于SMVD模式用信号发送到比特流中。运动参数包括语法元素smvd_distance_idx和smvd_direction_idx,分别指定用于SMVD模式的运动矢量差(MVD)的幅值和方向。
在步骤518中,解码器可以通过将MVD加到与第一参考图片相关联的对应运动矢量预测值,来计算与第一参考图片相关联的第一运动矢量。
在步骤520中,解码器可以通过从与第二参考图片相关联的对应运动矢量预测值中减去MVD,来计算与第二参考图片相关联的第二运动矢量。
在步骤522中,解码器可以通过组合基于第一运动矢量和第二运动矢量生成的预测块,来获得当前视频块的预测信号。例如,解码器可以通过使用基于第一运动矢量和第二运动矢量生成的预测块的平均值或加权平均值,来获得当前视频块的预测信号。组合预测块的其他方式可以包括双向光流(BDOF)、利用光流的预测细化(PROF)、或基于滤波操作的方法。
在本公开的第一方法中,电子设备可以使用MMVD模式的MVD信令语法来指示SMVD模式的MVD值。表8示出了根据该方法的对应编解码单元语法表。如表中所示,引入了两个新的语法元素,即smvd_distance_idx和smvd_direction_idx。类似于MMVD模式,这两个语法元素用来指定用于SMVD的MVD的幅值和方向。在一个示例中,针对SMVD模式,电子设备可以使用如“具有运动矢量差的合并模式(MMVD)”的章节中定义的MMVD模式的相同的一组预定义的幅值和方向。在另一个示例中,可以使用不同于用于MMVD模式的一组预定义的幅值和方向,来用信号发送SMVD模式的MVD。针对MVD的这种预定义的幅值和方向可以总是固定的,并且因此不需要用信号将它们从编码器发送到解码器。替代地,它们也可以是可变的,并且从编码器被用信号发送到解码器。根据本公开的方法,可以使用不同的信令方法。在一个示例中,编码器可以动态地生成这些值,并在比特流中将它们用信号发送到解码器。可以在不同的级别用信号发送它们,诸如序列参数集(SPS)、图片参数集(PPS)、或条带报头。在另一个示例中,在较高的级别(例如在SPS中),可以预先确定并用信号发送MVD的多组幅值和方向,而在较低的级别(诸如在每个图片、条带、和/或瓦片中),可以选择并使用特定的组。在这种情况下,在较低的级别,仅需要用信号发送所选择的组的索引值。
表8 在将MMVD信令用于SMVD之后的修改的编解码单元语法表
Figure DEST_PATH_IMAGE030
Figure DEST_PATH_IMAGE032
图6示出了根据本公开的用于具有运动矢量差的合并模式(MMVD)的计算机实施的方法。
在步骤610中,接收语法元素。语法元素基于MMVD而被用信号发送到比特流中,以指示被加至所选择的合并候选的运动的运动矢量差(MVD)值,并且语法元素包括用于选择合并候选的合并候选标记。这些MVD值是MVD值的允许动态范围内的任意数字。
在步骤620中,基于所选择的合并候选的运动,来获得当前视频块的预测信号。
在本公开的第二方法中,电子设备可以使用SMVD模式的MVD信令语法来指示MMVD模式的MVD值。表9示出了当第二方法被应用时的修改的合并模式语法表。如表9中所示,代替使用给定的一组预定义的MVD值,MMVD的MVD被指定为VVC中MVD值的允许动态范围(即,16位有符号整数)内的一个任意数字。
表9 在将SMVD信令用于MMVD之后的修改的编解码单元语法表
Figure DEST_PATH_IMAGE034
图7示出了与用户接口760耦合的计算环境710。计算环境710可以是数据处理服务器的一部分。计算环境710包括处理器720、存储器740、以及I/O接口750。
处理器720通常控制计算环境710的整体操作,诸如与显示、数据采集、数据通信、以及图像处理相关联的操作。处理器720可以包括一个或多个处理器,以执行指令,来执行以上描述的方法中的所有步骤或一些步骤。此外,处理器720可以包括一个或多个模块,该一个或多个模块促进处理器720和其他组件之间的交互。处理器可以是中央处理单元(CPU)、微处理器、单片机、GPU等。
存储器740被配置为存储各种类型的数据,以支持计算环境710的操作。存储器740可以包括预定软件742。这种数据的示例包括用于在计算环境710上操作的任何应用或方法的指令、视频数据集、图像数据等。存储器740可以通过使用任何类型的易失性或非易失性存储器设备或其组合来实施,诸如静态随机存取存储器(SRAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、可编程只读存储器(PROM)、只读存储器(ROM)、磁存储器、闪存、磁盘或光盘。
I/O接口750提供处理器720和***接口模块之间的接口,***接口模块诸如是键盘、点击轮、按钮等。按钮可以包括但不限于主页按钮、开始扫描按钮、以及停止扫描按钮。I/O接口750可以与编码器和解码器耦合。
在一些实施例中,还提供了一种包括多个程序的非暂时性计算机可读存储介质,该多个程序诸如被包括在存储器740中,由计算环境710中的处理器720可执行,以执行以上描述的方法。例如,非暂时性计算机可读存储介质可以是ROM、RAM、CD-ROM、磁带、软盘、光学数据存储设备等。
非暂时性计算机可读存储介质在其中存储有多个程序,该多个程序用于由具有一个或多个处理器的计算设备执行,其中当该多个程序由一个或多个处理器执行时,使得计算设备执行以上描述的用于运动预测的方法。
在一些实施例中,可以利用一个或多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、图形处理单元(GPU)、控制器、微控制器、微处理器、或其他电子组件来实施计算环境710,以执行上述方法。
本公开的描述已经出于说明的目的而被呈现,并且不旨在是穷尽性的或限于本公开。受益于前述描述和相关联的附图中呈现的教导,许多修改、变型和替代实施方案对本领域普通技术人员而言将是显而易见的。
选择和描述了示例,以便解释本公开的原理,并且使得本领域的其他技术人员能够理解各种实施方案的公开内容,并最佳地利用基础原理和具有适合于所设想的特定用途的各种修改的各种实施方案。因此,将理解,本公开的范围不限于所公开的实施方案的具体示例,并且修改和其他实施方案旨在被包括在本公开的范围内。

Claims (20)

1.一种用于对称运动矢量差(SMVD)模式的计算机实施的方法,包括:
在解码器处,获得与当前视频块相关联的第一参考图片和第二参考图片,其中按照显示顺序,所述第一参考图片和所述第二参考图片中的一个参考图片在当前图片之前,并且另一个参考图片在所述当前图片之后;
在所述解码器处,获得所述当前视频块的第一参考图片列表,所述第一参考图片列表包括所述第一参考图片;
在所述解码器处,获得所述当前视频块的第二参考图片列表,所述第二参考图片列表包括所述第二参考图片;
由所述解码器接收运动参数,其中所述运动参数由编码器基于所述SMVD模式用信号发送到比特流中,其中所述运动参数包括语法元素smvd_distance_idx和smvd_direction_idx,所述smvd_distance_idx和smvd_direction_idx分别指定用于所述SMVD模式的运动矢量差(MVD)的幅值和方向;
在所述解码器处,通过将所述MVD加到与所述第一参考图片相关联的对应运动矢量预测值,来计算与所述第一参考图片相关联的第一运动矢量;
在所述解码器处,通过从与所述第二参考图片相关联的对应运动矢量预测值中减去所述MVD,来计算与所述第二参考图片相关联的第二运动矢量;以及
在所述解码器处,通过组合基于所述第一运动矢量和所述第二运动矢量生成的预测块,来获得所述当前视频块的预测信号。
2.根据权利要求1所述的计算机实施的方法,其中由所述解码器接收所述运动参数包括:
由所述解码器接收sym_mvd_flag标记,其中所述sym_mvd_flag标记用信号通知所述SMVD模式正被用于所述当前视频块;以及
当所述SMVD模式被用于所述当前视频块时,在所述解码器处接收所述smvd_distance_idx和smvd_direction_idx语法元素,以指定所述MVD的所述幅值和方向。
3.根据权利要求2所述的计算机实施的方法,其中MVD的所述幅值和方向包括一组允许的MVD幅值和方向,其中所述一组允许的MVD幅值包括1/4、1/2、1、2、以及4整数样本,并且所述一组允许的MVD方向包括正x轴、负x轴、正y轴、以及负y轴。
4.根据权利要求3所述的计算机实施的方法,进一步包括:
在所述解码器处,接收所述一组允许的MVD幅值和方向,其中所述一组允许的MVD幅值和方向在所述编码器处生成,并且在条带报头级别被用信号发送。
5.根据权利要求1所述的计算机实施的方法,进一步包括:
在所述解码器处,接收多组允许的MVD幅值和方向,其中所述多组允许的MVD幅值和方向在所述编码器处生成,并且在序列参数集(SPS)级别被用信号发送。
6.一种用于具有运动矢量差的合并模式(MMVD)的计算机实施的方法,包括:
由解码器接收语法元素,其中所述语法元素基于所述MMVD而被用信号发送到比特流中,以指示被加至所选择的合并候选的运动的运动矢量差(MVD)值,并且所述语法元素包括用于选择所述合并候选的合并候选标记,并且其中所述MVD值是所述MVD值的允许的动态范围内的任意数字;以及
在所述解码器处,基于所述所选择的合并候选的所述运动,获得当前视频块的预测信号。
7.根据权利要求6所述的计算机实施的方法,其中由所述解码器接收所述语法元素包括:
在所述解码器处,接收mmvd_merge_flag标记,其中所述mmvd_merge_flag标记用信号通知所述MMVD模式正被用于所述当前视频块;以及
在所述解码器处,接收mmvd_cand_flag标记,其中所述mmvd_cand_flag标记用于选择两个合并候选之一。
8.根据权利要求6所述的计算机实施的方法,其中所述MVD值具有16位有符号整数的允许的动态范围。
9.根据权利要求7所述的计算机实施的方法,进一步包括:
当所述MMVD被用于所述当前视频块时,在所述解码器处接收x轴和y轴上的两个MVD值,其中所述两个MVD值是任意的整数。
10.根据权利要求9所述的计算机实施的方法,其中所述两个MVD值是0和0。
11.一种用于解码视频信号的计算设备,包括:
一个或多个处理器;
非暂时性计算机可读存储介质,存储由所述一个或多个处理器可执行的指令,其中所述一个或多个处理器被配置为:
获得与当前视频块相关联的第一参考图片和第二参考图片,其中按照显示顺序,所述第一参考图片和所述第二参考图片中的一个参考图片在所述当前图片之前,并且另一个参考图片在所述当前图片之后;
获得所述当前视频块的第一参考图片列表,所述第一参考图片列表包括所述第一参考图片;
获得所述当前视频块的第二参考图片列表,所述第二参考图片列表包括所述第二参考图片;
接收运动参数,其中所述运动参数由编码器基于对称运动矢量差(SMVD)模式用信号发送到比特流中,其中所述运动参数包括语法元素smvd_distance_idx和smvd_direction_idx,并且它们分别指定用于所述SMVD模式的运动矢量差(MVD)的幅值和方向;
通过将所述MVD加到与所述第一参考图片相关联的对应运动矢量预测值,来计算与所述第一参考图片相关联的第一运动矢量;
通过从与所述第二参考图片相关联的对应运动矢量预测值中减去所述MVD,来计算与所述第二参考图片相关联的第二运动矢量;以及
通过组合基于所述第一运动矢量和所述第二运动矢量生成的预测块,来获得所述当前视频块的预测信号。
12.根据权利要求11所述的计算设备,其中,被配置为接收所述运动参数的所述一个或多个处理器被进一步配置为:
接收sym_mvd_flag标记,其中所述sym_mvd_flag标记用信号通知所述SMVD模式正被用于所述当前视频块;以及
当所述SMVD模式被用于所述当前视频块时,接收所述smvd_distance_idx和smvd_direction_idx语法元素,以指定所述MVD的所述幅值和方向。
13.根据权利要求12所述的计算设备,其中MVD的所述幅值和方向包括一组允许的MVD幅值和方向,其中所述一组允许的MVD幅值包括1/4、1/2、1、2、以及4整数样本,并且所述一组允许的MVD方向包括正x轴、负x轴、正y轴、以及负y轴。
14.根据权利要求13所述的计算设备,其中所述一个或多个处理器被进一步配置为:
接收所述一组允许的MVD幅值和方向,其中所述一组允许的MVD幅值和方向在所述编码器处生成,并且在条带报头级别被用信号发送。
15.根据权利要求11所述的计算设备,其中所述一个或多个处理器被进一步配置为:
接收多组允许的MVD幅值和方向,其中所述多组允许的MVD幅值和方向在所述编码器处生成,并且在序列参数集(SPS)级别被用信号发送。
16.一种非暂时性计算机可读存储介质,存储多个程序,所述多个程序用于由具有一个或多个处理器的计算设备执行,其中当所述多个程序由所述一个或多个处理器执行时,使所述计算设备执行:
接收语法元素,其中所述语法元素基于具有运动矢量差的合并模式(MMVD)而被用信号发送到比特流中,以指示被加至所选择的合并候选的运动的运动矢量差(MVD)值,并且所述语法元素包括用于选择所述合并候选的合并候选标记,并且其中所述MVD值是所述MVD值的允许的动态范围内的任意数字;以及
基于所述所选择的合并候选的运动,获得当前视频块的预测信号。
17.根据权利要求16所述的非暂时性计算机可读存储介质,其中所述多个程序进一步使所述计算设备执行:
接收mmvd_merge_flag标记,其中所述mmvd_merge_flag标记用信号通知所述MMVD模式正被用于所述当前视频块;以及
接收mmvd_cand_flag标记,其中所述mmvd_cand_flag标记用于选择两个合并候选之一。
18.根据权利要求16所述的非暂时性计算机可读存储介质,其中所述MVD值具有16位有符号整数的允许的动态范围。
19.根据权利要求17所述的非暂时性计算机可读存储介质,其中所述多个程序进一步使所述计算设备执行:
当所述MMVD用于所述当前视频块时,接收x轴和y轴上的两个MVD值,其中所述两个MVD值是任意的整数。
20.根据权利要求19所述的非暂时性计算机可读存储介质,其中所述两个MVD值是0和0。
CN202080040476.1A 2019-05-30 2020-06-01 用于用信号通知对称运动矢量差模式的方法和装置 Pending CN114009033A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962854961P 2019-05-30 2019-05-30
US62/854961 2019-05-30
PCT/US2020/035571 WO2020243709A1 (en) 2019-05-30 2020-06-01 Methods and apparatus for signaling symmetrical motion vector difference mode

Publications (1)

Publication Number Publication Date
CN114009033A true CN114009033A (zh) 2022-02-01

Family

ID=73552437

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080040476.1A Pending CN114009033A (zh) 2019-05-30 2020-06-01 用于用信号通知对称运动矢量差模式的方法和装置

Country Status (4)

Country Link
US (1) US20220094913A1 (zh)
EP (1) EP3977741A4 (zh)
CN (1) CN114009033A (zh)
WO (1) WO2020243709A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115086678A (zh) * 2022-08-22 2022-09-20 北京达佳互联信息技术有限公司 视频编码方法和装置、视频解码方法和装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11943448B2 (en) * 2021-11-22 2024-03-26 Tencent America LLC Joint coding of motion vector difference

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8526499B2 (en) * 2007-06-15 2013-09-03 Sungkyunkwan University Foundation For Corporate Collaboration Bi-prediction coding method and apparatus, bi-prediction decoding method and apparatus, and recording medium
KR20190033029A (ko) * 2017-09-20 2019-03-28 주식회사 케이티 비디오 신호 처리 방법 및 장치
CN113273209A (zh) * 2018-12-17 2021-08-17 交互数字Vc控股公司 Mmvd和smvd与运动和预测模型的组合
CN113615186B (zh) * 2018-12-21 2024-05-10 Vid拓展公司 对称运动矢量差译码
US11025936B2 (en) * 2019-01-25 2021-06-01 Tencent America LLC Method and apparatus for video coding

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115086678A (zh) * 2022-08-22 2022-09-20 北京达佳互联信息技术有限公司 视频编码方法和装置、视频解码方法和装置

Also Published As

Publication number Publication date
EP3977741A1 (en) 2022-04-06
EP3977741A4 (en) 2023-05-24
US20220094913A1 (en) 2022-03-24
WO2020243709A1 (en) 2020-12-03

Similar Documents

Publication Publication Date Title
US11546613B2 (en) Method and apparatus for adaptive motion vector precision
CN113170181B (zh) 块内拷贝模式中的仿射继承方法
US11343541B2 (en) Signaling for illumination compensation
CN111937391B (zh) 用于视频编解码***中的子块运动补偿的视频处理方法和装置
KR102344430B1 (ko) 다중 참조 예측을 위한 움직임 벡터 개선
WO2020169082A1 (en) Intra block copy merge list simplification
RU2683495C1 (ru) Нововведения в предсказание блочных векторов и оценку восстановленных значений отсчетов в области перекрытия
US20190215521A1 (en) Method and apparatus for video coding using decoder side intra prediction derivation
US20170237993A1 (en) Method and apparatus for setting reference picture index of temporal merging candidate
CN114175636A (zh) 自适应参数集中的自适应环路滤波的指示
EP4037320A1 (en) Boundary extension for video coding
US11785242B2 (en) Video processing methods and apparatuses of determining motion vectors for storage in video coding systems
US20220094913A1 (en) Methods and apparatus for signaling symmetrical motion vector difference mode
US20240163469A1 (en) Motion vector prediction for video coding
US20230362395A1 (en) Method for deriving constructed affine merge candidates
KR20220046707A (ko) 광 흐름에 의한 예측 개선, 양방향 광 흐름 및 디코더 측 움직임 벡터 개선을 위한 방법들 및 장치들
EP3909241A1 (en) System and method for improving combined inter and intra prediction
CN113545086A (zh) 用于视频编解码的双向光流和解码器侧运动矢量细化
WO2022217159A1 (en) Geometric partition mode with explicit motion signaling
CN112204986A (zh) 视频编解码的方法和装置
CN112136329A (zh) 视频编解码的方法和装置

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