CN110476424A - 用于视频编解码的基于双向光流的运动细化的方法及装置 - Google Patents
用于视频编解码的基于双向光流的运动细化的方法及装置 Download PDFInfo
- Publication number
- CN110476424A CN110476424A CN201880017432.XA CN201880017432A CN110476424A CN 110476424 A CN110476424 A CN 110476424A CN 201880017432 A CN201880017432 A CN 201880017432A CN 110476424 A CN110476424 A CN 110476424A
- Authority
- CN
- China
- Prior art keywords
- block
- gradient
- reference block
- demarcation
- line
- 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.)
- Granted
Links
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/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- 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/523—Motion estimation or motion compensation with sub-pixel accuracy
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种使用双向光流(Bi‑directional optical flow,BIO)的方法及装置,其用于真实双向预测块。根据本发明的方法,公开了免除法的双向光流流程,其中使用包括右移而无任何除法操作的操作推导出x运动偏移和y运动偏移。根据另一方法,透过将双向光流流程应用到参考块,生成用于当前块的细化预测子,其中应用双向光流流程包括将分界线条件依存双向光流流程有条件地应用到与参考块相关的分界线像素。
Description
相关引用
本发明主张在2017年03月16日提出的第62/472,002号的美国临时专利申请、在2017年03月22日提出的第62/474,702号的美国临时专利申请、在2017年04月01日提出的第62/480,359号的美国临时专利申请的优先权,以上申请案整体以引用的方式并入本文。
技术领域
本发明涉及使用双向光流(bi-directional optical flow,BIO)的运动补偿,以细化用于双向预测块的运动。具体地,本发明涉及与双向光流相关的频宽的降低和复杂度的降低。
背景技术
双向光流
双向光流是JCTVC-C204(E.Alshina,et al.,Bi-directional optical flow,Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG 16WP 3and ISO/IECJTC 1/SC 29/WG 11,3rd Meeting:Guangzhou,CN,7-15October,2010,Document:JCTVC-C204)和VCEG-AZ05(E.Alshina,et al.,Known tools performance investigation fornext generation video coding,ITU-T SG 16Question 6,Video Coding Experts Group(VCEG),52nd Meeting:19–26June 2015,Warsaw,Poland,Document:VCEG-AZ05)中公开的运动估计/运动补偿技术。如图1所示,双向光流基于光流和稳定运动的假设推导出样本层运动细化(refinement),其中B片段(slice)(即双向预测(bi-prediction)片段)120中的当前像素122由参考图像0(即130)中的一个像素和参考图像1(即110)中的一个像素预测。如图1所示,当前像素122由参考图像1(即110)中的像素B(即112)和参考图像0(即130)中的像素A(即132)预测。在图1中,vx和vy是x方向和y方向的像素位移向量,其是使用双向光流模型推导出的。双向光流仅被使用以用于真实双向预测块,其可以自对应于先前图像和在后图像的两个参考图像预测。在VCEG-AZ05中,双向光流采用5x5窗口以推导出每个样本的运动细化。因此,对于NxN块,(N+4)x(N+4)块的运动补偿结果和相应的梯度信息被需要,以推导出用于NxN块的基于样本的运动细化。根据VCEG-AZ05,6抽头(Tap)梯度滤波器和6抽头插值滤波器被用于生成双向光流的梯度信息。因此,双向光流的计算复杂度比传统的双向预测的计算复杂度高得多。为了进一步提高双向光流的性能,提出了如下方法。
在HEVC中的传统的双向预测中,使用方程式(1),生成预测子,其中P(0)和P(1)分别是列表0预测子和列表1预测子。
PConventional[i,j]=(P(0)[i,j]+P(1)[i,j]+1)>>1 (1)
在JCTVC-C204和VECG-AZ05中,使用方程式(2),生成双向光流预测子。
POpticalFlow=(P(0)[i,j]+P(1)[i,j]+vx[i,j](Ix (0)-Ix (1)[i,j])+vy[i,j](Iy (0)-Iy (1)[i,j])+1)>>1 (2)
在方程式(2)中,Ix (0)和Ix (1)分别表示列表0预测子和列表1预测子中的x方向梯度;Iy (0)和Iy (1)分别表示列表0预测子和列表1预测子中的y方向梯度;vx和vy分别表示x方向的偏移和y方向的偏移。vx和vy的推导流程如下所示。首先成本函数被定义成diffCost(x,y),以查找最佳值vx和vy。为了查找最佳值vx和vy,以最小化成本函数diffCost(x,y),一个5x5窗口被使用。vx和vy的解法可以透过使用S1,S2,S3,S5和S6来表示。
最小成本函数mindiffCost(x,y)可以根据如下推导出:
透过求解方程式(3)和方程式(4),根据方程式(5)可以解得vx和vy:
其中,
在上述方程式中,对应于列表0图像中位于(x,y)处的像素的x方向梯度,对应于列表1图像中位于(x,y)处的像素的x方向梯度,对应于列表0图像中位于(x,y)处的像素的y方向梯度,对应于列表1图像中位于(x,y)处的像素的y方向梯度。
在一些相关技术中,S2可以被忽略,并且根据如下可以解得vx和vy:
其中,
根据上述方程式,在vx和vy的推导中,除法操作被需要。由于S1,S2,S3,S5和S6中存在很多像素值的累加及平方,所需要的比特深度较大。如果视频序列中的像素值的比特深度是10比特,支持vx的32比特/28比特的一个除法器和支持vy的36比特/29比特的另一除法器将被需要。如果比特深度由分数插值滤波器进行增加,则这些除法器将变成vx的40比特/36比特和vy的44比特/37比特。当所需要的比特深度变得如此之大时,直接使用查找表(look-up-table,LUT)以替换除法是不实用的。因此,需要开发方法以在双向光流流程中简化除法操作。
在上述方程式中,参数S1,S2,S3,S5和S6与x方向梯度和y方向梯度相关。例如,S1是计算列表0中的参考块的x方向梯度与列表1中的参考块的x方向梯度的总和得出的。总和的平方用作S1。S5是计算列表0中的参考块的y方向梯度与列表1中的参考块的y方向梯度的总和得出。总和的平方用作S5。为了简便,在本发明中,参数S1,S2,S3,S5和S6称为梯度参数。实际上,梯度参数S1,S2,S3,S5和S6经常使用具有预定义比特深度的固定点表示。vx和vy的推导将需要乘法操作、加法操作和除法操作。在这些操作中,除法操作在实施方面更耗成本。
在VCEG-AZ05中,双向光流在HEVC参考软件的顶部实施,并且其总是应用于以真实双向而被预测的这些块(即,真实双向预测块)。在HEVC中,用于亮度分量的一个8抽头插值滤波器和用于色度分量的一个4抽头插值滤波器用于执行分数运动补偿。在双向光流中,考虑到一个5x5窗口以用于双向光流中的一个8x8编码单元(coding unit,CU)中的一个待处理像素,最差情况中所需带宽自每当前像素(8+7)x(8+7)x 2/(8x8)=7.03个参考像素增加到每当前像素(8+7+4)x(8+7+4)x 2/(8x8)=11.28个参考像素。在JVET D0042(A.Alshin,et al.,“AHG6:On BIO memory bandwidth”,Joint Video Exploration Team(JVET)ofITU-T SG 16WP 3and ISO/IEC JTC 1/SC 29/WG 11,4th Meeting:Chengdu,CN,15–21October 2016,Document:JVET-D0042)中,为了降低所需带宽,如果这些像素是位于当前块之外,则包括运动补偿像素和x方向梯度和y方向梯度的所需数据将被设置成0。如图2所示,中心方形是用于当前块的原始运动补偿块(MC block)(即210),双向光流流程需要区域A(即220)和区域B(即230)中的预测子和相应的梯度来分别推导出位移,以为了透过使用所推导出的位移和梯度来进一步细化预测子。在JVET D0042中,来自于区域A(即220)和区域B(即230)的数据将被设置成0,以为了节省所需带宽。由于梯度自额外的6抽头滤波器生成,透过使用与原始HEVC中相同的区域,梯度和运动补偿像素可以被生成。因此,透过使用JVETD0042中的方法,双向光流流程中不存在额外的带宽需求。
在D0042中,如果子块运动补偿被使用,则区域A(即220)和区域B(即230)中的系数跳过将被应用于每个子块。然而,如果两个相邻子块具有相同的运动向量(motion vector,MV),则这两个子块不能被合并成更大块以用于双向光流流程,是因为两个独立的子块的最终结果和一个合并块的结果因系数跳过而不相同。例如,系数跳过可以被应用于独立子块流程中的这两个子块之间的内部分界线,而系数跳过不被应用于合并块流程中的内部分界线。
然而,相对于原始运动补偿设计,使用额外的6抽头滤波器来生成x方向梯度和y方向梯度是复杂的。两个额外的6抽头滤波器将被需要:一个用于生成梯度,另一个用于当运动向量是分数时执行插值。此外,VCEG-AZ05中也提出了基于块的流程,以降低所需计算复杂度。因此,下面将说明较低复杂度的双向光流。在较低复杂度双向光流中,基于块的推导流程被使用,而非基于像素的推导流程,其中每个块被分割成4x4块(在本发明中称为双向光流块)以用于基于块的双向光流流程。在原始双向光流中,5x5窗口用于推导出用于每个像素的运动。在基于块的双向光流中,6x6窗口用于每个4x4块,以推导出用于此块的运动。根据较低复杂度的双向光流,透过将具有等于[-1,0,1]的系数的3抽头滤波器应用到运动补偿像素,梯度的计算也被简化。在图2中,更小块250对应于用于基于块的双向光流的4x4块。虚线块260对应于6x6窗口,以用于推导出与4x4块相关的运动信息。对于此窗口内的每个像素,预测子和梯度得被计算出。对于{-1,0,1}梯度滤波器,用于位于窗口260的左上角处的像素240的x方向梯度和y方向梯度需要如图2中的黑色点所示的周围像素。因此,所需带宽与原始双向光流中的所需带宽相同,但是不需要额外的6抽头滤波器,并且透过使用基于块的推导流程,降低了计算复杂度。需要开发方法以降低所需内存带宽,且进一步提高较低复杂度的双向光流的编解码性能。
在使用运动补偿帧间预测的典型的视频编解码系统中,运动信息通常自编码器侧发送到解码器,使得解码器可以正确地执行运动补偿帧间预测。在此系统中,运动信息将消耗一些已编解码比特。为了提高编解码效率,VCEG-AZ07(Jianle Chen,et al.,Furtherimprovements to HMKTA-1.0,ITU-Telecommunications Standardization Sector,StudyGroup 16Question 6,Video Coding Experts Group(VCEG),52nd Meeting:19–26June2015,Warsaw,Poland)中公开了解码器侧的运动向量推导方法。根据VCEG-AZ07,解码器侧运动向量推导方法使用两个帧率上转换(Frame Rate Up-Conversion,FRUC)模式。帧率上转换模式中的一个称为双边匹配,以用于B片段,帧率上转换模式中的另一个称为范本匹配,以用于P片段或者B片段。
重叠块运动补偿(Overlapped Block Motion Compensation,OBMC)
根据线性最小均方误差(Linear Minimum Mean Squared Error,LMMSE)标准,重叠块运动补偿是一种运动补偿技术,其基于自其附近块运动向量推导出的运动补偿标示,估计像素的强度值。从估计理论角度来看,这些运动向量被视为不同的合理假设以用于其真实运动,并最大化编解码效率。这些运动向量的权重应最小化受单元增益约束的均方预测误差。
当发展了高效视频编码(High Efficient Video Coding,HEVC)时,为了提供编解码增益,提出了几种编解码技术。下面描述其中一些。
在JCTVC-C251中,重叠块运动补偿被应用到几何分割。在几何分割中,非常有可能的是变换块包括属于不同分割的像素。在几何分割中,由于两个不同运动向量用于运动补偿,位于分割分界线处的像素可以具有较大的非连续性,其可能产生类似于块效应(blockiness)的视觉伪影。这将降低变换编解码效率,假设存在由几何分割创建的两个区域,其用区域1和区域2来表示。如果四个相连相邻像素(左、顶、右和底)中的一个属于区域2(区域1),来自于区域1(区域2)的像素被定义成分界线像素。图3标出了区域分割的示例,其中块310被分割成跨过区域分界线320的区域1和区域2。像素330表示区域1分界线像素,像素340表示区域2分界线像素。如果像素是分界线像素,则使用来自于两个运动向量的运动预测的加权和来执行运动补偿。加权是3/4,以用于使用包括分界线像素的区域的运动向量的预测,以及1/4,以用于使用另一区域的运动向量的预测。从BD率(BD-rate)增益的角度看,重叠分界线可提高重构视频的视觉质量,也提高了编解码效率。
在JCTVC-F299中,重叠块运动补偿被应用到对称运动分割。如果编码单元被分割成两个2NxN或Nx2N预测单元(prediction unit,PU),则重叠块运动补偿被应用到这两个2NxN预测块的水平分界线,以及应用到这两个Nx2N预测块的垂直分界线。由于这些分割可能具有不同的运动向量,位于分割分界线处的像素可能具有较大的非连续性,其可能会引起视觉伪影,并且也会降低变换/编解码效率。在JCTVC-F299中,重叠块运动补偿被引进以平滑运动分割的分界线。
图4A示出了用于2NxN分割的重叠块运动补偿的示例,图4B示出了用于Nx2N分割的重叠块运动补偿的示例。线填充型像素表示属于分割0的像素,空白型像素表示属于分割1的像素。亮度分量中的重叠区域被定义成分别在水平分割线或垂直分割线的每侧处的像素的两列或两行。对于与分割分界线相邻的像素列或像素行(即被标记为图4A和图4B中的A的像素),重叠块运动补偿加权因子为(3/4,1/4)。对于远离分割分界线的两列或者两行的像素(即图4A和图4B中被标记为B的像素),重叠块运动补偿加权因子是(7/8,1/8)。对于色度分量,重叠区域被定义成分别在水平分割线或垂直分割线的每侧处的像素的一列或一行,并且加权因子是(3/4,1/4)。
当前,用于两个编码单元或者预测单元之间的重叠区域的运动补偿结果由位于用于当前编码单元或者预测单元的正常运动补偿流程之后的另一运动补偿流程产生。因此,在这两个运动补偿流程中,双向光流被应用两次,以分别细化这两个运动补偿结果。当两个相邻运动向量相同时,上述流程顺序可以有助于跳过冗余重叠块运动补偿流程和双向光流流程。然而,相对于整合重叠块运动补偿流程和正常运动补偿流程,用于重叠区域的所需带宽和运动补偿操作被增加。例如,当前预测单元尺寸是16x8,重叠区域是16x2,运动补偿中的插值滤波器是8抽头(tap)。如果重叠块运动补偿在正常运动补偿之后执行,将需要用于当前预测单元和相关重叠块运动补偿的每个参考列表(16+7)x(8+7)+(16+7)x(2+7)=552个参考像素。如果重叠块运动补偿操作与正常运动补偿整合,将仅需要用于当前预测单元和相关重叠块运动补偿的每个参考列表(16+7)x(8+2+7)=391个参考像素。因此,当双向光流和重叠块运动补偿被同时使用时,需要降低双向光流的计算复杂度或者内存带宽。
发明内容
本发明公开了一种使用双向光流的方法及装置,其用于真实双向预测块。根据本发明的方法,接收与当前图像中的当前块相关的输入数据,其中使用双向预测编解码当前块。确定来自于参考图像列表0的第一参考图像中与当前块相关的第一参考块以及来自于参考图像列表1的第二参考图像中与当前块相关的第二参考块,其中第一参考块和第二参考块由真实双向运动向量所指向。基于第一参考块推导出多个第一x梯度和多个第一y梯度,并基于第二参考块推导出多个第二x梯度和多个第二y梯度。基于多个第一x梯度、多个第一y梯度、多个第二x梯度、多个第二y梯度、第一参考块的多个第一像素值、第二参考块的多个第二像素值或者其组合,推导出梯度参数集,其中所有梯度参数使用固定点表示。使用包括右移而无任何除法操作的多个操作推导出x运动偏移和y运动偏移,其中x运动偏移对应于第一分子除以第一分母,y运动偏移对应于第二分子除以第二分母,并且第一分子、第一分母、第二分子和第二分母自两个梯度参数的乘积的线性组合或者多个梯度参数的线性组合生成。根据第一参考块、第二参考块、多个第一x梯度与多个第一y梯度、多个第二x梯度与多个第二y梯度、x运动偏移、y运动偏移或者其组合,生成用于当前块的细化预测子。基于细化预测子,编码或解码当前块。
本方法还可以包括:确定第一分母的第一MSB位置Nx和第二分母的第二MSB位置Ny,其中使用包括右移第一分子和第一分母Nx比特,以及右移第二分子和第二分母Ny比特的多个操作,推导出x运动偏移。(2Px/2(K-1))的多个值可以被存储在第一查找表中,并且(2Py/2(K -1))的多个值可以被存储在第二查找表中,其中2(K-1)对应于第一分母和第二分母的多个可能值,并且x运动偏移是使用包括乘法和右移Px比特的多个操作推导出,y运动偏移是使用包括乘法和右移Py比特的多个操作推导出。在一个实施例中,第一查找表与第二查找表相同。在另一实施例中,第一查找表与第二查找表不相同。在一个实施例中,K对应于1。右移第一分子和第一分母Nx比特,或者右移第二分子和第二分母Ny比特可以使用舍入偏移(rounding offset)。
本发明也公开了一种非暂时性计算机可读介质,存储有多个程序指令,使得装置的处理电路执行上述视频编解码方法。如上所述,本方法包括:接收输入数据;确定第一参考块和第二参考块;基于第一参考块,推导出多个第一x梯度和多个第一y梯度,并基于第二参考块,推导出多个第二x梯度和多个第二y梯度;推导出梯度参数集;推导出x运动偏移和y运动偏移;生成细化预测子;以及基于细化预测子,编码或解码当前块。
根据另一方法,在确定第一参考块和第二参考块之后,透过将双向光流流程应用到第一参考块和第二参考块,生成用于当前块的细化预测子,其中应用双向光流流程包括:基于块分界线条件或者子块分界线条件,将分界线条件依存双向光流流程有条件地应用到与第一参考块和第二参考块相关的多个分界线像素,其中分界线条件依存双向光流流程包括:填充常规双向光流流程所需要的不可用数据,或者透过修改常规双向光流流程跳过不可用数据。不可用数据对应于常规双向光流流程所需要的目标数据,但自第一参考块和第二参考块不可用。基于细化预测子,编码或解码当前块。
目标数据可以对应于来自于第一参考块和第二参考块的目标参考数据、目标参考数据的多个梯度、运动补偿目标参考数据或者其组合。在一个实施例中,若多个分界线像素对应于当前块的多个块分界线,则将分界线条件依存双向光流流程应用到多个分界线像素,以及若多个分界线像素对应于当前块的多个运动补偿块分界线,则不将分界线条件依存双向光流流程应用到多个分界线像素。在另一实施例中,若多个分界线像素对应于具有两个不同的运动矢量向量的两个相邻子块之间的子块分界线,两个垂直相邻子块之间的水平子块分界线,或者两个水平相邻子块之间的垂直子块分界线,则将分界线条件依存双向光流流程应用到多个分界线像素。在又一实施例中,若多个分界线像素对应于具有相同的运动矢量向量的两个相邻子块之间的子块分界线,具有相同的运动矢量向量的两个水平相邻子块之间的垂直子块分界线,或者具有相同的运动矢量向量的两个垂直相邻子块之间的水平子块分界线,则不将分界线条件依存双向光流流程应用到多个分界线像素。
本发明也公开了一种非暂时性计算机可读介质,存储有多个程序指令,使得一装置的处理电路执行上述视频编解码方法。如上所述,本方法包括:接收输入数据;确定第一参考块和第二参考块;透过应用双向光流流程,生成用于当前块的细化预测子,其中应用双向光流流程包括将分界线条件依存双向光流流程有条件地应用到分界线像素;以及基于细化预测子,编码或解码当前块。
附图说明
图1是双向光流以推导出用于运动细化的偏移运动向量的示例。
图2是用于推导出与双向光流相关的梯度和位移的运动补偿块及其相邻像素。
图3是区域分割的示例,其中块被分割成跨过区域分界线的区域1和区域2。
图4A是用于2NxN分割的重叠块运动补偿的示例。
图4B是用于Nx2N分割的重叠块运动补偿的示例。
图5A是位移继承的示例,其中当前编码单元的位移自相邻编码块复制。
图5B是位移继承的示例,其中当前编码单元的位移自相邻子块复制。
图6是根据本发明实施例的使用双向光流以细化用于双向预测块的运动的视频编解码系统的示例性流程图,其中使用右移而无需除法操作推导出偏移。
图7是根据本发明实施例的使用双向光流以细化用于双向预测块的运动的视频编解码系统的示例性流程图,其中基于块分界线条件或者子块分界线条件,分界线条件依存双向光流流程被有条件地应用到与参考块相关的分界线像素。
具体实施方式
以下描述为本发明的较佳实施例。以下实施例仅用来举例阐释本发明的技术特征,并非用以限定本发明。本发明的保护范围当视权利要求书所界定为准。
如上所述,双向光流和双向光流结合重叠块运动补偿需要访问额外的参考数据,其会引起增加的系统带宽。这些流程也增加了计算复杂度。在本发明中,公开了与双向光流和双向光流与重叠块运动补偿相关的降低系统带宽和/或计算复杂度的技术。
免除法的双向光流流程
如前面所述,如方程式(5)和方程式(6)所示,双向光流流程需要推导出偏移vx和偏移vy。所需计算量相当大。具体地,基于梯度参数,除法操作被需要以推导出偏移vx和偏移vy。现有技术中已知的是,涉及除法操作的计算复杂度比加法操作和乘法操作的计算复杂度高很多。因此,需要避免除法操作。
相应地,公开了一种方法,以使用动态右移来降低在除法流程中的所需比特深度,或者减少除法流程。所提出的方法首先确定分母的最高有效比特(Most Significant Bit,MSB)位置,并使用右移N比特操作,仅保留分母的前K个MSB比特。同时,分子也右移N比特。分母的可能值变成2(K-1),并且(2P/2(K-1))的值可以被预先计算和存储在查找表中。因此,如下方程序所示,透过使用乘法和右移P比特,除法操作可以被替代:
vx=((S3>>Nx)x LUT[(S1>>Nx)])>>Px,以及
vy=((S6-vxS2)>>Ny)x LUT[(S5>>Ny)])>>Py。
在上述方程式,vx和Ny分别表示与右移分母S1和分母S5相关的比特数量。Px和Py分别表示与右移用于vx和vy的查找表相关的比特数量。用于vx和vy的查找表可以相同或者不同。在一个实施例中,当执行右移操作时,舍入(rounding)偏移可以被添加。在另一实施例中,仅分母的第一MSB比特被保留。在这种情况中,K对应于1,仅动态右移被需要以替代双向光流流程中的除法。
重叠块运动补偿区域中的偏移vx和偏移vy重新使用
在双向光流流程中,较小位移(displacement)(在本发明中也称为偏移),即vx和vy基于x方向和y方向中的像素值的梯度而被推导出,并用于细化运动补偿预测子。此推导可以是基于块的操作或者基于像素的操作。为了降低相关重叠块运动补偿流程与双向光流的计算复杂度,根据本方法,正常运动补偿流程中的较小位移用于重叠块运动补偿区域中的这些块或者像素。换言之,在相关重叠块运动补偿流程与双向光流中,较小位移可以自正常运动补偿流程中复制或者继承。例如,正常运动补偿区域中的分界线像素或者块的较小位移可以直接用于相关重叠块运动补偿区域中的这些像素或者块。图5A示出了位移继承的示例,其中当前编码单元的位移可以用于相邻编码单元。例如,当前编码单元510的位移可以用于相邻块512;当前编码单元520的位移可以直接用于相邻块522或者相邻块524。图5B示出了位移继承的示例,其中当前块530的位移可以用于相邻子块。例如,当前块530的位移可以用于相邻子块532、相邻子块534、相邻子块536或者相邻子块538。
重叠块运动补偿和双向光流的处理顺序
当前,重叠块运动补偿和双向光流的处理顺序是先使用双向光流细化运动补偿预测子,然后使用重叠块运动补偿混合两个已细化运动补偿预测子。根据本方法,处理顺序被改变以降低计算复杂度。根据本方法,重叠块运动补偿混合先被执行,以生成新的运动补偿预测子,随后双向光流流程被使用。因此,双向光流流程可以自两次减少到一次。
双向光流的带宽降低
在较低复杂度的双向光流流程中,系数等于[-1,0,1]的3抽头滤波器已对运动补偿像素使用。在较低复杂度的双向光流中,来自于图2中的区域A(即220)和区域B(即230)的运动补偿像素用于计算梯度,并且这些梯度用于推导出位移并细化最终预测子。如图2所示,来自于区域A(即220)和区域B(即230)的运动补偿像素位于运动补偿块210的分界线之外。为了降低带宽,用于位于编码单元分界线处的像素的梯度计算被修改,以避免来自于区域A(即220)和区域B(即230)的数据的需求。例如,滤波器系数等于[-1,1]的2抽头滤波器用于生成用于位于编码单元分界线处的这些像素的梯度。由于梯度计算不相同,基于滤波器抽头距离,需要一些归一化。在另一实施例中,双向光流细化被跳过以用于位于编码单元分界线处的这些像素。
用于双向光流流程的块尺寸选择
在较低复杂度的双向光流中,基于块的推导流程被使用,而非基于像素的推导流程,其可以很大程度上降低计算复杂度。然而,使用一个预定义的块尺寸不会实现具有不同分辨率和不同内容的视频的最佳编解码增益。根据本方法,块尺寸可以基于视频分辨率或者视频内容的特征。例如,对于一些光滑区域,块尺寸应足够大以包括更多纹理以用于推导出准确的位移。然而,对于一些复杂的纹理或者运动区域,块尺寸应较小以适应局部化(localization)。因此,在一个实施例中,块尺寸基于视频分辨率。在另一实施例中,块尺寸基于编码单元尺寸。例如,当编码单元尺寸较小时,较小的块尺寸被使用。在另一实施例中,块尺寸基于子块运动分割的使用。如果使用子块运动分割编解码当前编码单元,则更小的块尺寸用于双向光流。在另一实施例中,块尺寸基于运动补偿像素。例如,如果运动补偿像素的变化较大,或者运动补偿(motion-compensated,MC)区域中存在一些强边缘,则更小的块尺寸用于双向光流。上述方法可以被结合,以在双向光流流程中隐性地确定块尺寸,或者在位于序列层、图像层、片段层、编码树单元(Coding Tree Unit,CTU)层或者编码单元层处的比特流中显性地标示所选择的块尺寸。
分界线条件依存双向光流流程(Boundary Condition Dependent BIO Process)
为了解决联合或者单独处理子块的不同结果的问题,公开了分界线条件依存双向光流流程。本双向光流分界线流程依存于块分界线条件/子块分界线条件。本双向光流分界线流程指的是使用分界线区域的双向光流流程。如前面所述,如图2所示,双向光流流程需要来自位于当前块之外的像素。对于运动补偿,位于当前块之外的参考数据将被需要,以支持分数运动向量。如图2所示,运动补偿块210被需要以支持分数运动向量。为了执行滤波并推导出梯度,双向光流流程可能需要位于运动补偿区域之外的额外的参考数据。基于双向光流子块处理是否被联合或单独执行,所需的数据区域可能会不同。为了解决不同的数据需求,本发明公开了分界线条件依存双向光流流程。当所需数据(称为所需区域)不可用时,分界线条件依存双向光流流程可以填充(pad)或跳过不可用数据。数据可以对应于参考像素、梯度、运动补偿结果或者其组合。当所需数据不可用时,不可用数据可以被填充。数据填充在视频和图像处理的技术中是已知的。例如,透过重复分界线像素、镜像重复分界线像素或者使用预定义像素值,不可用数据可以被填充。透过跳过不可用数据,不可用数据也可以不被使用。例如,当所需数据不在“可用区域中”时,位于分界线处的双向光流流程可以被修改,而不是透过在双向光流流程中填充来改变数据源。因此,所需数据“被跳过”,以避免对不可用数据的需要。例如,如果在双向光流的插值流程中位于可用区域之外的参考像素被需要,则本方法的一个实施例可以改变插值流程(例如,缩小滤波器抽头、跳过一个插值滤波器系数等),以避免使用这些参考像素。又例如,如果在双向光流的梯度计算中位于可用区域之外的运动补偿像素被需要,本方法的一个实施例可以改变梯度流程(例如,修改梯度的计算、设置梯度等于0等),以避免生成这些运动补偿像素的需要。再例如,如果位于可用区域之外的梯度在双向光流的推导流程中被需要,则本方法的一个实施例可以改变推导流程(例如,缩小窗口尺寸、跳过梯度等),以避免生成这些梯度的需要。
在一个实施例中,如果分界线是编码单元分界线/预测单元分界线,则填充参考像素、梯度或补偿结果、或者跳过系数、参考像素、梯度或补偿结果被使用。如果分界线是子块分界线且相邻运动向量相同,则填充参考像素、梯度或补偿结果、或者跳过系数、参考像素、梯度或补偿结果不被使用。如果分界线是子块分界线且相邻运动向量不相同,则填充参考像素、梯度或补偿结果、或者跳过系数、参考像素、梯度或补偿结果被使用。因此,联合或单独处理子块的结果将是相同的。
在另一实施例中,如果分界线是编码单元分界线/预测单元分界线,则填充参考像素、梯度或补偿结果、或者跳过系数、参考像素、梯度或补偿结果被使用,以节省内存带宽。如果分界线是垂直子块分界线(即两个水平相邻的子块之间的分界线)且相邻运动向量相同,则填充参考像素、梯度或补偿结果、或者跳过系数、参考像素、梯度或补偿结果不被使用。如果分界线是子块分界线且相邻运动向量不相同,或是水平子块分界线,则填充参考像素、梯度或补偿结果、或者跳过系数、参考像素、梯度或补偿结果被使用。因此,联合或单独处理子块的结果在水平方向上将是相同的。
在另一实施例中,如果分界线是编码单元分界线/预测单元分界线,则填充参考像素、梯度或补偿结果、或者跳过系数、参考像素、梯度或补偿结果被使用,以节省内存带宽。如果分界线是水平子块分界线(即两个垂直相邻的子块之间的分界线)且相邻运动向量相同,则填充参考像素、梯度或补偿结果、或者跳过系数、参考像素、梯度或补偿结果不被使用。如果分界线是子块分界线且相邻运动向量不相同,或是垂直子块分界线,则填充参考像素、梯度或补偿结果、或者跳过系数、参考像素、梯度或补偿结果被使用。因此,联合或单独处理子块的结果在垂直方向上将是相同的。
在又一实施例中,对于每个块分界线,而不考虑预测单元分界线/编码单元分界线或者子块分界线,如果两侧的相邻运动向量相同,则填充参考像素、梯度或补偿结果、或者跳过系数、参考像素、梯度或补偿结果不被使用。否则,填充参考像素、梯度或补偿结果、或者跳过系数、参考像素、梯度或补偿结果被使用。
在又一实施例中,对于除了编码树单元或者编码树单元行分界线之外的每个块分界线,如果两侧的相邻运动向量相同,则填充参考像素、梯度或补偿结果、或者跳过系数、参考像素、梯度或补偿结果不被使用。否则,填充参考像素、梯度或补偿结果、或者跳过系数、参考像素、梯度或补偿结果被使用。
重叠块运动补偿和双向光流
重叠块运动补偿在视频编解码中通常用于降低块伪影。在JEM中,对于预测单元/编码单元,上层行和左侧列是使用上层块的运动向量和左侧块的运动向量而加权补偿的。换言之,当前块的运动补偿将被进一步拓展到右侧和下层,以补偿右相邻块和下相邻块。
由于重叠块运动补偿可以被结合在正常运动补偿流程中,根据本方法,双向光流操作与正常运动补偿流程中的那些操作整合。因此,双向光流流程所需要的一些数据可以重复使用正常运动补偿流程中所使用的数据,其包括运动补偿预测子、像素梯度和运动补偿插值的中间结果,以避免大量计算并降低所需内存带宽。例如,预测单元尺寸可以是MxN,且相关重叠块运动补偿尺寸可以是Mx4。如果用于当前预测单元的具有双向光流的运动补偿和相关重叠块运动补偿单独被执行,则每参考列表(M+4+7)x(N+4+7)个参考像素和(M+4+7)x(4+4+7)个参考像素将分别被需要。如果整合正常运动补偿流程的重叠块运动补偿流程被使用,则每参考列表仅(M+4+7)x(N+4+4+7)个参考像素将被需要。如果预测单元尺寸是16x8,则内存带宽可以自每参考列表918个参考像素降低到每参考列表621个参考像素。如果重叠块运动补偿流程被应用到多个分界线,则内存带宽降低得更多。具有双向光流的正常运动补偿流程中生成的一些中间数据可以在相关重叠块运动补偿流程中被重复使用。例如,中间结果可以是插值流程中的部分结果,或者双向光流中使用的梯度值。因此,重复使用这些中间数据不仅降低内存带宽,而且降低相关重叠块运动补偿流程所需计算复杂度。
在另一实施例中,当重叠块运动补偿可以结合在正常运动补偿流程中时,双向光流被使用。重叠块运动补偿区域可以包括右区域和底区域,或者如果子块运动补偿被使用,甚至包括顶区域和左区域。由于重叠块运动补偿将载入额外的参考像素以用于右区域和底区域,当前块的双向光流无需执行填充以用于参考像素、梯度或补偿的结果,或者无需执行跳过以用于系数、参考像素、梯度或补偿的结果,是因为数据已由重叠块运动补偿加载。根据一个实施例,填充以用于参考像素、梯度或补偿的结果,或者跳过以用于系数、参考像素、梯度或补偿的结果,或者降低关于重叠块运动补偿区域分界线的带宽的任何分界线依存流程被使用。这些技术将不被应用到当前块与重叠块运动补偿区域之间的分界线。
在另一实施例中,双向光流在重叠块运动补偿区域上被进一步禁能。也就是说,如果所需数据将由重叠块运动补偿区域加载,则双向光流仅被应用到当前块,且降低内存带宽的分界线依存流程不被使用。
“分界线条件依存双向光流流程”和“整合重叠块运动补偿和双向光流”可以被组合。例如,对于执行双向光流,当前块和重叠块运动补偿块之间的分界线无需使用填充以用于参考像素、梯度或补偿,或者跳过以用于系数、参考像素、梯度或补偿,或者为了降低带宽的任何分界线依存流程。
图6示出了根据本发明实施例的使用双向光流以细化用于双向预测块的运动的视频编解码系统的示例性流程图,其中使用右移而无需除法操作推导出偏移。本流程图以及本发明中的其他流程图中所示的步骤可以被实现为编码器侧和/或解码器侧的一个或多个处理器(例如一个或多个CPU)上可执行的程序代码。本流程图中所示的步骤也可以基于硬件来实现,例如用于执行该流程图中步骤的一个或者多个电子设备或者处理器。根据本方法,在步骤610中,接收与当前图像中的当前块相关的输入数据,其中当前块使用双向预测编解码。在步骤620中,推导出来自于参考图像列表0的第一参考图像中与当前块相关的第一参考块以及来自于参考图像列表1的第二参考图像中与当前块相关的第二参考块,其中第一参考块和第二参考块由真实双向运动向量所指向。在步骤630中,基于第一参考块推导出第一x梯度和第一y梯度,并基于第二参考块推导出第二x梯度和第二y梯度。x梯度(即x方向梯度)和y梯度(即y方向梯度)的定义在本发明中前面已公开。在步骤640中,基于第一x梯度、第一y梯度、第二x梯度、第二y梯度、第一参考块的第一像素值、第二参考块的第二像素值或者其组合,推导出梯度参数集,其中所有梯度参数使用固定点表示(fixed-pointrepresentation)。如上所述,如方程式(5)和方程式(6)所示,梯度参数集可以对应于梯度参数S1,S2,S3,S5和S6。在步骤650中,使用包括右移而无任何除法操作的操作推导出x运动偏移和y运动偏移,其中x运动偏移对应于第一分子除以第一分母,y运动偏移对应于第二分子除以第二分母,并且第一分子、第一分母、第二分子和第二分母自两个梯度参数的乘积的线性组合或者梯度参数的线性组合生成。如方程式(5)和方程式(6)所示,偏移可以自梯度参数S1,S2,S3,S5和S6推导出。然而,本发明使用右移操作来推导出来自于梯度参数的偏移,以避免除法操作的需要。在步骤660中,根据第一参考块、第二参考块、第一x梯度与第一y梯度、第二x梯度与第二y梯度、x运动偏移、y运动偏移或者其组合,生成用于当前块的细化预测子。方程式(2)示出了使用偏移的细化预测子推导的示例。在步骤670中,基于细化预测子,编码或解码当前块。
图7示出了根据本发明实施例的使用双向光流以细化用于双向预测块的运动的视频编解码系统的示例性流程图,其中基于块分界线条件或者子块分界线条件,分界线条件依存双向光流流程被有条件地应用到与参考块相关的分界线像素。根据本方法,在步骤710中,接收与当前图像中的当前块相关的输入数据,其中当前块使用双向预测编解码。在步骤720中,推导出来自于参考图像列表0的第一参考图像中与当前块相关的第一参考块以及来自于参考图像列表1的第二参考图像中与当前块相关的第二参考块,其中第一参考块和第二参考块由真实双向运动向量所指向。在步骤730中,透过将双向光流流程应用到第一参考块和第二参考块,生成用于当前块的细化预测子,其中应用双向光流流程包括:基于块分界线条件或者子块分界线条件,将分界线条件依存双向光流流程有条件地应用到与第一参考块和第二参考块相关的分界线像素,其中分界线条件依存双向光流流程包括:填充常规双向光流流程所需要的不可用数据,或者透过修改常规双向光流流程跳过不可用数据,并且不可用数据对应于常规双向光流流程所需要的目标数据,但自第一参考块和第二参考块不可用。在步骤740中,基于细化预测子,编码或解码当前块。
所示的流程图用于示出根据本发明的视频编解码的示例。在不脱离本发明的精神的情况下,所属领域的技术人员可以修改每个步骤、重组这些步骤、将一个步骤进行分离或者组合这些步骤而实施本发明。在本发明中,具体的语法和语义已被使用以示出实现本发明实施例的示例。在不脱离本发明的精神的情况下,透过用等同的语法和语义来替换该语法和语义,所属领域的技术人员可以实施本发明。
上述说明,使得所属领域的技术人员能够在特定应用程序的内容及其需求中实施本发明。对所属领域的技术人员来说,所描述的实施例的各种变形将是显而易见的,并且本文定义的一般原则可以应用于其他实施例中。因此,本发明不限于所示和描述的特定实施例,而是将被赋予与本文所公开的原理和新颖特征相一致的最大范围。在上述详细说明中,说明了各种具体细节,以便透彻理解本发明。尽管如此,将被本领域的技术人员理解的是,本发明能够被实践。
如上所述的本发明的实施例可以在各种硬件、软件代码或两者的结合中实现。例如,本发明的实施例可以是整合在视频压缩芯片内的电路,或者是整合到视频压缩软件中的程序代码,以执行本文所述的处理。本发明的一个实施例也可以是在数字信号处理器(Digital Signal Processor,DSP)上执行的程序代码,以执行本文所描述的处理。本发明还可以包括由计算机处理器、数字信号处理器、微处理器或现场可程序设计门阵列(fieldprogrammable gate array,FPGA)所执行的若干函数。根据本发明,透过执行定义了本发明所实施的特定方法的机器可读软件代码或者固件代码,这些处理器可以被配置为执行特定任务。软件代码或固件代码可以由不同的程序设计语言和不同的格式或样式开发。软件代码也可以编译为不同的目标平台。然而,执行本发明的任务的不同的代码格式、软件代码的样式和语言以及其他形式的配置代码,不会背离本发明的精神和范围。
本发明可以以不脱离其精神或本质特征的其他具体形式来实施。所描述的例子在所有方面仅是说明性的,而非限制性的。因此,本发明的范围由附加的权利要求来表示,而不是前述的描述来表示。权利要求的含义以及相同范围内的所有变化都应纳入其范围内。
Claims (19)
1.一种视频编解码方法,使用双向光流以用于真实双向预测块,该方法包括:
接收与当前图像中的当前块相关的输入数据,其中该当前块使用双向预测编解码;
确定来自于参考图像列表0的第一参考图像中与该当前块相关的第一参考块以及来自于参考图像列表1的第二参考图像中与该当前块相关的第二参考块,其中该第一参考块和该第二参考块由真实双向运动向量所指向;
基于该第一参考块推导出多个第一x梯度和多个第一y梯度,并基于该第二参考块推导出多个第二x梯度和多个第二y梯度;
基于该多个第一x梯度、该多个第一y梯度、该多个第二x梯度、该多个第二y梯度、该第一参考块的多个第一像素值、该第二参考块的多个第二像素值或者其组合,推导出梯度参数集,其中所有梯度参数使用固定点表示;
使用包括右移而无任何除法操作的多个操作推导出x运动偏移和y运动偏移,其中该x运动偏移对应于第一分子除以第一分母,该y运动偏移对应于第二分子除以第二分母,并且该第一分子、该第一分母、该第二分子和该第二分母自两个梯度参数的乘积的线性组合或者该多个梯度参数的线性组合生成;
根据该第一参考块、该第二参考块、该多个第一x梯度与该多个第一y梯度、该多个第二x梯度与该多个第二y梯度、该x运动偏移、该y运动偏移或者其组合,生成用于该当前块的细化预测子;以及
基于该细化预测子,编码或解码该当前块。
2.如权利要求1所述视频编解码方法,其特征在于,还包括:
确定该第一分母的第一最高有效位位置Nx和该第二分母的第二最高有效位位置Ny,其中该x运动偏移是使用包括右移该第一分子和该第一分母Nx比特,以及右移该第二分子和该第二分母Ny比特的多个操作推导出。
3.如权利要求2所述视频编解码方法,其特征在于,(2Px/2(K-1))的多个值被存储在第一查找表中,并且(2Py/2(K-1))的多个值被存储在第二查找表中,其中2(K-1)对应于该第一分母和该第二分母的多个可能值,并且该x运动偏移使用包括乘法和右移Px比特的多个操作推导出,该y运动偏移使用包括乘法和右移Py比特的多个操作推导出。
4.如权利要求3所述视频编解码方法,其特征在于,该第一查找表与该第二查找表相同。
5.如权利要求3所述视频编解码方法,其特征在于,该第一查找表与该第二查找表不相同。
6.如权利要求3所述视频编解码方法,其特征在于,K对应于1。
7.如权利要求2所述视频编解码方法,其特征在于,该右移该第一分子和该第一分母Nx比特,或者该右移该第二分子和该第二分母Ny比特使用舍入偏移。
8.一种视频编解码装置,使用双向光流以用于真实双向预测块,该视频编解码装置包括一个或多个电子电路或处理器,用于:
接收与当前图像中的当前块相关的输入数据,其中该当前块使用双向预测编解码;
确定来自于参考图像列表0的第一参考图像中与该当前块相关的第一参考块以及来自于参考图像列表1的第二参考图像中与该当前块相关的第二参考块,其中该第一参考块和该第二参考块由真实双向运动向量所指向;
基于该第一参考块推导出多个第一x梯度和多个第一y梯度,并基于该第二参考块推导出多个第二x梯度和多个第二y梯度;
基于该多个第一x梯度、该多个第一y梯度、该多个第二x梯度、该多个第二y梯度、该第一参考块的多个第一像素值、该第二参考块的多个第二像素值或者其组合,推导出梯度参数集,其中所有梯度参数使用固定点表示;
使用包括右移而无任何除法操作的多个操作推导出x运动偏移和y运动偏移,其中该x运动偏移对应于第一分子除以第一分母,该y运动偏移对应于第二分子除以第二分母,并且该第一分子、该第一分母、该第二分子和该第二分母自两个梯度参数的乘积的线性组合或者该多个梯度参数的线性组合生成;
根据该第一参考块、该第二参考块、该多个第一x梯度与该多个第一y梯度、该多个第二x梯度与该多个第二y梯度、该x运动偏移、该y运动偏移或者其组合,生成用于该当前块的细化预测子;以及
基于该细化预测子,编码或解码该当前块。
9.一种非暂时性计算机可读介质,存储有多个程序指令,使得装置的处理电路执行视频编解码方法,且该方法包括:
接收与当前图像中的当前块相关的输入数据,其中该当前块使用双向预测编解码;
确定来自于参考图像列表0的第一参考图像中与该当前块相关的第一参考块以及来自于参考图像列表1的第二参考图像中与该当前块相关的第二参考块,其中该第一参考块和该第二参考块由真实双向运动向量所指向;
基于该第一参考块推导出多个第一x梯度和多个第一y梯度,并基于该第二参考块推导出多个第二x梯度和多个第二y梯度;
基于该多个第一x梯度、该多个第一y梯度、该多个第二x梯度、该多个第二y梯度、该第一参考块的多个第一像素值、该第二参考块的多个第二像素值或者其组合,推导出梯度参数集,其中所有梯度参数使用固定点表示;
使用包括右移而无任何除法操作的多个操作推导出x运动偏移和y运动偏移,其中该x运动偏移对应于第一分子除以第一分母,该y运动偏移对应于第二分子除以第二分母,并且该第一分子、该第一分母、该第二分子和该第二分母自两个梯度参数的乘积的线性组合或者该多个梯度参数的线性组合生成;
根据该第一参考块、该第二参考块、该多个第一x梯度与该多个第一y梯度、该多个第二x梯度与该多个第二y梯度、该x运动偏移、该y运动偏移或者其组合,生成用于该当前块的细化预测子;以及
基于该细化预测子,编码或解码该当前块。
10.一种视频编解码方法,使用双向光流以用于真实双向预测块,该方法包括:
接收与当前图像中的当前块相关的输入数据,其中该当前块使用双向预测编解码;
确定来自于参考图像列表0的第一参考图像中与该当前块相关的第一参考块以及来自于参考图像列表1的第二参考图像中与该当前块相关的第二参考块,其中该第一参考块和该第二参考块由真实双向运动向量所指向;
透过将双向光流流程应用到该第一参考块和该第二参考块,生成用于该当前块的细化预测子,其中应用该双向光流流程包括:基于块分界线条件或者子块分界线条件,将分界线条件依存双向光流流程有条件地应用到与该第一参考块和该第二参考块相关的多个分界线像素,其中该分界线条件依存双向光流流程包括:填充该常规双向光流流程所需要的不可用数据,或者透过修改常规双向光流流程跳过该不可用数据,并且该不可用数据对应于该常规双向光流流程所需要的目标数据,但自该第一参考块和该第二参考块不可用;以及
基于该细化预测子,编码或解码该当前块。
11.如权利要求10所述视频编解码方法,其特征在于,该目标数据对应于来自于该第一参考块和该第二参考块的目标参考数据、该目标参考数据的多个梯度、运动补偿目标参考数据或者其组合。
12.如权利要求10所述视频编解码方法,其特征在于,若该多个分界线像素对应于该当前块的多个块分界线,则该分界线条件依存双向光流流程被应用到该多个分界线像素,以及
若该多个分界线像素对应于该当前块的多个运动补偿块分界线,则该分界线条件依存双向光流流程不被应用到该多个分界线像素。
13.如权利要求10所述视频编解码方法,其特征在于,若该多个分界线像素对应于具有两个不同的运动向量的两个相邻子块之间的子块分界线,或者对应于两个垂直相邻子块之间的水平子块分界线,则该分界线条件依存双向光流流程被应用到该多个分界线像素。
14.如权利要求10所述视频编解码方法,其特征在于,若该多个分界线像素对应于具有两个不同的运动向量的两个相邻子块之间的子块分界线,或者对应于两个水平相邻子块之间的垂直子块分界线,则该分界线条件依存双向光流流程被应用到该多个分界线像素。
15.如权利要求10所述视频编解码方法,其特征在于,若该多个分界线像素对应于具有相同的运动向量的两个相邻子块之间的子块分界线,则该分界线条件依存双向光流流程不被应用到该多个分界线像素。
16.如权利要求10所述视频编解码方法,其特征在于,若该多个分界线像素对应于具有相同的运动向量的两个水平相邻子块之间的垂直子块分界线,则该分界线条件依存双向光流流程不被应用到该多个分界线像素。
17.如权利要求10所述视频编解码方法,其特征在于,若该多个分界线像素对应于具有相同的运动向量的两个垂直相邻子块之间的水平子块分界线,则该分界线条件依存双向光流流程不被应用到该多个分界线像素。
18.一种视频编解码装置,使用双向光流以用于真实双向预测块,该视频编解码装置包括一个或多个电子电路或处理器,用于:
接收与当前图像中的当前块相关的输入数据,其中该当前块使用双向预测编解码;
确定来自于参考图像列表0的第一参考图像中与该当前块相关的第一参考块以及来自于参考图像列表1的第二参考图像中与该当前块相关的第二参考块,其中该第一参考块和该第二参考块由真实双向运动向量所指向;
透过将双向光流流程应用到该第一参考块和该第二参考块,生成用于该当前块的细化预测子,其中应用该双向光流流程包括:基于块分界线条件或者子块分界线条件,将分界线条件依存双向光流流程有条件地应用到与该第一参考块和该第二参考块相关的多个分界线像素,其中该分界线条件依存双向光流流程包括:填充该常规双向光流流程所需要的不可用数据,或者透过修改常规双向光流流程跳过该不可用数据,并且该不可用数据对应于该常规双向光流流程所需要的目标数据,但自该第一参考块和该第二参考块不可用;以及
基于该细化预测子,编码或解码该当前块。
19.一种非暂时性计算机可读介质,存储有多个程序指令,使得装置的处理电路执行视频编解码方法,且该方法包括:
接收与当前图像中的当前块相关的输入数据,其中该当前块使用双向预测编解码;
确定来自于参考图像列表0的第一参考图像中与该当前块相关的第一参考块以及来自于参考图像列表1的第二参考图像中与该当前块相关的第二参考块,其中该第一参考块和该第二参考块由真实双向运动向量所指向;
透过将双向光流流程应用到该第一参考块和该第二参考块,生成用于该当前块的细化预测子,其中应用该双向光流流程包括:基于块分界线条件或者子块分界线条件,将分界线条件依存双向光流流程有条件地应用到与该第一参考块和该第二参考块相关的多个分界线像素,其中该分界线条件依存双向光流流程包括:填充该常规双向光流流程所需要的不可用数据,或者透过修改常规双向光流流程跳过该不可用数据,并且该不可用数据对应于该常规双向光流流程所需要的目标数据,但自该第一参考块和该第二参考块不可用;以及
基于该细化预测子,编码或解码该当前块。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762472002P | 2017-03-16 | 2017-03-16 | |
US62/472,002 | 2017-03-16 | ||
US201762474702P | 2017-03-22 | 2017-03-22 | |
US62/474,702 | 2017-03-22 | ||
US201762480359P | 2017-04-01 | 2017-04-01 | |
US62/480,359 | 2017-04-01 | ||
PCT/CN2018/077819 WO2018166357A1 (en) | 2017-03-16 | 2018-03-02 | Method and apparatus of motion refinement based on bi-directional optical flow for video coding |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110476424A true CN110476424A (zh) | 2019-11-19 |
CN110476424B CN110476424B (zh) | 2022-03-04 |
Family
ID=63522790
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880017432.XA Active CN110476424B (zh) | 2017-03-16 | 2018-03-02 | 一种视频编解码方法及装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11109062B2 (zh) |
EP (1) | EP3586513A4 (zh) |
CN (1) | CN110476424B (zh) |
BR (1) | BR112019018922A8 (zh) |
TW (1) | TWI663872B (zh) |
WO (1) | WO2018166357A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111131837A (zh) * | 2019-12-30 | 2020-05-08 | 浙江大华技术股份有限公司 | 运动补偿修正方法、编码方法、编码器及存储介质 |
CN111612697A (zh) * | 2020-05-22 | 2020-09-01 | 天津维创微智能科技有限公司 | 一种插值方法、装置、设备及存储介质 |
CN111970517A (zh) * | 2020-07-29 | 2020-11-20 | 浙江大华技术股份有限公司 | 基于双向光流的帧间预测方法、编码方法及相关装置 |
WO2021174396A1 (zh) * | 2020-03-02 | 2021-09-10 | Oppo广东移动通信有限公司 | 图像预测方法、编码器、解码器以及存储介质 |
WO2021249375A1 (en) * | 2020-06-08 | 2021-12-16 | Beijing Bytedance Network Technology Co., Ltd. | Affine prediction improvements for video coding |
CN113812159A (zh) * | 2019-05-14 | 2021-12-17 | 北京字节跳动网络技术有限公司 | 视频编解码中的缩放方法 |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112042189B (zh) * | 2018-04-30 | 2023-07-21 | 寰发股份有限公司 | 照度补偿方法及相应的电子装置 |
CN112272952B (zh) * | 2018-06-11 | 2022-07-01 | 寰发股份有限公司 | 用于视频编解码的双向光流的方法以及装置 |
US11470348B2 (en) | 2018-08-17 | 2022-10-11 | Hfi Innovation Inc. | Methods and apparatuses of video processing with bi-direction prediction in video coding systems |
KR20210071958A (ko) | 2018-09-21 | 2021-06-16 | 브이아이디 스케일, 인크. | 양방향 옵티컬 플로우를 위한 복잡도 감소 및 비트 폭 제어 |
WO2020084476A1 (en) | 2018-10-22 | 2020-04-30 | Beijing Bytedance Network Technology Co., Ltd. | Sub-block based prediction |
WO2020084474A1 (en) * | 2018-10-22 | 2020-04-30 | Beijing Bytedance Network Technology Co., Ltd. | Gradient computation in bi-directional optical flow |
JP7231727B2 (ja) | 2018-11-05 | 2023-03-01 | 北京字節跳動網絡技術有限公司 | 精緻化を伴うインター予測のための補間 |
EP3878178A1 (en) * | 2018-11-05 | 2021-09-15 | InterDigital VC Holdings, Inc. | Video encoding or decoding using block extension for overlapped block motion compensation |
EP3847814A4 (en) * | 2018-11-06 | 2021-07-14 | Beijing Bytedance Network Technology Co. Ltd. | POSITION DEPENDENT STORAGE, MOVEMENT INFORMATION |
WO2020098647A1 (en) | 2018-11-12 | 2020-05-22 | Beijing Bytedance Network Technology Co., Ltd. | Bandwidth control methods for affine prediction |
CN113170097B (zh) | 2018-11-20 | 2024-04-09 | 北京字节跳动网络技术有限公司 | 视频编解码模式的编解码和解码 |
CN113056914B (zh) | 2018-11-20 | 2024-03-01 | 北京字节跳动网络技术有限公司 | 基于部分位置的差计算 |
CN113196777B (zh) * | 2018-12-17 | 2024-04-19 | 北京字节跳动网络技术有限公司 | 用于运动补偿的参考像素填充 |
JP2022516433A (ja) * | 2018-12-21 | 2022-02-28 | ヴィド スケール インコーポレイテッド | 対称的な動きベクトル差分符号化 |
CN113613019B (zh) * | 2019-01-06 | 2022-06-07 | 北京达佳互联信息技术有限公司 | 视频解码方法、计算设备和介质 |
US11153590B2 (en) * | 2019-01-11 | 2021-10-19 | Tencent America LLC | Method and apparatus for video coding |
WO2020177665A1 (en) * | 2019-03-05 | 2020-09-10 | Mediatek Inc. | Methods and apparatuses of video processing for bi-directional prediction with motion refinement in video coding systems |
JP2022521554A (ja) | 2019-03-06 | 2022-04-08 | 北京字節跳動網絡技術有限公司 | 変換された片予測候補の利用 |
BR112021016896A2 (pt) * | 2019-03-08 | 2021-11-03 | Huawei Tech Co Ltd | Codificador, decodificador e métodos correspondentes para predição inter |
EP3918804A4 (en) | 2019-03-14 | 2023-02-08 | HFI Innovation Inc. | METHODS AND APPARATUS FOR VIDEO PROCESSING USING MOTION DECOMPOSITION AND SUB-PARTITION BASE FILLING |
MX2021011367A (es) * | 2019-03-19 | 2021-11-12 | Huawei Tech Co Ltd | Interprediccion de video basada en flujo optico. |
WO2020198543A1 (en) * | 2019-03-26 | 2020-10-01 | Beijing Dajia Internet Information Technology Co., Ltd. | Methods and devices for bit-depth control for bi-directional optical flow |
CN113632480A (zh) * | 2019-03-29 | 2021-11-09 | 北京字节跳动网络技术有限公司 | 自适应环路滤波与其他编解码工具之间的交互 |
JP7307192B2 (ja) * | 2019-04-02 | 2023-07-11 | 北京字節跳動網絡技術有限公司 | デコーダ側の動きベクトルの導出 |
CN113661708B (zh) | 2019-04-02 | 2023-12-15 | 北京字节跳动网络技术有限公司 | 基于双向光流的视频编解码和解码 |
CN113711609B (zh) | 2019-04-19 | 2023-12-01 | 北京字节跳动网络技术有限公司 | 利用光流的预测细化过程中的增量运动矢量 |
KR102662024B1 (ko) * | 2019-04-19 | 2024-05-21 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 상이한 모션 벡터 정제의 그레디언트 계산 |
WO2020211866A1 (en) | 2019-04-19 | 2020-10-22 | Beijing Bytedance Network Technology Co., Ltd. | Applicability of prediction refinement with optical flow process |
CN116389765B (zh) * | 2019-04-25 | 2024-01-30 | 北京达佳互联信息技术有限公司 | 对视频数据编码的利用光流的预测细化方法、设备和介质 |
WO2020224613A1 (en) * | 2019-05-07 | 2020-11-12 | Beijing Bytedance Network Technology Co., Ltd. | Unified calculation method for inter prediction with refinement |
CN110225339A (zh) * | 2019-05-10 | 2019-09-10 | 上海德衡数据科技有限公司 | 一种hevc视频序列编解码加速方法 |
US11089328B2 (en) * | 2019-05-22 | 2021-08-10 | Qualcomm Incorporated | Bi-directional optical flow in video coding |
CN113994698B (zh) * | 2019-06-04 | 2023-11-24 | 北京字节跳动网络技术有限公司 | 有条件地实施运动候选列表构建过程 |
CN114365485A (zh) * | 2019-09-10 | 2022-04-15 | Lg电子株式会社 | 用于执行bdof的图像编码/解码方法和装置及用于发送比特流的方法 |
CN114365500A (zh) * | 2019-09-20 | 2022-04-15 | 瑞典爱立信有限公司 | 具有移位操作的双向光流简化的视频编码和/或解码的方法及相关装置 |
JP2021052225A (ja) * | 2019-09-20 | 2021-04-01 | Kddi株式会社 | 画像復号装置、画像復号方法及びプログラム |
KR20220066974A (ko) * | 2019-09-30 | 2022-05-24 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 비디오 코딩을 위한 인터 예측 장치 및 방법을 위한 보간 필터 |
CN110798630B (zh) * | 2019-10-30 | 2020-12-29 | 北京市商汤科技开发有限公司 | 图像处理方法及装置、电子设备和存储介质 |
WO2023141177A1 (en) * | 2022-01-18 | 2023-07-27 | Beijing Dajia Internet Information Technology Co., Ltd. | Motion compensation considering out-of-boundary conditions in video coding |
US20230308677A1 (en) * | 2022-03-25 | 2023-09-28 | Tencent America LLC | Method and apparatus adaptive constraint on bi-prediction for out-of-boundary conditions |
WO2023186752A1 (en) * | 2022-03-30 | 2023-10-05 | Interdigital Ce Patent Holdings, Sas | Methods and apparatuses for encoding/decoding a video |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102934444A (zh) * | 2010-04-06 | 2013-02-13 | 三星电子株式会社 | 用于对视频进行编码的方法和设备以及用于对视频进行解码的方法和设备 |
WO2017036399A1 (en) * | 2015-09-02 | 2017-03-09 | Mediatek Inc. | Method and apparatus of motion compensation for video coding based on bi prediction optical flow techniques |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103618904B (zh) | 2013-11-20 | 2017-02-22 | 华为技术有限公司 | 基于像素的运动估计方法及装置 |
-
2018
- 2018-03-02 BR BR112019018922A patent/BR112019018922A8/pt unknown
- 2018-03-02 EP EP18766709.2A patent/EP3586513A4/en not_active Ceased
- 2018-03-02 WO PCT/CN2018/077819 patent/WO2018166357A1/en unknown
- 2018-03-02 CN CN201880017432.XA patent/CN110476424B/zh active Active
- 2018-03-02 US US16/494,565 patent/US11109062B2/en active Active
- 2018-03-15 TW TW107108842A patent/TWI663872B/zh active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102934444A (zh) * | 2010-04-06 | 2013-02-13 | 三星电子株式会社 | 用于对视频进行编码的方法和设备以及用于对视频进行解码的方法和设备 |
WO2017036399A1 (en) * | 2015-09-02 | 2017-03-09 | Mediatek Inc. | Method and apparatus of motion compensation for video coding based on bi prediction optical flow techniques |
Non-Patent Citations (2)
Title |
---|
FUZHENG YANG: "《CTB splitting on frame boundary for arbitrary resolution video》", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC)OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11》 * |
TOMOKAZU MURAKAMI: "《Cross-check result of DMVD proposal JCTVC-C124 (Mitsubishi)》", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC)OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113812159A (zh) * | 2019-05-14 | 2021-12-17 | 北京字节跳动网络技术有限公司 | 视频编解码中的缩放方法 |
CN111131837A (zh) * | 2019-12-30 | 2020-05-08 | 浙江大华技术股份有限公司 | 运动补偿修正方法、编码方法、编码器及存储介质 |
CN111131837B (zh) * | 2019-12-30 | 2022-10-04 | 浙江大华技术股份有限公司 | 运动补偿修正方法、编码方法、编码器及存储介质 |
WO2021174396A1 (zh) * | 2020-03-02 | 2021-09-10 | Oppo广东移动通信有限公司 | 图像预测方法、编码器、解码器以及存储介质 |
CN111612697A (zh) * | 2020-05-22 | 2020-09-01 | 天津维创微智能科技有限公司 | 一种插值方法、装置、设备及存储介质 |
CN111612697B (zh) * | 2020-05-22 | 2023-07-04 | 天津维创微智能科技有限公司 | 一种插值方法、装置、设备及存储介质 |
WO2021249375A1 (en) * | 2020-06-08 | 2021-12-16 | Beijing Bytedance Network Technology Co., Ltd. | Affine prediction improvements for video coding |
US11956448B2 (en) | 2020-06-08 | 2024-04-09 | Beijing Bytedance Network Technology Co., Ltd. | Affine prediction improvements for video coding |
CN111970517A (zh) * | 2020-07-29 | 2020-11-20 | 浙江大华技术股份有限公司 | 基于双向光流的帧间预测方法、编码方法及相关装置 |
CN111970517B (zh) * | 2020-07-29 | 2023-07-28 | 浙江大华技术股份有限公司 | 基于双向光流的帧间预测方法、编码方法及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
EP3586513A4 (en) | 2020-12-09 |
US20210127133A1 (en) | 2021-04-29 |
BR112019018922A8 (pt) | 2023-02-07 |
CN110476424B (zh) | 2022-03-04 |
TWI663872B (zh) | 2019-06-21 |
TW201840190A (zh) | 2018-11-01 |
BR112019018922A2 (pt) | 2020-04-14 |
US11109062B2 (en) | 2021-08-31 |
WO2018166357A1 (en) | 2018-09-20 |
EP3586513A1 (en) | 2020-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110476424A (zh) | 用于视频编解码的基于双向光流的运动细化的方法及装置 | |
EP3556096B1 (en) | Method and apparatus of motion refinement for video coding | |
US11109061B2 (en) | Method and apparatus of motion compensation based on bi-directional optical flow techniques for video coding | |
CN112042187B (zh) | 一种解码方法和编码方法 | |
US20180249172A1 (en) | Method and apparatus of motion compensation for video coding based on bi prediction optical flow techniques | |
US9544593B2 (en) | Video signal decoding method and device | |
Dikbas et al. | Novel true-motion estimation algorithm and its application to motion-compensated temporal frame interpolation | |
CN111133759B (zh) | 编码或解码视频数据的方法和装置 | |
Yang et al. | Subblock-based motion derivation and inter prediction refinement in the versatile video coding standard | |
JP2013535901A (ja) | ビデオ符号化のための高度な動きモデルを使った参照処理 | |
US11985330B2 (en) | Method and apparatus of simplified affine subblock process for video coding system | |
KR20200055139A (ko) | 비디오 코딩을 위한 인터 예측 장치 및 방법을 위한 보간 필터 | |
WO2020008325A1 (en) | Improvement of interweaved prediction | |
EP3984229A1 (en) | Simplified downsampling for matrix based intra prediction | |
WO2023200642A1 (en) | Applications of template matching in video coding | |
KR20200134302A (ko) | 이미지 처리 장치 및 방법 | |
JP7200074B2 (ja) | 画像復号装置、画像復号方法及びプログラム | |
WO2020143826A1 (en) | Interaction between interweaved prediction and other coding tools | |
WO2024119521A1 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
US20220264148A1 (en) | Sample Value Clipping on MIP Reduced Prediction | |
TW202416713A (zh) | 仿射候選細化 | |
TW202406349A (zh) | 視訊編解碼方法和裝置 | |
CN117596393A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220606 Address after: 7, floor 3, No. 5, Taiyuan 1st Street, Zhubei City, Hsinchu County, Taiwan, China, China Patentee after: MEDIATEK Inc. Address before: Hsinchu Science Park Road Taiwan Hsinchu city China Dusing No. 1 Patentee before: MEDIATEK Inc. |
|
TR01 | Transfer of patent right |