CN112385210B - 用于视频编解码的帧间预测的方法及装置 - Google Patents

用于视频编解码的帧间预测的方法及装置 Download PDF

Info

Publication number
CN112385210B
CN112385210B CN201980039876.8A CN201980039876A CN112385210B CN 112385210 B CN112385210 B CN 112385210B CN 201980039876 A CN201980039876 A CN 201980039876A CN 112385210 B CN112385210 B CN 112385210B
Authority
CN
China
Prior art keywords
affine
block
mvs
current block
current
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
Application number
CN201980039876.8A
Other languages
English (en)
Other versions
CN112385210A (zh
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 CN112385210A publication Critical patent/CN112385210A/zh
Application granted granted Critical
Publication of CN112385210B publication Critical patent/CN112385210B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/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
    • 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/543Motion estimation other than block-based using regions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

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

Abstract

使用包含仿射模式的编解码模式的帧间预测的方法及装置。根据一个方法,如果目标相邻块在当前块的相邻区域中,仿射控制点MV基于所述目标相邻块的两个目标MV(运动向量)来推导,其中所述仿射控制点MV是基于4参数仿射模型以及所述目标相邻块以6参数仿射模型进行编解码。根据另一方法,如果目标相邻块在所述当前块的相邻区域中,仿射控制点MV基于所述目标相邻块的两个子块MV(运动向量)来推导,如果所述目标相邻块在于所述当前块相同的区域中,所述仿射控制点MV基于所述目标相邻块的多个控制点MV来推导。

Description

用于视频编解码的帧间预测的方法及装置
相关引用
本发明要求于2018年6月20日提交的,美国临时专利申请案62/687,291、于2018年8月10日提交的,美国临时专利申请案62/717,162以及于2018年8月15日提交的,美国临时专利申请案62/764,748的优先权。这些美国临时专利申请案在此通过引用纳入其中。
技术领域
本发明涉及使用运动估计(motion estimation)以及运动补偿(motioncompensation)的视频编解码。特别地,本发明涉及使用包括仿射(affine)转换运动模型的运动估计/补偿技术对编解码***进行运动向量缓冲器管理(buffer management)。
背景技术
在过去二十年已经开发了各种视频编解码标准。在更新的编解码标准中,更加强有力的编解码工具用于改善编解码效率。高效视频编解码(High Efficiency VideoCoding,HEVC)是近些年开发的新的编解码标准。在高效视频编解码(HEVC)***中,H.264/AVC的固定尺寸的宏块(macroblock)被灵活块替代,称为编码单元(coding unit,CU)。CU中的像素共享相同的编解码参数来改善编解码效率。CU可以开始于最大的CU(LCU),其在HEVC中也称为编码树单元(coded tree unit,CTU)。除了编码单元的概念,HEVC中还引入了预测单元(PU)的概念。一旦完成CU分层树的拆分,根据预测类型以及PU分割,每一叶CU被进一步拆分成一个或多个预测单元(prediction unit,PU)。
在大多数编解码标准中,在块的基础上使用适应性帧间/帧内预测。在帧间预测(inter prediction)模式中,为每一块决定一个或两个运动向量来选择一个参考块(即,单向预测)或两个参考块(即,双向预测)。一个或多个运动向量被决定并且被编码用于每一单独块。在HEVC中,以两个不同的方式支持帧间运动补偿:显式发信或隐式发信。在显示发信中,使用预测编解码方法发信用于块(PU)的运动向量。运动向量预测子(predictor)对应于与当前块的空间以及时间相邻块有关的运动向量。在MV预测子被决定后,运动向量差(motion vector difference,MVD)被编码并被传输。这一模式也称为AMVP(advancedmotion vector prediction,高级运动向量预测)模式。在隐式发信中,来自候选预测子集合(predictor set)的一个预测子被选择为用于当前块(即,PU)的运动向量。因为编码器以及解码器两者将以相同的方式推导候选集合并选择最终运动向量,这不需要以隐式模式发信MV或MVD。这一模式也称为合并模式。合并模式中预测子集合的形成也称为合并候选列表构造。索引(称为合并索引)被发信来指示被选为当前块MV的预测子。
沿着时间轴跨过图像发生的运动可以由许多不同的模型来描述。假定A(x,y)是所考虑位置(x,y)处的原始像素,A’(x’,y’)是当前像素A(x,y)的在参考图像中位置(x’,y’)处的对应像素,仿射运动模型被描述如下:
在提交给ITU-VCEG的ITU-T13-SG16-C1016号文件中(Lin等人,“Affinetransform prediction for next generation video coding”,ITU-U,研究小组16,问题Q6/16,文件C1016,2015年9月,瑞士加内瓦),公开了四参数仿射预测,其包括仿射合并模式。当仿射运动块在移动时,块的运动向量场(motion vector field)可以由如下的两个控制点运动向量(control-point motion vector)或四个参数来描述,其中(vx,vy)表示运动向量:
在图1A中示出了四参数仿射模型的示例。转换块是矩形块。这一运动块中每一点的运动向量场可以由如下等式来描述:
在上述等式中,(v0x,v0y)是在块的左上角的控制点运动向量(即,v0),以及(v1x,v1y)是在块的右上角的另一个控制点运动向量(即,v1)。当两个控制点的MV被解码时,块的每一4x4块的MV可以根据上述等式来决定。换言之,块的仿射运动模型可以由在两个控制点处的两个运动向量指定。此外,虽然块的左上角以及右上角被用作两个控制点,其他两个控制点也可以被使用。根据等式(3a),基于图1B示出的两个控制点的MV为每一4×4子块决定当前块的运动向量的示例。
6参数仿射模型也可以被使用。这一运动块中每一点的运动向量场可以由如下等式来描述。
在上述等式中,(v0x,v0y)是在左上角的控制点运动向量,(v1x,v1y)是在块的右上角的另一个控制点运动向量,(v2x,v2y)是在块的左下角的另一个控制点运动向量。
在ITU-T13-SG16-C1016号文件中,对于帧间模式编码的CU,当CU尺寸等于或大于16x16时,仿射旗标(flag)被发信来指示仿射帧间模式是否被应用。如果当前块(如,当前CU)以仿射帧间模式进行编码,候选运动向量预测子(Motion Vector Predictor,MVP)对列表使用相邻有效已重构块来构建。图2示出了用于推导角落推导仿射候选的相邻块集合。如图2所示,对应于在当前块210的左上角的块V0的运动向量,其从相邻块a0(称为左上块)、a1(称为左上内块)以及a2(称为左上下块)的运动向量中选择,以及对应于在当前块210的右上角的块V1的运动向量,其从相邻块b0(称为上方块)以及b1(称为右上块)的运动向量中来选择。候选MVP对的索引在比特流中被发信。两个控制点的MV差(MVD)在比特流中被编码。
在ITU-T13-SG16-C1016中,还提出了仿射合并模式。如果当前块是合并PU,相邻的五个块(图2中的c0、b0、b1、c1以及a0块)被检查它们中的一个是否是仿射帧间模式或仿射合并模式。如果为是,affine_flag被发信来指示当前PU是否是仿射模式。当当前PU以仿射合并模式被应用时,其从有效相邻已重构块获得用仿射模式编码的第一块。候选块的选择顺序是如图2所示的左、上、右上、左下到左上(c0 b0 b1 c1 a0)。第一仿射编码块的仿射参数用于推导当前PU的v0以及v1。
在HEVC中,每一PU的已解码MV被用16:1比率下采样并存储在时间MV缓冲器中用于后续帧的MVP推导。对于16×16块,仅左上4×4MV被存储在时间MV缓冲器中并且所存储的MV代表整个16×16块的MV。
发明内容
公开了用于视频编解码的帧间预测的方法以及装置,所述视频编解码由视频编码器或视频解码器执行,其利用运动向量预测来编解码与用包括仿射模式的编解码模式进行编解码的块有关的MV(运动向量)信息。根据这一个方法,在视频编码器侧接收与当前块有关的输入数据或者在视频解码器侧接收对应于包括所述当前块的压缩数据的视频比特流。从所述当前块的相邻集合决定目标相邻块,其中所述目标相邻块根据4参数仿射模型或6参数仿射模型来编解码。如果所述目标相邻块在所述当前块的相邻区域,基于所述目标相邻块的两个目标MV(运动向量)推导仿射控制点MV候选,其中所述推导所述仿射控制点MV候选推导是基于4参数仿射模型。生成仿射MVP候选列表,其中所述仿射MVP候选列表包括所述仿射控制点MV候选。在所述视频编码器侧使用所述仿射MVP候选列表编码与仿射模型有关的当前MV信息,或者在所述视频解码器侧使用所述仿射MVP候选列表解码与所述仿射模型有关的所述当前MV信息。
与所述当前块的所述相邻区域有关的区域边界对应于所述当前块的CTU边界、CTU行(row)边界、图块边界或条带边界。所述当前块的所述相邻区域对应于所述当前块的上方CTU(编码树单元)行或者所述当前块的一个左边CTU列。在另一示例中,所述当前块的所述相邻区域对应于所述当前块的一上方CU(编码单元)行或者所述当前块的一个左边CU列。
在一个实施例中,所述目标相邻块的所述两个目标MV对应于所述目标相邻块的两个子块MV。例如,所述目标相邻块的所述两个子块MV对应于左下子块MV以及右下子块MV。所述目标相邻块的所述两个子块MV被存储于线性缓冲器中。例如,所述当前块上方的一个行的MV以及所述当前块左侧的一个列的MV被存储于所述线性缓冲器中。在另一示例中,所述当前块的上方CTU行的一个底部行的MV被存储于所述线性缓冲器中。所述目标相邻块的所述两个目标MV对应于所述目标相邻块的两个控制点MV。
所述方法可以进一步包括如果所述目标相邻块在与所述当前块相同的区域中,推导所述仿射控制点MV候选以及将所述仿射控制点MV候选包含于所述仿射MVP候选列表中,其中所述推导所述仿射控制点MV候选是基于6参数仿射模型或所述4参数仿射模型。所述相同的区域对应于相同CTU行。
在一个实施例中,对于所述4参数仿射模型,MV x分量的y项参数等于MV y分量的x项参数乘以-1,以及MV x分量的x项参数与MV y分量的y项参数是相同的。在另一个实施例中,对于所述6参数仿射模型,MV x分量的y项参数以及MV y分量的x项参数是不同的,以及MV x分量的x项参数与MV y分量的y项参数也是不同的。
根据另一方法,如果所述目标相邻块在所述当前块的相邻区域中,仿射控制点MV基于所述目标相邻块的两个子块MV(运动向量)来推导。如果所述目标相邻块位于所述当前块相同的区域中,所述仿射控制点MV基于所述目标相邻块的多个控制点MV来推导。
对于第二方法,如果所述目标相邻块是双向预测块,与列表0以及列表1参考图像有关的多个左下子块MV以及多个右下子块MV被用于推导所述仿射控制点MV候选。如果所述目标相邻块位于所述当前块相同的区域中,根据所述目标相邻块的所述仿射模式,所述仿射控制点MV候选推导对应于6参数模型或4参数仿射模型。
本发明在根据当前块的向量块推导仿射候选时,仅使用CTU行MV线性缓冲器,可以有效减少仿射候选素所需要的线性缓冲器数目。
附图说明
图1A示出了四参数仿射模型的示例,其中转换块仍是矩形块。
图1B示出了基于两个控制点的MV为每4x4子块决定当前块运动向量的示例。
图2示出了用于推导角落推导的仿射候选的相邻块集合。
图3示出了根据本发明一个实施例的通过存储CU的第一行(row)/第一列(column)MV的一个以上MV行以及一个以上MV列的仿射MVP推导的示例。
图4A示出了根据本发明一个实施例的通过存储M个MV行以及K个MV列的仿射MVP推导的示例。
图4B示出了根据本发明一个实施例的通过存储M个MV行以及K个MV列的仿射MVP推导的另一示例。
图5示出了根据本发明一个实施例的通过存储CU的第一行/第一列MV的一个以上MV行以及一个以上MV列的仿射MVP推导的示例。
图6示出了根据本发明一个实施例的仅使用相邻块的两个MV的仿射MVP推导的示例。
图7示出了根据本发明一个实施例的使用上方CTU行的底部行MV的仿射MVP推导的示例。
图8A示出了根据本发明一个实施例的仅使用相邻块的两个MV的仿射MVP推导的示例。
图8B示出了根据本发明一个实施例的仅使用相邻块的两个MV的仿射MVP推导的另一示例。
图9A示出了根据本发明一个实施例的使用来自相邻MV的额外MV的仿射MVP推导的示例。
图9B示出了根据本发明一个实施例的使用来自相邻MV的额外MV的仿射MVP推导的另一示例。
图10示出了结合本发明实施例的具有仿射帧间模式的视频编解码***的示例性流程图,其中基于目标相邻块的两个目标MV(运动向量)推导仿射控制点MV候选以及所述仿射控制点MV候选是基于4参数仿射模型。
图11示出了结合本发明实施例的具有仿射帧间模式的视频编解码***的另一个示例性流程图,其中仿射控制点MV候选是根据所述目标相邻块是在当前块的相邻区域或相同区域中,而基于已存储的控制点运动向量或子块运动向量来推导。
具体实施方式
下文的描述是实施本发明的最佳实施方式。所作之描述是为了说明本发明的基本原理并且不应对此作限制性理解。本发明的范围由参考所附权利要求最佳决定。
在现有的视频***中,先前已编码块的运动向量被存储在运动向量缓冲器以由后续块来使用。例如,缓冲器中的运动向量可以分别推导用于合并模式或帧间模式的合并列表或AMVP(高级运动向量预测)列表的候选。当使用仿射运动估计以及补偿时,与控制点有关的运动向量(MV)不被存储在MV缓冲器中。反之,控制点运动向量(CPMV)被存储在与MV缓冲器分离的其他缓冲器中。当推导仿射候选(如,仿射合并候选或仿射帧间候选)时,相邻块的CPMV需要从其他缓冲器中检索出。为了减少所需要的储存空间与/或CPMV存取,公开了各种技术。
在ITU-T13-SG16-C-1016中,仿射MVP被推导用于仿射帧间模式以及仿射合并模式。在ITU-T13-SG16-C-1016中,对于当前块的仿射合并模式,如果相邻块是仿射编码块(包括仿射帧间模式块以及仿射合并模式块),相邻块的左上N×N(如,存储MV的最小块尺寸,以及N=4)块的MV以及相邻块的右上N×N块的MV被用于推导仿射合并候选的仿射参数或控制点的MV。当使用第三控制点时,左下N×N块的MV也被使用。例如,如图3中所示,当前块310的相邻块B以及E是仿射编码块。为了推导块B以及块E的仿射参数,需要VB0、VB1、VE0以及VE1的MV。有时,如果需要第三控制点,需要VB2以及VE2。然而,在HEVC中,仅当前CU/CTU/CTU行的相邻4×4块行以及4×4块列的MV以及当前CTU的MV被存储在线性缓冲器(line buffer)中用于快速存取。其他MV被下采样以及被存储在时间MV缓冲器中用于后续帧或者被丢弃。因此,如果块B以及块E在上方CTU行中,VB0、VB1、VE0、VE1不被存储在原始编解码架构的任何缓冲器中。其需要额外的MV缓冲器来存储相邻块的MV用于仿射参数推导。
为了克服这一MV缓冲器问题,MV缓冲器管理的各种方法被公开来减少缓冲器需求。
方法1:基于时间MV缓冲器中下采样MV的仿射MVP
如果MV不在当前CU/CTU的相邻块行或块列中或者不在当前CTU/CTU行中(如,参考MV不在当前CU/CTU的相邻N×N块行或者N×N块列中或者不在当前CTU/CTU行中),仿射参数推导使用存储在时间MV缓冲器中的MV而不是真实的MV。此处N×N表示存储MV的最小块尺寸。在一个实施例中,N=4。
方法2:通过存储M个MV行以及K个MV列的仿射MVP推导
根据这一方法,M个相邻行块的MV以及K个相邻列块的MV被存储用于仿射参数推导,而不是存储当前帧中的所有MV,其中M以及K是整数,M可以大于1以及K可以大于1。每一块指相关MV(一个实施例中N=4)可以被存储的最小N×N块。图4A-4B中示出了M=K=2以及N=4的一示例。在图4A中,为了推导块B、E以及A的仿射参数,使用VB0’以及VB1’而不是VB0以及VB1。VE0’、VE1’以及VE2’被使用而不是VE0、VE1以及VE2。VA0’以及VA2’被使用而不是VA0以及VA2。在图4B中,为了推导块B、E以及A的仿射参数,VB0’、VB1’以及VB2’被使用而不是VB0、VB1以及VB2。VE0’、VE1’以及VE2’被使用而不是VE0、VE1以及VE2。VA0’以及VA2’被使用而不是VA0以及VA2。通常,两个行块以及两个列块中的其他位置可以被用于仿射参数推导。在没有损失一般性的情况下,仅图4A中的方法被描述如下。
来自块B的第一推导控制点仿射MVP可以被修正如下:
V0_x=VB0’_x+(VB2_x–VB0’_x)*(posCurPU_Y–posB0’_Y)/(2*N)+(VB1’_x–VB0’_x)*(posCurPU_X–posB0’_X)/RefPU_width,以及
V0_y=VB0’_y+(VB2_y–VB0’_y)*(posCurPU_Y–posB0’_Y)/(2*N)+(VB1’_y–VB0’_y)*(posCurPU_X–posB0’_X)/RefPU_width (3)
在上述等式中,VB0’、VB1’以及VB2’可以由任何其他所选择参考/相邻PU的对应MV来替代,(posCurPU_X,posCurPU_Y)是相对于图像的左上采样的当前PU的左上采样的像素位置,(posRefPU_X,posRefPU_Y)是相对于图像的左上采样的参考/相邻PU的左上采样的像素位置,(posB0’_X,posB0’_Y)是相对于图像的左上采样的B0块的左上采样的像素位置。其他两个控制点MVP可以被推导如下:
V1_x=V0_x+(VB1’_x–VB0’_x)*PU_width/RefPU_widt,h
V1_y=V0_y+(VB1’_y–VB0’_y)*PU_width/RefPU_width,
V2_x=V0_x+(VB2_x–VB0’_x)*PU_height/(2*N),以及
V2_y=V0_y+(VB2_y–VB0’_y)*PU_height/(2*N). (4)
从块B推导2控制点仿射MVP可以被修正如下:
V0_x=VB0’_x–(VB1’_y–VB0’_y)*(posCurPU_Y–posB0’_Y)/RefPU_width+(VB1’_x–VB0’_x)*(posCurPU_X–posB0’_X)/RefPU_width,
V0_y=VB0’_y+(VB1’_x–VB0’_x)*(posCurPU_Y–posB0’_Y)/RefPU_width+(VB1’_y–VB0’_y)*(posCurPU_X–posB0’_X)/RefPU_width,
V1_x=V0_x+(VB1’_x–VB0’_x)*PU_width/RefPU_width,以及
V1_y=V0_y+(VB1’_y–VB0’_y)*PU_width/RefPU_width. (5)
因为用于存储来自上方CTU的MV的线性缓冲器远大于用于存储来自左边CTU的MV的列缓冲器(column buffer),这里不需要约束M的值,其中根据一个实施例,M可以被设置为CTU_width/N。
在另一个实施例中,在当前CTU行内,M个MV行被使用。然而,在当前CTU行外,仅一个MV行被使用。换言之,CTU行MV线性缓冲器仅存储一个MV行。
在另一个实施例中,垂直方向上的不同的M个MV与/或水平方向上不同的K个MV被存储在M个MV行缓冲器与/或K个MV列缓冲器中。不同的MV可以来自不同的CU或不同的子块。从具有子块模式的一个CU引入的不同MV的数目在一些实施例中可以被进一步被限制。例如,具有尺寸32×32的一个仿射编码CU可以在水平方向被拆分成8个4×4子块以及在垂直方向被拆分成8个4×4子块。在每一方向上有8个不同的MV。在一个实施例中,所有的这些8个不同的MV被允许被考虑为M个或K个不同的MV。在另一个实施例中,仅这些8个不同的MV中第一个MV以及最后一个MV被考虑为M或K个不同的MV。
方法3:通过存储除CU的第一行/第一列MV外的一个以上MV行以及一个以上MV列的仿射MVP推导
提出存储一个以上的MV行以及一个以上MV列,而不是存储当前帧中的所有MV。如图5所示,两个MV行以及两个MV列被存储在缓冲器中。离当前CU最近的第一MV行以及第一MV列缓冲器被用于存储N×N块的原始MV。第二MV行缓冲器被用于存储上方CU的第一MV行,以及第二MV列缓冲器被用于存储左边CU的第一MV列。例如,如图5所示,块B(VB0到VB1)的第一行MV的多个MV被存储在第二MV行缓冲器中。块A(即,VA0到VA2)的第一列MV的多个MV被存储在第二MV列缓冲器中。因此,相邻CU的控制点的MV可以被存储在MV缓冲器中。开销是一个以上MV行以及一个以上MV列。
在一个实施例中,在当前CTU行中,两个MV行被使用。然而,在当前CTU行外,仅一个MV行被使用。换言之,CTU行MV线性缓冲器被用于仅存储一个MV行。
方法4:通过存储每一M×M块或每一CU的仿射参数或控制点MV的仿射MVP推导
在等式(3)中,左上以及右上控制点的MV被用于推导CU/PU中所有N×N(即,存储MV的最小单元,在一个实施例中N=4)子块的多个MV。所推导的多个MV是(v0x,v0y)加位置相关的偏移MV。根据等式(3),如果其为N×N子块推导一MV,水平方向偏移MV是((v1x–v0x)*N/w,(v1y–v0y)*N/w)以及垂直方向偏移MV是(–(v1y–v0y)*N/w,(v1x–v0x)*N/w)。对于6参数仿射模型,如果左上、右上以及左下MV是v0、v1以及v2,每一像素的MV可以被推导如下:
根据等式(6),用于在位置(x,y)(相对于左上角)处的N×N子块的MV,水平方向偏移MV是((v1x–v0x)*N/w,(v1y–v0y)*N/w)以及垂直方向偏移MV是((v2x–v0x)*N/h,(v2y–v0y)*N/h)。如等式(6)所示,所推导的MV是(vx,vy)。在等式(3)以及(6)中,w以及h是仿射编码块的宽度以及高度。
如果控制点的MV是N×N块的中心像素的MV,在等式(3)到(6)中,分母可以减少N。例如,等式(3)可以被改写为下:
V0_x=VB0’_x+(VB2_x–VB0’_x)*(posCurPU_Y–posB0’_Y)/(N)+(VB1’_x–VB0’_x)*(posCurPU_X–posB0’_X)/(RefPU_width–N),以及
V0_y=VB0’_y+(VB2_y–VB0’_y)*(posCurPU_Y–posB0’_Y)/(N)+(VB1’_y–VB0’_y)*(posCurPU_X–posB0’_X)/(RefPU_width–N)(7)
在一个实施例中,用于M×M块或用于CU的水平以及垂直方向偏移MV被存储。例如,如果最小的仿射帧间模式或仿射合并模式块的尺寸是8x8,那么M可以等于8。对于每一8×8块或CU,如果使用左上以及右上控制点的4参数仿射模型被使用,(v1x–v0x)*N/w与(v1y–v0y)*N/w的参数以及N×N块的一个MV(如,v0x以及v0y)被存储。如果使用左上以及左下控制点的4参数仿射模型被使用,(v2x–v0x)*N/w与(v2y–v0y)*N/w的参数以及N×N块的一个MV(如,v0x以及v0y)被存储。如果使用左上、右上以及左下控制点的6参数仿射模型被使用,(v1x–v0x)*N/w、(v1y–v0y)*N/w、(v2x–v0x)*N/h、(v2y–v0y)*N/h的参数以及N×N块的一个MV(如,v0x以及v0y)被存储。N×N块的MV可以是CU/PU内的任何N×N块的MV。仿射合并候选的仿射参数可以从已存储信息来推导。
为了保留精度,偏移MV可以乘以缩放数。所述缩放数可以被预定的或者被设置为等于CTU尺寸。例如,((v1x–v0x)*S/w,(v1y–v0y)*S/w)以及((v2x–v0x)*S/h,(v2y–v0y)*S/h)被存储。S可以等于CTU_size或者CTU_size/4。
在另一个实施例中,例如,M×M块或CU的两个或三个控制点的MV被存储于线性缓冲器或局部缓冲器中,而不是存储仿射参数。控制点MV被分别存储。控制点MV不等于子块MV。仿射合并候选的仿射参数可以使用已存储控制点MV来推导。
方法5:仅使用相邻块的两个MV的仿射MVP推导
根据这一方法,HEVC MV线性缓冲器设计被重用,而不是存储当前帧中的所有MV。如图6所示,HEVC线性缓冲器包括一个MV行以及一个MV列。在另一个实施例中,如图7所示,线性缓冲器是CTU行MV线性缓冲器。上方CTU行的底部行MV被存储。
当从相邻块推导仿射候选时,相邻块的两个MV(如,相邻块的两个N×N相邻子块的两个MV,或者相邻块的两个控制点MV)被使用。例如,在图6中,对于块A,VA1以及VA3被用于推导4参数仿射参数以及推导当前块的仿射合并候选。对于块B,VB2以及VB3被用于推导4参数以及推导当前块的仿射合并候选。
在一个实施例中,块E将不被用于推导仿射候选。这一方法不需要额外的缓冲器或额外的线性缓冲器。
在另一个示例中,如图8A所示,左边CU(即,CU-A)是较大CU。如果一个MV线性缓冲器被使用(即,一个MV行以及一个MV列),VA1不被存储于线性缓冲器。VA3以及VA4被用于推导块A的仿射参数。在另一个示例中,VA3以及VA5被用于推导块A的仿射参数。在另一个示例中,VA3以及VA4与VA5的平均值被用于推导块A的仿射参数。在另一个示例中,VA3以及CU-A中右上块(称为TR-A,未在图8A中示出)被用于推导仿射参数,其中TR-A是处于2的幂的距离。在一个实施例中,VA3与TR-A的距离是2的幂。TR-A根据CU-A的位置、CU-A的高度、当前CU的位置与/或当前CU的高度来推导。例如,变量heightA被首选定义为等于CU-A的高度。然后,检查VA3块的位置-heightA是否等于或小于当前CU的左上位置的y位置。如果结果为假,heightA除以2,以及检查VA3块-heightA的位置是否等于或小于当前CU的左上位置的y位置。如果条件被满足,VA3块以及具有VA3块-heightA的位置的块被用于推导块A的仿射参数。
在图8B中,VA3以及VA4被用于推导块A的仿射参数。在另一个示例中,VA3以及VA5被用于推导块的仿射参数。在另一个示例中,VA3以及VA4与VA5的平均值用于推导块A的仿射参数。在另一个示例中,VA5以及VA6用于推导块A的仿射参数,其中这两个块的距离等于当前CU高度或宽度。在另一个示例中,VA4以及VA6用于推导块A的仿射参数,其中这两个块的距离等于当前CU高度或宽度+一个子块。在另一个示例中,VA5以及D用于推导块A的仿射参数。在另一个示例中,VA4以及D用于推导块A的仿射参数。在另一个示例中,VA4与VA5的平均值以及VA6与D的平均值用于推导块A的仿射参数。在另一个示例中,挑选距离等于子块宽度/高度乘以2的幂的两个块用于推导仿射参数。在另一个示例中,挑选距离等于子块宽度/高度乘以2的幂+一个子块宽度/高度的两个块用于推导仿射参数。在另一个示例中,CU-A中VA3以及右上块(TR-A)被用于推导仿射参数。在一个实施例中,VA3与TR-A的距离是2的幂。TR-A根据CU-A的位置、CU-A的高度、当前CU的位置与/或当前CU的高度来推导。例如,变量heightA首先被定义为等于CU-A的高度。检查VA3块的位置-heightA是否等于或小于当前CU的左上位置的y位置。如果结果为假,heightA除以2,以及检查VA3块的位置-heightA是否等于或小于当前CU的左上位置的y位置。如果条件被满足,VA3的块以及具有VA3块的位置-heightA的位置的块用于推导块A的仿射参数。在另一个示例中,VA6/D或VA6与D的平均值以及CU-A中右上块(TR-A)用于推导仿射参数。在一个实施例中。VA6与TR-A的距离是2的幂。从CU-A的位置、CU-A的高度、当前CU的位置与/或当前CU的高度推导TR-A。例如,变量heightA被首先定义为等于CU-A的高度。然后,检查VA6块的位置-heightA是否等于或小于当前CU的左上位置的y位置。如果结果为假,heightA除以2,以及检查VA6块的位置-heightA是否等于或小于当前CU的左上位置的y位置。如果条件被满足,VA6的块以及具有VA6块的位置-heightA的位置的块用于推导块A的仿射参数。
在另一个实施例中,对于图8A-8B,VA1的MV被存储在被标记为VA4的缓冲器中。那么,VA1以及VA3可以被用于推导仿射参数。在另一个示例中,这种大CU不被用于推导仿射参数。
注意到上文提到的方法使用左边CU来推导当前CU的仿射参数或控制点MV。通过使用相同/类似方法,所提出的方法也可以被用于推导来自上方CU的当前CU的仿射参数或控制点MV。即当所述当前块的相邻块对应于所述当前块的上方CU行或者所述当前块的左边CU列时,基于相邻块的两个MC推导仿射控制点MV候选。
从块B所推导的2控制点(即,4参数)仿射MVP可以被修正如下:
V0_x=VB2_x–(VB3_y–VB2_y)*(posCurPU_Y–posB2_Y)/RefPUB_width+(VB3_x–VB2_x)*(posCurPU_X–posB2_X)/RefPUB_width,
V0_y=VB2_y+(VB3_x–VB2_x)*(posCurPU_Y–posB2_Y)/RefPUB_width+(VB3_y–VB2_y)*(posCurPU_X–posB2_X)/RefPUB_width,
V1_x=V0_x+(VB3_x–VB2_x)*PU_width/RefPUB_width或者
V1_x=VB2_x–(VB3_y–VB2_y)*(posCurPU_Y–posB2_Y)/RefPUB_width+(VB3_x–VB2_x)*(posCurPU_TR_X–posB2_X)/RefPUB_width,或者
V1_x=VB2_x–(VB3_y–VB2_y)*(posCurPU_TR_Y–posB2_Y)/RefPUB_width+(VB3_x–VB2_x)*(posCurPU_TR_X–posB2_X)/RefPUB_width,
V1_y=V0_y+(VB3_y–VB2_y)*PU_width/RefPUB_width或者
V1_y=VB2_y+(VB3_x–VB2_x)*(posCurPU_Y–posB2_Y)/RefPUB_width+(VB3_y–VB2_y)*(posCurPU_TR_X–posB2_X)/RefPUB_width,或者
V1_y=VB2_y+(VB3_x–VB2_x)*(posCurPU_TR_Y–posB2_Y)/RefPUB_width+(VB3_y–VB2_y)*(posCurPU_TR_X–posB2_X)/RefPUB_width.(8)
或者,我们可以使用下方的等式:
V0_x=VB2_x–(VB3_y–VB2_y)*(posCurPU_Y–posB2_Y)/(posB3_X–posB2_X)+(VB3_x–VB2_x)*(posCurPU_X–posB2_X)/(posB3_X–posB2_X),
V0_y=VB2_y+(VB3_x–VB2_x)*(posCurPU_Y–posB2_Y)/(posB3_X–posB2_X)+(VB3_y–VB2_y)*(posCurPU_X–posB2_X)/(posB3_X–posB2_X),
V1_x=V0_x+(VB3_x–VB2_x)*PU_width/(posB3_X–posB2_X),
V1_x=VB2_x–(VB3_y–VB2_y)*(posCurPU_Y–posB2_Y)/(posB3_X–posB2_X)+(VB3_x–VB2_x)*(posCurPU_TR_X–posB2_X)/(posB3_X–posB2_X),或者
V1_x=VB2_x–(VB3_y–VB2_y)*(posCurPU_TR_Y–posB2_Y)/(posB3_X–posB2_X)+(VB3_x–VB2_x)*(posCurPU_TR_X–posB2_X)/(posB3_X–posB2_X),
V1_y=V0_y+(VB3_y–VB2_y)*PU_width/(posB3_X–posB2_X),或者
V1_y=VB2_y+(VB3_x–VB2_x)*(posCurPU_Y–posB2_Y)/(posB3_X–posB2_X)+(VB3_y–VB2_y)*(posCurPU_TR_X–posB2_X)/(posB3_X–posB2_X),或者
V1_y=VB2_y+(VB3_x–VB2_x)*(posCurPU_TR_Y–posB2_Y)/(posB3_X–posB2_X)+(VB3_y–VB2_y)*(posCurPU_TR_X–posB2_X)/(posB3_X–posB2_X).(9)
在上述等式中,VB0、VB1以及VB2可以由任何其他所选择的参考/相邻PU的对应MV所替代,(posCurPU_X,posCurPU_Y)是相对于图像的左上采样的当前PU的左上采样的像素位置,(posCurPU_TR_X,posCurPU_TR_Y)是相对于图像的左上采样的当前PU的右上采样的像素位置,(posRefPU_X,posRefPU_Y)是相对于图像的左上采样的参考/相邻PU的左上采样的像素位置,(posB0’_X,posB0’_Y)是相对于图像的左上采样的B0块左上采样的像素位置。
在一个实施例中,所提出的方法,其使用两个MV用于推导仿射参数或者仅使用存储在MV线性缓冲器中的多个MV用于推导仿射参数,被应用于相邻区域。在当前块的当前区域内,多个MV都被存储(如,相邻块的所有子块MV或所有控制点MV)以及可以用于推导仿射参数。如果多个参考MV在区域外(即,在相邻区域中),线性缓冲器(如,CTU行线性缓冲器、CU行线性缓冲器、CTU列线性缓冲器与/或CU列线性缓冲器)中的多个MV可以被使用。在不是所有控制点MV可用的情况下,6参数仿射模型被减少到4参数仿射模型。例如,相邻块的两个MV被用于推导当前块的仿射控制点MV候选。目标相邻块的多个MV可以相邻块的是左下子块MV以及右下子块MV或者相邻块的两个控制点MV。当参考MV在区域内(即,当前区域)时,6参数仿射模型或4参数仿射模型或者其他仿射模型可以被使用。
与相邻区域有关的区域边界可以是CTU边界、CTU行边界、图块(tile)边界或条带(slice)边界。例如,对于当前CTU行上方的MV,存储在一个行MV缓冲器中的多个MV(如,当前CTU行的上方行的多个MV)可以被使用(如,图7中VB0以及VB1是不可用的,但VB2以及VB3是可用的)。当前CTU行内多个MV可以被使用。如果相邻参考块(块B)在上方CTU行中(不在具有当前块的相同CTU行中),VB2以及VB3的多个子块MV被用于推导当前块的多个仿射参数或多个控制点MV或多个控制点MVP(MV预测子)。如果相邻参考块在具有当前块的相同CTU行(如,在区域内)中,相邻块的多个子块MV或者相邻块的多个控制点MV可以用于推导当前块的多个仿射参数或多个控制点MV或多个控制点MVP(MV预测子)。在一个实施例中,如果参考块在上方CTU行中,因为仅两个MV被用于推导仿射参数,4参数仿射模型用于推导仿射控制点MV。例如,相邻块的两个MV被用于当前块的推导仿射控制点MV候选。目标相邻块的多个MV可以是相邻块的左下子块MV以及右下子块MV或者相邻块的两个控制点MV。否则,6参数仿射模型或4参数仿射模型(根据相邻块中使用的仿射模型)或者其他仿射模型可以用于推导仿射控制点MV。
在另一个示例中,当前CTU以及右边CTU的上方行的多个MV、以及当前CTU行内多个MV可以被使用。左上CTU中的MV不可以被使用。在一个实施例中,如果参考块在上方CTU或右上CTU中,4参数仿射模型被使用。如果参考块在左上CTU中,仿射模型不被使用。否则,6参数仿射模型或者4参数仿射模型或者其他仿射模型可也被使用。
在另一个示例中,当前区域可以是当前CTU以及左边CTU。当前CTU中的多个MV、左边CTU中的多个MV、以及当前CTU、左边CTU以及右边CTU上方的一个MV行可以被使用。在一个实施例中,如果参考块在上方CTU行中,4参数仿射模型可以被使用,否则6参数仿射模型或者4参数仿射模型或者其他仿射模型可以被使用。
在另一个示例中,当前区域可以是当前CTU以及左边CTU。当前CTU中的多个MV、左边CTU中的多个MV、以及当前CTU、左边CTU以及右边CTU上方的一个MV行可以被使用。当前CTU的左上相邻CU不可以用于推导仿射参数。在一个实施例中,如果参考块在上方CTU行或者在左边CTU中,4参数仿射模型被使用。如果参考块在左上CTU中,仿射模型不被使用。否则,6参数仿射模型或者4参数仿射模型或者其他仿射模型可以被使用。
在另一示例中,当前区域可以是当前CTU。当前CTU中的多个MV、当前CTU的左边列的多个MV、以及当前CTU的上方行的多个MV可以被用于推导仿射参数。当前CTU的上方行的多个MV还可以包括右边CTU的上方行的多个MV。在一个实施例中,当前CTU的左上相邻CU不可以用于推导仿射参数。在一个实施例中,如果参考块在上方CTU行或者在左边CTU中,4参数仿射模型被使用。如果参考块是在左上CTU中,仿射模式不被使用。否则,6参数仿射模型或4参数仿射模型或者其他仿射模型可以被使用。
在另一个示例中,当前区域可以是当前CTU。当前CTU中的多个MV、当前CTU的左边列的多个MV、当前CTU的上方行的多个MV以及当前CTU的左上相邻MV可以用于推导仿射参数。当前CTU的上方行的多个MV还可以包括右边CTU的上方行的多个MV。注意到,在一个示例中,左边CTU的上方行的多个MV是不可用的。在另一个示例中,除了当前CTU的左上相邻MV,左边CTU的上方行的多个MV是不可用的。在一个实施例中,如果参考块在上方CTU行或在左边CTU中,4参数仿射模型被使用。否则,6参数仿射模型或4参数仿射模型或者其他仿射模型可以被使用。
在另一个示例中,当前区域可以是当前CTU。当前CTU中的多个MV、当前CTU的左边列的多个MV、当前CTU的上方行的多个MV(在一个示例中,包括右边CTU的上方行的多个MV以及左边CTU的上方行的多个MV)、以及当前CTU的左上相邻MV可以被用于推导仿射参数。在一个实施例中,当前CTU的左上相邻CU不可以用于推导仿射参数。
在另一个示例中,当前区域可以是当前CTU。当前CTU中的多个MV、当前CTU的左边列的多个MV、当前CTU的上方行的多个MV可以用于推导仿射参数。在另一个示例中,当前CTU的上方行的多个MV包括右边CTU的上方行的多个MV但不包括左边CU的上方行的多个MV。在一个实施例中,当前CTU的左上相邻CU不可以用于推导仿射参数。
对于4参数仿射模型,由如下等式的四个参数(a、b、e以及f)推导MVx以及MVy(vx以及vy):
根据目标点的x以及y位置与四个参数,vx以及vy可以被推导。在一个四参数模型中,vx的y项参数等于vy的x项参数乘以-1。vx的x项参数以及vx的y项参数是相同的。根据等式(3),a可以是(v1x–v0x)/w,b可以是–(v1y–v0y)/w,e可以是v0x,f可以是v0y
对于6参数仿射模型,由如下等式的六个参数(a、b、c、d、e以及f)推导MVx以及MVy(vx以及vy):
根据目标点的x与y位置以及六个参数,vx以及vy可以被推导。在六参数模型中,vx的y项参数以及vy的x项参数是不同的。vx的x项参数与vy的y项参数也是不同的。根据等式(3),a可以是(v1x–v0x)/w,b可以是(v2x–v0x)/h,c可以是(v1y–v0y)/w,d可以是(v2y–v0y)/h,e可以是v0x,f可以是v0y
仅使用部分MV信息(如,仅两个MV)来推导多个仿射参数或多个控制点MV/MVP的所提出的方法可以与分开存储多个仿射控制点MV的方法结合。例如,区域被首先定义。如果参考相邻块是在相同区域中(其,当前区域),所存储的参考相邻块的多个控制点MV可以用于推导仿射参数或者当前块的控制点MV/MVP。如果参考相邻块不在相同区域中(即,在相邻区域中),仅部分MV信息(如,仅相邻块的两个MV)可以用于推导当前块的仿射参数或控制点MV/MVP。如果参考相邻块不在相同区域中(即,在相邻区域中),仅部分MV信息(如,仅相邻块的两个MV)可以用于推导当前块的仿射参数或控制点MV/MVP。相邻块的两个MV可以是相邻块的两个子块MV。区域边界可以是CTU边界、CTU行边界、图块边界或条带边界。在一个示例中,区域边界可以是CTU行边界。如果相邻参考块不在相同区域中(如,相邻参考块在上方CTU行中),仅相邻块的两个MV可以用于推导仿射参数或控制点MV/MVP。两个MV可以是相邻块的左下以及右下子块MV。在一个示例中,如果相邻块双向预测块,相邻块的左下以及右下子块MV的列表0以及列表1MV可以用于推导当前块的仿射参数或控制点MV/MVP。仅4参数仿射模型被使用。如果相邻参考块在相同区域中(如,在具有当前块的相同CTU行中),所存储的相邻块的多个控制点MV可以用于推导当前块的仿射参数或控制点MV/MVP。根据相邻块中使用的仿射模型,可以使用6参数仿射模型或者4参数仿射模型或者其他仿射模型。
在这一提出的方法中,其使用两个相邻MV来推导4参数仿射候选。在另一个实施例中,我们可以使用两个相邻MV以及一个额外的MV来推导6参数仿射候选。额外的MV可以是多个相邻MV的一个或者多个时间MV的一个。因此,如果相邻块在上方CTU行中或者不在相同区域中,6参数仿射模型仍可以被用于推导当前块的仿射参数或者控制点MV/MVP。
在一个实施例中,根据仿射模式与/或相邻CU推导4或6参数仿射候选。例如,在仿射AMVP模式中,一个旗标或者一个语法被推导或者被发信来指示4或6参数被使用。旗标或语法可以在CU级、条带级、图像级或序列级中被发信。如果4参数仿射模式被使用,上述提到的方法被使用。如果6参数仿射模式被使用并且参考块的所有控制点不都是可用(如,参考块在上方CTU行中),两个相邻MV以及一个额外的MV用于推导6参数仿射候选。如果6参数仿射模式被使用以及参考块的所有控制点MV是可用的(如,参考块在当前CTU中),参考块的三个控制点MV被用于推导6参数仿射候选。
在另一个示例中,6参数仿射候选总是用于仿射合并模式。在另一个示例中,当参考仿射编码块以6参数仿射模式(如,6参数仿射AMVP模式或合并模式)进行编码时,6参数仿射候选被使用。当参考仿射编码块以4参数仿射模式进行编码时,4参数仿射候选被使用。对于推导6参数仿射候选,如果不是参考块的所有控制点MV都是可用的(如,参考块在上方CTU行中),两个相邻MV以及一个额外的MV被用于推导6参数仿射候选。如果参考块的所有控制点MV都是可用的(如,参考块在当前CTU中),参考块的三个控制点MV被用于推导6参数仿射候选。
在一个实施例中,额外的MV来自相邻MV。例如,如果上方CU的多个MV被使用,左下相邻块的MV(图9A中的A0或A1,或者扫描次序{A0到A1}或者{A1到A0}的块A0以及A1中的第一可用MV)可以被用于推导6参数仿射模式。如果左边CU的多个MV被使用,右上相邻块的MV(图9A中B0或B1,或者扫描次序为{B0到B1}或者{B1到B0}的块B0以及B1中的第一可用MV)可被用于推导6参数仿射模式。在一个示例中,如果两个相邻MV是如图6中示出的VB2以及VB3,额外的MV可以是左下角的一个相邻MV(如VA3或D)。在另一个示例中,如果两个相邻MV是VA1以及VA3,额外的MV可以是左下角中的一个相邻MV(如,VB3或VB3右边的MV)。
在另一个实施例中,额外的MV来自时间同位(temporal collocated)MV。例如,额外的MV可以是图9B中的Col-BR,Col-H,Col-BL,Col-A1,Col-A0,Col-B0,Col-B1,Col-TR。在一个示例中,当两个相邻MV来自上方或左边CU时,Col-BR或Col-H被使用。在另一个示例中,当两个相邻MV来自上方CU时,Col-BL、Col-A1或Col-A0可以被使用。在另一个示例中,当两个相邻MV来自左边CU时,Col-B0、Col-B1或者Col-TR可以被使用。
在一个实施例中,是否使用空间相邻MV或时间同位MV取决于空间相邻与/或时间同位块。在一个示例中,如果空间相邻MV是不可用的,时间同位块被使用。在另一个示例中,如果时间同位MV是不可用的,空间相邻块被使用。
控制点MV储存
在仿射运动建模中,多个控制点MV被首先推导。当前块被拆分成多个子块。从所述多个控制点MV推导每一子块的推导的代表性MV。在JEM(联合勘探测试模型)中,每一子块的代表性MV被用于运动补偿。通过使用子块的中心点推导代表性MV。例如,对于4x4块,4x4块的(2,2)采样被用于推导代表性MV。在MV缓冲器储存中,对于当前块的四个角落,四个角落的代表性MV由多个控制点MV所替代。所存储的MV被用于相邻块的MV参考。因为所存储的多个MV(如,多个控制点MV)与用于四个角落的补偿MV(如,多个代表性MV)是不同的,这会导致混淆。
在本发明中,提出在MV缓冲器中存储当前块的四个角落的代表性MV而不是控制点MV。这样,不需要再推导四个角落子块的补偿MV或者不需要四个角落的额外的MV储存。然而,因为仿射MV推导中缩放因子的分母不是2的幂的值,仿射MV推导需要被修正。修正可以根据下文得到解决。另外,等式中参考采样位置也根据本发明实施例进行修正。
在一个实施例中,当前块的多个角落(如,当前块的左上/右上/左下/右下采样)的多个控制点MV被推导为多个仿射MVP(如,AMVP MVP候选与/或仿射合并候选)。根据多个控制点MV,每一子块的代表性MV被推导并被存储。多个代表性MV被用于MV/MVP推导以及相邻块与同位块的MV编解码。
在另一个实施例中,一些角落子块的多个代表性MV被推导为多个仿射MVP。根据所述多个角落子块的所述多个代表性MV,每一子块的代表性MV被推导并被存储。所述多个代表性MV被用于MV/MVP推导以及相邻块与同位块的MV编解码。
仿射控制点MV推导的MV缩放
在本发明中,为了推导多个仿射控制点MV,MV差(如,VB2_x-VB0_x)乘以缩放因子(如,等式(8)中的(posCurPU_Y–posB2_Y)/RefPUB_width以及等式(9)中的(posCurPU_Y–posB2_Y)/(posB3_X–posB2_X))。如果缩放因子的分母是-2的幂的值,简单的乘法以及移位(shift)可以被应用。然而,如果缩放因子的分母不是-2的幂的值,需要除法。通常,除法器的实施需要许多硅面积。为了减少实施成本,除法器可以由根据本发明实施例的寻找表(look-up table)、乘法器以及移位器所替代。因为缩放因子的分母是参考块的控制点距离,值小于CTU尺寸并且与可能的CU尺寸有关。因此,缩放因子的分母的可能值被限制。例如,值可以是2的幂减去4,例如4、12、28、60或124。对于这些分母(标记为D),β值的列表可以是预定的。“N/D”可以由N*K>>L所替代,其中N是缩放因子的分子以及“>>”对应于右移位操作。L可以是固定的值。K与D相关并且可以从寻找表中推导出。例如,对于固定的L,K值取决于D并且可以使用下文的表1或表2来推导。例如,L可以是10。对于D等于{4,12,28,60,124},K值分别等于{256,85,37,17,8}
表1
表2
在另一个实施例中,缩放因子可以由使用如AMVP与/或合并候选推导中使用的MV缩放方法推导的因子所替代。MV缩放模型可以被再使用。例如,运动向量(mv)被缩放如下:
tx=(16384+(Abs(td)>>1))/td
distScaleFactor=Clip3(-4096,4095,(tb*tx+32)>>6)
mv=Clip3(-32768,32767,Sign(distScaleFactor*mvLX)*
((Abs(distScaleFactor*mvLX)+127)>>8))
在上述等式中,td等于分母以及tb等于分子。例如,在等式(9)中,tb可以是(posCurPU_Y–posB2_Y)以及td可以是(posB3_X–posB2_X)。
注意到,在本发明中,所推导的多个控制点MV或者仿射参数可以被用于帧间模式编解码作为MVP或者被用于合并模式编码作为仿射合并候选。
任何前述提出的方法可以在编码器与/或解码器中实施。例如,任何提出的方法可以在编码器的MV推导模块,与/或解码器的MV推导模块中实施。或者,任何提出的方法可以被实施为耦合到编码器的MV推导模块与/或解码器的MV推导模块的电路,以便于提供MV推导模块所需要的信息。
图10示出了结合本发明实施例的具有仿射帧间模式的视频编解码***的示例性流程图,其中基于目标相邻块的两个目标MV(运动向量)推导仿射控制点MV候选以及仿射控制点MV候选是基于4参数仿射模型。流程图中示出的步骤可以被实施为在编码器侧的一个或多个处理器(如一个或多个CPU)上可执行的程序代码。流程图中示出的步骤可以基于如一个或多个电子装置或者用于执行流程图中步骤的处理器的硬件来实施。根据这一方法,在步骤1010,在视频编码器侧接收与当前块有关的输入数据或者在视频解码器侧接收对应于包括所述当前块的压缩数据的视频比特流。在步骤1020,根据所述当前块的相邻集合决定目标相邻块,其中所述目标相邻块根据4参数仿射模型或者6参数仿射模型进行编解码。在步骤1030中,如果所述目标相邻块在所述当前块的相邻区域中,仿射控制点MV候选基于所述目标相邻块的两个目标MV(运动向量)来推导,其中所述仿射控制点MV候选是基于4参数仿射模型。在步骤1040,仿射MVP候选列表被生成,其中所述仿射MVP候选列表包括所述仿射控制点MV候选。在步骤1050,在所述视频编码器侧使用所述仿射MVP候选列表对与仿射模型有关的当前MV信息进行编码,或者在所述视频解码器侧使用所述仿射MVP候选列表对与所述仿射模型有关的所述当前MV信息进行解码。
图11示出了结合本发明实施例的具有一仿射帧间模式的视频编解码***的另一个示例性流程图,其中所述仿射控制点MV候选取决于目标相邻块是否在所述当前块的相邻区域中或者在相同区域中,基于已存储的控制点运动向量或子块运动向量来推导。根据这一方法,在步骤1110,在视频编码器侧接收与当前块有关的输入数据,或者在视频解码器侧接收对应于包括所述当前块的压缩数据的视频比特流。在步骤1120,目标相邻块根据所述当前块的相邻集合来决定,其中所述目标相邻块以仿射模式进行编解码。在步骤1130,如果所述目标相邻块在所述当前块的相邻区域中,仿射控制点MV候选基于所述目标相邻块的两个子块MV(运动向量)来推导。在步骤1140,如果所述目标相邻块在于所述当前块相同的区域中,所述仿射控制点MV候选基于所述目标相邻块的多个控制点MV来推导。在步骤1150,仿射MVP候选列表被生成,其中所述仿射MVP候选列表包括所述仿射控制点MV候选。在步骤1160,在所述视频编码器侧使用所述仿射MVP候选列表对与仿射模型有关的当前MV信息进行编码,或者在所述视频解码器侧使用所述仿射MVP候选列表对与所述仿射模型有关的所述当前MV信息进行解码。
所示出的流程图旨在说明根据本发明的视频编解码的示例。本领域技术人员可以在不背离本发明精神的情况下,修正每一步骤、重新排列步骤、拆分步骤或者组合步骤来实施本发明。在本发明中,已经使用了特定的语法以及语义来说明示例来实施本发明的实施例。在不背离本发明精神的情况下,本领域技术人员可以通过用相等的语法以及语义来替换语法以及语义来实施本发明。
所给出的以上描述使本领域技术人员能以特定应用的上下文中提供的以及其需求来实施本发明。对所描述的实施例的各种修正对本领域技术人员将是显而易见的,以及本文所定义的基本原理可以被应用于其他实施例。因此,本发明不旨在限制于所示出以及所描述的特定实施例,而是与本文所公开的原理以及新颖特征最宽的范围一致。在上述细节描述中,各种特定的细节被示出以提供本发明的透彻理解。然而,本领域技术人员将理解,可以实施本发明。
如上所描述的本发明的实施例可以以各种硬件、软件代码或其组合来实施。例如,本发明的实施例可以是集成到视频压缩芯片中的电路或者集成到视频压缩软件来执行本文所描述处理的软件代码。本发明的实施例还可以是将在数字信号处理器(DSP)上执行的程序代码来执行本文所描述的处理。本发明也可能涉及由计算机处理器、数字信号处理器、微处理器或现场可程序门阵列(FPGA)执行的许多功能。这些处理器可以用于执行根据本发明的特定任务,通过执行定义由本发明实施的具体方法的机器可读软件代码或固件代码。软件代码或固件代码可以以不同的程序语言以及不同的格式或风格来开发。软件代码也可以被编译用于不同的目标平台。然而,软件代码不同的代码格式、风格以及语言以及配置代码来执行根据本发明任务的其他方式将不背离本发明的精神以及范围。
本领域普通技术人员能够理解,本发明的实施例还可以以电子电路或处理器与存储器结合的方式实施,存储器存储呈现本发明相关任务的程序代码,视频编解码装置中的处理器通过执行储存于存储器的程序代码可以使装置执行根据本发明的方法。在一个实施例中存储器可以包括存储器可以包括一种随机存取存储器(RAM),如动态RAM(DRAM)、静态RAM(SRAM)、晶闸管RAM(T-RAM)与/或0电容RAM(Z-RAM)。或者,存储器可以包括一种只读存储器(ROM),如遮蔽ROM、可编程ROM(PROM)、可擦可编程ROM(EPROM)与/或电可擦可编程ROM(EEPROM)。或者,存储器可以包括一种非易失性随机存取存储器(NVRAM),如快速存储器、固态存储器、铁电RAM(FeRAM)、磁阻RAM(MRAM)与/或相变存储器。
在不背离本发明的精神或基本特征的情况下,本发明可以以其他特定形式实施。所描述的示例在所有方面仅被考虑是说明性的而非限制性的。因此,本发明的范围由所附权利要求而不是前述的描述来指示。在权利要求的等同含义以及范围内的所有变化都包括在其范围内。

Claims (24)

1.一种用于视频编解码的帧间预测的方法,其特征在于,所述视频编解码由利用运动向量预测来编解码MV信息的视频编码器或视频解码器来执行,所述MV信息与用包括仿射模式的编解码模式进行编解码的块有关,所述方法包括:
在视频编码器侧接收与当前块有关的输入数据或者在视频解码器侧接收对应于包括所述当前块的压缩数据的视频比特流;
从所述当前块的相邻集合决定目标相邻块,其中所述目标相邻块根据4参数仿射模型或6参数仿射模型来编解码;
如果所述目标相邻块在所述当前块的区域内,基于所述目标相邻块的控制点MV推导仿射控制点MV候选,如果所述目标相邻块在所述当前块的相邻区域,基于所述目标相邻块的两个目标MV推导仿射控制点MV候选,其中所述推导所述仿射控制点MV候选是基于4参数仿射模型;
生成仿射MVP候选列表,其中所述仿射MVP候选列表包括所述仿射控制点MV候选;以及
在所述视频编码器侧使用所述仿射MVP候选列表编码与仿射模型有关的当前MV信息,或者在所述视频解码器侧使用所述仿射MVP候选列表解码与所述仿射模型有关的所述当前MV信息。
2.如权利要求1所述的用于视频编解码的帧间预测方法,其特征在于,其中,与所述当前块的所述相邻区域有关的区域边界对应于所述当前块的CTU边界、CTU行边界、图块边界或条带边界。
3.如权利要求1所述的用于视频编解码的帧间预测方法,其特征在于,其中,所述当前块的所述相邻区域对应于所述当前块的上方CTU行或者所述当前块的左边CTU列。
4.如权利要求1所述的用于视频编解码的帧间预测方法,其特征在于,其中,所述当前块的所述相邻区域对应于所述当前块的上方CU行或者所述当前块的左边CU列。
5.如权利要求1所述的用于视频编解码的帧间预测方法,其特征在于,其中,所述目标相邻块的所述两个目标MV对应于所述目标相邻块的两个子块MV。
6.如权利要求5所述的用于视频编解码的帧间预测方法,其特征在于,其中,所述目标相邻块的所述两个子块MV对应于左下子块MV以及右下子块MV。
7.如权利要求5所述的用于视频编解码的帧间预测方法,其特征在于,其中,所述目标相邻块的所述两个子块MV被存储于线性缓冲器中。
8.如权利要求7所述的用于视频编解码的帧间预测方法,其特征在于,其中,所述当前块上方的一个行的MV以及所述当前块左侧的一个列的MV被存储于所述线性缓冲器中。
9.如权利要求7所述的用于视频编解码的帧间预测方法,其特征在于,其中,所述当前块的上方CTU行的一个底部行的MV被存储于所述线性缓冲器中。
10.如权利要求1所述的用于视频编解码的帧间预测方法,其特征在于,其中,所述目标相邻块的所述两个目标MV对应于所述目标相邻块的两个控制点MV。
11.如权利要求1所述的用于视频编解码的帧间预测方法,其特征在于,进一步包括如果所述目标相邻块在与所述当前块相同的区域中,推导所述仿射控制点MV候选以及将所述仿射控制点MV候选包含于所述仿射MVP候选列表中,其中所述推导所述仿射控制点MV候选是基于6参数仿射模型或所述4参数仿射模型。
12.如权利要求11所述的用于视频编解码的帧间预测方法,其特征在于,其中,所述相同的区域对应于相同的CTU行。
13.如权利要求1所述的用于视频编解码的帧间预测方法,其特征在于,其中,对于所述4参数仿射模型,MV x分量的y项参数等于MV y分量的x项参数乘以-1,以及MV x分量的x项参数与MV y分量的y项参数是相同的。
14.如权利要求1所述的用于视频编解码的帧间预测方法,其特征在于,其中,对于所述6参数仿射模型,MV x分量的y项参数以及MV y分量的x项参数是不同的,以及MV x分量的x项参数与MV y分量的y项参数也是不同的。
15.一种用于视频编解码的帧间预测的装置,所述视频编解码由利用运动向量预测来编解码MV信息的视频编码器或视频解码器执行,所述MV信息与用包括仿射模式的编解码模式进行编解码的块有关,其特征在于,所述装置包括一个或多个电子电路或处理器用于:
在视频编码器侧接收与当前块有关的输入数据或者在视频解码器侧接收对应于包括所述当前块的压缩数据的视频比特流;
从所述当前块的相邻集合决定目标相邻块,其中所述目标相邻块根据4参数仿射模型或6参数仿射模型来编解码;
如果所述目标相邻块在所述当前块的区域内,基于所述目标相邻块的控制点MV推导仿射控制点MV候选,如果所述目标相邻块在所述当前块的相邻区域,基于所述目标相邻块的两个目标MV推导仿射控制点MV候选,其中所述推导所述仿射控制点MV候选是基于4参数仿射模型;
生成仿射MVP候选列表,其中所述仿射MVP候选列表包括所述仿射控制点MV候选;以及
在所述视频编码器侧使用所述仿射MVP候选列表编码与仿射模型有关的当前MV信息,或者在所述视频解码器侧使用所述仿射MVP候选列表解码与所述仿射模型有关的所述当前MV信息。
16.一种用于视频编解码的帧间预测的方法,所述视频编解码由利用运动向量预测来编解码MV信息的视频编码器或视频解码器执行,所述MV信息与用包括仿射模式的编解码模式进行编解码的块有关,其特征在于,所述装置包括一个或多个电子电路或处理器用于:
在视频编码器侧接收与当前块有关的输入数据,或者在视频解码器侧接收对应于包括所述当前块的压缩数据的视频比特流;
从所述当前块的相邻集合决定目标相邻块,其中所述目标相邻块以仿射模式来编解码;
如果所述目标相邻块在所述当前块的相邻区域中,基于所述目标相邻块的两个子块MV推导仿射控制点MV候选;
如果所述目标相邻块是在与所述当前块相同的区域中,基于所述目标相邻块的多个控制点MV推导所述仿射控制点MV候选;
生成仿射MVP候选列表,其中所述仿射MVP候选列表包括所述仿射控制点MV候选;以及
在所述视频编码器侧使用所述仿射MVP候选列表编码与仿射模型有关的当前MV信息,或者在所述视频解码器侧使用所述仿射MVP候选列表解码与所述仿射模型有关的所述当前MV信息。
17.如权利要求16所述的用于视频编解码的帧间预测的方法,其特征在于,其中,与所述当前块的所述相邻区域有关的区域边界对应于所述当前块的CTU边界、CTU行边界、图块边界或条带边界。
18.如权利要求16所述的用于视频编解码的帧间预测的方法,其特征在于,其中,所述当前块的所述相邻区域对应于所述当前块的一上方CTU行或者所述当前块的左边CTU列。
19.如权利要求16所述的用于视频编解码的帧间预测的方法,其特征在于,其中,所述当前块的所述相邻区域对应于所述当前块的上方CU行或者所述当前块的左边CU列。
20.如权利要求16所述的用于视频编解码的帧间预测的方法,其特征在于,其中,所述目标相邻块的所述两个子块MV对应于左下子块MV以及右下子块MV。
21.如权利要求16所述的用于视频编解码的帧间预测的方法,其特征在于,其中,如果所述目标相邻块是双向预测块,与列表0以及列表1参考图像有关的多个左下子块MV以及多个右下子块MV被用于推导所述仿射控制点MV候选。
22.如权利要求16所述的用于视频编解码的帧间预测的方法,其特征在于,如果所述目标相邻块在于所述当前块相同的区域中,根据所述所述目标相邻块的所述仿射模式,推导所述仿射控制点MV候选是基于6参数仿射模型或者4参数仿射模型。
23.如权利要求16所述的用于视频编解码的帧间预测的方法,其特征在于,其中,所述相同的区域对应于相同的CTU行。
24.一种用于视频编解码的帧间预测的装置,所述视频编解码由利用运动向量预测来编解码MV信息的视频编码器或视频解码器执行,所述MV信息与用包括仿射模式的编解码模式进行编解码的块有关,其特征在于,所述装置包括一个或多个电子电路或处理器用于:
在视频编码器侧接收与当前块有关的输入数据,或者在视频解码器侧接收对应于包括所述当前块的压缩数据的视频比特流;
从所述当前块的相邻集合决定目标相邻块,其中所述目标相邻块以仿射模式来编解码;
如果所述目标相邻块在所述当前块的相邻区域中,基于所述目标相邻块的两个子块MV推导仿射控制点MV候选;
如果所述目标相邻块是在与所述当前块相同的区域中,基于所述目标相邻块的多个控制点MV推导所述仿射控制点MV候选;
生成仿射MVP候选列表,其中所述仿射MVP候选列表包括所述仿射控制点MV候选;以及
在所述视频编码器侧使用所述仿射MVP候选列表编码与仿射模型有关的当前MV信息,或者在所述视频解码器侧使用所述仿射MVP候选列表解码与所述仿射模型有关的所述当前MV信息。
CN201980039876.8A 2018-06-20 2019-06-20 用于视频编解码的帧间预测的方法及装置 Active CN112385210B (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201862687291P 2018-06-20 2018-06-20
US62/687,291 2018-06-20
US201862717162P 2018-08-10 2018-08-10
US62/717,162 2018-08-10
US201862764748P 2018-08-15 2018-08-15
US62/764,748 2018-08-15
PCT/CN2019/092079 WO2019242686A1 (en) 2018-06-20 2019-06-20 Method and apparatus of motion vector buffer management for video coding system

Publications (2)

Publication Number Publication Date
CN112385210A CN112385210A (zh) 2021-02-19
CN112385210B true CN112385210B (zh) 2023-10-20

Family

ID=68983449

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980039876.8A Active CN112385210B (zh) 2018-06-20 2019-06-20 用于视频编解码的帧间预测的方法及装置

Country Status (6)

Country Link
US (1) US20210297691A1 (zh)
EP (1) EP3808080A4 (zh)
KR (1) KR20210024565A (zh)
CN (1) CN112385210B (zh)
TW (1) TWI706668B (zh)
WO (1) WO2019242686A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11451816B2 (en) * 2018-04-24 2022-09-20 Mediatek Inc. Storage of motion vectors for affine prediction
WO2021202104A1 (en) * 2020-03-29 2021-10-07 Alibaba Group Holding Limited Enhanced decoder side motion vector refinement
CN113873256B (zh) * 2021-10-22 2023-07-18 眸芯科技(上海)有限公司 Hevc中邻近块的运动矢量存储方法及***

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106303543A (zh) * 2015-05-15 2017-01-04 华为技术有限公司 视频图像编码和解码的方法、编码设备和解码设备
WO2017148345A1 (en) * 2016-03-01 2017-09-08 Mediatek Inc. Method and apparatus of video coding with affine motion compensation
WO2017156705A1 (en) * 2016-03-15 2017-09-21 Mediatek Inc. Affine prediction for video coding
WO2017157259A1 (en) * 2016-03-15 2017-09-21 Mediatek Inc. Method and apparatus of video coding with affine motion compensation
WO2018061563A1 (ja) * 2016-09-27 2018-04-05 シャープ株式会社 アフィン動きベクトル導出装置、予測画像生成装置、動画像復号装置、および動画像符号化装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2561507B (en) * 2016-01-07 2021-12-22 Mediatek Inc Method and apparatus for affine merge mode prediction for video coding system
US10560712B2 (en) * 2016-05-16 2020-02-11 Qualcomm Incorporated Affine motion prediction for video coding
US10448010B2 (en) * 2016-10-05 2019-10-15 Qualcomm Incorporated Motion vector prediction for affine motion models in video coding

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106303543A (zh) * 2015-05-15 2017-01-04 华为技术有限公司 视频图像编码和解码的方法、编码设备和解码设备
WO2017148345A1 (en) * 2016-03-01 2017-09-08 Mediatek Inc. Method and apparatus of video coding with affine motion compensation
WO2017156705A1 (en) * 2016-03-15 2017-09-21 Mediatek Inc. Affine prediction for video coding
WO2017157259A1 (en) * 2016-03-15 2017-09-21 Mediatek Inc. Method and apparatus of video coding with affine motion compensation
TW201739252A (zh) * 2016-03-15 2017-11-01 聯發科技股份有限公司 具有仿射運動補償的視訊編碼的方法以及裝置
WO2018061563A1 (ja) * 2016-09-27 2018-04-05 シャープ株式会社 アフィン動きベクトル導出装置、予測画像生成装置、動画像復号装置、および動画像符号化装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HEVC帧间预测编码的研究;李峰;《中国优秀硕士学位论文全文库》;全文 *
Roman C. Krodasiewicz ; Michael D. Gallant ; et.al..Affine Prediction as a Post Processing Stage.《2007 IEEE International Conference on Acoustics, Speech and Signal Processing-ICASSP'07》.2007,I1193-I1196. *

Also Published As

Publication number Publication date
WO2019242686A1 (en) 2019-12-26
CN112385210A (zh) 2021-02-19
TW202015405A (zh) 2020-04-16
US20210297691A1 (en) 2021-09-23
EP3808080A1 (en) 2021-04-21
EP3808080A4 (en) 2022-05-25
TWI706668B (zh) 2020-10-01
KR20210024565A (ko) 2021-03-05

Similar Documents

Publication Publication Date Title
US11750818B2 (en) Inter-prediction mode based image processing method, and apparatus therefor
US10856006B2 (en) Method and system using overlapped search space for bi-predictive motion vector refinement
US11375226B2 (en) Method and apparatus of video coding with affine motion compensation
TWI617185B (zh) 具有仿射運動補償的視訊編碼的方法以及裝置
CN113170181B (zh) 块内拷贝模式中的仿射继承方法
US11109062B2 (en) Method and apparatus of motion refinement based on bi-directional optical flow for video coding
WO2017148345A1 (en) Method and apparatus of video coding with affine motion compensation
CN113039802B (zh) 基于历史的仿射参数的使用
CN112544082B (zh) 一种视频编解码的帧间预测方法及装置
KR102607852B1 (ko) 비디오 코딩을 위한 모션 벡터 차이와의 향상된 병합의 방법 및 장치
CN112385210B (zh) 用于视频编解码的帧间预测的方法及装置
CN113841396B (zh) 简化的局部照明补偿
CN113785586B (zh) 用于视频编解码***的简化仿射子块处理的方法及装置
CN116708814A (zh) 由视频编码器以及解码器执行的视频编解码方法及装置
CN111201795A (zh) 存储访问窗口和用于运动矢量修正的填充
CN112970250A (zh) 视频编码的多重假设方法和装置
CN112135145A (zh) 一种编解码方法、装置及其设备
KR20200109364A (ko) 비디오 코딩 시스템을 위한 아핀 인터 예측 방법 및 장치
US20230239461A1 (en) Inter coding for adaptive resolution video coding
CN116456110A (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
TA01 Transfer of patent application right

Effective date of registration: 20220425

Address after: Hsinchu County, Taiwan, China

Applicant after: MEDIATEK Inc.

Address before: 1 Duxing 1st Road, Hsinchu Science Park, Hsinchu, Taiwan, China

Applicant before: MEDIATEK Inc.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant