对差分运动矢量编码/解码的设备和方法以及利用该设备和方法对视频编码/解码的设备...的制作方法

文档序号:7885700阅读:246来源:国知局
专利名称:对差分运动矢量编码/解码的设备和方法以及利用该设备和方法对视频编码/解码的设备 ...的制作方法
技术领域
在一些实施方式中的本公开涉及差分运动矢量编码/解码设备和方法以及使用该差分运动矢量编码/解码设备和方法的视频编码/解码设备和方法。更特别地,本公开涉及这样的差分运动矢量编码/解码设备和方法以及使用该差分运动矢量编码/解码设备和方法的视频编码/解码设备和方法:以按照搜索区域而不同的分辨率预测运动矢量,并用相应的分辨率来对差分运动矢量进行自适应地编码/解码,从而提高压缩和重构效率。
背景技术
在本部分的说明仅提供与本公开相关的背景信息,并且可能不构成现有技术。图1是示出基于H.264/AVC的编码器的配置的示图。如图1所示,基于H.264/AVC的编码器通过执行帧内/帧间预测、变换/量化、熵编码等来对输入视频数据编码。帧内预测是去除时间冗余的处理,并且帧间预测是去除空间冗余的处理。通过变换/量化处理来压缩已去除了冗余的数据。通过熵编码器将压缩后的数据处理成比特流。视频通常可包括一系列画面,其中每个画面被划分成诸如宏块的预定区域。宏块是视频编码和解码的标准单位。可以根据编码方法将宏块分类为帧内宏块和帧间宏块。帧内宏块表示通过作为帧内预测编码的帧内预测编码方法编码的宏块。帧内预测编码适应于:通过利用经受了先前编码的重构块的像素预测当前块的像素,并在执行了当前编码的当前画面内进行解码,来产生 预测块,然后对预测块和当前块的像素之间的差值进行编码。帧间宏块表示通过帧间预测或帧间预测编码所编码的宏块。帧间预测编码适应于:通过参考一个或更多个过去画面或者未来画面预测当前画面中的当前块来产生预测块,然后对预测块与当前块的差值进行编码。这里,在对当前画面编码或解码中被参考的画面被称为参考画面。图1是示意性示出基于H.264/AVC的视频编码设备的配置的框图。参照图1,帧间预测器对宏块执行帧间预测,其中,所述宏块以16X16U6X8、8X 16、8X8、8X4、4X8和4X4为单位被划分。帧间预测从先前编码的帧中找到具有最高编码效率的块,并对所找到的块和当前将被编码的块之间的差进行编码。寻找具有最高编码效率的处理是预测运动矢量的处理。预测当前块的运动矢量的处理基于下面的等式I在多个备选运动矢量中选择具有最低成本的运动矢量作为最优运动矢量。M_cost=Distortion+ A Rate等式 I在等式I中,Distortion是当前块和由运动矢量指示的块之间的像素差的绝对值之和,Rate是当对预测的运动矢量进行编码时所产生的预测比特值,并且\是拉格朗日乘子。对预测运动矢量编码的处理如下。首先对从当前块的邻近块预测的预测运动矢量(PMV)执行计算,接着对PMV和当前块的运动矢量之间的差分矢量执行另一计算。当预测运动矢量时,可以按整数为单位执行运动估计。然而,为了更精确的运动估计,可以按1/2像素或1/4像素为单位执行运动估计。这是因为,图像不是只以整数像素为单位运动的,而是可以按1/2像素或1/4像素为单位运动。因此,如果仅按整数像素为单位执行运动估计,则在按1/2像素或1/4像素为单位运动的图像中编码效率降低。考虑该事实,作为现有的常规视频编解码器的JM软件按整数像素、1/2像素并且最后按1/4像素为单位预测运动矢量,并且利用具有当前将被编码的块的编码效率最高的分辨率的运动矢量来压缩信号。另外,KTA软件可以通过按整数像素至1/8像素为单位预测运动矢量来检测更精确的运动,以更精确地预测运动矢量。然而,参考图像不具有1/2像素或1/4像素,而是具有整数像素值。因此,利用给定的整数像素值来产生1/2像素或1/4像素值。针对作为现有的视频编解码器的软件JM中的用于产生1/2像素和1/4像素值的方法,利用1/2像素周围的6个整数像素值来产生1/2像素,如图2所示。另外,通过对1/4像素周围的1/2像素和整数像素执行双线性插值来获得1/4像素。另一方面,在作为另一参考程序的软件KTA中,可以按一直到1/8像素为单位产生运动矢量。所述方法示出在图3中。可以通过图4和图5的表来执行常规差分运动矢量编码方法。图4和图5不出当分别按一直到1/4像素和1/8像素为单位使用运动矢量分辨率时对差分运动矢量进行编码的码本。针对编码方法,计算X轴和y轴的差分运动矢量,并且利用图4和图5中表示的值中的与相关差分运动矢量相对应的码号产生比特串。图6是示出基于H.264/AVC的解码器的配置的示图。从编码器接收到的块数据值按顺序经受熵解码、逆量化和逆变换,以产生具有量化误差的差分块信号值。在当前块是帧间编码块时,利用图4和图5的码本产生差分运动矢量值,并且通过按与编码器相同的方式计算PMV产生运动矢量值。将利用从参考图像产生的运动矢量所获得的块添加到具有量化误差的差分块信号值,以产生重构图像。从图4或图5可以看出,在典型的压缩标准中,使用长码字,以对具有多种分辨率的所有运动矢量编码以及甚至对小运动矢量编码。这将增加通过对运动矢量编码所产生的数据的大小,这降低了编码效率。例如,参照图4,当差分运动矢量是(3,2)时,使用码号为‘3’的比特串‘000011000,以对‘3’编码,使用码号为‘15’的比特串‘000010000,以对‘2’编码。因为用于对1/2像素单位分辨率和1/4像素单位分辨率的运动矢量编码的码字以及用于对整数像素单位像素的运动矢量编码的码字被一起使用,所以使用长码字以对小运动矢量编码。以高分辨率预测运动矢量具有如下优点:可以找到与当前编码的块具有非常高相关性的参考块。然而,由于考虑包含低分辨率至高分辨率的运动矢量的值的所有分辨率的矢量而使用可变长码字,可能降低压缩效率。例如,当使用可变长码本以具有从整数像素单位至1/8像素单位所考虑的所有分辨率时,假定特定帧允许使用专用于按整数像素或1/2像素为单位的运动矢量的编码,不使用针对1/4和1/8像素的码字使得频繁使用的整数像素和1/2像素码矢量的可变长度码字变长。结果,编码效率可能降低。在一些相反的情况下,由于特定帧的整数像素值的特性,当考虑从整数像素至1/8像素单位的所有分辨率的运动矢量使用可变长码字时,可以提高压缩效率。

发明内容
技术问题因此,做出本公开以努力有效地解决以上问题,并且意在提供这样的差分运动矢量编码/解码设备和方法以及使用该差分运动矢量编码/解码设备和方法的视频编码/解码设备和方法:以按搜索区域而不同的分辨率预测运动矢量,从而以相应的分辨率来对差分运动矢量进行自适应地编码/解码,提高了压缩和重构效率。技术方案本描述的至少一个方面涉及一种视频编码/解码设备。该视频编码/解码设备包括视频编码器,该视频编码器以当前块的预测运动矢量为中心按照搜索区域设置不同的运动矢量分辨率,以所述搜索区域中的各个搜索区域相对应的分辨率估计出运动并产生运动矢量,并且将所产生的运动矢量和所述预测运动矢量之间的差分运动矢量用所述运动矢量相对应的分辨率进行编码。该视频编码/解码设备还包括视频解码器,该视频解码器从比特流中提取所述差分运动矢量,以与所述搜索区域中所述差分运动矢量所属的区域相对应的分辨率对提取出的差分运动矢量进行解码。本描述的至少一个方面涉及一种差分运动矢量编码设备。该差分运动矢量编码设备包括区域分辨率设置单元,该区域分辨率设置单元以当前块的预测运动矢量为中心按照搜索区域设置不同的运动矢量分辨率。该差分运动矢量编码设备还包括运动估计单元,该运动估计单元通过以与所述搜索区域中的各个搜索区域相对应的分辨率执行运动估计来产生运动矢量。该差分运动矢量编码设备还包括差分运动矢量计算器,该差分运动矢量计算器计算所产生的运动矢量和所述预测运动矢量之间的差分运动矢量。该差分运动矢量编码设备还包括差分运动矢量编码器,该差分运动矢量编码器以与所产生的运动矢量相对应的分辨率对计算出的差分运动矢量进行编码。所述差分运动矢量编码设备还包括阈值编码器,该阈值编码器以对应区域的最大分辨率对所述各个搜索区域的阈值进行编码,并且将比特流发送到解码器。所述区域分辨率设置单元将与解码器预先约定的值设置为所述搜索区域而不同的所述运动矢量分辨率。所述区域分辨率设置单元按照所述搜索区域设置所述分辨率,以使所述运动矢量分辨率随着所述当前块的所述预测运动矢量的距离增加而降低。所述区域分辨率设置单元按照所述搜索区域设置所述分辨率,以使所述运动矢量分辨率随着所述当前块的所述预测运动矢量的距离增加而增加。所述区域分辨率设置单元根据所述当前块的预测运动矢量为中心沿着X轴和y轴设置所述各个搜索区域区间并对所述搜索区域设置不同的运动矢量分辨率。本描述的至少一个方面涉及一种差分运动矢量解码设备。该差分运动矢量解码设备包括阈值解码器,该阈值解码器从自编码器接收到的比特流中提取以针对各个搜索区域的最大分辨率所编码的阈值,并对提取出的阈值进行解码。该差分运动矢量解码设备还包括区域分辨率设置单元,该区域分辨率设置单元基于各个解码的阈值对所述搜索区域设置不同运动矢量分辨率。该差分运动矢量解码设备还包括差分运动矢量解码器,该差分运动矢量解码器从所述比特流中提取差分运动矢量,并且以与所述搜索区域中的所述差分运动矢量所属的区域相对应的分辨率来对提取出的差分运动矢量进行解码。
本描述的至少一个方面涉及一种差分运动矢量解码设备。该差分运动矢量解码设备包括区域分辨率设置单元,该区域分辨率设置单元以与编码器预先约定的阈值来划分搜索区域,并且按照搜索区域设置不同的运动矢量分辨率。该差分运动矢量解码设备还包括解码器,该解码器从比特流中提取差分运动矢量,并且以与所述搜索区域中的所述差分运动矢量所属的区域相对应的分辨率来对提取出的差分运动矢量进行解码。本描述的至少一个方面涉及一种视频编码/解码方法。该视频编码/解码方法包括以下步骤:以当前块的预测运动矢量为中心按照搜索区域设置不同的运动矢量分辨率,以与所述搜索区域中的各个搜索区域相对应的分辨率估计运动并产生运动矢量,并且将所产生的运动矢量和所述预测运动矢量之间的差分运动矢量用所述运动矢量相对应的分辨率进行编码。该视频编码/解码方法还包括以下步骤:从比特流中提取所述差分运动矢量,以及以与所述搜索区域中所述差分运动矢量所属的区域相对应的分辨率对提取出的差分运动矢量进行解码。本描述的至少一个方面涉及一种差分运动矢量编码方法。该差分运动矢量编码方法包括以下步骤:其以当前块的预测运动矢量为中心按照搜索区域设置不同的运动矢量分辨率。该差分运动矢量编码方法还包括以下步骤:以与所述搜索区域中的各个搜索区域相对应的分辨率执行运动估计以产生运动矢量。该差分运动矢量编码方法包括以下步骤:计算所产生的运动矢量和所述预测运动矢量之间的差分运动矢量。该差分运动矢量编码方法包括以下步骤:以与所产生的运动矢量相对应的分辨率对计算出的差分运动矢量进行编码。所述差分运动矢量编码方法还包括以下步骤:以对应区域的最大分辨率对所述各个搜索区域的阈值进行编码,并且将比特流发送到解码器。所述设置步骤将按照所述搜索区域设置不同的所述运动矢量分辨率为与解码器预先约定的值。所述设置步骤按照所述搜索区域设置分辨率,以使所述运动矢量分辨率随着所述当前块的所述预测运动矢量的距离增加而降低。所述设置步骤按照所述搜索区域设置分辨率,以使所述运动矢量分辨率随着所述当前块的所述预测运动矢量的距离增加而增加。根据所述当前块的预测运动矢量为中心沿着X轴和y轴设置所述各个搜索区域区间并对所述搜索区域设置不同的运动矢量分辨率。本描述的至少一个方面涉及一种差分运动矢量解码方法。该差分运动矢量解码方法包括以下步骤:从自编码器接收到的比特流中提取以针对各个搜索区域的最大分辨率编码的阈值,并对提取出的阈值进行解码。该差分运动矢量解码方法还包括以下步骤:基于各个解码的阈值按照所述搜索区域设置不同的运动矢量分辨率。该差分运动矢量解码方法还包括以下步骤:从所述比特流中提取差分运动矢量,并且以与所述搜索区域中的所述差分运动矢量所属的区域相对应的分辨率来对提取出的差分运动矢量进行解码。本描述的至少一个方面涉及一种差分运动矢量解码方法。该差分运动矢量解码方法包括以下步骤:以与编码器预先约定的阈值来划分搜索区域,并且按照所述搜索区域设置不同的运动矢量分辨率。该差分运动矢量解码方法还包括以下步骤:从比特流中提取差分运动矢量,并且以与所述搜索区域中的所述差分运动矢量所属的区域相对应的分辨率来对提取出的差分运动矢量进行解码。有益效果根据上述本公开,以按照搜索区域而不同的分辨率来预测运动矢量,并且以相应的分辨率对差分运动矢量进行自适应地编码/解码,在使用可变长度码本的情况下,提高压缩和重构效率。


图1是示意性示出基于H.264/AVC的视频编码设备的配置的示图。图2是示出在作为视频编解码器的JM中产生1/2像素值和1/4像素值的方法的示图;图3是示出在作为参考软件的KTA中以一直到1/8像素为单位产生运动矢量的方法的示图;图4是示出对1/4像素单位的差分运动矢量进行编码的常规码本的示例的示图;图5是示出对1/8像素单位的差分运动矢量进行编码的常规码本的示例的示图;图6是示意性示出基于H.264/AVC的解码器的配置的示图;图7是示意性示出根据本公开的一个或更多个实施方式的差分运动矢量编码设备的不图;图8是二维地示出以当前块的预测运动矢量为中心的搜索区域的区域划分的示图;图9是一维地示出以当前块的预测运动矢量为中心的搜索区域的区域划分的示图;图10是示出如下示例性情况的示图:当前块的预测运动矢量的距离越远,在窄范围分辨率内针对各个搜索区域的可用运动矢量分辨率的数量越小;图11是示出在图10的情况下对差分运动矢量进行编码的码本的示图;图12是示出另一示例性情况的示图:当前块的预测运动矢量越远,在宽范围分辨率内针对各个搜索区域的可用运动矢量分辨率的数量越大;图13是示出在图12的情况下对差分运动矢量进行编码的码本的示例的示图;图14是示出不管距离以当前块的预测运动矢量为中心按照搜索区域任意地设置可用分辨率的类型的示例的示图;图15是示出在图14的情况下对差分运动矢量进行编码的码本的示例的示图;图16是示出以当前块的预测运动矢量为中心沿X轴和y轴不同地设置搜索区域的区域划分的示例的示图;图17是示出关于图16的X轴按部分确定运动矢量的示例的示图;图18是示出在图17的情况下对差分运动矢量进行编码的码本的示例的示图;图19是示出关于图16的y轴按部分确定运动矢量的示例的示图;图20是示出在图19的情况下对差分运动矢量进行编码的码本的示例的示图;图21是示意性示出根据本公开的实施方式的差分运动矢量解码设备的示图;图22是示意性地示出根据本公开的另一实施方式的差分运动矢量解码设备的示图23是示出由图7的差分运动矢量编码设备执行的差分运动矢量编码方法的流程图;图24是示出以长方形设置运动矢量分辨率下的覆盖部分的情况的示例的示图;图25是示出以菱形设置运动矢量分辨率下的覆盖部分的情况的示例的示图;图26是示例性地示出由于阈值将被发送到解码器导致语法的改变的示图;图27是示出由图21所示的差分运动矢量解码设备执行的差分运动矢量解码方法的流程图;图28是示出由图22的差分运动矢量解码设备执行的差分运动矢量解码方法的流程图;图29是示出所有当前编码的阈值在所有参考帧中被相等地使用的情况的示例的示图;以及图30是示出在所有参考帧中使用不同阈值的示例性情况的示图。
具体实施例方式下面,将参照附图详细描述本公开的至少一个实施方式。在下面的描述中,尽管标号不出在不同的附图中,相同的标号表不相同的兀件。此外,在下面的本实施方式的描述中,为了清晰和简要的目的,将省略对合并于此的已知功能和配置的详细描述。另外,在描述本公开的部件中,使用诸如第一、第二、A、B、(a)和(b)的术语。这些术语仅为了将一个部件与另一部分区分开的目的,但本领域技术人员将理解,术语不暗示或建议部件的本质、顺序或次序。如果部件被描述为‘连接’、‘结合’或‘链接’至另一部件,则本领域技术人员将理解部件不必直接‘连接’、‘结合’或‘链接’至另一部件,而是经由第三部件间接地‘连接’、‘结合’或‘链接’。下面,下面描述的视频编码设备和视频解码设备可以是诸如个人计算机(PC)、笔记本计算机、个人数字助理(PDA)、便携式多媒体播放器(PMP)、便携式游戏站(PSP)、无线通信终端、智能电话、TV等的用户终端或者诸如应用服务器、业务服务器等的服务器终端,并且可以表示各种设备,所述各种设备包括用于与各种装置或有线/无线通信网络执行通信的通信设备(例如,通信调制解调器等)、存储用于对视频编码或解码或者针对编码或解码执行帧间或帧内预测的各种程序和数据的存储器、以及用于运行所述程序以执行操作和控制的微处理器等。此外,由视频编码设备编码成比特流的视频可通过有线/无线通信网络(例如,互联网、无线短程或个域网(WPAN)、无线局域网(WLAN)、WiBro (无线宽带、aka WiMax)网络、移动通信网络等)或者通过各种通信接口(例如,线缆、通用串行总线(USB)等)被实时或非实时地发送到视频解码设备,因此在视频解码设备被解码,并且被重构和再现为视频。这里描述的技术没有限制地应用于在现有的H.264标准或软件KTA中使用的运动矢量预测单位(例如,宏块16X16、16X8、8X16、8X8、4X8、8X4、4X4),并且运动矢量估计块的大小(magnitude)也不受限制。另外,当运动矢量预测单位具有正方形、长方形、三角形和其它各种形状时,也可以使用本公开的技术。图7是示意性示出根据本公开的一个或更多个实施方式的差分运动矢量编码设备的示图。根据本公开的实施方式的差分运动矢量编码设备700可以包括区域分辨率设置单元710、运动估计单元720、差分运动矢量计算器730、差分运动矢量编码器740和阈值编码器750。区域分辨率设置单元710以当前块的预测运动矢量为中心按照搜索区域设置不同的运动矢量分辨率。在常规的差分运动矢量的编码中,以预测运动矢量为中心在所有区域中使用具有相同分辨率的运动矢量。然而,与现有的差分运动矢量编码方法相对,根据本公开实施方式的差分运动矢量编码设备700被配置为以预测运动矢量为中心按照搜索区域估计具有不同分辨率的运动矢量。为此,区域分辨率设置单元710可按照搜索区域来设置分辨率,以使运动矢量分辨率随着预测运动矢量的距离增加而降低,或者可以按照搜索区域设置分辨率,以使运动矢量分辨率随着当前块的预测运动矢量的距离增加而增加。另选地,本公开不限于此,并且可以根据当前块的预测运动矢量的距离来不同地设置可用的分辨率。另外,可以以当前块的预测运动矢量为中心根据不同方向将按照搜索区域而不同的运动矢量分辨率设置给不同的搜索部分。在这种情况下,区域分辨率设置单元710可以利用当前图像和参考图像计算各个搜索区域的阈值。本公开的实施方式不限于计算阈值的方法,并且可以利用搜索区域的确定的阈值来产生用于对差分运动矢量进行编码的表(码本)。运动估计单元720通过以由区域分辨率设置单元710针对各个搜索区域相应地设置的分辨率执行运动估计来产生运动矢量。差分运动矢量计算器730计算由运动估计单元720产生的运动矢量和预测运动矢量之间的差分运动矢量。差分运动矢量编码器740以与由运动估计单元720产生的运动矢量相对应的分辨率对由差分运动矢量计算器730计算出的差分运动矢量进行编码。阈值编码器750以对应区域的全分辨率对各个搜索区域的阈值进行编码,并将编码值以比特流发送到解码器。在这种情况下,不是通过阈值编码器750将各个搜索区域通知给解码器,而是可以将区域分辨率设置单元710配置为将与解码器预先约定的表示区域范围的阈值设置为区域而不同的运动矢量分辨率。图8是二维地示出以当前块的预测运动矢量为中心的搜索区域的区域划分的示图,并且图9是一维地示出以当前块的预测运动矢量为中心的搜索区域的区域划分的示图。如图8和图9所示,可以根据当前块的预测运动矢量的距离来划分用于估计运动矢量的搜索区域。尽管图8和图9示出各个搜索范围具有相同的间隔,但本公开不限于此,各个区域可以设置为不同的间隔。这样划分的搜索区域分别存在具有不同分辨率的运动矢量。例如,区域A具有一直到1/8像素的运动矢量编码分辨率;区域B具有一直到1/4像素的运动矢量编码分辨率;区域C具有一直到1/2像素的运动矢量编码分辨率;区域D以整数运动矢量分辨率对运动矢量编码。图10是示出如下示例性情况的示图:区域搜索距离距当前块的预测运动矢量越远,可用的运动矢量分辨率的数量越小。如图10所示,区域分辨率设置单元710可以被配置为考虑区域A中的最大分辨率1/8、区域B中的最大分辨率1/4、区域C中的最大分辨率1/2和区域D中的最大分辨率1/1来估计运动矢量。例如,在产生1/8分辨率的差分运动矢量时,可以将大小在-2/8到2/8的范围内的差分运动矢量分类为区域A ;将大小在3/8到8/8之间以及在-3/8到-8/8之间的差分运动矢量分类为区域B ;将大小在9/8到16/8之间以及在-9/8到-16/8之间的差分运动矢量分类为区域C ;并且将大小不在以上范围的差分运动矢量分类为区域D。这里描述的各个区域范围仅为说明考虑1/8分辨率的情况,本公开不限于此。当如上设置区域时,阈值编码器750对各个搜索区域的阈值进行编码,以将设置的区域通知给解码器,使用的阈值适当地以对应的最大分辨率被编码。例如,在仅使用一直到1/4像素区域的情况下,阈值编码器750在将阈值发送到解码器之前以1/4像素为单位对所述阈值进行编码。由于在上述示例中使用一直到1/8像素区域,所以阈值编码器750以1/8像素为单位处理阈值,并将所述阈值发送到解码器。根据本公开的实施方式不限于发送所述阈值的方法。如果利用以上示例重新设计了图5的码本,则获得的结果码本如图11所示。图11示出在图10的情况下对差分运动矢量进行编码的码本,所述码本通过如图4或图5中示出的指数哥伦布码来产生。指数哥伦布码是通过在第一个I出现之前一直对0的数量进行计数所获得的计数值,并且是计算在第一个I之后将有多少个比特被读取的方法。由于图4和图5的常规码本和本公开的实施方式中的图11的码本被类似地产生,所以码号和比特串之间的关系是相同的。仅由各个码号指示的差分运动矢量值是不同的。另夕卜,当用指数哥伦布码对差分运动矢量进行编码时,码号被首先分配给具有大小为小的值,并且当大小相等时,码号被首先分配给正值。该方法被编码器和解码器同样地使用。尽管本公开的实施方式示例了利用指数哥伦布码将差分运动矢量编码成比特串,但本公开不限于此,可以使用其它编码方法。可以使用图10的示例以针对差分运动矢量产生图11的码本。由于区域A支持一直到1/8分辨率,所以如图11所示运动矢量被密集地找到。另一方面,由于区域B考虑一直到1/4分辨率来查找运动矢量,所以码本中不包括与1/8分辨率相对应的3/8、5/8和7/8的运动矢量。由于在区域C中考虑一直到1/2分辨率,所以在码本中不包括与1/4分辨率和1/8分辨率相对应的点的运动矢量9/8、10/8(5/4)、11/8、13/8、14/8(7/4)和15/8。最后,由于在区域D中仅考虑1/1分辨率,所以在码本中不包括与1/2、1/4和1/8相对应的点。比较图5和图11,尽管索引号(码号)同为15,但是现有的算法指示第二整数像素8/8 (I),但根据本公开的实施方式的码本指示第四个整数像素3/1 (24/8)。随后,在区域D中,根据本公开实施方式的对差分运动矢量进行编码的方法仅索引整数像素,以使用较少的比特进行到下一整数像素。尽管前面的描述了当前块的预测运动矢量的距离越远,可用分辨率越少,但在另一实施方式中,当前块的预测运动矢量的距离越远,可用分辨率可以增加。图12是示出一示例性情况的示图:区域搜索距离距当前块的预测运动矢量越远,提供的运动矢量分辨率的数量越多,并且运动矢量分辨率变得密集。如图12所示,在区域A中可以考虑一直到1/1分辨率来估计运动矢量,在区域B中可以考虑一直到1/2分辨率来估计运动矢量,在区域C中可以考虑一直到1/4分辨率来估计运动矢量,并且在区域D中可以考虑一直到1/8分辨率来估计运动矢量。在以1/8分辨率产生差分运动矢量时,大小在-3/8到3/8范围内的差分运动矢量被分类为区域A ;大小在4/8到12/8之间和在-4/8到-12/8之间的差分运动矢量被分类为区域B ;大小在13/8到20/8之间和在-13/8到-20/8之间的差分运动矢量被分类为区域C ;大小超出以上范围的差分运动矢量被分类为区域D。当利用图12的示例产生针对不同运动矢量的码本时,可如图13所示获得结果码本。由于区域A支持一直到1/1分辨率,所以如图13所示仅在1/1分辨率位置产生运动矢量。另一方面,由于区域B考虑一直到1/2分辨率寻找运动矢量,所以码本中不包括与1/4和1/8分辨率相对应的运动矢量5/8、6/8(3/4)、7/8、9/8和11/8。由于在区域C中考虑一直到1/4分辨率,所以在码本中不包括与1/8分辨率相对应的运动矢量13/8、15/8、17/8和19/8。最后,由于在区域D中考虑一直到1/8分辨率,所以针对所有分辨率搜索运动矢量。另外,可不管距离以当前块的预测运动矢量为中心按照搜索区域任意地设置可用分辨率的类型。图14是示出不管距离以当前块的预测运动矢量为中心按照搜索区域任意地设置可用分辨率的类型的示例的示图。图15是示出在图14的情况下对差分运动矢量进行编码的码本的示例的示图。在上述示例中,可以使用按照搜索区域设置各个区域的多个阈值,并且可以存在在按所述阈值而不同的各个区域中使用的运动矢量分辨率的多种组合。在这种情况下,按照搜索区域的各个阈值在发送到解码器之前可以被阈值编码器750编码,或者可以按编码器和解码器按照搜索区域使用预先约定的阈值的方式省略阈值的发送。在发送器和接收器之间的预先约定的状态下,也可以使用与按照搜索区域按阈值而不同的各个区域中使用的运动矢量分辨率的组合有关的信息。另选地,与分辨率的组合有关的所述信息在发送之前可以在编码器中被编码。另外,除了以上描述的示例,如图16所示可以关于X轴和y轴不同地设置搜索区域。即,在X轴和y轴上使用的阈值可以彼此不同。在这种情况下,可例如如图17所示确定在X轴上按部分的运动矢量,并且可以如图18所示表示根据本公开的实施方式的对X轴的差分运动矢量编码的码本。另外,可例如如图19所示确定在y轴上按部分的运动矢量,并且可以如图20所示表示根据本公开的实施方式的对y轴的差分运动矢量编码的码本。图21是示意性示出根据本公开的一个或更多个实施方式的差分运动矢量解码设备的示图。根据实施方式的差分运动矢量解码设备2100可以包括阈值解码器2110、区域分辨率设置单兀2120和差分运动矢量解码器2130。阈值解码器2110从自编码器接收的比特流中提取各个搜索区域的阈值,并对提取出的阈值解码。这里所使用的阈值是由根据本公开的实施方式的编码设备700设置的各个搜索区域的阈值,并且以在各个区域中可用的运动矢量分辨率中的全分辨率被编码。区域分辨率设置单元2120基于由阈值解码器2110解码的各个阈值来按照搜索区域设置不同的运动矢量分辨率。即,区域分辨率设置单元2120可以基于各个解码的阈值识别在由差分运动矢量编码设备700设置的各个搜索区域中可用的运动矢量分辨率。例如,在针对图10的区域A的阈值从比特流中被提取出然后被解码的情况下,可以看到区域A的覆盖部分是-2/8到2/8。由于以作为在区域中可用的全运动识别分辨率的1/8进行编码,所以可以知道比1/8的全分辨率小的运动矢量分辨率是可用的。差分运动矢量解码器2130从比特流中提取差分运动矢量,并以与各个区域中差分运动矢量所属的区域相对应的分辨率来对差分运动矢量解码。在这种情况下,差分运动矢量解码器2130可以基于各个解码的搜索区域的阈值按比特串的次序顺序地布置差分运动矢量来产生图11的码本。在这种情况下,比特串和分配给各个比特串的索引号(码号)可以被产生为等于在差分运动矢量编码设备700中使用的比特串和分配给各个比特串的索引号。图22是示意性地示出根据本公开的另一实施方式的差分运动矢量解码设备的示图。参照图22,根据实施方式的差分运动矢量解码设备2200可以包括区域分辨率设置单元2210和差分运动矢量解码器2220。区域分辨率设置单元2210可以以与编码器预先约定的值按照搜索区域设置不同的运动矢量分辨率。例如,区域分辨率设置单元2210可以与编码器进行预先约定,以相同地设置图10中所示的各个搜索区域的部分和可用运动矢量分辨率。差分运动矢量解码器2220从比特流中提取差分运动矢量,并且以与各个区域中的差分运动矢量所属的区域相对应的分辨率来对差分运动矢量解码。图23是示出由图7的差分运动矢量编码设备执行的差分运动矢量编码方法的流程图。参照图7和图23,区域分辨率设置单元710以当前块的预测运动矢量为中心按照搜索区域设置不同的运动矢量分辨率(S2310)。为此,区域分辨率设置单元710可按照搜索区域来设置分辨率,以使运动矢量分辨率随着预测运动矢量的距离增加而降低,或者可以按照搜索区域设置分辨率,以使运动矢量分辨率随着当前块的预测运动矢量的距离增加而增加。另选地,本公开不限于此,可以根据当前块的预测运动矢量的距离来不同地设置可用的分辨率。另外,可以以当前块的预测运动矢量为中心根据多个方向将按照搜索区域而不同的运动矢量分辨率设置给不同的搜索区域。例如,可以如图24和图25所示设置搜索区域的形状。图24是示出以长方形设置搜索区域的情况的示图,而图25是示出以菱形设置搜索区域的情况的示图。如果以这种方式二维地对搜索区域编码,则可以较容易地压缩运动矢量。例如,当分辨率通过图10中提出的方法被确定然后被使用时,现有的一维的X轴和y轴已通过图11的方法被编码。然而,在二维中,如果在X轴和y轴的差分运动值中发现较大的差值,则具有小的差值的值可立即计算其自身分辨率。例如,如果X轴的差分运动矢量在区域B中并且y轴的差分运动矢量在区域A中,则当前以X轴的差分运动值编码的差分运动矢量已经考虑一直到1/4的运动。因此,针对y轴可以使用考虑一直到1/4的码本,而不使用考虑一直到1/8的码本。此外,根据本发明的实施方式的差分运动矢量可以按各种方法设置搜索区域,并且对设置搜索区域的方法没有限制。区域分辨率设置单元710可以通过利用当前图像和参考图像来计算各个搜素区域的阈值。本公开的实施方式不限制用于计算阈值的方法,并且可以利用所确定的搜索区域的阈值来产生用于对差分运动矢量进行编码的表(码本)。阈值编码器750以对应区域的全分辨率对各个搜索区域的阈值编码,并且将比特流发送到解码器(S2320)。在这种情况下,当必须发送阈值时,阈值编码器750对阈值编码,并且如图26所示,在发送之前将编码的阈值插在片头和编码单位块之间。编码的阈值被解码器解码,并且用于对当前帧解码。图26示出根据本公开的实施方式的差分运动矢量编码方法中的在发送之前将阈值添加到片头的方法。如图26所示,在片头之后的上述阈值被编码并且被发送。
代替通过阈值编码器750将各个搜索区域通知给解码器,区域分辨率设置单元710可以被配置为将与解码器预先约定的表示区域范围的阈值设置为搜索区域而不同的运动矢量分辨率。在这种情况下,可以省略阈值的编码。运动估计单元720通过以与区域分辨率设置单元710所设置的各个搜索区域相对应的分辨率执行运动估计来产生运动矢量(S2330)。差分运动矢量计算器730计算由运动估计单元720所产生的运动矢量和预测运动矢量之间的差分运动矢量(S2340)。差分运动矢量编码器740以与运动估计单元720所产生的运动矢量相对应的分辨率对由差分运动矢量计算器730计算出的差分运动矢量编码(S2350)。图27是示出由图21所示的差分运动矢量解码设备执行的差分运动矢量解码方法的流程图。参照图21和图27,阈值解码器2110从自编码器接收的比特流中提取按照搜索区域的阈值,并对提取出的阈值解码(S2710 )。区域分辨率设置单元2120基于由阈值解码器2110解码的各个阈值对搜索区域设置不同的运动矢量分辨率(S2720)。即,区域分辨率设置单元2120可以基于各个解码的阈值识别在由差分运动矢量编码设备700设置的各个搜索区域中可用的运动识别分辨率。差分运动矢量解码器2130从比特流中提取差分运动矢量,并以与各个区域中差分运动矢量所属的区域相对应的分辨率来对差分运动矢量解码(S2730)。在这种情况下,差分运动矢量解码器2130可以基于各个解码的搜索区域的阈值按比特串的次序顺序地布置差分运动矢量来产生图11的码本。在这种情况下,比特串和分配给各个比特串的索引号(码号)可以被产生为等于在差分运动矢量编码设备700中使用的比特串和分配给各个比特串的索引号。图28是示出由图22的差分运动矢量解码设备执行的差分运动矢量解码方法的流程图。参照图22和图28,区域分辨率设置单元2210可以以与编码器预先约定的值按照搜索区域设置不同的运动矢量分辨率(S2810)。例如,区域分辨率设置单元2210可以与编码器进行预先约定,以相同地设置各个搜索区域的部分和图10中所示的可用运动矢量分辨率。差分运动矢量解码器2220从比特流中提取差分运动矢量,并且以与各个区域中的差分运动矢量所属的区域相对应的分辨率来对差分运动矢量解码(S2820)。接着,在利用多个参考图像压缩和解码视频的情况下,将描述使用阈值的方法。为了对当前图像解码,从片头中读取信息,读取阈值,并且读取编码单位块的数据。在这种情况下,针对各个参考图像使用解码的阈值,以通过运动压缩对当前帧解码。图29是示出所有当前编码的阈值在所有参考帧中被相等地使用的情况的示例的示图。图30示出当使用多个参考图像时,根据参考图像的特性使用不同的阈值的另一示例。在以上描述在,尽管本公开的实施方式的所有部件可以被解释为装配或可操作地连接为一个单元,但普通技术人员将理解,本公开不限于这些实施方式。在本公开的客观范围的一些实施方式内,各个部件而是被可选择地以及可操作地以多种方式组合。每一个部件能够单独以硬件实现,或者部分或整体被组合,并且用具有执行硬件等同物的功能的程序模块的计算机程序被实现。本领域技术人员理解构成这种程序的代码或代码段。计算机程序存储在非瞬态计算机可读介质,在操作中所述非瞬态计算机可读介质实现本公开的实施方式。在一些实施方式中,计算机可读介质包括磁性记录介质、光学记录介质或者载波介质。另外,普通技术人员将理解,诸如“包括”、“包含”和“具有”的术语默认被解释为包含性或开放式的,而不是排外或封闭式的,除非特别限定为相反。所有技术、科技或其它的术语的含义如本领域技术人员所理解的那样,除非被限定为相反。普通技术人员将理解在字典中所找到的普通术语在相关技术作品的上下文中被解释,而不是过于理想或不切实际地被解释,除非本公开特别地这样限定这些术语。尽管为了说明性的目的已经描述了本公开的示例性实施方式,但本领域技术人员将理解,在不脱离本公开的本质特征的情况下,可以进行各种修改、添加和替换。因此,为了简要和清晰起见描述了本公开的示例性实施方式。因此,普通技术人员将理解,本公开的范围不由以上描述的实施方式限定,而是由权利要求及其等同物限定。工业可应用性如上所述,本公开在视频编码和解码领域是非常有用的,这是因为通过以按照搜索区域而不同的分辨率来预测运动矢量,并且以相应的分辨率对差分运动矢量进行自适应地编码/解码,本公开在使用可变长度码本的情况下可提高压缩效率和重构效率。相关申请的交叉引用

如果可申请,则本申请依据35U.S.C § 119(a)要求在2010年10月18日提交的韩国专利申请N0.10-2010-0101439的优先权,其全部内容以引证的方式并入。另外,基于相同的理由,基于该韩国专利申请要求在美国以外的国家要求非临时专利申请优先权,其全部内容以引证的方式并入。
权利要求
1.一种视频编码/解码设备,该视频编码/解码设备包括: 视频编码器,其以当前块的预测运动矢量为中心按照搜索区域设置不同的运动矢量分辨率,以所述搜索区域中的各个搜索区域相对应的分辨率估计出运动并产生运动矢量,并且将所产生的运动矢量和所述预测运动矢量之间的差分运动矢量用所述运动矢量相对应的分辨率进行编码;以及 视频解码器,其从比特流中提取所述差分运动矢量,并且以与所述搜索区域中所述差分运动矢量所属的区域相对应的分辨率对提取出的差分运动矢量进行解码。
2.一种差分运动矢量编码设备,该差分运动矢量编码设备包括: 区域分辨率设置单元,其以当前块的预测运动矢量为中心按照搜索区域设置不同的运动矢量分辨率; 运动估计单元,其通过以与所述搜索区域中的各个搜索区域相对应的分辨率执行运动估计来产生运动矢量; 差分运动矢量计算器,其计算所产生的运动矢量和所述预测运动矢量之间的差分运动矢量;以及 差分运动矢量编码器,其以与所产生的运动矢量相对应的分辨率对计算出的差分运动矢量进行编码。
3.根据权利要求2所述的差分运动矢量编码设备,该差分运动矢量编码设备还包括:阈值编码器,其以对应区域的最大分辨率对所述各个搜索区域的阈值进行编码,并且将比特流发送到解码器。
4.根据权利要求2所述的差分运动矢量编码设备,其中,所述区域分辨率设置单元将与解码器预先约定的值设置为所述搜索区域而不同的所述运动矢量分辨率。
5.根据权利要求2所述的差分运动矢量编码设备,其中,所述区域分辨率设置单元按照所述搜索区域设置所述分辨率,以使所述运动矢量分辨率随着所述当前块的所述预测运动矢量的距离增加而降低。
6.根据权利要求2所述的差分运动矢量编码设备,其中,所述区域分辨率设置单元按照所述搜索区域设置所述分辨率,以使所述运动矢量分辨率随着所述当前块的所述预测运动矢量的距离增加而增加。
7.根据权利要求2所述的差分运动矢量编码设备,其中,所述区域分辨率设置单元根据所述当前块的预测运动矢量为中心沿着X轴和y轴设置所述各个搜索区域区间并对所述搜索区域设置不同的运动矢量分辨率。
8.一种差分运动矢量解码设备,该差分运动矢量解码设备包括: 阈值解码器,其从自编码器接收到的比特流中提取以针对各个搜索区域的最大分辨率所编码的阈值,并对提取出的阈值进行解码; 区域分辨率设置单元,其基于各个解码的阈值对所述搜索区域设置不同运动矢量分辨率;以及 差分运动矢量解码器,其从所述比特流中提取差分运动矢量,并且以与所述搜索区域中的所述差分运动矢量所属的区域相对应的分辨率来对提取出的差分运动矢量进行解码。
9.一种差分运动矢量解码设备,该差分运动矢量解码设备包括: 区域分辨率设置单元,其以与编码器预先约定的阈值来划分搜索区域,并且按照搜索区域设置不同的运动矢量分辨率;以及 解码器,其从比特流中提取差分运动矢量,并且以与所述搜索区域中的所述差分运动矢量所属的区域相对应的分辨率来对提取出的差分运动矢量进行解码。
10.一种视频编码/解码方法,该视频编码/解码方法包括以下步骤: 以当前块的预测运动矢量为中心按照搜索区域设置不同的运动矢量分辨率,以与所述搜索区域中的各个搜索区域相对应的分辨率估计运动并产生运动矢量,并且将所产生的运动矢量和所述预测运动矢量之间的差分运动矢量用所述运动矢量相对应的分辨率进行编码;以及 从比特流中提取所述差分运动矢量,并且以与所述搜索区域中所述差分运动矢量所属的区域相对应的分辨率对提取出的差分运动矢量进行解码。
11.一种差分运动矢量编码方法,该差分运动矢量编码方法包括以下步骤: 设置步骤,其以当前块的预测运动矢量为中心按照搜索区域设置不同的运动矢量分辨率; 以与所述搜索区域中的各个搜索区域相对应的分辨率执行运动估计以产生运动矢量; 计算所产生的运动矢量和所述预测运动矢量之间的差分运动矢量;以及 以与所产生的运动矢量相对应的分辨率对计算出的差分运动矢量进行编码。
12.根据权利要求11所述的差分运动矢量编码方法,该差分运动矢量编码方法还包括以下步骤:以对应区域的最大分辨率对所述各个搜索区域的阈值进行编码,并且将比特流发送到解码器。
13.根据权利要求11所述的差分运动矢量编码方法,其中,所述设置步骤将按照所述搜索区域设置不同的所述运动矢量分辨率为与解码器预先约定的值。
14.根据权利要求11所述的差分运动矢量编码方法,其中,所述设置步骤按照所述搜索区域设置分辨率,以使所述运动矢量分辨率随着所述当前块的所述预测运动矢量的距离增加而降低。
15.根据权利要求11所述的差分运动矢量编码方法,其中,所述设置步骤按照所述搜索区域设置分辨率,以使所述运动矢量分辨率随着所述当前块的所述预测运动矢量的距离增加而增加。
16.根据权利要求11所述的差分运动矢量编码方法,其中,根据所述当前块的预测运动矢量为中心沿着X轴和y轴设置所述各个搜索区域区间并对所述搜索区域设置不同的运动矢量分辨率。
17.一种差分运动矢量解码方法,该差分运动矢量解码方法包括以下步骤: 从自编码器接收到的比特流中提取以针对各个搜索区域的最大分辨率编码的阈值,并对提取出的阈值进行解码; 基于各个解码的阈值按照所述搜索区域设置不同的运动矢量分辨率;以及从所述比特流中提取 差分运动矢量,并且以与所述搜索区域中的所述差分运动矢量所属的区域相对应的分辨率来对提取出的差分运动矢量进行解码。
18.一种差分运动矢量解码方法,该差分运动矢量解码方法包括以下步骤: 以与编码器预先约定的阈值来划分搜索区域,并且按照所述搜索区域设置不同的运动矢量分辨率;以及 从比特流中提取差分运动矢量,并且以与所述搜索区域中的所述差分运动矢量所属的区域相对应的分辨率 来对提取出的差分运动矢量进行解码。
全文摘要
公开了一种用于对差分运动矢量编码/解码的设备和方法以及使用所述用于对差分运动矢量编码/解码的设备和方法对视频编码/解码的设备和方法。根据本发明的一个实施方式的差分运动矢量编码设备包括用于设置各个区域的分辨率的单元,其根据当前块的运动矢量按照各个搜索区域设置差分运动矢量的分辨率;运动估计单元,其通过与各个搜素区域相对应的分辨率来估计运动,以产生运动矢量;差分运动矢量计算单元,其计算所产生的运动矢量和预测运动矢量之间的差分运动矢量;以及差分运动矢量编码单元,其将计算出的差分运动矢量编码成与所产生的运动矢量相对应的分辨率。
文档编号H04N7/26GK103155560SQ201180049929
公开日2013年6月12日 申请日期2011年10月18日 优先权日2010年10月18日
发明者宋振翰, 林晶娟, 韩钟基, 李英烈, 文柱禧, 金海光, 全炳宇, 张明勋 申请人:Sk电信有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1