CN115396677A - 用于视频编解码的对称性双向预测模式 - Google Patents

用于视频编解码的对称性双向预测模式 Download PDF

Info

Publication number
CN115396677A
CN115396677A CN202210763999.XA CN202210763999A CN115396677A CN 115396677 A CN115396677 A CN 115396677A CN 202210763999 A CN202210763999 A CN 202210763999A CN 115396677 A CN115396677 A CN 115396677A
Authority
CN
China
Prior art keywords
motion vector
video
bitstream
difference information
prediction
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
CN202210763999.XA
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.)
Douyin Vision Co Ltd
ByteDance Inc
Original Assignee
Douyin Vision Co Ltd
ByteDance 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 Douyin Vision Co Ltd, ByteDance Inc filed Critical Douyin Vision Co Ltd
Publication of CN115396677A publication Critical patent/CN115396677A/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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/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
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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/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

Landscapes

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

Abstract

一种视频比特流处理方法,包括:响应于视频比特流中的镜像模式标志,基于对称性规则和第一运动矢量差信息生成第二运动矢量差信息;使用所述第一运动矢量差信息和所述第二运动矢量差信息重建视频块,其中,该重建是双向预测地执行的。

Description

用于视频编解码的对称性双向预测模式
本申请是申请日为2019年7月1日、申请号为201910586486.4、发明名称为“用于视频编码的对称性双向预测模式”的发明专利申请的分案申请。
技术领域
该文档涉及图像和视频编码技术。
背景技术
数字视频占有互联网和其他数字通信网络上最大的带宽使用。随着能够接收和显示视频的连接用户设备的数量增加,预计用于数字视频使用的带宽需求将继续增长。
发明内容
所公开的技术可以由视觉媒体解码器或编码器实施例使用,其中使用运动矢量的对称性来减少用于信令通知运动信息的比特,以改善编码效率。
在一个示例方面,公开了一种视频比特流处理方法。该方法包括响应于视频比特流中的镜像模式标志,基于对称性规则和第一运动矢量差信息生成第二运动矢量差信息。该方法还包括使用第一运动矢量差信息和第二运动矢量差来重建当前图片中的视频块,其中使用双向预测执行重建。
在另一示例方面,公开了另一种视频比特流处理方法。该方法包括对于与视频块相关联的第一参考图片列表,接收第一组运动矢量的运动矢量差信息。该方法还包括使用多假设对称性规则从第一组运动矢量的运动矢量差信息导出与视频块相关联的第二参考图片列表的第二组运动矢量相关联的运动矢量差信息,其中多假设对称性规则指定第二运动矢量差值为(0,0),并且相应的运动矢量预测器被设置为从第一运动矢量差信息导出的镜像运动矢量值,并且使用导出的结果执行视频块和视频块的比特流表示之间的转换。
在另一示例方面,公开了另一种视频比特流处理方法。该方法包括对于视频块,接收与第一参考图片列表相关联的第一运动矢量差信息。该方法还包括对于视频块,接收与第二参考图片列表相关联的第二运动矢量差信息,并且使用多假设对称性规则从第一运动矢量差信息和第二运动矢量差信息导出与第一参考图片列表相关联的第三运动矢量差信息和与第二参考图片列表相关联的第四运动矢量差信息,其中多假设对称性规则指定第二运动矢量差值为(0,0),并且相应的运动矢量预测器被设置为从第一运动矢量差值信息导出的镜像运动矢量值。
在另一示例方面,公开了另一种视频比特流处理方法。该方法包括接收相对于视频的参考帧的视频的未来帧,接收与视频的未来帧和视频的过去帧相关的运动矢量,应用视频的未来帧和视频的过去帧之间的预定关系,并且基于视频的未来帧、运动矢量以及视频的过去帧和视频的未来帧之间的预定关系重建视频的过去帧。
在另一示例方面,上述方法可以由包括处理器的视频解码器装置实施。
在另一示例方面,上述方法可以由视频编码器装置实施,该视频编码器装置包括用于在视频编码处理期间对编码视频进行解码的处理器。
在又一示例方面,这些方法可以以处理器可执行指令的形式体现并存储在计算机可读程序介质上。
在本文档中进一步描述了这些和其他方面。
附图说明
图1示出了用于Merge候选列表构建的推导过程的示例。
图2示出了空间Merge候选的示例位置。
图3是用于空间运动矢量候选的运动矢量缩放的图示。
图4示出了用于运动矢量预测候选的示例推导过程。
图5示出了被考虑用于空间Merge候选的冗余校验的候选对的示例。
图6示出了Nx2N和2NxN分割的第二PU的示例位置。
图7是用于时间Merge候选的运动矢量缩放的示例。
图8示出了被标记为C0和C1的时间Merge候选的候选位置的示例。
图9示出了组合的双向预测Merge候选的示例。
图10示出了双边匹配过程的示例。
图11示出了模板匹配过程的示例。
图12示出了帧速率上转换(frame rate up-conversion,FRUC)中的单边运动估计(motion estimation,ME)的示例。
图13示出了双边模板匹配过程的示例。
图14示出了替代时间运动矢量预测(alternative temporal motion vectorprediction,ATMVP)方法的示例。
图15示出了识别源块和源图片的示例。
图16是具有四个子块(A-D)的一个编码单元(coding unit,CU)及其相邻子块(a-d)的示例。
图17示出了视频编码装置的框图示例。
图18是视频处理装置的示例的框图。
图19是视频比特流处理方法的示例的流程图。
图20是视频比特流处理方法的另一示例的流程图。
具体实施方式
在本文档中使用章节标题以便于理解,并且不将章节中公开的实施例仅限于该章节。这样,来自一个章节的实施例可以与来自其他章节的实施例组合。此外,虽然用参考特定视频编解码器描述了某些实施例,但是所公开的技术也适用于其他视频编码技术。此外,虽然一些实施例详细描述了视频编码步骤,但是应该理解,撤消编码的相应解码步骤将由解码器实施。此外,术语视频处理涵盖视频编码或压缩、视频解码或解压缩以及视频转码,其中视频像素从一种压缩格式表示为另一压缩格式或以不同的压缩比特率表示。
本文档提供了可由视频比特流的解码器使用的各种技术,以改善解压缩或解码的数字视频的质量。此外,视频编码器还可在编码过程期间实施这些技术,以便重建用于进一步编码的解码的帧。
HEVC中双向预测的信令通知
在HEVC中,帧间PU级信令通知(inter PU-level signaling)可以分为三种不同的模式。表1和表2示出了HEVC中的用于帧间PU信令通知的相关语法元素。第一模式是跳过模式,其中仅需要信令通知单个Merge索引(merge_idx)。第二模式是Merge模式,其中仅信令通知Merge标志(merge_flag)和Merge索引(merge_idx)。第三模式是AMVP模式,其中信令通知方向索引(inter_pred_idc)、参考索引(ref_idx_l0/ref_idx_l1),mvp索引(mvp_l0_flag/mvp_l1_flag)和MVD(mvd_coding)。
在所有这三种模式中,双向预测AMVP模式提供了更加耗费速率的情形,同时它提供了捕获各种运动模型的自由度,包括加速和其他非线性运动模型。分别信令通知两个列表的运动矢量以提供这种自由度。
HEVC中的AMVP推导
AMVP模式下的运动矢量预测
运动矢量预测利用与相邻PU的运动矢量的时空相关性,其用于运动参数的显式传输。它通过首先校验在时间上左侧、上部相邻PU位置的可用性,移除冗余候选并添加零矢量以使候选列表为恒定长度来构建运动矢量候选列表。然后,编码器可以从候选列表中选择最佳预测器,并发送指示所选候选的相应索引。类似地,利用Merge索引信令通知,使用截断一元码(truncatedunary)来编码最佳运动矢量候选的索引。在这种情况下要编码的最大值是2。在以下章节中,提供了关于运动矢量预测候选的推导过程的细节。
表1.HEVC中的帧间PU语法元素
Figure BDA0003721655090000051
表2.HEVC中MVD编码的语法元素
Figure BDA0003721655090000061
运动矢量预测候选
图1归纳了运动矢量预测候选的推导过程。
在运动矢量预测中,考虑两种类型的运动矢量候选:空间运动矢量候选和时间运动矢量候选。对于空间运动矢量候选推导,最终基于位于五个不同位置的每个PU的运动矢量导出两个运动矢量候选,如图2所示。
对于时间运动矢量候选推导,从两个候选中选择一个运动矢量候选,这两个候选基于两个不同的共位(co-located)位置导出。在做出时空候选第一列表之后,移除列表中的重复运动矢量候选。如果潜在候选的数量大于两个,则从列表中移除其相关参考图片列表内的参考图片索引大于1的运动矢量候选。如果时空运动矢量候选的数量小于两个,则将附加的零运动矢量候选添加到列表中。
空间运动矢量候选
在空间运动矢量候选的推导中,在五个潜在候选中考虑至多两个候选,该五个候选从位于如图2所示的位置的PU中导出,那些位置与运动Merge的位置相同。当前PU左侧的推导顺序被定义为A0、A1、缩放(scaled)A0和缩放A1。当前PU上侧的推导顺序被定义为B0、B1、B2、缩放B0、缩放B1和缩放B2。因此,对于每一侧,存在四种可用作运动矢量候选的情况,其中两种情况不需要使用空间缩放,并且两种情况使用空间缩放。四种不同的情况归纳如下。
无空间缩放
(1)相同的参考图片列表,以及相同的参考图片索引(相同的图片序号(pictureorder count,POC))
(2)不同的参考图片列表,但相同的参考图片索引(相同的POC)
空间缩放
(3)相同的参考图片列表,但不同的参考图片索引(不同的POC)
(4)不同的参考图片列表,以及不同的参考图片索引(不同的POC)
首先校验非空间缩放情况,然后校验空间缩放。当相邻PU的参考图片和当前PU的参考图片之间的POC不同时,考虑空间缩放,而不管参考图片列表。如果左侧候选的所有PU都不可用或者是帧内编码的,则针对上述运动矢量的缩放可以帮助左侧和上部MV候选的并行推导。否则,上述运动矢量不允许空间缩放。
在空间缩放过程中,以与时间缩放类似的方式缩放相邻PU的运动矢量,如图3所示。主要差异在于给出了当前PU的参考图片列表和索引作为输入;实际缩放过程与时间缩放过程相同。
时间运动矢量候选
除了参考图片索引导出之外,用于推导时间Merge候选的所有过程与用于推导空间运动矢量候选的过程相同。将参考图片索引信令通知给解码器。
HEVC中的Merge模式
Merge模式的候选
当使用Merge模式预测PU时,从比特流解析指向Merge候选列表中的条目的索引并用于检索运动信息。该列表的构建在HEVC标准中规定,并且可以根据以下步骤顺序进行归纳:
步骤1:初始候选推导
-步骤1.1:空间候选推导
-步骤1.2:用于空间候选的冗余校验
-步骤1.3:时间候选推导
步骤2:附加候选插入
-步骤2.1:双向预测候选创建
-步骤2.2:零运动候选插入
这些步骤也在图4中示意性地描绘。对于空间Merge候选推导,在位于五个不同位置的候选中选择至多四个Merge候选。对于时间Merge候选推导,在两个候选中选择至多一个Merge候选。由于在解码器处假设每个PU的候选的数量为常数,因此当候选的数量未达到在条带头中被信令通知的最大Merge候选数量(MaxNumMergeCand)时,生成附加的候选。由于候选的数量是恒定的,因此使用截断一元二值化(truncated unary binarization,TU)来编码最佳Merge候选的索引。如果CU的大小等于8,则当前CU的所有PU共享单个Merge候选列表,其与2N×2N预测单元的Merge候选列表相同。
在以下子章节中,描述了上述每个步骤的详细操作。
空间候选
在空间Merge候选的推到中,从位于图2所示位置的候选中选择至多四个Merge候选。推导的顺序是A1、B1、B0、A0和B2。仅当位置A1、B1、B0、A0的任何PU不可用(例如,因为它属于另一条带(slice)或片(tile))或被帧内编码时,才考虑位置B2。在位置A1处的候选被添加之后,剩余候选的添加经受冗余校验,该冗余校验确保具有相同运动信息的候选从列表中排除,从而改善编码效率。为了降低计算复杂性,在提到的冗余校验中并没有考虑所有可能的候选对。取而代之的是,仅考虑与图5中箭头链接的对,并且仅当用于冗余校验的对应候选不具有相同的运动信息时,候选才被添加到列表中。重复运动信息的另一来源是与不同于2Nx2N的分割相关联的“第二PU”。作为示例,图6分别描述了N×2N和2N×N情况下的第二PU。当当前PU被分割为N×2N时,位置A1处的候选不被考虑用于列表构建。事实上,通过添加该候选将导致两个预测单元具有相同的运动信息,这对于在编码单元中仅具有一个预测单元是冗余的。类似地,当当前PU被分割为2N×N时,不考虑位置B1。
时间候选
在此步骤中,仅有一个候选添加到列表中。具体地,在该时间Merge候选的推导中,基于属于与给定参考图片列表内的当前图片具有最小POC差的图片的共位的PU来推导缩放运动矢量。在条带头中明确地用信令通知要用于推导共位的PU的参考图片列表。如图7中的虚线所示,获得时间Merge候选的缩放运动矢量,该运动矢量使用POC距离、tb和td从共位的PU的运动矢量缩放,其中tb被定义为当前图片的参考图片和当前图片之间的POC差,并且td被定义为共位的图片的参考图片和共位的图片之间的POC差。时间Merge候选的参考图片索引被设置为等于零。HEVC规范中描述了缩放过程的实际实现。对于B条带,获得并组合两个运动矢量,该两个运动矢量中一个用于参考图片列表0(list0),并且另一个用于参考图片列表1(list1),以形成双向预测Merge候选。
在属于参考帧的共位的PU(Y)中,在候选C0和C1之间选择时间候选的位置,如图8所示。如果位置C0处的PU不可用,是被帧内编码的,或者在当前编码树单元(coding treeunit,CTU)之外,则使用位置C1。否则,位置C0用于推导时间Merge候选。
附加候选插入
除了时空Merge候选之外,还有两种其他类型的Merge候选:组合的双向预测Merge候选和零Merge候选。通过利用时空Merge候选来生成组合的双向预测Merge候选。组合的双向预测Merge候选仅用于B条带。通过将初始候选的第一参考图片列表运动参数与另一个的第二参考图片列表运动参数组合来生成组合的双向预测候选。如果这两个元组提供不同的运动假设,它们将形成新的双向预测候选。作为示例,图9描绘了当原始列表中的两个候选(在左侧)的情况,其具有mvL0和refIdxL0或mvL1和refIdxL1,用于创建添加到最终列表的组合双向预测Merge候选(在右侧)。关于被认为生成这些附加Merge候选的组合有许多规则。
插入零运动候选以填充Merge候选列表中的剩余条目,从而达到MaxNumMergeCand容量。这些候选具有零空间位移和参考图片索引,该参考图片索引从零开始并且每次向列表中添加新的零运动候选时增加。由这些候选使用的参考帧的数量分别是单向和双向预测的一个和两个。最后,不对这些候选执行冗余校验。
模式匹配的运动矢量
模式匹配运动矢量推导(Pattern matched motion vector derivation,PMMVD)模式是基于帧速率上转换(Frame-Rate Up Conversion,FRUC)技术的特殊Merge模式。利用该模式,块的运动信息不是被信令通知的,而是在解码器侧导出的。
当CU的Merge标志为真时,为该CU信令通知FRUC标志。当FRUC标志为假时,信令通知Merge索引并使用常规Merge模式。当FRUC标志为真时,信令通知附加的FRUC模式标志以指示将使用哪种方法(双边匹配或模板匹配)来导出该块的运动信息。
在编码器侧,是否对CU使用FRUC Merge模式的决定是基于研发成本(cost)选择,就像对正常Merge候选所做的那样。也就是说,通过使用RD成本选择来校验CU的两种匹配模式(双边匹配和模板匹配)。导致最小成本的那个与其他CU模式进一步比较。如果FRUC匹配模式是最有效的模式,则对于CU将FRUC标志设置为真,并且使用相关匹配模式。
FRUC Merge模式中的运动推导过程有两个步骤。首先执行CU级运动搜索,然后进行子CU级运动细化。在CU级,基于双边匹配或模板匹配为整个CU导出初始运动矢量。首先,生成MV候选列表,并且选择导致最小匹配成本的候选作为进一步CU级细化的起始点。然后,执行基于起始点周围的双边匹配或模板匹配的局部搜索,并且将导致最小匹配成本的MV作为整个CU的MV。随后,在子CU级进一步细化运动信息,以导出的CU运动矢量作为起始点。
例如,针对W×H CU运动信息导出执行以下导出处理。在第一阶段,导出整个W×HCU的MV。在第二阶段,CU进一步划分成M×M个子CU。如(1)中计算M的值,D是预定义的划分深度,其在JEM中默认设置为3。
然后导出每个子CU的MV。
Figure BDA0003721655090000101
如图10所示,双边匹配用于通过在两个不同的参考图片中沿着当前CU的运动轨迹找到两个块之间的最接近匹配来导出当前CU的运动信息。在连续运动轨迹的假设下,指向两个参考块的运动矢量MV0和MV1应当与当前图片和两个参考图片之间的时间距离(即TD0和TD1)成比例。作为特殊情况,当当前图片在时间上在两个参考图片之间并且从当前图片到两个参考图片的时间距离相同时,双边匹配变为基于镜像的双向MV。
如图11所示,模板匹配用于通过找到当前图片中的模板(当前CU的顶部和/或左侧相邻块)和参考图片中的块(与模板大小相同)之间的最接近匹配来导出当前CU的运动信息。除FRUC Merge模式外,模板匹配也适用于AMVP模式。在JEM中,有两个AMVP候选。使用模板匹配方法,推导新的候选。如果通过模板匹配的新导出的候选与第一现有AMVP候选不同,则将其插入AMVP候选列表的最开始,然后将列表大小设置为2(意味着移除第二现有AMVP候选)。当应用于AMVP模式时,仅应用CU级搜索。
CU级MV候选集
在CU级设置的MV候选包括:
-如果当前CU处于AMVP模式,则为原始AMVP候选
-所有Merge候选,
-插值MV场中的几个MV。
-顶部和左侧相邻运动矢量
当使用双边匹配时,Merge候选的每个有效MV用作输入以在双边匹配的假设下生成MV对。例如,Merge候选的一个有效MV是位于参考列表a处(MVa,refa)。然后,在另一参考列表B中找到其配对的双边MV的参考图片refb,使得refa和refb在时间上位于当前图片的不同侧。如果参考列表B中没有这样的refb,则refb被确定为不同于refa的参考,并且其到当前图片的时间距离是列表B中最小的。在refb被确定之后,通过基于当前图片和refa、refb之间的时间距离缩放MVa来导出MVb。
来自插值MV场的四个MV也被添加到CU级候选列表。更具体地,添加当前CU的位置(0,0),(W/2,0),(0,H/2)和(W/2,H/2)处的插值MV。
当FRUC应用于AMVP模式时,原始AMVP候选也被添加到CU级MV候选集。
在CU级,AMVP Cu至多15个MV并且Merge Cu至多13个MV被添加到候选列表。
子CU级MV候选集
在CU级设置的MV候选集包括:
-从CU级搜索确定的MV,
-顶部、左侧、左上角和右上角的相邻MV,
-来自参考图片的共位的MV的缩放版本,
-至多4个ATMVP候选,
-至多4个STMVP候选
来自参考图片的缩放MV推导如下。遍历两个列表中的所有参考图片。参考图片中的子CU的共位位置处的MV被缩放到起始CU级MV的参考。
ATMVP和STMVP候选限于前四个。
在子CU级,至多17个MV被添加到候选列表中。
插值MV场的生成
在对帧进行编码之前,基于单边ME为整个图片生成插值运动场。然后,运动场可以稍后用作CU级或子CU级MV候选。
首先,两个参考列表中的每个参考图片的运动场以4×4块级遍历。对于每个4×4块,如果与块相关联的运动通过当前图片中的4×4块(如图12所示)并且块未被分配任何插值运动,则参考块的运动是根据时间距离TD0和TD1(与HEVC中的TMVP的MV缩放的方式相同的方式)缩放到当前图片,并且将缩放的运动分配给当前帧中的块。如果没有将缩放MV分配给4×4块,则在插值运动场中将块的运动标记为不可用。
插值和匹配成本
当运动矢量指向分数样本位置时,需要运动补偿的插值。为了降低复杂性,双线性插值代替常规8抽头HEVC插值用于双边匹配和模板匹配。
匹配成本的计算在不同步骤稍有不同。当在CU级从候选集中选择候选时,匹配成本是双边匹配或模板匹配的绝对差和(sum of absolute difference,SAD)。在确定起始MV之后,子CU级搜索的双边匹配的匹配成本计算如下:
Figure BDA0003721655090000121
其中,w是根据经验设置为4的加权因子,MV和MVs分别表示当前MV和起始MV。SAD仍然用作子CU级搜索的模板匹配的匹配成本。
在FRUC模式中,仅通过使用亮度样本来导出MV。导出的运动将用于MC帧间预测的亮度和色度两者。在决定MV之后,使用用于亮度的8抽头插值滤波器和用于色度的4抽头插值滤波器来执行最终MC。
MV细化
MV细化是基于模式的MV搜索,其中具有双边匹配成本或模板匹配成本的标准。在JEM中,支持两种搜索模式-无限制的中心偏置菱形搜索(unrestricted center-biaseddiamond search,UCBDS)和分别在CU级和子CU级的MV细化的自适应交叉搜索。对于CU和子CU级MV细化两者,以四分之一亮度样本MV准确度直接搜索MV,并且随后是八分之一亮度样本MV细化。用于CU和子CU步骤的MV细化的搜索范围被设置为等于8亮度样本。
在模板匹配FRUC Merge模式中选择预测方向
在双边匹配Merge模式中,始终应用双向预测,因为基于沿两个不同参考图片中的当前CU的运动轨迹的两个块之间的最接近匹配来导出CU的运动信息。模板匹配Merge模式没有这样的限制。在模板匹配Merge模式中,编码器可以从列表0的单向预测、列表1的单向预测或CU的双向预测中进行选择。选择是基于模板匹配成本,如下所示:
如果costBi<=factor*min(cost0,cost1)
使用双向预测;
否则,如果cost0<=cost1
使用来自列表0的单向预测;
否则,
使用来自列表1的单向预测;
其中cost0是列表0模板匹配的SAD,cost1是列表1模板匹配的SAD,并且costBi是双向预测模板匹配的SAD。因子(factor)的值等于1.25,这意味着选择过程偏向于双向预测。
帧间预测方向选择仅应用于CU级模板匹配处理。
解码器侧运动矢量细化
在双向预测操作中,对于一个块区域的预测,分别使用列表0的运动矢量(motionvector,MV)和列表1的MV形成的两个预测块被组合以形成单个预测信号。在解码器侧运动矢量细化(decoder-side motion vector refinement,DMVR)方法中,通过双边模板匹配过程进一步细化双向预测的两个运动矢量。双边模板匹配在解码器中应用,以在双边模板和参考图片中的重建样本之间执行基于失真的搜索,以获得细化的MV而不传输附加的运动信息。
在DMVR中,分别从列表0的初始MV0和列表1的MV1生成双边模板作为两个预测块的加权组合(即平均),如图10所示。模板匹配操作包括计算生成的模板与参考图片中的样本区域(初始预测块周围)之间的成本测量。对于两个参考图片中的每一个,产生最小模板成本的MV被视为该列表的更新MV以替换原始模板。在JEM中,为每个列表搜索九个MV候选。九个MV候选包括原始MV和8个周围MV,其中一个亮度样本在水平或垂直方向或两者上偏移原始MV。最后,两个新的MV,即图10中所示的MV0′和MV1′,用于生成最终的双向预测结果。绝对差值和(sum of absolute differences,SAD)用作成本测量。
DMVR被应用于双向预测的Merge模式,其中一个MV来自过去参考图片,另一MV来自未来参考图片,而不传输附加的语法元素。在JEM中,当针对CU启用LIC、仿射运动、FRUC或子CU Merge候选时,不应用DMVR。
自适应运动矢量差分分辨率
在HEVC中,当条带头中的use_integer_mv_flag等于0时,以四分之一亮度样本为单位,信令通知运动矢量差(motion vector difference,MVD)(在PU的运动矢量和预测运动矢量之间)。在JEM中,引入了局部自适应运动矢量分辨率(locally adaptive motionvector resolution,LAMVR)。在JEM中,MVD可以以四分之一亮度样本、整数亮度样本或四亮度样本为单位进行编码。在编码单元(coding unit,CU)级控制MVD分辨率,并且对于具有至少一个非零MVD分量的每个CU,有条件地信令通知MVD分辨率标志。
对于具有至少一个非零MVD分量的CU,信令通知第一标志以指示在CU中是否使用四分之一亮度样本MV精度。当第一标志(等于1)指示未使用四分之一亮度样本MV精度时,信令通知另一标志以指示是使用整数亮度样本MV精度还是四亮度样本MV精度。
当CU的第一MVD分辨率标志为零或未针对CU编码(意味着CU中的所有MVD均为零)时,将四分之一亮度样本MV分辨率用于CU。当CU使用整数亮度样本MV精度或四亮度样本MV精度时,CU的AMVP候选列表中的MVP被舍入到相应的精度。
在编码器中,CU级RD校验用于确定将哪个MVD分辨率用于CU。也就是说,对于每个MVD分辨率,执行CU级RD校验三次。为了加快编码器速度,在JEM中应用以下编码方案。
在具有正常四分之一亮度样本MVD分辨率的CU的RD校验期间,存储当前CU的运动信息(整数亮度样本准确度)。存储的运动信息(在舍入之后)被用作在RD校验期间针对具有整数亮度样本和4亮度样本MVD分辨率的相同CU的进一步小范围运动矢量细化的起始点,使得耗时的运动估计过程不重复三次。
有条件地调用具有4亮度样本MVD分辨率的CU的RD校验。对于CU,当RD成本整数亮度样本MVD分辨率远大于四分之一亮度样本MVD分辨率时,跳过针对CU的4亮度样本MVD分辨率的RD校验。
基于子CU的运动矢量预测
在JEM中,每个CU可以具有针对每个预测方向的至多一组运动参数。通过将大CU划分成子CU并且导出大CU的所有子CU的运动信息,在编码器中考虑两种子CU级运动矢量预测方法。替代时间运动矢量预测(ATMVP)方法允许每个CU从比共位的参考图片中的当前CU小的多个块中获取多组运动信息。在空间-时间运动矢量预测(spatial-temporal motionvector prediction,STMVP)方法中,通过使用时间运动矢量预测器和空间相邻运动矢量来递归地导出子CU的运动矢量。
为了保留用于子CU运动预测的更准确的运动场,当前禁用参考帧的运动压缩。
替代时间运动矢量预测
在替代时间运动矢量预测(ATMVP)方法中,通过从小于当前CU的块中提取多组运动信息(包括运动矢量和参考索引)来修改时间运动矢量预测(temporal motion vectorprediction,TMVP)。如图11所示,子CU是方形N×N块(默认情况下N设置为4)。
图13示出了双边模板匹配过程的示例。在第一步骤中,从预测块生成双边模板。在第二步骤中,使用双边模板匹配来找到最匹配的块。
ATMVP以两个步骤预测CU内的子CU的运动矢量。第一步是利用所谓的时间矢量识别参考图片中的对应块。参考图片称为运动源图片。第二步是将当前CU划分成子CU,并从对应于每个子CU的块中获得运动矢量以及每个子CU的参考索引,如图14所示。
在第一步骤中,参考图片和对应块由当前CU的空间相邻块的运动信息确定。为了避免相邻块的重复扫描过程,使用当前CU的Merge候选列表中的第一Merge候选。第一可用运动矢量及其相关参考索引被设置为时间矢量和运动源图片的索引。这样,在ATMVP中,与TMVP相比,可以更准确地识别相应的块,其中相应的块(有时称为共位的块)总是相对于当前CU位于右下或中心位置。在一个示例中,如果第一Merge候选来自左相邻块(即,图15中的A1),则利用相关联的MV和参考图片来识别源块和源图片。
在第二步骤中,通过向当前CU的坐标添加时间矢量,通过运动源图片中的时间矢量来识别子CU的对应块。对于每个子CU,其对应块的运动信息(覆盖中心样本的最小运动网格)用于导出子CU的运动信息。在识别出对应的N×N块的运动信息之后,以与HEVC的TMVP相同的方式将该运动信息转换为当前子CU的运动矢量和参考索引,其中应用运动缩放和其他过程。例如,解码器校验是否满足低延迟条件(即,当前图片的所有参考图片的POC小于当前图片的POC)并且可能使用运动矢量MVx(对应于参考图片列表X的运动矢量)来预测每个子CU的运动矢量MVy(其中X等于0或1并且Y等于1-X)。
空间-时间运动矢量预测
在该方法中,按照光栅扫描顺序,递归地导出子CU的运动矢量。图16说明了这个构思。让我们考虑一个8×8的CU,它包含四个4×4子CU A、B、C和D。当前帧中相邻的4×4块被标记为a、b、c和d。
子CU A的运动推导通过识别其两个空间相邻开始。第一相邻是子CU A上方的N×N块(块c)。如果该块c不可用或者是帧内编码的,则校验子CU A上方的其他N×N个块(从块c开始,从左到右)。第二相邻是子CU A左侧的块(块b)。如果块b不可用或者是帧内编码的,则校验子CU A左侧的其他块(从块b开始,从上到下)。从每个列表的相邻块获得的运动信息被缩放为给定列表的第一参考帧。接下来,通过遵循与HEVC中指定的TMVP推导相同的过程来导出子块A的时间运动矢量预测器(TMVP)。获取位置D处的共位块的运动信息并相应地缩放。最后,在检索和缩放运动信息之后,对于每个参考列表,所有可用的运动矢量(至多3个)被单独平均。平均的运动矢量被指定为当前子CU的运动矢量。
子CU运动预测模式信令通知
子CU模式被启用作为附加的Merge候选,并且不需要附加的语法元素来信令通知模式。添加两个附加的Merge候选每个CU的Merge候选列表,以表示ATMVP模式和STMVP模式。如果序列参数集指示启用了ATMVP和STMVP,则至多使用七个Merge候选。附加Merge候选的编码逻辑与HM中的Merge候选的相同,这意味着,对于P或B条带中的每个CU,两个附加Merge候选需要附加两个RD校验。
在JEM中,所有Merge索引的bin都由CABAC进行上下文编码。而在HEVC中,仅第一个bin是上下文编码的,而剩余的bin是上下文旁路编码的(context by-pass coded)。
实施例解决的问题的示例
虽然MVD提供了很大的灵活性来适应视频信号中的各种运动,但它构成了比特流的很大一部分。特别是在双向预测期间,需要信令通知L0的MVD和L1的MVD,并且它们引入大的开销,尤其是对于低速率视觉通信。可以利用关于运动对称性的一些属性来节省在运动信息的编码上花费的速率。
当前的AMVP模式(包括MVP索引和参考索引两者)对于L0和L1两者分别进行信令通知,而当运动遵循对称性模型时,它们可以更有效地表示。
实施例示例
1.在双向预测期间,可以利用运动矢量的对称性的属性来生成用于AMVP模式的基础MV集。具体地,仅针对单个方向(列表),信令通知MVD,并且使用镜像条件来设置另一方向的MV。替代地,此外,可以进一步细化MV。这种模式称为对称双向预测模式(sym-bi-mode)。本文,双向预测是指通过按显示顺序使用来自过去的一个参考帧和来自未来的另一参考帧进行预测。在一些示例实施例中,通用视频编码(versatile video coding,VVC)(例如,JVET-N1001-v5和其他版本和标准)包括对称性运动矢量差(symmetric motion vectordifference,SMVD)模式,其可以跳过L1 MVD的信令通知。被跳过的L1 MVD可以被设置为L0MVD的镜像而无需缩放。
a.在一个示例中,当发送L(1-N)(N=0或1)MVD时,不发送LN的MVD值(即,继承为(0,0)),并且MVP被设置为来自L(1-N)MV的镜像MV。之后,可以将运动细化应用于LN运动矢量。
(i)在一个示例中,可以应用DMVR细化过程。替代地,可以应用FRUC细化过程来细化LN运动矢量。
(ii)在一个示例中,细化的搜索范围可以通过SPS(Sequence Parameter Set,序列参数集)、PPS(PictureParameter Set,图片参数集)、VPS(Video Parameter set,视频参数集)或条带头来预定义或信令通知。
(iii)在一个示例中,运动细化可以应用于特定网格。例如,具有网格距离d的均匀采样网格可用于定义搜索点。网格距离d可以被预定义,或者经由SPS、PPS、VPS或条带头用信令通知。采样网格的使用可以被认为是子采样的搜索区域,因此具有减少搜索所需的存储器带宽的益处。
(iv)在一个示例中,镜像模式的信令通知可以在CU级、CTU级、区域级(覆盖多个CU/CTU)或条带级中进行。当它在CU级进行时,当它是sym-bi-mode时,需要用信令通知一位(one-bit)标志。也就是说,当该标志被信令通知为1时,可以跳过相关联的LN MVD以及其MVP索引。当在CTU级、区域级或条带级完成时,所有sym-bi-mode都不会信令通知LNMVD值及其MVP索引。在一些示例实施例中,SMVD标志的信令通知发生在CU级。
b.在一个示例中,在条带头/图片参数集/序列参数集中存在一位标志,用于信令通知是否应该调用细化过程。替代地,也可以在CU/CTU/区域级进行信令通知。
c.在一个示例中,在双向预测期间,可以信令通知要跳过哪个MVD列表。信令通知可以在CU级、区域级、CTU级或条带级发生。当在CU级进行信令通知时,需要在sym-bi-mode中信令通知一位标志。当在区域级、CTU级或条带级用信令通知时,所有属于双向预测CU的都将跳过指定列表的MVD的信令通知,并使用镜像MVP作为其起始点来找到最终运动矢量。
d.在一个示例中,仅需要将镜像MVP存储在MV缓冲器中以用于后续块的运动预测(AMVP,Merge)。细化的运动矢量不需要存储在MV缓冲器中。
e.在一个示例中,MVP可以随常规MVP索引放置,并且需要一个附加比特(总共2个)来信令通知三个MVP索引。在一些实施例中,在SMVD模式中,两个MVP索引都被信令通知为常规AMVP模式。
f.在一个示例中,添加镜像MVP候选来代替第二AMVP候选。尽管如此,只需要一位来信令通知MVP索引。
g.在一个示例中,当两个参考帧之间的POC距离相等时,可以应用镜像MVP模式。在一些实施例中,在SMVD模式中,导出两个参考作为L0和L1中与当前帧最接近的参考帧。
h.在一个示例中,由镜像引入的缩放可以使用源帧和目标帧之间的相对时间距离。例如,如果使用L(1-N)的参考帧和LN的参考帧,并且决定跳过LN的MVD信令通知,LN(N=0或1)的初始运动矢量可以计算为:MVPN=(τN/τ(1-N))·MV(1-N),其中τ0和τ1分别表示L0的当前帧和参考帧之间的POC距离和L1的当前帧和参考帧之间的POC距离。
2.可以使用各种匹配方案来完成细化过程。让来自L0和L1图片的补丁(patch)分别为P0和P1。补丁被定义为由MV的插值过程生成的预测样本。
a.P0和P1之间的相似性用作选择细化的MV的标准。在一个示例中,细化找到MVN(N=0或1),其最小化了P0和P1之间的绝对差之和(SAD)。
b.由P0和P1生成临时补丁,并且可以将标准定义为找到预测补丁和临时补丁之间具有最高相关性的MV。例如,可以创建单独的补丁P’=(P0+P1)/2并用于找到MVN(N=0或1),其最小化了P'和PN之间的SAD。更一般地,P’可以通过以下公式生成:P’=ω·P0+(1-ω)·P1,其中ω是0和1之间的加权因子。
c.在一个示例中,基于模板的匹配方案可用于定义细化过程。顶部模板、左侧模板、或顶部和左侧模板两者同时可用于查找MVN(N=0或1)。找到MVN(N=0或1)的过程类似于上述两个示例中描述的过程。
d.在一个示例中,取决于搜索点到初始镜像MVP位置的距离,针对搜索点中的一些可以跳过插值过程。当搜索那些到MVPN(N=0或1)的距离超过阈值T的点时,不涉及插值过程。只有整数像素参考样本被用作补丁来导出运动矢量。T可以预先定义,也可以经由SPS、PPS、VPS或条带头信令通知。
e.在一个示例中,用于找到MVN的成本度量包括由搜索点引入到镜像MVP的估计速率:C=SAD+λ·R,其中λ是一个加权因子,用于加权细化过程中估计速率的重要性。λ的值可以预定义,通过SPS、PPS、VPS或条带头用信令通知。注意,下面定义的MVDN、MVN和MVPN是二维矢量。
i.在一个示例中,R=||MVDN||,其中MVDN=MVN–MVPN。这里,函数||·||代表L1规范。
ii.在一个示例中,R=round(log2(||MVDN||)),其中函数round指示输入自变量(argument)对最接近的整数的舍入函数。
iii.在一个示例中,R=mvd_coding(MVDN),其中函数mvd_coding指示输入MVD值的符合标准的二值化过程。
3.MVD_L1_ZERO_FLAG是条带级标志,其通过移除所有L1MVD值,对L1 MVD信令通知施加强约束。镜像MV和细化可以通过以下方式与这种设计结合使用。
a.在一个示例中,当启用MVD_L1_ZERO_FLAG时,不用信令通知MVP索引,并且仍然可以应用镜像MVP约束和细化过程。
b.在一个示例中,当启用MVD_L1_ZERO_FLAG时,仍然信令通知MVP索引(例如,如在上述1.e或1.f中)并且不施加镜像MVP约束。然而,仍然可以应用MV细化过程。
c.在一个示例中,当启用MVD_L1_ZERO_FLAG时,将镜像MVP添加到MVP候选列表,随后是MV细化过程。
4.当涉及LN(N=0或1)的参考索引和MVP索引的信令通知时,可以创建联合MVP列表以支持镜像MVD模式。也就是说,MVP列表是针对L0和L1(给定的一对特定参考索引)联合导出的,并且仅需要信令通知单个索引。
a.在一个示例中,可以跳过refIdxN的信令通知,并且仅选择最接近L(1-N)参考帧的镜像位置的参考帧,作为其用于MVP缩放的参考帧。在一些实施例中,在SMVD模式中,跳过两个参考索引,因为它们在两个列表中被选择为与当前帧最接近的参考帧。
b.在一个示例中,在推导过程期间,不能创建Bi预测器的MVP候选应被视为无效。
c.在一个例子中,除了当缩放发生时,导致运动矢量位于解码图片缓冲器(Decoded Picture Buffer,DPB)中的L0和L1的参考帧上的候选对被认为是有效候选之外,推导可以通过遵循针对L(1-N)的MVP推导的现有过程来完成。
d.可以表示镜像MVD模式,包括:
如果(sym_mvd_flag[x0][y0]){
MvdL1[x0][y0][0]=-MvdL0[x0][y0][0]
MvdL1[x0][y0][1]=-MvdL0[x0][y0][1]
}否则
5.所提出的方法也可以应用于多假设模式。
a.在这种情况下,当针对每个参考图片列表存在两组MV信息时,可以针对一个参考图片列表信令通知MV信息。然而,可以导出另一参考图片列表的MV信息集的MVD。对于一个参考图片列表的每组MV信息,可以以与sym-bi-mode相同的方式对其进行处理。
b.替代地,当存在用于每个参考图片列表的两组MV信息时,可以信令通知两个参考图片列表的一组MV信息。然而可以使用sym-bi-mode在运行中导出两个参考图片列表的其他两组MV信息。
许多视频编码标准基于混合视频编码结构,其中利用时间预测加转换编码。图17中描绘了典型HEVC编码器框架的示例。
图18是视频处理装置的框图1800。装置1800可以用于实施本文描述的一个或多个方法。装置1800可以体现在智能手机、平板电脑、计算机、物联网(Internet of Things,IoT)接收器等中。装置1800可以包括一个或多个处理器1802、一个或多个存储器1804和视频处理硬件1806。(多个)处理器1802可以被配置为实施本文档中描述的一种或多种方法。存储器(多个存储器)1804可以用于存储用于实施本文描述的方法和技术的数据和代码。视频处理硬件1806可用于在硬件电路中实施本文档中描述的一些技术。
图19是视频比特流处理的示例方法1900的流程图。方法1900包括:响应于视频比特流中的镜像模式标志,基于对称性规则和第一运动矢量差信息生成(1902)第二运动矢量差信息;使用第一运动矢量差和第二运动矢量差信息重建(1904)视频块,其中,重建是双向预测地执行的。
图20是视频比特流处理的示例方法2000的流程图。方法2000包括:对于与视频块相关联的第一参考图片列表,接收(2002)第一组运动矢量的运动矢量差信息;以及使用多假设对称性规则,从第一组运动矢量的运动矢量差信息导出(2004)与第二参考图片列表的第二组运动矢量相关联的运动矢量差信息,该第二参考图片列表与视频块相关联。该信息可以使用接收的第一组运动矢量的运动矢量差信息来生成。
在一些实施例中,视频比特流处理的方法可以包括方法2000的变型,其中,在多假设情况下,部分运动矢量差信息以交织方式被信令通知。这种方法包括:对于视频块,接收与第一参考图片列表相关联的第一运动矢量差信息,对于该视频块,接收与第二参考图片列表相关联的第二运动矢量差信息;使用多假设对称性规则从第一运动矢量差信息和第二运动矢量差信息导出与第一参考图片列表相关联的第三运动矢量差信息和与第二参考图片列表相关联的第四运动矢量差信息。
关于方法1900和2000,比特流处理可以包括以压缩形式生成表示视频的比特流。替代地,比特流处理可以包括使用比特流从其压缩形式表示重建视频。
关于方法1900和2000,在一些实施例中,对称性规则和多假设对称性规则可以相同或不同。特别地,仅当使用多假设运动预测对视频块(或图片)进行编码时,才可以使用多假设对称性规则。
关于方法1900和2000,对称性规则可以指定第二运动矢量预测差值将是(0,0),并且相应的运动矢量预测器被设置为镜像运动矢量,其值从第一运动矢量差值信息导出。此外,可以进一步对镜像运动矢量值执行运动矢量细化。如以上示例中所述,可以基于CU/CTU/区域级的比特流中的指示来选择性地使用镜像模式。类似地,还可以通过信令通知细化标志,来控制运动矢量细化被使用(或不被使用)。可以在条带头或图片参数集、或序列参数集或区域级或编码单元或编码树单元级使用细化标志。
关于方法1900和2000,使用基于对称性规则的技术以生成镜像运动矢量可以使得能够跳过在比特流中发送运动矢量差信息(因为该信息可以由解码器生成)。可以经由比特流中的标志选择性地控制跳过操作。在一个有利方面,使用上述技术的镜像MVP计算可以在解码器侧用于改进后续块的解码,而不会受到在细化的运动矢量被用于后续块的预测的情形下可能发生的计算依赖性的不利影响。
关于方法1900和2000,在一些实施例中,对称性规则可以仅用于在两个参考帧具有相同距离的情况下生成镜像运动矢量。否则,可以基于参考帧的相对时间距离来执行运动矢量的缩放。
关于方法1900和2000,在一些实施例中,可以使用基于补丁的技术来计算镜像运动矢量,并且可以包括使用来自参考帧列表0的第一运动矢量差来生成预测样本的第一补丁,使用来自参考帧列表1的第一运动矢量差来生成预测样本的第二补丁,并且将运动矢量细化确定为最小化第一补丁和第二补丁之间的误差函数的值。可以使用各种优化标准(例如,速率失真(rate distortion)、SAD等)来确定细化的运动矢量。
应当理解,公开了用于减少压缩视频比特流中用于表示运动的比特量的技术。使用所公开的技术,可以仅使用常规技术的运动信息的一半来信令通知双向预测,并且可以使用视频中对象的运动的镜像对称性在解码器处生成另一半运动信息。对称性标志和细化标志可以用于信令通知该模式的使用(或不使用)以及运动矢量的进一步细化。可以使用对称性规则来计算镜像运动矢量。在对称性规则中做出的一个假设是对象在当前块的时间和用于双向预测的参考块的时间之间保持其平移运动。例如,使用一个对称性规则,指向在一个时间方向上从当前块位移了delx和dely的参考区域的运动矢量可以被假设为在另一个方向上改变到delx和dely的缩放版本(缩放也可以包括负缩放,这可能是由于运动矢量方向的改变)。缩放可以取决于时间距离和其他考虑因素并且在本文档中描述。
本文档中描述的公开的和其他解决方案、示例、实施例、模块和功能操作可以在数字电子电路中实施,或者在计算机软件、固件或硬件中实施,包括本文档中公开的结构及其结构等同物,或者它们中的一个或多个的组合。所公开的和其他实施例可以被实施为一个或多个计算机程序产品,即编码在计算机可读介质上的计算机程序指令的一个或多个模块,用于由数据处理装置执行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储器设备、影响机器可读传播信号的物质组合、或者它们中的一个或多个的组合。术语“数据处理装置”涵盖用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多个处理器或计算机。除了硬件之外,该装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件的代码、协议栈、数据库管理系统、操作系统、或者它们中的一个或多个的组合。传播信号是人工生成的信号,例如机器生成的电信号、光信号或电磁信号,其被生成以对信息进行编码以便传输到合适的接收器装置。
计算机程序(也称为程序、软件、软件应用、脚本或代码)可以以任何形式的编程语言编写,包括编译或解释语言,并且可以以任何形式部署,包括作为独立(stand-alone)程序或作为模块、组件、子例程或适合在计算环境中使用的其他单元。计算机程序不一定对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本),存储在专用于所讨论的程序的单个文件中,或者存储在多个协调文件(例如,存储一个或多个模块、子程序或部分代码的文件)中。可以部署计算机程序以在一个计算机上或在位于一个站点上或分布在多个站点上并通过通信网络互连的多个计算机上执行。
本文档中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程处理器执行,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路执行,并且装置也可以被实施为专用逻辑电路,例如FPGA(fieldprogrammable gate array,现场可编程门阵列)或ASIC(application specificintegrated circuit,专用集成电路)。
作为示例,适合于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括一个或多个用于存储数据的大容量存储设备,例如磁盘、磁光盘或光盘,或者被可操作地耦合以从一个或多个大容量存储设备接收数据或传送数据或两者。但是,计算机不需要这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和快闪存储器设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;和CD ROM和DVD-ROM磁盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。
虽然本专利文档包含许多细节,但这些细节不应被解释为对任何发明或可要求保护的范围的限制,而是作为特定于特定发明的特定实施例的特征的描述。本专利文档中在单个实施例的上下文中描述的某些特征也可以在单个实施例中组合实施。相反,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合在多个实施例中实施。此外,尽管上面的特征可以描述为以某些组合起作用并且甚至最初被要求保护,但是在某些情况下,可以从组合中删除来自所要求保护的组合的一个或多个特征,并且所要求保护的组合可以指向子组合或子组的变化。
类似地,虽然在附图中以特定顺序描绘了操作,但是这不应该被理解为要求以所示的特定顺序或按顺序执行这些操作,或者执行所有示出的操作,以实现期望的结果。此外,在本专利文档中描述的实施例中的各种系统组件的分离不应被理解为在所有实施例中都需要这种分离。
仅描述了几个实施方式和示例,并且可以基于本专利文档中描述和图示的内容进行其他实施、增强和变化。

Claims (17)

1.一种处理视频数据方法,包括:
为视频的视频块和所述视频的比特流之间的转换,响应于视频比特流中的镜像模式标志,基于对称性规则和第一运动矢量差信息生成第二运动矢量差信息;和
使用所述第一运动矢量差信息和所述第二运动矢量差信息重建当前图片中的视频块,其中使用双向预测执行所述重建。
2.根据权利要求1所述的方法,其中,所述对称性规则指定不发送所述第二运动矢量差信息,
所述方法进一步包括:
执行镜像运动矢量值的运动矢量细化以生成运动矢量细化值。
3.根据权利要求2所述的方法,其中,基于所述视频比特流中的细化标志选择性地执行所述运动矢量细化,
其中,所述细化标志至少包括在条带头、图片参数集、序列参数集、区域级、编解码单元或编解码树单元级中。
4.根据权利要求1所述的方法,其中,所述视频比特流包括指示在视频比特流中被跳过信令通知的运动矢量差的列表的跳过信息;
其中,所述跳过信息处于编解码单元级、区域级、编解码树单元级或条带级;
其中,在所述跳过信息处于区域级、编解码树单元级或条带级的情况下,编解码单元使用所述对称性规则来生成第二运动矢量信息。
5.根据权利要求1所述的方法,进一步包括:
存储使用所述对称性规则生成的运动矢量预测值,用于处理后续视频块的预测信息;
其中,所述运动矢量预测值与常规运动矢量预测值一起使用,并且其中,两比特字段信令通知所述视频比特流中的运动矢量预测值,或者
其中,使用所述运动矢量预测值代替所述常规运动矢量预测值中的一个,并且利用所述视频比特流中的单个比特来执行信令通知。
6.根据权利要求1所述的方法,其中,仅在用于双向预测的两个参考帧之间的图片顺序计数距离相等的情况下使用所述对称性规则,
其中,所述视频比特流省略用于参考图片列表l1的运动矢量差值的信令通知,并且其中,使用以下来执行所述双向预测:
(参考图片列表0中的第一参考图片的第一图片序号(POC))-(当前图片的第二POC)=(当前图片的POC)-(参考图片列表1中的另一参考图片的第三POC),
其中,用于所述双向预测的两个参考图片为从过去帧和未来帧导出的与当前图片最接近的参考图片,
其中,所述视频比特流对于每个视频块使用单个参考索引和单个运动矢量预测索引,联合地信令通知参考列表0和参考列表1的参考索引和运动矢量预测索引,
其中,使用与所述视频块的源帧和目标参考帧之间的相对时间距离成比例的缩放来确定镜像运动矢量值。
7.根据权利要求2所述的方法,其中,执行所述运动矢量细化包括:
使用来自与第一参考图片列表相关联的参考帧的第三运动矢量生成预测样本第一补丁;
使用来自与第二参考图片列表相关联的参考帧的所述镜像运动矢量值生成预测样本第二补丁;和
将所述运动矢量细化值确定为最小化所述第一补丁和所述第二补丁之间的误差函数的值,
其中,所述误差函数包括绝对差值和测量;
其中,所述误差函数包括所述运动矢量细化值与所述第一补丁和所述第二补丁的加权线性平均值之间的相关性;或者
其中,所述误差函数是使用所述运动矢量细化值的速率失真函数。
8.根据权利要求2所述的方法,其中,执行所述运动矢量细化包括:
将所述运动矢量细化值确定为使用与两个参考图片列表相关联的参考帧之间的顶部和左侧参考或插值样本来最小化误差函数的值;或者
执行所述运动矢量细化包括:
当所述运动矢量细化值大于阈值时,将所述运动矢量细化值确定为使用与两个参考图片列表相关联的两个参考帧之间的整数参考样本来最小化误差函数的值。
9.根据权利要求1所述的方法,其中,所述对称性规则响应于包括用于所述视频块的条带级信令通知中的MVD_L1_ZERO_FLAG的标志,
其中,镜像模式标志存在于编解码单元(CU)级、编解码树单元(CTU)级、覆盖多个CU/CTU的区域级或条带级。
10.根据权利要求1所述的方法,其中,所述转换包括将所述视频编码到所述比特流中。
11.根据权利要求1所述的方法,其中,所述转换包括从所述比特流解码所述视频。
12.一种处理视频数据的装置,包括处理器和其上具有指令的非暂时性存储器,其中,所述指令在由所述处理器执行时使得所述处理器:
为视频的视频块和所述视频的比特流之间的转换,响应于视频的比特流中的镜像模式标志,基于对称性规则和第一运动矢量差信息生成第二运动矢量差信息;和
使用所述第一运动矢量差信息和所述第二运动矢量差信息重建当前图片中的视频块,其中使用双向预测执行所述重建。
13.一种存储指令的非暂时性计算机可读存储介质,所述指令使得处理器:
为视频的视频块和所述视频的比特流之间的转换,响应于视频比特流中的镜像模式标志,基于对称性规则和第一运动矢量差信息生成第二运动矢量差信息;和
使用所述第一运动矢量差信息和所述第二运动矢量差信息重建当前图片中的视频块,其中使用双向预测执行所述重建。
14.一种存储视频的比特流的非暂时性计算机可读存储介质,所述比特流由视频处理装置执行的方法生成,其中,所述方法包括:
响应于视频的比特流中的镜像模式标志,基于对称性规则和第一运动矢量差信息生成第二运动矢量差信息;和
使用所述第一运动矢量差信息和所述第二运动矢量差信息重建当前图片中的视频块,其中使用双向预测执行所述重建;
基于所述重建生成所述视频的比特流。
15.一种存储视频的比特流的方法,包括:
响应于视频的比特流中的镜像模式标志,基于对称性规则和第一运动矢量差信息生成第二运动矢量差信息;
使用所述第一运动矢量差信息和所述第二运动矢量差信息重建当前图片中的视频块,其中使用双向预测执行所述重建;
基于所述重建生成所述视频的比特流;
将所述比特流存储到非暂时性计算机可读存储介质中。
16.一种视频处理装置,包括处理器,其中所述处理器被配置为实施根据权利要求1至11中的任一项所述的方法。
17.一种其上存储有指令的非暂时性计算机可读介质,其中,所述指令在由处理器执行时使得所述处理器实施根据权利要求1至11中任一项所述的方法。
CN202210763999.XA 2018-06-30 2019-07-01 用于视频编解码的对称性双向预测模式 Pending CN115396677A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN2018093897 2018-06-30
CNPCT/CN2018/093897 2018-06-30
CN201910586486.4A CN110662077B (zh) 2018-06-30 2019-07-01 用于视频编解码的对称性双向预测模式

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201910586486.4A Division CN110662077B (zh) 2018-06-30 2019-07-01 用于视频编解码的对称性双向预测模式

Publications (1)

Publication Number Publication Date
CN115396677A true CN115396677A (zh) 2022-11-25

Family

ID=67185530

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202210763999.XA Pending CN115396677A (zh) 2018-06-30 2019-07-01 用于视频编解码的对称性双向预测模式
CN201910586486.4A Active CN110662077B (zh) 2018-06-30 2019-07-01 用于视频编解码的对称性双向预测模式

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201910586486.4A Active CN110662077B (zh) 2018-06-30 2019-07-01 用于视频编解码的对称性双向预测模式

Country Status (3)

Country Link
CN (2) CN115396677A (zh)
TW (1) TWI719522B (zh)
WO (1) WO2020003262A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220132137A1 (en) * 2019-03-24 2022-04-28 Lg Electronics Inc. Image encoding/decoding method and device using symmetric motion vector difference (smvd), and method for transmitting bitstream

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112640468A (zh) * 2018-09-04 2021-04-09 华为技术有限公司 应用于双向帧间预测中的参考帧获取方法及装置
US11025936B2 (en) * 2019-01-25 2021-06-01 Tencent America LLC Method and apparatus for video coding
US20220174286A1 (en) * 2019-03-08 2022-06-02 Electronics And Telecommunications Research Institute Image encoding/decoding method and apparatus, and recording medium for storing bitstream
CN117941344A (zh) * 2021-09-15 2024-04-26 抖音视界有限公司 用于视频处理的方法、装置和介质
US20230328227A1 (en) * 2022-04-07 2023-10-12 Tencent America LLC Systems and methods for joint coding of motion vector difference using template matching based scaling factor derivation

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104104960B (zh) * 2013-04-03 2017-06-27 华为技术有限公司 多级双向运动估计方法及设备
US10958927B2 (en) * 2015-03-27 2021-03-23 Qualcomm Incorporated Motion information derivation mode determination in video coding
CN107222742B (zh) * 2017-07-05 2019-07-26 中南大学 基于时空域相关性的视频编码Merge模式快速选择方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220132137A1 (en) * 2019-03-24 2022-04-28 Lg Electronics Inc. Image encoding/decoding method and device using symmetric motion vector difference (smvd), and method for transmitting bitstream

Also Published As

Publication number Publication date
CN110662077B (zh) 2022-07-05
TWI719522B (zh) 2021-02-21
WO2020003262A1 (en) 2020-01-02
CN110662077A (zh) 2020-01-07
TW202017375A (zh) 2020-05-01

Similar Documents

Publication Publication Date Title
US11825113B2 (en) Interaction between intra block copy mode and inter prediction tools
US20220150508A1 (en) Restrictions on decoder side motion vector derivation based on coding information
KR102613889B1 (ko) 적응적 움직임 벡터 해상도를 갖는 움직임 벡터 수정
US11470341B2 (en) Interaction between different DMVD models
US11082712B2 (en) Restrictions on decoder side motion vector derivation
US20210227211A1 (en) Temporal gradient calculations in bio
CN110662077B (zh) 用于视频编解码的对称性双向预测模式
CN110662055B (zh) 扩展Merge模式
CN112868239A (zh) 并置的局部照明补偿和帧内块复制编解码
US20210360256A1 (en) Interaction between mv precisions and mv difference coding
CN113273205A (zh) 使用更高比特深度精度的运动矢量推导
WO2020070729A1 (en) Size restriction based on motion information

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