图像编码设备及其控制方法
【专利摘要】本发明提供一种图像编码设备及其控制方法。用于对包括多个帧的图像数据进行编码的图像编码设备,基于所获得的图像数据,确定图像数据的编码对象帧的编码块大小;根据所确定的编码块大小,按照编码块单位对所获得的图像数据进行编码;基于关于当前决定了大小的编码块和在当前编码块之前编码的编码块的编码信息,控制决定了大小的编码块的代码量;基于编码信息,运算编码对象帧的预定编码信息;并且根据运算出的预定编码信息,限制要确定的编码块大小。
【专利说明】图像编码设备及其控制方法
【技术领域】
[0001]本发明涉及一种图像编码设备,尤其涉及一种按照分割块单位对图像进行编码的图像编码设备以及该图像编码设备的控制方法。
【背景技术】
[0002]在相关技术中,已知数字摄像机作为用于对通过对被摄体进行摄像而获得的运动图像数据进行压缩编码和记录的照相机一体型运动图像记录设备。近年来,用于记录运动图像数据的记录介质从相关技术中的磁带改变为了具有诸如随机存取性能等的高便利性的盘式介质、半导体存储器等。作为压缩方法,通常使用能够通过使用帧之间的运动预测而实现高压缩率的压缩的MPEG2方法。此外,近年来,使用能够实现更高压缩率的压缩的
H.264方法。在H.264方法等中,定义了将宏块细分为子宏块并且可以进行运动补偿的这种标准。
[0003]因此,在日本特开平09-130801(专利文献I)中公开了根据图像的特征等自适应地确定要使用的块大小的方法。在日本特开2006-254370(专利文献2)中公开了根据照相机信息自适应地确定块大小的方法。
[0004]然而,在近年来正在进行标准化的下一代编码方法中,正在研究可以对决定图像的量化系数的编码块的大小进行自适应地改变的方法。
[0005]如果自适应地改变编码块大小,则可以根据图像的特征等进行块分割,并且可以提高编码效率和图片质量。
[0006]然而,由于可以对每个编码块大小确定量化系数,因此作为每个块的目标代码量和生成代码量之间的差的代码量误差增大,从而导致图片质量劣化。
【发明内容】
[0007]考虑如上所述的前述相关技术中的问题,本发明的一方面是提供一种图像编码设备,其中,根据编码位置或者生成代码量来确定编码块的最大大小,并且抑制代码量误差,由此进行最佳量化控制,并且使得能够获得良好的图像。
[0008]根据本发明的一方面,一种图像编码设备,用于对包括多个帧的图像数据进行编码,所述图像编码设备包括:获得部件,用于获得所述图像数据;预测部件,用于基于所获得的图像数据,确定编码对象帧的编码块的大小;编码部件,用于根据所确定的编码块大小,按照编码块单位对所获得的图像数据进行编码;以及代码量控制部件,用于基于所述预测部件所确定的大小的当前编码块和在所述当前编码块之前由所述编码部件进行了编码的编码块的编码信息,控制所述预测部件所确定的大小的编码块的代码量,其中,所述代码量控制部件基于所述编码信息,对所述编码对象帧的预定编码信息进行算术运算,并且根据算术运算出的所述预定编码信息,限制所述预测部件要确定的编码块大小。
[0009]根据本发明的另一方面,一种图像编码设备,用于对包括多个帧的图像数据进行编码,所述图像编码设备包括:获得部件,用于获得所述图像数据;预测部件,用于基于所获得的图像数据,确定编码对象帧的编码块的大小;编码部件,用于根据所确定的编码块大小,按照编码块单位对所获得的图像数据进行编码;以及代码量控制部件,用于基于所述预测部件所确定的大小的当前编码块和在所述当前编码块之前由所述编码部件进行了编码的编码块的编码信息,控制所述预测部件所确定的大小的编码块的代码量,其中,所述代码量控制部件对所述编码对象帧中的、在所述当前编码块之前由所述编码部件进行了编码的每个编码块的生成代码量进行累加,并且根据所累加出的生成代码量,限制所述预测部件要确定的编码块大小。
[0010]根据本发明的又一方面,一种图像编码设备的控制方法,所述图像编码设备包括:获得部件,用于获得包括多个帧的图像数据;预测部件,用于确定所述图像数据的编码对象帧的编码块的大小;以及编码部件,用于根据所确定的编码块大小,按照编码块单位对所获得的图像数据进行编码,所述控制方法包括:代码量控制步骤,用于基于所述预测部件所确定的大小的当前编码块和在所述当前编码块之前由所述编码部件进行了编码的编码块的编码信息,控制所述预测部件所确定的大小的编码块的代码量,其中,所述代码量控制步骤包括如下的步骤:基于所述编码信息,对所述编码对象帧的预定编码信息进行算术运算,并且根据算术运算出的所述预定编码信息,限制所述预测部件要确定的编码块大小。
[0011]根据本发明的又一方面,一种图像编码设备的控制方法,所述图像编码设备包括:获得部件,用于获得包括多个帧的图像数据;预测部件,用于确定所述图像数据的编码对象帧的编码块的大小;以及编码部件,用于根据所确定的编码块大小,按照编码块单位对所获得的图像数据进行编码,所述控制方法包括:代码量控制步骤,用于基于所述预测部件所确定的大小的当前编码块和在所述当前编码块之前由所述编码部件进行了编码的编码块的编码信息,控制所述预测部件所确定的大小的编码块的代码量,其中,所述代码量控制步骤包括如下的步骤:对所述编码对象帧中的、在所述当前编码块之前由所述编码部件进行了编码的每个编码块的生成代码量进行累加,并且根据所累加出的生成代码量,限制所述预测部件要确定的编码块大小。
[0012]从以下参考附图对示例性实施例的描述,本发明的其它特征将变得清楚。
【专利附图】
【附图说明】
[0013]包含在说明书中、构成说明书的一部分的附图,示出了本发明的示例性实施例、特征和方面,并且与文字说明一起,用于解释本发明的原理。
[0014]图1是示出根据本发明的实施例的图像编码设备的结构示例的框图。
[0015]图2是示出使用作为最大编码单位的块、按照编码单位将图像分割为块的示例的图。
[0016]图3A和3B是在概念上示出代码量控制中的目标代码量、量化系数和生成代码量之间的关系的图。
[0017]图4是在概念上示出针对图3所示的编码控制而改变编码块大小的情况下的目标代码量、量化系数和生成代码量之间的关系的图。
[0018]图5是由图1中的编码设备的量化控制单元执行的根据本发明的第一实施例的控制操作的流程图。
[0019]图6是由量化控制单元执行的根据本发明的第二实施例的控制操作的流程图。[0020]图7是示出图6中的操作中的图片目标代码量和代码量误差率之间的关系的图。【具体实施方式】
[0021]下面,参考附图,详细描述本发明的各种示例性实施例、特征和方面。
[0022]图1是示出根据本发明的第一实施例的图像编码设备100的结构示例的框图。
[0023]在图1中,图像编码设备100包括:包括诸如透镜、摄像传感器等的照相机单元的摄像单元101 ;以及用于存储从摄像单元输出的运动图像数据的帧存储器102。图像编码设备100还包括:用于使用图片之间的差搜索运动矢量的帧间预测单元103 ;用于选择帧间预测或者帧内预测的预测方法的预测方法选择单元104 ;以及用于选择帧内预测方法的帧内预测单元105。此外,为了使用所选择的预测方法按照编码块单位进行预测编码,图像编码设备100包括:预测图像生成单元106 ;减法器107 ;整数变换单元108 ;量化单元109 ;熵编码单元115 ;量化控制单元116 ;以及代码量控制单元117。此外,为了生成在帧间预测方法中使用的参考图像,图像编码设备100包括:逆量化单元110 ;逆整数变换单元111 ;加法器112 ;以及环内滤波器113。图像编码设备100包括记录单元118,并且图像编码设备100被构造为可以安装记录介质119。帧存储器102具有用于存储在帧间预测中使用的参考图像的参考图像存储器114。
[0024]按照第一帧、第二帧、第三帧、…的顺序(显示顺序),将从摄像单元101输出的运动图像数据依次存储到帧存储器102中。按照例如对第三帧、第一帧、第二帧、…进行编码的顺序(编码顺序),按照帧单位从帧存储器102中依次读出运动图像数据。根据编码方法,将读出的帧称为I图片、P图片或者B图片。
[0025]作为编码方法,存在:仅使用帧中的图像数据来实现编码的帧内编码;以及附加地使用帧之间的预测来实现编码的帧间编码。作为进行帧间编码的图片,存在:要在运动补偿块单位(称为“MC块”)和一个参考帧之间进行运动预测的P图片;以及要在MC块和多达两个参考帧之间进行运动预测的B图片。另一方面,进行帧内编码的图片是I图片。要编码的帧的顺序与输入的帧的顺序不同的原因是,使得能够不仅使用过去的帧、还使用时间上的未来的帧进行预测(后向预测)。
[0026]在进行帧内编码的情况下,从帧存储器102中读出作为最大编码单位的编码对象块的图像数据,并将其输入到帧内预测单元105。还从帧存储器102中读出与读出的编码对象块邻接的像素的数据,并将其输入到帧内预测单元105。
[0027]帧内预测单元105在编码对象块和根据与编码对象块邻接的像素的数据所生成的多个帧内预测图像数据中的每个帧内预测图像数据之间进行块匹配。选择具有最高相关的帧内预测图像数据,并将其输出到预测方法选择单元104。当生成了帧内预测图像数据时,帧内预测单元105使用从加法器112输出的重构图像数据,进行帧内预测编码。
[0028]在要进行帧内编码的帧的情况下,预测方法选择单元104总是选择帧内预测,并且向预测图像生成单元106通知选择结果。根据由预测方法选择单元104选择的预测方法,预测图像生成单元106根据下面将描述的从加法器112输出的重构图像数据,生成帧内预测图像数据。
[0029]将前述帧内预测图像数据和从帧存储器102读出的编码对象块的图像数据输入到减法器107。将编码对象块的图像和帧内预测图像的像素值之间的差分图像数据输出到整数变换单元108。整数变换单元108对输入的像素值的差分图像数据进行整数变换。量化单元109对整数变换单元108进行了整数变换的信号执行量化处理。
[0030]在要进行帧间编码的帧的情况下,从帧存储器102中读出作为最大编码单位的编码对象块的图像数据,并将其输入到帧间预测单元103。帧间预测单元103从参考图像存储器114中读出参考图像数据,根据编码对象图像数据和参考图像数据检测运动矢量,并且通知给预测方法选择单元104。
[0031]可以依据帧,对每个编码对象块选择帧间预测或者帧内预测。此外,在这种情况下,帧内预测单元105如上所述工作,并且向预测方法选择单元104通知帧内预测的结果。预测方法选择单元104接收帧间预测单元103的结果和帧内预测单元105的结果,选择例如具有较小差分值的预测方法,并且向预测图像生成单元106通知所选择的预测方法。减法器107计算编码对象图像和预测图像的像素值之间的差,从而生成差分图像数据。将差分图像数据输出到整数变换单元108。
[0032]图2是示出使用作为最大编码单位的块,按照编码单位对图像进行块分割的示例的图。图2中的块中的由外周(粗线部分)包围的块,是具有编码块的最大大小的块(最大编码单位的块)。通过对最大大小的编码块的内部进行细分而获得的块,是自适应地确定的编码块的示例。第I至第22块分别成为量化的对象。最大大小的编码块也可以成为量化对象编码块。在帧中布置如上所述各自包括一个或多个这种编码块的最大编码单位的多个编码块。图2示出了关注最大编码单位的一个块的示例,并且每个编号表示编码块编号。在帧内预测和帧间预测中,确定块大小,使得在最大编码单位的块中,差分值变得最小。然而,由于在块的数量大的情况下,添加了块辨别信息,因此考虑头信息量来确定块大小。例如,在通过对块进行分割而获得的任意块A中,现在假设将差分值设置为D,将量化系数设置为Q,并且将头信息量设置为I,则由下面的方程获得块A的评价值H。
[0033]H=D/Q+I
[0034]确定块大小,使得各个块的评价值H的总值变得最小。
[0035]然而,本实施例不限于如图2所示的块的分割方法,而可以使用其它分割方法。
[0036]返回到图1,描述根据本实施例的图像编码设备的操作。
[0037]熵编码单元115对由量化单元109进行了量化的整数变换系数进行熵编码,并作为流输出到记录单元118。量化单元109中的量化系数由量化控制单元116使用诸如系数、代码量等的以下数据来计算。也就是说,数据是:初始量化系数或者在先前的块中使用的量化系数;在预测方法选择单元104中确定的编码块大小;在熵编码单元115中生成的代码量;从代码量控制单元117设置的目标代码量;等等。
[0038]图3A是示出每个块代码量控制中的目标代码量、量化系数和生成代码量之间的关系的图。
[0039]在图中,实心黑圆(.)表示先前的块地址中的累加代码量。由方框(□)示出实心黑圆的位置处的生成代码量。在累加代码量和目标图片代码量之间绘制了斜线。CU表示编码单元。
[0040]可以由下式获得块目标代码量。
[0041]{(目标图片代码量)_(累加代码量)}/(剩余块相应大小)
[0042]剩余块相应大小是通过将未编码块大小变换为当前块的块大小而获得的值。未编码块大小可以从当前编码位置(例如下面将描述的图7中的posA)获得,并且其是关于编码块的编码信息。该信息是适当地存储到量化控制单元116的存储器(未示出)、用于控制整个编码设备的控制单元(未示出)的存储器等中的信息,并且可以根据需要将其读出。
[0043]按照块单位进行编码,并且块目标代码量和块生成代码量之间的差变为块编码误差 err ο
[0044]这时,量化系数Qp由下面的方程⑴获得。
[0045]Qp=Q+Σ err* α...(I)
[0046]其中,α是任意值。
[0047]虽然可以精细地改变量化系数,以提高控制灵敏度,但是由于产生量化失真,因此还需要使灵敏度变弱。这由α来调节。α的值越大,控制灵敏度越高。
[0048]图3Α是示出在如上所述确定量化系数并且对每个块进行编码的情况下,CU7至CUlO中的目标代码量、量化系数和生成代码量之间的关系的图。
[0049]图3Β是示出图3Α中的接下来的编码块CUlI中的目标代码量、量化系数和生成代码量之间的关系的图。该图示出了继承CUlO的量化系数,并且对CUll进行编码的情况下的关系。如在图中所示出的,由于块大小不同,因此代码量误差增大。
[0050]图4是示出图3Β中的编码块大小改变的情况下的生成代码量(□)的图。虽然在大块中,块的目标代码量和生成代码量被量化系数大大分离,但是通过使块大小减小,可以将接下来的块CUll中的量化系数改变为Q[CU12],并且可以抑制代码量误差。
[0051]图5是由量化控制单元116执行的根据本实施例的量化控制操作的流程图。通过量化控制单元116的CPU或者用于控制图1中的整个图像编码设备的控制单元(未示出)的CPU执行控制程序的方法,来实现该流程图所示的处理。
[0052]参照图5所示的流程图,描述量化控制单元116的操作。首先,设置关于当前编码块的编码信息(S501)。在本实施例中,获得并设置作为初始值的初始量化系数或者之前编码的相同图片类型的图片的最后的量化系数、先前块的生成代码量、当前块大小、以及代码量误差。将这些数据适当地存储在量化控制单元116的存储器(未示出)、或者用于控制整个图像编码设备的控制单元(未示出)的存储器等中,并且根据需要将其读出。
[0053]基于设置的编码信息和当前编码块的其它编码信息(例如位置信息等),计算用于代码量控制的信息(S502)。在本实施例中,通过累加直到先前块的块的生成代码量,计算图片累加代码量。此外,通过从图片目标代码量中减去图片累加代码量,计算图片剩余代码量。计算在用具有最小块大小的编码块完全填充图片内部的情况下的“图片剩余最小块”(下面将进行定义)的数量。还通过将“图片剩余最小块”的数量除以“图片全部最小块”(下面将进行定义)的数量,计算图片编码率(当前编码对象帧的编码率)(S502)。以与步骤S501的情况类似的方式,也在编码设备的控制结构中,根据需要适当地存储并且读出这些算术运算需要的且在S501中没有设置的数据、以及算术运算的结果。也就是说,“最小块大小”表示多个可选择块大小中的最小块大小。“图片剩余最小块的数量”表示用具有最小块大小的编码块完全填充图片内部的情况下的图片中的未编码块的数量。“图片全部最小块的数量”表示用具有最小块大小的编码块完全填充图片内部的情况下的图片中的全部编码块的数量。因此,可以根据编码块的大小、图片的大小和当前编码位置(关于编码块的编码息),获得这些息。[0054]根据图片剩余代码量、图片剩余最小块的数量、以及块大小,计算块目标代码量(S503),以计算量化系数Q值(S504)。
[0055]随后,确定图片编码率是否大于预定阈值(Thresl) (S505)。
[0056]当图片编码率大于阈值Thresl时,改变下一个块的大小的上限,以设置新的值,由此禁止在帧间预测单元103和帧内预测单元105中选择等于或者大于上限的块大小(S506)。例如,进行控制,使得不生成大于(16X16)的块。
[0057]如上所述,当图片编码率大于阈值(图片剩余最小块的数量大)时,如果在大块中编码误差增大,则为了抑制代码量误差,需要通过大大改变量化系数来抑制代码量。因此,在本实施例中,以改变块大小的上限并且在不生成大块的情况下抑制代码量误差的方式来进行控制。
[0058]然而,块大小的上限可以是说明中的(16X16)之外的大小。
[0059]返回到图1,进一步描述根据本实施例的图像编码设备的操作。
[0060]还将由量化单元109量化后的整数变换系数输入到逆量化单元110。逆量化单元110对输入的整数变换系数进行逆量化。逆整数变换单元111对进行了逆量化的整数变换系数执行逆整数变换处理。
[0061]将进行了逆整数变换的数据和预测图像生成单元106生成的帧内预测图像数据输入到加法器112并且进行相加。相加之后的数据成为解码重构图像数据,并且将其输入到前述预测图像生成单元106,以用于生成帧内预测图像数据。环内滤波器113对重构图像数据执行减小编码失真的处理。将获得的数据作为下面将描述的帧间编码使用的参考图像数据,存储到参考图像存储器114中。
[0062]记录单元118将从熵编码单元115输出的流记录到记录介质119上。
[0063]如上所述,根据本实施例,通过提供编码块的最大大小,可以抑制代码量误差,并且可以提供进行最佳量化控制的图像编码设备。
[0064]随后,参考图6和7,描述本发明的第二实施例。
[0065]图6示出了根据本实施例的量化控制单元116的控制操作的流程图。在该流程图中,用相同的步骤编号表示与在第一实施例(图5)中相同的处理,并且除非另外特别需要,否则这里省略其描述。由于本实施例的图像编码设备的主要结构与第一实施例类似,因此这里也省略其描述。
[0066]在本实施例的控制操作中,下面描述与在第一实施例中不同的部分。
[0067]以与第一实施例类似的方式,在设置量化控制需要的信息并且进行算术运算之后,在步骤S607中,根据图片编码率、图片目标代码量和图片剩余代码量,计算每图片单位的编码误差率,并且基于代码量误差率确定最大块大小。
[0068]图7是示出图片目标代码量和代码量误差率的图。在该图中,点A表示编码的当前位置。点A的横坐标轴的坐标posA提供作为从原点O到点Pic End的距离的内分点的图片编码率。纵坐标轴的坐标提供图片累加代码量(图片目标代码量-图片剩余代码量)。因此,可以根据帧的当前帧内编码率和帧内剩余代码量,指定点A的位置。如果可以(从关于编码块的编码信息)知道点A的位置,则如下面所描述的,可以计算帧的代码量误差率。
[0069]在该图中,连接要编码的图片的最后的位置处的图片目标代码量和原点O的粗实线,是示出在对每个最小块大小的编码块均匀地给予代码量时的目标累加代码量的线。示出目标累加代码量的线和实际累加代码量(折线)之间的差是代码量误差。可以使用目标代码量、目标累加代码量和代码量误差,来计算代码量误差率。
[0070](代码量误差)=(实际累加代码量)_(目标累加代码量)
[0071](代码量误差率)=(代码量误差)/(目标代码量)
[0072]在该图中,示出实际累加代码量的折线在水平方向的滑动的长度不同的原因是因为编码块大小不同。由于生成代码量而出现垂直变化。
[0073]存在由于代码量误差率超过预定误差率(+12.5%的虚线),该图中的点A处的实际累加代码量相对于图片目标代码量大大偏离的可能性。因此,减小编码块的最大大小,以精细地进行量化控制,并且精细地控制代码量。
[0074]当代码量误差率超过+25%(+25%的细实线)时,进一步减小编码块的最大大小。
[0075]例如,以当不存在限制时将块大小设置为(64X64)个像素的块、在+12.5%处设置为(32X32)个像素的块、并且在+25%处设置为(16X16)个像素的块的方式,随着代码量误差率增大,逐步减小编码块的最大大小。
[0076]相反,即使当代码量误差率表示负值时,也可以以改变编码块的最大大小,使得实际累加代码量接近目标累加代码量的方式,进行控制。
[0077]在本实施例中,代码量误差率和要改变的最大大小之间的关系不限于上述值。可以使用其它数值适当地设置改变条件和最大块大小。
[0078]如上所述,在本实施例中,根据量化系数Q的计算来在步骤S607中计算代码量误差率,并且根据计算结果确定下一次编码中的块大小的最大大小。使用这种方法,也可以抑制代码量误差。
[0079]如上所述,根据本实施例,通过根据代码量误差率逐步改变量化块的最大大小,可以抑制代码量误差,并且可以提供可以进行最佳量化控制的图像编码设备。
[0080]通过从存储器(未示出)中读出用于实现图5和6所示的处理的功能的程序,并且量化控制单元的CPU等执行如上所述的程序的方法,来实现该处理的功能。然而,本发明不限于这种方法,而可以通过专用硬件来实现图5和6所示的处理的功能中的全部或者一部分。前述存储器可以由计算机可读写记录介质构成。例如,作为这种记录介质,存在磁光盘装置、诸如闪速存储器等的非易失性存储器、诸如CD-ROM等的只读记录介质、RAM之外的易失性存储器或者由它们的组合构成的记录介质。
[0081]上述处理可以通过如下方法来实现:将用于实现图5和6所示的处理的功能的程序记录到计算机可读记录介质中,读出记录在记录介质中的程序并将其存储到计算机系统中,由此执行该程序。假设这里提及的“计算机系统”包含OS和诸如外围装置等的硬件。具体来说,其还包含将从存储器介质中读出的程序写入针对插入计算机中的功能扩展板或者连接到计算机的功能扩展单元所设置的存储器中的情况。在这种情况下,在写入程序之后,针对功能扩展板或者功能扩展单元设置的CPU等基于程序的指令执行实际处理中的一部分或者全部,并且通过这些处理来实现上述实施例的功能。
[0082]“计算机可读记录介质”表示诸如软盘、磁光盘、ROM、⑶-ROM等的便携式介质或者诸如内置在计算机系统中的硬盘等的存储装置。此外,在使用诸如因特网等的网络或者通过诸如电话线等的通信线路,发送了程序的情况下,“计算机可读记录介质”包含作为服务器或者客户机的计算机系统中的易失性存储器(RAM)。假设在预定时间内保持程序的介质也包含在“计算机可读记录介质”中。
[0083]可以通过传输介质或者使用传输介质中的传输波,从在存储装置等中存储了程序的计算机系统向另一计算机系统传输程序。用于传输程序的“传输介质”表示诸如像因特网等的网络(通信网络)或者像电话线等的通信线路(通信配线)的具有传输信息的功能的介质。
[0084]程序可以是用于实现上述功能中的一部分的程序。此外,程序可以是可以通过与已经记录在计算机系统中的程序组合来实现上述功能的被称为差分文件(差分程序)的程序。
[0085]也可以作为本发明的实施例,来应用记录了前述程序的诸如计算机可读记录介质等的程序产品。前述程序、记录介质、传输介质和程序产品包含在本发明的范围内。
[0086]虽然参照示例性实施例对本发明进行了说明,但是应当理解,本发明不限于所公开的示例性实施例。所附权利要求的范围符合最宽的解释,以使其涵盖所有这种变型、等同结构及功能。
【权利要求】
1.一种图像编码设备,用于对包括多个帧的图像数据进行编码,所述图像编码设备包括: 获得部件,用于获得所述图像数据; 预测部件,用于基于所获得的图像数据,确定编码对象帧的编码块的大小; 编码部件,用于根据所确定的编码块大小,按照编码块单位对所获得的图像数据进行编码;以及 代码量控制部件,用于基于所述预测部件所确定的大小的当前编码块和在所述当前编码块之前由所述编码部件进行了编码的编码块的编码信息,控制所述预测部件所确定的大小的编码块的代码量, 其中,所述代码量控制部件基于所述编码信息,对所述编码对象帧的预定编码信息进行算术运算,并且根据算术运算出的所述预定编码信息,限制所述预测部件要确定的编码块大小。
2.根据权利要求1所述的图像编码设备,其中,所述代码量控制部件计算所述编码对象帧的编码率作为所述预定编码信息,在所述编码率大于预定阈值的情况下改变所述预测部件要确定的编码块大小的最大大小,并且禁止所述预测部件确定等于或大于改变后的最大大小的编码块大小。
3.根据权利要求2所述的图像编码设备,其中,所述代码量控制部件基于根据所述当前编码块的编码信息所获得的未编码块的信息和预定块大小,计算所述编码率。`
4.根据权利要求1所述的图像编码设备,其中,所述代码量控制部件根据所述编码对象帧的生成代码量和目标代码量,计算代码量误差率,并且根据所计算出的代码量误差率,改变所述预测部件要确定的编码块大小的最大大小。
5.根据权利要求4所述的图像编码设备,其中,在所计算出的代码量误差率超过预定误差率的情况下,所述代码量控制部件减小所述预测部件要确定的编码块大小的最大大小。
6.根据权利要求5所述的图像编码设备,其中,随着所计算出的代码量误差率增大超过所述预定误差率,所述代码量控制部件逐步减小所述预测部件要确定的编码块大小的最大大小。
7.根据权利要求1至6中的任一项所述的图像编码设备,其中,所述代码量控制部件对所述编码部件所编码的编码块中的生成代码量进行累加,根据所述编码对象帧的目标代码量和所累加出的生成代码量来计算剩余代码量,并且基于所述剩余代码量来确定块目标代码量和量化系数。
8.根据权利要求7所述的图像编码设备,其中,所述预测部件基于根据帧内预测或者帧间预测的像素的差分值,确定编码块大小。
9.根据权利要求8所述的图像编码设备,其中,所述编码部件根据帧内预测或者帧间预测,按照所述编码块单位,对所述图像数据的所述编码对象帧进行编码。
10.一种图像编码设备,用于对包括多个帧的图像数据进行编码,所述图像编码设备包括: 获得部件,用于获得所述图像数据; 预测部件,用于基于所获得的图像数据,确定编码对象帧的编码块的大小;编码部件,用于根据所确定的编码块大小,按照编码块单位对所获得的图像数据进行编码;以及 代码量控制部件,用于基于所述预测部件所确定的大小的当前编码块和在所述当前编码块之前由所述编码部件进行了编码的编码块的编码信息,控制所述预测部件所确定的大小的编码块的代码量, 其中,所述代码量控制部件对所述编码对象帧中的、在所述当前编码块之前由所述编码部件进行了编码的每个编码块的生成代码量进行累加,并且根据所累加出的生成代码量,限制所述预测部件要确定的编码块大小。
11.根据权利要求10所述的图像编码设备,其中,所述代码量控制部件改变所述预测部件要确定的编码块大小的最大大小,并且禁止所述预测部件确定等于或大于改变后的最大大小的编码块大小。
12.根据权利要求10所述的图像编码设备,其中,所述代码量控制部件基于所累加出的生成代码量和所述编码对象帧的目标代码量,计算所述编码对象帧的编码率,在所述编码率大于预定阈值的情况下改变所述预测部件要确定的编码块大小的最大大小,并且禁止所述预测部件确定等于或大于改变后的最大大小的块大小。
13.根据权利要求12所述的图像编码设备,其中,所述代码量控制部件基于根据所述当前编码块的编码信息所获得的未编码块的信息和预定块大小,计算所述编码率。
14.根据权利要求12所述的图像编码设备,其中,所述代码量控制部件根据所累加出的生成代码量和所述目标代码量,计算代码量误差率,并且根据所计算出的代码量误差率,改变所述预测部件要确定的编码块大小的最大大小。
15.根据权利要求14所述的图像编码设备,其中,在所计算出的代码量误差率超过预定误差率的情况下,所述代码量控制部件减小所述预测部件要确定的编码块大小的最大大小。`
16.根据权利要求15所述的图像编码设备,其中,随着所计算出的代码量误差率增大超过所述预定误差率,所述代码量控制部件逐步减小所述预测部件要确定的编码块大小的最大大小。
17.一种图像编码设备的控制方法,所述图像编码设备包括:获得部件,用于获得包括多个帧的图像数据;预测部件,用于确定所述图像数据的编码对象帧的编码块的大小;以及编码部件,用于根据所确定的编码块大小,按照编码块单位对所获得的图像数据进行编码,所述控制方法包括: 代码量控制步骤,用于基于所述预测部件所确定的大小的当前编码块和在所述当前编码块之前由所述编码部件进行了编码的编码块的编码信息,控制所述预测部件所确定的大小的编码块的代码量, 其中,所述代码量控制步骤包括如下的步骤:基于所述编码信息,对所述编码对象帧的预定编码信息进行算术运算,并且根据算术运算出的所述预定编码信息,限制所述预测部件要确定的编码块大小。
18.一种图像编码设备的控制方法,所述图像编码设备包括:获得部件,用于获得包括多个帧的图像数据;预测部件,用于确定所述图像数据的编码对象帧的编码块的大小;以及编码部件,用于根据所确定的编码块大小,按照编码块单位对所获得的图像数据进行编码,所述控制方法包括: 代码量控制步骤,用于基于所述预测部件所确定的大小的当前编码块和在所述当前编码块之前由所述编码部件进行了编码的编码块的编码信息,控制所述预测部件所确定的大小的编码块的代码量, 其中,所述代码量控制步骤包括如下的步骤:对所述编码对象帧中的、在所述当前编码块之前由所述编码部件进行了编码的每个编码块的生成代码量进行累加,并且根据所累加出的生成代码量,限制所 述预测部件要确定的编码块大小。
【文档编号】H04N19/176GK103517074SQ201310246869
【公开日】2014年1月15日 申请日期:2013年6月20日 优先权日:2012年6月20日
【发明者】大石晃弘 申请人:佳能株式会社