CN106165419B - 用于视频译码的自适应运动向量分辨率信令 - Google Patents

用于视频译码的自适应运动向量分辨率信令 Download PDF

Info

Publication number
CN106165419B
CN106165419B CN201580003647.2A CN201580003647A CN106165419B CN 106165419 B CN106165419 B CN 106165419B CN 201580003647 A CN201580003647 A CN 201580003647A CN 106165419 B CN106165419 B CN 106165419B
Authority
CN
China
Prior art keywords
motion vector
block
precision
video data
difference value
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
CN201580003647.2A
Other languages
English (en)
Other versions
CN106165419A (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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN106165419A publication Critical patent/CN106165419A/zh
Application granted granted Critical
Publication of CN106165419B publication Critical patent/CN106165419B/zh
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/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/523Motion estimation or motion compensation with sub-pixel accuracy
    • 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/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
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/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/179Methods 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 a scene or a shot
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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
    • 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/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/53Multi-resolution motion estimation; Hierarchical motion estimation
    • 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/533Motion estimation using multistep search, e.g. 2D-log search or one-at-a-time search [OTS]
    • 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/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • 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

Landscapes

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

Abstract

一种用于解码视频数据的装置包含经配置以存储视频数据的存储器及包括一或多个处理器的视频解码器,所述一或多个处理器经配置以自适应地选择用于编码视频数据块的运动向量的运动向量精度。

Description

用于视频译码的自适应运动向量分辨率信令
本申请案主张以下各者的权益:
2014年1月9日申请的第61/925,633号美国临时申请案,
2014年3月17日申请的第61/954,457号美国临时申请案,及
2014年10月16日申请的第62/064,761号美国临时申请案,
其以全文引用的方式并入本文中。
技术领域
本发明涉及视频译码,并且更确切地说涉及帧间预测视频译码。
背景技术
数字视频能力可并入到多种多样的装置中,包括数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌上型计算机、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、视频电话会议装置和类似者。数字视频装置实施视频压缩技术(例如,由MPEG-2、MPEG-4、ITU-T H.263或ITU-TH.264/MPEG-4第10部分高级视频译码(AVC)界定的标准及此类标准的扩展中所描述的视频压缩技术),以更有效率地发射及接收数字视频信息。
视频压缩技术执行空间预测和/或时间预测以减少或移除视频序列中固有的冗余。对于基于块的视频译码来说,可将视频帧或切片分割为多个宏块。可进一步分割每一宏块。使用相对于相邻宏块的空间预测来编码经帧内译码(I)帧或切片中的宏块。经帧间译码(P或B)帧或切片中的宏块可使用相对于同一帧或切片中的相邻宏块的空间预测或相对于其它参考帧的时间预测。
发明内容
一般来说,本发明描述用于自适应地选择用于编码视频数据块的运动向量的运动向量精度及用于通过视频解码器确定视频编码器为所述块中的每一者选择的同一运动向量精度的技术。
在一个实例中,一种解码经编码视频数据的方法包含确定第一块的译码模式是合并模式;确定第一块的运动向量精度是整数像素精度;建构第一块分合并候选者列表,其中所述合并候选者列表包括分数精度运动向量候选者;选择所述分数精度运动向量候选者以解码所述第一块;舍入所述分数精度运动向量候选者以确定整数像素精度运动向量;及使用所述整数像素精度运动向量定位所述第一块的参考块。
在另一实例中,一种编码视频数据的方法包含:确定第一块的运动向量精度是整数像素精度;建构所述第一块的合并候选者列表,其中所述合并候选者列表包括分数精度运动向量候选者;选择所述分数精度运动向量候选者以编码所述第一块;为使用合并模式译码所述第一块,舍入所述分数精度运动向量候选者以确定整数像素精度运动向量;及使用所述整数像素精度运动向量定位所述第一块的参考块。
在另一实例中,一种用于视频解码的装置包含经配置以存储视频数据的存储器及视频解码器,视频解码器包括一或多个处理器,其经配置以:确定第一块的译码模式是合并模式;确定所述第一块的运动向量精度是整数像素精度;构建所述第一块的合并候选者列表,其中所述合并候选者列表包括分数精度运动向量候选者;选择所述分数精度运动向量候选者以解码所述第一块;舍入所述分数精度运动向量候选者以确定整数像素精度运动向量;及使用所述整数像素精度运动向量定位所述第一块的参考块。
在另一实例中,一种计算机可读存储媒体存储指令,所述指令在由一或多个处理器执行时致使所述一或多个处理器:确定第一块的译码模式是合并模式;确定所述第一块的运动向量精度是整数像素精度;构建所述第一块的合并候选者列表,其中所述合并候选者列表包括分数精度运动向量候选者;选择所述分数精度运动向量候选者以解码所述第一块;舍入所述分数精度运动向量候选者以确定整数像素精度运动向量;及使用所述整数像素精度运动向量定位所述第一块的参考块。
在另一实例中,一种用于解码经编码视频数据的设备包含:用于确定第一块的译码模式是合并模式的装置;用于确定所述第一块的运动向量精度是整数像素精度的装置;用于构建所述第一块的合并候选者列表的装置,其中所述合并候选者列表包括分数精度运动向量候选者;用于选择所述分数精度运动向量候选者以解码所述第一块的装置;用于舍入所述分数精度运动向量候选者以确定整数像素精度运动向量的装置;及用于使用所述整数像素精度运动向量定位所述第一块的参考块的装置。
附图及以下描述中陈述一或多个实例的细节。其它特征、目标和优点将从所述描述和图式以及权利要求书而显而易见。
附图说明
图1是说明可利用用于支持自适应运动向量分辨率的本发明的技术的实例视频编码和解码系统的框图。
图2为说明可实施用于支持自适应运动向量分辨率的视频编码器的实例的框图。
图3是图解说明对经编码视频序列进行解码的视频解码器的实例的框图。
图4是说明全像素位置的分数像素位置的概念图。
图5A到5C是说明对应色度及明度像素位置的概念图。
图6是用于解码器侧运动向量导出(DMVD)的实例L状模板匹配的图解说明。
图7是说明实例基于镜的双向MV导出的概念图。
图8是说明用于根据本发明中描述的技术对视频数据进行编码的实例方法的流程图。
图9是说明用于根据本发明中描述的技术对视频数据进行解码的实例方法的流程图。
图10是说明用于译码视频数据的实例方法的流程图。
图11是说明译码视频数据的实例方法的流程图。
图12是说明用于译码视频数据的实例方法的流程图。
图13是说明用于译码视频数据的实例方法的流程图。
图14是说明用于译码视频数据的实例方法的流程图。
图15是说明用于译码视频数据的实例方法的流程图。
图16是说明用于译码视频数据的实例方法的流程图。
图17是说明用于译码视频数据的实例方法的流程图。
具体实施方式
一般来说,本发明描述用于自适应地选择用于编码视频数据块的运动向量的运动向量精度及用于通过视频解码器确定视频编码器为所述块中的每一者选择的同一运动向量精度的技术。根据一些技术,视频解码器可在没有经编码视频位流中的显式信令的情况下导出由视频编码器选择的运动向量精度。根据其它技术技术,视频编码器可在经编码视频位流中发信号通知选定的运动向量精度。本发明的技术可包含(例如)在整数像素精度与不同水平的子整数像素精度(有时被称作分数像素精度)之间自适应地选择。例如,所述技术可包含在用于编码视频数据块的运动向量的整数像素精度与四分之一像素精度或八分之一像素精度之间自适应地选择。本发明中的术语“八分之一像素”既定是指像素的八分之一(1/8)的精度,例如,以下各者中的一者:全像素位置(0/8)、像素的八分之一(1/8)、像素的八分之二(2/8,也称为像素的四分之一)、像素的八分之三(3/8)、像素的八分之四(4/8,也称为像素的二分之一及像素的四分之二)、像素的八分之五(5/8)、像素的八分之六(6/8,也称为像素的四分之三),或像素的八分之七(7/8)。
常规的H.264及H.265编码器及解码器支持具有四分之一像素精度的运动向量。然而,此类像素精度既不发信号通知也不导出,而是固定的。在一些情况下,八分之一像素精度可提供优于四分之一像素精度或整数像素精度的某些优点。然而,将每个运动向量编码到八分之一像素精度可需要太多的译码位,其可超过原本由八分之一像素精度运动向量提供的益处。对于某个类型的视频内容,在完全没有内插的情况下(换句话说,仅使用整数像素精度)来译码运动向量可为优选的。
屏幕内容(例如由计算机产生的内容)通常涉及全部具有确切相同的像素值接着是像素值中的急剧改变的一连串像素。例如,在白色背景上包含蓝色文本的屏幕内容中,形成蓝色字母的像素可全部具有同一像素值,而白色背景也全部具有同一像素值,白色像素值可显著不同于蓝色像素值。相比之下,相机所获取的内容通常包含归因于运动、阴影、照明改变及其它自然现象而引起的像素值中的缓慢改变。因为屏幕内容及相机所获取的内容通常具有不同特性,所以对一个有效的译码工具可不一定对另一个有效。作为一个实例,用于帧间预测编码的子像素内插可提高相机内容的译码,但相关联的复杂度及信令开销可实际上降低了译码质量及/或屏幕内容的带宽效率。
本发明的技术包含基于(例如)被译码的视频的内容而自适应地确定运动向量精度。在一些实例中,本发明的技术包含通过编码器导出被译码的视频内容的适当的运动向量精度。使用同一导出技术,视频解码器还可在不接收指示运动向量精度的语法元素的情况下确定使用什么运动向量精度编码所述视频数据。在其它实例中,视频编码器可在经编码视频位流中发信号通知由视频编码器选择的运动向量精度。
自适应地选择运动向量精度可通过使得能够将较高的精度运动向量(例如1/4或1/8精度运动向量)用于视频内容而提高整体视频译码质量,此类较高精度运动向量在所述视频内容中的使用会通过例如产生更好的速率-失真权衡而提高视频译码质量。自适应地选择运动向量精度还可通过使得能够使用较低精度运动向量(例如整数精度)用于视频内容而提高整体视频译码质量,在所述视频内容中使用较高精度运动向量不会提高或甚至恶化视频译码质量。
可参考视频译码器来描述本发明中的各种技术,其既定为可指代视频编码器或视频解码器的通用术语。除非以其它方式明确陈述,否则不应假定相对于视频编码器或视频解码器描述的技术不可由视频编码器或视频解码器中的另一者来执行。举例来说,在许多情况下,视频解码器执行与视频编码器相同或有时互逆的译码技术,以便解码经编码视频数据。在许多情况下,视频编码器还包含视频解码环,且因此视频编码器执行视频解码作为编码视频数据的一部分。因此,除非另外说明,否则本发明中相对于视频解码器所描述的技术还可由视频编码器执行,且反之亦然。
本发明还可使用例如当前层当前块、当前图片、当前切片等术语。在本发明的上下文中,术语当前既定识别当前正译码的层、块、图片、切片等,例如与先前经译码层、块、图片和切片或待译码块、图片和切片相反。
图1是说明可利用用于支持自适应运动向量分辨率的本发明的技术的实例视频编码和解码系统10的框图。如图1中所示,系统10包含经由通信信道16将经编码视频传输到目的地装置14的源装置12。源装置12及目的地装置14可包括广泛范围的装置中的任一者。在一些情况下,源装置12及目的地装置14可包括无线通信装置,例如无线手持机、所谓的蜂窝式或卫星无线电电话,或可经由通信信道16传送视频信息的任何无线装置,在所述情况下,通信信道16为无线的。然而,一般涉及用于支持运动向量的自适应子像素精度的本发明的技术不一定受限于无线应用或环境。举例来说,这些技术可应用于空中电视广播、有线电视传输、卫星电视传输、因特网视频传输、编码到存储媒体上的经编码数字视频,或其它情形。因此,通信信道16可包括适合于传输经编码视频数据的无线或有线媒体的任何组合。
在图1的实例中,源装置12包括视频源18、视频编码器20、调制器/解调器(调制解调器)22和发射器24。目的地装置14包含接收器26、调制解调器28、视频解码器30及显示装置32。根据本发明,源装置12的视频编码器20可经配置以应用用于支持运动向量的自适应子像素精度的技术。在其它实例中,源装置和目的地装置可包括其它组件或布置。举例来说,源装置12可从外部视频源18(例如外部相机)接收视频数据。同样,目的地装置14可与外部显示装置介接,而非包含集成式显示装置。
图1的图解说明的系统10只是一个实例。用于支持运动向量的自适应子像素精度的技术可由任何数字视频编码和/或解码装置执行。尽管本发明的技术一般通过视频编码装置来执行,但是所述技术还可通过视频编码器/解码器(通常被称作“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对所述信息进行解调。同样,视频编码过程可实施本文中描述的用于支持运动向量的自适应子像素精度的技术中的一或多者。在信道16上传送的信息可包含由视频编码器20界定的语法信息,所述语法信息还由视频解码器30使用,所述语法元素包含描述宏块及其它经译码单元(例如,图片群组(GOP))的特性及/或处理的语法元素。显示装置32将经解码视频数据显示给用户,且可包括多种显示装置中的任一者,例如阴极射线管(CRT)、液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
在图1的实例中,通信信道16可包括任何无线或有线通信媒体,例如射频(RF)频谱或一或多个物理传输线,或无线与有线媒体的任何组合。通信频道16可形成基于包的网络(例如局域网、广域网或全球网络,例如因特网)的部分。通信信道16大体上表示用于将视频数据从源装置12发射到目的地装置14的任何合适的通信媒体或不同通信媒体的集合,包含有线或无线媒体的任何合适的组合。通信信道16可包含路由器、交换器、基站或可用于促进从源装置12到目的地装置14的通信的任何其它装备。
视频编码器20及视频解码器30可根据视频压缩标准(例如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-T H.264/MPEG-4(AVC)标准是作为被称为联合视频小组(JVT)的集体合作伙伴的产品而由ITU-T视频译码专家组(VCEG)连同ISO/IEC移动图片专家组(MPEG)制定。在一些方面中,本发明中描述的技术可应用到大体符合H.264标准的装置。ITU-T研究组在2005年3月在ITU-T推荐H.264“用于通用音视频服务的高级视频译码(Advanced Video Codingfor generic audiovisual services)”中描述了H.264标准,其在本文中可被称作H.264标准或H.264规范或H.264/AVC标准或规范。联合视频组(JVT)不断致力于H.264/AVC的扩展,并且开发新的标准,例如,针对HEVC。
视频编码器20和视频解码器30各自可实施为多种合适的编码器和解码器电路中的任一者,例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件固件或其任何组合。视频编码器20及视频解码器30中的每一者可包含于一或多个编码器或解码器中,其中的任一者可集成为相应相机、计算机、移动装置、订户装置、广播装置、机顶盒、服务器或其类似者中的组合式编码器/解码器(编解码器)的部分。
视频序列通常包含一系列视频帧。图片群组(GOP)一般来说包括一系列一或多个视频帧。GOP可包含GOP的标头、GOP的一或多个帧的标头或其它地方中的语法数据,其描述GOP中包括的帧的数目。每一帧可包含描述相应帧的编码模式的帧语法数据。视频编码器20通常对个别视频帧内的视频块进行操作以便编码视频数据。视频块可对应于宏块或宏块的分区。视频块可具有固定或变化的大小,并且根据指定译码标准可在大小上有所不同。每一视频帧可包含多个切片。每一切片可包含多个宏块,宏块可布置成分区(还称为子块)。
作为一实例,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)(还称为序列),或根据适用译码技术界定的另一可独立解码的单元。
被称作高效率视频译码(HEVC)的新视频译码标准最近已经定案。当前正在努力开发HEVC的各种扩展,包含被称作屏幕内容译码扩展的扩展。所述HEVC标准化工作是基于称为HEVC测试模型(HM)的视频译码装置的模型。HM假设视频译码装置优于根据(例如)ITU-TH.264/AVC的装置的若干种能力。举例来说,H.264提供九种帧内预测编码模式,而HM提供多达三十三种帧内预测编码模式。
HM将视频数据块称为译码单元(CU)。位流内的语法数据可界定最大译码单元(LCU),其为在像素数目方面的最大译码单元。一般来说,除了CU并不具有大小相异以外,CU具有类似于H.264的宏块的目的。因此,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的大小。
根据本发明的技术,视频编码器20可使用具有不同子整数像素精度的运动向量的一或多个PU对CU进行帧间模式编码。例如,视频编码器20可基于经编码的视频数据的内容而在使用具有整数像素精度或分数(例如四分之一或八分之一)像素精度的运动向量之间进行选择。根据本发明的一些技术,视频编码器20可不需要产生PU的运动向量的子像素精度的指示以用于包含在经编码视频数据的位流中。而是,视频解码器30可使用由视频编码器20使用的同一导出技术导出所述运动向量精度。根据本发明的其它技术,视频编码器20可在经编码视频数据的位流中包含视频解码器30可用来确定选定运动向量精度的一或多个语法元素。
为了计算子整数像素位置的值,视频编码器20可包含多种内插滤波器。例如,双线性内插可用于计算子整数像素位置的值。视频编码器20可经配置以相对于PU的明度数据执行运动搜索以使用所述PU的明度数据计算运动向量。视频编码器20接着可再使用所述运动向量编码所述PU的色度数据。通常,色度数据具有比对应的明度数据更低的分辨率(例如,明度数据的分辨率的四分之一)。因此,色度数据的运动向量可具有比明度数据更高的精度。例如,明度数据的四分之一像素精度运动向量可具有色度数据的八分之一像素精度。类似地,明度数据的八分之一像素精度运动向量可具有色度数据的十六分之一像素精度。
在进行帧内预测性或帧间预测性译码以产生预测性数据及残差数据之后,且在进行任何变换(例如,用于H.264/AVC中的4×4或8×8整数变换,或离散余弦变换DCT)以产生变换系数之后,可执行变换系数的量化。量化一般是指其中将变换系数量化以有可能减少用以表示系数的数据量的过程。量化过程可以减少与系数中的一些或全部相关联的位深度。例如,n位值可在量化期间被下舍入到m位值,其中n大于m。
在量化之后,可以例如根据上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)或另一熵译码方法来执行对经量化数据的熵译码。被配置成用于熵译码的处理单元或另一处理单元可执行其它处理功能,例如经量化系数的零延行长度译码及/或语法信息的产生,例如经译码块模式(CBP)值、宏块类型、译码模式、LCU大小或类似者。
目的地装置14的视频解码器30可经配置以执行与本发明的视频编码器20的技术中的任一者或全部类似且一般对称的技术。例如,视频解码器30可经配置以接收界定在其中编码CU的PU的运动向量的子像素精度的指示的上下文的信息。视频编码器20可提供且视频解码器30可接收包含CU及PU的LCU的四叉树中的上下文信息。所述上下文信息可对应于CU及/或PU的大小信息,例如,CU的深度、PU的大小及/或PU的类型。视频解码器30可使用所述上下文信息解码运动向量的子像素精度的指示,例如,以确定所述运动向量是具有四分之一像素精度还是八分之一像素精度。例如,视频解码器30可使用上下文信息执行反向熵译码过程以对运动向量的子像素精度的指示进行熵解码。
视频编码器20和视频解码器30各自可实施为合适的多种合适的编码器或解码器电路中的任一者,例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑电路、软件、硬件、固件或其任何组合。视频编码器20和视频解码器30中的每一者可包含在一或多个编码器或解码器中,所述编码器或解码器中的任一者可集成为组合视频编码器/解码器(CODEC)的部分。包含视频编码器20及/或视频解码器30的设备可包括集成电路、微处理器及/或无线通信装置,例如蜂窝式电话。
图2是说明可实施用于支持自适应运动向量分辨率的技术的视频编码器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),包含同步DRAM(SDRAM)、磁阻式RAM(MRAM)、电阻性RAM(RRAM)或其它类型的存储器装置。可由相同的存储器装置或单独的存储器装置提供视频数据存储器38及经解码图片缓冲器64。在各种实例中,视频数据存储器38可与视频编码器20的其它组件在芯片上,或相对于那些组件在芯片外。
在编码过程期间,视频编码器20接收待译码的视频帧或切片。可将帧或切片划分成多个视频块(例如,LCU)。运动估计单元42及运动补偿单元44可相对于一或多个参考帧中的一或多个块执行所接收视频块的帧间预测性译码以提供时间压缩。帧内预测处理单元46可相对于在与待译码的块相同的帧或切片中的一或多个相邻块执行对所接收视频块的帧内预测译码,以提供空间压缩。
模式选择单元40可基于误差结果而选择译码模式中的一者(帧内或帧间),且将所得的经帧内或经帧间译码块提供到求和器50以产生残差块数据且提供到求和器62以重构经编码块以用作参考帧。在模式选择单元40选择块的帧间模式编码时,分辨率选择单元48可选择块的运动向量的分辨率。例如,分辨率选择单元48可选择块的运动向量的八分之一像素精度或四分之一像素精度。
作为实例,分辨率选择单元48可经配置以比较使用四分之一像素精度运动向量编码块及使用八分之一像素精度运动向量编码块之间的误差差异。运动估计单元42可经配置以在第一译码回合中使用一或多个四分之一像素精度运动向量编码块且在第二译码回合中使用一或多个八分之一像素精度运动向量。运动估计单元42可进一步在第三编码回合中使用块的一或多个四分之一像素精度运动向量与一或多个八分之一像素精度运动向量的多种组合。分辨率选择单元48可计算可针对块的每一编码回合计算速率-失真值且计算速率-失真值之间的差异。
在差异超过阈值时,分辨率选择单元48可选择八分之一像素精度运动向量以用于编码所述块。分辨率选择单元48还可评估速率-失真信息、分析位预算及/或分析其它因素以在帧间模式预测过程期间在编码块时确定是使用运动向量的八分之一像素精度还是四分之一像素精度。在针对将被帧间模式编码的块选择八分之一像素精度或四分之一像素精度之后,模式选择单元40或运动估计可将指示运动向量的选定精度的消息(例如,信号)发送到运动估计单元42。
运动估计单元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计算的运动向量可指参考帧的子整数像素位置。如果没有子整数像素位置的值存储在经解码图片缓冲器64中,那么运动估计单元42及/或运动补偿单元44还可经配置以计算存储在经解码图片缓冲器64中的参考帧的子整数像素位置的值。运动估计单元42将所计算的运动向量发送到熵编码单元56及运动补偿单元44。由运动向量识别的参考帧块可被称为预测块。
视频编码器20的运动估计单元42、运动补偿单元44、模式选择单元40或另一单元还可发信号通知用于编码块的运动向量的四分之一像素精度或八分之一像素精度的使用。例如,运动估计单元42可将运动向量的子整数像素精度的指示发送到熵编码单元56。运动估计单元42还可将与对应于运动向量的PU的大小信息相关的上下文信息提供给熵编码单元56,其中所述大小信息可包含包含PU的CU的深度、PU的大小及/或PU的类型中的任一者或全部。
运动补偿单元44可基于预测块而计算预测数据。视频编码器20通过从正译码的原始视频块减去来自运动补偿单元44的预测数据而形成残差视频块。求和器50表示执行此减法运算的一或多个组件。变换单元52将例如离散余弦变换(DCT)或概念上类似的变换的变换应用于残差块,从而产生包括残差变换系数值的视频块。
变换单元52可执行其它变换,例如通过H.264标准界定的变换,其概念上类似于DCT。也可使用子波变换、整数变换、子带变换或其它类型的变换。在任何情况下,变换单元52向残差块应用所述变换,从而产生残差变换系数的块。所述变换可将残差信息从像素值域转换到变换域(例如,频域)。量化单元54对残差变换系数进行量化以进一步降低位速率。量化过程可以减少与系数中的一些或全部相关联的位深度。可以通过调整量化参数来修改量化程度。
在量化之后,熵编码单元56对经量化的变换系数进行熵译码。举例来说,熵编码单元56可执行内容CAVLC、CABAC或另一熵译码技术。在熵编码单元56的熵译码之后,可将经编码视频发射到另一装置,或将所述视频存档用于稍后发射或检索。在上下文自适应二进制算术译码的情况下,上下文可基于相邻宏块。
在一些情况下,熵编码单元56或视频编码器20的另一单元可经配置以执行除了熵译码之外的其它译码功能。举例来说,熵编码单元56可经配置以确定用于宏块和分区的CBP值。而且,在一些情况下,熵编码单元56可以对一个宏块或其分区中的系数执行延行长度译码。明确地说,熵编码单元56可以应用Z形扫描或其它扫描图案来扫描宏块或分区中的变换系数并且对成串的零进行编码以用于进一步压缩。熵编码单元56还可用适当语法元素建构标头信息以用于在经编码视频位流中发射。
根据本发明的技术,在其中发信号通知而非导出子像素精度的实例中,熵编码单元56可经配置以编码运动向量的子像素精度的指示(例如)以指示运动向量是具有整数像素精度还是子像素精度,例如四分之一像素精度或八分之一像素精度(或其它子像素精度,在各种实例中)。熵编码单元56可使用CABAC编码指示。此外,熵编码单元56可使用上下文信息执行CABAC以编码指示对应于运动向量的PU的大小信息的指示,其中所述大小信息可包含包含PU的CU的深度、PU的大小及/或PU的类型中的任一者或全部。
视频编码器20可预测性地发信号通知运动向量。可由视频编码器20实施的预测性信令技术的两个实例包含高级运动向量预测(AMVP)及合并模式信令。在AMVP中,视频编码器20和视频解码器30两者基于从已经译码的块确定的运动向量而汇编候选者列表。视频编码器20随后发信号通知到候选者列表中的索引以识别运动向量预测符(MVP)且发信号通知运动向量差(MVD)。视频解码器30例如使用等于MVP+MVD的运动向量使用由MVD修改的MVP对块进行帧间预测。
在合并模式中,视频编码器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的组件解码的视频数据,例如经编码视频位流。存储于视频数据存储器68中的视频数据可例如从计算机可读媒体16(例如,从本地视频源,例如相机)经由视频数据的有线或无线网络通信或通过存取物理数据存储媒体而获得。视频数据存储器68可形成存储来自经编码视频位流的经编码视频数据的经译码图片缓冲器(CPB)。经解码图片缓冲器82可为存储供视频解码器30用于例如在帧内或帧间译码模式中解码视频数据的参考视频数据的参考图片存储器。视频数据存储器68及经解码图片缓冲器82可由多种存储器装置中的任一者形成,例如动态随机存取存储器(DRAM),包含同步DRAM(SDRAM)、磁阻式RAM(MRAM)、电阻性RAM(RRAM)或其它类型的存储器装置。视频数据存储器68与经解码图片缓冲器82可由同一存储器装置或单独存储器装置提供。在各种实例中,视频数据存储器68与视频解码器30的其它组件一起在芯片上,或相对于那些组件在芯片外。
熵解码单元70可例如从视频数据存储器68检索经编码位流。所述经编码位流可包含经熵译码视频数据。熵解码单元70可解码经熵译码视频数据,且运动补偿单元72可从经熵解码的视频数据确定运动信息,包含运动向量、运动向量精度、参考图片列表索引及其它运动信息。运动补偿单元72可例如通过执行上文描述的AMVP及合并模式技术而确定此信息。
运动补偿单元72可使用位流中接收的运动向量来识别经解码图片缓冲器82中的参考帧中的预测块。帧内预测单元74可使用位流中接收的帧内预测模式从空间上邻近的块形成预测块。反量化单元76反量化(即,解量化)位流中提供且由熵解码单元70解码的经量化块系数。反量化过程可包含例如由H.264解码标准界定的常规过程。反量化过程还可包含使用由视频编码器20针对每一宏块计算的量化参数QPY确定量化程度且同样确定应该应用的反量化程度。
反变换单元58将反变换(例如,反DCT、反整数变换或概念上类似的反变换过程)应用于变换系数以便产生像素域中的残差块。运动补偿单元72产生经运动补偿块,有可能基于内插滤波器执行内插。用于将用于以子像素精度进行运动估计的内插滤波器的识别符可包含在语法元素中。运动补偿单元72可使用由视频编码器20在视频块的编码期间使用的内插滤波器来计算参考块的子整数像素弹内插值。运动补偿单元72可根据所接收的语法信息而确定由视频编码器20使用的内插滤波器且使用所述内插滤波器来产生预测性块。根据本发明的技术,运动补偿单元72可在运动向量具有明度数据的八分之一像素精度时内插参考块的色度数据的十六分之一像素位置的值。例如,运动补偿单元72可使用双线性内插来内插参考块的十六分之一像素位置的值。
运动补偿单元72使用一些语法信息确定用于编码经编码视频序列的帧及/或切片的LCU及CU的大小,描述经编码视频序列的帧的每一宏块如何被分割的分割信息、指示每一分区如何被编码的模式、每一帧间编码CU的一或多个参考帧(及参考帧列表)及用以解码经编码视频序列的其它信息。
求和器80将残差块与由运动补偿单元72或帧内预测单元产生的对应预测性块求和以形成经解码块。视需要,还可应用解块滤波器以对经解码块进行滤波,以便移除成块假影。随后将经解码视频块存储在经解码图片缓冲器82中,其提供用于后续运动补偿的参考块且还产生经解码视频用于呈现于显示装置(例如图1的显示装置32)上。
图4是说明全像素位置的分数像素位置的概念图。具体来说,图4说明全像素(pel)100的分数像素位置。全像素100对应于二分之一像素位置102A到102C(二分之一pel 102)、四分之一像素位置104A到104L(四分之一pel 104),及八分之一像素位置106A到106AV(八分之一pel 106)。
图4说明使用虚线轮廓指示可任选地包含这些位置的块的八分之一像素位置106。也就是说,如果运动向量具有八分之一像素精度,那么运动向量可指向全像素位置100、二分之一像素位置102、四分之一像素位置104或八分之一像素位置106中的任一者。然而,如果运动向量具有四分之一像素精度,那么运动向量可指向全像素位置100、二分之一像素位置102、或四分之一像素位置104中的任一者,但将不指向八分之一像素位置106。应进一步理解,在其它实例中,可使用其它精度,例如,十六分之一像素精度、三十二分之一像素精度或类似者。
全像素位置100处的像素的值可包含在对应的参考帧中。也就是说,全像素位置100处的像素的值一般对应于参考帧中的像素的实际值,例如,在显示参考帧时最终渲染及显示的值。可使用自适应内插滤波器或固定内插滤波器(例如,各种数目的“分接头”(系数)的滤波器,例如各种维纳滤波器、双线性滤波器或其它滤波器)来内插二分之一像素位置102、四分之一像素位置104及八分之一像素位置106(统称为分数像素位置)的值。一般来说,可从一或多个相邻像素内插分数像素位置的值,其对应于相邻全像素位置或先前确定的分数像素位置的值。
根据本发明的技术,例如视频编码器20等视频编码器可自适应地例如在整数像素精度或分数像素精度(例如八分之一像素精度及四分之一像素精度)之间选择运动向量的精度。视频编码器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,且十六分之一色度像素126B对应于八分之一明度像素114B。
在例如H.264/AVC、HEVC及可能H.264及HEVC的后继编解码器等高级视频编解码器中,可增加发信号通知运动向量的位成本。为了降低此位成本,可使用解码器侧MV导出(DMVD)。在S.坎普及M.维恩的“用于基于块的视频译码的解码器侧运动向量导出(Decoder-side motion vector derivation for block-based video coding)”(IEEE视频技术电路与系统汇刊(IEEE Transactions on Circuits and Systems for Video Technology),第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.仇、L.徐、W.张、H.蒋的“用于HEVC的解码器侧运动估计及威纳滤波器(DECODER-SIDE MOTION ESTIMATION AND WIENER FILTER FORHEVC)”(2013VCIP研讨会,马来西亚,2013年11月17日到20日)中提出基于镜的双向MV导出方法。
图7是说明基于实例镜的双向MV导出的概念图。如图7中所说明,可通过在解码器侧处以分数样本准确度围绕搜索中心的中心对称运动估计而应用基于镜的双向MV导出。搜索窗的大小/位置可预先界定且在位流中发信号通知。在图7中,dMV是添加到PMV0且从PMV1减去以产生MV对(MV0及MV1)的偏移。可检查搜索窗内部的dMV的全部值且L0参考块与L1参考块之间的绝对差总和(SAD)可用作中心对称运动估计的测量值。具有最小SAD的MV对可被选择为块的最终MV。
对于自适应运动向量分辨率,子像素运动补偿可一般比整数像素运动补偿有效得多。然而,对于某个内容,例如具有特高频的纹理或屏幕内容,子像素运动补偿可不具有更好的性能或在一些情况下甚至具有更差的性能。在此些情况下,仅具有拥有整数像素精度的MV可更好。
如L.郭、P.尹、Y.郑、X.陆、Q.徐、J.Solé的“具有隐式信令的自适应运动向量分辨率(Adaptive motion vector resolution with implicit signaling)”(ICIP 2010:2057-2060)中所描述,基于经重构残差而提出自适应MV分辨率。在经重构残差块的方差高于阈值时,使用四分之一像素运动向量精度。另外,二分之一像素运动向量精度适用。如J.安、X.李、X.郭、S.雷的“渐进MV分辨率(Progressive MV Resolution)”(JCTVC-F125,意大利托里诺,2011年7月)中所描述,基于发信号通知的MV差的量值而自适应地确定MV分辨率。如Y.周、B.李、J.徐、G.J.沙利文、B.林的“对屏幕内容译码的运动向量分辨率控制(MotionVector Resolution Control for Screen Content Coding)”(JCTVC-P0277,美国圣何塞,2014年1月)中所描述,在切片层级处发信号通知运动向量精度信息。
迄今,尚未证实解码器侧运动向量精度导出方法非常有效,尤其对于屏幕内容译码。另外,尚未证实单一解码器侧运动向量精度导出方法对全部类型的内容都有效,包含相机获取的内容、屏幕内容及其它类型的内容。另外,到目前为止已经证实自适应运动向量精度方法对屏幕内容译码并非有效。
在一些实例中,实施本发明中所描述的技术,提出用于屏幕内容的解码器侧运动向量精度导出方法。在此实例中,运动向量精度可取决于解码器侧处的模板匹配的结果。在整数像素位置的模板匹配结果及其相邻子像素位置的模板匹配结果非常不同时,相关区可被看作是屏幕内容且应该使用具有整数像素精度的MV。另外,使用子像素运动向量精度。为界定“非常不同”,可使用一或多个固定或自适应阈值。
视频解码器30可例如通过基于模板匹配确定运动向量精度而解码视频数据。在此实例中,视频解码器30可针对被译码的当前块识别已经译码的相邻块的整数像素位置,且基于整数像素位置的位置,应用模板以确定多个整数像素位置。视频解码器30还可将模板应用于多个子像素位置以确定多个子像素位置。所述模板可例如界定形状,且视频解码器30可将所述模板应用于视频数据以通过基于相对于当前块的形状的位置定位多个整数像素位置而确定所述多个整数像素位置。类似地,视频解码器30可将所述模板应用于视频数据以通过基于相对于当前块的形状的位置定位多个子像素像素位置而确定所述多个子像素位置。
视频解码器30可将多个整数像素位置的一或多个像素值与多个子像素位置的一或多个像素值进行比较,且基于所述比较而确定运动向量的运动向量精度。视频解码器30可使用所述运动向量解码当前块。视频解码器30可例如使用合并模式、AMVP模式或某个其它此类模式确定所述运动向量。
视频解码器30可通过将多个整数像素位置的一或多个像素值与多个子像素位置的一或多个像素值进行比较以确定对应于多个整数像素位置的一或多个像素值与多个子像素位置的一或多个像素值之间的像素值中的差的量的差值而确定运动向量的运动向量精度。响应于所述差值大于阈值,视频解码器30确定运动向量精度是整数像素精度。响应于所述差值小于阈值,视频解码器30可确定运动向量精度是子像素精度。所述阈值可为固定值、自适应值或某个其它类型的值。为了将多个整数像素位置的一或多个像素值与多个子像素位置的一或多个像素值进行比较,视频解码器30可例如确定多个整数像素位置的一或多个像素值与多个子像素位置的一或多个像素值之间的绝对差总和。
根据本发明的其它技术,运动向量精度可取决于空间相邻块、时间相邻块或这两者的性质(例如锐度、梯度或是否跳过变换)。可在解码器侧处导出运动向量精度信息。或者或另外,运动向量精度可取决于空间相邻块、时间相邻块或这两者的运动向量精度。
视频解码器30可例如基于相邻块性质而确定运动向量精度。相邻块可例如包含至少一个空间相邻块及/或至少一个时间相邻块。对于被译码非当前块,视频解码器30可定位一或多个相邻块且确定所述一或多个相邻块的特性。所述特性可例如是以下各者中的一或多者:一或多个相邻块的锐度、一或多个相邻块的梯度(如果一或多个相邻块在跳过模式中经译码)及/或一或多个相邻块的运动向量精度。基于一或多个相邻块的特性,视频解码器30可确定运动向量的运动向量精度且使用所述运动向量解码当前块。视频解码器30可例如在不发信号通知(例如基于上下文)的情况下确定要确定哪一或哪些特性、可始终确定固定特性,或可接收要确定哪一或哪些特性的指示。
在本发明的另一实例技术中,可在位流中发信号通知关于使用解码器侧运动向量精度方法的指示符。例如,可直接在位流中发信号通知或从位流中经译码的其它信息(例如切片类型及时间层级)导出所述指示符。
视频解码器30可例如在经编码视频位流中接收运动向量精度信令类型的指示,且基于所述运动向量精度信令类型,确定视频数据块的运动向量精度。视频解码器30可使用所述所确定的运动向量精度的运动向量定位所述视频数据块的参考块。运动向量精度信令类型可例如为以下各者中的一者:(1)如上文所描述的模板匹配类型,(2)如上文所描述的基于相邻块特性的类型,或(3)如将在下文更详细地描述的直接信令类型。
视频解码器30可例如在切片标头、SPS、PPS中或在某个其它层级处接收指示。所述指示可例如为切片类型。换句话说,视频解码器30可确定特定切片的切片类型且基于所述切片类型,可确定用于解码所述切片的块的运动向量精度。所述指示可例如为切片的时间层级。换句话说,视频解码器30可确定切片的时间层级且基于所述切片的时间层级而确定用于解码所述切片的块的运动向量精度。
在另一实例中,可在位流中例如在最大译码单元LCU层级CU层级或PU层级处发信号通知运动向量精度信息。换句话说,视频编码器20可产生一或多个语法元素以用于包含在经编码视频数据的位流中,且视频解码器30可解析那些语法元素以确定特定视频数据块的运动向量精度。在指示CU具有整数精度MV时,此CU内部的全部PU都具有整数运动向量精度。
在实例中,对于合并/跳过模式,视频解码器30可仅在执行运动补偿时将运动向量舍入到整数精度。可保存未舍入的MV以用于稍后块的MV预测。例如,视频解码器30可确定第一块的译码模式是合并模式或跳过模式且确定第一块的运动向量精度是整数像素精度。视频解码器30可建构第一块的包含至少一个分数精度运动向量候选者的合并候选者列表。视频解码器30可选择所述分数精度运动向量候选者以解码第一块且舍入所述分数精度运动向量候选者以确定整数像素精度运动向量。视频解码器30可使用所述整数像素精度运动向量定位所述第一块的参考块。
对于第二块(例如,基于第一块的信息而译码的块),视频解码器30可将整数精度运动向量候选者添加到第二块的候选者列表(例如,合并候选者列表一AMVP候选者列表)。然而,在其它实例中,视频解码器30可将分数精度运动向量候选者添加到第二块的候选者列表。
对于非合并/跳过帧间模式,可将MV预测符舍入到整数精度,且可以整数精度发信号通知MVD,使得可保存经舍入的MV以用于稍后块MV预测。替代地或另外,可保存舍入之前的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层级处发信号通知精度。在一个实例中,在指示PU(或CU)具有整数精度MVD时,PU(或此CU内部的全部PU)可具有整数MVD精度。对于经AMVP译码的PU,PU的MVD可具有整数像素精度,而所述PU的所预测的MV及MV可具有子像素精度。因此,将整数精度MVD添加到子像素精度MVP会产生子像素运动向量。
例如,视频解码器30可确定第一块的MVD精度是整数像素精度。视频解码器30可建构第一块的MVP的包含至少一个分数精度运动向量候选者的候选者列表(例如,及AMVP候选者列表)。视频解码器30可从所述候选者列表选择分数精度运动向量候选者且基于所述分数精度运动向量候选者及整数像素精度MVD而确定分数像素精度运动向量。视频解码器30可使用所述分数像素精度运动向量来定位第一块的参考块。
在另一实例中,运动向量精度旗标可部分应用于LCU或CU。例如,CU整数精度旗标不应用于使用预先界定的译码模式(例如,合并及跳过)或使用预先界定的分区(例如,非2N×2N分区)或使用特殊译码工具(例如,变换跳过或无残差)译码的其PU。
例如,视频解码器30可确定视频数据的默认运动向量精度,且响应于视频数据的PU在特殊模式中被译码,使用默认运动向量精度的运动向量而定位所述PU的参考块。所述特殊模式可例如为跳过模式、2N×2N合并模式、合并模式、变换跳过模式或不对称分割模式中的一或多者。响应于使用除特殊模式之外的模式译码视频数据的第二PU,视频解码器30可确定视频数据的第二PU的发信号通知的运动向量精度且使用发信号通知的运动向量精度的运动向量而定位第二PU的参考块。视频解码器30可确定视频数据的CU的不同于所述默认运动向量精度的发信号通知的运动向量精度。CU可例如包含PU及/或第二PU。在一个实例中,所述发信号通知的运动向量精度可为整数像素精度,而所述默认运动向量精度是分数运动向量精度。在其它实例中,所述默认运动向量精度可为分数运动向量精度。
在实例中,可仅针对具有非零MVD的PU或CU发信号通知MV/MVD精度信息。在不发信号通知MV/MVD精度信息时,子像素MV可以用于PU或CU。可在PU或CU的MVD之后发信号通知MV/MVD精度信息。等于零的MVD可用于指MVD的垂直分量及MVD的水平分量两者都等于0。
例如,对于当前视频数据块,视频解码器30可接收MVD值,且响应于MVD值等于零,确定当前块的运动向量具有子像素运动向量精度。MVD值等于零可指示MVD值的x分量及MVD值的y分量两者都等于零。对于视频数据的第二当前块,视频解码器30可接收第二MVD值,且响应于所述第二MVD值是非零值,接收第二当前块的第二运动向量的运动向量精度的指示。视频解码器30可在参考图片中使用第二运动向量定位第二当前块的参考块。对于第二当前块,视频解码器30可在接收第二MVD值之后接收运动向量精度的指示。
在PU层级处发信号通知MV/MVD精度信息时,如果以下条件中的一或多者(例如,任一者)为真,则可不发信号通知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精度信息时,如果以下条件中的一者(及可能一或多者)对于所有PU为真,则可不发信号通知MV/MVD精度信息:(1)PU经帧内译码,(2)PU使用合并/跳过模式被译码,或(3)PU使用AMVP模式被译码,且PU的每一预测方向上的MVD等于零。或者或另外,在不发信号通知运动向量精度信息时,例如整数运动向量精度等默认运动向量精度可以用于PU或CU。
视频解码器30可例如针对视频数据的第一CU接收第一运动向量精度信息且响应于视频数据的第二CU满足条件,确定第二运动向量信息以对应于默认精度。所述条件可例如为CU内的所有PU都经帧内译码,CU内的所有PU都使用合并模式或跳过模式被译码,CU内的所有PU都使用AMVP被译码且所有PU的每一方向的MVD都等于零。所述默认精度可例如为分数精度或可没有精度。例如,如果块经帧内预测,那么块不具有相关联的运动向量且因此不具有相关联的运动向量精度。所述第一和第二运动向量精度信息可例如包含运动向量精度或MVD精度中的一者或两者。
在当前经AMVP译码的PU被发信号通知/导出为具有整数像素运动向量精度时,可将来自空间相邻块、时间相邻块或这两者的一或多个(且在一些实例中,所有)MV候选者舍入到整数像素精度,之后在AMVP列表的产生过程中修剪。在整数像素MV被发信号通知/导出为用于当前经合并、跳过译码的CU/PU或这两者时,可将来自空间时间相邻块、时间相邻块或这两者的一或多个(且在一些实例中,所有)MV候选者舍入到整数像素精度,之后在合并列表的产生过程中修剪。
例如,视频解码器30可识别一或多个运动向量候选者以用于包含在块的候选者列表(例如,合并候选者列表或AMVP候选者列表)中。所述一或多个运动向量候选者可例如包含一或多个空间相邻候选者及/或一或多个时间相邻候选者。所述一或多个运动向量候选者可包含至少一个分数精度运动向量候选者。响应于块的运动向量精度是整数像素精度,视频解码器30可舍入一个或运动向量候选者以确定一或多个整数精度运动向量候选者。视频解码器30可对所述一或多个整数精度运动向量候选者执行修剪操作。
在实例中,运动向量精度旗标可被使用或有条件地被用作其它语法元素的CABAC上下文。也就是说,取决于运动向量精度旗标,不同上下文模型可用于译码某些语法元素。在一个实例中,在译码例如PU等块的AMVP候选者索引时,PU或相关联的CU或空间相邻块或时间相邻块的运动向量精度旗标用作CABAC译码上下文。或者或另外,在一些实例中,在运动向量精度旗标指示整数像素运动向量精度时,可将等于0的AMVP候选者索引的初始化概率设定为接近1。或者或另外,在一些情况下,例如仅在B切片中,或仅在切片处于某一时间层级时,或在量化参数大于预定义阈值时,运动向量精度旗标可用作其它语法元素例如AMVP候选者索引)的CABAC上下文。
这些实例中的一或多者可经组合。例如,实际上,所述实例的任何部分的任何组合可用作新实例。另外,下文论述以上实例的子实例。
一些实例涉及屏幕内容的解码器侧运动向量精度导出。在一个实例中,可使用经重构样本上的L状或其它形状模板匹配。运动向量精度可基于整数像素位置的模板匹配结果(例如SAD)与其相邻子像素位置的匹配结果之间的差异。例如,在整数像素位置的匹配结果低得多时,整数像素精度适用。否则,子像素精度适用。为界定“低得多”,可使用阈值。实际上,可使用固定阈值、自适应阈值或这两者。对于自适应阈值,可在位流中发信号通知或基于其它信息(例如块类型,QP在位流中发信号通知的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分割、块大小、时间层级等。
图8是说明根据本发明中所描述的技术的用于编码视频数据的实例方法的流程图。将参考视频编码器(例如视频编码器20)描述图8的技术。视频编码器20确定第一块的运动向量精度是整数像素精度(202)。视频编码器20建构第一块的合并候选者列表(204)。作为建构所述合并候选者列表的部分,视频编码器20可将分数精度运动向量候选者添加到所述合并候选者列表。因此,所述合并候选者列表可包含分数精度运动向量候选者。视频编码器20选择所述分数精度运动向量候选者以编码第一块(206)。为使用合并模式译码第一块,视频编码器20舍入分数精度运动向量候选者以确定第一块的整数像素精度运动向量(208)。视频编码器20使用整数像素精度运动向量来定位第一块的参考块(210)。视频编码器20基于所述参考块而编码第一块(212)。
图9是说明用于根据本发明中描述的技术对视频数据进行解码的实例方法的流程图。将参考视频解码器(例如视频解码器30)描述图9的技术。视频解码器30确定第一块的译码模式是合并模式(220)。视频解码器30确定第一块的运动向量精度是整数像素精度(222)。视频解码器30建构第一块的合并候选者列表(224)。视频解码器30通过将分数精度运动向量候选者添加到所述合并候选者列表而建构所述合并候选者列表。视频解码器30选择所述分数精度运动向量候选者以解码第一块(226)。响应于选择所述分数精度运动向量,视频解码器30舍入分数精度运动向量候选者以确定第一块的整数像素精度运动向量(228)。视频解码器30使用所述整数像素精度运动向量来定位第一块的参考块(230)。视频解码器30基于所述参考块而解码第一块(232)。
图10是说明用于根据本发明中描述的技术对视频数据进行译码的实例方法的流程图。将参考视频解码器30描述图10的技术;然而,还可通过例如视频编码器20等视频编码器执行许多所述技术。对于当前图片中被译码的当前块,视频解码器30识别已经译码的相邻块的整数像素位置(234)。基于所述整数像素位置的位置,视频解码器30应用模板以确定所述图片中的多个整数像素位置(236)。视频解码器30将所述模板应用于多个子像素位置以确定所述图片中的多个子像素位置(238)。视频解码器30将所述多个整数像素位置的一或多个像素值与所述多个子像素位置的一或多个像素值进行比较(240)。基于所述比较,视频解码器30确定运动向量的运动向量精度(242)。视频解码器30使用具有所述所确定的运动向量精度的运动向量译码当前块(242)。
图11是说明用于根据本发明中描述的技术对视频数据进行译码的实例方法的流程图。将参考视频解码器30描述图11的技术;然而,还可通过例如视频编码器20等视频编码器执行许多所述技术。对于被译码的当前块,视频解码器30定位一或多个相邻块(246)。视频解码器30确定一或多个相邻块的特性(248)。基于所述一或多个相邻块的特性,视频解码器30确定运动向量的运动向量精度(250)。视频解码器30使用具有所述所确定的运动向量精度的运动向量译码当前块。
图12是说明用于根据本发明中描述的技术对视频数据进行译码的实例方法的流程图。将参考视频解码器30描述图12的技术;然而,还可通过例如视频编码器20等视频编码器执行许多所述技术。视频解码器30确定第一块的译码模式是合并模式(254)。视频解码器30确定第一块的运动向量精度是整数像素精度(256)。视频解码器30建构第一块的合并候选者列表,其中所述合并候选者列表包括分数精度运动向量候选者(258)。视频解码器30选择所述分数精度运动向量候选者以解码第一块(260)。视频解码器30舍入所述分数精度运动向量候选者以确定整数像素精度运动向量(262)。视频解码器30使用所述整数像素精度运动向量来定位第一块的参考块。
图13是说明用于根据本发明中描述的技术对视频数据进行译码的实例方法的流程图。将参考视频解码器30描述图13的技术;然而,还可通过例如视频编码器20等视频编码器执行许多所述技术。对于当前视频数据块,视频解码器30确定运动向量差值(266)。响应于所述运动向量差值等于零,视频解码器30确定当前块的运动向量具有子像素运动向量精度(268)。
图14是说明用于根据本发明中描述的技术对视频数据进行译码的实例方法的流程图。将参考视频解码器30描述图14的技术;然而,还可通过例如视频编码器20等视频编码器执行许多所述技术。视频解码器30针对视频数据确定默认运动向量精度(270)。响应于视频数据的PU在特殊模式中被译码,视频解码器30使用默认运动向量精度的运动向量定位PU的参考块(272)。
图15是说明用于根据本发明中描述的技术对视频数据进行译码的实例方法的流程图。将参考视频解码器30描述图15的技术;然而,还可通过例如视频编码器20等视频编码器执行许多所述技术。视频解码器30识别一或多个运动向量候选者以用于包含在块的候选者列表中,其中所述一或多个运动向量候选者包括至少一个分数精度运动向量候选者(274)。响应于块的运动向量精度是整数像素精度,视频解码器30舍入一个或运动向量候选者以确定一或多个整数精度运动向量候选者(276)。在舍入所述一或多个运动向量候选者之后,视频解码器30对所述一或多个整数精度运动向量候选者执行修剪操作(278)。
图16是说明用于根据本发明中描述的技术对视频数据进行译码的实例方法的流程图。将参考视频解码器30描述图16的技术;然而,还可通过例如视频编码器20等视频编码器执行许多所述技术。视频解码器30针对第一视频数据块及第二视频数据块确定默认精度(280)。视频解码器30针对第一视频数据块确定第一运动向量精度信息(282)。响应于第二视频数据块满足条件,确定第二运动向量信息以对应于所述默认精度(284)。所述第一和第二块可例如是第一和第二PU或第一和第二CU。
图17是说明用于根据本发明中描述的技术对视频数据进行译码的实例方法的流程图。将参考视频解码器30描述图17的技术;然而,还可通过例如视频编码器20等视频编码器执行许多所述技术。视频解码器30确定第一块的运动向量差精度是整数像素精度(286)。视频解码器30建构第一块的运动向量预测符的候选者列表,其中所述候选者列表包括分数精度运动向量候选者(288)。视频解码器30从所述候选者列表选择分数精度运动向量候选者(290)。视频解码器30基于所述分数精度运动向量候选者及整数像素精度运动向量差而确定分数像素精度运动向量(292)。视频解码器30使用分数像素精度运动向量来定位第一块的参考块(294)。
为了易于解释,已经单独地呈现图8到17的技术,但预期所描述的技术可彼此结合使用。另外,预期一些技术的若干部分可与其它技术的若干部分组合使用。
在一或多个实例中,所描述的功能可用硬件、软件、固件或其任何组合来实施。如果以软件实施,那么所述功能可以作为一或多个指令或代码在计算机可读媒体上存储或传输,并且由基于硬件的处理单元来执行。计算机可读媒体可包含计算机可读存储媒体,其对应于有形媒体(例如,数据存储媒体)或通信媒体,所述通信媒体包含促进将计算机程序从一处传送到另一处(例如,根据通信协议)的任何媒体。以此方式,计算机可读媒体大体上可对应于(1)非暂时形的有形计算机可读存储媒体,或(2)通信媒体,例如信号或载波。数据存储媒体可为可由一或多个计算机或一个或多个处理器存取以检索用于实施本发明中描述的技术的指令、代码及/或数据结构的任何可用媒体。计算机程序产品可以包含计算机可读媒体。
借助于实例而非限制,此类计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或可以用来存储指令或数据结构的形式的期望程序代码并且可以由计算机存取的任何其它媒体。并且,可恰当地将任何连接称作计算机可读媒体。举例来说,如果使用同轴缆线、光纤缆线、双绞线、数字订户线(DSL)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源传输指令,那么同轴缆线、光纤缆线、双绞线、DSL或例如红外线、无线电和微波等无线技术包含在媒体的定义中。但是,应理解,所述计算机可读存储媒体和数据存储媒体并不包含连接、载波、信号或其它瞬时媒体,而是实际上针对于非瞬时有形存储媒体。如本文中所使用,磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光以光学方式再现数据。上述各者的组合也应包含在计算机可读媒体的范围内。
可由例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路等一或多个处理器来执行指令。因此,如本文中所使用的术语“处理器”可指代上述结构或适合于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,本文中所描述的功能性可以在经配置用于编码和解码的专用硬件和/或软件模块内提供,或者并入在组合编解码器中。并且,可将所述技术完全实施于一或多个电路或逻辑元件中。
本发明的技术可在广泛多种的装置或设备中实施,包含无线手持机、集成电路(IC)或IC集合(例如,芯片组)。本发明中描述各种组件、模块或单元是为了强调经配置以执行所揭示的技术的装置的功能方面,但未必需要通过不同硬件单元实现。实际上,如上文所描述,各种单元可以结合合适的软件及/或固件组合在编码解码器硬件单元中,或者通过互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一或多个处理器。
描述了各种实例。这些和其它实例属于所附权利要求书的范围内。

Claims (23)

1.一种用于解码视频数据的经编码位流的方法,所述方法包括:
对视频数据的第一块,确定第一运动向量差值;
确定所述第一运动向量差值是否等于零;
仅响应于确定所述第一运动向量差值等于零,在视频数据的经编码位流中没有接收用于所述第一块的第一运动向量的运动向量精度的显式信令的情况下,确定所述第一块的第一运动向量具有子像素运动向量精度,其中所述第一运动向量差值等于零包括所述第一运动向量差值的x分量等于零以及所述第一运动向量差值的y分量等于零;
使用所述第一运动向量在所述第一块的参考图片中定位所述第一块的参考块;
对视频数据的第二块,确定第二运动向量差值;
响应于所述第二运动向量差值为非零值并在确定所述第二运动向量差值后,接收指示所述第二块的第二运动向量的运动向量精度的一个或多个语法元素;
使用所述第二运动向量在所述第二块的参考图片中定位所述第二块的参考块;
基于所述第一块的所述参考块及所述第二块的所述参考块而解码所述视频数据的一个或多个图片;及
输出经解码的一个或多个图片。
2.根据权利要求1所述的方法,其中响应于所述第一运动向量差值等于零,确定所述第一块的所述第一运动向量具有子像素运动向量精度包括:不接收指示所述第一运动向量的运动向量精度的信令而确定所述第一块的所述第一运动向量具有子像素运动向量精度。
3.根据权利要求1所述的方法,其中指示所述第二运动向量的所述运动向量精度的所述一个或多个语法元素包括所述第二块的块级语法。
4.根据权利要求1所述的方法,其进一步包括:
对视频数据的第三块,确定视频数据的所述第三块的译码模式是合并模式;及
响应于视频数据的所述第三块的所述译码模式是所述合并模式,不接收指示所述第三块的运动向量精度的信令而确定所述第三块的运动向量精度。
5.根据权利要求4所述的方法,其进一步包括:
建构所述第三块的运动向量预测符的候选者列表,其中所述候选者列表包括子像素精度运动向量候选者以及整数精度运动向量候选者;及
使用所述子像素精度运动向量候选者及所述整数精度运动向量候选者的一者在所述第三块的参考图片中定位所述第三块的参考块。
6.根据权利要求4所述的方法,其中所述合并模式包括跳过模式。
7.根据权利要求1所述的方法,其进一步包括:
对视频数据的第三块,确定视频数据的所述第三块的译码模式是高级运动向量预测AMVP模式;
响应于视频数据的所述第三块的译码模式是所述AMVP模式且响应于视频数据的所述第三块的运动向量差值等于零,不接收指示所述第三块的运动向量精度的信令而确定所述第三块的运动向量精度。
8.根据权利要求1所述的方法,其进一步包括:
在无线通信装置的接收器处接收所述视频数据;
将所述视频数据存储于所述无线通信装置的存储器中;及
在所述无线通信装置的一个或多个处理器中处理所述视频数据。
9.根据权利要求8所述的方法,其中所述无线通信装置包括电话手持机且其中在所述无线通信装置的所述接收器处接收所述视频数据包括根据无线通信标准解调包含所述视频数据的信号。
10.根据权利要求1所述的方法,其中所述解码所述视频数据的方法被作为编码所述视频数据的一部分而执行。
11.一种用于解码视频数据的经编码位流的装置,所述装置包括:
存储器,其经配置以存储视频数据;及
一或多个处理器,所述一或多个处理器经配置以:
对视频数据的第一块,确定第一运动向量差值;
确定所述第一运动向量差值是否等于零;
仅响应于确定所述第一运动向量差值等于零,在视频数据的经编码位流中没有接收用于所述第一块的第一运动向量的运动向量精度的显式信令的情况下,确定所述第一块的第一运动向量具有子像素运动向量精度,其中所述第一运动向量差值等于零包括所述第一运动向量差值的x分量等于零以及所述第一运动向量差值的y分量等于零;
使用所述第一运动向量在所述第一块的参考图片中定位所述第一块的参考块;
对视频数据的第二块,确定第二运动向量差值;
响应于所述第二运动向量差值为非零值并在确定所述第二运动向量差值后,接收指示所述第二块的第二运动向量的运动向量精度的一个或多个语法元素;
使用所述第二运动向量在所述第二块的参考图片中定位所述第二块的参考块;
基于所述第一块的所述参考块及所述第二块的所述参考块而解码所述视频数据的一个或多个图片;及
输出经解码的一个或多个图片。
12.根据权利要求11所述的装置,其中为了响应于所述第一运动向量差值等于零而确定所述第一块的所述第一运动向量具有子像素运动向量精度,所述一或多个处理器经配置以:不接收指示所述第一运动向量的运动向量精度的信令而确定所述第一块的所述第一运动向量具有子像素运动向量精度。
13.根据权利要求11所述的装置,其中指示所述第二运动向量的所述运动向量精度的所述一个或多个语法元素包括所述第二块的块级语法。
14.根据权利要求11所述的装置,其中所述一或多个处理器进一步经配置以:
对视频数据的第三块,确定视频数据的所述第三块的译码模式是合并模式;及
响应于视频数据的所述第三块的所述译码模式是所述合并模式,不接收指示所述第三块的运动向量精度的信令而确定所述第三块的运动向量精度。
15.根据权利要求14所述的装置,其中所述一或多个处理器进一步经配置以:
建构所述第三块的运动向量预测符的候选者列表,其中所述候选者列表包括子像素精度运动向量候选者以及整数精度运动向量候选者;及
使用所述子像素精度运动向量候选者及所述整数精度运动向量候选者的一者在所述第三块的参考图片中定位所述第三块的参考块。
16.根据权利要求14所述的装置,其中所述合并模式包括跳过模式。
17.根据权利要求11所述的装置,其中所述一或多个处理器进一步经配置以:
对视频数据的第三块,确定视频数据的所述第三块的译码模式是高级运动向量预测AMVP模式;及
响应于视频数据的所述第三块的所述译码模式是所述AMVP模式且响应于视频数据的所述第三块的运动向量差值等于零,不接收指示所述第三块的运动向量精度的信令而确定所述第三块的运动向量精度。
18.根据权利要求11所述的装置,其中所述装置包括无线通信装置,其进一步包括经配置以接收经编码的视频数据的接收器。
19.根据权利要求18所述的装置,其中所述无线通信装置包括电话手持机且其中所述接收器经配置以根据无线通信标准解调包含所述经编码的视频数据的信号。
20.一种用于解码视频数据的经编码位流的装置,所述装置包括:
用于对视频数据的第一块,确定第一运动向量差值的装置;
用于确定所述第一运动向量差值是否等于零的装置;
用于仅响应于确定所述第一运动向量差值等于零并且在视频数据的经编码位流中没有接收用于所述第一块的第一运动向量的运动向量精度的显式信令的情况下,确定所述第一块的第一运动向量具有子像素运动向量精度的装置,其中所述第一运动向量差值等于零包括所述第一运动向量差值的x分量等于零以及所述第一运动向量差值的y分量等于零;
用于使用所述第一运动向量在所述第一块的参考图片中定位所述第一块的参考块的装置;
用于基于第二运动向量差值为非零值来确定视频数据的第二块的所述第二运动向量差值的装置;
用于响应于所述第二运动向量差值为非零值并在确定所述第二运动向量差值后,接收指示所述第二块的第二运动向量的运动向量精度的一个或多个语法元素的装置;
用于使用所述第二运动向量在所述第二块的参考图片中定位所述第二块的参考块的装置;
用于基于所述第一块的所述参考块及所述第二块的所述参考块而解码所述视频数据的一个或多个图片的装置;及
用于输出经解码的一个或多个图片的装置。
21.根据权利要求20所述的装置,其进一步包括:
用于对视频数据的第三块,确定视频数据的所述第三块的译码模式是合并模式的装置;
用于响应于视频数据的所述第三块的所述译码模式是所述合并模式,不接收指示所述第三块的运动向量精度的信令而确定所述第三块的运动向量精度的装置。
22.一种存储指令的非暂时性计算机可读存储媒体,所述指令在由一或多个处理器执行时致使所述一或多个处理器:
接收视频数据的经编码位流;
对视频数据的第一块确定第一运动向量差值;
确定所述第一运动向量差值是否等于零;
仅响应于确定所述第一运动向量差值等于零并且在视频数据的经编码位流中没有接收用于所述第一块的第一运动向量的运动向量精度的显式信令的情况下,确定所述第一块的第一运动向量具有子像素运动向量精度,其中所述第一运动向量差值等于零包括所述第一运动向量差值的x分量等于零以及所述第一运动向量差值的y分量等于零;
使用所述第一运动向量在所述第一块的参考图片中定位所述第一块的参考块;
基于第二运动向量差值为非零值来确定视频数据的第二块的所述第二运动向量差值;
响应于所述第二运动向量差值为非零值并在确定所述第二运动向量差值后,接收指示所述第二块的第二运动向量的运动向量精度的一个或多个语法元素;
使用所述第二运动向量在所述第二块的参考图片中定位所述第二块的参考块;
基于所述第一块的所述参考块及所述第二块的所述参考块而解码所述视频数据的一个或多个图片;及
输出经解码的一个或多个图片。
23.根据权利要求22所述的非暂时性计算机可读存储媒体,其存储在执行时致使所述一或多个处理器进行以下操作的其它指令:
对视频数据的第三块,确定视频数据的所述第三块的译码模式是合并模式;及
响应于视频数据的所述第三块的所述译码模式是所述合并模式,不接收指示所述第三块的运动向量精度的信令而确定所述第三块的运动向量精度。
CN201580003647.2A 2014-01-09 2015-01-09 用于视频译码的自适应运动向量分辨率信令 Active CN106165419B (zh)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US201461925633P 2014-01-09 2014-01-09
US61/925,633 2014-01-09
US201461954457P 2014-03-17 2014-03-17
US61/954,457 2014-03-17
US201462064761P 2014-10-16 2014-10-16
US62/064,761 2014-10-16
US14/592,767 2015-01-08
US14/592,767 US10531116B2 (en) 2014-01-09 2015-01-08 Adaptive motion vector resolution signaling for video coding
PCT/US2015/010852 WO2015106126A1 (en) 2014-01-09 2015-01-09 Adaptive motion vector resolution signaling for video coding

Publications (2)

Publication Number Publication Date
CN106165419A CN106165419A (zh) 2016-11-23
CN106165419B true CN106165419B (zh) 2020-03-24

Family

ID=53496199

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580003647.2A Active CN106165419B (zh) 2014-01-09 2015-01-09 用于视频译码的自适应运动向量分辨率信令

Country Status (14)

Country Link
US (1) US10531116B2 (zh)
EP (2) EP3451666A1 (zh)
JP (2) JP2017508346A (zh)
KR (1) KR102184063B1 (zh)
CN (1) CN106165419B (zh)
BR (1) BR112016015998B1 (zh)
CA (1) CA2932811C (zh)
DK (1) DK3092801T3 (zh)
ES (1) ES2880744T3 (zh)
HU (1) HUE055118T2 (zh)
PL (1) PL3092801T3 (zh)
PT (1) PT3092801T (zh)
SI (1) SI3092801T1 (zh)
WO (1) WO2015106126A1 (zh)

Families Citing this family (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3085085A4 (en) * 2014-01-29 2017-11-08 MediaTek Inc. Method and apparatus for adaptive motion vector precision
GB2524476B (en) * 2014-03-14 2016-04-27 Canon Kk Method, device and computer program for optimizing transmission of motion vector related information when transmitting a video stream
US10432928B2 (en) 2014-03-21 2019-10-01 Qualcomm Incorporated Using a current picture as a reference for video coding
EP3189660B1 (en) * 2014-09-30 2023-07-12 HFI Innovation Inc. Method of adaptive motion vector resolution for video coding
CN107734335B (zh) * 2014-09-30 2020-11-06 华为技术有限公司 图像预测方法及相关装置
KR102349788B1 (ko) * 2015-01-13 2022-01-11 인텔렉추얼디스커버리 주식회사 영상의 부호화/복호화 방법 및 장치
US10958927B2 (en) 2015-03-27 2021-03-23 Qualcomm Incorporated Motion information derivation mode determination in video coding
US20160337662A1 (en) * 2015-05-11 2016-11-17 Qualcomm Incorporated Storage and signaling resolutions of motion vectors
US10200713B2 (en) 2015-05-11 2019-02-05 Qualcomm Incorporated Search region determination for inter coding within a particular picture of video data
CN115086652A (zh) * 2015-06-05 2022-09-20 杜比实验室特许公司 图像编码和解码方法和图像解码设备
KR20180059443A (ko) * 2015-09-24 2018-06-04 엘지전자 주식회사 영상 코딩 시스템에서 움직임 벡터 정제 기반 인터 예측 방법 및 장치
CN105306866A (zh) * 2015-10-27 2016-02-03 青岛海信电器股份有限公司 帧率转换方法及装置
KR101735798B1 (ko) * 2015-12-16 2017-05-29 서울대학교산학협력단 병합 모드를 기반으로 한 영상 부호화 방법 및 장치
WO2017124298A1 (zh) * 2016-01-19 2017-07-27 北京大学深圳研究生院 视频编码、解码方法及其帧间预测方法、装置和系统
US10602176B2 (en) * 2016-04-15 2020-03-24 Google Llc Coding interpolation filter type
WO2017194756A1 (en) * 2016-05-12 2017-11-16 Telefonaktiebolaget Lm Ericsson (Publ) Methods and arrangements for coding and decoding motion vectors
EP3264768A1 (en) 2016-06-30 2018-01-03 Thomson Licensing Method and apparatus for video coding with adaptive motion information refinement
CN116567223A (zh) * 2016-08-11 2023-08-08 Lx 半导体科技有限公司 图像编码/解码设备和图像数据的发送设备
US11356693B2 (en) 2016-09-29 2022-06-07 Qualcomm Incorporated Motion vector coding for video coding
US10462462B2 (en) 2016-09-29 2019-10-29 Qualcomm Incorporated Motion vector difference coding technique for video coding
US10979732B2 (en) * 2016-10-04 2021-04-13 Qualcomm Incorporated Adaptive motion vector precision for video coding
CN109496431A (zh) * 2016-10-13 2019-03-19 富士通株式会社 图像编码/解码方法、装置以及图像处理设备
CN116567208A (zh) * 2016-10-19 2023-08-08 Sk电信有限公司 视频编码/解码设备和方法及非暂时性记录介质
KR20180043151A (ko) 2016-10-19 2018-04-27 에스케이텔레콤 주식회사 영상 부호화 또는 복호화를 위한 장치 및 방법
ES2927560T3 (es) * 2016-12-05 2022-11-08 Lg Electronics Inc Aparato de decodificación de vídeo, aparato de codificación de vídeo, medio de almacenamiento y método para la trasmisión
US10491917B2 (en) * 2017-03-22 2019-11-26 Qualcomm Incorporated Decoder-side motion vector derivation
US20180357870A1 (en) * 2017-06-07 2018-12-13 Amazon Technologies, Inc. Behavior-aware security systems and associated methods
US11272207B2 (en) * 2017-06-12 2022-03-08 Futurewei Technologies, Inc. Selection and signaling of motion vector (MV) precisions
MY194535A (en) 2017-06-30 2022-11-30 Huawei Tech Co Ltd Search region for motion vector refinement
WO2019009498A1 (ko) * 2017-07-03 2019-01-10 엘지전자 주식회사 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
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
CN109587501B (zh) * 2017-09-28 2022-07-12 腾讯科技(深圳)有限公司 进行运动估计的方法、装置及存储介质
KR102306562B1 (ko) 2017-11-27 2021-09-30 엘지전자 주식회사 영상 코딩 시스템에서 인터 예측에 따른 영상 디코딩 방법 및 장치
CN109905714B (zh) * 2017-12-08 2022-12-27 华为技术有限公司 帧间预测方法、装置及终端设备
US10869062B2 (en) * 2017-12-21 2020-12-15 Qualcomm Incorporated Probability initialization and signaling for adaptive arithmetic coding in video coding
US11012715B2 (en) 2018-02-08 2021-05-18 Qualcomm Incorporated Intra block copy for video coding
CN110166778A (zh) * 2018-02-12 2019-08-23 华为技术有限公司 视频解码方法、视频解码器以及电子设备
WO2019194497A1 (ko) * 2018-04-01 2019-10-10 엘지전자 주식회사 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
KR20230169429A (ko) * 2018-04-13 2023-12-15 엘지전자 주식회사 비디오 처리 시스템에서 인터 예측 방법 및 장치
CN116668678A (zh) * 2018-05-10 2023-08-29 Lg电子株式会社 图像编解码方法、计算机可读存储介质和数据发送方法
CN115866272A (zh) * 2018-05-16 2023-03-28 华为技术有限公司 一种视频编解码方法和装置
US11509924B2 (en) * 2018-06-01 2022-11-22 Panasonic Intellectual Property Corporation Of America Encoder, decoder, encoding method, and decoding method
WO2019234673A1 (en) * 2018-06-07 2019-12-12 Beijing Bytedance Network Technology Co., Ltd. Chroma dmvr
KR102493418B1 (ko) * 2018-06-07 2023-01-31 주식회사 윌러스표준기술연구소 적응적 모션 벡터 레졸루션을 이용하는 비디오 신호 처리 방법 및 장치
WO2019244051A1 (en) 2018-06-19 2019-12-26 Beijing Bytedance Network Technology Co., Ltd. Selected mvd precision without mvp truncation
US10798394B2 (en) * 2018-06-27 2020-10-06 Avago Technologies International Sales Pte. Limited Low complexity affine merge mode for versatile video coding
TWI719519B (zh) 2018-07-02 2021-02-21 大陸商北京字節跳動網絡技術有限公司 對於dmvr的塊尺寸限制
US10897617B2 (en) * 2018-07-24 2021-01-19 Qualcomm Incorporated Rounding of motion vectors for adaptive motion vector difference resolution and increased motion vector storage precision in video coding
US11539977B2 (en) * 2018-07-31 2022-12-27 Hfi Innovation Inc. Method and apparatus of merge with motion vector difference for video coding
US11057617B2 (en) * 2018-08-03 2021-07-06 Tencent America LLC Method and apparatus for video coding
CN110809164B (zh) * 2018-08-04 2022-06-28 北京字节跳动网络技术有限公司 Bio中的mv精度
TWI752341B (zh) 2018-08-04 2022-01-11 大陸商北京字節跳動網絡技術有限公司 不同解碼器側運動矢量推導模式之間的交互
IL280611B1 (en) 2018-09-17 2024-04-01 Samsung Electronics Co Ltd A method for encoding and decoding traffic information and a device for encoding and decoding traffic information
CA3111679C (en) * 2018-09-19 2023-10-03 Huawei Technologies Co., Ltd. Method for skipping refinement based on patch similarity in bilinear interpolation based decoder-side motion vector refinement
EP4325859A3 (en) 2018-09-19 2024-05-15 Beijing Bytedance Network Technology Co., Ltd. Syntax reuse for affine mode with adaptive motion vector resolution
TWI815974B (zh) 2018-09-23 2023-09-21 大陸商北京字節跳動網絡技術有限公司 具有自適應運動矢量分辨率的運動矢量的修改
CN111010569B (zh) 2018-10-06 2023-02-28 北京字节跳动网络技术有限公司 Bio中的时间梯度计算的改善
CN111010581B (zh) * 2018-12-07 2022-08-12 北京达佳互联信息技术有限公司 运动矢量信息的处理方法、装置、电子设备及存储介质
US10951895B2 (en) 2018-12-31 2021-03-16 Alibaba Group Holding Limited Context model selection based on coding unit characteristics
WO2020140216A1 (zh) * 2019-01-02 2020-07-09 北京大学 视频处理方法和装置
CN111226440A (zh) * 2019-01-02 2020-06-02 深圳市大疆创新科技有限公司 视频处理方法和装置
CN111416982A (zh) * 2019-01-04 2020-07-14 北京三星通信技术研究有限公司 对运动矢量信息进行编/解码的方法及装置
CN113475078A (zh) * 2019-01-08 2021-10-01 腾讯美国有限责任公司 用于小帧间块的存储器带宽减小的方法和装置
EP3895429A4 (en) * 2019-01-31 2022-08-10 Beijing Bytedance Network Technology Co., Ltd. CONTEXT FOR CODE AN ADAPTIVE MOTION VECTOR RESOLUTION IN AFFINE MODE
WO2020156525A1 (en) * 2019-02-01 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Multiple syntax elements for adaptive motion vector resolution
US11025948B2 (en) * 2019-02-28 2021-06-01 Tencent America LLC Method and apparatus for motion prediction in video coding
US11178415B2 (en) * 2019-03-12 2021-11-16 Tencent America LLC Signaling of CU based interpolation filter selection
US20220132136A1 (en) * 2019-03-16 2022-04-28 Vid Scale, Inc. Inter prediction bandwidth reduction method with optical flow compensation
US20190222858A1 (en) * 2019-03-26 2019-07-18 Intel Corporation Optimal out of loop inter motion estimation with multiple candidate support
SG11202110650WA (en) * 2019-04-01 2021-10-28 Beijing Bytedance Network Technology Co Ltd Using interpolation filters for history based motion vector prediction
RU2701058C1 (ru) * 2019-04-12 2019-09-24 Общество с ограниченной ответственностью "Научно-производственная фирма "САД-КОМ" Способ компенсации движения и устройство для его реализации
CN110248192B (zh) * 2019-06-12 2021-10-15 腾讯科技(深圳)有限公司 编码器切换、解码器切换、屏幕分享方法和屏幕分享系统
CN114270844A (zh) * 2019-06-20 2022-04-01 交互数字Vc控股法国有限公司 用于视频编码和解码的运动向量处理
US11190789B2 (en) * 2019-06-30 2021-11-30 Tencent America LLC Method and apparatus for video coding using inter-prediction mode signaling to dertermine motion vectors
US11425414B2 (en) * 2019-08-05 2022-08-23 Tencent America LLC Method and apparatus for video coding
EP3997869A4 (en) * 2019-08-10 2022-10-26 Beijing Bytedance Network Technology Co., Ltd. SUBPICTURE DEPENDENT SIGNALING IN VIDEO STREAMS
EP3997881A4 (en) 2019-08-20 2022-09-14 Beijing Bytedance Network Technology Co., Ltd. SELECTIVE USE OF ALTERNATIVE INTERPOLATION FILTERS IN VIDEO PROCESSING
US11218718B2 (en) * 2019-08-26 2022-01-04 Tencent America LLC Adaptive motion vector resolution signaling
CN114365490A (zh) 2019-09-09 2022-04-15 北京字节跳动网络技术有限公司 高精度图像和视频编解码的系数缩放
JP7323712B2 (ja) 2019-09-21 2023-08-08 北京字節跳動網絡技術有限公司 画像およびビデオコーディングのための高精度変換および量子化
CN110572673B (zh) * 2019-09-27 2024-04-09 腾讯科技(深圳)有限公司 视频编解码方法和装置、存储介质及电子装置
US20230179763A1 (en) * 2021-12-06 2023-06-08 Tencent America LLC Interpolation Filters for Adaptive Motion Vector Difference Resolution

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102804779A (zh) * 2009-06-09 2012-11-28 索尼公司 图像处理装置和方法
WO2013053309A1 (en) * 2011-10-11 2013-04-18 Mediatek Inc. Method and apparatus of motion and disparity vector derivation for 3d video coding and hevc

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8208550B2 (en) * 2007-07-31 2012-06-26 Hewlett-Packard Development Company, L.P. Adapting an encoded video signal to encoding complexity
US20120063515A1 (en) * 2010-09-09 2012-03-15 Qualcomm Incorporated Efficient Coding of Video Parameters for Weighted Motion Compensated Prediction in Video Coding
US20120294370A1 (en) 2010-10-06 2012-11-22 Yi-Jen Chiu System and method for low complexity motion vector derivation
US10327008B2 (en) * 2010-10-13 2019-06-18 Qualcomm Incorporated Adaptive motion vector resolution signaling for video coding
CN103444181B (zh) * 2011-04-12 2018-04-20 太阳专利托管公司 运动图像编码方法、运动图像编码装置、运动图像解码方法、运动图像解码装置及运动图像编码解码装置
EP2727359B1 (en) * 2011-06-30 2019-08-07 Telefonaktiebolaget LM Ericsson (publ) A method as well as a decoder and encoder for processing a motion vector
US10536701B2 (en) * 2011-07-01 2020-01-14 Qualcomm Incorporated Video coding using adaptive motion vector resolution
JP2011229190A (ja) * 2011-08-17 2011-11-10 Sharp Corp 動画像符号化装置及び動画像復号装置
PL2744204T3 (pl) * 2011-09-14 2019-03-29 Samsung Electronics Co., Ltd. Sposób dekodowania jednostki predykcji (pu) w oparciu o jej rozmiar
US9325991B2 (en) * 2012-04-11 2016-04-26 Qualcomm Incorporated Motion vector rounding
US20130336406A1 (en) * 2012-06-14 2013-12-19 Qualcomm Incorporated Redundancy removal for merge/skip mode motion information candidate list construction
KR20130139811A (ko) 2013-10-21 2013-12-23 주식회사 케이티 화면 간 예측 수행시 후보 블록 결정 방법 및 이러한 방법을 사용하는 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102804779A (zh) * 2009-06-09 2012-11-28 索尼公司 图像处理装置和方法
WO2013053309A1 (en) * 2011-10-11 2013-04-18 Mediatek Inc. Method and apparatus of motion and disparity vector derivation for 3d video coding and hevc

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
2011-1-24 - 2011-1-28;DAEGU;(MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11)》.2011, *
Y-J CHIU ET AL.CE1:Report of self derivation of motion estimation in TMuC 0.9.《 95.MPEG MEETING *

Also Published As

Publication number Publication date
EP3451666A1 (en) 2019-03-06
WO2015106126A1 (en) 2015-07-16
JP2017508346A (ja) 2017-03-23
SI3092801T1 (sl) 2021-08-31
JP6843821B2 (ja) 2021-03-17
CA2932811A1 (en) 2015-07-16
CA2932811C (en) 2022-12-06
ES2880744T3 (es) 2021-11-25
BR112016015998A2 (pt) 2017-08-08
DK3092801T3 (da) 2021-07-26
BR112016015998B1 (pt) 2023-11-14
JP2019080321A (ja) 2019-05-23
KR20160106617A (ko) 2016-09-12
EP3092801A1 (en) 2016-11-16
US20150195562A1 (en) 2015-07-09
HUE055118T2 (hu) 2021-10-28
PT3092801T (pt) 2021-07-30
KR102184063B1 (ko) 2020-11-27
PL3092801T3 (pl) 2021-11-22
CN106165419A (zh) 2016-11-23
EP3092801B1 (en) 2021-06-30
US10531116B2 (en) 2020-01-07

Similar Documents

Publication Publication Date Title
CN106165419B (zh) 用于视频译码的自适应运动向量分辨率信令
CN109792531B (zh) 一种编解码视频数据的方法、设备及存储介质
CN109792532B (zh) 用于视频译码的适应性运动向量精准度
US11356693B2 (en) Motion vector coding for video coding
CN107431820B (zh) 视频译码中运动向量推导
KR101513379B1 (ko) 비디오 코딩을 위한 적응적 모션 벡터 레솔루션 시그널링
CN110546956B (zh) 一种帧间预测的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant