CN117061750A - 用于仿射预测或运动补偿的共享预加载区域的方法和装置 - Google Patents

用于仿射预测或运动补偿的共享预加载区域的方法和装置 Download PDF

Info

Publication number
CN117061750A
CN117061750A CN202211075578.4A CN202211075578A CN117061750A CN 117061750 A CN117061750 A CN 117061750A CN 202211075578 A CN202211075578 A CN 202211075578A CN 117061750 A CN117061750 A CN 117061750A
Authority
CN
China
Prior art keywords
affine
prediction
encoding
region
video data
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
CN202211075578.4A
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.)
MediaTek Inc
Original Assignee
MediaTek 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 MediaTek Inc filed Critical MediaTek Inc
Publication of CN117061750A publication Critical patent/CN117061750A/zh
Pending legal-status Critical Current

Links

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/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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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
    • H04N19/54Motion estimation other than block-based using feature points or meshes
    • 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/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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • 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/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/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
    • H04N19/423Methods 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 characterised by memory arrangements

Landscapes

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

Abstract

视频编码或解码方法和设备包括接收与当前图片中的当前块相关联的输入数据,确定参考图片中由仿射预测或运动补偿的两个或更多个编解码配置或者由两个或更多个仿射细化迭代共享的预加载区域,在预加载区域加载参考样本,为当前块生成预测子,并根据预测子对当前块进行编码或解码。与仿射细化迭代或编解码配置相关联的预测子是基于预加载区域中的一些参考样本生成的。

Description

用于仿射预测或运动补偿的共享预加载区域的方法和装置
技术领域
本发明涉及用于编码或解码视频数据的帧间编码方法和设备。特别地,本发明涉及视频编码系统中的仿射预测(affine prediction)和运动补偿。
背景技术
通用视频编码(VVC)标准是由来自ITU-T研究组的视频编码专家联合视频编码协作组(JCT-VC)开发的最新视频编码标准。在VVC草案中,一张图片被分为一个或多个瓦片(tile)行和一个或多个瓦片列,其中瓦片是具有特定瓦片列和特定瓦片行的、覆盖在图片里的矩形区域的编码树单元(CTU)序列。瓦片的特征主要用于并行处理目的,瓦片分割的矩形切片(slice)形成的子图片也可用于基于视口的360度视频应用。图片瓦片分割的处理顺序是图片内瓦片光栅扫描和瓦片内CTU光栅扫描。瓦片打破了图片内预测依赖性以及熵解码依赖性。切片由图片的一瓦片内的整数个连续完整CTU行或整数个完整瓦片组成。切片的特性主要用于子图片级访问和超低延迟。图片中的每个子图片包含一个或多个切片,这些切片共同覆盖图片的一个矩形区域,每个子图片包含多个完整的CTU。图片中的子图片允许独立编解码和提取编码图片序列的矩形子集,用于视口(viewport)相关的360度视频流优化和感兴趣区域应用等用例。子图片允许编码块的运动向量指向子图片外部,即使当子图片是可提取的时,子图片也允许在子图片边界处填充作为画面边界。
仿射运动补偿预测在VVC标准的发展过程中,基于块的仿射变换运动补偿预测是传统平移运动补偿预测的替代帧间预测编码工具。块的仿射运动场由4参数仿射运动模型中的两个控制点的运动信息或6参数仿射运动模型中的三个控制点的运动信息来描述。对于4参数仿射运动模型,块中样本位置(x,y)处的运动矢量由以下等式得出。
对于6参数仿射运动模型,块中样本位置(x,y)处的运动矢量由以下等式得出。
其中(mv0x,mv0y)是左上角控制点的运动向量,(mv1x,mv1y)是右上角控制点的运动向量,(mv2x,mv2y)是底部的运动向量-左角控制点。
编码单元(CU)的亮度编码块(CB)被分成4x4子块。图1图示了通过仿射运动补偿预测编码的CU中每个4×4子块的仿射运动矢量场的示例。为了导出仿射编解码CU中每个4x4亮度子块的运动向量,每个子块的中心样本的运动向量根据公式(1)或(2)所示的仿射模型计算并四舍五入为1/16分数精度。应用运动补偿插值滤波器以利用导出的子块运动矢量生成每个子块的预测信号。色度分量的子块大小也设置为4x4样本。4x4色度子块的MV被计算为四个对应的4x4亮度子块的MV的平均值。
有两种仿射运动帧间预测模式,包括仿射合并(affine Merge)模式和仿射高级运动矢量预测(affine Advance Motion Vector Prediction,AMVP)模式。仿射合并模式可以应用于宽度和高度均大于或等于8个样本的CU。在这种模式下,当前CU的控制点MV是基于空间相邻CU的运动信息生成的。最多可以有五个控制点运动矢量预测子(Control PointMotion Vector Predictor,CPMVP)候选者,并发出一个索引来指示要用于当前CU的那个。三种类型的CPMVP候选用于形成仿射合并候选列表,包括从相邻CU的控制点MV外推的继承仿射合并候选、使用相邻CU的平移MV导出的构造仿射合并候选CPMVP和零MV。
最多有两个继承的仿射候选,它们是从相邻块的仿射运动模型导出的,一个来自左侧相邻CU,一个来自上方相邻CU。左侧预测子的候选位置的扫描顺序是A0 212然后A1211,如图2所示。上述预测子的候选位置的扫描顺序是B0 214,B1 213,然后是B2 215,如图2所示。只选择来自每一方(side)的第一个继承候选(inherited candidate)。因为冗余,不检查两个继承候选。在识别出相邻仿射CU的情况下,其控制点运动向量用于在当前CU的仿射合并列表中推导出CPMVP候选。图3说明了控制点运动矢量继承,如图3所示,当相邻左下块A以仿射方式编解码时,包含块A的CU的左上角、右上角和左下角的运动矢量v2、v3和v4是仿射的。当包含块A的CU用4参数仿射模型编解码时,根据运动矢量v2和v3计算CU的两个控制点MV。当包含块A的CU用6参数仿射模型编解码时,根据运动矢量v2、v3和v4计算CU的三个控制点MV。
构造的仿射合并候选是通过组合每个控制点的相邻平移运动信息(neighboringtranslational motion information)来构造的。控制点的运动信息来自指定的空间邻居和时间邻居,如图4所示。CPMVk(k=1,2,3,4)表示第k个控制点。对于CPMV1,检查顺序是B2,B3,然后A2,使用第一个可用块的MV。对于CPMV2,检查顺序是B1然后B0,对于CPMV3,检查顺序是A1然后A0。如果可用,时间MVP将用作CPMV4。
在获得四个控制点的MV之后,基于运动信息构造仿射合并候选。使用以下控制点MV组合按顺序构建:{CPMV1,CPMV2,CPMV3},{CPMV1,CPMV2,CPMV4},{CPMV1,CPMV3,CPMV4},{CPMV2,CPMV3,CPMV4},{CPMV1,CPMV2},{CPMV1,CPMV3}。3个CPMV的组合构建了一个6参数仿射合并候选,2个CPMV的组合构建了一个4参数仿射合并候选。为了避免运动缩放过程,如果控制点的参考索引不同,则丢弃控制点MV的相关组合。在检查了继承的仿射合并候选者和构造的仿射合并候选者之后,如果列表仍然不满,则将零MV插入到列表的末尾。
仿射AMVP模式可以应用于宽度和高度都大于或等于16个样本的CU。在视频比特流中用信号发送CU级别中的仿射标志以指示是否使用仿射AMVP模式,然后用信号发送另一个标志以指示使用4参数仿射模型还是6参数仿射模型。在仿射AMVP模式中,当前CU的控制点MV与其预测值CPMVP的差异在视频比特流中被用信号表示。仿射AMVP候选列表大小为2,它是通过依次使用四种类型的控制点MV候选生成的。第一类控制点MV候选者是从相邻CU的控制点MV外推的继承仿射AMVP候选者。第二种类型是使用相邻CU的平移MV导出的仿射AMVP候选CPMVP。第三种候选控制点MV是来自相邻CU的平移MV,第四种是零MV。继承的仿射AMVP候选者的检查顺序与继承的仿射合并候选者的检查顺序相同。唯一的区别是在生成继承仿射AMVP候选时仅考虑具有与当前块的参考图片相同的参考图片的仿射CU。将继承的仿射运动预测子插入候选列表时不应用修剪过程。如图4所示,构造的AMVP候选者是从指定的空间邻居导出的。相同的检查顺序用于导出构造的仿射AMVP候选者和导出仿射合并候选者。此外,还检查相邻块的参考图片索引。检查顺序中的第一个块是帧间编解码的,并具有与当前CU相同的参考图片。当当前CU用4参数仿射模型编解码并且两个CPMV都可用时,只有一个构造的AMVP候选,这两个CPMV作为一个候选添加到仿射AMVP候选列表中。当当前CU使用6参数仿射模型编解码并且所有三个CPMV都可用时,三个CPMV作为一个候选添加到仿射AMVP候选列表中。否则,将构建的AMVP候选设置为不可用。如果在检查继承的仿射AMVP候选和构造的AMVP候选后仿射AMVP候选列表中候选的数量小于2,将添加一个或多个可用的CPMV作为平移MV来预测当前CU的所有控制点MV。最后,如果仿射AMVP候选列表仍未满,则使用零MV来填充该列表。
基于子块的时间运动矢量预测(SbTMVP)仿射运动补偿预测的子块概念被扩展到合并模式下的CU级时间运动矢量预测。基于子块的时间运动矢量预测(SbTMVP)允许在子块级别从同位(collocated)参考图片继承运动信息。CU的每个子块都可以拥有自己的运动信息,而无需显式传输块分区结构或运动信息,从而在CU内实现发散运动补偿而无需任何额外成本。SbTMVP中的子块运动信息推导包括为当前CU推导位移矢量(DisplacementVector,DV)、检查SbTMVP候选者的可用性和推导中心运动(central motion)。子块运动信息是从DV标识的相应子块中导出的。导出的子块级运动信息用于CU的亮度和色度CB的运动补偿。SbTMVP应用DV来查找当前图片中的位置或分区块与同位图片中的位置或分区块的对应关系。如果左相邻CU使用同位图片作为其参考图片,则选择当前CU的左相邻CU的MV作为DV。如果左侧相邻CU未以帧间预测模式编码或运动信息不指向同位图片,则将DV设置为(0,0)。然后将DV应用于当前CU的中心位置,以定位当前CU的位移中心位置,从而定位同位图片中的位移中心位置。如果包含移位的中心位置的块没有进行帧间编解码,则认为SbTMVP候选者不可用。否则,当前CU的中心位置的运动信息是从同位图片中包含偏移的中心位置的块的运动信息得到的。最多可以导出两个运动矢量,每个列表一个。当SbTMVP候选可用时,DV用于为当前CU的每个子块在同位图片中找到对应的子块。根据对应的子块的运动信息推导出当前CU中子块的运动信息的方式是以与推导中心运动相同的方式进行。当前子块的对应子块没有进行帧间编解码时,将当前子块的运动信息设置为中心运动。SbTMVP适用于宽度和高度均大于或等于8亮度样本的CU。SbTMVP的子块大小设置为8x8,以限制内存带宽消耗不超过8x8双向预测中的最坏情况。应用DV后,相应子块的位置被剪裁到受限区域内。
发明内容
用于视频编解码系统的视频编码或解码方法的实施例接收与当前图片中的当前块相关联的输入数据,确定参考图片中的预加载区域以用于仿射预测、或运动补偿的两个或更多个编解码配置、或用于两次或更多次仿射细化迭代,将预加载区域中的参考样本加载到内存缓冲区中,生成当前块的预测子,并根据预测子对当前块进行编码或解码。与两个或更多个仿射细化迭代或编解码配置相关联的预测子是基于预加载区域中的参考样本的相应部分生成的。根据本发明的一些实施例,与仿射细化迭代或编解码配置相关联的预测子是基于预加载区域中的参考样本的部分生成的,而不在参考图片中加载其他参考样本。在本发明的各种实施例中,仿射预测或运动补偿的编解码配置包括仿射单向预测、仿射双向预测、4参数仿射预测、6参数仿射预测、帧间预测、合并预测的组合和SbTMVP。例如,两个或更多个仿射细化迭代与在参考图片上执行的仿射单向预测或仿射双向预测相关联。在一个实施例中,预加载区域通过单向预测来确定,并且预加载区域通过双向预测来重用。在另一实施例中,预加载区域由4参数仿射预测或4参数仿射合并运动补偿确定,并且预加载区域由6参数仿射预测或6参数仿射合并运动补偿重新使用。在又一个实施例中,预加载区域由仿射预测或运动补偿的编解码配置确定,并且预加载区域被SbTMVP重用。如果SbTMVP的4x4子块运动矢量(MV)中的任何一个指向预加载区域之外的参考样本,则当前块跳过SbTMVP或使用填充。
当用于仿射预测或运动补偿的所需数据不在预加载区域内时,视频编码或解码方法的一些实施例跳过搜索候选。当用于仿射预测或运动补偿的所需数据不在预加载区域内时,视频编码或解码方法的一些其他实施例修改搜索候选。搜索候选通过修改搜索候选的一个或多个仿射控制点运动矢量(CPMV)来修改。在一个实施例中,通过约束两个相邻仿射4x4子块的参考区域的距离来修改仿射CPMV。例如,两个相邻仿射4x4子块的参考区域的距离被限制为小于1个样本。在另一个实施例中,仿射CPMV通过约束两个相邻仿射4x4子块的重叠区域来修改。例如,两个相邻仿射4x4子块的重叠区域的每个维度被限制为小于1列或1行。在另一个实施例中,仿射CPMV通过将两个相邻仿射4x4子块之间的中心运动矢量(MV)差约束在定义的范围内来修改。修改一个或多个仿射CPMV的一些实施例修改仿射模型以确保最远的CPMV在预加载区域内。修改一个或多个仿射CPMV的一些实施例将一个或多个违反的CPMV剪辑在预加载区域内。修改一个或多个仿射CPMV的一些实施例将仿射模式切换到使用仿射中心MV作为平移MV的平移模式以导出新的参考区域。修改一个或多个仿射CPMV的实施例将仿射模式切换到使用仿射中心MV作为平移MV的平移模式以导出新的参考区域并且移动新参考区域以与预加载区域的边界对齐。
根据本发明的一些实施例,当前块是编码块(CB)或编码单元(CU)。在一些实施例中,当前块的大小是宽度乘以高度,并且预加载区域的大小是通过乘以宽度加7的1.4倍和高度加7的1.4倍得出。
本公开的多个方面还提供了一种用于视频编解码系统的装置。该装置的一些实施例接收与当前图片中的当前块相关联的输入视频数据,确定参考图片中的预加载区域以用于仿射预测或运动补偿的两个或更多个编解码配置或者用于两个或更多个仿射细化迭代,将预加载区域中的参考样本加载放入内存缓冲区,生成当前块的预测子,并根据预测子对当前块进行编码或解码。与两个或更多个仿射细化迭代或编解码配置相关联的预测子是基于预加载区域中的参考样本的相应部分生成的。
以下概述仅是说明性的,并不旨在以任何方式进行限制。即,提供以下概要以介绍本文描述的新颖且非显而易见的技术的概念、强调、益处和优点。在下面的详细描述中进一步描述了选择而不是所有的实现。因此,以下概述不旨在确定要求保护的主题的基本特征,也不旨在用于确定要求保护的主题的范围。
附图说明
将参考以下附图详细描述作为示例提出的本公开的各种实施例,其中相同的数字表示相同的元件,并且其中:
图1图示了通过使用4参数仿射模型的仿射运动补偿预测编码的CU中的块的仿射运动矢量场的示例。
图2图示了用于根据VVC标准为常规合并模式构建合并候选列表的空间候选和时间候选的位置。
图3图示了用于为当前块构建仿射合并候选者列表的控制点运动向量继承的示例。
图4示出了用于通过组合每个控制点的相邻平移运动信息来生成构造的仿射候选的空间和时间相邻的位置。
图5图示了与4x4子块的参考样本加载相关联的不规则加载模式。
图6示出了根据本发明的一个实施例重用具有SbTMVP的仿射预测的预加载区域。
图7A和图7B示出了根据本发明的一些实施例的为减少内部存储器访问的带宽而应用的约束。
图8A-8D示出了当所需参考数据超出预加载区域时修改CPMV的四个实施例。
图9是根据本发明实施例的使用共享预加载区域对当前块进行编码或解码以用于仿射预测或运动补偿的流程图。
图10示出了结合了根据本发明实施例的视频编码方法的视频编码系统的示例性系统框图。
图11示出了结合了根据本发明实施例的视频解码方法的视频解码系统的示例性系统框图。
具体实施方式
将容易理解的是,如本文附图中大体描述和示出的,本发明的部件可以布置和设计成多种不同的配置。因此,如附图中所表示的本发明的系统和方法的实施例的以下更详细的描述并不旨在限制所要求保护的本发明的范围,而仅代表本发明的选定实施例.
在整个说明书中对“一个实施例”、“一些实施例”或类似语言的引用意味着结合实施例描述的特定特征、结构或特性可以包括在本发明的至少一个实施例中。因此,贯穿本说明书的各个地方出现的短语“在一个实施例中”或“在一些实施例中”不一定都指同一实施例,这些实施例可以单独实施,也可以结合一个或多个其他实施例实施。此外,所描述的特征、结构或特性可以在一个或多个实施例中以任何合适的方式组合。然而,相关领域的技术人员将认识到,本发明可以在没有一个或多个具体细节的情况下,或使用其他方法、组件等来实践。在其他情况下,未示出或未示出众所周知的结构或操作。详细描述以避免模糊本发明的方面。
仿射CPMV细化根据VVC标准,应用多个CPMV细化迭代来确定每个参考图片的仿射双向预测或单向预测中的最终CPMV。每个参考图片的仿射双向预测中的CPMV细化迭代次数为3,而如果使用4参数仿射运动模型,则每个参考图片的仿射单向预测中的CPMV细化迭代次数等于5,如果使用6参数仿射运动模型,则等于4。CPMV细化迭代次数表示CPMV细化过程中所需的运动补偿次数。在每次CPMV细化迭代中,用于运动补偿的预加载参考区域(也称为预加载区域)会根据更新的CPMV进行更改,这会导致额外的预加载周期并增加时序消耗。预加载区域的不同绑定框用于单向预测和双向预测。对每个4x4子块执行运动补偿所需的参考区域可能与其他4x4子块的参考区域部分重叠,导致参考样本加载的加载模式不规则和带宽浪费,如图5所示。图5说明了四个4x4子块的重叠搜索区域的示例。
用于仿射CPMV细化迭代或编解码配置的共享预加载区域本发明的实施例确定并加载用于仿射预测或运动补偿的所需数据的预加载区域,并且该预加载区域可以重用(reuse)在至少一个其他CPMV细化迭代或另一种编解码配置。在一个实施例中,相同的预加载区域用于相同参考图片中的单向预测和双向预测。例如,用于单向预测的预加载区域被重新用于双向预测。在另一个实施例中,相同的预加载区域用于4参数和6参数仿射预测和仿射合并运动补偿。例如,用于4参数仿射预测和仿射合并运动补偿的预加载区域被6参数仿射预测和仿射合并运动补偿重用。为多个CPMV细化迭代或多个编解码配置共享预加载区域的实施例防止了由在每个CPMV细化迭代或每个编解码配置中重新加载参考样本引起的带宽开销。在一些实施例中,参考图片中的单个预加载区域被共享用于仿射预测或运动补偿的多个编解码配置。参考图片中预加载区域的参考样本被加载到内存缓冲区中,并且预加载区域中的参考样本的某些部分被编解码配置使用。在一些实施例中,虽然预加载区域中的参考样本的某些部分被相应的编解码配置重用,但是参考图片中的其他参考样本仍然可以被其他编解码配置加载和使用。在一些实施例中,预加载区域被编解码配置重新使用,而不在参考图片中加载其他参考样本。不同的编解码配置包括仿射单向预测、双向预测、4参数仿射预测、6参数仿射预测、帧间预测、合并预测和SbTMVP。在重新使用预加载区域的一些实施例中,如果用于仿射预测或运动补偿的所需数据不在预加载区域内,则搜索候选被跳过或修改为在预加载区域内。例如,通过改变一个或多个仿射CPMV来修改搜索候选,因此新的搜索范围在预加载区域内。修改仿射CPMV的一些实施例包括约束定义范围内的两个4x4子块之间的参考范围距离或中心MV差异将在后面的“CPMV调整约束”部分中描述,并且修改仿射CPMV的一些其他实施例将将在后面的“将仿射CPMV修改为在预加载区域内”部分中进行描述。
根据本发明的实施例,仿射预加载区域被设置为平移模式所需的参考样本面积的两倍。即仿射预加载区域的大小为1.4x(PU_width+7)x 1.4x(PU_height+7),其中PU_width和PU_height是仿射预测下当前预测单元(PU)的宽度和高度。每个周期从预加载区域加载一个9x9样本模式,以进行仿射运动补偿。在一个实施例中,共享参考预加载区域由仿射合并模式的4参数单向预测CPMV确定,并且共享参考预加载区域由4参数和6参数仿射模式的单向预测和双向预测使用。在仿射4参数单向预测处理元件(PE)处理仿射预测之前,预加载区域中的参考样本被预加载到内存缓冲区中,例如P/D交付静态随机存取存储器(SRAM)。在本发明的一些实施例中,每个参考图片的共享预加载区域的大小仍然等于1.4x(PU_width+7)x 1.4x(PU_height+7)。
与SbTMVP共享的预加载区域为了在运动补偿阶段进一步减少SbTMVP的预加载循环的数量,根据本发明的一些实施例,SbTMVP与仿射预测共享相同的参考预加载区域。在一个实施例中,如果4x4子块MV中的任何一个指向共享预加载区域之外的参考样本,则当前PU跳过SbTMVP或使用填充。图6示出了确定仿射预加载区域和将仿射预加载区域重新用于SbTMVP的实施例。在图6中,仿射预加载区域64由当前CTU 62中的当前PU 620的仿射中心MV确定。该仿射预加载区域64被重新用于执行SbTMVP,因为仿射预加载区域64中的参考样本是根据当前PU 620的每个SbTMVP 4x4子块MV获取的,其中640、642、644、646为子块参考区域。
CPMV调整约束在本发明的一些实施例中,设置CPMV调整约束以减少内部存储器访问的带宽。CPMV调整约束将与两个相邻仿射4x4子块相关联的参考区域的距离限制为小于1个样本,如第7A图所示。即,任何相邻的仿射4x4子块都满足以下等式,其中在本实施例中,w是4x4子块的宽度,h是4x4子块的高度。
在CPMV调整约束的一些其他实施例中,对应于两个相邻仿射4x4子块的参考区域的重叠区域受到约束。例如,与两个相邻仿射4x4子块相关联的重叠区域小于1列或1行,如图7B所示。这种CPMV调整约束避免了重叠参考区域中的复杂选择信号。即,任何相邻的仿射4x4子块都满足以下等式,其中在本实施例中,w是4x4子块的宽度,h是4x4子块的高度。
在CPMV调整约束的一些实施例中,根据本发明的实施例,两个相邻仿射4x4子块之间的中心MV差被约束在定义的范围[a,b]内。
将仿射CPMV修改为在预加载区域内在CPMV细化迭代中重用预加载区域或将预加载区域重用于多个编解码配置的一些实施例中,如果需要的参考数据超出预加载区域范围,则可以应用修改之一或修改的组合。在一个实施例中,仿射模型被修改以确保当使用4参数仿射预测时最远的CPMV仍在预加载区域内;或当使用6参数仿射预测时,违反的CPMV将被剪裁到预加载区域。图8A示出了根据该实施例修改仿射模型以确保最远CPMV在预加载区域内的示例。图8B示出了根据该实施例将违反的CPMV直接修改为在预加载区域内的示例。在图8A中,通过修改4参数仿射模型将原始参考区域802变为新参考区域804,因此新参考区域804完全位于预加载区域800内,而新参考区域804的矩形形状为保留。在图8B中,通过将违反的CPMV剪裁到预加载区域810中,将原始参考区域812改变为新的参考区域814。在另一个实施例中,将违反的CPMV剪裁在预加载区域内,例如,在预加载区域,当仿射参考区域被翻转或超出预加载区域时使用平移模式,如图8C所示。在图8C中,当原始仿射参考区域822被翻转或离开预加载区域820时,仿射模式首先切换到平移模式,然后仿射中心MV 826被调整以移动新的参考区域824以对齐预加载区域820的边界。图8D示出了CPMV调整的又一个实施例。在本实施例中,当仿射参考区域832被翻转或离开预加载区域830时,仿射模式直接切换到平移模式,通过使用仿射中心MV 836作为平移MV来导出新的参考区域834。
本发明的实施例的代表性流程图图9是图示在多个仿射细化迭代中或用于多个编解码配置的共享预加载区域的视频编码或解码方法的实施例的流程图。视频编解码系统在步骤S902中接收当前图片中的当前块的输入数据,并在步骤S904中为多个仿射细化迭代或多个编解码配置确定参考图片中的预加载区域。在步骤S906中,预加载区域中的参考样本被加载到存储器缓冲器中。在步骤S908,视频编解码系统生成当前块的预测子。与仿射细化迭代或编解码配置相关联的当前块的预测子是基于预加载区域中的一些参考样本生成的,而不在参考图片中加载其他参考样本。在步骤S910中,当前块使用预测子之一被编码或解码。
实现本发明的示例性视频编码器和视频解码器可以在视频编码器和/或视频解码器中实现本发明的实施例。例如,所公开的视频编码或解码方法可以在视频编码器的帧间预测模块或视频解码器的帧间预测模块中实现。备选地,任何公开的方法可以实现为耦合到视频编码器的帧间预测模块或视频解码器的帧间预测模块的电路,以提供任何模块所需的信息。
图10图示了用于实现本发明的各种实施例中的一个或多个的视频编码器1000的示例性系统框图。视频编码器1000接收当前图片中的当前块的输入视频数据。帧内预测模块1010基于当前图片的重构视频数据提供帧内预测子。帧间预测模块1012执行运动估计(ME)和运动补偿(MC)以基于参考来自其他图片的视频数据提供帧间预测子。在本发明的一些实施例中,针对两个或更多个仿射细化迭代或者针对仿射预测或运动补偿的两个或更多个编解码配置来确定每个参考图片中的预加载区域。编解码配置的一些示例是仿射单向预测、仿射双向预测、4参数仿射预测、6参数仿射预测、帧间预测、合并预测和SbTMVP。预加载区域中的参考样本被加载到帧间预测模块1012的存储器缓冲器中。根据本发明的一些实施例,当用于仿射预测或运动补偿的所需数据不在预加载区域内时,搜索候选被跳过或修改。例如,修改搜索候选的一个或多个仿射CPMV,使得新的参考范围在预加载区域内。在一些实施例中,仿射细化迭代中的当前块的预测子是基于预加载区域中的一些参考样本生成的,而不将参考图片中的其他参考样本加载到存储器缓冲器中。在一些其他实施例中,基于预加载区域中的一些参考样本来生成编解码配置的当前块的预测子,而不将参考图片中的其他参考样本加载到存储器缓冲器中。帧内预测模块1010或帧间预测模块1012使用开关1014向加法器1016提供当前图片中当前块的选定预测子,以通过从当前块的原始视频数据中减去选定预测子来形成残差。例如,当前块是编码单元(CU)。当前块的残差由变换模块(T)1018和随后的量化模块(Q)1020进一步处理。变换和量化的残差信号然后由熵编码器1030编码以形成视频比特流。当前块的变换和量化的残差信号由逆量化模块(IQ)1022和逆变换模块(IT)1024处理以恢复预测残差。如第10图所示,通过在重建模块(REC)1026处添加回选定的预测子来恢复残差,以产生重建的视频数据。重构的视频数据可以存储在参考图片缓冲器(Ref.Pict.Buffer)1032中并且用于其他图片的预测。由于编码处理,来自REC 1026的重构视频数据可能会受到各种损害,因此,在存储到参考图片缓冲器1032之前,至少一个环路处理滤波器(ILPF)1028有条件地应用于重构的视频数据以进一步提高画质。去块滤波器是ILPF 1028的一个示例。语法元素被提供给熵编码器1030以结合到视频比特流中。
图10的视频编码器1000对应的视频解码器1100如图11所示。由视频编码器编码的视频比特流是视频解码器1100的输入,由视频解码器(亦称为熵解码器)1110解码以解析恢复当前图片的变换量化后的残差信号等系统信息。解码器1100的解码过程类似于编码器1000处的重建循环,除了熵解码器1100只需要帧间预测模块1114中的运动补偿预测。熵解码器1110接收当前图片,并且在解码器1100中的当前图片每个块由帧内预测模块1112或帧间预测模块1114解码。开关1116根据解码的模式信息选择来自帧内预测模块1112的帧内预测子或来自帧间预测模块1114的帧间预测子。在一些实施例中,参考图片中的预加载区域被确定并且预加载区域的参考样本被加载到存储器缓冲器中以用于多个仿射细化迭代或用于多个编解码配置。根据一些实施例,当用于仿射预测或运动补偿的所需数据不在预加载区域内时,修改一个或多个仿射CPMV。经变换和量化的残差信号由反量化模块(IQ)1120和反变换模块(IT)1122恢复。IQ模块1120也称为去量化模块。通过在重建(REC)模块1118中加回预测子来重建恢复的残余信号以产生重建的视频。至少一个环内处理滤波器(ILPF)1124进一步有条件地处理重构的视频,以生成最终的解码视频。去块滤波器是ILPF 1124的一个示例。如果当前解码的图片是参考图片,则当前解码的图片的重构视频也被存储在参考图片缓冲器(Ref.Pict.Buffer)1126中以供稍后的图片解码命令。
图10和图11中的视频编码器1000和视频解码器1100的各种组件可以由硬件组件、被配置为执行存储在存储器中的程序指令的一个或多个处理器、或者硬件和处理器的组合来实现。例如,处理器执行程序指令以控制将预加载区域重新用于多个仿射细化迭代或编解码配置。处理器配备单个或多个处理核心。在一些示例中,处理器执行程序指令以在编码器1000和解码器1100中的一些组件中执行功能,并且与处理器电耦合的存储器用于存储程序指令、与块的重建图像相对应的信息,和/或编码或解码过程中的中间数据。在一些示例中,视频编码器1000可以通过在视频比特流中包括一个或多个语法元素来发信号通知信息,并且对应的视频解码器1100通过解析和解码一个或多个语法元素来导出此类信息。在一些实施例中,存储器包括非瞬态计算机可读介质,例如半导体或固态存储器、随机存取存储器(RAM)、只读存储器(ROM)、硬盘、光盘或其他合适的存储介质。存储器也可以是上面列出的两种或更多种非暂时性计算机可读介质的组合。如图所示。参照第10、11图,编码器1000和解码器1100可以实现在同一电子设备中,因此如果实现在同一电子设备中,则编码器1000和解码器1100的各种功能组件可以共享或重用。例如,图10中的重建模块1026、逆变换模块1024、逆量化模块1022、环路处理滤波器1028和参考图片缓冲器1032中的一个或多个也可以用作重建模块1118,分别在图11中的逆变换模块1122、逆量化模块1120、环路处理滤波器1124和参考图片缓冲器1126。
更有效的视频处理方法的实施例可以在集成到视频压缩芯片中的电路或集成到视频压缩软件中以执行上述处理的程序代码中实现。例如,通过帧间编码对当前画面中的一个或多个块进行编码或解码可以在计算机处理器、数字信号处理器(DSP)、微处理器或现场可编程门阵列(FPGA)上执行的程序代码中实现。这些处理器可以被配置为通过执行定义本发明体现的特定方法的机器可读软件代码或固件代码来执行根据本发明的特定任务。
在不背离其精神或基本特征的情况下,本发明可以以其他特定形式体现。所描述的示例在所有方面都仅被认为是说明性的而不是限制性的。因此,本发明的范围由所附权利要求而不是由前述描述指示。在权利要求的等效含义和范围内的所有变化都应包含在其范围内。

Claims (22)

1.一种在视频编码系统中编码或解码视频数据的方法,包括:
接收与当前图片中的当前块相关联的输入数据;
为仿射预测、或运动补偿的两个或更多个编解码配置、或者针对两个或更多个仿射细化迭代确定参考图片中的预加载区域;
将预加载区域中的参考样本加载到内存缓冲区中;
为当前块生成预测子,其中与两个或更多个仿射细化迭代或编解码配置相关联的预测子是基于预加载区域中参考样本的相应部分生成的;以及
根据预测子对当前块进行编码或解码。
2.根据权利要求1所述的编码或解码视频数据的方法,其特征在于,与两个或更多个仿射细化迭代或编解码配置相关联的预测子是基于预加载区域中参考样本的相应部分生成的,而无加载所述参考图片中的其他参考样本。
3.根据权利要求2所述的编码或解码视频数据的方法,其特征在于,所述仿射预测或运动补偿的两种或更多种编解码配置包括仿射单向预测、仿射双向预测、4参数仿射预测、6参数仿射预测、帧间预测、合并预测和基于子块的时间运动矢量预测(SbTMVP)的组合。
4.根据权利要求3所述的编码或解码视频数据的方法,其特征在于,所述两个或更多个仿射细化迭代与对所述参考图片执行的仿射单向预测或仿射双向预测相关联。
5.根据权利要求3所述的编码或解码视频数据的方法,其特征在于,所述预加载区域由单向预测确定并且由双向预测重复使用。
6.根据权利要求3所述的编码或解码视频数据的方法,其特征在于,所述预加载区域由4参数仿射预测或4参数仿射合并运动补偿确定并且由6参数仿射预测或6参数仿射合并运动补偿重用。
7.根据权利要求3所述的编码或解码视频数据的方法,其特征在于,所述预加载区域由仿射预测或运动补偿的编解码配置确定并且由SbTMVP重用。
8.根据权利要求7所述的编码或解码视频数据的方法,其特征在于,如果SbTMVP的4×4子块运动矢量(MV)中的任何一个指向预加载区域之外的参考样本,则当前块跳过SbTMVP或使用填充。
9.根据权利要求1所述的编码或解码视频数据的方法,其特征在于,还包括:当用于仿射预测或运动补偿的所需数据不在所述预加载区域内时,跳过搜索候选。
10.根据权利要求1所述的编码或解码视频数据的方法,其特征在于,还包括:当用于仿射预测或运动补偿的所需数据不在所述预加载区域内时,修改搜索候选。
11.根据权利要求10所述的编码或解码视频数据的方法,其特征在于,修改所述搜索候选包括修改所述搜索候选的一个或多个仿射控制点运动向量(CPMV)。
12.根据权利要求11所述的编码或解码视频数据的方法,其特征在于,所述一个或多个仿射CPMV通过约束两个相邻仿射4×4子块的参考区域的距离来修改。
13.根据权利要求12所述的编码或解码视频数据的方法,其特征在于,所述两个相邻仿射4×4子块的参考区域的距离被限制为小于1个样本。
14.根据权利要求13所述的编码或解码视频数据的方法,其特征在于,所述一个或多个仿射CPMV通过约束两个相邻仿射4×4子块的重叠区域来修改。
15.根据权利要求14所述的编码或解码视频数据的方法,其特征在于,所述两个相邻仿射4×4子块的重叠区域的每个维度被限制为小于1列或1行。
16.根据权利要求11所述的编码或解码视频数据的方法,其特征在于,所述一个或多个仿射CPMV通过将两个相邻仿射4×4子块之间的中心运动矢量(MV)差约束在限定范围内来修改。
17.根据权利要求11所述的编码或解码视频数据的方法,其特征在于,通过修改仿射模型来修改所述一个或多个仿射CPMV以确保最远的CPMV在预加载区域内。
18.根据权利要求11所述的编码或解码视频数据的方法,其特征在于,所述一个或多个仿射CPMV通过将一个或多个违反的CPMV剪辑到所述预加载区域中而被修改。
19.根据权利要求11所述的编码或解码视频数据的方法,其特征在于,通过将仿射模式切换到使用仿射中心MV作为平移MV的平移模式来修改所述一个或多个仿射CPMV以导出新的参考区域。
20.根据权利要求11所述的编码或解码视频数据的方法,其特征在于,通过将仿射模式切换到使用仿射中心MV作为平移MV的平移模式来修改所述一个或多个仿射CPMV以导出新的参考区域并且移动所述新的参考区域以与预加载区域的边界对齐。
21.根据权利要求1所述的编码或解码视频数据的方法,其特征在于,当前块的大小是宽度乘以高度,并且预加载区域的大小是通过乘以宽度加7的1.4倍和高度加7的1.4倍得出的。
22.一种用于执行视频编码或解码的装置,包括:计算机处理器,被配置用于接收视频数据;以及通过执行包括以下步骤的在计算机处理器上可执行的用于视频编解码的程序:
接收与当前图片中的当前块相关联的输入数据;
为仿射预测、或运动补偿的两个或更多个编解码配置、或者针对两个或更多个仿射细化迭代确定参考图片中的预加载区域;
将预加载区域中的参考样本加载到内存缓冲区中;
为当前块生成预测子,其中与两个或更多个仿射细化迭代或编解码配置相关联的预测子是基于预加载区域中参考样本的相应部分生成的;以及
根据预测子对当前块进行编码或解码。
CN202211075578.4A 2022-05-04 2022-09-02 用于仿射预测或运动补偿的共享预加载区域的方法和装置 Pending CN117061750A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/736,144 US20230362403A1 (en) 2022-05-04 2022-05-04 Methods and Apparatuses of Sharing Preload Region for Affine Prediction or Motion Compensation
US17/736,144 2022-05-04

Publications (1)

Publication Number Publication Date
CN117061750A true CN117061750A (zh) 2023-11-14

Family

ID=88647794

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211075578.4A Pending CN117061750A (zh) 2022-05-04 2022-09-02 用于仿射预测或运动补偿的共享预加载区域的方法和装置

Country Status (3)

Country Link
US (1) US20230362403A1 (zh)
CN (1) CN117061750A (zh)
TW (1) TWI831358B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230224472A1 (en) * 2022-01-12 2023-07-13 Tencent America LLC Motion vector restriction for out-of-frame boundary conditions
US20230328225A1 (en) * 2022-04-11 2023-10-12 Tencent America LLC Bilateral matching with affine motion

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180199057A1 (en) * 2017-01-12 2018-07-12 Mediatek Inc. Method and Apparatus of Candidate Skipping for Predictor Refinement in Video Coding
US10944984B2 (en) * 2018-08-28 2021-03-09 Qualcomm Incorporated Affine motion prediction
WO2020084475A1 (en) * 2018-10-22 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Utilization of refined motion vector
CN111083484B (zh) * 2018-10-22 2024-06-28 北京字节跳动网络技术有限公司 基于子块的预测
KR20220043109A (ko) * 2019-08-13 2022-04-05 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 서브 블록 기반 인터 예측의 모션 정밀도
US20230328225A1 (en) * 2022-04-11 2023-10-12 Tencent America LLC Bilateral matching with affine motion

Also Published As

Publication number Publication date
US20230362403A1 (en) 2023-11-09
TW202345600A (zh) 2023-11-16
TWI831358B (zh) 2024-02-01

Similar Documents

Publication Publication Date Title
JP7358436B2 (ja) マルチリファレンス予測のための動きベクトルの精密化
CN113016187B (zh) 利用当前画面参照编码方式的视频区块编码或解码方法和装置
CN113612994B (zh) 具有仿射运动补偿的视频编解码的方法
JP7571105B2 (ja) 動きベクトル精密化および動き補償のためのメモリアクセスウィンドウおよびパディング
TWI720532B (zh) 在視訊編解碼系統中視訊處理的方法以及裝置
JP7279140B2 (ja) 動きベクトルの改善のための制限されたメモリアクセスウィンドウ
TWI831358B (zh) 用於仿射預測或運動補償的共享預加載區域的方法和裝置
CN113785586B (zh) 用于视频编解码系统的简化仿射子块处理的方法及装置
CN112840645A (zh) 视频编码系统中组合多个预测子用于块预测的方法及装置
CN114009033A (zh) 用于用信号通知对称运动矢量差模式的方法和装置
KR20210153548A (ko) 비디오 신호 부호화/복호화 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체
CN114762331A (zh) 视频编解码方法、装置、可移动平台和存储介质
CN112532988A (zh) 视频编码方法、视频解码方法及相关设备
JP2024512647A (ja) 明示的な動きシグナリングを用いた幾何学的分割
CN112543333B (zh) 视频解码方法、视频编码方法及相关设备
KR102437696B1 (ko) 비디오 코딩을 위한 모션 벡터 예측
TWI853413B (zh) 視訊編解碼方法及裝置
CN112532989B (zh) 视频编码方法、视频解码方法及相关设备
WO2024027784A1 (en) Method and apparatus of subblock-based temporal motion vector prediction with reordering and refinement in video coding
KR20240008934A (ko) 모션 벡터 리파인먼트를 사용하는 기하학적 파티션 모드
CN118614059A (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