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

文档序号:10573045阅读:405来源:国知局
运动图像编码方法以及运动图像解码方法
【专利摘要】本发明涉及运动图像编码方法以及运动图像解码方法。一种将输入图像信号分割成像素块,对这些分割出的像素块进行帧间预测的方法。该方法从保持有编码结束区域中的运动信息的运动信息缓存器中选择预测运动信息,使用所述预测运动信息对编码对象块的运动信息进行预测。进而该方法从编码结束了的区域内的多个运动信息中,依照表示所述预测运动信息的选择方法的第1信息来取得代表运动信息,仅得到所述代表运动信息。
【专利说明】运动图像编码方法以及运动图像解码方法
[0001 ] 本申请是申请号为201180066693.9、申请日为2011年3月9日、名称为“运动图像编码方法以及运动图像解码方法”的发明专利申请的分案申请。
技术领域
[0002]本发明的实施方式涉及运动图像的编码以及解码中的运动信息压缩方法、运动图像编码方法以及运动图像解码方法。
【背景技术】
[0003]近年来,使编码效率大幅地提高的图像编码方法在ITU-T和IS0/IEC的共同使用下被建议为 11'1]-了1^(3.!1.264以及130/^(:14496-10(以下称为!1.264)。在!1.264中,预测处理、变换处理以及熵编码处理是以矩形块为单位(例如、16X16像素块单位、8X8像素块单位等)来进行的。在预测处理中对于编码对象的矩形块(编码对象块),参照已编码结束的帧(参照帧),进行运动补偿,该运动补偿进行时间方向的预测。在这样的运动补偿中,有必要对包含作为编码对象块与在参照帧内所参照的块的空间上的偏移信息的运动矢量的运动信息进行编码并发送到解码侧。进而,在使用多个参照帧进行运动补偿的情况下,还需要将参照帧编号与运动信息一起进行编码。因此,存在与运动信息以及参照帧编号有关的代码量增大的情况。另外,有对参照帧的运动信息存储器所保存的运动信息进行参照,导出编码对象块的预测运动信息的运动信息预测方法(专利文献I以及非专利文献2),存在保存运动信息的运动信息存储器的容量增加的情况。
[0004]作为削减运动信息存储器的容量的方法的一个例子,在(非专利文献2)中,在预定的块内导出代表的运动信息,仅将代表的运动信息保存于运动信息存储器。
[0005]专利文献I:日本专利第4020789号
[0006]非专利文献I
[0007]J.Jung et al,“Temporal MV predictor modificat1n for MV-Comp,Skip,Direct and Merge schemes,,,Joint Collaborative T earn on Video Coding(JCT-VC)ofITU-T SG16ffP3and ISO/IE C JTC1/SC29/WG1IDocument,JCTVC_D164January 20110.
[0008]非专利文献2
[0009]Yeping Su et al,“CE9:Reduced resolut1n storage of mot1 n vectordata”,Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG16ffP3andIS0/IEC JTC1/SC29/WG1IDocu ment,JCTVC_D072January 20110.

【发明内容】

[0010]但是,在非专利文献I所示出的预测运动信息的导出方法和非专利文献2所示出的代表运动信息的导出方法不同的情况下,存在因预测运动信息的时间相关性减少而与运动信息有关的代码量增加的问题。
[0011]本发明为了解决上述问题点而被完成的,想要解决的课题是提供一种包含能够提高编码效率的运动信息压缩装置的运动图像编码装置以及运动图像解码装置。
[0012]根据实施方式,运动图像编码方法是将输入图像信号分割成像素块,对这些分割了的像素块进行帧间预测的方法。该方法包含从保持有编码结束区域中的运动信息的运动信息缓存器中选择预测运动信息,使用所述预测运动信息对编码对象块的运动信息进行预测。进而该方法包含从编码结束了的区域内的多个运动信息中,依照表示所述预测运动信息的选择方法的第I信息,取得代表运动信息,仅得到所述代表运动信息。
【附图说明】
[0013]图1是概略地示出第I实施方式所涉及的图像编码装置的结构的框图。
[0014]图2A是像素块的预测编码顺序的说明图。
[0015]图2B是像素块尺寸的一个例子的说明图。
[0016]图2C是像素块尺寸的其他的例子的说明图。
[0017]图2D是像素块尺寸的其他的例子的说明图。
[0018]图3A是编码树单元中的像素块的一个例子的说明图。
[0019]图3B是编码树单元中的像素块的其他的例子的说明图。
[0020]图3C是编码树单元中的像素块的其他的例子的说明图。
[0021]图3D是编码树单元中的像素块的其他的例子的说明图。
[0022]图4是概略地不出图1的熵编码部的结构的框图。
[0023]图5是概略地示出图1的运动信息存储器的结构的说明图。
[0024]图6A是图1的帧间预测部执行的帧间预测处理的一个例子的说明图。
[0025]图6B是图1的帧间预测部执行的帧间预测处理的其他的例子的说明图。
[0026]图7A是预言(Predict)单元的一个例子的说明图。
[0027]图7B是预言单元的其他的例子的说明图。
[0028]图7C是预言单元的其他的例子的说明图。
[0029]图7D是预言单元的其他的例子的说明图。
[0030]图7E是预言单元的其他的例子的说明图。
[0031 ]图7F是预言单元的其他的例子的说明图。
[0032]图7G是预言单元的其他的例子的说明图。
[0033]图8是示出跳过模式、合并模式、帧间模式的说明图。
[0034]图9是概略地不出图4的运动信息编码部的结构的框图。
[0035]图10是示出针对编码对象预言单元的预测运动信息候补的位置的例子的说明图。
[0036]图11是示出针对编码对象预言单元的预测运动信息候补的位置的另一其他的例子的说明图。
[0037]图12是示出表示多个预测运动信息候补的块位置和索引MvpidX的关系的列表的例子的说明图。
[0038]图13A是示出编码对象预言单元的尺寸为32X32的情况下的表示预言单元的中心的参照运动信息取得位置的例子的说明图。
[0039]图13B是示出编码对象预言单元的尺寸为32X16的情况下的表示预言单元的中心的参照运动信息取得位置的例子的说明图。
[0040]图13C是示出编码对象预言单元的尺寸为16X32的情况下的表示预言单元的中心的参照运动信息取得位置的例子的说明图。
[0041]图13D是示出编码对象预言单元的尺寸为16X16的情况下的表示预言单元的中心的参照运动信息取得位置的例子的说明图。
[0042]图13E是示出编码对象预言单元的尺寸为16X8的情况下的表示预言单元的中心的参照运动信息取得位置的例子的说明图。
[0043]图13F是示出编码对象预言单元的尺寸为8X16的情况下的表示预言单元的中心的参照运动信息取得位置的例子的说明图。
[0044]图14A是示出编码对象预言单元的尺寸为32X32的情况下的表示预言单元的中心的参照运动信息取得位置的另一其他的例子的说明图。
[0045]图14B是示出编码对象预言单元的尺寸为32X16的情况下的表示预言单元的中心的参照运动信息取得位置的另一其他的例子的说明图。
[0046]图14C是示出编码对象预言单元的尺寸为16X32的情况下的表示预言单元的中心的参照运动信息取得位置的另一其他的例子的说明图。
[0047]图14D是示出编码对象预言单元的尺寸为16X16的情况下的表示预言单元的中心的参照运动信息取得位置的另一其他的例子的说明图。
[0048]图14E是示出编码对象预言单元的尺寸为16X8的情况下的表示预言单元的中心的参照运动信息取得位置的另一其他的例子的说明图。
[0049]图14F是示出编码对象预言单元的尺寸为8X16的情况下的表示预言单元的中心的参照运动信息取得位置的另一其他的例子的说明图。
[0050]图15是与空间方向参照运动信息存储器501以及时间方向参照运动信息存储器502有关的说明图。
[0051]图16是示出图1的运动信息压缩部的动作的一个例子的流程图。
[0052]图17A是示出编码对象预言单元的尺寸为32X 32的情况下的表示预言单元的左上端的参照运动信息取得位置的例子的说明图。
[0053]图17B是示出编码对象预言单元的尺寸为32X 16的情况下的表示预言单元的左上端的参照运动信息取得位置的例子的说明图。
[0054]图17C是示出编码对象预言单元的尺寸为16X 32的情况下的表示预言单元的左上端的参照运动信息取得位置的例子的说明图。
[0055]图17D是示出编码对象预言单元的尺寸为16X 16的情况下的表示预言单元的左上端的参照运动信息取得位置的例子的说明图。
[0056]图17E是示出编码对象预言单元的尺寸为16X8的情况下的表示预言单元的左上端的参照运动信息取得位置的例子的说明图。
[0057]图17F是示出编码对象预言单元的尺寸为8X 16的情况下的表示预言单元的左上端的参照运动信息取得位置的例子的说明图。
[0058]图18A是示出代表运动信息位置的例子的说明图。
[0059]图18B是示出代表运动信息位置的其他的例子的说明图。
[0060]图19是示出各预言尺寸中的预言单元的中心的例子的说明图。
[0061]图20A是示出将每个运动信息压缩块的多个参照运动信息取得位置的重心设定为代表运动信息位置的情况下的代表运动信息位置的例子的说明图。
[0062]图20B是示出将每个运动信息压缩块的多个参照运动信息取得位置的重心设定为代表运动信息位置的情况下的代表运动信息位置的其他例子的说明图。
[0063]图21A是示出代表运动信息位置的例子的说明图。
[0064]图21B是示出代表运动信息位置的其他的例子的说明图。
[0065]图22是示出依照一实施方式的语法构造的图。
[0066]图23A是示出依照一实施方式的序列参数集语法的一个例子的图。
[0067]图23B是示出依照一实施方式的序列参数集语法的另一例子的图。
[0068]图24是示出依照一实施方式的预言单元语法的一个例子的图。
[0069]图25是概略地示出第2实施方式所涉及的图像解码装置的框图。
[0070]图26是概略地示出图25的熵解码部的框图。
[0071 ]图27是概略地不出图26的运动信息解码部的框图。
[0072](符号说明)
[0073]100…图像编码装置、101…减法部、102…正交变换部、103…量化部、104、2502...反量化部、105、2503...反正交变换部、106、2504、2706…加法部、107、2505...参照图像存储器、108、2506...帧间预测部、109…运动信息压缩部、110…运动信息存储器、112…熵编码部、113…输出缓存器、114…编码控制部、401…参数编码部、402…变换系数编码部、403...运动信息编码部、404…复用部、901…参照运动矢量取得部、902…预测运动矢量选择开关、903…减法部、904…差分运动信息编码部、905…预测运动信息位置编码部、906…复用部、2500…运动图像解码装置、2501...熵解码部、2507...参照运动信息存储器、2508...参照运动信息压缩部、2510...解码控制部、2601、2701…分离部、2602...参数解码部、2603...变换系数解码部、2604...运动信息解码部、2702...差分运动信息解码部、2503...预测运动信息位置解码部、2704...参照运动信息取得部、2705...预测运动信息选择开关。
【具体实施方式】
[0074]以下,参照附图详细说明各实施方式所涉及的运动图像编码装置以及运动图像解码装置。另外,在以后的说明中,“图像”这样的术语能够适当地理解为“影像”、“像素”、“图像信号”、“图像数据”等术语。另外,在以下的实施方式中,设为关于带有同样编号的部分进行同样的动作,并省略重复的说明。
[0075](第丨实施方式)
[0076]第I实施方式是关于图像编码装置。与本实施方式所涉及的图像编码装置对应的运动图像解码装置在第2实施方式中进行说明。该图像编码装置能够通过LSI (Large-Scale Integrat 1n:大规模集成电路)芯片、DSP(DigitalSignalProcessor:数字信号处理器)、FPGA(Field ProgrammableGateArray:现场可编程门阵列)等硬件来实现。另外,该图像编码装置也可以通过使计算机执行图像编码程序来实现。
[0077]如图1所示那样,本实施方式所涉及的图像编码装置100具有减法部101、正交变换部102、量化部103、反量化部104、反正交变换部105、加法部106、参照图像存储器107、帧间预测部108、运动信息压缩部109、运动信息存储器110、以及熵编码部112。编码控制部114以及输出缓存器113通常被设置于图像编码装置100的外部。
[0078]图1的图像编码装置100将构成输入图像信号的各帧或各场或各片分割为多个像素块,对于这些分割出的像素块进行预测编码,输出编码数据163。在以后的说明中,为了简化而假设如图2A所示那样从左上向右下进行像素块的预测编码。在图2A中,在编码处理对象的帧f中,编码结束像素块P与编码对象像素块c相比位于左侧以及上侧。
[0079]这里,像素块是指例如、MXN尺寸的块(N以及M为自然数)、编码单元、宏块、子块、I像素等的处理图像的单位。另外,在以后的说明中,基本上将像素块在编码单元的意义下来使用,但通过适当地理解说明也能够在上述的意义下解释像素块。编码单元典型的情况是例如图2B所示的16 X 16像素块,但也可以是图2C所示的32 X 32像素块、图2D所示的64 X 64像素块,也可以是未图示的8X8像素块、4X4像素块。另外,编码单元未必一定是正方形。以下、也有时将输入图像信号151的编码对象块或者编码单元称为“预测对象块”。另外,编码单位不限于编码单元那样的像素块,能够使用帧或场、片、或者它们的组合。
[0080]图3A到图3D是示出了编码单元的具体例子的图。图3A示出编码单元的尺寸是64X64(N=32)的情况下的例子。这里,N表示成为基准的编码单元的尺寸,将被分割了的情况下的尺寸定义为N,将没被分割的情况定义为2N。编码树单元具有四叉树构造,在被分割了的情况下对4个像素块按照Z扫描顺序附上索引。图3B示出对图3A的64X64像素块进行了四叉树分割的例子。图中所示的编号表示Z扫描的次序。另外,能够在编码单元的I个四叉树的索引内进一步进行四叉树分割。对于分割的深度用Depth来定义。即、图3A示出D epth = 0的例子。图3C示出D印th = I的情况下的32 X 32(N= 16)尺寸的编码树单元的例子。将这样的编码树单元的最大的单元称为大编码树单元或者树块,如图2A所示,以该单位按照光栅扫描的顺序对输入图像信号进行编码。
[0081]图1的图像编码装置100根据从编码控制部114输入的编码参数,进行针对像素块的帧间预测(还被称为画面间预测、帧间预测、运动补偿预测等)或者没被图示的帧内预测(还被称为画面内预测、帧内预测等),生成预测图像信号159。该图像编码装置100对像素块(输入图像信号151)和预测图像信号159之间的预测误差信号152进行正交变换以及量化,进行熵编码而生成编码数据163并输出。
[0082]图1的图像编码装置100有选择地应用块尺寸以及预测图像信号159的生成方法不同的多个预测模式进行编码。预测图像信号159的生成方法进行大致划分,有在编码对象帧内进行预测的帧内预测和使用时间上不同的I个或者多个参照帧来进行预测的帧间预测这两种。
[0083]以下,对图1的图像编码装置100所包含的各要素进行说明。
[0084]减法部101从输入图像信号151的编码对象块减去对应的预测图像信号159,得到预测误差信号152。减法部101将预测误差信号152输入到正交变换部102。
[0085]正交变换部102对于来自减法部101的预测误差信号152进行例如离散余弦变换(DCT)这样的正交变换,得到变换系数153。正交变换部102将变换系数153输出到量化部103。
[0086]量化部103对来自正交变换部102的变换系数153进行量化,得到量化变换系数154。具体而言,量化部103依照由编码控制部114所指定的量化参数、量化矩阵等量化信息进行量化。量化参数表示量化的微细度。为了按每个变换系数的分量对量化的微细度加权而使用量化矩阵,量化矩阵的使用与不使用不是本发明的实施方式的本质部分。量化部103将量化变换系数154输出到熵编码部112以及反量化部104。
[0087]熵编码部112对来自量化部103的量化变换系数154、来自帧间预测部108的运动信息160、由编码控制部114所指定的预测信息165、来自编码控制部114的参照位置信息164、量化信息等的各种编码参数进行熵编码(例如、哈夫曼编码、算术编码等),生成编码数据163。另外,所谓编码参数是预测信息165、与变换系数有关信息、与量化有关的信息等的解码所需要的参数。例如、编码控制部114具有内部存储器(未图示),在该存储器中保持有编码参数,在对预测对象块进行编码时使用邻接的已编码结束的像素块的编码参数。
[0088]具体而言,熵编码部112如图4所示那样具备参数编码部401、变换系数编码部402、运动信息编码部403、以及复用部404。参数编码部401对从编码控制部114接收到的预测信息165等的编码参数进行编码,生成编码数据451A。变换系数编码部402对从量化部103接收到的量化后的变换系数154进行编码,生成编码数据451B。
[0089I 运动信息编码部403参照从运动信息存储器110接收到的参照运动信息166、从编码控制部114接收到的参照位置信息164,对从帧间预测部108接收到的运动信息160进行编码,生成编码数据451C。关于运动信息编码部403,其详细的内容在以后进行说明。
[0090]复用部404对编码数据451A、451B、451C进行复用,生成编码数据163。所生成的编码数据163包含运动信息160、预测信息165以及与变换系数有关的信息、与量化有关的信息等的解码时所需要的所有的参数。
[0091]由熵编码部112生成的编码数据163例如经过复用而被暂时蓄积在输出缓存器113,依照编码控制部114所管理的适当的输出定时,作为编码数据163而输出。编码数据163向例如未图示的蓄积系统(蓄积介质)或者传送系统(通信线路)输出。
[0092]反量化部104对于来自量化部103的量化变换系数154进行反量化,得到恢复变换系数155。具体而言,反量化部104依照在量化部103中所使用的量化信息进行反量化。在量化部103中所使用的量化信息从编码控制部114的内部存储器加载。反量化部104将恢复变换系数155输出到反正交变换部105。
[0093]反正交变换部105对于来自反量化部104的恢复变换系数155进行与在例如反离散余弦变换等那样的正交变换部102中进行的正交变换相对应的反正交变换,得到恢复预测误差信号156。反正交变换部105将恢复预测误差信号156输出到加法部106。
[0094]加法部106将恢复预测误差信号156和对应的预测图像信号159相加,生成局部的解码图像信号157。解码图像信号157实施未图示的去块滤波、维纳滤波等,然后向参照图像存储器107输入。
[0095]参照图像存储器107在存储器中蓄积局部解码后的被滤波图像信号158,在由帧间预测部108根据需要生成预测图像时,作为参照图像信号158来被参照。
[0096]帧间预测部108利用参照图像存储器107所保存的参照图像信号158而进行帧间预测。具体而言,帧间预测部108在预测对象块和参照图像信号158之间进行块匹配处理,导出运动的偏差量(运动矢量)O帧间预测部108根据该运动矢量进行运动补偿(在小数精度的运动的情况下为插值处理),生成帧间预测图像。在H.264中,有可能实现达到1/4像素精度的插值处理。被导出的运动矢量作为运动信息160的一部分被进行熵编码。
[0097]运动信息存储器110具有运动信息压缩部109,对于运动信息160适当地进行压缩处理,削减信息量,并暂时保存为参照运动信息166。如图5所示,运动信息存储器110以帧(或者片)为单位进行保持,还具有将同一帧上的运动信息160作为参照运动信息166来保存的空间方向参照运动信息存储器501;以及将已经编码结束的帧的运动信息160作为参照运动信息166来保存的时间方向参照运动信息存储器502 ο时间方向参照运动信息存储器502根据编码对象帧在预测中使用的参照帧的数量也可以具有多个。
[0098]另外,空间方向参照运动信息存储器501以及时间方向参照运动信息存储器502也可以在物理上对同一存储器进行逻辑地划分。进而,还可以是空间方向参照运动信息存储器501仅保持当前进行着编码的帧所需要的空间方向运动信息,依次压缩参照所不需要的空间方向运动信息并保存在时间方向参照运动信息存储器502。
[0099]参照运动信息166以规定的区域为单位(例如、4X4像素块为单位)被保持在空间方向参照运动信息存储器501以及时间方向参照运动信息存储器502内。参照运动信息166还具有表示该区域是按照后述的帧间预测进行编码还是按照后述的帧内预测进行编码的信息。另外,编码单元(或者预言单元)在如按照H.264所规定的跳过模式、直接模式或者后述的合并模式那样不对运动信息160内的运动矢量的值进行编码而使用根据编码结束的区域所预测的运动信息160来进行帧间预测的情况下,也将该编码单元(或者预言单元)的运动信息作为参照运动信息16 6来保持。
[0100]如果编码对象的帧或者片的编码处理结束了,则该帧的空间方向参照运动信息存储器501作为接下来进行编码处理的帧中所使用的时间方向参照运动信息存储器502,变更其处理。此时,为了削减时间方向参照运动信息存储器502的存储器容量,将通过后述的运动信息压缩部109所压缩的运动信息160保存于时间方向参照运动信息存储器502。
[0101]预测信息165是依照编码控制部114控制的预测模式的,如前所述,为了生成预测图像信号159能够选择帧间预测或者未图示的帧内预测或者帧间预测,而帧内预测和帧间预测的各自中还能够选择多个模式。编码控制部114将帧内预测以及帧间预测的多个预测模式中的一个判定为最佳的预测模式,设定预测信息165。
[0102]例如、编码控制部114使用如下的数学式(I)所示的成本函数,判定最佳的预测模式。
[0103]【数学式I】
[0104]K = SAD+AX0H(1)
[0105]在数学式(1)(以下称为简易编码成本)中,OH表示与预测信息160(例如、运动矢量信息、预测块尺寸信息)有关的代码量,SAD表示预测对象块和预测图像信号159之间的差分绝对值和(即、预测误差信号152的绝对值的累积和)。另外,λ表示根据量化信息(量化参数)的值所决定的拉格朗日未定乘数,K表示编码成本。在使用数学式(I)的情况下,使编码成本K最小化的预测模式根据发生代码量和预测误差的观点被判定为最佳的预测模式。作为数学式(I)的变形,既可以仅根据OH或者SAD来估计编码成本,也可以利用对SAD实施了哈达玛(Hadamard)变换而得到的值或者其近似值来估计编码成本。
[0106]另外,还能够通过使用未图示的临时编码单元来判定最佳的预测模式。例如、编码控制部114使用下面的数学式(2)所示的成本函数来判定最佳的预测模式。
[0107]【数学式2】
[0108]j = d+AXR (2)
[0109]在数学式(2)中,D表示预测对象块和局部解码图像之间的平方误差和(S卩、编码失真),R表示关于预测对象块和预测模式的预测图像信号159之间的预测误差利用临时编码所估计出的代码量,J表示编码成本。在导出数学式(2)的编码成本J(以后称为详细编码成本)的情况下,因为每个预测模式都需要临时编码处理以及局部解码处理,所以电路规模或者运算量增大。另一方面,根据更准确的编码失真和代码量来导出编码成本J,所以容易高精度地判定最佳的预测模式而维持高效的编码效率。另外,作为数学式(2)的变形,既可以仅根据R或者D来估计编码成本,也可以利用R或者D的近似值来估计编码成本。另外,也可以分阶层地使用这些成本。编码控制部114也可以根据关于预测对象块事前得到的信息(周围的像素块的预测模式、图像解析的结果等),预先缩减进行使用了数学式(I)或者数学式(2)的判定的预测模式的候补数量。
[0110]作为本实施方式的变形例,通过进行组合了数学式(I)和数学式(2)的两阶段的模式判定,能够维持编码性能并且进一步削减预测模式的候补数量。这里,由数学式(I)所示出的简易编码成本由于与数学式(2)不同,不需要局部解码处理,所以可以高速地进行运算。在本实施方式的运动图像编码装置中,即使与H.264相比较预测模式数量也多,所以使用了详细编码成本的模式判定是不现实的。所以,作为第一步骤,对于在该像素块中能够使用的预测模式进行使用了简易编码成本的模式判定,导出预测模式候补。
[0111]这里,利用决定量化的粗细的量化参数的值越大则简易编码成本与详细编码成本的相关性就越高的性质,变更预测模式候补数量。
[0112]接下来,对图像编码装置100的预测处理进行说明。
[0113]图1的图像编码装置100虽未图示,但准备了多个预测模式,在各预测模式中,预测图像信号159的生成方法以及运动补偿块尺寸相互不同。作为预测部108生成预测图像信号159的方法,具体而言,大致划分,存在使用编码对象帧(或者场)的参照图像信号158来生成预测图像的帧内预测(帧内预测)、以及使用I个以上的编码结束的参照帧(或者参照场)的参照图像信号158生成预测图像的帧间预测(帧间预测)。预测部108有选择地切换帧内预测以及帧间预测,生成编码对象块的预测图像信号159。
[0114]图6A示出帧间预测的一个例子。帧间预测典型的情况是按照预言单元的单位来执行,有可能具有预言单元单位下不同的运动信息160。在帧间预测中,如图6A所示那样,使用根据运动信息160所包含的运动矢量而在空间上从块601移动后的位置的块602的参照图像信号158,来生成预测图像信号159,该块601是已经编码完成的参照帧(例如、前I帧的编码结束的帧)内的像素块,是与编码对象的预言单元相同的位置的块。即、在预测图像信号159的生成中,使用通过编码对象块的位置(坐标)以及运动信息160所包含的运动矢量所确定的、参照帧内的块602的参照图像信号158。
[0115]在帧间预测中,能够实现小数的像素精度(例如、1/2像素精度或者1/4像素精度)的运动补偿,通过对参照图像信号158进行滤波处理,生成插值像素的值。例如、在H.264中,能够对亮度信号进行达到1/4像素精度的插值处理。该插值处理处理除了由H.264所规定的滤波以外,还能够通过使用任意的滤波来执行。
[0116]另外,在帧间预测中,不限于使用图6A所示那样的前I帧的参照帧的例子,如图6B所示那样,还可以使用某个编码结束的参照帧。在保持有时间位置不同的多个参照帧的参照图像信号158的情况下,表示根据哪个时间位置的参照图像信号158来生成了预测图像信号159的信息是用参照帧编号来表示的。参照帧编号被包含于运动信息160。参照帧编号能够按照区域单位(图片、片、块单位等)来进行变更。即、能够针对每个预言单元使用不同的参照帧。作为一个例子,在预测中使用了编码结束的前I帧的参照帧的情况下,该区域的参照帧编号被设定为O,在预测中使用了编码结束的前2帧的参照帧的情况下,该区域的参照帧编号被设定为I。作为其他的例子,在参照图像存储器107中保持有I帧大小的参照图像信号158(所保持的参照帧的数量仅有I个)的情况下,参照帧编号总是被设定为O。
[0117]进而,在帧间预测中,还能够从预先准备的多个预言单元的尺寸中选择适合于编码对象块的尺寸来使用。例如,能够针对图7A到图7G所示那样的分割编码树单元而得到的预言单元的每个进行运动补偿。另外,还能够针对图7F、图7G所述那样的被分割成矩形以外的形状而得到的预言单元的每个进行运动补偿。
[0118]如前所述,在帧间预测中使用的编码对象帧内的编码结束的像素块(例如、4X4像素块)的运动信息160作为参照运动信息166来被保持,所以能够依照输入图像信号151局部的性质来利用最佳的运动补偿块的形状以及运动矢量、参照帧编号。另外,编码单元以及预言单元能够任意地组合。在编码树单元为64X64像素块的情况下,对于分割了64X64像素块而得的4个编码树单元(32X32像素块)的各个,能够通过进一步将编码树单元分割成4个来分阶层地从64 X 64像素块中使用16 X 16像素块。同样地,能够分阶层地从64 X 64像素块中使用8X8像素块。这里,如果设为预言单元是将编码树单元分割成4个的单元,则能够执行从64 X 64像素块到4 X 4像素块的分阶层的运动补偿处理。
[0119]另外,在帧间预测中,能够执行对于编码对象像素块使用了2种运动补偿的双向预测。在H.264中,对于编码对象像素块进行2种运动补偿,通过对2种预测图像信号进行加权平均,从而得到新的预测图像信号(未图示)。在双向预测中,分别将2种运动补偿称为列表O预测、列表I预测。
[0120]〈跳过模式、合并模式、帧间模式的说明〉
[0121]本实施方式所涉及的图像编码装置100使用图8所示的编码处理不同的多个预测模式。图中的跳过模式是仅对后述的与预测运动信息位置954有关的语法进行编码、而对其他的语法不进行编码的模式。合并模式是仅对与预测运动信息位置954有关的语法、变换系数信息153进行编码,对其他的语法不进行编码的模式。帧间模式是对与预测运动信息位置954有关的语法、后述的差分运动信息953、变换系数信息153进行编码的模式。这些模式根据编码控制部114控制的预测信息165来进行切换。
[0122]〈运动信息编码部403〉
[0123]以下、对于运动信息编码部403,使用图9来进行说明。
[0124]运动信息编码部403具有参照运动矢量取得部901、预测运动矢量选择开关(还被称为预测运动信息选择开关)902、减法部903、差分运动信息编码部904、预测运动信息位置编码部905以及复用部906。
[0125]参照运动矢量取得部901将参照运动信息166以及参照位置信息164作为输入,生成至少一个以上的预测运动信息候补(还被称为预测运动矢量候补)951(951A、951B、…)。图10、图11示出针对对象预言单元的预测运动信息候补951的位置的一个例子。图10示出与对象预言单元在空间上相邻的预言单元的位置。ΑΧ(Χ = 0?nA-1)表示相对于对象预言单元在左侧相邻的预言单元,BY( Y = O?nB-1)表示相对于对象预言单元在上侧相邻的预言单元,C、D、E表示相对于对象预言单元分别在右上、左上、左下相邻的预言单元。另外,图11示出相对于编码对象预言单元,已编码结束的参照帧中的预言单元的位置。图11中的Col表示在参照帧内的处于与编码对象预言单元相同的位置的预言单元。图12表示多个预测运动信息候补951的块位置和索引Mvpidx的关系的列表的一个例子。Mvpidx为O?2表示位于空间方向的预测运动矢量候补951,Mvpidx为3表示位于时间方向的预测运动矢量候补951。关于预言单元位置A,是图10所示的AX内的帧间预测、即具有参照运动信息166的预言单元,将X值为最小的位置设为预言单元位置A。另外,关于预言单元位置B,是图10所示的BY内的帧间预测、即具有参照运动信息166的预言单元,将Y的值为最小的位置设为预言单元位置A。在预言单元位置C不是帧间预测的情况下,将预言单元位置D的参照运动信息166置换为预言单元位置C的参照运动信息166。在预言单元位置C以及D不是帧间预测的情况下,将预言单元位置E的参照运动信息166置换为预言单元位置C的参照运动信息166。
[0126]在编码对象预言单元的尺寸比最小预言单元大的情况下,预言单元位置Col能够在时间方向参照运动信息存储器502中保持多个参照运动信息166。该情况下,依照参照位置信息164取得位置Col的预言单元中的参照运动信息166。以后,将位置Col的预言单元中的参照运动信息166的取得位置称为参照运动信息取得位置。图13A?F针对每个编码对象预言单元的尺寸(32X32?16X16)示出参照位置信息164表示位置Co I的预言单元的中心的情况下的参照运动信息取得位置的一个例子。图中的块分别示出4X4预言单元,圆记号表示作为预测运动信息候补951而取得的4X4预言单元的位置。参照运动信息取得位置的另一个例子在图14A?F中示出。在图14A?F中,关于圆记号的位置,由于不存在4X4预言单元,所以以与圆记号相邻的4个4X4预言单元中的参照运动信息166的平均值、中间值这样的预定方式来生成预测运动信息候补951。作为参照运动信息取得位置的又一其他的一个例子,也可以将位于位置Col的预言单元的左上端的4X4预言单元的参照运动信息166作为预测运动信息候补951。即使是上述的例子以外的方式,只要是预定的方式,则可以使用任意的位置以及方式来生成预测运动信息候补951。
[0127]另外,在参照运动信息166不存在的情况下,将具有零矢量的运动信息160作为预测运动信息候补951来输出。
[0128]根据以上内容,从参照运动块输出至少一个以上的预测运动信息候补951。在上述的预测运动信息候补951所具有的参照帧编号和编码对象预言单元的参照帧编号不同的情况下,也可以将预测运动信息候补951依照预测运动信息候补951所具有的参照帧编号和编码对象预言单元的参照帧编号来进行按比例缩放(scaling)。
[0129]预测运动信息选择开关902根据来自编码控制部114的指令从多个预测运动信息候补951中选择一个,然后输出预测运动信息952。另外,预测运动信息选择开关902也可以输出后述的预测运动信息位置信息954。上述选择也可以使用数学式(1)、(2)这样的评价函数来选择。减法部903从运动信息160减去预测运动矢量信息952,将差分运动信息953输出到差分运动信息编码部904。差分运动信息编码部904对差分运动信息953进行编码处理,输出编码数据960A。另外,在跳过模式以及合并模式下,在差分运动信息编码部904中不需要差分运动信息953的编码。
[0130]预测运动信息位置编码部905对图12中所示的列表中的表示选择哪个预测运动信息候补951的预测运动信息位置信息954(Mvpidx)进行编码,输出编码数据960B。预测运动信息位置信息954使用根据预测运动信息候补951的总数来生成的等长编码、可变长度编码来进行编码。也可以利用与邻接块的相关性来进行可变长度编码。进而,也可以在多个预测运动信息候补951中具有重复的信息的情况下,根据删除了重复的预测运动信息候补951的预测运动信息候补951的总数来制作代码表,对预测运动信息位置信息954进行编码。另外,在预测运动信息候补951的总数是一种的情况下,由于该预测运动信息候补951被决定为预测运动信息952,所以不需要对预测运动信息位置信息954进行编码。
[0131]另外,在跳过模式、合并模式、帧间模式的各个中,不需要预测运动信息候补951的导出方法相同,可以分别独立地设定预测运动信息候补951的导出方法。在本实施方式中,设跳过模式和帧间模式的预测运动信息候补951的导出方法相同、合并模式的预测运动信息候补951的导出方法不同来进行说明。
[0132]〈运动信息压缩部109的详细内容〉
[0133]首先,关于运动信息压缩处理使用图15来进行说明。在图15中,对空间方向参照运动信息存储器501的参照运动信息166进行压缩,并保存到时间方向参照运动信息存储器502。在空间方向参照运动信息存储器501中针对每个运动信息压缩块(在同图中为16X16像素块)将代表运动信息位置所保持的参照运动信息166保存于时间方向参照运动信息存储器502。在进行上述的运动信息编码处理的情况下,将之前所述的参照运动信息取得位置所保持的参照运动信息166设定为预测运动信息候补951。此时,也可以假想地设为运动信息压缩块内具有相同的参照运动信息166,将之前所述的参照运动信息取得位置所保持的参照运动信息166设定为预测运动信息候补951(导出相同的预测运动信息候补951)。
[0134]接下来,关于运动信息压缩部109使用图16所示的流程图来进行说明。运动信息压缩部109在帧(或者片、编码单元等任意的单位)的编码处理结束了时,对运动信息160进行压缩,并将运动信息160保存于时间方向参照运动信息存储器502。
[0135]首先,从编码控制部114取得参照位置信息164(步骤S1601),将帧分割为作为运动信息160的压缩单位的运动信息压缩块(步骤S1602)。运动信息压缩块是比通过运动补偿处理而保持运动信息160的单位(典型情况为4X4像素块)大的像素块,典型情况为16 X 16像素块。运动信息压缩块也可以是64X64像素块、32X32像素块、8X8像素块、长方形像素块、任意的形状的像素区域。
[0136]其次,依照参照位置信息164来生成代表运动信息位置(步骤S1603)。作为生成代表运动信息位置的一个例子,将运动信息压缩块为16X 16像素块的情况以及图13D、图14D、图17D分别示出的预言单元的尺寸为16X16的情况下的参照运动信息取得位置作为代表运动信息位置。接下来,将所生成的代表运动信息位置的参照运动信息166设定为代表运动信息(步骤S1604),将该代表运动信息保存于时间方向参照运动信息存储器(步骤S1605)。对全部的运动信息压缩块执行上述的步骤S1604?S1605。
[0137]当将保持有运动信息160的单位设为MXM块,将运动信息压缩块的尺寸设为NXN(N为M的倍数)时,通过执行上述运动信息压缩处理,能够将参照运动信息存储器的容量削减为(MXM)/(NXN)。
[0138]〈代表运动信息位置的其他的实施方式〉
[0139]作为生成代表运动信息位置的其他的例子,可以将多个参照运动信息取得位置的中心位置设为代表运动信息位置。图18A以及图18B示出尺寸为16X16的每个运动压缩块的代表运动信息位置。图18A示出参照运动信息取得位置是图13D所示出的位置的情况下的代表运动信息位置,同样图18B示出参照运动信息取得位置是图17D所示出的位置的情况下的代表运动信息位置。图18A以及图18B中圆记号表示预言单元是16 X 16块时的参照运动信息取得位置,在4点的参照运动信息取得位置的中心位置(也称为重心位置)配置用叉记号表示的代表运动信息位置。
[0140]作为生成代表运动信息位置又一其他的例子,也可以具有多个预言单元的每个尺寸的参照运动信息取得位置作为参照位置信息164,根据多个参照运动信息取得位置来生成代表运动信息位置。
[0141]作为生成代表运动信息位置的一个例子,也可以具有多个预言单元的每个尺寸的参照运动信息取得位置作为参照位置信息164,根据多个参照运动信息取得位置来生成代表运动信息位置。图19分别示出树块为64 X 64像素块的情况下的预言单元的尺寸为16 X 16以上的各尺寸下的预言单元的中心(参照运动信息取得位置)。
[0142]作为生成代表运动信息位置其他的例子,也可以使用针对每个运动信息压缩块所配置的参照运动信息取得位置来设定代表运动信息位置。图20A示出将每个运动信息压缩块的多个参照运动信息取得位置的重心设定为代表运动信息位置的情况下的例子。在重心位置与4 X 4块的位置不一致的情况下,既可以将最接近的4 X 4块作为代表运动信息位置,也可以使用双线性内插法等内插法来生成重心位置的参照运动矢量166。
[0143]另外,图20B示出针对每个运动信息压缩块选择多个参照运动信息取得位置中的某一个,设定为代表运动信息位置的情况下的例子。
[0144]进一步,图21A、图21B中进一步示出在树块内在各运动信息压缩块中将参照运动信息取得位置设为相同的情况下的例子。由于在全部运动信息压缩块内是相同的代表运动信息位置,所以不需要根据树块内的位置来切换代表运动信息位置。另外,代表运动信息位置除了图21A、图21B以外,还可以处于运动信息压缩块内的左上端、右上端等任意的位置。
[0145]作为生成代表运动信息位置的一个例子,也可以使用按照Z扫描顺序示出运动信息压缩块内的4X4块位置的BlkIdx来示出代表运动信息位置。在运动信息压缩块的尺寸为16 X 16的情况下,图21A所示的代表运动信息位置相当于BlkIdx= 12的位置。另外,图21B所示的代表运动信息位置相当于BI k I dx = 15的位置。
[0146]作为运动信息压缩处理中的其他的一个例子,为了削减与参照帧编号有关的存储器容量,可以在运动信息压缩处理中包含参照帧编号。该情况下,将代表运动信息位置所保持的参照帧编号保存于与参照帧编号有关的存储器容量中。因此,图5所示的空间方向参照运动信息存储器501以及时间方向参照运动信息存储器502在运动矢量信息中追加,保存参照帧编号。
[0147]作为运动信息压缩处理中的又一其他的一个例子,在运动信息压缩处理中不包含参照帧编号的情况下,也可以对于位于代表运动信息位置的运动信息内的运动矢量信息,使用参照帧编号来实施按比例缩放处理并保存于运动信息存储器110。作为按比例缩放处理的典型例子,有将参照帧编号零作为基准的线性按比例缩放处理。这是在参照帧编号为零以外的值的情况下运动矢量信息以参照与参照帧编号零对应的参照帧的方式进行线性按比例缩放处理的处理。上述按比例缩放处理的基准也可以是参照帧编号为零以外的值。在进行上述的线性按比例缩放处理的情况发生除法的情况下,可以预先使除法处理表格化,每次通过查表来实现上述除法。
[0148]在运动信息压缩块的尺寸为16X 16块以外的情况下,使用与上述同样的处理来生成代表运动信息位置。在一个例子中,运动信息压缩块的尺寸为64X64的情况下,将预言单元的尺寸为64X64中的参照运动信息取得位置设为代表运动信息位置。在又一其他的一个例子中,也可以将对图21A、图21B等中所示的运动信息压缩块的尺寸为16X16块中的代表运动信息位置依照运动信息压缩块的尺寸在水平方向以及垂直方向进行按比例缩放而得到的位置设为代表运动信息位置。
[0149]在代表运动信息位置设为图片、片之外,不存在参照运动信息的情况下,也可以将在运动信息压缩块的左上端这样的运动信息压缩块内能够取得参照运动信息的位置置换为新的代表运动信息位置。另外,代表运动信息位置是应用了帧内预测的区域,在参照运动信息不存在的情况下也可以执行同样的处理,置换为新的代表运动信息位置。
[0150]〈语法结构〉
[0151]以下,关于图1的图像编码装置100所使用的语法进行说明。
[0152]语法示出图像编码装置在对运动图像数据进行编码时的编码数据(例如、图1的编码数据163)的构造。在对该编码数据进行解码时,参照同样的语法构造,由运动图像解码装置进行语法解释。在图22中例示了图1的运动图像编码装置所使用的语法2200。
[0153]语法2200包含高级语法2201、片级语法2202以及编码树级语法2203这3个部分。高级语法2201包含比片上位的层的语法信息。所谓片是指帧或者场所包含的矩形区域或者连续区域。片级语法2202是包含为了对各片进行解码所需要的信息。编码树级语法2203包含为了对各编码树(即、各编码树单元)进行解码所需要的信息。这些各部分进一步包含详细的语法。
[0154]高级语法2201包含序列参数集语法2204以及图片参数集语法2205等的序列以及图片级的语法。片级语法2202包含片头语法2206以及片数据语法2207等。编码树级语法2203包含编码树单元语法2208、变换单元语法2209以及预言单元语法2210等。
[0155]编码树单元语法2208能够具有四叉树构造。具体而言,作为编码树单元语法2208的语法要素,能够进一步对编码树单元语法2208进行递归调用。即、能够用四叉树对I个编码树单元进行细化。另外,编码树单元语法2208内包含变换单元语法2209以及预言单元语法2210。变换单元语法2209以及预言单元语法2210在四叉树的最末端的各编码树单元语法2208中被调用。预言单元语法2210记述了关于预测的信息,变换单元语法2209记述了关于反正交变换以及量化等的信息。
[0156]图23例示了本实施方式所涉及的序列参数集语法2204。图23A以及图23B所示出的mot1n_vector_buffer_comp_flag是关于该序列表示本实施方式所涉及的运动信息压缩的有效/无效的语法。在mot1n_vector_buffer_comp_f lag为O的情况下,关于该序列,本实施方式所涉及的运动信息压缩为无效。因此,图1所示出的运动信息压缩部的处理被跳过。作为一个例子,在!1101:;[011_^(31:01'_1311打61'_(3011^1_;1^138为I的情况下,关于该序列,本实施方式所涉及的运动信息压缩为有效。图23以及图23B所示出的mot1n_vector_buffer_comp_rat1_log2是表示运动信息压缩处理的单位的信息,在mot1n_vector_buffer_comp_f lag为I的情况下被示出。mot1n_vector_buffer_comp_rat1_log2表示例如本实施方式所涉及的运动信息压缩块的尺寸的信息,关于mot1n_vector_buffer_comp_rat1_log2,对运动补偿的最小单位乘以而得到的值为运动信息压缩块的尺寸。以下示出运动补偿的最小单位为4 X 4像素块的、即参照运动信息存储器以4 X 4像素块为单位保持的情况下例子。在mot1n_vector_buffer_comp_rat1_log2为I的情况下,本实施方式所涉及的运动信息压缩块的尺寸为8 \8像素块。同样地,在!1101:;[011_^(31:01'_131^€61'_(:01^_作^0_1呢2为2的情况下,本实施方式所涉及的运动信息压缩块的尺寸为16\16像素块。图23B所示出的mot1n_vector_buffer_comp_posit1n是示出运动信息压缩块内的代表运动信息位置的信息,在mot1n_vector_buffer_comp_f lag为I的情况下被示出。1]101:;[011_^(31:01'_131^€61'_(3011^)_口08;[1:;[011也可以不出例如图214、图2113所不那样的运动信息压缩块内的参照运动信息位置,或者图20A、图20B所示那样示出每个运动信息压缩块的参照运动信息位置。另外,也可以处于多个块的中心。
[0157]另外,作为其他的例子,也可以在比mot1n_vector_buffer_comp_flag、mot1n_vector_buffer_comp_rat1_log2、mot1n_vector_bufTer_comp_posit1n下位的层(图片参数集语法、片级语法、编码树单元、变换单元等)的语法中不针对该片内部的每个局部区域规定本实施方式所涉及的预测的有效/无效。
[0158]图24中示出预言单元语法的一个例子。图中的skip_flag是表示预言单元语法所属的编码单元的预测模式是否是跳过模式的标志。在skip_flag为I的情况下,示出不对预测运动信息位置信息954以外的语法(编码单元语法、预言单元语法、变换单元语法)进行编码。NumMVPCand (LO)、NumMVPCand (LI)分别示出列表O预测、列表I预测中的预测运动信息候补951的数量。在存在预测运动信息候补951(NumMVPCand(LX)>0、X = 0或I)的情况下,对表示预测运动信息位置信息954的mvp_idx_lX进行编码。
[0159]在skip_flag为O的情况下,示出预言单元语法所属的编码单元的预测模式不是跳过模式。NumMergeCandidates示出在图12等中导出的预测运动信息候补951的数量。在存在预测运动信息候补951 (NumMergeCandidates>0)的情况下,对作为表示预言单元是否是合并模式的标志的merge_flag进行编码。merge_flag在其值为I的情况下,示出预言单元是合并模式,在其值是O的情况下,示出预言单元使用帧间模式。在merge_flag为I且预测运动信息候补951存在2个以上(NumMergeCandidates>l)的情况下,对预测运动信息候补951内的表示从哪个块进行合并的预测运动信息952S卩mergejdx进行编码。
[Ο??Ο] 在merge_flag为I的情况下,不需要对merge_flag、merge_idx以外的预言单元语法进行编码。
[0161]在merge_flag为O情况下,示出预言单元为帧间模式。在帧间模式中,在示出差分运动信息953所包含的差分运动矢量信息的mvd_lX(X = 0或者1)、参照帧编号为ref_idx_IX、B片的情况下,对示出预言单元为单向预测(列表O或者列表I)还是双向预测的inter_pred_idc进行编码。另外,与跳过模式同样地,取得NumMVPCand(LO)、NumMVPCand(LI),在存在预测运动信息候补951 (NumMVPCand (LX) >0、X = O或I)的情况下,对示出预测运动信息位置信息954的mvp_idx_lX进行编码。
[0162]以上是本实施方式所涉及的语法结构。
[0163](第2实施方式)
[0164]第2实施方式是关于运动图像解码装置。与本实施方式所涉及的运动图像解码装置相对应的运动图像编码装置如在第I实施方式中说明的那样。即、本实施方式所涉及的运动图像解码装置对由例如第I实施方式所涉及的运动图像编码装置生成的编码数据进行解码。
[0165]如图25所示,本实施方式所涉及的运动图像解码装置包含熵解码部2501、反量化部2502、反正交变换部2503、加法部2504、参照图像存储器2505、帧间预测部2506、参照运动信息存储器2507、参照运动信息压缩部2508以及解码控制部2510。
[0166]图25的运动图像解码装置对编码数据2550进行解码,将解码图像信号2554蓄积于输出缓存器2511,并作为输出图像进行输出。编码数据2550从例如图1的运动图像编码装置等中被输出,经由未图示的蓄积系统或者传送系统被输入到运动图像解码装置2500。
[0167]熵解码部2501为了编码数据2550的解码而根据语法进行译码。熵解码部2501依次对各语法的代码串进行熵解码,对运动信息2559、量化变换系数2551等的编码对象块的编码参数进行再生。所谓编码参数是预测信息、与变换系数有关的信息、与量化有关的信息等的解码所需要的参数。
[0168]具体而言,熵解码部2501如图26所示,具备分离部2601、参数解码部2602、变换系数解码部2603、以及运动信息解码部2604。分离部2601将编码数据2550进行分离,将与参数有关的编码数据2651A输出给参数解码部2602,将与变换系数有关的编码数据2651B输出给变换系数解码部2603,将与运动信息有关的编码数据2651C输出给运动信息解码部2604。参数解码部2602对预测信息等的编码参数2570进行解码,输出编码参数2570,并输出给解码控制部2510。变换系数解码部2603输入编码数据2651B,对变换系数信息2551进行解码,并输出给反量化部2502。
[0169]运动信息解码部2604分别从分离部2601接收编码数据2651C,从解码控制部2510接收参照位置信息2560,从参照运动信息存储器2507接收参照运动信息2558,输出运动信息2559。被输出的运动信息2559被输入到帧间预测部2506。
[0170]运动信息解码部2604如图27所示那样,包含分离部2701、差分运动信息解码部2702、预测运动信息位置解码部2503、参照运动信息取得部2704、预测运动信息选择开关2705以及加法部2706。
[0171 ]将与运动信息有关的编码数据2651C输入到分尚部2701,分尚为与差分运动信息有关的编码数据2751和与预测运动信息位置有关的编码数据2752。差分运动信息编码部2702输入与差分运动信息有关的编码数据2751,对差分运动信息2753进行解码。差分运动信息2753在加法部2706与后述的预测运动信息2756进行相加,输出运动信息2759。预测运动信息位置解码部2703输入与预测运动信息位置有关的编码数据2752,对预测运动信息位置2754进行解码。
[0172]预测运动信息位置2754被输入到预测运动信息选择开关2705,从预测运动信息候补2755中选择预测运动信息2756。预测运动信息位置信息2560使用根据预测运动信息候补2755的数量生成的等长解码、可变长度解码来进行解码。也可以利用与相邻块之间的相关性来进行可变长度解码。进而,在多个预测运动信息候补2755中有重复的情况下,也可以利用根据删除了重复的预测运动信息候补2755的总数生成的代码表,解码预测运动信息位置信息2560。另外,在预测运动信息候补2755的总数是I种的情况下,由于该预测运动信息候补2755被决定为预测运动信息2556,所以不需要对预测运动信息位置信息2754进行解码。
[0173]参照运动信息取得部2704其结构、处理内容与在第I实施方式中说明过的参照运动信息取得部901相同。[Ο174] 参照运动信息取得部2704将参照运动信息2558以及参照位置信息2560作为输入,生成至少一个以上的预测运动信息候补2755(2755Α、2755Β、...)。图10、图11示出针对解码对象预言单元的预测运动信息候补2755的位置的一个例子。图10示出与解码对象预言单元在空间上相邻的预言单元的位置。ΑΧ(Χ = 0?nA-1)表示相对于对象预言单元在左侧相邻的预言单元,BY( Y = O?nB-1)表示相对于对象预言单元在上侧相邻的预言单元,C、D、E表示相对于解码对象预言单元分别在右上、左上、左下相邻的预言单元。另外,图11示出相对于解码对象预言单元,已经解码结束的参照帧中的预言单元的位置。图中的Col表示在参照帧内且处于与解码对象预言单元相同位置的预言单元。图12示出表示多个预测运动信息候补2755的块位置和索引Mvpidx的关系的列表的一个例子。Mvpidx为O?2表示位于空间方向的预测运动信息候补2755,Mvpidx为3表示位于时间方向的预测运动矢量候补2755。关于预言单元位置A,是图10所示的AX内的帧间预测、即具有参照运动信息2558的预言单元,将X的值为最小的位置设为预言单元位置A。另外,关于预言单元位置B,是图10所示的BY内的帧间预测、即具有参照运动信息2558的预言单元,将Y的值最小的位置设为预言单元位置A。在预言单元位置C不是帧间预测的情况下,将预言单元位置D的参照运动信息2558置换为预言单元位置C的参照运动信息2558。在预言单元位置C以及D不是帧间预测的情况下,将预言单元位置E的参照运动信息2558置换为预言单元位置C的参照运动信息2558。
[0175]在解码对象预言单元的尺寸比最小预言单元大的情况下,预言单元位置Col能够将多个参照运动信息2558保持在时间方向参照运动信息存储器2507。在该情况下,依照参照位置信息2560来取得位置Col的预言单元中的参照运动信息2558。以后,将位置Col的预言单元中的参照运动信息2558的取得位置称为参照运动信息取得位置。图13A?F针对每个解码对象预言单元的尺寸(32 X 32?16 X 16)示出参照位置信息2560表示位置Col的预言单元的中心的情况下的参照运动信息取得位置的一个例子。图中的块分别表示4X4预言单元,圆记号表示作为预测运动信息候补2755而取得的4X4预言单元的位置。在图14A?F中示出参照运动信息取得位置的其他的一个例子。在图14A?F中,由于圆记号的位置不存在4X4预言单元,所以以与圆记号相邻的4个4X4预言单元中的参照运动信息2558的平均值、中间值这样的预定方式来生成预测运动信息候补2755。作为参照运动信息取得位置的又一其他的一个例子,也可以将位于位置Col的预言单元的左上端的4X4预言单元的参照运动信息2558设为预测运动信息候补2755。在上述的例子以外,只要是预定的方式,则可以使用任意的位置以及方式来生成预测运动信息候补2755。
[0176]另外,在不存在参照运动信息2558的情况下,将具有零矢量的运动信息2559作为预测运动信息候补2755进行输出。
[0177]根据以上内容,从参照运动块输出至少一个以上的预测运动信息候补2755。在上述的预测运动信息候补2755具有的参照帧编号与解码对象预言单元的参照帧编号不同的情况下,也可以依照预测运动信息候补2755所具有的参照帧编号和解码对象预言单元的参照帧编号,对预测运动信息候补2755进行按比例缩放。预测运动信息选择开关2705依照预测运动信息位置2754从多个预测运动信息候补2755中选择一个,输出预测运动信息2756。
[0178]反量化部2502对来自熵解码部2501的量化变换系数2551进行反量化,得到恢复变换系数2552。具体而言,反量化部2502按照由熵解码部2501解码了的与量化有关的信息进行反量化。反量化部2502将恢复变换系数2552输出到反正交变换部2503。
[0179]反正交变换部2503对于来自反量化部2502的恢复变换系数2552进行与在编码侧进行的正交变换相对应的反正交变换,得到恢复预测误差信号2553。反正交变换部2503将恢复预测误差信号2553输入到加法部2504。
[0180]加法部2504将恢复预测误差信号2553和对应的预测图像信号2556相加,生成解码图像信号2554。解码图像信号2554实施未图示的去块滤波、维纳滤波等,为了输出图像而临时蓄积在输出缓存器2511,并且为了参照图像信号2555还被保存于参照图像存储器2505。在参照图像存储器2505所保存的解码图像信号2554设为参照图像信号2555,通过帧间预测部2506根据需要以帧为单位或者以场为单位来被参照。临时蓄积在输出缓存器2511的解码图像信号2554依照由解码控制部2510管理的输出定时而被输出。
[0181]帧间预测部2506利用保存于参照图像存储器2505的参照图像信号2555进行帧间预测。具体而言,帧间预测部2506从熵解码部2501取得包含预测对象块和参照图像信号2555之间的运动的偏差量(运动矢量)的运动信息2559,根据该运动矢量进行插值处理(运动补偿),生成帧间预测图像。关于帧间预测图像的生成,与第一实施方式相同,所以省略说明。
[0182]解码控制部2510对图25的运动图像解码装置的各要素进行控制。具体而言,解码控制部2510将后述的参照位置信息2560输出到熵解码部2501、或者进行用于包含上述动作的解码处理的各种控制。
[0183]〈跳过模式、合并模式、帧间模式的说明〉
[0184]本实施方式所涉及的图像解码装置2500使用图8所示的解码处理不同的多个预测模式。图中的跳过模式是仅对与后述的预测运动信息位置2754有关的语法进行解码、对于其他的语法不进行解码的模式。合并模式是仅对与预测运动信息位置2754有关的语法、变换系数信息2551进行解码,对其他的语法不进行解码的模式。帧间模式是对与预测运动信息位置2754有关的语法、后述的差分运动信息2753、变换系数信息2551进行解码的模式。这些模式通过解码控制部2510所控制的预测信息2571来进行切换。
[0185]另外,图25的运动图像解码装置使用与图28说明的语法相同或者类似的语法,所以省略其详细的说明。
[0186]〈运动信息压缩部2508的详细内容〉
[0187]接着,关于运动信息压缩部2508,使用图16所示的流程图来进行说明。运动信息压缩部2508在帧(或者片、编码单元等任意的单位)的解码处理结束了时,对运动信息2559进行压缩,在时间方向参照运动信息存储器502中保存运动信息2559。
[0188]首先,从解码控制部2510取得参照位置信息2560(步骤S1601),将帧分割为作为运动信息2559的压缩单位的运动信息压缩块(步骤S1602)。运动信息压缩块是比利用运动补偿处理保持运动信息2559的单位(典型的情况是4X4像素块)大的像素块,典型的情况是16X 16像素块。运动信息压缩块也可以是32 X 32像素块、8X8像素块、长方形像素块、任意形状的像素区域。
[0189]其次,按照参照位置信息2560生成代表运动信息位置(步骤S1603)。作为生成代表运动信息位置的一个例子,将运动信息压缩块为16 X 16像素块的情况下、图13D、图14D、图17D分别示出的预言单元的尺寸为16X16的情况下的参照运动信息取得位置设为代表运动信息位置。其次,将生成的代表运动信息位置的参照运动信息2558设定为代表运动信息(步骤S1605),将该代表运动信息保存于时间方向参照运动信息存储器(步骤S1606)。对于全部的运动信息压缩块执行上述的步骤S1604?S1605。
[0190]将保持运动信息2559的单位设为MXM块,将运动信息压缩块的尺寸设为NX N(N是M的倍数),通过执行上述运动信息压缩处理能够将参照运动信息存储器的容量削减为(MXM)/(NXN)0
[0191]〈代表运动信息位置的其他的实施方式〉
[0192]作为生成代表运动信息位置的其他的例子,也可以将多个参照运动信息取得位置的中心位置设为代表运动信息位置。图18A以及图18B示出尺寸为16X16的每个运动压缩块的代表运动信息位置。图18A示出参照运动信息取得位置是图13D所示出的位置的情况下的代表运动信息位置,同样地图18B示出参照运动信息取得位置是图17D所示出的位置的情况下的代表运动信息位置。图18A以及图18B中圆记号表示预言单元为16 X 16时的参照运动信息取得位置,在4点的参照运动信息取得位置的中心位置配置用叉记号表示的代表运动信息位置。
[0193]作为生成代表运动信息位置的又一其他的例子,也可以具有多个预言单元的尺寸中的每个尺寸的参照运动信息取得位置作为参照位置信息2560,根据多个参照运动信息取得位置生成代表运动信息位置。图19分别示出树块为64 X 64像素块的情况下的预言单元的尺寸为16X16以上的各尺寸下的预言单元的中心(参照运动信息取得位置)。
[0194]作为生成代表运动信息位置的其他的一个例子,代表运动信息位置可以使用针对每个运动信息压缩块而配置的参照运动信息取得位置来进行设定。图20A示出将每个运动信息压缩块的多个参照运动信息取得位置的重心设定为代表运动信息位置的情况下的例子。在重心位置与4X4块的位置不一致的情况下,既可以将最接近的4X4块作为代表运动信息位置,也可以使用双线性内插法等的内插法来生成重心位置的参照运动矢量166。
[0195]另外,图20B示出针对每个运动信息压缩块选择多个参照运动信息取得位置中的某一个,设定为代表运动信息位置的情况下的例子。
[0196]进而,在图21A、B进一步示出在树块内在各运动信息压缩块中将参照运动信息取得位置设为相同的情况下的例子。由于在全部的运动信息压缩块内是相同的代表运动信息位置,所以不需要根据树块内的位置来切换代表运动信息位置。另外,代表运动信息位置除了图21A、B以外,还可以位于运动信息压缩块内的左上端、右上端等任意位置。
[0197]作为生成代表运动信息位置的一个例子,可以使用按照Z扫描顺序来表示运动信息压缩块内的4 X 4块位置的BlkIdx来表示代表运动信息位置。在运动信息压缩块的尺寸为16乂16的情况下,图214所示出的代表运动信息位置相当于犯1^1办=12的位置。另外,图218所示出的代表运动信息位置相当于BI k I dx = 15的位置。
[0198]作为运动信息压缩处理的其他的一个例子,为了削减与参照帧编号有关的存储器容量,可以在运动信息压缩处理中包含参照帧编号。在该情况下,将代表运动信息位置所保持的参照帧编号保存于与参照帧编号有关的存储器容量。因此,图5所示出的空间方向参照运动信息存储器501以及空间方向参照运动信息存储器502在运动矢量信息中追加并保存参照帧编号。
[0199]作为运动信息压缩处理的又一其他的一个例子,在运动信息压缩处理中不包含参照帧编号的情况下,也可以对位于代表运动信息位置的运动信息内的运动矢量信息使用参照帧编号实施按比例缩放处理,并保存于运动信息存储器110。作为按比例缩放处理的典型例子,有将参照帧编号零设为基准的线性按比例缩放处理。这是在参照帧编号为零以外的值的情况下,运动矢量信息以参照与参照帧编号零对应的参照帧的方式进行线性按比例缩放处理的处理。上述的按比例缩放处理的基准也可以是参照帧编号为零以外的值。在进行上述的线性按比例缩放处理时发生除法的情况下,也可以预先使除法处理进行表格化,每次通过查表来实现上述除法。
[0200]在运动信息压缩块的尺寸为16X 16块以外的情况下,使用与上述相同的处理来生成代表运动信息位置。在一个例子中,在运动信息压缩块的尺寸为64X64的情况下,设预言单元的尺寸为64X64中的参照运动信息取得位置为代表运动信息位置。在又一其他的一个例子中,也可以将对在图21A、图21B等示出的运动信息压缩块的尺寸为16X16块中的代表运动信息位置按照运动信息压缩块的尺寸在水平方向以及垂直方向进行按比例缩放了的位置设为代表运动信息位置。
[0201]在代表运动信息位置设为是图片、片以外而不存在参照运动信息的情况下,可以将在运动信息压缩块的左上端这样的运动信息压缩块内能够取得参照运动信息的位置置换为新的代表运动信息位置。另外,在代表运动信息位置是应用了帧内预测的区域,并且不存在参照运动信息的情况下,也可以执行同样的处理,置换为新的代表运动信息位置。
[0202]以下,以各实施方式的变形例为例子来进行介绍。
[0203]在第I以及第2实施方式中,对将帧分割为16X 16像素尺寸等的矩形块,从画面左上的块向右下依次进行编码/解码的例子进行说明(参照图2A)。但是,编码顺序以及解码顺序不限于该例子。例如、既可按照从右下向左上的顺序进行编码以及解码,也可以从画面中央向画面端部以绘出螺旋的方式进行编码以及解码。进而,既可以从右上向左下按顺序进行编码以及解码,也可以从画面端部向画面中央以绘出螺旋的方式进行编码以及解码。
[0204]在第I以及第2实施方式中,例示出4X4像素块、8X8像素块、16X 16像素块等的预测对象块尺寸来进行说明,但预测对象块即使不是均匀的块形状也可以。例如、预测对象块(预言单元)尺寸可以是16X8像素块、8 X 16像素块、8X4像素块、4 X 8像素块等。另外,在I个编码树单元内不需要使全部的块尺寸统一,可以混合存在多个不同块尺寸。在I个编码树单元内混合存在多个不同块尺寸的情况下,伴随着分割数的增加,用于对分割信息进行编码或者解码的代码量也增加。于是,希望考虑分割信息的代码量和局部解码图像或者解码图像的品质之间的平衡来选择块尺寸。
[0205]在第I以及第2实施方式中,为了简化,不区分亮度信号和色差信号,关于色信号分量记述了总括性的说明。但是预测处理在亮度信号和色差信号之间不同的情况下,也可以使用相同或者不同的预测方法。如果在亮度信号和色差信号之间使用不同的预测方法,则能够以与亮度信号相同的方法对针对色差信号选择出的预测方法来进行编码或者解码。
[0206]在第I以及第2实施方式中,为了简化,不区分亮度信号和色差信号,关于色信号分量记述了总括性的说明。但是在正交变换处理在亮度信号和色差信号之间不同的情况下,也可以使用相同的或者不同的正交变换方法。如果在亮度信号与色差信号之间使用不同的正交变换方法,则能够以与亮度信号同样的方法对针对于色差信号选择出的正交变换方法来进行编码或者解码。
[0207]在第I以及第2实施方式中,既可以在语法结构所示出的表的行间插入在实施方式未规定的语法要素,也可以包含与其以外的条件分支有关的记述。或者,还能够将语法表分害J、统合成多个表。另外,未必需要使用相同的术语,可以根据所使用的方式而进行任意地变更。
[0208]如以上说明那样,各实施方式能够在缓解硬件安装以及软件安装中的困难性的同时,实现高效的正交变换以及反正交变换。因此,根据各实施方式,编码效率提高,进而主观画质也提尚。
[0209]另外,上述实施方式中所示出的处理步骤所示的指示能够根据作为软件的程序来执行。也能够使通用的计算机系统预先存储该程序,通过读取该程序得到与上述的实施方式的运动图像编码装置以及运动图像解码装置实现的效果同样的效果。在上述的实施方式中记述的指示作为能够由计算机执行的程序,被记录于磁盘(软盘、硬盘等)、光盘(CD-ROM、CD-R、CD-RW、DVD-ROM、DVD±R、DVD±R W等)、半导体存储器、或者与这些类似的记录介质。只要是计算机或者嵌入式系统能够读取的记录介质,则其存储形式可以是任意的方式。计算机从该记录介质读取程序,只要根据该程序在CPU中执行程序所记述的指示,则能够实现与上述的实施方式的运动图像编码装置以及运动图像解码装置相同的动作。当然,在计算机取得或读入程序的情况下,也可以通过网络来取得或者读入。
[0210]另外,根据从记录介质安装到计算机或者嵌入式系统的程序的指示而在计算机上进行工作的OS(操作系统)、数据库管理软件、网络等的MW(中间软件)等可以执行用于实现本实施方式的各处理的一部分。
[0211]进而,本申请发明的实施方式中的记录介质不限于与计算机或者嵌入式系统独立的介质,还包含下载并存储或者临时存储通过LAN、因特网等所传达的程序的记录介质。另夕卜,也可以将实现上述各实施方式的处理的程序保存于与因特网等的网络连接的计算机(服务器)上,经由网络使计算机(客户机)下载。
[0212]另外,记录介质不限于I个,在从多个介质执行本实施方式的处理的情况下,也可以包含于本发明的实施方式的记录介质中,介质的结构可以是任意的结构。
[0213]另外,本申请发明的实施方式中的计算机或者嵌入式系统是根据记录介质所存储的程序执行本实施方式的各处理的装置,可以是个人电脑、微型计算机等之一构成的装置、网络连接了多个装置的系统等任意的结构。
[0214]另外,所谓本申请发明的实施方式中的计算机不限于个人电脑,还包含信息处理设备所包含的运算处理装置、微型计算机等,是对能够通过程序来实现本发明的实施方式的功能的设备、装置的总称。
[0215]对本发明的一些实施方式进行了说明,但是这些实施方式是作为例子而被提示的,并不意图限定本发明的范围。这些新的实施方式能够通过其他各种各样的方式来实施,在不脱离发明的要旨的范围内进行各种省略、置换、变更。这些实施方式、及其变形被包含于发明的范围和主旨中,并且包含于权利要求书记载的发明和其均等的范围中。
【主权项】
1.一种运动图像编码方法,将输入图像信号分割成像素块,对这些分割出的像素块进行帧间预测, 在该运动图像编码方法中,从编码结束了的区域内的多个运动信息中,根据依照表示预测运动信息的选择方法的第I信息而取得的信息,选择预测运动信息,使用所述预测运动信息来预测编码对象块的运动信息, 所述第I信息包含用于选择所述运动信息的确定所述编码对象块内的位置的第2信息。2.—种运动图像编码装置,将输入图像信号分割成像素块,对这些分割出的像素块进行帧间预测, 所述运动图像编码装置具备预测部,所述预测部从编码结束了的区域内的多个运动信息中,根据依照表示预测运动信息的选择方法的第I信息而取得的信息,选择预测运动信息,使用所述预测运动信息来预测编码对象块的运动信息, 所述第I信息包含用于选择所述运动信息的确定所述编码对象块内的位置的第2信息。3.—种运动图像解码方法,将输入图像信号分割成像素块,对这些分割出的像素块进行帧间预测, 在该运动图像解码方法中,从解码结束了的区域内的多个运动信息中,根据依照表示预测运动信息的选择方法的第I信息而取得的信息,选择预测运动信息,使用所述预测运动信息来预测解码对象块的运动信息, 所述第I信息包含用于选择所述运动信息的确定所述解码对象块内的位置的第2信息。4.一种运动图像解码装置,将输入图像信号分割成像素块,对这些分割出的像素块进行帧间预测, 所述运动图像解码装置具备预测部,所述预测部从解码结束了的区域内的多个运动信息中,根据依照表示预测运动信息的选择方法的第I信息而取得的信息,选择预测运动信息,使用所述预测运动信息来预测解码对象块的运动信息, 所述第I信息包含用于选择所述运动信息的确定所述解码对象块内的位置的第2信息。5.—种运动图像解码方法,该运动图像解码方法进行帧间预测,该运动图像解码方法具有以下步骤: 从解码结束区域中的多个运动信息中,依照表示在时间附近帧中与解码对象块相同位置的区域的中心的信息,从处于在时间附近帧中与所述解码对象块相同位置的区域的中心的像素块取得第I运动信息; 使用所述第I运动信息来预测所述解码对象块的运动信息;以及使用通过预测取得的运动信息来进行帧间预测。6.—种运动图像解码装置,该运动图像解码装置进行帧间预测,该运动图像解码装置具备: 从解码结束区域中的多个运动信息中,依照表示在时间附近帧中与解码对象块相同位置的区域的中心的信息,从处于在时间附近帧中与所述解码对象块相同位置的区域的中心的像素块取得第I运动信息的单元; 使用所述第I运动信息来预测所述解码对象块的运动信息的单元;以及 使用通过预测取得的运动信息来进行帧间预测的单元。
【文档编号】H04N19/52GK105933709SQ201610422977
【公开日】2016年9月7日
【申请日】2011年3月9日
【发明人】盐寺太郎, 盐寺太一郎, 谷沢昭行, 山影朋夫, 中條健
【申请人】株式会社东芝
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1