视频编码设备以及视频编码方法与流程

文档序号:14477592阅读:110来源:国知局
视频编码设备以及视频编码方法与流程

本申请是申请日为2012年01月05日、申请号为201280005384.5、发明名称为“视频解码设备、视频解码方法”的中国发明专利申请的分案申请。

本发明涉及使用分级编码单元的视频编码设备以及视频编码方法。



背景技术:

非专利文献(npl)1公开了典型的视频编码系统和视频解码系统。

npl1中描述的视频编码设备具有如图17中所示的结构。图17中示出的视频编码设备以下称为典型视频编码设备。

参考图17,以下描述典型视频编码设备的结构和操作,该设备接收数字化视频的每个帧作为输入并输出比特流。

图17中所示的视频编码设备包括变换器/量化器101、熵编码器102、逆变换器/逆量化器103、缓冲器104、预测器105、复用器106以及编码控制器108。

图17中所示的视频编码设备将每个帧分割成具有16×16像素尺寸的块,被称为宏块(mb),并从该帧的左上方起依次对每个mb进行编码。

图18为示出在帧具有qcif(四分之一通用中间格式)空间分辨率情况下块分割的示例的说明图。为了简单起见,以下仅关注亮度像素值来描述每个单元的操作。

从经块分割的输入视频减去从预测器105提供的预测信号,并将结果输入至变换器/量化器101作为预测错误图像。存在两种类型的预测信号,即,内预测(intraprediction)信号和间预测(interprediction)信号。间预测信号亦称为帧间预测信号。

以下描述每种预测信号。内预测信号是基于具有与存储在缓冲器104中的当前图片相同的显示时间的重建图片的图像而生成的预测信号。

参见npl1中的8.3.1intra_4×4predictionprocessforlumasamples、8.3.2intra_8×8predictionprocessforlumasamples以及8.3.3intra_16×16predictionprocessforlumasamples,具有3种块尺寸的内预测可用——即,intra_4×4、intra_8×8和intra_16×16。

从图19中的(a)和(c)可以理解,intra_4×4和intra_8×8分别为4×4块尺寸和8×8块尺寸的内预测。图中的每个圈(○)代表用于内预测的参考像素,即,具有与当前图片相同的显示时间的重建图片的像素。

在intra_4×4的内预测中,直接将重建的外围像素设置为参考像素,并将其用于在图19(b)中所示的九个方向上进行填充(外插)以形成预测信号。在intra_8×8的内预测中,将通过由图19(c)中的右箭头下方所示的低通滤波器(1/2、1/4、1/2)对重建图片的图像的外围像素加以平滑而获得的像素设置为参考像素,并将其用于图19(b)中所示的九个方向上的外插以形成预测信号。

类似地,从图20(a)中可以理解,intra_16×16是16×16块尺寸的内预测。像图19中那样,图中每个圈(○)代表用于内预测的参考像素,即,具有与当前图片相同的显示时间的重建图片的像素。在intra_16×16的内预测中,直接将重建图片的图像的外围像素设置为参考像素,并将其用于图20(b)中所示的四个方向上的外插以形成预测信号。

在下文中,将使用内预测信号编码的mb和块分别称为内mb和内块,即,将内预测的块尺寸称为内预测块尺寸,并将外插的方向称为内预测方向。内预测块尺寸和内预测方向是与内预测有关的预测参数。

间预测信号是从具有与当前图片不同的显示时间并存储于缓冲器104中的重建图片的图像中生成的预测信号。在下文中,将使用间预测信号编码的mb和块分别称为间mb和间块。间预测的块尺寸(间预测块尺寸)例如可从16×16、16×8、8×16、8×8、8×4、4×8和4×4中选择。

图21为示出作为示例使用16×16块尺寸的间预测的示例的说明图。图21中所示的运动矢量mv=(mvx,mvy)为一种预测,其指示参考图片的间预测块(间预测信号)相对于将被编码的块的平行移动量。在avc中,间预测的预测参数不仅包括间预测的方向,而且还包括参考图片索引,其中所述间预测的方向代表间预测信号的参考图片相对于将被编码的块中的待编码的图片的方向,而所述参考图片索引用来标识用于对将被编码的块进行间预测的参考图片。这是因为,在avc中,可将存储于缓冲器104中的多个参考图片用于间预测。

在avc间预测中,能够以1/4像素的精确度来计算运动矢量。图22为示出在运动补偿预测中对亮度信号的内插处理的说明图。在图22中,a代表整数像素位置处的像素信号,b、c、d代表具有1/2像素精确度的小数像素位置处的像素信号,而e1、e2、e3代表具有1/4像素精确度的小数像素位置处的像素信号。通过对水平整数像素位置处的像素应用六抽头滤波器而生成像素信号b。同样地,通过对垂直整数像素位置处的像素应用六抽头滤波器而生成像素信号c。通过对具有1/2像素精确度的水平或垂直小数像素位置处的像素应用六抽头滤波器而生成像素信号d。六抽头滤波器的系数被表示为[1,-5,20,20,-5,1]/32。通过对相邻整数像素位置处或小数像素位置处的像素分别应用二抽头滤波器[1,1]/2而分别生成像素信号e1、e2和e3。

通过仅包含内mb而编码的图片被称为i图片。通过不仅包含内mb而且还包含间mb而编码的图片被称为p图片。通过包含不仅使用一个参考图片而且同时使用两个参考图片用于间预测的间mb而编码的图片被称为b图片。在b图片中,其中间预测信号的参考图片相对于将被编码的块中的待编码的图片的方向为过去的间预测被称为前向预测,其中间预测信号的参考图片相对于将被编码的块中的待编码的图片的方向为将来的间预测被称为后向预测,而同时使用既涉及过去又涉及将来的两个参考图片的间预测被称为双向预测。间预测的方向(间预测方向)为间预测的预测参数。

依照来自编码控制器108的指令,预测器105将输入视频信号与预测信号相比较,以确定使预测错误图像块的能量最小化的预测参数。编码控制器108将确定的预测参数提供至熵编码器102。

变换器/量化器101对预测错误图像进行频率变换以获得频率变换系数。

变换器/量化器101还以预定的量化步长宽度qs来量化该频率变换系数。在下文中,将量化的频率变换系数称为变换量化值。

熵编码器102对预测参数和变换量化值进行熵编码。预测参数为关联于mb和块预测的信息,诸如预测模式(内预测、间预测)、内预测块尺寸、内预测方向、间预测块尺寸以及上文所述的运动矢量等。

逆变换器/逆量化器103以预定的量化步长宽度qs来对变换量化值进行逆量化。逆变换器/逆量化器103还对通过逆量化获得的频率变换系数执行逆频率变换。将预测信号添加至通过逆频率变换获得的重建预测错误图像,并将结果提供至缓冲器104。

缓冲器104存储所提供的重建图像。将用于一个帧的重建图像称为重建图片。

复用器106对熵编码器102的输出数据和编码参数进行复用并输出。

基于上述操作,视频编码设备中的复用器106生成比特流。

npl1中描述的视频解码设备具有如图23中所示的结构。在下文中,将图23中所示的视频解码设备称为典型视频解码设备。

参照图23描述典型视频解码设备的结构与操作,所述典型视频解码设备接收比特流作为输入并输出经解码的视频帧。

图23中所示的视频解码设备包括解复用器201、熵解码器202、逆变换器/逆量化器203、预测器204以及缓冲器205。

该解复用器201对输入比特流进行解复用并提取经熵编码的视频比特流。

熵解码器202对视频比特流进行熵解码。熵解码器202对mb和块预测参数以及变换量化值进行熵解码,并将结果提供至逆变换器/逆量化器203和预测器204。

逆变换器/逆量化器203以量化步长宽度来对变换量化值进行逆量化。逆变换器/逆量化器203还对通过逆量化获得的频率变换系数执行逆频率变换。

在逆频率变换之后,预测器204基于经熵解码的mb和块预测参数,使用缓冲器205中存储的重建图片的图像生成预测信号。

在生成预测信号之后,将从预测器204提供的预测信号添加至通过由逆变换器/逆量化器203执行的逆频率变换而获得的重建预测错误图像,并将结果提供至缓冲器205作为重建图像。

继而,输出存储于缓冲器205中的重建图片作为解码图像(解码视频)。

基于上述操作,典型视频解码设备生成经解码的图像。

引用列表

非专利文献

npl1:iso/iec14496-10advancedvideocoding

npl2:“testmodelunderconsideration,”document:jctvc-b205,jointcollaborativeteamonvideocoding(jct-vc)ofitu-tsg16wp3andiso/iecjtc1/sc29/wg112ndmeeting:日内瓦,ch,2010年7月21-28



技术实现要素:

技术问题

npl2公开了考虑中的测试模型(tmuc)。与npl1中公开的不同,该tmuc方案使用图24中所示的分级编码单元(编码树块(ctb))。在本说明书中,将ctb块称为编码单元(cu)。

在此,将最大cu称为最大编码单元(lcu),并将最小cu称为最小编码单元(scu)。在tmuc方案中,引入预测单元(pu)的概念作为用于每个cu的预测的单元(见图25)。pu为预测的基本单元,并定义了图25中所示的8个pu划分类型{2n×2n,2n×n,n×2n,n×n,2n×nu,2n×nd,nl×2n,nr×2n}。将用于间预测的pu称为间pu并将用于内预测的pu称为内pu。将对其使用间预测的pu分区称为间pu分区,并将对其使用内预测的pu分区称为内pu分区。在图25中所示的形状之中,仅支持2n×2n和n×n的正方形作为内pu分区。在下文中,将cu和pu的一边的长度分别称为cu尺寸和pu尺寸。

tmuc方案可使用具有多达12个抽头的滤波器来寻找具有小数精确度的预测图像。像素位置与滤波器系数之间的关系如下。

[表1]

参考图26描述像素位置。在图26中,假设a和e是整数像素位置处的像素。在这种情况下,b是1/4像素位置处的像素,c是1/2像素位置处的像素,并且d是3/4像素位置处的像素。上述情况也适用于垂直方向上的像素。

图22中所示的像素b或像素c是通过对水平或垂直1/2像素位置应用一次滤波器而生成的。像素e1是通过对1/4像素位置应用一次滤波器而生成的。

参照图27,对小数像素的生成的示例进行描述,所述小数像素诸如像素e2和像素e3,其像素位置为在水平方向和垂直方向上的小数精确度位置并且至少其中之一为1/4像素位置。在图27中,假设像素a是整数像素位置处的像素而像素c是要获取的小数像素位置处的像素。在这种情况下,首先通过应用针对垂直1/4像素位置的滤波器来生成像素b。继而,通过对小数像素b应用针对水平3/4像素位置的滤波器而生成像素c。在npl2的8.3interpolationmethods中更为详细地描述了小数像素的生成。

在tmuc方案中,将指示所有层级上的cu的每个pu报头(header)中的pu划分类型的语法(syntax)(根据npl2中的4.1.10predictionunitsyntax,在内预测情况下为intra_split_flag以及在间预测情况下为inter_partitioning_idc)嵌入到输出比特流中。在下文中,将intra_split_flag语法称为内pu划分类型语法,并将inter_partitioning_idc语法称为间pu划分类型语法。

当在每个lcu内存在许多小尺寸cu时,比特流中所包含的间pu划分类型语法的比特数目的比率增大,从而造成压缩视频的质量降低的问题。

此外,在tmuc方案中,对参考图片的存储器访问随着间pu分区的尺寸变小而增加,从而造成存储器带宽紧张的问题。特别是由于在tmuc方案中使用12抽头滤波器来生成小数像素,因而使得存储器带宽更为紧张。

图28为描述当使用12抽头滤波器时的存储器访问区域的说明图。图28(a)示出了当选择n×n的pu划分类型时一个间pu分区中的存储器访问区域,而图28(b)示出了当选择2n×2n的间pu划分类型时的存储器访问区域。

当选择n×n时,由于针对间pu分区0、1、2、3中的每一个执行总共4次图28(a)中的虚线所包围的尺寸的存储器访问,因此存储器访问量具有通过将4(n+11)2=4n2+88n+484乘以参考图片的比特计数而获得的值。由于2n×2n间pu分区的存储器访问量具有通过将(2n+11)2=4n2+44n+121乘以参考图片的比特计数而获得的值,因此n×n间pu分区的存储器访问量变得比2n×2n存储器访问量更大。

例如,考虑当n=4,预测为单向预测,并且每个像素值的比特精确度为8比特时8×8cu中的间pu的存储器访问量。在2n×2n间pu分区中的存储器访问量为19×19×1×8比特=2888比特,而在n×n间pu分区中的存储器访问量为15×15×4×8比特=7200比特,该存储器访问量大约为2n×2n间pu分区中的存储器访问量的2.5倍。

在lcu单元中,如果lcu的块尺寸为128×128,则当通过一个间pu分区预测lcu时存储器访问量将为139×139×1×8比特=154568比特,而当lcu全部由4×4间pu分区来预测时(即,当通过1024个间pu分区来预测lcu时),存储器访问量将为15×15×1024×8比特=1843200比特,该存储器访问量大约为第一种情况的12倍。

本发明的目的是减少每预定面积的存储器带宽。

问题解决方案

根据本发明的视频编码设备是使用间预测来编码视频的视频编码设备,其包括控制装置,用于基于针对具有预定面积的图像块所允许的运动矢量的最大数目和具有该预定面积的该图像块中所包含的经编码的图像块的运动矢量的数目之间的关系,来限制将被编码的cu的间pu划分类型的间预测方向候选项,同时间预测方向候选项被设置为等于视频解码设备中的间预测方向候选项。

根据本发明的视频编码方法是使用间预测来编码视频的视频编码方法,其包括基于针对具有预定面积的图像块所允许的运动矢量的最大数目和具有该预定面积的该图像块中所包含的经编码的图像块的运动矢量的数目之间的关系来限制将被编码的cu的间pu划分类型的间预测方向候选项,同时间预测方向候选项被设置为等于视频解码设备中的间预测方向候选项。

发明的有益效果

根据本发明,由于基于具有预定面积的图像块中所包含的经编码的图像块的运动矢量的数目来限制可用的间pu分区,因此可减少每预定面积的存储器带宽。

此外,由于基于具有预定面积的图像块中所包含的经编码的图像块的运动矢量的数目来限制间预测方向,因此可减少每预定面积的存储器带宽。

附图说明

[图1]图1为示例性实施方式1中的视频编码设备的框图。

[图2]图2为示出由示例性实施方式1中的编码控制器所执行的确定预测参数的操作的流程图。

[图3]图3为示出确定pu划分类型候选项的操作的流程图。

[图4]图4为示出针对每个pu分区确定间预测方向候选项的操作的流程图。

[图5]图5为指示序列参数集中关于预定面积的信息以及关于针对具有该预定面积的图像块所允许的运动矢量的最大数目的信息的列表的说明图。

[图6]图6为示出pu报头写入操作的流程图。

[图7]图7为指示关于pu语法中inter_partitioning_idc语法的信息的列表的说明图。

[图8]图8为示例性实施方式3中的视频解码设备的框图。

[图9]图9为示出pu报头解析操作的流程图。

[图10]图10为指示图片参数集中关于预定面积的信息和针对具有该预定面积的图像块所允许的运动矢量的最大数目的信息的列表的说明图。

[图11]图11为指示切片(slice)报头中关于预定面积的信息和关于针对具有该预定面积的图像块所允许的运动矢量的数目的信息的列表的说明图。

[图12]图12为示例性实施方式4中的视频解码设备的框图。

[图13]图13为示出错误检测操作的流程图。

[图14]图14为示出能够实现根据本发明的视频编码设备和视频解码设备的功能的信息处理系统的配置示例的框图。

[图15]图15为示出根据本发明的视频编码设备的主要部分的框图。

[图16]图16为示出根据本发明的视频解码设备的主要部分的框图。

[图17]图17为典型视频编码设备的框图。

[图18]图18为示出块分割的示例的说明图。

[图19]图19为用于描述intra_4×4和intra_8×8内预测的说明图。

[图20]图20为描述intra_16×16内预测的说明图。

[图21]图21为示出间预测的示例的说明图。

[图22]图22为示出在运动补偿预测中针对亮度信号的内插处理的说明图。

[图23]图23为典型视频解码设备的框图。

[图24]图24为用于描述ctb的说明图。

[图25]图25为用于描述pu的说明图。

[图26]图26为用于描述小数像素位置的说明图。

[图27]图27为用于描述在tmuc方案中使用12抽头滤波器的小数像素生成方法的说明图。

[图28]图28为用于描述当在tmuc方案中使用12抽头滤波器生成小数像素时的存储器访问范围的说明图。

具体实施方式

为了解决上述典型技术的技术问题,本发明基于在具有预定面积的图像块中所包含的编码图像块的运动矢量的数目来限制将被编码的cu的间pu分区和间预测方向以解决所述问题。在本发明的一个示例中,基于在具有预定面积的图像块中所包含的编码图像块的运动矢量的数目来分别限制间pu划分类型候选项和间预测方向候选项以解决所述问题。在本发明的另一示例中,限制pu报头中的间pu划分类型语法的传输以解决所述问题。在本发明的上述示例中,可将比特流中所包含的间pu划分类型语法的比特数目的比率保持低,以抑制存储器带宽并同时改善压缩视频的质量。

举例而言,在本说明书中预定面积是指一个lcu或者连续两个或更多个lcu。

示例性实施方式1

示例性实施方式1示出视频编码设备,其包括:编码控制装置,用于基于针对具有预定面积(图像中的预定区)的图像块所允许的运动矢量的最大数目和具有该预定面积的该图像块中所包含的经编码的图像块的运动矢量的数目来控制间pu划分类型和间预测方向;以及用于在比特流中嵌入关于预定面积的信息和关于针对具有该预定面积的图像块所允许的运动矢量的最大数目的信息以便通过信号将关于针对具有所述预定面积的图像块所允许的运动矢量的最大数目的信息发送至视频解码设备的装置。

在该示例性实施方式中,假设预定面积为连续numsuclcu个lcu(一个或多个lcu),每预定面积所允许的运动矢量的最大数目为maxnummv,并且预定面积内的经编码的cu中所包含的运动矢量的数目为currnummv。

如图1所示,该示例性实施方式中的视频编码设备与图17中所示的典型视频编码设备类似地包括变换器/量化器101、熵(entropy)编码器102、逆变换器/逆量化器103、缓冲器104、预测器105、复用器106以及编码控制器107。

图1中示出的示例性实施方式中的视频编码设备与图17中示出的视频编码设备的不同之处在于,numsuclcu和maxnummv被提供至编码控制器107,以便基于numsuclcu和maxnummv来控制间pu划分类型和间预测方向。numsuclcu和maxnummv还被提供至复用器106,以便通过信号将numsuclcu和maxnummv发送至视频解码设备。

编码控制器107使预测器105计算成本(速率-失真成本:r-d成本),该成本根据编码失真(输入信号与重建图片之间的错误图像的能量)以及生成的比特计数来算得。编码控制器107确定其中r-d成本被最小化的cu划分图案(通过如图24中所示的split_coding_unit_flag确定的划分图案)以及每个cu的预测参数。编码控制器107将确定的split_coding_unit_flag和每个cu的预测参数提供至预测器105和熵编码器102。该预测参数是与将被编码的cu的预测相关联的信息,诸如预测模式(pred_mode)、内pu划分类型(intra_split_flag)、内预测方向、间pu划分类型(inter_partitioning_idc)以及运动矢量。

作为示例,该示例性实施方式中的编码控制器107基于numsuclcu和maxnummv来控制pu划分类型。当4<=maxnummv-currnummv时,该示例性实施方式中的编码控制器107从总共10种类型的内预测{2n×2n,n×n}和全套间预测中选择最佳的pu划分类型作为预测参数。当2<=maxnummv-currnummv<4时,编码控制器107从总共9种类型的内预测{2n×2n,n×n}和间预测{2n×2n,2n×n,n×2n,2n×nu,2n×nd,nl×2n,nr×2n}中选择最佳的pu划分类型作为预测参数。当1<=maxnummv-currnummv<2时,编码控制器107从总共3种类型的内预测{2n×2n,n×n}和间预测{2n×2n}中选择最佳的pu划分类型作为预测参数。当maxnummv-currnummv<1时,编码控制器107从2种类型的内预测{2n×2n,n×n}中选择最佳的pu划分类型作为预测参数。

该示例性实施方式中的编码控制器107还基于maxnummv和currnummv来控制用于间预测方向的候选项。例如,当2<=maxnummv-currnummv时,编码控制器107针对将被选择的2n×2n间pu分区,从{前向,后向,双向}中选择间预测方向作为预测参数。当1<=maxnummv-currnummv<2时,编码控制器107从{前向,后向}中选择间预测方向作为预测参数。注意,当maxnummv-currnummv<1时,将被选择的pu划分类型为内。

图2为示出该示例性实施方式中的编码控制器107确定用于每个cu的预测参数的操作的流程图。

如图2中所示,编码控制器107在步骤s101中确定pu划分候选项。在步骤s102中,编码控制器107确定间预测方向候选项。在步骤s103中,编码控制器107使用步骤s101和步骤s102中所确定的pu划分类型候选项和间预测方向候选项来基于r-d成本确定预测参数。在步骤s104中,编码控制器107基于步骤s102和步骤s103中所确定的pu划分类型和间预测方向来更新currnummv。

当在步骤s104中pu划分类型的间预测方向为双向预测时,编码控制器107设置currnummv=currnummv+2,或者否则更新currnummv=currnummv+1和currnummv。

图3为示出图2的步骤s101中确定pu划分类型候选项的操作的流程图。

当在步骤s201中确定4<=maxnummv-currnummv时,编码控制器107在步骤s202中将pu划分类型候选项设置为总共10种类型的内预测{2n×2n,n×n}和全套间预测。

否则,即,当在步骤s201中确定maxnummv-currnummv<4并且在步骤s203中确定2<=maxnummv-currnummv<4时,编码控制器107在步骤s204中将pu划分类型候选项设置为总共9种类型的内预测{2n×2n,n×n}和间预测{2n×2n,2n×n,n×2n,2n×nu,2n×nd,nl×2n,nr×2n}。

否则,即,当在步骤s203中确定maxnummv-currnummv<2并且在步骤s205中确定1<=maxnummv-currnummv<2时,编码控制器107在步骤s206中将pu划分类型候选项设置为总共3种类型的内预测{2n×2n,n×n}和间预测{2n×2n}。

否则,即,当在步骤s205中确定maxnummv-currnummv<1时,编码控制器107将pu划分类型候选项设置为2种类型的内预测{2n×2n,n×n}。

图4为示出图2的步骤s102中确定间预测方向候选项的操作的流程图。在下文中,出于说明性的目的,将每个pu分区的索引表示为i并将分区的数目表示为m。例如,当pu划分类型为n×n时,m=4并且索引i取值1、2、3、4。

在步骤s301中,编码控制器107设置k=currnummv,并将m设置为pu分区的数目。

在步骤s302中,编码控制器107将代表pu分区索引的变量i设置为1。

在步骤s303中,当确定maxnummv-k-(m-i)>=2时,编码控制器107在步骤s304中将针对分区i的间预测方向候选项设置为{前向,后向,双向},并在步骤s305中设置k=k+2。

否则,即,当在步骤s303中确定maxnummv-k-(m-i)≤1时,编码控制器107在步骤s306中将针对分区i的间预测方向候选项设置为{前向,后向}。在步骤s307中,编码控制器107设置k=k+1。

当在步骤s308中i等于m时,过程结束。

否则,编码控制器107在步骤s309中设置i=i+1,并返回到步骤s303。

预测器105选择与编码控制器107所确定的每个cu的预测参数相对应的预测信号。

从形状由编码控制器107确定的每个cu的输入视频中减去从预测器105提供的预测信号以生成预测错误图像,并将该预测错误图像输入到变换器/量化器101。

变换器/量化器101对预测错误图像进行频率变换以获得频率变换系数。

变换器/量化器101还以预定量化步长宽度qs量化频率变换系数,以获得变换量化值。

熵编码器102对从编码控制器107提供的split_coding_unit_flag(见图24)、预测参数以及从变换器/量化器101提供的变换量化值进行熵编码。

逆变换器/逆量化器103以预定量化步长宽度qs对变换量化值进行逆量化。逆变换器/逆量化器103还对通过逆量化而获得的频率变换系数执行逆频率变换。将预测信号添加至通过逆频率变换而获得的重建预测错误图像,并将结果提供至缓冲器104。

复用器106复用并输出关于预定面积的信息、关于每预定面积所允许的运动矢量的数目的信息以及熵编码器103的输出数据。根据npl2中的4.1.2sequenceparametersetrbspsyntax,复用器106复用如图5中所列出的num_successive_largest_coding_unit(该示例性实施方式中的numsuclcu的值)和max_num_motion_vector语法(该示例性实施方式中maxnummv的值)。

基于上述操作,根据本发明的视频编码设备生成比特流。

该示例性实施方式中的视频编码设备包括编码控制装置,该编码控制装置用于基于针对具有预定面积的图像块所允许的运动矢量的最大数目和具有上述预定面积的图像块中所包含的编码图像块的运动矢量的数目来控制将被编码的cu的间pu划分类型和间预测方向,以便使数目多于针对具有预定面积的图像块所允许的运动矢量的最大数目的运动矢量将不被用于该预定面积内。

换言之,当具有预定面积的图像块中所包含的编码图像块的运动矢量数目小于运动矢量的最大数目时,视频编码设备以预定间pu划分类型设置将被编码的cu的pu报头层中的间pu划分类型语法并对其进行熵编码。

通过防止在预定面积内使用数目大于运动矢量的最大数目的运动矢量而减少了存储器带宽。此外,由于通过防止在预定面积内使用数目大于运动矢量的最大数目的运动矢量而减少了通过信号发送的间pu划分类型语法的数目,因此比特流中的pu报头的码量的百分比得到了降低,并因而改善了视频的质量。

由于每个间pu划分类型的出现概率改变以降低熵,因此提高了熵编码的效率。因此,可在保持压缩视频质量的同时减少存储器带宽。

该示例性实施方式中的视频编码设备在比特流中嵌入关于预定面积的信息和关于针对具有该预定面积的图像块所允许的运动矢量的最大数目的信息。因此,由于通过信号将关于预定面积的信息和关于针对具有预定面积的图像块所允许的运动矢量的最大数目的信息发送至视频解码设备,因而可增强视频编码设备与视频解码设备的互操作性。

示例性实施方式2

示例性实施方式2中的视频编码设备包括:编码控制装置,用于基于从外部设置的预定面积和针对具有该预定面积的图像块所允许的运动矢量的最大数目来控制间pu划分类型和间预测方向,以便基于在具有上述预定面积的图像块中所包含的编码图像块的运动矢量的数目来控制对间pu划分类型语法的熵编码;以及用于在比特流中嵌入关于预定面积的信息、关于针对具有该预定面积的图像块所允许的运动矢量的最大数目的信息以及关于每预定面积所允许的运动矢量的数目的信息以便通过信号将关于针对具有预定面积的图像块所允许的运动矢量的最大数目的信息和关于每预定面积所允许的运动矢量的数目的信息发送至视频解码设备的装置。

在该示例性实施方式中,假设预定面积为连续numsuclcu个lcu,针对具有预定面积的图像块所允许的运动矢量的最大数目为maxnummv,并且预定面积内的图像块中所包含的经编码的cu的运动矢量的数目为currnummv。

该示例性实施方式中的视频编码设备的结构与图1所示的示例性实施方式1中的视频编码设备的结构相同。

图1中示出的该示例性实施方式中的视频编码设备与图17中示出的视频编码设备的不同之处在于,numsuclcu和maxnummv被提供至编码控制器107以便基于numsuclcu和maxnummv来控制间pu划分和间预测方向。numsuclcu和maxnummv还被提供至复用器106以便通过信号将numsuclcu和maxnummv发送至视频解码设备。

编码控制器107使预测器105计算根据编码失真(输入信号与重建图片之间的错误图像的能量)以及生成的比特计数而算得的r-d成本。编码控制器107确定其中r-d成本被最小化的cu分割图案(由如图24中所示的split_coding_unit_flag确定的分割图案)以及每个cu的预测参数。编码控制器107将确定的split_coding_unit_flag和每个cu的预测参数提供至预测器105和熵编码器102。该预测参数是与将被编码的cu的预测相关联的信息,诸如预测模式(pred_mode)、内pu划分类型(intra_split_flag)、内预测方向、间pu划分类型(inter_partitioning_idc)以及运动矢量。

与示例性实施方式1中类似,该示例性实施方式中的编码控制器107确定pu划分类型候选项和间预测方向候选项。编码控制器107使用确定的pu划分候选项和间预测方向候选项来基于r-d成本确定预测参数。

当将被编码的cu的预测模式为间预测并且maxnummv-currnummv≤1时,该示例性实施方式中的编码控制器107控制熵编码器102以不对inter_partitioning_idc进行熵编码。

预测器105选择与编码控制器107所确定的每个cu的预测参数相对应的预测信号。

从形状由编码控制器107所确定的每个cu的输入视频中减去从预测器105提供的预测信号以生成预测错误图像,并将该预测错误图像输入至变换器/量化器101。

变换器/量化器101对预测错误图像进行频率变换,以获得频率变换系数。

变换器/量化器101还以预定量化步长宽度qs来量化频率变换系数,以获得变换量化值。

熵编码器102对从编码控制器107提供的split_coding_unit_flag(见图24)、预测参数以及从变换器/量化器101提供的变换量化值进行熵编码。

逆变换器/逆量化器103以预定量化步长宽度qs来对变换量化值进行逆量化。逆变换器/逆量化器103还对通过逆量化而获得的频率变换系数执行逆频率变换。将预测信号添加至通过逆频率变换而获得的重建预测错误图像,并将结果提供至缓冲器104。

复用器106复用并输出关于预定面积的信息、关于每预定面积所允许的运动矢量数目的信息以及熵编码器102的输出数据。根据npl2中的4.1.2sequenceparametersetrbspsyntax,复用器106复用如图5中所列的num_successive_largest_coding_unit(该示例性实施方式中的numsuclcu的值)和max_num_motion_vector语法(该示例性实施方式中的maxnummv的值)。

基于上述操作,本发明中的视频编码设备生成比特流。

接下来参考图6的流程图,描述作为该示例性实施方式的特征的、写入间pu划分类型语法的操作。

如图6中所示,熵编码器102在步骤s401中对split_coding_unit_flag进行熵编码。

熵编码器102还在步骤s402中对预测模式进行熵编码,即,熵编码器102对pred_mode语法进行熵编码。

当在步骤s403中确定将被编码的cu的预测模式为间预测并且在步骤s404中确定maxnummv-currnummv≤1时,编码控制器107控制熵编码器102以跳过对inter_partitioning_idc语法的熵编码。

当在步骤s403中确定将被编码的cu为内预测时,或者当在步骤s404中确定maxnummv-currnummv≥2时,编码控制器107控制熵编码器102以在步骤s405中对关于将被编码的cu的pu划分类型信息进行熵编码。

根据npl2中的4.1.10predictionunitsyntax,如图7中的列表所表示,通过信号发送上述pred_mode语法和inter_partitioning_idc语法。该示例性实施方式具有如下特征:在“if(maxnummv-currnummv>=2”条件下,即,如果通过从针对具有预定面积的图像块所允许的运动矢量的最大数目中减去在具有该预定面积的图像块中所包含的经编码的图像块的运动矢量的数目而获得的运动矢量数目为2或更多,则通过信号发送inter_partitioning_idc语法。

该示例性实施方式中的视频编码设备包括编码控制装置,该编码控制装置用于基于根据针对具有预定面积的图像块所允许的运动矢量的最大数目的每预定面积所允许的运动矢量数目(在该示例性实施方式中为运动矢量的最大数目-1)来控制间pu划分类型和间预测方向。由于视频编码设备不传输不必要的间pu划分类型信息,因此可使比特流中所包含的间pu划分类型的比特数目的比率保持低,以便在保持压缩视频质量的同时减少存储器带宽。

同样地,对于视频解码,该示例性实施方式中的视频编码设备包括下述装置,该装置用于在比特流中嵌入关于从外部设置的预定面积、针对具有预定面积的图像块所允许的运动矢量的最大数目以及每预定面积所允许的运动矢量数目的信息,以便可从比特流中解析出间pu划分类型语法。因此,可增强视频编码设备与视频解码设备的互操作性。

此外,当具有预定面积的图像块中所包含的编码图像块的运动矢量的数目大于或等于通过从运动矢量的最大数目中减去1而获得的值时,该示例性实施方式中的视频编码设备执行控制从而不对将被编码的cu的pu报头层中的间pu划分类型语法进行熵编码,以便减少要通过信号发送的间pu划分类型语法的数目,或者仅当运动矢量的数目少于通过从运动矢量的最大数目中减去1而获得的值时,执行控制从而通过信号发送间pu划分类型语法。由于要通过信号发送的间pu划分类型语法的数目的减少使得比特流中pu报头的码量的百分比降低,因此进一步改善了视频的质量。

示例性实施方式3

示例性实施方式3中的视频解码设备对由示例性实施方式2中的视频编码设备所生成的比特流进行解码。

该示例性实施方式中的视频解码设备包括:用于对复用至比特流中的关于预定面积的信息和关于针对具有该预定面积的图像块所允许的运动矢量的数目的信息进行解复用的装置;以及解析装置,用于基于在具有预定面积的图像块中所包含的编码图像块的运动矢量的数目而从比特流中解析间pu划分类型。

如图8中所示,该示例性实施方式中的视频解码设备包括解复用器201、熵解码器202、逆变换器/逆量化器203、预测器204、缓冲器205以及解码控制器206。

解复用器201对输入比特流进行解复用,并提取关于预定面积的信息、关于针对具有预定面积的图像块所允许的运动矢量的数目的信息以及经熵编码的视频比特流。解复用器201对如图5中所列的序列参数中的num_successive_largest_coding_unit语法和max_num_motion_vector语法进行解复用。

解复用器201还将关于预定面积的信息和关于针对具有预定面积的图像块所允许的运动矢量的最大数目的信息提供至解码控制器206。

熵解码器202对视频比特流进行熵解码。熵解码器202将经熵解码的变换量化值提供至逆变换器/逆量化器203。熵解码器202将经熵解码的split_coding_unit_flag和预测参数提供至解码控制器206。

假设具有预定面积的图像块中所包含的经解码的图像块的运动矢量的数目为currnummv。在这种情况下,当将被解码的cu的预测模式为间预测并且maxnummv-currnummv≤1时,该示例性实施方式中的解码控制器206控制熵解码器202以跳过对将被解码的cu的间pu划分类型语法的熵解码。解复用器201还将将被解码的cu的间pu划分类型设置为2n×2n。当将被解码的cu的预测模式为间预测时,基于在间pu划分类型之后要解码的每个分区的间预测方向来更新currnummv。换言之,当每个分区的间预测方向为双向预测时,解码控制器206设置currnummv=currnummv+2。否则,解码控制器206更新currnummv=currnummv+1和currnummv。

逆变换器/逆量化器203以预定量化步长宽度来对亮度和色差的变换量化值进行逆量化。逆变换器/逆量化器203还对通过逆量化获得的频率变换系数执行逆频率变换。

在逆频率变换之后,预测器204基于从解码控制器206提供的预测参数,使用存储于缓冲器205中的重建图片的图像来生成预测信号。

将从预测器204提供的预测信号添加至通过逆变换器/逆量化器203所执行的逆频率变换而获得的重建预测错误图像,并将结果提供至缓冲器205作为重建图片。

继而输出存储于缓冲器205中的重建图片作为解码图像。

基于上述操作,该示例性实施方式中的视频解码设备生成解码图像。

接下来参考图9的流程图,描述作为该示例性实施方式的特征的、解析间pu划分类型语法的操作。

如图9中所示,熵解码器202在步骤s501中对split_coding_unit_flag进行熵解码以决定cu尺寸。

继而,在步骤s502中,熵解码器202对预测模式进行熵解码。换言之,熵解码器202对pred_mode语法进行熵解码。

当在步骤s503中确定预测模式为间预测并且在步骤s504中确定maxnummv-currnummv≤1时,解码控制器206在步骤s505中控制熵解码器202以跳过对间pu划分类型的熵解码,并将cu的pu划分类型设置为2n×2n(inter_partitioning_idc=0)。

当在步骤s503中确定预测模式为内预测时,或者当在步骤s504中确定maxnummv-currnummv≥2时,解码控制器206在步骤s506中控制熵解码器202以对将被解码的cu的pu划分类型进行熵解码,并将cu的pu划分类型设置成作为熵解码的结果而获得的pu划分类型。

示例性实施方式2中的视频编码设备可如图10或图11中所列,将示例性实施方式1中所使用的关于预定面积的信息(num_successive_largest_coding_unit)和关于每预定面积所允许的运动矢量的数目的信息(max_num_motion_vector)复用至图片参数集或切片报头(sliceheader)中。图10为指示图片参数集中的关于预定面积的信息和关于针对具有预定面积的图像块所允许的运动矢量的最大数目的信息的列表的说明图。图11为指示切片报头中的关于预定面积的信息和关于针对具有预定面积的图像块所允许的运动矢量的数目的信息的列表的说明图。

类似地,上述发明的视频解码设备可对来自图片参数集或切片报头的num_successive_largest_coding_unit语法和max_num_motion_vector语法进行解复用。

该示例性实施方式中的视频解码设备包括解码控制装置,该解码控制装置用于基于针对具有预定面积的图像块所允许的运动矢量的最大数目和具有上述预定面积的图像块中所包含的经编码的图像块的运动矢量的数目来控制将被解码的cu的间pu划分类型以及间预测方向,以便在预定面积内不使用数目大于针对具有预定面积的图像块所允许的运动矢量的最大数目的运动矢量。

由于防止在预定面积内使用数目大于运动矢量的最大数目的运动矢量,因此减少了存储器带宽。

示例性实施方式4

示例性实施方式4中的视频解码设备对由示例性实施方式1中的视频编码设备所生成的比特流进行解码。

该示例性实施方式中的视频解码设备包括:用于对复用至比特流中的关于预定面积的信息和关于针对具有预定面积的图像块所允许的运动矢量的最大数目的信息进行解复用的装置;以及错误检测装置,用于基于在具有上述预定面积的图像块中所包含的经编码的图像块的运动矢量的数目来检测访问包含将被解码的cu的比特流的访问单元中的错误。如在npl1的3.1accessunit中所定义,访问单元是存储一个图片的编码数据的单元。错误是指违反基于每预定面积所允许的运动矢量的数目的限制。

如图12中所示,该示例性实施方式中的视频解码设备包括解复用器201、熵解码器202、逆变换器/逆量化器203、预测器204、缓冲器205以及错误检测器207。

解复用器201以与示例性实施方式3中的解复用器201相同的方式操作,以便对输入比特流进行解复用并提取关于预定面积的信息、关于针对具有预定面积的图像块所允许的运动矢量的最大数目的信息以及经熵解码的视频比特流。解复用器201对如图5中所列的序列参数中的num_successive_largest_coding_unit语法和max_num_motion_vector语法进行解复用。

解复用器201还将关于预定面积的信息和关于针对具有预定面积的图像块所允许的运动矢量的最大数目的信息提供至错误检测器207。

熵解码器202对视频比特流进行熵解码。熵解码器202向逆变换器/逆量化器203提供经熵解码的变换量化值。熵解码器202继而向错误检测器207提供经熵解码的split_coding_unit_flag和预测参数。

错误检测器207基于从解复用器201提供的关于预定面积的信息和关于针对具有预定面积的图像块所允许的运动矢量的最大数目的信息,对从熵解码器202提供的预测参数执行错误检测,并将结果提供至预测器204。错误检测操作将在下文中描述。错误检测器207还发挥示例性实施方式3中的解码控制器206的作用。

逆变换器/逆量化器203以与示例性实施方式3中的逆变换器/逆量化器203相同的方式操作。

预测器204基于从错误检测器207提供的预测参数,使用缓冲器205中存储的重建图片的图像来生成预测信号。

缓冲器205以与示例性实施方式3中的缓冲器205相同的方式操作。

基于上述操作,该示例性实施方式中的视频解码设备生成解码图像。

参考图13的流程图,描述该示例性实施方式中的视频解码设备对访问包含将被解码的cu的比特流的访问单元中的错误进行检测的错误检测操作。

在步骤s601中,当错误检测器207确定将被解码的cu的pu的预测模式为内时,过程结束。

当预测模式为间预测时,错误检测器207在步骤s602中将m设置为将被解码的cu的pu分区的数目。

在步骤s603中,错误检测器207设置i=1。

在步骤s604中,错误检测器207解析分区i的间预测方向。在双向预测的情况下,设置currnummv=currnummv+2。否则,更新currnummv=currnummv+1和currnummv。

在步骤s605中,当可用于剩余间pu的运动矢量的数目(maxnummv-currnummv)小于剩余的分区数目(m-i)时,错误检测器207在步骤s606中确定存在错误,并将该错误通知外部。例如,错误检测器207输出发生错误的cu的地址。

当maxnummv-currnummv大于或等于剩余的分区数目(m-i)时,该程序前进至步骤s607。在步骤s607中,当i等于m时,过程结束。

在步骤s607中当i不同于m时,错误检测器207在步骤s608中设置i=i+1,并返回至步骤s604。

根据以上操作,错误检测器207检测访问包含将被解码的cu的比特流的访问单元中的错误。

以上发明的视频编码设备和视频解码设备基于针对具有预定面积的图像块所允许的运动矢量的最大数目来控制将被编码的cu的间pu划分,但类似的控制亦可通过使用针对具有预定面积的图像块所允许的间pu分区的最大数目或者针对具有预定面积的图像块所允许的最大存储器访问量来执行。

每个前述示例性实施方式均能够以硬件或以计算机程序来实现。

图14中所示的信息处理系统包括处理器1001、程序存储器1002、用于存储视频数据的存储介质1003以及用于存储比特流的存储介质1004。存储介质1003和存储介质1004可以是不同的存储介质,或相同存储介质上的不同存储区域。可以使用诸如硬盘等磁介质作为存储介质。

在图14中所示的信息处理系统中,用于实现图1、图8和图12中分别示出的各个块(除缓冲块之外)的功能的程序被存储于程序存储器1002中。处理器1001根据存储于程序存储器1002中的程序执行处理,以实现在图1、图8或图12中分别示出的视频编码设备或视频解码设备的功能。

图15为示出根据本发明的视频编码设备的主要部分的框图。如图15中所示,根据本发明的视频编码设备是使用间预测来编码视频的视频编码设备,其包括编码控制装置11(作为示例,图1中示出的编码控制器107),该编码控制装置11用于基于针对具有预定面积的图像块所允许的运动矢量的最大数目(pa)和在具有预定面积的图像块中所包含的经编码的图像块的运动矢量的数目(pb)来控制将被编码的cu的间pu划分类型。

图16为示出根据本发明的视频解码设备的主要部分的框图。如图16中所示,根据本发明的视频解码设备是使用间预测来解码视频的视频解码设备,其包括解码控制装置21(作为示例,图8中示出的解码控制器206),该解码控制装置21用于基于针对具有预定面积的图像块所允许的运动矢量的最大数目(pa)和在具有预定面积的图像块中所包含的经解码的图像块的运动矢量的数目(pb)来控制将被解码的cu的间pu划分类型。

虽然已参考示例性实施方式和示例对本发明进行了描述,但本发明并不限于前述示例性实施方式和示例。在本发明范围内可对本发明的结构和细节做出可由本领域技术人员所了解的各种改变。

本申请要求基于在2011年1月13日提交的日本专利申请第2011-4963号的优先权,其公开内容整体并入本文。

附图标记列表

11编码控制装置

21解码控制装置

101变换器/量化器

102熵编码器

103逆变换器/逆量化器

104缓冲器

105预测器

106复用器

107、108编码控制器

201解复用器

202熵解码器

203逆变换器/逆量化器

204预测器

205缓冲器

206解码控制器

207错误检测器

1001处理器

1002程序存储器

1003存储介质

1004存储介质

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1