CN114374850A - 高效的仿射Merge运动矢量推导的方法、装置及存储介质 - Google Patents

高效的仿射Merge运动矢量推导的方法、装置及存储介质 Download PDF

Info

Publication number
CN114374850A
CN114374850A CN202210066664.2A CN202210066664A CN114374850A CN 114374850 A CN114374850 A CN 114374850A CN 202210066664 A CN202210066664 A CN 202210066664A CN 114374850 A CN114374850 A CN 114374850A
Authority
CN
China
Prior art keywords
block
blocks
motion vector
current video
sub
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
CN202210066664.2A
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 ByteDance Network Technology Co Ltd
ByteDance Inc
Original Assignee
Beijing ByteDance Network Technology 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 Beijing ByteDance Network Technology Co Ltd, ByteDance Inc filed Critical Beijing ByteDance Network Technology Co Ltd
Publication of CN114374850A publication Critical patent/CN114374850A/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/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/537Motion estimation other than block-based
    • 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/527Global motion vector estimation
    • 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/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/117Filters, e.g. for pre-processing or post-processing
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/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/184Methods 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 bits, e.g. of the compressed video stream
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Abstract

公开了一种用于高效仿射Merge运动矢量推导的视频处理方法。在一个方面,提供了一种视频处理方法,包括将当前视频块划分为子块;针对每个子块推导出运动矢量,其中每个子块的运动矢量根据位置规则与该子块的位置相关联;并使用子块的运动矢量来处理当前视频块的比特流表示。

Description

高效的仿射Merge运动矢量推导的方法、装置及存储介质
相关申请的交叉引用
本申请是申请日为2019年7月1日、申请号为20190586584.8、发明名称为“高效的仿射Merge运动矢量推导的方法、装置及存储介质”的发明专利申请的分案申请。根据适用的专利法和/或巴黎公约的规定,本申请及时要求于2018年7月1日提交的国际专利申请号PCT/CN2018/093943、以及2018年7月13日提交的国际专利申请号PCT/CN2018/095568的优先权和权益。中国申请号20190586584.8、国际专利申请号PCT/CN2018/093943和国际专利申请号PCT/CN2018/095568的全部公开以引用方式并入本文,作为本申请公开的一部分。
技术领域
本专利文件涉及视频编码和解码技术、设备以及系统。
背景技术
尽管视频压缩有所进步,但数字视频仍占因特网和其他数字通信网络上最大的带宽使用。随着能够接收和显示视频的所连接的用户设备的数量增加,预计数字视频使用的带宽需求将继续增长。
发明内容
该文件公开了可以在视频编码和解码实施例中使用的技术,以改善特别是在使用仿射运动编码模式时基于子块的编码的性能。
在一个示例方面,提供了一种视频处理方法,包括将当前块划分为子块;针对每个子块推导出运动矢量,其中每个子块的运动矢量根据位置规则与该子块的位置相关联;并使用子块的运动矢量来处理当前块的比特流表示。
在另一个方面,提供了一种视频处理方法,包括:针对使用仿射模式的当前块与当前块的比特流表示之间的转换,基于位置规则推导出在当前块的控制点处的运动矢量;并且使用运动矢量来执行在当前块与比特流表示之间的转换,并且其中位置规则指定对于推导排除使用非相邻的邻近块。
在另一个方面,提供了一种视频处理方法,包括:针对在当前块与所述当前块的比特流表示之间的转换,通过包括来自一个或多个邻近块的、基于所述一个或多个邻近块的位置满足有效性标准的Merge候选来确定用于所述转换的仿射Merge候选列表;并且使用运动矢量来执行当前块与比特流表示之间的转换。
在又一个示例方面,公开了一种实现本文描述的视频编码方法的视频编码器设备。
在又一个代表性方面,本文描述的各种技术可以实施为存储在非暂时性计算机可读介质上的计算机程序产品。该计算机程序产品包括用于实施本文描述的方法的程序代码。
在又一个代表性方面,视频解码器装置可以实现如本文所述的方法。
在随附的附件、附图和以下描述中阐述了一个或多个实现方式的细节。根据说明书和附图以及权利要求,其他特征将是显而易见的。
附图说明
图1示出了基于子块的预测的示例。
图2示出了简化的仿射运动模型的示例。
图3示出了每个子块的仿射运动矢量场(MVF)的示例。
图4示出了AF_INTER模式的运动矢量预测(MVP)的示例。
图5A和图5B描绘了AF_MERGE编码模式的候选的示例。
图6示出了用于编码单元(CU)的高级时间运动矢量预测器(ATMVP)运动预测的示例过程。
图7示出了具有四个子块(A-D)及其邻近块(a-d)的一个CU的示例。
图8示出了视频编码中的光流轨迹的示例。
图9A和9B示出了在没有块扩展的情况下的双向光流(BIO)编码技术的示例。图9A示出了块外的访问位置的示例,并且图9B示出了用于避免额外的存储器访问和计算的填充的示例。
图10示出了双边匹配的示例。
图11示出了模板匹配的示例。
图12示出了在帧速率上转换(FRUC)中的单向运动估计(ME)的示例。
图13示出了交织预测的示例实现方式。
图14示出了对于不同子块推导出MV的不同位置的示例,其中星形表示不同位置。
图15示出了用于推导出v0x和v0y的邻近块的示例。
图16A和图16B示出了从用仿射模式(a)编码的左侧相邻块或从用仿射模式编码的顶部相邻块推导出仿射Merge模式的MV的示例。
图17示出了属于不同编码树单元(CTU)行的邻近块和当前块的示例,其中来自这样的邻近块的仿射Merge候选被视为无效。
图18示出了根据所公开的技术的两种划分模式的交织预测的示例。
图19A示出了根据所公开的技术将块划分为4×4子块的示例划分模式。
图19B示出了根据所公开的技术将块划分为8×8子块的示例划分模式。
图19C示出了根据所公开的技术将块划分为4×8子块的示例划分模式。
图19D示出了根据所公开的技术将块划分为8×4子块的示例划分模式。
图19E示出了根据所公开的技术将块划分为非均匀子块的示例划分模式。
图19F示出了根据所公开的技术将块划分为非均匀子块的另一种示例划分模式。
图19G示出了根据所公开的技术将块划分为非均匀子块的又一种示例划分模式。
图20是用于实现本文件中描述的视觉媒体解码或视觉媒体编码技术的硬件平台的示例的框图。
图21是用于视频处理的示例方法的流程图。
图22是用于视频处理的另一个示例方法的流程图。
图23是用于视频处理的另一个示例方法的流程图。
具体实施方式
在本文件中使用节标题以改善可读性,但是并非将节中描述的技术和实施例仅限制于该节。
为了改善视频的压缩率,研究人员不断寻找用于编码视频的新技术。
1.简介
该专利文件与视频/图像编码技术有关。具体地,它涉及视频/图像编码中基于子块的预测。它可以应用于现有的视频编码标准(如HEVC),或将最终确定的标准(多功能视频编码)。它也可以适用于未来的视频/图像编码标准或视频/图像编解码器。
简要讨论
基于子块的预测首先由HEVC Annex I(3D-HEVC)引入到视频编码标准中。使用基于子块的预测,诸如编码单元(CU)或预测单元(PU)的块被划分为数个非重叠子块。可以为不同的子块分配不同的运动信息,诸如参考索引或运动矢量(MV),并且对每个子块单独执行运动补偿(MC)。图1示出了基于子块的预测的概念。
为了探索HEVC之外的未来视频编码技术,由VCEG和MPEG于2015年联合成立联合视频探索团队(JVET)。从那时起,JVET采用了许多新方法并将其纳入名为联合勘探模型(JEM)的参考软件。
在JEM中,基于子块的预测被用于数种编码工具,诸如仿射预测、可选时间运动矢量预测(ATMVP)、空时运动矢量预测(STMVP)、双向光流(BIO)和帧速率上转换(FRUC)。
2.1.仿射预测
在HEVC中,仅将平移运动模型应用于运动补偿预测(MCP)。而在现实世界中,存在许多种运动,例如放大/缩小、旋转、透视运动和其他不规则的运动。在JEM中,应用简化的仿射变换运动补偿预测。如图2所示,块的仿射运动场由两个控制点运动矢量描述。
块的运动矢量场(MVF)由以下等式描述:
Figure BDA0003480363230000041
其中(v0x,v0y)是左顶角控制点的运动矢量,(v1x,v1y)是右顶角控制点的运动矢量。
为了进一步简化运动补偿预测,应用基于子块的仿射变换预测。子块尺寸M×N如等式(2)中推导出,其中MvPre是运动矢量分数精度(在JEM中为1/16),(v2x,v2y)是左下控制点的运动矢量,根据等式(1)计算。
Figure BDA0003480363230000051
在由等式(2)推导出之后,如果需要,应该向下调整M和N,以使其分别为w和h的除数。
如图3所示,为了推导出每个M×N子块的运动矢量,根据等式(1)计算每个子块的中心样点的运动矢量并将其取整至1/16分数精度。然后,应用运动补偿插值滤波器,以利用推导出的运动矢量生成每个子块的预测。
在MCP之后,每个子块的高精度运动矢量以与正常运动矢量相同的精度被取整并保存。
在JEM中,存在两种仿射运动模式:AF_INTER模式和AF_MERGE模式。对于宽度和高度均大于8的CU,可以应用AF_INTER模式。在比特流中信令通知CU级别的仿射标志,以指示是否使用AF_INTER模式。在此模式下,使用邻近块构建具有运动矢量对{(v0,v1)|v0={vA,vB,vC},v1={vD,vE}}的候选列表。如图4所示,从块A、B或C的运动矢量中选择v0。来自邻近块的运动矢量根据参考列表以及根据邻近块的参考的POC、当前CU的参考的POC和当前CU的POC之间的关系来缩放。并且从邻近块D和E中选择v1的方法是类似的。如果候选列表的数量小于2,则由通过重复每个AMVP候选而构建的运动矢量对来填充该列表。当候选列表大于2时,首先根据邻居运动矢量的一致性(候选对中的两个运动矢量的相似性)对候选进行分类,并且仅保留前两个候选。RD成本检查用于确定选择哪个运动矢量对候选作为当前CU的控制点运动矢量预测(CPMVP)。并且,在比特流中信令通知指示候选列表中的CPMVP的位置的索引。在确定当前仿射CU的CPMVP之后,应用仿射运动估计,并找到控制点运动矢量(CPMV)。然后在比特流中信令通知CPMV与CPMVP的差异。
当在AF_MERGE模式中应用CU时,它从有效的邻居重建块获得使用仿射模式编码的第一块。如图5A所示,并且对于候选块的选择顺序是从左方、上方、右上方、左下方到左上方。如图5B所示,如果邻居左下块A以仿射模式编码,则推导出包含块A的CU的左顶角、右上角和左底角的运动矢量v2、v3和v4。并且根据v2、v3和v4来计算当前CU的左顶角的运动矢量v0。其次,计算当前CU的右上方的运动矢量v1
在推导出当前CU的CPMVv0和v1之后,根据简化的仿射运动模型等式(1),生成该当前CU的MVF。为了识别当前CU是否使用AF_MERGE模式编码,当存在至少一个邻近块以仿射模式编码时,在比特流中信令通知仿射标志。
2.2.ATMVP
在可选时间运动矢量预测(ATMVP)方法中,通过从小于当前CU的块中提取多组运动信息(包括运动矢量和参考索引)来修改运动矢量时间运动矢量预测(TMVP)。如图6所示,子CU是方形N×N块(默认地将N设置为4)。
ATMVP以两个步骤预测CU内的子CU的运动矢量。第一步是利用所谓的时间矢量识别参考图片中的对应块。参考图片被称为运动源图片。第二步是将当前CU划分成子CU,并从对应于每个子CU的块中获得运动矢量以及每个子CU的参考索引,如图6所示。
在第一步骤中,由当前CU的空间邻近块的运动信息确定参考图片和对应块。为了避免邻近块的重复扫描过程,使用当前CU的Merge候选列表中的第一Merge候选。第一可用运动矢量及其相关联的参考索引被设置为时间矢量和运动源图片的索引。这样,在ATMVP中,与TMVP相比,可以更准确地识别对应块,其中对应块(有时称为共位(collocated)块)总是相对于当前CU位于右下或中心位置。
在第二步骤中,通过向当前CU的坐标添加时间矢量,通过运动源图片中的时间矢量来识别子CU的对应块。对于每个子CU,其对应块(覆盖中心样本的最小运动网格)的运动信息用于推导子CU的运动信息。在识别出对应的N×N块的运动信息之后,以与HEVC的TMVP相同的方式将其转换为当前子CU的参考索引和运动矢量,其中运动缩放和其他过程也适用。例如,解码器检查是否满足低延迟条件(即,当前图片的所有参考图片的POC小于当前图片的POC)并且可能使用运动矢量MVx(对应于参考图片列表X的运动矢量)来预测每个子CU的运动矢量MVy(其中X等于0或1并且Y等于1-X)。
3.STMVP
在该方法中,按照光栅扫描顺序递归地推导子CU的运动矢量。图7示出了这个概念。让我们考虑包含四个4×4子CU A,B,C和D的8×8CU。当前帧中的邻居4×4块被标记为a,b,c和d。
子CU A的运动推导通过识别其两个空间邻居开始。第一邻居是子CU A上方的N×N块(块c)。如果该块c不可用或者是帧内编码,则(从块c开始,从左到右)检查子CU A上方的其他N×N个块。第二邻居是子CU A左侧的块(块b)。如果块b不可用或者是帧内编码,则(从块b开始,从上到下)检查子CU A左侧的其他块。从每个列表的邻近块获得的运动信息被缩放到给定列表的第一参考帧。接下来,通过遵循与HEVC中指定的TMVP推导相同的过程来推导子块A的时间运动矢量预测值(Temporal Motion Vector Predictor,TMVP)。提取位置D处的共位块的运动信息并对应地缩放。最后,在检索和缩放运动信息之后,对于每个参考列表,所有可用的运动矢量(最多3个)被分别平均。平均运动矢量被指定为当前子CU的运动矢量。
4.BIO
双向光流(BIO)是在用于双向预测的逐块运动补偿之上执行的逐样本运动细化。样本级别运动细化不使用信令通知。
设I(k)为块运动补偿之后参考k(k=0,1)的亮度值,并且
Figure BDA0003480363230000071
分别为I(k)梯度的水平分量和垂直分量。假设光流是有效的,则运动矢量场(vx,vy)由下式给出:
Figure BDA0003480363230000072
将此光流等式与每个样本运动轨迹的埃尔米特插值相结合,得到唯一的三阶多项式,该三阶多项式最后匹配函数值I(k)和其导数
Figure BDA0003480363230000073
两者。该三阶多项式在t=0时的值是BIO预测:
Figure BDA0003480363230000074
这里,τ0和τ1表示到参考帧的距离,如图8所示。基于Ref0和Ref1的POC计算距离τ0和τ1:τ0=POC(当前)-POC(Ref0),τ1=POC(Ref1)-POC(当前)。如果两个预测都来自相同的时间方向(两者都来自过去或都来自未来),则sign是不同的(即,τ0·τ1<0)。在这种情况下,仅当预测不是来自相同的时刻(即,τ0≠τ1)时才应用BIO,两个参考区域都具有非零运动(MVx0,MVy0,MVx1,MVy1≠0)并且块运动矢量与时间距离成比例(MVx0/MVx1=MVy0/MVy1=-τ01)。
通过最小化点A和B(图9A和9B中的运动轨迹和参考帧平面的交叉)中的值之间的差Δ来确定运动矢量场(vx,vy)。模型仅使用Δ的局部泰勒展开的第一线性项:
Figure BDA0003480363230000081
上面的等式中的所有值都取决于样本位置(i′,j′),到目前为止,符号表示中省略了该样本位置。假设运动在局部周围区域是一致的,我们在以当前预测点为中心的(2M+1)×(2M+1)的方形窗口Ω内最小化Δ,其中M等于2:
Figure BDA0003480363230000082
对于该优化问题,JEM使用简化方法,首先在垂直方向上进行最小化,然后在水平方向上进行最小化。由此产生:
Figure BDA0003480363230000083
Figure BDA0003480363230000084
其中,
Figure BDA0003480363230000085
为了避免除以零或非常小的值,在等式(7)和等式(8)中引入正则化参数r和m。
r=500·4d-8 (10)
m=700·4d-8 (11)
这里d是视频样本的比特深度。
为了使BIO的存储器访问与常规双向预测运动补偿保持相同,仅针对当前块内的位置计算所有预测和梯度值I(k),
Figure BDA0003480363230000086
在等式(9)中,以在预测块的边界上的当前预测点为中心的(2M+1)×(2M+1)方形窗口Ω需要访问块外部的位置(如图9A所示)。在JEM中,将块外部的I(k),
Figure BDA0003480363230000087
的值设置为等于块内最近的可用值。例如,这可以实施为填充,如图9B所示。
利用BIO,可以针对每个样本细化运动场。为了降低计算复杂度,在JEM中使用基于块的BIO设计。基于4×4的块计算运动细化。在基于块的BIO中,聚合4×4的块中的所有样本的等式(9)中的sn的值,然后将sn的聚合值用于推导4×4块的BIO运动矢量偏移。更具体地,以下公式用于基于块的BIO推导:
Figure BDA0003480363230000091
其中bk表示属于预测块的第k个4×4块的样本集。将等式(7)和(8)中的sn替换为((sn,bk)>>4),以推导相关联的运动矢量偏移。
在一些情况下,由于噪音或不规则运动,BIO的MV团(MV regiment)可能不可靠。因此,在BIO中,MV团的尺寸被阈值thBIO截顶。基于当前图片的参考图片是否都来自一个方向来确定阈值。如果当前图片的所有参考图片都来自一个方向,则将阈值的值设置为12×214 -d;否则,将其设置为12×213-d
利用使用与HEVC运动补偿过程(2D可分离FIR)一致的操作的运动补偿插值来同时计算BIO的梯度。根据块运动矢量的分数部分,该2D可分离FIR的输入是与运动补偿过程和分数位置(fracX,fracY)相同的参考帧样本。在水平梯度
Figure BDA0003480363230000092
的情况下,首先使用与具有去缩放偏移d-8的分数位置fracY相对应的BIOfilterS垂直插值信号,然后在水平方向上应用梯度滤波器BIOfilterG,该BIOfilterG与具有去缩放偏移18-d的分数位置fracX相对应。在垂直梯度
Figure BDA0003480363230000093
的情况下,首先使用与具有去缩放偏移d-8的分数位置fracY相对应的BIOfilterG垂直应用梯度滤波器,然后在水平方向上使用BIOfilterS执行信号位移,该BIOfilterS与具有去缩放偏移18-d的分数位置fracX相对应。用于梯度计算的插值滤波器BIOfilterG和用于信号位移的插值滤波器BIOfilterS的长度较短(6抽头),以保持合理的复杂度。表1示出了用于BIO中块运动矢量的不同分数位置的梯度计算的滤波器。表2示出了用于BIO中预测信号生成的插值滤波器。
表格1在BIO中用于梯度计算的滤波器
Figure BDA0003480363230000094
Figure BDA0003480363230000101
表格2在BIO中用于预测信号生成的插值滤波器
分数像素位置 预测信号的插值滤波器(BIOfilterS)
0 {0,0,64,0,0,0}
1/16 {1,-3,64,4,-2,0}
1/8 {1,-6,62,9,-3,1}
3/16 {2,-8,60,14,-5,1}
1/4 {2,-9,57,19,-7,2}
5/16 {3,-10,53,24,-8,2}
3/8 {3,-11,50,29,-9,2}
7/16 {3,-11,44,35,-10,3}
1/2 {3,-10,35,44,-11,3}
在JEM中,当两个预测来自不同的参考图片时,BIO应用于所有双向预测块。当为CU启用LIC时,禁用BIO。
在JEM中,OBMC在正常MC过程之后应用于块。为了降低计算复杂性,在OBMC过程中不应用BIO。这意味着BIO仅在使用其自身的MV时才应用于块的MC过程,并且在OBMC过程中使用邻近块的MV时不应用于MC过程。
2.5.FRUC
当CU的Merge标志为真时,向该CU信令通知FRUC标志。当FRUC标志为假时,信令通知Merge索引,并使用常规Merge模式。当FRUC标志为真时,信令通知附加的FRUC模式标志以指示将使用哪种方法(双边匹配或模板匹配)来导出该块的运动信息。
在编码器侧,关于是否对CU使用FRUC Merge模式的决定是基于如对正常Merge候选那样所做的RD成本选择。换言之,通过使用RD成本选择来校验CU的两种匹配模式(双边匹配和模板匹配)。导致最小成本的匹配模式与其他CU模式进一步比较。如果FRUC匹配模式是最有效的模式,则对于CU将FRUC标志设置为真,并且使用有关匹配模式。
FRUC Merge模式中的运动推导过程有两个步骤。首先执行CU级别运动搜索,接下来执行子CU级别运动细化。在CU级别,基于双边匹配或模板匹配为整个CU导出初始运动矢量。首先,生成MV候选列表,并且选择导致最小匹配成本的候选作为进一步CU级别细化的起点。然后,围绕起始点执行基于双边匹配或模板匹配的局部搜索,并且将导致最小匹配成本的MV作为整个CU的MV。随后,运动信息在子CU级别进一步细化,其中导出的CU运动矢量作为起点。
例如,针对W×HCU运动信息推导执行以下推导处理。在第一阶段,导出整体W×HCU的MV。在第二阶段,CU进一步划分为M×M子CU。如(13)中计算M的值,D是预定义的划分深度,其在JEM中默认设置为3。
然后导出每个子CU的MV。
Figure BDA0003480363230000111
如图10所示,双边匹配用于通过在两个不同参考图像中沿当前CU的运动轨迹找到两个块之间的最接近匹配,来导出当前CU的运动信息。在连续运动轨迹的假设下,指向两个参考块的运动矢量MV0和MV1应当与在当前图像和两个参考图像之间的时间距离——即TD0和TD1——成比例。作为特殊情况,当当前图像在时间上在两个参考图像之间并且从当前图像到两个参考图像的时间距离相同时,双边匹配变为基于镜像的双向MV。
如图11所示,模板匹配用于通过找到在当前图像中的模板(当前CU的顶部邻近块和/或左方邻近块)与参考图像中的块(具有与模板相同的尺寸)之间的最接近匹配,来导出当前CU的运动信息。除了上述FRUC Merge模式之外,模板匹配也适用于AMVP模式。在JEM中,如在HEVC中一样,AMVP有两个候选。使用模板匹配方法,导出新的候选。如果由模板匹配的新导出的候选与第一现有AMVP候选不同,则将其插入AMVP候选列表的最开始,并且然后将列表尺寸设置为2(这意味着移除第二现有AMVP候选)。当应用于AMVP模式时,仅应用CU级别搜索。
CU级别MV候选集合
CU级别的MV候选集合由以下组成:
(i)如果当前CU处于AMVP模式,则为原始AMVP候选,
(ii)所有Merge候选,
(iii)插值MV域中的数个MV(稍后描述),
(iv)顶部和左方邻近的运动矢量。
当使用双边匹配时,Merge候选的每个有效MV被用作输入,以在假设双边匹配的情况下生成MV对。例如,Merge候选的一个有效MV是在参考列表A中的(MVa,refa)。然后,在其他参考列表B中找到其配对双边MV的参考图像refb,使得refa和refb在时间上位于当前图片的不同侧。如果参考列表B中这样的refb不可用,则refb被确定为与refa不同的参考,并且refb到当前图像的时间距离是列表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候选集合由以下组成:
(i)从CU级别搜索确定的MV,
(ii)顶部、左方、左顶和右顶的邻近MV,
(iii)来自参考图像的并列MV的缩放版本,
(iv)最多4个ATMVP候选,
(v)最多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级别的候选集合中选择候选时,匹配成本是双边匹配或模板匹配的绝对差之和(SAD)。在确定起始MV之后,如下计算子CU级别搜索的双边匹配的匹配成本C:
Figure BDA0003480363230000131
其中w是一个加权因子,且根据经验设置为4,MV和MVs分别指示当前MV和起始MV。SAD仍用作子CU级别搜索的模板匹配的匹配成本。
在FRUC模式中,MV通过仅使用亮度样点导出。导出的运动将用于MC帧间预测的亮度和色度。在确定MV之后,使用用于亮度的8抽头插值滤波器和用于色度的4抽头插值滤波器来执行最终MC。
MV细化
MV细化是以双边匹配成本或模板匹配成本为准则的基于模式的MV搜索。在JEM中,支持两种搜索模式——分别用于CU级别和子CU级别的MV细化的无限制的中心偏置菱形搜索(unrestricted center-biased diamond search,UCBDS)和自适应交叉搜索(adaptivecross search)。对于CU级别和子CU级别MV细化,以四分之一亮度样点MV精度直接搜索MV,并且接下来以八分之一亮度样点MV细化。对于CU步骤和子CU步骤的MV细化的搜索范围被设置为等于8个亮度样点。
模板匹配FRUC Merge模式中预测方向的选择
在双边匹配Merge模式中,始终应用双向预测,因为基于在两个不同参考图像中沿当前CU的运动轨迹的两个块之间的最接近匹配来导出CU的运动信息。模板匹配Merge模式不存在这样的限制。在模板匹配Merge模式中,编码器可以在针对CU的来自列表0的单向预测、来自列表1的单向预测或者双向预测之中进行选择。选择基于模板匹配成本,如下:
如果costBi<=factor*min(cost0,cost1)
使用双向预测;
否则,如果cost0<=cost1
使用来自列表0的单向预测;
否则,
使用来自列表1的单向预测;
其中cost0是列表0模板匹配的SAD,cost1是列表1模板匹配的SAD,costBi是双向预测模板匹配的SAD。factor的值等于1.25,这意味着选择过程偏向于双向预测。
帧间预测方向选择仅应用于CU级别模板匹配过程。
交织预测示例
对于交织预测,用多于一个划分模式来将块划分为子块。划分模式被定义为将块划分为子块的方式,包括子块的尺寸和子块的位置。对于每个划分模式,可以通过基于划分模式推导出每个子块的运动信息来生成对应的预测块。因此,即使对于一个预测方向,也可以通过多个划分模式来生成多个预测块。可选,对于每个预测方向,可以仅应用一个划分模式。
假设存在X个划分模式,并且使用该X个划分模式通过基于子块的预测来生成当前块的X个预测块,表示为P0,P1,…,PX-1。可以如下式来生成当前块的最终预测,表示为P
Figure BDA0003480363230000141
其中(x,y)是块中的像素的坐标,wi(x,y)是Pi的加权值。在不失一般化的情况下,假设
Figure BDA0003480363230000142
其中N是非负值。图13示出了两个划分模式的交织预测的示例。
3.由描述的实施例解决的示例问题
如图5A和图5B所示的仿射Merge MV推导过程存在两个潜在的缺点。
首先,CU的左顶点的坐标和该CU的尺寸必须由属于该CU的每个4×4块存储。在HEVC中该信息不需要存储。
其次,解码器必须访问与当前CU不相邻的4×4块的MV。在HEVC中,解码器仅需要访问与当前CU相邻的4×4块的MV。
4.示例实施例
我们提出了数种方法来进一步改善基于子块的预测,包括交织预测和仿射MergeMV推导过程。
以下列出的技术和实施例应被视为用于解释一般概念的示例。此外,这些技术可以组合以在视频编码过程或对应的解码过程期间一起操作。注意,在本文中术语“编码”包括“代码转换”,其中非压缩格式的源视频被编码成另一种编码格式。
子块的MV推导
1.在一个实施例中,针对子块的中心推导出子块的MV。
a.可选的,针对子块内的任何位置推导出子块的MV,该位置可以不在子块的中心。
b.可选的,对于每个子块,推导出MV的位置可以是不同的。(该位置与每个子块有关)
c.推导出MV的位置可以取决于子块的位置。图14示出了一个示例。
d.由MxN表示子块尺寸,其中中心位置可以定义为((M>>1)+a)x((N>>1)+b),其中a、b可以是0或-1。
图14示出了对于不同子块推导出MV的不同位置的示例。星形表示位置。可以看出,MV推导可以使用各种不同的位置。
高效仿射Merge MV推导
2.在一个实施例中,在仿射Merge MV推导过程中,控制点处的MV(诸如左顶点处的mv0和右顶点处的mv1)仅利用相邻的邻近块的信息来推导。在一个示例中,使用仿射Merge模式,推导出当前CU的MV不需要左顶点的坐标和邻近CU的尺寸以及与当前CU不相邻的4×4块的MV。
a.在一个实施例中,仿射参数(诸如,等式(1)中的四参数仿射模式a、b、c和d)存储在使用仿射模式(包括仿射帧间模式和仿射Merge模式)编码的每个块中。
i.如果块使用仿射Merge模式编码,则它从使用仿射模式编码的邻近块继承四个参数。
ii.在一个示例中,列表0和列表1的四个参数是不同的。
iii.在一个示例中,可以存储两个参考图像列表的参数。可选的,即使对于双向预测,也可以仅存储仿射参数的一个集合。可选地,对于多假设,可以存储仿射参数的两个集合,并且每个集合对应于用于双向预测的一个参考图像列表。
b.在一个实施例中,仅仿射参数的集合的一部分(例如,等式(1)的四参数仿射模式中的两个参数(a和b))存储在使用仿射模式(包括仿射帧间模式和仿射Merge模式)编码的每个块中。如果块使用仿射Merge模式编码,则它从使用仿射模式编码的邻近块继承存储的部分参数。
i.在一个示例中,不同的参考图片或不同的参考图片列表可以存储所有有关的部分仿射参数。
ii.列表0和列表1的两个参数是不同的。
c.在一个实施例中,等式(1)中的v0x和v0y(也表示为c和d)从与当前块的左顶角相邻的块推导出。在以下示例中,假设当前块被合并到用仿射模式编码的邻近块G。
i.在一个示例中,如图15所示的三个邻近块R、S和T用于推导(v0x,v0y)。三个块中的MV被标记为MV(R)、MV(S)和MV(T)。
(a)在一个示例中,如果X是帧间编码的,则将(v0x,v0y)设置为等于MV(X)(X可以是R、S或T)。
(b)在一个示例中,如果R、S和T是帧间编码的,则将(v0x,v0y)设置为等于MV(R)、MV(S)和MV(T)的平均值。
(c)在一个示例中,如果X和Y是帧间编码的,则将(v0x,v0y)设置为等于MV(X)和MV(Y)的平均值(X和Y可以是R、S或T)。
(d)在一个示例中,将(v0x,v0y)设置为等于MV(X)并且MV(X)应该指代块G的相同参考。
ii.在一个示例中,(v0x,v0y)从时间邻近块的MV推导出。
iii.在一个示例中,(v0x,v0y)被缩放到块G的参考。
d.在一个实施例中,使用仿射Merge模式编码的块的MV从使用仿射模式编码的S个(对于四参数仿射模式S=2,对于六参数仿射模式S=3)左相邻块推导出。图16A示出了一个示例。L0和L1是使用仿射模式编码的两个左相邻块。Δ是两个左相邻块之间的距离。两个块的运动矢量分别是(mvL0 x,mvL0 y)和(mvL1 x,mvL1 y)。(mv0 x,mv0 y)是当前块左顶控制点处的MV(在等式(1)中亦称(v0x,v0y))。两个块中的一个块(例如L0)与左顶控制点之间的y距离记为Φ。应该注意,距离可从块的顶部、块的中间或块的底部测量。在图16A中,该距离从底部测量。
i.在一个示例中,等式(1)中的a和b可以推导为
a=(mvL1 y-mvL0 y)/Δ,b=-(mvL1 x-mvL0 x)/Δ。
ii.Δ可以是固定数。
(a)Δ可以是2N的形式,诸如1、4、8、16等。在这种情况下,用于计算上述a和b的除法操作可以实现为移位操作。
iii.Δ可以是取决于块的高度的数字。
iv.Δ可以被推导为满足以下的最大长度:L0和L1之间(包括L0和L1)的所有左相邻块使用仿射模式编码并共享相同的参考图片。
v.(mv0 x,mv0 y)可以推导为
mv0 x=mvL0 x+bΦ,mv0 y=mvL0 y-aΦ。
vi.如果Φ是L1与左顶控制点之间的y距离,那么(mv0 x,mv0 y)可以推导为
mv0 x=mvL1 x+bΦ,mv0 y=mvL1 y-aΦ。
e.在一个实施例中,使用仿射Merge模式编码的块的MV从使用仿射模式编码的S个(对于四参数仿射模式S=2,对于六参数仿射模式S=3)顶相邻块推导出。图16B示出了一个示例。T0和T1使用仿射模式编码的两个顶相邻块。Δ是两个顶相邻块之间的距离。两个块的运动矢量分别是(mvT0 x,mvT0 y)和(mvT1 x,mvT1 y)。(mv0 x,mv0 y)是当前块左顶控制点处的MV(在等式(1)中亦称(v0x,v0y))。两个块中的一个块(例如T0)与左顶控制点之间的x距离记为Φ。应该注意,距离可从块的左方、块的中间或块的右方测量。在图16B中,该距离从右方测量。
i.在一个示例中,等式(1)中的a和b可以推导出为
a=(mvT1 x-mvT0 x)/Δ,b=(mvT1 y-mvT0 y)/Δ。
ii.Δ可以是固定数。
(a)Δ可以是2N的形式,诸如1、4、8、16等。在这种情况下,用于计算上述a和b的除法操作可以实现为移位操作。
iii.Δ可以是取决于块的高度的数。
iv.Δ可以被推导出为满足以下的最大长度:T0和T1之间(包括T0和T1)的所有顶相邻块使用仿射模式编码并共享相同的参考图片
v.(mv0 x,mv0 y)可以推导出为
mv0 x=mvT0 x-aΦ,mv0 y=mvT0 y-bΦ。
vi.如果Φ是T1与左顶控制点之间的x距离,那么(mv0 x,mv0 y)可以推导出为
mv0 x=mvT1 x-aΦ,mv0 y=mvT1 y-bΦ。
图16A和图16B示出了从使用仿射模式编码的左相邻块(图16A)或从使用仿射模式编码的顶相邻块(图16B)推导出仿射Merge模式的MV的示例。
f.使用仿射Merge模式编码的块的MV可以从使用仿射模式编码的非相邻块推导出。
g.使用哪些相邻块来推导出使用仿射Merge模式编码的块的MV可以取决于块形状。
i.对于具有尺寸MxN且M>N的块,使用仿射Merge模式编码的块的MV从使用仿射模式编码的顶相邻块推导出。
ii.对于具有尺寸MxN且M<N的块,使用仿射Merge模式编码的块的MV从使用仿射模式编码的左相邻块推导出。
iii.对于具有尺寸MxN且M=N的块,使用仿射Merge模式编码的块的MV从与当前块的左顶角相邻的块推导出。
3.在一个实施例中,来自邻近块的仿射Merge候选是否是有效的仿射Merge候选取决于邻近块的位置。
a.在一个示例中,如果邻近块属于与当前的编码树单元(Coding Tree Unit,CTU)不同的CTU(例如,最大CU(LCU)),则来自邻近块的仿射Merge候选被视为无效(不放入Merge候选列表)。
b.可选的,如果邻近块属于与当前的CTU行不同的CTU行,则来自邻近块的仿射Merge候选被视为无效(不放入Merge候选列表),如图17所示。
c.可选的,如果邻近块属于与该条带不同的条带,则来自邻近块的仿射Merge候选被视为无效(不放入Merge候选列表)。
d.可选的,如果邻近块属于与该片(tile)不同的片,则来自邻近块的仿射Merge候选被视为无效(不放入Merge候选列表)。
图17示出了邻近块与当前块属于不同CTU行的示例。在该示例中,如果邻近块属于与当前CTU行不同的CTU行,则来自邻近块的仿射Merge候选被视为无效(不放入Merge候选列表)。
交织预测的示例
图18示出了根据所公开的技术的具有两个划分模式的交织预测的示例。当前块1300可以划分成多个模式。例如,如图18所示,当前块被划分成模式0(1301)和模式1(1302)。生成两个预测块P0(1303)和P1(1304)。通过计算P0(1303)和P1(1304)的加权和,可以生成当前块1300的最终预测块P(1305)。
更一般的,给定X个划分模式,当前块的X个预测块(表示为P0,P1,,…,PX-1)可以使用X个划分模式由基于子块的预测生成。当前块的最终预测(表示为P)可生成为:
Figure BDA0003480363230000191
这里,(x,y)是块中像素的坐标,并且wi(x,y)是Pi的权重系数。通过示例而不是限制,权重可以表示为:
Figure BDA0003480363230000192
N是非负的值。可选地,等式(16)中的位移位操作也可表示为:
Figure BDA0003480363230000201
权重之和是2的幂,通过执行移位操作而不是浮点除法,可以更有效地计算加权和P。
划分模式可以具有不同的子块形状、尺寸或位置。在一些实施例中,划分模式可以包括不规则的子块大小。图19A-图19G显示了16×16块的几个划分模式的示例。在图19A中,根据所公开的技术将块划分为4×4的子块。这种模式也用于JEM。图19B示出根据所公开的技术将块划分为8×8的子块的划分模式的示例。图19C示出根据所公开的技术将块划分为8×4的子块的划分模式的示例。图19D示出根据所公开的技术将块划分为4×8的子块的划分模式的示例。在图19E中,根据所公开的技术将块的一部分划分为4×4的子块。块边界上的像素被划分成更小的子块,其大小如2×4,4×2或2×2。一些子块可以合并以形成更大的子块。图19F示出了相邻子块(如4×4子块和2×4子块)的示例,这些子块合并后形成尺寸为6×4、4×6或6×6的较大子块。在图19G中,块的一部分被划分为8×8子块。而块边界处的像素被划分为较小的子块如8×4、4×8或4×4。
基于子块的预测中子块的形状和大小可以基于编码块的形状和/或大小和/或编码块信息来确定。例如,在一些实施例中,当当前块的大小为M×N时,子块的大小为4×N(或8×N等),即子块与当前块具有相同的高度。在一些实施例中,当当前块的大小为M×N时,子块的大小为M×4(或M×8等),即子块与当前块具有相同的宽度。在一些实施例中,当当前块的大小为M×N(其中M>N)时,子块的大小为A×B,其中A>B(例如,8×4)。或者,子块的大小为B×A(例如,4×8)。
在一些实施例中,当前块的大小为M×N。当M×N<=T(或min(M,N)<=T,或max(M,N)<=T等)时,子块的大小为A×B;当M×N>T(或min(M,N)>T,或max(M,N)>T等)时,子块的大小为C×D,其中A<=C,B<=D。例如,如果M×N<=256,子块的大小可以是4×4。在一些实现中,子块的大小为8×8。
在一些实施例中,可以基于帧间预测的方向确定是否应用交织预测。例如,在一些实施例中,交织预测可以适用于双向预测,但不适用于单向预测。作为另一个示例,当应用多假设时,当存在多于一个参考块时,交织预测可以应用于一个预测方向。
在一些实施例中,还可以基于帧间预测方向来确定如何应用交织预测。在一些实施例中,对于两个不同的参考列表,具有基于子块预测的双向预测块被划分为具有两种不同划分模式的子块。例如,当从参考列表0(L0)预测时,双向预测块被划分为4×8子块,如图19D所示。从参考列表1(L1)预测时,同一块划分为8×4子块,如图19C所示。最终预测P计算为:
Figure BDA0003480363230000211
这里,P0和P1分别是来自L0和L1的预测值。w0和w1分别是来自L0和L1的加权值。如等式(16)所示,加权值可以确定为:w0(x,y)+w1(x,y)=1<<N(其中N为非负整数值)。因为在每个方向上使用较少的子块进行预测(例如4×8子块,而不是8×8子块),因此与现有的基于子块的方法相比,计算需要较小的带宽。通过使用较大的子块,预测结果也更不易受噪声干扰的影响。
在一些实施例中,对于相同的参考列表,具有基于子块的预测的单向预测块被划分为具有两种或多种不同划分模式的子块。例如,对于列表L(L=0或1)的预测,PL计算如下:
Figure BDA0003480363230000212
这里,XL是列表L的划分模式数。
Figure BDA0003480363230000213
是用第i个划分模式生成的预测,并且
Figure BDA0003480363230000214
Figure BDA0003480363230000215
的加权值。例如,当XL为2时,列表L应用两种划分模式。在第一种划分模式中,块划分为如图19D所示的4×8子块,在第二种划分模式中,块划分为如图19C所示的8×4子块。
在一些实施例中,基于子块预测的双向预测块被视为分别来自L0和L1的两个单向预测块的组合。来自每个列表的预测可以按照如上面的示例中的描述来推导。最终预测P可计算为:
Figure BDA0003480363230000216
这里参数a和b是应用于两个内部预测块的两个附加权重。在这个特定的示例中,a和b都可以设置为1。与上面的示例类似,由于每个方向的预测使用较少子块(例如,4×8子块,而不是8×8子块),因此带宽使用优于现有的基于子块的方法或与现有的基于子块的方法相同。同时,通过采用较大的子块可以改善预测结果。
在一些实施例中,可以在每个单向预测块中使用单独的不均匀模式。例如,对于每个列表L(例如,L0或L1),块被划分为不同的模式(例如,如图19E或图19F所示)。使用较少数量的子块减少了对带宽的需求。子块的不均匀性也增加了预测结果的鲁棒性。
在一些实施例中,对于多假设编码块,对于每个预测方向(或参考图片列表)可以有多个由不同的划分模式生成的预测块。可以使用多个预测块并应用附加权重生成最终预测。例如,附加权重可以设置为1/M,其中M是生成的预测块的总数。
在一些实施例中,编码器可以确定是否以及如何应用交织预测。然后,编码器可以在序列级、图片级、视图级、条带级、编码树单元(CTU)(也称为最大编码单元(LCU))级、CU级、PU级、树单元(TU)级或区域级(其可能包括多个CU/PU/TU/LCU)向解码器发送与确定相对应的信息。这些信息可以在序列参数集(SPS)、视图参数集(VPS)、图片参数集(PPS)、条带报头(SH)、CTU/LCU、CU、PU、TU或区域的第一个块中用信令通知。
在某些实现中,交织预测适用于现有的子块方法,诸如仿射预测、ATMVP、STMVP、FRUC、或BIO。在这种情况下,不需要额外的信令成本。在一些实现中,可以将交织预测生成的新子块Merge候选插入到Merge列表中,例如交织预测+ATMVP、交织预测+STMVP、交织预测+FRUC等。
在一些实施例中,当前块要使用的划分模式可以基于来自空间和/或时间邻近块的信息来推导。例如,编码器和解码器都可以采用一组预先确定的规则来获得基于时间相邻(例如,同一块的先前使用的划分模式)或空间相邻(例如,邻近块使用的划分模式)的划分模式,而不是依赖于编码器来发送相关信息。
在一些实施例中,加权值w可以被固定。例如,所有的划分模式都可以平均地加权:wi(x,y)=1。在一些实施例中,加权值可以基于块的位置以及使用的划分模式来确定。例如,对于不同的(x,y),wi(x,y)可能不同。在一些实施例中,加权值可以进一步取决于基于子块预测的编码技术(例如,仿射或ATMVP)和/或其他编码信息(例如,跳过或非跳过模式和/或MV信息)。
在一些实施例中,编码器可以确定加权值,并在序列级、图片级、条带级、CTU/LCU级、CU级、PU级或区域级(其可能包括多个CU/PU/TU/LCU)将这些值发送给解码器。加权值可以在序列参数集(SPS)、图片参数集(PPS)、条带报头(SH)、CTU/LCU、CU、PU或区域的第一个块中用信令通知。在一些实施例中,加权值可以从空间和/或时间邻近块的加权值推导出。
应当注意的是,本文公开的交织预测技术可以应用于基于子块预测的一种、部分或全部编码技术。例如,交织预测技术可以应用于仿射预测,而其他基于子块预测的编码技术(例如,ATMVP、STMVP、FRUC或BIO)不使用交织预测。作为另一个示例,所有仿射、ATMVP和STMVP应用本文公开的交织预测技术。
图20是示例视频比特流处理装置2000的框图。装置2000可以用于实现本文描述的一种或多种方法。装置2000可用于实施本文所述的一种或多种方法。装置2000可以在智能手机、平板电脑、计算机、物联网(IoT)接收器等中实施。装置2000可包括一个或多个处理器2002、一个或多个存储器2004和视频处理硬件2006。处理器2002可以配置为实现本文中描述的一个或多个方法。一个或多个存储器2004可用于存储用于实现本文所述方法和技术的数据和代码。视频处理硬件2006可用于在硬件电路中实现本文中描述的一些技术。注意,存储器2004和电路2006的部分或全部外部于处理器2002电子器件是可选的,并且是一种实现方式选择。
图21示出了用于视频处理的示例方法2100的流程图。方法2100包括将当前块划分(2102)为子块。方法2100进一步包括针对每个子块推导出(2104)运动矢量,其中每个子块的运动矢量根据位置规则与该子块的位置相关联。方法2100进一步包括使用子块的运动矢量来处理当前块的比特流表示。
图22是用于视频处理的示例方法2200的流程图。方法2200包括针对使用仿射模式的当前块与当前块的比特流表示之间的转换,基于位置规则来推导出(2202)在当前块的控制点处的运动矢量。方法2200进一步包括使用该运动矢量来执行(2204)在当前块与比特流表示之间的转换。在一些实现方式中,位置规则指定对于推导排除使用非相邻的邻近块。在一些实现方式中,可以在不使用包括当前块的至少一个非相邻4×4块的相邻编码单元的信息的情况下推导出运动矢量。在一些实现方式中,该方法进一步包括存储和重用先前转换的邻近块的至少一些仿射参数。在一些实现方式中,至少一些仿射参数的存储和重用可以在彼此分开的两个步骤中执行。
图23是用于视频处理的示例方法2300的流程图。方法2300包括针对在当前块与当前块的比特流表示之间的转换,通过包括来自一个或多个邻近块的、基于所述一个或多个邻近块的位置满足有效性标准的Merge候选来确定用于所述转换的仿射Merge候选列表。方法2300进一步包括使用运动矢量来执行(2304)在当前块与比特流表示之间的转换。
以下使用基于条款的描述格式来描述上述方法/技术的附加特征和实施例。
1、一种视频处理方法(例如,图21中所示的方法2000),包括:将当前块划分为子块;对于每个子块推导出运动矢量,其中每个子块的所述运动矢量根据位置规则与所述子块的位置相关联;以及使用所述子块的运动矢量来处理所述当前块的比特流表示。
2、根据条款1的方法,其中所述位置规则指定所述位置是对应子块的中心。
3、根据条款2所述的方法,其中所述对应子块尺寸为MxN并且所述中心定义为((M>>1)+a)x((N>>1)+b),其中M和N是自然数,并且a、b是0或-1。
4、根据条款1所述的方法,其中所述位置规则指定所述位置是对应子块的非中心位置。
5、根据条款1所述的方法,其中由所述位置规则指定的位置导致在不同子块中的不同位置处推导出运动矢量。
6、一种视频处理方法(例如,图22中所示的方法2200),包括:针对使用仿射模式的当前块与所述当前块的比特流表示之间的转换,基于位置规则推导出在所述当前块的控制点处的运动矢量;并且使用所述运动矢量执行在所述当前块与所述比特流表示之间的转换,并且其中所述位置规则指定对于所述推导排除使用非相邻的邻近块。
7、根据条款6所述的方法,其中不使用包括所述当前块的至少一个非相邻的4×4块的邻近编码单元的信息而推导出运动矢量。
8、根据条款7所述的方法,进一步包括:
存储和重用先前转换的邻近块的至少一些仿射参数。
9、根据条款8所述的方法,其中所述当前块从以仿射模式编码的邻近块继承至少一些仿射参数。
10、根据条款8所述的方法,其中对于列表0和列表1参考帧,所述至少一些仿射参数是不同的。
11、根据条款8所述的方法,其中所述至少一些仿射参数包括两个集合,每个集合用于多个假设参考图像列表中的一个。
12、根据条款8至11中任一项所述的方法,其中所述至少一些仿射参数包括四个仿射参数中的两个。
13、根据条款6所述的方法,其中所述当前块的左顶角的运动矢量(v0x,v0y)是从与所述当前块的左顶角相邻的块推导出的,并且所述当前块被合并到使用所述仿射模式编码的邻近块。
14、根据条款13所述的方法,进一步包括:
使用分别具有对应的运动矢量MV(R)、MV(S)和MV(T)的三个邻近块R、S和T来推导出所述运动矢量(v0x,v0y),并且
其中如果X是帧间编码的,则将所述运动矢量(v0x,v0y)设置为等于MV(X),并且X是R、S或T。
15、根据条款13所述的方法,进一步包括:
使用分别具有对应的运动矢量MV(R)、MV(S)和MV(T)的三个邻近块R、S和T来推导出所述运动矢量(v0x,v0y),并且
其中如果R、S和T是帧间编码的,则将所述运动矢量(v0x,v0y)设置为等于MV(R)、MV(S)和MV(T)的平均值。
16、根据条款13所述的方法,进一步包括:
使用分别具有对应的运动矢量MV(R)、MV(S)和MV(T)的三个邻近块R、S和T来推导出所述运动矢量(v0x,v0y),并且
其中如果X和Y是帧间编码的,则将所述运动矢量(v0x,v0y)设置为等于MV(X)和MV(Y)的平均值,并且X和Y是R、S或T。
17、根据条款13所述的方法,其中从时间邻近块的运动矢量推导出所述运动矢量(v0x,v0y)。
18、根据条款13所述的方法,其中所述运动矢量(v0x,v0y)被缩放到所述邻近块的参考。
19、根据条款6所述的方法,其中从使用所述仿射模式编码的左相邻块推导出所述运动矢量。
20、根据条款6所述的方法,其中从使用所述仿射模式编码的S个顶相邻块推导出使用所述仿射模式编码的块的运动矢量,对于四参数仿射模式S等于2。
21、根据条款20所述的方法,其中两个顶相邻块之间的距离是2N形式的固定数,N是整数。
22、根据条款20所述的方法,其中所述顶相邻块之间的距离取决于使用所述仿射模式编码的所述块的高度。
23、根据条款20所述的方法,其中所述顶相邻块之间的距离被推导出为满足所有顶相邻块使用仿射模式编码并共享相同的参考图片的最大长度。
24、根据条款20所述的方法,其中在所述当前块的左顶控制点处的运动矢量(mv0 x,mv0 y)被推导出为i)mv0 x=mvT0 x-aΦ并且mv0 y=mvT0 y-bΦ或ii)mv0 x=mvT1 x-aΦ,mv0 y=mvT1 y-bΦ,Φ是在所述左顶控制点与使用所述仿射模式编码的两个顶相邻块T0和T1中的一个之间的距离。
25、根据条款6所述的方法,其中所述当前块尺寸为MxN像素,其中M和N是整数,并且当M<N时,所述运动矢量从左侧相邻块推导出。
26、根据条款6所述的方法,其中所述当前块尺寸为MxN像素,其中M和N是整数,并且当M>N时,所述运动矢量从顶侧相邻块推导出。
27、根据条款6所述的方法,其中所述当前块尺寸为MxN像素,其中M和N是整数,并且当M=N时,所述运动矢量从与左顶角相邻的块推导出。
28、一种视频处理方法(例如,图23中所示的方法2300),包括:针对在当前块与所述当前块的比特流表示之间的转换,通过包括来自一个或多个邻近块的、基于所述一个或多个邻近块的位置满足有效性标准的Merge候选来确定用于所述转换的仿射Merge候选列表;并且使用运动矢量来执行在所述当前块与所述比特流表示之间的转换。
29、根据条款28所述的方法,其中邻近块来自与当前CTU(编码树单元)不同的CTU,并且其中来自所述邻近块的仿射Merge模式候选是无效的。
30、根据条款28所述的方法,其中当前CTU属于当前CTU行,其中所述邻近块属于与所述当前CTU行不同的CTU行,并且其中来自所述邻近块的所述仿射Merge模式候选是无效的。
31、根据条款28所述的方法,其中所述当前块属于当前条带,其中所述邻近块属于与所述当前条带不同的条带,并且其中来自所述邻近块的所述仿射Merge模式候选是无效的。
32、根据条款28所述的方法,其中所述当前块属于当前片,其中所述邻近块属于与所述当前片不同的片,并且其中来自所述邻近块的所述仿射Merge模式候选是无效的。
33、一种视频处理方法,包括:
针对使用仿射模式的当前块与所述当前块的比特流表示之间的转换,基于一个或多个相邻邻近块推导出在所述当前块的控制点处的运动矢量;以及
使用所述运动矢量执行在所述当前块与所述比特流表示之间的转换。
34、根据条款33所述的方法,其中使用仿射模式的所述当前块的控制点处的运动矢量从一个或多个上方的相邻邻近块继承。
35、根据条款33所述的方法,其中所述相邻邻近块也是通过仿射模式编码的。
36、根据条款35所述的方法,其中所述相邻邻近块是通过4参数仿射模式编码的。
37、根据条款36所述的方法,其中使用仿射模式的所述当前块的控制点处的运动矢量从所述一个或多个相邻邻近块的左底(bottom-left)控制点运动矢量和右底(bottom-right)控制点运动矢量继承。
38、根据以上条款中任一项所述的方法,其中所述转换包括从所述当前块生成所述比特流表示。
39、根据以上条款中任一项所述的方法,其中所述转换包括从所述比特流表示生成所述当前块。
40、一种视频解码装置,包括被配置为实现条款1至39中的一项或多项所述的方法的处理器。
41、一种视频编码装置,包括被配置为实现条款1至39中的一项或多项所述的方法的处理器。
42、一种计算机可读程序介质,具有存储在其上的代码,所述代码包括指令,所述指令在被处理器执行时使得处理器实现条款1至39中的一项或多项所述的方法。
从前述内容可以理解,本文已经出于说明的目的描述了本公开技术的具体实施例,但是可以在不脱离本发明范围的情况下进行各种修改。因此,本公开的技术除了所附权利要求外不受限制。
本文件中描述的公开和其他解决方案、示例、实施例、模块和功能操作可以以数字电子电路实现,或者以计算机软件、固件或硬件实现,包含本文件中公开的结构及其结构等同物,或者以它们中的一个或多个的组合实现。公开和其他实施例可以实现为一个或多个计算机程序产品,即,在计算机可读介质上编码的一个或多个计算机程序指令模块,用于由数据处理装置执行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储器设备、影响机器可读传播信号的物质组合、或者它们中的一个或多个的组合。术语“数据处理装置”涵盖用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多个处理器或计算机。除了硬件之外,该装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、或者它们中的一个或多个的组合的代码。传播信号是人工生成的信号,例如机器生成的电信号、光信号或电磁信号,其被生成以对信息进行编码以便传输到合适的接收器装置。
计算机程序(也称为程序、软件、软件应用、脚本或代码)可以以任何形式的编程语言编写,包括编译或解释语言,并且可以以任何形式来部署计算机程序,包括作为独立程序或作为适合在计算环境中使用的模块、组件、子例程或其他单元。计算机程序不一定对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分中(例如,存储在标记语言文件中的一个或多个脚本),存储在专用于所讨论的程序的单个文件中,或存储在多个协调文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。可以部署计算机程序以在一个计算机上或在位于一个站点上或分布在多个站点上并由通信网络互连的多个计算机上执行。
本文件中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程处理器执行,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路执行,并且装置也可以实现为专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
举例来说,适合于执行计算机程序的处理器包括通用和专用微处理器、以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括或可操作地耦合到用于存储数据的一个或多个大容量存储设备,例如磁盘、磁光盘或光盘,以从该一个或多个大容量存储设备接收数据,或将数据传递到该一个或多个大容量存储设备,或者既接收又传递数据。然而,计算机不需要具有这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,举例来说,包括半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD ROM和DVD-ROM磁盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。
虽然本专利文件包含许多细节,但这些细节不应被解释为对任何发明或可要求保护的范围的限制,而是作为特定于特定发明的特定实施例的特征的描述。在本专利文件中,在分开的实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以分开地或以任何合适的子组合在多个实施例中实现。此外,尽管上面的特征可以描述为以某些组合起作用并且甚至最初如此要求保护,但是在一些情况下,可以从所要求保护的组合中去除来自该组合的一个或多个特征,并且所要求保护的组合可以指向子组合或子组合的变型。
类似地,虽然在附图中以特定顺序描绘了操作,但是这不应该被理解为要求以所示的特定顺序或按顺序执行这样的操作,或者执行所有示出的操作,以实现期望的结果。此外,在本专利文件中描述的实施例中的各种系统组件的分离不应被理解为在所有实施例中都要求这样的分离。
仅描述了几个实现方式和示例,并且可以基于本专利文件中描述和示出的内容来做出其他实现方式、增强和变型。

Claims (48)

1.一种视频数据处理方法,包括:
针对在视频的当前视频块与所述视频的比特流之间的转换,基于规则确定在所述当前视频块的控制点处的运动矢量CPMV,其中所述规则指定从所述当前视频块的一个或多个邻近块排除使用非相邻的邻近块;以及
基于所述运动矢量来执行在所述当前视频块与所述比特流之间的转换,
其中所述当前视频块包含多个子块,且执行所述转换包括:
基于所述CPMV和对应的子块的指定位置为所述多个子块中的每个子块确定运动矢量。
2.根据权利要求1所述的方法,其中所述规则还指定基于所述一个或多个邻近块的位置从一个或多个邻近块排除使用无效的邻近块。
3.根据权利要求2所述的方法,其中在所述一个或多个邻近块中的邻近块来自与当前编码树单元CTU不同的CTU的情况下,所述邻近块是无效的。
4.根据权利要求2所述的方法,其中所述当前视频块属于当前片,并且在所述一个或多个邻近块中的邻近块属于与所述当前片不同的片的情况下,所述邻近块是无效的。
5.根据权利要求1所述的方法,其中当前CTU属于当前CTU行,并且在所述一个或多个邻近块中的邻近块属于与所述当前CTU行不同的CTU行的情况下,所述邻近块是无效的。
6.根据权利要求1所述的方法,其中所述当前视频块属于当前条带,并且在所述一个或多个邻近块中的邻近块属于与所述当前条带不同的条带的情况下,所述邻近块是无效的。
7.根据权利要求1所述的方法,其中所述指定位置是所述对应子块的中心。
8.根据权利要求7所述的方法,其中所述对应子块的尺寸为MxN并且所述中心定义为((M>>1)+a)x((N>>1)+b),其中M和N是自然数,并且a、b是0或-1。
9.根据权利要求7所述的方法,其中所述指定位置是所述对应子块的非中心位置。
10.根据权利要求7所述的方法,其中由所述指定位置导致在不同子块中的不同位置处推导出运动矢量。
11.根据权利要求1所述的方法,还包括:
基于所述当前视频块的位置,确定从来自使用仿射模式编码的顶相邻块的运动矢量所推导的所述当前视频块的CPMV候选。
12.根据权利要求1所述的方法,其中不使用包括所述当前视频块的至少一个非相邻的4×4块的邻近编码单元的信息而推导出运动矢量。
13.根据权利要求12所述的方法,进一步包括:
存储和重用先前转换的邻近块的至少一些仿射参数。
14.根据权利要求13所述的方法,其中所述当前视频块从以仿射模式编码的邻近块继承至少一些仿射参数。
15.根据权利要求13所述的方法,其中对于列表0和列表1参考帧,所述至少一些仿射参数是不同的。
16.根据权利要求13所述的方法,其中所述至少一些仿射参数包括两个集合,每个集合用于多个假设参考图像列表中的一个。
17.根据权利要求13至16中任一项所述的方法,其中所述至少一些仿射参数包括四个仿射参数中的两个。
18.根据权利要求12所述的方法,其中所述当前视频块的左顶角的运动矢量(v0x,v0y)是从与所述当前视频块的左顶角相邻的块推导出的,并且所述当前视频块被合并到使用所述仿射模式编码的邻近块。
19.根据权利要求18所述的方法,进一步包括:
使用分别具有对应的运动矢量MV(R)、MV(S)和MV(T)的三个邻近块R、S和T来推导出所述运动矢量(v0x,v0y),并且
其中如果X是帧间编码的,则将所述运动矢量(v0x,v0y)设置为等于MV(X),并且X是R、S或T。
20.根据权利要求18所述的方法,进一步包括:
使用分别具有对应的运动矢量MV(R)、MV(S)和MV(T)的三个邻近块R、S和T来推导出所述运动矢量(v0x,v0y),并且
其中如果R、S和T是帧间编码的,则将所述运动矢量(v0x,v0y)设置为等于MV(R)、MV(S)和MV(T)的平均值。
21.根据权利要求18所述的方法,进一步包括:
使用分别具有对应的运动矢量MV(R)、MV(S)和MV(T)的三个邻近块R、S和T来推导出所述运动矢量(v0x,v0y),并且
其中如果X和Y是帧间编码的,则将所述运动矢量(v0x,v0y)设置为等于MV(X)和MV(Y)的平均值,并且X和Y是R、S或T。
22.根据权利要求18所述的方法,其中从时间邻近块的运动矢量推导出所述运动矢量(v0x,v0y)。
23.根据权利要求18所述的方法,其中所述运动矢量(v0x,v0y)被缩放到所述邻近块的参考。
24.根据权利要求12所述的方法,其中从使用所述仿射模式编码的左相邻块推导出所述运动矢量。
25.根据权利要求12所述的方法,其中从使用所述仿射模式编码的S个顶相邻块推导出使用所述仿射模式编码的块的运动矢量,对于四参数仿射模式S等于2。
26.根据权利要求25所述的方法,其中两个顶相邻块之间的距离是2N形式的固定数,N是整数。
27.根据权利要求25所述的方法,其中所述顶相邻块之间的距离取决于使用所述仿射模式编码的所述块的高度。
28.根据权利要求25所述的方法,其中所述顶相邻块之间的距离被推导出为满足所有顶相邻块使用仿射模式编码并共享相同的参考图片的最大长度。
29.根据权利要求25所述的方法,其中在所述当前视频块的左顶控制点处的运动矢量(mv0 x,mv0 y)被推导出为i)mv0 x=mvT0 x-aΦ并且mv0 y=mvT0 y-bΦ或ii)mv0 x=mvT1 x-aΦ,mv0 y=mvT1 y-bΦ,Φ是在所述左顶控制点与使用所述仿射模式编码的两个顶相邻块T0和T1中的一个之间的距离。
30.根据权利要求12所述的方法,其中所述当前视频块尺寸为MxN像素,其中M和N是整数,并且当M<N时,所述运动矢量从左侧相邻块推导出。
31.根据权利要求12所述的方法,其中所述当前视频块尺寸为MxN像素,其中M和N是整数,并且当M>N时,所述运动矢量从顶侧相邻块推导出。
32.根据权利要求12所述的方法,其中所述当前视频块尺寸为MxN像素,其中M和N是整数,并且当M=N时,所述运动矢量从与左顶角相邻的块推导出。
33.根据权利要求1所述的方法,其中使用仿射模式的所述当前视频块的CPMV从一个或多个上方的相邻邻近块推导。
34.根据权利要求1所述的方法,其中所述相邻邻近块也是通过仿射模式编码的。
35.根据权利要求34所述的方法,其中所述相邻邻近块是通过4参数仿射模式编码的。
36.根据权利要求35所述的方法,其中使用仿射模式的所述当前视频块的控制点处的运动矢量从所述一个或多个相邻邻近块的左底运动矢量和右底运动矢量推导。
37.根据权利要求1-36中任一项所述的方法,其中所述转换包括将所述当前视频块编码成所述比特流。
38.根据权利要求1-36中任一项所述的方法,其中所述转换包括从所述比特流解码所述当前视频块。
39.一种视频数据处理装置,包括:
确定模块,用于针对在视频的当前视频块与所述视频的比特流之间的转换,基于规则确定在所述当前视频块的控制点处的运动矢量CPMV,其中所述规则指定从所述当前视频块的一个或多个邻近块排除使用非相邻的邻近块;以及
转换模块,用于基于所述运动矢量来执行在所述当前视频块与所述比特流之间的转换,
其中所述当前视频块包含多个子块,且执行所述转换包括:
基于所述CPMV和对应的子块的指定位置为所述多个子块中的每个子块确定运动矢量。
40.根据权利要求39所述的装置,其中所述规则还指定基于所述一个或多个邻近块的位置从一个或多个邻近块排除使用无效的邻近块。
41.根据权利要求40所述的装置,其中所述当前视频块属于当前条带,并且在所述一个或多个邻近块中的邻近块属于与所述当前条带不同的条带的情况下,所述邻近块是无效的。
42.根据权利要求40所述的装置,其中所述当前视频块属于当前片,并且在所述一个或多个邻近块中的邻近块属于与所述当前片不同的片的情况下,所述邻近块是无效的。
43.根据权利要求39所述的装置,其中所述指定位置是所述对应子块的中心。
44.根据权利要求43所述的装置,其中所述对应子块的尺寸为MxN并且所述中心定义为((M>>1)+a)x((N>>1)+b),其中M和N是自然数,并且a、b是0或-1。
45.根据权利要求39所述的装置,还包括:
基于所述当前视频块的位置,确定要从来自使用仿射模式编码的顶相邻块的运动矢量推导出的所述当前视频块的CPMV候选。
46.一种存储指令的非暂时计算机可读存储介质,所述指令使处理器:
针对在视频的当前视频块与所述视频的比特流之间的转换,基于规则确定在所述当前视频块的控制点处的运动矢量CPMV,其中所述规则指定从所述当前视频块的一个或多个邻近块排除使用非相邻的邻近块;以及
基于所述运动矢量来执行在所述当前视频块与所述比特流之间的转换,
其中所述当前视频块包含多个子块,且执行所述转换包括:
基于所述CPMV和对应的子块的指定位置为所述多个子块中的每个子块确定运动矢量。
47.一种存储比特流的非暂时计算机可读记录介质,由视频处理设备执行的方法生成所述比特流,其中所述方法包括:
基于规则确定在当前视频块的控制点处的运动矢量CPMV,其中所述规则指定从所述当前视频块的一个或多个邻近块排除使用非相邻的邻近块;以及
基于确定从所述当前视频块生成所述比特流,
其中所述当前视频块包含多个子块,且执行所述转换包括:
基于所述CPMV和对应的子块的指定位置为所述多个子块中的每个子块确定运动矢量。
48.一种存储视频的比特流的方法,所述方法包括:
基于规则确定在当前视频块的控制点处的运动矢量CPMV,其中所述规则指定从所述当前视频块的一个或多个邻近块排除使用非相邻的邻近块;以及
基于确定从所述当前视频块生成所述比特流;
将所述比特流存储在非暂时计算机可读记录介质;
其中所述当前视频块包含多个子块,且执行所述转换包括:
基于所述CPMV和对应的子块的指定位置为所述多个子块中的每个子块确定运动矢量。
CN202210066664.2A 2018-07-01 2019-07-01 高效的仿射Merge运动矢量推导的方法、装置及存储介质 Pending CN114374850A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
CNPCT/CN2018/093943 2018-07-01
CN2018093943 2018-07-01
CNPCT/CN2018/095568 2018-07-13
CN2018095568 2018-07-13
CN201910586584.8A CN110677675B (zh) 2018-07-01 2019-07-01 高效的仿射Merge运动矢量推导的方法、装置及存储介质

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201910586584.8A Division CN110677675B (zh) 2018-07-01 2019-07-01 高效的仿射Merge运动矢量推导的方法、装置及存储介质

Publications (1)

Publication Number Publication Date
CN114374850A true CN114374850A (zh) 2022-04-19

Family

ID=67297216

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202210066664.2A Pending CN114374850A (zh) 2018-07-01 2019-07-01 高效的仿射Merge运动矢量推导的方法、装置及存储介质
CN201910586584.8A Active CN110677675B (zh) 2018-07-01 2019-07-01 高效的仿射Merge运动矢量推导的方法、装置及存储介质

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201910586584.8A Active CN110677675B (zh) 2018-07-01 2019-07-01 高效的仿射Merge运动矢量推导的方法、装置及存储介质

Country Status (7)

Country Link
US (3) US20210058637A1 (zh)
EP (1) EP3804327A1 (zh)
JP (2) JP2021530154A (zh)
KR (1) KR20210024487A (zh)
CN (2) CN114374850A (zh)
TW (1) TWI731363B (zh)
WO (1) WO2020008334A1 (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2577318B (en) * 2018-09-21 2021-03-10 Canon Kk Video coding and decoding
CN111010571B (zh) 2018-10-08 2023-05-16 北京字节跳动网络技术有限公司 组合仿射Merge候选的生成和使用
GB2595053B (en) 2018-10-18 2022-07-06 Canon Kk Video coding and decoding
WO2020084476A1 (en) 2018-10-22 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Sub-block based prediction
WO2020098653A1 (en) * 2018-11-12 2020-05-22 Mediatek Inc. Method and apparatus of multi-hypothesis in video coding
WO2020098655A1 (en) 2018-11-12 2020-05-22 Beijing Bytedance Network Technology Co., Ltd. Motion vector storage for inter prediction
CN117319644A (zh) 2018-11-20 2023-12-29 北京字节跳动网络技术有限公司 基于部分位置的差计算
WO2020103870A1 (en) 2018-11-20 2020-05-28 Beijing Bytedance Network Technology Co., Ltd. Inter prediction with refinement in video processing
WO2020103940A1 (en) 2018-11-22 2020-05-28 Beijing Bytedance Network Technology Co., Ltd. Coordination method for sub-block based inter prediction
US11647187B2 (en) * 2018-11-30 2023-05-09 Interdigital Madison Patent Holdings, Sas Triangle and multi-hypothesis combination for video coding and decoding
CN113170110A (zh) 2018-12-03 2021-07-23 北京字节跳动网络技术有限公司 候选的最大数量的指示方法
JP2022521554A (ja) 2019-03-06 2022-04-08 北京字節跳動網絡技術有限公司 変換された片予測候補の利用
JP7026064B2 (ja) * 2019-03-11 2022-02-25 Kddi株式会社 画像復号装置、画像復号方法及びプログラム
CN113647099B (zh) 2019-04-02 2022-10-04 北京字节跳动网络技术有限公司 解码器侧运动矢量推导
EP4307665A2 (en) 2019-08-10 2024-01-17 Beijing Bytedance Network Technology Co., Ltd. Buffer management in subpicture decoding
KR20220043109A (ko) 2019-08-13 2022-04-05 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 서브 블록 기반 인터 예측의 모션 정밀도
CN114424553A (zh) 2019-09-22 2022-04-29 北京字节跳动网络技术有限公司 基于子块的帧间预测的缩放方法
JP7322290B2 (ja) 2019-10-02 2023-08-07 北京字節跳動網絡技術有限公司 ビデオビットストリームにおけるサブピクチャシグナリングのための構文
MX2022004409A (es) 2019-10-18 2022-05-18 Beijing Bytedance Network Tech Co Ltd Restricciones de sintaxis en la se?alizacion de conjuntos de parametros de subimagenes.
CN114071147B (zh) * 2020-07-29 2023-04-11 四川大学 一种基于双线性模型的vvc运动补偿方法
WO2023034640A1 (en) * 2021-09-06 2023-03-09 Beijing Dajia Internet Information Technology Co., Ltd. Candidate derivation for affine merge mode in video coding
WO2023049219A1 (en) * 2021-09-24 2023-03-30 Beijing Dajia Internet Information Technology Co., Ltd. Candidate derivation for affine merge mode in video coding
WO2023137234A1 (en) * 2022-01-17 2023-07-20 Beijing Dajia Internet Information Technology Co., Ltd. Methods and devices for candidate derivation for affine merge mode in video coding
WO2023185933A1 (en) * 2022-03-30 2023-10-05 Beijing Bytedance Network Technology Co., Ltd. Method, apparatus, and medium for video processing

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9060176B2 (en) * 2009-10-01 2015-06-16 Ntt Docomo, Inc. Motion vector prediction in video coding
WO2016008157A1 (en) * 2014-07-18 2016-01-21 Mediatek Singapore Pte. Ltd. Methods for motion compensation using high order motion model
EP3205109A4 (en) * 2014-12-09 2018-03-07 MediaTek Inc. Method of motion vector predictor or merge candidate derivation in video coding
CN106303543B (zh) * 2015-05-15 2018-10-30 华为技术有限公司 视频图像编码和解码的方法、编码设备和解码设备
CN104935938B (zh) * 2015-07-15 2018-03-30 哈尔滨工业大学 一种混合视频编码标准中帧间预测方法
CN108965871B (zh) * 2015-09-29 2023-11-10 华为技术有限公司 图像预测的方法及装置
US20190028731A1 (en) * 2016-01-07 2019-01-24 Mediatek Inc. Method and apparatus for affine inter prediction for video coding system
WO2017147765A1 (en) * 2016-03-01 2017-09-08 Mediatek Inc. Methods for affine motion compensation
US10602180B2 (en) * 2017-06-13 2020-03-24 Qualcomm Incorporated Motion vector prediction

Also Published As

Publication number Publication date
JP2021530154A (ja) 2021-11-04
KR20210024487A (ko) 2021-03-05
US20240098295A1 (en) 2024-03-21
CN110677675A (zh) 2020-01-10
CN110677675B (zh) 2022-02-08
US20220046267A1 (en) 2022-02-10
TWI731363B (zh) 2021-06-21
US20210058637A1 (en) 2021-02-25
TW202021356A (zh) 2020-06-01
WO2020008334A1 (en) 2020-01-09
JP2023181441A (ja) 2023-12-21
EP3804327A1 (en) 2021-04-14

Similar Documents

Publication Publication Date Title
CN110677675B (zh) 高效的仿射Merge运动矢量推导的方法、装置及存储介质
CN110582000B (zh) 改进的模式匹配的运动矢量推导
CN110620929B (zh) 没有运动矢量预测截断的选择的运动矢量差精度
CN110809156B (zh) 不同解码器侧运动矢量推导模式之间的交互
CN112997480A (zh) 成对平均候选计算中的取整
CN110677674B (zh) 视频处理的方法、设备和非暂时性计算机可读介质
CN110740327B (zh) 一种处理视频数据的方法、装置和可读介质
CN112997487A (zh) 仿射模式与其他帧间编解码工具之间的协调
CN110876064B (zh) 部分交织的预测
CN110809164B (zh) Bio中的mv精度

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