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

图像处理装置和方法 Download PDF

Info

Publication number
CN109792522A
CN109792522A CN201780058664.5A CN201780058664A CN109792522A CN 109792522 A CN109792522 A CN 109792522A CN 201780058664 A CN201780058664 A CN 201780058664A CN 109792522 A CN109792522 A CN 109792522A
Authority
CN
China
Prior art keywords
transformation
identifier
inverse
horizontal
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
CN201780058664.5A
Other languages
English (en)
Other versions
CN109792522B (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 CN109792522A publication Critical patent/CN109792522A/zh
Application granted granted Critical
Publication of CN109792522B publication Critical patent/CN109792522B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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)

Abstract

本公开内容涉及一种可以抑制编码效率降低的图像处理装置和方法。根据本发明,对编码数据进行解码,并且基于所得到的变换跳过标识符的值来控制逆一次垂直变换的执行和逆一次水平变换的执行。此外,基于变换跳过标识符的值来控制一次水平变换的执行和一次垂直变换的执行,并且对变换跳过标识符进行编码。例如,本公开内容可以应用于图像处理装置、图像编码装置、图像解码装置等。

Description

图像处理装置和方法
技术领域
本公开内容涉及图像处理装置和方法,并且具体地涉及可以抑制编码效率的降低的图像处理装置和方法。
背景技术
在过去,已经公开了自适应一次变换(AMT:自适应多核变换),其中,对于水平方向上的一次变换PTor(也称为一次水平变换)和垂直方向上的一次变换PTver(也称为一次垂直变换)中的每一个,从多个不同的正交变换中自适应地选择一次变换(例如,参考非专利文献1)。
要注意的是,在专利文献1中还公开了,对于水平方向(x方向)和垂直方向(y方向)中的每一个,包括变为一次变换的候选的正交变换的变换集TransformSet是(唯一地)基于模式信息与变换集之间的对应表(帧内预测模式信息)确定(选择)的。还公开了基于变换块大小和模式信息确定变换集的定义(例如,参考非专利文献2)。
引用列表
非专利文献
非专利文献1
JVET-C1001,Algorithm description of Joint Exploration Test Model 3,发布于2016年7月2日,url:http://phenix.int-evry.fr/jvet/doc_end_user/documents/3_Geneva/wg11/JV ET-C1001-v3.zip。
非专利文献2
JVET-C0022,Proposed improvements to the Adaptive multiple coretransform,发布于2016年5月16日,url:http://phenix.int-evry.fr/jvet/doc_end_user/documents/3_Geneva/wg11/JV ET-C0022-v4.zip。
发明内容
技术问题
然而,现有方法具有以下限制:仅在特定变换块尺寸和帧内预测模式号的情况下才能选择一维变换跳过。因此,在速率失真的角度上与执行二维正交变换相比选择跳过水平方向或垂直方向上的正交变换的一维变换跳过为更好的情况下,由于编码器侧不能选择一维变换跳过,因此存在编码效率可能降低的可能性。
本公开内容鉴于如上所述的这样的情况被提出,并且可以抑制编码效率的降低。
问题的解决方案
本技术的第一方面的图像处理装置是以下图像处理装置,该图像处理装置包括:解码部,其被配置成对编码数据进行解码;逆一次垂直变换控制部,其被配置成基于通过解码部对编码数据的解码而获得的变换跳过标识符的值来控制逆一次垂直变换的执行,该逆一次垂直变换是针对从图像数据变换的变换系数数据的垂直方向上的逆一次变换;以及逆一次水平变换控制部,其被配置成基于变换跳过标识符的值来控制逆一次水平变换的执行,该逆一次水平变换是针对从图像数据变换的系数数据的水平方向上的逆一次变换。
逆一次垂直变换控制部可以控制逆一次垂直变换的执行,使得:在变换跳过标识符指示不跳过垂直方向上的一维变换的情况下,执行针对变换系数数据的逆一次垂直变换,然而,在变换跳过标识符指示跳过垂直方向上的一维变换的情况下,省略针对变换系数数据的逆一次垂直变换。
逆一次水平变换控制部可以控制逆一次水平变换的执行,使得:在变换跳过标识符指示不跳过水平方向上的一维变换的情况下,执行针对变换系数数据的逆一次水平变换,然而,在变换跳过标识符指示跳过水平方向上的一维变换的情况下,省略针对变换系数数据的逆一次水平变换。
图像处理装置还可以包括:选择部,其被配置成选择要应用于逆一次垂直变换和逆一次水平变换的正交变换。
选择部可以:基于通过解码部对编码数据的解码而获得的一次垂直变换指定标志和垂直变换集标识符来选择要应用为逆一次垂直变换的正交变换;并且基于通过解码部对编码数据的解码而获得的一次水平变换指定标志和水平变换集标识符来选择要应用为逆一次水平变换的正交变换。
解码部可以响应于变换跳过标识符的值来从一次变换标识符得出一次垂直变换指定标志和一次水平变换指定标志。
解码部可以在变换跳过标识符指示不跳过二维变换的情况下,通过将一次变换标识符处理为2比特的二进制串(bin string)来得出一次垂直变换指定标志和一次水平变换指定标志,并且可以在变换跳过标识符指示不跳过垂直方向或水平方向上的一维变换的情况下,通过将一次变换标识符处理为1比特的二进制串来得出一次垂直变换指定标志和一次水平变换指定标志。
解码部可以对编码数据中包括的一次水平变换指定标志和一次垂直变换指定标志进行解码。
在变换跳过标识符指示不跳过二维变换或者垂直方向或水平方向上的一维变换的情况下,解码部可以省略对二次变换标识符的解码并且将二次变换标识符设置成指示不执行二次变换的值。
本技术的第一方面的图像处理方法是以下图像处理方法,该图像处理方法包括:对编码数据进行解码;基于通过对编码数据的解码而获得的变换跳过标识符的值来控制逆一次垂直变换的执行,该逆一次垂直变换是针对从图像数据变换的变换系数数据的垂直方向上的逆一次变换;以及基于变换跳过标识符的值来控制逆一次水平变换的执行,该逆一次水平变换是针对从图像数据变换的系数数据的水平方向上的逆一次变换。
本技术的第二方面的图像处理装置是以下图像处理装置,该图像处理装置包括:一次水平变换控制部,其被配置成基于变换跳过标识符的值来控制一次水平变换的执行,该一次水平变换是针对图像与预测图像之间的残差数据的水平方向上的一次变换;一次垂直变换控制部,其被配置成基于变换跳过标识符的值来控制一次垂直变换的执行,该一次垂直变换是针对图像与预测图像之间的残差数据的垂直方向上的一次变换;以及编码部,其被配置成对变换跳过标识符进行编码。
一次水平变换控制部可以控制一次水平变换的执行,使得:在变换跳过标识符指示不跳过水平方向上的一维变换的情况下,执行针对残差数据的一次水平变换,然而,在变换跳过标识符指示跳过水平方向上的一维变换的情况下,省略针对残差数据的一次水平变换。
一次垂直变换控制部可以控制一次水平变换的执行,使得:在变换跳过标识符指示不跳过垂直方向上的一维变换的情况下,执行对残差数据的一次垂直变换,然而,在变换跳过标识符指示跳过垂直方向上的一维变换的情况下,省略对残差数据的一次垂直变换。
图像处理装置还可以包括:选择部,其被配置成选择要应用于一次水平变换和逆一次垂直变换的正交变换。
选择部可以基于水平变换集标识符和一次水平变换指定标志来选择要应用为一次水平变换的正交变换,并且可以基于垂直变换集标识符和一次垂直变换指定标志来选择要应用为一次垂直变换的正交变换。
编码部可以响应于变换跳过标识符的值来从一次水平变换指定标志和一次垂直变换指定标志得出一次变换标识符。
编码部可以在变换跳过标识符指示不跳过二维变换的情况下,使用一次水平变换指定标志和一次垂直变换指定标志来得出2比特的二进制串的一次变换标识符,并且可以在变换跳过标识符指示不跳过垂直方向或水平方向上的一维变换的情况下,使用一次水平变换指定标志或一次垂直变换指定标志来得出1比特的二进制串的一次变换标识符。
编码部可以对一次水平变换指定标志和一次垂直变换指定标志进行编码。
在变换跳过标识符指示不跳过二维变换或者垂直方向或水平方向上的一维变换的情况下,编码部可以省略对二次变换标识符的编码。
本技术的第二方面的图像处理方法是以下图像处理方法,该图像处理方法包括:基于变换跳过标识符的值来控制一次水平变换的执行,该一次水平变换是针对图像与预测图像之间的残差数据的水平方向上的一次变换;基于变换跳过标识符的值来控制一次垂直变换的执行,该一次垂直变换是针对图像与预测图像之间的残差数据的垂直方向上的一次变换;以及对变换跳过标识符进行编码。
在本技术的第一方面的图像处理装置和方法中,对编码数据进行解码,并且基于通过对编码数据的解码而获得的变换跳过标识符的值,控制逆一次垂直变换的执行,该逆一次垂直变换是针对从图像数据变换的变换系数数据的垂直方向上的逆一次变换。此外,基于变换跳过标识符的值,控制逆一次水平变换的执行,该逆一次水平变换是针对从图像数据变换的系数数据的水平方向上的逆一次变换。
在本技术的第二方面的图像处理装置和方法中,基于变换跳过标识符的值来控制一次水平变换的执行,该一次水平变换是针对图像与预测图像之间的残差数据的水平方向上的一次变换,并且基于变换跳过标识符的值,执行一次垂直变换的执行,该一次垂直变换是针对图像与预测图像之间的残差数据的垂直方向上的一次变换。然后,对变换跳过标识符进行编码。
本发明的有益效果
根据本公开内容,可以对图像进行处理。特别地,可以抑制编码效率的降低。
附图说明
[图1]图1是描绘要被选择的正交变换与变换集之间的对应关系的视图。
[图2]图2是描绘要使用的函数与正交变换的类型之间的对应关系的视图。
[图3]图3是描绘变换集与预测模式之间的对应关系的视图。
[图4]图4是描绘变换集与块尺寸之间的对应关系的视图。
[图5]图5是描绘变换跳过标识符的语义的视图。
[图6]图6是示出CU的递归块分割的概况的说明图。
[图7]图7是示出对图6中所描绘的CU设置PU的说明图。
[图8]图8是示出对图6中所描绘的CU设置TU的说明图。
[图9]图9是示出CU/PU的扫描顺序的说明图。
[图10]图10是描绘图像解码装置的主要配置示例的框图。
[图11]图11是描绘逆变换部的主要配置示例的框图。
[图12]图12是示出图像解码处理的流程的示例的流程图。
[图13]图13是示出逆变换处理的流程的示例的流程图。
[图14]图14是示出逆一次变换选择处理的流程的示例的流程图。
[图15]图15是描绘解码部的主要配置示例的框图。
[图16]图16是示出解码处理的流程的示例的流程图。
[图17]图17是描绘语法的示例的视图。
[图18]图18是描绘解码部的主要配置示例的框图。
[图19]图19是示出解码处理的流程的示例的流程图。
[图20]图20是示出一次垂直/水平变换指定标志得出处理的流程的示例的流程图。
[图21]图21是描绘解码部的主要配置示例的框图。
[图22]图22是示出解码处理的流程的示例的流程图。
[图23]图23是描绘语法的示例的视图。
[图24]图24是描绘解码部的主要配置示例的框图。
[图25]图25是描绘语法的示例的视图。
[图26]图26是描绘逆变换部的主要配置示例的框图。
[图27]图27是描绘图像编码装置的主要配置示例的框图。
[图28]图28是描绘变换部的主要配置示例的框图。
[图29]图29是示出图像编码处理的流程的示例的流程图。
[图30]图30是示出变换处理的流程的示例的流程图。
[图31]图31是示出一次变换选择处理的流程的视图。
[图32]图32是描绘编码部的主要配置示例的框图。
[图33]图33是示出编码处理的流程的示例的流程图。
[图34]图34是描绘编码部的主要配置示例的框图。
[图35]图35是示出编码处理的流程的示例的流程图。
[图36]图36是示出一次变换标识符得出处理的流程的示例的流程图。
[图37]图37是描绘编码部的主要配置示例的框图。
[图38]图38是示出编码处理的流程的示例的流程图。
[图39]图39是描绘编码部的主要配置示例的框图。
[图40]图40是描绘变换部的主要配置示例的框图。
[图41]图41是描绘计算机的主要配置示例的框图。
[图42]图42是描绘电视机装置的一般配置的示例的框图。
[图43]图43是描绘便携式电话设备的一般配置的示例的框图。
[图44]图44是描绘记录和再现装置的一般配置的示例的框图。
[图45]图45是描绘成像装置的一般配置的示例的框图。
[图46]图46是描绘视频设备的一般配置的示例的框图。
[图47]图47是描绘视频处理器的一般配置的示例的框图。
[图48]图48是描绘视频处理器的一般配置的另一示例的框图。
[图49]图49是描绘网络系统的一般配置的示例的框图。
具体实施方式
在下文中,将描述用于执行本公开内容的方式(在下文中称为“实施方式”)。要注意的是,按以下顺序给出描述。
1.第一实施方式(图像解码装置)
2.第二实施方式(标识符的解码)
3.第三实施方式(一次变换指定标志的编码)
4.第四实施方式(缩放)
5.第五实施方式(图像编码装置)
6.第六实施方式(标识符的解码)
7.第七实施方式(一次变换指定标志的编码)
8.第八实施方式(缩放)
9.第九实施方式(其他)
<第一实施方式>
<一次变换>
在非专利文献1中公开的测试模型(JEM3(联合探索测试模型3))中,出于提高4K等的高分辨率图像的编码效率的目的,CTU尺寸的最大尺寸从128×128扩展到256×256。此外,作为用于块分割的结构,除了现有的四叉树分割以外,还引入了水平/垂直方向上的二叉树,并且与此同时,除了矩形变换块以外,还引入了非矩形变换块。
此外,在JEM3中,公开了自适应一次变换(AMT(自适应多核变换)),其中,对于每个TU单元,从针对水平方向上的一次变换PThor(也称为一次水平变换)和垂直方向上的一次变换PTver(也称为一次垂直变换)中的每一个的多个不同正交变换中自适应地选择一次变换。
更具体地,在指示是否要在例如TU单元中执行自适应一次变换的自适应一次变换标志apt_flag(也称为amt_flag、cu_pt_flag或emt_flag)为0(假)的情况下,作为一次变换,DCT-II或DST-VII由模式信息(唯一地)确定。
相反,例如,在自适应一次变换标志apt_flag为1(真)的情况下,从如图1所示的三个候选(Transform SetIdx=0到2)中选择包括变为关于水平方向(x方向)和垂直方向(y方向)的一次变换的候选的正交变换的变换集TransformSet。图1中所示的DSI(离散正弦变换)-VII、DCT(离散余弦变换)-VIII等指示正交变换的类型,并且如图2中所示的表中的这样的函数用于DSI-VII、DCT-VIII等。
基于如图3所示的表中的帧内预测模式(帧内模式)来执行对变换集TransformSet的选择(确定)。例如,执行对变换集TransformSet的选择(确定),使得指定与每个变换集TransformSet{H,V}对应的变换集TransformSet的变换集标识符TransformSetIdx被设置成如下面的表达式(1)和(2)所示的变换集TransformSet{H,V}。
TransformSetH=LUT_IntraModeToTransformSet[IntraMode][H(=0)]...(1)
TransformSetV=LUT_IntraModeToTransformSet[IntraMode][V(=1)]...(2)
此处,TransformSetH指示一次水平变换PThor的变换集,而TransformSetV指示一次垂直变换PTver的变换集,并且查找表LUT_IntraModeToTransformSet指示图3的对应表。查找表LUT_IntraModeToTransformSet[][]的第一阵列将帧内预测模式IntraMode作为变元(argument),并且第二阵列将{H=0,V=1}作为变元。
例如,在帧内预测模式号9(IntraMode==9)的情况下,选择图1的表中描绘的变换集标识符TransformSetIdx=0的变换集作为一次水平变换PThor的变换集TransformSetH(也称为一次水平变换集),并且选择图1的表中描绘的变换集标识符TransformSetIdx=2的变换集作为一次垂直变换PTver的变换集TransformSetV(也称为一次垂直变换集)。
此外,通过一次水平变换指定标志pt_hor_flag来选择将所选择的变换集TransformSet中的哪一个正交变换应用于一次水平变换。此外,通过一次垂直变换指定标志pt_hor_flag来选择将所选择的变换集TransformSet中的哪一个正交变换应用于一次垂直变换。例如,从图1中描绘的变换集的定义表(LUT_TransformSetToTransformType)得出一次水平变换PThor和一次垂直变换PTver,其中将一次{水平,垂直}变换集TransformSet{H,V}和一次{水平,垂直}变换指定标志pt_{hor,ver}_flag分别作为如下面的表达式(3)和(4)所示的变元。
PThor=LUT_TransformSetToTransformType[TransformSetH][pt_hor_fla g]
...(3)
PTver=LUT_TransformSetToTransformType[TrasnformSetV][pt_ver_fla g]
...(4)
例如,在帧内预测模式号9(IntraMode==9)的情况下,由于一次水平变换集TransformSetH的变换集标识符的值为0,因此在图1的变换集定义表LUT_TransformSetToTransformType上从具有变换集标识符TransformSetIdx==0的变换集内选择(指定)一次水平变换。具体地,在一次水平变换指定标志pt_hor_flag为0的情况下,选择DT-VII作为一次水平变换PThor,然而,在一次水平变换指定标志pt_hor_flag为1的情况下,选择DCT-VIII作为一次水平变换PThor。
此外,根据以下表达式(5)从一次水平指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag得出一次变换标识符pt_idx。
pt_idx=(pt_ver_flag<<1)+pt_hor_flag
...(5)
特别地,一次变换标识符pt_idx的高1位与一次垂直变换指定标志的值对应,并且低1位与一次水平变换指定标志的值对应。对于得出的一次变换标识符pt_idx的二进制串,通过应用算术编码来执行编码以生成比特串。
在非专利文献2中,作为配置一次变换集的正交变换,除了非专利文献1的正交变换的候选{DST-VII,DST-1,DCT-VIII}以外,还公开了跳过DST-IV和一维正交变换并仅执行缩放的恒等变换(Identity Transform)(也称为IDT或一维变换跳过(1D变换跳过))。此外,在非专利文献2中,在图1中添加了新的变换集(变换集标识符TransformSetIdx==3)。
此外,在非专利文献2的情况下,基于变换块尺寸和模式信息来确定变换集的定义。在图4的表中描绘了在帧内预测模式号为9的情况下的4×4/8×8/16×16/32×32变换中的变换集的定义的示例。例如,在图4所示的表中,在变换块尺寸为4×4的情况下,在变换集标识符TrasnformSetIdx=2的变换集中,选择IDT作为一次水平变换PThor,并且选择DST-VII作为一次垂直变换PTver。特别地,如下面给出的表达式(6)和(7)所示,从查找表LUT_TransformSet选择一次水平变换PThor和一次垂直变换PTver的正交变换,其中将帧内预测模式IntraMode作为第一阵列的变元,将变换块尺寸的对数-2的值作为第二阵列的变元,将变换集标识符TransformSetIdx作为第三阵列的变元,并且将水平方向H(=0)或垂直方向V(=1)作为第四阵列的变元。
PThor=LUT_TransfomSet[IntraMode(=9)][log2TBSize-2(=0)][TransformSetIdx(=2)][H(=0)]=IDT
...(6)
PTver=LUT_TransfomSet[IntraMode(=9)][log2TBSize-2(=0)][TransformSetIdx(=2)][V(=1)]=DST-VII
...(7)
要注意的是,在非专利文献2中,一次变换标识符pt_idx与变换集标识符TransfromSetIdx对应,如下面的表达式(8)所示。
pt_idx=TransformSetIdx
...(8)
在非专利文献2中,存在以下限制:仅在特定变换块尺寸和特定帧内预测模式号的情况下才可以选择一维变换跳过。因此,在从速率失真的角度上选择跳过水平方向或垂直方向上的正交变换的一维变换跳过而不是二维正交变换为更好的情况下,由于不能在编码器侧选择一维变换跳过,因此存在可以降低编码效率的可能性。
因此,在编码侧,基于变换跳过标识符的值来控制一次水平变换的执行,该一次水平变换是对图像与预测图像之间的残差数据的水平方向上的一次变换,并且基于变换跳过标识符的值来控制一次垂直变换的执行,该一次垂直变换是对图像与预测图像之间的残差数据的垂直方向上的一次变换,并且对变换跳过标识符进行编码。同时,在解码侧,对编码数据进行解码,并且基于通过对编码数据的解码而获得的变换跳过标识符的值来控制逆一次垂直变换的执行,该逆一次垂直变换是对从图像数据变换的变换系数数据的垂直方向上的逆一次变换,并且基于变换跳过标识符的值来控制逆一次水平变换的执行,该逆一次水平变换是对从图像数据转换的系数数据的水平方向上的逆一次变换。
通过如刚刚描述的这样的控制,在期望跳过水平方向或垂直方向上的一维变换的情况下,可以抑制(逆)一次变换的处理量的减少和能量压缩的减少,以提高编码效率。
<块分割>
在诸如MPEG2(运动图像专家组2(ISO/IEC 13818-2))或MPEG-4Part10(高级视频编码,下文中称为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(Prediction Block)的处理单元(预测块)。此外,按被称为TU(Transform Unit)的处理单元(变换单元)执行正交变换处理。通过将CU或PU分割到特定深度来形成TU。此外,TU包括针对亮度(Y)和色差(Cb和Cr)中的每一个的、被称为TB(Transform Block)的处理单元(变换块)。
<递归块分割>
图6是示出关于HEVC中的CU的递归块分割的概况的说明图。通过递归地重复将一个块分割成四个(=2×2)子块来执行对CU的块分割,并且作为结果,形成呈四叉树(Quad-Tree)形式的树结构。一个四叉树的整体被称为CTB(编码树块),并且与CTB对应的逻辑单元被称为CTU(编码树单元(Coding Tree Unit))。
在图6的上部处,作为尺寸为64×64像素的CU的C01被示为示例。C01的分割深度等于零。这表示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中的每一个均变为编码处理中的处理单元。
<PU至CU的设置>
PU是包括帧内预测和帧间预测的预测处理中的处理单元。通过以几种分割模式中之一对CU进行分割来形成PU。图7是示出对图6中所描绘的CU设置PU的说明图。在图7的右侧区域中,描绘了2N×2N、2N×N、N×2N、N×N、2N×nU、2N×nD、nL×2N和nR×2N这八种分割模式。在帧内预测中,可以从八种分割模式中选择2N×2N和N×N这两种分割模式(可以仅在SCU中选择N×N)。相比之下,在帧间预测中,在启用非对称运动分割的情况下,可以选择全部八种分割模式。
<TU至CU的设置>
TU是正交变换处理的处理单元。通过将CU(对于帧内CU,是CU中的每个PU)分割到特定深度来形成TU。图8是示出对图7中所描绘的CU设置TU的说明图。在图8中的右侧区域中,描绘了可以对C02设置的一个或多个TU。例如,作为TU的T01具有32×32像素的尺寸,并且TU分割的深度等于零。作为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以便从左到右以及从上到下跟随四叉树。当要处理当前块时,将上部邻近块和左部邻近块的信息用作输入信息。图9是示出CU和PU的扫描顺序的说明图。在图9中的左上部,描绘了作为可以包括在一个CTB中的四个CU的C10、C11、C12和C13。每个CU的框架中的数字表示处理的顺序编号。按作为左上CU的C10、右上CU的C11、左下CU的C12和右下CU的C13的顺序执行编码处理。在图9中的右部处,描绘了能够对作为CU的C11设置的用于帧间预测的一个或更多个PU。在图9的下部处,描绘了能够对作为CU的C12设置的用于帧内预测的一个或更多个PU。如PU的框架中的数字所示,也遵循从左到右以及从上到下来扫描PU。
在下面的描述中,有时使用“块”作为图像(图片)的处理单元或部分区域来给出描述(“块”不是处理部的块)。这种情况下的“块”表示图片中的任意的部分区域,并且其大小、形状、特性等不受限制。换言之,假设在这种情况下“块”包括任意的部分区域(处理单元),例如,诸如TB、TU、PB、PU、SCU、CU、LCU(CTB)、子块、宏块、图块、切片等。
<图像解码装置>
图10是描绘呈应用了本技术的图像处理装置的形式的图像解码装置的配置示例的框图。图10中描绘的图像解码装置100是如AVC或HEVC中那样对从图像与图像的预测图像之间的预测残差编码的编码数据进行解码的装置。例如,图像解码装置100包含由HEVC提出的技术或由JVET(联合视频研究组)提出的技术。
参照图10,图像解码装置100包括解码部111、去量化部112、逆变换部113、算术运算部114、帧存储器115和预测部116。要注意的是,预测部116包括未示出的帧内预测部和帧间预测部。图像解码装置100是用于通过对编码数据#1(比特流)进行解码来生成运动图像#2的装置。
解码部111接收编码数据#1作为其输入,并且可变长度根据语法表的定义从编码数据#1的比特串解码语法元素的语法值。此外,语法元素包括诸如头部信息Hinfo、预测模式信息Pinfo、变换信息Tinfo、残差信息Rinfo等的信息。
诸如VPS/SPS/PPS/切片头部SH的头部信息Hinfo包括规定图像尺寸(水平宽度PicWidth、垂直宽度PicHeight)、比特深度(亮度bitDepthY、色差bitDepthC)、CU尺寸的最大值MaxCUsize/最小值MinCUSize、四叉树(quad-tree)分割(也称为Quad-tree分割)的最大深度MaxQTDepth/最小深度MinQTDepth、二叉树(binary tree)分割(Binary-tree分割)的最大深度MaxBTDepth/最小深度MinBTDepth、变换跳过块的最大值MaxTSSize(也称为最大变换跳过块尺寸)、每个编码工具的开/关标志(也称为有效标志)等的信息。
例如,作为头部信息Hinfo中包括的编码工具的开/关标志,与下面所示的变换和量化处理有关的开/关标志是可用的。要注意的是,每个编码工具的开/关标志也可以被解释为指示在编码数据中是否存在与编码工具有关的语法的标志。此外,在开/关标志的值为1(真)的情况下,这指示编码工具是可用的,而在开/关标志的值为0(假)的情况下,这指示编码工具是不可用的。要注意的是,可以调换对标志值的解释。
自适应一次变换有效性标志apt_enabled_flag(也称为adaptive_primary_transform_enabled_flag、adaptive_pt_enabled_flag或amt_enabled_flag)是指示可以选择自适应一次变换的编码工具是否可用作变换处理和变换处理的逆处理中之一的标志。
二次变换有效性标志st_enabled_flag是指示用于执行二次变换/逆二次变换的编码工具是否可用作变换处理和逆处理中之一的标志。
变换量化旁路有效性标志transquant_bypass_enabled_flag是指示用于跳过、变换、量化/去量化和逆变换的编码工具是否可用作变换、量化以及变换和量化的逆处理中之一的标志。
变换跳过标志有效性标志ts_enabled_flag是指示二维变换跳过或一维变换跳过是否可用作变换处理和变换处理的逆处理中之一的标志。二维变换跳过是用于跳过包括一次变换和二次变换的正交变换以及正交变换的逆处理(逆正交变换)的编码工具。同时,一维变换跳过是用于从一次变换中跳过水平方向或垂直方向上的一次变换以及与一次变换对应的逆变换(逆一次变换)以及二次变换和二次变换的逆二次变换的编码工具。
预测模式信息Pinfo还包括处理目标PU的PU尺寸(预测块尺寸)PUSize、帧内预测模式信息IPinfo(例如,7.3.8.5编码单元语法、JCTVC-W1005中的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)等。
同时,变换信息Tinfo包括例如以下项的语法:处理目标变换块的水平宽度尺寸TBWidth和垂直宽度TBHeight、指示是否要跳过(逆)变换和(去)量化的处理的变换量化旁路标志transquant_bypass_flag、指定诸如二维变换跳过或一维变换跳过的各种变换跳过模式的变换跳过标识符ts_idx、指示是否要将自适应一次变换应用于目标TU的自适应一次变换标志apt_flag、指示要针对垂直方向和水平方向中的每个方向上的(逆)一次变换应用(逆)一次变换中的哪一种的一次变换标识符pt_idx、指示要应用(逆)二次变换中的哪一种的二次变换标识符st_sdx(也称为dnsst_idx、nsst_idx或rot_idx)、扫描标识符scanIdx、量化参数qp、量化矩阵scaling_matrix等。要注意的是,代替处理目标变换块的水平宽度尺寸TBWidth和垂直宽度TBHeight,可以在变换信息Tinfo中分别包括TBWidth和TBHeight以2为底的对数log2TBWidth和log2TBHeight。
残差信息Rinfo包括例如最后的非零系数X坐标(last_sig_coeff_x_pos)、最后的非零系数Y坐标(last_sig_coeff_y_pos)、子块非零系数存在/不存在标志(coded_sub_block_flag)、非零系数存在/不存在标志(sig_coeff_flag)、指示非零系数的级别是否大于1的标志(gr1_flag)(也称为GR1标志)、指示非零系数的级别是否大于2的标志(gr2_flag)(也称为GR2标志)、表示非零系数是正还是负的符号(sign_flag)(也称为符号代码)、非零系数的剩余级别(coeff_abs_level_remaining)(也称为非零系数剩余级别)等。
解码部111参考残差信息Rinfo以得出变换块中的系数位置的量化变换系数级别level。解码部111将通过解码而获得的预测模式信息Pinfo、量化变换系数级别level和变换信息Tinfo提供给相关联的块。例如,解码部111将预测模式信息Pinfo提供给预测部24,将量化变换系数级别level提供给去量化部22,并且将变换信息Tinfo提供给逆变换部113和去量化部112。
去量化部112接收变换信息Tinfo和量化变换系数级别level作为其输入,并且基于变换信息Tinfo对量化变换系数级别level的值进行缩放(去量化),并且将去量化之后的变换系数Coeff_IQ输出至逆变换部113。
逆变换部113接收变换系数Coeff_IQ和变换信息Tinfo作为其输入,并且将逆变换应用于变换系数Coeff_IQ以得出预测残差D'并且将预测残差D'输出至算术运算部114。下文中描述逆变换部113的细节。
算术运算部114接收从预测部116提供的预测残差D'和预测图像P作为其输入,将预测残差D'和与预测残差D'对应的预测图像P(预测信号)相加以得出如下面给出的表达式(9)所示的局部解码图像Rec,并且将局部解码的图像Rec提供给帧存储器115或图像解码装置100的外部。
Rec=D’+P
...(9)
帧存储器115接收从算术运算部114提供的局部解码图像Rec作为其输入,并且针对每个图像单元重新构造解码图像并且将解码图像存储在帧存储器115中的缓冲器中。帧存储器115从缓冲器读出由预测部116的预测模式信息Pinfo指定的解码图像作为参考图像,并且将参考图像提供给预测部116。此外,帧存储器115可以将与生成解码图像有关的头部信息Hinfo、预测模式信息Pinfo、变换信息Tinfo等存储到帧存储器115中的缓冲器中。
预测部116接收预测模式信息Pinfo作为其输入,并且使用存储在帧存储器115中并由预测模式信息PInfo指定的解码图像通过由预测模式信息Pinfo指定的预测方法生成预测图像P作为参考图像,并且将所生成的预测图像P输出至算术运算部114。
图11是描绘在图10的图像解码装置100中设置的逆变换部113的主要配置示例的框图。如图11所示,逆变换部113包括开关121、逆二次变换部122和逆一次变换部123。
开关121接收变换系数Coeff_IQ和变换跳过标识符ts_idx作为其输入。在变换跳过标识符ts_idx的值是NO_TS(=0)或1D_H_TS(=2)或者1D_V_TS(=3)的情况下(在指示向水平方向和垂直方向中之一应用一维跳过或不应用变换跳过的情况下),开关121将变换系数Coeff_IQ输出至逆二次变换部122。另一方面,在变换跳过标志ts_idx的值是2D_TS(=1)的情况下(在指示要应用二维变换跳过的情况下),开关121跳过逆二次变换部122和逆一次变换部123,并且输出变换系数Coeff_IQ作为预测残差D'。
例如,在变换跳过标识符ts_idx是2D_TS(=1)并且要输入至逆变换部113的变换系数Coeff_IQ是4×4矩阵Coeff_IQ=[[255,0,0,0][0,0,0,0],[0,0,0,0],[0,0,0,0]]的情况下,开关121输出变换系数Coeff_IQ作为预测残差D'。特别地,预测残差D'变为D’=[[255,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]]。因此,可以跳过逆二次变换和逆一次变换。特别地,可以对非零系数的数目小并且期望应用二维变换跳过的稀疏残差信号执行实现逆变换的处理量的减少和编码效率的增强的逆变换处理。
逆二次变换部122接收二次变换标识符st_idx、指示针对变换系数的扫描方法的扫描标识符scanIdx和变换系数Coeff_IQ作为其输入,并且得出并将逆二次变换之后的变换系数Coeff_IS(也称为一次变换系数)提供给逆一次变换部123。更具体地,在二次变换标识符st_idx指示要应用逆二次变换(st_idx>0)的情况下,逆二次变换部122对变换系数Coeff_IQ执行与二次变换标识符st_idx对应的逆二次变换的处理,并且输出逆二次变换之后的变换系数Coeff_IS。在二次变换标识符st_idx指示不应用逆二次变换(st_idx==0)的情况下,跳过逆二次变换,并且输出变换系数Coeff_IQ作为逆二次变换之后的变换系数Coeff_IS。
逆一次变换部123接收一次水平变换指定标志pt_hor_flag、一次垂直变换指定标志pt_ver_flag、预测模式信息PInfo、变换跳过标识符ts_idx和逆二次变换之后的变换系数Coeff_IS作为其输入。逆一次变换部123选择由预测模式信息PInfo、变换跳过标识符和一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag指定的逆一次水平变换的矩阵IPThor(=PThorT)和逆一次垂直变换的矩阵IPTver(=PTverT),利用所述方向上的逆一次变换的所选择的矩阵对逆二次之后的变换系数Coeff_IS(也称为一次变换系数Coeff_P)执行逆一次水平变换和逆一次垂直变换,以得出逆一次变换之后的预测残差D'并且输出预测残差D'。
如图11所示,逆一次变换部123包括逆一次变换选择部131、开关132、逆一次垂直变换部133、另一开关134和逆一次水平变换部135。
逆一次变换选择部131接收一次水平变换指定标志pt_hor_flag、一次垂直变换指定标志pt_ver_flag、预测模式信息PInfo和变换跳过标识符ts_idx作为其输入,从逆一次变换选择部131的内部存储器(未示出)读出由预测模式信息PInfo、变换跳过标识符ts_idx以及一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag指定的逆一次水平变换的矩阵IPThor(=PThorT)和逆一次垂直变换的矩阵IPTver(=PTverT)并且将它们提供给逆一次水平变换部135和逆一次垂直变换部133。
更具体地,在自适应一次变换标志apt_flag(也称为CU一次变换标志cu_pt_flag)为1(真)的情况下,逆一次变换选择部131例如基于图3中所描绘的模式信息与变换集之间的对应表(帧内预测模式信息)针对水平方向和垂直方向中的每一个方向从图1的表中所描绘的变换集标识符TransfromSetIdx=0,...,2中的三个变换集TransformSet中选择包括变为一次变换的候选的正交变换的变换集TransformSet。要注意的是,在图3中,帧内预测模式号35可以被视为指示帧间预测(帧间)或帧内块复制(IBC:帧内块复制)的模式。
例如,执行选择,使得对于变换集TransformSet{H,V}中的每一个,变换集标识符TransformSetIdx用于指定如由以下条件表达式(10)表示的对应变换集TransformSet。
if(apt_flag)
TransformSetH=LUT_IntraModeToTransformSet[IntraMode][H(=0)]
TransformSetV=LUT_IntraModeToTransformSet[IntraMode][V(=1)]
else//apt_flag==0
TransformSetH=TransformSetV=3(predetermined value)
...(10)
此处,TransformSetH指示一次水平变换PThor的变换集,而TransformSetV指示一次垂直变换PTver的变换集,并且查找表LUT_IntraModeToTransformSet指示图3的对应表。查找表LUT_IntraModeToTransformSet[][]的第一阵列将帧内预测模式IntraMode作为变元,并且第二阵列将{H=0,V=1}作为变元。例如,在帧内预测模式号9(IntraMode==9)的情况下,选择图1的表中描绘的变换集标识符TransformSetIdx=0的变换集作为一次水平变换PThor的变换集TransformSetH(也称为一次水平变换集),并且选择图1中描绘的变换集标识符TransformSetIdx=2的变换集作为一次垂直变换PTver的变换集TransformSetV(也称为一次垂直变换集)。另一方面,在自适应一次变换标志amt_flag为0(假)的情况下,逆一次变换选择部131将图1的表中描绘的变换集标识符TransfromSetIdx=3(预定值)的变换集TransformSet设置为包括变为一次变换的候选的正交变换的变换集。
此外,逆一次变换选择部131分别根据一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag针对每个水平/垂直方向,从所选择的变换集TransformSet中选择要用于逆一次变换的正交变换。
例如,如在下面给出的条件表达式(11)中那样,在一次水平变换指定标志pt_hor_flag为-1的情况下,选择与一维变换跳过对应的矩阵IDT,然而,在一次水平变换指定标志pt_hor_flag不是-1的情况下,从图1所示的变换集的定义表(LUT_TransformSetToTransformType)得出正交变换,其中将一次水平变换集TransformSetH和一次水平变换指定标志pt_hor_flag作为变元。
if(pt_hor_flag!=-1)
IPThor=LUT_TransformSetToTransformType[TransformSetH][pt_hor_flag]
else
IPThor=IDT
...(11)
例如,如果以帧内预测模式号9(IntraMode==9)的情况下的逆一次水平变换为示例,那么由于一次水平变换集TransformSetH的变换集标识符的值为0,因此从在图1的变换集定义表LUT_TransformSetToTransformType上的变换集标识符TransformSetIdx==0的变换集内选择逆一次水平变换。特别地,在一次水平变换指定标志pt_hor_flag==-1的情况下,选择IDT作为逆一次水平变换IPThor;在一次水平变换指定标志pt_hor_flag==0的情况下,选择DST-VII作为逆一次水平变换IPThor;并且在一次水平变换指定标志pt_hor_flag为1的情况下,选择DCT-VIII作为逆一次水平变换IPThor。
类似地,同样关于逆一次垂直变换,如下面给出的条件表达式(12)所示,在一次垂直变换指定标志pt_ver_flag为-1的情况下,矩阵IDT(单位矩阵)与一维变换跳过对应,并且在一次垂直变换指定标志pt_ver_flag不为-1的情况下,从图1中描绘的变换集的定义表(LUT_TransformSetToTransformType)内得出正交变换,其中将一次垂直变换集TransformSetV和一次垂直变换指定标志pt_ver_flag作为变元。
if(pt_ver_flag!=-1)
IPTver=LUT_TransformSetToTransformType[TrasnformSetV][pt_ver_flag]
else
IPTver=IDT
...(12)
要注意的是,尽管在上面给出的表达式(11)和(12)中,在pt_{hor,ver}_flag==-1的情况下,IDT是通过条件分支设置的,但可以参考查找表LUT_TransformSetToTransformType[][]来设置IDT。在这种情况下,如果将查找表LUT_TransformSetToTransformType[0...3][-1]的元素的值设置为IDT就足够了。要注意的是,虽然在该示例中,pt_{hor,ver}_flag==-1是表示一维变换跳过的值,但该值可以在可行的范围内自由地改变。此外,可以在可行的范围内自由地改变图1中的变换集标识符和pt_{hor,ver}_flag的值的组合。例如,在pt_{hor,ver}_flag==1的情况下,可以设置DST-VII而不管变换集标识符的值如何,并且在pt_{hor,ver}_flag==0的情况下,可以分别按变换集标识符0到3的顺序设置DCT-VIII、DST-I、DCT-V和DST-VII。此外,变换集标识符0到2的顺序可以在可行的范围内自由地改变。此外,逆一次变换选择部131可以响应于运动预测信息MVinfo以及一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag来选择逆一次水平变换IPThor和逆一次垂直变换IPTver代替帧内预测模式信息IPinfo。
此后,逆一次变换选择部131从由逆一次变换部123保持的缓冲器(未示出)中读出与逆一次水平变换IPThor和逆一次垂直变换IPTver对应的正交变换的矩阵,并且提供与逆一次垂直变换和逆一次水平变换对应的矩阵。
开关132接收逆二次变换之后的变换系数Coeff_IS(也称为一次变换系数Coeff_P)和变换跳过标识符ts_idx作为其输入。在变换跳过标识符ts_idx的值是1D_V_TS(=3),即,指示要跳过垂直方向上的一维变换(ts_idx==1D_V_TS)(要跳过(逆)一次垂直变换)的情况下,开关132跳过逆一次垂直变换部133的处理,并且输出一次变换系数Coeff_IS作为逆一次垂直变换之后的变换系数Coeff_IPver。另一方面,在变换跳过标识符ts_idx的值不是1D_V_TS(=3)(ts_idx!=1D_V_TS)的情况下(指示不跳过(逆)一次垂直变换),开关132输出一次变换系数Coeff_IS。
针对每个变换块,逆一次垂直变换部133接收逆二次变换之后的变换系数Coeff_IS和逆一次垂直变换IPTver的矩阵作为其输入,执行由下面给出的表达式(13)表示的矩阵运算,并且输出矩阵运算的结果作为逆一次垂直变换之后的变换系数Coeff_IPver。要注意的是,逆一次垂直变换IPTver是对具有作为列向量的变换基础的一次垂直变换PTver的逆变换,并且由从一次垂直变换PTver转置的矩阵PTverT表示。
Coeff_IPver=(IPTver·Coeff_IS)>>s1
=(PTverT·Coeff_IS)>>s1
...(13)
此处,运算符“·”表示矩阵乘积(内积),运算符“T”表示转置矩阵的运算,并且运算符“>>”表示用于对元素执行右移运算的运算。根据表达式(13),通过利用预定的缩放参数s1对一次垂直变换之后的转置矩阵PTverT(=IPTver)和变换系数Coeff_IS的矩阵乘积的每个元素执行右移运算来获得变换系数Coeff_IPver的每个值。要注意的是,缩放参数s1用于对IPTver·Coeff_IS的矩阵运算结果进行归一化,以便适合中间缓冲器的比特深度。根据中间缓冲器的比特深度BitDepthbuff和IPTver·Coeff_IS的矩阵运算的比特深度的最坏情况MaxBitDepth(IPTver·Coeff_IS)来确定缩放参数s1的值,例如,如由下面的表达式(14)所指示的那样。
s1=max(0,MaxBitDepth(IPTver·Coeff_IS)-BitDepthbuff)
...(14)
例如,在IPTver·Coeff_IS的值范围是-2**22至2**22-1的情况下,即,在MaxBitDepth(IPTver·Coeff_IS)的比特深度是23比特并且可以存储到中间缓冲器中的值的值范围是-2**15至2**15-1(即,中间缓冲器的比特深度是16比特)的情况下,缩放参数s1变为s1=7比特(=max(0,23-16)=,max(0,7))。
另一方面,在MaxBitDepth(IPTver·Coeff_IS)的比特深度是23比特并且可以存储到中间缓冲器中的值的值范围是-2**31至2**31-1的情况下,即,在中间缓冲器的比特深度是32比特的情况下,缩放参数s1变为s1=0比特(=max(0,23-32)=max(0,-9))。缩放参数s1为0表示:由于中间缓冲器的比特深度的值足够高,因此即使IPTver·Coeff_IS的矩阵乘积的元素值未被归一化,也可以将它们存储到中间缓冲器中而不溢出。要注意的是,缩放参数s1可以是假设IPTver·Coeff_IS的值范围为已知的情况下预先确定的固定值。
此外,为了减少由上文所述的表达式(13)的右移运算引起的限幅(clip)误差,在矩阵乘积之后,可以针对每个元素添加预定的偏移值o1。此时,使用缩放参数s1由以下表达式(15)表示偏移值o1。
o1=(s1>0?1<<(s1-1):0)
...(15)
开关134接收逆一次垂直变换之后的变换系数Coeff_IPver和变换跳过标识符ts_idx。在变换跳过标识符ts_idx的值是1D_H_TS(=2),即,指示水平方向上的一维变换(ts_idx==1D_H_TS)(要跳过(逆)一次水平变换)的情况下,开关134跳过逆一次水平变换部135,并且将逆一次垂直变换之后的变换系数Coeff_IPver作为预测残差D'输出到外部。另一方面,在变换跳过标识符ts_idx的值不是1D_H_TS(=2)(ts_idx!=1D_H_TS)的情况下(在指示不跳过(逆)一次水平变换的情况下),开关134将逆一次垂直变换之后的变换系数Coeff_IPver输出至逆一次水平变换部135。
针对每个变换块,逆一次水平变换部135接收逆一次垂直变换之后的变换系数Coeff_IPver和逆一次水平变换IPThor的矩阵作为其输入,执行如下面给出的表达式(16)所指示的矩阵运算,并且输出矩阵运算的结果作为预测残差D'。要注意的是,逆一次水平变换IPThor是具有作为行向量的变换基础的一次水平变换PThor的逆变换,并且由从一次水平变换PThor转置的矩阵PThorT表示。
D’=(Coeff_IPver·IPThor)>>s2
=(Coeff_IPver·PThorT)>>s2
...(16)
此处,运算符“·”表示矩阵乘积(内积),运算符“T”表示转置矩阵的运算,并且运算符“>>”表示用于对每个元素执行右移运算的运算。根据表达式(16),通过利用预定的缩放参数s2对一次水平变换的转置矩阵PThorT(=IPTver)和变换系数Coeff_IPver的矩阵乘积的每个元素执行右移运算来获得预测残差D'的每个值。要注意的是,缩放参数s2用于对Coeff_IPver·IPThor的矩阵运算结果进行归一化,以便适合期望的比特深度。根据下面的表达式(17)从Coeff_IPver·IPThor的矩阵运算的比特深度的最坏情况MaxBitDepth(Coeff_IPver·IPThor)和期望的比特深度BitDepthout来确定缩放参数s2的值。
s2=max(0,MaxBitDepth(Coeff_IPver·IPThor)–BitDpethout)
...(17)
例如,在Coeff_IPver·IPThor的值范围是-2**22到2**22-1的情况下,即,在MaxBitDepth(Coeff_IPver·IPThor)的比特深度为23比特并且可以在所期望的比特深度下采用的值的值范围是-2**15到2**15-1的情况下,即,在期望比特深度是16比特的情况下,缩放参数s2变为s2=7比特(=max(0,23-16)=max(0,7))。
此外,在MaxBitDepth(Coeff_IPver·IPThor)的比特深度是23比特并且可以在期望比特深度下采用的值的值范围是-2**31到2**31-1的情况下,即,在期望比特深度是32比特的情况下,缩放参数s2变为s2=0比特(=max(0,23-32)=max(0,-9))。由于缩放参数s2为0表示:由于期望比特深度的值足够高,因此即使Coeff_IPver·IPThor的矩阵乘积的像素值未被归一化,像素值也适合于期望的比特深度。
要注意的是,为了减少由上文所述的表达式(16)的右移运算引起的限幅误差,在矩阵乘积之后,可以针对每个元素添加预定的偏移值o2。此时,使用缩放参数s2通过以下表达式(18)来表示偏移值o2。
o2=(s2>0?1<<(s2-1):0)
...(18)
如上所述,对于关于其期望跳过水平方向或垂直方向上的一维变换的残差信号,逆一次变换部123可以执行减少逆一次变换的处理量的逆一次变换处理,并且防止能量压缩的减少,以提高编码效率。
特别地,对于具有信号的连续性在水平方向上快速改变的阶梯边缘特性的残差信号,通过跳过水平方向上的一维变换并且执行垂直方向上的一维变换,与执行二维正交变换的情况相比,可以在垂直方向上的频率分量的低频区域上有效地集中非零系数。特别地,由于可以增大能量压缩,因此可以实现编码效率的提高。
类似地,对于具有信号的连续性在垂直方向上快速改变的阶梯边缘特性的残差信号,通过跳过垂直方向上的一维变换并且执行水平方向上的一维变换,与执行二维正交变换的替代情况相比,可以在水平方向上的频率分量的减少上有效地集中非零系数。特别地,由于可以增大能量压缩,因此可以实现编码效率的提高。
<图像解码处理的流程>
现在,描述由如上所述的这样的图像解码装置100执行的处理的流程。首先,参照图12的流程图描述图像解码处理的流程。
在图像解码处理开始之后,在步骤S101处,解码部111对被提供给图像解码装置100的比特流(编码数据)进行解码,并且获取诸如头部信息Hinfo、预测模式信息Pinfo、变换信息Tinfo、残差信息Rinfo、量化变换系数级别level等的信息。
在步骤S102处,去量化部112对通过步骤S101处的处理而获得的量化变换系数级别level进行去量化,以得出变换系数Coeff_IQ。该去量化是在下文中描述的图像编码处理中执行的量化的逆处理,并且是与在图像编码处理中执行的去量化类似的处理。
在步骤S103处,逆变换部113对通过步骤S102处的处理而获得的变换系数Coeff_IQ进行逆变换,以得出预测残差D'。该逆变换是对在下文中描述的图像编码处理中执行的变换处理的逆处理,并且是与在图像编码处理中执行的逆变换的处理类似的处理。
在步骤S104处,预测部116基于预测模式信息PInfo、以与编码时进行的预测中的预测模式相同的预测模式执行预测,以生成预测图像。
在步骤S105处,算术运算部114将通过步骤S104处的处理而获得的预测图像与通过步骤S103处的处理而获得的预测残差D'相加,以获得解码图像。
在步骤S106处,算术运算部114将通过步骤S105处的处理获得的解码图像输出至图像解码装置100的外部。
在步骤S107处,帧存储器115存储通过步骤S105处的处理获得的解码图像。
当步骤S107处的处理结束时,图像解码处理结束。
<逆变换的处理的流程>
现在,参照图13的流程图来描述在图12的步骤S103处执行的逆变换处理的流程的示例。在逆变换处理开始之后,在步骤S121处,开关121判定变换跳过标识符ts_idx是否为2D_TS(二维变换跳过的模式)或变换量化旁路标志transquant_bypass_flag是否为1(真)。在判定变换跳过标识符ts_idx是2D_TS或变换量化旁路标志是1(真)的情况下,变换系数Coeff_IQ作为预测残差D'通过开关121被输出到外部(提供给算术运算部114),并且逆变换处理结束,处理返回到图12。
另一方面,在步骤S121处判定变换跳过标识符ts_idx不是2D_TS(不同于二维变换跳过的模式)并且此外变换量化旁路标志是0(假)的情况下,变换系数Coeff_IQ通过开关121被提供给逆二次变换部122,并且处理进行到步骤S122。
在步骤S122处,逆二次变换部122基于二次变换标识符st_idx对输入至其的变换系数Coeff_IQ'执行逆二次变换,以得出并输出一次变换系数Coeff_IS。
在步骤S123处,逆一次变换选择部131执行逆一次变换选择处理以参考一次水平变换指定标志pt_hor_flag、一次垂直变换指定标志pt_ver_flag、预测模式信息PInfo和变换跳过标识符ts_idx来选择逆一次水平变换IPThor和逆一次垂直变换IPTver。
在步骤S124处,开关132判定变换跳过标识符ts_idx是否为1D_V_TS(垂直方向上的一维变换跳过的模式)(ts_idx==1D_V_TS)。在变换跳过标识符ts_idx不是1D_V_TS的情况下,处理进行到步骤S125。
在步骤S125处,逆一次垂直变换部133针对每个变换块接收逆二次变换之后的变换系数Coeff_IS和用于逆一次垂直变换IPTver的矩阵作为其输入,执行矩阵运算,并且输出矩阵运算的结果作为逆一次垂直变换之后的变换系数Coeff_IPver。在步骤S125处的处理结束之后,处理进行到步骤S126。
另一方面,在步骤S124处变换跳过标识符ts_idx是1D_V_TS的情况下,省略步骤S125处的处理,并且处理进行到步骤S126。
在步骤S126处,开关134判定变换跳过标识符ts_idx是否为1D_H_TS(水平方向上的一维变换跳过的模式)(ts_idx==1D_H_TS)。在判定变换跳过标识符ts_idx不是1D_H_TS的情况下,处理进行到步骤S127。
在步骤S127处,对于每个变换块,逆一次水平变换部135接收逆一次垂直变换之后的变换系数Coeff_IPver和用于逆一次水平变换IPThor的矩阵作为其输入,执行矩阵运算,并且输出矩阵运算的结果作为预测残差D'。当步骤S127处的处理结束时,逆变换处理结束并且处理返回到图12。
另一方面,在步骤S126处判定变换跳过标识符ts_idx是1D_H_TS的情况下,省略步骤S127处的处理,并且逆变换处理结束,并且处理返回到图12。
尽管上文是对逆一次变换部123的处理的描述,但是可以在可行的范围内执行步骤的处理顺序的重新布置或处理的内容的改变。例如,可以省略步骤S124和S126处的处理,而在步骤S123处判定变换跳过标识符ts_idx是否是1D_V_TS(垂直方向上的一维变换跳过)。然后,在步骤S123处判定变换跳过标识符ts_idx是1D_V_TS的情况下,可以选择单位矩阵作为逆一次垂直变换IPTver,使得执行步骤S125处的处理。此外,在步骤S123处判定变换跳过标识符ts_idx是1D_H_TS的情况下,可以选择单位矩阵作为逆一次水平变换IPThor,使得执行步骤S127处的处理。
<逆一次变换选择处理的流程>
现在,参照图14的流程图描述在图13的步骤S123处执行的逆一次变换选择处理的流程的示例。
在开始逆一次变换选择处理之后,在步骤S141处,逆一次变换选择部131判定自适应一次变换标志apt_flag是否为1(真)。在判定自适应一次变换标志apt_flag是1(真)的情况下,处理进行到步骤S142。在步骤S142处,逆一次变换选择部131关于逆一次垂直变换和逆一次水平变换中的每一个基于预测模式信息PInfo根据上文给出的表达式(10)来选择变换集。在步骤S142处的处理结束之后,处理进行到步骤S144。
另一方面,在步骤S141处判定自适应一次变换标志apt_flag为0(假)的情况下,处理进行到步骤S143。在步骤S143处,逆一次变换选择部131选择预定变换集。在步骤S143处的处理结束之后,处理进行到步骤S144。
在步骤S144处,逆一次变换选择部131参考一次水平变换集TransformSetH和一次水平变换指定标志pt_hor_flag,以根据上文给出的表达式(11)来选择要应用为逆一次水平变换IPThor的正交变换。
在步骤S145处,逆一次变换选择部131参考垂直变换集标识符TransformSetV和一次垂直变换指定标志pt_ver_flag,以根据上文给出的表达式(12)来选择要应用为逆一次垂直变换IPTver的正交变换。
当步骤S145处的处理结束时,逆一次变换选择处理结束,并且处理返回到图13。
要注意的是,该逆一次变换选择处理可以经历在可行的范围内重新布置步骤的处理顺序或改变处理的内容。例如,在步骤S144处的处理中,在变换跳过标识符ts_idx==TS_1D_H_TS的情况下(在要跳过水平方向上的一维变换的情况下),可以抑制明确指示一维变换跳过的正交变换IDT(单位矩阵)被选择。类似地,在步骤S145处的处理中,在变换跳过标识符ts_idx==TS_1D_V_TS的情况下(在要跳过垂直方向上的一维变换的情况下),可以抑制明确地指示一维变换跳过的正交变换IDT(单位矩阵)被选择。
通过以如上所述的这种方式执行处理,图像解码装置100可以减少对期望应用变换跳过的残差信号的逆变换的处理量,并且抑制能量压缩的减少,并且可以实现编码效率的提高。
更具体地,逆变换部113可以减少逆一次变换的处理量并且抑制与期望跳过水平方向或垂直方向上的一维变换的残差信号有关的能量压缩的减少,并且可以实现编码效率的提高。特别地,对于具有信号的连续性在水平方向上快速改变的阶梯边缘特性的残差信号,通过跳过水平方向上的一维变换并且执行垂直方向上的一维变换,与执行二维正交变换的替代情况相比,可以在垂直方向上的频率分量的低频区域上有效地集中非零系数。特别地,由于可以增强能量压缩,因此可以实现编码效率的提高。类似地,对于具有信号的连续性在垂直方向上快速改变的阶梯边缘特性的残差信号,通过跳过垂直方向上的一维变换并且执行水平方向上的一维变换,与执行二维正交变换的替代情况相比,可以在水平方向上的频率分量的低频区域上有效地集中非零系数。特别地,由于可以增强能量压缩,因此可以实现编码效率的提高。
<2.第二实施方式>
<一次变换标识符的解码>
在JEM3中,以CU单元(=PU单元=TU单元)对自适应一次变换标志apt_flag进行解码,并且在CU中包括的每个变换块单元中对一次变换标识符pt_idx和变换跳过标志ts_flag进行解码。此外,根据下面给出的表达式(19)从一次变换标识符pt_idx得出一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag。
pt_hor_flag=pt_idx&0x01
pt_ver_flag=pt_idx>>1(=(pt_idx&0x10)>>1)
...(19)
具体地,一次变换标识符pt_idx具有2比特的值,并且高1位与一次垂直变换指定标志pt_ver_flag对应,而低1位与一次水平变换指定标志pt_hor_flag对应。要注意的是,在编码侧,以如下面给出的表达式(20)所示的这样方式执行一次变换标识符pt_idx的得出。
pt_idx=((pt_ver_flag)<<1)+pt_hor_flag
...(20)
因此,在下面给出的(1)至(3)的改变应用于如上结合第一实施方式所描述的现有技术的JEM3的情况下,由于在变换块单元中被解码的变换跳过标识符ts_idx是1D_H_TS,由于未使用一次水平变换指定标志pt_hor_flag,因此对该信息进行编码/解码是冗余的。此外,在变换跳过标识符ts_idx指示1D_V_TS的情况下,由于未使用一次垂直变换指定标志pt_ver_flag,因此对该信息进行编码/解码是冗余的。
(1)变换跳过标志ts_flag被扩展为变换跳过标识符ts_idx。
(2)当变换跳过标识符ts_idx是1D_H_TS时,跳过逆二次变换和逆一次水平变换。
(3)当变换跳过标识符ts_idx是1D_V_TS时,跳过逆二次变换和逆一次垂直变换。
因此,为了有效地对一次变换标识符pt_idx进行编码/解码,可以应用如下所述的这样的改变。
(1)在变换跳过标识符ts_idx=NO_TS的情况下,在解码侧,根据上文给出的表达式(19)从一次变换标识符pt_idx得出一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag。在编码侧,根据表达式(20)从一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag得出一次变换标识符pt_idx。
(2)当变换跳过标识符ts_idx是1D_H_TS时,在解码侧,根据下面给出的表达式(21),一次垂直变换指定标志pt_ver_flag被得出为pt_ver_flag=pt_idx,并且一次水平变换指定标志pt_hor_flag被得出为pt_hor_flag=-1(预定值)。在编码侧,根据下面给出的表达式(22),一次变换标识符pt_idx被得出为pt_idx=pt_ver_flag。
pt_ver_flag=pt_idx
pt_hor_flag=-1(预定值)
...(21)
pt_idx=pt_ver_flag
...(22)
(3)当变换跳过标识符ts_idx是1D_V_TS时,在解码侧,根据下面给出的表达式(23),一次水平变换指定标志pt_hor_flag被得出为pt_hor_flag=pt_idx,并且一次垂直变换指定标志pt_ver_flag被得出为pt_ver_flag=-1(预定值)。在编码侧,根据下面给出的表达式(24),一次变换标识符pt_idx被得出为pt_idx=pt_hor_flag。
pt_hor_flag=pt_idx
pt_ver_flag=-1(预定值)
...(23)
pt_idx=pt_hor_flag
...(24)
(4)当变换跳过标识符ts_idx是2D_TS时,在解码侧,根据下面给出的表达式(25),一次水平变换指定标志pt_hor_flag被得出为-1(预定值),并且一次垂直变换指定标志pt_ver_flag被得出为pt_ver_flag=-1(预定值)。在编码侧,省略了对一次变换标识符pt_idx的编码。
pt_hor_flag=-1(预定值)
pt_ver_flag=-1(预定值)
...(25)
通过执行上述改变,在变换跳过标识符ts_idx是1D_H_TS或1D_V_TS的情况下,由于一次变换标识符pt_idx被算术解码/算术编码为1比特的二进制串,因此与一次变换标识符pt_idx被算术解码/算术编码为2比特的二进制串的替代情况相比,变为解码/编码目标的二进制串可能减少。因此,可以抑制代码量的增加,并且可以实现编码效率的提高。
此外,关于二次变换,二次变换是被设计成增强应用二维正交变换的变换系数的能量压缩的变换。因此,存在以下可能性:二次变换的应用被应用于应用二维变换跳过或一维变换跳过的变换系数可能相反地降低编码效率。因此,在变换跳过标识符ts_idx是2D_TS、1D_H_TS或1D_V_TS的情况下,应用跳过逆二次变换的这样的改变。在这种情况下,对作为(逆)二次变换的控制参数的二次变换标识符st_idx进行编码/解码是冗余的。
因此,在变换跳过标识符ts_idx是2D_TS、1D_H_TS或1D_V_TS的情况下,可以应用这样的改变:省略对二次变换标识符st_idx的解码,并且此外二次变换标识符st_idx的值被估计为指示不执行二次变换的值(0)。通过该改变,可以抑制与二次变换标识符st_idx的解码有关的处理量的增加。此外,由于二次变换不应用于应用二维变换跳过或一维变换跳过的变换系数,因此可以防止编码效率的降低。
<变换跳过标识符ts_idx的解码>
图15是描绘与解码部111对变换跳过标识符ts_idx的解码有关的主要配置示例的框图。如图15所示,在这种情况下,解码部111包括变换跳过有效性标志解码部151、最大变换跳过块尺寸解码部152、变换量化旁路标志解码部153和变换跳过标识符解码部154。
变换跳过有效性标志解码部151执行与变换跳过有效性标志ts_enabled_flag的解码有关的处理。最大变换跳过块尺寸解码部152执行与最大变换跳过块尺寸MaxTSSize的解码有关的处理。变换量化旁路标志解码部153执行与变换量化旁路标志transquant_bypass_flag的解码有关的处理。变换跳过标识符解码部154执行与变换跳过标识符ts_idx的解码有关的处理。
参照图16的流程图描述由如上所述的这样的解码部111在图12的步骤S101处执行的与变换跳过标识符ts_idx有关的解码处理的流程的示例。
在开始解码处理之后,在步骤S161处,变换跳过有效性标志解码部151从编码数据#1的比特串解码变换跳过有效性标志ts_enabled_flag,并且输出经解码的变换跳过有效性标志ts_enabled_flag作为头部信息Hinfo的一部分。
在步骤S162处,最大变换跳过块尺寸编码部152判定在头部信息Hinfo中包括的变换跳过有效性标志ts_enabled_flag是否为1(真)。在判定变换跳过有效性标志ts_enabled_flag是1的情况下,处理进行到步骤S163。
在步骤S163处,最大变换跳过块尺寸解码部152从编码数据#1的比特串解码最大变换跳过块尺寸MaxTSSize(或以2为底的对数log2MaxTSSize)。在步骤S163处的处理结束之后,处理进行到步骤S164。另一方面,在步骤S162处判定变换跳过有效性标志ts_enabled_flag为0的情况下,省略步骤S163处的处理,并且处理进行到步骤S164。
在步骤S164处,变换量化旁路标志解码部153从编码数据#1的比特串解码变换量化旁路标志transquant_bypass_flag,并且输出经解码的变换量化旁路标志transquant_bypass_flag作为变换信息Tinfo的一部分。
在步骤S165处,变换跳过标识符解码部154判定变换信息Tinfo中包括的变换量化旁路标志transquant_bypass_flag是否为1(真)。在判定变换量化旁路标志transquant_bypass_flag为1的情况下,处理进行到S169。另一方面,在步骤S165处判定变换量化旁路标志transquant_bypass_flag为0的情况下,处理进行到步骤S166。
在步骤S166处,变换跳过标识符解码部154判定头部信息Hinfo中包括的变换跳过有效性标志ts_enabled_flag是否为1(真)。在判定变换跳过有效性标志ts_enabled_flag为0的情况下,处理进行到步骤S169。另一方面,在步骤S166处判定变换跳过有效性标志ts_enabled_flag为1的情况下,处理进行到步骤S167。
在步骤S167处,变换跳过标识符解码部154判定处理目标的变换块的尺寸TBSize是否等于或小于最大变换跳过块尺寸MaxTSSize(条件表达式(TBSize<=MaxTSSize)的逻辑值是否为1(真))。要注意的是,在条件表达式(TBSize<=MaxTSSize)中,根据下面给出的表达式(26)得出TBSize。在表达式(26)的情况下,变换块的水平尺寸TBWSize和垂直尺寸TBHSize中较大一个的值是TBSize。
TBSize=max(TBWSize,TBHSize)
...(26)
代替表达式(26),可以使用下面给出的表达式(27)。在表达式(27)的情况下,通过将变换块的水平尺寸TBWSize与垂直尺寸TBHSize相乘而获得的值是TBSize。
TBSize=TBWSize*TBHSize
...(27)
在表达式(26)和(27)中,TBSize、TBWSize和TBHSize可以分别用以2为底的对数log2TBSize、log2TBWSize和log2TBHSize替换。在这种情况下,用下面给出的表达式(28)代替表达式(26),并且用下面给出的表达式(29)代替表达式(27)。要注意的是,在使用对数的情况下,上文给出的条件表达式(TBSize<=MaxTSSize)的TBSize和最大变换跳过块尺寸MaxTSSize分别由对应的对数log2TBSize和log2MaxTSSize代替。
log2TBSize=max(log2TBWSize,log2TBHSize)
...(28)
log2TBSize=log2TBWSize+log2TBHSize
...(29)
在步骤S167处判定处理目标的变换块的尺寸TBSize大于最大变换跳过块尺寸MaxTSSize(条件表达式(TBSize<=MaxTSSize)的逻辑值为0(假))的情况下,处理进行到步骤S169。另一方面,在步骤S167处判定处理目标的变换块的尺寸TBSize等于或小于最大变换跳过块尺寸MaxTSSize(条件表达式(TBSize<=MaxTSSize)的逻辑值为1(真))的情况下,处理进行到步骤S168。
在步骤S168处,变换跳过标识符解码部154从编码数据#1的比特串解码变换跳过标识符ts_idx,并且输出变换跳过标识符ts_idx作为变换信息Tinfo的一部分。当步骤S168处的处理结束时,与变换跳过标识符有关的解码处理结束,并且处理返回到图12。
另一方面,在步骤S169处,变换跳过标识符解码部154估计ts_idx的值是NO_TS(=0)(省略对变换跳过标识符ts_idx的解码),并且将该值设置为ts_idx。换言之,ts_idx变为ts_idx=NO_TS。当步骤S169处的处理结束时,与变换跳过标识符有关的解码处理结束,并且处理返回到图12。
在图17中描绘了描述步骤S165至S169处的处理的伪代码的语法表。可以如在下面给出的条件表达式(30)中那样表示在图17中附加了参考符号SYN11的if语句的条件表达式(从上面起第二行),并且这特别等同于上面参照图16描述的步骤S165至S167处的分支判定。此外,图16的步骤S168处的处理与对在图17中附加了参考符号SYN12的语法ts_flag的解码(编码)处理对应。
逻辑值=(ts_enabled_flag&&
!transquant_bypass_flag&&
(log2TBSize<=log2MaxTSSize))
...(30)
虽然在上文的描述中描述了与变换跳过标识符ts_idx的解码有关的处理,但是可以在可行的范围内改变各个步骤处的处理的处理顺序的重新布置或内容的改变。此外,可以在可行的范围内在算术运算中改变条件表达式(30)。
通过以如上所述的方式执行处理,与JEM3的情况相比,可以在解码侧的变换块单元中自适应地选择水平方向或垂直方向上的一维变换跳过或二维变换跳过。因此,由于可以通过一维变换跳过的模式来对一维变换跳过比之前更有效的残差信号进行解码,因此可以实现编码效率的提高。
<一次变换标识符pt_idx的解码>
图18是描绘与解码部111的一次变换标识符pt_idx的解码有关的主要配置示例的框图。如图18所示,解码部111包括一次变换有效性标志解码部161、自适应一次变换标志解码部162和一次变换标识符解码部163。
一次变换有效性标志解码部161执行与一次变换有效性标志pt_enabled_flag的解码有关的处理。自适应一次变换标志解码部162执行与一次变换标志pt_enabled_flag的解码有关的处理。一次变换标识符解码部163执行与一次变换标识符pt_idx的解码有关的处理。
参照图19的流程图描述由如上所述的这样的解码部111在图12的步骤S101处执行的与一次变换标识符pt_idx有关的解码处理的流程的示例。
在开始解码处理之后,在步骤S181处,一次变换有效性标志解码部161从编码数据#1的比特串中解码一次变换有效性标志pt_enabled_flag,并且输出经解码的一次变换有效性标志pt_enabled_flag作为头部信息Hinfo的一部分。
在步骤S182处,自适应一次变换标志解码部162判定头部信息Hinfo中包括的一次变换有效性标志pt_enabled_flag是否为1(真)。在判定一次变换有效性标志pt_enabled_flag为0(假)的情况下,处理进行到步骤S183。
在步骤S183处,自适应一次变换标志解码部162省略对自适应一次变换标志apt_flag的编码,并且估计标志的值是0。在步骤S183处的处理结束之后,处理进行到步骤S193。
另一方面,在步骤S182处判定一次变换有效性标志pt_enabled_flag为1(真)的情况下,处理进行到步骤S184。在步骤S184处,自适应一次变换标志解码部162从编码数据#1的比特串解码自适应一次变换标志apt_flag。
在步骤S185处,一次变换标识符解码部163判定自适应一次变换标志apt_flag是否为1(真)。在判定自适应一次变换标志apt_flag为0(假)的情况下,处理进行到步骤S193。另一方面,在步骤S185处判定自适应一次变换标志apt_flag为1(真)的情况下,处理进行到步骤S186。
在步骤S186处,一次变换标识符解码部163判定变换量化旁路标志transquant_bypass_flag是否为1(真)。在判定变换量化旁路标志transquant_bypass_flag为1(真)的情况下,处理进行到步骤S193。另一方面,在步骤S186处判定变换量化旁路标志transquant_bypass_flag为0(假)的情况下,处理进行到步骤S187。
在步骤S187处,一次变换标识符解码部163判定变换跳过标识符ts_idx是否为2D_TS(二维变换跳过)。在判定变换跳过标识符ts_idx是2D_TS的情况下,处理进行到步骤S193。另一方面,在步骤S187处判定变换跳过标识符ts_idx不是2D_TS的情况下,处理进行到步骤S188。
在步骤S188处,一次变换标识符解码部163判定变换块的垂直尺寸(TBHSize)和水平尺寸(TBWSize)是否都等于或小于最大自适应一次变换块尺寸MaxPTSize(max(TBHSize,TBWSize)<=MaxPTSize)。在判定变换块的垂直尺寸或水平尺寸中至少之一大于最大自适应一次变换块尺寸MaxPTSize的情况下,处理进行到步骤S193。另一方面,在步骤S188处判定变换块的垂直尺寸和水平尺寸均等于或小于最大自适应一次变换块尺寸MaxPTSize的情况下,处理进行到步骤S189。
在步骤S189处,一次变换标识符解码部163判定解码目标的变换块是否为亮度分量。在判定解码目标的变换块不是亮度分量的情况下,处理进行到步骤S193。另一方面,在步骤S189处判定解码目标的变换块是亮度分量的情况下,处理进行到步骤S190。
在步骤S190处,一次变换标识符解码部163参考残差信息Rinfo,以得出变换块中存在的非零变换系数的总和numSig(sig_coeff_flag==1的总数)。
在步骤S191处,一次变换标识符解码部163判定非零变换系数的总数numSig是否等于或大于预定阈值ptNumSigTH(numSig>=ptNumSigTH)。在判定非零变换系数的总数numSig小于预定阈值ptNumSigTH的情况下,处理进行到步骤S193。另一方面,在步骤S191处判定非零变换系数的总数numSig等于或大于预定阈值ptNumSigTH(满足numSig>=ptNumSigTH)的情况下,处理进行到步骤S192。
在步骤S192处,一次变换标识符解码部163从编码数据#1的比特串解码一次变换标识符pt_idx。在步骤S192处的处理结束之后,处理进行到步骤S193。
在步骤S193处,一次变换标识符解码部163参考已经解码的一次变换标识符pt_idx和变换跳过标识符ts_idx,以得出一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag。当步骤S193处的处理结束时,解码处理结束,并且处理返回到图12。
在图17中描绘了描述上述步骤S185至S192处的处理的伪代码的语法表。在图17中附加了参考符号SYN13的if语句的条件表达式(下面给出的条件表达式(31)))等同于步骤S185至S192处的分支判定。步骤S192与在图17中附加了参考符号SYN14的语法pt_idx的解码处理对应。要注意的是,在表达式(31)中,省略步骤S188处的条件。由表达式(32)表示包括步骤S188处的条件的表达式。
Logical value=(apt_flag
!transquant_bypass_flag&&
ts_idx!=2D_TS&&
isLuma(cIdx==0)&&
numSig>=ptNumSigTH)
...(31)
Logical value=(apt_flag
!transquant_bypass_flag&&
ts_idx!=2D_TS&&
max(TBW,TBH)<=MaxPTSize&&
isLuma(cIdx==0)&&
numSig>=ptNumSigTH)
...(32)
尽管在上文的描述中描述了与一次变换标识符pt_idx的解码有关的处理,但是可以在可行的范围内改变各个步骤处的处理的内容或处理顺序的重新布置。
现在,参照图20的流程图来描述图19的步骤S193处执行的与一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag的得出有关的处理(一次垂直/水平变换指定标志得出处理)。
在开始一次垂直/水平变换指定标志得出处理之后,一次变换标识符解码部163在步骤S211处判定变换跳过标识符ts_idx是否为NO_TS(不是变换跳过)。在判定变换跳过标识符ts_idx是NO_TS的情况下,处理进行到步骤S212。
在步骤S212处,一次变换标识符解码部163根据上文给出的表达式(19)来得出一次水平变换指定标志pt_hor_flag和一次垂直变换标志pt_ver_flag。简言之,一次变换标识符pt_idx被处理为2比特的二进制串,并且从2比特得出一次水平变换指定标志pt_hor_flag和一次垂直变换标志pt_ver_flag。当步骤S212处的处理结束时,一次垂直/水平变换指定标志得出处理结束,并且处理返回到图19。
在步骤S212处判定变换跳过标识符ts_idx不是NO_TS的情况下,处理进行到步骤S213。在步骤S213处,一次变换标识符解码部163判定变换跳过标识符ts_idx是否为2D_TS(二维变换跳过)。在判定变换跳过标识符ts_idx是2D_TS的情况下,处理进行到步骤S214。
在步骤S214处,一次变换标识符解码部163根据上文给出的表达式(25)来得出一次水平变换指定标志pt_hor_flag和一次垂直变换标志pt_ver_flag。简言之,省略了对一次变换标识符pt_idx的解码,并且将一次水平变换指定标志pt_hor_flag和一次垂直变换标志pt_ver_flag设置为预定值。当步骤S214处的处理结束时,一次垂直/水平变换指定标志得出处理结束,并且处理返回到图19。
在步骤S213处判定变换跳过标识符ts_idx不是2D_TS的情况下,处理进行到步骤S215。在步骤S215处,一次变换标识符解码部163判定变换跳过标识符ts_idx是否为1D_H_TS(水平方向上的一维变换跳过)。在判定变换跳过标识符ts_idx是1D_H_TS的情况下,处理进行到步骤S216。
在步骤S216处,一次变换标识符解码部163根据上面给出的表达式(21)得出一次水平变换指定标志pt_hor_flag和一次垂直变换标志pt_ver_flag。简言之,一次变换标识符pt_idx被处理为1比特的二进制串,并且一次水平变换指定标志pt_hor_flag被设置为预定值,并且一次垂直变换标志pt_ver_flag被设置为一次变换标识符pt_idx的值。当步骤S216处的处理结束时,一次垂直/水平变换指定标志得出处理结束,并且处理返回到图19。
在步骤S215处判定变换跳过标识符ts_idx不是1D_H_TS的情况下,处理进行到步骤S217。在步骤S217处,一次变换标识符解码部163根据上文给出的表达式(23)来得出一次水平变换指定标志pt_hor_flag和一次垂直变换标志pt_ver_flag。简言之,一次变换标识符pt_idx被处理为1比特的二进制串,并且一次水平变换指定标志pt_hor_flag被设置为一次变换标识符pt_idx的值,并且一次垂直变换标志pt_ver_flag被设置为预定值。当步骤S217处的处理结束时,一次垂直/水平变换指定标志得出处理结束,并且处理返回到图19。
虽然上文的描述涉及与一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag的得出有关的处理,但是可以在可行的范围内执行步骤的处理顺序的重新布置或处理的内容的改变。
由于在变换跳过标识符ts_idx是1D_H_TS或1D_V_TS的情况下,可以将一次变换标识符pt_idx算术解码为如上所述的1比特的二进制串,因此与一次变换标识符pt_idx被算术解码为2比特的二进制串的替代情况相比,可以减少变为解码目标的二进制串。因此,可以减少与一次变换标识符pt_idx的解码有关的处理量。此外,由于可以减少代码量,因此还可以实现编码效率的提高。
<二次变换标识符st_idx的解码>
图21是描绘与解码部111的二次变换标识符st_idx的解码有关的主要配置示例的框图。如图21所示,在这种情况下,解码部111包括二次变换有效性标志解码部171和二次变换标识符解码部172。
二次变换有效性标志解码部171执行与二次变换有效性标志st_enabled_flag的解码有关的处理。二次变换标识符解码部172执行与二次变换标识符st_idx的解码有关的处理。
参照图22的流程图来描述由如上所述的这样的解码部111在图12的步骤S101处执行的与二次变换标识符st_idx有关的解码处理的流程的示例。
在开始解码处理之后,在步骤S231处,二次变换有效性标志解码部171从编码数据#1的比特串解码二次变换有效性标志st_enabled_flag,并且输出二次变换有效性标志st_enabled_flag作为头部信息Hinfo的一部分。
在步骤S232处,二次变换标识符解码部172判定头部信息Hinfo中包括的二次变换有效性标志st_enabled_flag是否为1(真)。在判定二次变换有效性标志st_enabled_flag为0(假)的情况下,处理进行到步骤S238。另一方面,在步骤S232处判定二次变换有效性标志st_enabled_flag为1(真)的情况下,处理进行到步骤S233。
在步骤S233处,二次变换标识符解码部172判定变换量化旁路标志transquant_bypass_flag是否为1(真)。在判定变换量化旁路标志transquant_bypass_flag为1(真)的情况下,处理进行到步骤S238。另一方面,在步骤S233处判定变换量化旁路标志transquant_bypass_flag为0(假)的情况下,处理进行到步骤S234。
在步骤S234处,二次变换标识符解码部172判定变换跳过标识符ts_idx是否为NO_TS(不执行变换跳过)。在判定变换跳过标识符ts_idx不是NO_TS的情况下,然后处理进行到步骤S238。另一方面,在步骤S234处判定变换跳过标识符ts_idx为NO_TS的情况下,处理进行到步骤S235。
在步骤S235处,二次变换标识符解码部172参考残差信息Rinfo以得出变换块中存在的非零变换系数的总数numSig(sig_coeff_flag==1的总数)。在步骤S235处的处理结束之后,处理进行到步骤S236。
在步骤S236处,二次变换标识符解码部172判定非零变换系数的总数numSig是否等于或大于预定阈值TH(numSig>=stNumSigTH)。在判定非零变换系数的总数numSig小于预定阈值TH(即,满足numSig<stNumSigTH)的情况下,处理进行到步骤S238。
另一方面,在步骤S236处判定非零变换系数的总数numSig等于或大于预定阈值TH(即,满足numSig>=stNumSigTH)的情况下,处理进行到步骤S237。
在步骤S237处,二次变换标识符解码部172从编码数据#1的比特串解码二次变换标识符st_idx。当步骤S237处的处理结束时,解码处理结束,并且处理返回到图12。
另一方面,在步骤S238处,二次变换标识符解码部172省略对二次变换标识符st_idx的解码,并且估计二次变换标识符st_idx的值是0,并且将该值设置为st_idx。换言之,st_idx变为st_idx=0。当步骤S238处的处理结束时,解码处理结束,并且处理返回到图12。
在图23中描绘了描述步骤S232至S238(除了步骤S235和S237以外)处的伪代码的语法表。在图23中附加了参考符号SYN19的if语句的条件表达式(下面给出的条件表达式(33))等同于步骤S232至S238处的分支判定。此外,在图23中附加了参考符号SYN20的语法与图22的步骤S237处的处理对应。
逻辑值=(st_enabled_flag&&
(transquant_bypass_flag==0||ts_idx==NO_TS)&&
numSig>=stNumSigTH)
...(33)
虽然在上文的描述中描述了与二次变换标识符st_idx的解码有关的处理,但是可以在可行的范围内改变各个步骤处的处理的处理顺序的重新布置或内容的改变。此外,可以在可行的范围内在算术运算方面改变条件表达式(33)。要注意的是,虽然在上文的描述中用于二次变换的控制参数是二次变换标识符st_idx,但是另外也可以是二次变换标志st_flag。
通过以如上所述这样的方式应用本技术,与现有技术相比,在要以变换块为单位对二次变换标识符进行解码的情况下,可以在要应用二维变换跳过或一维变换跳过的情况下(在ts_idx!=NO_TS的情况下)省略对二次变换标识符的解码处理。换言之,可以减少与二次变换标识符的解码有关的处理量。
<3.第三实施方式>
<一次水平变换指定标志和一次垂直变换指定标志的解码>
尽管在上文的描述中描述了从经解码的一次变换标识符pt_idx得出一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag,但这不是限制性的。例如,代替从编码数据#1解码一次变换标识符pt_idx,可以直接从编码数据解码一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag。
图24是描绘与解码部111的一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag的解码有关的主要配置示例的框图。如图24所示,在这种情况下,解码部111包括一次变换有效性标志解码部161、自适应一次变换标志解码部162、一次水平变换指定标志解码部181和一次垂直变换指定标志解码部182。
一次水平变换指定标志解码部181执行与一次水平变换指定标志pt_hor_flag的解码有关的处理。一次垂直变换指定标志解码部182执行与一次垂直变换指定标志pt_ver_flag的解码有关的处理。
在满足在图25所示的语法中附加了参考符号SYN15的if语句的条件的情况下,即,在变换跳过标识符ts_idx是NO_TS或1D_V_TS(ts_idx==NO_TS||ts_idx==1D_V_TS)、变换量化旁路标志为0(假)(transquant_bypass_flag==0)、变换块是亮度分量(cIdx==0)、自适应一次变换标志apt_flag是1(真)(apt_flag==1)、以及另外,变换块中的非零变换系数的总数numSig等于或大于阈值ptNumSigTH(numSig>=ptNumSigTH)的情况下,一次水平变换指定标志解码部181从编码数据#1的比特串解码一次水平变换指定标志pt_hor_flag。在任何其他情况下,一次水平变换指定标志解码部181将一次水平变换指定标志pt_hor_flag的值设置(估计)为-1(预定值)。
类似地,在满足在图25所示的语法中附加了参考符号SYN17的if语句的条件的情况下,即,在变换跳过标识符ts_idx是NO_TS或1D_H_TS(ts_idx==NO_TS||ts_idx==1D_H_TS)、变换量化旁路标志为0(假)(transquant_bypass_flag==0)、变换块是亮度分量(cIdx==0)、自适应一次变换标志apt_flag是1(真)(apt_flag==1)、以及另外,变换块中的非零变换系数的总数numSig等于或大于阈值ptNumSigTH(numSig>=ptNumSigTH)的情况下,一次垂直变换指定标志解码部182从编码数据#1的比特串解码一次垂直变换指定标志pt_ver_flag。在任何其他情况下,一次垂直变换指定标志解码部182将一次垂直变换指定标志pt_ver_flag的值设置(估计)为-1(预定值)。
根据前述内容,在变换跳过标识符ts_idx是1D_H_TS的情况下,可以省略对一次水平变换指定标志pt_hor_flag的解码。类似地,在变换跳过标识符ts_idx是1D_V_TS的情况下,可以省略对一次垂直变换指定标志pt_ver_flag的解码。因此,可以减少与一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag的解码有关的处理量。此外,由于可以抑制代码量的增加,因此也可以实现编码效率的提高。
<4.第四实施方式>
<逆变换部的其他配置>
尽管在第一实施方式中描述了在要跳过逆一次垂直变换的情况下,逆一次变换部123的开关132将一次变换系数Coeff_IS提供给开关134,由此,可以执行用于量化的缩放。此外,尽管在第一实施方式中描述了在要跳过逆一次水平变换的情况下,逆一次变换部123的开关134在逆一次垂直变换被输出之后将变换系数Coeff_IPver作为预测残差D’输出到外部,由此,可以执行用于量化的缩放。
图26是示出这种情况下的逆变换部113的主要配置示例的框图。如图26所示,在这种情况下,逆变换部113也具有与图11的情况下的配置基本类似的配置。然而,在这种情况下,逆一次变换部123包括缩放部191和另一缩放部192。
当要跳过逆一次垂直变换时,开关132将一次变换系数Coeff_IS提供给缩放部191。缩放部191对从开关132提供的一次变换系数Coeff_IS(在逆一次垂直变换之后的变换系数Coeff_IPver)执行缩放。例如,缩放部191执行用于对提供给其的变换系数进行归一化的N(N是自然数)比特的比特移位算术运算,使得与在执行逆一次垂直变换的情况下相比,变换系数具有相同的范数。缩放部191将缩放的变换系数提供给开关134。
在要跳过逆一次水平变换的情况下,开关134将逆一次垂直变换之后的变换系数Coeff_IPver作为预测残差D'提供给缩放部192。类似于缩放部191的情况,缩放部192类似地对从开关134提供的逆一次垂直变换之后的变换系数Coeff_IPver(预测残差D')执行缩放。例如,缩放部192执行用于对提供给其的变换系数进行归一化的N(N是自然数)比特的比特移位算术运算,使得与执行逆一次水平变换的替代情况下相比,它们具有相同的范数。缩放部192将缩放的预测残差D'输出到外部。
根据前述内容,由于可以将变换系数的动态范围宽度抑制在预定范围内,因此可以抑制解码负荷的增加。
<5.第五实施方式>
<图像编码装置>
现在,描述用于生成要以如上所述这样的方式解码的编码数据的编码。图27是描绘呈应用了本技术的图像处理装置的形式的图像编码装置的配置的示例的框图。图27中描绘的图像编码装置300是与图10的图像解码装置100对应的图像编码装置,并且通过与由图像解码装置100进行的解码方法对应的编码方法对图像进行编码来生成要由图像解码装置100解码的编码数据(比特流)。例如,图像编码装置300包括由HEVC提出的技术或由JVET提出的技术。
要注意的是,描绘了处理部、数据流等中的主要部分,并且并非在图27中描绘了所有这样的处理部等。换言之,在图像编码装置300中,可以存在未在图27中被描绘为块的处理部,或者可以存在图27中未指示为箭头标志等的处理或数据流。
如图27所示,图像编码装置300包括控制部311、算术运算部312、变换部313、量化部314、编码部315、去量化部316、逆变换部317、另一算术运算部318、帧存储器319和预测部320。
控制部311基于从外部指定或预先指定的处理单元的块尺寸将运动图像#2分割成处理单元的块(CU、PU、变换块等),并且将与分割块对应的图像I输入至算术运算部312。此外,控制部311例如基于RDO(速率-失真优化)来确定要提供给关联块的编码参数(头部信息Hinfo、预测模式信息Pinfo、变换信息Tinfo等)。所确定的编码参数被提供给关联块。特别地,以下面的方式提供所确定的编码参数。
头部信息Hinfo被提供给块。预测模式信息Pinfo被提供给编码部315和预测部320。变换信息Tinfo被提供给编码部315、变换部313、量化部314、去量化部316和逆变换部317。
算术运算部312接收与处理单元的块对应的图像I和从预测部320提供的预测图像P作为其输入,并且如表达式(34)所示从图像I中减去预测图像P,以得出预测残差D并且将预测残差D提供给变换部313。
D=I–P
...(34)
变换部313执行逆变换部317的处理的逆处理并且接收预测残差D和变换信息Tinfo作为其输入,并且基于变换信息Tinfo将变换应用于预测残差D,以得出变换系数Coeff并且将变换系数Coeff提供给量化部314。
量化部314执行去量化部316的处理的逆处理并且接收变换信息Tinfo和变换系数Coeff作为其输入,并且基于变换信息Tinfo对变换系数Coeff进行缩放(量化)并且将量化之后的变换系数——即量化变换系数级别level——提供给编码部315。
编码部315执行解码部111(图10)的处理的逆处理,并且根据语法表的定义将从控制部311提供的编码参数(头部信息、预测模式信息Pinfo和变换信息Tinfo)和从量化部314提供的量化变换系数级别level转换成各个语法元素的语法值,并且可变长度对语法值进行编码(例如,算术编码)以生成比特串。
要注意的是,编码部315从量化变换系数级别level得出残差信息RInfo,并且可变长度对残差信息RInfo进行编码以生成比特串。此外,编码部315对可变长度编码的语法元素的比特串进行复用,以生成编码数据#1并且输出编码数据#1。
去量化部316是与去量化部112(图10)类似的处理部并且在图像编码装置300中执行与去量化部112的处理类似的处理。逆变换部317是与逆变换部113(图10)类似的处理部并且在图像编码装置300中执行与逆变换部113的处理类似的处理。帧存储器319是与帧存储器115(图10)类似的处理部并且在图像编码装置300中执行与帧存储器115的处理类似的处理。预测部320是与预测部116(图10)类似的处理部并且在图像编码装置300中执行与预测部116的处理类似的处理。
<变换部>
图28是示出变换部313的主要配置示例的框图。如图28所示,变换部313包括开关331、一次变换部332和二次变换部333。
开关331接收预测残差D和变换跳过标识符ts_idx作为其输入,并且在变换跳过标识符ts_idx的值是NO_TS(=0)、1D_H_TS(=2)或1D_V_TS(=3)的情况下(在对水平和垂直方向之一应用一维变换跳过或不应用变换跳过的情况下)将预测残差D提供至一次变换部332。另一方面,在变换跳过标识符ts_idx的值是2D_TS(=1)的情况下(在指示应用二维变换跳过的情况下),开关331跳过一次变换部332和二次变换部333并且将预测残差D作为变换系数Coeff输出到变换部313的外部(量化部314)。
例如,在变换跳过标志ts_idx是2D_TS(=1)并且输入至变换部313的预测残差D是4×4矩阵=[[255,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]]的预测残差D的情况下,开关331输出预测残差D作为变换系数Coeff_IQ。具体地,变换系数Coeff变为Coeff=[[255,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]]。因此,可以跳过一次变换和二次变换。具体地,可以对希望应用二维变换跳过并且其中非零系数的数目小的稀疏残差信号执行实现变换的处理量的减少并且抑制能量压缩的变换处理,并且可以执行提高其编码效率的变换处理。
一次变换部332接收一次水平变换指定标志pt_hor_flag、一次垂直变换指定标志pt_ver_flag、预测模式信息PInfo、变换跳过标识符ts_idx和预测残差D作为其输入。一次变换部332选择预测模式信息PInfo、变换跳过标识符、用于由一次水平变换指定标志pt_hor_flag指定的一次水平变换的矩阵PThor和用于由一次垂直变换指定标志pt_ver_flag指定的一次垂直变换的矩阵PTver,利用所述方向上的一次变换的所选矩阵对预测残差D执行一次水平变换和一次垂直变换,以得出一次变换之后的预测残差D',并且输出预测残差D'。
二次变换部333接收二次变换标识符st_idx、指示变换系数的扫描方法的扫描标识符scanIdx和一次变换之后的变换系数Coeff_P作为其输入,得出在二次变换之后的变换系数Coeff(也称为二次变换系数Coeff_S),并且输出变换系数Coeff。
更具体地,在二次变换标识符st_idx指示要应用二次变换(st_idx>0)的情况下,二次变换部333对一次变换系数Coeff_P执行与二次变换标识符st_idx对应的二次变换的处理,并且输出在二次变换之后的变换系数Coeff_S。另一方面,在二次变换标识符st_idx指示不应用二次变换(st_idx==0)的情况下,二次变换部333跳过二次变换并且输出一次变换之后的变换系数Coeff_P作为二次变换之后的二次变换系数Coeff_S。
如图28所示,一次变换部332包括一次变换选择部341、开关342、一次水平变换部343、另一开关344和一次垂直变换部345。
一次变换选择部341接收一次水平变换指定标志pt_hor_flag、一次垂直变换指定标志pt_ver_flag、预测模式信息PInfo和变换跳过标识符ts_idx作为其输入,从一次变换选择部341的内部存储器(未示出)读出预测模式信息PInfo、变换跳过标识符ts_idx、用于由一次水平变换指定标志pt_hor_flag指定的一次水平变换的矩阵PThor和用于由一次垂直变换指定标志pt_ver_flag指定的一次垂直变换的矩阵PTver,并且将它们分别输出到一次水平变换部343和一次垂直变换部345。
与逆一次变换选择部131的情况类似,一次变换选择部341选择包括正交变换的变换集TransformSet,所述正变变换变为水平方向和垂直方向中的每一个的一次变换的候选。要注意的是,该处理与逆一次变换选择部131的处理相同,并且因此,省略其描述。
与逆一次变换选择部131的逆一次水平变换IPThor和逆一次垂直变换IPTver的选择处理中类似,一次变换选择部341使用一次水平变换指定标志pt_hor_flag从所选择的变换集TransformSet中选择要用于水平方向上的一次变换的正交变换,并且使用一次垂直变换指定标志pt_ver_flag选择要用于垂直方向上的一次变换的正交变换。作为具体处理,针对由逆一次变换选择部131对逆一次水平变换IPThor和一次垂直变换IPTver的选择处理,执行以下替换以进行解释:
·逆一次水平变换IPThor→一次水平变换PThor
·逆一次垂直变换IPTver→一次垂直变换PTver
·逆一次变换→一次变换
开关342接收预测残差D和变换跳过标识符ts_idx作为其输入。在变换跳过标识符ts_idx的值是1D_H_TS(=2),即,指示要跳过水平方向上的一维变换(ts_idx==1D_H_TS)(跳过一次水平变换)的情况下,开关342跳过一次水平变换部343,并且将预测残差D作为一次水平变换之后的变换系数Coeff_Phor输出至开关344。另一方面,在变换跳过标识符ts_idx的值不是1D_H_TS(=2)(ts_idx!=1D_H_TS)(指示不要跳过一次水平变换)的情况下,开关342将预测残差D输出至一次水平变换部343。
一次水平变换部343针对每个变换块接收一次水平变换PThor的矩阵和预测残差D作为其输入,并且如下面给出的表达式(35)所示执行矩阵运算,并且输出矩阵运算的结果作为一次水平变换之后的变换系数Coeff_Phor。要注意的是,一次水平变换PThor是具有作为列向量的变换基础的矩阵。
Coeff_Phor=(D·PThor)>>s3
...(35)
此处,运算符“·”表示矩阵乘积(内积),并且运算符“>>”表示用于对每个元素执行右移运算的运算。根据表达式(35),通过利用预定缩放参数s3对预测残差D与一次水平变换PThor的矩阵乘积的每个元素执行右移运算来获得变换系数Coeff_Phor的每个值。要注意的是,缩放参数s3用于对D·PThor的矩阵运算结果进行归一化,以便适合中间缓冲器的比特深度。如下面的表达式(36)所示,例如根据中间缓冲器的比特深度BitDepthbuff和D·PThor的矩阵运算的比特深度的最坏情况MaxBitDepth(D·PThor)来确定缩放参数s3的值。
s3=max(0,MaxBitDepth(D·PThor)-BitDpethbuff)
...(36)
例如,在D·PThor的值范围是-2**22至2**22-1的情况下,即,在MaxBitDepth(D·PThor)的比特深度是23比特并且可以被存储到中间缓冲器的值的值范围是-2**15至2**15-1的情况下,即,在中间缓冲器的比特深度是16比特的情况下,缩放参数s3是s3=7比特(=max(0,23-16)=max(0,7))。另一方面,在MaxBitDepth(D·PThor)的比特深度是23比特并且可以被存储到中间缓冲器的值的值范围是-2**31至2**31-1的情况下,即,在中间缓冲器的比特深度是32比特的情况下,缩放参数s3变为s3=0比特(=max(0,23-32)=max(0,-9))。缩放参数s3为0表示:由于中间缓冲器的比特深度的值足够高,因此即使D·PThor的矩阵乘积的元素值未被归一化,也可以将它们存储到中间缓冲器中而不溢出。
要注意的是,缩放参数s3可以是假设已知D·PThor的值范围而预先确定的固定值。此外,为了减少由上文所述的表达式(36)的右移运算引起的限幅误差,在矩阵乘积之后,可以为每个元素添加预定的偏移值o3。此时,使用缩放参数s3由以下表达式(37)表示偏移值o3。
o3=(s3>0?1<<(s3-1):0)
...(37)
开关344接收一次水平变换之后的变换系数Coeff_Phor和变换跳过标识符ts_idx作为其输入。在变换跳过标识符ts_idx的值是1D_V_TS(=3),即,指示要跳过垂直方向上的一维变换(ts_idx==1D_V_TS)(跳过一次垂直变换)的情况下,开关344跳过一次垂直变换部345并且将一次水平变换之后的变换系数Coeff_Phor作为一次变换之后的变换系数Coeff_P输出至外部(二次变换部333)。另一方面,在变换跳过标识符ts_idx的值不是1D_V_TS(=2)(ts_idx!=1D_V_TS)的情况下(在指示不跳过一次垂直变换的情况下),开关344将一次水平变换之后的变换系数Coeff_Phor输出至一次垂直变换部345。
一次垂直变换部345针对每个变换块接收一次水平变换之后的变换系数Coeff_Phor以及用于一次垂直变换PTver的矩阵作为其输入,如下面给出的表达式(38)所示执行矩阵运算,并且输出矩阵运算的结果作为一次变换之后的变换系数Coeff_P。要注意的是,一次垂直变换PTver是具有作为行向量的变换基础的矩阵。
Coeff_P=(PTver·Coeff_Phor)>>s3
...(38)
此处,操作符“·”表示矩阵乘积(内积),并且运算符“>>”表示用于对每个元素执行右移运算的运算。根据表达式(38),通过利用预定缩放参数s3对一次水平变换之后的变换系数Coeff_Phor与一次垂直变换的矩阵PTver的矩阵乘积的每个元素执行右移算术运算来获得变换系数Coeff_P的每个值。要注意的是,缩放参数s4用于对PTver·Coeff_Phor的矩阵运算结果进行归一化,以便适合期望的比特深度。根据下面的表达式(39)从期望的比特深度BitDepthout和PTver·Coeff_Phor的矩阵运算的比特深度的最坏情况MaxBitDepth(PTver·Coeff_Phor)确定缩放参数s4的值。
s4=max(0,MaxBitDepth(PTver·Coeff_Phor)-BitDpethout)
...(39)
例如,在PTver·Coeff_Phor的值范围是-2**22至2**22-1的情况下,即,在MaxBitDepth(PTver·Coeff_Phor)的比特深度是23比特并且可以采取期望的比特深度的值的值范围是-2**15至2**15-1的情况下,即,在期望的比特深度是16比特的情况下,缩放参数s4变为s4=7比特(=max(0,23-16)=max(0,7))。此外,在MaxBitDepth(PTver·Coeff_Phor)的比特深度是23比特并且可以采用期望的比特深度的值的值范围是-2**31至2**31-1的情况下,即,在期望的比特深度是32比特的情况下,缩放参数s4变为s4=0比特(=max(0,23-32)=max(0,-9))。由于缩放参数s4为0表示由于期望的比特深度的值足够高,因此即使PTver·Coeff_Phor的矩阵乘积的像素值未被归一化,像素值也适合期望的比特深度。
要注意的是,为了减少由上文所述的表达式(38)的右移运算引起的限幅误差,在矩阵乘积之后,可以对每个元素添加预定的偏移值o4。此时,通过使用缩放参数s4的以下表达式(40)来表示偏移值o3。
o4=(s4>0?1<<(s4-1):0)
...(40)
如上所述,一次变换部332可以对与希望跳过水平方向或垂直方向上的一维变换有关的残差信号执行减少一次变换的处理量并且防止能量压缩的减少以提高编码效率的一次变换处理。特别是对于具有信号的连续性在水平方向上快速改变的阶梯边缘特征的残差信号,与执行二维正交变换的情况相比,可以通过跳过水平方向上的一维变换并且执行垂直方向上的一维变换来有效地将非零系数集中在垂直方向上的频率分量的低频区域上。具体地,由于可以增加能量压缩,因此可以实现编码效率的提高。类似地,对于具有信号的连续性在垂直方向上快速改变的阶梯边缘特性的残差信号,与执行二维正交变换的替选情况相比,可以通过跳过垂直方向上的一维变换并且执行水平方向上的一维变换来有效地将非零系数集中在水平方向上的频率分量的低频区域上。具体地,由于可以增加能量压缩,因此可以实现编码效率的提高。
<图像编码处理的流程>
现在,描述如上所述这样的图像编码装置300执行的处理的流程。首先,参照图29的流程图来描述图像编码处理的流程的示例。
在图像编码处理开始之后,在步骤S301处,控制部311执行编码控制处理并且执行块分割、编码参数的设置等。
在步骤S302处,预测部320执行预测处理以生成最佳预测模式的预测图像等。例如,在该预测处理中,预测部320执行帧内预测以生成最佳帧内预测模式的预测图像等,并且执行帧间预测以生成最佳帧间预测模式的预测图像等,并且基于成本函数值等从它们中选择最佳预测模式。
在步骤S303处,算术运算部312对输入图像与通过步骤S302处的预测处理而选择的最佳模式的预测图像之间的差异进行算术运算。简言之,算术运算部312生成输入图像与预测图像之间的预测残差D。与原始图像数据相比,以该方式计算出的预测残差D的数据量减少。因此,与按原样对图像进行编码的替选情况相比,可以压缩数据量。
在步骤S304处,变换部313对通过步骤S303处的处理而生成的预测残差D执行变换处理,以得出变换系数Coeff。要注意的是,该变换处理是步骤S307处的逆变换处理的逆处理,并且是在上文描述的图像解码处理中执行的逆变换处理的逆处理。在下文中描述了步骤S304处的处理的细节。
在步骤S305处,量化部314通过使用由控制部311计算出的量化参数等来对通过步骤S304处的处理而获得的变换系数Coeff进行量化,以得出量化变换系数级别level。
在步骤S306处,去量化部316根据与步骤S305处的量化的特征对应的特征来对通过步骤S305处的处理而生成的量化变换系数级别level进行去量化,以得出变换系数Coeff_IQ。
在步骤S307处,逆变换部317通过与步骤S304处的变换处理对应的方法对通过步骤S306处的处理而获得的变换系数Coeff_IQ进行逆变换,以得出预测残差D'。要注意的是,与上文描述的图像解码处理中执行的逆变换处理类似地执行该逆变换处理。
在步骤S308处,算术运算部318将通过步骤S302处的预测处理而获得的预测图像与通过步骤S307处的处理而得出的预测残差D'相加以生成被局部解码的解码图像。
在步骤S309处,帧存储器319存储通过步骤S308处的处理而获得的被局部解码的解码图像。
在步骤S310处,编码部315对通过步骤S305处的处理而获得的量化变换系数级别level进行编码。例如,编码部315通过算术编码等对作为与图像有关的信息的量化变换系数级别level进行编码,以生成编码数据。此外,此时,编码部315对各种编码参数(头部信息Hinfo、预测模式信息Pinfo和变换信息Tinfo)进行编码。此外,编码部315根据量化变换系数级别level得出残差信息RInfo并且对残差信息RInfo进行编码。
在步骤S311处,编码部315将以该方式生成的各种信息的编码数据汇总并且将其作为比特流输出到图像编码装置300的外部。该比特流例如通过传输线路或记录介质被传送至解码侧。当步骤S311处的处理结束时,图像编码处理结束。
要注意的是,处理中的每一个中的处理单元是任意的并且处理单元可以彼此不相同。因此,步骤处的处理也可以与在一些其他步骤处的处理等并行地或者通过重新布置的处理顺序来适当地执行。
<变换处理的流程>
现在,参照图30的流程图来描述在图29的步骤S304处执行的变换处理的流程的示例。在变换处理开始之后,开关331在步骤S331处判定变换跳过标识符ts_idx是否是2D_TS(二维变换跳过的模式)或者变换量化旁路标志transquant_bypass_flag是否是1(真)。在判定变换跳过标识符ts_idx是2D_TS或变换量化旁路标志是1(真)的情况下,开关331将预测残差D作为变换系数Coeff输出到外部。具体地,变换处理结束,并且处理返回至图29。
另一方面,在步骤S331处判定变换跳过标识符ts_idx不是2D_TS(除了二维变换跳过以外的模式)并且此外变换量化旁路标志是0(假)的情况下,开关331将预测残差D输出到一次变换部332。简言之,处理进行到步骤S332。
在步骤S332处,一次变换选择部341参考一次水平变换指定标志pt_hor_flag、一次垂直变换指定标志pt_ver_flag、预测模式信息PInfo和变换跳过标识符ts_idx以选择一次水平变换PThor和一次垂直变换PTver并且将它们分别提供给一次水平变换部343和一次垂直变换部345。
在步骤S333处,开关342判定变换跳过标识符ts_idx是否为1D_H_TS(水平方向上的一维变换跳过的模式)(ts_idx==1D_H_TS)。在判定变换跳过标识符ts_idx不是1D_H_TS的情况下,处理进行到步骤S334。在步骤S334处,一次水平变换部343针对每个变换块接收用于一次水平变换PThor的矩阵和预测残差D作为至其的输入,执行矩阵运算,并且输出矩阵运算的结果作为一次水平变换之后的变换系数Coeff_Phor。在步骤334处的处理结束之后,处理进行到步骤S335。
另一方面,在步骤S333处判定变换跳过标识符ts_idx是1D_H_TS的情况下,开关342跳过一次水平变换部343并且将预测残差D作为一次水平变换之后的变换系数Coeff_Phor提供至开关344。简言之,省略步骤S334处的处理,并且处理进行到步骤S335。
在步骤S335处,开关344判定变换跳过标识符ts_idx是否为1D_V_TS(垂直方向上的一维变换跳过的模式)(ts_idx==1D_V_TS)。在判定变换跳过标识符ts_idx不是1D_V_TS的情况下,处理进行到步骤S336。在步骤S336处,一次垂直变换部345执行一次垂直变换。具体地,一次垂直变换部345针对每个变换块接收一次水平变换之后的变换系数Coeff_Phor以及用于一次垂直变换PTver的矩阵作为至其的输入,执行矩阵运算,并且输出矩阵运算的结果作为一次水平变换之后的变换系数Coeff_P。在步骤336处的处理结束之后,处理进行到步骤S337。
另一方面,在步骤S335处判定变换跳过标识符ts_idx是1D_V_TS的情况下,开关344跳过输入至一次垂直变换部345并且提供一次水平变换之后的变换系数Coeff_Phor作为一次变换之后的变换系数Coeff_P。简言之,省略步骤S336处的处理,并且处理进行到步骤S337。
在步骤S337处,二次变换部333基于二次变换标识符st_idx对输入至其的变换系数Coeff_P执行二次变换以得出变换系数Coeff并且输出变换系数Coeff。当步骤S337处的处理结束时,变换处理结束并且处理返回到图29。
<一次变换选择处理的流程>
现在,参照图31的流程图来描述在图30的步骤S332处执行的一次变换选择处理的流程的示例。
在一次变换选择处理开始之后,在步骤S351处,一次变换选择部341判定自适应一次变换标志apt_flag是否为1(真)。在判定自适应一次变换标志apt_flag是1(真)的情况下,处理进行到步骤S352。在步骤S352处,一次变换选择部341基于预测模式信息PInfo选择用于一次垂直变换和一次水平变换中的每一个的变换集。在步骤S352处的处理结束之后,处理进行至步骤S354。
另一方面,在步骤S351处判定自适应一次变换标志apt_flag为0(假)的情况下,处理进行到步骤S353。在步骤S353处,一次变换选择部341选择预定变换集。在步骤S353处的处理结束之后,处理进行至步骤S354。
在步骤S354处,一次变换选择部341参考水平变换集标识符TransformSetH和一次水平变换指定标志pt_hor_flag以选择要应用为一次水平变换PThor的正交变换。
在步骤S355处,一次变换选择部341参考垂直变换集标识符TransformSetV和一次垂直变换指定标志pt_ver_flag以选择要应用为一次垂直变换PTver的正交变换。
当步骤S355处的处理结束时,一次变换选择处理结束并且处理返回到图30。
要注意的是,以上描述的处理还可以在可行的范围内经过步骤的处理顺序的重新布置或者处理的内容的改变。例如,可以省略步骤S333和S335处的处理,同时在步骤S331处变换跳过标识符ts_idx是1D_H_TS(水平方向上的一维变换跳过)的情况下选择单位矩阵作为一次水平变换PThor并且执行步骤S334处的处理。另一方面,在变换跳过标识符ts_idx是1D_V_TS(垂直方向上的一维变换跳过)的情况下,可以选择单位矩阵作为一次垂直变换PTver,其后执行步骤S336处的处理。
根据前述内容,设置在图像编码装置300中的变换部313可以减少变换的处理量并且抑制与残差信号(期望对其应用变换跳过并且抑制能量压缩的减少)有关的能量压缩的减少,并且可以执行提高编码效率的逆变换处理。更具体地,变换部313可以减少一次变换的处理量并且抑制与期望对其跳过垂直方向或水平方向上的一维变换的残差信号有关的能量压缩的减少,并且可以执行提高编码效率的逆一次变换处理。
特别是关于具有信号的连续性在水平方向上快速改变的阶梯边缘特性的残差信号,与执行二维正交变换的情况相比,可以通过跳过水平方向上的一维变换并且执行垂直方向上的一维变换来有效地将非零系数集中在垂直方向上的频率分量的低频区域上。具体地,由于可以增加能量压缩,因此可以提高编码效率。
类似地,对于具有信号的连续性在垂直方向上快速改变的阶梯边缘特性的残差信号,与执行二维正交变换的替选情况相比,可以通过跳过垂直方向上的一维变换并且执行水平方向上的一维变换来有效地将非零系数集中在水平方向上的频率分量的低频区域上。具体地,可以增加能量压缩,并且可以提高编码效率。
<6.第六实施方式>
<一次变换标识符的编码>
以上描述的图像解码装置100中的变换跳过标识符ts_idx和一次变换标识符pt_idx与上文描述的解码处理的逆处理对应。因此,也基于与图像解码处理的情况中类似的参数对图像编码处理进行如下所述的这种控制。
(1)变换跳过标志ts_flag被扩展为变换跳过标识符ts_idx。
(2)当变换跳过标识符ts_idx是1D_H_TS时,跳过一次水平变换和二次变换。
(3)当变换跳过标识符ts_idx是1D_V_TS时,跳过一次垂直变换和二次变换。
在该情况下,在以变换块单元编码的变换跳过标识符ts_idx是1D_H_TS的情况下,由于不使用一次水平变换指定标志pt_hor_flag,因此对该信息进行编码是多余的。另一方面,在变换跳过标识符ts_idx是1D_V_TS的情况下,由于不使用一次垂直变换指定标志pt_ver_flag,因此对该信息进行编码是多余的。因此,应用以下变化以便有效地对一次变换标识符pt_idx进行编码。
(1)在变换跳过标识符ts_idx=NO_TS的情况下,在编码侧,根据上文给出的表达式(20)从一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag得出一次变换标识符pt_idx。
(2)在变换跳过标识符ts_idx是1D_H_TS的情况下,在编码侧,根据上文给出的表达式(22),一次变换标识符pt_idx被得出为pt_idx=pt_ver_flag。
(3)在变换跳过标识符ts_idx是1D_V_TS的情况下,在编码侧,根据上文给出的表达式(24),一次变换标识符pt_idx被得出为pt_idx=pt_hor_flag。
(4)在变换跳过标识符ts_idx是2D_TS的情况下,在编码侧,省略一次变换标识符pt_idx的编码。
通过如上所述的这样的变化,在变换跳过标识符ts_idx是1D_H_TS或1D_V_TS的情况下,由于一次变换标识符pt_idx被算术变换为1比特的二进制串,因此与一次变换标识符pt_idx被算术编码为2比特的二进制串的替选情况相比,可以减少变为编码目标的二进制串。因此,可以抑制代码量的增加并且可以提高编码效率。
此外,关于二次变换,由于变换跳过标识符ts_idx是2D_TS、1D_H_TS或1D_V_TS,由于跳过二次变换,因此对作为二次变换的控制参数的二次变换标识符st_idx进行编码是多余的。因此,在变换跳过标识符ts_idx是2D_TS、1D_H_TS或1D_V_TS的情况下,可以通过应用这样的变化(省略变换跳过标识符ts_idx的编码)来抑制与二次变换标识符st_idx的编码有关的处理量的增加。
<变换跳过标识符ts_idx的编码>
图32是描绘与编码部315的变换跳过标识符ts_idx的编码有关的主要配置示例的框图。如图32所示,编码部315包括变换跳过有效性标志编码部361、最大变换跳过块尺寸编码部362、变换量化旁路标志编码部363和变换跳过标识符编码部364。
变换跳过有效性标志编码部361执行与对变换跳过有效性标志ts_enabled_flag的编码有关的处理。最大变换跳过块尺寸编码部362执行与最大变换跳过块尺寸MaxTSSize的编码有关的处理。变换量化旁路标志编码部363执行与变换量化旁路标志transquant_bypass_flag的编码有关的处理。变换跳过标识符编码部364执行与变换跳过标识符ts_idx的编码有关的处理。
参照图33的流程图描述了通过编码部315在图29的步骤S310处执行的与变换跳过标识符ts_idx有关的编码处理的流程的示例。
在开始编码处理之后,在步骤S371处,变换跳过有效性标志编码部361对头部信息HInfo中包括的变换跳过有效性标志ts_enabled_flag进行可变长度编码以生成比特串并且输出比特串。
在步骤S372处,最大变换跳过块尺寸编码部362判定变换跳过有效性标志ts_enabled_flag是否为1(真)。在判定变换跳过有效性标志ts_enabled_flag为1(真)的情况下,处理进行到步骤S373。
在步骤S373处,最大变换跳过块尺寸编码部362对头部信息Hinfo中包括的最大变换跳过块尺寸MaxTSSize(或以2为底数的对数log2MaxTSSize)进行可变长度编码以生成比特串并且输出比特串。在步骤S373处的处理结束之后,处理进行到步骤S374。另一方面,在步骤S372处判定变换跳过有效性标志ts_enabled_flag为0(假)的情况下,省略步骤S373处的处理并且处理进行到步骤S374。
在步骤S374处,变换量化旁路标志编码部363对头部信息HInfo中包括的变换量化旁路标志transquant_bypass_flag进行可变长度编码以生成比特串并且输出比特串。
在步骤S375处,变换跳过标识符编码部364判定变换信息Tinfo中包括的变换量化旁路标志transquant_bypass_flag是否为1(真)。在判定变换量化旁路标志transquant_bypass_flag为1(真)的情况下,省略对变换跳过标识符ts_idx进行编码并且结束编码处理,并且处理返回到图29。另一方面,在步骤S375处判定变换量化旁路标志transquant_bypass_flag为0(假)的情况下,处理进行到步骤S376。
在步骤S376处,变换跳过标识符编码部364判定在头部信息HInfo中包括的变换跳过有效性标志ts_enabled_flag是否为1(真)。在判定变换跳过有效性标志ts_enabled_flag为0(假)的情况下,省略变换跳过标识符ts_idx的编码并且编码处理结束,并且处理返回到图29。另一方面,在判定变换跳过有效性标志ts_enabled_flag为1(真)的情况下,处理进行到步骤S377。
在步骤S377处,变换跳过标识符编码部364判定处理目标的变换块的尺寸TBSize是否等于或小于最大变换跳过块尺寸MaxTSSize,或换句话说,条件表达式(TBSize<=MaxTSSize)的逻辑值是否为1(真)。
要注意的是,在条件表达式(TBSize<=MaxTSSize)中,根据上文给出的表达式(26)或(27)得出TBSize。此外,在表达式(26)或(27)中,TBSize、TBWSize和TBHSize可以由以2为底数的对数log2TBSize、log2TBWSize和log2TBHSize替换。在该情况下,表达式(26)被上文给出的表达式(28)代替并且表达式(27)被上文给出的表达式(29)代替。要注意的是,在使用对数的情况下,上文给出的条件表达式(TBSize<=MaxTSSize)的TBSize和最大变换跳过块尺寸MaxTSSize分别被对应的对数log2TBSize和log2MaxTSSize替换。
在判定TBSize大于最大变换跳过块尺寸MaxTSSize的情况下,即,在条件表达式的逻辑值为0的情况下,省略变换跳过标识符ts_idx的编码并且编码处理结束,并且处理返回到图29。另一方面,在判定TBSize等于或小于最大变换跳过块尺寸MaxTSSize的情况下,即,在条件表达式的逻辑值为1的情况下,处理进行到步骤S378。
在步骤S378处,变换跳过标识符编码部364对头部信息HInfo中包括的变换跳过标识符ts_idx进行可变长度编码,以生成比特串并且输出比特串。当步骤S378处的处理结束时,编码处理结束,并且处理返回到图29。
在上文中,可以在可行的范围内执行步骤的处理顺序的重新布置或处理的内容的改变。
通过以如上所述这样的方式执行处理,在编码侧,与JEM3相比,可以在变换块单元中自适应地选择水平方向或垂直方向上的一维变换跳过或二维变换跳过。因此,由于可以通过一维变换跳过的模式对残差信号(关于其,一维变换跳过比以前更有效)进行编码,因此可以提高编码效率。
<一次变换标识符pt_idx的编码>
图34是描绘与编码部315的一次变换标识符pt_idx的编码有关的主要配置示例的框图。如图34所示,编码部315包括一次变换有效性标志编码部371、自适应一次变换标志编码部372以及一次变换标识符编码部373。
一次变换有效性标志编码部371执行与一次变换有效性标志pt_enabled_flag的编码有关的处理。自适应一次变换标志编码部372执行与一次变换标志pt_enabled_flag的编码有关的处理。一次变换标识符编码部373执行与一次变换标识符pt_idx的编码有关的处理。
参照图35的流程图描述了通过如上所述这样的编码部315在图29的步骤S310处执行的与一次变换标识符pt_idx有关的编码处理的流程的示例。
在开始编码处理之后,在步骤S391处,一次变换有效性标志编码部371对头部信息HInfo中包括的一次变换有效性标志pt_enabled_flag进行可变长度编码,以生成比特串并且输出比特串。
在步骤S392处,自适应一次变换标志编码部372判定在头部信息Hinfo中包括的一次变换有效性标志pt_enabled_flag是否为1(真)。在判定一次变换有效性标志pt_enabled_flag为0的情况下,省略与一次变换标识符pt_idx的得出和编码有关的处理,并且编码处理结束并且处理返回到图29。另一方面,在判定一次变换有效性标志pt_enabled_flag为1的情况下,处理进行到步骤S393。
在步骤S393处,自适应一次变换标志编码部372对头部信息HInfo中包括的自适应一次变换标志apt_flag进行可变长度编码,以生成比特串并且输出比特串。
在步骤S394处,自适应一次变换标志编码部372判定自适应一次变换标志apt_flag是否为1(真)。在判定自适应一次变换标志apt_flag为0(假)的情况下,省略与一次变换标识符pt_idx的得出和编码有关的处理并且编码处理结束,并且处理返回到图29。另一方面,在判定自适应一次变换标志apt_flag为1(真)的情况下,处理进行到步骤S395。
在步骤S395处,一次变换标识符编码部373判定变换量化旁路标志transquant_bypass_flag是否为1(真)。在判定变换量化旁路标志transquant_bypass_flag为1(真)的情况下,省略与一次变换标识符pt_idx的得出和编码有关的处理并且编码处理结束,并且处理返回到图29。另一方面,在判定变换量化旁路标志transquant_bypass_flag为0(假)的情况下,处理进行到步骤S396。
在步骤S396处,一次变换标识符编码部373判定变换跳过标识符ts_idx是否为2D_TS(二维变换跳过)。在判定变换跳过标识符ts_idx为2D_TS的情况下,省略与一次变换标识符pt_idx的得出和编码有关的处理并且编码处理结束,并且处理返回到图29。另一方面,在判定变换跳过标识符ts_idx不是2D_TS的情况下,处理进行到步骤S397。
在步骤S397处,一次变换标识符编码部373判定变换块的垂直尺寸或水平尺寸中的至少一个是否等于或小于最大自适应一次变换块尺寸MaxPTSize(max(TBHSize,TBWSize)<=MaxPTSize)。在判定变换块的垂直尺寸或水平尺寸中的至少一个等于或小于最大自适应一次变换块尺寸MaxPTSize的情况下,省略与一次变换标识符pt_idx的得出和编码有关的处理并且编码处理结束,并且处理返回到图29。另一方面,在判定变换跳过标识符ts_idx不是2D_TS的情况下,处理进行到步骤S397。在判定变换块的垂直尺寸和水平尺寸两者等于或小于最大自适应一次变换块尺寸MaxPTSize的情况下,处理进行到步骤S398。
在步骤S398处,一次变换标识符编码部398判定编码目标的变换块是否为亮度分量。在判定变换块不是亮度分量的情况下,省略与一次变换标识符pt_idx的得出和编码有关的处理并且编码处理结束,并且处理返回到图29。另一方面,在判定变换块为亮度分量的情况下,处理进行到步骤S399。
在步骤S399处,一次变换标识符编码部398参考残差信息Rinfo以得出变换块中存在的非零变换系数的总数numSig(sig_coeff_flag==1的总数)。在步骤S399处的处理之后,处理进行到步骤S400。
在步骤S400处,一次变换标识符编码部398判定非零变换系数的总数numSig是否等于或大于预定阈值ptNumSigTH(numSig>=ptNumSigTH)。在判定非零变换系数的总数numSig小于预定阈值ptNumSigTH的情况下,省略与一次变换标识符pt_idx的得出和编码有关的处理并且编码处理结束,并且处理返回到图29。另一方面,在判定非零变换系数的总数numSig等于或大于预定阈值ptNumSigTH的情况下,处理进行到步骤S401。
在步骤S401处,一次变换标识符编码部373参考变换跳过标识符ts_idx、一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag以得出一次变换标识符pt_idx。要注意的是,在下文中描述了一次变换标识符pt_idx的详细得出。
在步骤S402处,一次变换标识符编码部373对头部信息HInfo中包括的一次变换标识符pt_idx进行可变长度编码,以生成比特串并且输出比特串。当步骤S402处的处理结束时,编码处理结束并且处理返回到图29。
虽然以上描述针对与一次变换标识符pt_idx的编码有关的处理,但是可以在可行的范围内执行步骤的处理顺序的重新布置或处理的内容的改变。
如上所述,在变换跳过标识符ts_idx是1D_H_TS或1D_V_TS的情况下,由于一次变换标识符pt_idx可以被算术编码为1比特的二进制串,因此与一次变换标识符pt_idx被算术编码为2比特的二进制串的替选情况相比,可以减少变为编码目标的二进制串。因此,可以减少与一次变换标识符pt_idx的编码有关的处理量。此外,由于可以减少代码量,因此还可以实现编码效率的提高。
现在,参照图36的流程图描述通过编码部315在图35的步骤S401处执行的一次变换标识符pt_idx的得出处理的流程的示例。
在开始一次变换标识符得出处理之后,在步骤S421处,一次变换标识符编码部373判定变换跳过标识符ts_idx是否为NO_TS(非变换跳过)。在判定变换跳过标识符ts_idx为NO_TS的情况下,处理进行到步骤S422。
在步骤S422处,一次变换标识符编码部373根据上文给出的表达式(20)从一次水平变换指定标志pt_hor_flag和一次垂直变换标志pt_ver_flag得出一次变换标识符pt_idx。当步骤422处的处理结束时,一次变换标识符得出处理结束并且处理返回到图35。
另一方面,在步骤S421处判定变换跳过标识符ts_idx不是NO_TS的情况下,处理进行到步骤S423。
在步骤S423处,一次变换标识符编码部373判定变换跳过标识符ts_idx是否为2D_TS(二维变换跳过)。在判定变换跳过标识符ts_idx为2D_TS的情况下,一次变换标识符得出处理结束,并且处理返回到图35。
另一方面,在步骤S423处判定变换跳过标识符ts_idx不是2D_TS的情况下,处理进行到步骤S424。
在步骤S424处,一次变换标识符编码部373判定变换跳过标识符ts_idx是否为1D_H_TS(水平方向上的一维变换跳过)。在判定变换跳过标识符ts_idx为1D_H_TS的情况下,处理进行到步骤S425。
在步骤S425处,一次变换标识符编码部373基于上文给出的表达式(22)将一次变换标识符pt_idx得出为pt_idx=pt_ver_flag。当步骤S425处的处理结束时,一次变换标识符得出处理结束,并且处理返回到图35。
另一方面,在步骤S424处判定变换跳过标识符ts_idx不是1D_H_TS的情况下,处理进行到步骤S426。
在步骤S426处,一次变换标识符编码部373基于上文给出的表达式(24)将一次变换标识符pt_idx得出为pt_idx=pt_hor_flag。当步骤S426处的处理结束时,一次变换标识符得出处理结束,并且处理返回到图35。
当然,该处理在可行的范围内也可以经过步骤的处理顺序的重新布置或者处理的内容的变化。
<二次变换标识符st_idx的解码>
图37是描绘与编码部315的二次变换标识符st_idx的解码有关的主要配置示例的框图。如图37所示,编码部315包括二次变换有效性标志编码部381和二次变换标识符编码部382。
二次变换有效性标志编码部381执行与二次变换有效性标志st_enabled_flag的编码有关的处理。二次变换标识符编码部382执行与二次变换标识符st_idx的编码有关的处理。
参照图38的流程图描述通过编码部315在图29的步骤S310处执行的与二次变换标识符st_idx有关的解码处理的流程的示例。
在开始编码处理之后,在步骤S441处,二次变换有效性标志编码部381对头部信息HInfo中包括的二次变换有效性标志st_enabled_flag进行可变长度编码以生成比特串并且输出比特串。
在步骤S442处,二次变换标识符编码部382判定在头部信息Hinfo中包括的二次变换有效性标志st_enabled_flag是否为1(真)。在判定二次变换有效性标志st_enabled_flag为0(假)的情况下,编码处理结束并且处理返回到图29。
另一方面,在步骤S442处判定二次变换有效性标志st_enabled_flag为1(真)的情况下,处理进行到步骤S443。
在步骤S443处,二次变换标识符编码部382判定变换量化旁路标志transquant_bypass_flag是否为1(真)。在判定变换量化旁路标志transquant_bypass_flag为1(真)的情况下,编码处理结束并且处理返回到图29。另一方面,在判定变换量化旁路标志transquant_bypass_flag为0(假)的情况下,处理进行到步骤S444。
在步骤S444处,二次变换标识符编码部382判定变换跳过标识符ts_idx是否为NO_TS(不执行变换跳过)。在判定变换跳过标识符ts_idx不是NO_TS的情况下,编码处理结束并且处理返回到图29。另一方面,在判定变换跳过标识符ts_idx为NO_TS的情况下,处理进行到步骤S445。
在步骤S445处,二次变换标识符编码部382参考残差信息Rinfo以得出变换块中存在的非零变换系数的总数numSig(sig_coeff_flag==1的总数)。
在步骤S446处,二次变换标识符编码部382判定非零变换系数的总数numSig是否等于或大于预定阈值TH(numSig>=stNumSigTH)。在判定非零变换系数的总数numSig小于预定阈值TH(numSig<stNumSigTH),即条件表达式的逻辑值为0(假)的情况下,二次变换标识符编码部382结束编码处理,并且处理返回到图29。另一方面,在判定非零变换系数的总数numSig等于或大于预定阈值TH(numSig>=stNumSigTH),即,条件表达式的逻辑值为1(真)的情况下,处理进行到步骤S447。
在步骤S447处,二次变换标识符编码部382对头部信息HInfo中包括的二次变换标识符st_idx进行可变长度编码以生成比特串并且输出比特串。
当步骤S447处的处理结束时,编码处理结束,并且处理返回到图29。
该处理还可以在可行的范围内经过步骤的处理顺序的重新布置或者处理的内容的变化。此外,尽管在前面的描述中二次变换的控制参数是二次变换标识符st_idx,但是它另外可以是二次变换标志st_flag。
通过以上描述的处理,在要以变换块单元对二次变换标识符进行编码的情况下,与现有技术相比,在(ts_idx!=NO_TS)的情况下应用二维变换跳过或一维变换跳过的情况下,可以省略二次变换标识符的编码处理。换句话说,可以减少与二次变换标识符的编码有关的处理量和编码量。
<7.第七实施方式>
<一次水平变换指定标志和一次垂直变换指定标志的编码>
虽然在前面的描述中描述了一次变换标识符pt_idx是从一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag得出的,但这不是限制性的。例如,代替对一次变换标识符pt_idx进行编码,可以对一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag进行编码。
图39是描绘与编码部315的一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag的编码有关的主要配置示例的框图。如图39所示,在该情况下编码部315包括一次变换有效性标志编码部371、自适应一次变换标志编码部372、一次水平变换指定标志编码部391和一次垂直变换指定标志编码部392。
一次水平变换指定标志编码部391执行与一次水平变换指定标志pt_hor_flag的编码有关的处理。一次垂直变换指定标志编码部392执行与一次垂直变换指定标志pt_ver_flag的编码有关的处理。
在图25所示的语法中附加了参考符号SYN15的if语句的条件的情况下,即,在变换跳过标识符ts_idx是NO_TS或1D_V_TS(ts_idx==NO_TS||ts_idx==1D_V_TS);变换量化旁路标志为0(假)(transquant_bypass_flag==0);变换块是亮度分量(cIdx==0);自适应一次变换标志apt_flag为1(真)(apt_flag==1);以及此外变换块中的非零变换系数的总数numSig等于或大于阈值ptNumSigTH(numSig>=ptNumSigTH)的情况下,一次水平变换指定标志编码部391对来自编码数据#1的比特串的一次水平变换指定标志pt_hor_flag进行可变长度编码。在任何其他情况下,一次水平变换指定标志编码部391省略一次水平变换指定标志pt_hor_flag的编码。
类似地,在图25所示的语法中附加了参考符号SYN17的if语句的条件的情况下,即,在变换跳过标识符ts_idx是NO_TS或1D_H_TS(ts_idx==NO_TS||ts_idx==1D_H_TS);变换量化旁路标志为0(假)(transquant_bypass_flag==0);变换块是亮度分量(cIdx==0);自适应一次变换标志apt_flag为1(真)(apt_flag==1);以及此外变换块中的非零变换系数的总数numSig等于或大于阈值ptNumSigTH(numSig>=ptNumSigTH)的情况下,一次垂直变换指定标志编码部392对一次垂直变换指定标志pt_ver_flag进行可变长度编码以生成比特串。在任何其他情况下,一次垂直变换指定标志编码部392省略一次垂直变换指定标志pt_ver_flag的编码。
通过前述内容,在变换跳过标识符ts_idx为1D_H_TS的情况下,可以省略一次水平变换指定标志pt_hor_flag的编码。类似地,在变换跳过标识符ts_idx为1D_V_TS的情况下,可以省略一次垂直变换指定标志pt_ver_flag的编码。因此,可以减少与一次水平变换指定标志pt_hor_flag和一次垂直变换指定标志pt_ver_flag的编码有关的处理量。此外,由于可以抑制代码量的增加,因此可以提高编码效率。
<8.第八实施方式>
<变换部的其他配置>
尽管在第四实施方式中描述了在要跳过一次水平变换的情况下一次变换部332的开关342将预测残差D提供至开关344,但可以对其执行用于量化的缩放。此外,尽管在第四实施方式中描述了在要跳过一次垂直变换的情况下一次变换部332的开关344将一次水平变换之后的变换系数Coeff_Phor作为一次变换之后的变换系数Coeff_P输出至外部(二次变换部333),但可以对其执行用于量化的缩放。
图40是描绘在该情况下的变换部313的主要配置示例的框图。如图40所示,在该情况下,变换部313还具有与图28的情况下的配置基本类似的配置。然而,要注意的是,同样在该情况下,一次变换部332包括缩放部401和另一缩放部402。
在要跳过一次垂直变换的情况下,开关342将变换系数D提供至缩放部401。缩放部401对从开关342提供的变换系数D执行缩放。例如,缩放部401执行N(N是自然数)比特的比特移位算术运算以用于归一化提供至其的变换系数,使得它们具有与执行一次水平变换的情况下的范数相同的范数。缩放部401将缩放的变换系数提供至开关344。
在要跳过一次垂直变换的情况下,开关344将一次水平变换之后的变换系数Coeff_Phor作为预测残差D'提供至缩放部402。与缩放部401的情况下类似,缩放部402对从开关344提供的一次水平变换之后的变换系数Coeff_Phor执行缩放。例如,缩放部402执行N(N是自然数)比特的比特移位算术运算以用于归一化提供至其的变换系数,使得它们具有与执行一次垂直变换的情况下的范数相同的范数。缩放部402将经缩放的预测残差D'提供至外部。
由于这使得可以将变换系数的动态范围宽度抑制在预定范围内,因此可以抑制解码负荷的增加。
<9.第九实施方式>
<信息的数据单元>
与图像有关的信息或者与对上文描述的图像(或要变为目标的数据)的编码和解码有关的信息的数据单元是任意的并且不限于上文描述的示例。例如,可以针对TU、TB、PU、PB、CU、LCU、子块、块、图块、切片、图片、序列或分量中的每一个设置这样的信息,或者可以以这样的数据单元的数据为目标。当然,针对每条信息设置数据单元。简言之,所有信息可以不是针对每个相同的数据单元而设置的(或者作为目标)。注意,这样的信息的存储位置是任意的,并且可以针对以上所述的数据单元的每个头部、每个参数集等存储信息。作为替选,这样的信息可以被存储到多个位置中。
<控制信息>
可以将与上文中结合实施方式描述的本技术有关的控制信息从编码侧传送到解码侧。例如,控制信息(例如,enabled_flag)用于控制是否允许(或禁止)应用上文描述的本技术。此外,例如,可以传送将上限或下限或者它们两者指定到允许(或禁止)应用上文中所述的本技术的块大小的控制信息。
<编码和解码>
本技术可以应用于任意图像编码或解码,以便执行一次变换和二次变换(逆二次变换和逆一次变换)。简言之,针对变换(逆变换)、量化(去量化)、编码(解码)、预测等的规范是任意的,并且它们不限于上文中描述的示例。例如,在变换(逆变换)中,可以执行除(逆)一次变换和(逆)二次变换以外的(逆)变换(即,三种或更多种(逆)变换)。此外,编码(解码)可以是可逆型或不可逆型。此外,可以省略量化(去量化)、预测等。此外,可以执行尚未描述的处理,例如滤波器处理。
<本技术的应用领域>
应用本技术的系统、装置、处理部等可以例如用于任意领域,例如运输、医疗、犯罪预防、农业、畜牧业、矿业、美容、工厂、家用产品、天气、自然监控等。
例如,本技术还可以应用于传送供观看的图像的系统和设备。此外,例如,本技术还可以应用于为运输提供的系统和设备。此外,例如,本技术还可以应用于为安全使用提供的系统和设备。此外,例如,本技术还可以应用于为运动提供的系统和设备。此外,例如,本技术还可以应用于为农业提供的系统和设备。此外,例如,本技术还可以应用于为畜牧业提供的系统和设备。此外,例如,本技术还可以应用于用于监测自然界例如火山、森林和海洋等的状态的系统和设备。此外,本技术可以应用于用于观测例如天气、温度、湿度、风速、日照时数等的气象观测系统或气象观测装置。此外,本技术还可以应用于例如用于观察野生动物例如鸟类、鱼类、爬行动物、两栖动物、哺乳动物、昆虫、植物等的生态学的系统、设备等。
<应用于多视图图像编码与解码系统>
上文中描述的一系列处理可以应用于多视图图像编码与解码系统,该系统执行对包括多个视点(视图(view))的图像的多视图图像的编码和解码。在该情况下,如果本技术应用于对每个视点(视图(view))的编码或解码则是足够的。
<应用于分层图像编码与解码系统>
此外,以上所述的一系列处理可以应用于分层图像编码(可缩放编码)与解码系统,该系统执行对在多个层(层级)中成层状(分层)的分层图像的编码和解码,以便具有关于预定参数的可缩放性(可缩放)功能。在该情况下,本技术可以应用于对每个层级(层)的编码和解码。
<计算机>
虽然以上所述的一系列处理可以由硬件执行,但是也可以以其他方式由软件来执行。在通过软件执行一系列处理的情况下,将构成软件的程序安装到计算机中。此处,计算机包括被并入专用硬件中的计算机,例如,可以通过安装各种程序来执行各种功能的通用个人计算机等。
图41是描绘根据程序执行在上文中描述的一系列处理的计算机的硬件的配置示例的框图。
在图41所示的计算机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,例如作为封装介质等。在该情况下,可以通过将可移除介质821安装在驱动器815上来经由输入/输出接口810将程序安装到存储部813中。
此外,可以通过诸如局域网、因特网、数字卫星广播等的有线或无线传输介质来提供程序。在该情况下,程序可以由通信部814接收并且被安装到存储部813中。
此外,可以将程序预先安装到ROM 802或存储部813中。
<本技术的应用>
根据以上描述的实施方式的图像编码装置300和图像解码装置100可以例如应用于各种电子装置,例如通过蜂窝通信向终端递送、因特网上的递送、卫星广播、有线TV的有线广播等中的发射器或接收器、或者用于将图像记录在诸如光盘、磁盘、快闪存储器等的介质上的记录装置、从这样的存储介质再现图像的再现装置等。
<第一应用示例:电视接收器>
图42描绘了应用上文中描述的实施方式的电视装置的示意性配置的示例。电视装置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(电子节目指南),并且将所提取的数据提供至控制部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例如响应于从用户接口部911输入的操作信号来执行程序以控制电视装置900的操作。
用户接口部911连接至控制部910。用户接口部911包括例如用于允许用户操作电视装置900的按钮和开关、用于远程控制信号的接收部等。用户接口部911检测用户通过所提及的部件进行的操作以生成操作信号,并且将所生成的操作信号输出至控制部910。
总线912将调谐器902、解复用器903、解码器904、视频信号处理部905、音频信号处理部907、外部接口部909以及控制部910彼此连接。
在以如上所述这样的方式配置的电视装置900中,解码器904可以具有上文中描述的图像解码装置100的功能。简言之,解码器904可以通过在实施方式的前述描述中描述的方法对编码数据进行解码。这使得电视装置900可以实现与上文中参照图1至图40描述的实施方式中的有益效果类似的有益效果。
此外,以如上所述这样的方式配置的电视装置900可以被配置成使得视频信号处理部905可以对例如从解码器904提供的图像数据进行编码,并且通过外部接口部909将产生的编码数据输出至电视装置900的外部。此外,视频信号处理部905可以具有上文中描述的图像编码装置300的功能。简言之,视频信号处理部905可以通过上文中结合上文中描述的实施方式描述的方法来对从解码器904提供的图像数据进行编码。这使得电视装置900可以实现与上文中参照图1至图40描述的实施方式的有益效果类似的有益效果。
<第二应用示例:便携式电话设备>
图43描绘了应用上文中描述的实施方式的便携式电话设备的示意性配置的示例。便携式电话设备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使得语音被输出。
另一方面,在数据通信模式下,例如,控制部931响应于用户通过操作部932进行的操作而生成配置电子邮件的字符数据。此外,控制部931控制显示部930在其上显示字符。此外,控制部931响应于来自用户通过操作部932的传送指令而生成电子邮件数据,并且将所生成的电子邮件数据输出至通信部922。通信部922对电子邮件数据进行编码和调制以生成传送信号。然后,通信部922通过天线921将所生成的传送信号发送至基站(未示出)。此外,通信部922对通过天线921接收到的无线信号进行放大和频率转换以获取接收信号。然后,通信部922对接收信号进行解调和解码以恢复电子邮件数据,并且将已恢复的电子邮件数据输出至控制部931。控制部931控制显示部930显示电子邮件的内容并且将电子邮件数据提供至记录与再现部929,使得电子邮件数据被写入到记录与再现部929的存储介质中。
记录与再现部929具有任意的可读/可写的存储介质。例如,存储介质可以是内置型存储介质例如RAM或快闪存储器,或者可以是外部安装的存储介质例如硬盘、磁盘、磁光盘、光盘、USB(通用串行总线)存储器或存储卡。
此外,例如,在成像模式下,摄像装置部926对图像拾取对象进行成像以生成图像数据并且将所生成的图像数据输出至图像处理部927。图像处理部927对从摄像装置部926输入的图像数据进行编码并且将编码流提供至记录与再现部929使得将其写入到记录与再现部929的存储介质中。
此外,在图像显示模式下,记录与再现部929读出在存储介质中记录的编码流并且将编码流输出至图像处理部927。图像处理部927对从记录与再现部929输入的编码流进行解码并且将图像数据提供至显示部930,使得图像数据的图像被显示。
此外,在视频电话模式下,例如,解复用部928对由图像处理部927编码的视频流和从音频编解码器923输入的音频流进行复用,并且将复用流输出至通信部922。通信部922对该流进行编码和调制以生成传送信号。然后,通信部922通过天线921将所生成的传送信号传送至基站(未示出)。同时,通信部922对通过天线921接收到的无线信号进行放大和频率转换以获取接收信号。传送信号和接收信号可以包括编码比特流。然后,通信部922对接收信号进行解调和解码以恢复流并且将已恢复的流输出至解复用部928。解复用部928从输入的流中解复用视频流和音频流,并且将视频流输出至图像处理部927而将音频流输出至音频编解码器923。图像处理部927对视频流进行解码以生成视频数据。视频数据被提供至显示部930,通过显示部930显示一系列图像。音频编解码器923对音频流进行解压缩和D/A转换以生成模拟语音信号。然后,音频编解码器923将所生成的语音信号提供至扬声器924使得从扬声器924输出语音。
在以该方式配置的便携式电话设备920中,例如,图像处理部927可以具有上文中描述的图像编码装置300的功能。简言之,图像处理部927可以通过上文中结合实施方式描述的任何方法来对图像数据进行编码。这使得便携式电话设备920可以实现与上文中参照图1至图40描述的实施方式的有益效果类似的有益效果。
此外,在以如上所述这样的方式配置的便携式电话设备920中,例如,图像处理部927可以具有上文中描述的图像解码装置100的功能。简言之,图像处理部927可以通过上文中结合实施方式描述的任何方法对编码数据进行解码。这使得便携式电话设备920可以实现与上文中参照图1至图40描述的实施方式的有益效果类似的有益效果。
<第三应用示例:记录与再现装置>
图44描绘了应用上文中描述的实施方式的记录与再现装置的示意性配置的示例。记录与再现装置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中的传送部。
在视频数据和音频数据未处于编码形式的情况下,编码器943对从外部接口部942输入的视频数据和音频数据进行编码。然后,编码器943将经编码的比特流输出至选择器946。
HDD部944将其中对视频和音频的内容数据进行压缩的经编码的比特流、各种程序以及其他数据记录在其内部硬盘上。此外,在再现视频和音频时,HDD部944从硬盘读出这样的数据。
盘驱动器945执行将数据记录在装载在其中的记录介质上并且从该记录介质读出数据。要被装载到盘驱动器945中的记录介质可以是例如DVD(数字多功能盘)盘(DVD-视频、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可以具有上文中所述的图像编码装置300的功能。简言之,编码器943可以通过结合实施方式描述的方法对图像数据进行编码。这使得记录与再现装置940可以实现与上文中参照图1至图40描述的实施方式的有益效果类似的有益效果。
此外,在以该方式配置的记录与再现装置940中,例如,解码器947可以具有上文中描述的图像解码装置100的功能。简言之,解码器947可以通过在实施方式的前述描述中描述的任何方法来对编码数据进行解码。这使得记录与再现装置940可以实现与上文中参照图1至图40描述的实施方式的有益效果类似的有益效果。
<第四应用示例:成像装置>
图45描绘了应用以上所述的实施方式的成像装置的示意性配置的示例。成像装置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输入的图像信号执行各种摄像装置信号处理,例如拐点(knee)校正、伽马校正和颜色校正。信号处理部963将摄像装置信号处理后的图像数据输出至图像处理部964。
图像处理部964对从信号处理部963输入的图像数据进行编码以生成编码数据。然后,图像处理部964将所生成的编码数据输出至外部接口部966或介质驱动器968。此外,图像处理部964对从外部接口部966或介质驱动器968输入的编码数据进行解码以生成图像数据。然后,图像处理部964将所生成的图像数据输出至显示部965。此外,图像处理部964可以将从信号处理部963输入的图像数据输出至显示部965,使得图像被显示在显示部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可以具有以上描述的图像编码装置300的功能。具体地,图像处理部964可以通过结合以上描述的实施方式描述的任何方法来对图像数据进行编码。这使得成像装置960可以实现与上文中参照图1至图40描述的实施方式的有益效果类似的有益效果。
此外,在以如上所述这样的方式配置的成像装置960中,例如,图像处理部964可以具有上文中描述的图像解码装置100的功能。具体地,图像处理部964可以通过结合以上描述的实施方式描述的任何方法来对编码数据进行解码。这使得成像装置960可以实现与上文中参照图1至图40描述的实施方式的有益效果类似的有益效果。
<第五应用示例:视频设备>
此外,本技术可以例如被实施为要结合在任意装置或配置系统的装置中的任何配置,例如,作为系统LSI(大规模集成)等的处理器、其中使用多个处理器等的模块,其中使用多个模块的单元、其中进一步将不同功能添加至单元的集合(即,装置的一部分配置)。图46描绘了应用本技术的视频设备的示意性配置的示例。
近年来,电子设备的多功能化已经并且正在进步,并且在电子设备的开发或制造中某些部件被实施为销售品、供应品等的情况下,经常看到以下情况:不仅存在将部件实施为具有一个功能的部件的情况,还存在将具有彼此关联的功能的多个部件组合并且实施为具有多个功能的一个集合的情况。
图46中描绘的视频设备1300具有如上所述这样的多功能化配置并且是组合具有与图像的编码和解码有关的功能(可以应用编码和解码中的一个或两者)的设备和具有与所述功能有关的其他功能的另一设备的装置。
如图46所示,视频设备1300包括包含视频模块1311、外部存储器1312、电力管理模块1313以及前端模块1314的模块组以及具有相关功能的设备例如连接部1321、摄像装置1322、传感器1323等。
模块是其中组合与彼此有关的若干部件功能以便具有连贯功能的部件。尽管特定的物理配置是任意的,但是可以想到以下物理配置:其中,例如,在布线板等上布置并且集成分别具有功能的多个处理器、诸如电阻器和电容器的电子电路设备、其他设备等。还可以想到将不同的模块、处理器等与模块组合以产生新模块。
在图46的示例的情况下,视频模块1311是具有与图像处理有关的功能的部件的组合,并且包括应用处理器、视频处理器、宽带调制解调器1333和RF模块1334。
处理器是具有预定功能的部件通过SoC(片上系统)与半导体芯片的集成,并且还可以获得被称为例如系统LSI(大规模集成)等的处理器。具有预定功能的部件可以是逻辑电路(硬件配置),或者可以是CPU、ROM、RAM等以及使用它们执行的程序,或者还可以是它们二者的组合。例如,处理器可以包括逻辑电路、CPU、ROM、RAM等,使得一部分功能由逻辑电路(硬件配置)来实现,并且剩余部分的功能由要由CPU执行的程序(软件配置)来实现。
图46的应用处理器1331是执行与图像处理有关的应用的处理器。为了实现预定功能,要由应用处理器1331执行的应用不仅可以执行算术运算处理而且可以根据情况需要控制例如视频模块1311的内部和外部的部件,例如视频处理器1332。
视频处理器1332是具有与图像的编码和解码(其中一个或两者)有关的功能的处理器。
宽带调制解调器1333通过数据的数字调制等将经由通过宽带线路(例如因特网或公共电话网络)执行的有线或无线(或有线与无线)宽带通信来传送的数据(数字信号)转换成模拟信号,或者通过模拟信号的解调将经由宽带通信接收到的模拟信号转换成数据(数字信号)。例如,宽带调制解调器1333处理任意信息,例如要由视频处理器1332处理的图像数据、其中对图像数据进行编码的流、应用程序或设置数据。
RF模块1334是对通过天线发送和接收的RF(射频)信号执行频率转换、调制和解调、放大、滤波器处理等的模块。例如,RF模块1334对通过宽带调制解调器1333生成的基带信号执行频率转换等,以生成RF信号。此外,例如,RF模块1334对通过前端模块1314接收到的RF信号执行频率转换等,以生成基带信号。
要注意的是,如图46中的虚线1341所示,应用处理器1331和视频处理器1332可以被集成以便被配置成一个处理器。
外部存储器1312是被设置在视频模块1311的外部上并且具有要由视频模块1311利用的存储设备的模块。尽管外部存储器1312的存储设备可以由任何物理部件来实现,但是由于通常频繁利用存储设备以用于存储大量的数据例如以帧为单位的图像数据,因此期望例如通过诸如DRAM(动态随机存取存储器)的相对便宜且大容量的半导体存储器来实现存储设备。
电力管理模块1313管理和控制对视频模块1311(视频模块1311中的部件)的电力供应。
前端模块1314是向RF模块1334提供前端功能(在天线侧的传送或接收端处的电路)的模块。如图46所示,前端模块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并且由例如视频处理器1332对该图像数据进行编码。
传感器1323是具有下述传感器的任意传感器功能的模块:例如声音传感器、超声波传感器、光学传感器、照度传感器、红外传感器、图像传感器、旋转传感器、角度传感器、角速度传感器、速度传感器、加速度传感器、倾斜传感器、磁识别传感器、震动传感器、温度传感器等。由传感器1323检测到的数据被提供至例如应用处理器1331并且被应用等使用。
在前面的描述中被描述为模块的部件可以被实现为处理器,或者相反地被描述为处理器的部件可以被实现为模块。
在具有如上所述这样的配置的视频设备1300中,本技术可以应用于如下文所述的视频处理器1332。因此,视频设备1300可以被实施为应用本技术的设备。
<视频处理器的配置示例>
图47描绘了应用本技术的视频处理器1332(图46)的示意性配置的示例。
在图47的示例的情况下,视频处理器1332具有:用于接收视频信号和音频信号的输入并且通过预定方法对信号进行编码的功能;以及用于对呈编码形式的视频数据和音频数据进行解码并且再现和输出视频信号和音频信号的另一功能。
如图47所示,视频处理器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(图46)等输入的视频信号,并且将所获得的视频信号转换成数字图像数据。第一图像扩展/缩小部1402对图像数据执行格式转换、图像的扩展/缩小处理等。第二图像扩展/缩小部1403根据通过视频输出处理部1404输出的目的地处的格式执行对图像的扩展/缩小处理,并且对图像数据执行与第一图像扩展/缩小部1402的格式转换、图像的扩展/缩小处理等类似的格式转换、图像的扩展/缩小处理等。视频输出处理部1404对图像数据执行格式转换、变为模拟信号的转换等,并且将产生的数据作为再现视频信号输出至例如连接部1321等。
帧存储器1405是由视频输入处理部1401、第一图像扩展/缩小部1402、第二图像扩展/缩小部1403、视频输出处理部1404以及编码/解码引擎1407共享的图像数据的存储器。帧存储器1405被实现为例如半导体存储器,例如DRAM。
存储器控制部1406从编码/解码引擎1407接收同步信号,并且根据写在访问管理表1406A中的对帧存储器1405的访问调度而控制用于对帧存储器1405写入和读出的访问。响应于由编码/解码引擎1407、第一图像扩展/缩小部1402、第二图像扩展/缩小部1403等执行的处理而由存储器控制部1406更新访问管理表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(AudioCode编号3)方法)来对产生的音频信号进行编码。音频编码器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可以例如通过连接部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缓冲器1408A的视频流和音频ES缓冲器1409A的音频流被读出至复用部(MUX)1412并且被复用部(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并且被音频解码器1411解码,使得再现音频信号。同时,视频流被写入视频ES缓冲器1408B中,并且然后被编码/解码引擎1407依次读出和解码并且被写入帧存储器1405中。经解码的图像数据经过由第二图像扩展/缩小部1403进行的扩展/缩小处理并且被写入帧存储器1405中。然后,经解码的图像数据被视频输出处理部1404读出并且经过变成诸如4:2:2Y/Cb/Cr方法的预定方法的格式的格式转换,然后它被进一步转换成模拟信号,使得再现和输出视频信号。
在将本技术应用于以该方式配置的视频处理器1332的情况下,如果将根据以上所述的实施方式的本技术应用于编码/解码引擎1407,则是足够的。具体地,例如,编码/解码引擎1407可以具有以上描述的图像编码装置300的功能或者图像解码装置100的功能或者其两者。这使得视频处理器1332可以实现与以上参照图1至图40描述的实施方式的有益效果类似的有益效果。
要注意的是,在编码/解码引擎1407中,本技术(即,图像编码装置300的功能或图像解码装置100的功能或其两者)可以由诸如逻辑电路的硬件来实现,或者可以由诸如嵌入式程序的软件来实现,或者可以由硬件和软件两者来实现。
<视频处理器的不同配置示例>
图48描绘了应用本技术的视频处理器1332的示意性配置的另一示例。在图48的示例的情况下,视频处理器1332具有通过预定方法对视频数据进行编码和解码的功能。
更具体地,如图48所示,视频处理器1332包括控制部1511、显示接口1512、显示引擎1513、图像处理引擎1514和内部存储器1515。视频处理器1332还包括编解码器引擎1516、存储器接口1517、复用与解复用部(MUX DMUX)1518、网络接口1519和视频接口1520。
控制部1511控制视频处理器1332中的处理部例如显示接口1512、显示引擎1513、图像处理引擎1514和编解码器引擎1516的操作。
如图48所示,控制部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的监视器装置等或者将数字数据的图像数据原样输出至连接部1321的监视器装置等。
显示引擎1513在控制部1511的控制下对图像数据执行诸如格式转换、大小转换和色域转换的各种转换处理,以便与用于显示图像的监视器装置等的硬件规范匹配。
例如,图像处理引擎1514在控制部1511的控制下对图像数据执行预定的图像处理,例如用于改善图片质量的滤波器处理。
内部存储器1515是设置在视频处理器1332的内部并且被显示引擎1513、图像处理引擎1514和编解码器引擎1516共同使用的存储器。内部存储器1515用于例如在显示引擎1513、图像处理引擎1514与编解码器引擎1516之间执行数据的发送和接收。例如,内部存储器1515存储从显示引擎1513、图像处理引擎1514或编解码器引擎1516提供的数据,并且根据情况需要(例如,响应于请求)将数据提供至显示引擎1513、图像处理引擎1514或编解码器引擎1516。虽然内部存储器1515可以由任何存储设备实现,但是通常由于内部存储器1515频繁用于存储少量数据,例如以块为单元的图像数据或参数,因此虽然内部存储器1515具有相对小的容量(例如,与外部存储器1312的容量相比),例如SRAM(静态随机存取存储器),但是期望根据具有高响应速度的半导体存储器实现内部存储器1515。
编解码器引擎1516执行与图像数据的编码和解码有关的处理。与编解码器引擎1516兼容的编码和解码的方法是任意的,并且这样的方法的数目可以是一个或多个。例如,编解码器引擎1516可以具有用于编码和解码方法的多个编解码功能使得通过从方法中的选择的一个来执行图像数据的编码或编码数据的解码。
在图48描绘的示例中,作为与编解码有关的处理的功能块,编解码器引擎1516包括例如MPEG-2视频1541、AVC/H.264 1542、HEVC/H.2651543、HEVC/H.265(可缩放)1544、HEVC/H.265(多视图)1545和MPEG-DASH 1551。
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 Streaming overHTTP,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可以通过复用比特流来将比特流转换成传输流,该传输流是用于传输的格式的比特流或用于记录的文件格式的数据(文件数据)。当然,通过进行解复用可以对转换进行逆转换。
网络接口1519是例如用于宽带调制解调器1333、连接部1321等的接口。视频接口1520是例如用于连接部1321、摄像装置1322等的接口。
现在,描述如上所述这样的视频处理器1332的操作的示例。例如,如果通过连接部1321、宽带调制解调器1333等从外部网络接收传输流,那么传输流通过网络接口1519被提供至复用与解复用部(MUX DMUX)1518并且由复用与解复用部(MUX DMUX)1518进行解复用,并且被编解码器引擎1516解码。通过编解码器引擎1516的解码获得的图像数据经过例如由图像处理引擎1514进行的预定图像处理、经过由显示引擎1513进行的预定转换以及通过显示接口1512被提供至例如连接部1321等,使得其图像被显示在监视器上。此外,例如,通过编解码器引擎1516的解码获得的图像数据被编解码器引擎1516重新编码、被复用与解复用部(MUX DMUX)1518复用以便转换成文件数据、通过视频接口1520输出至例如连接部1321等以及然后被记录在各种记录介质上。
此外,例如,从通过连接部1321等从未描绘的记录介质读出之后的图像数据编码的编码数据的文件数据通过视频接口1520被提供至复用与解复用部(MUX DMUX)1518并且被复用与解复用部(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具有上文中所述的图像编码装置300的功能或者图像解码装置100的功能或者其两者,则这是足够的。这使得视频处理器1332可以实现与上文中参照图1至图40描述的实施方式的有益效果类似的有益效果。
要注意的是,在编解码器引擎1516中,本技术(即,图像编码装置300的功能)可以由诸如逻辑电路的硬件来实现或者可以由诸如嵌入式程序的软件来实现,或者还可以由硬件和软件两者来实现。
虽然上述例示了视频处理器1332的配置的两个示例,但是视频处理器1332的配置是任意的并且可以是除了以上所述的两个示例以外的任何配置。此外,虽然视频处理器1332可以被配置为一个半导体芯片,但是其可以另外被配置为多个半导体芯片。例如,可以将视频处理器1332形变为其中多个半导体被堆叠的三维堆叠LSI。可替选地,视频处理器1332可以由多个LSI来实现。
<装置的应用示例>
视频设备1300可以被结合到处理图像数据的各种装置中。例如,视频设备1300可以被结合到电视装置900(图42)、便携式电话设备920(图43)、记录与再现装置940(图44)、成像装置960(图45)等中。装置可以通过结合视频设备1300来实现与上文中参照图1至图40描述的实施方式的有益效果类似的有益效果。
要注意的是,即使以上所述的视频设备1300的部分部件包括视频处理器1332,其也可以被实施为应用本技术的配置。例如,可以仅将视频处理器1332实施为应用本技术的视频处理器。此外,可以将由虚线1341指示的处理器、视频模块1311等实施为如上文中所述应用本技术的处理器、模块等。此外,可以组合例如视频模块1311、外部存储器1312、电力管理模块1313以及前端模块1314以便被实施为应用本技术的视频单元1361。在任意配置的情况下,可以实现与上文中参照图1至图40描述的实施方式的有益效果类似的有益效果。
简言之,如果包括视频处理器1332,那么与视频设备1300的情况类似地,任何配置可以被结合到处理图像数据的各种装置中。例如,可以将视频处理器1332、由虚线1341指示的处理器、视频模块1311或视频单元1361结合到电视装置900(图42)、便携式电话设备920(图43)、记录与再现装置940(图44)、成像装置960(图45)等中。然后,与视频设备1300的情况类似,通过将应用本技术的一些部件结合到装置中,该装置可以实现与上文中参照图1至图40描述的实施方式的有益效果类似的有益效果。
<第六应用示例:网络系统>
还可以将本技术应用于包括多个装置的网络系统。图49描绘了应用本技术的网络系统的示意性配置的示例。
图49中描绘的网络系统1600是下述系统:其中不同的装置通过网络来发送和接收与图像(视频)有关的信息。网络系统1600的云服务1601是将与图像(视频)有关的服务提供至用于与其通信而连接的终端(例如计算机1611、AV(视听)装置1612、便携式信息处理终端1613、IoT(物联网)设备1614等)的系统。例如,云服务1601向终端提供图像(视频)内容的供应服务,例如所谓的视频分发(按需分发或实时分发)。此外,例如,云服务1601提供接收并且保存来自终端的图像(视频)内容的备份服务。此外,例如,云服务1601提供调解在终端之间传送图像(视频)内容的服务。
云服务1601的物理配置是任意的。例如,云服务1601可以包括各种服务器(例如存储和管理视频的服务器、向终端分发视频的服务器、从终端获取视频的服务器以及管理用户(终端)和账单的服务器)或任意网络例如因特网或LAN。
计算机1611例如包括信息处理装置,例如个人计算机、服务器或工作站。AV装置1612例如包括图像处理装置,例如电视接收器、硬盘记录器、游戏机或摄像装置。便携式信息处理终端1613例如包括便携式信息处理装置,例如笔记本型个人计算机、平板终端、便携式电话设备或智能电话。IoT设备1614包括例如执行与图像有关的处理的任意对象,例如机器、消费性电子产品、家具、一些其他物品、IC标签或卡片型设备。所提及的所有终端都具有通信功能并且可以连接到云服务1601(与其建立会话)以执行向云服务1601发送信息和从云服务1601接收信息(即,执行与云服务1601的通信)。此外,每个终端还可以执行与其他终端的通信。终端之间的通信可以通过云服务1601来执行,或者可以在没有云服务1601的干预的情况下执行。
本技术可以应用于如上所述这样的网络系统1600,使得当在终端之间或在终端与云服务1601之间传送图像(视频)数据时可以以上文中结合实施方式描述的这样的方式对图像数据进行编码和解码。简言之,终端(计算机1611至IoT设备1614)和云服务1601可以分别具有上文中描述的图像编码装置300或图像解码装置100的功能。这使得发送和接收图像数据的终端(计算机1611至IoT设备1614)和云服务1601可以实现与上文中参照图1至图40描述的实施方式的有益效果类似的有益效果。
<其他>
要注意的是,与编码数据(比特流)有关的各种类型的信息可以被复用到编码数据中并且与编码数据一起被传送或记录,或者可以在不与编码数据复用的情况下作为与编码数据关联的单独数据被传送或记录。此处,术语“关联”表示例如当要处理一个数据时使得可以利用(链接)其它数据。简言之,彼此关联的数据可以被联合成一个数据,或者可以保持单独的数据。例如,可以在与编码数据(图像)的传输线路分开的传输线路上传送与编码数据(图像)关联的信息。此外,例如,可以将与编码数据关联的信息记录在与用于编码数据(图像)的记录介质不同的记录介质上(或者记录到同一记录介质的记录区域中)。要注意的是,该“关联”可能不是与整个数据关联而是与部分数据关联。例如,图像和与该图像对应的信息可以以任意单位例如多个帧、一个帧或帧内的部分彼此关联。
此外,例如,如上文所述,本说明书中如“合成”、“复用”、“添加”、“联合”、“包括”、“存储”、“放入”、“插入”和“嵌入”的这样的术语表示将多个事物组合成一个,例如,将编码数据和元数据组合成一个数据并且每个表示以上描述的“关联”的一种方法。
此外,本技术的实施方式不限于上文中描述的实施方式,并且在不脱离本公开内容的主题的情况下可以进行各种改变。
例如,在本说明书中,术语“系统”表示多个部件(装置、模块(零件)等)的集合,并且与所有部件是否被布置在同一壳体中无关。因此,被容置在单独壳体中并且通过网络彼此连接的多个装置和其中多个模块被容置在一个壳体中的一个装置二者都是系统。
此外,例如,被描述为一个装置(或一个处理部)的构造可以被划分成多个装置(或处理部)并且被配置为多个装置(或处理部)。相反地,可以将前面描述中被描述为多个装置(或处理部)的构造聚集使得它们被配置为一个装置(或一个处理部)。此外,可以将除了这些构造以外的构造自然地添加到每个装置(或每个处理部)的配置。此外,如果作为整个系统的构造或操作大致相同,那么可以将某个装置(或某个处理部)的部分构造包括在不同装置(或不同处理部)的构造中。
此外,例如,本技术可以采用云计算的配置,在该配置中一个功能由多个装置通过网络共享并且协同处理。
此外,例如,上文中描述的程序可以由任意装置来执行。在该情况下,如果装置被配置成使得其具有必要的功能(功能块等)并且可以获取必要的信息,则是足够的。
此外,例如,结合上文描述的流程图描述的步骤可以由一个装置来执行,并且也可以由多个装置共享和执行。此外,在一个步骤中包括多个处理的情况下,一个步骤中包括的多个处理可以由一个装置来执行,也可以由多个装置共享和执行。
要注意的是,待由计算机执行的程序可以是下述类型:用来以本说明书中描述的顺序按照时间序列执行描述程序的步骤处的处理的类型;或者用来并行执行或在必要定时(例如调用处理时)单独执行处理的类型。此外,用来执行程序的步骤处的处理可以与不同程序的处理并行执行,或者可以与不同装置的处理组合执行。
要注意的是,除非出现不一致,否则本说明书中描述的多种本技术可以分别单独地且彼此独立地实施。当然,也可以组合地实施任意多种本技术。例如,还可以结合在不同实施方式的描述中描述的本技术来实施在任何实施方式的描述中描述的本技术。此外,可以结合上文中未描述的不同技术来实施上文中描述的本技术中的任意一种。
要注意的是,本技术也可以采用如下所述这样的配置。
(1)
一种图像处理装置,包括:
解码部,其被配置成对编码数据进行解码;
逆一次垂直变换控制部,其被配置成基于通过所述解码部对所述编码数据的解码而获得的变换跳过标识符的值来控制逆一次垂直变换的执行,所述逆一次垂直变换是针对从图像数据变换的变换系数数据的垂直方向上的逆一次变换;以及
逆一次水平变换控制部,其被配置成基于所述变换跳过标识符的值来控制逆一次水平变换的执行,所述逆一次水平变换是针对从所述图像数据变换的系数数据的水平方向上的逆一次变换。
(2)
根据(1)所述的图像处理装置,其中,
所述逆一次垂直变换控制部控制所述逆一次垂直变换的执行,使得:
在所述变换跳过标识符指示不跳过垂直方向上的一维变换的情况下,执行针对所述变换系数数据的所述逆一次垂直变换,然而
在所述变换跳过标识符指示跳过垂直方向上的一维变换的情况下,省略针对所述变换系数数据的所述逆一次垂直变换。
(3)
根据(1)或(2)所述的图像处理装置,其中,
所述逆一次水平变换控制部控制所述逆一次水平变换的执行,使得:
在所述变换跳过标识符指示不跳过水平方向上的一维变换的情况下,执行针对所述变换系数数据的所述逆一次水平变换,然而
在所述变换跳过标识符指示跳过水平方向上的一维变换的情况下,省略针对所述变换系数数据的所述逆一次水平变换。
(4)
根据(1)至(3)中任一项所述的图像处理装置,还包括:
选择部,其被配置成选择要应用于所述逆一次垂直变换和所述逆一次水平变换的正交变换。
(5)
根据(4)所述的图像处理装置,其中,
所述选择部:
基于通过所述解码部对所述编码数据的解码而获得的一次垂直变换指定标志和垂直变换集标识符来选择要应用为所述逆一次垂直变换的正交变换,并且
基于通过所述解码部对所述编码数据的解码而获得的一次水平变换指定标志和水平变换集标识符来选择要应用为所述逆一次水平变换的正交变换。
(6)
根据(5)所述的图像处理装置,其中,
所述解码部响应于所述变换跳过标识符的值来从一次变换标识符得出所述一次垂直变换指定标志和所述一次水平变换指定标志。
(7)
根据(6)所述的图像处理装置,其中,
所述解码部:
在所述变换跳过标识符指示不跳过二维变换的情况下,通过将所述一次变换标识符处理为2比特的二进制串来得出所述一次垂直变换指定标志和所述一次水平变换指定标志,并且
在所述变换跳过标识符指示不跳过垂直方向或水平方向上的一维变换的情况下,通过将所述一次变换标识符处理为1比特的二进制串来得出所述一次垂直变换指定标志和所述一次水平变换指定标志。
(8)
根据(5)至(7)中任一项所述的图像处理装置,其中,
所述解码部对所述编码数据中包括的所述一次水平变换指定标志和所述一次垂直变换指定标志进行解码。
(9)
根据(1)至(8)中任一项所述的图像处理装置,其中,
在所述变换跳过标识符指示不跳过二维变换或者垂直方向或水平方向上的一维变换的情况下,所述解码部省略对二次变换标识符的解码并且将所述二次变换标识符设置成指示不执行二次变换的值。
(10)
一种图像处理方法,包括:
对编码数据进行解码;
基于通过对所述编码数据的解码而获得的变换跳过标识符的值来控制逆一次垂直变换的执行,所述逆一次垂直变换是针对从图像数据变换的变换系数数据的垂直方向上的逆一次变换;以及
基于所述变换跳过标识符的值来控制逆一次水平变换的执行,所述逆一次水平变换是针对从所述图像数据变换的系数数据的水平方向上的逆一次变换。
(11)
一种图像处理装置,包括:
一次水平变换控制部,其被配置成基于变换跳过标识符的值来控制一次水平变换的执行,所述一次水平变换是针对图像与预测图像之间的残差数据的水平方向上的一次变换;
一次垂直变换控制部,其被配置成基于所述变换跳过标识符的值来控制一次垂直变换的执行,所述一次垂直变换是针对所述图像与所述预测图像之间的残差数据的垂直方向上的一次变换;以及
编码部,其被配置成对所述变换跳过标识符进行编码。
(12)
根据(11)所述的图像处理装置,其中,
所述一次水平变换控制部控制所述一次水平变换的执行,使得:
在所述变换跳过标识符指示不跳过水平方向上的一维变换的情况下,执行针对所述残差数据的所述一次水平变换,然而,
在所述变换跳过标识符指示跳过水平方向上的一维变换的情况下,省略针对所述残差数据的所述一次水平变换。
(13)
根据(11)或(12)所述的图像处理装置,其中,
所述一次垂直变换控制部控制所述一次水平变换的执行,使得:
在所述变换跳过标识符指示不跳过垂直方向上的一维变换的情况下,执行针对所述残差数据的所述一次垂直变换,然而,
在所述变换跳过标识符指示跳过垂直方向上的一维变换的情况下,省略针对所述残差数据的所述一次垂直变换。
(14)
根据(11)至(13)中任一项所述的图像处理装置,还包括:
选择部,其被配置成选择要应用于所述一次水平变换和所述逆一次垂直变换的正交变换。
(15)
根据(14)所述的图像处理装置,其中,
所述选择部:
基于水平变换集标识符和一次水平变换指定标志来选择要应用为所述一次水平变换的正交变换,并且
基于垂直变换集标识符和一次垂直变换指定标志来选择要应用为所述一次垂直变换的正交变换。
(16)
根据(15)所述的图像处理装置,其中,
所述编码部响应于所述变换跳过标识符的值来从所述一次水平变换指定标志和所述一次垂直变换指定标志得出一次变换标识符。
(17)
根据(16)所述的图像处理装置,其中,
所述编码部:
在所述变换跳过标识符指示不跳过二维变换的情况下,使用所述一次水平变换指定标志和所述一次垂直变换指定标志来得出2比特的二进制串的一次变换标识符,并且
在所述变换跳过标识符指示不跳过垂直方向或水平方向上的一维变换的情况下,使用所述一次水平变换指定标志或所述一次垂直变换指定标志来得出1比特的二进制串的一次变换标识符。
(18)
根据(15)至(17)中任一项所述的图像处理装置,其中,
所述编码部对所述一次水平变换指定标志和所述一次垂直变换指定标志进行编码。
(19)
根据(11)至(18)中任一项所述的图像处理装置,其中,
在所述变换跳过标识符指示不跳过二维变换或者垂直方向或水平方向上的一维变换的情况下,所述编码部省略对二次变换标识符的编码。
(20)
一种图像处理方法,包括:
基于变换跳过标识符的值来控制一次水平变换的执行,所述一次水平变换是针对图像与预测图像之间的残差数据的水平方向上的一次变换;
基于所述变换跳过标识符的值来控制一次垂直变换的执行,所述一次垂直变换是针对所述图像与所述预测图像之间的残差数据的垂直方向上的一次变换;以及
对所述变换跳过标识符进行编码。
附图标记列表
100 图像解码装置,111 解码部,112 去量化部,113 逆变换部,114 算术运算部,115 帧存储器,116 预测部,121 开关,122 逆二次变换部,123 逆一次变换部,131 逆一次变换选择部,132 开关,133 逆一次垂直变换部,134 开关,135 逆一次水平变换部,151 变换跳过有效性标志解码部,152 最大变换跳过块尺寸解码部,153 变换量化旁路标志解码部,154 变换跳过标识符解码部,161 一次变换有效性标志解码部,162 自适应一次变换标志解码部,163 一次变换标识符解码部,171 二次变换有效性标志解码部,172 二次变换标识符解码部,181 一次水平变换指定标志解码部,182 一次垂直变换指定标志解码部,191和192 缩放部,300 图像编码装置,311 控制部,312 算术运算部,313 变换部,314 量化部,315 编码部,316 去量化部,317逆变换部,318 算术运算部,319 帧存储器,320 预测部,331 开关,332 一次变换部,333 二次变换部,341 一次变换选择部,342 开关,343 一次水平变换部,344 开关,345 一次垂直变换部,361 变换跳过有效性标志编码部,362 最大变换跳过块尺寸编码部,363 变换量化旁路标志编码部,364 变换跳过标识符编码部,371 一次变换有效性标志编码部,372 自适应一次变换标志编码部,373 一次变换标识符编码部,381 二次变换有效性标志编码部,382 二次变换标识符编码部,391一次水平变换指定标志编码部,392 一次垂直变换指定标志编码部,401和402 缩放部。

Claims (20)

1.一种图像处理装置,包括:
解码部,其被配置成对编码数据进行解码;
逆一次垂直变换控制部,其被配置成基于通过所述解码部对所述编码数据的解码而获得的变换跳过标识符的值来控制逆一次垂直变换的执行,所述逆一次垂直变换是针对从图像数据变换的变换系数数据的垂直方向上的逆一次变换;以及
逆一次水平变换控制部,其被配置成基于所述变换跳过标识符的值来控制逆一次水平变换的执行,所述逆一次水平变换是针对从所述图像数据变换的系数数据的水平方向上的逆一次变换。
2.根据权利要求1所述的图像处理装置,其中,
所述逆一次垂直变换控制部控制所述逆一次垂直变换的执行,使得:
在所述变换跳过标识符指示不跳过垂直方向上的一维变换的情况下,执行针对所述变换系数数据的所述逆一次垂直变换,然而,
在所述变换跳过标识符指示跳过垂直方向上的一维变换的情况下,省略针对所述变换系数数据的所述逆一次垂直变换。
3.根据权利要求1所述的图像处理装置,其中,
所述逆一次水平变换控制部控制所述逆一次水平变换的执行,使得:
在所述变换跳过标识符指示不跳过水平方向上的一维变换的情况下,执行针对所述变换系数数据的所述逆一次水平变换,然而,
在所述变换跳过标识符指示跳过水平方向上的一维变换的情况下,省略针对所述变换系数数据的所述逆一次水平变换。
4.根据权利要求1所述的图像处理装置,还包括:
选择部,其被配置成选择要应用于所述逆一次垂直变换和所述逆一次水平变换的正交变换。
5.根据权利要求4所述的图像处理装置,其中,
所述选择部:
基于通过所述解码部对所述编码数据的解码而获得的一次垂直变换指定标志和垂直变换集标识符来选择要应用为所述逆一次垂直变换的正交变换,并且
基于通过所述解码部对所述编码数据的解码而获得的一次水平变换指定标志和水平变换集标识符来选择要应用为所述逆一次水平变换的正交变换。
6.根据权利要求5所述的图像处理装置,其中,
所述解码部响应于所述变换跳过标识符的值来从一次变换标识符得出所述一次垂直变换指定标志和所述一次水平变换指定标志。
7.根据权利要求6所述的图像处理装置,其中,
所述解码部:
在所述变换跳过标识符指示不跳过二维变换的情况下,通过将所述一次变换标识符处理为2比特的二进制串来得出所述一次垂直变换指定标志和所述一次水平变换指定标志,并且
在所述变换跳过标识符指示不跳过垂直方向或水平方向上的一维变换的情况下,通过将所述一次变换标识符处理为1比特的二进制串来得出所述一次垂直变换指定标志和所述一次水平变换指定标志。
8.根据权利要求5所述的图像处理装置,其中,
所述解码部对所述编码数据中包括的所述一次水平变换指定标志和所述一次垂直变换指定标志进行解码。
9.根据权利要求1所述的图像处理装置,其中,
在所述变换跳过标识符指示不跳过二维变换或者垂直方向或水平方向上的一维变换的情况下,所述解码部省略对二次变换标识符的解码并且将所述二次变换标识符设置成指示不执行二次变换的值。
10.一种图像处理方法,包括:
对编码数据进行解码;
基于通过对所述编码数据的解码而获得的变换跳过标识符的值来控制逆一次垂直变换的执行,所述逆一次垂直变换是针对从图像数据变换的变换系数数据的垂直方向上的逆一次变换;以及
基于所述变换跳过标识符的值来控制逆一次水平变换的执行,所述逆一次水平变换是针对从所述图像数据变换的系数数据的水平方向上的逆一次变换。
11.一种图像处理装置,包括:
一次水平变换控制部,其被配置成基于变换跳过标识符的值来控制一次水平变换的执行,所述一次水平变换是针对图像与预测图像之间的残差数据的水平方向上的一次变换;
一次垂直变换控制部,其被配置成基于所述变换跳过标识符的值来控制一次垂直变换的执行,所述一次垂直变换是针对所述图像与所述预测图像之间的残差数据的垂直方向上的一次变换;以及
编码部,其被配置成对所述变换跳过标识符进行编码。
12.根据权利要求11所述的图像处理装置,其中,
所述一次水平变换控制部控制所述一次水平变换的执行,使得:
在所述变换跳过标识符指示不跳过水平方向上的一维变换的情况下,执行针对所述残差数据的所述一次水平变换,然而,
在所述变换跳过标识符指示跳过水平方向上的一维变换的情况下,省略针对所述残差数据的所述一次水平变换。
13.根据权利要求11所述的图像处理装置,其中,
所述一次垂直变换控制部控制所述一次水平变换的执行,使得:
在所述变换跳过标识符指示不跳过垂直方向上的一维变换的情况下,执行针对所述残差数据的所述一次垂直变换,然而,
在所述变换跳过标识符指示跳过垂直方向上的一维变换的情况下,省略针对所述残差数据的所述一次垂直变换。
14.根据权利要求11所述的图像处理装置,还包括:
选择部,其被配置成选择要应用于所述一次水平变换和所述一次垂直变换的正交变换。
15.根据权利要求14所述的图像处理装置,其中,
所述选择部:
基于水平变换集标识符和一次水平变换指定标志来选择要应用为所述一次水平变换的正交变换,并且
基于垂直变换集标识符和一次垂直变换指定标志来选择要应用为所述一次垂直变换的正交变换。
16.根据权利要求15所述的图像处理装置,其中,
所述编码部响应于所述变换跳过标识符的值来从所述一次水平变换指定标志和所述一次垂直变换指定标志得出一次变换标识符。
17.根据权利要求16所述的图像处理装置,其中,
所述编码部:
在所述变换跳过标识符指示不跳过二维变换的情况下,使用所述一次水平变换指定标志和所述一次垂直变换指定标志来得出2比特的二进制串的一次变换标识符,并且
在所述变换跳过标识符指示不跳过垂直方向或水平方向上的一维变换的情况下,使用所述一次水平变换指定标志或所述一次垂直变换指定标志来得出1比特的二进制串的一次变换标识符。
18.根据权利要求15所述的图像处理装置,其中,
所述编码部对所述一次水平变换指定标志和所述一次垂直变换指定标志进行编码。
19.根据权利要求11所述的图像处理装置,其中,
在所述变换跳过标识符指示不跳过二维变换或者垂直方向或水平方向上的一维变换的情况下,所述编码部省略对二次变换标识符的编码。
20.一种图像处理方法,包括:
基于变换跳过标识符的值来控制一次水平变换的执行,所述一次水平变换是针对图像与预测图像之间的残差数据的水平方向上的一次变换;
基于所述变换跳过标识符的值来控制一次垂直变换的执行,所述一次垂直变换是针对所述图像与所述预测图像之间的残差数据的垂直方向上的一次变换;以及
对所述变换跳过标识符进行编码。
CN201780058664.5A 2016-09-30 2017-09-15 图像处理装置和方法 Expired - Fee Related CN109792522B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2016-193687 2016-09-30
JP2016193687 2016-09-30
PCT/JP2017/033527 WO2018061837A1 (ja) 2016-09-30 2017-09-15 画像処理装置および方法

Publications (2)

Publication Number Publication Date
CN109792522A true CN109792522A (zh) 2019-05-21
CN109792522B CN109792522B (zh) 2021-10-15

Family

ID=61760320

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780058664.5A Expired - Fee Related CN109792522B (zh) 2016-09-30 2017-09-15 图像处理装置和方法

Country Status (5)

Country Link
US (2) US10728552B2 (zh)
EP (1) EP3522533A4 (zh)
JP (1) JPWO2018061837A1 (zh)
CN (1) CN109792522B (zh)
WO (1) WO2018061837A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114342397A (zh) * 2019-09-06 2022-04-12 索尼集团公司 图像处理装置和方法

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA3237826A1 (en) * 2017-01-03 2018-07-12 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Image processing method and apparatus therefor
CA3065490C (en) * 2017-05-17 2022-06-07 Kt Corporation Video signal processing in which intra prediction is performed in units of sub-blocks partitioned from coding block
JP2019017066A (ja) * 2017-07-03 2019-01-31 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 符号化装置、復号装置、符号化方法及び復号方法
WO2019159696A1 (ja) * 2018-02-14 2019-08-22 ソニー株式会社 画像処理装置および方法
JP7334730B2 (ja) * 2018-03-30 2023-08-29 ソニーグループ株式会社 画像処理装置および方法
KR102465119B1 (ko) 2018-04-01 2022-11-09 엘지전자 주식회사 축소된 2차 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치
US11523151B2 (en) * 2018-05-03 2022-12-06 Arris Enterprises Llc Rendering stream controller
US10666981B2 (en) 2018-06-29 2020-05-26 Tencent America LLC Method, apparatus and medium for decoding or encoding
CN110839159A (zh) 2018-08-16 2020-02-25 北京字节跳动网络技术有限公司 用于变换矩阵选择的隐式编码
US11303904B2 (en) * 2018-09-28 2022-04-12 Qualcomm Incorporated Rectangular block transform scaling
US11284066B2 (en) * 2018-10-10 2022-03-22 Tencent America LLC Method and apparatus for intra block copy in intra-inter blending mode and triangle prediction unit mode
WO2020156549A1 (en) 2019-02-02 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Buffer access methods for intra block copy in video coding
US10986339B2 (en) * 2019-02-08 2021-04-20 Tencent America LLC Method and apparatus for harmonization between transform skip mode and multiple transform selection
EP3915265A4 (en) 2019-03-01 2022-06-22 Beijing Bytedance Network Technology Co., Ltd. DIRECTION-BASED PREDICTION FOR INTRA BLOCK COPY IN VIDEO CODING
CN113508581B (zh) 2019-03-04 2023-11-14 北京字节跳动网络技术有限公司 视频编解码中的帧内块复制中的实施方式方面
US20200304794A1 (en) * 2019-03-21 2020-09-24 Mediatek Inc. Method and Apparatus of the Quantization Matrix Computation and Representation for Video Coding
US11616966B2 (en) * 2019-04-03 2023-03-28 Mediatek Inc. Interaction between core transform and secondary transform
CN114009028A (zh) * 2019-06-14 2022-02-01 弗劳恩霍夫应用研究促进协会 具有改进的基于变换的缩放的编码器、解码器、方法和计算机程序
US11259016B2 (en) 2019-06-30 2022-02-22 Tencent America LLC Method and apparatus for video coding
KR20230170800A (ko) 2019-07-06 2023-12-19 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 비디오 코딩에서 인트라 블록 카피를 위한 가상 예측 버퍼
BR112022000358A2 (pt) 2019-07-10 2022-05-10 Beijing Bytedance Network Tech Co Ltd Método e aparelho para processar dados de vídeo e meios de armazenamento e gravação não transitórios legíveis por computador
EP3981146A4 (en) * 2019-07-11 2022-08-03 Beijing Bytedance Network Technology Co., Ltd. BITSTREAM CONFORMITY RESTRICTIONS FOR INTRA-BLOCK COPY IN VIDEO ENCODING
CN114430901A (zh) * 2019-09-20 2022-05-03 北京字节跳动网络技术有限公司 带有色度缩放的亮度映射
US11973983B2 (en) * 2019-10-11 2024-04-30 Qualcomm Incorporated Signaling coding scheme for residual values in transform skip for video coding
MX2022006718A (es) * 2019-12-11 2022-07-12 Sony Group Corp Dispositivo de procesamiento de imagenes, metodo de generacion de flujo de bits, metodo de generacion de datos de coeficiente y metodo de generacion de coeficiente de cuantificacion.
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
US11310504B2 (en) * 2020-07-30 2022-04-19 Tencent America LLC Complexity reduction for 32-p and 64-p LGT
US11856227B2 (en) * 2022-05-26 2023-12-26 Mediatek Inc. Transform architecture in video encoding systems

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103404141A (zh) * 2011-06-27 2013-11-20 英国广播公司 使用变换的视频编码和解码
CN104067622A (zh) * 2011-10-18 2014-09-24 株式会社Kt 图像编码方法、图像解码方法、图像编码器及图像解码器
US20160227253A1 (en) * 2013-10-11 2016-08-04 Sony Corporation Decoding device, decoding method, encoding device and encoding method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10390046B2 (en) 2011-11-07 2019-08-20 Qualcomm Incorporated Coding significant coefficient information in transform skip mode

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103404141A (zh) * 2011-06-27 2013-11-20 英国广播公司 使用变换的视频编码和解码
CN104067622A (zh) * 2011-10-18 2014-09-24 株式会社Kt 图像编码方法、图像解码方法、图像编码器及图像解码器
US20160227253A1 (en) * 2013-10-11 2016-08-04 Sony Corporation Decoding device, decoding method, encoding device and encoding method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114342397A (zh) * 2019-09-06 2022-04-12 索尼集团公司 图像处理装置和方法

Also Published As

Publication number Publication date
JPWO2018061837A1 (ja) 2019-07-11
EP3522533A4 (en) 2019-09-11
WO2018061837A1 (ja) 2018-04-05
CN109792522B (zh) 2021-10-15
US20190208203A1 (en) 2019-07-04
US10728552B2 (en) 2020-07-28
EP3522533A1 (en) 2019-08-07
US20200304790A1 (en) 2020-09-24

Similar Documents

Publication Publication Date Title
CN109792522A (zh) 图像处理装置和方法
JP7067487B2 (ja) 画像処理装置および方法
US11368720B2 (en) Image processing apparatus and method
CN109076222A (zh) 图像处理装置和方法
KR102407030B1 (ko) 화상 부호화 장치 및 방법 및 화상 복호 장치 및 방법
CN110431843A (zh) 图像处理装置及方法
CN109076226A (zh) 图像处理装置和方法
WO2018070267A1 (ja) 画像処理装置および画像処理方法
CN109691107A (zh) 图像处理装置和图像处理方法
CN105230017B (zh) 图像编码装置和方法以及图像解码装置和方法
CN104854868B (zh) 图像处理设备和方法
CN104584551A (zh) 解码装置、解码方法、编码装置以及编码方法
CN109219959A (zh) 图像处理装置及方法
JP6150134B2 (ja) 画像符号化装置および方法、画像復号装置および方法、プログラム、並びに記録媒体
US11997316B2 (en) Image processing apparatus and method for curbing deterioration in coding efficiency

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20211015