CN110475116B - 一种运动矢量导出方法、装置及电子设备 - Google Patents

一种运动矢量导出方法、装置及电子设备 Download PDF

Info

Publication number
CN110475116B
CN110475116B CN201910766509.XA CN201910766509A CN110475116B CN 110475116 B CN110475116 B CN 110475116B CN 201910766509 A CN201910766509 A CN 201910766509A CN 110475116 B CN110475116 B CN 110475116B
Authority
CN
China
Prior art keywords
motion vector
block
current block
adjacent block
coding unit
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
CN201910766509.XA
Other languages
English (en)
Other versions
CN110475116A (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.)
Peking University Shenzhen Graduate School
Original Assignee
Peking University Shenzhen Graduate School
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 Peking University Shenzhen Graduate School filed Critical Peking University Shenzhen Graduate School
Priority to CN201910766509.XA priority Critical patent/CN110475116B/zh
Priority to PCT/CN2019/102748 priority patent/WO2021031225A1/zh
Publication of CN110475116A publication Critical patent/CN110475116A/zh
Application granted granted Critical
Publication of CN110475116B publication Critical patent/CN110475116B/zh
Priority to US17/645,698 priority patent/US11997284B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/117Filters, e.g. for pre-processing or post-processing
    • 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/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/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • 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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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

Landscapes

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

Abstract

本说明书实施例提供一种运动矢量导出方法、装置及电子设备。所述方法包括:获取编码单元在预定方向上的相邻块的空域运动矢量和时域运动矢量预测;对所述空域运动矢量和时域运动矢量预测执行滤波操作,得到滤波后的所述相邻块的空域运动矢量和时域运动矢量预测;根据预定的帧间预测模式,利用所述滤波后的相邻块的空域运动矢量和时域运动矢量预测以及当前块在所述编码单元内的坐标位置,确定所述当前块在其四个侧边方向上的参考运动矢量;根据所述参考运动矢量以及所述当前块在所述编码单元内的坐标位置,导出所述当前块的运动矢量。采用本申请的技术方案,能够提高帧间预测的准确度,进一步提升编码效率。

Description

一种运动矢量导出方法、装置及电子设备
技术领域
本说明书涉及视频编解码技术领域,尤其涉及一种运动矢量导出方法、装置及电子设备。
背景技术
由于视频中连续的若干帧图像之间存在较强时间相关性,所以在进行视频编码时,可以采用帧间预测技术,利用各个视频帧之间的时间相关性来减少视频帧间的冗余,以达到有效去除视频时域冗余的目的。在现有的帧间预测技术中,以Skip/Direct模式为例,Skip/Direct模式是通过借用空域上已编码邻块的运动信息和时域上已编码图像内的运动信息直接导出当前编码单元的运动信息。因此,Skip/Direct模式虽然在一定程度上提高了编码效率,但是这种仅仅利用已编码邻块或图像内的运动信息来导出运动信息的方式,降低了帧间预测的准确度,另外,Skip/Direct模式最终导出的是整个当前编码单元的运动信息,从而进一步降低了帧间预测的准确度,进而影响编码效率。
基于现有技术,需要提供一种能提高帧间预测的准确度,进一步提升编码效率的运动矢量导出方案。
发明内容
有鉴于此,本发明的目的在于提供一种运动矢量导出方法、装置及电子设备,以解决现有技术存在的仅仅利用已编码邻块或图像内的运动信息来导出运动信息的方式,降低了帧间预测的准确度,影响编码效率的问题。
为解决上述技术问题,本说明书实施例是这样实现的:
本说明书实施例提供的一种运动矢量导出方法,所述方法包括:
获取编码单元在预定方向上的相邻块的空域运动矢量和时域运动矢量预测;
对所述空域运动矢量和时域运动矢量预测执行滤波操作,得到滤波后的所述相邻块的空域运动矢量和时域运动矢量预测;
根据预定的帧间预测模式,利用所述滤波后的相邻块的空域运动矢量和时域运动矢量预测以及当前块在所述编码单元内的坐标位置,确定所述当前块在其四个侧边方向上的参考运动矢量;
根据所述参考运动矢量以及所述当前块在所述编码单元内的坐标位置,导出所述当前块的运动矢量。
本说明书实施例提供的一种运动矢量导出装置,所述装置包括:
获取模块,用于获取编码单元在预定方向上的相邻块的空域运动矢量和时域运动矢量预测;
滤波模块,用于对所述空域运动矢量和时域运动矢量预测执行滤波操作,得到滤波后的所述相邻块的空域运动矢量和时域运动矢量预测;
确定模块,用于根据预定的帧间预测模式,利用所述滤波后的相邻块的空域运动矢量和时域运动矢量预测以及当前块在所述编码单元内的坐标位置,确定所述当前块在其四个侧边方向上的参考运动矢量;
导出模块,用于根据所述参考运动矢量以及所述当前块在所述编码单元内的坐标位置,导出所述当前块的运动矢量。
本说明书实施例提供的一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述一种运动矢量导出方法。
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
本发明通过获取编码单元在预定方向上的相邻块的空域运动矢量和时域运动矢量预测;对空域运动矢量和时域运动矢量预测执行滤波操作,得到滤波后的相邻块的空域运动矢量和时域运动矢量预测;根据预定的帧间预测模式,利用所述滤波后的相邻块的空域运动矢量和时域运动矢量预测以及当前块在编码单元内的坐标位置,确定当前块在其四个侧边方向上的参考运动矢量;根据参考运动矢量以及当前块在编码单元内的坐标位置,导出当前块的运动矢量。基于本发明的方案,能够提高帧间预测的准确度,进一步提升编码效率。
附图说明
为了更清楚的说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见的下面描述中的附图仅仅是本发明的实施例,对于本领域普通人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本说明书实施例提供的一种运动矢量导出方法的流程示意图;
图2是本说明书实施例提供的一种获取空域运动矢量和时域运动矢量预测的相邻块的位置结构示意图;
图3是本说明书实施例提供的分别采用5种帧间预测模式确定当前块在其四个侧边方向上的参考运动矢量的原理示意图;
图4是本说明书实施例提供的一种运动矢量导出装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本说明书实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
常用的压缩视频数据的方法包括HEVC、AVS和H.264/MPEG-4AVC等,根据这些方法,一幅画面被分成多个宏块以对图像编码,利用帧间预测或帧内预测产生预测块,从而对相应宏块编码。变换初始块和预测块之间的差异以产生变换块,利用量化参数和量化矩阵对变换块进行量化。通过预定扫描模式扫描量化块的量化系数并随后进行熵编码。针对每个宏块调节量化参数,并利用先前的量化参数对其进行编码。
在视频中,时域相邻块和空域相邻块与当前编码块之间在内容上有很强的相关性,并且它们的运动矢量也有很强的相关性,因此,当前编码块的运动矢量可以参考时域和空域相邻块的运动矢量进行导出以节省直接传输运动矢量的码率开销,提高编码效率。
在上述视屏编码方法中,包括采用多种模式编码当前的编码单元,例如Skip/Direct模式、merge模式等,这些模式通过借用空域上已编码邻块的运动信息和时域上已编码图像内的运动信息直接导出当前编码单元的运动信息,而不是通过做运动估计来获取运动信息,因而降低了帧间预测的准确度;另外,现有的模式最终导出的是整个当前编码单元的运动信息,而无法精确到每个编码单元内的子块,从而进一步降低了帧间预测的准确度,进而影响编码效率。
本说明书以下实施例是以视屏编码,尤其是以视屏编码的帧间预测过程作为应用场景来说的,但是本说明书实施例不限于以下应用场景,以下场景不构成对本说明书实施例应用范围的限定。
图1为本发明实施例提供的一种运动矢量导出方法的流程示意图。该方法具体可以包括以下步骤:
在步骤S110中,获取编码单元在预定方向上的相邻块的空域运动矢量和时域运动矢量预测。
在本说明书一个或多个实施例中,编码单元(CU,coding unit)可以是指将一帧图像分成若干个一定大小互不重叠的矩形块,每一个块即为最大编码单元,每个最大编码单元又可以分为从64*64到8*8不同大小的编码单元;编码单元拥有单独的预测模式信息,系数等。
在本说明书一个或多个实施例中,获取编码单元在预定方向上的相邻块的空域运动矢量,可以包括以下过程:
对位于编码单元左侧和上侧的相邻块的运动矢量进行缩放得到相邻块的空域运动矢量;具体地,将相邻块的前向运动矢量缩放到前向参考帧列表的第一帧,将相邻块的后向运动矢量缩放到后向参考帧列表的第一帧,将缩放后的运动矢量作为相邻块的空域运动矢量。
进一步地,相邻块是指编码单元在左右上下四个方向上相邻的编码块,相邻块不属于当前编码单元内部的编码块,相邻块的大小与编码单元内的当前块的大小相同。在实际应用中,导出空域运动矢量的相邻块可以是当前编码单元在其左侧和上侧方位上的每个相邻块,相邻块的空域运动矢量是通过对相邻块的运动矢量进行缩放得到的,也就是说,空域运动矢量就是运动矢量缩放后的结果。这里的运动矢量是指左侧和上方已经完成编码的相邻块的运动矢量,运动矢量也可以用运动信息来表示。
具体缩放过程可以包括,将相邻块的前向运动矢量缩放到前向参考帧列表的第一帧,将相邻块的后向运动矢量缩放到后向参考帧列表的第一帧,通过对前向运动矢量和后向运动矢量的缩放结果进行计算就可以得到相邻块的空域运动矢量;对于获取不到运动矢量的相邻块,从空域运动矢量可得的相邻块中,寻找空间位置最近的相邻块,将其缩放后的空域运动矢量作为自身的空域运动矢量。
在视频编码技术中包括两个参考帧列表,分别为前向参考帧列表和后向参考帧列表,这两个参考帧列表按一定顺序存放着已完成编码重建的图像,这些图像有可能会被当前编码单元的帧间预测模式选中作为参考帧。第一帧可以指参考帧列表中参考帧索引为0的图像。
在本说明书一个或多个实施例中,获取编码单元在预定方向上的相邻块的时域运动矢量预测,可以包括以下过程:
获取位于编码单元右侧和下侧的相邻块的时域运动矢量预测;具体地,从前向参考帧列表的第一帧或后向参考帧列表的第一帧中获取与相邻块具有相同坐标位置的编码块的运动矢量,对编码块的运动矢量进行缩放得到相邻块的时域运动矢量预测。
进一步地,导出时域运动矢量预测的相邻块可以是当前编码单元在其右侧和下侧方位上的每个相邻块,相邻块的时域运动矢量预测是通过从时域上其它已编码图像中,获取与相邻块所在编码单元相同坐标位置的块的运动信息,将该运动信息缩放后的结果作为相邻块的时域运动矢量预测。其中,时域上其它已编码图像中与当前相邻块具有相同坐标位置的块被称为co-located块,时域运动矢量预测是通过缩放co-located块的运动信息导出相邻块的运动信息。对于获取不到时域运动矢量预测的相邻块,从与当前编码单元相邻且时域运动矢量预测可得的相邻块中,寻找空间位置最近的相邻块,将其时域运动矢量预测作为自身的时域运动矢量预测。
如图2所示,该图示出了一种获取空域运动矢量和时域运动矢量预测的相邻块的位置结构示意图;其中,图2中左边为获取空域运动矢量的相邻块与编码单元的位置关系,可见获取空域运动矢量的相邻块为位于编码单元左侧和上侧的相邻块,图2中右边为获取时域运动矢量预测的相邻块与编码单元的位置关系,可见获取时域运动矢量预测的相邻块为位于编码单元右侧和下侧的相邻块。
值得说明的是,由于编码是按照一定顺序进行的,位于当前编码单元左侧和上方的大部分子块已经编码完成,这部分子块的运动信息可得;而右侧和下方的子块还未进行编码,运动信息不可得。所以在实际操作中,导出的是位于当前编码单元左侧和上方的已完成编码的相邻块的空域运动矢量,而右侧和下方则是通过时域运动矢量预测技术从其它已完成编码的图像中获取时域运动矢量预测。
在步骤S120中,对所述空域运动矢量和时域运动矢量预测执行滤波操作,得到滤波后的所述相邻块的空域运动矢量和时域运动矢量预测。
在本说明书一个或多个实施例中,对步骤S110导出的相邻块的空域运动矢量和时域运动矢量预测进行滤波,具体可以包括以下两个步骤:
第一步,对空域运动矢量和时域运动矢量预测的两端执行填充操作,具体填充操作包括以下内容:
MvT[i]=MvT[0],MvT[j]=MvT[M-1],-2≤i<0,M≤j<M+2
MvB[i]=MvB[0],MvB[j]=MvB[M-1],-2≤i<0,M≤j<M+2
MvL[k]=MvL[0],MvL[l]=MvL[N-1],-2≤k<0,N≤l<N+2
MvR[k]=MvR[0],MvR[l]=MvR[N-1],-2≤k<0,N≤l<N+2
其中,MvR,MvB分别表示滤波前右侧和下侧相邻块的时域运动矢量预测;MvL,MvT分别表示滤波前左侧和上侧相邻块的空域运动矢量;i和j表示以子块为单位的列坐标;k和l表示以子块为单位的行坐标;M、N表示编码单元以子块为单位的宽、高。
在实际应用场景中,由于对相邻块的空域运动矢量和时域运动矢量预测执行滤波操作的过程中会使用最外侧两端相邻块之外的运动矢量,而这些块的运动矢量可能没有获取,因此可以使用最边上相邻块的运动矢量作为填充。
第二步,根据以下公式对所述空域运动矢量和时域运动矢量预测进行滤波:
Mvt[x]=(3*MvT[i0]+8*MvT[i1]+10*MvT[i2]+8*MvT[i3]+3*MvT[i4])>>5
Mvl[y]=(3*MvL[j0]+8*MvL[j1]+10*MvL[j2]+8*MvL[j3]+3*MvL[j4])>>5
Mvb[x]=(3*MvB[i0]+8*MvB[i1]+10*MvB[i2]+8*MvB[i3]+3*MvB[i4])>>5
Mvr[y]=(3*MvR[j0]+8*MvR[j1]+10*MvR[j2]+8*MvR[j3]+3*MvR[j4])>>5
0≤x<M
0≤y<N
其中,MvR,MvB分别表示滤波前右侧和下侧相邻块的时域运动矢量预测;Mvr,Mvb分别表示滤波后右侧和下侧相邻块的时域运动矢量预测;MvL,MvT分别表示滤波前左侧和上侧相邻块的空域运动矢量;Mvl,Mvt分别表示滤波后左侧和上侧相邻块的空域运动矢量;x、y表示当前块在编码单元内的以子块为单位的坐标;x=0表示当前编码单元内部的第一列子块,y=0表示当前编码单元内部的第一行子块;i和j表示以子块为单位的列坐标;M、N表示编码单元以子块为单位的宽、高。
在步骤S130中,根据预定的帧间预测模式,利用所述滤波后的相邻块的空域运动矢量和时域运动矢量预测以及当前块在所述编码单元内的坐标位置,确定所述当前块在其四个侧边方向上的参考运动矢量。
本说明书实施例提出了5种新的帧间预测模式,包括:第一帧间预测模式、第二帧间预测模式、第三帧间预测模式、第四帧间预测模式以及第五帧间预测模式。在实际应用中,这5种帧间预测模式又可以分别称为SLTCRB模式、SLCB模式、STCR模式、SLT模式和CRB模式。
进一步地,如图3所示,该图示出了本说明书实施例中分别采用5种帧间预测模式确定当前块在其四个侧边方向上的参考运动矢量的原理示意图;参见图3,根据上述5种新的帧间预测模式,确定当前块在其四个侧边方向上的参考运动矢量,具体可以包括以下内容:
当采用第一帧间预测模式(SLTCRB模式)时,选取当前块的横坐标方向上的左侧相邻块和右侧相邻块,并选取当前块的纵坐标方向上的上侧相邻块和下侧相邻块,将滤波后的左侧相邻块和上侧相邻块的空域运动矢量以及滤波后的右侧相邻块和下侧相邻块的时域运动矢量预测分别作为当前块在其四个侧边方向上的参考运动矢量;
当采用第二帧间预测模式(SLCB模式)时,选取当前块的横坐标方向上的左侧相邻块以及纵坐标方向上的下侧相邻块,将滤波后的左侧相邻块的空域运动矢量和滤波后的下侧相邻块的时域运动矢量预测分别作为当前块在左侧和下侧方向上的参考运动矢量;并将滤波后的编码单元下侧最右边相邻块的时域运动矢量预测以及滤波后的编码单元左侧最上方相邻块的空域运动矢量,分别作为当前块在右侧和上侧方向上的参考运动矢量;
当采用第三帧间预测模式(STCR模式)时,选取当前块的横坐标方向上的右侧相邻块以及纵坐标方向上的上侧相邻块,将滤波后的右侧相邻块的时域运动矢量预测和滤波后的上侧相邻块的空域运动矢量分别作为当前块在右侧和上侧方向上的参考运动矢量;并将滤波后的编码单元上侧最左边相邻块的空域运动矢量以及滤波后的编码单元右侧最下方相邻块的时域运动矢量预测,分别作为当前块在左侧和下侧方向上的参考运动矢量;
当采用第四帧间预测模式(SLT模式)时,选取当前块的横坐标方向上的左侧相邻块以及纵坐标方向上的上侧相邻块,将滤波后的左侧相邻块的空域运动矢量和上侧相邻块的空域运动矢量分别作为当前块在左侧和上侧方向上的参考运动矢量;并将滤波后的编码单元上侧最右边相邻块的空域运动矢量以及滤波后的编码单元左侧最下方相邻块的空域运动矢量,分别作为当前块在右侧和下侧方向上的参考运动矢量;
当采用第五帧间预测模式(CRB模式)时,选取当前块的横坐标方向上的右侧相邻块以及纵坐标方向上的下侧相邻块,将滤波后的右侧相邻块的时域运动矢量预测和下侧相邻块的时域运动矢量预测分别作为当前块在右侧和下侧方向上的参考运动矢量;并将滤波后的编码单元下侧最左边相邻块的时域运动矢量预测以及滤波后的编码单元右侧最上方相邻块的时域运动矢量预测,分别作为当前块在左侧和上侧方向上的参考运动矢量。
在本说明书实施例中,这5种新的帧间预测模式均是使用双线性插值的方式结合当前编码单元邻域的空域运动信息和时域运动信息,从而导出当前编码单元内部每个子块的参考运动矢量。因此,在实际应用中,以坐标为(x,y)的当前块为例,对于上述每种模式,可以根据以下公式来选择四个运动矢量分别作为左右上下四个方向上的参考运动矢量:
a)SLTCRB模式
vl=Mvl[y]
vt=Mvt[x]
vr=Mvr[y]
vb=Mvb[x]
b)SLCB模式
vl=Mvl[y]
vt=Mvl[-1]
vr=Mvb[M]
vb=Mvb[x]
c)STCR模式
vl=Mvt[-1]
vt=Mvt[x]
vr=Mvr[y]
vb=Mvr[N]
d)SLT模式
vl=Mvl[y]
vt=Mvt[x]
vr=Mvt[M]
vb=Mvl[N]
e)CRB模式
vl=Mvb[-1]
vt=Mvr[-1]
vr=Mvr[y]
vb=Mvb[x]
其中,vl,vr,vt和vb分别表示编码单元内部当前块的左右上下四个方向上的参考运动矢量;Mvr,Mvb分别表示滤波后右侧和下侧相邻块的时域运动矢量预测;Mvl,Mvt分别表示滤波后左侧和上侧相邻块的空域运动矢量;x、y表示当前块在编码单元内的以子块为单位的坐标;x=0表示当前编码单元内部的第一列子块,y=0表示当前编码单元内部的第一行子块;M、N表示编码单元以子块为单位的宽、高。
在步骤S140中,根据所述参考运动矢量以及所述当前块在所述编码单元内的坐标位置,导出所述当前块的运动矢量。
在本说明书一个或多个实施例中,可以通过以下公式,根据步骤S130确定的参考运动矢量结合当前块在编码单元内的坐标位置,导出当前块的运动矢量,具体地:
vh=((M-x)*vl+x*vr)/M
vv=((N-y)*vt+y*vb)/N
v[x][y]=(vh+vv)/2
其中,vl、vr、vt和vb分别表示当前块在左、右、上、下四个方向上的参考运动矢量;x、y表示当前块在编码单元内的以子块为单位的坐标;M、N表示编码单元以子块为单位的宽、高;vh表示当前块的横向运动矢量;vv表示当前块的纵向运动矢量;v[x][y]表示当前块的运动矢量。
进一步地,基于上述5种新的帧间预测模式,使用双线性插值导出当前块的运动矢量后,还可以在编码码流中对上述帧间预测模式进行标记,具体标记过程可以包括以下内容:
将本说明书提出的5种新帧间预测模式组成一个模式候选列表,对于每一个编码单元,在编码端需要传输1比特标记到码流中用于标识是否选中了上述帧间预测方法,若选中了上述帧间预测方法,还需要传输被选中的帧间预测模式在模式候选列表中的索引,将索引的二值化结果传输到码流中,用于标识选中的帧间预测模式。解码端需要解码1比特标记以确定是否使用了上述帧间预测方法,若使用了上述帧间预测方法,解码端还需要解码索引,索引用于确定属于上述5种新帧间预测模式中的哪一种。
进一步地,基于上述步骤S110-步骤S140提供的运动矢量导出方法,本说明书实施例还提供在编码端对每一个编码单元进行率失真优化决策的流程,具体包括以下内容:
1)根据步骤S110,对于每个帧间预测方向,导出当前编码单元左侧和上方每个相邻块的空域运动矢量以及当前编码单元右侧和下方每个相邻块的时域运动矢量预测。
2)根据步骤S120,对空域运动矢量和时域运动矢量预测进行滤波。
3)根据步骤S130-步骤140,对于本说明书提出的5种新的帧间预测模式,每种模式导出当前编码单元内部每个子块的运动矢量,并且将每个子块根据运动矢量导出预测块。
4)通过RDO决策确定是否使用5种新帧间预测模式中的一种,RDO决策之后编码端对上述帧间预测模式进行标记和索引。
与上述编码端过程相对应的,在解码端对每一个编码单元,则执行如下步骤:
1)根据上述解码帧间预测模式标记和索引的方法,确定是否使用上述5种新帧间预测模式中的一种;若使用上述新帧间预测模式,则继续执行以下步骤,否则结束。
2)根据步骤S110,对于每个帧间预测方向,导出当前编码单元左侧和上方每个相邻块的空域运动矢量以及当前编码单元右侧和下方每个相邻块的时域运动矢量预测。
3)根据步骤S120,对空域运动矢量和时域运动矢量预测进行滤波。
4)根据步骤S130-步骤140,选择对应的新帧间预测模式,导出当前编码单元内部每个子块的运动矢量,每个子块根据运动矢量导出预测块。
5)重建得到重建编码块。
基于同样的思路,本说明书实施例还提供了一种运动矢量导出装置,如图4为本说明书实施例提供的一种运动矢量导出装置,该装置主要包括:
获取模块401,用于获取编码单元在预定方向上的相邻块的空域运动矢量和时域运动矢量预测;
滤波模块402,用于对所述空域运动矢量和时域运动矢量预测执行滤波操作,得到滤波后的所述相邻块的空域运动矢量和时域运动矢量预测;
确定模块403,用于根据预定的帧间预测模式,利用所述滤波后的相邻块的空域运动矢量和时域运动矢量预测以及当前块在所述编码单元内的坐标位置,确定所述当前块在其四个侧边方向上的参考运动矢量;
导出模块404,用于根据所述参考运动矢量以及所述当前块在所述编码单元内的坐标位置,导出所述当前块的运动矢量。
根据本申请的实施例,所述获取模块401还用于:
对位于所述编码单元左侧和上侧的相邻块的运动矢量进行缩放得到所述相邻块的空域运动矢量;具体地,
将所述相邻块的前向运动矢量缩放到前向参考帧列表的第一帧,将所述相邻块的后向运动矢量缩放到后向参考帧列表的第一帧,将缩放后的运动矢量作为所述相邻块的空域运动矢量。
根据本申请的实施例,所述获取模块401还用于:
获取位于所述编码单元右侧和下侧的相邻块的时域运动矢量预测;具体地,
从前向参考帧列表的第一帧或后向参考帧列表的第一帧中获取与所述相邻块具有相同坐标位置的编码块的运动矢量,对所述编码块的运动矢量进行缩放得到所述相邻块的时域运动矢量预测。
根据本申请的实施例,所述滤波模块402具体用于:对所述空域运动矢量和时域运动矢量预测的两端进行填充,并根据以下公式对所述空域运动矢量和时域运动矢量预测进行滤波:
Mvt[x]=(3*MvT[i0]+8*MvT[i1]+10*MvT[i2]+8*MvT[i3]+3*MvT[i4])>>5
Mvl[y]=(3*MvL[j0]+8*MvL[j1]+10*MvL[j2]+8*MvL[j3]+3*MvL[j4])>>5
Mvb[x]=(3*MvB[i0]+8*MvB[i1]+10*MvB[i2]+8*MvB[i3]+3*MvB[i4])>>5
Mvr[y]=(3*MvR[j0]+8*MvR[j1]+10*MvR[j2]+8*MvR[j3]+3*MvR[j4])>>5
0≤x<M
0≤y<N
其中,MvR,MvB分别表示滤波前右侧和下侧相邻块的时域运动矢量预测;Mvr,Mvb分别表示滤波后右侧和下侧相邻块的时域运动矢量预测;MvL,MvT分别表示滤波前左侧和上侧相邻块的空域运动矢量;Mvl,Mvt分别表示滤波后左侧和上侧相邻块的空域运动矢量;x、y表示当前块在编码单元内的以子块为单位的坐标;i和j表示以子块为单位的列坐标;M、N表示编码单元以子块为单位的宽、高。
根据本申请的实施例,所述帧间预测模式包括第一帧间预测模式、第二帧间预测模式、第三帧间预测模式、第四帧间预测模式以及第五帧间预测模式,所述确定模块403具体用于:
当采用第一帧间预测模式时,选取所述当前块的横坐标方向上的左侧相邻块和右侧相邻块,并选取所述当前块的纵坐标方向上的上侧相邻块和下侧相邻块,将滤波后的所述左侧相邻块和上侧相邻块的空域运动矢量以及滤波后的所述右侧相邻块和下侧相邻块的时域运动矢量预测分别作为所述当前块在其四个侧边方向上的参考运动矢量;
当采用第二帧间预测模式时,选取所述当前块的横坐标方向上的左侧相邻块以及纵坐标方向上的下侧相邻块,将滤波后的所述左侧相邻块的空域运动矢量和滤波后的所述下侧相邻块的时域运动矢量预测分别作为所述当前块在左侧和下侧方向上的参考运动矢量;并将滤波后的所述编码单元下侧最右边相邻块的时域运动矢量预测以及滤波后的所述编码单元左侧最上方相邻块的空域运动矢量,分别作为所述当前块在右侧和上侧方向上的参考运动矢量;
当采用第三帧间预测模式时,选取所述当前块的横坐标方向上的右侧相邻块以及纵坐标方向上的上侧相邻块,将滤波后的所述右侧相邻块的时域运动矢量预测和滤波后的所述上侧相邻块的空域运动矢量分别作为所述当前块在右侧和上侧方向上的参考运动矢量;并将滤波后的所述编码单元上侧最左边相邻块的空域运动矢量以及滤波后的所述编码单元右侧最下方相邻块的时域运动矢量预测,分别作为所述当前块在左侧和下侧方向上的参考运动矢量;
当采用第四帧间预测模式时,选取所述当前块的横坐标方向上的左侧相邻块以及纵坐标方向上的上侧相邻块,将滤波后的所述左侧相邻块的空域运动矢量和上侧相邻块的空域运动矢量分别作为所述当前块在左侧和上侧方向上的参考运动矢量;并将滤波后的所述编码单元上侧最右边相邻块的空域运动矢量以及滤波后的所述编码单元左侧最下方相邻块的空域运动矢量,分别作为所述当前块在右侧和下侧方向上的参考运动矢量;
当采用第五帧间预测模式时,选取所述当前块的横坐标方向上的右侧相邻块以及纵坐标方向上的下侧相邻块,将滤波后的所述右侧相邻块的时域运动矢量预测和下侧相邻块的时域运动矢量预测分别作为所述当前块在右侧和下侧方向上的参考运动矢量;并将滤波后的所述编码单元下侧最左边相邻块的时域运动矢量预测以及滤波后的所述编码单元右侧最上方相邻块的时域运动矢量预测,分别作为所述当前块在左侧和上侧方向上的参考运动矢量。
根据本申请的实施例,所述导出模块404具体用于:根据以下公式导出所述当前块的运动矢量:
vh=((M-x)*vl+x*vr)/M
vv=((N-y)*vt+y*vb)/N
v[x][y]=(vh+vv)/2
其中,vl、vr、vt和vb分别表示当前块在左、右、上、下四个方向上的参考运动矢量;x、y表示当前块在编码单元内的以子块为单位的坐标;M、N表示编码单元以子块为单位的宽、高;vh表示当前块的横向运动矢量;vv表示当前块的纵向运动矢量;v[x][y]表示当前块的运动矢量。
本说明书实施例还提供一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述一种运动矢量导出方法。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书实施例提供的装置、电子设备与方法是对应的,因此,装置、电子设备也具有与对应方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述对应装置、电子设备的有益技术效果。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神和范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (11)

1.一种运动矢量导出方法,所述方法包括:
获取位于编码单元左侧和上侧的相邻块的空域运动矢量,和位于所述编码单元右侧和下侧的相邻块的时域运动矢量预测;
对所述空域运动矢量和时域运动矢量预测执行滤波操作,得到滤波后的所述相邻块的空域运动矢量和时域运动矢量预测;
根据预定的帧间预测模式,确定当前块在其四个侧边方向上的参考运动矢量,所述帧间预测模式是指利用滤波后的相邻块的空域运动矢量和时域运动矢量预测以及当前块在所述编码单元内的坐标位置,确定所述当前块在其四个侧边方向上的参考运动矢量,具体包括:
第一帧间预测模式,选取所述当前块的横坐标方向上的左侧相邻块和右侧相邻块,并选取所述当前块的纵坐标方向上的上侧相邻块和下侧相邻块,将滤波后的所述左侧相邻块和上侧相邻块的空域运动矢量以及滤波后的所述右侧相邻块和下侧相邻块的时域运动矢量预测分别作为所述当前块在其四个侧边方向上的参考运动矢量;
第二帧间预测模式,选取所述当前块的横坐标方向上的左侧相邻块以及纵坐标方向上的下侧相邻块,将滤波后的所述左侧相邻块的空域运动矢量和滤波后的所述下侧相邻块的时域运动矢量预测分别作为所述当前块在左侧和下侧方向上的参考运动矢量;并将滤波后的所述编码单元下侧最右边相邻块的时域运动矢量预测以及滤波后的所述编码单元左侧最上方相邻块的空域运动矢量,分别作为所述当前块在右侧和上侧方向上的参考运动矢量;
第三帧间预测模式,选取所述当前块的横坐标方向上的右侧相邻块以及纵坐标方向上的上侧相邻块,将滤波后的所述右侧相邻块的时域运动矢量预测和滤波后的所述上侧相邻块的空域运动矢量分别作为所述当前块在右侧和上侧方向上的参考运动矢量;并将滤波后的所述编码单元上侧最左边相邻块的空域运动矢量以及滤波后的所述编码单元右侧最下方相邻块的时域运动矢量预测,分别作为所述当前块在左侧和下侧方向上的参考运动矢量;
第四帧间预测模式,选取所述当前块的横坐标方向上的左侧相邻块以及纵坐标方向上的上侧相邻块,将滤波后的所述左侧相邻块的空域运动矢量和上侧相邻块的空域运动矢量分别作为所述当前块在左侧和上侧方向上的参考运动矢量;并将滤波后的所述编码单元上侧最右边相邻块的空域运动矢量以及滤波后的所述编码单元左侧最下方相邻块的空域运动矢量,分别作为所述当前块在右侧和下侧方向上的参考运动矢量;
第五帧间预测模式,选取所述当前块的横坐标方向上的右侧相邻块以及纵坐标方向上的下侧相邻块,将滤波后的所述右侧相邻块的时域运动矢量预测和下侧相邻块的时域运动矢量预测分别作为所述当前块在右侧和下侧方向上的参考运动矢量;并将滤波后的所述编码单元下侧最左边相邻块的时域运动矢量预测以及滤波后的所述编码单元右侧最上方相邻块的时域运动矢量预测,分别作为所述当前块在左侧和上侧方向上的参考运动矢量;
根据所述参考运动矢量以及所述当前块在所述编码单元内的坐标位置,导出所述当前块的运动矢量。
2.如权利要求1所述的方法,所述获取位于编码单元左侧和上侧的相邻块的空域运动矢量,包括:
对位于所述编码单元左侧和上侧的相邻块的运动矢量进行缩放得到所述相邻块的空域运动矢量;具体地,
将所述相邻块的前向运动矢量缩放到前向参考帧列表的第一帧,将所述相邻块的后向运动矢量缩放到后向参考帧列表的第一帧,将缩放后的运动矢量作为所述相邻块的空域运动矢量。
3.如权利要求1所述的方法,所述获取位于编码单元右侧和下侧的相邻块的时域运动矢量预测,包括:
从前向参考帧列表的第一帧或后向参考帧列表的第一帧中获取与所述相邻块具有相同坐标位置的编码块的运动矢量,对所述编码块的运动矢量进行缩放得到所述相邻块的时域运动矢量预测。
4.如权利要求1所述的方法,所述对所述空域运动矢量和时域运动矢量预测执行滤波操作,具体包括,对所述空域运动矢量和时域运动矢量预测的两端进行填充,并根据以下公式对所述空域运动矢量和时域运动矢量预测进行滤波:
Figure 103080DEST_PATH_IMAGE002
Figure 437109DEST_PATH_IMAGE004
Figure 513650DEST_PATH_IMAGE006
Figure 815187DEST_PATH_IMAGE008
Figure 268165DEST_PATH_IMAGE010
Figure 456701DEST_PATH_IMAGE012
其中,
Figure DEST_PATH_IMAGE013
Figure 687831DEST_PATH_IMAGE014
分别表示滤波前右侧和下侧相邻块的时域运动矢量预测;
Figure DEST_PATH_IMAGE015
Figure 682856DEST_PATH_IMAGE016
分别表示滤波后右侧和下侧相邻块的时域运动矢量预测;
Figure DEST_PATH_IMAGE017
Figure 142788DEST_PATH_IMAGE018
分别表示滤波前左侧和上侧相邻块的空域运动矢量;
Figure DEST_PATH_IMAGE019
Figure 638360DEST_PATH_IMAGE020
分别表示滤波后左侧和上侧相邻块的空域运动矢量;x、y表示当前块在编码单元内的以子块为单位的坐标;
Figure DEST_PATH_IMAGE021
Figure 40391DEST_PATH_IMAGE022
表示以子块为单位的列坐标;M、N表示编码单元以子块为单位的宽、高。
5.如权利要求1所述的方法,所述根据所述参考运动矢量以及所述当前块在所述编码单元内的坐标位置,导出所述当前块的运动矢量,具体包括,根据以下公式导出所述当前块的运动矢量:
Figure 536095DEST_PATH_IMAGE024
Figure 596455DEST_PATH_IMAGE026
Figure 743271DEST_PATH_IMAGE028
其中,
Figure DEST_PATH_IMAGE029
Figure 66936DEST_PATH_IMAGE030
Figure DEST_PATH_IMAGE031
Figure 30694DEST_PATH_IMAGE032
分别表示当前块在左、右、上、下四个方向上的参考运动矢量;x、y表示当前块在编码单元内的以子块为单位的坐标;M、N表示编码单元以子块为单位的宽、高;
Figure DEST_PATH_IMAGE033
表示当前块的横向运动矢量;
Figure 347275DEST_PATH_IMAGE034
表示当前块的纵向运动矢量;
Figure DEST_PATH_IMAGE035
表示当前块的运动矢量。
6.一种运动矢量导出装置,所述装置包括:
获取模块,用于获取位于编码单元左侧和上侧的相邻块的空域运动矢量和位于所属编码单元右侧和下侧的相邻块的时域运动矢量预测;
滤波模块,用于对所述空域运动矢量和时域运动矢量预测执行滤波操作,得到滤波后的所述相邻块的空域运动矢量和时域运动矢量预测;
确定模块,用于根据预定的帧间预测模式,确定所述当前块在其四个侧边方向上的参考运动矢量,所述帧间预测模式是指利用滤波后的相邻块的空域运动矢量和时域运动矢量预测以及当前块在所述编码单元内的坐标位置,确定所述当前块在其四个侧边方向上的参考运动矢量,具体包括:
第一帧间预测模式,选取所述当前块的横坐标方向上的左侧相邻块和右侧相邻块,并选取所述当前块的纵坐标方向上的上侧相邻块和下侧相邻块,将滤波后的所述左侧相邻块和上侧相邻块的空域运动矢量以及滤波后的所述右侧相邻块和下侧相邻块的时域运动矢量预测分别作为所述当前块在其四个侧边方向上的参考运动矢量;
第二帧间预测模式,选取所述当前块的横坐标方向上的左侧相邻块以及纵坐标方向上的下侧相邻块,将滤波后的所述左侧相邻块的空域运动矢量和滤波后的所述下侧相邻块的时域运动矢量预测分别作为所述当前块在左侧和下侧方向上的参考运动矢量;并将滤波后的所述编码单元下侧最右边相邻块的时域运动矢量预测以及滤波后的所述编码单元左侧最上方相邻块的空域运动矢量,分别作为所述当前块在右侧和上侧方向上的参考运动矢量;
第三帧间预测模式,选取所述当前块的横坐标方向上的右侧相邻块以及纵坐标方向上的上侧相邻块,将滤波后的所述右侧相邻块的时域运动矢量预测和滤波后的所述上侧相邻块的空域运动矢量分别作为所述当前块在右侧和上侧方向上的参考运动矢量;并将滤波后的所述编码单元上侧最左边相邻块的空域运动矢量以及滤波后的所述编码单元右侧最下方相邻块的时域运动矢量预测,分别作为所述当前块在左侧和下侧方向上的参考运动矢量;
第四帧间预测模式,选取所述当前块的横坐标方向上的左侧相邻块以及纵坐标方向上的上侧相邻块,将滤波后的所述左侧相邻块的空域运动矢量和上侧相邻块的空域运动矢量分别作为所述当前块在左侧和上侧方向上的参考运动矢量;并将滤波后的所述编码单元上侧最右边相邻块的空域运动矢量以及滤波后的所述编码单元左侧最下方相邻块的空域运动矢量,分别作为所述当前块在右侧和下侧方向上的参考运动矢量;
第五帧间预测模式,选取所述当前块的横坐标方向上的右侧相邻块以及纵坐标方向上的下侧相邻块,将滤波后的所述右侧相邻块的时域运动矢量预测和下侧相邻块的时域运动矢量预测分别作为所述当前块在右侧和下侧方向上的参考运动矢量;并将滤波后的所述编码单元下侧最左边相邻块的时域运动矢量预测以及滤波后的所述编码单元右侧最上方相邻块的时域运动矢量预测,分别作为所述当前块在左侧和上侧方向上的参考运动矢量;
导出模块,用于根据所述参考运动矢量以及所述当前块在所述编码单元内的坐标位置,导出所述当前块的运动矢量。
7.如权利要求6所述的装置,所述获取模块还用于:
对位于所述编码单元左侧和上侧的相邻块的运动矢量进行缩放得到所述相邻块的空域运动矢量;具体地,
将所述相邻块的前向运动矢量缩放到前向参考帧列表的第一帧,将所述相邻块的后向运动矢量缩放到后向参考帧列表的第一帧,将缩放后的运动矢量作为所述相邻块的空域运动矢量。
8.如权利要求6所述的装置,所述获取模块还用于:
获取位于所述编码单元右侧和下侧的相邻块的时域运动矢量预测;具体地,
从前向参考帧列表的第一帧或后向参考帧列表的第一帧中获取与所述相邻块具有相同坐标位置的编码块的运动矢量,对所述编码块的运动矢量进行缩放得到所述相邻块的时域运动矢量预测。
9.如权利要求6所述的装置,所述滤波模块具体用于:对所述空域运动矢量和时域运动矢量预测的两端进行填充,并根据以下公式对所述空域运动矢量和时域运动矢量预测进行滤波:
Figure 568172DEST_PATH_IMAGE002
Figure 108744DEST_PATH_IMAGE004
Figure 844618DEST_PATH_IMAGE006
Figure 246781DEST_PATH_IMAGE008
Figure 102610DEST_PATH_IMAGE010
Figure 830395DEST_PATH_IMAGE012
其中,
Figure 787987DEST_PATH_IMAGE013
Figure 246037DEST_PATH_IMAGE014
分别表示滤波前右侧和下侧相邻块的时域运动矢量预测;
Figure 972685DEST_PATH_IMAGE015
Figure 605791DEST_PATH_IMAGE016
分别表示滤波后右侧和下侧相邻块的时域运动矢量预测;
Figure 299947DEST_PATH_IMAGE017
Figure 43912DEST_PATH_IMAGE018
分别表示滤波前左侧和上侧相邻块的空域运动矢量;
Figure 156224DEST_PATH_IMAGE019
Figure 943921DEST_PATH_IMAGE020
分别表示滤波后左侧和上侧相邻块的空域运动矢量;x、y表示当前块在编码单元内的以子块为单位的坐标;
Figure 876105DEST_PATH_IMAGE021
Figure 423761DEST_PATH_IMAGE022
表示以子块为单位的列坐标;M、N表示编码单元以子块为单位的宽、高。
10.如权利要求6所述的装置,所述导出模块具体用于:根据以下公式导出所述当前块的运动矢量:
Figure 374268DEST_PATH_IMAGE036
Figure 349177DEST_PATH_IMAGE026
Figure 34236DEST_PATH_IMAGE028
其中,
Figure 120004DEST_PATH_IMAGE029
Figure 922088DEST_PATH_IMAGE030
Figure 333478DEST_PATH_IMAGE031
Figure 974675DEST_PATH_IMAGE032
分别表示当前块在左、右、上、下四个方向上的参考运动矢量;x、y表示当前块在编码单元内的以子块为单位的坐标;M、N表示编码单元以子块为单位的宽、高;
Figure 113401DEST_PATH_IMAGE033
表示当前块的横向运动矢量;
Figure 523654DEST_PATH_IMAGE034
表示当前块的纵向运动矢量;
Figure 840366DEST_PATH_IMAGE035
表示当前块的运动矢量。
11.一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至5中任一项所述的方法。
CN201910766509.XA 2019-08-19 2019-08-19 一种运动矢量导出方法、装置及电子设备 Active CN110475116B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201910766509.XA CN110475116B (zh) 2019-08-19 2019-08-19 一种运动矢量导出方法、装置及电子设备
PCT/CN2019/102748 WO2021031225A1 (zh) 2019-08-19 2019-08-27 一种运动矢量导出方法、装置及电子设备
US17/645,698 US11997284B2 (en) 2019-08-19 2021-12-22 Method for deriving motion vector, and electronic device of current block in coding unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910766509.XA CN110475116B (zh) 2019-08-19 2019-08-19 一种运动矢量导出方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN110475116A CN110475116A (zh) 2019-11-19
CN110475116B true CN110475116B (zh) 2021-09-21

Family

ID=68511213

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910766509.XA Active CN110475116B (zh) 2019-08-19 2019-08-19 一种运动矢量导出方法、装置及电子设备

Country Status (3)

Country Link
US (1) US11997284B2 (zh)
CN (1) CN110475116B (zh)
WO (1) WO2021031225A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111654708B (zh) * 2020-06-07 2022-08-23 咪咕文化科技有限公司 一种运动矢量获取方法、装置及电子设备
CN111901590B (zh) * 2020-06-29 2023-04-18 北京大学 一种用于帧间预测的细化运动矢量存储方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102883161A (zh) * 2012-09-19 2013-01-16 华为技术有限公司 视频编码和解码的处理方法和装置
CN103229504A (zh) * 2010-11-29 2013-07-31 联发科技股份有限公司 在Inter/Merge/Skip模式下获取运动矢量/运动矢量预测值候选装置及方法
CN103583047A (zh) * 2011-03-14 2014-02-12 联发科技股份有限公司 用于导出候选运动矢量与候选运动矢量预测的方法与装置
WO2016008161A1 (en) * 2014-07-18 2016-01-21 Mediatek Singapore Pte. Ltd. Temporal derived bi-directional motion vector predictor
KR101676791B1 (ko) * 2015-04-14 2016-11-16 삼성전자주식회사 영상 복호화 방법
CN107181959A (zh) * 2011-03-17 2017-09-19 寰发股份有限公司 导出运动矢量预测子的方法与装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8711940B2 (en) * 2010-11-29 2014-04-29 Mediatek Inc. Method and apparatus of motion vector prediction with extended motion vector predictor
CN104427345B (zh) * 2013-09-11 2019-01-08 华为技术有限公司 运动矢量的获取方法、获取装置、视频编解码器及其方法
CN105959699B (zh) * 2016-05-06 2019-02-26 西安电子科技大学 一种基于运动估计和时空域相关性的快速帧间预测方法
US10136155B2 (en) * 2016-07-27 2018-11-20 Cisco Technology, Inc. Motion compensation using a patchwork motion field
CN109005412B (zh) * 2017-06-06 2022-06-07 北京三星通信技术研究有限公司 运动矢量获取的方法及设备
CN109089119B (zh) * 2017-06-13 2021-08-13 浙江大学 一种运动矢量预测的方法及设备
CN108347616B (zh) * 2018-03-09 2020-02-14 中南大学 一种基于可选时域运动矢量预测的深度预测方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103229504A (zh) * 2010-11-29 2013-07-31 联发科技股份有限公司 在Inter/Merge/Skip模式下获取运动矢量/运动矢量预测值候选装置及方法
CN103583047A (zh) * 2011-03-14 2014-02-12 联发科技股份有限公司 用于导出候选运动矢量与候选运动矢量预测的方法与装置
CN107181959A (zh) * 2011-03-17 2017-09-19 寰发股份有限公司 导出运动矢量预测子的方法与装置
CN102883161A (zh) * 2012-09-19 2013-01-16 华为技术有限公司 视频编码和解码的处理方法和装置
WO2016008161A1 (en) * 2014-07-18 2016-01-21 Mediatek Singapore Pte. Ltd. Temporal derived bi-directional motion vector predictor
KR101676791B1 (ko) * 2015-04-14 2016-11-16 삼성전자주식회사 영상 복호화 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种利用预测运动矢量改进的H.264快速运动估计算法;郭继昌;《数据采集与处理》;20170315;第2卷(第32期);全文 *

Also Published As

Publication number Publication date
WO2021031225A1 (zh) 2021-02-25
CN110475116A (zh) 2019-11-19
US20220191503A1 (en) 2022-06-16
US11997284B2 (en) 2024-05-28

Similar Documents

Publication Publication Date Title
TWI608725B (zh) 高級運動向量預測模式中所用的圖像編碼設備
TWI608729B (zh) 用於依合併模式解碼圖像之設備
TWI581612B (zh) 導出運動資訊的方法
CN111937399B (zh) 基于仿射模型的图像编码/解码方法和装置
TWI711297B (zh) 利用量化係數分量與圖框間預測資訊解碼視訊資料的方法
CN108781284A (zh) 具有仿射运动补偿的视频编解码的方法及装置
US11997284B2 (en) Method for deriving motion vector, and electronic device of current block in coding unit
CN104918047A (zh) 一种双向运动估计的排除方法和装置
CN112335248A (zh) 使用解码器侧的运动补偿的视频编码方法和装置
CN117981301A (zh) 帧内预测的方法、编码器、解码器和编解码系统
CN118020295A (zh) 帧内预测的方法、编码器、解码器和编解码系统
CN117981299A (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