CN109076222A - 图像处理装置和方法 - Google Patents

图像处理装置和方法 Download PDF

Info

Publication number
CN109076222A
CN109076222A CN201780028126.1A CN201780028126A CN109076222A CN 109076222 A CN109076222 A CN 109076222A CN 201780028126 A CN201780028126 A CN 201780028126A CN 109076222 A CN109076222 A CN 109076222A
Authority
CN
China
Prior art keywords
transformation
inverse
quadratic
image
flag
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
CN201780028126.1A
Other languages
English (en)
Other versions
CN109076222B (zh
CN109076222B9 (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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Publication of CN109076222A publication Critical patent/CN109076222A/zh
Publication of CN109076222B publication Critical patent/CN109076222B/zh
Application granted granted Critical
Publication of CN109076222B9 publication Critical patent/CN109076222B9/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • 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/124Quantisation
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

本公开内容涉及图像处理装置和方法,其使得可以使编码效率的降低最小化。当跳过作为对预测残差的变换处理的一次变换时,图像处理装置和方法还跳过作为对通过使预测残差经过一次变换而获得的一次变换系数的变换处理的二次变换,其中,预测残差是图像与该图像的预测图像之间的差异。本公开内容可应用于例如图像处理装置、图像编码装置、图像解码装置等。

Description

图像处理装置和方法
技术领域
本公开内容涉及信息处理装置和方法,具体地,涉及可以抑制编码效率的降低的信息处理装置和方法。
背景技术
在过去,已经公开了,在图像编码中,在对作为图像与图像的预测图像之间的差异的预测残差执行了一次变换之后,为了提高能量集中性(以将变换系数集中到低频区域),进一步对变换块中的每个子块应用二次变换(例如,参考NPL 1)。在NPL 1中,还公开了以CU为单位用信号通知指示要应用哪个二次变换的二次变换标识符。
此外,还公开了:在编码器中,基于RDO(率失真优化,Rate-DistortionOptimization)确定如在NPL 1中所公开的那样以CU为单位应用哪个二次变换指示计算复杂度高,并且用信号通知指示是否要应用以变换块为单位的二次变换的二次变换标志(例如,参考NPL 2)。在NPL 2中,还公开了基于一次变换标识符和帧内预测模式得到指示要应用哪个二次变换的二次变换标识符。
[引用列表]
[非专利文献]
[NPL 1]
J.Chen.Alshina,G.J.Sullivan,J.R.Ohm,J.Boyce,“Algorithm Description ofJoint ExplorationTest Model 2,”JVET-B1001_v3,Joint Video Exploration Team(JVET)of ITU-T SG 16WP 3and ISO/IEC JTC 1/SC 29/WG 11 2nd Meeting:San Diego,USA,20-26,20-26February 2016[NPL 2]
X.Zhao,A.Said,V.Seregin,M.Karczewicz,J.Chen,R.Joshi,“TU-level non-separable secondary transform,”JVET-B0059,Joint Video Exploration Team(JVET)of ITU-T SG 16WP 3and ISO/IEC JTC 1/SC 29/WG 11 2nd Meeting:SanDiego,USA,20-26February 2016
发明内容
[技术问题]
然而,在NPL 1和NPL 2中所公开的方法中的任一种中,在以变换块为单位、变换跳过标志为1(即,指示要应用变换跳过)的情况下,变换跳过仅应用于一次变换。换言之,同样在变换跳过仅应用于一次变换的情况下,可以应用二次变换。因此,即使根据变换跳过标志将变换跳过应用于最好应用变换跳过的残差信号(例如,诸如非零系数的数量少的稀疏残差信号),也应用二次变换且能量压缩减小,并且存在编码效率会降低的可能性。
已考虑到如上所述的这样的状况而提出了本公开内容,并且本公开内容可以抑制编码效率的降低。
[针对问题的解决方案]
根据本技术的第一方面的一种图像处理装置是一种包括如下控制部的图像处理装置,该控制部被配置成:在将要跳过作为对预测残差的变换处理的一次变换的情况下,还使得跳过作为对通过预测残差的一次变换而获得的一次变换系数的变换处理的二次变换,该预测残差是图像与该图像的预测图像之间的差异。
根据本技术的第一方面的一种图像处理方法是一种包括如下步骤的图像处理方法:在将要跳过作为对预测残差的变换处理的一次变换的情况下,还使得跳过作为对通过预测残差的一次变换而获得的一次变换系数的变换处理的二次变换,该预测残差是图像与该图像的预测图像之间的差异。
根据本技术的第二方面的一种图像处理装置是一种包括如下控制部的图像处理装置,该控制部被配置成:在将要跳过作为一次变换的逆变换的逆一次变换的情况下,还使得跳过作为二次变换的逆变换的逆二次变换,该一次变换是对作为图像与该图像的预测图像之间的差异的预测残差的变换处理,该二次变换是对通过预测残差的一次变换而获得的一次变换系数的变换处理。
根据本技术的第二方面的一种图像处理方法是一种包括如下步骤的图像处理方法:在将要跳过作为一次变换的逆变换的逆一次变换的情况下,还使得跳过作为二次变换的逆变换的逆二次变换,该一次变换是对作为图像与该图像的预测图像之间的差异的预测残差的变换处理,该二次变换是对通过预测残差的一次变换而获得的一次变换系数的变换处理。
根据本技术的第三方面的一种图像处理装置是一种包括如下编码部的图像处理装置,该编码部被配置成:在将要对通过对预测残差的一次变换而获得的一次变换系数执行二次变换的情况下,跳过对与跳过一次变换有关的第一信息的编码,其中,该预测残差是图像与该图像的预测图像之间的差异。
根据本技术的第三方面的一种图像处理方法是一种包括如下步骤的图像处理方法:在将要对通过对预测残差的一次变换而获得的一次变换系数执行二次变换的情况下,跳过对与跳过一次变换有关的第一信息的编码,其中,该预测残差是图像与该图像的预测图像之间的差异。
根据本技术的第四方面的一种图像处理装置是一种包括如下解码部的图像处理装置,该解码部被配置成:在将要执行作为二次变换的逆变换的逆二次变换的情况下,跳过对与跳过作为一次变换的逆变换的逆一次变换有关的第一信息的编码数据的解码,其中,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理,该预测残差是图像与该图像的预测图像之间的差异的。
根据本技术的第四方面的一种图像处理方法是一种包括如下步骤的图像处理方法:在将要执行作为二次变换的逆变换的逆二次变换的情况下,跳过对与跳过作为一次变换的逆变换的逆一次变换有关的第一信息的编码数据的解码,其中,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理,该预测残差是图像与该图像的预测图像之间的差异。
根据本技术的第五方面的一种图像处理装置是一种包括如下编码部的图像处理装置,该编码部被配置成:在将要跳过作为对预测残差的变换处理的一次变换的情况下,跳过对与跳过二次变换有关的第一信息的编码,其中,该预测残差是图像与该图像的预测图像之间的差异,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理。
根据本技术的第五方面的一种图像处理方法是一种包括如下步骤的图像处理方法:在将要跳过作为对预测残差的变换处理的一次变换的情况下,跳过对与跳过二次变换有关的第一信息的编码,其中,该预测残差是图像与该图像的预测图像之间的差异,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理。
根据本技术的第六方面的一种图像处理装置是一种包括解码部的图像处理装置,该解码部被配置成:在将要跳过作为一次变换的逆变换的逆一次变换的情况下,跳过对与跳过作为二次变换的逆变换的逆二次变换有关的第一信息的编码数据的解码,其中,该一次变换是对作为图像与该图像的预测图像之间的差异的预测残差的变换处理,该二次变换是对通过对预测残差的一次变换而获得的一次变换参数的变换处理。
根据本技术的第六方面的一种图像处理方法是一种包括如下步骤的图像处理方法:在将要跳过作为一次变换的逆变换的逆一次变换的情况下,跳过对与跳过作为二次变换的逆变换的逆二次变换有关的第一信息的编码数据的解码,其中,该一次变换是对作为图像与该图像的预测图像之间的差异的预测残差的变换处理,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理。
根据本技术的第七方面的一种图像处理装置是一种包括如下编码部的图像处理装置,该编码部被配置成:在将要跳过作为对预测残差的变换处理的一次变换、作为对通过预测残差的一次变换而获得的一次变换系数的变换处理的二次变换、以及对通过一次变换系数的二次变换而获得的二次变换系数的量化的情况下,跳过对指示一次变换的内容的第一信息的编码,其中,该预测残差是图像与该图像的预测图像之间的差异。
根据本技术的第七方面的一种图像处理方法是一种包括如下步骤的图像处理方法:在将要跳过作为对预测残差的变换处理的一次变换、作为对通过对预测残差的一次变换而获得的一次变换系数的变换处理的二次变换、以及对通过对一次变换系数的二次变换而获得的二次变换系数的量化的情况下,跳过对指示一次变换的内容的第一信息的编码,其中,该预测残差是图像与图像的预测图像之间的差异。
根据本技术的第八方面的一种图像处理装置是一种包括如下解码部的图像处理装置,该解码部被配置成:在将要跳过对通过对编码数据进行解码而获得的量化变换系数水平的逆量化、用于将通过对量化变换系数水平的逆量化而获得的二次变换系数变换成一次变换系数的逆二次变换、以及用于将一次变换系数变换成预测残差的逆一次变换的情况下,跳过对与逆一次变换的内容有关的第一信息的编码数据的解码,其中,该预测残差是图像与该图像的预测图像之间的差异。
根据本技术的第八方面的一种图像处理方法是一种包括如下步骤的图像处理方法:在将要跳过对通过对编码数据进行解码而获得的量化变换系数水平的逆量化、用于将通过对量化变换系数水平的逆量化而获得的二次变换系数变换成一次变换系数的逆二次变换、以及用于将一次变换系数变换成预测残差的逆一次变换的情况下,跳过对与逆一次变换的内容有关的第一信息的编码数据的解码,其中,该预测残差是图像与该图像的预测图像之间的差异。
在根据本技术的第一方面的图像处理装置和方法中,在将要跳过作为对预测残差的变换处理的一次变换的情况下,也跳过作为对通过预测残差的一次变换而获得的一次变换系数的变换处理的二次变换,该预测残差是图像与图像的预测图像之间的差异。
在根据本技术的第二方面的图像处理装置和方法中,在将要跳过作为一次变换的逆变换的逆一次变换的情况下,还跳过作为二次变换的逆变换的逆二次变换,其中,该一次变换是对作为图像与该图像的预测图像之间的差异的预测残差的变换处理,该二次变换是对通过预测残差的一次变换而获得的一次变换系数的变换处理。
在根据本技术的第三方面的图像处理装置和方法中,在将要对通过对预测残差的一次变换而获得的一次变换系数执行二次变换的情况下,跳过对与跳过一次变换有关的第一信息的编码,其中,该预测残差是图像与该图像的预测图像之间的差异。
在根据本技术的第四方面的图像处理装置和方法中,在将要执行作为二次变换的逆变换的逆二次变换的情况下,跳过对与跳过作为一次变换的逆变换的逆一次变换有关的第一信息的编码数据的解码,其中,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理,该预测残差是图像与该图像的预测图像之间的差异。
在根据本技术的第五方面的图像处理装置和方法中,在将要跳过作为对预测残差的变换处理的一次变换的情况下,跳过对与跳过二次变换有关的第一信息的编码,其中,该预测残差是图像与该图像的预测图像之间的差异,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理。
在根据本技术的第六方面的图像处理装置和方法中,在将要跳过作为一次变换的逆变换的逆一次变换的情况下,跳过对与跳过作为二次变换的逆变换的逆二次变换有关的第一信息的编码数据的解码,其中,该一次变换是作为图像与该图像的预测图像之间的差异的预测残差的变换处理,该二次变换是对通过对预测残差的一次变换而获得的一次变换参数的变换处理。
在根据本技术的第七方面的图像处理装置和方法中,在将要跳过作为对预测残差的变换处理的一次变换、作为对通过对预测残差的一次变换而获得的一次变换系数的变换处理的二次变换、以及对通过对一次变换系数的二次变换而获得的二次变换系数的量化的情况下,跳过对指示一次变换的内容的第一信息的编码,其中,该预测残差是图像与该图像的预测图像之间的差异。
在根据本技术的第八方面的图像处理装置和方法中,在将要跳过对通过对编码数据进行解码而获得的量化变换系数水平的逆量化、用于将通过对量化变换系数水平的逆量化而获得的二次变换系数变换成一次变换系数的逆二次变换、以及用于将一次变换系数变换成预测残差的逆一次变换的情况下,跳过对与逆一次变换的内容有关的第一信息的编码数据的解码,其中,该预测残差是图像与该图像的预测图像之间的差异。
[本发明的有益效果]
根据本公开内容,可以对图像进行处理。特别地,可以抑制编码效率的降低。
附图说明
图1是示出CU的递归块分割的概况的说明图。
图2是示出对图1中所描绘的CU设置PU的说明图。
图3是示出对图1中所描绘的CU设置TU的说明图。
图4是示出CU/PU的扫描顺序的说明图。
图5是描绘图像编码装置的主要配置示例的框图。
图6是描绘变换部的主要配置示例的框图。
图7是描绘与扫描标识符对应的扫描方法的示例的视图。
图8是描绘二次变换的矩阵的示例的视图。
图9是示出图像编码处理的流程的示例的流程图。
图10是示出变换处理的流程的示例的流程图。
图11是描绘图像解码装置的主要配置示例的框图。
图12是描绘逆变换部的主要配置示例的框图。
图13是示出图像解码处理的流程的示例的流程图。
图14是示出逆变换处理的流程的示例的流程图。
图15是描绘语法的示例的视图。
图16是描绘编码部的主要配置示例的框图。
图17是示出编码处理的流程的示例的流程图。
图18是描绘解码部的主要配置示例的框图。
图19是示出解码处理的流程的示例的流程图。
图20是描绘语法的示例的视图。
图21是描绘编码部的主要配置示例的框图。
图22是示出编码处理的流程的示例的流程图。
图23是从图22继续并且示出编码处理的流程的示例的流程图。
图24是描绘解码部的主要配置示例的框图。
图25是示出解码处理的流程的示例的流程图。
图26是从图25继续并且示出解码处理的流程的示例的流程图。
图27是描绘语法的示例的视图。
图28是示出编码处理的流程的示例的流程图。
图29是从图28继续并且示出编码处理的流程的示例的流程图。
图30是示出解码处理的流程的示例的流程图。
图31是从图30继续并且示出解码处理的流程的示例的流程图。
图32是示出一次变换标识符的编码方式的示例的视图。
图33是示出一次变换标识符的解码方式的示例的视图。
图34是描绘语法的示例的视图。
图35是描绘编码部的主要配置示例的框图。
图36是示出编码处理的流程的示例的流程图。
图37是示出一次变换标识符编码处理的流程的示例的流程图。
图38是描绘与上下文索引对应的算术编码和算术解码的示例的视图。
图39是描绘伪代码的示例的视图,该伪代码示出一次变换标识符的编码方式。
图40是描绘解码部的主要配置示例的框图。
图41是示出解码处理的流程的示例的流程图。
图42是示出一次变换标识符解码处理的流程的示例的流程图。
图43是描绘伪代码的示例的视图,该伪代码示出一次变换标识符的解码方式。
图44是示出CU、PU和TU的形状的视图。
图45是描绘语法表的示例的视图。
图46是描绘编码部的主要配置示例的框图。
图47是示出编码处理的流程的示例的流程图。
图48是从图47继续并且示出编码处理的流程的示例的流程图。
图49是描绘解码部的主要配置示例的框图。
图50是示出解码处理的流程的示例的流程图。
图51是从图50继续并且示出解码处理的流程的示例的流程图。
图52是示出JEM-4.0中的冗余语法的视图。
图53是示出用于抑制冗余语法的方法的示例的视图。
图54是示出变换单位的语法的示例的视图。
图55是示出残差编码的语法的示例的视图。
图56是描绘编码部的主要配置示例的框图。
图57是示出编码处理的流程的示例的流程图。
图58是示出变换单位的语法的示例的视图。
图59是示出残差编码的语法的示例的视图。
图60是示出残差编码的语法的示例的视图。
图61是描绘解码部的主要配置示例的框图。
图62是示出解码处理的流程的示例的流程图。
图63是示出JVET-E0037中的冗余语法的视图。
图64是示出用于抑制冗余语法的方法的示例的视图。
图65是示出变换单位的语法的示例的视图。
图66是示出残差编码的语法的示例的视图。
图67是示出编码处理的流程的示例的流程图。
图68是示出残差编码的语法的示例的视图。
图69是示出解码处理的流程的示例的流程图。
图70是描绘计算机的主要配置示例的框图。
图71是描绘电视机装置的示意性配置的示例的框图。
图72是描绘便携式电话机的示意性配置的示例的框图。
图73是描绘记录和再现装置的示意性配置的示例的框图。
图74是描绘图像拾取装置的示意性配置的示例的框图。
图75是描绘视频设备的示意性配置的示例的框图。
图76是描绘视频处理器的示意性配置的示例的框图。
图77是描绘视频处理器的示意性配置的不同示例的框图。
图78是描绘网络系统的示意性配置的示例的框图。
具体实施方式
在下文中,将描述用于执行本公开内容的方式(在下文中称为“实施方式”)。应当注意,该描述是按照以下顺序给出的:
1.第一实施方式(根据(逆)变换跳过而跳过(逆)二次变换)
2.第二实施方式(根据(逆)二次变换跳过对变换跳过标志的编码和解码)
3.第三实施方式(根据(逆)变换跳过而跳过对二次变换标志的编码和解码)
4.第四实施方式(根据非零系数的子块平均而跳过对二次变换标志的编码和解码)
5.第五实施方式(根据变换量化的旁路(bypass)而跳过对一次变换标识符的编码和解码)
6.第六实施方式(跳过对变换跳过标志的编码和解码,其中,块是由正方形或长方形形成的矩形)
7.第七实施方式(自适应一次变换标志和变换跳过标志的控制)
8.第八实施方式(自适应一次变换标志和变换跳过标志的控制)
9.第九实施方式(其他)
<1.第一实施方式>
<跳过变换处理>
例如,在NPL 1中公开了,在图像编码中,在对作为图像与图像的预测图像之间的差异的预测残差执行一次变换之后,为了提高能量集中性(以将变换系数集中到低频区域),进一步对变换块中的每个子块应用二次变换。此外,在NPL 1中,还公开了以CU为单位用信号通知指示要应用哪个二次变换的二次变换标识符。
此外,例如,在NPL 2中公开了,在编码器中,基于RDO(率失真优化)确定如在NPL 1中所公开的那样以CU为单位应用哪个二次变换指示计算复杂度高,并且用信号通知指示是否要应用以变换块为单位的二次变换的二次变换标志。此外,在NPL 2中,还公开了基于一次变换标识符和帧内预测模式得到指示要应用哪个二次变换的二次变换标识符。
然而,在NPL 1和NPL 2中公开的方法中的任一种中,在以变换块为单位、变换跳过标志为1(即,指示要应用变换跳过)的情况下,变换跳过仅应用于一次变换。换言之,同样在变换跳过仅应用于一次变换的情况下,可以应用二次变换。因此,在考虑到变换跳过的概念的情况下,不能跳过(省略)二次变换,并且存在算术运算量可能增大的可能性。此外,即使根据变换跳过标志将变换跳过应用于最好应用变换跳过的残差信号(例如,诸如非零系数(也称为非零变换系数)的数量少的稀疏残差信号),也应用二次变换并且能量集中性减小,并且存在编码效率会降低的可能性。
在一次变换中,选择由一次变换标识符pt_idx指定的在水平方向上的一次变换Phor和在垂直方向上的一次变换Pver,并且对于预测残差D,如例如由下面的表达式(1)所表示的那样执行矩阵算术运算,以获得一次变换后的变换系数Coeff_P(也称为一次变换系数)。
Coeff_P=Phor·D·PverT...(1)
应当注意,在表达式(1)中,运算符“·”表示用于进行矩阵之间的内积(矩阵乘积)的运算,并且运算符“T”表示转置矩阵的运算。以如上所述的这种方式确定的一次变换系数(Coeff_P)随后经过二次变换。此外,在跳过(省略)如上所述的这样的一次变换的情况下,对预测残差D进行二次变换。
例如,假设预测残差D如下面给出的表达式(2)所示的那样是4×4矩阵=[[255,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],并且扫描标识符scanIdx表示水平扫描hor。
[数学式1]
根据水平扫描的系数的扫描顺序来扫描预测残差D,并且如下面的表达式(3)所示的那样将预测残差D变换成这样的1×16维向量X1d
[数学式2]
X1d=[255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]...(3)
使用该1×16维向量X1d和用于二次变换的矩阵R来执行通过下面给出的表达式(4)表示的这样的矩阵算术运算,以确定如下面给出的表达式(4)所表示的信号Y1d
Y1d T=R·X1d T...(4)
此处,运算符“T”表示转置矩阵的运算。通过该矩阵算术运算,例如,获得由下面的表达式(5)表示的信号Y1d
[数学式3]
Y1d=[62730,-10710,-4590,-7650,-7650,-7905,765,-510,2805,-1020,-2295,1020,765,-510,255,0]...(5)
为了对该算术运算结果Y1d的范数进行归一化,执行如下面的表达式(6)所表示的N位的移位算术运算,以确定移位后的信号Z1d
Z1d=(Y1d)>>N...(6)
通过该移位算术运算,获得例如由下面的表达式(7)表示的信号Z1d
[数学式4]
Z1d=[245,-42,-18,-30,-30,-31,3,-2,11,-4,-9,4,3,-2,1,0]...(7)
基于由扫描标识符scanIdx指定的扫描方法,将范数归一化之后的信号Z1d的1×16维向量Z1d变换成如下面的表达式(8)表示的4×4矩阵Coeff。
[数学式5]
在如表达式(2)那样非零系数的数量很少(稀疏残差信号)的残差信号(预测残差)的情况下,如果跳过一次变换并且之后应用二次变换,则存在如表达式(8)中那样非零系数可以遍布于整个频域的可能性。换言之,通过应用二次变换,存在能量集中性会降低的可能性,从而导致编码效率降低。
<二次变换和逆二次变换的跳过>
因此,在跳过作为对预测残差的变换处理的一次变换的情况下,还跳过作为对通过对预测残差的一次变换而获得的一次变换系数的变换处理的二次变换,该预测残差是图像与图像的预测图像之间的差异。
由于这使得不仅可以跳过一次变换而且还可以跳过二次变换,因此可以抑制算术运算量的增大。此外,可以抑制将二次变换应用于非零系数的数量少并且期望如上述示例中那样对其应用变换跳过的残差信号,并且可以抑制能量集中性的降低。换言之,可以抑制编码效率的降低。
此外,在将要跳过作为一次变换的逆变换的逆一次变换的情况下,还跳过作为二次变换的逆变换的逆二次变换,该一次变换是对作为图像与图像的预测图像之间的差异的预测残差的变换处理,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理。
由于这使得不仅可以跳过逆一次变换而且还可以跳过逆二次变换,因此可以抑制算术运算量的增大。此外,可以抑制将逆二次变换应用于非零系数的数量少并且期望如上述示例中那样对其应用变换跳过的残差信号,并且可以抑制能量集中性的降低。换言之,可以抑制编码效率的降低。
<块分割>
在诸如MPEG2(运动图像专家组2(ISO/IEC 13818-2))或MPEG-4Part 10(高级视频编码,下文中称为AVC)的老式图像编码方法中,按称为宏块的处理单位执行编码处理。宏块是具有16×16像素的均匀大小的块。相反地,在HEVC(高效率视频编码)中,按称为CU(Coding Unit)的处理单位(编码单位)执行编码处理。CU是通过递归地分割作为最大编码单位的LCU(最大编码单位)而形成的具有可变大小的块。可以选择的CU的最大尺寸是64×64像素。可以选择的CU的最小尺寸是8×8像素。具有最小尺寸的CU被称为SCU(最小编码单位)。应当注意,CU的最大尺寸不限于64×64像素,而是可以是更大的块大小,诸如128×128像素、256×256像素等。
由于以这种方式采用具有可变大小的CU,根据HEVC,可以响应于图像的内容而自适应地调整图片质量和编码效率。按被称为PU(Prediction Unit)的处理单位(预测单位)执行用于预测编码的预测处理。通过以几种分割模式之一对CU进行分割来形成PU。此外,PU由亮度(Y)和色差(Cb和Cr)中的每一个的、被称为PB(预测块)的处理单位(预测块)构成。此外,按被称为TU(Transform Unit)的处理单位(变换单位)执行正交变换处理。通过将CU或PU分割到特定深度来形成TU。此外,TU由亮度(y)和色差(Cb和Cr)中的每一个的、被称为TB(Transform block)的处理单位(变换块)构成。
<递归块分割>
图1是示出关于HEVC中的CU的递归块分割的概况的说明图。通过递归地重复将一个块分割成四个(=2×2)子块来执行对CU的块分割,结果,形成具有四叉树(Quad-Tree))形式的树结构。一个四叉树的整体被称为CTB(编码树块),并且与CTB对应的逻辑单位称为CTU(编码树单位(CodingTree Unit))。
在图1的上部处,将作为大小为64×64像素的CU的C01示为示例。C01的分割深度等于0。这表示C01是CTU的根并且对应于LCU。LCU大小可以由在SPS(序列参数集)或PPS(图片参数集)中被编码的参数指定。作为CU的C02是从C01分割得到的四个CU之一并且具有32×32像素的大小。C02的分割深度等于1。作为CU的C03是从C02分割得到的四个CU之一并且具有16×16像素的大小。C03的分割深度等于2。作为CU的C04是从C03分割得到的四个CU之一并且具有8×8像素的大小。C04的分割深度等于3。以这种方式,通过递归地分割要被编码的图像来形成CU。分割深度是可变的。例如,对于像蓝天一样的平坦图像区域,可以设置尺寸较大(即,深度小)的CU。另一方面,对于包括许多边缘的陡峭图像区域,可以设置尺寸较小(即,深度大)的CU。然后,这样设置的CU中的每一个均成为编码处理的处理单位。
<对CU设置PU>
PU是包括帧内预测和帧间预测的预测处理的处理单位。PU是通过按几种分割模式之一对CU进行分割而形成的。图2是示出对图1中所描绘的CU设置PU的说明图。在图2的右侧区域中,描绘了2N×2N、2N×N、N×2N、N×N、2N×nU、2N×nD、nL×2N和nR×2N这八种分割模式。在帧内预测中,可以从八种分割模式中选择2N×2N和N×N这两种分割模式(可以仅按SCU选择N×N)。相比之下,在帧间预测中,在启用非对称运动分割的情况下,可以选择全部八种分割模式。
<对CU设置TU>
TU是正交变换处理的处理单位。TU是通过将CU(对于帧内CU,是CU中的每个PU)分割到特定深度而形成的。图3是示出对图2中所示的CU设置TU的说明图。在图3的右侧区域中,描绘了可以对C02设置的一个或多个TU。例如,作为TU的T01具有32×32像素的大小,并且TU分割的深度等于0。作为TU的T02具有16×16像素的大小,并且TU分割的深度等于1。作为TU的T03具有8×8像素的大小,并且TU分割的深度等于2。
通常,基于影响编码效率的成本的比较来确定要执行什么块分割以便将这样的块设置为上述的CU、PU或TU。编码器将例如一个具有2M×2M像素的CU与四个具有M×M像素的CU之间的成本进行比较,并且如果四个具有M×M像素的CU的设置表明编码效率更高,则编码器确定将具有2M×2M像素的CU分割成四个具有M×M像素的CU。
<CU和PU的扫描顺序>
当要对图像进行编码时,按光栅扫描顺序扫描在图像中(或在条带(slice)或图块(tile)中)以网格状图案设置的CTB(或LCU)。在一个CTB中,以从左到右以及从上到下沿着四叉树的方式扫描CU。当要处理当前块时,将上部相邻块和左部相邻块的信息用作输入信息。图4是示出CU和PU的扫描顺序的说明图。在图4中的左上部,描绘了作为可以包括在一个CTB中的四个CU的C10、C11、C12和C13。每个CU的框架中的数字表示处理的顺序编号。按作为左上CU的C10、右上CU的C11、左下CU的C12和右下CU的C13的顺序执行编码处理。在图4中的右部处,描绘了能够对作为CU的C11设置的用于帧间预测的一个或多个PU。在图4的下部处,描绘了能够对作为CU的C12设置的用于帧内预测的一个或多个PU。如PU的框架中的数字所示,也遵循从左到右以及从上到下来扫描PU。
在下面的描述中,有时使用“块”作为部分区域或图像(图片)的处理单位来给出描述(“块”不是处理部的块)。这种情况下的“块”表示图片中的任意的部分区域,并且其大小、形状、特性等不受限制。换言之,假设在这种情况下“块”包括任意的部分区域(处理单位),例如,诸如TB、TU、PB、PU、SCU、CU、LCU(CTB)、子块、宏块、图块,条带等。
<图像编码装置>
图5是描绘作为应用了本技术的图像处理装置的形式的图像编码装置的配置的示例的框图。图5中所描绘的图像编码装置100是如AVC和HEVC那样对图像与图像的预测图像之间的预测残差进行编码的装置。例如,图像编码装置100涉及由HEVC提出的技术或由JVET(联合视频研究组)提出的技术。
应当注意,在图5中,描绘了处理部、数据流等中的主要部分,并且在图5中不一定示出所有这些处理部、数据流等。换言之,图像编码装置100可以包括未在图5中示为块的处理部,或者可以包括图5中的未示为箭头标记等的处理或数据流。
如图5所示,图像编码装置100包括控制部101、算术运算部111、变换部112、量化部113、编码部114、逆量化部115、逆变换部116、另一算术运算部117、帧存储器118和预测部119。
控制部101基于外部或预先指定的处理单位的块大小而将被输入至图像编码装置100的运动图像分割成处理单位的块(CU、PU、变换块(TB)等),并且将与分割得到的块对应的图像I提供给算术运算部111。此外,控制部101例如基于RDO(率失真优化)来确定要提供给相关联的块的编码参数(报头信息Hinfo、预测模式信息Pinfo、变换信息Tinfo等)。所确定的编码参数被提供给相关联的块。
报头信息Hinfo例如包括诸如视频参数集(VPS(视频参数集))、序列参数集(SPS(序列参数集))、图片参数集(PPS(图片参数集))、条带头(SH)等信息。例如,报头信息Hinfo包括限定以下的信息:图像尺寸(水平宽度PicWidth、垂直宽度PicHeight)、位密度(亮度bitDepthY、色差bitDepthC)、CU大小的最大值MaxCUSize/最小值MinCUSize、变换块大小的最大值MaxTBSize/最小值MinTBSize、变换跳过块的最大值MaxTSSize(也称为最大变换跳过块大小)、每个编码工具的开启/关断标志(也称为有效性标志)等。
例如,作为头信息Hinfo中包括的编码工具的开/关标志,与下面所示的变换和量化处理有关的开/关标志是可用的。应当注意,每个编码工具的开/关标志也可以被解释为指示在编码数据中是否存在与编码工具有关的语法的标志。此外,在开/关标志的值为1(真)的情况下,这指示编码工具是可用的,而在开/关标志的值为0(假)的情况下,这指示编码工具是不可用的。应当注意,可以调换对标志值的解释。
二次变换有效性标志(st_enabled_flag)是指示作为变换处理和变换处理的逆处理之一的、用于执行二次变换的编码工具或用于执行逆变换(逆二次变换)的编码工具是否可用的标志。换言之,二次变换有效性标志是指示是否按作为目标的数据单位允许二次变换或逆二次变换(也称为(逆)二次变换)的信息。此外,该二次变换有效性标志是与允许对要作为目标的数据单位的(逆)二次变换有关的信息。
例如,在二次变换有效性标志st_enabled_flag是1(真)的情况下,允许(逆)二次变换(可以执行(逆)二次变换)。另一方面,在二次变换有效性标志st_enabled_flag为0(假)的情况下,不允许(逆)二次变换(不能执行(逆)二次变换)。
变换量化旁路有效性标志(transquant_bypass_enabled_flag)是指示作为变换和量化或者变换和量化的逆处理(逆变换和逆量化)之一的、用于跳过变换和量化或者逆量化和逆变换的编码工具是否可用的标志。换言之,变换量化旁路有效性标志是指示是否要允许跳过(旁路)变换和量化或逆量化和逆变换(也称为(逆)变换和(逆)量化)的信息。此外,该变换量化旁路有效性标志是与允许跳过(旁路)对要成为目标的数据单位的(逆)变换和(逆)量化有关的信息。
例如,在变换量化旁路有效性标志transquant_bypass_enabled_flag为1(真)的情况下,允许旁路(逆)变换和(逆)量化。换言之,可以旁路(逆)变换和(逆)量化。另一方面,在变换量化旁路有效性标志transquant_bypass_enabled_flag为0(假)的情况下,不允许旁路(逆)变换和(逆)量化。换言之,不能旁路(逆)变换和(逆)量化。
变换跳过有效性标志(ts_enabled_flag)是指示作为变换处理和变换处理的逆处理之一的、用于跳过包括一次变换和二次变换的(逆)变换的编码工具是否可用的标志。换言之,变换跳过有效性标志是指示是否允许跳过关于作为目标的数据单位的(逆)变换的信息。此外,变换跳过有效性标志是与允许跳过关于成为目标的数据单位的(逆)变换有关的信息。
例如,在变换跳过有效性标志ts_enabled_flag为1(真)的情况下,允许跳过(逆)变换。换言之,可以跳过(逆)变换。另一方面,在变换跳过有效性标志ts_enabled_flag为0(假)的情况下,不允许跳过(逆)变换。换言之,不能跳过(逆)变换。
应当注意,在NPL 1或NPL 2中所公开的方法的情况下,变换跳过有效性标志仅作用于如上所述的一次变换或逆一次变换(也称为(逆)一次变换)。因此,在本说明书中,有时给出关于作为与“(逆)一次变换”有关的信息的变换跳过有效性标志的描述。简言之,有时给出关于作为“与允许跳过关于成为目标的数据单位的‘(逆)一次变换’有关的信息(指示是否跳过关于成为目标的数据单位的‘(逆)一次变换’的信息)”的变换跳过有效性标志的描述。
当然,报头信息Hinfo的内容是任意的,并且除了上述示例以外的任何信息可以包括在该报头信息中。
预测模式信息Pinfo例如包括如下所述的这样的信息。
PU大小PUSize是指示处理目标PU的PU大小的信息(预测块大小)。帧内预测模式信息IPinfo(例如,JCTVC-W1005,7.3.8.5编码单元语法中的prev_intra_luma_pred_flag、mpm_idx、rem_intra_pred_mode等)是与处理目标的块的帧内预测模式有关的信息。运动预测信息MVinfo(例如,JCTVC-W1005,7.3.8.6预测单元语法中的merge_idx、merge_flag、inter_pred_idc、ref_idx_LX、mvp_lX_flag、X={0,1}、mvd等)是与处理目标的块的运动预测有关的信息。
当然,预测模式信息Pinfo的内容是任意的,并且除了上述示例以外的任何信息可以包括在该预测模式信息Pinfo中。
变换信息Tinfo例如包括下面描述的信息。
块大小TBSize(或以2为基数的TBSize的对数值log2TBSize,也称为变换块大小)是指示处理目标变换块的块大小的信息。
变换量化旁路标志(transquant_bypass_flag)是在成为目标的数据单位中指示是否要跳过(旁路)(逆)变换和(逆)量化的信息(例如,JCTVC-W1005,7.3.8.5编码单元语法中的cu_transquant_bypass_flag等)。换言之,变换量化旁路标志是成为目标的数据单位中的与跳过(旁路)(逆)变换和(逆)量化有关的信息。
例如,在变换量化旁路标志transquant_bypass_flag是1(真)的情况下,旁路(逆)变换和(逆)量化。另一方面,在变换量化旁路有效性标志transquant_bypass_flag为0(假)的情况下,不旁路(逆)变换和(逆)量化。
变换跳过标志(ts_flag)是指示是否要跳过(逆)变换的信息(例如,JCTVC-W1005,7.3.8.11残差编码语法syntax中的transfrom_skip_flag等)。换言之,该变换跳过标志是与跳过要成为目标的数据单位的(逆)变换有关的信息。
例如,在变换跳过标志ts_flag是1(真)的情况下,跳过(逆)变换((逆)一次变换)。另一方面,在变换跳过标志ts_flag为0(假)的情况下,执行(逆)变换((逆)一次变换)。
应当注意,在NPL 1或NPL 2中所公开的方法的情况下,变换跳过标志也仅作用于如上文中所述的所谓的(逆)一次变换。因此,在本说明书中,有时给出关于作为与‘(逆)一次变换’有关的信息的变换跳过标志的描述。简言之,有时给出关于作为“与跳过关于要成为目标的数据单位的‘(逆)一次变换’有关的信息(指示是否跳过关于要成为目标的数据单位的‘(逆)一次变换’的信息)”的变换跳过标志的描述。
一次变换标识符(pt-idx)是指示哪个(逆)一次变换将要应用于作为目标的数据单位的在垂直方向和水平方向上的(逆)一次变换的标识符(例如,参考JVET-B1001,2.5.1自适应多核变换。在JEM2中,也称为emt_idx)。换言之,一次变换标识符是与要成为目标的数据单位的(逆)一次变换的内容有关的信息。
二次变换标识符(st_idx)是指示哪个(逆)二次变换将要应用于作为目标的数据单位的标识符(例如,参考JVET-B1001,2.5.2二次变换。在JEM2中,也称为nsst_idx或rot_idx)。换言之,二次变换标识符是与作为目标的数据单位的(逆)二次变换的内容有关的信息。
二次变换标识符st_idx是在其值大于0的情况下指定用于(逆)二次变换的矩阵的标识符。换言之,在这种情况下,二次变换标识符st_idx指示(逆)二次变换的执行。此外,例如,在二次变换标识符st_idx的值为0的情况下,其指示跳过(逆)二次变换。
扫描标识符(scanIdx)是与扫描方法有关的信息。量化参数(qp)是指示在对作为目标的数据单位的(逆)量化中要使用的量化参数的信息。量化矩阵(scaling_matrix)是指示在对作为目标的数据单位的(逆)量化中要使用的量化矩阵的信息(例如,JCTVC-W1005,7.3.4缩放列表数据语法)。
当然,变换信息Tinfo的内容是任意的,并且除了上述示例以外的任何信息可以包括在该变换信息Tinfo中。
报头信息Hinfo被提供给例如相关联的块。预测模式信息Pinfo被提供给例如编码部114和预测部119。变换信息Tinfo被提供给例如变换部112、量化部113、编码部114、逆量化部115和逆变换部116。
算术运算部111如表达式(9)所示的那样从与输入的处理单位的块对应的图像I中减去从预测部119提供的预测图像P,以确定预测残差D,并且将预测残差D提供给变换部112。
D=I–P...(9)
变换部112基于从控制部101提供的变换信息Tinfo而对从算术运算部111提供的预测残差D执行变换处理,以得到变换系数Coeff。变换部112将变换系数Coeff提供给量化部113。应当注意,变换部112可以在变换跳过时或在变换量化旁路时跳过(省略)变换处理(一次变换和二次变换),并且将预测残差D作为变换系数Coeff提供给量化部113。
量化部113基于从控制部101提供的变换信息Tinfo而对从变换部112提供的变换系数Coeff执行缩放(量化)。简言之,量化部113对已被执行变换处理的变换系数Coeff或其变换处理已被跳过(省略)的变换系数Coeff(即,预测残差D)执行量化。量化部113将通过量化而获得的量化后的变换系数(即,通过量化而获得的量化变换系数水平level)提供给编码部114和逆量化部115。应当注意,量化部113也可以在变换量化旁路时跳过(省略)量化处理并且将变换系数Coeff作为量化变换系数水平level提供给编码部114。
编码部114通过预定方法对从量化部113提供的量化变换系数水平level等进行编码。例如,编码部114将从控制部101提供的编码参数(报头信息Hinfo、预测模式信息Pinfo、变换信息Tinfo等)和从量化部113提供的量化变换系数水平level转换成各个语法元素的语法值,并且对语法值进行编码(例如,算术编码)以生成位串(编码数据)。
另外,编码部114还根据量化变换系数水平level得到残差信息RInfo,并且对残差信息RInfo进行编码以生成位串(编码数据)。
残差信息RInfo例如包括最后的非零系数X坐标(last_sig_coeff_x_pos)、最后的非零系数Y坐标(last_sig_coeff_y_pos)、子块非零系数存在/不存在标志(coded_sub_block_flag)、非零系数存在/不存在标志(sig_coeff_flag)、作为指示非零系数的水平是否大于1的标志信息的GR1标志(gr1_flag)、作为指示非零系数的水平是否大于2的标志信息的GR2标志(gr2_flag)、作为指示非零系数是正的还是负的代码的符号代码(sign_flag)、作为指示非零系数的剩余水平等的信息的非零系数剩余水平(coeff_abs_level_remaining)等(例如,参考JCTV C-W1005,7.3.8.11残差编码语法)。
当然,残差信息RInfo的内容是任意的,并且除了上述示例以外的任何信息都可以包括在残差信息RInfo中。
编码部114对例如编码语法元素的位串(编码数据)进行多路复用,并且输出位串作为比特流。
逆量化部115基于从控制部101提供的变换信息Tinfo而对从量化部113提供的量化变换系数水平level的值进行缩放(逆量化),并且得到逆量化后的变换系数Coeff_IQ。逆量化部115将变换系数Coeff_IQ提供给逆变换部116。应当注意,逆量化部115可以在变换量化旁路时跳过(省略)逆量化处理,并且将量化变换系数水平level作为变换系数Coeff_IQ提供给逆变换部116。由逆量化部115执行的逆量化是由量化部113执行的量化的逆处理,并且是与由下文描述的图像解码装置执行的逆量化类似的处理。因此,在下文中,在关于图像解码装置的描述中描述了逆量化。
逆变换部116基于从控制部101提供的变换信息Tinfo而对从逆量化部115提供的变换系数Cofff_IQ执行逆变换,以得到预测残差D'。逆变换部116将预测残差D'提供给算术运算部117。应当注意,逆变换部116还可以在变换跳过时或在变换量化旁路时跳过(省略)逆变换处理(逆二次变换和逆一次变换),并且将变换系数Coeff_IQ作为预测残差D'提供给算术运算部117。由逆变换部116执行的逆变换是由变换部112执行的变换的逆处理,并且是与下文中描述的图像解码装置执行的逆变换类似的处理。
算术运算部117如由下面给出的表达式(10)所表示的那样将从逆变换部116提供的预测残差D'与从预测部119提供的且与预测残差D'对应的预测图像P(预测信号)相加,以得到局部解码图像Rec。算术运算部117将局部解码图像Rec提供给帧存储器118。
Rec=D'+P...(10)
帧存储器118使用从算术运算部117提供的局部解码图像Rec来重构图片的每个单位的解码图像,并且将解码图像存储到帧存储器118中的缓冲器中。帧存储器118从缓冲器读出由预测部119指定的解码图像作为参考图像并且将解码图像提供给预测部119。此外,帧存储器118可以将与生成解码图像有关的报头信息Hinfo、预测模式信息Pinfo、变换信息Tinfo等存储到帧存储器118中的缓冲器中。
预测部119获取存储在帧存储器118中的且由预测模式信息Pinfo指定的解码图像作为参考图像,并且使用该参考图像来通过由预测模式信息Pinfo指定的预测方法生成预测图像P。预测部119将所生成的预测图像P提供给算术运算部111和算术运算部117。
如上所述的这样的图像编码装置100包括控制部,该控制部在将要跳过作为对预测残差的变换处理的一次变换的情况下,也跳过作为对通过对预测残差的一次变换而获得的一次变换系数的变换处理的二次变换,该预测残差是图像与图像的预测图像之间的差异。
<变换部>
图6是示出变换部112的主要配置示例的框图。参照图6,变换部112包括开关131、一次变换部132和二次变换部133。
开关131是用于控制一次变换和二次变换的执行的控制部的实施方式。例如,在开关131要跳过一次变换的情况下,开关131进行控制以使得也跳过二次变换。例如,开关131响应于与跳过一次变换有关的且包括在变换信息Tinfo中的变换跳过标志ts_flag的值而控制从算术运算部111提供的预测残差D的提供目的地。
例如,在变换跳过标志ts_flag的值为0的情况下,即,在变换跳过标志ts_flag指示执行变换(一次变换)的情况下,开关131进行控制以使得至少执行一次变换。简言之,在这种情况下,开关131将预测残差D提供给一次变换部132。
另一方面,在变换跳过标志ts_flag的值为1的情况下,即,在变换跳过标志ts_flag指示跳过(省略)变换(一次变换)的情况下,开关131进行控制以使得跳过一次变换和二次变换。简言之,在这种情况下,开关131将预测残差D作为变换系数Coeff提供给量化部113。
因此,变换部112可以容易地抑制变换的处理量的不必要增加。
例如,对于如4×4矩阵的预测残差D=[[255,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]]那样非零系数的数量少的稀疏残差信号(预测残差D),期望应用变换跳过(跳过一次变换和二次变换),以便抑制能量集中性的降低,从而抑制编码效率的降低。通过如上所述那样响应于变换跳过标志ts_flag的值来控制变换的执行,开关131可以以这种方式、特别是对于非零系数的数量少的稀疏残差信号,不仅可以更容易地跳过一次变换而且还更容易地跳过二次变换,并且可以抑制变换的处理量的增加,以抑制编码效率的降低。
应当注意,开关131可以响应于包括在变换信息Tinfo中的变换量化旁路标志transquant_bypass_flag的值而控制从算术运算部111提供的预测残差D的提供目的地。
例如,在变换量化旁路标志transquant_bypass_flag的值为0的情况下,即,在变换量化旁路标志transquant_bypass_flag指示执行变换和量化的情况下,开关131进行控制以使得至少执行一次变换。简言之,在这种情况下,开关131将预测残差D提供给一次变换部132。
另一方面,在变换量化旁路标志transquant_bypass_flag的值为1的情况下,即,在变换量化旁路标志transquant_bypass_flag指示跳过(省略)变换和量化的情况下,开关131进行控制以使得跳过一次变换和二次变换。简言之,在这种情况下,开关131将预测残差D作为变换系数Coeff提供给量化部113。
与在变换跳过的情况下类似,这使得变换部112可以容易地抑制变换的处理量的不必要增加。
一次变换部132对从开关131提供的预测残差D执行一次变换,例如,诸如正交变换等。简言之,一次变换部132在开关131的控制下执行一次变换。
在要执行一次变换的情况下,一次变换部132通过根据作为例如与一次变换的内容有关的信息的一次变换标识符pt_idx的值的方法来执行一次变换。例如,一次变换部132选择由一次变换标识符pt_idx指定的水平方向上的一次变换Phor和垂直方向上的一次变换Pver,并且对从开关131提供的预测残差D执行例如通过下面的表达式(11)表示的矩阵算术运算,以得到一次变换后的变换系数Coeff_P(也称为一次变换系数)。
Coeff_P=Phor·D·PverT...(11)
应当注意,表达式(11)可以是通过下面的表达式(12)给出的。
Coeff_P=Pver·D·PhorT...(12)
应当注意,运算符“·”表示用于进行矩阵之间的内积(矩阵乘积)的运算,以及运算符“T”表示对转置矩阵的运算。一次变换部132将得到的一次变换系数Coeff_P提供给二次变换部133。
二次变换部133将从一次变换部132提供的一次变换系数Coeff_P转换成一维向量,对一维向量执行矩阵算术运算,对已被执行矩阵算术运算的一维向量执行缩放,并且执行作为用于对缩放后的一维向量进行矩阵化的变换处理的二次变换。简言之,二次变换部133在开关131的控制下执行二次变换。
二次变换部133基于作为与二次变换的内容有关的信息的二次变换标识符st_idx以及作为与对于变换系数的扫描方法有关的信息的扫描标识符scanIdx,对二次变换系数Coeff_P执行二次变换,以得到二次变换后的变换系数Coeff(也称为二次变换系数)。
如图6所示,二次变换部133包括光栅化部141、矩阵算术运算部142、缩放部143、矩阵化部144和二次变换选择部145。
光栅化部141基于由扫描标识符scanIdx指定的对于变换系数的扫描方法,针对子块(4×4子块)的每个单元而将从一次变换部132提供的一次变换系数Coeff_P转换成1×16维向量X1d。光栅化部141将得到的向量X1d提供给矩阵算术运算部142。
图7的A描绘了由扫描标识符scanIdx的各个值指定的扫描类型scanType。如图7的A中所示,在扫描标识符scanIdx为0的情况下,指定倾斜方向扫描(右上对角扫描(up-rightdiagonal scan));在扫描标识符scanIdx为1的情况下,指定水平方向扫描(水平快速扫描);以及在扫描标识符scanIdx为2的情况下,指定垂直方向扫描(垂直快速扫描)。图7的B到图7的D描绘了针对4×4子块的各种扫描的系数的扫描顺序。在图7的B到图7的D中,应用于每个系数位置的数字表示系数位置被扫描的顺序编号。图7的B描绘了水平方向扫描(水平快速扫描)中的扫描顺序的示例;图7的C描绘了垂直方向扫描(垂直快速扫描)中的扫描顺序的示例;以及图7中的D描绘了倾斜方向扫描(右上对角扫描)中的扫描顺序的示例。
例如,假设变换跳过标志ts_flag是0并且从一次变换部132提供的一次变换系数Coeff_P是如下面的表达式(13)所示的4×4矩阵。
[数学式6]
此外,假设扫描标识符scanIdx指示水平扫描hor。在这种情况下,光栅化部141根据图7的B的水平扫描的系数的扫描顺序来扫描一次变换系数Coeff_P,并且将一次变换系数Coeff_P转换成如下面的表达式(14)所示的1×16维向量X1d。光栅化部141将所确定的向量X1d提供给矩阵算术运算部142。
[数学式7]
X1d=[245,-42,-18,-30,-30,-31,3,-2,11,-4,-9,4,3,-2,1,0]...(14)
二次变换选择部145从二次变换选择部145的内部存储器(未示出)读出由二次变换标识符st_idx指定的二次变换的矩阵R,并且将矩阵R提供给矩阵算术运算部142。例如,当二次变换标识符st_idx具有特定值时,二次变换选择部145读出图8中所示的用于二次变换的16×16的矩阵R并且将矩阵R提供给矩阵算术运算部142。
注意,二次变换选择部145可以响应于二次变换标识符st_idx和帧内预测模式信息IPinfo(例如,预测模式编号)来选择用于二次变换的矩阵R。作为替选,二次变换选择部145可以响应于运动预测信息MVinfo和二级变换标识符st_idx而不是帧内预测模式信息IPinfo来选择矩阵R。
矩阵算术运算部142使用一维向量X1d和用于二次变换的矩阵R执行如下面的表达式(15)所表示的矩阵算术运算,并且将矩阵算术运算的结果Y1d提供给缩放部143。
Y1d T=R·X1d T......(15)
此处,运算符“T”表示转置矩阵的运算。例如,通过表达式(14)的向量X1d与图8中所示的用于二次变换的矩阵R的矩阵乘积,获得如下面的表达式(16)所示的结果Y1d
[数学式8]
Y1d=[63055,138,-639,1088,-8168,-12139,-2581,-3003,-4190,-5866,
1984,2271,1989,-878,-681,319]......(16)
为了对从矩阵算术运算部142提供的信号Y1d的范数进行归一化,缩放部143执行如下面的表达式(17)所示的N(N是自然数)位的移位算术运算,以确定移位后的信号Z1d
Z1d=(Y1d)>>N...(17)
应当注意,在N位的移位算术运算之前,可以如下面的表达式(18)所表示的那样将1<<(N-1)的值作为偏移与信号Z1d的每个元素相加。
Z1d=(Y1d+((N-1)<<1)·E)>>N...(18)
应当注意,在表达式(18)中,E是1×16维向量,其中,所有元素的值为1。例如,由于图8中所示的用于二次变换的矩阵R是8位缩放矩阵,因此由缩放部143对范数进行归一化所使用的N的值是8。例如,如果在表达式(18)中、在将N设置为N=8的情况下对表达式(16)中所示的信号Y1d进行算术运算,则获得如表达式(19)所示的结果Z1d
[数学式9]
Z1d=[246,1,-2,4,-32,-47,-10,-12,-16,-23,8,9,8,-3,-3,-1]...(19)
通常,在用于二次变换的矩阵R处于N位缩放状态的情况下,范数归一化中的移位量是N位。缩放部143将以上述方式获得的信号Z1d提供给矩阵化部144。
矩阵化部144基于由扫描标识符scanIdx指定的扫描方法来将范数归一化后的1×16维向量X1d转换成4×4矩阵X。例如,矩阵化部144基于图7的B中所示的水平扫描来对由表达式(19)表示的1×16维向量Z1d进行矩阵化,从而,获得由下面的表达式(20)表示的4×4矩阵的变换系数Coeff。
[数学式10]
矩阵化部144将得到的变换系数Coeff提供给量化部113。
例如,在变换跳过标志ts_flag指示跳过变换处理(一次变换)的情况下,开关131可以使得跳过一次变换和二次变换,以使得量化部113对预测残差D进行量化,并且编码部114对量化变换系数水平和变换跳过标志ts_flag进行编码,以生成包括量化变换系数水平和变换跳过标志ts_flag的编码数据的比特流。
<图像编码处理的流程>
现在,将描述由图像编码装置100执行的处理的流程的示例。首先,参照图9的流程图来描述图像编码处理的流程的示例。
在图像编码处理开始之后,在步骤S101中,控制部101执行编码控制处理并且执行块分割、编码参数的设置等。
在步骤S102中,预测部119执行预测处理以生成最佳预测模式的预测图像等。例如,在预测处理中,预测部119执行帧内预测以生成最佳帧内预测模式的预测图像等,执行帧间预测以生成最佳帧间预测模式的预测图像等,并且基于成本函数值等而从预测模式之中选择最佳预测模式。
在步骤S103处,算术运算部111对输入图像与通过步骤S102中的预测处理而选择的最佳模式的预测图像之间的差异进行算术运算。简言之,算术运算部111生成输入图像与预测图像之间的预测残差D。与原始图像数据相比,以这种方式确定的预测残差D的数据量减少。因此,与按原样对图像进行编码的替选情况相比,可以压缩数据量。
在步骤S104中,变换部112对通过步骤S103中的处理而生成的预测残差D执行变换处理,以得到变换系数Coeff。在下文中描述了步骤S104的处理的细节。
在步骤S105中,量化部113使用控制部101计算出的量化参数等来对通过步骤S104的处理而获得的变换系数Coeff进行量化并且得到量化变换系数水平level。
在步骤S106中,逆量化部115利用与步骤S105的量化的特性对应的特性来对通过步骤S105的处理而生成的量化变换系数水平level进行逆量化,以得到变换系数Coeff_IQ。
在步骤S107中,逆变换部116通过与步骤S104中的变换处理对应的方法对通过步骤S106中的处理而获得的变换系数Coeff_IQ进行逆变换,以得到预测残差D'。应当注意,该逆变换处理是步骤S104中的变换处理的逆处理,并且与在下文描述的图像解码处理中执行的逆变换处理类似地被执行。因此,在解码侧的描述中给出对逆变换处理的描述。
在步骤S108中,算术运算部117将通过步骤S102中的预测处理而获得的预测图像与通过步骤S107中的处理而得到的预测残差D'相加,以生成被局部解码的解码图像。
在步骤S109中,帧存储器118存储通过步骤S108的处理而获得的且被局部解码的解码图像。
在步骤S110中,编码部114对通过步骤S105的处理而获得的量化变换系数水平level进行编码。例如,编码部114通过算术编码等对作为与图像有关的信息的量化变换系数水平level进行编码,以生成编码数据。另外,此时,编码部114还对各种编码参数(报头信息Hinfo、预测模式信息Pinfo和变换信息Tinfo)进行编码。此外,编码部114还根据量化变换系数水平level得到残差信息RInfo,并且对残差信息RInfo进行编码。编码部114将以这种方式生成的各种信息的编码数据作为比特流一起输出到图像编码装置100的外部。该比特流例如通过传输线路或记录介质被传送至解码侧。
当步骤S110的处理结束时,图像编码处理结束。
应当注意,各种处理中的处理单位是任意的,并且可以彼此不相同。因此,可以与其他步骤等的处理并行或者以改变的处理顺序适当地执行各个步骤的处理。
<变换处理的流程>
接下来,将参照图10的流程图来描述在图9的步骤S104中执行的变换处理的流程的示例。
在变换处理开始之后,在步骤S121处,开关131判定变换跳过标志ts_flag是否为1(真)。在判定变换跳过标志ts_flag是1(真)(变换跳过标志ts_flag指示跳过变换处理)的情况下,跳过一次变换和二次变换(步骤S122到S130的处理)并且变换处理结束,处理返回到图9。简言之,开关131将预测残差D作为变换系数Coeff提供给量化部113。另一方面,在步骤S121中判定变换跳过标志ts_flag为0(假)(变换跳过标志ts_flag指示执行变换处理)的情况下,处理进行到步骤S122。
应当注意,在步骤S121处,开关131还可以判定变换量化旁路标志transquant_bypass_flag是否为1(真)。与此同时,在判定变换量化旁路标志transquant_bypass_flag为1(真)(变换量化旁路标志transquant_bypass_flag指示跳过变换处理和量化处理)的情况下,跳过一次变换和二次变换(步骤S122至S130的处理)并且变换处理结束,而处理返回到图9。具体地,开关131将预测残差D作为变换系数Coeff提供给量化部113。另一方面,如果在步骤S121中判定变换量化旁路标志transquant_bypass_flag为0(假)(变换量化旁路标志transquant_bypass_flag指示执行变换处理和量化处理),则处理进行到步骤S122。
在步骤S122中,一次变换部132基于一次变换标识符pt_idx而对预测残差D执行一次变换,以得到一次变换系数Coeff_P。
在步骤S123中,二次变换部133判定二次变换标识符st_idx是否适用二次变换(st_idx>0)。在判定二次变换标识符st_idx为0(二次变换标识符st_idx指示跳过二次变换)的情况下,跳过二次变换(步骤S124到S130的处理)并且结束变换处理,而处理返回至图9。具体地,二次变换部133将一次变换系数Coeff_P作为变换系数Coeff提供给量化部113。
另一方面,在步骤S123中判定二次变换标识符st_idx大于0(二次变换标识符st_idx指示执行二次变换)的情况下,处理进行到步骤S124。通过步骤S124到S130的处理来执行二次变换。
在步骤S124中,二次变换选择部145选择由二次变换标识符st_idx指定的用于二次变换的矩阵R。
在步骤S125中,二次变换部133将处理目标的变换块分割成子块,并且选择未处理的子块。
在步骤S126中,光栅化部141基于由扫描标识符scanIdx指定的扫描方法而将一次变换系数Coeff_P转换成1×16维向量X1d
在步骤S127中,矩阵算术运算部142对向量X1d与用于二次变换的矩阵R之间的列积(column product)进行算术运算,以确定向量Y1d
在步骤S128中,缩放部143对向量Y1d的范数进行归一化以确定向量Z1d
在步骤S129中,矩阵化部144基于由扫描标识符scanIdx指定的扫描方法而将向量Z1d转换成4×4矩阵,以确定处理目标的子块的变换系数Coeff。变换系数Coeff被提供给量化部113。
在步骤S130中,二次变换部133判定是否处理了处理目标的变换块的所有子块。在判定存在未处理的子块的情况下,处理返回到步骤S125,并且重复后面的处理。简言之,对处理目标的变换块的每个子块执行步骤S125到S130的处理(二次变换)。在步骤S130中判定处理了所有子块(已执行对所有子块的二次变换)的情况下,结束变换处理并且处理返回到图9。
应当注意,变换处理可以改变步骤的处理顺序,或者可以在可以执行处理的范围内改变处理的内容。例如,在步骤S123中判定二次变换标识符st_idx=0的情况下,可以选择16×16的单位矩阵作为用于二次变换的矩阵R,以使得执行步骤S125至S130的处理。
通过以如上所述的方式执行处理,图像编码装置100通过用变换跳过标志ts_flag指示变换处理的跳过而不仅可以跳过一次变换而且还可以跳过二次变换。因此,例如,关于非零系数的数量少且期望对其应用变换跳过的稀疏残差信号,可以执行更容易地实现变换的处理量的减少以及能量集中性劣化的降低并且提高编码效率的变换处理。
<图像解码装置>
在下文中,描述了对以如上所述的方式编码的编码数据的解码。图11是描绘具有应用了本技术的图像处理装置的形式的图像解码装置的配置示例的框图。图11中所描绘的图像解码装置200是与图5的图像编码装置100对应的且通过与图像编码装置100的编码方法对应的解码方法对由图像编码装置100生成的编码数据(比特流)进行解码的图像解码装置。例如,图像解码装置200涉及HEVC中提出的技术或JVET中所提出的技术。
应当注意,在图11中,描绘了处理部、数据流等中的主要部分,并且在图11中不一定描绘所有部分。换言之,图像解码装置200可以包括在图11中未被描绘为块的处理部,或者可以包括图11中未示出为箭头标记等的处理或数据流。
如图11所示,图像解码装置200包括解码部211、逆量化部212、逆变换部213、算法运算部214、帧存储器215和预测部216。由图像编码装置100生成的编码数据等作为例如比特流等例如通过传输介质、记录介质等被提供给图像解码装置200。
解码部211通过与编码方法对应的预定解码方法对被提供给解码部211的编码数据进行解码。例如,解码部211根据语法表的定义来从被提供给解码部211的编码数据的位串(比特流)对语法元素的语法值进行解码。语法元素例如包括诸如报头信息Hinfo、预测模式信息Pinfo、变换信息Tinfo、残差信息Rinfo等的信息。
解码部211参考残差信息Rinfo以得到每个变换块中的每个系数位置的量化变换系数水平level。解码部211将通过解码而获得的预测模式信息Pinfo、量化变换系数水平level和变换信息Tinfo提供给相关联的块。例如,解码部211将预测模式信息Pinfo提供给预测部216,将量化变换系数水平level提供给逆量化部212,并且将变换信息Tinfo提供给逆量化部212和逆变换部213。
逆量化部212基于从解码部211向其提供的变换信息Tinfo而对从解码部211向其提供的量化变换系数水平level的值进行缩放(逆量化),以得到逆量化后的变换系数Coeff_IQ。该逆量化是由图像编码装置100的量化部113(图5)执行的量化的逆处理。应当注意,逆量化部115(图5)执行与由逆量化部212进行的逆量化类似的逆量化。逆量化部212将变换系数Coeff_IQ提供给逆变换部213。应当注意,逆量化部212也可以在变换量化旁路时跳过(省略)逆量化处理并且将量化变换系数水平level作为变换系数Coeff_IQ提供给逆变换部213。
逆变换部213基于从解码部211提供的变换信息Tinfo对从逆量化部212提供的变换系数Coeff_IQ进行逆变换,以得到预测残差D'。该逆变换是与由图像编码装置100的变换部112(图5)执行的变换处理相反的处理。应当注意,逆变换部116执行与由逆变换部213进行的逆变换类似的逆变换。下文中描述逆变换的细节。逆变换部213将所获得的预测残差D'提供给算术运算部214。应当注意,逆变换部213也可以跳过(省略)逆变换处理(逆二次变换和逆一次变换),并且将变换系数Coeff_IQ作为预测残差D'提供给算术运算部214。
算术运算部214将从逆变换部213提供的预测残差D'与对应于预测残差D'的预测图像P(预测信号)相加,以得到如下面给出的表达式(21)所示的局部解码图像Rec。算术运算部214使用所得到的局部解码图像Rec来重构每个图片单位的解码图像,并且将所得到的局部解码图像输出至图像解码装置200的外部。此外,算法运算部214将局部解码图像Rec也提供给帧存储器215。
Rec=D'+P...(21)
帧存储器215使用从算术运算部214提供的局部解码图像Rec来重构每个图片单位的解码图像,并且将解码图像存储到帧存储器215中的缓冲器中。帧存储器215从缓冲器读出由预测部216的预测模式信息Pinfo指定的解码图像作为参考图像,并且将参考图像提供给预测部216。此外,帧存储器215可以将与生成解码图像有关的报头信息Hinfo、预测模式信息Pinfo、变换信息Tinfo等存储到帧存储器215中的缓冲器中。
预测部216获取存储在帧存储器215中的且由从解码部211提供的预测模式信息Pinfo指定的解码图像作为参考图像,并且使用参考图像来通过由预测模式信息Pinfo指定的预测方法生成预测图像P。预测部216将所生成的预测图像P提供给算术运算部214。
如上所述的这样的图像解码装置200包括控制部,该控制部在将要跳过作为一次变换的逆变换的逆一次变换的情况下,还跳过作为二次变换的逆变换的逆二次变换,该一次变换是对作为图像与图像的预测图像之间的差异的预测残差的变换处理,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理。
<逆变换部>
图12是描绘图11的逆变换部213的主要配置示例的框图。如图12所示,逆变换部213包括开关231、逆二次变换部232和逆一次变换部233。
开关231是用于控制对逆二次变换和逆一次变换的执行的控制部的实施例。例如,开关231进行控制,以使得在要跳过逆一次变换的情况下也跳过逆二次变换。例如,开关231响应于变换跳过标志ts_flag的值的值来执行这样的控制,该变换跳过标志ts_flag是与跳过逆一次变换有关的信息。
例如,在变换跳过标志ts_flag的值为0的情况下,即,在变换跳过标志ts_flag指示执行逆变换(逆一次变换)的情况下,开关231使得执行逆二次变换和逆一次变换。简言之,在这种情况下,开关231将变换系数Coeff_IQ提供给逆二次变换部232。
相反地,在变换跳过标志ts_flag的值是1的情况下,即,在变换跳过标志ts_flag指示跳过(省略)逆变换(逆一次变换)的情况下,开关231使得跳过逆二次变换和逆一次变换。简言之,在这种情况下,开关231将变换系数Coeff_IQ作为预测残差D'提供给算术运算部214。
因此,逆变换部213可以容易地抑制逆变换的处理量的不必要增加。
例如,对于如4×4矩阵的变换系数Coeff_IQ=[[255,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]]那样非零系数的数量少的稀疏残差信号(变换系数Coeff_IQ),期望应用变换跳过(跳过逆二次变换和逆一次变换),以便抑制能量集中性的降低,从而抑制编码效率的降低。通过如上所述那样响应于变换跳过标志ts_flag的值来控制逆变换的执行,开关231不仅可以尤其针对非零系数的数量少的这样的稀疏残差信号而更容易地跳过逆一次变换而且还可以更容易地跳过逆二次变换,并且可以抑制逆变换的处理量的增加以抑制编码效率的降低。
应当注意,开关231可以响应于包括在变换信息Tinfo中的变换量化旁路标志transquant_bypass_flag的值来控制从外部提供的变换系数Coeff_IQ的提供目的地。
例如,在变换量化旁路标志transquant_bypass_flag的值为0的情况下,即,在变换量化旁路标志transquant_bypass_flag指示执行逆变换和逆量化的情况下,开关231将变换系数Coeff_IQ提供给逆二次变换部232。
另一方面,在变换量化旁路标志transquant_bypass_flag的值为1的情况下,即,在变换量化旁路标志transquant_bypass_flag指示跳过(省略)变换和量化的情况下,开关231使得跳过逆二次变换和逆一次变换。简言之,在这种情况下,开关231将变换系数Coeff_IQ作为预测残差D'提供给算术运算部214。
因此,与在变换跳过中类似地,逆变换部213可以容易地抑制变换的处理量的不必要增加。
逆二次变换部232将从开关231提供的二次变换系数(即,通过对编码数据进行解码和逆量化而获得的二次变换系数)转换成一维向量,对一维向量执行矩阵算术运算,对被执行了矩阵算术运算的一维向量执行缩放,并且执行作为用于对缩放后的一维向量进行矩阵化的变换处理的逆二次变换。简言之,逆二次变换部232在开关231的控制下执行逆二次变换。
逆二次变换部232基于作为与二次变换的内容有关的信息的二次变换标识符st_idx以及作为与变换系数的扫描方法有关的信息的扫描标识符scanIdx而对变换系数Coeff_IQ执行逆二次变换,以得到逆二次变换后的变换系数Coeff_IS(也称为一次变换系数)。逆二次变换部232将一次变换系数Coeff_IS提供给逆一次变换部233。应当注意,下文中描述逆二次变换部232的细节。
逆一次变换部233对从逆二次变换部232提供的一次变换系数Coeff_IS执行逆一次变换,例如,诸如逆正交变换等。简言之,逆一次变换部233在开关231的控制下执行逆一次变换。
在要执行逆一次变换的情况下,逆一次变换部233例如通过根据作为与逆一次变换的内容有关的信息的一次变换标识符pt_idx的值的方法来执行逆一次变换。例如,逆一次变换部233选择由从解码部211提供的一次变换标识符pt_idx指定的水平方向上的逆一次变换IPhor和垂直方向上的逆一次变换IPver,并且执行例如通过表达式(22)表示的矩阵算术运算,以得到预测残差D'。
D'=IPhor·Coeff_IS·IPverT...(22)
此处,运算符“·”表示用于执行矩阵之间的内积(矩阵乘积)的运算,以及运算符“T”表示转置矩阵的运算。此外,水平方向上的逆一次变换IPhor是水平方向上的一次变换Phor的逆变换并且也表示为PhorT(=Phor-1)。类似地,垂直方向上的逆一次变换IPver是垂直方向上的一次变换Pver的逆变换并且也表示为PverT(=Pver-1)。应当注意,上面给出的表达式(22)可以被表示为如下面的表达式(23)。
D'=IPver·Coeff_IS·IPhorT...(23)
逆一次变换部233将所得到的预测残差D'提供给算术运算部214。
现在,描述逆二次变换部232。如图12所示,逆二次变换部232包括光栅化部241、矩阵算术运算部242、缩放部243、矩阵化部244和逆二次变换选择部245。
光栅化部241基于由从解码部211提供的扫描标识符scanIdx指定的对于变换系数的扫描方法,将针对每个子块(4×4子块)从开关231提供的变换系数Coeff_IQ转换成1×16维向量X1d。光栅化部241将所得到的向量X1d提供给矩阵算术运算部242。应当注意,在上文中诸如参照图7描述了与作为与对于变换系数的扫描方法有关的信息的扫描标识符scanIdx对应的扫描方法。
例如,假设被提供给逆变换部213的每个变换系数Coeff_IQ是如下以下表达式(24)所表示的4×4矩阵。
[数学式11]
在变换跳过标志ts_flag为0并且扫描标识符scanIdx指示水平扫描hor的情况下,光栅化部241根据图7的B中描绘的水平扫描的系数的扫描顺序来扫描变换系数Coeff_IQ,以将变换系数Coeff_IQ转换成如以下表达式(25)所表示的1×16维向量X1d。然后,光栅化部241将所得到的向量X1d提供给矩阵算术运算部242。
[数学式12]
X1d=[245,-42,-18,-30,-30,-31,3,-2,11,-4,-9,4,3,-2,1,0]...(25)
逆二次变换选择部245从逆二次变换选择部245的内部存储器(未示出)读出从解码部211提供的且由二次变换标识符st_idx指定的用于逆二次变换的矩阵IR(=RT),并且将读出的矩阵IR提供给矩阵算术运算部242,其中,该二次变换标识符st_idx是与二次变换的内容有关的信息。例如,当二次变换标识符st_idx具有特定值时,逆二次变换选择部245读出图8中所示的16×16矩阵R的转置矩阵RT作为用于逆二次变换的矩阵IR,并且将转置矩阵RT提供给矩阵算术运算部242。
注意,逆二次变换选择部245可以响应于例如从解码部211提供的二次变换标识符st_idx或帧内预测模式信息IPinfo(例如,帧内预测模式编号)来选择用于逆二次变换的矩阵IR(=RT)。替选地,可以响应于运动预测信息MVinfo和二次变换标识符st_idx而不是帧内预测模式信息IPinfo来选择逆矩阵IR。
矩阵算术运算部242针对每个子块(4×4子块)、使用1×16维向量X1d和用于逆二次变换的矩阵IR(=RT)来执行如以下表达式(26)所表示的矩阵算术运算,以作为矩阵算术运算的结果而得到向量Y1d
Y1d T=IR·X1d T=RT·X1d T...(26)
此处,运算符“T”表示转置矩阵的运算。例如,矩阵算术运算部242使用由上文给出的表达式(25)表示的向量X1d和图8中描绘的二次变换后的矩阵R的转置矩阵RT来执行由表达式(26)表示的矩阵乘积,以得到如以下表达式(27)所表示的向量Y1d。矩阵算术运算部242将所得到的向量Y1d提供给缩放部243。
[数学式13]
Y1d=[65380,78,34,-68,-121,43,-79,130,-24,83,109,76,23,58,65,52]...(27)
为了针对每个子块(4×4子块)对从矩阵算术运算部242提供的信号Y1d的范数进行归一化,缩放部243针对信号Y1d的所有元素而如由以下表达式(28)表示的那样执行N(N是自然数)位的移位算术运算,以确定移位后的信号Z1d
Z1d=(Y1d)>>N...(28)
应当注意,在N位的移位算术运算之前,可以如下面给出的表达式(29)所表示的那样将1<<(N-1)的值作为偏移与信号Z1d的每个元素相加。应当注意,在表达式(29)中,向量E是1×16维向量,其中,所有元素的值都是1。
Z1d=(Y1d+((N-1)<<1)·E)>>N...(29)
例如,由于图8中所示的用于逆二次变换的矩阵IR(=RT)是8位缩放矩阵,因此在缩放部243对范数进行归一化时使用的N的值是8。
例如,在表达式(29)中、在将N设置为N=8的情况下执行算术运算时的结果(信号Z1d)变为如以下表达式(30)所表示的那样。
[数学式14]
Z1d=[255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]...(30)
通常,在用于逆二次变换的矩阵IR(=RT)处于N位缩放状态的情况下,在范数归一化之后的移位量是N位。
对于每个子块(4×4子块),矩阵化部244接受范数归一化之后的信号Z1d和扫描标识符scanIdx作为其输入,并且基于由从解码部211提供的扫描标识符scanIdx指定的扫描方法而将从缩放部243提供的1×16维向量Z1d转换成4×4矩阵的一次变换系数Coeff_IS。
例如,矩阵化部244基于由图7的B表示的水平扫描对由表达式(30)表示的1×16维向量Z1d进行矩阵化,并且获得如以下表达式(31)所表示的4×4矩阵的一次变换系数Coeff_IS。
[数学式15]
矩阵化部244将所得到的一次变换系数Coeff_IS提供给逆一次变换部233。
<图像解码处理的流程>
现在,描述如上所述的图像解码装置200执行的处理的流程。首先,将参照图13的流程图来描述图像解码处理的流程的示例。
在图像解码处理开始之后,在步骤S201中,解码部211对被提供给图像解码装置200的比特流(编码数据)进行解码,以获得诸如报头信息Hinfo、预测模式信息Pinfo、变换信息Tinfo、残差信息Rinfo、量化变换系数水平level等信息。
在步骤S202中,逆量化部212对通过步骤S201的处理而获得的量化变换系数水平level进行逆量化,以得到变换系数Coeff_IQ。该逆量化是在图像编码处理的步骤S105(图9)中执行的量化的逆处理,并且是与在图像编码处理的步骤S106(图9)中执行的逆量化类似的处理。
在步骤S203中,逆变换部213对通过步骤S202的处理而获得的变换系数Coeff_IQ进行逆变换,以得到预测残差D'。该逆变换是在图像编码处理的步骤S104(图9)中执行的变换处理的逆处理,并且是与在图像编码处理的步骤S107(图9)中执行的逆变换类似的处理。
在步骤S204中,预测部216基于预测模式信息Pinfo、以与编码时的预测模式相同的预测模式执行预测,以生成预测图像。
在步骤S205中,算法运算部214将通过步骤S204的处理而获得的预测图像与通过步骤S203的处理而获得的预测残差D'相加,以获得解码图像。
当步骤S205的处理结束时,图像解码处理结束。
<逆变换处理的流程>
接下来,将参照图14的流程图来描述在图13的步骤S203中执行的逆变换处理的流程的示例。
在逆变换处理开始之后,在步骤S221中,开关231判定变换跳过标志ts_flag是否为1(真)。在判定变换跳过标志ts_flag为1(真)(变换跳过标志ts_flag指示跳过逆变换处理)的情况下,跳过逆二次变换和逆一次变换(步骤S222到S230的处理)并且逆变换处理结束,而处理返回到图13。简言之,开关231将变换系数Coeff_IQ作为预测残差D'提供给算术运算部214。另一方面,在判定变换跳过标志ts_flag为0(假)(变换跳过标志ts_flag指示执行逆变换处理)的情况下,处理进行到步骤S222。
应当注意,在步骤S221中,开关231还可以判定变换量化旁路标志transquant_bypass_flag是否为1(真)。与此同时,在变换量化旁路标志transquant_bypass_flag为1(真)(变换量化旁路标志transquant_bypass_flag指示跳过逆量化处理和逆变换处理)的情况下,跳过逆二次变换和逆一次变换(步骤S222至S230的处理)并且逆变换处理结束,而处理返回到图13。简言之,开关231将变换系数Coeff_IQ作为预测残差D'提供给算术运算部214。另一方面,在变换量化旁路标志transquant_bypass_flag为0(假)(变换量化旁路标志transquant_bypass_flag指示执行逆量化处理和逆变换处理)的情况下,处理进行到步骤S222。
在步骤S222中,逆二次变换部232判定二次变换标识符st_idx是否适用逆二次变换(sd_idx>0)。在判定二次变换标识符st_idx为0(二次变换标识符st_idx指示跳过逆二次变换)的情况下,跳过逆二次变换(步骤S222至S229的处理),并且处理进行到步骤S230。简言之,逆二次变换部232将变换系数Coeff_IQ作为一次变换系数Coeff_P提供给逆一次变换部233。
另一方面,在步骤S222中判定二次变换标识符st_idx大于0(二次变换标识符st_idx指示执行逆二次变换)的情况下,处理进行到步骤S223。通过步骤S223至S229的处理执行逆二次变换。
在步骤S223中,逆二次变换选择部245选择用于由二次变换标识符st_idx指定的逆二次变换的矩阵IR。
在步骤S224中,逆二次变换部232选择包括在处理目标的变换块中的未处理的子块。
在步骤S225中,光栅化部241基于由扫描标识符scanIdx指定的扫描方法而将变换系数Coeff_IQ转换成1×16维向量X1d
在步骤S226中,矩阵算术运算部242对向量X1d与用于逆二次变换的矩阵IR之间的矩阵乘积进行算术运算,以确定向量Y1d
在步骤S227中,缩放部243对向量Y1d的范数进行归一化以确定向量Z1d
在步骤S228中,矩阵化部244基于由扫描标识符scanIdx指定的扫描方法而将向量Z1d转换成4×4矩阵,以确定处理目标的子块的一次变换系数Coeff_P。
在步骤S229中,逆二次变换部232确定是否已处理了处理目标的变换块的所有子块。在存在未处理的子块的情况下,处理返回到步骤S224,并且重复后面的处理。简言之,对于处理目标的变换块的每个子块,执行步骤S224至S229的处理(逆二次变换)。在步骤S229中判定已处理了所有子块(已执行了针对所有子块的逆二次变换)的情况下,处理进行到步骤S230。
在步骤S230中,逆一次变换部233基于一次变换标识符pt_idx而对一次变换系数Coeff_P执行逆一次变换,以得到预测残差D'。预测残差D'被提供给算术运算部214。
当步骤S230的处理结束时,逆变换处理结束并且处理返回到图13。
应当注意,在上述逆变换处理中,可以在可以执行的范围内改变步骤的处理顺序或者改变处理的内容。例如,在步骤S222中判定二次变换标识符st_idx为0的情况下,可以选择16×16的单位矩阵作为用于逆二次变换的矩阵IR,以使得执行步骤S223至S229的处理。
通过以如上所述的方式执行处理,图像解码装置200通过由变换跳过标志ts_flag指示跳过变换处理而不仅可以跳过逆一次变换而且还可以跳过逆二次变换。因此,例如,针对非零系数的数量少且期望应用变换跳过的稀疏残差信号,可以执行实现逆变换的处理量的减少以及能量集中性的劣化的降低、并且提高编码效率的逆变换处理。
<2.第二实施方式>
<跳过对变换跳过标志的编码和解码>
在NPL 1(JEM2)中所公开的技术中,以CU为单位对二次变换标识符st_idx进行编码,并且以包括在CU中的每个变换块为单位对变换跳过标志ts_flag进行编码。
例如,将上文结合第一实施方式描述的本技术应用于该技术(JEM2),以使得在变换跳过标志ts_flag为1(应用变换跳过)的情况下,跳过(逆)一次变换和(逆)二次变换。在这种情况下,在二次变换标识符st_idx指示执行二次变换的情况下,变换跳过标志ts_flag在CU中不能指示跳过(逆)变换处理,并且变换跳过标志ts_flag被确定为0。简言之,在这种情况下,变换跳过标志ts_flag的编码变得冗余。因此,存在编码效率会降低的可能性。
因此,在对通过对作为图像与图像的预测图像之间的差异的预测残差的一次变换而获得的一次变换系数执行二次变换的情况下,跳过对与跳过一次变换有关的第一信息的编码。
由于这使得可以在执行二次变换的情况下跳过对第一信息的编码,因此可以抑制编码效率的降低。
此外,在执行作为二次变换的逆变换的逆二次变换的情况下,跳过对与跳过作为一次变换的逆变换的逆一次变换有关的第一信息的编码数据的解码,其中,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理,该预测残差是图像与图像的预测图像之间的差异。
由于这使得可以在执行逆二次变换的情况下跳过对第一信息的编码数据的解码,因此可以抑制编码效率的降低。
<语法>
在图15中示出了描述表示如上所述的这样的控制的伪代码的语法表的示例。如在图15中从上面起的第四阶段所指示的那样,对于对变换跳过标志ts_flag的编码(即,对变换跳过标志ts_flag的编码数据的解码),这是二次变换标识符st_idx为0的条件之一。具体地,在二次变换标识符st_idx不为0的情况下,即,在执行(逆)二次变换的情况下,跳过对变换跳过标志ts_flag的编码(对变换跳过标志ts_flag的编码数据的解码)。
<编码部>
同样在这种情况下,图像编码装置100具有与第一实施方式的情况下的配置基本类似的配置。然而,在要对通过对作为图像与图像的预测图像之间的差异的预测残差的一次变换而获得的一次变换系数执行二次变换的情况下,图像编码装置100包括用于跳过对与跳过一次变换有关的第一信息的编码的编码部。简言之,在要对通过对作为图像与图像的预测图像之间的差异的预测残差的一次变换而获得的一次变换系数执行二次变换的情况下,这种情况下的编码部114跳过对与跳过一次变换有关的第一信息的编码。
图16是描绘通过在这种情况下的编码部114执行程序等来执行的、与对变换跳过标志ts_flag的编码有关的主要功能的示例的功能框图。如图16所示,通过执行程序,编码部114可以例如包括二次变换有效性标志编码部301、二次变换标识符编码部302、变换跳过有效性标志编码部303、最大变换跳过块大小编码部304、变换量化旁路标志编码部305和变换跳过标志编码部306的功能作为与对变换跳过标志ts_flag的编码有关的功能。
二次变换有效性标志编码部301执行与对二次变换有效性标志st_enabled_flag的编码有关的处理,该二次变换有效性标志st_enabled_flag是与允许二次变换有关的信息。二次变换标识符编码部302执行与对二次变换标识符st_idx的编码有关的处理,该二次变换标识符st_idx是与二次变换的内容有关的信息。变换跳过有效性标志编码部303执行与对变换跳过有效性标志ts_enabled_flag的编码有关的处理,该变换跳过有效性标志ts_enabled_flag是与允许跳过变换(一次变换)有关的信息。最大变换跳过块大小编码部304执行与对最大变换跳过块大小MaxTSSize的编码有关的处理,该最大变换跳过块大小MaxTSSize指示被允许跳过变换(一次变换)的变换块的最大尺寸。变换量化旁路标志编码部305执行与对变换量化旁路标志transquant_bypass_flag的编码有关的处理,该变换量化旁路标志transquant_bypass_flag是与跳过(旁路)变换(一次变换和二次变换)和量化有关的信息。变换跳过标志编码部306执行与对变换跳过标志ts_flag的编码有关的处理,该变换跳过标志ts_flag是与跳过变换(一次变换)有关的信息。
<编码处理的流程>
现在,描述由图像编码装置100执行的处理的流程的示例。图像编码装置100执行基本上与第一实施方式的情况下的图像编码处理类似的图像编码处理。然而,在这种情况下,图像编码装置100在图像编码处理的步骤S110(图9)中响应于二次变换标识符st_idx的值等而执行对变换跳过标志ts_flag等的编码。参照图17的流程图来描述对变换跳过标志ts_flag等的编码的流程的示例。简言之,作为在图9的步骤S110中执行的编码处理的一部分,图17中描绘的编码处理被执行。通过任意方法来执行对其他编码参数和量化变换系数水平level的编码。
在编码处理开始之后,在步骤S301中,二次变换有效性标志编码部301对包括在报头信息Hinfo中的二次变换有效性标志st_enabled_flag进行编码以生成位串(编码数据),并且输出编码数据。通过该编码而获得的二次变换有效性标志st_enabled_flag的编码数据被包括在包括量化变换系数水平level的编码数据的比特流中。
在步骤S302中,二次变换标识符编码部302判定报头信息Hinfo中包括的二次变换有效性标志st_enabled_flag是否为1(真)。在判定二次变换有效性标志st_enabled_flag为1的情况下,即,在判定允许执行二次变换的情况下,处理进行到步骤S303。
在步骤S303中,二次变换标识符编码部302对二次变换标识符st_idx进行编码以生成位串(编码数据),并且输出编码数据。通过该编码而获得的二次变换标识符st_idx的编码数据被包括在包括量化变换系数水平level的编码数据的比特流中。在步骤S303的处理结束之后,处理进行到步骤S304。
另一方面,在步骤S302中判定二次变换有效性标志st_enabled_flag为0(假)的情况下,即,在不允许执行二次变换的情况下,跳过步骤S303的处理,并且处理进行到步骤S304。
如果未执行二次变换,则不需要二次变换标识符st_idx。因此,在这种情况下,二次变换标识符编码部302跳过对二次变换标识符st_idx的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S304中,变换跳过有效性标志编码部303对报头信息Hinfo中包括的变换跳过有效性标志ts_enabled_flag进行编码以生成位串(编码数据),并且输出编码数据。通过编码而获得的变换跳过有效性标志ts_enabled_flag的编码数据被包括在包括量化变换系数水平level的编码数据的比特流中。
在步骤S305中,最大变换跳过块大小编码部304判定报头信息Hinfo中包括的变换跳过有效性标志ts_enabled_flag是否为1(真)。在判定变换跳过有效性标志ts_enabled_flag为1的情况下,即,在判定允许变换跳过(跳过一次变换和二次变换)的情况下,处理进行到步骤S306。
在步骤S306中,最大变换跳过块大小编码部304对最大变换跳过块大小MaxTSSize(或以2为底数的对数值log2MaxTSSize)进行编码以生成位串(编码数据),并且输出编码数据。通过编码而获得的最大变换跳过块大小MaxTSSize的编码数据被包括在包括量化变换系数水平level的编码数据的比特流中。当步骤S306的处理结束时,处理进行到步骤S307。
另一方面,在步骤S305中判定变换跳过有效性标志ts_enabled_flag为0的情况下,即,在不允许变换跳过的情况下,跳过步骤S306的处理,并且处理进行到步骤S307。
如果不能执行变换跳过,则不需要最大变换跳过块大小MaxTSSize(或log2TSSize)。因此,在这种情况下,最大变换跳过块大小编码部304跳过对最大变换跳过块大小MaxTSSize(或log2MaxTSSize)的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S307中,变换量化旁路标志编码部305对变换量化旁路标志transquant_bypass_flag进行编码以生成位串(编码数据),并且输出编码数据。通过该编码而获得的变换量化旁路标志transquant_bypass_flag的编码数据被包括在包括量化变换系数水平level的编码数据的比特流中。
在步骤S308处,变换跳过标志编码部306判定变换信息Tinfo中包括的变换量化旁路标志transquant_bypass_flag是否为1(真)。在判定变换量化旁路标志transquant_bypass_flag为1的情况下,即,在跳过(旁路)变换(一次变换和二次变换)和量化的情况下,跳过步骤S309至S312的处理并且编码处理结束,而处理返回到图9。
如果变换和量化被旁路,则不需要变换跳过标志ts_flag。因此,在这种情况下,变换跳过标志编码部306跳过对变换跳过标志ts_flag的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S308中判定变换量化旁路标志transquant_bypass_flag为0的情况下,即,在判定不跳过(旁路)变换和量化的情况下,处理进行到步骤S309。
在步骤S309中,变换跳过标志编码部306判定二次变换标识符st_idx的值是否大于0(st_idx>0)。在二次变换标识符st_idx的值大于0的情况下,即,在判定要执行二次变换的情况下,跳过步骤S310到S312的处理并且编码处理结束,而且处理返回到图9。
如果执行二次变换,则由于不执行变换跳过,因此变换跳过标志ts_flag的值被固定为0。因此,在这种情况下,由于不需要将变换跳过标志ts_flag传送到解码侧,所以变换跳过标志编码部306跳过对变换跳过标志ts_flag的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S309中判定二次变换标识符st_idx的值为0(即,要跳过该二次变换)的情况下,处理进行到步骤S310。
在步骤S310处,变换跳过标志编码部306判定报头信息Hinfo中包括的变换跳过有效性标志ts_enabled_flag是否为1(真)。在判定变换跳过有效性标志ts_enabled_flag为0(即,不允许该变换跳过)的情况下,跳过步骤S311和S312的处理并且编码处理结束,而处理返回到图9。
如果不能执行变换跳过,则变换跳过标志ts_flag被固定为0。因此,在这种情况下,由于不需要将变换跳过标志ts_flag传送到解码侧,所以变换跳过标志编码部306跳过对变换跳过标志ts_flag的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S310中判定变换跳过有效性标志ts_enabled_flag为1(即,允许变换跳过)的情况下,处理进行到步骤S311。
在步骤S311中,变换跳过标志编码部306判定处理目标的变换块的大小TBSize是否大于最大变换跳过块大小MaxTSSize(条件表达式TBSize<=MaxTSSize是否为真)。在判定处理目标的变换块的大小TBSize等于或小于最大变换跳过块大小MaxTSSize的情况下,即,在上面给出的条件表达式是0(假)的情况下,跳过步骤S312的处理并且编码处理结束,而处理返回到图9。
在变换块的大小大于最大变换跳过块大小的情况下,由于不允许变换跳过,因此变换跳过标志ts_flag的值被固定为0。因此,在这种情况下,由于不需要将变换跳过标志ts_flag传送到解码侧,因此变换跳过标志编码部306跳过对变换跳过标志ts_flag的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S311中确定处理目标的变换块的大小TBSize等于或小于最大变换跳过块大小MaxTSSize的情况下,即,在判定上面给出的条件表达式为1(真)的情况下,则处理进行到步骤S312。
应当注意,在步骤S311中,可以使用TB大小的以2为底数的对数值log2TrafoSize(或log2TBSize)或者最大变换跳过块大小MaxTSSize的以2为底数的对数值log2MaxTSSize来将上文给出的条件表达式(TBSize<=MaxTSSize)替换为另一条件表达式(log2TrafroSize<=log2MaxTSSize)。
在步骤S312中,变换跳过标志编码部306对变换跳过标志ts_flag进行编码以生成比特流(编码数据),并且输出编码数据。通过该编码而获得的变换跳过标志ts_flag的编码数据被包括在包括量化变换系数水平level的编码数据的比特流中。
换言之,仅在下面给出的条件表达式(32)是1(真)的情况下,对变换跳过标志ts_flag进行编码。这对应于参照图15描述的语法的从上面起的第四阶段。
逻辑值=(ts_enable_flag&&!transquant_bypass_flag&&(log2TrafoSize<=log2MaxTSSize)&&st_idx==0)...(32)
当步骤S312的处理结束时,解码处理结束,并且处理返回到图9。
通过以如上所述的方式执行编码处理,在要以CU为单位对二次变换标识符st_idx进行编码的情况下,图像编码装置100可以在二次变换标识符st_idx适用二次变换(st_idx&gt;0)的情况下跳过对变换跳过标志ts_flag的编码。换言之,可以实现与变换跳过标志ts_flag有关的代码量的减少和根据编码的处理量的减少。
应当注意,上述编码处理可以在可以被执行的范围内经过步骤的处理顺序的改变或者处理的内容的改变。此外,可以在可以执行该编码处理的范围内在算术运算方面改变上文给出的语法和条件表达式(32)。
&lt;解码部&gt;
现在,描述图像解码装置200。同样在这种情况下,图像解码装置200具有与第一实施方式中的配置基本类似的配置。然而,在这种情况下的图像解码装置200包括解码部,该解码部在执行作为二次变换的逆变换的逆二次变换的情况下,跳过对与跳过作为一次变换的逆变换的逆一次变换有关的第一信息的编码数据的解码,其中,该二次变换是对通过对作为图像与图像的预测图像之间的差异的预测残差的一次变换而获得的一次变换系数的变换处理。简言之,在执行作为二次变换的逆变换的逆二次变换的情况下,解码部211跳过对与跳过作为一次变换的逆变换的逆一次变换有关的第一信息的编码数据的解码,其中,该二次变换是对通过对作为图像与图像的预测图像之间的差异的预测残差的一次变换而获得的一次变换系数的变换处理。
图18是描绘通过这种情况下的解码部211执行程序等来实现的、与对变换跳过标志ts_flag的解码有关的主要功能的示例的功能框图。如图18所示,解码部211例如包括二次变换有效性标志解码部311、二次变换标识符解码部312、变换跳过有效性标志解码部313、最大变换跳过块大小解码部314、变换量化旁路标志解码部315和变换跳过标志解码部316的功能,作为通过执行程序而进行的与对变换跳过标志ts_flag进行解码有关的功能。
二次变换有效性标志解码部311执行与对二次变换有效性标志st_enabled_flag的编码数据的解码有关的处理,该二次变换有效性标志st_enabled_flag是与允许逆二次变换有关的信息。二次变换标识符解码部312执行与对二次变换标识符st_idx的编码数据的解码有关的处理,该二次变换标识符st_idx是与逆二次变换的内容有关的信息。变换跳过有效性标志解码部313执行与对变换跳过有效性标志ts_enabled_flag的编码数据的解码有关的处理,该变换跳过有效性标志ts_enabled_flag是与允许跳过逆变换(逆一次变换)有关的信息。最大变换跳过块大小解码部314执行与对最大变换跳过块大小MaxTSSize的编码数据的解码有关的处理,该最大变换跳过块大小MaxTSSize指示允许对其跳过逆变换(逆一次变换)的变换块的最大大小。变换量化旁路标志解码部315执行与对变换量化旁路标志transquant_bypass_flag的编码数据的解码有关的处理,该变换量化旁路标志transquant_bypass_flag是与跳过(旁路)逆变换(逆二次变换和逆一次变换)和逆量化有关的信息。变换跳过标志解码部316执行与对变换跳过标志ts_flag的编码数据的解码有关的处理,该变换跳过标志ts_flag是与跳过逆变换(逆一次变换)有关的信息。
&lt;解码处理的流程&gt;
现在,描述由图像解码装置200执行的处理的流程的示例。在这种情况下,图像解码装置200与在第一实施方式的情况下基本上类似地执行图像解码处理。然而,在这种情况下,在图像解码装置200的步骤S201(图13)中,响应于二次变换标识符st_idx的值等而对变换跳过标志ts_flag等的编码数据进行解码。参照图19的流程图来描述对变换跳过标志ts_flag等的编码数据的解码的流程的示例。简言之,作为在图13的步骤S201中执行的解码处理的一部分,图19中所示的解码处理被执行。通过任意方法执行对其他编码参数和量化变换系数水平level的编码数据的解码。
在解码处理开始之后,在步骤S331中,二次变换有效性标志解码部311对包括在比特流(编码数据)中的二次变换有效性标志st_enabled_flag的编码数据进行解码,并且输出所得到的数据作为报头信息Hinfo的一部分。
在步骤S332中,二次变换标识符解码部312判定解码后的二次变换有效性标志st_enabled_flag是否为1(真)。在判定二次变换有效性标志st_enabled_flag为0的情况下,即,在判定不允许执行逆二次变换的情况下,处理进行到步骤S333。
在这种情况下,由于跳过了逆二次变换,因此二次变换标识符st_idx不处于编码状态。因此,在步骤S333中,二次变换标识符解码部312跳过对二次变换标识符st_idx的编码数据的解码。此外,在这种情况下,由于跳过逆二次变换,因此二次变换标识符st_idx的值被固定为0。因此,二次变换标识符解码部312估计二次变换标识符st_idx的值为0。简言之,二次变换标识符解码部312将二次变换标识符st_idx的值设置为0(st_idx=0)。当步骤S333的处理结束时,处理进行到步骤S335。
另一方面,在步骤S332中判定二次变换有效性标志st_enabled_flag为1的情况下,处理进行到步骤S334。在这种情况下,由于允许执行逆二次变换,因此在步骤S334中,二次变换标识符解码部312对比特流(编码数据)中包括的二次变换标识符st_idx的编码数据进行解码。在步骤S334的处理结束之后,处理进行到步骤S335。
应当注意,与上述的对二次变换标识符st_idx的解码有关的处理可以在可以执行该处理的范围内经过步骤的处理顺序的改变或处理的内容的改变。
在步骤S335中,变换跳过有效性标志解码部313对比特流(编码数据)中包括的变换跳过有效性标志ts_enabled_flag的编码数据进行解码。并且输出解码后的编码数据作为报头信息Hinfo的一部分。
在步骤S336中,最大变换跳过块大小解码部314判定解码后的变换跳过有效性标志ts_enabled_flag是否为1(真)。在判定变换跳过有效性标志ts_enabled_flag为1的情况下,即,在判定允许跳过逆变换(逆二次变换和逆一次变换)的情况下,处理进行到步骤S337。
在步骤S337中,最大变换跳过块大小解码部314对比特流(编码数据)中包括的最大变换跳过块大小MaxTSSize(或以2为底数的对数值log2MaxTSSize)的编码数据进行解码。在步骤S337的处理结束之后,处理进行到步骤S338。
另一方面,在步骤S336中判定变换跳过有效性标志ts_enabled_flag为0的情况下,即,在判定不允许跳过逆变换的情况下,由于不跳过逆变换时,因此不需要最大变换跳过块大小MaxTSSize。因此,在这种情况下,跳过步骤S337的处理,处理进行到步骤S338。
在步骤S338中,变换量化旁路标志解码部315对比特流(编码数据)中包括的变换量化旁路标志transquant_bypass_flag的编码数据进行解码,并且输出编码数据作为变换信息Tinfo的一部分。
在步骤S339中,变换跳过标志解码部316判定变换量化旁路标志transquant_bypass_flag是否为1(真)。在判定变换量化旁路标志transquant_bypass_flag为1的情况下,即,在判定要跳过(旁路)逆变换(逆二次变换和逆一次变换)和逆量化的情况下,跳过步骤S340和S342的处理,并且处理进行到步骤S343。
如果要旁路逆变换和量化,则不需要变换跳过标志ts_flag。因此,在这种情况下,变换跳过标志解码部316跳过对变换跳过标志ts_flag的编码数据的解码。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
另一方面,在步骤S339中判定变换量化旁路标志transquant_bypass_flag为0的情况下,即,在不跳过(旁路)逆变换和量化的情况下,处理进行到步骤S340。
在步骤S340处,变换跳过标志解码部316判定二次变换标识符st_idx的值是否大于0(st_idx&gt;0)。在判定二次变换标识符st_idx的值大于0的情况下,即,在判定要执行逆二次变换的情况下,跳过步骤S341和S342的处理并且处理进行到步骤S343。
如果要执行二次变换,则由于不执行变换跳过(跳过逆变换),所以变换跳过标志ts_flag的值被固定为0。因此,在这种情况下,由于从编码侧没有传送变换跳过标志ts_flag,因此变换跳过标志解码部316跳过对变换跳过标志ts_flag的编码数据的解码。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的劣化。
在步骤S340中判定二次变换标识符st_idx的值为0(即,要跳过该逆二次变换)的情况下,处理进行到步骤S341。
在步骤S341中,变换跳过标志解码部316判定报头信息Hinfo中包括的变换跳过有效性标志ts_enabled_flag是否为1(真)。在判定变换跳过有效性标志ts_enabled_flag为0的情况下,即,在判定不允许变换跳过的情况下,跳过步骤S342的处理,并且处理进行到步骤S343。
如果不能执行变换跳过(逆变换的跳过),则变换跳过标志ts_flag的值被固定为0。因此,在这种情况下,由于从编码侧没有发送变换跳过标志ts_flag,所以变换跳过标志解码部316跳过对变换跳过标志ts_flag的编码数据的解码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S341中判定变换跳过有效性标志ts_enabled_flag为1的情况下,即,在判定允许变换跳过(跳过逆变换)的情况下,处理进行到步骤S342。
在步骤S342中,变换跳过标志解码部316判定处理目标的变换块的变换跳过块大小TBSize是否等于或小于最大变换跳过块大小MaxTSSize(条件表达式TBSize&lt;=MaxTSSize是否为真)。在判定处理目标的变换块的大小TBSize大于最大变换跳过块大小MaxTSSize的情况下,即,在判定上文给出的条件表达式是0(假)的情况下,处理进行到步骤S343。
在变换块的大小大于最大变换跳过块大小的情况下,由于不允许变换跳过,因此变换跳过标志ts_flag被固定为0。因此,在这种情况下,由于从编码侧没有传送变换跳过标志ts_flag,则变换跳过标志解码部316跳过对变换跳过标志ts_flag的编码数据的解码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。应当注意,在步骤S342中,可以使用TB大小的以2为底数的对数值log2TrafoSize(或log2TBSize)或最大变换跳过块大小MaxTSSize的以2为底数的对数值log2MaxTSSize、以另一条件表达式(log2TrafroSize&lt;=log2MaxTSSize)替代上面给出的条件表达式(TBSize&lt;=MaxTSSize)。
在步骤S343中,变换跳过标志解码部316跳过对变换跳过标志ts_flag的编码数据的解码。此外,在这种情况下,由于不执行变换跳过(逆变换的跳过),即,由于执行了逆变换,因此变换跳过标志ts_flag的值被固定为0。因此,变换跳过标志解码部316估计变换跳过标志ts_flag的值是0。简言之,变换跳过标志解码部316将变换跳过标志ts_flag的值设置为0(ts_flag=0)。当步骤S343的处理结束时,解码处理结束,并且处理返回到图13。
另一方面,在步骤S342中判定处理目标的变换块的大小TBSize等于或小于最大变换跳过块大小MaxTSSize的情况下,即,在上面给出的条件表达式是1(真)的情况下,处理进行到步骤S344。
在步骤S344中,变换跳过标志解码部316对变换跳过标志ts_flag的编码数据进行解码。
简言之,仅在上文给出的条件表达式(32)为1(真)的情况下,对变换跳过标志ts_flag的编码数据进行解码。这对应于上文参照图15描述的语法的从上面起的第四阶段。
当步骤S344的处理结束时,解码处理结束,处理进行到图13。
通过以如上所述的方式执行解码处理,在以CU为单位对二次变换标识符st_idx进行编码的情况下,图像解码装置200可以在二次变换标识符st_idx指示执行逆二次变换(st_idx&gt;0)的情况下跳过对变换跳过标志ts_flag的编码数据的解码。换言之,可以实现与变换跳过标志ts_flag有关的代码量的减少和根据解码的处理量的减少。
应当注意,上述解码处理在可以被执行的范围内可以经过步骤的处理顺序的改变或处理的内容的改变。此外,可以在可以执行该解码处理的范围内在其算术运算方面改变上文给出的语法和条件表达式(32)。
&lt;3.第三实施方式&gt;
&lt;跳过对二次变换标志的编码和解码&gt;
NPL 2指出,基于以变换块为单位解码的二次变换标志st_flag以及以PU为单位解码的帧内预测模式信息IPinfo来以变换块为单位导出通过NPL 1中描述的技术(JEM2)、以UC为单位解码的二次变换标识符st_idx,该二次变换标志st_flag指示是否要应用二次变换。
例如,在对第一实施方式的描述中所描述的本技术应用于NPL 2中描述的技术,以使得在变换跳过标志ts_flag为1(应用了变换跳过)的情况下,跳过(逆)一次变换和(逆)二次变换。在这种情况下,以变换块为单位解码的变换跳过标志ts_flag指示执行(逆)变换处理的跳过(ts_flag=1)的情况下,跳过(逆)二次变换,因此,对作为与执行二次变换有关的信息的二次变换标志st_flag的编码变得冗余。因此,存在编码效率可能降低的可能性。
因此,在跳过作为对作为图像与图像的预测图像之间的差异的预测残差的变换处理的一次变换的情况下,跳过对与跳过二次变换有关的第一信息的编码,其中,该二次变换是对通过预测残差的一次变换而获得的一次变换系数的变换处理。
由于这使得可以在跳过一次变换的情况下跳过对第一信息的编码,因此可以抑制编码效率的降低。
此外,在跳过作为一次变换的逆变换的逆一次变换的情况下,跳过对与跳过作为二次变换的逆变换的逆二次变换有关的第一信息的编码数据的解码,其中,该一次变换是对作为图像与图像的预测图像之间的差异的预测残差的变换处理,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理。
由于这使得可以在跳过逆一次变换的情况下跳过对第一信息的编码数据的解码,因此可以抑制编码效率的降低。
&lt;语法&gt;
在图20中描绘了其中描述了代表这样的控制的伪代码的语法表的示例。如图20中从上面起的第七阶段所描绘的那样,用于对二次变换标志st_flag进行编码(即,对二次变换标志st_flag的编码数据进行解码)的条件之一是变换跳过标志ts_flag为0。具体地,在变换跳过标志ts_flag是1的情况下,即,在要跳过(逆)一次变换的情况下,跳过对二次变换标志st_flag的编码(对二次变换标志st_flag的编码数据的解码)。
此外,变换量化旁路标志transquant_bypass_flag为0也是用于对二次变换标志st_flag进行编码(即,用于对二次变换标志st_flag的编码数据进行解码)的条件之一。简言之,在变换量化旁路标志transquant_bypass_flag为1(即,跳过(逆)变换和(逆)量化)的情况下,跳过对二次变换标志st_flag的编码(对二次变换标志st_flag的编码数据的解码)。
&lt;编码部&gt;
同样,在这种情况下,图像编码装置100具有与第一实施方式中的配置基本类似的配置。具体地,上文结合第一实施方式描述的图像编码装置100包括如下编码部:在跳过作为对预测残差的变换处理的一次变换的情况下,编码部跳过对与跳过二次变换有关的第一信息的编码,其中,该预测残差为图像与图像的预测图像之间的差异,该二次变换是对通过预测残差的一次变换而获得的一次变换系数的变换处理。具体地,在跳过作为对预测残差的变换处理的一次变换的情况下,编码部114跳过对与跳过二次变换有关的第一信息的编码,其中,该预测残差是图像与图像的预测图像之间的差异,该二次变换是对通过预测残差的一次变换而获得的一次变换系数的变换处理。
图21是描绘通过这种情况下的编码部114执行程序等来实现的、与对二次变换标志st_flag的编码有关的主要功能的示例的功能框图。如图21所示,在这种情况下的编码部114可以包括与例如结合第二实施方式描述的编码部114的那些部分类似的二次变换有效性标志编码部301、变换跳过有效性标志编码部303、最大变换跳过块大小编码部304、变换量化旁路标志编码部305和变换跳过标志编码部306,作为通过执行程序而进行的、与对二次变换标志st_flag进行编码有关的功能。此外,编码部114还可以包括例如二次变换标志编码部321的功能,作为通过执行程序而进行的、与对二次变换标志st_flag进行编码有关的功能。
二次变换标志编码部321执行与对二次变换标志st_flag的编码有关的处理,该二次变换标志st_flag是与二次变换的执行有关的信息。例如,在二次变换标志st_flag为1(真)的情况下,执行二次变换。另一方面,例如,在二次变换标志st_flag为0(假)的情况下,跳过二次变换。
&lt;编码处理的流程&gt;
现在,描述由图像编码装置100执行的处理的流程的示例。图像编码装置100与在第一实施方式的情况下基本上类似执行图像编码处理。然而,在这种情况下,在图像编码处理的步骤S110(图9)中,图像编码装置100响应于变换跳过标志ts_flag的值等来执行对二次变换标志st_flag等的编码。参照图22和图23的流程图来描述对二次变换标志st_flag等的编码的流程的示例。简言之,作为在图9的步骤S110中执行的编码处理的一部分,图22和图23中所示的编码处理被执行。通过任意方法来执行对其他编码参数和量化变换系数水平level的编码。
在编码处理开始之后,与步骤S304至S308以及步骤S310至S312的处理(图17)类似地执行图22的步骤S361至S368的处理。
应当注意,在步骤S365中判定作为与跳过(旁路)变换(一次变换和二次变换)和量化有关的信息的变换量化旁路标志transquant_bypass_flag为1的情况下,即,在判定要跳过(旁路)变换(一次变换和二次变换)和量化的情况下,处理进行到图23的步骤S371。另一方面,在步骤S365中判定变换量化旁路标志transquant_bypass_flag为0的情况下,即,在判定不跳过(旁路)变换和量化的情况下,处理进行到步骤S366。
此外,在步骤S366中判定作为与允许跳过变换(一次变换)有关的信息的变换跳过有效性标志ts_enabled_flag为0的情况下,即,在判定被允许变换跳过的情况下,处理进行到图23的步骤S371。另一方面,在步骤S366中判定变换跳过有效性标志ts_enabled_flag为1的情况下,即,在判定允许变换跳过的情况下,处理进行到步骤S367。
此外,在步骤S367中判定处理目标的变换块的大小TBSize大于作为被允许跳过变换(一次变换)的变换块的最大大小的最大变换跳过块大小MaxTSSize的情况下,处理进行到图23的步骤S371。另一方面,在步骤S367中判定处理目标的变换块的大小TBSize等于或小于最大变换跳过块大小MaxTSSize的情况下,处理进行到步骤S368。
在步骤S368中,生成作为与跳过变换(一次变换)有关的信息的变换跳过标志ts_flag,并且在该处理结束之后,处理进行到图23的步骤S371。
在图23的步骤S371中,二次变换有效性标志编码部301对报头信息Hinfo中包括的且作为与允许二次变换有关的信息的二次变换有效性标志st_enabled_flag进行编码以生成位串(编码数据),并且输出编码数据。通过该编码而获得的二次变换有效性标志st_enabled_flag的编码数据被包括在包括量化变换系数水平level的编码数据的比特流中。
在步骤S372中,二次变换标志编码部321判定报头信息Hinfo中包括的二次变换有效性标志st_enabled_flag是否为1(真)。在判定二次变换有效性标志st_enabled_flag为0的情况下,即,在判定不允许执行二次变换的情况下,跳过步骤S373至步骤S377的处理并且编码处理结束,而处理返回到图9。
如果不执行二次变换,则二次变换标志ts_flag被固定为0。因此,在这种情况下,由于不需要向解码侧传送二次变换标志ts_flag,所以二次变换标志编码部321跳过对二次变换标志st_flag的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S372中判定二次变换有效性标志st_enabled_flag为1的情况下,即,在判定允许执行二次变换的情况下,处理进行到步骤S373。
在步骤S373中,二次变换标志编码部321判定变换量化旁路标志transquant_bypass_flag是否为1(真)。在判定变换量化旁路标志transquant_bypass_flag为1的情况下,即,在判定要跳过(旁路)变换(一次变换和二次变换)和量化的情况下,跳过步骤S374至S377的处理并且编码处理结束,而处理返回到图9。
如果旁路变换和量化,则不需要二次变换标志st_flag。因此,在这种情况下,变换跳过标志编码部306跳过对二次变换标志st_flag的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S373中判定变换量化旁路标志transquant_bypass_flag为0的情况下,即在判定不跳过(旁路)变换和量化的情况下,处理进行到步骤S374。
在步骤S374中,二次变换标志编码部321判定变换跳过标志ts_flag是否为1(真)。在判定变换跳过标志ts_flag为1的情况下,即,在判定要跳过变换(一次变换)的情况下,跳过步骤S375至S377的处理并且编码处理结束,而处理返回到图9。
在跳过一次变换的情况下,也跳过二次变换。因此,二次变换标志st_flag的值被固定为0。因此,在这种情况下,由于不需要向解码侧传送二次变换标志st_flag,所以二次变换标志编码部321跳过对二次变换标志st_flag的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S374中判定变换跳过标志ts_flag为0的情况下,即,在判定要执行变换(一次变换)的情况下,处理进行到步骤S375。
在步骤S375中,二次变换标志编码部321参考残差信息Rinfo,以对变换块中存在的非零系数以及非零系数的总数numSig(sig_coeff_flag==1的总数)进行计数。
在步骤S376中,二次变换标志编码部321判定非零系数的总数numSig是否等于或大于预定阈值TH(numSig&gt;=TH)。在判定非零系数的总数numSig小于预定阈值TH(numSig&lt;TH)的情况下,跳过步骤S377的处理并且编码处理结束,而处理返回到图9。
在判定非零系数的总数numSig小于阈值TH的情况下,即,在非零系数的数量少的稀疏残差信号的情况下,因为存在能量集中性可能由于二次变换而降低并且编码效率可能降低的可能性,为了抑制编码效率的降低,期望跳过二次变换。因此,二次变换标志st_flag的值被固定为0。相应地,在这种情况下,由于不需要向解码侧传送二次变换标志st_flag,所以二次变换标志编码部321跳过对二次变换标志st_flag的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S376中判定非零系数的总数numSig等于或大于预定阈值TH的情况下,处理进行到步骤S377。
在步骤S377处,二次变换标志编码部321对二次变换标志st_flag进行编码以生成位串(编码数据),并且输出编码数据。通过该编码而获得的二次变换标志st_flag的编码数据被包括在包括量化变换系数水平level的编码数据的比特流中。
简言之,仅在以下条件表达式(33)为1(真)的情况下,对二次变换标志st_flag进行编码。这对应于根据上文参照图20描述的语法的从上面起的第七阶段。
逻辑值=(st_enabled_flag&&(transquant_bypass_flag==0||ts_flag==0)&&numSig>=TH) (33)
当步骤S377的处理结束时,编码处理结束,并且处理返回到图9。
通过以如上所述的方式执行编码处理,在以变换块为单位对二次变换标志st_flag进行编码的情况下,图像编码装置100可以在应用变换跳过(ts_flag=1)的情况下跳过对二次变换标志st_flag的编码。此外,在应用了变换和量化的旁路(transquant_bypass_flag=1)的情况下,图像编码装置100可以跳过对二次变换标志st_flag的编码。具体地,可以实现与二次变换标志st_flag有关的代码量的减少和根据编码的处理量的减少。
应当注意,上述编码处理可以在其可以被执行的范围内经过步骤的处理顺序的改变或者处理的内容的改变。此外,在其可以被执行的范围内可以在算术运算方面改变上文给出的语法和条件表达式(33)。
虽然上述示例涉及以变换块为单位对二次变换标志st_flag的编码处理的描述,但是可以替代二次变换标志st_flag而对二次变换标识符st_idx进行编码。在这种情况下,在图20所描绘的语法表的从上面开始的第八阶段描绘的二次变换标志st_flag被二次变换标识符st_idx替换。类似地,在图21中,二次变换标志编码部321被图16中所示的、具有与对二次变换标识符st_idx的编码有关的功能的二次变换标识符编码部302替换。类似地,图23的流程图的步骤被解释为将二次变换标志st_flag的项替换为二次变换标识符st_idx。
通过以如上所述的方式执行编码处理,在以变换块为单位对二次变换标识符st_idx进行编码的情况下应用变换步骤(ts_flag=1)的情况下,图像编码装置100可以跳过对二次变换标识符st_idx的编码。此外,在应用了变换和量化的旁路(transquant_bypass_flag=1)的情况下,图像编码装置100可以跳过对二次变换标识符st_idx的编码。换言之,可以实现与二次变换标识符st_idx有关的代码量的减少和根据编码的处理量的减少。
此外,对上文给出的条件表达式(33)没有限制,并且可以将条件表达式(33)改变为下面给出的条件表达式(34),以使得仅在亮度的情况下对二次变换标志st_flag(或二次变换标识符st_idx)进行编码。具体地,在指示颜色空间的标识符cIdx指示亮度的值Luma(=0)的情况下,对二次变换标志st_flag(或二次变换标识符st_idx)进行编码,而在cIdx指示色差的值Cb(=1)或Cr(=2)中的情况下,省略对二次变换标志st_flag(或二次变换标识符st_idx)的编码。
逻辑值=(cIdx==Luma&&st_enabled_flag&&(transquant_bypass_flag==0||ts_flag==0)&&numSig>=TH) (34)
此外,对上文给出的条件表达式(33)没有限制,并且可以将条件表达式(33)改变为下面给出的条件表达式(35),以使得仅在帧内预测的情况下对二次变换标志st_flag(或二次变换标识符st_idx)进行编码。具体地,在指示CU的预测模式的CuPredMode[x0][y0]指示帧内预测(=MODE_INTRA)的情况下,对二次变换标志st_flag(或二次变换标识符st_idx)进行编码,并且在帧间预测的情况下,省略了编码。
逻辑值=(CuPredMode[x0][y0]==MODE_INTRA&&st_enabled_flag&&(transquant_bypass_flag==0||ts_flag==0)&&numSig>=TH) (35)
应当注意,可以将条件表达式(33)至(35)彼此组合。
&lt;解码部&gt;
现在,描述图像解码装置200。同样,在这种情况下,图像解码装置200具有与第一实施方式中的配置基本上类似的配置。然而,在这种情况下的图像解码装置200包括解码部,在将要跳过作为一次变换的逆变换的逆一次变换的情况下,解码部跳过对与跳过作为二次变换的逆变换的逆二次变换有关的第一信息的编码数据的解码,其中,该一次変换是对作为图像与图像的预测图像之间的差异的预测残差的变换处理,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理。简言之,在将要跳过作为一次变换的逆变换的逆一次变换的情况下,在这种情况下的解码部211跳过对与跳过作为二次变换的逆变换的逆二次变换有关的第一信息的编码数据的解码,其中,该一次变换是对作为图像与图像的预测图像之间的差异的预测残差的变换处理,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理。
图24是描绘通过在这种情况下的解码部211执行程序等来实现的、与对二次变换标志st_flag的解码有关的主要功能的示例的功能框图。如图24所示,与例如上文结合第二实施方式描述的解码部211类似,在这种情况下的解码部211包括二次变换有效性标志解码部311、变换跳过有效性标志解码部313、最大变换跳过块大小解码部314、变换量化旁路标志解码部315和变换跳过标志解码部316,作为通过执行程序而进行的、与对二次变换标志st_flag进行解码有关的功能。解码部211还包括例如二次变换标志解码部331的功能,作为通过执行程序而进行的、与对二次变换标志st_flag进行解码有关的功能。
二次变换标志解码部331执行与对二次变换标志st_flag的编码数据的解码有关的处理,该二次变换标志st_flag是与执行逆二次变换有关的信息。例如,在二次变换标志st_flag为1(真)的情况下,执行逆二次变换。另一方面,例如,在二次变换标志st_flag为0(假)的情况下,跳过逆二次变换。
&lt;信号处理的流程&gt;
现在,描述由图像解码装置200执行的处理流程的示例。在这种情况下的图像解码装置200执行与第一实施方式中的图像解码处理基本上类似的图像解码处理。然而,在这种情况下,图像解码装置200在图像解码处理的步骤S201(图13)中响应于变换跳过标志ts_flag的值等来执行对二次变换标志st_flag等的编码数据的解码。参照图25和图26的流程图来描述对二次变换标志st_flag等的编码数据的解码的流程的示例。简言之,作为在图13的步骤S201中执行的解码处理的一部分,图25和图26中所示的编码处理被执行。
在解码处理开始之后,与步骤S335至S339和步骤S341至S344的处理(图19)类似地执行图25的步骤S381至S389的处理。
应当注意,在步骤S385中判定变换量化旁路标志transquant_bypass_flag为0的情况下,即,在不跳过(旁路)变换和量化的情况下,处理进行到步骤S386。
此外,如果在步骤S388中判定变换跳过标志ts_flag被估计为0并且变换跳过标志ts_flag被设置为0,则处理进行到图26的步骤S391。类似地,如果在步骤S389中对变换跳过标志ts_flag的编码数据进行解码,则处理进行到步骤S391。
在图26的步骤S391中,二次变换有效性标志解码部311对比特流(编码数据)中包括的二次变换有效性标志st_enabled_flag的编码数据进行解码,并且输出所得到的数据作为报头信息Hinfo的一部分。
在步骤S392中,二次变换标志解码部331判定解码后的二次变换有效性标志st_enabled_flag是否为1(真)。在判定二次变换有效性标志st_enabled_flag为0的情况下,即,在判定不允许执行逆二次变换的情况下,跳过步骤S393至S396的处理,并且处理进行到步骤S397。
如果不允许逆二次变换,则跳过逆二次变换。具体地,二次变换标志st_flag的值被固定为0。因此,在这种情况下,由于从编码侧没有传送二次变换标志st_flag,所以二次变换标志解码部331跳过对二次变换标志st_flag的编码数据的解码。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
在步骤S392中判定二次变换有效性标志st_enabled_flag为1的情况下,即,在判定允许执行逆二次变换的情况下,处理进行到步骤S393。
在步骤S393中,二次变换标志解码部331判定变换量化旁路标志transquant_bypass_flag是否为1(真)。在判定变换量化旁路标志transquant_bypass_flag为1的情况下,即,在判定将要跳过(旁路)逆变换(逆二次变换和逆一次变换)和逆量化的情况下,跳过步骤S394至S396的处理,并且处理进行到步骤S397。
如果要旁路逆变换和逆量化,则不需要二次变换标志st_flag。因此,在这种情况下,二次变换标志解码部331跳过对二次变换标志st_flag的编码数据的解码。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
在步骤S393中判定变换量化旁路标志transquant_bypass_flag为0的情况下,即,在判定不跳过(旁路)逆变换和逆量化的情况下,处理进行到步骤S394。
在步骤S394中,二次变换标志解码部331判定变换跳过标志ts_flag是否为1(真)。在判定变换跳过标志ts_flag为1(真)的情况下,即,在判定要跳过逆变换(逆一次变换)的情况下,跳过步骤S395和S396的处理,并且处理进行到步骤S397。
如果将要跳过逆一次变换,则跳过逆二次变换。具体地,二次变换标志st_flag的值被固定为0。因此,在这种情况下,由于从编码侧没有传送二次变换标志st_flag,所以二次变换标志解码部331跳过对二次变换标志st_flag的编码数据的解码。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
在步骤S394中判定变换跳过标志ts_flag为0(假)的情况下,即,在判定要执行逆变换(逆一次变换)的情况下,处理进行到步骤S395。
在步骤S395中,二次变换标志解码部331参考残差信息Rinfo以对变换块中存在的非零系数进行计数,以确定非零系数的总数numSig(sig_coeff_flag=1的总数)。
在步骤S396中,二次变换标志解码部331判定非零系数的总数numSig是否等于或大于预定阈值TH(numSig&gt;=TH)。在判定非零系数的总数numSig小于预定阈值TH(numSig&lt;TH)的情况下,处理进行到步骤S397。
在非零系数的总数numSig小于预定阈值TH的情况下,即,在非零系数的数量少的稀疏残差信号的情况下,由于存在能量集中性可能因逆二次变换而降低并且编码效率可能降低的可能性,因此为了抑制编码效率的降低,期望跳过逆二次变换。因此,二次变换标志st_flag的值被固定为0。因此,在这种情况下,由于从编码侧没有传送二次变换标志st_flag,所以二次变换标志解码部331跳过对二次变换标志st_flag的编码数据的解码。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
在步骤S397中,二次变换标志解码部331跳过对二次变换标志st_flag的编码数据的解码。此外,在这种情况下,由于跳过逆二次变换,因此二次变换标志st_flag的值被固定为0。相应地,二次变换标志解码部331估计二次变换标志st_flag的值为0。具体地,二次变换标志解码部331将二次变换标志st_flag的值设置为0(st_flag=0)。当步骤S397中的处理结束时,解码处理结束,并且处理返回到图13。
在步骤S396中判定非零系数的总数numSig等于或大于预定阈值TH(numSig&gt;=TH)的情况下,处理进行到步骤S398。
在步骤S398中,二次变换标志解码部331对二次变换标志st_flag的编码数据进行解码。
简言之,仅在上文给出的条件表达式(33)为1(真)的情况下,对二次变换标志st_flag的编码数据进行解码。这对应于上文参照图20描述的语法的从上面起的第七阶段。
当步骤S398的处理结束时,解码处理结束,并且处理返回到图13。
通过以如上所述的方式执行解码处理,在以变换块为单位对二次变换标志st_flag进行解码的情况下应用变换跳过(ts_flag=1)的情况下,图像解码装置200可以跳过对二次变换标志st_flag的编码数据的解码。此外,在要应用逆变换和逆量化的旁路(transquant_bypass_flag=1)的情况下,图像解码装置200可以跳过对二次变换标志st_flag的编码数据的解码。换言之,可以实现与二次变换标志st_flag有关的代码量的减少和根据编码的处理量的减少。
应当注意,上述解码处理在其可以被执行的范围内可以经过步骤的处理顺序的改变或者处理的内容的改变。此外,可以在其可以被执行的范围内在其算术运算方面改变上文给出的语法和条件表达式(33)。
尽管上述示例涉及以变换块为单位对二次变换标志st_flag的解码处理的描述,但是可以替代二次变换标志st_flag而对二次变换标识符st_idx进行解码。在这种情况下,从图27中所示的语法表的上面开始的第八阶段处所示的二次变换标志st_flag被二次变换标识符st_idx替换。类似地,在图24中,二次变换标志解码部331被具有与图18中所示的对二次变换标识符st_idx的解码有关的功能的二次变换标识符解码部312替换。类似地,图26的流程图的步骤被解释为将二次变换标志st_flag的项替换为二次变换标识符st_idx。
通过以如上所述的方式执行解码处理,在以变换块为单位对二次变换标识符st_idx进行解码的情况下应用变换跳过(ts_flag=1)的情况下,图像解码装置200可以跳过对二次变换标识符st_idx的解码。此外,在应用逆量化和逆变换的旁路(transquant_bypass_flag=1)的情况下,图像解码装置200可以跳过对二次变换标识符st_idx的解码。换言之,可以实现与二次变换标志st_flag有关的代码量的减少和根据编码的处理量的减少。
此外,对上文给出的条件表达式(33)没有限制,并且可以将条件表达式(33)改变为上文给出的条件表达式(34),以使得仅在亮度的情况下对二次变换标志st_flag(或二次变换标识符st_idx)进行解码。具体地,在指示颜色空间的标识符cIdx指示亮度的值Luma(=0)的情况下,对二次变换标志st_flag(或二次变换标识符st_idx)进行解码,而在cIdx指示色差的值Cb(=1)或Cr(=2)的情况下,省略了对二次变换标志st_flag(或二次变换标识符st_idx)的解码。
此外,对上文给出的条件表达式(33)没有限制,并且可以将条件表达式(33)改变为上文给出的条件表达式(35),以使得仅在帧内预测的情况下对二次变换标志st_flag(或二次变换标识符st_idx)进行解码。具体地,在指示CU的预测模式的CuPredMode[x0][y0]指示帧内预测(=MODE_INTRA)的情况下,对二次变换标志st_flag(或二次变换标识符st_idx)进行解码,而在帧间预测的情况下,省略了解码。应当注意,可以适当地组合条件表达式(33)至(35)的条件。
&lt;4.第四实施方式&gt;
&lt;跳过对二次变换标志的编码和解码&gt;
NPL 2公开了,为了抑制二次变换标志st_flag的开销,在变换块中的非零系数的数量等于或小于预定阈值TH(例如,2)的情况下,不应用二次变换,并且跳过对二次变换标志st_flag的信号发出。
例如,如果假设在8×8矩阵中,在8×8变换块的子块(4×4)中的每一个中存在一个非零系数,则变换块中的非零系数的总数为4。因此,如果将该总数与阈值TH(=2)进行比较,则将指示是否要应用二次变换的st_flag用信号通知(编码)。
因此,下面给出一个主题。存在二次变换可以应用于其中每个子块中存在稀疏非零系数的信号的可能性,从而导致能量集中性可能降低。此外,在(逆)二次变换的跳过明显的情况下(简言之,在二次变换标志st_flag=0明显的情况下),如果用信号通知(编码)该二次变换标志st_flag,则二次变换标志st_flag的开销变得浪费,从而导致编码效率可能降低。
因此,在包括在处理目标的变换块中的非零系数的数量的、以子块为单位的平均值小于阈值的情况下,跳过对与跳过二次变换有关的第一信息的编码,其中,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理,该预测残差是图像与图像的预测图像之间的差异。
这使得可以在子块的非零系数稀疏的情况下跳过二次变换。因此,可以抑制能量集中性的降低并且抑制编码效率的降低。
此外,在包括在处理目标的变换块中的非零系数的数量的、以子块为单位的平均值小于阈值的情况下,跳过对与跳过作为二次变换的逆变换的逆二次变换有关的第一信息的编码数据的解码,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理,该预测残差是图像与图像的预测图像之间的差异。
这使得可以在子块的非零系数稀疏的情况下跳过逆二次变换。因此,可以抑制能量集中性的降低并且抑制编码效率的降低。
&lt;语法&gt;
在图27中示出了其中描述了代表这样的控制的伪代码的语法表的示例。如从图27的上面开始的第七阶段所示的那样,用于对二次变换标志st_flag进行编码(对二次变换标志st_flag的编码数据进行解码)的条件之一是:子块内平均非零系数数量numSigInSBK等于或大于预定阈值(TH),其中,子块内平均非零系数数量numSigInSBK是处理目标的变换块中包括的非零系数的数量的以子块为单位的平均值。具体地,在子块内平均非零系数数量numSigInSBK小于预定阈值(TH)的情况下,即,在子块的非零系数稀疏的情况下,跳过对二次变换标志st_flag的编码(对二次变换标志st_flag的编码数据的解码)。
&lt;编码部&gt;
在这种情况下,图像编码装置100具有与第一实施方式中的配置基本类似的配置。然而,在这种情况下的图像编码装置100包括如下编码部:在处理目标的变换块中包括的非零系数的数量的、以子块为单位的平均值小于阈值的情况下,编码部跳过对与跳过二次变换有关的第一信息的编码,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理,该预测残差是图像与图像的预测图像之间的差异。具体地,在处理目标的变换块中包括的非零系数的数量的、以子块为单位的平均值小于阈值的情况下,编码部114跳过对与跳过二次变换有关的第一信息的编码,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理,该预测残差是图像与图像的预测图像之间的差异。
在这种情况下的编码部114通过执行程序等而具有与上文结合第三实施方式描述的功能基本类似的功能。简言之,编码部114具有如上文参照图21所描述的功能框图。
&lt;编码处理的流程&gt;
现在,描述由图像编码装置100执行的处理的流程的示例。在这种情况下,图像编码装置100与在第一实施方式的情况下基本上类似地执行图像编码处理。然而,在这种情况下,图像编码装置100在图像编码处理的步骤S110(图9)中响应于子块内平均非零系数数量numSigInSBK等来执行对二次变换标志st_flag等的编码。参照图28和图29的流程图来描述对二次变换标志st_flag等的编码的流程的示例。简言之,作为图9的步骤S110中执行的编码处理的一部分,图28和图29中描述的编码处理被执行。通过任意方法来执行对其他编码参数和量化变换系数水平level的编码。
在编码处理开始之后,与图22的步骤S361至S368的处理类似地执行图28的步骤S401至S408的处理。
在步骤S405或S408的处理结束之后,处理进行到图29的步骤S411。
与图23的步骤S371至S374的处理类似地执行图29的步骤S411至S414的处理。
在步骤S414中判定变换跳过标志ts_flag为0的情况下,即,在要执行变换(一次变换)的情况下,处理进行到步骤S415。
在步骤S415中,二次变换标志编码部321确定子块内平均非零系数数量nmSigInSBK。例如,二次变换标志编码部321参考残差信息Rinfo,以根据下面的表达式(36)导出变换块中存在的非零系数的总数numSig(sig_coeff_flag==1的总数)。
numSig=∑(sig_coeff_flag(i,j))(i=0…TBSize-1,j=0…TBSize-1)…(36)
然后,二次变换标志编码部321将所确定的非零系数的总数numSig除以变换块中的子块的总数,以根据下面的表达式(37)导出子块内平均非零系数数量numSigInSBK。
numSigInSBK=numSig/(TBSize*TBSize/16) (37)
应当注意,在表达式(37)中,可以使用移位算术运算来替代除法,以导出如下面的表达式(38)所表示的子块内平均非零系数数量numSigInSBK。
numSigInSBK=numSig&gt;&gt;(2*(log2TBSize–2)) (38)
此处,log2TBSize是变换块大小TBSize的以2为底数的对数值。应当注意,虽然假设此处的变换块具有TBSize×TBSize的矩形形状,但是它可以具有TBXSize×TBYSize的长方形。在这种情况下,上面给出的表达式(36)可以用下面的表达式(39)替换,并且上面给出的表达式(38)可以用下面的表达式(40)替换。
numSig=∑(sig_coeff_flag(i,j))(i=0…TBXSize-1,j=0…TBYSize-1)…(39)
numSigInSBK=numSig>>((log2TBXSize-2)+(log2TBYSize-2))…(40)
这里,log2TBXSize是变换块的水平宽度TBXSize的以2为底数的对数值,以及log2TBYSize是变换块的垂直宽度TBYSize的以2为底数的对数值。
此外,虽然在上面的表达式(36)至(40)中,枚举了变换块中的所有子块中的非零系数的数量,但是可以将枚举限制于预定区域。例如,在TBXSize×TBYSize的变换块中,可以枚举存在于低频区域中的子块中的非零系数的数量。例如,可以如下面给出的表达式(41)中所示的那样确定存在于TBXSize×TBYSize的变换块的左上半部分中的子块。在这种情况下,表达式(40)可以由以下表达式(42)替换。
numSig=∑(sig_coeff_flag(i,j))(i=0…TBXSize/2-1,j=0…TBYSize/2-1)…(41)
numSigInSBK=numSig>>((log2TBXSize-3)+(log2TBYSize-3))…(42)
此外,尽管在上文给出的表达式(36)至(42)中将变换块中的所有子块(或预定区域中的子块)中的非零系数的数量numSig除以变换块中的所有子块(或预定区域中的子块)的总数(或者经过移位算术运算),但是可以在进行除法(或移位算术运算)之前添加子块数量/2(=numSBK>>1)的值作为偏移(例如,以下表达式(43)、(44)、(45)和(46))之后进行除法(或移位算术运算)。这里,numSBK表示变换块中的所有子块(或预定区域中的子块)的数量,并且表达式(43)至(45)中的numSBK变为numSBK=TBXSize*TBYSize/16=1<<((log2TBXSize-2)+(logTBYSize-2)),并且表达式(46)中的numSBK是numSBK=1<<((log2TBXSize-3)+(logTBYSize-3))。
numSigInSBK=(numSig+(numSBK>>1))/(TBSize*TBSize/16)…(43)
numSigInSBK=(numSig+(numSBK>>1))>>(2*(log2TBSize-2))…(44)
numSigInSBK=(numSig+(numSBK>>1))>>((log2TBXSize-2)+(log2「BYSize-2))…(45)
numSigInSBK=(numSig+(numSBK>>1))>>((log2TBXSize-3)+(log2「BYSize-3))…(46)
此外,尽管在上面给出的表达式(36)至(42)中将变换块中的所有子块(或预定区域中的子块)中的非零系数的数量numSig除以变换块中的所有子块(或预定区域中的子块)的总数(或者经过移位算术运算)以得到子块内平均非零系数数量numSigInSBK,但是用于除法的子块数量可以被替换为其中存在非零系数的子块的总数numNonZeroSBK(也称为非零子块数量)。例如,通过下面给出的表达式(47)来得到非零子块数量numNonZeroSBK。具体地,通过枚举其子块非零系数存在/不存在标志coded_sub_blck_flag(i,j)为1的子块的数量,可以得到非零子块数量numNonZeroSBK。在这种情况下,替代表达式(40),可以通过下面给出的表达式(48)来得到子块内平均非零系数数量numSigInSBK。应当注意,在表达式(48)中,为了避免除以零,判定总数numNonZeroSBK是否为0,并且如果非零子块数量numNonZeroSBK是0,则0被设置为numSigInSBK,而如果非零子块数量numNonZeroSBK大于0,则将通过将numSig除以numNonZeroSBK而获得的值设置为numSigInSBK。
numNonZero=∑(coded_sub_block_flag(i,j))(i=0…(TBXSize>>2)-1,j=0…(TBYSize>>2)-1)…(47)
numSigInSBK=numNonZeroSBK==0?0:numSig/numNonZeroSBK…(48)
此外,将变换块中的预定区域设置为目标,可以基于预定区域中的子块中的非零系数的数量和具有非零系数的子块的数量来导出子块内平均非零系数数量numSigInSBK。例如,可以将TBXSize×TBYSize的变换块的左上半部分中存在的子块确定为目标。在这种情况下,通过上述表达式(41)导出非零系数数量numSig,并且通过下面给出的表达式(49)导出非零子块数量numNonZeroSBK。引用所导出的numSig和numNonZeroSBK,以使得通过上面给出的表达式(48)导出子块内平均非零系数数量numSigInSBK。
numNonZero=Σ(coded_sub_block_flag(i,j))(i=0…(TBXSize&gt;&gt;3)-1,j=0…(TBYSize&gt;&gt;3)-1) (49)
在以如上所述的方式确定子块内平均非零系数数量nmSigInSBK之后,处理进行到步骤S416。
在步骤S416中,二次变换标志编码部321判定子块内平均非零系数数量numSigInSBK是否等于或大于预定阈值TH(numSigInSBK&gt;=TH)。在条件表达式的逻辑值为0(假)的情况下,即,在判定满足numSigInSBK&lt;TH的情况下,即,在满足numSigInSBK&lt;TH的情况下,跳过步骤S417中的处理并且编码处理结束,而处理返回到图9。
在子块内平均非零系数数量numSigInSBK小于预定阈值TH的情况下,存在非零系数稀疏的子块。如果如刚刚描述的那样对这样的子块执行二次变换,则能量集中性降低并且存在编码效率可能降低的可能性。因此,为了抑制编码效率的降低,期望跳过二次变换。简言之,在这种情况下,执行控制以使得跳过二次变换。因此,二次变换标志st_flag的值被固定为0。因此,在这种情况下,不需要向解码侧传送二次变换标志st_flag。因此,二次变换标志编码部321跳过对二次变换标志st_flag的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S416中判定条件表达式的逻辑值为1(真)的情况下,即,在满足numSigInSBK&gt;=TH的情况下,处理进行到步骤S417。
在步骤S417处,二次变换标志编码部321对二次变换标志st_flag进行编码以生成位串(编码数据),并且输出编码数据。通过编码而获得的二次变换标志st_flag的编码数据被包括在包括量化变换系数水平level的编码数据的比特流中。
简言之,仅在下面给出的条件表达式(50)为1(真)的情况下,对二次变换标志st_flag进行编码。这对应于从参照图27描述的语法的上面开始的第七阶段。
逻辑值=(st_enabled_flag&&(transquant_bypass_flag==0||ts_flag==0)&&numSigInSBK>=TH) (50)
通过以如上所述的方式执行编码处理,图像编码装置100可以针对在变换块的子块中存在稀疏非零系数的信号而跳过对二次变换标志st_flag的编码处理。具体地,可以减少与二次变换标志的编码有关的处理量。此外,关于在变换块的子块中存在稀疏非零系数的信号,可以抑制能量集中性的降低。换言之,可以抑制编码效率的降低。
虽然上述示例涉及以变换块为单位对二次变换标志st_flag的编码处理的描述,但是可以替代二次变换标志st_flag而对二次变换标识符st_idx进行编码。在这种情况下,在从图27中所示的语法表的上面起的第八阶段处描绘的二次变换标志st_flag被替换为二次变换标识符st_idx。类似地,在图21中,二次变换标志编码部321被替换为图16中所示的、具有与对二次变换标识符st_idx的编码有关的功能的二次变换标识符编码部302。类似地,图29的流程图的步骤被解释为将二次变换标志st_flag的项替换为二次变换标识符st_idx。
通过以如上所述的方式执行编码处理,图像编码装置100可以针对变换块的子块中存在稀疏非零系数的信号而跳过对二次变换标志st_flag的编码处理。具体地,可以减少与对二次变换标志的编码有关的处理量。此外,针对变换块的子块中存在稀疏非零系数的信号,可以抑制能量集中性的降低。换言之,可以抑制编码效率的降低。
此外,对上文给出的条件表达式(50)没有限制,并且可以将条件表达式(50)改变为下面给出的条件表达式(51),以使得仅在亮度的情况下对二次变换标志st_flag(或二次变换标识符st_idx)进行编码。具体地,在指示颜色空间的标识符cIdx指示亮度的值Luma(=0)的情况下,对二次变换标志st_flag(或二次变换标识符st_idx)进行编码,而在cIdx指示色差Cb(=1)或Cr(=2)的情况下,省略对二次变换标志st_flag(或二次变换标识符st_idx)的编码。在这种情况下,由于与色差有关的二次变换标志st_flag(或二次变换标识符st_idx)未被编码,因此可以估计其等于亮度的二次标志st_flag(或二次变换标识符st_idx)。替选地,由于一般与亮度的残差相比,色差的残差通常是稀疏残差信号,因此可以估计二次变换标志st_flag(或二次变换标识符st_idx)等于指示要跳过(省略)二次变换的值(0)。
逻辑值=(cIdx==Luma&&st_enabled_flag&&(transquant_bypass_flag==0||ts_flag==0)&&numSigInSBK>=TH) (51)
此外,对上文给出的条件表达式(50)没有限制,并且可以将条件表达式(50)改变为下面给出的条件表达式(52),以使得仅在帧内预测的情况下对二次变换标志st_flag(或二次变换标识符st_idx)进行编码。具体地,在指示CU的预测模式的CuPredMode[x0][y0]指示帧内预测(=MODE_INTRA)的情况下,对二次变换标志st_flag(或二次变换标识符st_idx)进行编码,并且在帧间预测的情况下,省略了编码。
逻辑值=(CuPredMode[x0][y0]==MODE_INTRA&&st_enabled_flag&&(transquant_bypass_flag==0||ts_flag==0)&&numSigInSBK>=TH) (52)
应当注意,可以将条件表达式(50)至(52)的条件彼此组合。
应当注意,上述编码处理在其可以被执行的范围内可以进行步骤的处理顺序的改变或者处理的内容的改变。此外,在其可以被执行的范围内可以在算术运算方面改变上文给出的语法和条件表达式(50)至(52)。
&lt;解码部&gt;
现在,描述图像解码装置200。同样,在这种情况下,图像解码装置200具有与第一实施方式中的配置基本类似的配置。然而,在这种情况下的图像解码装置200包括如下解码部:在处理目标的变换块中包括的非零系数的数量的、以子块为单位的平均值小于阈值的情况下,解码部跳过对与跳过作为对二次变换的逆变换的逆二次变换有关的第一信息的编码数据的解码,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理,该预测残差是图像与图像的预测图像之间的差异。简言之,在处理目标的变换块中包括的非零系数的数量的、以子块为单位的平均值小于阈值的情况下,这种情况下的解码部211跳过对与跳过作为二次变换的逆变换的逆二次变换有关的第一信息的编码数据的解码,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理,该预测残差是图像与图像的预测图像之间的差异。
解码部211通过执行程序等而具有与上文结合第三实施方式描述的功能基本类似的功能。简言之,解码部211具有如上文参照图24所描述的这种功能框图。
&lt;解码处理的流程&gt;
现在,描述由图像解码装置200执行的处理的流程的示例。在这种情况下,图像解码装置200与在第一实施方式的情况下基本上类似地执行图像解码处理。然而,在这种情况下,在图像解码处理的步骤S201(图13)中,图像解码装置200响应于子块内平均非零系数数量numSigInSBK的值等来执行对二次变换标志st_flag等的编码数据的解码。参照图30和图31的流程图来描述对二次变换标志st_flag等的编码数据的解码的流程的示例。简言之,作为图13的步骤S201中执行的解码处理的一部分,图30和图31中描述的解码处理被执行。通过任意方法来执行对其他编码数据和量化变换系数水平level的编码数据的解码。
在解码处理开始之后,与图25的步骤S381至S389的处理类似地执行图30的步骤S421至S429的处理。
在步骤S428或S429的处理结束之后,处理进行到图31的步骤S431。
与图26的步骤S391至S394的处理类似地执行图31的步骤S431至S434的处理。
在步骤S434中判定变换跳过标志ts_flag为0的情况下,即,在要执行变换(一次变换)的情况下,处理进行到步骤S435。
在步骤S435中,二次变换标志解码部331确定子块内平均非零系数数量nmSigInSBK,其为处理目标的变换块中包括的非零系数的数量的、以子块为单位的平均值。例如,二次变换标志解码部331参考残差信息Rinfo以如以下表达式(53)所给出的那样导出变换块中存在的非零系数的总数numSig(sig_coeff_flag==1的总数)。
numSig=Σ(sig_coeff_flag(i,j))(i=0…TBSize-1,j=0…TBSize-1) (53)
然后,二次变换标志解码部331将非零系数的总数numSig除以变换块中的子块的总数,以通过以下表达式(54)导出子块内平均非零系数数量numSigInSBK。
numSigInSBK=numSig/(TBSize*TBSize/16) (54)
应当注意,可以修改表达式(54),使得通过使用移位算术运算替换除法,如下面的表达式(55)那样导出子块内平均非零系数数目numSigInSBK。
numSigInSBK=numSig>>(2*(log2TBSize-2)) (55)
这里,log2TBSize是变换块大小TBSize的以2为底数的对数值。应当注意,虽然假设变换块是TBSize×TBSize的长方形,但是它可以是TBXSize×TBYSize的四边形形状。在这种情况下,上面给出的表达式(53)可以用下面的表达式(56)替换,并且上文给出的表达式(55)可以用下面的表达式(57)替换。
numSig=∑(sig_coeff_flag(i,j))(i=0…TBXSize-1,j=0…TBYSize-1)…(56)
numSigInSBK=numSig>>((log2TBXSize-2)+(log2TBYSize-2))…(57)
这里,log2TBXSize是变换块的水平宽度TBXSize的以2为底数的对数值,以及log2TBYSize是变换块的垂直宽度TBYSize的以2为底数的对数值。
此外,尽管在上面的表达式(53)至(57)中,枚举了变换块中的所有子块中的非零系数的数量,但是枚举可以被限制于预定区域。例如,在TBXSize×TBYSize的变换块中,可以枚举存在于低频区域中的子块中的非零系数的数量。例如,如下面给出的表达式(58)中所表示的那样,存在于TBXSize×TBYSize的变换块的左上半部分中的子块可以被确定为目标。在这种情况下,表达式(57)可以被替换为以下表达式(59)。
numSig=∑(sig_coeff_flag(i,j))(i=0…TBXSize/2-1,j=0…TBYSize/2-1)…(58)
numSigInSBK=numSig>>((log2TBXSize-3)+(log2TBYSize-3))…(59)
此外,尽管在上面给出的表达式(53)至(59)中将变换块中的所有子块(或预定区域中的子块)中的非零系数的数量numSig除以变换块中的所有子块(或预定区域中的子块)的总数(或者经过移位算术运算),但是可以在除法(或移位算术运算)之前添加子块数量/2的值(=numSBK>>1)作为偏移之后执行除法(或移位算术运算)(例如,以下表达式(60)、(61)、(62)和(63))。这里,numSBK表示变换块中的所有子块(或预定区域中的子块)的数量,并且表达式(60)至(62)中的numSBK变为numSBK=TBXSize*TBYSize/16=1<<((log2TBXSize-2)+(logTBYSize-2)),并且表达式(63)中的numSBK是numSBK=1<<((log2TBXSize-3)+(logTBYSize-3))。
numSigInSBK=(numSig+(numSBK>>1))/(TBSize*TBSize/16)…(60)
numSigInSBK=(numSig+(numSBK>>1))>>(2*(log2TBSize-2))…(61)
numSigInSBK=(numSig+(numSBK>>1))>>((log2TBXSize-2)+(log2TBYSize-2))…(62)
numSigInSBK=(numSig+(numSBK>>1))>>((log2TBXSize-3)+(log2TBYSize-3))…(63)
此外,尽管在上文给出的表达式(53)至(59)中将变换块中的所有子块(或预定区域中的子块)中的非零系数的数量numSig除以变换块中的所有子块(或预定区域中的子块)的总数(或者经过移位算术运算)以导出子块内平均非零系数数量numSigInSBK,但是用于除法的子块数量可以被替换为存在非零系数的子块的总数numNonZeroSBK(也称为非零子块数量)。例如,通过上文给出的表达式(47)导出非零子块数量numNonZeroSBK。具体地,通过枚举其子块非零系数存在/不存在标志coded_sub_blck_flag(i,j)为1的子块的数量,可以导出非零子块数量numNonZeroSBK。在这种情况下,可以替代表达式(54)而通过上文给出的表达式(48)导出子块内平均非零系数数量numSigInSBK。应当注意,在表达式(48)中,为了避免除以零,判定非零子块数量numNonZeroSBK是否为0,并且如果非零子块数量numNonZeroSBK是0,则0被设置为numSigInSBK,而如果非零子块数量numNonZeroSBK大于0,则将通过将numSig除以numNonZeroSBK而获得的值设置为numSigInSBK。
此外,将变换块中的预定区域设置为目标,可以基于存在于预定区域中的子块中的非零系数的数量和具有非零系数的子块的数量来导出子块内平均非零系数数量numSigInSBK。例如,可以将存在于TBXSize×TBYSize的变换块的左上半部分中的子块确定为目标。在这种情况下,通过上文描述的表达式(41)导出非零系数数量numSig,并且通过下面给出的表达式(49)导出非零子块数量numNonZeroSBK。参考所导出的numSig和numNonZeroSBK,使得通过上文给出的表达式(48)导出子块内平均非零系数数量numSigInSBK。
在以如上所述的方式确定子块内平均非零系数数量nmSigInSBK之后,处理进行到步骤S436。
在步骤S416中,二次变换标志解码部331判定子块内平均非零系数数量numSigInSBK是否等于或大于预定阈值TH(numSigInSBK&gt;=TH)。在判定条件表达式的逻辑值为0(假)的情况下,即,在判定满足numSigInSBK&lt;TH的情况下,处理进行到步骤S437。
在子块内平均非零系数数量numSigInSBK小于预定阈值TH的情况下,存在非零系数稀疏的子块。如果对刚刚描述的这样的子块执行逆二次变换,则能量集中性降低并且存在编码效率可能降低的可能性。因此,为了抑制编码效率的降低,期望跳过逆二次变换。简言之,在这种情况下,执行控制以使得跳过逆二次变换。因此,二次变换标志st_flag的值被固定为0。因此,在这种情况下,从编码侧没有传送二次变换标志st_flag,二次变换标志解码部331跳过对二次变换标志st_flag的编码数据的解码。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
在步骤S437中,跳过对二次变换标志st_flag的编码数据的解码。此外,在这种情况下,由于跳过逆二次变换,所以二次变换标志st_flag的值被固定为0。相应地,二次变换标志解码部331估计二次变换标志st_flag的值为0。简言之。二次变换标志解码部331将二次变换标志st_flag的值设置为0(st_flag=0)。当步骤S437的处理结束时,解码处理结束,并且处理返回到图13。
在步骤S436中判定条件表达式的逻辑值为1(真)的情况下,即,在满足numSigInSBK&gt;=TH的情况下,处理进行到步骤S438。
在步骤S438处,二次变换标志解码部331对二次变换标志st_flag的编码数据进行解码。
简言之,仅在上文给出的条件表达式(50)为1(真)的情况下,对二次变换标志st_flag的编码数据进行解码。这对应于从上文参照图27描述的语法的上面开始的第七阶段。
当步骤S438的处理结束时,解码处理结束,并且处理返回到图13。
通过以如上所述的方式执行解码处理,图像解码装置200可以跳过对变换块中的子块中存在稀疏非零系数的信号的二次变换标志st_flag的解码处理。具体地,可以减少与对二次变换标志的编码数据的解码有关的处理量。此外,对于变换块中的子块中存在稀疏非零系数的信号,可以抑制能量集中性的降低。换言之,可以抑制编码效率的降低。
尽管上述示例涉及以变换块为单位对二次变换标志st_flag的解码处理的描述,但是可以替代二次变换标志st_flag而对二次变换标识符st_idx进行解码。在这种情况下,从图27中描绘的语法表的上面开始的第八阶段处描绘的二次变换标志st_flag被二次变换标识符st_idx替换。类似地,在图24中,二次变换标志解码部331被图18中描绘的、具有与对二次变换标识符st_idx的解码有关的功能的二次变换标识符解码部312替换。类似地,图31的流程图的步骤被解释为将二次变换标志st_flag替换为二次变换标识符st_idx。
通过以如上所述的方式执行解码处理,针对变换块的子块中存在稀疏非零系数的信号,图像解码装置200可以跳过对二次变换标识符st_idx的解码处理。具体地,可以减少与对二次变换标识符的解码处理有关的处理量。此外,对于在变换块的子块中存在稀疏非零系数的信号,可以抑制能量集中性的降低。换言之,可以抑制编码效率的降低。
此外,对上文给出的条件表达式(50)没有限制,并且将条件表达式(50)改变为上文给出的条件表达式(51),以使得仅在亮度的情况下对二次变换标志st_flag(或二次变换标识符st_idx)解码。具体地,在指示颜色空间的标识符cIdx指示亮度的值Luma(=0)的情况下,对二次变换标志st_flag(或二次变换标识符st_idx)进行解码,而在cIdx指示色差的值Cb(=1)或Cr(=2)的情况下,省略了对二次变换标志st_flag(或二次变换标识符st_idx)的解码。在这种情况下,由于与色差有关的二次变换标志st_flag(或二次变换标识符st_idx)未被解码,因此可以估计其等于亮度的二次标志st_flag(或二次变换标识符st_idx)。换言之,应用相同的逆二次变换。替选地,由于通常与亮度的残差相比,色差的残差通常是稀疏残差信号,因此可以估计二次变换标志st_flag(或二次变换标识符st_idx)等于指示要跳过(省略)该逆二次变换的值(0)。
此外,对上文给出的条件表达式(50)没有限制,并且可以将条件表达式(50)改变为上文给出的条件表达式(52),以使得仅在帧内预测的情况下对二次变换标志st_flag(或二次变换标识符st_idx)进行解码。具体地,在指示CU的预测模式的CuPredMode[x0][y0]表示帧内预测(=MODE_INTRA)的情况下,对二次变换标志st_flag(或二次变换标识符st_idx)进行解码,而在帧间预测的情况下,省略了解码。应当注意,可以适当地组合条件表达式(50)至(52)的条件。
应当注意,上述解码处理可以在其可以被执行的范围内经过步骤的处理顺序的改变或处理的内容的改变。此外,可以在其可以被执行的范围内在算术运算方面改变上文给出的语法和条件表达式(50)至(52)。
&lt;5.第五实施方式&gt;
&lt;跳过对一次变换标识符的编码和解码&gt;
在NPL 1中公开的方法中,对一次变换标识符pt_idx进行编码,该一次变换标识符pt_idx指定对于每个变换块要将哪个一次变换应用于水平方向上的一次变换Phor和垂直方向上的一次变换Pver。更具体地,以下面给出的表达式(64)所指示的方式、根据水平方向一次变换目的地标志pt_hor_flag导出固定长度代码的一次变换标识符pt_idx,该水平方向一次变换目的地标志pt_hor_flag指定要应用Thor1和Thor2中的哪一个作为水平方向上的一次变换Phor以及要应用Tver1和Tver2中的哪一个作为垂直方向上的一次变换Pver。
pt_idx={(pt_hor_flag&lt;&lt;1)+pt_ver_flag} (64)
此后,通过将算术编码应用于一次变换标识符pt_idx的二进制数串(binstring)来执行编码以生成位串。在图32中描绘了编码的方式。此外,在图33中描绘了与编码对应的对一次变换标识符pt_idx的解码的方式。如图32的A或图33的A所示,一次变换标识符pt_idx被二值化为固定长度代码。如图32的B或图3中的B中描绘的表所指示的那样,执行对算术编码和算术解码中的上下文的选择。
然而,在NPL 1中,由于在变换量化旁路标志transquant_bypass_flag为1(真)的情况下(在要应用变换量化旁路的情况下)用信号通知一次变换标识符pt_idx,所以标识符的开销是浪费的,并且存在编码效率可能降低的可能性。
因此,在图像编码时变换量化旁路标志transquant_bypass_flag指示要执行变换量化旁路的情况下,跳过(省略)对一次变换标识符pt_idx的编码。这使得可以抑制编码效率的降低。
另一方面,在图像解码时变换量化旁路标志transquant_bypass_flag指示要执行变换量化旁路的情况下,跳过(省略)对一次变换标识符pt_idx的解码,此外,估计一次变换标识符pt_idx的值是指示对于水平方向上的一次变换Phor和垂直方向上的一次变换Pver使用预定正交变换(例如,DCT类型2)的标识符(例如,-1)的值。这使得可以抑制编码效率的降低。
此外,在NPL 1中公开的方法中,由于二值化不考虑一次变换标识符pt_idx的值的出现频率,因此在算术编码时,存在编码效率可能降低的可能性。
因此,作为针对一次变换标识符pt_idx的二值化方法,应用截断一元二值化(Truncated Unary Binarization)(也称为TU)。这使得可以抑制编码效率的降低。
&lt;语法&gt;
在图34中描绘了其中描述了表示这样的控制的伪代码的语法表的示例。如图34中从上面开始的第七阶段所示,为了对一次变换标识符pt_idx进行编码(即,为了对一次变换标识符pt_idx的编码数据进行解码),条件之一是变换量化旁路标志transquant_bypass_flag为0。具体地,在变换量化旁路标志transquant_bypass_flag为1的情况下,即,在要跳过(逆)变换和(逆)量化的情况下,跳过对一次变换标识符pt_idx的编码(对一次变换标识符pt_idx的编码数据的解码)。
&lt;编码部&gt;
此外,在这种情况下,图像编码装置100具有与第一实施方式的情况下的配置基本类似的配置。具体地,结合第一实施方式描述的图像编码装置100包括如下编码部:在将要跳过作为对预测残差的变换处理的一次变换、作为对通过对预测残差的一次变换而获得的一次变换系数的变换处理的二次变换、以及对通过对一次变换系数的二次变换而获得的二次变换系数的量化的情况下,编码部跳过对表示一次变换的内容的第一信息的编码,其中,该预测残差为图像与图像的预测图像之间的差异。
具体地,在将要跳过作为对预测残差的变换处理的一次变换、作为对通过对预测残差的一次变换而获得的一次变换系数的变换处理的二次变换、以及对通过对一次变换系数的二次变换而获得的二次变换系数的量化的情况下,在这种情况下的编码部114跳过对表示一次变换的内容的第一信息的编码,其中,该预测残差是图像与图像的预测图像之间的差异。
图35是描绘通过在这种情况下的编码部114执行程序等来实现的、与对一次变换标识符的编码有关的主要功能的示例的功能框图。如图34中所示,在这种情况下的编码部114可以例如包括一次变换有效性标志编码部401和一次变换标识符编码部402作为与通过执行程序对一次变换标识符进行的编码有关的功能。
一次变换有效性标志编码部401执行与对一次变换有效性标志pt_enabled_flag的编码有关的处理,该一次变换有效性标志pt_enabled_flag是与允许一次变换有关的信息。一次变换标识符编码部402执行与对一次变换标识符pt_idx的编码有关的处理,该一次变换标识符pt_idx是与一次变换的内容有关的信息。
&lt;编码处理的流程&gt;
现在,描述由图像编码装置100执行的处理流程的示例。在这种情况下,图像编码装置100与第一实施方式的情况下基本上类似地执行图像编码处理。然而,在这种情况下,在图像编码处理的步骤S110(图9)中,图像编码装置100响应于变换量化旁路标志transquant_bypass_flag的值等来执行对一次变换标识符pt_idx等的编码。参照图36的流程图描述对一次变换标识符pt_idx等的编码的流程的示例。简言之,作为图9的步骤S110中执行的编码处理的一部分,图36中描绘的编码处理被执行。通过任意方法执行对其他编码参数和量化变换系数水平level的编码。
在编码处理开始之后,在步骤S501中,一次变换有效性标志编码部401对报头信息Hinfo中包括的一次变换有效性标志pt_enabled_flag进行编码以生成位串(编码数据),并且输出编码数据。通过该编码而获得的一次变换有效性标志pt_enabled_flag的编码数据被包括在包括量化变换系数水平level的编码数据的比特流中。
在步骤S502中,一次变换标识符编码部402判定报头信息Hinfo中包括的一次变换有效性标志pt_enabled_flag是否为1(真)。在判定一次变换有效性标志pt_enabled_flag为0的情况下,即,在判定不允许执行一次变换的情况下,跳过步骤S503至步骤S508的处理并且编码处理结束,而处理返回到图9。
如果不允许执行一次变换,则不执行一次变换,并且不需要向解码侧传送一次变换标识符pt_idx。因此,一次变换标识符编码部402跳过对一次变换标识符pt_idx的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S502中判定一次变换有效性标志pt_enabled_flag为1的情况下,即,在判定允许执行一次变换的情况下,处理进行到步骤S503。
在步骤S503处,一次变换标识符编码部402判定变换信息Tinfo中包括的变换量化旁路标志transquant_bypass_flag是否为1(真)。在判定变换量化旁路标志transquant_bypass_flag为1的情况下,即,在判定要跳过(旁路)变换(一次变换和二次变换)和量化的情况下,跳过步骤S504至S508的处理并且编码处理结束,然后,处理返回到图9。
如果要旁路变换和量化,则不需要向解码侧传送一次变换标识符pt_idx。因此,一次变换标识符编码部402跳过对一次变换标识符pt_idx的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S503中判定变换量化旁路标志transquant_bypass_flag为0的情况下,即,在判定不跳过(旁路)变换和量化的情况下,处理进行到步骤S504。
在步骤S504中,一次变换标识符编码部402判定变换信息Tinfo中包括的变换跳过标志ts_flag是否为1(真)。在判定变换跳过标志ts_flag为1的情况下,即,在判定要跳过变换(一次变换)的情况下,跳过步骤S505至S508的处理并且编码处理结束,然后,处理返回到图9。
如果要跳过变换(一次变换),则不需要向解码侧传送一次变换标识符pt_idx。因此,一次变换标识符编码部402跳过对一次变换标识符pt_idx的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S504中判定变换跳过标志ts_flag为0的情况下,即,在判定不跳过变换(一次变换)的情况下,处理进行到步骤S505。
在步骤S505中,一次变换标识符编码部402判定处理目标的变换块的大小TBSize是否等于或小于最大一次变换块大小MaxPTSize(条件表达式TBSize&lt;=MaxPTSize是否为真)。在判定处理目标的变换块的大小TBSize大于最大一次变换块大小MaxPTSize的情况下,即,在上面给出的条件表达式为0(假)的情况下,跳过步骤S506至S508的处理并且编码处理结束,然后,处理返回到图9。
最大一次变换块大小MaxPTSize是指示允许执行一次变换的最大块大小的信息。具体地,在变换块的大小大于最大一次变换块大小MaxPTSize的情况下,不允许执行一次变换,因此,不需要向解码侧传送一次变换标识符pt_idx。因此,一次变换标识符编码部402跳过对一次变换标识符pt_idx的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S505中判定处理目标的变换块的大小TBSize等于或小于最大一次变换块大小MaxPTSize的情况下,即,在判定上文给出的条件表达式为1(真)的情况下,处理进行到步骤S506。
应当注意,在步骤S505中,可以使用TB大小的以2底数的对数值log2TBSize和最大变换块大小MaxPTSize的以2为底数的对数值log2MaxPTSize来将上文给出的条件表达式(TBSize&lt;=MaxTSSize)替换为另一条件表达式(log2TBSize&lt;=log2MaxPTSize)。
在步骤S506中,一次变换标识符编码部402参考残差信息Rinfo,以根据以下表达式(65)对变换块中存在的非零系数的总数numSig(sig_coeff_flag==1的总数)进行计数。
numSig=∑(Sig_coeff_flag(i,j))(i=0…TBSize-1,j=0…TBSize-1)…(65)
在步骤S507中,一次变换标识符编码部402判定非零系数的总数numSig是否等于或大于预定阈值TH(numSig&gt;=TH)。在判定非零系数的总数numSig小于预定阈值TH(numSig&lt;TH)的情况下,跳过步骤S508的处理并且编码处理结束,然后,处理返回到图9。
在非零系数的总数numSig小于阈值TH的情况下,即,在非零系数的数量少的稀疏残差信号的情况下,由于存在能量集中性可能降低并且编码效率可能降低的可能性,因此为了抑制编码效率的降低,期望应用变换跳过或预定的(例如,DCT-类型2的)正交变换。简言之,在这种情况下,不需要向解码侧传送一次变换标识符pt_idx。因此,一次变换标识符编码部402跳过对一次变换标识符pt_idx的编码。由于这使得可以跳过对冗余信息的解码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S507中判定非零系数的总数numSig等于或大于预定阈值TH的情况下,处理进行到步骤S508。
在步骤S508中,一次变换标识符编码部402对一次变换标识符pt_idx进行可变长编码以生成位串(编码数据)并且输出编码数据。下文中描述编码的细节。通过该编码而获得的一次变换标识符pt_idx的编码数据被包括在包括量化变换系数水平level的编码数据的比特流中。
简言之,仅在以下条件表达式(66)为1(真)的情况下,对一次变换标识符pt_idx进行编码。这对应于上文参照图34描述的语法的从上面开始的第七阶段。
逻辑值=(pt_enabled_flag&&(transquant_bypass_flag==0||ts_flag==0)&&(log2TBSize<=log2MaxPTSize)&&numSig>=TH) (66)
当步骤S508的处理结束时,编码处理结束,并且处理返回到图9。
通过以如上所述的方式执行编码处理,图像编码装置100可以在应用变换量化旁路的情况下跳过对一次变换标识符pt_idx的编码处理。具体地,可以减少与对一次变换标识符pt_idx的编码有关的处理量和代码量的减少。
此外,对上文给出的条件表达式(66)没有限制,并且可以将条件表达式(66)改变为下面给出的条件表达式(67),以使得仅在亮度的情况下对一次变换标识符pt_idx进行编码。具体地,在指示颜色空间的标识符cIdx指示亮度的值Luma(=0)的情况下,对一次变换标识符pt_idx进行编码,但是在cIdx指示色差Cb(=1)或者Cr(=2)的情况下,省略了对一次变换标识符pt_idx的编码。
逻辑值=(cIdx==Luma&&st_enabled_flag&&(transquant_bypass_flag==0||ts_flag==0)&&numSig>=TH) (67)
应当注意,可以将条件表达式(66)和(67)的条件彼此组合。
应当注意,上述编码处理可以在其可以被执行的范围内经过步骤的处理顺序的改变或处理的内容的改变。此外,可以在其可以被执行的范围内在其算术运算方面改变上文给出的语法和条件表达式(66)和(67)。
&lt;补充:跳过对CU一次变换标志(自适应一次变换标志)的编码&gt;
尽管上述图像编码装置100涉及在应用变换量化旁路的情况下跳过对变换块单位中的一次变换标识符pt_idx的编码处理的示例,但图像编码装置不限于此。例如,以CU为单位,响应于变换量化旁路标志transquant_bypass_flag的值,对指示是否要对变换块单位中的一次变换标识符pt_idx进行编码的CU一次变换标志cu_pt_flag(也称为自适应一次变换标志apt_flag)进行编码。
在CU一次变换标志cu_pt_flag为1(真)的情况下,执行对变换块单位中的一次变换标识符pt_idx的编码,而在CU一次变换标志cu_pt_flag为0(假)的情况下,可以省略对变换块单位中的一次变换标识符pt_idx的编码。在这种情况下,编码部114还包括未描绘的CU一次变换标志编码部403。
CU一次变换标志编码部403执行与对CU一次变换标志cu_pt_flag的编码有关的处理,CU一次变换标志cu_pt_flag是与对允许对TU单位中的一次变换标识符pt_idx进行编码有关的信息。例如基于以下伪码来执行由CU一次变换标志编码部403对CU一次变换标志cu_pt_flag的编码。
具体地,当变换量化旁路标志transquant_bypass_flag为0(假)、并且此外一次变换有效性标志pt_enabled_flag为1(真)时,CU一次变换标志编码部403对CU一次变换标志cu_pt_flag进行编码,而在任何其他情况下(变换量化旁路标志transquant_bypass_flag为1(真)或者一次变换有效性标志pt_enabled_flag为0(假)),省略对CU一次变换标志cu_pt_flag的编码。具体地,在应用了变换量化旁路标志的情况下,不需要向解码侧传送CU一次变换标志cu_pt_flag。因此,CU一次变换标志编码部403跳过对CU一次变换标志cu_pt_flag的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
应当注意,在这种情况下,一次变换标识符编码部402对一次变换标识符pt_idx的编码条件例如基于以下伪代码。
具体地,当CU一次变换标志cu_pt_flag为1(真)并且变换跳过标志ts_flag为0(假)、此外非零系数数量numSig等于或大于阈值TH时,一次变换标识符编码部402对一次变换标识符pt_idx进行编码,而在任何其他情况下(CU一次变换标志cu_pt_flag为0(假)或变换跳过标志ts_flag为1(真)、或者另外地非零系数数量numSig小于阈值TH),省略对一次变换标识符pt_idx的编码。具体地,在CU一次变换标志为0的情况下,不需要向解码侧传送一次变换标识符pt_idx。因此,一次变换标识符编码部402跳过对一次变换标识符pt_idx的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
&lt;一次变换标识符编码处理的流程&gt;
现在,参照图37的流程图来描述图36的步骤S508中执行的一次变换标识符编码处理的流程的示例。
在一次变换标识符编码处理开始之后,一次变换标识符编码部402在步骤S511中执行对变量的初始化。例如,一次变换标识符编码部402将作为一次变换标识符pt_idx的最大值的maxPTIdx设置为3(maxPTIdx=3)。
在步骤S512中,一次变换标识符编码部402参考预测模式信息Pinfo以判定包括处理目标变换块的CU是帧内预测还是帧间预测。在判定CU是帧间预测的情况下,处理进行到步骤S513。
在步骤S513中,一次变换标识符编码部402校正通过以下表达式(68)给出的一次变换标识符pt_idx的值。
pt_idx=maxPTIdx-pt_idx (68)
一次变换标识符pt_idx的值的出现概率具有在帧内预测与帧间预测之间相反的趋势。因此,为了在帧内预测的情况下,一次变换标识符编码部402执行将出现频率最高的值(0)设置为0、将出现频率为第二高的值(1)设置为1、将出现频率为第三高的值(2)设置为2、并且将出现频率为第四高的值(3)设置为3的算术编码,而在帧间预测的情况下,一次变换标识符编码部402执行将出现频率最高的值(3)设置为0、将出现频率为第二高的值(2)设置为1、将出现频率为第三高的值(3)设置为2、并且将出现频率为第四高的值(0)设置为3的算术编码,如由上文给出的表达式(68)所表示的那样改变作为算术编码的目标的一次变换标识符pt_idx的值。
在步骤S513的处理结束之后,处理进行到步骤S514。另一方面,在步骤S512中判定CU是帧内预测的情况下,处理进行到步骤S514。
在步骤S514中,在如下面给出的表达式(69)所表示的那样按TU对一次变换标识符pt_idx进行二值化的情况下,一次变换标识符编码部402导出指示二进制数串的长度的maxBinIdx。具体地,一次变换标识符pt_idx与一次变换标识符pt_idx的最大值maxPTIdx之间的较低值被确定为maxBinIdx的值。
maxBinIdx=min(pt_idx,maxPTIdx) (69)
在步骤S515中,一次变换标识符编码部402判定指示通过对一次变换标识符pt_idx进行二值化而获得的二进制数串中的当前的二进制数(bin)的位置的binIdx的值是否小于binIdx的最大值maxBinIdx。在判定binIdx的值小于maxBinIdx的值(binIdx&lt;maxBinIdx)的情况下,处理进行到步骤S516。
在步骤S516中,一次变换标识符编码部402将binIdx=i的位置处的二进制数的符号symbol的值设置为1(symbol=1)。
在步骤S517中,一次变换标识符编码部402对二值化后的一次变换标识符pt_idx的二进制数串中的、在binIdx=1的位置处的二进制数的符号进行算术编码。
在此,一次变换标识符编码部402在其对在binIdx=i的位置处的二进制数进行算术变换时,使用根据如图38中所示的每个binIdx的上下文来执行算术编码。例如,在图38的M0的情况下,描绘了其中关于binIdx=0至2的所有二进制数而在没有使用上下文的旁路模式下执行算术编码的示例。应当注意,旁路模式是假设符号0和符号1的出现概率彼此相等来执行算术编码的模式。
同时,在图38的M1的情况下,描绘了如下示例:其中,对于binIdx=0(开头)的二进制数,在使用上下文的常规模式下执行算术编码,而对于binIdx=1至2的二进制数,在旁路模式下执行算术编码。应当注意,常规模式是在更新符号0和符号1的出现概率的同时执行算术编码的模式。例如,在M1的情况下,对于binIdx=0的二进制数,在帧内预测的情况下,指定上下文的索引ctxInc的值被设置为0,而在帧间预测的情况下,该值被分配为1。
同时,在图38的M2的情况下,描绘了如下示例:其中,对于binIdx=0至1的二进制数,在使用上下文的常规模式下执行算术编码,以及对于binIdx=2的二进制数,在旁路模式下执行算术编码。例如,在M2的情况下,对于binIdx=0的二进制数,在帧内预测的情况下,指定上下文的索引ctxInc的值被设置为0,而在帧间预测的情况下,该值被分配为1。同时,对于binIdx=1的二进制数,在帧内预测的情况下,指定上下文的索引ctxInc的值被设置为2,而在帧间预测的情况下,该值被分配为3。
此外,在图38的M1和M2中,对于作为常规模式下的算术编码的目标的、在binIdx=i的位置处的二进制数,分配了指定帧内预测与帧间预测之间的不同上下文的上下文索引ctxInc。然而,在上文给出的表达式(68)中一次变换标识符pt_idx的值的出现概率在帧内预测与帧间预测之间相反的趋势被用于进行这样的修改:对于一次变换标识符pt_idx,在帧内预测的情况下,将出现频率最高的值(0)设置为0,将出现频率为第二高的值(1)设置为1,将出现频率为第三高的值(2)设置为2,并且将出现频率为第四高的值(3)设置为3,而在帧间预测的情况下,将出现频率最高的值(3)设置为0,将出现频率为第二高的值(2)设置为1,将出现频率为第三高的值(3)设置为2,并且将出现频率为第四高的值(0)设置为3。通过该修改,可以使在表达式(68)之后的一次变换标识符pt_idx的binIdx=0的二进制数的符号变为0或1的出现概率在帧内预测与帧间预测之间相等。因此,在帧内预测和帧间预测的情况下,可以分配在变成常规模式下的算术编码的目标的、在binIdx=i的位置处指定与二进制数相同的上下文的上下文索引ctxInc。在这种情况下,虽然实现了与在指定在帧内预测与帧间预测之间不同的上下文的上下文索引ctxInc的情况下的编码效率等同的编码效率,但是可以减小用于保存上下文的内存大小。
例如,在图38的M3的情况下,示出了如下示例:其中,对于binIdx=0(开头)的二进制数,在使用上下文的常规模式下执行算术编码,而对于binIdx=1至2的二进制数,在旁路模式下执行算术编码。在M3的情况下,不管是帧内预测还是帧间预测,对于binIdx=0的二进制数,指定上下文的索引ctxInc的值都被设置为0。
此外,在图38的M4的情况下,描绘了如下示例:其中,对于binIdx=0至1的二进制数,在使用上下文的常规模式下执行算术编码,以及对于binIdx=2的二进制数,在旁路模式下执行算术编码。在M4的情况下,不管是帧内预测还是帧间预测,对于binIdx=0的二进制数,指定上下文的索引ctxInc的值都被设置为0,而对于binIdx=1的二进制数,指定上下文的索引ctxInc的值被设置为1。
通过使用图38的M0,均在旁路模式下执行算术编码、而不在使用上下文的常规模式下执行算术编码,因此,与NPL 1中公开的方法相比,可以以更高速度对二进制数串进行算术编码,此外,与现有技术相比,可以减少用于保存上下文的内存大小。
此外,通过使用图38的M1,对于开头的二进制数(binIdx=0),在使用上下文的常规模式下执行算术编码,而在旁路模式下对剩余的二进制数进行算术编码。因此,与NPL 1中公开的方法相比,可以以更高速度对二进制数串进行算术编码,此外,可以减少用于保存上下文的内存大小。此外,也提高了编码效率。
使用图38的M2的优点在于,由于对于binIdx=0至1的二进制数,在使用上下文的常规模式下执行算术编码,并且在旁路模式下对剩余的二进制数进行算术编码,因此与NPL1中公开的方法相比,可以以更高速度对二进制数串进行算术编码。此外,也提高了编码效率。
同时,在图38的M3的情况下,对于开头的二进制数(binIdx=0),分配不管是帧内预测还是帧间预测都指定相同上下文的上下文索引。因此,与M1相比,在实现等同的处理量和等同的编码效率时,可以减小用于保存上下文的内存大小。
在图38的M4的情况下,对于binIdx=0至1的二进制数,分配与不管是帧内预测还是帧间预测都指定相同上下文的上下文索引。因此,与M2相比,在实现等同的处理量和等同的编码效率时,可以减小用于保存上下文的内存大小。
在步骤S518中,一次变换标识符编码部402更新变量binIdx的值(binIdx+=1)。在步骤S518的处理结束之后,处理返回到步骤S515,并且重复随后的处理。具体地,重复步骤S515至S518的处理,直到在步骤S515中判定binIdx的值等于或大于minBinIdx的值为止。在步骤S515中判定binIdx的值等于或大于minBinIdx的值的情况下,处理进行到步骤S519。
在步骤S519中,一次变换标识符编码部402判定一次变换标识符pt_idx是否小于一次变换标识符pt_idx的最大值maxPTIdx。在判定一次变换标识符pt_idx的值小于maxPTIdx的值(pt_idx&lt;maxPTIdx)的情况下,处理进行到步骤S520。
在步骤S520中,一次变换标识符编码部402将在binIdx=i的位置处的二进制数的符号symbol的值设置为0(symbol=0)。
在步骤S521处,一次变换标识符编码部402对二值化后的一次变换标识符pt_idx的二进制数串中的、在binIdx=i的位置处的二进制数的符号进行算术编码。
在步骤S521的处理结束之后,一次变换标识符编码处理结束,并且处理返回到图36。同时,在步骤S519中判定一次变换标识符pt_idx的值等于或大于maxPIIdx的值(pt_idx&gt;=maxPTIdx)的情况下,跳过步骤S520和S521的处理,并且一次变换标识符编码处理结束,然后,处理返回到图36。
在图39的A中描绘了上述处理的伪代码。这使得可以使用如图39的B中所描绘的这样的TU(截断一元二值化)来实现二值化。例如,如果一次变换标识符pt_idx的值是0,则获得位串0。另一方面,例如,如果一次变换标识符pt_idx的值是1,则获得位串10。
这使得可以抑制一次变换标识符pt_idx的编码效率的降低。
此外,通过执行步骤S513的处理,可以利用一次变换标识符pt_idx的出现概率具有在帧内预测与帧间预测之间相反的趋势的性质,并且可以执行更有效的算术编码。
此外,在步骤S517的处理中使用图38的M0的情况下,由于全部在旁路模式下执行算术编码而不在使用上下文的常规模式下执行算术运算,所以与NPL 1中公开的方法相比,可以以更高速度对二进制数串进行算术编码,此外,与根据现有技术相比,可以减小用于保存上下文的存储器大小。
同时,在在步骤S517的处理中使用图38的M1的情况下,由于对开头的二进制数(binIdx=0)执行使用上下文的常规模式下的算术编码、并且对剩余的二进制数执行旁路模式下的算术编码,因此与NPL 1中公开的方法相比,可以以更高速度对二进制数串进行算术编码,此外,可以减小用于保存上下文的内存大小。也提高了编码效率。
此外,在步骤S517的处理中使用图38的M2的情况下,由于对binIdx=0至1的二进制数执行使用上下文的常规模式下执行算术编码、并且对剩余的二进制数执行旁路模式下的算术编码,因此与NPL 1中公开的方法相比,可以以更高速度对二进制数串进行算术编码。也提高了编码效率。
同时,在步骤S517的处理中使用图38的M3的情况下,由于对开头的二进制数(binIdx=0)执行不管是帧内编码还是帧间编码都使用相同上下文的常规模式下的算术编码(binIdx=0)、并且对剩余的二进制数执行旁路模式下的算术编码,因此在与M1的情况下的处理量和编码效率相比实现了等同的处理量和等同的编码效率的同时,可以减小用于保存上下文的内存大小。
此外,在步骤S517的处理中使用图38的M4的情况下,对binIdx=0至1的二进制数执行不管是帧内编码还是帧间编码都使用相同上下文的常规模式下的算术编码、并且对剩余的二进制数执行旁路模式下的算术编码。因此,在与M2的情况下的处理量和编码效率相比实现了等同的处理量和等同的编码效率的同时,可以减小用于保存上下文的内存大小。
应当注意,可以在其可以被执行的范围内执行步骤的处理顺序的改变或处理的内容的改变。例如,可以在步骤S516中的符号symbol被设置为0并且在步骤S520中的符号symbol被设置为1的情况下来设置算术编码。在这种情况下,使用图39的C中描绘的TU来执行对一次变换标识符pt_idx的二值化。
此外,替代步骤S514至S521的处理,可以参考图39的B或图39的C中所示的TU的查找表来从一次变换标识符pt_idx的值确定二进制数串以对二进制数串进行编码。
&lt;解码部&gt;
现在,描述图像解码装置200。同样,在这种情况下,图像解码装置200具有与第一实施方式的情况的配置基本类似的配置。然而,在这种情况下的图像解码装置200包括如下解码器:在将要跳过对通过对编码数据的解码而获得的量化变换系数水平的逆量化、用于将通过对量化变换系数水平的逆量化而获得的二次变换系数变换成一次变换系数的逆二次变换、以及用于将一次变换系数变换成作为图像与图像的预测图像之间的差异的预测残差的逆一次变换的情况下,解码部跳过对与逆一次变换的内容有关的第一信息的编码数据的解码。简言之,在将要跳过对通过对编码数据的解码而获得的量化变换系数水平的逆量化、用于将通过对量化变换系数水平的逆量化而获得的二次变换系数变换成一次变换系数的逆二次变换、以及用于将一次变换系数变换成作为图像与图像的预测图像之间的差异的预测残差的逆一次变换的情况下,这种情况下的解码部211跳过对与逆一次变换的内容有关的第一信息的编码数据的解码。
图40是描绘通过在这种情况下的解码部211执行程序等而实现的、与对一次变换标识符的解码有关的主要功能的示例的功能框图。如图40中所示,这种情况下的解码部211例如包括一次变换有效性标志解码部411和一次变换标识符解码部412,作为与通过执行程序对一次变换标识符进行解码有关的功能。
一次变换有效性标志解码部411执行与对一次变换有效性标志pt_enabled_flag的编码数据的解码有关的处理,该一次变换有效性标志pt_enabled_flag是与允许逆一次变换有关的信息。一次变换标识符解码部412执行与对一次变换标识符pt_idx的解码有关的处理,一次变换标识符pt_idx是与逆一次变换的内容有关的信息。
&lt;解码处理的流程&gt;
现在,描述由图像解码装置200执行的处理流程的示例。在这种情况下,图像解码装置200与在第一实施方式的情况下基本上类似地执行图像解码处理。然而,在这种情况下,在图像解码处理的步骤S201(图13)中,图像解码装置200响应于变换量化旁路标志transquant_bypass_flag的值等来执行对一次变换标识符pt_idx等的编码数据的解码。参照图41的流程图来描述对一次变换标识符pt_idx等的编码数据的解码的流程的示例。简言之,作为图13的步骤S201中执行的解码处理的一部分,图41中所示的解码处理被执行。通过任意方法来执行对其他编码参数和量化变换系数水平level的编码数据的解码。
在解码处理开始之后,在步骤S541中,一次变换有效性标志解码部411从比特流(编码数据)对一次变换有效性标志pt_enabled_flag的编码数据进行解码,并且输出最后得到的数据作为报头信息的一部分。
在步骤S542中,一次变换标识符解码部412判定报头信息Hinfo中包括的一次变换有效性标志pt_enabled_flag是否为1(真)。在判定一次变换有效性标志pt_enabled_flag为0的情况下,跳过步骤S543至S547的处理,并且处理进行到步骤S548。
如果不允许执行逆一次变换,则不执行逆一次变换,并且从编码侧不传送一次变换标识符pt_idx,因此,一次变换标识符解码部412跳过对一次变换标识符pt_idx的编码数据的解码。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
另一方面,在步骤S542中判定一次变换有效性标志pt_enabled_flag为1的情况下,处理进行到步骤S543。
在步骤S543中,一次变换标识符解码部412判定变换信息Tinfo中包括的变换量化旁路标志transquant_bypass_flag是否为1(真)。在判定变换量化旁路标志transquant_bypass_flag为1的情况下,即,在判定要跳过(旁路)逆变换(逆二次变换和逆一次变换)和逆量化的情况下,跳过步骤S543至S547的处理,并且处理进行到步骤S548。
如果要旁路逆变换和逆量化,则不需要一次变换标识符pt_idx。因此,在这种情况下,由于从编码侧不传送一次变换标识符pt_idx,所以一次变换标识符解码部412跳过对一次变换标识符pt_idx的编码数据的解码。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
在步骤S543中判定变换量化旁路标志transquant_bypass_flag为0的情况下,即,在判定不跳过(旁路)逆变换和逆量化的情况下,处理进行到步骤S544。
在步骤S544中,一次变换标识符解码部412判定变换信息Tinfo中包括的变换跳过标志ts_flag是否为1(真)。在判定变换跳过标志ts_flag为1的情况下,即,在判定要跳过逆变换(逆一次变换)的情况下,跳过步骤S545至S547的处理,并且处理进行到步骤S548。
如果要跳过逆一次变换,则不需要一次变换标识符pt_idx。因此,在这种情况下,由于从编码侧不传送一次变换标识符pt_idx,所以一次变换标识符解码部412跳过对一次变换标识符pt_idx的编码数据的解码。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
在步骤S544中判定变换跳过标志ts_flag为0的情况下,即,在判定要执行逆变换(逆一次变换)的情况下,处理进行到步骤S545。
在步骤S545处,一次变换标识符解码部412判定处理目标的变换块的大小TBSize是否等于或小于最大一次变换块大小MaxPTSize(条件表达式(TBSize&lt;=MaxPTSize)的逻辑值是否为是1(真))。在判定处理目标的变换块的大小TBSize大于最大一次变换块大小MaxPTSize(TBSize&gt;MaxPTSize)的情况下,跳过步骤S546和S547的处理,并且处理进行到步骤S548。
最大一次变换块大小MaxPTSize是指示允许执行逆一次变换的最大块大小的信息。具体地,在变换块的大小大于最大一次变换块大小MaxPTSize的情况下,不允许执行逆一次变换,因此,从编码侧不传送一次变换标识符pt_idx。因此,一次变换标识符解码部412跳过对一次变换标识符pt_idx的编码数据的解码。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
在步骤S545中判定处理目标的变换块的大小TBSize等于或小于最大一次变换块大小MaxPTSize(TBSize&lt;=MaxPTSize)的情况下,处理进行到步骤S546。
应当注意,可以使用TB大小的以2为底数的对数值log2TBSize和最大一次变换跳过块大小MaxPTSize的以2为底数的对数值log2MaxPTSize、以另一条件表达式(log2TBSize&lt;=log2MaxPTSize)来替换条件表达式(TBSize&lt;=MaxPTSize)。
在步骤S546中,一次变换标识符解码部412参考残差信息Rinfo以如下面的表达式(70)所示的那样导出变换块中存在的非零系数的总数numSig(sig_coeff_flag==1的总数)。
numSig=∑(sig_coeff_flag(i,j))(i=0…TBSize-1,j=0…TBSize-1)…(70)
在步骤S547中,一次变换标识符解码部412判定变换块中的非零系数的数量numSig是否等于或大于阈值TH(numSig&gt;=TH)。在判定非零系数的总数numSig小于预定阈值TH(numSig&lt;TH)的情况下,处理进行到步骤S548。
在非零系数的总数numSig小于预定阈值TH的情况下,即,在非零系数的数量少的稀疏残差信号的情况下,由于存在能量集中性可能降低并且编码效率可能降低的可能性,因此为了抑制编码效率的降低,期望应用变换跳过或预定的逆正交变换(例如,DCT类型2的逆变换)。简言之,在这种情况下,从编码侧不传送一次变换标识符pt_idx。因此,一次变换标识符解码部412跳过对一次变换标识符pt_idx的编码数据的解码。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
在步骤S548中,一次变换标识符解码部412跳过对一次变换标识符pt_idx的解码。此外,在这种情况下,一次变换标识符解码部412估计一次变换标识符pt_idx的值是指示将预定的正交变换(例如,DCT类型2)用于水平方向上的一次变换Phor和垂直方向上的一次变换Pver的标识符的值(例如,-1)。具体地,一次变换标识符解码部412将一次变换标识符pt_idx的值设置为-1(pt_idx=-1)。在步骤S548的处理结束之后,解码处理结束,并且处理返回到图13。
在步骤S547中判定非零系数的总数numSig等于或大于预定阈值TH(numSig&gt;=TH)的情况下,处理进行到步骤S549。
在步骤S549中,一次变换标识符解码部412对一次变换标识符pt_idx的编码数据进行解码。下文描述了解码的细节。
简言之,仅在上文给出的条件表达式(66)为1(真)的情况下,对一次变换标识符pt_idx的编码数据进行解码。这对应于上文参照图34描述的语法的从上面开始的第七阶段。
在步骤S549的处理结束之后,解码处理结束,并且处理返回到图13。
通过以如上所述的方式执行解码处理,图像解码装置200可以在要应用变换量化旁路的情况下跳过对一次变换标识符pt_idx的解码处理。换言之,可以实现与对一次变换标识符pt_idx的解码有关的处理量和代码量的减少。
应当注意,上述解码处理可以在其可以被执行的范围内经过步骤的处理顺序的改变或处理的内容的改变。此外,可以在其可以被执行的范围内在算术运算方面改变上文给出的语法和条件表达式(66)。
尽管上述图像解码装置200涉及在应用变换量化旁路的情况下跳过对变换块单位中的一次变换标识符pt_idx的解码处理的示例,但是图像解码装置是不限于此。例如,以CU为单位,响应于变换量化旁路标志transquant_bypass_flag的值,对指示是否要对变换块单位中的一次变换标识符pt_idx解码(编码)的CU一次变换标志cu_pt_flag进行解码。在CU一次变换标志cu_pt_flag为1(真)的情况下,执行对变换块单位中的一次变换标识符pt_idx的解码,但是在CU一次变换标志cu_pt_flag为0(假)的情况下,可以省略对变换块单位中的一次变换标识符pt_idx的解码,并且可以将一次变换标识符pt_idx的值估计为-1。在这种情况下,解码部214还包括未描绘的CU一次变换标志解码部413。
CU一次变换标志解码部413执行与对CU一次变换标志cu_pt_flag的解码有关的处理,CU一次变换标志cu_pt_flag是与允许对TU单位中的一次变换标识符pt_idx进行解码(编码)有关的信息。例如基于以下伪码来执行由CU一次变换标志解码部413对CU一次变换标志cu_pt_flag的解码。
具体地,当变换量化旁路标志transquant_bypass_flag为0(假)并且此外一次变换有效性标志pt_enabled_flag为1(真)时,CU一次变换标志解码部413对CU一次变换标志cu_pt_flag进行解码,但是在任何其他情况下(当变换量化旁路标志transquant_bypass_flag为1(真)或者一次变换有效性标志pt_enabled_flag为0(假)时),省略对CU一次变换标志cu_pt_flag的解码并且将CU一次变换标志cu_pt_flag的值估计为0。具体地,在应用变换量化旁路标志的情况下,不传送CU一次变换标志cu_pt_flag。因此,CU一次变换标志解码部413跳过对CU一次变换标志cu_pt_flag的解码,并且将CU一次变换标志cu_pt_flag的值估计为0。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
应当注意,在这种情况下,一次变换标识符解码部412对一次变换标识符pt_idx的解码条件例如基于以下伪代码。
具体地,当CU一次变换标志cu_pt_flag为1(真)且变换跳过标志ts_flag为0(假)、此外非零系数数量numSig等于或大于阈值TH时,一次变换标识符解码部412对一次变换标识符pt_idx进行解码,而在任何其他情况下(当CU一次变换标志cu_pt_flag为0(假)或者变换跳过标志ts_flag为1(真)或者非零系数数量numSig小于阈值TH时),省略对一次变换标识符pt_idx的解码并且估计一次变换标识符pt_idx的值是指示预定的(例如,DCT类型2等的)正交变换的应用的值(-1)。具体地,在CU一次变换标志为0的情况下,不向解码侧传送一次变换标识符pt_idx。因此,一次变换标识符解码部412跳过对一次变换标识符pt_idx的解码,并且将标识符的值估计为指示预定正交变换的应用的值(-1)。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
&lt;一次变换标识符解码过程的流程&gt;
接下来,将参照图42的流程图来描述在图41的步骤S549中执行的一次变换标识符解码处理的流程的示例。
在一次变换标识符解码处理开始之后,一次变换标识符解码部412在步骤S551中执行对变量的初始化。例如,一次变换标识符解码部412将一次变换标识符pt_idx设置为0(pt_idx=0)。另外,例如,一次变换标识符解码部412将作为通过对编码数据的位串中的一个二进制数进行算术解码而获得的符号的值被代入的变量的symbol设置为0(symbol=0)。此外,例如,一次变换标识符解码部412将作为指示解码目标的二进制数在一次变换标识符pt_idx的编码数据的位串中的位置的索引的binIdx设置为0(binIdx=0)。此外,例如,一次变换标识符解码部412将作为一次变换标识符pt_idx的最大值的maxPTIdx设置为3(maxPTIdx=3)。
在步骤S552中,一次变换标识符解码部412对位串中在binIdx=i的位置处的二进制数进行算术解码,并且将该最后得到的符号的值设置为变量symbol。此处,当要对在binIdx=i的位置处的二进制数进行算术解码时,一次变换标识符解码部412执行使用根据如图38所示的每个binIdx的上下文的算术解码。
例如,在图38的M0的情况下,示出了在旁路模式下执行算术解码的示例,在该旁路模式下,关于binIdx=0到2的所有二进制数没有使用上下文。应当注意,旁路模式是假设符号0和符号1的出现概率彼此相等来执行算术解码的模式。
同时,在图38的M1的情况下,示出了以下示例:其中,对于binIdx=0(开头)的二进制数,在使用上下文的常规模式下执行算术解码,并且对于binIdx=1到2的二进制数,在旁路模式下执行算术解码。应当注意,常规模式是在更新符号0和符号1的出现概率的同时执行算术解码的模式。例如,在M1的情况下,对于binIdx=0的二进制数,在帧内预测的情况下,指定上下文的索引ctxInc的值被设置为0,而在帧间预测的情况下,1被分配。
同时,在图38的M2的情况下,示出了以下示例:其中,对于binIdx=0到1的二进制数,在使用上下文的常规模式下执行算术解码,并且对于binIdx=2的二进制数,在旁路模式下执行算术解码。例如,在M2的情况下,对于binIdx=0的二进制数,在帧内预测的情况下,指定上下文的索引ctxInc的值被设置为0,而在帧间预测的情况下,1被分配。同时,对于binIdx=1的二进制数,在帧内预测的情况下,指定上下文的索引ctxInc的值被设置为2,而在帧间预测的情况下,3被分配。
此外,在图38的M1和M2中,对于作为常规模式下的算术解码的目标的在binIdx=i的位置处的二进制数,分配了指定帧内预测与帧间预测之间的不同上下文的上下文索引ctxInc。然而,在图像编码装置100中,利用上文给出的表达式(68)中的、一次变换标识符pt_idx的值的出现概率在帧内预测与帧间预测之间相反的趋势来进行这样的修改:对于一次变换标识符pt_idx,在帧内预测的情况下,将出现频率最高的值(0)设置为0,将出现频率为第二高的值(1)设置为1,将出现频率为第三高的值(2)设置为2,并且将出现频率为第四高的值(3)设置为3;而在帧间预测的情况下,将出现频率最高的值(3)设置为0,将出现频率为第二高的值(2)设置为1,将出现频率为第三高的值(3)设置为2,以及将出现频率为第四高的值(0)设为3,以执行算术编码。通过该修改,可以使在表达式(68)之后的一次变换标识符pt_idx的binIdx=i的二进制数的符号变为0或1的出现概率在帧内预测与帧间预测之间相等。因此,同样在图像解码装置200中,在帧内预测和帧间预测的情况下,可以分配指定与作为常规模式下的算术解码的目标的、在binIdx=i的位置处的二进制数相同的上下文的上下文索引ctxInc。在这种情况下,虽然实现了与在分配指定在帧内预测与帧间预测之间不同的上下文的上下文索引ctxInc的情况下的编码效率相等的编码效率,但是可以减小用于保存上下文的内存大小。
例如,在图38的M3的情况下,示出了以下示例:对于binIdx=0(开头)的二进制数,在使用上下文的常规模式下执行算术解码,并且对于binIdx=1到2的二进制数,在旁路模式下执行算术解码。在M3的情况下,对于binIdx=0的二进制数,将指定上下文的索引ctxInc的值设置为0,而不管是帧内预测还是帧间预测。
此外,在图38的M4的情况下,描绘了以下示例:对于binIdx=0到1的二进制数,在使用上下文的常规模式下执行算术解码,对于binIdx=2的二进制数,在旁路模式下执行算术解码。在M4的情况下,不管是帧内预测还是帧间预测,对于binIdx=0的二进制数,将指定上下文的索引ctxInc的值设置为0,并且对于binIdx=1的二进制数,将指定上下文的索引ctxInc的值设置为1。
通过使用图38的M0,在旁路模式下全部执行算术解码、而不在使用上下文的常规模式下执行算术解码,因此,与通过NPL 1中所公开的方法的情况相比,可以更高速地对符号进行解码,此外,与通过NPL 1中所公开的方法的情况相比,可以减少用于保存上下文的内存大小。
通过使用图38的M1,对于开头的二进制数(binIdx=0),在使用上下文的常规模式下执行算术解码,同时在旁路模式下对剩余的二进制数进行算术解码。因此,与通过NPL 1中公开的方法的情况相比,可以以较高的速度从二进制数串对符号进行解码,此外,可以减少用于保存上下文的内存大小。此外,还提高了编码效率。
通过使用图38的M2,由于对于binIdx=0到1的二进制数,在使用上下文的常规模式下执行算术解码,并且在旁路模式下对剩余的二进制数进行算术解码,因此,与通过NPL1中所公开的方法的情况相比,可以更高速地对符号进行解码。此外,还提高了编码效率。
同时,在图38的M3的情况下,对于开头的二进制数(binIdx=0),分配了不管是帧内预测还是帧间预测都指定相同上下文的上下文索引。因此,与M1相比,在实现等同处理量和等同编码效率的同时,还可以减小用于保存上下文的内存大小。
在图38的M4的情况下,对于binIdx=0到1的二进制数,分配了不管是帧内预测还是帧间预测都指定相同上下文的上下文索引。因此,与M2相比,在实现等同处理量和等同编码效率的同时,可以减小用于保存上下文的内存大小。
在步骤S553中,一次变换标识符解码部412判定符号symbol的值是否为1。在判定符号symbol是1的情况下,处理进行到步骤S554。
在步骤S554中,一次变换标识符解码部412更新一次变换标识符pt_idx和变量binIdx的值。例如,一次变换标识符解码部412将一次变换标识符pt_idx的值递增+1(pt_idx+=1)。此外,例如,一次变换标识符解码部412将变量binIdx的值递增+1(binIdx+=1)。
在步骤S555中,一次变换标识符解码部412判定一次变换标识符pt_idx的值是否等于一次变换标识符pt_idx的最大值maxPTIdx。在一次变换标识符pt_idx的值不等于最大值maxPTIdx(pt_idx!=maxPTIdx)的情况下,处理进行到步骤S556。另一方面,在步骤S553中判定符号symbol为0的情况下,处理进行到步骤S556。
在步骤S556中,一次变换标识符解码部412判定符号symbol的值是否为1。在确定符号symbol的值为1的情况下,处理返回到步骤S552,并且重复接下来的步骤中的处理。
另一方面,在步骤S555中判定一次变换标识符pt_idx的值等于最大值maxPTIdx(pt_idx==maxPTIdx)的值的情况下,处理进行到步骤S557。同时,在步骤S556中判定符号symbol的值为0的情况下,处理进行到步骤S557。
在步骤S557中,一次变换标识符解码部412参考预测模式信息Pinfo以判定包括处理目标变换块的CU是帧内预测还是帧间预测。在判定CU是帧间预测的情况下,处理进行到步骤S558。
在步骤S558处,一次变换标识符解码部412基于以下表达式(71)来校正通过解码而获得的一次变换标识符pt_idx的值。
pt_idx=maxPTIdx-pt_idx...(71)
一次变换标识符pt_idx的值的出现概率具有在帧内预测与帧间预测之间相反的趋势。因此,在帧内预测的情况下,执行以下算术编码:将出现频率最高的值(0)设置为0,将出现频率为第二高的值(1)设置为1,将出现频率为第三高的值(2)设置为2,并且将出现频率为第四高的值(3)设置为3;而在帧间预测的情况下,执行以下算术编码:将出现频率最高的值(3)设置为0,将出现频率为第二高的值(2)设置为1,将出现频率为第三高的值(3)设置为2,并且将出现频率为第四高的值(0)设置为3。一次变换标识符解码部412执行如表达式(71)所示的处理,以恢复一次变换标识符pt_idx的这样的值的正确分配。
在步骤S558的处理结束之后,一次变换标识符解码处理结束,并且处理返回到图41。另一方面,在步骤S557中判定CU是帧内预测的情况下,跳过步骤S558的处理,并且一次变换标识符解码处理结束,而处理返回到图41。
在图43的A中描绘了上述处理的伪代码。这使得可以实现多值化(逆二值化),其中,使用如图43的B中所示的这样TU(截断一元二值化)。例如,如果位串是0,则一次变换标识符pt_idx的值是0。同时,例如,如果位串是10,则一次变换标识符pt_idx的值是1。
这使得可以抑制对一次变换标识符pt_idx的编码效率的降低。
此外,通过执行步骤S558的处理,可以利用一次变换标识符pt_idx的出现概率具有在帧内预测与帧间预测之间相反的趋势的性质,并且可以执行更高效的算术解码。
此外,在步骤S552的处理中使用图38的M0的情况下,由于算术解码都在旁路模式下被执行而不在使用上下文的常规模式下执行算术运算,因此与通过NPL 1中公开的方法的情况相比,可以更高速地从二进制数串对符号进行解码,此外,与通过NPL 1中公开的方法的情况相比,可以减少用于保存上下文的内存大小。
同时,在步骤S552的处理中使用图38的M1的情况下,由于对开头的二进制数(binIdx=0)执行使用上下文的常规模式下的算术解码,并且对剩余的二进制数执行旁路模式下的算术解码,因此与通过NPL 1中公开的方法的情况相比,可以更高速地从二进制数串对符号进行解码,此外,可以减少用于保存上下文的存储器大小。此外,还提高了编码效率。
此外,在步骤S552的处理中使用图38的M2的情况下,由于对binIdx=0到1的二进制数执行使用上下文的常规模式下的算术解码,并且对剩余的二进制数执行旁路模式下的算术解码,因此与通过NPL 1中公开的方法的情况相比,可以更高速地从二进制数串对符号进行解码。此外,提高了编码效率。
同时,在步骤S552的处理中使用图38的M3的情况下,对于开头二进制数(binIdx=0),执行不管是帧内预测还是帧间预测都使用相同的上下文的正常模式下的算术解码,并且对于剩余的二进制数,执行旁路模式下的算术解码。因此,虽然与在M1的情况下的处理量和编码效率相比,实现了等同处理量和等同编码效率,但也可以减小用于保存上下文的内存大小。
此外,在步骤S552的处理中使用图38的M4的情况下,对于binIdx=0到1的二进制数,执行与不管是帧内预测还是帧间预测都使用相同上下文的常规模式下的算术解码,并且对于剩余的二进制数,执行旁路模式下的算术解码。因此,虽然与M2的情况下的处理量和编码效率相比,实现了等同处理量和等同编码效率,但也可以减小用于保存上下文的内存大小。
应当注意,可以在其可以被执行的范围内执行步骤的处理顺序的改变或处理的内容的改变。例如,虽然在步骤S553或S556中确定符号symbo的判定条件为1,但是在其他情况下其也可以等于0。在这种情况下,使用图43的C中描绘的TU来执行对一次变换标识符pt_idx的逆二值化。
此外,替代步骤S552至S556的处理,可以参照图43的B或图43的C中所描绘的TU的查找表来从位串确定一次变换标识符pt_idx的值。
&lt;6.第六实施方式&gt;
&lt;CU、PU和TU的形状&gt;
图44是示出第六实施方式中的CU、PU和TU的形状的视图。
第六实施方式中的CU、PU和TU是JVET-C0024,“EE2.1:Quadtree plus binarytree structure integration with JEM tools”中描述的QTBT(四叉树加二叉树)的CU、PU和TU。
具体地,在第六实施方式中的CU的块分割中,一个块不仅可以被分割成四个(=2×2)个子块,而且还可以被分割成两个(=1×2、2×1)个子块。具体地,在第六实施方式中,通过递归地重复将一个块分割成四个或两个子块来执行对CU的分割,因此,形成水平方向或垂直方向上的四叉树(Quad-Tree)形状或二叉树(Binary-Tree)形状的树结构。
因此,CU的形状可能是正方形或长方形。例如,在LCU大小为128×128的情况下,如图44所示,CU的大小(水平方向上的大小w×垂直方向上的大小h)不仅可以是诸如128×128、64×64、32×32、16×16、8×8和4×4的正方形大小,而且还可以是诸如128×64、128×32、128×16、128×8、128×4、64×128、32×128、16×128、8×128、4×128、64×32、64×16、64×8、64×4、32×64、16×64、8×64、4×64、32×16、32×8、32×4、16×32、8×32、4×32、16×8、16×4、8×16、4×16、8×4或4×8的长方形大小。此外,在第六实施方式中,PU和TU与CU相同。
&lt;跳过对变换跳过标志的编码和解码&gt;
根据前述,在第六实施方式中,变换块的在水平方向上的大小TBXSize和在垂直方向上的大小TBYSize有时彼此不同。因此,在第六实施方式中,作为最大变换跳过块大小MaxTSSize,设置变换跳过块在水平方向上的大小TBXSize和在垂直方向上的大小TBYSize中的较大的一个(TBXSize,TBYSize)。然后,基于max(TBXSize,TBYSize)与最大变换跳过块大小MaxTSSize之间的比较结果,跳过对与跳过(逆)变换有关的变换跳过标志ts_flag的编码或解码。除了第六实施方式中的跳过对变换跳过标志ts_flag的编码和解码之外的处理与第三实施方式中的处理类似。
&lt;语法&gt;
图45是描绘语法表的示例的视图,在该语法表中,描述了第六实施方式中的表示对变换跳过标志ts_flag等的编码的控制的伪代码。
除了从上面起的第四阶段以外,图45的语法表与图20的语法表相同。
如在图45中从上面起的第四阶段处所描绘的那样,用于对变换跳过标志ts_flag进行编码(即,用于对变换跳过标志ts_flag的编码数据进行解码)的条件之一是max(TBXSize,TBYSize)等于或小于最大变换跳过块大小MaxTSSize。具体地,在max(TBXSize,TBYSize)大于最大变换跳过块大小MaxTSSize的情况下,跳过对变换跳过标志ts_flag的编码(对变换跳过标志ts_flag的编码数据的解码)。
此外,用于对变换跳过标志ts_flag(对变换跳过标志ts_flag的编码数据进行解码)进行编码的条件之一是变换跳过有效性标志ts_enabled_flag和变换量化旁路标志transquant_bypass_flag是1。简言之,在要跳过(逆)变换和(逆)量化两者的情况下以及在不允许变换跳过的情况下,跳过对变换跳过标志ts_flag的编码(对变换跳过标志ts_flag的编码数据的解码)。
&lt;编码部&gt;
同样,在这种情况下,图像编码装置100具有与第一实施方式的情况下的配置基本类似的配置。简言之,结合第一实施方式描述的图像编码装置100包括编码部,该编码部基于max(TBXSize,TBYSize)与最大变换跳过块大小MaxTSSize之间的比较结果来跳过对变换跳过标志ts_flag的编码。简言之,编码部114基于max(TBXSize,TBYSize)与最大变换跳过块大小MaxTSSize之间的比较结果来跳过对变换跳过标志ts_flag的编码。
图46是描绘通过编码部114执行程序等而实现的、与对变换跳过标志ts_flag的编码有关的主要功能的示例的功能框图。如图46所示,这种情况下的编码部114可以通过执行程序而具有与结合第三实施方式描述的编码部114的功能类似的、二次变换有效性标志编码部301、变换跳过有效性标志编码部303、最大变换跳过块大小编码部304、变换量化旁路标志编码部305和二次变换标志编码部321,作为与对变换跳过标志ts_flag的编码有关的功能。此外,编码部114可以通过执行程序而具有例如变换跳过标志编码部441的功能,作为与对变换跳过标志ts_flag的编码有关的功能。
变换跳过标志编码部441基于max(TBXSize,TBYSize)与最大变换跳过块大小MaxTSSize之间的比较结果来执行与对变换跳过标志ts_flag的编码有关的处理。
&lt;编码处理的流程&gt;
现在,描述由图像编码装置100执行的处理的流程的示例。图像编码装置100执行与第一实施方式的情况下的图像编码处理基本类似的图像编码处理。然而,在这种情况下,在图像编码处理的步骤110(图9)中,图像编码装置100基于max(TBXSize,TBYSize)与最大变换跳过块大小MaxTSSize的比较结果等而执行对变换跳过标志ts_flag的编码。参照图47和图48的流程图来描述对变换跳过标志ts_flag等的编码的流程的示例。换言之,作为图9的步骤S110中执行的编码处理的一部分,图47和图48中描绘的编码处理被执行。通过任意方法来执行对其他编码参数和量化变换系数水平level的编码。
图47的步骤S601至S606的处理类似于图22的步骤S361至S366的处理,因此,省略对它们的描述。
在步骤S607中,变换跳过标志编码部441判定处理目标的变换块的max(TBXSize,TBYSize)是否等于或小于最大变换跳过块大小MaxTSSize(条件表达式max(TBXSize,TBYSize)&lt;=MaxTSSize是否为真)。在判定处理目标的变换块的max(TBXSize,TBYSize)大于最大变换跳过块大小MaxTSSize的情况下,即,在判定上面给出的条件表达式是0(假)的情况下,跳过(省略)步骤S608的处理,并且处理进行到图48的步骤S609。
在max(TBXSize,TBYSize)大于最大变换跳过块大小的情况下,由于不允许变换跳过,因此变换跳过标志ts_flag的值被固定为0。因此,在这种情况下,由于不需要将变换跳过标志ts_flag传送到解码侧,因此变换跳过标志编码部441跳过对变换跳过标志ts_flag的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S607中判定处理目标的变换块的max(TBXSize,TBYSize)等于或小于最大变换跳过块大小MaxTSSize的情况下,即,在判定上面给出的条件表达式是1(真)的情况下,处理进行到步骤S608。
步骤S608至S615的处理与图22的步骤S368的处理和图23的步骤S371至S377的处理类似,因此,省略其描述。
以这种方式,变换跳过标志编码部441基于变换块的在水平方向上的大小TBXSize和在垂直方向上的大小TBYSize来跳过对变换跳过标志ts_flag的编码。因此,即使在变换块的形状是长方形的情况下,也可以适当地跳过对变换跳过标志ts_flag的编码。
&lt;解码部&gt;
现在,描述图像解码装置200。同样,在这种情况下,图像解码装置200具有与第一实施方式的情况下的配置基本类似的配置。然而,这种情况下的图像解码装置200包括解码部,该解码部基于max(TBXSize,TBYSize)与最大变换跳过块大小MaxTSSize之间的比较结果来跳过对变换跳过标志ts_flag的解码。简言之,这种情况下的解码部211基于max(TBXSize,TBYSize)与最大变换跳过块大小MaxTSSize之间的比较结果来跳过对变换跳过标志ts_flag的解码。
图49是描绘通过这种情况下的解码部211执行程序等实现的、与对变换跳过标志ts_flag的编码数据的解码有关的主要功能的示例的功能框图。如图49中所示,这种情况下的解码部211可以具有与例如上面结合第三实施方式描述的解码部211的那些功能类似的、二次变换有效性标志解码部311、变换跳过有效性标志解码部313、最大变换跳过块大小解码部314、变换量化旁路标志解码部315和二次变换标志解码部331的功能,作为与通过执行程序对变换跳过标志ts_flag的编码数据的解码有关的功能。此外,解码部211可以具有例如变换跳过标志解码部461的功能作为与通过执行程序对变换跳过标志ts_flag的编码数据的解码有关的功能。
二次变换标志解码部331基于max(TBXSize,TBYSize)与最大变换跳过块大小MaxTSSize之间的比较结果来执行与对变换跳过标志ts_flag的编码数据的解码有关的处理。
&lt;解码处理的流程&gt;
现在,描述由图像解码装置200执行的处理的流程的示例。这种情况下的图像解码装置200执行与第一实施方式的情况下的图像解码处理基本上类似的图像解码处理。然而,在这种情况下,在图像解码处理的步骤S201(图13)中,图像解码装置200响应于max(TBXSize,TBYSize)与最大变换跳过块大小MaxTSSize之间的比较结果等来执行对变换跳过标志ts_flag的编码数据的解码。参照图50和图51的流程图来描述对变换跳过标志ts_flag的编码数据的解码的流程的示例。简言之,作为图13的步骤S201中执行的解码处理的一部分,图50和图51中描绘的编码处理被执行。
图50的步骤S631至S636的处理类似于图25的步骤S381至S386的处理,因此,省略对其的描述。
在步骤S637中,变换跳过标志解码部461判定处理目标的变换块的max(TBXSize,TBYSize)是否等于或小于最大变换跳过块大小MaxTSSize(条件表达式max(TBXSize,TBYSize)&lt;=MaxTSSize是否为真)。在判定处理目标的变换块的max(TBXSize,TBYSize)大于最大变换跳过块大小MaxTSSize的情况下,即,在判定上面给出的条件表达式为0(假)的情况下,处理进行到步骤S638。
在变换块的max(TBXSize,TBYSize)大于最大变换跳过块大小MaxTSSize的情况下,由于不允许变换跳过,因此变换跳过标志ts_flag的值被固定为0。因此,在这种情况下,由于从编码侧没有传送变换跳过标志ts_flag,因此变换跳过标志解码部461跳过对变换跳过标志ts_flag的编码数据的解码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
另一方面,在步骤S637中判定处理目标的变换块的max(TBXSize,TBYSize)等于或小于最大变换跳过块大小MaxTSSize的情况下,即,在上面给出的条件表达式为1(真)的情况下,处理进行到步骤S639。
步骤S638至S647的处理与图25的步骤S388和S389的处理以及图26的步骤S391至S398的处理类似,因此,省略对其的描述。
以这种方式,变换跳过标志解码部461基于变换块的在水平方向上的大小TBXSize和在垂直方向上的大小TBYSize来跳过对变换跳过标志ts_flag的编码。因此,即使在变换块的形状是长方形的情况下,也可以适当地跳过对变换跳过标志ts_flag的解码。
应当注意,如果是基于基于水平方向上的大小TBXSize和垂直方向上的大小TBYSize判定变换块的大小是否大于变换跳过块大小的最大值的方法,则是否要执行跳过对变换跳过标志ts_flag的编码或解码的判定方法不限于上述方法。
例如,在作为水平方向上的大小TBXSize的对数和垂直方向上的大小TBYSize的对数中的较大的一个的max(log2TBXSize,log2TBYSize)大于变换跳过块大小的最大值的对数log2MaxTSSize(max(log2TBXSize,log2TBYSize)&gt;log2MaxTSSize)的情况下,可以跳过对变换跳过标志ts_flag的编码和解码。
另一方面,最大变换跳过块大小MaxTSSize可以被确定为水平方向上的大小MaxTSXSize与垂直方向上的大小MaxTSYSize之和,使得在水平方向上的大小TBXSize与垂直方向上的大小TBYSize之和大于最大变换跳过块大小MaxTSSize(TBXSize+TBYSize&gt;MaxTSSize)的情况下,跳过对变换跳过标志ts_flag的编码和解码。
此外,在水平方向上的大小TBXSize与垂直方向上的大小TBYSize的乘积大于最大变换跳过块在水平方向上的大小MaxTSXSize与在垂直方向上的大小MaxTSYSize的乘积(TBXSize*TBYSize&gt;MaxTSXSize*MaxTSYSize)的情况下,可以跳过对变换跳过标志ts_flag的编码和解码。
此外,在水平方向上的大小TBXSize的对数与垂直方向上的大小TBYSize的对数之和(log2TBXSize+log2TBYSize)大于最大变换跳过块在水平方向上的大小MaxTSXSize的对数与在垂直方向上的大小MaxTSYSize的对数之和(log2MaxTSXSize+log2MaxTSYSize)(log2TBXSize+log2TBYSize&gt;log2MaxTSXSize+log2MaxTSYSize)的情况下,则可以跳过对变换跳过标志ts_flag的编码和解码。
此外,对数log2MaxTSSize可以被确定为最大变换跳过块在水平方向上的MaxTSXSize的对数与在垂直方向上的MaxTSYSize的对数之和,使得在水平方向上的大小TBXSize的对数与垂直方向上的大小TBYSize的对数之和(log2TBXSize+log2TBYSize)大于对数log2MaxTSSize(log2TBXSize+log2TBYSize&gt;log2MaxTSSize)的情况下,则跳过对变换跳过标志ts_flag的编码和解码。
应当注意,用于判定的最大变换跳过块在水平方向上的大小MaxTSXSize(或其对数值log2MaxTSXSize)与在垂直方向上的大小MaxTSYSize(或其对数值log2MaxTSYSize)被设置为SPS、PPS、条带头(SH)等的参数集并且被从编码侧传送到解码侧。
此外,虽然在第六实施方式中由图44中所示的正方形或长方形形成的矩形块应用于第三实施方式中的块,但图44中所示的矩形块可以应用于除了第三实施方式以外的任何实施方式中的块。在这种情况下,在实施方式中,与第六实施方式中类似地,基于水平方向上的大小TBXSize和垂直方向上的大小TBYSize来执行对变换跳过标志ts_flag的编码和解码的跳过。
&lt;7.第七实施方式&gt;
&lt;现有技术的概述&gt;
在H.Huang、K.Zhang、Y.-W.Huang、S.Lei的“EE2.1:Quadtree plus binary treestructure integration with JEM tools,”JVET-C0024,ITU-T SG 16WP 3和ISO/IEC JTC1/SC 29/WG 11的联合视频勘探组(JVET)的第3次会议:日内瓦,瑞士,2016年5月26日至6月1日(下文中简称NPL 3)或J.Chen、E.Alshina、GJ Sullivan、J.-R.Ohm、J.Boyce的“Algorithm Description of Joint Exploration Test Model 4”JVET-D1001,ITU-T SG16WP 3和ISO/IEC JTC 1/SC 29/WG 11的联合视频勘探组(JVET)的第4次会议:成都,中国,2016年10月15日至21日(下文中称为NPL 4)中,公开了自适应一次变换(AMT:自适应多核变换),通过该自适应一次变换,对于亮度变换块,从对于水平方向上的一次变换PThor和垂直方向上的变换PTver中的每一个的多个不同的一维正交变换中自适应地选择一次变换。
在包括处理目标的亮度变换块的CU中用信号通知(向解码侧传送)指示是否要执行自适应一次变换的自适应一次变换标志apt_flag(也称为CU一次变换标志cu_pt_flag)。
然而,在上述的相关技术中,在apt_flag==1的情况下(在要应用自适应一次变换的情况下),可能用信号通知指示变换跳过是否合适的变换跳过标志ts_flag。因此,存在与ts_flag或apt_flag相关的代码量可能变得冗余的可能性,从而导致代码量的不必要增加。
此外,在变换量化旁路标志transquant_bypass_flag==1的情况下(在要应用变换量化旁路的情况下),可能用信号通知自适应一次变换标志apt_flag。因此,存在与apt_flag相关的代码量可能变得冗余的可能性,从而导致代码量的不必要增加。
在图52中描绘了NPL 3和NPL 4中公开的方法中产生冗余代码量的情况的示例。图52中描绘的表指示在NPL 3和NPL 4中所公开的方法中可以根据变换量化旁路标志transquant_bypass_flag、自适应一次变换标志apt_flag、变换跳过标志ts_flag、一次变换标识符pt_idx和二次变换标识符st_idx采取的变化。
例如,在图52中描绘的表中,描绘了情况#1指示“transquant_bypass_flag==0、apt_flag==0、ts_flag==0和st_idx==0,其中,未用信号通知pt_idx”的状态,并且此时,一次变换(第一变换(1stTr.))指示选择了DCT并跳过了二次变换(第二变换(2ndTr.))。
相反地,在情况#3和情况#4中,用信号通知apt_flag==1和ts_flag==0,因为显而易见的是,在需要用信号通知自适应一次变换标志apt_flag、ts_flag==0的情况下,不需要用信号通知变换跳过标志ts_flag。简言之,在这种情况下,变换跳过标志ts_flag是冗余的。此外,在情况#5中,尽管用信号通知ts_flag==1,但是用信号通知自适应一次变换标志apt_flag,这是冗余的。在情况#6和情况#7中,尽管用信号通知transquant_bypass_flag==1,但是用信号通知自适应一次变换标志apt_flag,这是冗余的。
&lt;跳过对自适应一次变换标志和变换跳过标志的编码和解码&gt;
如上所述,根据NPL 3和NPL 4中所公开的方法,在自适应一次变换标志apt_flag==1的情况下(在要应用自适应一次变换的情况下),存在可以用信号通知指示变换跳过是否合适的变换跳过标志ts_flag的可能性,从而导致代码量可能不必要地增加。此外,在变换跳过标志ts_flag==1的情况下,存在可以用信号通知自适应一次变换标志apt_flag的可能性,从而导致代码量可能不必要地增加。此外,在变换量化旁路标志transquant_bypass_flag==1的情况下(在要应用变换量化旁路的情况下),存在可能用信号通知自适应一次变换标志apt_flag的可能性,从而导致代码量可能不必要地增加。
因此,例如,如在图53的情况#5中那样,在图像编码时,在变换量化旁路标志transquant_bypass_flag==1的情况下(在要执行变换量化旁路的情况下),跳过(省略)对自适应一次变换标志apt_flag的编码。这使得可以抑制编码效率的降低。
此外,例如,如在图53的情况#3和情况#4中那样,在自适应一次变换标志apt_flag==1的情况下(在要应用自适应一次变换的情况下),跳过(省略)对变换跳过标志ts_flag的编码。这使得可以抑制编码效率的降低。
此外,例如,如图53的情况#5中那样,在图像解码时,在变换量化旁路标志transquant_bypass_flag==1的情况下,跳过(省略)对自适应一次变换标志apt_flag的解码。这使得可以抑制编码效率的降低。
此外,例如,如在图53的情况#3和情况#4中那样,在自适应一次变换标志apt_flag==1的情况下,跳过(省略)对变换跳过标志ts_flag的解码。这使得可以抑制编码效率的降低。
&lt;语法&gt;
在图54和图55中描绘了描述表示如上所述的这样的控制的伪代码的语法表的示例。应当注意,在语法中,countNonZeroCoeffs(compID)是返回存在于由compID指示的色彩信号的变换块中的非零系数(有效系数)的数量的函数。在该示例的情况下,如图54的从上面起的第六阶段所示,用于对自适应一次变换标志apt_flag进行编码(对自适应一次变换标志apt_flag的编码数据进行解码)的条件之一是变换量化旁路标志transquant_bypass_flag为0(假)。简言之,在变换量化旁路标志transquant_bypass_flag为1(真)的情况下,即,在要跳过(逆)变换和(逆)量化的情况下,跳过对自适应一次变换标志apt_flag的编码(对自适应一次变换标志apt_flag的编码数据的解码)。
此外,如图55的从上面起的第三阶段所示,用于对变换跳过标志ts_flag进行编码(对变换跳过标志ts_flag的编码数据进行解码)的条件之一是自适应一次变换跳过标志apt_flag为0(假)。简言之,在自适应一次变换标志apt_flag为1(真)的情况下,即,在要应用自适应一次变换的情况下,跳过对与亮度变换块和色差的变换块有关的变换跳过标志ts_flag的编码(对变换跳过标志ts_flag的编码数据的解码)。
&lt;编码&gt;
同样,在这种情况下,图像编码装置100也具有与第一实施方式的情况的配置基本上相同的配置。具体地,结合第一实施方式描述的图像编码装置100包括编码部,该编码部在将要跳过作为对预测残差的变换处理的一次变换、作为对通过对预测残差的一次变换而获得的一次变换系数的变换处理的二次变换、以及对通过对一次变换系数的二次变换而获得的二次变换系数的量化(在变换量化旁路时)的情况下,跳过对表示一次变换的内容的第一信息的编码,该第一信息指示自适应一次变换的开启/关断,其中,该预测残差是图像与图像的预测图像之间的差异。
具体地,这种情况下的编码部114在将要跳过作为对预测残差的变换处理的一次变换、作为对通过对预测残差的一次变换而获得的一次变换系数的变换处理的二次变换、以及对通过对一次变换系数的二次变换而获得的二次变换系数的量化的情况下,跳过对表示自适应一次变换的开启/关断的第一信息的编码,其中,该预测残差是图像与图像的预测图像之间的差异。
此外,图像编码装置100包括编码部,该编码部在将要应用自适应一次变换的情况下,跳过对指示变换跳过的开启/关断的第二信息的编码。具体地,这种情况下的编码部114在要执行作为对预测残差的变换处理的自适应一次变换(apt_flag==1)的情况下,跳过对指示变换跳过的开启/关断的第二信息的编码,该预测残差是图像与图像的预测图像之间的差异。
图56是描绘通过这种情况下的编码部114执行程序等来实现的、与对自适应一次变换标志的编码和对变换跳过标志的编码有关的主要功能的示例的功能框图。如图56所示,这种情况下的编码部114通过执行程序而包括例如自适应一次变换标志编码部501作为与对自适应一次变换标志的编码有关的功能、以及包括变换跳过标志编码部502作为与对变换跳过标志的编码有关的功能。
自适应一次变换标志编码部501执行与对对自适应一次变换标志apt_flag的编码有关的处理,该自适应一次变换标志apt_flag是与自适应一次变换的开启/关断有关的信息。变换跳过标志编码部502执行与对变换跳过标志ts_flag的编码有关的处理,该变换跳过标志ts_flag是与变换跳过的开启/关断有关的信息。
&lt;编码处理的流程&gt;
现在,描述由图像编码装置100执行的处理的流程的示例。这种情况下的图像编码装置100执行与第一实施方式的情况下的图像编码处理基本类似的图像编码处理。然而,在这种情况下,图像编码装置100在图像编码处理的步骤S110(图9)中响应于变换量化旁路标志transquant_bypass_flag的值等来执行对自适应一次变换标志apt_flag等的编码。参照图57中的流程图来描述对自适应一次变换标志apt_flag等的编码的流程的示例。简言之,作为在图9的步骤S110中执行的编码处理的一部分,图57中描绘的编码处理被执行。通过任意方法来执行对其他编码参数和量化变换系数水平level的编码数据的编码。
在编码处理开始之后,在步骤S701中,自适应一次变换标志编码部501判定以下给出的条件表达式(72)中所示的条件Condition1是否为1(真)。条件Condition1对应于上文中参照图54描述的语法的从上面起的第六阶段。
Condition 1:
apt_enabled_flag
&&compID==COMPONENT_Y
&&width<=MaxPTSize
&&height<=MaxPTSize
&&!transquant_bypass_flag
…(72)
此处,MaxPTSize表示可应用自适应一次变换的块大小的最大值,并且例如为64。应当注意,MaxPTSize不限于上述值,并且其可以根据限定报头信息中传达的MaxPTSize的参数来设定。
此外,在条件表达式(72)中,将块大小与阈值彼此进行比较的部分可以被以下条件表达式(73)所示的对数表示替代。
apt_enabled_flag
&&compID==COMPONENT_Y
&&log2TbWidth<=log2MaxPTSize
&&log2TbHeight<=log2MaxPTSize
&&!transquant_bypass_flag
…(73)
此处,log2MaxPTSize的值为6。应当注意,log2MaxPTSize的值不限于此,并且可以根据限定报头信息中传达的log2MaxPTSize的参数来设定。
在步骤S701中判定条件Condition 1为1(真)的情况下,即,在判定要对自适应一次变换标志进行编码的情况下,处理进入步骤S702。在步骤S702中,自适应一次变换标志编码部501对自适应一次变换标志apt_flag进行可变长编码以生成位串(编码数据),并且输出该编码数据。在步骤S702的处理结束之后,处理进行至步骤S703。
相反地,在步骤S701中判定条件Condition 1为0(假)的情况下,即,在判定不对自适应一次变换标志进行编码的情况下,跳过步骤S702的处理,并且处理进行至步骤S703。
如果不满足对自适应一次变换标志的编码条件,则不需要向解码侧发送自适应一次变换标志apt_flag。因此,自适应一次变换标志编码部501跳过对自适应一次变换标志apt_flag的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S703中,变换跳过标志编码部502判定以下给出的条件表达式(74)中表示的条件Condition 2是否为1(真)。条件Condition 2对应于上文中参照图55描述的语法的从上面起的第三阶段。
Condition 2:
ts_enabled_flag
&&width*height<=MaxTSSize
&&!transquant_bypass_flag
&&!apt_flag
…(74)
此处,MaxTSSize表示可以应用变换跳过的块大小的最大值,并且例如为16。应当注意,MaxTSSize不限于上述值,并且可以根据限定报头信息中传达的MaxTSSize的参数来设定。
此外,在条件表达式(74)中,将块大小与阈值彼此进行比较的部分可以被下述条件表达式(75)所示的对数表示替代。
ts_enabled_flag
&&(log2TbWidth+log2TbHeight)<=log2MaxTSSize
&&!transquant_bypass_flag
&&!apt_flag
…(75)
此处,log2MaxTSSize的值为4。应当注意,log2MaxTSSize的值不限于此,并且可以由限定报头信息中传达的log2MaxTSSize的参数来设定。
在步骤S703中判定条件Condition 2为1(真)的情况下,即,在判定要对变换跳过标志进行编码的情况下,处理进行至步骤S704。在步骤S704中,变换跳过标志编码部502对变换跳过标志ts_flag进行可变长编码以生成位串(编码数据),并且输出该编码数据。在步骤S704中的处理结束之后,编码处理结束,并且处理返回至图9。
另一方面,在步骤S703中判定条件Condition 2为0(假)的情况下,即,在不对变换跳过标志进行编码的情况下,跳过步骤S704的处理并且编码处理结束,然后,处理返回至图9。
如果不满足对变换跳过标志的编码条件,则不需要向解码侧发送变换跳过标志ts_flag。因此,变换跳过标志编码部502跳过对变换跳过标志ts_flag的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
通过这样的编码而获得的自适应一次变换标志apt_flag的编码数据和变换跳过标志ts_flag的编码数据被包括在包括量化变换系数水平level的编码数据的比特流中。
通过以如上所述的方式执行编码处理,在图像编码装置100应用变换量化旁路的情况下,可以跳过对自适应一次变换标志apt_flag的编码处理。换言之,图像编码装置100可以减少与对自适应一次变换标志apt_flag的编码有关的处理量和代码量。
此外,当图像编码装置100应用自适应一次变换时,可以跳过对变换跳过标志ts_flag的编码处理。具体地,可以减少与对变换跳过标志ts_flag的编码有关的处理量和代码量。
&lt;补充&gt;
上述条件Condition 1不限于表达式(72),并且可以被改变为以下给出的条件表达式(76),以使得针对每个颜色空间而对自适应一次变换标志进行编码(解码)。在这种情况下,优选地将由上文中给出的条件表达式(74)所表示的条件Condition 2改变为下述表达式(77)。
Condition 1b:
apt_enabled_flag
&&width<=MaxPTSize
&&height<=MaxPTSize
&&!transquant_bypass_flag
…(76)
Condition 2b:
ts_enabled_flag
&&width*height<=MaxTSSize
&&!transquant_bypass_flag
&&!apt_flag[compID]
…(77)
在图58和图59中描绘了与上述改变对应的语法表。应当注意,在上述语法中,countNonZeroCoeffs(compID)是返回由compID表示的颜色信号的变换块中存在的非零系数(有效系数)的数量的函数。条件表达式(76)中指示的条件Condition 1b对应于图58的语法中从上面起的第六阶段。同时,条件表达式(77)中所表示的条件Condition 2b对应于图59的语法中从上面起的第三阶段。
同时,上文中给出的条件Condition 2不限于条件表达式(74),并且例如在颜色空间标识符compID指示了亮度并且此外自适应一次变换标志apt_flag为1(真)的情况下,可以将其改变为以下给出的条件表达式(78),以使得省略对变换跳过标志ts_flag的编码(解码)。
Condition 2c:
ts_enabled_flag
&&width*height<=MaxTSSize
&&!transquant_bypass_flag
&&!(apt_flag&&compID==COMPONENT_Y)...(78)
在图60中描绘了与上述改变对应的语法表。countNonZeroCoeffs(compID)是返回由compID表示的颜色信号的变换块中存在的非零系数(有效系数)的数量的函数。条件Condition 2c对应于图60的语法的从上面起的第三阶段。
应当注意,上述编码处理在其可以被执行的范围内可以经过对步骤的处理顺序的改变或者对该处理的内容的改变。此外,在其可以被执行的范围内可以在算数运算方面对上文中给出的语法和条件表达式(72)至(78)进行改变。
&lt;解码&gt;
现在,描述图像解码装置200。同样在这种情况下,图像解码装置200具有与第一实施方式的情况的配置基本类似的配置。然而,这种情况下的图像解码装置200包括解码部,在将要跳过对通过对编码数据进行解码而获得的量化变换系数水平的逆量化、用于将通过对量化变换系数水平的逆量化而获得的二次变换系数变换为一次变换系数的逆二次变换、用于将一次变换系数变换为预测残差的逆一次变换的情况下,该解码部跳过对与自适应一次变换的开启/关断有关的第一信息的编码数据的解码,该预测残差是图像与该图像的预测图像之间的差异。
简言之,在将要跳过对通过对编码数据进行解码而获得的量化变换系数水平的逆量化、用于将通过对量化变换系数水平的逆量化而获得的二次变换系数变换为一次变换系数的逆二次变换、用于将一次变换系数变换为预测残差的逆一次变换的情况下,这种情况下的解码部211跳过对与自适应一次变换的开启/关断有关的第一信息的编码数据的解码,预测残差是图像与该图像的预测图像之间的差异。
此外,图像解码装置200包括解码部211,其在应用自适应一次变换(apt_flag==1)的情况下跳过对指示变换跳过的开启/关断的第二信息的编码数据的解码。具体地,在对通过对通过对编码数据的解码而获得的量化变换系数水平进行逆量化和逆二次变换而获得的一次变换系数执行对自适应一次变换的逆处理(即,逆自适应一次变换)的情况下,这种情况下的解码部211跳过对指示变换跳过的开启/关断的第二信息的编码数据的解码。
图61是描绘通过这种情况下的解码部211执行程序等而实现的与对一次变换标识符的解码有关的主要功能的示例的功能框图。如图61所示,通过执行程序,这种情况下的解码部211可以具有例如自适应一次变换标志解码部511作为与对自适应一次变换标志的解码有关的功能,并且可以具有变换跳过标志解码部512作为与对变换跳过标志的解码有关的功能。
自适应一次变换标志解码部511执行与对自适应一次变换标志apt_flag的编码数据的解码有关的处理,该自适应一次变换标志apt_flag是与逆自适应一次变换的开启/关断有关的信息。变换跳过标志解码部512执行与对变换跳过标志ts_flag的编码数据的解码有关的处理,该变换跳过标志ts_flag是与变换跳过的开启/关断有关的信息。
&lt;解码处理的流程&gt;
现在,描述由图像解码装置200执行的处理的流程的示例。这种情况下的图像解码装置200与在第一实施方式的情况下基本类似地执行图像解码处理。然而,在这种情况下,在图像解码处理的步骤S201(图13)中,图像解码装置200响应于变换量化旁路标志flagtransquant_bypass_flag的值等来执行对自适应一次变换标志apt_flag等的编码数据的解码。参照图62的流程图描述对自适应一次变换标志apt_flag进行解码的流程的示例。简言之,作为在图13的步骤S201中执行的解码处理的一部分,图62中描绘的解码处理被执行。通过任意方法来执行对其他编码参数和量化变换系数水平level的编码数据的解码。
在解码处理开始之后,在步骤S711中,自适应一次变换标志解码部511判定由下文中给出的条件表达式(72)表示的条件Condition 1是否为1(真)。在判定条件Condition 1为0(假)的情况下,即,在不对自适应一次变换标志进行解码的情况下,处理进行至步骤S712。
在步骤S712中,自适应一次变换标志解码部511跳过对自适应一次变换标志apt_flag的解码。在这种情况下,自适应一次变换标志解码部511解释不执行自适应一次变换,并对自适应一次变换标志apt_flag设置指示此的值(0)(apt_flag=0)。
具体地,如果不满足对自适应一次变换标志的编码条件,则由于从编码侧不传送自适应一次变换标志apt_flag,因此自适应一次变换标志解码部511跳过对自适应一次变换标志apt_flag的编码数据的解码。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
在步骤S712的处理结束之后,处理进行至步骤S714。同时,在步骤S711中判定条件condition 1为1(真)的情况下,即,在判定要对自适应一次变换标志进行解码的情况下,处理进行至步骤S713。
在步骤S713中,自适应一次变换标志解码部511对自适应一次变换标志apt_flag的编码数据进行解码。在步骤S713的处理结束之后,处理进行至步骤S714。
在步骤S714中,变换跳过标志解码部512判定由下文中给出的条件表达式(74)指示的Condition 2是否为1(真)。在判定条件Condition 2为0(假)的情况下,即,在判定不对变换跳过标志进行解码的情况下,处理进行至步骤S715。
在步骤S715中,变换跳过标志解码部512跳过对变换跳过标志ts_flag的解码。在这种情况下,变换跳过标志解码部512解释将不执行变换跳过,并且对变换跳过标志ts_flag设置指示此的值(0)(ts_flag=0)。
具体地,如果不满足对变换跳过标志的编码条件,则由于从编码侧不发送变换跳过标志ts_flag,因此变换跳过标志解码部512跳过对变换跳过标志ts_flag的编码数据的解码。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
在步骤S715的处理结束之后,解码处理结束并且处理返回至图13。另一方面,在步骤S714中判定条件Condition 2为1(真)的情况下,即,在要对变换跳过标志进行解码的情况下,处理进行至步骤S716。
在步骤S716中,变换跳过标志解码部512对变换跳过标志ts_flag的编码数据进行解码。在步骤S716的处理结束之后,解码处理结束,并且处理返回至图13。
通过以如上所述的方式执行解码处理,在应用变换量化旁路的情况下,图像解码装置200可以跳过对自适应一次变换标志apt_flag的解码处理。具体地,可以减少与对自适应一次变换标志apt_flag的解码有关的处理量和代码量。
此外,在应用自适应一次变换的情况下,图像解码装置200可以跳过对变换跳过标志ts_flag的解码处理。具体地,可以减少与对变换跳过标志ts_flag的解码有关的处理量和代码量。
&lt;补充&gt;
上文中描述的条件Condition 1不限于表达式(72),并且可以将其改变为下文中给出的条件表达式(76),使得针对每个颜色空间而对自适应一次变换标志进行解码。在这种情况下,期望根据下文中给出的条件表达式(77)来改变上文中给出的条件表达式(74)。
同时,上文中给出的条件Condition 2不限于上文中给出的条件表达式(74),并且在颜色空间标识符compID指示了亮度、此外自适应一次变换标志apt_flag指示0(假)的情况下,可以将其改变为上文中给出的条件表达式(78),以使得省略对变换跳过标志ts_flag的解码。
应当注意,上述解码处理在其可以被执行的范围内可以经过对步骤的处理顺序的改变或者对处理的内容的改变。此外,可以在其可以被执行的范围内在算数运算方面对上文中给出的语法和条件表达式(72)至(78)进行改变。
&lt;8.第八实施方式&gt;
&lt;相关技术的概述&gt;
在H.Jang、J.Lim、J.Nam、S.–H.Kim所著的“Signaling for primary transformand transform skip”JVET-E0037,ITU-T SG 16WP 3和ISO/IEC JTC 1/SC 29/WG 11的联合视频勘探组(JVET)第5次会议:日内瓦,瑞士,2017年1月12至20日(在下文中称为NPL 5)中指出,由于已经通过引入在NPL 2中公开的QTBT(四叉树+二叉树)而使编码单位CU和变换单位TU变得相同,因此在变换跳过标志ts_flag==1的情况下(在应用变换跳过的情况下),在CU层级用信号通知自适应一次变换标志apt_flag是冗余的。
因此,在NPL 5中,提出了将自适应一次变换标志apt_flag的语法位置设置在变换跳过标志ts_flag之后,以使得当ts_flag==1时省略对自适应一次变换标志apt_flag的解码(编码)。
然而,需要指出的是,根据NPL 5中公开的配置,编码效率降低。此外,根据NPL 5中公开的配置,在应用变换量化旁路(transquant_bypass_flag==1)的情况下,可以如在NPL 3或NPL 4的情况下那样类似地用信号通知自适应一次变换标志apt_flag。因此,存在与apt_flag相关的代码量可能变得冗余的可能性,从而导致代码量的不必要增加。
在图63中描绘了NPL 5中公开的方法中出现冗余代码量的情况的示例。图63中描绘的表格表示在NPL 5中公开的方法中可以根据变换量化旁路标志transquant_bypass_flag、变换跳过标志ts_flag、自适应一次变换标志apt_flag、一次变换标识符pt_idx和二次变换标识符st_idx采取的变化。
例如,在图63所描绘的表格中,在情况#6和情况#7中,当用信号通知transquant_bypass_flag==1时,用信号通知自适应一次变换标志apt_flag,而这是冗余的。
&lt;跳过对自适应一次变换标志和变换跳过标志的编码和解码&gt;
如上所述,在NPL 5所公开的方法中,存在下述可能性:在应用变换量化旁路(transquant_bypass_flag==1)的情况下,可能用信号通知自适应一次变换标志apt_flag,并且代码量可能不必要地增加。
因此,例如,如在图64的情况#6下那样,在进行图像编码时,在变换量化旁路标志transquant_bypass_flag==1的情况下(在指示要执行变换量化旁路的情况下),跳过(省略)对自适应一次变换标志apt_flag的编码。这使得可以抑制编码效率的降低。
此外,例如,如图64的情况#4下那样,在变换跳过标志ts_flag==1的情况下(在要应用变换跳过的情况下),跳过(省略)对自适应一次变换标志apt_flag的编码。这使得可以抑制编码效率的降低。
此外,例如,如在图64的情况#6下那样,在进行图像解码时,在变换量化旁路标志transquant_bypass_flag==1的情况下,跳过(省略)对自适应一次变换标志apt_flag的解码。这使得可以抑制编码效率的降低。
此外,例如,如在图64的情况#4下那样,在变换跳过标志ts_flag==1的情况下,跳过(省略)对自适应一次变换标志apt_flag的解码。这使得可以抑制编码效率的降低。
&lt;语法&gt;
在图65和图66中描绘了其中描述了表示如上所述的控制的伪代码的语法表的示例。应当注意,在语法中,countNonZeroCoeffs(compID)是返回由compID表示的颜色信号的变换块中存在的非零系数(有效系数)的数量的函数。在图65和图66的示例的情况下,与图54中设置在从上面起的第六阶段至第八阶段(在图65中从上方起的第五阶段与第六阶段之间)的自适应一次变换标志apt_flag相关的描述被移动至图66中从上面起的第五阶段和第六阶段。此外,变换跳过标志ts_flag为0(假)并且变换量化旁路标志transquant_bypass_flag为0(假)是对自适应一次变换标志apt_flag进行编码(对自适应一次变换标志apt_flag的编码数据进行解码)的条件之一。
具体地,在变换量化旁路标志transquant_bypass_flag为1(真)的情况下,即,在要跳过(逆)变换和(逆)量化的情况下,跳过对自适应一次变换标志apt_flag的编码(对自适应一次变换标志apt_flag的编码数据的解码)。此外,在变换跳过标志ts_flag为1(真)的情况下,即,在要执行变换跳过的情况下,跳过对自适应一次变换标志apt_flag的编码(对自适应一次变换标志apt_flag的编码数据的解码)。
&lt;编码&gt;
同样在这种情况下,图像编码装置100具有与第一实施方式的情况下的配置基本类似的配置。具体地,结合第一实施方式描述的图像编码装置100包括下述编码部,在将要跳过作为对预测残差的变换处理的一次变换、作为对通过对预测残差进行一次变换而获得的一次变换系数的变换处理的二次变换、以及对通过对一次变换系数进行二次变换而获得的二次变换系数的量化的情况下(在变换量化旁路时),或者在将要跳过变换的情况下(在变换跳过时),跳过对指示自适应一次变换的开启/关断的第一信息的编码,其中,预测残差是图像与该图像的预测图像之间的差异。
具体地,在将要跳过作为对预测残差的变换处理的一次变换、作为对通过对预测残差进行一次变换而获得的一次变换系数的变换处理的二次变换、以及对通过对一次变换系数进行二次变换而获得的二次变换系数的量化的情况下,或者在将要跳过变换时,该情况下的编码装置114跳过对指示自适应一次变换的开启/关断的第一信息的编码,其中,预测残差是图像与该图像的预测图像之间的差异。
由于通过该情况下的编码部114执行程序而进行的与对自适应一次变换标志的编码有关的功能类似于上文中参照图56描述的第七实施方式的情况下的功能,因此省略了对该功能的描述。
&lt;编码处理的流程&gt;
现在,描述由图像编码装置100执行的处理的流程的示例。在这种情况下,图像编码装置100与在第一实施方式的情况下基本类似地执行图像编码处理。然而,在这种情况下,图像编码装置100在图像编码处理的步骤S110(图9)中,响应于变换量化旁路标志transquant_bypass_flag的值等来执行对自适应一次变换标志apt_flag等的编码。参照图67的流程图来描述对自适应一次变换标志apt_flag等进行编码的流程的示例。具体地,图67中描绘的编码处理是作为在图9的步骤S110中执行的编码处理的一部分来执行的。通过任意方法来执行对其他编码参数和量化变换系数水平level的编码。
在编码处理开始之后,在步骤S721中,变换跳过标志标志编码部502判定由以下给出的条件表达式(79)指示的条件Condition 3是否为1(真)。条件Condition 3对应于参照图66描述的语法的从上面起的第三阶段。
Condition 3:
ts_enabled_flag
&&width*height<=MaxTSSize
&&!transquant_bypass_flag
…(79)
此处,MaxTSSize表示可以应用变换跳过的块大小的最大值,并且例如为16。应当注意,MaxTSSize可以不被设置为以上指定的值,并且可以根据限定报头信息中传达的MaxTSSize的参数来设置。
此外,在条件表达式(79)中,将块大小与阈值彼此进行比较的部分可以被替代成如在下述条件表达式(80)中的对数表示。
ts_enabled_flag
&&((log2TbWidth+log2TbHeight)<=log2MaxTSSize)
&&!transquant_bypass_flag
…(80)
此处,log2MaxTSSize的值为4。应当注意,log2MaxTSSize的值不限于此,并且可以根据限定报头信息中传达的限定log2MaxTSSize的参数来设置。
在步骤S721中判定条件Condition 3为1(真)的情况下,即,在判定要对变换跳过标志进行编码的情况下,处理进行至步骤S722。在步骤S722中,变换跳过标志编码部502对变换跳过标志ts_flag进行可变长编码以生成位串(编码数据),并且输出该编码数据。在步骤S722的处理结束之后,处理进行至步骤S723。
另一方面,在步骤S721中判定条件Condition 3为0(假)的情况下,即,在判定不对变换跳过标志进行编码的情况下,跳过步骤S722的处理,并且处理进行至步骤S723。
如果不满足变换跳过标志的编码条件,则不需要向解码侧传送变换跳过标志ts_flag。因此,变换跳过标志编码部502跳过对变换跳过标志ts_flag的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
在步骤S723中,自适应一次变换标志编码部501判定以下给出的条件表达式(81)中表示的条件Condition4是否为1(真)。条件Condition 4对应于参照图66描述的语法的从上面起的第五阶段。
Condition 4:
apt_enabled_flag
&&compID==COMPONENT_Y
&&width<=MaxPTSize
&&height<=MaxPTSize
&&!ts_flag[compID]
&&!transquant_bypass_flag
…(81)
此处,MaxPTSize表示可以应用自适应一次变换的块大小的最大值,并且例如为64。应当注意,MaxPTSize不限于上述值,并且可以根据限定报头信息中传达的MaxPTSize的参数来设定。
此外,在条件表达式(81)中,将块大小与阈值彼此进行比较的部分可以被替代成如下述条件表达式(82)中的对数表示。
apt_enabled_flag
&&compID==COMPONENT_Y
&&log2TbWidth<=log2MaxPTSize
&&log2TbHeight<=log2MaxPTSize
&&!ts_flag[compID]
&&!transquant_bypass_flag…(82)
此处,log2MaxPTSize的值为6。应当注意,log2MaxPTSize的值不限于此,并且可以根据限定报头信息中传达的log2MaxPTSize的参数来设置。
在步骤S723中判定条件Condition 4为1(真)的情况下,即,在判定要对自适应一次变换标志进行编码的情况下,处理进行至步骤S724。在步骤S724中,自适应一次变换标志编码部501对自适应一次变换标志apt_flag进行可变长编码以生成位串(编码数据),并且输出该编码数据。编码处理结束并且处理返回至图9。在步骤S724的处理结束之后,编码处理结束并且处理返回至图9。
另一方面,在步骤S723中判定条件Condition 4为0(假)的情况下,即,在判定不对自适应一次变换标志进行编码的情况下,跳过步骤S724的处理并且编码处理结束,然后,处理返回至图9。
如果不满足对自适应一次变换标志的编码条件,则不需要向解码侧发送自适应一次变换标志apt_flag。因此,自适应一次变换标志编码部501跳过对自适应一次变换标志apt_flag的编码。由于这使得可以跳过对冗余信息的编码,因此可以抑制编码处理的负荷的增加并且抑制编码效率的降低。
通过该编码而获得的自适应一次变换标志apt_flag的编码数据和变换跳过标志ts_flag的编码数据被包括在包括量化变换系数水平level的编码数据的比特流中。
通过以如上所述的方式执行编码处理,图像编码装置100可以在要应用变换量化旁路的情况下跳过对自适应一次变换标志apt_flag的编码处理。具体地,可以减少与对自适应一次变换标志apt_flag的编码有关的处理量和代码量。
此外,在要应用变换跳过的情况下,图像编码装置100可以跳过对自适应一次变换标志apt_flag的编码处理。具体地,可以减少与对自适应一次变换标志apt_flag的编码有关的处理量和代码量。
&lt;补充&gt;
上述条件Condition 4不限于表达式(81),并且可以将其改变为以下给出的条件表达式(83),以使得针对每个颜色空间而对自适应一次变换标志进行编码(解码)。
Condition 4a:
apt_enabled_flag&&compID==COMPONENT_Y
&&width<=MaxPTSize
&&height<=MaxPTSize
&&!ts_flag[compID]&&!transquant_bypass_flag
…(83)
在图68中描绘了与上述改变对应的语法表。应当注意,在语法中,countNonZeroCoeffs(compID)是返回由compID表示的颜色信号的变换块中存在的非零系数(有效系数)的数量的函数。条件Condition 4a对应于图68中的语法的从上面起的第五阶段。
应当注意,在可以实施的范围内可以执行对上述编码处理的步骤的处理顺序的改变或者内容的改变。此外,在可以实施的范围内可以改变与上述的语法和条件表达式(79)至(83)有关的算术运算。
&lt;解码&gt;
现在,描述图像解码装置200。同样在这种情况下,图像解码装置200具有与第一实施方式的情况中的配置基本类似的配置。然而,这种情况下的图像解码装置200包括解码部,在将要跳过对通过对编码数据进行解码而获得的量化变换系数水平的逆量化、用于将通过对量化变换系数水平进行逆量化而获得的二次变换系数变换为一次变换系数的逆二次变换、以及用于将一次变换系数变换为预测残差的逆一次变换的情况下,或者在将要跳过变换的情况下(在进行变换跳过时),该解码部跳过对与自适应一次变换的开启/关断有关的第一信息的编码数据的解码,其中,预测残差是图像与该图像的预测图像之间的差异。
具体地,在将要跳过对通过对编码数据进行解码而获得的量化变换系数水平的逆量化、用于将通过对量化变换系数级进行逆量化而获得的二次变换系数变换为一次变换系数的逆二次变换、以及用于将一次变换系数变换为预测残差的逆一次变换的情况下,或者在将要跳过变换的情况下,这种情况下的解码部211跳过对与自适应一次变换的开启/关断有关的第一信息的编码数据的解码,其中,该预测残差是图像与该图像的预测图像之间的差异。
由于通过该情况下的解码部211执行程序而进行的与对自适应一次变换标志的编码有关的功能类似于上文中参照图61描述的第七实施方式的情况下的功能,因此省略了对该功能的描述。
&lt;解码处理的流程&gt;
现在,描述由图像解码装置200执行的处理的流程的示例。在这种情况下,图像解码装置200与在第一实施方式的情况下基本类似地执行图像解码处理。然而,在这种情况下,在图像解码处理的步骤S201(图13)中,图像解码装置200响应于变换量化旁路标志transquant_bypass_flag的值等来执行对自适应一次变换标志apt_flag等的编码数据的解码。参照图69的流程图来描述对自适应一次变换标志apt_flag等进行解码的流程的示例。具体地,图69中描绘的解码处理是作为在图13的步骤S201中执行的解码处理的一部分来执行的。通过任意方法来执行对其他编码参数和量化变换系数水平level的解码。
在解码处理开始之后,在步骤S731中,变换跳过标志解码部512判定由下文中给出的条件表达式(79)表示的条件Condition 3是否为1(真)。在判定条件Condition 3为0(假)的情况下,即,在判定不对变换跳过标志进行解码的情况下,处理进行至步骤S732。
在步骤S732中,变换跳过标志解码部512跳过对变换跳过标志ts_flag的解码。在这种情况下,变换跳过标志解码部512解释将不执行变换跳过,并且对变换跳过标志ts_flag设置指示此的值(0)(ts_flag=0)。
具体地,如果不满足对变换跳过标志的编码条件,则不从编码侧传送变换跳过标志ts_flag,因此,变换跳过标志解码部512跳过对变换跳过标志ts_flag的编码数据的解码。由于这使得可以跳过对冗余信息的编码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
在步骤S732的处理结束之后,处理进行至步骤S734。此外,在步骤S731中判定条件Condition 3为1(真)的情况下,即,在判定要对变换跳过标志进行解码的情况下,处理进行至步骤S733。
在步骤S733中,变换跳过标志解码部512对变换跳过标志ts_flag的编码数据进行解码。在步骤S733的处理结束之后,处理进行至步骤S734。
在步骤S734中,自适应一次变换标志解码部511判定由下文中给出的条件表达式(81)表示的条件Condition 4是否为1(真)。在判定Condition 4为0(假)的情况下,即,在判定不会对自适应一次变换标志进行解码的情况下,处理进行至步骤S735。
在步骤S735中,自适应一次变换标志解码部511跳过对自适应一次变换标志apt_flag的解码。在这种情况下,自适应一次变换标志解码部511解释不执行自适应一次变换,并对自适应一次变换标志apt_flag设置指示此的值(0)(apt_flag=0)。解码处理结束并且处理返回至图13。
具体地,如果不满足对自适应一次变换标志的编码条件,则不从编码侧传送自适应一次变换标志apt_flag,因此,自适应一次变换标志解码部511跳过对自适应一次变换标志apt_flag的编码数据的解码。由于这使得可以跳过对冗余信息的解码,因此可以抑制解码处理的负荷的增加并且抑制编码效率的降低。
在步骤S735的处理结束之后,解码处理结束并且处理返回至图13。此外,在步骤S734中判定条件Condition 2为1(真)的情况下,即,在判定要对变换跳过标志进行解码的情况下,处理进行至步骤S736。
在步骤S736中,自适应一次变换标志解码部511对自适应一次变换标志apt_flag的编码数据进行解码。在步骤S736的处理结束之后,解码处理结束并且处理返回至图13。
通过以如上所述的方式执行解码处理,在要应用变换量化旁路的情况下或者在要应用变换跳过的情况下,图像解码装置200可以跳过对自适应一次变换标志apt_flag的解码处理。具体地,可以减少与对自适应一次变换标志apt_flag的解码有关的处理量和代码量。
应当注意,可以在可以实施的范围内执行对上述解码处理的步骤的处理顺序的改变或者处理的内容的改变。此外,可以在可以实施的范围内改变与上文中描述的语法或条件表达式(79)至(82)有关的算术运算。
&lt;9.第九实施方式&gt;
&lt;信息的数据单位&gt;
在前面的描述中描述的与图像有关的信息或者与对图像(或要成为目标的数据)的编码和解码有关的信息的数据单位是任意设定的并且不限于上述示例。例如,可以针对每个TU、TB、PU、PB、CU、LCU、子块、块、图块、条带、图片、序列或成分设置信息,或者可以以这样的数据单位中的数据为目标。当然,针对每条信息而设置数据单位。换言之,所有信息可以不是针对每个相同的数据单位而设置的(不是以所有信息为目标)。应当注意,这些信息的存储位置是任意的,并且这样的信息可以存储在上述的数据单位的报头、参数集等中。此外,该信息可以存储在多个位置中。
&lt;控制信息&gt;
可以从编码侧向解码侧传送与结合前述实施方式描述的本技术有关的控制信息。例如,可以发送用于控制是否允许(或禁止)应用上述本技术的控制信息(例如,enabled_flag)。此外,可以传送用于在允许(或禁止)应用上述本技术的情况下指定块大小的上限或下限或者两者的控制信息。
&lt;编码和解码&gt;
本技术可以应用于其中执行一次变换、二次变换和编码(解码、逆二次变换和逆一次变换)的任意图像编码和解码。具体地,变换(逆变换)、量化(逆量化)、编码(解码)、预测等的规范是任意的并且不限于上文中描述的示例。例如,在变换(逆变换)中,可以执行除(逆)一次变换和(逆)二次变换之外的(逆)变换(即,三种或更多种(逆)变换)。此外,编码(解码)可以是可逆型或不可逆型。此外,可以省略量化(逆量化)、预测等。此外,可以执行上文未描述的处理,诸如滤波器处理。
例如,作为环路滤波器,可以应用去块滤波器、样本自适应偏移(SAO;SampleAdaptive Offset)或者自适应环路滤波器(ALF;Adaptive Loop Filter)。应当注意,在要执行无损编码的情况下,在图像编码装置100中,变换量化旁路有效标志transquant_bypass_enabled_flag被设置为1并被编码,并且变换量化旁路标志transquant_bypass_flag被设置为1并被编码。因此,在针对每个预定单位(例如,CTU或CU)的变换量化旁路标志transquant_bypass_flag为1的情况下,需要省略具有校正解码图像的作用的滤波器或环路滤波器(去块滤波器、样本自适应偏移、自适应环路滤波器)的处理。此外,在针对每个预定单位的变换量化旁路标志transquant_bypass_flag为1的情况下,通过省略关于具有用于校正解码图像的作用的滤波器或环路滤波器(去块滤波器、样本自适应偏移、自适应环路滤波器)的、对针对每个预定单位的语法因子的编码,可以减少冗余代码量。例如,在自适应环路滤波器的情况下,省略对诸如滤波器系数或滤波器处理的开启/关断标志的语法因子的编码。
类似地,对通过无损编码而编码的编码数据进行解码的图像解码装置200对变换量化旁路有效性标志transquant_bypass_enabled_flag进行解码,并且针对每个预定单位(例如,CTU或CU)对变换量化旁路标志transquant_bypass_flag进行解码。因此,在每个预定单位的变换量化旁路标志transquant_bypass_flag为1的情况下,需要省略具有用于校正解码图像的作用的滤波器或环路滤波器(去块滤波器、样本自适应偏移、自适应环路滤波器)的处理。此外,在每个预定单位的变换量化旁路标志transquant_bypass_flag为1的情况下,通过省略对关于具有用于校正解码图像的作用的滤波器或环路滤波器(去块滤波器、样本自适应偏移、自适应环路滤波器)的、针对每个预定单位的语法因子进行解码,可以减少与对冗余代码的解码有关的处理量。例如,在自适应环路滤波器的情况下,省略对诸如滤波器系数或滤波器处理的开启/关断标志的语法因子的解码。
&lt;本技术的应用领域&gt;
应用本技术的系统、装置、处理部等可以应用于任意领域,诸如,例如运输、医疗、犯罪预防、农业、畜牧业、矿业、美容、工厂、消费性电子产品、天气、自然监控领域等。
例如,本技术还可以应用于传送为欣赏提供的图像的系统或设备。此外,例如,本技术还可以应用于为运输提供的系统或设备。此外,例如,本技术还可以应用于为安全提供的系统或设备。此外,例如,本技术还可以应用于为运动提供的系统或设备。此外,例如,本技术还可以应用于为农业提供的系统或设备。此外,例如,本技术还可以应用于为畜牧业提供的系统或设备。此外,本技术可以应用于监视自然(诸如,例如火山、森林、海洋等)的状态的系统或设备。此外,本技术可以应用于用于观测例如天气、温度、湿度、风速、日照时数等的气象观测系统或气象观测设备。此外,本技术还可以应用于用于观察野生动物(诸如,例如鸟类、鱼类、爬行动物、两栖动物、哺乳动物、昆虫、植物等)的生态的系统、设备等。
&lt;应用于多视图图像编码与解码系统&gt;
上文中描述的一系列处理可以应用于多视图图像编码与解码系统,该系统执行对包括多个视点(视图(view))的图像的多视图图像的编码和解码。在这种情况下,本技术可以应用于对每个视点(视图(view))进行编码或解码。
&lt;应用于分层图像编码与解码系统&gt;
此外,上述一系列处理可以应用于分层图像编码(可伸缩编码)与解码系统,该系统执行对以多个层(层级)分层(分层级)的分层图像的编码和解码,以具有关于预定参数的可伸缩性(scalability)功能。在这种情况下,本技术可以应用于对每个层级(层)的编码和解码。
&lt;计算机&gt;
虽然上述一系列处理可以通过硬件来执行,但也可以以其他方式通过软件来执行。在通过软件来执行这一系列处理的情况下,将构成该软件的程序安装到计算机中。此处,计算机包括并入专用硬件中的计算机,例如,可以通过安装各种程序来执行各种功能的通用的个人计算机等。
图70是描绘根据程序来执行上述一系列处理的计算机的硬件配置的示例的框图。
在图70所示的计算机800中,CPU(中央处理单元)801、ROM(只读存储器)802和RAM(随机存取存储器)803通过总线804彼此连接。
输入/输出接口810也连接至总线804。输入部811、输出部812、存储部813、通信部814和驱动器815连接至输入/输出接口810。
输入部811包括例如键盘、鼠标、麦克风、触摸面板、输入端子等。输出部812包括显示器、扬声器、输出端子等。存储部813包括例如硬盘、RAM盘、非易失性存储器等。通信部814包括例如网络接口。驱动器815驱动诸如磁盘、光盘、磁光盘、半导体存储器等的可移动介质821。
在以如上所述的方式配置的计算机中,CPU 801通过输入/输出接口810和总线804将例如存储在存储部813中的程序加载到RAM 803中,并且执行该程序以实现上述一系列处理。还适当地将在CPU 801执行各种处理时所需的数据等存储在RAM 803中。
由计算机(CPU 801)执行的程序可以被记录在例如作为封装介质等的可移动介质821中并被应用。在这种情况下,通过将可移动介质821安装在驱动器815上,可以通过输入/输出接口810将程序安装到存储部813中。
此外,可以通过诸如局域网、因特网或数字卫星广播的有线或无线传输介质来提供该程序。在这种情况下,程序可以由通信部814接收并且被安装到存储部813中。
此外,可以将程序预先安装到ROM 802或存储部813中。
&lt;本技术的应用&gt;
根据上文中描述的任何实施方式的图像编码装置100或图像解码装置200可以应用于:诸如发送器或接收器的各种电子装置,其例如用于通过卫星广播、诸如有线TV的有线广播或者因特网进行分发、通过蜂窝通信等向终端分发;或者将图像记录在诸如光盘、磁盘、闪速存储器等的介质上的记录装置;用于从如上所述的存储介质再现图像的再现装置等。
&lt;第一应用示例:电视接收器&gt;
图71是示出应用了上文中描述的任何实施方式的电视装置的示意性配置的示例的视图。电视装置900包括天线901、调谐器902、解复用器903、解码器904、视频信号处理部905、显示部906、音频信号处理部907、扬声器908、外部接口(I/F)部909、控制部910、用户接口(I/F)部911和总线912。
调谐器902从通过天线901接收到的广播信号中提取期望频道的信号,并且对所提取的信号进行解调。然后,调谐器902将通过解调而获得的编码比特流输出至解复用器903。具体地,调谐器902充当电视装置900中的传送部,该传送部接收其中图像经编码的编码流。
解复用器903从编码比特流中将观看目标的广播节目的视频流和音频流解复用,并将解复用后的流输出至解码器904。此外,解复用器903从编码比特流中提取诸如EPG(电子节目指南(EPG)等辅助数据,并将所提取的数据提供至控制部910。应当注意,解复用器903可以在编码比特流处于加扰状态的情况下执行解扰。
解码器904对从解复用器903输入的视频流和音频流进行解码。然后,解码器904将通过解码处理而生成的视频数据输出至视频信号处理部905。此外,解码器904将通过解码处理而生成的音频数据输出至音频信号处理部907。
视频信号处理部905再现从解码器904输入的视频数据,并且使显示部906显示视频。此外,视频信号处理部905可以使显示部906显示通过网络提供的应用画面图像。此外,视频信号处理部905可以根据设置对视频数据执行附加处理,例如,诸如噪声消除等。此外,视频信号处理部905可以生成GUI(图形用户界面)的图像(例如,诸如菜单、按钮、光标等),并且使所生成的图像叠加在输出图像上。
显示部906由从视频信号处理部905提供的驱动信号驱动,并且将视频或图像显示在显示设备(例如,液晶显示器、等离子体显示器、OELD(有机电致发光显示器)(有机EL显示器)等)的视频面上。
音频信号处理部907对从解码器904输入的音频数据执行诸如D/A转换、放大等的再现处理,并且使得从扬声器908输出声音。此外,音频信号处理部907可以执行对音频数据的附加处理,例如噪声消除等。
外部接口部909是用于将电视装置900与外部装置或网络彼此连接的接口。例如,解码器904可以对通过外部接口部909接收到的视频流或音频流进行解码。具体地,外部接口部909还充当电视装置900中的传送部,该传送部接收其中图像经编码的编码流。
控制部910包括诸如CPU的处理器和诸如RAM、ROM等的存储器。存储器存储CPU要执行的程序、节目数据、EPG数据、通过网络获取的数据等。例如在启动电视装置900时,存储器中存储的程序被读取到CPU中并由CPU执行。CPU响应于例如从用户接口部911输入的操作信号来执行程序以控制电视装置900的操作。
用户接口部911连接至控制部910。用户接口部911包括例如用于允许用户操作电视装置900的按钮和开关、用于远程控制信号的接收部等。用户接口部911检测用户通过所提及的部件进行的操作并生成操作信号,并且将所生成的操作信号输出至控制部910。
总线912将调谐器902、解复用器903、解码器904、视频信号处理部905、音频信号处理部907、外部接口部909以及控制部910彼此连接。
在以如上所述的方式配置的电视装置900中,解码器904可以具有上文中描述的图像解码装置200的功能。具体地,解码器904可以通过上文中结合前述实施方式描述的方法对编码数据进行解码。通过这样的解码,电视装置900可以抑制接收到的编码比特流的编码效率的降低。
此外,在以如上所述的方式配置的电视装置900中,视频信号处理部905可以例如被配置成对从解码器904提供的图像数据进行编码,并且通过外部接口部909将获得的编码数据输出至电视装置900的外部。此外,视频信号处理部905可以具有上文中描述的图像编码装置100的功能。简言之,视频信号处理部905可以通过上文中结合实施方式描述的方法来对从解码器904提供的图像数据进行编码。通过这样的编码,电视装置900可以抑制要输出的编码数据的编码效率的降低。
&lt;第二应用示例:便携式电话机&gt;
图72是示出应用了上文中描述的实施方式的便携式电话机的示意性配置的示例的视图。便携式电话机920包括天线921、通信部922、音频编解码器923、扬声器924、麦克风925、摄像装置部926、图像处理部927、解复用部928、记录与再现部929、显示部930、控制部931、操作部932和总线933。
天线921连接至通信部922。扬声器924和麦克风925连接至音频编解码器923。操作部932连接至控制部931。总线933将通信部922、音频编解码器923、摄像装置部926、图像处理部927、解复用部928、记录与再现部929、显示部930和控制部931彼此连接。
便携式电话机920以包括语音通话模式、数据通信模式、图像拾取模式和视频电话模式的各种操作模式来执行诸如发送和接收语音信号、发送和接收电子邮件或图像数据、拾取图像、记录数据等操作。
在语音通话模式下,由麦克风925生成的模拟语音信号被提供至音频编解码器923。音频编解码器923将模拟语音信号转换成语音数据,并且对转换后的语音数据进行A/D转换和压缩。然后,音频编解码器923将压缩后的语音数据输出至通信部922。然后,通信部922对该语音数据进行编码和调制以生成传输信号。然后,通信部922通过天线921将所生成的传输信号发送至基站(未示出)。另一方面,通信部922将通过天线921接收到的无线信号进行放大并和频率转换以获取接收信号。然后,通信部922对接收信号进行解调和解码以生成语音数据,并且将所生成的语音数据输出至音频编解码器923。音频编解码器923对语音数据进行解压缩和D/A转换以生成模拟语音信号。然后,音频编解码器923将所生成的语音信号提供至扬声器924,以使得从扬声器924输出语音。
另一方面,在数据通信模式下,例如,控制部931响应于用户通过操作部932进行的操作而生成构成电子邮件的字符数据。此外,控制部931控制显示部930显示字符。此外,控制部931响应于通过操作部932的来自用户的传输指令来生成电子邮件数据,并且将所生成的电子邮件数据输出至通信部922。通信部922对所生成的电子邮件数据进行编码和调制以生成传输信号。然后,通信部922通过天线921将所生成的传输信号发送至基站(未示出)。另一方面,通信部922对通过天线921接收到的无线信号进行放大和频率转换以获取接收信号。然后,通信部922对接收信号进行解调和解码以恢复电子邮件数据,并且将已恢复的电子邮件数据输出至控制部931。控制部931控制显示部930显示电子邮件的内容并将电子邮件数据提供至记录与再现部929,以使得电子数据被写入其记录介质中。
记录与再现部929具有可读写的任意存储介质。例如,存储介质可以是内置型存储介质(诸如,RAM、闪速存储器等)、或者可在外部安装的存储介质(诸如,硬盘、磁盘、磁光盘、光盘、USB(通用串行总线)存储器、存储卡等)。
此外,在图像拾取模式下,例如,摄像装置部926拾取图像拾取对象的图像以生成图像数据,并且将所生成的图像数据输出至图像处理部927。图像处理部927对从摄像装置部926输入的图像数据进行编码,并将编码流提供至记录与再现部929,以将其写入记录与再现部的存储介质中。
此外,在图像显示模式下,记录与再现部929读出存储介质上记录的编码流并将该编码流输出至图像处理部927。图像处理部927对从记录与再现部929输入的编码流进行解码,并且将图像数据提供至显示部930以使该图像被显示。
此外,在视频电话模式下,例如,解复用部928对由图像处理部927编码的视频流和从音频编解码器923输入的音频流进行复用,并且将复用流输出至通信部922。通信部922对该流进行编码和调制以生成发送信号。然后,通信部922通过天线921将所生成的传输信号发送至基站(未示出)。另一方面,通信部922对通过天线921接收到的无线信号进行放大并频率转换以获取接收信号。发送信号和接收信号可以包括编码比特流。然后,通信部922对接收信号进行解调和解码以恢复该流,并且将经恢复的流输出至解复用部928。解复用部928从输入的流中将视频流和音频流解复用,并且将视频流输出至图像处理部927、同时将音频流输出至音频编解码器923。图像处理部927对视频流进行解码以生成视频数据。视频数据被提供至显示部930,通过该显示部显示一系列图像。音频编解码器923对音频流进行解压缩和D/A转换以生成模拟音频信号。然后,音频编解码器923将所生成的音频信号提供至扬声器924,以使得从扬声器924输出语音。
在以这种方式配置的便携式电话机920中,例如,图像处理部927可以具有上文中描述的图像编码装置100的功能。简言之,图像处理部927可以通过在对实施方式的前述描述中描述的方法对图像数据进行编码。通过这样的编码,便携式电话机920可以抑制编码数据的编码效率的降低。
此外,在以这种方式配置的便携式电话机920中,例如,图像处理部927可以具有上文中描述的图像解码装置200的功能。简言之,图像处理部927可以通过在上文中对实施方式的前述描述中描述的方法对编码数据进行解码。通过这样的解码,便携式电话机920可以抑制编码数据的编码效率的降低。
&lt;第三应用示例:记录与再现装置&gt;
图73示出了应用上文中描述的任何实施方式的记录与再现装置的示意性配置的示例。记录与再现装置940例如对接收到的广播节目的音频数据和视频数据进行编码,并且将编码数据记录在记录介质上。此外,记录与再现装置940可以对例如从不同装置获取的音频数据和视频数据进行编码,并且将数据记录在记录介质上。此外,记录与再现装置940响应于用户的指令来再现例如在监视器和扬声器上的记录介质上记录的数据。此时,记录与再现装置940对音频数据和视频数据进行解码。
记录与再现装置940包括调谐器941、外部接口(I/F)部942、编码器943、HDD(硬盘驱动器)部944、磁盘驱动器945、选择器946、解码器947、OSD(屏上显示)部948、控制部949以及用户接口(I/F)部950。
调谐器941从通过天线(未示出)接收到的广播信号中提取期望信道的信号,并对所提取的信号进行解调。然后,调谐器941将通过解调而获得的编码比特流输出至选择器946。换言之,调谐器941充当记录与再现装置940中的传送部。
外部接口部942是用于将记录与再现装置940与外部装置或网络彼此连接的接口。外部接口部942可以是例如IEEE(电气与电子工程师协会)1394接口、网络接口、USB接口、闪速存储器接口等。例如,通过外部接口部942接收到的视频数据和音频数据被输入至编码器943。换言之,外部接口部942充当记录与再现装置940中的传送部。
在从外部接口部942输入的视频数据和音频数据未处于编码状态的情况下,编码器943对该视频数据和音频数据进行编码。然后,编码器943将编码比特流输出至选择器946。
HDD部944将其中视频、音频的内容数据等的内容数据被压缩的编码比特流、各种程序以及其他数据记录在内部硬盘中。此外,在对视频和音频进行再现时,HDD部944从硬盘读出这样的数据。
磁盘驱动器945将数据记录在安装在其上的记录介质上并且从该记录介质读出数据。将被安装在磁盘驱动器945上的记录介质可以是例如DVD(数字通用盘)盘(DVD-Video、DVD-RAM(DVD-随机存取存储器)、DVD-R(DVD-可记录)、DVD-RW(DVD-可重写)、DVD+R(DVD+可记录)、DVD+RW(DVD+可重写)等)、或蓝光(Blu-ray,注册商标)盘等。
当记录视频和音频时,选择器946选择从调谐器941或编码器943输入的编码比特流,并且将所选择的编码比特流输出至HDD 944或磁盘驱动器945。另一方面,在再现视频和音频时,选择器946将从HDD 944或磁盘驱动器945输入的编码比特流输出至解码器947。
解码器947对编码比特流进行解码以生成视频数据和音频数据。然后,解码器947将生成的视频数据输出至OSD部948。此外,解码器947将生成的音频数据输出至外部扬声器。
OSD部948再现从解码器947输入的视频数据并显示视频。此外,OSD部948可以将GUI(例如,诸如菜单、按钮、光标等)的图像叠加在所显示的视频上。
控制部949包括诸如CPU等的处理器和诸如RAM、ROM等的存储器。存储器存储CPU要执行的程序、程序数据等。例如在启动记录与再现装置940时,存储器中存储的程序被读取到CPU中并由CPU执行。通过执行该程序,CPU例如响应于从用户接口部950输入的操作信号来控制记录与再现装置940的操作。
用户接口部950连接至控制部949。用户接口部950包括例如用于允许用户操作记录与再现装置940的按钮和开关、远程控制信号的接收部等。用户接口部950检测用户通过这些部件进行的操作以生成操作信号,并且将所生成的操作信号输出至控制部949。
在以这种方式配置的记录与再现装置940中,例如,编码器943可以具有上述图像编码装置100的功能。简言之,编码器943可以通过在对实施方式的前述描述中描述的方法来对图像数据进行编码。通过这样的编码,记录与再现装置940可以抑制编码数据的编码效率的降低。
此外,在以这种方式配置的记录与再现装置940中,例如,解码器947可以具有上文中描述的图像解码装置200的功能。简言之,解码器947可以通过在对实施方式的前述描述中描述的方法来对编码数据进行解码。通过这样的解码,记录与再现装置940可以抑制编码数据的编码效率的降低。
&lt;第四应用示例:图像拾取装置&gt;
图74描绘了应用上文中描述的任何实施方式的图像拾取装置的示意性配置的示例。图像拾取装置960拾取图像拾取对象的图像以生成图像,并且对图像数据进行编码并将其记录在记录介质上。
图像拾取装置960包括光学块961、图像拾取部962、信号处理部963、图像处理部964、显示部965、外部接口(I/F)部966、存储器部967、介质驱动器968、OSD部969、控制部970、用户接口(I/F)部971以及总线972。
光学块961连接至图像拾取部962。图像拾取部962连接至信号处理部963。显示部965连接至图像处理部964。用户接口部971连接至控制部970。总线972将图像处理部964、外部接口部966、存储器部967、介质驱动器968、OSD部969和控制部970彼此连接。
光学块961包括聚焦透镜、光圈机构等。光学块961在图像拾取部962的图像拾取面上形成图像拾取对象的光学图像。图像拾取部962包括诸如CCD(电荷耦合器件)图像传感器、CMOS(互补金属氧化物半导体)图像传感器等的图像传感器,并且通过光电转换将在图像拾取面上形成的光学图像转换成具有电信号形式的图像信号。然后,图像拾取部962将图像信号输出至信号处理部963。
信号处理部963对从图像拾取部962输入的图像信号执行各种摄像装置信号处理,诸如拐点校正、伽马校正、颜色校正等。信号处理部963将摄像装置信号处理后的图像数据输出至图像处理部964。
图像处理部964对从信号处理部963输入的图像数据进行编码以生成编码数据。然后,图像处理部964将所生成的编码数据输出至外部接口部966或介质驱动器968。此外,图像处理部964对从外部接口部966或介质驱动器968输入的编码数据进行解码以生成图像数据。然后,图像处理部964将所生成的图像数据输出至显示部965。此外,图像处理部964可以将从信号处理部963输入的图像数据输出至显示部965,以使图像被显示。此外,图像处理部964可以将从OSD部969获取的显示数据叠加在要被输出至显示部965的图像上。
OSD部969生成例如GUI(例如,诸如菜单、按钮、光标等)的图像,并且将所生成的图像输出至图像处理部964。
外部接口部966被配置成为例如USB输入/输出端子。例如,在打印图像时,外部接口部966将图像拾取装置960与打印机彼此连接。此外,根据场合需求,将驱动器连接至外部接口部966。将可移动介质(例如,诸如磁盘、光盘等)安装在驱动器上,并且可以将从该可移动介质读出的程序安装到图像拾取装置960中。此外,外部接口部966可以被配置为连接至诸如LAN、因特网等的网络的网络接口。换言之,外部接口部966充当图像拾取装置960的传送部。
要安装在介质驱动器968上的记录介质例如可以是任意可读写的可移动介质,诸如磁盘、磁光盘、光盘、半导体存储器等。此外,记录介质可以固定地安装在介质驱动器968上,以使得配置非便携式存储部,例如,诸如内置型硬盘驱动器或SSD(固态驱动器)。
控制部970包括诸如CPU等的处理器和诸如RAM、ROM等的存储器。存储器将CPU要执行的程序、程序数据等存储在其中。例如在启动图像拾取装置960时,存储器中存储的程序被读入CPU中并由CPU执行。通过执行该程序,CPU例如响应于从用户接口部971输入的操作信号来控制图像拾取装置960的操作。
用户接口部971连接至控制部970。用户接口部971包括例如用于允许用户操作图像拾取装置960的按钮、开关等。用户接口部971检测用户通过所述的部件进行的操作以生成操作信号,并将所生成的操作信号输出至控制部970。
在以这种方式配置的图像拾取装置960中,例如,图像处理部964可以具有上文中描述的图像编码装置100的功能。简言之,图像处理部964可以通过在对实施方式的前述描述中描述的任何方法来对图像数据进行编码。通过这样的编码,图像拾取装置960可以抑制编码数据的编码效率的降低。
此外,在以如上所述的方式配置的图像拾取装置960中,例如,图像处理部964可以具有上文中描述的图像解码装置200的功能。简言之,图像处理部964可以通过在对实施方式的前述描述中描述的任何方法来对编码数据进行解码。通过这样的解码,图像拾取装置960可以抑制编码数据的编码效率的降低。
&lt;第五应用示例:视频设备&gt;
此外,本技术例如还可以被实施为并入任意装置中或构成系统的装置中的任何构造,例如,诸如作为系统LSI(大规模集成)等的处理器、使用多个模块等的单元、将一些其他功能添加到单元的设置(即,装置的部分构造)。图75是描绘应用本技术的视频设备的示意性配置的示例的视图。
近年来,已经并且正在进行对电子装置的多功能化,并且在开发或制造中一些配置被现为销售、供应等情况下,越来越多地不仅发现将其实现为具有一种功能的构造的情况,而且还发现其中将具有彼此相关联的功能的多个构造组合并实施为具有多种功能的一个设备的情况。
图75中所示的视频设备1300具有这种多功能化的配置,并且是与具有与对图像的编码和/或解码(编码和解码之一或两者)有关的一种或多种功能的设备、具有与该一种或多种功能有关的一些其他功能的设备的组合。
如图75所示,视频设备1300包括:模块组,该模块组包括视频模块1311、外部存储器1312、电力管理模块1313、前端模块1314等;以及具有相关功能的设备,例如连接部1321、摄像装置1322、传感器1323等。
模块是其中收集有彼此相关的若干部分功能以使其具有相关功能的部分。虽然具体的物理配置是任意的,但是例如,可想到下述模块:其中,具有各个功能的电子电路元件(诸如,多个处理器、寄存器、电容器等)以及其他设备等布置在布线板等上并被集成。还可以想到将模块与另一模块、处理等组合以形成新模块。
在图75的示例的情况下,视频模块1311为具有与图像处理有关的功能的构造的组合,并且包括应用处理器、视频处理器、宽带调制解调器1333和RF模块1334。
处理器包括通过SoC(片上系统)集成在半导体芯片上的、具有预定功能的构造,并且被称为例如系统LSI(大规模集成)等。具有预定功能的构造可以是逻辑电路(硬件配置),可以是CPU、ROM、RAM等以及利用它们来执行的程序(软件配置),或者可以是它们二者的组合。例如,处理器可以包括逻辑电路、以及CPU、ROM、RAM等,以使得部分功能由逻辑电路(硬件配置)来实现,并且其他功能通过CPU执行的程序(软件配置)来实现。
图75中的应用处理器1331是执行与图像处理有关的应用的处理器。应用处理器1331执行的应用不仅可以执行算术运算处理以便实现预定功能,而且还可以控制视频模块1311内部和外部的构造,例如,诸如在需要时控制视频处理器1332等。
视频处理器1332是具有与对图像的编码和/或解码(编码和解码之一或两者)有关的功能的处理器。
宽带调制解调器1333对通过诸如因特网、公共电话网络等宽带线路执行的有线或无线(或者有线和无线二者)宽带通信传送的数据(数字信号)执行数字调制等,以将该数据转换成模拟信号,或者对通过该宽带通信而接收到的模拟信号进行转换以将模拟信号转换成数据(数字信号)。宽带调制解调器1333处理任意信息,例如,诸如视频处理器1332要处理的图像数据、根据图像数据编码的流、应用程序、设置数据等。
RF模块1334是对要通过天线发送或接收的RF(射频)信号执行频率转换、调制/解调、放大、滤波等的模块。例如,RF模块1334对宽带调制解调器1333生成的基带信号执行频率转换等以生成RF信号。此外,例如,RF模块1334对通过前端模块1314接收到的RF信号执行频率转换等以生成基带信号。
应当注意,如图75中的虚线1341所示,应用处理器1331和视频处理器1332可以被集成以便将其配置为单个处理器。
外部存储器1312是被设置在视频模块1311的外部并且具有由视频模块1311使用的存储装置的模块。尽管外部存储器1312的存储设备可以跳过任何物理构造来实现,但是由于通常其经常用于存储诸如以帧为单位的图像数据的大量数据,因此期望通过如DRAM(动态随机存取存储器)一样的、相对教便宜且具有大容量的半导体存储器来实现该存储设备。
电力管理模块1313管理和控制对视频模块1311(视频模块1311中的构造)的电力供应。
前端模块1314是向RF模块1334提供前端功能(在天线侧的发送/接收端的电路)的模块。如图75所示,前端模块1314例如包括天线部1351、滤波器1352和放大部1353。
天线部1351包括用于发送和接收无线信号的天线、以及外围配置。天线部1351发送从放大部1353提供的信号作为无线信号,并且将接收到的无线信号作为电信号(RF信号)提供至滤波器1352。滤波器1352对通过天线部1351接收到的RF信号执行滤波处理等,并且将处理后的RF信号提供至RF模块1334。放大部1353将从RF模块1334提供的RF信号放大,并且将经放大的RF信号提供至天线部1351。
连接部1321是具有与至外部的连接有关的功能的模块。连接部1321的物理配置是任意的。例如,连接部1321包括具有根据除了与宽带调制解调器1333兼容的通信标准外的其他标准的通信功能的构造、外部输入与输出端子等。
例如,连接部1321可以包括:具有符合无线通信标准(诸如,蓝牙(注册商标)、IEEE802.11(例如,Wi-Fi(无线保真,注册商标))、NFC(近场通信)、IrDA(红外数据协会)等)的通信功能的模块;用于发送和接收符合该标准的信号的天线等。此外,例如,连接部1321可以包括:具有符合有线通信标准(诸如,USB(通用串行总线)、HDMI(注册商标)(高清晰度多媒体接口)等)的通信功能的模块;符合该标准的端子等。此外,例如,连接部1321可以包括其他数据(信号)传送功能,诸如模拟输入与输出端子等。
应当注意,连接部1321可以包括数据(信号)的传送目的地的设备。例如,连接部1321可以包括用于从诸如磁盘、光盘、磁光盘、半导体存储器等记录介质中读出数据和向其写入数据的驱动器(不仅包括用于可移动介质的驱动器,而且还包括硬盘、SSD(固态驱动器)、NAS(网络附加存储装置)等)。此外,连接部1321可以包括图像或声音的输出设备(监视器、扬声器等)。
摄像装置1322是具有用于拾取图像拾取对象的图像以获得该图像拾取对象的图像数据的功能的模块。通过摄像装置1322的图像拾取而获得的图像数据例如被提供给视频处理器1332并由其进行编码。
传感器1323是具有下述任意传感器功能的模块,例如,诸如声音传感器、超声波传感器、光学传感器、照度传感器、红外传感器、图像传感器、旋转传感器、角度传感器、角速度传感器、速度传感器、加速度传感器、倾斜度传感器、磁识别传感器、冲击传感器、温度传感器等。由传感器1323检测到的数据例如被提供给应用处理器1331并被应用等使用。
在前面的描述中被描述为模块的配置可以被实现为处理器,相反地,被描述为处理器的配置可以被实现为模块。
在具有如上所述的配置的视频设备1300中,本技术可以应用于如下文所述的视频处理器1332。因此,视频设备1300可以被实施为应用了本技术的设备。
&lt;视频处理器的配置示例&gt;
图76是描绘应用了本技术的视频处理器1332(图75)的示意性配置的示例的视图。
在图76的示例的情况下,视频处理器1332具有接收视频信号和音频信号的输入并通过预定方法对其进行编码的功能、以及对经编码的视频数据和音频数据进行解码并且再现和输出视频信号和音频信号的功能。
如图76所示,视频处理器1332包括视频输入处理部1401、第一图像缩放部1402、第二图像缩放部1403、视频输出处理部1404、帧存储器1405和存储器控制部1406。视频处理器1332还包括编码-解码引擎1407、视频ES(基本流)缓冲器1408A和1408B、以及音频ES缓冲器1409A和1409B。此外,视频处理器1332包括音频编码器1410、音频解码器1411、复用部(MUX(复用器))1412、解复用部(DMUX(解复用器))1413和流缓冲器1414。
视频输入处理部1401获取例如从连接部1321(图75)等输入的视频信号并且将该视频信号转换成数字图像数据。第一图像缩放部1402对图像数据执行格式转换、图像的缩放处理等。第二图像缩放部1403响应于通过视频输出处理部1404的输出目的地处的格式来执行对图像的缩放处理,并且执行与第一图像缩放部1402对图像数据执行的格式转换、图像的缩放处理等类似的格式转换、对图像的缩放处理等。视频输出处理部1404对图像数据执行格式转换、成为模拟信号的转换等,并且将最后得到的模拟信号作为再现视频信号输出至例如连接部1321等。
帧存储器1405是用于由视频输入处理部1401、第一图像缩放部1402、第二图像缩放部1403、视频输出处理部1404以及编码-解码引擎1407共享的图像数据的存储器。帧存储器1405被实现为半导体存储器,例如,诸如DRAM等。
存储器控制部1406从编码-解码引擎1407接收同步信号,并且根据写入访问理表1406A中的对帧存储器1405的访问调度来控制对帧存储器1405的写入和读出访问。存储器控制部1406响应于由编码-解码引擎1407、第一图像缩放部1402、第二图像缩放部1403等执行的处理而更新访问管理表1406A。
编码-解码引擎1407执行对图像数据的编码处理和对作为图像数据的编码数据的视频流的解码处理。例如,编码-解码引擎1407对从帧存储器1405读出的图像数据进行编码,并且将经编码的图像数据作为视频流连续地写入视频ES缓冲器1408A中。此外,例如,编码-解码引擎1407从视频ES缓冲器1408B连续地读出视频流并对其进行解码,并且将经解码的视频流作为图像数据连续地写入帧存储器1405中。在这样的编码和解码中,编码-解码引擎1407使用帧存储器1405作为工作区。此外,编码-解码引擎1407在例如要开始对每个宏块进行处理的定时向存储器控制部1406输出同步信号。
视频ES缓冲器1408A对由编码-解码引擎1407生成的视频流进行缓冲,并且将所缓冲的视频流提供至复用部(MUX)1412。视频ES缓冲器1408B对从解复用部(DMUX)1413提供的视频流进行缓冲,并且将所缓冲的视频流提供至编码-解码引擎1407。
音频ES缓冲器1409A对由音频编码器1410生成的音频流进行缓冲,并且将所缓冲的音频流提供至复用部(MUX)1412。音频ES缓冲器1409B对从解复用部(DMUX)1413提供的音频流进行缓冲,并且将所缓冲的音频流提供至音频解码器1411。
音频编码器1410例如对从连接部1321等输入的音频信号进行数字转换,并且通过诸如MPEG音频方法、AC3(音频编码3(Audio Code number3))方法等预定方法来对数字音频信号进行编码。音频编码器1410将作为音频信号的编码数据的音频流连续地写入音频ES缓冲器1409A中。音频解码器1411对从音频ES缓冲器1409B提供的音频流进行解码,将其例如转换成模拟信号等,并且将最后得到的模拟信号作为再现音频信号提供至例如连接部1321等。
复用部(MUX)1412对视频流和音频流进行复用。复用的方法(即,通过复用而生成的比特流的格式)是任意的。此外,在进行这样的复用时,复用部(MUX)1412还可以向比特流添加预定的报头信息等。换言之,复用部(MUX)1412可以通过复用来转换流的格式。例如,复用部(MUX)1412对视频流和音频流进行复用以将这些流转换成传输流,该传输流是具有供传输的格式的比特流。此外,例如,复用部(MUX)1412对视频流和音频流进行复用以将其转换成具有供记录的文件格式的数据(文件数据)。
解复用部(DMUX)1413通过与复用部(MUX)1412进行复用的方法对应的方法来对其中视频流和音频流经复用的比特流进行解复用。简言之,解复用部(DMUX)1413从自流缓冲器1414读出的比特流中提取视频流和音频流(将视频流与音频流彼此分离)。简言之,解复用部(DMUX)1413可以通过解复用(复用部(MUX)1412的转换的逆转换)来转换流的格式。例如,解复用部(DMUX)1413可以通过经由流缓冲器1414获取传输流并对该传输流进行解复用来将例如从连接部1321、宽带调制解调器1333等提供的传输流转换成视频流和音频流。此外,例如,解复用部(DMUX)1413可以通过经由流缓冲器1414获取文件数据并对该文件数据进行解复用来将例如通过连接部1321从各种记录介质读出的文件数据转换成视频流和音频流。
流缓冲器1414对比特流进行缓冲。例如,流缓冲器1414对从复用部(MUX)1412提供的传输流进行缓冲,并且在预定定时或基于来自外部的请求等而将所缓冲的传输流提供至例如连接部1321、宽带调制解调器1333等。
此外,流缓冲器1414对从复用部(MUX)1412提供的文件数据进行缓冲,并且在预定定时或者基于来自外部的请求等而例如将所缓冲的文件数据提供至连接部1321等,以使得该文件数据被记录在各种记录介质上。
此外,流缓冲器1414对例如通过连接部1321、宽带调制解调器1333等获取的传输流进行缓冲,并且在预定定时或基于来自外部的请求等将所缓冲的传输流提供至解复用部(DMUX)1413。
此外,流缓冲器1414对例如通过连接部1321等从各种记录介质读出的文件数据进行缓冲,并且在预定定时或者基于来自外部的请求等将所缓冲的文件数据提供至解复用部(DMUX)1413。
现在,描述具有如上所述的配置的视频处理器1332的操作的示例。例如,从连接器1321等输入至视频处理器1332的视频信号由视频输入处理部1401转换为诸如4:2:2Y/Cb/Cr方法等预定方法中的数字图像数据,并被连续地写入帧存储器1405中。数字图像数据被读出到第一图像缩放部1402或第二图像缩放部1403中,并且经过转换为诸如4:2:0Y/Cb/Cr方法等预定方法中的数字图像数据的格式转换和缩放处理,然后再次被写入帧存储器1405中。编码-解码引擎1407对图像数据进行编码,并将其作为视频流写入视频ES缓冲器1408A中。
同时,从连接部1321等输入至视频处理器1332的音频信号由音频编码器1410进行编码并作为音频流写入音频ES缓冲器1409A中。
视频ES缓冲器1048A的视频流和音频ES缓冲器1409A的音频流被读出至复用部(MUX)1412并由其复用,以使得其被转换成传输流、文件数据等。由复用部(MUX)1412生成的传输流由流缓冲器1414缓冲,然后例如通过连接部1321、宽带调制解调器1333等被输出至外部网络。同时,由复用部(MUX)1412生成的文件数据由流缓冲器1414缓冲,然后被输出至例如连接部1321等,接着被记录到各种记录介质中。
另一方面,例如通过连接部1321、宽带调制解调器1333等从外部网络输入到视频处理器1332的传输流由流缓冲器1414缓冲,然后由解复用部(DMUX)1413解复用。同时,例如由连接部1321等从各种记录介质读出并被输入到视频处理器1332的文件数据由流缓冲器1414缓冲,然后由解复用部(DMUX)1413解复用。简言之,被输入至视频处理器1332的传输流或文件数据被解复用部(DMUX)1413解复用成视频流和音频流。
音频流通过音频ES缓冲器1409B被提供至音频解码器1411并由其进行解码以再现音频信号。同时,视频流在被写入视频ES缓冲器1408B之后被连续地读出,并且由编码-解码引擎1407进行解码并被写入帧存储器1405中。经解码的图像数据经过第二图像缩放部1403的缩放处理并被写入帧存储器1405中。然后,经解码的图像数据被读出到视频输出处理部1404中,并且被格式转换成诸如4:2:2Y/Cb/Cr格式的预定格式,此后,将其转换成模拟信号并且再现和输出视频信号。
在本技术应用于以如上所述的方式配置的视频处理器1332的情况下,根据上述各个实施方式的本技术可以应用于编码-解码引擎1407。具体地,例如,编码-解码引擎1407可以具有图像编码装置100的功能或者图像解码装置200的功能或者这两者。这使得可以获得与上文中参照图1至图69描述的各个实施方式的有益效果类似的有益效果。
应当注意,在编码-解码引擎1407中,本技术(即,图像编码装置100的功能或图像解码装置200的功能或它们两者)可以通过诸如逻辑电路等的硬件来实现或可以通过诸如并入的程序等软件来实现,或者还可以由它们两者来实现。
&lt;视频处理器的其他配置示例&gt;
图77是示出应用了本技术的视频处理器1332的示意性配置的不同示例的视图。在图77的示例的情况下,视频处理器1332具有通过预定方法对视频数据进行编码和解码的功能。
更具体地,如图77所示,视频处理器1332包括控制部1511、显示接口1512、显示引擎1513、图像处理引擎1514和内部存储器1515。视频处理器1332还包括编解码器引擎1516、存储器接口1517、复用与解复用部(MUX DMUX)1518、网络接口1519和视频接口1520。
控制部1511控制视频处理器1332中的处理部(诸如,显示接口1512、显示引擎1513、图像处理引擎1514、编解码器引擎1516等)的操作。
如图77所示,控制部1511包括例如主CPU 1531、副CPU 1532以及系统控制器1533。主CPU 1531执行用于控制视频处理器1332中的处理部的操作的程序等。主CPU 1531根据程序等生成控制信号,并将该控制信号提供至处理部(即,控制处理部的操作)。副CPU 1532起到主CPU 1531的辅助作用。例如,副CPU 1532执行由主CPU 1531执行的程序等的子处理、子例程等。系统控制器1533控制主CPU 1531和副CPU 1532的操作,以诸如指定主CPU 1531和副CPU 1532要执行的程序等。
显示接口1512在控制部1511的控制下将图像数据输出至例如连接部1321等。例如,显示接口1512将具有数字数据的形式的图像数据转换成模拟信号,并将图像数据作为再现视频信号或者将数字数据的图像数据按原样输出至连接部1321的监视器装置等。
显示引擎1513在控制部1511的控制下对图像数据执行诸如格式转换、大小转换、颜色区域转换等各种变换处理,以使得图像数据满足将在其上显示图像数据的图像的监视器装置等的硬件规范。
图像处理引擎1514在控制部1511的控制下对图像数据执行预定图像处理,例如,诸如用于图片质量改善的滤波处理等。
内部存储器1515是设置在视频处理器1332的内部以使得其由显示引擎1513、图像处理引擎1514和编解码器引擎1516共用的存储器。内部存储器1515用于例如在显示引擎1513、图像处理引擎1514与编解码器引擎1516之间执行数据传输。例如,内部存储器1515存储从显示引擎1513、图像处理引擎1514或编解码器引擎1516提供的数据,并且根据场合需求(例如,根据请求)向显示引擎1513、图像处理引擎1514或编解码器引擎1516提供数据。虽然该内部存储器1515可以由任何存储设备来实现,但是由于通常其经常用于存储诸如以块为单位的图像数据、参数等少量数据,因此优选地其由例如像SRAM(静态随机存取存储器)那样的、(例如与外部存储器1312相比)具有相对小的容量但响应速度高的半导体存储器来实现。
编解码器引擎1516执行与对图像数据的编码和解码有关的处理。与编解码器引擎1516兼容的编码和解码方法是任意的,并且这种方法的数量可以是一种或多种。例如,编解码器引擎1516可以具有多种编码和解码方法的编解码功能,并且通过从这些编解码功能中选择的编解码功能来执行对图像数据的编码或对编码数据的解码。
在图77描绘的示例中,编解码器引擎1516包括例如MPEG-2视频1541、AVC/H.2641542、HEVC/H.265 1543、HEVC/H.265(可伸缩)1544、HEVC/H.265(多视图)1545和MPEG-DASH1551,作为用于与编解码器相关的处理的功能块。
MPEG-2视频1541是通过MPEG-2方法对图像数据进行编码或解码的功能块。AVC/H.264 1542是通过AVC方法对图像数据进行编码或解码的功能块。HEVC/H.265 1543是通过HEVC方法对图像数据进行编码或解码的功能块。HEVC/H.265(可伸缩)1544是通过HEVC方法对图像数据进行可伸缩编码或可伸缩解码的功能块。HEVC/H.265(多视图)1545是通过HEVC方法对图像数据进行多视点编码或多视点解码的功能块。
MPEG-DASH 1551是用于通过MPEG-DASH(MPEG-Dynamic Adaptive StreamingoverHTTP,MPEG-基于HTTP的动态自适应流传输)方法发送和接收图像数据的功能块。MPEG-DASH是用于使用HTTP(超文本传输协议)执行对视频的流传输的技术,并且其特征之一是,从预先准备的并且在分辨率等方面彼此不同的多个编码数据中以分段为单位选择并发送适当的编码数据。MPEG-DASH 1551执行符合标准的流的生成、流的传送控制等,并且为了对图像数据进行编码和解码,使用上述的MPEG-2视频1541至HEVC/H.265(多视图)1545。
存储器接口1517是外部存储器1312的接口。从图像处理引擎1514或编解码器引擎1516提供的数据通过存储器接口1517被提供至外部存储器1312。同时,通过存储器接口1517将从外部存储器1312读出的数据提供至视频处理器1332(图像处理引擎1514或编解码器引擎1516)。
复用与解复用部(MUX DMUX)1518执行对与图像有关的各种数据(诸如,编码数据的比特流、图像数据、视频信号等)的复用和解复用。用于进行复用和解复用的方法是任意的。例如,在进行复用时,复用与解复用部(MUX DMUX)1518不仅可以将多个数据收集到一个数据中,而且还可以向该数据添加预定的报头信息等。此外,在进行解复用时,复用与解复用部(MUX DMUX)1518不仅可以将一个数据分割成多个数据,而且还可以向分割后的数据添加预定的报头信息等。简言之,复用与解复用部(MUX DMUX)1518可以通过进行复用和解复用来转换数据格式。例如,复用与解复用部(MUX DMUX)1518可以对比特流进行复用以将其转换成传输流,该传输流是具有供传输的格式的比特流或具有供记录的文件格式的数据(文件数据)。当然,复用与解复用部(MUX DMUX)1518可以通过进行解复用来执行逆转换。
网络接口1519是例如用于宽带调制解调器1333、连接部1321等的接口。视频接口1520是例如用于连接部1321、摄像装置1322等的接口。
现在,描述如上所述的视频处理器1332的操作的示例。例如,如果通过连接器1321、宽带调制解调器1333等从外部网络接收到传输流,则通过网络接口1519将该传输流提供至复用与解复用部(MUX DMUX)1518并由其进行解复用,然后由编解码器引擎1516解码。通过编解码器引擎1516的解码而获得的图像数据例如经过图像处理引擎1514的预定图像处理、并进一步经过显示引擎1513的预定转换,并且通过显示接口1512被提供至例如连接部1321等,以使得其图像显示在监视器上。同时,例如,通过编解码器引擎1516的解码而获得的图像数据由编解码器引擎1516重新编码并被复用与解复用部(MUX DMUX)1518复用,以使得其被转换成文件数据。文件数据例如通过视频接口1520被输出至连接部1321等并被记录在各种记录介质上。
此外,例如由连接部1321等从未示出的记录介质读出的、作为编码图像数据的编码数据的文件数据通过视频接口1520被提供至复用与解复用部(MUX DMUX)1518并被其解复用,此后,它们由编解码器引擎1516进行解码。通过编解码器引擎1516的解码而获得的图像数据经过图像处理引擎1514的预定图像处理并进一步经过显示引擎1513的预定转换,此后,通过显示接口1512将它们提供至例如连接部1321等,以使得其图像显示在监视器上。同时,例如,通过编解码引擎1516的解码而获得的图像数据由编解码引擎1516重新编码并由复用与解复用部(MUX DMUX)1518复用,以使得其被转换成传输流。传输流通过网络接口1519被提供至例如连接部1321、宽带调制解调器1333等,且并被传送至未示出的不同装置。
应当注意,利用例如内部存储器1515或外部存储器1312来执行图像数据或其他数据在视频处理器1332中的各处理部之间的传输。此外,电力管理模块1313控制例如对控制部1511的电力供应。
在本技术应用于以如上所述的方式配置的视频处理器1332的情况下,根据上文中描述的各个实施方式的本技术可以应用于编解码器引擎1516。简言之,例如,编解码器引擎1516可以具有图像编码装置100的功能或图像解码装置200的功能、或者这两者。通过这种配置,视频处理器1332可以实现与上文中参照图1至图69描述的各个实施方式的有益效果类似的有益效果。
应当注意,在编解码器引擎1516中,本技术(即,图像编码装置100的功能)可以通过诸如逻辑电路等的硬件来实现,可以通过诸如嵌入式程序等的软件来实现,或者可以由它们两者来实现。
尽管以上例示了视频处理器1332的配置的两个示例,但是视频处理器1332的配置是任意的,并且可以是除了上述两个示例之外的任何配置。此外,尽管视频处理器1332可以被配置为单个半导体芯片,但是其还可以被配置为多个半导体芯片。例如,视频处理器1332可以是例如其中堆叠有多个半导体的三维层叠LSI。此外,视频处理器1332可以由多个LSI来实现。
&lt;应用于装置的示例&gt;
可以将视频设备1300并入处理图像数据的各种装置中。例如,可以将视频设备1300并入电视装置900(图71)、便携式电话机920(图72)、记录与再现装置940(图73)、图像拾取装置960(图74)等中。通过将视频设备1300并入装置中,该装置可以实现与上文中参照图1至图69描述的各个实施方式的有益效果类似的有益效果。
应当注意,如果上述的视频设备1300包括视频处理器1332,则甚至可以将其部分构造实施为应用了本技术的配置。例如,仅视频处理器1332可以被实施为应用了本技术的视频处理器。此外,例如,由虚线1341表示的处理器、视频模块1311等可以被实施为如上文中描述的、应用了本技术的处理器、模块等。此外,例如,可以对视频模块1311、外部存储器1312、电力管理模块1313以及前端模块1314进行组合以使得它们被实施为应用了本技术的视频单元1361。在任意配置的情况下,可以实现与上文中参照图1至图69描述的实施方式的有益效果类似的有益效果。
简言之,如果任意配置包括视频处理器1332,则与在视频设备1300的情况下类似地,可以将该配置并入处理图像数据的各种装置中。例如,可以将视频处理器1332、由虚线1341表示的处理器、视频模块1311或视频单元1361并入电视装置900(图71)、便携式电话机920(图72)、记录与再现装置940(图73)、图像拾取装置960(图74)等中。因此,与在视频设备1300的情况下类似地,通过将应用了本技术的配置中的任一配置并入装置中,该装置可以实现与上文中参照图1至图69描述的各个实施方式的有益效果类似的有益效果。
&lt;第六应用示例:网络系统&gt;
此外,本技术还可以应用于由多个装置构成的网络系统。图78描绘了应用了本技术的网络系统的示意性配置的示例。
图78中所示的网络系统1600是下述系统:其中,不同的装置通过其间的网络来传输与图像(运动图像)有关的信息。网络系统1600的云服务1601是向被连接以与云服务1601进行通信的终端(诸如,计算机1611、AV(视听)装置1612、便携式信息处理终端1613、IoT(物联网)设备1614等)提供与图像(运动图像)有关的服务的系统。例如,云服务1601向终端提供对图像(运动图像)的内容的供应服务,如所谓的视频分发(按需分发或实时分发)。此外,例如,云服务1601提供用于从终端接收图像(运动图像)的内容并存储该图像的备份服务。此外,例如,云服务1601提供用于居间调解图像(运动图像)的内容在终端之间的传输的服务。
云服务1601的物理配置是任意的。例如,云服务1601可以具有各种服务器,诸如存储和管理运动图像的服务器、向终端分发运动图像的服务器、从终端获取运动图像的服务器、管理用户(终端)或计费的服务器等,或者具有诸如因特网、LAN等任意网络。
计算机1611例如由诸如个人计算机、服务器、工作站等信息处理装置构成。AV装置1612例如包括诸如电视接收器、硬盘记录器、游戏装置、摄像装置等图像处理装置。便携式信息处理终端1613例如包括诸如笔记本型个人计算机、平板终端、便携式电话机、智能电话等便携式信息处理装置。IoT设备1614例如包括执行与图像有关的处理的任意对象,诸如机器、消费性电子产品、家具、其他物品、IC标签、卡片型设备等。这些终端具有通信功能,并且可以与云服务1601连接(建立会话)并向以及从云服务1601传输信息(即,进行通信)。此外,每个终端均可以与任何其他终端进行通信。终端之间的通信可以通过云服务1601来执行,或者可以在没有云服务1601的干预的情况下执行。
本技术可以应用于如上所述的网络系统1600,使得当在终端之间或在终端与云服务1601之间传输图像(运动图像)的数据时,可以以上文中结合实施方式描述的方式对该图像数据进行编码和解码。简言之,每个终端(计算机1611至IoT设备1614)和云服务1601可以具有上文中描述的图像编码装置100或图像解码装置200的功能。这使得传输图像数据的云服务1601的终端可以抑制编码效率的降低。
&lt;其它&gt;
应当注意,可以将与编码数据(比特流)有关的各种信息与编码数据多路复用并且发送或记录,或者可以将其在不与编码数据多路复用的情况下作为与编码数据相关联的单独数据发送或记录。此处,术语“关联”表示当要处理一个数据时,可以利用(链接)例如不同的数据。换言之,彼此相关联的数据可以被合并为一个数据,或者可以使数据彼此分离。例如,可以在与针对编码数据(图像)的传输线路不同的传输线路上传送与编码数据(图像)相关联的信息。此外,例如,可以将与编码数据(图像)相关联的信息记录在与针对编码数据(图像)的记录介质不同的记录介质上(或者记录在同一记录介质的记录区域中)。应当注意,该“关联”可能不是与整个数据相关联,而是可能与数据的一部分相关联。例如,可以以诸如多个帧、一个帧、帧中的一部分等任意单位将图像和与该图像对应的信息彼此相关联。
此外,如上所述,在本说明书中,诸如“合成”、“复用”、“添加”、“整合”、“包括”、“存储”、“放入”、“恰好适合”、“插入”等术语表示将多个事物合并成一个事物,例如,诸如将编码数据和元数据合并成一个数据,并且表示了上述“关联”的一种方法。
此外,本技术的实施方式不限于上文中描述的实施方式,而是可以在不背离本技术的主题的情况下以各种方式进行改变。
例如,在本说明书中,术语“系统”表示多个部件(装置、模块(零件)等)的集合,并且与所有构造是否被布置在同一壳体中无关。因此,容纳在单独的壳体中并且通过网络彼此连接的多个装置和其中多个模块容纳在一个壳体中的一个装置二者都是系统。
此外,例如,被描述为一个装置(或一个处理部)的构造可以被分割并配置成多个装置(或处理部)。相反地,可以将之前的描述中被描述为多个装置(或处理部)的构造聚集起来,以使得它们被配置为一个装置(或处理部)。此外,可以将除了那些之外的构造自然地添加到每个装置(或每个处理部)的配置中。此外,如果作为整个系统的构造或操作大致相同,则可以将某个装置(或某个处理部分)的部分构造包括在不同装置(或不同处理部)的构造中。
此外,例如,本技术可以采用用于云计算的配置,在该配置中,一个功能由多个装置通过网络共享并协同处理。
此外,例如,上文中描述的程序可以由任意装置来执行。在这种情况下,该装置可以被配置成使得其具有必要的功能(功能块等)并且可以获取必要的信息。
此外,例如,结合上文描述的流程图所描述的步骤可以由一个装置来执行,并且也可以由多个装置共享和执行。此外,在一个步骤中包括多个处理的情况下,一个步骤中包括的多个处理可以由一个装置来执行,也可以由多个装置共享和执行。
应当注意,计算机要执行的程序可以是下述类型:以本说明书中描述的顺序、按时间序列执行描述程序的多个步骤处的处理的类型;或者并行执行或在必要时刻(诸如在调用该处理时)单独执行这些处理的类型。此外,执行程序的多个步骤中的处理可以与不同程序的处理并行执行,或者可以与不同装置的处理组合执行。
应当注意,除非出现不一致,否则可以单独地且彼此独立地执行本说明书中描述的多种本技术。当然,也可以组合地执行任意多种本技术。例如,还可以结合在描述不同实施方式时所描述的本技术来执行在描述任何实施方式时所描述的本技术。此外,可以结合上文中未描述的不同技术来执行上文中描述的本技术中的任意一种。
应当注意,本技术也可以采取以下配置。
(1)一种图像处理装置,包括:
控制部,其被配置成:在将要跳过作为对预测残差的变换处理的一次变换的情况下,还使得跳过作为对通过所述预测残差的所述一次变换而获得的一次变换系数的变换处理的二次变换,所述预测残差是图像与所述图像的预测图像之间的差异。
(2)根据(1)所述的图像处理装置,其中,
在与跳过所述一次变换有关的第一信息指示跳过所述一次变换的情况下,所述控制部使得跳过所述一次变换和所述二次变换。
(3)根据(1)或(2)所述的图像处理装置,其中,
所述控制部在所述第一信息指示执行所述一次变换的情况下使得执行所述一次变换,并且在与所述二次变换的内容有关的第二信息指示跳过所述二次变换时使得跳过所述二次变换。
(4)根据(1)至(3)中任一项所述的图像处理装置,其中,
所述一次变换是正交变换。
(5)根据(1)至(4)中任一项所述的图像处理装置,其中,
所述二次变换是如下的变换处理:
将所述一次变换系数变换成一维向量;
对所述一维向量执行矩阵算术运算;
对被执行了所述矩阵算术运算的所述一维向量进行缩放;以及
对经缩放的一维向量进行矩阵化。
(6)根据(1)至(5)中任一项所述的图像处理装置,还包括:
一次变换部,其被配置成在所述控制部的控制下执行所述一次变换;以及
二次变换部,其被配置成在所述控制部的控制下执行所述二次变换。
(7)根据(1)至(6)中任一项所述的图像处理装置,还包括:
量化部,其被配置成对通过所述二次变换部对所述一次变换系数进行二次变换而获得的二次变换系数或者所述预测残差执行量化;以及
编码部,其被配置成对通过所述量化部对所述二次变换系数或所述预测残差进行量化而获得的量化变换系数水平进行编码。
(8)根据(1)至(7)中任一项所述的图像处理装置,其中,
所述控制部在与跳过所述一次变换有关的第一信息指示跳过所述一次变换的情况下使得跳过所述一次变换和所述二次变换;
所述量化部对所述预测残差执行量化;以及
所述编码部对所述量化变换系数水平和所述第一信息进行编码,以生成包括所述量化变换系数水平的编码数据和所述第一信息的编码数据的比特流。
(9)根据(1)至(8)中任一项所述的图像处理装置,还包括:
预测部,其被配置成生成所述预测图像。
(10)一种图像处理方法,包括:
在将要跳过作为对预测残差的变换处理的一次变换的情况下,还使得跳过作为对通过所述预测残差的所述一次变换而获得的一次变换系数的变换处理的二次变换,所述预测残差是图像与所述图像的预测图像之间的差异。
(11)一种图像处理装置,包括:
控制部,其被配置成:在将要跳过作为一次变换的逆变换的逆一次变换的情况下,还使得跳过作为二次变换的逆变换的逆二次变换,所述一次变换是对作为图像与所述图像的预测图像之间的差异的预测残差的变换处理,所述二次变换是对通过所述预测残差的所述一次变换而获得的一次变换系数的变换处理。
(12)根据(11)所述的图像处理装置,其中,
在与跳过所述逆一次变换有关的第一信息指示跳过所述逆一次变换的情况下,所述控制部使得跳过所述逆一次变换和所述逆二次变换。
(13)根据(11)或(12)所述的图像处理装置,其中,
所述控制部在所述第一信息指示执行所述逆一次变换并且此外与所述逆二次变换的内容有关的第二信息指示跳过所述二次变换的情况下,使得跳过所述逆二次变换并且执行所述逆一次变换。
(14)根据(11)至(13)中任一项所述的图像处理装置,其中,
所述逆一次变换是逆正交变换。
(15)根据(11)至(14)中任一项所述的图像处理装置,其中,
所述逆二次变换是如下的变换处理:
将通过对编码数据进行解码和逆量化而获得的二次变换系数变换成一维向量;
对所述一维向量执行矩阵算术运算;
对被执行了所述矩阵算术运算的所述一维向量进行缩放;以及
对经缩放的一维向量进行矩阵化。
(16)根据(11)至(15)中任一项所述的图像处理装置,还包括:
逆一次变换部,其被配置成在所述控制部的控制下执行所述逆一次变换;以及
逆二次变换部,其被配置成在所述控制部的控制下执行所述逆二次变换。
(17)根据(11)至(16)中任一项所述的图像处理装置,还包括:
解码部,其被配置成对编码数据进行解码;
逆量化部,其被配置成对通过解码部对所述编码数据进行解码而获得的量化变换系数水平进行逆量化,其中,
所述逆二次变换部对通过所述逆量化部对所述量化变换系数水平的逆量化而获得的二次变换系数执行所述逆二次变换,并且
所述逆一次变换部对通过所述逆二次变换部对所述二次变换系数的所述逆二次变换而获得的所述一次变换系数执行所述逆一次变换。
(18)根据(11)至(17)中任一项所述的图像处理装置,其中,
所述解码部从比特流中获取所述量化变换系数水平的编码数据和与跳过所述逆一次变换有关的第一信息的编码数据并且对所获取的数据进行解码;以及
在通过所述解码部进行解码而获得的所述第一信息指示跳过所述一次变换的情况下,所述控制部使得跳过所述逆一次变换和所述逆二次变换。
(19)根据(11)至(18)中任一项所述的图像处理装置,还包括:
预测部,其被配置成生成所述预测图像。
(20)一种图像处理方法,包括:
在将要跳过作为一次变换的逆变换的逆一次变换的情况下,还使得跳过作为二次变换的逆变换的逆二次变换,所述一次变换是对作为图像与所述图像的预测图像之间的差异的预测残差的变换处理,所述二次变换是对通过所述预测残差的所述一次变换而获得的一次变换系数的变换处理。
(21)一种图像处理装置,包括:
编码部,其被配置成:在将要对通过对预测残差的一次变换而获得的一次变换系数执行二次变换的情况下,跳过对与跳过所述一次变换有关的第一信息的编码,其中,所述预测残差是图像与所述图像的预测图像之间的差异。
(22)根据(21)所述的图像处理装置,其中,
在与所述二次变换的内容有关的第二信息指示执行所述二次变换的情况下,所述编码部跳过对所述第一信息的编码。
(23)根据(21)或(22)所述的图像处理装置,其中,
所述编码部在以下情况下对所述第一信息进行编码:
与跳过所述一次变换、所述二次变换以及对二次变换系数的量化有关的第三信息指示执行所述一次变换、所述二次变换和所述量化,其中,所述二次变换系数是通过对所述一次变换系数的所述二次变换而获得的;
所述第二信息指示跳过所述二次变换;
与允许跳过所述一次变换有关的第四信息指示允许跳过所述一次变换;以及
处理目标的变换块的大小等于或小于被允许跳过所述一次变换的最大大小。
(24)根据(21)至(23)中任一项所述的图像处理装置,其中,
所述一次变换是正交变换,
(25)根据(21)至(24)中任一项所述的图像处理装置,其中,
所述二次变换是如下的变换处理:
将所述一次变换系数变换成一维向量;
对所述一维向量执行矩阵算术运算;
对被执行了所述矩阵算术运算的所述一维向量进行缩放;以及
对经缩放的一维向量进行矩阵化。
(26)根据(21)至(25)中任一项所述的图像处理装置,还包括:
一次变换部,其被配置成执行所述一次变换;
二次变换部,其被配置成执行所述二次变换;以及
量化部,其被配置成对通过所述二次变换部对所述一次变换系数进行所述二次变换而获得的二次变换系数或所述预测残差进行量化,其中,
所述编码部对通过所述量化部对所述二次变换系数或所述预测残差进行量化而获得的量化变换系数水平进行编码,以生成包括所述量化变换系数水平的编码数据的比特流。
(27)根据(21)至(26)中任一项所述的图像处理装置,其中,
在所述编码部执行对所述第一信息的编码的情况下,所述编码部进一步对所述第一信息进行编码并且将所生成的所述第一信息的编码数据包括在所述比特流中。
(28)根据(21)至(27)中任一项所述的图像处理装置,其中,
所述编码部还对与所述二次变换的内容有关的第二信息进行编码并且将所生成的第二信息的编码数据包括在所述比特流中。
(29)根据(21)至(28)中任一项所述的图像处理装置,还包括:
预测部,其被配置成生成所述预测图像。
(30)一种图像处理方法,包括:
在将要对通过对预测残差的一次变换而获得的一次变换系数执行二次变换的情况下,跳过对与跳过所述一次变换有关的第一信息的编码,其中,所述预测残差是图像与所述图像的预测图像之间的差异。
(31)一种图像处理装置,包括:
解码部,其被配置成:在将要执行作为二次变换的逆变换的逆二次变换的情况下,跳过对与跳过作为一次变换的逆变换的逆一次变换有关的第一信息的编码数据的解码,其中,所述二次变换是对通过对预测残差的所述一次变换而获得的一次变换系数的变换处理,所述预测残差是图像与所述图像的预测图像之间的差异。
(32)根据(31)所述的图像处理装置,其中,
在与所述二次变换的内容有关的第二信息指示执行所述逆二次变换的情况下,所述解码部跳过对所述第一信息的编码数据的解码。
(33)根据(31)或(32)所述的图像处理装置,其中,
在将要跳过对所述第一信息的编码数据的解码的情况下,所述解码部估计所述第一信息指示执行所述逆一次变换。
(34)根据(31)至(33)中任一项所述的图像处理装置,其中,
所述解码部在以下情况下对所述第一信息的编码数据进行解码:
与跳过所述逆一次变换、所述逆二次变换以及对通过对编码数据的解码而获得的量化变换系数水平的逆量化有关的第三信息指示执行所述逆一次变换、所述逆二次变换和所述逆量化;
所述第二信息指示跳过所述逆二次变换;
与允许跳过所述逆一次变换有关的第四信息指示允许跳过所述逆一次变换;以及
处理目标的变换块的大小等于或小于被允许跳过所述逆一次变换的所述变换块的最大大小。
(35)根据(31)至(34)中任一项所述的图像处理装置,其中,
所述解码部还被配置成对量化变换系数水平的编码数据进行解码;以及
所述图像处理装置还包括逆量化部,所述逆量化部被配置成对通过所述解码部对所述编码数据进行解码而获得的所述量化变换系数水平进行逆量化。
(36)根据(31)至(35)中任一项所述的图像处理装置,还包括:
逆二次变换部,其被配置成执行所述逆二次变换;以及
逆一次变换部,其被配置成执行所述逆一次变换。
(37)根据(31)至(36)中任一项所述的图像处理装置,其中,
所述逆一次变换是逆正交变换。
(38)根据(31)至(37)中任一项所述的图像处理装置,其中,
所述逆二次变换是如下变换处理:
将通过对编码数据的解码和逆量化而获得的二次变换系数变换成一维向量;
对所述一维向量执行矩阵算术运算;
对被执行了所述矩阵算术运算的所述一维向量进行缩放;以及
对经缩放的一维向量进行矩阵化。
(39)根据(31)至(38)中任一项所述的图像处理装置,还包括:
预测部,其被配置成生成所述预测图像。
(40)一种图像处理方法,包括:
在将要执行作为二次变换的逆变换的逆二次变换的情况下,跳过对与跳过作为一次变换的逆变换的逆一次变换有关的第一信息的编码数据的解码,其中,所述二次变换是对通过对预测残差的所述一次变换而获得的一次变换系数的变换处理,所述预测残差是图像与所述图像的预测图像之间的差异。
(41)一种图像处理装置,包括:
编码部,其被配置成:在将要跳过作为对预测残差的变换处理的一次变换的情况下,跳过对与跳过二次变换有关的第一信息的编码,其中,所述预测残差是图像与所述图像的预测图像之间的差异,所述二次变换是对通过对所述预测残差的所述一次变换而获得的一次变换系数的变换处理。
(42)根据(41)所述的图像处理装置,其中,
在与跳过所述一次变换有关的第二信息指示跳过对所述一次变换的编码的情况下,所述编码部跳过对所述第一信息的编码。
(43)根据(41)或(42)所述的图像处理装置,其中,
所述编码部在以下情况下对所述第一信息进行编码:
与允许所述二次变换有关的第三信息指示允许所述二次变换;
与跳过所述一次变换、所述二次变换以及对通过对所述一次变换系数的所述二次变换而获得的二次变换系数的量化有关的第四信息指示执行所述一次变换、所述二次变换和所述量化;
所述第二信息指示执行所述二次变换;以及
处理目标的变换块中的非零系数的总数等于或大于给定阈值。
(44)根据(41)至(43)中任一项所述的图像处理装置,其中,
所述一次变换是正交变换,
(45)根据(41)至(44)中任一项所述的图像处理装置,其中,
所述二次变换是如下的变换处理:
将所述一次变换系数变换成一维向量;
对所述一维向量执行矩阵算术运算;
对被执行了所述矩阵算术运算的所述一维向量进行缩放;以及
对经缩放的一维向量进行矩阵化。
(46)根据(41)至(45)中任一项所述的图像处理装置,还包括:
一次变换部,其被配置成执行所述一次变换;
二次变换部,其被配置成执行所述二次变换;以及
量化部,其被配置成对通过所述二次变换部对所述一次变换系数进行所述二次变换而获得的二次变换系数或所述预测残差执行量化,其中,
所述编码部对通过所述量化部对所述二次变换系数或所述预测残差进行量化而获得的量化变换系数水平进行编码,以生成包括所述量化变换系数水平的编码数据的比特流。
(47)根据(41)至(46)中任一项所述的图像处理装置,其中,
在所述编码部执行对所述第一信息的编码的情况下,所述编码部进一步对所述第一信息进行编码并且将所生成的所述第一信息的编码数据包括在所述比特流中。
(48)根据(41)至(47)中任一项所述的图像处理装置,其中,
在执行对与所述二次变换的内容有关的第二信息的编码的情况下,所述编码部进一步对所述第二信息进行编码并且将所生成的所述第二信息的编码数据包括在所述比特流中。
(49)根据(41)至(48)中任一项所述的图像处理装置,还包括:
预测部,其被配置成生成所述预测图像。
(50)根据(41)至(49)中任一项所述的图像处理装置,其中,
所述解码部基于所述逆一次变换和所述逆二次变换的变换块的在水平方向上的大小和在垂直方向上的大小,跳过对与跳过所述逆一次变换有关的逆一次变换跳过信息的解码。
(51)根据(50)所述的图像处理装置,其中,
在所述变换块的在水平方向上的大小和在垂直方向上的大小中的较大者大于给定值的情况下,所述解码部跳过对所述逆一次变换跳过信息的解码。
(52)根据(50)所述的图像处理装置,其中,
在所述变换块的在水平方向上的大小与在垂直方向上的大小的和或乘积大于给定值的情况下,所述解码部跳过对所述逆一次变换跳过信息的解码。
(53)一种图像处理方法,包括:
在将要跳过作为对预测残差的变换处理的一次变换的情况下,跳过对与跳过二次变换有关的第一信息的编码,其中,所述预测残差是图像与所述图像的预测图像之间的差异,所述二次变换是对通过所述预测残差的所述一次变换而获得的一次变换系数的变换处理。
(54)一种图像处理装置,包括:
解码部,其被配置成:在将要跳过作为一次变换的逆变换的逆一次变换的情况下,跳过对与跳过作为二次变换的逆变换的逆二次变换有关的第一信息的编码数据的解码,其中,所述一次变换是对作为图像与所述图像的预测图像之间的差异的预测残差的变换处理,所述二次变换是对通过所述预测残差的所述一次变换而获得的一次变换参数的变换处理。
(55)根据(54)所述的图像处理装置,其中,
在与跳过所述逆一次变换有关的第二信息指示跳过所述逆一次变换的情况下,所述解码部跳过对所述第一信息的编码数据的解码。
(56)根据(54)或(55)所述的图像处理装置,其中,
在将要跳过对所述第一信息的编码数据的解码的情况下,所述解码部估计所述第一信息指示跳过所述逆二次变换。
(57)根据(54)至(56)中任一项所述的图像处理装置,其中,
所述解码部在以下情况下对所述第一信息的编码数据进行解码:
与允许所述逆二次变换有关的第三信息指示允许所述逆二次变换;
与跳过所述一次变换、所述二次变换以及通过对编码数据的解码而获得的量化变换系数水平的逆量化有关的第四信息指示执行所述一次变换、所述二次变换和所述量化;
所述第二信息指示执行所述一次变换;以及
处理目标的变换块中的非零系数的总数等于或大于给定阈值。
(58)根据(54)至(57)中任一项所述的图像处理装置,其中,
所述解码部还被配置成对量化变换系数水平的编码数据进行解码;以及
所述图像处理装置还包括逆量化部,所述逆量化部被配置成对通过所述解码部对所述编码数据进行解码而获得的所述量化变换系数水平进行逆量化。
(59)根据(54)至(58)中任一项所述的图像处理装置,还包括:
逆二次变换部,其被配置成执行所述逆二次变换;以及
逆一次变换部,其被配置成执行所述逆一次变换。
(60)根据(54)至(59)中任一项所述的图像处理装置,其中,
所述逆一次变换是逆正交变换。
(61)根据(54)至(60)中任一项所述的图像处理装置,其中,
所述逆二次变换是如下的变换处理:
将通过对编码数据的解码和逆量化而获得的二次变换系数变换成一维向量;
对所述一维向量执行矩阵算术运算;
对被执行了所述矩阵算术运算的所述一维向量进行缩放;以及
对经缩放的一维向量进行矩阵化。
(62)根据(54)至(61)中任一项所述的图像处理装置,还包括:
预测部,其被配置成生成所述预测图像。
(63)根据(54)至(62)中任一项所述的图像处理装置,其中,
所述解码部基于所述逆一次变换和所述逆二次变换的变换块的在水平方向上的大小和在垂直方向上的大小,跳过对与跳过所述逆一次变换有关的逆一次变换跳过信息的解码。
(64)根据(63)所述的图像处理装置,其中,
在所述变换块的在水平方向上的大小和在垂直方向上的大小中的较大者大于给定值的情况下,所述解码部跳过对所述逆一次变换跳过信息的解码。
(65)根据(63)所述的图像处理装置,其中,
在所述变换块的在水平方向上的大小与在垂直方向上的大小的和或乘积大于给定值的情况下,所述解码部跳过对所述逆一次变换跳过信息的解码。
(66)一种图像处理方法,包括:
在将要跳过作为一次变换的逆变换的逆一次变换的情况下,跳过对与跳过作为二次变换的逆变换的逆二次变换有关的第一信息的编码数据的解码,其中,所述一次变换是对作为图像与所述图像的预测图像之间的差异的预测残差的变换处理,所述二次变换是对通过所述预测残差的所述一次变换而获得的一次变换系数的变换处理。
(67)一种图像处理装置,包括:
编码部,被配置成在处理目标的变换块中包括的非零系数的数量的、以子块为单位的平均值小于阈值的情况下,跳过对与跳过二次变换有关的第一信息的编码,其中,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理,所述预测残差是图像与所述图像的预测图像之间的差异。
(68)根据(67)所述的图像处理装置,其中,
所述编码部确定所述处理目标的所述变换块中包括的非零系数的总数并且将所述总数除以所述变换块的子块数以确定所述平均值。
(69)根据(67)或(68)所述的图像处理装置,其中,
所述编码部在以下情况下对所述第一信息进行编码:
与允许所述二次变换有关的第二信息指示允许所述二次变换;
与跳过所述一次变换、所述二次变换以及通过对所述一次变换系数的所述二次变换而获得的二次变换系数的量化有关的第三信息指示执行所述一次变换、所述二次变换和所述量化;
与跳转所述一次变换有关的第四信息指示执行所述一次变换;以及
所述平均值等于或大于所述阈值。
(70)根据(67)至(69)中任一项所述的图像处理装置,其中,
所述一次变换是正交变换,
(71)根据(67)至(70)中任一项所述的图像处理装置,其中,
所述二次变换是如下的变换处理:
将所述一次变换系数变换成一维向量;
对所述一维向量执行矩阵算术运算;
对被执行了所述矩阵算术运算的所述一维向量进行缩放;以及
对经缩放的一维向量进行矩阵化。
(72)根据(67)至(71)中任一项所述的图像处理装置,还包括:
一次变换部,其被配置成执行所述一次变换;以及
二次变换部,其被配置成执行所述二次变换。
(73)根据(67)至(72)中任一项所述的图像处理装置,还包括:
量化部,其被配置成对通过所述二次变换部对所述一次变换系数进行所述二次变换而获得的二次变换系数或所述预测残差执行量化,其中,
所述编码部对通过所述量化部对所述二次变换系数或所述预测残差进行量化而获得的量化变换系数水平进行编码,以生成包括所述量化变换系数水平的编码数据的比特流。
(74)根据(67)至(73)中任一项所述的图像处理装置,其中,
在所述编码部执行对所述第一信息的编码的情况下,所述编码部进一步对所述第一信息进行编码并且将所生成的所述第一信息的编码数据包括在所述比特流中。
(75)根据(67)至(74)中任一项所述的图像处理装置,还包括:
预测部,其被配置成生成所述预测图像。
(76)一种图像处理方法,包括:
在处理目标的变换块中包括的非零系数的数量的、以子块为单位的平均值小于阈值的情况下,跳过对与跳过二次变换有关的第一信息的编码,其中,该二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理,所述预测残差是图像与所述图像的预测图像之间的差异。
(77)一种图像处理装置,包括:
解码部,其被配置成:在处理目标的变换块中包括的非零系数的数量的、以子块为单位的平均值小于阈值的情况下,跳过对与跳过作为二次变换的逆变换的逆二次变换有关的第一信息的编码数据的解码,其中,所述二次变换是对通过对预测残差的一次变换而获得的一次变换系数的变换处理,所述预测残差是图像与所述图像的预测图像之间的差异。
(78)根据(77)所述的图像处理装置,其中,
所述解码部确定所述处理目标的所述变换块中包括的所述非零系数的总数,并且将所述总数除以所述变换块的子块数以确定所述平均值。
(79)根据(77)或(78)所述的图像处理装置,其中,
在将要跳过对所述第一信息的编码数据的解码的情况下,所述解码部估计所述第一信息指示跳过所述逆二次变换。
(80)根据(77)至(79)中任一项所述的图像处理装置,其中,
所述解码部在以下情况下对所述第一信息的编码数据进行解码:
与允许所述二次变换有关的第二信息指示允许所述二次变换;
与跳过所述一次变换、所述二次变换以及对通过对所述一次变换系数的所述二次变换而获得的二次变换系数的量化有关的第三信息指示执行所述一次变换、所述二次变换和所述量化;
与跳过所述一次变换有关的第四信息指示执行所述一次变换;以及
所述平均值等于或大于给定阈值。
(81)根据(77)至(80)中任一项所述的图像处理装置,其中,
所述解码部还被配置成对量化变换系数水平的编码数据进行解码;以及
所述图像处理装置还包括逆量化部,所述逆量化部被配置成对通过所述解码部对所述编码数据进行解码而获得的所述量化变换系数水平进行逆量化。
(82)根据(77)至(81)中任一项所述的图像处理装置,还包括:
逆二次变换部,其被配置成执行所述逆二次变换;以及
逆一次变换部,其被配置成执行所述逆一次变换。
(83)根据(77)至(82)中任一项所述的图像处理装置,其中,
所述逆一次变换是逆正交变换。
(84)根据(77)至(83)中任一项所述的图像处理装置,其中,
所述逆二次变换是如下的变换处理:
将通过对编码数据的解码和逆量化而获得的二次变换系数变换成一维向量;
对所述一维向量执行矩阵算术运算;
对被执行了所述矩阵算术运算的所述一维向量进行缩放;以及
对经缩放的一维向量进行矩阵化。
(85)根据(77)至(84)中任一项所述的图像处理装置,还包括:
预测部,其被配置成生成所述预测图像。
(86)一种图像处理方法,包括:
在处理目标的变换块中包括的非零系数的数量的、以子块为单位的平均值小于阈值的情况下,跳过对与跳过作为二次变换的逆变换的逆二次变换有关的第一信息的编码数据的解码,其中,所述二次变换是对通过对预测残差的一次变换获得而的一次变换系数的变换处理,所述预测残差是图像与所述图像的预测图像之间的差异。
(87)一种图像处理装置,包括:
编码部,其被配置成:在将要跳过作为对预测残差的变换处理的一次变换、作为对通过对预测残差的一次变换而获得的一次变换系数的变换处理的二次变换、以及对通过对一次变换系数的二次变换而获得的二次变换系数的量化的情况下,跳过对指示所述一次变换的内容的第一信息的编码,所述预测残差是图像与所述图像的预测图像之间的差异。
(88)根据(87)所述的图像处理装置,其中,
在与跳过所述一次变换、所述二次变换和所述量化有关的第二信息指示跳过所述一次变换、所述二次变换和所述量化的情况下,所述编码部跳过对所述第一信息的编码。
(89)根据(87)或(88)所述的图像处理装置,其中,
所述编码部在以下情况下对所述第一信息进行编码:
与允许所述一次变换有关的第三信息指示允许所述一次变换;
所述第二信息指示执行所述一次变换、所述二次变换和所述量化;
与跳过所述一次变换有关的第四信息指示执行所述一次变换;以及
处理目标的变换块中的非零系数的总数等于或大于给定阈值。
(90)根据(87)至(89)中任一项所述的图像处理装置,其中,
所述编码部使用截断一元二值化来对所述第一信息进行二值化和编码。
(91)根据(87)至(90)中任一项所述的图像处理装置,其中,
所述编码部将所述第一信息的值设置为根据所述图像的预测模式的值。
(92)根据(87)至(91)中任一项所述的图像处理装置,其中,
在对所述图像的预测是帧间预测的情况下,所述编码部将所述第一信息的值改变为通过从所述第一信息的最大值减去所述第一信息的值而获得的值。
(93)根据(87)至(92)中任一项所述的图像处理装置,其中,
所述编码部在使用上下文的常规模式下对经二值化的第一信息的开头处的二进制数进行算术编码,并且在不使用上下文的旁路模式下对剩余的二进制数进行算术编码。
(94)根据(87)至(93)中任一项所述的图像处理装置,其中,
所述一次变换是正交变换,并且
所述二次变换是如下的变换处理:
将所述一次变换系数变换成一维向量;
对所述一维向量执行矩阵算术运算;
对被执行了所述矩阵算术运算的所述一维向量进行缩放;以及
对经缩放的一维向量进行矩阵化。
(95)根据(87)至(94)中任一项所述的图像处理装置,还包括:
一次变换部,其被配置成执行所述一次变换;
二次变换部,其被配置成执行所述二次变换;以及
量化部,其被配置成对所述二次变换系数或所述预测残差执行量化,其中,
所述编码部对通过所述量化部对所述二次变换系数或所述预测残差进行量化而获得的量化变换系数水平进行编码,以生成包括所述量化变换系数水平的编码数据的比特流,并且
在将要对所述第一信息进行编码的情况下,所述第一信息的编码数据还被包括在所述比特流中。
(96)一种图像处理方法,包括:
在将要跳过作为对预测残差的变换处理的一次变换、作为对通过所述预测残差的所述一次变换而获得的一次变换系数的变换处理的二次变换、以及对通过所述一次变换系数的所述二次变换而获得的二次变换系数的量化的情况下,跳过对指示所述一次变换的内容的第一信息的编码,其中,所述预测残差是图像与所述图像的预测图像之间的差异。
(97)一种图像处理装置,包括:
解码部,其被配置成:在将要跳过对通过对编码数据进行解码而获得的量化变换系数水平的逆量化、用于将通过所述量化变换系数水平的逆量化而获得的二次变换系数变换成一次变换系数的逆二次变换、以及用于将所述一次变换系数变换成预测残差的逆一次变换的情况下,跳过对与所述逆一次变换的内容有关的第一信息的编码数据的解码,其中,所述预测残差是图像与所述图像的预测图像之间的差异。
(98)根据(97)所述的图像处理装置,其中,
在与跳过所述逆量化、所述逆二次变换和所述逆一次变换有关的第二信息指示跳过所述逆量化、所述逆二次变换和所述逆一次变换的情况下,所述解码部跳过对所述第一信息的编码数据的解码。
(99)根据(97)至(98)中任一项所述的图像处理装置,其中,
在将要跳过对所述第一信息的编码数据的解码的情况下,所述解码部估计所述第一信息指示给定的正交变换将要用于水平方向上的逆一次变换和垂直方向上的逆一次变换。
(100)根据(97)至(99)中任一项所述的图像处理装置,其中,
所述解码部在以下情况下对所述第一信息的编码数据进行解码:
与允许所述逆一次变换有关的第三信息指示允许所述逆一次变换;
所述第二信息指示执行所述逆量化、所述逆二次变换和所述逆一次变换;
与跳过所述逆一次变换有关的第四信息指示执行所述逆一次变换;以及
处理目标的变换块中的非零系数的总数等于或大于给定阈值。
(101)根据(97)至(100)中任一项所述的图像处理装置,其中,
所述解码部对所述第一信息的编码数据进行算术解码,并且使用截断一元二值化来将通过所述算术解码而获得的二进制数变换成多值,以获得所述第一信息。
(102)根据(97)至(101)中任一项所述的图像处理装置,其中,
所述解码部将通过所述解码而获得的所述第一信息的值设置成根据所述图像的预测模式的值。
(103)根据(97)至(102)中任一项所述的图像处理装置,其中,
在所述图像的预测是帧间预测的情况下,所述解码部将所述第一信息的值改变为通过从所述第一信息的最大值减去所述第一信息的值而获得的值。
(104)根据(97)至(103)中任一项所述的图像处理装置,其中,
所述解码部在使用上下文的常规模式下对所述第一信息的编码数据的开头处的二进制数进行算术解码,并且在不使用上下文的旁路模式下对剩余的二进制数进行算术解码。
(105)根据(97)至(104)中任一项所述的图像处理装置,其中,
所述解码部还被配置成对所述量化变换系数水平的编码数据进行解码;以及
所述信息处理装置还包括:
逆量化部,其被配置成对通过所述解码部对所述编码数据进行解码而获得的所述量化变换系数水平进行逆量化,
逆二次变换部,其被配置成对通过所述逆量化部对所述量化变换系数水平进行逆量化而获得的所述二次变换系数执行所述逆二次变换,以及
逆一次变换部,其被配置成对通过所述逆二次变换部对所述二次变换系数进行逆二次变换而获得的所述一次变换系数执行所述逆一次变换。
(106)一种图像处理方法,包括:
在将要跳过对通过对编码数据进行解码而获得的量化变换系数水平的逆量化、用于将通过对所述量化变换系数水平的逆量化而获得的二次变换系数变换成一次变换系数的逆二次变换、以及用于将所述一次变换系数变换成预测残差的逆一次变换的情况下,跳过对与所述逆一次变换的内容有关的第一信息的编码数据的解码,其中,所述预测残差是图像与所述图像的预测图像之间的差异。
(111)一种图像处理装置,包括:
编码部,其被配置成对从图像数据获得的信息进行编码,并且在将要跳过对所述图像数据的变换处理和量化的情况下,跳过对指示是否要执行自适应一次变换的自适应一次变换信息的编码。
(112)根据(111)所述的图像处理装置,其中,
所述编码部在将要跳过对所述图像数据的亮度分量的变换处理和量化的情况下,跳过对针对所述图像数据的亮度分量的自适应一次变换信息的编码。
(113)根据(111)所述的图像处理装置,其中,
所述编码部针对每个颜色分量而设置是否要对所述自适应一次变换信息进行编码。
(114)根据(111)至(113)中任一项所述的图像处理装置,其中,
在将要对所述图像数据执行所述自适应一次变换的情况下,所述编码部还跳过对指示是否要跳过对所述图像数据的变换处理的变换跳过信息的编码。
(115)根据(114)所述的图像处理装置,其中,
所述编码部针对每个颜色分量而设置是否要对所述变换跳过信息进行编码。
(116)根据(114)所述的图像处理装置,其中,
在将要执行对所述图像数据的亮度分量的所述自适应一次变换的情况下,所述编码部跳过对针对所述图像数据的亮度分量的变换跳过信息的编码。
(117)一种图像处理方法,包括:
对从图像数据获得的信息进行编码,并且在将要跳过对所述图像数据的变换处理和量化的情况下,跳过对指示是否要执行自适应一次变换的自适应一次变换信息的编码
(121)一种图像处理装置,包括:
解码部,其被配置成对根据从图像数据获得的信息编码得到的编码数据进行解码,并且在将要跳过对从所述编码数据解码得到的数据的逆变换处理和逆量化的情况下,跳过对指示是否要执行逆自适应一次变换的逆自适应一次变换信息的解码。
(122)根据(121)所述的图像处理装置,其中,
在将要跳过对与所述图像数据的亮度分量有关的数据的逆变换处理和逆量化的情况下,所述解码部跳过对针对与所述图像数据的亮度分量有关的数据的所述逆自适应一次变换信息的解码。
(123)根据(121)所述的图像处理装置,其中,
所述解码部针对每个颜色分量而设置是否要对所述逆自适应一次变换信息进行解码。
(124)根据(121)至(123)中任一项所述的图像处理装置,其中,
在将要对所述数据执行所述逆自适应一次变换的情况下,所述解码部跳过对指示是否要跳过对所述数据的所述逆变换处理的逆变换跳过信息的解码。
(125)根据(124)所述的图像处理装置,其中,
所述解码部针对每个颜色分量而设置是否要对所述逆变换跳过信息进行解码。
(126)根据(124)所述的图像处理装置,其中,
在将要执行对与所述图像数据的亮度分量有关的数据的所述逆自适应一次变换的情况下,所述解码部跳过对针对与所述图像数据的亮度分量有关的数据的所述逆变换跳过信息的解码。
(127)一种图像处理方法,包括:
对根据从图像数据获得的信息编码得到的编码数据进行解码,并且在将要跳过对从所述编码数据解码得到的数据的逆变换处理和逆量化的情况下,跳过对指示是否要执行逆自适应一次变换的逆自适应一次变换信息的解码。
(131)一种图像处理装置,包括:
编码部,其被配置成对从图像数据获得的信息进行编码,并且在将要跳过对所述图像数据的变换处理和量化的情况下,跳过对指示是否要跳过对所述图像数据的变换处理的变换跳过信息的编码。
(132)根据(131)所述的图像处理装置,其中,
所述编码部针对每个颜色分量而设置是否要对所述变换跳过信息进行编码。
(133)根据(131)或(132)所述的图像处理装置,其中,
所述编码部还跳过对指示是否要执行自适应一次变换的自适应一次变换信息的编码。
(134)根据(133)所述的图像处理装置,其中,
所述编码部跳过对针对所述图像数据的亮度分量的所述自适应一次变换信息的编码。
(135)根据(133)所述的图像处理装置,其中,
所述编码部针对每个颜色分量而设置是否要对所述自适应一次变换信息进行编码。
(136)一种图像处理方法,包括:
对从图像数据获得的信息进行编码,并且在将要跳过对所述图像数据的变换处理和量化的情况下,跳过对指示是否要跳过对所述图像数据的变换处理的变换跳过信息的编码。
(141)一种图像处理装置,包括:
解码部,其被配置成对根据从图像数据获得的信息编码得到的编码数据进行解码,并且在将要跳过对从所述编码数据解码得到的数据的逆变换处理和逆量化的情况下,跳过对指示是否要跳过对从所述编码数据解码得到的数据的逆变换处理的逆变换跳过信息的解码。
(142)根据(141)所述的图像处理装置,其中,
所述解码部针对每个颜色分量而设置是否要对所述逆变换跳过信息进行解码。
(143)根据(141)或(142)所述的图像处理装置,其中,
所述解码部还跳过对指示是否要执行所述逆自适应一次变换的逆自适应一次变换信息的解码。
(144)根据(143)所述的图像处理装置,其中,
所述解码部跳过对针对与所述图像数据的亮度分量有关的数据的所述逆自适应一次变换信息的解码。
(145)根据(143)所述的图像处理装置,其中,
所述解码部针对每个颜色分量而设置是否要对所述逆自适应一次变换信息进行解码。
(146)一种图像处理方法,包括:
对根据从图像数据获得的信息编码得到的编码数据进行解码,并且在将要跳过对从所述编码数据解码得到的数据的逆变换处理和逆量化的情况下,跳过对指示是否要跳过对从所述编码数据解码得到的数据的逆变换处理的逆变换跳过信息的解码。
[附图标记列表]
100图像编码装置、101控制部、111算术运算部、112变换部、113量化部、114编码部、115逆量化部、116逆变换部、117算术运算部、118帧存储器、119预测部、131开关、132一次变换部、13 3二次变换部、141光栅化部、142矩阵算术运算部、143缩放部、144矩阵化部、145二次变换选择部、200图像解码装置、21 1解码部、212逆量化部、213逆变换部、214算术运算部、215帧存储器、216预测部、231开关、232逆二次变换部、233逆一次变换部、241光栅化部、242矩阵算术运算部、243缩放部、244矩阵化部、245逆二次变换选择部、301二次变换有效性标志编码部、302二次变换标识符编码部、303变换跳过有效性标志编码部、304最大变换跳过块大小编码部、305变换量化旁路标志编码部、306变换跳过标志编码部、311二次变换有效性标志解码部、312二次变换标识符解码部、313变换跳过有效性标志解码部、314最大变换跳过块大小解码部、315变换量化旁路标志解码部、316变换跳过标志解码部、321二次变换标志编码部、331二次变换标志解码部、401一次变换有效性标志编码部、402一次变换标识符编码部、411一次变换有效性标志解码部、412一次变换标识符解码部、461变换跳过标志解码部。

Claims (19)

1.一种图像处理装置,包括:
控制部,其被配置成:在将要跳过作为对预测残差的变换处理的一次变换的情况下,还使得跳过作为对通过所述预测残差的所述一次变换而获得的一次变换系数的变换处理的二次变换,所述预测残差是图像与所述图像的预测图像之间的差异。
2.一种图像处理方法,包括:
在将要跳过作为对预测残差的变换处理的一次变换的情况下,还使得跳过作为对通过所述预测残差的所述一次变换而获得的一次变换系数的变换处理的二次变换,所述预测残差是图像与所述图像的预测图像之间的差异。
3.一种图像处理装置,包括:
控制部,其被配置成:在将要跳过作为一次变换的逆变换的逆一次变换的情况下,还使得跳过作为二次变换的逆变换的逆二次变换,所述一次变换是对作为图像与所述图像的预测图像之间的差异的预测残差的变换处理,所述二次变换是对通过所述预测残差的所述一次变换而获得的一次变换系数的变换处理。
4.一种图像处理方法,包括:
在将要跳过作为一次变换的逆变换的逆一次变换的情况下,还使得跳过作为二次变换的逆变换的逆二次变换,所述一次变换是对作为图像与所述图像的预测图像之间的差异的预测残差的变换处理,所述二次变换是对通过所述预测残差的所述一次变换而获得的一次变换系数的变换处理。
5.一种图像处理装置,包括:
编码部,其被配置成:在将要对通过对预测残差的一次变换而获得的一次变换系数执行二次变换的情况下,跳过对与跳过所述一次变换有关的第一信息的编码,其中,所述预测残差是图像与所述图像的预测图像之间的差异。
6.一种图像处理方法,包括:
在将要对通过对预测残差的一次变换而获得的一次变换系数执行二次变换的情况下,跳过对与跳过所述一次变换有关的第一信息的编码,其中,所述预测残差是图像与所述图像的预测图像之间的差异。
7.一种图像处理装置,包括:
解码部,其被配置成:在将要执行作为二次变换的逆变换的逆二次变换的情况下,跳过对与跳过作为一次变换的逆变换的逆一次变换有关的第一信息的编码数据的解码,其中,所述二次变换是对通过对预测残差的所述一次变换而获得的一次变换系数的变换处理,所述预测残差是图像与所述图像的预测图像之间的差异。
8.一种图像处理方法,包括:
在将要执行作为二次变换的逆变换的逆二次变换的情况下,跳过对与跳过作为一次变换的逆变换的逆一次变换有关的第一信息的编码数据的解码,其中,所述二次变换是对通过对预测残差的所述一次变换而获得的一次变换系数的变换处理,所述预测残差是图像与所述图像的预测图像之间的差异。
9.一种图像处理装置,包括:
编码部,其被配置成:在将要跳过作为对预测残差的变换处理的一次变换的情况下,跳过对与跳过二次变换有关的第一信息的编码,其中,所述预测残差是图像与所述图像的预测图像之间的差异,所述二次变换是对通过对所述预测残差的所述一次变换而获得的一次变换系数的变换处理。
10.一种图像处理方法,包括:
在将要跳过作为对预测残差的变换处理的一次变换的情况下,跳过对与跳过二次变换有关的第一信息的编码,其中,所述预测残差是图像与所述图像的预测图像之间的差异,所述二次变换是对通过对所述预测残差的所述一次变换而获得的一次变换系数的变换处理。
11.一种图像处理装置,包括:
解码部,其被配置成:在将要跳过作为一次变换的逆变换的逆一次变换的情况下,跳过对与跳过作为二次变换的逆变换的逆二次变换有关的第一信息的编码数据的解码,其中,所述一次变换是对作为图像与所述图像的预测图像之间的差异的预测残差的变换处理,所述二次变换是对通过所述预测残差的所述一次变换而获得的一次变换系数的变换处理。
12.根据权利要求11所述的图像处理装置,其中,
所述解码部基于所述逆一次变换和所述逆二次变换的变换块的在水平方向上的大小和在垂直方向上的大小来跳过对与跳过所述逆一次变换有关的逆一次变换跳过信息的解码。
13.根据权利要求12所述的图像处理装置,其中,
在所述变换块的在水平方向上的大小和在垂直方向上的大小中的较大者大于给定值的情况下,所述解码部跳过对所述逆一次变换跳过信息的解码。
14.根据权利要求12所述的图像处理装置,其中,
在所述变换块的在水平方向上的大小与在垂直方向上的大小的和或者乘积大于给定值的情况下,所述解码部跳过对所述逆一次变换跳过信息的解码。
15.一种图像处理方法,包括:
在将要跳过作为一次变换的逆变换的逆一次变换的情况下,跳过对与跳过作为二次变换的逆变换的逆二次变换有关的第一信息的编码数据的解码,其中,所述一次变换是对作为图像与所述图像的预测图像之间的差异的预测残差的变换处理,所述二次变换是对通过所述预测残差的所述一次变换而获得的一次变换系数的变换处理。
16.一种图像处理装置,包括:
编码部,其被配置成:在将要跳过作为对预测残差的变换处理的一次变换、作为对通过所述预测残差的所述一次变换而获得的一次变换系数的变换处理的二次变换、以及对通过所述一次变换系数的所述二次变换而获得的二次变换系数的量化的情况下,跳过对指示所述一次变换的内容的第一信息的编码,其中,所述预测残差是图像与所述图像的预测图像之间的差异。
17.一种图像处理方法,包括:
在将要跳过作为对预测残差的变换处理的一次变换、作为对通过所述预测残差的所述一次变换而获得的一次变换系数的变换处理的二次变换、以及对通过所述一次变换系数的所述二次变换而获得的二次变换系数的量化的情况下,跳过对指示所述一次变换的内容的第一信息的编码,其中,所述预测残差是图像与所述图像的预测图像之间的差异。
18.一种图像处理装置,包括:
解码部,被配置成:在将要跳过对通过对编码数据进行解码而获得的量化变换系数水平的逆量化、用于将通过对所述量化变换系数水平的逆量化而获得的二次变换系数变换成一次变换系数的逆二次变换、以及用于将所述一次变换系数变换成预测残差的逆一次变换的情况下,跳过对与所述逆一次变换的内容有关的第一信息的编码数据的解码,其中,所述预测残差是图像与所述图像的预测图像之间的差异。
19.一种图像处理方法,包括:
在将要跳过对通过对编码数据进行解码而获得的量化变换系数水平的逆量化、用于将通过对所述量化变换系数水平的逆量化而获得的二次变换系数变换成一次变换系数的逆二次变换、以及用于将所述一次变换系数变换成预测残差的逆一次变换的情况下,跳过对与所述逆一次变换的内容有关的第一信息的编码数据的解码,其中,所述预测残差是图像与所述图像的预测图像之间的差异。
CN201780028126.1A 2016-05-13 2017-03-23 图像处理装置和方法 Active CN109076222B9 (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2016-097170 2016-05-13
JP2016097170 2016-05-13
JP2016114765 2016-06-08
JP2016-114765 2016-06-08
PCT/JP2017/011715 WO2017195476A1 (ja) 2016-05-13 2017-03-23 画像処理装置および方法

Publications (3)

Publication Number Publication Date
CN109076222A true CN109076222A (zh) 2018-12-21
CN109076222B CN109076222B (zh) 2021-08-31
CN109076222B9 CN109076222B9 (zh) 2021-10-15

Family

ID=60266998

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780028126.1A Active CN109076222B9 (zh) 2016-05-13 2017-03-23 图像处理装置和方法

Country Status (10)

Country Link
US (6) US10595046B2 (zh)
EP (1) EP3454559A4 (zh)
JP (1) JP6822470B2 (zh)
KR (1) KR102397673B1 (zh)
CN (1) CN109076222B9 (zh)
AU (2) AU2017261992A1 (zh)
CA (1) CA3019490A1 (zh)
MX (1) MX2018013461A (zh)
RU (2) RU2020129092A (zh)
WO (1) WO2017195476A1 (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111699694A (zh) * 2019-01-15 2020-09-22 Lg电子株式会社 使用变换跳变标志的图像编码方法和装置
WO2020253642A1 (en) * 2019-06-15 2020-12-24 Beijing Bytedance Network Technology Co., Ltd. Block size dependent use of secondary transforms in coded video
WO2020259330A1 (zh) * 2019-06-25 2020-12-30 华为技术有限公司 非可分离变换方法以及设备
WO2021134637A1 (zh) * 2019-12-31 2021-07-08 Oppo广东移动通信有限公司 变换方法、编码器、解码器以及存储介质
WO2021134303A1 (zh) * 2019-12-30 2021-07-08 Oppo广东移动通信有限公司 变换方法、编码器、解码器以及存储介质
CN113557732A (zh) * 2019-04-04 2021-10-26 腾讯美国有限责任公司 用于视频编码的方法和装置
CN113841401A (zh) * 2019-05-10 2021-12-24 北京字节跳动网络技术有限公司 用于视频处理的二次变换矩阵的选择
CN113906742A (zh) * 2019-06-03 2022-01-07 Lg电子株式会社 基于矩阵的帧内预测装置和方法
CN114223207A (zh) * 2019-04-16 2022-03-22 联发科技股份有限公司 用次要变换编解码视讯数据的方法以及装置
CN114342397A (zh) * 2019-09-06 2022-04-12 索尼集团公司 图像处理装置和方法
US11546636B2 (en) 2019-04-23 2023-01-03 Beijing Bytedance Network Technology Co., Ltd. Clipping operation in secondary transform based video processing
US11575901B2 (en) 2019-08-17 2023-02-07 Beijing Bytedance Network Technology Co., Ltd. Context modeling of side information for reduced secondary transforms in video
US11638008B2 (en) 2019-08-03 2023-04-25 Beijing Bytedance Network Technology Co., Ltd. Selection of matrices for reduced secondary transform in video coding
US11924469B2 (en) 2019-06-07 2024-03-05 Beijing Bytedance Network Technology Co., Ltd. Conditional signaling of reduced secondary transform in video bitstreams
US11943476B2 (en) 2019-04-16 2024-03-26 Hfi Innovation Inc. Methods and apparatuses for coding video data with adaptive secondary transform signaling

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102397673B1 (ko) 2016-05-13 2022-05-16 소니그룹주식회사 화상 처리 장치 및 방법
US10972732B2 (en) * 2016-08-26 2021-04-06 Sharp Kabushiki Kaisha Image decoding apparatus, image coding apparatus, image decoding method, and image coding method
US10779007B2 (en) * 2017-03-23 2020-09-15 Mediatek Inc. Transform coding of video data
JP2019017066A (ja) * 2017-07-03 2019-01-31 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 符号化装置、復号装置、符号化方法及び復号方法
CN115442606A (zh) * 2017-07-31 2022-12-06 韩国电子通信研究院 对图像编码和解码的方法及存储比特流的计算机可读介质
WO2019069782A1 (ja) * 2017-10-06 2019-04-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
WO2019112394A1 (ko) * 2017-12-07 2019-06-13 한국전자통신연구원 채널들 간의 선택적인 정보 공유를 사용하는 부호화 및 복호화를 위한 방법 및 장치
US10567801B2 (en) * 2018-03-07 2020-02-18 Tencent America LLC Method and apparatus for video coding with primary and secondary transforms
PL3764649T3 (pl) 2018-04-01 2024-01-22 Lg Electronics Inc. Przetwarzanie sygnału wideo z wykorzystaniem skróconego przekształcenia wtórnego
JP2021517795A (ja) * 2018-04-01 2021-07-26 エルジー エレクトロニクス インコーポレイティド 分割されたブロックに2次変換を適用して、ビデオ信号を処理する方法及び装置
US11533471B2 (en) * 2018-06-22 2022-12-20 Sony Corporation Image processing apparatus and image processing method
TWI714153B (zh) * 2018-06-29 2020-12-21 大陸商北京字節跳動網絡技術有限公司 零單元的定義
TWI719520B (zh) * 2018-06-29 2021-02-21 大陸商北京字節跳動網絡技術有限公司 零單元的濾波
US11632557B2 (en) * 2019-01-01 2023-04-18 Lg Electronics Inc. Method and device for decoding video using residual sign related information in video coding system
US11159795B2 (en) * 2019-03-04 2021-10-26 Tencent America LLC Max transform size control
BR112021017428A2 (pt) * 2019-03-08 2021-11-16 Beijing Bytedance Network Tech Co Ltd Método de processamento de dados de vídeo, aparelho para processamento de dados de vídeo e meios de armazenamento e de gravação não transitórios legíveis por computador
US11616966B2 (en) * 2019-04-03 2023-03-28 Mediatek Inc. Interaction between core transform and secondary transform
CN114128267A (zh) * 2019-06-19 2022-03-01 Lg 电子株式会社 图像编译系统中用于关于变换核集的信息的上下文编译
JP7494850B2 (ja) * 2019-06-19 2024-06-04 ソニーグループ株式会社 画像処理装置および方法
KR102211000B1 (ko) * 2019-06-21 2021-02-02 삼성전자주식회사 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
JP7318024B2 (ja) * 2019-06-24 2023-07-31 エルジー エレクトロニクス インコーポレイティド クロマ変換ブロックの最大サイズ制限を用いた画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
KR20220053563A (ko) * 2019-09-06 2022-04-29 소니그룹주식회사 화상 처리 장치 및 방법
BR112022009359A2 (pt) * 2019-11-22 2022-08-09 Sony Group Corp Dispositivo e método de processamento de imagem
AU2019275552B2 (en) * 2019-12-03 2022-10-13 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding a coding tree unit
AU2019275553B2 (en) * 2019-12-03 2022-10-06 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding a coding tree unit
CN115176476A (zh) * 2019-12-11 2022-10-11 索尼集团公司 图像处理装置、比特流生成方法、系数数据生成方法以及量化系数生成方法
US11438611B2 (en) 2019-12-11 2022-09-06 Hfi Innovation Inc. Method and apparatus of scaling window constraint for worst case bandwidth consideration for reference picture resampling in video coding
US11445176B2 (en) * 2020-01-14 2022-09-13 Hfi Innovation Inc. Method and apparatus of scaling window constraint for worst case bandwidth consideration for reference picture resampling in video coding
GB202008299D0 (en) * 2020-06-02 2020-07-15 Imagination Tech Ltd Manipulation of data in a memory
CN117044213A (zh) * 2021-02-23 2023-11-10 抖音视界有限公司 对非二元块的变换与量化
WO2023166888A1 (ja) * 2022-03-03 2023-09-07 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 復号方法、符号化方法、復号装置及び符号化装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100322316A1 (en) * 2009-06-22 2010-12-23 Tomonobu Yoshino Moving-picture encoding apparatus and decoding apparatus
US20120307906A1 (en) * 2009-11-24 2012-12-06 Sk Telecom Co., Ltd. Adaptive secondary prediction-based image encoding/decoding method, device and recording medium
CN103636205A (zh) * 2011-07-01 2014-03-12 三星电子株式会社 具有低延迟的用于残差编码的模式依赖变换

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8488668B2 (en) * 2007-06-15 2013-07-16 Qualcomm Incorporated Adaptive coefficient scanning for video coding
US8634456B2 (en) * 2008-10-03 2014-01-21 Qualcomm Incorporated Video coding with large macroblocks
TW201136319A (en) * 2009-08-06 2011-10-16 Panasonic Corp Encoding method, decoding method, encoding device and decoding device
US8948241B2 (en) * 2009-08-07 2015-02-03 Qualcomm Incorporated Signaling characteristics of an MVC operation point
US8885711B2 (en) * 2009-12-17 2014-11-11 Sk Telecom Co., Ltd. Image encoding/decoding method and device
GB2492333B (en) * 2011-06-27 2018-12-12 British Broadcasting Corp Video encoding and decoding using transforms
WO2013096671A1 (en) * 2011-12-20 2013-06-27 General Instrument Corporation Method and apparatus for efficient transform unit encoding
KR20130116754A (ko) * 2012-04-16 2013-10-24 주식회사 팬택 엔트로피 부복호화 방법 및 이러한 방법을 사용하는 장치
CN109905710B (zh) * 2012-06-12 2021-12-21 太阳专利托管公司 动态图像编码方法及装置、动态图像解码方法及装置
JP6553349B2 (ja) 2014-11-25 2019-07-31 東都フォルダー工業株式会社 布類自動投入機におけるバッファリング装置
JP2016114765A (ja) 2014-12-15 2016-06-23 富士フイルム株式会社 反射フィルム、光学部材、ディスプレイおよび画像表示装置
US10681379B2 (en) * 2015-09-29 2020-06-09 Qualcomm Incorporated Non-separable secondary transform for video coding with reorganizing
CN109076243B (zh) * 2016-05-04 2022-01-25 夏普株式会社 用于对变换数据进行编码的系统和方法
KR102397673B1 (ko) 2016-05-13 2022-05-16 소니그룹주식회사 화상 처리 장치 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100322316A1 (en) * 2009-06-22 2010-12-23 Tomonobu Yoshino Moving-picture encoding apparatus and decoding apparatus
US20120307906A1 (en) * 2009-11-24 2012-12-06 Sk Telecom Co., Ltd. Adaptive secondary prediction-based image encoding/decoding method, device and recording medium
CN103636205A (zh) * 2011-07-01 2014-03-12 三星电子株式会社 具有低延迟的用于残差编码的模式依赖变换

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JIANLE CHEN ET AL: "《Algorithm Description of Joint Exploration Test Model 2》", 《JOINT VIDEO EXPLORATION TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 2ND MEETING: SAN DIEGO》 *
X. ZHAO ET AL: "《TU-level non-separable secondary transform》", 《JOINT VIDEO EXPLORATION TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 2ND MEETING: SAN DIEGO》 *

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111699694A (zh) * 2019-01-15 2020-09-22 Lg电子株式会社 使用变换跳变标志的图像编码方法和装置
US11695917B2 (en) 2019-01-15 2023-07-04 Rosedale Dynamics Llc Image coding method and device using transform skip flag
US11979552B2 (en) 2019-01-15 2024-05-07 Rosedale Dynamics Llc Image coding method and device using transform skip flag
US11297310B2 (en) 2019-01-15 2022-04-05 Lg Electronics Inc. Image coding method and device using transform skip flag
CN113557732B (zh) * 2019-04-04 2023-12-26 腾讯美国有限责任公司 用于视频编解码的方法和装置
CN113557732A (zh) * 2019-04-04 2021-10-26 腾讯美国有限责任公司 用于视频编码的方法和装置
CN114223207A (zh) * 2019-04-16 2022-03-22 联发科技股份有限公司 用次要变换编解码视讯数据的方法以及装置
US11943476B2 (en) 2019-04-16 2024-03-26 Hfi Innovation Inc. Methods and apparatuses for coding video data with adaptive secondary transform signaling
US11956469B2 (en) 2019-04-16 2024-04-09 Hfi Innovation Inc. Methods and apparatuses for coding video data with adaptive secondary transform signaling depending on TB level syntax
CN114223207B (zh) * 2019-04-16 2023-09-22 寰发股份有限公司 用次要变换编解码视讯数据的方法以及装置
US11991393B2 (en) 2019-04-16 2024-05-21 Hfi Innovation Inc. Methods and apparatuses for coding video data with secondary transform
US11647229B2 (en) 2019-04-23 2023-05-09 Beijing Bytedance Network Technology Co., Ltd Use of secondary transform in coded video
US11546636B2 (en) 2019-04-23 2023-01-03 Beijing Bytedance Network Technology Co., Ltd. Clipping operation in secondary transform based video processing
CN113841401A (zh) * 2019-05-10 2021-12-24 北京字节跳动网络技术有限公司 用于视频处理的二次变换矩阵的选择
CN113841401B (zh) * 2019-05-10 2022-11-25 北京字节跳动网络技术有限公司 用于视频处理的二次变换矩阵的选择
US11575940B2 (en) 2019-05-10 2023-02-07 Beijing Bytedance Network Technology Co., Ltd. Context modeling of reduced secondary transforms in video
US11611779B2 (en) 2019-05-10 2023-03-21 Beijing Bytedance Network Technology Co., Ltd. Multiple secondary transform matrices for video processing
US11622131B2 (en) 2019-05-10 2023-04-04 Beijing Bytedance Network Technology Co., Ltd. Luma based secondary transform matrix selection for video processing
CN113906742A (zh) * 2019-06-03 2022-01-07 Lg电子株式会社 基于矩阵的帧内预测装置和方法
US11924469B2 (en) 2019-06-07 2024-03-05 Beijing Bytedance Network Technology Co., Ltd. Conditional signaling of reduced secondary transform in video bitstreams
WO2020253642A1 (en) * 2019-06-15 2020-12-24 Beijing Bytedance Network Technology Co., Ltd. Block size dependent use of secondary transforms in coded video
US11917203B2 (en) 2019-06-25 2024-02-27 Huawei Technologies Co., Ltd. Non-separable transform method and device
WO2020259330A1 (zh) * 2019-06-25 2020-12-30 华为技术有限公司 非可分离变换方法以及设备
US11638008B2 (en) 2019-08-03 2023-04-25 Beijing Bytedance Network Technology Co., Ltd. Selection of matrices for reduced secondary transform in video coding
US11882274B2 (en) 2019-08-03 2024-01-23 Beijing Bytedance Network Technology Co., Ltd Position based mode derivation in reduced secondary transforms for video
US11575901B2 (en) 2019-08-17 2023-02-07 Beijing Bytedance Network Technology Co., Ltd. Context modeling of side information for reduced secondary transforms in video
US11968367B2 (en) 2019-08-17 2024-04-23 Beijing Bytedance Network Technology Co., Ltd. Context modeling of side information for reduced secondary transforms in video
CN114342397A (zh) * 2019-09-06 2022-04-12 索尼集团公司 图像处理装置和方法
WO2021134303A1 (zh) * 2019-12-30 2021-07-08 Oppo广东移动通信有限公司 变换方法、编码器、解码器以及存储介质
WO2021134637A1 (zh) * 2019-12-31 2021-07-08 Oppo广东移动通信有限公司 变换方法、编码器、解码器以及存储介质

Also Published As

Publication number Publication date
JP6822470B2 (ja) 2021-01-27
JPWO2017195476A1 (ja) 2019-03-22
RU2733096C2 (ru) 2020-09-29
US11877008B2 (en) 2024-01-16
WO2017195476A1 (ja) 2017-11-16
RU2018138853A3 (zh) 2020-07-21
AU2022235590A1 (en) 2022-10-13
CA3019490A1 (en) 2017-11-16
KR20190006953A (ko) 2019-01-21
RU2020129092A (ru) 2020-10-05
US20190104322A1 (en) 2019-04-04
EP3454559A1 (en) 2019-03-13
US20200112747A1 (en) 2020-04-09
US20200112746A1 (en) 2020-04-09
US20230117669A1 (en) 2023-04-20
EP3454559A4 (en) 2019-03-13
KR102397673B1 (ko) 2022-05-16
MX2018013461A (es) 2019-03-28
CN109076222B (zh) 2021-08-31
US20210329300A1 (en) 2021-10-21
RU2018138853A (ru) 2020-05-12
US11070841B2 (en) 2021-07-20
US11546635B2 (en) 2023-01-03
US10595046B2 (en) 2020-03-17
US10869061B2 (en) 2020-12-15
US20240129533A1 (en) 2024-04-18
CN109076222B9 (zh) 2021-10-15
AU2017261992A1 (en) 2018-11-22

Similar Documents

Publication Publication Date Title
CN109076222A (zh) 图像处理装置和方法
US20200304790A1 (en) Image processing apparatus and method
CN109076226B (zh) 图像处理装置和方法
US11368720B2 (en) Image processing apparatus and method
CN110431843A (zh) 图像处理装置及方法
US20220394299A1 (en) Image processing apparatus and method
CN109691107A (zh) 图像处理装置和图像处理方法
CN109417621A (zh) 图像处理装置及方法
CN109804632A (zh) 图像处理装置和图像处理方法
CN103535037A (zh) 图像处理装置和图像处理方法
CN109644269A (zh) 图像处理设备、图像处理方法和程序
CN105230017B (zh) 图像编码装置和方法以及图像解码装置和方法
CN110169071A (zh) 图像处理装置和图像处理方法
CN109076217A (zh) 图像处理装置和图像处理方法
CN104641649A (zh) 图像处理装置和方法
WO2019065261A1 (ja) 符号化装置、符号化方法、復号装置、及び、復号方法
CN106105226B (zh) 图像编码装置及方法

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40000785

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant
CI03 Correction of invention patent
CI03 Correction of invention patent

Correction item: Description

Correct: Correct

False: error

Number: 36-01

Page: ??

Volume: 37