图像编码方法、图像译码方法、图像编码装置、图像 译码装置、程序、计算机数据信号,以及图像传送系统 【技术领域】
本发明涉及可以适合于移动式视频传送系统等的图像传送系统的图像编码方法、图像译码方法、图像编码装置、图像译码装置、程序、计算机数据信号,以及图像传送系统。
背景技术
以往,作为运动图像的编码方式,已知有ITU-T H.26x和MPEG序列等的标准运动图像编码方式。在这些图像编码方式中,对分割了这些图像得到的块的各自的图像,进行运动补偿(MC:Motion Compensation)和离散余弦变换(DCT:Discrete CosineTransform)等规定的数据变换操作,由此制成成为编码对象的图像数据。
另外,由数据变换操作制成的图像数据,进一步被可变长编码,成为在图像传送中使用的作为压缩数据的编码数据。作为这样的可变长编码方法之一,使用算术编码(AC:Arithmetic Coding)。
一般,当对组合了多种符号的信息源系列(符号系列)进行算术编码的情况下,首先,在[0.0,1.0)的数直线(概率数直线)上,对于各个符号,根据符号的出现概率分配一定地区间。这时,表示符号和数直线上的区间的对应关系的表,被称为概率表。在根据算术编码可变长度编码信息源系列时,通过参照该概率表,生成在数直线上表现信息源系列的代码字。
在此,参照图1~图3说明算术编码。具体地说,把字符串“ARITHMETIC”作为编码对象的信息源系列,把其算术编码作为例子说明。
在上述的信息源系列内,出现A、C、E、H、I、M、R、T这8种字符。对于这些字符,如图1的表所示,在[0.0,1.0)的数直线(概率数直线)上,如成为与字符串中的各字符的出现概率成比例的区间长度那样分别分配区间。表示该字符和数直线上的区间的对应关系的图1中所示的表,成为在算术编码中使用的概率表。
图2是展示使用了图1所示的概率表对字符串“ARITHMETIC”进行编码的图。在算术编码中,通过根据概率表把区间缩小的操作,相对包含在信息源系列中的各符号顺序进行,生成编码信息源系列的代码字。
在图2所示的例子中,首先,对作为编码对象的字符串“ARITHMETIC”的第1个字符“A”,参照图1所示的概率表,划分为把数直线上的区间[0,1]与各字符对应的8个区间。而后,在这些区间中,向与字符“A”对应的区间[0.0,0.1]进行区间缩小。以下,对于第2字符“R”,参照概率表,把区间[0.0,0.1]划分为8个区间。而后,在这些区间中,向与字符“R”对应的区间[0.07,0.08]缩小区间。
以下,对各字符顺序进行采用该区间缩小的编码操作。而后,在最终得到的数直线上的区间[0.0757451536,0.0757451552]中,处于该区间内的数值“0.0757451536”,被作为算术编码了字符串“ARITHMETIC”的代码字生成。
图3是展示对使用了图1所示的概率表的代码字“0.0757451536”的字符串“ARITHMETIC”译码的图。
在图3所示的例子中,首先,对作为译码对象的代码字“0.0757451536”,参照图1所示的概率表,特定包含代码字的区间长为0.1的区间[0.0,0.1]。而后,在把与特定的区间对应的字符“A”作为第1字符输出的同时,通过(代码字-下限)/(区间长),生成新的代码字“0.0757451536”。以下,对于代码字“0.0757451536”,参照概率表,特定包含代码字的区间长为0.1的区间[0.7,0.8]。而后,在把与特定的区间对应的字符“R”作为第2字符输出的同时,生成新的代码字“0.757451536”。
以下,对代码字顺序进行该译码操作。而后,从算术编码后的代码字“0.0757451536”中复原字符串“ARITHMETIC”。
这样,在使用了算术编码的信息源系列的可变长编码中,通过使包含在信息源系列中的符号和数直线上的区间对应,可以用[0.0,1.0)的数直线上的代码字表现任意的信息源系列。另外,通过根据各符号的出现概率设定使符号和区间对应的概率表,可以高效率地进行信息源系列的可变长编码,可以提高采用编码的数据压缩的效率。
【发明内容】
图4是展示使用了采用上述算术编码的可变长编码的图像编码方法一例的流程图。在图4所示的图像编码方法中,用被称为在ITU-T H.26L视频编码方式(参照VCEG-M10 H.26L Test ModelLong Term Number 8(TML-8)draft0)中使用的环境建模的CBAC(Context-based Adaptive Binary Arithmetic Coding)的方法,进行图像数据的算术编码。
在图像数据的编码中,首先,把编码对象的图像分割为规定大小的块,对每块进行帧内编码(Intra-Frame Coding,帧内编码)或帧间编码(Inter-Frame Coding,帧间编码)、DCT等的正交变换等必要的数据变换操作,生成表示在块内之图像的图像数据。而后,对于该图像数据,使用算术编码等进行可变长编码,生成经数据压缩的编码数据。
在图4所示的图像编码方法中,特别是不用预先被固定设定的条件进行编码,而是在编码每块的图像数据时,进行环境建模(步骤S901,Context Modeling)。在使用了环境建模的算术编码中,关于在图像数据的编码中使用的概率表,对编码对象的块中的图像数据所适用的概率表,参照在相邻块中进行图像编码的处理结果等的编码条件进行切换设定。
如果结束了采用环境建模的概率表的设定,则2值化编码对象的图像数据(例如多个DCT系数),生成应该传送的数据系列(S902,Binarization)。而后,对经2值化的数据系列进行算术编码(S903,Adaptive Binary Arithmetic Coding),得到编码数据。
具体地说,对于经2值化的数据系列的各位,分配由环境建模设定的概率表进行概率评价(S904,Probability Estimation)。而后,用被分配的概率表算术编码数据系列,生成作为编码数据的数直线上的代码字(S905,Arithmetic Coding)。另外,根据算术编码的处理结果,把编码后的位的发生频度等的信息反馈到概率表,由此更新概率评价,把编码的趋势反映在概率表中(S906,ProbabilityEstimation Update)。
如果采用使用了环境建模的算术编码的上述图像编码方法,由于根据编码条件和处理结果切换所使用的概率表,因而可以减少编码数据中的冗长度。
在此,在编码帧图像得到的编码数据中,对于与帧图像对应的帧层,有把帧层分割为1个或者多个切片层(slice layered)制成编码数据的情况。切片层是为了数据的多重化和转送的高效率,或者是为了把传送错误发生时的影响限制在最小限度而使用的。
另一方面,在各切片层中,适用在算术编码中的概率表被初始化。在该概率表的初始化中,具有即使在错误发生时也可以再开始译码的效果。但是,如图4所示当用在概率表中反映编码趋势的方法进行算术编码的情况下,存在通过在切片层中概率表的初始化,损失了被反映在概率表中的信息的问题。
即,作为在初始化中使用的概率表,通常是不按编码对象的图像,而使用一定的概率表。因此,如果被初始化为和该图像不一致的概率表,则在每次初始化时编码的效率下降。另外,在发生频度少的编码位中,因为在编码趋势被反映在概率表中之前被初始化,使用效率降低。
另外,初始化,如上所述是为了从传送错误中恢复而进行的,在传送路中未必一定发生传送错误。当未发生传送错误的情况下,或者在传送错误少的情况下,概率表的初始化效率低。这样,当在切片层中概率表被不必要地初始化的情况下,在编码数据中的数据压缩效率将下降。
本发明,就是为了解决上述的问题而提出的,其目的在于提供一种对于具有采用切片层和帧层的分层构造的编码数据,在编码数据的整体中适宜地设定概率表,可以提高在编码数据中的数据压缩效率的图像编码方法、图像译码方法、图像编码装置、图像译码装置、程序、计算机数据信号,以及图像传送系统。
为了实现这样的目的,本发明的图像编码方法,是把图像分割为规定大小的块,对每块编码图像数据的编码方法,其特征在于:具备(1)对在帧图像内的块的各自的图像进行规定的数据变换操作,制成成为编码对象的图像数据的变换步骤;(2)通过使用了规定概率表的算术编码可变长编码图像数据,生成具有采用由多个块组成的切片层、和由1个或者多个切片层组成与帧图像对应的帧层的分层构造的编码数据的编码步骤,(3)在编码步骤中,对于切片层设定概率表的初始化的有无,在包含该切片层的编码数据中的规定的层的标题上,附加表示被设定的初始化有无的标志,与此同时,当被设定为有初始化的情况下,初始化概率表。
同样,本发明的图像编码装置,是把图像分割为规定大小的块,为每块编码图像数据的编码装置,其特征在于:具备(1)对在帧图像内的块的各自的图像进行规定的数据变换操作,制成成为编码对象的图像数据的变换装置;(2)通过使用了规定概率表的算术编码可变长编码图像数据,生成具有采用由多个块组成的切片层、和由1个或者多个切片层组成与帧图像对应的帧层的分层构造的编码数据的编码装置,(3)在编码装置中,对于切片层设定概率表初始化的有无,在包含该切片层的编码数据中的规定的层的标题上,附加表示已被设定的初始化有无的标志,与此同时,当被设定为有初始化的情况下,初始化概率表。
另外,本发明的图像编码程序,其特征在于使计算机执行上述的图像编码方法。另外,其特征在于:本发明的计算机数据信号,被包含在载波上,承载用于使计算机执行上述的图像编码方法的图像编码程序。
在上述的图像编码方法、装置、程序,以及计算机信号中,在对帧图像进行运动补偿和正交变换等的数据变换操作设置成编码对象的图像数据后,通过使用规定概率表算术编码该图像数据,生成经数据压缩的编码数据。而后,在生成编码数据的可变长编码中,对于切片层,在各切片层中在设定是否初始化概率表的同时,在规定层的标题上附加表示初始化有无的标志。
由此,在切片层中可以防止不必要地初始化概率表。因而,对于具有采用切片层和帧层的分层构造的编码数据,通过在编码数据的整体中适宜地设定概率表,可以提高在编码数据中的数据压缩的效率。
另外,本发明的图像译码方法,是把帧图像分割为规定大小的块,译码对每块编码图像数据后的编码数据的译码方法,其特征在于:包含(1)在通过使用了规定概率表的反算数编码可变长译码具有采用由多个块组成的切片层,和由1个或者多个切片层组成与帧图像对应的帧层的分层构造的编码数据,生成图像数据的译码步骤;(2)对在帧图像内的块的各自的图像数据进行规定的数据复原操作,复原帧图像的复原步骤,(3)在译码步骤中,从包含在切片层的编码数据中的规定层的标题中,读取对该切片层表示概率表初始化有无的标志,在设定概率表的初始化有无的同时,当设定为有初始化的情况下初始化概率表。
同样,本发明的图像译码装置,是把帧图像分割为规定大小的块,译码为每块编码图像数据得到的编码数据的译码装置,其特征在于:包含(1)在通过使用了规定概率表的反算数编码可变长译码具有采用由多个块组成的切片层、和由1个或者多个切片层组成与帧图像对应的帧层的分层构造的编码数据,生成图像数据的译码装置;(2)对在帧图像内的块各自的图像数据进行规定的数据复原操作,复原帧图像的复原装置,(3)在译码装置,从在包含切片层的编码数据中的规定层的标题中,读取对该切片层表示概率表的初始化有无的标志,在设定概率表的初始化的有无的同时,当设定为有初始化的情况下初始化概率表。
另外,本发明的图像译码程序,其特征在于使计算机执行上述的图像译码方法。另外,其特征在于:本发明的计算机数据信号,被包含在载波上,搬送用于使计算机执行上述的图像译码方法的图像译码程序。
在上述的图像译码方法、装置、程序,以及计算机数据信号中,在对编码数据使用规定概率表进行反算术编码设置成图像数据后,对该图像数据进行数据复原操作,复原帧图像。而后,在译码编码数据的可变长译码中,对于切片层,用表示从规定切片层的标题中读出的初始化有无的标志,在各切片层中设定是否初始化概率表。
由此,和上述的算术编码的情况一样,在切片层中可以防止概率表被不必要地初始化。因而,对具有采用切片层和帧层的分层构造的编码数据,在编码数据的整体中适宜地设定概率表,从数据压缩效率提高的编码数据中,可以适宜地复原帧图像。
另外,本发明的图像传送系统,是把图像分割为规定大小的块,通过对每块编码图像数据后的编码数据传送图像的图像传送系统,其特征在于:包含(1)从帧图像中生成编码数据并输出的上述图像编码装置;(2)输入来自图像编码装置的编码数据复原帧图像的上述图像译码装置。
如果采用这样的图像传送系统,则可以在编码数据的整体中适宜设定概率表,使用数据压缩效率提高后的编码数据,高效率地传送图像。
【附图说明】
图1是展示在算术编码中使用的概率表一例的表。
图2是展示使用了图1所示的概率表的字符串的编码的图。
图3是展示使用了图1所示的概率表的字符串的译码的图。
图4是展示使用了算术编码的图像编码方法一例的流程图。
图5是概略地展示图像编码方法一实施方式的流程图。
图6是展示图像编码装置一实施方式构成的方框图。
图7A~图7J是展示在运动补偿中使用的编码模式一例的模式图。
图8A以及图8B是展示图像数据的正交变换的图。
图9是概略地展示图像译码方法一实施方式的流程图。
图10是展示图像译码装置一实施方式构成的方框图。
图11A~图11B,是展示编码数据的数据构造一例的图。
图12是展示编码数据的数据系列一例的图。
图13是展示图像传送系统的一实施方式构成的模式图。
【具体实施方式】
以下,和图面一同详细说明本发明的图像编码方法、图像译码方法、图像编码装置、图像译码装置、程序、计算机数据信号,以及使用它的图像传送系统的适宜的实施方式。进而,在图面的说明中在同一要素上标注相同符号,并省略重复的说明。另外,图面的尺寸比率,不一定和说明中的一致。
首先,说明图像编码方法以及图像编码装置。
图5是概略展示本发明的图像编码方法一实施方式的流程图。本编码方法,是对作为静止图像或者运动图像的帧图像的输入帧图像D1进行规定的数据变换操作以及编码处理操作,在移动式视频传送系统等的图像传送系统中生成可以传送的被数据压缩后的编码数据D7的图像编码方法。
在图5所示的图像编码方法中,首先,把输入帧图像D1分割为规定大小(规定像素数)的块,对在帧图像D1内的各块的图像进行规定的数据变换操作,制成成为编码对象的图像数据D6(步骤S100,变换步骤)。在本实施方式中,该变换步骤由2个步骤S101、S102组成。
具体地说,对帧图像D1进行规定的数据处理操作变换图像数据,设置成用空间坐标表示的图像数据(空间图像数据)D5(步骤S101)。作为在此进行的数据处理操作,例如,有对在运动图像中的帧图像进行帧间编码时的运动补偿(MC:Motion Compensation)的帧间预测。另外,当对帧图像进行帧内编码时,例如,输入帧图像D1的图像数据直接成为空间图像数据D5。
以下,对空间图像数据D5进行正交变换操作,生成用空间频率表现的作为图像数据(频率图像数据)的多个正交变换系数D6(102,正交变换步骤)。该正交变换,对分割帧图像后得到的每块进行,对被包含在输入帧图像D1中的各块,分别得到正交变换系数D6。另外,对该正交变换系数,根据需要进一步进行量化操作,生成成为编码对象的图像数据的正交变换系数(量化系数)。
接着,对多个正交变换系数D6使用算术编码进行可变长编码,生成作为压缩数据的编码数据D7(S103,编码步骤)。即,对于正交变换系数D6把适用的概率表设定为规定的概率表(S104)。而后,用已设定的概率表算术编码正交变换系数D6(S105),生成编码数据D7。
在此,在本实施方式的图像编码方法中,在算术编码作为编码对象的图像数据的正交变换系数D6得到的编码数据D7中,如具有采用切片层和帧层的分层构造那样生成编码数据。切片层,是由多个块组成的层。另外,帧层,由1个或者多个切片层组成,是与帧图像对应的层。
切片层,是为了数据多重化或转送的高效率,或者,把传送错误产生时的影响限制在最小限度而使用的。另外,在切片层中,通常,初始化被适用在算术编码中的概率表。与此相反,在本图像编码方法中,对各切片层设定概率表初始化的有无,在包含该切片层的编码数据D7中的规定的层的标题上,附加表示被设定的初始化有无的标志,当被设定为有初始化时初始化概率表。
下面说明本实施方式的图像编码方法的效果。
在图5所示的图像编码方法中,在对帧图像D1进行运动补偿和正交变换等的数据变换操作生成作为编码对象的图像数据D6后,通过用规定的概率表算术编码该图像数据D6,生成经数据压缩的编码数据D7。而后,在生成编码数据D7的可变长编码中,设定在各切片层中是否初始化概率表,在规定层的标题上附加表示初始化有无的标志。
由此,可以在切片层中防止概率表被不必要地初始化。因而,对于具有采用切片层和帧层的分层构造的编码数据D7,在编码数据D7的整体中适宜地设定概率表,可以提高在编码数据D7中的数据压缩的效率。进而,对于具体的标志附加方法等,后面详细叙述。
图6是展示本发明的图像编码装置一实施方式构成的方框图。以下,参照图6所示的图像编码装置,进一步说明图5所示的图像编码方法。进而,以下,对于作为编码对象被输入到图像编码装置中的输入帧图像D1,假设主要是由时间系列的帧图像组成的运动图像。但是,本发明的图像编码方法以及图像编码装置,对于由1帧构成的静止图像也同样可以适用。
作为编码对象输入的输入帧图像D1,首先,用16像素×16行的大小分割为正方形的图像块,该图像块,是作为运动补偿等的数据处理单位的图像块,被称为宏块(macro block)。进而,在后述的DCT(正交变换)中,例如在H.26L编码方式中,使用4像素×4行大小的DCT块。这种情况下,1个宏块,在DCT中,具有16个亮度(Luma)块,8个色差(Chroma)块。图像编码对这些块的每个进行。
帧图像D1被输入到包含运动检测单元11,运动补偿单元12、减法器13、正交变换单元14,以及量化单元14构成的变换装置。变换装置,对在帧图像D1内的各块的图像进行规定的数据变换操作,制成成为编码对象的图像数据D6。
首先,帧图像D1被输入运动检测单元11,对每个宏块检测图像的运动。运动检测单元11,比较要检测运动的宏块中的图像数据和输入帧图像或者其它帧图像中的其它宏块中的图像数据,检测表示图像运动的运动向量D2。
具体地说,在运动检测单元11中,作为编码后的帧图像参照被存储在帧存储器20中的局单元译码图像D8内的规定的图像区域,发现和成为现在的编码对象的输入帧图像D1的宏块类似的图案。而后,用该类似图案和宏块之间的空间移动量,确定运动向量D2。另外,这时,从对运动补偿准备的多个编码模式中,选择在宏块的运动补偿中使用的编码模式。
图7A~图7J是展示对运动补偿准备的编码模式一例的模式图。在该图7A~图7J所示的多个编码模式中,准备不进行运动补偿的跳跃(Skip)模式0、用对分别不同的运动补偿用块的块划分进行的帧间编码模式1~7、用分别不同的块划分进行帧内编码的帧内模式8、9这10个编码模式。进而,上述运动向量D2,对于各宏块,被付与已划分出的每个运动补偿用块。
如果求得运动向量D2,则在运动补偿单元12中,用来自运动检测单元11的运动向量D2、来自帧存储器20的局单元译码图像D8,生成运动预测图像。通过对包含在帧图像D1中的全单元的宏块确定运动向量D2生成运动预测图像,得到相对输入帧图像D1的预测帧图像D4。接着,在减法器13中,生成输入帧图像D1和预测帧图像D4之间的差分(预测残差)帧图像D5。另外,当未制成预测帧图像D4的情况下,把输入帧图像D1直接作为帧图像D5。
差分帧图像D5的图像数据,被输入到正交变换单元(正交变换装置)14。在正交变换单元14中,对于采用空间坐标的差分帧图像D5,对包含在宏块中的每个正交变换块(例如16个亮度块和8个色差块)进行正交变换,生成作为频率图像数据的正交变换系数。另外,该正交变换系数,在量化单元15中被规定的量化参数量化,得到成为算术编码中的编码图像数据的最终的正交变换系数(量化系数)D6。
图8A以及图8B是展示图像数据的正交变换的图。被分割在帧图像D5内的正交变换用中各块的图像数据是空间图像数据,如图8A用4×4像素成分示例那样,通过以水平坐标和垂直坐标规定的4×4空间像素成分a11~a44表示。正交变换单元14,通过以规定的变换方法正交变换该空间图像数据,变换为图8B所示的图像数据。该图像数据是频率图像数据,是用水平频率和垂直频率规定的作为4×4的频率图像成分的正交变换系数f11~f44表示。
作为具体的正交变换,例如,可以适用离散余弦变换(DCT:Discrete Cosine Transform)。DCT是使用傅立叶变换的余弦项的正交变换,在图像编码中经常使用。通过对空间图像数据进行DCT,生成作为频率图像数据的DCT系数f11~f44。进而,在DCT中,例如,在H.26L编码方式中,作为正交变换用块,如图8A以及8B所示那样使用4×4的DCT块。
由正交变换单元14以及量化单元15生成的正交变换系数D6,在可变长编码单元(编码装置)16中,通过使用了规定概率表的算术编码进行可变长编码。由此,生成作为输入帧图像D1的压缩数据的编码数据D7。
具体地说,例如,图8B所示的正交变换系数D6的2维数据由曲折扫描变换为1维数据,进而在变换为级别(Level)以及行程长度(Run)的数据后,被2值化。而后,通过算术编码得到的2值化图案,制成编码数据D7。
另外,在可变长编码单元16中,除了正交变换系数D6外,输入由运动检测单元11检测的运动向量D2,和表示在运动检测单元11中被选择的编码模式的编码模式信息D3。这些运动向量D2以及编码模式信息D3,在可变长编码单元16中,和正交变换系数D6一样,通过使用了规定概率表的算术编码进行可变长编码,被多重化在编码数据D7上。
在此,对于在可变长编码单元16中在算术编码中使用的概率表的设定以及初始化、对切片层的初始化有无的设定,以及对编码数据的标志附加,和有关图5所示的图像编码方法一样。另外,在运动向量D2以及编码模式信息D3的算术编码中,通常,使用和正交变换系数D6的算术编码不同的概率表。另外,即使在正交变换系数D6的算术编码中,也可以在亮度块的算术编码和色差块的算术编码中,使用不同的概率表。
另外,用正交变换单元14以及量化单元15生成的正交变换系数D6,在本图像编码装置内,用反量化单元17以及反正交变换单元18译码。而后,在加法器19中加算译码后的图像数据和预测帧图像D4,生成局单元译码图像D8。该局单元译码图像D8被存储在帧存储器20中,在另一帧图像的运动补偿中使用。
以下,说明图像译码方法以及图像译码装置。
图9是概略展示本发明的图像译码方法一实施方式的流程图。本译码方法,是对用图5所示的图像编码方法生成的编码数据D7进行规定的译码处理操作以及数据复原操作,作为与输入帧图像D1对应的图像复原帧图像D10的图像译码方法。
在图9所示的图像译码方法中,首先,对于编码数据D7使用反算术编码进行可变长译码,生成作为由空间频率表示的图像数据的多个正交变换系数(量化系数)D6(S201,译码步骤)。即,对编码数据D7把适用的概率表设定为规定的概率表(S202)。而后,使用已设定的概率表反算术编码数据D7(S203),生成作为频率图像数据的正交变换系数D6。
在此,在本实施方式的图像译码方法中,对于具有由切片层和帧层构成的分层构造的编码数据D7中的各切片层,从在包含切片层的编码数据D7中的规定的层的标题中,读取表示对该切片层有无概率表的初始化的标志,通过它设定在切片层中是否进行概率表的初始化,当被设定为有初始化的情况下初始化概率表。
以下,对在帧图像内的块各自的图像数据的正交变换系数D6进行规定的数据译码操作,译码帧图像(S200,译码步骤)。在本实施方式中,该译码步骤,由2个步骤S204、S205组成。
具体地说,对正交变换系数D6顺序进行反量化操作以及正交变换操作,生成由空间坐标表示的图像数据(空间图像数据)D9(S204,反正交变换步骤)。而后,对于空间图像数据D9进行规定的数据处理操作变换图像数据,译码输出帧图像D10。
下面说明本实施方式的图像译码方法的效果。
在图9所示的图像译码方法中,在对编码数据D7使用了规定的概率表进行反算术编码生成图像数据D6后,对该图像数据D6进行数据复原操作,复原帧图像D10。而后,在译码编码数据D7的可变长译码中,用表示从规定层的标题读出的初始化有无的标志,设定在各切片层中是否初始化概率表。
由此,和上述的算术编码的情况一样,在切片层中可以防止概率表被不必要地初始化。因而,对具有由切片层和帧层构成的分层构造的编码数据D7,从在编码数据D7的整个中适宜地设定概率表提高了数据压缩效率后的编码数据D7中,可以适宜地复原帧图像。
图10是展示本发明的图像译码装置一实施方式构成的方框图。
作为译码对象输入的编码数据D7被输入到可变长译码单元(译码装置)21,通过使用了规定概率表的反算术编码进行可变长译码,生成作为图像数据的正交变换系数D6。可变长译码单元21,对于被数据压缩的编码数据D7,检测出帧层的开头,以后,译码在每个宏块中包含在编码数据D7中的各数据,生成作为频率图像数据的正交变换数据D6,以及运动向量D2等。另外,对于包含在帧层中的各切片层,从规定层的标题中读出表示概率表的初始化有无的标志,如果指示初始化,则进行概率表的初始化。
在可变长译码单元21中被译码的正交变换系数D6,被输入到由反量化单元22、反正交变换单元23、运动补偿单元24,以及加法器26构成的复原装置。复原装置,对于与作为在帧图像内的块各自有关的图像数据的正交变换系数D6进行规定的数据复原操作,复原帧图像D10。
首先,正交变换系数D6,由反量化单元22以及反正交变换单元(反正交变换装置)23反量化、反正交变换。由此,生成作为空间图像数据的复原差分帧图像D9。该复原差分帧图像D9是与编码前的差分帧图像D5对应的帧图像。
另一方面,运动向量D2被输入到运动补偿单元24。在运动补偿单元24中,使用来自可变长译码单元21的运动向量D2,和被存储在帧存储器25中的其它帧图像,生成预测帧图像D4。而后,在加法器26中,将复原差分帧图像D9和预测帧图像D4相加,把复原后的帧图像作为输出帧图像D10输出。
在此,与在上述的图像编码装置中执行的图像编码方法对应的处理,可以通过用于使计算机执行图像编码的图像编码程序实现。另外,与在图像译码装置中执行的图像译码方法对应的处理,可以通过使计算机执行图像译码的图像译码程序实现。
例如,图像编码装置,由连接存储在图像编码处理动作中所需要的各软件程序等的ROM,和在程序执行中暂时存储数据的RAM的CPU构成。在这样的构成中,通过由CPU执行规定的图像编码程序,实现图像编码装置。
同样,图像译码装置,可以由连接存储在图像译码处理动作中所需要的软件程序等的ROM,和在程序执行中暂时存储数据的RAM的CPU构成。在这样的构成中,通过由CPU执行规定的图像译码程序,可以实现图像译码装置。
另外,用于使CPU执行为了图像编码或者图像译码的各处理的上述程序,可以记录在计算机可以读取的记录介质上颁布。在这样的记录介质中,例如,包含硬盘以及软盘等的磁性介质、CD-ROM以及DVD-ROM等的光学介质、闪盘等的磁性光学介质,或者,如执行或者存储程序命令那样特别配置的,例如RAM、ROM,以及半导体非易失性存储器等硬盘等。
另外,用于使计算机执行图像编码或者图像译码的上述程序,可以设置成包含在载波中的计算机数据。由此,可以把图像编码程序或者图像译码程序经由有线或者无线传送线路等传送。
以下,有关在图5、图6所示的图像编码方法以及图像编码装置中的切片层的概率表的初始化有无的设定,以及对编码数据进行标志的附加,以ITU-T H.26L编码方式为例子具体地说明。进而,有关以下说明的设定方法等,即使对于图9、图10所示的图像译码方法以及图像译码装置也同样可以适用。另外,有关具体的编码方式,并不限于上述的H.26L编码方式。
图11A以及图11B是展示编码数据的数据构造一例的图。另外,图12是展示编码数据的数据系列一例的图。
图11A是展示编码数据的分层构造一例的图。在本数据构造中,编码数据,从下位数据开始顺序具有块层(以下,用B表示),宏块层(M)、切片层(S)、帧层(F)、序列层(Q)这6个层。
块层B,是与在从空间图像数据向频率图像数据进行正交变换时成为变换单位的块对应的层。例如当作为正交变换使用DCT的情况下,该块层与DCT块对应。
另外,宏块层M,是与对图像数据进行运动补偿帧间预测时成为预测单位的宏块对应的层。该宏块层M,如图12所示,由多个块层B(例如16个亮度DCT块和8个色差DCT块的24个DCT块层)组成。另外,在宏块层M的标题(图12所示的M标题)中,包含该宏块的属性信息等。
切片层S,与把1个帧图像分割为1个或者多个的各像素区域对应,与这些被分割后的切片层S一致,变为与帧图像对应的帧层(图像层)F。帧层F,是与帧图像对应的层,为在图像编码中的基本编码单位。
另外,在时间序列中由多个帧图像组成的运动图像的编码数据中,包含这些帧层F全体的层,被作为序列层Q。另外,作为帧层F和序列层Q的中间层,可以设置由多个帧层F组成的GOP层。
图11B是展示将帧图像向多个切片层分割例子的图。在编码数据的制作中,帧图像被分割为1个或者多个限幅(例如在图11B中是8个限幅)。这些限幅S,如图12所示,由1个或者多个宏块M组成,其构成是从图像的左上开始按照光栅扫描顺序接着向右下扫描得到的宏块的集合。进而,在图11B中,8个限幅的各自长度不同,但也可以相同。
分割了帧层F的切片层S,在图像数据的编码以及译码中,是成为同步再生单位的层。为了该同步再生,在作为切片层S之标题的限幅标题(S标题)中,附加同步代码。
在上述的图像编码方法以及装置中,对于各切片层S,设定在采用限幅标题的同步代码的同步再生过程中设定是否初始化在算术编码中使用的概率表。而后,在包含该切片层S的规定的层的标题中,附加表示被设定的初始化的有无的标志。由此,防止在切片层中概率表被不必要地初始化。
作为对各切片层S附加用于指示概率表初始化有无的标志的标题,例如,数据构成是可以在成为初始化有无的设定对象的切片层自身的限幅标题(S标题)上附加标志。这种情况下,对于包含在静止图像或者运动图像中的每个限幅,可以设定在切片层中概率表初始化的有无。
另外,其数据构成是可以在包含成为初始化有无的设定对象的切片层的帧层之帧标题(F标题)上附加标志。这种情况下,对于包含在静止图像或者运动图像中的每个帧上,对包含在该帧层中的切片层的各自,可以设定在切片层中概率表初始化的有无。
或者,在由多个帧图像组成的运动图像中,数据构成可以是在作为整个层的序列层的顺序标题(Q标题)上附加标志。由此,对于由多个帧图像组成的运动图像(视频图像)的全体,可以设定在切片层中的概率表初始化的有无。
另外,编码数据的数据系列,不是如图12所示那样形式的数据,当作为采用分组的数据发送的情况下,在切片层上不附加同步代码。在这样的情况下,可以使用在分组开头的标题单元分上附加表示初始化有无的标志的构成。
进而,有关由标志指示的概率表初始化的有无,当在图像数据的算术编码中适用在亮度块和色差块中不同的概率表等,使用多个概率表的情况下,可以对多个概率表的各自,分别指示初始化有无。或者,也可以对多个概率表的全体指示初始化的有无。另外,关于对运动向量和编码模式信息适用的概率表,也同样可以指示概率表初始化的有无。
另外,关于对各切片层的概率表初始化有无的设定方法,对于语法结构(syntax)或者概率表的各自,也可以分别预先设定初始化的有无。或者,也可以根据需要切换设定初始化的有无。
图13是展示本发明的图像传送系统(例如,移动式视频传送系统)一实施方式构成的模式图。本图像传送系统,其构成具备实现图5所示的图像编码方法图像编码装置(例如图6所示的图像编码装置)1;实现图9所示的图像译码方法的图像译码装置(例如图10所示的图像译码装置)2。
在本系统中,输入帧图像D1,在图像编码装置1中被编码后生成编码数据D7,输出到有线或者无线的规定传送线路。而后,从图像编码装置1传送到传送线路的编码数据D7,被输入图像译码装置2,作为输出帧图像D10复原。
如果采用这样的图像传送系统,则使用通过在编码数据的整体中适宜地设定概率表提高了数据压缩效率的编码数据,可以高效率地传送图像。
本发明的图像编码方法、图像译码方法、图像编码装置、图像译码装置、程序、计算机数据信号,以及图像传送系统,可以作为对具有采用切片层和帧层的分层构造的编码数据,在编码数据的整体中适宜地设定概率表,提高在编码数据中的数据压缩效率的方法以及装置等。
即,在算术编码图像数据生成编码数据的可变长编码中,对于切片层,在各切片层中设定是否初始化概率表,如果采用在规定层的标题上附加表示初始化有无的标志的构造,则在切片层中可以防止概率表被不必要地初始化。因而,对于具有采用切片层和帧层的分层构造的编码数据,可以适宜地在编码数据的整体中设定概率表,提高在编码数据中的数据压缩效率。