CN109792532A - 用于视频译码的适应性运动向量精准度 - Google Patents
用于视频译码的适应性运动向量精准度 Download PDFInfo
- Publication number
- CN109792532A CN109792532A CN201780059794.0A CN201780059794A CN109792532A CN 109792532 A CN109792532 A CN 109792532A CN 201780059794 A CN201780059794 A CN 201780059794A CN 109792532 A CN109792532 A CN 109792532A
- Authority
- CN
- China
- Prior art keywords
- mvd
- precision
- motion vector
- video data
- data block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- 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/513—Processing of motion vectors
- H04N19/521—Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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
-
- 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/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Color Television Systems (AREA)
Abstract
本发明公开一种对视频数据进行解码的方法,所述方法包含:接收使用帧间预测模式编码的经编码视频数据块;接收指示与所述经编码视频数据块相关联的运动向量差MVD的一或多个语法元素;针对指示所述MVD的所述一或多个语法元素而从三个或多于三个MVD精准度确定当前MVD精准度,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1;使用所述所确定的当前MVD精准度而对指示所述MVD的所述一或多个语法元素进行解码;以及使用所述经解码MVD对所述经编码视频数据块进行解码。
Description
本申请案要求在2016年10月4日提出申请的美国临时申请案62/404,105的权益,所述美国临时申请案的全部内容以引用的方式并入本文中。
技术领域
本发明涉及视频译码,且更特定而言涉及帧间预测视频译码。
背景技术
数字视频能力可并入到广泛范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或台式计算机、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏主机、蜂窝式或卫星无线电话、视频电话会议装置及其类似者。数字视频装置实施视频压缩技术(例如由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分高级视频译码(AVC)及这些标准的扩展中所描述的那些技术)以更高效地发射及接收数字视频信息。
视频压缩技术执行空间预测及/或时间预测以减少或去除视频序列中固有的冗余。对于基于块的视频译码,可将视频帧或切片分区成宏块。可对每一宏块进行进一步分区。使用相对于邻近宏块的空间预测对帧内译码(I)帧或切片中的宏块进行编码。帧间译码(P或B)帧或切片中的宏块可使用相对于同一帧或切片中的邻近宏块的空间预测或相对于其它参考帧的时间预测。
发明内容
一般来说,本发明描述用于适应性地确定用于对视频块进行编码的运动向量及/或运动向量的运动向量差MVD精准度的技术。在本发明的实例中,从三个或多于三个MVD精准度当中确定当前MVD精准度。所述三个或多于三个MVD精准度可包含一或多个N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示MVD的一或多个语法元素的每一连续码字指示。在一些实例中,N可为2、3、4或更大。
在一个实例中,本发明描述一种对视频数据进行解码的方法,所述方法包括:接收使用帧间预测模式编码的经编码视频数据块,接收指示与所述经编码视频数据块相关联的MVD的一或多个语法元素;针对指示所述MVD的所述一或多个语法元素而从三个或多于三个MVD精准度确定当前MVD精准度,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1;使用所述所确定的当前MVD精准度而对指示所述MVD的所述一或多个语法元素进行解码;以及使用所述经解码MVD对所述经编码视频数据块进行解码。
在另一实例中,本发明描述一种经配置以对视频数据进行解码的设备,所述设备包括:存储器,其经配置以存储经编码视频数据块;以及一或多个处理器,其与所述存储器通信,所述一或多个处理器经配置以接收使用帧间预测模式编码的经编码视频数据块,接收与所述经编码视频数据块相关联的MVD的一或多个语法元素,针对指示所述MVD的所述一或多个语法元素从三个或多于三个MVD精准度而确定当前MVD精准度,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1,使用所述所确定当前MVD精准度来对指示所述MVD的所述一或多个语法元素进行解码,以及使用所述经解码MVD对所述经编码视频数据块进行解码。
在另一实例中,本发明描述一种经配置以对视频数据进行解码的设备,所述设备包括:用于接收使用帧间预测模式编码的经编码视频数据块的装置;用于接收指示与所述经编码视频数据块相关联的MVD的一或多个语法元素的装置;用于针对指示所述MVD的所述一或多个语法元素而从三个或多于三个MVD精准度确定当前MVD精准度的装置,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1;用于使用所述所确定的当前MVD精准度而对指示所述MVD的所述一或多个语法元素进行解码的装置;以及用于使用所述经解码MVD对所述经编码视频数据块进行解码的装置。
在另一实例中,本发明描述一种存储指令的计算机可读存储媒体,所述指令在被执行时致使经配置以对视频数据进行解码的装置的一或多个处理器:接收使用帧间预测模式编码的经编码视频数据块,接收与所述经编码视频数据块相关联的MVD的一或多个语法元素,针对指示所述MVD的所述一或多个语法元素从三个或多于三个MVD精准度而确定当前MVD精准度,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1,使用所述所确定当前MVD精准度来对指示所述MVD的所述一或多个语法元素进行解码,以及使用所述经解码MVD对所述经编码视频数据块进行解码。
在另一实例中,本发明描述一种对视频数据进行编码的方法,所述方法包括:接收待使用帧间预测模式编码的视频数据块;确定所述视频数据块的MVD;从三个或多于三个MVD精准度确定用于对指示所述MVD的一或多个语法元素进行编码的当前MVD精准度,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1;使用所述MVD及所述帧间预测模式对所述视频数据块进行编码;以及使用所述所确定当前MVD精准度对指示所述MVD的一或多个语法元素进行编码。
下文在附图及描述中阐明一或多个实例的细节。根据所述描述及图式以及根据权利要求书将明了其它特征、目的及优点。
附图说明
图1为说明可利用本发明的技术的实例视频编码及解码系统的框图。
图2为说明可实施本发明的技术的视频编码器的实例的框图。
图3为说明可实施本发明的技术的视频解码器的实例的框图。
图4为说明全像素位置的分数像素位置的概念图。
图5A到5C为说明对应色度及照度像素位置的概念图。
图6为用于解码器侧运动向量推导(DMVD)的实例L形状模板匹配的说明。
图7为说明基于实例反射镜的双向MV推导的概念图。
图8为说明用于不同运动向量差精准度的整数像素位置及码字的概念图。
图9为说明本发明的实例编码方法的流程图。
图10为说明本发明的实例解码方法的流程图。
具体实施方式
本发明涉及用于运动向量(MV)及/或运动向量差(MVD)译码及发信的技术,包含用于适应性地确定MV/MVD精准度的技术。本文中所描述的技术可在高级视频编解码器(例如HEVC的扩展或下一代视频译码标准)的上下文中使用。
H.264及H.265视频编码器及视频解码器支持具有四分之一像素精准度的运动向量。在四分之一像素精准度中,MV或MVD的连续码字值之间的差等于像素之间的距离的四分之一。同样地,在八分之一像素精准度中,MV或MVD的连续码字值之间的差等于像素之间的距离的八分之一。在整数像素精准度中,MV或MVD的连续码字值之间的差在距离上等于全像素。
所使用像素精准度通常既未发信也未推导,而是替代地为固定的(例如,经预配置或预定)。在一些情况中,八分之一像素精准度可提供优于四分之一像素精准度或整数像素精准度的某些优点。然而,将每一运动向量编码成八分之一像素精准度可使用大量译码位,译码位的重要性可能超过由八分之一像素精准度运动向量原本提供的益处。即,以八分之一像素精准度发信MV或MVD所需要的位速率的重要性可能超过任何失真增益。针对某些类型的视频内容,在根本无内插(换句话说,仅使用整数像素精准度)的情况下来对运动向量进行译码可能更好。
例如由计算机产生的内容(例如,文本或简单图形)的屏幕内容通常涉及全部具有完全相同像素值的系列像素,后续接着像素值的急剧改变。例如,在于白色背景上包含蓝色文本的屏幕内容中,形成蓝色字母的像素可全部具有相同像素值,而白色背景也全部具有相同像素值,但白色像素值可明显不同于蓝色像素值。相比之下,相机获取内容(例如,所谓自然图像)通常包含由于运动、阴影、照明改变及其它自然现象所致的像素值的缓慢改变。由于屏幕内容及相机获取内容通常具有不同特性,因此对一个类型的内容有效的译码工具可能未必对其它类型的内容有效。作为一个实例,用于帧间预测编码的子像素内插可改进相机内容的译码,但相关联复杂性及发信额外负荷可实际上降低屏幕内容的译码质量及/或带宽效率。
在一些实例中,本发明的技术可包含基于例如所译码视频的内容(例如,内容的类型)而适应性地确定运动向量精准度。在一些实例中,本发明的技术可包含通过编码器推导所译码视频内容的恰当运动向量精准度。使用相同推导技术,视频解码器还可在不接收指示运动向量精准度的语法元素的情况下确定使用哪一运动向量精准度来对视频数据进行编码。在其它实例中,视频编码器可在经编码视频位流中发信(且视频解码器可接收)由视频编码器选择的运动向量精准度。
适应性地选择运动向量精准度可通过在较高精准度运动向量的使用改进视频译码质量(例如通过产生较好的速率失真折衷)的情况下使得能够将所述较高精准度运动向量(例如,1/4或1/8精准度运动向量)用于视频内容来改进整体视频译码质量。适应性地选择运动向量精准度还可通过在较高精准度运动向量的使用不改进或甚至恶化视频译码质量的情况下使得能够使用较低精准度运动向量(例如,整数精准度)用于视频内容来改进整体视频译码质量。
本发明中的各种技术可参考视频编码器来描述,所述视频译码器旨在作为可指代视频编码器或视频解码器的通用术语。除非明确另有所述,否则不应假定关于视频编码器或视频解码器所描述的技术无法由视频编码器或视频解码器中的另一者执行。例如,在诸多情况下,视频解码器执行与视频编码器相同或有时互逆的译码技术以便对所编码视频数据进行解码。在诸多情况下,视频编码器还包含视频解码回路,且因此视频编码器执行作为对视频数据进行编码的部分的视频解码。因此,除非另有所述,否则本发明中关于视频解码器所描述的技术也可由视频编码器执行,且反之亦然。
本发明还可使用例如当前层、当前块、当前图片、当前切片等术语。在本发明的上下文中,术语当前旨在识别如与例如先前译码层、块、图片及切片或尚未经译码块、图片及切片相反的当前经译码层、块、图片、切片,等。
图1为说明可利用用于对MV及/或MVD进行译码的本发明的技术的实例视频编码及解码系统10的框图。如图1中所展示,系统10包含源装置12,所述源装置经由通信信道16将经编码视频发射到目的地装置14。源装置12及目的地装置14可包括广泛范围装置中的任一者。在一些状况下,源装置12及目的地装置14可包括无线通信装置,例如无线手机、所谓蜂窝式或卫星无线电话或可经由通信信道16传递视频信息的任何无线装置,在这种状况下通信信道16为无线的。然而,本发明的技术通常涉及用于支持用于运动向量的适应性子像素精准度的技术,其未必被限制于无线应用或设定。举例来说,这些技术可应用于无线电视广播、有线电视发射、卫星电视发射、因特网视频发射、经编码到存储媒体的经编码数字视频或其它情景。因此,通信信道16可包括适合于经编码视频数据的发射的无线或有线媒体的任何组合。
在图1的实例中,源装置12包含视频源18、视频编码器20、调制器/解调器(调制解调器)22及发射器24。目的地装置14包含接收器26、调制解调器28、视频解码器30及显示装置32。根据本发明,源装置12的视频编码器20可经配置以应用用于支持用于对MV及/或MVD进行译码及/或发信的两种或多于两种技术的技术。在其它实例中,源装置及目的地装置可包含其它组件或布置。举例来说,源装置12可从外部视频源18(例如,外部相机)接收视频数据。同样地,目的地装置14可与外部显示装置介接,而非包含集成式显示装置。
图1的所说明系统10仅为一个实例。本发明的用于对MV及/或MVD进行译码及/或发信的技术可由任何数字视频编码及/或解码装置执行。尽管本发明的技术通常由视频编码装置执行,但技术也可由视频编码器/解码器(通常称作为“CODEC”)执行。此外,本发明的技术也可由视频预处理器执行。源装置12及目的地装置14仅为这些译码装置的实例,其中源装置12产生经译码视频数据以供发射到目的地装置14。在一些实例中,装置12、14可以基本上对称方式操作使得装置12、14中的每一者包含视频编码及解码组件。因此,系统10可支持源装置12与目的地装置14之间的单向或双向视频发射,例如,用于视频流式发射、视频播放、视频广播或视频电话。
源装置12的视频源18可包含视频捕捉装置,例如摄像机、含有先前所捕捉视频的视频存档,及/或来自视频内容提供者的视频馈送。作为又一替代方案,视频源18可产生作为源视频的基于计算机图形的数据,或直播视频、经存档视频及计算机产生视频的组合。在一些状况下,如果视频源18为摄像机,那么源装置12及目的地装置14可形成所谓相机电话或视频电话。然而,如上文所提及,本发明中所描述的技术通常可应用于视频解码,且可应用于无线及/或有线应用。在每一状况下,所捕捉、预捕捉或计算机产生视频可由视频编程器20进行编码。经编码视频信息可接着由调制解调器22根据通信标准进行调制,且经由发射器24发射到目的地装置14。调制解调器22可包含各种混频器、滤波器、放大器或经设计用于信号调制的其它组件。发射器24可包含经设计用于发射数据的电路,包含放大器、滤波器及一或多个天线。
目的地装置14的接收器26经由信道16接收信息且调制解调器28对信息进行解调。此外,视频编码过程可实施本文中所描述用于对MV及/或MVD进行编码的技术中的一或多者。经由信道16传递的信息可包含由视频编码器20定义的语法信息,所述语法信息也由视频解码器30使用,其包含描述宏块及其它经译码单元(例如,图片群组(GOP))的特性及/或处理的语法元素。显示装置32向用户显示经解码视频数据,且可包括各种显示装置中的任一者,例如,阴极射线管(CRT)、液晶显示器(LCD)、等离子体显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
在图1的实例中,通信信道16可包括任何无线或有线通信媒体,例如射频(RF)频谱或一或多个物理发射线,或无线及有线媒体的任何组合。通信信道16可形成基于包的网络的部分,例如局域网、广域网或例如因特网的全球网络。通信信道16通常表示用于将视频数据从源装置12发射到目的地装置14的任何合适的通信媒体,或不同通信媒体的集合,包含有线或无线媒体的任何合适的组合。通信信道16可包含路由器、交换器、基站或可用于促进从源装置12到目的地装置14的通信的任何其它设备。
视频编码器20及视频解码器30可根据视频压缩标准操作。然而,本发明的技术并不限于任何特定译码标准。实例标准包含ITU-T H.265标准、ITU-T H.264标准(替代地被称作MPEG-4部分10高级视频译码(AVC))、MPEG-2及ITU-T H.263。尽管图1中未展示,但在一些实例中,视频编码器20及视频解码器30可各与音频编码器及解码器集成,且可包含适当MUX-DEMUX单元或其它硬件及软件以在共同数据流或单独数据流中处置音频及视频两者的编码。如果适用,那么MUX-DEMUX单元可符合ITU H.223多路复用器协议,或例如用户数据报协议(UDP)的其它协议。
视频译码标准进一步包含ITU-TH.261、ISO/IEC MPEG-1Visual、ITU-TH.262或ISO/IEC MPEG-2Visual、ITU-TH.263、ISO/IEC MPEG-4Visual及ITU-TH.264(也称作ISO/IEC MPEG-4AVC),包含其可缩放视频译码(SVC)及多视图视频译码(MVC)扩展。
另外,ITU-T视频译码专家组(VCEG)及ISO/IEC动画专家组(MPEG)的视频译码联合协作团队(JCT-VC)也已制定新的视频译码标准,即高效率视频译码(HEVC)。最新HEVC规范草案在下文中被称作HEVC WD,其可从http://phenix.int-evry.fr/jct/doc_end_user/ documents/14_Vienna/wg11/JCTVC-N1003-v1.zip获得。最终版HEVC标准的复本(即,ITU-TH.265,H系列:视听与多媒体系统视听服务的基础设施—移动视频的译码(AUDIOVISUALAND MULTIMEDIA SYSTEMS Infrastructure of audiovisual services–Coding ofmoving video),2015年4月)可在https://www.itu.int/rec/T-REC-H.265-201504-I/en获得。
ITU-T VCEG(Q6/16)及ISO/IEC MPEG(JTC 1/SC 29/WG 11)正研究对压缩能力可显著超过当前HEVC标准(包含其关于屏幕内容译码及高动态范围译码的当前扩展及近期扩展)的压缩能力的未来视频译码技术的标准化的可能需求。专家组正以被称作联合视频探索小组(JVET)的联合合作活动针对所述探索活动一起工作来评估由其在所述领域的专家提出的压缩技术设计。JVET初次在2015年10月19到21日开会。且最新版本参考软件(即,联合探索模型3(JEM3.0))可从以下网址下载:https://jvet.hhi.fraunhofer.de/svn/svn_ HMJEMSoftware/tags/HM-16.6-JEM-3.0/。
联合探索测试模型3(JEM3)的算法描述经描述在J.Chen等人的“联合探索测试模型3的算法描述(Algorithm Description of Joint Exploration Test Model3)”(ITU-TSG 16 WP 3及ISO/IEC JTC 1/SC 29/WG 11的联合视频探索小组(JVET),第3次会议:瑞士日内瓦2016年5月26日到6月1日,JVET-C1001)中。
视频编码器20及视频解码器30各自可实施为各种合适的编码器电路或解码器电路(例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合)中的任一者。视频编码器20及视频解码器30中的每一者可包含在一或多个编码器或解码器中,其中的任一者可集成为相应相机、计算机、移动装置、订户装置、广播装置、机顶盒、服务器或其类似者中的组合式视频编码/解码器(CODEC)的部分。
视频序列通常包含一系列视频帧。图片群组(GOP)通常包括一系列一或多个视频帧。GOP可在GOP的标头、GOP的一或多个帧的标头或别处包括语法数据,所述语法数据描述包含在GOP中的多个帧。每一帧可包含描述相应帧的编码节点的帧语法数据。视频编码器20通常对个别视频帧内的视频块进行操作以便对视频数据进行编码。针对H.264,视频块可对应于宏块或宏块的部分。视频块可具有固定或变化大小,且其大小可根据规定的译码标准而不同。每一视频帧可包含多个切片。每一切片可包含多个宏块,所述宏块可布置成分区,也被称作为子块。
作为实例,ITU-T H.264标准支持各种块大小的帧内预测,例如针对明度分量16乘16、8乘8或4乘4,且针对色度分量8×8,以及各种块大小帧间预测,例如针对明度分量16×16、16×8、8×16、8×8、8×4、4×8或4×4,且针对色度分量对应的经按比例调整大小。在本文发明中“N×N”及“N乘N”可互换地用于根据垂直及水平维度指代块的像素尺寸,例如,16×16个像素或16乘16个像素。一般来说,16×16块将在垂直方向具有16个像素(y=16)且在水平方向具有16个像素(x=16)。同样地,N×N块通常在垂直方向具有N个像素且在水平方向具有N个像素,其中N表示非负整数值。块中的像素可经布置成行及列。此外,块未必在水平方向具有与在垂直方向相同数目个像素。例如,块可包括N×M个像素,其中M未必等于N。
小于16乘16的块大小可被称作16乘16宏块的分区。例如,在将变换(例如离散余弦变换(DCT)、整数变换、小波变换或概念上类似的变换)应用于表示经译码视频块与预测视频块之间的像素差的残差视频块数据之后,视频块可在像素域中包括像素数据块,或在变换域中包括变换系数块。在一些状况下,视频块可在变换域中包括经量化变换系数块。
较小视频块可提供较好的分辨率,且可用于包含高细节层次的视频帧的位置。一般来说,宏块及各种分区(有时被称作子块)可被视为视频块。另外,切片可被视为多个视频块,例如宏块及/或子块。每一切片可为视频帧的可独立解码单元。替代地,帧自身可为可解码单元,或帧的其它部分可定义为可解码单元。术语“经译码单元”可指代视频帧的任何可独立解码单元,例如整个帧、帧的切片、图片群组(GOP),也被称作序列,或根据适用译码技术定义的另一可独立解码单元。
如上文所论述,新视频译码标准(被称作为ITU-T H.265、高效率视频译码(HEVC))已完成。HEVC的扩展包含屏幕内容译码扩展。HEVC标准化工作基于本称作HEVC测试模型(HM)的视频译码装置的模型。HM推定视频译码装置超越根据(例如)ITU-T H.264/AVC的装置的数个能力。举例来说,虽然H.264提供九个帧内预测编码模式,但HM提供多达三十三个帧内预测编码模式。
HM将视频数据块称作为译码单元(CU)。位流内的语法数据可定义最大译码单元(LCU),所述最大译码单元为在像素数目方面最大的译码单元。一般来说,CU具有与H.264的宏块类似的用途,不同在于CU不具有大小区别。因此,CU可分裂成子CU。一般来说,在本发明中对CU的提及可指代图片的最大译码单元或LCU的子CU。LCU可分裂成子CU,且每一子CU可分裂成子CU。位流的语法数据可定义LCU可分裂的最大次数,被称作为CU深度。因此,位流也可定义最小译码单元(SCU)。本发明还使用术语“块”来指CU、PU或TU中的任一者。此外,在本发明参考涉及译码单元或CU的实例的情况下,应理解可关于替代译码单元的宏块提供其它实例。
LCU可与四叉树数据结构相关联。一般来说,四叉树数据结构包含一个节点/CU,其中根节点对应于LCU。如果将CU分裂成四个子CU,那么对应于CU的节点包含四个叶节点,所述叶节点中的每一者对应于子CU中的一者。四叉树数据结构的每一节点可提供用于对应CU的语法数据。举例来说,四叉树中的节点可包含分裂旗标,指示是否将对应于节点的CU分裂成子CU。CU的语法元素可以递回方式定义,且可取决于是否将CU分裂成子CU。
未分裂的CU(例如,对应于四叉树数据结构中的叶节点)可包含一或多个预测单元(PU)。一般来说,PU表示对应CU的全部或一部分,且包含关于检索PU的参考样本的数据。举例来说,在PU为帧内模式编码时,PU可包含描述PU的帧内预测模式的数据。作为另一实例,在PU为帧间模式编码时,PU可包含定义关于PU的运动向量的数据。定义运动向量的数据可(例如)描述运动向量的水平分量、运动向量的垂直分量、运动向量的分辨率(例如,整数像素精准度、四分之一像素精准度、八分之一像素精准度)、运动向量指向的参考帧,及/或运动向量的参考列表(例如,列表0或列表1)。关于定义PU的CU的数据还可描述(例如)将CU分区成一或多个PU。分区模式可因CU是未经译码、经帧内预测模式编码还是经帧间预测模式编码而不同。
具有一或多个PU的CU还可包含一或多个变换单元(TU)。在使用PU预测之后,视频编码器可计算对应于PU的CU的部分的残差值。残差值可经变换、量化及扫描。TU未必限于PU的大小。因此,TU可大于或小于同一CU的对应PU。在一些实例中,TU的最大大小可对应于包含TU的CU的大小。
使用帧间预测来对PU进行译码涉及计算当前块与参考帧中的块之间的运动向量。运动向量经由被称作运动估计(或运动搜索)的过程来计算。举例来说,运动向量可指示预测单元在当前帧中相对于参考帧的参考样本的位移。参考样本可为经发现在像素差方面紧密匹配包含所译码的PU的CU的部分,所述像素差可由绝对差总和(SAD)、平方差总和(SSD)或其它差度量来确定。参考样本可出现在参考帧或参考切片内任何处。在一些实例中,参考样本可在分数像素位置处出现。在发现最好地匹配当前部分的参考帧的部分时,编码器旋即将当前部分的当前运动向量确定为从当前部分到参考帧中的匹配部分(即,从当前部分的中心到匹配部分的中心)的位置差。
在一些实例中,视频编码器20可在经编码的视频位流中发信每一部分的运动向量。所发信运动向量由视频解码器30用于执行运动补偿以便对视频数据进行解码。然而,直接发信原始运动向量可导致较低效译码,因为传达信息通常需要大量位。
在一些实例中,视频编码器20可预测每一分区或视频块(例如,HEVC中的每一PU)的运动向量,而非直接发信原始运动向量。在执行所述运动向量预测中,视频编码器20可选择从与当前部分相同的帧中的空间相邻块确定的一组候选运动向量或从参考帧(例如,时间运动向量预测子(MVP))中的同置块确定的候选运动向量。视频编码器20可执行运动向量预测,且如果需要,发信预测差(也称作运动向量差(MVD)),而非发信原始运动向量,以减少发信的位速率。来自空间相邻块的候选运动向量实例可被称作空间MVP候选,而来自另一参考帧中的同置块的候选运动向量可被称作时间MVP候选。
在基于块的视频译码系统(例如HEVC及H.264/AVC视频译码标准)中,针对每一块,一运动信息集可用,且将其用于通过使用运动补偿过程来产生帧间预测结果。通常,运动信息集含有关于向前预测方向及向后预测方向的运动信息。此处,向前预测方向及向后预测方向为双向预测模式的两个预测方向且术语“向前”及“向后”未必具有几何意义;相反地其对应于当前图片的参考图片列表0(RefPicList0)及参考图片列表1(RefPicList1)。在仅一个参考图片列表可用于图片或切片时,仅RefPicList0可用且切片的每一块的运动信息始终为向前。
针对每一预测方向,运动信息通常含有参考索引及运动向量。在一些状况下,为简洁起见,可以假定运动向量具有相关联参考索引的方式来提及运动向量自身。使用参考索引来识别当前参考图片列表(RefPicList0或RefPicList1)中的参考图片。运动向量具有水平及垂直分量。
在HEVC标准中,针对预测单元(PU),分别存在两个帧间预测模式,即合并(跳过被视为合并的特殊状况)及高级运动向量预测(AMVP)模式。
在AMVP或合并模式中,针对多个运动向量预测子维持运动向量(MV)预测子候选列表。通过从MV候选列表取得一个候选者来产生当前PU的运动向量以及合并模式中的参考索引。在合并模式中,合并候选者由合并索引识别,参考图片用于预测当前块以及相关联运动向量,且不发信进一步运动向量差(MVD)信息。在AMVP模式中,针对来自列表0或列表1的每一可能预测方向,连同对MV候选列表的MVP索引明确地发信参考索引,且进一步发信MVD信息以精进当前PU的MV信息。
在合并模式中,视频编码器20经由预测语法的位流发信来指示视频解码器30从帧的当前部分的所选择候选运动向量复制运动向量、参考索引(在运动向量指向的给定参考图片列表中识别参考帧)及运动预测方向(其识别参考图片列表(列表0或列表1),即,就参考帧在时间上在当前译码的帧之前还是之后而言)。上述情形通过在位流中将索引发信到识别所选择候选运动向量(即,特定空间MVP候选者或时间MVP候选者)的候选运动向量列表中来完成。因此,针对合并模式,预测语法可包含识别模式(在这种状况下为“合并”模式)的旗标及识别所选择候选运动向量的索引。在一些情况中,候选运动向量将在参考当前部分的因果部分中。即,候选运动向量将已通过视频解码器30解码。如此,视频解码器30已接收及/或确定因果部分的运动向量、参考索引及运动预测方向。如此,解码器可简单地从存储器检索与因果部分相关联的运动向量、参考索引及运动预测方向且复制这些值作为关于当前部分的运动信息。为以合并模式重构建块,解码器使用关于当前部分的所推导运动信息来获得预测块,且将残差数据添加到预测块以重构建经译码块。
在AMVP中,视频编码器20经由位流发信指示视频解码器30仅复制来自候选部分的运动向量且使用所复制的向量作为当前部分的运动向量的预测子。视频编码器20还对MVD进行编码且将其连同参考帧的参考索引发信到视频解码器30以获得与当前块的运动向量预测子相关联的预测方向的运动向量预测子。MVD为当前块的当前运动向量与从候选块推导的运动向量预测子之间的差。在这种状况下,视频编码器20使用运动估计来确定待译码的块的实际运动向量,且接着将实际运动向量与运动向量预测子之间的差确定为MVD值。以这种方式,视频解码器30不使用候选运动向量的准确值作为当前运动向量,如在合并模式中,而是可使用在值上可能“接近”于从运动估计确定的当前运动向量的候选运动向量且加总MVD以重新产生当前运动向量。为在AMVP模式中重构建块,视频解码器30将对应残差数据加总到当前运动向量所指向的块以重构建所译码块。
在大部分情况下,与整体当前运动向量相比,MVD需要较少位来发信。如此,AMVP允许当前运动向量的更精准发信同时维持优于发送整个运动向量的译码效率。相比而言,合并模式不允许MVD的规格,且如此,合并模式牺牲运动向量发信的准确度来获得增加的发信效率(即,较少位)。AMVP的预测语法可包含关于模式的旗标(在这种状况下为AMVP旗标)、关于候选块的索引、当前运动向量与来自候选块的预测运动向量的MVD、参考索引及运动预测方向。
根据本发明的实例技术,视频编码器20可使用具有变化的分段整数及/或整数像素精准度的运动向量的一或多个PU来对CU进行帧间模式编码(例如,使用帧间预测)。举例来说,视频编码器20可基于所编码视频数据的内容而选择将具有整数像素精准度或分数(例如,四分之一或八分之一)像素精准度的运动向量用于PU。根据本发明的一些技术,视频编码器20可不需要产生对PU的运动向量的子像素精准度的指示以包括在经编码视频数据的位流中。代替地,视频解码器30可使用由视频编码器20使用的同一推导技术来推导运动向量精准度。根据本发明的其它技术,视频编码器20可在经编码视频数据的位流中包含视频解码器30可用以确定所选择运动向量精准度的一或多个语法元素。
根据下文更详细描述的本发明的技术,视频编码器20及/或视频解码器30可经配置以使用多个运动向量差(MVD)精准度中的一者(包含大于一的整数像素MVD精准度(例如,2、3、4或更大像素精准度))来确定当前视频数据块的MVD,且对视频数据的当前块的MVD进行译码。
为了计算分段整数像素位置的值(例如,在执行帧间预测时),视频编码器20可包含各种内插滤波器。举例来说,可使用双线性内插来计算分段整数像素位置的值。视频编码器20可经配置以关于PU的照度数据执行运动搜索以使用PU的照度数据计算运动向量。视频编码器20可接着重新使用运动向量来对PU的色度数据进行编码。通常,色度数据具有低于对应照度数据的分辨率,例如,照度数据的分辨率的四分之一。因此,色度数据的运动向量可具有高于照度数据的精准度。举例来说,视频编码器20及视频解码器30可将四分之一像素精准度运动向量(及所计算MVD)用于照度数据,且可将八分之一像素精准度用于色度数据。举例来说,视频编码器20及视频解码器30可将八分之一像素精准度运动向量用于照度数据,且可将十六分之一像素精准度用于色度数据。
在帧内预测或帧间预测译码以产生预测数据及残差数据之后,且在用以产生变换系数的任何变换(例如在H.264/AVC中所使用的4×4或8×8整数变换或离散余弦变换DCT)之后,可执行变换系数的量化。量化通常指代其中将变换系数量化以可能减少用于表示系数的数据的量的过程。量化过程可减小与系数中的一些或全部相关联的位深度。举例来说,n位值可在量化期间向下舍入到m位值,其中n大于m。
在量化之后,可例如根据内容适应性可变长度译码(CAVLC)、上下文适应性二进制算术译码(CABAC)或另一熵译码方法论执行量化数据的熵译码。经配置用于熵译码的处理单元或另一处理单元可执行其它处理功能,例如量化系数的零游程(run length)译码及/或例如经译码块图案(CBP)值、宏块类型、译码模式、LCU大小或其类似者的语法信息的产生。
如下文将更详细阐释,视频编码器20可经配置以接收待使用帧间预测模式编码的视频数据块;确定所述视频数据块的MVD;从三个或多于三个MVD精准度确定用于对指示所述MVD的一或多个语法元素进行编码的当前MVD精准度,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1;使用所述MVD及所述帧间预测模式对所述视频数据块进行编码;以及使用所述所确定当前MVD精准度对指示所述MVD的一或多个语法元素进行编码。同样地,视频解码器30可经配置以接收使用帧间预测模式编码的经编码视频数据块,接收与所述经编码视频数据块相关联的MVD的一或多个语法元素,针对指示所述MVD的所述一或多个语法元素从三个或多于三个MVD精准度而确定当前MVD精准度,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1,使用所述所确定当前MVD精准度来对指示所述MVD的所述一或多个语法元素进行解码,及使用所述经解码MVD对所述经编码视频数据块进行解码。
目的地装置14的视频解码器30可经配置以执行类似于且通常对称于本发明的视频编码器20的技术中的任一者或全部的技术。
图2为说明可实施用于对运动向量及/或MVD进行译码及/或发信的技术的视频编码器20的实例的框图。视频编码器20可在视频帧内的块(包含LCU、CU及PU)执行帧内及帧间预测,且计算可经编码为TU的残差值。帧内译码依赖于空间预测以减少或去除给定视频帧内的视频中的空间冗余。帧间译码依赖于时间预测以减少或去除视频序列的毗邻帧内的视频中的时间冗余。帧内模式(I模式)可指代数个基于空间的压缩模式中的任一者且帧间模式(例如单向预测(P模式)或双向预测(B模式))可指代数个基于时间的压缩模式中的任一者。运动估计单元42及运动补偿单元44可执行帧间预测译码,而帧内预测单元46可执行帧内预测译码。
如图2中所展示,视频编码器20接收待编码的视频帧内的当前视频块。在图2的实例中,视频编码器20包含视频数据存储器38、运动补偿单元44、运动估计单元42、帧内预测单元46、经解码图片缓冲器64、加法器50、变换单元52、量化单元54及熵编码单元56。为了视频块重构建,视频编码器20还包含逆量化单元58、逆变换单元60及加法器62。还可包含解块滤波器(图2中未展示)以对块边界进行滤波以将方块效应伪影从重构建视频去除。如果需要,解块滤波器将通常对加法器62的输出进行滤波。
视频数据存储器38可存储待由视频编码器20的组件编码的视频数据。存储在视频数据存储器38中的视频数据可例如从视频源18获得。经解码图片缓冲器64可为存储参考视频数据供用于由视频编码器20例如以帧内或帧间译码模式对视频数据进行编码的参考图片存储器。视频数据存储器38及经解码图片缓冲器64可由例如以下各者的各种存储器装置中的任一者形成:包含同步动态随机存取存储器(DRAM)(SDRAM)的DRAM、磁阻式RAM(MRAM)、电阻式RAM(RRAM),或其它类型的存储器装置。视频数据存储器38及经解码图片缓冲器64可由相同存储器装置或单独存储器装置提供。在各种实例中,视频数据存储器38可与视频编码器20的其它组件一起在芯片上,或相对于那些组件在芯片外。
在编码过程期间,视频编码器20接收待译码的视频帧或切片。帧或切片可被划分成多个视频块(例如,LCU)。运动估计单元42及运动补偿单元44相对于一或多个参考帧中的一或多个块执行对所接收视频块的帧间预测译码以提供时间压缩。帧内预测单元46可相对于与待译码的块相同的帧或切片中的一或多个相邻块执行对所接收视频块的帧内预测译码。
模式选择单元40可(例如)基于错误结果而选择译码模式中的一者(帧内或帧间译码模式),且将所得帧内或帧间译码块提供到加法器50以产生残差块数据且提供到加法器62以重构建经编码块以供用作参考帧。在模式选择单元40为块选择帧间模式编码时,分辨率选择单元48可为块选择运动向量(例如,子像素或整数像素精准度)的分辨率。举例来说,分辨率选择单元48可为块的运动向量及MVD选择八分之一像素精准度或四分之一像素精准度。
作为实例,分辨率选择单元48可经配置以比较使用四分之一像素精准度运动向量来对块进行编码与使用八分之一像素精准度运动向量来对块进行编码之间的错误差(例如,经重构建块与原始块之间的差)。运动估计单元42可经配置以在第一译码遍次中使用一或多个四分之一像素精准度运动向量且在第二译码遍次中使用一或多个八分之一像素精准度运动向量来对块进行编码。运动估计单元42可在第三编码遍次将一或多个四分之一像素精准度运动向量及一或多个八分之一像素精准度运动向量的各种组合进一步用于块。分辨率选择单元48可计算块的每一编码遍次的速率失真值且计算速率失真值之间的差。
在差超过阈值时,分辨率选择单元48可选择八分之一像素精准度运动向量来对块进行编码。分辨率选择单元48也可评估速率失真信息,分析位预算,及/或分析其它因素以确定当在帧间模式预测过程期间对块进行编码时将八分之一像素精准度还是四分之一像素精准度用于运动向量。在选择八分之一像素精准度或四分之一像素精准度用于待帧间模式编码的块之后,模式选择单元40或运动估计可将指示运动向量的所选择精准度的消息(例如,信号)发送到运动估计单元42。
另外,根据下文更详细描述的本发明的技术,视频编码器20可经配置以使用多个运动向量差(MVD)精准度中的一者来确定当前视频数据块的MVD,且对视频数据的当前块的MVD进行译码。如下文将更详细阐释,视频编码器20可经配置以接收待使用帧间预测模式编码的视频数据块;确定所述视频数据块的MVD;从三个或多于三个MVD精准度确定用于对指示所述MVD的一或多个语法元素进行编码的当前MVD精准度,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1;使用所述MVD及所述帧间预测模式对所述视频数据块进行编码;以及使用所述所确定当前MVD精准度对指示所述MVD的一或多个语法元素进行编码。
运动估计单元42及运动补偿单元44可高度集成,但出于概念目的予以单独说明。运动估计为产生运动向量的过程,所述运动向量估计视频块的运动。举例来说,运动向量可指示预测块在预测参考帧(或其它经译码单元)内相对于在当前帧(或其它经译码单元)内经编码的当前块的位移。预测块为经发现在像素差方面紧密匹配待译码块的块,所述像素差可通过以下各项来确定:绝对差总和(SAD)、平方差总和(SSD)或其它差度量。运动向量也可指示宏块的分区的位移。运动补偿可涉及基于由运动估计所确定的运动向量而提取或产生预测块。此外,在一些实例中,运动估计单元42及运动补偿单元44可在功能上集成。
运动估计单元42通过比较视频块与经解码图片缓冲器64中的参考帧的视频块来计算经帧间译码的帧的视频块的运动向量。运动补偿单元44还可内插参考帧(例如,I帧或P帧)的分段整数像素。作为实例,ITU H.264标准描述两个列表:列表0,其包含具有比经编码的当前帧早的显示次序的参考帧;以及列表1,其包含具有比对经编码的当前帧晚的显示次序的参考帧。因此,可根据这些列表组织存储在经解码图片缓冲器64中的数据。
在一些实例中,运动补偿单元44可经配置以在CU的照度数据的运动向量具有八分之一像素精准度时内插所述CU的色度数据的十六分的像素位置的值。为内插色度数据的十六分之一像素位置的值,运动补偿单元44可利用双线性内插。因此,加法器50可相对于参考块的十六分之一像素位置的双线性内插值计算CU的色度数据的残差。以这种方式,在使用具有照度数据的八分之一像素精准度的运动向量对译码单元的照度数据进行编码时,视频编码器20可使用双线性内插来计算由运动向量所识别的参考块的色度数据的十六分之一像素位置的值,且基于参考块的双线性内插值而对译码单元的色度数据进行编码。
运动估计单元42比较来自经解码图片缓冲器64的一或多个参考帧的块与当前帧(例如,P帧或B帧)的待编码块。在经解码图片缓冲器64中的参考帧包含分段整数像素的值时,由运动估计单元42计算的运动向量可指代参考帧的分段整数像素位置。运动估计单元42及/或运动补偿单元44还可经配置以在分段整数像素位置的值并未存储在经解码图片缓冲器64中的条件下计算存储在经解码图片缓冲器64中的参考帧的分段整数像素位置的值。运动估计单元42将所计算运动向量发送到熵编码单元56及运动补偿单元44。由运动向量识别的参考帧块可被称作预测块。
运动估计单元42、运动补偿单元44、模式选择单元40或视频编码器20的另一单元也可发信将四分之一像素精准度、八分之一像素精准度或其它运动向量精准度(例如,整数像素精准度或多个样本像素精准度)用于用于对块进行编码的运动向量。举例来说,运动估计单元42可将运动向量的分段整数像素精准度的指示发送到熵编码单元56。运动估计单元42也可将与关于对应于运动向量的PU的大小信息的上下文信息提供到熵编码单元56,其中大小信息可包含以下各项中的任一者或全部:包含PU的CU的深度、PU的大小及/或PU的类型。
运动补偿单元44可基于预测块而计算预测数据。视频编码器20通过将来自运动补偿单元44的预测数据从所译码的原始视频块减去来形成残差视频块。加法器50表示执行这种减法运算的(多个)组件。变换单元52将变换(例如,离散余弦变换(DCT)或概念上类似变换)应用于残差块,从而产生包括残差变换系数值的视频块。
变换单元52可执行其它变换,例如在概念上类似于DCT的由H.264标准定义的那些变换。也可使用小波形变换、整数变换、次频带变换或其它类型的变换。在任何状况下,变换单元52将变换应用于残差块,从而产生残差变换系数的块。变换可将残差信息从像素值域转换到变换域,例如,频域。量化单元54量化残差变换系数以进一步减小位率。量化过程可减小与系数中的一些或全部相关联的位深度。量化过程可通过调整量化参数来修改。
在量化之后,熵编码单元56对经量化变换系数进行熵译码。举例来说,熵编码单元56可执行内容CAVLC、CABAC或另一熵译码技术。在由熵编码单元56进行的熵译码之后,可将经编码视频发射到另一装置或存档以供稍后进行发射或检索。在上下文适应性二元算术译码的状况下,上下文可基于邻近宏块。
在一些状况下,熵编码单元56或视频编码器20的另一单元可经配置以同样执行除熵译码外的其它译码功能。举例来说,熵编码单元56可经配置以确定宏块及分区的CBP值。此外,在一些状况下,熵编码单元56可对宏块或其分区中的系数执行游程译码。特定而言,熵编码单元56可应用锯齿状扫描或其它扫描模式以扫描宏块或分区中的变换系数且对零游程进行编码以进行进一步压缩。熵编码单元56也可构建具有恰当语法元素的标头信息以在经编码的视频位流中发射。
根据本发明的技术,在其中发信而非推导MV/MVD精准度的情况下,熵编码单元56可经配置以对运动向量及/或MVD的MV/MVD精准度的指示进行编码(例如)以指示运动向量具有整数像素精准度还是具有子像素精准度,例如四分之一像素精准度或八分之一像素精准度(或在各种实例中,其它子像素精准度)。熵编码单元56可使用CABAC对指示进行编码。此外,熵编码单元56可使用上下文信息来执行CABAC以对指示关于对应于运动向量的PU的大小信息的指示进行编码,其中大小信息可包含以下各项中的任何者或全部:包含PU的CU的深度、PU的大小,及/或PU的类型。
如上文所论述,视频编码器20可预测地发信运动向量。可由视频编码器20实施的预测发信技术的两个实例包含AMVP及合并模式发信。在AMVP中,视频编码器20及视频解码器30两者基于从已经译码的块确定的运动向量而组译候选列表。视频编码器20接着发信到候选列表中的索引以识别运动向量预测子(MVP)且发信MVD。视频解码器30使用如由MVD修改的MVP(例如,使用等于MVP+MVD的运动向量)来帧间预测块。
在合并模式中,视频编码器20及视频解码器30两者基于已经译码的块而组译候选列表,且视频编码器20发信用于候选列表中的候选者中的一者的索引。在合并模式中,视频解码器30使用运动向量及所发信候选者的参考图片索引来帧间预测当前块。在AMVP及合并模式两者中,视频编码器20及视频解码器30利用相同列表构建技术,使得在确定对块进行编码的方式时由视频编码器20使用的列表匹配在确定对块进行解码的方式时由视频解码器30使用的列表。
逆量化单元58及逆变换单元60分别应用逆量化及逆变换以重构建像素域中的残差块(例如)以供稍后用作参考块。运动补偿单元44可通过将残差块加总到经解码图片缓冲器64的帧中的一者的预测块来计算参考块。运动补偿单元44也可将一或多个内插滤波器应用到经重构建残差块以计算分段整数像素值以供用于运动估计。加法器62将经重构建的残差块加总到由运动补偿单元44产生的运动补偿预测块以产生经重构建的视频块以存储在经解码图片缓冲器64中。经重构建视频块可由运动估计单元42及运动补偿单元44用作参考块以对随后视频帧中的块进行帧间译码。
图3为说明对经编码视频序列进行解码的视频解码器30的实例的框图。在图3的实例中,视频解码器30包含熵解码单元70、运动补偿单元72、帧内预测单元74、逆量化单元76、逆变换单元78、经解码图片缓冲器82及加法器80。视频解码器30可在一些实例中执行通常与关于视频编码器20(图2)所描述的编码遍次互逆的解码遍次。运动补偿单元72可基于从熵解码单元70接收的运动向量而产生预测数据。
视频数据存储器68可存储待由视频解码器30的组件解码的视频数据(例如经编码的视频位流)。可例如经由视频数据的有线或无线网络通信或通过存取物理数据存储媒体从计算机可读媒体16,例如,从本地视频源(例如相机)获得存储在视频数据存储器68中的视频数据。视频数据存储器68可形成存储来自经编码视频位流的经编码视频数据的经译码图片缓冲器(CPB)。经解码图片缓冲器82可为存储供用于由视频解码器30例如以帧内或帧间译码模式对视频数据进行解码的参考视频数据的参考图片存储器。视频数据存储器68及经解码图片缓冲器82可由各种存储器装置(例如DRAM(包含同步SDRAM)、MRAM、RRAM或其它类型的存储器装置)中的任一者形成。视频数据存储器68及经解码图片缓冲器82可由相同存储器装置或单独存储器装置提供。在各种实例中,视频数据存储器68可与视频解码器30的其它组件在芯片上,或相对于那些组件在芯片外。
熵解码单元70可例如从视频数据存储器68检索经编码位流。经编码位流可包含经熵译码视频数据(例如,视频数据的经编码块)。熵解码单元70可对经熵译码视频数据进行解码,且根据经熵解码视频数据,运动补偿单元72可确定运动信息,包含运动向量、运动向量精准度、参考图片列表索引及其它运动信息。运动补偿单元72可例如通过执行上文所描述的AMVP及合并模式技术来确定所述信息。
运动补偿单元72可使用在位流中接收的运动向量及/或MVD以识别经解码图片缓冲器82中的参考帧中的预测块。用于对运动向量及/或MVD进行编码的精准度可由精准度指示符(例如,一或多个语法元素)定义,所述精准度指示符由熵解码单元70进行解码。帧内预测单元74可使用在位流中接收的帧内预测模式来由空间毗邻块形成预测块。逆量化单元76对在位流中提供且由熵解码单元70解码的经量化块系数进行逆量化,即,解量化。逆量化过程可包含传统过程,例如,如由H.264解码标准所定义。逆量化过程也可包含将由视频编码器20计算的量化参数QPY用于每一宏块以确定量化程度以及同样地应应用的逆量化的程度。
逆变换单元58将逆变换(例如,逆DCT、逆整数变换或概念上类似逆变换过程)应用于变换系数以便在像素域中产生残差块。运动补偿单元72产生运动补偿块,可能基于内插滤波器而执行内插。待用于具有子像素精准度的运动估计的内插滤波器的识别符可包含在语法元素中。
运动补偿单元72可使用如在对视频块进行编码期间由视频编码器20所使用的内插滤波器来计算参考块的分段整数像素的内插值。运动补偿单元72可根据所接收语法信息来确定由视频编码器20所使用的内插滤波器且使用内插滤波器来产生预测块。根据本发明的技术,运动补偿单元72可在运动向量具有用于照度数据的八分之一像素精准度时内插参考块的色度数据的十六分之一像素位置的值。例如,运动补偿单元72可使用双线性内插来内插参考块的十六分之一像素位置的值。
运动补偿单元72使用以下各项中的一些:用以确定用于对经编码视频序列的帧及/或切片进行编码的LCU及CU的大小的语法信息、描述经编码视频序列的帧的每一宏块经分区的方式的分区信息、指示对每一分区进行编码的模式、用于每一帧间编码CU的一或多个参考帧(及参考帧列表),及用以对经编码视频序列进行解码的其它信息。
根据下文更详细描述的本发明的技术,视频解码器30可经配置以使用多个MVD精准度中的一者来确定当前视频数据块的MVD,且对视频数据的当前块的MVD进行译码。如下文将更详细阐释,视频解码器30可经配置以接收使用帧间预测模式编码的经编码视频数据块,接收与所述经编码视频数据块相关联的MVD的一或多个语法元素,针对指示所述MVD的所述一或多个语法元素从三个或多于三个MVD精准度而确定当前MVD精准度,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1,使用所述所确定当前MVD精准度来对指示所述MVD的所述一或多个语法元素进行解码,及使用所述经解码MVD对所述经编码视频数据块进行解码。
加法器80对残差块与由运动补偿单元72或帧内预测单元产生的对应预测块进行求和以形成经解码块。视需要,也可应用解块滤波器来对经解码块进行滤波以便去除方块效应伪影。接着将经解码的视频块存储在经解码图片缓冲器82中,经解码图片缓冲器提供参考块用于随后运动补偿且还产生经解码视频以用于在显示装置(例如图1的显示装置32)上呈现。
图4为说明全像素位置的分数像素位置的概念图。特定而言,图4说明全像素(pel)100的分数像素位置。全像素100对应于半像素位置102A到102C(半像素102)、四分之一像素位置104A到104L(四分之一像素104)及八分之一像素位置106A到106AV(八分之一像素106)。
图4说明使用虚线轮廓来指示可任选地包含这些位置的块的八分之一像素位置106。即,如果运动向量(例如,如由相同精准度的MVD重构建)具有八分之一像素精准度,那么运动向量可指向全像素位置100、半像素位置102、四分之一像素位置104或八分之一像素位置106中的任一者。然而,如果运动向量具有四分之一像素精准度,那么运动向量可指向全像素位置100、半像素位置102或四分之一像素位置104中的任一者,但将不指向八分之一像素位置106。应进一步理解,在其它实例中,可使用其它精准度,例如十六分之一像素精准度、三十二分之一像素精准度或其类似者。
全像素位置100处的像素的值可包含在对应参考帧中。即,全像素位置100处的像素的值通常对应于参考帧中的像素(例如,在显示参考帧时最终显现及显示的像素)的实际值。可使用适应性内插滤波器或固定内插滤波器(例如,各种数目个“分接”(系数)的滤波器,例如各种维纳(Wiener)滤波器、双线性滤波器或其它滤波器)来内插半像素位置102、四分之一像素位置104及八分之一像素位置106(统称为分数像素位置)的值。一般来说,可从一或多个相邻像素内插分数像素位置的值,所述一或多个邻近像素对应于邻近全像素位置或先前确定分数像素位置的值。
在本发明的一些实例中,如下文将更详细论述,视频编码器20可在多样本像素精准度、整数像素精准度或分数像素精准度(例如八分之一像素精准度及四分之一像素精准度)之间适应性选择运动向量及/或MVD的精准度。视频编码器20可对每一运动向量、每一CU、每一LCU、每一切片、每一帧、每一GOP或视频数据的每一经译码单元进行所述选择。在视频编码器20为运动向量选择四分之一像素精准度时,运动向量可指代全像素位置100、半像素位置102或四分之一像素位置104中的任一者。在视频编码器20为运动向量选择八分之一像素精准度时,运动向量可指代全像素位置100、半像素位置102、四分之一像素位置104或八分之一像素位置106中的任一者。
图5A到5C为说明对应色度及照度像素位置的概念图。图5A到5C还说明可将针对照度数据所计算的运动向量重新用于色度数据的方式。作为初步事项,图5A到5C说明像素位置的部分行。应理解,实际上,全像素位置可具有相关联分数像素位置的矩形栅格,例如图4中所说明的。图5A到5C的实例打算说明本发明中所描述的概念,且并不打算作为分数色度像素位置与分数照度像素位置之间的对应性的穷尽性列举。
图5A到5C说明照度块的像素位置,包含全照度像素位置110、半照度像素位置116、四分之一像素位置112及八分之一照度像素位置114A、114B。图5A到5C还说明色度块的对应像素位置,包含全色度像素位置120、四分之一色度像素位置122、八分之一色度像素位置124及十六分之一色度像素位置126A、126B。在这个实例中,全色度像素120对应于全照度色度110。此外,在这个实例中,相对于照度块在水平上及垂直上对色度块降低采样二倍。因此,四分之一色度像素122对应于半照度像素116。类似地,八分之一色度像素124对应于四分之一照度像素112,十六分之一色度像素126A对应于八分之一照度像素114A,且十六分之一色度像素126对应于八分之一照度像素114B。
在高级视频编解码器(例如,H.264/AVC、H.265/HEVC及可能根据H.264及H.265/HEVC之后继编解码器)中,发信运动向量的位成本可增加。为降低所述位成本,可使用解码器侧MV推导(DMVD)。在S.Kamp及M.Wien的“用于基于块的视频译码的解码器侧运动向量推导(Decoder-side motion vector derivation for block-based video coding)”(IEEE用于视频技术的电路及系统学报,22卷,第1732到1745页,2012年12月)基于L形状模板匹配而提出DMVD。
图6为关于DMVD的实例L形状模板匹配的说明。在图6的实例中,使用模板匹配来对当前图片134的当前块132进行帧间预测。模板136定义覆盖当前块132的已经解码邻近块的形状。视频解码器(例如,视频解码器30)可例如首先比较包含在由模板136覆盖的已经解码邻近块中的像素值与包含在已由同置模板138覆盖的已经解码邻近块中的像素值,所述同置模板覆盖位于参考图片140的参考图片中的块。视频解码器可接着使模板移动到参考图片中的其它位置且将由模板覆盖的像素值与包含在由模板136覆盖的已经解码邻近块中的像素值进行比较。
基于这些多个比较,视频解码器可确定最好的匹配,例如图6的实例中所展示的最好的匹配142。视频解码器可接着确定最好的匹配与同置模板之间的位移。所述位移(例如,图6中的位移144)对应于用于预测当前块132的运动向量。
如图6中所说明,当以DMVD模式对块进行译码时,通过视频解码器30搜索块的MV,如与直接发信到视频解码器30相反。由模板匹配导致最小失真的MV经选择为块的最终MV。为保持高译码效率,解码器30可能需要特定数目个模板匹配以选择候选运动向量作为用以对当前块进行解码的MV,这可增加解码复杂性。
为降低DMVD中的解码复杂性,在Y.-J.Chiu、L.Xu、W.Zhang、H.Jiang的“用于HEVC的解码器侧运动估计及维纳滤波器(DECODER-SIDE MOTION ESTIMATION AND WIENERFILTER FOR HEVC)”(VCIP2013年研习会,马来西亚,2013年11月17日到20日)中提出基于反射镜的双向MV推导方法。
图7为说明基于实例反射镜的双向MV推导的概念图。如图7中所说明,可在解码器侧以分数样本准确度围绕搜索中心由中心对称运动估计应用基于反射镜的双向MV推导。可在位流中预先定义及发信搜索窗口的大小/位置。在图7中,dMV为经加总到PMV0且从PMV1减去以产生MV对(MV0及MV1)的偏移。可检查搜索视窗内部的dMV的全部值且L0参考块与L1参考块之间的绝对差总和(SAD)可用作中心对称运动估计的测量值。可选择具有最小SAD的MV对作为块的最终MV。
现在将论述与适应性运动向量分辨率有关的技术。子像素运动补偿通常比整数像素运动补偿更高效。然而,针对一些视频内容,例如具有极其高频率分量或屏幕内容的纹理内容,子像素运动补偿展示不好或甚至更差性能。在这些状况中,仅具有以整数像素精准度译码的MV及/或MVD可为更好的。
如在L.Guo、P.Yin、Y.Zheng、X.Lu、Q.Xu、J.Solé的“具有隐式发信的适应性运动向量分辨率(Adaptive motion vector resolution with implicit signaling)”(ICIP2010:2057-2060)中所描述,基于经重构建残差(例如,残差值)而描述适应性MV分辨率。在经重构建残差块的变异数超过阈值时,视频编码器20及视频解码器30可确定使用四分之一像素运动向量精准度。以其它方式,视频编码器20及视频解码器30在对运动向量及MVD进行译码时使用半像素运动向量精准度。
如在J.An、X.Li、X.Guo、S.Lei的“渐进式MV分辨率(Progressive MVResolution)”(JCTVC-F125,意大利托里诺,2011年7月)中所描述,基于发信MV差的量值而适应性地确定振幅MV分辨率。如在Y.Zhou、B.Li、J.Xu、G.J.Sullivan、B.Lin的“用于屏幕内容译码的运动向量分辨率控制(Motion Vector Resolution Control for ScreenContent Coding)”(JCTVC-P0277,美国圣荷西,2014年1月)中所描述,在一些实例中,视频编码器20可经配置以按切片级发信运动向量精准度信息。
在其它实例(例如美国专利公开案第2015/0195562号中所描述那些实例)中,视频编码器20可经配置以使用以下技术中的一或多者来条件性地发信MV精准度信息。
如上文所论述,在一些实例中,针对屏幕内容提出解码器侧运动向量精准度推导方法。在这个实例中,运动向量精准度可相依于视频解码器30处的模板匹配的结果。在整数像素位置的模板匹配结果与其邻近子像素位置的模板匹配结果相当不同(例如,大于某一阈值距离)时,可将有关区域视为屏幕内容且视频解码器30可以整数像素精准度对MV进行解码。另一方面,视频解码器30可经配置以使用子像素运动向量精准度。为定义“相当不同”,可使用一或多个固定或适应性阈值。
视频解码器30可例如通过基于模板匹配而确定运动向量精准度来对视频数据进行解码。在这个实例中,视频解码器30可针对所译码的当前块识别已经译码邻近块的整数像素位置且基于整数像素位置的位置应用模板以确定多个整数像素位置。视频解码器30也可将模板应用于多个子像素位置以确定多个子像素位置。模板可例如界定形状,且视频解码器30可将模板应用于视频数据以通过基于形状相对于当前块的位置而定位多个整数像素位置来确定多个整数像素位置。类似地,视频解码器30可将模板应用于视频数据以通过基于形状相对于当前块的位置而定位多个子像素位置来确定多个子像素位置。
视频解码器30可比较多个整数像素位置的一或多个像素值与多个子像素位置的一或多个像素值,且基于所述比较而确定运动向量的运动向量精准度。视频解码器30可使用运动向量对当前块进行解码。视频解码器30可例如使用合并模式、AMVP模式或一些其它这类模式来确定运动向量。
视频解码器30可通过以下步骤来确定运动向量的运动向量精准度:比较多个整数像素位置的一或多个像素值与多个子像素位置的一或多个像素值以确定对应于多个整数像素位置的一或多个像素值与多个子像素位置的一或多个像素值之间的像素值的差量的差值。响应于差值大于阈值,视频解码器30可确定运动向量精准度为整数像素精准度。响应于差值小于阈值,视频解码器30可确定运动向量精准度为子数像素精准度。阈值可为固定值、适应值或一些其它类型的值。为比较多个整数像素位置的一或多个像素值与多个子像素位置的一或多个像素值,视频解码器30可例如确定多个整数像素位置的一或多个像素值与多个子像素位置的一或多个像素值之间的绝对差的总和。
根据本发明的其它技术,运动向量精准度可相依于空间邻近块、时间邻近块或两者的性质(例如清晰度、梯度或是否跳过变换)。运动向量精准度信息可由视频解码器30推导。替代地或另外,运动向量精准度可相依于空间邻近块、时间邻近块或两者的运动向量精准度。
视频解码器30可例如基于邻近块性质而确定运动向量精准度。邻近块可例如包含至少一个空间邻近块及/或至少一个时间邻近块。针对所译码的当前块,视频解码器30可定位一或多个邻近块且确定一或多个邻近块的性质。性质可例如为一或多个邻近块的清晰度、一或多个邻近块的梯度(在一或多个邻近块是以跳过模式译码的条件下)及/或一或多个邻近块的运动向量精准度中的一或多者。基于一或多个邻近块的性质,视频解码器30可确定运动向量的运动向量精准度且使用运动向量来对当前块进行解码。视频解码器30可例如在不发信的情况下(例如,基于上下文)确定待确定哪一(哪些)性质,可始终确定固定性质,或可接收对确定哪一(哪些)性质的指示。
在本发明的另一实例技术中,视频编码器20可在位流(例如,一或多个语法元素)中发信指示符,所述指示符规定使用哪一(哪些)解码器侧运动向量精准度方法。举例来说,视频编码器20可在位流中直接发信指示符及/或视频解码器30可从译码于位流中的其它信息(例如切片类型及时间层级)推导指示符的值。
视频解码器30可例如在经编码视频位流中接收运动向量精准度发信类型的指示,且基于运动向量精准度发信类型,确定视频数据的块的运动向量精准度。视频解码器30可使用所确定运动向量精准度的运动向量来定位视频数据块的参考块。运动向量精准度发信类型可例如为以下各项中的一者:(1)如上文所描述的模板匹配类型,(2)如上文所描述的基于邻近块性质的类型,或(3)直接发信类型,如下文将更详细所描述。
视频解码器30可例如以切片标头、序列参数集(SPS)、图片参数集(PPS)或以某一其它层级接收运动向量精准度的指示。在一些实例中,视频解码器30可接收对译码单元或预测单元中的一或多者的运动向量预测的指示。指示可例如为切片类型。换句话说,视频解码器30可确定特定切片的切片类型,且基于彼切片类型,可确定运动向量精准度以用于彼切片的解码块。指示可例如为切片的时间层级。换句话说,视频解码器30可确定切片的时间层级,且基于切片的时间层级而确定运动向量精准度以用于切片的解码块。
在另一实例中,视频编码器20可经配置以在位流中(例如以最大译码单元LCU层级、CU层级或PU层级)发信运动向量精准度信息。换句话说,视频编码器20可产生一或多个语法元素以包括在经编码视频数据的位流中,且视频解码器30可剖析那些语法元素来确定特定视频数据块的运动向量精准度。在CU经指示具有整数精准度MV时,所述CU内部的所有PU具有整数运动向量精准度。
在实例中,针对合并/跳过模式,视频解码器30可仅在执行运动补偿时将运动向量舍入成整数精准度。未经舍入的MV可经保存用于稍后块的MV预测。例如,视频解码器30可确定第一块的译码模式为并入模式或跳过模式且确定第一块的运动向量精准度为整数像素精准度。视频解码器30可构建包含至少一个分数精准度运动向量候选者的第一块的合并候选列表。视频解码器30可选择分数精准度运动向量候选者以对第一块进行解码且将分数精准度运动向量候选者舍入以确定整数像素精准度运动向量。视频解码器30可使用整数像素精准度运动向量定位第一块的参考块。
针对第二块(例如,基于第一块的信息译码的块),视频解码器30可将整数精准度运动向量候选者加总到第二块的候选列表(例如,合并候选列表或AMVP候选列表)。然而,在其它实例中,视频解码器30可将分数精准度运动向量候选者加总到第二块的候选列表。
针对非合并/跳过帧间模式,MV预测子可舍入成整数精准度,且MVD可以整数精准度发信使得经舍入MV可经保存用于稍后块MV预测。替代地或另外,视频编码器20及视频解码器30可经配置以在舍入之前将MV保存到稍后块MV预测。在实例中,针对这种状况,可仅对运动补偿执行舍入。替代地或另外,经舍入MV可用于运动补偿且可经保存用于稍后块MV预测。
例如,视频解码器30可确定第一块的译码模式并非并入模式且确定第一块的运动向量精准度为整数像素精准度。视频解码器30可确定第一块的分数精准度MVP且将分数精准度MVP舍入以确定第一块的整数像素精准度MVP。视频解码器30可确定第一块的MVD为整数像素精准度。视频解码器30可基于整数像素精准度MVP及分数精准度MVD而确定整数像素精准度运动向量。视频解码器30可使用整数像素精准度运动向量定位第一块的参考块。
视频解码器30可例如通过构建第一块的AMVP候选列表来确定第一块的分数精准度MVP。AMVP候选列表可包含分数精准度运动向量候选者。视频解码器30可选择分数精准度运动向量候选者作为第一块的分数精准度MVP。视频解码器30可将分数精准度运动向量候选者加总到使用第一块预测的第二块的候选列表。
替代地或另外,在实例中,可发信MVD精准度信息,且在一些实例中,可始终使用子像素精准度MV。可以LCU层级、以CU层级或以PU层级发信MVD精准度。在一个实例中,在PU(或CU)经指示具有整数精准度MVD时,PU(或所述CU内部的所有PU)可具有整数MVD精准度。针对AMVP译码PU,PU的MVD可具有整数像素精准度,而经预测MV及PU的MV可具有子像素精准度。因此,将整数精准度MVD加总到子像素精准度MVP产生子像素运动向量。
例如,视频解码器30可确定第一块的MVD精准度为整数像素精准度。视频解码器30可构建包含至少一个分数精准度运动向量候选者的第一块的MVP的候选列表(例如,及AMVP候选列表)。视频解码器30可从候选列表选择分数精准度运动向量候选者且基于分数精准度运动向量候选者及整数像素精准度MVD而确定分数像素精准度运动向量。视频解码器30可使用分数像素精准度运动向量定位第一块的参考块。
在另一实例中,可将运动向量精准度旗标部分地应用于LCU或CU。例如,未将CU整数精准度旗标应用于其PU,以预定义译码模式(例如合并及跳过)或用预定义分区(例如非2N×2N分区)或用空间译码工具(例如变换跳过或无残差)对所述PU进行译码。
在一个实例中,视频解码器30可确定视频数据的默认运动向量精准度,且响应于以特殊模式译码的视频数据的PU,使用默认运动向量精准度的运动向量来定位PU的参考块。特殊模式可例如为跳过模式、2Nx×2N合并模式、合并模式、变换跳过模式或非对称分区模式中的一或多者。响应于使用除特殊模式外的模式对视频数据的第二PU进行译码,视频解码器30可针对视频数据的第二PU确定所发信运动向量精准度且使用所发信运动向量精准度的运动向量来定位第二PU的参考块。视频解码器30可针对视频数据的CU确定所发信运动向量精准度不同于默认运动向量精准度。CU可例如包含PU及/或第二PU。在一个实例中,所发信运动向量精准度可为整数像素精准度而默认运动向量精准度为分数运动向量精准度。在其它实例中,默认运动向量精准度可为分数运动向量精准度。
在一个实例中,视频编码器20可经配置以对关于仅具有非零MVD的PU或CU的MV/MVD精准度信息进行编码并发信所述MV/MVD精准度信息。在未发信MV/MVD精准度信息时,视频解码器30可经配置以将子像素MV精准度用于PU或CU。视频编码器20可经配置以在对PU或CU的MVD进行编码并发信之后发信MV/MVD精准度信息。在一些实例中,等于零的MVD可指示MVD的垂直分量及MVD的水平分量等于0。
作为一个实例,针对当前视频数据块,视频解码器30可接收指示MVD值的一或多个语法元素。响应于MVD值等于零,视频解码器30可经配置以确定当前块的运动向量具有子像素运动向量精准度。等于零的MVD值可指示MVD值的x分量及MVD值的y分量等于零。
针对视频数据的第二当前块,视频解码器30可接收指示第二MVD值的一或多个语法元素,且响应于第二MVD值为非零值,接收第二当前块的第二运动向量的第二向量精准度的指示。视频解码器30可在参考图片中使用第二运动向量定位第二当前块的参考块。针对第二当前块,视频解码器30可在接收第二MVD值之后接收运动向量精准度的指示。
在以PU层级发信MV/MVD精准度信息时,视频编码器20可经配置以在以下条件中的一或多者(例如,任一者)为真的条件下不发信MV/MVD精准度信息:(1)以合并/跳过模式对PU进行译码,(2)以AMVP模式对PU进行译码,且PU的每一预测方向上的MVD等于零,或(3)另外或替代地,如果一个CU一起含有经帧内译码PU及帧间译码PU,这在HEVC中为不允许的。在PU为帧内译码时,跳过以PU层级发信MV/MVD精准度信息。
视频解码器30可例如针对视频数据的第一块(例如,第一PU)接收指示第一运动向量精准度信息的一或多个语法元素。响应于视频数据的第二块满足条件,视频解码器30可确定第二运动向量信息对应于默认运动向量精准度。在一个实例中,条件可为使用合并模式或跳过模式对第二块进行译码。在另一实例中,条件可为使用AMVP模式对第二块进行译码且第二块的每一预测方向的MVD等于零。例如,默认精准度可在一些实例中为分数精准度或在其它实例中为整数精准度。第一及第二运动向量精准度信息可例如为运动向量精准度或MVD精准度中的一者或两者。
在以CU层级发信MV/MVD精准度信息时,如果以下条件中的一者(且可能一或多者)针对CU内的所有PU为真则可不发信MV/MVD精准度信息:(1)对PU进行帧内译码,(2)以合并/跳过模式对PU进行译码,或(3)以AMVP模式对PU进行译码,且PU的每一预测方向中的MVD等于零。替代地或另外,在未发信运动向量精准度信息时,可将默认运动向量精准度,例如整数运动向量精准度用于PU或CU。
视频解码器30可例如针对视频数据的第一CU接收第一运动向量精准度信息,且响应于视频数据的第二CU满足条件,确定第二运动向量信息对应于默认精准度。条件可例如为对CU内的所有PU进行帧内译码,使用合并模式或跳过模式对CU内的所有PU进行译码,使用AMVP对CU内的所有PU进行译码且所有PU的每一方向的MVD等于零。默认精准度可例如为分数精准度或可无精准度。举例来说,如果块为帧内预测,那么块不具有相关联运动向量且因此无相关联运动向量精准度。第一及第二运动向量精准度信息可例如包含运动向量精准度或MVD精准度中的一者或两者。
在如同整数像素运动向量精准度一样发信/推导当前经AMVP译码PU时,可在AMVP列表的产生过程中剪除之前将来自空间邻近块、时间邻近块或两者的一或多个(且在一些实例中,全部)MV候选者舍入成整数像素精准度。在整数像素MV经发信/推导以用于当前合并、跳过译码CU/PU或两者时,可在合并列表的产生过程中剪除之前将来自空间时间邻近块、时间邻近块或两者的一或多个(且在一些实例中,全部)MV候选者舍入成整数像素精准度。
例如,视频解码器30可识别一或多个运动向量候选者以供包括在块的候选列表(例如,合并候选列表或AMVP候选列表)中。一或多个运动向量候选者可例如包含一或多个空间邻近候选者及/或一或多个时间邻近候选者。一或多个运动向量候选者可包含至少一个分数精准度运动向量候选者。响应于块的运动向量精准度为整数像素精准度,视频解码器30可将一或多个运动向量候选者舍入以确定一或多个整数精准度运动向量候选者。视频解码器30可对一或多个整数精准度运动向量候选者执行剪除操作。
在实例中,运动向量精准度旗标可用作(或条件性地用作)其它语法元素的CABAC上下文。即,取决于运动向量精准度旗标的不同上下文模型可用于对某些语法元素进行译码。在一个实例中,在对例如PU的块的AMVP候选者索引进行译码时,将PU的运动向量精准度旗标或相关联CU或空间邻近块或时间邻近块用作CABAC译码上下文。替代地或另外,在一些实例中,等于0的AMVP候选索引的初始化概率可在运动向量精准度旗标指示整数像素运动向量精准度时设定接近于1。替代地或另外,在一些状况下,例如仅在B切片中,或仅在帧处于某些时间层级时,或在量化参数大于预先定义阈值时,运动向量精准度旗标可用作其它语法元素(例如AMVP候选索引)的CABAC上下文。
可组合这些实例中的一或多者。例如,实际上,可将实例的任何部分的任何组合用作新实例。另外,下文论述上述实例的子实例。
一些实例涉及屏幕内容的解码器侧运动向量精准度推导。在一个实例中,可使用经重构建样本上的L形状或其它形状模板匹配。运动向量精准度可基于整数像素位置的模板匹配结果(例如SAD)与其邻近子像素位置的匹配结果之间的差。举例来说,在整数像素位置的匹配结果低得多时,整数像素精准度适用。否则,子像素精准度适用。为定义“低得多”,可使用阈值。实际上,可使用固定阈值、适应性阈值或两者。针对适应性阈值,适应性阈值可在位流中发信或基于其它信息(例如在位流中发信之块类型或QP)推导。另外,也可定义关于“高得多”状况的阈值。因此,在整数字置的匹配结果减邻近子像素位置的匹配结果高于“高得多”阈值时,可使用四分之一像素精准度。在匹配差在“低得多”与“高得多”阈值之间时,可使用半像素精准度。替代地或另外,在上述实例中替代地可使用其它模板匹配方法,例如基于反射镜双向模板匹配。
在另一实例中,可在解码器侧处基于空间或时间邻近块的性质(例如梯度、清晰度或针对块是否跳过变换)来推导运动向量精准度信息。阈值信息可在位流中发信,从位流推导,或两者。
一些实例涉及指示符发信。为适应性地配合不同内容,可使用解码器侧运动向量精准度推导(DMPD)的不同方法的组合。为指示哪些方法在使用中,可在位流中发信指示符。在一个实例中,可以切片层级或以上层级发信指示符以明确地告知解码器将使用哪一(哪些)DMPD方法。在另一实例中,在位流中发信一些DMPD方法的使用同时基于位流中其它信息(例如切片类型及切片的时间层级)而推导其它DMPD方法的使用。
一些实例涉及所发信适应性运动向量精准度。在这个实例中,可在位流中例如以LCU、CU或PU层级发信运动向量精准度。可使用旗标/值来指示运动向量精准度,例如整数精准度、半像素精准度、四分之一像素精准度或其它精准度。在针对一个块或一个区域/切片发信运动向量精准度时,所述块/区域/切片内的所有较小块可共享相同运动向量精准度。此外,也可以所发信精准度发信MVD信息。在运动补偿之前,MV(MV预测子+MVD)可舍入到所发信精准度。舍入可接近正无穷大、负无穷大、零或无穷大(负值经舍入到负无穷大而正值经舍入到正无穷大)。替代地或另外,可首先如上文所提及将MV预测子舍入且接着形成块的MV。在运动补偿之后,保持块的MV用于稍后块的MV预测。在保存MV时,可保存经舍入MV,例如,以稍后用作随后经解码块的合并候选者或AMVP候选者。替代地或另外,可替代经舍入运动向量保存未经舍入MV,这可能使运动字段更准确。
在另一实例中,针对跳过模式、2N×2N合并模式或两者并未发信运动向量精准度信息。在这个实例中,也可针对合并PU未发信运动向量精准度信息。替代地或另外,以特殊译码模式(例如合并模式及跳过模式)译码,或具有特殊分区(例如非对称分区),或具有特殊变换深度或具有变换跳过的PU可保持默认运动向量精准度,例如四分之一像素,甚至在以其CU层级发信整数精准度MV时。替代地或另外,也可将其它译码信息(例如时间层级、QP、CU深度)视为特殊译码模式或特殊译码工具。
在以CABAC对运动向量精准度信息进行熵译码时,空间邻近块/CU中的除运动向量精准度信息外的上下文可用于保存行缓冲器,例如CU深度、PU分区、块大小、时间层级等等。
下文展示用于块(例如,PU)的实例MVD发信的虚拟码、语法及语意。
abs_mvd_greater0_flag[0]及abs_mvd_greater0_flag[1]为一个值格(bin)且共享相同上下文。
abs_mvd_greater1_flag[0]及abs_mvd_greater1_flag[1]为一个值格且共享相同上下文。
abs_mvd_minus2[0]及abs_mvd_minus2[1]为具有等于1参数的指数哥伦布(golomb)码。
在本发明的一个实例中,用于指示MVD的一或多个语法元素(例如,表示MVD的水平及垂直分量的码字)可包含abs_mvd_greater0_flag[x]、abs_mvd_greater1_flag[x]、abs_mvd_minus2[x]及mvd_sign_flag[x],其中[x]规定MVD的水平或垂直分量(例如,[0]用于水平分量且[1]用于垂直分量)。语法元素abs_mvd_greater0_flag[x]的值指示针对特定水平或垂直分量的MVD的绝对值是否大于零。语法元素abs_mvd_greater1_flag[x]的值指示针对特定水平或垂直分量的MVD的绝对值是否大于一。应注意,如果对应abs_mvd_greater0_flag[x]的值指示MVD的分量的绝对值大于零,那么仅对语法元素abs_mvd_greater1_flag[x]进行译码。abs_mvd_minus2[x]的值指示针对特定水平或垂直分量的MVD的绝对值。应注意,如果对应abs_mvd_greater1_flag[x]的值指示MVD的分量的绝对值大于一,那么仅对语法元素abs_mvd_minus2[x]进行译码。语法元素mvd_sign_flag[x]的值指示MVD的极性(例如,正或负)或每一分量。上述为可对MVD进行译码的方式的一个实例。当然,可使用其它语法元素群组来对MVD进行译码。
现有适应性MV(MVD)精准度技术仅允许在整数像素与分数像素层级之间切换MV/MVD精准度。分数像素层级可包含四分之一像素(或四分之一明度样本)精准度及/或八分之一像素(或八分之一明度样本预测)。在四分之一像素精准度中,MV或MVD的连续码字值之间的差等于像素(或明度样本)之间的距离的四分之一。同样地,在八分之一像素精准度中,MV或MVD的连续码字值之间的差等于像素(或明度样本)之间的距离的八分之一。在整数像素精准度中,MV或MVD的连续码字值之间的差在距离上等于全像素(或明度样本)。
然而,针对具有高运动(例如,帧间的大改变)的大分辨率序列的状况,具有整数像素精准度的MV及/或MVD发信可不足够在预测效率与MV及/或MVD信息的位额外负荷之间实现最优折衷。即,与较低分辨率序列相比,MV及MVD可在高分辨率序列中具有较大值。MV及MVD的较大值可导致需要大量位来发信指示MV及/或MVD的一或多个语法元素。
为解决上文所论述可能问题,本发明描述以下技术。视频编码器20及/或视频解码器30可经配置以执行下文所描述的技术中的每一者。可以任何组合方式个别地或共同地执行以下技术。
在本发明的第一实例中,视频编码器20可经配置以发信以多个明度样本(多于一个整数明度样本)为单位的MVD,且视频解码器30可经配置以接收所述MVD。即,除了将MV及/或MVD的精准度限制于分数像素或整数像素精准度,视频编码器20及视频解码器30可经配置以使用为距离上多个明度样本(例如,明度或色度样本)精准度表示MV及MVD。在一个实例中,多样本MV/MVD精准度可被称作N样本MV/MVD精准度,其中N为指示由指示MV/MVD的一或多个语法元素的每一连续码字(例如,用于MV/MVD的水平及垂直分量)指示的样本数目的整数。
根据本发明的实例,视频编码器20及视频解码器30可经配置以从三个或多于三个MV/MVD精准度间确定MV/MVD精准度。在这个实例中,三个或多于三个MV/MVD精准度包含一或多个N样本MVD精准度。在一个实例中,为了MV/MVD发信,除了现有四分之一样本及整数样本MV/MVD精准度,可将N样本MVD精准度(例如,明度及/或色度样本)应用于块/CU/PU。N的值为预定义的,且可为(但不限于)2、3或4。在一个实例中,N的值可在位流中(例如以序列参数集(SPS)、图片参数集(PPS)或切片标头或任何其它层级参数集)发信。
在本发明的一个实例中,视频编码器20可经配置以接收待使用帧间预测模式(例如,AMVP模式)编码的视频数据块。在确定运动向量且选择运动向量预测之后,如上文所论述,视频编码器20可经进一步配置以确定视频数据的块的MVD。根据本发明的技术,视频编码器20可经配置以从三个或多于三个MVD精准度确定用于编码指示MVD的一或多个语法元素的当前MVD精准度。三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1。视频编码器20可接着使用MVD及帧间预测模式对视频数据块进行编码,以及使用所确定当前MVD精准度对指示MVD的一或多个语法元素进行编码。
以互逆方式,视频解码器30可经配置以接收使用帧间预测模式编码的经编码视频数据块(例如,AMVP模式),及接收与所述经编码视频数据块相关联的MVD的一或多个语法元素。根据本发明的技术,视频解码器30可经配置以针对指示所述MVD的所述一或多个语法元素从三个或多于三个MVD精准度而确定一当前MVD精准度。三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1。视频解码器30可经进一步配置以使用所述所确定当前MVD精准度来对指示所述MVD的所述一或多个语法元素进行解码,及使用所述经解码MVD对所述经编码视频数据块进行解码。例如,如上文所描述,视频解码器30可检索与当前块的MVP相关联的运动向量,且将所检索运动向量加总到所解码MVP以确定当前块的运动向量。可接着使用所确定运动向量来检索预测块以便对当前块执行帧间预测。
图8为说明整数像素/样本(例如,色度或明度样本)位置的概念图。图8中所展示的整数样本位置说明在水平方向上距离视频数据的当前块一定距离的多个样本,如由MV或MVD表示。当然,相同技术可应用于垂直方向。如图8中所展示,相依于整数像素精准度及/或N样本精准度的使用,可使用不同码字来表示由MV/MVD指示的距离。例如上文所论述,可接着将与所述码字相关联的MVD二进制化成一或多个语法元素且进行编码。
全像素200表示一个像素/样本在水平方向上距当前块的距离。全像素201表示两个像素/样本在水平方向上距当前块的距离。全像素202表示三个像素/样本在水平方向上距当前块的距离。全像素203表示四个像素/样本在水平方向上距当前块的距离。如图8中所展示,用于对距离当前块各种样本距离处的MVD的水平分量的语法元素进行二进制化且进行译码的码字取决于所使用MVD精准度而不同。
对于全像素200(1样本距离),针对整数像素MV/MVD精准度的码字为1,而针对2样本MV/MVD精准度、3样本MV/MVD精准度及4样本MV/MVD精准度中的每一者的码字为0。如可看出,在1个样本的距离的实例中,2样本MV/MVD精准度、3样本MV/MVD精准度及4样本MV/MVD精准度较不精准(例如,由于码字经降值舍入),但产生较小码字。
对于全像素201(2样本距离),针对整数像素MV/MVD精准度的码字为2,针对2样本MV/MVD精准度的码字为1,而针对每一3样本MV/MVD精准度及4样本MV/MVD精准度的码字为0。如可看出,在2个样本的距离的实例中,3样本MV/MVD精准度及4样本MV/MVD精准度较不精准(例如,由于码字经降值舍入),但产生较小码字。
对于全像素202(3样本距离),针对整数像素MV/MVD精准度的码字为3,针对2样本MV/MVD精准度的码字为1(经降值舍入),针对3样本MV/MVD精准度的码字为1,且针对4样本MV/MVD精准度的码字为1(经增值舍入)。如可看出,在3个样本的距离的实例中,2样本MV/MVD精准度及4样本MV/MVD精准度较不精准(例如,这是因为码字分别经降值舍入及增值舍入)。
对于全像素203(4样本距离),针对整数像素MV/MVD精准度的码字为4,针对2样本MV/MVD精准度的码字为2,针对3样本MV/MVD精准度的码字为1(经降值舍入)且针对4样本MV/MVD精准度的码字为1。如可看出,在4个样本的距离的实例中,3样本MV/MVD精准度较不精准(例如,由于码字经降值舍入)。
在本发明的另一实例中,视频编码器20可经配置以产生语法元素(例如,第一旗标)以指示四分之一样本MV/MVD精准度是否用于块/CU/PU。在第一旗标指示未使用四分之一样本MV/MVD时,视频编码器20可产生另一语法元素(例如,另一旗标)以指示使用整数样本MV/MVD精准度或多个(N个)样本MV/MVD精准度。视频解码器30可经配置以接收并剖析这些语法元素以便确定MV/MVD精准度用于特定块/CU/PU。视频编码器20及视频解码器30可经配置以用算术译码对上文所描述旗标进行解码。
视频编码器20及视频解码器30可经配置以基于以下各项而确定用于对旗标进行译码的上下文(例如,执行上下文选择):块大小,及/或MVD的值,及/或参考图片索引,及/或空间邻近块的MVD精准度信息,及/或当前图片与参考图片的图片次序计数(POC)差,及/或当前块的任何其它信息。
在另一实例中,视频编码器20可经配置以产生语法元素(例如,第一旗标)以指示是否将特定MV/MVD精准度用于当前块。特定MV/MVD精准度可相依于可经邻近块的MVD精准度的值。在另一实例中,可基于所有先前经译码块的MVD精确度的统计而推导特定MVD精准度。
在另一实例中,视频编码器20可经配置以产生指示块/CU/PU的MV/MVD精准度信息的语法元素。在这个实例中,语法元素可指示待将MV/MVD精准度应用于块/CU/PU的MV/MVD信息的所有分量(例如,水平与垂直分量)。在另一实例中,视频编码器20可经配置以产生语法元素,所述语法元素指示关于每一预测方向(例如,向前及向后预测)或关于块/CU/PU的MV/MVD信息的每一分量(例如,水平及垂直分量)的MVD精准度信息。
在另一实例中,视频编码器20可经配置以产生指示块/CU/PU的MV/MVD精准度信息的语法元素。在这个实例中,语法元素可指示待仅将MV/MVD精准度应用于块/CU/PU的MV/MVD信息的分量的部分(例如,水平分量或垂直分量)。
在一个实例中,视频编码器20及/或视频解码器30可针对每一帧间预测方向、参考图片索引、当前图片与参考图片的POC差、邻近块的运动信息或运动模型(例如,平移或仿射)而单独地确定MVD精准度信息集。
在另一实例中,视频编码器20可经配置以产生指示用于图片及/或切片及/或图像块及/或序列的所允许MVD精准度集。视频编码器20可在经编码的视频位流中发信语法元素。在一个实例中,视频编码器20可例如在PPS或切片标头中发信所述语法元素以指示仅全部MVD精准度的一部分用于图片或切片中的块。在发信所述信息时,相应地改变块层级MVD精准度发信。
在另一实例中,可在不发信的情况下隐式地推导用于图片及/或切片及/或图像块及/或序列的所允许MVD精准度集的信息。MVD精准度集的推导可相依于序列分辨率、量化参数、译码模式、图片的时间层级。在一个实例中,针对未被随后图片参考的图片(例如,阶层结构中的最高时间层级),仅允许整数或半精准度。在一个实例中,MV精准度与MVD精准度对准。在另一实例中,可以不同于MV精准度的精准度发信MVD,例如,以较高精准度推导MVP。
根据上述实例,视频编码器20可经配置从而在序列参数集、图片参数集或切片标头中的一或多者中接收来自三个或多于三个MVD精准度的指示MVD精准度的一或多个精准度语法元素。在另一实例中,视频编码器20可对译码单元或预测单元中的一或多者的一或多个精准度语法元素进行编码。在一个实例中,一或多个精准度语法元素指示N样本MVD精准度的N的值。视频编码器20可经进一步配置以基于序列分辨率、量化参数、译码模式或图片的时间层级中的一或多者而确定三个或多于三个MVD精准度。
根据上述实例,视频解码器30可经配置从而在序列参数集、图片参数集、译码单元、预测单元或切片标头中的一或多者中接收来自三个或多于三个MVD精准度的指示MVD精准度的一或多个精准度语法元素,且对指示当前MVD精准度的一或多个精准度语法元素进行解码。在一个实例中,一或多个精准度语法元素指示N样本MVD精准度的N的值。视频解码器30可经进一步配置以基于序列分辨率、量化参数、译码模式或图片的时间层级中的一或多者而确定三个或多于三个MVD精准度。
在另一实例中,在未针对块发信/接收MVD(例如,在合并模式的状况下)时,视频编码器20及视频解码器30可经配置以使用原始MV精准度存储运动向量预测子(存储MV信息且用于产生帧间预测结果的精准度,例如,1/16明度样本或1/8明度样本或任何其它预定义或发信MV精准度)。在针对块发信/接收MVD时(且很可能也发信/接收MVD精准度),视频编码器20及视频解码器30可经配置以将来自空间及/或时间邻近块的MV预测子候选者舍入成对应MV精准度。
在另一实例中,视频编码器20及视频解码器30可经配置从而以原始MV精准度存储MV预测子。在另一实例中,视频编码器20及视频解码器30可经配置以将来自空间及/或时间邻近块的MV预测子候选者舍入成不同于当前块的MVD精准度的另一MV精准度。例如,在将多个(N个)样本MVD精准度应用于块时,将来自空间及/或时间邻近块的MV预测子候选者舍入成整数明度样本精准度。
在本发明的另一实例中,针对发信MVD的块(例如,基于AMVP译码的块),在运动向量预测子列表的产生过程中的剪除之前/之后是否将来自空间及/或时间邻近块的预测子候选者舍入成对应MVD精准度取决于MVD是否为零。在一个实例中,MV预测子是否应经舍入取决于预测子来自何处(例如,预测子为空间预测子还是邻近预测子)。在一个实例中,如果预测子来自时间邻近块,视频编码器20及视频解码器30可经配置以舍入与预测子相关联的运动向量。
在一个实例中,如果MVD针对参考列表不等于零,视频编码器20及视频解码器30可经配置以在运动向量预测子列表产生过程中的剪除之前/之后将来自空间及/或时间邻近块的MV预测子候选者舍入成对应MV精准度。在其它方面,(例如,MVD针对参考列表等于零),视频编码器20及视频解码器30可经配置以不在运动向量预测子列表产生过程中舍入来自空间及/或时间邻近块的MV候选者。
在一个实例中,在运动向量预测子的产生过程中的剪除之前/之后是否将来自空间及/或时间邻近块的MV候选者舍入成对应MV精准度取决于当前图片或块的L1ZeroMvdFlag的值。在L1ZeroMvdFlag等于1(即,当前图片的所有参考图片的POC小于当前图片的POC)时,针对参考列表1在运动向量预测子列表的产生过程中的剪除之前/之后将来自空间及/或时间邻近块的MV候选者舍入成对应MV精准度;且针对参考列表0在运动向量预测子列表的产生过程中不舍入来自空间及/或时间邻近块的MV候选者。在L1ZeroMvdFlag等于0时,针对参考列表0及参考列表1两者在运动向量预测子的产生过程中的剪除之前/之后将来自空间及/或时间邻近块的MV候选者舍入成对应MV精准度。
图9为说明本发明的实例编码方法的流程图。图9的技术可由视频编码器20的一或多个组件执行。
在一个实例中,视频编码器20可经配置以接收待使用帧间预测模式编码的视频数据块(300)。视频编码器20可经进一步配置以确定视频数据块的MVD(302)。视频编码器20可进一步从三个或多于三个MVD精准度确定用于对指示MVD的一或多个语法元素进行编码的当前MVD精准度,其中三个或多于三个MVD精准度包含N样本MVD精准度(304)。在一个实例中,N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且N大于1。
视频编码器20可经进一步配置以使用MVD及帧间预测模式来对视频数据块进行编码(306),及使用所确定当前MVD精准度对指示MVD的一或多个语法元素进行编码(308)。
图10为说明本发明的实例解码方法的流程图。图10的技术可由视频解码器30的一或多个组件执行。
在一个实例中,视频解码器30可经配置以接收使用帧间预测模式编码的经编码视频数据块(400),且接收指示与所述经编码视频数据块相关联的MVD的一或多个语法元素(402)。视频解码器30可经配置以针对指示所述MVD的所述一或多个语法元素从三个或多于三个MVD精准度而确定一当前MVD精准度,其中三个或多于三个MVD精准度包含N样本MVD精准度(404)。在一个实例中,N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且N大于1。
视频解码器30可经进一步配置以使用所述所确定当前MVD精准度来对指示所述MVD的所述一或多个语法元素进行解码(406),及使用所述经解码MVD对所述经编码视频数据块进行解码(408)。
在一个实例中,视频解码器30可经配置以在以下为真时接收一或多个精准度语法元素:所述经编码视频数据块并非经帧内译码,所述经编码视频数据块并非以合并或跳过模式译码,且所述经编码视频数据块是以高级运动向量预测(AMVP)模式译码且当前MVD并非为零。
在一个实例中,视频解码器30可经配置以在未接收到一或多个精准度语法元素的状况下推导默认运动向量精准度(例如,四分之一明度样本精准度)供用作当前MVD精准度。
在一个实例中,视频解码器30可经配置以在未接收到所述一或多个精准度语法元素的所述状况下基于所述帧间预测模式而推导所述当前MVD精准度。为推导当前MVD精准度,视频解码器30可经进一步配置以在帧间预测模式为AMVP模式的状况下推导四分之一明度样本MV/MVD精准度,且在帧间预测模式为合并模式或跳过模式的状况下推导八分之一明度样本或十六分之一明度样本MV/MVD精准度。
在一或多个实例中,所描述的功能可以硬件、软件、固件或其任何组合实施。如果以软件实施,那么所述功能可作为一或多个指令或代码存储于计算机可读媒体上或者经由计算机可读媒体发射且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于例如数据存储媒体的有形媒体,或包含促进(例如)根据通信协议将计算机程序从一个位置传送到另一位置的任一媒体的通信媒体。以这种方式,计算机可读媒体通常可对应于(1)非暂时性的有形计算机可读存储媒体或(2)例如信号或载波的通信媒体。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中所描述的技术的指令、代码及/或数据结构的任何可用媒体。计算机程序产品可包含计算机可读媒体。
通过实例的方式且非限制性,这些计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光学磁盘存储装置、磁盘存储装置或其它磁性存储装置、闪存存储器或可用于以指令或数据结构的形式存储所要程序码且可由计算机存取的其它媒体。此外,任何连接恰当地称为计算机可读媒体。举例来说,如果使用同轴缆线、光纤缆线、双绞线、数字用户线(DSL)或例如红外线、无线电及微波等无线技术从网站、服务器或其它远程源发射指令,那么所述同轴缆线、光纤缆线、双绞线、DSL或例如红外线、无线电及微波等无线技术皆包含于媒体的定义中。然而,应理解计算机可读存储媒体及数据存储媒体不包含连接、载波、信号或其它暂时性媒体,而是替代地针对非暂时性、有形存储媒体。如本文中所使用,磁盘及光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘及蓝光光盘,其中磁盘通常以磁性方式再生数据,而光盘通过激光以光学方式再生数据。上述各项的组合也应包含在计算机可读媒体的范围内。
指令可由一或多个处理器执行,例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路。因此,如本文中所使用的术语“处理器”可指代前述结构或适于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些实例中,本文中所描述的功能性可提供在经配置以用于编码及解码或并入于组合式编解码器中的专用硬件及/或软件模块内。此外,技术可以一或多个电路或逻辑元件来完全实施。
本发明的技术可以广泛各种装置或设备(包含无线手机、集成电路(IC)或IC组(例如,芯片组))实施。各种组件、模块或单元在本发明中经描述以强调经配置以执行所公开技术的装置的功能方面,而未必需要由不同硬件单元实现。确切而言,如上文所描述,各种单元可以编解码硬件单元组合或通过交互操作硬件单元(包含如上文所描述的一或多个处理器)的集合结合适合软件及/或固件提供。
已描述各种实例。这些及其它实例在以下权利要求书的范围内。
Claims (53)
1.一种对视频数据进行解码的方法,所述方法包括:
接收使用帧间预测模式编码的经编码视频数据块;
接收指示与所述经编码视频数据块相关联的运动向量差MVD的一或多个语法元素;
针对指示所述MVD的所述一或多个语法元素而从三个或多于三个MVD精准度确定当前MVD精准度,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1;
使用所述所确定的当前MVD精准度而对指示所述MVD的所述一或多个语法元素进行解码;及
使用所述经解码MVD对所述经编码视频数据块进行解码。
2.根据权利要求1所述的方法,其中所述帧间预测模式为高级运动向量预测模式。
3.根据权利要求1所述的方法,其中N为2、3或4明度样本中的一者。
4.根据权利要求1所述的方法,其中所述三个或多于三个MVD精准度包含四分之一明度样本MVD精准度、整数明度样本MVD精准度及一或多个N样本MVD精准度。
5.根据权利要求1所述的方法,其进一步包括:
针对译码单元或预测单元中的一或多者从所述三个或多于三个MVD精准度接收指示所述当前MVD精准度的一或多个精准度语法元素;及
对指示所述当前MVD精准度的所述一或多个精准度语法元素进行解码。
6.根据权利要求5所述的方法,其中接收所述一或多个精准度语法元素包括在以下情形为真时接收所述一或多个精准度语法元素:所述经编码视频数据块并非经帧内译码,所述经编码视频数据块并非以合并或跳过模式译码,且所述经编码视频数据块是以高级运动向量预测AMVP模式译码且当前MVD并非为零。
7.根据权利要求6所述的方法,其进一步包括:
在未接收到所述一或多个精准度语法元素的状况下推导默认运动向量精准度供用作所述当前MVD精准度。
8.根据权利要求6所述的方法,其进一步包括:
在未接收到所述一或多个精准度语法元素的所述状况下基于所述帧间预测模式而推导所述当前MVD精准度。
9.根据权利要求8所述的方法,其中推导所述当前MVD精准度包括:在所述帧间预测模式为AMVP模式的状况下推导四分之一明度样本MVD精准度,且在所述帧间预测模式为合并模式或跳过模式的状况下推导八分之一明度样本或十六分之一明度样本MVD精准度。
10.根据权利要求5所述的方法,其中所述一或多个精准度语法元素指示所述N样本MVD精准度的N的所述值。
11.根据权利要求5所述的方法,其进一步包括:
基于以下各项中的一或多个而确定所述一或多个精准度语法元素的算术解码的上下文:块大小、所述MVD的值、参考图片索引、空间邻近块的MVD精准度信息,或当前图片与参考图片的图片次序计数POC差;及
使用算术译码及所述所确定上下文来对所述一或多个精准度语法元素进行解码。
12.根据权利要求1所述的方法,其进一步包括:
在序列参数集、图片参数集或切片标头中的一或多者中接收来自所述三个或多于三个MVD精准度的指示所述MVD精准度的一或多个精准度语法元素;及
对指示所述当前MVD精准度的所述一或多个精准度语法元素进行解码。
13.根据权利要求1所述的方法,其进一步包括:
基于序列分辨率、量化参数、译码模式或图片的时间层级中的一或多者而确定所述三个或多于三个MVD精准度。
14.根据权利要求1所述的方法,其进一步包括:
使用与所述当前MVD精准度相同的运动向量精准度来确定所述视频数据块的运动向量。
15.根据权利要求1所述的方法,其进一步包括:
使用不同于所述当前MVD精准度的运动向量精准度来确定所述视频数据块的运动向量。
16.根据权利要求1所述的方法,其进一步包括:
确定所述经编码视频数据块的运动向量预测子候选者;及
基于所述MVD是否为零而使用所述当前MVD精准度将所述经编码视频数据块的运动向量预测子候选者舍入。
17.根据权利要求1所述的方法,其进一步包括:
确定所述经编码视频数据块的运动向量预测子候选者;及
基于特定运动向量预测子候选者是时间候选者还是空间候选者而使用所述当前MVD精准度将所述经编码视频数据块的运动向量预测子候选者舍入。
18.一种设备,其经配置以对视频数据进行解码,所述设备包括:
存储器,其经配置以存储经编码视频数据块;及
一或多个处理器,其与所述存储器通信,所述一或多个处理器经配置以:
接收使用帧间预测模式编码的经编码视频数据块;
接收指示与所述经编码视频数据块相关联的运动向量差MVD的一或多个语法元素;
针对指示所述MVD的所述一或多个语法元素而从三个或多于三个MVD精准度确定当前MVD精准度,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1;
使用所述所确定的当前MVD精准度而对指示所述MVD的所述一或多个语法元素进行解码;及
使用所述经解码MVD对所述经编码视频数据块进行解码。
19.根据权利要求18所述的设备,其中所述帧间预测模式为高级运动向量预测模式。
20.根据权利要求18所述的设备,其中N为2、3或4明度样本中的一者。
21.根据权利要求18所述的设备,其中所述三个或多于三个MVD精准度包含四分之一明度样本MVD精准度、整数明度样本MVD精准度及一或多个N样本MVD精准度。
22.根据权利要求18所述的设备,其中所述一或多个处理器经进一步配置以:
针对译码单元或预测单元中的一或多者从所述三个或多于三个MVD精准度接收指示所述当前MVD精准度的一或多个精准度语法元素;及
对指示所述当前MVD精准度的所述一或多个精准度语法元素进行解码。
23.根据权利要求22所述的设备,其中为接收所述一或多个精准度语法元素,所述一或多个处理器经进一步配置以在以下情形为真时接收所述一或多个精准度语法元素:所述经编码视频数据块并非经帧内译码,所述经编码视频数据块并非以合并或跳过模式译码,且所述经编码视频数据块是以高级运动向量预测AMVP模式译码且当前MVD并非为零。
24.根据权利要求23所述的设备,其中所述一或多个处理器经进一步配置以:
在未接收到所述一或多个精准度语法元素的状况下推导默认运动向量精准度供用作所述当前MVD精准度。
25.根据权利要求23所述的设备,其中所述一或多个处理器经进一步配置以:
在未接收到所述一或多个精准度语法元素的所述状况下基于所述帧间预测模式而推导所述当前MVD精准度。
26.根据权利要求25所述的设备,其中为推导所述当前MVD精准度,所述一或多个处理器经进一步配置以:在所述帧间预测模式为AMVP模式的状况下推导四分之一明度样本MVD精准度,且在所述帧间预测模式为合并模式或跳过模式的状况下推导八分之一明度样本或十六分之一明度样本MVD精准度。
27.根据权利要求22所述的设备,其中所述一或多个精准度语法元素指示所述N样本MVD精准度的N的所述值。
28.根据权利要求22所述的设备,其中所述一或多个处理器经进一步配置以:
基于以下各项中的一或多个而确定所述一或多个精准度语法元素的算术解码的上下文:块大小、所述MVD的值、参考图片索引、空间邻近块的MVD精准度信息,或当前图片与参考图片的图片次序计数POC差;及
使用算术译码及所述所确定上下文来对所述一或多个精准度语法元素进行解码。
29.根据权利要求18所述的设备,其中所述一或多个处理器经进一步配置以:
在序列参数集、图片参数集或切片标头中的一或多者中接收指示来自所述三个或多于三个MVD精准度的所述MVD精准度的一或多个精准度语法元素;及
对指示所述当前MVD精准度的所述一或多个精准度语法元素进行解码。
30.根据权利要求18所述的设备,其中所述一或多个处理器经进一步配置以:
基于序列分辨率、量化参数、译码模式或图片的时间层级中的一或多者而确定所述三个或多于三个MVD精准度。
31.根据权利要求18所述的设备,其中所述一或多个处理器经进一步配置以:
使用与所述当前MVD精准度相同的运动向量精准度来确定所述视频数据块的运动向量。
32.根据权利要求18所述的设备,其中所述一或多个处理器经进一步配置以:
使用不同于所述当前MVD精准度的运动向量精准度来确定所述视频数据块的运动向量。
33.根据权利要求18所述的设备,其中所述一或多个处理器经进一步配置以:
确定所述经编码视频数据块的运动向量预测子候选者;及
基于所述MVD是否为零而使用所述当前MVD精准度将所述经编码视频数据块的运动向量预测子候选者舍入。
34.根据权利要求18所述的设备,其中所述一或多个处理器经进一步配置以:
确定所述经编码视频数据块的运动向量预测子候选者;及
基于特定运动向量预测子候选者是时间候选者还是空间候选者而使用所述当前MVD精准度将所述经编码视频数据块的运动向量预测子候选者舍入。
35.根据权利要求18所述的设备,其中所述设备包括无线通信装置,其进一步包括经配置以接收所述经编码视频数据块的接收器。
36.根据权利要求18所述的设备,其中所述无线通信装置包括电话手机,且其中所述接收器经配置以根据无线通信标准对包括所述经编码视频数据块的信号进行解调。
37.根据权利要求18所述的设备,其进一步包括:
显示器,其经配置以输出包括所述经解码视频数据块的图片。
38.一种经配置以对视频数据进行解码的设备,所述设备包括:
用于接收使用帧间预测模式编码的经编码视频数据块的装置;
用于接收指示与所述经编码视频数据块相关联的运动向量差MVD的一或多个语法元素的装置;
用于针对指示所述MVD的所述一或多个语法元素而从三个或多于三个MVD精准度确定当前MVD精准度的装置,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1;
用于使用所述所确定的当前MVD精准度而对指示所述MVD的所述一或多个语法元素进行解码的装置;及
用于使用所述经解码MVD对所述经编码视频数据块进行解码的装置。
39.一种存储指令的计算机可读存储媒体,所述指令在执行时致使经配置以对视频数据进行解码的装置的一或多个处理器:
接收使用帧间预测模式编码的经编码视频数据块;
接收指示与所述经编码视频数据块相关联的运动向量差MVD的一或多个语法元素;
针对指示所述MVD的所述一或多个语法元素而从三个或多于三个MVD精准度确定当前MVD精准度,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1;
使用所述所确定的当前MVD精准度而对指示所述MVD的所述一或多个语法元素进行解码;及
使用所述经解码MVD对所述经编码视频数据块进行解码。
40.一种对视频数据进行编码的方法,所述方法包括:
接收待使用帧间预测模式编码的视频数据块;
确定所述视频数据块的运动向量差MVD;
从三个或多于三个MVD精准度确定用于对指示所述MVD的一或多个语法元素进行编码的当前MVD精准度,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1;
使用所述MVD及所述帧间预测模式对所述视频数据块进行编码;及
使用所述所确定的当前MVD精准度而对指示所述MVD的所述一或多个语法元素进行编码。
41.根据权利要求40所述的方法,其中所述帧间预测模式为高级运动向量预测模式。
42.根据权利要求40所述的方法,其中N为2、3或4明度样本中的一者。
43.根据权利要求40所述的方法,其中所述三个或多于三个MVD精准度包含四分之一明度样本MVD精准度、整数明度样本MVD精准度及一或多个N样本MVD精准度。
44.根据权利要求40所述的方法,其进一步包括:
针对译码单元或预测单元中的一或多者对指示来自所述三个或多于三个MVD精准度的所述当前MVD精准度的一或多个精准度语法元素进行编码。
45.根据权利要求44所述的方法,其中所述一或多个精准度语法元素指示所述N样本MVD精准度的N的所述值。
46.根据权利要求44所述的方法,其进一步包括:
基于以下各项中的一或多个而确定所述一或多个精准度语法元素的算术编码的上下文:块大小、所述MVD的值、参考图片索引、空间邻近块的MVD精准度信息,或当前图片与参考图片的图片次序计数POC差;及
使用算术译码及所述所确定上下文来对所述一或多个精准度语法元素进行编码。
47.根据权利要求40所述的方法,其进一步包括:
基于序列分辨率、量化参数、译码模式或图片的时间层级中的一或多者而确定所述三个或多于三个MVD精准度。
48.根据权利要求40所述的方法,其进一步包括:
使用与所述当前MVD精准度相同的运动向量精准度来确定所述视频数据块的运动向量。
49.根据权利要求40所述的方法,其进一步包括:
使用不同于所述当前MVD精准度的运动向量精准度来确定所述视频数据块的运动向量。
50.根据权利要求40所述的方法,其进一步包括:
确定所述视频数据块的运动向量预测子候选者;及
基于所述MVD是否为零而使用所述当前MVD精准度将所述视频数据块的运动向量预测子候选者舍入。
51.根据权利要求40的方法,其进一步包括:
确定所述视频数据块的运动向量预测子候选者;及
基于特定运动向量预测子候选者是时间候选者还是空间候选者而使用所述当前MVD精准度将所述视频数据块的运动向量预测子候选者舍入。
52.一种设备,其经配置以对视频数据进行编码,所述设备包括:
存储器,其经配置以存储视频数据块;及
一或多个处理器,其与所述存储器通信,所述一或多个处理器经配置以:
接收待使用帧间预测模式编码的所述视频数据块;
确定所述视频数据块的运动向量差MVD;
从三个或多于三个MVD精准度确定用于对指示所述MVD的一或多个语法元素进行编码的当前MVD精准度,其中所述三个或多于三个MVD精准度包含N样本MVD精准度,其中N为指示样本数目的整数,所述样本数目由指示所述MVD的所述一或多个语法元素的每一连续码字指示,且其中N大于1;
使用所述MVD及所述帧间预测模式对所述视频数据块进行编码;及
使用所述所确定的当前MVD精准度而对指示所述MVD的所述一或多个语法元素进行编码。
53.根据权利要求52所述的设备,其进一步包括:
相机,其经配置以捕捉包含所述视频数据块的图片。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662404105P | 2016-10-04 | 2016-10-04 | |
US62/404,105 | 2016-10-04 | ||
US15/724,044 US10979732B2 (en) | 2016-10-04 | 2017-10-03 | Adaptive motion vector precision for video coding |
US15/724,044 | 2017-10-03 | ||
PCT/US2017/055091 WO2018067672A1 (en) | 2016-10-04 | 2017-10-04 | Adaptive motion vector precision for video coding |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109792532A true CN109792532A (zh) | 2019-05-21 |
CN109792532B CN109792532B (zh) | 2023-07-14 |
Family
ID=61759108
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780059794.0A Active CN109792532B (zh) | 2016-10-04 | 2017-10-04 | 用于视频译码的适应性运动向量精准度 |
Country Status (9)
Country | Link |
---|---|
US (1) | US10979732B2 (zh) |
EP (1) | EP3523971A1 (zh) |
JP (2) | JP7077310B2 (zh) |
KR (1) | KR102621943B1 (zh) |
CN (1) | CN109792532B (zh) |
BR (1) | BR112019006756A2 (zh) |
SG (1) | SG11201901365QA (zh) |
TW (1) | TWI796308B (zh) |
WO (1) | WO2018067672A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021056215A1 (zh) * | 2019-09-24 | 2021-04-01 | 深圳市大疆创新科技有限公司 | 运动估计方法、系统和存储介质 |
CN113302936A (zh) * | 2019-01-07 | 2021-08-24 | 北京字节跳动网络技术有限公司 | 用于具有MVD的Merge的控制方法 |
CN114026861A (zh) * | 2019-06-25 | 2022-02-08 | 北京字节跳动网络技术有限公司 | 对运动矢量差的约束 |
US11909982B2 (en) | 2019-04-25 | 2024-02-20 | Beijing Bytedance Network Technology Co., Ltd. | Restrictions on motion vector difference |
Families Citing this family (71)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
HRP20220743T1 (hr) | 2010-04-13 | 2022-08-19 | Ge Video Compression, Llc | Kodiranje signifikacijskih mapa i blokova koeficijenata transformacije |
CN116567226A (zh) * | 2016-08-11 | 2023-08-08 | Lx 半导体科技有限公司 | 图像编码/解码设备和图像数据的发送设备 |
CN109496431A (zh) * | 2016-10-13 | 2019-03-19 | 富士通株式会社 | 图像编码/解码方法、装置以及图像处理设备 |
KR20180043151A (ko) * | 2016-10-19 | 2018-04-27 | 에스케이텔레콤 주식회사 | 영상 부호화 또는 복호화를 위한 장치 및 방법 |
US10924730B2 (en) * | 2016-11-07 | 2021-02-16 | Lg Electronics Inc. | Image decoding method and device in image coding system |
CN109964484B (zh) * | 2016-11-22 | 2021-11-09 | 联发科技股份有限公司 | 视频编码中用于运动向量符号预测的方法及装置 |
CN116320476A (zh) * | 2016-12-22 | 2023-06-23 | 株式会社Kt | 对视频进行解码或编码的方法和发送视频数据的方法 |
US11272207B2 (en) | 2017-06-12 | 2022-03-08 | Futurewei Technologies, Inc. | Selection and signaling of motion vector (MV) precisions |
EP3451664A1 (en) * | 2017-09-01 | 2019-03-06 | Thomson Licensing | Motion compensation at a finer precision than motion vector differential |
US10841794B2 (en) * | 2017-09-18 | 2020-11-17 | Futurewei Technologies, Inc. | Adaptive motion vector resolution |
KR102365166B1 (ko) * | 2017-09-28 | 2022-02-18 | 삼성전자주식회사 | 부호화 방법 및 그 장치, 복호화 방법 및 그 장치 |
CN109587501B (zh) * | 2017-09-28 | 2022-07-12 | 腾讯科技(深圳)有限公司 | 进行运动估计的方法、装置及存储介质 |
US10582212B2 (en) * | 2017-10-07 | 2020-03-03 | Google Llc | Warped reference motion vectors for video compression |
US20190246134A1 (en) * | 2018-02-06 | 2019-08-08 | Panasonic Intellectual Property Corporation Of America | Encoding method, decoding method, encoder, and decoder |
US11012715B2 (en) | 2018-02-08 | 2021-05-18 | Qualcomm Incorporated | Intra block copy for video coding |
KR102424189B1 (ko) * | 2018-02-14 | 2022-07-21 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 적응형 보간 필터 |
KR102268089B1 (ko) | 2018-02-28 | 2021-06-22 | 삼성전자주식회사 | 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치 |
CN112237001B (zh) * | 2018-06-07 | 2024-04-12 | 韦勒斯标准与技术协会公司 | 使用自适应运动矢量分辨率的视频信号处理方法及装置 |
TWI723430B (zh) * | 2018-06-19 | 2021-04-01 | 大陸商北京字節跳動網絡技術有限公司 | 不同精度的多個候選 |
WO2020009446A1 (ko) * | 2018-07-02 | 2020-01-09 | 엘지전자 주식회사 | 어파인 예측을 이용하여 비디오 신호를 처리하기 위한 방법 및 장치 |
KR20230165377A (ko) * | 2018-07-02 | 2023-12-05 | 엘지전자 주식회사 | 어파인 예측을 이용하여 비디오 신호를 처리하기 위한 방법 및 장치 |
CN117692632A (zh) * | 2018-07-31 | 2024-03-12 | 寰发股份有限公司 | 用于视频编解码的利用运动向量差的合并方法和装置 |
WO2020036502A1 (en) * | 2018-08-14 | 2020-02-20 | Huawei Technologies Co., Ltd | Machine-learning-based adaptation of coding parameters for video encoding using motion and object detection |
US11582458B2 (en) | 2018-08-29 | 2023-02-14 | Vid Scale, Inc. | Adaptive motion vector precision for affine motion model based video coding |
WO2020050600A1 (ko) * | 2018-09-03 | 2020-03-12 | 한국전자통신연구원 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
US11310520B2 (en) * | 2018-09-04 | 2022-04-19 | Hfi Innovation Inc. | Method and apparatus of motion-vector rounding unification for video coding system |
CN116033150A (zh) * | 2018-09-08 | 2023-04-28 | 北京字节跳动网络技术有限公司 | 不同视频块尺寸的仿射模式计算 |
CN117651149A (zh) * | 2018-09-10 | 2024-03-05 | 华为技术有限公司 | 视频解码方法及视频解码器 |
CN116546213A (zh) * | 2018-09-19 | 2023-08-04 | 北京字节跳动网络技术有限公司 | 具有自适应运动矢量分辨率的仿射模式的语法重用 |
CN110944195B (zh) * | 2018-09-23 | 2023-05-09 | 北京字节跳动网络技术有限公司 | 具有自适应运动矢量分辨率的运动矢量的修改 |
CN117156131A (zh) * | 2018-10-23 | 2023-12-01 | 韦勒斯标准与技术协会公司 | 通过使用基于子块的运动补偿处理视频信号的方法和设备 |
EP3857890A4 (en) | 2018-11-06 | 2021-09-22 | Beijing Bytedance Network Technology Co. Ltd. | SIGNALING PAGE INFORMATION FOR INTERPREDICTION WITH GEOMETRIC PARTITIONING |
CN113170192B (zh) * | 2018-11-15 | 2023-12-01 | 北京字节跳动网络技术有限公司 | 仿射的merge与mvd |
CN113039796B (zh) | 2018-11-17 | 2023-09-19 | 北京字节跳动网络技术有限公司 | 视频处理中的广义双向预测模式 |
US11381825B2 (en) * | 2018-11-27 | 2022-07-05 | Advanced Micro Devices, Inc. | Variable rate rendering based on motion estimation |
US11197017B2 (en) * | 2018-12-06 | 2021-12-07 | Tencent America LLC | Methods and apparatuses for video coding |
CN113196747B (zh) | 2018-12-21 | 2023-04-14 | 北京字节跳动网络技术有限公司 | 当前图片参考模式下的信息信令通知 |
KR102349457B1 (ko) | 2018-12-28 | 2022-01-10 | 삼성전자주식회사 | 움직임 벡터 차분의 부호화 방법 및 부호화 장치, 및 움직임 벡터 차분의 복호화 방법 및 복호화 장치 |
CN113170166B (zh) | 2018-12-30 | 2023-06-09 | 北京字节跳动网络技术有限公司 | 具有几何分割的帧间预测在视频处理中有条件的应用 |
CN113498609B (zh) * | 2018-12-31 | 2023-06-20 | 北京达佳互联信息技术有限公司 | 用于视频编解码的依赖图片分辨率的配置 |
CN113348667B (zh) * | 2018-12-31 | 2023-06-20 | 北京字节跳动网络技术有限公司 | 在具有MVD的Merge下的距离索引的解析方法 |
WO2020143772A1 (en) | 2019-01-10 | 2020-07-16 | Beijing Bytedance Network Technology Co., Ltd. | Affine based merge with mvd |
WO2020143830A1 (en) * | 2019-01-11 | 2020-07-16 | Beijing Bytedance Network Technology Co., Ltd. | Integer mv motion compensation |
CN113366851A (zh) * | 2019-01-31 | 2021-09-07 | 北京字节跳动网络技术有限公司 | 对称运动矢量差编解码模式的快速算法 |
KR20210121021A (ko) * | 2019-01-31 | 2021-10-07 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 어파인 모드 적응적 움직임 벡터 해상도 코딩 문맥 |
WO2020173482A1 (en) * | 2019-02-27 | 2020-09-03 | Beijing Bytedance Network Technology Co., Ltd. | Motion vector coding for screen content coding |
US11025948B2 (en) * | 2019-02-28 | 2021-06-01 | Tencent America LLC | Method and apparatus for motion prediction in video coding |
WO2020180159A1 (ko) * | 2019-03-06 | 2020-09-10 | 엘지전자 주식회사 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법 |
CN117440173A (zh) | 2019-03-21 | 2024-01-23 | 北京字节跳动网络技术有限公司 | 组合帧间帧内预测的改进的加权处理 |
WO2020192749A1 (en) * | 2019-03-27 | 2020-10-01 | Beijing Bytedance Network Technology Co., Ltd. | Entropy coding for affine mode with adaptive motion vector resolution |
WO2020200236A1 (en) | 2019-04-01 | 2020-10-08 | Beijing Bytedance Network Technology Co., Ltd. | Using interpolation filters for history based motion vector prediction |
CN113767637B (zh) | 2019-04-28 | 2023-09-22 | 北京字节跳动网络技术有限公司 | 对称运动矢量差编解码 |
CN117692630A (zh) * | 2019-05-11 | 2024-03-12 | 北京字节跳动网络技术有限公司 | 视频处理中编解码工具的选择性使用 |
US20220053206A1 (en) * | 2019-05-15 | 2022-02-17 | Wilus Institute Of Standards And Technology Inc. | Video signal processing method and apparatus using adaptive motion vector resolution |
WO2021007133A1 (en) * | 2019-07-06 | 2021-01-14 | Beijing Dajia Internet Information Technology Co., Ltd. | Methods and apparatuses for decoder-side motion vector refinement in video coding |
JP2022544157A (ja) | 2019-08-06 | 2022-10-17 | オーピー ソリューションズ, エルエルシー | 適応分解能管理予測再スケーリング |
AU2020326881A1 (en) | 2019-08-06 | 2022-03-24 | Op Solutions, Llc | Block-based adaptive resolution management |
CN114616826A (zh) | 2019-08-06 | 2022-06-10 | Op方案有限责任公司 | 基于帧类型的自适应分辨率管理的隐式标识 |
WO2021026363A1 (en) * | 2019-08-06 | 2021-02-11 | Op Solutions, Llc | Implicit signaling of adaptive resolution management based on frame type |
CN114365490B (zh) | 2019-09-09 | 2024-06-18 | 北京字节跳动网络技术有限公司 | 高精度图像和视频编解码的系数缩放 |
KR102492522B1 (ko) * | 2019-09-10 | 2023-01-27 | 삼성전자주식회사 | 툴 세트를 이용하는 영상 복호화 장치 및 이에 의한 영상 복호화 방법, 및 영상 부호화 장치 및 이에 의한 영상 부호화 방법 |
CN114731392A (zh) | 2019-09-21 | 2022-07-08 | 北京字节跳动网络技术有限公司 | 用于图像和视频编解码的高精度变换和量化 |
WO2021068954A1 (en) | 2019-10-12 | 2021-04-15 | Beijing Bytedance Network Technology Co., Ltd. | High level syntax for video coding tools |
CA3223625A1 (en) | 2019-11-08 | 2021-05-14 | Op Solutions, Llc | Methods and systems for adaptive cropping |
CN115278256B (zh) * | 2020-03-16 | 2023-09-08 | 北京达佳互联信息技术有限公司 | 对视频数据进行解码的方法、装置和介质 |
CN112261413B (zh) * | 2020-10-22 | 2023-10-31 | 北京奇艺世纪科技有限公司 | 视频编码方法、编码装置、电子设备和存储介质 |
US11758151B2 (en) * | 2020-12-29 | 2023-09-12 | Qualcomm Incorporated | Template matching in video coding |
US11936877B2 (en) * | 2021-04-12 | 2024-03-19 | Qualcomm Incorporated | Template matching based affine prediction for video coding |
US20230128502A1 (en) * | 2021-10-21 | 2023-04-27 | Tencent America LLC | Schemes for Adjusting Adaptive Resolution for Motion Vector Difference |
JP2024513066A (ja) * | 2022-01-24 | 2024-03-21 | テンセント・アメリカ・エルエルシー | 動きベクトル差の適応解像度を調整するための方式 |
WO2023219599A1 (en) * | 2022-05-07 | 2023-11-16 | Google Llc | Flexible motion vector precision of video coding |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1557099A (zh) * | 2002-07-15 | 2004-12-22 | ������������ʽ���� | 图像编码装置、图像编码方法、图像解码装置、图像解码方法和通信装置 |
CN103202016A (zh) * | 2010-10-13 | 2013-07-10 | 高通股份有限公司 | 用于视频译码的自适应运动向量分辨率信令 |
CN104661031A (zh) * | 2015-02-16 | 2015-05-27 | 华为技术有限公司 | 用于视频图像编码和解码的方法、编码设备和解码设备 |
US20150195562A1 (en) * | 2014-01-09 | 2015-07-09 | Qualcomm Incorporated | Adaptive motion vector resolution signaling for video coding |
WO2015113510A1 (en) * | 2014-01-29 | 2015-08-06 | Mediatek Inc. | Method and apparatus for adaptive motion vector precision |
WO2016068674A1 (ko) * | 2014-10-31 | 2016-05-06 | 삼성전자 주식회사 | 움직임 벡터 부복호화 방법 및 장치 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU1941797A (en) * | 1997-03-17 | 1998-10-12 | Mitsubishi Denki Kabushiki Kaisha | Image encoder, image decoder, image encoding method, image decoding method and image encoding/decoding system |
JP5684823B2 (ja) * | 2009-11-06 | 2015-03-18 | フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ | ハイブリッド映像符号化 |
US9325991B2 (en) * | 2012-04-11 | 2016-04-26 | Qualcomm Incorporated | Motion vector rounding |
CN107211136B (zh) | 2015-01-30 | 2019-10-29 | 联发科技股份有限公司 | 具有大字母表的源样本的熵编码与熵解码的方法 |
WO2017052009A1 (ko) | 2015-09-24 | 2017-03-30 | 엘지전자 주식회사 | 영상 코딩 시스템에서 amvr 기반한 영상 코딩 방법 및 장치 |
US10638152B2 (en) | 2016-03-15 | 2020-04-28 | Mediatek Inc. | Method and apparatus of video coding with affine motion compensation |
-
2017
- 2017-10-03 US US15/724,044 patent/US10979732B2/en active Active
- 2017-10-04 EP EP17784520.3A patent/EP3523971A1/en active Pending
- 2017-10-04 JP JP2019517327A patent/JP7077310B2/ja active Active
- 2017-10-04 KR KR1020197009269A patent/KR102621943B1/ko active IP Right Grant
- 2017-10-04 CN CN201780059794.0A patent/CN109792532B/zh active Active
- 2017-10-04 WO PCT/US2017/055091 patent/WO2018067672A1/en unknown
- 2017-10-04 SG SG11201901365QA patent/SG11201901365QA/en unknown
- 2017-10-04 BR BR112019006756A patent/BR112019006756A2/pt unknown
- 2017-10-05 TW TW106134364A patent/TWI796308B/zh active
-
2022
- 2022-05-18 JP JP2022081653A patent/JP7438265B2/ja active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1557099A (zh) * | 2002-07-15 | 2004-12-22 | ������������ʽ���� | 图像编码装置、图像编码方法、图像解码装置、图像解码方法和通信装置 |
CN103202016A (zh) * | 2010-10-13 | 2013-07-10 | 高通股份有限公司 | 用于视频译码的自适应运动向量分辨率信令 |
US20150195562A1 (en) * | 2014-01-09 | 2015-07-09 | Qualcomm Incorporated | Adaptive motion vector resolution signaling for video coding |
WO2015113510A1 (en) * | 2014-01-29 | 2015-08-06 | Mediatek Inc. | Method and apparatus for adaptive motion vector precision |
WO2016068674A1 (ko) * | 2014-10-31 | 2016-05-06 | 삼성전자 주식회사 | 움직임 벡터 부복호화 방법 및 장치 |
CN104661031A (zh) * | 2015-02-16 | 2015-05-27 | 华为技术有限公司 | 用于视频图像编码和解码的方法、编码设备和解码设备 |
Non-Patent Citations (1)
Title |
---|
宋传鸣等: "基于模糊量化和2 bit深度像素的运动估计算法", 《通信学报》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113302936A (zh) * | 2019-01-07 | 2021-08-24 | 北京字节跳动网络技术有限公司 | 用于具有MVD的Merge的控制方法 |
US11909982B2 (en) | 2019-04-25 | 2024-02-20 | Beijing Bytedance Network Technology Co., Ltd. | Restrictions on motion vector difference |
CN114026861A (zh) * | 2019-06-25 | 2022-02-08 | 北京字节跳动网络技术有限公司 | 对运动矢量差的约束 |
US11812028B2 (en) | 2019-06-25 | 2023-11-07 | Beijing Bytedance Network Technology Co., Ltd. | Restrictions on motion vector difference |
CN114026861B (zh) * | 2019-06-25 | 2023-11-17 | 北京字节跳动网络技术有限公司 | 对运动矢量差的约束 |
WO2021056215A1 (zh) * | 2019-09-24 | 2021-04-01 | 深圳市大疆创新科技有限公司 | 运动估计方法、系统和存储介质 |
CN112868234A (zh) * | 2019-09-24 | 2021-05-28 | 深圳市大疆创新科技有限公司 | 运动估计方法、系统和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
KR102621943B1 (ko) | 2024-01-05 |
TWI796308B (zh) | 2023-03-21 |
US20180098089A1 (en) | 2018-04-05 |
JP2022122892A (ja) | 2022-08-23 |
SG11201901365QA (en) | 2019-04-29 |
JP7077310B2 (ja) | 2022-05-30 |
US10979732B2 (en) | 2021-04-13 |
JP2019534626A (ja) | 2019-11-28 |
EP3523971A1 (en) | 2019-08-14 |
CN109792532B (zh) | 2023-07-14 |
TW201817238A (zh) | 2018-05-01 |
BR112019006756A2 (pt) | 2019-07-02 |
JP7438265B2 (ja) | 2024-02-26 |
WO2018067672A1 (en) | 2018-04-12 |
KR20190055109A (ko) | 2019-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109792532A (zh) | 用于视频译码的适应性运动向量精准度 | |
CN109792531A (zh) | 用于视频译码的运动向量译码 | |
CN106797479B (zh) | 对于并行处理的帧内块复制预测限制 | |
CN104303502B (zh) | 对多视图视频数据进行编码、解码和译码的方法、装置及计算机可读存储介质 | |
CN106797477B (zh) | 用于解码及编码视频数据的方法和设备 | |
CN104904213B (zh) | 可缩放及多视角视频译码中的高级残差预测 | |
CN105556969B (zh) | 视频译码中使用视差向量的块识别 | |
CN104704833B (zh) | 多视图或3维视频译码中的高级视图间残差预测 | |
CN110301135A (zh) | 在视频解码器处导出运动向量信息 | |
CN106797476B (zh) | 用于编码/解码视频数据的方法和视频解码装置 | |
CN106105203B (zh) | 块自适应颜色空间转换译码 | |
CN104170381B (zh) | 在高效率视频译码及其扩展中的运动矢量译码及双向预测 | |
CN109155855A (zh) | 用于视频译码的仿射运动预测 | |
CN104170380B (zh) | 视频译码中的视差矢量预测 | |
CN105637870B (zh) | 使用不对称运动分割的视频译码技术 | |
CN104584558B (zh) | 用于3d视频的视图间预测的运动向量 | |
CN103202016B (zh) | 用于视频译码的自适应运动向量分辨率信令 | |
CN110100436A (zh) | 使用导出色度模式译码视频数据 | |
CN104904217B (zh) | 用于视频译码扩展的时间运动向量预测 | |
CN109644272A (zh) | 用于建构候选列表的几何型优先级 | |
CN108605136A (zh) | 基于图片次序计数的运动矢量精简 | |
CN107710764A (zh) | 确定用于视频译码的照明补偿状态的系统及方法 | |
JP2017508346A (ja) | ビデオコーディングのための適応的な動きベクトル分解シグナリング | |
CN105474646B (zh) | 子pu级先进残余预测 | |
CN104429072B (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40002586 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |