图像编码方法及图像编码装置转让专利

申请号 : CN200610125676.9

文献号 : CN1992895B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 近藤敏志角野真也羽饲诚安倍清史

申请人 : 松下电器产业株式会社

摘要 :

图像编码方法及图像编码装置,其包括:运动矢量确定步骤,利用上述第3运动矢量,而确定对上述编码对象像块进行运动补偿时的第1运动矢量和第2运动矢量;预测图像生成步骤,利用所确定的第1运动矢量和第2运动矢量求出预测图像;预测残差编码步骤,将上述预测图像与上述编码对象像块的差分的预测残差图像编码;在上述运动矢量确定步骤中,在与上述第3运动矢量对应的参照图片被保存在长时间存储器中的情况下,将上述第3运动矢量原样地确定作为第1运动矢量,并将上述第2运动矢量确定作为大小为0的运动矢量。

权利要求 :

1.一种图像编码方法,利用在与包含编码对象像块的编码对象图像不同的其它图像中所包含的、作为处于与上述编码对象像块相同位置的像块的同位置块的运动矢量即同位置运动矢量,将上述编码对象像块进行预测编码,其特征在于,包括:运动矢量确定步骤,利用上述同位置运动矢量确定对上述编码对象像块进行运动补偿时的第1运动矢量和第2运动矢量;

预测图像生成步骤,利用所确定的第1运动矢量和第2运动矢量求出预测图像;

预测残差编码步骤,将上述预测图像与上述编码对象像块的差分的预测残差图像进行编码;

在上述运动矢量确定步骤中,

在与上述同位置块的2个运动矢量的第1同位置运动矢量和第2同位置运动矢量分别对应的2个参照图像的第1参照图像和第2参照图像中,当上述第1同位置运动矢量参照的上述第1参照图像,即比包含上述同位置块的上述其它图像在显示时间顺序上处于前方的参照图像被保存在长时间存储器中,并且上述第2同位置运动矢量参照的上述第2参照图像,即比包含上述同位置块的上述其它图像在显示时间顺序上处于后方的参照图像被保存在短时间存储器中时,上述同位置块的2个运动矢量中,将上述第1同位置运动矢量原样确定为运动补偿上述编码对象像块时的第1运动矢量,并将对上述编码对象像块进行运动补偿时的第2运动矢量确定为大小为0的运动矢量。

2.如权利要求1所述的图像编码方法,其特征在于,

在上述预测图像生成步骤中,参照包含上述同位置像块的上述其它图像和被保存在上述长时间存储器中的上述第1参照图像,求出上述编码对象块的预测图像。

3.一种图像编码装置,利用在与包含编码对象像块的编码对象 图像不同的其它图像中所包含的、作为处于与上述编码对象像块相同位置的像块的同位置块的运动矢量即同位置运动矢量,而将上述编码对象像块进行预测编码,其特征在于,包括:运动矢量确定单元,利用上述同位置运动矢量确定对上述编码对象块进行运动补偿时的第1运动矢量和第2运动矢量;

预测图像生成单元,利用所确定的第1运动矢量和第2运动矢量求出预测图像;

预测残差编码单元,将上述预测图像与上述编码对象块的差分的预测残差图像进行编码;

在上述运动矢量确定单元中,

在与上述同位置块的2个运动矢量的第1同位置运动矢量和第2同位置运动矢量分别对应的2个参照图像的第1参照图像和第2参照图像中,当上述第1同位置运动矢量参照的上述第1参照图像,即比包含上述同位置块的上述其它图像在显示时间顺序上处于前方的参照图像被保存在长时间存储器中,并且上述第2同位置运动矢量参照的上述第2参照图像,即比包含上述同位置块的上述其它图像在显示时间顺序上处于后方的参照图像被保存在短时间存储器中时,上述同位置块的2个运动矢量中,将上述第1同位置运动矢量原样确定为运动补偿上述编码对象像块时的第1运动矢量,并将对上述编码对象像块进行运动补偿时的第2运动矢量确定为大小为0的运动矢量。

4.如权利要求3所述的图像编码装置,其特征在于,

在上述预测图像生成单元中,参照包含上述同位置块的上述其他图像和被保存在上述长时间存储器中的上述第1参照图像,求出上述编码对象块的预测图像。 

说明书 :

技术领域

本发明涉及动态图像的编码方法及解码方法,特别涉及到对已经编码完成的按照显示时间顺序处于前方的多个图像或按照显示时间顺序处于后方的多个图像或者按照显示时间顺序处于前方及后方双方的多个图像进行参照来实行预测编码的方法。 

背景技术

一般情况下在动态图像的编码过程中,是通过减少时间方向及空间方向的冗余度来压缩信息量的。因此,在以减少时间上的冗余度为目的的图像间预测编码过程中,参照前方或后方的图像以像块为单位来实行运动检测及运动补偿,并对所得到预测图像和当前图像之间的差分值进行编码。 
对于当前标准化中作为动态图像编码方法的H.26L,人们提出下述的三种图像,一是只实行图像内预测编码的图像(I图像),二是参照1幅图像来实行图像间预测编码的图像(下面,为P图像),三是对按照显示时间顺序处于前方的2幅图像或按照显示时间顺序处于后方的2幅图像或者按照显示时间顺序处于前方及后方的分别各1幅图像进行参照来实行图像间预测编码的图像(下面,为B图像)。 
图1表示的是在上述动态图像编码方法中各图像和用此所参照的图像之间的参考关系的示例。 
图像I1没有参考图像而实行图像内预测编码,图像P10对按照显示时间顺序处于前方的P7进行参照来实行图像间预测编码。另外, 图像B6、图像B12及图像B18分别对按照显示时间顺序处于前方的2幅图像、按照显示时间顺序处于后方的2幅图像及按照显示时间顺序处于前方及后方的各1幅图像进行参照,来实行图像间预测编码。 
作为双向预测一种的预测方式,有直接方式,该双向预测对按照显示时间顺序处于前方及后方的各1幅图像进行参照来实行图像间预测编码。在直接方式中,不使编码对象像块直接具有运动矢量,而是通过对下述像块的运动矢量进行参照来计算出实际实行移动补偿所用的2个运动矢量,并制作预测图像,上述像块在按照显示时间顺序处于近旁的已编码图像内的相同位置上。 
图2表示的是在直接方式中为确定运动矢量所参照的已编码图像具有只参照按照显示时间顺序处于前方的1幅图像的运动矢量时的示例。图2中,用垂直方向线段所示的「P」与图像类型无关,而仅仅表示图像。同图中,例如图像P83是作为当前编码对象的图像,并以图像P82及图像P84作为参考图像实行双向预测。如果将该图像P83中进行编码的像块(block)作为像块MB81,则像块MB81的运动矢量采用像块MB82所具有的运动矢量来确定,该像块MB82处于作为已编码后方参考图像的图像P84的相同位置上。由于该像块MB82作为运动矢量只具有1个运动矢量MV81,所以需要的2个运动矢量MV82及运动矢量MV83是根据公式1(a)及(b)直接通过对运动矢量MV81及时间间隔TR81使用缩放(scaling)而计算出的。 
MV82=MV81/TR81×TR82   ····公式1(a) 
MV83=-MV81/TR81×TR83  ····公式1(b) 
还有,此时时间间隔TR81表示出从图像P84到图像P82,也就是从图像P84到运动矢量MV81所指示的参考图像之间的时间间隔。再者,时间间隔TR82表示出从图像P83到运动矢量MV82所指示的参考图像之间的时间间隔。还有,时间间隔TR83表示出从图像P83到运动矢量MV83所指示的参考图像之间的时间间隔。 
另外,在直接方式中有已说明的时间性预测和空间性预测的2种 方法,在下面将有关空间性预测予以说明。对于直接方式的空间性预测,例如以用16象素×16象素所构成的宏块为单位来进行编码,在编码对象宏块(macro block)的外围3个宏块的运动矢量之中选择1个对从编码对象图像开始按照显示时间顺序处于最近距离的图像进行参照所计算的运动矢量,并将所选择的运动矢量作为编码对象宏块的运动矢量。在3个运动矢量全都参照相同的图像的场合下,选择它们的中央值。在3个之中的2个对从编码对象图像开始按照显示时间顺序处于最近距离的图像进行参照的场合下,将剩余的1个看作「0」矢量而选择它们的中央值。另外,在只有1个对从编码对象图像开始按照显示时间顺序处于最近距离的图像进行参照的场合下,选择该运动矢量。这样,通过直接方式不用对编码对象宏块编码运动矢量,而采用其他宏块所具有的运动矢量来实行运动预测。 
图3(a)表示出采用以往的直接方式空间性预测方法在B图像上按照显示时间顺序参照前方图像时的运动矢量预测方法的一个示例。同图中,P表示P图像,B表示B图像,为右侧4幅图像的图像类型所附加的数字表示各图像被编码的次序。在此,图像B4中添加斜线的宏块为编码对象。在采用直接方式的空间性预测方法来计算编码对象宏块的运动矢量的场合下,首先从编码对象宏块的外围选择3个已编码的宏块(虚线部分)。此处,外围3个宏块的选择方法其说明省略。已编码3个宏块的运动矢量已计算出并被保持。即使是相同图像中的宏块,该运动矢量有时也需要参照每个宏块中不同的图像。该外围3个宏块各自参照哪个图像是可以通过对各宏块进行编码时所使用的参考图像的参考索引而得知的。对于参考索引的详述将在下面做出。 
例如对图3(a)所示的编码对象宏块选择外围3个宏块,并假设各个已编码宏块的运动矢量分别是运动矢量a、运动矢量b及运动矢量c。在此之中,运动矢量a和运动矢量b需要参考图像编号11为「11」的P图像,运动矢量c需要参考图像编号11为「8」的P图 像。这种场合下,下述的2个运动矢量a、b成为编码对象宏块的运动矢量的候补,上述运动矢量a、b是这些运动矢量a、b及c之中对从编码对象图像开始按照显示时间顺序处于最近距离的图像进行参照后的运动矢量。这种场合下,将运动矢量c看作「0」,并选择3个运动矢量a、运动矢量b及运动矢量c之中的中央值,将其作为编码对象宏块的运动矢量。 
但是,在MPEG-4等的编码方式中,既可以采用实行隔行扫描的场结构对图像内的各个宏块进行编码,又可以采用不实行隔行扫描的帧结构来进行编码。因此,采用MPEG-4等的方式,会出现在参考帧的1帧中由场结构所编码的宏块和由帧结构所编码的宏块同时存在的情形。即使在这种场合下,只要是编码对象宏块的外围3个宏块全都采用与编码对象宏块相同的结构进行编码,也可以采用上述直接方式的空间性预测方法,在不出问题的状况下导出1个编码对象宏块的运动矢量。也就是说,对于采用帧结构所编码的编码对象宏块来说,外围3个宏块仍是采用帧结构所编码的,或才对于采用场结构所编码的编码对象宏块来说,外围3个宏块仍是采用场(field)结构所编码的。前者的场合下,如同已说明的那样。另外后者的场合下,由于对应于编码对象宏块的顶部场采用与外围3个宏块的顶部场相应的3个运动矢量,或者对应于编码对象宏块的底部场采用与外围3个宏块的底部场相应的3个运动矢量,因而对于顶部场和底部场的各自,可以通过上述方法导出编码对象宏块的运动矢量。 
不过,在直接方式的时间性预测的场合下会产生这样的问题,即当实行图像间预测编码的像块由直接方式来实行移动补偿时,由于参照运动矢量的像块属于图1的B6那种B图像时,上述像块具有多个运动矢量,因而不能直接使用根据公式1的缩放所做出的运动矢量计算。另外,因为在计算运动矢量之后实行除法运算,所以会产生运动矢量值的精度(例如,1/2象素和1/4象素的精度)与所预定的精度 不一致的情形。 
另外,在空间性预测的场合下,在编码对象宏块和外围宏块的其中一个采用不同的结构进行编码时,未规定采用场结构及帧结构的哪个结构对编码对象宏块进行编码,并且也未对下述方法做出规定,即从采用场结构所编码的宏块和采用帧结构所编码的宏块同时存在的那种外围宏块的运动矢量之中,选择编码对象宏块的运动矢量的方法。 

发明内容

本发明的第1目的是,即使在参照运动矢量的像块是属于B图像的像块的情况下,也提供一种图像编码方法。 
并且,本发明的第2目的是,即使在参照运动矢量的像块是属于B图像的像块的情况下,也提供一种图像编码装置。 
为了达到上述目的本发明的图像编码方法,利用在与包含编码对象像块的编码对象图像不同的其它图像中所包含的、作为处于与上述编码对象像块相同位置的像块的同位置块的运动矢量即同位置运动矢量,将上述编码对象像块进行预测编码、其特征在于包括:运动矢量确定步骤,利用上述同位置运动矢量确定对上述编码对象像块进行运动补偿时的第1运动矢量和第2运动矢量;预测图像生成步骤,利用所确定的第1运动矢量和第2运动矢量求出预测图像;预测残差编码步骤,将上述预测图像与上述编码对象像块的差分的预测残差图像进行编码;在上述运动矢量确定步骤中,在与上述同位置块的2个运动矢量的第1同位置运动矢量和第2同位置运动矢量分别对应的2个参照图像的第1参照图像和第2参照图像中,当上述第1同位置运动矢量参照的上述第1参照图像,即比包含上述同位置块的上述其它图像在显示时间顺序上处于前方的参照图像被保存在长时间存储器中,并且上述第2同位置运动矢量参照的上述第2参照图像,即比包含上述同位置块的上述其它图像在显示时间顺序上处于后方的参照 图像被保存在短时间存储器中时,上述同位置块的2个运动矢量中,将上述第1同位置运动矢量原样确定为运动补偿上述编码对象像块时的第1运动矢量,并将对上述编码对象像块进行运动补偿时的第2运动矢量确定为大小为0的运动矢量。 
本发明的图像编码方法,其特征在于,在上述预测图像生成步骤中,参照包含上述同位置像块的上述其它图像和被保存在上述长时间存储器中的上述第1参照图像,求出上述编码对象块的预测图像。 
为了达到上述目的本发明的图像编码装置,利用在与包含编码对象像块的编码对象图像不同的其它图像中所包含的、作为处于与上述编码对象像块相同位置的像块的同位置块的运动矢量即同位置运动矢量,而将上述编码对象像块进行预测编码,其特征在于包括:运动矢量确定单元,利用上述同位置运动矢量确定对上述编码对象块进行运动补偿时的第1运动矢量和第2运动矢量;预测图像生成单元,利用所确定的第1运动矢量和第2运动矢量求出预测图像;预测残差编码单元,将上述预测图像与上述编码对象块的差分的预测残差图像进行编码;在上述运动矢量确定单元中,在与上述同位置块的2个运动矢量的第1同位置运动矢量和第2同位置运动矢量分别对应的2个参照图像的第1参照图像和第2参照图像中,当上述第1同位置运动矢量参照的上述第1参照图像,即比包含上述同位置块的上述其它图像在显示时间顺序上处于前方的参照图像被保存在长时间存储器中,并且上述第2同位置运动矢量参照的上述第2参照图像,即比包含上述同位置块的上述其它图像在显示时间顺序上处于后方的参照图像被保存在短时间存储器中时,上述同位置块的2个运动矢量中,将上述第1同位置运动矢量原样确定为运动补偿上述编码对象像块时的第1运动矢量,并将对上述编码对象像块进行运动补偿时的第2运动矢量确定为大小为0的运动矢量。 
本发明的图像编码装置,其特征在于,在上述预测图像生成单元中,参照包含上述同位置块的上述其他图像和被保存在上述长时间存 储器中的上述第1参照图像,求出上述编码对象块的预测图像。 
另外,本说明书采用了以前的日本专利申请《特愿2002118598》、《特愿2002121053》、《特愿2002156266》、《特愿2002177889》、《特愿2002193207》、《特愿2002204713》、《特愿2002262151》、《特愿2002290542》、《特愿2002323096》,美国申请《60/378643》、《60/378954》的内容。 
图1是说明以往示例的图像参考关系所用的方式图。 
图2是说明以往示例的直接方式的动作所用的方式图。 

附图说明

图3(a)表示的是采用以往的直接方式空间性预测方法,在B图像上参照在时间上处于前方的图像时的运动矢量预测方法的一个示例。 
图3(b)表示的是为各个编码对象图像所制作的参考表格的一个示例。 
图4是图像编号和参考索引的说明图。 
图5表示的是以往的图像编码装置所做出的图像编码信号格式的概念图。 
图6是说明本发明实施方式1及实施方式2的编码动作所用的框图。 
图7是说明在直接方式中参照运动矢量的像块具有按照显示时间顺序参照前方的2个运动矢量时的动作所用的方式图。 
图8是对在显示次序及编码次序中的图像参考关系做比较所用的方式图。 
图9是说明在直接方式中参照运动矢量的像块具有按照显示时间顺序参照后方的2个运动矢量时的动作所用的方式图。 
图10是对在显示次序及编码次序中的图像参考关系做比较所用的方式图。 
图11是说明本发明的实施方式5及实施方式6的解码动作所用 的框图。 
图12是说明在直接方式中参照运动矢量的像块具有按照显示时间顺序参照前方的2个运动矢量时的动作所用的方式图。 
图13是说明在直接方式中参照运动矢量的像块具有按照显示时间顺序参照后方的2个运动矢量时的动作所用的方式图。 
图14是说明在直接方式中参照运动矢量的像块具有按照显示时间顺序参照后方的2个运动矢量时的动作所用的方式图。 
图15是说明在直接方式中参照运动矢量的像块具有按照显示时间顺序参照前方的2个运动矢量时的动作所用的方式图。 
图16是说明在直接方式中参照运动矢量的像块具有按照显示时间顺序参照前方的2个运动矢量时的动作所用的方式图。 
图17是说明在直接方式中参照运动矢量的像块具有按照显示时间顺序参照前方的2个运动矢量时的动作所用的方式图。 
图18是说明在直接方式中参照运动矢量的像块具有按照显示时间顺序参照前方的2个运动矢量时的动作所用的方式图。 
图19是说明在直接方式中参照运动矢量的像块具有按照显示时间顺序参照后方的2个运动矢量时的动作所用的方式图。 
图20是说明在直接方式中参照运动矢量的像块具有按照显示时间顺序参照后方的2个运动矢量时的动作所用的方式图。 
图21是说明在直接方式中参照运动矢量的像块具有按照显示时间顺序参照后方的2个运动矢量时的动作所用的方式图。 
图22是说明在直接方式中参照运动矢量的像块具有按照显示时间顺序参照后方的1个运动矢量时的动作所用的方式图。 
图23是说明在直接方式中参照外围像块的运动矢量时的动作所用的方式图。 
图24表示的是编码序列。 
图25表示的是编码对象像块和编码对象像块的外围像块之间的 关系。 
图26表示的是编码对象像块的外围像块所具有的运动矢量。 
图27表示的是编码对象像块的外围像块所具有的运动矢量。 
图28表示的是编码对象像块的外围像块所具有的运动矢量。 
图29表示的是编码对象像块的外围像块所具有的运动矢量。 
图30表示的是编码对象像块的外围像块所具有的运动矢量。 
图31表示的是编码对象像块的外围像块所具有的运动矢量。 
图32表示的是编码对象像块的外围像块所具有的运动矢量。 
图33表示的是编码对象像块的外围像块所具有的运动矢量。 
图34表示的是确定在直接方式中所使用的运动矢量的步骤。 
图35表示的是编码对象像块和编码对象像块的外围像块之间的关系。 
图36表示的是采用参考索引的值来确定编码对象像块的运动矢量的步骤。 
图37表示的是只有1个对长时间存储器中所保存的图像进行参照的运动矢量时在直接方式中的双向预测。 
图38表示的是有2个对长时间存储器中所保存的图像进行参照运动矢量时在直接方式中的双向预测。 
图39表示的是运动矢量的计算方法的处理流程。 
图40表示的是本发明实施方式11所涉及的动态图像编码装置100结构的框图。 
图41(a)表示的是向动态图像编码装置100依时间顺序以图像为单位所输入的帧的次序。 
图41(b)表示的是将图41(a)所示的帧表格重新排列成编码顺序时的次序。 
图42表示的是说明第1实施方式所需的参考图像表的结构。 
图43(a)是表示由场结构所编码的宏块对和由帧结构所编码的 宏块对同时存在时采用直接方式空间性预测方法的运动矢量计算步骤一个示例的流程图。 
图43(b)表示的是在编码对象宏块对由帧结构进行编码的场合下,本发明所使用的外围宏块对配置的一个示例。 
图43(c)表示的是在编码对象宏块对由场结构进行编码的场合下,本发明所使用的外围宏块对配置的一个示例。 
图44表示的是由帧结构进行编码时的宏块对的数据结构和由场结构进行编码时的宏块对的数据结构。 
图45表示的是图43所示的步骤S302中的更为详细的处理步骤的流程图。 
图46是表示参考场索引和参考帧索引之间的关系的关系表示图。 
图47表示的是图43所示的步骤S303中的更为详细的处理步骤的流程图。 
图48表示的是说明第1实施方式所需的编码对象宏块对和外围宏块对的位置关系。 
图49表示的是说明第1实施方式所需的编码对象宏块对和外围宏块对的位置关系。 
图50表示的是通过编码序列生成部104所生成的编码序列700的数据结构和一个示例。 
图51表示的是对图50所示的编码序列700进行解码的动态图像解码装置800结构的框图。 
图52(a)表示的是作为记录媒体主体的软盘的物理格式示例。 
图52(b)表示的是从软盘正面所看到的外观、剖面构造及软盘。 
图52(c)表示的是在软盘FD中实行上述程序的记录再生所需的结构。 
图53表示的是实现内容传输服务的内容提供系统整体结构的框 图。 
图54表示的是携带电话外观的一个示例。 
图55表示的是携带电话结构的框图。 
图56说明的是对在上述实施方式中所示的编码处理或解码处理加以实行的设备,及采用该设备的系统。 

具体实施方式

本发明用于解决以往技术的问题所在,其目的是提出一种在直接方式中的动态图像编码方法及解码方法,即使参照运动矢量的像块属于B图像的场合下也可以在不出现相互矛盾的状况下确定用于移动补偿的运动矢量。在此,首先对有关参考索引予以说明。 
图3(b)表示的是为各个编码对象图像所制作的参考图像表10的一个示例。在图3(b)所示的参考图像表10中,以1个B图像为中心表示出,在时间上显示于其前后并且该B图像为可参考的外围图像、和它们的图像类型、图像编号11、第1参考索引12及第2参考索引13。图像编号11例如是表示各图像被编码的顺序的编号。第1参考索引(index)12是表示与编码对象图像对应的外围图像的相对位置关系的第1索引,例如主要是作为编码对象图像按照显示时间顺序参照前方图像时的索引而加以使用的。该第1参考索引12的表格被称为「参考索引表0(list0)」或「第1参考索引表」。另外,参考索引也被称为相对索引。在图3(b)的参考图像表10中,在第1参考索引12的数值中首先对具有比编码对象图像靠前的显示时间的参考图像,分配在编码对象图像上由按照显示时间顺序近的次序从「0」分别进位「1」的整数值。若对具有比编码对象图像靠前的显示时间的所有参考图像,分配从「0」分别进位「1」的整数值,则接着对具有比编码对象图像靠后的显示时间的参考图像,分配在编码对象图像上从按照显示时间顺序近的次序开始后续的数值。 
第2参考索引13是表示与编码对象图像对应的外围图像的相对位置关系的第2索引,例如主要是作为编码对象图像按照显示时间顺序参照后方图像时的索引而加以使用的。该第2参考索引13的表格被称为「参考索引表1(list1)」或「第2参考索引表」。在第2参考索引13的数值中,首先对具有比编码对象图像靠后的显示时间的参考图像,分配在编码对象图像上由按照显示时间顺序近的次序从「0」分别进位「1」的整数值。若对具有比编码对象靠后的显示时间的所有参考图像,分配从「0」分别进位「1」的整数值,则接着对具有比编码对象图像靠前的显示时间的参考图像,分配在编码对象图像上从按照显示时间顺序近的次序开始后续的数值。因此,看到该参考图像表10,就会明白第1参考索引12、第2参考索引13越是参考索引的数值小的参考图像,越按照显示时间顺序接近编码对象图像。以上,有关参考索引初始状态下的编号分配方法已做出说明,而参考索引的编号分配方法也能够根据图像单位和切片单位进行变更。参考索引的编号分配方法,例如也可以对按照显示时间顺序远离的图像分配小的编号,但是此种参考索引例如对按照显示时间顺序远离的图像进行参照使用于提高编码效率的那种场合。也就是说,由于像块中的参考索引采用可变长代码字来表现,并分配有值越小越短的代码长度的代码,所以会对通过参照来提高编码效率的图像分配更小的参考索引,以此减少参考索引的代码量,使编码效率得到进一步提高。 
图4是图像编号和参考索引的说明图。图4示出参考图像表的示例,并示出对中央的B图像(虚线部分)进行编码时所使用的参考图像及其图像编号和参考索引。图4(A)示出在通过采用图3所说明的、在初始状态下的参考索引分配方法来分配参考索引的情形。 
图5是以往的图像编码装置所做出的图像编码信号格式的概念图。Picture表示1图像量的编码信号,Header表示在图像前部所含有的标题编码信号,Block1表示采用直接方式的像块编码信号, Block2表示采用直接方式之外的内插预测的像块编码信号,Ridx0、Ridx1分别表示第1参考索引和第2参考索引,MV0、MV1分别表示第1运动矢量和第2运动矢量。在编码像块Block2中,为了示出使用于内插的2幅参考图像,在编码信号中按该顺序具有2个参考索引Ridx0、Ridx1。另外,编码像块Block2的第1运动矢量MV0和第2运动矢量MV1在编码像块Block2的编码信号内按照该顺序被编码。使用参考索引Ridx0、Ridx1中的哪一个可以通过PredType来判断。另外,用第1参考索引Ridx0表示第1运动矢量MV0所参照的图像(第1参考图像),用第2参考索引Ridx1表示第2运动矢量MV1所参照的图像(第2参考图像)。例如,在表示出按运动矢量MV0和MV1的双向来参考图像的场合下,Ridx0和Ridx1被使用,在表示按运动矢量MV0或MV1的任一个方向来参考图像的场合下,作为与其运动矢量相应的参考索引的Ridx0或Ridx1被使用,在表示出直接方式的场合下,Ridx0、Ridx1都不被使用。第1参考图像是通过第1参考索引来指定的,并且一般情况下是具有比编码对象图像靠前的显示时刻的图像,第2参考图像是通过第2参考索引来指定的,并且一般情况下是具有比编码对象图像靠后的显示时刻的图像。但是,如同通过图4参考索引的给与方法示例所明确的那样,有时第1参考图像也是具有比编码对象图像靠后的显示时刻的图像,第2参考图像是具有比编码对象图像靠前的显示时刻的图像。第1参考索引Ridx0是表示像块Block2的第1运动矢量MV0所参照的第1参考图像的参考索引,第2参考索引Ridx1是表示像块Block2的第2运动矢量MV1所参照的第2参考图像的参考索引。 
另一方面,由于采用编码信号中的缓冲控制信号(图5,Header内的RPSL)加以明确指示,因而可以任意变更对参考索引的参考图像分配。通过该分配的变更,也可以将第2参考索引为「0」的参考图像变为任意的参考图像,例如如图4(B)所示可以变更对图像编 号的参考索引分配。 
这样,由于可以任意变更对参考索引的参考图像分配,并且由于对该参考索引的参考图像分配的变更一般是通过作为参考图像进行选择而对编码效率增高的图像分配更小的参考索引,所以假设将下述的运动矢量作为在直接方式中所使用的运动矢量,则可以提高编码效率,上述运动矢量是使运动矢量所参照的参考图像其参考索引的值为最小的运动矢量。 
(实施方式1) 
采用图6所示的框图,对本发明实施方式1的动态图像编码方法予以说明。 
将作为编码对象的动态图像依时间顺序以图像为单位输入到帧存储器101中,并且依照进行编码的顺序重新排列。各个图像分割成被称为像块的、如水平16×垂直16象素的组,并以像块为单位实行下面的处理。 
从帧存储器101所读出的像块被输入到运动矢量检测部106。在此,将对帧存储器105中所储存的已编码图像进行解码后的图像作为参考图像来使用,检测作为编码对象的像块的运动矢量。此时,通过方式选择部107不断参照由运动矢量部106所得到的运动矢量和在下述的已编码图像中所采用的运动矢量,以确定最佳预测方式,上述已编码图像存储于运动矢量存储部108中。由方式选择部107所得出的预测方式和根据在其预测方式中采用的运动矢量所确定出的预测图像,被输入到差分运算部109中,通过取得和编码对象像块之间的差分来生成预测剩余残差图像,在预测剩余残差编码部102中进行编码。另外,在通过方式选择部107所得到的预测方式中使用的运动矢量,为了在后面的像块和图像的编码过程中加以利用,而存储在运动矢量存储部108中。以上的处理流程是在选择图像间预测编码时的动作,而通过开关111实行和图像内预测编码之间的转换。最后,通过 编码序列生成部103对运动矢量等的控制信息及从预测剩余残差编码部102所输出的图像信息等,进行可变长编码,生成最后输出的编码序列。 
以上,表示出编码流程的概要,而在下面将有关运动矢量检测部106及方式选择部107中的处理的详细状况,予以说明。 
运动矢量的检测在每个像块或分割像块后的每个区域内实行。对于作为编码对象的图像来说,将按照显示时间顺序处于前方及后方的已编码图像作为参考图像,在该图像内的搜索区域内通过确定下述的运动矢量及预测方式来制作预测图像,上述运动矢量表示预测为最佳的位置。 
作为双向预测的1种有直接方式,该双向预测对按照显示时间顺序处于前方及后方的2幅图像进行参照来实行图像间预测编码。采用直接方式不用使编码对象像块直接具有运动矢量,而是通过对下述像块的运动矢量进行参照,计算出实际实行移动补偿所需的2个运动矢量来制作预测图像,上述像块在按照显示时间顺序处于近旁的已编码图像内的相同位置上。 
图7表示的是在直接方式中为确定运动矢量所参照的已编码像块具有对按照显示时间顺序处于前方的2幅图像进行参照的2个运动矢量时的动作。图像P23是作为当前编码对象的图像,并以图像P22及图像P24作为参考图像来实行双向预测。如果将进行编码的像块作为像块MB21,则此时作为必要的2个运动矢量采用像块MB22所具有的运动矢量来确定,该像块MB22处于作为已编码后方参考图像(由第2参考索引所指定的第2参考图像)的图像P24的相同位置上。由于该像块MB22作为运动矢量具有2个运动矢量MV21及运动矢量MV22,所以不能与公式1同样地通过直接使用缩放计算出需要的2个运动矢量MV23及运动矢量MV24。因此,如同公式2那样,作为使用缩放的运动矢量而从像块MB22所具有的2个运动矢量的平均值计算 出运动矢量MV_REF,并同样地从平均值计算出此时的时间间隔TR_REF。然后,根据公式3对运动矢量MV_REF及时间间隔TR_REF使用缩放,以此计算出运动矢量MV23及运动矢量MV24。此时,时间间隔TR21表示从图像P24到图像P21也就是到运动矢量MV21所参照的图像为止的时间间隔,时间间隔TR22表示到运动矢量MV22所参照的图像为止的时间间隔。另外,时间间隔TR23表示到运动矢量MV23所参照的图像为止的时间间隔,时间间隔TR24表示到运动矢量MV24所参照的图像为止的时间间隔。这些图像间的时间间隔例如可以根据各图像上所附加的表示显示时间和显示顺序的信息或者其信息之差来确定。再者,在图7的示例中作为编码对象的图像对邻近的图像进行参照,但即使参照非邻近的图像时也同样可以进行处理。 
MV_REF=(MV21+MV22)/2        …公式2(a) 
TR_REF=(TR21+TR22)/2        …公式2(b) 
MV23=MV_REF/TR_REF×TR23    …公式3(a) 
MV24=-MV_REF/TR_REF×TR24   …公式3(b) 
如上所述,在上述的实施方式中表示出下述的编码方法,这就是在直接方式中参照运动矢量的像块具有对按照显示时间顺序处于前方的图像进行参照的多个运动矢量的场合下,采用上述多个运动矢量生成1个运动矢量,使用缩放来确定实际用于移动补偿所需的2个运动矢量,以此在直接方式中即使参照运动矢量的像块属于B图像的场合下,也可以在不相互矛盾的状况下实行采用直接方式的图像间预测编码。 
再者,在图7中计算2个运动矢量MV23及运动矢量MV24时,为了计算出作为实施缩放对象的运动矢量MV_REF及时间间隔TR_REF,作为取得运动矢量MV21和运动矢量MV22的平均值及时间间隔TR21及时间间隔TR22的平均值的方法,可以取代公式2来使用公式4。首先,象公式4(a)那样,对运动矢量MV21实施缩放使时间间 隔与运动矢量MV22等同,计算出运动矢量MV21’。然后,通过取得运动矢量MV21’和运动矢量MV22的平均数,来确定运动矢量MV_REF。此时,时间间隔TR_REF还按原样使用时间间隔TR22。还有,在取代对运动矢量MV21实施缩放(スケ-リング)将其作为运动矢量MV21’而对运动矢量MV22实施缩放将其作为运动矢量MV22’的场合下,也同样可以进行处理。 
MV21’=MV21/TR21×TR22    …公式4(a) 
MV_REF=(MV21’+MV22)/2    …公式4(b) 
TR_REF=TR22               …公式4(c) 
再者,在图7中计算2个运动矢量MV23及运动矢量MV24时,作为实施缩放对象的运动矢量MV_REF及时间间隔TR_REF,取代象公式2那样使用2运动矢量的平均值,也可以象公式5那样直接使用参考图像P22的运动矢量MV22及时间间隔TR22,该图像P22是对参照运动矢量的图像P24来说时间间隔短的图像。同样地,也可以象公式6那样将对时间间隔长的图像P21进行参照的运动矢量MV21及时间间隔TR21作为运动矢量MV_REF及时间间隔TR_REF,加以直接使用。采用这种方法,由于参照运动矢量的属于图像P24的各个像块可以通过预先只存储2个运动矢量之中的一方来实现运动补偿,因而在编码装置中能够少量地抑制运动矢量存储部的容量。 
MV_REF=MV22     …公式5(a) 
TR_REF=TR22     …公式5(b) 
MV_REF=MV21     …公式6(a) 
TR_REF=TR21     …公式6(b) 
还有,在图7中计算2个运动矢量MV23及运动矢量MV24时,作为实施缩放对象的运动矢量MV_REF及时间间隔TR_REF,取代象公式2那样使用2个运动矢量的平均值,也可以直接使用对编码次序靠前的图像进行参照的运动矢量。图8(a)与图7相同,示出按照作 为动态图像所显示的次序在图像排列方法中的参考关系,在图8(b)中表示出依照在图6的帧存储器101中被编码的次序所重新排列的一个示例。还有,图像P23表示出通过直接方式进行编码的图像,图像P24表示出此时参照运动矢量的图像。如图8(b)所示,由于在重新排列时直接使用对编码次序靠前的图像进行参照的运动矢量,所以象公式5那样作为运动矢量MV_REF及时间间隔TR_REF而直接使用运动矢量MV22及时间间隔TR22。同样,也可以直接使用对编码次序靠后的图像进行参照的运动矢量。这种场合下,象公式6那样作为运动矢量MV_REF及时间间隔TR_REF而直接使用运动矢量MV21及时间间隔TR21。采用这种方法,由于属于参照运动矢量的图像P24的各个像块可以通过预先只存储2个运动矢量之中的一方来实现运动补偿,因而在编码装置中能够少量地抑制运动矢量存储器的容量。 
再者,虽然在本实施方式中对于通过对所参照的运动矢量采用图像间的时间性距离进行缩放而计算出在直接方式中所使用的运动矢量的情形,已做出说明,但是这也可以对所参照的运动矢量进行常数加倍计算。在此,使用于常数加倍处理中的常数在以多个像块为单位或者以多个图像为单位进行编码或解码时,也可以是可变更的。 
还有,在公式2(a)或公式4(b)中计算运动矢量MV_REF时,计算出公式2(a)或公式4(b)的右边之后,也可以进行指定的运动矢量精度的舍入计算(例如,如果是1/2象素精度的运动矢量,则是0.5象素单位的值)。作为运动矢量的精度,并不限于1/2象素精度。另外,该运动矢量的精度例如可以根据像块单位、图像单位及顺序单位来确定。另外,在公式3(a)、公式3(b)及公式4(a)中计算运动矢量MV23、运动矢量MV24及运动矢量MV21’时,计算出公式3(a)、公式3(b)及公式4(a)的右边之后,也可以进行指定的运动矢量精度的舍入计算。 
(实施方式2) 
根据图6的编码处理概要与实施方式1是完全同等的。在此,将有关直接方式中的双向预测动作,采用图9来说明其详细状况。 
图9表示出在直接方式中为确定运动矢量所参照的像块,具有对按照显示时间顺序处于后方的2幅图像进行参照的2个运动矢量时的动作。图像P43是作为当前编码对象的图像,并以图像P42及图像P44作为参考图像来实行双向预测。如果将进行编码的像块作为像块MB41,则作为此时必要的2个运动矢量采用像块MB42所具有的运动矢量来确定,该像块MB42处于作为已编码后方参考图像(由第2参考索引所指定的第2参考图像)的图像P44的相同位置上。由于该像块MB42作为运动矢量具有2个运动矢量MV45及运动矢量MV46,所以不能与公式1相同通过直接使用缩放计算出需要的2个运动矢量MV43及运动矢量MV44。因此象公式7那样,作为使用缩放的运动矢量而从像块MB42所具有的2个运动矢量的平均值来确定运动矢量MV_REF,并同样地从平均值来确定此时的时间间隔TR_REF。然后,根据公式8对运动矢量MV_REF及时间间隔TR_REF使用缩放,以此计算出运动矢量MV43及运动矢量MV44。此时,时间间隔TR45表示从图像P44到图像P45也就是到运动矢量MV45所参照的图像之间的时间间隔,时间间隔TR46表示到运动矢量MV46所参照的图像之间的时间间隔。另外,时间间隔TR43表示到运动矢量MV43所参照的图像之间的时间间隔,时间间隔TR44表示到运动矢量MV44所参照的图像之间的时间间隔。这些图像间的时间间隔与实施方式1中所说明的一样,例如可以根据各图像上所附加的表示显示时间和显示顺序的信息或者其信息之差,来确定。再者,在图9的示例中作为编码对象的图像对邻近的图像进行参照,但即使参照非邻近的图像时也同样可以进行处理。 
MV_REF=(MV45+MV46)/2    …公式7(a) 
TR_REF=(TR45+TR46)/2    …公式7(b) 
MV43=-MV_REF/TR_REF×TR43    …公式8(a) 
MV44=MV_REF/TR_REF×TR44     …公式8(b) 
如上所述,在上述的实施方式中表示出下述的编码方法,这就是在直接方式中参照运动矢量的像块具有对按照显示时间顺序处于后方的图像进行参照的多个运动矢量的场合下,采用上述多个运动矢量生成1个运动矢量,使用缩放来确定实际用于移动补偿所需的2个运动矢量,以此即使在直接方式中参照运动矢量的像块属于B图像的场合下,也可以在不相互矛盾的状况下实行采用直接方式的图像间预测编码。 
再者,在图9中计算2个运动矢量MV43及运动矢量MV44时,为了计算出作为实施缩放对象的运动矢量MV_REF及时间间隔TR_REF,而作为取得运动矢量MV45和运动矢量MV46的平均值及时间间隔TR45及时间间隔TR46的平均值的方法,也可以取代公式7来使用公式9。首先,象公式9(a)那样,对运动矢量MV46实施缩放使时间间隔与运动矢量MV45等同,计算出运动矢量MV46’。然后,通过取得运动矢量MV46’和运动矢量MV45的平均值来确定运动矢量MV_REF。此时,时间间隔TR_REF还按原样使用时间间隔TR41。还有,在取代对运动矢量MV46实施缩放将其作为运动矢量MV46’而对运动矢量MV45实施缩放将其作为运动矢量MV45’的场合下,也同样可以进行处理。 
MV46’=MV46/TR46×TR45     …公式9(a) 
MV_REF=(MV46’+MV45)/2     …公式9(b) 
TR_REF=TR45                …公式9(c) 
再者,在图9中计算2个运动矢量MV43及运动矢量MV44时,作为实施缩放对象的运动矢量MV_REF及时间间隔TR_REF,取代象公式7那样使用2运动矢量的平均值,也可以象公式10那样直接使用对图像P45进行参照的运动矢量MV45及时间间隔TR45,该图像P45 对参照运动矢量的图像P44来说时间间隔短。同样,也可以象公式11那样将对时间间隔长的图像P46进行参照的运动矢量MV46及时间间隔TR46作为运动矢量MV_REF及时间间隔TR_REF,加以直接使用。采用这种方法,由于参照运动矢量的属于图像P44的各个像块可以通过预先只存储2个运动矢量之中的一方来实现运动补偿,因而在编码装置中能够少量地抑制运动矢量存储器的容量。 
MV_REF=MV45    ...公式10(a) 
TR_REF=TR45    ...公式10(b) 
MV_REF=MV46    ...公式11(a) 
TR_REF=TR46    ...公式11(b) 
还有,在图9中计算2个运动矢量MV43及运动矢量MV44时,作为实施缩放对象的运动矢量MV_REF及时间间隔TR_REF,取代象公式7那样使用2个运动矢量的平均值,也可以直接使用对编码次序靠前的图像进行参照的运动矢量。图10(a)与图9相同,示出按照作为动态图像所显示的次序在图像排列方法中的参考关系,在图10(b)中表示出依照在图6的帧存储器101中被编码的次序所重新排列的一个示例。还有,图像P43表示出通过直接方式进行编码的图像,图像P44表示出此时参照运动矢量的图像。如图10(b)所示,由于在重新排列时直接使用对编码次序靠前的图像进行参照的运动矢量,所以象公式11那样作为运动矢量MV_REF及时间间隔TR_REF而直接使用运动矢量MV46及时间间隔TR46。同样,也可以直接使用对编码次序靠后的图像进行参照的运动矢量。这种场合下,象公式10那样作为运动矢量MV_REF及时间间隔TR_REF而直接使用运动矢量MV45及时间间隔TR45。采用这种方法,由于参照运动矢量的属于图像P44的各个像块可以通过预先只存储2个运动矢量之中的一方来实现运动补偿,因而在编码装置中能够少量地抑制运动矢量存储器的容量。 
还有,在直接方式中为确定运动矢量所参照的图像具有对按照显示时间顺序处于后方的2幅图像进行参照的2个运动矢量的场合下,也可以将需要的2个运动矢量MV43及运动矢量MV44作为「0」实行运动补偿。采用这种方法,由于参照运动矢量的属于图像P44的各个像块没有必要预先存储运动矢量,所以在编码装置中可以少量地抑制运动矢量存储器的容量,并能够进一步省略为计算运动矢量所需的处理。 
还有,在直接方式中为确定运动矢量所参照的图像具有对按照显示时间顺序处于后方的2幅图像进行参照的2个运动矢量的场合下,也可以禁止参照运动矢量,使之只使用直接方式之外的预测编码。在象图9的图像P44那样对按照显示时间顺序处于后方的2幅图像进行参照的场合下,由于考虑到与按照显示时间顺序处于前方的图像之间的相关低的可能性,所以通过禁止直接方式并选择其他的预测方法,而可以生成更为正确的预测图像。 
再者,在本实施方式中虽然有关通过对所参照的运动矢量采用图像间的时间性距离进行缩放而计算出在直接方式中所使用的运动矢量的情形,已做出说明,但是这也可以对所参照的运动矢量进行常数加倍计算。在此,使用于常数加倍处理中的常数在以多个像块为单位或者以多个图像为单位进行编码或解码时,也可以是可变更的。 
还有,在公式7(a)、公式9(b)中计算运动矢量MV_REF时,计算出公式7(a)、公式9(b)的右边之后,也可以转成指定的运动矢量精度。作为运动矢量的精度,有1/2象素、1/3象素及1/4象素精度等。另外,该运动矢量的精度例如可以由像块单位、图像单位及顺序单位来确定。另外,在公式8(a)、公式8(b)及公式9(a)中计算运动矢量MV43、运动矢量MV44及运动矢量MV46’时,计算出公式8(a)、公式8(b)及公式9(a)的右边之后,也可以进行指定的运动矢量精度的舍入计算。 
(实施方式3) 
采用图11所示的框图,来说明本发明实施方式3的动态图像解码方法。其中,输入通过实施方式1的动态图像编码方法所生成的编码序列。 
首先,从所输入的编码序列通过编码序列解析器601提取预测方式、运动矢量信息及预测剩余残差编码数据等的各种信息。 
预测方式和运动矢量信息对预测方式/运动矢量解码部608予以输出,预测剩余残差编码数据输出到预测剩余残差解码部602。在预测方式/运动矢量解码部608中,实行预测方式的解码和在该预测方式中所使用的运动矢量解码。在对运动矢量进行解码时,利用运动矢量存储部605中所存储的已解码运动矢量。解码后的预测方式及运动矢量对运动补偿译码部604予以输出。另外,解码后的运动矢量为了在后面像块的运动矢量解码过程中加以利用,而存储在运动矢量存储部605中。通过运动补偿译码部604,将帧存储器603中所储存的已解码图像的解码图像作为参考图像,根据所输入的预测方式和运动矢量信息来生成预测图像。这样所生成的预测图像被输入加法运算部606,通过与在预测剩余残差解码部602中所生成的预测剩余残差图像进行加法运算,而生成解码图像。以上的实施方式是对于实行图像间预测编码的编码序列来说的动作,而通过开关607实行与下述解码处理之间的转换,该解码处理是对于实行图像内预测编码的编码序列来说的处理。 
以上示出解码流程的概要,而在下面将有关运动补偿译码部604中其处理的详细状况,予以说明。 
运动矢量信息附加于每个像块或分割像块后的每一区域中。对于作为解码对象的图像,将按照显示时间顺序位于前方及后方的已解码图像作为参考图像,通过解码后的运动矢量从该图像内开始制作为实行运动补偿所需的预测图像。 
作为双向预测的一种有直接方式,该双向预测对按照时间顺序处于前方及后方的分别1幅图像进行参照来实行图像间预测编码。在直接方式中,由于输入解码对象的像块不直接具有运动矢量的编码序列,所以通过参照下述像块的运动矢量而计算出实际实行运动补偿所需的2个运动矢量并制作预测图像,上述像块在按照显示时间顺序处于近旁的已解码图像内的相同位置上。 
图7表示的是在直接方式中为确定运动矢量所参照的已解码图像,具有对按照显示时间顺序处于前方的2幅图像进行参照的2个运动矢量时的动作。图像P23是作为当前解码对象的图像,并以图像P22及图像P24作为参考图像来实行双向预测。如果将实行解码的像块作为像块MB21,则此时作为必要的2个运动矢量采用像块MB22所具有的运动矢量来确定,该像块MB22处于作为已解码后方参考图像(由第2参考索引所指定的第2参考图像)的图像P24的相同位置上。由于该像块MB22作为运动矢量具有2个运动矢量MV21及运动矢量MV22,所以不能与公式1同样地通过直接使用缩放计算出需要的2个运动矢量MV23及运动矢量MV24。因此象公式2那样,作为使用缩放的运动矢量而从像块MB22所具有的2个运动矢量的平均值计算出运动矢量MV_REF,并同样地从平均值计算出此时的时间间隔TR_REF。然后,根据公式3对运动矢量MV_REF及时间间隔TR_REF使用缩放,以此计算出运动矢量MV23及运动矢量MV24。此时,时间间隔TR21表示出从图像P24到图像P21也就是到运动矢量MV21所参照的图像之间的时间间隔,时间间隔TR22表示出到运动矢量MV22所参照的图像之间的时间间隔。另外,时间间隔TR23表示出到运动矢量MV23所参照的图像之间的时间间隔,时间间隔TR24表示出到运动矢量MV24所参照的图像之间的时间间隔。这些图像间的时间间隔,例如可以根据各图像上所附加的表示显示时间和显示顺序的信息或者其信息之差,来确定。再者,在图7的示例中作为解码对象的图像对邻近的图像进行参照,但即使参照非邻近的图像时也同样可以进行处理。 
如上所述,在上述的实施方式中表示出下述的解码方法,这就是在直接方式中参照运动矢量的像块具有对按照显示时间顺序处于前方的图像进行参照的多个运动矢量的场合下,采用上述多个运动矢量生成1个运动矢量,使用缩放来确定实际使用于移动补偿所需的2个运动矢量,以此即使在直接方式中参照运动矢量的像块属于B图像的场合下,也可以在不相互矛盾的状况下实行采用直接方式的图像间预测解码。 
再者,在图7中计算2个运动矢量MV23及运动矢量MV24时,为了计算出作为实施缩放对象的运动矢量MV_REF及时间间隔TR_REF,而作为取得运动矢量MV21和运动矢量MV22的平均值及时间间隔TR21及时间间隔TR22的平均值的方法,也可以取代公式2来使用公式4。首先,象公式4(a)那样,对运动矢量MV21实施缩放使时间间隔与运动矢量MV22等同,计算出运动矢量MV21’。然后,通过取得运动矢量MV21’和运动矢量MV22的平均数来确定运动矢量MV_REF。此时,时间间隔TR_REF还按原样使用时间间隔TR22。还有,即使在取代对运动矢量MV21实施缩放将其作为运动矢量MV21’而对运动矢量MV22实施缩放将其作为运动矢量MV22’的场合下,也同样可以进行处理。 
再者,在图7中计算2个运动矢量MV23及运动矢量MV24时,作为实施缩放对象的运动矢量MV_REF及时间间隔TR_REF,取代象公式2那样使用2个运动矢量的平均值,也可以象公式5那样直接使用对图像P22进行参照的运动矢量MV22及TR22,该图像P22对参照运动矢量的图像P24来说时间间隔短。同样,也可以象公式6那样将对时间间隔长的图像P21进行参照的运动矢量MV21及时间间隔TR21作为运动矢量MV_REF及时间间隔TR_REF,加以直接使用。采用这种方法,由于参照运动矢量的属于图像P24的各个像块可以通过预先只存储2个运动矢量之中的一方来实现运动补偿,因而在编码装置中能 够少量地抑制运动矢量存储部的容量。 
还有,在图7中计算2个运动矢量MV23及运动矢量MV24时,作为实施缩放对象的运动矢量MV_REF及时间间隔TR_REF,取代象公式2那样使用2个运动矢量的平均值,也可以直接使用对解码次序靠前的图像进行参照的运动矢量。图8(a)与图7相同,示出按照作为动态图像所显示的次序在图像排列方法中的参考关系,在图8(b)中表示出所输入的编码序列的次序也就是解码次序的一个示例。还有,图像P23表示出采用直接方式实行解码的图像,图像P24表示出此时参照运动矢量的图像。在考虑图8(b)那种的排列顺序时,由于直接使用对解码次序靠前的图像进行参照的运动矢量,所以象公式5那样作为运动矢量MV_REF及时间间隔TR_REF而直接使用运动矢量MV22及时间间隔TR22。同样,也可以直接使用对解码次序靠后的图像进行参照的运动矢量。这种场合下,象公式6那样作为运动矢量MV_REF及时间间隔TR_REF而直接使用运动矢量MV21及时间间隔TR21。采用这种方法,由于参照运动矢量的属于图像P24的各个像块可以通过预先只存储2个运动矢量之中的一方来实现运动补偿,因而在编码装置中能够少量地抑制运动矢量存储部的容量。 
再者,在本实施方式中虽然对于通过对所参照的运动矢量采用图像间的时间性距离进行缩放而计算出在直接方式中所使用的运动矢量的情形,已做出说明,但是这也可以对所参照的运动矢量进行常数加倍计算。在此,使用于常数加倍处理中的常数在以多个像块为单位或者以多个图像为单位进行编码或解码时,也可以是可变更的。 
(实施方式4) 
根据图11的解码处理概要与实施方式3是完全同等的。在此,将有关直接方式中的双向预测动作,采用图9来说明其详细状况。其中,输入通过实施方式2的动态图像编码方法所生成的编码序列。 
图9表示出在直接方式中为确定运动矢量所参照的像块,具有对 按照显示时间顺序处于后方的2幅图像进行参照的2个运动矢量时的动作。图像P43是作为当前解码对象的图像,并以图像P42及图像P44作为参考图像来实行双向预测。如果将实行解码的像块作为像块MB41,则此时作为必要的2个运动矢量采用像块MB42所具有的运动矢量来确定,该像块MB42处于作为已解码后方参考图像(由第2参考索引所指定的第2参考图像)的图像P44的相同位置上。由于该像块MB42作为运动矢量具有2个运动矢量MV45及运动矢量MV46,所以不能与公式1同样地通过直接使用缩放计算出需要的2个运动矢量MV43及运动矢量MV44。因此象公式7那样,作为使用缩放的运动矢量而从像块MB42所具有的2个运动矢量的平均值来确定运动矢量MV_REF,并同样地从平均值来确定此时的时间间隔TR_REF。然后,根据公式8对运动矢量MV_REF及时间间隔TR_REF使用缩放,以此计算出运动矢量MV43及运动矢量MV44。此时,时间间隔TR45表示从图像P44到图像P45也就是到运动矢量MV45所参照的图像之间的时间间隔,时间间隔TR46表示到运动矢量MV46所参照的图像之间的时间间隔,时间间隔TR43表示到运动矢量MV43所参照的图像之间的时间间隔,时间间隔TR44表示到运动矢量MV44所参照的图像之间的时间间隔。再者,在图9的示例中作为解码对象的图像对邻近的图像进行参照,但即使参照非邻近的图像时也同样可以进行处理。 
如上所述,在上述的实施方式中表示出下述的解码方法,这就是在直接方式中参照运动矢量的像块具有对按照显示时间顺序处于后方的图像进行参照的多个运动矢量的场合下,采用上述多个运动矢量生成1个运动矢量,使用缩放来确定实际用于移动补偿所需的2个运动矢量,以此即使在直接方式中参照运动矢量的像块属于B图像的场合下,也可以在不相互矛盾的状况下实行采用直接方式的图像间预测解码。 
再者,在图9中计算2个运动矢量MV43及运动矢量MV44时,为了计算出作为实施缩放对象的运动矢量MV_REF及时间间隔TR_REF,而作为取得运动矢量MV45和运动矢量MV46的平均值及时间间隔TR45和时间间隔TR46的平均值的方法,也可以取代公式7来使用公式9。首先,象公式9(a)那样,对运动矢量MV46实施缩放使时间间隔与运动矢量MV45等同,计算出运动矢量MV46’。然后,通过取得运动矢量MV46’和运动矢量MV45的平均数来确定运动矢量MV_REF。此时,时间间隔TR_REF还按原样使用时间间隔TR45。还有,在取代对运动矢量MV46实施缩放将其作为运动矢量MV46’而对运动矢量MV45实施缩放将其作为运动矢量MV45’的场合下,也同样可以进行处理。 
再者,在图9中计算2个运动矢量MV43及运动矢量MV44时,作为实施缩放对象的运动矢量MV_REF及时间间隔TR_REF,取代象公式7那样使用2个运动矢量的平均值,也可以象公式10那样直接使用对图像P45进行参照的运动矢量MV45及时间间隔TR45,该图像P45对参照运动矢量的图像P44来说时间间隔短。同样,也可以象公式11那样将对时间间隔长的图像P46进行参照的运动矢量MV46及时间间隔TR46作为运动矢量MV_REF及时间间隔TR_REF,加以直接使用。采用这种方法,由于参照运动矢量的属于图像P44的各个像块可以通过预先只存储2个运动矢量之中的一方来实现运动补偿,因而在解码装置中能够少量地抑制运动矢量存储器的容量。 
还有,在图9中计算2个运动矢量MV43及运动矢量MV44时,作为实施缩放对象的运动矢量MV_REF及时间间隔TR_REF,取代象公式7那样使用2个运动矢量的平均值,也可以直接使用对解码次序靠前的图像进行参照的运动矢量。图10(a)与图9相同,示出按照作 为动态图像所显示的次序在图像排列方法中的参考关系,在图10(b)中表示出所输入的编码序列的次序也就是解码次序的一个示例。还有,图像P43表示出采用直接方式进行编码的图像,图像P44表示出此时参照运动矢量的图像。在考虑图10(b)的那种排列顺序时,由于直接使用对解码次序靠前的图像进行参照的运动矢量,所以象公式11那样作为运动矢量MV_REF及时间间隔TR_REF而直接使用运动矢量MV46及时间间隔TR46。同样,也可以直接使用对解码次序靠后的图像进行参照的运动矢量。这种场合下,象公式10那样作为运动矢量MV_REF及时间间隔TR_REF而直接使用运动矢量MV45及时间间隔TR45。采用这种方法,由于参照运动矢量的属于图像P44的各个像块可以通过预先只存储2个运动矢量之中的一方来实现运动补偿,因而在解码装置中能够少量地抑制运动矢量存储部的容量。 
还有,在直接方式中为确定运动矢量所参照的图像具有对按照显示时间顺序处于后方的2幅图像进行参照的2个运动矢量的场合下,也可以将需要的2个运动矢量MV43及运动矢量MV44作为「0」来实行运动补偿。采用这种方法,由于参照运动矢量的属于图像P44的各个像块没有必要预先存储运动矢量,所以在解码装置中可以少量地抑制运动矢量存储部的容量,并能够进一步省略为计算运动矢量所需的处理。 
再者,在本实施方式中虽然对于通过对所参照的运动矢量采用图像间的时间性距离进行缩放而计算出在直接方式中所使用的运动矢量的情形,已做出说明,但是这也可以对所参照的运动矢量进行常数加倍计算。在此,使用于常数加倍处理中的常数在以多个像块为单位或者以多个图像为单位进行编码或解码时,也可以是可变更的。 
(实施方式5) 
不局限于从上述实施方式1到实施方式4所示的编码方法或解码方法,而可以采用下面所示的运动矢量的计算方法来实现编码方法或 解码方法。 
图12表示出在直接方式中为计算运动矢量而参照的已编码像块或已解码像块,具有对按照显示时间顺序处于前方的2幅图像进行参照的2个运动矢量时的动作。图像P23是作为当前编码或解码对象的图像。如果将进行编码或解码的像块作为像块MB1,则此时作为必要的2个运动矢量采用像块MB2所具有的运动矢量来确定,该像块MB2处于已编码或已解码的后方参考图像(由第2参考索引所指定的第2参考图像)P24的相同位置上。还有,在图12中像块MB1是处理对象像块,像块MB1和像块MB2是在图像上相互处于同一位置的像块,运动矢量MV21和运动矢量MV22是对像块MB2进行编码或解码时所使用的运动矢量,并且分别参照图像P21、图像P22。另外,图像P21、图像P22及图像P24是已编码图像或已解码图像。另外,时间间隔TR21表示图像P21和图像P24之间的时间间隔,时间间隔TR22表示图像P22和图像P24之间的时间间隔,时间间隔TR21’表示图像P21和图像P23之间的时间间隔,时间间隔TR24’表示图像P23和图像P24之间的时间间隔。 
作为运动矢量的计算方法,如图12所示只采用参考图像P24上像块MB2的运动矢量之中先编码或解码的前向运动矢量(第1运动矢量)MV21,通过下面的公式来计算像块MB1的运动矢量MV21’和运动矢量MV24’。 
MV21’=MV21×TR21’/TR21 
MV24’=-MV21×TR24’/TR21 
然后,采用运动矢量MV21’、运动矢量MV24’从图像P21、图像P24开始实行双向预测。还有,取代只采用运动矢量MV21计算像块MB1的运动矢量MV21’和运动矢量MV24’,也可以只采用参考图像P24上像块MB2的运动矢量之中后编码或解码的运动矢量(第2运动矢量)MV22,来计算像块MB1的运动矢量。另外,如同实施方式1到实施方式4所示,也可以采用运动矢量MV21和运动矢量MV22的双方,来确定像块MB1的运动矢量。无论选择运动矢量MV21和运动矢量MV22的哪一方,在这种场合下如何选择其中的哪个,既可以选择在时间上先 编码或解码的像块的运动矢量,又可以在编码装置、解码装置中预先任意设定好选择哪个。另外,不管图像P21在短时间存储器(ShortTerm Buffer)中还是在长时间存储器(Long Term Buffer)中,都可以实行运动补偿。有关短时间存储器、长时间存储器,将在下面予以说明。 
图13表示出在直接方式中为计算运动矢量而参照的已编码像块或已解码像块,具有对按照显示时间顺序处于后方的2幅图像进行参照的2个运动矢量时的动作。图像P22是作为当前编码或解码对象的图像。如果将进行编码或解码的像块作为像块MB1,则此时作为必要的2个运动矢量采用像块MB2所具有的运动矢量来确定,该像块MB2处于已编码或已解码的后方参考图像(第2参考图像)P23的相同位置上。还有,在图13中像块MB1是处理对象像块,像块MB1和像块MB2是在图像上相互处于同一位置的像块,运动矢量MV24和运动矢量MV25是对像块MB2进行编码或解码时所使用的运动矢量,并且分别参考图像P24、图像P25。另外,图像P21、图像P23、图像P24及图像P25是已编码图像或者已解码图像。另外,时间间隔TR24表示图像P23和图像P24之间的时间间隔,时间间隔TR25表示图像P23和图像P25之间的时间间隔,时间间隔TR24’表示图像P22和图像P24之间的时间间隔,时间间隔TR21’表示图像P21和图像P22之间的时间间隔。 
作为运动矢量的计算方法,如图13所示只采用参考图像P24中像块MB2到图像P24的运动矢量MV24,通过下面的公式来计算像块MB1的运动矢量MV21’和运动矢量MV24’。 
MV21’=-MV24×TR21’/TR24 
MV24’=MV24×TR24’/TR24 
然后,采用运动矢量MV21’和运动矢量MV24’从图像P21和图像P24开始实行双向预测。 
还有,如图14所示只采用参考图像P23上像块MB2到图像P25的运动矢量MV25的场合下,通过下面的公式来计算像块MB1的运动矢量MV21’和运动矢量MV25’。再者,时间间隔TR24表示图像P23和图像P24之间的时间间隔,时间间隔TR25表示图像P23和图像P25之间的时间间隔,时间间隔TR25’表示图像P22和图像P25之间的时间间隔,时间间隔TR21’表示图像P21和图像P22之间的时间间隔。 
MV21’=-MV25×TR21’/TR25 
MV25’=MV25×TR25’/TR25 
然后,采用运动矢量MV21’和运动矢量MV25’从图像P21和图像P24开始实行双向预测。 
图15表示出在直接方式中为计算运动矢量而参照的已编码像块或已解码像块,具有对按照显示时间顺序处于前方的1幅图像进行参照的2个运动矢量时的动作。图像P23是作为当前编码或解码对象的图像。如果将进行编码或解码的像块作为像块MB1,则此时作为必要的2个运动矢量采用像块MB2所具有的运动矢量来确定,该像块MB2处于已编码或已解码的后方参考图像(由第2参考索引所指定的第2参考图像)P24的相同位置上。还有,在图15中像块MB1是处理对象像块,像块MB1和像块MB2是在图像上相互处于同一位置的像块。运动矢量MV21A和运动矢量MV21B是对像块MB2进行编码或解码时所使用的前向运动矢量,并同时参考图像P21。另外,图像P21、图像P22及图像P24是已编码图像或者已解码图像。另外,时间间隔TR21A、时间间隔TR21B表示图像P21和图像P24之间的时间间隔,时间间隔TR21’表示图像P21和图像P23之间的时间间隔,时间间隔TR24’表示图像P23和图像P24之间的时间间隔。 
作为运动矢量的计算方法,如图15所示只采用参考图像P24上像块MB2到图像P21的前向运动矢量MV21A,通过下面的公式来计算像块MB1的运动矢量MV21A’和运动矢量MV24’。 
MV21A’=MV21A×TR21’/TR21A 
MV24’=-MV21A×TR24’/TR21A 
然后,采用运动矢量MV21A’和运动矢量MV24’从图像P21和图像P24开始实行双向预测。 
还有,也可以只采用参考图像P24上像块MB2到图像P21的前向运动矢量MV21B,来计算像块MB1的运动矢量。另外,如同实施方式1到实施方式4所示,也可以采用前向运动矢量MV21A和前向运动矢量MV21B的双方,来确定对像块MB1的运动矢量。无论选择前向运动矢量MV21A和前向运动矢量MV21B的哪一方,在这种场合下如何选择其中的哪个,既可以选择在时间上先编码或解码(预先描述在编码序列中)的运动矢量,又可以在编码装置、解码装置中加以任意设定。在此,在时间上先编码或解码的运动矢量意味着第1运动矢量。另外,不管图像P21在短时间存储器(Short Term Buffer)中还是在长时间存储器(Long Term Buffer)中,都可以实行运动补偿。有关短时间存储器、长时间存储器,将在下面予以说明。 
再者,在本实施方式中虽然有关通过对所参照的运动矢量采用图像间的时间性距离进行缩放而计算出在直接方式中所使用的运动矢量的情形,已做出说明,但是这也可以对所参照的运动矢量进行常数加倍计算。在此,使用于常数加倍处理中的常数在以多个像块为单位或者以多个图像为单位进行编码或解码时,也可以是可变更的。 
还有,在上述的运动矢量MV21’、运动矢量MV24’、运动矢量MV25’及运动矢量MV21A’的计算公式中,计算出各公式的右边之后,也可以转成指定的运动矢量精度。作为运动矢量的精度,有1/2象素、1/3象素及1/4象素精度等。另外,该运动矢量的精度例如可以由像块单 位、图像单位及顺序单位来确定。 
(实施方式6) 
在本发明的实施方式6中,将有关下述方法采用图16到图18予以说明,这就是在直接方式中为确定对象运动矢量所使用的参考图像具有对按照显示时间顺序处于前方的2幅图像进行参照的2个前向运动矢量的场合下,可以只对2个前向运动矢量之中的一方进行缩放来计算对象运动矢量。还有,像块MB1是处理对象像块,像块MB1和像块MB2是在图像上相互处于同一位置的像块,运动矢量MV21和运动矢量MV22是对像块MB2进行编码或解码时所使用的前向运动矢量,并且分别参考图像P21、图像P22。另外,图像P21、图像P22及图像P24是已编码图像或者已解码图像。另外,时间间隔TR21表示图像P21和图像P24之间的时间间隔,时间间隔TR22表示图像P22和图像P24之间的时间间隔,时间间隔TR21’表示图像P21和图像P23之间的时间间隔,时间间隔TR22’表示图像P22和图像P23之间的时间间隔。 
作为第1方法,如图16所示在参考图像P24上的像块MB2具有到图像P21的前向运动矢量MV21和到图像P22的前向运动矢量MV22的2个前向运动矢量时,只采用对象图像P23上按照显示时间顺序近的到图像P22的运动矢量MV22,通过下面的公式来计算像块MB1的运动矢量MV22’。 
MV22’=MV22×TR22’/TR22 
然后,采用运动矢量MV22’,从图像P22开始实行运动补偿。 
作为第2方法,如图17所示在参考图像P24上的像块MB2具有到图像P21的前向运动矢量MV21和到图像P22的前向运动矢量MV22的2个前向运动矢量时,只采用对象图像P23上按照显示时间顺序远的到图像P21的运动矢量MV21,通过下面的公式来计算像块MB1的运动矢量MV21’。 
MV21’=MV21×TR21’/TR21 
然后,采用运动矢量MV21’,从图像P21开始实行运动补偿。 
采用这些第1、第2方法,由于参照运动矢量的属于参考图像P24的像块MB2可以通过预先只存储2个运动矢量之中的一方来实现运动补偿,所以能够少量地抑制运动矢量存储部的容量。 
还有,在采用前向运动矢量MV21的同时,与实施方式1相同也可以按照显示时间顺序从作为近旁图像的图像P22开始实行运动补偿。此时所使用的运动矢量MVN(未图示)通过下面的公式来计算。 
MVN=MV21×TR22’/TR21 
还有,作为第3方法,如图18所示采用在上面所求出的运动矢量MV21’和运动矢量MV22’分别从图像P21和图像P22取得运动补偿像块,将其平均图像作为运动补偿中的内插图像。 
采用该第3方法会增加计算量,但使运动补偿的精度得到提高。 
还有,也可以采用上述运动矢量MVN和运动矢量MV22’从图像P22取得运动补偿像块,并将其平均图像作为运动补偿中的内插图像。 
再者,在本实施方式中虽然有关通过对所参照的运动矢量采用图像间的时间性距离进行缩放而计算出在直接方式中所使用的运动矢量的情形,已做出说明,但是这也可以对所参照的运动矢量进行常数加倍计算。在此,使用于常数加倍处理中的常数在以多个像块为单位或者以多个图像为单位进行编码或解码时,也可以是可变更的。 
还有,在上述的运动矢量MV21’、运动矢量MV24’及运动矢量MVN的计算公式中,计算出各公式的右边之后,也可以转成指定的运动矢量精度。作为运动矢量的精度,有1/2象素、1/3象素及1/4象素精度等。另外,该运动矢量的精度例如可以由像块单位、图像单位及顺序单位来确定。 
(实施方式7) 
在上述实施方式6中,有关在直接方式中为确定编码或解码对象 像块的运动矢量所使用的参考图像具有对按照显示时间顺序处于前方的2幅图像进行参照的2个前向运动矢量的情形,已做出说明,但是在具有对按照显示时间顺序处于后方的2幅图像进行参照的2个后向运动矢量(由第2参考索引来指定参考图像的第2运动矢量)的场合下,也同样可以只对2个后向运动矢量之中的一方进行缩放来计算出对象运动矢量。下面,将采用图19到图22予以说明。还有,像块MB1是处理对象像块,像块MB1和像块MB2是在图像上相互处于同一位置的像块,运动矢量MV24和运动矢量MV25是对像块MB2进行编码或解码时所使用的后向运动矢量(由第2参考索引来指定参考图像的第2运动矢量)。另外,图像P21、图像P23、图像P24及图像P25是已编码图像或者已解码图像。另外,时间间隔TR24表示图像P23和图像P24之间的时间间隔,时间间隔TR25表示图像P23和图像P25之间的时间间隔,时间间隔TR24’表示图像P22和图像P24之间的时间间隔,时间间隔TR25’表示图像P22和图像P25之间的时间间隔。 
作为第1方法,如图19所示在参考图像P23上的像块MB2具有到图像P24的后向运动矢量MV24和到图像P25的后向运动矢量MV25的2个后向运动矢量时,只采用对象图像P22上按照显示时间顺序近的到图像P24的运动矢量MV24,通过下面的公式来计算像块MB1的运动矢量MV24’。 
MV24’=MV24×TR24’/TR24 
然后,采用运动矢量MV24’,从图像P24开始实行运动补偿。 
还有,在采用后向运动矢量MV24的同时,与实施方式1相同也可以按照显示时间顺序从作为近旁图像的图像P23开始实行运动补偿。此时所使用的运动矢量MVN1(未图示)通过下面的公式来计算。 
MVN1=MV24×TRN1/TR24 
作为第2方法,如图20所示在参考图像P23上的像块MB2具有到图像P24的后向运动矢量MV24和到图像P25的后向运动矢量MV25 的2个后向运动矢量时,只采用对象图像P23上按照显示时间顺序远的到图像P25的后向运动矢量MV25,通过下面的公式来计算像块MB1的运动矢量MV25’。 
MV25’=MV25×TR25’/TR25 
然后,采用运动矢量MV25’,从图像P25开始实行运动补偿。 
采用这些第1、第2方法,由于参照运动矢量的属于参考图像P23的像块MB2可以通过预先只存储2个运动矢量之中的一方来实现运动补偿,所以能够少量地抑制运动矢量存储部的容量。 
还有,在采用后向运动矢量MV25的同时,与实施方式1相同也可以按照显示时间顺序从作为近旁图像的图像P23开始实行运动补偿。此时所使用的运动矢量MVN2(未图示)通过下面的公式来计算。 
MVN2=MV25×TRN1/TR25 
还有作为第3方法,如图21所示采用上面所求出的运动矢量MV24’和运动矢量MV25’分别从图像P24和图像P25取得运动补偿像块,将其平均图像作为运动补偿中的内插图像。 
采用该第3方法会增加计算量,但使对象图像P22的精度得到提高。 
再者,也可以采用上述运动矢量MVN1和运动矢量MVN2从图像P24取得运动补偿像块,并将其平均图像作为运动补偿中的内插图像。 
另外,如图22所示在直接方式中为确定对象运动矢量所使用的参考图像具有对按照显示时间顺序处于后方的1幅图像进行参照的1个后向运动矢量的场合下,例如通过下面的公式来计算运动矢量MV24’。 
MV24’=MV24×TR24’/TR24 
然后,采用运动矢量MV24’,从图像P24开始实行运动补偿。 
还有,在采用后向运动矢量MV25的同时,与实施方式1相同也可以按照显示时间顺序从作为近旁图像的图像P23开始实行运动补 偿。此时所使用的运动矢量MVN3(未图示)通过下面的公式来计算。 
MVN3=MV24×TRN1/TR24 
再者,在本实施方式中已采用图19到图22对于下述情形做出说明,但是这种场合下也可以不使用后向运动矢量而对同一图像内外围像块的运动矢量进行参照来计算对象运动矢量,并且在实行图像内编码的场合下也可以对同一图像内外围像块的运动矢量进行参照来计算对象运动矢量,上述情形是在具有对按照显示时间顺序处于后方的2幅图像进行参照的2个后向运动矢量时,以及在具有对按照显示时间顺序处于后方的1幅图像进行参照的1个后向运动矢量时,对该后向运动矢量进行缩放来计算对象运动矢量。首先,对于第1计算方法予以说明。图23表示的是此时所参照的运动矢量和对象像块之间的位置关系。像块MB1是对象像块,并对处于含有A、B、C位置关系上的3个象素的像块的运动矢量进行参照。但是,在象素C的位置为图像外或者是未完成编码/解码的状态等的不能参照的场合下,取代含有象素C的像块而使用含有象素D的像块的运动矢量。通过取得作为参考对象的含有A、B、C象素的3个像块所具有的运动矢量的中央值,而将其作为实际在直接方式中所使用的运动矢量。由于取得3个像块所具有的运动矢量的中央值,而没有必要在编码序列中描述出选择3个运动矢量之中的哪个运动矢量这样的附加信息,并且可以得到表现出与像块MB1的实际运动接近的运动的运动矢量。这种场合下,既可以采用所确定的运动矢量只通过前方参照(向第1参考图像的参照)来实行运动补偿,又可以采用该所确定的运动矢量和平行的运动矢量通过双向参照(向第1参考图像及第2参考图像的参照)来实行运动补偿。 
接着,对于第2计算方法予以说明。 
在第2计算方法中,不象第1计算方法那样取得中央值,而是通过从作为参考对象的含有A、B、C象素的3个像块所具有的运动矢量 之中取得编码效率为最高的运动矢量,将其作为实际在直接方式中所使用的运动矢量。这种场合下,既可以采用所确定的运动矢量只通过前方参照(向第1参考图像的参照)来实行运动补偿,又可以采用该所确定的运动矢量和平行的运动矢量通过双向参照(使用第1参考图像及第2参考图像的参照)来实行运动补偿。表示编码效率最高的运动矢量的信息例如如图24(a)所示,与表示从方式选择部107所输出的直接方式的信息一起,附加于通过编码序列生成部103所生成的编码序列中像块的标题区域内。还有,如图24(b)所示,表示编码效率最高的运动矢量的信息也可以附加于宏块的标题区域内。另外,表示编码效率最高的运动矢量的信息指的是,例如对作为参考对象的含有象素的像块加以识别的编号,并是给与每个像块的识别编号。另外,在通过识别编号来识别像块时只采用1个给与每个像块的识别编号,在对与该1个识别编号相应的像块进行编码时也只采用所使用运动矢量之中的一方来表示编码效率为最高的运动矢量,在有多个运动矢量时也可以采用多个运动矢量来表示编码效率为最高的运动矢量。或者说,也可以在双向参照(向第1参考图像及第2参考图像的参照)的各自每个运动矢量中采用给与每个像块的识别编号,来表示编码效率为最高的运动矢量。通过使用这种运动矢量的选择方法,必然可以取得编码效率为最高的运动矢量。但是,由于必须在编码序列中描述表示出选择哪个运动矢量的附加信息,所以额外需要为此所需的代码量。再者,对于第3计算方法予以说明。 
在第3计算方法中,将运动矢量所参照的参考图像其参考索引的值为最小的运动矢量作为在直接方式中所使用的运动矢量。参考索引为最小一般是指对按照显示时间顺序近的图像进行参照的、或者编码效率为最高的运动矢量。因而,通过使用这种运动矢量的选择方法,可以采用对按照显示时间顺序最近的或者编码效率为最高的图像进行参照的运动矢量,生成在直接方式中所使用的运动矢量,谋求编码 效率的提高。 
还有,在3条运动矢量之中3条都参照同一参考图像的场合下,可以采用3个运动矢量的中央值。另外,在3个运动矢量之中有2条对参考索引的值为最小的参考图像进行参照的运动矢量的场合下,例如可以固定选择2条运动矢量之中的任何一方。若采用图23来表示示例,就是在含有象素A、象素B及象素C的3个像块所具有的运动矢量之中含有象素A及象素B的2个像块对参考索引的值最小且同一参考图像进行参照的场合下,可以取得含有象素A的像块所具有的运动矢量。但是,在各自含有象素A、象素B及象素C的3个像块所具有的运动矢量之中含有象素A及象素C的2个像块对参考索引的值最小且同一参考图像进行参照的场合下,可以取得在像块BL1上按照位置关系近的含有象素A的像块所具有的运动矢量。 
再者,上述中央值既可以是对于各运动矢量的水平方向部分和垂直方向部分各自取得中央值,又可以是对于各运动矢量的大小(绝对值)取得中央值。 
另外,运动矢量的中央值在图25所示的那种场合下,也可以取出合计5个像块所具有的运动矢量的中央值,该5个像块包括:在后方参考图像上与像块BL1处于相同位置的像块、分别含有象素A、象素B及象素C的像块以及图25所示的含有象素D的像块。这样,在采用与编码对象象素的周围接近的、在后方参考图像上与像块BL1处于相同位置的像块时,如果为了使像块数目为奇数而使用含有象素D的像块,就可以使计算运动矢量中央值的处理变得简单。再者,在后方参考图像上与像块BL1处于相同位置的区域横跨多个像块的场合下,也可以采用该多个像块之中与像块BL1重合的区域为最大的像块的运动矢量,来实行像块BL1的运动补偿,或者也可以与后方参考图像上的多个像块区域相对应来分割像块BL1,并在所分割的每个像块中对像块BL1进行运动补偿。 
再有,将举出具体示例加以说明。 
如图26及图27所示,在是含有象素A、象素B及象素C的像块全都对与编码对象图像相比靠前方的图像进行参照的运动矢量的场合下,也可以采用上述第1计算方法到第3计算方法的其中一种。 
同样,如图28及图29所示在是含有象素A、象素B及象素C的像块全都对与编码对象图像相比靠后方的图像进行参照的运动矢量的场合下,也可以采用上述第1计算方法到第3计算方法的其中一种。 
下面,将对于图30所示的情形予以说明。图30表示出具有各1条下述运动矢量的情形,该运动矢量是分别含有象素A、象素B及象素C的像块全都对与编码图像相比靠前方和靠后方的图像进行参照的运动矢量。 
根据上述第1计算方法,用于像块BL1运动补偿的前方运动矢量是通过运动矢量MVAf、运动矢量MVBf及运动矢量MVCf的中央值来选择的,用于像块BL1运动补偿的后方运动矢量是通过运动矢量MVAb、运动矢量MVBb及运动矢量MVCb的中央值来选择的。还有,运动矢量MVAf是含有象素A的像块的前向运动矢量,运动矢量MVAb是含有象素A的像块的后向运动矢量,运动矢量MVBf是含有象素B的像块的前向运动矢量,运动矢量MVBb是含有象素B的像块的后向运动矢量,运动矢量MVCf是含有象素C的像块的前向运动矢量,运动矢量MVCb是含有象素C的像块的前向运动矢量。另外,运动矢量MVAf等不限定于对所图示的那种图像进行参照的场合。这在下面的说明中也是相同的。 
根据上述第2计算方法,通过分别从运动矢量MVAf、运动矢量MVBf和运动矢量MVCf的前方参考运动矢量之中取得编码效率为最高的运动矢量,以及从运动矢量MVAb、运动矢量MVBb和运动矢量MVCb的后方参考运动矢量之中取得编码效率为最高的运动矢量,而将其作为实际在直接方式中所使用的运动矢量。这种场合下,既可以由运动 矢量MVAf、运动矢量MVBf及运动矢量MVCf的前方参考运动矢量之中采用编码效率为最高的运动矢量,而只通过前方参考实行运动补偿,又可以采用该所确定的运动矢量和平行的运动矢量而通过双向参考实行运动补偿。再者,做到编码效率为最高,就不用对于前方参考和后方参考运动矢量的各自进行选择,而也可以选择1个像块,并采用该像块所具有的前方参考和后方参考的运动矢量来实行运动补偿。此时,与对表示出具有下述两种象素的像块之信息进行选择的场合相比,由于可使表示选择的信息变少,所以能够提高编码效率,上述象素一是具有使编码效率为最高所选择的前方参考运动矢量,二是具有使编码为最高所选择的后方参考运动矢量。另外,该1个像块的选择可以采用下述四种方法之中的任一种,即①将其作为含有下述象素的像块,该象素具有前方参考运动矢量所参照的图像其参考索引的值为最小的运动矢量,②对具有各象素的像块的前方参考运动矢量所参照的图像的参考索引值和后方参考运动矢量所参照的图像的参考索引值进行加法运算,将其作为加法运算后的值为最小的像块,③取得前方参考运动矢量所参照的图像其参考索引的中央值,将其作为具有中央值并包含具有前方参考运动矢量的象素的像块,并且后方参考运动矢量作为该像块所具有的后方参考运动矢量,④取得后方参考运动矢量所参照的图像其参考索引的中央值,将其作为具有中央值并包含具有后方参考运动矢量的象素的像块,并且前方参考的运动矢量作为该像块所具有的前方参考运动矢量。还有,在后方参考的运动矢量全部参照同一幅图像的场合下,上述①和③的像块选择方法是较为适合的。 
在上述第3计算方法中,将运动矢量MVAf、运动矢量MVBf及运动矢量MVCf的前方参考运动矢量所参照的参考图像其参考索引的值为最小的运动矢量,作为在直接方式中所使用的前方参考(第1参考)的运动矢量。或者,将运动矢量MVAb、运动矢量MVBb及运动矢量MVCb 的后方参考运动矢量所参照的参考图像其参考索引的值为最小的运动矢量,作为在直接方式中所使用的后方参考(第2参考)的运动矢量。还有,在第3计算方法中虽然将参考图像的参考索引值为最小的前方参考运动矢量作为像块BL1的前方参考运动矢量,将参考图像的参考索引值为最小的后方参考运动矢量作为像块BL1的后方参考运动矢量,但是也可以采用参考图像的参考索引值为最小的前方或后方的任一方来导出像块BL1的2个运动矢量,并采用所导出的运动矢量对像块BL1实行运动补偿。 
下面,将有关图31所示的情形予以说明。图31表示出下述情形,即象素A具有各1条对前方和后方的图像进行参照的运动矢量,象素B只具有对前方的图像进行参照的运动矢量,象素C只具有对后方的图像进行参照的运动矢量。 
这样,存在包含只具有对一方图像进行参照的运动矢量的象素的像块时,假设对该像块的另一方图像进行参照的运动矢量为0,则为了实行运动补偿而可以采用上述图30中的计算方法。具体地说,可以采用图30中的第1计算方法或第3计算方法,作为MVCf=MVBb=0进行计算。也就是说,采用第1计算方法,在计算像块BL1的前向运动矢量时将象素C参照前方图像的运动矢量MVCf当作MVCf=0,来计算运动矢量MVAf、运动矢量MVBf及运动矢量MVCf的中央值。另外,在计算像块BL1的后向运动矢量时,将象素B参照后方图像的运动矢量MVBb当作MVBb=0,来计算运动矢量MVAb、运动矢量MVBb及运动矢量MVCb的中央值。 
在第3计算方法中,将象素C参照前方图像的运动矢量MVCf和象素B参照后方图像的运动矢量MVBb当作MVCf=MVBb=0,来计算像块BL1的运动矢量所参照的参考图像其参考索引的值为最小的运动矢量。例如,在含有象素A的像块对第1参考索引为「0」的图像进行参照并且含有象素B的像块对第1参考索引为「1」的图像进行 参照的场合下,最小第1参考索引的值是「0」。因此,由于只是运动矢量MVBf对具有最小第1参考索引的图像进行参照,所以将运动矢量MVBf作为像块BL1的前向运动矢量,该运动矢量MVBf对含有象素B的像块其前方图像进行参照。另外,例如在象素A、象素C全都对第2参考索引为最小的如第2参考索引为「0」的后方图像进行参照的场合下,将象素B参照后方图像的运动矢量MVBb作为MVBb=0,来计算运动矢量MVAb、运动矢量MVBb及运动矢量MVCb的中央值。将计算结果所得到的运动矢量作为像块BL1的后向运动矢量。 
下面,将有关图32所示的情形予以说明。图32表示出下述情形,即象素A分别具有1条对前方和后方的图像进行参照的运动矢量,象素B只具有对前方的图像进行参照的运动矢量,象素C不具有运动矢量而实行图像内编码。 
这样,在作为参考对象的含有象素C的像块实行图像内编码时,假设该像块对前方和后方的图像进行参照的运动矢量同时为0,则为了实行运动补偿而可以采用在上述图30中的计算方法。具体地说,可以作为MVCf=MVCb=0进行计算。还有,在图30的场合下,是MVB=0。 
最后,将有关图33所示的情形予以说明。图33表示出对于象素C通过直接方式进行编码的情形。 
这样,在作为参考对象的象素中存在通过直接方式进行编码的像块时,在采用下述运动矢量之后,可以使用上述图30中的计算方法来实行像块BL1的运动补偿,上述运动矢量是通过直接方式已编码的像块被编码时所使用的。 
还有,运动矢量是前方参考和后方参考的哪一个,是由所参照的图像、所编码的图像以及各个图像所具有的时间信息来确定的。因而,在区别出前方参考和后方参考之后导出运动矢量的场合下,通过各个图像所具有的时间信息来判断各个像块所具有的运动矢量是前方参 考和后方参考的哪一个。 
再者,将有关对上面所说明的计算方法予以组合的示例,进行说明。图34表示的是确定在直接方式中所使用的运动矢量的步骤。图34是采用参考索引来确定运动矢量的方法的一个示例。还有,图34所示的Ridx0、Ridx1是上面所说明的参考索引。图34(a)表示出通过第1参考索引Ridx0来确定运动矢量的步骤,图34(b)表示出通过第2参考索引Ridx1来确定运动矢量的步骤。首先,有关图34(a)予以说明。 
在步骤S3701中,计算出含有象素A的像块、含有象素B的像块及含有象素C的像块之中采用第1参考索引Ridx0来参考图像的像块数目。 
如果在步骤S3701中所计算出的像块数目为「0」,则进一步在步骤S3702中计算采用第2参考索引Ridx1来参考图像的像块数目。如果在步骤S3702中所计算出的像块数目为「0」,则在S3703中将编码对象像块的运动矢量作为「0」而对编码对象像块以双向实行运动补偿。另一方面,如果在步骤S3702中所计算出的像块数目为「1」以上,则在S3704中根据存在第2参考索引Ridx1的像块数目来确定编码对象像块的运动矢量。例如,采用这样的运动矢量来进行编码对象像块的运动补偿,该运动矢量是根据存在第2参考索引Ridx1的像块数目所确定的。 
如果在步骤S3701中所计算出的像块数目为「1」,则在S3705中使用存在第1参考索引Ridx0的像块的运动矢量。 
如果在步骤S3701中所计算出的像块的数目为「2」,则在S3706中对于不存在第1参考索引Ridx0的像块,而假设在第1参考索引Ridx0中存在MV=0的运动矢量,使用与3条运动矢量的中央值相当的运动矢量。 
如果在步骤S3701中所计算出的像块的数目为「3」,则在S3707 中使用与3条运动矢量的中央值相当的运动矢量。还有,步骤S3704中的运动补偿也可以采用1条运动矢量来实行双向的运动补偿。此处的双向运动补偿,例如可以通过对该1条运动矢量进行缩放来计算1条运动矢量、相同方向的运动矢量和相反方向的运动矢量之后加以实行,或者也可以采用1条运动矢量、相同方向的运动矢量和运动矢量为「0」的运动矢量加以实行。接着,将对于图34(b)予以说明。 
在步骤S3711中计算存在第2参考索引Ridx1的像块数目。 
如果在步骤S3711中所计算出的像块数目为「0」,则进一步在步骤S3712中计算存在第1参考索引Ridx0的像块数目。如果在步骤S3712中所计算出的像块数目为「0」,则在S3713中将编码对象像块的运动矢量作为「0」以双向对编码对象像块实行运动补偿。另一方面,如果在步骤S3712中所计算出的像块数目为「1」以上,则在S3714中根据存在第1参考索引Ridx0的像块数目来确定编码对象像块的运动矢量。例如,采用下述的运动矢量来进行编码对象像块的运动补偿,上述运动矢量是根据存在第1参考索引Ridx0的像块数目所确定的。 
如果在步骤S3711中所计算出的像块数目为「1」,则在S3715中使用存在第2参考索引Ridx1的像块的运动矢量。 
如果在步骤S3711中所计算出的像块数目为「2」,则在S3716中对于不存在第2参考索引Ridx1的像块,而假设在第2参考索引Ridx1中存在MV=0的运动矢量,使用与3条运动矢量的中央值相当的运动矢量。 
如果在步骤S3711中所计算出的像块数目为「3」,则在S3717中使用与3条运动矢量的中央值相当的运动矢量。还有,步骤S3714中的运动补偿也可以采用1条运动矢量来实行双向的运动补偿。此处的双向运动补偿,例如可以通过对该1条运动矢量进行缩放来求出1条运动矢量、相同方向的运动矢量和相反方向的运动矢量之后加以实行,或者也可以采用1条运动矢量、相同方向的运动矢量和运动矢量 为「0」的运动矢量,加以实行。 
再者,对于图34(a)和图34(b)的各自己做出说明,而既可以采用双方的处理,也可以采用一方的处理。但是,在采用一方的处理的场合下,例如实行从图34(a)所示的步骤S3701开始的处理的场合,还有至步骤S3704之前的场合下,可以实行图34(b)所示的S3711以下的处理。另外,这样至S3704的处理之前的场合下,由于没有在步骤S3711以下的处理之中实行步骤S3712以下的处理,所以可以唯一确定运动矢量。另外,在采用图34(a)和图34(b)的双方处理的场合下,既可以先实行任一方的处理,并且也可以同时实行。另外,在编码对象像块周围的像块是通过直接方式所编码的像块时,也可以将下述运动矢量所参照的图像的参考索引作为通过直接方式所编码的并且处于编码对象像块周围的像块所具有的参考索引,上述运动矢量是通过直接方式所编码的像块被编码时所使用的。 
下面,采用具体的像块示例,对于运动矢量的确定方法予以详细说明。图35表示的是编码对象像块BL1所参照的像块各自具有的运动矢量种类。在图35(a)中,具有象素A的像块是实行图像内编码的像块,具有象素B的像块有1条运动矢量并且是采用该1条运动矢量实行运动补偿的像块,具有象素C的像块是有2条运动矢量并且以双向来实行运动补偿的像块。另外,具有象素B的像块有第2参考索引Ridx1中所示的运动矢量。由于具有象素A的像块是实行图像内编码的像块,所以没有运动矢量,也就是说没有参考索引。 
在步骤S3701中计算存在第1参考索引Ridx0的像块数目。如图35所示,由于存在第1参考索引Ridx0的像块数目是2条,所以在步骤S3706中对于不存在第1参考索引Ridx0的像块,而假设在第1参考索引Ridx0中有MV=0的运动矢量,使用与3条运动矢量的中央值相当的运动矢量。既可以只采用该运动矢量对编码对象像块实行双向的运动补偿,或者也可以如下所示采用第2参考索引Ridx1并采用 其他的运动矢量,来实行双向的运动补偿。 
在步骤S3711中计算存在第2参考索引Ridx1的像块数目。如图35所示,由于存在第2参考索引Ridx1的像块数目是1条,所以在步骤S3715中使用存在第2参考索引Ridx1的像块的运动矢量。 
再者,将有关对上面所说明的计算方法予以组合的其他示例,进行说明。图36表示的是采用下述的参考索引的值来确定编码对象像块的运动矢量的步骤,上述参考索引表示分别具有象素A、B、C的像块所有的运动矢量将要参照的图像。图36(a)(b)表示的是依据第1参考索引Ridx0来确定运动矢量的步骤,图36(c)(d)表示的是依据第2参考索引Ridx1来确定运动矢量的步骤。另外,由于图36(a)表示出以第1参考索引Ridx0为依据的步骤,正好是图36(c)表示出以第2参考索引Ridx1为依据的步骤,并且图36(b)表示出以第1参考索引Ridx0为依据的步骤,正好是图36(d)表示出以第2参考索引Ridx1为依据的步骤,所以在下面的说明中只是有关图36(a)和图36(b),予以说明。首先,对于图36(a)予以说明。 
在步骤S3801中,判断能否在有效的第1参考索引Ridx0之中选择1个最小的第1参考索引Ridx0。 
在步骤S3801中可以在有效的第1参考索引Ridx0之中选择1个最小的第1参考索引Ridx0的场合下,在步骤S3802中使用所选择的运动矢量。 
在步骤S3801中有效的第1参考索引Ridx0之中有多个最小的第1参考索引Ridx0的场合下,在步骤S3803中使用根据优先顺序所选择的像块具有的运动矢量。在此,优先顺序指的是例如按照具有象素A的像块、具有象素B的像块和具有象素C的像块的顺序,来确定使用于编码对象像块中的运动矢量。 
在步骤S3801中没有有效的第1参考索引Ridx0的场合下,在步骤S3804中实行与S3802和S3803不同的处理。例如,可以实行在图 34(b)中所说明的步骤S3711以下的处理。接着,对于图36(b)予以说明。图36(b)与图36(a)的不同之处在于,将图36(a)中的步骤S3803和步骤S3804的处理作为图36(b)所示的步骤S3813。 
在步骤S3811中,判断能否在有效的第1参考索引Ridx0之中选择1个最小的第1参考索引Ridx0。 
在步骤S3811中可以在有效的第1参考索引Ridx0之中选择1个最小的第1参考索引Ridx0的场合下,在步骤S3812中使用所选择的运动矢量。 
在步骤S3811中没有有效的第1参考索引Ridx0的场合下,在步骤S3813中实行与S3812不同的处理。例如,可以实行在图34(b)中所说明的步骤S3711以下的处理。 
还有,在上面所说明的有效的第1参考索引Ridx0指的是,在图35(b)中写有「○」的第1参考索引Ridx0,并且是表示出具有运动矢量的参考索引。另外,图35(b)中写有「×」之处意味着没有分配参考索引。另外,在图36(c)的步骤S3824、图36(d)的步骤S3833中,可以实行图34(a)中所说明的步骤S3701以下的处理。 
下面,采用具体的像块示例,对于运动矢量的确定方法用图35予以详细说明。 
在步骤S3801中,判断能否在有效的第1参考索引Ridx0之中选择1个最小的第1参考索引Ridx0。 
在图35所示的场合下,有2个有效的第1参考索引Ridx0,而在步骤S3801中可以在有效的第1参考索引Ridx0之中选择1个最小的第1参考索引Ridx0的场合下,在步骤S3802中使用所选择的运动矢量。 
在步骤S3801中有效的第1参考索引Ridx0之中有多个最小的第1参考索引Ridx0的场合下,在步骤S3803中使用根据优先次序所选择的像块具有的运动矢量。在此优先次序指的是,例如按照具有象素 A的像块、具有象素B的像块和具有象素C的像块的顺序,来确定使用于编码对象像块运动补偿中的运动矢量。在具有象素B的像块和具有象素C的像块中有相同的第1参考索引Ridx0的场合下,根据优先次序采用具有象素B的像块中的第1参考索引Ridx0,并使用与具有该象素B的像块中的第1参考索引Ridx0相应的运动矢量来进行编码对象像块BL1的运动补偿。此时,既可以只采用所确定的运动矢量以双向对编码对象像块BL1实行运动补偿,又可以如下所示采用第2参考索引Ridx1并采用其他的运动矢量,实行双向的运动补偿。 
在步骤S3821中,判断能否在有效的第2参考索引Ridx1之中选择1个最小的第2参考索引Ridx1。 
在图35所示的场合下,因为有效的第2参考索引Ridx1是1个,所以在步骤S3822中使用与具有象素C的像块中的第2参考索引Ridx1相应的运动矢量。 
再者,对于上述没有参考索引的像块,假设具有运动矢量大小为「0」的运动矢量则取得合计3个运动矢量的中央值,有关这方面假设具有运动矢量大小为「0」的运动矢量,既可以取得合计3个运动矢量的平均值,又可以取得具有参考索引的像块所有的运动矢量的平均值。 
还有,例如也可以将上面所说明的优先次序作为具有象素B的像块、具有象素A的像块及具有象素C的像块的顺序,来确定使用于编码对象像块运动补偿中的运动矢量。 
这样,由于采用参考索引来确定对编码对象像块实行运动补偿时所使用的运动矢量,因而可以唯一确定运动矢量。另外,根据上述示例,也可以谋求编码效率的提高。另外,由于没有必要采用时刻信息来判断运动矢量是前方参照还是后方参照,所以可以使确定运动矢量所需的处理简单化。另外有用的是,若考虑到每个像块的预测方式、运动补偿中所使用的运动矢量等则存在很多方式,但如上可以通过一 系列的流程予以处理。 
再者,在本实施方式中虽然对于通过对所参照的运动矢量采用图像间的时间性距离进行缩放而计算出在直接方式中所使用的运动矢量的情形,已做出说明,但是这也可以对所参照的运动矢量进行常数加倍计算。在此,使用于常数加倍处理中的常数在以多个像块为单位或者以多个图像为单位进行编码或解码时,也可以是可变更的。 
还有,采用参考索引Ridx0、Ridx1的运动矢量的计算方法,不只是采用中央值的计算方法,而也可以与其他的计算方法配合使用。例如,在上述的第3计算方法中,各自含有象素A、象素B及象素C的像块之中有多个对参考索引为最小的图像进行参照的运动矢量,这种场合下不一定需要计算这些运动矢量的中央值,而也可以计算它们的平均值,将所得到的运动矢量作为像块BL1在直接方式中所使用的运动矢量。或者,例如也可以从参考索引为最小的多个运动矢量之中,选择1个编码效率为最高的运动矢量。 
另外,既可以使像块BL1的前向运动矢量和后向运动矢量各自独立进行计算,又可以使之相关联进行计算。例如,也可以从相同的运动矢量来计算前向运动矢量和后向运动矢量。 
另外,也可以将计算结果所得到的前向运动矢量和后向运动矢量的任一方作为像块BL1的运动矢量。 
(实施方式8) 
在本实施方式中参考图像的参考像块MB具有前向(第1)运动矢量和后向(第2)运动矢量,该前向(第1)运动矢量将长时间存储器中所保存的参考图像作为第1参考图像进行参照,该后向(第2)运动矢量将短时间存储器中所保存的参考图像作为第2参考图像进行参照。 
图37表示的是在长时间存储器中只保存1个参考图像时直接方式中的双向预测。 
实施方式8与此前的多个实施方式的不同之处在于,参考图像像块MB2的前向(第1)运动矢量MV21对长时间存储器中所保存的参考图像进行参照。 
短时间存储器是暂时保存参考图像所用的存储器,例如按照图像保存于存储器中的次序(也就是,编码或解码的顺序)来保存图像。然后,在将图像新保存到短时间存储器中时存储器容量不足的场合下,从最早保存于存储器中的图像开始依次删除。 
对于长时间存储器,不一定象短时间存储器那样限定为按照时刻的次序来保存图像。例如,作为保存图像的次序既可以使之对应图像的时刻次序,也可以使之对应保存图像的存储器地址的次序。因此,不能根据时间间隔来缩放对长时间存储器中所保存的图像进行参照的运动矢量M21。 
长时间存储器不是象短时间存储器那样用来暂时保存参考图像,而用来连续保存参考图像。因此,与长时间存储器中所保存的运动矢量相对应的时间间隔,比起与短时间存储器中所保存的运动矢量相对应的时间间隔大很多。 
在图37中,长时间存储器和短时间存储器的界线如图所示用纵向的点线来表示,从此往左与图像有关的信息保存在长时间存储器中,从此往右对应图像的信息保存在短时间存储器中。在此,图像P23的像块MB1是对象像块。另外,像块MB2是与像块MB1在参考图像P24内处于相同位置的参考像块。在参考图像P24的像块MB2的运动矢量之中,前向(第1)运动矢量MV21是将长时间存储器中所保存的图像P21作为第1参考图像进行参照的第1运动矢量,后向(第2)运动矢量MV25是将短时间存储器中所保存的图像P25作为第2参考图像进行参照的第2运动矢量。 
如上所述,图像P21和图像P24之间的时间间隔TR21与对保存于长时间存储器中的图像进行参照的运动矢量MV21相对应,图像P24 和图像P25之间的时间间隔TR25与对保存于短时间存储器中的图像进行参照的运动矢量MV25相对应,并且图像P21和图像P24之间的时间间隔TR21比起图像P24和图像P25之间的时间间隔TR25特别大,或者不定。 
因此,如同此前的实施方式那样,并不是对参考图像P24的像块MB2的运动矢量进行缩放来计算对象图像P23的像块MB1的运动矢量,而通过下面的那种方法来计算对象图像P23的像块MB1的运动矢量。 
MV21=MV21’ 
MV24’=0 
上面公式表示出,将在参考图像P24的像块MB2的运动矢量之中保存于长时间存储器内的第1运动矢量MV21,按原样作为对象图像的第1运动矢量MV21’。 
下面公式表示出,由于保存于短时间存储器中到图像P24的、对象图像P23的像块MB21的第2运动矢量MV24’与第1运动矢量MV21’相比也非常小,所以可以忽视。第2运动矢量MV24’是作为″0″来处理的。 
如上所述,在参考像块MB具有将保存于长时间存储器中的参考图像作为第1参考图像进行参照的1个运动矢量和将保存于短时间存储器中的参考图像作为第2参考图像进行参照的1个运动矢量的场合下,按原样使用参考图像的像块的运动矢量之内保存于长时间存储器中的运动矢量,将其作为对象图像的像块的运动矢量来实行双向预测。 
再者,保存于长时间存储器中的参考图像也可以是第1参考图像或第2图像的任一个图像,并且对保存于长时间存储器中的参考图像进行参照的运动矢量MV21也可以是后向运动矢量。另外,在第2参考图像保存于长时间存储器中并且第1参考图像保存于短时间存储器中的场合下,对参照第1参考图像的运动矢量使用缩放,来计算对 象图像的运动矢量。 
据此,可以不使用长时间存储器特别大或者不定的时间,来实行双向预测的处理。 
再者,不按原样使用所参照的运动矢量,而也可以对该运动矢量进行常数加倍来实行双向预测。 
另外,使用于常数加倍处理中的常数在以多个像块为单位或者以多个图像为单位进行编码或解码时,也可以是可变更的。 
(实施方式9) 
在本实施方式中表示出,参考图像的参考像块MB具有对保存于长时间存储器中的参考图像进行参照的2个前向运动矢量时直接方式中的双向预测。 
图38表示的是参考像块MB具有对保存于长时间存储器中的参考图像进行参照的2个运动矢量时直接方式中的双向预测。 
实施方式9与实施方式8的不同之处在于,参考图像像块MB2的运动矢量MV21和运动矢量MV22双方都参照长时间存储器中所保存的参考图像。 
在图38中,长时间存储器和短时间存储器的界线如图所示用纵向的点线来表示,从此往左与图像有关的信息保存于长时间存储器中,从此往右对图像的信息保存于短时间存储器中。参考图像P24的像块MB2的运动矢量MV21及运动矢量MV22两个都参照长时间存储器中所保存的图像。运动矢量MV21与参考图像P21对应,运动矢量MV22与参考图像P22对应。 
与对长时间存储器中所保存的图像P22进行参照的运动矢量MV22相应,图像P22和图像P24之间的时间间隔TR22比起短时间存储器中所保存的图像P24和图像P25之间的时间间隔TR25特别大,或者不定。 
在图38中,按照与运动矢量MV22对应的图像P22、与运动矢量 MV21对应的图像P21的顺序来分配次序,并且图像P21、图像P22保存在长时间存储器中。在图38中,如下计算对象图像像块MB1的运动矢量。 
MV22’=MV22 
MV24’=0 
上面公式表示出,将参考图像P24的像块MB2的运动矢量之中对所分配的次序最小的图像P21进行参照的运动矢量MV22,按原样作为对象图像P23的像块MB1的运动矢量MV22’。 
下面公式表示出,由于保存于短时间存储器中的对象图像P23其像块MB21的后向运动矢量MV24’与运动矢量MV21’相比也非常小,所以可以忽视。后向运动矢量MV24’是作为″0″来处理的。 
如上所述,通过按原样使用长时间存储器内所保存的参考图像像块的运动矢量之中对所分配的次序最小的图像进行参照的运动矢量,将其作为对象图像像块的运动矢量,而可以不使用长时间存储器特别大或者不定的时间,来实行双向预测的处理。 
再者,不是按原样使用所参照的运动矢量,而也可以对该运动矢量进行常数加倍实行双向预测。 
还有,在参考图像像块MB2的运动矢量MV21和运动矢量MV22的双方都参照长时间存储器中所保存的图像的场合下,也可以选择对第1参考图像进行参照的运动矢量。例如,在MV21是参照第1参考图像的运动矢量并且MV22是参照第2参考图像的运动矢量的场合下,像块MB1的运动矢量采用对图像P21的运动矢量MV21和对图像P24的运动矢量″0″。 
(实施方式10) 
在本实施方式中,将有关实施方式5到实施方式9中所记载的直接方式的运动矢量的计算方法,予以说明。该运动矢量的计算方法在进行图像编码或解码时,全都可以使用。在此,将编码或解码的对象 像块称为对象像块MB。另外,将在对象像块MB的参考图像中与对象像块处于相同位置的像块称为参考像块。 
图39表示的是本实施方式所涉及的运动矢量的计算方法的处理流程。 
首先,判定对象像块MB后方参考图像中的参考像块MB是否具有运动矢量(步骤S1)。如果参考像块MB没有运动矢量(步骤S1:No),则使运动矢量作为″0″实行双向预测(步骤S2),计算运动矢量的处理结束。 
如果参考像块MB有运动矢量(步骤S1:Yes),则判定参考像块MB是否具有前向运动矢量(步骤S3)。 
在参考像块MB没有前向运动矢量的场合(步骤S3:No)下,由于参考像块MB只具有后向运动矢量,所以判定该后向运动矢量的数目(步骤S14)。在参考像块MB的后向运动矢量数目为″2″的场合下,采用下述的2个后向运动矢量来实行双向预测(步骤S15),上述后向运动矢量是按照在图19、图20及图21中所记载的任一个计算方法所缩放出的。 
另一方面,在参考像块MB的后向运动矢量数目为″1″的场合下,对参考像块MB所具有的唯一后向运动矢量进行缩放,采用所缩放出的后向运动矢量来实行运动补偿(步骤S16)。步骤S15或步骤S16的双向预测结束后,运动矢量的计算方法的处理也就结束。 
另外,在参考像块MB具有前向运动矢量的场合(步骤S3:Yes)下,判定参考像块MB的前向运动矢量数目(步骤S4)。 
在参考像块MB的前向运动矢量数目为″1″的场合下,判定与参考像块MB的前向运动矢量相应的参考图像保存于长时间存储器或者短时间存储器中的哪一个(步骤S5)。 
在与参考像块MB的前向运动矢量相应的参考图像保存于短时间存储器中的场合下,对参考像块MB的前向运动矢量进行缩放,采用 所缩放出的前向运动矢量来实行双向预测(步骤S6)。 
在与参考像块MB的前向运动矢量相应的参考图像保存于长时间存储器中的场合下,按照图37所示的运动矢量的计算方法,不用对参考像块MB的前向运动矢量进行缩放,而按原样加以使用将其作为零后向运动矢量来实行双向预测(步骤S7)。步骤S6或步骤S7的双向预测结束后,运动矢量的计算方法的处理也就结束。 
在参考像块MB的前向运动矢量数目为″2″的场合下,判定参考像块MB的前向运动矢量之中与长时间存储器内所保存的参考图像相应的前向运动矢量数目(步骤S8)。 
与长时间存储器中所保存的参考图像相应的前向运动矢量数目在步骤S8中为″0″的场合下,按照图16所示的运动矢量的计算方法,在对象像块MB所属的对象图像上对按照显示时间顺序近的运动矢量进行缩放,采用所缩放出的运动矢量来实行双向预测(步骤S9)。 
与长时间存储器中所保存的参考图像相应的前向运动矢量数目在步骤S8中为″1″的场合下,对短时间存储器中所保存的图像的运动矢量进行缩放,采用所缩放出的运动矢量来实行双向预测(步骤S10)。 
与长时间存储器中所保存的参考图像相应的前向运动矢量数目在步骤S8中为″2″的场合下,判定是否通过2个前向运动矢量的双方来参照长时间存储器内的相同图像(步骤S11)。在采用2个前向运动矢量的双方来参照长时间存储器内的相同图像的场合(步骤S11:Yes)下,按照图15所记载的运动矢量的计算方法,采用在下述的图像内先编码或解码的运动矢量来实行双向预测(步骤S12),上述图像向长时间存储器内的2个前向运动矢量进行参照。 
在未通过2个前向运动矢量的双方来参照长时间存储器内的相同图像的场合(步骤S11:No)下,按照图38所记载的运动矢量的计算方法,采用下述的前向运动矢量来实行双向预测(步骤S13),上述前向运动矢量与向保存于长时间存储器中的图像所分配的次序 小的图像相应。由于在长时间存储器中与实际的图像时刻无关保存有参考图像,所以会按照分配给各参考图像的次序来选择应当用于双向预测中的前向运动矢量。另外,长时间存储器中所保存的参考图像次序有时也与图像时刻相一致,但也可以使之仅仅与存储器地址的次序相一致。也就是说,长时间存储器中所保存的图像次序不一定与图像时刻相一致也是可以的。步骤S12、13的双向预测结束后,运动矢量的计算方法的处理也就结束。 
(实施方式11) 
下面,将有关本发明的实施方式11,采用附图加以详细说明。 
图40是表示本发明实施方式11所涉及的动态图像编码装置100结构的框图。动态图像编码装置100在由场结构所编码的像块和由帧结构所编码的像块同时存在的场合下,也可以使用直接方式的空间性预测方法来实行动态图像的编码,该装置具备帧存储器101、差分运算部102、预测误差编码部103、编码序列生成部104、预测误差解码部105、加法运算部106、帧存储器107、运动矢量检测部108、方式选择部109、编码控制部110、开关111、开关112、开关113、开关114、开关115及运动矢量存储部116。 
帧存储器101是以图像为单位来保持输入图像的图像存储器。差分运算部102用来计算预测误差加以输出,该预测误差是来自帧存储器101的输入图像和根据运动矢量从解码图像所求出的参考图像之间的差分。预测误差编码部103用来对通过差分运算部102所求出的预测误差实行频率变换,并进行量子化加以输出。编码序列生成部104在对来自预测误差编码部103的编码结果进行可变长编码之后,变换成输出用的编码比特流格式,并附加对所编码的预测误差关联信息进行描述的标题信息等附加信息以生成编码序列。预测误差解码部105对来自预测误差编码部103的编码结果进行可变长解码,并在实行反向量子化之后实施IDCT变换等的反向频率变换,给预测误差进 行解码。加法运算部106在作为解码结果的预测误差中加入上述参考图像,以经过编码或解码的图像数据来输出参考图像,该参考图像意味着与输入图像相同的1幅图像的图像。帧存储器107是以图像为单位来保持参考图像的图像存储器。 
运动矢量检测部108在编码对象帧的每个编码单位上检测运动矢量。方式选择部109用来选择是通过直接方式还是通过其他方式来计算运动矢量。编码控制部110按照输入到帧存储器101中的时间顺序,将所存储的输入图像的图像置换成被编码的顺序。还有,编码控制部110用来判定在编码对象帧的每个指定大小的单位上是通过场结构进行编码还是通过帧结构进行编码。在此,指定大小的单位是将2个宏块(例如,水平16象素、垂直16象素)按纵向连结后的单位(下面,称为宏块对)。如果是通过场结构所编码的像块,则从帧存储器101相应于隔行扫描而每隔1水平扫描线读出象素值,如果是通过帧结构所编码的像块,则从帧存储器101依次读出输入图像的各个象素值,并且所读出的各个象素值配置到存储器上以构成与场结构或帧结构相应的编码对象宏块对。运动矢量存储部116用来保持已编码宏块的运动矢量和该运动矢量所参照的帧的参考索引。有关参考索引,是随着已编码宏块对中的各个宏块的各自进行保持的。 
下面,将对于如上所构成的动态图像编码装置100的动作,予以说明。输入图像按时间顺序以图像为单位输入到帧存储器101。图41(a)表示的是按时间顺序以图像为单位输入到图像编码装置100中的帧次序。图41(b)表示的是按编码顺序对图41(a)所示的图像表格进行重新排序时的次序。在图41(a)中,纵线表示图像,在各图像右下方所示的符号其中第一字符的字母表示出图像类型(I、P或B),第2字符之后的数字表示出时间顺序的图像编号。另外,图42表示的是说明实施方式11所用的参考帧表格300的结构。输入到帧存储器101中的各个图像通过编码控制部110按编码顺序加以重新 排列。给编码顺序的重新排列是根据图像间预测编码中的参考关系来实行的,并且进行重新排列可做到作为参考图像被使用的图像与作为参考图像所使用的图像相比更先进行编码。 
例如,P图像是将按照显示时间顺序处于前方的近旁I或P图像3幅之内的1幅作为参考图像来使用的。另外,B图像是将按照显示时间顺序处于前方的近旁I或P图像3幅之内的1幅和按照显示时间顺序处于后方的近旁I或P图像的1幅作为参考图像来使用的。具体地说,在图41(a)中输入在图像B5及图像B6后方的图像P7由于通过图像B5及图像B6进行参照,所以重新排列在图像B5及图像B6之前。同样,输入在图像B8及图像B9后方的图像P10重新排列在图像B8及图像B9的前方,输入在图像B11及图像B12后方的图像P13重新排列在图像B11及图像B12的前方。据此,重新排列图41(a)的图像后的结果会成为图41(b)那样。 
在帧存储器101中实行过重新排列的各个图像是以按垂直方向连结2个宏块的宏块对为单位来读出的,并且各个宏块是水平16象素×垂直16象素的大小。因而,宏块对成为水平16象素×垂直32象素的大小。下面,将对于图像B11的编码处理予以说明。再者,本实施方式中的参考索引管理也就是参考帧表格的管理是在编码控制部110中实行的。 
因为图像B11是B图像,所以实行采用双向参考的图像间预测编码。图像B11是将按照显示时间顺序处于前方的图像P10、P7、P4和按照显示时间顺序处于后方的图像P13之中的2幅图像作为参考图像来使用的。如何在这些4幅图像之中选择任意2幅图像,能以宏块为单位进行指定。另外,在此参考索引是根据初始状态下的方法进行分配的。也就是说,在图像B11进行编码时参考帧表格300如同图42所示的那样。此时的参考图像为,第1参考图像由图42的第1参考索引来指定,第2参考图像由图42的第2参考索引来指定。 
在图像B11的处理过程中,编码控制部110对各个开关进行控制使开关113开启并使开关114和开关115关闭。因而,从帧存储器101所读出的图像B11的宏块对输入运动矢量检测部108、方式选择部109及差分运算部102。在运动矢量检测部108中,将储存于帧存储器107中的图像P10、图像P7、图像P4及图像P13的解码图像数据作为参考图像来使用,以此对宏块对中所包含的各个宏块的第1运动矢量和第2运动矢量实行检测。在方式选择部109中,采用由运动矢量检测部108所检测到的运动矢量,来确定宏块对的编码方式。在此,B图像的编码方式例如可以从图像内编码、采用单向运动矢量的图像间预测编码、采用双向运动矢量的图像间预测编码及直接方式来选择。另外,在选择直接方式之外的编码方式的场合下,也会同时确定是通过帧结构对宏块对进行编码,还是通过场结构进行编码。 
在此,将对于采用直接方式的空间性预测方法来计算运动矢量的方法,予以说明。图43(a)是表示在通过场结构所编码的宏块对和通过帧结构所编码的宏块对同时存在时采用直接方式空间性预测方法的运动矢量计算步骤一个示例的流程图。图43(b)表示的是在编码对象宏块对通过帧结构进行编码的场合下,本发明所使用的外围宏块对配置一个示例。图43(c)表示的是在编码对象宏块对通过场结构进行编码的场合下,本发明所使用的外围宏块对配置一个示例。在图43(b)及图43(c)中用斜线所示的宏块对是编码对象宏块对。 
在编码对象宏块对采用直接方式的空间性预测进行编码的场合下,选择该编码对象宏块对的外围3个已编码宏块对。这种场合下,编码对象宏块对也可以通过场结构或帧结构的任一个来编码。因此,编码控制部110首先确定是通过场结构对编码对象宏块对进行编码,还是通过帧结构进行编码。例如,在外围宏块对之中通过场结构所编码的宏块对多的场合下,通过场结构对编码对象宏块对进行编码,在通过帧结构所编码的宏块对多的场合下,通过帧结构进行编码。这样, 由于采用外围像块的信息来确定是通过帧结构对编码对象宏块对进行编码还是通过场结构进行编码,所以没有必要在编码序列中描述出表示通过哪个结构对编码对象宏块对进行编码的信息,并且因为从外围宏块对来预测结构,所以能够选择合适的结构。 
接着,运动矢量检测部108按照编码控制部1100的确定,来计算编码对象宏块对的运动矢量。首先,运动矢量检测部108查验编码控制部110是确定出通过场结构进行编码还是确定出通过帧结构进行编码(S301),在确定出通过帧结构进行编码的场合下,通过帧结构来检测编码对象宏块对的运动矢量(S302),在确定出通过场结构进行编码的场合下,通过场结构来检测编码对象宏块对的运动矢量(S303)。 
图44表示出通过帧结构进行编码时宏块对的数据结构和通过场结构进行编码时宏块对的数据结构。在同图中,白圈表示出奇数水平扫描线上的象素,用斜线画出影线的黑圈表示出偶数水平扫描线上的象素。在从代表输入图像的各帧取出各宏块对的场合下,如图44的中央部分所示,奇数水平扫描线上的象素和偶数水平扫描线上的象素按垂直方向交替配置。在通过帧结构对这种宏块对进行编码的场合下,该宏块对在2个宏块MB1及宏块MB2中进行处理,并依照构成宏块对的2个宏块MB1和宏块MB2的各自计算运动矢量。另外,在通过场结构进行编码的场合下,该宏块对被分成按水平扫描方向进行隔行扫描时的代表顶部场的宏块TF和代表底部场的宏块BF,其运动矢量在构成宏块对的2个场中分别计算1个。 
以这种宏块对为前提,如图43(b)所示将对于通过帧结构对编码对象宏块对进行编码的情形,予以说明。图45是表示图43所示的步骤S302中更为详细的处理步骤的流程图。还有在同图中,将宏块对记述为MBP,将宏块记述为MB。 
方式选择部109首先对于构成编码对象宏块对的1个宏块MB1(上 部的宏块),采用直接方式的空间性预测来计算1个运动矢量。最初,方式选择部109按照第1运动矢量和第2运动矢量的各自,计算外围宏块对所参照的图像索引之中的最小值(S501)。但是这种场合下,外围宏块对通过帧结构被编码时只采用与编码对象宏块相邻的宏块予以确定。接着,查验外围宏块对是否通过场结构被编码(S502),在通过场结构被编码的场合下,进一步从图42的参考帧表格,查验通过构成该外围宏块对的2个宏块所参照的场之中有多少个场是附加最小索引的场(S503)。 
在步骤S503中所查验的结果为,通过2个宏块所参照的场都是附加最小索引(也就是相同的索引)的场的场合下,求出2个宏块的运动矢量的平均值,将其作为该外围宏块对的运动矢量(S504)。原因是,按照隔行扫描的结构进行设计的场合下,在帧结构的编码对象宏块中场结构外围宏块对的2个宏块相邻。 
在步骤S503中所查验的结果为,只有通过1个宏块所参照的场是附加最小索引的场的场合下,将该1个宏块的运动矢量作为该外围宏块对的运动矢量(S504A)。在全部所参照的场都是没有附加最小索引的场的场合下,将该外围宏块对的运动矢量作为「0」(S505)。 
在上面的说明中,由于只采用外围宏块的运动矢量之中所参照的场为附加有最小索引的场的运动矢量,所以能够选择编码效率更高的运动矢量。S505的处理表示出判断为没有适合于预测的运动矢量。 
在步骤S502中所查验的结果为,该外围宏块对通过帧结构被编码的场合下,将该外围宏块之中与编码对象宏块邻近的宏块的运动矢量作为该外围宏块对的运动矢量(S506)。 
方式选择部109对于所选择的3个外围宏块对,反复实行从上述步骤S501到步骤S506的处理。结果是,对于编码对象宏块对内的1个宏块如宏块MB1,分别一个一个地求出3个外围宏块对的运动矢量。 
接着,方式选择部109查验3个外围宏块对之中对索引最小的帧 或该帧内的场进行参照的宏块是否是1个(S507)。 
这种场合下,方式选择部109将3个外围宏块对的参考索引统一成参考帧索引或者参考场索引的任一个,并加以比较。在图42所示的参考帧表格中,只是在每帧中附加参考索引,但由于该参考帧索引和在每场中附加索引的参考场索引存在一定的关系,所以可以通过计算的方法从参考帧表格或者参考场表格的一方变换成另一方的参考索引。 
图46是表示参考场索引和参考帧索引之间的关系的关系表示图。 
如该图46所示,在参考场表格中沿着时间序列存在数个采用第1场f1及第2场f2所表示的帧,并在各帧中以含有编码对象像块的帧(图46中所示的帧)为基准分配有0、1、2、...之类的参考帧索引。另外,在各帧的第1场f1及第2场f2中以含有编码对象像块的帧的第1场f1为基准(第1场是编码对象场时),分配有0、1、2、...之类的参考场索引。再者,该参考场索引从与编码对象场近的帧的第1场f1及第2场f2开始,如果编码对象像块是第1场f1则使之优先分配第1场f1,如果编码对象像块是第2场f2则使之优先分配第2场f2。 
例如,在通过帧结构所编码的外围宏块对参考帧索引「1」的帧进行参照并且通过场结构所编码的外围像块对参考场索引「2」的第1场f1进行参照时,上述外围宏块全都参照同一图像进行处理。也就是说,在通过1个外围宏块所参照的帧的参考帧索引满足下述前提条件时,该外围宏块参照同一图像进行处理,上述前提条件是与分配给其他1个外围宏块参考场的参考场索引二分之一的值相等(小数点之下舍去)。 
例如,在用图46的Δ所示的第1场f1中所包含的编码对象像块对参考场索引「2」的第1场f1进行参照并且作为帧结构的外围宏块 对参考帧索引「1」的帧进行参照时,由于满足上述前提条件,所以上述外围像块参照同一图像进行处理。另一方面,在某个外围宏块对参考场索引「2」的第1场进行参照并且其他外围宏块对参考帧索引「3」的帧进行参照时,由于不满足上述前提条件,所以其外围像块没有参照同一图像进行处理。 
如上所述,如果在步骤S507中所查验的结果为1个,则将对索引最小的帧或者该帧内的场进行参照的外围宏块对的运动矢量,作为编码对象宏块的运动矢量(S508)。如果在步骤S507中所查验的结果不是1个,则进一步查验3个外围宏块对之中对索引最小的帧或者该帧内的场进行参照的外围宏块对是否有2个以上(S509),如果有2个以上,并且如果其中进一步有未对索引最小的帧或者该帧内的场进行参照的外围宏块对,则将该运动矢量作为「0」(S510),此后将外围宏块对3个运动矢量的中央值作为编码对象宏块的运动矢量(S511)。另外,如果在步骤S509中所查验的结果为不足2个,则对索引最小的帧或者该帧内的场进行参照的外围宏块对的数目为「0」,而将编码对象宏块的运动矢量作为「0」(S512)。 
以上的处理结果是,对于构成编码对象宏块对的1个宏块如MB1,作为计算结果而得出1个运动矢量MV1。方式选择部109对于具有第2参考索引的运动矢量也会实行上述处理,并采用所得到的2个运动矢量通过双向预测来实行运动补偿。但是,在外围宏块对之中不存在具有第1或第2运动矢量的外围宏块的场合下,不会采用该方向的运动矢量而通过只是单方向的运动矢量来实行运动补偿。另外,对于编码对象宏块对内的另1个宏块如宏块MB2,也会反复实行相同的处理。结果是,将有关1个编码对象宏块对中的2个各宏块,实行采用直接方式的运动补偿。 
接着,象图43(c)那样,将有关通过场结构对编码对象宏块对进行编码的情形,予以说明。图47是表示在图43所示的步骤S303 中更为详细的处理步骤的流程图。方式选择部109对于构成编码对象宏块对的1个宏块如与该宏块对的顶部场相应的宏块TF,采用直接方式的空间性预测来计算1个运动矢量MVt。首先,方式选择部109在外围宏块对所参照的图像索引之中求出最小值(S601)。但是,在外围宏块通过场结构进行处理的场合下,只是对于编码对象宏块和同一场(顶部场或者底部场)的宏块,予以考虑。接着,查验外围宏块对是否通过帧结构被编码(S602),在通过帧结构被编码的场合下,进一步以通过参考帧表格300给与各帧的索引值为根据,来判断该外围宏块对内的通过2个宏块所参照的帧是否全都是附加最小索引的帧(S603)。 
在步骤S603中所查验的结果为,通过2个宏块所参照的帧全都是最小索引的场合下,计算2个宏块的运动矢量的平均值,将其作为该外围宏块对的运动矢量(S604)。在步骤S603中所查验的结果为,一方或者双方所参照的帧都是不具有最小索引的帧的场合下,进一步查验通过哪个宏块所参照的帧具有最小索引(S605),在所查验的结果为在任一方宏块所参照的帧中都附加有最小索引的场合下,将该宏块的运动矢量作为该外围宏块对的运动矢量(S606),在步骤S605中所查验的结果为哪个宏块都没有在所参照的帧中附加最小索引的场合下,将该外围宏块对的运动矢量作为「0」(S607)。在上面的说明中,由于在外围宏块的运动矢量之中只采用所参照的帧附加有最小索引的帧的运动矢量,所以可以选择编码效率更高的运动矢量。S607的处理表示出判断为没有适合于预测的运动矢量。 
另外,在步骤S602中所查验的结果为,该外围宏块对是通过场结构被编码的场合下,将该外围宏块对全部的运动矢量,作为在该外围宏块对中与编码对象宏块对内的对象宏块相应的宏块的运动矢量(S608)。方式选择部109对于所选择的3个外围宏块对,反复实行从上述步骤S601到步骤S608的处理。结果是,将有关编码对象宏块 对内的1个宏块如宏块TF,分别一个一个地求出3个外围宏块对的运动矢量。 
接着,运动矢量检测部108查验3个外围宏块对之中对索引最小的帧进行参照的宏块是否是1个(S609),如果是1个则将对索引最小的帧进行参照的外围宏块对运动矢量作为编码对象宏块的运动矢量(S610)。如果在步骤S609中所查验的结果不是1个,则进一步查验3个外围宏块对之中对索引最小的帧进行参照的外围宏块对是否有2个以上(S611),如果有2个以上,则将其中未对索引最小的帧进行参照的外围宏块对的运动矢量作为「0」(S612),此后将外围宏块对3个运动矢量的中央值作为编码对象宏块的运动矢量(S613)。另外,如果在步骤S611中所查验的结果不足2个,则对索引最小的帧进行参照的外围宏块对的数目为「0」,而将编码对象宏块的运动矢量作为「0」(S614)。 
以上的处理结果是,对于构成编码对象宏块对的1个宏块如与顶部场相应的宏块TF,作为计算结果而得出1个运动矢量MVt。方式选择部109对于第2运动矢量(对应于第2参考索引)也会反复实行上述处理。据此,对于宏块TF得到2个运动矢量,并采用这些运动矢量来实行采用双向预测的运动补偿。但是,在外围宏块对之中不存在具有第1或第2运动矢量的外围宏块的场合下,不会采用该方向的运动矢量而通过只有单方向的运动矢量来实行运动补偿。原因是,外围宏块对只仅仅按单方向进行参照是考虑到对于编码对象宏块也只按单方向进行参照会使编码效率提高。 
另外,对于编码对象宏块对内的另1个宏块如与下部场相应的宏块BF,也会反复实行相同的处理。结果是,将有关1个编码对象宏块对中的2个各宏块如宏块TF和宏块BF,实行采用直接方式的处理。 
还有,在此编码对象宏块对的编码结构和外围宏块对的编码结构不同的场合下,实行计算外围宏块对内2个宏块的运动矢量的平均值 等的处理并加以计算,但是本发明并不限定于此,例如也可以只在编码对象宏块对和外围宏块对中编码结构相同的场合下,采用该外围宏块对的运动矢量,并在编码对象宏块对和外围宏块对中编码结构不同的场合下,不采用编码结构不同的外围宏块对的运动矢量。更为具体地说,首先①在编码对象宏块对通过帧结构被编码的场合下,只采用通过帧结构所编码的外围宏块对的运动矢量。此时,在通过帧结构所编码的外围宏块对的运动矢量之中没有对索引最小的帧进行参照的运动矢量的场合下,将编码对象宏块的运动矢量对作为「0」。另外,在外围宏块对通过场结构被编码的场合下,将该外围宏块对的运动矢量作为「0」。接着,②在编码对象宏块对通过场结构被编码的场合下,只采用通过场结构所编码的外围宏块对的运动矢量。此时,在通过场结构所编码的外围宏块对的运动矢量之中没有对索引最小的帧进行参照的运动矢量的场合下,将编码对象宏块的运动矢量对作为「0」。另外,在外围宏块对通过帧结构被编码的场合下,将该外围宏块对的运动矢量作为「0」。这样一来,在计算各外围宏块对的运动矢量之后,③在这些运动矢量之中只有1个是对具有最小索引的帧或其场进行参照而得到的运动矢量的场合下,将该运动矢量作为直接方式中的编码对象宏块对的运动矢量,在不是1个的场合下,将3个运动矢量的中央值作为直接方式中的编码对象宏块对的运动矢量。 
另外,在上面的说明中通过已编码外围宏块对的编码结构的大多数,来确定是通过场结构对编码对象宏块对进行编码还是通过帧结构进行编码,但是本发明并不限定于此,例如在直接方式中也能以固定方式出一定是通过帧结构进行编码或者一定是通过场结构进行编码。这种场合下,例如在作为编码对象的每帧中对通过场结构来编码或者通过帧结构来编码进行转换的场合下,也可以描述在编码序列全部的标题或者每帧的帧标题等中。转换的单位例如也可以是顺序、GOP、图像及切片等,而这种场合下可以分别描述在编码序列中相应的标题 等内。即使这样的场合下,当然也只在编码对象宏块对和外围宏块对中编码结构相同时,可以通过采用该外围宏块对的运动矢量的方法,来计算直接方式中编码对象宏块对的运动矢量。还有,在通过数据包等进行传送的场合下,也可以使标题部分和数据部分分离,加以另行传送。那种场合下,不会使标题部分的数据部分成为1个比特流。但是,数据包的场合下即使传送的顺序有多少前后之分,也只是通过其他的数据包来传送与相应的数据部分对应的标题部分,并且不会成为1个比特流,这也是相同的。这样,由于以固定方式确定出是采用帧结构还是采用场结构,因而无需采用外围像块的信息来确定结构的处理,并可以谋求处理的简单化。 
另外还有,在直接方式中也可以采用这样的方法,这就是通过帧结构和场结构的双方来处理编码对象像块对,并选择编码效率高的结构。这种场合下,已选择出帧结构和场结构的哪个可以描述在编码序列中的宏块对的标题部分内。即使这样的场合下,当然也只在编码对象宏块对和外围宏块对中编码结构相同时,可以通过采用该外围宏块对的运动矢量的方法,来计算直接方式中编码对象宏块对的运动矢量。由于采用这种方法,所以在编码序列中需要表示出选择帧结构和场结构哪个的信息,但仍可以进一步减少运动补偿的剩余误差信号,并能够谋求编码效率的提高。 
另外在上面的说明中,有关外围宏块对以宏块大小为单位来实行运动补偿的情形已做出说明,但该外围宏块对也能以不同大小为单位来实行运动补偿。这种场合下,如图48(a)、(b)所示对于编码对象宏块对的各个宏块,将含有位于a、b、c的象素的像块的运动矢量作为外围宏块对的运动矢量。在此,图48(a)表示出对上部的宏块进行处理的情形,图48(b)表示出对下部的宏块进行处理的情形。在此编码对象宏块对和外围宏块对的帧/场结构不同的场合下,采用图49(a)、(b)所示的含有a、b、c位置的像块和含有位置a’、b’、 c’的像块,来实行处理。在此,位置a’、b’、c’是与象素a、b、c位置对应的同一宏块对内的另一方宏块中所包含的像块。例如图49(a)的场合下,在编码对象宏块对和外围宏块对的帧/场结构不同时,上部编码对象宏块左侧的像块的运动矢量是采用BL1和BL2的运动矢量来确定的。另外图49(b)的场合下,在编码对象宏块对和外围宏块对的帧/场结构不同时,上部编码对象宏块左侧的像块的运动矢量是采用BL3和BL4的运动矢量来确定的。由于采用这种处理方法,所以即使在外围宏块以和宏块大小不同的单位来实行运动补偿的场合下,也可以实行考虑到帧·场之差的直接方式的处理。 
另外,在外围宏块对以和宏块大小不同的大小为单位实行运动补偿的场合下,通过计算宏块中所包含的像块的运动矢量的平均值,也可以将其作为该宏块的运动矢量。即使在外围宏块以和宏块大小不同的单位来实行运动补偿的场合下,也可以实行考虑到帧·场之差的直接方式的处理。 
如上所述,检测运动矢量并根据所检测到的运动矢量来实行图像间预测编码的结果是,通过运动矢量检测部108所检测到的运动矢量和所编码的预测误差图像按每个宏块存储在编码序列中。但是,对于通过直接方式所编码的宏块的运动矢量,只是描述出仅通过直接方式被编码,而在编码序列中没有描述运动矢量及参考索引。图50表示的是通过编码序列生成部104所生成的编码序列700的数据结构的一个示例。如同图所示,在通过编码序列生成部104所生成的编码序列700中对每幅图像Picture设有标题Header。在该标题Header中例如设有表示参考帧表格10变更的项目RPSL及表示该图像的图像类型的未图示的项目等,并且在项目RPSL中,按照参考帧表格10的第1参考索引12及第2参考索引13的值的分配方法从初始设定开始有变更时,描述变更后的分配方法。 
另一方面,所编码的预测误差记录于每个宏块中。例如,在某个 宏块采用直接方式的空间性预测进行编码的场合下,不会在描述与该宏块相应的预测误差的项目Block1中描述该宏块的运动矢量,而是在表示该宏块的编码方式的项PredType中描述表示编码方式为直接方式的信息。另外,在从上述编码效率的观点出发来选择该宏块对通过帧结构或场结构的哪个进行编码的那种场合下,描述这样的信息,该信息表示已选择帧结构或场结构的哪个。接下来,在项目CodedRes中描述所编码的预测误差。另外,在其他的宏块是采用图像间预测编码方式所编码的宏块的场合下,在描述与该宏块对应的预测误差的项目Block2之中表示编码方式的项目PredTyde内描述出该宏块的编码方式是图像间预测编码方式。这种场合下,除编码方式之外,还有该宏块的第1参考索引12写入项目Ridx0中,第2参考索引13写入项目Ridx1中。像块中的参考索引采用可变长代码字来表现,并分配有值越小越短的代码长度的代码。另外接着,该宏块对前方帧进行参照时的运动矢量描述在项目MV0中,对后方帧进行参照时的运动矢量描述在项目MV1中。接下来,在项目CodedRes中描述所编码的预测误差。 
图51是表示对图50所示的编码序列700进行解码的动态图像解码装置800的结构的框图。动态图像解码装置800用来对编码序列700进行解码,该编码序列描述出含有通过直接方式所编码的宏块的预测误差,该装置具备编码序列解析部701、预测误差解码部702、方式译码部703、运动补偿译码部705、运动矢量存储部706、帧存储器707、加法运算部708、开关709、开关710及运动矢量解码部711。编码序列解析部701用来从所输入的编码序列700提取各种数据。此处所述的各种数据指的是,编码方式的信息及与运动矢量有关的信息等。所提取的编码方式信息输出到方式译码部703。另外,所提取的运动矢量信息输出到运动矢量解码部711。还有,所提取的预测误差编码数据对预测误差解码部702进行输出。预测误差解码部 702对所输入的预测误差编码数据进行解码,生成预测误差图像。所生成的预测误差图像对开关709进行输出。例如,在开关709与端子b连接时,预测误差图像对加法器708进行输出。 
方式译码部703用来对从编码序列所提取的编码方式信息进行参照,并实行开关709和开关710的控制。在编码方式是图像内编码的场合下,进行控制使开关709与端子a连接,并使开关710与端子c连接。 
在编码方式是图像间编码的场合下,进行控制使开关709与端子b连接,并使开关710与端子d连接。再者,通过方式译码部703也对运动补偿译码部705和运动矢量解码部711输出编码方式的信息。运动矢量解码部711对从编码序列解析部701所输入的编码后的运动矢量,实行解码处理。解码后的参考图像编号和运动矢量在保持到运动矢量存储部706中,与此同时对运动补偿译码部705进行输出。 
在编码方式是直接方式的场合下,方式译码部703进行控制使开关709与端子b连接,并使开关710与端子d连接。再者,通过方式译码部703也对运动补偿译码部705和运动矢量解码部711输出编码方式的信息。运动矢量解码部711在编码方式是直接方式时,采用运动矢量存储部706中所存储的外围宏块对的运动矢量和参考图像编号,来确定在直接方式中所使用的运动矢量。因为该运动矢量的确定方法与通过图40方式选择部109的动作所说明的内容相同,所以在此省略其说明。 
根据所解码的参考图像编号和运动矢量,运动补偿译码部705从帧存储器707对每个宏块取得运动补偿图像。所取得的运动补偿图像输出到加法运算部708。帧存储器707是将解码图像保持在每帧中的存储器。加法运算部708对所输入的预测误差图像和运动补偿图像进行加法运算,生成解码图像。所生成的解码图像对帧存储器707进行输出。 
如上所述根据本实施方式,在直接方式的空间性预测方法中,即使在与编码对象宏块对相应的已编码外围宏块对中同时存在通过帧结构所编码的像块和通过场结构所编码的像块的场合下,也可以容易地计算运动矢量。 
再者,在上述的实施方式中有关各图像以沿着垂直方向连结2个宏块的宏块对为单位采用帧结构或者场结构的任一个进行处理的情形,已做出说明,但是这也能够以不同的单位如宏块的单位来转换帧结构或场结构进行处理。 
另外,在上述的实施方式中对于通过直接方式对B图像中的宏块进行处理的情形已做出说明,但是即便是P图像也可以实行同样的处理。在实行P图像的编码·解码时,各像块只从1个图像开始实行运动补偿,并且参考帧表格只有1个。因此,为了在P图像中也实行与本实施方式相同的处理,在本实施方式中可以实行下述的两种处理,一是计算编码·解码对象像块的2个运动矢量(第1参考帧表格和第2参考帧表格)的处理,二是计算1个运动矢量的处理。 
另外,在上述的实施方式中对于采用3个外围宏块对的运动矢量来预测并生成在直接方式中所使用的运动矢量的情形,已做出说明,但所使用的外围宏块对的数目也可以是不同的值。例如,设想只采用左邻的外围宏块对的运动矢量那样的情形。 
(实施方式12) 
再者,将实现上述各实施方式所示的图像编码方法及图像解码方法构成所需的程序记录在软盘等存储媒体中,以此可以在独立的计算机系统中简单地实施上述各实施方式所示的处理。 
图52是有关存储程序所需的存储媒体的说明图,该程序用来通过计算机系统实现上述实施方式1到实施方式11的图像编码方法及图像解码方法。 
图52(b)表示出从软盘的正面所看到的外观、剖面结构及软盘, 图52(a)表示出作为存储媒体主体的软盘物理格式的示例。软盘FD内置于卡盒F内,在该磁盘的表面上按同心圆状从外圆向内圆形成有多个磁道Tr,并且各磁道沿着角度的方向被分割成16个扇区Se。因而,采用存储有上述程序的软盘,在上述软盘FD上所分配的区域内记录有作为上述程序的图像编码方法及图像解码方法。 
另外,图52(c)表示在软盘FD中实行上述程序的记录再生所需的结构。在将上述程序记录到软盘FD中时,是从计算机系统Cs通过软盘驱动器来写入作为上述程序的图像编码方法及图像解码方法的。另外,在采用软盘内的程序将上述图像编码方法及图像解码方法建立在计算机系统中的场合下,通过软盘驱动器从软盘读出程序,转送给计算机系统。 
还有,在上述的说明中作为记录媒体已采用软盘做出说明,但采用光盘也可以同样地实行。另外,记录媒体并不限于此,CD-ROM、存储卡、ROM盒等只要是可以记录程序的装置,就能够同样地实施。 
还有,在此将说明上述实施方式所示的图像编码方法和图像解码方法的应用示例和采用该方法的系统。 
图53是表示实现内容传送服务的内容提供系统ex100的整体结构的框图。将通信服务的提供区域分割成指定的大小,并在各自单元内分别设置有作为固定无线电台的基站ex107~ex110。 
该内容提供系统ex100例如在因特网ex101上通过因特网提供者ex102、电话网ex104及基站ex107~ex110来连接计算机ex111、PDA(personal digital assistant)ex112、摄像机ex113、携带电话ex114及带摄像机的携带电话ex115等的各种设备。 
但是,内容提供系统ex100并不限定于图53的那种组合,而也可以组合连接任一个。另外,不用通过作为固定无线电台的基站ex107~ex110,各个设备也可以直接与电话网ex104相连接。 
摄像机ex113是数字录像摄像机等的可实行动态图像摄影的设 备。另外,携带电话是下述方式的携带电话机或是PHS(PersonalHandyphone System)等全都可以,上述方式包括PDC(PersonalDigital Communications)方式、CDMA(Code Division MultipleAccess)方式、W-CDMA(Wideband-Code Division Multiple Access)方式或者GMS(Global System for Mobile Communications)方式。 
另外,流式服务器ex103通过基站ex109及电话网ex104被摄像机ex113所连接,采用摄像机ex113可以实行根据用户所发送的编码处理后的数据的实况传输等。所拍摄到的数据编码处理既可以在摄像机ex113中实行,也可以在实行数据发送处理的服务器等中实行。另外,采用摄像机ex116所拍摄到的动态图像数据也可以通过计算机ex111发送给流式服务器ex103。摄像机ex116是数字摄像机等的可拍摄静止图像、动态图像的设备。这种场合下,动态数据的编码在摄像机ex116中或在计算机ex111中都可以实行。另外,编码处理在计算机ex111和摄像机ex116所具有的LSIex117中进行处理。还有,也可以将图像编码·解码用的软件装入作为通过计算机ex111等可读取的记录媒体的任何储存媒体(CD-ROM、软盘、硬盘等)中。再者,也可以通过带摄像机的携带电话ex115来发送动态图像数据。此时的动态图像数据是通过携带电话ex115所具有的LSI进行编码处理后的数据。 
在该内容提供系统ex100中,一方面与上述实施方式相同对用户使用摄像机ex113、摄像机ex116等所拍摄到的内容(例如,拍摄音乐实况的影像等)进行编码处理并发送给流式服务器ex103,另一方面流式服务器ex103对发出请求的客户机来流传输上述内容数据。作为客户机,有可以对上述编码处理后的数据进行解码的计算机ex111、PDAex112、摄像机ex113及携带电话ex114等。据此,内容提供系统ex100可以在客户机中接收并再生编码后的数据,并进一步通过在客户机中实时地接收解码及再生,也可以实现个人广播。 
在构成该系统的各设备的编码、解码过程中,可以采用上述各实施方式所示的图像编码装置或图像解码装置。 
作为一个示例,将有关携带电话予以说明。 
图54表示的是采用上述实施方式中所说明的图像编码方法和图像解码方法的携带电话ex115。携带电话ex115具有:天线ex201,用来在和基站ex110之间发送接收电波;摄像部ex203,是CCD摄像机等可拍摄影像、静止图像的摄像机;显示部ex202,是显示通过摄像部ex203所拍摄到的影像以及通过天线ex201所接收到的影像等被解码后的数据的液晶显示器等;主体部,由操作键ex204群构成;声音输出部ex208,是进行声音输出所用的扬声器等;声音输入部ex205,是进行声音输入所用的传声器等;记录媒体ex207,用来保存所拍摄到的动态图像或静止图像的数据、所接收到的邮件数据及动态图像数据或静止图像数据等被编码后的数据或者解码后的数据;开口部ex206,是可以将记录媒体ex207安装到携带电话ex115中所需的。记录媒体ex207是将闪存储元件装入SD卡等的塑料盒内的部件,该闪存储元件是电可擦和删除的非易失性存储器并且是EEPROM(Electrically Erasable and Programmable Read Only Memory)的一种。 
再者,将有关携带电话ex115采用图55予以说明。携带电话ex115对下述的主控制部ex311通过同步总线ex313相互连接有电源电路部ex310、操作输入控制部ex304、图像编码部ex312、摄像机接口部ex303、LCD(Liquid Crystal Display)控制部ex302、图像解码部ex309、复用分离部ex308、记录再生部ex307、调制解调电路部ex306及声音处理部ex305,上述主控制部ex311对具备有显示部ex202及操作键ex204的主体部各部进行总括控制。 
电源电路部ex310用于,若因用户的操作而使话终及电源键变成开启状态,则通过从电池组对各部提供电源,而使带摄像机的数字携 带电话ex115起动,成为可工作的状态。 
携带电话ex115根据作为CPU、ROM及RAM等的主控制部ex311的控制,通过声音处理部ex305将在声音通话方式时由声音输入部ex205所集音的声音信号转换成数字声音数据,通过调制解调电路部ex306对其进行扩频处理,并在通过发送接收电路部ex301施以数字模拟变换处理及频率变换处理之后,通过天线ex201进行发送。另外,携带电话机ex115对在声音通话方式时通过天线ex201所接收到的接收数据进行放大并实施频率变换处理及模拟数字变换处理,通过调制解调电路部ex306进行逆扩频处理,在通过声音处理部ex305转换成模拟声音数据之后通过声音输出部ex208将其输出。 
还有,在数据通信方式时发送电子邮件的场合下,由主体部操作键ex204的操作所输入的电子邮件正文数据,通过操作输入控制部ex304发到主控制部ex311。主控制部ex311通过调制解调电路部ex306对正文数据进行扩频处理,并在通过发送接收电路部ex301施以数字模拟变换处理及频率变换处理之后,通过天线ex201发送到基站ex110。 
在数据通信方式时发送图像数据的场合下,通过摄像机接口部ex303将由摄像部ex203所拍摄到的图像数据提供到图像编码部ex312。另外,在不发送图像数据的场合下,也可以通过摄像机接口部ex303及LCD控制部ex302将由摄像部ex203所拍摄到的图像数据直接显示在显示部ex202。 
图像编码部ex312的结构具备本申请发明中所说明的图像编码装置,通过采用下述的编码方法进行压缩编码,将从摄像部ex203所提供的图像数据转换成编码图像数据并将其发到复用分离部ex308,上述编码方法使用于上述实施方式所示的图像编码装置中。另外,与此同时携带电话机ex115通过声音处理部ex305,将在通过摄像部ex203实行拍摄过程中由声音输入部ex205所集音的声音作为数字的 声音数据,发到复用分离部ex308。 
复用分离部ex308以指定方式对从图像编码部ex312所提供的编码图像数据和从声音处理部ex305所提供的声音数据进行复用,通过调制解调电路部ex306对其结果所得到的复用数据进行扩频处理,在通过发送接收电路部ex301施以数字模拟变换处理及频率变换处理之后,通过天线ex201进行发送。 
在数据通信方式时对与主页等所连接的动态图像文件数据进行接收的场合下,由调制解调电路部ex306对通过天线ex201从基站ex110所接收到的接收数据进行逆扩频处理,并将其结果所得到的复用数据发到复用分离部ex308。 
另外,为了对通过天线ex201所接收到的复用数据进行解码,复用分离部ex308通过对复用数据进行分离,而分成图像数据的比特流和声音数据的比特流,并通过同步总线ex313将该编码图像数据提供给图像解码部ex309,与此同时将该声音数据提供给声音处理部ex305。 
接着,图像解码部ex309的结构具备本申请发明中所说明的图像解码装置,通过采用与上述实施方式所示的编码方法对应的解码方法对图像数据的比特流进行解码,生成再生动态图像,并通过LCD控制部ex302将其提供到显示部ex202,据此例如显示与主页所连接的动态图像文件中包含的动态图像数据。与此同时,声音处理部ex305在将声音数据转换成模拟声音数据之后,将其提供给声音输出部ex208,据此例如再生与主页所连接的动态图像文件中包含的声音数据。 
再者,并不限于上述系统的示例,最近人们正在探讨通过卫星、地面波的数字广播,并且如图56所示在数字广播用的系统中也可以至少安装上述实施方式的图像编码装置或图像解码装置的任一个。具体地说,在发射台ex409中影像信息的比特流通过电波传送给通信或广播卫星ex410。收到该电波的广播卫星ex410发出广播用的电波, 并通过具有卫星广播接收设备的家庭天线ex406来接收该电波,采用电视(接收机)ex401或者机顶盒(STB)ex407等的装置对比特流进行解码并再生。另外,也可以在读取下述比特流并进行解码的再生装置ex403中安装上述实施方式所示的图像解码装置,上述比特流记录于作为记录媒体的CD和DVD等储存媒体ex402中。这种场合下,所再生的影像信号显示在监视器ex404上。另外,人们也考虑到这样的结构,即将图像解码装置安装在与有线电视用的电缆ex405或者卫星/地面波广播的天线ex406相连接的机顶盒ex407内,通过电视的监视器ex408对其进行再生。此时,也可以不是机顶盒,而在电视内装入图像解码装置。另外,在具有天线ex411的汽车ex412中也可以从卫星ex410或者从基站ex107等接收信号,并在汽车ex412所具有的汽车导航ex413等的显示装置上对动态图像进行再生。 
还有,也可以通过上述实施方式所示的图像编码装置对图像信号进行编码,记录在记录媒体中。作为具体示例,有将图像信号记录到DVD光盘ex421中的DVD记录器和记录到硬盘中的光盘记录器等的记录器ex420。还有,也可以记录到SD卡ex422中。如果记录器ex420具备上述实施方式所示的图像解码装置,则可以对记录于DVD光盘ex421和SD卡ex422中的图像信号进行再生,并通过监视器ex408加以显示。 
再者,人们考虑到汽车导航ex413的结构例如是在图55所示的结构中除去摄像部ex203、摄像机接口部ex303及图像编码部ex312的结构,同样对于也可以考虑计算机ex111和电视(接收机)ex401等。 
另外,人们考虑到上述携带电话ex114等的终端除具有编码器·解码器双方的发送接收型终端之外,还有只有编码器的发送终端、只有解码器的接收终端的3种组装形式。 
这样,可以将上述实施方式所示的动态图像编码方法或动态图像 解码方法使用于上面所述的任何设备·系统中,据此可以得到上述实施方式所说明的效果。 
另外,本发明并不限定于上述这种实施方式,而在不脱离本发明的范围内,可以进行各种的变形或者修改。 
产业上的可利用性 
本发明所涉及的图像编码装置作为设置于下述设备中的图像编码装置是有用处的,上述设备包括具备通信功能的个人计算机、PDA、数字广播的广播电台及携带电话机等。 
本发明所涉及的图像解码装置作为设置于下述设备中的图像解码装置是有用处的,上述设备包括具备通信功能的个人计算机、PDA、接收数字广播的STB及携带电话机等。 
本申请是中国专利申请03800471.2号的分案申请。