图像编码方法以及图像解码方法

文档序号:7548159阅读:174来源:国知局
专利名称:图像编码方法以及图像解码方法
技术领域
本发明的实施方式涉及图像编码方法以及图像解码方法。
背景技术
近年来,在ITU-T 和 IS0/IEC 中,作为 ITU-T Rec. H. 264 以及 IS0/IEC 14496-10(以下,称为H. 264),都建议了大幅度提高编码效率的运动图像编码方法。在H. 264中,预测处理、变换处理以及熵编码处理以矩形块单位(例如,16X16像素块单位、8X8像素块单位等)进行。在预测处理中,针对编码对象的矩形块(编码对象块),进行參照已经编码完毕的帧(參照帧)进行时间方向的预测的运动补偿。在这样的运动补偿中,需要对包括运动向量的运动信息进行编码并发送到解码侧,该运动向量是作为编码对象块与在參照帧内被參照的块之间的空间的位移信息的运动向量。另外,在使用多个參照帧进行运动补偿的情况下,需要在对运动信息进行编码时对參照帧号码也进行编码。因此,有时与运动信息以及參照 帧号码有关的编码量増大。作为在运动补偿预测中求出运动向量的方法的一例,有根据分配给已经编码完毕的块的运动向量导出应该分配给编码对象块的运动向量,井根据所导出的运动向量生成预测图像的直接模式(參照专利文献I以及专利文献2)。在直接模式中,因为不对运动向量进行编码,所以能够减少运动信息的编码量。直接模式例如被H. 264/AVC采用。专利文献专利文献I:日本专利第4020789号专利文献2:美国专利第7233621号

发明内容
在直接模式中,利用根据与编码对象块邻接的编码完毕的块的运动向量的中值计算运动向量的这ー固定的方法来预测生成编码对象块的运动向量。因此,运动向量计算的自由度低。为了提高计算运动向量的自由度,提出了从多个编码完毕的块中选择ー个并对编码对象块分配运动向量的方法。在该方法中,必须发送确定所选择的块的信息,以使解码侧能够确定所选择的编码完毕的块。因此,当从多个编码完毕块中选择ー个并决定应该分配给编码对象块的运动向量时,存在増加了与选择信息有关的编码量的问题。本实施方式是为了解决上述问题而作出的,目的在于提供一种编码效率高的图像编码以及图像解码方法。ー实施方式所涉及的图像编码方法包括第I步骤,从应用了交互预测的编码完毕的像素块中选择相对于编码对象块在空间上与上方向邻接的运动參照块和与左方向邻接的运动參照块;第2步骤,从所述运动參照块中选作可利用块,该可利用块是具有应用到所述编码对象块的运动信息的候选的像素块、且具有相互不同的运动信息;以及第3步骤,从所述可利用块中选择ー个选择块。该图像编码方法还具有第4步骤,使用所述选择块的运动信息生成所述编码对象块的预测图像;第5步骤,对所述预测图像与原图像之间的预测误差进行编码;以及第6步骤,根据所述可利用块的数量參照预先设定的代码表,对确定所述选择块的选择信息进行编码。
另ー实施方式所涉及的图像解码方法包括第I步骤,从应用了交互预测的解码完毕的像素块中,选择相对于解码对象块在空间上与上方向邻接的运动參照块和与左方向邻接的运动參照块;第2步骤,从所述运动參照块中选择可利用块,该可利用块是具有应用于所述解码对象块的运动信息的候选的像素块、且具有相互不同的运动信息;以及第3步骤,从所述可利用块中选择I个选择块。该图像解码方法还包括第4步骤,使用所述选择块的运动信息生成所述解码对象块的预测图像;第5步骤,对所述预测图像与原图像之间的预测误差进行解码;以及第6步骤,根据所述可利用块的数量參照预先设定的代码表,对确定所述选择块的选择信息进行解码。


图I是概略地示出第I实施方式的图像编码装置的框图。图2A是示出编码树单元的大小的一例的图。图2B是示出编码树单元的大小的另一例的图。图2C是示出编码树单元的大小的另ー其它例的图。图2D是示出编码树单元的大小的又一其它例的图。图2E是示出编码树单元的大小的又一其它例的图。图2F是示出编码树单元的大小的又一其它例的图。图3A是示出编码树单元的一例的图。图3B是示出将图3A的编码树单元四叉树分割了的情况的图。图3C是示出编码树单元的另一例的图。图3D是示出将图3C的编码树单元四叉树分割了的情况的图。图4是说明像素块的预测编码顺序的图。图5A是示出预测单元的一例的图。图5B是示出预测单元的另一例的图。图5C是示出预测单元的另ー其它例的图。图是示出预测单元的又一其它例的图。图5E是示出预测单元的又一其它例的图。图5F是示出预测单元的又一其它例的图。图5G是示出预测单元的又一其它例的图。图5H是示出预测单元的又一其它例的图。图51是示出预测单元的又一其它例的图。图6A是示出图I所示的运动信息存储器的一例的图。图6B是示出图I所示的运动信息存储器的另一例的图。图7是更详细地示出图I所示的可变长度编码部的框图。图8A是说明基于图I的图像编码装置的交互预测处理的一例的图。图SB是说明基于图I的图像编码装置的交互预测处理的另一例的图。
图9A是示出运动參照块的位置的一例的图。图9B是示出图9A的运动參照块相对于编码对象块的相对位置的图。图9C是示出运动參照块的位置的另一例的图。图9D是示出图9C的运动參照块相对于编码对象块的相对位置的图。图10是更详细地示出图I所示的预测部的图。图11是更详细地示出图10所示的第I预测部的图。 图12是更详细地示出图10所示的第2预测部的图。图13是说明可利用在基于图10以及图12所示的运动补偿部的运动补偿处理中的少数像素精度的插补处理的图。图14是示出图I所示的预测部的动作的一例的流程图。图15是示出本实施方式的语法结构的图。图16是示出本实施方式的序列參数设置语法的一例的图。图17是示出本实施方式的片段头语法的一例的图。图18是示出本实施方式的编码树单元语法的一例的图。图19是示出本实施方式的预测单元语法的一例的图。图20是示出本实施方式的编码树单元语法的另一例的图。
图21是示出第2实施方式的预测单元语法的一例的图。图22是概略地示出第3实施方式的图像解码装置的框图。图23是更详细地示出图22所示的编码串解码部的框图。图24是更详细地示出图22所示的预测部的框图。图25是更详细地示出图24所示的第I预测部的框图。图26是更详细地示出图24所示的第2预测部的框图。
具体实施例方式以下,根据需要,參照

实施方式所涉及的图像编码方法以及图像解码方法。另外,在以下的说明中,“图像”这ー用语能够适当地改读为“映像”、“像素”、“图像信号”、“图像数据”等用语。另外,在以下的实施方式中,将赋予同一编号的部分设为进行同样动作的部分,省略重复的说明。(第I实施方式)图I概略地示出第I实施方式的图像编码装置。如图I所示,图像编码装置具备图像编码部100、编码控制部150以及输出缓存器110。图I的图像编码装置可以通过LSI芯片等硬件实现,或者也可以通过使计算机执行图像编码程序来实现。以例如分割原图像得到的像素块单位对图像编码部100输入运动图像或静止图像的输入图像信号10。如在后详细说明的那样,图像编码部100对输入图像信号10进行压缩编码而生成编码数据14。所生成的编码数据14被临时保存于输出缓存器110,并在编码控制部150所管理的输出定时向未图示的存储系统(存储介质)或传输系统(通信线路)送出。编码控制部150控制发生编码量的反馈控制、量化控制、预测模式控制以及熵编码控制这样的图像编码部100的编码处理的全部。具体而言,编码控制部150将编码控制信息50提供给图像编码部100,从图像编码部100适当地接收反馈信息51。编码控制信息50包括预测信息、运动信息18以及量化參数信息等。预测信息包括预测模式信息以及块大小信息。运动信息18包括运动向量、參照帧号码以及预测方向(单方向预测、双方向预测)。量化參数信息包括量化宽度(量化步骤大小)等量化參数以及量化矩阵。反馈信息51包括基于图像编码部100的发生编码量,例如,在决定量化參数时使用。图像编码部100以像素块(例如、编码树単元、微块、子块、I像素等)为单位对输入图像信号10进行编码。因此,输入图像信号10被以分割了原图像的像素块单位依次输入到图像编码部100。在本实施方式中,对编码的处理单位为编码树单元的例子进行说明,将成为编码的对象的编码树単元称作编码对象块。另外,编码的处理单位不限于编码树単元的例子,也可以是微块、子块或I像素,在以下的说明中,能够将编码树单元改读为微块、子块或I像素。另外,在本实施方式中,将包括编码对象块的图像帧、即编码对象的图像帧称作编码对象帧。编码树单元典型地为图2A所示的128X128像素块、图2B所示的64X64像素块、 图2C所示的32X32像素块、图2D所示的16X 16像素块、图2E所示的8X8像素块、或图2F所示的4X4像素块。另外,编码树单元不限于图2A至图2F所示的像素块的例子,既可以是大于128X128像素块的像素块,也可以是小于4X4像素块的像素块。另外,编码树单元的形状不限于图2A至图2F所示的正方形的例子,也可以以32 X 16像素块这样的长方形状的像素块(NXM像素块)的方式设定为任意形状。图3A至图3D示出编码树单元的具体例。在图3A中,示出64像素X64像素的编码树单元CU”在本实施方式中,将编码树单元的大小定义为2N像素X2N像素。该N表示成为基准的编码树单元的大小。在图3A的编码树单元CUtl中,N=32。编码树单元CUtl具有四叉树结构,能够分割为N像素X N像素的4个像素块。在分割编码树単元的情况下,对4个像素块按照Z扫描顺序赋予索引。图3B示出四叉树分割了图3A的64X64像素块的例子。图3B所示的O至3的号码表示Z扫描的顺序。进而,在编码树单元中,能够对四叉树分割而得到的像素块递归地进行四叉树分割。在本实施方式中,以Depth定义分割的深度。图3A的编码树单元CU。是Depth=O的编码树单元。图3C表示D印th=l的编码树单元OT115该编码树单元OT1的大小为32像素X 32像素(N=16)。在对编码树单元CU1-行四叉树分割的情况下,如图3D所示,分割为16像素X 16像素的4个像素块。同样地,Depth=2的编码树单元(未图示)的大小为16像素X 16像素(N=8),能够分割为8像素X8像素的4个像素块。由此,分割的深度D印th越大,编码树单元的大小变得越小。将这样的编码树単元中的最大的単元称作最大编码树単元,以该单位依次输入输入图像信号10并进行编码。在典型的例子中,设最大编码树単元的大小为64像素X64像素(N=32)、最小编码树単元的大小为8像素X8像素(N=4),递归地对编码树单元进行四叉树分割。最大编码树単元的大小以及最小编码树単元的大小只要满足最大编码树単元的大小大于等于最小编码树単元的大小的条件,则可以是任意的大小。另外,最大编码树単元的大小以及最小编码树単元的大小也可以按序列、图片、片段、以及片段内的每个区域变更。另外,也可以根据I片段、B片段、P片段这样的片段类型而适当地切換最大编码树单元以及最小编码树单元的大小。另外,针对编码对象帧内的各编码树単元的编码处理也可以按照任意的顺序来执行。在本实施方式中,为了简化说明,如图4所示,从编码对象帧的左上的编码树单元向右下的编码树単元针对每一行、即按照光栅扫描顺序执行编码处理。本实施方式的图像编码部100能够将称作预测单元的像素块作为单位,来进行后述的预测处理。典型地,预测单元是与编码树单元相同的像素块、或者分割编码树単元得到的像素块。另外,预测单元也可以是与编码树単元不同的形状的像素块。另外,预测单元也可以是大小比编码树单元大的像素块。图5A至图51分别示出预测单元的具体例。在图5A至图51中,像素块rox(x=0,1,2,3)表示预测单元。图5A示出预测单元和编码树単元大小相同的例子。在这种情况下,在编码树单元内存在I个预测单元PUc^ 图5C中,编码树单元内存在2个预测单元PUtl.PU1。在图5B中,预测单元PUc^PU1是将编码树单元在纵向上2分割得到的像素块,在图5C中,预测单元PUc^PU1是将编码树单元横向上2分割得到的像素块。图示出预测单元是将编码树单元4分割得到的像素块的例子。另外,如图5E、图5F以及图5G所示,编码树单元内存在的多个预测单元的块大小也可以不同。另外,如图5H以及图51所示,预测单元也可以是通过任意的线段或者圆弧等曲线分割编码树单元而得到的形状的像素块。接着,更详细地说明图I所示的图像编码部100。图I的图像编码部100具备预测部101、减法器102、变换·量化部103、可变长度编码部104、逆量化 逆变换部105、加算器106、帧存储器107、运动信息存储器108以及可利用块取得部109。在图像编码部100中,将输入图像信号10输入预测部101以及减法器102。减法器102接收输入图像信号10,并且从后述的预测部101接收预测图像信号11。減法器102计算输入图像信号10与预测图像信号11的差分,生成预测误差图像信号12。变换·量化部103从减法器102接收预测误差图像信号12,对接收的预测误差图像信号12实施变换处理,生成变换系数。变换处理,例如,是离散余弦变换(DCT = DiscreteCosine Transform)等正交变换。在另ー实施方式中,变换·量化部103也可以替代离散余弦变换而利用小波变换以及独立分量解析等方法来生成变换系数。接着,变换·量化部103根据由编码控制部150提供的量化參数对所生成的变换系数进行量化。被量化后的变换系数(变换系数信息)13输出给可变长度编码部104以及逆量化·逆变换部105。逆量化 逆变换部105按照由编码控制部150提供的量化參数、即与变换 量化部103相同的量化參数,对量化后的变换系数13进行逆量化。接着,逆量化 逆变换部105对逆量化后的变换系数实施逆变换,生成解码预测误差信号15。基于逆量化·逆变换部105的逆变换处理与基于变换·量化部103的变换处理的逆变换处理一致。例如,如果基于变换·量化部103的变换处理是DCT,则基于逆量化·逆变换部105的逆变换处理是逆离散余弦变换(IDCT: Inverse Discrete Cosine Transform),另外,如果基于变换 量化部103的变换处理是小波变换,则基于逆量化·逆变换部105的逆变换处理是逆小波变换。
加法器106从逆量化·逆变换部105接收解码预测误差信号15,另外,从预测部101接收预测图像信号11。加法器106将解码预测误差信号15和预测图像信号11相加而生成局部解码图像信号16。所生成的局部解码图像信号16在帧存储器107中被保存为參照图像信号17。帧存储器107所保存的參照图像信号17,在对之后的编码对象块进行编码时,由预测部101读出并參照。预测部101从帧存储器107接收參照图像信号17并且从后述的可利用块取得部109接收可利用块信息20。另外,预测部101从后述的运动信息存储器108接收參照运动信息19。预测部101根据參照图像信号17、參照运动信息19以及可利用块信息20生成预测图像信号11、运动信息18以及选择块信息21以及预测切换信息22。预测图像信号11被送给减法器102以及加法器106。运动信息18被送给可变长度编码部104,并且运动信息18被保存于运动信息存储器108,以用于针对其后的编码对象块的预测处理。另外,选择块信息21以及预测切换信息22被送给可变长度编码部104。关于预测部101在后详细说明。运动信息存储器108中临时保存运动信息18并作为參照运动信息19。图6A示出 运动信息存储器108的一例。如图6A所示,运动信息存储器108以帧单位保持有參照运动信息19,參照运动信息19形成有运动信息帧25。图6A示出编码对象帧的运动信息帧25的一例,将编码完毕的编码树单元以及预测单元的运动信息18保存为參照运动信息19。另外,图6B示出运动信息存储器108的另一例。在图6B中,仅保持有与编码对象块邻接的像素块的參照运动信息19。像这样地仅保持与编码对象块邻接的像素块的參照运动信息19的情况下,比图6A所示那样的保持全部的编码完毕的像素块的參照运动信息19的情况现比,能够以少的存储器量进行保持。參照运动信息19以规定的区域单位(例如、4X4像素块单位)保持在运动信息帧25内。參照运动信息19还具有表示该区域是通过后述的交互预测编码了还是通过后述的内预测编码了的信息。另外,在编码树単元(或预测单元)如H. 264中规定的跳跃模式(skipmode)、直接模式(direct mode)那样不对运动向量的值进行编码而是使用根据编码完毕的区域预测的运动信息来交互预测的情况下,将该编码树单元(或预测单元)的运动信息保持为參照运动信息19。另外,运动信息存储器108不限于以4X4像素块单位保持參照运动信息19的例子,也可以以其它像素块单位来保持參照运动信息19。例如,保持參照运动信息19的像素块单位既可以是I像素,也可以是2X2像素块。另外,保持參照运动信息19的像素块的形状不限于正方形状的例子,能够设为任意形状。图I的可变长度编码部104从变换·量化部103接收变换系数信息13,从预测部101接收运动信息18、选择块信息21以及预测切换信息22,从编码控制部150接收预测信息以及量化參数等编码參数,另外,从可利用块取得部109接收可利用块信息20。可变长度编码部104分别对变换系数信息13、运动信息18、选择块信息21、预测切換信息22、以及编码參数进行熵编码(例如,等长编码、哈夫曼编码或算木编码等),并将其多路复用而生成编码数据14。具体而言,如图7所示,可变长度编码部104具备參数编码部701、变换系数编码部702、选择块信息·预测切換信息编码部703、运动信息编码部704以及多路复用部705。參数编码部701对从编码控制部150接收的编码參数进行编码而生成编码数据14A。变换系数编码部702对从变换·量化部103接收的变换系数信息13进行编码而生成编码数据14B。进而,选择块信息·预测切換信息编码部703根据从可利用块取得部109接收的可利用块信息20,对从预测部101接收的选择块信息21以及预测切换信息22进行编码而生成编码数据14C。运动信息编码部704根据从预测部101接收的预测切换信息22,对从预测部101接收的运动信息18进行编码而生成编码数据14D。多路复用部705对编码数据14A、14B、14C、14D进行多路复用而生成编码数据14。所生成的编码数据14包括选择块信息21、预测切換信息22以及预测信息,并且包括与变换系数有关的信息、与量化有关的信息等解码时所需的所有的參数。编码数据14被临时保存于输出缓存器110,之后被送给未图不的存储系统或传输系统。另外,当后述的第I预测部1001 (图10所示)执行预测处理的情况下,不使用运 动信息编码部704。另外,当后述的第2预测部1002 (图10所示)执行预测处理的情况下,不使用选择块信息·预测切換信息编码部703。接着,对图像编码部100的预测处理进行说明。在图I的图像编码部100中,准备有多个预测模式,在各预测模式中,预测图像信号11的生成方法以及运动补偿块大小相互不同。作为预测部101生成预测图像信号11的方法,具体而言,大致划分为使用编码对象帧(或字段)的參照图像信号17生成预测图像的内预测(帧内预测);以及使用I个以上的编码完毕的參照帧(或、參照字段)的參照图像信号17生成预测图像的交互预测(帧间预测)。预测部101选择性地切換内预测以及交互预测,生成编码对象块的预测图像信号11。图8A示出交互预测的一例。关于交互预测,典型地以预测単元的単位来执行,在预测单元単位中可能具有不同的运动信息18。在交互预测中,如图8A所示,使用根据运动信息18所包含的运动向量而从块23在空间上位移了的位置的块24的參照图像信号17,生成预测图像信号11,该块23是已经编码完成的參照帧(例如,I帧前的编码完毕的帧)内的像素块且与编码对象的预测单元位置相同。即在预测图像信号11的生成中,使用利用编码对象块的位置(坐标)以及运动信息18所包含的运动向量确定的參照帧内的块24的參照图像信号17。在交互预测中,能够进行少数像素精度(例如,1/2像素精度或1/4像素精度)的运动补偿,通过对參照图像信号17进行滤波处理,生成插补像素的值。例如,在H. 264中,能够对亮度信号进行到1/4像素精度为止的插补处理。在进行1/4像素精度的运动补偿的情况下,运动信息18的信息量成为整数像素精度的4倍。该插补处理除了在H. 264中规定的滤波之外,还能够通过使用任意的滤波来执行。另外,在交互预测中,不限于图8A所示的使用I帧前的參照帧的例子,如图8B所示,也可以使用任意的编码完毕的參照帧。当保持有时间位置不同的多个參照帧的參照图像信号17的情况下,利用參照帧号码来表示示出根据哪个时间位置的參照图像信号17生成了预测图像信号11的信息。參照帧号码包含于运动信息18。參照帧号码能够以区域单位(图片、块单位等)进行变更。即,能够针对每个预测单元使用不同的參照帧。作为一例,当预测中使用了编码完毕的I帧前的參照帧的情况下,该区域的參照帧号码被设定为0,当预测中使用了编码完毕的2帧前的參照帧的情况下,该区域的參照帧号码被设定为I。作为其它例,当帧存储器107中保持有I帧量的參照图像信号17 (保持的參照帧的数量仅为I)情况下,參照帧号码总是被设定为O。进而,在交互预测 中,能够从预先准备的多个预测単元的大小中选择适于编码对象块的大小。例如,能够针对图5A至图51所示的将编码树单元分割而得到的每个预测单元进行运动补偿。如上所述的那样,交互预测所使用的编码对象帧内的编码完毕的像素块(例如、4X4像素块)的运动信息18被保持为參照运动信息19,所以能够按照输入图像信号10的局部的性质,利用最佳的运动补偿块的形状以及运动向量、參照帧号码。另外,编码树単元以及预测单元能够任意地组合。当编码树单元为64X64像素块的情况下,能够针对分割64X64像素块而得到的4个编码树单元(32 X 32像素块)的每ー个,进ー步地将编码树单元分割为4个,从而能够阶段性地利用64X64像素块到16 X 16像素块。同样地,能够阶层性地利用64X64像素块到8X8像素块。在此,如果预测単元是将编码树单元分割为4个而得到的,则能够执行从64X64像素块到4X4像素块为止的阶层性的运动补偿处理。接着,对运动參照块以及可利用块进行说明。运动參照块是按照图I的图像编码装置以及后述的图像解码装置的双方确定的方法从编码对象帧以及參照帧内的编码完毕的块中选择的。在本实施方式中,如图9A所示,从编码对象帧的编码完毕的块中,将相对于编码对象块X在左方向邻接的编码完毕的块A、以及在上方向邻接的编码完毕的块B选择为运动參照块。这些块A以及块B是根据编码对象块内的左上像素,利用图9B所示的相对位置确定的像素a、b各自所属的块。即块A是包括与编码对象块内的左上像素在左方向邻接的像素a的块,块B是包括与编码对象块内的左上像素在上方向邻接的像素b的块。可利用块是通过可利用块取得部109从运动參照块中选定的。可利用块是运动參照块中的应用了交互预测的块。其中,当存在多个应用了交互预测且具有相同的运动信息的运动參照块的情况下,将这些运动參照块中的I个选定为可利用块。由此,当选定了多个可利用块的情况下,这些可利用块具有相互不同的运动向量。当从运动參照块中选定了可利用块时,可利用块取得部109输出表示所选择的可利用块的可利用块信息20。作为一例,在如图9A所示地运动參照块为与编码对象块邻接的块A以及块B的情况下,可利用块取得部109參照块A以及块B的參照运动信息19来判定块A以及块B是否是可利用快,并输出表示判定结果的可利用块信息20。另外,运动參照块的数量不限于图9A所示的2个的例子,也可以是3个以上。作为一例,如图9C所示,使用除了块A以及块B以外的编码完毕的邻接块C以及D作为运动參照块。在图9D中示出编码对象块X内的左上像素与图9D的块A、B、C、D各自所包含的像素a、b、C、d的相对位置的一例。在此,编码对象块示出为NXN像素块。块C包括从编码对象块X内的左上像素向右方向位移了N像素并且向上方向位移了 I像素的位置的像素c,块D包括从编码对象块X内的左上像素向左方向位移了 I像素并且向上方向位移了 I像素的位置的像素d。在本实施方式中,说明了将图9A所示的与编码对象块邻接的块A以及块B选择为运动參照块的例子。接着,详细地说明本实施方式的预测部101。
如图10所示,预测部101具备第I预测部1001、第2预测部1002以及预测方法切换开关1003。预测部101选择性地切换这些第I预测部1001以及第2预测部1002,生成预测图像信号11。第I预测部1001按照第I预测方式生成预测图像信号11A。具体而言,第I预测部1001从由可利用块信息20表示的可利用块中选择预测中使用的块(选择块),使用选择块的參照运动信息19生成预测图像信号11A。另外,第I预测部1001输出与选择块有关的信息(选择块信息)21。选择块信息(也称作选择信息)21包括可利用块的数量以及用于识别选择块的信息。选择块信息21根据由可利用块信息20表示的可利用块的数量使用预先设定的代码表,通过选择块信息·预测切換信息编码部703进行编码。图11更详细地示出第I预测部1001。如图11所示,第I预测部1001具备运动信息选择部1101以及运动补偿部1104。第I预测部1001输入可利用块信息20、參照运动信息19以及參照图像信号17,输出预测图像信号11A、运动信息18以及选择块信息21。
如图11所示,运动信息选择部1101具备运动信息取得部1102以及运动信息切換开关1103。对运动信息取得部1102提供可利用块信息20以及运动參照块的參照运动信息19。运动信息取得部1102生成包括运动參照块A的參照运动信息19以及可利用块信息20的运动信息18A、以及包括运动參照块B的參照运动信息19以及可利用块信息20的运动信息18B。在本实施方式中,如图9A所示,运动參照块A是与编码对象块在空间上在左方向邻接的块,即是在编码对象帧中与编码对象块的左方向邻接的块。另外,运动參照块B是与编码对象块在空间上在上方向邻接的块,即在编码对象帧中与编码对象块的上方向邻接的块。运动信息取得部1102输出与可利用块的数量一致的数量的运动信息。当如本实施方式那样设定2个运动參照块A以及B的情况下,最大输出2个运动信息。例如,如果将运动參照块A以及B的双方选定为可利用块,则输出运动信息18A以及18B,如果未将运动參照块A以及B的双方都选定为可利用块则不输出运动信息。另外,当如图9C所示的那样设定4个运动參照块的情况下,根据可利用块的数量最大输出4个运动信息。运动信息切换开关1103从可利用块中选择I个选择块,从而将运动信息18A以及18B的某一方作为运动信息18而送给运动补偿部1104。进而,运动信息切换开关1103输出表示将哪个可利用块选择为选择块了的选择块信息21。运动信息切换开关1103,例如,将通过下述式(I)所示的成本式而导出的编码成本为最小的可利用块选择为选择块。[式I]J-D+λ XR(I)在此,J表不编码成本,D表不编码失真,该编码失真表不输入图像イ目号10与參照图像信号17之间的平方误差和。另外,R表示通过虚拟编码而估算的编码量,λ表示由量化宽度等规定的拉格朗日待定系数。既可以替代式(I ),而仅使用编码量R或编码失真D来计算编码成本J,也可以使用对编码量R或编码失真D进行近似而得到的值来制作式(I)的成本函数。进而,编码失真D不限于平方误差和,也可以是预测误差的绝对值和(SAD:SumSof absolute difference)。编码量R也可以仅使用与运动信息有关的编码量。另外,不限于将编码成本为最小的可利用块选择为选择块的例子,也可以将编码成本具有最小的值以上的某个范围内的值的I个可利用块选择为选择块。
运动补偿部1104根据运动信息选择部1101所选择的选择块的參照运动信息(或參照运动信息的组),导出作为预测图像信号而取出參照图像信号17的像素块的位置。对运动补偿部1104输入了參照运动信息的组的情况下,运动补偿部1104将作为预测图像信号而取出參照图像信号17的像素块分割为小像素块(例如、4X4像素块),并且,对这些小像素块的各个应用对应的參照运动信息,从而根据參照图像信号17取得预测图像信号11A。例如如图8A所示,取得预测图像信号IlA的块的位置为根据參照运动信息19所包含的运动向量从小像素块在空间方向位移了的位置。由此,运动补偿部1104使用来自运动信息选择部1101的參照运动信息(參照运动信息19A以及19B的一方)以及来自帧存储器107的參照图像信号17,生成预测图像信号IlA0其中,当I个可利用块也没有选定的情况下,在第I预测部1001不进行预测处理,而仅在接下来说明的第2预测部1002中进行预测处理。图10的第2预测部1002按照第2预测方式,生成编码对象块的预测图像信号11B,该第2预测方式根据输入图像信号10以及參照图像信号17导出运动信息18并进行运动补偿。如图12所示,第2预测部1002具备使用输入图像信号10以及參照图像信号17生 成运动信息18的运动信息取得部1201 ;以及使用參照图像信号17以及运动信息18生成预测图像信号IlB的运动补偿部1202。该运动信息取得部1201根据输入图像信号10以及參照图像信号17,例如通过块匹配求出包括应该分配给编码对象块的运动向量以及參照帧号码的运动信息18。作为匹配的评价基准,能够使用针对每个像素累积输入图像信号10与匹配后的插补图像的差分而得到的值。在预测部101中,通过图10的预测方法切换开关1003选择来自第I预测部1001的预测图像信号IlA以及来自第2预测部1002的预测图像信号IlB的某一方。例如,预测方法切换开关1003针对预测图像信号IlA以及IlB的各个,使用输入图像信号10,按照例如式(I)求出编码成本,以编码成本更小的方式选择预测图像信号IlA以及IlB的某一方,并作为预测图像信号11而输出。进而,预测方法切换开关1003还将表示预测图像信号11是通过第I预测部1001以及第2预测部1002中的哪ー个生成的预测切換信息22、与生成预测图像信号11时所使用的运动信息18—起输出。另外,当选择了预测图像信号IlA的情况下,预测方法切换开关1003还输出选择块信息21。基于运动补偿部1104以及1202的运动补偿处理能够使用与H. 264的运动补偿处理相同的处理。在此,作为一例,具体地说明1/4像素精度的插补方法。在1/4像素精度的插补中,当运动向量的各分量是4的倍数时,运动向量指示整数像素位置。除此以外的情况下,运动向量指示与分数精度的插补位置对应的预测位置。[式2]x_pos = X+ (mv_x/4)y_pos = y+(mv_y/4) (2)在此,X以及y示出表示预测对象块的开头位置(例如、左上顶点)的垂直以及水平方向的索引,x_pos以及y_pos表示与參照图像信号17的对应的预测位置。(mv_x, mv_y)表示具有1/4像素精度的运动向量。接着,针对分割得到的像素位置,通过參照图像信号17的对应的像素位置的填补或插补处理而生成预测像素。图13示出H. 264的预测像素生成的一例。在图13中以大文字的拉丁字母示出的正方形(带斜线的正方形)表示整数位置的像素,以带网格线示出的正方形示出1/2像素位置的插补像素。另外,以涂白表示的正方形示出与1/4像素位置对应的插补像素。例如,在图13中,通过下述式3计算与拉丁字母b、h的位置对应的1/2像素的插补处理。[式3]b = (E-5XF+20XG+20XH_5X I+J+16) >> 5h = (A-5XC+20XG+20XM-5XR-T+16) >> 5(3)在此,式3以及下述式4所示的拉丁字母(例如,b,h,Cl等)在图13中表示赋予了相同的拉丁字母的像素的像素值。另外,“》”表示右位移运算,“>>5”相当于除以32。即,1/2像素位置的插补像素使用6抽头FIR (Finite Impulse Response)滤波器(抽头系数(1,-5,20,20,-5,1)/32)来计算。另外,在图13中与拉丁字母a、d的位置对应的1/4像素的插补处理通过下述式4 计算。[式4]a = (G+b+1) >> Id = (G+h+1) >> I(4)由此,1/4像素位置的插补像素使用2抽头的平均值滤波器(抽头系数(1/2,1/2))计算。与存在于4个整数像素位置的中间的拉丁字母j对应的1/2像素的插补处理使用垂直方向6抽头以及水平方向6抽头的两方向生成。对所说明的以外的像素位置也利用同样的方法生成插补像素值。另外,插补处理不限于式3以及式4的例子,也可以使用其它的插补系数生成。另夕卜,插补系数既可以使用从编码控制部150提供的固定的值,或者,也可以根据上述的编码成本而针对每个帧优化插补系数,并使用优化后的插补系数生成。接着,參照图14说明预测部101的动作。在图14的步骤S1401中,判定对与编码对象块邻接的运动參照块(例如,图9A的块A以及块B)应用了的预测方法是内预测还是交互预测,或者判定这些运动參照块是否为画面外或编码前的区域这样的不可參照块。因为应用了交互预测的块具有參照运动信息19,所以能够通过參照运动信息19的有无来判定是否是应用了交互预测的块。在步骤S1401中,当块A以及B的双方都应用了内预测或者不可參照的情况下,进入步骤S1405,在这种情况下,I个可利用块也不选定。当未选定可利用块的情况下,不能执行基于第I预测部101的预测处理,进入步骤S1413。在步骤S1413中,第2预测部1002使用通过在H. 264等中规定的块匹配等导出的运动信息18进行运动补偿处理。当未选定可利用块的情况下,仅使用第2预测部1002,所以不需要对作为切換第I预测部1001以及第2预测部1002的信息的预测切換信息(merge_flag) 22、以及选择块信息(merge_left_flag) 21进行编码。在步骤S1401中,当运动參照块A以及B的某一方应用了交互预测的情况下,进入步骤S1404。在步骤S1404中,将应用了交互预测的一方的运动參照块选定为可利用块。将该可利用块设为块Y (Y是A或B)。在步骤S1407中,判定是否利用第I预测部1001进行运动补偿。具体而言,使用预测切換信息(merge_flag)22来切换是针对编码对象块使用块Y的參照运动信息19进行运动补偿,还是使用第2预测部1002进行运动补偿。当预测切換信息22表示使用第I预测部1001 (merge_flag为TRUE)的情况下,进入步骤S1412。在步骤S1412中,第I预测部1001使用块Y的參照运动信息19进行运动补偿处理。在步骤S1407中,当预测切换信息22表示使用第2预测部1002 (merge_flag为FALSE)的情况下,进入步骤S1413。在步骤S1413中,如上述所述,第2预测部1002进行运动补偿。作为一例,在该切换中,计算式(I)所示的编码成本,选择编码成本小的一方。在步骤S1401中,当运动參照块A以及B的双方都应用了交互预测的情况下,进入步骤S1402。在步骤S1402中,判定运动參照块A以及块B的參照运动信息19是否相同。当运动參照块A以及块B的參照运动信息19相同的情况下,进入步骤S1404。在步骤S1404中,将运动參照块A以及块B中的一方选定为可利用块Y。之后的处理如上述那样。在步骤S1402中,当运动參照块A以及块B的參照运动信息19不同的情况下,进入步骤S1403。在这种情况下,在步骤S1403中选定2个可利用块。接着,在步骤S1406中 判定是否使用第I预测部1002进行运动补偿。具体而言,使用预测切換信息(merge_flag)22来切换是使用第I预测部1002进行运动补偿,还是使用第2预测部1002进行运动补偿。当预测切换信息22表示使用第2预测部1002 (merge_flag为FALSE)的情况下,进入步骤S1413,第2预测部1002进行运动补偿。在步骤S1406中,当预测切换信息22表示使用第I预测部1001 (merge_flag为TRUE)的情况下,进入步骤S1409。在步骤S1409中,判定在第I预测部1001的预测处理中是否使用运动參照块A。具体而言,根据选择块信息(merge_left_flag) 21来判定是使用运动參照块A还是使用运动參照块B。作为一例,在该切换中,计算式(I)所示的编码成本,并选择编码成本小的一方。在使用运动參照块A (merge_left_flag为TRUE)的情况下,进入步骤S1410。在步骤S1410中,第I预测部1002将运动參照块A的參照运动信息19作为编码对象块的运动信息18使用并进行运动补偿处理。另ー方面,当使用运动參照块B (merge_left_flag为FALSE)的情况下,进入步骤S1411。在步骤S1411中,第I预测部1001将运动參照块B的參照运动信息19作为编码对象块的运动信息18使用并进行运动补偿处理。由此,通过根据可利用块的数量切换预测方法,并且有无切换预测切換信息以及选择块信息的编码,能够以少的编码量实现高效的预测方法。接着,对图I的图像编码装置所利用的语法进行说明。语法表示图像编码装置对运动图像数据进行编码时的编码数据(例如,图I的编码数据14)的结构。对编码数据进行解码时,图像解码装置參照相同的语法结构进行语法解析。图15示出图I的图像编码装置所利用的语法1500的一例。语法1500包括高级语法1501、片段级语法1502以及编码树级语法1503这3个部分。高级语法1501包括比片段更上位的层的语法信息。所谓片段是指包含于帧或字段的矩形区域或者连续区域。片段级语法1502包括用于对各片段进行解码所需的信息。编码树级语法1503包括对各编码树单元进行解码所需要的信息。这些部分各自还包括更详细的语法。高级语法1501包括序列參数设置语法1504以及图片參数设置语法1505等那样的序列以及图片级的语法。片段级语法1502包括片段头语法1506以及片段数据语法1507等。编码树级语法1503包括编码树单元语法1508以及预测单元语法1509等。编码树单元语法1508能够具有四叉树结构。具体而言,作为编码树单元语法1508的语法要素,能够进一歩地递归调出编码树单元语法1508。即能够通过四叉树对I个编码树单元进行细化。另外,编码树单元语法1508内包含有转换单元语法1510以及预测单元语法1509。转换单元语法1510记述有与逆正交变换以及量化等有关的信息,并在四叉树的最末端的各编码树单元语法1508中被调出。图16示出本实施方式的序列參数设置语法1504的一例。图16所示的inter_merge_flag,例如是表示在该序列中本实施方式的第I预测方式是有效还是无效的语法要素。inter_merge_flag为O的情况下,inter_merge_flag表示在片段内第I预测方式无效。在这种情况下,仅第2预测方式有效。因此,不需要对之后的merge_flag以及merge_left_flag进行编码。作为一例,当inter_merge_flag为I的情况下,在片段内全域内本实施方式的第I预测方式有效。
另外,在另一例中,如图17所示,inter_merge_flag也可以包含于片段头语法1506中。在这种情况下,inter_merge_flag成为表示在该片段中第I预测方式是有效还是无效的语法要素。图18表示编码树单元语法1508的一例。图18所示的split_coding_unit_flag是表示是否将编码树单元4分割的标记。split_coding_unit_flag为I的情况下,split_coding_unit_flag表示将编码树单元4分割。在这种情况下,递归地调出将编码树单元4分割得到的编码树単元的语法。图18的X0、Xly0、yl是为了表示4分割后的编码树単元的位置而使用的參数,splitCodingUnitSize表示4分割后的编码树单元的大小。split_coding_unit_flag 为 O 的情况下,split_coding_unit_flag 表示不对编码树单元4分割。NumMergeCandidates表示在图14等中导出的可利用块的数量。在存在可利用块(NumMergeCandidates>0 )的情况下,对表示预测切换信息22的merge_flag进行编码。
merge_flag在其值为I的情况下,表示使用第I预测方式,在其值为O的情况下,表示使用第2预测方式。当merge_flag为I (TRUE)且存在2个可利用块(NumMergeCandidates>l)的情况下,对表示将运动參照块A以及运动參照块B的哪ー个选择为选择块的选择块信息21即merge_left_flag进行编码。当merge_flag为O的情况下,使用第2预测方式,所以调出预测单元语法,对编码树单元中的预测信息(运动信息18等)进行编码。当merge_f lag为I的情况下,不需要对与编码树单元中的预测有关的參数(运动信息18、预测单元分割信息等)进行编码。另外,如图19所示,预测单元语法也可以包括merge_flag以及merge_left_flag,在此情况下,merge_flag以及merge_left_flag也具有与图18的merge_f lag以及merge_left_flag相同的含义。另外,当如图9C所示地运动參照块数为3以上、可利用块的数量也为3以上的情况下,将选择块信息(merge_left_flag)不设为标记而设为具有多个符号的信息即可。进而,也可以按照编码树単元(编码对象块)的大小来进行第I预测方式有效还是无效的切換。图20示出根据编码树单元的大小来切換第I预测方式有效还是无效的编码树语法的一例。图20的merge_available_size ()是输出针对姆个编码对象块大小(currCodingUnitSize)的第I预测方式的有效/无效的函数,即根据编码对象块的大小而表示是否对预测切换信息(merge_flag)进行编码的模式编码信息。merge_available_size()为I的情况下,第I预测方式为有效。另ー方面,merge_available_size ()为O的情况下,第I预测方式为无效,仅第2预测方式有效。此时,不需要对merge_flag以及merge_left_flag进行编码。merge_available_size ()中的切换的信息也可以通过序列參数设置语法、图片參数设置语法、片段头语法而预先编码。另外,也可以保持与后述的解码装置相同的切换信息。在另ー实施方式中,也可以替代将merge_available_size ()设为O,而将图18所不的NumMergeCandidates总是设为O。如果使用图20的编码树语法,则能够在确定的大小的编码树単元中将第I预测方式设为无效,从而能够削减预测切換信息以及选择块信息的编码量。如以上所述,第I实施方式的图像编码装置从多个运动參照块中选择可利用块,根据所选择的可利用块的数量切換有无预测切換信息以及选择块信息的编码,从而能够削减编码量,并且能够实现高的编码效率。进而,在第I实施方式的图像编码装置中,根据编码对象块的大小来决定是否使用第I预测方式,并且在决定为不使用第I预测方式的情况下,不需要对预测切換信息以及选择块信息进行编码,所以能够削减编码量。 (第2实施方式)接着,说明第2实施方式的图像编码装置。第2实施方式的图像编码装置具有与图I所示的第I实施方式相同的结构。在第2实施方式中,主要对与第I实施方式不同的部分以及动作进行说明。在第I实施方式中,针对编码对象的编码树单元应用第I预测方式,与此相对,在第2实施方式中,针对编码对象的预测单元应用第I预测方式。在本实施方式中,图9A所示的块X成为编码对象的预测单元,块A以及块B成为运动參照块。此外,关于可利用块以及选择块,在第I实施方式的与第I预测方式有关的记载中,将编码树单元置換为预测单元即可。图21示出第2实施方式的预测单元语法1509的一例。图21所示的NumPuParts(inter_partitioning_idc)是规定预测单元的分割方法的索引。具体而言,NumPuParts(inter_partitioning_idc)表示如图5A至图51所示地分割了的预测单元的数量。在图5B的例子中,NumPuParts为2,在图的例子中,NumPuParts为4。图21的变量i是所分割的预测单元的索引。图21的NumMergeCandidates是预测单元i中的可利用块的数量。图21的merge_flag[i]以及merge_left_flag[i]分别表示预测单元i中的预测切换信息以及选择块信息,其导出方法与第I实施方式相同。如以上所述,在预测单元中应用第I预测方式的第2实施方式的图像编码装置中,也能获得与第I实施方式相同的效果。(第3实施方式)图22概略地示出第3实施方式的图像解码装置。如图22所示,该图像解码装置具备图像解码部2200、解码控制部2250以及输出缓存器2208。第3实施方式的图像解码装置与第I实施方式的图像编码装置对应。即基于图22的图像解码装置的解码处理与基于图I的图像编码处理的编码处理具有互补关系。图22的图像解码装置既可以通过LSI芯片等硬件来实现,或者,也可以通过使计算机执行图像解码程序来实现。图22的图像解码装置具备图像解码部2200、解码控制部2250以及输出缓存器2208。该图像解码部2200具有编码串解码部2201、逆量化·逆变换部2202、加算器2203、帧存储器2204、预测部2205、运动信息存储器2206以及可利用块取得部2207。在图像解码部2200中,来自未图示的存储系统统或传输系统的编码数据30被提供给编码串解码部
2201。该编码数据30,例如,对应于以被多路复用的状态从图I的图像编码装置送出的编码数据14。图22的图像解码装置选择性地切换如下的预测方式如图9A所示地将与解码对象块X邻接的块A以及块B所具有的參照运动信息作为解码对象块X的运动信息使用并进行运动补偿的预测方式(第I预测方式),以及如H. 264那样地对解码对象块使用I个运动向量进行运动补偿的预测方式(第2预测方式),对编码数据30进行解码。在本实施方式中,将作为解码对象的像素块(例如、编码树单元、预测单元、微块、I像素等)称作解码对象块。另外,将包括解码对象块的图像帧称作解码对象帧。在编码串解码部2201中,针对每I帧或每I字段,根据语法进行基于语法解析的译解。具体而言,依次对各语法的编码串进行可变长度解码,并对包括运动信息40、预测切 换信息62、选择块信息61、变换系数33、以及块大小信息以及预测模式信息等预测信息的、与解码对象块有关的编码參数等进行解码,得到解码參数。在本实施方式中,解码參数包括变换系数33、选择块信息61以及预测信息,包括与变换系数有关的信息、与量化有关的信息等解码时所需要的所有的參数。预测信息、与变换系数有关的信息、以及与量化有关的信息作为控制信息71而被提供给解码控制部2250。解码控制部2250将包括预测信息以及量化參数等解码所需要的參数的解码控制信息70提供给图像解码部2200的各部分。图23更详细地示出编码串解码部2201。如图23所示,编码串解码部2201具备分离部2301、參数解码部2302、变换系数解码部2303、预测切換信息·选择块信息解码部2304以及运动信息解码部2305。分离部2301将编码数据30分离为语法単位,生成包括块大小以及与量化有关的參数的编码数据30A、包括变换系数信息的编码数据30B、包括预测信息以及选择块信息的编码数据30C、包括运动信息的编码数据30D。參数解码部2302对编码数据30A解码而得到块大小信息以及与量化有关的參数等。变换系数解码部2303对编码数据30B解码而得到变换系数信息31。预测切換信息·选择块信息解码部2304对编码数据30C解码而得到选择块信息61以及预测切换信息62。预测切換信息·选择块信息解码部2304从可利用块取得部2207接收表示可利用块的数量的可利用块信息60,根据可利用块的数量使用预先设定的代码表对选择块信息61进行解码。其中,当可利用块信息60表示I个可利用块也未选定的情况下,预测切換信息·选择块信息解码部2304不需要对包括预测切換信息62以及可利用块信息60的编码数据C进行解码。运动信息解码部2305对编码数据30D解码而得到运动信息40。运动信息解码部2305从预测切換信息 选择块信息解码部2304接收预测切換信息62并进行參照。当预测切換信息62表示图I的预测部101使用了第2预测方式的情况下,即解码对象块通过第2预测方式编码的情况下,预测切換信息 选择块信息解码部2304不需要对编码数据C进行解码。由变换系数解码部2303译解出的变换系数信息31被送给逆量化·逆变换部2202。另外,由參数解码部2302译解出的与量化有关的各种控制信息(例如量化參数以及量化矩阵)71被提供给解码控制部2250,在进行逆量化时下载到逆量化·逆变换部2202。逆量化 逆变换部2202按照所下载的与量化有关的信息,对变换系数信息31进行逆量化,接着实施逆变换处理(例如、逆离散余弦变换等),从而生成预测误差信号34。基于图22的逆量化·逆变换部2202的逆变换处理是基于图I的变换·量化部103的变换处理的逆变换。例如,当通过图I的图像编码装置实施小波变换的情况下,逆量化·逆变换部2202执行逆量化以及逆小波变换。由逆量化·逆变换部2202复原后的预测误差信号34被送给加算器2203。加算器2203将来自逆量化 逆变换部2202的预测误差信号34和在后述的预测部2205中生成的预测图像信号35相加而生成解码图像信号36。所生成的解码图像信号36从图像解码部2200输出,在临时保存到输出缓存器2208之后,按照解码控制部2250管理的输出定时被输出。另外,解码图像信号36在帧存储器2204中被保存为參照图像信号37。由预测部2205针对每个帧或每个字段而适当地读出參照图像信号37。可利用块取得部2207从后述的运动信息存储器2206接收參照运动信息39,输出 可利用块信息60。可利用块取得部2207的动作与在第I实施方式中说明的可利用块取得部109 (图I)相同,所以省略其说明。运动信息存储器2206从预测部2205接收运动信息38,并临时保存为參照运动信息39。运动信息存储器2206參照图6A利用与上述的运动信息存储器108相同的方法保存參照运动信息39。即在运动信息存储器2206中以帧单位保持參照运动信息39,将解码完毕的编码树单元以及预测单元的运动信息38保存为參照运动信息39。另外,运动信息存储器2206也可以參照图6B利用与上述的运动信息存储器108相同的方法保存參照运动信息39。即也可以仅保持与解码对象块邻接的像素块的參照运动信息39。接着,说明运动參照块以及可利用块。运动參照块是按照通过图I的图像编码装置以及图22的图像解码装置的双方确定的方法从解码对象帧以及參照帧内的解码完毕的块中选择的。在本实施方式中,如图9A所示,从解码对象帧的解码完毕的块中,将相对于解码对象块X在左方向邻接的解码完毕的块A、以及在上方向邻接的解码完毕的块B选择为运动參照块。这些块A以及块B是根据解码对象块内的左上像素,利用图9B所示的相对位置确定的像素a、b各自所属的块。即块A是包括与解码对象块内的左上像素在左方向邻接的像素a的块,块B是包括与解码对象块内的左上像素在上方向邻接的像素b的块。另外,运动參照块的数量不限于图9A所示的2个的例子,也可以是3个以上。作为一例,如图9C所示,使用除了块A以及块B以外的编码完毕的邻接块C以及D作为运动參照块。在图9D中示出解码对象块X内的左上像素与图9D的块A、B、C、D各自所包含的像素a、b、c、d的相对位置的一例。在此,解码对象块示出为NXN像素块。块C包括从解码对象块X内的左上像素向右方向位移了 N像素并且向上方向位移了 I像素的位置的像素c,块D包括从解码对象块X内的左上像素向左方向位移了 I像素并且向上方向位移了 I像素的位置的像素d。在本实施方式中,说明了将运动參照块设为图9A所示的块A以及块B的例子。
可利用块由可利用块取得部2207从运动參照块中选定。可利用块是运动參照块中的应用了交互预测的块。其中,当存在多个应用了交互预测且具有相同的运动信息的运动參照块的情况下,将这些运动參照块中的I个选定为可利用块。由此,在选定了多个可利用块的情况下,这些可利用块具有相互不同的运动向量。当从运动參照块中选定了可利用块时,可利用块取得部2207输出表示所选定的可利用块的可利用块信息60。作为一例,当如图9A所示地运动參照块为与解码对象块邻接的块A以及块B的情况下,可利用块取得部2207參照块A以及块B的參照运动信息39判定块A以及块B是否为可利用块,并输出表示判定结果的可利用块信息60。接着,參照图24来详细说明预测部2205。如图24所示,预测部2205具有第I预测部2401、第2预测部2402以及预测方法切换开关2403。第I预测部2401输入可利用块信息60、选择块信息61、參照运动信息39以及參照图像信号37,按照第I预测方式生成预测图像信号35A。第2预测部2402使用參照图像信号37以及来自编码串解码部2201的运动信息40,进行与在第I实施方式中说明 的第2预测部1002相同的运动补偿预测,生成预测图像信号35B。预测方法切换开关2403根据预测切換信息62,选择来自第I预测部2401的预测图像信号35A以及来自第2预测部2402的预测图像信号35B中的一方,并作为预测图像信号35而输出。同时,运动信息切換开关2503将作选择的第I预测部2401或第2预测部2402中使用过的运动信息作为运动信息38而发送给运动信息存储器2206。如图25所示,第I预测部2401具备运动信息选择部2501以及运动补偿部2504,运动信息选择部2501具备运动信息取得部2502以及运动信息切换开关2503。基本上,第I预测部2401具有与在第I实施方式中说明的第I预测部1001相同的结构以及功能。第I预测部2401输入可利用块信息60、选择块信息61、參照运动信息39以及參照图像信号37,输出预测图像信号35以及运动信息38。运动信息取得部2502具有与在第I实施方式中说明的运动信息取得部1102相同的功能。即运动信息取得部2502输出包括运动參照块A的參照运动信息39以及可利用块信息60的运动信息38A、以及包括运动參照块B的參照运动信息39以及可利用块信息60的运动信息38B。如图9A所示,运动參照块A是与编码对象块在空间上在左方向邻接的块,运动參照块B是与编码对象块在空间上在上方向邻接的块。运动信息取得部2502输出与可利用块的数量一致的数量的运动信息。在本实施方式中,如图9A所示地设定2个运动參照块,所以对应于2个运动參照块而最大输出2个运动信息。另外,当如图9C所示地设定4个运动參照块的情况下,根据可利用块的数量而最大输出4个运动信息。运动信息切换开关2503按照选择块信息61选择运动信息38A以及38B中的某一方,并作为运动信息38而发送给运动补偿部1104。运动补偿部2504使用运动信息38以及參照图像信号37进行与运动补偿部1104相同的运动补偿预测,并生成预测图像信号35A。如图26所示,第2预测部2402具备运动补偿部2601,该运动补偿部2601使用參照图像信号37以及由编码串解码部2201得到的运动信息40,进行与图25的运动补偿部2504相同的运动补偿预测,并生成预测图像信号35B。图24的预测方法切换开关2403按照预测切换信息62,选择来自第I预测部2401的预测图像信号35A以及来自第2预测部2402的预测图像信号35B中的一方,并作为预测图像信号35而输出。进而,预测方法切换开关2403将为了得到所选择的一方的预测图像信号而使用了的运动信息作为运动信息38而输出。运动信息38被发送给运动信息存储器2206。关于预测部2205的动作,进行与參照图14而在第I实施方式中说明的预测部101相同的动作,所以省略其说明。其中,在其说明中,需要将编码适当地改读为解码。接着,对图22的图像解码装置所利用的语法进行说明。语法表示图像解码装置对运动图像数据进行解码时的编码数据的结构。图15示出图22的图像解码装置所利用的语法1500的一例。语法1500包括高级语法1501、片段级语法1502以及编码树级语法1503这3个部分。高级语法1501包括比片段更上位的层的语法信息。所谓片段是指包含于帧或字段的矩形区域或者连续区域。片段级语法1502包括用于对各片段进行解码所需的信息。编码树级语法1503包括对各编码树单元进行解码所需要的信息。这些部分各自还包括更详细 的语法。高级语法1501包括序列參数设置语法1504以及图片參数设置语法1505等那样的序列以及图片级的语法。片段级语法1502包括片段头语法1506以及片段数据语法1507等。编码树级语法1503包括编码树单元语法1508以及预测单元语法1509等。编码树单元语法1508能够具有四叉树结构。具体而言,作为编码树单元语法1508的语法要素,能够进一歩地递归调出编码树单元语法1508。即能够利用四叉树对I个编码树单元进行细化。另外,编码树单元语法1508内包含有转换单元语法1510以及预测单元语法1509。转换单元语法1510记述有与逆正交变换以及量化等有关的信息,并在四叉树的最末端的各编码树单元语法1508中被调出。图16示出本实施方式的序列參数设置语法1504的一例。图16所示的inter_merge_flag例如是表示在该序列中本实施方式的第I预测方式是有效还是无效的语法要素。inter_merge_flag为O的情况下,inter_merge_f lag表示在片段内第I预测方式无效。在这种情况下,仅第2预测方式有效。因此,不需要对之后的merge_flag以及merge_left_flag进行解码。当inter_merge_flag为I的情况下,在片段内全域内本实施方式的第I预测方式有效。另外,在另一例中,如图17所示,inter_merge_flag也可以包含于片段头语法1506中。在这种情况下,inter_merge_flag成为表示在该片段中第I预测方式是有效还是无效的语法要素。图18表示编码树单元语法1508的一例。图18所示的split_coding_unit_flag是表示是否将编码树单元4分割的标记。split_coding_unit_flag为I的情况下,split_coding_unit_flag表示将编码树单元4分割。在这种情况下,递归地调出将编码树单元4分割得到的编码树単元的语法。图18的X0、Xly0、yl是为了表示4分割后的编码树単元的位置而使用的參数,splitCodingUnitSize表示4分割后的编码树单元的大小。split_coding_unit_flag 为 O 的情况下,split_coding_unit_f lag 表示不对编码树单元4分割。NumMergeCandidates表示在图14等中导出的可利用块的数量。在存在可利用块(NumMergeCandidates>0)的情况下,对表示预测切换信息62的merge_f lag进行解码。merge_flag在其值为I的情况下,表示使用第I预测方式,在其值为O的情况下,表示使用第2预测方式。当merge_flag为I (TRUE)且存在2个可利用块(NumMergeCandidates>l)的情况下,对表示将运动參照块A以及运动參照块B的哪ー个选择为选择块的选择块信息61即merge_left_flag进行解码。merge_flag为O的情况下,使用第2预测方式,所以调出预测单元语法,对编码树单元中的预测信息(运动信息38等)进行解码。merge_flag为I的情况下,不需要对与编码树单元中的预测有关的參数(运动信息38、预测单元分割信息等)进行解码。另外,如图19所示,预测单元语法也可以包括merge_flag以及merge_left_flag,在此情况下,merge_flag以及merge_left_flag也具有与图18的merge_flag以及merger_left_flag相同的含义。另外,当如图9C所示地运动參照块数为3以上、可利用块的数量也为3以上的情况下,将选择块信息(merge_left_flag)不设为标记而设为具有多个符号的信息即可。进而,也可以按照编码树単元(编码对象块)的大小来进行第I预测方式有效还 是无效的切換。图20示出根据编码树单元的大小来切換第I预测方式有效还是无效的编码树语法的一例。图20的merge_available_size ()是输出针对姆个编码对象块大小(currCodingUnitSize)的第I预测方式的有效/无效的函数,即根据编码对象块的大小而表示是否对预测切换信息(merge_fIag)进行编码的模式编码信息。merge_avaiIabIe_size ()为I的情况下,第I预测方式为有效。另ー方面,merge_available_size ()为O的情况下,第I预测方式为无效,仅第2预测方式有效。此时,不需要对merge_flag以及merge_left_flag进行解码。merge_available_size ()中的切换的信息也可以通过序列參数设置语法、图片參数设置语法、片段头语法而预先解码。另外,也可以保持与后述的解码装置相同的切换信息。在另ー实施方式中,也可以替代将merge_available_size()设为0,而将图18所示的NumMergeCandidates总是设为O。如果使用图20的编码树语法,则能够在确定的大小的编码树単元中将第I预测方式设为无效,从而能够削减预测切換信息以及选择块信息。如以上所述,第3实施方式的图像解码装置对由上述第I实施方式的图像编码装置编码后的图像进行解码。因此,本实施方式的图像解码装置能够根据比较小的编码数据再现高图像质量的解码图像。(第4实施方式)接着,说明第4实施方式的图像解码装置。第4实施方式的图像解码装置具有与图22所示的第3实施方式相同的结构。在第4实施方式中,主要对与第3实施方式不同的部分以及动作进行说明。在第3实施方式中,针对解码对象的编码树单元应用第I预测方式,与此相对,在第4实施方式中,针对解码对象的预测单元应用第I预测方式。图9A所示的块X成为解码对象的预测单元,块A以及块B成为运动參照块。此外,关于可利用块以及选择块,在第3实施方式的与第I预测方式有关的记载中,将编码树单元置換为预测单元即可。图21示出第2实施方式的预测单元语法1509的一例。图21所示的NumPuParts(inter_partitioning_idc)是规定预测单元的分割方法的索引。具体而言,NumPuParts(inter_partitioning_idc)表示如图5A至图51所示地分割了的预测单元的数量。在图5B的例子中,NumPuParts为2,在图的例子中,NumPuParts为4。图21的变量i是所分割的预测单元的索引。图21的NumMergeCandidates是预测单元i中的可利用块的数量。图21的merge_flag[i]以及merge_left_flag[i]分别表示预测单元i中的预测切换信息以及选择块信息,其导出方法与第3实施方式相同。如以上所述,在预测单元中应用第I预测方式的第4实施方式的图像编码装置中,也能获得与第3实施方式相同的效果。以下,例举各实施方式的变形例并进行说明。在第I至第4实施方式中,如图4所示,关于将帧分割为编码树单元等矩形块、井从画面左上的块向右下依次进行编码/解码的例子进行了说明。但是,编码顺序以及解码顺序不限于该例子。例如,既可以从右下向左上地依次进行编码以及解码,也可以以从画面中央向画面端部地描画螺旋的方式进行编码以及解码。进而,既可以从右上向左下依次进行编码以及解码,也可以以从画面端部向画面中央描画螺旋的方式进行编码以及解码。
另外,在第I至第4实施方式中,不需要在I个编码树单元内统ー全部的块大小,也可以混合存在多个不同的块大小。当在I个编码树单元内混合存在多个不同的块大小的情况下,随着分割数的増加,用于对分割信息编码或者解码的编码量也増加。因此,优选考虑分割信息的编码量与局部解码图像或解码图像的质量之间的平衡来选择块大小。另外,在第I至第4实施方式中,为了简化,未区别亮度信号和色差信号,而是关于色信号分量记载了概括性的说明。但是,当亮度信号与色差信号之间预测处理不同的情况下,可以使用相同或不同的预测方法。当亮度信号与色差信号之间使用不同的预测方法的情况下,能够利用与亮度信号相同的方法对针对色差信号选择的预测方法进行编码或解码。另外,在第I至第4实施方式中,为了简化,未区别亮度信号和色差信号,而是关于色信号分量记载了概括性的说明。但是,当在亮度信号与色差信号之间正交变换处理不同的情况下,既可以使用相同的正交变换方法,也可以使用不同的正交变换方法。如果在亮度信号与色差信号之间使用不同的正交变换方法,则能够利用与亮度信号相同的方法对针对色差信号选择的正交变换方法进行编码或解码。进而,在第I至第4实施方式中,在语法结构所示的表的行间也能够插入在此未规定的语法要素,并且也可以包括与此外的条件分岐有关的记述。或者,也能够将语法表分害I]、合并为多个表。另外,不需要必须使用相同的用语,也可以根据所利用的方式而任意地变更。如以上那样,各实施方式缓解了硬件安装以及软件安装时的困难,并且实现了高效率的正交变换以及逆正交变换。因此,根据各实施方式,提高了编码效率,而且主观图像质量也提闻了。说明了本发明的几个实施方式,但这些实施方式是作为例子而提示的,而并非意图限定发明的范围。这些新的实施方式能够以其它各种方式来实施,在不脱离发明的要旨的范围内,能够进行各种省略、置换以及变更。这些实施方式及其变形包含于发明范围及其要旨内,并且包含于权利要求书记载的发明及其均等的范围内。例如,也能够将实现上述各实施方式的处理的程序保存到计算机可读的存储介质中来提供。作为存储介质,只要为磁盘、光盘(⑶-ROM、⑶-R、DVD等)、光磁盘(MO等)、半导体存储器等能够存储程序并且计算机可读的存储介质,则其存储形式可以是任意的方式。
另外,也可以将实现上述各实施方式的处理程序保存到连接于互联网等网络的计算机(服务器)上, 并经由网络而下载到计算机(客户端)。
权利要求
1.ー种图像编码方法,其特征在于,具有第I步骤,从应用了交互预测的编码完毕的像素块中,选择相对于编码对象块在空间上在上方向邻接的运动參照块和在左方向邻接的运动參照块;第2步骤,从所述运动參照块中选择可利用块,该可利用块是具有应用到所述编码对象块的运动信息的候选的像素块,且具有相互不同的运动信息;第3步骤,从所述可利用块中选择I个选择块;第4步骤,使用所述选择块的运动信息而生成所述编码对象块的预测图像;第5步骤,对所述预测图像与原图像之间的预测误差进行编码;以及第6步骤,根据所述可利用块的数量參照预先设定的代码表,对确定所述选择块的选择信息进行编码。
2.根据权利要求I所述的图像编码方法,其特征在于,还具有第7步骤,对预测切换信息进行编码,该预测切换信息表示所述预测图像是否通过使用了所述可利用块的运动信息的运动补偿预测而生成,所述第7步骤根据所述编码对象块的大小来切換是否对所述预测切換信息进行编码。
3.ー种图像解码方法,其特征在于,具有第I步骤,从应用了交互预测的解码完毕的像素块中,选择相对于解码对象块在空间上在上方向邻接的运动參照块和在左方向邻接的运动參照块;第2步骤,从所述运动參照块中选择可利用块,该可利用块是具有应用到所述解码对象块的运动信息的候选的像素块,且具有相互不同的运动信息;第3步骤,从所述可利用块中选择I个选择块;第4步骤,使用所述选择块的运动信息而生成所述解码对象块的预测图像;第5步骤,对所述预测图像与原图像之间的预测误差进行解码;以及第6步骤,根据所述可利用块的数量參照预先设定的代码表,对确定所述选择块的选择信息进行解码。
4.根据权利要求3所述的图像解码方法,其特征在于,还具有第7步骤,对预测切换信息进行解码,该预测切换信息表示所述预测图像是否通过使用了所述可利用块的运动信息的运动补偿预测而生成,所述第7步骤根据所述解码对象块的大小来切換是否对所述预测切換信息进行解码。
全文摘要
一实施方式的图像编码方法,包括第1步骤,从应用了交互预测的编码完毕的像素块中,选择相对于编码对象块在空间上在上方向邻接的运动参照块和在左方向邻接的运动参照块;第2步骤,从所述运动参照块中选择可利用块,该可利用块是具有应用到所述编码对象块的运动信息的候选的像素块,且具有相互不同的运动信息;以及第3步骤,从所述可利用块中选择1个选择块。该图像编码方法还包括第4步骤,使用所述选择块的运动信息而生成所述编码对象块的预测图像;第5步骤,对所述预测图像与原图像之间的预测误差进行编码;以及第6步骤,根据所述可利用块的数量参照预先设定的代码表,对确定所述选择块的选择信息进行编码。
文档编号H04N7/32GK102835109SQ201080066019
公开日2012年12月19日 申请日期2010年11月26日 优先权日2010年4月8日
发明者盐寺太一郎, 浅香沙织, 谷沢昭行, 中条健 申请人:株式会社东芝
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1