图像处理设备和方法与流程

文档序号:11216305阅读:243来源:国知局
图像处理设备和方法与流程

本发明申请是申请日期为2011年3月11日、申请号为“201180015616.0”、发明名称为“图像处理设备和方法”的发明专利申请的分案申请。

本发明涉及一种图像处理设备和方法,具体地,涉及一种能够实现较高的编码效率的图像处理设备和方法。



背景技术:

近年来,已广泛地使用如下设备:这些设备利用作为图像信息的特征的冗余,通过采用将图像信息处置为数字信号的编码格式来使图像经历压缩编码,并且此时通过诸如离散余弦变换等的正交变换和运动补偿来压缩图像,以便执行极为高效的信息传送和存储。该编码方法的示例包括mpeg(运动图片专家组)等。

特别地,mpeg2(iso/iec13818-2)被定义为通用图像编码格式,并且是涵盖隔行扫描图像和顺序扫描图像、以及标准分辨率图像和高清图像两者的标准。例如,现在范围广泛的用于专业用途以及用于消费者用途的应用已广泛采用mpeg2。通过采用mpeg2压缩格式,在例如具有720×480个像素的标准分辨率的隔行扫描图像的情况下,分配4至8mbps的码量(位率)。通过采用mpeg2压缩格式,在例如具有1920×1088个像素的高分辨率的隔行扫描图像的情况下,分配18至22mbps的码量(位率)。因此,可以实现高压缩率和出色的图像质量。

mpeg2主要针对适于广播用途的高图像质量编码,但是未处置比mpeg1的码量低的码量(位率),即具有较高压缩率的编码格式。由于个人数字助理的普及,预见到对这种编码格式的需求将从现在开始增加,并且作为响应,已执行mpeg4编码格式的标准化。对于图像编码格式,其规范在1998年12月被确认为国际标准iso/iec14496-2。

此外,近年来,被称为h.26l(itu-tq6/16vceg)的标准的标准化已在进行,其目的在于用于电视会议用途的图像编码。对于h.26l,已知较之诸如mpeg2或mpeg4的传统的编码格式,尽管需要较大的计算量用于其编码和解码,但是实现了较高的编码效率。再者,当前,作为mpeg4活动的一部分,以该h.26l为基础利用h.26l不支持的功能以实现更高的编码效率的标准化已被执行,作为增强压缩视频编码的联合模型。作为标准化的进程,h.264和mpeg4part10(高级视频编码,以下称为h.264/avc)在2003年3月成为国际标准。

此外,作为其扩展,在2005年2月完成了frext(保真度范围扩展)的标准化,其包括诸如rgb、4:2:2或4:4:4的操作所需的编码工具以及由mpeg-2规定的8×8dct和量化矩阵。因此,获得了能够使用h.264/avc来良好地表达电影中包括的影片噪声的编码格式,并且该编码格式将用于广泛的应用,诸如蓝光盘(注册商标)。

然而,最近,对更高压缩比编码的需要增加,以诸如压缩约4000×2000个像素的图像,这是高画质(hi-vision)图像的像素数目的四倍,或者诸如对在诸如互联网的具有有限的传送容量的环境中分送高画质图像的需求。因此,在itu-t下的vceg(=视频编码专家组)继续进行关于提高编码效率的研究。

顺便提及,例如,对于mpeg2格式,通过线性内插处理执行具有1/2像素精度的运动预测/补偿处理。另一方面,对于h.264/avc格式,使用6抽头fir(有限脉冲响应滤波器)滤波器作为内插滤波器来执行具有1/4像素精度的运动预测/补偿处理。

图1是用于描述根据h.264/avc格式的具有1/4像素精度的运动预测/补偿处理的示图。对于h.264/avc格式,使用6抽头fir(有限脉冲响应滤波器)滤波器执行具有1/4像素精度的运动预测/补偿处理。

对于图1中的示例,位置a指示整数精度像素的位置,并且位置b、c和d指示具有1/2像素精度的位置,并且位置e1、e2和e3指示具有1/4像素精度的位置。首先,在下文中通过下式(1)定义clip()。

[数学式1]

注意,在输入图像具有8位精度的情况下,max_pix的值是255。

使用6抽头fir滤波器通过下式(2)生成位置b和d的像素值。

[数学式2]

f=a-2-5·a-1+20·a0+20·a1-5·a2+a3

b,d=clip1((f+16)>>5)…(2)

通过在水平方向和竖直方向上应用6抽头fir滤波器通过下式(3)生成位置c的像素值。

[数学式3]

f=b-2-5·b-1+20·b0+20·b1-5·b2+b3

或者

f=d-2-5·d-1+20·d0+20·d1-5·d2+d3

c=clip1((f+512)>>10)…(3)

注意,在水平方向和竖直方向两者上执行积和处理之后,最后执行仅一次clip处理。

如下式(4)中所示通过线性内插生成位置e1至e3。

[数学式4]

e1=(a+b+1)>>1

e2=(b+d+1)>>1

e3=(b+c+1)>>1...(4)

再者,对于mpeg2格式,在帧运动补偿模式的情况下,按16×16个像素的增量执行运动预测/补偿处理,并且在场运动补偿模式的情况下,按16×8个像素的增量针对每个第一场和第二场执行运动预测/补偿处理。

另一方面,对于h.264/avc格式的运动预测补偿,宏块尺寸是16×16个像素,但是可以利用可变的块尺寸来执行运动预测/补偿。

图2是图示根据h.264/avc格式的运动预测/补偿的块尺寸的示例的示图。

在图2中在上层按左起的顺序示出了被分成16×16像素、16×8像素、8×16像素和8×8像素分区的16×16个像素构成的宏块。在图2中在下层按左起的顺序示出了被分成8×8像素、8×4像素、4×8像素和4×4像素子分区的8×8像素分区。

就是说,对于h.264/avc格式,一个宏块可以被分成16×16像素、16×8像素、8×16像素和8×8像素分区之一,每个分区具有独立的运动向量信息。再者,8×8像素分区可以被分成8×8像素、8×4像素、4×8像素和4×4像素子分区之一,每个子分区具有独立的运动向量信息。

再者,对于h.264/avc格式,还执行多个参考帧的运动预测/补偿处理。

图3是用于描述根据h.264/avc格式的多参考帧的预测/补偿处理的示图。对于h.264/avc格式,规定了多参考帧(multi-referenceframe)的运动预测/补偿方法。

对于图3中的示例,示出了从现在起待编码的当前帧fn,以及编码帧fn-5至fn-1。在时间轴上,帧fn-1是在当前帧fn之紧邻的先前个帧的帧,帧fn-2是在当前帧fn之前两个帧的帧,并且帧fn-3是在当前帧fn之前三个帧的帧。相似地,帧fn-4是在当前帧fn之前四个帧的帧,并且帧fn-5是在当前帧fn之前五个帧的帧。通常,帧在时间轴上距当前帧fn越近,则将加上的参考图片码数(ref_id)就越小。具体地,帧fn-1具有最小的参考图片码数,并且随后,参考图片码数按fn-2,…,fn-5的顺序是小的。

对于当前帧fn,示出了块a1和块a2,通过假设块a1与在当前帧fn之前两个帧的帧fn-2的块a1'相关来搜索运动向量v1。相似地,通过假设块a2与在当前帧fn之前四个帧的帧fn-4的块a1'相关来搜索运动向量v2。

如上文所述,对于h.264/avc格式,可以通过存储器中存储的多个参考帧在一个帧(图片)中参考不同的参考帧。就是说,可以针对一个图片中的每个块提供独立参考帧信息(参考图片码数(ref_id)),使得例如块a1参考帧fn-2,并且块a2参考帧fn-4。

这里,块指示参照图2描述的16×16像素、16×8像素、8×16像素和8×8像素分区。8×8像素子块分区内的参考帧必须一致。

如上文所述,对于h.264/avc格式,通过执行上文参照图1描述的1/4像素运动预测/补偿处理,以及上文参照图2和图3描述的运动预测/补偿处理,生成了大量的运动向量信息,并且如果这些信息在不变的情况下被编码,则引起编码效率的劣化。与此响应,对于h.264/avc格式,根据图4中所示的方法已实现了运动向量编码信息的减少。

图4是用于描述根据h.264/avc格式的运动向量信息生成方法的示图。

对于图4中的示例,示出了从现在起待编码的当前块e(例如16×16个像素),以及与当前块e相邻的已被编码的块a至d。

就是说,块d与当前块e的左上侧相邻,块b与当前块e的上侧相邻,块c与当前块e的右上侧相邻,并且块a与当前块e的左侧相邻。注意,块a至d未被分开的原因在于每个块表示具有上文参照图2描述的16×16个像素至4×4个像素的一个结构的块。

例如,假设针对x(=a,b,c,d,e)的运动向量信息由mvx表示。首先,使用关于块a、b和c的运动向量信息通过中值预测通过下式(5)生成针对当前块e的预测运动向量信息pmve。

pmve=med(mva,mvb,mvc)...(5)

由于诸如处于图像帧的边缘处、仍未被编码等的原因,关于块c的运动向量信息可能是无用的(可能不可用)。在该情况下,使用关于块d的运动向量信息替代关于块c的运动向量信息。

使用pmve通过下式(6)生成用作针对当前块e的运动向量信息的、将添加到压缩图像的报头部分的数据mvde。

mvde=mve-pmve...(6)

注意,事实上,针对运动向量信息的水平方向和竖直方向上的分量独立地执行处理。

通过这种方式,生成了预测运动向量信息,作为基于与相邻块的相关性生成的预测运动向量信息和运动向量信息之间的差的差运动向量信息被添加到压缩图像的报头部分,从而减少了运动向量信息。

再者,尽管关于b图片的运动向量信息的信息量是巨大的,但是对于h.264/avc格式,准备了被称为直接模式的模式。在直接模式中,运动向量信息未存储在压缩图像中。

就是说,在解码侧,通过当前块周围的运动向量信息,或者参考图片,从并置块的运动向量信息提取当前块的运动向量信息,该并置块是具有与当前块相同的坐标的块。因此,运动向量信息不必传送到解码侧。

该直接模式包括两种类型,即空间直接模式(spatialdirectmode)和时间直接模式(temporaldirectmode)。空间直接模式是主要利用空间方向上(图片内的水平和竖直二维空间)的运动信息的相关性的模式,并且通常在图像包括运动速度变化的相似运动的情况下具有优势。另一方面,时间直接模式是主要利用时间方向上的运动信息的相关性的模式,并且通常在图像包括运动速度恒定的不同运动的情况下具有优势。

使用这些空间直接模式和时间直接模式中的哪个模式可以针对每个切片进行切换。

再次参照图4,将描述根据h.264/avc格式的空间直接模式。对于图4中的示例,如上文所述,示出了从现在起待编码的当前块e(例如,16×16个像素)以及与当前块e相邻的已被编码的块a至d。再者,例如,针对x(=a,b,c,d,e)的运动向量信息由mvx表示。

使用关于块a、b和c的运动向量信息通过中值预测通过上述式(5)生成针对当前块e的预测运动向量信息pmve。再者,通过下式(7)表示空间直接模式中的针对当前块e的运动向量信息mve。

mve=pmve...(7)

就是说,在空间直接模式中,通过中值预测生成的预测运动向量被取作当前块的运动向量信息。就是说,根据编码块的运动向量信息生成当前块的运动向量信息。因此,也可以在解码侧根据空间直接模式生成运动向量,并且因此,运动向量信息不必传送到解码侧。

接下来,将参照图5描述根据h.264/avc格式的时间直接模式。

对于图5中的示例,时间轴t表示时间的消逝,从左起按顺序示出了l0(list0)参考图片、从现在起待编码的当前图片以及l1(list1)参考图片。注意,对于h.264/avc格式,l0参考图片、当前图片和l1参考图片的排列不限于该顺序。

当前图片的当前块包括在例如b切片中。因此,对于当前图片的当前块,针对l0参考图片和l1参考图片计算基于时间直接模式的l0运动向量信息mvl0和l1运动向量信息mvl1。

再者,对于l0参考图片,基于l0参考图片和l1参考图片计算并置块中的运动向量信息mvcol,该并置块是位于与从现在起待编码的当前块相同的空间地址(坐标)的块。

现在,假设当前图片和l0参考图片之间的在时间轴上的距离被取作tdb,并且l0参考图片和l1参考图片之间的在时间轴上的距离被取作tdd。在该情况下,可以通过下式(8)计算当前图片中的l0运动向量信息mvl0和当前图片中的l1运动向量信息mvl1。

[数学式5]

注意,对于h.264/avc格式,不存在针对压缩图像中的当前图片的等同于时间轴t上的距离tdb和tdd的信息。因此,使用poc(图片顺序计数)作为距离tdb和tdd的实际值,poc是指示图片的输出序列的信息。

再者,对于h.264/avc格式,可以按16×16像素宏块或者8×8像素块的增量来定义直接模式。

现在,参照图4,非专利文献1提出了如下的使用中值预测来改进运动向量编码的方法。

就是说,提出了自适应地使用通过上述式(5)获得的空间预测运动向量信息(空间预测器),时间预测运动向量信息(时间预测器)以及将参照图6描述的空间-时间预测运动向量信息(空间-时间预测器)中的一个,作为预测运动向量信息。

对于图6中的示例,示出了作为待编码的当前帧的帧n,以及作为执行运动向量的搜索时参考的参考帧的帧n-1。

在帧n中,现将编码的当前块具有针对当前块指示的运动向量信息mv,以及与当前块相邻的已编码块,每个已编码块具有针对各个块的运动向量信息mva、mvb、mvc和mvd。

具体地,在左上侧与当前块相邻的块具有对应于该块指示的运动向量信息mvd,并且在上侧与当前块相邻的块具有对应于该块指示的运动向量信息mvb。在右上侧与当前块相邻的块具有对应于该块指示的运动向量信息mvc,并且在左侧与当前块相邻的块具有对应于该块指示的运动向量信息mva。

在帧n-1中,与当前块对应的块(并置块)具有针对对应块指示的运动向量信息mvcol。这里注意,对应块是与当前帧不同的已编码帧(位于之前或之后的帧)中的块,并且是与当前块对应的位置处的块。

再者,在帧n-1中,与对应块相邻的块具有针对每个块分别指示的运动向量信息mvt4、mvt0、mvt7、mvt1、mvt3、mvt5、mvt2和mvt6。

具体地,在左上侧与对应块相邻的块具有对应于该块指示的运动向量信息mvt4,并且在上侧与对应块相邻的块具有对应于该块指示的运动向量信息mvt0。在右上侧与对应块相邻的块具有对应于该块指示的运动向量信息mvt7,并且在左侧与对应块相邻的块具有对应于该块指示的运动向量信息mvt1。在右侧与对应块相邻的块具有对应于该块指示的运动向量信息mvt3,并且在左下侧与对应块相邻的块具有对应于该块指示的运动向量信息mvt5。在下侧与对应块相邻的块具有对应于该块指示的运动向量信息mvt2,并且在右下侧与对应块相邻的块具有对应于该块指示的运动向量信息mvt6。

再者,尽管上述式(5)中的预测运动向量信息pmv是借助与当前块相邻的块的运动向量信息而生成的,但是通过下式(9)和(10)定义各个预测运动向量信息pmvtm5、pmvtm9和pmvspt。注意在这些信息中,pmvtm5和pmvtm9是时间预测运动向量信息,并且pmvspt是空间-时间预测运动向量信息。

时间预测器:

pmvtm5=med(mvcol,mvt0,···,mvt3)

pmvtm9=med(mvcol,mvt0,···,mvt7)...(9)

空间-时间预测器:

pmvspt=med(mvcol,mvcol,mva,mvb,mvc)...(10)

对于使用每个预测运动向量信息的情况计算成本函数值,并且因此选择使用式(5)、式(9)和式(10)中的哪个的预测运动向量信息。指示关于哪个预测运动向量信息已被用于每个块的信息的标志随后被传送到解码侧。

注意,上述附图和式也将被适当地用在本申请的描述中。

引用文献列表

非专利文献1:"motionvectorcodingwithoptimalpmvselection",vceg-ai22,itu-telecommunicationsstandardizationsectorstudygroup16question6,july2008



技术实现要素:

技术问题

顺便提及,利用根据上述非专利文献1的建议,针对哪个预测运动向量信息分配哪个码数是固定的。

现在,对于h.264/avc格式,规定了无损编码,诸如可变长度编码,如cavlc(上下文自适应可变长度编码),或者算术编码,如cabac(上下文自适应二值算术编码)。

在这两种cavlc格式和cabac格式的情况下,具有较高的出现频率的预测运动向量信息应被分配较小的码数,并且对于每个序列和位率,每个预测运动向量信息的出现频率应是不同的。然而,这些是固定的,可能干扰编码效率的提高。

考虑到该情况进行了本公开,并且本公开使得能够实现较高的编码效率。

对问题的解决方案

公开了一种能够实现较高的编码效率的图像处理设备和方法。预测运动向量生成单元(76)使用所提供的附近区域的运动向量信息来生成多种类型的预测运动向量信息,并且向运动估计/补偿单元(75)提供预测运动向量信息和由码数分配单元(77)分配给预测运动向量信息的码数的每个集合。码数分配单元(77)向预测运动向量生成单元(76)和可逆编码单元(66)提供关于将哪个码数分配给哪个预测运动向量信息的码数分配信息。该技术能够应用于例如以h.264/avc方法为基础进行编码的图像编码设备中。

本公开的一个方面是一种图像处理设备,其包括:码数分配单元,配置成根据图像的运动特征,控制将码数分配给预测运动向量信息的方式;以及预测运动向量生成单元,配置成使用作为待处理的当前区域的外围区域的运动信息的外围运动信息来生成区域的预测运动向量信息,并且依据由码数分配单元已决定的分配码数的方式,将码数分配给已生成的预测运动向量信息。

码数分配单元可以针对预测处理的每个递增区域,控制将码数分配给预测运动向量信息的方式。

在区域是静止区域的情况下,码数分配单元可以控制分配码数的方式,使得小的码数被分配给时间预测运动向量信息。

在区域是静止区域的情况下,预测运动向量生成单元可以仅生成时间预测运动向量信息,并且向时间预测运动向量信息分配由码数分配单元决定的码数。

在区域是移动区域的情况下,码数分配单元可以控制分配码数的方式,使得小的码数被分配给空间预测运动向量信息。

图像处理设备可以进一步包括:静止区域确定单元,配置成确定当前区域是否是静止区域,码数分配单元依据静止区域确定单元的确定结果,控制将码数分配给当前区域的预测运动向量信息的方式。

静止区域确定单元可以使用当前区域的并置区域的运动信息来确定当前区域是否是静止区域。

在当前区域的并置区域的运动信息的水平分量和运动信息的竖直分量的绝对值在预定阈值内的情况下,并且还在参考索引是0,应用ref_picr_reordering,或者参考索引具有指示紧邻的先前图片的poc值的情况下,静止区域确定单元可以将当前区域确定为静止区域。

码数分配单元可以根据用户设定控制将码数分配给预测运动向量信息的方式。

码数分配单元可以控制将码数分配给预测运动向量信息的方式以便提高编码效率。

码数分配单元可以控制将码数分配给预测运动向量信息的方式以便使主观图像质量最优化。

码数分配单元可以针对每个切片控制将码数分配给预测运动向量信息的方式。

图像处理设备可以进一步包括:标志生成单元,配置成生成指示其中分配码数的方式能够改变的可变模式的标志。

预测运动向量生成单元可以针对每个预测模式生成多个预测运动向量信息;图像处理设备进一步包括:差运动向量生成单元,配置成针对每个预测模式,从预测运动向量生成单元生成的多个预测运动向量信息中选择最优预测运动向量信息,并且生成作为针对当前区域的运动向量的差的差运动向量;模式确定单元,配置成从各预测模式中确定最优预测模式;以及传送单元,配置成传送模式确定单元确定的预测模式的差运动向量信息,以及预测模式的预测运动向量信息的码数。

图像处理设备可以进一步包括:编码单元,配置成对模式确定单元确定的预测模式的差运动向量信息,以及预测模式的预测运动向量信息的码数进行编码;传送单元传送编码单元编码的差运动向量信息,以及预测运动向量信息的码数。

本公开的一个方面也是一种图像处理设备的图像处理方法,该方法包括:码数分配单元根据图像的运动特征,控制将码数分配给预测运动向量信息的方式;以及预测运动向量生成单元使用作为待处理的当前区域的外围区域的运动信息的外围运动信息来生成区域的预测运动向量信息,并且依据已决定的分配码数的方式,将码数分配给已生成的预测运动向量信息。

本公开的另一方面是一种图像处理设备,其包括:码数分配单元,配置成根据图像的运动特征,控制将码数分配给预测运动向量信息的方式;以及预测运动向量重建单元,配置成获得待处理的当前区域的预测运动向量信息的码数,并且依据由码数分配单元已决定的分配码数的方式,根据码数重建预测运动向量信息。

码数分配单元可以针对预测处理的每个递增区域,控制将码数分配给预测运动向量信息的方式。

在区域是静止区域的情况下,码数分配单元可以控制分配码数的方式,使得小的码数被分配给时间预测运动向量信息。

在区域是移动区域的情况下,码数分配单元可以控制分配码数的方式,使得小的码数被分配给空间预测运动向量信息。

图像处理设备可以进一步包括:静止区域确定单元,配置成确定当前区域是否是静止区域;码数分配单元依据静止区域确定单元的确定结果,控制将码数分配给当前区域的预测运动向量信息的方式。

静止区域确定单元可以使用当前区域的并置区域的运动信息来确定当前区域是否是静止区域。

在当前区域的并置区域的运动信息的水平分量和运动信息的竖直分量的绝对值在预定阈值内的情况下,并且还在参考索引是0,应用ref_picr_reordering,或者参考索引具有指示紧邻的先前图片的poc值的情况下,静止区域确定单元可以将当前区域确定为静止区域。

码数分配单元可以根据用户设定控制将码数分配给预测运动向量信息的方式。

码数分配单元可以控制将码数分配给预测运动向量信息的方式以便提高编码效率。

码数分配单元可以控制将码数分配给预测运动向量信息的方式以便使主观图像质量最优化。

码数分配单元可以针对每个切片控制将码数分配给预测运动向量信息的方式。

图像处理设备可以进一步包括:标志获得单元,配置成获得指示其中分配码数的方式能够改变的可变模式的标志;并且在标志获得单元获得的标志指示可变模式的情况下,码数分配单元可以控制将码数分配给预测运动向量信息的方式。

本发明的另一方面也是一种图像处理设备的图像处理方法,该方法包括:码数分配单元根据图像的运动特征,控制将码数分配给预测运动向量信息的方式;以及预测运动向量重建单元获得待处理的当前区域的预测运动向量信息的码数,并且依据已决定的分配码数的方式,根据码数重建预测运动向量信息。

对于本发明的一个方面,根据图像的运动特征,控制将码数分配给预测运动向量信息的方式,使用作为待处理的当前区域的外围区域的运动信息的外围运动信息来生成区域的预测运动向量信息,并且依据由码数分配单元已决定的分配码数的方式,将码数分配给已生成的预测运动向量信息。

对于本发明的另一方面,根据图像的运动特征,控制将码数分配给预测运动向量信息的方式,获得待处理的当前区域的预测运动向量信息的码数,并且依据由码数分配单元已决定的分配码数的方式,根据码数重建预测运动向量信息。

本发明的另一方面是一种图像处理设备,其包括:码数获得单元,其获得根据针对空间预测运动向量和时间预测运动向量的出现而分配给空间预测运动向量和时间预测运动向量的码数;以及预测运动向量重建单元,其使用由码数获得单元获得到的码数,来重建作为图像的处理对象的当前区域的预测运动向量。

本发明的另一方面是一种图像处理方法,包括:获得根据针对空间预测运动向量和时间预测运动向量的出现而分配给空间预测运动向量和时间预测运动向量的码数,使用码数来重建作为图像的处理对象的当前区域的预测运动向量。

注意,上述图像处理设备可以均为独立的设备,或者可以是构成单个图像编码设备或图像解码设备的内部块。

本发明的有利效果

根据本公开,可以提高编码效率和主观图像质量。再者,根据本公开,可以实现较高的编码效率。

附图说明

图1是用于描述具有1/4像素精度的运动预测/补偿处理的示图。

图2是用于描述具有可变块尺寸的运动预测/补偿处理的示图。

图3是用于描述多参考帧的运动预测/补偿处理的示图。

图4是用于描述运动向量信息生成方法的示例的示图。

图5是用于描述时间直接模式的示图。

图6是描述用于生成预测运动向量信息的方法示例的示图。

图7是图示图像编码设备的实施例的配置的框图。

图8是用于描述指数哥伦布编码的示图。

图9是用于描述语法元素和无符号码数之间的相关性关系的示图。

图10是表示执行cabac编码的无损编码单元的配置示例的框图。

图11是用于描述cabac编码的示图。

图12是图示二值表的示图。

图13是图示本技术的优点的示图。

图14是用于描述切片报头语法的示图。

图15是图示图7中的运动预测/补偿单元的配置示例的框图。

图16是用于描述图7中的图像编码设备的编码处理的流程图。

图17是用于描述图16中的步骤s21中的帧内预测处理的流程图。

图18是用于描述图16中的步骤s22中的帧间运动预测处理的流程图。

图19是用于描述图18中的步骤s53中的预测运动向量确定处理的流程图。

图20是图示图像解码设备的实施例的配置的框图。

图21是图示图20中的运动预测/补偿单元的配置示例的框图。

图22是用于描述图20中的图像解码设备的解码处理的流程图。

图23是用于描述图22中的步骤s138中的预测处理的流程图。

图24是图示图像编码设备的另一实施例的框图。

图25是图示扩展宏块尺寸的示例的示图。

图26是图示计算机硬件的配置示例的框图。

图27是图示电视接收器的主要配置示例的框图。

图28是图示蜂窝电话的主要配置示例的框图。

图29是图示硬盘记录器的主要配置示例的框图。

图30是图示摄像装置的主要配置示例的框图。

图31是图示编码单元的配置示例的示图。

图32是图示图像编码设备的另一配置示例的框图。

图33是用于描述相邻区域的示例的示图。

图34是图示运动预测/补偿单元和运动向量编码单元的主要配置示例的框图。

图35是用于描述帧间运动预测处理的流程示例的流程图。

图36是图示图像解码设备的另一配置示例的框图。

图37是图示运动预测/补偿单元和运动向量解码单元的主要配置示例的框图。

图38是用于描述预测处理的流程的示例的流程图。

图39是用于描述帧间运动预测处理的流程的示例的流程图。

具体实施方式

在下文中,将参照附图描述本技术的实施例。

[图像编码设备的配置示例]

图7表示用作图像处理设备的图像编码设备的实施例的配置。

该图像编码设备51使用例如h.264和mpeg-4part10(高级视频编码)(以下称为h.264/avc)格式为基础使图像经历压缩编码。就是说,对于图像编码设备51,使用h.264/avc格式中规定的运动补偿块模式。

对于图7中的示例,图像编码设备51由a/d转换单元61、屏幕重排缓冲器62、计算单元63、正交变换单元64、量化单元65、无损编码单元66、存储缓冲器67、逆量化单元68、逆正交变换单元69、计算单元70、解块滤波器71、帧存储器72、开关73、帧内预测单元74、运动预测/补偿单元75、预测运动向量生成单元76、码数分配单元77、预测图像选择单元78、和速率控制单元79构成。

a/d转换单元61执行输入图像的a/d转换,并且输出到屏幕重排缓冲器62用于存储。屏幕重排缓冲器62根据gop(图片组)将以显示的顺序存储的帧的图像重新排列成用于编码的帧顺序。

计算单元63从自屏幕重排缓冲器62读出的图像中减去由预测图像选择单元78选择的、来自帧内预测单元74的预测图像或者来自运动预测/补偿单元75的预测图像,并且它们的差信息输出到正交变换单元64。正交变换单元64使来自计算单元63的差信息经历诸如离散余弦变换、karhunen-loéve(卡洛南-洛伊)变换等的正交变换,并且输出其变换系数。量化单元65对正交变换单元64输出的变换系数进行量化。

作为量化单元65的输出的量化的变换系数被输入到无损编码单元66,并且经历诸如可变长度编码、算术编码等的无损编码并且被压缩。

无损编码单元66从帧内预测单元74获得指示帧内预测的信息,并且从运动预测/补偿单元75获取指示帧间预测模式等的信息。注意,在下文中,指示帧内预测的信息和指示帧间预测的信息将被分别称为帧内预测模式信息和帧间预测模式信息。

无损编码单元66对量化的变换系数进行编码,并且还对指示帧内预测的信息、指示帧间预测模式的信息等进行编码,并且将这些信息取作压缩图像中的报头信息的一部分。无损编码单元66将编码数据提供给存储缓冲器67用于存储。

例如,通过无损编码单元66,执行诸如可变长度编码、算术编码等的无损编码处理。可变长度编码的示例包括h.264/avc格式确定的cavlc(上下文自适应可变长度编码)。算术编码的示例包括cabac(上下文自适应二值算术编码)。

存储缓冲器67将从无损编码单元66提供的数据作为通过h.264/avc格式编码的压缩图像输出到例如图中未示出的下游图像解码设备、存储设备或传送路径等。

再者,从量化单元65输出的量化的变换系数还被输入到逆量化单元68,经历逆量化,并且随后进一步在逆正交变换单元69处经历逆正交变换。计算单元70使经逆正交变换的输出与从预测图像选择单元78提供的预测图像相加,并且变为局部解码图像。解块滤波器71从解码图像中去除块失真,并且随后提供给帧存储器72用于存储。在解块滤波器71执行解块滤波器处理之前的图像也被提供给帧存储器72用于存储。

开关73将帧存储器72中存储的参考图像提供给运动预测/补偿单元75或帧内预测单元74。

利用该图像编码设备51,例如,来自屏幕重排缓冲器62的i图片、b图片和p图片作为将经历帧内预测(还被称为帧内处理)的图像被提供给帧内预测单元74。再者,从屏幕重排缓冲器62读出的b图片和p图片作为将经历帧间预测(还被称为帧间处理)的图像被提供给运动预测/补偿单元75。

帧内预测单元74基于从屏幕重排缓冲器62读出的将经历帧内预测的图像以及从帧存储器72提供的参考图像,执行用作候选者的所有帧内预测模式的帧内预测处理,以生成预测图像。此时,帧内预测单元74针对用作候选者的所有帧内预测模式计算成本函数值,并且选择计算的成本函数值提供最小值的帧内预测模式作为最优帧内预测模式。

帧内预测单元74将在最优帧内预测模式中生成的预测图像及其成本函数值提供给预测图像选择单元78。在最优帧内预测模式中生成的预测图像已被预测图像选择单元78选择的情况下,帧内预测单元74将指示最优帧内预测模式的信息提供给无损编码单元66。无损编码单元66对该信息进行编码,并且将其取作压缩图像中的报头信息的一部分。

从屏幕重排缓冲器62读出的将经历帧间处理的图像以及经由开关73来自帧存储器72的参考图像被提供给运动预测/补偿单元75。运动预测/补偿单元75执行所有候选帧间预测模式的运动搜索(预测),使用搜索的运动向量使参考图像经历补偿处理,并且生成预测图像。

运动预测/补偿单元75针对所有候选帧间预测模式使用搜索的运动向量来计算成本函数值。此时,运动预测/补偿单元75使用由预测运动向量生成单元76生成的多种类型的预测运动向量信息以及分配给它们的码数来计算成本函数值。

运动预测/补偿单元75在候选帧间预测模式的每个块中选择产生成本函数值的最小值的预测运动向量信息。此外,运动预测/补偿单元75借助于针对每个块选择的预测运动向量信息对作为候选者的帧间预测模式的成本函数值进行比较,从而将产生最小值的帧间预测模式确定为最优帧间预测模式。运动预测/补偿单元75随后将在最优帧间预测模式中生成的预测图像及其成本函数值提供给预测图像选择单元78。

在预测图像选择单元78选择了在最优帧间预测模式中生成的预测图像的情况下,运动预测/补偿单元75将指示最优帧间预测模式的信息(帧间预测模式信息)输出到无损编码单元66。

此时,作为运动向量信息和预测运动向量信息之间的差的差运动向量信息、关于该预测运动向量信息的码数等,也被输出到无损编码单元66。无损编码单元66还使来自运动预测/补偿单元75的信息经历诸如可变长度编码、算术编码等的无损编码处理,并且插入到压缩图像的报头信息中。

从运动预测/补偿单元75向预测运动向量生成单元76提供已通过作为对象的块的外围块获得的运动向量信息。注意,外围块不仅包括在空间上处于外围的块,而且包括在空间-时间上处于外围的块,即在时间上在当前帧的紧邻的先前个帧中的在空间上处于外围的块。

预测运动向量生成单元76通过上述式(5)、式(9)和式(10)等,使用所提供的外围运动向量信息来生成多种类型的预测运动向量信息。预测运动向量生成单元76随后将每个预测运动向量信息以及由码数分配单元77分配给预测运动向量信息的码数提供给运动预测/补偿单元75。

码数分配单元77通过借助于未示出的操作输入单元等的用户设定,或者根据应用设定,向每个预测运动向量信息分配码数。码数分配单元77随后向预测运动向量生成单元76和无损编码单元66提供指示预测运动向量信息和码数之间的相关性,即哪个预测运动向量信息已被分配哪个码数的码数分配信息。再者,码数分配单元77生成指示处于其中针对预测运动向量信息的码数分配能够改变的可变模式还是其中使用缺省设定的固定模式的标志信息,并且将生成的标志信息提供给无损编码单元66。

预测图像选择单元78基于从帧内预测单元74或运动预测/补偿单元75输出的成本函数值确定最优帧内预测模式和最优帧间预测模式中的最优预测模式。预测图像选择单元78随后选择已确定的最优预测模式的预测图像,并且将其提供给计算单元63和70。此时,预测图像选择单元78将预测图像的选择信息提供给帧内预测单元74或运动预测/补偿单元75。

速率控制单元79基于存储缓冲器67中存储的压缩图像控制量化单元65的量化操作的速率,使得不会发生上溢或下溢。

[h.264/avc格式的描述]

首先,除了上文描述的关于背景技术的内容之外,将针对图像编码设备51所基于的h.264/avc格式进行进一步的描述。

如上文针对图7所述,对于h.264/avc格式,可以将cavlc和cabac之一用作可变长度编码。

首先,将描述cavlc格式。对于cavlc,根据附近块中的正交变换系数的出现切换的vlc表格被用于正交变换系数的编码。图8中所示的指数哥伦布(exponentialgolomb)编码用于其他语法元素的编码。

对于图8中的指数哥伦布编码,例如,码数(codenumber)0和码字(codewords)1对应,码数1和码字010对应,并且码数2和码字011对应。再者,码数3和码字00100对应,码数4和码字00101对应,码数5和码字00110对应,并且码数6和码字00111对应。

再者,对于诸如运动向量的语法元素,存在出现负值的可能性。因此,在存在出现负值的可能性的语法元素的情况下,这些语法元素被基于图9中所示的相关关系的没有符号的码数替换,并且在被替换为没有符号的码数之后,图8中的指数哥伦布编码用于其编码。

图9图示了码数和语法元素v之间的相关关系。就是说,通过基于该相关关系,例如,语法元素v=0被替换为码数0,语法元素v=1被替换为码数1,并且语法元素v=-1被替换为码数2。再者,语法元素v=2被替换为码数3,语法元素v=-2被替换为码数4,并且语法元素v=3被替换为码数5。

接下来,将描述根据cavlc的正交变换系数的编码处理。

首先,从高频向低频扫面被转换成一维数据的正交变换系数。其次,对numcoef(不为零的系数数目)和t1s(当从高频向低频扫描时为±1的系数数目,最大值是3)进行编码。此时,根据外围块中的numcoef切换vlc表格。

第三,执行level(dct系数值)的编码。例如,对于t1s,仅对正/负进行编码。其他系数被分配码数(codenumber)并且被编码。此时,根据帧内/帧间、量化参数qp和最后编码的级别来切换vlc表格。

第四,执行run的编码。此时,根据numcoef在totalzero的编码中切换vlc表格。再者,依次执行run_before(非0系数之前持续的0的数目)的编码。对于该编码,根据zerosleft(保留的非0系数的数目)切换vlc表格。在zerosleft=0时,编码处理结束。

接下来,将描述cabac格式。

图10图示了执行cabac编码的无损编码单元的配置示例。在图10中所示的示例中,无损编码单元由上下文建模单元81、二值化单元82以及包括概率估计单元83a和编码引擎83b的自适应二值算术编码单元83构成。

与压缩图像的任意语法元素相关,上下文建模单元81首先根据过去的历史将语法元素的符号(symbol)转换成适当的上下文模型。在cabac编码中,使用不同的上下文对不同的语法元素进行编码。再者,根据附近的块或宏块的编码信息,甚至使用不同的上下文对相同的语法元素进行编码。

例如,将参照图11描述作为示例的标志mb_skip_frag,但是这对于针对其他语法元素的处理也是相同的。

在图11中所示的示例中,示出了将被编码的目标宏块c以及已被编码并且与目标宏块c相邻的相邻宏块a和b。将假设标志mb_skip_frag是针对每个宏块x(x=a,b,c)定义的并且是下式(11)。

[数学式6]

就是说,在宏块x是使用参考帧中的空间对应位置处的像素的跳过宏块的情况下,设定f(x)=1,否则,设定f(x)=0。

此时,作为左相邻宏块a的f(a)和上相邻宏块b的f(b)的和,如下式(12)中的那样,计算关于当前宏块c的上下文context(c)。

context(c)=f(a)+f(b)...(12)

就是说,关于目标宏块c的上下文context(c)根据相邻宏块a和b的标志mb_skip_frag,具有值0、1和2中的一个。就是说,使用对于0、1和2中的一个不同的编码引擎83b对关于目标宏块c的标志mb_skip_frag进行编码。

例如,如同帧内预测模式,使用图12中所示的表格,二值化单元82执行作为关于语法的非二值数据的元素的符号转换。

图12中的表格中图示了,在码符号是0的情况下,码符号被二值化为0,如果码符号是1,则二值化为10,并且如果码符号是2,则二值化为110。再者,在码符号是3的情况下,这被二值化为1110,如果码符号是4,则二值化为11110,并且如果码符号是5,则二值化为111110。

由下游的自适应二值算术编码单元83对通过诸如上述表格的二值化表格进行二值化的语法元素进行编码。

返回图10,在自适应二值算术编码单元83处,概率估计单元83a执行关于二值化符号的概率估计,并且由编码引擎83b执行基于概率估计的二值算术编码。此时,在切片的起点处初始化“0”和“1”的概率,并且每当执行1bin(码片)的编码时更新其概率表格。就是说,在执行二值算术编码处理之后更新相关模型,因此每个模型可以执行与实际图像压缩信息的统计数据对应的编码处理。

在上述这两种cavlc格式和cabac格式的情况下,具有较高出现频率的预测运动向量信息应被分配较小的码数,并且每个预测运动向量信息的出现频率对于每个序列和位率应不同。然而,对于非专利文献1中的建议,将分配给预测运动向量信息的码数是固定的。

[本技术的概述]

因此,对于图7中的图像编码设备51,用户或应用可以借助于码数分配单元77改变针对缺省的预测运动向量的码数分配,使得主观图像质量的编码效率是最优的。

就是说,对于图像编码设备51,生成多个候选预测运动向量信息,并且此外,生成关于每个预测运动向量信息的成本函数值。随后,产生其最小值的预测运动向量信息被取作关于待处理块的预测运动向量信息,并且使用其执行编码,此时由码数分配单元77分配给每个预测运动向量的码数用于成本函数值生成和编码。

例如,假设利用缺省设定,在上述式(5)中将码数=0分配给空间预测运动向量信息(空间预测器),并且上述式(10)中将码数=1分配给时间预测运动向量信息(时间预测器)。

通常,在待编码内容包括大量静止图像区域的情况下,出于编码效率或主观图像质量的观点,时间预测运动向量信息比空间预测运动向量信息更优选。

然而,在特别地低位率(即高量化参数qp)的情况下,被分配码数=0的预测运动向量信息具有表达预测运动向量信息所需的较少的位,并且因此更容易被选择,这是不合需要的。

因此,对于图像编码设备51,可以相对缺省设定改变针对每个预测运动向量的码数分配。因此,在该情况下,进行改变,使得例如,码数=0被分配给时间预测运动向量信息,并且码数=1被分配给空间预测运动向量信息。因此,可以提高编码效率或主观图像质量。

[本技术的优点]

接下来,将参照图13描述本技术的优点。在图13中的示例中,示出了参考帧和摄像装置固定的移动图像的当前帧。在该移动图像中,将假设椭圆物体正在以速度v向右移动。摄像装置是固定的,因此椭圆物体以外的背景是静止区域。

在当前帧中,示出了当前块x以及在左侧、顶侧和右上侧与当前块x相邻的相邻块a、b和c,并且在参考帧中示出了当前块x的对应块(并置块)y。注意,对应块是与当前帧不同的已编码帧(位于之前或之后的帧)中的块,并且是与当前块对应的位置处的块。

现在,假设mvk是关于块k的运动向量信息,并且median(mva,mvb,mvc)被分配给码数=0,并且mvy被分配给码数=1。

在该情况下,对于特别地低位率,具有表达预测运动向量信息所需的较少的位的median(mva,mvb,mvc)更易于被选择。

然而,对于图13中的示例,块x、相邻块a和对应块y是静止图像区域中的块,并且相邻块b和c是椭圆物体上的块。因此,当针对相邻块的媒体预测进行观看时,下式(13)成立,并且编码效率明显是不好的。

median(mva,mvb,mvc)=median(v,v,0)=v...(13)

另一方面,考虑对应块y,下式(14)成立,因此通过向mvy分配码数=0可以实现较高的编码效率以便更易于被选择。

mvy=0...(14)

注意,对于本公开,针对每个预测运动向量信息的码数分配例如按切片的增量执行。

就是说,首先,mv_predictor_definition_flag被编码到切片报头。mv_predictor_definition_flag是指示处于其中将分配缺省码数的固定模式还是其中分配能够改变(即改变)的码数被分配的可变模式的标志信息。注意,对于该标志信息,成为允许识别处于能够改变的可变模式还是固定模式,即处于可变模式还是固定模式的信息是足够的。

在mv_predictor_definition_flag=0的情况下,应用缺省定义的针对每个预测运动向量信息的码数分配。在mv_predictor_definition_flag=1的情况下,将应用码数分配单元77分配的针对每个预测运动向量信息的码数分配。因此,在该情况下,mv_predictor_definition_flag=1跟随码数分配单元77的针对每个预测运动向量信息的码数分配的描述。

具体地,在mv_predictor_definition_flag=1的情况下,诸如图14中所示的语法元素将被插入在切片报头中。

对于图14中的示例,mv_predictor_definition_flag=1的描述跟随有如下空间:该空间被设置用于描述哪个预测运动向量信息将被分配码数0(code_number_for_predictor_0;)并且将被分配码数1(code_number_for_predictor_1;)。

注意,根据本公开的关于码数分配的语法描述不限于图14中的示例。在序列参数集合或图片参数集合中,提供与码数分配相关的语法。在切片报头处mv_predictor_definition_flag=0的情况下,可以使用紧邻的先前现有序列参数集合或图片参数集合中定义的任何分配。当然,这可以仅被提供给序列参数集合或图片参数集合。

如上文所述,通过使得能够改变码数分配,在例如移动物体穿过诸如背景的静止区域的情况下,可以将较小的码数分配给时间预测运动向量信息(时间预测器)。因此,这可以避免由于静止区域受移动物体的运动的影响而引起的图像劣化,并且可以提高编码效率和主观图像质量。

因此,可以实现较高的编码效率。

注意,尽管上文作为具体示例,描述了例如其中移动物体穿过诸如背景等的静止区域的示例,但是这不限于该示例,并且例如通过将较小的码数分配给具有较高的出现频率(率)的预测运动向量信息也可以提高编码效率和主观图像质量。

再者,用户或应用可以设定针对预测运动向量信息的码数分配,使得提高编码效率和主观图像质量。

下文将进行更详细的描述。

[运动预测/补偿单元的配置示例]

图15是图示运动预测/补偿单元75的详细配置示例的框图。注意已从图15中略去图7中的开关73。

在图15中的示例中,运动预测/补偿单元75由运动搜索单元91、成本函数计算单元92、最优预测运动向量选择单元93、模式确定单元94、运动补偿单元95和运动向量缓冲器96构成。注意,在图中仅有针对运动搜索单元91的输入被图示为来自屏幕重排缓冲器62的输入图像像素值,但是实际上,还存在针对计算成本函数值的成本函数计算单元92和运动补偿单元95的输入。

来自屏幕重排缓冲器62的输入图像像素值和来自帧存储器72的参考图像像素值被输入到运动搜索单元91。运动搜索单元91在图2中所示的所有帧间预测模式中执行运动搜索处理,使用搜索的运动向量信息对参考图像执行补偿处理,并且生成预测图像。运动搜索单元91将针对每个帧间预测模式搜索的运动向量信息以及所生成的预测图像提供给成本函数计算单元92。

向成本函数计算单元92提供来自屏幕重排缓冲器62的输入图像像素值、来自运动搜索单元91的关于帧间预测模式的运动向量信息和预测图像、以及来自预测运动向量生成单元76的每个预测运动向量信息和分配给其的码数。成本函数计算单元92通过取得运动向量信息和每个预测运动向量信息的差来计算差运动向量信息。

成本函数计算单元92随后使用提供给其的信息,诸如差运动向量信息、分配给预测运动向量信息的码数、预测图像等,来计算关于每个帧间预测模式中的每个块的每个预测运动向量的成本函数值。成本函数计算单元92将关于每个帧间预测模式的预测图像、差运动向量信息、预测运动向量信息以及相应的码数和成本函数值提供给最优预测运动向量选择单元93。

最优预测运动向量选择单元93基于成本函数值选择关于每个预测模式中的每个块的最优预测运动向量信息。由此选择的最优预测运动向量信息连同关于每个帧间预测模式的预测图像、成本函数值、差运动向量信息、最优预测运动向量信息和分配给其的码数一起,被提供给模式确定单元94。

模式确定单元94使用关于每个帧间预测模式的成本函数值来确定哪个帧间预测模式使用起来是最优的,并且将具有最小成本函数值的帧间预测模式取作最优预测模式。模式确定单元94随后将最优预测模式、相关的差运动向量信息、以及最优预测运动向量信息和分配给其的码数提供给运动补偿单元95。

运动补偿单元95根据差运动向量信息和最优预测运动向量信息获得运动向量,并且使用所获得的运动向量对来自帧存储器72的参考图像执行补偿,从而生成最优预测模式的预测图像。再者,来自屏幕重排缓冲器62的输入图像像素值也被提供给运动补偿单元95,并且运动补偿单元95再次从所提供的信息获得最优预测模式的成本函数值,并且将最优预测模式的预测图像及其成本函数值提供给预测图像选择单元78。

在预测图像选择单元78选择最优帧间模式的预测图像的情况下,从预测图像选择单元78提供针对该效果的信号。作为响应,运动补偿单元95将最优帧间模式信息、该模式的差运动向量信息以及与预测运动向量信息对应的码数提供给无损编码单元66。再者,此时,运动补偿单元95将从差运动向量信息获得的运动向量信息和最优预测运动向量信息存储在运动向量缓冲器96中。注意,在预测图像选择单元78未选择最优帧间模式的预测图像的情况下(即,在选择帧内预测图像的情况下),0向量被存储在运动向量缓冲器96中作为运动向量信息。

运动向量缓冲器96存储关于最优预测模式中的每个块的运动块信息。所存储的运动向量信息作为外围块的外围运动向量信息被提供给预测运动向量生成单元76,以便生成关于下一块的预测运动向量信息。

如非专利文献1中所述,预测运动向量生成单元76使用从运动向量缓冲器96提供的、与当前块空间-时间相邻的块的外围运动向量信息,生成多个候选预测运动向量信息。然而,注意,与非专利文献1的不同之处在于,码数分配单元77已分配针对每个预测运动向量信息的码数。

就是说,通过预测运动向量生成单元76,针对当前块,根据上述式(5)生成空间预测运动向量信息(空间预测器),并且根据上述式(9)生成时间预测运动向量信息(时间预测器)。再者,针对当前块,根据上述式(10)生成空间-时间预测运动向量信息(空间-时间预测器)。每个生成的候选预测运动向量信息以及分别分配给其的码数被提供给成本函数计算单元92。

再者,在执行编码处理之前,根据例如未示出的操作输入单元处的用户操作,关于向哪个预测运动向量信息分配哪个码数的信息被输入到码数分配单元77。码数分配单元77根据输入信息针对预测运动向量信息设定码数的分配,并且还生成指示模式是码数分配可变模式的标志信息。

码数分配单元77将码数分配信息提供给预测运动向量生成单元76。再者,码数分配单元77向无损编码单元66发送所生成的标志信息和码数分配信息。在无损编码单元66处,在切片报头处执行这些信息的编码处理。

[图像编码设备的编码处理的描述]

接下来,将参照图16中的流程图描述图7中的图像编码设备51的编码处理。

在步骤s11中,a/d转换单元61将输入图像从模拟转换成数字。在步骤s12中,屏幕重排缓冲器62存储从a/d转换单元61提供的图像,并且执行从用于显示图片的序列到用于编码的序列的重新排列。

在步骤s13中,计算单元63计算在步骤s12中重新排列的图像和预测图像之间的差。经由预测图像选择单元78,在执行帧间预测的情况下从运动预测/补偿单元75向计算单元63提供预测图像,并且在执行帧内预测的情况下从帧内预测单元74向计算单元63提供预测图像。

较之原始图像数据,差数据的数据量较小。因此,较之没有改变地对原始图像编码的情况,可以压缩数据量。

在步骤s14中,正交变换单元64使从计算单元63提供的差信息经历正交变换。具体地,执行诸如离散余弦变换、karhunen-loéve变换等的正交变换,并且输出变换系数。在步骤s15中,量化单元65对变换系数进行量化。在该量化时,诸如后面描述的步骤s26中的处理,对速率进行控制。

对这样量化的差信息进行如下的局部解码。就是说,在步骤s16中,逆量化单元68使用与量化单元65的性质对应的性质,使量化单元65量化的变换系数经历逆量化。在步骤s17中,逆正交变换单元69使用与正交变换单元64的性质对应的性质,使经历逆量化单元68的逆量化的变换系数经历逆正交变换。

在步骤s18中,计算单元70使经由预测图像选择单元78输入的预测图像与局部解码的差信息相加,并且生成局部解码图像(与针对计算单元63的输入对应的图像)。在步骤s19中,解块滤波器71使从计算单元70输出的图像经历滤波。因此,去除了块失真。在步骤s20中,帧存储器72存储经历滤波的图像。注意,未经历解块滤波器71的滤波处理的图像也从计算单元70提供给帧存储器72用于存储。

在从屏幕重排缓冲器62提供的待处理图像是用于帧内处理的块的图像的情况下,从帧存储器72读出待参考的解码图像,并且经由开关73将其提供给帧内预测单元74。

在步骤s21中,帧内预测单元74基于这些图像在所有候选帧内预测模式中对待处理的块的像素执行帧内预测。注意,对于将参考的解码像素,使用未经历解块滤波器71的解块滤波的像素。

尽管后面将参照图17描述步骤s21中的预测处理的细节,但是由于该处理,在所有候选帧内预测模式中执行帧内预测,并且针对所有候选帧内预测模式计算成本函数值。基于计算的成本函数值选择最优帧内预测模式,并且最优帧内预测模式的帧内预测生成的预测图像及其成本函数值被提供给预测图像选择单元78。

在从屏幕重排缓冲器62提供的待处理图像是将被帧间处理的图像的情况下,从帧存储器72读出参考图像,并且经由开关73将其提供给运动预测/补偿单元75。在步骤s22中,运动预测/补偿单元75基于这些图像执行帧间运动预测处理。

后面将参照图18描述步骤s22中的预测处理的细节。根据该处理,在所有候选帧内预测模式中执行运动搜索处理,计算所有候选帧内预测模式中的成本函数值,并且选择最优预测运动向量信息。此外,基于针对所有帧间预测模式计算的成本函数值,选择最优帧内预测模式。在最优帧内预测模式中生成的预测图像及其成本函数值被提供给预测图像选择单元78。

此时,例如,利用提供给运动预测/补偿单元75和无损编码单元66的码数分配信息,将码数分配给每个预测运动向量信息。因此,在运动预测/补偿单元75处,使用所分配的码数计算成本函数值。再者,码数分配单元77生成指示模式是否是其中码数分配能够改变的可变模式的标志信息,其被提供给无损编码单元66。

在步骤s23中,预测图像选择单元78基于从帧内预测单元74和运动预测/补偿单元75输出的成本函数值,将最优帧内预测模式和最优帧间预测模式中的一个确定为最优预测模式。预测图像选择单元78随后选择所确定的最优预测模式的预测图像,并且提供给计算单元63和70。如上文所述,该预测图像用于步骤s13和s18中的计算。

注意,该预测图像的选择信息被提供给帧内预测单元74或运动预测/补偿单元75。在已选择最优帧内预测模式的预测图像的情况下,帧内预测单元74将指示最优帧内预测模式的信息(即,帧内预测模式信息)提供给无损编码单元76。

在已选择最优帧间预测模式的预测图像的情况下,运动预测/补偿单元75向无损编码单元77输出指示最优帧间预测模式的信息,并且根据需要,输出根据最优帧间预测模式的信息。根据最优帧间预测模式的信息的示例包括诸如关于每个块的运动向量信息和预测运动向量信息之间的差运动向量信息、分配给每个块的预测运动向量信息的码数等的信息。再者,注意,此时运动预测/补偿单元75的运动补偿单元95将根据差运动向量信息和预测运动向量信息获得的运动向量信息存储在运动向量缓冲器96中。

在步骤s24中,无损编码单元66对从量化单元65输出的量化的变换系数编码。具体地,差图像经历诸如可变长度编码、算术编码等的无损编码,并且被压缩。此时,在上述步骤s21中输入到无损编码单元66的、来自帧内预测单元74的帧内预测模式信息,或者在步骤s22中的根据来自运动预测/补偿单元75的最优帧间预测模式的信息等,也被编码,并且被添加到报头信息。再者,来自码数分配单元77的标志信息和码数分配信息也被添加到报头信息。

例如,针对每个宏块对指示帧间预测模式的信息进行编码。按每个当前块对针对差运动向量信息和预测运动向量信息的码数进行编码。此外,按每个切片对来自码数分配单元77的标志信息和码数分配信息进行编码。

在步骤s25中,存储缓冲器67将差图像存储为压缩图像。适当地读出存储缓冲器67中存储的压缩图像,并且经由传送路径将其传送到解码侧。

在步骤s26中,速率控制单元79基于存储缓冲器67中存储的压缩图像来控制量化单元65的量化操作速率以便不致引起上溢或下溢。

[帧内预测处理的描述]

接下来,将参照图17中的流程图描述图16中的步骤s21中的帧内预测处理。注意,在图17中的示例中,作为示例将描述亮度信号的情况。

在步骤s41中,帧内预测单元74针对4×4个像素、8×8个像素和16×16个像素的每个帧内预测模式执行帧内预测。

对于按块增量的亮度信号帧内预测模式,存在九种4×4像素和8×8像素块增量的预测模式,以及四种16×16像素宏块增量的预测模式,并且对于色差信号的帧内预测模式,存在四种8×8像素块增量的预测模式。色差信号的帧内预测模式的设定可以与亮度信号的帧内预测模式无关。对于亮度信号的4×4个像素的帧内预测模式和8×8个像素的帧内预测模式,针对每个4×4像素和8×8像素的亮度信号块定义一个帧内预测模式。对于亮度信号的16×16个像素的帧内预测模式以及色差信号的帧内预测模式,针对每个宏块定义一个预测模式。

具体地,帧内预测单元74参考从帧存储器72读出的并且经由开关73提供给帧内预测单元74的解码图像,并且对待处理的块的像素执行帧内预测。在每个帧内预测模式中执行该帧内预测处理导致了在每个帧内预测模式中生成预测图像。注意,未经历解块滤波器71的解块滤波的像素被用作将参考的解码像素。

在步骤s42中,帧内预测单元74针对4×4个像素、8×8个像素和16×16个像素的帧内预测模式计算成本函数值。这里,对于用于获得成本函数值的成本函数,使用采用h.264/avc格式的成本函数。

对于h.264/avc格式,使用例如如下方法:其中进行jm中规定的高复杂度模式和低复杂度模式的两种模式确定方法的选择。在该方法的情况下,此两者均计算与各个预测模式mode相关的成本函数值,并且选择产生最小值的预测模式作为关于当前块或宏块的最优模式。

在高复杂度模式中,通过下式(15)计算成本函数值。

cost(mode∈ω)=d+λ×r...(15)

在式(15)中,ω是用于对当前块至宏块进行编码的候选模式的整个集合。再者,d是在通过当前预测模式mode进行编码的情况下解码图像和输入图像之间的差能量。此外,λ是作为量化参数的函数给出的拉格朗日乘子。再者,r是在通过当前模式mode进行编码的情况下的总码量,其包括正交变换系数。

就是说,为了通过高复杂度模式执行编码,需要利用所有候选模式mode执行一次试验编码处理以便计算以上参数d和r,这需要较大的计算量。

另一方面,可以如下式(16)中所示获得低复杂度模式中的成本函数值。

cost(mode∈ω)=d+qp2quant(qp)×headerbit...(16)

在式(16)中,不同于高复杂度模式的情况,d是预测图像和输入图像之间的差能量。再者,qp2quant(qp)是作为量化参数qp的函数给出的。此外,headerbit是关于诸如运动向量和模式的、属于不包括正交变换系数的报头的信息的码量。

就是说,在低复杂度模式中,需要执行关于每个候选模式mode的预测处理,但是不需要一直对解码图像执行该处理,因此不需要一直执行解码处理。因此,较之高复杂度模式,能够以较小的计算量实现。

在步骤s43中,帧内预测单元74针对4×4个像素、8×8个像素和16×16个像素的帧内预测模式确定最优模式。就是说,如上文所述,在帧内4×4预测模式和帧内8×8预测模式的情况下,预测模式类型的数目是九,并且在帧内16×16预测模式的情况下,预测模式类型的数目是四。因此,帧内预测单元74基于在步骤s42中计算的成本函数值,在这些预测模式中确定最优帧内4×4预测模式、最优帧内8×8预测模式和最优帧内16×16预测模式。

在步骤s44中,帧内预测单元74基于在步骤s42中计算的成本函数值,在针对4×4个像素、8×8个像素和16×16个像素的帧内预测模式确定的最优模式中选择最优帧内预测模式,就是说,帧内预测单元74在针对4×4个像素、8×8个像素和16×16个像素确定的最优模式中,选择成本函数值是最小值的模式作为最优帧内预测模式。帧内预测单元74随后将在最优帧内预测模式中生成的预测图像及其成本函数值提供给预测图像选择单元78。

[运动预测处理的描述]

接下来,将参照图18中的流程图描述图16中的步骤s22中的帧间运动预测处理。

在步骤s51中,运动搜索单元91针对上文参照图2描述的由16×16个像素至4×4个像素构成的八种帧间预测模式中的每个,确定运动向量和参考图像。

在步骤s52中,运动搜索单元91针对每个帧间预测模式,基于所确定的运动向量使参考图像经历补偿处理并且生成预测图像。运动搜索单元91将基于每个帧间预测模式搜索的运动向量信息和所生成的预测图像提供给成本函数计算单元92。

在步骤s53中,预测运动向量生成单元76和成本函数计算单元92执行预测运动向量确定处理。后面将参照图19描述该预测运动向量确定处理。

根据步骤s53中的处理,生成了多种类型的预测运动向量信息。对于每个帧间预测模式中的每个块,针对每个预测运动向量,使用所生成的预测运动向量信息和分别分配的码数来计算成本函数值,并且选择最优预测运动向量信息。

针对每个帧间预测模式,这样选择的最优预测运动向量信息连同预测图像、成本函数值、差运动向量信息以及最优预测运动向量信息和分配给其的码数一起,被提供给模式确定单元94。

在步骤s54中,模式确定单元94确定最优帧间预测模式。就是说,模式确定单元94使关于每个帧间预测模式中的所有块的最优预测运动向量的成本函数值相加,比较所有候选帧间预测模式的成本函数值,并且将具有最小成本函数值的帧间预测模式确定为最优帧间预测模式。最优帧间预测模式连同最优预测运动向量信息和分配给最优预测运动向量的码数一起被提供给运动补偿单元95。

在步骤s55中,运动补偿单元95基于最优帧间预测模式的运动向量对来自帧存储器72的参考图像执行补偿处理,并且生成预测图像。再者,运动补偿单元95再次从所提供的信息获得最优预测模式的成本函数值,并且将预测图像和最优预测模式的成本函数值提供给预测图像选择单元78。

[预测运动向量确定处理的描述]

接下来,将参照图19中的流程图描述图18中的步骤s53中的预测运动向量确定处理。注意,例如,下面的步骤s71至s74是针对每个切片执行的处理,并且步骤s75至s77是针对每个块执行的处理。

在步骤s71中,码数分配单元77确定用户是否已定义针对预测运动向量信息的码数分配。例如,在从未示出的操作输入单元已输入关于将哪个码数分配给哪个预测运动向量信息的信息,并且该信息不是缺省信息的情况下,在步骤s71中,确定用户已定义针对预测运动向量信息的码数分配,并且处理前往步骤s72。

在步骤s72中,码数分配单元77设定mv_predictor_definition_flag=1,并且将该标志信息提供给无损编码单元66。在步骤s73中,码数分配单元77随后基于关于将哪个码数分配给哪个预测运动向量信息的信息,确定针对预测运动向量信息的码数分配。所确定的码数分配被提供给无损编码单元66和预测运动向量生成单元76。

另一方面,例如,在从未示出的操作输入单元已输入关于将哪个码数分配给哪个预测运动向量信息的信息,并且该信息是缺省信息的情况下,在步骤s71中,确定用户未定义针对预测运动向量信息的码数分配,并且处理前往步骤s74。

在步骤s74中,码数分配单元77设定mv_predictor_definition_flag=0,并且将该标志信息提供给无损编码单元66。在该情况下,将缺省码数分配信息提供给预测运动向量生成单元76。

在步骤s75中,预测运动向量生成单元76使用来自运动向量缓冲器96的空间-时间外围块的外围运动向量信息,来生成关于当前块的所有候选预测运动向量信息。预测运动向量生成单元76随后将其连同所生成的多个预测运动向量信息一起提供给成本函数计算单元92,其中每个预测运动向量信息被分别分配了码数。

在步骤s76中,成本函数计算单元92使用所提供的信息,通过上述式(15)或式(16),在每个帧间预测模式中的每个块处,计算每个预测运动向量的成本函数值。成本函数计算单元92使用所提供的信息,诸如差运动向量信息、分配给预测运动向量信息的码数和预测图像等,在每个帧间预测模式中的每个块处,计算每个预测运动向量的成本函数值。

在步骤s77中,最优预测运动向量选择单元93基于成本函数值针对每个预测模式中的每个块选择最优预测运动向量信息。以这种方式选择的最优预测运动向量信息连同预测图像、成本函数值、差运动向量信息以及预测运动向量信息和分配给其的码数一起,被提供给模式确定单元94。

如上文所述,这样码数分配是能够改变的,因此例如,针对预测运动向量信息的码数分配可以改变,使得提高了编码效率和主观图像质量。

例如,可以向具有较高出现频率(率)的预测运动向量信息分配较小的码数,因此可以提高编码效率和主观图像质量。

编码的压缩图像经由预定的传送路径传送,并且由图像解码设备解码。

[图像解码设备的配置示例]

图20呈现了用作已被应用本发明的图像处理设备的图像解码设备的实施例的配置。

图像解码设备101由存储缓冲器111、无损解码单元112、逆量化单元113、和逆正交变换单元114、计算单元115、解块滤波器116、屏幕重排缓冲器117、d/a转换单元118、帧存储器119、开关120、帧内预测单元121、运动预测/补偿单元122、码数分配缓冲器123、预测运动向量生成单元124和开关125构成。

存储缓冲器111存储所传送的压缩图像。无损解码单元112使用与图7中的无损编码单元66的编码格式对应的格式对从存储缓冲器111提供的并且由无损编码单元66编码的信息解码。逆量化单元113使用与图7中的量化单元65的量化格式对应的格式使无损解码单元112解码的图像经历逆量化。逆正交变换单元114使用与图7中的正交变换单元64的正交变换格式对应的格式使逆量化单元113的输出经历逆正交变换。

计算单元115通过使经历逆正交变换的输出与从开关125提供的预测图像相加来进行解码。解块滤波器116去除解码图像的块噪声,随后提供给帧存储器119用于存储,并且还输出到屏幕重排缓冲器117。

屏幕重排缓冲器117执行图像的重新排列。具体地,由图7中的屏幕重排缓冲器62针对编码顺序重新排列的的帧序列被重新排列成原始显示序列。d/a转换单元118执行从屏幕重排缓冲器117提供的图像的d/a转换,并且输出到未示出的显示器用于显示。

开关120从帧存储器119读出将经历帧间处理的图像以及将参考的图像,输出到运动预测/补偿单元122,并且还从帧存储器119读出将用于帧内预测的图像,并且提供给帧内预测单元121。

通过对报头信息解码获得的指示帧内预测模式的信息从无损解码单元112提供给帧内预测单元121。帧内预测单元121基于该信息生成预测图像,并且将生成的预测图像输出到开关125。

在通过对报头信息解码获得的信息中,帧间预测模式信息、差运动向量信息、针对预测运动向量信息的码数、参考帧信息等从无损解码单元112提供给运动预测/补偿单元122。针对每个宏块传送帧间预测模式信息。针对每个当前块传送针对预测运动向量信息的码数和参考帧信息。

运动预测/补偿单元122将从无损解码单元112提供的预测运动向量信息的码数提供给预测运动向量生成单元124,并且据此获得由预测运动向量生成单元124生成的预测运动向量信息。运动预测/补偿单元122使用从无损解码单元112提供的差运动向量信息和来自预测运动向量生成单元124的预测运动向量信息来生成当前块的运动向量信息。运动预测/补偿单元122使用所生成的运动向量信息对从帧存储器119提供的参考图像执行补偿处理,并且在从无损解码单元112提供的帧间预测模式信息指示的预测模式中,针对每个当前块生成预测图像的像素值。

码数分配缓冲器123存储作为指示缺省(在固定模式的情况下)预测运动向量信息和码数之间的相关性的信息的码数分配信息。再者,码数分配缓冲器123从无损解码单元112接收指示模式是否是其中对于每个切片针对预测运动向量信息的码数分配能够改变的可变模式,或者指示模式是否是其中使用缺省设定的固定模式的标志信息。在该标志信息指示可变模式的情况下,码数分配缓冲器123连同标志信息一起,接收与预测运动向量信息对应的码数分配,即,预测运动向量信息和码数之间的相关性的信息。码数分配缓冲器123随后存储指示可变模式的情况下的预测运动向量信息和码数的相关性的码数分配信息,并且将其提供给预测运动向量生成单元124。

对于每个块,从运动预测/补偿单元122向预测运动向量生成单元124提供关于每个块的与预测运动向量信息对应的码数,以及空间-时间外围块的运动向量信息。再者,对于每个切片,从码数分配缓冲器123向预测运动向量生成单元124提供缺省的或者编码侧设定的码数分配。

预测运动向量生成单元124通过上述式(5)、式(9)和式(10)中的相应的式,使用提供给其的信息来生成关于每个块的预测运动向量信息,并且将所生成的预测运动向量信息提供给运动预测/补偿单元122。

开关125选择运动预测/补偿单元122或帧内预测单元121生成的预测图像,并且提供给计算单元115。

注意,对于图7中所示的运动预测/补偿单元75和预测运动向量生成单元76,需要生成关于所有候选模式的预测图像,生成多个候选预测运动向量信息,计算成本函数值,并且执行预测运动向量信息的选择和模式确定。

相反,对于图20中所示的运动预测/补偿单元122和预测运动向量生成单元124,从压缩图像的报头接收与当前块对应的模式信息、针对预测运动向量信息的码数以及差运动向量信息,并且仅执行使用这些信息的运动补偿处理。注意,此时使用指示针对关于每个切片发送的预测运动向量信息的、关于码数分配信息的可变模式或固定模式的标志信息,以及针对预测运动向量信息的码数分配,来生成预测运动向量信息,其也用于运动补偿处理。

[运动预测/补偿单元的配置示例]

图21是图示运动预测/补偿单元122的详细配置示例的框图。注意,在图17中,图20中的开关120被略去。

在图21中的示例中,运动预测/补偿单元122由差向量缓冲器131、块级码数缓冲器132、运动向量生成单元133、运动向量缓冲器134和运动补偿单元135构成。

从无损解码单元112向差向量缓冲器131提供关于每个块的差运动向量信息。差向量缓冲器131存储提供给其的差运动向量信息并且将该信息提供给运动向量生成单元133。

指示哪个预测运动向量信息用于哪个块的信息的码数从无损解码单元112提供给块级码数缓冲器132。块级码数缓冲器132存储关于每个块的预测运动向量信息的码数,并且提供给预测运动向量生成单元124。

来自差向量缓冲器131的差运动向量信息以及由预测运动向量生成单元124生成的关于每个块的预测运动向量信息被提供给运动向量生成单元133。运动向量生成单元133使当前块的预测运动向量信息与当前块的差运动向量信息相加,从而生成当前块的运动向量信息。运动向量生成单元133将所生成的运动向量信息提供给运动向量缓冲器134和运动补偿单元135。

运动向量缓冲器134存储来自运动向量生成单元133的关于每个块的运动向量信息,作为用于生成下一块的预测运动向量信息的外围运动向量信息。所存储的外围运动向量信息被提供给预测运动向量生成单元124。

运动补偿单元135使用来自运动向量生成单元133的运动向量信息,使来自帧存储器119的参考图像在预测模式信息指示的预测模式中经历补偿处理,从而生成预测图像。

[图像解码设备的解码处理的描述]

接下来,将参照图22中的流程图描述图像解码设备101执行的解码处理。

在步骤s131中,存储缓冲器111存储传送的图像。在步骤s132中,无损解码单元112对从存储缓冲器111提供的压缩图像解码。具体地,由图7中的无损编码单元66编码的i图片、p图片和b图片被解码。

此时,差运动向量信息、参考帧信息、针对预测运动向量信息的码数分配的标志信息(mv_predictor_definition_flag)、在可用的情况下指示其关系的码数分配信息、以及预测模式信息(指示帧内预测模式或帧间预测模式的信息)等也被解码。

就是说,在预测模式信息是帧内预测模式信息的情况下,预测模式信息被提供给帧内预测单元51。在预测模式信息是帧间预测模式信息的情况下,与预测模式信息对应的差运动向量信息和参考帧信息被提供给运动预测/补偿单元122。再者,针对预测运动向量信息的码数分配的标志信息以及在可用的情况下的码数分配,被提供给码数分配缓冲器123。

在步骤s133中,逆量化单元113使用与图7中的量化单元65的性质对应的性质对无损解码单元112解码的变换系数进行逆量化。在步骤s134中,逆正交变换单元114使用与图7中的正交变换单元64的性质对应的性质,使逆量化单元113逆量化的变换系数经历逆正交变换。这意味着与图7中的正交变换单元64的输入(计算单元63的输出)对应的差信息被解码。

在步骤s135中,计算单元115使在后面描述的步骤s139中的处理中选择的并且经由开关125输入的预测图像与差信息相加。因此,原始图像被解码。在步骤s136中,解块滤波器116使从计算单元115输出的图像经历滤波。因此,去除了块失真。在步骤s137中,帧存储器119存储经历滤波的图像。

在步骤s138中,帧内预测单元121或运动预测/补偿单元122响应于从无损解码单元112提供的预测模式信息执行相应的图像预测处理。

就是说,在已从无损解码单元112提供帧内预测模式信息的情况下,帧内预测单元121执行帧内预测模式中的帧内预测处理。在已从无损解码单元112提供帧间预测模式信息的情况下,运动预测/补偿单元122执行帧间预测模式中的运动预测/补偿处理。此时,针对预测运动向量信息的与关于码数分配的标志信息对应的码数分配信息被用于生成预测运动向量信息,通过该信息还有差运动向量信息,生成了运动向量信息。随后所生成的运动向量信息被用于执行关于参考图像的补偿处理,从而在帧内预测模式中生成预测图像。

尽管后面将参照图23描述步骤s138中的预测处理的细节,但是根据该处理,帧内预测单元121生成的预测图像或者运动预测/补偿单元122生成的预测图像被提供给开关125。

在步骤s139中,开关125选择预测图像。具体地,提供帧内预测单元121生成的预测图像或者运动预测/补偿单元122生成的预测图像。因此,所提供的预测图像被选择,提供给计算单元115,并且如上文所述,在步骤s135中与逆正交变换单元114的输出相加。

在步骤s140中,屏幕重排缓冲器117执行重新排列。具体地,图像编码设备51的屏幕重排缓冲器62重新排列的用于编码的帧序列被重新排列成原始显示序列。

在步骤s141中,d/a转换单元118执行来自屏幕重排缓冲器117的图像的d/a转换。该图像被输出到未示出的显示器,并且显示该图像。[图像解码设备的预测处理的描述]

接下来,将参照图23中的流程图描述图22中的步骤s138中的预测处理。

在步骤s171中码数分配缓冲器123接收来自无损解码单元112的切片报头中的mv_predictor_definition_flag。码数分配缓冲器123随后在步骤s172中确定mv_predictor_definition_flag是否指示1。

在步骤s172中确定mv_predictor_definition_flag指示1的情况下,这是其中针对预测运动向量信息的码数分配能够改变的可变模式。因此,在步骤s173中码数分配缓冲器123接收来自无损解码单元112的切片报头中的针对预测运动向量信息的码数分配信息,并且临时存储该信息。码数分配缓冲器123随后向预测运动向量生成单元124提供所存储的码数分配。

再者,在步骤s172中确定mv_predictor_definition_flag指示0的情况下,这是关于针对预测运动向量信息的码数分配的固定模式,因此步骤s173被跳过。在该情况下,码数分配缓冲器123将所存储的缺省码数分配信息提供给预测运动向量生成单元124。

在步骤s174中,帧内预测单元121确定当前块是否已经历帧内预测。在从无损解码单元112向帧内预测单元121提供帧内预测模式信息之后,在步骤s174中帧内预测单元121确定当前块已经历帧内编码,并且处理前往步骤s175。

在步骤s175中,帧内预测单元121获得帧内预测模式信息,并且在步骤s176中执行帧内预测。

就是说,在待处理图像是将经历帧内处理的图像的情况下,从帧存储器119读出所需的图像,并且经由开关120将其提供给帧内预测单元121。在步骤s176中,帧内预测单元121根据在步骤s175中获得的帧内预测模式信息来执行帧内预测以生成预测图像。所生成的预测图像被输出到开关125。

另一方面,在步骤s174中确定未执行帧内编码的情况下,处理前往步骤s177。

在待处理图像是将被帧间处理的图像的情况下,从无损解码单元112向运动预测/补偿单元122关于每个块的帧间预测模式信息,还有关于每个块的参考帧信息、差运动向量信息和针对预测运动向量信息的码数。

在步骤s178中,运动预测/补偿单元122获得帧间预测模式、参考帧信息、差运动向量信息以及针对预测运动向量信息的码数。所获得的差运动向量信息被存储在差向量缓冲器131中。针对预测运动向量信息的码数被存储在块级码数缓冲器132中。帧间预测模式信息和参考帧信息被提供给运动向量生成单元133,尽管在图21中的示例中没有示出。

在步骤s178中,运动向量生成单元133和预测运动向量生成单元124执行运动向量信息的重建。就是说,预测运动向量生成单元124基于来自码数分配缓冲器123的码数分配信息和来自块级码数缓冲器132的关于每个块的分配给预测运动向量信息的码数,获得预测运动向量信息的类型。预测运动向量生成单元124随后使用来自运动向量缓冲器134的外围运动向量信息,通过上述式(5)、式(9)和式(19)中的相应的式来生成关于每个块的预测运动向量信息。所生成的预测运动向量信息被提供给运动向量生成单元133。

运动向量生成单元133使来自预测运动向量生成单元124的当前块的预测运动向量信息与来自差向量缓冲器131的差运动向量信息相加,并且生成当前块的运动向量信息。所生成的运动向量信息连同帧间预测模式信息一起被提供给运动补偿单元135。再者,运动向量信息也被提供给运动向量缓冲器134并且被存储。

在步骤s179中,运动补偿单元135使用来自运动向量生成单元133的运动向量信息,使来自帧存储器119的参考图像经历预测模式信息指示的预测模式中的补偿处理。所生成的预测图像被提供给开关125。

如上文所述,对于图像编码设备51和图像解码设备101,提供了其中针对预测运动向量信息的码数分配能够改变的可变模式,因此针对预测运动向量信息的码数分配可以改变。

因此,用户或应用可以改变针对预测运动向量信息的码数分配,使得提高编码效率和主观图像质量。结果,可以提高编码效率和主观图像质量,从而实现较高的编码效率。

[图像编码设备的另一配置示例]

图24图示了用作图像处理设备的图像编码设备的另一实施例的配置。

图24中的图像编码设备151与图7中的图像编码设备51的共同之处在于具有a/d转换单元61、屏幕重排缓冲器62、计算单元63、正交变换单元64、量化单元65、存储缓冲器67、逆量化单元68、逆正交变换单元69、计算单元70、解块滤波器71、帧存储器72、开关73、帧内预测单元74、运动预测/补偿单元75、预测运动向量生成单元76、预测图像选择单元78、和速率控制单元79。再者,图24中的图像编码设备151与图7中的图像编码设备51的不同之处在于码数分配单元77和无损编码单元66已分别被码数分配单元161和无损编码单元162替换,并且已添加最优码数分配确定单元。

就是说,对于图7中的图像编码设备51,由用户或应用设定作为预测运动向量信息和码数之间的相关性的、针对每个预测运动向量信息的码数分配。相反地,对于图24中的图像编码设备151,生成对于当前图片或切片可能的每个码数分配信息。使用每个码数分配信息生成关于当前图片或切片的所有编码信息(压缩图像),并且将这些信息临时存储在无损编码单元162中。

这些编码信息均被提供给最优码数分配确定单元163。最优码数分配确定单元163针对每个分配生成成本函数值,将值最小的码数分配取作针对当前图片或切片的最优分配,并且将该信息提供给无损编码单元162。

在与存储的每个码数分配相关的编码信息(压缩图像)中,无损编码单元162仅向存储缓冲器67输出与最优分配相关的信息。

与该图像编码设备151对应的解码侧设备基本上具有与图20中的图像解码设备101相同的配置,并且因此将省略其描述。

如上文所述,针对预测运动向量信息的码数分配不限于由用户或应用来设定,并且可以进行其中根据图像编码设备处的针对预测运动向量信息的码数分配对最优码数分配进行解码的布置,以便提高编码效率和主观图像质量。

注意,上文已进行了关于使用时间预测运动向量信息、空间预测运动向量信息和空间-时间预测运动向量信息作为候选预测运动向量信息的描述,但是毋庸置疑,其他预测运动向量信息也可以被用作候选者。

[预测运动向量信息]

尽管上文使用非专利文献1中描述的方法作为预测运动向量信息生成方法的示例进行了描述,但是不限于此,可以应用例如如下方法。

例如,在上述非专利文献1中说明的方法的情况下,作为用作候选者的预测运动向量信息的候选预测运动向量信息的数目越大,则处理量计算量越大。再者,对于当前的gop,例如提高诸如p图片的参考图片的图像质量也提高了参考其的b图片的图像质量。

因此,可以进行如下布置:其中运动预测/补偿单元75使用关于参考图片(例如,p图片等)的数目较大的候选运动向量信息来执行运动预测/补偿(编码处理)。再者,可以进行如下布置:其中运动预测/补偿单元75使用关于未被参考的图片(例如,b图片等)的数目较小的候选运动向量信息来执行运动预测/补偿(编码处理),或者执行如同avc的运动向量编码,而非执行诸如非专利文献1中说明的处理。

例如,在处理另一图片时对参考图片编码的情况下,较之处理另一图片时对未被参考的图片编码的情况,使预测运动向量生成单元76生成较多的候选运动向量信息。就是说,在该情况下,最优预测运动向量选择单元93从数目较大的候选运动向量信息中选择最优预测运动向量信息。

再者,在处理另一图片时对未被参考的图片编码的情况下,较之处理另一图片时对参考图片编码的情况,使预测运动向量生成单元76生成较少的候选运动向量信息,或者替选地,如同avc生成单个预测运动向量信息。就是说,在该情况下,最优预测运动向量选择单元93从数目较小的候选运动向量信息中选择最优预测运动向量信息,或者将单个生成的预测运动向量信息取作最优预测运动向量信息。

因此,该图像编码设备可以通过较小的计算量提高编码效率。

在该情况下,图像编码设备也在每个切片报头或图片参数集合中存储关于使用哪个候选预测运动向量的信息(例如,这些信息被传送到解码设备侧)。

[宏块]

再者,在以上描述中,已针对16×16个像素的情况描述了宏块尺寸,但是本技术也可以应用于扩展宏块尺寸。

图25是图示扩展宏块尺寸的示例的示图。

在图25中的上层,按左起的顺序示出了被分成32×32个像素、32×16个像素、16×32个像素和16×16个像素的块(分区)的、由32×32个像素构成的宏块。在图25中的中层,按左起的顺序示出了被分成16×16个像素、16×8个像素、8×16个像素和8×8个像素的块的、由16×16个像素构成的块。再者,在图25中的下层,按左起的顺序示出了被分成8×8个像素、8×4个像素、4×8个像素和4×4个像素的块的、由8×8个像素构成的块。

换言之,32×32个像素的宏块可以通过图25中的上层示出的32×32个像素、32×16个像素、16×32个像素和16×16个像素的块进行处理。

再者,上层右侧示出的16×16个像素的块可以按照与h.264/avc格式相同的方式,通过中层示出的16×16个像素、16×8个像素、8×16个像素和8×8个像素的块进行处理。

此外,中层右侧示出的8×8个像素的块可以按照与h.264/avc格式相同的方式,通过下层示出的8×8个像素、8×4个像素、4×8个像素和4×4个像素的块进行处理。

对于扩展宏块尺寸,通过采用该分级结构,对于16×16像素块或者更小的块,在维持与h.264/avc格式的兼容性的同时,更大的块被定义为其超集。

本技术也被应用于如上文提出的扩展宏块尺寸。在将本技术也应用于扩展宏块尺寸的情况下,例如在正常宏块和扩展宏块之间将不同的码数分配给预测运动向量信息,例如正常宏块由16×16个像素构成,并且扩展宏块由32×32个像素构成。

到目前为止以h.264/avc格式为基础用作编码格式进行了描述,但是不限于此。就是说,本技术可以应用于执行运动预测/补偿并且进一步使用多个预测运动向量信息用于运动向量信息的编码的其他编码格式/解码格式。

[编码单位]

现今,16×16个像素的宏块尺寸对于将由下一代编码格式处置的诸如uhd(超高分辨率;4000×2000个像素)的大图像帧不是最优的。

因此,用作itu-t(国际电信联盟远程通信标准化组织)和iso(国际标准组织)/iec之间的标准化协作组织的jctvc(联合协作团队视频编码)当前已推进被称为hevc(高效视频编码)的编码格式的标准化,其目标在于进一步提高编码效率。

对于avc,如图2中所示,规定了宏块和子宏块的分级结构,如图31中所示,对于hevc规定了编码单位(cu(codingunit))。

编码单位(cu)还被称为编码树块(ctb),并且作为图像的图片增量中的部分区域,承担与avc中的宏块相同的任务。后者被固定到16×16个像素的尺寸,而前者的尺寸不是固定的,并且在各个序列中的图像压缩信息内指定。

例如,在待输出的编码数据中包括的序列参数集合中规定了具有最大尺寸的cu(lcu(最大编码单位))和具有最小尺寸的cu(scu(最小编码单位))。

在每个lcu中,在不小于scu的尺寸的范围内通过设定split_flag=1,可以划分成较小尺寸的cu。在图31中的示例中,lcu的尺寸是128,并且最大分级深度是5。当split_flag的值是"1"时,具有2n×2n的尺寸的cu被分成具有n×n的尺寸的cu,该具有n×n的尺寸的cu变为降一级的层级水平。

此外,cu被分成作为用作帧内或帧间预测增量的区域的预测单位(predictionunit(pu)),并且还被分成用作作为正交变换的处理增量的区域(图像的图片增量中的部分区域)的变换单位(transformunit(tu))。当前,对于hevc编码格式,除了4×4和8×8之外,可以采用16×16和32×32正交变换。

如同上述hevc,在其中定义cu并且cu用作执行各种类型的处理的增量的编码格式的情况下,avc中的宏块可以被视为等同于lcu。然而,注意,cu具有如图31中所示的分级结构,因此最高分级层级的lcu的尺寸通常被设定为例如大于avc宏块,诸如128×128个像素。

本技术还可以应用于使用这些cu、pu、tu等而非宏块的编码格式。就是说,预测处理的处理增量可以是可选的区域。

再者,码数的切换控制可以被布置为按可选的处理增量执行,并且可以针对诸如cu、pu等的预测处理单位的每个区域执行,而非仅针对序列、图片和切片执行。在该情况下,根据待处理区域的运动特征,更具体地,根据待处理区域(当前区域)是由静止图像构成的区域(静止区域)还是由移动物体的图像构成的区域(移动区域),来控制该区域中的针对预测运动向量信息的码数分配的方式。就是说,在该情况下,对于每个区域区分是否是静止区域。

[图像编码设备]

图32是图示该情况下的图像编码设备的主要配置示例的框图。

图32中示出的图像编码设备700具有与图7中的图像编码设备51基本上相同的配置,并且对图像数据编码。如参照图31描述的,假设图像编码设备700针对每个预测单位(pu)执行帧间处理。

如图32中所示,图像编码设备700由a/d转换单元701、屏幕重排缓冲器702、计算单元703、正交变换单元704、量化单元705、无损编码单元706和存储缓冲器707构成。再者,图像编码设备700具有逆量化单元708、逆正交变换单元709、计算单元710、环路滤波器711、帧存储器712、选择单元713、帧内预测单元714、运动预测/补偿单元715、预测图像选择单元716、和速率控制单元717。

图像编码设备700进一步具有静止区域确定单元721和运动向量编码单元722。

a/d转换单元701执行输入图像的a/d转换,并且将转换之后的图像数据(数字数据)提供给屏幕重排缓冲器702用于存储。屏幕重排缓冲器702根据gop将以显示的顺序存储的帧的图像重新排列成用于编码的帧顺序,并且将帧顺序已被重新排列的图像提供给计算单元703。再者,屏幕重排缓冲器702将帧顺序已被重新排列的图像提供给帧内预测单元714和运动预测/补偿单元715。

计算单元703从自屏幕重排缓冲器702读出的图像中减去经由预测图像选择单元716的从帧内预测单元714或运动预测/补偿单元715提供的预测图像,并且将它们的差信息输出到正交变换单元704。

例如,在将对其执行帧间编码的图像的情况下,计算单元703从自屏幕重排缓冲器702读出的图像中减去从运动预测/补偿单元715提供的预测图像。

正交变换单元704使来自计算单元703的差信息经历诸如离散余弦变换、karhunen-loéve变换等的正交变换。这里的正交变换方法是可选的。正交变换单元704将其变换系数输出到量化单元705。

量化单元705对从正交变换单元704提供的变换系数进行量化。量化单元705设定关于从速率控制单元717提供的码量的目标值的量化参数,并且执行量化。注意,用于该量化的方法是可选的。量化单元705将量化的变换系数提供给无损编码单元706。

无损编码单元706通过可选的编码方法对在量化单元705处量化的变换系数进行编码。在速率控制单元717的控制下对系数数据进行量化,并且因此其码量是由速率控制单元717设定的目标值(或者接近目标值)。

再者,无损编码单元706从帧内预测单元714获得指示帧内预测的信息,并且从运动预测/补偿单元715获取指示帧间预测模式等的信息。此外,无损编码单元706获得在环路滤波器711处使用的滤波器系数等。

无损编码单元706对这些各种类型的信息进行编码,并且将这些取作编码数据的报头信息的一部分(复用)。无损编码单元706将编码数据提供给存储缓冲器707用于存储。

对于无损编码单元706,无损编码处理的示例包括诸如可变长度编码、算术编码等。可变长度编码的示例包括h.264/avc格式规定的cavlc(上下文自适应可变长度编码)等。算术编码的示例包括cabac(上下文自适应二值算术编码)等。

存储缓冲器707临时保存从无损编码单元706提供的编码数据。存储缓冲器707将其中保存的数据输出到例如在图中未示出的下游的存储设备(记录介质)或传送路径等。

再者,从量化单元705输出的量化的变换系数还被输入到逆量化单元708。逆量化单元708利用与量化单元705的量化对应的方法,执行量化的变换系数的逆量化。任何方法将足以用于该逆量化方法,只要与量化单元705的量化处理对应。逆量化单元708将获得的变换系数提供给逆正交变换单元709。

逆正交变换单元709利用与正交变换单元704的正交变换处理对应的方法,执行从逆量化单元708提供的变换系数的逆正交变换。任何方法将足以用于该逆正交变换方法,只要与正交变换单元704的正交变换处理对应。经历逆正交变换的输出(恢复的差信息)被提供给计算单元710。

计算单元710使从逆正交变换单元709提供的逆正交变换结果,即恢复的差信息,与经由预测图像选择单元716从帧内预测单元714或运动预测/补偿单元715提供的预测图像相加,以便获得局部解码图像(解码图像)。解码图像被提供给环路滤波器711或帧存储器712。

环路滤波器711包括解块滤波器和自适应环路滤波器等,并且对从计算单元710提供的解码图像执行适当的滤波处理。例如,环路滤波器711通过对解码图像执行解块滤波器处理来去除解码图像的块噪声。再者,例如,环路滤波器711通过使用wiener滤波器(wienerfilter)执行环路滤波器处理来对解块滤波器处理结果(经历块噪声去除的解码图像)执行图像质量提高。

注意,可以进行如下布置:其中环路滤波器711对解码图像执行可选的滤波器处理。再者,可以进行如下布置:其中环路滤波器711按照需要向无损编码单元706提供滤波器处理中使用的诸如滤波器系数等的信息,以便对其编码。

环路滤波器711向帧存储器712提供滤波器处理结果(滤波器处理之后的解码图像)。注意,如上文所述,从计算单元710输出的解码图像可以被提供给帧存储器712而不通过环路滤波器711。就是说,可以省略环路滤波器711的滤波器处理。

帧存储器712存储提供给其的图像,并且在预定的定时将所存储的解码图像提供给选择单元713作为参考图像。

选择单元713选择从帧存储器712提供的参考图像的提供目标。例如,在帧间预测的情况下,选择单元713将从帧存储器712提供的参考图像提供给运动预测/补偿单元715。

帧内预测单元714使用作为经由选择单元713从帧存储器712提供的参考图像的待处理图片内的像素值,基本上按pu的处理增量执行帧内预测(屏幕内预测)以生成预测图像。帧内预测单元714在预先准备的多个模式(帧内预测模式)中执行该帧内预测。帧内预测单元714不限于avc编码格式规定的模式,并且也可以利用其他可选的模式来执行该帧内预测。

帧内预测单元714在所有候选帧内预测模式中生成预测图像,使用从屏幕重排缓冲器702提供的输入图像来评估预测图像的成本函数值,并且选择最优模式。在选择最优帧内预测模式之后,帧内预测单元714将利用该最优模式生成的预测图像提供给预测图像选择单元716。

再者,如上文所述,帧内预测单元714向无损编码单元706适当地提供指示已被采用的帧内预测模式的帧内预测模式信息等。

运动预测/补偿单元715使用从屏幕重排缓冲器702提供的输入图像以及经由选择单元713从帧存储器712提供的参考图像,基本上按pu的处理增量执行运动预测(帧间预测),并且根据检测到的运动向量执行运动补偿处理,从而生成预测图像(帧间预测图像信息)。运动预测/补偿单元715在预先准备的多个模式(帧间预测模式)中执行该帧间预测。运动预测/补偿单元715不限于avc编码格式规定的模式,并且也可以利用其他可选的模式执行该帧间预测。

运动预测/补偿单元715在所有候选帧间预测模式中生成预测图像,评估预测图像的成本函数值,并且选择最优模式。在选择最优帧间预测模式之后,运动预测/补偿单元715将在该最优模式中生成的预测图像提供给预测图像选择单元716。

运动预测/补偿单元715向无损编码单元706提供指示已被采用的帧间预测模式的信息,以及在对编码数据解码时在该帧间预测模式中执行处理所需的信息等,以便进行编码。

预测图像选择单元716选择将提供给计算单元703和710的预测图像的提供源。例如,在帧间编码的情况下,预测图像选择单元716选择运动预测/补偿单元715作为预测图像的提供源,并且将从运动预测/补偿单元715提供的预测图像提供给计算单元703和710。

速率控制单元717基于在存储缓冲器707中存储的编码数据的码量,控制量化单元705的量化操作的速率,使得不致发生上溢或下溢。

静止区域确定单元721区分当前区域是否是静止区域(静止区域确定)。静止区域确定单元721向运动向量编码单元722提供关于是否是静止区域的确定结果。

运动向量编码单元722基于从静止区域确定单元721提供的关于是否是静止区域的确定结果,在mv竞争模式中控制针对预测运动向量信息的码数分配。

更具体地,运动向量编码单元722使用当前区域的外围区域的运动信息来生成关于所有帧间预测模式的所有预测运动向量信息,并且利用基于静止区域确定结果的方法为每个生成的预测运动向量信息分配码数。此外,运动向量编码单元722确定最优预测运动向量信息,并且生成最优预测运动向量信息和当前区域的运动信息(运动向量)之间的差(差运动信息)。运动向量编码单元722将生成的差运动信息和预测运动向量信息的码数提供给运动预测/补偿单元715。

[静止区域确定和码数分配]

首先,将更详细地码数静止区域确定单元721的静止区域确定。

如图33中所示,例如,在处理当前区域时,使用关于已被处理的参考图片上的并置区域的运动信息(已被计算的运动信息)来执行静止区域确定单元721的静止区域确定。在图33的情况下,当前区域是在图33中的右侧示出的pucurr,并且其并置区域是在图33中的左侧示出的参考图片的pucol。静止区域确定单元721使用作为该并置区域pucurr的运动向量信息的水平分量和竖直分量的(mvhcol,mvvcol),来执行当前区域pucurr的静止区域确定

就是说,在其中下式(17)和式(18)成立,并且以θ为阈值,式(19)也成立的情况下,在其中应用ref_picr_reordering(参考图片重新排序)的情况下,或者在其中参考索引refcol具有指示紧邻的先前图片的poc值的情况下,静止区域确定单元721将当前区域pucurr确定为静止区域。

|mvhcol|≤θ...(17)

|mvvcol|≤θ...(18)

refcol=0...(19)

通过在式(19)中为0的参考索引refcol的值,静止区域确定单元721确定参考图片中的并置区域的参考区域pucol几乎毫无疑问地由静止图像构成。再者,如果输入图像和参考图像两者自身均为没有编码失真的原始图像,则式(17)和式(18)中的θ的值应为0。然而,事实上,尽管输入图像自身是原始图像,但是参考图像是解码图像并且通常包括编码失真。因此,即使在静止图像的情况下,0作为θ的值不一定适当。

因此,在运动向量具有1/4像素精度的情况下,静止区域确定单元721设定θ=4。就是说,在运动向量的精度在整数像素精度的1.0内时,静止区域确定单元721确定这是静止区域。

接下来,将更详细地描述运动向量编码单元722的针对预测运动向量信息的码数分配。在下文中,假设预测单位pux的运动向量信息是mvpux。

非专利文献1和joeljung、guillaumelaroche的"competition-basedschemeformotionvectorselectionandcoding",vceg-ac06,itu-telecommunicationsstandardizationsectorstudygroup16question6videocodingexpertsgroup(vceg)29thmeeting:klagenfurt,austria,17-18july,2006(以下称为非专利文献2)提出了一种如下方法:除了通过上述式(5)获得的空间预测运动向量信息(空间预测器)之外,自适应地使用参照图6描述的时间预测运动向量信息(时间预测器)和空间-时间预测运动向量信息(空间-时间预测器)中的一个作为预测运动向量信息。

对于非专利文献2,最大码数被分配给时间预测运动向量信息(时间预测器)。就是说,在该方法的情况下,对于码数(codenumber)“y”为pmvy的预测运动向量信息,在图33中的示例的情况下,如同下式(20)至(23)那样分配码数。

pmv0=mvpua...(20)

pmv1=mvpub...(21)

pmv2=mvpuc...(22)

pmv3=mvpucol...(23)

如上文所述,在通过rd最优化执行模式确定的情况下,具有分配给其的较小码数的模式较易于被选择,特别是具有较低的位率,并且因此,对于非专利文献2中描述的方法,在移动区域和静止区域之间将容易观察到劣化。

就是说,如上文参照图13描述的,存在如下考虑:在与移动区域相邻的静止区域中在空间方向上使用运动相关性将导致移动区域的运动向量信息传播到静止区域并且引起图像质量劣化。然而,对于非专利文献2中描述的方法,易于被选择的小的码数总是被分配给空间预测运动向量信息(空间预测器),因此在移动区域和静止区域之间将容易观察到劣化。

如上文所述,运动向量编码单元722还使用待处理的当前区域的外围区域的运动信息。在图33中的示例的情况下,当前图片的pucurr是当前区域,pua、pub和puc是在空间上位于当前区域外围的区域,并且pucol是在时间上位于当前区域外围的区域。

在下文中,因此在空间或时间上(空间-时间)处于外围的区域将被称为外围区域。就是说,将pua、pub和puc称为pucurr的空间外围区域,并且将pucol称为pucurr的时间外围区域。

运动向量编码单元722将码数分配给这些外围区域的运动信息,并且此时,控制根据静止区域确定结果分配码数的方式。更具体地,在其中上述式(17)和式(18)成立,并且式(19)也成立的情况下,在其中应用ref_picr_reordering的情况下,或者在其中参考索引refcol具有指示紧邻的先前图片的poc值的情况下,在静止区域确定中静止区域确定单元721如下式(24)至(27)中的那样改变码数分配。

pmv0=mvpucol...(24)

pmv1=mvpua...(25)

pmv2=mvpub...(26)

pmv3=mvpuc...(27)

就是说,对于静止区域,将最小码数分配给时间预测运动向量信息(时间预测器),以便抑制移动区域中的运动向量的传播。因此,运动向量编码单元722可以提高预测运动向量信息的预测精度,并且可以提高编码效率。

注意,静止区域确定单元721仍针对每个预测单位执行区域确定,因此运动向量编码单元722在静止区域确定单元721的确定之后执行码数分配使得进一步提高了预测运动向量信息的预测精度,并且使得进一步提高了编码效率。

注意,在确定为静止区域的情况下分配码数的方式可以不同于式(24)至(27)。就是说,在确定静止区域的情况下,至少较之确定由移动物体的图像构成的移动区域的情况,向时间预测运动向量信息(时间预测器)分配较小的码数是足够的。例如,运动向量编码单元722可以向mvpucol分配pmv1或pmv2。

再者,可以进行如下布置:运动向量编码单元722可以根据静止区域确定的精度(准确性)改变将分配的码数。例如,可以进行如下布置:其中静止区域确定是软确定,并且准确性越高,则运动向量编码单元722分配的码数越小。

此外,上文针对pua、pub、puc和pucol作为向其分配码数的外围区域的示例进行了描述,但是可以进行如下布置:其中其他可选的区域是外围区域,并且也针对这些外围区域的运动向量信息执行码数分配。就是说,不仅针对其执行码数分配的外围区域的位置是可选的,而且其数目(即,将分配的码数的数目)也是可选的。

再者,上文已描述了:向空间预测运动向量信息(空间预测器)分配较小的码数的方式是初始状态,并且在静止区域确定单元721确定当前区域是静止区域的情况下,分配方式改变以便向时间预测运动向量信息(时间预测器)分配较小的码数,然而,不限于此,可以进行如下布置:其中向时间预测运动向量信息(时间预测器)分配较小的码数的方式是初始状态,并且在静止区域确定单元721确定当前区域是静止区域的情况下,分配方式改变以便向空间预测运动向量信息(空间预测器)分配较小的码数。

再者,上文已描述了:在静止区域确定单元721确定当前区域是静止区域的情况下,运动向量编码单元722向时间预测运动向量信息(时间预测器)分配较小的码数,但是可以进行如下布置:其中时间预测运动向量信息(时间预测器)被强制地选择为预测运动向量信息(仅时间预测运动向量信息(mvpucol)被生成作为候选预测运动向量信息)。

因此,运动向量编码单元722可以以更确定的方式将时间预测运动向量信息(时间预测器)选择为静止区域的预测运动向量信息。因此,运动向量编码单元722可以以更确定的方式抑制移动区域中的运动向量传播到静止区域。然而,在存在在静止区域确定中出现错误终止的可能性的情况下,优选地使用成本函数值等以传统方式选择预测运动向量信息。

再者,上文以pua、pub和puc作为pucurr的空间外围区域,并且以pucol作为pucurr的时间外围区域进行了描述,但是空间外围区域和时间外围区域不限于此,并且可以是任何区域,只要在将当前区域取作处理对象时已生成了运动信息。

[运动预测/补偿单元、静止区域确定单元和运动向量编码单元]

图34是图示运动预测/补偿单元715、静止区域确定单元721和运动向量编码单元722的主要配置示例的框图。

如图34中所示,运动预测/补偿单元715具有运动搜索单元731、成本函数计算单元732、模式确定单元733、运动补偿单元734和运动信息缓冲器735。

再者,运动向量编码单元722具有码数分配单元741、预测运动向量生成单元742和差运动向量生成单元743。

运动搜索单元731接收来自屏幕重排缓冲器702的输入图像像素值和来自帧存储器712的参考图像像素值的输入。运动搜索单元731对所有帧间预测模式执行运动搜索处理,并且生成包括运动向量和参考索引的运动信息。运动搜索单元731将运动信息提供给运动向量编码单元722的预测运动向量生成单元742。

再者,静止区域确定单元721获得作为运动预测/补偿单元715的运动信息缓冲器735中存储的外围区域的运动信息的外围运动信息,并且根据外围运动信息确定待处理区域(当前区域)是否是静止区域。

例如,对于时间外围区域pucol,在其中上述式(17)和式(18)成立,并且式(19)也成立的情况下,在其中应用ref_picr_reordering的情况下,或者在其中参考索引refcol具有指示紧邻的先前图片的poc值的情况下,静止区域确定单元721确定当前区域pucurr是静止区域。静止区域确定单元721将该静止区域确定结果提供给运动向量编码单元722的码数分配单元741。

运动向量编码单元722的码数分配单元741从运动预测/补偿单元715的运动信息缓冲器735获得外围运动信息,并且还从静止区域确定单元721获得静止区域确定结果。码数分配单元741确定针对每个相邻运动信息分配码数的方式,并且将该分配方式提供给预测运动向量生成单元742,其控制码数分配控制信号。

在从运动搜索单元731获得关于当前pu的每个帧间预测模式的运动信息之后,预测运动向量生成单元742从运动信息缓冲器735获得与每个运动信息对应的外围运动信息。如非专利文献2中所述,预测运动向量生成单元742使用该外围运动信息生成多个候选预测运动向量信息。然而,注意,不同于非专利文献2中描述的方法,码数分配单元741设定的码数被分配给每个预测运动向量信息。

就是说,预测运动向量生成单元742根据上述式(5)针对当前pu生成空间预测运动向量信息(空间预测器)。再者,预测运动向量生成单元742根据上述式(9)针对当前pu生成时间预测运动向量信息(时间预测器)。此外,预测运动向量生成单元742根据上述式(10)针对当前pu生成空间-时间预测运动向量信息(空间-时间预测器)。预测运动向量生成单元742将码数分配单元741设定的码数分配给每个获得的预测运动向量信息。

预测运动向量生成单元742随后将从运动搜索单元731获得的运动信息、每个生成的候选预测运动向量信息以及分别分配给每个预测运动向量信息的码数,提供给差运动向量生成单元743。

差运动向量生成单元743针对每个帧间预测模式,从提供给其的预测运动向量信息中选择最优的一个,并且生成差运动向量信息,其包括运动向量信息及其预测运动向量信息之间的差值。差运动向量生成单元743将在每个帧间预测模式中生成的差运动向量信息、所选择的帧间预测模式的预测运动向量信息及其码数,提供给成本函数计算单元732或运动预测/补偿单元715。

再者,运动搜索单元731使用搜索的运动向量信息来对参考图像执行补偿处理,并且因此生成预测图像。此外,运动搜索单元731计算预测图像和输入图像之间的差(差像素值),并且将差像素值提供给成本函数计算单元732。

成本函数计算单元732使用从运动搜索单元731提供的每个帧间预测模式的差像素值,并且计算每个帧间预测模式中的成本函数值。成本函数计算单元732将已计算的每个帧间预测模式中的成本函数值、每个帧间预测模式中的差运动信息、每个帧间预测模式中的预测运动向量信息及其码数,提供给模式确定单元733。

模式确定单元733使用关于帧间预测模式的成本函数值来确定使用哪个帧间预测模式,并且将具有最小成本函数值的帧间预测模式取作最优预测模式。模式确定单元733将作为与其最优预测模式相关的信息的最优模式信息以及被选择为最优预测模式的帧间预测模式的差运动信息、预测向量信息和码数,提供给运动补偿单元734。

运动补偿单元734从所提供的最优预测模式的差运动信息和预测运动向量信息获得运动向量,并且使用获得的运动向量执行来自帧存储器712的参考图像的补偿,从而生成最优预测模式的预测图像。

在预测图像选择单元716已选择帧间预测的情况下,从预测图像选择单元716提供指示这一点的信号。作为对其的响应,运动补偿单元734将最优预测模式信息、该模式的差运动向量信息、还有该模式的预测运动向量信息的码数,提供给无损编码单元706。

再者,运动补偿单元734在运动信息缓冲器735中存储从被选择为最优预测模式的模式的差运动向量信息和预测运动向量信息获得的信息,即,最优预测模式的运动信息。注意,在预测图像选择单元716未选择帧间预测的情况下(即,在选择帧内预测图像的情况下),在运动信息缓冲器735中存储0向量作为运动向量信息。

运动信息缓冲器735存储过去处理的区域的最优预测模式的运动信息。在针对在处理时间上晚于该区域的区域的处理中,所存储的运动信息作为外围运动信息,被提供给静止区域确定单元721、码数分配单元741和预测运动向量生成单元742。

如上文所述,静止区域确定单元721针对每个预测处理单位,执行是否是静止区域的确定。运动向量编码单元722随后基于静止区域确定结果控制码数分配,并且在静止区域的情况下,向时间预测运动向量信息(时间预测器)分配最小码数。运动预测/补偿单元715随后对运动向量编码单元722生成的差运动信息和预测运动向量信息的码数进行编码。因此,图像编码设备700可以提高预测运动向量信息的预测精度,并且可以提高编码效率。

[处理流程]

接下来,将描述图像编码设备700处执行的处理流程。基本上按照与参照图16和图17描述的流程图相同的方式执行编码处理和帧内预测处理。就是说,执行与图像编码设备51执行处理的情况相同的处理。因此,将省略这些处理的描述。

接下来,将参照图35中的流程图描述图16的步骤s22中执行的帧间运动预测处理的示例。

在步骤s701中开始帧间运动预测处理之后,在该情况下,运动搜索单元731执行关于每个帧间预测模式的运动搜索,并且生成运动信息和差像素值。

在步骤s702中,静止区域确定单元721获得作为时间外围区域的并置区域的运动信息。在步骤s703中,静止区域确定单元721基于并置区域的运动信息确定当前区域是否是静止区域。

在步骤s704中,码数分配单元741根据静止区域确定结果确定针对预测运动向量信息的码数分配。

在步骤s705中,预测运动向量生成单元742生成所有候选预测运动向量信息。

在步骤s706中,差运动向量生成单元743确定关于每个帧间预测模式的最优预测运动向量信息。再者,差运动向量生成单元743生成包括差运动向量的差运动信息,其是预测运动向量信息和运动信息的运动向量之间的差。

在步骤s707中,成本函数计算单元732计算每个帧间预测模式的成本函数值。

在步骤s708中,模式确定单元733使用在步骤s707中计算的成本函数值,确定作为最优帧间预测模式的最优帧间预测模式(还被称为最优预测模式)。

在步骤s709中,运动补偿单元734在最优帧间预测模式中执行运动补偿。在步骤s710中,运动补偿单元734经由预测图像选择单元716将在步骤s709中通过运动补偿获得的预测图像提供给计算单元703和计算单元710,并且生成差图像信息和解码图像。再者,在步骤s711中,运动补偿单元734将诸如最优预测模式信息的关于最优帧间预测模式的信息、差运动信息和预测运动向量信息的码数等,提供给无损编码单元706,以便进行编码。

在步骤s712中,运动信息缓冲器735存储在最优帧间预测模式中选择的运动信息。在存储运动信息之后,运动信息缓冲器735结束帧间运动预测处理。

通过执行上述处理,图像编码设备700可以提高预测运动向量信息的预测精度,并且可以提高编码效率。

[图像解码设备]

图36是图示与图32中的图像编码设备700对应的图像解码设备的主要配置示例的框图。

图36中所示的图像解码设备800具有与图20中的图像解码设备101基本上相同的配置。图像解码设备800通过与图像编码设备700的编码方法对应的解码方法,对图像编码设备700生成的编码数据进行解码。再者,假设图像解码设备800按照与图像编码设备700相同的方式,针对每个预测单位(pu)执行帧间预测。

如图36中所示,图像解码设备800包括存储缓冲器801、无损解码单元802、逆量化单元803、逆正交变换单元804、计算单元805、环路滤波器806、屏幕重排缓冲器807以及d/a转换单元808。再者,图像解码设备800包括帧存储器809、选择单元810、帧内预测单元811、运动预测/补偿单元812和选择单元813。

此外,图像解码设备800包括静止区域确定单元821和运动向量解码单元822。

存储缓冲器801存储传送给其的编码数据,并且在预定的定时将编码数据提供给无损解码单元802。无损解码单元802通过与图32中的无损编码单元706的编码格式对应的格式,对存储缓冲器801提供的无损编码单元706已编码的信息进行解码。无损解码单元802将通过解码获得的差图像的量化系数数据提供给逆量化单元803。再者,无损解码单元802确定对于最优预测模式已选择帧内预测模式还是已选择帧间预测模式,并且将关于该最优模式的信息提供给已确定被选择的模式的帧内预测单元811和运动预测/补偿单元812中的一个。

就是说,例如,在帧间预测模式已在图像编码设备700处被选择为最优预测模式的情况下,关于最优预测模式的信息被提供给运动预测/补偿单元812。

逆量化单元803利用与图32中的量化单元705的量化格式对应的格式,执行通过无损解码单元802的解码获得的量化系数数据的逆量化,并且将获得的系数数据提供给逆正交变换单元804。

逆正交变换单元804利用与图32中的正交变换单元704的正交变换格式对应的格式,对从逆量化单元803提供的系数数据执行逆正交变换。逆正交变换单元804通过该逆正交变换处理,获得了与在图像编码设备700处经历正交变换之前的残差数据对应的解码残差数据。

通过经历正交变换获得的残差数据被提供给计算单元805。再者,经由选择单元813,从帧内预测单元811或者运动预测/补偿单元812将预测图像提供给计算单元805。

计算单元805使解码残差数据和预测图像相加,以便获得与图像编码设备700的计算单元703减去预测图像之前的图像数据对应的解码图像数据。计算单元805将解码图像数据提供给环路滤波器806。

环路滤波器806使所提供的解码图像适当地经历解块滤波器处理和包括自适应环路滤波器处理等的环路滤波器处理,并且将这些提供给屏幕重排缓冲器807。

环路滤波器806包括解块滤波器和自适应环路滤波器等,并且对从计算单元705提供的解码图像适当地执行滤波处理。例如,环路滤波器806通过对解码图像执行解块滤波器处理来去除解码图像的块噪声。再者,例如,环路滤波器806通过使用wiener滤波器(wienerfilter)执行环路滤波器处理来对解块滤波器处理结果(经历块噪声去除的解码图像)执行图像质量提高。

注意,可以进行如下布置:其中环路滤波器806对解码图像执行可选的滤波器处理。再者,可以进行如下布置:其中环路滤波器806使用从图32中的图像编码设备700提供的滤波器系数来执行滤波器处理。

环路滤波器806将滤波器处理结果(滤波器处理之后的解码图像)提供给屏幕重排缓冲器807和帧存储器809。注意,从计算单元805输出的解码图像可以被提供给屏幕重排缓冲器807和帧存储器809而不通过环路滤波器806。就是说,可以省略环路滤波器806的滤波器处理。

屏幕重排缓冲器807重新排列图像。就是说,由图32中的屏幕重排缓冲器702针对编码序列重新排列的的帧序列被重新排列成原始显示序列。d/a转换单元808执行从屏幕重排缓冲器807提供的图像的d/a转换,并且输出到未示出的显示器用于显示。

帧存储器809存储提供给其的解码图像,并且在预定的定时或者基于来自帧内预测单元811或运动预测/补偿单元812等的外部请求,将所存储的解码图像作为参考图像提供给选择单元810。

选择单元810选择从帧存储器809提供的参考图像的提供目标。在对经历帧内编码的图像解码的情况下,选择单元810将从帧存储器809提供的参考图像提供给帧内预测单元811。再者,在对经历帧间编码的图像解码的情况下,选择单元810将从帧存储器809提供的参考图像提供给运动预测/补偿单元812。

从无损解码单元802向帧内预测单元811提供通过对报头信息解码获得的指示帧内预测模式的信息。帧内预测单元811使用在图32中的帧内预测单元714处在帧内预测模式中使用的从帧存储器809获得的参考图像来执行帧内预测,从而生成预测图像。帧内预测单元811将所生成的预测图像提供给选择单元813。

运动预测/补偿单元812获得通过对来自无损解码单元802的报头信息(最优预测模式信息、差信息和预测运动向量信息的码数等)解码而获得的信息。

运动预测/补偿单元812在图32中的运动预测/补偿单元715使用的相同的帧间预测模式中,使用从帧存储器809获得的参考图像来执行帧间预测,因此生成预测图像。就是说,运动预测/补偿单元812可以按照与图32中的运动预测/补偿单元715相同的方式,在除了avc编码格式规定的模式以外的可选模式中执行该帧间预测。

静止区域确定单元821执行与静止区域确定单元721基本上相同的处理,并且确定当前区域是否是静止区域。就是说,在其中式(17)和式(18)成立,并且式(19)也成立的情况下,在其中应用ref_picr_reordering的情况下,或者在其中参考索引refcol具有指示紧邻的先前图片的poc值的情况下,根据当前区域的并置区域的运动信息,静止区域确定单元821将当前区域pucurr确定为静止区域。

静止区域确定单元821按预测处理单位执行该静止区域确定,并且将静止区域确定结果提供给运动向量解码单元822。

运动向量解码单元822依据从静止区域确定单元821提供的静止区域确定结果来控制将码数分配给预测运动向量信息的方式,在该控制下分析从运动预测/补偿单元812提供的预测运动向量信息的码数,并且重建预测运动向量信息。

就是说,通过利用与图32的静止区域确定单元721相同的方法,依据静止区域确定单元821确定的静止区域确定结果来控制码数分配方式,运动向量解码单元822可以正确地复制图32中的运动向量编码单元722的分配码数的方式。因此,通过正确地复制运动向量编码单元722的分配码数的方式,运动向量解码单元822可以正确地分析从图像编码设备700提供的预测运动向量信息的码数,并且正确地重建预测运动向量信息。

运动向量解码单元822将重建的预测运动向量信息提供给运动预测/补偿单元812。运动预测/补偿单元812使用该预测运动向量信息重建运动向量信息,使用该运动向量信息执行运动补偿,并且因此生成预测图像。运动预测/补偿单元812将生成的预测图像提供给选择单元813。

选择单元813选择提供给计算单元805的预测图像的提供源。就是说,选择单元813将运动预测/补偿单元812或帧内预测单元811生成的预测图像提供给计算单元805。

因此,通过基于静止区域确定单元821按预测处理单位的静止区域确定的确定结果来控制分配给预测运动向量信息的码数,运动向量解码单元822可以正确地复制在图像编码设备700处分配码数的方式。因此,运动向量解码单元822可以正确地分析从图像编码设备700提供的预测运动向量信息的码数,并且正确地重建预测运动向量信息。

因此,图像解码设备800可以正确地对图像编码设备700已编码的编码数据进行解码,并且实现编码效率的提高。

[运动预测/补偿单元、静止区域确定单元和运动向量解码单元]

图37是图示运动预测/补偿单元812、静止区域确定单元821和运动向量解码单元822的主要配置示例的框图。

如图37中所示,运动预测/补偿单元812具有差运动信息缓冲器831、预测运动向量信息缓冲器832、运动信息重建单元833、运动补偿单元834和运动信息缓冲器835。

再者,运动向量解码单元822具有码数分配单元841和预测运动向量重建单元842。

差运动信息缓冲器831存储从无损解码单元802提供的差运动信息。该差运动信息是从图像编码设备700提供的、被选择为最优预测模式的帧间预测模式的差运动信息。差运动信息缓冲器831在预定的定时或者基于来自运动信息重建单元833的外部请求,将所存储的差运动信息提供给运动信息重建单元833。

预测运动向量信息缓冲器832存储从无损解码单元802提供的预测运动向量信息。已从图像编码设备700提供该预测运动向量信息的码数,并且该码数是分配给被选择为最优预测模式的帧间预测模式的预测运动向量信息的码数。预测运动向量信息缓冲器832在预定的定时或者基于来自预测运动向量重建单元842的外部请求,将所存储的预测运动向量信息的码数提供给运动向量解码单元822的预测运动向量重建单元842。

再者,静止区域确定单元821针对预测处理单位中的每个区域,从运动信息缓冲器835获得并置区域的运动信息,并且执行静止区域确定。静止区域确定单元921将确定结果(静止区域确定结果)提供给运动向量解码单元822的码数分配单元841。

运动向量解码单元822的码数分配单元841依据从静止区域确定单元921提供的静止区域确定结果,针对预测处理单位中的每个区域,控制码数分配方式,并且将码数分配控制信号提供给预测运动向量重建单元842。

预测运动向量重建单元842使用来自码数分配单元841的针对预测处理单位中的每个区域指定的码数分配方式,分析从预测运动向量信息缓冲器832获得的预测运动向量信息的码数。预测运动向量重建单元842识别与所分析的码数对应的预测运动向量信息,并且重建该预测运动向量信息。就是说,预测运动向量重建单元842从运动信息缓冲器835获得与该码数对应的外围区域的外围运动信息,并且将外围运动信息取作预测运动向量信息。

预测运动向量重建单元842将重建的预测运动向量信息提供给运动预测/补偿单元812的运动信息重建单元833。

运动预测/补偿单元812的运动信息重建单元833使从预测运动向量重建单元842获得的预测运动向量信息与从差运动信息缓冲器831获得的差运动信息相加,并且重建当前区域(当前pu)的运动信息。运动信息重建单元833将重建的当前区域的运动信息提供给运动补偿单元834。

运动补偿单元834使用当前区域的运动信息对从帧存储器809获得的参考图像像素值执行运动补偿,并且生成预测图像。运动补偿单元834经由选择单元813将参考图像像素值提供给计算单元805。

再者,运动信息重建单元833还将已重建的当前区域的运动信息提供给运动信息缓冲器835。

运动信息缓冲器835存储从运动信息重建单元833提供的当前区域的运动信息。在针对在处理时间上晚于当前区域的其他区域的处理中,运动信息缓冲器835将该运动信息作为外围运动信息提供给静止区域确定单元821和预测运动向量重建单元842。

通过每个部件执行如上文所述的处理,图像解码设备800可以正确地对图像编码设备700编码的编码数据进行解码,并且可以实现提高的编码效率。

[处理流程]

接下来,将描述该图像解码设备800执行的处理流程。图像解码设备800按照与参照图22中的流程图描述的方式相同的方式执行对编码数据解码的解码处理。就是说,图像解码设备800按照与图像解码设备101的情况基本上相同的方式执行解码。然而,注意,如下执行图22中的步骤s138中的预测处理。

将参照图38中的流程图描述关于图像解码设备800的情况的图22中的步骤s138中执行的预测处理的流程的示例。

在开始预测处理之后,在步骤s801中,无损解码单元802基于从图像编码设备700提供的关于最优预测模式的信息,确定待处理的编码数据是否已被帧内编码。在确定这已被帧内编码的情况下,无损解码单元802使处理前往步骤s802。

在步骤s802中,帧内预测单元811获得帧内预测模式信息。在步骤s803中,帧内预测单元811使用在步骤s802中获得的帧内预测模式信息来执行帧内预测以生成预测图像。在生成预测图像之后,帧内预测单元811结束预测处理,并且使处理返回图22。

再者,在步骤s801中确定已执行帧间编码的情况下,无损解码单元802使处理前往步骤s804。

在步骤s804中,运动预测/补偿单元812执行帧间运动预测处理。在帧间运动预测处理结束之后,运动预测/补偿单元812结束预测处理,并且使处理返回图22。

接下来,将参照图39中的流程图描述图38中的步骤s804中执行的帧间运动预测处理的流程示例。

在开始帧间运动预测处理之后,在步骤s821中,运动预测/补偿单元812获得关于针对当前区域的运动预测的信息。例如,预测运动向量信息缓冲器832获得预测运动向量信息的码数,并且差运动信息缓冲器831获得差运动信息。

在步骤s822中,静止区域确定单元821从运动信息缓冲器835获得并置区域的运动信息。在步骤s823中,如上文所述,静止区域确定单元821基于该信息确定当前区域是否是静止区域。

在步骤s824中,码数分配单元841根据步骤s823中的静止区域确定结果来决定针对预测运动向量信息的码数。在步骤s825中,预测运动向量重建单元842依据在步骤s824中决定的分配来分析预测运动向量信息的码数,并且重建预测运动向量信息。

在步骤s826中,运动信息重建单元833使用在步骤s825中重建的预测运动向量信息以及在步骤s821中获得的差运动信息来重建当前区域的运动信息。

在步骤s827中,运动补偿单元834利用在步骤s826中重建的运动信息,对帧存储器809获得的参考图像执行运动补偿。

在步骤s828中,运动补偿单元834经由选择单元813将通过步骤s827中的处理生成的预测图像提供给计算单元805,以便生成预测图像。在步骤s829中,运动信息缓冲器835存储在步骤s826中重建的运动信息。该运动信息被用作在时间上在以后执行的针对其他区域的处理中的外围信息。

在存储运动信息之后,运动信息缓冲器835结束帧间运动预测处理,并且使处理返回图38。

通过执行如上文所述的每个处理,图像解码设备800可以正确地对图像编码设备700编码的编码数据进行解码,并且可以实现提高的编码效率。

注意,本技术可以应用于如下图像编码设备和图像解码设备:其用于经由诸如卫星广播、有线电视、互联网、蜂窝电话等的网络介质,如同mpeg、h.26x等,接收通过诸如离散余弦变换等的正交变换以及运动补偿而压缩的图像信息(位流)。再者,本技术可以应用于如下图像编码设备和图像解码设备:其用于处理诸如光盘、磁盘和闪速存储器的存储介质上的图像信息。此外,本发明可以应用于在这些图像编码设备和图像解码设备中包括的运动预测补偿设备等。

上述系列处理可以由硬件执行,或者可以由软件执行。在通过软件执行该系列处理的情况下,构成其软件的程序被安装在计算机中。这里,计算机的示例包括内建于专用硬件中的计算机,通用个人计算机,由此各个功能可以由安装到通用个人计算机的各种类型的程序等执行。

[个人计算机的配置示例]

图26是图示使用程序执行上述系列处理的计算机的硬件的配置示例的框图。

对于计算机,cpu(中央处理单元)201、rom(只读存储器)202和ram(随机存取存储器)203通过总线204相互连接。

此外,输入/输出接口205连接到总线204。输入单元206、输出单元207、存储单元208、通信单元209以及驱动器210连接到输入/输出接口205。

输入单元206由键盘、鼠标、麦克风等构成。输出单元207由显示器、扬声器等构成。存储单元208由硬盘、非易失性存储器等构成。通信单元209由网络接口等构成。驱动器210驱动诸如磁盘、光盘、磁光盘、半导体存储器等的可移除介质211。

对于这样配置的计算机,例如,cpu201经由输入/输出接口205和总线204将存储单元208中存储的程序加载到ram203,并且执行该程序,并且因此,执行上述系列处理。

可以通过将计算机(cpu201)执行的程序记录在例如用作封装介质等的可移除介质211中来提供该程序。再者,可以经由诸如局域网、互联网或数字广播的有线或无线传送介质来提供程序。

对于计算机,可以通过将可移除介质211安装在驱动器210上经由输入/输出接口205将程序安装在存储单元208中。再者,可以经由有线或无线传送介质由通信单元209接收程序并且将该程序安装在存储单元208中。另外,可以将程序预先安装在rom202或存储单元208中。

注意,计算机执行的程序可以是其中沿本说明书中描述的次序按时间次序执行处理的程序,或者可以是其中并行地或者在需要的定时(诸如当执行调用时)执行处理的程序。

本发明的实施例不便于上述实施例,并且在不偏离本发明的实质内容的情况下可以进行各种修改。

例如,上述图像编码设备和图像解码设备可以应用于可选的电设备。在下文中,将描述电设备的示例。

[电视接收器的配置示例]

图27是图示使用已被应用本发明的图像解码设备的电视接收器的主要配置示例的框图。

图27中所示的电视接收器300包括地面调谐器313、视频解码器315、视频信号处理电路318、图形生成电路319、面板驱动电路320、和显示面板321。

地面调谐器313经由天线接收地面模拟广播的广播波信号,进行解调,获得视频信号,并且将它们提供给视频解码器315。视频解码器315使从地面调谐器313提供的视频信号经历解码处理,并且将获得的数字分量信号提供给视频信号处理电路318。

视频信号处理电路318使从视频解码器315提供的视频数据经历诸如噪声去除等的预定处理,并且将获得的视频数据提供给图形生成电路319。

图形生成电路319生成将显示在显示面板321上的节目的视频数据,或者将经由网络提供的、由基于应用的处理得到的图像数据等,并且将生成的视频数据或图像数据提供给面板驱动电路320。再者,图形生成电路319还执行诸如如下处理:将通过生成关于用户的、显示用于选择项目等的屏幕的视频数据(图形)并且将其叠加在节目的视频数据上而获得的视频数据适当地提供给面板驱动电路320。

面板驱动电路320基于从图形生成电路319提供的数据来驱动显示面板321,以在显示面板321上显示节目的视频或者上述各种屏幕。

显示面板321由lcd(液晶显示器)等构成,并且根据面板驱动电路320的控制来显示节目的视频等。

再者,电视接收器300还包括音频a/d(模拟/数字)转换电路314、音频信号处理电路322、回声消除/音频合成电路323、音频放大器电路324、和扬声器325。

地面调谐器313对接收到的广播波信号解调,从而不仅获得视频信号,还获得音频信号。地面调谐器313将获得的音频信号提供给音频a/d转换电路314。

音频a/d转换电路314使从地面调谐器313提供的音频信号经历a/d转换处理,并且将获得的数字音频信号提供给音频信号处理电路322。

音频信号处理电路322使从音频a/d转换电路314提供的音频数据经历诸如噪声去除等的预定处理,并且将获得的音频数据提供给回声消除/音频合成电路323。

回声消除/音频合成电路323将从音频信号处理电路322提供的音频数据提供给音频放大器电路324。

音频放大器电路324使从回声消除/音频合成电路323提供的音频数据经历d/a转换处理,经历放大器处理以调整到预定音量,并且随后从扬声器325输出音频。

此外,电视接收器300还包括数字调谐器316和mpeg解码器317。

数字调谐器316经由天线接收数字广播(地面数字广播、bs(广播卫星)/cs(通信卫星)数字广播)的广播波信号,进行解调以获得mpeg-ts(运动图片专家组-输送流),并且将其提供给mpeg解码器317。

mpeg解码器317对加到从数字调谐器316提供的mpeg-ts的扰动进行解扰,并且提取包括用作播放对象(观看对象)的节目的数据的流。mpeg解码器317对构成所提取的流的音频分组解码,将获得的音频数据提供给音频信号处理电路322,并且还对构成流的视频分组解码,并且将获得的视频数据提供给视频信号处理电路318。再者,mpeg解码器317经由未示出的路径将从mpeg-ts提取的epg(电子节目指南)数据提供给cpu332。

电视接收器300使用上述图像解码设备作为用于以这种方式对视频分组解码的mpeg解码器317。因此,mpeg解码器317可以按照与上述图像解码设备的情况相同的方式实现较高的编码效率。

从mpeg解码器317提供的视频数据按照与从视频解码器315提供的视频数据的情况相同的方式,在视频信号处理电路318处经历预定处理。经历预定处理的视频数据随后在图形生成电路319处被适当地叠加在生成的视频数据等上,经由面板驱动电路320被提供给显示面板321,并且在显示面板321上显示其图像。

从mpeg解码器317提供的音频数据按照与从音频a/d转换电路314提供的音频数据的情况相同的方式,在音频信号处理电路322处经历预定处理,经由回声消除/音频合成电路323被提供给音频放大器电路324,并且经历d/a转换处理和放大器处理。作为其结果,从扬声器325输出按预定音量调整的音频。

再者,电视接收器300还包括麦克风326和a/d转换电路327。

a/d转换电路327接收用作音频交谈的、提供给电视接收器300的由麦克风326收集的用户的音频信号,使接收到的音频信号经历a/d转换处理,并且将获得的数字音频数据提供给回声消除/音频合成电路323。

在已从a/d转换电路327提供电视接收器300的用户(用户a)的音频数据的情况下,回声消除/音频合成电路323对于用户(用户a)的音频数据执行回声消除,并且经由音频放大器电路324从扬声器325输出通过与其他音频数据等合成而获得的音频数据。

此外,电视接收器300还包括音频编解码器328、内部总线329、sdram(同步动态随机存取存储器)330、闪速存储器331、cpu332、usb(通用串行总线)i/f333、和网络i/f334。

a/d转换电路327接收用作音频交谈的、提供给电视接收器300的由麦克风326收集的用户的音频信号,使接收到的音频信号经历a/d转换处理,并且将获得的数字音频数据提供给音频编解码器328。

音频编解码器328将从a/d转换电路327提供的音频数据转换成用于经由网络传送的预定格式的数据,并且经由内部总线329提供给网络i/f334。

网络i/f334经由安装在网络端子335上的线缆连接到网络。例如,网络i/f334将从音频编解码器328提供的音频数据传送到连接到其网络的另一设备。再者,例如,网络i/f334经由网络端子335接收从经由网络与其连接的另一设备传送的音频数据,并且经由内部总线329将其提供给音频编解码器328。

音频编解码器328将从网络i/f334提供的音频数据转换成预定格式的数据,并且将其提供给回声消除/音频合成电路323。

回声消除/音频合成电路323以从音频编解码器328提供的音频数据为对象执行回声消除,并且经由音频放大器电路324从扬声器325输出通过合成音频数据和其他音频数据等而获得的音频的数据。

sdram330存储cpu332执行处理所需的各种类型的数据。

闪速存储器331存储将由cpu332执行的程序。cpu332在预定定时,诸如当激活电视接收器300等时,读出闪速存储器331中存储的程序。经由数字广播获得的epg数据、经由网络从预定服务器获得的数据等也存储在闪速存储器331中。

例如,包括通过cpu332的控制经由网络从预定服务器获得的内容数据的mpeg-ts被存储在闪速存储器331中。例如,闪速存储器331通过cpu332的控制经由内部总线329将其mpeg-ts提供给mpeg解码器317。

mpeg解码器317按照与从数字调谐器316提供的mpeg-ts的情况相同的方式处理其mpeg-ts。这样,电视接收器300经由网络接收由视频、音频等构成的内容数据,使用mpeg解码器317进行解码,从而可以显示其视频,并且可以输出其音频。

再者,电视接收器300还包括光接收单元337,用于接收从遥控器351传送的红外信号。

光接收单元337从遥控器351接收红外线,并且向cpu332输出通过解调获得的表示用户操作的内容的控制码。

cpu332执行闪速存储器331中存储的程序,以根据从光接收单元337等提供的控制码来控制电视接收器300的整体操作。cpu332和电视接收器300的各单元经由未示出的路径连接。

usbi/f333针对经由安装在usb端子336上的usb线缆连接的电视接收器300的外部设备执行数据的传送/接收。网络i/f334经由安装在网络端子335上的线缆连接到网络,还针对连接到网络的各种设备执行音频数据以外的数据的传送/接收。

电视接收器300可以通过使用上述图像解码设备作为mpeg解码器317来提高编码效率。作为其结果,电视接收器300可以从经由天线接收的广播信号或者经由网络获得的内容数据获得并显示较高图像质量的解码图像。

[蜂窝电话的配置示例]

图28是图示使用已被应用本发明的图像编码设备和图像解码设备的蜂窝电话的主要配置示例的框图。

图28中所示的蜂窝电话400包括被配置成整体地控制各单元的主控制单元450、电源电路单元451、操作输入控制单元452、图像编码器453、摄像装置i/f单元454、lcd控制单元455、图像解码器456、复用/分离单元457、记录/播放单元462、调制/解调电路单元458、和音频编解码器459。这些单元经由总线460相互连接。

再者,蜂窝电话400包括操作键419、ccd(电荷耦合器件)摄像装置416、液晶显示器418、存储单元423、传送/接收电路单元463、天线414、麦克风(mic)421、和扬声器417。

在呼叫结束并且通过用户操作接通电源键时,电源电路单元451通过从电池组向各单元供电在操作状态下激活蜂窝电话400。

蜂窝电话400基于由cpu、rom、ram等构成的主控制单元450的控制,在诸如语音呼叫模式、数据通信模式等的各种模式中,执行诸如音频信号的传送/接收、电子邮件和图像数据的传送/接收、图像拍摄、数据记录等的各种操作。

例如,在语音呼叫模式中,蜂窝电话400通过音频编解码器459将麦克风(话筒)421收集的音频信号转换成数字音频数据,在调制/解调电路单元458处使其经历扩频处理,并且在传送/接收电路单元463处使其经历数字/模拟转换处理和频率转换处理。蜂窝电话400经由天线414将通过其转换处理获得的用于传送的信号传送到未示出的基站。传送到基站的用于传送的信号(音频信号)经由公共电话网络被提供给另一方的蜂窝电话。

再者,例如,在语音呼叫模式中,蜂窝电话400对在天线414处、传送/接收电路单元463处接收到的接收信号进行放大,进一步经历频率转换处理和模拟/数字转换处理,在调制/解调电路单元458处经历解扩处理,并且通过音频编解码器459转换成模拟音频信号。蜂窝电话400从扬声器417输出其经转换的和所获得的模拟音频信号。

此外,例如,在数据通信模式中传送电子邮件的情况下,蜂窝电话400接受在操作输入控制单元452处通过操作键419的操作而输入的电子邮件的文本数据。蜂窝电话400在主控制单元450处处理其文本数据,并且经由lcd控制单元455将其作为图像显示在液晶显示器418上。

再者,蜂窝电话400基于操作输入控制单元452接受的文本数据、用户指令等,在主控制单元450处生成电子邮件数据。蜂窝电话400使其电子邮件数据在调制/解调电路单元458处经历扩频处理,并且在传送/接收电路单元463处经历数字/模拟转换处理和频率转换处理。蜂窝电话400经由天线414将通过其转换处理获得的用于传送的信号传送到未示出的基站。传送到基站的用于传送的信号(电子邮件)经由网络、邮件服务器等被提供给预定目标。

再者,例如,在数据通信模式中接收电子邮件的情况下,蜂窝电话400通过传送/接收电路单元463经由天线414接收从基站传送的信号,进行放大,并且进一步经历频率转换处理和模拟/数字转换处理。蜂窝电话400使其接收信号在调制/解调电路单元458处经历解扩处理以恢复原始的电子邮件数据。蜂窝电话400经由lcd控制单元455在液晶显示器418上显示恢复的电子邮件数据。

注意,蜂窝电话400可以经由记录/播放单元462将接收到的电子邮件数据记录(存储)在存储单元423中。

该存储单元423是可选的可重写记录介质。存储单元423可以是诸如ram、内建闪速存储器等的半导体存储器,可以是硬盘,或者可以是诸如磁盘、磁光盘、光盘、usb存储器、存储器卡等的可移除介质。毋庸置疑,存储单元423可以是不同于这些设备的设备。

此外,例如,在数据通信模式中传送图像数据的情况下,蜂窝电话400通过在ccd摄像装置416处进行成像来生成图像数据。ccd摄像装置416包括ccd,其用作诸如透镜、光圈等的光学器件,并且用作光电转换器件,该ccd对物体成像,将接收到的光的强度转换成电信号,并且生成物体的图像的图像数据。ccd摄像装置416经由摄像装置i/f单元454在图像编码器453处按例如诸如mpeg2或mpeg4等的预定编码格式执行图像数据的压缩编码,并且转换成编码图像数据。

蜂窝电话400采用上述图像编码设备作为用于执行该处理的图像编码器453。因此,按照与上述图像编码设备相同的方式,图像编码器453能够实现较高的编码效率。

注意,与此同时,在通过ccd摄像装置416拍摄的同时,蜂窝电话400在音频编解码器459处将在麦克风(话筒)421处收集的音频从模拟转换成数字,并且进一步对其编码。

蜂窝电话400使用预定方法在复用/分离单元457处复用从图像编码器453提供的编码图像数据以及从音频编解码器459提供的数字音频数据。蜂窝电话400使作为其结果获得的复用数据在调制/解调电路单元458处经历扩频处理,并且在传送/接收电路单元463处经历数字/模拟转换处理和频率转换处理。蜂窝电话400经由天线414将通过其转换处理获得的用于传送的信号传送到未示出的基站。传送到基站的用于传送的信号(图像数据)经由网络等被提供给另一方。

注意,在未传送图像数据的情况下,蜂窝电话400还可以经由lcd控制单元455而非图像编码器453在液晶显示器418上显示在ccd摄像装置416处生成的图像数据。

再者,例如,在数据通信模式中接收链接到简单网站等的运动图像文件的数据的情况下,蜂窝电话400经由天线414在传送/接收电路单元463处接收从基站传送的信号,进行放大,并且进一步经历频率转换处理和模拟/数字转换处理。蜂窝电话400使接收的信号在调制/解调电路单元458处经历解扩处理以恢复原始的复用数据。蜂窝电话400在复用/分离单元457处将其复用数据分离成编码图像数据和音频数据。

蜂窝电话400利用与诸如mpeg2、mpeg4等的预定编码格式对应的解码格式在图像解码器456处对编码图像数据解码,由此生成播放运动图像数据,并且经由lcd控制单元455将其显示在液晶显示器418上。因此,链接到简单网站的运动图像文件中包括的运动图像数据被显示在例如液晶显示器418上。

蜂窝电话400使用上述图像解码设备作为用于执行该处理的图像解码器456。因此,按照与上述图像解码设备相同的方式,图像解码器456能够实现较高的编码效率。

与此同时,蜂窝电话400在音频编解码器459处将数字音频数据转换成模拟音频信号,并且从扬声器417将其输出。因此,例如播放链接到简单网站的运动图像文件中包括的音频数据。

注意,按照与电子邮件的情况相同的方式,蜂窝电话400可以经由记录/播放单元462将接收到的链接到简单网站等的数据记录(存储)在存储单元423中。

再者,蜂窝电话400在主控制单元450处分析由ccd摄像装置416获得的成像二维码,由此可以获得二维码中记录的信息。

此外,蜂窝电话400可以使用红外线在红外通信单元481处与外部设备通信。

蜂窝电话400采用上述图像编码设备作为图像编码器453,由此可以提高编码效率。结果,蜂窝电话400可以向另一设备提供具有良好的编码效率的编码数据(图像数据)。

再者,蜂窝电话400采用上述图像解码设备作为图像解码器456,由此可以提高编码效率。作为其结果,蜂窝电话400可以获得并显示来自例如链接到简单网站等的运动图像文件的较高清晰度的解码图像。

注意,到此为止已进行了其中蜂窝电话400采用ccd摄像装置416的描述,但是蜂窝电话400可以采用使用cmos(互补金属氧化物半导体)的图像传感器(cmos图像传感器)替代该ccd摄像装置416。在该情况下,蜂窝电话400也可以按照与采用ccd摄像装置416的情况相同的方式,对物体成像并且生成物体的图像的图像数据。

再者,到此为止已进行了关于蜂窝电话400的描述,但是上述图像编码设备和上述图像解码设备可以按照与蜂窝电话400的情况相同的方式应用于任何类型的设备,只要该设备具有与蜂窝电话400相同的成像功能和通信功能即可,例如诸如pda(个人数字助理)、智能电话、umpc(超级移动个人计算机)、上网本、笔记本大小的个人计算机等。

[硬盘记录器的配置示例]

图29是图示使用已被应用本发明的图像编码设备和图像解码设备的硬盘记录器的主要配置示例的框图。

图29中所示的硬盘记录器(hdd记录器)500是如下设备,其在内建硬盘中存储由调谐器接收的并且从卫星或地面天线等传送的广播波信号(电视信号)中包括的广播节目的音频数据和视频数据,并且在根据用户指令的定时将存储的数据提供给用户。

例如,硬盘记录器500可以从广播波信号提取音频数据和视频数据,适当地对它们解码,并且存储在内建硬盘中。再者,例如,硬盘记录器500还可以经由网络从另一设备获得音频数据和视频数据,适当地对它们解码,并且存储在内建硬盘中。

此外,例如,硬盘记录器500可以对内建硬盘中记录的音频数据和视频数据解码,将其提供给监视器560,在监视器560的屏幕上显示其图像,并且从监视器560的扬声器输出其音频。

例如,硬盘记录器500可以对从经由调谐器获得的广播信号提取的音频数据和视频数据,或者经由网络从另一设备获得的音频数据和视频数据进行解码,将其提供给监视器560,在监视器560的屏幕上显示其图像,并且从监视器560的扬声器输出其音频。

当然,可以执行这些操作以外的操作。

如图29中所示,硬盘记录器500包括接收单元521、解调单元522、解复用器523、音频解码器524、视频解码器525、和记录器控制单元526。硬盘记录器500进一步包括epg数据存储器527、程序存储器528、工作存储器529、显示转换器530、osd(屏幕上显示)控制单元531、显示控制单元532、记录/播放单元533、d/a转换器534、和通信单元535。

再者,显示转换器530包括视频编码器541。记录/播放单元533包括编码器551和解码器552。

接收单元521从遥控器(未示出)接收红外信号,转换成电信号、并且输出到记录器控制单元526。记录器控制单元526由例如微处理器等构成,并且根据程序存储器528中存储的程序执行各种类型的处理。此时,记录器控制单元526根据需要使用工作存储器529。

连接到网络的通信单元535经由网络执行与另一设备的通信处理。例如,记录器控制单元526控制通信单元535与调谐器(未示出)通信,并且通信单元535主要向调谐器输出频道选择控制信号。

解调单元522对从调谐器提供的信号解调,并且输出到解复用器523。解复用器523将从解调单元522提供的数据分离成音频数据、视频数据和epg数据,并且分别输出到音频解码器524、视频解码器525和记录器控制单元526。

音频解码器524例如利用mpeg格式对输入的音频数据解码,并且输出到记录/播放单元533。视频解码器525例如利用mpeg格式对输入的视频数据解码,并且输出到显示转换器530。记录器控制单元526将输入的epg数据提供给epg数据存储器527用于存储。

显示转换器530使用视频编码器541,将从视频解码器525或记录器控制单元526提供的视频数据编码成例如符合ntsc(美国电视标准委员会)格式的视频数据,并且输出到记录/播放单元533。再者,显示转换器530将从视频解码器525或记录器控制单元526提供的视频数据的屏幕尺寸转换成与监视器560的尺寸对应的尺寸,使用视频编码器541将屏幕尺寸已被转换的视频数据转换成符合ntsc格式的视频数据,转换成模拟信号,并且输出到显示控制单元532。

显示控制单元532在记录器控制单元526的控制下,将从osd(屏幕上显示)控制单元531输出的osd信号叠加在从显示转换器530输入的视频信号上,并且输出到监视器560的显示器用于显示。

再者,已使用d/a转换器534将从音频解码器524输出的音频数据转换成模拟信号,并且将其提供给监视器560。监视器560从内建扬声器输出该音频信号。

记录/播放单元533包括作为其中记录视频数据、音频数据等的记录介质的硬盘。

记录/播放单元533通过编码器551利用mpeg格式对从音频解码器524提供的音频数据编码。再者,记录/播放单元533通过编码器551利用mpeg格式对从显示转换器530的视频编码器541提供的视频数据编码。记录/播放单元533使用复用器合成其音频数据的编码数据以及其视频数据的编码数据。记录/播放单元533通过信道编码对其合成数据进行放大,并且经由记录头将其数据写入硬盘。

记录/播放单元533经由播放头播放硬盘中记录的数据,进行放大,并且使用解复用器分离成音频数据和视频数据。记录/播放单元533使用mpeg格式通过解码器552对音频数据和视频数据解码。记录/播放单元533将解码的音频数据从数字转换成模拟,并且输出到监视器560的扬声器。再者,记录/播放单元533将解码的视频数据从数字转换成模拟,并且输出到监视器560的显示器。

记录器控制单元526基于经由接收单元521接收的、来自遥控器的红外信号所指示的用户指令,从epg数据存储器527读出最新的epg数据,并且提供给osd控制单元531。osd控制单元531生成与输入epg数据对应的图像数据,并且输出到显示控制单元532。显示控制单元532将从osd控制单元531输入的视频数据输出到监视器560的显示器用于显示。因此epg(电子节目指南)显示在监视器560的显示器上。

再者,硬盘记录器500可以经由诸如互联网等的网络,获得从另一设备提供的诸如视频数据、音频数据、epg数据等的各种类型的数据。

由记录器控制单元526控制通信单元535以经由网络获得从另一设备传送的诸如视频数据、音频数据、epg数据等的编码数据,并且将其提供给记录器控制单元526。记录器控制单元526将获得的视频数据和音频数据的编码数据提供给记录/播放单元533,并且存储在例如硬盘中。此时,记录器控制单元526和记录/播放单元533可以根据需要执行诸如重新编码等的处理。

再者,记录器控制单元526对获得的视频数据和音频数据的编码数据进行解码,并且将获得的视频数据提供给显示转换器530。显示转换器530按照与从视频解码器525提供的视频数据相同的方式,处理从记录器控制单元526提供的视频数据,经由显示控制单元532提供给监视器560用于显示其图像。

替选地,可以进行如下布置:其中根据该图像显示,记录器控制单元526经由d/a转换器534向监视器560提供解码的音频数据,并且从扬声器输出其音频。

此外,记录器控制单元526对获得的epg数据的编码数据进行解码,并且将解码的epg数据提供给epg数据存储器527。

因此硬盘记录器500采用上述图像解码设备作为视频解码器525、解码器552以及容纳在记录器控制单元526中的解码器。因此,按照与上述图像解码设备相同的方式,视频解码器525、解码器552以及容纳在记录器控制单元526中的解码器能够实现较高的编码效率。

因此,硬盘记录器500可以生成较高清晰度的预测图像。作为其结果,硬盘记录器500可以从经由调谐器接收的视频数据的编码数据、从记录/播放单元533的硬盘读出的视频数据的编码数据、以及经由网络获得的视频数据的编码数据,获得较高清晰度的解码图像,并且显示在例如监视器560上。

再者,硬盘记录器500采用上述图像编码设备作为编码器551。因此,按照与上述图像编码设备的情况相同的方式,编码器551能够提高编码效率。

因此,硬盘记录器500可以实现处理速度的增加,并且还提高了将被记录在例如硬盘中的编码数据的编码效率。作为其结果,硬盘记录器500可以更高效地使用硬盘的存储区域。

注意,到此为止已进行了关于用于将视频数据和音频数据记录在硬盘中的硬盘记录器500的描述,但是毋庸置疑,可以采用任何类型的记录介质。例如,即使对于被应用除了硬盘以外的、诸如闪速存储器、光盘、录像带等的记录介质的记录器,仍可以按照与上述硬盘记录器500的情况相同的方式,对其应用上述图像编码设备和图像解码设备。

[摄像装置的配置示例]

图30是图示使用已被应用本发明的图像编码设备和图像解码设备的摄像装置的主要配置示例的框图。

图30中所示的摄像装置600对物体成像,将物体的图像显示在lcd616上,并且将其作为图像数据记录在记录介质633中。

透镜模块611将光(即,物体的图片)输入到ccd/cmos612。ccd/cmos612是采用ccd或cmos的图像传感器,其将接收到的光的强度转换成电信号,并且提供给摄像装置信号处理单元613。

摄像装置信号处理单元613将从ccd/cmos612提供的电信号转换成y、cr和cb的色差信号,并且提供给图像信号处理单元614。图像信号处理单元614在控制器621的控制下,使从摄像装置信号处理单元613提供的图像信号经历预定的图像处理,或者使用例如mpeg格式通过编码器641对其图像信号进行编码。图像信号处理单元614将通过对图像信号编码生成的编码数据提供给解码器615。此外,图像信号处理单元614获得在屏幕上显示(osd)620处生成的关于显示的数据,并且将其提供给解码器615。

对于上述处理,摄像装置信号处理单元613适当地利用经由总线617连接的dram(动态随机存取存储器)618,以根据需要将图像数据、根据其图像数据编码的编码数据等保存在其dram618中。

解码器615对从图像信号处理单元614提供的编码数据进行解码,并且将获得的图像数据(解码的图像数据)提供给lcd616。再者,解码器615将从图像信号处理单元614提供的关于显示的数据提供给lcd616。lcd616适当地合成从解码器615提供的解码的图像数据的图像以及关于显示的数据的图像,并且显示其合成图像。

屏幕上显示620在控制器621的控制下,经由总线617向图像信号处理单元614输出关于显示的数据,诸如由符号、字符或图形构成的菜单屏幕或图标等。

基于指示用户使用操作单元622命令的内容的信号,控制器621执行各种类型的处理,并且还经由总线617控制图像信号处理单元614、dram618、外部接口619、屏幕上显示620、介质驱动器623等。控制器621执行各种类型的处理所需的程序、数据等存储在闪速rom624中。

例如,控制器621可以对dram618中存储的图像数据进行编码,或者对存储在dram618中的编码数据进行解码,而不是由图像信号处理单元614和解码器615进行这些操作。此时,控制器621可以使用与图像信号处理单元614和解码器615的编码/解码格式相同的格式来执行编码/解码处理,或者可以使用图像信号处理单元614和解码器615均不能处置的格式来执行编码/解码处理。

再者,例如,在从操作单元622已指令开始图像打印的情况下,控制器621从dram618读出图像数据,并且经由总线617将其提供给连接到外部接口619的打印机634用于打印。

此外,例如,在从操作单元622已指令图像记录的情况下,控制器621从dram618读出编码数据,并且经由总线617将其提供给安装在介质驱动器623上的记录介质633用于存储。

记录介质633是可选的可读/可写可移除介质,例如诸如磁盘、磁光盘、光盘、半导体存储器等。毋庸置疑,记录介质633对于可移除介质的类型也是可选的,并且因此可以是磁带设备,或者可以是盘片,或者可以是存储器卡。毋庸置疑,记录介质633可以是非接触ic卡等。

替选地,介质驱动器623和记录介质633可以被配置成集成到非便携记录介质中,例如诸如内建的硬盘驱动器、ssd(固态驱动器)等。

外部接口619由例如usb输入/输出端子等构成,并且在执行图像打印的情况下连接到打印机634。再者,驱动器631根据需要连接到外部接口619,诸如磁盘、光盘或磁光盘的可移除介质632适当地安装在该驱动器631上,并且从其中读出的计算机程序根据需要安装在闪速rom624中。

此外,外部接口619包括网络接口,以连接到诸如lan、互联网等的预定网络。例如,根据来自操作单元622的指令,控制器621可以从dram618读出编码数据,并且将其从外部接口619提供给经由网络连接的另一设备。再者,控制器621可以经由外部接口619获得从另一设备经由网络提供的编码数据或图像数据,并且将其保存在dram618中,或者将其提供给图像信号处理单元614。

这样配置的摄像装置600采用上述图像解码设备作为解码器615。因此,按照与上述图像解码设备相同的方式,解码器615能够实现较高的编码效率。

因此,摄像装置600可以生成具有高精度的预测图像。作为其结果,摄像装置600可以从例如在ccd/cmos612处生成的图像数据、从dram618或记录介质633读出的视频数据的编码数据、以及经由网络获得的视频数据的编码数据,获得较高清晰度的解码图像,并且显示在lcd616上。

再者,摄像装置600采用上述图像编码设备作为编码器641。因此,按照与上述图像编码设备相同的方式,编码器641能够实现较高的编码效率。

因此,摄像装置600可以提高将被记录在例如硬盘中的编码数据的编码效率。作为其结果,摄像装置600可以更高效地使用dram618或记录介质633的存储区域。

注意,上述图像解码设备的解码方法可以应用于控制器621执行的解码处理。同样地,上述图像编码设备的编码方法可以应用于控制器621执行的编码处理。

再者,摄像装置600拍摄的图像数据可以是运动图像或者可以是静止图像。

毋庸置疑,上述图像编码设备和图像解码设备可以应用于上述设备以外的设备或系统。

注意,本技术也可以采用如下配置。

(1)一种图像处理设备,包括:

码数分配单元,配置成根据图像的运动特征,控制将码数分配给预测运动向量信息的方式;以及

预测运动向量生成单元,配置成使用作为待处理的当前区域的外围区域的运动信息的外围运动信息来生成区域的预测运动向量信息,并且依据由码数分配单元已决定的分配码数的方式,将码数分配给已生成的预测运动向量信息。

(2)根据(1)的图像处理设备,其中码数分配单元针对预测处理的每个递增区域,控制将码数分配给预测运动向量信息的方式。

(3)根据(2)的图像处理设备,其中在区域是静止区域的情况下,码数分配单元控制分配码数的方式,使得小的码数被分配给时间预测运动向量信息。

(4)根据(3)的图像处理设备,其中在区域是静止区域的情况下,预测运动向量生成单元仅生成时间预测运动向量信息,并且向时间预测运动向量信息分配由码数分配单元决定的码数。

(5)根据(2)至(4)中任一个的图像处理设备,其中在区域是移动区域的情况下,码数分配单元控制分配码数的方式,使得小的码数被分配给空间预测运动向量信息。

(6)根据(2)至(5)中任一个的图像处理设备,进一步包括:

静止区域确定单元,配置成确定当前区域是否是静止区域;

其中码数分配单元依据静止区域确定单元的确定结果,控制将码数分配给当前区域的预测运动向量信息的方式。

(7)根据(6)的图像处理设备,其中静止区域确定单元使用当前区域的并置区域的运动信息来确定当前区域是否是静止区域。

(8)根据(7)的图像处理设备,其中在当前区域的并置区域的运动信息的水平分量和运动信息的竖直分量的绝对值在预定阈值内的情况下,并且还在参考索引是0,应用ref_picr_reordering,或者参考索引具有指示紧邻的先前图片的poc值的情况下,静止区域确定单元将当前区域确定为静止区域。

(9)根据(1)至(8)中任一个的图像处理设备,其中码数分配单元根据用户设定控制将码数分配给预测运动向量信息的方式。

(10)根据(1)至(9)中任一个的图像处理设备,其中码数分配单元控制将码数分配给预测运动向量信息的方式以便提高编码效率。

(11)根据(1)至(10)中任一个的图像处理设备,其中码数分配单元控制将码数分配给预测运动向量信息的方式以便使主观图像质量最优化。

(12)根据(1)的图像处理设备,其中码数分配单元针对每个切片控制将码数分配给预测运动向量信息的方式。

(13)根据(1)至(12)中任一个的图像处理设备,进一步包括:

标志生成单元,配置成生成指示其中分配码数的方式能够改变的可变模式的标志。

(14)根据(1)至(13)中任一个的图像处理设备,其中预测运动向量生成单元针对每个预测模式生成多个预测运动向量信息;

并且进一步包括:

差运动向量生成单元,配置成针对每个预测模式,从预测运动向量生成单元生成的多个预测运动向量信息中选择最优预测运动向量信息,并且生成作为针对当前区域的运动向量的差的差运动向量;

模式确定单元,配置成从各预测模式中确定最优预测模式;以及

传送单元,配置成传送模式确定单元确定的预测模式的差运动向量信息,以及预测模式的预测运动向量信息的码数。

(15)根据(14)的图像处理设备,进一步包括:

编码单元,配置成对模式确定单元确定的预测模式的差运动向量信息,以及预测模式的预测运动向量信息的码数进行编码;

其中传送单元传送编码单元编码的差运动向量信息,以及预测运动向量信息的码数。

(16)一种图像处理设备的图像处理方法,该方法包括:

码数分配单元根据图像的运动特征,控制将码数分配给预测运动向量信息的方式;以及

预测运动向量生成单元使用作为待处理的当前区域的外围区域的运动信息的外围运动信息来生成区域的预测运动向量信息,并且依据已决定的分配码数的方式,将码数分配给已生成的预测运动向量信息。

(17)一种图像处理设备,包括:

码数分配单元,配置成根据图像的运动特征,控制将码数分配给预测运动向量信息的方式;以及

预测运动向量重建单元,配置成获得待处理的当前区域的预测运动向量信息的码数,并且依据由码数分配单元已决定的分配码数的方式,根据码数重建预测运动向量信息。

(18)根据(17)的图像处理设备,其中码数分配单元针对预测处理的每个递增区域,控制将码数分配给预测运动向量信息的方式。

(19)根据(18)的图像处理设备,其中在区域是静止区域的情况下,码数分配单元控制分配码数的方式,使得小的码数被分配给时间预测运动向量信息。

(20)根据(18)或(19)的图像处理设备,其中在区域是移动区域的情况下,码数分配单元控制分配码数的方式,使得小的码数被分配给空间预测运动向量信息。

(21)根据(18)至(20)中任一个的图像处理设备,进一步包括:

静止区域确定单元,配置成确定当前区域是否是静止区域;

其中码数分配单元依据静止区域确定单元的确定结果,控制将码数分配给当前区域的预测运动向量信息的方式。

(22)根据(21)的图像处理设备,其中静止区域确定单元使用当前区域的并置区域的运动信息来确定当前区域是否是静止区域。

(23)根据(22)的图像处理设备,其中在当前区域的并置区域的运动信息的水平分量和运动信息的竖直分量的绝对值在预定阈值内的情况下,并且还在参考索引是0,应用ref_picr_reordering,或者参考索引具有指示紧邻的先前图片的poc值的情况下,静止区域确定单元将当前区域确定为静止区域。

(24)根据(17)至(23)中任一个的图像处理设备,其中码数分配单元根据用户设定控制将码数分配给预测运动向量信息的方式。

(25)根据(17)至(24)中任一个的图像处理设备,其中码数分配单元控制将码数分配给预测运动向量信息的方式以便提高编码效率。

(26)根据(17)至(25)中任一个的图像处理设备,其中码数分配单元控制将码数分配给预测运动向量信息的方式以便使主观图像质量最优化。

(27)根据(17)的图像处理设备,其中码数分配单元针对每个切片控制将码数分配给预测运动向量信息的方式。

(28)根据(16)至(27)中任一个的图像处理设备,进一步包括:

标志获得单元,配置成获得指示其中分配码数的方式能够改变的可变模式的标志;

其中在标志获得单元获得的标志指示可变模式的情况下,码数分配单元控制将码数分配给预测运动向量信息的方式。

(29)一种图像处理设备的图像处理方法,该方法包括:

码数分配单元根据图像的运动特征,控制将码数分配给预测运动向量信息的方式;以及

预测运动向量重建单元获得待处理的当前区域的预测运动向量信息的码数,并且依据已决定的分配码数的方式,根据码数重建预测运动向量信息。

附图标记列表

51图像编码设备

66无损编码单元

74帧内预测单元

75运动预测/补偿单元

76预测运动向量生成单元

77码数分配单元

91运动搜索单元

92成本函数计算单元

93最优预测运动向量选择单元

94模式确定单元

95运动补偿单元

101图像解码设备

112无损解码单元

121帧内预测单元

122运动预测/补偿单元

123码数分配缓冲器

124预测运动向量生成单元

131差向量缓冲器

132块级码数缓冲器

133运动向量生成单元

134运动向量缓冲器

135运动补偿单元

151图像解码设备

161码数分配单元

162无损编码单元

163最优码数分配确定单元

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