CN109691107A - 图像处理装置和图像处理方法 - Google Patents
图像处理装置和图像处理方法 Download PDFInfo
- Publication number
- CN109691107A CN109691107A CN201780054496.2A CN201780054496A CN109691107A CN 109691107 A CN109691107 A CN 109691107A CN 201780054496 A CN201780054496 A CN 201780054496A CN 109691107 A CN109691107 A CN 109691107A
- Authority
- CN
- China
- Prior art keywords
- prediction
- processing
- image
- frame
- motion vector
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/53—Multi-resolution motion estimation; Hierarchical motion estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/523—Motion estimation or motion compensation with sub-pixel accuracy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/587—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本公开内容涉及使得可以充分提高帧内BC预测处理的精度的图像处理装置和图像处理方法。因此,帧内BC预测单元基于图像的当前块的多个顶点的屏幕内运动矢量,通过使图像内的解码块经受仿射变换,来执行生成当前块的预测图像的仿射变换帧内BC预测处理。本公开内容可以应用于例如实现HEVC技术或JVET所提出的技术的图像编码装置、图像解码装置等。
Description
技术领域
本发明内容涉及图像处理装置和图像处理方法,并且特别地涉及使得可以充分提高帧内BC预测处理的精度的图像处理装置和图像处理方法。
背景技术
通过HEVC(高效视频编码)执行编码的编码装置对作为编码目标的块的当前块执行帧内预测处理或帧间预测处理,以生成作为当前块的预测图像的预测块。然后,编码装置对作为预测块与当前块之间的差的预测残差进行正交变换,并且量化预测残差,以生成编码流。
以该方式生成的编码流被解码装置解量化并且进行正交逆变换。然后,将作为正交逆变换的结果获得的预测残差添加到预测块,以生成当前块的解码图像。
在HEVC(高效视频编码)版本1中,作为帧内预测处理的预测模式,采用称为DC帧内预测、平面帧内预测和角度帧内预测的帧内预测模式。
此外,在HEVC-SCC(屏幕内容编码)中,作为帧内预测处理之一,还可以使用帧内BC(帧内块复制)预测处理,该帧内BC预测处理参考在帧间预测处理中的在屏幕图像中已经编码的区域,以生成预测块。
然而,在HEVC-SCC的帧内BC预测处理中,针对屏幕图像中已经编码的区域仅执行平行位移以生成预测块。因此,不能够充分提高预测块的精度。
因此,已经发明了在帧内BC预测处理中对屏幕图像中已经编码的区域不仅执行平行位移而且还执行旋转,以生成预测块(例如,参考NPL 1)。在该情况下,不仅将表示平行位移的方向和幅度的运动矢量,而且将旋转角度包括到编码流中。根据NPL 1中公开的技术,尽管可以不仅补偿屏幕图像中的平行位移而且可以补偿旋转方向上的移动,但是不能补偿诸如放大、缩小或歪斜的形状变化。因此,不能够充分提高预测块的精度。
同时,探索ITU-T(国际电信联盟电信标准化部门)的下一代视频编码的JVET(联合视频探索组)已经提出使用仿射变换(affine transform)执行帧间预测处理(例如,参考NPL 2)。这使得可以在帧间预测处理时补偿平行位移和旋转方向上的移动,以及诸如屏幕图像之间的放大、缩小或歪斜的形状变化,以生成预测块。
引用列表
专利文献
[非专利文献NPL 1]
Z.Zhang,V.Sze,“Rotate Intra Block Copy for Still Image Coding”,IEEE国际图像处理会议(ICIP),2015年9月
[非专利文献NPL 2]
Feng Zou,“Improved affine motion prediction(JVET-C0062)”,ITU-T的JVETSG 16WP3和ISO/IEC JTC1/SC29/WG11,2016年5月26日至6月1日
发明内容
技术问题
然而,尚未发明使用仿射变换执行帧内BC预测处理。因此,在帧内BC预测处理时,不可能补偿诸如屏幕图像的放大、缩小或歪斜的形状变化以生成预测块。因此,不能充分提高帧内BC预测处理的精度。
鉴于上述这样的情况作出了本公开内容,并且使得可以充足提高帧内BC预测处理的精度。
问题的解决方案
本公开内容的一方面的图像处理装置是包括帧内BC预测部的图像处理装置,该帧内BC预测部被配置成基于图像的当前块的多个顶点在屏幕图像中的运动矢量,对图像中的已经解码的块进行仿射变换,以执行用于生成当前块的预测图像的仿射变换帧内BC预测处理。
本公开内容的一方面的图像处理方法与本公开内容的一方面的图像处理装置对应。
在本公开内容的一方面中,基于图像的当前块的多个顶点在屏幕图像中的运动矢量对图像中的已经解码的块进行仿射变换,以执行用于生成当前块的预测图像的仿射变换帧内BC预测处理。
注意,可以通过使计算机执行程序来实现本公开内容的一方面的图像处理装置。
此外,为了实现本公开内容的一方面的图像处理装置,可以通过传输介质的传输或通过将程序记录在记录介质上来提供用于由计算机执行的程序。
本发明的有益效果
根据本公开内容的一方面,可以执行帧内BC预测处理。此外,根据本公开内容的一方面,可以充分提高帧内BC预测处理的精度。
注意,此处描述的有益效果不必是限制性的,并且可以是本公开内容中描述的一些有益效果。
附图说明
[图1]是示出CU的形成的图。
[图2]是描绘图像编码装置的第一实施方式的配置示例的框图。
[图3]是描绘图2的预测部的配置示例的框图。
[图4]是示出屏幕图像中的一个点的分数像素精度的运动矢量的图。
[图5]是示出图2的图像编码装置的图像编码处理的流程图。
[图6]是说明SPS.IntraBCWithSubPelflag的设置处理的流程图。
[图7]是示出图5的预测处理的细节的流程图。
[图8]是示出图7的帧内BC预测成本计算处理的细节的流程图。
[图9]是示出图7的最佳帧内预测确定处理的细节的流程图。
[图10]是描绘图像解码装置的第一实施方式的配置示例的框图。
[图11]是描绘图10的预测部的配置示例的框图。
[图12]是示出图10的图像解码装置的图像解码处理的流程图。
[图13]是示出图12的帧内预测图像生成处理的细节的流程图。
[图14]是描绘图像编码装置的第二实施方式中的预测部的配置示例的框图。
[图15]是示出屏幕图像中的三个顶点的分数像素精度的运动矢量的图。
[图16]是示出通过仿射变换帧内BC预测处理进行补偿的图。
[图17]是示出仿射变换的方法的图。
[图18]是示出第二实施方式中的SPS.IntraBCWithAffineflag的设置处理的流程图。
[图19]是示出第二实施方式中的帧内BC预测成本计算处理的流程图。
[图20]是示出第二实施方式中的最佳帧内预测确定处理的流程图。
[图21]是描绘图像解码装置的第二实施方式中的预测部的配置示例的框图。
[图22]是示出第二实施方式中的帧内预测图像生成处理的流程图。
[图23]是示出SPS.IntraBCWithSubPelflag和SPS.IntraBCWithAffineflag的设置处理的流程图。
[图24]是描绘PU的尺寸与仿射变换帧内BC预测处理的有效与无效之间的转换之间的关系的示例的图。
[图25]是描绘计算机的硬件的配置示例的框图。
[图26]是描绘电视装置的示意性配置的示例的框图。
[图27]是描绘的便携式电话机的示意性配置的示例的框图。
[图28]是描绘记录和再现装置的示意性配置的示例的框图。
[图29]是描绘成像装置的示意性配置的示例的框图。
[图30]是描绘视频设备的示意性配置的示例的框图。
[图31]是描绘视频处理器的示意性配置的示例的框图。
[图32]是描绘视频处理器的示意性配置的另一示例的框图。
[图33]是描绘网络系统的示意性配置的示例的框图。
具体实施方式
在以下中,描述了用于实施本公开内容的模式(在下文中被称为“实施方式”)。注意,按照以下顺序给出描述:
1.第一实施方式:编码装置和解码装置(图1至图13)
2.第二实施方式:编码装置和解码装置(图14至图24)
3.第三实施方式:计算机(图25)
4.第四实施方式:电视装置(图26)
5.第五实施方式:便携式电话机(图27)
6.第六实施方式:记录与再现装置(图28)
7.第七实施方式:成像装置(图29)
8.第八实施方式:视频设备(图30至图32)
9.第九实施方式:网络系统(图33)
<第一实施方式>
(CU的形成的描述)
在诸如MPEG2(运动图像专家组2(ISO/IEC 13818-2))和MPEG-4Part10(高级视频编码,在下文中称为AVC)的传统图像编码方法中,在被称为宏块的处理单元中执行编码处理。宏块是具有16×16像素的均匀尺寸的块。相比之下,在HEVC中,在称为CU(编码单元)的处理单元(编码单元)中执行编码处理。CU是通过递归地划分作为最大编码单元的LCU(最大编码单元)而形成的块,并且具有可变的尺寸。CU的可选择的最大尺寸是64×64像素。CU的可选择的最小尺寸是8×8像素。最小尺寸的CU被称为SCU(最小编码单元)。注意,CU的最大尺寸不限于64×64像素,而可以是更大的块尺寸,例如128×128像素和256×256像素等。
作为采用具有上述这样可变尺寸的CU的结果,在HEVC中,可以响应于图像的内容自适应地调整图像质量和编码效率。在称为PU(预测单元)的处理单元中执行用于预测编码的预测处理。PU是通过按照若干个划分图案之一来划分CU而形成的。此外,针对每个亮度(Y)和每个色差(Cb、Cr),PU由称为PB(预测块)的处理单元构成。此外,在称为TU(变换单元)的处理单元中执行正交变换处理。TU是通过将CU或PU划分至一定深度而形成的。此外,针对每个亮度(Y)和每个色差(Cb、Cr),TU由称为TB(变换块)的处理单元(变换块)构成。
在以下描述中,“块”通常用作图像(图片)的部分区域或处理单元(不是处理部的块)。在该情况下,“块”指示图片内的任意部分区域并且在尺寸、形状、属性等方面不受限制。简而言之,在该情况下的“块”包括任意区域(处理单元),例如TB、TU、PB、PU、SCU、CU、LCU(CTB)、子块、宏块、区块(tile),和条带(slice)等。
图1是示出第一实施方式中的CU的形成的图。
第一实施方式中的CU的形成是通过JVET-C0024,“EE2.1:Quadtree plus binarytree structure integration with JEM tools”中所描述的称为QTBT(四叉树加二叉树)的技术来执行的。
特别地,尽管在HEVC中,一个块可以仅被划分为4(=2×2)个子块,但是在第一实施方式中,一个块可以不仅被划分为4(=2×2)个子块,而且被划分为2(=1×2,2×1)个子块。特别地,在第一实施方式中,通过递归地重复将一个块划分为四个或两个子块来执行CU的形成,并且因此,形成作为四叉树(四叉树)结构或二叉树(二叉树)结构的树结构。注意,在第一实施方式中,PU和TU与CU相同。
(图像编码装置的配置示例)
图2是描绘作为应用本公开内容的图像处理装置的图像编码装置的第一实施方式的配置示例的框图。图2的图像编码装置100是如AVC或HEVC中那样对图像与该图像的预测图像之间的预测残差进行编码的装置。例如,图像编码装置100具有并入其中的HEVC技术或由JVET提出的技术。
注意,图2描绘了处理部、数据流等中的主要部分,并且图2中描绘的那些不必是其全部。简而言之,在图像编码装置100中,可以存在着没有被描绘为图2中的块的处理部,或者可以存在着没有被图2中的箭头标记等所描绘的处理或数据流。
图2的图像编码装置100包括控制部101、算术运算部111、变换部112、量化部113、编码部114、去量化部115、逆变换部116、另一算术运算部117、帧存储器118和预测部119。图像编码装置100针对每个CU对图片执行编码,该图片是输入至其的帧单元的运动图像。
具体地,图像编码装置100的控制部101基于来自外部的输入等来设置编码参数(头信息Hinfo、预测信息Pinfo、变换信息Tinfo等)中的固定值。控制部101将头信息Hinfo的固定值提供至例如关联的部件,将预测信息Pinfo的固定值提供至例如预测部119,并且将变换信息Tinfo的固定值提供至例如变换部112、量化部113、去量化部115和逆变换部116。
此外,控制部101(设置部)获取来自变换部112、量化部113和预测部119的编码参数之中的变量值的最佳值,并且设置包括最佳值和固定值的编码参数。控制部101将设置的编码参数提供至编码部114,将预测信息Pinfo的变量值的最佳值提供至算术运算部111,并且将变换信息Tinfo的变量值的最佳值提供至去量化部115和逆变换部116。
头信息Hinfo包括诸如视频参数集(VPS(视频参数集))、序列参数集(SPS(序列参数集))、图片参数集(PPS(图片参数集)、滑块头(SH)等的信息。例如,头信息Hinfo的SPS包括SPS.IntraBCWithSubPelflag,其作为指示是否要使以下帧内BC预测处理生效的固定值:该帧内BC预测处理使用分数像素精度的运动矢量;SPS.IntraBCflag,其作为指示是否要使帧内BC预测处理生效的固定值等。自然地,头信息Hinfo的内容是任意的,并且除了以上描述的示例之外的任何信息可以被包括在头信息Hinfo中。
预测信息Pinfo例如包括分割标志等,该分割标志是指示在形成PU(CU)时的每一个分割层次中在水平方向或竖直方向上是否存在分割的可变信息。此外,预测信息Pinfo包括可变模式信息pred_mode_flag,该可变模式信息pred_mode_flag针对每个PU指示用于PU的预测处理是帧内预测处理类型的处理(帧内预测处理、帧内BC预测处理),还是帧间预测处理。
此外,在模式信息pred_mode_flag指示帧内预测处理类型的处理的情况下,预测信息Pinfo包括指示PU的预测处理是否是帧内BC预测处理的变量PU.IntraBCflag。在PU.IntraBCflag指示帧内BC预测处理的情况下,预测信息Pinfo包括在帧内BC预测处理中使用的可变运动矢量。另一方面,在PU.IntraBCflag指示帧内BC预测处理并且SPS.IntraBCWithSubPelflag指示使用分数像素精度的运动矢量的帧内BC预测处理将生效的情况下,预测信息Pinfo包括用于指示要在帧内BC预测处理中使用的运动矢量的精度是否是分数像素精度的变量PU.IntraBCWithSubPelflag(分数像素精度信息)。
另一方面,在PU.IntraBCflag不指示帧内BC预测处理的情况下,预测信息Pinfo包括指示以下帧内预测模式的可变信息:称为DC帧内预测、平面帧内预测和角度帧内预测的帧内预测模式。
此外,在模式信息pred_mode_flag指示帧间预测处理的情况下,预测信息Pinfo包括在帧间预测处理中使用的可变运动矢量等。自然地,预测信息Pinfo的内容是任意的,并且除了以上描述的示例之外的任何信息可以被包括在预测信息Pinfo中。
变换信息Tinfo包括TB尺寸TBSize等,TB尺寸TBSize是指示TB尺寸的可变信息。自然地,变换信息Tinfo的内容是任意的,并且除了以上描述的示例之外的任何信息可以被包括在该变换信息Tinfo中。
算术运算部111基于预测信息Pinfo的分割标志的最佳值,接连地将输入至其的帧单元的运动图像的图片设置为编码目标的图片,并且将编码目标的CU(PU,TU)设置到编码目标的图片。算术运算部111从PU的图像I(当前块)中减去从预测部119提供的编码目标的PU的预测图像P(预测块),以计算预测残差D,并且将预测残差D提供至变换部112。
变换部112基于从控制部101提供的编码参数的固定值,确定成为变换信息Tinfo的变量值的候选的值。针对成为变换信息Tinfo的变量值的候选的每一个值,变换部112基于该值和固定值对从算术运算部111提供的预测残差D执行变换处理,以导出变换系数Coeff。针对成为变换信息Tinfo的变量值的候选的每一个值,变换部112基于变换系数Coeff等计算编码目标的CU的RD(率失真)成本。然后,变换部112将与最低RD成本有关的、成为变换信息Tinfo的变量值的候选的值确定为变换信息Tinfo的变量值的最佳值,并且将最佳值提供至控制部101。变换部112将与变换信息Tinfo的变量值的最佳值对应的变换系数Coeff提供至量化部113。
量化部113基于从控制部101提供的编码参数的固定值,确定成为变换信息Tinfo的变量值的候选的值。针对成为变换信息Tinfo的变量值的候选的每一个值,量化部113基于该值和固定值对从变换部112提供的变换系数Coeff进行缩放(量化),以导出量化变换系数级别Level。针对成为变换信息Tinfo的变量值的候选的每一个值,量化部113基于量化变换系数级别Level等计算编码目标的CU的RD成本。然后,量化部113将与最低RD成本有关的、成为变换信息Tinfo的变量值的候选的值确定为变换信息Tinfo的变量值的最佳值,并且将最佳值提供至控制部101。量化部113将与变换信息Tinfo的变量值的最佳值对应的量化变换系数级别Level提供至编码部114和去量化部115。
编码部114通过预定方法对从量化部113提供的量化变换系数级别level等进行编码。例如,编码部114根据语法表(syntax table)的定义将从控制部101提供的编码参数(头信息Hinfo、预测信息Pinfo、变换信息Tinfo等)和从量化部113提供的量化变换系数级别Level转换成个体语法元素的语法值。然后,编码部114对语法值进行编码(例如,算术编码)并且生成作为编码结果而获得的比特串。编码部114例如对编码的语法元素的比特串(编码数据)进行复用,并且将复用的结果输出为编码流。
去量化部115基于从控制部101提供的编码参数的变量值的固定值和最佳值,对从量化部113提供的量化变换系数级别Level的值进行缩放(去量化),以导出去量化后的变换系数Coeff_IQ。去量化部115将变换系数Coeff_IQ提供至逆变换部116。由去量化部115执行的去量化是对量化部113执行的量化的逆处理。
逆变换部116基于从控制部101提供的编码参数的变量值的固定值和最佳值,对从去量化部115提供的变换系数Coeff_IQ执行逆变换,以导出预测残差D'。逆变换部116将预测残差D'提供至算术运算部117。由逆变换部116执行的逆变换是对变换部112执行的变换的逆处理。
算术运算部117将从逆变换部116提供的预测残差D'和从预测部119提供的对应于预测残差D'的预测图像P相加,以导出局部解码图像Rec。算术运算部117将局部解码图像Rec提供至帧存储器118。
帧存储器118使用从算术运算部117提供的局部解码图像Rec重建图片单元的解码图像,并且将解码图像存储到帧存储器118中的缓冲器中。帧存储器118从缓冲器读出由预测部119指定为参考图像的解码图像,并且将参考图像提供至预测部119。此外,帧存储器118可以将与解码图像的生成有关的头信息Hinfo、预测信息Pinfo、变换信息Tinfo等存储到帧存储器118中的缓冲器中。
预测部119基于从控制部101提供的编码参数的固定值来确定成为预测信息Pinfo的变量值的候选的值。预测部119针对成为预测信息Pinfo的变量值的候选的每一个值,基于该值和固定值获取在帧存储器118中存储的解码图像作为参考图像,并且使用参考图像执行帧内BC预测处理、帧内预测处理或帧间预测处理。由此生成预测图像P。
注意,在执行帧内BC预测处理或帧内预测处理的情况下,参考图像是从包括图像I的图片局部解码的解码图像。此外,在执行帧间预测处理的情况下,参考图像是在包括图像I(解码的先前图像)的图片之前解码的图片,并且是从整个屏幕图像解码的解码图像。
预测部119针对成为预测信息Pinfo的变量值的候选的每一个值,基于预测图像P等计算编码目标的CU的RD成本。然后,预测部119将与最低RD成本有关的、成为预测信息Pinfo的变量值的候选的值确定为预测信息Pinfo的变量值的最佳值,并且将最佳值提供至控制部101。预测部119将与预测信息Pinfo的变量值的最佳值对应的预测图像P提供至算术运算部111和算术运算部117。
(图像编码装置的预测部的配置示例)
图3是描绘图2的预测部119的配置示例的框图。
图3的预测部119包括选择部131、帧内预测部132、插值处理部133、运动矢量检测部134、帧内BC预测部135、帧间预测部136和确定部137。
预测部119的选择部131基于从控制部101提供的编码参数的固定值确定预测信息Pinfo的分割标志、模式信息pred_mode_flag、PU.IntraBCWithSubPelflag、PU.IntraBCflag、指示帧内预测模式的信息和成为运动矢量的候选的值等。选择部131将所确定的值提供至关联的部件。
此外,选择部131针对成为模式信息pred_mode_flag和PU.IntraBCflag的候选的每一个值,基于该值获取在帧存储器118中存储的解码图像作为参考图像。选择部131针对成为模式信息pred_mode_flag、PU.IntraBCWithSubPelflag和PU.IntraBCflag的候选的每一个值,将基于该值的参考图像和成为分割标志的候选的值提供至帧内预测部132、插值处理部133或运动矢量检测部134。
具体地,在成为模式信息pred_mode_flag的候选的值指示帧内预测处理类型的处理,并且成为PU.IntraBCflag的候选的值不指示帧内BC预测处理的情况下,选择部131将参考图像提供至帧内预测部132。
另一方面,在成为模式信息pred_mode_flag的候选的值指示帧内预测处理类型的处理,并且PU.IntraBCflag指示帧内BC预测处理,同时成为PU.IntraBCWithSubPelflag的候选的值指示用于帧内BC预测处理的运动矢量的精度是分数像素精度的情况下,或者在成为模式信息pred_mode_flag的候选的值指示帧间预测处理的情况下,选择部131将参考图像提供至插值处理部133。
此外,在成为模式信息pred_mode_flag的候选的值指示帧内预测处理类型的处理,并且成为PU.IntraBCflag的候选的值指示帧内BC预测处理,同时成为PU.IntraBCWithSubPelflag的候选的值指示用于帧内BC预测处理的运动矢量的精度不是分数像素精度时的情况下,选择部131将参考图像提供至运动矢量检测部134。
帧内预测部132基于成为分割标志的候选的每一个值,将编码目标的PU(CU)设置到编码目标的图片。帧内预测部132针对成为指示帧内预测模式的信息的候选的每一个值,基于该值使用从选择部131提供的参考图像对编码目标的PU执行帧内预测处理。帧内预测处理是用于生成具有已经解码的PU尺寸的块作为预测图像P的处理,其中该块存在于与该PU的图片相同的图片中、由该PU的帧内预测模式指示的方向上。帧内预测部132针对成为分割标志的候选的每一个值以及针对指示帧内预测模式的信息,将编码目标的PU的预测图像P提供至确定部137。
插值处理部133通过将从选择部131提供的参考图像中的每个分数像素周围的像素乘以滤波器系数来执行用于生成分数像素的像素值的插值处理。分数像素是以下像素:其像素尺寸是像素的原始尺寸的分倍数(例如,1/8、1/4、1/2等)。插值处理部133将通过插值处理生成的参考图像的分数像素的像素值提供至运动矢量检测部134。
运动矢量检测部134基于成为分割标志的候选的值将编码目标的PU(CU)设置到编码目标的图片。运动矢量检测部134基于从插值处理部133提供的参考图像的分数像素的像素值,以分数像素精度检测编码目标的PU的一个点(例如,中心点)在屏幕图像中或在屏幕图像之间的运动矢量。
具体地,运动矢量检测部134针对成为分数精度的运动矢量的候选的每一个值,基于该值使用参考图像对编码目标的PU执行帧内BC预测处理或帧间预测处理,以生成预测图像P。运动矢量检测部134针对成为分数精度的运动矢量的候选的每一个值,基于预测图像P等计算编码目标的CU的RD成本。运动矢量检测部134输出与最低RD成本有关的、成为分数精度的运动矢量的候选的值,作为编码目标的PU的一个点在屏幕图像中或在屏幕图像之间的分数精度的运动矢量。
注意,运动矢量检测部134可以不检测RD成本,而是检测以下值作为编码目标的PU的一个点在屏幕图像中或在屏幕图像之间的分数精度的运动矢量:该值是与预测图像P和编码目标的PU的图像I之间的最低SAD(绝对差之和)或最低SATD(绝对变换差之和)有关的、成为分数精度的运动矢量的候选。
此外,运动矢量检测部134基于从选择部131提供的参考图像的像素的像素值,与编码目标的PU的一个点在屏幕图像中的分数像素精度的运动矢量类似地检测编码目标的PU的一个点在屏幕图像中的整数像素精度的运动矢量。
运动矢量检测部134将编码目标的PU的一个点在从插值处理部133提供的参考图像和屏幕图像中的分数像素精度的运动矢量,或者编码目标的PU的一个点在从选择部131提供的参考图像和屏幕图像中的整数像素精度的运动矢量,提供至帧内BC预测部135。此外,运动矢量检测部134将编码目标的PU的一个点在从插值处理部133提供的参考图像和屏幕图像之间的分数像素精度的运动矢量提供至帧间预测部136。
帧内BC预测部135基于编码目标的PU的一个点在屏幕图像中的分数像素精度或整数像素精度的运动矢量,使用参考图像对编码目标的PU执行帧内BC预测处理。帧内BC预测处理是用于对具有已经解码的PU尺寸的块进行平行移位以生成预测图像P的处理,其中该块存在于与PU的图片相同的图片中、与PU间隔开运动矢量的位置处。帧内BC预测部135将编码目标的PU的预测图像P提供至确定部137。
帧间预测部136基于编码目标的PU的一个点在屏幕图像中的分数像素精度的运动矢量,使用参考图像对编码目标的PU执行帧间预测处理。帧间预测处理是用于对具有已经解码的PU尺寸的块进行平行移位以生成预测图像P的处理,其中该块存在于以下图片内、与PU间隔开运动矢量的位置处:该图片在包括PU的图片之前被解码。帧内BC预测部135将编码目标的PU的预测图像P提供至确定部137。
确定部137针对成为分割标志、模式信息pred_mode_flag、PU.IntraBCWithSubPelflag、PU.IntraBCflag、指示帧内预测模式的信息等的候选的每一个值,基于从帧内预测部132、帧内BC预测部135或帧间预测部136提供的预测图像P等计算编码目标的CU的RD成本。然后,确定部137将与最低RD成本有关的、成为分割标志、模式信息pred_mode_flag、PU.IntraBCWithSubPelflag、PU.IntraBCflag、指示帧内预测模式的信息等的候选的值确定为最佳值,并且将最佳值提供至控制部101。确定部137将与最佳值对应的预测图像P提供至算术运算部111和算术运算部117。
在图3的预测部119中,插值处理部133和运动矢量检测部134检测要在帧内BC预测处理中使用的屏幕图像中的分数像素精度的运动矢量,并且以上述这样的方式检测要在帧间预测处理中使用的屏幕图像之间的分数像素精度的运动矢量。换句话说,检测要在帧内BC预测处理中使用的屏幕图像中的分数像素精度的运动矢量的处理块和检测要在帧间预测处理中使用的屏幕图像之间的分数像素精度的运动矢量的处理块是共享的。因此,与不是共享的替选情况相比,可以减小图像编码装置100的电路规模。
(屏幕图像中的一个点的分数像素精度的运动矢量的描述)
图4是示出由图3的运动矢量检测部134检测的编码目标的PU的一个点的屏幕图像中的分数像素精度(子像素精度)的运动矢量的图。
在图4的示例中,运动矢量检测部134基于成为分割标志的候选的值将编码目标的PU 151设置成图片150。在该情况下,当PU 151的一个点在屏幕图像中的分数像素精度的运动矢量如图4所描绘的时,尽管已经对PU 151的上侧和左侧的区域152进行编码和解码,但是尚未对PU 151的下侧和右侧的区域153进行编码。换句话说,参考图像是仅在其区域152中局部解码的解码图像。
插值处理部133对上述这样的参考图像执行插值处理,以生成参考图像的分数像素的像素值。运动矢量检测部134基于参考图像的分数像素的像素值,例如将分数像素精度的运动矢量154检测作为PU 151的一个点在屏幕图像中的分数像素精度的运动矢量。
帧内BC预测部135基于运动矢量154执行帧内BC预测处理,以对存在于图片150中、与PU 151间隔开运动矢量154的位置处的PU尺寸的块155的参考图像进行平行移位,以生成预测图像P。
注意,在插值处理部133的插值处理中,为了生成块155的参考图像的分数像素的像素值,例如,使用根据包括块155的参考图像的像素形成的块156的参考图像的像素值。
(图像编码装置的处理的描述)
图5是示出图2的图像编码装置100的图像编码处理的流程图。
在图5的步骤S101中,控制部101基于来自外部的输入等设置编码参数中的固定值。控制部101将头信息Hinfo的固定值提供至例如关联部件,将预测信息Pinfo的固定值提供至例如预测部119,并且将变换信息Tinfo的固定值提供至例如变换部112、量化部113、去量化部115和逆变换部116。
在步骤S102处,预测部119执行用于优化预测信息Pinfo的变量值、并且生成与预测信息Pinfo的变量值的最佳值对应的预测图像P的预测处理。下文中参照图7描述该预测处理的细节。预测部119将预测信息Pinfo的变量值的最佳值提供至控制部101,并且将与预测信息Pinfo的变量值的最佳值对应的预测图像P提供至算术运算部111和算术运算部117。控制部101将来自于预测信息Pinfo的分割标志等的最佳值提供至算术运算部111。
在步骤S103处,算术运算部111基于分割标志的最佳值将编码目标的CU(PU,TU)设置到图片,并且算术地计算编码目标的PU的图像I与从预测部119提供的预测图像P之间的差,作为预测残差D。与原始图像I相比,以该方式计算的预测残差D的数据量减少。因此,与按原样编码图像I的替选情况相比,可以压缩数据量。
在步骤S104处,变换部112基于成为变换信息Tinfo的变量值的候选的值,对从算术运算部111提供的预测残差D执行变换处理,以导出变换系数Coeff。变换部112执行变换信息Tinfo的变量值的优化,并且将与变换信息Tinfo的变量值的最佳值对应的变换系数Coeff提供至量化部113,并且此外将变换信息Tinfo的变量值的最佳值提供至控制部101。
在步骤S105处,量化部113基于成为变换信息Tinfo的变量值的候选的值,对从变换部112提供的变换系数Coeff进行量化,以导出量化变化系数级别Level。变换部112执行变换信息Tinfo的变量值的优化,并且将与变换信息Tinfo的变量值的最佳值对应的量化变换系数级别Level提供至去量化部115,并且此外将变换信息Tinfo的变量值的最佳值提供至控制部101。控制部101设置编码参数(包括预测信息Pinfo、变换信息Tinfo等的变量值的最佳值和固定值),并且将编码参数提供至编码部114,并且将变换信息Tinfo的变量值的最佳值提供至去量化部115和逆变换部116。
在步骤S106处,去量化部115基于编码参数的变量值的固定值和最佳值,利用与步骤S105的量化特性对应的特性,对从量化部113提供的量化变换系数级别Level进行去量化。去量化部115将作为去量化的结果获得的变换系数Coeff_IQ提供至逆变换部116。
在步骤S107处,逆变换部116基于编码参数的变量值的固定值和最佳值,通过与步骤S104的变换方法对应的方法,对从去量化部115提供的变换系数Coeff_IQ执行逆变换处理,以导出预测残差D'。
在步骤S108处,算术运算部117将通过步骤S107的处理导出的预测残差D'与从预测部119提供的预测图像P相加,以生成局部解码图像Rec。
在步骤S109处,帧存储器118使用通过步骤S108的处理获得的局部解码图像Rec来重建图片单元的解码图像,并且将解码图像存储到帧存储器118中的缓冲器中。
在步骤S110处,编码部114对通过步骤S105的处理获得的量化变换系数级别Level进行编码。例如,编码部114通过算术编码等对量化变换系数级别Level(其作为与图像有关的信息)进行编码。此外,此时,编码部114对从控制部101提供的编码参数(头信息Hinfo、预测信息Pinfo、变换信息Tinfo)进行编码。编码部114将通过这样编码而生成的编码数据作为编码流输出至图像编码装置100的外部。该编码流例如通过传输线或记录介质传输至解码侧。
当步骤S110处的处理结束时,图像编码处理结束。
图6是示出来自于图5的步骤S101的处理中的SPS.IntraBCWithSubPelflag的设置处理的流程图。
在图6的步骤S121处,控制部101基于来自外部的输入等来判定使用分数像素精度的运动矢量的帧内BC预测处理是否要生效。在步骤S121处判定使用分数像素精度的运动矢量的帧内BC预测处理要生效的情况下,处理进行到步骤S122。
在步骤S122处,控制部101将SPS.IntraBCWithSubPelflag设置为1,1指示使用分数像素精度的运动矢量的帧内BC预测处理要生效,并且处理结束。
另一方面,在步骤S122处判定使用分数像素精度的运动矢量的帧内BC预测处理不生效的情况下,处理进行到步骤S123。在步骤S123处,控制部101将SPS.IntraBCWithSubPelflag设置为0,0指示使用分数像素精度的运动矢量的帧内BC预测处理不生效,并且处理结束。
图7是示出图5的步骤S102的预测处理的细节的流程图。
在图7的步骤S140处,预测部119的选择部131(图3)将成为LCU的分割标志的候选的值确定为0。选择部131、帧内预测部132、运动矢量检测部134等基于分割标志将当前编码目标的PU设置到编码目标的图片。
在步骤S141处,选择部131基于从控制部101提供的编码参数的固定值判定包括当前编码目标的PU的条带是否是I条带。
在步骤S141处判定包括当前编码目标的PU的条带不是I条带的情况下,即,在包括当前编码目标的PU的条带是P条带或B条带的情况下,选择部131将成为模式信息pred_mode_flag的候选的值确定为指示帧间预测处理的值。然后,选择部131将参考图像提供至插值处理部133。
在步骤S142处,插值处理部133对从选择部131提供的参考图像执行插值处理,并且将作为插值处理的结果获得的参考图像的分数像素的像素值提供至运动矢量检测部134。
在步骤S143处,运动矢量检测部134基于从插值处理部133提供的参考图像的分数像素的像素值,检测编码目标的PU的一个点在屏幕图像之间的分数像素精度的运动矢量。运动矢量检测部134将图像I的一个点在屏幕图像之间的分数像素精度的运动矢量和参考图像的分数像素的像素值提供至帧间预测部136。
在步骤S144处,帧间预测部136基于编码目标的PU的一个点在屏幕图像之间的分数像素精度的运动矢量,使用参考图像的分数像素的像素值对编码目标的PU执行帧间预测处理。帧内BC预测部135将作为帧间预测处理的结果获得的预测图像P提供至确定部137。
在步骤S145处,确定部137在模式信息pred_mode_flag具有指示帧间预测处理的值的情况下,基于从帧内BC预测部135提供的预测图像P等计算编码目标的CU的RD成本JInter。然后,确定部137在模式信息pred_mode_flag具有指示帧间预测处理的值的情况下,将运动矢量的最佳值确定为运动矢量检测部134检测到的编码目标的PU的一个点的屏幕图像之间的分数像素精度的运动矢量。
在步骤S141处判定包括当前编码目标的PU的条带是I条带的情况下,或在步骤S145的处理之后,选择部131将成为模式信息pred_mode_flag的候选的值确定为指示帧内预测处理类型的处理的值。此外,选择部131将成为PU.IntraBCflag的候选的值确定为不指示帧内BC预测处理的值,并且将成为指示帧内预测模式的信息的候选的值确定为成为所有候选的指示帧内预测模式的值。然后,选择部131将参考图像提供至帧内预测部132并且使处理进行到步骤S146。
在步骤S146处,帧内预测部132针对成为指示帧内预测模式的信息的候选的每一个值,基于该值使用参考图像对编码目标的PU执行帧内预测处理。帧内预测部132将作为帧内预测处理的结果而生成的、成为指示帧内预测模式的信息的候选的每一个值的预测图像P提供至确定部137。
在步骤S147处,确定部137在模式信息pred_mode_flag具有指示帧内预测处理类型的处理的值、并且PU.IntraBCflag具有不指示帧内BC预测处理的值的情况下,针对成为指示帧内预测模式的信息的候选的每一个值,基于从帧内预测部132提供的预测图像P等计算编码目标的PUI的RD成本JAng。然后,处理进行到步骤S148。
在步骤S148处,选择部131判定从控制部101提供的SPS.IntraBCflag是否为指示帧内BC预测处理要生效的1。在步骤S148处判定SPS.IntraBCflag为1的情况下,选择部131将成为模式信息pred_mode_flag的候选的值确定为指示帧内预测处理类型的处理的值。此外,选择部131将PU.IntraBCflag设置为指示帧内BC预测处理的值,并且将PU.IntraBCWithSubPelflag设置为指示在帧内BC预测处理中使用的运动矢量的精度不是分数像素精度的值。然后,选择部131将参考图像提供至运动矢量检测部134并且使处理进行到步骤S149。
在步骤S149处,预测部119执行帧内BC预测处理,并且基于作为帧内BC预测处理的结果而生成的预测图像P等来执行用于计算编码目标的CU的RD成本的帧内预测成本计算处理。下文中参照图8描述帧内BC预测成本计算处理的细节。在步骤S149处的处理之后,处理进行到步骤S150。
另一方面,在步骤S148处判定SPS.IntraBCflag不是1的情况下,不执行帧内BC预测成本计算处理,并且处理进行到步骤S150。
在步骤S150处,确定部137在模式信息pred_mode_flag具有指示帧内预测处理类型的处理的值的情况下,执行用于确定预测信息Pinfo的变量值的最佳值的最佳帧内预测确定处理。下文中参照图9描述该最佳帧内预测确定处理的细节。
在步骤S151处,确定部137将模式信息pred_mode_flag具有指示帧间预测处理的值的情况下的预测信息Pinfo的变量值的最佳值和模式信息pred_mode_flag具有指示帧内预测处理的值的情况下的预测信息Pinfo的变量值的最佳值之中的与最小RD成本有关的一个值、分割标志、最小值的模式信息pred_mode_flag等确定为预测信息Pinfo的变量值的最终最佳值。
在步骤S152处,确定部137判定在紧接的先前步骤S151中确定的当前预测信息Pinfo的变量值的最终最佳值所对应的RD成本是否低于保存在其中的RD成本。在步骤S152处判定当前RD成本低于保存的RD成本的情况下,确定部137保存当前RD成本和预测信息Pinfo的变量值的最终最佳值以及对应的预测图像P,并且处理进行到步骤S154。
另一方面,在步骤S152处判定当前RD成本不低于保存的RD成本的情况下,处理进行到步骤S154。
在步骤S154处,选择部131判定LCU是否已被划分到最后。在步骤S154处判定LCU尚未被划分到最后的情况下,处理进行到步骤S155。
在步骤S155处,选择部131将成为当前编码目标的PU的水平方向或竖直方向中的至少一个方向上的分割标志的候选的值确定为1。选择部131、帧内预测部132、运动矢量检测部134等基于分割标志新确定图片的当前编码目标的PU。然后,处理返回到步骤S141,并且重复步骤S141至S155的处理,直到在步骤S154处判定LCU已被划分到最后。
在步骤S154处判定LCU已被划分到最后的情况下,确定部137将保存在其中的预测信息Pinfo的变量值的最终最佳值提供至控制部101,并且将预测图像P提供至算术运算部111和算术运算部117。然后,处理返回到图5的步骤S102,并且然后进行到步骤S103。
图8是示出图7的步骤S149的帧内BC预测成本计算处理的细节的流程图。
在图8的步骤S171处,运动矢量检测部134基于从选择部131提供的参考图像来检测编码目标的PU的一个点在屏幕图像中的整数像素精度的运动矢量。运动矢量检测部134将编码目标的PU的一个点在屏幕图像中的整数像素精度的运动矢量和参考图像提供至帧内BC预测部135。
在步骤S172处,帧内BC预测部135基于从运动矢量检测部134提供的编码目标的PU的一个点在屏幕图像中的整数像素精度的运动矢量,使用参考图像对编码目标的PU执行帧内BC预测处理。帧内BC预测部135将作为帧内BC预测处理的结果生成的预测图像P提供至确定部137。
在步骤S173处,确定部137在模式信息pred_mode_flag具有指示帧内预测处理类型的处理的值,PU.IntraBCflag具有指示帧内BC预测处理的值,并且PU.IntraBCWithSubPelflag具有指示在帧内BC预测处理中使用的运动矢量的精度不是分数像素精度的值的情况下,基于从帧内BC预测部135提供的预测图像P等来计算编码目标的CU的RD成本JIntIBC。
在步骤S174处,选择部131判定从控制部101提供的SPS.IntraBCWithSubPelflag是否为用于指示使用分数像素精度的运动矢量的帧内BC预测处理要生效的1。
在步骤S174处判定SPS.IntraBCWithSubPelflag为1的情况下,选择部131将成为模式信息pred_mode_flag的候选的值确定为指示帧内预测处理类型的处理的值。此外,选择部131将PU.IntraBCflag确定为指示帧内BC预测处理的值,并且将PU.IntraBCWithSubPelflag确定为指示在帧内BC预测处理中使用的运动矢量的精度是分数像素精度的值。然后,选择部131将参考图像提供至插值处理部133,并且处理进行到步骤S175。
在步骤S175处,插值处理部133对参考图像执行插值处理,并且将作为插值处理的结果生成的参考图像的分数像素的像素值提供至运动矢量检测部134。
在步骤S176处,运动矢量检测部134基于从插值处理部133提供的参考图像的分数像素的像素值,检测编码目标的PU的一个点在屏幕图像中的分数像素精度的运动矢量。运动矢量检测部134将编码目标的PU的一个点在屏幕图像中的分数像素精度的运动矢量和参考图像提供至帧内BC预测部135。
在步骤S177处,帧内BC预测部135基于从运动矢量检测部134提供的、编码目标的PU的一个点在屏幕图像中的分数像素精度的运动矢量,使用参考图像对编码目标的PU执行帧内BC预测处理。帧内BC预测部135将作为帧内BC预测处理的结果生成的预测图像P提供至确定部137。
在步骤S178处,确定部137在模式信息pred_mode_flag具有指示帧内预测处理类型的处理的值,PU.IntraBCflag具有指示帧内BC预测处理的值,并且PU.IntraBCWithSubPelflag具有指示在帧内BC预测处理中使用的运动矢量的精度是分数像素精度的值的情况下,基于从帧内BC预测部135提供的预测图像P等来计算编码目标的CU的RD成本JsubIBC。然后,处理返回至图7的步骤S149并且进行到步骤S150。
图9是示出图7的步骤S149的最佳帧内预测确定处理的细节的流程图。
在图9的步骤S191处,确定部137判定:在成为指示帧内预测模式的信息的候选的每一个值的RD成本JAng、RD成本JIntIBC和RD成本JSubIBC之中,RD成本JAng是否是最低的。在步骤S191处判定RD成本JAng是最低的情况下,处理进行到步骤S192。
在步骤S192处,在模式信息pred_mode_flag具有指示帧内预测处理类型的处理的值的情况下,确定部137将与最低RD成本JAng对应的、成为指示帧内预测模式的信息的候选的值确定为指示帧内预测模式的信息的最佳值。
在步骤S193处,确定部137将在模式信息pred_mode_flag具有指示帧内预测处理类型的处理的值的情况下的PU.IntraBCflag的最佳值设置为0,其中0不指示帧内BC预测处理。然后,处理返回至图7的步骤S150并且进行到步骤S151。
另一方面,在步骤S191处判定RD成本JAng不是最低的情况下,处理进行到步骤S194。在步骤S194处,确定部137将在模式信息pred_mode_flag具有指示帧内预测处理类型的处理的值的情况下的PU.IntraBCflag的最佳值设置为1,其中1指示帧内BC预测处理。
在步骤S195处,确定部137判定:在成为指示帧内预测模式的信息的候选的每一个值的RD成本JAng、RD成本JIntIBC和RD成本JSubIBC之中,RD成本JIntIBC是否是最低的。在步骤S195处判定RD成本JIntIBC是最低的情况下,处理进行到步骤S196。
在步骤S196处,确定部137将在模式信息pred_mode_flag具有指示帧内预测处理类型的处理的值的情况下的PU.IntraBCWithSubPelflag设置为0,其中0指示在帧内BC预测处理中使用的运动矢量的精度不是分数像素精度。然后,处理返回至图7的步骤S150并且进行到步骤S151。
另一方面,在步骤S195处判定RD成本JIntIBC不是最低的情况下,即,在RD成本JSubIBC是最低的情况下,处理进行到步骤S197。在步骤S197处,确定部137将在模式信息pred_mode_flag具有指示帧内预测处理类型的处理的值的情况下的PU.IntraBCWithSubPelflag确定为1,其中1指示在帧内BC预测处理中使用的运动矢量的精度是分数像素精度。然后,处理返回至图7的步骤S150并且进行到步骤S151。
图像编码装置100可以以上述这样的方式使用屏幕图像中的分数像素精度的运动矢量来执行帧内BC预测处理。因此,可以增强通过帧内BC预测处理生成的预测图像P的精度。相比之下,由于使用屏幕图像中的整数像素精度的运动矢量来执行HEVC-SCC的帧内BC预测处理,因此不能充分提高预测图像的精度。
(图像解码装置的配置示例)
图10是描绘作为应用本技术的图像处理装置、并且对图2的图像编码装置100生成的编码流进行解码的图像解码装置的第一实施方式的配置示例的框图。图10描绘的图像解码装置200通过与图像编码装置100的编码方法对应的解码方法,对图像编码装置100生成的编码流进行解码。例如,图像解码装置200将HEVC提出的技术或JVET提出的技术并入其中。
注意,图10描绘了处理部、数据流等中的主要部分,并且图10描绘的不必是其全部。简而言之,在图像解码装置200中,可以存在着未被描绘为图10中的块的处理部,或者可以存在着未由图10中的箭头标记等描绘的处理或数据流。
图10的图像解码装置200包括解码部211、去量化部212、逆变换部213、算术运算部214、帧存储器215和预测部216。图像编码装置100针对每个CU执行对图像编码装置100所生成的编码流的解码。
具体地,图像解码装置200的解码部211通过与图像编码部114的编码方法对应的预定解码方法,对图像编码装置100生成的编码流进行解码。例如,解码部211根据语法表的定义,对来自编码流的比特串的编码参数(头信息Hinfo,预测信息Pinfo、变换信息Tinfo等)和量化变换系数级别Level进行解码。解码部分211基于编码参数中包括的分割标志来划分LUC,并且将与每个量化变换系数级别Level对应的CU接连地设置为解码目标的CU(PU,TU)。
解码部211将编码参数提供至关联块。例如,解码部211将预测信息Pinfo提供至预测部216,将变换信息Tinfo提供至去量化部212和逆变换部213,并且将头信息Hinfo提供至关联块。此外,解码部211将量化变换系数级别Level提供至去量化部212。
去量化部212基于从解码部211提供的变换信息Tinfo来对从解码部211提供的量化的变换系数级别Level的值进行缩放(去量化),以导出变换系数Coeff_IQ。该去量化是对图像编码装置100的量化部113(图2)执行的量化的逆处理。注意,去量化部115(图2)执行与去量化部212所进行的去量化类似的去量化。去量化部212将获得的变换系数Coeff_IQ提供至逆变换部213。
逆变换部213基于从解码部211提供的变换信息Tinfo等,对从去量化部212提供的变换系数Coeff_IQ进行逆变换,以导出预测残差D'。该逆变换是对图像编码装置100的变换部112(图2)执行的变换处理的逆处理。注意,逆变换部116执行与逆变换部213进行的逆变换类似的逆变换。逆变换部213将获得的预测残差D'提供至算术运算部214。
算术运算部214将从逆变换部213提供的预测残差D'和预测残差D'所对应的预测图像P相加,以导出局部解码图像Rec。算术运算部214使用获得的局部解码图像Rec来重建每个图片单元的解码图像,并且将获得的解码图像输出至图像解码装置200的外部。此外,算术运算部214还向帧存储器215提供局部解码图像Rec。
帧存储器215使用从算术运算部214提供的局部解码图像Rec来重建图片单元的解码图像,并且将解码图像存储到帧存储器215中的缓冲器中。帧存储器215从缓冲器读出由预测部216指定为参考图像的解码图像,并且将参考图像存储到预测部216中。此外,帧存储器215可以将与解码图像的生成有关的头信息Hinfo、预测信息Pinfo、变换信息Tinfo等存储到帧存储器215中的缓冲器中。
预测部216基于从解码部211提供的预测信息Pinfo等获取在帧存储器215中存储的解码图像作为参考图像,并且使用参考图像执行帧内BC预测处理、预定帧内预测模式的帧内预测处理或帧间预测处理。预测部216将作为预测部216的处理结果而生成的预测图像P提供至算术运算部214。
(图像解码装置的预测部的配置示例)
图11是描绘图10的预测部216的配置示例的框图。
图11的预测部216包括选择部231、帧内预测部232、插值处理部233、帧内BC预测部235和帧间预测部236。
预测部216的选择部231基于从图10的解码部211提供的预测信息Pinfo从帧存储器215读出参考图像,并且将参考图像提供至帧内预测部232、插值处理部233或帧内BC预测部235。
具体地,在预测信息Pinfo中的模式信息pred_mode_flag指示帧内预测处理类型的处理的情况下,选择部231读出以下解码图像作为参考图像:该解码图像被本地解码,并且包括存储在帧存储器215中的解码目标的PU。然后,在PU.IntraBCflag不指示帧内BC预测处理的情况下,选择部231将读出的参考图像提供至帧内预测部232。
另一方面,在PU.IntraBCflag指示帧内BC预测处理的情况下,当PU.IntraBCWithSubPelflag是指示在帧内BC预测处理中使用的运动矢量的精度是分数像素精度的1时,选择部231将参考图像提供至插值处理部233。另一方面,在PU.IntraBCWithSubPelflag是不指示分数像素精度的0的情况下,选择部231将参考图像提供至帧内BC预测部235。
此外,在模式信息pred_mode_flag指示帧间预测处理的情况下,选择部231读出以下图片的、存储在帧存储器215中的解码图像作为参考图像:该图片在包括解码目标的PU的图片之前已经被解码。然后,选择部231将读出的参考图像提供至插值处理部233。
帧内预测部232以预测信息Pinfo所指示的帧内预测模式,使用从选择部231提供的参考图像对解码目标的PU执行帧内预测处理。帧内预测部232将作为帧内预测处理的结果生成的预测图像P提供至算术运算部214。
与图3的插值处理部133类似,插值处理部233对从选择部231提供的参考图像执行插值处理。插值处理部233将通过插值处理生成的参考图像的分数像素的像素值提供至帧内BC预测部235和帧间预测部236。
帧内BC预测部235基于从解码部211提供的预测信息Pinfo中的解码目标的PU的一个点的屏幕图像中的分数像素精度的运动矢量,使用从插值处理部分233提供的参考图像对解码目标的PU执行帧内BC预测处理。帧内BC预测部235将作为帧内BC预测处理的结果生成的预测图像P提供至算术运算部214。
此外,帧内BC预测部235基于预测信息Pinfo中的解码目标的PU的一个点的屏幕图像中的整数像素精度的运动矢量,使用从选择部231提供的参考图像对解码目标的PU执行帧内BC预测处理。帧内BC预测部235将作为帧内BC预测处理的结果生成的预测图像P提供至算术运算部214。
帧间预测部236基于从解码部211提供的解码目标的PU的一个点的屏幕图像之间的分数像素精度的运动矢量,使用从插值处理部233提供的参考图像对解码目标的PU执行帧间预测处理。帧内BC预测部235将作为帧间BC预测处理的结果生成的预测图像P提供至算术运算部214。
(图像解码装置的处理的描述)
图12是示出图10的图像解码装置200的图像解码处理的流程图。
在步骤S200处,解码部211对提供至图像解码装置200的编码流进行解码,以获得编码参数和量化变换系数级别Level。解码部211将解码参数提供至关联块。此外,解码部211将量化变换系数级别Level提供至去量化部212。在步骤S201处,解码部211基于编码参数中包括的分割标志来划分LCU,并且将与量化变换系数级别Level对应的CU设置为解码目标的CU(PU,TU)。对解码目标的CU(PU,TU)中的每一个执行下文中描述的步骤S202至S210的处理。
在步骤S202处,去量化部212对通过步骤S201的处理获得的量化变换系数级别Level进行去量化,以导出变换系数Coeff_IQ。该逆量化是对在图像编码处理的步骤S105(图5)处执行的量化的逆处理,并且是与在图像编码处理的步骤S106(图5)处执行的去量化类似的处理。
在步骤S203处,逆变换部213对通过步骤S202的处理获得的变换系数Coeff_IQ执行逆变换处理,以导出预测残差D'。该逆变换处理是对在图像编码处理的步骤S104(图5)处执行的变换处理的逆处理,并且是与在图像编码处理的步骤S107(图5)处执行的逆变换处理类似的处理。
在步骤S204处,预测部216的选择部231(图11)基于从解码部211提供的编码参数来判定包括解码目标的PU的条带是否是I条带。在步骤S204处判定条带不是I条带的情况下,即,在包括解码目标的PU的条带是P条带或B条带的情况下,处理进行到步骤S205。
在步骤S205处,选择部231从编码参数中提取模式信息pred_mode_flag。在步骤S206处,选择部231确定模式信息pred_mode_flag是否指示帧间预测处理。
在步骤S206处判定模式信息pred_mode_flag指示帧间预测处理的情况下,选择部231基于预测信息Pinfo从帧存储器215读出以下图片的解码图像作为参考图像:该图片在包括解码目标的PU的图片之前被解码。然后,选择部231将读出的参考图像提供至插值处理部233,并且使处理进行到步骤S207。
在步骤S207处,插值处理部233对从选择部231提供的参考图像执行插值处理。插值处理部233将通过插值处理生成的参考图像的分数像素的像素值提供至帧间预测部236。
在步骤S208处,帧间预测部236基于预测信息Pinfo中的解码目标的PU的一个点的屏幕图像之间的分数像素精度的运动矢量,使用参考图像对解码目标的PU执行帧内预测处理。帧间预测部236将作为帧内预测处理的结果生成的预测图像P提供至算术运算部214,并且使处理进行到步骤S210。
另一方面,在步骤S204处判定条带是I条带的情况下,或者在步骤S206处判定模式信息pred_mode_flag不指示帧间预测处理的情况下,处理进行到步骤S209。
在步骤S209处,预测部216通过执行帧内预测处理或帧内BC预测处理来执行帧内预测图像生成处理,以生成预测图像P。下文中参照图13描述该帧内预测图像生成处理的细节。在步骤S209的处理之后,处理进行到步骤S210。
在步骤S210处,算术运算部214将从逆变换部213提供的预测残差D'与从预测部216提供的预测图像P相加,以导出局部解码图像Rec。算术运算部214使用获得的局部解码图像重建每个图片单元的解码图像,并且将获得的解码图像输出到图像解码装置200的外部。此外,算术运算部214还向帧存储器215提供局部解码图像Rec。
在步骤S211处,帧存储器215使用从算术运算部214提供的局部解码图像Rec重建每个图片单元的解码图像,并且将解码图像存储在帧存储器215中的缓冲器中。然后,处理结束。
图13是示出图12的步骤S209的帧内预测图像生成处理的细节的流程图。
在图13的步骤S231处,选择部231判定从解码部211提供的编码参数中包括的SPS.IntraBCflag是否是指示帧内BC预测处理要生效的1。
在步骤S231处判定SPS.IntraBCflag是1的情况下,处理进行到步骤S232。在步骤S232处,选择部231从预测信息Pinfo中提取PU.IntraBCflag。在步骤S233处,选择部231确定PU.IntraBCflag是否是指示帧内BC预测处理的1。
在步骤S233处判定PU.IntraBCflag是1的情况下,处理进行到步骤S234。在步骤S234处,选择部231判定在编码参数中包括的SPS.IntraBCWithSubPelflag是否是指示使用分数像素精度的运动矢量的帧内BC预测处理要生效的1。
在步骤S234处判定SPS.IntraBCWithSubPelflag是1的情况下,处理进行到步骤S235。在步骤S235处,选择部231从预测信息Pinfo中提取PU.IntraBCWithSubPelflag。
在步骤S236处,选择部231判定PU.IntraBCWithSubPelflag是否是指示要在帧内BC预测处理中使用的运动矢量的精度是分数像素精度的1。
在步骤S236处判定PU.IntraBCWithSubPelflag是1的情况下,选择部231将参考图像提供至插值处理部233并且使处理进行到步骤S237。在步骤S237处,插值处理部233对参考图像执行插值处理以生成用于参考图像的分数像素的像素值,并且将像素值提供至帧内BC预测部235。
在步骤S238处,帧内BC预测部235基于预测信息Pinfo中的解码目标的PU的一个点的屏幕图像中的分数像素精度的运动矢量,使用参考图像的分数像素的像素值,对解码目标的PU执行帧内BC预测处理。帧内BC预测部235将作为帧内BC预测处理的结果生成的预测图像P提供至算术运算部214,并且使处理返回到图12的步骤S209并且使处理进行到步骤S210。
另一方面,在步骤S234处判定SPS.IntraBCWithSubPelflag不是1的情况下,或者在步骤S236处判定PU.IntraBCWithSubPelflag不是1的情况下,选择部231将参考图像提供至帧内BC预测部235。
然后在步骤S239处,帧内BC预测部235基于预测信息Pinfo中的解码目标的PU的一个点的屏幕图像中的整数像素精度的运动矢量,使用参考图像的像素的像素值,执行帧内BC预测处理。帧内BC预测部235将作为帧内BC预测处理的结果生成的预测图像P提供至算术运算部214,并且使处理返回到图12的步骤S209并且使处理进行到步骤S210。
另一方面,在步骤S231处判定SPS.IntraBCflag不是1的情况下,或者在步骤S233处判定PU.IntraBCflag不是1的情况下,选择部231将参考图像提供至帧内预测部232。
然后,在步骤S240处,帧内预测部232在由预测信息Pinfo指示的帧内预测模式下使用从选择部231提供的参考图像对解码目标的PU执行帧内预测处理。帧内BC预测部235将作为帧内预测处理的结果生成的预测图像P提供至算术运算部214,并且使处理返回至图12的步骤S209并且使处理进行到步骤S210。
图像解码装置200可以以上述这样的方式使用屏幕图像中的分数像素精度的运动矢量来执行帧内BC预测处理。因此,可以提高由帧内BC预测处理生成的预测图像P的精度。
<第二实施方式>
(图像编码装置的预测部的配置示例)
除了预测部119的配置和编码参数的配置之外,作为应用本公开内容的图像处理装置的图像编码装置的第二实施方式的配置与图2的图像编码装置100的配置相同。因此,除了图像编码装置的第二实施方式中的预测部的配置和处理以及编码参数的配置之外的任何描述被适当地省略。
图14是描绘图像编码装置的第二实施方式中的预测部的配置示例的框图。
在图14描绘的组件中的、与图3中的部件相同的部件由相同的附图标记表示。适当省略重复描述。
图14的预测部300的配置与图3的预测部119的配置的不同之处在于:其包括选择部301、运动矢量检测部304、帧内BC预测部305和确定部307,以代替选择部131、运动矢量检测部134、帧内BC预测部135和确定部137。
预测部300不仅可以在帧内BC预测处理时通过使用一个运动矢量的平行位移来生成预测图像P,还可以通过使用多个(在第二实施方式中为三个)运动矢量的仿射变换来生成预测图像P。在以下中,在通过使用一个运动矢量的平行位移生成预测图像P的帧内BC预测处理和通过使用多个运动矢量的仿射变换生成预测图像P的帧内BC预测处理要明确地彼此区分的情况下,前者被称为平行位移帧内BC预测处理,而后者被称为仿射变换帧内BC预测处理。
在第二实施方式中,由于还可以执行仿射变换帧内BC预测处理,因此指示仿射变换帧内BC预测处理是否生效的、作为固定值的SPS.IntraBCWithAffineflag被新包括到编码参数的头信息Hinfo的SPS中。此外,在SPS.IntraBCWithAffineflag指示使仿射变换帧内BC预测处理生效的情况下,指示PU的预测处理是否是仿射变换帧内BC预测处理的变量PU.IntraBCWithAffineflag被新包括到预测信息Pinfo中。PU.IntraBCWithAffineflag(仿射变换帧内BC预测处理信息)可以被视为指示是否要执行仿射变换帧内BC预测处理作为PU的预测处理的信息。
预测部300的选择部301基于从控制部101提供的编码参数的固定值,确定成为预测信息Pinfo的分割标志、模式信息pred_mode_flag、PU.IntraBCWithSubPelflag、PU.IntraBCflag、指示帧内预测模式的信息、运动矢量等的候选的每一个值。选择部131将确定的值提供至关联的部件。
此外,选择部301针对成为模式信息pred_mode_flag和PU.IntraBCflag的候选的每一个值,基于该值将在帧存储器118中存储的解码图像获取为参考图像。选择部301针对成为模式信息pred_mode_flag、PU.IntraBCWithSubPelflag和PU.IntraBCflag的候选的每一个值,基于该值提供至帧内预测部132、插值处理部133或运动矢量检测部304。
此外,选择部301基于成为模式信息pred_mode_flag、PU.IntraBCflag和PU.IntraBCWithAffineflag的候选的值,向运动矢量检测部304通知运动矢量的数目。
具体地,在成为模式信息pred_mode_flag的候选的值是指示帧内预测处理类型的处理的值,并且成为PU.IntraBCflag的候选的值是指示帧内BC预测处理的值,并且此外成为PU.IntraBCWithAffineflag的候选的值是指示仿射变换帧内BC预测处理的值的情况下,选择部301向运动矢量检测部304通知作为运动矢量的数目的3。
另一方面,在成为模式信息pred_mode_flag的候选的值是指示帧内预测处理类型的处理的值,并且成为PU.IntraBCflag的候选的值是指示帧内BC预测处理的值,同时成为PU.IntraBCWithAffineflag的候选的值不是指示仿射变换帧内BC预测处理的值的情况下,选择部301向运动矢量检测部304通知作为运动矢量的数目的1。
同时,在成为模式信息pred_mode_flag的候选的值是指示帧间预测处理的值的情况下,选择部301向运动矢量检测部304通知作为运动矢量的数目的1。
运动矢量检测部304基于成为分割标志的候选的值,将编码目标的PU(CU)设置到编码目标的图片。在从选择部301通知的运动矢量的数目是3的情况下,运动矢量检测部304基于从插值处理部133或选择部301提供的参考图像,以与图3的运动矢量检测部134类似的分数像素精度或整数像素精度检测编码目标的PU的三个顶点的屏幕图像中的运动矢量。
然后,运动矢量检测部304使用运动矢量,针对每一个当前划分块生成当前划分块的一个点(例如,中心点)的屏幕图像中的运动矢量,该每一个当前划分块的尺寸(例如,1×1像素、2×2像素)小于构成编码目标的PU的4(水平)×4(竖直)像素的尺寸。
另一方面,在从选择部301通知的运动矢量的数目是1的情况下,运动矢量检测部304与运动矢量检测部134类似地基于从插值处理部133或选择部301提供的参考图像,来检测编码目标的PU的一个点的屏幕图像中的分数像素精度或整数像素精度的运动矢量或屏幕图像之间的分数像素精度的运动矢量。
运动矢量检测部304将编码目标的PU或每个当前划分块的一个点的屏幕图像与从插值处理部133提供的参考图像中的分数像素精度的运动矢量提供至帧内BC预测部305。此外,运动矢量检测部304将编码目标的PU或每个当前划分块的一个点的屏幕图像与从选择部301提供的参考图像中的整数像素精度的运动矢量提供至帧内BC预测部305。此外,运动矢量检测部304将编码目标的PU的一个点的屏幕图像与从插值处理部133提供的参考图像之间的分数像素精度的运动矢量提供至帧间预测部136。
帧内BC预测部305基于成为PU.IntraBCWithAffineflag的候选的值,对编码目标的PU执行平行位移帧内BC预测处理或仿射变换帧内BC预测处理。具体地,在成为PU.IntraBCWithAffineflag的候选的值是不指示仿射变换帧内BC预测处理的值的情况下,帧内BC预测部305基于编码目标的PU的一个点的屏幕图像中的分数像素精度或整数像素精度的运动矢量,使用参考图像对编码目标的PU执行平行位移帧内BC预测处理。
换句话说,在成为PU.IntraBCWithAffineflag的候选的值是指示仿射变换帧内BC预测处理的值的情况下,帧内BC预测部305基于每个当前块的分数像素精度或整数像素精度的运动矢量,使用参考图像对编码目标的PU执行仿射变换帧内BC预测处理。
仿射变换帧内BC预测处理是通过基于PU的三个顶点的屏幕图像中的运动矢量,对已经在与PU的图片相同的图片中解码的块进行仿射变换来生成预测图像P的处理。基于针对每一个当前划分块的运动矢量,通过针对每个当前划分块平行地移位已经在与PU的图片相同的图片中解码的PU尺寸的块来执行该仿射变换,该块存在于与当前划分块间隔开运动矢量的位置处。
帧内BC预测部305将作为平行移位帧内BC预测处理或仿射变换帧内BC预测处理的结果而生成的预测图像P提供至确定部307。
确定部307针对成为分割标志、模式信息pred_mode_flag、PU.IntraBCWithSubPelflag、PU.IntraBCflag、PU.IntraWithAffineflag、指示帧内预测模式的信息等的候选的每一个值,基于从帧内预测部132、帧内BC预测部305或帧间预测部136提供的预测图像P等,计算编码目标的CU的RD成本。然后,确定部307将与最低RD成本有关的成为分割标志、模式信息pred_mode_flag、PU.IntraBCWithSubPelflag、PU.IntraBCflag、PU.IntraWithAffineflag、指示帧内预测模式的信息等的候选的值确定为最佳值,并且将最佳值提供至控制部101。确定部307将与最佳值对应的预测图像P提供至算术运算部111和算术运算部117。
(三个顶点在屏幕图像中的分数像素精度的运动矢量的描述)
图15是示出由图14的运动矢量检测部304检测的编码目标的PU的三个顶点的屏幕图像中的分数像素精度的运动矢量的图。
注意,在图15中,与图4中的部件相同的部件由相同的附图标记表示并且省略对其的描述,因为这是重复的。
在成为PU.IntraBCWithAffineflag的候选的值是指示仿射变换帧内BC预测处理的值的情况下,选择部301向运动矢量检测部304通知作为运动矢量的数目的3。基于该通知,运动矢量检测部304基于从插值处理部133提供的参考图像的分数像素的像素值来检测PU 151的三个顶点(在图15的示例中,左上、右上和左下顶点)的屏幕图像中的分数像素精度的运动矢量321至323。
帧内BC预测部305基于运动矢量321至323执行仿射变换帧内BC预测处理。因此,区域152中的块320的分数像素的像素值被生成作为预测图像P,该块320的三个顶点在与PU151的三个顶点分别间隔开运动矢量321至323的位置处。
注意,在插值处理部133的插值处理中,例如,根据包括块320的参考图像的像素而形成的块324的参考图像的像素值被用于生成块320的分数像的像素值。
(通过仿射变换帧内BC预测处理进行补偿的描述)
图16是示出通过仿射变换帧内BC预测处理进行补偿的图。
在图16的示例中,基于图15的运动矢量321至323对PU 151执行仿射变换帧内BC预测处理。这还类似地适用于下文描述的图17。
在该情况下,在仿射变换帧内BC预测处理中,可以通过基于运动矢量321至323对块320进行仿射变换,来对块320进行如图16的A所示的平行移位(平移)。此外,可以如图16的B所示使块320歪斜,以如图16的C所示旋转块320或者如图16的D所示扩展或缩小块320。
因此,可以生成预测图像P,在该预测图像P中补偿了屏幕图像中的平行位移或旋转方向上的移动,或者诸如扩大、缩小或歪斜的形状变化。注意,在图16中,由实线指示仿射变换之前的块320,并且由虚线指示仿射变换之后的块320。
相比之下,在执行平行位移帧内BC预测处理的情况下,仅检测屏幕图像中的一个点的运动矢量。换句话说,使运动矢量321至323相同。因此,在平行位移帧内BC预测处理中,可以在预测图像P中仅补偿平行位移。
(仿射变换的方法的描述)
图17是示出仿射变换帧内预测处理中的仿射变换的方法的图。
如图17的A所示,在要执行仿射变换帧内BC预测处理的情况下,运动矢量检测部304将PU 151划分为尺寸小于4×4像素(在图17的示例中,1×1像素)的当前划分块340。然后,运动矢量检测部304使用运动矢量321至323生成每个当前划分块340的一个点(例如,中心点)的运动矢量341。帧内BC预测部305基于每个当前划分块340的运动矢量341,平行地移位区域152中的尺寸等于当前划分块340的尺寸的块342,以执行块320的仿射变换。
相比之下,在要执行仿射变换帧内BC预测处理中的仿射变换的情况下,与使用NPL2中所描述的仿射变换的帧间预测处理类似,PU 151被划分成如图17的B所示的4×4像素的当前划分块350。然后,使用运动矢量321至323生成每个当前划分块350的一个点的运动矢量351。然后,基于每个当前划分块350的运动矢量351,对区域152中的尺寸等于当前划分块350的尺寸的块352进行平行移位,以执行块320的仿射变换。
在该情况下,由于与当前划分块340的尺寸相比当前划分块350的尺寸更大,因此每个当前划分块350的运动矢量的误差变大。通常,由于时间上彼此接近的屏幕图像之间的运动矢量通常很小,因此在帧间预测处理中,误差对预测图像的影响很小。然而,由于屏幕图像中的运动矢量很可能很大,因此该误差对预测图像的影响很大。
因此,在仿射变换帧内BC预测处理中的仿射变换中,与使用NPL 2所描述的仿射变换的帧间预测处理中的仿射变换不同,使得当前划分块的尺寸小于4×4像素。因此,可以提高预测图像P的精度。
(图像编码装置的处理的描述)
图像编码装置的第二实施方式中的图像编码方法与图5的图像编码处理的不同在于:在步骤S101设置的编码参数的配置和在步骤S102的预测处理。因此,在以下中,描述了在步骤S101的处理中新设置为编码参数的SPS.IntraBCWithAffineflag的设置处理和预测处理。
图18是示出图像编码装置的第二实施方式中的SPS.IntraBCWithAffineflag的设置处理的流程图。
在图18的步骤S301处,控制部101基于来自外部的输入等来判定仿射变换帧内BC预测处理是否要生效。在步骤S301处判定要使仿射变换帧内BC预测处理生效的情况下,处理进行到步骤S302。
在步骤S302处,控制部101将SPS.IntraBCWithAffineflag设置为指示要使仿射变换帧内BC预测处理生效的1,并且结束处理。
另一方面,在步骤S302处判定不使仿射变换帧内BC预测处理生效的情况下,处理进行到步骤S303。在步骤S303处,控制部101将SPS.IntraBCWithAffineflag设置为指示使仿射变换帧内BC预测处理无效的0,并且结束处理。
图像编码装置的第二实施方式中的预测处理与图7的预测处理的不同在于:图7的步骤S149的帧内BC预测成本计算处理和最佳帧内预测确定处理。
图19是示出图像编码装置的第二实施方式中的帧内BC预测成本计算处理的流程图。
图19的步骤S321至S328的处理与图8的步骤S171至S178的处理类似。
在步骤S329处,选择部301判定从控制部101提供的SPS.IntraBCWithAffineflag是否为指示仿射变换帧内预测处理要生效的1。
在步骤S329处判定SPS.IntraBCWithAffineflag为1的情况下,选择部301将成为模式信息pred_mode_flag的候选的值确定为指示帧内预测处理类型的处理的值。此外,选择部301将PU.IntraBCflag确定为指示帧内BC预测处理的值,并且将PU.IntraBCWithSubPelflag确定为指示在帧内BC预测处理中使用的运动矢量的精度不是分数像素精度的值。此外,选择部301将PU.IntraBCWithAffineflag确定为指示仿射变换帧内BC预测处理的值。然后,选择部301将参考图像和作为运动矢量的数目的3提供至运动矢量检测部304,并且使处理进行到步骤S330。
在步骤S330处,运动矢量检测部304基于从选择部301提供的参考图像和运动矢量的数目,检测编码目标的PU的三个顶点的屏幕图像中的整体像素精度的运动矢量。
在步骤S331处,运动矢量检测部304使用编码目标的PU的三个顶点的屏幕图像中的整数像素精度的运动矢量来生成当前划分块的整数像素精度的运动矢量。运动矢量检测部304将从选择部301提供的参考图像和当前划分块的整数像素精度的运动矢量提供至帧内BC预测部305。
在步骤S332处,帧内BC预测部305基于从运动矢量检测部304提供的当前划分块的整数像素精度的运动矢量,使用参考图像对编码目标的PU执行仿射变换帧内BC预测处理。帧内BC预测部305将作为仿射变换帧内BC预测处理的结果生成的预测图像P提供至确定部307。
在步骤S333处,确定部307在模式信息pred_mode_flag具有指示帧内预测处理类型的处理的值,PU.IntraBCflag具有指示帧内BC预测处理的值,PU.IntraBCWithSubPelflag具有指示在帧内BC预测处理中使用的运动矢量的精度不是分数像素精度的值,并且PU.IntraBCWithAffineflag具有指示仿射变换帧内BC预测处理的值的情况下,基于从帧内BC预测部305提供的预测图像P等来计算编码目标的CU的RD成本JIntAffineIBC。
在步骤S334处,选择部301判定从控制部101提供的SPS.IntraBCWithSubPelflag是否是指示使用分数像素精度的运动矢量的帧内BC预测处理要生效的1。
在步骤S334处判定SPS.IntraBCWithSubPelflag为1的情况下,选择部301将成为模式信息pred_mode_flag的候选的值确定为指示帧内预测处理类型的处理的值。此外,选择部301将PU.IntraBCflag确定为指示帧内BC预测处理的值,并且将PU.IntraBCWithSubPelflag确定为指示在帧内BC预测处理中使用的运动矢量的精度是分数像素精度的值。此外,选择部301将PU.IntraBCWithAffineflag确定为指示仿射变换帧内BC预测处理的值。然后,选择部301将参考图像和作为运动矢量的数目的3提供至运动矢量检测部304,并且使处理进行到步骤S335。
在步骤S335处,插值处理部133对从选择部301提供的参考图像执行插值处理,以生成参考图像的分数像素的像素值。插值处理部133将参考图像的分数像素的像素值提供至运动矢量检测部304。
在步骤S336处,运动矢量检测部304基于从插值处理部133提供的参考图像和从选择部301提供的运动矢量的数目,检测编码目标的PU的三个顶点的屏幕图像中的分数像素精度的运动矢量。
在步骤S337处,运动矢量检测部304使用编码目标的PU的三个顶点的屏幕图像中的分数像素精度的运动矢量来生成当前划分块的分数像素精度的运动矢量。运动矢量检测部304将从插值处理部133提供的参考图像和当前划分块的分数像素精度的运动矢量提供至帧内BC预测部305。
在步骤S338处,帧内BC预测部305基于从运动矢量检测部304提供的当前划分块的分数像素精度的运动矢量,使用参考图像对编码目标的PU执行仿射变换帧内BC预测处理。帧内BC预测部305将作为仿射变换帧内BC预测处理的结果生成的预测图像P提供至确定部307。
在步骤S339处,确定部307在模式信息pred_mode_flag具有指示帧内预测处理类型的处理的值,PU.IntraBCflag具有指示帧内BC预测处理的值,PU.IntraBCWithSubPelflag具有指示在帧内BC预测处理中使用的运动矢量的精度是分数像素精度的值,并且PU.IntraBCWithAffineflag具有指示仿射变换帧内BC预测处理的值的情况下,基于从帧内BC预测部305提供的预测图像P等来计算编码目标的CU的RD成本JSubAffineIBC。然后,帧内BC预测成本计算处理结束。
图20是示出图像编码装置的第二实施方式中的最佳帧内预测确定处理的流程图。
图20的步骤S351至S355的处理与图9的步骤S191至S195的处理类似,并且因此省略对其的描述。
在步骤S356处,确定部307将PU.IntraBCWithSubPelflag的最佳值确定为指示在帧内BC预测处理中使用的运动矢量的精度不是分数像素精度的0。此外,确定部307将PU.IntraBCWithAffineflag的最佳值确定为不指示仿射变换帧内BC预测处理的0。然后,最佳帧内预测确定处理结束。
另一方面,在步骤S355处判定RD成本JIntIBC不是最低的情况下,处理进行到步骤S357。在步骤S357处,确定部307判定RD成本JSubIBC是否是以下之中最低的:成为指示帧内预测模式的信息的候选的值的RD成本JAng、RD成本JIntIBC、RD成本JSubIBC、RD成本JIntAffineIBC以及RD成本JSubAffineIBC。在步骤S357处判定RD成本JAffintIBC是最低的情况下,处理进行到步骤S358。
在步骤S358处,确定部307将PU.IntraBCWithSubPelflag的最佳值确定为指示在帧内BC预测处理中使用的运动矢量的精度是分数像素精度的1。此外,确定部307将PU.IntraBCWithAffineflag的最佳值确定为不指示仿射变换帧内BC预测处理的0。然后,最佳帧内预测确定处理结束。
另一方面,在步骤S357处判定RD成本JSubIBC不是最低的情况下,处理进行到步骤S359。在步骤S359处,确定部307判定RD成本JIntAffineIBC是否是以下之中最低的:成为指示帧内预测模式的信息的候选的值的RD成本JAng、RD成本JIntIBC、RD成本JSubIBC、RD成本JIntAffineIBC和RD成本JSubAffineIBC。在步骤S359处判定RD成本JIntAffineIBC是最低的情况下,处理进行到步骤S360。
在步骤S360处,确定部307将PU.IntraBCWithSubPelflag的最佳值确定为指示在帧内BC预测处理中使用的运动矢量的精度不是分数像素精度的0。此外,确定部307将PU.IntraBCWithAffineflag的最佳值确定为指示仿射变换帧内BC预测处理的1。
在步骤S359处判定RD成本JIntAffineIBC不是最低的情况下,即,在RD成本JSubAffineIBC是最低的情况下,处理进行到步骤S361。
在步骤S361处,确定部307将PU.IntraBCWithSubPelflag的最佳值确定为指示在帧内BC预测处理中使用的运动矢量的精度是分数像素精度的1。此外,确定部307将PU.IntraBCWithAffineflag的最佳值确定为指示仿射变换帧内BC预测处理的1。然后,最佳帧内预测确定处理结束。
图像编码装置的第二实施方式可以以上述这样的方式执行仿射变换帧内预测处理。因此,可以生成预测图像P,在该预测图像P中不仅补偿屏幕图像中的平行位移,而且补偿屏幕图像中的旋转方向上的移动或者形状变化(例如扩大、缩小或歪斜)。因此,能够提高帧内BC预测处理的精度。
(图像解码装置的预测部的配置示例)
作为应用本技术的图像处理装置并且与对图像编码装置的第二实施方式生成的编码流进行解码的图像解码装置的第二实施方式的配置与图10的图像解码装置200的配置相同,除了预测部216的配置之外,并且除了编码参数包括SPS.IntraBCWithAffineflag和PU.IntraBCWithAffineflag之外。因此,除了图像解码装置的第二实施方式中的预测部的配置和处理之外的任何描述被适当地省略。
图21是描绘图像解码装置的第二实施方式中的预测部的配置示例的框图。
在图21描绘的组件中的、与图11中的部件相同的部件由相同的附图标记表示。适当省略重复描述。
图21的预测部400的配置与图11的预测部216的配置的不同之处在于:提供帧内BC预测部405来代替帧内BC预测部235。
在从解码部分211提供的预测信息Pinfo内的PU.IntraBCWithAffineflag是指示仿射变换帧内预测处理的1的情况下,帧内BC预测部405对解码目标的PU执行仿射变换帧内BC预测处理。
具体地,帧内BC预测部405与图14的运动矢量检测部304类似地基于解码目标的PU的三个顶点的屏幕图像中的分数像素精度或整数像素精度的运动矢量,生成当前划分块的分数像素精度或整数像素精度的运动矢量。帧内BC预测部405基于当前划分块的分数像素精度或整数像素精度的运动矢量,使用从插值处理部233或选择部231提供的参考图像对解码目标的PU执行仿射变换帧内BC预测处理。帧内BC预测部405将作为仿射变换帧内BC预测处理的结果生成的预测图像P提供至算术运算部214。
另一方面,在PU.IntraBCWithAffineflag是不指示仿射变换帧内BC预测处理的0的情况下,帧内BC预测部405对解码目标的PU执行平行位移帧内BC预测。具体地,帧内BC预测部405基于解码目标的PU的一个点的屏幕图像中的分数像素精度或整数像素精度的运动矢量,使用从插值处理部233或选择部231提供的参考图像对解码目标的PU执行平行位移帧内BC预测处理。帧内BC预测部405将作为平行位移帧内BC预测处理的结果生成的预测图像P提供至算术运算部214。
(图像解码装置的处理的描述)
图像解码装置的第二实施方式中的图像解码处理与图12的图像解码处理的不同之处在于在步骤S200要解码的编码参数包括PS.IntraBCWithAffineflag和PU.IntraBCWithAffineflag,以及在于步骤S209处的帧内预测图像生成处理。
图22是示出图像解码装置的第二实施方式中的帧内预测图像生成处理的流程图。
图22的步骤S401至S407的处理与图13的步骤S231至S237的处理类似。
在步骤S407的处理之后,处理进行到步骤S408。此外,在步骤S404处判定SPS.IntraBCWithSubPelflag不是1的情况下或者在步骤S406处判定PU.IntraBCWithSubPelflag不是1的情况下,选择部231将参考图像提供至帧内BC预测部405。然后,处理进行到步骤S408。
在步骤S408处,帧内BC预测部405判定编码参数中包括的SPS.IntraBCWithAffineflag是否是指示要使仿射变换帧内BC预测处理生效的1。在步骤S408处判定SPS.IntraBCWithAffineflag是1的情况下,处理进行到步骤S409。
在步骤S409处,帧内BC预测部405从预测信息Pinfo中提取PU.IntraBCWithAffineflag。在步骤S410处,帧内BC预测部405判定PU.IntraBCWithAffineflag是否是指示仿射变换帧内预测处理的1。
在步骤S410处判定PU.IntraBCWithAffineflag为1的情况下,帧内BC预测部405在步骤S411从预测信息Pinfo中提取解码目标的PU的三个顶点的屏幕图像中的分数像素精度或整数像素精度的运动矢量。
在步骤S412处,帧内BC预测部405使用步骤S412处提取的运动矢量来生成当前划分块的分数像素精度或整数像素精度的运动矢量。
在步骤S413处,帧内BC预测部405基于在步骤S413生成的当前划分块的分数像素精度或整数像素精度的运动矢量,使用从插值处理部233或选择部231提供的参考图像执行仿射变换帧内预测处理。帧内BC预测部405将作为仿射变换帧内BC预测处理的结果而生成的预测图像P提供至算术运算部214,并且结束帧内预测图像生成处理。
另一方面,在步骤S408处判定SPS.IntraBCWithAffineflag不是1的情况下,或者在步骤S410处判定PU.IntraBCWithAffineflag不是1的情况下,处理进行到步骤S414。
在步骤S414处,帧内BC预测部405从预测信息Pinfo中提取解码目标的PU的一个点的分数精度或整数精度的运动矢量。
在步骤S415处,帧内BC预测部405基于在步骤S414提取的运动矢量,使用从插值处理部233或选择部231提供的参考图像对解码目标的PU执行平行位移帧内预测处理。帧内BC预测部405将作为平行位移帧内BC预测处理的结果生成的预测图像P提供至算术运算部214,并且结束帧内预测图像生成处理。
另一方面,在步骤S401处判定SPS.IntraBCflag不是1的情况下,或者在步骤S403处判定PU.IntraBCflag不是1的情况下,选择部231将参考图像提供至帧内预测部232。然后,处理进行到步骤S416。由于步骤S416的处理与图13的步骤S240的处理类似,因此省略同样的描述。
图像解码装置的第二实施方式可以以上述这样的方式执行仿射变换帧内预测处理。因此,可以生成预测图像P,在该预测图像P中不仅补偿屏幕图像中的平行位移,而且补偿屏幕图像中的旋转方向上的移动或者形状变化(例如扩大、缩小或歪斜)。因此,能够提高帧内BC预测处理的精度。
注意,仅在使用分数像素精度的运动矢量的帧内BC预测处理生效的情况下,仿射变换帧内预测处理生效。
图23是示出在该情况下SPS.IntraBCWithSubPelflag和
SPS.IntraBCWithAffineflag的设置处理的流程图。
图23的步骤S431和S432的处理与图6的步骤S121和S122的处理类似,并且因此省略对其描述。
在步骤S432的处理之后,处理进行到步骤S433。步骤S433至S435的处理与图18的步骤S301至S303的处理类似,并且因此省略对其描述。
此外,在步骤S431处判定使用分数像素精度的运动矢量的帧内BC预测处理不生效的情况下,处理进行到步骤S436。步骤S436的处理与图6的步骤S123的处理类似,并且因此省略同样的描述。
如图23所示,在仅在使用分数像素精度的运动矢量的帧内BC预测处理生效的情况下仿射变换帧内预测处理生效的情况下,仅在
SPS.IntraBCWithSubPelflag为1的情况下设置SPS.IntraBCWithAffineflag。因此,在该情况下的帧内预测图像生成处理与图22的帧内预测图像生成处理的不同之处在于:在步骤S404处SPS.IntraBCWithSubPelflag不是1的情况下,处理前进到步骤S414。
此外,虽然在前面的描述中,无论PU的尺寸如何,在SPS.IntraBCWithAffineflag为1的情况下仿射变换帧内BC预测处理生效,但是即使在SPS.IntraBCWithAffineflag为1的情况下,也可以取决于PU的尺寸在有效与无效之间转换仿射变换帧内BC预测处理。
在该情况下,在取决于PU的尺寸使仿射变换帧内BC预测处理无效的情况下,即使SPS.IntraBCWithAffineflag是1,也不将PU.IntraBCWithAffineflag设置为编码参数。然后,图像解码装置将PU.IntraBCWithAffineflag解释为0。
(PU的尺寸的条件的描述)
图24是描绘以下二者之间的关系的示例的图:在仿射变换帧内BC预测处理取决于PU的尺寸在有效与无效之间改变的情况下的PU(CU)的尺寸,以及仿射变换帧内BC预测处理在有效与无效之间的转换。
由于在同一屏幕图像中存在着具有高相似性的大块的可能性低,因此在PU的尺寸相对较大的情况下,不能获得仿射变换帧内BC预测处理的效果的可能性高。因此,仅在例如PU的尺寸小于预定尺寸的情况下,使仿射变换帧内BC预测处理生效。
在图24的示例中,在PU的宽度(横向方向上的长度)×高度(竖直方向上的长度)等于或大于64像素的情况下,在PU的尺寸等于或大于64×64像素的情况下或者在PU的长侧等于或大于32像素的情况下,使仿射变换帧内BC预测处理无效(NG)。另外,在PU的长度×高度小于64像素的情况下,使仿射变换帧内BC预测处理生效(OK)。
相比之下,由于在不同时间点处的屏幕图像之间执行放大或缩小,因此存在着具有高相似性的块的可能性高。因此,在PU的尺寸相对较大的情况下,能够获得如NPL 2中公开的使用仿射变换的帧间预测处理的有益效果的可能性高。
因此,仅在如图24所示PU的宽度×高度等于或大于64像素的情况下使其中使用NPL 2所公开的仿射变换的帧间预测处理生效。因此,在PU的尺寸等于或大于64×64像素的情况下或者在PU的长侧等于或大于32像素的情况下,使其中使用仿射变换的帧间预测处理生效。此外,在PU的宽度×高度小于64像素的情况下,使其中使用仿射变换的帧间预测处理无效。
在仿射变换帧内BC预测处理取决于PU的尺寸在有效与无效之间转换的情况下,如上所述转换为有效的PU的条件是以下条件:能够获得仿射变换帧内BC预测处理的效果的可能性高。因此,消除了对以下PU浪费地执行仿射变换帧内BC预测处理的必要性,并且可以减少开销:关于该PU,不能期望仿射变换帧内BC预测处理的效果。由于基于多个运动矢量执行仿射变换帧内BC预测处理,因此开销很大并且开销的减小效果很大。
此外,由于消除了将以下PU的PU.IntraBCWithAffineflag包括到编码流中的必要性,因此可以提高编码效率:对于其不能期望仿射变换帧内BC预测处理的效果的PU,即,对于其PU.IntraBCWithAffineflag显然为0的PU。
注意,图24的条件是一个示例,并且条件不限于此。
此外,可以基于运动矢量来改变当前划分块的尺寸。在该情况下,例如,通过以下表达式(1)确定当前划分块的高度h子块和宽度w子块。
[数学式1]
注意,在表达式(1)中,MV0.x和MV0.y分别是编码目标的PU的左上方顶点的运动矢量的x方向(横向方向)上的长度和y方向(竖直方向)上的长度。此外,MV1.x和MV1.y分别是编码目标的PU的右上方顶点的运动矢量的x方向上的长度和y方向上的长度。此外,MV2.x和MV2.y分别是编码目标的PU的左下方顶点的运动矢量的x方向上的长度和y方向上的长度。此外,h块和w块分别是编码目标的PU的高度和宽度。此外,表达式(1)的max(A,B)是采用A和B中较大一个的函数。
根据表达式(1),当前划分块的尺寸随着编码目标的PU的左上方顶点的运动矢量与右上方顶点的运动矢量之间的差的绝对值或者随着左上方顶点的运动矢量与左下方顶点的运动矢量之间的差的绝对值增大而减小。因此,随着彼此相邻的当前划分块的运动矢量之间的差增大,即,随着当前划分块之间的边界的不连续性增大,当前划分块的尺寸减小。
此外,根据表达式(1),随着编码目标的PU的尺寸增大,当前划分块的尺寸增大。因此,随着彼此相邻的当前划分块的运动矢量之间的差减小,当前划分块的尺寸增大。
随着当前划分块的尺寸减小,尽管仿射变换的精度增大,但是处理量增加。因此,可以通过以所述这样的方式基于运动矢量改变当前划分块的尺寸,来既实现抑制仿射变换的精度劣化又实现处理量的减少。
此外,虽然在第一和第二实施方式中使用平行位移来执行帧间预测处理,但是可以使用仿射变换以其他方式执行帧间预测处理。此外,如果用于仿射变换的运动矢量的数目是复数,则其不限于3。例如,数目可以是2或4。
此外,虽然在第一和第二实施方式中帧内BC预测处理是与帧内预测处理不同的预测处理,但是可以提供其中执行帧内BC预测处理的模式,作为帧内预测模式之一,使得执行帧内BC预测处理作为帧内预测模式的帧内预测处理。例如,在执行帧内预测处理的帧内预测模式是由HEVC限定的第0至第34模式之一的情况下,可以使第35模式的帧内预测处理成为平行位移帧内BC预测处理,同时第36模式的帧内预测处理是仿射变换帧内BC预测处理。在该情况下,仅当帧内预测模式是第35或第36模式时,运动矢量被包括在预测信息Pinfo中。
此外,虽然在前面的描述中,帧内BC预测处理被包括在帧内预测处理类型的处理中,但是可以被包括在帧间预测处理类型的处理中。在该情况下,由单条模式信息pred_mode_flag指示PU的预测处理是帧内BC预测处理或帧间预测处理。
<第三实施方式>
(应用本公开内容的计算机的描述)
虽然以上所述的一系列处理可以由硬件执行,但是也可以由软件执行。在通过软件执行一系列处理的情况下,将构成软件的程序安装到计算机中。在此,计算机例如包括并入硬件中的专用计算机、可以通过安装各种程序来执行各种功能的通用个人计算机、等等。
图25是描绘根据程序执行在上文中描述的一系列处理的计算机的硬件的配置示例的框图。
在计算机800中,CPU(中央处理单元)801、ROM(只读存储器)802和RAM(随机存取存储器)803通过总线804彼此连接。
输入/输出接口810还连接至总线804。输入/输出接口810连接有输入部811、输出部812、存储部813、通信部814和驱动器815。
输入部811包括键盘、鼠标、麦克风等。输出部812包括显示器、扬声器等。存储部813包括硬盘、非易失性存储器等。通信部814包括网络接口等。驱动器815驱动诸如磁盘、光盘、磁光盘、半导体存储器等的可移除介质821。
在以上述这样的方式配置的计算机800中,CPU 801通过输入/输出接口810和总线804将例如存储在存储部813中的程序加载到RAM 803中,以执行以上所述的一系列处理。
由计算机800(CPU 801)执行的程序可以记录到可移除介质821中并且作为可移除介质821而提供,例如作为封装介质等而提供。此外,可以通过诸如局域网、因特网或数字卫星广播等的有线或无线传输介质来提供程序。
在计算机800中,可以通过将可移除介质821安装在驱动器815上,经由输入/输出接口810将程序安装到存储部813中。此外,程序可以经由有线或无线传输介质被通信部814接收并且被安装到存储部813中。此外,可以将程序预先安装到ROM 802或存储部813中。
注意,由计算机800执行的程序可以是根据本文中描述的顺序按照时间序列执行处理的程序,或者可以是并行执行处理或在必要定时处(例如在调用程序时等)执行处理的程序。
<第四实施方式>
图26描绘了应用上文中描述的实施方式的电视装置的示意性配置的示例。电视装置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可以具有上文中描述的图像解码装置200的功能。简而言之,解码器904可以通过实施方式的前述描述中所描述的方法对编码数据进行解码。这使得电视装置900可以实现与上文中参照图1至图24描述的实施方式的有益效果类似的有益效果。
此外,以上述这样的方式配置的电视装置900可以被配置成使得视频信号处理部905可以对例如从解码器904提供的图像数据进行编码,并且通过外部接口部909将产生的编码数据输出至电视装置900的外部。此外,视频信号处理部905可以具有上文中描述的图像编码装置100的功能。简而言之,视频信号处理部905可以通过上文中结合实施方式描述的方法来对从解码器904提供的图像数据进行编码。这使得电视装置900可以实现与上文中参照图1至图24描述的实施方式的有益效果类似的有益效果。
<第五实施方式>
图27描绘了应用上文中描述的实施方式的便携式电话机的示意性配置的示例。便携式电话机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,通过该显示部显示一系列图像。音频编解码器923对音频流进行解压缩和D/A转换以生成模拟语音信号。然后,音频编解码器923将所生成的语音信号提供至扬声器924,使得从扬声器924输出语音。
在以上述这样的方式配置的便携式电话机920中,例如,图像处理部927可以具有上文中描述的图像编码装置100的功能。简而言之,图像处理部927可以通过上文中结合实施方式描述的任何方法来对图像数据进行编码。这使得便携式电话机920可以实现与上文中参照图1至图24描述的实施方式的有益效果类似的有益效果。
此外,在以上述这样的方式配置的便携式电话机920中,例如,图像处理部927可以具有上文中描述的图像解码装置200的功能。简而言之,图像处理部927可以通过上文中结合实施方式描述的任何方法对编码数据进行解码。这使得便携式电话机920可以实现与上文中参照图1至图24描述的实施方式的有益效果类似的有益效果。
<第六实施方式>
图28描绘了应用上文中描述的实施方式的记录与再现装置的示意性配置的示例。记录与再现装置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将从HDD944或盘驱动器945输入的编码比特流输出至解码器947。
解码器947对编码比特流进行解码以生成视频数据和音频数据。然后,解码器947将生成的视频数据输出至OSD部948。同时,解码器947将生成的音频数据输出至外部扬声器。
OSD部948再现从解码器947输入的视频数据以显示视频。此外,OSD部948可以将GUI(例如菜单、按钮或光标)的图像叠加在要显示的视频上。
控制部949包括处理器(例如CPU)和存储器(例如RAM和ROM)。存储器将由CPU执行的程序、程序数据等存储在其中。存储器中记录的程序例如在启动记录与再现装置940时被读入到CPU中并且由CPU执行。CPU响应于例如从用户接口部950输入的操作信号来执行程序,以控制记录和再现装置940的操作。
用户接口部950连接至控制部949。用户接口部950具有例如用于允许用户操作记录和再现装置940的按钮和开关和用于远程控制信号的接收部等。用户接口部950检测用户通过所提及的部件的操作,以生成操作信号,并且将所生成的操作信号输出至控制部949。
在以该方式配置的记录与再现装置940中,例如,编码器943可以具有上文中所述的图像编码装置100的功能。简而言之,编码器943可以通过结合实施方式描述的方法对图像数据进行编码。这使得记录与再现装置940可以实现与上文中参照图1至图24描述的实施方式的有益效果类似的有益效果。
此外,在以该方式配置的记录与再现装置940中,例如,解码器947可以具有上文中描述的图像解码装置200的功能。简而言之,解码器947可以通过在实施方式的前述描述中描述的任何方法对编码数据进行解码。这使得记录与再现装置940可以实现与上文中参照图1至图24描述的实施方式的有益效果类似的有益效果。
<第七实施方式>
图29描绘了应用以上所述的实施方式的成像装置的示意性配置的示例。成像装置960对成像对象进行成像以生成图像,并且对图像数据进行编码并且将其记录到记录介质中。
成像装置960包括光学块961、成像部962、信号处理部963、图像处理部964、显示部965、外部接口(I/F)部966、存储器部967、介质驱动器968、OSD部969、控制部970、用户接口(I/F)部971以及总线972。
光学块961连接至成像部962。成像部962连接至信号处理部963。显示部965连接至图像处理部964。用户接口部971连接至控制部970。总线972将图像处理部964、外部接口部966、存储器部967、介质驱动器968、OSD部969和控制部970彼此耦接。
光学块961包括聚焦透镜、光圈机构等。光学块961在成像部962的成像表面上形成成像对象的光学图像。成像部962包括图像传感器,例如CCD(电荷耦合器件)图像传感器或CMOS(互补金属氧化物半导体)图像传感器,并且通过光电转换将在成像表面上形成的光学图像转换成作为电信号的图像信号。然后,成像部962将图像信号输出至信号处理部963。
信号处理部963对从成像部962输入的图像信号执行各种摄像装置信号处理,例如拐点校正、伽马校正和颜色校正。信号处理部963将摄像装置信号处理后的图像数据输出至图像处理部964。
图像处理部964对从信号处理部963输入的图像数据进行编码以生成编码数据。然后,图像处理部964将生成的编码数据输出至外部接口部966或介质驱动器968。此外,图像处理部964对从外部接口部966或介质驱动器968输入的编码数据进行解码以生成图像数据。然后,图像处理部964将生成的图像数据输出至显示部965。此外,图像处理部964可以将从信号处理部963输入的图像数据输出至显示部965,使得图像被显示在显示部965上。此外,图像处理部964可以将从OSD部969获取的显示数据与要输出至显示部965的图像叠加。
OSD部969生成GUI(例如菜单、按钮或光标)的图像,并且将所生成的图像输出至图像处理部964。
外部接口部966被配置成例如USB输入/输出端子。例如在打印图像时,外部接口部966将成像装置960与打印机彼此连接。此外,根据情况需要将驱动器连接至外部接口部966。可移除介质(例如磁盘和光盘)被安装在驱动器上,并且从可移除介质读取的程序可以被安装到成像装置960中。此外,外部接口部966可以被配置为连接至网络(例如LAN或因特网)的网络接口。具体地,外部接口部966充当成像装置960中的传送部。
要安装到介质驱动器968上的记录介质可以是任意可重写可移除的介质,例如磁盘、磁光盘、光盘或半导体存储器。此外,记录介质可以以固定方式安装在介质驱动器968上,使得能够配置例如像内置硬盘驱动器或SSD(固态驱动器)的非便携式存储部。
控制部970包括处理器(例如CPU)和存储器(例如RAM和ROM)。存储器将由CPU执行的程序、程序数据等存储在其中。存储器中存储的程序在启动图像装置960时被读入到CPU中,并且由CPU执行。CPU根据例如从用户接口部971输入的操作信号执行程序,以控制成像装置960的操作。
用户接口部971连接至控制部970。用户接口部971具有例如用于用户操作成像装置960的按钮、开关等。用户接口部971检测用户通过上述部件的操作以生成操作信号,并且将所生成的操作信号输出至控制部970。
在以上述这样的方式配置的成像装置960中,例如,图像处理部964可以包括以上描述的图像编码装置100的功能。具体地,图像处理部964可以通过结合以上描述的实施方式的任何方法对图像数据进行编码。这使得成像装置960可以实现与上文中参照图1至图24描述的实施方式的有益效果类似的有益效果。
此外,在以上述这样的方式配置成像装置960中,例如,图像处理部964可以包括上文中描述的图像解码装置200的功能。具体地,图像处理部964可以通过结合以上描述的实施方式描述的任何方法对编码数据进行解码。这使得成像装置960可以实现与上文中参照图1至图24描述的实施方式的效果类似的效果。
<第八实施方式>
此外,本技术可以被实施为要并入任意装置或构成系统的装置中的任何配置,例如,作为系统LSI(大规模集成)等的处理器、使用多个处理器等的模块,使用多个模块的单元、进一步将不同的功能添加至单元的设备(即,装置的配置的一部分)。图30描绘了应用本技术的视频设备的示意性配置的示例。
近年来,电子设备的多功能化已经并且正在进步,并且在电子设备的开发或制造中某些部件被实施为销售品、供应品等的情况下,经常不仅看到将部件实施为具有一个功能的部件的情况,还看到将具有彼此有关的功能的多个部件组合并且实施为具有多个功能的一个设备的情况。
图30中描绘的视频设备1300具有上述这样的多功能化配置,并且是将具有与图像的编码和解码有关的功能的设备(可以应用编码和解码中的一个或两者)和具有与该功能有关的其他功能的另一设备进行组合的装置。
如图30所示,视频设备1300包括模块组以及具有相关功能的设备,该模块组包含视频模块1311、外部存储器1312、电力管理模块1313和前端模块1314,该设备例如是连接器1321、摄像装置1322、传感器1323等。
模块是其中组合了彼此有关的若干部分功能以使其具有一致功能的部分。尽管特定的物理配置是任意的,但是可以想到以下物理配置:其中例如分别具有功能的多个处理器、诸如电阻器和电容器的电子电路器件、其他器件等被布置并且被集成。还可以想到将不同的模块、处理器等与该模块进行组合以产生新模块。
在图30的示例的情况下,视频模块1311是具有与图像处理有关的功能的部件的组合,并且包括应用处理器、视频处理器、宽带调制解调器1333和RF模块1334。
处理器是通过SoC(片上系统)对具有预定功能的部件与半导体芯片的集成,并且此外例如被称为系统LSI(大规模集成)等的处理器是可用的。具有预定功能的部件可以是逻辑电路(硬件配置),或者可以是CPU、ROM、RAM等以及使用它们执行的程序(软件配置),或者还可以是它们二者的组合。例如,处理器可以包括逻辑电路、CPU、ROM、RAM等,使得一部分功能由逻辑电路(硬件配置)来实现,并且剩余部分的功能由CPU执行的程序(软件配置)来实现。
图30的应用处理器1331是执行与图像处理有关的应用的处理器。为了实现预定功能,由应用处理器1331执行的应用不仅可以执行算术运算处理,而且可以根据情况需要控制视频模块1311的内部和外部的部件,例如视频处理器1332。
视频处理器1332是具有与图像的编码和解码(其中一个或两者)有关的功能的处理器。
宽带调制解调器1333将经由通过宽带线(例如因特网或公共电话网络)执行的有线或无线(或有线与无线)宽带通信传输的数据(数字信号)通过数据的数字调制等转换成模拟信号,或者将经由宽带通信接收到的模拟信号通过模拟信号的解调转换成数据(数字信号)。宽带调制解调器1333对任意信息(例如由视频处理器1332处理的图像数据、图像数据被编码的流、应用程序或者设置数据)进行处理。
RF模块1334是对通过天线发送和接收的RF(射频)信号执行频率转换、调制和解调、放大、滤波处理等的模块。例如,RF模块1334对通过宽带调制解调器1333生成的基带信号执行频率转换等以生成RF信号。此外,例如,RF模块1334对通过前端模块1314接收到的RF信号执行频率转换等以生成基带信号。
注意,如图30中的虚线1341所示,应用处理器1331和视频处理器1332可以被集成以便被配置成一个处理器。
外部存储器1312是在视频模块1311的外部设置的模块,并且具有由视频模块1311利用的存储设备。尽管外部存储器1312的存储设备可以由任何物理部件来实现,但是由于通常频繁利用存储设备以用于存储大量的数据(例如以帧为单位的图像数据),因此期望通过诸如DRAM(动态随机存取存储器)的相对便宜且大容量的半导体存储器来实现该存储设备。
电力管理模块1313管理和控制对视频模块1311(视频模块1311中的部件)的电力供应。
前端模块1314是向RF模块1334提供前端功能(天线侧的发送或接收端的电路)的模块。如图30所示,例如,前端模块1314包括天线部1351、滤波器1352和放大部1353。
天线部1351包括用于发送和接收无线信号的天线和天线的外围部件。天线部1351将从放大部1353提供的信号作为无线信号进行发送,并且将接收的无线信号作为电信号(RF信号)提供至滤波器1352。滤波器1352对通过天线部1351接收到的RF信号执行滤波处理等,并且将处理后的RF信号提供至RF模块1334。放大部1353对从RF模块1334提供的RF信号进行放大,并且将RF信号提供至天线部1351。
连接器1321是具有与连接至外部有关的功能的模块。连接器1321的物理配置是任意的。例如,连接器1321具有与宽带调制解调器1333所兼容的通信标准不同的通信标准的通信功能的部件、外部输入/输出端子等。
例如,连接器1321可以包括具有符合无线通信标准(例如蓝牙(注册商标)、IEEE802.11(例如,Wi-Fi(无线保真,注册商标))、NFC(近场通信)或IrDA(红外数据协会))的通信功能的模块、用于发送和接收符合该标准的信号的天线等。此外,例如,连接器1321可以包括具有符合有线通信标准(例如USB(通用串行总线)、HDMI(注册商标)(高清晰度多媒体接口)等)的通信功能的模块和符合该标准的端子。此外,例如,连接器1321可以包括不同数据(信号)传送功能等,例如模拟输入/输出端子等。
注意,连接器1321可以包括用于数据(信号)的传送目的地的设备。例如,连接器1321可以包括执行从诸如磁盘、光盘、磁光盘或半导体存储器等的记录介质中读出数据和向其写入数据的驱动器(不仅包括可移除介质的驱动器,还包括硬盘、SSD(固态驱动器)、NAS(网络附加存储)的驱动器)。此外,连接器1321可以包括图像或声音的输出设备(监视器、扬声器等)。
摄像装置1322是具有对成像对象进行成像以获得成像对象的图像数据的功能的模块。通过摄像装置1322的成像获得的图像数据被提供至例如视频处理器1332,并且由其对该图像数据进行编码。
传感器1323是具有下述传感器的任意传感器功能的模块:例如声音传感器、超声波传感器、光学传感器、照度传感器、红外传感器、图像传感器、旋转传感器、角度传感器、角速度传感器、速度传感器、加速度传感器、倾斜度传感器、磁识别传感器、振动传感器、温度传感器等。由传感器1323检测到的数据例如被提供至应用处理器1331,并且被应用等使用。
在前面的描述中被描述为模块的部件可以被实现为处理器,或者被描述为处理器的部件可以被实现为模块。
在具有上述这样的配置的视频设备1300中,本技术可以应用于如下文所述的视频处理器1332。因此,视频设备1300可以被实施为应用本技术的设备。
(视频处理器的配置示例)
图31描绘了应用本技术的视频处理器1332(图30)的示意性配置的示例。
在图31的示例的情况下,视频处理器1332具有接收视频信号和音频信号的输入并且通过预定方法对信号进行编码的功能,以及对编码形式的视频数据和音频数据进行解码并且再现和输出视频信号和音频信号的另一功能。
如图31所示,视频处理器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(图30)等输入的视频信号,并且将获得的视频信号转换成数字图像数据。第一图像扩大/缩小部1402对图像数据执行格式转换、图像的扩大/缩小处理等。第二图像扩大/缩小部1403根据视频输出处理部1404的输出的目的地处的格式执行图像的扩大/缩小处理,并且对图像数据执行与第一图像扩大/缩小部1402的格式转换、图像的扩大/缩小处理等类似的格式转换、图像的扩大/缩小处理等。视频输出处理部1404对图像数据执行格式转换、转换为模拟信号等,并且将产生的模拟信号作为再现的视频信号输出至例如连接器1321等。
帧存储器1405是用于视频输入处理部1401、第一图像扩大/缩小部1402、第二图像扩大/缩小部1403、视频输出处理部1404以及编码/解码引擎1407共享的图像数据的存储器。帧存储器1405被实现为半导体存储器,例如DRAM。
存储器控制部1406从编码/解码引擎1407接收同步信号,并且根据写在访问管理表1406A中的、对帧存储器1405的访问调度来控制用于对帧存储器1405写入和读出的访问。由存储器控制部1406响应于编码/解码引擎1407、第一图像扩大/缩小部1402、第二图像扩大/缩小部1403等执行的处理来更新访问管理表1406A。
编码/解码引擎1407执行图像数据的编码处理和视频流(其是从图像数据编码的数据)的解码处理。例如,编码/解码引擎1407对从帧存储器1405读出的图像数据进行编码,并且将经编码的图像数据作为视频流依次写入视频ES缓冲器1408A中。此外,编码/解码引擎1407例如从视频ES缓冲器1408B依次读出视频流,并且对视频流进行解码,并且将经解码的视频流作为图像数据依次写入帧存储器1405。编码/解码引擎1407在编码和解码中使用帧存储器1405作为工作区域。此外,编码/解码引擎1407例如在要开始对每个宏块处理的定时处将同步信号输出至存储器控制部1406。
视频ES缓冲器1408A对编码/解码引擎1407生成的视频流进行缓冲,并且将产生的视频流提供至复用部(MUX)1412。视频ES缓冲器1408B对从解复用部(DMUX)1413提供的视频流进行缓冲,并且将产生的视频流提供至编码/解码引擎1407。
音频ES缓冲器1409A对音频编码器1410生成的音频流进行缓冲,并且将产生的音频流提供至复用部(MUX)1412。音频ES缓冲器1409B对从解复用部(DMUX)1413提供的音频流进行缓冲,并且将产生的音频流提供至音频解码器1411。
音频编码器1410对例如从连接器1321等输入的音频信号例如执行数字转换,并且通过预定方法(例如MPEG音频方法或AC3(音频编码3))对产生的音频信号进行编码。音频编码器1410将音频流(其是从音频信号编码的数据)依次写入音频ES缓冲器1409A中。音频解码器1411对从音频ES缓冲器1409B提供的音频流进行解码,并且执行例如转换为模拟信号等,并且然后将产生的模拟信号作为再现的音频信号提供至例如连接器1321等。
复用部(MUX)1412对视频流和音频流进行复用。复用的方法(即,通过复用生成的比特流的格式)是任意的。此外,在进行这样的复用时,复用部(MUX)1412还可以向比特流添加预定的头信息等。简而言之,复用部(MUX)1412可以通过复用来转换流的格式。例如,复用部(MUX)1412对视频流和音频流进行复用,以将这些流转换成传输流(其是传输格式的比特流)。此外,例如,复用部(MUX)1412对视频流和音频流进行复用,以将其转换成记录文件格式的数据(文件数据)。
解复用部(DMUX)1413通过与复用部(MUX)1412的复用对应的方法来对其中复用了视频流和音频流的比特流进行解复用。具体地,解复用部(DMUX)1413从流缓冲器1414中读出的比特流中提取视频流和音频流(将视频流与音频流彼此分离)。简而言之,解复用部(DMUX)1413可以通过解复用(复用部(MUX)1412的转换的逆转换)来转换流的格式。例如,解复用部(DMUX)1413可以通过流缓冲器1414获取例如从连接器1321、宽带调制解调器1333等提供的传输流,并且对所获取的流进行解复用,以将其转换成视频流和音频流。此外,例如,解复用部(DMUX)1413可以通过流缓冲器1414获取例如通过连接器1321从各种记录介质读取的文件数据,并且可以对读取的文件数据进行解复用,以将其转换成视频流和音频流。
流缓冲器1414对比特流进行缓冲。例如,流缓冲器1414对从复用部(MUX)1412提供的传输流进行缓冲,并且在预定定时处或基于来自外部的请求等将所缓冲的传输流提供至例如连接器1321、宽带调制解调器1333等。
此外,例如,流缓冲器1414对从复用部(MUX)1412提供的文件数据进行缓冲,并且在预定定时处或基于来自外部的请求等将所缓冲的文件数据提供至例如连接器1321等,以将其记录在各种记录介质上。
此外,流缓冲器1414对例如通过连接器1321、宽带调制解调器1333等获取的传输流进行缓冲,并且在预定的定时处或基于来自外部的请求等将所缓冲的传输流提供至解复用部(DMUX)1413。
此外,流缓冲器1414对例如通过连接器1321等从各种记录介质中读出的文件数据进行缓冲,并且在预定的定时处或者基于来自外部的请求等将所缓冲的文件数据提供至解复用部(DMUX)1413。
现在,描述具有上述这样的配置的视频处理器1332的操作的示例。例如,从连接器1321等输入至视频处理器1332的视频信号被视频输入处理部1401转换为诸如4:2:2Y/Cb/Cr方法的预定方法的数字图像数据,并且被依次写入帧存储器1405中。数字图像数据被第一图像扩大/缩小部1402或第二图像扩大/缩小部1403读出,经受格式转换(转换成诸如4:2:0Y/Cb/Cr方法的预定方法的数字图像数据)以及扩大和缩小处理,并且被写回到帧存储器1405中。由编码/解码引擎1407对该图像数据进行编码,并且将其作为视频流写入到视频ES缓冲器1408A中。
此外,由音频编码器1410对从连接器1321等输入至视频处理器1332的音频信号进行编码,并且将其作为音频流写入音频ES缓冲器1409A中。
视频ES缓冲器1048A的视频流和音频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可以包括以上描述的图像编码装置100的功能或者图像解码装置200的功能或者其两者。这使得视频处理器1332可以实现与以上参照图1至图24描述的实施方式的有益效果类似的有益效果。
注意,在编码/解码引擎1407中,本技术(即,图像编码装置100的功能或图像解码装置200的功能或其两者)可以由诸如逻辑电路等的硬件来实现,或者可以由诸如嵌入式程序的软件来实现,或者可以由其两者来实现。
<视频处理器的不同配置示例>
图32描绘了应用本技术的视频处理器1332的示意性配置的另一示例。在图32的示例的情况下,视频处理器1332具有通过预定方法对视频数据进行编码和解码的功能。
更具体地,如图32所示,视频处理器1332包括控制部1511、显示接口1512、显示引擎1513、图像处理引擎1514和内部存储器1515。视频处理器1332还包括编解码引擎1516、存储器接口1517、复用与解复用部(MUX DMUX)1518、网络接口1519和视频接口1520。
控制部1511控制视频处理器1332中的处理部(例如显示接口1512、显示引擎1513、图像处理引擎1514和编解码引擎1516)的操作。
如图32所示,控制部1511包括例如主CPU 1531、副CPU 1532以及系统控制器1533。主CPU 1531执行用于控制视频处理器1332中的处理部的操作的程序等。主CPU 1531根据程序等生成控制信号,并且将该控制信号提供至处理部(即,控制处理部的操作)。副CPU 1532充当主CPU1531的辅助。例如,副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来实现内部存储器1515,尽管其具有相对小的容量(例如,与外部存储器1312的容量相比),例如SRAM(静态随机存取存储器)。
编解码器引擎1516执行与图像数据的编码和解码有关的处理。与编解码器引擎1516兼容的编码和解码的方法是任意的,并且这样的方法的数目可以是1个或复数个。例如,编解码引擎1516可以包括用于编码和解码方法的多个编解码功能,使得通过从方法中选择的一个方法来执行图像数据的编码或编码数据的解码。
在图32描绘的示例中,作为与编解码有关的处理的功能块,编解码引擎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(超文本传输协议)执行视频的流传输的技术,并且其特征之一是选择预先准备的并且具有彼此不同的分辨率等的多个编码数据当中的适当的编码数据,并且将该适当的编码数据以段(segment)为单位进行发送。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不仅可以将多个数据合并到一个数据中,而且可以向该数据添加预定的头信息等。此外,在进行解复用时,复用与解复用部(MUXDMUX)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重编码,被复用与解复用部(MUXDMUX)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具有上文中所述的图像编码装置100的功能或者图像解码装置200的功能或者其两者,则这是足够的。这使得视频处理器1332可以实现与上文中参照图1至图24描述的实施方式类似的有益效果。
注意,在编解码引擎1516中,本技术(即,图像编码装置100的功能)可以由诸如逻辑电路的硬件来实现,或者可以由诸如嵌入式程序的软件来实现,或者还可以由其两者来实现。
尽管以上例示了视频处理器1332的配置的两个示例,但是视频处理器1332的配置是任意的,并且可以是除了上述两个示例之外的任何配置。此外,尽管视频处理器1332可以被配置为一个半导体芯片,但是可以另外被配置为多个半导体芯片。例如,可以将视频处理器1332形成为其中多个半导体被堆叠的三维堆叠LSI。可替选地,视频处理器1332可以由多个LSI来实现。
<装置的应用示例>
视频设备1300可以被并入处理图像数据的各种装置中。例如,视频设备1300可以被并入电视装置900(图26)、便携式电话机920(图27)、记录与再现装置940(图28)、成像装置960(图29)等中。装置可以通过并入视频设备1300来实现与上文中参照图1至图24描述的实施方式的有益效果类似的有益效果。
注意,即使以上所述的视频设备1300的部分部件包括视频处理器1332,也可以被实现为应用本技术的配置。例如,可以仅将视频处理器1332实现为应用本技术的视频处理器。此外,可以将由虚线1341指示的处理器、视频模块1311等实施为如上文中所述应用本技术的处理器、模块等。此外,例如,视频模块1311、外部存储器1312、电力管理模块1313以及前端模块1314被组合,以便被实施为应用本技术的视频单元1361。在任何配置的情况下,可以实现与上文中参照图1至图24描述的实施方式的有益效果类似的有益效果。
简而言之,如果包括视频处理器1332,则任何配置可以与视频设备1300的情况下类似地被并入处理图像数据的各种装置中。例如,可以将视频处理器1332、由虚线1341指示的处理器、视频模块1311或视频单元1361并入电视装置900(图26)、便携式电话机920(图27)、记录与再现装置940(图28)、成像装置960(图29)等中。然后,通过将应用本技术的一些部件并入装置中,该装置可以与视频设备1300的情况类似地实现与上文中参照图1至图24描述的实施方式的有益效果类似的有益效果。
<第九实施方式)
还可以将本技术应用于包括多个装置的网络系统。图33描绘了应用本技术的网络系统的示意性配置的示例。
图33中描绘的网络系统1600是下述系统:其中不同的装置通过网络来发送和接收与图像(视频)有关的信息。网络系统1600的云服务1601是向终端(例如计算机1611、AV(视听)装置1612、便携式信息处理终端1613、IoT(物联网)设备1614等)提供与图像(视频)有关的服务的系统,该终端被连接以与云服务1601进行通信。例如,云服务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可以分别具有上文中描述的图像编码装置100或图像解码装置200的功能。这使得发送和接收图像数据的终端(计算机1611至IoT设备1614)和云服务1601可以实现与上文中参照图1至图24描述的实施方式的有益效果类似的有益效果。
注意,与编码数据(比特流)有关的各种类型的信息可以被复用到编码数据中,并且与编码数据一起被发送或记录,或者可以在不与编码数据复用的情况下作为与编码数据关联的单独数据被发送或记录。此处,术语“关联”表示例如当要处理一个数据时可以利用(链接)其它数据。简而言之,彼此关联的数据可以被合并成一个数据,或者可以是分离的数据。例如,可以在与用于编码数据(图像)的传输线路分开的传输线路上传送与编码数据(图像)关联的信息。此外,例如,可以将与编码数据(图像)关联的信息记录在与用于编码数据(图像)的记录介质不同的记录介质中(或者记录到同一记录介质的记录区域中)。注意,该“关联”可以不是整个数据的关联,而是数据的一部分的关联。例如,图像和对应于该图像的信息可以以任意单位(例如多个帧、一个帧或帧内的一部分)彼此关联。
此外,如上文中所述,本说明书中“合成”、“复用”、“添加”、“合并”、“包括”、“存储”,“放入”、“插进”和“插入”这样的术语表示将多个细小部分组合成一个,例如,将编码数据和元数据组合成一个数据,并且每一个表示以上所述的“关联”的一种方法。
注意,本文中描述的有益效果最终是示例性的而不是限制性的,并且可以获得其他优点。
此外,本发明内容的实施方式不限于上文中描述的实施方式,并且在不脱离本公开内容的主题的情况下可以是各种方式。
例如,CU、PU和TU的划分可以仅是4划分。
此外,本公开内容可以假设用于云计算的配置,在该云计算中,一个功能通过网络由多个装置共享并且被合作地处理。
此外,上文中结合流程图所述的步骤可以由单个装置执行,或者可以由多个装置分担执行。
此外,在一个步骤包括多个处理的情况下,在一个步骤中包括的多个处理可以由单个装置执行,并且还可以由多个装置分担执行。
注意,本公开内容可以采用如下所述的这样的配置。
(1)一种图像处理装置,包括:
帧内BC预测部,其被配置成基于图像的当前块的多个顶点在屏幕图像中的运动矢量,对图像中的已经解码的块进行仿射变换,以执行用于生成当前块的预测图像的仿射变换帧内BC预测处理。
(2)根据上述(1)所述的图像处理装置,其中,
通过针对当前划分块中的每一个、基于该当前划分块中的每一个的运动矢量平行移位图像中的解码块来执行仿射变换,其中当前划分块具有比配置当前块的4×4像素小的尺寸,所述当前划分块的每一个的运动矢量是使用屏幕图像中多个顶点的运动矢量生成的。
(3)根据上述(2)所述的图像处理装置,其中,
帧内BC预测部将当前划分块的尺寸确定为随着屏幕图像中多个顶点的运动矢量增大而减小。
(4)根据上述(1)至(3)中任一项所述的图像处理装置,还包括:
运动矢量检测部,其被配置成检测屏幕图像中多个顶点的运动矢量。
(5)根据上述(4)所述的图像处理装置,还包括:
设置部,其被配置成设置用于指示要执行仿射变换帧内BC预测处理的仿射变换帧内BC预测处理信息。
(6)根据上述(4)所述的图像处理装置,还包括:
插值处理部,其被配置成对解码图像执行插值处理,以生成解码图像的分数像素的像素值,其中,
运动矢量检测部基于由插值处理部生成的解码图像的分数像素的像素值,以分数像素精度来检测屏幕图像中多个顶点的运动矢量,并且
解码块是由插值处理部生成的解码图像的分数像素的像素值的块。
(7)根据上述(6)所述的图像处理装置,还包括:
设置部,其被配置成设置用于指示多个顶点的运动矢量的精度是分数像素精度的分数像素精度信息。
(8)根据上述(6)或(7)所述的图像处理装置,还包括:
帧间预测部,其被配置成基于屏幕图像之间当前块的分数精度的运动矢量来执行帧间预测处理,该帧间预测处理用于生成解码的先前图像的块作为当前块的预测图像,其中该解码的先前图像是在该图像之前被解码的图像,其中
插值处理部通过对解码的先前图像执行插值处理来生成解码的先前图像的分数像素的像素值,并且
运动矢量检测部基于由插值处理部生成的解码的先前图像的分数像素的像素值来检测屏幕图像之间当前块的分数精度的运动矢量。
(9)根据上述(1)至(3)中任一项所述的信息处理装置,其中,
帧内BC预测部基于用于指示要执行仿射变换帧内BC预测处理的仿射变换帧内BC预测处理信息来执行仿射变换帧内BC预测处理。
(10)根据上述(9)所述的图像处理装置,还包括:
插值处理部,其被配置成通过对解码图像执行插值处理来生成解码图像的分数像素的像素值,其中
屏幕图像中多个顶点的运动矢量的精度是分数像素精度,并且
解码块是由插值处理部生成的解码图像的分数像素的像素值的块。
(11)根据上述(10)所述的图像处理装置,其中,
插值处理部基于用于指示多个顶点的运动矢量的精度是分数像素精度的分数像素精度信息来执行插值处理。
(12)根据上述(1)至(11)中任一项所述的信息处理装置,其中,
在使得使用分数像素精度的运动矢量的帧内BC预测处理生效的情况下,帧内BC预测部执行仿射变换帧内BC预测处理。
(13)根据上述(1)至(12)中任一项所述的信息处理装置,其中,
在当前块的尺寸小于给定尺寸的情况下,帧内BC预测部执行仿射变换帧内BC预测处理。
(14)一种由图像处理装置执行的图像处理方法,包括:
帧内BC预测步骤:基于图像的当前块的多个顶点在屏幕图像中的运动矢量对图像中已经解码的块进行仿射变换,以执行用于生成当前块的预测图像的仿射变换帧内BC预测处理。
附图标记列表
101控制部,133插值处理部,136帧间预测部,233插值处理部,304运动矢量检测部,305帧内BC预测部,320块,321至323运动矢量,341运动矢量,342块,405帧内BC预测部。
Claims (14)
1.一种图像处理装置,包括:
帧内BC预测部,其被配置成基于图像的当前块的多个顶点在屏幕图像中的运动矢量,对所述图像中的已经解码的块进行仿射变换,以执行用于生成所述当前块的预测图像的仿射变换帧内BC预测处理。
2.根据权利要求1所述的图像处理装置,其中,
通过针对当前划分块中的每一个、基于所述当前划分块中的每一个的运动矢量平行移位所述图像中的解码块来执行仿射变换,其中所述当前划分块具有比配置所述当前块的4×4像素小的尺寸,所述当前划分块中的每一个的运动矢量是使用所述屏幕图像中所述多个顶点的运动矢量生成的。
3.根据权利要求2所述的图像处理装置,其中,
所述帧内BC预测部将所述当前划分块的尺寸确定为随着所述屏幕图像中所述多个顶点的运动矢量增大而减小。
4.根据权利要求1所述的图像处理装置,还包括:
运动矢量检测部,其被配置成检测所述屏幕图像中所述多个顶点的运动矢量。
5.根据权利要求4所述的图像处理装置,还包括:
设置部,其被配置成设置用于指示要执行所述仿射变换帧内BC预测处理的仿射变换帧内BC预测处理信息。
6.根据权利要求4所述的图像处理装置,还包括:
插值处理部,其被配置成对所述解码图像执行插值处理,以生成所述解码图像的分数像素的像素值,其中,
所述运动矢量检测部基于由所述插值处理部生成的所述解码图像的分数像素的像素值,以分数像素精度来检测所述屏幕图像中所述多个顶点的运动矢量,并且
所述解码块是由所述插值处理部生成的所述解码图像的分数像素的像素值的块。
7.根据权利要求6所述的图像处理装置,还包括:
设置部,其被配置成设置用于指示所述多个顶点的运动矢量的精度是分数像素精度的分数像素精度信息。
8.根据权利要求6所述的图像处理装置,还包括:
帧间预测部,其被配置成基于屏幕图像之间所述当前块的分数精度的运动矢量来执行帧间预测处理,所述帧间预测处理用于生成解码的先前图像的块作为所述当前块的预测图像,其中所述解码的先前图像是在所述图像之前被解码的图像,其中
所述插值处理部通过对所述解码的先前图像执行插值处理来生成所述解码的先前图像的分数像素的像素值,并且
所述运动矢量检测部基于由所述插值处理部生成的所述解码的先前图像的分数像素的像素值来检测屏幕图像之间所述当前块的分数精度的运动矢量。
9.根据权利要求1所述的图像处理装置,其中,
所述帧内BC预测部基于用于指示要执行所述仿射变换帧内BC预测处理的仿射变换帧内BC预测处理信息来执行所述仿射变换帧内BC预测处理。
10.根据权利要求9所述的图像处理装置,还包括:
插值处理部,其被配置成通过对解码图像执行插值处理来生成所述解码图像的分数像素的像素值,其中
所述屏幕图像中所述多个顶点的运动矢量的精度是分数像素精度,并且
所述解码块是由所述插值处理部生成的所述解码图像的分数像素的像素值的块。
11.根据权利要求10所述的图像处理装置,其中,
所述插值处理部基于用于指示所述多个顶点的运动矢量的精度是分数像素精度的分数像素精度信息来执行插值处理。
12.根据权利要求1所述的图像处理装置,其中,
在使得使用分数像素精度的运动矢量的帧内BC预测处理生效的情况下,所述帧内BC预测部执行所述仿射变换帧内BC预测处理。
13.根据权利要求1所述的图像处理装置,其中,
在所述当前块的尺寸小于给定尺寸的情况下,所述帧内BC预测部执行所述仿射变换帧内BC预测处理。
14.一种由图像处理装置执行的图像处理方法,包括:
帧内BC预测步骤,在所述帧内BC预测步骤中,基于图像的当前块的多个顶点在屏幕图像中的运动矢量对所述图像中的已经解码的块进行仿射变换,以执行用于生成所述当前块的预测图像的仿射变换帧内BC预测处理。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016177337 | 2016-09-12 | ||
JP2016-177337 | 2016-09-12 | ||
PCT/JP2017/030859 WO2018047668A1 (ja) | 2016-09-12 | 2017-08-29 | 画像処理装置および画像処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109691107A true CN109691107A (zh) | 2019-04-26 |
Family
ID=61562479
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780054496.2A Pending CN109691107A (zh) | 2016-09-12 | 2017-08-29 | 图像处理装置和图像处理方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20190215534A1 (zh) |
EP (1) | EP3522537A1 (zh) |
JP (1) | JPWO2018047668A1 (zh) |
KR (1) | KR20190045904A (zh) |
CN (1) | CN109691107A (zh) |
WO (1) | WO2018047668A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117152026A (zh) * | 2023-10-30 | 2023-12-01 | 天津恒宇医疗科技有限公司 | 一种血管内超声图像处理方法、装置和设备 |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019188464A1 (ja) * | 2018-03-30 | 2019-10-03 | ソニー株式会社 | 画像符号化装置、画像符号化方法、画像復号装置、および画像復号方法 |
GB2588004B (en) * | 2018-06-05 | 2023-03-01 | Beijing Bytedance Network Tech Co Ltd | Interaction between IBC and affine |
TWI746994B (zh) * | 2018-06-19 | 2021-11-21 | 大陸商北京字節跳動網絡技術有限公司 | 用於不同參考列表的不同精確度 |
WO2019244117A1 (en) | 2018-06-21 | 2019-12-26 | Beijing Bytedance Network Technology Co., Ltd. | Unified constrains for the merge affine mode and the non-merge affine mode |
CN113115046A (zh) | 2018-06-21 | 2021-07-13 | 北京字节跳动网络技术有限公司 | 分量相关的子块分割 |
EP4325859A3 (en) | 2018-09-19 | 2024-05-15 | Beijing Bytedance Network Technology Co., Ltd. | Syntax reuse for affine mode with adaptive motion vector resolution |
CN110944196B (zh) | 2018-09-24 | 2023-05-30 | 北京字节跳动网络技术有限公司 | 简化的基于历史的运动矢量预测 |
WO2020094150A1 (en) | 2018-11-10 | 2020-05-14 | Beijing Bytedance Network Technology Co., Ltd. | Rounding in current picture referencing |
CN113039780B (zh) | 2018-11-17 | 2023-07-28 | 北京字节跳动网络技术有限公司 | 视频处理中用运动矢量差的Merge |
WO2020125751A1 (en) * | 2018-12-21 | 2020-06-25 | Beijing Bytedance Network Technology Co., Ltd. | Information signaling in current picture referencing mode |
EP3902257A4 (en) * | 2018-12-27 | 2022-01-05 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | CODING PREDICTION METHOD AND DEVICE AND COMPUTER STORAGE MEDIUM |
WO2020141935A1 (ko) * | 2019-01-03 | 2020-07-09 | 엘지전자 주식회사 | 인터 예측을 기반으로 비디오 신호를 처리하기 위한 방법 및 장치 |
KR20210121021A (ko) | 2019-01-31 | 2021-10-07 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 어파인 모드 적응적 움직임 벡터 해상도 코딩 문맥 |
WO2020156517A1 (en) | 2019-01-31 | 2020-08-06 | Beijing Bytedance Network Technology Co., Ltd. | Fast algorithms for symmetric motion vector difference coding mode |
CN113597767A (zh) * | 2019-03-08 | 2021-11-02 | Oppo广东移动通信有限公司 | 预测方法、编码器、解码器及计算机存储介质 |
US11240516B2 (en) | 2019-03-20 | 2022-02-01 | Tencent America LLC | Coding mode signaling for small blocks |
KR20220002989A (ko) * | 2019-04-25 | 2022-01-07 | 오피 솔루션즈, 엘엘씨 | 픽처 헤더 내의 글로벌 모션 벡터의 시그널링 |
WO2020255367A1 (ja) * | 2019-06-21 | 2020-12-24 | 日本電信電話株式会社 | 符号化装置、符号化方法及びプログラム |
US11818384B2 (en) * | 2020-09-24 | 2023-11-14 | Ofinno, Llc | Affine intra block copy refinement |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050114093A1 (en) * | 2003-11-12 | 2005-05-26 | Samsung Electronics Co., Ltd. | Method and apparatus for motion estimation using variable block size of hierarchy structure |
US20100246675A1 (en) * | 2009-03-30 | 2010-09-30 | Sony Corporation | Method and apparatus for intra-prediction in a video encoder |
US20140016874A1 (en) * | 2012-07-12 | 2014-01-16 | Canon Kabushiki Kaisha | Method and device for predicting an image portion for encoding or decoding of an image |
-
2017
- 2017-08-29 WO PCT/JP2017/030859 patent/WO2018047668A1/ja active Application Filing
- 2017-08-29 JP JP2018538363A patent/JPWO2018047668A1/ja active Pending
- 2017-08-29 US US16/323,919 patent/US20190215534A1/en not_active Abandoned
- 2017-08-29 CN CN201780054496.2A patent/CN109691107A/zh active Pending
- 2017-08-29 EP EP17848609.8A patent/EP3522537A1/en not_active Withdrawn
- 2017-08-29 KR KR1020197005042A patent/KR20190045904A/ko unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050114093A1 (en) * | 2003-11-12 | 2005-05-26 | Samsung Electronics Co., Ltd. | Method and apparatus for motion estimation using variable block size of hierarchy structure |
US20100246675A1 (en) * | 2009-03-30 | 2010-09-30 | Sony Corporation | Method and apparatus for intra-prediction in a video encoder |
US20140016874A1 (en) * | 2012-07-12 | 2014-01-16 | Canon Kabushiki Kaisha | Method and device for predicting an image portion for encoding or decoding of an image |
Non-Patent Citations (2)
Title |
---|
JIANLE CHEN: "Algorithm Description of Joint Exploration Test Model 3", 《JOINT VIDEO EXPLORATION TEAM (JVET)OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11》 * |
XIAOZHONG XU: "On unification of intra block copy and inter-picture motion compensation", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING(JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117152026A (zh) * | 2023-10-30 | 2023-12-01 | 天津恒宇医疗科技有限公司 | 一种血管内超声图像处理方法、装置和设备 |
CN117152026B (zh) * | 2023-10-30 | 2024-02-02 | 天津恒宇医疗科技有限公司 | 一种血管内超声图像处理方法、装置和设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2018047668A1 (ja) | 2018-03-15 |
JPWO2018047668A1 (ja) | 2019-06-24 |
KR20190045904A (ko) | 2019-05-03 |
EP3522537A1 (en) | 2019-08-07 |
US20190215534A1 (en) | 2019-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109691107A (zh) | 图像处理装置和图像处理方法 | |
CN109792522A (zh) | 图像处理装置和方法 | |
CN104396241B (zh) | 图像处理装置和方法 | |
CN109417621A (zh) | 图像处理装置及方法 | |
CN109076226A (zh) | 图像处理装置和方法 | |
CN110431843A (zh) | 图像处理装置及方法 | |
CN109804632A (zh) | 图像处理装置和图像处理方法 | |
EP4395313A1 (en) | Image processing apparatus and method | |
CN104813664B (zh) | 图像处理设备和图像处理方法 | |
CN105900424B (zh) | 解码装置、解码方法、编码装置以及编码方法 | |
CN109644269A (zh) | 图像处理设备、图像处理方法和程序 | |
CN109076242A (zh) | 图像处理设备和方法 | |
CN105230017B (zh) | 图像编码装置和方法以及图像解码装置和方法 | |
CN110169072A (zh) | 图像处理装置和图像处理方法 | |
CN106576176A (zh) | 图像编码设备和方法以及图像解码设备和方法 | |
CN106534872A (zh) | 图像处理装置和方法 | |
CN110169071A (zh) | 图像处理装置和图像处理方法 | |
CN105594208A (zh) | 解码装置、解码方法、编码装置以及编码方法 | |
CN105874801B (zh) | 解码设备和解码方法、以及编码设备和编码方法 | |
WO2017183479A1 (ja) | 符号化装置及び符号化方法、並びに、復号装置及び復号方法 | |
CN109076217A (zh) | 图像处理装置和图像处理方法 | |
CN107683606A (zh) | 图像处理装置和图像处理方法 | |
WO2018131524A1 (ja) | 画像処理装置及び画像処理方法 | |
CN109691100A (zh) | 图像处理设备和图像处理方法 | |
WO2018173873A1 (ja) | 符号化装置及び符号化方法、並びに、復号装置及び復号方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190426 |
|
WD01 | Invention patent application deemed withdrawn after publication |