本发明涉及将图像信息编码的编码装置等。
背景技术:
在作为以往的编码方式的h.265中,将包含与图像的频率成分有关的频率变换系数信息的图像信息编码。
现有技术文献
非专利文献
非专利文献1:h.265(iso/iec23008-2hevc(highefficiencyvideocoding))
技术实现要素:
发明要解决的课题
但是,频率变换系数信息的代码量较大,给图像信息的整体的代码量带来较大的影响。因而,如果没有将频率变换系数信息适当地处理,则图像信息的整体的代码量有可能增加。
所以,本发明提供一种能够将频率变换系数信息适当地处理的编码装置等。
用来解决课题的手段
有关本发明的一技术方案的编码装置,将图像信息编码,并输出将上述图像信息编码后的比特序列,其特征在于,具备:存储器;以及电路,能够对上述存储器访问;能够对上述存储器访问的上述电路执行如下处理:对上述图像信息进行二值化;对于是否对将上述图像信息二值化后的二值化数据序列应用算术编码进行切换;在对上述二值化数据序列应用算术编码的情况下,对上述二值化数据序列应用算术编码,输出包含被应用了算术编码的上述二值化数据序列的上述比特序列;在不对上述二值化数据序列应用算术编码的情况下,不对上述二值化数据序列应用算术编码,输出包含没有被应用算术编码的上述二值化数据序列的上述比特序列;在上述图像信息的二值化中,按照在对上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下不同的二值化形式,对上述图像信息中的关于图像的频率成分的频率变换系数信息进行二值化;在上述图像信息的二值化中,按照在对上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下共用的二值化形式,对上述图像信息中的关于图像的预测方法的预测参数信息的一部分或全部进行二值化。
另外,这些包含性或具体的技术方案也可以由系统、方法、集成电路、计算机程序或计算机可读取的cd-rom等的非暂时性的记录介质实现,也可以由系统、方法、集成电路、计算机程序及记录介质的任意的组合来实现。
发明效果
有关本发明的一技术方案的编码装置等能够将频率变换系数信息适当地处理。
附图说明
图1是表示有关实施方式1的编码装置的功能结构的框图。
图2是表示实施方式1的块划分的一例的图。
图3是表示与各变换类型对应的变换基函数的表。
图4a是表示在alf中使用的滤波器的形状的一例的图。
图4b是表示在alf中使用的滤波器的形状的另一例的图。
图4c是表示在alf中使用的滤波器的形状的另一例的图。
图5是表示帧内预测的67个帧内预测模式的图。
图6是用来说明沿着运动轨迹的2个块间的图案匹配(双向匹配)的图。
图7是用来说明当前图片内的模板与参照图片内的块之间的图案匹配(模板匹配)的图。
图8是用来说明假定了等速直线运动的模型的图。
图9是用来说明基于多个邻接块的运动矢量的子块单位的运动矢量的导出的图。
图10是表示有关实施方式1的解码装置的功能结构的框图。
图11是表示有关实施方式1的编码装置中的熵编码部的详细的功能结构的框图。
图12是表示有关实施方式1的解码装置中的熵解码部的详细的功能结构的框图。
图13是表示有关实施方式1的语法构造的流程图。
图14a是表示有关实施方式1的4×4的频率变换块中的基本块的概念图。
图14b是表示有关实施方式1的8×8的频率变换块中的基本块的概念图。
图14c是表示有关实施方式1的8×4的频率变换块中的基本块的概念图。
图14d是表示有关实施方式1的4×8的频率变换块中的基本块的概念图。
图14e是表示有关实施方式1的16×16的频率变换块中的基本块的概念图。
图14f是表示有关实施方式1的16×8的频率变换块中的基本块的概念图。
图14g是表示有关实施方式1的8×16的频率变换块中的基本块的概念图。
图14h是表示有关实施方式1的16×12的频率变换块中的基本块的概念图。
图14i是表示有关实施方式1的4×16的频率变换块中的基本块的概念图。
图15是表示有关实施方式1的2种表的概念图。
图16是表示有关实施方式1的表的选择的流程图。
图17是表示有关实施方式1的4种表的概念图。
图18a是表示有关实施方式1的4×4的频率变换块中的基本块的层级的概念图。
图18b是表示有关实施方式1的8×8的频率变换块中的基本块的层级的概念图。
图18c是表示有关实施方式1的8×4的频率变换块中的基本块的层级的概念图。
图18d是表示有关实施方式1的4×8的频率变换块中的基本块的层级的概念图。
图18e是表示有关实施方式1的16×16的频率变换块中的基本块的层级的概念图。
图18f是表示有关实施方式1的16×8的频率变换块中的基本块的层级的概念图。
图18g是表示有关实施方式1的8×16的频率变换块中的基本块的层级的概念图。
图18h是表示有关实施方式1的16×12的频率变换块中的基本块的层级的概念图。
图18i是表示有关实施方式1的4×16的频率变换块中的基本块的层级的概念图。
图19是表示有关实施方式1的图案的判定处理的流程图。
图20a是表示有关实施方式1的第1图案的当前基本块的概念图。
图20b是表示有关实施方式1的第2图案的当前基本块的概念图。
图20c是表示有关实施方式1的第3图案的当前基本块的概念图。
图21是表示有关实施方式1的在第1图案中选择的表的关系图。
图22是表示有关实施方式1的在第2图案中选择的表的关系图。
图23是表示有关实施方式1的在第3图案中由周边的频率变换块选择的表的关系图。
图24是表示有关实施方式1的在第3图案中以编码模式选择的表的关系图。
图25是表示有关实施方式1的在第3图案中以量化参数选择的表的关系图。
图26是表示有关实施方式1的语法构造的数据图。
图27是表示有关实施方式1的编码装置的实现例的框图。
图28是表示有关实施方式1的编码装置的第1编码动作例的流程图。
图29是表示有关实施方式1的编码装置的第1编码动作例中的二值化处理的流程图。
图30是表示有关实施方式1的编码装置的第1编码动作例中的频率变换系数信息的二值化处理的流程图。
图31是表示有关实施方式1的编码装置的第2编码动作例的流程图。
图32是表示有关实施方式1的编码装置的第3编码动作例的流程图。
图33是表示有关实施方式1的编码装置的第3编码动作例中的二值化处理的流程图。
图34是表示有关实施方式1的编码装置的第4编码动作例中的二值化处理的流程图。
图35是表示有关实施方式1的解码装置的实现例的框图。
图36是表示有关实施方式1的解码装置的第1解码动作例的流程图。
图37是表示有关实施方式1的解码装置的第1解码动作例中的逆二值化处理的流程图。
图38是表示有关实施方式1的解码装置的第1解码动作例中的频率变换系数信息的二值化数据序列的逆二值化处理的流程图。
图39是表示有关实施方式1的解码装置的第2解码动作例的流程图。
图40是表示有关实施方式1的解码装置的第3解码动作例的流程图。
图41是表示有关实施方式1的解码装置的第3解码动作例中的逆二值化处理的流程图。
图42是表示有关实施方式1的解码装置的第4解码动作例中的逆二值化处理的流程图。
图43是表示实现内容分发服务的内容供给系统的整体结构图。
图44是表示分级编码(scalablecoding)时的编码构造的一例的图。
图45是表示分级编码时的编码构造的一例的图。
图46是表示web页的显示画面例的图。
图47是表示web页的显示画面例的图。
图48是表示智能电话的一例的图。
图49是表示智能电话的结构例的框图。
具体实施方式
(作为本发明的基础的认识)
在作为以往的编码方式的h.265中,为了将图像信息有效率地编码而使用算术编码。具体而言,采用被称作cabac的上下文自适应二值算术编码方式。
例如,在上下文自适应二值算术编码方式中,通过二值化,将多值信号变换为作为由0或1表现的值的数据序列的二值化数据序列。并且,按照数据类别等的上下文,从规定的多个发生概率中选择0或1的发生概率,按照所选择的发生概率对二值化数据序列应用二值算术编码。并且,按照二值化数据序列中包含的0或1的值将发生概率更新。
即,在上下文自适应二值算术编码方式中,按照可变的发生概率进行二值算术编码。此外,在上下文自适应二值算术编码方式中,对于特定的数据类别等,按照固定的发生概率进行二值算术编码。
进而,在h.265中,将包含频率变换系数信息的图像信息编码。频率变换系数信息是关于图像的频率成分的信息,适合于图像的编码及解码等的处理。另一方面,频率变换系数信息的代码量给图像信息的整体的代码量带来较大的影响。因而,如果频率变换系数信息没有被适当地编码,则图像信息的整体的代码量有可能增加。
所以,有关本发明的一技术方案的编码装置,将图像信息编码,并输出将上述图像信息编码后的比特序列,其特征在于,具备:存储器;以及电路,能够对上述存储器访问;能够对上述存储器访问的上述电路执行如下处理:对上述图像信息进行二值化;对于是否对将上述图像信息二值化后的二值化数据序列应用算术编码进行切换;在对上述二值化数据序列应用算术编码的情况下,对上述二值化数据序列应用算术编码,输出包含被应用了算术编码的上述二值化数据序列的上述比特序列;在不对上述二值化数据序列应用算术编码的情况下,不对上述二值化数据序列应用算术编码,输出包含没有被应用算术编码的上述二值化数据序列的上述比特序列;在上述图像信息的二值化中,按照在对上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下不同的二值化形式,对上述图像信息中的关于图像的频率成分的频率变换系数信息进行二值化;在上述图像信息的二值化中,按照在对上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下共用的二值化形式,对上述图像信息中的关于图像的预测方法的预测参数信息的一部分或全部进行二值化。
由此,编码装置能够将算术编码跳过。因而,编码装置能够对通过算术编码发生的处理延迟的削减进行支援。此外,编码装置能够对给整体的代码量带来较大的影响的频率变换系数信息按照根据算术编码的应用有无而不同的二值化形式适当地进行二值化。因而,编码装置能够将频率变换系数信息适当地编码,能够抑制整体的代码量的增加。
例如也可以是,上述电路对于在上述预测参数信息中包含的关于编码模式的信息、关于画面内预测的预测方向的信息、关于画面间预测的参照图片的信息、以及关于画面间预测的运动矢量的信息中的至少1个,按照在对上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下共用的二值化形式实施二值化。
由此,编码装置能够对预测参数信息中包含的至少一部分的信息按照共用的二值化形式有效率地进行二值化。
例如也可以是,上述电路对于在上述预测参数信息中包含的关于编码模式的信息、关于画面内预测的预测方向的信息、关于画面间预测的参照图片的信息、以及关于画面间预测的运动矢量的信息,按照在对上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下共用的二值化形式实施二值化。
由此,编码装置能够将预测参数信息中包含的各种信息按照共用的二值化形式有效率地进行二值化。
此外,例如也可以是,上述电路在上述图像信息的二值化中,仅对上述图像信息中的上述频率变换系数信息按照上述不同的二值化形式进行二值化,将上述图像信息中的除了上述频率变换系数信息以外的其他的全部信息按照上述共用的二值化形式进行二值化。
由此,编码装置能够对除了频率变换系数信息以外的其他全部的信息按照共用的二值化形式进行二值化。因而,使处理简单化。
此外,例如也可以是,上述电路在上述图像信息的二值化中,在不对上述二值化数据序列应用算术编码的情况下,以与对上述二值化数据序列应用算术编码的情况相比产生比特数较少的形式,对上述频率变换系数信息进行二值化。
由此,编码装置在不应用算术编码的情况下,能够对使频率变换系数信息的代码量变小进行支援。
此外,有关本发明的一技术方案的解码装置,取得将图像信息编码后的比特序列,并将上述图像信息解码,其特征在于,具备:存储器,以及电路,能够对上述存储器访问;能够对上述存储器访问的上述电路执行如下处理:取得包含对上述图像信息进行了二值化后的二值化数据序列的上述比特序列;对于是否对上述比特序列中包含的上述二值化数据序列应用算术解码进行切换;在对上述二值化数据序列应用算术解码的情况下,对上述二值化数据序列应用算术解码,并对被应用了算术解码的上述二值化数据序列进行逆二值化,由此对上述图像信息进行解码;在不对上述二值化数据序列应用算术解码的情况下,不对上述二值化数据序列应用算术解码,并对没有被应用算术解码的上述二值化数据序列进行逆二值化,由此对上述图像信息进行解码;在上述二值化数据序列的逆二值化中,按照在对上述二值化数据序列应用算术解码的情况和不对上述二值化数据序列应用算术解码的情况下不同的逆二值化形式,对上述二值化数据序列中的、关于图像的频率成分的频率变换系数信息被二值化后的第1部分进行逆二值化;在上述二值化数据序列的逆二值化中,按照在对上述二值化数据序列应用算术解码的情况和不对上述二值化数据序列应用算术解码的情况下共用的逆二值化形式,对上述二值化数据序列中的、关于图像的预测方法的预测参数信息的一部分或全部被二值化后的第2部分进行逆二值化。
由此,解码装置能够将算术解码跳过。因而,解码装置能够对通过算术解码发生的处理延迟的削减进行支援。此外,解码装置能够对给整体的代码量带来较大的影响的频率变换系数信息被二值化后的第1部分按照算术解码的应用有无适当地进行逆二值化。因而,解码装置能够将频率变换系数信息适当地解码,能够抑制整体的代码量的增加。
例如也可以是,上述电路对于上述预测参数信息中包含的关于编码模式的信息、关于画面内预测的预测方向的信息、关于画面间预测的参照图片的信息、以及关于画面间预测的运动矢量的信息中的至少1个被二值化后的上述第2部分,按照在对上述二值化数据序列应用算术解码的情况和不对上述二值化数据序列应用算术解码的情况下共用的逆二值化形式实施逆二值化。
由此,解码装置能够对预测参数信息中包含的至少一部分的信息被二值化后的部分按照共用的逆二值化形式有效率地进行逆二值化。
此外,例如也可以是,上述电路对于上述预测参数信息中包含的关于编码模式的信息、关于画面内预测的预测方向的信息、关于画面间预测的参照图片的信息、以及关于画面间预测的运动矢量的信息被二值化后的上述第2部分,按照在对上述二值化数据序列应用算术解码的情况和不对上述二值化数据序列应用算术解码的情况下共用的逆二值化形式实施逆二值化。
由此,解码装置能够对预测参数信息中包含的各种信息被二值化后的部分按照共用的逆二值化形式有效率地进行逆二值化。
此外,例如也可以是,上述电路在上述二值化数据序列的逆二值化中,仅对上述二值化数据序列中的上述第1部分按照上述不同的逆二值化形式进行逆二值化,将上述二值化数据序列中的除了上述第1部分以外的其他的全部部分按照上述共用的逆二值化形式进行逆二值化。
由此,解码装置能够对除了频率变换系数信息被二值化后的第1部分以外的其他的全部部分按照共用的逆二值化形式进行逆二值化。因而,使处理简单化。
此外,例如也可以是,上述电路在上述二值化数据序列的逆二值化中,在不对上述二值化数据序列应用算术解码的情况下,以与对上述二值化数据序列应用算术解码的情况相比产生比特数较少的形式,对上述频率变换系数信息被二值化后的上述第1部分进行逆二值化。
由此,解码装置在不应用算术解码的情况下,能够对使频率变换系数信息的代码量变小进行支援。
此外,有关本发明的一技术方案的编码方法,将图像信息编码,并输出将上述图像信息编码后的比特序列,其特征在于,对上述图像信息进行二值化;对于是否对将上述图像信息二值化后的二值化数据序列应用算术编码进行切换;在对上述二值化数据序列应用算术编码的情况下,对上述二值化数据序列应用算术编码,输出包含被应用了算术编码的上述二值化数据序列的上述比特序列;在不对上述二值化数据序列应用算术编码的情况下,不对上述二值化数据序列应用算术编码,输出包含没有被应用算术编码的上述二值化数据序列的上述比特序列;在上述图像信息的二值化中,按照在对上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下不同的二值化形式,对上述图像信息中的关于图像的频率成分的频率变换系数信息进行二值化;在上述图像信息的二值化中,按照在对上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下共用的二值化形式,对上述图像信息中的关于图像的预测方法的预测参数信息的一部分或全部进行二值化。
由此,使用编码方法的装置等能够将算术编码跳过。因而,使用编码方法的装置等能够对通过算术编码发生的处理延迟的削减进行支援。此外,使用编码方法的装置等能够对给整体的代码量带来较大的影响的频率变换系数信息按照根据算术编码的应用有无而不同的二值化形式适当地进行二值化。因而,使用编码方法的装置等能够将频率变换系数信息适当地编码,能够抑制整体的代码量的增加。
此外,有关本发明的一技术方案的解码方法,取得将图像信息编码后的比特序列,并将上述图像信息解码,其特征在于,取得包含对上述图像信息进行了二值化后的二值化数据序列的上述比特序列;对于是否对上述比特序列中包含的上述二值化数据序列应用算术解码进行切换;在对上述二值化数据序列应用算术解码的情况下,对上述二值化数据序列应用算术解码,并对被应用了算术解码的上述二值化数据序列进行逆二值化,由此对上述图像信息进行解码;在不对上述二值化数据序列应用算术解码的情况下,不对上述二值化数据序列应用算术解码,并对没有被应用算术解码的上述二值化数据序列进行逆二值化,由此对上述图像信息进行解码;在上述二值化数据序列的逆二值化中,按照在对上述二值化数据序列应用算术解码的情况和不对上述二值化数据序列应用算术解码的情况下不同的逆二值化形式,对上述二值化数据序列中的、关于图像的频率成分的频率变换系数信息被二值化后的第1部分进行逆二值化;在上述二值化数据序列的逆二值化中,按照在对上述二值化数据序列应用算术解码的情况和不对上述二值化数据序列应用算术解码的情况下共用的逆二值化形式,对上述二值化数据序列中的、关于图像的预测方法的预测参数信息的一部分或全部被二值化后的第2部分进行逆二值化。
由此,使用该解码方法的装置等能够将算术解码跳过。因而,使用该解码方法的装置等能够对通过算术解码发生的处理延迟的削减进行支援。此外,使用该解码方法的装置等能够将给整体的代码量带来较大影响的频率变换系数信息被二值化的第1部分按照算术解码的应用有无适当地进行逆二值化。因而,使用该解码方法的装置等能够将频率变换系数信息适当地解码,能够抑制整体的代码量的增加。
此外也可以是,有关本发明的一技术方案的编码装置是将图像信息编码的编码装置,具备存储器和能够对上述存储器访问的电路;能够对上述存储器访问的上述电路对表示特定基本块的位置的位置信息进行编码,所述特定基本块是在对于由多个频率变换系数构成的频率变换块中的1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中最先包含非零系数的基本块;仅对上述1个以上的基本块中的、在上述规定的扫描顺序中为上述特定基本块以后的各基本块,对表示构成该基本块的多个频率变换系数的块信息进行编码。
由此,编码装置能够将位置信息及块信息作为频率变换系数信息进行编码。并且,编码装置由于对在规定的扫描顺序中为特定基本块以后的各基本块将块信息编码,所以能够对使频率变换系数信息的代码量变小进行支援。
例如也可以是,上述电路仅在上述1个以上的基本块的个数是2以上的情况下,对上述位置信息进行编码。
由此,编码装置在例如频率变换块的尺寸与各基本块的尺寸相同的情况下,能够对使频率变换系数信息的代码量变得更小进行支援。
此外,例如也可以是,上述电路仅在上述频率变换块中存在上述特定基本块的情况下,对上述位置信息及上述块信息进行编码。
由此,编码装置例如在频率变换块中不包含非零系数的情况下,能够对使频率变换系数信息的代码量变得更小进行支援。
此外,例如也可以是,上述电路对上述图像信息进行编码,输出将上述图像信息编码后的比特序列;在上述图像信息的编码及上述比特序列的输出中,对上述图像信息进行二值化;对于是否对上述图像信息被二值化后的二值化数据序列应用算术编码进行切换;在对上述二值化数据序列应用算术编码的情况下,对上述二值化数据序列应用算术编码,输出包含被应用了算术编码的上述二值化数据序列的上述比特序列;在不对上述二值化数据序列应用算术编码的情况下,不对上述二值化数据序列应用算术编码,输出包含没有被应用算术编码的上述二值化数据序列的上述比特序列;在上述图像信息的二值化中,按照在对上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下不同的二值化形式,对上述图像信息中的关于图像的频率成分的频率变换系数信息进行二值化;在上述图像信息的二值化中,按照在对上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下共用的二值化形式,对上述图像信息中的关于图像的预测方法的预测参数信息的一部分或全部进行二值化;在不对上述二值化数据序列应用算术编码的情况下,在上述频率变换系数信息的二值化中,通过对包含上述位置信息及上述块信息的上述频率变换系数信息进行二值化,对上述位置信息及上述块信息进行编码。
由此,编码装置在不应用算术编码的情况下,能够对使频率变换系数信息的代码量变小进行支援。
此外也可以是,有关本发明的一技术方案的解码装置是将图像信息解码的解码装置,具备存储器和能够对上述存储器访问的电路;能够对上述存储器访问的上述电路对表示特定基本块的位置的位置信息进行解码,所述特定基本块是在对于由多个频率变换系数构成的频率变换块中的1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中最先包含非零系数的基本块;仅对上述1个以上的基本块中的、在上述规定的扫描顺序中为上述特定基本块以后的各基本块,对表示构成该基本块的多个频率变换系数的块信息进行解码。
由此,解码装置能够将位置信息及块信息作为频率变换系数信息进行解码。并且,解码装置由于对在规定的扫描顺序中为特定基本块以后的各基本块将块信息解码,所以能够对使频率变换系数信息的代码量变小进行支援。
例如也可以是,上述电路仅在上述1个以上的基本块的个数是2以上的情况下,对上述位置信息进行解码。
由此,解码装置例如在频率变换块的尺寸与各基本块的尺寸相同的情况下,能够对使频率变换系数信息的代码量变得更小进行支援。
此外,例如也可以是,上述电路仅在上述频率变换块中存在上述特定基本块的情况下,对上述位置信息及上述块信息进行解码。
由此,解码装置例如在频率变换块中不包含非零系数的情况下,能够对使频率变换系数信息的代码量变得更小进行支援。
此外,例如也可以是,上述电路取得将上述图像信息编码的比特序列,对上述图像信息进行解码;在上述比特序列的取得及上述图像信息的解码中,取得包含上述图像信息被二值化后的二值化数据序列的上述比特序列;对于是否对上述比特序列中包含的上述二值化数据序列应用算术解码进行切换;在对上述二值化数据序列应用算术解码的情况下,对上述二值化数据序列应用算术解码,并对被应用了算术解码的上述二值化数据序列进行逆二值化,由此对上述图像信息进行解码;在不对上述二值化数据序列应用算术解码的情况下,不对上述二值化数据序列应用算术解码,并对没有被应用算术解码的上述二值化数据序列进行逆二值化,由此对上述图像信息进行解码;在上述二值化数据序列的逆二值化中,按照在对上述二值化数据序列应用算术解码的情况和不对上述二值化数据序列应用算术解码的情况下不同的逆二值化形式,对上述二值化数据序列中的、关于图像的频率成分的频率变换系数信息被二值化后的第1部分进行逆二值化;在上述二值化数据序列的逆二值化中,按照在对上述二值化数据序列应用算术解码的情况和不对上述二值化数据序列应用算术解码的情况下共用的逆二值化形式,对上述二值化数据序列中的、关于图像的预测方法的预测参数信息的一部分或全部被二值化后的第2部分进行逆二值化;在不对上述二值化数据序列应用算术解码的情况下,在上述第1部分的逆二值化中,通过对包含上述位置信息及上述块信息的上述频率变换系数信息被二值化后的上述第1部分进行逆二值化,对上述位置信息及上述块信息进行解码。
由此,解码装置在不应用算术解码的情况下,能够对使频率变换系数信息的代码量变小进行支援。
此外,有关本发明的一技术方案的编码方法是将图像信息编码的编码方法,对表示特定基本块的位置的位置信息进行编码,所述特定基本块是在对于由多个频率变换系数构成的频率变换块中的1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中最先包含非零系数的基本块;仅对上述1个以上的基本块中的、在上述规定的扫描顺序中为上述特定基本块以后的各基本块,对表示构成该基本块的多个频率变换系数的块信息进行编码。
由此,使用该编码方法的装置等能够将位置信息及块信息作为频率变换系数信息进行编码。并且,使用该编码方法的装置等由于对于在规定的扫描顺序中为特定基本块以后的各基本块,对块信息进行编码,所以能够对使频率变换系数信息的代码量变小进行支援。
此外,有关本发明的一技术方案的解码方法是将图像信息解码的解码方法,将表示特定基本块的位置的位置信息解码,所述特定基本块是在对于由多个频率变换系数构成的频率变换块中的1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中最先包含非零系数的基本块;仅对上述1个以上的基本块中的、在上述规定的扫描顺序中为上述特定基本块以后的各基本块,对表示构成该基本块的多个频率变换系数的块信息进行解码。
由此,使用该解码方法的装置等能够将位置信息及块信息作为频率变换系数信息进行解码。并且,使用该解码方法的装置等由于对于在规定的扫描顺序中为特定基本块以后的各基本块,对块信息进行解码,所以能够对使频率变换系数信息的代码量变小进行支援。
此外也可以是,有关本发明的一技术方案的编码装置是将图像信息编码的编码装置,具备存储器和能够对上述存储器访问的电路;能够对上述存储器访问的上述电路对于表示作为由多个频率变换系数构成的频率变换块中的1个以上的基本块之一的当前基本块中包含的非零系数的个数的数据值,按照将多个数据值与多个二值化值建立了对应关系的变换表进行二值化,对包含上述数据值的上述图像信息进行编码;在上述数据值的二值化中,从包括包含作为上述非零系数的个数而表示0的数据值的对应关系的第1表和不包含作为上述非零系数的个数而表示0的数据值的对应关系的第2表的多个表中选择上述变换表,按照所选择的上述变换表,对上述数据值进行二值化。
由此,编码装置能够将用来有效率地表示构成基本块的多个频率变换系数的信息适当地编码。此外,编码装置能够使用信息量被削减的表作为用于二值化的变换表。因而,编码装置能够对使频率变换系数信息的代码量变小进行支援。
例如也可以是,上述电路在上述数据值的二值化中,仅对在对于上述1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中、上述1个以上的基本块中的最先包含非零系数的基本块——即特定基本块以后的各基本块,将表示在该基本块中包含的非零系数的个数的数据值作为表示上述当前基本块中包含的非零系数的个数的数据值进行二值化。
由此,编码装置能够对使频率变换系数信息的代码量变得更小进行支援。
此外,例如也可以是,上述电路在上述数据值的二值化中,仅在上述1个以上的基本块中存在上述特定基本块的情况下,对上述数据值进行二值化;在上述变换表的选择中,在上述频率变换块与上述当前基本块相同的情况下,选择上述第2表作为上述变换表。
由此,编码装置例如在频率变换块的尺寸与各基本块的尺寸相同的情况下,使用不包含0个非零系数的对应关系的第2表,能够对使频率变换系数信息的代码量变小进行支援。
此外,例如也可以是,上述电路在上述变换表的选择中,在上述当前基本块是上述特定基本块的情况下,选择上述第2表作为上述变换表。
由此,编码装置例如在当前基本块是特定基本块的情况下,使用不包含0个非零系数的对应关系的第2表,能够对使频率变换系数信息的代码量变小进行支援。
此外,例如也可以是,上述电路对上述图像信息进行编码,输出将上述图像信息编码后的比特序列;在上述图像信息的编码及上述比特序列的输出中,对上述图像信息进行二值化;对于是否对上述图像信息被二值化后的二值化数据序列应用算术编码进行切换;在对上述二值化数据序列应用算术编码的情况下,对上述二值化数据序列应用算术编码,输出包含被应用了算术编码的上述二值化数据序列的上述比特序列;在不对上述二值化数据序列应用算术编码的情况下,不对上述二值化数据序列应用算术编码,输出包含没有被应用算术编码的上述二值化数据序列的上述比特序列;在上述图像信息的二值化中,按照在对上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下不同的二值化形式,对上述图像信息中的关于图像的频率成分的频率变换系数信息进行二值化;在上述图像信息的二值化中,按照在对上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下共用的二值化形式,对上述图像信息中的关于图像的预测方法的预测参数信息的一部分或全部进行二值化;在不对上述二值化数据序列应用算术编码的情况下,在上述频率变换系数信息的二值化中,按照从包括上述第1表和上述第2表的上述多个表中选择的上述变换表,对上述频率变换系数信息中包含的上述数据值进行二值化。
由此,编码装置在不应用算术编码的情况下,使用从包括不包含0个非零系数的对应关系的第2表的多个表中选择的变换表,能够对使频率变换系数信息的代码量变小进行支援。
此外也可以是,有关本发明的一技术方案的解码装置是将图像信息解码的解码装置,具备存储器和能够对上述存储器访问的电路;能够对上述存储器访问的上述电路对于表示作为由多个频率变换系数构成的频率变换块中的1个以上的基本块之一的当前基本块中包含的非零系数的个数的数据值被二值化后的二值化值,按照将多个数据值与多个二值化值建立了对应关系的变换表进行逆二值化,将包含上述数据值的上述图像信息解码;在上述二值化值的逆二值化中,从包括包含作为上述非零系数的个数而表示0的数据值的对应关系的第1表和不包含作为上述非零系数的个数而表示0的数据值的对应关系的第2表的多个表中选择上述变换表,按照所选择的上述变换表,对上述二值化值进行逆二值化。
由此,解码装置能够将用来有效率地表示构成基本块的多个频率变换系数的信息适当地解码。此外,解码装置能够使用信息量被削减后的表作为用于逆二值化的变换表。因而,解码装置能够对使频率变换系数信息的代码量变小进行支援。
例如也可以是,上述电路在上述二值化值的逆二值化中,在对于上述1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中,仅对上述1个以上的基本块中的最先包含非零系数的基本块——即特定基本块以后的各基本块,将表示在该基本块中包含的非零系数的个数的数据值被二值化后的二值化值作为表示上述当前基本块中包含的非零系数的个数的数据值被二值化后的二值化值,进行逆二值化。
由此,解码装置能够对使频率变换系数信息的代码量变得更小进行支援。
此外,例如也可以是,上述电路在上述二值化值的逆二值化中,仅在上述1个以上的基本块中存在上述特定基本块的情况下,对上述二值化值进行逆二值化,在上述变换表的选择中,在上述频率变换块与上述当前基本块相同的情况下,选择上述第2表作为上述变换表。
由此,解码装置在例如频率变换块的尺寸与各基本块的尺寸相同的情况下,使用不包含0个非零系数的对应关系的第2表,能够对使频率变换系数信息的代码量变小进行支援。
此外,例如也可以是,上述电路在上述变换表的选择中,在上述当前基本块是上述特定基本块的情况下,选择上述第2表作为上述变换表。
由此,解码装置例如在当前基本块是特定基本块的情况下,使用不包含0个非零系数的对应关系的第2表,能够对使频率变换系数信息的代码量变小进行支援。
此外,例如也可以是,上述电路取得将上述图像信息编码的比特序列,对上述图像信息进行解码;在上述比特序列的取得及上述图像信息的解码中,取得包含上述图像信息被二值化后的二值化数据序列的上述比特序列;对于是否对上述比特序列中包含的上述二值化数据序列应用算术解码进行切换;在对上述二值化数据序列应用算术解码的情况下,对上述二值化数据序列应用算术解码,并对被应用了算术解码的上述二值化数据序列进行逆二值化,由此对上述图像信息进行解码;在不对上述二值化数据序列应用算术解码的情况下,不对上述二值化数据序列应用算术解码,对没有被应用算术解码的上述二值化数据序列进行逆二值化,由此对上述图像信息进行解码;在上述二值化数据序列的逆二值化中,按照在对上述二值化数据序列应用算术解码的情况和不对上述二值化数据序列应用算术解码的情况下不同的逆二值化形式,对上述二值化数据序列中的、关于图像的频率成分的频率变换系数信息被二值化后的第1部分进行逆二值化;在上述二值化数据序列的逆二值化中,按照在对上述二值化数据序列应用算术解码的情况和不对上述二值化数据序列应用算术解码的情况下共用的逆二值化形式,对上述二值化数据序列中的、关于图像的预测方法的预测参数信息的一部分或全部被二值化后的第2部分进行逆二值化;在不对上述二值化数据序列应用算术解码的情况下,在上述第1部分的逆二值化中,按照从包括上述第1表和上述第2表的上述多个表中选择的上述变换表,对上述第1部分中包含的上述二值化值进行逆二值化。
由此,解码装置在不应用算术解码的情况下,使用从包括不包含0个非零系数的对应关系的第2表的多个表中选择的变换表,能够对使频率变换系数信息的代码量变小进行支援。
此外也可以是,有关本发明的一技术方案的编码方法是将图像信息编码的编码方法,对表示作为由多个频率变换系数构成的频率变换块中的1个以上的基本块之一的当前基本块中包含的非零系数的个数的数据值,按照将多个数据值与多个二值化值建立了对应关系的变换表进行二值化,对包含上述数据值的上述图像信息进行编码;在上述数据值的二值化中,从包括包含作为上述非零系数的个数而表示0的数据值的对应关系的第1表和不包含作为上述非零系数的个数而表示0的数据值的对应关系的第2表的多个表中选择上述变换表,按照所选择的上述变换表,对上述数据值进行二值化。
由此,使用该编码方法的装置等能够将用来有效率地表示构成基本块的多个频率变换系数的信息适当地编码。此外,使用该编码方法的装置等能够使用信息量被削减的表作为用于二值化的变换表。因而,使用该编码方法的装置等能够对使频率变换系数信息的代码量变小进行支援。
此外也可以是,有关本发明的一技术方案的解码方法是将图像信息解码的解码方法,对作为表示由多个频率变换系数构成的频率变换块中的1个以上的基本块之一的当前基本块中包含的非零系数的个数的数据值被二值化后的二值化值,按照将多个数据值与多个二值化值建立了对应关系的变换表进行逆二值化,将包含上述数据值的上述图像信息解码;在上述二值化值的逆二值化中,从包括包含作为上述非零系数的个数而表示0的数据值的对应关系的第1表和不包含作为上述非零系数的个数而表示0的数据值的对应关系的第2表的多个表中选择上述变换表,按照所选择的上述变换表,对上述二值化值进行逆二值化。
由此,使用该解码方法的装置等能够将用来有效率地表示构成基本块的多个频率变换系数的信息适当地解码。此外,使用该解码方法的装置等能够使用信息量被削减后的表作为用于逆二值化的变换表。因而,使用该解码方法的装置等能够对使频率变换系数信息的代码量变小进行支援。
此外也可以是,有关本发明的一技术方案的编码装置是将图像信息编码的编码装置,具备存储器和能够对上述存储器访问的电路;能够对上述存储器访问的上述电路对于表示作为由多个频率变换系数构成的频率变换块中的1个以上的基本块之一的当前基本块中包含的非零系数的个数的数据值,按照将多个数据值与多个二值化值建立了对应关系的变换表进行二值化,对包含上述数据值的上述图像信息进行编码;在上述数据值的二值化中,按照作为包括上述当前基本块的上述频率变换块的当前频率变换块中的上述当前基本块的位置,从包括与多个数据值建立了对应关系的多个二值化值的最长比特长与最短比特长的差相互不同的2个以上的表的多个表中选择上述变换表,按照所选择的上述变换表,对上述数据值进行二值化。
由此,编码装置能够将用来有效率地表示构成基本块的多个频率变换系数的信息适当地编码。此外,编码装置能够按照当前基本块的位置来选择用来对表示非零系数的个数的数据值进行二值化的变换表。非零系数的个数的特性根据当前基本块的位置而不同。因而,编码装置能够使用当前基本块的位置,使非零系数的个数的特性反映到变换表的选择中。由此,编码装置能够适当地选择变换表,能够对使频率变换系数信息的代码量变小进行支援。
例如也可以是,上述电路在上述变换表的选择中,在作为在对于上述1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中比上述当前基本块靠前的基本块的先行基本块存在于与上述当前基本块的位置处的频率的水平相同的水平的情况下,按照上述先行基本块中包含的非零系数的个数,选择上述变换表。
由此,编码装置能够按照推测为非零系数的个数与当前基本块类似的先行基本块的非零系数的个数来选择变换表。
此外,例如也可以是,上述电路在上述变换表的选择中,在上述先行基本块存在于上述相同的水平、并且上述先行基本块中包含的非零系数的个数是第1个数的情况下,从上述多个表中选择第1表作为上述变换表;在上述先行基本块存在于上述相同的水平、并且上述先行基本块中包含的非零系数的个数是比上述第1个数多的第2个数的情况下,从上述多个表中选择上述差比上述第1表小的第2表作为上述变换表。
由此,编码装置在按照先行基本块的非零系数的个数推测为当前基本块的非零系数的个数较多的情况下,选择比特长的差较小的表作为变换表,能够对代码量的增加的抑制进行支援。
此外,例如也可以是,上述电路在上述变换表的选择中,在作为在对于上述1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中比上述当前基本块靠前的基本块的先行基本块不存在于与上述当前基本块的位置处的频率的水平相同的水平、并且作为在上述规定的扫描顺序中最先包含非零系数的基本块的特定基本块存在于比上述当前基本块的位置处的频率的水平高的水平的情况下,从上述多个表中选择上述差比规定的差小的表作为上述变换表。
由此,编码装置在按照当前基本块及特定基本块的关系推测为非零系数的个数较多的情况下,选择比特长的差较小的表作为变换表,能够对代码量的增加的抑制进行支援。
此外,例如也可以是,上述电路在上述变换表的选择中,在上述先行基本块不存在于上述相同的水平、并且上述特定基本块存在于上述较高的水平的情况下,从上述多个表中选择上述差最小的表作为上述变换表。
由此,编码装置在按照当前基本块及特定基本块的关系推测为非零系数的个数较多的情况下,选择比特长的差较小的表作为变换表,能够对进一步抑制代码量的增加进行支援。
此外,例如也可以是,上述电路在上述变换表的选择中,在作为在对于上述1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中比上述当前基本块靠前的基本块的先行基本块不存在于与上述当前基本块的位置处的频率的水平相同的水平、并且作为在上述规定的扫描顺序中最先包含非零系数的基本块的特定基本块不存在于比上述当前基本块的位置处的频率的水平高的水平的情况下,按照根据作为上述当前频率变换块的周边的频率变换块的周边频率变换块推测为在上述当前基本块中包含的非零系数的个数的个数,来选择上述变换表。
由此,编码装置能够使用推测为非零系数的个数与当前基本块类似的周边频率变换块来选择变换表。
此外,例如也可以是,上述电路在上述变换表的选择中,在上述先行基本块不存在于上述相同的水平、并且上述特定基本块不存在于上述较高的水平、并且根据上述周边频率变换块推测的个数是第1个数的情况下,从上述多个表中选择第1表作为上述变换表;在上述先行基本块不存在于上述相同的水平、并且上述特定基本块不存在于上述较高的水平、并且根据上述周边频率变换块推测的个数是比上述第1个数多的第2个数的情况下,从上述多个表中选择上述差比上述第1表小的第2表作为上述变换表。
由此,编码装置在按照周边频率变换块推测为当前基本块的非零系数的个数较多的情况下,选择比特长的差较小的表作为变换表,能够对代码量的增加的抑制进行支援。
此外,例如也可以是,上述周边频率变换块是:(i)在上述当前频率变换块的左方或上方邻接的频率变换块;(ii)在上述当前频率变换块的紧挨着的之前被编码的频率变换块;或(iii)位于距上述当前频率变换块为规定的范围内、是面间预测还是面内预测的编码模式与上述当前频率变换块相同的频率变换块。
由此,编码装置能够使用适当的周边频率变换块来选择变换表。
此外,例如也可以是,根据上述周边频率变换块推测的个数根据以下来推测:(i)上述周边频率变换块中的1个以上的基本块中的、相对于上述周边频率变换块的相对的位置与上述当前基本块相对于上述当前频率变换块的相对的位置相等的基本块中包含的非零系数的个数;或(ii)在上述周边频率变换块的整体中包含的非零系数的个数。
由此,编码装置能够按照根据周边频率变换块适当地推测的个数来选择变换表。
此外,例如也可以是,上述电路在上述变换表的选择中,在作为在对于上述1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中比上述当前基本块靠前的基本块的先行基本块不存在于与上述当前基本块的位置处的频率的水平相同的水平、并且作为在上述规定的扫描顺序中最先包含非零系数的基本块的特定基本块不存在于比上述当前基本块的位置处的频率的水平高的水平的情况下,按照上述当前基本块的编码模式是面间预测还是面内预测来选择上述变换表。
由此,编码装置能够按照是面间预测还是面内预测的编码模式来选择变换表。非零系数的个数的特性推测为根据编码模式而不同。因而,编码装置能够使用编码模式,使非零系数的个数的特性反映到变换表的选择中。由此,编码装置能够适当地选择变换表,能够对使频率变换系数信息的代码量变小进行支援。
此外,例如也可以是,上述电路在上述变换表的选择中,在上述先行基本块不存在于上述相同的水平、并且上述特定基本块不存在于上述较高的水平、并且上述当前基本块的编码模式是面间预测的情况下,从上述多个表中选择第1表作为上述变换表;在上述先行基本块不存在于上述相同的水平、并且上述特定基本块不存在于上述较高的水平、并且上述当前基本块的编码模式是面内预测的情况下,从上述多个表中选择上述差比上述第1表小的第2表作为上述变换表。
由此,编码装置由于编码模式是面内预测,所以推测为预测精度较低、非零系数的个数较多的情况下,选择比特长的差较小的表作为变换表,能够对代码量的增加的抑制进行支援。
此外,例如也可以是,上述电路在上述变换表的选择中,在作为在对于上述1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中比上述当前基本块靠前的基本块的先行基本块不存在于与上述当前基本块的位置处的频率的水平相同的水平、并且作为在上述规定的扫描顺序中最先包含非零系数的基本块的特定基本块不存在于比上述当前基本块的位置处的频率的水平高的水平的情况下,按照在上述当前基本块的编码中使用的量化参数来选择上述变换表。
由此,编码装置能够按照在当前基本块的编码中使用的量化参数来选择变换表。非零系数的个数的特性推测为根据量化参数而不同。因而,编码装置能够使用量化参数,使非零系数的个数的特性反映到变换表的选择中。由此,编码装置能够适当地选择变换表,能够对使频率变换系数信息的代码量变小进行支援。
此外,例如也可以是,上述电路在上述变换表的选择中,在上述先行基本块不存在于上述相同的水平、并且上述特定基本块不存在于上述较高的水平、并且上述量化参数是第1值的情况下,从上述多个表中选择第1表作为上述变换表;在上述先行基本块不存在于上述相同的水平、并且上述特定基本块不存在于上述较高的水平、并且上述量化参数是比第1值小的第2值的情况下,从上述多个表中选择上述差比上述第1表小的第2表作为上述变换表。
由此,编码装置在通过量化参数较小而推测为非零系数的个数较多的情况下,选择比特长的差较小的表作为变换表,能够对代码量的增加的抑制进行支援。
此外,例如也可以是,上述电路对上述图像信息进行编码,输出将上述图像信息编码后的比特序列;在上述图像信息的编码及上述比特序列的输出中,对上述图像信息进行二值化;对于是否对上述图像信息被二值化后的二值化数据序列应用算术编码进行切换;在对上述二值化数据序列应用算术编码的情况下,对上述二值化数据序列应用算术编码,输出包含被应用了算术编码的上述二值化数据序列的上述比特序列;在不对上述二值化数据序列应用算术编码的情况下,不对上述二值化数据序列应用算术编码,输出包含没有被应用算术编码的上述二值化数据序列的上述比特序列;在上述图像信息的二值化中,按照在对上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下不同的二值化形式,对上述图像信息中的关于图像的频率成分的频率变换系数信息进行二值化;在上述图像信息的二值化中,按照在对上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下共用的二值化形式,对上述图像信息中的关于图像的预测方法的预测参数信息的一部分或全部进行二值化;在不对上述二值化数据序列应用算术编码的情况下,在上述频率变换系数信息的二值化中,按照从上述多个表中根据上述当前基本块的位置选择的上述变换表,对上述频率变换系数信息中包含的上述数据值进行二值化。
由此,编码装置在不应用算术编码的情况下,使用从多个表中根据当前基本块的位置选择的变换表,能够对使频率变换系数信息的代码量变小进行支援。
此外也可以是,有关本发明的一技术方案的解码装置是将图像信息解码的解码装置,具备存储器和能够对上述存储器访问的电路;能够对上述存储器访问的上述电路对于表示作为由多个频率变换系数构成的频率变换块中的1个以上的基本块之一的当前基本块中包含的非零系数的个数的数据值被二值化后的二值化值,按照将多个数据值与多个二值化值建立了对应关系的变换表进行逆二值化,将包含上述数据值的上述图像信息解码;在上述二值化值的逆二值化中,按照作为包含上述当前基本块的上述频率变换块的当前频率变换块中的上述当前基本块的位置,从包括与多个数据值建立了对应关系的多个二值化值的最长比特长与最短比特长的差相互不同的2个以上的表的多个表中选择上述变换表,按照所选择的上述变换表,对上述二值化值进行逆二值化。
由此,解码装置能够将用来有效率地表示构成基本块的多个频率变换系数的信息适当地解码。此外,解码装置能够按照当前基本块的位置来选择用来对表示非零系数的个数的数据值的二值化值进行逆二值化的变换表。非零系数的个数的特性根据当前基本块的位置而不同。因而,解码装置能够使用当前基本块的位置,使非零系数的个数的特性反映到变换表的选择中。由此,解码装置能够适当地选择变换表,能够对使频率变换系数信息的代码量变小进行支援。
例如也可以是,上述电路在上述变换表的选择中,在作为在对于上述1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中比上述当前基本块靠前的基本块的先行基本块存在于与上述当前基本块的位置处的频率的水平相同的水平的情况下,按照上述先行基本块中包含的非零系数的个数来选择上述变换表。
由此,解码装置能够按照推测为非零系数的个数与当前基本块类似的先行基本块的非零系数的个数来选择变换表。
此外,例如也可以是,上述电路在上述变换表的选择中,在上述先行基本块存在于上述相同的水平、并且上述先行基本块中包含的非零系数的个数是第1个数的情况下,从上述多个表中选择第1表作为上述变换表;在上述先行基本块存在于上述相同的水平、并且上述先行基本块中包含的非零系数的个数是比上述第1个数多的第2个数的情况下,从上述多个表中选择上述差比上述第1表小的第2表作为上述变换表。
由此,解码装置在按照先行基本块的非零系数的个数推测为当前基本块的非零系数的个数较多的情况下,选择比特长的差较小的表作为变换表,能够对代码量的增加的抑制进行支援。
此外,例如也可以是,上述电路在上述变换表的选择中,在作为在对于上述1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中比上述当前基本块靠前的基本块的先行基本块不存在于与上述当前基本块的位置处的频率的水平相同的水平、并且作为在上述规定的扫描顺序中最先包含非零系数的基本块的特定基本块存在于比上述当前基本块的位置处的频率的水平高的水平的情况下,从上述多个表中选择上述差比规定的差小的表作为上述变换表。
由此,解码装置在按照当前基本块及特定基本块的关系推测为非零系数的个数较多的情况下,选择比特长的差较小的表作为变换表,能够对代码量的增加的抑制进行支援。
此外,例如也可以是,上述电路在上述变换表的选择中,在上述先行基本块不存在于上述相同的水平、并且上述特定基本块存在于上述较高的水平的情况下,从上述多个表中选择上述差最小的表作为上述变换表。
由此,解码装置在按照当前基本块及特定基本块的关系推测为非零系数的个数较多的情况下,选择比特长的差较小的表作为变换表,能够对进一步抑制代码量的增加进行支援。
此外,例如也可以是,上述电路在上述变换表的选择中,在作为在对于上述1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中比上述当前基本块靠前的基本块的先行基本块不存在于与上述当前基本块的位置处的频率的水平相同的水平、并且作为在上述规定的扫描顺序中最先包含非零系数的基本块的特定基本块不存在于比上述当前基本块的位置处的频率的水平高的水平的情况下,按照根据作为上述当前频率变换块的周边的频率变换块的周边频率变换块推测为在上述当前基本块中包含的非零系数的个数的个数,来选择上述变换表。
由此,解码装置能够使用推测为非零系数的个数与当前基本块类似的周边频率变换块来选择变换表。
此外,例如也可以是,上述电路在上述变换表的选择中,在上述先行基本块不存在于上述相同的水平、并且上述特定基本块不存在于上述较高的水平、并且根据上述周边频率变换块推测的个数是第1个数的情况下,从上述多个表中选择第1表作为上述变换表;在上述先行基本块不存在于上述相同的水平、并且上述特定基本块不存在于上述较高的水平、并且根据上述周边频率变换块推测的个数是比上述第1个数多的第2个数的情况下,从上述多个表中选择上述差比上述第1表小的第2表作为上述变换表。
由此,解码装置在按照周边频率变换块推测为当前基本块的非零系数的个数较多的情况下,选择比特长的差较小的表作为变换表,能够对代码量的增加的抑制进行支援。
此外,例如也可以是,上述周边频率变换块是:(i)在上述当前频率变换块的左方或上方邻接的频率变换块;(ii)在上述当前频率变换块的紧挨着的之前被解码的频率变换块;或(iii)位于距上述当前频率变换块为规定的范围内、是面间预测还是面内预测的编码模式与上述当前频率变换块相同的频率变换块。
由此,解码装置能够使用适当的周边频率变换块来选择变换表。
此外,例如也可以是,根据上述周边频率变换块推测的个数根据以下来推测:(i)上述周边频率变换块中的1个以上的基本块中的、相对于上述周边频率变换块的相对的位置与上述当前基本块相对于上述当前频率变换块的相对的位置相等的基本块中包含的非零系数的个数;或(ii)在上述周边频率变换块的整体中包含的非零系数的个数。
由此,解码装置能够按照根据周边频率变换块适当地推测的个数来选择变换表。
此外,例如也可以是,上述电路在上述变换表的选择中,在作为在对于上述1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中比上述当前基本块靠前的基本块的先行基本块不存在于与上述当前基本块的位置处的频率的水平相同的水平、并且作为在上述规定的扫描顺序中最先包含非零系数的基本块的特定基本块不存在于比上述当前基本块的位置处的频率的水平高的水平的情况下,按照上述当前基本块的编码模式是面间预测还是面内预测来选择上述变换表。
由此,解码装置能够按照是面间预测还是面内预测的编码模式来选择变换表。非零系数的个数的特性推测为根据编码模式而不同。因而,解码装置能够使用编码模式,使非零系数的个数的特性反映到变换表的选择中。由此,解码装置能够适当地选择变换表,能够对使频率变换系数信息的代码量变小进行支援。
此外,例如也可以是,上述电路在上述变换表的选择中,在上述先行基本块不存在于上述相同的水平、并且上述特定基本块不存在于上述较高的水平、并且上述当前基本块的编码模式是面间预测的情况下,从上述多个表中选择第1表作为上述变换表;在上述先行基本块不存在于上述相同的水平、并且上述特定基本块不存在于上述较高的水平、并且上述当前基本块的编码模式是面内预测的情况下,从上述多个表中选择上述差比上述第1表小的第2表作为上述变换表。
由此,解码装置由于编码模式是面内预测,所以推测为预测精度较低、非零系数的个数较多的情况下,选择比特长的差较小的表作为变换表,能够对代码量的增加的抑制进行支援。
此外,例如也可以是,上述电路在上述变换表的选择中,在作为在对于上述1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中比上述当前基本块靠前的基本块的先行基本块不存在于与上述当前基本块的位置处的频率的水平相同的水平、并且作为在上述规定的扫描顺序中最先包含非零系数的基本块的特定基本块不存在于比上述当前基本块的位置处的频率的水平高的水平的情况下,按照在上述当前基本块的解码中使用的量化参数来选择上述变换表。
由此,解码装置能够按照在当前基本块的解码中使用的量化参数来选择变换表。非零系数的个数的特性推测为根据量化参数而不同。因而,解码装置能够通过量化参数使非零系数的个数的特性反映到变换表的选择中。由此,解码装置能够适当地选择变换表,能够对使频率变换系数信息的代码量变小进行支援。
此外,例如也可以是,上述电路在上述变换表的选择中,在上述先行基本块不存在于上述相同的水平、并且上述特定基本块不存在于上述较高的水平、并且上述量化参数是第1值的情况下,从上述多个表中选择第1表作为上述变换表;在上述先行基本块不存在于上述相同的水平、并且上述特定基本块不存在于上述较高的水平、并且上述量化参数是比第1值小的第2值的情况下,从上述多个表中选择上述差比上述第1表小的第2表作为上述变换表。
由此,解码装置在通过量化参数较小而推测为非零系数的个数较多的情况下,选择比特长的差较小的表作为变换表,能够对代码量的增加的抑制进行支援。
此外,例如也可以是,上述电路取得将上述图像信息编码的比特序列,对上述图像信息进行解码;在上述比特序列的取得及上述图像信息的解码中,取得包含上述图像信息被二值化后的二值化数据序列的上述比特序列;对于是否对上述比特序列中包含的上述二值化数据序列应用算术解码进行切换;在对上述二值化数据序列应用算术解码的情况下,对上述二值化数据序列应用算术解码,并对被应用了算术解码的上述二值化数据序列进行逆二值化,由此对上述图像信息进行解码;在不对上述二值化数据序列应用算术解码的情况下,不对上述二值化数据序列应用算术解码,并对没有被应用算术解码的上述二值化数据序列进行逆二值化,由此对上述图像信息进行解码;在上述二值化数据序列的逆二值化中,按照在对上述二值化数据序列应用算术解码的情况和不对上述二值化数据序列应用算术解码的情况下不同的逆二值化形式,对上述二值化数据序列中的、关于图像的频率成分的频率变换系数信息被二值化后的第1部分进行逆二值化;在上述二值化数据序列的逆二值化中,按照在对上述二值化数据序列应用算术解码的情况和不对上述二值化数据序列应用算术解码的情况下共用的逆二值化形式,对上述二值化数据序列中的、关于图像的预测方法的预测参数信息的一部分或全部被二值化后的第2部分进行逆二值化;在不对上述二值化数据序列应用算术解码的情况下,在上述第1部分的逆二值化中,按照从上述多个表中根据上述当前基本块的位置选择的上述变换表,对上述第1部分中包含的上述二值化值进行逆二值化。
由此,解码装置在不应用算术解码的情况下,使用从多个表中根据当前基本块的位置选择的变换表,能够对使频率变换系数信息的代码量变小进行支援。
此外也可以是,有关本发明的一技术方案的编码方法是将图像信息编码的编码方法,对在作为表示由多个频率变换系数构成的频率变换块中的1个以上的基本块之一的当前基本块中包含的非零系数的个数的数据值按照将多个数据值与多个二值化值建立了对应关系的变换表进行二值化,对包含上述数据值的上述图像信息进行编码;在上述数据值的二值化中,按照作为包含上述当前基本块的上述频率变换块的当前频率变换块中的上述当前基本块的位置,从包括与多个数据值建立了对应关系的多个二值化值的最长比特长与最短比特长的差相互不同的2个以上的表的多个表中选择上述变换表,按照所选择的上述变换表,对上述数据值进行二值化。
由此,使用该编码方法的装置等能够将用来有效率地表示构成基本块的多个频率变换系数的信息适当地编码。此外,使用该编码方法的装置等能够根据当前基本块的位置来选择用来对表示非零系数的个数的数据值进行二值化的变换表。非零系数的个数的特性根据当前基本块的位置而不同。因而,使用该编码方法的装置等能够使用当前基本块的位置,使非零系数的个数的特性反映到变换表的选择中。由此,使用该编码方法的装置等能够适当地选择变换表,能够对使频率变换系数信息的代码量变小进行支援。
此外也可以是,有关本发明的一技术方案的解码方法是将图像信息解码的解码方法,对表示作为由多个频率变换系数构成的频率变换块中的1个以上的基本块之一的当前基本块中包含的非零系数的个数的数据值被二值化后的二值化值,按照将多个数据值与多个二值化值建立了对应关系的变换表进行逆二值化,将包含上述数据值的上述图像信息解码;在上述二值化值的逆二值化中,按照作为包含上述当前基本块的上述频率变换块的当前频率变换块中的上述当前基本块的位置,从包括与多个数据值建立了对应关系的多个二值化值的最长比特长与最短比特长的差相互不同的2个以上的表的多个表中选择上述变换表,按照所选择的上述变换表,对上述二值化值进行逆二值化。
由此,使用该解码方法的装置等能够将用来有效率地表示构成基本块的多个频率变换系数的信息适当地解码。此外,使用该解码方法的装置等能够根据当前基本块的位置选择用来对表示非零系数的个数的数据值的二值化值进行逆二值化的变换表。非零系数的个数的特性根据当前基本块的位置而不同。因而,使用该解码方法的装置等能够使用当前基本块的位置,使非零系数的个数的特性反映到变换表的选择中。由此,使用该解码方法的装置等能够适当地选择变换表,能够对使频率变换系数信息的代码量变小进行支援。
进而,这些包含性或具体的技术方案也可以由系统、方法、集成电路、计算机程序或计算机可读取的cd-rom等的非暂时性的记录介质实现,也可以由系统、方法、集成电路、计算机程序及记录介质的任意的组合来实现。
以下,参照附图对实施方式具体地进行说明。
另外,以下说明的实施方式都是表示包含性或具体的例子的。在以下的实施方式中表示的数值、形状、材料、构成要素、构成要素的配置位置及连接形态、步骤、步骤的顺序等是一例,不是限定本发明的意思。此外,关于以下的实施方式的构成要素中的、在表示最上位概念的独立权利要求中没有记载的构成要素,设为任意的构成要素进行说明。
(实施方式1)
[编码装置的概要]
首先,说明有关实施方式1的编码装置的概要。图1是表示有关实施方式1的编码装置100的功能结构的框图。编码装置100是将运动图像/图像将以块单位编码的运动图像/图像编码装置。
如图1所示,编码装置100是将图像以块单位编码的装置,具备划分部102、减法部104、变换部106、量化部108、熵编码部110、逆量化部112、逆变换部114、加法部116、块存储器118、环路滤波器部120、帧存储器122、帧内预测部124、帧间预测部126和预测控制部128。
编码装置100例如由通用处理器及存储器实现。在此情况下,当保存在存储器中的软件程序被处理器执行时,处理器作为划分部102、减法部104、变换部106、量化部108、熵编码部110、逆量化部112、逆变换部114、加法部116、环路滤波器部120、帧内预测部124、帧间预测部126及预测控制部128发挥功能。此外,编码装置100也可以作为与划分部102、减法部104、变换部106、量化部108、熵编码部110、逆量化部112、逆变换部114、加法部116、环路滤波器部120、帧内预测部124、帧间预测部126及预测控制部128对应的专用的1个以上的电子电路实现。
以下,对编码装置100中包含的各构成要素进行说明。
[划分部]
划分部102将输入运动图像中包含的各图片(picture)划分为多个块(block),将各块向减法部104输出。例如,划分部102首先将图片划分为固定尺寸(例如128×128)的块。有时将该固定尺寸的块称作编码树单元(ctu)。并且,划分部102基于递归性的四叉树(quadtree)及/或二叉树(binarytree)块划分,将固定尺寸的块分别划分为可变尺寸(例如64×64以下)的块。有时将该可变尺寸的块称作编码单元(cu)、预测单元(pu)或变换单元(tu)。另外,在本实施方式中,不需要将cu、pu及tu区别,也可以是图片内的一部分或全部的块成为cu、pu、tu的处理单位。
图2是表示实施方式1的块划分的一例的图。在图2中,实线表示四叉树块划分的块边界,虚线表示二叉树块划分的块边界。
这里,块10是128×128像素的正方形块(128×128块)。将该128×128块10首先划分为4个正方形的64×64块(四叉树块划分)。
将左上的64×64块再垂直地划分为2个矩形的32×64块,将左方的32×64块再垂直地划分为2个矩形的16×64块(二叉树块划分)。结果,将左上的64×64块划分为2个16×64块11、12和32×64块13。
将右上的64×64块级别地划分为2个矩形的64×32块14、15(二叉树块划分)。
将左下的64×64块划分为4个正方形的32×32块(四叉树块划分)。将4个32×32块中的左上的块及右下的块进一步划分。将左上的32×32块垂直地划分为2个矩形的16×32块,将右方的16×32块再级别地划分为2个16×16块(二叉树块划分)。将右下的32×32块级别地划分为2个32×16块(二叉树块划分)。结果,将左下的64×64块划分为16×32块16、2个16×16块17、18、2个32×32块19、20和2个32×16块21、22。
不将右下的64×64块23划分。
如以上这样,在图2中,将块10基于递归性的四叉树及二叉树块划分而划分为13个可变尺寸的块11~23。有时将这样的划分称作qtbt(quad-treeplusbinarytree:四叉树加二叉树)划分。
另外,在图2中,将1个块划分为4个或2个块(四叉树或二叉树块划分),但划分并不限定于此。例如,也可以将1个块划分为3个块(三叉树块划分)。有时将包括这样的三叉树块划分的划分称作mbt(multitypetree:多类型树)划分。
[减法部]
减法部104以由划分部102划分后的块单位,从原信号(原样本)减去预测信号(预测样本)。即,减法部104计算编码对象块(以下,称作当前块)的预测误差(也称作残差)。并且,减法部104将计算出的预测误差向变换部106输出。
原信号是编码装置100的输入信号,是表示构成运动图像的各图片的图像的信号(例如亮度(luma)信号及2个色差(chroma)信号)。以下,有时也将表示图像的信号称作样本。
[变换部]
变换部106将空间域的预测误差变换为频率域的变换系数,将变换系数矢量化部108输出。具体而言,变换部106对于例如空间域的预测误差进行预先设定的离散余弦变换(dct)或离散正弦变换(dst)。
另外,变换部106也可以从多个变换类型之中自适应地选择变换类型,使用与所选择的变换类型对应的变换基函数(transformbasisfunction)将预测误差变换为变换系数。有时将这样的变换称作emt(explicitmultiplecoretransform:显式多核变换)或amt(adaptivemultipletransform:自适应多重变换)。
多个变换类型例如包括dct-ii、dct-v、dct-viii、dst-i及dst-vii。图3是表示与各变换类型对应的变换基函数的表。在图3中,n表示输入像素的数量。从这些多个变换类型中的变换类型的选择,既可以基于例如预测的种类(帧内(intra)预测及帧间(inter)预测),也可以依存于帧内预测模式。
将表示是否应用这样的emt或amt的信息(例如称作amt标志)及表示所选择的变换类型的信息以cu级别进行信号化。另外,这些信息的信号化并不需要限定于cu级别,也可以是其他的级别(例如,序列级别、图片级别、切片(slice)级别、瓦片(tile)级别或ctu级别)。
此外,变换部106也可以将变换系数(变换结果)再变换。有时将这样的再变换称作ast(adaptivesecondarytransform:自适应二次变换)或nsst(non-separablesecondarytransform:不可分二次变换)。例如,变换部106按照在与帧内预测误差对应的变换系数的块中包含的每个子块(例如4×4子块)进行再变换。表示是否应用nsst的信息及关于在nsst中使用的变换矩阵的信息以cu级别进行信号化。另外,这些信息的信号化并不一定需要限定于cu级别,也可以是其他的级别(例如,序列级别、图片级别、切片级别、瓦片级别或ctu级别)。
[量化部]
量化部108将从变换部106输出的变换系数量化。具体而言,量化部108将当前块的变换系数以规定的扫描顺序扫描,基于与扫描出的变换系数对应的量化参数(qp)将该变换系数量化。接着,量化部108将当前块的量化的变换系数(以下,称作量化系数)向熵编码部110及逆量化部112输出。
规定的顺序是用于变换系数的量化/逆量化的顺序。例如,将规定的扫描顺序以频率的升序(以从低频到高频的顺序)或降序(从高频到低频的顺序)定义。
所谓量化参数,是定义量化步长(量化宽度)的参数。例如,如果量化参数的值增加,则量化步长也增加。即,如果量化参数的值增加,则量化误差增大。
[熵编码部]
熵编码部110通过将作为来自量化部108的输入的量化系数进行可变长编码,生成编码信号(编码比特流)。具体而言,熵编码部110例如将量化系数二值化,将二值信号算术编码。
[逆量化部]
逆量化部112将作为来自量化部108的输入的量化系数逆量化。具体而言,逆量化部112将当前块的量化系数以规定的扫描顺序进行逆量化。并且,逆量化部112将当前块的逆量化的变换系数向逆变换部114输出。
[逆变换部]
逆变换部114通过将作为来自逆量化部112的输入的变换系数逆变换,将预测误差复原。具体而言,逆变换部114通过对变换系数进行与变换部106的变换对应的逆变换,将当前块的预测误差复原。并且,将逆变换部114复原后的预测误差向加法部116输出。
另外,复原后的预测误差由于通过量化而丢失了信息,所以与减法部104计算出的预测误差不一致。即,在复原后的预测误差中包含有量化误差。
[加法部]
加法部116通过将作为来自逆变换部114的输入的预测误差与作为来自预测控制部128的输入的预测信号相加而而重构当前块。并且,加法部116将重构的块向块存储器118及环路滤波器部120输出。有时也将重构块称作本地解码块。
[块存储器]
块存储器118是用来保存作为在帧内预测中参照的块的、编码对象图片(以下称作当前图片)内的块的存储部。具体而言,块存储器118保存从加法部116输出的重构块。
[环路滤波器部]
环路滤波器部120对由加法部116重构的块实施环路滤波,将滤波后的重构块向帧存储器122输出。所谓环路滤波器,是在编码循环内使用的滤波器(循环内滤波器),例如包括解块滤波器(df)、样本自适应偏移(sao)及自适应环路滤波器(alf)等。
在alf中,采用用来将编码失真除去的最小二乘误差滤波器,例如采用按照当前块内的每个2×2子块,基于局部的梯度(gradient)的方向及活性度(activity)从多个滤波器中选择的1个滤波器。
具体而言,首先将子块(例如2×2子块)分类为多个类(class)(例如15或25类)。基于梯度的方向及活性度进行子块的分类。例如,使用梯度的方向值d(例如0~2或0~4)和梯度的活性值a(例如0~4)计算分类值c(例如c=5d+a)。并且,基于分类值c将子块分类为多个类(例如15或25类)。
梯度的方向值d例如通过将多个方向(例如水平、垂直及2个对角方向)的梯度比较来导出。此外,梯度的活性值a例如通过将多个方向的梯度相加、将相加结果量化来导出。
基于这样的分类的结果,从多个滤波器中决定用于子块的滤波器。
作为在alf中使用的滤波器的形状,例如采用圆对称形状。图4a~图4c是表示在alf中使用的滤波器的形状的多个例子的图。图4a表示5×5钻石形滤波器,图4b表示7×7钻石形滤波器,图4c表示9×9钻石形滤波器。将表示滤波器的形状的信息以图片级别进行信号化。另外,表示滤波器的形状的信息的信号化不需要限定于图片级别,也可以是其他级别(例如,序列级别、切片级别、瓦片级别、ctu级别或cu级别)。
alf的开启/关闭(on/off)例如以图片级别或cu级别来决定。例如,关于亮度,以cu级别决定是否应用alf,关于色差,以图片级别决定是否应用alf。将表示alf的开启/关闭的信息以图片级别或cu级别进行信号化。另外,表示alf的开启/关闭的信息的信号化并不需要限定于图片级别或cu级别,也可以是其他级别(例如,序列级别、切片级别、瓦片级别或ctu级别)。
将可选择的多个滤波器(例如15或25以内的滤波器)的系数集以图片级别进行信号化。另外,系数集的信号化不需要限定于图片级别,也可以是其他级别(例如,序列级别、切片级别、瓦片级别、ctu级别、cu级别或子块级别)。
[帧存储器]
帧存储器122是用来保存在帧间预测中使用的参照图片的存储部,也有被称作帧缓存的情况。具体而言,帧存储器122将由环路滤波器部120滤波后的重构块保存。
[帧内预测部]
帧内预测部124通过参照保存在块存储器118中的当前图片内的块进行当前块的帧内预测(也称作画面帧内预测),生成预测信号(帧内预测信号)。具体而言,帧内预测部124通过参照与当前块邻接的块的样本(例如亮度值、色差值)进行帧内预测而生成帧内预测信号,将帧内预测信号向预测控制部128输出。
例如,帧内预测部124使用预先规定的多个帧内预测模式中的1个进行帧内预测。多个帧内预测模式包括1个以上的非方向性预测模式和多个方向性预测模式。
1个以上的非方向性预测模式包括例如由h.265/hevc(high-efficiencyvideocoding)标准(非专利文献1)规定的planar(平面)预测模式及dc预测模式。
多个方向性预测模式包括例如由h.265/hevc标准规定的33个方向的预测模式。另外,多个方向性预测模式也可以除了33个方向以外还包括32个方向的预测模式(合计65个方向性预测模式)。图5是表示帧内预测中的67个帧内预测模式(2个非方向性预测模式及65个方向性预测模式)的图。实线箭头表示由h.265/hevc标准规定的33个方向,虚线箭头表示追加的32个方向。
另外,在色差块的帧内预测中,也可以参照亮度块。即,也可以基于当前块的亮度成分来预测当前块的色差成分。有时将这样的帧内预测称作cclm(cross-componentlinearmodel:跨分量线性模型)预测。也可以将这样的参照亮度块的色差块的帧内预测模式(例如被称作cclm模式)作为色差块的帧内预测模式之一添加。
帧内预测部124也可以基于水平/垂直方向的参照像素的梯度将帧内预测后的像素值修正。有时将伴随着这样的修正的帧内预测称作pdpc(positiondependentintrapredictioncombination:位置相关镇内预测组合)。将表示pdpc的应用的有无的信息(例如称作pdpc标志)例如以cu级别进行信号化。另外,该信息的信号化并不需要限定于cu级别,也可以是其他的级别(例如,序列级别、图片级别、切片级别、瓦片级别或ctu级别)。
[帧间预测部]
帧间预测部126通过参照保存在帧存储器122中的、而且是与当前图片不同的参照图片进行当前块的帧间预测(也称作画面帧间预测),生成预测信号(帧间预测信号)。将帧间预测以当前块或当前块内的子块(例如4×4块)的单位进行。例如,帧间预测部126关于当前块或子块以参照图片内进行运动估计(motionestimation)。并且,帧间预测部126通过使用由运动估计得到的运动信息(例如运动矢量)进行运动补偿,生成当前块或子块的帧间预测信号。并且,帧间预测部126将所生成的帧间预测信号向预测控制部128输出。
运动补偿中使用的运动信息被信号化。在运动矢量的信号化中,也可以使用预测运动矢量(motionvectorpredictor)。即,也可以将运动矢量与预测运动矢量之间的差信号化。
另外,也可以不仅是通过运动估计得到的当前块的运动信息,也使用邻接块的运动信息来生成帧间预测信号。具体而言,也可以通过将基于由运动估计得到的运动信息的预测信号与基于邻接块的运动信息的预测信号加权相加,以当前块内的子块单位生成帧间预测信号。有时将这样的帧间预测(运动补偿)称作obmc(overlappedblockmotioncompensation:重叠块运动补偿)。
在这样的obmc模式中,将表示用于obmc的子块的尺寸的信息(例如称作obmc块尺寸)以序列级别进行信号化。此外,将表示是否应用obmc模式的信息(例如称作obmc标志)以cu级别进行信号化。另外,这些信息的信号化的级别并不需要限定于序列级别及cu级别,也可以是其他的级别(例如图片级别、切片级别、瓦片级别、ctu级别或子块级别)。
另外,也可以不将运动信息信号化而在解码装置侧将其导出。例如,也可以使用在h.265/hevc标准中规定的合并(merge)模式。此外,例如也可以通过在解码装置侧进行运动估计来导出运动信息。在此情况下,不使用当前块的像素值而进行运动估计。
这里,对在解码装置侧进行运动估计的模式进行说明。有时将在该解码装置侧进行运动估计的模式称作pmmvd(patternmatchedmotionvectorderivation:模式匹配运动矢量推导)模式或fruc(framerateup-conversion:帧速率向上转换)模式的情况。
首先,参照与当前块在空间上或时间上邻接的已编码块的运动矢量,生成分别具有预测运动矢量的多个候选的列表(也可以共用为合并列表)。并且,计算候选列表中包含的各候选的评价值,基于评价值选择1个候选。
接着,基于选择的候选的运动矢量,导出用于当前块的运动矢量。具体而言,例如,将所选择的候选的运动矢量原样作为用于当前块的运动矢量导出。此外,例如也可以通过在与所选择的候选的运动矢量对应的参照图片内的位置的周边区域中进行图案匹配,来导出用于当前块的运动矢量。
另外,评价值通过与运动矢量对应的参照图片内的区域和规定的区域之间的图案匹配来计算。
作为图案匹配,使用第1图案匹配或第2图案匹配。有时将第1图案匹配及第2图案匹配分别称作双向匹配(bilateralmatching)及模板匹配(templatematching)。
在第1图案匹配中,在作为不同的2个参照图片内的2个块的、沿着当前块的运动轨迹(motiontrajectory)的2个块之间进行图案匹配。因而,在第1图案匹配中,作为上述用于候选的评价值的计算的规定的区域,使用沿着当前块的运动轨道的其他参照图片内的区域。
图6是用来说明沿着运动轨迹的2个块间的图案匹配(双向匹配)的图。如图6所示,在第1图案匹配中,通过在作为沿着当前块(curblock)的运动轨迹的2个块的、且是不同的2个参照图片(ref0,ref1)内的2个块的对(pair)之中搜索最匹配的对,导出2个运动矢量(mv0,mv1)。
在连续的运动轨迹的假定之下,指示2个参照块的运动矢量(mv0,mv1)相对于当前图片(curpic)与2个参照图片(ref0,ref1)之间的时间上的距离(td0,td1)成比例。例如,在当前图片在时间上位于2个参照图片之间,并且从当前图片到2个参照图片的时间上的距离相等的情况下,在第1图案匹配中,导出镜像对称的双向的运动矢量。
在第2图案匹配中,在当前图片内的模板(在当前图片内与当前块邻接的块(例如上及/或左邻接块))与参照图片内的块之间进行图案匹配。因而,在第2图案匹配中,作为上述用于候选的评价值的计算的规定的区域,使用与当前图片内的当前块邻接的块。
图7是用来说明当前图片内的模板与参照图片内的块之间的图案匹配(模板匹配)的图。如图7所示,在第2图案匹配中,通过在参照图片(ref0)内搜索与在当前图片(curpic)内邻接于当前块(curblock)的块最匹配的块,导出当前块的运动矢量。
将表示是否应用这样的fruc模式的信息(例如称作fruc标志)以cu级别进行信号化。此外,在应用fruc模式的情况下(例如fruc标志为真的情况下),将表示图案匹配的方法(第1图案匹配或第2图案匹配)的信息(例如称作fruc模式标志)以cu级别进行信号化。另外,这些信息的信号化并不需要限定于cu级别,也可以是其他的级别(例如,序列级别、图片级别、切片级别、瓦片级别、ctu级别或子块级别)。
另外,也可以用与运动估计不同的方法,在解码装置侧导出运动信息。例如,也可以基于假定了等速直线运动的模型,以像素单位,使用周边像素值来计算运动矢量的修正量。
这里,对基于假定了等速直线运动的模型导出运动矢量的模式进行说明。有将该模式称作bio(bi-directionalopticalflow:双向光学流)模式的情况。
图8是用来说明假定了等速直线运动的模型的图。在图8中,(vx,vy)表示速度矢量,τ0、τ1分别表示当前图片(curpic)与2个参照图片(ref0,ref1)之间的时间上的距离。(mvx0,mvy0)表示与参照图片ref0对应的运动矢量,(mvx1,mvy1)表示与参照图片ref1对应的运动矢量。
此时,在速度矢量(vx,vy)的等速直线运动的假定下,将(mvx0,mvy0)及(mvx1,mvy1)分别表示为(vxτ0,vyτ0)及(-vxτ1,-vyτ1),以下的光流等式(1)成立。
[数式1]
这里,i(k)表示运动补偿后的参照图像k(k=0、1)的亮度值。该光流等式表示:(i)亮度值的时间微分、(ii)水平方向的速度及参照图像的空间梯度的水平成分的乘积、以及(iii)垂直方向的速度及参照图像的空间梯度的垂直成分的乘积之和等于零。基于该光流等式与埃尔米特插值(hermiteinterpolation)的组合,将从合并列表等得到的块单位的运动矢量以像素单位进行修正。
另外,也可以通过与基于假定了等速直线运动的模型的运动矢量的导出不同的方法,在解码装置侧导出运动矢量。例如,也可以基于多个邻接块的运动矢量以子块单位导出运动矢量。
这里,对基于多个邻接块的运动矢量以子块单位导出运动矢量的模式进行说明。有时将该模式称作仿射运动补偿预测(affinemotioncompensationprediction)模式。
图9是用来说明基于多个邻接块的运动矢量的子块单位的运动矢量的导出的图。在图9中,当前块包括16个4×4子块。这里,基于邻接块的运动矢量导出当前块的左上角控制点的运动矢量v0,基于邻接子块的运动矢量导出当前块的右上角控制点的运动矢量v1。并且,使用2个运动矢量v0及v1,通过以下的式(2),导出当前块内的各子块的运动矢量(vx,vy)。
[数式2]
这里,x及y分别表示子块的水平位置及垂直位置,w表示预先设定的权重系数。
在这样的仿射运动补偿预测模式中,左上及右上角控制点的运动矢量的导出方法也可以包含不同的几个模式。将表示这样的仿射运动补偿预测模式的信息(例如称作仿射标志)以cu级别进行信号化。另外,表示该仿射运动补偿预测模式的信息的信号化并不需要限定于cu级别,也可以是其他的级别(例如,序列级别、图片级别、切片级别、瓦片级别、ctu级别或子块级别)。
[预测控制部]
预测控制部128选择帧内预测信号及帧间预测信号的某个,将所选择的信号作为预测信号向减法部104及加法部116输出。
[解码装置的概要]
接着,对能够将从上述编码装置100输出的编码信号(编码比特流)解码的解码装置的概要进行说明。图10是表示有关实施方式1的解码装置200的功能结构的框图。解码装置200是将运动图像/图像以块单位进行解码的运动图像/图像解码装置。
如图10所示,解码装置200具备熵解码部202、逆量化部204、逆变换部206、加法部208、块存储器210、环路滤波器部212、帧存储器214、帧内预测部216、帧间预测部218和预测控制部220。
解码装置200例如由通用处理器及存储器实现。在此情况下,当保存在存储器中的软件程序被处理器执行时,处理器作为熵解码部202、逆量化部204、逆变换部206、加法部208、环路滤波器部212、帧内预测部216、帧间预测部218及预测控制部220发挥功能。此外,解码装置200也可以由与熵解码部202、逆量化部204、逆变换部206、加法部208、环路滤波器部212、帧内预测部216、帧间预测部218及预测控制部220对应的专用的1个以上的电子电路实现。
以下,对解码装置200中包含的各构成要素进行说明。
[熵解码部]
熵解码部202将编码比特流进行熵解码。具体而言,熵解码部202例如将编码比特流算术解码为二值信号。接着,熵解码部202将二值信号多值化(debinarize)。由此,熵解码部202以块单位将量化系数向逆量化部204输出。
[逆量化部]
逆量化部204将作为来自熵解码部202的输入的解码对象块(以下称作当前块)的量化系数逆量化。具体而言,逆量化部204关于当前块的量化系数,分别基于与该量化系数对应的量化参数将该量化系数逆量化。并且,逆量化部204将当前块的逆量化的量化系数(即变换系数)向逆变换部206输出。
[逆变换部]
逆变换部206通过将作为来自逆量化部204的输入的变换系数进行逆变换,将预测误差复原。
例如在从编码比特流解读出的信息表示应用emt或amt的情况下(例如amt标志是真),逆变换部206基于表示被解读后的变换类型的信息将当前块的变换系数逆变换。
此外,例如在从编码比特流解读出的信息表示应用nsst的情况下,逆变换部206对变换系数应用逆再变换。
[加法部]
加法部208通过将作为来自逆变换部206的输入的预测误差与作为来自预测控制部220的输入的预测样本相加而重构当前块。并且,加法部208将重构后的块向块存储器210及环路滤波器部212输出。
[块存储器]
块存储器210是用来将作为在帧内预测中参照的块的、而且是解码对象图片(以下称作当前图片)内的块保存的存储部。具体而言,块存储器210将从加法部208输出的重构块保存。
[环路滤波器部]
环路滤波器部212对由加法部208重构后的块实施环路滤波,将滤波后的重构块向帧存储器214及显示装置等输出。
在从编码比特流解读出的表示alf的开启/关闭的信息表示alf的开启的情况下,基于局部性的梯度的方向及活性度从多个滤波器中选择1个滤波器,将所选择的滤波器对重构块应用。
[帧存储器]
帧存储器214是用来将在帧间预测中使用的参照图片保存的存储部,有时也称作帧缓存。具体而言,帧存储器214将由环路滤波器部212滤波后的重构块保存。
[帧内预测部]
帧内预测部216通过基于从编码比特流解读出的帧内预测模式,参照保存在块存储器210中的当前图片内的块进行帧内预测,生成预测信号(帧内预测信号)。具体而言,帧内预测部216通过参照与当前块邻接的块的样本(例如亮度值、色差值)进行帧内预测而生成帧内预测信号,将帧内预测信号向预测控制部220输出。
另外,在色差块的帧内预测中选择了参照亮度块的帧内预测模式的情况下,帧内预测部216也可以基于当前块的亮度成分来预测当前块的色差成分。
此外,在从编码比特流解读出的信息表示pdpc的应用的情况下,帧内预测部216基于水平/垂直方向的参照像素的梯度将帧内预测后的像素值修正。
[帧间预测部]
帧间预测部218参照保存在帧存储器214中的参照图片,预测当前块。将预测以当前块或当前块内的子块(例如4×4块)的单位进行。例如,帧间预测部128通过使用从编码比特流解读出的运动信息(例如运动矢量)进行运动补偿,生成当前块或子块的帧间预测信号,将帧间预测信号向预测控制部220输出。
另外,在从编码比特流解读出的信息表示应用obmc模式的情况下,帧间预测部218不仅是由运动估计得到的当前块的运动信息,也使用邻接块的运动信息,生成帧间预测信号。
此外,在从编码比特流解读出的信息表示应用fruc模式的情况下,帧间预测部218通过按照从编码流解读出的图案匹配的方法(双向匹配或模板匹配)进行运动估计,导出运动信息。并且,帧间预测部218使用被导出的运动信息进行运动补偿。
此外,帧间预测部218在应用bio模式的情况下,基于假定了等速直线运动的模型导出运动矢量。此外,在从编码比特流解读出的信息表示应用仿射运动补偿预测模式的情况下,帧间预测部218基于多个邻接块的运动矢量以子块单位导出运动矢量。
[预测控制部]
预测控制部220选择帧内预测信号及帧间预测信号的某个,将所选择的信号作为预测信号向加法部208输出。
[编码装置中的熵编码部的详细情况]
图11是表示有关实施方式1的编码装置100中的熵编码部110的详细的功能结构的框图。熵编码部110通过对从量化部108输出的量化系数应用可变长编码,生成比特序列,将所生成的比特序列输出。该比特序列与编码后的图像信息对应,也被称作编码信号、编码比特流或编码比特序列。
在图11的例子中,熵编码部110具备二值化部132、切换部134、中间缓存136、算术编码部138、切换部140和复用部142。并且,熵编码部110通过生成比特序列并将所生成的比特序列输出,将所生成的比特序列向输出缓存144保存。将向输出缓存144保存后的比特序列适当从输出缓存144输出。熵编码部110也可以包括输出缓存144。
[熵编码部中的二值化部]
二值化部132将量化系数等二值化。具体而言,二值化部132将量化后的频率变换系数等变换为例如用0或1表现的值的数据序列,将得到的数据序列输出。以下,将该数据序列也称作二值化数据序列。此外,由二值化部132进行的二值化基本上是用于算术编码的二值化,更具体而言,是用来进行二值算术编码的二值化。即,二值化部132基本上按照用于算术编码的二值化,导出图像信息的二值化数据序列。
另外,作为二值化的方式,有一元二值化(unarybinarization)、截断一元二值化(truncatedunarybinarization)、一元/k阶指数哥伦布结合二值化、固定长二值化及表参照等。
此外,例如通过二值化部132中的二值化及算术编码部138中的算术编码,进行上下文自适应二值算术编码方式的熵编码。将上下文自适应二值算术编码方式也称作cabac。可以将由二值化部132进行的二值化也表现为用于上下文自适应二值算术编码方式的二值化。
[熵编码部中的切换部]
切换部134及140按照模式信息连动地动作,切换是否对二值化数据序列应用算术编码。例如,切换部134及140按照从编码装置100的外部给出的模式信息,切换是否对二值化数据序列应用算术编码。模式信息也可以从用户或上位系统等作为指示给出。
例如,该模式信息有选择地表示第1模式及第2模式。即,模式信息表示从第1模式及第2模式中选择的一方的模式。并且,例如在第1模式中,对于二值化数据序列应用算术编码,在第2模式中,对于二值化数据序列不应用算术编码。
具体而言,在模式信息表示第1模式的情况下,切换部134通过将从二值化部132输出的二值化数据序列向中间缓存136输出,将二值化数据序列保存到中间缓存136中。并且,算术编码部138对保存在中间缓存136中的二值化数据序列应用算术编码,将应用了算术编码后的二值化数据序列输出。切换部140将从算术编码部138输出的二值化数据序列向复用部142输出。
另一方面,在模式信息表示第2模式的情况下,切换部134将从二值化部132输出的二值化数据序列原样向切换部140输出。并且,切换部140将从切换部134输出的二值化数据序列向复用部142输出。即,将算术编码旁路(bypass)。另外,为了避免与作为算术编码的一形态的旁路算术编码的混淆,有把将算术编码旁路表现为将算术编码跳过的情况。
模式信息及模式也可以表现为延迟模式信息及延迟模式。具体而言,第1模式是通常模式,第2模式是低延迟模式。并且,在第2模式中,与第1模式相比削减了处理延迟。
[熵编码部中的中间缓存]
中间缓存136是用来将二值化数据序列保存的存储部,也被称作中间存储器。在由算术编码部138进行的算术编码中发生延迟。此外,延迟量根据二值化数据序列的内容而波动。由中间缓存136将延迟量的波动吸收,平滑地进行后续的处理。另外,将数据向中间缓存136等的存储部输入与向存储部保存数据对应,从存储部输出数据与从存储部读出数据对应。
[熵编码部中的算术编码部]
算术编码部138进行算术编码。具体而言,算术编码部138将保存在中间缓存136中的二值化数据序列读出,对二值化数据序列应用算术编码。算术编码部138也可以对二值化数据序列应用与上下文自适应二值算术编码方式对应的算术编码。
例如,算术编码部138按照数据类别等的上下文选择值的发生概率,按照所选择的发生概率进行算术编码,按照算术编码的结果将发生概率更新。即,算术编码部138按照可变的发生概率进行算术编码。将按照可变的发生概率进行的算术编码也称作上下文适应算术编码。
此外,算术编码部138也可以关于特定的数据类别等,按照固定的发生概率进行算术编码。具体而言,算术编码部138作为0或1的发生概率,也可以按照50%的发生概率进行算术编码。将按照固定的发生概率进行的算术编码也称作旁路算术编码。
[熵编码部中的复用部]
复用部142将模式信息与二值化数据序列复用,生成包含模式信息及二值化数据序列的比特序列。并且,复用部142通过将比特序列向输出缓存144输出,将比特序列向输出缓存144保存。将保存在输出缓存144中的比特序列适当从输出缓存144输出。即,复用部142经由输出缓存144将比特序列输出。
例如,模式信息也可以作为上位的参数而包含在比特序列中。具体而言,模式信息既可以包含在比特序列的sps(序列参数集)中,也可以包含在比特序列的pps(图片参数集)中,也可以包含在比特序列的切片头中。将比特序列中包含的模式信息用1个以上的比特表现。
并且,二值化数据序列也可以包含在切片数据中。这里,二值化数据序列既可以是被应用了算术编码的二值化数据序列,也可以是没有被应用算术编码的二值化数据序列。
此外,比特序列中包含的模式信息也可以表现为是否对比特序列中包含的二值化数据序列应用算术编码的应用信息。换言之,模式信息也可以作为表示是否对二值化数据序列应用了算术编码的应用信息而包含在比特序列中。该应用信息可以表示比特序列包含被应用了算术编码的二值化数据序列、或者比特序列包含没有被应用算术编码的二值化数据序列。
另外,在上位系统中交换了模式信息的情况下、或预先设定了模式信息的情况下等,也可以在比特序列中不包含模式信息。即,在此情况下,也可以不进行复用。
[输出缓存]
输出缓存144是用来保存比特序列的存储部,也被称作cpb(codedpicturebuffer:编码图片缓存)或输出存储器。通过编码装置100将图像信息编码而得到的比特序列被保存在输出缓存144中。并且,将保存在输出缓存144中的比特序列适当输出,与例如编码音频信号等复用。
[解码装置中的熵解码部的详细情况]
图12是表示有关实施方式1的解码装置200中的熵解码部202的详细的功能结构的框图。熵解码部202通过对经由输入缓存232输入的比特序列进行熵解码,导出量化系数等。该比特序列例如是由编码装置100生成的比特序列,可以具有上述的数据结构。
在图12的例子中,熵解码部202具备分离部234、切换部236、算术解码部238、中间缓存240、切换部242和逆二值化部244。熵解码部202也可以包含输入缓存232。
[输入缓存]
输入缓存232是用来保存比特序列的存储部,也被称作cpb或输入存储器。将由解码装置200解码的比特序列例如从编码音频信号等分离,保存到输入缓存232中。并且,解码装置200将保存在输入缓存232中的比特序列读出,将比特序列解码。
[熵解码部中的分离部]
分离部234从输入缓存232取得比特序列,将模式信息和二值化数据序列从比特序列分离,将模式信息和二值化数据序列输出。即,分离部234经由输入缓存232取得包含模式信息和二值化数据序列的比特序列,将比特序列中包含的模式信息和二值化数据序列输出。二值化数据序列既可以是被应用了算术编码的二值化数据序列,也可以是没有被应用算术编码的二值化数据序列。
如上述那样,模式信息也可以表现为是否对比特序列中包含的二值化数据序列应用算术编码的应用信息。并且,在上位系统中交换了模式信息的情况下、或预先设定了模式信息的情况下等,也可以在比特序列中不包含模式信息。在此情况下,也可以不进行模式信息的分离及输出。此外,模式信息也可以从解码装置200的外部、具体而言从用户或上位系统等作为指示给出。
[熵解码部中的切换部]
切换部236及242按照从分离部234等得到的模式信息而连动动作,切换是否对二值化数据序列应用算术解码。例如,在模式信息有选择地表示的第1模式及第2模式中的第1模式中,对二值化数据序列应用算术解码,在第2模式中,不对二值化数据序列应用算术解码。
具体而言,在模式信息表示第1模式的情况下,切换部236将从分离部234输出的二值化数据序列向算术解码部238输出。并且,算术解码部238对二值化数据序列应用算术解码,通过将被应用了算术解码的二值化数据序列输出,将被应用了算术解码的二值化数据序列保存到中间缓存240中。切换部242适当取得保存在中间缓存240中的二值化数据序列,将从中间缓存240取得的二值化数据序列向逆二值化部244输出。
另一方面,在模式信息表示第2模式的情况下,切换部236将从分离部234输出的二值化数据序列原样向切换部242输出。并且,切换部242将从切换部236输出的二值化数据序列向逆二值化部244输出。即,将算术解码旁路。另外,为了避免与作为算术解码的一形态的旁路算术解码的混淆,有时把将算术解码旁路表现为将算术解码跳过。
[熵解码部中的算术解码部]
算术解码部238进行算术解码。具体而言,算术解码部238对被应用了算术编码的二值化数据序列应用算术解码,通过将被应用了算术解码的二值化数据序列输出,将被应用了算术解码的二值化数据序列保存到中间缓存240中。被应用了算术解码的二值化数据序列与没有被应用算术编码的原来的二值化数据序列对应。算术解码部238也可以对二值化数据序列应用与上下文自适应二值算术编码方式对应的算术解码。
例如,算术解码部238按照数据类别等的上下文选择值的发生概率,按照所选择的发生概率进行算术解码,按照算术解码的结果将发生概率更新。即,算术解码部238按照可变的发生概率进行算术解码。将按照可变的发生概率进行的算术解码也称作上下文适应算术解码。
此外,算术解码部238也可以对特定的数据类别等按照固定的发生概率进行算术解码。具体而言,算术解码部238也可以作为0或1的发生概率而按照50%的发生概率进行算术解码。将按照固定的发生概率进行的算术解码也称作旁路算术解码。
[熵解码部中的中间缓存]
中间缓存240是用来将算术解码后的二值化数据序列保存的存储部,也被称作中间存储器。在由算术解码部238进行的算术解码中,发生延迟。此外,延迟量根据二值化数据序列的内容而波动。由中间缓存240将延迟量的波动吸收,平滑地进行后续的处理。
[熵解码部中的逆二值化部]
逆二值化部244通过对二值化数据序列进行逆二值化,导出量化系数等。具体而言,逆二值化部244将例如用0或1表现的值的二值化数据序列变换为量化的频率变换系数等,将量化的频率变换系数等向逆量化部204输出。此外,由逆二值化部244进行的逆二值化基本上是与用于算术编码的二值化对应的逆二值化,更具体地讲是与用来进行二值算术编码的二值化对应的逆二值化。
此外,例如通过由算术解码部238中的算术解码及逆二值化部244中的逆二值化进行上下文自适应二值算术编码方式的熵解码。即,逆二值化部244也可以进行遵循上下文自适应二值算术编码方式的逆二值化。此外,将逆二值化也称作多值化。
[算术编码及算术解码的应用有无]
本实施方式的编码装置100及解码装置200特别对于要求在短时间中进行编码及解码的实时通信系统等是有用的。具体而言,编码装置100及解码装置200对于电视会议系统或电子镜等是有用的。例如,在这些系统环境中,使用不进行算术编码及算术解码的第2模式。
此外,基本上应用信息表示是否以包括1个以上的图片的单位包含性地对比特序列中包含的二值化数据序列应用了算术编码。并且,以包括1个以上的图片的单位包含性地进行算术编码的应用有无的切换。
但是,也可以以更细小的单位进行算术编码的应用有无的切换。例如,在特定的数据类别中,也可以将算术编码及算术解码跳过。更具体地讲,也可以代替旁路算术编码及旁路算术解码而进行算术编码及算术解码的跳过。
此外,例如也可以进行上下文算术编码、旁路算术编码和算术编码的跳过的切换。同样,也可以进行上下文算术解码、旁路算术解码和算术解码的跳过的切换。
此外,表示是否对二值化数据序列应用算术编码的应用信息既可以用1比特的标志表现,也可以用其他形式表现。例如,通过将表示对二值化数据序列应用了算术编码的信息追加到比特序列中,比特序列可能包含被追加的信息作为应用信息。或者,通过将表示没有对二值化数据序列应用算术编码的信息追加到比特序列中,比特序列可能包含被追加的信息作为应用信息。
此外,应用信息也可以作为与其他信息共用的信息而包含在比特序列中。例如,在表示图片的类别的信息包含在比特序列中、并且根据图片的类别来切换算术编码的应用有无的情况下,表示图片的类别的信息也可以是应用信息。
[语法构造的切换]
根据是否应用算术编码及算术解码,代码量有可能较大地不同。特别是,关于图像的频率成分的频率变换系数信息的信息量较大。因而,在关于频率变换系数信息不使用算术编码及算术解码的情况下,代码量有可能变得非常大。
所以,编码装置100的二值化部132关于图像信息中的频率变换系数信息,以在应用算术编码的第1模式和不应用算术编码的第2模式中不同的二值化形式进行二值化。同样,解码装置200的逆二值化部244关于图像信息中的频率变换系数信息,使用在应用算术解码的第1模式和不应用算术解码的第2模式中不同的逆二值化形式进行逆二值化。
对于编码装置100的二值化部132,也可以与编码装置100的切换部134及140同样赋予模式信息。并且,编码装置100的二值化部132也可以取得被赋予的模式信息,按照模式信息来切换频率变换系数信息的二值化形式。
同样,解码装置200的逆二值化部244也可以与解码装置200的切换部236及242同样被赋予模式信息。并且,解码装置200的逆二值化部244也可以取得被赋予的模式信息,按照模式信息来切换频率变换系数信息的逆二值化形式。
例如,对于频率变换系数信息,应用在第1模式和第2模式中不同的语法构造。
图13是表示有关实施方式1的语法构造的流程图。语法构造与二值化形式及逆二值化形式对应。二值化部132通过按照图13所示的语法构造对图像信息进行二值化,将图像信息变换为二值化数据序列。
具体而言,二值化部132对图片层的头信息进行二值化(s101)。接着,二值化部132对切片(slice)层的头信息进行二值化(s102)。接着,二值化部132对块层的编码信息进行二值化(s103)。
具体而言,二值化部132除了频率变换系数信息以外,对块层的编码信息进行二值化。例如,频率变换系数信息表示量化的频率变换系数。此外,例如块层的编码信息包含预测参数信息。预测参数信息表示包含关于图像的预测方法的预测参数。
预测参数信息也可以表示是面内预测还是面间预测的编码模式。此外,预测参数信息也可以表示关于面间预测的运动矢量及参照图片。此外,预测参数信息也可以表示关于面内预测的预测方向的面内预测模式。
并且,二值化部132在第1模式中(在s104中是第1模式),以第1模式用的语法构造对频率变换系数信息进行二值化(s105)。并且,二值化部132在第2模式中(在s104中是第2模式),以第2模式用的语法构造对频率变换系数信息进行二值化(s106)。
并且,二值化部132关于切片中包含的各块,反复进行对于块的处理(s103~s106)(s107)。并且,二值化部132对于图片中包含的各切片,反复进行对于切片的处理(s102~s107)(s108)。并且,二值化部132关于各图片反复进行对于图片的处理(s101~s108)(s109)。
由此,二值化部132以在第1模式和第2模式中不同的语法构造对频率变换系数信息进行二值化,以在第1模式和第2模式中共用的语法构造对其他信息进行二值化。
此外,解码装置200的逆二值化部244通过按照图13所示的语法构造对二值化数据序列进行逆二值化,将二值化数据序列变换为图像信息。
具体而言,逆二值化部244对图片层的头信息的二值化数据序列进行逆二值化(s101)。接着,逆二值化部244对切片层的头信息的二值化数据序列进行逆二值化(s102)。接着,逆二值化部244对块层的编码信息的二值化数据序列进行逆二值化(s103)。具体而言,逆二值化部244除了频率变换系数信息的二值化数据序列以外,对块层的编码信息的二值化数据序列进行逆二值化。
并且,逆二值化部244在第1模式中(在s104中是第1模式),以第1模式用的语法构造对频率变换系数信息的二值化数据序列进行逆二值化(s105)。并且,逆二值化部244在第2模式中(在s104中是第2模式),以第2模式用的语法构造对频率变换系数信息的二值化数据序列进行逆二值化(s106)。
接着,逆二值化部244对切片中包含的各块反复进行对于块的处理(s103~s106)(s107)。并且,逆二值化部244关于图片中包含的各切片反复进行对于切片的处理(s102~s107)(s108)。并且,逆二值化部244关于各图片反复进行对于图片的处理(s101~s108)(s109)。
由此,逆二值化部244以在第1模式和第2模式中不同的语法构造对频率变换系数信息的二值化数据序列进行逆二值化,以在第1模式和第2模式中共用的语法构造对其他信息的二值化数据序列进行逆二值化。
在第1模式中,应用算术编码及算术解码。因而,使用适合于算术编码及算术解码的应用的语法构造作为第1模式用的语法构造。例如,第1模式用的语法构造既可以是用来在算术编码中减小代码量的统一性的语法构造,也可以是二值化的处理负荷较小的简单的语法构造。
在第2模式中,不应用算术编码及算术解码。因而,使用用来减小在二值化本身中发生的代码量的语法构造作为第2模式用的语法构造。
在图13的例子中,仅对图像信息中的表示关于图像的频率成分的频率变换系数的频率变换系数信息应用在第1模式和第2模式中不同的语法构造。并且,对图像信息中的除了频率变换系数信息以外的其他的全部信息应用在第1模式和第2模式中共用的语法构造。例如,对于图像信息中的表示关于图像的预测方法的预测参数的预测参数信息,在第1模式和第2模式中共用的语法构造。
另外,在图13的例子中,假设仅对频率变换系数信息应用第1模式和第2模式中不同的语法构造,但也可以对其他信息也应用在第1模式和第2模式中不同的语法构造。即,也可以对作为图像信息中包含的一部分的信息、频率变换系数信息及频率变换系数信息以外的作为不同语法构造的应用对象的信息的一部分的信息,应用在第1模式和第2模式中不同的语法构造。在此情况下,由于根据是应用算术编码及算术解码的第1模式、还是不应用算术编码及算术解码的第2模式,除了频率变换系数信息以外,对于频率变换系数信息以外的作为不同语法构造的应用对象的信息也应用不同的语法构造,所以与应用在第1模式和第2模式中共用的语法构造的情况相比,有可能关于在第1模式或第2模式的至少一方中频率变换系数信息以外的作为不同语法构造的应用对象的信息也能够减小代码量。
此外,在图13的例子中,假设对于预测参数信息应用在第1模式和第2模式中共用的语法构造,但也可以对预测参数信息中包含的一部分的预测参数应用在第1模式和第2模式中不同的语法构造。例如,也可以对于预测参数信息中包含的关于编码模式的信息、关于画面内预测的预测方向的信息、关于画面间预测的参照图片的信息及关于画面间预测的运动矢量的信息中的某些或全部应用在第1模式和第2模式中共用的语法构造,对于应用了在第1模式和第2模式中共用的语法构造的预测参数以外的参数应用在第1模式和第2模式中不同的语法构造。在此情况下,与对于预测参数信息整体应用在第1模式和第2模式中共用的语法构造的情况相比,有可能能够在第1模式或第2模式的至少一方中减小预测参数信息的代码量。
[基本块]
编码装置100的二值化部132对于频率变换块按照每个基本块进行二值化。例如,二值化部132将频率变换块划分为多个基本块,按照每个基本块进行二值化。频率变换块是包括通过变换单元的频率变换得到的多个频率变换系数的块。即,频率变换块相当于被实施了频率变换的变换单元,也可以表现为频率变换系数块。
例如,在变换单元是由16×16的多个像素值构成的块的情况下,通过变换单元的频率变换得到由16×16的多个频率变换系数构成的频率变换块。并且,例如二值化部132将尺寸是16×16的频率变换块划分为尺寸分别是4×4的多个基本块。并且,二值化部132对于尺寸是16×16的频率变换块按照尺寸是4×4的每个基本块进行二值化。
此外,具体而言,二值化部132对于构成频率变换块的1个以上的基本块,按照以频率由高到低的顺序规定的规定的扫描顺序,对于频率变换块中包含的多个频率变换系数按照每个基本块进行二值化。
此外,二值化部132在第2模式中,对表示频率变换块中的特定基本块的位置的位置信息进行二值化。特定基本块是构成频率变换块的1个以上的基本块中的、在上述的扫描顺序中最先包含非零系数的基本块,也表现为last_sub_block。非零系数是绝对值不为0的频率变换系数。
并且,二值化部132在第2模式中,仅对构成频率变换块的1个以上的基本块中的、在上述扫描顺序中为特定基本块以后的各基本块,对表示构成基本块的多个频率变换系数的块信息进行二值化。另外,在扫描顺序中特定基本块以后,包括特定基本块及在扫描顺序中后续于特定基本块的1个以上的基本块。
由此,编码装置100在第2模式下能够将位置信息及块信息作为频率变换系数信息进行二值化。并且,编码装置100由于对于在扫描顺序中为特定基本块以后的各基本块对块信息进行二值化,所以能够对使频率变换系数信息的二值化数据序列变短进行支援。并且,编码装置100能够输出包括频率变换系数信息的二值化数据序列的比特序列。
此外,例如在第1模式中,二值化部132也可以不对特定基本块的位置信息进行二值化,而对构成频率变换块的1个以上的基本块的全部进行二值化。由此,二值化部132能够以在第1模式和第2模式中不同的形式对频率变换系数信息进行二值化。
同样,解码装置200的逆二值化部244对频率变换块的二值化数据序列按照每个基本块进行逆二值化。具体而言,解码装置200的逆二值化部244以上述的扫描顺序,对频率变换块中包含的多个频率变换系数的二值化数据序列按照每个基本块进行逆二值化。
此外,解码装置200的逆二值化部244在第2模式中,对表示频率变换块中的特定基本块的位置的位置信息的二值化数据序列进行逆二值化。并且,逆二值化部244在第2模式中,仅对1个以上的基本块中的、在上述的扫描顺序中为特定基本块以后的各基本块,对于表示构成基本块的多个频率变换系数的块信息的二值化数据序列进行逆二值化。
由此,解码装置200在第2模式中,能够将位置信息及块信息的二值化数据序列作为频率变换系数信息的二值化数据序列进行逆二值化。并且,解码装置200由于对在扫描顺序中特定基本块以后的各基本块对于块信息的二值化数据序列进行逆二值化,所以能够对使频率变换系数信息的二值化数据序列变短进行支援。
此外,例如在第1模式中,逆二值化部244也可以不对特定基本块的位置信息的二值化数据序列进行逆二值化,而对与构成频率变换块的1个以上的基本块对应的全部的二值化数据序列进行逆二值化。由此,逆二值化部244能够以在第1模式和第2模式中不同的形式对频率变换系数信息的二值化数据序列进行逆二值化。
图14a~图14i分别是表示有关实施方式1的频率变换块中的1个以上的基本块的概念图。这里,频率变换块的尺寸是从4×4到16×16之间,基本块的尺寸是4×4。频率变换块的尺寸及形状依存于变换单元的尺寸及形状。频率变换块的形状既可以是纵向的长度与横向的长度均等的正方形,也可以是纵向的长度与横向的长度不均等的长方形。
具体而言,图14a表示4×4的频率变换块中的1个基本块。此外,图14b表示8×8的频率变换块中的4个基本块。图14c表示8×4的频率变换块中的2个基本块。图14d表示4×8的频率变换块中的2个基本块。图14e表示16×16的频率变换块中的16个基本块。
此外,图14f表示16×8的频率变换块中的8个基本块。图14g表示8×16的频率变换块中的8个基本块。图14h表示16×12的频率变换块中的12个基本块。图14i表示4×16的频率变换块中的4个基本块。
在图14a~图14i中,在1个以上的基本块的各自中记载的号码表示频率变换块中的基本块的位置。在该例中,表示频率变换块中的基本块的位置的号码以频率由低到高的顺序规定。即,表示基本块的位置的号码,该基本块的频率越低则规定为越小。
另外,在频率变换块中,接近于左上角的部分表示较低的频率,接近于右下角的部分表示较高的频率。此外,在频率变换块中,接近于左下角的部分表示在水平方向上较低、在垂直方向上较高的频率,接近于右上角的部分表示在水平方向上较高、在垂直方向上较低的频率。
即,构成二维的频率变换块的各频率变换系数越接近于右端,表示在水平方向上越高的频率成分的值。此外,构成二维的频率变换块的各频率变换系数越接近于下端,表示在垂直方向上越高的频率成分的值。
在沿朝向左下或右上的斜方排列的多个基本块中,将频率的水平看作相同。这里,对于频率的水平相同的多个基本块,将表示基本块的位置的号码以对于水平方向的频率由低到高的顺序规定。
扫描顺序以频率由高到低的顺序规定。例如,扫描顺序以表示基本块的位置的号码由大到小的顺序规定。并且,将表示基本块的位置的号码最大的基本块分配给扫描顺序的开头,将表示基本块的位置的号码最小的基本块分配给扫描顺序的最后。另外,在该例中,对于频率的水平相同的多个基本块的扫描顺序以相对于水平方向的频率由高到低的顺序规定。
在图14a~图14i中,将特定基本块用斜线的阴影表示。特定基本块是构成频率变换块的1个以上的基本块中的、在扫描顺序中最先包括非零系数的基本块。
在第2模式中,编码装置100的二值化部132对特定基本块的位置信息进行二值化。在该例中,二值化部132对表示特定基本块的位置的号码进行二值化。
并且,二值化部132仅对于构成频率变换块的1个以上的基本块中的在扫描顺序中为特定基本块以后的各基本块,对块信息进行二值化。在该例中,二值化部132对特定基本块的块信息进行二值化,对号码比特定基本块小的基本块的块信息进行二值化。
此外,在第2模式中,解码装置200的逆二值化部244对特定基本块的位置信息的二值化数据序列进行逆二值化。在该例中,逆二值化部244对表示特定基本块的位置的号码的二值化数据序列进行逆二值化。
并且,逆二值化部244仅对于构成频率变换块的1个以上的基本块中的在扫描顺序中为特定基本块以后的各基本块,对块信息的二值化数据序列进行逆二值化。在该例中,逆二值化部244对特定基本块的块信息的二值化数据序列进行逆二值化,对号码比特定基本块小的基本块的块信息的二值化数据序列进行逆二值化。
由此,编码装置100及解码装置200在第2模式中,能够将频率变换系数信息的二值化数据序列缩短。因而,编码装置100及解码装置200在不应用算术编码及算术解码的第2模式中,能够抑制代码量增大。
另外,并不限于第2模式,在第1模式中,二值化部132也可以对特定基本块的位置信息进行二值化。并且,在第1模式中,二值化部132也可以仅对于构成频率变换块的1个以上的基本块中的在扫描顺序中为特定基本块以后的各块,对块信息进行二值化。
此外,并不限于第2模式,在第1模式中,逆二值化部244也可以对特定基本块的位置信息的二值化数据序列进行逆二值化。并且,逆二值化部244在第1模式中,也可以仅对于构成频率变换块的1个以上的基本块中的在扫描顺序中为特定基本块以后的各基本块,对块信息的二值化数据序列进行逆二值化。
由此,编码装置100及解码装置200在第1模式中也能够将频率变换系数信息的二值化数据序列缩短。因而,由此,在应用算术编码及算术解码的第1模式中,有可能将代码量进一步削减。另外,在此情况下,也可以对于频率变换系数信息应用在第1模式和第2模式中相同的语法构造。或者,也可以用其他的方法对于频率变换系数信息应用在第1模式和第2模式中不同的语法构造。
此外,频率变换块的尺寸并不限于图14a~图14i的例子,也可以是其他的尺寸。也可以对于1个图片的多个频率变换块使用多种尺寸。此外,基本块的尺寸并不限于4×4,也可以是其他的尺寸。对于1个图片的多个基本块,既可以使用1种尺寸,也可以使用多种尺寸。
此外,作为表示基本块的位置的位置信息,在图14a~图14i中示出了表示基本块的位置的号码。图14a~图14i中示出的号码是一例,作为表示基本块的位置的号码,也可以使用以其他基准给出的其他号码。或者,作为表示基本块的位置的位置信息,也可以使用与号码不同的其他信息。
此外,在频率变换块的尺寸与基本块的尺寸相同的情况下,频率变换系数信息也可以不包含特定基本块的位置信息。即,在频率变换块中包含的基本块的个数是1的情况下,频率变换系数信息也可以不包含特定基本块的位置信息。并且,在频率变换块中包含的基本块的个数是2以上的情况下,频率变换系数信息也可以包含特定基本块的位置信息。
此外,在频率变换块不包含非零系数的情况下,频率变换系数信息也可以不包含该频率变换块中的特定基本块的位置信息。并且,在此情况下,频率变换系数信息也可以不包含表示构成特定基本块以后的各基本块的多个频率变换系数的块信息。并且,对于不包含非零系数的频率变换块的频率变换系数信息也可以不二值化,也可以不编码。
此外,二值化部132在第1模式中,也可以对频率变换块不按照每个基本块进行二值化。即,二值化部132在第1模式中,也可以不按照每个基本块而对频率变换块中包含的多个频率变换系数进行二值化。
同样,逆二值化部244在第1模式中,也可以对频率变换块的二值化数据序列不按照每个基本块进行逆二值化。即,逆二值化部244在第1模式中,也可以不按照每个基本块而对频率变换块中包含的多个频率变换系数的二值化数据序列进行逆二值化。
[作为非零系数的个数不包含0的表的利用]
编码装置100的二值化部132在第2模式中,将表示基本块中包含的非零系数的个数的数据值作为频率变换系数信息的一部分进行二值化。此外,解码装置200的逆二值化部244在第2模式中,对将表示基本块中包含的非零系数的个数的数据值作为频率变换系数信息的一部分进行了二值化的二值化数据序列进行逆二值化。由此,能够有效率地表现构成基本块的多个频率变换系数。
此外,二值化部132在表示非零系数的个数的数据值的二值化中,使用将多个数据值与多个二值化值建立了对应关系的变换表。同样,逆二值化部244在表示非零系数的个数的数据值的二值化值的逆二值化中,使用将多个数据值与多个二值化值建立了对应关系的变换表。该变换表也可以表现为可变长编码表。
例如,变换表也可以从包括作为非零系数的个数而包含表示0的数据值的对应关系的表、和作为非零系数的个数而不包含表示0的数据值的对应关系的表的多个表中进行选择。由此,能够削减频率变换系数信息的代码量。
图15是表示有关实施方式1的2种类的表a1、a2的概念图。在2种表a1、a2的各自中,将多个数据值与多个二值化值建立了对应关系。多个数据值分别与trailing_ones和total_coef的组合对应。
trailing_ones表示在基本块所包含的多个频率变换系数中,除了绝对值是0的频率变换系数以外,在以频率由高到低的顺序规定的扫描顺序中最先连续的绝对值是1的非零系数的个数。total_coef表示基本块所包含的多个频率变换系数中的非零系数的个数。trailing_ones和total_coef的组合是表示非零系数的个数的数据值的一例。
表a1包含作为非零系数的个数而表示0的数据值与二值化值的对应关系。即,表a1包括trailing_ones是0、total_coef是0的数据值。表a2不包含作为非零系数的个数而表示0的数据值与二值化值的对应关系。即,表a2不包含trailing_ones是0、total_coef是0的数据值。
由此,在表a2中与数据值建立了对应关系的二值化值,用在表a1中与相同的数据值建立了对应关系的二值化值的比特长短的比特长来规定。
在图15的例子中,total_coef是3,trailing_ones是2。对于该数据值,在表a1中与作为7比特的二值化值的“0000101”建立了对应关系,在表a2中与作为6比特的二值化值的“000011”建立了对应关系。
例如,二值化部132对表示非零系数的个数有可能是0的基本块的非零系数的个数的数据值按照表a1进行二值化。并且,二值化部132对表示非零系数的个数不可能是0的基本块的非零系数的个数的数据值按照表a2进行二值化。
同样,逆二值化部244对表示非零系数的个数有可能是0的基本块的非零系数的个数的数据值被二值化后的二值化值按照表a1进行逆二值化。并且,逆二值化部244对表示非零系数的个数不可能是0的基本块的非零系数的个数的数据值被二值化后的二值化值按照表a2进行逆二值化。
由此,编码装置100及解码装置200能够抑制代码量增大。
另外,在图15的例子中,表示了尺寸是4×4的基本块,但基本块的尺寸也可以是与4×4不同的尺寸。此外,基本块的尺寸既可以是与频率变换块相同的尺寸,也可以是比频率变换块小的尺寸。此外,在该例中,作为表示非零系数的个数的数据值而使用trailing_ones与total_coef的组合,但表示非零系数的个数的数据值也可以是其他的信息。
图16是表示有关实施方式1的表的选择的流程图。具体而言,图16是用来从图15所示的表a1及表a2中选择变换表的流程图。
例如,二值化部132按照每个基本块,从表a1及表a2中选择变换表,按照所选择的变换块对表示基本块中包含的非零系数的个数的数据值进行二值化。此外,逆二值化部244按照每个基本块,从表a1及表a2中选择变换表,按照所选择的变换块对表示基本块中包含的非零系数的个数的数据值的二值化值进行逆二值化。
这里,将按照每个基本块进行二值化或逆二值化的处理时的处理对象的基本块称作当前基本块。
此外,作为前提,二值化部132仅在频率变换块中包含特定基本块的情况下,对于在扫描顺序中为特定基本块以后的各基本块,对表示非零系数的个数的数据值进行二值化。并且,逆二值化部244仅在频率变换块中包含特定基本块的情况下,对于在扫描顺序中为特定基本块以后的各基本块,对表示非零系数的个数的数据值的二值化值进行逆二值化。特定基本块是在扫描顺序中最先包含非零系数的基本块。
即,编码装置100在频率变换块包含非零系数的情况下将频率变换块编码,在频率变换块不包含非零系数的情况下不将频率变换块编码。随之,解码装置200在频率变换块包含非零系数的情况下将频率变换块解码,在频率变换块不包含非零系数的情况下不将频率变换块解码。
在上述的前提中,在当前基本块不与频率变换块相同(s201中“否”),并且当前基本块不是特定基本块的情况下(s202中“否”),选择包含0个非零系数的对应关系的表a1(s203)。此外,在当前基本块与频率变换块相同的情况下(s201中“是”)或当前基本块是特定基本块的情况下(s202中“是”),选择不包含0个非零系数的对应关系的表a2(s204)。
在当前基本块与频率变换块相同的情况下,是否对当前基本块的数据值进行二值化,取决于当前基本块是否包含非零系数。在此情况下,如果当前基本块包含非零系数,则对当前基本块的数据值进行二值化,如果当前基本块不包含非零系数,则不对当前基本块的数据值进行二值化。
因而,在此情况下,如果对当前基本块的数据值进行二值化,则当前基本块包含非零系数。因此,在当前基本块与频率变换块相同的情况下,选择不包含0个非零系数的对应关系的表a2。
此外,特定基本块包含非零系数。因而,在当前基本块是特定基本块的情况下,选择不包含0个非零系数的对应关系的表a2。
另外,当前基本块与频率变换块是否相同,对应于频率变换块的尺寸与当前基本块的尺寸是否相同。例如,在各基本块的尺寸是4×4的情况下,也可以代替当前基本块与频率变换块是否相同的判定,而判定频率变换块的尺寸是否是4×4。
此外,上述的选择方法是一例,也可以使用其他的选择方法。此外,也可以使用上述选择方法中的分为2个情况的一方。此外,在上述例子中,从2个表a1及a2中选择变换表,但也可以从包括这些表a1及a2的3个以上的表中选择变换表。
此外,二值化部132与第2模式同样,在第1模式中,也可以按照从不包含0个非零系数的对应关系的表a2等中选择的变换表,对表示非零系数的个数的数据值进行二值化。或者,二值化部132在第1模式中,也可以不使用不包含0个非零系数的对应关系的表a2等,而使用包含0个非零系数的对应关系的表a1等,对表示非零系数的个数的数据值进行二值化。
或者,二值化部132在第1模式中,也可以不对表示非零系数的个数的数据值进行二值化。例如,二值化部132也可以在第1模式中,不取决于非零系数的个数而对多个频率变换系数的各自进行二值化。在第1模式中,即使不使用非零系数的个数,也通过算术编码的应用,对代码量的增加的抑制进行支援。
此外,逆二值化部244与第2模式同样,也可以在第1模式中,也按照从不包含0个非零系数的对应关系的表a2等中选择的变换表,对表示非零系数的个数的数据值的二值化值进行逆二值化。或者,逆二值化部244在第1模式中,也可以不使用不包含0个非零系数的对应关系的表a2等,而使用包含0个非零系数的对应关系的表a1等,对表示非零系数的个数的数据值的二值化值进行逆二值化。
或者,逆二值化部244在第1模式中,也可以不对表示非零系数的个数的数据值的二值化值进行逆二值化。例如,逆二值化部244在第1模式中,也可以不取决于非零系数的个数,而对多个频率变换系数的各自的二值化值进行逆二值化。在第1模式中,即使不使用非零系数的个数,也通过算术解码的应用,对代码量的增加的抑制进行支援。
[基于基本块的位置的表选择]
用于二值化或逆二值化的变换表也可以从包括与多个数据值建立了对应关系的多个二值化值的最长比特长与最短比特长的差相互不同的2个以上的表的多个表中进行选择。由此,能够削减频率变换系数信息的代码量。
图17是表示有关实施方式1的4种表b1~b4的概念图。在4种表b1~b4的各自中,将多个数据值与多个二值化值建立了对应关系。多个数据值分别与trailing_ones和total_coef的组合对应。另外,图17的表b1与图15的表a1相同。
具体而言,在图17的例子中,total_coef是3,trailing_ones是2。对于该数据值,在表b1中与作为7比特的二值化值的“0000101”建立了对应关系,在表b3中与作为5比特的二值化值的“01110”建立了对应关系。
编码装置100的二值化部132从表b1~b4中选择变换表,二值化部132按照所选择的变换表,对数据值进行二值化。同样,解码装置200的逆二值化部244从表b1~b4中选择变换表,按照所选择的变换表,对表示非零系数的个数的数据值的二值化值进行逆二值化。
另外,解码装置200的逆二值化部244以与编码装置100的二值化部132相同的选择基准,从表b1~b4中选择与由编码装置100的二值化部132选择的表相同的表作为变换表。
此外,在表b1~b3的各自中,非零系数的个数越少,与表示非零系数的个数的数据值建立了对应关系的二值化值的比特长被规定得越短。在表b1~b3中,在表b1中该趋向最强,在表b3中该趋向最弱。即,在表b1~b3中,在表b1中多个二值化值的比特长的变动最大,在表b3中多个二值化值的比特长的变动最小。
在表b4中,不取决于非零系数的个数,与表示非零系数的个数的数据值建立了对应关系的二值化值的比特长都是一定。即,在表b4中,以相同的比特长规定了与多个数据值建立了对应关系的多个二值化值。因而,最长比特长与最短比特长的差在表b1中最大,在表b2中次之,在表b3中再次之,在表b4中最小。
例如,作为非零系数的个数推测的个数越少,则选择表b1~b4中的最长比特长与最短比特长的差越大的表。由此,对于表示非零系数的个数的数据值分配比特长较短的二值化值的可能性变大。
相反,被推测为非零系数的个数的个数越多,则选择表b1~b4中的最长比特长与最短比特长的差越小的表。由此,对于表示非零系数的个数的数据值分配比特长较长的二值化值的可能性变小。
此外,推测当前基本块中的非零系数的个数给频率变换块中的当前基本块的位置带来影响。所以,例如编码装置100的二值化部132也可以按照每个频率变换块中的当前基本块的位置从表b1~b4中选择变换表。并且,二值化部132也可以按照所选择的变换表,对表示非零系数的个数的数据值进行二值化。
同样,解码装置200的逆二值化部244也可以按照每个频率变换块中的当前基本块的位置,从表b1~b4中选择变换表。并且,逆二值化部244也可以按照所选择的变换表,对表示非零系数的个数的数据值的二值化值进行逆二值化。由此,编码装置100及解码装置200能够抑制代码量增大。
另外,在表b1~b3的各自中,trailing_ones越大,二值化值的比特长被规定为越短。该趋向也在表b1~b3中在表b1中最强,在表b3中最弱。在表b4中没有该趋向。
推测在基本块中的各频率变换系数的绝对值较小与trailing_ones较大之间有相关性。所以,也可以是作为频率变换系数的绝对值推测的值越小,则在表b1~b4中选择该趋向越强的表。由此,对于trailing_ones与total_coef的组合分配比特长较短的二值化值的可能性变大。
此外,在图17中表示了4种表b1~b4,但也可以使用最长比特长与最短比特长的差相互不同的2种表,也可以使用3种表,也可以使用5种以上的表。
此外,在用来选择变换表的多个表中,并不仅限于最长比特长与最短比特长的差相互不同的2种以上的表,也可以包含最长比特长与最短比特长的差相互相等的2种以上的表。即,也可以在用来选择变换表的多个表中,包含最长比特长与最短比特长的差相互不同的2种以上的表,并且包含最长比特长与最短比特长的差相互相等的2种以上的表。
此外,也可以将图15所示的表a1及a2与图17所示的表b1~b4组合。例如,也可以从多个表b1~b4及a2中选择变换表。进而,也可以在用来选择变换表的多个表中包含从表b2~b4中去掉0个非零系数的对应关系的新的表。
此外,编码装置100及解码装置200也可以按照每个频率变换块中的基本块的位置,从表b1~b4中选择变换表。此时,编码装置100及解码装置200也可以利用基本块的层级。
图18a~图18i分别是表示有关实施方式1的频率变换块中的1个以上的基本块的各个层级的概念图。
在图18a~图18i中,在1个以上的基本块的各自中记载的号码表示频率变换块中的基本块的层级。在该例中,将表示频率变换块中的基本块的层级的号码以频率由低到高的顺序规定。即,表示基本块的层级的号码该基本块对应的频率的水平越低则规定为越小。即,层级与频率的水平对应。
在沿朝向左下或右上的斜向上排列的多个基本块中,将频率的水平看作相同。这里,对于频率的水平相同的多个基本块,将表示基本块的层级的号码用相同的值规定。
具体而言,图18a表示4×4的频率变换块中的1个基本块的层级。此外,图18b表示8×8的频率变换块中的4个基本块的各自的层级。图18c表示8×4的频率变换块中的2个基本块的各自的层级。图18d表示4×8的频率变换块中的2个基本块的各自的层级。图18e表示16×16的频率变换块中的16个基本块的各自的层级。
此外,图18f表示16×8的频率变换块中的8个基本块的各自的层级。
图18g表示8×16的频率变换块中的8个基本块的各自的层级。图18h表示16×12的频率变换块中的12个基本块的各自的层级。图18i表示4×16的频率变换块中的4个基本块的各自的层级。
此外,图18a~图18i中表示的号码是一例,作为表示基本块的层级的号码也可以使用其他的号码。或者,也可以使用以与号码不同的形式表示基本块的层级的信息。
图19是表示有关实施方式1的图案(pattern)的判定处理的流程图。例如,编码装置100的二值化部132按照每个频率变换块中的当前基本块的位置决定图案,按照所决定的图案选择变换表。该图案与频率变换块中的当前基本块的位置对应,并且与用来选择变换表的选择方法对应。
因此,编码装置100的二值化部132判定是否在与当前基本块相同的层级中存在先行基本块(s301)。这里,先行基本块是在扫描顺序中比当前基本块靠前的基本块。二值化部132在判定为在与当前基本块相同的层级中存在先行基本块的情况下(s301中“是”),将图案判定为第1图案(s302)。
二值化部132在判定为在与当前基本块相同的层级中不存在先行基本块的情况下(s301中“否”),判定在比当前基本块高的层级中是否存在特定基本块(s303)。这里,特定基本块是构成频率变换块的1个以上的基本块中的、在扫描顺序中最先包含非零系数的基本块。
二值化部132在判定为在比当前基本块高的层级中存在特定基本块的情况下(s303中“是”),将图案判定为第2图案(s304)。二值化部132在判定为在比当前基本块高的层级中不存在特定基本块的情况下(s303中“否”),将图案判定为第3图案(s305)。
另外,第1图案、第2图案及第3图案分别是图案的一例。既可以仅利用第1图案、第2图案及第3图案中的一部分,也可以利用其他的图案。
此外,解码装置200的逆二值化部244也与编码装置100的二值化部132同样,决定图案,选择变换表。因而,关于图案的决定及变换表的选择,编码装置100及二值化部132的动作可以替换为解码装置200及逆二值化部244的动作。以后的说明也是同样的。
图20a是表示有关实施方式1的第1图案的当前基本块的概念图。在与当前基本块相同的层级中存在先行基本块的情况下,将与当前基本块的位置对应的图案决定为第1图案。
换言之,在当前基本块的位置是在与当前基本块相同的层级中存在先行基本块那样的位置的情况下,将图案决定为第1图案。例如,在当前基本块位于图20a中的斜线的阴影部分的情况下,将与当前基本块的位置对应的图案决定为第1图案。
图20b是表示有关实施方式1的第2图案的当前基本块的概念图。在与当前基本块相同的层级中不存在先行基本块、并且在比当前基本块高的层级中存在特定基本块的情况下,将与当前基本块的位置对应的图案决定为第2图案。
换言之,在当前基本块的位置是在与当前基本块相同的层级中不存在先行基本块、并且在比当前基本块高的层级中存在特定基本块那样的位置的情况下,将图案决定为第2图案。例如,在当前基本块位于图20b中的斜线的阴影部分的情况下,将与当前基本块的位置对应的图案决定为第2图案。
图20c是表示有关实施方式1的第3图案的当前基本块的概念图。在与当前基本块相同的层级中不存在先行基本块、并且在比当前基本块高的层级中不存在特定基本块的情况下,将与当前基本块的位置对应的图案决定为第3图案。
换言之,在当前基本块的位置是在与当前基本块相同的层级中不存在先行基本块、并且在比当前基本块高的层级中不存在特定基本块那样的位置的情况下,将图案决定为第3图案。例如,在当前基本块位于图20c中的斜线的阴影部分的情况下,将与当前基本块的位置对应的图案决定为第3图案。
图21是表示有关实施方式1的在第1图案中选择的表的关系图。例如,编码装置100的二值化部132预测当前基本块中包含的非零系数的个数,按照当前基本块中包含的非零系数的个数的预测值,从表b1~b4中选择变换表。将该预测值也表现为nc。
在图21的例子中,二值化部132在预测值是0~1的情况下,选择最长比特长与最短比特长的差最大的表b1作为变换表。
此外,二值化部132在预测值是2~3的情况下,选择最长比特长与最短比特长的差第二大的表b2作为变换表。此外,二值化部132在预测值是4~7的情况下,选择最长比特长与最短比特长的差第三大的表b3则变换表。此外,二值化部132在预测值是8~16的情况下,选择最长比特长与最短比特长的差最小的表b4作为变换表。
在第1图案中,在与当前基本块相同的层级中存在先行基本块。因而,二值化部132按照与当前基本块相同的层级的先行基本块中包含的非零系数的个数,预测当前基本块中包含的非零系数的个数。具体而言,二值化部132预测在与当前基本块相同的层级的先行基本块中包含的非零系数的个数,作为当前基本块中包含的非零系数的个数。
在第1图案中,在当前基本块是在扫描顺序中最先包含非零系数的特定基本块的情况下,先行基本块中包含的非零系数的个数是0。因而,二值化部132将0预测为当前基本块中包含的非零系数的个数。
此外,二值化部132在与当前基本块相同的层级中存在多个先行基本块的情况下,也可以按照在扫描顺序中紧挨着的之前的先行基本块中包含的非零系数的个数来预测当前基本块中包含的非零系数的个数。
并且,二值化部132按照先行基本块的非零系数的个数预测基本块的非零系数的个数,按照非零系数的个数的预测值,从表b1~b4中选择变换表。即,二值化部132按照先行基本块的非零系数的个数,从表b1~b4中选择变换表。
另外,图21表示预测值的范围及选择的表的例子。预测值的范围及选择的表并不限于图21所示的例子。此外,二值化部132不仅是非零系数的个数的预测值,也可以还按照非零系数的个数的预测值和其他信息的组合来选择变换表。并不限于第1图案,关于其他的图案也是同样的。
图22是表示在有关实施方式1的第2图案中选择的表的关系图。
在第2图案中,在与当前基本块相同的层级中不存在先行基本块。另一方面,在比当前基本块高的层级、即比当前基本块的位置的频率的水平高的水平,存在包含非零系数的基本块。在此情况下,二值化部132预测为当前基本块中包含的非零系数的个数较多,将当前基本块中包含的非零系数的个数的预测值增大。并且,二值化部132按照增大后的预测值来选择变换表。
例如,二值化部132将当前基本块中包含的非零系数的个数的预测值决定为非零系数的个数的最大值。并且,二值化部132按照被决定为非零系数的个数的最大值的预测值选择变换表。
具体而言,二值化部132将当前基本块中包含的非零系数的个数的预测值决定为作为非零系数的个数的最大值的16。并且,二值化部132按照被决定为作为非零系数的个数的最大值的16的预测值选择变换表。由此,二值化部132选择最长比特长与最短比特长的差最小的表b4作为变换表。
另外,在第2图案中,二值化部132也可以不将预测值决定为最大值,也可以将预测值决定为比非零系数的个数的平均的值大的规定的值。并且,二值化部132也可以从表b1~b4中选择最长比特长与最短比特长的差比平均的差小的表作为变换表。
图23是表示有关实施方式1的在第3图案中用周边的频率变换块选择的表的关系图。在该例中,编码装置100的二值化部132在第3图案中,按照周边的频率变换块中包含的非零系数的个数来选择变换表。
在第3图案中,在与当前基本块相同的层级中不存在先行基本块。此外,在比当前基本块高的层级中不存在特定基本块。所以,二值化部132按照周边的频率变换块中包含的非零系数的个数,预测当前基本块中包含的非零系数的个数。二值化部132也可以将周边的频率变换块中包含的非零系数的个数预测为当前基本块中包含的非零系数的个数。
并且,二值化部132按照当前基本块中包含的非零系数的个数的预测值,从表b1~b4中选择变换表。即,二值化部132按照周边的频率变换块中可能包含的非零系数的个数,从表b1~b4中选择变换表。
例如,周边的频率变换块是距包含当前基本块的频率变换块在空间上接近的频率变换块,是编码已经完成的频率变换块。以下,将包含当前基本块的周边变换块称作当前频率变换块,将周边的频率变换块称作周边频率变换块。周边频率变换块也可以是在空间上距当前频率变换块为规定的范围中的频率变换块。
此外,周边频率变换块也可以是在当前频率变换块的左方或上方邻接的频率变换块。由此,二值化部132能够按照在距当前频率变换块较近的频率变换块中包含的非零系数的个数,高精度地预测非零系数的个数。
此外,周边频率变换块也可以是在编码顺序中紧挨着的之前的当前频率变换块。由此,能够实现非零系数的个数的简单的预测、以及用来存储关于非零系数的个数的信息的存储器容量的削减。
此外,周边频率变换块也可以是距当前频率变换块为规定的范围中的频率变换块、编码模式与当前频率变换块相同的频率变换块。由此,二值化部132能够按照推测为非零系数的发生趋向与当前频率变换块相似的频率变换块,高精度地预测非零系数的个数。另外,规定的范围也可以是包括当前频率变换块的编码树单元的范围。
作为周边频率变换块中包含的非零系数的个数,也可以使用相对于周边频率变换块的相对性的位置与当前基本块相对于当前频率变换块的相对性的位置相等的基本块中包含的非零系数的个数。由此,二值化部132关于非零系数的个数,能够按照相对于当前基本块相关性较强的基本块高精度地预测非零系数的个数。
作为周边频率变换块中包含的非零系数的个数,也可以使用周边频率变换块整体的非零系数的个数。由此,不取决于频率变换块的尺寸而将信息综合,所以能够进行非零系数的个数的简单的预测、以及用来将与非零系数的个数有关的信息存储的存储器容量的削减。
此外,二值化部132也可以按照周边频率变换块整体的非零系数的个数,导出每基本块的非零系数的个数,按照每基本块的非零系数的个数,预测当前基本块中包含的非零系数的个数。由此,二值化部132能够不取决于频率变换块的尺寸的差异而适当地预测非零系数的个数。并且,二值化部132能够按照适当的预测值来选择变换表。
图24是表示有关实施方式1的在第3图案中以编码模式选择的表的关系图。在该例中,二值化部132在第3图案中,代替周边的频率变换块中包含的非零系数的个数,而按照是面间预测还是面内预测的编码模式来选择变换表。该编码模式对应于在当前基本块的编码及解码中是使用面间预测还是使用面内预测。
例如,在当前块的编码模式是面间预测的情况下,推测与面内预测相比预测精度较高、非零系数的个数较少。因而,二值化部132选择最长比特长与最短比特长的差较大的表b1。另一方面,在当前块的编码模式是面内预测的情况下,与面间预测相比预测精度较低,推测为非零系数的个数较多。因而,二值化部132选择最长比特长与最短比特长的差比表b1小的表b2。
另外,图24表示选择的表的例子。选择的表并不限于图24所示的例子。此外,二值化部132不仅是编码模式,也可以按照编码模式与其他信息的组合来选择变换表。
图25是表示有关实施方式1的在第3图案中以量化参数选择的表的关系图。在该例中,二值化部132在第3图案中,代替周边的频率变换块中包含的非零系数的个数、以及面间预测还是面内预测的编码模式,按照qp值来选择变换表。该qp值是在当前基本块的编码及解码中使用的量化参数的值,qp值越大则量化宽度越大。
例如,qp值越大,推测将频率变换系数的值量化为0的可能性越高,通过量化产生的非零系数越少。因而,二值化部132其qp值越大,从表b1~b4中选择最长比特长与最短比特长的差越大的表。
另一方面,qp值越小,推测将频率变换系数的值量化为0的可能性越低,通过量化产生的非零系数越多。因而,qp值越小,则二值化部132从表b1~b4中选择最长比特长与最短比特长的差越小的表。
在该例中,二值化部132在qp值是0~21的情况下,选择最长比特长与最短比特长的差最小的表b4作为变换表。
此外,二值化部132在qp值是22~31的情况下,选择最长比特长与最短比特长的差第二小的表b3作为变换表。此外,二值化部132在qp值是32~41的情况下,选择最长比特长与最短比特长的差第三小的表b2作为变换表。此外,二值化部132在qp值是42~51的情况下,选择最长比特长与最短比特长的差最大的表b1作为变换表。
另外,图25表示qp值的范围及选择的表的例子。qp值的范围及选择的表并不限于图25所示的例子。此外,二值化部132也可以不仅是qp值,还按照qp值与其他信息的组合来选择变换表。
此外,在上述例子中,二值化部132按照当前基本块的位置决定表选择方法,按照所决定的表选择方法来选择变换表。由此,二值化部132按照当前基本块的位置来选择变换表。
另一方面,当前基本块的位置越是接近于频率变换块的左上角,推测当前基本块中包含的非零系数越多。因而,二值化部132也可以是当前基本块的位置越是接近于频率变换块的左上角,则从表b1~b4等中选择最长比特长与最短比特长的差越小的表作为变换表。由此,二值化部132也可以按照当前基本块的位置来选择变换表。
此外,在上述的说明中,关于非零系数的个数,使用预测这样的表现,但为了与面内预测及面间预测等那样的图像的预测区别,也可以代替预测的表现而使用推测的表现。
[频率变换系数信息的语法构造]
图26是表示有关实施方式1的语法构造的数据图。编码装置100的二值化部132按照图26所示的语法构造,对频率变换系数信息进行二值化。解码装置200的逆二值化部244按照图26所示的语法构造,对频率变换系数信息的二值化数据序列进行逆二值化。
图26的例子是基本块的尺寸为4×4的情况下的例子,但基本块的尺寸并不限于4×4。基本块的尺寸既可以是与频率变换块相同的尺寸,也可以是比频率变换块小的尺寸。此外,在图26中用粗体字表示的参数是在二值化数据序列中记述的参数。
last_sub_block_pos是表示特定基本块的位置的信息。特定基本块是在对于构成频率变换块的1个以上的基本块以频率由高到低的顺序规定的扫描顺序中最先包含非零系数的基本块。last_sub_block_pos也可以是将特定基本块的位置例如如图14a~图14i那样用号码表示的信息。在二值化数据序列中,按照每个频率变换块而最大包含1个last_sub_block_pos。
coef_token是表示基本块中包含的非零系数的个数的信息。具体而言,coef_token与total_coef及trailing_ones的两者对应。更具体地讲,coef_token也可以是如例如图15及图17那样与将total_coef及trailing_ones组合的数据值对应的二值化值。在二值化数据序列中,按照每个基本块而最大包含1个coef_token。
total_zeros是表示对于基本块中包含的多个频率变换系数在以频率由高到低的顺序规定的扫描顺序中比最先出现的非零系数靠后出现的零系数的总数的信息。这里,零系数是值为0的频率变换系数。在二值化数据序列中,按照每个基本块而最大包含1个total_zeros。
run_before是表示关于对于基本块中包含的多个频率变换系数在以频率由高到低的顺序规定的扫描顺序中出现的各非零系数、在比非零系数靠后连续出现的零系数的个数的信息。在二值化数据序列中,按照每个基本块而最大包含从非零系数的个数减去1的数量的run_before。
coeff_sign_flag是表示基本块中包含的各非零系数的值的正负的信息。在二值化数据序列中,按照每个基本块而最大包含与非零系数的个数相同数量的coeff_sign_flag。
coeff_abs_level_remaining是表示基本块中包含的各非零系数的绝对值的信息。在二值化数据序列中,按照每个基本块而最大包含与非零系数的个数相同数量的coeff_abs_level_remaining。
图26所示的语法构造是一例。也可以使用作为与图26所示的语法构造不同的语法构造、表示与图26所示的语法构造相同那样的信息的语法构造。
[编码装置的实现例]
图27是表示有关实施方式1的编码装置100的实现例的框图。编码装置100具备电路160及存储器162。例如,图1及图11所示的编码装置100的多个构成要素由图27所示的电路160及存储器162实现。
电路160是进行信息处理的电路,是能够对存储器162访问的电路。例如,电路160是将图像信息编码的专用或通用的电子电路。电路160也可以是cpu那样的处理器。此外,电路160也可以是多个电子电路的集合体。此外,例如电路160也可以起到除图1及图11所示的编码装置100的多个构成要素中的用来存储信息的构成要素以外的多个构成要素的作用。
存储器162是存储用于电路160将图像信息编码的信息的通用或专用的存储器。存储器162也可以是电子电路,也可以连接在电路160上。此外,存储器162也可以是多个电子电路的集合体。此外,存储器162既可以是磁盘或光盘等,也可以表现为存储设备或记录介质等。此外,存储器162既可以是非易失性存储器,也可以是易失性存储器。
例如,在存储器162中,既可以存储编码的图像信息,也可以存储与编码的图像信息对应的比特序列。此外,在存储器162中,也可以用于电路160将图像信息编码的程序。
此外,例如电路160也可以起到图1及图11所示的编码装置100的多个构成要素中的用来存储信息的构成要素的作用。具体而言,存储器162也可以起到图1所示的块存储器118及帧存储器122的作用,也可以起到图11所示的中间缓存136的作用。
另外,在编码装置100中,也可以不安装图1及图11等所示的多个构成要素的全部,也可以不进行上述多个处理的全部。图1及图11等所示的多个构成要素的一部分也可以包含在其他装置中,上述多个处理的一部分也可以由其他装置执行。
并且,在编码装置100中,也可以安装着图1及图11等所示的多个构成要素中的一部分,通过进行上述多个处理的一部分,能够将频率变换系数信息适当地编码。
[编码装置的第1编码动作例]
图28是表示有关实施方式1的编码装置100的第1编码动作例的流程图。例如,图27所示的编码装置100的电路160通过进行图28所示的动作,将图像信息编码,输出将图像信息编码后的比特序列。
具体而言,首先,电路160对图像信息进行二值化(s401)。例如,图像信息包含与图像的频率成分有关的频率变换系数信息、以及与图像的预测方法有关的预测参数信息等。并且,电路160切换是否对将图像信息二值化后的二值化数据序列应用算术编码(s402)。
在对二值化数据序列应用算术编码的情况下(s402中“是”),电路160对二值化数据序列应用算术编码,将包含被应用了算术编码的二值化数据序列的比特序列输出(s403)。
在不对二值化数据序列应用算术编码的情况下(s402中“否”),电路160不对二值化数据序列应用算术编码,而输出包含没有被应用算术编码的二值化数据序列的比特序列(s404)。
由此,编码装置100能够将算术编码跳过。因而,编码装置100能够对通过算术编码发生的处理延迟的削减进行支援。
图29是表示有关实施方式1的编码装置100的第1编码动作例中的二值化处理的流程图。即,图29表示图28中的二值化处理(s401)的具体的例子。
电路160按照在对二值化数据序列应用算术编码的情况和不对二值化数据序列应用算术编码的情况下共用的二值化形式,对图像信息中的与频率变换系数信息不同的其他信息进行二值化(s411)。该其他的信息例如包括预测参数信息的一部分或全部。
此外,电路160按照在对二值化数据序列应用算术编码的情况和不对二值化数据序列应用算术编码的情况下不同的二值化形式,对图像信息中的频率变换系数信息进行二值化(s412)。更具体地讲,电路160也可以按照在对二值化数据序列应用算术编码的情况和不对二值化数据序列应用算术编码的情况下不同的二值化形式,对图像信息中的包含频率变换系数信息的信息进行二值化。
由此,编码装置100能够对给整体的代码量带来较大的影响的频率变换系数信息按照算术编码的应用有无而适当地进行二值化。因而,编码装置100能够将频率变换系数信息适当地编码,能够抑制整体的代码量的增加。
另外,其他信息的二值化(s411)和频率变换系数信息的二值化(s412)的处理顺序也可以相反。
此外,例如预测参数信息包括预测参数信息中包含的关于编码模式的信息、关于画面内预测的预测方向的信息、关于画面间预测的参照图片的信息、以及关于画面间预测的运动矢量的信息。
电路160也可以对于预测参数信息中包含的这些信息,按照在对二值化数据序列应用算术编码的情况和不对二值化数据序列应用算术编码的情况下共用的二值化形式实施二值化。或者,电路160也可以对于这些中的至少1个,按照在对二值化数据序列应用算术编码的情况和不对二值化数据序列应用算术编码的情况下共用的二值化形式实施二值化。
此外,电路160也可以仅对图像信息中的频率变换系数信息按照根据算术编码的应用有无而不同的二值化形式来进行二值化。并且,电路160也可以对图像信息中的除了频率变换系数信息以外的其他的全部信息,不取决于算术编码的应用有无而按照共用的二值化形式进行二值化。
由此,编码装置100能够对除了频率变换系数信息以外的其他全部信息按照共用的二值化形式进行二值化。因而,使处理简单化。
图30是表示有关实施方式1的编码装置100的第1编码动作例中的频率变换系数信息的二值化处理的流程图。即,图30表示图29中的频率变换系数信息的二值化处理(s412)的具体的例子。
电路160在对于二值化数据序列应用算术编码的情况下(s421中“是”),对频率变换系数信息以第1二值化形式进行二值化(s422)。并且,电路160在不对二值化数据序列应用算术编码的情况下(s421中“否”),对频率变换系数信息以第2二值化形式进行二值化(s423)。并且,电路160在不对二值化数据序列应用算术编码的情况下,与对二值化数据序列应用算术编码的情况相比,以发生比特数较少的形式对频率变换系数信息进行二值化。
由此,编码装置100在不应用算术编码的情况下,能够对使频率变换系数信息的代码量变小进行支援。
[编码装置的第2编码动作例]
图31是表示有关实施方式1的编码装置100的第2编码动作例的流程图。例如,图27所示的编码装置100的电路160通过进行图31所示的动作而对图像信息进行编码。
具体而言,电路160对表示特定基本块的位置的位置信息进行编码(s501)。特定基本块是将对于构成具有多个频率变换系数的频率变换块的1个以上的基本块在以频率由高到低的顺序规定的规定的扫描顺序中最先具有非零系数来作为频率变换系数的基本块。
并且,电路160仅对构成频率变换块的1个以上的基本块中的、在规定的扫描顺序中为特定基本块以后的各基本块,对表示构成基本块的多个频率变换系数的块信息进行编码(s502)。
由此,编码装置100将位置信息及块信息作为频率变换系数信息进行编码。并且,编码装置100由于对在规定的扫描顺序中为特定基本块以后的各基本块将块信息编码,所以能够对使频率变换系数信息的代码量变小进行支援。
另外,电路160也可以仅在构成频率变换块的1个以上的基本块的个数是2以上的情况下对位置信息进行编码。由此,编码装置100例如在频率变换块的尺寸与各基本块的尺寸相同的情况下,能够对使频率变换系数信息的代码量变得更小进行支援。
此外,电路160也可以仅在频率变换块中存在特定基本块的情况下对位置信息及块信息进行编码。由此,编码装置100例如在频率变换块中不包含非零系数的情况下,能够对使频率变换系数信息的代码量变得更小进行支援。
此外,电路160与第1编码动作例同样,也可以对图像信息进行编码,将编码了图像信息的比特序列输出。例如,如图28那样,电路160对图像信息进行二值化(s401)。并且,电路160对于是否对将图像信息二值化后的二值化数据序列应用算术编码进行切换(s402)。
并且,在对二值化数据序列应用算术编码的情况下(s402中“是”),电路160对二值化数据序列应用算术编码,将包含被应用了算术编码的二值化数据序列的比特序列输出(s403)。另一方面,在不对二值化数据序列应用算术编码的情况下(s402中“否”),电路160不对二值化数据序列应用算术编码,而将包含没有被应用算术编码的二值化数据序列的比特序列输出(s404)。
此外,如图29那样,电路160按照在对二值化数据序列应用算术编码的情况和不对二值化数据序列应用算术编码的情况下共用的二值化形式,对图像信息中的其他信息进行二值化(s411)。该其他信息例如包括预测参数信息的一部分或全部。
并且,电路160按照在对二值化数据序列应用算术编码的情况和不对二值化数据序列应用算术编码的情况下不同的二值化形式,对图像信息中的频率变换系数信息进行二值化(s412)。
此外,在不对二值化数据序列应用算术编码的情况下,电路160通过对包含位置信息及块信息的频率变换系数信息进行二值化,对位置信息及块信息进行编码。这里,编码的块信息是在规定的扫描顺序中为特定基本块以后的块信息。由此,编码装置100在不应用算术编码的情况下,能够对使频率变换系数信息的代码量变小进行支援。
[编码装置的第3编码动作例]
图32是表示有关实施方式1的编码装置100的第3编码动作例的流程图。例如,图27所示的编码装置100的电路160通过进行图32所示的动作,对图像信息进行编码。
具体而言,电路160对于表示当前基本块中包含的非零系数的个数的数据值,按照将多个数据值与多个二值化值建立了对应关系的变换表进行二值化,对包含数据值的图像信息进行编码(s601)。这里,当前基本块是构成具有多个频率变换系数的频率变换块的1个以上的基本块的1个。
由此,编码装置100能够将在构成基本块的多个频率变换系数的有效率的表现中使用的有意义的信息适当地编码。
图33是表示有关实施方式1的编码装置100的第3编码动作例中的二值化处理的流程图。即,图33表示图32中的二值化处理的具体的例子。
电路160从包括作为非零系数的个数而表示0的数据值的对应关系的第1表、和不包含作为非零系数的个数而表示0的数据值的对应关系的第2表的多个表中选择变换表(s611)。并且,电路160按照所选择的变换表,对数据值进行二值化(s612)。
由此,编码装置100可以使用信息量被削减后的表作为用于二值化的变换表。因而,编码装置100能够对使频率变换系数信息的代码量变小进行支援。
电路160也可以仅对于构成频率变换块的1个以上的基本块中的在规定的扫描顺序中为特定基本块以后的各基本块,对表示基本块中包含的非零系数的个数的数据值进行二值化。即,电路160也可以将表示在规定的扫描顺序中为特定基本块以后的各基本块的非零系数的个数的数据值作为表示当前基本块的非零系数的个数的数据值进行二值化。
由此,编码装置100能够对使频率变换系数信息的代码量变得更小进行支援。另外,特定基本块是在对于构成频率变换块的1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中最先具有非零系数作为频率变换系数的基本块。
此外,电路160也可以仅在构成频率变换块的1个以上的基本块中存在特定基本块的情况下,对表示当前基本块的非零系数的个数的数据值进行二值化。并且,电路160在频率变换块与当前基本块相同的情况下,也可以选择不包含作为非零系数的个数而表示0的数据值的对应关系的第2表作为变换表。
由此,编码装置100例如在频率变换块的尺寸与各基本块的尺寸相同的情况下,能够使用不包含0个非零系数的对应关系的第2表,对使频率变换系数信息的代码量变小进行支援。
此外,电路160在当前基本块是特定基本块的情况下,也可以选择不包含作为非零系数的个数而表示0的数据值的对应关系的第2表作为变换表。
由此,编码装置100例如在当前基本块是特定基本块情况下,能够使用不包含0个非零系数的对应关系的第2表,对使频率变换系数信息的代码量变小进行支援。
此外,电路160与第1编码动作例同样,也可以对图像信息进行编码,将编码了图像信息的比特序列输出。例如,如图28那样,电路160对图像信息进行二值化(s401)。并且,电路160切换是否对将图像信息二值化后的二值化数据序列应用算术编码(s402)。
并且,在对二值化数据序列应用算术编码的情况下(s402中“是”),电路160对二值化数据序列应用算术编码,输出包含被应用了算术编码的二值化数据序列的比特序列(s403)。另一方面,在不对二值化数据序列应用算术编码的情况下(s402中“否”),电路160不对二值化数据序列应用算术编码,输出包含没有被应用算术编码的二值化数据序列的比特序列(s404)。
此外,如图29那样,电路160按照在对二值化数据序列应用算术编码的情况和不对二值化数据序列应用算术编码的情况下共用的二值化形式,对图像信息中的其他信息进行二值化(s411)。该其他信息例如包括预测参数信息的一部分或全部。
并且,电路160按照在对二值化数据序列应用算术编码的情况和不对二值化数据序列应用算术编码的情况下不同的二值化形式,对图像信息中的频率变换系数信息进行二值化(s412)。
此外,在不对二值化数据序列应用算术编码的情况下,电路160按照从包括第1表和第2表的多个表中选择的变换表,对频率变换系数信息中包含的数据值进行二值化。这里,第1表包含作为非零系数的个数而表示0的数据值的对应关系,第2表不包含作为非零系数的个数而表示0的数据值的对应关系。
由此,编码装置100在不应用算术编码的情况下,能够使用从包括不包含0个非零系数的对应关系的第2表的多个表中选择的变换表,对使频率变换系数信息的代码量变小进行支援。
[编码装置的第4编码动作例]
在第4编码动作例中,与图32所示的第3编码动作例同样,对表示非零系数的个数的数据值进行二值化。具体而言,电路160对表示当前基本块中包含的非零系数的个数的数据值按照将多个数据值和多个二值化值建立了对应关系的变换表进行二值化,对包含数据值的图像信息进行编码(s601)。
图34是表示有关实施方式1的编码装置100的第4编码动作例中的二值化处理的流程图。即,图34表示图32中的二值化处理的具体的例子。
电路160按照当前频率变换块中的当前基本块的位置,从多个表中选择变换表(s661)。当前频率变换块是包含当前基本块的频率变换块。多个表包括与多个数据值建立了对应关系的多个二值化值的最长比特长与最短比特长的差相互不同的2个以上的表。并且,电路160按照所选择的变换表,对数据值进行二值化(s662)。
由此,编码装置100能够按照当前基本块的位置,选择用来对表示非零系数的个数的数据值进行二值化的变换表。非零系数的个数的特性根据当前基本块的位置而不同。因而,编码装置100能够使用当前基本块的位置,使非零系数的个数的特性反映到变换表的选择中。
由此,编码装置100能够适当地选择变换表,能够对使频率变换系数信息的代码量变小进行支援。
电路160按照当前基本块的位置,在先行基本块存在于与当前基本块的位置处的频率的水平相同的水平的情况下,也可以按照先行基本块中包含的非零系数的个数来选择变换表。
这里,先行基本块是在对于构成当前频率变换块的1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中比当前基本块靠前的基本块。此外,当前基本块的位置处的频率的水平是与当前基本块的位置对应的频率的水平。
由此,编码装置100能够按照推测为非零系数的个数与当前基本块类似的先行基本块的非零系数的个数来选择变换表。
此外,电路160在先行基本块存在于与当前基本块的位置处的频率的水平相同的水平、并且先行基本块中包含的非零系数的个数是第1个数的情况下,也可以作为变换表而选择第1表。并且,电路160在先行基本块存在于与当前基本块的位置处的频率的水平相同的水平、并且先行基本块中包含的非零系数的个数是第2个数的情况下,也可以作为变换表而选择第2表。
这里,第2个数比第1个数多。此外,第2表中的多个二值化值的最长比特长与最短比特长的差比第1表中的多个二值化值的最长比特长与最短比特长的差小。即,电路160在先行基本块中包含的非零系数的个数较多的情况下,也可以选择多个二值化值的最长比特长与最短比特长的差较小的表作为变换表。
由此,编码装置100在按照先行基本块的非零系数的个数推测为当前基本块的非零系数的个数较多的情况下,能够选择比特长的差较小的表作为变换表,对代码量的增加的抑制进行支援。
此外,例如有先行基本块不存在于与当前基本块的位置处的频率的水平相同的水平、特定基本块存在于比当前基本块的位置中的频率的水平高的水平的情况。这里,特定基本块是在规定的扫描顺序中最先包含非零系数的基本块。在此情况下,电路160从多个表中选择最长比特长与最短比特长的差比规定的差小的表作为变换表。
由此,编码装置100在按照当前基本块及特定基本块的关系推测为非零系数的个数较多的情况下,能够选择比特长的差较小的表作为变换表,对代码量的增加的抑制进行支援。规定的差并不限于固定的值,例如也可以如多个表中的比特长的差第2小的表中的最长比特长与最短比特长的差那样相对地决定。
具体而言,在上述情况下,电路160也可以从多个表中选择最长比特长与最短比特长的差最小的表作为变换表。由此,编码装置100在按照当前基本块及特定基本块的关系推测为非零系数的个数较多的情况下,能够选择比特长的差较小的表作为变换表,对进一步抑制代码量的增加进行支援。
此外,例如有先行基本块不存在于与当前基本块的位置中的频率的水平相同的水平、特定基本块不存在于比当前基本块的位置处的频率的水平高的水平的情况。在此情况下,电路160也可以按照从作为当前频率变换块的周边的频率变换块的周边频率变换块中、作为非零系数的个数而推测出的个数来选择变换表。
由此,编码装置100使用推测为与当前基本块中非零系数的个数类似的周边频率变换块来选择变换表。
此外,在上述情况下,电路160也可以是,如果根据周边频率变换块推测的个数是第1个数,则选择第1表,如果根据周边频率变换块推测的个数是第2个数,则选择第2表。这里,第2个数比第1个数多。此外,第2表中的多个二值化值的最长比特长与最短比特长的差比第1表中的多个二值化值的最长比特长与最短比特长的差小。
即,电路160在根据周边频率变换块推测的个数较多的情况下,也可以选择多个二值化值的最长比特长与最短比特长的差较小的表作为变换表。由此,编码装置100在按照周边频率变换块推测为当前基本块的非零系数的个数较多的情况下,能够选择比特长的差较小的表作为变换表,丢代码量的增加的抑制进行支援。
此外,周边频率变换块也可以是在当前频率变换块的左方或上方邻接的频率变换块。由此,编码装置100能够按照距当前频率变换块较近的频率变换块中包含的非零系数的个数,高精度地预测非零系数的个数。
或者,周边频率变换块也可以是在当前频率变换块的紧挨着的之前编码的频率变换块。由此,能够进行非零系数的个数的简单的预测、以及用来存储与非零系数的个数有关的信息的存储器容量的削减。
或者,周边频率变换块也可以是距当前频率变换块位于规定的范围内的频率变换块、面间预测还是面内预测的编码模式与当前频率变换块相同的频率变换块。由此,编码装置100能够按照推测为非零系数的发生趋向与当前频率变换块相似的频率变换块,高精度地预测非零系数的个数。
此外,当前基本块中包含的非零系数的个数也可以根据在周边频率变换块中包含的1个以上的基本块中的1个基本块中包含的非零系数的个数来推测。该1个基本块是相对于周边频率变换块的相对的位置与当前基本块相对于当前频率变换块的相对的位置相等的基本块。
由此,编码装置100能够按照周边频率变换块的1个以上的基本块之中的推测为非零系数的个数与当前基本块类似的基本块来选择变换表。
或者,根据周边频率变换块推测的个数也可以根据周边频率变换块的整体中包含的非零系数的个数来推测。由此,不取决于频率变换块的尺寸而将信息综合,所以能够进行非零系数的个数的简单的预测、以及用来存储与非零系数的个数有关的信息的存储器容量的削减。
此外,例如如上述那样,有先行基本块不存在于与当前基本块的位置处的频率的水平相同的水平、特定基本块不存在于比当前基本块的位置处的频率的水平高的水平的情况。在此情况下,电路160也可以按照当前基本块的编码模式是面间预测还是面内预测来选择变换表。
由此,编码装置100可以按照是面间预测还是面内预测的编码模式来选择变换表。推测非零系数的个数的特性根据编码模式而不同。因而,编码装置100能够使用编码模式,使非零系数的个数的特性反映到变换表的选择中。由此,编码装置100能够适当地选择变换表,能够对使频率变换系数信息的代码量变小进行支援。
此外,在上述情况下,电路160如果编码模式是面间预测,则选择第1表,如果编码模式是面内预测,则选择第2表。这里,第2表中的多个二值化值的最长比特长与最短比特长的差比第1表中的多个二值化值的最长比特长与最短比特长的差小。
即,电路160在编码模式是面内预测的情况下,也可以选择多个二值化值的最长比特长与最短比特长的差较小的表作为变换表。由此,编码装置100由于编码模式是面内预测,所以预测精度较低,在推测为非零系数的个数较多的情况下,能够选择比特长的差较小的表作为变换表,对代码量的增加的抑制进行支援。
此外,例如如上述那样,有先行基本块不存在于与当前基本块的位置处的频率的水平相同的水平、特定基本块不存在于比当前基本块的位置处的频率的水平高的水平的情况。在此情况下,电路160也可以按照在当前基本块的编码中使用的量化参数来选择变换表。
由此,编码装置100能够按照在当前基本块的编码中使用的量化参数来选择变换表。推测非零系数的个数的特性根据量化参数而不同。因而,编码装置100能够使用量化参数,使非零系数的个数的特性反映到变换表的选择中。由此,编码装置100能够适当地选择变换表,能够对使频率变换系数信息的代码量变小进行支援。
此外,在上述情况下,电路160也可以是,如果量化参数是第1值则选择第1表,如果量化参数是第2值则选择第2表。这里,第2值比第1值小。此外,第2表中的多个二值化值的最长比特长与最短比特长的差比第1表中的多个二值化值的最长比特长与最短比特长的差小。
即,电路160在量化参数较小的情况下,也可以选择多个二值化值的最长比特长与最短比特长的差较小的表作为变换表。由此,编码装置100在通过量化参数较小而推测为非零系数的个数较多的情况下,能够选择比特长的差较小的表作为变换表,对代码量的增加的抑制进行支援。
此外,电路160与第1编码动作例同样,也可以将图像信息编码,并输出将图像信息编码后的比特序列。例如,如图28那样,电路160对图像信息进行二值化(s401)。并且,电路160对于是否对将图像信息二值化后的二值化数据序列应用算术编码进行切换(s402)。
并且,在对二值化数据序列应用算术编码的情况下(s402中“是”),电路160对于二值化数据序列应用算术编码,输出包含被应用了算术编码的二值化数据序列的比特序列(s403)。另一方面,在不对二值化数据序列应用算术编码的情况下(s402中“否”),电路160不对二值化数据序列应用算术编码,而输出包含没有被应用算术编码的二值化数据序列的比特序列(s404)。
此外,如图29那样,电路160按照在对二值化数据序列应用算术编码的情况和不对二值化数据序列应用算术编码的情况下共用的二值化形式,对图像信息中的其他信息进行二值化(s411)。该其他信息例如包括预测参数信息的一部分或全部。
并且,电路160按照在对二值化数据序列应用算术编码的情况和不对二值化数据序列应用算术编码的情况下不同的二值化形式,对图像信息中的频率变换系数信息进行二值化(s412)。
此外,在不对二值化数据序列应用算术编码的情况下,电路160按照从多个表中根据当前基本块的位置选择的变换表,对频率变换系数信息中包含的数据值进行二值化。由此,编码装置100在应用算术编码的情况下,能够使用从多个表中根据当前基本块的位置选择的变换表,对使频率变换系数信息的代码量变小进行支援。
另外,最长比特长与最短比特长的差对应于,当前基本块的非零系数的个数越多则与表示当前基本块的非零系数的个数的数据值建立了对应关系的二值化值的比特长越长的比例。因而,最长比特长与最短比特长的差也可以替换为当前基本块的非零系数的个数越多、与表示当前基本块的非零系数的个数的数据值建立了对应关系的二值化值的比特长越长的比例。
例如,该比例是0以上。在该比例是0的表中,即使当前基本块的非零系数的个数变多,与表示当前基本块的非零系数的个数的数据值建立了对应关系的二值化值的比特长也不增加。此外,该比例也可以是当前基本块的非零系数的个数越多、与表示当前基本块的非零系数的个数的数据值建立了对应关系的二值化值的比特长越长的平均的比例。
[解码装置的实现例]
图35是表示有关实施方式1的解码装置200的实现例的框图。解码装置200具备电路260及存储器262。例如,图10及图12所示的解码装置200的多个构成要素通过图35所示的电路260及存储器262实现。
电路260是进行信息处理的电路,是能够对存储器262访问的电路。例如,电路260是将图像信息解码的通用或专用的电子电路。电路260也可以是cpu那样的处理器。此外,电路260也可以是多个电子电路的集合体。此外,例如电路260也可以起到除了图10及图12所示的解码装置200的多个构成要素中的用来存储信息的构成要素以外的、多个构成要素的作用。
存储器262是存储用于电路260将图像信息解码的信息的通用或专用的存储器。存储器262也可以是电子电路,也可以连接在电路260上。此外,存储器262也可以是多个电子电路的集合体。此外,存储器262也可以是磁盘或光盘等,也可以表现为存储设备或记录介质等。此外,存储器262既可以是非易失性存储器,也可以是易失性存储器。
例如,在存储器262中,既可以存储与编码的图像信息对应的比特序列,也可以存储与解码的比特序列对应的图像信息。此外,在存储器262中,也可以存储电路260用于将图像信息解码的程序。
此外,例如电路260也可以起到图10及图12所示的解码装置200的多个构成要素中的用于存储信息的构成要素的作用。具体而言,存储器262也可以起到图10所示的块存储器210及帧存储器214的作用,也可以起到图12所示的中间缓存240的作用。
另外,在解码装置200中,也可以不安装图10及图12等所示的多个构成要素的全部,也可以不进行上述多个处理的全部。图10及图12等所示的多个构成要素的一部分也可以包含在其他装置中,上述多个处理的一部分也可以由其他装置执行。
并且,也可以在解码装置200中安装图10及图12等所示的多个构成要素中的一部分,通过进行上述多个处理的一部分,能够将频率变换系数信息适当地解码。
[解码装置的第1解码动作例]
图36是表示有关实施方式1的解码装置200的第1解码动作例的流程图。例如,图35所示的解码装置200的电路260通过进行图36所示的动作,取得编码了图像信息的比特序列,将图像信息解码。
具体而言,首先,电路260取得包含对图像信息进行了二值化的二值化数据序列的比特序列(s701)。例如,图像信息包含与图像的频率成分有关的频率变换系数信息、以及与图像的预测方法有关的预测参数信息等。并且,电路260对于是否对比特序列中包含的二值化数据序列应用算术解码进行切换(s702)。
在对二值化数据序列应用算术解码的情况下(s702中“是”),电路260通过对二值化数据序列应用算术解码、对应用了算术解码的二值化数据序列进行逆二值化,将图像信息解码(s703)。
在不对二值化数据序列应用算术解码的情况下(s702中“否”),电路260不对二值化数据序列应用算术解码,而通过对没有被应用算术解码的二值化数据序列进行逆二值化,对图像信息进行解码(s704)。
由此,解码装置200可以将算术解码跳过。因而,解码装置200能够对通过算术解码发生的处理延迟的削减进行支援。
图37是表示有关实施方式1的解码装置200的第1解码动作例中的逆二值化处理的流程图。即,图37表示图36中的逆二值化处理(s703及s704)的具体的例子。
电路260按照在对二值化数据序列应用算术解码的情况和不对二值化数据序列应用算术解码的情况下共用的逆二值化形式,对后述的与第1部分不同的第2部分进行逆二值化(s711)。第2部分是二值化数据序列中的、与频率变换系数信息不同的其他信息被二值化的部分。该其他信息例如包含预测参数信息的一部分或全部。
此外,电路260按照在对二值化数据序列应用算术解码的情况和不对二值化数据序列应用算术解码的情况下不同的逆二值化形式,对第1部分进行逆二值化(s712)。第1部分是二值化数据序列中的频率变换系数信息被二值化的部分。更具体地讲,第1部分是二值化数据序列中的包括频率变换系数信息的信息被二值化的部分。
由此,解码装置200能够对与给整体的代码量带来较大影响的频率变换系数信息对应的第1部分根据算术解码的应用有无而适当地进行逆二值化。因而,解码装置200能够将频率变换系数信息适当地解码,能够抑制整体的代码量的增加。
另外,其他信息被二值化的第2部分的逆二值化(s711)和频率变换系数信息被二值化的第1部分的逆二值化(s712)的处理顺序也可以相反。
此外,例如,预测参数信息包括预测参数信息中包含的关于编码模式的信息、关于画面内预测的预测方向的信息、关于画面间预测的参照图片的信息、以及关于画面间预测的运动矢量的信息。
电路260也可以对于预测参数信息中包含的这些信息被二值化的第2部分,按照在对二值化数据序列应用算术解码的情况和不对二值化数据序列应用算术解码的情况下共用的逆二值化形式实施逆二值化。或者,电路260也可以对于它们中的至少1个,按照在对二值化数据序列应用算术解码的情况和不对二值化数据序列应用算术解码的情况下共用的逆二值化形式实施逆二值化。
此外,电路260也可以仅对二值化数据序列中的频率变换系数信息被二值化的第1部分,按照根据算术解码的应用有无而不同的逆二值化形式进行逆二值化。并且,电路260也可以对二值化数据序列中的除了频率变换系数信息被二值化的第1部分以外的其他的全部部分,不取决于算术解码的应用有无而按照共用的逆二值化形式进行逆二值化。
由此,解码装置200能够对除了与频率变换系数信息对应的第1部分以外的其他的全部部分按照共用的逆二值化形式进行逆二值化。因而,使处理简洁化。
图38是表示有关实施方式1的解码装置200的第1解码动作例中的与频率变换系数信息对应的第1部分的逆二值化处理的流程图。即,图38表示与图37中的与频率变换系数信息对应的第1部分的逆二值化处理(s712)的具体的例子。
电路260在对二值化数据序列应用算术解码的情况下(s721中“是”),对频率变换系数信息被二值化的第1部分以第1逆二值化形式进行逆二值化(s722)。并且,电路260在不对二值化数据序列应用算术解码的情况下(s721中“否”),将频率变换系数信息被二值化的第1部分以第2逆二值化形式进行逆二值化(s723)。
并且,电路260在不对二值化数据序列应用算术解码的情况下,与对二值化数据序列应用算术解码的情况相比,以发生比特数较少的形式对频率变换系数信息被二值化的第1部分进行逆二值化。由此,解码装置200在不应用算术解码的情况下,能够对使频率变换系数信息的代码量变小进行支援。
[解码装置的第2解码动作例]
图39是表示有关实施方式1的解码装置200的第2解码动作例的流程图。例如,图35所示的解码装置200的电路260通过进行图39所示的动作,对图像信息进行解码。
具体而言,电路260对表示特定基本块的位置的位置信息进行解码(s801)。特定基本块是对于构成具有多个频率变换系数的频率变换块的1个以上的基本块在以频率由高到低的顺序规定的规定的扫描顺序中最先具有非零系数作为频率变换系数的基本块。
并且,电路260仅对构成频率变换块的1个以上的基本块中的在规定的扫描顺序中为特定基本块以后的各基本块,将表示构成基本块的多个频率变换系数的块信息解码(s802)。
由此,解码装置200能够将位置信息及块信息作为频率变换系数信息解码。并且,解码装置200由于对于在规定的扫描顺序中为特定基本块以后的各基本块对块信息进行解码,所以能够对使频率变换系数信息的代码量变小进行支援。
另外,电路260也可以仅在构成频率变换块的1个以上的基本块的个数是2以上的情况下对位置信息进行解码。由此,解码装置200例如在频率变换块的尺寸与各基本块的尺寸相同的情况下,能够对使频率变换系数信息的代码量变得更小进行支援。
此外,电路260也可以仅在频率变换块中存在特定基本块的情况下对位置信息及块信息进行解码。由此,解码装置200例如在频率变换块中不包含非零系数的情况下,能够对使频率变换系数信息的代码量变得更小进行支援。
此外,电路260与第1解码动作例同样,也可以取得将图像信息编码的比特序列,对图像信息进行解码。例如,如图36那样,电路260取得包含图像信息被二值化的二值化数据序列的比特序列(s701)。并且,电路260切换是否对比特序列中包含的二值化数据序列应用算术解码(s702)。
并且,在对二值化数据序列应用算术解码的情况下(s702中“是”),电路260通过对二值化数据序列应用算术解码、对被应用了算术解码的二值化数据序列进行逆二值化,由此对图像信息进行解码(s703)。另一方面,在不对二值化数据序列应用算术解码的情况下(s702中“否”),电路260不对二值化数据序列应用算术解码,通过对没有被应用算术解码的二值化数据序列进行逆二值化,对图像信息进行解码(s704)。
此外,如图37那样,电路260按照在对二值化数据序列应用算术解码的情况和不对二值化数据序列应用算术解码的情况下共用的逆二值化形式,对第2部分进行逆二值化(s711)。第2部分是二值化数据序列中的其他信息被二值化的部分。该其他信息例如包括预测参数信息的一部分或全部。
并且,电路260按照在对二值化数据序列应用算术解码的情况和不对二值化数据序列应用算术解码的情况下不同的逆二值化形式,对第1部分进行逆二值化(s712)。第1部分是二值化数据序列中的频率变换系数信息被二值化的部分。
此外,在不对二值化数据序列应用算术解码的情况下,电路260通过对包含位置信息及块信息的频率变换系数信息被二值化的第1部分进行逆二值化,对位置信息及块信息进行解码。这里,被解码的块信息是在规定的扫描顺序中为特定基本块以后的块信息。由此,解码装置200在没有被应用算术解码的情况下,能够对使频率变换系数信息的代码量变小进行支援。
[解码装置的第3解码动作例]
图40是表示有关实施方式1的解码装置200的第3解码动作例的流程图。例如,图35所示的解码装置200的电路260通过进行图40所示的动作,对图像信息进行解码。
具体而言,电路260对表示当前基本块中包含的非零系数的个数的数据值被二值化的二值化值,按照将多个数据值与多个二值化值建立了对应关系的变换表进行逆二值化。并且,电路260对包含数据值的图像信息进行解码(s901)。这里,当前基本块是构成具有多个频率变换系数的频率变换块的1个以上的基本块之一。
由此,解码装置200能够将在构成基本块的多个频率变换系数的有效率的表现中使用的有意义的信息适当地解码。
图41是表示有关实施方式1的解码装置200的第3解码动作例中的逆二值化处理的流程图。即,图41表示图40中的逆二值化处理的具体的例子。
电路260从包括包含作为非零系数的个数而表示0的数据值的对应关系的第1表、和不包含作为非零系数的个数而表示0的数据值的对应关系的第2表的多个表中选择变换表(s911)。并且,电路260按照所选择的变换表,对二值化值进行逆二值化(s912)。
由此,解码装置200可以使用信息量被削减的表作为用于逆二值化的变换表。因而,解码装置200能够对使频率变换系数信息的代码量变小进行支援。
电路260也可以仅对构成频率变换块的1个以上的基本块中的、在规定的扫描顺序中为特定基本块以后的各基本块,对表示基本块中包含的非零系数的个数的数据值被二值化的二值化值进行逆二值化。即,电路260也可以将表示在规定的扫描顺序中为特定基本块以后的各基本块的非零系数的个数的数据值被二值化的二值化值,作为表示当前基本块的非零系数的个数的数据值而被二值化的二值化值,进行逆二值化。
由此,解码装置200能够对使频率变换系数信息的代码量变得更小进行支援。另外,特定基本块是在对于构成频率变换块的1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中最先具有非零系数作为频率变换系数的基本块。
此外,电路260也可以仅在构成频率变换块的1个以上的基本块中存在特定基本块的情况下,对表示当前基本块的非零系数的个数的数据值被二值化的二值化值进行逆二值化。并且,电路260在频率变换块与当前基本块相同的情况下,也可以选择不包含作为非零系数的个数而表示0的数据值的对应关系的第2表作为变换表。
由此,解码装置200例如在频率变换块的尺寸与各基本块的尺寸相同的情况下,能够使用不包含0个非零系数的对应关系的第2表,对使频率变换系数信息的代码量变小进行支援。
此外,电路260在当前基本块是特定基本块的情况下,也可以选择不包含作为非零系数的个数而表示0的数据值的对应关系的第2表作为变换表。
由此,解码装置200例如在当前基本块是特定基本块的情况下,也可以使用不包含0个非零系数的对应关系的第2表,对使频率变换系数信息的代码量变小进行支援。
此外,电路260与第1解码动作例同样,也可以取得图像信息被编码的比特序列,对图像信息进行解码。例如,如图36那样,电路260取得包含图像信息被二值化的二值化数据序列的比特序列(s701)。并且,电路260对于是否对比特序列中包含的二值化数据序列应用算术解码进行切换(s702)。
并且,在对二值化数据序列应用算术解码的情况下(s702中“是”),电路260通过对二值化数据序列应用算术解码、对被应用了算术解码的二值化数据序列进行逆二值化,对图像信息进行解码(s703)。另一方面,在不对二值化数据序列应用算术解码的情况下(s702中“否”),电路260不对二值化数据序列应用算术解码,通过对没有被应用算术解码的二值化数据序列进行逆二值化,对图像信息进行解码(s704)。
此外,如图37那样,电路260按照在对二值化数据序列应用算术解码的情况和不对二值化数据序列应用算术解码的情况下共用的逆二值化形式,对第2部分进行逆二值化(s711)。第2部分是二值化数据序列中的其他信息被二值化的部分。该其他信息例如包括预测参数信息的一部分或全部。
并且,电路260按照在对二值化数据序列应用算术解码的情况和不对二值化数据序列应用算术解码的情况下不同的逆二值化形式,对第1部分进行逆二值化(s712)。第1部分是二值化数据序列中的频率变换系数信息被二值化的部分。
此外,在不对二值化数据序列应用算术解码的情况下,电路260按照从包括第1表和第2表的多个表中选择的变换表,对在频率变换系数信息被二值化的第1部分中包含的二值化值进行逆二值化。这里,第1表包含作为非零系数的个数而表示0的数据值的对应关系,第2表不包含作为非零系数的个数而表示0的数据值的对应关系。
由此,解码装置200在不应用算术解码的情况下,使用从包括不包含0个非零系数的对应关系的第2表的多个表中选择的变换表,能够对使频率变换系数信息的代码量变小进行支援。
[解码装置的第4解码动作例]
在第4解码动作例中,与图40所示的第3解码动作例同样,表示非零系数的个数的数据值被逆二值化。具体而言,电路260对表示当前基本块中包含的非零系数的个数的数据值被二值化的二值化值,按照将多个数据值与多个二值化值建立了对应关系的变换表进行逆二值化,对包含数据值的图像信息进行解码(s901)。
图42是表示有关实施方式1的解码装置200的第4解码动作例中的逆二值化处理的流程图。即,图42表示图40中的逆二值化处理的具体的例子。
电路260按照当前频率变换块中的当前基本块的位置,从多个表中选择变换表(s961)。当前频率变换块是包含当前基本块的频率变换块。多个表包括与多个数据值建立了对应关系的多个二值化值的最长比特长与最短比特长的差相互不同的2个以上的表。并且,电路260按照所选择的变换表,对二值化值进行逆二值化(s962)。
由此,解码装置200能够按照当前基本块的位置,选择用来对表示非零系数的个数的数据值的二值化值进行逆二值化的变换表。非零系数的个数的特性根据当前基本块的位置而不同。因而,解码装置200能够使用当前基本块的位置,使非零系数的个数的特性反映到变换表的选择中。
由此,解码装置200能够适当地选择变换表,能够对使频率变换系数信息的代码量变小进行支援。
电路260也可以按照当前基本块的位置,在先行基本块存在于与当前基本块的位置处的频率的水平相同的水平的情况下,按照先行基本块中包含的非零系数的个数来选择变换表。
这里,先行基本块是在对于构成当前频率变换块的1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中比当前基本块靠前的基本块。此外,当前基本块的位置处的频率的水平是与当前基本块的位置对应的频率的水平。
由此,解码装置200能够按照推测为非零系数的个数与当前基本块类似的先行基本块的非零系数的个数来选择变换表。
此外,电路260在先行基本块存在于当前基本块的位置处的频率的水平相同的水平、并且先行基本块中包含的非零系数的个数是第1个数的情况下,也可以选择第1表作为变换表。并且,电路260在先行基本块存在于当前基本块的位置处的频率的水平相同的水平、并且先行基本块中包含的非零系数的个数是第2个数的情况下,也可以选择第2表作为变换表。
这里,第2个数比第1个数多。此外,第2表中的多个二值化值的最长比特长与最短比特长的差比第1表中的多个二值化值的最长比特长与最短比特长的差小。即,电路260在先行基本块中包含的非零系数的个数较多的情况下,也可以选择多个二值化值的最长比特长与最短比特长的差较小的表作为变换表。
由此,解码装置200在按照先行基本块的非零系数的个数推测为当前基本块的非零系数的个数较多的情况下,可以选择比特长的差较小的表作为变换表,对代码量的增加的抑制进行支援。
此外,例如有先行基本块不存在于与当前基本块的位置处的频率的水平相同的水平、特定基本块存在于比当前基本块的位置处的频率的水平高的水平的情况。这里,特定基本块是在规定的扫描顺序中最先包含非零系数的基本块。在此情况下,电路260也可以从多个表中选择最长比特长与最短比特长的差比规定的差小的表作为变换表。
由此,解码装置200在按照当前基本块及特定基本块的关系推测为非零系数的个数较多的情况下,能够选择比特长的差较小的表作为变换表,对代码量的增加的抑制进行支援。规定的差并不限于固定的值,例如也可以如多个表中的比特长的差第2小的表中的最长比特长与最短比特长的差那样相对地设定。
具体而言,在上述的情况下,电路260也可以从多个表中选择最长比特长与最短比特长的差最小的表作为变换表。由此,解码装置200在按照当前基本块及特定基本块的关系推测为非零系数的个数较多的情况下,能够选择比特长的差较小的表作为变换表,对进一步抑制代码量的增加进行支援。
此外,例如有先行基本块不存在于与当前基本块的位置处的频率的水平相同的水平、特定基本块不存在于比当前基本块的位置处的频率的水平高的水平的情况。在此情况下,电路260也可以按照根据作为当前频率变换块的周边的频率变换块的周边频率变换块推测为非零系数的个数的个数来选择变换表。
由此,解码装置200可以使用非零系数的个数与当前基本块类似的周边频率变换块来选择变换表。
此外,在上述的情况下,电路260也可以是,如果根据周边频率变换块推测的个数是第1个数则选择第1表,如果根据周边频率变换块推测的个数是第2个数则选择第2表。这里,第2个数比第1个数多。此外,第2表中的多个二值化值的最长比特长与最短比特长的差比第1表中的多个二值化值的最长比特长与最短比特长的差小。
即,电路260在根据周边频率变换块推测的个数较多的情况下,也可以选择多个二值化值的最长比特长与最短比特长的差较小的表作为变换表。由此,解码装置200在按照周边频率变换块推测为当前基本块的非零系数的个数较多的情况下,能够选择比特长的差较小的表作为变换表,对代码量的增加的抑制进行支援。
此外,周边频率变换块也可以是在当前频率变换块的左方或上方邻接的频率变换块。由此,解码装置200能够按照在距当前频率变换块较近的频率变换块中包含的非零系数的个数,高精度地预测非零系数的个数。
或者,周边频率变换块也可以是在当前频率变换块的紧挨着的之前被解码的频率变换块。由此,能够实现非零系数的个数的简单的预测、以及用来存储关于非零系数的个数的信息的存储器容量的削减。
或者,周边频率变换块也可以是位于距当前频率变换块为规定的范围内的频率变换块、是面间预测还是面内预测的编码模式与当前频率变换块相同的频率变换块。由此,解码装置200能够按照推测为非零系数的发生趋向与当前频率变换块相似的频率变换块,高精度地预测非零系数的个数。
此外,当前基本块中包含的非零系数的个数也可以根据在周边频率变换块中包含的1个以上的基本块中的1个基本块中包含的非零系数的个数来推测。该1个基本块是相对于周边频率变换块的相对的位置与当前基本块相对于当前频率变换块的相对的位置相等的基本块。
由此,解码装置200能够按照周边频率变换块的1个以上的基本块中的、推测为非零系数的个数与当前基本块类似的基本块来选择变换表。
或者,根据周边频率变换块推测的个数也可以根据周边频率变换块的整体中包含的非零系数的个数来推测。由此,不取决于频率变换块的尺寸而将信息综合,所以能够实现非零系数的个数的简单的预测、以及用来存储关于非零系数的个数的信息的存储器容量的削减。
此外,例如如上述那样,有先行基本块不存在于与当前基本块的位置处的频率的水平相同的水平、特定基本块不存在于比当前基本块的位置处的频率的水平高的水平的情况。在此情况下,电路260也可以按照当前基本块的编码模式是面间预测还是面内预测来选择变换表。
由此,解码装置200能够按照是面间预测还是面内预测的编码模式来选择变换表。推测为非零系数的个数的特性根据编码模式而不同。因而,解码装置200能够使用编码模式,使非零系数的个数的特性反映到变换表的选择中。由此,解码装置200能够适当地选择变换表,能够对使频率变换系数信息的代码量变小进行支援。
此外,在上述的情况下,电路260也可以是,如果编码模式是面间预测则选择第1表,如果编码模式是面内预测则选择第2表。这里,第2表中的多个二值化值的最长比特长与最短比特长的差比第1表中的多个二值化值的最长比特长与最短比特长的差小。
即,电路260在编码模式是面内预测的情况下,也可以选择多个二值化值的最长比特长与最短比特长的差较小的表作为变换表。由此,解码装置200由于编码模式是面内预测,所以预测精度较低,在推测为非零系数的个数较多的情况下,能够选择比特长的差较小的表作为变换表,对代码量的增加的抑制进行支援。
此外,例如如上述那样,有先行基本块不存在于与当前基本块的位置处的频率的水平相同的水平、特定基本块不存在于比当前基本块的位置处的频率的水平高的水平的情况。在此情况下,电路260也可以按照在当前基本块的解码中使用的量化参数来选择变换表。
由此,解码装置200能够按照在当前基本块的解码中使用的量化参数来选择变换表。非零系数的个数的特性推测为根据量化参数而不同。因而,解码装置200能够使用量化参数,使非零系数的个数的特性反映到变换表的选择中。由此,解码装置200能够适当地选择变换表,能够对使频率变换系数信息的代码量变小进行支援。
此外,在上述的情况下,电路260也可以是,如果量化参数是第1值则选择第1表,如果量化参数是第2值则选择第2表。这里,第2值比第1值小。此外,第2表中的多个二值化值的最长比特长与最短比特长的差比第1表中的多个二值化值的最长比特长与最短比特长的差小。
即,电路260在量化参数较小的情况下,也可以选择多个二值化值的最长比特长与最短比特长的差较小的表作为变换表。由此,解码装置200在通过量化参数较小而推测为非零系数的个数较多的情况下,能够选择比特长的差较小的表作为变换表,对代码量的增加的抑制进行支援。
此外,电路260与第1解码动作例同样,也可以取得图像信息被编码的比特序列,对图像信息进行解码。例如,如图36那样,电路260取得包含图像信息被二值化的二值化数据序列的比特序列(s701)。并且,电路260切换是否对比特序列中包含的二值化数据序列应用算术解码(s702)。
并且,在对二值化数据序列应用算术解码的情况下(s702中“是”),电路260通过对二值化数据序列应用算术解码、对被应用了算术解码的二值化数据序列进行逆二值化,对图像信息进行解码(s703)。另一方面,在不对二值化数据序列应用算术解码的情况下(s702中“否”),电路260不对二值化数据序列应用算术解码,而通过对没有被应用算术解码的二值化数据序列进行逆二值化,对图像信息进行解码(s704)。
此外,如图37那样,电路260按照在对二值化数据序列应用算术解码的情况和不对二值化数据序列应用算术解码的情况下共用的逆二值化形式,对第2部分进行逆二值化(s711)。第2部分是二值化数据序列中的其他信息被二值化的部分。该其他信息例如包含预测参数信息的一部分或全部。
并且,电路260按照在对二值化数据序列应用算术解码的情况和不对二值化数据序列应用算术解码的情况下不同的逆二值化形式,对第1部分进行逆二值化(s712)。第1部分是二值化数据序列中的频率变换系数信息被二值化的部分。
此外,在不对二值化数据序列应用算术解码的情况下,电路260按照从多个表中根据当前基本块的位置选择的变换表,对频率变换系数信息被二值化的第1部分中包含的二值化值进行逆二值化。由此,解码装置200在不应用算术解码的情况下,使用从多个表中根据当前基本块的位置选择的变换表,能够对使频率变换系数信息的代码量变小进行支援。
另外,最长比特长与最短比特长的差对应于,当前基本块的非零系数的个数越多、与表示当前基本块的非零系数的个数的数据值建立了对应关系的二值化值的比特长越长的比例。因而,也可以将最长比特长与最短比特长的差替换为当前基本块的非零系数的个数越多、与表示当前基本块的非零系数的个数的数据值建立了对应关系的二值化值的比特长越长的比例。
例如,该比例是0以上。在该比例是0的表中,即使当前基本块的非零系数的个数变多,与表示当前基本块的非零系数的个数的数据值建立了对应关系的二值化值的比特长也不增加。此外,该比例也可以是当前基本块的非零系数的个数越多、与表示当前基本块的非零系数的个数的数据值建立了对应关系的二值化值的比特长越长的平均的比例。
[补充]
可以将本实施方式的编码装置100及解码装置200分别作为图像编码装置及图像解码装置利用。或者,可以将编码装置100及解码装置200分别作为熵编码装置及熵解码装置利用。即,编码装置100及解码装置200也可以分别仅与熵编码部110及熵解码部202对应。
此外,在本实施方式中,各构成要素也可以由专用的硬件构成,或通过执行适合于各构成要素的软件程序来实现。各构成要素也可以通过cpu或处理器等的程序执行部将记录在硬盘或半导体存储器等的记录介质中的软件程序读出并执行来实现。
具体而言,编码装置100及解码装置200分别也可以具备处理电路(processingcircuitry)、和电连接在该处理电路上的、能够从该处理电路访问的存储装置(storage)。例如,处理电路与电路160或260对应,存储装置与存储器162或262对应。
处理电路包括专用的硬件及程序执行部的至少一方,使用存储装置执行处理。此外,存储装置在处理电路包括程序执行部的情况下,存储由该程序执行部执行的软件程序。
这里,实现本实施方式的编码装置100或解码装置200等的软件是以下这样的程序。
即,该程序使计算机执行编码方法,是将图像信息编码、并输出将上述图像信息编码后的比特序列的编码方法,对上述图像信息进行二值化;对于是否对上述图像信息被二值化后的二值化数据序列应用算术编码进行切换;在对于上述二值化数据序列应用算术编码的情况下,对于上述二值化数据序列应用算术编码,输出包含被应用了算术编码的上述二值化数据序列的上述比特序列;在不对上述二值化数据序列应用算术编码的情况下,不对上述二值化数据序列应用算术编码,输出包含没有被应用算术编码的上述二值化数据序列的上述比特序列;在上述图像信息的二值化中,按照在对于上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下不同的二值化形式,对上述图像信息中的关于图像的频率成分的频率变换系数信息进行二值化;在上述图像信息的二值化中,按照在对于上述二值化数据序列应用算术编码的情况和不对上述二值化数据序列应用算术编码的情况下共用的二值化形式,对上述图像信息中的关于图像的预测方法的预测参数信息的一部分或全部进行二值化。
或者,该程序使计算机执行解码方法,是取得编码了图像信息的比特序列、并将上述图像信息解码的解码方法,取得包含上述图像信息被二值化后的二值化数据序列的上述比特序列;对于是否对上述比特序列中包含的上述二值化数据序列应用算术解码进行切换;在对于上述二值化数据序列应用算术解码的情况下,通过对于上述二值化数据序列应用算术解码、对被应用了算术解码的上述二值化数据序列进行逆二值化,对上述图像信息进行解码;在不对上述二值化数据序列应用算术解码的情况下,不对上述二值化数据序列应用算术解码,通过对没有被应用算术解码的上述二值化数据序列进行逆二值化,对上述图像信息进行解码;在上述二值化数据序列的逆二值化中,按照在对于上述二值化数据序列应用算术解码的情况和不对上述二值化数据序列应用算术解码的情况下不同的逆二值化形式,对上述二值化数据序列中的、关于图像的频率成分的频率变换系数信息被二值化的第1部分进行逆二值化;在上述二值化数据序列的逆二值化中,按照在对于上述二值化数据序列应用算术解码的情况和不对上述二值化数据序列应用算术解码的情况下共用的逆二值化形式,对上述二值化数据序列中的关于图像的预测方法的预测参数信息的一部分或全部被二值化的第2部分进行逆二值化。
或者,该程序使计算机执行编码方法,是将图像信息编码的编码方法,对表示特定基本块的位置的位置信息进行编码,所述特定基本块是在对于由多个频率变换系数构成的频率变换块中的1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中最先包含非零系数的基本块;仅对上述1个以上的基本块中的、在上述规定的扫描顺序中为上述特定基本块以后的各基本块,对表示该构成基本块的多个频率变换系数的块信息进行编码。
或者,该程序使计算机执行解码方法,是将图像信息解码的解码方法,将表示特定基本块的位置的位置信息解码,所述特定基本块是在对于由多个频率变换系数构成的频率变换块中的1个以上的基本块以频率由高到低的顺序规定的规定的扫描顺序中最先包含非零系数的基本块;仅对上述1个以上的基本块中的在上述规定的扫描顺序中为上述特定基本块以后的各基本块,对表示构成该基本块的多个频率变换系数的块信息进行解码。
或者,该程序使计算机执行编码方法,是将图像信息编码的编码方法,对表示作为由多个频率变换系数构成的频率变换块中的1个以上的基本块之一的当前基本块中包含的非零系数的个数的数据值,按照将多个数据值与多个二值化值建立了对应关系的变换表进行二值化,对包含上述数据值的上述图像信息进行编码;在上述数据值的二值化中,从包括包含作为上述非零系数的个数而表示0的数据值的对应关系的第1表和不包含作为上述非零系数的个数而表示0的数据值的对应关系的第2表的多个表中选择上述变换表;按照所选择的上述变换表,对上述数据值进行二值化。
或者,该程序使计算机执行解码方法,是将图像信息解码的解码方法,对表示作为由多个频率变换系数构成的频率变换块中的1个以上的基本块之一的当前基本块中包含的非零系数的个数的数据值被二值化后的二值化值,按照将多个数据值与多个二值化值建立了对应关系的变换表进行逆二值化,将包含上述数据值的上述图像信息解码;在上述二值化值的逆二值化中,从包括包含作为上述非零系数的个数而表示0的数据值的对应关系的第1表和不包含作为上述非零系数的个数而表示0的数据值的对应关系的第2表的多个表中选择上述变换表;按照所选择的上述变换表,对上述二值化值进行逆二值化。
或者,该程序使计算机执行编码方法,是将图像信息编码的编码方法,对表示作为由多个频率变换系数构成的频率变换块中的1个以上的基本块之一的当前基本块中包含的非零系数的个数的数据值,按照将多个数据值与多个二值化值建立了对应关系的变换表进行二值化,对包含上述数据值的上述图像信息进行编码;在上述数据值的二值化中,按照作为包含上述当前基本块的上述频率变换块的当前频率变换块中的上述当前基本块的位置,从包括与多个数据值建立了对应关系的多个二值化值的最长比特长与最短比特长的差相互不同的2个以上的表的多个表中选择上述变换表;按照所选择的上述变换表,对上述数据值进行二值化。
或者,该程序使计算机执行解码方法,是将图像信息解码的解码方法,对表示作为由多个频率变换系数构成的频率变换块中的1个以上的基本块之一的当前基本块中包含的非零系数的个数的数据值被二值化后的二值化值,按照将多个数据值与多个二值化值建立了对应关系的变换表进行逆二值化,将包含上述数据值的上述图像信息解码;在上述二值化值的逆二值化中,按照作为包含上述当前基本块的上述频率变换块的当前频率变换块中的上述当前基本块的位置,从包括与多个数据值建立了对应关系的多个二值化值的最长比特长与最短比特长的差相互不同的2个以上的表的多个表中选择上述变换表;按照所选择的上述变换表,对上述二值化值进行逆二值化。
此外,各构成要素也可以如上述那样是电路。这些电路既可以作为整体构成1个电路,也可以是分别不同的电路。此外,各构成要素既可以由通用的处理器实现,也可以由专用的处理器实现。
此外,也可以将特定的构成要素执行的处理由其他的构成要素执行。此外,也可以将执行处理的顺序变更,也可以将多个处理并行地执行。此外,编码解码装置也可以具备编码装置100及解码装置200。
在说明中使用的第1及第2等的序数也可以适当替换。此外,也可以对构成要素等新赋予序数,也可以去除。
以上,基于实施方式对有关一个或多个技术方案的编码装置100及解码装置200进行了说明,但本发明并不限定于该实施方式。只要不脱离本发明的主旨,对本实施方式实施了本领域技术人员想到的各种变形后的形态、或将不同的实施方式的构成要素组合而构建的形态也可以包含在一个或多个技术方案的范围内。
(实施方式2)
在以上的各实施方式中,功能块分别通常可以通过mpu及存储器等实现。此外,功能块的各自的处理通常通过处理器等的程序执行部将记录在rom等的记录介质中的软件(程序)读出并执行来实现。该软件既可以通过下载等来分发,也可以记录到半导体存储器等的记录介质中来分发。另外,当然也能够将各功能块用硬件(专用电路)实现。
此外,在各实施方式中说明的处理既可以通过使用单一的装置(系统)集中处理来实现,或者也可以通过使用多个装置进行分散处理来实现。此外,执行上述程序的处理器既可以是单个,也可以是多个。即,既可以进行集中处理,也可以进行分散处理。
本发明并不限定于以上的实施例,能够进行各种各样的变更,它们也包含在本发明的范围内。
进而,这里说明在上述各实施方式中表示的运动图像编码方法(图像编码方法)或运动图像解码方法(图像解码方法)的应用例和使用它的系统。该系统的特征在于,具有使用图像编码方法的图像编码装置、使用图像解码方法的图像解码装置、以及具备两者的图像编码解码装置。关于系统中的其他结构,根据情况能够适当地变更。
[使用例]
图43是表示实现内容分发服务的内容供给系统ex100的整体结构的图。将通信服务的提供区划分为希望的大小,在各小区内分别设置作为固定无线局的基站ex106、ex107、ex108、ex109、ex110。
在该内容供给系统ex100中,在因特网ex101上经由因特网服务提供商ex102或通信网ex104、以及基站ex106~ex110,连接着计算机ex111、游戏机ex112、照相机ex113、家电ex114及智能电话ex115等的各设备。该内容供给系统ex100也可以将上述的某些要素组合而连接。也可以不经由作为固定无线站的基站ex106~ex110,各设备直接连接在电话线、有线电视或光通信等的通信网ex104上。此外,各设备也可以经由电话网或近距离无线等直接或间接地相互连接。此外,流媒体服务器ex103经由因特网ex101等与计算机ex111、游戏机ex112、照相机ex113、家电ex114及智能电话ex115等的各设备连接。此外,流媒体服务器ex103经由卫星ex116与飞机ex117内的热点内的终端等连接。
另外,也可以代替基站ex106~ex110而使用无线接入点或热点等。此外,流媒体服务器ex103既可以不经由因特网ex101或因特网服务提供商ex102直接与通信网ex104连接,也可以不经由卫星ex116而直接与飞机ex117连接。
照相机ex113是能够进行数字照相机等的静止图像摄影及运动图像摄影的设备。此外,智能电话ex115是与通常被称作2g、3g、3.9g、4g、及今后被称作5g的移动通信系统的方式对应的智能电话机、便携电话机或phs(personalhandyphonesystem)等。
家电ex118是电冰箱或在家庭用燃料电池同时发热发电(cogeneration)系统中包含的设备等。
在内容供给系统ex100中,通过将具有摄影功能的终端经由基站ex106等连接到流媒体服务器ex103上,能够进行现场分发等。在现场分发中,终端(计算机ex111、游戏机ex112、照相机ex113、家电ex114、智能电话ex115及飞机ex117内的终端等)对于用户使用该终端摄影的静止图像或运动图像内容进行在上述各实施方式中说明的编码处理,将通过编码得到的影像数据和将与影像对应的声音编码的声音数据复用,将得到的数据向流媒体服务器ex103发送。即,各终端作为有关本发明的一技术方案的图像编码装置发挥功能。
另一方面,流媒体服务器ex103将对于有请求的客户端发送的内容数据进行流分发。客户端是能够将被上述编码处理的数据进行解码的计算机ex111、游戏机ex112、照相机ex113、家电ex114、智能电话ex115或飞机ex117内的终端等。接收到被分发的数据的各设备将接收到的数据解码处理并再现。即,各设备作为有关本发明的一技术方案的图像解码装置发挥功能。
[分散处理]
此外,流媒体服务器ex103也可以是多个服务器或多个计算机、是将数据分散处理或记录而分发的结构。例如,流媒体服务器ex103也可以由cdn(contentsdeliverynetwork)实现,通过将分散在世界中的许多边缘服务器与边缘服务器间相连的网络实现内容分发。在cdn中,根据客户端而动态地分配在物理上较近的边缘服务器。并且,通过将内容向该边缘服务器高速缓存及分发,能够减少延迟。此外,在发生了某种错误的情况下或因通信量的增加等而通信状态变化的情况下,能够用多个边缘服务器将处理分散、或将分发主体切换为其他的边缘服务器、或绕过发生了故障的网络的部分而继续分发,所以能够实现高速且稳定的分发。
此外,并不停留在分发自身的分散处理,摄影的数据的编码处理既可以由各终端进行,也可以在服务器侧进行,也可以相互分担而进行。作为一例,通常在编码处理中进行2次处理循环。在第1次的循环中检测帧或场景单位下的图像的复杂度或代码量。此外,在第2次的循环中进行维持画质而使编码效率改善的处理。例如,通过终端进行第1次的编码处理、接受到内容的服务器侧进行第2次的编码处理,能够在减少各终端中的处理负荷的同时使内容的质和效率改善。在此情况下,如果有大致实时地接收并解码的要求,则也可以将终端进行的第一次的已编码数据由其他终端接收并再现,所以也能够进行更灵活的实时分发。
作为其他的例子,照相机ex113等从图像进行特征量提取,将关于特征量的数据作为元数据压缩并向服务器发送。服务器例如根据特征量判断对象的重要性而切换量化精度等,进行与图像的意义对应的压缩。特征量数据对于服务器中的再次压缩时的运动矢量预测的精度及效率改善特别有效。此外,也可以由终端进行vlc(可变长编码)等的简单的编码,由服务器进行cabac(上下文自适应二值算术编码方式)等处理负荷较大的编码。
作为其他的例子,在体育场、购物中心或工厂等中,有存在由多个终端将大致相同的场景摄影的多个影像数据的情况。在此情况下,使用进行了摄影的多个终端、以及根据需要而使用没有进行摄影的其他终端及服务器,例如以gop(groupofpicture)单位、图片单位或将图片分割的瓦片单位等分别分配编码处理而进行分散处理。由此,能够减少延迟而更好地实现实时性。
此外,由于多个影像数据是大致相同场景,所以也可以由服务器进行管理及/或指示,以将由各终端摄影的影像数据相互参照。或者,也可以是服务器将来自各终端的已编码数据接收而在多个数据间变更参照关系,或将图片自身修正或替换而重新编码。由此,能够生成提高了一个一个数据的质和效率的流。
此外,服务器也可以进行将影像数据的编码方式变更的转码后将影像数据分发。例如,服务器也可以将mpeg系的编码方式变换为vp类,也可以将h.264变换为h.265。
这样,编码处理能够由终端或1个以上的服务器进行。由此,以下作为进行处理的主体而使用“服务器”或“终端”等的记载,但也可以将由服务器进行的处理的一部分或全部用终端进行,也可以将由终端进行的处理的一部分或全部用服务器进行。此外,关于这些,对于解码处理也是同样的。
[3d,多角度]
近年来,将由相互大致同步的多个照相机ex113及/或智能电话ex115等的终端摄影的不同场景、或将相同场景以不同的角度摄影的图像或影像合并而利用的情况正在增加。将由各终端摄影的影像基于另外取得的终端间的相对的位置关系、或影像中包含的特征点一致的区域等来合并。
服务器不仅是将二维的运动图像进行编码,也可以基于运动图像的场景解析等自动地或在用户指定的时刻而将静止图像编码并向接收终端发送。服务器还在能够取得摄影终端间的相对的位置关系的情况下,不仅是二维的运动图像,还能够基于从虽然是相同场景但从不同的角度摄影的影像,生成该场景的三维形状。另外,服务器也可以将由点云(pointcloud)等生成的三维的数据另外编码,也可以基于使用三维数据将人物或对象识别或跟踪的结果,从由多个终端摄影的影像中选择或重构而生成向接收终端发送的影像。
这样,用户既能够任意地选择与各摄影终端对应的各影像而欣赏场景,也能够欣赏从使用多个图像或影像重构的三维数据切取了任意视点的影像的内容。进而,与影像同样,也可以将声音也从多个不同的角度收音,服务器匹配于影像而将来自特定的角度或空间的声音与影像复用并发送。
此外,近年来,virtualreality(vr:虚拟现实)及augmentedreality(ar:增强现实)等将现实世界与虚拟世界建立对应的内容也正在普及。在vr的图像的情况下,服务器分别制作右眼用及左眼用的视点图像,既可以通过multi-viewcoding(mvc:多视点编码)等进行在各视点影像间容许参照的编码,也可以相互不参照而作为不同的流编码。在不同的流的解码时,可以根据用户的视点相互同步地再现,以再现虚拟的三维空间。
在ar的图像的情况下,也可以是,服务器在现实空间的照相机信息中,基于三维的位置或用户的视点的运动而叠加虚拟空间上的虚拟物体信息。解码装置取得或保持虚拟物体信息及三维数据,根据用户的视点的运动而生成二维图像,通过平滑地相连来制作叠加数据。或者,解码装置也可以除了虚拟物体信息的委托以外还将用户的视点的运动发送给服务器,服务器根据保持在服务器中的三维数据,匹配于接收到的视点的运动而制作叠加数据,将叠加数据编码并向解码装置分发。另外,叠加数据在rgb以外还具有呈现透过度的α值,服务器将根据三维数据制作出的对象以外的部分的α值设定为0等,在该部分透过的状态下进行编码。或者,服务器也可以如色度键那样将规定的值的rgb值设定为背景,生成对象以外的部分为背景色的数据。
同样,分发的数据的解码处理既可以由作为客户端的各终端进行,也可以在服务器侧进行,也可以相互分担而进行。作为一例,也可以是某个终端先向服务器发收发请求,由其他终端接收与该请求对应的内容并进行解码处理,将已解码的信号向具有显示器的装置发送。通过不论可通信的终端自身的性能如何都将处理分散而选择适当的内容,能够再现画质较好的数据。此外,作为其他的例子,也可以由tv等接收较大的尺寸的图像数据,并且由欣赏者的个人终端将图片被分割后的瓦片等一部分区域解码并显示。由此,能够在使整体像共有化的同时,在手边确认自己的负责领域或想要更详细地确认的区域。
此外,在今后不论室内外都能够使用近距离、中距离或长距离的多个无线通信的状况下,预想利用mpeg-dash等的分发系统标准,一边对连接中的通信切换适当的数据一边无缝地接收内容。由此,用户不仅是自身的终端,还能够一边自由地选择设置在室内外的显示器等的解码装置或显示装置一边实时地切换。此外,能够基于自身的位置信息等,一边切换解码的终端及显示的终端一边进行解码。由此,也能够在向目的地的移动中一边使地图信息显示在埋入有可显示的设备的旁边的建筑物的壁面或地面的一部分上一边移动。此外,还能够基于能够将编码数据从接收终端以短时间高速缓存到能够访问的服务器中、或复制到内容分发服务的边缘服务器中等的向网络上的编码数据的访问容易性,来切换接收数据的比特率。
[分级编码]
关于内容的切换,使用图44所示的、使用应用在上述各实施方式中表示的运动图像编码方法压缩编码的分级(scalable)的流进行说明。服务器作为单独的流也可以具有内容相同而品质不同的多个流,但也可以是如图示那样利用通过分层进行编码而实现的时间/空间上的分级的流的特征来切换内容的结构。即,通过解码侧根据性能这样的内在因素和通信频带的状态等的外在因素来决定解码到哪个层,解码侧能够自由地切换解码低分辨率的内容和高分辨率的内容。例如在想要将在移动中用智能电话ex115视听的影像接着在回家后用因特网tv等的设备视听的情况下,该设备只要将相同的流解码到不同的层就可以,所以能够减轻服务器侧的负担。
进而,在如上述那样按照每个层将图片编码、实现在基础层的上位存在扩展层的分级性的结构以外,也可以是扩展层包含基于图像的统计信息等的元信息,解码侧通过基于元信息将基础层的图片进行超析像来生成高画质化的内容。所谓超析像,是相同分辨率下的sn比的改善及分辨率的扩大的哪种都可以。元信息包括用来确定在超析像处理中使用的线性或非线性的滤波系数的信息、或确定在超析像处理中使用的滤波处理、机器学习或最小2乘运算中的参数值的信息等。
或者,也可以是根据图像内的对象等的意义将图片分割为瓦片等,解码侧通过选择进行解码的瓦片而仅将一部分的区域解码的结构。此外,通过将对象的属性(人物、车、球等)和影像内的位置(同一图像中的坐标位置等)作为元信息保存,解码侧能够基于元信息确定希望的对象的位置,决定包括该对象的瓦片。例如,如图45所示,将元信息使用与hevc中的sei消息等像素数据不同的数据保存构造保存。该元信息例如表示主对象的位置、尺寸或色彩等。
此外,也可以将流、序列或随机访问单位等以由多个图片构成的单位保存元信息。由此,解码侧能够取得特定人物在影像内出现的时刻等,通过与图片单位的信息匹配,能够确定对象存在的图片、以及图片内的对象的位置。
[web页的优化]
图46是表示计算机ex111等中的web页的显示画面例的图。图47是表示智能电话ex115等中的web页的显示画面例的图。如图46及图47所示,有web页包含多个作为向图像内容的链接的链接图像的情况,根据阅览的设备而其可见方式不同。在画面上能看到多个链接图像的情况下,在用户明示地选择链接图像之前、或链接图像接近于画面的中央附近或链接图像的整体进入到画面内之前,显示装置(解码装置)作为链接图像而显示各内容具有的静止图像或i图片,或用多个静止图像或i图片等显示gif动画那样的影像,或仅接收基础层而将影像解码及显示。
在由用户选择了链接图像的情况下,显示装置将基础层最优先地解码。另外,如果在构成web页的html中有表示是分级的内容的信息,则显示装置也可以解码到扩展层。此外,在为了确保实时性而在选择之前或通信频带非常紧张的情况下,显示装置可以通过仅将前方参照的图片(i图片、p图片、仅进行前方参照的b图片)解码及显示,由此来减少开头图片的解码时刻与显示时刻之间的延迟(从内容的解码开始到显示开始的延迟)。此外,显示装置也可以将图片的参照关系强行地忽视而将全部的b图片及p图片设为前方参照而较粗地解码,随着时间经过而接收到的图片增加,进行正常的解码。
[自动行驶]
此外,在为了车的自动行驶或行驶支援而收发二维或三维的地图信息等的静止图像或影像数据的情况下,接收终端也可以除了属于1个以上的层的图像数据以外,还作为元信息而接收天气或施工的信息等,将它们建立对应而解码。另外,元信息既可以属于层,也可以只与图像数据复用。
在此情况下,由于包含接收终端的车、无人机或飞机等在移动,所以接收终端通过将该接收终端的位置信息在接收请求时加以发送,能够一边切换基站ex106~ex110一边进行无缝的接收及解码。此外,接收终端根据用户的选择、用户的状况或通信频带的状态,能够动态地切换将元信息以何种程度接收、或将地图信息以何种程度更新。
如以上这样,在内容供给系统ex100中,客户端能够将用户发送的已编码的信息实时地接收并解码、再现。
[个人内容的分发]
此外,在内容供给系统ex100中,不仅是由影像分发业者提供的高画质、长时间的内容,还能够进行由个人提供的低画质、短时间的内容的单播或多播分发。此外,可以想到这样的个人的内容今后也会增加。为了使个人内容成为更好的内容,服务器也可以在进行编辑处理后进行编码处理。这例如可以通过以下这样的结构实现。
在摄影时实时或储存而摄影后,服务器根据原图像或已编码数据,进行摄影错误、场景搜索、意义的解析及对象检测等的识别处理。并且,服务器基于识别结果,进行手动或自动地将焦点偏差或手抖动等修正、或在明亮度比其他图片低或焦点没有对上的场景等的重要性较低的场景删除、或将对象的边缘强调、或使色调变化等的编辑。服务器基于编辑结果,将编辑后的数据编码。此外,已知如果摄影时刻过长则视听率会下降,服务器也可以根据摄影时间,不仅是如上述那样重要性较低的场景,还将运动较少的场景等基于图像处理结果自动地裁剪,以成为特定的时间范围内的内容。或者,服务器也可以基于场景的意义解析的结果而生成摘要并编码。
另外,也有在个人内容中原样被写入构成著作权、著作者人格权或肖像权等的侵害的内容的情形,也有共享的范围超过了想要的范围等对于个人而言不便的情况。由此,例如服务器也可以将画面的周边部的人的脸、或家中等强行地变更为不对焦的图像而进行编码。此外,服务器也可以识别在编码对象图像内是否拍摄到与预先登录的人物不同的人物的脸,在拍摄到的情况下,进行对脸的部分施加马赛克等的处理。或者,作为编码的前处理或后处理,也可以从著作权等的观点而用户指定想要将图像加工的人物或背景区域,服务器进行将所指定的区域替换为别的影像、或将焦点模糊化等的处理。如果是人物,则能够在运动图像中跟踪人物的同时,将脸的部分的影像替换。
此外,由于数据量较小的个人内容的视听其实时性的要求较强,所以虽然也取决于带宽,但解码装置首先将基础层最优先地接收并进行解码及再现。解码装置也可以在此期间中将扩展层接收,在再现被循环的情况等2次以上被再现的情况下,也包括扩展层而将高画质的影像再现。这样,如果是进行了分级的编码的流,则能够提供虽然在未选择时或刚开始看的阶段是较粗糙的运动图像但流逐渐变得流畅而图像变好那样的体验。在分级编码以外,如果将在第1次被再现的较粗糙的流、和参照第1次的运动图像被编码的第2次的流构成为1个流,也能够提供同样的体验。
[其他的使用例]
此外,这些编码或解码处理通常在各终端具有的lsiex500中处理。lsiex500既可以是单芯片也可以是由多芯片构成的结构。另外,也可以将图像编码或解码用的软件装入到能够由计算机ex111等读取的某种记录介质(cd-rom、软盘、硬盘等)中、使用该软件进行编码处理及解码处理。进而,在智能电话ex115带有照相机的情况下,也可以将由该照相机取得的运动图像数据发送。此时的运动图像数据是用智能电话ex115具有的lsiex500编码处理后的数据。
另外,lsiex500也可以是将应用软件下载并将其激活的结构。在此情况下,终端首先判定该终端是否与内容的编码方式对应、或是否具有特定服务的执行能力。在终端不与内容的编码方式对应的情况下、或不具有特定服务的执行能力的情况下,终端将编解码器或应用软件下载,然后进行内容取得及再现。
此外,并不限于经由因特网ex101的内容供给系统ex100,也能够在数字广播用系统中组装上述各实施方式的至少运动图像编码装置(图像编码装置)或运动图像解码化装置(图像解码装置)的某种。由于利用卫星等使广播用的电波承载将影像与声音复用的复用数据而收发,所以相对于内容供给系统ex100的容易单播的结构,有适合多播的差异,但关于编码处理及解码处理能够进行同样的应用。
[硬件结构]
图48是表示智能电话ex115的图。此外,图49是表示智能电话ex115的结构例的图。智能电话ex115具有用来在与基站ex110之间收发电波的天线ex450、能够拍摄影像及静止图像的照相机部ex465、显示由照相机部ex465摄影的影像、以及由天线ex450接收到的影像等被解码后的数据的液晶显示器等的显示部ex458。智能电话ex115还具备作为操作面板等的操作部ex466、用来输出声音或音响的作为扬声器等的声音输出部ex457、用来输入声音的作为麦克风等的声音输入部ex456、能够将摄影的影像、静止图像、录音的声音、或接收到的影像或静止图像、邮件等的编码的数据或解码的数据保存的存储器部ex467、或者作为与simex468的接口部的插槽部ex464,所述simex468用来确定用户,进行以网络为代表向各种数据的访问的认证。
此外,综合控制显示部ex458及操作部ex466等的主控制部ex460、与电源电路部ex461、操作输入控制部ex462、影像信号处理部ex455、照相机接口部ex463、显示器控制部ex459、调制/解调部ex452、复用/分离部ex453、声音信号处理部ex454、插槽部ex464存储器部ex467经由总线ex470相互连接。
电源电路部ex461如果通过用户的操作使电源键成为开启状态,则通过从电池组对各部供给电力,将智能电话ex115启动为能够动作的状态。
智能电话ex115基于具有cpu、rom及ram等的主控制部ex460的控制,进行通话及数据通信等的处理。在通话时,将由声音输入部ex456集音的声音信号通过声音信号处理部ex454变换为数字声音信号,将其用调制/解调部ex452进行波谱扩散处理,由发送/接收部ex451实施数字模拟变换处理及频率变换处理之后经由天线ex450发送。此外,将接收数据放大而实施频率变换处理及模拟数字变换处理,由调制/解调部ex452进行波谱逆扩散处理,由声音信号处理部ex454变换为模拟声音信号后,将其从声音输出部ex457输出。在数据通信时,将通过主体部的操作部ex466等的操作输入的文本、静止图像或影像数据经由操作输入控制部ex462向主控制部ex460送出,同样进行收发处理。在数据通信模式时,在发送影像、静止图像或影像和声音的情况下,影像信号处理部ex455将保存在存储器部ex467中的影像信号或从照相机部ex465输入的影像信号通过在上述各实施方式中表示的运动图像编码方法压缩编码,将编码后的影像数据向复用/分离部ex453送出。此外,声音信号处理部ex454将在由照相机部ex465摄像影像、静止图像等的过程中由声音输入部ex456集音的声音信号编码,将编码后的声音数据向复用/分离部ex453送出。复用/分离部ex453将已编码影像数据和已编码声音数据以规定的方式复用,由调制/解调部(调制/解调电路部)ex452及发送/接收部ex451实施调制处理及变换处理,经由天线ex450发送。
在接收到添附有影像及或声音的电子邮件、或链接在网页等上的影像的情况下,为了将经由天线ex450接收到的复用数据解码,复用/分离部ex453通过将复用数据分离而将复用数据分为影像数据的比特流和声音数据的比特流,经由同步总线ex470将编码后的影像数据向影像信号处理部ex455供给,并将编码后的声音数据向声音信号处理部ex454供给。影像信号处理部ex455通过用与在上述各实施方式中表示的运动图像编码方法对应的运动图像解码方法将影像信号解码,经由显示器控制部ex459从显示部ex458将在链接的运动图像文件中包含的影像或静止图像显示。此外,声音信号处理部ex454将声音信号解码,从声音输出部ex457输出声音。另外,由于实时流媒体正在普及,所以根据用户的状况,也可能发生声音的再现在社会上不适合的场合。因此,作为初始值,优选的是不将声音信号再现而仅将影像数据再现的结构。也可以仅在用户进行了将影像数据点击等操作的情况下将声音同步地再现。
此外,这里以智能电话ex115为例进行了说明,但作为终端,可以考虑除了拥有编码器及解码器两者的收发型终端以外,还有仅具有编码器的发送终端、仅具有解码器的接收终端的3种安装形式。进而,在数字广播用系统中,假设将在影像数据中复用了声音数据等的复用数据接收、发送而进行了说明,但也可以在复用数据中在声音数据以外还复用了与影像关联的字符数据等,也可以不是将复用数据而是将影像数据自身接收或发送。
另外,假设包括cpu的主控制部ex460控制编码或解码处理而进行了说明,但终端具备gpu的情况也较多。由此,也可以做成通过由cpu和gpu共用化的存储器、或管理地址以便能够共同使用的存储器、发挥gpu的性能而将较大的区域一起处理的结构。由此,能够缩短编码时间,确保实时性而实现低延迟。特别是,如果将运动估计、解块滤波、sao(sampleadaptiveoffset)及变换/量化的处理不是由cpu而是由gpu以图片等的单位一起进行,则是有效率的。
产业上的可利用性
本发明例如可以在电视接收机、数字视频记录机、车载导航仪、便携电话、数字照相机、数字摄像机、视频会议系统或电子镜等中利用。
标号说明
100编码装置
102划分部
104减法部
106变换部
108量化部
110熵编码部
112、204逆量化部
114、206逆变换部
116、208加法部
118、210块存储器
120、212环路滤波器部
122、214帧存储器
124、216帧内预测部
126、218帧间预测部
128、220预测控制部
132二值化部
134、140、236、242切换部
136、240中间缓存
138算术编码部
142复用部
144输出缓存
160、260电路
162、262存储器
200解码装置
202熵解码部
232输入缓存
234分离部
238算术解码部
244逆二值化部