用于视频译码的自适应运动向量分辨率信令的制作方法

文档序号:7885942阅读:230来源:国知局
专利名称:用于视频译码的自适应运动向量分辨率信令的制作方法
技术领域
本发明涉及视频译码,且更明确地说,涉及帧间预测视频译码。
背景技术
数字视频能力可并入到较宽范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌上型计算机、数字相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、视频电话会议装置等。数字视频装置实施视频压缩技术,例如由MPEG-2、MPEG-4、ITU-T H.263或ITU-T H.264/MPEG-4第10部分高级视频译码(AVC)界定的标准和所述标准的扩展部分中所描述的那些视频压缩技术,以更有效地发射和接收数字视频信息。视频压缩技术执行空间预测和/或时间预测以减少或去除视频序列中固有的冗余。对于基于块的视频译码,可将一视频帧或切片分割成若干宏块。可进一步分割每一宏块。使用相对于相邻宏块的空间预测来对经帧内译码(I)帧或切片中的宏块进行编码。经帧间译码(P或B)帧或切片中的宏块可使用相对于同一帧或切片中的相邻宏块的空间预测或相对于其它参考帧的时间预测。

发明内容
一般来说,本发明描述用于支持视频译码期间的自适应运动向量分辨率(例如用于运动估计和运动补偿的自适应运动向量分辨率选择)的技术。举例来说,视频编码器可经配置以在编码视频数据块时为运动向量选择子整数像素精度的不同等级,例如八分之一像素精度或四分之一像素精度。就是说,基于所述选择,由视频编码器产生的块的运动向量可具有八分之一像素精度或四分之一像素精度。所述视频编码器可使用本发明的技术用信号通知针对运动向量的八分之一像素精度或四分之一像素精度的选择。举例来说,视频编码器可使用上下文自适应二进制算术译码(CABAC)来对表示运动向量具有四分之一像素精度还是八分之一像素精度的值进行熵编码。为了对所述值进行熵编码,所述视频编码器可基于与视频数据块的大小有关的上下文来选择概率模型。可基于译码单元的深度、译码单元的预测单元的大小和/或预测单元的类型中的任一者或全部来确定上下文,其中所述类型可相对于译码单元的大小指定预测单元的形状。视频编码器可进一步经配置以基于运动向量的子整数像素精度(例如四分之一或八分之一像素精度)使用各种方案来对运动向量本身进行熵编码。当视频编码器计算具有八分之一像素精度的译码单元的亮度数据的运动向量时,视频编码器还可经配置以使用双线性内插来计算译码单元的色度数据的十六分之一像素位置的值。在一个实例中,一种编码视频数据的方法包含:使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量来编码视频数据的译码单元的预测单元;确定用于使用上下文自适应二进制算术译码来编码运动向量是具有所述第一子像素精度还是所述第二子像素精度的指示的上下文,其中所述上下文包括所述译码单元的深度、所述预测单元的大小以及所述预测单元的类型中的至少一者;以及根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵编码。在另一实例中,一种编码视频数据的方法包含:使用针对亮度数据具有八分之一像素精度的运动向量来编码视频数据的译码单元的亮度数据;使用双线性内插来计算由运动向量识别的参考块的色度数据的十六分之一像素位置的值;以及基于参考块的经双线性内插的值对译码单元的色度数据进行编码。在另一实例中,一种编码视频数据的方法包含:在编码视频数据的第一预测单元时计算第一运动向量差值,所述第一运动向量差值具有第一子像素精度;使用第一运动向量差编码方案来编码第一运动向量差值,其中第一运动向量差编码方案与第一子像素精度相关联;在编码视频数据的第二预测单元时计算第二运动向量差值,所述第二运动向量具有第二不同子像素精度;以及使用第二运动向量差编码方案来编码所述第二运动向量差值,其中所述第二运动向量差编码方案与第二子像素精度相关联。在另一实例中,一种用于编码视频数据的设备包含视频编码器,其经配置以:使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量来编码视频数据的译码单元的预测单元;确定用于使用上下文自适应二进制算术译码来编码运动向量是具有所述第一子像素精度还是所述第二子像素精度的指示的上下文,其中所述上下文包括所述译码单元的深度、所述预测单元的大小以及所述预测单元的类型中的至少一者;以及根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵编码。在另一实例中,一种用于编码视频数据的设备包含:用于使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量来编码视频数据的译码单元的预测单元的装置;用于确定用于使用上下文自适应二进制算术译码来编码运动向量是具有所述第一子像素精度还是所述第二子像素精度的指示的上下文的装置,其中所述上下文包括所述译码单元的深度、所述预测单元的大小以及所述预测单元的类型中的至少一者;以及用于根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵编码的装置。在另一实例中,一种计算机程序产品包含上面存储有指令的计算机可读存储媒体,所述指令在被执行时致使用于编码视频数据的装置的处理器:使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量来编码视频数据的译码单元的预测单元;确定用于使用上下文自适应二进制算术译码来编码运动向量是具有所述第一子像素精度还是所述第二子像素精度的指示的上下文,其中所述上下文包括所述译码单元的深度、所述预测单元的大小以及所述预测单元的类型中的至少一者;以及根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵编码。在另一实例中,一种解码视频数据的方法包含:接收曾使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量编码的视频数据的译码单元的经编码预测单元;接收所述运动向量是具有所述第一子像素精度还是所述第二子像素精度的经上下文自适应二进制算术译码的指示;确定用于解码所述指示的上下文,其中所述上下文包括所述译码单元的深度、所述预测单元的大小以及所述预测单元的类型中的至少一者;且根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵解码。在另一实例中,一种解码视频数据的方法包含:接收针对视频数据的译码单元的亮度数据具有八分之一像素精度的运动向量;使用双线性内插来计算由运动向量识别的参考块的色度数据的十六分之一像素位置的值;以及基于参考块的经双线性内插的值对译码单元的色度数据进行解码。在另一实例中,一种解码视频数据的方法包含:接收视频数据的第一预测单元的第一运动向量差值,所述第一运动向量差值具有第一子像素精度;使用第一运动向量差编码方案来解码第一运动向量差值,其中第一运动向量差解码方案与第一子像素精度相关联;接收视频数据的第二预测单元的第二运动向量差值,所述第二运动向量差值具有第二不同子像素精度;以及使用第二运动向量差解码方案来解码所述第二运动向量差值,其中所述第二运动向量差解码方案与第二子像素精度相关联。在另一实例中,一种用于解码视频数据的设备包含视频解码器,所述视频解码器经配置以:接收曾使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量编码的视频数据的译码单元的经编码预测单元;接收所述运动向量是具有所述第一子像素精度还是所述第二子像素精度的经上下文自适应二进制算术译码的指示;确定用于解码所述指示的上下文,其中所述上下文包括所述译码单元的深度、所述预测单元的大小以及所述预测单元的类型中的至少一者;且根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵解码。在另一实例中,一种用于解码视频数据的设备包含:用于接收曾使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量编码的视频数据的译码单元的经编码预测单元的装置;用于接收所述运动向量是具有所述第一子像素精度还是所述第二子像素精度的经上下文自适应二进制算术译码的指示的装置;用于确定用于解码所述指示的上下文的装置,其中所述上下文包括所述译码单元的深度、所述预测单元的大小以及所述预测单元的类型中的至少一者;以及用于根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵解码的装置。在另一实例中,一种计算机程序产品包含上面存储有指令的计算机可读存储媒体,所述指令在被执行时致使用于解码视频数据的装置的处理器:接收曾使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量编码的视频数据的译码单元的经编码预测单元;接收所述运动向量是具有所述第一子像素精度还是所述第二子像素精度的经上下文自适应二进制算术译码的指示;确定用于解码所述指示的上下文,其中所述上下文包括所述译码单元的深度、所述预测单元的大小以及所述预测单元的类型中的至少一者;且根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵解码。


图1是说明可利用本发明的技术来支持自适应运动向量分辨率的实例视频编码和解码系统的框图。图2是说明可实施用于支持自适应运动向量分辨率的技术的视频编码器的实例的框图。图3是说明对经编码视频序列进行解码的视频解码器的实例的框图。图4是说明全像素位置的分数像素位置的概念图。图5A到5C是说明对应的色度和亮度像素位置的概念图。图6是说明用于根据本发明的技术对视频数据进行编码的实例方法的流程图。
图7是说明用于对运动向量的子整数像素精度的指示进行熵编码的实例方法的流程图。图8是说明用于在运动向量对于对应亮度数据具有八分之一像素精度时计算色度数据的十六分之一像素位置的值的实例方法的流程图。图9是说明用于使用基于运动向量的子像素精度的熵译码方案对运动向量的运动向量差值进行熵编码的实例方法的流程图。图10是说明用于根据本发明的技术对视频数据进行解码的实例方法的流程图。
具体实施例方式一般来说,本发明描述用于自适应地为用以编码视频数据块的运动向量选择运动向量精度且用信号通知为所述运动向量选择的运动向量精度的技术。所述技术可包含在子整数像素精度(有时称为分数像素精度)的不同等级之间自适应地选择。举例来说,所述技术可包含针对用以编码视频数据块的运动向量在四分之一像素精度与八分之一像素精度之间自适应地选择。本发明中的术语“八分之一像素”精度意在指代像素的八分之一(1/8)的精度,例如以下各项中的一者:全像素位置(0/8)、像素的八分之一(1/8)、像素的八分之二(2/8,也是像素的四分之一)、像素的八分之三(3/8)、像素的八分之四(4/8,也是像素的一半以及像素的四分之二)、像素的八分之五(5/8)、像素的八分之六(6/8,也是像素的四分之三),或像素的八分之七(7/8)。常规的H.264编码器和解码器支持具有四分之一像素精度的运动向量。在一些例子中,八分之一像素精度可提供优于四分之一像素精度的某些优点。然而,将每个运动向量编码到八分之一像素精度可能需要过多的译码位,其可超过八分之一像素精度运动向量的益处。本发明的技术包含在适当时使用八分之一像素精度运动向量,否则使用四分之一像素精度运动向量,以及用信号通知运动向量是具有八分之一像素精度还是四分之一像素精度,使得解码器可确定编码器针对特定块所使用的精度。为了避免将全位添加到用于每一运动向量的位流,作为指示运动向量是具有(例如)四分之一还是八分之一像素精度的旗标,本发明提出使用二进制算术译码方案(例如,上下文自适应二进制算术译码(CABAC))来编码运动向量的子像素精度的指示。CABAC提供用于基于使用上下文信息(例如,附近元素)来优化概率估计的概率模型来编码分数信息位的技术。根据本发明的技术,用于编码用于视频数据块(例如译码单元的预测单元)的运动向量的子像素精度的指示的上下文可对应于所述块的大小信息。可从一个或一个以上来源得出用于译码单元的预测单元(PU)的大小信息。根据高效视频译码(HEVC),视频数据图片包含多个最大译码单元(LCU),其在概念上类似于ITU-ΤΗ.264/AVC中的宏块。可将IXU分割为四个子⑶(子译码单元),其各自还可进一步分割为四个子CU。假定CU具有2Nx2N像素的大小,可将CU分割为若干子CU,其各自具有NxN像素的大小,且使得子⑶不重叠。⑶的一个属性是⑶的“深度”,其大体上对应于到达当前CU所进行的分割次数。举例来说,假定LCU具有2Nx2N的大小,且当前CU (包括LCU的子CU)具有N/4的大小,则当前CU的深度将为3。以此方式,可根据以下公式来确定译码单元的深度:
权利要求
1.一种编码视频数据的方法,所述方法包括: 使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量来编码视频数据的译码单元的预测单元; 确定用于使用上下文自适应二进制算术译码来编码所述运动向量是具有所述第一子像素精度还是所述第二子像素精度的指示的上下文,其中所述上下文包括所述译码单元的深度、所述预测单元的大小和所述预测单元的类型中的至少一者;以及 根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵编码。
2.根据权利要求1所述的方法,其中所述第一子像素精度包括四分之一像素精度,且其中所述第二子像素精度包括八分之一像素精度。
3.根据权利要求1所述的方法,其中所述译码单元具有2Nx2N像素的大小,且其中所述预测单元的所述类型对应于具有2Nx2N像素、2NxN像素、Nx2N像素和NxN像素中的一者的大小的所述预测单元,其中N为大于零的整数值。
4.根据权利要求1所述的方法,其中编码所述预测单元包括计算所述译码单元的亮度数据的所述运动向量,所述亮度数据对应于所述预测单元,且其中所述运动向量针对所述亮度数据具有八分之一像素精度,所述方法进一步包括: 使用双线性内插来计算由所述运动向量识别的参考块的色度数据的十六分之一像素位置的值;以及 基于所述参考块的所述经双线性内插值来编码所述译码单元的色度数据。
5.根据权利要求1所述的方法,其中所述预测单元包括第一预测单元,所述方法进一步包括:` 当编码所述第一预测单元时计算第一运动向量差值,所述第一运动向量差值具有所述第一子像素精度; 使用第一运动向量差编码方案来编码所述第一运动向量差值,其中所述第一运动向量差编码方案与所述第一子像素精度相关联; 当编码所述视频数据的第二预测单元时计算第二运动向量差值,所述第二运动向量差值具有所述第二子像素精度;以及 使用第二运动向量差编码方案来编码所述第二运动向量差值,其中所述第二运动向量差编码方案与所述第二子像素精度相关联。
6.根据权利要求5所述的方法, 其中使用所述第一运动向量差编码方案来编码所述第一运动向量差值包括: 将所述第一运动向量差值与由所述第一编码方案界定的第一阈值进行比较; 当所述第一运动向量差值小于所述第一阈值时,使用第一一元码字来编码所述第一运动向量差值;以及 当所述第一运动向量差值大于或等于所述第一阈值时,使用第一哥伦布码字来编码所述第一运动向量差值,且 其中使用所述第二运动向量差编码方案来编码所述第二运动向量差值包括: 将所述第二运动向量差值与由所述第二编码方案界定的第二阈值进行比较; 当所述第二运动向量差值小于所述第二阈值时,使用第二一元码字来编码所述第二运动向量差值;以及当所述第二运动向量差值大于或等于所述第二阈值时,使用第二哥伦布码字来编码所述第二运动向量差值。
7.根据权利要求5所述的方法,其中所述第一运动向量差编码方案与四分之一像素精度相关联,且其中所述第二运动向量差编码方案与八分之一像素精度相关联。
8.根据权利要求5所述的方法, 其中使用所述第一运动向量差编码方案来编码所述第一运动向量差值包括选择第一上下文模型来使用以对所述第一运动向量差值进行熵编码,其中所述第一上下文模型与所述第一子像素精度相关联,且 其中使用所述第二运动向量差编码方案来编码所述第二运动向量差值包括选择第二上下文模型来使用以对所述第二运动向量差值进行熵编码,其中所述第二上下文模型与所述第二子像素精度相关联。
9.一种编码视频数据的方法,所述方法包括: 使用针对视频数据的译码单元的亮度数据具有八分之一像素精度的运动向量来编码所述亮度数据; 使用双线性内插来计算由所述运动向量识别的参考块的色度数据的十六分之一像素位置的值;以及 基于所述参考块的所述经双线性内插值来编码所述译码单元的色度数据。
10.一种编码视频数据的方法,所述方法包括: 当编码视频数据的第一预测单元时计算第一运动向量差值,所述第一运动向量差值具有第一子像素精度; 使用第一运动向量差编码方案来编码所述第一运动向量差值,其中所述第一运动向量差编码方案与所述第一子像素精度相关联; 当编码所述视频数据的第二预测单元时计算第二运动向量差值,所述第二运动向量差值具有第二不同子像素精度;以及 使用第二运动向量差编码方案来编码所述第二运动向量差值,其中所述第二运动向量差编码方案与所述第二子像素精度相关联。
11.一种用于编码视频数据的设备,所述设备包括视频编码器,所述视频编码器经配置以:使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量来编码视频数据的译码单元的预测单元;确定用于使用上下文自适应二进制算术译码来编码所述运动向量是具有所述第一子像素精度还是所述第二子像素精度的指示的上下文,其中所述上下文包括所述译码单元的深度、所述预测单元的大小以及所述预测单元的类型中的至少一者;以及根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵编码。
12.根据权利要求11所述的设备,其中所述视频编码器经配置以计算所述译码单元的亮度数据的所述运动向量,所述亮度数据对应于所述预测单元,且其中所述运动向量针对所述亮度数据具有八分之一像素精度,且其中所述视频编码器经配置以使用双线性内插来计算由所述运动向量识别的参考块的色度数据的十六分之一像素位置的值,且基于所述参考块的所述经双线性内插值来编码所述译码单元的色度数据。
13.根据权利要求11所述的设备,其中所述预测单元包括第一预测单元,且其中所述视频编码器经配置以:在编码所述第一预测单元时计算第一运动向量差值,所述第一运动向量差值具有所述第一子像素精度;使用第一运动向量差编码方案来编码所述第一运动向量差值,其中所述第一运动向量差编码方案与所述第一子像素精度相关联;当编码所述视频数据的第二预测单元时计算第二运动向量差值,所述第二运动向量差值具有所述第二子像素精度;且使用第二运动向量差编码方案来编码所述第二运动向量差值,其中所述第二运动向量差编码方案与所述第二子像素精度相关联。
14.根据权利要求13所述的设备,其中为了使用所述第一运动向量差编码方案来编码所述第一运动向量差值,所述视频编码器经配置以:将所述第一运动向量差值与由所述第一编码方案界定的第一阈值进行比较;当所述第一运动向量差值小于所述第一阈值时,使用第一一元码字来编码所述第一运动向量差值;且当所述第一运动向量差值大于或等于所述第一阈值时,使用第一哥伦布码字来编码所述第一运动向量差值,且其中为了使用所述第二运动向量差编码方案来编码所述第二运动向量差值,所述视频编码器经配置以:将所述第二运动向量差值与由所述第二编码方案界定的第二阈值进行比较;当所述第二运动向量差值小于所述第二阈值时,使用第二一元码字来编码所述第二运动向量差值;且当所述第二运动向量差值大于或等于所述第二阈值时,使用第二哥伦布码字来编码所述第二运动向量差值。
15.根据权利要求13所述的设备,其中所述第一运动向量差编码方案与四分之一像素精度相关联,且其中所述第二运动向量差编码方案与八分之一像素精度相关联。
16.根据权利要求13所述的设备,其中为了使用所述第一运动向量差编码方案来编码所述第一运动向量差值,所述视频编码器经配置以选择第一上下文模型来使用以对所述第一运动向量差值进行熵编码,其中所述第一上下文模型与所述第一子像素精度相关联,且其中为了使用所述第二运动向量差编码方案来编码所述第二运动向量差值,所述视频编码器经配置以选择第二上下文模型来使用以对所述第二运动向量差值进行熵编码,其中所述第二上下文模型与所述第二子像素精度相关联。
17.根据权利要求11所述的设备,其中所述设备包括以下各项中的至少一者: 集成电路;` 微处理器;以及 无线通信装置,其包含所述视频编码器。
18.一种用于编码视频数据的设备,所述设备包括: 用于使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量来编码视频数据的译码单元的预测单元的装置; 用于确定用于使用上下文自适应二进制算术译码来编码所述运动向量是具有所述第一子像素精度还是所述第二子像素精度的指示的上下文的装置,其中所述上下文包括所述译码单元的深度、所述预测单元的大小和所述预测单元的类型中的至少一者;以及 用于根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵编码的装置。
19.根据权利要求18所述的设备,其中所述用于编码所述预测单元的装置包括用于计算所述译码单元的亮度数据的所述运动向量的装置,所述亮度数据对应于所述预测单元,且其中所述运动向量针对所述亮度数据具有八分之一像素精度,所述设备进一步包括: 用于使用双线性内插来计算由所述运动向量识别的参考块的色度数据的十六分之一像素位置的值的装置;以及 用于基于所述参考块的所述经双线性内插值来编码所述译码单元的色度数据的装置。
20.根据权利要求18所述的设备,其中所述预测单元包括第一预测单元,所述设备进一步包括: 用于在编码所述第一预测单元时计算第一运动向量差值的装置,所述第一运动向量差值具有所述第一子像素精度; 用于使用第一运动向量差编码方案来编码所述第一运动向量差值的装置,其中所述第一运动向量差编码方案与所述第一子像素精度相关联; 用于在编码所述视频数据的第二预测单元时计算第二运动向量差值的装置,所述第二运动向量差值具有所述第二子像素精度;以及 用于使用第二运动向量差编码方案来编码所述第二运动向量差值的装置,其中所述第二运动向量差编码方案与所述第二子像素精度相关联。
21.根据权利要求20所述的设备, 其中所述用于使用所述第一运动向量差编码方案来编码所述第一运动向量差值的装置包括: 用于将所述第一运动向量差值与由所述第一编码方案界定的第一阈值进行比较的装置; 用于在所述第一运动向量差值小于所述第一阈值时使用第兀码字来编码所述第一运动向量差值的装置;以及` 用于在所述第一运动向量差值大于或等于所述第一阈值时使用第一哥伦布码字来编码所述第一运动向量差值的装置,且 其中所述用于使用所述第二运动向量差编码方案来编码所述第二运动向量差值的装置包括: 用于将所述第二运动向量差值与由所述第二编码方案界定的第二阈值进行比较的装置; 用于在所述第二运动向量差值小于所述第二阈值时使用第二一元码字来编码所述第二运动向量差值的装置;以及 用于在所述第二运动向量差值大于或等于所述第二阈值时使用第二哥伦布码字来编码所述第二运动向量差值的装置。
22.根据权利要求20所述的设备, 其中所述用于使用所述第一运动向量差编码方案来编码所述第一运动向量差值的装置包括用于选择第一上下文模型来使用以对所述第一运动向量差值进行熵编码的装置,其中所述第一上下文模型与所述第一子像素精度相关联,且 其中所述用于使用所述第二运动向量差编码方案来编码所述第二运动向量差值的装置包括用于选择第二上下文模型来使用以对所述第二运动向量差值进行熵编码的装置,其中所述第二上下文模型与所述第二子像素精度相关联。
23.一种包括上面存储有指令的计算机可读存储媒体的计算机程序产品,所述指令在被执行时致使用于编码视频数据的装置的处理器: 使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量来编码视频数据的译码单元的预测单元; 确定用于使用上下文自适应二进制算术译码来编码所述运动向量是具有所述第一子像素精度还是所述第二子像素精度的指示的上下文,其中所述上下文包括所述译码单元的深度、所述预测单元的大小和所述预测单元的类型中的至少一者;以及 根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵编码。
24.根据权利要求23所述的计算机程序产品,其中所述致使所述处理器编码所述预测单元的指令包括致使所述处理器计算所述译码单元的亮度数据的所述运动向量的指令,所述亮度数据对应于所述预测单元,且其中所述运动向量针对所述亮度数据具有八分之一像素精度,所述计算机程序产品进一步包括致使所述处理器进行以下动作的指令: 使用双线性内插来计算由所述运动向量识别的参考块的色度数据的十六分之一像素位置的值;以及 基于所述参考块的所述经双线性内插值来编码所述译码单元的色度数据。
25.根据权利要求23所述的计算机程序产品,其中所述预测单元包括第一预测单元,所述计算机程序产品进一步包括致使所述处理器进行以下动作的指令: 当编码所述第一预测单元时计算第一运动向量差值,所述第一运动向量差值具有所述第一子像素精度; 使用第一运动向量差编码方案来编码所述第一运动向量差值,其中所述第一运动向量差编码方案与所述第一子像素精度相关联; 当编码所述视频数据的第二预测单元时计算第二运动向量差值,所述第二运动向量差值具有所述第二子像素精度;以及 使用第二运动向量差编码方案来编码所述第二运动向量差值,其中所述第二运动向量差编码方案与所述第二子像素精度相关联。
26.根据权利要求25所述的计算机程序产品, 其中所述致使所述处理器使用所述第一运动向量差编码方案来编码所述第一运动向量差值的指令包括致使所述处理器进行以下动作的指令: 将所述第一运动向量差值与由所述第一编码方案界定的第一阈值进行比较; 当所述第一运动向量差值小于所述第一阈值时,使用第一一元码字来编码所述第一运动向量差值;以及 当所述第一运动向量差值大于或等于所述第一阈值时,使用第一哥伦布码字来编码所述第一运动向量差值,且 其中所述致使所述处理器使用所述第二运动向量差编码方案来编码所述第二运动向量差值的指令包括致使所述处理器进行以下动作的指令: 将所述第二运动向量差值与由所述第二编码方案界定的第二阈值进行比较; 当所述第二运动向量差值小于所述第二阈值时,使用第二一元码字来编码所述第二运动向量差值;以及 当所述第二运动向量差值大于或等于所述第二阈值时,使用第二哥伦布码字来编码所述第二运动向量差值。
27.根据权利要求25所述的计算机程序产品, 其中所述致使所述处理器使用所述第一运动向量差编码方案来编码所述第一运动向量差值的指令包括致使所述处理器选择第一上下文模型来使用以对所述第一运动向量差值进行熵编码的指令,其中所述第一上下文模型与所述第一子像素精度相关联,且 其中所述致使所述处理器使用所述第二运动向量差编码方案来编码所述第二运动向量差值的指令包括致使所述处理器选择第二上下文模型来使用以对所述第二运动向量差值进行熵编码的指令,其中所述第二上下文模型与所述第二子像素精度相关联。
28.一种解码视频数据的方法,所述方法包括: 接收曾使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量来编码的视频数据的译码单元的经编码预测单元; 接收所述运动向量是具有所述第一子像素精度还是所述第二子像素精度的经上下文自适应二进制算术译码的指示; 确定用于解码所述指示的上下文,其中所述上下文包括所述译码单元的深度、所述预测单元的大小以及所述预测单元的类型中的至少一者;以及 根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵解码。
29.根据权利要求28所述的方法,其中所述第一子像素精度包括四分之一像素精度,且其中所述第二子像素精度包括八分之一像素精度。
30.根据权利要求28所述的方法,其中所述译码单元具有2Nx2N像素的大小,且其中所述预测单元的所述类型对应于具有2Nx2N像素、2NxN像素、Nx2N像素和NxN像素中的一者的大小的所述预测单元,其中N为大于零的整数值。
31.根据权利要求28所述的方法,其中所述指示指示所述运动向量针对所述译码单元的亮度数据具有八分之一像素精度,所述亮度数据对应于所述预测单元,所述方法进一步包括:` 使用双线性内插来计算由所述运动向量识别的参考块的色度数据的十六分之一像素位置的值;以及 基于所述参考块的所述经双线性内插值来解码所述译码单元的色度数据。
32.根据权利要求28所述的方法,其中所述预测单元包括第一预测单元,所述方法进一步包括: 接收所述第一预测单元的第一运动向量差值,所述第一运动向量差值具有所述第一子像素精度; 使用第一运动向量差解码方案来解码所述第一运动向量差值,其中所述第一运动向量差解码方案与所述第一子像素精度相关联; 接收所述视频数据的第二预测单元的第二运动向量差值,所述第二运动向量差值具有所述第二子像素精度;以及 使用第二运动向量差解码方案来解码所述第二运动向量差值,其中所述第二运动向量差解码方案与所述第二子像素精度相关联。
33.根据权利要求32所述的方法, 其中使用所述第一运动向量差解码方案来解码所述第一运动向量差值包括: 接收表示所述第一运动向量差值的第一码字; 确定所述第一运动向量差值是否小于用于所述第一运动向量差解码方案的第一阈值;当所述第一运动向量差值小于所述第一阈值时,将所述第一码字解码为第一一元码字;以及 当所述第一运动向量差值大于或等于所述第一阈值时,将所述第一码字解码为第一哥伦布码字,且 其中使用所述第二运动向量差解码方案来解码所述第二运动向量差值包括: 接收表示所述第二运动向量差值的第二码字; 确定所述第二运动向量差值是否小于用于所述第二运动向量差解码方案的第二阈值; 当所述第二运动向量差值小于所述第一阈值时,将所述第二码字解码为第二一元码字;以及 当所述第二运动向量差值大于或等于所述第一阈值时,将所述第二码字解码为第二哥伦布码字。
34.根据权利要求33所述的方法, 其中确定所述第一运动向量差值是否小于用于所述第一运动向量差解码方案的所述第一阈值包括接收指示所述第一运动向量差值是否小于所述第一阈值的信息,且 其中确定所述第二运动向量差值是否小于用于所述第二运动向量差解码方案的所述第二阈值包括接收指示所述第二运动向量差值是否小于所述第二阈值的信息。
35.根据权利要求32所述的方法,其中所述第一运动向量差解码方案与四分之一像素精度相关联,且其中所述第二运动向量差解码方案与八分之一像素精度相关联。`
36.根据权利要求32所述的方法, 其中使用所述第一运动向量差解码方案来解码所述第一运动向量差值包括选择第一上下文模型来使用以对所述第一运动向量差值进行熵解码,其中所述第一上下文模型与所述第一子像素精度相关联,且 其中使用所述第二运动向量差解码方案来解码所述第二运动向量差值包括选择第二上下文模型来使用以对所述第二运动向量差值进行熵解码,其中所述第二上下文模型与所述第二子像素精度相关联。
37.一种解码视频数据的方法,所述方法包括: 接收针对视频数据的译码单元的亮度数据具有八分之一像素精度的运动向量; 使用双线性内插来计算由所述运动向量识别的参考块的色度数据的十六分之一像素位置的值;以及 基于所述参考块的所述经双线性内插值来解码所述译码单元的色度数据。
38.一种解码视频数据的方法,所述方法包括: 接收视频数据的第一预测单元的第一运动向量差值,所述第一运动向量差值具有第一子像素精度; 使用第一运动向量差编码方案来解码所述第一运动向量差值,其中第一运动向量差解码方案与所述第一子像素精度相关联; 接收所述视频数据的第二预测单元的第二运动向量差值,所述第二运动向量差值具有第二不同子像素精度;以及 使用第二运动向量差解码方案来解码所述第二运动向量差值,其中所述第二运动向量差解码方案与所述第二子像素精度相关联。
39.一种用于解码视频数据的设备,所述设备包括视频解码器,所述视频解码器经配置以:接收曾使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量编码的视频数据的译码单元的经编码预测单元;接收所述运动向量是具有所述第一子像素精度还是所述第二子像素精度的经上下文自适应二进制算术译码的指示;确定用于解码所述指示的上下文,其中所述上下文包括所述译码单元的深度、所述预测单元的大小以及所述预测单元的类型中的至少一者;且根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵解码。
40.根据权利要求39所述的设备,其中所述指示指示所述运动向量针对所述译码单元的亮度数据具有八分之一像素精度,所述亮度数据对应于所述预测单元,其中所述视频解码器进一步经配置以使用双线性内插来计算由所述运动向量识别的参考块的色度数据的十六分之一像素位置的值,且基于所述参考块的所述经双线性内插值来解码所述译码单元的色度数据。
41.根据权利要求39所述的设备,其中所述预测单元包括第一预测单元,其中所述视频解码器经配置以:接收所述第一预测单元的第一运动向量差值,所述第一运动向量差值具有所述第一子像素精度;使用第一运动向量差解码方案来解码所述第一运动向量差值,其中所述第一运动向量差解码方案与所述第一子像素精度相关联;接收所述视频数据的第二预测单元的第二运动向量差值,所述第二运动向量差值具有所述第二子像素精度;且使用第二运动向量差解码方案来解码所述第二运动向量差值,其中所述第二运动向量差解码方案与所述第二子像素精度相关联。
42.根据权利要求41所述的设备,其中为了使用所述第一运动向量差解码方案来解码所述第一运动向量差值,所述视频解码器经配置以:接收表示所述第一运动向量差值的第一码字;确定所述第一运动向量差值是否小于所述第一运动向量差解码方案的第一阈值;当所述第一运动向量差值小于所述第一阈值时,将所述第一码字解码为第一一元码字;且当所述第一运动向量差值大于或等于所述第一阈值时,将所述第一码字解码为第一哥伦布码字,且其中为了使用所述第二运动向量差解码方案来解码所述第二运动向量差值,所述视频解码器经配置以:接收表示所述第二运动向量差值的第二码字;确定所述第二运动向量差值是否小于用于所述第二运动向量差解码方案的第二阈值;当所述第二运动向量差值小于所述第一阈值时,将所述第二码字解码为第二一元码字;且当所述第二运动向量差值大于或等于所述第一阈值时,将所述第二码字解码为第二哥伦布码字。
43.根据权利要求41所述的设备,其中所述第一运动向量差解码方案与四分之一像素精度相关联,且其中所述第二运动向量差解码方案与八分之一像素精度相关联。
44.根据权利要求41所述的设备,其中为了使用所述第一运动向量差解码方案来解码所述第一运动向量差值,所述视频解码器经配置以选择第一上下文模型来使用以对所述第一运动向量差值进行熵解码,其中所述第一上下文模型与所述第一子像素精度相关联,且其中为了使用所述第二运动向量差解码方案来解码所述第二运动向量差值,所述视频解码器经配置以选择第二上下文模型来使用以对所述第二运动向量差值进行熵解码,其中所述第二上下文模型与所述第二子像素精度相关联。
45.根据权利要求39所述的设备,其中所述设备包括以下各项中的至少一者:集成电路; 微处理器;以及 无线通信装置,其包含所述视频解码器。
46.一种用于解码视频数据的设备,所述设备包括: 用于接收曾使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量来编码的视频数据的译码单元的经编码预测单元的装置; 用于接收所述运动向量是具有所述第一子像素精度还是所述第二子像素精度的经上下文自适应二进制算术译码的指示的装置; 用于确定用于解码所述指示的上下文的装置,其中所述上下文包括所述译码单元的深度、所述预测单元的大小以及所述预测单元的类型中的至少一者;以及 用于根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵解码的装置。
47.根据权利要求46所述的设备,其中所述指示指示所述运动向量针对所述译码单元的亮度数据具有八分之一像素精度,所述亮度数据对应于所述预测单元,所述设备进一步包括: 用于使用双线性内插来计算由所述运动向量识别的参考块的色度数据的十六分之一像素位置的值的装置;以及 用于基于所述参考块的所述经双线性内插值来解码所述译码单元的色度数据的装置。`
48.根据权利要求46所述的设备,其中所述预测单元包括第一预测单元,所述设备进一步包括: 用于接收所述第一预测单元的第一运动向量差值的装置,所述第一运动向量差值具有所述第一子像素精度; 用于使用第一运动向量差解码方案来解码所述第一运动向量差值的装置,其中所述第一运动向量差解码方案与所述第一子像素精度相关联; 用于接收所述视频数据的第二预测单元的第二运动向量差值的装置,所述第二运动向量差值具有所述第二子像素精度;以及 用于使用第二运动向量差解码方案来解码所述第二运动向量差值的装置,其中所述第二运动向量差解码方案与所述第二子像素精度相关联。
49.根据权利要求48所述的设备, 其中所述用于使用所述第一运动向量差解码方案来解码所述第一运动向量差值的装置包括: 用于接收表示所述第一运动向量差值的第一码字的装置; 用于确定所述第一运动向量差值是否小于用于所述第一运动向量差解码方案的第一阈值的装置; 用于在所述第一运动向量差值小于所述第一阈值时将所述第一码字解码为第一一元码字的装置;以及 用于在所述第一运动向量差值大于或等于所述第一阈值时将所述第一码字解码为第一哥伦布码字的装置,且 其中所述用于使用所述第二运动向量差解码方案来解码所述第二运动向量差值的装置包括: 用于接收表示所述第二运动向量差值的第二码字的装置; 用于确定所述第二运动向量差值是否小于用于所述第二运动向量差解码方案的第二阈值的装置; 用于在所述第二运动向量差值小于所述第一阈值时将所述第二码字解码为第二一元码字的装置;以及 用于在所述第二运动向量差值大于或等于所述第一阈值时将所述第二码字解码为第二哥伦布码字的装置。
50.根据权利要求48所述的设备, 其中所述用于使用所述第一运动向量差解码方案来解码所述第一运动向量差值的装置包括用于选择第一上下文模型来使用以对所述第一运动向量差值进行熵解码的装置,其中所述第一上下文模型与所述第一子像素精度相关联,且 其中所述用于使用所述第二运动向量差解码方案来解码所述第二运动向量差值的装置包括用于选择第二上下文模型来使用以对所述第二运动向量差值进行熵解码的装置,其中所述第二上下文模型与所述第二子像素精度相关联。
51.一种包括上面存储有指令的计算机可读存储媒体的计算机程序产品,所述指令在被执行时致使用于解码视频数据的装置的处理器: 接收曾使用具有第一子像素精度或第二不同子像素精度中的一者的运动向量来编码的视频数据的译码单 元的经编码预测单元; 接收所述运动向量是具有所述第一子像素精度还是所述第二子像素精度的经上下文自适应二进制算术译码的指示; 确定用于解码所述指示的上下文,其中所述上下文包括所述译码单元的深度、所述预测单元的大小和所述预测单元的类型中的至少一者;且 根据上下文自适应二进制算术译码使用所述所确定上下文来对所述指示进行熵解码。
52.根据权利要求51所述的计算机程序产品,其中所述指示指示所述运动向量针对所述译码单元的亮度数据具有八分之一像素精度,所述亮度数据对应于所述预测单元,所述计算机程序产品进一步包括致使所述处理器进行以下动作的指令: 使用双线性内插来计算由所述运动向量识别的参考块的色度数据的十六分之一像素位置的值;以及 基于所述参考块的所述经双线性内插值来解码所述译码单元的色度数据。
53.根据权利要求51所述的计算机程序产品,其中所述预测单元包括第一预测单元,所述计算机程序产品进一步包括致使所述处理器进行以下动作的指令: 接收所述第一预测单元的第一运动向量差值,所述第一运动向量差值具有所述第一子像素精度; 使用第一运动向量差解码方案来解码所述第一运动向量差值,其中所述第一运动向量差解码方案与所述第一子像素精度相关联; 接收所述视频数据的第二预测单元的第二运动向量差值,所述第二运动向量差值具有所述第二子像素精度;以及 使用第二运动向量差解码方案来解码所述第二运动向量差值,其中所述第二运动向量差解码方案与所述第二子像素精度相关联。
54.根据权利要求53所述的计算机程序产品, 其中所述致使所述处理器使用所述第一运动向量差解码方案来解码所述第一运动向量差值的指令包括致使所述处理器进行以下动作的指令: 接收表示所述第一运动向量差值的第一码字; 确定所述第一运动向量差值是否小于用于所述第一运动向量差解码方案的第一阈值; 当所述第一运动向量差值小于所述第一阈值时,将所述第一码字解码为第一一元码字;以及 当所述第一运动向量差值大于或等于所述第一阈值时,将所述第一码字解码为第一哥伦布码字,且 其中所述致使所述处理器使用所述第二运动向量差解码方案来解码所述第二运动向量差值的指令包括致使所述处理器进行以下动作的指令: 接收表示所述第二运动向量差值的第二码字; 确定所述第二运动向量差值是否小于用于所述第二运动向量差解码方案的第二阈值; 当所述第二运动向量差值小于所述第一阈值时,将所述第二码字解码为第二一元码字;以及 当所述第二运动向量差值大于或等于所述第一阈值时,将所述第二码字解码为第二哥伦布码字。
55.根据权利要求53所述的计算机程序产品, 其中所述致使所述处理器使用所述第一运动向量差解码方案来解码所述第一运动向量差值的指令包括致使所述处理器选择第一上下文模型来使用以对所述第一运动向量差值进行熵解码的指令,其中所述第一上下文模型与所述第一子像素精度相关联,且 其中所述致使所述处理器使用所述第二运动向量差解码方案来解码所述第二运动向量差值的指令包括致使所述处理器选择第二上下文模型来使用以对所述第二运动向量差值进行熵解码的指令,其中所述第二上下文模型与所述第二子像素精度相关联。
全文摘要
一种视频编码器可经配置以自适应地为用以编码视频数据的运动向量选择子像素精度。所述视频编码器可进一步使用上下文自适应二进制算术译码来对所述子像素精度的指示进行熵编码,其中所述上下文可对应于用于所述运动向量的视频数据块的大小。举例来说,所述大小可对应于译码单元的深度、所述译码单元的预测单元的大小,和/或所述预测单元的类型。所述视频编码器还可使用双线性内插来内插用于色度数据的十六分之一像素位置的值。所述视频编码器可进一步使用对应于所述运动向量的所述子像素精度的编码方案来编码所述运动向量的运动向量差值。一种视频解码器可使用类似的互逆技术来解码所述视频数据。
文档编号H04N7/36GK103202016SQ201180053470
公开日2013年7月10日 申请日期2011年10月3日 优先权日2010年10月13日
发明者钱威俊, 陈培松, 马尔塔·卡切维奇 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1