CN110944204B - 简化的空时运动矢量预测 - Google Patents
简化的空时运动矢量预测 Download PDFInfo
- Publication number
- CN110944204B CN110944204B CN201910900356.3A CN201910900356A CN110944204B CN 110944204 B CN110944204 B CN 110944204B CN 201910900356 A CN201910900356 A CN 201910900356A CN 110944204 B CN110944204 B CN 110944204B
- Authority
- CN
- China
- Prior art keywords
- mvlx
- motion
- block
- current block
- neighboring
- 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/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
-
- 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/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- 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/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection 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
-
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- 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
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- 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/537—Motion estimation other than block-based
- H04N19/54—Motion estimation other than block-based using feature points or meshes
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Auxiliary Devices For Music (AREA)
- Ultra Sonic Daignosis Equipment (AREA)
- Control Of Ac Motors In General (AREA)
- Transmitters (AREA)
- Control Of Amplification And Gain Control (AREA)
Abstract
提出了一种简化的空时运动矢量预测,涉及一种视频处理的方法,该方法包括:对于图片中的当前块,通过访问与同一组邻近块相关联的运动信息生成一组运动候选,该同一组邻近块中每一个都被确定为位于特定位置,该组运动候选包括子块空时运动矢量预测(STMVP)和非子块STMVP中的至少一个;基于该组运动候选计算当前块的运动信息或运动预测;以及使用当前块的运动信息或运动预测执行当前块和当前块的比特流表示之间的转换。
Description
相关申请的交叉引用
根据适用的专利法和/或巴黎公约的规则,本申请旨在及时要求2018年9月23日提交的国际专利申请第PCT/CN2018/107166号的优先权和利益。国际专利申请第PCT/CN2018/107166号的全部公开内容通过引用结合于此作为本申请公开内容的一部分。
技术领域
本专利文档涉及视频编码技术、设备和系统。
背景技术
运动补偿(Motion compensation,MC)是视频处理的一种技术,通过考虑相机和/或视频中对象的运动,在给定先前和/或未来帧的情况下,预测视频中的帧。运动补偿可以被用于视频数据的编码以进行视频压缩。
发明内容
该文档公开了与在视频编码和解码中使用仿射运动补偿相关的方法、系统和设备。
在一个示例方面,公开了一种视频处理的方法,该方法包括:对于图片中的当前块,通过访问与同一组邻近块相关联的运动信息生成一组运动候选,该同一组邻近块中每一个都被确定为位于特定位置,该组运动候选包括子块空时运动矢量预测((spatialtemporal motion vector prediction,STMVP)和非子块STMVP中的至少一个;基于该组运动候选计算当前块的运动信息或运动预测;以及使用当前块的运动信息或运动预测执行当前块和当前块的比特流表示之间的转换。
在又一代表性方面,公开了一种视频处理装置。该装置包括处理器,该处理器被配置为实施本文描述的方法。
在又一代表性方面,本文描述的各种技术可以体现为存储在非暂时性计算机可读介质上的计算机程序产品。该计算机程序产品包括用于执行本文描述的方法的程序代码。
在另一示例方面,视频编码器装置包括处理器和视频处理电路,被配置为实施视频编码方法。
在又一代表性方面,视频解码器装置可以实施本文描述的方法。
在又一方面,所描述的方法可以以处理器可执行代码的形式体现,并存储在计算机可读介质上。
一个或多个实施方式的细节在下面所附的权利要求、附图和描述中阐述。从说明书和附图以及权利要求书中,其他特征将是明显的。
附图说明
图1示出了基于子块的预测计算的示例。
图2A-图2B示出了简化的仿射运动模型:(a)4-参数仿射模型;(b)6-参数仿射模型。
图3示出了每一子块的仿射运动矢量场(affine motion vector field,MVF)的示例。
图4A-图4B示出了AF_MERGE模式的候选。
图5示出了仿射merge模式的示例候选位置。
图6示出了具有四个子块(A-D)及其邻近块(a-d)的编码单元(Coding Unit,CU)的示例。
图7示出了基于子块的空时merge模式实施方式的示例。
图8示出了平面运动矢量预测过程的示例。
图9是示出可以用于实施本公开的技术的各个部分的计算机系统或其他控制设备的体系结构的示例的框图。
图10示出了可以用于实施本公开的技术的各个部分的移动设备的示例实施例的框图。
图11是视觉媒体处理的示例方法的流程图。
具体实施方式
本文档提供了若干种可以体现在数字视频编码器和解码器中的技术。为了理解清楚,在本文档中使用了章节标题,并且不将每个章节中公开的技术和实施例的范围仅限制于该章节。
在本文档中,术语“视频处理”可以指视频编码、视频解码、视频压缩或视频解压缩。例如,视频压缩算法可以在从视频的像素表示到对应的比特流表示的转换期间应用,反之亦然。
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中。
2.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推导其运动信息。
2.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,则将零运动矢量插入到候选列表中,直到列表充满。
2.3 ATMVP(高级时域运动矢量预测)
在第10次JVET会议上,高级时域运动矢量预测(ATMVP)被包含在基准集(BMS)-1.0参考软件中,其基于来自时域邻近图片的共位(collocated)块的运动信息推导一个编码单元(CU)的子块的多个运动。虽然它提高了时域运动矢量预测的效率,但是对现有的ATMVP设计识别出以下复杂度问题:
如果使用多个参考图片,则不同ATMVP CU的共位图片可能不相同。这意味着需要取回多个参考图片的运动场。
每个ATMVP CU的运动信息总是基于4×4单元推导,导致对一个ATMVP CU内的每个4×4子块的运动推导和运动补偿的多次调用。
提出了对ATMVP的一些进一步简化,并且已经在VTM2.0中采用。
2.3.1使用一个固定共位图片的简化的共位块推导
在该方法中,提出了一种简化设计以使用与在HEVC中相同的共位图片,其在条带报头处信令通知,作为用于ATMVP推导的共位图片。在块级,如果邻近块的参考图片与该共位图片不同,则使用HEVC时域MV缩放方法来缩放块的MV,并且在ATMVP中使用缩放的MV。
指代用于取回共位图片Rcol中的运动场的运动矢量作为MVcol。为了最小化由于MV缩放引起的影响,用于推导MVcol的空域候选列表中的MV以如下方式选择:如果候选MV的参考图片是共位图片,则选择该MV并将其用作MVcol,而不使用任何缩放。否则,选择具有最接近共位图片的参考图片的MV以利用缩放来推导MVcol。
2.3.2自适应ATMVP子块大小
在该方法中,提出支持用于ATMVP运动推导的子块尺寸的条带级适配。具体地,在序列级信令通知用于ATMVP运动推导的一个默认子块尺寸。另外,在条带级信令通知一个标志以指示默认子块尺寸是否用于当前条带。如果该标志为伪,则在条带的条带报头中进一步信令通知对应的ATMVP子块尺寸。
2.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.5非子块STMVP
在该提议中,提出非子块STMVP作为空时merge模式。所提出的方法使用共位块,其与HEVC/JEM相同(只有一个图片,这里没有时间矢量)。所提出的方法还检查上方和左方空间位置,该位置在本提议中被调整。具体地,为了检查邻近的帧间预测信息,最多检查两个位置,上方和左方。来自上面行的Amid、Afar、来自左列的Lfar和Lmid的确切位置(如图7所示)如下所示:
Afar:(nPbW*5/2,-1),Amid(nPbW/2,-1)
Lfar:(-1,nPbH*5/2),Lmid(-1,nPbH/2)
上块、左块和时间块的运动矢量的平均值的计算与BMS软件实施方式相同。如果3个参考帧间预测块可用,分别用(mvLX_A[0],mvLX_A[1])、(mvLX_L[0],mvLX_L[1])和(mvLX_C[0],mvLX_C[1])表示相关联的MV,并且最终预测值用(mvLX[0],mvLX[1])表示。
mvLX[0]=((mvLX_A[0]+mvLX_L[0]+mvLX_C[0])*43)/128
mvLX[1]=((mvLX_A[1]+mvLX_L[1]+mvLX_C[1])*43)/128
如果只有两个或一个帧间预测块可用,则使用两个MV的平均值或仅使用一个MV。
mvLX[0]=(mvLX_D[0]+mvLX_E[0])/2
mvLX[1]=(mvLX_D[1]+mvLX_E[1])/2
2.6 MV平面
为了生成平滑的细化粒度运动场,图8给出了平面运动矢量预测过程的简要描述。
平面运动矢量预测通过在4×4块的基础上平均水平和垂直线性插值来实现,如下所示。
P(x,y)=(H×Ph(x,y)+W×Pv(x,y)+H×W)/(2×H×W)
W和H表示块的宽度和高度。(x,y)是当前子块相对于左上角子块的坐标。所有距离都用像素距离除以4来表示。P(x,y)是当前子块的运动矢量。
位置(x,y)的水平预测Ph(x,y)和垂直预测Pv(x,y)计算如下:
Ph(x,y)=(W-1-x)×L(-1,y)+(x+1)×R(W,y)
Pv(x,y)=(H-1-y)×A(x,-1)+(y+1)×B(x,H)
其中L(-1,y)和R(W,y)是当前块的左方和右方的4×4块的运动矢量。A(x,-1)和B(x,H)是当前块的上方和下方的4×4块的运动矢量。
左列和上面行邻域块的参考运动信息是从当前块的空间邻域块推导的。
右列和底行邻域块的参考运动信息推导如下。
-推导右下方时间邻域4×4块的运动信息。
-使用推导出的右下方邻域4×4块的运动信息以及右上方邻域4×4块的运动信息,计算右列邻域4×4块的运动矢量,如等式1中所述。
-使用推导出的右下方邻域4×4块的运动信息以及左下方邻域4×4块的运动信息,计算底行邻域4×4块的运动矢量,如等式2中所述。
R(W,y)=((H-y-1)×AR+(y+1)×BR)/H 等式1
B(x,H)=((W-x-1)×BL+(x+1)×BR)/W 等式2
其中,AR是右上方空间邻域4×4块的运动矢量,BR是右下方时间邻域4×4块的运动矢量,以及BL是左下方空间邻域4×4块的运动矢量。
从每个列表的邻近块中获得的运动信息被缩放到给定列表的第一参考图片。
3.问题
当前基于子块的预测设计存在以下问题:
MV平面模式可以带来额外的编码增益,但代价是计算复杂度和存储器带宽较高。一方面,它引入增加带宽的子块运动。另一方面,每个子块需要推导自己的运动。
非子块STMVP设计引入了对硬件实施方式不利的除法运算。
非子块STMVP设计仅作为特殊的merge候选而添加。如果它也可以用于帧间模式,则可以预期额外的编码增益。
4.示例技术
下面的详细发明应该被认为是解释一般构思的示例。这些发明不应该被狭义地解释。此外,这些发明可以以任何方式组合。本发明和其他发明之间的组合也是适用的。
技术1:更高的编码性能
1.MV平面模式可以由分配给整个块的单组运动信息代替,而不是为每个子块分配的多组运动信息。
a.在一个示例中,上方邻近块(例如,图8中的AL和AR)可以用于推导位于当前块的中心位置的第一组运动信息。下方邻近块(例如,图8中的BL和BR)可以用于推导位于当前块中心位置的第二组运动信息。然后,从第一组和第二组运动信息推导当前块的最终运动候选。
b.在一个示例中,6-参数仿射模型(例如,应用于图8中的AL、AR和BL的)可以用于推导位于中心位置的第一组运动信息。第一组运动信息和时间运动信息(例如,与图8中的BR相关联的运动)可以被共同用来推导最终运动候选。
c.在一个示例中,运动信息对(AL,AR)、(AL,BL)、(BL,BR)、(AR,BR)、(BL,AR)和(AL,BR)中的一些或全部被用于推导若干组4-参数仿射模型,然后若干组4-参数仿射模型进一步用于推导位于中心位置的运动信息。这些多组运动信息可以被共同用来推导最终运动候选。
i.在一个示例中,(AL,AR)和(BL,BR)被用于推导两组4-参数仿射模型。
d.在一个示例中,多个空间和时间邻近块的运动信息可以用于推导一组运动信息,例如,与空间/时间邻近块相关联的所有可用运动信息的线性组合(例如,在潜在缩放到同一参考图片之后)可以用于推导最终运动候选。
2.可以将从空间和时间运动信息共同推导出的运动候选添加到AMVP候选列表。
a.在一个示例中,给定目标参考图片(其可以在比特流中信令通知)的情况下,空间和时间块的MV可以首先被缩放到目标参考图片。缩放的MV可以共同用于推导最终运动矢量预测值。
b.在一个示例中,使用多个MV来形成最终MV预测值的推导过程被定义为线性函数。
i.在一个示例中,多个MV的平均值可以被定义为最终MV预测值。
ii.可替换地,不相等的加权可以应用于不同MV,以形成最终MV预测值。
3.从上述方法推导的多个运动候选可以被添加到运动候选列表。
a.对于多个运动候选中的每一个,可以利用不同的空间或时间块。
b.在一个示例中,用于生成推导出的运动候选的两个或更多MV必须参考相同参考图片;
c.在一个示例中,用于生成推导出的运动候选的两个或更多MV必须参考相同参考列表中的参考图片;
d.在一个示例中,用于生成推导出的运动候选的两个或更多MV必须参考相同参考列表中具有相同参考索引的参考图片;
e.在一个示例中,用于生成推导出的候选运动的两个或更多MV可以参考不同参考图片。
i.在一个示例中,它们将被缩放到相同参考图片。
ii.在一个示例中,它们将被缩放到最接近当前图片的参考图片。
4.在上述提出的方法中,空间邻近块的选择可以是固定的,或者可以自适应地改变。
a.在一个示例中,空间邻近块的选择可以取决于块尺寸和/或块形状。
b.在一个示例中,空间邻近块的选择可以取决于编码模式(仿射、非仿射、amvp或merge、条带类型等)。
c.在一个示例中,空间邻近块的选择可以取决于帧间预测方向(L0、L1或Bi)。
5.提出了使用与在TMVP和/或ATMVP设计中使用的相同的共位图片(其在条头处信令通知)作为目标图片,其中MV被缩放以用于STMVP推导。
a.在块级别下,如果邻近块的参考图片不同于该共位图片,则例如使用HEVC时间MV缩放方法来缩放块的MV,并且缩放的MV被用于STMVP运动推导过程。
b.可替换地,目标图片由第一可用merge候选来确定。
c.可替换地,目标图片被确定为最接近当前图片的参考图片。
d.可替换地,对于一个参考图片列表,共位图片可以用作一个参考图片列表的目标图片,并且对于另一参考图片列表,可以选择与空间邻近块之一相关联的相同参考图片。
6.利用上述方法,可以预先定义要添加到候选列表的候选的最大数量和/或对候选列表的哪种插入顺序。
a.可替换地,它可以取决于编码模式(例如,AMVP或merge;仿射或非仿射)。
b.可替换地,它可以取决于编码块尺寸/块形状/条带类型。
c.它可以在SPS、PPS、VPS、条带头/片头等中信令通知。
7.提出了一个仿射模型需要4个控制点MV的8-参数仿射模型。
a.在一个示例中,除了在6-参数仿射模型中使用的三个CP(例如,图1中的CP0、CP1和CP2)之外,还涉及与当前块的右下方位置相关联的一个或多个CP。
i.在一个示例中,来自一个或多个时间邻近块的时间运动信息可以用作当前块的右下方CP的预测器。
b.在一个示例中,对于AMVP模式,可以信令通知4个MVD。可替换地,此外,可以应用这4个MVD之间的预测。
c.在一个示例中,即使在运动补偿中使用的运动信息可能不同,也存储与右下方CP相关联的CP MV。
复杂度降低
8.提出了对于子块STMVP和/或非子块STMVP仅访问位于某些位置的块或其他类型的运动候选。
a.在一个示例中,邻近块(x,y)的位置应该满足x%M=0和y%N=0,其中M和N是两个非零整数,诸如M=N=8或16、32或64。
b.在一个示例中,如果一个邻近块中的左上方样点不满足给定条件,则跳过对与该块相关联的运动信息的检查。因此,不能将相关联的运动信息添加到merge候选列表。
c.可替换地,如果一个邻近块中的左上方样点不满足给定条件,则可以移位、截断或舍入该块的位置,以确保条件得到满足。例如,(x,y)可以修改为((x/M)*M,(y/N)*N),其中“/”是整数除法。
d.覆盖所有邻近块的受限区域尺寸被预定义/信令通知。在这种情况下,当由给定偏移量(OffsetX,OffsetY)计算的邻近块在该区域之外时,它被标记为不可用或被视为帧内编码模式。对应的运动信息不能用于生成候选列表的运动候选。
i.在一个示例中,区域尺寸被定义为一个CTB或多个CTB。
ii.在一个示例中,区域尺寸被定义为W*H(例如,W=64以及H=64)。可替换地,此外,所有具有坐标(NAx,NAy)的邻近块应该至少满足以下条件之一:
1)NAx>=((Cx/W)*W)
2)NAx<=((Cx/W)*W)+W
3)NAy>=((Cy/H)*H)
4)NAy<=((Cy/H)*H)+H
其中上述函数中的“>=”和/或“<=”可以用“>”和/或“<”代替,并且函数“/”表示整数除法运算,其中除法结果的小数部分被丢弃。
iii.可替换地,覆盖当前块的LCU行上方的所有块都被标记为不可用或被视为帧内编码模式。对应的运动信息不能用于生成候选列表的运动候选。
iv.可替换地,假设覆盖当前块的LCU的左上方样点坐标为(LX,LY)。(LX–Nax)和/或abs(LX-NAx)和/或(LY-NAy)和/或abs(LY-NAy)应该在阈值内,abs是绝对值符号。
1.可以预定义一个或多个阈值。它们还可能进一步取决于CU高度的最小尺寸/宽度的最小尺寸/LCU尺寸等。例如,(LY-NAy)应该小于CU高度的最小尺寸,或者(LY-NAy)应该小于CU高度的最小尺寸的两倍。
v.区域尺寸或(多个)阈值可以在SPS、PPS、VPS、条带头/片头等中信令通知。
vi.在一个示例中,当前条带/片/其他类型的用于并行编码的单元之外的所有邻近块被标记为不可用,并且对应的运动信息不能用于推导候选列表的候选。
9.计算2个或3个或更多运动矢量的平均值的除法运算用移位运算代替。
a.三个MV的平均值:
mvLX[0]=((mvLX_A[0]+mvLX_L[0]+mvLX_C[0])*S+W)>>N
mvLX[1]=((mvLX_A[1]+mvLX_L[1]+mvLX_C[1])*S+W)>>N
例如,S=43,W=64,以及N=7。
b.两个MV的平均值:
mvLX[0]=((mvLX_A[0]+mvLX_L[0]+1))>>1
mvLX[1]=((mvLX_A[1]+mvLX_L[1]+1))>>1
c.M个MV的平均值计算如下:
其中可以针对不同的M设计不同的S和N。例如,N可以是7、8、9、10等。
i.在一个示例中,给定N,S被选择为S/2^N最接近但小于或等于1/M的数。
ii.在一个示例中,给定N,S被选择为S/2^N最接近但大于或等于1/M的数。
iii.在一个示例中,如果S/2^N等于1/M,则O被选择为1<<(N–1)。
iv.在一个示例中,如果S/2^N小于1/M,则O被选择为大于或等于1<<(N–1)。
v.在一个示例中,如果S/2^N大于1/M,则O被选择为小于或等于1<<(N–1)。
d.可替换地,M个MV的平均值计算如下:
图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)一组运动候选,该同一组邻近块中每一个都被确定为位于特定位置。在示例中,该组运动候选包括子块空时运动矢量预测(STMVP)和非子块STMVP中的至少一个。方法1100包括基于该组运动候选计算(1104)当前块的运动信息或运动预测。方法1100还包括使用当前块的运动信息或运动预测执行(1106)当前块和当前块的比特流表示之间的转换。
可以在以下示例列表中描述本文档中公开的各种实施例和技术。
1.一种视频处理的方法,包括:对于图片中的当前块,通过访问与同一组邻近块相关联的运动信息生成一组运动候选,该同一组邻近块中每一个都被确定为位于特定位置,该组运动候选包括子块空时运动矢量预测(STMVP)和非子块STMVP中的至少一个;基于该组运动候选计算当前块的运动信息或运动预测;以及使用当前块的运动信息或运动预测执行当前块和当前块的比特流表示之间的转换。
2.如示例1所述的方法,其中,该特定位置具有坐标(x,y),并且x%M=0以及y%N=0,M和N是两个非零整数。
3.如示例2所述的方法,其中,如果一个邻近块中的左上方样点不位于该特定位置,则不检查与该邻近块相关联的运动信息,并且不用于生成该组运动候选。
4.如示例3所述的方法,还包括:如果一个邻近块中的左上方样点不位于该特定位置,则对该邻近块执行坐标转换。
5.如示例4所述的方法,其中,该坐标转换包括坐标的移位、截断或舍入中的至少一个。
6.如示例5所述的方法,其中,x、y分别被转换为(x/M)*M、(y/N)*N,“/”表示整数除法运算,其中除法结果的小数部分被丢弃。
7.如示例1所述的方法,其中,如果具有坐标(OffsetX,OffsetY)的一个邻近块被确定为位于一区域之外,则不使用与该邻近块相关联的运动信息来生成该组运动候选,其中该区域的尺寸是预定义的或被信令通知的。
8.如示例7所述的方法,其中,该区域的尺寸被定义为一个或多个编码树块(CTU)的尺寸。
9.如示例7的方法,其中,该区域的尺寸定义为W*H,其中,W=64且H=64。
10.如示例7所述的方法,其中,该区域的尺寸被定义为W*H,并且如果邻近块的坐标(Nax,NAy)满足以下条件中的至少一个,则该邻近块被确定为位于该区域内:
NAx大于或等于((Cx/W)*W);
NAx大于或等于((Cx/W)*W)+W;
NAy大于或等于((Cy/H)*H);
NAy大于或等于((Cy/H)*H)+H,
其中,“/”表示整数除法运算,其中,除法结果的小数部分被丢弃,并且(Cx,Cy)是当前块的左上方样点相对于该图片的左上方样点的坐标。
11.如示例2的方法,其中,M和N彼此相等。
12.如示例11所述的方法,其中,M和N均等于8、16、32和64中的一个。
13.如示例1所述的方法,其中,如果邻近块来自覆盖当前块的最大编码单元(LCU)的上方的行,则不使用与该邻近块相关联的运动信息来生成该组运动候选。
14.如示例1所述的方法,其中,如果邻近块的坐标(Nax,NAy)满足以下条件之一,则邻近块被确定为位于该区域内:
(LX-NAx)在第一阈值内;
abs(LX-NAx)在第二阈值内;
(LY-NAy)在第三阈值内;
abs(LY-NAy)在第四阈值内;
其中,(LX,LY)表示覆盖当前块的LCU的左上方样点的坐标,abs是绝对值符号。
15.如示例14所述的方法,其中,预定义或信令通知第一至第四阈值中的至少一个。
16.如示例15所述的方法,其中,第一至第四阈值中的至少一个取决于编码单元或LCU的最小宽度或高度。
17.如示例16所述的方法,其中,第三阈值小于CU的最小高度或小于CU的最小高度的两倍。
18.如示例8-9和15中任一项所述的方法,其中,在序列参数集(SPS)、图片参数集(PPS)、视频参数集(VPS)、条带头或片头中的一个中信令通知该区域的尺寸、和/或第一至第四阈值中的至少一个。
19.如示例1所述的方法,其中,如果邻近块位于当前条带、片或用于并行编码的其他种类的单元之外,则该邻近块被确定为不可用,并且不使用与该邻近块相关联的运动信息来生成该组运动候选。
20.如示例1所述的方法,其中,计算当前块的运动预测包括:
通过使用比特移位运算对于与邻近块相关联的多个运动矢量进行平均。
21.如示例20所述的方法,其中,两个运动矢量如下被平均:
mvLX[0]=((mvLX_A[0]+mvLX_L[0]+1))>>1
mvLX[1]=((mvLX_A[1]+mvLX_L[1]+1))>>1,
其中,两个运动矢量分别表示为(mvLX_A[0],mvLX_A[1])和(mvLX_L[0],mvLX_L[1])。
22.如示例20所述的方法,其中,三个运动矢量如下被平均:
mvLX[0]=((mvLX_A[0]+mvLX_L[0]+mvLX_C[0])*S+W)>>N
mvLX[1]=((mvLX_A[1]+mvLX_L[1]+mvLX_C[1])*S+W)>>N
其中,三个运动矢量分别表示为(mvLX_A[0],mvLX_A[1])、(mvLX_L[0],mvLX_L[1])和(mvLX_C[0],mvLX_C[1]),以及S、W和N是整数,
23.如示例22的方法,其中,S=43、W=64、以及N=7。
24.如示例20所述的方法,其中,M个运动矢量如下被平均:
其中,S、O和N是整数。
25.如示例24所述的方法,其中,对于不同的M,可以不同地设计S和N。
26.如示例25所述的方法,其中,对于给定N,
S被设计为S/2^N最接近但小于或等于1/M的数;或者
S被设计为S/2^N最接近但大于1/M的数。
27.如示例26的方法,其中,N等于7、8、9或10中的一个。
28.如示例26的方法,其中
如果S/2^N等于1/M,则选择O作为1<<(N-1);
如果S/2^N小于1/M,则选择O大于或等于1<<(N-1);或者
如果S/2^N大于1/M,则选择O小于或等于1<<(N-1)。
29.如示例20所述的方法,其中,M个运动矢量如下被平均:
30.如示例1-29中任一项所述的方法,其中,该转换包括将当前块编码成当前块的比特流表示中以及从当前块的比特流表示解码当前块中的至少一个。
31.一种视频处理装置,包括:处理器,被配置为实施示例1至30中任一项的方法。
32.一种存储在非暂时性计算机可读介质上的计算机程序产品,该计算机程序产品包括用于执行示例1至30中任一项的方法的程序代码。
在另一示例方面,公开了视频编码的另一种方法(“AMVP方法”)。AMVP方法包括对于当前块确定高级运动矢量预测(AMVP)列表,并通过使用AMVP列表确定运动矢量来执行当前块和当前块的比特流表示之间的转换。AMVP列表使用空间和时间运动信息。
在又一示例方面,公开了另一种视频编码方法(8-参数仿射方法)。该方法包括使用8-参数仿射模式执行当前块和当前块的比特流表示之间的转换,该8-参数仿射模式使用4个控制点(CP)运动矢量(MV)。基于当前块的编码条件使用CP。
关于方法1100、AMVP方法和8-参数仿射模式方法,在第4章节中描述的技术和所附权利要求的列表中提供了实施方式和实施例的附加示例,其形成说明书的一部分。
在另一示例方面,视频编码器装置包括处理器和视频处理电路,被配置为实施视频编码方法。
在又一代表性方面,视频解码器装置可以实施本文描述的方法。
在又一方面,所描述的方法可以以处理器可执行代码的形式体现,并存储在计算机可读介质上。
本文档中描述的公开的和其他实施例、模块和功能操作可以实现为数字电子电路,或者实现为计算机软件、固件或硬件,包含本文档中公开的结构及其结构等同,或者它们中的一个或多个的组合。所公开的和其他实施例可以实现为一个或多个计算机程序产品,即,在计算机可读介质上编码的计算机程序指令的一个或多个模块,用于由数据处理设备执行或控制数据处理设备的操作。计算机可读介质可以是机器可读存储装置、机器可读存储基板、存储器装置、实现机器可读传播信号的物质组合,或者它们中的一个或多个的组合。术语“数据处理设备”涵盖用于处理数据的全部设备、装置和机器,包括例如可编程处理器、计算机或多个处理器或计算机。除了硬件之外,该设备还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统的代码,或者它们中的一个或多个的组合。传播信号是人工生成的信号,例如,机器生成的电、光或电磁信号,其被生成以对信息进行编码以便传输到合适的接收器设备。
计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言编写,包括编译或解释语言,并且可以以任何形式部署,包括如独立程序或适合在计算环境中使用的模块、组件、子例程或其他单元。计算机程序不一定对应于文件系统中的文件。程序可以存储在包含其他程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本),存储在专用于所讨论的程序的单个文件中,或者存储在多个协调文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。可以部署计算机程序以在一个计算机上或在位于一个站点上或分布在多个站点上并通过通信网络互连的多个计算机上执行。
本文档中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程处理器执行,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路(例如FPGA(现场可编程门阵列)或ASIC(应用专用集成电路))执行,并且设备也可以实现为专用逻辑电路(例如FPGA(现场可编程门阵列)或ASIC(专用集成电路))。
作为示例,适合于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括一个或多个大容量存储设备或可操作地耦接到一个或多个大容量存储设备,以从一个或多个大容量存储设备接收数据或将数据传输到一个或多个大容量存储设备或两者,例如,磁盘、磁光盘或光盘。然而,计算机不一定需要这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括全部形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如,内部硬盘或可移动磁盘;磁光盘;和CD ROM和DVD-ROM磁盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。
虽然本专利文档包含许多细节,但这些细节不应被解释为对任何发明或可要求保护的范围的限制,而是作为特定于特定发明的特定实施例的特征的描述。在本专利文件中单独的实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合在多个实施例中实现。此外,尽管上面的特征可以描述为以某些组合起作用并且甚至最初如此要求保护,但是在某些情况下可以从组合中移除来自所要求保护的组合的一个或多个特征,并且所要求保护的组合可以针对子组合或子组合的变化。
类似地,虽然在附图中以特定顺序描绘了操作,但是这不应该被理解为实现期望的结果要求以所示的特定顺序或按顺序执行这样的操作,或者执行全部示出的操作。此外,在本专利文件中描述的实施例中的各种系统部件的分离不应被理解为在全部实施例中都需要这种分离。
仅描述了几个实现方式和示例,并且可以基于本专利文档中描述和示出的内容来做出其他实现、增强和变化。
Claims (31)
1.一种用于简化的空时运动矢量预测的视频处理方法,包括:
对于图片中的当前块,通过访问与同一组邻近块相关联的运动信息生成一组运动候选,该同一组邻近块中每一个都被确定为位于特定位置;其中,该组运动候选包括子块空时运动矢量预测STMVP和非子块STMVP中的至少一个;
基于该组运动候选计算当前块的运动信息或运动预测;以及
使用当前块的运动信息或运动预测执行当前块和当前块的比特流表示之间的转换,
其中,计算当前块的运动预测包括:通过使用比特移位运算对于与邻近块相关联的多个运动矢量进行平均。
2.如权利要求1所述的方法,其中,该特定位置具有坐标(x,y),并且x%M=0以及y%N=0,M和N是两个非零整数。
3.如权利要求2所述的方法,其中,如果一个邻近块中的左上方样点不位于该特定位置,则不检查与该邻近块相关联的运动信息,并且不用于生成该组运动候选。
4.如权利要求3所述的方法,还包括:如果一个邻近块中的左上方样点不位于该特定位置,则对该邻近块执行坐标转换。
5.如权利要求4所述的方法,其中,该坐标转换包括坐标的移位、截断或舍入中的至少一个。
6.如权利要求5所述的方法,其中,x、y分别被转换为(x/M)*M、(y/N)*N,“/”表示整数除法运算,其中除法结果的小数部分被丢弃。
7.如权利要求1所述的方法,其中,如果具有坐标(OffsetX,OffsetY)的一个邻近块被确定为位于一区域之外,则不使用与该邻近块相关联的运动信息来生成该组运动候选,其中该区域的尺寸是预定义的或被信令通知的。
8.如权利要求7所述的方法,其中,该区域的尺寸被定义为一个或多个编码树块(CTU)的尺寸。
9.如权利要求7所述的方法,其中,该区域的尺寸定义为W*H,其中,W=64且H=64。
10.如权利要求7所述的方法,其中,该区域的尺寸被定义为W*H,并且如果邻近块的坐标(NAx,NAy)满足以下条件中的至少一个,则该邻近块被确定为位于该区域内:
NAx大于或等于((Cx/W)*W);
NAx大于或等于((Cx/W)*W)+W;
NAy大于或等于((Cy/H)*H);
NAy大于或等于((Cy/H)*H)+H,
其中,“/”表示整数除法运算,其中,除法结果的小数部分被丢弃,并且(Cx,Cy)是当前块的左上方样点相对于该图片的左上方样点的坐标。
11.如权利要求2所述的方法,其中,M和N彼此相等。
12.如权利要求11所述的方法,其中,M和N均等于8、16、32和64中的一个。
13.如权利要求1所述的方法,其中,如果邻近块来自覆盖当前块的最大编码单元LCU的上方的行,则不使用与该邻近块相关联的运动信息来生成该组运动候选。
14.如权利要求7所述的方法,其中,如果一个邻近块的坐标(NAx,NAy)满足以下条件之一,则该邻近块被确定为位于该区域内:
(LX-NAx)在第一阈值内;
abs(LX-NAx)在第二阈值内;
(LY-NAy)在第三阈值内;
abs(LY-NAy)在第四阈值内;
其中,(LX,LY)表示覆盖当前块的LCU的左上方样点的坐标,abs是绝对值符号。
15.如权利要求14所述的方法,其中,预定义或信令通知第一至第四阈值中的至少一个。
16.如权利要求15所述的方法,其中,第一至第四阈值中的至少一个取决于编码单元或最大编码单元LCU的最小宽度或高度。
17.如权利要求16所述的方法,其中,第三阈值小于编码单元CU的最小高度或小于编码单元CU的最小高度的两倍。
18.如权利要求8所述的方法,其中,在序列参数集(SPS)、图片参数集(PPS)、视频参数集(VPS)、条带头或片头中的一个中信令通知该区域的尺寸、和/或第一至第四阈值中的至少一个。
19.如权利要求1所述的方法,其中,如果一个邻近块位于当前条带、片或用于并行编码的其他种类的单元之外,则该邻近块被确定为不可用,并且不使用与该邻近块相关联的运动信息来生成该组运动候选。
20.如权利要求1所述的方法,其中,两个运动矢量如下被平均:
mvLX[0]=((mvLX_A[0]+mvLX_L[0]+1))>>1
mvLX[1]=((mvLX_A[1]+mvLX_L[1]+1))>>1,
其中,两个运动矢量分别表示为(mvLX_A[0],mvLX_A[1])和(mvLX_L[0],mvLX_L[1]),并且所述两个运动矢量平均后的运动矢量表示为(mvLX[0],mvLX[1])。
21.如权利要求1所述的方法,其中,三个运动矢量如下被平均:
mvLX[0]=((mvLX_A[0]+mvLX_L[0]+mvLX_C[0])*S+W)>>N
mvLX[1]=((mvLX_A[1]+mvLX_L[1]+mvLX_C[1])*S+W)>>N
其中,三个运动矢量分别表示为(mvLX_A[0],mvLX_A[1])、(mvLX_L[0],mvLX_L[1])和(mvLX_C[0],mvLX_C[1]),以及S、W和N是整数,所述三个运动矢量平均后的运动矢量表示为(mvLX[0],mvLX[1])。
22.如权利要求21所述的方法,其中,S=43、W=64、以及N=7。
24.如权利要求23所述的方法,其中,对于不同的M,能够不同地设计S和N。
25.如权利要求24所述的方法,其中,对于给定N,
S被设计为S/2^N最接近但小于或等于1/M的数;或者
S被设计为S/2^N最接近但大于1/M的数。
26.如权利要求25所述的方法,其中,N等于7、8、9或10中的一个。
27.如权利要求25所述的方法,其中
如果S/2^N等于1/M,则选择O作为1<<(N-1);
如果S/2^N小于1/M,则选择O大于或等于1<<(N-1);或者
如果S/2^N大于1/M,则选择O小于或等于1<<(N-1)。
29.如权利要求1所述的方法,其中,该转换包括将当前块编码成当前块的比特流表示中以及从当前块的比特流表示解码当前块中的至少一个。
30.一种用于简化的空时运动矢量预测的视频处理装置,包括:处理器,被配置为实施权利要求1至29中任一项的方法。
31.一种非暂时性计算机可读介质,其上存储有指令,所述指令在由处理器执行时使所述处理器实现执行权利要求1至29中任一项的方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CNPCT/CN2018/107166 | 2018-09-23 | ||
| CN2018107166 | 2018-09-23 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN110944204A CN110944204A (zh) | 2020-03-31 |
| CN110944204B true CN110944204B (zh) | 2023-06-09 |
Family
ID=68069838
Family Applications (5)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201910899798.0A Pending CN110944203A (zh) | 2018-09-23 | 2019-09-23 | 块级别的运动矢量平面模式 |
| CN202410860050.0A Pending CN118870021A (zh) | 2018-09-23 | 2019-09-23 | 8参数仿射模式 |
| CN201910900357.8A Pending CN110944205A (zh) | 2018-09-23 | 2019-09-23 | 8参数仿射模式 |
| CN201910900356.3A Active CN110944204B (zh) | 2018-09-23 | 2019-09-23 | 简化的空时运动矢量预测 |
| CN201910901399.3A Active CN110944183B (zh) | 2018-09-23 | 2019-09-23 | 在帧间模式下利用非子块空时运动矢量预测 |
Family Applications Before (3)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201910899798.0A Pending CN110944203A (zh) | 2018-09-23 | 2019-09-23 | 块级别的运动矢量平面模式 |
| CN202410860050.0A Pending CN118870021A (zh) | 2018-09-23 | 2019-09-23 | 8参数仿射模式 |
| CN201910900357.8A Pending CN110944205A (zh) | 2018-09-23 | 2019-09-23 | 8参数仿射模式 |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201910901399.3A Active CN110944183B (zh) | 2018-09-23 | 2019-09-23 | 在帧间模式下利用非子块空时运动矢量预测 |
Country Status (4)
| Country | Link |
|---|---|
| US (3) | US11575903B2 (zh) |
| CN (5) | CN110944203A (zh) |
| TW (4) | TWI835863B (zh) |
| WO (4) | WO2020058952A1 (zh) |
Families Citing this family (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2020058952A1 (en) | 2018-09-23 | 2020-03-26 | Beijing Bytedance Network Technology Co., Ltd. | 8-parameter affine mode |
| WO2020244571A1 (en) | 2019-06-04 | 2020-12-10 | Beijing Bytedance Network Technology Co., Ltd. | Motion candidate list construction using neighboring block information |
| KR20220016839A (ko) | 2019-06-04 | 2022-02-10 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 기하학적 분할 모드 코딩을 갖는 모션 후보 리스트 |
| KR102662603B1 (ko) | 2019-06-06 | 2024-04-30 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 비디오 코딩을 위한 움직임 후보 리스트 구성 |
| CN114175636B (zh) | 2019-07-14 | 2024-01-12 | 北京字节跳动网络技术有限公司 | 自适应参数集中的自适应环路滤波的指示 |
| CN117596389A (zh) | 2019-09-28 | 2024-02-23 | 北京字节跳动网络技术有限公司 | 视频编解码中的几何分割模式 |
| CN115362676A (zh) | 2020-03-07 | 2022-11-18 | 抖音视界有限公司 | 视频编解码中变换跳过模式的处理 |
| US12231621B2 (en) * | 2022-04-18 | 2025-02-18 | Tencent America LLC | Subblock merge mode for intra block copy |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2018101700A1 (ko) * | 2016-11-29 | 2018-06-07 | 한국전자통신연구원 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
Family Cites Families (44)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| AU2003281127B2 (en) | 2002-07-15 | 2009-04-02 | Nokia Technologies Oy | Method for error concealment in video sequences |
| WO2007029914A1 (en) * | 2005-07-19 | 2007-03-15 | Samsung Eletronics Co., Ltd. | Video encoding/decoding method and apparatus in temporal direct mode in hierarchica structure |
| US9031129B2 (en) | 2007-06-15 | 2015-05-12 | Microsoft Technology Licensing, Llc | Joint spatio-temporal prediction for video coding |
| US9124898B2 (en) | 2010-07-12 | 2015-09-01 | Mediatek Inc. | Method and apparatus of temporal motion vector prediction |
| US8824558B2 (en) | 2010-11-23 | 2014-09-02 | Mediatek Inc. | Method and apparatus of spatial motion vector prediction |
| US8711940B2 (en) | 2010-11-29 | 2014-04-29 | Mediatek Inc. | Method and apparatus of motion vector prediction with extended motion vector predictor |
| WO2012097377A1 (en) * | 2011-01-14 | 2012-07-19 | General Instrument Corporation | Joint spatial and temporal block merge mode for hevc |
| US8755437B2 (en) | 2011-03-17 | 2014-06-17 | Mediatek Inc. | Method and apparatus for derivation of spatial motion vector candidate and motion vector prediction candidate |
| BR112014012187A2 (pt) * | 2011-11-21 | 2017-05-30 | Motorola Mobility Llc | determinação implícita e determinação implícita e explícita combinadas de imagem colocalizada para predição temporal |
| US20130188715A1 (en) * | 2012-01-09 | 2013-07-25 | Qualcomm Incorporated | Device and methods for merge list reordering in video coding |
| US9392268B2 (en) * | 2012-09-28 | 2016-07-12 | Qualcomm Incorporated | Using base layer motion information |
| KR102070719B1 (ko) * | 2013-01-23 | 2020-01-30 | 한국전자통신연구원 | 인터 예측 방법 및 그 장치 |
| US9571809B2 (en) | 2013-04-12 | 2017-02-14 | Intel Corporation | Simplified depth coding with modified intra-coding for 3D video coding |
| EP3203743A4 (en) * | 2014-10-31 | 2018-01-10 | Samsung Electronics Co., Ltd. | Method and device for encoding/decoding motion vector |
| KR101908249B1 (ko) * | 2014-11-18 | 2018-10-15 | 미디어텍 인크. | 단방향 예측 및 병합 후보로부터의 모션 벡터에 기초한 양방향 예측 비디오 코딩 방법 |
| US10271064B2 (en) * | 2015-06-11 | 2019-04-23 | Qualcomm Incorporated | Sub-prediction unit motion vector prediction using spatial and/or temporal motion information |
| CN105163116B (zh) * | 2015-08-29 | 2018-07-31 | 华为技术有限公司 | 图像预测的方法及设备 |
| CN108353184B (zh) * | 2015-11-05 | 2022-02-01 | 联发科技股份有限公司 | 一种视频编解码的方法及装置 |
| WO2017118411A1 (en) * | 2016-01-07 | 2017-07-13 | Mediatek Inc. | Method and apparatus for affine inter prediction for video coding system |
| US10560712B2 (en) * | 2016-05-16 | 2020-02-11 | Qualcomm Incorporated | Affine motion prediction for video coding |
| US10834404B2 (en) * | 2016-05-24 | 2020-11-10 | Electronics And Telecommunications Research Institute | Image encoding/decoding method and recording medium for same |
| WO2018045108A1 (en) | 2016-09-02 | 2018-03-08 | Vid Scale, Inc. | Method and system for signaling of 360-degree video information |
| US10778999B2 (en) | 2016-09-30 | 2020-09-15 | Qualcomm Incorporated | Frame rate up-conversion coding mode with affine motion model |
| US10448010B2 (en) | 2016-10-05 | 2019-10-15 | Qualcomm Incorporated | Motion vector prediction for affine motion models in video coding |
| US20180169923A1 (en) | 2016-12-21 | 2018-06-21 | Velcro BVBA | Spacer product |
| EP3343925A1 (en) * | 2017-01-03 | 2018-07-04 | Thomson Licensing | Method and apparatus for encoding and decoding motion information |
| WO2018128380A1 (ko) * | 2017-01-03 | 2018-07-12 | 엘지전자(주) | 어파인 예측을 이용하여 비디오 신호를 처리하는 방법 및 장치 |
| WO2018132380A1 (en) | 2017-01-13 | 2018-07-19 | Vid Scale, Inc. | Prediction approaches for intra planar coding |
| US10701390B2 (en) * | 2017-03-14 | 2020-06-30 | Qualcomm Incorporated | Affine motion information derivation |
| US10602180B2 (en) | 2017-06-13 | 2020-03-24 | Qualcomm Incorporated | Motion vector prediction |
| US10757417B2 (en) | 2018-01-20 | 2020-08-25 | Qualcomm Incorporated | Affine motion compensation in video coding |
| US11202079B2 (en) | 2018-02-05 | 2021-12-14 | Tencent America LLC | Method and apparatus for video decoding of an affine model in an intra block copy mode |
| CN118118661A (zh) | 2018-03-19 | 2024-05-31 | 株式会社Kt | 对图像进行解码或编码的方法以及非暂态计算机可读介质 |
| EP3788787A1 (en) | 2018-06-05 | 2021-03-10 | Beijing Bytedance Network Technology Co. Ltd. | Interaction between ibc and atmvp |
| US11303923B2 (en) | 2018-06-15 | 2022-04-12 | Intel Corporation | Affine motion compensation for current picture referencing |
| WO2019244052A1 (en) | 2018-06-19 | 2019-12-26 | Beijing Bytedance Network Technology Co., Ltd. | Different precisions for different reference list |
| WO2020006969A1 (zh) | 2018-07-02 | 2020-01-09 | 华为技术有限公司 | 运动矢量预测方法以及相关装置 |
| US11051010B2 (en) * | 2018-07-18 | 2021-06-29 | Mediatek Inc. | Merge candidates with multiple hypothesis |
| US11057636B2 (en) | 2018-09-17 | 2021-07-06 | Qualcomm Incorporated | Affine motion prediction |
| CN110933427B (zh) | 2018-09-19 | 2023-05-12 | 北京字节跳动网络技术有限公司 | 仿射模式编码的模式相关自适应运动矢量分辨率 |
| WO2020058952A1 (en) | 2018-09-23 | 2020-03-26 | Beijing Bytedance Network Technology Co., Ltd. | 8-parameter affine mode |
| CN110944191A (zh) | 2018-09-23 | 2020-03-31 | 北京字节跳动网络技术有限公司 | 具有自适应运动矢量分辨率的运动矢量精度指示的信令通知 |
| WO2020084512A1 (en) | 2018-10-23 | 2020-04-30 | Beijing Bytedance Network Technology Co., Ltd. | Affine motion information derivation from neighboring block |
| CN112970261A (zh) | 2018-11-05 | 2021-06-15 | 北京字节跳动网络技术有限公司 | 预测精度改进视频编解码 |
-
2019
- 2019-09-23 WO PCT/IB2019/058022 patent/WO2020058952A1/en not_active Ceased
- 2019-09-23 TW TW108134287A patent/TWI835863B/zh active
- 2019-09-23 CN CN201910899798.0A patent/CN110944203A/zh active Pending
- 2019-09-23 CN CN202410860050.0A patent/CN118870021A/zh active Pending
- 2019-09-23 CN CN201910900357.8A patent/CN110944205A/zh active Pending
- 2019-09-23 TW TW108134288A patent/TWI822862B/zh active
- 2019-09-23 WO PCT/IB2019/058023 patent/WO2020058953A1/en not_active Ceased
- 2019-09-23 CN CN201910900356.3A patent/CN110944204B/zh active Active
- 2019-09-23 WO PCT/IB2019/058020 patent/WO2020058950A1/en not_active Ceased
- 2019-09-23 CN CN201910901399.3A patent/CN110944183B/zh active Active
- 2019-09-23 TW TW108134289A patent/TWI821408B/zh active
- 2019-09-23 WO PCT/IB2019/058021 patent/WO2020058951A1/en not_active Ceased
- 2019-09-23 TW TW108134291A patent/TWI835864B/zh active
-
2021
- 2021-03-19 US US17/207,118 patent/US11575903B2/en active Active
- 2021-03-19 US US17/207,173 patent/US11778194B2/en active Active
- 2021-03-19 US US17/207,060 patent/US11546601B2/en active Active
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2018101700A1 (ko) * | 2016-11-29 | 2018-06-07 | 한국전자통신연구원 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
Non-Patent Citations (2)
| Title |
|---|
| CE4.2.16:Sub-block merge candidates in BMS and JEM;HAN,Yu 等;《Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 11th Meeting:Ljubljana SI》;20180718;全文 * |
| Spatial-termporal merge mode(non subblocks STMVP);ZHOU,Tianyang 等;《Joint Video Exploration Team(JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 11th Meeting:Ljubljana,SI》;20180718;第1-5部分,摘要 * |
Also Published As
| Publication number | Publication date |
|---|---|
| CN110944204A (zh) | 2020-03-31 |
| CN110944183B (zh) | 2023-09-05 |
| US20210211677A1 (en) | 2021-07-08 |
| WO2020058953A1 (en) | 2020-03-26 |
| TWI835864B (zh) | 2024-03-21 |
| US11575903B2 (en) | 2023-02-07 |
| WO2020058952A1 (en) | 2020-03-26 |
| CN110944205A (zh) | 2020-03-31 |
| CN110944203A (zh) | 2020-03-31 |
| US11778194B2 (en) | 2023-10-03 |
| US11546601B2 (en) | 2023-01-03 |
| TWI822862B (zh) | 2023-11-21 |
| TW202017382A (zh) | 2020-05-01 |
| CN110944183A (zh) | 2020-03-31 |
| TW202031048A (zh) | 2020-08-16 |
| CN118870021A (zh) | 2024-10-29 |
| TW202017384A (zh) | 2020-05-01 |
| WO2020058950A1 (en) | 2020-03-26 |
| WO2020058951A1 (en) | 2020-03-26 |
| US20210211647A1 (en) | 2021-07-08 |
| TW202032989A (zh) | 2020-09-01 |
| TWI821408B (zh) | 2023-11-11 |
| US20210211678A1 (en) | 2021-07-08 |
| TWI835863B (zh) | 2024-03-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110944204B (zh) | 简化的空时运动矢量预测 | |
| CN112868240B (zh) | 并置的局部照明补偿和修改的帧间预测编解码 | |
| JP7241870B2 (ja) | 部分的な位置に基づく差分計算 | |
| CN111083492B (zh) | 双向光流中的梯度计算 | |
| CN112868239B (zh) | 并置的局部照明补偿和帧内块复制编解码 | |
| CN110944208B (zh) | 仿射模式的复杂度降低 | |
| JP7323641B2 (ja) | アフィンモードのための適応動きベクトル差分分解 | |
| WO2020089822A1 (en) | Overlapped block motion compensation with derived motion information from neighbors | |
| CN110662073B (zh) | 子块的边界滤波 | |
| CN110958457B (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 |