CN110944182B - 仿射模式中的子块的运动矢量推导 - Google Patents
仿射模式中的子块的运动矢量推导 Download PDFInfo
- Publication number
- CN110944182B CN110944182B CN201910901097.6A CN201910901097A CN110944182B CN 110944182 B CN110944182 B CN 110944182B CN 201910901097 A CN201910901097 A CN 201910901097A CN 110944182 B CN110944182 B CN 110944182B
- Authority
- CN
- China
- Prior art keywords
- current block
- motion vector
- control point
- affine
- block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/184—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
提出了仿射模式中的子块的运动矢量推导,涉及一种视频处理的方法,该方法包含:确定要应用到视频帧中的以仿射模式编码的当前块的仿射模式类型,其中所述当前块被划分为多个子块;以及基于所述仿射模式类型为所述多个子块中的每一个推导运动信息,其中推导和储存特定位置处的至少一个控制点(CP)运动矢量(MV)以预测要随后处理的其他块。
Description
相关申请的交叉引用
根据适用的专利法和/或根据巴黎公约的规则,本申请及时要求2018年9月23日提交的国际专利申请No.PCT/CN2018/107169的优先权和权益。国际专利申请No.PCT/CN2018/107169的全部公开内容通过引用结合在此作为本申请公开内容的一部分。
技术领域
本专利文档涉及视频编码技术、装置和***。
背景技术
运动补偿(MC)是视频处理中的技术,在给定之前和/或未来的帧的情况下,其通过考虑到相机和/或视频中的对象的运动来预测视频中的帧。运动补偿可以用于视频数据的编码中以用于视频压缩。
发明内容
本文档公开了涉及在视频编码和解码中使用仿射运动补偿的方法、***和装置。
在一个示例性方面中,提出了一种视频处理的方法。该方法包含:确定要应用到视频帧中的以仿射模式编码的当前块的仿射模式类型,其中所述当前块被划分为多个子块;以及基于所述仿射模式类型为所述多个子块中的每一个推导运动信息,其中推导和储存特定位置处的至少一个控制点(CP)运动矢量(MV),以预测要随后处理的其他块。
在又另一方面中,公开了一种视频处理的方法。该方法包含:确定要应用于视频帧中的以仿射模式编码的当前块的仿射模式类型,其中所述当前块被划分为多个子块;以及基于所确定的所述当前块的仿射模式类型,在无需所述当前块的CP MV的情况下由所述邻近块的控制点(CP)MV直接推导所述多个子块中的每一个的运动矢量(MV)。
在另一示例性方面中,提出了一种视频***中的装置。该装置包含处理器和其上储存有指令的非瞬态存储器,其中由所述处理器执行所述指令时,使所述处理器实现上述方法。
在又一代表性方面中,本文中描述的各种技术可以实施为储存在非瞬态计算机可读介质上的计算机程序产品。计算机程序产品包含程序代码,以执行本文中描述的方法。
在又一代表性方面中,视频解码器设备可以实现如本文中描述的方法。
所附附件、附图和以下说明书中提出了一个或多个实现方式的细节。其他特征将从说明书和附图以及权利要求变得明显。
附图说明
图1示出了基于子块的预测计算的示例。
图2A-2B示出了简化的仿射运动模型的示例(a)4参数仿射模型;(b)6参数仿射模型。
图3示出了每个子块的仿射运动矢量场(MVF)的示例。
图4A-4B示出了AF_MERGE模式的候选。
图5示出了仿射merge模式的示例性候选位置。
图6示出了具有四个子块(A-D)的编码单元(CU)及其邻近块(a-d)的示例。
图7通过由邻近块的两个下CP推导的仿射继承。
图8通过由邻近块的两个右CP推导的仿射继承。
图9是图示了可以用于实现本公开技术的各部分的计算机***或其他控制装置的架构的示例的框图。
图10示出了可以用于实现本公开技术的各部分的移动装置的示例性实施例的框图。
图11是视觉媒体处理的示例性方法的流程图。
图12是一种视觉媒体处理的示例性方法的流程图。
具体实施方式
本文档提供若干技术,其可以被实施为数字视频编码器和解码器。本文档中使用了章节标题以便于理解,并且不将每个章节中公开的技术和实施例的范围仅限制在该章节。
1.概述
本发明涉及视频/图像编码技术。具体地,其涉及视频/图像编码中的仿射预测。其可以应用到现有视频编码标准中,例如HEVC,或尚待敲定的标准(多功能视频编码)。其还可以应用于未来视频/图像编码标准或视频/图像编解码器。
2.介绍
基于子块的预测首先由HEVC Annex I(3D-HEVC)引入到视频编码标准中。利用基于子块的预测,诸如编码单元(CU)或预测单元(PU)的块被分为若干不重叠的子块。可以为不同的子块分配不同的运动信息,诸如参考索引或运动矢量(MV),并且对每个子块单独地执行运动补偿(MC)。
图1示出了基于子块的预测的概念。
为了探索HEVC之外的未来视频编码技术,联合视频探索团队(Joint VideoExploration Team,JVET)由VCEG和MPEG于2015年共同创立。从那时起,JVET采用了许多新方法,并将其纳入名为联合探索模型(Joint Exploration Model,JEM)的参考软件中。
在JEM中,在若干编码工具中采用基于子块的预测,例如仿射预测、可选时域运动矢量预测(ATMVP)、空时运动矢量预测(STMVP)、双向光流(BIO)和帧速率上转换(FRUC)。仿射预测也被采用到VVC中。
1.1仿射预测
在HEVC中,仅将平移运动模型应用于运动补偿预测(MCP)。而在现实世界中,存在多种运动,例如放大/缩小、旋转、透视运动和其他不规则运动。在VVC中,应用简化的仿射变换运动补偿预测。如图2所示,块的仿射运动场由两个(在4参数仿射模型中)或三个(在6参数仿射模型中)控制点运动矢量描述。
图2A-2B示出了简化的仿射运动模型(a)4参数仿射模型;(b)6参数仿射模型。
块的运动矢量场(MVF)由具有4参数仿射模型的以下等式描述
和6参数仿射模型:
其中(mvh 0,mvv 0)是左上角控制点的运动矢量,并且(mvh 1,mvv 1)是右上角控制点的运动矢量,并且(mvh 2,mvv 2)是左下角控制点的运动矢量。
为了推导每个4×4子块的运动矢量,根据等式(1)或(2)计算每个子块的中心样本的运动矢量,如图3所示,并舍入到1/16分数精度。然后,应用运动补偿内插滤波器以用推导的运动矢量生成每个子块的预测。
在VTM中,存在两种仿射运动模式:AF_INTER模式和AF_MERGE模式。对于宽度和高度均大于8的CU,可以应用AF_INTER模式。在比特流中信令通知CU级中的仿射标志,以指示是否使用AF_INTER模式。在该模式中,构建具有两个候选的CP MVP候选列表。
仿射模型可以从空域邻近的仿射编码块继承,诸如左、上、右上、左下和左上邻近块,如图4A中所示。例如,如果图4A中的邻近左块A以仿射模式编码,如图4B中的A0所指代,则获取含有块A的邻近CU/PU的左上角、右上角和左下角的控制点(CP)运动矢量mv0 N、mv1 N和mv2 N。并且基于mv0 N、mv1 N和mv2 N计算当前CU/PU上的左上角/右上/左下的运动矢量mv0 C、mv1 C和mv2 C(其仅用于6参数仿射模型)。
应当注意,当用仿射merge模式编码CU时,即,在AF_MERGE模式中,它从有效的邻近重构块获得用仿射模式编码的第一块。并且候选块的选择顺序是从左、上、右上、左下到左上,如图4A所示。
当前块的推导的CP MV mv0 C、mv1 C和mv2 C可以用作仿射merge模式中的CP MV。或者它们可以在VVC中用作仿射帧间模式的MVP。应当注意,对于merge模式,如果当前块用仿射模式编码,则在推导当前块的CP MV之后,可以将当前块进一步划分为多个子块,并且每个块将基于当前块的推导的CP MV推导其运动信息。
1.2 JVET-K0186
不同于其中仅一个仿射空域邻近块可以用于推导块的仿射运动的VTM,在JVET-K0186中,提出了为AF_MERGE模式构建仿射候选的单独列表。
1)***继承的仿射候选到候选列表中
图5示出了仿射merge模式的候选位置的示例。
继承的仿射候选是指由用仿射模式编码的有效邻近重构块推导的候选。
如图5中所示,候选块的扫描顺序是A1,B1,B0,A0和B2。当选择块(例如,A1)时,应用两步过程:
a)首先,使用覆盖块的CU的三个角部运动矢量,以推导当前块的两个/三个控制点。
b)基于当前块的控制点,以推导当前块内的每个子块的子块运动。
2)***构建的仿射候选
如果仿射merge候选列表中的候选的数目少于MaxNumAffineCand,则构建的仿射候选被***到候选列表中。
构建的仿射候选是指通过组合每个控制点的邻近运动信息构建的候选。
首先从指定的空域邻域和时域邻域推导控制点的运动信息,如图5中所示。CPk(k=1,2,3,4)表示第k个控制点。A0,A1,A2,B0,B1,B2和B3是预测CPk(k=1,2,3)的空域位置;T是预测CP4的时域位置。
CP1,CP2,CP3和CP4的坐标分别是(0,0),(W,0),(H,0)和(W,H),其中W和H是当前块的宽度和高度。
每个控制点的运动信息根据以下优先级顺序获得:
-对于CP1,检查优先级是B2->B3->A2。如果B2可用则使用B2。否则,如果B2不可用,则使用B3。如果B2和B3都不可用,则使用A2。如果全部三个候选不可用,则CP1的运动信息无法获得。
-对于CP2,检查优先级是B1->B0;
-对于CP3,检查优先级是A1->A0;
-对于CP4,使用T。
其次,控制点的组合用于构建运动模型。
需要三个控制点的运动矢量来计算6参数仿射模型中的变换参数。可以从以下四个组合之一选择三个控制点:({CP1,CP2,CP4},{CP1,CP2,CP3},{CP2,CP3,CP4},{CP1,CP3,CP4})。例如,使用CP1,CP2和CP3控制点来构建6参数仿射运动模型,指代为仿射(CP1,CP2,CP3)。
需要两个控制点的运动矢量来计算4参数仿射模型中的变换参数。可以从以下六个组合之一选择两个控制点({CP1,CP4},{CP2,CP3},{CP1,CP2},{CP2,CP4},{CP1,CP3},{CP3,CP4})。例如,使用CP1和CP2控制点来构建4参数仿射运动模型,指代为仿射(CP1,CP2)。
构建的仿射候选的组合被以如下顺序***到候选列表中:
{CP1,CP2,CP3},{CP1,CP2,CP4},{CP1,CP3,CP4},{CP2,CP3,CP4},{CP1,CP2},{CP1,CP3},{CP2,CP3},{CP1,CP4},{CP2,CP4},{CP3,CP4}
3)***零运动矢量
如果仿射merge候选列表中的候选的数目少于MaxNumAffineCand,则将零运动矢量***到候选列表中,直到列表充满。
1.3 ATMVP(高级时域运动矢量预测)
在第10次JVET会议上,高级时域运动矢量预测(ATMVP)被包含在基准集(BMS)-1.0参考软件中,其基于来自时域邻近图片的共位(collocated)块的运动信息推导一个编码单元(CU)的子块的多个运动。虽然它提高了时域运动矢量预测的效率,但是对现有的ATMVP设计识别出以下复杂度问题:
如果使用多个参考图片,则不同ATMVP CU的共位图片可能不相同。这意味着需要取回多个参考图片的运动场。
每个ATMVP CU的运动信息总是基于4×4单元推导,导致对一个ATMVP CU内的每个4×4子块的运动推导和运动补偿的多次调用。
提出了对ATMVP的一些进一步简化,并且已经在VTM2.0中采用。
1.3.1使用一个固定共位图片的简化的共位块推导
在该方法中,提出了一种简化设计以使用与在HEVC中相同的共位图片,其在条带报头处信令通知,作为用于ATMVP推导的共位图片。在块级,如果邻近块的参考图片与该共位图片不同,则使用HEVC时域MV缩放方法来缩放块的MV,并且在ATMVP中使用缩放的MV。
指代用于取回共位图片Rcol中的运动场的运动矢量作为MVcol。为了最小化由于MV缩放引起的影响,用于推导MVcol的空域候选列表中的MV以如下方式选择:如果候选MV的参考图片是共位图片,则选择该MV并将其用作MVcol,而不使用任何缩放。否则,选择具有最接近共位图片的参考图片的MV以利用缩放来推导MVcol。
1.3.2自适应ATMVP子块大小
在该方法中,提出支持用于ATMVP运动推导的子块尺寸的条带级适配。具体地,在序列级信令通知用于ATMVP运动推导的一个默认子块尺寸。另外,在条带级信令通知一个标志以指示默认子块尺寸是否用于当前条带。如果该标志为伪,则在条带的条带报头中进一步信令通知对应的ATMVP子块尺寸。
1.4 STMVP(空时运动矢量预测)
STMVP在JEM中被提出并被采用,但尚未在VVC中被采用。在STMVP中,按照光栅扫描顺序递归地推导子CU的运动矢量。图6说明了这个概念。让我们考虑含有四个4×4子CU A,B,C和D的8×8CU。当前帧中的邻近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的运动矢量。
图6示出了具有四个子块(A-D)的一个CU及其邻近块(a-d)的示例。
2.问题
仿射模式的当前设计具有以下问题:
1:解码器必须访问与当前CU不相邻的4×4块的MV,例如图4B中的mv0 N和mv2 N。存储这些MV需要额外的片上存储器,这会大大增加芯片成本。
2:利用仿射merge模式,首先从仿射编码的邻近块的CP MV推导当前块的CP MV,然后从当前块的CP MV推导每个子块的MV。这个两步过程可能会丢失运动矢量的精度。
3:当为仿射merge模式构建单独的列表时,它可能包括全部种类的基于子块的运动候选。如何按顺序***它们是需要研究的问题。
4:对于AF_INTER模式,其遵循用于平移运动矢量预测的HEVC设计,其中可以仅使用2个MVP候选。然而,考虑到AF_INTER模式可能涉及用于MV差(MVD)信令通知的更多比特,增加AF_INTER的MVP候选列表尺寸可带来额外的编码增益。
3.示例性技术
我们公开了若干减少仿射模型继承所需存储器的方法。
以下详细发明应被视为解释一般构思的示例。不应以狭隘的方式解释这些发明。此外,这些发明可以以任何方式组合。本发明与其他发明的组合也是适用的。
技术1:复杂度降低
假设一帧被分割成多个不重叠的M×N(例如,CTU尺寸)区域。含有当前块的M×N区域的左上坐标表示为(x,y)。
1.在一个示例中,是否和如何从邻近块(CU或PU)继承仿射模型(即,使用其仿射运动来推导当前块的运动)取决于当前块与邻近块的位置关系和/或仿射模型(诸如4参数或6参数仿射模型)。
a.例如,是否和如何从邻近块继承仿射模型取决于整个邻近块和当前块是否在相同M×N区域中,诸如128×128区域、64×64区域或32×32区域。
i.替代地,如果当前块是用4参数仿射模型编码的,则是否和如何从邻近块继承仿射模型取决于邻近块的顶行和当前块是否在相同M×N区域中,诸如128×128区域、64×64区域或32×32区域。
ii.替代地,如果当前块是用6参数仿射模型编码的,则是否和如何从邻近块继承仿射模型取决于整个邻近块和当前块是否在相同M×N区域中,诸如128×128区域、64×64区域或32×32区域。
iii.例如,如果不与当前块在相同M×N区域中,则无法从邻近块继承仿射模型。
iv.例如,如果与当前块在相同M×N区域中,则可以以VVC中所描述的方式从邻近块继承仿射模型。
v.例如,如果与当前块不在相同M×N区域中,则可以以与VVC不同的方式从邻近块继承仿射模型。
b.例如,是否和如何从邻近块继承仿射模型取决于邻近块是在当前块左侧,还是在当前块上方,还是在当前块右上方,还是在当前块左下方,还是在当前块左上方。换言之,是否和如何从邻近块继承仿射模型取决于邻近块来自图4A中的“A”,“B”,“C”,“D”和“E”中的哪个。
i.例如,以一种方法从来自图4A中的“B”,“C”和“E”的邻近块继承仿射模型;并且以另一种方法从来自图4A中的“A”和“D”的邻近块继承仿射模型。
ii.例如,以一种方法从来自图4A中的“B”和“C”的邻近块继承仿射模型;并且以另一种方法从来自图4A中的“A”,“D”和“E”的邻近块继承仿射模型。
iii.含有来自图4A中的“E”的邻近块的M×N区域的左上坐标被指代为(x’,y’)。如果x不等于x’,则无法从来自“E”的邻近块继承仿射模型。
iv.含有来自图4A中的“C”的邻近块的M×N区域的左上坐标被指代为(x’,y’)。如果x不等于x’,则无法从来自“C”的邻近块继承仿射模型。
v.含有来自图4A中的“D”的邻近块的M×N区域的左上坐标被指代为(x’,y’)。如果y不等于y’,则无法从来自“D”的邻近块继承仿射模型。
2.可以通过由仿射编码的邻近块的左下MV和右下MV推导当前块的CP MV来进行仿射模型继承,如图7中所示。
a.在一个示例中,mv0 C=(mv0 Ch,mv0 Cv)和mv1 C=(mv1 Ch,mv1 Cv)由mv0 N=(mv0 Nh,mv0 Nv)和mv1 N=(mv1 Nh,mv1 Nv)推导如下:
其中w和w’分别是当前块的宽度和邻近块的宽度。(x0,y0)是当前块的左上角的坐标,并且(x’0,y’0)是邻近块的左下角的坐标。
替代地,此外,a和b计算过程中的除法运算可以由有或没有加法运算的移位替代。
b.例如,通过由来自图4A中的“B”和“C”的仿射编码的邻近块的左下MV和右下MV推导当前块的CP MV来进行仿射模型继承。
i.替代地,通过由来自图4A中的“B”,“C”和“E”的仿射编码的邻近块的左下MV和右下MV推导当前块的CP MV来进行仿射模型继承。
c.例如,仅当邻近块在含有当前块的M×N区域的上方(或右上,或左上)的M×N区域中,才通过由仿射编码的邻近块的左下MV和右下MV推导当前块的CP MV来进行仿射模型继承。
d.例如,y0=y’0。
i.替代地,y0=1+y’0。
e.例如,如果当前块通过由仿射编码的邻近块的左下MV和右下MV推导当前块的CPMV来继承仿射模型,则将当前块视为使用4参数仿射模型。图7通过由邻近块的两个底CP推导来仿射继承。
3.可以通过由仿射编码的邻近块的右上MV和右下MV推导当前块的CP MV进行仿射模型继承,如图8中所示。
a.例如,mv0 C=(mv0 Ch,mv0 Cv)和mv1 C=(mv1 Ch,mv1 Cv)可以由mv0 N=(mv0 Nh,mv0 Nv)和mv1 N=(mv1 Nh,mv1 Nv)推导如下:
其中h’是邻近块的高度。w是当前块的宽度。(x0,y0)是当前块的左上角的坐标,并且(x’0,y’0)是邻近块的右上角的坐标。
替代地,此外,a和b计算过程中的除法运算可以由有或没有加法运算的移位替代。
b.例如,通过由来自图4A中的中“A”和“D”的仿射编码的邻近块的右上MV和右下MV推导当前块的CP MV进行仿射模型继承。
i.替代地,通过由来自图4A中的“A”,“D”和“E”的仿射编码的邻近块的右上MV和右下MV推导当前块的CP MV进行仿射模型继承。
c.例如,仅当邻近块在含有当前块的M×N区域的左侧(或左上、或左下)的M×N区域中,才通过由仿射编码的邻近块的右上MV和右下MV推导当前块的CP MV进行仿射模型继承。
d.例如,x0=x’0。
i.替代地,x0=1+x’0。
e.例如,如果当前块通过由仿射编码的邻近块的右上MV和右下MV推导当前块的CPMV继承仿射模型,则将当前块视为使用4参数仿射模型。
技术2:仿射模式下的子块的运动矢量的推导
4.如果当前块不使用6参数仿射模型,则可以推导更多的CP MV并储存以用于运动矢量预测和/或滤波过程。
a.在一个示例中,储存的左下MV可以用于运动预测,包含之后编码的PU/CU的仿射模型继承。
b.在一个示例中,储存的左下MV可以用于随后的图片的运动预测中。
c.在一个示例中,储存的左下MV可以用于去块滤波过程。
d.如果仿射编码的块不使用6参数仿射模型,则为仿射编码的块推导左下角的CPMV并储存在左下MV单元中,其在VVC中是4×4。
i.左下角的CP MV(记为mv2=(mv2 h,mv2 v))对于4参数仿射模型推导如下
e.对于仿射编码块推导右下角的CP MV并储存在右下MV单元中,其在VVC中是4×4。储存的右下MV可以用于运动预测,包含用于之后编码的PU/CU的仿射模型继承,或随后的图片的运动预测或去块滤波过程。
i.右下角的CP MV(记为mv3=(mv3 h,mv3 v))对于4参数仿射模型推导如下
ii.右下角CP MV对于6参数仿射模型推导如下
iii.右下角的CP MV对于4参数仿射模型和6参数仿射模型两者推导如下
b.如果4参数模型中的mv2=(mv2 h,mv2 v)如(5)计算。图8通过由邻近块的两个右侧CP推导来仿射继承。
5.例如,在当前块用仿射merge模式而不是用两步过程编码时,从邻近块的CP MV直接推导每个子块的MV。
a.在一个示例中,子块的MV指代为(mvh(x,y),mvv(x,y)),其中(x,y)是子块的中心的坐标,如果邻近块是用4参数仿射模型编码的,则推导如下:
并且如果邻近块是用6参数仿射模型编码的,则推导如下:
(mvh 0,mvv 0)是邻近块的左上角控制点的运动矢量,(mvh 1,mvv 1)是邻近块的右上角控制点的运动矢量,并且(mvh 2,mvv 2)是邻近块的左下角控制点的运动矢量。w和h是邻近块的宽度和高度。(x0,y0)是邻近块的左上角的坐标。
b.在一个示例中,子块的MV指代为(mvh(x,y),mvv(x,y)),其中(x,y)是子块的中心的坐标,如果根据仿射编码的邻近块的左下MV和右下MV进行仿射模型继承,如图7所示,则推导如下。
(mvh 0,mvv 0)是邻近块的左下角控制点的运动矢量,(mvh 1,mvv 1)是邻近块的右下角控制点的运动矢量。w和h是邻近块的宽度和高度。(x0,y0)是邻近块的左下角的坐标。
c.在一个示例中,子块的MV指代为(mvh(x,y),mvv(x,y)),其中(x,y)是子块的中心的坐标,如果根据仿射编码的邻近块的右上MV和右下MV进行仿射模型继承,如图8所示,则推导如下:
(mvh 0,mvv 0)是邻近块的右上角控制点的运动矢量,(mvh 1,mvv 1)是邻近块的右下角控制点的运动矢量。w和h是邻近块的宽度和高度。(x0,y0)是邻近块的右上角的坐标。
技术3:子块运动候选列表的构建
6.当多个类型的子块运动候选(例如,ATMVP、STMVP、继承的仿射候选、构建的仿射候选)可以添加到一个候选列表时,***顺序可以自适应地改变。
a.在一个示例中,***顺序可以取决于当前/邻近块的编码信息。
i.在一个示例中,顺序可以取决于是否任何用于候选列表构建过程的邻近块是用仿射模式编码的。
ii.在一个示例中,顺序可以取决于有多少用于候选列表构建过程的邻近块是用仿射模式编码的。
b.在一个示例中,***顺序是继承的仿射候选、ATMVP、STMVP、构建的仿射候选及其他。当存在多于K(例如,K>=1)个用仿射模式编码的空域邻近块时,可以使用这样的顺序。
c.在一个示例中,***顺序是继承的仿射候选,构建的仿射候选,ATMVP,STMVP及其他。当存在多于K(例如,K>=1)个用仿射模式编码的空域邻近块时,可以使用这样的顺序。
d.在一个示例中,***顺序是ATMVP、STMVP、构建的仿射候选及其他。当不存在与这些空域邻近块相关联的仿射模式时,可以使用这样的顺序。
7.在一个示例中,构建的仿射候选可以仅包含参考相同参考图片的CPMV。不将缩放应用到构建仿射候选。
8.构建子块运动候选中可能涉及修剪过程。如果列表存在另一仿射merge候选被视为与之“相同”,则仿射merge候选不***到子块运动候选中。两个运动候选的比较过程称为修剪过程。假设一个候选的左上、右上和左下角处的三个CPMV是MV0=(MVx0,MVy0),MV1=(MVx1,MVy1),MV2=(MVx2,MVy2);另一候选的左上、右上和左下角处的三个CPMV是MV’0=(MV’x0,MV’y0),MV’1=(MV’x1,MV’y1),MV’2=(MV’x2,MV’y2)。
a.在一个示例中,通过比较它们的CPMV判定两个仿射merge候选是否相同。如果满足以下,则两个候选被认为“相同”
i.MVx0==MV’x0且MVy0==MV’y0且MVx1==MV’x1且MVy1==MV’y1;
ii.MVx0==MV’x0且MVy0==MV’y0且MVx1==MV’x1且MVy1==MV’y1且MVx2==MV’x2且MVy2==MV’y2;
iii.|MVx0-MV’x0|<D且|MVy0-MV’y0|<E且|MVx1-MV’x1|<D且|MVy1-MV’y1|<E;
iv.|MVx0-MV’x0|<D且|MVy0-MV’y0|<E且|MVx1-MV’x1|<D且|MVy1-MV’y1|<E且|MVx2-MV’x2|<D且|MVy2-MV’y2|<E
v.D可以等于E。
vi.在一个示例中,阈值D和/或E是固定数,诸如1或4;
vii.在另一个示例中,阈值D和/或E是自适应的。
1.例如,D和/或E取决于当前块的尺寸。
2.在一个示例中,当宽度和/或高度更大时,D和/或E更大。
在另一个示例中,当宽度和/或高度更大时,D和/或E更小。
3.替代地,此外,不同阈值可以用于不同MV差比较。
b.在一个示例中,通过比较CPMV和CPMV的差来判定两个仿射merge候选是否相同。假设
Diffx1=MVx1-MVx0,Diffy1=MVy1-MVy0,Diffx2=MVx2-MVx0,Diffy2=MVy2-MVy0,Diff’x1=MV’x1-MV’x0,Diff’y1=MV’y1-MV’y0,Diff’x2=MV’x2-MV’x0,Diff’y2=MV’y2-MV’y0。如果满足以下,则候选被认为“相同”
i.MVx0==MV’x0且MVy0==MV’y0且Diffx1==Diff’x1且Diffy1==Diff’y1;
ii.MVx0==MV’x0且MVy0==MV’y0且Diffx1==Diff’x1且Diffy1==Diff’y1且Diffx2==Diff’x2且Diffy2==Diff’y2;
iii.|MVx0-MV’x0|<D且|MVy0-MV’y0|<E且|Diffx1-Diff’x1|<F且|Diffy1-Diff’y1|<G;
iv.|MVx0-MV’x0|<D且|MVy0-MV’y0|<E且|Diffx1-Diff’x1|<F且|Diffy1-Diff’y1|<G且|Diffx2-Diff’x2|<F且|Diffy2-Diff’y2|<G;
v.D可以等于E。F可以等于G。
vi.在一个示例中,阈值D或E或F或G是固定数,诸如1或4;
vii.在另一个示例中,阈值D和/或E和/或F和/或G是自适应的。
1.例如,D和/或E取决于当前块的尺寸。
2.在一个示例中,当宽度和/或高度更大时,D和/或E更大。在另一个示例中,当宽度和/或高度更大时,D和/或E更小。
3.例如,F和/或G取决于当前块的尺寸。
4.在一个示例中,当宽度和/或高度更大时,F和/或G更大。在另一个示例中,当宽度和/或高度更大时,F和/或G更小。
viii.替代地,此外,不同阈值可以用于不同MV差比较。
c.替代地,修剪过程可以还取决于仿射运动模型,例如,4参数或6参数。
i.在一个示例中,对于4参数,可以应用标题a.i.或标题a.iii.或标题b.i.或标题b.iii。
ii.在一个示例中,对于6参数,可以应用标题a.ii.或标题a.iv.或标题b.ii.或标题b.iv.。
9.当多个类型的子块运动候选(例如,ATMVP、STMVP、继承的仿射候选、构建的仿射候选、)可以添加到一个候选列表时,对候选列表的每个索引可以对应于一个特定类型。
a.在一个示例中,等于S(S>=0)的索引可以总是对应于ATMVP候选。
b.在一个示例中,等于P(P>=0)的索引可以总是对应于ATMVP候选。
c.在一个示例中,等于Q(Q>=0)的索引可以总是对应于仿射候选。
d.整数S/P/Q可以在SPS/PPS/条带报头/CTU/CU中从编码器信令通知到解码器。
e.整数S/P/Q可以取决于当前块尺寸、空域/时域邻近块的块尺寸以及空域/时域邻近块的编码模式。
10.当在***如ATMVP、STMVP、继承的仿射候选的若干候选之后而merge列表未满时,新的子块运动候选可以进一步添加,并且如何添加它们可以取决于编码信息和/或目前的merge列表中的可用运动候选的数目。
a.在一个示例中,当继承的仿射候选在merge列表中可用时,可以添加构建的仿射候选。
b.在一个示例中,当继承的仿射候选在merge列表中不可用时,更多的ATMVP和/或STMVP候选可以被***。
技术4:仿射帧间模式MVP候选列表
11.仿射帧间模式和非仿射帧间模式的MVP候选列表的尺寸可以是不同的。
a.在一个示例中,仿射帧间模式的MVP候选列表的尺寸大于非仿射帧间模式的MVP候选列表的尺寸。例如,仿射帧间模式的MVP候选列表的尺寸是3或4,但非仿射帧间模式的MVP候选列表的尺寸是2。
b.在一个示例中,仿射帧间模式的MVP候选列表的尺寸可以是自适应的。
i.例如,仿射帧间模式的MVP候选列表的尺寸取决于仿射编码的邻近块的数目。当存在更多仿射编码的邻近块时尺寸更大。
4.实施例示例
本章节公开了提出的技术的实施例的示例。应注意,其仅为所提出的方法的全部可能实施例中的一种,并且不应以狭隘方式理解。
输入:
当前块的左上角的坐标,记为(posCurX,posCurY);
邻近块的左上角的坐标,记为(posLTX,posLTY);
邻近块的右上角的坐标,记为(posRTX,posRTY);
邻近块的左下角的坐标,记为(posLBX,posLBY);
邻近块的右下角的坐标,记为(posRBX,posRBY);
当前块的宽度和高度,记为W和H;
邻近块的宽度和高度,记为W’和H’;
邻近块的左上角处的MV,记为(mvLTX,mvLTY);
邻近块的右上角处的MV,记为(mvRTX,mvRTY);
邻近块的左下角处的MV,记为(mvLBX,mvLBY);
邻近块的右下角处的MV,记为(mvRBX,mvRBY);
常数:移位,其可以为任意正整数,诸如7或8。
输出:
当前块的左上角处的MV,记为(MV0X,MV0Y);
当前块的右上角处的的MV,记为(MV1X,MV1Y);
仿射模型继承的过程:
图9是示出可用于实现本公开技术的各部分的计算机***或其他控制装置2600的架构的示例的框图。在图9中,计算机***2600包含经由互连2625连接的一个或多个处理器2605和存储器2610。互连2625可以表示由适当的桥接器、适配器或控制器连接的任何一个或多个单独的物理总线、点对点连接或两者。因此,互连2625可以包含例如***总线、***组件互连(PCI)总线、HyperTransport或行业标准架构(ISA)总线、小型计算机***接口(SCSI)总线、通用串行总线(USB)、IIC(I2C)总线或电气和电子工程师协会(IEEE)标准674总线,有时也称为“Firewire”。
(多个)处理器2605可以包含中央处理单元(CPU),以控制例如主机计算机的整体操作。在某些实施例中,(多个)处理器2605通过执行存储在存储器2610中的软件或固件来实现此目的。(多个)处理器2605可以是或可包含一个或多个可编程通用或专用微处理器、数字信号处理器(DSP)、可编程控制器、应用专用集成电路(ASIC)、可编程逻辑器件(PLD)等,或这些器件的组合。
存储器2610可以是或包含计算机***的主存储器。存储器2610表示任何合适形式的随机存取存储器(RAM)、只读存储器(ROM)、闪存等,或这些设备的组合。在使用中,除其他之外,存储器2610可以包含一组机器指令,当由处理器2605执行时,使得处理器2605执行操作以实现本公开技术的实施例。
还通过互连2625连接到(多个)处理器2605的是(可选的)网络适配器2615。网络适配器2615向计算机***2600提供与远程设备(例如存储客户端)和/或其他存储服务器通信的能力,并且可以是例如以太网适配器或光纤信道适配器。
图10示出了可用于实现本公开技术的各部分的移动装置2700的示例实施例的框图。移动装置2700可以是膝上型电脑,智能电话,平板电脑,摄录机或能够处理视频的其他类型的设备。移动装置2700包含用于处理数据的处理器或控制器2701,以及与处理器2701通信以存储和/或缓冲数据的存储器2702。例如,处理器2701可以包含中央处理单元(CPU)或微控制器单元(MCU)。在一些实现方式中,处理器2701可以包含现场可编程门阵列(FPGA)。在一些实现方式中,移动装置2700包含用于智能手机装置的各种视觉和/或通信数据处理功能的图形处理单元(GPU)、视频处理单元(VPU)和/或无线通信单元或与之通信。例如,存储器2702可以包含并存储处理器可执行代码,当由处理器2701执行时,将移动装置2700配置为执行各种操作,例如接收信息、命令和/或数据,处理信息和数据,以及将处理过的信息/数据发送或提供给另一个设备,例如致动器或外部显示器。为了支持移动装置2700的各种功能,存储器2702可以存储信息和数据,例如指令、软件、值、图像以及由处理器2701处理或引用的其他数据。例如,各种类型的随机存取存储器(RAM)设备、只读存储器(ROM)设备、闪存设备和其他合适的存储介质可用于实现存储器2702的存储功能。在一些实现方式中,移动装置2700包含输入/输出(I/O))单元2703,用于将处理器2701和/或存储器2702连接到其他模块、单元或装置。例如,I/O单元2703可以与处理器2701和存储器2702相接,以利用与典型数据通信标准兼容的各种类型的无线接口,例如,在云中的一个或多个计算机与用户设备之间。在一些实现方式中,移动装置2700可以经由I/O单元2703使用有线连接与其他设备接口。移动装置2700还可以与其他外部接口(例如数据存储器)和/或视觉或音频显示设备2704相接,以检索和传输可由处理器处理、存储在存储器中或在显示设备2704的输出单元或外部装置上展示的数据和信息。例如,显示设备2704可以显示基于根据所公开的技术的MVP修改的视频帧。
图11是一种视频处理的方法1100的流程图表示。方法1100包含确定(1102)要应用于在视频帧中以仿射模式编码的当前块的仿射模式类型,其中当前块被划分为多个子块;以及基于仿射模式类型推导(1104)多个子块中的每一个的运动信息。在一示例中,推导并存储特定位置处的至少一个控制点(CP)运动矢量(MV),以用于预测要随后处理的其他块。
图12是一种视频处理的方法1200的流程图表示。方法1200包含确定(1202)要应用于视频帧中以仿射模式编码的当前块的仿射模式类型,其中当前块被划分为多个子块;以及基于所确定的当前块的仿射模式类型,在无需当前块的CP MV的情况下,从邻近块的控制点(CP)MV直接推导(1204)多个子块中的每一个的运动矢量(MV)。
在技术1章节中描述了邻域条件的各种示例。
例如,在一些实施例中,邻域条件对应于邻近块的尺寸或位置。邻近块可以是CU或PU。
在一些实施例中,邻域条件指定从在当前块的特定方向上的邻近块继承仿射运动预测,其中特定方向包含左、上、右上、左上或右下中的至少之一。
在一些实施例中,从仿射编码的邻近块的右上和右下运动矢量推导当前块的控制点(CP)运动矢量。在一些实施例中,当前块不使用6参数仿射模型,并且其中推导控制点运动矢量包含使用先前推导和存储的运动矢量。在一些实施例中,从一个或多个邻近块的控制点运动矢量推导当前块的子块的运动矢量。
参考上述方法,比特流表示和视频块之间的转换可以包含,在编码期间,从(未压缩的)视频块生成比特流表示,并且在解码期间,从其比特流表示生成视频块。
在另一示例性方面,公开了一种视觉媒体处理方法。该方法包含使用视频块的子块运动候选的候选列表在视频块与其比特流表示之间进行转换。候选列表中的运动候选的***顺序取决于视频块的邻近块或视频块的编码信息。
在一些实施例中,***顺序取决于邻近块的仿射编码状态。在一些实施例中,***顺序以继承的仿射候选运动矢量开始。替代地,其可能是***顺序中的最后一个条目。在一些实施例中,候选列表包含控制点运动矢量,其仅参考与视频块相同的参考图片。在一些实施例中,可以对子块运动矢量应用修剪。参考技术2章节描述了该方法的附加实现方式示例。
在一些实施例中,仿射MVP候选列表大于非仿射MVP候选列表。在一些实施例中,仿射MVP候选列表小于非仿射MVP候选列表。在一些实施例中,仿射MVP候选列表具有根据邻近仿射编码块的数目而适应的尺寸。技术3章节中描述了实施例的附加示例。
本文档中公开的各种实施例和技术可以在以下示例的列表中描述。
1.一种视频处理的方法,包括:确定要应用到视频帧中的以仿射模式编码的当前块的仿射模式类型,其中所述当前块被划分为多个子块;以及基于所述仿射模式类型为所述多个子块中的每一个推导运动信息。在一示例中,推导和储存特定位置处的至少一个控制点(CP)运动矢量(MV),以预测要随后处理的其他块。
2.如示例1所述的方法,其中所述当前块的特定位置包括当前块的左下角和右下角中的至少一个。
3.如示例2所述的方法,还包括:
如果所述当前块不使用6参数仿射模型,则推导所述当前块的左下角处的CP MV。
4.如示例2或3所述的方法,其中所述当前块的特定位置处的CP MV进一步用于要随后处理的其他帧的预测或去块滤波过程。
5.如示例1或4所述的方法,其中预测所述其他块或其他帧包括使用仿射模型继承。
6.如示例2或3所述的方法,其中所述当前块的左下角处的CP MV储存在具有4×4的尺寸的左下MV单元中。
7.如示例6所述的方法,其中所述当前块的左下角处的CP MV(mv2 h,mv2 v)对4参数仿射模型推导如下
其中(mvh 0,mvv 0)是所述当前块的左上角处的CP MV,并且(mvh 1,mvv 1)是所述当前块的右上角处的CP MV。
8.如示例2所述的方法,其中所述当前块的右下角处的CP MV储存在具有4×4尺寸的右下MV单元中。
9.如示例8所述的方法,其中所述当前块的右下角处的CP MV(mv3 h,mv3 v)对4参数仿射模型推导如下
其中(mvh 0,mvv 0)是所述当前块的左上角处的CP MV,并且(mvh 1,mvv 1)是所述当前块的右上角处的CP MV。
10.如示例8所述的方法,其中所述当前块的右下角处的CP MV(mv3 h,mv3 v)对所述6参数仿射模型推导如下
其中(mvh 0,mvv 0)是所述当前块的左上角处的CP MV,(mvh 1,mvv 1)是所述当前块的右上角处的CP MV,并且(mv2 h,mv2 v)是所述当前块的左下角处的CP MV。
11.如示例8所述的方法,其中
如果mv2=(mv2 h,mv2 v)是从
则所述当前块的右下角处的CP MV(mv3 h,mv3 v)对4参数仿射模型和所述6参数仿射模型两者推导如下
其中(mvh 0,mvv 0)是所述当前块的左上角处的CP MV,并且(mvh 1,mvv 1)是所述当前块的右上角处的CP MV。
12.一种视频处理的方法,包括:
确定要应用于视频帧中的以仿射模式编码的当前块的仿射模式类型,
其中所述当前块被划分为多个子块;以及
基于所确定的所述当前块的仿射模式类型,在无需所述当前块的CP MV的情况下,由所述邻近块的控制点(CP)MV直接推导所述多个子块中的每一个的运动矢量(MV)。
13.如示例12所述的方法,其中所述仿射模式类型是仿射merge模式。
14.如示例13所述的方法,其中如果所述邻近块是用所述4参数仿射模型编码的,则所述多个子块中的每一个的MV推导如下
或者,如果所述邻近块是用所述6参数仿射模型编码的,则推导如下
其中(mvh(x,y),mvv(x,y))表示所述子块的MV,(x,y)是所述子块的中心的坐标,(mvh 0,mvv 0)表示所述邻近块的左上角处的CP MV,(mvh 1,mvv 1)表示所述邻近块的右上角处的CP MV,并且(mvh 2,mvv 2)表示所述邻近块的左下角处的CP MV,w和h是所述邻近块的宽度和高度,(x0,y0)是所述邻近块的左上角的坐标。
15.如示例13所述的方法,其中所述邻近块位于所述当前块上方,并且根据所述仿射编码的邻近块的左下角处的CP MV和右下角处的CP MV进行所述多个子块中的每一个的仿射模型继承。
16.如示例15所述的方法,其中所述多个子块中的每一个的MV推导如下
其中(mvh(x,y),mvv(x,y))表示所述子块的MV,(x,y)是所述子块的中心的坐标,(mvh 0,mvv 0)是所述邻近块的左下角处的CP MV,(mvh 1,mvh 1)是所述邻近块的右下角处的CPMV,w是所述邻近块的宽度,(x0,y0)是所述邻近块的左下角的坐标。
17.如示例13所述的方法,其中所述邻近块位于所述当前块的左侧,并且根据所述仿射编码的邻近块的右上角处的CP MV和右下角处的CP MV进行所述多个子块中的每一个的仿射模型继承。
18.如示例17所述的方法,其中所述多个子块中的每一个的MV推导如下
其中(mvh(x,y),mvv(x,y))表示所述子块的MV,(x,y)是所述子块的中心的坐标,(mvh 0,mvv 0)是所述邻近块的右上角处的CP MV,(mvh 1,mvv 1)是所述邻近块的右下角的CP MV,h是所述邻近块的高度,(x0,y0)是所述邻近块的右上角的坐标。
19.如示例1-18中任一项所述的方法,其中所述视频处理包括将所述视频块编码为所述视频块的比特流表示和从所述视频块的比特流表示解码所述视频块中的至少之一。
20.一种视频***中的设备,包括处理器和其上储存有指令的非瞬态存储器,其中由所述处理器执行所述指令时,使所述处理器实现示例1至19中的任一项中所列举的方法。
21.一种计算机程序产品,储存在非瞬态计算机可读介质上,所述计算机程序产品包含用于执行示例1至19中任一项所列举的方法的程序代码。
本文档中描述的公开的和其他实施例、模块和功能操作可以实现为数字电子电路,或者实现为计算机软件、固件或硬件,包含本文档中公开的结构及其结构等同,或者它们中的一个或多个的组合。所公开的和其他实施例可以实现为一个或多个计算机程序产品,即,在计算机可读介质上编码的计算机程序指令的一个或多个模块,用于由数据处理设备执行或控制数据处理设备的操作。计算机可读介质可以是机器可读存储装置、机器可读存储基板、存储器装置、实现机器可读传播信号的物质组合,或者它们中的一个或多个的组合。术语“数据处理设备”涵盖用于处理数据的全部设备、装置和机器,包括例如可编程处理器、计算机或多个处理器或计算机。除了硬件之外,该设备还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理***、操作***的代码,或者它们中的一个或多个的组合。传播信号是人工生成的信号,例如,机器生成的电、光或电磁信号,其被生成以对信息进行编码以便传输到合适的接收器设备。
计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言编写,包括编译或解释语言,并且可以以任何形式部署,包括如独立程序或适合在计算环境中使用的模块、组件、子例程或其他单元。计算机程序不一定对应于文件***中的文件。程序可以存储在包含其他程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本),存储在专用于所讨论的程序的单个文件中,或者存储在多个协调文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。可以部署计算机程序以在一个计算机上或在位于一个站点上或分布在多个站点上并通过通信网络互连的多个计算机上执行。
本文档中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程处理器执行,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路(例如FPGA(现场可编程门阵列)或ASIC(应用专用集成电路))执行,并且设备也可以实现为专用逻辑电路(例如FPGA(现场可编程门阵列)或ASIC(专用集成电路))。
作为示例,适合于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括一个或多个大容量存储设备或可操作地耦接到一个或多个大容量存储设备,以从一个或多个大容量存储设备接收数据或将数据传输到一个或多个大容量存储设备或两者,例如,磁盘、磁光盘或光盘。然而,计算机不一定需要这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括全部形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如,内部硬盘或可移动磁盘;磁光盘;和CD ROM和DVD-ROM磁盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。
虽然本专利文档包含许多细节,但这些细节不应被解释为对任何发明或可要求保护的范围的限制,而是作为特定于特定发明的特定实施例的特征的描述。在本专利文件中单独的实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合在多个实施例中实现。此外,尽管上面的特征可以描述为以某些组合起作用并且甚至最初如此要求保护,但是在某些情况下可以从组合中移除来自所要求保护的组合的一个或多个特征,并且所要求保护的组合可以针对子组合或子组合的变化。
类似地,虽然在附图中以特定顺序描绘了操作,但是这不应该被理解为实现期望的结果要求以所示的特定顺序或按顺序执行这样的操作,或者执行全部示出的操作。此外,在本专利文件中描述的实施例中的各种***部件的分离不应被理解为在全部实施例中都需要这种分离。
仅描述了几个实现方式和示例,并且可以基于本专利文档中描述和示出的内容来做出其他实现、增强和变化。
Claims (12)
1.一种用于视频处理的方法,包括:
确定要应用到视频帧中的以仿射模式编码的当前块的仿射模式类型,其中所述当前块被划分为多个子块;以及
基于所述仿射模式类型为所述多个子块中的每一个推导运动信息,
其中推导和储存特定位置处的至少一个控制点的运动矢量以预测要随后处理的其他块;
所述方法还包括:
使用4参数仿射模型推导所述当前块的左下角处的控制点的运动矢量;
根据从所述4参数仿射模型推导得到的所述当前块的左下角处的控制点的运动矢量、所述当前块的左上角处的控制点的运动矢量和所述当前块的右上角处的控制点的运动矢量,使用所述4参数仿射模型或6参数仿射模型推导所述当前块的右下角处的控制点的运动矢量。
2.如权利要求1所述的方法,其中所述当前块的特定位置包括当前块的左下角和右下角中的至少一个。
3.如权利要求2所述的方法,还包括:
如果所述当前块不使用所述6参数仿射模型,则推导所述当前块的左下角处的控制点的运动矢量。
4.如权利要求2或3所述的方法,其中所述当前块的特定位置处的控制点的运动矢量进一步用于要随后处理的其他帧的预测或去块滤波过程。
5.如权利要求1所述的方法,其中预测所述其他块或其他帧包括使用仿射模型继承。
6.如权利要求2或3所述的方法,其中所述当前块的左下角处的控制点的运动矢量储存在具有4×4的尺寸的左下运动矢量单元中。
8.如权利要求2所述的方法,其中所述当前块的右下角处的控制点的运动矢量储存在具有4×4尺寸的右下运动矢量单元中。
12.一种视频***中的设备,包括处理器和其上储存有指令的非瞬态存储器,其中由所述处理器执行所述指令时,使所述处理器实现权利要求1至11中的任一项中所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2018107169 | 2018-09-23 | ||
CNPCT/CN2018/107169 | 2018-09-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110944182A CN110944182A (zh) | 2020-03-31 |
CN110944182B true CN110944182B (zh) | 2023-06-09 |
Family
ID=68069841
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910901097.6A Active CN110944182B (zh) | 2018-09-23 | 2019-09-23 | 仿射模式中的子块的运动矢量推导 |
CN201910901089.1A Active CN110944192B (zh) | 2018-09-23 | 2019-09-23 | 运动候选列表的构建 |
CN201910901074.5A Active CN110944208B (zh) | 2018-09-23 | 2019-09-23 | 仿射模式的复杂度降低 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910901089.1A Active CN110944192B (zh) | 2018-09-23 | 2019-09-23 | 运动候选列表的构建 |
CN201910901074.5A Active CN110944208B (zh) | 2018-09-23 | 2019-09-23 | 仿射模式的复杂度降低 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210211713A1 (zh) |
CN (3) | CN110944182B (zh) |
TW (2) | TWI831838B (zh) |
WO (3) | WO2020058959A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116708820A (zh) | 2018-08-09 | 2023-09-05 | Lg电子株式会社 | 图像编解码方法、存储介质和数据发送方法 |
EP3954119A4 (en) | 2019-05-21 | 2022-06-22 | Beijing Bytedance Network Technology Co., Ltd. | SYNTAX SIGNALING IN A SUBBLOCK MERGE MODE |
WO2021027774A1 (en) | 2019-08-10 | 2021-02-18 | Beijing Bytedance Network Technology Co., Ltd. | Subpicture dependent signaling in video bitstreams |
CN114631317B (zh) | 2019-10-18 | 2024-03-15 | 北京字节跳动网络技术有限公司 | 子图片的参数集信令中的语法约束 |
CN111726555B (zh) * | 2020-06-04 | 2021-11-23 | 上海顺久电子科技有限公司 | 一种显示设备及运动估计方法、视频处理方法 |
CN112291565B (zh) * | 2020-09-10 | 2021-09-14 | 浙江大华技术股份有限公司 | 视频编码方法及其相关装置 |
CN118383031A (zh) * | 2021-09-28 | 2024-07-23 | 抖音视界有限公司 | 用于视频处理的方法、装置和介质 |
WO2023055138A1 (ko) * | 2021-09-29 | 2023-04-06 | 엘지전자 주식회사 | 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105163116A (zh) * | 2015-08-29 | 2015-12-16 | 华为技术有限公司 | 图像预测的方法及设备 |
US20180192069A1 (en) * | 2016-12-29 | 2018-07-05 | Qualcomm Incorporated | Motion vector generation for affine motion model for video coding |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8913660B2 (en) * | 2005-04-14 | 2014-12-16 | Fastvdo, Llc | Device and method for fast block-matching motion estimation in video encoders |
GB2561507B (en) * | 2016-01-07 | 2021-12-22 | Mediatek Inc | Method and apparatus for affine merge mode prediction for video coding system |
US10560718B2 (en) * | 2016-05-13 | 2020-02-11 | Qualcomm Incorporated | Merge candidates for motion vector prediction for video coding |
US10448010B2 (en) * | 2016-10-05 | 2019-10-15 | Qualcomm Incorporated | Motion vector prediction for affine motion models in video coding |
US11140398B2 (en) * | 2018-08-20 | 2021-10-05 | Mediatek Inc. | Methods and apparatus for generating affine candidates |
US10944984B2 (en) * | 2018-08-28 | 2021-03-09 | Qualcomm Incorporated | Affine motion prediction |
-
2019
- 2019-09-23 CN CN201910901097.6A patent/CN110944182B/zh active Active
- 2019-09-23 TW TW108134302A patent/TWI831838B/zh active
- 2019-09-23 WO PCT/IB2019/058032 patent/WO2020058959A1/en active Application Filing
- 2019-09-23 CN CN201910901089.1A patent/CN110944192B/zh active Active
- 2019-09-23 WO PCT/IB2019/058033 patent/WO2020058960A1/en active Application Filing
- 2019-09-23 TW TW108134303A patent/TWI832904B/zh active
- 2019-09-23 CN CN201910901074.5A patent/CN110944208B/zh active Active
- 2019-09-23 WO PCT/IB2019/058031 patent/WO2020058958A1/en active Application Filing
-
2021
- 2021-03-23 US US17/209,382 patent/US20210211713A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105163116A (zh) * | 2015-08-29 | 2015-12-16 | 华为技术有限公司 | 图像预测的方法及设备 |
US20180192069A1 (en) * | 2016-12-29 | 2018-07-05 | Qualcomm Incorporated | Motion vector generation for affine motion model for video coding |
Also Published As
Publication number | Publication date |
---|---|
US20210211713A1 (en) | 2021-07-08 |
WO2020058960A1 (en) | 2020-03-26 |
TW202017380A (zh) | 2020-05-01 |
CN110944208A (zh) | 2020-03-31 |
TW202019184A (zh) | 2020-05-16 |
TW202025754A (zh) | 2020-07-01 |
CN110944192A (zh) | 2020-03-31 |
WO2020058958A1 (en) | 2020-03-26 |
TWI832904B (zh) | 2024-02-21 |
TWI831838B (zh) | 2024-02-11 |
CN110944182A (zh) | 2020-03-31 |
WO2020058959A1 (en) | 2020-03-26 |
CN110944192B (zh) | 2023-08-11 |
CN110944208B (zh) | 2023-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110944182B (zh) | 仿射模式中的子块的运动矢量推导 | |
CN110944204B (zh) | 简化的空时运动矢量预测 | |
CN110944207B (zh) | 仿射模型的表示 | |
CN111083487B (zh) | 仿射模式的运动信息的存储 | |
US11825074B2 (en) | Generation and usage of combined affine merge candidate | |
US11805259B2 (en) | Non-affine blocks predicted from affine motion | |
CN110958457B (zh) | 模式依赖的仿射继承 | |
TWI840413B (zh) | 仿射模式中的子塊的運動矢量推導 | |
CN111083485B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |