CN108769691A - 图像解码装置、图像解码方法以及图像编码装置 - Google Patents

图像解码装置、图像解码方法以及图像编码装置 Download PDF

Info

Publication number
CN108769691A
CN108769691A CN201810673977.8A CN201810673977A CN108769691A CN 108769691 A CN108769691 A CN 108769691A CN 201810673977 A CN201810673977 A CN 201810673977A CN 108769691 A CN108769691 A CN 108769691A
Authority
CN
China
Prior art keywords
index
case
block
context
context index
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810673977.8A
Other languages
English (en)
Other versions
CN108769691B (zh
Inventor
筑波健史
猪饲知宏
山本智幸
八杉将伸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Publication of CN108769691A publication Critical patent/CN108769691A/zh
Application granted granted Critical
Publication of CN108769691B publication Critical patent/CN108769691B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Peptides Or Proteins (AREA)

Abstract

为了削减变换系数的编码以及解码所涉及的处理量,针对按每个单位区域而分割为2个以上的子块的每个该子块,来对表示是否包含至少1个非0变换系数的子块系数有无标志进行解码,基于表示变换系数是否为0的变换系数有无标志,来导出对象子块的上下文索引,并根据与上述对象子块相邻的相邻子块的子块系数有无标志,来导出上述对象子块的上下文索引。

Description

图像解码装置、图像解码方法以及图像编码装置
本申请是2012年12月26日向中国国家知识产权局提出的题为“算术解码装置、图像解码装置以及算术编码装置”的申请No.201280065204.2的分案申请。
技术领域
本发明涉及对经算术编码的编码数据进行解码的算术解码装置、以及具备这样的算术解码装置的图像解码装置。另外,涉及对生成经算术编码的编码数据的算术编码装置。
背景技术
为了高效地传输或记录运动图像,使用了通过对运动图像进行编码来生成编码数据的运动图像编码装置(图像编码装置)、以及通过对该编码数据进行解码来生成解码图像的运动图像解码装置(图像解码装置)。
作为具体的运动图像编码方式,例如可列举作为H.264/MPEG-4.AVC、VCEG(VideoCoding Expert Group)中的共同开发用编解码器的KTA软件中所采用的方式、TMuC(TestModel under Consideration)软件中所采用的方式、或作为其后继编解码器的HEVC(High-Efficiency Video Coding)的方式(非专利文献1)等。
在这样的运动图像编码方式中,构成运动图像的图像(图片)是基于由通过分割图像而得到的切片、通过分割切片而得到的编码单位(有时也称为编码单元(Coding Unit))、以及通过分割编码单位而得到的块以及分区组成的阶层结构来进行管理的,通常按每块来进行编码/解码。
另外,在这样的编码方式中,通常,基于通过对输入图像进行编码/解码而得到的局部解码图像来生成预测图像,并将按每块对该预测图像与输入图像的差分图像(有时也称为“残差图像”或“预测残差”)实施DCT(Discrete Cosine Transform)变换等的频率变换而得到的变换系数进行编码。
作为变换系数的具体的编码的方式,已知有上下文自适应型可变长编码(CAVLC:Context-based Adaptive Variable Length Coding)以及上下文自适应型2值算术编码(CABAC:Context-based Adaptive Binary Arithmetic Coding)。
在CALVC中,在使各变换系数通过依次扫描而成为了1维的矢量后,对表示各变换系数的值的语法、以及表征连续的0的长度(也称为游程)的语法等进行编码。
在CABAC中,对表征变换系数的各种语法实施2值化处理,并对通过该2值化处理而得到的2值数据进行算术编码。在此,作为上述各种语法,可列举表示变换系数是否为0的标志,即表示非0变换系数的有无的标志significant_coeff_flag(变换系数有无标志也称为)、以及表示在处理顺序中处于最后的非0变换系数的位置的语法last_significant_coeff_x以及last_significant_coeff_y等。
另外,在CABAC中,在对1个符号(2值数据的1比特,也称为Bin)进行编码时,参考分配给处理对象的频率分量的上下文索引,并进行与通过该上下文索引而指定的上下文变量中所含的概率状态索引所指示的发生概率相应的算术编码。另外,通过概率状态索引而指定的发生概率在每对1个符号进行编码时被更新。
在非专利文献1中,例如记载了如下技术:(1)将针对处理对象块的频域分割为多个部分区域,(2)对于低频侧的部分区域中所含的频率分量,分配根据该频率分量在频域内的位置而确定的上下文索引(也称为位置上下文),(3)对于高频侧的部分区域中所含的频率分量,分配根据该频率分量的周边的频率分量中的非0变换系数的数目而确定的上下文索引(也称为周边参考上下文)。
另外,在非专利文献2、3中,提出了用于削减上下文索引的数目的方案。
另外,在非专利文献4中,提出了与各种语法的扫描顺序相关的改善方案。
另外,在非专利文献5中,提出了将针对处理对象块的频域分割为多个子块,并对各子块中是否含有非0变换系数的标志进行解码的方案。
另外,在非专利文献6中,例如记载了如下技术:在处理对象块的尺寸为给定尺寸以上的情况下,通过执行以下的(1)~(5)的过程,来导出在变换系数有无标志(significant_coeff_flag)的解码(编码)时所参考的上下文索引。
(1)将处理对象块的频域分割为多个部分区域。另外,根据通过分割而得到的多个部分区域是属于低频侧~高频侧的哪一者的情况,执行以下的(2)~(4)。
(2)对于低频侧的部分区域中所含的频率分量,导出根据该频率分量在频域内的位置而确定的上下文索引(也称为位置上下文)。
(3)对于中频域的部分区域中所含的频率分量,导出根据该频率分量的周边的频率分量中的非零系数的数目而确定的上下文索引(也称为周边参考上下文)。
(4)对于高频侧的部分区域中所含的频率分量,导出固定的上下文索引。
(5)在处理对象块的尺寸小于给定尺寸的情况下,进一步导出根据该频率分量在频域内的位置而确定的上下文索引(也称为位置上下文)。
先行技术文献
非专利文献
非专利文献1:“WD4:Working Draft 4 of High-Efficiency Video Coding(JCTVC-F803_d2)”,Joint Collaborative Team on Video Coding(JCT-VC)of ITU-TSG16 WP3 and ISO/IEC JTC1/SC29/WG11 6th Meeting:Torino,IT,14-22 July,2011(2011年10月8日公开)
非专利文献2:“A combined proposal from JCTVC-G366,JCTVC-G657,andJCTVC-G768 on context reduction of significance map coding with CABAC(JCTVC-G1015)”,Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3and ISO/IEC JTC1/SC29/WG117th Meeting:Geneva,CH,21-30November,2011(2011年11月25日公开)
非专利文献3:“JCT-VC break-out report:Harmonization of NSQTwithresidual coding(JCTVC-G1038)”,Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG117th Meeting:Geneva,CH,21-30 November,2011(2011年11月28日公开)
非专利文献4:“CE11:Scanning Passes of Residual Data in HE(JCTVC-G320)”,Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG16 WP3 andISO/IEC JTC1/SC29/WG117th Meeting:Geneva,CH,21-30 November,2011(2011年11月9日公开)
非专利文献5:“Multi-level significance maps for Large Transform Units(JCTVC-G644)”,Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG16WP3 and ISO/IEC JTC1/SC29/WG117th Meeting:Geneva,21-30 November,2011(2011年11月9日公开)
非专利文献6:“High Efficiency Video Coding(HEVC)text specificationdraft 6(JCTVC-H1003_dK)”,Joint Collaborative Team on Video Coding(JCT-VC)ofITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 6th Meeting:San Jose,US,1-10Feburary,2012(2012年2月17日公开)
发明要解决的课题
然而,在上述的现有技术中,均存在变换系数的编码以及解码所涉及的处理量的削减不充分这样的问题。
发明内容
本发明鉴于上述的问题而提出,其目的在于,实现较之于现有的构成能削减变换系数的编码以及解码所涉及的处理量的算术解码装置以及算术编码装置。
用于解决课题的手段
为了解决上述课题,本发明的一形态所涉及的图像解码装置是按对象图像的每个单位区域来对编码数据进行解码的算术解码装置,具备:子块系数有无标志解码机构,其针对按每个所述单位区域而分割为2个以上的子块的每个该子块,来对表示是否包含至少1个非0变换系数的子块系数有无标志进行解码;以及上下文索引导出机构,其基于表示变换系数是否为0的变换系数有无标志,来导出对象子块的上下文索引,所述上下文索引导出机构根据与所述对象子块相邻的相邻子块的所述子块系数有无标志,来导出所述对象子块的所述上下文索引。
为了解决上述课题,本发明的一形态所涉及的图像解码装置具备:上述算术解码装置;逆频率变换机构,其通过对属于由所述算术解码装置解码出的所述变换系数进行逆频率变换来生成残差图像;以及解码图像生成机构,其通过将所述残差图像与根据生成完毕的解码图像而预测出的预测图像进行相加来生成解码图像。
为了解决上述课题,本发明的一形态所涉及的算术编码装置是按对象图像的每个单位区域来生成编码数据的算术编码装置,具备:子块系数有无标志编码机构,其针对按每个所述单位区域而分割为2个以上的子块的每个该子块,来对表示是否包含至少1个非0变换系数的子块系数有无标志进行编码;以及上下文索引导出机构,其基于表示变换系数是否为0的变换系数有无标志,来导出对象子块的上下文索引,所述上下文索引导出机构根据与所述对象子块相邻的相邻子块的所述子块系数有无标志,来导出所述上下文索引。
为了解决上述课题,本发明的一形态所涉及的算术解码装置是按对象图像的每个单位区域来对编码数据进行解码的算术解码装置,具备:上下文索引导出机构,其基于表示变换系数是否为0的变换系数有无标志,来导出每个所述单位区域的上下文索引;以及语法解码机构,其基于通过已导出的所述上下文索引而指定的概率状态,来对所述变换系数有无标志进行算术解码,所述上下文索引导出机构对属于所述单位区域的尺寸不同的至少2个单位区域的低频侧的所述变换系数有无标志,导出公共的上下文索引。
为了解决上述课题,本发明的一形态所涉及的图像解码装置具备:上述记载的算术解码装置;逆频率变换机构,其通过对由所述算术解码装置解码出的变换系数进行逆频率变换来生成残差图像;以及解码图像生成机构,其通过对所述残差图像与根据生成完毕的解码图像而预测出的预测图像进行相加来生成解码图像。
为了解决上述课题,本发明的一形态所涉及的图像编码装置是在按对象图像的每个单位区域来生成编码数据的算术编码装置中,具备:上下文索引导出机构,其基于表示变换系数是否为0的变换系数有无标志,来导出每个所述单位区域的上下文索引;以及语法编码机构,其基于通过已导出的所述上下文索引而指定的概率状态,来对所述变换系数有无标志进行算术编码,所述上下文索引导出机构对于所述单位区域的尺寸不同的至少2个单位区域的低频侧的所述变换系数有无标志,导出公共的上下文索引。
发明效果
根据上述构成的算术解码装置,能削减作为解码对象的子块系数有无标志的码量,从而削减变换系数的解码所涉及的处理量。
附图说明
图1是表示本发明的实施方式所涉及的运动图像解码装置所具备的量化残差信息解码部的构成的框图。
图2是表示由本发明的实施方式所涉及的运动图像编码装置生成,并由运动图像解码装置解码的编码数据的数据构成的图,(a)~(d)分别是表示图片层、切片层、树块层以及CU层的图。
图3(a)~(h)是表示PU分割类型的图案的图,分别示出了PU分割类型为2N×N、2N×nU、2N×nD、2N×N、2N×nU以及2N×nD的情况下的分区形状。(i)~(o)是表示将正方形的节点四又树分割为正方形或非正方形的分割方式的图。(i)示出了正方形的分割,(j)示出了横长的长方形的分割,(k)示出了纵长的长方形的分割,(l)示出了横长的节点的横长的分割,(m)示出了横长的节点的正方形的分割,(n)示出了纵长的节点的纵长的分割,以及(o)示出了纵长的节点的正方形的分割。
图4是表示实施方式所涉及的编码数据的量化残差信息中所含的语法的语法表的前半部分的图。
图5是表示实施方式所涉及的编码数据的量化残差信息中所含的语法的语法表的后半部分的图。
图6是用于说明实施方式所涉及的量化残差信息解码部的动作的图,(a)示出了正向扫描的情况下的处理顺序,(b)示出了反向扫描的情况下的处理顺序,(c)例示了处理频域上的非0的变换系数,(d)例示了对象频域上的语法significant_coeff_flag的值,(e)例示了对对象频域上的语法coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag以及coeff_abs_level_minus3进行解码而得到的值,(f)例示了对象频域上的语法coeff_sign_flag的值。
图7是用于说明实施方式所涉及的解码处理以及编码处理的扫描顺序的图,(a)示出了子块扫描为正向扫描的情况,(b)示出了子块内扫描为正向扫描的情况,(c)示出了子块扫描为反向扫描的情况,(d)示出了子块内扫描为反向扫描的情况。
图8是用于说明实施方式中的非0变换系数的解码处理的图,(a)示出了在将尺寸为8×8的块分割为4×4的尺寸的子块的情况下,以正向扫描来扫描各频率分量的情况下的扫描顺序,(b)例示了由8×8的频率分量构成的频域上的非0的变换系数(非0变化系数),(c)示出了在解码对象的变换系数如(b)所示的情况下针对各子块而解码出的子块系数有无标志significant_coeffgroup_flag的各值,(d)示出了在解码对象的变换系数如图8(b)所示的情况下表示非0变换系数的有无的语法significant_coeff_flag的各值,(e)示出了在解码对象的变换系数如(b)所示的情况下通过对语法coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag以及coeff_abs_level_minus3进行解码而得到的各变换系数的绝对值,(f)示出了解码对象的变换系数为如(b)所示的情况下的语法coeff_sign_flag。
图9是表示实施方式所涉及的运动图像解码装置的构成的框图。
图10是表示实施方式所涉及的运动图像解码装置所具备的可变长码解码部的构成的框图。
图11是表示实施方式所涉及的运动图像解码装置中可利用的帧内预测的方向的图。
图12是表示帧内预测模式、以及与该帧内预测模式建立了对应的名字的图。
图13是表示对象块的尺寸的对数值(log2TrafoSize)与预测模式数(intraPredModeNum)的关系的图。
图14是表示通过帧内预测模式索引IntraPredMode和log2TrafoSize-2的各值而指定的扫描索引scanIndex的例子的表。
图15是用于说明扫描索引的图,(a)示出了通过扫描索引scanIndex的各值而指定的扫描类型ScanType,(b)示出了块尺寸为4×4分量时的水平方向优先扫描(horizontalfast scan)、垂直方向优先扫描(vertical fact scan)以及斜向扫描(Up-right diagonalscan)的各扫描的扫描顺序。
图16是表示通过帧内预测模式索引IntraPredMode和log2TrafoSize-2的各值而指定的子块扫描索引scanIndex的例子的表。
图17是用于说明子块扫描索引的图,(a)示出了通过子块扫描索引scanIndex的各值而指定的子块扫描类型ScanType,(b)示出了块尺寸为4×4分量时的水平方向优先扫描(horizontal fast scan)、垂直方向优先扫描(vertical fact scan)以及斜向扫描(Up-right diagonal scan)的各扫描的扫描顺序。
图18是表示通过帧内预测模式索引IntraPredMode和log2TrafoSize-2的各值而指定的子块扫描索引scanIndex的其他的例子的表。
图19是表示实施方式所涉及的子块系数有无标志解码部的构成的框图。
图20是用于说明实施方式所涉及的子块系数有无标志解码部所执行的解码处理的图,(a)示出了对象子块(xCG,yCG)和与对象子块的下侧相邻的相邻子块(xCG,yCG+1),(b)示出了对象子块(xCG,yCG)和与对象子块的右侧相邻的相邻子块(xCG+1,yCG),(c)示出了对象子块(xCG,yCG)、与对象子块的下侧相邻的相邻子块(xCG,yCG+1)和与对象子块的右侧相邻的相邻子块(xCG+1,yCG)。
图21是用于说明比较例所涉及的子块系数有无标志编码以及解码处理的图,(a)示出了16×16分量的频域中存在的变换系数,(b)示出了分配给各子块的子块系数有无标志。
图22是用于说明实施方式所涉及的子块系数有无标志编码以及解码处理的图,(a)示出了16×16分量的频域中存在的变换系数,(b)示出了分配给各子块的子块系数有无标志。
图23是表示实施方式所涉及的系数有无标志解码部的构成的框图。
图24是表示通过实施方式所涉及的系数有无标志解码部所具备的频率分类部所执行的分类处理而被分割为部分区域R0、R1以及R2的频域的一例的图。
图25是用于说明由实施方式所涉及的系数有无标志解码部所具备的周边参考上下文导出部来以反向扫描顺序进行解码处理的情况下所参考的参考频率分量的图,(a)示出了参考频率分量c1、c2、c3、c4、c5与对象频率分量x的相对位置,(b)示出了参考频率分量c1、c2、c4、c5与对象频率分量x的相对位置。
图26是用于说明实施方式所涉及的系数有无标志解码部所具备的频率分类部所执行的分类处理的图,(a)示出了在对与亮度值相关的变换系数进行解码时适合应用的部分区域分割,(b)示出了在对与色差相关的变换系数进行解码时适合应用的部分区域分割。
图27是用于说明实施方式所涉及的系数有无标志解码部所执行的上下文索引导出处理的图,是表示将分配给图26(a)所示的部分区域R0~R2各自中所含的频域的上下文索引进行导出的导出处理的伪代码。
图28是用于说明实施方式所涉及的系数有无标志解码部所执行的上下文索引导出处理的图,是表示将分配给图26(b)所示的部分区域R0~R1各自中所含的频域的上下文索引进行导出的导出处理的伪代码。
图29是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的图,(a)示出了构成具有4×4分量的尺寸的频域的区域R0~R6,(b)示出了构成具有8×8分量的尺寸的频率分量的区域R0~R9。
图30是用于说明比较例所涉及的上下文索引导出处理的图,(a)示出了对于具有4×4分量的尺寸的频域中所含的各频率分量所导出的上下文索引,即在对与亮度Y相关的significant_coeff_flag进行解码时所参考的上下文索引,(b)示出了对于具有4×4分量的尺寸的频域中所含的各频率分量,通过比较例所涉及的上下文索引导出处理而导出的上下文索引,即在对与色差U、V相关的significant_coeff_flag进行解码时所参考的上下文索引,(c)示出了对于具有8×8分量的尺寸的频域中所含的各频率分量,通过比较例所涉及的上下文索引导出处理而导出的上下文索引,即对亮度Y、色差U、V相关的significant_coeff_flag进行解码时所参考的上下文索引。
图31是表示实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的伪代码。
图32是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的图,(a)示出了图31的伪代码中的CTX_IND_MAP_4x4to8x8[index]的一例,(b)示出了对于图31所示的伪代码使用(a)的CTX_IND_MAP_4x4to8x8[index]的情况下所得到的各上下文索引的值。
图33是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了构成具有4×4分量的尺寸的频域的区域R0~R6,(b)示出了构成具有8×8分量的尺寸的频率分量的区域R0~R9。
图34是表示实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的伪代码。
图35是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了图34的伪代码中的CTX_IND_MAP_4x4to8x8[index]的一例,(b)示出了对于图34所示的伪代码使用(a)的CTX_IND_MAP_4x4to8x8[index]的情况下所得到的各上下文索引的值。
图36是表示实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的伪代码。
图37是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了图36的伪代码中的CTX_IND_MAP_4x4to8x8[index]的一例,(b)示出了对于图36所示的伪代码使用(a)的CTX_IND_MAP_4x4to8x8[index]的情况下所得到的各上下文索引的值。
图38是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了图36的伪代码中的CTX_IND_MAP_4x4to8x8[index]的一例,(b)示出了对于图36所示的伪代码,利用(a)的CTX_IND_MAP_4x4to8x8[index]的情况下所得到的各上下文索引的值。
图39是表示实施方式所涉及的系数有无标志解码部的第1变形例的构成的框图。
图40示出了由第1变形例所涉及的系数有无标志解码部所具备的子块周边参考上下文导出部参考的相邻子块(xCG+1,yCG)以及相邻子块(xCG,yCG+1)。
图41是表示第1变形例所涉及的系数有无标志解码部所具备的子块周边参考上下文导出部所执行的上下文索引导出处理的伪代码,是表示在对与亮度Y相关的significant_coeff_flag进行解码时所参考的上下文索引的导出处理的伪代码。
图42是表示第1变形例所涉及的系数有无标志解码部所具备的子块周边参考上下文导出部所执行的上下文索引导出处理的伪代码,是在对与色差U、V相关的significant_coeff_flag进行解码时所参考的上下文索引的导出处理的伪代码。
图43是表示实施方式所涉及的系数有无标志解码部的第2变形例的构成的框图。
图44是表示在频域的尺寸为给定的尺寸以下(例如,4×4分量、8×8分量)的情况下的实施方式所涉及的变换系数解码部所执行的变换系数解码处理的伪代码。
图45是表示在频域的尺寸为给定的尺寸以下的情况下的实施方式所涉及的变换系数解码部所执行的变换系数解码处理的流程的流程图。
图46是表示对实施方式所涉及的变换系数解码部所执行的扫描类型进行选择的处理的流程的流程图。
图47是表示对实施方式所涉及的变换系数解码部所执行的非零变换系数有无标志significant_coeff_flag进行解码的处理的流程的流程图。
图48是表示在频域的尺寸大于给定的尺寸的(例如,16×16分量、32×32分量)情况下的实施方式所涉及的变换系数解码部所执行的变换系数解码处理的伪代码。
图49是表示在频域的尺寸大于给定的尺寸的情况下的实施方式所涉及的变换系数解码部所执行的变换系数解码处理的流程的流程图。
图50是表示在对实施方式所涉及的变换系数解码部所执行的子块系数有无标志进行解码的处理的流程的流程图。
图51是表示在对实施方式所涉及的变换系数解码部所执行的子块内的各非零变换系数有无标志significant_coeff_flag进行解码的处理的流程的流程图。
图52是表示实施方式所涉及的运动图像编码装置的构成的框图。
图53是表示实施方式所涉及的运动图像编码装置所具备的可变长码编码部的构成的框图。
图54是表示本发明的实施方式所涉及的运动图像编码装置所具备的量化残差信息编码部的构成的框图。
图55是表示实施方式所涉及的系数有无标志编码部的构成的框图。
图56是表示实施方式所涉及的子块系数有无标志编码部的构成的框图。
图57是表示搭载有上述运动图像编码装置的发送装置、以及搭载有上述运动图像解码装置的接收装置的构成的图。(a)示出了搭载有运动图像编码装置的发送装置,(b)示出了搭载有运动图像解码装置的接收装置。
图58是表示搭载有上述运动图像编码装置的记录装置、以及搭载有上述运动图像解码装置的再现装置的构成的图。(a)示出了搭载有运动图像编码装置的记录装置,(b)示出了搭载有运动图像解码装置的再现装置。
图59是表示通过帧内预测模式索引IntraPredMode和log2TrafoSize-2的各值而指定的子块扫描索引scanIndex的其他的例子的表。
图60是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了构成具有4×4分量的尺寸的频域的区域R0~R6,(b)示出了构成具有8×8分量的尺寸的频率分量的区域R0~R6。
图61是表示实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的伪代码。
图62是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了图61的伪代码中的CTX_IND_MAP[index]的一例,(b)示出了对于图61所示的伪代码使用(a)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(c)示出了对于图61所示的伪代码使用(a)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的亮度相关的各上下文索引的值。
图63是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了对于图61所示的伪代码使用图62(a)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的色差相关的各上下文索引的值,(b)示出了对于图61所示的伪代码使用图62(a)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的色差相关的各上下文索引的值。
图64是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了图61的伪代码中的CTX_IND_MAP[index]的其他的一例,(b)示出了对于图61所示的伪代码使用(a)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(c)示出了对于图61所示的伪代码使用(a)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的亮度相关的各上下文索引的值。
图65是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了对于图61所示的伪代码使用图64(a)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的色差相关的各上下文索引的值,(b)示出了对于图61所示的伪代码使用图64(a)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的色差相关的各上下文索引的值。
图66是表示实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的伪代码。
图67是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了图66的伪代码中的CTX_IND_MAP_L[index]的一例,(b)示出了图66的伪代码中的CTX_IND_MAP_C[index]的一例。
图68是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了对于图66所示的伪代码使用图67(a)的CTX_IND_MAP_L[index]的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(b)示出了对于图66所示的伪代码使用图67(a)的CTX_IND_MAP_L[index]的情况下所得到的与8×8分量的亮度相关的各上下文索引的值。
图69是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了对于图66所示的伪代码使用图67(b)的CTX_IND_MAP_C[index]的情况下所得到的与4×4分量的色差相关的各上下文索引的值,(b)示出了对于图66所示的伪代码使用图67(b)的CTX_IND_MAP_C[index]的情况下所得到的与8×8分量的色差相关的各上下文索引的值。
图70是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了构成具有4×4分量的尺寸的频域的区域R0~R6,(b)示出了构成具有8×8分量的尺寸的频率分量的区域R0~R7。
图71是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了构成具有4×4分量的尺寸的频域的区域R0~R6,(b)示出了构成具有8×8分量的尺寸的频率分量的区域R0~R7。另外,示出了在(a)中对4×4分量的区域R3和R5分配公共的上下文索引,在(b)中对8×8分量的区域R3和R5分配公共的上下文索引的例子。
图72是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了构成具有4×4分量的尺寸的频域的区域R0~R6,(b)示出了构成具有8×8分量的尺寸的频率分量的区域R0~R7。另外,示出了对(a)中的4×4分量的区域R0(DC分量)和(b)中的8×8分量的区域R7(DC分量)分配公共的上下文索引的例子。
图73是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了构成具有4×4分量的尺寸的频域的区域R0~R6,(b)示出了构成具有8×8分量的尺寸的频率分量的区域R0~R7。另外,示出了对(a)中的4×4分量的区域R0(DC分量)和(b)中的8×8分量的区域R7(DC分量)分配公共的上下文索引的例子。另外,示出了在(a)中对4×4分量的区域R3和R5分配公共的上下文索引,在(b)中对8×8分量的区域R3和R5分配公共的上下文索引的例子。
图74是表示第1变形例所涉及的系数有无标志解码部所具备的子块周边参考上下文导出部所执行的上下文索引导出处理的伪代码,是表示在对与亮度Y相关的significant_coeff_flag进行解码时所参考的上下文索引的导出处理的伪代码。
图75是表示频域的尺寸大于给定的尺寸的情况下的实施方式所涉及的变换系数解码部所执行的变换系数解码处理的另一例的流程图,是将子块系数有无标志的解码、与非零系数有无标志及各非零系数的符号和大小的解码在以子块为单位的同一循环内实施的例子。
图76是表示在图75中对实施方式所涉及的变换系数解码部所执行的子块系数有无标志进行解码的处理的流程的流程图。
图77是表示在图75中对实施方式所涉及的变换系数解码部所执行的子块内的各非零变换系数有无标志significant_coefl_flag进行解码的处理的流程的流程图。
图78是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了构成具有16×4分量的尺寸的频域的区域A0~A6,(b)示出了构成具有4×16分量的尺寸的频率分量的区域A0~A6。
图79是用于说明16×4变换块(16×4分量)的分割图案与4×16变换块(4×16分量)的分割图案相似的图。
图80是表示在频域的尺寸为给定的尺寸以下(例如,4×4分量,8×8分量、16×4分量、4×16分量)的情况下的实施方式所涉及的变换系数解码部所执行的变换系数解码处理的伪代码。
图81是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了对于图80所示的伪代码使用图62(a)的CTX_IND_MAP[index]的情况下所得到的与16×4分量的亮度相关的各上下文索引的值,(b)示出了对于图80所示的伪代码使用图62(a)的CTX_IND_MAP[index]的情况下所得到的与4×16分量的亮度相关的各上下文索引的值。
图82是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了对于图80所示的伪代码使用图62(a)的CTX_IND_MAP[index]的情况下所得到的与16×4分量的色差相关的各上下文索引的值,(b)示出了对于图80所示的伪代码使用图62(a)的CTX_IND_MAP[index]的情况下所得到的与4×16分量的色差相关的各上下文索引的值。
图83是表示频域的尺寸为给定的尺寸以下(例如,4×4分量,8×8分量、16×4分量、4×16分量)的情况下的实施方式所涉及的变换系数解码部所执行的变换系数解码处理的其他的例子的伪代码。
图84是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了对于图80所示的伪代码使用图67(b)的CTX_IND_MAP_C[index]的情况下所得到的与16×4分量的色差相关的各上下文索引的值,(b)示出了对于图80所示的伪代码使用图67(b)的CTX_IND_MAP_C[index]的情况下所得到的与4×16分量的色差相关的各上下文索引的值,(c)示出了对于图80所示的伪代码使用图67(b)的CTX_IND_MAP_C[index]的情况下所得到的与8×8分量的色差相关的各上下文索引的值。
图85是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了构成具有4×4分量的尺寸的频域的区域R0~R8,(b)示出了构成具有8×8分量的尺寸的频率分量的区域R0~R8。
图86是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了对于图87(a)所示的伪代码使用图87(b)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(b)示出了对于图87(a)所示的伪代码使用图87(b)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的亮度相关的各上下文索引的值,(c)示出了对于图87(a)所示的伪代码使用图87(b)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的色差相关的各上下文索引的值,(d)示出了对于图87(a)所示的伪代码使用图87(b)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的色差相关的各上下文索引的值。
图87是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)是表示实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的伪代码,(b)示出了伪代码中的CTX_IND_MAP[index]的一例。
图88是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了对于图89(a)所示的伪代码使用图89(b)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(b)示出了对于图89(a)所示的伪代码使用图89(b)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的亮度相关的各上下文索引的值,(c)示出了对于图89(a)所示的伪代码使用图89(b)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的色差相关的各上下文索引的值,(d)示出了对于图89(a)所示的伪代码使用图89(b)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的色差相关的各上下文索引的值。
图89是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)是表示实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的伪代码,(b)示出了伪代码中的CTX_IND_MAP[index]的一例。
图90是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)是表示实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的伪代码,(b)示出了伪代码中的CTX_IND_MAP[index]的一例,(c)示出了伪代码中的CTX_IND_MAP[index]的其他的一例。
图91是用于说明现有技术所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的与4×4分量的亮度/色差相关的上下文索引导出处理的例子的图,(a)是表示现有技术所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的例子的伪代码,(b)示出了伪代码中的CTX_IND_MAP4x4[index]的一例。
图92是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了在使用说明书中所示的式(eq.e1)的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(b)示出了在说明书中所示的式(eq.e2)中设a=1、b=1的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(c)示出了在说明书中所示的式(eq.e2)中设a=0、b=1的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(d)示出了在说明书中所示的式(eq.e3)中设th=3、d=4的情况下所得到的与4×4分量的亮度相关的各上下文索引的值。
图93是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了在利用说明书中所示的式(eq.f1)的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(b)示出了在说明书中所示的式(eq.f2)中设th=3,a=4的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(c)示出了在说明书中所示的式(eq.f2)中设th=4、a=4的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(d)示出了在说明书中所示的式(eq.f3)中设th=1、a=4的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(e)示出了在说明书中所示的式(eq.f4)中设th=1、a=6、b=2、height=4的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(f)示出了在说明书中所示的式(eq.f5)中设th=1、a=6、b=2的情况下所得到的与4×4分量的亮度相关的各上下文索引的值。
图94是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了在说明书中所示的式(eq.g1)中利用a=1、b=1、c=3的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(b)示出了在说明书中所示的式(eq.g2)中设th=3、a=1、b=1、c=3、d=3的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(c)示出了在说明书中所示的式(eq.g2)中设th=4、a=1、b=1、c=3、d=3的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(d)示出了在应用说明书中所示的式(eq.g3)的情况下所得到的与4×4分量的亮度相关的各上下文索引的值。
图95是用于说明实施方式所涉及的系数有无标志解码部所具备的位置上下文导出部所执行的上下文索引导出处理的其他的例子的图,(a)示出了在说明书中所示的式(eq.h1)中设a=1、b=1、c=3的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(b)示出了在说明书中所示的式(eq.h2)中设th=3、a=1、b=1、c=3、d=3的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(c)示出了在说明书中所示的式(eq.h2)中设th=4、a=1、b=1、c=3、d=3的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,(d)示出了在利用说明书中所示的式(eq.h3)的情况下所得到的与4×4分量的亮度相关的各上下文索引的值。
图96是表示实施方式所涉及的系数有无标志解码部的第3变形例的构成例的框图。
图97是表示实施方式所涉及的系数有无标志编码部的第2变形例的构成例的框图。
图98是用于说明实施方式所涉及的系数有无标志解码部的第3变形例所具备的导出方法控制部所执行的分类处理的图,(a)示出了在对与亮度以及色差相关的变换系数进行解码时根据系数位置(xC,yC)来确定部分区域R0(低频分量)的情况下适合应用的部分区域分割,(b)示出了在对亮度以及色差相关的变换系数进行解码时根据子块位置(xCG,yCG)来确定部分区域R0(低频分量)的情况下适合应用的部分区域分割。
图99是用于说明由实施方式所涉及的系数有无标志解码部的第3变形例所具备的周边参考上下文导出部以反向扫描顺序进行解码处理的情况下所参考的参考频率分量的图,(a)示出了频率分量上的位置与进行选择的模板的关系,(b)示出了参考频率分量c1、c2、c3、c4、c5与对象频率分量x的相对位置,(c)示出了参考频率分量c1、c2、c4、c5与对象频率分量x的相对位置,(d)示出了参考频率分量c1、c2、c4、c5与对象频率分量x的相对位置,(e)表征了4×4子块中的斜向扫描的扫描顺序(反向扫描顺序)。
图100是用于说明实施方式所涉及的系数有无标志解码部的第3变形例所具备的位置上下文导出部所执行的上下文索引导出处理的图,(a)示出了4×4TU以及8×8TU的各系数位置(X,Y)与上下文组的对应表CTX_GRP_TBL[X][Y],(b)以比特表现来示出了(a)的对应表的各值,(c)示出了(a)的对应的上下文组的低位1比特的值。
图101是用于说明实施方式所涉及的系数有无标志解码部的第3变形例所具备的位置上下文导出部所执行的上下文索引导出处理的图,示出了基于系数位置(X,Y)的各比特x0,x1,y0,y1的上下文组的设定的组合例。
图102是×4TU以及8×8TU的各系数位置(X,Y)与上下文组的对应表CTX_GRP_TBL[X][Y]的其他的例子的图,(a)示出了在将式(eq.A2-10)所示的逻辑运算应用于图101的图案0的情况下所得到的上下文组的各值,(b)示出了在将式(eq.A2-11)所示的逻辑运算应用于图101的图案0的情况下所得到的上下文组的各值,(c)示出了在将式(eq.A2-12)所示的逻辑运算应用于图101的图案0的情况下所得到的上下文组的各值。
图103是表示实施方式所涉及的系数有无标志解码部的第3变形例所具备的上下文导出部124z的动作的流程图。
具体实施方式
以下,基于附图来说明本发明所涉及的解码装置以及编码装置的一实施方式。此外,本实施方式所涉及的解码装置根据编码数据来解码运动图像。因此,以下,将其称呼为“运动图像解码装置”。另外,本实施方式所涉及的编码装置通过对运动图像进行编码来生成编码数据。因此,以下,将其称呼为“运动图像编码装置”。
但本发明的适用范围不限于此。即,根据以下的说明可以明确,本发明的特征即使不以多个帧为前提也成立。即,无论是以运动图像为对象还是以静止图像为对象,均能一般应用于解码装置以及编码装置。
(编码数据#1的构成)
使用图2,来说明由运动图像编码装置2生成、并由运动图像解码装置1解码的编码数据#1的构成例。编码数据#1例示地包含序列以及构成序列的多个图片。
在序列层,规定了为了对处理对象的序列进行解码而由运动图像解码装置1参考的数据的集合。在序列层含有序列参数集SPS、图片参数集PPS、图片PICT。
编码数据#1中的图片层以下的阶层的结构如图2所示。图2的(a)~(d)分别是表示对图片PICT进行规定的图片层、对切片S进行规定的切片层、对树块(Tree block)TBLK进行规定的树块层、对树块TBLK中所含的编码单位(Coding Unit;CU)进行规定的CU层的图。
(图片层)
在图片层,规定了为了对处理对象的图片PICT(以下,也称为对象图片)进行解码而由运动图像解码装置1参考的数据的集合。图片PICT如图2的(a)所示,含有图片报头PH以及切片S1~SNS(NS是图片PICT中所含的切片的总数)。
此外,以下,在无需区分切片S1~SNS的每一个的情况下,有时省略标号的下标来记述。另外,关于以下说明的编码数据#1中所含的数据,即带下标的其他数据也同样。
在图片报头PH中,含有运动图像解码装置1为了决定对象图片的解码方法而参考的编码参数群。例如,运动图像编码装置2在编码时用到的表示可变长编码的模式的编码模式信息(entropy_coding_mode_flag)是图片报头PH中所含的编码参数的一例。
在entropy_coding_mode_flag为0的情况下,该图片PICT通过CAVLC(Context-based Adaptive Variable Length Coding)进行编码。另外,在entropy_coding_mode_flag为1的情况下,该图片PICT通过CABAC(Context-based Adaptive Binary ArithmeticCoding)进行编码。
(切片层)
在切片层,规定了为了对处理对象的切片S(对象切片也称为)进行解码而由运动图像解码装置1参考的数据的集合。切片S如图2的(b)所示,含有切片报头SH以及树块TBLK1~TBLKNC(NC是切片S中所含的树块的总数)。
在切片报头SH中,含有为了决定对象切片的解码方法而由运动图像解码装置1参考的编码参数群。对切片类型进行指定的切片类型指定信息(slice_type)是切片报头SH中所含的编码参数的一例。
作为能通过切片类型指定信息进行指定的切片类型,可列举:(1)在编码时仅使用帧内预测的I切片,(2)在编码时使用单预测或帧内预测的P切片,(3)在编码时使用单预测、双预测或帧内预测的B切片等。
另外,在切片报头SH中含有由运动图像解码装置1所具备的环路滤波器参考的滤波器参数FP。滤波器参数FP含有滤波器系数群。在滤波器系数群中含有:(1)对滤波器的抽头数进行指定的抽头数指定信息、(2)滤波器系数a0~aNT-1(NT是滤波器系数群中所含的滤波器系数的总数)、以及(3)偏移。
(树块层)
在树块层,规定了为了对处理对象的树块TBLK(以下,对象树块也称为)进行解码而由运动图像解码装置1参考的数据的集合。
树块TBLK包含树块报头TBLKH、以及编码单位信息CU1~CUNL(NL是树块TBLK中所含的编码单位信息的总数)。在此,首先,针对树块TBLK与编码单位信息CU的关系,说明如下。
树块TBLK被分割为用于对帧内预测或帧间预测、以及用于变换的各处理的块尺寸进行确定的单元。
树块TBLK的上述单元通过递归式的四叉树分割被分割。以下将通过该递归式的四叉树分割而得到的树结构称为编码树(coding tree)。
以下,将与编码树的末端的节点即叶(leaf)对应的单元作为编码节点(codingnode)来进行参考。另外,编码节点成为编码处理的基本的单位,因此以下将编码节点也称为编码单位(CU)。
也就是,编码单位信息CU1~CUNL是与将树块TBLK递归式地四叉树分割而得到的各编码节点(编码单位)对应的信息。
另外,编码树的根(root)与树块TBLK对应。换言之,树块TBLK与递归式地包含多个编码节点的四叉树分割的树结构的最上级节点相对应。
此外,各编码节点的尺寸在纵横方向上均是该编码节点直接所属的编码节点(即,该编码节点的上一级阶层的节点的单元)的尺寸的一半。
另外,各编码节点可取的尺寸取决于编码数据#1的序列参数集SPS中所含的编码节点的尺寸指定信息以及最大阶层深度(maximum hierarchical depth)。例如,在树块TBLK的尺寸为64×64像素、且最大阶层深度为3的情况下,该树块TBLK以下的阶层中的编码节点可取4种类的尺寸,即,64×64像素、32×32像素、16×16像素、以及8×8像素的任一者。
(树块报头)
在树块报头TBLKH中,含有为了决定对象树块的解码方法而由运动图像解码装置1参考的编码参数。具体而言,如图2的(c)所示,包含:对对象树块到各CU的分割图案进行指定的树块分割信息SP_TBLK、以及对量化步长的大小进行指定的量化参数差分Δqp(qp_delta)。
树块分割信息SP_TBLK是表征用于分割树块的编码树的信息,具体而言,是对对象树块中所含的各CU的形状、尺寸、以及对象树块内的位置进行指定的信息。
此外,树块分割信息SP_TBLK可以不显式地包含CU的形状或尺寸。例如树块分割信息SP_TBLK可以是表示是否对对象树块全体或树块的部分区域进行四分割的标志(split_coding_unit_flag)的集合。在此情况下,能通过兼用树块的形状或尺寸来确定各CU的形状或尺寸。
另外,量化参数差分Δqp是对象树块中的量化参数qp、与在该对象树块之前刚编码出的树块中的量化参数qp’的差分qp-qp’。
(CU层)
在CU层,规定了为了对处理对象的CU(以下,也称为对象CU)进行解码而由运动图像解码装置1参考的数据的集合。
在此,在说明编码单位信息CU中所含的数据的具体的内容前,说明CU中所含的数据的树结构。编码节点成为预测树(prediction ree;PT)以及变换树(transform tree;TT)的根的节点。关于预测树以及变换树,说明如下。
在预测树中,将编码节点分割为1个或多个预测块,并规定各预测块的位置和尺寸。若换一种的表现,则预测块是构成编码节点的1个或多个不重复的区域。另外,预测树包含上述的通过分割而得到的1个或多个预测块。
预测处理按该预测块的每一个来进行。以下,将作为预测的单位的预测块也称为预测单位(prediction unit;PU)。
预测树中的分割的种类大致上分为帧内预测的情况、以及帧间预测的情况这两种情况。在帧内预测的情况下,分割方法中存在2N×2N(与编码节点为同一尺寸)以及N×N。另外,在帧间预测的情况下,分割方法中存在2N×2N(与编码节点为同一尺寸)、2N×N、N×2N以及N×N等。
另外,在变换树中,将编码节点分割为1个或多个变换块,并规定各变换块的位置和尺寸。若换一种表现,则变换块是构成编码节点的1个或多个不重复的区域。另外,变换树包含通过上述的分割而得到的1个或多个变换块。
变换处理按该变换块的每一块来进行。以下,将作为变换的单位的变换块也称为变换单位(transform unit;TU)。
(编码单位信息的数据结构)
接着,在参考图2的(d)的同时说明编码单位信息CU中所含的数据的具体的内容。如图2的(d)所示,编码单位信息CU具体而言,包含:跳过模式标志SKIP、CU预测类型信息Pred_type、PT信息PTI、以及TT信息TTI。
[跳过标志]
跳过标志SKIP是表示是否针对对象CU应用了跳过模式的标志,在跳过标志SKIP的值为1的情况下,即,对对象CU应用了跳过模式的情况下,省略其编码单位信息CU中的PT信息PTI。此外,跳过标志SKIP在I切片中被省略。
[CU预测类型信息]
CU预测类型信息Pred_type包含CU预测方式信息PredMode以及PU分割类型信息PartMode。有时将CU预测类型信息仅称为预测类型信息。
CU预测方式信息PredMode指定使用帧内预测(帧内CU)、以及帧间预测(帧间CU)的哪一者,来作为针对对象CU中所含的各PU的预测图像生成方法。此外,以下,将对象CU中的跳过、帧内预测、以及帧间预测的类别称为CU预测模式。
PU分割类型信息PartMode对对象编码单位(CU)到各PU的分割的图案即PU分割类型进行指定。以下,将如此遵照PU分割类型来将对象编码单位(CU)分割到各PU的动作称为PU分割。
PU分割类型信息PartMode例示性地,既可以是表示PU分割图案的种类的索引,也可以被指定了对象预测树中所含的各PU的形状、尺寸、以及在对象预测树内的位置。
此外,可选择的PU分割类型根据CU预测方式和CU尺寸而不同。另外,若进一步讲,能选择的PU分割类型在帧间预测以及帧内预测各自的情况下是不同的。另外,关于PU分割类型的细节将后述。
另外,在不是I切片的情况下,PU分割类型信息PartMode的值以及PU分割类型信息PartMode的值可以根据对树块的分割(partition)、预测方式、以及CU的分割(split)的方法的组合进行指定的索引(cu_split_pred_part_mode)来确定。
[PT信息]
PT信息PTI是与对象CU中所含的PT相关的信息。换言之,PT信息PTI是与PT中所含的1个或多个PU各自相关的信息的集合。如上所述,预测图像的生成是以PU为单位来进行的,因此PT信息PTI在由运动图像解码装置1生成预测图像时被参考。PT信息PTI如图2的(d)所示,包含含有各PU中的预测信息等在内的PU信息PUI1~PUINP(NP是对象PT中所含的PU的总数)。
预测信息PUI对应于预测类型信息Pred_mode指定哪一种预测方法的情形而包含帧内预测参数PP_Intra或帧间预测参数PP_Inter。以下,将应用帧内预测的PU也称为帧内PU,将应用帧间预测的PU也称为帧间PU。
帧间预测参数PP_Inter包含运动图像解码装置1通过帧间预测来生成帧间预测图像时所参考的编码参数。
作为帧间预测参数PP_Inter,例如可列举合并标志(merge_flag)、合并索引(merge_idx)、估计运动矢量索引(mvp_idx)、参考图像索引(ref_idx)、帧间预测标志(inter_pred_flag)、以及运动矢量残差(mvd)。
帧内预测参数PP_Intra包含运动图像解码装置1在通过帧内预测来生成帧内预测图像时所参考的编码参数。
作为帧内预测参数PP_Intra,例如可列举估计预测模式标志、估计预测模式索引、以及残余预测模式索引。
此外,在帧内预测信息中,可以对表示是否使用PCM模式的PCM模式标志进行编码。在编码了PCM模式标志的情况下,在PCM模式标志示出了使用PCM模式时,省略预测处理(帧内)、变换处理以及熵编码的各处理。
[TT信息]
TT信息TTI是与CU中所含的TT相关的信息。换言之,TT信息TTI是与TT中所含的1个或多个TU各自相关的信息的集合,在由运动图像解码装置1解码残差数据时被参考。此外,以下,有时也将TU称为块。
TT信息TTI如图2的(d)所示,含有:对对象CU到各变换块的分割图案进行指定的TT分割信息SP_TU、以及TU信息TUI1~TUINT(NT是对象CU中所含的块的总数)。
TT分割信息SP_TU,具体而言,是用于决定对象CU中所含的各TU的形状、尺寸、以及在对象CU内的位置的信息。例如,TT分割信息SP_TU能根据表示是否进行作为对象的节点的分割的信息(split_transform_flag)、以及表示该分割的深度的信息(trafoDepth)来实现。
另外,例如在CU的尺寸为64×64的情况下,通过分割而得到的各TU可取32×32像素~4×4像素的尺寸。
TU信息TUI1~TUINT是与TT中所含的1个或多个TU各自相关的个别的信息。例如,TU信息TUI含有量化预测残差(也称为量化残差)。
各量化预测残差是通过由运动图像编码装置2对处理对象的块即对象块实施以下的处理1~3而生成的编码数据。
处理1:对从编码对象图像中减去预测图像后的预测残差进行频率变换(例如DCT变换(Discrete Cosine Transform));
处理2:对通过处理1而得到的变换系数进行量化;
处理3:对通过处理2而量化后的变换系数进行可变长编码;
此外,上述的量化参数qp表征运动图像编码装置2对变换系数进行量化时用到的量化步长QP的大小(QP=2qp/6)。
(PU分割类型)
若将对象CU的尺寸设为2N×2N像素,则在PU分割类型中存在如下的合计8种图案。即,2N×2N像素、2N×N像素、N×2N像素、及N×N像素这4种对称的分割(symmetricsplittings)、以及2N×nU像素、2N×nD像素、nL×2N像素、以及nR×2N像素这4种非对称的分割(asymmetric splittings)。此外,意味着N=2m(m为1以上的任意的整数)。以下,将对对象CU进行分割而得到的区域也称为分区。
在图3的(a)~(h)中,关于各自的分割类型,具体图示了CU中的PU分割的边界的位置。
此外,图3的(a)示出了不进行CU的分割的2N×2N的PU分割类型。另外,图3的(b)、(c)、以及(d)分别示出了在PU分割类型分别为2N×N、2N×nU、以及2N×nD的情况下的分区的形状。另外,图3的(e)、(f)、以及(g)分别示出了PU分割类型为N×2N、nL×2N、以及nR×2N的情况下的分区的形状。另外,图3的(h)示出了PU分割类型为N×N的情况下的分区的形状。
将图3的(a)以及(h)的PU分割类型基于该分区的形状也称为正方形分割。另外,将图3的(b)~(g)的PU分割类型也称为非正方形分割。
另外,在图3的(a)~(h)中,对各区域赋予的编号示出了区域的识别编号,按照该识别编号顺序,对区域进行处理。即,该识别编号表征了区域的扫描顺序。
[帧间预测的情况下的分割类型]
在帧间PU中,定义了上述8种分割类型当中除N×N(图3的(h))以外的7种。此外,有时将上述6种非对称的分割也称为AMP(Asymmetric Motion Partition)。
此外,N的具体的值根据该PU所属的CU的尺寸来规定,nU、nD、nL、以及nR的具体的值对应于N的值而确定。例如,128×128像素的帧间CU能分割成128×128像素、128×64像素、64×128像素、64×64像素、128×32像素、128×96像素、32×128像素、以及96×128像素的帧间PU。
[帧内预测的情况下的分割类型]
在帧内PU中,定义了下面2种分割图案。即,不分割对象CU的,即对象CU自身作为1个PU被对待的分割图案2N×2N、以及将对象CU对称地分割为4个PU的图案N×N。因此,在帧内PU中,若以图3所示的例子而言,能取(a)以及(h)的分割图案。例如,128×128像素的帧内CU能分割成128×128像素、以及64×64像素的帧内PU。
(TU分割类型)
接下来,使用图3(i)~(o)来说明TU分割类型。TU分割的图案根据CU的尺寸、分割的深度(trafoDepth)、以及对象PU的PU分割类型来确定。
另外,在TU分割的图案中包含正方形的四叉树分割和非正方形的四叉树分割。
图3的(i)~(k)示出了将正方形的节点四叉树分割为正方形或非正方形的分割方式。更具体而言,图3的(i)示出了将正方形的节点四叉树分割为正方形的分割方式。另外,同图的(j)示出了将正方形的节点四叉树分割为横长的长方形的分割方式。而且,同图的(k)示出了将正方形的节点四叉树分割为纵长的长方形的分割方式。
另外,图3的(l)~(o)示出了将非正方形的节点四叉树分割为正方形或非正方形的分割方式。更具体而言,图3的(l)示出了将横长的长方形的节点四叉树分割为横长的长方形的分割方式。另外,同图的(m)示出了将横长的长方形的节点四叉树分割为正方形的分割方式。另外,同图的(n)示出了将纵长的长方形的节点四叉树分割为纵长的长方形的分割方式。而且,同图的(o)示出了将纵长的长方形的节点四叉树分割为正方形的分割方式。
(量化残差信息QD的构成)
图4以及图5中示出了量化残差信息QD(在图4中标示为residual_coding_cabac())中所含的各语法。
图4是表示对量化残差信息QD中所含的语法进行表示的语法表的前半部分的图。图5是表示对量化残差信息QD中所含的语法进行表示的语法表的后半部分的图。
如图4以及图5所示,量化残差信息QD含有:语法last_significant_coeff_x、last_significant_coeff_y、significant_coeffgroup_flag、significant_coeff_flag、coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag、coeff_sign_flag,coeff_abs_level_minus3。
量化残差信息QD中所含的各语法通过上下文自适应型2值算术编码(CABAC:(Context-based Adaptive Binary Arithmetic Coding))而被编码。
(块尺寸为给定的尺寸以下的情况下的解码处理)
以下,参考图4~图6,针对块尺寸为给定的尺寸以下的情况下的各语法的解码过程,以块尺寸为8×8像素的情况为例来进行说明。此外,上述给定的尺寸以下的块尺寸例如是指4×4像素以及8×8像素,但这不是用来限定本实施方式(以下同样)。
图6(a)~(g)的横轴表征水平方向频率xC(0≤xC≤7),纵轴表征垂直方向频率yC(0≤yC≤7)。在以下的说明中,将频域中所含的各部分区域当中由水平方向频率xC以及垂直方向频率yC指定的部分区域也称为频率分量(xC,yC)。另外,将针对频率分量(xC,yC)的变换系数也标示为Coeff(xC,yC)。变换系数Coeff(0,0)表示DC分量,除此以外的变换系数表征DC分量以外的分量。在本说明书中,有时将(xC,yC)标示为(u,v)。
图6(a)~(b)是表示8×8的频率分量所构成的频域FR中的扫描顺序的例子的图。
在图6(a)所示的例子中,从低频侧(图6(a)中为左上)朝着高频侧(图6(a)中为右下)依次进行扫描。另外,在图6(a)所示的例子中,沿频域FR内所示的箭头进行扫描。有时将图6(a)所示的扫描顺序也称为正向扫描。
另一方面,在图6(b)所示的例子中,从高频侧(在图6(b)中为右下)朝着低频侧(图6(b)中为左上)依次进行扫描。另外,在图6(b)所示的例子中,沿频域FR内所示的箭头进行扫描。有时将图6(b)所示的扫描顺序也称为反向扫描。
图6(c)是例示8×8的频率分量所构成的频域上的非0的变换系数(非0变换系数)的图。
语法last_significant_coeff_x以及last_significant_coeff_y是表示沿正向扫描方向最后的非0变换系数的位置的语法。在图6(c)所示的例子的情况下,last_significant_coeff_x=6,last_significant_coeff_y=0。
语法significant_coeff_flag是针对以非0变换系数为起点沿反向扫描方向的各频率分量,表示非0变换系数的有无的语法。图6(d)示出了解码对象的变换系数为图6(c)所示的情况下的语法significant_coeff_flag的值。如图6(d)所示,语法significant_coeff_flag是针对各xC,yC,若变换系数为0则取0,变换系数非0则取1的标志。此外,有时也将语法significant_coeff_flag称呼为变换系数有无标志。
语法coeff_abs_level_greater1_flag是表示变换系数的绝对值是否超过1的标志,针对语法significant_coeff_flag的值为1的频率分量而被编码。在变换系数的绝对值超过1时,coeff_abs_level_greater1_flag的值为1,否则coeff_abs_level_greater1_flag的值为0。
语法coeff_abs_level_greater2_flag是表示变换系数的绝对值是否超过2的标志,在coeff_abs_level_greater1_flag的值为1时被编码。在变换系数的绝对值超过2时,coeff_abs_level_greater2_flag的值为1,否则coeff_abs_level_greater2_flag的值为0。
语法coeff_abs_level_minus3是用于在变换系数的绝对值为3以上的情况下对该变换系数的绝对值进行指定的语法,在coeff_abs_level_greater2_flag的值为1时被编码。语法coeff_abs_level_minus3的值是从变换系数的绝对值减去3而得到的。例如,coeff_abs_level_minus3=1示出了变换系数的绝对值为4。
图6(e)示出了通过对语法coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag、以及coeff_abs_level_minus3进行解码而得到的各变换系数的绝对值。
语法coeff_sign_flag是表示变换系数的符号(是正还是负)的标志,针对语法significant_coeff_flag的值为1的频率分量被编码。
图6(f)是表示解码对象的变换系数为图6(c)所示的情况下的语法coeff_sign_flag的图。如图6(f)所示,语法coeff_sign_flag是在变换系数为正的情况下取1,在变换系数为负的情况下取0的标志。
运动图像解码装置1所具备的可变长码解码部11通过对语法last_significant_coeff_x、last_significant_coeff_y、significant_coeff_flag、coeff_abs_level_greaterl_flag、coeff_abs_level_greater2_flag、coeff_sign_flag,coeff_abs_level_minus3进行解码,能生成针对各频率分量的变换系数Coeff(xC,yC)。
此外,有时也将特定的区域(例如TU)内的非0变换系数的集合称为significancemap。
此外,语法coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag、coeff_sign_flag、coeff_abs_level_minus3的解码优选设为如下构成:与块尺寸无关,在将频域上的各频率分量分割为1个或多个部分区域或子组(子区域)后,从高频侧的部分区域或子组起依次进行。图6(g)示出了到8×8的频率分量所构成的频域上的部分区域的分割的例子。在图6(g)的例子中,按照记为第3组、第2组、第1组、第0组的各部分区域的顺序进行解码。
(块尺寸大于给定的尺寸的情况下的解码处理)
运动图像解码装置1所具备的可变长码解码部11在处理对象块的块尺寸大于给定的尺寸的情况下,将频域分割为多个子块,以子块为处理单位,来进行significant_coeff_flag的解码。在量化残差信息QD中,含有表示子块单位下,子块内是否至少存在1个非0变换系数的标志(子块系数有无标志significant_coeffgroup_flag)。此外,大于给定的尺寸的块尺寸例如是指16×16像素、32×32像素、4×16像素、16×4像素、8×32像素、32×8像素,但本实施方式不限于此(以下同样)。
以下,参考图7~图8来说明块尺寸大于给定的尺寸的情况下的解码处理。
图7(a)是表示针对将块进行分割而得到的多个(图7(a)中4×4=16个的)子块的扫描顺序的图。以下,将以子块为单位的扫描也称为子块扫描。在对子块如图7(a)所示进行扫描的情况下,对子块内的各频域以图7(b)所示的扫描顺序进行扫描。将图7(a)以及图7(b)所示的扫描顺序也称为“正向扫描”。
图7(c)是表示针对将块进行分割而得到的多个(图7(b)中4×4=16个的)子块的扫描顺序的图。在对子块如图7(c)所示进行扫描的情况下,对子块内的各频域以图7(d)所示的扫描顺序进行扫描。将图7(c)以及图7(d)所示的扫描顺序也称为“反向扫描”。
图8(a)是表示在尺寸为8×8的块被分割为4×4的尺寸的子块的情况下以正向扫描来扫描各频率分量时的扫描顺序的图。此外,图8(a)~(f)是用于说明块尺寸大于给定的尺寸的情况下的解码处理的图,但为了说明方便,例示了尺寸为8×8的块。
图8(b)是例示8×8的频率分量所构成的频域上的非0的变换系数(非0变换系数)的图。在图8(b)所示的例子的情况下,last_significant_coeff_x=6,last_significant_coeffy=0。
图8(c)是表示解码对象的变换系数为图8(b)所示的情况下针对各子块所解码出的子块系数有无标志significant_coeffgroup_flag的各值的图。至少包含1个非0变换系数在内的子块相关的significant_coeffgroup_flag取值为1,连1个非0变换系数也不含的子块相关的significant_coeffgroup_flag取值为0。
图8(d)是表示解码对象的变换系数为图8(b)所示的情况下表示非0变换系数的有无的语法significant_coeff_flag的各值的图。对于significant_coeffgroup_flag=1的子块,significant_coeff_flag以反向扫描顺序被解码,对于significant_coeffgroup_flag=0的子块,不进行针对该子块的significant_coeff_flag的解码处理,而将针对该子块中所含的全部频率分量的significant_coeff_flag设定为0(图8(d)的左下的子块)。
图8(e)示出了通过对解码对象的变换系数如图8(b)所示的情况下的语法coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag以及coeff_abs_level_minus3进行解码而得到的各变换系数的绝对值。
图8(f)是表示解码对象的变换系数如图8(b)所示的情况下的语法coeff_sign_flag的图。
各种语法的解码处理的细节将后述,接下来说明运动图像解码装置1的构成。
(运动图像解码装置1)
以下,参考图1、图9~图51来说明本实施方式所涉及的运动图像解码装置1。运动图像解码装置1是安装有在H.264/MPEG-4AVC规格中所采用的技术、在作为VCEG(VideoCoding Expert Group)中的共同开发用编解码器的KTA软件中所采用的技术、TMuC(TestModel under Consideration)软件中所采用的技术、以及作为其后继编解码器的HEVC(High-Efficiency Video Coding)中所提案的技术的解码装置。
图9是表示运动图像解码装置1的构成的框图。如图9所示,运动图像解码装置1具备:可变长码解码部11、预测图像生成部12、逆量化和逆变换部13、加法器14、帧存储器15以及环路滤波器16。另外,如图9所示,预测图像生成部12具备:运动矢量复原部12a、帧间预测图像生成部12b、帧内预测图像生成部12c、以及预测方式决定部12d。运动图像解码装置1是用于通过对编码数据#1进行解码来生成运动图像#2的装置。
(可变长码解码部11)
图10是表示可变长码解码部11的要部构成的框图。如图10所示,可变长码解码部11具备:量化残差信息解码部111、预测参数解码部112、预测类型信息解码部113、以及滤波器参数解码部114。
可变长码解码部11通过预测参数解码部112从编码数据#1解码与各分区相关的预测参数PP,并提供给预测图像生成部12。具体而言,预测参数解码部112关于帧间预测分区,从编码数据#1解码包含参考图像索引、估计运动矢量索引、以及运动矢量残差在内的帧间预测参数PP_Inter,并将它们提供给运动矢量复原部12a。另一方面,关于帧内预测分区,从编码数据#1解码包含估计预测模式标志、估计预测模式索引、以及残余预测模式索引在内的帧内预测参数PP_Intra,并将它们提供给帧内预测图像生成部12c。
另外,可变长码解码部11通过预测类型信息解码部113从编码数据#1解码针对各分区的预测类型信息Pred_type,并将其提供给预测方式决定部12d。进而,可变长码解码部11通过量化残差信息解码部111从编码数据#1解码与块相关的量化残差信息QD、以及与包含该块的TU相关的量化参数差分Δqp,并将它们提供给逆量化和逆变换部13。另外,可变长码解码部11通过滤波器参数解码部114从编码数据#1解码滤波器参数FP,并将其提供给环路滤波器16。此外,关于量化残差信息解码部111的具体的构成将后述,因此在此省略说明。
(预测图像生成部12)
预测图像生成部12基于针对各分区的预测类型信息Pred_type,来识别是各分区要进行帧间预测的帧间预测分区,还是要进行帧内预测的帧内预测分区。而且,在前者的情况下,不仅生成帧间预测图像Pred_Inter,而且将生成的帧间预测图像Pred_Inter作为预测图像Pred提供给加法器14,在后者的情况下,不仅生成帧内预测图像Pred_Intra,而且将生成的帧内预测图像Pred_Intra提供给加法器14。此外,预测图像生成部12在对处理对象PU应用了跳过模式的情况下,省略属于该PU的其他的参数的解码。
(运动矢量复原部12a)
运动矢量复原部12a将与各帧间预测分区相关的运动矢量mv从与该分区相关的运动矢量残差、以及与其他的分区相关的复原完毕的运动矢量mv’进行复原。具体而言,(1)遵照通过估计运动矢量索引而指定的估计方法,从复原完毕的运动矢量mv’导出估计运动矢量,(2)通过将已导出的估计运动矢量与运动矢量残差进行相加来得到运动矢量mv。此外,与其他的分区相关的复原完毕的运动矢量mv’能从帧存储器15读出。运动矢量复原部12a将已复原的运动矢量mv与对应的参考图像索引RI一起提供给帧间预测图像生成部12b。
(帧间预测图像生成部12b)
帧间预测图像生成部12b通过画面间预测来生成与各帧间预测分区相关的运动补偿图像mc。具体而言,使用从运动矢量复原部12a提供的运动矢量mv,从相同地通过从运动矢量复原部12a提供的参考图像索引RI而指定的自适应滤波完毕解码图像P_ALF’来生成运动补偿图像mc。在此,自适应滤波完毕解码图像P_ALF’是通过对于帧全体的解码已完成的解码完毕的解码图像实施环路滤波器16所执行的滤波处理而得到的图像,帧间预测图像生成部12b能从帧存储器15读出构成自适应滤波完毕解码图像P_ALF’的各像素的像素值。由帧间预测图像生成部12b生成的运动补偿图像mc作为帧间预测图像Pred_Inter而被提供给预测方式决定部12d。
(帧内预测图像生成部12c)
帧内预测图像生成部12c生成与各帧内预测分区相关的预测图像Pred_Intra。具体而言,首先,基于从可变长码解码部11提供的帧内预测参数PP_Intra来确定预测模式,并将所确定的预测模式对于对象分区例如分配光栅扫描顺序。
在此,基于帧内预测参数PP_Intra的预测模式的确定能进行如下。(1)对估计预测模式标志进行解码,在该估计预测模式标志表示针对作为处理对象的对象分区的预测模式与分配给该对象分区的周边的分区的预测模式相同的情况下,对对象分区分配分配给该对象分区的周边的分区的预测模式。(2)另一方面,在估计预测模式标志表示针对作为处理对象的对象分区的预测模式与分配给该对象分区的周边的分区的预测模式不相同的情况下,对残余预测模式索引进行解码,并对对象分区分配该残余预测模式索引所示的预测模式。
帧内预测图像生成部12c遵照分配给对象分区的预测模式所示的预测方法,通过画面内预测从(局部)解码图像P生成预测图像Pred_Intra。由帧内预测图像生成部12c生成的帧内预测图像Pred_Intra被提供给预测方式决定部12d。此外,帧内预测图像生成部12c还能设为如下构成:通过画面内预测来从自适应滤波完毕解码图像P_ALF生成预测图像Pred_Intra。
使用图11来说明预测模式的定义。图11示出了预测模式的定义。如同图所示,定义了36种类的预测模式,各预测模式通过“0”~“35”的编号(帧内预测模式索引)来确定。另外,如图12所示,对各预测模式分配有如下名称。即,“0”是“Intra_Planar(planar预测模式、平面预测模式)”,“1”是“Intra Vertical(帧内垂直预测模式)”,“2”是“IntraHorizontal(帧内水平预测模式)”,“3”是“Intra DC(帧内DC预测模式)’,“4”~“34”是“Intra Angular(方向预测)”,“35”是“Intra From Luma”。“35”是色差预测模式固有的,基于亮度的预测来进行色差的预测的模式。换言之,色差预测模式“35”是利用了亮度像素值与色差像素值的相关的预测模式。色差预测模式“35”也称为LM模式。
另外,预测模式的数目取决于对象块的尺寸而被规定。图11示出了对象块的尺寸的对数值(log2TrafoSize)与预测模式数(intraPredModeNum)的关系。
如图13所示,在log2TrafoSize为“2”的情况下,intraPredModeNum是“18”。另外,在log2TrafoSize为“3”、“4”、“5”以及“6”的情况下,intraPredModeNum均为“35”。
(预测方式决定部12d)
预测方式决定部12d基于针对各分区所属的PU的预测类型信息Pred_type,来决定是各分区要进行帧间预测的帧间预测分区,还是要进行帧内预测的帧内预测分区。而且,在前者的情况下,将由帧间预测图像生成部12b生成的帧间预测图像Pred_Inter作为预测图像Pred提供给加法器14,在后者的情况下,将由帧内预测图像生成部12c生成的帧内预测图像Pred_Intra作为预测图像Pred提供给加法器14。
(逆量化和逆变换部13)
逆量化和逆变换部13,(1)对从编码数据#1的量化残差信息QD解码出的变换系数Coeff进行逆量化,(2)对通过逆量化而得到的变换系数Coeff_IQ实施逆DCT(DiscreteCosine Transform)变换等的逆频率变换,(3)将通过逆频率变换而得到的预测残差D提供给加法器14。此外,在对从量化残差信息QD解码出的变换系数Coeff进行逆量化时,逆量化和逆变换部13根据从可变长码解码部11提供的量化参数差分Δqp导出量化步长QP。量化参数qp能通过对之前刚逆量化以及逆频率变换后的与TU相关的量化参数qp’相加量化参数差分Δqp来导出,量化步长QP能从量化参数qp例如基于QP=2pq/6来导出。另外,逆量化和逆变换部13所执行的预测残差D的生成是以将TU或者TU分割后的块为单位来进行的。
此外,关于由逆量化和逆变换部13进行的逆DCT变换,例如在对象块的尺寸为8×8像素的情况下,若将该对象块中的像素的位置设为(i,j)(0≤i≤7,0≤j≤7),将位置(i,j)中的预测残差D的值表现为D(i,j),并将频率分量(u,v)(0≤u≤7,0≤v≤7)中的经逆量化的变换系数表征为Coeff_IQ(u,v),则例如通过以下的数式(1)来给出。
[数式1]
在此,(u,v)是与上述的(xC,yC)对应的变量。C(u)以及C(v)按如下方式给出。
·
·C(u)=1(u≠0)
·
·C(v)=1(v≠0)
(加法器14)
加法器14通过对从预测图像生成部12提供的预测图像Pred与从逆量化和逆变换部13提供的预测残差D进行相加来生成解码图像P。所生成的解码图像P被存放至帧存储器15。
(环路滤波器16)
环路滤波器16具有:(1)作为进行解码图像P中的块边界、或分区边界的周边的图像的平滑化(去块处理)的去块滤波器(DF:Deblocking Filter)的功能、以及(2)作为对于去块滤波器所作用的图像使用滤波器参数FP来进行自适应滤波处理的自适应滤波(ALF:Adaptive Loop Filter;自适应环路滤波)的功能。
(量化残差信息解码部111)
量化残差信息解码部111是用于从编码数据#1中所含的量化残差信息QD对针对各频率分量(xC,yC)所量化后的变换系数Coeff(xC,yC)进行解码的构成。在此,xC以及yC是表征频域上的各频率分量的位置的索引,分别是与上述的水平方向频率u以及垂直方向频率v对应的索引。另外,量化残差信息QD中所含的各种语法通过上下文自适应型2值算术编码(CABAC:(Context-based Adaptive Binary Arithmetic Coding))而被编码。此外,以下,有时也将量化后的变换系数Coeff仅称为变换系数Coeff。
图1是表示量化残差信息解码部111的构成的框图。如图1所示,量化残差信息解码部111具备变换系数解码部120以及算术码解码部130。
(算术码解码部130)
算术码解码部130是用于参考上下文来对量化残差信息QD中所含的各比特进行解码的构成,如图1所示,具备上下文记录更新部131以及比特解码部132。
(上下文记录更新部131)
上下文记录更新部131是用于记录以及更新通过各上下文索引ctxIdx来管理的上下文变量CV的构成。在此,上下文变量CV之中含有(1)发生概率高的最大概率符号MPS(mostprobable symbol)、以及(2)对该最大概率符号MPS的发生概率进行指定的概率状态索引pStateIdx。
上下文记录更新部131通过参考从变换系数解码部120所具备的各部提供的上下文索引ctxIdx以及由比特解码部132解码出的Bin的值来更新上下文变量CV,而且记录更新后的上下文变量CV直到下次更新为止。此外,最大概率(占优势)符号MPS是0或1。另外,最大概率符号MPS和概率状态索引pStateIdx在比特解码部132每对1个Bin进行解码时被更新。
另外,上下文索引ctxIdx既可以直接指定针对各频率分量的上下文,也可以是从针对处理对象的每个TU而设定的上下文索引的偏移起的增量值(以下同样)。
(比特解码部132)
比特解码部132参考上下文记录更新部131中所记录的上下文变量CV,来对量化残差信息QD中所含的各比特(也称为Bin)进行解码。另外,将解码得到的Bin的值提供给变换系数解码部120所具备的各部。另外,解码得到的Bin的值还被提供给上下文记录更新部131,为了对上下文变量CV进行更新而被参考。
(变换系数解码部120)
如图1所示,变换系数解码部120具备:末尾系数位置解码部121、扫描顺序表存放部122、系数解码控制部123、系数有无标志解码部、系数值解码部125、解码系数存储部126以及子块系数有无标志解码部127。
(末尾系数位置解码部121)
末尾系数位置解码部121对从比特解码部132提供的解码比特(Bin)进行解释,并对语法last_significant_coeff_x以及last_significant_coeff_y进行解码。解码出的语法last_significant_coeff_x以及last_significant_coeff_y被提供给系数解码控制部123。另外,末尾系数位置解码部121计算上下文索引ctxIdx,该上下文索引ctxIdx用于决定算术码解码部130为了对语法last_significant_coeff_x以及last_significant_coeff_y的Bin进行解码而使用的上下文。计算出的上下文索引ctxIdx被提供给上下文记录更新部131。
(扫描顺序表存放部122)
在扫描顺序表存放部122中存放有以处理对象的TU(块)的尺寸、表征扫描方向的类别的扫描索引、以及沿扫描顺序而被赋予的频率分量识别索引作为自变量来给出处理对象的频率分量在频域上的位置的表。
作为这样的扫描顺序表的一例,列举图4以及图5所示的ScanOrder。在图4以及图5所示的ScanOrder中,log2TrafoSize-2表征处理对象的TU的尺寸,scanIdx表征扫描索引,n表征沿扫描顺序而被赋予的频率分量识别索引。另外,在图4以及图5中,xC以及yC表征处理对象的频率分量在频域上的位置。
另外,扫描顺序表存放部122中所存放的表是通过将处理对象的TU(块)的尺寸与帧内预测模式的预测模式索引建立了关联的扫描索引scanIndex而指定的。在用于处理对象的TU的预测方法是帧内预测的情况下,系数解码控制部123参考通过与该TU的尺寸和该TU的预测模式建立了关联的扫描索引scanIndex而指定的表来决定频率分量的扫描顺序。
图14示出了通过帧内预测模式索引IntraPredMode、以及对块尺寸进行指定的语法log2TrafoSize-2的各值而指定的扫描索引scanIndex的例子。在图14中,log2TrafoSize-2=0示出了块尺寸为4×4分量(与4×4像素对应),log2TrafoSize-2=1示出了块尺寸为8×8分量(与8×8像素对应)。如图14所示,例如,当块尺寸为4×4分量,帧内预测模式索引为1时,使用扫描索引=1,当块尺寸为4×4分量,帧内预测模式索引为2时,使用扫描索引=2。
图15(a)示出了通过扫描索引scanIndex的各值而指定的扫描类型ScanType。如图15(a)所示,在扫描索引为0时,指定斜向扫描(Up-right diagonal scan),在扫描索引为1时,指定水平方向优先扫描(horizontal fastscan),在扫描索引为2时,指定垂直方向优先扫描(vertical fact scan)。
另外,图15(b)示出了块尺寸为4×4分量时的水平方向优先扫描(horizontalfast scan)、垂直方向优先扫描(vertical fact scan)、以及斜向扫描(Up-rightdiagonal scan)的各扫描的扫描顺序。图15(b)中赋予给各频率分量的编号示出了扫描该频率分量的顺序。另外,图15(b)所示的各例示出了正向扫描方向。
(子块扫描顺序表)
另外,在扫描顺序表存放部122中存放有用于对子块的扫描顺序进行指定的子块扫描顺序表。子块扫描顺序表通过与处理对象的TU(块)的尺寸和帧内预测模式的预测模式索引(预测方向)建立了关联的扫描索引scanIndex来指定。在用于处理对象的TU的预测方法是帧内预测的情况下,系数解码控制部123参考通过与该TU的尺寸和该TU的预测模式建立了关联的扫描索引scanIndex而指定的表来决定子块的扫描顺序。
图16示出了通过帧内预测模式索引IntraPredMode、以及对块尺寸进行指定的语法log2TrafoSize-2的各值而指定的子块扫描索引scanIndex的例子。在图16中,log2TrafoSize-2=2示出了块尺寸为16×16分量(与16×16像素对应),log2TrafoSize-2=3示出了块尺寸为32×32分量(与32×32像素对应),log2TrafoSize-2=3示出了块尺寸为64×64分量(与64×64像素对应)。如图16所示,例如,当块尺寸为16×16分量,帧内预测模式索引为1时,使用子块扫描索引=1,当块尺寸为32×32分量,帧内预测模式索引为2时,使用子块扫描索引=2。
此外,在块尺寸为4×16分量、16×4分量的情况下,使用块尺寸为16×16分量的情况下所指定的子块扫描索引即可,在块尺寸为8×32分量、32×8分量的情况下,使用块尺寸为32×32分量的情况下所指定的子块扫描索引即可(以下同样)。
图17(a)示出了通过子块扫描索引scanIndex的各值而指定的子块扫描类型ScanType。如图17(a)所示,在子块扫描索引为0时,指定斜向扫描(Up-right diagonalscan),在子块扫描索引为1时,指定水平方向优先扫描(horizontal fast scan),在子块扫描索引为2时,指定垂直方向优先扫描(vertical fast scan)。
另外,图17(b)示出了块尺寸为16×16分量时的针对4×4分量的各子块的水平方向优先扫描(horizontal fast scan)、垂直方向优先扫描(vertical fact scan)、以及斜向扫描(Up-right diagonal scan)的各扫描的扫描顺序。图17(b)中赋予给各子块的编号示出了扫描该子块的顺序。另外,图17(b)所示的各例示出了正向扫描方向。
此外,用于对子块的扫描顺序进行指定的扫描顺序索引的例子不限于图16所示,例如还可以设为使用图18或图59所示的扫描顺序索引的构成。图18或图59所示的扫描顺序索引的各值所示的扫描类型与图17(a)(b)所示同样。
另外,尽管在图16、图18以及图59所示的例子中,对于块尺寸为16×16分量时、块尺寸为32×32分量时、块尺寸为64×64分量时指定了相同的扫描索引,但这并不限定本实施方式,还能构成为:即使帧内预测模式相同,也根据块尺寸来指定不同的扫描索引。
(系数解码控制部123)
系数解码控制部123是用于对量化残差信息解码部111所具备的各部中的解码处理的顺序进行控制的构成。
(块尺寸为给定的尺寸以下的情况)
在块尺寸为给定的尺寸以下的情况下,系数解码控制部123参考从末尾系数位置解码部121提供的语法last_significant_coeff_x以及last_significant_coeff_y,对沿正向扫描的最后的非0变换系数的位置进行确定,而且按照以确定出的最后的非0变换系数的位置为起点的扫描顺序,即由扫描顺序表存放部122中所存放的扫描顺序表给出的扫描顺序的反向扫描顺序,来将各频率分量的位置(xC,yC)提供给系数有无标志解码部124以及解码系数存储部126。
另外,系数解码控制部123将作为表示处理对象的TU的尺寸,即对象频域的尺寸的参数的sz提供给变换系数解码部120所具备的各部(省略图示)。在此,sz具体而言,是表征处理对象TU的一边的像素数,即,对象频域的一边的频率分量的数目的参数。
此外,系数解码控制部123可以构成为:按照由扫描顺序表存放部122中所存放的扫描顺序表给出的扫描顺序的正向扫描顺序,将各频率分量的位置(xC,yC)提供给系数有无标志解码部。
(块尺寸大于给定的尺寸的情况)
在块尺寸大于给定的尺寸的情况下,系数解码控制部123参考从末尾系数位置解码部121提供的语法last_significant_coeff_x以及last_significant_coeff_y,对沿正向扫描的最后的非0变换系数的位置进行确定,并按照以包含确定出的最后的非0变换系数在内的子块的位置为起点的扫描顺序,即由扫描顺序表存放部122中所存放的子块扫描顺序表给出的扫描顺序的反向扫描顺序,将各子块的位置(xCG,yCG)提供给子块系数有无标志解码部127。
另外,系数解码控制部123关于作为处理对象的子块,按照由扫描顺序表存放部122中所存放的扫描顺序表给出的扫描顺序的反向扫描顺序,将作为该处理对象的子块中所含的各频率分量的位置(xC,yC)提供给系数有无标志解码部124以及解码系数存储部126。在此,作为处理对象的子块中所含的各频率分量的扫描顺序,具体而言,使用斜向扫描(Up-rightdiagonal scan)即可。
如此,在应用于处理对象的单位区域(块,TU)的预测方式为帧内预测的情况下,系数解码控制部123是根据该帧内预测的预测方向来设定子块扫描顺序的构成。
一般而言,帧内预测模式与变换系数的偏倚彼此具有相关,因此通过根据帧内预测模式来切换扫描顺序,能进行与子块系数有无标志的偏倚相适应的子块扫描。由此,能削减作为编码以及解码对象的子块系数有无标志的码量,因此不仅处理量得以削减,而且编码效率得以提高。
(子块系数有无标志解码部127)
子块系数有无标志解码部127对从比特解码部132提供的各Bin进行解释,并对根据各子块位置(xCG,yCG)而指定的语法significant_coeffgroup_flag[xCG][yCG]进行解码。另外,子块系数有无标志解码部127计算上下文索引ctxIdx,该上下文索引ctxIdx用于决定为了由由算术码解码部130对语法significant_coeffgroup_flag[xCG][yCG]的Bin进行解码而使用的上下文。计算出的上下文索引ctxIdx被提供给上下文记录更新部131。在此,语法significant_coeffgroup_flag[xCG][yCG]是在通过子块位置(xCG,yCG)而指定的子块中至少含有1个非0变换系数的情况下取1、且在非0变换系数1个也不含的情况下取0的语法。解码出的语法significant_coeffgroup_flag[xCG][yCG]的值存放在解码系数存储部126中。
此外,关于子块系数有无标志解码部127的更具体的构成将后述。
(系数有无标志解码部124)
本实施方式所涉及的系数有无标志解码部124对通过各系数位置(xC,yC)而指定的语法significant_coeff_flag[xC][yC]进行解码。解码出的语法significant_coeff_flag[xC][yC]的值存放在解码系数存储部126中。另外,系数有无标志解码部124计算上下文索引ctxIdx,该上下文索引ctxIdx用于决定为了由算术码解码部130对语法significant_coeff_flag[xC][yC]的Bin进行解码而使用的上下文。计算出的上下文索引ctxIdx被提供给上下文记录更新部131。关于系数有无标志解码部124的具体的构成将后述。
(系数值解码部125)
系数值解码部125对从比特解码部132提供的各Bin进行解释,并对语法coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag、coeff_sign_flag、以及coeff_abs_level_minus3进行解码,而且基于对这些语法进行解码后的结果,来导出处理对象的频率分量中的变换系数(更具体而言非0变换系数)的值。另外,用于各种语法的解码的上下文索引ctxIdx被提供给上下文记录更新部131。导出后的变换系数的值存放在解码系数存储部126中。
(解码系数存储部126)
解码系数存储部126是用于存储由系数值解码部125解码出的变换系数的各值的构成。另外,在解码系数存储部126中存储由系数有无标志解码部124解码出的语法significant_coeff_flag的各值。由解码系数存储部126存储的变换系数的各值被提供给逆量化和逆变换部13。
(子块系数有无标志解码部127的构成例)
以下,参考图19来说明子块系数有无标志解码部127的具体的构成例。
图19是表示子块系数有无标志解码部127的构成例的框图。如图19所示,子块系数有无标志解码部127具备:上下文导出部127a、子块系数有无标志存储部127b、以及子块系数有无标志设定部127c。
以下,以从系数解码控制部123对子块系数有无标志解码部127按照反向扫描顺序提供子块位置(xCG,yCG)的情况为例进行说明。此外,在此情况下,在与子块系数有无标志解码部127对应的编码装置侧的构成中,按照正向扫描顺序来提供子块位置(xCG,yCG)。
(上下文导出部127a)
子块系数有无标志解码部127所具备的上下文导出部127a导出对根据各子块位置(xCG,yCG)而指定的子块分配的上下文索引。分配给子块的上下文索引在对表示针对该子块的语法significant_coeffgroup_flag的Bin进行解码时使用。另外,在导出上下文索引时,对子块系数有无标志存储部127b中所存储的解码完毕的子块系数有无标志的值进行参考。上下文导出部127a将导出的上下文索引提供给上下文记录更新部131。
分配给子块的上下文索引,具体而言,是使用子块位置(xCG,yCG)、以及子块系数有无标志存储部127b中所存储的解码完毕的子块系数有无标志的值,来如下方式来导出的。
(1)在xCG==3,且,xCG==3时
对于上下文索引,设定表示颜色空间的cIdx、以及根据表示TU尺寸的log2TrofoSize而确定的给定的初始值(ctxIdxOffset)。
ctxIdx=ctxIdxOffset
(2)在xCG<3,且,yCG==3时
对于上下文索引,参考位于子块位置(xCG,yCG)的右边相邻的解码完毕子块系数有无标志significant_coeffgroup_flag[xCG+1][yCG+1]的值而设定如下。
ctxIdx=ctxIdxOffset+significant_coeffgroup_flag[xCG+1][yCG]
(3)在xCG==3,且,yCG<3时
对于上下文索引,参考位于子块位置(xCG,yCG)之下的解码完毕子块系数有无标志significant_coeffgroup_flag[xCG][yCG+1]的值而设定如下。
ctxIdx=ctxIdxOffset+significant_coeffgroup_flag[xCG][yCG+1]
(4)在xCG<3,且,yCG<3时
对于上下文索引,参考位于子块位置(xCG,yCG)的右边相邻的解码完毕子块系数有无标志significant_coeffgroup_flag[xCG+1][yCG]、以及位于子块位置(xCG,yCG)之下的解码完毕子块系数有无标志siginificant_coeffgroup_flag[xCG][yCG+1]的值而设定如下。
ctxIdx=ctxIdxOffset+Max(significant_coeffgroup_flag[xCG+1][yCG],significant_coeffgroup_flag[xCG][yCG+1])
此外,初始值ctxIdxOffset通过表示颜色空间的cIdx、以及表示TU尺寸的log2TrofoSize而设定如下。
ctxIdxOffset=cIdx==0?((5-log2TrafoSize)*16)+44:((4-log2TrafoSize)*16)+44+64
(子块系数有无标志存储部127b)
在子块系数有无标志存储部127b中,存储有由子块系数有无标志设定部127c解码出或设定好的语法significant_coeffgroup_flag的各值。子块系数有无标志设定部127c能从子块系数有无标志存储部127b读出分配给相邻子块的语法significant_coeffgroup_flag。
(子块系数有无标志设定部127c)
子块系数有无标志设定部127c对从比特解码部132提供的各Bin进行解释,来解码或设定语法significant_coeffgroup_flag[xCG][yCG]。更具体而言,子块系数有无标志设定部127c参考子块位置(xCG,yCG)、以及对与通过子块位置(xCG,yCG)而指定的子块相邻的子块(也称为相邻子块)所分配的语法significant_coeffgroup_flag,来解码或设定语法significant_coeffgroup_flag[xCG][yCG]。另外,解码或设定后的语法significant_coeffgroup_flag[xCG][yCG]的值被提供给系数有无标志解码部124。
(扫描类型为垂直方向优先扫描的情况)
在对子块扫描顺序进行指定的扫描类型为垂直方向优先扫描的情况下,子块系数有无标志设定部127c如图20(a)所示,参考对与子块(xCG,yCG)相邻的子块(xCG,yCG+1)所分配的子块系数有无标志significant_coeffgroup_flag[xCG][yCG+1]的值。在significant_coeffgroup_flag[xCG][yCG+1]=1的情况下,子块系数有无标志设定部127c设定为significant_coeffgroup_flag[xCG][yCG]=1。在此情况下,能省略对significant_coeffgroup_flag[xCG][yCG]进行解码的处理。此外,有时也将把分配给相邻子块的子块系数有无标志的值设定为分配给该子块的子块系数有无标志的值这一动作表现为“子块系数有无标志的推测”。对于推测出的子块系数有无标志,能省略编码以及解码处理。
(扫描类型为水平方向优先扫描的情况)
在对子块扫描顺序进行指定的扫描类型为水平方向优先扫描的情况下,子块系数有无标志设定部127c如图20(b)所示,参考分配给与子块(xCG,yCG)相邻的子块(xCG+1,yCG)的子块系数有无标志significant_coeffgroup_flag[xCG+1][yCG]的值。在significant_coeffgroup_flag[xCG+1][yCG]=1的情况下,子块系数有无标志设定部127c设定为significant_coeffgroup_flag[xCG][yCG]=1。在此情况下,能省略对significant_coeffgroup_flag[xCG][yCG]进行解码的处理。
(扫描类型为斜向扫描的情况)
在子块扫描顺序进行指定的扫描类型为斜向扫描的情况下,子块系数有无标志设定部127c如图20(c)所示,参考对与子块(xCG,yCG)的相邻的子块(xCG+1,yCG)所分配的子块系数有无标志significant_coeffgroup_flag[xCG+1][yCG]的值以及对子块(xCG,yCG+1)所分配的子块系数有无标志significant_coeffgroup_flag[xCG][yCG+1]的值。
在significant_coeffgroup_flag[xCG+1][yCG]=1且significant_coeffgroup_flag[xCG][yCG+1]=1的情况下,子块系数有无标志设定部127c设定为significant_coeffgroup_flag[xCG][yCG]=1。在此情况下,能省略对significant_coeffgroup_flag[xCG][yCG]进行解码的处理。
子块系数有无标志设定部127c如上所述,是根据子块系数有无标志的偏倚来切换进行参考的相邻子块的构成。由此,能削减作为编码以及解码对象的子块系数有无标志的码量。
针对子块系数有无标志设定部127c以及与之对应的编码装置侧的构成所执行的子块系数有无标志的码量削减效果,参考图21(a)~(b)来具体说明如下。
(比较例所涉及的子块系数有无标志编码以及解码处理)
在比较例所涉及的子块系数有无标志编码以及解码处理中,与变换系数的偏倚无关地,选择斜向扫描。另外,针对包含DC分量的子块以及包含末尾系数的子块,将significant_coeffgroup_flag设定(推测)为1,对其不编码。
作为一例,考虑在16×16分量的频域中如图21(a)所示存在各变换系数的情况。在此情况下,对由4×4分量构成的子块各自所分配的子块系数有无标志significant_oeffgroup_flag如图21(b)所示。在此情况下,从正向扫描方向扫描作为处理的对象的子块系数有无标志significant_coeffgroup_flag后的一维排列成为“1010010001”。在比较例所涉及的子块系数有无标志解码处理中,从这些一维排列之中排除针对包含DC分量的子块以及包含末尾系数的子块的significant_coeffgroup_flag后的“01001000”将被编码以及解码。此外,在图21(a)(b)中,以淡色表示的变换系数以及子块不成为编码以及解码的对象。
(本实施方式所涉及的子块系数有无标志编码处理)
另一方面,在本实施方式所涉及的子块系数有无标志编码处理中,根据帧内预测模式来决定扫描方向,因此选择与变换系数的偏倚的形态相适应的扫描顺序。另外,针对包含DC分量的子块以及包含末尾系数的子块,将significant_coeffgroup_flag设定(推测)为1,且不对其编码。
与图21(a)同样,在16×16分量的频域中如图22(a)所示存在各变换系数的情况下,垂直方向被选择为帧内预测方向的可能性高。因此,水平方向优先扫描被选择为子块扫描顺序的可能性高。在此情况下,作为编码以及解码的对应的变换系数成为从图22(a)所示的变换系数之中排除淡色所示的变换系数后的结果,较之于图21(a)明显少。
另外,对由4×4分量构成的子块各自所分配的子块系数有无标志significant_coeffgroup_flag如图22(b)所示。在此情况下,沿正向扫描方向扫描作为处理的对象的子块系数有无标志significant_coeffgroup_flag后的一维排列成为“1111”,但通过上述的“子块系数有无标志的推测”,实际被编码以及解码的子块系数有无标志的个数成为0。
如此,根据本实施方式所涉及的子块系数有无标志设定部127c以及与之对应的编码装置侧的构成,子块系数有无标志的码量被削减。
(系数有无标志解码部124的构成例)
以下,参考图23来说明系数有无标志解码部124的具体的构成例。
图23是表示系数有无标志解码部124的构成例的框图。如图23所示,系数有无标志解码部124具备:频率分类部124a、位置上下文导出部124b、周边参考上下文导出部124c、系数有无标志存储部124d、以及系数有无标志设定部124e。
(频率分类部124a)
频率分类部124a在作为对象的频域的尺寸为给定的尺寸以下的尺寸的情况(例如,为4×4分量、8×8分量的情况)下,对于该给定尺寸以下的频域的各频率分量,根据该频率分量的位置,来将该频率分量分类至多个部分区域的任一者,而且分配由位置上下文导出部124b导出的上下文索引ctxIdx。
另一方面,在作为对象的频域的尺寸是大于给定的尺寸的尺寸的情况(例如,为16×16分量、32×32分量的情况等)下,频率分类部124a根据解码对象的频率分量在频域上的位置,将该频率分量分类至多个部分区域的任一者,而且将由位置上下文导出部124b以及周边参考上下文导出部124c的任一者导出的上下文索引ctxIdx分配至该解码对象的频率分量。
频率分类部124a使用频域中所含的各频率分量在该频域上的位置(xC,yC),将该频率分量分类至多个部分区域R0~R2。在此,设xC=0,1,...,sz-1,且yC=0,1,...,sz-1(sz表征处理对象TU的一边的像素数,即,对象频域的一边的频率分量的数目,例如,sz=16,32等)。
另一方面,将sz×sz块的频域分割为4×4子块时的该频率分量(xC,yC)所属的子块的位置(xCG,yCG)通过下式(eq.A1)~(eq.A2)而被导出。
xCG=xC>>2…(eq.A1)
yCG=yC>>2…(eq.A2)
在此,设xCG=0,1,...,(sz-1)>>2,且yCG=0,1,...,(sz-1)>>2。
频率分类部124a例如进行以下的分类处理。
(1)将满足xCG+yCG<THA且xC+yC<THZ的频率分量分类至部分区域R0。
(2)将满足xCG+yCG<THA且THZ≤xC+yC的频率分量分类至部分区域R1。
(3)将满足THA≤xCG+yCG的频率分量分类至部分区域R2。
与上述分类处理对应的伪代码如下。
***************************************************************
if(xCG+yCG<THA){
if(xC+yC<THZ){
分类至R0
}
else{//if(xC+yC>=THZ)
分类至R1
}
}
else{//if(xCG+yCG>=THA){
分类至R2
}
******************************************************************
在此,使用2作为阈值THZ。THA表征满足THA≥THZ/4的阈值。作为具体的值,例如与频域的尺寸(处理对象TU的尺寸)无关地,设为THA=1即可。另外,可以使用频域的尺寸log2TrafoSize来设为THA=1<<(log2TrafoSize-2)。即,可以在频域的尺寸为16×16的情况下,设THA=1,在频域的尺寸为32×32的情况下,设THA=2。如此,可以构成为根据频域的尺寸来使用不同的阈值。另外,可以将阈值THZ设为1。
图24示出了通过频率分类部124a所执行的分类处理而被分割为部分区域R0、R1、以及R2的频域的一例。
频率分类部124a对于属于部分区域R0的各频率分量分配由位置上下文导出部124b导出的上下文索引,并对属于部分区域R1以及R2的频率分量分配由周边参考上下文导出部124c导出的上下文索引。此外,作为子块的尺寸,以4×4为例进行了说明,但不限于此,可以是(sz>>n)×(sz>>n)的子块。其中,关于n,设n满足n=1,...,log2TrafoSize>>1。
另外,频率分类部124a将对各频率分量分配的上下文索引提供给上下文记录更新部131。这些上下文索引用于决定为了由算术码解码部130对语法significant_coeff_flag进行解码而使用的上下文。
(位置上下文导出部124b)
位置上下文导出部124b将针对对象频率分量的上下文索引ctxIdx基于该对象频率分量在频域上的位置而导出。
在处理对象的频域大于给定的尺寸的情况下,位置上下文导出部124b例如对图24所示的属于部分区域R0的频率分量,使用以下的式(eq.A3)来导出上下文索引ctxIdx,并将其导出结果ctxIdx提供给频率分类部124a。
ctxIdx=NX+2×xC+yC…(eq.A3)
此外,NX是表征上下文索引的开始点的常数。在频域的尺寸为4×4以及8×8时使用的上下文数各为N4个、N8个的情况下,频域的尺寸为16×16以及32×32的开始点成为NX=N4+N8。
关于处理对象的频域为给定的尺寸以下的情况下的位置上下文导出部124b所执行的上下文索引导出处理的具体例将后述。
(周边参考上下文导出部124c)
周边参考上下文导出部124c将针对解码对象的频率分量的上下文索引ctxIdx基于针对该频率分量的周边的频率分量而解码完毕的非0变换系数的数目cnt来导出。
周边参考上下文导出部124c例如对图24所示的属于部分区域R1的频率分量使用以下的式(eq.A4)来导出上下文索引ctxIdx,并将其导出结果ctxIdx提供给频率分类部124a。
ctxIdx=NX+3+min(2,temp)…(eq.A4)
在此,temp通过
temp=(cnt+1)>>1
来确定。
另外,周边参考上下文导出部124c例如对图24所示的属于部分区域R2的频率分量使用以下的式(eq.A5)来导出上下文索引ctxIdx,并将其导出结果ctxIdx提供给频率分类部124a。
ctxIdx=NX+6+min(2,temp)…(eq.A5)
在此,temp与上述的情况同样地,通过
temp=(cnt+1)>>1
来确定。
此外,在式(eq.A4)~(eq.A5)中,通过将非0变换系数的计数数cnt右移位1比特,能削减上下文数。
另外,周边参考上下文导出部124c在例如图24所示的部分区域R1中,使用图25(a)所示的参考频率分量c1~c5,通过以下的式(eq.A6)来导出非0变换系数的计数数cnt。
cnt=(c1!=0)+(c2!=0)+(c3!=0)+(c4!=0)+(c5!=0)>(eq.A6)
在此,(eq.A6)中的各项设为:在()内的比较为真的情况下取1,在()内的比较为假的情况下取0。
另外,还可以取代式(eq.6),而使用图25(b)所示的参考频率分量(c1、c2、c4、c5),通过被设为了不参考作为对象的变换系数的位置的按照处理顺序位于紧前(处理顺序为反向扫描顺序的情况下,作为对象的变换系数的位置的下侧)的座标(c3)的变换系数的数式(eq.A7),来计算非0变换系数的数目cnt。这样的处理能不参考之前紧挨的系数有无标志的值而能进行用于某位置的系数有无标志的解码的上下文导出,因此能并行地处理上下文导出处理与解码处理。
cnt=(c1!=0)+(c2!=0)+(c4!=0)+(c5!=0)…(eq.A7)
另外,可以构成为根据作为对象的变换系数在子块内的位置,使用数式(eq.A6)和数式(eq.A7)的任一者来导出变换系数。即,可以构成为根据作为对象的变换系数在子块内的位置来变更用于变换系数的导出的参考分量。
更具体而言,可以在作为对象的变换系数位于子块内的左上的情况、与作为对象的变换系数位于子块内的右下的情况的任一情况下,不依赖按照子块内的作为对象的变换系数的处理顺序而位于紧前的位置(在此下侧)的变换系数的值,而使用数式(eq.A7)的参考频率分量,在除此以外的情况下,使用数式(eq.A6)的参考频率分量。
(系数有无标志设定部124e)
系数有无标志设定部124e对从比特解码部132提供的各Bin进行解释,并解码或设定语法significant_coeff_flag[xC][yC]。解码或设定后的语法significant_coeff_flag[xC][yC]被提供给解码系数存储部126。
在对象频域被分割为子块的情况下,系数有无标志设定部124e参考分配给对象子块的语法significant_coeffgroup_flag[xCG][yCG],在significant_coeffgroup_flag[xCG][yCG]的值为0的情况下,将针对该对象子块中所含的全部的频率分量的significant_coeff_flag[xC][yC]设定为0。通过设为这样的构成,能省略该对象子块中的significant_coeff_flag[xC][yC]的解码处理,因此处理速度得以提高。
(系数有无标志存储部124d)
在系数有无标志存储部124d中存放语法significant_coeff_flag[xC][yC]的各值。系数有无标志存储部124d中所存放的语法significant_coeff_flag[xC][yC]的各值由周边参考上下文导出部124c进行参考。
(系数有无标志解码部124所执行的其他的处理例)
以下,参考图26~图28来说明系数有无标志解码部124所执行的其他的处理例。
图26(a)~(b)在本处理例中是表示由频率分类部124a分割出的部分区域的图,图26(a)在对与亮度值相关的变换系数进行解码时适合应用,图26(b)在对与色差相关的变换系数进行解码时适合应用。在图26(a)~(b)中,阈值TH通过
TH=Max(width,height)>>2
而确定。在此,width示出了以频率分量为单位来表现的对象频域的宽度,height示出了以频率分量为单位来表现的对象频域的高度。例如在对象频域的宽度为16分量(与16像素对应),高度为4分量(与4像素对应)时,width=16,height=4。
图27是对在图26(a)所示的部分区域R0~R2的各自中所含的频域分配的上下文索引,是表示导出与亮度相关的上下文索引cxtIdx的导出处理的伪代码。在图27中,区域R0的上下文导出由位置上下文导出部124b执行,区域R1的上下文导出以及区域R2的上下文导出由周边参考上下文导出部124c执行。
图28是对在图26(b)所示的部分区域R0~R1的各自中所含的频域分配的上下文索引,是表示导出与色差相关的上下文索引cxtIdx的导出处理的伪代码。在图28中,区域R0的上下文导出由位置上下文导出部124b执行,区域R1的上下文导出由周边参考上下文导出部124c执行。
(频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例1)
首先,在处理对象的频域为给定的尺寸以下的情况下,频率分类部124a基于处理对象的频率分量的位置(xC,yC),在处理对象的频率分量为4×4分量的情况下进行到子组(子区域)R0~R6的分类处理,在8×8分量的情况下进行到子组R0~R9的分类处理。
(4×4分量的情况)
(1)在xC=0,且,yC=0的情况下,分类至子组R0。
(2)在xC=1,且,yC=0的情况下,分类至子组R1。
(3)在xC=0,且,yC=1的情况下,分类至子组R2。
(4)在xC=1,且,yC=1的情况下,分类至子组R3。
(5)在1<xC<4,且,yC<2的情况下,分类至子组R4。
(6)在xC<2,且,1<yC<4的情况下,分类至子组R5。
(7)在2≤xC<4,且,2≤yC<4的情况下,分类至子组R6。
(8×8分量的情况)
(1)在xC=0,且,yC=0的情况下,分类至子组R0。
(2)在xC=1,且,yC=0的情况下,分类至子组R1。
(3)在xC=0,且,yC=1的情况下,分类至子组R2。
(4)在xC=1,且,yC=1的情况下,分类至子组R3。
(5)在1<xC<4,且,yC<2的情况下,分类至子组R4。
(6)在xC<2,且,1<yC<4的情况下,分类至子组R5。
(7)在2≤xC<4,且,2≤yC<4的情况下,分类至子组R6。
(8)在xC≥4,且,yC<4的情况下,分类至子组R7。
(9)在xC<4,且,yC≥4的情况下,分类至子组R8。
(10)在xC≥4,且,yC≥4的情况下,分类至子组R9。
将上述分类处理应用于4×4分量、以及8×8分量的例子如图29(a)、(b)所示。图29(a)是表示构成具有4×4分量的尺寸的频域的区域(子组)R0~R6的图,图29(b)是表示构成具有8×8分量的尺寸的频率分量的区域(子组)R0~R9的图。
接下来,在处理对象的频域为给定的尺寸以下的情况下,位置上下文导出部124b对于由频率分类部124a分类出的子组进行以下的处理。
即,位置上下文导出部124b对于属于给定的尺寸以下(例如,4×4分量、8×8分量)的频域,即具有第1尺寸(例如4×4分量)的频域的1个或多个频率分量、以及属于上述给定的尺寸以下的频域,即具有大于上述第1尺寸的第2尺寸(例如8×8分量)的频域的1个或多个频率分量,导出公共的上下文索引,而且分配至该1个或多个频率分量的各个。
位置上下文导出部124b例如对图29(a)所示的区域Ri(i=0,1,2,3,4,5,6)、以及图29(b)所示的区域Ri(i=0,1,2,3,4,5,6),导出公共的上下文索引ctxIdx(i)来分配。
例如,若设对于图29(a)所示的区域R0、R1、R2、R3、R4、R5、R6各自导出ctxIdx=0,1,2,3,4,5,6,则对图29(b)所示的区域R0、R1、R2、R3、R4、R5、R6各自分配ctxIdx=0,1,2,3,4,5,6。另外,对图29(b)所示的区域R7,R8,R9各自分配ctxIdx=7,8,9。
另外,位置上下文导出部124b优选公共地设定对与色差U相关的各变换系数进行解码时所参考的上下文索引、以及对与色差V相关的各变换系数进行解码时参考的上下文索引。
具体而言,优选公共地设定对图29(a)所示的区域Ri(i=0,1,2,3,4,5,6)所分配的上下文索引,即对与色差U相关的significant_coeff_flag进行解码时所参考的上下文索引ctxIdx_U(i)、以及对图29(b)所示的区域Ri(i=0,1,2,3,4,5,6)所分配的上下文索引,即对与色差V相关的significant_coeff_flag进行解码时所参考的上下文索引ctxIdx_V(i)。
此外,位置上下文导出部124b既可以构成为将对与亮度Y相关的各变换系数进行解码时所参考的上下文索引、以及对与色差V,U相关的各变换系数进行解码时参考的上下文索引设定为全部不同,也可以构成为将一部分公共使用。
关于位置上下文导出部124b如上所述导出上下文索引所带来的效果,参考比较例所涉及的图30(a)~(c)来进行说明。
图30(a)是表示对于具有4×4分量的尺寸的频域中所含的各频率分量,通过比较例所涉及的上下文索引导出处理而导出的上下文索引,即对与亮度Y相关的significant_coeff_flag进行解码时所参考的上下文索引的图。在图30(a)所示的例子中,导出9个上下文索引。此外,在图30(a)所示的例子中,对于位于最高频分量侧的频率分量(图30(a)中网状线的频率分量),不导出上下文索引(图30(b)~(c)中也同样)。
图30(b)是表示对于具有4×4分量的尺寸的频域中所含的各频率分量,通过比较例所涉及的上下文索引导出处理而导出的上下文索引,即对与色差U、V相关的significant_coeff_flag进行解码时所参考的上下文索引的图。在图30(b)所示的例子中,关于色差U以及V,导出公共的6个上下文索引。
图30(c)是表示对于具有8×8分量的尺寸的频域中所含的各频率分量,通过比较例所涉及的上下文索引导出处理而导出的上下文索引,即对与亮度Y、色差U、V相关的significant_coeff_flag进行解码时所参考的上下文索引的图。在图30(c)所示的例子中,关于亮度导出11个,关于色差U以及V导出公共的11个,合计导出22个上下文索引。
以上合起来,在比较例所涉及的上下文索引导出处理中,导出9+6+22=37个上下文索引。
另一方面,根据位置上下文导出部124b,在图29(a)所示的例子中,关于亮度导出7个,关于色差导出7个,合计导出14个上下文索引。在图29(b)所示的区域R7,R8,R9中,关于亮度导出3个,关于色差导出3个,合计导出6个上下文索引。
因此,在位置上下文导出部124b所执行的上下文索引导出处理中,导出14+6=20个上下文索引就足够。
如此,在图29~图30所示的例子中,位置上下文导出部124b能省略37-20=17个上下文索引的导出。
图31是表示位置上下文导出部124b所执行的上下文索引导出处理的伪代码。另外,图32(a)是表示图31的伪代码中的CTX_IND_MAP_4x4to8x8[index]的一例的图,图32(b)示出了对图31所示的伪代码使用了图32(a)的CTX_IND_MAP_4x4to8x8[index]的情况下所得到的各上下文索引的值。
此外,位置上下文导出部124b所执行的上下文索引导出处理不限于上述的例子,如图33(a)~(b)所示,可以仅对频率分量R0~R3进行导出公共的上下文索引的处理。
图34是表示位置上下文导出部124b所执行的这样的上下文索引导出处理的伪代码。另外,图35(a)是表示图34的伪代码中的CTX_IND_MAP_4x4to8x8[index]的一例的图,图35(b)示出了对图34所示的伪代码使用了图35(a)的CTX_IND_MAP_4x4to8x8[index]的情况下所得到的与4×4分量的尺寸相关的各上下文索引的值。另外,图35(c)示出了对图34所示的伪代码使用了图35(a)的CTX_IND_MAP_4x4to8x8[index]的情况下所得到的与8×8分量的尺寸相关的各上下文索引的值。
图36是表示位置上下文导出部124b所执行的上下文索引导出处理的其他的例子的伪代码。图37(a)是表示图36的伪代码中的CTX_IND_MAP_4x4to8x8_L[index]的一例的图,图37(b)示出了对图36所示的伪代码使用了图37(a)的CTX_IND_MAP_4x4to8x8_L[index]的情况下所得到的与亮度相关的各上下文索引的值。
在图37(b)所示的8×8分量的频域中,针对属于低频侧的4×4分量的区域的频率分量所导出的上下文索引被用作对象频域的尺寸为4×4分量时的与亮度相关的上下文索引。
图38(a)是表示图36的伪代码中的CTX_IND_MAP_4x4to8x8_C[index]的一例的图,图38(b)示出了对图37所示的伪代码使用了图38(a)的CTX_IND_MAP_4x4to8x8_C[index]的情况下所得到的与色差相关的各上下文索引的值。
在图38(b)所示的8×8分量的频域中,针对属于低频侧的4×4分量的区域的频率分量所导出的上下文索引被用作对象频域的尺寸为4×4分量时的与色差相关的上下文索引。
在图37(b)所示的例子中,关于亮度导出15个上下文索引,在图38(b)所示的例子中,关于色差导出13个上下文索引。因此,在图37(b)以及图38(b)所示的例子中,导出15+13=28个上下文索引。
这比在图30(a)~(c)所示的比较例中导出的37个要少9个。
如上所述,根据位置上下文导出部124b,能削减要导出的上下文索引的数目,因此能谋求上下文索引导出处理的减轻、以及用于保持上下文索引的存储器尺寸的减小。
(频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例2)
以上,针对在频域为给定的尺寸以下的情况下,在不同的变换块间导出公共的上下文索引的情况进行了说明,但上下文索引的导出处理不限于此。以下,说明在不同的变换块间不导出公共的上下文索引的情况。
使用图60~图63来说明在频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例2。
首先,在处理对象的频域为给定的尺寸以下的情况下,频率分类部124a基于处理对象的频率分量的位置(xC,yC)来进行到子组R0~R6的分类处理。
(4×4分量的情况)
(1)在xC=0,且,yC=0的情况下,分类至子组R0。
(2)在非(xC=0且yC=0),而xC<2,且,yC<2的情况下,分类至子组R1。
(3)在xC=2,且,yC<2的情况下,分类至子组R2。
(4)在xC=3,且,yC<2的情况下,分类至子组R3。
(5)在xC<2,且,yC=2的情况下,分类至子组R4。
(6)在xC<2,且,yC=3的情况下,分类至子组R5。
(7)在xC≥2,且,yC≥2的情况下,分类至子组R6。
上述(1)以及(2)通过下记(1’)以及(2’)也能进行处理。
(1’)在xC<1,且,yC<1的情况下,分类至子组R0。
(2’)在非(xC<1且yC<1),而xC<2,且,yC<2的情况下,分类至子组R1。
(8×8分量的情况)
(1)在xC<2,且,yC<2的情况下,分类至子组R0。
(2)在非(xC<2且yC<2),而xC<4,且,yC<4的情况下,分类至子组R1。
(3)在xC≥4,且,xC<6,且,yC<4的情况下,分类至子组R2。
(4)在xC≥6,且,yC<4的情况下,分类至子组R3。
(5)在xC<4,且,yC≥4,且,yC<6的情况下,分类至子组R4。
(6)在xC<4,且,yC≥6的情况下,分类至子组R5。
(7)在xC≥4,且,yC≥4的情况下,分类至子组R6。
将上述分类处理应用于4×4分量、以及8×8分量的例子如图60(a)、(b)所示的。图60(a)是表示构成具有4×4分量的尺寸的频域的区域(子组)R0~R6的图,图60(b)是表示构成具有8×8分量的尺寸的频率分量的区域(子组)R0~R6的图。另外,如图60(a)所示,亮度和色差的两者,均将与DC相邻的最低的次数的3个AC分量分配给1个子区域。由于将3个AC区域分配给1个子区域,因此在该部分能削减2个上下文。发明者们通过实验,确认了该分配所带来的编码效率下降处于能忽视的水平。此外,这样的分配还能应用于本构成例以外的构成。
另外,还能使上述4×4分量和8×8分量到子组的分类处理公共化,按如下方式进行处理。首先,频率分类部124a通过下式,基于处理对象的频率分量的位置(xC,yC)、以及表示变换块的尺寸的log2TrafoSize,来计算变量X、Y。
X=log2TrafoSize==2?xC:xC>>1
Y=log2TrafoSize==2?yC:yC>>1
接下来,基于已导出的变量X、Y,进行将处理对象的频率分量(xC,yC)分类至子组R0~R6的分类处理。
(1)在X=0,且,Y=0的情况下,分类至子组R0。
(2)在非(X=0且Y=0),而X<2,且,Y<2的情况下,分类至子组R1。
(3)在X=2,且,Y<2的情况下,分类至子组R2。
(4)在X=3,且,Y<2的情况下,分类至子组R3。
(5)在X<2,且,Y=2的情况下,分类至子组R4。
(6)在X<2,且,Y=3的情况下,分类至子组R5。
(7)在X≥2,且,Y≥2的情况下,分类至子组R6。
如此,具有由频率分类部124a分割出的4×4分量的尺寸(第1尺寸)的频域的分割图案、以及具有由频率分类部124a分割出的8×8分量的尺寸(第2尺寸)的频域的分割图案彼此相似。
另外,将上述4×4分量和8×8分量分类至子组的公共处理还能按如下方式进行处理。
(1)在xC<width/4,且,yC<width/4的情况下,分类至子组R0。
(2)在xC<width/2,且,yC<width/2的情况下,分类至子组R1。
(3)在xC≥width/2,且,xC<width×3/4,且,yC<width/2的情况下,分类至子组R2。
(4)在xC≥width×3/4,且,yC<width/2的情况下,分类至子组R3。
(5)在xC<width/2,且,yC≥width/2,且,yC<width×3/4的情况下,分类至子组R4。
(6)在xC<width/2,且,yC≥width×3/4的情况下,分类至子组R5。
(7)在xC≥width/2,且,yC≥width/2的情况下,分类至子组R6。
在此width是对象频域的宽度(在4×4时为4,在8×8时为8)。
接下来,在处理对象的频域为给定的尺寸以下的情况下,位置上下文导出部124b对于由频率分类部124a分类出的各子组,分配个别的上下文索引。
具体而言,亮度的上下文索引ctxIdx(i)通过下式来导出。
offsetBlk=log2TrafoWidth==2?0:7
ctxIdx(i)=i+offsetBlk
此外,i表征用于识别子组Ri的编号,offsetBlk是用于识别4×4分量和8×8分量的上下文索引的偏移,通过表示变换块的横向宽度尺寸的对数值的log2TrafoWidth而被设定给定的值。因此,亮度的4×4分量的各子组Ri的上下文索引ctxIdx(i)如图62(b)所示被设定,亮度的8×8分量的各子组Ri的上下文索引ctxIdx(i)如图62(c)所示被没定。
即,位置上下文导出部124b关于亮度,若在4×4分量的情况下,对图60(a)所示的区域Ri(i=0,1,2,3,4,5,6)导出了上下文索引ctxIdx=0,1,2,3,4,5,6,则在8×8分量的情况下,对图60(b)所示的区域Ri(i=0,1,2,3,4,5,6)导出上下文索引ctxIdx=7,8,9,10,11,12,13。
另外,色差的上下文索引ctxIdx(i)通过下式来导出。
offsetBlk=log2TrafoWidth==2?0:7
ctxIdx(i)=i+offsetClr+offsetBlk
此外,i表征识别子组Ri的编号,offsetBlk是用于识别4×4分量和8×8分量的上下文索引的偏移,根据表示变换块的横向宽度尺寸的对数值的log2TrafoWidth而被设定给定的值。offsetClr是用于识别亮度和色差的上下文索引的给定的偏移。例如,若设offsetClr=14,则色差的4×4分量的各子组Ri的上下文索引ctxIdx(i)如图63(a)所示被设定,色差的8×8分量的各子组Ri的上下文索引ctxIdx(i)如图63(b)所示被设定。
即,位置上下文导出部124b关于色差,若在4×4分量的情况下,对图60(a)所示的区域Ri(i=0,1,2,3,4,5,6)导出了上下文索引ctxIdx=14,15,16,17,18,19,20,则关于8×8分量的色差,对图60(b)所示的区域Ri(i=0,1,2,3,4,5,6)导出上下文索引ctxIdx=21,22,23,24,25,26,27,28。此外,尽管在说明上将用于识别亮度和色差的上下文索引的偏移offsetClr设为offsetClr=14,并将色差的上下文索引图示于图63(a)、(b),但并不限于此。offsetClr优选是4×4变换块~32×32变换块的亮度的上下文索引的总数。
能通过图61所示的伪代码来表征上述的频率分类部124a所执行的频率分类处理和位置上下文导出部124b所执行的上下文导出处理。
即,在图61所示的伪代码中,通过对与根据子块位置(X,Y)而确定的索引值index对应的查询表CTX_IND_MAP[index]的基准值相加给定的偏移值,来计算了处理对象的频率分量(xC,yC)的上下文索引ctxIdx。此外,在4×4变换块以及8×8变换块的情况下,根据各子块(4×4的情况下为1×1子块,8×8的情况下为2×2子块)的位置(X,Y)而确定的索引值index是以横向扫描的顺序(开始值为0)来表征子块,并通过下式来计算的。
Index=(Y<<2)+X
另外,各变换块的亮度的上下文索引ctxIdx通过下式来导出。
(4×4分量的情况)
ctxIdx=CTX_IND_MAP[index]
(8×8分量的情况)
ctxIdx=CTX_IND_MAP[index]+sigCtxOffset
在此,sigCtxOffset是用于识别4×4分量的上下文索引和8×8分量的上下文索引的给定的偏移。
另外,各变换块的色差的上下文索引ctxIdx通过下式来导出。
(4×4分量的情况)
ctxIdx=CTX_IND_MAP[index]+SigCtxOffsetLuma
(8×8分量的情况)
ctxIdx=CTX_IND_MAP[index]+sigCtxOffset+SigCtxOffsetLuma
在此,sigCtxOffset是用于识别4×4分量的上下文索引和8×8分量、16×4分量、4×16分量的上下文索引的给定的偏移,SigCtxOffsetLuma是用于识别亮度和色差的上下文索引的给定的偏移。
此外,在此情况下,将图61中的”sigCtx=log2TrafoSize==2?0:offset”中的offset的值设定为7来进行解释。
图62(a)是表示图61所示的伪代码中的CTX_IND_MAP[index]的一例的图,图62(b)示出了对图61所示的伪代码使用了图62(a)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,图62(c)示出了对图61所示的伪代码使用了图62(a)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的亮度相关的各上下文索引的值。另外,图63(a)示出了对图61所示的伪代码使用了图62(a)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的色差相关的各上下文索引的值,图63(b)示出了对图61所示的伪代码使用了图62(a)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的色差相关的各上下文索引的值。此外,在图62(b)所示的例子中,对位于最高频分量侧的频率分量(图62(b)中网状线的频率分量),不导出上下文索引(图62(c)、图63(a)~(b)中也同样)。此外,尽管在说明上将用于识别亮度和色差的上下文索引的偏移SigCtxOffsetLuma设为SigCtxOffsetLuma=14,并将色差的上下文索引图示于图63(a)、(b),但并不限于此。offsetClr优选是4×4变换块~32×32变换块的亮度的上下文索引的总数。
此外,对图60(a)(b)以及后述的图68(a)(b)所示的各系数位置所分配的上下文索引如后所述,能像图100、图101、图102记载那样,还通过比特运算进行导出。
在图62(b)、(c)所示的例子中,关于亮度导出14个上下文索引,在图63(a)、(b)所示的例子中,关于色差导出14个上下文索引。因此,在图62(b)、(c)以及以及图63(a)、(b)所示的例子中,导出14+14=28个上下文索引。这比在图30(a)~(c)所示的比较例中所导出的37个要少9个。
如上所述,在本处理中,通过图60所示的上下文索引导出方法来使4×4分量和8×8分量以及亮度和色差到子组的分类处理公共化,能维持编码效率不变地,简化上下文索引导出处理。另外,根据本处理,能削减要导出的上下文索引的数目,因此能谋求上下文索引导出处理的减轻、以及用于保持上下文索引的存储器尺寸的减小。
(频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例3)
进而,参考图64~图65来说明频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例3。
首先,在处理对象的频域为给定的尺寸以下的情况下,频率分类部124a基于处理对象的频率分量的位置(xC,yC),进行与上述的具体例2中的频率分类部124a同样的处理,来进行到子组R0~R6的分类处理。
接下来,在处理对象的频域为给定的尺寸以下的情况下,位置上下文导出部124b可以利用非零系数的发生频度以水平方向频率分量u(图60)与垂直方向频率分量v成为u=v的边界为界而出现频度呈对称的特性,对由频率分类部124a分类出的各子组,分配上下文索引。
位置上下文导出部124b关于4×4分量,在图60(a)中,对位于水平方向频率分量的高频侧的区域R3、以及位于垂直方向频率分量的高频侧的区域R5,导出公共的上下文索引ctxIdx(i)并分配。另外,关于8×8分量,在图60(b)中,对于位于水平方向频率分量的高频侧的区域R3以及位于垂直方向频率分量的高频侧的区域R5,导出公共的上下文索引ctxIdx(i)并分配。
例如,关于亮度,若在4×4分量的情况下,对图60(a)所示的区域R0、R1、R2、R3、R4、R5、R6,分别导出了上下文索引ctxIdx=0,1,2,3,4,3,5,则在8×8分量的情况下,对图60(b)所示的区域R0、R1、R2、R3、R4、R5、R6,分别导出上下文索引ctxIdx=6,7,8,9,10,9,11。
另外,同样地,关于色差,若在4×4分量的情况下,对图60(a)所示的区域R0、R1、R2、R3、R4、R5、R6,分别导出了上下文索引ctxIdx=12,13,14,15,16,15,17,则在8×8分量的情况下,对图60(b)所示的区域R0、R1、R2、R3、R4、R5、R6,分别导出上下文索引ctxIdx=18,19,20,21,22,21,23。
能通过图61所示的伪代码来表征上述的频率分类部124a所执行的频率分类处理和位置上下文导出部124b所执行的上下文导出处理。
即,在图61所示的伪代码中,通过对与根据子块位置(X,Y)而确定的索引值index对应的查询表CTX_IND_MAP[index]的基准值相加给定的偏移值,来计算了处理对象的频率分量(xC,yC)的上下文索引ctxIdx。此外,在4×4变换块以及8×8变换块的情况下,根据各子块(4×4的情况下为1×1子块,8×8的情况下为2×2子块)的位置(X,Y)而确定的索引值index表征横向扫描子块的顺序(开始值为0)。此外,索引值index使用子块位置(X,Y)并通过下式来计算。
Index=(Y<<2)+X
另外,各变换块的亮度的上下文索引ctxIdx通过下式来导出。
(4×4分量的情况)
ctxIdx=CTX_IND_MAP[index]
(8×8分量的情况)
ctxIdx=CTX_IND_MAP[index]+sigCtxOffset
在此,sigCtxOffset是用于识别4×4分量的上下文索引和8×8分量的上下文索引的给定的偏移。
另外,各变换块的色差的上下文索引ctxIdx通过下式来导出。
(4×4分量的情况)
ctxIdx=CTX_IND_MAP[index]+SigCtxOffsetLuma
(8×8分量的情况)
ctxIdx=CTX_IND_MAP[index]+sigCtxOffset+SigCtxOffsetLuma
在此,sigCtxOffset是用于识别4×4分量的上下文索引和8×8分量、16×4分量、4×16分量的上下文索引的给定的偏移,SigCtxOffsetLuma是用于识别亮度和色差的上下文索引的给定的偏移。
此外,在此情况下,将图61中的”sigCtx=log2TrafoSize==2?0:offset”中的offset的值设定为6来进行解释。
图64(a)是表示图61的伪代码中的CTX_IND_MAP[index]的一例的图,图64(b)示出了对图61所示的伪代码使用了图64(a)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,图64(c)示出了对图61所示的伪代码使用图64(a)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的亮度相关的各上下文索引的值。另外,图65(a)示出了对图61所示的伪代码使用了图64(a)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的色差相关的各上下文索引的值,图65(b)示出了对图61所示的伪代码使用了图62(a)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的色差相关的各上下文索引的值。此外,在图64(b)所示的例子中,对位于最高频分量侧的频率分量(图64(a)中网状线的频率分量),不导出上下文索引(图64(c)、图65(a)~(b)中也同样)。此外,尽管在说明上将用于识别亮度和色差的上下文索引的偏移SigCtxOffsetLuma设为SigCtxOffsetLuma=12,并将色差的上下文索引图示于图65(a)、(b),但并不限于此。SigCtxOffsetLuma优选为4×4变换块~32×32变换块的亮度的上下文索引的总数。
在图64(b)、(c)所示的例子中,关于亮度导出12个上下文索引,在图65(a)、(b)所示的例子中,关于色差导出12个上下文索引。因此,在图64(b)、(c)以及图65(a)、(b)所示的例子中,导出12+12=24个上下文索引。
这比在图30(a)~(c)所示的比较例中所导出的37个要少13个。
如上所述,在本处理中,通过图60所示的上下文索引导出方法,使4×4分量和8×8分量以及亮度、色差到子组的分类处理公共化,从而能维持编码效率不变地,简化上下文索引导出处理。另外,根据本处理,由于能削减要导出的上下文索引的数目,因此能谋求上下文索引导出处理的减轻、以及用于保持上下文索引的存储器尺寸的减小。
(频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例4)
在频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例的具体例3中,关于亮度和色差的两者,利用非零系数的发生频度以水平方向频率分量u与垂直方向频率分量v成为u=v的边界为界而出现频度呈对称的特性,对由频率分类部124a分类出的各子组,分配上下文索引,针对这样的例子进行了说明。
以下,使用图66~图69来说明在频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例4。在此说明的具体例4是针对亮度应用上述的具体例2、且针对色差应用上述的具体例3的上下文索引导出处理而得到的。
首先,在处理对象的频域为给定的尺寸以下的情况下,频率分类部124a基于处理对象的频率分量的位置(xC,yC),进行与上述的具体例2中的频率分类部124a同样的处理,进行到子组R0~R6的分类处理。
接下来,在处理对象的频域为给定的尺寸以下的情况下,位置上下文导出部124b关于亮度,对由频率分类部124a分类出的各子组,分配个别的上下文索引。另外,可以是,关于色差,利用非零系数的发生频度以水平方向频率分量u与垂直方向频率分量v成为u=v的边界为界而出现频度呈对称的特性,对由频率分类部124a分类出的各子组,分配上下文索引。即,位置上下文导出部124b在色差的情况下,关于4×4分量,在图60(a)中,对位于水平方向频率分量的高频侧的区域R3、以及位于垂直方向频率分量的高频侧的区域R5,导出公共的上下文索引ctxIdx(i)来分配。
例如,关于亮度,若在4×4分量的情况下,对图60(a)所示的区域R0、R1、R2、R3、R4、R5、R6,各自导出了上下文索引ctxIdx=0,1,2,3,4,5,6,则在8×8分量的情况下,对图60(b)所示的区域R0、R1、R2、R3、R4、R5、R6,各自导出上下文索引ctxIdx=7,8,9,10,11,12,13。
另外,关于色差,若在4×4分量的情况下,对图60(a)所示的区域R0、R1、R2、R3、R4、R5、R6,各自导出了上下文索引ctxIdx=14,15,16,17,18,17,19,则在8×8分量的情况下,对图60(b)所示的区域R0、R1、R2、R3、R4、R5、R6,各自导出上下文索引ctxIdx=20,21,22,23,24,23,25。
能通过图66所示的伪代码来表征上述的频率分类部124a所执行的频率分类处理和位置上下文导出部124b所执行的上下文导出处理。
即,在图66所示的伪代码中,通过对与根据子块位置(X,Y)而确定的索引值index对应的查询表CTX_IND_MAP_L[index]、或者CTX_IND_MAP_C[index]的基准值,相加给定的偏移值,来计算了处理对象的频率分量(xC,yC)的上下文索引ctxIdx。此外,在4×4变换块、以及8×8变换块的情况下,根据各子块(4×4的情况下为1×1子块,8×8的情况下为2×2子块)的位置(X,Y)而确定的索引值index表征横向扫描了子块的顺序(开始值为0)。此外,索引值index使用子块位置(X,Y)并通过下式来计算。
Index=(Y<<2)+X
另外,各变换块的亮度的上下文索引ctxIdx通过下式来导出。
(4×4分量的情况)
ctxIdx=CTX_IND_MAP_L[index]
(8×8分量的情况)
ctxIdx=CTX_IND_MAP_L[index]+sigCtxOffset
在此,sigCtxOffset是用于识别4×4分量的上下文索引和8×8分量的上下文索引的给定的偏移。
另外,各变换块的色差的上下文索引ctxIdx通过下式来导出。
(4×4分量的情况)
ctxIdx=CTX_IND_MAP_C[index]+SigCtxOffsetLuma
(8×8分量的情况)
ctxIdx=CTX_IND_MAP_C[index]+sigCtxOffset+SigCtxOffsetLuma
在此,sigCtxOffset是用于识别4×4分量的上下文索引和8×8分量的上下文索引的给定的偏移,SigCtxOffsetLuma是用于识别亮度和色差的上下文索引的给定的偏移。
图67(a)是表示图66的伪代码中的CTX_IND_MAP_L[index]的一例的图,图68(a)示出对图66所示的伪代码使用了图67(a)的CTX_IND_MAP_L[index]的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,图68(b)示出了对图66所示的伪代码使用了图67(a)的CTX_IND_MAP_L[index]的情况下所得到的与8×8分量的亮度相关的各上下文索引的值。
另外,图69(a)示出了对图66所示的伪代码使用了图67(b)的CTX_IND_MAP_C[index]的情况下所得到的与4×4分量的色差相关的各上下文索引的值,图69(b示出了对图66所示的伪代码使用了图67(b)的CTX_IND_MAP_C[index]的情况下所得到的与8×8分量的色差相关的各上下文索引的值。此外,在图68(a)所示的例子中,对位于最高频分量侧的频率分量(图68(a)中网状线的频率分量),不导出上下文索引(图68(b)、图69(a)~(b)中也同样)。此外,尽管在说明上将用于识别亮度和色差的上下文索引的偏移SigCtxOffsetLuma设为SigCtxOffsetLuma=14,并将色差的上下文索引图示于图69(a)、(b),但并不限于此。SigCtxOffsetLuma优选是4×4变换块~32×32变换块的亮度的上下文索引的总数。
在图68(a)、(b)所示的例子中,关于亮度导出14个上下文索引,在图69(a)、(b)所示的例子中,关于色差导出12个上下文索引。因此,在图68(b)、(c)以及图69(a)、(b)所示的例子中,导出14+12=26个上下文索引。
这比在图30(a)~(c)所示的比较例中所导出的37个要少11个。
如上所述,在本处理中,通过图68、图69的上下文索引导出处理,关于亮度和色差,分别使4×4分量和8×8分量到子组的分类处理公共化,从而能使上下文索引导出处理合在一起,能简化上下文索引导出处理。另外,根据本处理,由于能削减要导出的上下文索引的数目,因此能谋求上下文索引导出处理的减轻、以及用于保持上下文索引的存储器尺寸的减小。
(频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例5)
尽管在具体例2~具体例4中,针对使4×4变换块与8×8变换块中的频率分量的分类处理公共化的情况进行了说明,但分类处理不限于此。例如,在图60(b)的8×8变换块的区域R0中,可以将DC分量进一步作为另一子组R7进行分类。即,可以按照具有4×4分量的尺寸的频域的分割图案与具有8×8分量的尺寸的频域的分割图案在除DC分量以外的频域中彼此呈相似的方式将频域向子区域(子组)进行分割。
具体而言,在处理对象的频域为给定的尺寸以下的情况下,频率分类部124a基于处理对象的频率分量的位置(xC,yC),在4×4分量的情况下进行到子组R0~R6的分类处理,在8×8分量的情况下进行到子组R0~R7的分类处理。
(4×4分量的情况)
(1)在xC=0,且,yC=0的情况下,分类至子组R0。
(2)在非(xC=0且yC=0),而xC<2,且,yC<2的情况下,分类至子组R1。
(3)在xC=2,且,yC<2的情况下,分类至子组R2。
(4)在xC=3,且,yC<2的情况下,分类至子组R3。
(5)在xC<2,且,yC=2的情况下,分类至子组R4。
(6)在xC<2,且,yC=3的情况下,分类至子组R5。
(7)在xC≥2,且,yC≥2的情况下,分类至子组R6。
上述(1)以及(2)还能通过下记(1’)以及(2’)进行处理。
(1’)在xC<1,且,yC<1的情况下,分类至子组R0。
(2’)在非(xC<1且yC<1),而xC<2,且,yC<2的情况下,分类至子组R1。
(8×8分量的情况)
(1)在xC=0,且,yC=0的情况下,分类至子组R7。
(2)在非(xC=0且yC=0),而xC<2,且,yC<2的情况下,分类至子组R0。
(3)在非(xC<2且yC<2),而xC<4,且,yC<4的情况下,分类至子组R1。
(4)在xC≥4,且,xC<6,且,yC<4的情况下,分类至子组R2。
(5)在xC≥6,且,yC<4的情况下,分类至子组R3。
(6)在xC<4,且,yC≥4,且,yC<6的情况下,分类至子组R4。
(7)在xC<4,且,yC≥6的情况下,分类至子组R5。
(8)在xC≥4,且,yC≥4的情况下,分类至子组R6。
另外,还能使上述4×4分量和8×8分量的子组的分类处理的一部分公共化,按如下方式进行处理。
首先,频率分类部124a通过下式,基于处理对象的频率分量的位置(xC,yC)和表示变换块的尺寸的log2TrafoSize,计算变量X、Y。
X=log2TrafoSize==2?xC:xC>>1
Y=log2TrafoSize==2?yC:yC>>1
接下来,基于已导出的变量X、Y,进行将处理对象的频率分量(xC,yC)到子组R0~R6的分类处理。
(1)在X=0,且,Y=0的情况下,分类至子组R0。
(2)在非(X=0且Y=0),而X<2,且,Y<2的情况下,分类至子组R1。
(3)在X=2,且,Y<2的情况下,分类至子组R2。
(4)在X=3,且,Y<2的情况下,分类至子组R3。
(5)在X<2,且,Y=2的情况下,分类至子组R4。
(6)在X<2,且,Y=3的情况下,分类至子组R5。
(7)在X≥2,且,Y≥2的情况下,分类至子组R6。
在上述公共处理之后,将8×8分量的位于低频的子组R0中所含的DC分量(xC=0,且,yC=0)进一步作为子组R7进行分类。
另外,将上述4×4分量和8×8分量分类至子组的公共处理还能按如下方式进行。
(1)在xC<width/4,且,yC<width/4的情况下,分类至子组R0。
(2)在xC<width/2,且,yC<width/2的情况下,分类至子组R1。
(3)在xC≥width/2,且,xC<width×3/4,且,yC<width/2的情况下,分类至子组R2。
(4)在xC≥width×3/4,且,yC<width/2的情况下,分类至子组R3。
(5)在xC<width/2,且,yC≥width/2,且,yC<width×3/4的情况下,分类至子组R4。
(6)在xC<width/2,且,yC≥width×3/4的情况下,分类至子组R5。
(7)在xC≥width/2,且,yC≥width/2的情况下,分类至子组R6。
在此width是对象频域的宽度(在4×4时为4,在8×8时为8)。
在上述公共处理之后,8×8分量的位于低频的子组R0中所含的DC分量(xC=0,且,yC=0)进一步作为子组R7进行分类。
将上述分类处理应用于4×4分量、以及8×8分量的例子如图70(a)、(b)所示。图70(a)是表示构成具有4×4分量的尺寸的频域的区域(子组)R0~R6的图,图70(b)是表示构成具有8×8分量的尺寸的频率分量的区域(子组)R0~R7的图。
接下来,位置上下文导出部124b可以分配与由上述频率分类部124a分类出的、图70(a)以及图70(b)所示的各子组Ri(i=0,1,2,3,4,5,6,7)对应的上下文索引ctxIdx(i)。具体而言,亮度的上下文索引ctxIdx(i)通过下式来导出。
offsetBlk=log2TrafoWidth==2?0:7
ctxIdx(i)=i+offsetBlk
此外,i表征用于识别子组Ri的编号,offsetBlk是用于识别4×4分量和8×8分量的上下文索引的偏移,通过表示变换块的横向宽度尺寸的对数值的log2TrafoWidth而被设定给定的值。
关于亮度,与通过上式而导出的4×4分量的各子组Ri对应的上下文索引ctxIdx(i)如图88(a)所示,与8×8分量的各子组Ri对应的上下文索引ctxIdx(i)如图88(b)所示。
另外,色差的上下文索引ctxIdx(i)通过下式来导出。
offsetBlk=log2TrafoWidth==2?0:7
ctxIdx(i)=i+offsetClr+offsetBlk
此外,i表征识别子组Ri的编号,offsetBlk是用于识别4×4分量和8×8分量的上下文索引的偏移,根据表示变换块的横向宽度尺寸的对数值的log2TrafoWidth而被设定给定的值。offsetClr是用于识别亮度和色差的上下文索引的给定的偏移。在此,在设为了offsetClr=20的情况下,关于色差,与通过上式而导出的4×4分量的各子区域Ri对应的上下文索引ctxIdx(i)如图88(c)所示,与8×8分量的各子区域Ri对应的上下文索引ctxIdx(i)如图88(d)所示。此外,尽管在说明上将用于识别亮度和色差的上下文索引的偏移offsetClr设为offsetClr=20,并将色差的上下文索引图示于图88(c)、(d),但并不限于此。offsetClr优选是4×4变换块~32×32变换块的亮度的上下文索引的总数。
能通过图89(a)所示的伪代码来表征上述的频率分类部124a所执行的频率分类处理和位置上下文导出部124b所执行的上下文导出处理。即,在图89(a)所示的伪代码中,对8×8变换块的DC分量分配给定的索引值index,对8×8变换块的DC以外的频率分量分配根据子块位置(X,Y)而确定的索引值index,使用该索引值index和查询表CTX_IND_MAP[index],来计算处理对象的频率分量(xC,yC)的上下文索引ctxIdx。
(4×4分量的情况)
通过下式来计算与处理对象的频率分量(xC,yC)所属的子块(4×4的情况下为1×1子块)的位置(X,Y)对应的索引值index。
index=(Y<<2)+X
其中,X=xC,Y=yC。接下来,根据求出的索引值index和查询表CTX_IND_MAP[index],通过下式来导出上下文索引ctxIdx。
ctxIdx=CTX_IND_MAP[index]
此外,在色差的情况下,使用基于上式而计算出的上下文索引ctxIdx和给定的偏移offsetClr,来通过下式导出上下文索引。
ctxIdx=ctxIdx+offsetClr
此外,offsetClr是用于识别亮度和色差的上下文索引的给定的偏移。
(8×8分量的情况)
处理对象的频率分量(xC,yC)所属的子块(8×8的情况下为2×2子块)的位置(X,Y)、以及与DC分量对应的索引值index通过下式来计算。
index=(xC+yC==0)?16:(Y<<2)+X
其中,X=xC>>1,Y=yC>>1。接下来,使用求出的索引值index和查询表CTX_IND_MAP[index]、以及用于识别4×4分量与8×8分量的上下文索引的给定的偏移offsetBlk,通过下式来导出上下文索引ctxIdx。
ctxIdx=CTX_IND_MAP[index]+offsetBlk
在此,4×4分量的亮度的上下文索引的总数为7,因此成为offsetBlk=7。此外,在色差的情况下,使用通过上式而计算出的上下文索引ctxIdx和给定的偏移offsetClr,通过下式来导出上下文索引。
ctxIdx=ctxIdx+offsetClr
此外,offsetClr是用于识别亮度和色差的上下文索引的给定的偏移。
图89(b)是表示图89(a)所示的伪代码中的CTX_IND_MAP[index]的一例的图,图88(a)示出了对图89(a)所示的伪代码使用了图89(b)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,图88(b)示出了对图89(a)所示的伪代码使用了图89(b)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的亮度相关的各上下文索引的值。另外,图88(c)示出了对图89(a)所示的伪代码使用了图89(b)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的色差相关的各上下文索引的值,图88(d)示出了对图89(a)所示的伪代码使用了图89(b)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的色差相关的各上下文索引的值。此外,在图88(a)所示的例子中,对位于最高频分量侧的频率分量(图88(a)中为网状线的频率分量),不导出上下文索引(图88(b)、(c)、(d)中也同样)。此外,尽管在说明上将用于识别亮度和色差的上下文索引的偏移offsetClr设为offsetClr=20,并将色差的上下文索引图示于图88(c)、(d),但并不限于此。offsetClr优选是4×4变换块~32×32变换块的亮度的上下文索引的总数。
因此,在图70(a)、(b)所示的例子中,关于亮度导出15个上下文索引,关于色差导出15个上下文索引,从而导出15+15=30个上下文索引。这比在图30(a)~(c)所示的比较例中所导出的37个要少7个。
另外,可以利用非零系数的发生频度以水平方向频率分量u与垂直方向频率分量v成为u=v的边界为界而出现频度呈对称的特性,对由上述频率分类部124a分类出的图70(a)以及图70(b)所示的子组分配上下文索引。例如,位置上下文导出部124b,关于4×4分量,在图71(a)中,对位于水平方向频率分量的高频侧的区域R3、以及位于垂直方向频率分量的高频侧的区域R5,导出公共的上下文索引ctxIdx并分配,对剩余的R0、R1、R2、R4、R6导出个别的上下文索引并分配。另外,关于8×8分量,在图71(b)中,对位于水平方向频率分量的高频侧的区域R3和位于垂直方向频率分量的高频侧的区域R5导出公共的上下文索引ctxIdx并分配,对剩余的R0、R1、R2、R4、R6、R7导出个别的上下文索引并分配。
因此,在图71(a)、(b)所示的例子中,关于亮度导出13个上下文索引,关于色差导出13个上下文索引,从而导出13+13=26个上下文索引。这比在图30(a)~(c)所示的比较例中所导出的37个要少11个。
另外,可以对于由上述频率分类部124a分出的图70(a)以及图70(b)所示的子组,关于亮度,分配个别的上下文索引,关于色差,利用非零系数的发生频度以水平方向频率分量u与垂直方向频率分量v成为u=v的边界为界而出现频度呈对称的特性,来分配上下文索引。例如,位置上下文导出部124b,在亮度的情况下,对4×4分量的R0~R6、8×8分量的R0~R7分配个别的上下文索引。另外,在色差的情况下,关于4×4分量,在图71(a)中,对位于水平方向频率分量的高频侧的区域R3、以及位于垂直方向频率分量的高频侧的区域R5,导出公共的上下文索引ctxIdx并分配,对剩余的R0、R1、R2、R4、R6导出个别的上下文索引并分配。另外,关于8×8分量,在图71(b)中,对位于水平方向频率分量的高频侧的区域R3和位于垂直方向频率分量的高频侧的区域R5导出公共的上下文索引ctxIdx并分配,对剩余的R0、R1、R2、R4、R6、R7导出个别的上下文索引并分配。即,关于亮度导出15个上下文索引,关于色差导出15个上下文索引,从而导出15+13=28个。这比在图30(a)~(c)所示的比较例中所导出的37个要少9个。
另外,对于由上述频率分类部124a分类出的图70(a)以及图70(b)所示的子组,位置上下文导出部124b可以关于不同的变换块间的低频区域,分配公共的上下文索引。例如,位置上下文导出部124b对处于4×4分量的区域R0(DC分量)和处于8×8分量的区域R7(DC分量)导出公共的上下文索引来分配,对4×4分量中的R1,R2、R3、R4、R5、R6以及8×8分量中的R0、R1、R2、R3、R4、R5、R6导出个别的上下文索引来分配。因此,在图72(a)、(b)所示的例子中,关于亮度导出14个上下文索引,关于色差导出14个上下文索引,从而导出14+14=28个上下文索引。这比在图30(a)~(c)所示的比较例中所导出的37个要少9个。
此外,不限于4×4分量和8×8分量,位置上下文导出部124b可以构成为:关于全部的变换块(4×4,8×8,16×4,4×16,16×16,32×8,8×32,32×32)的DC分量来导出公共的上下文索引。根据本构成,能进一步削减上下文索引的数目。
另外,对于由上述频率分类部124a分类出的图70(a)以及图70(b)所示的子组,位置上下文导出部124b关于不同的变换块间的低频区域,分配公共的上下文索引。进而,关于各变换块的高频区域,可以利用非零系数的发生频度以水平方向频率分量u与垂直方向频率分量v成为u=v的边界为界而出现频度呈对称的特性,来分配上下文索引。
例如,位置上下文导出部124b对图73(a)的处于4×4分量的区域R0(DC分量)、以及图73(b)的处于8×8分量的区域R7(DC分量),导出公共的上下文索引并分配。接下来,关于图73(a)的4×4分量,对位于水平方向频率分量的高频侧的区域R3、以及位于垂直方向频率分量的高频侧的区域R5,导出公共的上下文索引ctxIdx并分配,对剩余的R1,R2、R4、R6导出个别的上下文索引并分配。另外,关于图73(b)的8×8分量,对位于水平方向频率分量的高频侧的区域R3、以及位于垂直方向频率分量的高频侧的区域R5,导出公共的上下文索引ctxIdx并分配,对剩余的R0、R1、R2、R4、R6导出个别的上下文索引并分配。
因此,在图73(a)、(b)所示的例子中,关于亮度导出12个上下文索引,关于色差导出12个上下文索引,从而导出12+12=24个上下文索引。这比在图30(a)~(c)所示的比较例中所导出的37个要少13个。
此外,位置上下文导出部124b若设为关于全部的变换块(4×4,8×8,16×4,4×16,16×16,32×8,8×32,32×32)的DC分量来导出公共的上下文索引的构成,则能进一步削减上下文索引的数目。
如上所述,根据本处理,由于能削减要导出的上下文索引的数目,因此能谋求上下文索引导出处理的减轻、以及用于保持上下文索引的存储器尺寸的减小。
(频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例6)
在具体例2中,说明了关于变换块尺寸为4×4块(4×4分量)、8×8块(8×8分量),使将处理对象的频率分量向子组的分类处理公共化,并简化上下文索引导出处理的情况。在此,进一步说明应用于横向宽度16且纵向宽度4的16×4块(16×4分量)、以及横向宽度4且纵向宽度16的4×16块(4×16分量)的情况。
首先,在处理对象的频率为给定的尺寸以下的情况下,频率分类部124a基于处理对象的频率分量的位置(xC,yC),将处理对象的频率分量在4×4以及8×8分量的情况下向子组(子区域)R0~R6进行分类处理,而在4×16分量以及4×16分量的情况下向子组A0~A6进行分类处理。此外,将4×4分量和8×8分量的频率向子组R0~R6进行分类的处理是与具体例2同样的处理,因此省略说明。
(16×4分量的情况)
(1)在0≤xC<4,且,yC=0的情况下,分类至子组A0。
(2)在非(0≤xC<4,且,yC=0),而0≤xC<8,且,0≤yC<2的情况下,分类至子组A1。
(3)在8≤xC<12,且,0≤yC<2的情况下,分类至子组A2。
(4)在12≤xC<16,且,0≤yC<2的情况下,分类至子组A3。
(5)在0≤xC<8,且,yC=2的情况下,分类至子组A4。
(6)在0≤xC<8,且,yC=3的情况下,分类至子组A5。
(7)在8≤xC<16,且,2≤yC<4的情况下,分类至子组A6。
(4×16分量的情况)
(1)在xC=0,且,0≤yC<4的情况下,分类至子组A0。
(2)在非(xC=0,且,0≤yC<4),而0≤xC<2,且,0≤yC<8的情况下,分类至子组A1。
(3)在xC=2,且,0≤yC<8的情况下,分类至子组A2。
(4)在xC=3,且,0≤yC<8的情况下,分类至子组A3。
(5)在0≤xC<2,且,8≤yC<12的情况下,分类至子组A4。
(6)在0≤xC<2,且,12≤yC<16的情况下,分类至子组A5。
(7)在2≤xC<4,且,8≤yC<16的情况下,分类至子组A6。
关于16×4分量以及4×16分量来应用了上述分类处理的例子如图78(a)、(b)所示。图78(a)是表示构成具有16×4分量的尺寸的频域的区域(子组)A0~A6的图,图78(b)是表示构成具有4×16分量的尺寸的频率分量的区域(子组)A0~A6的图。
另外,还能使上述16×4分量和4×16分量的子组的分类处理公共化,按如下方式进行处理。
首先,频率分类部124a将处理对象的N×M块分割为给定尺寸的子块,基于处理对象的频率分量(xC,yC)所属的子块的位置(X,Y),来进行到子组A0~A6的分类处理。例如,在16×4分量的情况下,将16×4块分割为横向宽度4且纵向宽度1的4×1子块,在4×16分量的情况下,将4×16块分割为横向宽度1且纵向宽度4的1×4子块。
首先,频率分类部124a根据处理对象的频率分量的位置(xC,yC)、表示变换块的横向宽度尺寸的对数值的log2TrafoWidth(在4×16块中为2,在16×4块中为4)以及表示纵向宽度尺寸的对数值的log2TrafoHeight(在4×16块中为4,在16×4块中为2),通过如下所示的式子来计算该频率分量所属的子块位置(X,Y)。
X=log2TrafoWidth==2?xC:xC>>2
Y=log2TrafoHeight==2?yC:yC>>2
接下来,基于已导出的子块位置(X,Y),进行将处理对象的频率分量(xC,yC)到子组A0~A6的分类处理。
(1)在X=0,且,Y=0的情况下,分类至子组A0。
(2)在非(X=0且Y=0),而X<2,且,Y<2的情况下,分类至子组A1。
(3)在X=2,且,Y<2的情况下,分类至子组A2。
(4)在X=3,且,Y<2的情况下,分类至子组A3。
(5)在X<2,且,Y=2的情况下,分类至子组A4。
(6)在X<2,且,Y=3的情况下,分类至子组A5。
(7)在X≥2,且,Y≥2的情况下,分类至子组A6。
另外,将4×4分量、8×8分量、16×4分量和4×16分量分类至子组的公共处理还能按如下方式进行处理。
(1)在xC<width/4,且,yC<height/4的情况下,分类至子组A0。
(2)在xC<width/2,且,yC<height/2的情况下,分类至子组A1。
(3)在xC≥width/2,且,xC<width×3/4,且,yC<height/2的情况下,分类至子组A2。
(4)在xC≥width×3/4,且,yC<height/2的情况下,分类至子组A3。
(5)在xC<width/2,且,yC≥height/2,且,yC<height×3/4的情况下,分类至子组A4。
(6)在xC<width/2,且,yC≥height×3/4的情况下,分类至子组A5。
(7)在xC≥width/2,且,yC≥height/2的情况下,分类至子组A6。
在此,width是对象频域的横向宽度(4×4时为4,8×8时为8,16×4时为16,4×16时为4)。另外,height是对象频域的纵向宽度(4×4时为4,8×8时为8,16×4时为4,4×16时为16)。
此外,4×16分量的分割图案如图79所示,对于16×4分量的分割图案,以水平方向频率分量u的u轴为对称轴将其进行轴对称变换,其后,以原点为中心,使其顺时针时旋转90度,则一致。也就是,具有由频率分类部124a分割出的16×4分量的尺寸(第1尺寸)的频域的分割图案、以及具有由频率分类部124a分割出的4×16分量的尺寸(第2尺寸)的频域的分割图案通过旋转以及轴对称变换而彼此一致。
另外,一般而言,N×M分量(N!=M,即,N≠M)的非零系数的发生概率的分布形状具有如下特征:对于M×N分量的非零系数的发生概率的分布形状,以水平方向频率分量u的u轴为对称轴将其进行轴对称变换,其后,以原点为中心,使其顺时针旋转90度而得到新分布形状,N×M分量(N!=M,即,N≠M)的非零系数的发生概率的分布形状与该新分布形状类似。
接下来,位置上下文导出部124b利用上述的分割图案以及非零系数的分形状成为相似的、或通过旋转以及轴对称变换而彼此一致这样的特性,对于由频率分类部124a分类出的图78(a)和以及图78(b)所示的子组,分配对对应的子组而言公共的上下文索引。也就是,位置上下文导出部124b对图78(a)所示的区域Ai(i=0,1,2,3,4,5,6)以及图78(b)所示的区域Ai(i=0,1,4,5,2,3,6),导出公共的上下文索引ctxIdx(i)并分配。例如,位置上下文导出部124b,关于亮度,若在16×4分量的情况下,对图78(a)所示的区域Ai(i=0,1,2,3,4,5,6)分别导出了ctxIdx=7,8,9,10,11,12,13,则在4×16分量的情况下,对图78(b)所示的Ai(i=0,1,4,5,2,3,6)也分别导出ctxIdx=7,8,9,10,11,12,13。另外,同样地关于色差,若在16×4分量的情况下,对图78(a)所示的区域Ai(i=0,1,2,3,4,5,6)分别导出了ctxIdx=21,22,23,24,25,26,27,则在4×16分量的情况下,对图78(b)所示的Ai(i=0,1,4,5,2,3,6)也分别导出ctxIdx=21,22,23,24,25,26,27。
还能通过图80所示的伪代码来表征上述的频率分类部124a所执行的频率分类处理和位置上下文导出部124b所执行的上下文导出处理。即,在图80所示的伪代码中,通过对与根据子块位置(X,Y)而确定的索引值index对应的查询表CTX_IND_MAP[index]的基准值,相加给定的偏移值,来计算了处理对象的频率分量(xC,yC)的上下文索引ctxIdx。此外,在4×4变换块、8×8变换块、以及16×4变换块的情况下,根据各子块(4×4的情况下为1×1子块,8×8的情况下为2×2子块,16×4的情况下为4×1子块)的位置(X,Y)而确定的索引值index表征横向扫描了子块的顺序(开始值为0),通过下式来进行计算。
Index=(Y<<2)+X
另外,在4×16变换块的情况下,根据子块(4×1子块)的位置(X,Y)而确定的索引值index表征纵向扫描了子块的顺序(开始值为0),通过下式来进行计算。
Index=(X<<2)+Y
另外,各变换块的亮度的上下文索引ctxIdx通过下式来导出。
(4×4分量的情况)
ctxIdx=CTX_IND_MAP[index]
(8×8分量、16×4分量、4×16分量的情况)
ctxIdx=CTX_IND_MAP[index]+sigCtxOffset
在此,sigCtxOffset是用于识别4×4分量的上下文索引和8×8分量、16×4分量、4×16分量的上下文索引的给定的偏移。
另外,各变换块的色差的上下文索引ctxIdx通过下式来导出。
(4×4分量的情况)
ctxIdx=CTX_IND_MAP[index]+SigCtxOffsetLuma
(8×8分量、16×4分量、4×16分量的情况)
ctxIdx=CTX_IND_MAP[index]+sigCtxOffset+SigCtxOffsetLuma
在此,sigCtxOffset是用于识别4×4分量的上下文索引和8×8分量、16×4分量、4×16分量的上下文索引的给定的偏移,SigCtxOffsetLuma是用于识别亮度和色差的上下文索引的给定的偏移。
此外,图62(a)是表示图80所示的伪代码中的查询表CTX_IND_MAP[index]的一例的图。另外,图81(a)示出了对图80所示的伪代码使用了图62(a)的CTX_IND_MAP[index]的情况下所得到的与16×4分量的亮度相关的各上下文索引的值,图81(b)同样地示出了与4×16分量的亮度相关的各上下文索引的值。另外,图82(a)示出了对图80所示的伪代码使用了图62(a)的CTX_IND_MAP[index]的情况下所得到的与16×4分量的色差相关的各上下文索引的值,图82(b)同样地示出了与4×16分量的色差相关的各上下文索引的值。此外,在图81(a)所示的例子中,对位于最高频分量侧的频率分量(图81(a)中为网状线的频率分量),不导出上下文索引(图81(b)、图82(a)、图82(b)中也同样)。此外,尽管在说明上将用于识别亮度和色差的上下文索引的偏移SigCtxOffsetLuma设为SigCtxOffsetLuma=14,并将色差的上下文索引图示于图82(a)、(b),但并不限于此。SigCtxOffsetLuma优选是4×4变换块~32×32变换块的亮度的上下文索引的总数。
另外,优选地,位置上下文导出部124b将对16×4变换块的各变换系数进行解码时所导出的上下文索引、对4×16变换块的各变换系数进行解码时所导出的上下文索引、以及对8×8变换块或4×4变换块的各变换系数进行解码时所导出的上下文索引设定为公共的值。具体而言,优选将对图78(a)所示的16×4变换块的区域Ai(i=0,1,2,3,4,5,6)和图78(b)所示的4×16变换块的区域Ai(i=0,1,4,5,2,3,6)所分配的上下文索引设定为与对图60(a)所示的4×4变换块或者图60(b)所示的8×8变换块的区域Ri(i=0,1,2,3,4,5,6)所分配的上下文索引是公共的。
如上所述,在本处理中,通过使16×4分量和4×16分量到子组的分类处理公共化,能将上下文索引导出处理合在一起,因此能简化上下文索引导出处理。另外,根据本处理,由于对16×4分量的各子组和4×16分量的对应的子组,导出公共的上下文索引,因此能削减要导出的上下文索引的数目。进而,由于对16×4分量和4×16分量和8×8分量的各子组导出公共的上下文索引,因此能削减要导出的上下文索引的数目,故能谋求上下文索引导出处理的减轻、以及用于保持上下文索引的存储器尺寸的减小。
进而,位置上下文导出部124b,关于色差,可以对图78(a)所示的16×4变换块的区域A3和A5、图78(b)所示的4×16变换块的区域A3和A5、以及图60(b)所示的8×8变换块的区域R3和R5,分配公共的上下文索引。例如,位置上下文导出部124b若对图78(a)所示的16×4变换块的区域Ai(i=0,1,2,3,4,5,6)分别导出了上下文索引ctxIdx=20,21,22,23,24,23,25,则对图78(b)所示的4×16变换块的区域Ai(i=0,1,4,5,2,3,6)也分别导出ctxIdx=20,21,22,23,24,23,24,对图60(b)所示的8×8变换块的区域Ri(i=0,1,2,3,4,5,6)也分别导出ctxIdx=20,21,22,23,24,23,25。在此情况下,能通过图83所示的伪代码来表征频率分类部124a所执行的频率分类处理和位置上下文导出部124b所执行的上下文导出处理。即,在图83所示的伪代码中,通过对与根据子块位置(X,Y)而确定的索引值index对应的查询表CTX_IND_MAP_L[index]、或者CTX_IND_MAP_C[index]的基准值,相加给定的偏移值,来计算了处理对象的频率分量(xC,yC)的亮度或者色差的上下文索引ctxIdx。此外,在4×4变换块、8×8变换块、以及16×4变换块的情况下,根据各子块(4×4的情况下为1×1子块,8×8的情况下为2×2子块,16×4的情况下为4×1子块)的位置(X,Y)而确定的索引值index表征横向扫描了子块的顺序(开始值为0),通过下式来进行计算。
Index=(Y<<2)+X
另外,在4×16变换块的情况下,根据子块(4×1子块)的位置(X,Y)而确定的索引值index表征纵向扫描了子块的顺序(开始值为0),通过下式来进行计算。
Index=(X<<2)+Y
另外,各变换块的亮度的上下文索引ctxIdx通过下式来导出。
(4×4分量的情况)
ctxIdx=CTX_IND_MAP_L[index]
(8×8分量、16×4分量、4×16分量的情况)
ctxIdx=CTX_IND_MAP_L[index]+sigCtxOffset
在此,sigCtxOffset是用于识别4×4分量的上下文索引和8×8分量、16×4分量、4×16分量的上下文索引的给定的偏移。
另外,各变换块的色差的上下文索引ctxIdx通过下式来导出。
(4×4分量的情况)
ctxIdx=CTX_IND_MAP_C[index]+SigCtxOffsetLuma
(8×8分量、16×4分量、4×16分量的情况)
ctxIdx=CTX_IND_MAP_C[index]+sigCtxOffset+SigCtxOffsetLuma
在此,sigCtxOffset是用于识别4×4分量的上下文索引和8×8分量、16×4分量、4×16分量的上下文索引的给定的偏移,SigCtxOffsetLuma是用于识别亮度和色差的上下文索引的给定的偏移。
此外,图67(a)是表示图83所示的伪代码中的查询表CTX_IND_MAP_L[index]的一例的图。另外,图81(a)示出了对图83所示的伪代码使用了图67(a)的CTX_IND_MAP_L[index]的情况下所得到的与16×4分量的亮度相关的各上下文索引的值,图81(b)示出了与4×16分量的亮度相关的各上下文索引的值,图62(a)示出了与4×4分量的亮度相关的各上下文索引的值,图62(b)示出了与8×8分量的亮度相关的各上下文索引的值。另外,图84(a)示出了对图83所示的伪代码使用了图67(b)的CTX_IND_MAP_C[index]的情况下所得到的与16×4分量的色差相关的各上下文索引的值,图84(b)示出了与4×16分量的色差相关的各上下文索引的值,图84(c)示出了与8×8分量的色差相关的各上下文索引,图69(a)示出了与4×4分量的色差相关的各上下文索引。此外,在图84(a)所示的例子中,对位于最高频分量侧的频率分量(图84(a)中为网状线的频率分量),不导出上下文索引(图84(b)、图84(c)、图69(a)中也同样)。此外,尽管在说明上将用于识别亮度和色差的上下文索引的偏移SigCtxOffsetLuma设为SigCtxOffsetLuma=14,并将色差的上下文索引图示于图84(a)、(b),但并不限于此。SigCtxOffsetLuma优选是4×4变换块~32×32变换块的亮度的上下文索引的总数。
如上所述,位置上下文导出部124b,关于色差,对图78(a)所示的16×4变换块的区域A3和A5、图78(b)所示的4×16变换块的区域A3和A5、以及图60(b)所示的8×8变换块的区域R3和R5导出公共的上下文索引,因此能削减要导出的上下文索引的数目。
此外,在现有技术中,在4×16分量、16×4分量中的各变换系数的非零系数有无标志相关的上下文索引的导出处理中,需要排除DC分量,来对相邻的非零系数的数目进行计数。然而,根据上述构成,由于4×16分量、16×4分量中的各变换系数的非零系数有无标志相关的上下文索引是根据非零系数有无标志的位置来进行计算的,因此较之于现有的构成,能削减用于上下文索引的导出处理的处理量。
(频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例7)
在频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例7中,按照具有4×4分量的尺寸的频域的分割图案、与具有8×8分量的尺寸的频域的分割图案彼此呈相似的方式将频域分割为子区域(子组),并对各子区域导出个别的上下文索引,使用图85~图87来说明该情况。
首先,在处理对象的频域为给定的尺寸以下的情况下,频率分类部124a基于处理对象的频率分量的位置(xC,yC),来进行到子区域R0~R8的分类处理。
(4×4分量的情况)
(1)在满足xC<2,且,yC<2的情况下,根据以下的(1-a)~(1-d)的条件而分类至子区域R0~R3。
(1-a)在xC<1,且,yC<1的情况下,分类至子区域R0。
(1-b)在xC≥1,且,yC<1的情况下,分类至子区域R1。
(1-c)在xC<1,且,yC≥1的情况下,分类至子区域R2。
(1-d)在xC≥l,且,yC≥1的情况下,分类至子区域R3。
(2)在xC≥2,且,yC<2的情况下,根据以下的(2-a)~(2-b)的条件而分类至子区域R4或R5。
(2-a)在xC<3的情况下,分类至子区域R4。
(2-b)在xC≥3的情况下,分类至子区域R5。
(3)在xC<2,且,yC≥2的情况下,根据以下的(3-a)~(3-b)的条件而分类至子区域R6或R7。
(3-a)在yC<3的情况下,分类至子区域R6。
(3-b)在yC≥3的情况下,分类至子区域R7。
(4)在xC≥2,且,yC≥2的情况下,分类至子区域R8。
(8×8分量的情况)
(1)在满足xC<4,且,yC<4的情况下,根据以下的(1-a)~(1-d)的条件而分类至子区域R0~R3。
(1-a)在xC<2,且,yC<2的情况下,分类至子区域R0。
(1-b)在xC≥2,且,yC<2的情况下,分类至子区域R1。
(1-c)在xC<2,且,yC≥2的情况下,分类至子区域R2。
(1-d)在xC≥2,且,yC≥2的情况下,分类至子区域R3。
(2)在xC≥4,且,yC<4的情况下,根据以下的(2-a)~(2-b)的条件而分类至子区域R4或R5。
(2-a)在xC<6的情况下,分类至子区域R4。
(2-b)在xC≥6的情况下,分类至子区域R5。
(3)在xC<4,且,yC≥4的情况下,根据以下的(3-a)~(3-b)的条件而分类至子区域R6或R7。
(3-a)在yC<6的情况下,分类至子区域R6。
(3-b)在yC≥6的情况下,分类至子区域R7。
(4)在xC≥4,且,yC≥4的情况下,分类至子区域R8。
将上述分类处理应用于4×4分量以及8×8分量的例子如图85(a)、(b)所示。图85(a)是表示构成具有4×4分量的尺寸的频域的区域(也称为子区域或子组)R0~R8的图,图85(b)是表示构成具有8×8分量的尺寸的频率分量的区域(子区域)R0~R8的图。
另外,还能将上述4×4分量和8×8分量到子区域的分类处理按以下的方式公共化地处理。
首先,频率分类部124a根据处理对象的频率分量的位置(xC,yC)、表示变换块的横向宽度尺寸的对数值的log2TrafoWidth(在4×4块中为2,在8×8块中为3)以及表示纵向宽度尺寸的对数值的log2TrafoHeight(在4×4块中为2,在8×8块中为3),通过如下所示的式子来计算处理对象的频率分量所属的子块位置(X,Y)。
X=log2TrafoWidth==2?xC:xC>>1
Y=log2TrafoHeight==2?yC:yC>>1
接下来,基于已导出的子块位置(X,Y)来进行处理对象的频率分量(xC,yC)到子区域R0~R8的分类处理。
(1)在满足X<2,且,Y<2的情况下,根据以下的(1-a)~(1-d)的条件而分类至子区域R0~R3。
(1-a)在X<1,且,Y<1的情况下,分类至子区域R0。
(1-b)在X≥1,且,Y<1的情况下,分类至子区域R1。
(1-c)在X<1,且,Y≥1的情况下,分类至子区域R2。
(1-d)在X≥1,且,Y≥1的情况下,分类至子区域R3。
(2)在X≥2,且,Y<2的情况下,根据以下的(2-a)~(2-b)的条件而分类至子区域R4或R5。
(2-a)在X<3的情况下,分类至子区域R4。
(2-b)在X≥3的情况下,分类至子区域R5。
(3)在X<2,且,Y≥2的情况下,根据以下的(3-a)~(3-b)的条件而分类至子区域R6或R7。
(3-a)在Y<3的情况下,分类至子区域R6。
(3-b)在Y≥3的情况下,分类至子区域R7。
(4)在X≥2,且,Y≥2的情况下,分类至子区域R8。
另外,将上述4×4分量和8×8分量分类至子区域的公共处理还能按以下方式进行处理。
(1)在满足xC<width/2,且,yC<height/2的情况下,根据以下的(1-a)~(1-d)的条件而分类至子区域R0~R3。
(1-a)在xC<width/4,且,yC<height/4的情况下,分类至子区域R0。
(1-b)在xC≥width/4,且,yC<height/4的情况下,分类至子区域R1。
(1-c)在xC<width/4,且,yC≥height/4的情况下,分类至子区域R2。
(1-d)在xC≥width/4,且,yC≥height/4的情况下,分类至子区域R3。
(2)在xC≥width/2,且,yC<height/2的情况下,根据以下的(2-a)~(2-b)的条件而分类至子区域R4或R5。
(2-a)在xC<width×3/4的情况下,分类至子区域R4。
(2-b)在xC≥width×3/4的情况下,分类至子区域R5。
(3)在xC<width/2,且,yC≥height/2的情况下,根据以下的(3-a)~(3-b)的条件而分类至子区域R6或R7。
(3-a)在yC<height×3/4的情况下,分类至子区域R6。
(3-b)在yC≥height×3/4的情况下,分类至子区域R7。
(4)在xC≥width/2,且,yC≥height/2的情况下,分类至子区域R8。
在此width是对象频域的横向宽度(4×4时为4,8×8时为8)。另外,height是对象频域的纵向宽度(4×4时为4,8×8时为8)。
接下来,在处理对象的频域为给定的尺寸以下的情况下,位置上下文导出部124b对于由频率分类部124a分类出的各子区域Ri(i=0,1,2,3,4,5,6,7,8),来导出对应的上下文索引ctxIdx(i)。具体而言,亮度的上下文索引ctxIdx(i)通过下式来导出。
offsetBlk=log2TrafoWidth==2?0:9
ctxIdx(i)=i+offsetBlk
此外,i表征用于识别子区域Ri的编号,offsetBlk是用于识别4×4分量的上下文索引和8×8分量的上下文索引的偏移,通过表示变换块的横向宽度尺寸的对数值的log2TrafoWidth而被设定给定的值。
关于亮度,通过上式而导出的4×4分量,以及8×8分量的上下文索引如图86(a)、(b)所示。图86(a)示出与亮度的4×4分量的各子区域Ri对应的上下文索引ctxIdx(i),图86(b)示出与亮度的8×8分量的各子区域Ri对应的上下文索引ctxIdx(i)。
另外,色差的上下文索引ctxIdx(i)通过下式来导出。
offsetBlk=log2TrafoWidth==2?0:9
ctxIdx(i)=i+offsetClr+offsetBlk
此外,i表征用于识别子区域Ri的编号,offsetBlk是用于识别4×4分量的上下文索引和8×8分量的上下文索引的偏移,根据表示变换块的横向宽度尺寸的对数值的log2TrafoWidth而被设定给定的值。offsetClr是用于识别亮度和色差的上下文索引的给定的偏移。在此设offsetClr=20的情况下,关于色差,通过上式而导出的4×4分量、以及8×8分量的上下文索引如图86(c)、(d)所示。图86(c)示出与色差的4×4分量的各子区域Ri对应的上下文索引ctxIdx(i),图86(d)示出与色差的8×8分量的各子区域Ri对应的上下文索引ctxIdx(i)。此外,尽管在说明上将用于识别亮度和色差的上下文索引的偏移offsetClr设为offsetClr=20,并将色差的上下文索引图示于图86(c)、(d),但并不限于此。offsetClr优选是4×4变换块~32×32变换块的亮度的上下文索引的总数。
能通过图87(a)所示的伪代码来表征上述的频率分类部124a所执行的频率分类处理和位置上下文导出部124b所执行的上下文导出处理。即,在图87(a)所示的伪代码中,使用根据子块位置(X,Y)而确定的索引值index和查询表CTX_IND_MAP[index],来计算处理对象的频率分量(xC,yC)的上下文索引ctxIdx。
首先,处理对象的频率分量(xC,yC)所属的子块的位置(X,Y)通过下式来导出。
X=log2TrafoWidth==2?xC:xC>>1
Y=log2TrafoHeight==2?yC:yC>>1
在4×4分量和8×8分量的情况下,根据各子块(4×4的情况下为1×1子块,8×8的情况下为2×2子块)的位置(X,Y)而确定的索引值index通过下式来导出。此外,索引值index表征横向扫描了子块的顺序(开始值为0)。
index=(Y<<2)+X
另外,与各子块对应的亮度的上下文索引ctxIdx通过下式来导出。
offsetBlk=log2TrafoWidth==2?0:9
ctxIdx=CTX_IND_MAP[index]+offsetBlk
在此,offsetBlk是用于识别4×4分量和8×8分量的上下文索引的偏移,根据表示变换块的横向宽度尺寸的对数值的log2TrafoWidth而被设定给定的值。
另外,与各子块对应的色差的上下文索引ctxIdx通过下式来导出。
offsetBlk=log2TrafoWidth==2?0:9
ctxIdx=CTX_IND_MAP[index]+offsetBlk
ctxIdx=ctxIdx+offsetClr
在此,offsetBlk是用于识别4×4分量和8×8分量的上下文索引的偏移,根据表示变换块的横向宽度尺寸的对数值的log2TrafoWidth而被设定给定的值。另外,offsetClr是用于识别亮度和色差的上下文索引的给定的偏移。
图87(b)是表示图87(a)所示的伪代码中的CTX_IND_MAP[index]的一例的图,图86(a)示出了对图87(a)所示的伪代码使用了图87(b)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,图86(b)示出了对图87(a)所示的伪代码使用了图87(b)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的亮度相关的各上下文索引的值。另外,图86(c)示出了对图87(a)所示的伪代码使用了图87(b)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的色差相关的各上下文索引的值,图86(d)示出了对图87(a)所示的伪代码使用了图87(b)的CTX_IND_MAP[index]的情况下所得到的与8×8分量的色差相关的各上下文索引的值。此外,在图86(a)所示的例子中,对位于最高频分量侧的频率分量(图86(a)中为网状线的频率分量),不导出上下文索引(图86(b)、(c)、(d)中也同样)。此外,尽管在说明上将用于识别亮度和色差的上下文索引的偏移offsetClr设为offsetClr=20,并将色差的上下文索引图示于图86(c)、(d),但并不限于此。offsetClr优选是4×4变换块~32×32变换块的亮度的上下文索引的总数。
此外,对图85所示的各系数位置所分配的上下文索引还能通过后述的比特运算来导出。
在图86(a)、(b)所示的例子中,关于亮度导出18个上下文索引,在图86(c)、(d)所示的例子中,关于色差导出18个上下文索引。因此,在图86(a)、(b)以及图86(c)、(d)所示的例子中,导出18+18=36个上下文索引。这比在图30(a)~(c)所示的比较例中所导出的37个要少1个。
如上所述,在本处理中,通过图85所示的上下文索引导出方法,使4×4分量和8×8分量以及亮度和色差到子区域的分类处理公共化,从而能维持编码效率不变地,简化上下文索引导出处理。另外,根据本处理,由于能削减要导出的上下文索引的数目,因此能谋求上下文索引导出处理的减轻、以及用于保持上下文索引的存储器尺寸的减小。
(频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例8)
在频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例8中,针对按照具有作为最小的变换块尺寸的M×M分量(例如4×4)的尺寸的频域的分割图案在亮度和色差成为公共的方式将频域分割为子组来导出与各子组对应的上下文索引的情况,使用图90~图91、图30、图60、图62、图63来进行说明。
首先,在处理对象的频域为给定的尺寸以下的情况下,频率分类部124a基于处理对象的频率分量的位置(xC,yC)来进行到子组R0~R6的分类处理。
(1)在满足xC<width/2,且,yC<height/2的情况下,根据以下的(1-a)~(1-b)的条件而分类至子组R0~R1。
(1-a)在xC<width/4,且,yC<height/4的情况下,分类至子组R0。
(1-b)在xC≥width/4,或,yC≥height/4的情况下,分类至子组R1。
(2)在xC≥width/2,且,yC<height/2的情况下,根据以下的(2-a)~(2-b)的条件而分类至子组R2或R3。
(2-a)在xC<width×3/4的情况下,分类至子组R2。
(2-b)在xC≥width×3/4的情况下,分类至子组R3。
(3)在xC<width/2,且,yC≥height/2的情况下,根据以下的(3-a)~(3-b)的条件而分类至子组R4或R5。
(3-a)在yC<height×3/4的情况下,分类至子组R4。
(3-b)在yC≥height×3/4的情况下,分类至子组R5。
(4)在xC≥width/2,且,yC≥height/2的情况下,分类至子组R6。
在此width是对象频域的横向宽度(4×4时为4)。另外,height是对象频域的纵向宽度(4×4时为4)。将上述分类处理应用于4×4分量的例子如图60(a)所示。
接下来,在处理对象的频域为给定的尺寸以下的情况下,位置上下文导出部124b对由频率分类部124a分类出的子组分配对应的上下文索引。
具体而言,亮度和色差的上下文索引ctxIdx(i)通过下式来导出。
ctxIdx(i)=(cIdx==0)?i:i+offsetClr
此外,i表征用于识别子组Ri的编号,offsetClr是用于识别亮度和色差的上下文索引的偏移,优选是4×4变换块~32×32变换块的亮度的上下文索引的总数。另外,cIdx是用于识别亮度和色差的变量,在亮度的情况下,cIdx=0,在色差的情况下,cIdx=1。
关于亮度,通过上式而导出的与4×4分量的各子组Ri对应的上下文索引ctxIdx(i)如图62(b)所示。另外,在设offsetClr=14的情况下,关于色差,通过上式而导出的与4×4分量的各子组Ri对应的上下文索引ctxIdx(i)如图63(a)所示。
另外,关于4×4分量,能通过图90(a)所示的伪代码来表征频率分类部124a所执行的频率分类处理以及位置上下文导出部124b所执行的上下文导出处理。即,在图90(a)所示的伪代码中,使用根据处理对象的频率分量(xC,yC)而确定的索引值index、以及查询表CTX_IND_MAP[index],来计算处理对象的频率分量(xC,yC)的上下文索引ctxIdx。
首先,根据处理对象的频率分量(xC,yC)而确定的索引值index表征横向扫描了频率分量的顺序(开始值为0),通过下式来进行计算。
index=(yC<<2)+x
接下来,上下文索引ctxIdx通过下式来导出。
ctxIdx=CTX_IND_MAP[index]
另外,在色差的情况下,对通过上述的式子而导出的上下文索引ctxIdx相加给定的偏移offsetClr,来导出上下文索引。即,
ctxIdx=ctxIdx+offsetClr
图90(b)是表示图90(a)所示的伪代码中的CTX_IND_MAP[index]的一例的图,图62(b)示出了对图90(a)所示的伪代码使用了图90(b)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的亮度相关的各上下文索引的值。另外,图63(a)示出了对图90(a)所示的伪代码使用了图90(b)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的色差相关的各上下文索引。此外,在图62(b)所示的例子中,对位于最高频分量侧的频率分量(图62(b)中为网状线的频率分量),不导出上下文索引(图63(a)中也同样)。此外,尽管在说明上将用于识别亮度和色差的上下文索引的偏移offsetClr设为offsetClr=14,并将色差的上下文索引图示于图63(a),但并不限于此。offsetClr优选是4×4变换块~32×32变换块的亮度的上下文索引的总数。
参考比较例所涉及的图91(a)~(b)来说明位置上下文导出部124b如上所述导出上下文索引所带来的效果。
图91(a)示出了比较例所涉及的表征与4×4分量相关的上下文索引导出处理的伪代码,图91(b)示出了图91(a)的伪代码中的查询表CTX_IND_MAP4x4[index]的具体例。此外,在图91(b)的查询表CTX_IND_MAP4x4[index]当中,在index的范围为0<=index<=14的情况下,用于亮度的上下文索引导出,在index的范围为15<=index<=30的情况下,用于色差的上下文索引导出。另外,图30(a)示出了对图91(a)的伪代码使用了图91(b)的查询表CTX_IND_MAP4x4[index],(0<=index<=14)的情况下所得到的与4×4分量的亮度相关的各上下文索引的值,图30(b)示出了对图91(a)的伪代码使用了图91(b)的查询表CTX_IND_MAP4x4[index],(15<=index<=30)的情况下所得到的与4×4分量的色差相关的各上下文索引的值(其中,在相加偏移offsetClr之前)。在比较例中,在4×4分量,亮度与色差在频域的分割图案不同,因此在通过处理对象的频率分量位置(xC,yC)和查询表来导出上下文索引的情况下,需要对于亮度与色差参考不同的查询表。故而,上下文索引的导出所需的查询表CTX_IND_MAP4x4[index]中所含的要素数对于亮度为15个,对于色差为15个,总共需要30个。
另一方面,在本处理中,具有作为最小的变换块尺寸的M×M分量(例如4×4)的尺寸的频域的分割图案对于亮度与色差是公共的。故而,在使用处理对象的频率分量(xC,yC)和查询表CTX_IND_MAP[index]来计算处理对象的频率分量(xC,yC)的上下文索引ctxIdx的情况下,能使对于亮度和色差而使用的查询表公共化。因此,较之于比较例的30个,查询表CTX_IND_MAP[index]中所含的要素数变为15个,因此能谋求查询表所需的存储器尺寸的减小。
(频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例9)
在频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例9中,按照具有作为最小的变换块尺寸的M×M分量(例如4×4)的尺寸的频域的分割图案对于亮度与色差是公共的方式将频域分割为子组,导出与各子组对应的上下文索引。使用图90~91、图85、图86来说明该情况。
首先,在处理对象的频域为给定的尺寸以下的情况下,频率分类部124a基于处理对象的频率分量的位置(xC,yC)来进行到子组R0~R8的分类处理。
(1)在满足xC<width/2,且,yC<height/2的情况下,根据以下的(1-a)~(1-d)的条件而分类至子组R0~R3。
(1-a)在xC<width/4,且,yC<height/4的情况下,分类至子组R0。
(1-b)在xC≥width/4,且,yC<height/4的情况下,分类至子组R1。
(1-c)在xC<width/4,且,yC≥height/4的情况下,分类至子组R2。
(1-d)在xC≥width/4,且,yC≥height/4的情况下,分类至子组R3。
(2)在xC≥width/2,且,yC<height/2的情况下,根据以下的(2-a)~(2-b)的条件而分类至子组R4或R5。
(2-a)在xC<width×3/4的情况下,分类至子组R4。
(2-b)在xC≥width×3/4的情况下,分类至子组R5。
(3)在xC<width/2,且,yC≥height/2的情况下,根据以下的(3-a)~(3-b)的条件而分类至子组R6或R7。
(3-a)在yC<height×3/4的情况下,分类至子组R6。
(3-b)在yC≥height×3/4的情况下,分类至子组R7。
(4)在xC≥width/2,且,yC≥height/2的情况下,分类至子组R8。
在此width是对象频域的横向宽度(4×4时为4)。另外,height是对象频域的纵向宽度(4×4时为4)。
此外,将上述分类处理应用于4×4分量的例子如图85(a)所示。图85(a)是表示构成具有4×4分量的尺寸的频域的区域(也称为子区域或子组)R0~R8的图。
接下来,在处理对象的频域为给定的尺寸以下的情况下,位置上下文导出部124b对由频率分类部124a分类出的子组分配对应的上下文索引。
具体而言,亮度和色差的上下文索引ctxIdx(i)通过下式来导出。
ctxIdx(i)=(cIdx==0)?i:i+offsetClr
此外,i表征用于识别子组Ri的编号,offsetClr是用于识别亮度和色差的上下文索引的偏移,优选是4×4变换块~32×32变换块的亮度的上下文索引的总数。另外,cIdx是用于识别亮度和色差的变量,在亮度的情况下,cIdx=0,在色差的情况下,cIdx=1。
关于亮度,通过上式而导出的与4×4分量的各子组Ri对应的上下文索引ctxIdx(i)如图86(a)所示。另外,关于色差,在设为offsetClr=20的情况下通过上式而导出的与4×4分量的各子组Ri对应的上下文索引ctxIdx(i)如图86(c)所示。
另外,关于4×4分量,能通过图90(a)所示的伪代码来表征频率分类部124a所执行的频率分类处理和位置上下文导出部124b所执行的上下文导出处理。即,在图90(a)所示的伪代码中,使用根据处理对象的频率分量(xC,yC)而确定的索引值index和查询表CTX_IND_MAP[index],计算了处理对象的频率分量(xC,yC)的上下文索引ctxIdx。
根据处理对象的频率分量(xC,yC)而确定的索引值index表征横向扫描了频率分量的顺序(开始值为0),通过下式来进行计算。
index=(yC<<2)+x
接下来,上下文索引ctxIdx通过下式来导出。
ctxIdx=CTX_IND_MAP[index]
另外,在色差的情况下,对通过上述的式子而计算出的上下文索引ctxIdx相加给定的偏移offsetClr,来导出上下文索引。即,
ctxIdx=ctxIdx+offsetClr
图90(c)是表示图90(a)所示的伪代码中的CTX_IND_MAP[index]的一例的图,图86(a)示出了对图90(a)所示的伪代码使用了图90(c)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的亮度相关的各上下文索引的值。另外,图86(c)示出了对图90(a)所示的伪代码使用了图90(c)的CTX_IND_MAP[index]的情况下所得到的与4×4分量的色差相关的各上下文索引。此外,在图86(a)所示的例子中,对位于最高频分量侧的频率分量(图86(a)中为网状线的频率分量),不导出上下文索引(图86(c)中也同样)。此外,尽管在说明上将用于识别亮度和色差的上下文索引的偏移offsetClr设为offsetClr=20,并将色差的上下文索引图示于图86(c),但并不限于此。offsetClr优选是4×4变换块~32×32变换块的亮度的上下文索引的总数。
以上,在本处理中,具有作为最小的变换块尺寸的M×M分量(例如4×4)的尺寸的频域的分割图案对于亮度与色差是公共的。故而,在使用处理对象的频率分量的位置(xC,yC)和查询表CTX_IND_MAP[index]来计算处理对象的频率分量(xC,yC)的上下文索引ctxIdx的情况下,能使对于亮度与色差而使用的查询表公共化。因此,较之于比较例的30个,查询表CTX_IND_MAP[index]中所含的要素数变为15个,因此能谋求查询表所需的存储器尺寸的减小。
(频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例10)
在频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例9~10中,针对按照具有作为最小的变换块尺寸的M×M分量(例如4×4)的尺寸的频域的分割图案对于亮度与色差而言成为公共的方式将频域分割为子组来对各子组导出个别的上下文索引的例子、或者使用处理对象的频率分量的位置(xC,yC)和查询表来导出处理对象的频率分量(xC,yC)的上下文索引ctxIdx的例子进行了说明。以下,说明不使用查询表而通过利用了处理对象的频率分量的位置(xC,yC)的运算式来导出上下文索引的例子。
在处理对象的频域为给定的尺寸以下的情况下,位置上下文导出部124b使用以下的式(eq.e1)来导出处理对象的频率分量(xC,yC)的上下文索引ctxIdx,并将其导出结果ctxIdx提供给频率分类部124a。
ctxIdx=xC+yC…(eq.e1)
此外,在色差的情况下,对通过式(eq.e1)而导出的ctxIdx相加用于识别亮度和色差的上下文索引的给定的偏移offsetClr。即,
ctxIdx=ctxIdx+offsetClr
此外,offsetClr优选是4×4变换块~32×32变换块的亮度的上下文索引的总数。
关于亮度,应用了式(eq.e1)的情况下所导出的4×4分量的上下文索引的例子如图92(a)所示。如图92(a)所示,关于频域,从DC朝着高频分量,被分割成波状(带状)的子区域,而且与各子区域对应的上下文索引ctxIdx被导出。如此,从DC朝着高频分量而分割为波状的图案是非零系数的发生频度的分布形状好的近似,能对非零系数的发生频度成为相同程度的频率分量分配公共的上下文索引。此外,在图92(a)所示的例子中,对位于最高频分量侧的频率分量(图92(a)中为网状线的频率分量)不导出上下文索引(图92(b)~(d)、图93(a)~(f)、图94(a)~(d)、图95(a)~(d)中也同样)。
接下来,频率分类部124a将由位置上下文导出部124b导出的上下文索引ctxIdx分配给处理对象的频率分量(xC,yC)。
以上,在本处理中,通过使用利用了表征处理对象的频率分量的位置的xC和yC的运算式,从而不仅能将频域分割为多个子区域,而且还能导出与各子区域对应的上下文索引。故而,能简化上下文索引的导出处理。
此外,在位置上下文导出部124b中,用于处理对象的频率分量(xC,yC)的上下文索引ctxIdx的导出的式子不限于式(eq.e1)。例如,可以使用以下的式(eq.e2)来导出上下文索引。
ctxIdx=(xC+yC+a)>>b…(eq.e2)
在此,在式(eq.e2)中,若设a=1,b=1,则关于4×4分量,导出图92(b)所示的亮度的上下文索引。
另外,在式(eq.e2)中,若设a=0,b=1,则关于4×4分量,导出图92(c)所示的亮度的上下文索引。
另外,可以取代式(eq.e1)而使用式(eq.e3)来导出上下文索引。
ctxIdx=(xC+yC>th)?d:xC+yC…(eq.e3)
在此,在式(eq.e3)中,若设th=3,d=4,则关于4×4分量,导出图92(d)所示的亮度的上下文索引。
另外,可以取代式(eq.e1)而使用下式(eq.f1)来导出上下文索引。
ctxIdx=max(xC,yC)…(eq.f1)
将式(eq.f1)应用于4×4分量的情况下所导出的亮度的上下文索引的例子如图93(a)所示。如图93(a)所示,关于频域,从DC朝着高频分量被分割成逆L字型的子区域,而且与各子区域对应的上下文索引ctxIdx被导出。如此,从DC朝着高频分量而分割为逆L字型的图案是非零系数的发生频度的分布形状好的近似,能对非零系数的发生频度成为相同程度的频率分量分配公共的上下文索引。
另外,可以取代式(eq.f1)而使用式(eq.f2)来导出上下文索引。
ctxIdx=(xC+yC>th)?a:max(xC,yC)…(eq.f2)
在此,在式(eq.f2)中,若设th=3,a=4,则关于4×4分量,导出图93(b)所示的亮度的上下文索引。
另外,在式(eq.f2)中,若设th=4,a=4,则关于4×4分量,导出图93(c)所示的亮度的上下文索引。
另外,可以取代式(eq.e1)而使用式(eq.f3)来导出上下文索引。
ctxIdx=((xC>>1)+(yC>>1)>th)?a:max(xC,yC)…(eq.f3)
在此,在式(eq.f3)中,若设th=1,a=4,则关于4×4分量,导出图93(d)所示的亮度的上下文索引。
另外,可以取代式(eq.e1)而使用式(eq.f4)来导出上下文索引。
ctxIdx=((xC>>1)+(yC>>1)>th)?
a:yC<(height/2)?max(xC,yC):max(xC,yC)+b…(eq.f4)
在此,在式(eq.f4)中,若设th=1,a=6,b=2,height=4,则关于4×4分量,导出图93(e)所示的亮度的上下文索引。图93(e)所示的4×4分量的分割图案能表现图60(a)所示的4×4分量的频率分量的分割图案。
另外,图93(e)所示的4×4分量的亮度的上下文索引还能使用式(eq.f5)来表征。
X=xC>>(log2TrafoWidth-2)
Y=yC>>(log2TrafoHeight-2)
ctxIdx=((X>>1)+(Y>>1)>th)?
a:(Y<(1<<(log2TrafoHeight-2)))?max(X,Y):max(X,Y)+b···(eq.f5)
此外,在式(eq.f5)中,log2TrafoWidth表征变换块的横向宽度的对数值(4×4的情况下为2),log2TrafoHeight表征变换块的纵向宽度的对数值(4×4的情况下为2)。在关于4×4分量来导出图93(e)所示的亮度的上下文索引的情况下,在式(eq.f5)中,设th=1,a=6,b=2即可。此外,在应用于8×8分量的情况下,对通过式(eq.f5)而导出的上下文索引ctxIdx相加用于识别4×4分量和8×8分量的上下文索引的给定的偏移offsetBlk。即,
ctxIdx=ctxIdx+offsetBlk
在此,若设offsetBlk=7,则关于亮度,还能表现图62(b)所示的8×8分量的频率分量的分割图案和上下文索引。
另外,可以取代式(eq.f4)而使用式(eq.f6)来导出上下文索引。
ctxIdx=((xC>>1)+(yC>>1)>th)?
a:(xC<width/2)?max(xC,yC):max(xC,yC)+b…(eq.f6)
在此,在式(eq.f6)中,若设th=1,a=6,b=2,width=4,则导出图93(f)所示的上下文索引。图93(f)所示的4×4分量的分割图案能表现图60(a)所示的4×4分量的频率分量的分割图案。
另外,图93(f)所示的4×4分量的亮度的上下文索引还能使用式(eq.f7)来表征。
X=xC>>(log2TrafoWidth-2)
Y=yC>>(log2TrafoHeight-2)
ctxIdx=((X>>1)+(Y>>1)>th)?
a:(X<(1<<(log2TrafoWidth-1)))?max(X,Y):max(X,Y)+b…(eq.f7)
此外,在式(eq.f7)中,log2TrafoWidth表征变换块的横向宽度的对数值(4×4的情况下为2),log2TrafoHeight表征变换块的纵向宽度的对数值(4×4的情况下为2)。在关于4×4分量来导出图93(f)所示的上下文索引的情况下,在式(eq.f7)中,设th=1,a=6,b=2即可。此外,在应用于8×8分量的情况下,对通过式(eq.f7)而导出的上下文索引ctxIdx相加用于识别4×4分量和8×8分量的上下文索引的给定的偏移offsetBlk。
ctxIdx=ctxIdx+offsetBlk
在此,若设offsetBlk=7,则能表现图60(b)所示的8×8分量的频率分量的分割图案。
另外,在非零系数的发生频度向水平方向频率分量偏倚的情况下,还可以取代式(eq.e1)而使用以下的式(eq.g1)来导出上下文索引。
ctxIdx=((xC+yC+a)>>b)+((yC>xC)*c)…(eq.g1)
在此,在式(eq.g1)中,若设a=1,b=1,c=3,则关于4×4分量,导出图94(a)所示的亮度的上下文索引。此外,在式(eq.g1)中,(A>B)表征如下运算:在A大于B的情况下返1,在除此以外的情况下返0。
另外,可以取代式(eq.e1)而通过式(eq.g2)来导出上下文索引。
ctxIdx=(xC+yC>th)?d:((xC+yC+a)>>b)+((yC>xC)*c)…(eq.g2)
在此,在式(eq.g2)中,若设th=3,a=1,b=1,c=3,d=3,则关于4×4分量,导出图94(b)所示的亮度的上下文索引。
另外,在式(eq.g2)中,若设th=4,a=1,b=1,c=3,d=3,则关于4×4分量,导出图94(c)所示的亮度的上下文索引。
另外,可以取代式(eq.g2)而使用式(eq.g3)来导出上下文索引。
ctxIdx=(xC+2*yC+1)>>1…(eq.g3)
关于4×4分量,在应用了式(eq.g3)的情况下,导出图94(d)所示的上下文索引。
另外,在非零系数的发生频度向垂直方向频率分量偏倚的情况下,可以取代式(eq.e1)而使用以下的式(eq.h1)来导出上下文索引。
ctxIdx=((xC+yC+a)>>b)+((xC>yC)*c)…(eq.h1)
在此,在式(eq.h1)中,若设a=1,b=1,c=3,则关于4×4分量,导出图95(a)所示的亮度的上下文索引。
另外,可以取代式(eq.h1)而通过式(eq.h2)来导出上下文索引。
ctxIdx=(xC+yC>th)?d:((xC+yC+a)>>b)+((xC>yC)*c)…(eq.h2)
在此,在式(eq.h2)中,若设th=3,a=1,b=1,c=3,d=3,则关于4×4分量,导出图95(b)所示的亮度的上下文索引。
另外,在式(eq.g2)中,若设th=4,a=1,b=1,c=3,d=3,则关于4×4分量,导出图95(c)所示的亮度的上下文索引。
另外,可以取代式(eq.h1)而使用式(eq.h3)来导出上下文索引。
ctxIdx=(2*xC+yC+1)>>1…(eq.h3)
关于4×4分量,在应用了式(eq.g3)的情况下,导出图95(d)所示的上下文索引。
以上,在本处理中,通过利用了表征处理对象的频率分量的位置的xC和yC的运算式,不仅能将频域分割为多个子区域,而且能导出与各子区域对应的上下文索引。故而,能谋求上下文索引的导出处理、以及上下文索引导出所涉及的存储器尺寸的削减。
(系数有无标志解码部的变形例1)
本实施方式所涉及的系数有无标志解码部不限于上述的构成。以下,参考图39~图42来说明第1变形例所涉及的系数有无标志解码部124’。
图39是表示本变形例所涉及的系数有无标志解码部124’的构成的图。如图39所示,系数有无标志解码部124’是与图23所示的变换系数有无标志解码部124大致同样的构成,但以下的点不同。
·系数有无标志解码部124’不具备周边参考上下文导出部124c。
·系数有无标志解码部124’具备子块周边参考上下文导出部124f。
系数有无标志解码部124’的其他的构成与系数有无标志解码部124同样,因此省略说明,以下,说明子块周边参考上下文导出部124f。
(子块周边参考上下文导出部124f)
子块周边参考上下文导出部124f参考与该处理对象的子块相邻的子块,即子块系数有无标志significant_coeffgroup_flag解码完毕的子块,来导出对处理对象的子块中所含的各频率分量分配的上下文索引。另外,子块周边参考上下文导出部124f对处理对象的子块中所含的各频率分量分配公共的上下文索引。
更具体而言,若设子块的处理顺序为反向扫描顺序,则子块周边参考上下文导出部124f基于对相邻子块(xCG+1,yCG)以及相邻子块(xCG,yCG+1)所分配的子块系数有无标志的值的总和ctxCnt,通过以下的式(eq.B1)来导出在对子块(xCG,yCG)中所含的significant_coeff_flag[xC][yC]进行参考时所使用的上下文索引。
ctxCnt=(significant_coeffgroup_flag[xCG+1][yCG]!=0)+(significant_coeffgroup_flag[xCG][yCG+1]!=0)…(eq.B1)
ctxIdx=offset+ctxCnt
在此,(eq.B1)中的各项在()内的比较为真的情况下取1,在()内的比较为假的情况下取0。另外,在进行参考的相邻子块(xCG+1,yCG)、或相邻的子块(xCG,yCG+1)的任一者位于变换块的外侧的情况下,将相应的位置的子块系数有无标志的值作为0进行处理。
若将式(eq.B1)中的变量offset的值假定为零,则如此导出的ctxIdx取以下的值。
·ctxIdx=0…子块(xCG+1,yCG)以及子块(xCG,yCG+1)的每一者中均不存在非零变换系数。
·ctxIdx=1…子块(xCG+1,yCG)以及子块(xCG,yCG+1)的其中一者中存在非零变换系数。
·ctxIdx=2…子块(xCG+1,yCG)以及子块(xCG,yCG+1)的两者中存在非零变换系数。
另外,如此导出的ctxIdx在对对象子块(xCG,yCG)中所含的全部的significant_coeff_flag进行解码时被公共使用。
图40示出了由本变形例所涉及的子块周边参考上下文导出部124f参考的相邻子块(xCG+1,yCG)以及相邻子块(xCG,yCG+1)。
图41是表示子块周边参考上下文导出部124f所执行的上下文索引导出处理的伪代码。图41所示的R0、R1、R2例如是指图26(a)所示,图41所示的伪代码能适合应用于在对与亮度Y相关的significant_coeff_flag进行解码时所参考的上下文索引的导出处理。
图42是表示子块周边参考上下文导出部124f所执行的上下文索引导出处理的其他的例子的伪代码。图42所示的R0、R1例如是指图26(b)所示,图42所示的伪代码能适合应用于在对与色差U、V相关的significant_coeff_flag进行解码时所参考的上下文索引的导出处理。
图74是表示子块周边参考上下文导出部124f所执行的上下文索引导出处理的伪代码。图74所示的R0、R1、R2例如是指图24所示,图74所示的伪代码能适合应用于在对与亮度Y相关的significant_coeff_flag进行解码时所参考的上下文索引的导出处理。
根据本变形例所涉及的子块周边参考上下文导出部124f,不进行以频率分量为单位的周边参考上下文导出处理,对子块中所含的各频率分量分配公共的上下文索引,因此处理量得以削减。另外,以子块为单位的上下文索引导出处理是参考相邻子块中的significant_coeffgroup_flag的值来进行的,因此能导出与对象子块的周边存在的非0变换系数的数目相应的上下文索引。
因此,根据本变形例所涉及的子块周边参考上下文导出部124f,能在维持高的编码效率的同时,削减上下文索引导出处理的处理量。
(系数有无标志解码部的变形例2)
以下,参考图43来说明系数有无标志解码部的第2变形例。
图43是表示本变形例所涉及的系数有无标志解码部124”的构成的框图。如图43所示,系数有无标志解码部124”除了图23所示的变换系数有无标志解码部124的各部之外,还具备子块周边参考上下文导出部124f。
已对子块周边参考上下文导出部124f进行了说明,因此在此省略说明。
本变形例所涉及的子块周边参考上下文导出部124f在导出对与色差U、V相关的significant_coeff_flag进行解码时所参考的上下文索引时,进行由图42的伪代码表征的处理,在导出对与亮度Y相关的significant_coeff_flag进行解码时所参考的上下文索引时,进行由图27的伪代码表征的处理。
基于这样的构成,也能在维持高的编码效率的同时,削减上下文索引导出处理的处理量。
(系数有无标志解码部124的变形例3)
以下,参考图96来说明系数有无标志解码部124的第3变形例。以下说明的系数有无标志解码部124的第3变形例关于系数有无标志的上下文索引导出,具有如下特征:
(1)在处理对象的TU尺寸为给定尺寸以下的情况下,通过利用了表征处理对象的频率分量的位置的xC和yC的运算式,从而将频域分割为多个子区域,而且导出与各子区域对应的亮度以及色差的上下文索引,
(2)在处理对象的TU尺寸大于给定尺寸的情况下,当处理对象的频率分量的位置属于低频分量以及中频分量时,基于位于处理对象的周边的非零系数的个数来导出上下文索引,当属于高频分量时,分配固定的上下文索引。
图96是表示系数有无标志解码部124的第3变形例的构成例的框图。如图96所示,系数有无标志解码部124具备:上下文导出部124z、系数有无标志存储部124d、以及系数有无标志设定部124e。进而,上下文导出部124z具备:导出方法控制部124x、位置上下文导出部124b、周边参考上下文导出部124c。此外,在图96中,对于上下文导出部124z,以导出方法控制部124x内置有位置上下文导出部124b以及周边参考上下文导出部124c的形式进行了记载,但这只是例示。上下文导出部124z不限于这样的构成。
(上下文导出部124z)
(导出方法控制部124x)
对导出方法控制部124x输入处理对象的频率分量的位置(xC,yC)以及变换块的对数值(log2TrafoWidth,log2TrafoHeight)。根据对数值的尺寸,通过(1<<log2TrafoWidth)和(1<<log2TrafoHeight)来计算频域的宽度width和高度height。此外,可以不是对数值的尺寸,而直接输入频域的宽度和高度。
导出方法控制部124x根据作为对象的TU尺寸以及频率分量的位置,来选择位置上下文导出部124b、周边参考上下文导出部124c。在所选择的各上下文导出部中导出上下文索引ctxIdx。
例如,在TU尺寸为给定的尺寸以下的情况(例如,为4×4TU、8×8TU的情况)下,导出方法控制部124x选择位置上下文导出部124b,并将由选择出的位置上下文导出部124b导出的上下文索引ctxIdx分配给该解码对象的频率分量。
另一方面,在作为对象的TU尺寸大于给定的尺寸的情况(例如,为16×16TU、32×32TU的情况等)下,导出方法控制部124x根据解码对象的频率分量在频域上的位置,将该频率分量分类至多个部分区域的任一者,并根据分类出的部分区域,选择位置上下文导出部124b以及周边参考上下文导出部124c的任一者,且将由选择出的任一者的上下文导出机构导出的上下文索引ctxIdx分配至该解码对象的频率分量。
图98(a)是表示在本处理例中由导出方法控制部124x分割出的部分区域R0~R2的图,图98(a)在对亮度以及色差相关的变换系数进行解码时适合应用。
导出方法控制部124x使用频域中所含的各频率分量在该频域上的位置(xC,yC),例如根据以下的条件将该频率分量分类至多个部分区域R0~R2。此外,xCG,yCG表征子块位置。
(1)将满足xC+yC<THLo的频率分量分类至部分区域R0。
(2)将满足xC+yC>=THLo,且,xCG+yCG<THHi的频率分量分类至部分区域R1。
(3)将满足xCG+yCG>=THHi的频率分量分类至部分区域R2。
在此,阈值THlo例如适合通过以下的式(eq.A2-1)来设定。另外,阈值THhi例如适合通过以下的式(eq.A2-2)来设定。
THlo=2……(eq.A2-1)
THhi=(3*max(width,height)>>4)…(eq.A2-2)
此外,发明者们通过实验确认了如下事实:将频域分割为部分区域R0~R2,关于部分区域R0和R1,通过周边参考来导出上下文索引的情况下,上述阈值(eq.A2-1)的设定从编码效率的观点出发是适合的。
此外,部分区域的分类条件不限于上述,也可以设为以下的条件(图98(b))所示。
(1)将满足xCG+yCG<THLo的频率分量分类至部分区域R0。
(2)将满足xCG+yCG>=THLo,且,xCG+yCG<THHi的频率分量分类至部分区域R1。
(3)将满足xCG+yCG>=THHi的频率分量分类至部分区域R2。
在此,阈值THlo优选设为THlo=1。阈值THhi与式(eq.A2-2)同样。
此外,以下,例示地,将图98(a)(b)所示的属于区域R0的频率分量称为低频分量,将属于区域R1的分量称为中频分量,将属于区域R2的分量称为高频分量。
若将以上的上下文索引导出处理与图26(a)的导出处理进行比较,则在图26(a)中,在低频分量,存在将位置上下文的部分区域与周边参考的部分区域加以区分的分支(将图26(a)的R0与R1加以区分的分支)、以及将周边参考的部分区域彼此加以区分的分支(将图26(a)的R1与R2加以区分的分支)这2个分支,与之相对,在图9中,能只设将周边参考的部分区域彼此加以区分的分支(将图26的R0与R1加以区分的分支)这1个分支,从而起到简化上下文导出处理的效果。尤其是通过对于DC分量的上下文索引也设为周边参考,起到能避免对DC分量进行与其他的分量不同的处理这样的效果。尤其是通过在把将低频分量的周边参考的部分区域彼此加以区分的分支(将图98的R0与R1加以区分的分支)的位置设定为阈值(eq.A2-1)的同时应用本处理,能维持编码效率不变地进行简化。另外,存在编码效率较之于单纯的图26(b)更高这样的效果。
进而,通过使频域的分割以及上下文索引导出机构的选择方法对于亮度以及色差而言公共化,从而无需对于亮度和色差设置不同的分支的设定,因此能简化系数有无标志所涉及的上下文索引导出处理。
此外,不限于上述,导出方法控制部124x即使是针对4×4TU~32×32TU的TU尺寸来执行公共的上下文索引ctxIdx导出处理的构成也没有关系。即,导出方法控制部124x可以是如下构成:与TU的尺寸无关地,固定地选择位置上下文导出部124b、以及周边参考上下文导出部124c的任一者。
(位置上下文导出部124b)
位置上下文导出部124b将针对对象频率分量的上下文索引ctxIdx基于该对象频率分量在频域上的位置来导出。此外,在与频率分量的位置无关地导出成为固定值的上下文索引ctxIdx的情况下,也由位置上下文导出部124b来执行。
位置上下文导出部124b在处理对象的TU尺寸大于给定的尺寸的情况下,位置上下文导出部124b在对象频率分量(xC,yC)所属的子块的位置(xCG,yCG)所表征的xCG+yCG为给定的阈值THhi以上的情况(图98(a))所示的属于部分区域R2的频率分量,使用以下的式(eq.A2-3)来导出上下文索引ctxIdx,并将其导出结果ctxIdx提供给导出方法控制部124x。
ctxIdx=sigCtxOffsetR2…(eq.A2-3)
此外,上述式(eq.A2-3)中,sigCtxOffsetR2是表征与属于部分区域R2的频率分量相关的上下文索引的开始点的给定的常数。
在处理对象的TU尺寸为给定的尺寸以下的情况下,位置上下文导出部124b基于对象频率分量的位置(xC,yC)来使用图60所示的上下文索引的分配方法。以下,针对图60所示的上下文索引分配方法,使用图100进行参考来说明细节。
图100(a)示出4×4TU以及8×8TU的各系数位置和相对上下文索引(子区域的识别编号)的对应表CTX_GRP_TBL[X][Y]。
(利用了表的上下文索引导出)
位置上下文导出部124b通过被分配的相对上下文索引的值ctxGrpIdx、以及每个TU尺寸的给定的偏移值baseCtx,来导出上下文索引ctxIdx。此外,在8×8TU的情况下,置换成对象频率分量的位置(xC,yC)所属的2×2子块的位置(xC>>1,yC>>1)来解释。即,
X=log2TrafoWidth==2?xC∶xC>>1
Y=log2TrafoHeigt==2?yC∶yC>>1
ctxGrpIdx=CTX_GRP_TBL[X][Y]…(eq.A2-4)
ctxIdx=ctxGrpIdx+baseCtx…(eq.A2-5)
在此,变量baseCtx表征各TU的上下文索引的开始点。
(逻辑性的上下文索引导出)
此外,相对上下文索引的值ctxGrpIdx的导出不限于使用图100(a)所示的系数位置(X,Y)和相对上下文索引的对应表(查询表CTX_GRP_TBL[X][Y])来导出的式(eq.A2-4),还可以使用以下那样的逻辑性的导出方法。在此情况下,位置上下文导出部124b使用系数位置(X,Y)的以下所示的各比特x0,x1,y0,y1的值来导出。
x0=(X&1)…X的低位1比特(低位第1比特)
x1=(X&2)>>1…X的高位1比特(低位第2比特)
y0=(Y&1)…Y的低位1比特(低位第1比特)
y1=(Y&2)>>1…Y的高位1比特(低位第2比特)
以下,说明x0,x1,y0,y1所执行的相对上下文索引ctxGrpIdx的导出方法。
图100(b)以比特来表现了图100(a)所示的系数位置和相对上下文索引的对应表CTX_GRP_TBL[X][Y]的各值。此外,系数位置(X,Y)以2比特来表现,相对上下文索引的值以3比特来表现。在此,将相对上下文索引的值ctxGrpIdx的低位第1比特(高位第3比特)设为ctxGrpIdx0,将低位第2比特(高位第2比特)设为ctxGrpIdx1,并将低位第3比特(高位第1比特)设为ctxGrpIdx2。
若关注图100(b),则关于相对上下文索引的值ctxGrpIdx的高位2比特,以下事实是明确的。
·相对上下文索引的值ctxGrpIdx的高位第1比特(低位第3比特:ctxGrpIdx2)与Y的高位1比特(y1)的值相等。即,
ctxGrpIdx2=y1…(eq.A2-6)
·相对上下文索引的值ctxGrpIdx的高位第2比特(低位第2比特:ctxGrpIdx1)与X的高位1比特(x1)的值相等。即,
ctxGrpIdx1=x1…(eq.A2-7)
另外,图100(c)仅表征了图100(b)所示的系数位置和相对上下文索引的对应表CTX_GRP_TBL[X][Y]的各值的低位1比特。若关注图100(c),则相对上下文索引的值ctxGrpIdx的低位第1比特(ctxGrpIdx0)能使用系数位置(X,Y)的各比特x0,x1,y0,y1,并通过x1的否定与y0的逻辑积的值、以及x0与y1的否定的逻辑积的值的逻辑和来表征。即,
ctxGrpIdx0=(!x1&y0)|(x0&!y1)…(eq.A2-8)
在此,运算符‘!’表示否定,运算符‘&’表示比特单位的逻辑积,运算符‘|’表示比特单位的逻辑和(以下,同样)。
由此,与图100(a)所示的系数位置对应的相对上下文索引的各值ctxGrpIdx能使用上述式(eq.A2-6),(eq.A2-7),(eq.A2-8)并通过以下的比特运算来导出。
ctxGrpIdx=(ctxGrpIdx2<<2)|(ctxGrpIdx1<<1)|ctxGrpIdx0…(eq.A2-8)
此外,图100(a)所示的系数位置和相对上下文索引的对应表所示的各相对上下文索引的值的设定不限于图100(a)。例如,如图101所示,能进行对设定x1,y1,z的值的比特位置进行了变更后的6图案的设定。此外,若将图101中的z设为
z=(!x1&y0)|(x0&!y1)…(eq.A2-9)
,则与图100(a)所示的系数位置对应的相对上下文索引的各值通过图101所示的图案0来导出。
此外,可以取代式(eq.A2-9)所示的z而使用通过式(eq.A2-10)所示的逻辑运算所计算的z。在此情况下,与符合图101的图案0的系数位置(X,Y)对应的相对上下文索引的各值如图102(a)所示。
z=((x0^x1)&!y1)|((y0^y1)&!x1)…(eq.A2-10)
在此,运算符‘^’表征比特单位的异或(以下,同样)。
另外,可以取代式(eq.A2-9)所示的z而使用通过式(eq.A2-11)所示的逻辑运算所计算的z。在此情况下,与符合图101的图案0的系数(X,Y)对应的相对上下文索引的各值如图102(b)所示。
z=(!(x0|x1|y0|y1))|((y0&y1)&!x1)|((x0&x1)&!y1)…(eq.A2-11)
另外,可以取代式(eq.A2-9)所示的z而使用通过式(eq.A2-12)所示的逻辑运算所计算的z。在此情况下,与符合图101的图案0的系数(X,Y)对应的上下文组的各值如图102(c)所示。
z=(!(x0|x1|y0|y1))|((!y0&y1)&!x1)|((!x0&x1)&!y1)…(eq.A2-12)
如上所述,在本处理中,通过图60、图100所示的上下文索引导出方法来使4×4分量和8×8分量以及亮度和色差到子组的分类处理公共,从而能维持编码效率不变地,简化上下文索引导出处理。
另外,以上,在图60、图100所示的上下文索引导出方法中,通过利用了表征处理对象的频率分量的位置的xC和yC的各比特的值的比特运算,不仅能容易地将频域分割为多个子区域(相对上下文索引),而且能导出与各子区域对应的上下文索引。故而,能谋求上下文索引的导出处理的简化。在图60、图100所示的上下文索引导出方法中,通过使得处于能以bit0、bit1、bit2的3比特来表现的范围(值处于0~6的范围)、以及将与DC相邻的最低的次数的3个的AC分量分配给1个上下文索引,从而具有较之于后述的图85的导出方法,比特运算的步骤数更少的特征。另外,能以3比特这样少的比特来表现,意味着在硬件实现方面能使安装容易。
此外,可以不是图60,而使用图70(a)(b)的上下文索引导出方法。在此情况下,关于8×8TU的DC分量,与上述过程无关地分配个别的相对上下文索引。例如,可以取代式(eq.A2_8)而按如下方式来导出上下文索引。
ctxGrpIdx=(xC+yC==0&&log2TrafoWidth==3&&log2TrafoHeight==3)?7:((ctxGrpIdx2<<2)|(ctxGrpIdxl<<1)|ctxGrpIdx0)…(eq.A2-13)
ctxIdx=ctxGrpIdx+baseCtx…(eq.A2-14)
本处理具有较之于图60、图100的上下文索引导出方法,步骤数更多但编码效率更高这样的特征。另外,即使不论DC,就落在0~7的3比特的范围这点来说也能在硬件实现方面使安装容易。
如上所述,在本处理中,通过图70所示的上下文索引导出方法,除DC分量之外,使4×4分量和8×8分量以及亮度和色差到子组的分类处理公共,从而能维持编码效率不变地,简化上下文索引导出处理。
若如上所述,则能像图60、图70(a)(b)所示那样,不仅将频域分割为多个子区域,而且导出与各子区域对应的上下文索引。
此外,在图85所示的上下文索引导出处理的情况下,能通过以下的运算来导出。
ctxGrpIdx=(bit3<<2)|(bit2<<2)|(bit1<<1)|bit0
bit3=(x1&y1)
bit2=(x1&!y1)|(!x1&y1)
bit1=(!x1&y1)|(!x1&!y1&y0)
bit0=(x0&!y1)|(y0&y1&!x1)
如上所述,在本处理中,通过图70所示的上下文索引导出方法,使4×4分量和8×8分量以及亮度和色差到子组的分类处理公共,能维持编码效率不变地,简化上下文索引导出处理。
本导出方法具有如下特征:由于处于能以bit0、bit1、bit2、bit3的4比特来表现的范围(值处于0~8的范围),因此较之于图60、图100的上下文索引导出方法,需要确定多于1比特的比特,从而步骤数更多,但编码效率更高。此外,图30(c)的比较例中的上下文索引导出方法虽然同样处于4比特的范围,但由于2和3的位置并非对象,6和8的位置并非对象,且10(DC)和7的位置特殊,因此在逻辑运算中,较之于图85的导出方法需要更多的步骤数,极其复杂。
(周边参考上下文导出部124c)
周边参考上下文导出部124c将与解码对象的频率分量相应的上下文索引ctxIdx,基于针对该频率分量的周边的频率分量解码完毕的非0变换系数的数目cnt,来进行导出。更具体而言,在对象频率分量的位置(xC,yC)或者对象频率分量所属的子块的位置(xCG,yCG)满足以下条件的情况下,周边参考上下文导出部124c根据变换系数的位置,使用不同的参考位置(模板)来导出解码完毕的非0变换系数的数目cnt。
(1)在满足xC+yC<THLo的情况下…图98(a)所示的部分区域R0
(2)在满足xC+yC>=THlo,且,xCG+yCG<THhi的情况下…图98(a)所示的部分区域R1
在此,阈值THlo通过上述的式(eq.A2-1)来设定,THhi通过上述的式(eq.A2-2)来设定即可,但并不限于此。
在上述的条件下,周边参考上下文导出部124c根据变换系数的位置,使用不同的参考位置(模板)来导出解码完毕的非0变换系数的数目cnt。另外,周边参考上下文导出部124c基于如此导出的解码完毕的非0变换系数的数目cnt来导出上下文索引ctxIdx。
以下,以子块内扫描为“斜向扫描”的情况为例来进行说明。
[子块内扫描为斜向扫描的情况(图99(d)]
在子块内扫描为斜向扫描的情况下,周边参考上下文导出部124c如下所述,根据变换系数的位置,使用不同的参考位置(模板)来导出解码完毕的非0变换系数的数目cnt。图99(a)是表示在子块内扫描为斜向扫描的情况下,子块内的频率分量上的位置与要选择的模板的关系的图。在4×4分量的子块中,位置所示的标示为(b)的情况下,使用图99(b)所示的模板,在标示为(c)的情况下,使用图99(c)所示的模板。图99(b)(c)表示模板的形状。即,表示参考频率分量(例如,c1、c2、c3、c4、c5)与对象频率分量x的相对位置。图99(d)是表征4×4子块中的斜向扫描的扫描顺序(反向扫描顺序)的图。
在变换系数的位置(xC,yC)满足以下的式(eq.A3)的情况,即,变换系数的位置为子块的左上或者变换系数的位置为子块的右下的满足上述一个以上的情况下、与除此以外的情况下,处理是不同的。
((xC&3)==0&&(yC&3)==0)||((xC&3)==3&&(yC&3)==2)…(eq.A3)
此外,在上述式(eq.A3)中,运算符‘&’是取比特单位的逻辑和的运算符,‘&&’是表示逻辑积的运算符,‘| |’是表示逻辑和的运算符(以下,同样)。
另外,式(eq.A3)还能通过式(eq.A3’)来表现。
((xC%4)==0&&(yC%4)==0)||((xC%4)==3&&(yC%4)==2)…(eq.A3’)
此外,在上述式(eq.A3’)中,“%”是求余数的运算符(以下,同样)。
(非0变换系数的数目cnt的导出)
(满足式(eq.A3)的情况)
在变换系数的位置(xC,yC)满足式(eq.A3)的情况下,使用图99(c)所示的参考频率分量(c1、c2、c4、c5),通过以下的式(eq.A4)来导出非0变换系数的计数数cnt。
cnt=(c1!=0)+(c2!=0)+(c4!=0)+(c5!=0)…(eq.A4)
在此,式(eq.A4)中的各项在()内的比较为真的情况下取1,在()内的比较为假的情况下取0。
(不满足式(eq.A3)的情况)
在变换系数的位置(xC,yC)不满足式(eq.A3)的情况下,使用图99(b)所示的参考频率分量c1~c5,通过以下的式(eq.A5)来计算非0变换系数的数目cnt。
cnt=(c1!=0)+(c2!=0)+(c3!=0)+(c4!=0)+(c5!=0)…eq.A5)
(上下文索引ctxIdx的导出)
接下来,周边参考上下文导出部124c根据变换系数所属的部分区域R0或R1来变更上下文索引的开始点,使用以下的式(eq.A6)导出上下文索引ctxIdx,并将其导出结果ctxIdx提供给导出方法控制部124x。
ctxIdx=sigCtxOffsetRX+Min(2,ctxCnt)…(eq.A6)
在此,ctxCnt通过
ctxCnt=(cnt+1)>>1
来确定。
此外,在式(eq.A6)中,变量sigCtxOffsetRX表征根据变换系数所属的部分区域R0或R1而确定的给定的上下文索引的开始点。在部分区域R0的情况下,设定为变量sigCtxOffsetRX=sigCtxOffsetR0,在部分区域R1的情况下,设定为变量sigCtxOffsetRX=sigCtxOffsetR1。此外,优选使sigCtxOffsetR0与sigCtxOffsetR1的值彼此不同。
在式(eq.A4)中,使得不参考作为对象的变换系数的位置的、依照处理顺序而位于紧前(在处理顺序为反向扫描顺序的情况下,作为对象的变换系数的位置的下侧)的座标(c3)的变换系数。这样的处理能不参考近前的系数有无标志的值而进行用于某位置的系数有无标志的解码的上下文导出,因此能并行地处理上下文导出处理与解码处理。
(系数有无标志设定部124e)
系数有无标志设定部124e对从比特解码部132提供的各Bin进行解释,来设定语法significant_coeff_flag[xC][yC]。所设定的语法significant_coeff_flag[xC][yC]被提供给解码系数存储部126。
在对象频域被分割为子块的情况下,系数有无标志设定部124e参考对对象子块所分配的语法significant_coeff_group_flag[xCG][yCG],在significant_coeff_group_flag[xCG][yCG]的值为0的情况下,将针对该对象子块中所含的全部的频率分量的significant_coeff_flag[xC][yC]设定为0。
(系数有无标志存储部124d)
在系数有无标志存储部124d中存放语法significant_coeff_flag[xC][yC]的各值。系数有无标志存储部124d中所存放的语法significant_coeff_flag[xC][yC]的各值由周边参考上下文导出部124c参考。此外,关于在各频率分量的位置(xC,yC)上是否存在非0的变换系数,即使不使用系数有无标志专用的存储部,也能通过参考解码出的变换系数值来进行参考,因此能不设置系数有无标志存储部124d,取而代之地使用解码系数存储部126。
<上下文导出部124z的动作>
图103是表示构成上下文导出部124z的导出方法控制部124x、位置上下文导出部124b和周边参考上下文导出部124c的动作的流程图。
(步骤SA101)
导出方法控制部124x判定TU尺寸是否小于给定尺寸。在判定中例如使用以下的式子。
width+height<THSize
此外,作为阈值THSize,例如使用20。在对阈值THsize使用了20的情况下,判定为4×4TU以及8×8TU小于给定尺寸。将判定为16×4TU、4×16TU、16×16TU、32×4TU、4×32TU、32×32TU为给定尺寸以上。此外,阈值THSize也可以设为0。在此情况下,将判定为4×4TU~32×32TU为给定尺寸以上。
(步骤SA102)
在处理对象的TU尺寸为给定尺寸以上的情况(步骤SA101中为“否”),导出方法控制部124x判定包含对象变换系数在内的子块位置(xCG,yCG)是否为高频分量(例如,是否处于图98(a)所示的部分区域R2)。
(步骤SA103)
在包含对象变换系数在内的子块位置(xCG,yCG)并非高频分量的情况(步骤SA102中为“是”)下,导出方法控制部124x判定对象变换系数的位置(xC,yC)是否为低频分量(例如,是否处于图98(a)所示的部分区域R0)。
(步骤SA104)
在对象变换系数的位置(xC,yC)并非低频分量的情况(步骤SA103中为“是”)下,导出方法控制部124x判定对象变换系数的位置(xC,yC)是否为中频分量,并将变量sigCtxOffsetRX设定为sigCtxOffsetR1。接下来,转移至步骤SA106。
(步骤SA105)
在对象变换系数的位置(xC,yC)为低频分量的情况(步骤SA103中为“是”)下,导出方法控制部124x将变量sigCtxOffsetRX设定为sigCtxOffsetR0。接下来,转移至步骤SA106。
(步骤SA106)
导出方法控制部124x选择周边参考上下文导出部124c作为上下文导出机构,并通过所选择的周边参考上下文导出部124c来导出对象变换系数的上下文索引。
(步骤SA107)
在处理对象的TU尺寸小于给定尺寸的情况(步骤SA101中为“是”),或者,包含对象变换系数的子块为高频分量的情况(步骤SB103中为“是”)下,导出方法控制部124x选择位置上下文导出部124b作为上下文导出机构,并通过所选择的位置上下文导出部124b来导出对象变换系数的上下文索引。
以上,根据系数有无标志解码部124的第3变形例,在处理对象的TU尺寸为给定的尺寸以下的情况下,通过利用了表征处理对象的频率分量的位置的xC和yC的各比特的值的比特运算,能将频域分割为多个子区域(相对上下文索引),而且能导出与各子区域对应的上下文索引。故而,能谋求上下文索引的导出处理的简化、以及上下文索引导出所涉及的存储器尺寸的削减。
另外,在处理对象的TU尺寸大于给定尺寸的情况下,当处理对象的系数有无标志位于高频域时,由位置上下文导出部来导出处理对象的系数有无标志相关的上下文索引,当处理对象的系数有无标志位于低频域以及中频域时,由周边参考上下文导出部来导出处理对象的系数有无标志相关的上下文索引。故而,较之于现有技术,能对低频域内所含的频率分量考虑非零系数的发生频度的偏倚来导出上下文索引,起到削减系数有无标志的码量,以及削减解码所涉及的处理量的效果。
另外,基于系数位置,作为对象的变换系数的位置按照不参考在处理顺序(反向扫描顺序)下位于紧挨之前的座标的变换系数的方式选择了模板。这样的处理能不参考近前的系数有无标志的值而进行用于某位置的系数有无标志的解码的上下文导出,因此起到能并行地处理上下文导出处理与解码处理的效果。
<变换系数解码部120所执行的处理的流程>
以下,参考图44~51来说明变换系数解码部120所执行的变换系数解码处理的流程。
(频域的尺寸为给定的尺寸以下的情况)
图44是表示在频域的尺寸为给定的尺寸以下(例如,4×4分量、8×8分量)的情况下的变换系数解码部120所执行的变换系数解码处理的伪代码。
图45是表示在频域的尺寸为给定的尺寸以下的情况下的变换系数解码部120所执行的变换系数解码处理的流程的流程图。
(步骤S11)
首先,变换系数解码部120所具备的系数解码控制部123选择扫描类型ScanType。
(步骤S12)
接下来,变换系数解码部120所具备的末尾系数位置解码部121对沿正向扫描而表示最后的变换系数的位置的语法last_significant_coeff_x以及last_significant_coeff_y进行解码。
(步骤S13)
接下来,系数解码控制部123开始以子组为单位的循环。在此,子组是指,将对象频域进行分割而得到的1个或多个区域,各子组例如由16个频率分量构成。
(步骤S14)
接下来,变换系数解码部120所具备的系数有无标志解码部124对对象子组内的各非零变换系数有无标志significant_coeff_flag进行解码。
(步骤S15)
接下来,变换系数解码部120所具备的系数值解码部125对对象子组内的非0变换系数的正负号以及大小进行解码。这通过对各语法coeff_abs_level_greateerl_flag、coeff_abs_level_greateer2_flag、coeff_sign_flag,coeff_abs_level_minus3进行解码来执行。
(步骤S16)
本步骤是以子块为单位的循环的终点。
图46是用于更具体地说明选择扫描类型的处理(步骤S11)的流程图。
(步骤S111)
首先,变换系数解码部120所具备的系数解码控制部123判别预测方式信息PredMode是否示出了帧内预测方式MODE_INTRA。
(步骤S112)
在预测方式为帧内预测方式时(步骤S111中为“是”),变换系数解码部120所具备的系数解码控制部123基于帧内预测模式(预测方向)以及对象的TU尺寸(频域的尺寸)来设定扫描类型。具体的扫描类型的设定处理已描述,因此在此省略说明。
另一方面,在预测方式并非帧内预测方式时(步骤S111中为“否”),变换系数解码部120所具备的系数解码控制部123将扫描类型设定为斜向扫描。
图47是用于更具体地说明对非零变换系数有无标志significant_coeff_flag进行解码的处理(步骤S14)的流程图。
(步骤S141)
首先,变换系数解码部120所具备的系数有无标志解码部124获取有末尾系数的子组的位置。
(步骤S142)
接下来,系数有无标志解码部124将对象频域中所含的significant_coeff_flag的值初始化为0。
(步骤S143)
接下来,系数有无标志解码部124开始以子组为单位的循环。在此,该循环是从有末尾系数的子组起开始的循环,即,以反向扫描顺序来扫描子组的循环。
(步骤S144)
接下来,系数有无标志解码部124开始对象子组内的循环。该循环是以频率分量为单位的循环。
(步骤S145)
接下来,系数有无标志解码部124获取变换系数的位置。
(步骤S146)
接下来,系数有无标志解码部124判别已获取的变换系数的位置是否为末尾位置。
(步骤S147)
在已获取的变换系数的位置并非末尾位置时(步骤S146中为“否”),系数有无标志解码部124对变换系数有无标志significant_coeff_flag进行解码。
(步骤S148)
该步骤是子组内的循环的终点。
(步骤S149)
接下来,系数有无标志解码部124对子组内的各非0变换系数的正负号以及大小进行解码。
(步骤S150)
该步骤是子组的循环的终点。
(频域的尺寸大于给定的尺寸的情况)
图48是表示在频域的尺寸大于给定的尺寸的(例如,16×16分量、32×32分量)情况下的变换系数解码部120所执行的变换系数解码处理的伪代码。
图49是表示在频域的尺寸大于给定的尺寸的情况下的变换系数解码部120所执行的变换系数解码处理的流程的流程图。
(步骤S21)
首先,变换系数解码部120所具备的系数解码控制部123选择扫描类型ScanType。这是与上述的步骤S11同样的处理。
(步骤S22)
接下来,变换系数解码部120所具备的末尾系数位置解码部121对沿正向扫描而表示最后的变换系数的位置的语法last_significant_coeff_x以及last_significant_coeff_y进行解码。
(步骤S23)
接下来,系数解码控制部123开始以子块为单位的循环。
(步骤S24)
接下来,变换系数解码部120所具备的子块系数有无标志解码部127对子块系数有无标志significant_coeffgroup_flag进行解码。
(步骤S25)
该循环是以子块为单位的循环的终点。
(步骤S26)
接下来,系数解码控制部123开始以子块为单位的循环。
(步骤S27)
接下来,变换系数解码部120所具备的系数有无标志解码部124对对象子块内的各非零变换系数有无标志significant_coeff_flag进行解码。
(步骤S28)
接下来,变换系数解码部120所具备的系数值解码部125对对象子组内的非0变换系数的正负号以及大小进行解码。这是通过对各语法coeff_abs_level_greateer1_flag、coeff_abs_level_greateer2_flag、coeff_sign_flag,coeff_abs_level_minus3进行解码来执行的。
(步骤S29)
本步骤是以子块为单位的循环的终点。(步骤S26的以子块为单位的循环的终点)
图50是用于更具体地说明对子块系数有无标志进行解码的处理(步骤S24)的流程图。
(步骤S241)
首先,变换系数解码部120所具备的系数有无标志解码部124获取有末尾系数的子块的位置。
(步骤S242)
接下来,系数有无标志解码部124对对象频域中所含的子块系数有无标志significant_coeffgroup_flag的值进行初始化。该初始化处理是通过将包含DC系数在内的子块的子块系数有无标志以及包含末尾系数在内的子块的子块系数有无标志设定为1、并将其他的子块系数有无标志设定为0来予以执行的。
(步骤S243)
接下来,系数有无标志解码部124开始以子块为单位的循环。
(步骤S244)
接下来,系数有无标志解码部124获取子块的位置。
(步骤S245)
接下来,系数有无标志解码部124判别在与对象子块相邻的解码完毕的子块中是否存在非0变换系数。
(步骤S246)
在步骤S245中为“是”的情况下,将对象子块的子块系数有无标志设定为1。
在此,步骤S245以及步骤S246所执行的处理如以下所示,取决于子块扫描方向。
·在子块扫描为垂直方向优先扫描的情况下,如图20(a)所示,在子块(xCG,yCG+1)中存在非0变换系数,子块(xCG+1,yCG)中不存在非0变换系数时,将对象子块(xCG,yCG)的子块系数有无标志设定为1。
·在子块扫描为水平方向优先扫描的情况下,如图20(b)所示,在子块(xCG+1,yCG)中存在非0变换系数,子块(xCG,yCG+1)中不存在非0变换系数时,将对象子块(xCG,yCG)的子块系数有无标志设定为1。
·在子块扫描为斜向的情况下,如图20(c)所示,在子块(xCG+1,yCG)以及子块(xCG,yCG+1)的两者的子块中存在非0变换系数时,将对象子块(xCG,yCG)的子块系数有无标志设定为1。
(步骤S247)
接下来,系数有无标志解码部124判别对象子块是否为包含末尾系数的子块。
(步骤S248)
在对象子块并非包含末尾系数的子块时(步骤S247中为“否”),系数有无标志解码部124对子块系数有无标志significant_coeffgroup_flag进行解码。
(步骤S249)
该步骤是子块的循环的终点。
图51是用于更具体地说明对子块内的各非零变换系数有无标志significant_coeff_flag进行解码的处理(图49的步骤S27)的流程图。
(步骤S271)
首先,变换系数解码部120所具备的系数有无标志解码部124获取有末尾系数的子块的位置。
(步骤S272)
接下来,系数有无标志解码部124将对象频域中所含的significant_coeff_flag的值初始化为0。
(步骤S273)
接下来,系数有无标志解码部124开始以子块为单位的循环。在此,该循环是从有末尾系数的子块起开始的循环,即以子块反向扫描顺序来扫描子块的循环。
(步骤S274)
接下来,系数有无标志解码部124开始对象子块内的循环。该循环是以频率分量为单位的循环。
(步骤S275)
接下来,系数有无标志解码部124获取变换系数的位置。
(步骤S276)
接下来,系数有无标志解码部124判别在对象子块中是否存在非0变换系数。
(步骤S277)
在对象子块中存在非0变换系数的情况(步骤S276中为“是”)下,系数有无标志解码部124判别已获取的变换系数的位置是否为末尾位置。
(步骤S278)
在已获取的变换系数的位置并非末尾位置时(步骤S277中为“否”),系数有无标志解码部124对变换系数有无标志significant_coeff_flag进行解码。
(步骤S279)
该步骤是子块内的循环的终点。
(步骤S280)
接下来,系数有无标志解码部124对子块内的各非0变换系数的正负号以及大小进行解码。
(步骤S281)
该步骤是子块的循环的终点。
尽管在图48~图50中,说明了利用以子块为单位的另一循环来实施子块系数有无标志的解码、与非零系数有无标志、以及各非零系数的正负号和大小的解码的例子,但不限于此,可以像图75所示的流程图那样,在以子块为单位的同一循环内实施。
以下,使用图75,说明在频域的尺寸大于给定的尺寸的情况下的变换系数解码部120所执行的变换系数解码处理的流程。
(步骤S31)
首先,变换系数解码部120所具备的系数解码控制部123选择扫描类型ScanType。这是与上述的步骤S11同样的处理。
(步骤S32)
接下来,变换系数解码部120所具备的末尾系数位置解码部121对沿正向扫描而表示最后的变换系数的位置的语法last_significant_coeff_x以及last_significant_coeff_y进行解码。另外,变换系数解码部120所具备的系数有无标志解码部124获取有末尾系数的子块的位置。
(步骤S33)
接下来,系数解码控制部123开始以子块为单位的循环。此外,在循环的开始时间点,系数有无标志解码部124对对象频域中所含的子块系数有无标志significant_coeffgroup_flag的值进行初始化。该初始化处理是通过将包含DC系数在内的子块的子块系数有无标志以及包含末尾系数在内的子块的子块系数有无标志设定为1、并将其他的子块系数有无标志设定为0来予以执行的。
(步骤S34)
接下来,变换系数解码部120所具备的子块系数有无标志解码部127对子块系数有无标志significant_coeffgroup_flag进行解码。
(步骤S35)
接下来,变换系数解码部120所具备的系数有无标志解码部124对对象子块内的各非零变换系数有无标志significant_coeff_flag进行解码。
(步骤S36)
接下来,变换系数解码部120所具备的系数值解码部125对对象子组内的非0变换系数的正负号以及大小进行解码。这是通过对各语法coeff_abs_level_greateer1_flag、coeff_abs_level_greateer2_flag、coeff_sign_flag,coeff_abs_level_minus3进行解码来执行的。
(步骤S37)
本步骤是以子块为单位的循环的终点。
图76是用于更具体地说明对子块系数有无标志进行解码的处理(步骤S34)的流程图。
(步骤S341)
接下来,系数有无标志解码部124获取子块的位置。
(步骤S342)
接下来,系数有无标志解码部124判别在与对象子块相邻的解码完毕的子块中是否存在非0变换系数。
(步骤S343)
在步骤S342中为“是”的情况下,将对象子块的子块系数有无标志设定为1。
在此,步骤S342以及步骤S343所执行的处理如以下所示,取决于子块扫描方向。
·在子块扫描为垂直方向优先扫描的情况下,如图20(a)所示,在子块(xCG,yCG+1)中存在非0变换系数,子块(xCG+1,yCG)中不存在非0变换系数时,将对象子块(xCG,yCG)的子块系数有无标志设定为1。
·在子块扫描为水平方向优先扫描的情况下,如图20(b)所示,在子块(xCG+1,yCG)中存在非0变换系数,子块(xCG,yCG+1)中不存在非0变换系数时,将对象子块(xCG,yCG)的子块系数有无标志设定为1。
·在子块扫描为斜向的情况下,如图20(c)所示,在子块(xCG+1,yCG)以及子块(xCG,yCG+1)的两者的子块中存在非0变换系数时,将对象子块(xCG,yCG)的子块系数有无标志设定为1。
(步骤S344)
接下来,系数有无标志解码部124判别对象子块是否为包含末尾系数的子块。
(步骤S345)
在对象子块并非包含末尾系数的子块时(步骤S344中为“否”),系数有无标志解码部124对子块系数有无标志significant_coeffgroup_flag进行解码。
图77是用于更具体地说明对子块内的各子块内的各非零变换系数有无标志significant_coeff_flag进行解码的处理(图75的步骤S35)的流程图。
(步骤S351)
首先,系数有无标志解码部124开始对象子块内的循环。该循环是以频率分量为单位的循环。此外,在循环的开始时间点,系数有无标志解码部124,将对象频域中所含的significant_coeff_flag的值初始化为0。
(步骤S352)
接下来,系数有无标志解码部124获取变换系数的位置。
(步骤S353)
接下来,系数有无标志解码部124判别在对象子块中是否存在非0变换系数。
(步骤S354)
在对象子块中存在非0变换系数的情况(步骤S353中为“是”)下,系数有无标志解码部124判别已获取的变换系数的位置是否为末尾位置。
(步骤S355)
在已获取的变换系数的位置并非末尾位置时(步骤S354中为“否”),系数有无标志解码部124对变换系数有无标志significant_coeff_flag进行解码。
(步骤S356)
该步骤是子块内的循环的终点。
(运动图像编码装置2)
参考图52~图56来说明一实施方式所涉及的运动图像编码装置2的构成。运动图像编码装置2是安装了H.264/MPEG-4 AVC规格中所采用的技术、作为VCEG(Video CodingExpert Group)中的共同开发用编解码器的KTA软件中所采用的技术、TMuC(Test Modelunder Consideration)软件中所采用的技术以及作为其后继编解码器的HEVC(High-Efficiency Video Coding)中所提出的技术的编码装置。以下,对于和已经说明过的部分相同的部分标注相同标号,并省略其说明。
图52是表示运动图像编码装置2的构成的框图。如图52所示,运动图像编码装置2具备:预测图像生成部21、变换和量化部22、逆量化和逆变换部23、加法器24、帧存储器25、环路滤波器26、可变长码编码部27以及减法器28。另外,如图52所示,预测图像生成部21具备帧内预测图像生成部21a、运动矢量检测部21b、帧间预测图像生成部21c、预测方式控制部21d以及运动矢量冗余性删除部21e。运动图像编码装置2是通过对运动图像#10(编码对象图像)进行编码来生成编码数据#1的装置。
(预测图像生成部21)
预测图像生成部21将处理对象LCU递归地分割为1个或多个下级CU,进一步将各叶(leaf)CU分割为1个或多个分区,按每个分区来生成利用了画面间预测的帧间预测图像Pred_Inter或利用了画面内预测的帧内预测图像Pred_Intra。生成的帧间预测图像Pred_Inter以及帧内预测图像Pred_Intra被作为预测图像Pred而提供给加法器24以及减法器28。
此外,预测图像生成部21针对应用了跳过模式的PU,省略属于该PU的其他参数的编码。另外,按照使编码效率最佳化的方式来决定:(1)对象LCU中的向下级CU以及分区的分割的方式,(2)是否应用跳过模式,以及(3)按每个分区来生成帧间预测图像Pred_Inter以及帧内预测图像Pred_Intra中的哪一个。
(帧内预测图像生成部21a)
帧内预测图像生成部21a通过画面内预测来生成与各分区相关的预测图像Pred_Intra。具体而言,(1)针对各分区来选择在帧内预测中使用的预测模式,(2)利用所选择的预测模式,根据解码图像P来生成预测图像Pred_Intra。帧内预测图像生成部21a将所生成的帧内预测图像Pred_Intra提供给预测方式控制部21d。
另外,帧内预测图像生成部21a采用下述构成:根据对对象分区的周边的分区分配的预测模式来决定针对对象分区的估计预测模式,将表示该估计预测模式与针对对象分区而实际选择的预测模式是否相同的估计预测模式标志,作为帧内预测参数PP_Intra的一部分而经由预测方式控制部21d提供给可变长码编码部27,可变长码编码部27将该标志包含在编码数据#1中。
另外,帧内预测图像生成部21a采用下述构成:在针对对象分区的估计预测模式与针对对象分区而实际选择的预测模式不同的情况下,将表示针对对象分区的预测模式的残余预测模式索引,作为帧内预测参数PP_Intra的一部分而经由预测方式控制部21d提供给可变长码编码部27,可变长码编码部27将该残余预测模式索引包含在编码数据#1中。
此外,帧内预测图像生成部21a在生成预测图像Pred_Intra时,从图11所示的预测模式之中选择编码效率进一步得以提高的预测模式来应用。
(运动矢量检测部21b)
运动矢量检测部21b检测与各分区相关的运动矢量mv。具体而言,(1)选择作为参考图像而利用的自适应滤波完毕解码图像P_ALF’,(2)在选择出的自适应滤波完毕解码图像P_ALF’中,搜索对对象分区进行最佳近似的区域,从而检测与对象分区相关的运动矢量mv。在此,自适应滤波完毕解码图像P_ALF’,是针对已经完成了帧整体的解码的解码完毕的解码图像实施环路滤波器26所执行的自适应滤波处理而得到的图像,运动矢量检测部21b能够将构成自适应滤波完毕解码图像P_ALF’的各像素的像素值从帧存储器25中读出。运动矢量检测部21b将检测到的运动矢量mv,与对被用作参考图像的自适应滤波完毕解码图像P_ALF’进行指定的参考图像索引RI一起提供给帧间预测图像生成部21c以及运动矢量冗余性删除部21e。
(帧间预测图像生成部21c)
帧间预测图像生成部21c通过画面间预测来生成与各帧间预测分区相关的运动补偿图像mc。具体而言,利用从运动矢量检测部21b提供的运动矢量mv,根据由从运动矢量检测部21b提供的参考图像索引RI指定的自适应滤波完毕解码图像P_ALF’来生成运动补偿图像mc。与运动矢量检测部21b同样,帧间预测图像生成部21c能够将构成自适应滤波完毕解码图像P_ALF’的各像素的像素值从帧存储器25中读出。帧间预测图像生成部21c将生成的运动补偿图像mc(帧间预测图像Pred_Inter),与从运动矢量检测部21b提供的参考图像索引RI一起提供给预测方式控制部21d。
(预测方式控制部21d)
预测方式控制部21d将帧内预测图像Pred_Intra以及帧间预测图像Pred_Inter与编码对象图像进行比较,选择进行帧内预测还是进行帧间预测。在选择了帧内预测的情况下,预测方式控制部21d将帧内预测图像Pred_Intra作为预测图像Pred而提供给加法器24以及减法器28,并且将从帧内预测图像生成部21a提供的帧内预测参数PP_Intra提供给可变长码编码部27。另一方面,在选择了帧间预测的情况下,预测方式控制部21d将帧间预测图像Pred_Inter作为预测图像Pred而提供给加法器24以及减法器28,并且将参考图像索引RI、以及从后述的运动矢量冗余性删除部21e提供的估计运动矢量索引PMVI以及运动矢量残差MVD作为帧间预测参数PP_Inter而提供给可变长码编码部27。另外,预测方式控制部21d将表示选择了帧内预测图像Pred_Intra以及帧间预测图像Pred_Inter中的哪一个预测图像的预测类型信息Pred_type提供给可变长码编码部27。
(运动矢量冗余性删除部21e)
运动矢量冗余性删除部21e删除由运动矢量检测部21b检测出的运动矢量mv中的冗余性。具体而言,(1)选择在运动矢量mv的估计中使用的估计方法,(2)按照所选择的估计方法来导出估计运动矢量pmv,(3)通过从运动矢量mv中减去估计运动矢量pmv来生成运动矢量残差MVD。运动矢量冗余性删除部21e将所生成的运动矢量残差MVD与表示选择出的估计方法的估计运动矢量索引PMVI一起提供给预测方式控制部21d。
(变换和量化部22)
变换和量化部22,(1)针对从编码对象图像中减去预测图像Pred后的预测残差D,按每个块(变换单位)来施加DCT变换(DiscreteCosineTransform)等频率变换,(2)对通过频率变换而得到的变换系数Coeff_IQ进行量化,(3)将通过量化而得到的变换系数Coeff提供给可变长码编码部27以及逆量化和逆变换部23。此外,变换和量化部22,(1)按每个TU来选择在量化时使用的量化步长QP,(2)将表示选择出的量化步长QP的大小的量化参数差分Δqp提供给可变长码编码部27,(3)将选择出的量化步长QP提供给逆量化和逆变换部23。在此,量化参数差分Δqp是指,从要进行频率变换以及量化的TU所相关的量化参数qp(例如QP=2pq/6)的值中减去在之前刚进行了频率变换以及量化的TU所相关的量化参数qp’的值而得到的差分值。
此外,关于由变换和量化部22进行的DCT变换,例如在对象块的尺寸为8×8像素的情况下,若将针对水平方向的频率u以及垂直方向的频率v的量化前的变换系数表示为Coeff_IQ(u,v)(0<u<7,0<v≤7),则例如由以下的数式(2)来给出。
[数式2]
在此,D(i,j)(0≤i≤7,0≤j≤7)表征了对象块中的位置(i,j)处的预测残差D。另外,C(u)以及C(v)按以下方式给出。
·
·C(u)=1(u≠0)
·
·C(v)=1(v≠0)
(逆量化和逆变换部23)
逆量化和逆变换部23,(1)对量化后的变换系数Coeff进行逆量化,(2)对通过逆量化而得到的变换系数Coeff_IQ实施逆DCT(Discrete Cosine Transform)变换等逆频率变换,(3)将通过逆频率变换而得到的预测残差D提供给加法器24。在对量化后的变换系数Coeff进行逆量化时,利用从变换和量化部22提供的量化步长QP。此外,从逆量化和逆变换部23输出的预测残差D,是在输入到变换和量化部22的预测残差D上加上了量化误差后的结果,但在此为了简化而采用公共的呼称。逆量化和逆变换部23的更具体的动作与运动图像解码装置1所具备的逆量化和逆变换部13大致相同。
(加法器24)
加法器24将由预测方式控制部21d选择出的预测图像Pred与由逆量化和逆变换部23生成的预测残差D相加,由此生成(局部)解码图像P。由加法器24生成的(局部)解码图像P被提供给环路滤波器26,并保存在帧存储器25中,被用作帧内预测中的参考图像。
(可变长码编码部27)
可变长码编码部27,对(1)从变换和量化部22提供的量化后的变换系数Coeff以及Δqp、(2)从预测方式控制部21d提供的量化参数PP(帧间预测参数PP_Inter以及帧内预测参数PP_Intra)、(3)预测类型信息Pred_type以及(4)从环路滤波器26提供的滤波器参数FP进行可变长编码,由此来生成编码数据#1。
图53是表示可变长码编码部27的构成的框图。如图53所示,可变长码编码部27具备:对量化后的变换系数Coeff进行编码的量化残差信息编码部271、对预测参数PP进行编码的预测参数编码部272、对预测类型信息Pred_type进行编码的预测类型信息编码部273以及对滤波器参数FP进行编码的滤波器参数编码部274。关于量化残差信息编码部271的具体的构成在后面描述,所以在此省略说明。
(减法器28)
减法器28通过将由预测方式控制部21d选择出的预测图像Pred从编码对象图像中减去来生成预测残差D。由减法器28生成的预测残差D被变换和量化部22进行频率变换以及量化。
(环路滤波器26)
环路滤波器26具有下述功能:(1)作为进行解码图像P中的块边界或分区边界的周边的图像的平滑化(去块处理)的去块滤波器(DF:Deblocking Filter)的功能;(2)作为针对去块滤波器所作用的图像而利用滤波器参数FP来进行自适应滤波处理的自适应滤波器(ALF:Adaptive Loop Filter)的功能。
(量化残差信息编码部271)
量化残差信息编码部271通过对量化后的变换系数Coeff(xC,yC)进行上下文自适应二进制算术编码(CABAC:(Context-based AdaptiveBinary Arithmetic Coding))来生成量化残差信息QD。生成的量化残差信息QD所包含的语法是如图4以及图5所示的各语法、以及significant_coeffgroup_flag。
此外,xC以及yC如上所述是表征频域上的各频率分量的位置的索引,分别是与上述的水平方向频率u以及垂直方向频率v对应的索引。此外,以下,有时也将量化后的变换系数Coeff仅称为变换系数Coeff。
(量化残差信息编码部271)
图54是表示量化残差信息编码部271的构成的框图。如图54所示,量化残差信息编码部271具备变换系数编码部220以及算术码编码部230。
(算术码编码部230)
算术码编码部230是通过参考上下文来对从变换系数编码部220提供的各Bin进行编码从而来生成量化残差信息QD的构成,如图54所示,具备上下文记录更新部231以及比特编码部232。
(上下文记录更新部231)
上下文记录更新部231是用于对由各上下文索引ctxIdx管理的上下文变量CV进行记录以及更新的构成。在此,上下文变量CV包含:(1)发生概率高的最大概率符号MPS(mostprobable symbol);(2)对该最大概率符号MPS的发生概率进行指定的概率状态索引pStateIdx。
上下文记录更新部231通过参考从变换系数编码部220所具备的各部分提供的上下文索引ctxIdx、以及由比特编码部232编码后的Bin的值,来更新上下文变量CV,并且对更新后的上下文变量CV进行记录直至下一次被更新为止。此外,最大概率符号MPS是0或1。另外,最大概率符号MPS和概率状态索引pStateIdx在比特编码部232每对一个Bin进行编码时被更新。
另外,上下文索引ctxIdx可以是直接指定针对各频率分量的上下文的索引,也可以是从对处理对象的每个TU所设定的上下文索引的偏移起的增量值(以下同样)。
(比特编码部232)
比特编码部232参考上下文记录更新部231中所记录的上下文变量CV,对从变换系数编码部220所具备的各部分提供的各Bin进行编码来生成量化残差信息QD。另外,进行编码而得到的Bin的值也被提供给上下文记录更新部231,为了对上下文变量CV进行更新而被参考。
(变换系数编码部220)
如图54所示,变换系数编码部220具备:末尾位置编码部221、扫描顺序表存放部222、系数编码控制部223、系数有无标志编码部224、系数值编码部225、编码系数存储部226、子块系数有无标志227以及语法导出部228。
(语法导出部228)
语法导出部228参考变换系数Coeff(xC,yC)的各值,导出用于确定对象频域上的这些变换系数的语法last_significant_coeff_x、last_significant_coeff_y、significant_coeff_flag、coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag、coeff_sign_flag以及coeff_abs_level_minus3的各值。导出的各语法被提供给编码系数存储部226。另外,导出的语法中的last_significant_coeff_x、last_significant_coeff_y还被提供给系数编码控制部223以及末尾位置编码部221。另外,导出的语法中的significant_coeff_flag还被提供给系数有无标志编码部224。此外,关于各语法所表示的内容已在上面描述,因此在此省略说明。
(末尾位置编码部221)
末尾位置编码部221生成表示从语法导出部228提供的语法last_significant_coeff_x、last_significant_coeff_y的Bin。另外,将生成的各Bin提供给比特编码部232。另外,将对为了编码语法last_significant_coeff_x以及last_significant_coeff_y的Bin而参考的上下文进行指定的上下文索引ctxIdx提供给上下文记录更新部231。
(扫描顺序表保存部222)
在扫描顺序表保存部222中存放有:以处理对象的TU的尺寸、表征扫描方向的类别的扫描索引、以及沿着扫描顺序而被赋予的频率分量识别索引为自变量,来给出处理对象的频率分量在频域上的位置的表。作为这样的扫描顺序表的一例,可列举图4以及图5所示的ScanOrder。
另外,在扫描顺序表存放部222中,存放有用于对子块的扫描顺序进行指定的子块扫描顺序表。在此,子块扫描顺序表是通过与处理对象的TU(块)的尺寸和帧内预测模式的预测模式索引建立了关联的扫描索引scanIndex来指定的。
扫描顺序表存放部222中所存放的扫描顺序表以及子块扫描顺序表与运动图像解码装置1所具备的扫描顺序表存放部122中所存放的扫描顺序表以及子块扫描顺序表相同,因此在此省略说明。
(系数编码控制部223)
系数编码控制部223是用于控制量化残差信息编码部271所具备的各部中的编码处理的顺序的构成。
(块尺寸为给定的尺寸以下的情况)
在块尺寸为给定的尺寸以下(例如4×4分量、8×8分量等)的情况下,系数编码控制部223参考由语法导出部228提供的语法last_significant_coeff_x以及last_significant_coeff_y,对沿正向扫描的最后的非0变换系数的位置进行确定,而且按照以确定出的最后的非0变换系数的位置为起点的扫描顺序,即由扫描顺序表存放部222中所存放的扫描顺序表给出的扫描顺序的反向扫描顺序,来将各频率分量的位置(xC,yC)提供给系数有无标志编码部。
另外,系数编码控制部223将作为表示处理对象的TU的尺寸,即,对象频域的尺寸的参数的sz提供给变换系数编码部220所具备的各部(省略图示)。在此,sz具体而言,是表征处理对象TU的一边的像素数,即,对象频域的一边的频率分量的数目的参数。
此外,系数编码控制部223可以设为如下构成:按照由扫描顺序表存放部222中所存放的扫描顺序表给出的扫描顺序的正向扫描顺序,将各频率分量的位置(xC,yC)提供给系数有无标志编码部224。
(块尺寸大于给定的尺寸的情况)
在块尺寸大于给定的尺寸的情况下,系数编码控制部223参考由语法导出部228提供的语法last_significant_coeff_x以及last_significant_coeff_y,对沿正向扫描的最后的非0变换系数的位置进行确定,而且按照以包含确定出的最后的非0变换系数在内的子块的位置为起点的扫描顺序,即由扫描顺序表存放部222中所存放的子块扫描顺序表给出的扫描顺序的反向扫描顺序,将各子块的位置(xCG,yCG)提供给子块系数有无标志编码部227。
另外,系数编码控制部223关于作为处理对象的子块,按照由扫描顺序表存放部222中所存放的扫描顺序表给出的扫描顺序的反向扫描顺序,将作为该处理对象的子块中所含的各频率分量的位置(xC,yC)提供给系数有无标志编码部224。在此,关于作为处理对象的子块中所含的各频率分量的扫描顺序,具体而言,使用斜向扫描(Up-right diagonalscan)即可。
如此,系数解码控制部223是按每个帧内预测模式来切换扫描顺序的构成。一般而言,帧内预测模式与变换系数的偏倚彼此具有相关,因此通过根据帧内预测模式来切换扫描顺序,能进行与子块系数有无标志的偏倚相适应的子块扫描。由此,能削减作为编码以及解码对象的子块系数有无标志的码量,编码效率得以提高。
(系数值编码部225)
系数值编码部225生成表示从语法导出部228提供的语法coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag、coeff_sign_flag以及coeff_abs_level_minus3的Bin。另外,将对为了编码这些语法的Bin而参考的上下文进行指定的上下文索引ctxIdx提供给上下文记录更新部231。
(系数有无标志编码部224)
本实施方式所涉及的系数有无标志编码部224对根据各位置(xC,yC)而指定的语法significant_coeff_flag[xC][yC]进行编码。更具体而言,生成表示根据各位置(xC,yC)而指定的语法significant_coeff_flag[xC][yC]的Bin。生成的各Bin被提供给比特编码部232。另外,系数有无标志编码部224计算用于对由算术码编码部230为了编码语法significant_coeff_flag[xC][yC]的Bin所使用的上下文进行决定的上下文索引ctxIdx。计算出的上下文索引ctxIdx被提供给上下文记录更新部231。
图55是表示系数有无标志编码部224的构成的框图。如图55所示,系数有无标志编码部224具备:频率分类部224a、位置上下文导出部224b、周边参考上下文导出部224c、系数有无标志存储部224d、以及系数有无标志设定部224e。
(频率分类部224a)
在作为对象的频域的尺寸为给定的尺寸以下的尺寸的情况(例如,为4×4分量、8×8分量的情况)下,频率分类部224a对于该给定尺寸以下的频域的各频率分量,根据该频率分量的位置,将该频率分量分类至多个部分区域的任一者,而且分配由位置上下文导出部224b导出的上下文索引ctxIdx。
另一方面,在作为对象的频域的尺寸为大于给定的尺寸的尺寸的情况(例如,为16×16分量、32×32分量的情况等)下,频率分类部224a根据解码对象的频率分量在频域上的位置,将该频率分量分类至多个部分区域的任一者,而且将由位置上下文导出部224b、以及周边参考上下文导出部224c的任一者导出的上下文索引ctxIdx分配给该解码对象的频率分量。
频率分类部224a所执行的具体的处理与运动图像解码装置1所具备的频率分类部124a相同,因此在此省略说明。
(位置上下文导出部224b)
位置上下文导出部224b将针对对象频率分量的上下文索引ctxIdx基于该对象频率分量在频域上的位置来导出。
位置上下文导出部224b例如进行与在(频域为给定的尺寸以下的情况下的频率分类部124a所执行的频率分类处理、以及位置上下文导出部124b所执行的上下文索引导出处理的具体例1)中说明过的位置上下文导出部124b所执行的处理同样的处理。
即,位置上下文导出部224b对属于作为给定的尺寸以下(例如,4×4分量、8×8分量)的频域的、具有第1尺寸(例如4×4分量)的频域的1个或多个频率分量、以及属于作为上述给定的尺寸以下的频域的、具有大于上述第1尺寸的第2尺寸(例如8×8分量)的频域的1个或多个频率分量,导出公共的上下文索引,而且分配给该1个或多个频率分量的各个。
根据如此构成的位置上下文导出部224b,能削减要导出的上下文索引的数目,因此能谋求导出处理的减轻、以及用于保持上下文索引的存储器尺寸的减小。
位置上下文导出部224b所执行的其他的具体的处理与运动图像解码装置1所具备的位置上下文导出部124b相同,因此在此省略说明。
(周边参考上下文导出部224c)
周边参考上下文导出部224c将针对编码对象的频率分量的上下文索引ctxIdx基于针对该频率分量的周边的频率分量而编码完毕的非0变换系数的数目cnt来导出。
周边参考上下文导出部224c所执行的具体的处理与运动图像解码装置1所具备的周边参考上下文导出部124c相同,因此在此省略说明。
(系数有无标志设定部224e)
系数有无标志设定部224e生成表示从语法导出部228提供的语法significant_coeff_flag[xC][yC]的Bin。生成的Bin被提供给比特编码部232。另外,系数有无标志设定部224e参考对象子块中所含的significant_coeff_flag[xC][yC]的值,对象子块中所含的全部的significant_coeff_flag[xC][yC]为0的情况下,即,该对象子块中不含有非0变换系数的情况下,将与该对象子块相关的significant_coeffgroup_flag[xCG][yCG]的值设定为0,在除此以外的情况下将与该对象子块相关的significant_coeffgroup_flag[xCG][yCG]的值设定为1。如此被赋值的significant_coeffgroup_flag[xCG][yCG]被提供给子块系数有无标志编码部227。
(系数有无标志存储部224d)
在系数有无标志存储部224d中存放语法significant_coeff_flag[xC][yC]的各值。系数有无标志存储部224d中所存放的语法significant_coeff_flag[xC][yC]的各值由周边参考上下文导出部224c参考。
(子块系数有无标志编码部227)
子块系数有无标志编码部227对根据各子块位置(xCG,yCG)而指定的语法significant_coeffgroup_flag[xCG][yCG]进行编码。更具体而言,生成表示根据各子块位置(xCG,yCG)而指定的语法significant_coeffgroup_flag[xCG][yCG]的Bin。生成的各Bin被提供给比特编码部232。另外,子块系数有无标志编码部227计算用于对为了由算术码编码部230编码语法significant_coeff_flag[xC][yC]的Bin所使用的上下文进行决定的上下文索引ctxIdx。计算出的上下文索引ctxIdx被提供给上下文记录更新部231。
图56是表示子块系数有无标志编码部227的构成的框图。如图56所示,子块系数有无标志编码部227具备:上下文导出部227a、子块系数有无标志存储部227b、以及子块系数有无标志设定部227c。
以下,以按照正向扫描顺序从系数编码控制部223对子块系数有无标志编码部227提供子块位置(xCG,yCG)的情况为例,来进行说明。此外,在此情况下,优选地,在运动图像解码装置1所具备的子块系数有无标志解码部127中,子块位置(xCG,yCG)按照反向扫描顺序被提供。
(上下文导出部227a)
子块系数有无标志编码部227所具备的上下文导出部227a导出对根据各子块位置(xCG,yCG)而指定的子块分配的上下文索引。分配给子块的上下文索引在对表示针对该子块的语法significant_coeffgroup_flag的Bin进行解码时使用。另外,在导出上下文索引时,对子块系数有无标志存储部227b中所存储的子块系数有无标志的值进行参考。上下文导出部227a将导出的上下文索引提供给上下文记录更新部231。
(子块系数有无标志存储部227b)
在子块系数有无标志存储部227b中,存储有从系数有无标志编码部224提供的语法significant_coeffgroup_flag的各值。子块系数有无标志设定部227c能从子块系数有无标志存储部227b读出分配给相邻子块的语法significant_coeffgroup_flag。
(子块系数有无标志设定部227c)
关于子块系数有无标志设定部227c,子块系数有无标志设定部227c生成表示从系数有无标志编码部224提供的语法significant_coeffgroup_flag[xCG][yCG]的Bin。生成的Bin被提供给比特编码部232。
在此,子块系数有无标志设定部227c根据对子块扫描顺序进行指定的扫描类型,按如下方式省略语法significant_coeffgroup_flag[xCG][yCG]的编码。
(扫描类型为垂直方向优先扫描的情况)
在对子块扫描顺序进行指定的扫描类型为垂直方向优先扫描的情况下,子块系数有无标志设定部227c如图20(a)所示,参考对与子块(xCG,yCG)相邻的子块(xCG,yCG+1)所分配的子块系数有无标志significant_coeffgroup_flag[xCG][yCG+1]的值。在significant_coeffgroup_flag[xCG][yCG+1]=1的情况下,子块系数有无标志设定部227c推测为significant_coeffgroup_flag[xCG][yCG]=1,并省略significant_coeffgroup_flag[xCG][yCG]的编码。
(扫描类型为水平方向优先扫描的情况)
在对子块扫描顺序进行指定的扫描类型为水平方向优先扫描的情况下,子块系数有无标志设定部227c如图20(b)所示,参考对与子块(xCG,yCG)相邻的子块(xCG+1,yCG)所分配的子块系数有无标志significant_coeffgroup_flag[xCG+1][yCG]的值。在significant_coeffgroup_flag[xCG+1][yCG]=1的情况下,子块系数有无标志设定部227c推测为significant_coeffgroup_flag[xCG][yCG]=1,并省略significant_coeffgroup_flag[xCG][yCG]的编码。
(扫描类型为斜向扫描的情况)
在对子块扫描顺序进行指定的扫描类型为斜向扫描的情况下,子块系数有无标志设定部227c如图20(c)所示,参考对与子块(xCG,yCG)相邻的子块(xCG+1,yCG)所分配的子块系数有无标志significant_coeffgroup_flag[xCG+1][yCG]的值以及对子块(xCG,yCG+1)所分配的子块系数有无标志significant_coeffgroup_flag[xCG][yCG+1]的值。
在significant_coeffgroup_flag[xCG+1][yCG]=1且significant_coeffgroup_flag[xCG][yCG+1]=1的情况下,子块系数有无标志设定部227c推测为significant_coeffgroup_flag[xCG][yCG]=1,并省略significant_coeffgroup_flag[xCG][yCG]的编码。
子块系数有无标志设定部227c如上所述,是根据子块系数有无标志的偏倚来省略significant_coeffgroup_flag[xCG][yCG]的编码的构成。由于能削减子块系数有无标志的码量,因此编码效率得以提高。
(系数有无标志编码部的变形例1)
本实施方式所涉及的系数有无标志编码部不限于上述的构成。本实施方式所涉及的系数有无标志编码部可设为具有与第1变形例所涉及的系数有无标志解码部124’对应的构成。
即,本变形例所涉及的系数有无标志编码部224’为与变换系数有无标志编码部224大致同样的构成,但在以下的点设为不同的构成。
·系数有无标志编码部224’不具备周边参考上下文导出部224c。
·系数有无标志编码部224’具备子块周边参考上下文导出部224f。
子块周边参考上下文导出部224f参考对与处理对象的子块相邻的子块所分配的significant_coeffgroup_flag来导出对该处理对象的子块中所含的各频率分量分配的上下文索引。
关于子块周边参考上下文导出部224f所执行的具体的处理,与子块周边参考上下文导出部124f相同,因此省略其说明。其中,将子块周边参考上下文导出部124f的说明中的“解码”改称为“编码”即可。
根据本变形例所涉及的子块周边参考上下文导出部224f,不进行以频率分量为单位的周边参考上下文导出处理,而对子块中所含的各频率分量分配公共的上下文索引,因此处理量得以削减。另外,以子块为单位的上下文索引导出处理是参考相邻子块中的significant_coeffgroup_flag的值来进行的,因此能导出与对象子块的周边存在的非0变换系数的数目相应的上下文索引。
因此,根据本变形例所涉及的子块周边参考上下文导出部224f,能在维持高的编码效率的同时,削减上下文索引导出处理的处理量。
(系数有无标志解码部的变形例2)
另外,本实施方式所涉及的系数有无标志编码部可以设为具有与第2变形例所涉及的系数有无标志解码部124”对应的构成。
即,本变形例所涉及的系数有无标志解码部124”除了变换系数有无标志编码部224的各部之外,还具备子块周边参考上下文导出部224f。在此,本变形例所涉及的子块周边参考上下文导出部224f所执行的具体的处理与第2变形例所涉及的子块周边参考上下文导出部124f相同,因此省略其说明。其中,将第2变形例所涉及的子块周边参考上下文导出部124f的说明中的“解码”改称为“编码”即可。
基于这样的构成,也能在维持高的编码效率的同时,削减上下文索引导出处理的处理量。
(系数有无标志编码部224的变形例2)
另外,本实施方式所涉及的系数有无标志编码部224可以设为具有与第3变形例所涉及的系数有无标志解码部124对应的构成。
图97是表示本实施方式所涉及的系数有无标志编码部224的第2变形例的构成例的框图。如图97所示,系数有无标志编码部224具备上下文导出部224z以及系数有无标志设定部224e。进而,上下文导出部224z具备:导出方法控制部224x、位置上下文导出部224b、周边参考上下文导出部224c。此外,在图97中,对于上下文导出部224z,以导出方法控制部224x内置有位置上下文导出部224b以及周边参考上下文导出部224c的形式进行了记载,但这只是例示。上下文导出部224z的构成不限于这样的构成。
(导出方法控制部224x)
在作为对象的TU尺寸为给定的尺寸以下的尺寸的情况(例如,为4×4TU、8×8TU的情况)下,导出方法控制部224x对于该给定尺寸以下的频域的各频率分量,根据该频率分量的位置来将该频率分量分类至多个部分区域的任一者,而且分配由位置上下文导出部224b导出的上下文索引ctxIdx。
另一方面,在作为对象的TU尺寸为大于给定的尺寸的尺寸的情况(例如,为16×16TU、32×32TU的情况等)下,导出方法控制部224x根据解码对象的频率分量在频域上的位置,将该频率分量分类至多个部分区域的任一者,而且将由位置上下文导出部224b以及周边参考上下文导出部224c的任一者导出的上下文索引ctxIdx分配给该解码对象的频率分量。
导出方法控制部224x所执行的具体的处理与运动图像解码装置1所具备的导出方法控制部124x同样,因此在此省略说明。
(位置上下文导出部224b)
位置上下文导出部224b基于该对象频率分量在频域上的位置来导出针对对象频率分量的上下文索引ctxIdx。
位置上下文导出部224b所执行的具体的处理与系数有无标志解码部124的变形例A所具备的位置上下文导出部124b同样,因此在此省略说明。
(周边参考上下文导出部224c)
周边参考上下文导出部224c将针对编码对象的频率分量的上下文索引ctxIdx基于针对该频率分量的周边的频率分量而编码完毕的非0变换系数的数目cnt来导出。更具体而言,在对象频率分量的位置(xC,yC)或者对象频率分量所属的子块的位置(xCG,yCG)满足给定的条件的情况下,周边参考上下文导出部224c根据变换系数的位置,使用不同的参考位置(模板)来导出编码完毕的非0变换系数的数目cnt。
周边参考上下文导出部224c所执行的具体的处理与系数有无标志解码部124的第3变形例所具备的周边参考上下文导出部124c相同,因此在此省略说明。
(系数有无标志设定部224e)
系数有无标志设定部224e生成表示从语法导出部228提供的语法significant_coeff_flag[xC][yC]的Bin。生成的Bin被提供给比特编码部232。另外,系数有无标志设定部224e参考对象子块中所含的significant_coeff_flag[xC][yC]的值,对象子块中所含的全部的significant_coeff_flag[xC][yC]为0的情况下,即,该对象子块中不含有非0变换系数的情况下,将与该对象子块相关的significant_coeff_group_flag[xCG][yCG]的值设定为0,在除此以外的情况下将与该对象子块相关的significant_coeff_group_flag[xCG][yCG]的值设定为1。如此被赋值的significant_coeff_group_flag[xCG][yCG]被提供给子块系数有无标志编码部227。
以上,根据系数有无标志编码224的第2变形例,在处理对象的TU尺寸为给定的尺寸以下的情况下,通过利用了表征处理对象的频率分量的位置的xC和yC的各比特的值的比特运算,不仅能将频域分割为多个子区域(上下文组),而且能导出与各子区域对应的上下文索引。故而,能谋求上下文索引的导出处理的简化、以及上下文索引导出所涉及的存储器尺寸的削减。
另外,在处理对象的TU尺寸大于给定尺寸的情况下,当处理对象的系数有无标志位于高频域时,由位置上下文导出部来导出处理对象的系数有无标志相关的上下文索引,当处理对象的系数有无标志位于低频域以及中频域时,由周边参考上下文导出部来导出处理对象的系数有无标志相关的上下文索引。故而,较之于现有技术,能对低频域内所含的频率分量考虑非零系数的发生频度的偏倚来导出上下文索引,起到削减系数有无标志的码量,以及削减解码所涉及的处理量的效果。
另外,基于系数位置,作为对象的变换系数的位置按照不参考在处理顺序(反向扫描顺序)下位于近前的座标的变换系数的方式选择了模板。这样的处理能不参考近前的系数有无标志的值而进行用于某位置的系数有无标志的解码的上下文导出,因此起到能并行地处理上下文导出处理与解码处理的效果。因此,能在维持高的编码效率的同时,使上下文索引导出处理的处理高速化。
(附记事项1)
上述的运动图像编码装置2以及运动图像解码装置1能够搭载于进行运动图像的发送、接收、记录、再现的各种装置中加以利用。此外,运动图像可以是由照相机等拍摄的自然运动图像,也可以是由计算机等生成的人工运动图像(包含CG以及GUI)。
首先,参考图57来说明能够将上述的运动图像编码装置2以及运动图像解码装置1用于运动图像的发送以及接收的情况。
图57的(a)是表示了搭载有运动图像编码装置2的发送装置PROD_A的构成的框图。如图57的(a)所示,发送装置PROD_A具备:通过对运动图像进行编码来获得编码数据的编码部PROD_A1;通过以编码部PROD_A1所获得的编码数据对载波进行调制来获得调制信号的调制部PROD_A2;以及对调制部PROD_A2所获得的调制信号进行发送的发送部PROD_A3。上述的运动图像编码装置2被用作该编码部PROD_A1。
在发送装置PROD_A中,作为输入到编码部PROD_A1的运动图像的提供源,还可具备:拍摄运动图像的照相机PROD_A4;记录有运动图像的记录介质PROD_A5;用于从外部输入运动图像的输入端子PROD_A6以及对图像进行生成或加工的图像处理部A7。在图57的(a)中,例示了发送装置PROD_A具备这些部件全部的构成,但也可省略一部分部件。
此外,记录介质PROD_A5可以是记录有未编码的运动图像的介质,也可以是记录有以与传输用的编码方式不同的记录用的编码方式进行了编码的运动图像的介质。在后者的情况下,在记录介质PROD_A5与编码部PROD_A1之间,插入将从记录介质PROD_A5读出的编码数据按照记录用的编码方式进行解码的解码部(未图示)即可。
图57的(b)是表示了搭载有运动图像解码装置1的接收装置PROD_B的构成的框图。如图57的(b)所示,接收装置PROD_B具备:接收调制信号的接收部PROD_B1;通过对接收部PROD_B1所接收到的调制信号进行解调而获得编码数据的解调部PROD_B2;以及通过对解调部PROD_B2所得到的编码数据进行解码来获得运动图像的解码部PROD_B3。上述的运动图像解码装置1被用作该解码部PROD_B3。
在接收装置PROD_B中,作为解码部PROD_B3所输出的运动图像的提供目的地,还可具备:对运动图像进行显示的显示器PROD_B4;用于对运动图像进行记录的记录介质PROD_B5以及用于将运动图像输出到外部的输出端子PROD_B6。在图57的(b)中,例示了接收装置PROD_B具备这些部件全部的构成,但也可省略一部分部件。
此外,记录介质PROD_B5可以是用于记录未编码的运动图像的介质,也可以记录以与传输用的编码方式不同的记录用的编码方式进行了编码后的结果的介质。在后者的情况下,在解码部PROD_B3与记录介质PROD_B5之间,插入将从解码部PROD_B3取得的运动图像按记录用的编码方式进行编码的编码部(未图示)即可。
此外,对调制信号进行传输的传输介质既可以是无线的也可以是有线的。另外,对调制信号进行传输的传输方式可以是广播(在此指没有预先确定发送目的地的发送方式),也可以是通信(在此指预先确定了发送目的地的发送方式)。即,调制信号的传输可通过无线广播、有线广播、无线通信以及有线通信的任一者来实现。
例如,地面数字广播的广播站(广播设备等)/接收站(电视接收机等)是以无线广播来收发调制信号的发送装置PROD_A/接收装置PROD_B的一例。另外,有线电视广播的广播站(广播设备等)/接收站(电视接收机等)是以有线广播来收发调制信号的发送装置PROD_A/接收装置PROD_B的一例。
另外,利用了互联网的VOD(Video On Demand)服务、运动图像共享服务等的服务器(工作站等)/客户端(电视接收机、个人计算机、智能手机等),是以通信来收发调制信号的发送装置PROD_A/接收装置PROD_B的一例(通常,在LAN中作为传输介质而使用无线或者有线的任一者,在WAN中作为传输介质而使用有线)。在此,个人计算机包含桌上型PC、膝上型PC以及平板型PC。另外,智能手机也包括多功能移动电话终端。
此外,运动图像共享服务的客户端除了将从服务器下载的编码数据解码后显示在显示器上的功能之外,还具有对由照相机拍摄的运动图像进行编码后上传到服务器的功能。即,运动图像共享服务的客户端作为发送装置PROD_A以及接收装置PROD_B的两者而发挥功能。
接下来,参考图58来说明能够将上述运动图像编码装置2以及运动图像解码装置1在运动图像的记录以及再现中加以利用的情况。
图58的(a)是表示了搭载有上述运动图像编码装置2的记录装置PROD_C的构成的框图。如图58的(a)所示,记录装置PROD_C具备:通过对运动图像进行编码来获得编码数据的编码部PROD_C1;以及将编码部PROD_C1所获得的编码数据写入到记录介质PROD_M的写入部PROD_C2。上述运动图像编码装置2被用作该编码部PROD_C1。
此外,记录介质PROD_M可以是:(1)如HDD(Hard Disk Drive)、SSD(Solid StateDrive)等那样内置于记录装置PROD_C的类型的介质,(2)SD存储卡、USB(UniversalSerialBus)闪速存储器等那样与记录装置PROD_C连接的类型的介质,(3)如DVD(DigitalVersatile Disc)、BD(Blu-ray Disc:注册商标)等那样装入内置于记录装置PROD_C的驱动装置(未图示)中的介质。
另外,记录装置PROD_C作为向编码部PROD_C1输入的运动图像的提供源,还可具备:拍摄运动图像的照相机PROD_C3;用于从外部输入运动图像的输入端子PROD_C4;以及用于接收运动图像的接收部PROD_C5以及对图像进行生成或加工的图像处理部C6。在图58的(a)中,例示了记录装置PROD_C具备这些部件全部的构成,但也可省略一部分部件。
此外,接收部PROD_C5可以接收未编码的运动图像,也可接收以与记录用的编码方式不同的传输用的编码方式进行了编码的编码数据。在后者的情况下,在接收部PROD_C5与编码部PROD_C1之间,插入对以传输用的编码方式编码后的编码数据进行解码的传输用解码部(未图示)即可。
作为这样的记录装置PROD_C,例如可列举DVD录像机、BD录像机、HDD(Hard DiskDrive)录像机等(在此情况下,输入端子PROD_C4或者接收部PROD_C5成为运动图像的主要提供源)。另外,可携式摄像机(在此情况下,照相机PROD_C3成为运动图像的主要的提供源)、个人计算机(在此情况下,接收部PROD_C5或者图像处理部C6成为运动图像的主要提供源)、智能手机(在此情况下,照相机PROD_C3或者接收部PROD_C5成为运动图像的主要的提供源)等,也是这样的记录装置PROD_C的一例。
图58的(b)是表示了搭载有上述运动图像解码装置1的再现装置PROD_D的构成的框图。如图58的(b)所示,再现装置PROD_D具备:将写入到记录介质PROD_M中的编码数据读出的读出部PROD_D1;以及通过对读出部PROD_D1所读出的编码数据进行解码来获得运动图像的解码部PROD_D2。上述运动图像解码装置1被用作该解码部PROD_D2。
此外,记录介质PROD_M既可以是(1)如HDD、SSD等那样内置于再现装置PROD_D的类型的介质,也可以是(2)SD存储卡、USB闪速存储器等那样与再现装置PROD_D连接的类型的介质,还可以是(3)如DVD、BD等那样装入内置于再现装置PROD_D的驱动装置(未图示)的介质。
另外,再现装置PROD_D作为解码部PROD_D2所输出的运动图像的提供目的地,还可具备:对运动图像进行显示的显示器PROD_D3;用于将运动图像输出到外部的输出端子PROD_D4以及对运动图像进行发送的发送部PROD_D5。在图58的(b)中,例示了再现装置PROD_D具备这些部件全部的构成,但也可省略一部分部件。
此外,发送部PROD_D5可以发送未编码的运动图像,也可发送以与记录用的编码方式不同的传输用的编码方式进行了编码的编码数据。在后者的情况下,在解码部PROD_D2与发送部PROD_D5之间插入对运动图像以传输用的编码方式进行编码的编码部(未图示)即可。
作为这样的再现装置PROD_D,例如可列举DVD播放器、BD播放器、HDD播放器等(该情况下,连接电视接收机等的输出端子PROD_D4成为运动图像的主要的提供目的地)。另外,电视接收机(在此情况下,显示器PROD_D3成为运动图像的主要的提供目的地)、数字标牌(也称为电子广告牌、电子布告栏等,显示器PROD_D3或者发送部PROD_D5成为运动图像的主要的提供目的地)、桌上型PC(该情况下,输出端子PROD_D4或者发送部PROD_D5成为运动图像的主要的提供目的地)、膝上型或者平板型PC(该情况下,显示器PROD_D3或者发送部PROD_D5成为运动图像的主要的提供目的地)、智能手机(该情况下,显示器PROD_D3或者发送部PROD_D5成为运动图像的主要的提供目的地)等,也是这样的再现装置PROD_D的一例。
(附记事项2)
上述运动图像解码装置1以及运动图像编码装置2的各模块可通过集成电路(IC芯片)上形成的逻辑电路来以硬件方式实现,也可利用CPU(Central Processing Unit)来以软件方式实现。
在后者的情况下,上述各装置具备:执行用于实现各功能的程序的命令的CPU;存放有上述程序的ROM(Read Only Memory);将上述程序展开的RAM(Random AccessMemory);存放上述程序以及各种数据的存储器等的存储装置(记录介质)等。并且,本发明的目的也可通过下述方式来实现:将以计算机可读取的方式记录有作为用于实现上述功能的软件的上述各装置的控制程序的程序代码(可执行格式程序、中间代码程序、源程序)的记录介质提供给上述各装置,该计算机(或CPU、MPU)将记录介质中所记录的程序代码读出并加以执行。
作为上述记录介质,例如能使用:磁带、盒式磁带等带类,包括软盘(注册商标)/硬盘等磁盘、CD-ROM/MO/MD/DVD/CD-R等光盘的盘类,IC卡(包括存储卡)/光卡等的卡类,掩模ROM/EPROM/EEPROM/闪速ROM等半导体存储器类,或者PLD(Programmable logic device)、FPGA(Field Programmable Gate Array)等逻辑电路类等。
另外,也可将上述各装置构成为能够与通信网络连接,经由通信网络来提供上述程序代码。该通信网络只要能够传输程序代码即可,并不特别限定。例如,可利用互联网、内联网、外联网、LAN、ISDN、VAN、CATV通信网、虚拟专用网(Virtual Private Network)、电话线路网、移动通信网、卫星通信网等。另外,构成该通信网络的传输介质也是只要能够传输程序代码即可,并不限定于特定的构成或种类。例如,可使用IEEE1394、USB、电力线传输、有线TV线路、电话线、ADSL(Asymmetric Digital Subscriber Line)线路等的有线介质,也可使用如IrDA、遥控器的红外线、Bluetooth(注册商标)、IEEE802.11无线、HDR(High DataRate)、NFC(Near FieldCommunication)、DLNA(Digital Living Network Alliance)、移动电话网、卫星线路地面波数字网等的无线介质。
本发明不限于上述的各实施方式,能在权利要求所示的范围内进行各种变更,对不同的实施方式所分别公开的技术手段进行适当组合而得到的实施方式也包含在本发明的技术的范围中。
另外,本发明还能表现如下。本发明的一形态所涉及的图像解码装置是对编码数据进行解码的算术解码装置,该编码数据是针对按每个单位区域来对对象图像进行频率变换从而按每个频率分量而得到的变换系数,对表征该变换系数的各种语法进行算术编码而得到的,该算术解码装置具备:上下文索引导出机构,其导出对变换系数有无标志分配的上下文索引,该变换系数有无标志是表示上述变换系数是否为0的语法;以及语法解码机构,其基于通过对上述变换系数有无标志所分配的上下文索引而指定的概率状态,来对该变换系数有无标志进行算术解码。上述上下文索引导出机构基于对象频率分量在频域上的位置(xC,yC)(xC是0以上的整数,yC是0以上的整数)、表示该频域的横向宽度的变量即log2TrafoWidth(log2TrafoWidth是自然数)以及表示该频域的纵向宽度的变量即log2TrafoHeight(log2TrafoHeight是自然数),通过下式
X=log2TrafoWidth==2?xC:xC>>1
Y=log2TrafoHeight==2?yC:yC>>1
来导出变量X以及Y,将基于该变量X的低位第1比特(高位第2比特)的值、该变量X的低位第2比特(高位第1比特)的值、该变量Y的低位第1比特(高位第2比特)的值、该变量Y的低位第2比特(高位第1比特)的值而确定的对象频率分量所属的子区域的识别编号(相对上下文索引)、与给定的偏移进行相加,来导出对象频率分量的上下文索引。
根据上述的构成,通过利用了表征处理对象的频率分量的位置的xC和yC的各比特的值的比特运算,不仅能将频域分割为多个子区域(相对上下文索引),而且能导出与各子区域对应的上下文索引。故而,能谋求上下文索引的导出处理的简化、以及上下文索引导出所涉及的存储器尺寸的削减。
在本发明所涉及的算术解码装置中,构成上述子区域的识别编号(相对上下文索引)的各比特的值可以通过由变量X的低位第2比特的值形成的第1比特、与由变量Y的低位第2比特的值形成的第2比特、与由变量X的低位第1比特的值、变量X的低位第2比特的值、变量Y的低位第1比特的值、变量Y的低位第2比特的值的给定的逻辑运算形成的第3比特的组合来确定。
根据上述的构成,能将对象频率分量所属的子区域(相对上下文索引)通过基于对象频率分量的位置(xC,yC)的简易的比特运算来进行识别,因此能简化与系数有无标志相关的上下文索引导出。
在本发明所涉及的算术解码装置中,用于上述相对上下文索引的给定的比特的导出的逻辑运算可以是变量X的低位第2比特的否定和变量Y的低位第1比特的逻辑积的值、与变量X的低位第1比特和变量Y的低位第2比特的否定的逻辑积的值的逻辑和。
根据上述的构成,能设定与对象频率分量所属的子区域(相对上下文索引)相适合的值。
本发明所涉及的算术解码装置可以是对编码数据进行解码的算术解码装置,该编码数据是针对按每个单位区域来对对象图像进行频率变换从而按每个频率分量而得到的各变换系数,对表征该变换系数的各种语法进行算术编码而得到的,该算术解码装置具备:子块分割机构,其将与处理对象的单位区域对应的对象频域分割为给定尺寸的子块;子块系数有无标志解码机构,其针对由上述子块分割机构分割出的各子块,对表示该子块中是否至少包含1个非0变换系数的子块系数有无标志进行解码;分割机构,其以各频率分量以及各子块的至少任一者为分割单位,将对象频域分割为多个部分区域;上下文索引导出机构,其导出对各变换系数有无标志分配的上下文索引,该各变换系数有无标志是表示属于各部分区域的各变换系数是否为0的语法;以及语法解码机构,其将属于各部分区域的各变换系数有无标志,基于通过对该变换系数有无标志所分配的上下文索引而指定的概率状态来进行算术解码,在针对对象子块而解码出的子块系数有无标志表示在该对象子块中至少包含1个非0变换系数的情况下,且属于该对象子块的各变换系数在对象频域中属于低频域或者中频域的部分区域的情况下,上述上下文索引导出机构基于参考区域中所含的解码完毕的非0变换系数的数目来导出对各变换系数有无标志分配的上下文索引,在针对对象子块而解码出的子块系数有无标志表示在该对象子块中不含有非0变换系数的情况下,将针对属于该对象子块的全部的变换系数的各变换系数的变换系数有无标志设为表示该变换系数为0的状况,来进行解码处理。
根据上述的构成,较之于现有技术,能对于低频域内所含的频率分量考虑非零系数的发生频度的偏倚来导出上下文索引,因此能削减系数有无标志的码量,削减解码所涉及的处理量。
在本发明所涉及的算术解码装置中,可以是,在上述对象频率分量的位置的x座标与y座标之和小于第1阈值时,将上述部分区域作为低频域,在上述对象频率分量的位置的x座标与y座标之和为第1阈值以上、且该对象频率分量所属的子块位置的X座标与Y座标之和小于第2阈值时,将上述部分区域作为中频域,在上述对象频率分量的位置的x座标与y座标之和为第1阈值以上时、或该对象频率分量所属的子块位置的X座标与Y座标之和大于第2阈值时,将上述部分区域作为高频域。
根据上述的构成,关于亮度与色差,能使部分区域的判定处理公共化,因此能简化与系数有无标志相关的上下文索引导出处理。
在本发明所涉及的算术解码装置中,用于上述部分区域的识别的上述第1阈值和上述第2阈值对于亮度与色差而言可以是公共的。
根据上述的构成,关于亮度和色差,能使部分区域的判定处理公共化,因此能简化与系数有无标志相关的上下文索引导出处理。
在本发明所涉及的算术解码装置中,上述第1阈值的值可以为2。
根据上述的构成,由于是识别低频域与中频域的适当的阈值,因此能进一步削减系数有无标志的码量,削减解码所涉及的处理量。
为了解决上述的课题,本发明所涉及的算术解码装置是对编码数据进行解码的算术解码装置,该编码数据是针对按每个单位区域来对对象图像进行频率变换从而按每个频率分量而得到的各变换系数,对表征该变换系数的各种语法进行算术编码而得到的,该算术解码装置具备:上下文索引导出机构,其导出对各变换系数有无标志分配的上下文索引,该各变换系数有无标志是表示各变换系数是否为0的语法;以及语法解码机构,其将各变换系数有无标志基于通过对该变换系数有无标志所分配的上下文索引而指定的概率状态来进行算术解码,上述上下文索引导出机构在将具有第1尺寸的频域、以及具有大于上述第1尺寸的第2尺寸的频域分别分割为多个子区域后,对于各子区域导出上下文索引,具有上述第1尺寸的频域的分割图案以及具有上述第2尺寸的频域的分割图案彼此相似。
根据上述构成的算术解码装置,将具有上述第1尺寸的频域以及具有上述第2尺寸的频域通过彼此相似的分割图案而分割为多个子区域。如此,通过进行利用了彼此相似的分割图案的分割处理,从而分类处理的处理量得以削减,因此能削减变换系数的解码所涉及的处理量。
在上述的构成中,上述上下文索引导出机构基于对象频率分量在频域上的位置(xC,yC)(xC是0以上的整数,yC是0以上的整数)、以及表示该频域的尺寸的变量即log2TrafoSize(log2TrafoSize是自然数),通过下式
X=log2TrafoSize==2?xC:xC>>1
Y=log2TrafoSize==2?yC:yC>>1
来导出变量X以及Y,优选地,
在X=0且Y=0时,将对象频率分量分类至子区域R0,
在非(X=0且Y=0),而X<2且Y<2时,将对象频率分量分类至子区域R1,
在X=2且Y<2时,将对象频率分量分类至子区域R2,
在X=3且Y<2时,将对象频率分量分类至子区域R3,
在X<2且Y=2时,将对象频率分量分类至子区域R4,
在X<2且Y=3时,将对象频率分量分类至子区域R5,
在X≥2且Y≥2时,将对象频率分量分类至子区域R6。
根据上述的构成,通过利用了基于对象频率分量在频域上的位置(xC,yC)、以及表示该频域的尺寸的变量即log2TrafoSize而计算出的变量X以及Y的分支处理,来将频域分割为多个子区域,因此分类处理的处理量得以削减。
另外,在上述的构成中,上述上下文索引导出机构优选对于上述子区域R0~区域R6当中的上述子区域R3和上述子区域R5,来导出公共的上下文索引。
根据上述的构成,由于至少对于水平频率为高频域的子区域R3以及垂直频率为高频域的子区域R5来导出公共的上下文索引,因此在削减处理量的同时,实现高的编码效率。
另外,为了解决上述的课题,本发明所涉及的算术解码装置是对编码数据进行解码的算术解码装置,该编码数据是针对按每个单位区域来对对象图像进行频率变换从而按每个频率分量而得到的各变换系数,对表征该变换系数的各种语法进行算术编码而得到的,该算术解码装置具备:子块分割机构,其将与处理对象的单位区域对应的对象频域分割为给定尺寸的子块;子块系数有无标志解码机构,其针对由上述子块分割机构分割出的各子块,来对表示在该子块中是否至少包含1个非0变换系数的子块系数有无标志进行解码;以及子块扫描顺序设定机构,其设定上述子块系数有无标志解码机构所执行的子块扫描的顺序,在应用于处理对象的单位区域的预测方式为帧内预测的情况下,上述子块扫描顺序设定机构根据该帧内预测的预测方向来设定子块扫描顺序。
根据上述构成的算术解码装置,在应用于处理对象的单位区域的预测方式为帧内预测的情况下,根据该帧内预测的预测方向来设定子块扫描顺序。一般而言,帧内预测的预测方向与变换系数在频域上的配置的偏倚之间存在相关。因此,根据上述的构成,通过根据帧内预测的预测方向来设定子块扫描顺序,能进行与子块系数有无标志的偏倚相适应的子块扫描。由此,能削减作为解码对象的子块系数有无标志的码量,从而变换系数的解码所涉及的处理量得以削减。
在上述的构成中,优选地,上述子块扫描顺序设定机构根据处理对象的单位区域的尺寸来设定上述子块扫描顺序。
根据上述的构成,由于还根据处理对象的单位区域的尺寸来设定上述子块扫描顺序,因此能更有效地削减子块系数有无标志的码量,从而变换系数的解码所涉及的处理量得以削减。
另外,在上述的构成中,优选地,上述子块系数有无标志解码机构将对象子块的子块系数有无标志根据与该对象子块相邻的多个相邻子块当中按照上述子块扫描顺序而设定的1个或多个参考子块的子块系数有无标志的值来进行推测。
根据上述的构成,由于将对象子块的子块系数有无标志根据与该对象子块相邻的多个相邻子块当中按照上述子块扫描顺序而设定的1个或多个参考子块的子块系数有无标志的值来进行推测,因此能更有效地削减子块系数有无标志的码量,从而变换系数的解码所涉及的处理量得以削减。
另外,在上述的构成中,优选地,在各参考子块的子块系数有无标志表示在该参考子块中至少包含1个非0变换系数的情况下,上述子块系数有无标志解码机构将上述对象子块的子块系数有无标志设定为表示在该对象子块中至少包含1个非0变换系数的值。
根据上述的构成,由于在各参考子块的子块系数有无标志表示在该参考子块中至少包含1个非0变换系数的情况下,将上述对象子块的子块系数有无标志设定为表示在该对象子块中至少包含1个非0变换系数的值,因此能更有效地削减子块系数有无标志的码量,从而变换系数的解码所涉及的处理量得以削减。
另外,为了解决上述的课题,本发明所涉及的算术解码装置是对编码数据进行解码的算术解码装置,该编码数据是针对按每个单位区域来对对象图像进行频率变换从而按每个频率分量而得到的各变换系数,对表征该变换系数的各种语法进行算术编码而得到的,该算术解码装置具备:上下文索引导出机构,其导出对各变换系数有无标志分配的上下文索引,该各变换系数有无标志是表示各变换系数是否为0的语法;以及语法解码机构,其将各变换系数有无标志基于通过对该变换系数有无标志所分配的上下文索引而指定的概率状态来进行算术解码,上述上下文索引导出机构对属于具有第1尺寸的频域的1个或多个变换系数有无标志、以及属于具有大于上述第1尺寸的第2尺寸的频域的1个或多个变换系数有无标志,来导出公共的上下文索引。
根据上述构成的算术解码装置,由于对属于具有第1尺寸的频域的1个或多个变换系数有无标志、以及属于具有大于上述第1尺寸的第2尺寸的频域的1个或多个变换系数有无标志,来导出公共的上下文索引,因此能削减上下文索引导出所涉及的处理量、以及用于保持上下文索引的存储器尺寸。
在上述的构成中,优选地,上述上下文索引导出机构对属于具有上述第1尺寸的频域的1个或多个变换系数有无标志、以及属于具有上述第2尺寸的频域的低频侧的1个或多个变换系数有无标志,来导出公共的上下文索引。
根据上述的构成,由于对属于具有上述第1尺寸的频域的1个或多个变换系数有无标志、以及属于具有上述第2尺寸的频域的低频侧的1个或多个变换系数有无标志,来导出公共的上下文索引,因此能更有效地削减上下文索引导出所涉及的处理量、以及用于保持上下文索引的存储器尺寸。
另外,在上述的构成中,优选地,各变换系数有无标志是与亮度相关的变换系数有无标志、以及与色差相关的变换系数有无标志的任一者,上述上下文索引导出机构对于与亮度相关的变换系数有无标志和与色差相关的变换系数有无标志,独立地导出上下文索引。
根据上述的构成,由于对与亮度相关的变换系数有无标志和与色差相关的变换系数有无标志,独立地导出上下文索引,因此能在维持高的编码效率的同时,削减上下文索引导出所涉及的处理量、以及用于保持上下文索引的存储器尺寸。
另外,为了解决上述的课题,本发明所涉及的算术解码装置是对编码数据进行解码的算术解码装置,该编码数据是针对按每个单位区域来对对象图像进行频率变换从而按每个频率分量而得到的各变换系数,对表征该变换系数的各种语法进行算术编码而得到的,该算术解码装置具备:子块分割机构,其将与处理对象的单位区域对应的对象频域分割为给定尺寸的子块;子块系数有无标志解码机构,其针对由上述子块分割机构分割出的各子块,对表示在该子块中是否至少包含1个非0变换系数的子块系数有无标志进行解码;上下文索引导出机构,其导出对各变换系数有无标志分配的上下文索引,该各变换系数有无标志是表示各变换系数是否为0的语法;以及语法解码机构,其将各变换系数有无标志基于通过对该变换系数有无标志所分配的上下文索引而指定的概率状态来进行算术解码,上述上下文索引导出机构对属于对象子块的变换系数有无标志,来导出公共的上下文索引。
根据上述的构成,由于对属于对象子块的变换系数有无标志来导出公共的上下文索引,因此上下文索引导出所涉及的处理量得以削减。
另外,在上述的构成中,优选地,上述上下文索引导出机构基于在与对象子块相邻的相邻子块中是否包含非0变换系数的情况,来对属于该对象子块的变换系数有无标志导出公共的上下文索引。
根据上述的构成,由于基于在与对象子块相邻的相邻子块中是否包含非0变换系数的情况,来对属于该对象子块的变换系数有无标志导出公共的上下文索引,因此能在维持高的编码效率的同时,削减上下文索引导出所涉及的处理量。
另外,在上述的构成中,优选地,各变换系数有无标志是与亮度相关的变换系数有无标志、以及与色差相关的变换系数有无标志的任一者,上述上下文索引导出机构基于在与对象子块相邻的相邻子块中是否包含非0变换系数的情况,来对属于该对象子块的色差相关的变换系数有无标志导出公共的上下文索引。
根据上述的构成,基于在与对象子块相邻的相邻子块中是否包含非0变换系数的情况,来对属于该对象子块的色差相关的变换系数有无标志导出公共的上下文索引,因此能在维持高的编码效率的同时,削减上下文索引导出所涉及的处理量。
另外,为了解决上述的课题,本发明所涉及的图像解码装置具备:上述算术解码装置;逆频率变换机构,其通过对由上述算术解码装置解码出的变换系数进行逆频率变换来生成残差图像;以及解码图像生成机构,其通过对由上述逆频率变换机构生成的残差图像、与根据生成完毕的解码图像而预测出的预测图像进行相加,来生成解码图像。
根据上述的构成,与上述算术解码装置同样地,能削减作为解码对象的子块系数有无标志的码量,从而变换系数的解码所涉及的处理量得以削减。
另外,为了解决上述的课题,本发明所涉及的算术编码装置是生成编码数据的算术编码装置,该编码数据是针对按每个单位区域来对对象图像进行频率变换从而按每个频率分量而得到的各变换系数,对表征该变换系数的各种语法进行算术编码而得到的,该算术编码装置具备:子块分割机构,其将与处理对象的单位区域对应的对象频域分割为给定尺寸的子块;子块系数有无标志编码机构,其针对由上述子块分割机构分割出的各子块,对表示在该子块中是否至少包含1个非0变换系数的子块系数有无标志进行编码;以及子块扫描顺序设定机构,其设定上述子块系数有无标志编码机构所执行的子块扫描顺序,在应用于处理对象的单位区域的预测方式为帧内预测的情况下,上述子块扫描顺序设定机构根据该帧内预测的预测方向来设定子块扫描顺序。
根据上述构成的算术编码装置,在应用于处理对象的单位区域的预测方式为帧内预测的情况下,根据该帧内预测的预测方向来设定子块扫描顺序。一般而言,帧内预测的预测方向、与变换系数在频域上的配置的偏倚之间存在相关。因此,根据上述的构成,通过根据帧内预测的预测方向来设定子块扫描顺序,能进行与子块系数有无标志的偏倚相适应的子块扫描。由此,能削减作为编码对象的子块系数有无标志的码量,变换系数的编码所涉及的处理量得以削减。
另外,为了解决上述的课题,本发明所涉及的图像编码装置具备:变换系数生成机构,其通过按每个单位区域对编码对象图像与预测图像的残差图像进行频率变换来生成变换系数;以及上述算术编码装置,上述算术编码装置通过对表征由上述变换系数生成机构生成的变换系数的各种语法进行算术编码来生成编码数据。
根据上述的构成,与上述算术编码装置同样地,能削减作为编码对象的子块系数有无标志的码量,从而变换系数的编码所涉及的处理量得以削减。
另外,本发明所涉及的算术解码装置是对编码数据进行解码的算术解码装置,该编码数据是针对按每个单位区域来对对象图像进行频率变换从而按每个频率分量而得到的各变换系数,对表征该变换系数的各种语法进行算术编码而得到的,该算术解码装置具备:上下文索引导出机构,其导出对各变换系数有无标志分配的上下文索引,该各变换系数有无标志是表示各变换系数是否为0的语法;以及语法解码机构,其将各变换系数有无标志基于通过对该变换系数有无标志所分配的上下文索引而指定的概率状态来进行算术解码,上述上下文索引导出机构将具有第1形状的频域、以及具有与上述第1形状不同的第2形状的频域分别分割为多个子区域后,对于各子区域来导出上下文索引,具有上述第1形状的频域的分割图案、以及具有上述第2形状的频域的分割图案通过旋转以及轴对称变换而彼此一致。
根据上述构成的算术解码装置,具有上述第1形状的频域的分割图案、以及具有上述第2形状的频域的分割图案通过旋转以及轴对称变换而彼此一致。如此,通过进行利用了经由旋转以及轴对称变换而彼此一致的分割图案的分割处理,分类处理的处理量得以削减,因此能削减变换系数的解码所涉及的处理量。
另外,在上述的构成中,优选地,上述上下文索引导出机构基于对象频率分量在频域上的位置(xC,yC)(xC是0以上的整数,yC是0以上的整数)、表示该频域的横向宽度的变量即log2TrafoWidth(log2TrafoWidth是自然数)以及表示该频域的纵向宽度的变量即log2TrafoHeight(l0g2TrafoHeight是自然数),通过下式
X=log2TrafoWidth==2?xC:xC>>2
Y=log2TrafoHeight==2?yC:yC>>2
来导出变量X以及Y,
在X=0且Y=0时,将对象频率分量分类至子区域A0,
在非(X=0且Y=0),而X<2且Y<2时,将对象频率分量分类至子区域A1,
在X=2且Y<2时,将对象频率分量分类至子区域A2,
在X=3且Y<2时,将对象频率分量分类至子区域A3,
在X<2且Y=2时,将对象频率分量分类至子区域A4,
在X<2且Y=3时,将对象频率分量分类至子区域A5,
在X≥2且Y≥2时,将对象频率分量分类至子区域A6。
根据上述的构成,由于通过利用了基于对象频率分量在频域上的位置(xC,yC)、表示该频域的横向宽度的变量即log2TrafoWidth和表示该频域的纵向宽度的变量即log2TrafoHeight而计算出的变量X以及Y的分支处理,来将频域分割为多个子区域,因此分类处理的处理量得以削减。
另外,在上述算术解码装置中,具有上述第1尺寸的频域的分割图案对于亮度分量与色差分量是公共的,因此具有上述第2尺寸的频域的分割图案优选对于亮度分量与色差分量是公共的。
根据上述的构成,对于亮度分量与色差分量,频率分量的分割图案是相同的,因此上下文索引导出处理被简化,从而变换系数的解码所涉及的处理量得以削减。
另外,本发明所涉及的算术解码装置是对编码数据进行解码的算术解码装置,该编码数据是针对按每个单位区域来对对象图像进行频率变换从而按每个频率分量而得到的各变换系数,对表征该变换系数的各种语法进行算术编码而得到的,该算术解码装置具备:上下文索引导出机构,其导出对各变换系数有无标志分配的上下文索引,该各变换系数有无标志是表示各变换系数是否为0的语法;以及语法解码机构,其将各变换系数有无标志基于通过对该变换系数有无标志所分配的上下文索引而指定的概率状态来进行算术解码,上述上下文索引导出机构将对象频域分别分割为多个子区域后,对于各子区域来导出上下文索引,上述对象频域的分割图案对于亮度分量与色差分量是公共的。
根据上述构成的算术解码装置,对于亮度分量与色差分量,频率分量的分割图案相同,因此上下文索引导出处理被简化,从而变换系数的解码所涉及的处理量得以削减。
另外,优选地,上述上下文索引导出机构基于对象频率分量在频域上的位置(xC,yC)(xC是0以上的整数,yC是0以上的整数)、表示该频域的横向宽度的变量即width(width是自然数)和表示该频域的纵向宽度的变量即height(height是自然数),在xC<width/2,且,yC<height/2的情况下,根据(1-a)~(1-d)的条件而将对象频率分量分类至子区域R0~R3,
(1-a)在xC<width/4,且,yC<height/4的情况下,将对象频率分量分类至子区域R0
(1-b)在xC≥width/4,且,yC<height/4的情况下,将对象频率分量分类至子区域R1
(1-c)在xC<width/4,且,yC≥height/4的情况下,将对象频率分量分类至子区域R2
(1-d)在xC≥width/4,且,yC≥height/4的情况下,将对象频率分量分类至子区域R3
在xC≥width/2,且,yC<height/2的情况下,根据(2-a)~(2-b)的条件而将对象频率分量分类至子区域R4或R5,
(2-a)在xC<width×3/4的情况下,将对象频率分量分类至子区域R4
(2-b)在xC≥width×3/4的情况下,将对象频率分量分类至子区域R5
在xC<width/2,且,yC≥height/2的情况下,根据(3-a)~(3-b)的条件而将对象频率分量分类至子区域R6或R7,
(3-a)在yC<height×3/4的情况下,将对象频率分量分类至子区域R6
(3-b)在yC≥height×3/4的情况下,将对象频率分量分类至子区域R7
在xC≥width/2,且,yC≥height/2的情况下,将对象频率分量分类至子区域R8。
上述的构成对于具有彼此不同的尺寸的频域使用公共的分类处理,因此能简化上下文索引导出处理。另外,根据上述的构成,较之于现有的构成,能削减要导出的上下文索引的数目,因此能谋求上下文索引导出处理的减轻、以及用于保持上下文索引的存储器尺寸的减小。
另外,优选地,上述上下文索引导出机构基于对象频率分量在频域上的位置(xC,yC)(xC是0以上的整数,yC是0以上的整数)、表示该频域的横向宽度的变量即width(width是自然数)和表示该频域的纵向宽度的变量即height(height是自然数),在满足xC<width/2,且,yC<height/2的情况下,根据(1-a)~(1-b)的条件而将对象频率分量分类至子区域R0~R1,
(1-a)在xC<width/4,且,yC<height/4的情况下,将对象频率分量分类至子区域R0
(1-b)在xC≥width/4,或,yC≥height/4的情况下,将对象频率分量分类至子区域R1
xC≥width/2,且,yC<height/2的情况下,根据(2-a)~(2-b)的条件而将对象频率分量分类至子区域R2或R3,
(2-a)在xC<width×3/4的情况下,将对象频率分量分类至子区域R2
(2-b)在xC≥width×3/4的情况下,将对象频率分量分类至子区域R3
在xC<width/2,且,yC≥height/2的情况下,根据(3-a)~(3-b)的条件而将对象频率分量分类至子区域R4或R5,
(3-a)在yC<height×3/4的情况下,将对象频率分量分类至子区域R4
(3-b)在yC≥height×3/4的情况下,将对象频率分量分类至子区域R5
在xC≥width/2,且,yC≥height/2的情况下,将对象频率分量分类至子区域R6。
根据上述的构成,由于能对具有彼此不同的尺寸的频域使用公共的分类处理,因此能简化上下文索引导出处理。另外,根据上述的构成,较之于现有的构成,能削减要导出的上下文索引的数目,因此能谋求上下文索引导出处理的减轻、以及用于保持上下文索引的存储器尺寸的减小。
工业实用性
本发明能适合应用于对经算术编码的编码数据进行解码的算术解码装置以及生成经算术编码的编码数据的算术编码装置。
标号说明
1 运动图像解码装置(图像解码装置)
11 可变长码解码部
111 量化残差信息解码部(算术解码装置)
120 变换系数解码部
123 系数解码控制部(子块分割机构、子块扫描顺序设定机构)
124 系数有无标志解码部(上下文索引导出机构)
124a 频率分类部
124b 位置上下文导出部
124c 周边参考上下文导出部
124d 系数有无标志存储部
124e系数有无标志设定部
124x导出方法控制部
124z上下文导出部
127 子块系数有无标志解码部(子块系数有无标志解码机构)
127a 上下文导出部
127b 子块系数有无标志存储部
127c 子块系数有无标志设定部
130 算术码解码部
131 上下文记录更新部
132 比特解码部(语法解码机构)
2 运动图像编码装置(图像编码装置)
27 可变长码编码部
271 量化残差信息编码部(算术编码装置)
220 变换系数编码部
223 系数编码控制部(子块分割机构、子块扫描顺序设定机构)
224 系数有无标志编码部(上下文索引导出机构)
224a 频率分类部
224b 位置上下文导出部
224c 周边参考上下文导出部
224d 系数有无标志存储部
224e 系数有无标志设定部
224x 导出方法控制部
224z 上下文导出部
227 子块系数有无标志编码部(子块系数有无标志编码机构)
227a 上下文导出部
227b 子块系数有无标志存储部
227c 子块系数有无标志设定部
228 语法导出部
230 算术码编码部
231 上下文记录更新部
232 比特编码部(语法编码机构)

Claims (3)

1.一种图像解码装置,将按每个单位区域对对象图像进行频率变换而得到的变换系数的编码数据进行解码,所述图像解码装置具备:
上下文索引导出机构,其导出对所述变换系数是否为0进行表示的变换系数有无标志的上下文索引;和
语法解码机构,其基于通过已导出的所述上下文索引而指定的概率状态,来对所述变换系数有无标志进行算术解码,
所述上下文索引导出机构对于亮度,将DC分量中的所述变换系数有无标志的上下文索引的值针对所述单位区域的尺寸不同的至少2个单位区域设定为第1公共的值,而对于色差,将DC分量中的所述变换系数有无标志的上下文索引的值针对所述单位区域的尺寸不同的至少2个单位区域设定为第2公共的值,
针对所述单位区域的尺寸为4×4的单位区域的所述变换系数有无标志的上下文索引的值在所述亮度的情况下使用查询表的参考值来设定,而在所述色差的情况下通过对查询表的参考值相加给定的偏移值来设定。
2.一种图像解码方法,将按每个单位区域对对象图像进行频率变换而得到的变换系数的编码数据进行解码,所述图像解码方法至少包含:
导出对所述变换系数是否为0进行表示的变换系数有无标志的上下文索引的步骤;
基于通过已导出的所述上下文索引而指定的概率状态,来对所述变换系数有无标志进行算术解码的步骤;
对于亮度,将DC分量中的所述变换系数有无标志的上下文索引的值针对所述单位区域的尺寸不同的至少2个单位区域设定为第1公共的值的步骤;和
对于色差,将DC分量中的所述变换系数有无标志的上下文索引的值针对所述单位区域的尺寸不同的至少2个单位区域设定为第2公共的值的步骤,
针对所述单位区域的尺寸为4×4的单位区域的所述变换系数有无标志的上下文索引的值在所述亮度的情况下使用查询表的参考值来设定,而在所述色差的情况下通过对查询表的参考值相加给定的偏移值来设定。
3.一种图像编码装置,针对对象图像按每个单位区域来生成编码数据,所述图像编码装置具备:
上下文索引导出机构,其导出对变换系数是否为0进行表示的变换系数有无标志的上下文索引;和
语法编码机构,其基于通过已导出的所述上下文索引而指定的概率状态,来对所述变换系数有无标志进行算术编码,
所述上下文索引导出机构对于亮度,将DC分量中的所述变换系数有无标志的上下文索引的值针对所述单位区域的尺寸不同的至少2个单位区域设定为第1公共的值,而对于色差,将DC分量中的所述变换系数有无标志的上下文索引的值针对所述单位区域的尺寸不同的至少2个单位区域设定为第2公共的值,
针对所述单位区域的尺寸为4×4的单位区域的所述变换系数有无标志的上下文索引的值在所述亮度的情况下使用查询表的参考值来设定,而在所述色差的情况下通过对查询表的参考值相加给定的偏移值来设定。
CN201810673977.8A 2011-12-28 2012-12-26 图像解码装置、图像解码方法以及图像编码装置 Active CN108769691B (zh)

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
JP2011-289938 2011-12-28
JP2011289938 2011-12-28
JP2012-011555 2012-01-23
JP2012011555 2012-01-23
JP2012031118 2012-02-15
JP2012-031118 2012-02-15
JP2012091444 2012-04-12
JP2012-091444 2012-04-12
PCT/JP2012/083555 WO2013099892A1 (ja) 2011-12-28 2012-12-26 算術復号装置、画像復号装置、および、算術符号化装置
CN201280065204.2A CN104067614B (zh) 2011-12-28 2012-12-26 算术解码装置、图像解码装置以及算术编码装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201280065204.2A Division CN104067614B (zh) 2011-12-28 2012-12-26 算术解码装置、图像解码装置以及算术编码装置

Publications (2)

Publication Number Publication Date
CN108769691A true CN108769691A (zh) 2018-11-06
CN108769691B CN108769691B (zh) 2022-05-31

Family

ID=48697376

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201810673979.7A Active CN108900839B (zh) 2011-12-28 2012-12-26 图像解码装置及方法、图像编码装置及方法
CN201280065204.2A Active CN104067614B (zh) 2011-12-28 2012-12-26 算术解码装置、图像解码装置以及算术编码装置
CN201810673977.8A Active CN108769691B (zh) 2011-12-28 2012-12-26 图像解码装置、图像解码方法以及图像编码装置

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CN201810673979.7A Active CN108900839B (zh) 2011-12-28 2012-12-26 图像解码装置及方法、图像编码装置及方法
CN201280065204.2A Active CN104067614B (zh) 2011-12-28 2012-12-26 算术解码装置、图像解码装置以及算术编码装置

Country Status (6)

Country Link
US (1) US10129548B2 (zh)
EP (1) EP2800368B1 (zh)
JP (2) JP6134651B2 (zh)
CN (3) CN108900839B (zh)
RU (1) RU2628130C2 (zh)
WO (1) WO2013099892A1 (zh)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9621894B2 (en) * 2012-01-13 2017-04-11 Qualcomm Incorporated Determining contexts for coding transform coefficient data in video coding
AU2012200319B2 (en) * 2012-01-19 2015-11-26 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding the significance map for residual coefficients of a transform unit
AU2012200345B2 (en) 2012-01-20 2014-05-01 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding the significance map residual coefficients of a transform unit
PT2805419T (pt) 2012-01-20 2017-09-01 Ge Video Compression Llc Codificação e descodificação de coeficiente de transformada
KR20140110938A (ko) * 2012-01-20 2014-09-17 소니 주식회사 유효성 맵 코딩의 복잡성 감소
CN107257462B (zh) 2012-03-26 2020-04-28 Jvc 建伍株式会社 图像解码装置、图像解码方法、接收装置
DK3361732T3 (da) * 2012-07-02 2020-01-02 Samsung Electronics Co Ltd Entropikodning af en video og entropiafkodning af en video
US9538175B2 (en) * 2012-09-26 2017-01-03 Qualcomm Incorporated Context derivation for context-adaptive, multi-level significance coding
CA2896637C (en) * 2013-03-26 2018-02-13 Mediatek Inc. Method of cross color intra prediction
US9336558B2 (en) * 2013-09-27 2016-05-10 Apple Inc. Wavefront encoding with parallel bit stream encoding
US9781424B2 (en) 2015-01-19 2017-10-03 Google Inc. Efficient context handling in arithmetic coding
US10531102B2 (en) * 2015-09-10 2020-01-07 Samsung Electronics Co., Ltd. Encoding device, decoding device, and encoding and decoding method thereof
KR20170102806A (ko) * 2016-03-02 2017-09-12 한국전자통신연구원 비디오 신호 부호화/복호화 방법 및 이를 위한 장치
CN113810703A (zh) 2016-04-29 2021-12-17 世宗大学校产学协力团 用于对图像信号进行编码和解码的方法和装置
CN113411580B (zh) * 2016-05-13 2024-01-30 夏普株式会社 图像解码装置及其方法、图像编码装置及其方法
EP3270595A1 (en) * 2016-07-15 2018-01-17 Thomson Licensing Method and apparatus for last coefficient coding for adaptive transform based video compression
JP2020072277A (ja) * 2017-03-03 2020-05-07 シャープ株式会社 動画像符号化装置及び動画像復号装置
KR102509347B1 (ko) * 2017-04-13 2023-03-14 엘지전자 주식회사 비디오 신호를 인코딩, 디코딩하는 방법 및 장치
WO2018190595A1 (ko) * 2017-04-13 2018-10-18 엘지전자(주) 비디오 신호를 엔트로피 인코딩, 디코딩하는 방법 및 장치
JP6986868B2 (ja) * 2017-06-19 2021-12-22 キヤノン株式会社 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法、プログラム
WO2019029951A1 (en) * 2017-08-08 2019-02-14 Thomson Licensing METHOD AND APPARATUS FOR VIDEO ENCODING AND DECODING
US10484695B2 (en) 2017-10-23 2019-11-19 Google Llc Refined entropy coding for level maps
CN115065821B (zh) * 2017-12-28 2024-03-15 松下电器(美国)知识产权公司 编码装置和解码装置
AU2018416684B2 (en) * 2018-03-29 2022-12-01 Sony Corporation Image processing apparatus and image processing method
JP2018157571A (ja) * 2018-04-19 2018-10-04 マイクロソフト テクノロジー ライセンシング,エルエルシー 非変換符号化のためのスキャン順序
US10645381B2 (en) 2018-04-30 2020-05-05 Google Llc Intra-prediction for smooth blocks in image/video
AU2019345211B2 (en) 2018-09-23 2023-02-02 Lg Electronics Inc. Method for encoding/decoding video signals and apparatus therefor
CN111083484A (zh) * 2018-10-22 2020-04-28 北京字节跳动网络技术有限公司 基于子块的预测
WO2020084475A1 (en) 2018-10-22 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Utilization of refined motion vector
CN111436227B (zh) 2018-11-12 2024-03-29 北京字节跳动网络技术有限公司 在视频处理中使用组合帧间-帧内预测
CN114390280B (zh) 2018-11-12 2023-08-18 Lg电子株式会社 图像解码方法、图像编码方法和数据发送方法
CN113170192B (zh) * 2018-11-15 2023-12-01 北京字节跳动网络技术有限公司 仿射的merge与mvd
CN113170171B (zh) 2018-11-20 2024-04-12 北京字节跳动网络技术有限公司 组合帧间帧内预测模式的预测细化
WO2020103852A1 (en) 2018-11-20 2020-05-28 Beijing Bytedance Network Technology Co., Ltd. Difference calculation based on patial position
US10939107B2 (en) 2019-03-01 2021-03-02 Sony Corporation Embedded codec circuitry for sub-block based allocation of refinement bits
KR102635518B1 (ko) 2019-03-06 2024-02-07 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 변환된 단예측 후보의 사용
CN113545078A (zh) * 2019-03-08 2021-10-22 韩国电子通信研究院 图像编码/解码方法和设备以及用于存储比特流的记录介质
CN113365049B (zh) * 2019-03-09 2023-02-28 杭州海康威视数字技术股份有限公司 进行编码和解码的方法、解码端、编码端和系统
FI3910956T3 (fi) * 2019-03-12 2023-09-01 Lg Electronics Inc Muunnospohjainen kuvankoodaus
CN113647099B (zh) 2019-04-02 2022-10-04 北京字节跳动网络技术有限公司 解码器侧运动矢量推导
CN111279699A (zh) * 2019-04-26 2020-06-12 深圳市大疆创新科技有限公司 视频编解码的方法和装置
CN117221544A (zh) * 2019-05-19 2023-12-12 字节跳动有限公司 数字视频中的变换旁路编解码残差块
KR102211000B1 (ko) * 2019-06-21 2021-02-02 삼성전자주식회사 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
CN114342393A (zh) * 2019-07-12 2022-04-12 Lg 电子株式会社 基于变换的图像编译方法及其设备
JP7441638B2 (ja) 2019-12-06 2024-03-01 日本放送協会 符号化装置、復号装置、及びプログラム
US11418814B2 (en) * 2020-05-22 2022-08-16 Tencent America LLC Constraint on syntax elements for still picture profiles

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050123207A1 (en) * 2003-12-04 2005-06-09 Detlev Marpe Video frame or picture encoding and decoding
CN1703912A (zh) * 2002-09-17 2005-11-30 弗拉迪米尔·切佩尔科维奇 具有高压缩率和最小必需资源的快速codec
US20120082233A1 (en) * 2010-09-30 2012-04-05 Texas Instruments Incorporated Method and apparatus for diagonal scan and simplified context selection for parallel entropy coding of significance map of transform coefficients

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9422738D0 (en) * 1994-11-10 1995-01-04 Univ Western Ontario Context-based, adaptive, progressive, lossless compression of still continuous -tone images
CN1874509B (zh) * 2001-09-14 2014-01-15 诺基亚有限公司 基于上下文的自适应二进制算术编码的方法和系统
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
KR100612015B1 (ko) * 2004-07-22 2006-08-11 삼성전자주식회사 컨텍스트 적응형 이진 산술 부호화 방법 및 그 장치
US8311119B2 (en) * 2004-12-31 2012-11-13 Microsoft Corporation Adaptive coefficient scan order
RU2336661C2 (ru) * 2005-04-19 2008-10-20 Самсунг Электроникс Ко., Лтд. Способ и устройство адаптивного выбора контекстной модели для кодирования по энтропии
US7751636B2 (en) * 2005-09-23 2010-07-06 Faraday Technology Corp. Method for decoding transform coefficients corresponding to an image
CN101370138B (zh) * 2007-08-17 2011-02-09 中国科学院计算技术研究所 一种h.264标准cavlc残差系数的解码方法
US9521433B2 (en) * 2007-09-06 2016-12-13 Nec Corporation Video encoding device, video decoding device, video encoding method, video decoding method, video encoding or decoding program
KR101805531B1 (ko) * 2009-06-07 2018-01-10 엘지전자 주식회사 비디오 신호의 디코딩 방법 및 장치
WO2013094199A1 (ja) * 2011-12-21 2013-06-27 パナソニック株式会社 画像符号化方法、画像符号化装置、画像復号化方法、画像復号化装置、および画像符号化復号化装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1703912A (zh) * 2002-09-17 2005-11-30 弗拉迪米尔·切佩尔科维奇 具有高压缩率和最小必需资源的快速codec
US20050123207A1 (en) * 2003-12-04 2005-06-09 Detlev Marpe Video frame or picture encoding and decoding
US20120082233A1 (en) * 2010-09-30 2012-04-05 Texas Instruments Incorporated Method and apparatus for diagonal scan and simplified context selection for parallel entropy coding of significance map of transform coefficients

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
C. TU等: "Context-based entropy coding of block transform coefficients for image compression", 《 IEEE TRANSACTIONS ON IMAGE PROCESSING》 *
J. SOLE等: "Unified scans for the significance map and coefficient level coding in high coding efficiency", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC)》 *
罗武胜等: "双正交重叠变换系数基于上下文的算术编码算法", 《国防科技大学学报》 *

Also Published As

Publication number Publication date
US10129548B2 (en) 2018-11-13
JP2017169209A (ja) 2017-09-21
RU2628130C2 (ru) 2017-08-15
CN108900839B (zh) 2022-05-31
CN108769691B (zh) 2022-05-31
CN104067614A (zh) 2014-09-24
US20140348247A1 (en) 2014-11-27
RU2014130759A (ru) 2016-02-20
CN104067614B (zh) 2018-07-27
CN108900839A (zh) 2018-11-27
EP2800368A4 (en) 2015-06-03
JPWO2013099892A1 (ja) 2015-05-07
WO2013099892A1 (ja) 2013-07-04
EP2800368B1 (en) 2021-07-28
EP2800368A1 (en) 2014-11-05
JP6441406B2 (ja) 2018-12-19
JP6134651B2 (ja) 2017-05-24

Similar Documents

Publication Publication Date Title
CN104067614B (zh) 算术解码装置、图像解码装置以及算术编码装置
JP7001768B2 (ja) 算術復号装置
US10547861B2 (en) Image decoding device
CN104350753B (zh) 算术解码装置、图像解码装置、算术编码装置以及图像编码装置
EP3754982B1 (en) Image decoding device, image decoding method, image encoding method and image encoding device for performing bi-prediction to uni-prediction conversion
CN104054343B (zh) 图像解码装置、图像编码装置
WO2016203881A1 (ja) 算術復号装置及び算術符号化装置
CN109120930A (zh) 图像解码装置、图像解码方法以及图像编码装置
JP2013236358A (ja) 画像フィルタ装置、画像復号装置、画像符号化装置、およびデータ構造
JP2013192118A (ja) 算術復号装置、画像復号装置、算術符号化装置、および画像符号化装置
JP2013187869A (ja) 算術復号装置、算術符号化装置、画像復号装置、および画像符号化装置
JP2013141094A (ja) 画像復号装置、画像符号化装置、画像フィルタ装置、および符号化データのデータ構造
WO2012121352A1 (ja) 動画像復号装置、動画像符号化装置、および、データ構造
JP2014176039A (ja) 画像復号装置、および画像符号化装置
JP2013223051A (ja) 算術復号装置、画像復号装置、算術符号化装置、および画像符号化装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant