CN101969553A - 图像编码设备和图像编码方法 - Google Patents

图像编码设备和图像编码方法 Download PDF

Info

Publication number
CN101969553A
CN101969553A CN201010233825XA CN201010233825A CN101969553A CN 101969553 A CN101969553 A CN 101969553A CN 201010233825X A CN201010233825X A CN 201010233825XA CN 201010233825 A CN201010233825 A CN 201010233825A CN 101969553 A CN101969553 A CN 101969553A
Authority
CN
China
Prior art keywords
code amount
quantization matrix
generating code
quantization
control unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201010233825XA
Other languages
English (en)
Other versions
CN101969553B (zh
Inventor
小籔恭平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of CN101969553A publication Critical patent/CN101969553A/zh
Application granted granted Critical
Publication of CN101969553B publication Critical patent/CN101969553B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • H04N19/194Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive involving only two passes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods 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 picture, frame or field

Abstract

本发明提供了一种图像编码设备和图像编码方法。图像编码设备包括:第一编码单元,用于利用多个不同的量化矩阵来编码图像数据以针对各个量化矩阵计算生成代码量;代码量控制单元,用于计算使得从在第一编码单元处计算出的生成代码量可以识别出是否存在许多高频分量的识别值,在该识别值判别出高频分量的数目大于阈值时选择用于削减高频分量的第一量化矩阵,并且在该识别值判别出高频分量的数目不大于阈值时选择与第一量化矩阵相比削减更少数目的高频分量的第二量化矩阵;以及第二编码单元,用于利用在代码量控制单元处选出的量化矩阵来编码图像数据。

Description

图像编码设备和图像编码方法
技术领域
本发明涉及图像编码设备和图像编码方法,并且更具体地,它使得能够通过减轻图像质量的恶化来执行图像编码。
背景技术
迄今为止,就诸如MPEG2(运动图片专家组2)等之类的图像编码方法而言,维持主观图像质量以理想地分配代码量是个大问题。
例如,静止图像的理想代码量分配是其中失真被(以固定的量化尺度(quantized scale))均匀地编码的状态。当到达该失真变得很大的代码量时,能够通过将失真向高频分量或复杂部分偏置来增强主观图像质量。
现在,例如,就国际公布WO96/28937而言,公开了一种图像信号编码方法,其中通过采用根据前馈方法的代码量控制来使能适合于图像质量信号的局部性质的控制,能够提高经解码图像的图像质量。前馈方法用于通过针对多个量化尺度计算将以等长的增量生成的代码量,来在生成代码量不超出目标生成代码量的范围内确定合适的量化尺度。
另一方面,就诸如作为MPEG2的测试模型提议的TM5等之类的代码量控制而言,通过利用虚拟缓冲器的剩余量、在前一次编码时的量化指标和生成代码量之间的关系执行反馈控制,来执行代码量控制。
发明内容
顺便提及,关于对图像数据的编码,能够通过利用用于削减高频分量的量化矩阵执行编码来减少生成代码量。因此,当解码通过对图像数据进行编码而获得的经编码数据时,从其去除了高频分量的图像被获得。此外,如果再次编码经解码的图像,则量化参数倾向于具有较低的值,因为高频分量被削减。这里,在再次编码经解码的图像的情况下,当编码再次是利用用于削减高频分量的量化矩阵执行的时,高频分量在较广的范围内被去除,因此图像质量的恶化变得显著。
已经发现希望提供一种即使在重复编码/解码处理时也能够减轻图像质量恶化的图像编码设备和图像编码方法。
本发明的一个实施例是一种图像编码设备,包括:第一编码单元,被配置为利用多个不同的量化矩阵来执行对图像数据的编码,以针对各个所述量化矩阵计算生成代码量;代码量控制单元,被配置为计算使得从在所述第一编码单元处计算出的生成代码量能够识别出是否存在许多高频分量的识别值,并且被配置为在该识别值判别出高频分量的数目大于阈值时选择用于削减高频分量的第一量化矩阵,并且被配置为在该识别值判别出所述高频分量的数目不大于所述阈值并且为小时选择与所述第一量化矩阵相比削减更少数目的高频分量的第二量化矩阵;以及第二编码单元,被配置为利用在所述代码量控制单元处选出的量化矩阵来执行对所述图像数据的编码。
根据上述配置,通过第三编码单元,利用固定的量化参数和固定的量化矩阵来执行对图像数据的编码,从而计算生成代码量。通过所述第一编码单元,利用包括所述第三编码单元处使用的量化矩阵在内的多个不同的矩阵和多个不同的量化参数来执行对图像数据的编码,从而针对各个量化矩阵和量化参数来计算生成代码量。
通过代码量控制单元,使得从在所述第一编码单元处计算出的生成代码量可以识别出是否存在许多高频分量的识别值被计算,并且当该识别值判别出高频分量的数目大于阈值时,用于削减高频分量的第一量化矩阵被从在所述第一编码单元处使用的多个量化矩阵中选择出。此外,当该识别值判别出所述高频分量的数目不大于所述阈值并且为小时,与所述第一量化矩阵相比削减更少数目的高频分量的第二量化矩阵被从在所述第一编码单元处使用的多个量化矩阵中选择出。此外,当在所述第三编码单元处计算出的生成代码量等于或大于上限值时,与所述第一量化矩阵相比削减更多数目的高频分量的第三量化矩阵被选择。
此外,通过代码量控制单元,基于在所述第三编码单元处计算出的生成代码量执行对用于实现目标生成代码量的量化参数以及在使用该量化参数时的生成代码量的预测,根据在所述第一编码单元处计算出的生成代码量来校正该预测出的生成代码量,并且确定量化参数以使得校正后的生成代码量实现所述目标生成代码量。这里,当该选出的量化矩阵不同于在所述第三编码单元处使用的量化矩阵时,从在所述第一编码单元处计算出的生成代码量计算校正系数。例如,以指示出在使用所述选出的量化矩阵时的生成代码量相比于在使用在所述第三编码单元处使用的固定的量化矩阵时的生成代码量的百分比的系数作为校正系数,所述预测出的生成代码量被利用该校正系数而校正。
通过所述第二编码单元,对所述图像数据的编码被利用来自所述代码量控制单元的量化参数和量化矩阵来执行。
此外,针对GOP(图片组)中的每个图片执行对量化矩阵的选择,并且当量化矩阵在图片组内不同时,搜索由数目最多的图片所使用的量化矩阵作为最频繁的量化矩阵,并且通过改变选择条件来执行对量化矩阵的再次选择以使得该最频繁的量化矩阵被容易地选择。
本发明的另一实施例是一种图像编码方法,包括以下步骤:由第一编码单元执行的第一编码,利用多个不同的量化矩阵来编码图像数据,以针对各个量化矩阵计算生成代码量;通过代码量控制单元计算使得从在所述第一编码单元处计算出的生成代码量可以识别出是否存在许多高频分量的识别值,在该识别值判别出高频分量的数目大于阈值时选择用于削减高频分量的第一量化矩阵,并且在该识别值判别出所述高频分量的数目不大于所述阈值并且为小时选择与所述第一量化矩阵相比削减更少数目的高频分量的第二量化矩阵;以及由第二编码单元执行的第二编码,利用在所述代码量控制单元处选出的量化矩阵来编码所述图像数据。
根据上述配置,利用多个不同的量化矩阵执行对图像数据的编码,并且针对每个量化矩阵计算生成代码量。此外,计算了使得从计算出的生成代码量可以识别出是否存在许多高频分量的识别值,当该识别值判别出高频分量的数目大于阈值时,用于削减高频分量的第一量化矩阵被选择,并且当该识别值判别出高频分量的数目不大于阈值并且为小时,与所述第一量化矩阵相比削减更少数目的高频分量的第二量化矩阵被选择。此外,利用所选出的量化矩阵来执行对图像数据的编码。因此,在高频分量已经被削减的情况下,利用用于削减较少数目的高频分量的量化矩阵来执行对图像数据的编码,并且因此,即使当重复编码/解码处理时也能够减轻图像质量的恶化。
附图说明
图1是示出图像编码设备的配置的示图;
图2A到2C是示出量化矩阵的示图;
图3是示出图像编码设备的操作的流程图;
图4是示出基本量化参数确定处理的流程图;
图5是描述用于计算量化参数和生成代码量的处理的示图(第1部分);
图6是描述用于计算量化参数和生成代码量的处理的示图(第2部分);
图7是示出用于计算与1个GOP相应的生成代码量的处理的流程图;
图8是示出I图片(intra picture,帧内图片)的生成代码量计算处理的流程图;
图9是示出量化矩阵选择操作的流程图;
图10是示出量化矩阵切换限制处理的流程图;
图11是示出第二生成代码量检测处理的流程图;
图12是示出高频分量成本(cost)计算操作的流程图;
图13是示出帧内预编码处理(intra pre-encoding processing)的处理结果的示图;
图14是示出第二校正系数计算操作的流程图;以及
图15是示出非I图片的生成代码量计算处理的流程图。
具体实施方式
以下将描述用于实现本发明的实施例。在本发明中,使用多个不同的量化矩阵来执行对图像数据的编码,并且针对每个量化矩阵来计算生成代码量。此外,还计算识别值,该识别值使得从计算出的生成代码量可以识别出是否存在许多高频分量,并且当该识别值判别出高频分量的数目大于阈值时,选择用于削减高频分量的第一量化矩阵,并且当该识别值判别出高频分量的数目不大于阈值并且较小时,选择与第一量化矩阵相比削减更少数目的高频分量的第二量化矩阵。利用这样选择的量化矩阵来执行图像数据编码,因此,图像质量的恶化得到减轻。应注意,将根据如下顺序来给出描述。
1.图像编码设备的配置
2.图像编码设备的操作
1.图像编码设备的配置
图1示出根据本发明一实施例的图像编码设备的配置。图像编码设备10包括图像重新排列处理单元11、预编码单元20、帧内预编码单元30、代码量控制单元40、延迟缓冲器50和主编码单元60。
预编码单元20包括预测模式确定单元21、DCT(离散余弦变换)单元22、量化单元23、逆量化单元24、IDCT(逆离散余弦变换)单元25、预测图像生成单元26和代码长度计算单元27。
帧内预编码单元30包括画面内预测处理单元31、DCT单元32、量化单元33、逆量化单元34、IDCT单元35、帧内预测图像生成单元36和代码长度计算单元37。此外,量化单元33由多级量化单元33-1到33-n构成,并且代码长度计算单元37由多级代码长度计算单元37-1到37-n构成。
主编码单元60包括预测处理单元61、DCT单元62、量化单元63、逆量化单元64、IDCT单元65、预测图像生成单元66和可变长度编码单元67。
在这样的配置的情况下,图像重新排列处理单元11根据例如GOP(图片组)配置将输入图像的图像数据的图片顺序从显示顺序重新排列为编码顺序。随后,图像重新排列处理单元11将以编码顺序重新排列的图像数据输出到预编码单元20、帧内预编码单元30和延迟缓冲器50。
用作第三编码单元的预编码单元20通过使用固定量化参数对图像数据进行量化来执行对生成代码量的计算,并且将计算出的生成代码量输出到代码量控制单元40。预编码单元20的预测模式确定单元21利用输入图像的图像数据以及在随后描述的预测图像生成单元26处生成的预测图像数据来确定用于每个宏块(macro block)的预测模式。此外,预测模式确定单元21使用所确定预测模式的预测图像数据来将指示出关于输入图像的图像数据的误差的差分图像数据输出到DCT单元22。
DCT单元22对差分图像执行离散余弦变换以生成DCT系数,并且将此输出到量化单元23。
量化单元23利用固定量化参数QP(p)来执行对DCT系数的量化,并且将生成的经量化的数据输出到逆量化单元24和代码长度计算单元27。
逆量化单元24对经量化的数据执行逆量化以生成DCT系数,并且将此输出到IDCT单元25。
IDCT单元25对从逆量化单元24提供来的DCT系数执行逆离散余弦变换以生成差分图像数据,并且将此输出到预测图像生成单元26。
预测图像生成单元26使用差分图像数据来生成局部经解码图像的图像数据。此外,预测图像生成单元26使用输入图像的图像数据来以宏块为增量执行当前帧和下一时间邻接帧之间的运动估计。此外,预测图像生成单元26基于运动估计结果来执行对局部经解码图像的运动补偿以从局部经解码图像的图像数据生成预测图像数据,并且将此输出到预测模式确定单元21。
代码长度计算单元27利用环境自适应可变长度编码(CAVLC)方法或环境自适应二进制算术编码(CABAC)方法来对经量化的数据执行编码,针对每个宏块计算生成代码量,并且将此输出到代码量控制单元40。
CAVLC方法是比CABAC方法更简单的方法,并且与CAVLC方法相比,CABAC方法是数据量能够被减小的方法。现在,将关于如下的情况给出描述:其中,在预编码单元20处采用可变长度编码方法来简化处理,并且在主编码单元60处采用算术编码方法来减小数据量。对于可变长度编码,某一区域的信息被有效地编码,而对于算术编码,区域能够在不被识别的情况下被有效地编码。因此,当根据可变长度编码来预测算术编码的代码量时可能引起大的误差。然而,与一般的可变长度编码相比,CAVLC能够通过自适应地改变环境来在对区域进行识别的情况下高效地编码该区域。因此,误差被减小,并且能够通过根据CAVLC方法的编码来估计在采用CABAC方法时的生成代码量。因此,也能够通过在代码长度计算单元27处采用CAVLC方法来估计在采用CABAC方法的主编码单元60处的生成代码量。应注意,代码长度计算单元27还能够通过采用CAVLC方法来抑制电路规模。
用作第一编码单元的帧内预编码单元30在所有图像数据作为I图片的情况下使用多个不同的量化参数执行量化,并且针对每一量化参数计算生成代码量以将此输出到代码量控制单元40。帧内预编码单元30的画面内预测处理单元31生成指示出输入图像的图像数据与在帧内预测图像生成单元36处生成的预测图像数据之间的误差的差分图像数据,以将此输出到DCT单元32。
DCT单元32对差分图像数据执行离散余弦变换以生成DCT系数,并且将此输出到量化单元33。
量化单元33由多个级构成,例如,量化单元33-1到33-9的九级。量化单元33-1到33-9通过将三个不同的量化参数QP(i0)、QP(i1)和QP(i2)与三个不同的量化矩阵QMF、QMN和QMS进行组合来根据九种情况执行量化。量化单元33-1到33-9将通过对DCT系数执行量化而获得的经量化数据输出到代码长度计算单元37。此外,量化单元33选择在量化单元33-1到33-9处生成的经量化数据中的一个,并且将此输出到逆量化单元34。
图2A到2C例示出量化矩阵QMF、QMN和QMS。图2A示出量化矩阵QMF。就量化矩阵QMF而言,所有矩阵值是相等的值。也就是说,量化矩阵QMF是具有平坦特性的量化矩阵。图2B示出量化矩阵QMN。就量化矩阵QMN而言,高频分量的矩阵值大于低频分量的矩阵值。也就是说,量化矩阵QMN是具有其中执行对高频分量的削减的一般特性的量化矩阵。图2C示出量化矩阵QMS。就量化矩阵QMS而言,与量化矩阵QMN相比,高频分量的矩阵值是更大的值。也就是说,量化矩阵QMS是具有其中与量化矩阵QMN相比进一步增大对高频分量的削减的特性的量化矩阵。
逆量化单元34对从量化单元33提供来的经量化数据执行逆量化以生成DCT系数数据,并将此输出到IDCT单元35。
IDCT单元35对从逆量化单元34提供来的DCT系数数据执行逆离散余弦变换以生成差分图像数据,并将此输出到帧内预测图像生成单元36。
帧内预测图像生成单元36使用差分图像数据来生成局部经解码图像的图像数据。此外,帧内预测图像生成单元36将局部经解码图像的图像数据作为预测图像数据输出到画面内预测处理单元31。
代码长度计算单元37由多个级构成,例如,对应于量化单元33的代码长度计算单元37-1到37-9的九级。代码长度计算单元37-1到37-9使用与预编码单元20的代码长度计算单元27相同的方法来执行编码以针对每个宏块计算生成代码量,并且将此输出到代码量控制单元40。
代码量控制单元40计算识别值,该识别值使得根据计算出的生成代码量可以识别出是否存在许多高频分量,并且当该识别值判别出高频分量的数目大于阈值时,选择用于削减高频分量的量化矩阵,并且当该识别值判别出高频分量的数目小于阈值时,选择削减更少数目的高频分量的量化矩阵。此外,代码量控制单元40从比特速率与GOP配置之间的关系来确定将被指派给1个GOP的目标生成代码量。
代码量控制单元40基于在预编码单元20处计算出的与1个GOP相应的生成代码量,预测用于实现目标生成代码量的量化参数以及当采用该量化参数时的生成代码量。也就是说,代码量控制单元40预测其中1个GOP的生成代码量等于或小于目标生成代码量并且最紧密地接近目标生成代码量的量化参数,以及当采用该量化参数时的生成代码量。此外,代码量控制单元40根据在帧内预编码单元30处计算出的生成代码量来校正所预测的生成代码量。此外,代码量控制单元40从校正后的生成代码量来确定用于实现目标生成代码量的量化参数。这里,如果不同于在预编码单元20处使用的量化矩阵的量化矩阵被选择,则代码量控制单元40计算校正系数。代码量控制单元40例如从在帧内预编码单元30处计算出的生成代码量中选出在使用预编码单元20处所使用的量化矩阵时的生成代码量BT,以及在使用所选择的量化矩阵时的生成代码量。代码量控制单元40从选出的两个生成代码量计算校正系数。应注意,在以下描述中,用于实现目标生成代码量的量化参数将被称作基本量化参数。
延迟缓冲器50将输入图像的图像数据延迟在代码量控制单元40处确定出基本量化参数的处理所使用的时间,并且将经延迟的图像数据输出到主编码单元60。
用作第二编码单元的主编码单元60利用在代码量控制单元40处确定的基本量化参数和量化矩阵来执行对图像数据的量化。主编码单元60的预测处理单元61选择在延迟缓冲器50处被延迟的输入图像的图像数据,并且根据由预编码单元20的预测模式确定单元21所确定的图片类型选择预测图像数据。此外,预测处理单元61生成指示出所选择的预测图像数据与输入图像的图像数据之间的误差的差分图像,并且将此输出到DCT单元62。
DCT单元62对差分图像执行离散余弦变换以生成DCT系数,并且将此输出到量化单元63。
量化单元63使用在代码量控制单元40处确定的量化参数和量化矩阵来执行对DCT系数的量化,并且将经量化的数据输出到逆量化单元64和可变长度编码单元67。
逆量化单元64对经量化的数据执行逆量化以生成DCT系数,并且将此输出到IDCT单元65。
IDCT单元65对从逆量化单元64提供来的DCT系数执行逆离散余弦变换以生成差分图像数据,并且将此输出到预测图像生成单元66。
预测图像生成单元66使用差分图像数据来生成局部经解码图像的图像数据。此外,预测图像生成单元66使用来自延迟缓冲器50的图像数据来以宏块为增量执行当前帧与下一时间邻接帧之间的运动估计。此外,预测图像生成单元66基于运动估计结果来执行对局部经解码图像的运动补偿以生成预测图像,并且将此输出到预测处理单元61。
可变长度编码单元67用CAVLC方法或CABAC方法来对经量化的数据执行编码以生成经编码的流,并且输出这些流。可变长度编码单元67例如利用CABAC方法来执行对经量化数据的编码以减小数据量,从而生成经编码的流。
2.图像编码设备的操作
接下来,将描述图像编码设备的操作。图3是示出图像编码设备的操作的流程图。
在步骤ST1,图像编码设备10执行对图片类型的确定以及图像重新排列。图像编码设备10例如根据GOP(图片组)配置来确定输入图像的图片类型。此外,图像编码设备10在图像重新排列处理单元11处将输入图像的图像数据从显示顺序重新排列为编码顺序,并且前进到步骤ST2。
在步骤ST2,图像编码设备10执行预编码处理。图像编码设备10在预编码单元20处利用所确定的图片类型来编码输入图像的图像数据以计算生成代码量,并且前进到步骤ST3。
在步骤ST3,图像编码设备10判别生成代码量是否到达了与1个GOP相应的量。如果在预编码单元20处计算出的生成代码量到达了与1个GOP相应的量,则图像编码设备10前进到步骤ST6,并且如果生成代码量尚未到达与1个GOP相应的量,则返回到步骤ST2。
在步骤ST4,图像编码设备10执行帧内预编码处理。图像编码设备10在帧内预编码单元30处编码作为I图片的输入图像的图像数据以计算生成代码量,并且前进到步骤ST5。此外,图像编码设备10在帧内预编码处理中利用多个量化参数以及多个量化矩阵来并行地执行编码以计算生成代码量。
在步骤ST5,图像编码设备10判别生成代码量是否到达了与1个GOP相应的量。如果在帧内预编码单元30处计算出的生成代码量到达了与1个GOP相应的量,则图像编码设备10前进到步骤ST6。此外,如果生成代码量尚未到达与1个GOP相应的量,则图像编码设备10返回到步骤ST4。
在步骤ST6,图像编码设备10执行要在主编码处理中使用的基本量化参数确定处理以及量化矩阵选择处理。图像编码设备10在代码量控制单元40处从通过执行预编码处理而获得的生成代码量和通过执行帧内预编码处理而获得的生成代码量来确定将被用于主编码处理的基本量化参数和量化矩阵。
在步骤ST7,图像编码设备10执行主编码处理。图像编码设备10使用在步骤ST6中确定的基本量化参数和量化矩阵来在主编码单元60处编码输入图像的图像数据。
接下来,将描述将被用于主编码处理的基本量化参数确定处理。通过基本量化参数确定处理,基于在预编码单元20处计算出的生成代码量来预测用于实现目标生成代码量的量化参数以及在采用该量化参数时的生成代码量。此外,根据在帧内预编码单元30处计算出的生成代码量来校正该预测出的生成代码量。当目标生成代码量不是由与1个GOP相应的经校正的生成代码量来实现的时,通过改变所预测出的量化参数的参数值来执行对生成代码量的预测以及对它的校正。当目标生成代码量是由与1个GOP相应的经校正的生成代码量来实现的时,取此时的量化参数作为基本量化参数。
图4例示出示出了将被用于主编码处理的基本量化参数确定处理的流程图。在步骤ST11,代码量控制单元40执行对量化参数的预测。代码量控制单元40基于在预编码单元20处计算出的生成代码量来预测用于实现目标生成代码量的量化参数,并且前进到步骤ST12。
图5和图6是描述用于计算量化参数以及生成代码量的处理的示图。代码量控制单元40根据在预编码单元20处利用固定量化参数QP(p)来执行编码时的生成代码量BT(p),将宏块分成组。此外,例如图5所示,从预先为每个组提供的指示出量化参数和生成代码量之间关系的多条预测曲线中,选出相应组的预测曲线,例如预测曲线CB。此外,例如图6所示,利用所选出的预测曲线CB来预测生成代码量等于或小于目标生成代码量BT(t)并且最紧密地接近目标生成代码量BT(t)的量化参数。
在步骤ST12,代码量控制单元40计算与1个GOP相应的生成代码量。代码量控制单元40根据在帧内预编码单元30处计算出的生成代码量来校正在步骤ST11中预测出的生成代码量,并且计算与1个GOP相应的经校正的生成代码量,并且前进到步骤ST13。
在步骤ST13,代码量控制单元40判别与1个GOP相应的生成代码量是否大于目标生成代码量。当生成代码量不大于目标生成代码量时,代码量控制单元40前进到步骤ST14,并且当生成代码量大于目标生成代码量时,前进到步骤ST15。
在步骤ST14,代码量控制单元40从所预测的量化参数来确定基本量化参数。当生成代码量和目标生成代码量之间的差较小时,例如,当该差小于在将所预测出的量化参数的值减小例如1时生成代码量的增长时,代码量控制单元40取所预测出的量化参数作为基本量化参数,并且结束处理。此外,当生成代码量和目标生成代码量之间的差较大时,代码量控制单元40减小所预测出的量化参数的值以减小该差,并且取此量化参数作为基本量化参数。
在步骤ST15,代码量控制单元40增大所预测出的量化参数的值。代码量控制单元40根据生成代码量和目标生成代码量之间的差来确定增量,增大所预测出的量化参数的值,并且前进到步骤ST16。
在步骤ST16,代码量控制单元40计算与1个GOP相应的生成代码量。代码量控制单元40使用在步骤ST15更新了的量化参数来以与步骤ST12中的方式相同的方式计算与1个GOP相应的生成代码量,并且前进到步骤ST17。
在步骤ST17,代码量控制单元40判别目标生成代码量是否可实现。如果判别出目标生成代码量是不可实现的,则代码量控制单元40返回到步骤ST13,并且如果判别出目标生成代码量是可实现的,则取在步骤ST15更新了的量化参数作为基本量化参数,并且结束处理。例如,当在采用在步骤ST15更新了的量化参数时的生成代码量等于或小于目标生成代码量,并且在采用比在步骤ST15更新了的量化参数小1的量化参数时的生成代码量超出目标生成代码量时,代码量控制单元40判别目标生成代码量是可实现的,并且取更新后的量化参数作为基本量化参数。
因此,基本量化参数能够被确定,藉此目标生成代码量能够被实现。应注意,基本量化参数确定处理并不受限于图4的流程图中示出的处理。例如,根据生成代码量和目标生成代码量之间的差来设定量化参数的增量或减量以再次计算生成代码量。此外,当生成代码量和目标生成代码量之间的差较小时,可以通过每次将量化参数增大或减小1来搜索凭借其能够实现目标生成代码量的量化参数。
图7是例示出与1个GOP相应的生成代码量计算处理的流程图。在步骤ST21,代码量控制单元40利用所预测出的量化参数来计算I图片的生成代码量,并且前进到步骤ST22。
在步骤ST22,代码量控制单元40判别下一图片是否是I图片。当下一图片不是I图片时,代码量控制单元40前进到步骤ST23,并且当下一图片是I图片时,结束与1个GOP相应的生成代码量计算处理。
在步骤ST23,代码量控制单元40使用预测出的量化参数来计算非I图片(即P图片或B图片)的生成代码量,并且返回到步骤ST22。
接下来,将描述用于利用所预测出的量化参数来预测I图片的生成代码量以及非I图片的生成代码量的处理。
在利用所预测出的量化参数来预测I图片的生成代码量的情况下,代码量控制单元40基于预编码处理的生成代码量来预测在采用所预测出的量化参数时的生成代码量。该预测出的生成代码量将被称作第一生成代码量。此外,代码量控制单元40从在帧内预编码处理中获得的生成代码量来计算在采用所预测出的量化参数时的生成代码量。该计算出的生成代码量将被称作第二生成代码量。代码量控制单元40从第一生成代码量和第二生成代码量计算校正系数。此外,代码量控制单元40用计算出的校正系数来校正第一生成代码量,并且取校正后的第一生成代码量作为在采用所预测出的量化参数时I图片的生成代码量。此外,代码量控制单元40计算指示出I图片中的高频分量状态的高频分量成本,并且使用计算出的高频分量成本来执行对第一生成代码量的校正。
在利用所预测出的量化参数来预测非I图片的生成代码量的情况下,代码量控制单元40基于预编码处理的生成代码量来预测在采用所预测出的量化参数时的生成代码量。该预测出的生成代码量将被称作第三生成代码量。此外,代码量控制单元40计算非I图片中的校正系数,使用该校正系数来执行对第三生成代码量的校正,并且取校正后的第三生成代码量作为在采用所预测出的量化参数时的非I图片的生成代码量。
图8是示出在采用所预测出的量化参数时对I图片的生成代码量计算处理的流程图。
在步骤ST41,代码量控制单元40预测第一生成代码量。代码量控制单元40预测在采用所预测出的量化参数时的生成代码量,取此生成代码量作为第一生成代码量,并且前进到步骤ST42。例如,如图6所示,代码量控制单元40使用所选出的预测曲线CB来预测凭借其生成代码量的值等于或小于目标生成代码量BT(t)并且最紧密地接近目标生成代码量BT(t)的量化参数,并且预测在采用该预测出的量化参数时的生成代码量。也就是说,代码量控制单元40取所预测量化参数QP(t)的生成代码量BT(pt)作为第一生成代码量,并且前进到步骤ST42。应注意,量化参数QP(p)应当被预先设定为较小的值以使得在利用量化参数QP(p)执行编码时的生成代码量变得大于目标生成代码量。如果这样设定量化参数QP(p),则基本量化参数能够被设定以减小等于或小于目标生成代码量并且最紧密地接近目标生成代码量的生成代码量。
在步骤ST42,代码量控制单元40执行量化矩阵选择操作。图9是示出量化矩阵选择操作的流程图。在步骤ST51,代码量控制单元40判别预编码单元20的生成代码量是否等于或大于上限值。当生成代码量小于上限值时,代码量控制单元40前进到步骤ST52,并且当生成代码量等于或大于上限值时,前进到步骤ST54。
在步骤ST52,代码量控制单元40判别预编码单元20的生成代码量是否等于或小于下限值。当生成代码量大于下限值时,代码量控制单元40前进到步骤ST53,并且当生成代码量等于或小于下限值时,前进到步骤ST56。
在步骤ST53,代码量控制单元40判别是否存在许多高频分量。代码量控制单元40计算识别值,该识别值使得从帧内预编码单元30的生成代码量可以识别出是否存在许多高频分量。代码量控制单元40计算在采用量化矩阵QMN时的生成代码量相比于采用量化矩阵QMF时的生成代码量的百分比,并且将此设定为识别值。如果判别出计算出的识别值大于阈值THva,那么存在许多高频分量,则代码量控制单元40前进到步骤ST55,并且如果判别出高频分量的数目较少,则前进到步骤ST56。
在步骤ST54,代码量控制单元40选择量化矩阵QMS。因为预编码单元20的生成代码量等于或大于上限值,所以代码量控制单元40选择图2C中示出的量化矩阵QMS。当这样选择量化矩阵QMS时,高频分量被大幅削减,并且生成代码量被削减。
在步骤ST55,代码量控制单元40选择量化矩阵QMN。因为预编码单元20的生成代码量被包括在上限值和下限值之间的范围内,并且高频分量的数目被确定为较少,因此代码量控制单元40选择图2B中示出的量化矩阵QMN,该量化矩阵QMN是通常采用的量化矩阵。
在步骤ST56,代码量控制单元40选择量化矩阵QMF。即使当预编码单元20的生成代码量等于或小于下限值,或者被包括在上限值和下限值之间的范围内时,因为高频分量的数目被确定为较小,所以代码量控制单元40选择图2A中示出的量化矩阵QMF。当这样选择量化矩阵QMF时,可以防止低频分量或高频分量被削减。
当判别出高频分量的数目较大时,代码量控制单元40选择用于削减高频分量的量化矩阵QMN,并且当判别出高频分量的数目较小时,选择用于削减更少数目的高频分量的量化矩阵QMF。因此,例如,高频分量已经通过编码和解码处理而被削减的图像不经历使用用于削减高频分量的量化矩阵的编码,藉此能够防止图像质量恶化。此外,当在预编码单元20处计算出的生成代码量等于或大于上限值时,用于与量化矩阵QMN相比削减更多数目的高频分量的量化矩阵QMS被选择,藉此用于削减生成代码量的量化矩阵能够被选择。
应注意,就在图9中示出的量化矩阵选择操作而言,虽然根据生成代码量执行了对量化矩阵的选择,但是可以根据在步骤ST41中计算出的量化参数QP(t)的值来执行对量化矩阵的选择。例如,在步骤ST51,当量化参数QP(t)的值小于第一参数值时,在步骤ST54,量化矩阵QMS被选择。此外,在步骤ST51,当量化参数QP(t)的参数值大于预定的第二值(比第一值更大的值)时,在步骤ST56,量化矩阵QMF可以被选择。
当量化矩阵选择操作在步骤ST42结束时,代码量控制单元40前进到步骤ST43。
在步骤ST43,代码量控制单元40执行量化矩阵切换限制处理。代码量控制单元40执行量化矩阵切换限制处理以防止例如因针对GOP内的类似图像选择不同的量化矩阵以及频繁执行量化矩阵的切换而使得图像质量变得不稳定。
图10是示出量化矩阵切换限制处理的流程图。在步骤ST61,代码量控制单元40判别GOP内的所有图片是否选择了相同的量化矩阵。当GOP内的所有图片未选择相同的量化矩阵时,代码量控制单元40前进到步骤ST62。此外,当GOP内的所有图片选择了相同量化矩阵时,代码量控制单元40结束切换限制处理。
在步骤ST62,代码量控制单元40搜索被最频繁地采用的最频繁的量化矩阵。代码量控制单元40取GOP内被最频繁地采用的量化矩阵作为最频繁的量化矩阵QMmx,并且前进到步骤ST63。
在步骤ST63,代码量控制单元40判别是否存在两个或更多个最频繁的量化矩阵QMmx。当存在两个或更多个最频繁的量化矩阵QMmx时,代码量控制单元40前进到步骤ST64,并且当存在单个最频繁的量化矩阵QMmx时,前进到步骤ST66。
在步骤ST64,代码量控制单元40判别量化矩阵QMN是否被包括在最频繁的量化矩阵QMmx中。当量化矩阵QMN被包括在最频繁的量化矩阵QMmx中时,代码量控制单元40前进到步骤ST65。此外,当量化矩阵QMN不被包括在最频繁的量化矩阵QMmx中时,即如果量化矩阵QMF和量化矩阵QMS已经被选择作为最频繁的量化矩阵QMmx,则代码量控制单元40结束稳定性控制操作。如果量化矩阵QMF和量化矩阵QMS已经被选择作为最频繁的量化矩阵QMmx,则对选择了量化矩阵QMF的图片和选择了量化矩阵QMS的图片作出其中生成代码量完全不同的估计,并且图像不会彼此类似。因此,稳定性控制操作结束。
在步骤ST65,代码量控制单元40将量化矩阵QMN设定为最频繁的量化矩阵QMmx,并且前进到ST66。
在步骤ST66,代码量控制单元40从GOP的头部起执行对量化矩阵的再次检查,并且前进到步骤ST67。
在步骤ST67,代码量控制单元40判别量化矩阵QM是否等于最频繁的量化矩阵QMmx。当图片的量化矩阵QM不等于最频繁的量化矩阵QMmx时,代码量控制单元40前进到步骤ST68,并且当二者相等时,前进到步骤ST70。
在步骤ST68,代码量控制单元40判别量化矩阵QM或者最频繁的量化矩阵QMmx是否是量化矩阵QMN。当量化矩阵QM或者最频繁的量化矩阵QMmx是量化矩阵QMN时,代码量控制单元40前进到步骤ST69。此外,当二者都不是量化矩阵QMN时,代码量控制单元40前进到步骤ST70。也就是说,当量化矩阵QM和最频繁的量化矩阵QMmx中的一个是量化矩阵QMF,并且另一个是量化矩阵QMS时,如上所述,图像被估计为不会彼此类似,并且因此代码量控制单元40前进到步骤ST70。
在步骤ST69,代码量控制单元40改变用于执行对量化矩阵的再次选择的确定条件。代码量控制单元40将在图9的步骤ST51中采用的上限值或者在步骤ST53中采用的阈值THva改变为这样的值:其中在具有与在最频繁的量化矩阵被选择时的图片类似的图像的图片中选择最频繁的量化矩阵。此外,代码量控制单元40使用改变后的上限值或阈值THva来再次执行对量化矩阵的选择,并且前进到步骤ST70。代码量控制单元40利用预定的校正值来执行例如上限值或阈值THva的加法/减法,从而改变上限值或阈值THva。
在步骤ST70,代码量控制单元40判别当前图片是否是GOP的最后的图片。当当前图片不是最后的图片时,代码量控制单元40返回到步骤ST67,并且在GOP的最后的图片时结束切换限制处理。
如果这样执行量化矩阵限制处理,则对于GOP内的类似图像,相同量化矩阵被选择,并且因此量化矩阵的切换被减少并且图像质量能够稳定化。
在步骤ST44,代码量控制单元40执行对第二生成代码量的计算。代码量控制单元40从在帧内预编码单元30处计算出的生成代码量检测量化参数QP(t)下的生成代码量BT(it),并且取此作为第二生成代码量。这里,在预编码单元20处采用量化矩阵QMN的情况下,代码量控制单元40从在使用量化参数QP(i0)到QP(i2)以及量化矩阵QMN执行编码时的生成代码量BT(i0N)、BT(i1N)和BT(i2N)来检测量化参数QP(t)下的生成代码量BT(it),并取此作为第二生成代码量。
图11是示出第二生成代码量检测处理的流程图。在步骤ST81,代码量控制单元40从在帧内预编码处理中所采用的量化参数中检测最紧密地接近所预测出的量化参数的量化参数。代码量控制单元40例如从量化参数QP(i0)到QP(i2)中检测最紧密地接近量化参数QP(t)的量化参数,并且取此作为量化参数QP(ia),并且前进到步骤ST82。
在步骤ST82,代码量控制单元40从在帧内预编码处理中所采用的量化参数中检测第二最紧密地接近所预测出的量化参数的量化参数。代码量控制单元40例如从量化参数QP(i0)到QP(i2)中检测第二最紧密地接近量化参数QP(t)的量化参数,并且取此作为量化参数QP(ib),并且前进到步骤ST83。
在步骤ST83,代码量控制单元40计算在采用所预测出的量化参数时的生成代码量。代码量控制单元40使用在采用量化参数QP(ia)和量化矩阵QMN时的生成代码量BT(iaN)以及在采用量化参数QP(ib)和量化矩阵QMN时的生成代码量BT(ibN)来执行内插处理。代码量控制单元40执行作为内插处理的线性内插、曲线内插等,以计算所预测出的量化参数QP(t)的生成代码量BT(it)。
代码量控制单元40这样计算了第二生成代码量BT(it),并且在图8中从步骤ST44前进到步骤ST45。
在步骤ST45,代码量控制单元40计算第一校正系数。代码量控制单元40使用从预编码处理结果检测出的第一生成代码量BT(pt)和从帧内预编码处理结果检测出的第二生成代码量BT(it)来执行表达式(1)的计算以计算第一校正系数C(i),并且前进到步骤ST46。
C(i)=BT(it)/BT(pt)...(1)
在步骤ST46,代码量控制单元40计算高频分量成本。代码量控制单元40计算指示出I图片中的高频分量的状态的高频分量成本H(i)。
图12是示出高频分量成本计算操作的流程图。此外,图13示出帧内预编码单元的输出。
在图12中,在步骤ST91,代码量控制单元40选择帧内预编码处理中的量化参数的最小值。例如,如图13所示,就帧内预编码处理而言,如果量化参数QP(i0)、QP(i1)和QP(i2)(QP(i0)<QP(i1)<QP(i2))被采用,则代码量控制单元40选择量化参数QP(i0),并且前进到步骤ST92。
在步骤ST92,代码量控制单元40选择当采用最小量化参数和从高频到低频的量化步长为平坦的量化矩阵时的生成代码量。例如,量化矩阵QMF将是矩阵值为固定值并且从高频到低频的量化步长平坦的矩阵。量化矩阵QMN将是其中高频的矩阵值是比低频的矩阵值更大的值并且与低频相比高频被粗略地量化的矩阵。量化矩阵QMS将是这样的矩阵:其中高频的矩阵值与量化矩阵QMN相比是更大的值,并且量化是在与量化矩阵QMN相比高频衰减陡峭的状态中执行的。在这种情况下,当量化参数QP(i0)被选择为最小的量化参数时,代码量控制单元40选择在采用量化参数QP(i0)和量化矩阵QMF时的生成代码量BT(i0F),并且前进到步骤ST93。
在步骤ST93,代码量控制单元40选择在采用最小的量化参数和用于与低频相比粗略地量化高频的常用量化矩阵时的生成代码量。例如,代码量控制单元40选择在采用量化参数QP(i0)和量化矩阵QMN时的生成代码量BT(i0N),并且前进到步骤ST94。
在步骤ST94,代码量控制单元40计算高频分量成本。代码量控制单元40执行表达式(2)的计算来计算高频分量成本H(i)。
H(i)=BT(i0F)/BT(i0N)...(2)
当在图8的步骤ST46中这样计算了高频分量成本时,代码量控制单元40前进到步骤ST47,并且执行对第二校正系数的计算。第二校正系数是用于将所预测出的生成代码量校正为在采用在主编码单元60处所使用的量化矩阵时的生成代码量的校正系数。应注意,在主编码单元60处所使用的量化矩阵是在步骤ST42和ST43中针对每个图片选出的量化矩阵,并且在以下的描述中将作为量化矩阵QMW。
图14是示出第二校正系数计算操作的流程图。在步骤ST101,代码量控制单元40判别所选出的矩阵QMW是否是量化矩阵QMN。当所选出的量化矩阵QMW不是量化矩阵QMN时,代码量控制单元40前进到步骤ST102,并且当所选出的量化矩阵QMW是量化矩阵QMN时,前进到步骤ST108。
在步骤ST102,代码量控制单元40执行对量化参数的读取。代码量控制单元40读入在步骤ST41预测出的量化参数QP(t),并且前进到步骤ST103。
在步骤ST103,代码量控制单元40选择最紧密地接近在帧内预编码单元30处使用的量化参数的量化参数。代码量控制单元40例如从量化参数QP(i0)到QP(i2)中选择最紧密地接近量化参数QP(t)的参数,取此作为量化参数QP(ia),并且前进到步骤ST104。
在步骤ST104,代码量控制单元40计算量化参数QP(ia)下的系数Ma。代码量控制单元40取在量化参数QP(ia)下采用量化矩阵QMN时的生成代码量作为BT(iaN)。此外,对于量化参数QP(ia),在采用在量化矩阵选择操作中选出的量化矩阵QMM时的生成代码量被取作BT(iaM)。代码量控制单元40使用表达式(3)来计算系数Ma,并且前进到步骤ST105。
Ma=BT(iaN)/BT(iaM)...(3)
在步骤ST105,代码量控制单元40选择第二最紧密地接近在帧内预编码单元30处使用的量化参数的量化参数。代码量控制单元40例如从量化参数QP(i0)到QP(i2)中选择第二最紧密地接近量化参数QP(t)的参数,并且取此作为量化参数QP(ib),并且前进到步骤ST106。
在步骤ST106,代码量控制单元40计算量化参数QP(ib)下的系数Mb。代码量控制单元40将取在量化参数QP(ib)下采用量化矩阵QMN时的生成代码量作为BT(ibN)。此外,对于量化参数QP(ib),在采用在量化矩阵选择操作中选出的量化矩阵QMM时的生成代码量将被取作BT(ibM)。代码量控制单元40使用表达式(4)来计算系数Mb,并且前进到步骤ST107。
Mb=BT(ibN)/BT(ibM)...(4)
在步骤ST107,代码量控制单元40计算针对量化参数QP(t)的第二校正系数Mt。代码量控制单元40利用系数Ma和系数Mb执行内插处理,例如表达式(5)中示出的线性内插,以计算第二校正系数Mt。
Mt=Ma+(Mb-Ma)×(QP(t)-QP(ia))/(QP(ib)-QP(ia))...(5)
在步骤ST108,代码量控制单元40将第二校正系数Mt取作“1”。因为在预编码单元20处使用的量化矩阵和在主编码单元60处使用的量化矩阵都是量化矩阵QMN,所以代码量控制单元40将第二校正系数Mt取作“1”,然后结束处理。
如果以这种方式计算第二校正系数,例如,如图13所示,最紧密地接近量化参数QP(t)的参数是量化参数QP(i1),第二最紧密地接近量化参数QP(t)的参数是量化参数QP(i0),并且如果量化矩阵QMS已经被选择,则能够通过在BT(iaN)=BT(i1N)、BT(iaM)=BT(i1S)、BT(ibN)=BT(i0N)、BT(ibN)=BT(i0N)、BT(ibM)=BT(i0S)、QP(ia)=QP(i1)并且QP(ib)=QP(i0)的情况下执行表达式(3)到(5)的计算来计算第二校正系数Mt。
以这种方式,在图8中的步骤ST47中计算了第二校正系数之后,代码量控制单元40前进到步骤ST48,并且执行对第一生成代码量的校正。代码量控制单元40利用生成代码量BT(pt)和校正系数C(i)来执行表达式(6)的计算以计算经校正的生成代码量BT(itc)。
BT(itc)=BT(pt)×C(i)×Mt...(6)
接下来,将利用图15所示的流程图来描述在采用所预测出的量化参数时的非I图片的生成代码量计算处理。在步骤ST111,代码量控制单元40执行对第三生成代码量的检测。代码量控制单元40根据当在预编码单元20处利用固定的量化参数QP(p)执行编码时的生成代码量BT(p)将宏块分成组。此外,代码量控制单元40从预先针对每个组提供的指示出量化参数和生成代码量之间关系的多条预测曲线中选择相应组的预测曲线。此外,代码量控制单元40取通过使用所选出的预测曲线在量化参数QP(t)下已经预测出的生成代码量BT(ut)作为第三生成代码量,并且前进到步骤ST112。
在步骤ST112,代码量控制单元40计算非I图片的高频分量成本。代码量控制单元40执行与在以上图12中示出的高频分量成本计算相同的处理以计算非I图片的高频分量成本H(u)。在这种情况下,利用表达式(7)来执行对高频分量成本H(u)的计算。
H(u)=BT(i0F)/BT(i0N)...(7)
应注意,在表达式(7)中,生成代码量BT(i0F)和BT(i0N)是当使得用于计算高频分量成本的非I图片的图像数据像I图片那样经历帧内预编码处理时的生成代码量。
以这种方式,在步骤ST112计算了高频分量成本之后,代码量控制单元40前进到步骤ST113以计算第一校正系数。代码量控制单元40利用在I图片中计算出的校正系数C(i)和高频分量成本H(i)以及在步骤ST112中计算出的高频分量成本H(u)来执行表达式(8)的计算,以计算校正系数C(ic),并且前进到步骤ST114。
C(ic)=C(i)×H(i)/H(u)...(8)
在步骤ST114,代码量控制单元40执行第二校正系数计算操作。代码量控制单元40执行参考图14所描述的第二校正系数计算操作,以从对应于非I图片的帧内预编码单元30的I图片的计算出的生成代码量计算对应于非I图片的第二校正系数Mtu,并且前进到步骤ST115。
在步骤ST115,代码量控制单元40执行对第三生成代码量的校正。代码量控制单元40利用校正系数C(ic)和Mtu执行表达式(9)的计算以校正用作第三生成代码量的生成代码量BT(utc),从而计算经过校正的生成代码量BT(utc)。应注意,校正系数Mtu是利用非I图片的生成代码量以与I图片相同的方式计算出的校正系数。
BT(utc)=BT(ut)×C(ic)×Mtu...(9)
以这种方式,代码量控制单元40执行对非I图片的生成代码量的校正。此外,代码量控制单元40确定其中1个GOP的校正后生成代码量的总量等于或小于目标生成代码量并且最紧密地接近目标生成代码量的量化参数。主编码单元60利用在代码量控制单元40处确定的量化参数和量化矩阵来执行对图像数据的编码,并且输出经编码的数据。
如上所述,基于使用在预编码单元20处计算出的生成代码量和在帧内预编码单元30处计算出的生成代码量的高频分量判别结果,从多个不同的量化矩阵中选择量化矩阵,并且因此,图像质量的恶化能够被减轻。例如,根据在帧内预编码单元30处获得的结果,当在采用量化矩阵QMN时的生成代码量相比于在采用量化矩阵QMF时的生成代码量的百分比较大时,高频分量的数目也较大。也就是说,当前图像是原始(raw)图像的可能性很高。此外,当在采用量化矩阵QMN时的生成代码量相比于在采用量化矩阵QMF时的生成代码量的百分比较小时,高频分量的数目也较小。也就是说,当前图像是已经从其削减了高频分量的复制图像(dubbing image)等的可能性很高。因此,当高频分量的数目较小时,通过选择用于削减较少数目的高频分量的量化矩阵,能够减轻图像质量的恶化。此外,当在预编码单元20处计算出的生成代码量大于上限值时,用于削减进一步的更多数目的高频分量的量化矩阵应当被选择,并且当生成代码量小于下限值时,用于既不削减低频分量又不削减高频分量的量化矩阵应当被选择。这样,与其中通过单个量化参数来实现目标输出功率的情况相比,图像质量的恶化能够进一步被减轻。
此外,利用代码量控制单元40,基于通过在预编码单元20处执行预编码而计算出的生成代码量的用于实现目标生成代码量的量化参数以及在采用此量化参数时的生成代码量被预测出。此外,根据通过在帧内预编码单元30处执行预编码而计算出的生成代码量来校正所预测出的生成代码量。此外,利用代码量控制单元40,量化参数被确定以使得校正后的生成代码量实现目标生成代码量。因此,例如,在宏块的量化参数和生成代码量之间的关系随图像而改变的情况下,由此改变引起的生成代码量的预测误差被根据通过在帧内预编码单元30处执行预编码而计算出的生成代码量来校正。因此,即使当宏块的量化参数和生成代码量之间的关系随图像而改变时,也能够准确地执行对生成代码量的预测。
例如,通过执行预编码处理来执行对生成代码量的预测,并且从预测结果来确定主编码的量化参数。在这种情况下,作为预测出现误差的原因,当高频分量的数目小于估计值时,生成代码量的下降方式被改变,并且因此实际的生成代码量可以明显小于预测。具体地,当在预编码处理中固定的量化参数(p)与对应于目标生成代码量的量化参数QP(t)之间的差较大时,误差也倾向于增大。
为了校正该误差,代码量控制单元40利用通过对I图片的帧内预编码处理而获得的生成代码量。帧内预编码单元30应用多个量化参数,并且因此,与预编码单元20相比更紧密地接近所预测出的量化参数的量化参数的生成代码量能够被获得。因此,就对I图片的预测而言,所预测出的生成代码量根据在帧内预编码单元30处计算出的生成代码量而被校正。
此外,关于非I图片,不允许获得误差。然而,此误差根据图片内的高频分量的状态而波动,因此,高频分量的状态被从每个图片获得,并且非I图片的生成代码量被根据每个图片中的高频分量的状态和I图片中的高频分量的状态之间的差而校正。
这样,即使当高频分量的状态与在获得预测曲线时的高频分量状态不同时,也能够根据图片的高频分量的状态来校正生成代码量,并且能够以更准确的方式预测生成代码量。因此,例如,能够准确地执行对与1个GOP相应的生成代码量的预测。
此外,如果通过在预编码单元20处应用量化矩阵QMN而获得了生成代码量,则当不同量化矩阵被选择时,预测可能有所偏离。在这种情况下,从在帧内预编码单元30处计算出的生成代码量、通过使用在预编码单元20处使用的量化矩阵而获得的生成代码量、以及通过使用所选出的量化矩阵而获得的生成代码量来计算校正系数。因此,即使当不同于在预编码单元20处使用的量化矩阵的量化矩阵被选择时,例如对与1个GOP相应的生成代码量的预测也能够被准确地执行。
因此,在使用在代码量控制单元40处确定的基本量化参数和量化矩阵来执行编码的情况下,即使当生成代码量等于或小于目标生成代码量时,主编码单元60也能够从主编码单元60输出图像轻微恶化的经编码图像。
此外,当GOP内的每个图片的量化矩阵不同时,由数目最多的图片所使用的量化矩阵被搜索,在由数目最多的图片所使用的该量化矩阵最容易被设定的设定条件下,针对GOP内的图片执行对量化矩阵的重新设定。因此,对于类似图像,能够防止频繁地执行量化矩阵切换,并且因此,经编码图像的图像质量能够稳定化。
此外,可以通过硬件、软件或二者的组合配置来执行本说明书中描述的一系列处理。在通过软件执行处理的情况下,可以通过将记录了处理序列的程序安装在计算机内的容宿于专用硬件中的存储器中来执行该程序,或者可以通过将该程序安装在能够执行各种类型的处理的通用计算机中来执行该程序。
例如,程序可以被预先记录在用作记录介质的硬盘或ROM(只读存储器)中,或者可以被临时地或永久地存储(记录)在诸如软盘、CD-ROM(紧致盘只读存储器)、MO(磁光)盘、DVD(数字多功能盘)、磁盘、半导体存储器等之类的可移动介质中。这样的可移动介质可以作为所谓的套装软件而提供。
应注意,除了从诸如上述介质之类的可移动记录介质被安装到计算机中之外,程序可以无线地或者经由诸如LAN(局域网)、因特网等之类的网络通过线缆从下载站点被传输到计算机。计算机能够接收这样传输的程序以将其安装到诸如内置硬盘等之类的记录介质上。
本申请包含与2009年7月27日递交到日本专利局的日本在先专利申请JP 2009-173910中公开的主题有关的主题,该日本在先专利申请的全部内容通过引用而被结合于此。
应注意,不以受限于本发明的上述实施例的方式来解释本发明。通过本发明的实施例,以例示模式公开了本发明,并且显然本领域中的技术人员能够想到各种修改或变更而不背离本发明的实质和精神。也就是说,为了理解本发明的实质和精神,应当参考权利要求。

Claims (8)

1.一种图像编码设备,包括:
第一编码单元,被配置为利用多个不同的量化矩阵来执行对图像数据的编码,以针对各个所述量化矩阵来计算生成代码量;
代码量控制单元,被配置为计算使得从在所述第一编码单元处计算出的生成代码量可以识别出是否存在许多高频分量的识别值,并且被配置为在该识别值判别出高频分量的数目大于阈值时选择用于削减高频分量的第一量化矩阵,并且被配置为在该识别值判别出所述高频分量的数目不大于所述阈值并且较小时选择与所述第一量化矩阵相比削减更少数目的高频分量的第二量化矩阵;以及
第二编码单元,被配置为利用在所述代码量控制单元处选出的量化矩阵来执行对所述图像数据的编码。
2.根据权利要求1所述的图像编码设备,还包括:
第三编码单元,被配置为利用固定的量化参数和固定的量化矩阵来执行对图像数据的编码以计算生成代码量;
其中,所述代码量控制单元当在所述第三编码单元处计算出的生成代码量等于或大于上限值时选择与所述第一量化矩阵相比削减更多数目的高频分量的第三量化矩阵。
3.根据权利要求2所述的图像编码设备,其中,所述代码量控制单元针对图片组中的每个图片执行对量化矩阵的选择,并且当量化矩阵在图片组内不同时,搜索由数目最多的图片所使用的量化矩阵作为最频繁的量化矩阵,并且所述阈值和所述上限值被改变为使得针对如下图片选择所述最频繁的量化矩阵的值,以再次执行对量化矩阵的选择:该图片的图像类似于在所述最频繁的量化矩阵被选择时的图片的图像。
4.根据权利要求1所述的图像编码设备,还包括:
第三编码单元,被配置为利用固定的量化参数和固定的量化矩阵来执行对图像数据的编码以计算生成代码量;
其中,所述第一编码单元利用多个不同的量化参数来执行对所述生成代码量的计算,
并且其中,所述代码量控制单元基于在所述第三编码单元处计算出的生成代码量执行对用于实现目标生成代码量的量化参数以及在使用该量化参数时的生成代码量的预测,根据在所述第一编码单元处计算出的生成代码量来校正该预测出的生成代码量,并且确定量化参数以使得校正后的生成代码量实现所述目标生成代码量;
并且其中,所述第二编码单元利用在所述代码量控制单元处确定的量化参数来执行对所述图像数据的编码。
5.根据权利要求4所述的图像编码设备,其中,所述第一编码单元利用在所述第三编码单元处使用的量化矩阵和不同于该量化矩阵的量化矩阵作为所述多个不同的量化矩阵来执行所述生成代码量的计算,
并且其中,所述代码量控制单元从在所述第一编码单元处使用的多个不同量化矩阵中执行对量化矩阵的选择,并且当该选出的量化矩阵不同于在所述第三编码单元处使用的量化矩阵时,从在所述第一编码单元处计算出的生成代码量来计算校正系数,并且利用所述校正系数来校正所述预测出的生成代码量。
6.根据权利要求5所述的图像编码设备,其中,所述代码量控制单元为所述校正系数设定如下系数:该系数指示出在使用所述选出的量化矩阵时的生成代码量相比于在使用在所述第三编码单元处使用的固定的量化矩阵时的生成代码量的百分比。
7.根据权利要求6所述的图像编码设备,其中,所述代码量控制单元利用最紧密地接近所述预测出的量化参数的量化参数的所述系数和第二最紧密地接近所述预测出的量化参数的量化参数的所述系数来执行内插处理,以计算所述预测出的量化参数的所述校正系数。
8.一种图像编码方法,包括以下步骤:
由第一编码单元执行的第一编码,利用多个不同的量化矩阵来编码图像数据,以针对各个所述量化矩阵来计算生成代码量;
通过代码量控制单元计算使得从在所述第一编码单元处计算出的生成代码量可以识别出是否存在许多高频分量的识别值,在该识别值判别出高频分量的数目大于阈值时选择用于削减高频分量的第一量化矩阵,并且在该识别值判别出所述高频分量的数目不大于所述阈值并且较小时选择与所述第一量化矩阵相比削减更少数目的高频分量的第二量化矩阵;以及
由第二编码单元执行的第二编码,利用在所述代码量控制单元处选出的量化矩阵来编码所述图像数据。
CN201010233825.XA 2009-07-27 2010-07-20 图像编码设备和图像编码方法 Expired - Fee Related CN101969553B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009173910A JP2011029956A (ja) 2009-07-27 2009-07-27 画像符号化装置および画像符号化方法
JP2009-173910 2009-07-27

Publications (2)

Publication Number Publication Date
CN101969553A true CN101969553A (zh) 2011-02-09
CN101969553B CN101969553B (zh) 2014-12-03

Family

ID=43497316

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010233825.XA Expired - Fee Related CN101969553B (zh) 2009-07-27 2010-07-20 图像编码设备和图像编码方法

Country Status (3)

Country Link
US (1) US20110019735A1 (zh)
JP (1) JP2011029956A (zh)
CN (1) CN101969553B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104126304A (zh) * 2012-02-29 2014-10-29 索尼公司 图像处理装置和方法
CN113228652A (zh) * 2018-12-17 2021-08-06 佳能株式会社 图像编码装置、图像解码装置及其控制方法和程序

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5626272B2 (ja) * 2012-06-27 2014-11-19 Nttエレクトロニクス株式会社 量子化制御装置
JP5947641B2 (ja) * 2012-07-06 2016-07-06 キヤノン株式会社 動画像符号化装置及びその制御方法、コンピュータプログラム
JP6871727B2 (ja) 2016-11-29 2021-05-12 キヤノン株式会社 撮像装置、画像処理方法、及び、プログラム

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5781237A (en) * 1994-03-25 1998-07-14 Matsushita Electric Industrial Co., Ltd. Video coding apparatus and video coding method
US5870145A (en) * 1995-03-09 1999-02-09 Sony Corporation Adaptive quantization of video based on target code length
US5907362A (en) * 1996-01-19 1999-05-25 Nec Corporation Picture coding apparatus
CN1233134A (zh) * 1998-03-17 1999-10-27 松下电器产业株式会社 图象信号处理装置
US20050259885A1 (en) * 2004-05-24 2005-11-24 Fuji Photo Film Co., Ltd. Image processing method, apparatus and program
CN101389026A (zh) * 2007-09-12 2009-03-18 索尼株式会社 图像编码设备和图像编码方法
CN101401435A (zh) * 2006-02-13 2009-04-01 株式会社东芝 运动图像编码/译码方法、装置以及程序

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3024673B2 (ja) * 1994-10-31 2000-03-21 日本電気株式会社 データ圧縮方式
JPH1032816A (ja) * 1996-07-18 1998-02-03 Matsushita Electric Ind Co Ltd 映像符号化装置
JP4081727B2 (ja) * 1997-02-24 2008-04-30 ソニー株式会社 画像符号化装置および画像符号化方法、並びに記録装置および記録方法
EP1377065A4 (en) * 2001-03-30 2006-07-05 Sony Corp IMAGE SIGNAL QUANTIFICATION DEVICE AND ITS METHOD
WO2003084243A1 (en) * 2002-03-28 2003-10-09 Sony Corporation Image compression/encoding device, method, and program
ES2392437T3 (es) * 2004-01-30 2012-12-10 Panasonic Corporation Procedimiento de decodificación de vídeos que utiliza matrices de cuantificación adaptativas
US8135063B2 (en) * 2006-09-08 2012-03-13 Mediatek Inc. Rate control method with frame-layer bit allocation and video encoder
TWI410139B (zh) * 2007-09-12 2013-09-21 Sony Corp Image processing apparatus and image processing method
WO2009035143A1 (ja) * 2007-09-12 2009-03-19 Sony Corporation 画像処理装置及び方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5781237A (en) * 1994-03-25 1998-07-14 Matsushita Electric Industrial Co., Ltd. Video coding apparatus and video coding method
US5870145A (en) * 1995-03-09 1999-02-09 Sony Corporation Adaptive quantization of video based on target code length
US5907362A (en) * 1996-01-19 1999-05-25 Nec Corporation Picture coding apparatus
CN1233134A (zh) * 1998-03-17 1999-10-27 松下电器产业株式会社 图象信号处理装置
US20050259885A1 (en) * 2004-05-24 2005-11-24 Fuji Photo Film Co., Ltd. Image processing method, apparatus and program
CN101401435A (zh) * 2006-02-13 2009-04-01 株式会社东芝 运动图像编码/译码方法、装置以及程序
CN101389026A (zh) * 2007-09-12 2009-03-18 索尼株式会社 图像编码设备和图像编码方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104126304A (zh) * 2012-02-29 2014-10-29 索尼公司 图像处理装置和方法
CN109379589A (zh) * 2012-02-29 2019-02-22 索尼公司 图像处理装置和方法
CN109379589B (zh) * 2012-02-29 2021-06-15 索尼公司 图像处理装置和方法
CN113228652A (zh) * 2018-12-17 2021-08-06 佳能株式会社 图像编码装置、图像解码装置及其控制方法和程序
CN113228652B (zh) * 2018-12-17 2024-04-12 佳能株式会社 图像编码装置和方法、图像解码装置和方法以及存储介质

Also Published As

Publication number Publication date
US20110019735A1 (en) 2011-01-27
JP2011029956A (ja) 2011-02-10
CN101969553B (zh) 2014-12-03

Similar Documents

Publication Publication Date Title
JP5282692B2 (ja) 画像符号化装置と画像符号化方法
US7925108B2 (en) Encoding device and dynamic image recording system having the encoding device
CN101867811B (zh) 图像编码装置和图像编码方法
JP4361613B2 (ja) 可変ビットレートビデオ符号化方法及び対応するビデオ符号化装置
US8363717B2 (en) Image processing apparatus
USRE36761E (en) Variable transfer rate control coding apparatus
JP2011029953A5 (zh)
CN102271257B (zh) 图像处理设备
US20120236943A1 (en) Video encoding and decoding method and apparatus using weighted prediction
JP2001501430A (ja) 可変ビットレート・ビデオ符号化方法および対応するビデオ符号器
CN101969553B (zh) 图像编码设备和图像编码方法
CN101969555B (zh) 图像编码设备和图像编码方法
US20050243930A1 (en) Video encoding method and apparatus
CN101779469A (zh) 图像处理装置和图像处理方法
JP4795223B2 (ja) 画像処理装置
EP1102492A2 (en) Data compression
US8259801B2 (en) Methods for coding digital media data with prediction information and prediction error information being respectively carried by different bit stream sections
CN101969556B (zh) 图像编码设备和图像编码方法
US20110310975A1 (en) Method, Device and Computer-Readable Storage Medium for Encoding and Decoding a Video Signal and Recording Medium Storing a Compressed Bitstream
JP2012054818A (ja) 画像処理装置と画像処理方法
JP2018186419A (ja) トランスコーダ、トランスコード方法、及びトランスコードプログラム
AU2021103378A4 (en) A self-adaptive n-depth context tree weighting method
JPH1146348A (ja) 動画像情報記録装置及び記録方法

Legal Events

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

Granted publication date: 20141203

Termination date: 20150720

EXPY Termination of patent right or utility model