对图像进行编码/解码的方法和设备的制造方法_3

文档序号:9251230阅读:来源:国知局
划分为深度等于或大于I的子编码单元来对最大编码单元810进行编码。也就是说,最大编码单元810被划分为4个深度是I的子编码单元,所有或一些深度是I的子编码单元被划分为深度是2的子编码单元。
[0091]深度是I的子编码单元中位于右上侧的子编码单元和位于左下侧的子编码单元被划分为深度等于或大于2的子编码单元。一些深度等于或大于2的子编码单元可被划分为深度等于或大于3的子编码单元。
[0092]在图8a中,右示图示出最大编码单元810的预测单元的划分形状。
[0093]在图8a中的右示图中,用于最大编码单元810的预测单元860可从最大编码单元810被不同地划分。换句话说,用于每个子编码单元的预测单元可小于相应的子编码单元。
[0094]例如,用于深度是I的子编码单元中位于右下侧的子编码单元854的预测单元可小于子编码单元854。此外,用于深度是2的子编码单元814、816、818、828、850和852中的一些子编码单元814、816、850和852的预测单元可分别小于子编码单元814、816、850和852。
[0095]此外,用于深度是3的子编码单元822、832和848的预测单元可分别小于子编码单元822、832和848。预测单元可具有各个子编码单元按照高度或宽度的方向被二等分的形状或具有各个子编码单元按照高度或宽度的方向被四等分的形状。
[0096]图8b示出根据本发明的实施例的预测单元和变换单元。
[0097]在图8b中,左示图示出用于图8a中示出的最大编码单元810的预测单元的划分形状,右示图示出最大编码单元810的变换单元的划分形状。
[0098]在图8b的右示图中,变换单元870的划分形状可与预测单元860不同地被设置。
[0099]例如,即使以深度是I的编码单元854的高度被二等分的形状来选择用于编码单元854的预测单元,也可以以与编码单元854相同的大小来选择变换单元。相似地,即使以深度是2的编码单元814和850中的每一个的高度被二等分的形状来选择用于编码单元814和850的预测单元,也可以以与编码单元814和850中的每一个的原始大小相同的大小来选择变换单元。
[0100]可以以小于预测单元的大小来选择变换单元。例如,当以深度是2的编码单元852的宽度被二等分的形状来选择用于编码单元852的预测单元时,可以以编码单元852按照高度和宽度的方向被四等分的形状来选择变换单元。
[0101]图9是根据本发明的另一实施例的图像编码设备900的框图。参照图9,图像编码设备900可被包括在图1的图像编码设备100或图4的图像编码器400中以基于帧间预测对当前块进行编码。
[0102]参照图9,图像编码设备900包括运动矢量确定器910和编码器920。
[0103]在一些编码模式中,基于已被先前编码的至少一个块的运动矢量来确定当前块的运动矢量,基于确定的运动矢量来对当前块进行编码。这些编码模式的示例是直接预测模式和跳过模式。在直接预测模式和跳过模式中,基于已被先前编码的信息来确定当前块的运动矢量,当前块的运动矢量被另外编码为关于当前块的信息。
[0104]然而,在直接预测模式中,通过从当前块减去使用运动矢量产生的预测块而产生的残差块被编码为关于像素值的信息,然而,在跳过模式中,预测块被视为与当前块相同,只有指示在跳过模式下执行编码的标志信息被编码为关于像素值的信息。
[0105]虽然直接预测模式和跳过模式都是基于帧间预测的编码模式,但是由于运动矢量不被另外编码,因此压缩率高。然而,在直接预测模式和跳过模式中,由于通过仅按照特定方向对当前块进行预测来对当前块进行编码,因此这些模式中的每个模式的命中率和预测的精度可能会低。因此,当根据直接预测模式或跳过模式对包括在双向预测图像中的当前块进行编码时,图像编码设备900通过按照各种方向执行预测来对当前块进行编码,这在以下将详细描述。
[0106]图10是示出根据本发明的实施例的对包括在双向预测图像中的块进行预测的方法的示图。
[0107]参照图10,通过参照在当前图像1000之前的先前图像和在当前图像1000之后的后续图像1030中的至少一个,对包括在作为双向预测图像的当前图像1000中的当前块1010进行预测编码。从先前图像1020和后续图像1030中的至少一个检测与当前块1010相应的至少一个块(例如,先前块1022和后续块1032),随后基于检测的块1022或1032来对当前块1010进行预测编码。
[0108]换句话说,如果从当前图像1000到先前图像1020的方向是第一方向(L0方向),则可按照第一方向基于从先前图像1020检测的先前块1022来对当前块1010进行预测(以下,称为“第一方向预测”)。同样,如果从当前图像1000到后续图像1030的方向是第二方向(LI方向),则可按照第二方向基于从后续图像1030检测的后续块1032来对当前块1010进行预测(以下,称为“第二方向预测”)。此外,可对当前块1010执行第一方向预测和第二方向预测两者,即,当前块1010可被双向预测。
[0109]然而,仅当当前块1010被双向预测时,可执行根据现有技术的直接预测模式。换句话说,当基于第一方向预测或第二方向预测对当前块1010进行预测编码时,当前块1010不能在所述直接预测模式下被编码。同样,仅当当前块1010被双向预测时,可执行根据现有技术的跳过模式。在根据现有技术的跳过模式下,基于与当前块1010邻近的先前块的运动矢量确定的当前块1010的运动矢量是第一方向上的运动矢量mv_L0,根据第一方向预测产生的预测块被视为与当前块1010相同,指示根据跳过模式执行编码的标志信息被编码。
[0110]也就是说,根据现有技术,虽然可对包括在双向预测图像中的块执行第一方向预测、第二方向预测和双向预测,但是仅当按特定方向执行预测时,才可使用直接预测模式和跳过模式。因此,导致压缩率提高的直接预测模式和跳过模式的使用受到限制。
[0111]为了解决这个问题,根据当前实施例的图像编码设备900根据这样的图像编码方法执行编码:基于先前编码信息确定当前块1010的运动矢量,可按照各种方法执行预测而不必对运动矢量进行编码。
[0112]运动矢量确定器910确定当前块1010的第一方向运动矢量和第二方向运动矢量以执行第一方向预测、第二方向预测和双向预测。基于在当前块1010被编码之前已先前编码的至少一个块的运动矢量来确定第一方向运动矢量和第二方向运动矢量。
[0113]可使用根据现有技术确定运动矢量的方法来确定第一方向运动矢量和第二方向运动矢量。例如,如果基于直接预测模式对当前块1010进行编码,则可使用根据基于
H.264/AVC的直接预测模式确定运动矢量的方法来确定运动矢量,其中,在直接预测模式下,关于当前块1010的运动矢量的信息不被编码,而关于残差块的信息被编码。如果基于跳过模式对当前块1010进行编码,则可使用根据基于H.264/AVC的跳过模式确定运动矢量的方法来确定运动矢量,其中,在跳过模式下,关于运动矢量的信息和关于残差块的信息被编码。
[0114]基于H.264/AVC的直接预测模式可被分为时间直接预测模式和空间直接预测模式。因此,运动矢量确定器910可通过使用在基于H.264/AVC的时间直接预测模式下确定运动矢量的方法或通过使用在基于H.264/AVC的空间直接预测模式下确定运动矢量的方法来确定第一方向运动矢量和第二方向运动矢量。现在将参照图1la和图1lb详细描述这些方法。
[0115]图1la是示出根据本发明的实施例的基于先前编码块的运动矢量确定当前块的运动矢量的方法的示图。
[0116]参照图11a,当基于时间直接预测模式对包括在当前图像1110中的当前块1010进行编码时,可使用后续块1120的运动矢量mv_ColA来产生当前块1010的运动矢量,其中,后续块1120被包括在当前图像1110之后的后续图像1114中,并与当前块1010并置。
[0117]换句话说,如果后续图像1114是锚(anchor)图像,则可使用包括在锚图像1114中的后续块1120的运动矢量mv_ColA来确定当前块1010的第一方向运动矢量mv_L0A和第二方向运动矢量mv_LlA。可通过基于当前图像1110与在当前图像1110之前的先前图像1112之间的时间距离以及锚图像1114与先前图像1112之间的时间距离对后续块1120的运动矢量mV_colA进行缩放(scale),来确定当前块1010的第一方向运动矢量mv_L0A和第二方向运动矢量mv_LlA。
[0118]例如,如果后续块1120的运动矢量mv_colA针对从先前图像1112检测的块1122被产生,则可使用以下等式来产生当前块1110的第一方向运动矢量mv_L0A和第二方向运动矢量mv_LlA:
[0119]mv_L0A = (tl/t2) Xmv_colA
[0120]mv_LlA = mv_L0 A-mv_c o IA,
[0121]其中,“mv_L0A”和“mv_LlA”分别表示当前块1010的第一方向运动矢量和第二方向运动矢量。
[0122]图1lb是示出根据本发明的另一实施例的基于先前编码块的运动矢量确定当前块的运动矢量的方法的示图。
[0123]参照图11b,可基于与当前块1100邻近的块1130、1132和1134的运动矢量mv_A、mv_B*mv_C来确定当前块1010的第一方向运动矢量和第二方向运动矢量。可基于位于当前块1010的左侧、上侧和最右上侧的块的运动矢量来确定当前块1010的第一方向运动矢量和第二方向运动矢量。
[0124]当根据空间直接预测模式对当前块1010进行编码时,运动矢量mv_A、mv_B和mv_C中的至少一个第一方向运动矢量之间的中值被确定为当前块1010的第一方向运动矢量,运动矢量mv_A、mv_B和mv_C中的至少一个第二方向运动矢量之间的中值被确定为当前块1010的第二方向运动矢量。通过将所述至少一个第二方向运动矢量设置为“O”来计算所述至少一个第一方向运动矢量之间的中值,来确定第一方向运动矢量,通过将所述至少一个第一方向运动矢量设置为“O”来计算至少一个第二方向运动矢量之间的中值,来确定第二方向运动矢量。
[0125]在由运动矢量mv_A、mv_B和mv_C确定的参考图像中与最小第一方向参考索引相应的图像被确定为第一方向参考图像,在由运动矢量mv_A、mv_B和mv_C确定的参考图像中与最小第二方向参考索引相应的图像被确定为第二方向参考图像。
[0126]当根据跳过模式对当前块1010进行编码时,如图1lb所示,与当前块1010邻近的块1130、1132和1134的运动矢量mV_A、mV_B和mv_C中的至少一个第一方向运动矢量之间的中值可被确定为当前块1010的运动矢量。
[0127]如果图9的图像编码设备900如以上参照图1la或图1lb所述确定当前块的运动矢量并对当前块进行编码,则解码端如以上参照图1la或图1lb所述确定当前块的运动矢量并恢复当前图像。换句话说,图像编码端和图像解码端可隐含地共享相同的确定运动矢量的方法,并根据共享的方法来确定当前块的运动矢量。
[0128]然而,根据本发明的另一实施例,图像编码端可基于在当前块被编码之前编码的多个先前块的运动矢量来产生多个运动矢量候选,对指定所述多个运动矢量候选中的当前块的运动矢量的信息进行明确地编码,并将编码的结果插入比特流。在这种情况下,图像解
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1