编码设备、编码方法和编码程序的制作方法

文档序号:7585852阅读:253来源:国知局
专利名称:编码设备、编码方法和编码程序的制作方法
技术领域
一般而言,本发明涉及编码设备、编码方法和编码程序。更具体地,本发明涉及能够提高展示容易注意到的视觉劣化的块的图像质量的编码设备,涉及由该编码设备采用的编码方法,以及涉及实现该编码方法的编码程序。
背景技术
伴随着近年来多媒体领域中的发展,已经提出了各种运动图像压缩编码方法。运动图像压缩编码方法的代表是MPEG(运动图像专家组)-1,2,4和H. 264 (ITU-T Q6/16VCEG)。在基于这些运动图像压缩编码方法的压缩编码处理中,原属图像被划分成多个预定区域,这些预定区域称为块(block)。这些压缩编码处理包括针对每一个块执行的运动预测处理和DCT变换处理。应当注意,在运动预测处理中,已经编码的图像数据需要与已经作为局部解码处理的结果获得的参考图像相比较。因此,必须在比较之前解码已经编码的图像数据。在遵循MPEG方法对图像执行的压缩编码处理的情况中,在许多情况中,编码量根据作为图像本身的特性的空间频率特征、场景和量化位阶(quantization scale)值而很不同。在实现具有适合于这样的图像特性的编码特征的编码设备时,对于执行来产生良好质量的图像的解码处理很重要的技术是代码量控制技术。作为代码量控制的算法,一般采用TM5(测试模型5)算法。在TM5算法中,空间活动性(spatial activity)被用作表示图像的复杂度的特征量。根据TM5算法,从GOP(图像组)中选择一个图像,并且向所选图像分配大的代码量。然后,还向所选图像的平坦部分分配大的代码量。平坦部分展示出容易注意得到的视觉劣化。即,平坦部分是具有低空间活动性的部分。因此,在预先确定的比特率范围内,可以执行用于避免图像质量劣化的代码量控制和量化控制。另外,还已经提出了以和TM5相同的方式根据图像的特征来执行量化控制的其他技术。要获得有关这些其它技术的更多信息,建议读者参考日本专利申请早期公开 No.11-196417 和 No. 2009-200871。

发明内容
在现有的量化控制中,空间活动性被用作用于提取展示出容易注意得到的视觉劣化的块的手段。由于空间活动性本身是通过波形的幅度和频率的交杂(crossbreed)获得的特征量,因此,在某些情况中,空间活动性不一定匹配展示出容易注意得到的视觉劣化的块。即,在利用空间活动性的现有量化控制中,在某些情况中不能提取包括生成高频分量的边缘的块。为解决上述问题,本发明的发明人已经提出了一种能够提高展示出容易注意得到的视觉劣化的块的图像质量的数据编码设备。另外,发明人还提出了由该数据编码设备采用的数据编码方法和实现该数据编码方法的数据编码程序。
根据本发明的第一模式,提供一种编码数据设备,该编码数据设备包括变换编码装置,变换编码装置用于将输入图像数据划分成多个块,并且对这些多个块中的每个块执行变换编码处理以便输出变换系数数据;量化位阶计算装置,该量化位阶计算装置用于基于目标代码量与实际生成代码量之间的差来计算块的量化位阶的参考值;特征量提取装置,特征量提取装置用于计算特征量并且基于计算出的特征量来计算块的该量化位阶的偏置,其中特征量表示块中的视觉劣化的可注意到(noticeability) 程度;量化位阶调节装置,量化位阶调节装置用于基于由特征量提取装置计算出来作为量化位阶的偏置的所述偏置,调节由量化位阶计算装置计算出来作为量化位阶的参考值的所述参考值;以及量化装置,量化装置用于根据由量化位阶调节装置调节出来作为量化位阶的参考值的所述参考值,针对这些块中的每个块量化由变换编码装置输出的变换系数数据。根据本发明的第一模式,还提供了一种由数据编码设备使用的数据编码方法,该数据编码设备被配置为编码输入图像数据,该方法包括以下步骤将输入图像数据划分成多个块,并且对这些多个块中的每个块执行变换编码处理以便输出变换系数数据;基于目标代码量与实际生成代码量之间的差来计算块的量化位阶的参考值;计算特征量并且基于计算出的特征量来计算块的量化位阶的偏置,其中特征量表示块中的视觉劣化的可注意到程度;基于在特征量提取步骤计算出来作为量化位阶的偏置的所述偏置,调节在量化位阶计算步骤计算出来作为量化位阶的参考值的所述参考值;以及根据在量化位阶调节步骤调节出来作为量化位阶的参考值的所述参考值,针对块中的每个块量化在变换编码步骤输出的变换系数数据。根据本发明的第一模式,还提供了一种数据编码程序,该程序由计算机执行来执行以下处理,该处理包括变换编码步骤,变换编码步骤用于将输入图像数据划分成多个块,并且对这些多个块中的每个块执行变换编码处理以便输出变换系数数据;量化位阶计算步骤,量化位阶计算步骤用于基于目标代码量与实际生成代码量之间的差来计算块的量化位阶的参考值;特征量提取步骤,特征量提取步骤用于计算特征量并且基于计算出的特征量来计算块的量化位阶的偏置,其中特征量表示块中的视觉劣化的可注意到程度;量化位阶调节步骤,量化位阶调节步骤用于基于在特征量提取步骤计算出来作为量化位阶的偏置的所述偏置,调节在量化位阶计算步骤计算出来作为量化位阶的参考值的所述参考值;以及量化步骤,量化步骤用于根据在量化位阶调节步骤调节出来作为量化位阶的参考值的所述参考值,针对块中的每个块量化在变换编码步骤输出的变换系数数据。在根据本发明第一模式提供的数据编码设备、数据编码方法和数据编码程序中, 输入图像数据被划分成多个块,并且对这多个块中的每个块执行变换编码处理以便输出变换系数数据。然后,基于目标代码量和实际生成代码量之间的差计算出块的量化位阶的参考值。随后,计算出表示块中视觉劣化的可注意到程度的特征量并且基于计算出的特征量计算出块的量化位阶的偏置。然后,基于计算出的量化位阶的偏置调节计算出的量化位阶的参考值。最后,根据调节后的量化位阶的参考值针对每个块量化输出的变换系数数据。根据本发明的第二模式,提供了一种数据编码设备,包括变换编码装置,变换编码装置用于将输入图像数据划分成多个块,并且对这些多个块中的每个块执行变换编码处理以便输出变换系数数据;整屏幕特征量提取装置,整屏幕特征量提取装置用于计算整屏幕特征量,整屏幕特征量表示输入图像数据的整个屏幕的平坦度;量化位阶计算装置,量化位阶计算装置用于基于目标代码量与实际生成代码量之间的差来计算块的量化位阶的参考值;特征量提取装置,特征量提取装置用于计算表示块的平坦度的特征量,以及根据通过块的平坦度与整个屏幕的平坦度的比较确定的相对度(用作块的平坦度的相对程度) 来计算块的量化位阶的偏置;量化位阶调节装置,量化位阶调节装置用于基于由特征量提取装置计算出来作为量化位阶的偏置的所述偏置,调节由量化位阶计算装置计算出来作为量化位阶的参考值的所述参考值;以及量化装置,量化装置用于根据由量化位阶调节装置调节出来作为量化位阶的参考值的所述参考值,针对块中的每个块量化由变换编码装置输出的变换系数数据。在根据本发明第二模式提供的数据编码设备中,输入图像数据被划分成多个块并且对这些多个块中的每个块执行变换编码处理以便输出变换系数数据。然后,计算出表示输入图像数据的整个屏幕的平坦度的整屏幕特征量。然后,基于目标代码量与实际生成代码量之间的差计算出块的量化位阶的参考值。随后,计算出表示块的平坦度的特征量,并且根据通过块的平坦度与整个屏幕的平坦度的比较确定的相对度(用作块的平坦度的相对程度),计算出块的量化位阶的偏置。然后,基于计算出的量化位阶的偏置调节计算出的量化位阶的参考值。最后,根据调节后的量化位阶的参考值针对这些块中的每个块量化输出的变换系数数据。应当注意,该数据编码程序可以通过将该程序通过传输介质发送或通过将该程序预先记录在记录介质上并将记录介质给与用户来提交给用户。该数据编码设备可以被设计为独立的设备或由组成一个设备的内部块构成。根据本发明的第一和第二模式,可以提高展示出容易注意得到的视觉劣化的块的图像质量。


图1是示出实现应用了本发明的数据编码设备的实施例的典型配置的框图;图2是示出该数据编码设备中所采用的整屏幕特征量提取部件的详细典型配置的框图;图3是示出一个屏幕的图像到多个MB (宏块)单位的典型划分的示图;图4是示出被划分成多个子块SB的宏块MB的示图5是示出每一个被设置在子块SB中的可能位置之一处的典型局部区域LB的示图;图6是示出被设置在子块SB中的可能位置之一处的典型局部区域LB的示图;图7是在对计算宏块MB的宏块动态范围MDR的处理的描述中提及的说明性示图;图8是示出该数据编码设备中所采用的特征量提取部件的详细典型配置的框图;图9是在由摆动宽度计算部件执行的处理的描述中提及的说明性示图;图10示出在量化参数确定处理的描述中提及的说明性流程图;图11示出在偏置计算处理的描述中提及的说明性流程图;图12是在由本发明的实施例提供的效果的描述中提及的说明性示图;图13是示出每一个被设置在子块SB中的可能位置之一处的其他典型局部区域LB 的示图;图14是在由本发明提供的效果的描述中提及的说明性示图;以及图15是示出实现应用了本发明的计算机的实施例的典型配置的框图。
具体实施例方式数据编码设备的典型配置图1是示出实现应用了本发明的数据编码设备1的实施例的典型配置的框图。输入图像数据被提供给数据编码设备1中所采用的输入端子11。输入图像数据是所要编码的图像的数据。输入图像数据是具有普通视频图像格式的信号。普通视频图像格式的典型示例是隔行扫描格式和逐行扫描格式。重新布置部件12将输入图像数据暂时地存储在存储器中,并且在需要时从存储器中读出数据以便将数据重新布置成对应编码-对象图像类型的帧(场)顺序。然后,重新布置部件12将被重新布置为对应编码-对象图像类型的帧(场)顺序的图像数据以MB(宏块)为单位提供给减法器13。宏块MB的大小是根据数据编码方法来确定的。例如,宏块 MB的典型大小为16X16像素或8X8像素。在该实施例的情况中,宏块MB具有16X 16像素的典型大小。如果图像数据的编码-对象图像类型是遵循内部编码方法(或帧内编码方法)的类型,则减法器13将从重新布置部件12接收的图像数据原样传递给正交变换部件14。另一方面,如果图像数据的编码-对象图像类型是遵循帧间编码方法(或帧间编码方法)的类型,则减法器13从自重新布置部件12接收的图像数据中减去由运动预测/运动补偿部件23提供的预测图像数据,并将作为相减的结果获得的图像数据差提供给正交变换部件 14。正交变换部件14对由减法器13以MB (宏块)为单位输出的数据执行正交变换处理,并且将作为正交变换处理的结果获得的变换系数数据提供给量化部件15。从以上描述显而易见,由减法器13输出的数据可以是图像数据或图像数据差。量化部件15根据从量化位阶调节部件27接收的量化参数来量化从正交变换部件 14接收的变换系数数据,将量化后的变换系数数据提供给可变长度编码部件16和逆量化部件19。可变长度编码部件16对从量化部件15接收的量化后的变换系数数据执行可变长度编码处理。然后,可变长度编码部件16将包括从运动预测/运动补偿部件23接收的运动矢量数据的数据和作为可变长度编码处理的结果获得的编码数据进行复用,并且将作为复用的结果获得的复用编码数据提供给缓冲器17。从运动预测/运动补偿部件23接收的运动矢量数据是用于运动补偿的运动矢量数据。缓冲器17是用于暂时存储从可变长度编码部件16接收的复用编码数据的存储器。复用编码数据从缓冲器17被顺次读出并被提供到输出端子18。逆量化部件19对从量化部件15接收的量化后的变换系数数据执行逆量化处理, 并将作为逆量化处理的结果获得的变换系数数据提供给逆正交变换部件20。逆正交变换部件20对从逆量化部件19接收的变换系数数据执行逆正交变换处理并且将作为逆正交变换处理的结果获得的数据提供给加法器21。如果编码-对象图像类型是遵循帧内编码方法(或帧内编码方法)的类型,则加法器21将从逆正交变换部件20接收的数据原样传递给帧存储器22。在该情况中,从逆正交变换部件20接收的逆正交变换是图像数据。如果编码-对象图像类型是遵循帧间编码方法(帧间编码方法)的类型,则加法器21将从运动预测/运动补偿部件23接收的预测数据与从逆正交变换部件20接收的数据相加,并将和提供给帧存储器22。在该情况中,从逆正交变换部件20接收的数据是前述图像数据差。预测数据是作为之前的解码处理的结果获得的图像数据。因此,在该情况中,加法器21将预测数据与图像数据差相加以从图像数据差恢复图像数据。即,由加法器21作为和输出的数据是作为局部解码处理的结果获得的图像数据。作为局部解码处理获得的图像数据也称为局部解码图像数据。帧存储器22被用于通过将数据划分成多个帧单元来存储由加法器21输出的数据。从以上给出的描述显而易见,由加法器21输出的数据可以是在帧内编码处理的情况中由逆正交变换部件20输出的图像数据,或者在帧间编码处理的情况中局部解码的图像数据。在帧间编码处理的情况中,运动预测/运动补偿部件23利用由帧存储器22中所存储的局部解码图像数据表示的图像作为参考图像,并且将参考图像与由从重新布置部件12 接收的图像数据表示的当前图像相比较,以便预测运动和计算完成运动补偿的上述预测图像数据。然后,运动预测/运动补偿部件23将计算出的预测图像数据提供给减法器13。运动预测/运动补偿部件23还将计算出的预测图像数据的前述运动矢量数据提供给可变长度编码部件16。另外,运动预测/运动补偿部件23在必要时经由开关23a向加法器21提供计算出的预测图像数据。即,运动预测/运动补偿部件23根据解码-对象图像类型来控制开关 23a。更具体而言,如果编码-对象图像类型是遵循帧内编码方法的类型,即,在内部编码处理的情况中,运动预测/运动补偿部件23将开关23a置于接通状态,接通状态允许计算出的预测图像数据被提供给加法器21。整屏幕特征量被定义为示出整个屏幕的平坦度的特征量,整屏幕特征量提取部件 24采用预先确定的方法来计算针对整个屏幕上的全部像素计算出的像素值的宏块动态范围MDR的最大值ldrMax,宏块动态范围MDR的最小值IdrMin和宏块动态范围MDR的平均值 ldrAve。整屏幕特征量提取部件M暂时地存储计算出的整屏幕特征量,然后,针对由重新布置部件12重新布置和输出的帧,整屏幕特征量提取部件M将暂时保存的整屏幕特征量顺次输出给特征量提取部件26。稍后,将参考图2至图7来描述由整屏幕特征量提取部件
924用来计算整屏幕特征量的方法的细节。量化位阶计算部件25参考缓冲器17中所存储的数据的数量和其他信息以便获取帧生成代码量。然后,量化位阶计算部件25根据所获取的生成代码量来确定目标代码量。 更具体而言,量化位阶计算部件25将GOP中未编码图像的比特计数作为基并向GPO中的每个图像分配比特计数。GOP中的未编码图像包括用作比特计数分配的目标的图像。量化位阶计算部件25按照GOP中的图像的编码顺序向GOP中的图像重复地分配比特计数。以这种方式,量化位阶计算部件25为每个图像设置图像目标代码量。另外,量化位阶计算部件25还参考由可变长度编码部件16提供给缓冲器17的数据的数量以便获取块生成代码量,块生成代码量被定义为针对MB (宏块)单位生成的代码量。然后,量化位阶计算部件25最初计算为每个图像设置的目标代码量与实际生成的代码量之间的差以便使得目标代码量匹配实际生成的代码量。随后,量化位阶计算部件25从目标代码量与实际生成的代码量之间的差生成用于每个宏块MB的量化位阶的参考值。在以下描述中,量化位阶的参考值也称为Q位阶的参考值。当前图像的第j个宏块MB中的Q位阶的参考值用标号%表示。量化位阶计算部件25将计算出的Q位阶的参考值提供给特征量提取部件26和量化位阶调节部件27。量化位阶计算部件25将Q位阶的参考值%提供给特征量提取部件沈作为量化参数。另外,整屏幕特征量提取部件M向特征量提取部件26提供整屏幕特征量,整屏幕特征量是通过采用预先确定的方法针对整个屏幕计算出的像素值的宏块动态范围MDR的最大值ldrMax、宏块动态范围MDR的最小值IdrMin和宏块动态范围MDR的平均值ldrAve。另外,重新布置部件12向特征量提取部件沈提供宏块数据,宏块数据是对应于由整屏幕特征量提取部件M提供的整屏幕特征量的图像(或屏幕)的MB(宏块)单位的数据。特征量提取部件沈为由量化位阶计算部件25作为量化参数提供的Q位阶的参考值%计算偏置OFFSET,并且将偏置OFFSET输出给量化位阶调节部件27。更具体而言,特征量提取部件26根据通过宏块MB的平坦度与整个屏幕的平坦度的比较被确定用作宏块MB 的平坦度的相对度的相对度来计算偏置OFFSET。稍后,将参考包括图8的示图来描述由特征量提取部件26执行的处理的细节。量化位阶调节部件27基于从特征量提取部件沈接收的偏置OFFSET,调节作为Q 位阶的参考值…从量化位阶计算部件25接收的量化参数,以便生成Q位阶的参考值(V。 量化位阶调节部件27将Q位阶的参考值Q/提供给量化部件15。整个屏幕的图像和宏块MB的图像越平坦,则自特征量提取部件沈接收的偏置 OFFSET降低Q位阶的参考值%以在量化位阶调节部件27中生成调节后的Q位阶的参考值 Q/的程度越高。另外,调节后的Q位阶的参考值(V的越小,即,调节后的量化参数越小, 则所分配的代码的数量越多。在具有上述配置的数据编码设备1中,通过根据相对度调节量化参数来编码图像,其中相对度是通过该块上的图像的平坦度与整个屏幕上的图像的平坦度的比较来确定的,其用作该块上的图像的平坦度的相对程度。应当注意,图像的平坦度表示图像的复杂度。整屏幕特征量提取部件M的典型配置接着,将说明整屏幕特征量提取部件M的细节。
图2是示出在数据编码设备1中所采用的整屏幕特征量提取部件M的详细典型配置的框图。如该图中所示,整屏幕特征量提取部件M采用块平坦度检测部件41、最大值/最小值/平均值计算部件42和缓冲器43。块平坦度检测部件41将一个屏幕的图像划分成各自具有16 X 16像素的MB (宏块)单位。然后,对于作为该划分获得的每个宏块MB,块平坦度检测部件41计算表示宏块 MB的特征的的宏块动态范围MDR。随后,块平坦度检测部件41将宏块动态范围MDR提供给最大值/最小值/平均值计算部件42。更具体而言,宏块MB的宏块动态范围MDR是预先确定的区域中的像素的像素值的最大值与像素值的最小值之间的差。在该情况中,预先确定的区域时宏块MB。即MDR =最大值-最小值最大值/最小值/平均值计算部件42计算作为构成一个屏幕的宏块MB的宏块动态范围MDR从块平坦度检测部件41接收的宏块动态范围MDR的最大值ldrMax、宏块动态范围MDR的最小值IdrMin和宏块动态范围MDR的平均值ldrAve。然后,最大值/最小值/ 平均值计算部件42将宏块动态范围MDR的最大值ldrMax、最小值IdrMin和平均值IdrAve 提供给缓冲器43。缓冲器43用于为多个帧的每一帧存储构成一个屏幕的宏块MB的宏块动态范围 MDR的最大值ldrMax、宏块动态范围MDR的最小值IdrMin和宏块动态范围MDR的平均值 ldrAve。然后,针对对应于由重新布置部件12输出的MB (宏块)数据的帧,构成一个屏幕的宏块MB的的宏块动态范围MDR的最大值ldrMax、宏块动态范围MDR的最小值IdrMin和宏块动态范围MDR的平均值IdrAve被从缓冲器43读出并被提供给特征量提取部件26。整屏幕特征量提取部件M的处理以下,参考图3到图7来详细说明由整屏幕特征量提取部件M执行的处理。图3是示出一个屏幕的图像到多个MB (宏块)单位的典型划分。MB (宏块)单位因此是由块平坦度检测部件41执行来划分一个屏幕的图像的处理的结果。应当注意,在图 3中示出的MB(宏块)单位的情况中,提供给整屏幕特征量提取部件M的输入图像数据的分辨率是1080/60p。如果提供给整屏幕特征量提取部件M的输入图像数据的分辨率是1080/60p,则块平坦度检测部件41将一个屏幕的图像划分成8,704( = 128X68)个宏块MB。S卩,宏块 MB1 到 Iffi8704。图4是示出被划分成多个子块SB的宏块MB的示图。被划分成多个子块SB的宏块MB是宏块MB1到MB87tl4中的一个。应当注意,由于所有宏块MB1到MB87tl4都经历相同的处理,所以省略为相互区分构成一个屏幕的宏块MB而附加到参考符号MB的下标。如图中所示,块平坦度检测部件41还将宏块MB划分成4个子块SB,S卩,子块SB1 到S&。然后,在子块SB中,块平坦度检测部件41设置多个相互重叠的区域LB,每个区域 LB具有比子块SB小的预定大小。在以下描述中,具有预先确定的大小的区域LB成为局部区域LB。局部区域动态范围LDR被定义为局部区域LB的动态范围。更具体而言,局部区域 LB的局部区域动态范围LDR是局部区域LB中的像素的像素值的最大值与像素值的最小值之间的差。块平坦度检测部件41计算每个局部区域LB的局部区域动态范围LDR。图5是示出各自被设置在子块SB中可能的位置之一处的典型局部区域LB。如该图中所示,局部区域LB的预定大小是3 X 3像素。被设置在子块SB中可能的位置之一处的局部区域LB可以每次在垂直和水平方向上被偏移一个像素。因此,如果局部区域LB的预定大小是3X3像素,则本发明区域LB可以被设置在子块SB中的36个可能的位置中的任何一个处。被设置在子块SB中的36个可能的位置中的任何一个处的局部区域LB分别称为LB1到LB36。图6是示出被设置在子块SB中可能的位置之一处的典型局部区域LB的示图。通过如上所述每一次在垂直和水平方向上将局部区域LB偏移一个像素,可以获得36个局部区域LB( S卩,局部区域LB1到LB36)。块平坦度检测部件41分别计算局部区域LB1到LB36 的局部区域动态范围LDIi1到LDR36。然后,块平坦度检测部件41将局部区域动态范围LDR1 到LDR36的最大值用作代表针对子块SB计算出的局部区域动态范围LDIi1到LDR36的代表值 BDR0即,块平坦度检测部件41找到用下式表示的代表值BDR BDR = max (LDR1, LDR2, . . . , LDR36)如图4中所示,宏块MB被划分成4个子块SB,即,子块SB1到SB4。块平坦度检测部件41针对每个子块SB1到SB4执行用于找到子块SB的代表值BDR的处理。更具体而言, 块平坦度检测部件41分别针对子块SB1到巩找到代表值BDR1到BDR4。图7是在以下对计算宏块MB的宏块动态范围MDR的处理的描述中提及的说明性示图。如图中所示,块平坦度检测部件41检测分别针对宏块MB的4个子块(即,子块SB1 到SB4)计算出的代表值BDR1到BDR4的最大值,并将该最大值用作该宏块MB的宏块动态范围MDR。以与代表值BDR相同的方式,宏块动态范围MDR可以表示如下MDR = max (BDR1, BDR2, BDR3, BDR4)块平坦度检测部件41计算作为如上所述划分一个屏幕的图像的结果获得的 8,704个宏块(即,分别为宏块MB1到MB87tl4)的宏块动态范围MDIi1到MDIi87ci4。然后,块平坦度检测部件41将宏块动态范围MDR1到MDR87tl4提供给最大值/最小值/平均值计算部件42。最大值/最小值/平均值计算部件42计算分别针对8,704个宏块(即,宏块MB1 到MB87tl4)计算出的宏块动态范围MDIi1到MDI^87ci4的最大值、宏块动态范围MDIi1到MDIi87ci4的最小值和宏块动态范围MDR1到MDI^87tl4的平均值。块平坦度检测部件41将该最大值、最小值和平均值分别用作之前提到的最大值ldrMax、最小值IdrMin和IdrAve平均值。应当注意,在整个屏幕上的像素的像素值被获得之前,由整屏幕特征量提取部件 M执行的处理的结果不能被确认。因此,该处理是在一个屏幕的延迟之后由整屏幕特征量提取部件M执行的。为此,整屏幕特征量提取部件M可以利用针对比当前图像超前一个屏幕的图像计算出的最大值ldrMax、最小值IdrMin和IdrAve平均值,来分别作为针对当前图像计算出的最大值ldrMax、最小值IdrMin和IdrAve平均值的替换。以这种方式,可以消除由整屏幕特征量提取部件M执行的处理的延迟。特征量提取部件沈的详细典型配置图8是示出数据编码设备1中所采用的特征量提取部件沈的详细典型配置的框图。如该图中所示,特征量提取部件沈采用平坦度检测部件51、边缘检测部件52、色彩检测部件53、偏置计算部件M和摆动宽度计算部件55。作为整个屏幕上的宏块MB的特征量从整屏幕特征量提取部件M接收的最大值 ldrMax、最小值IdrMin和IdrAve平均值被提供给摆动宽度计算部件55。如前所述,最大值 ldrMax、最小值IdrMin和IdrAve平均值中的每一个是由整屏幕特征量提取部件M从被包括在作为编码处理的对象出现在整个屏幕上的帧中的宏块MB的宏块动态范围MDR中计算出来的。重新布置部件12将一帧的宏块MB的宏块数据提供给平坦度检测部件51、边缘检测部件52和色彩检测部件53。该帧也是包括特征量当前正被整屏幕特征量提取部件M提供给摆动宽度计算部件阳的那些宏块MB的那个帧。平坦度检测部件51计算表示宏块MB的平坦度的特征量。更具体而言,平坦度检测部件51计算已被整屏幕特征量提取部件M计算了宏块动态范围MDR的每个宏块MB的动态范围MDR。平坦度检测部件51计算输入宏块数据的每个宏块MB的动态范围MDR。在以下描述中,由平坦度检测部件51针对预先确定的宏块MB计算的动态范围MDR用标号Mdr表示以便与由整屏幕特征量提取部件M为同一宏块MB计算出的宏块动态范围MDR区分开。 平坦度检测部件51将针对宏块MB计算出的宏块动态范围Mdr提供给偏置计算部件M。边缘检测部件52检测宏块MB中的边缘的存在与否并将检测的结果提供给偏置计算部件W。更具体而言,以与整屏幕特征量提取部件M相同的方式,边缘检测部件52将宏块MB划分成4个子块SB,S卩,图4中所示出的子块SB1到SB4。然后,以与整屏幕特征量提取部件M相同的方式,边缘检测部件52如之前参考图5所说明的,在构成宏块MB的每个子块SB中设置局部区域LB1到LB36。随后,以与整屏幕特征量提取部件M相同的方式,边缘检测部件52分别针对局部区域LB1到LB^5计算局部区域动态范围LDR1到LDR36。然后, 以与整屏幕特征量提取部件M相同的方式,边缘检测部件52将局部区域动态范围LDR1到 LDR36的最大值用作代表值BDR,代表值BDR是针对子块SB计算出的局部区域动态范围LDR1 到LDR36的代表。S卩,边缘检测部件52找到用下式表示的代表值BDR BDR = max (LDR1, LDR2, . . .,LDR36)应当注意,在以下描述中,由边缘检测部件52针对被各自设置在子块SB中可能的位置之一处的局部区域LB1到LBsi计算出的局部区域动态范围LDR1到LDR36分别用标号 Ldr1到Ldr36表示,以便分别与由整屏幕特征量提取部件M分别针对被各自设置在子块SB 中可能的位置之一处的局部区域LB1到LBsi计算出的局部区域动态范围LDIi1到LDR36区分开。同样地,在以下描述中,由边缘检测部件52针对子块SB计算出的代表值BDR用标号 Bdr表示,以便将代表值Bdr与由整屏幕特征量提取部件M针对同一子块SB计算出的代表值BDR区分开。对于构成宏块MB的每个子块SB,边缘检测部件52找到局部区域计数en。局部区域计数en是满足以下等式的局部区域LB的数目Ldri > KaXBdr其中,标号Ldr表示局部区域LB的局部区域动态范围,标号Ka表示不大于1的系数并且附加到标号Ldr的下标i具有1到36范围内的值。然后,边缘检测部件52将局部区域计数en与预先确定的阈值th_en相比较来判断局部区域计数en是否大于通常为6的预定阈值th_en。如果发现局部区域计数en大于预定阈值th_en,则边缘检测部件52确定子块SB具有边缘。如果构成宏块MB的4个子块SB中的至少一个子块SB具有边缘,则边缘检测部件 52判定宏块MB具有边缘。边缘检测部件52将指示宏块MB是否具有边缘的判断结果提供给偏置计算部件M。色彩检测部件53检测宏块MB中视觉上注意得到的色彩的存在/不存在并且将检测的结果提供给偏置计算部件M。其存在/不存在将由色彩检测部件53检测的视觉上注意得到的色彩是预先确定的。其存在/不存在将由色彩检测部件53检测的视觉上注意得到的色彩的典型示例是红色和肉色。色彩检测部件53计算每一个作为显示视觉上注意得到的色彩的像素被包括在宏块MB中的像素的数目。然后,色彩检测部件53将所计算出的每一个都显示视觉上注意得到的色彩的像素的数目与预先确定的阈值th_c相比较,以便判断所计算出的这样的像素的数目是否至少等于预定阈值th_c。如果发现这样的像素的数目至少等于预定阈值th_c,则色彩检测部件53确定宏块MB具有视觉上注意得到的色彩。 然后,色彩检测部件53向偏置计算部件M提供有关宏块MB是否具有视觉上注意得到的色彩的判断结果。偏置计算部件M从平坦度检测部件51接收宏块MB的宏块动态范围Mdr。另外, 偏置计算部件M还从摆动宽度计算部件阳接收η个偏置阈值(即,阈值TH_ldr(l)到TH_ Idr (η))。这η个偏置阈值(S卩,阈值TH_ldr (1)到TH_ldr(n))用于确定具有来自平坦度检测部件51的宏块动态范围Mdr的宏块MB的平坦度的偏置Tf。这η个偏置阈值(S卩,阈值TH_ldr(l)到TH_ldr(n))用于如图9中所示,将在最大值IdrMax和最小值IdrMin之间的动态范围跨度中所包括的范围划分为(n+1)个子范围,其中η = 9。偏置计算部件M根据(n+1)个子范围中的哪一个用作作为宏块MB的宏块动态范围Mdr从平坦度检测部件51接收的宏块动态范围Mdr所属于的子范围,来确定偏置Tf。这 (n+1)个子范围已经如上所述通过利用η个偏置阈值(即,阈值TH_ldr(l)到TH_ldr(n)) 来划分最大值IdrMax和最小值IdrMin之间的动态范围跨度中的范围获得。然后,偏置计算部件M利用所确定的偏置Tf来作为对应于图像的平坦度的偏置量,以便通过下述相减或相加找到偏置OFFSET。稍后。将参考图9以及由摆动宽度计算部件55执行的处理来说明用于确定偏置Tf的方法的细节。如果边缘检测部件52已经向偏置计算部件M提供了指示边缘的存在的判定结果,则偏置计算部件讨利用预先确定的固定偏置Tc来作为与将要从偏置OFFSET减去的 (或严格地讲,要从偏置Tf减去以便找到偏置OFFSET的)图像的平坦度对应的偏置量。另一方面,如果边缘检测部件52已经向偏置计算部件M提供了指示边缘不存在的判定结果, 则偏置计算部件讨不从偏置OFFSET中减去固定偏置Tc,或严格地讲,从偏置Tf中减去固定偏置Tc以找到偏置OFFSET。同样,如果色彩检测部件53已经向偏置计算部件M提供了指示检测到视觉上注意得到的色彩的判定结果,则偏置计算部件M利用预先确定的固定偏置Tm,来作为与将要从偏置OFFSET减去的(或严格地讲,要从偏置Tf减去以便找到偏置OFFSET的)图像的色彩检测相对应的偏置量。另一方面,如果色彩检测部件53已经向偏置计算部件M提供了指示没有检测到视觉上注意得到的色彩的判定结果,则偏置计算部件M不从偏置OFFSET中减去固定偏置Tm,或严格地讲,从偏置Tf中减去固定偏置Tc以找到偏置OFFSET。S卩,根据宏块MB的宏块动态范围Mdr、边缘的存在/不存在和视觉上注意得到的色彩的存在/不存在,偏置计算部件M计算作为偏置计算处理的结果的偏置0FFSET(= Tf-Tc-Tm)。如果边缘检测部件52已经向偏置计算部件M提供了指示边缘不存在的判定结果,则偏置计算部件M不从偏置Tf减去固定偏置Tc以便找到偏置OFFSET。同样,如果色彩检测部件53已经向偏置计算部件M提供了指示没有检测到视觉上注意得到的色彩的判定结果,则偏置计算部件讨不从偏置Tf减去固定偏置Tm以便找到偏置OFFSET。然后, 偏置计算部件M向量化位阶调节部件27提供作为偏置计算处理的结果的偏置OFFSET。摆动宽度计算部件55接收每一个都是针对构成用作编码处理的对象的帧的宏块 MB中的每个宏块计算出的宏块动态范围MDR的最大值ldrMax、宏块动态范围MDR的最小值 IdrMin和宏块动态范围MDR的平均值ldrAve。首先,摆动宽度计算部件55利用最大值ldrMax、最小值IdrMin和平均值IdrAve 来确定用于找到对应于表示平坦度的特征量的偏置Tf的减号侧摆动宽度DS1、减号侧阈值间隔SP1、加号侧摆动宽度和加号侧阈值间隔SP2。更具体而言,摆动宽度计算部件55根据以下等式来计算减号侧摆动宽度DS1和减号侧阈值间隔SP1 DS1 = ldrAve/Ks,其中 α 彡 DS1 彡 β SP1 = (IdrAve-IdrMin) / (DS^O. 5)…(1)另外,摆动宽度计算部件55根据以下等式计算加号侧摆动宽度和加号侧阈值间隔SP2 DS2 = ldrAve/Ks,其中 0 彡彡 γSP2 = (IdrMax-IdrAve) / (DS2+ η+0. 5). . . (2)在等式(1)和O)中,参考符号Ks表示摆动宽度的预定系数,而参考符号α、β、 Y和η中的每一个表示预先确定的常量。然而,如果量化参数太大,则由量化误差引起的图像劣化是显著的。因此,常量Y被设置为比常量β小的值,使得加号侧摆动宽度被设置为相比于减号侧摆动宽度DS1的值小的值。以α = 3、β = 12、Y = 3和η = 3的情况为例。一般,等式(1)的表达式 ldrAve/Ks的值用作减号侧摆动宽度DS115然而,在该情况中,对于DS1 < 3,值3用作减号侧摆动宽度DS115对于3彡DS1彡12,表达式ldrAve/Ks的值用作减号侧摆动宽度DS115对于12 > 031;值12用作减号侧摆动宽度DS115同样,等式O)的表达式ldrAve/Ks的值被用作加号侧摆动宽度DS2。然而,在该情况中,对于0彡此2彡3,等式O)的表达式ldrAve/Ks的值用作加号侧摆动宽度0&,而对于> 3,值3用作加号侧摆动宽度DS2。然后,摆动宽度计算部件55使用宏块动态范围MDR的最小值IdrMiru减号侧摆动宽度DS1、减号侧阈值间隔SP1和加号侧摆动宽度和加号侧阈值间隔SP2来计算n个偏置阈值,即,前述偏置阈值TH_ldr(l)到TH_ldr(n)。S卩,摆动宽度计算部件55根据以下给出的等式C3)和(4)来计算这n个偏置阈值 (即,偏置阈值TH_ldr(l)到TH_ldr(n))。表示偏置阈值的数目的偏置阈值计数被设置为减号侧摆动宽度DS1和加号侧摆动宽度DS2的和,即,n = (DSJDS2)。
TH_ldr (η) = IdrMir^nXSP1其中η = 1 to DS1. · · (3)TH_ldr (η) = IdrMir^DS1 X SP1+(n-DS) X SP2,其中 η = (DS1+!) to (DS^DS2). . · (4)图9是示出由摆动宽度计算部件55针对被设置为根据等式(1)找到的6的减号侧摆动宽度DS1和被设置为根据等式O)找到的3的加号侧摆动宽度1) 计算出的典型η 个偏置阈值(即,偏置阈值TH_ldr⑴到TH_ldr(n))的示图。根据等式(3),摆动宽度计算部件55从宏块动态范围MDR的最小值IdrMin和减号侧阈值间隔SP1计算6个偏置阈值(即,偏置阈值TH_ldr(l)到TH_ldr(n))。即,这6个偏置阈值是以每一个等于减号侧阈值间隔SP1的间隔计算出的。在该情况中,偏置阈值的数目被设置为6,6是减号侧摆动宽度DS1的值。同样,根据等式(4),由摆动宽度计算部件55从偏置阈值TH_ldr (6)和加号侧阈值间隔SP2来计算3个偏置阈值(即,偏置阈值TH_ldr(7)到TH_ldr(9))。即,这3个偏置阈值是以每一个等于加号侧阈值间隔SP2的间隔计算出来的。在该情况中,偏置阈值的数目被设置为3,3是加号侧摆动宽度的值。然后,摆动宽度计算部件55向偏置计算部件M提供这η个偏置阈值(即,偏置阈值 TH_ldr(1)到 TH_ldr(η))。基于这η个偏置阈值(即,偏置阈值TH_ldr⑴到TH_ldr (n)),偏置计算部件M 将在宏块动态范围MDR的最大值IdrMax和宏块动态范围MDR的最小值IdrMin之间的动态范围跨度中所包括的范围划分成(η+1)个子范围,如图9中所示,η = 9。通常,某一帧的宏块动态范围Mdr的分布曲线在接近宏块动态范围MDR的平均值 IdrAve的宏块动态范围Mdr处有一个突起,如图9中的曲线所示。作为宏块MB的宏块动态范围Mdr由平坦度检测部件51提供给偏置计算部件M的宏块动态范围Mdr总是在宏块动态范围MDR的最大值IdrMax和宏块动态范围MDR的最小值IdrMin之间的范围中。偏置计算部件M根据这(η+1)个子范围中的哪一个子范围用作作为宏块MB的宏块动态范围Mdr从平坦度检测部件51接收的宏块动态范围Mdr所属于的子范围,来确定偏置Tf。宏块MB的宏块动态范围Mdr是表示宏块MB的平坦度的特征量。如果作为宏块MB的宏块动态范围Mdr由平坦度检测部件51提供给偏置计算部件 54的宏块动态范围Mdr例如在偏移阈值TH_ldr (6)和TH_ldr (7)之间,则偏置计算部件M 将偏置Tf设置为0,即,Tf = 0,其中偏移阈值TH_ldr (6)和TH_ldr (7)夹在包括宏块动态范围MDR的平均值IdrAve的子范围左右。如果作为宏块MB的宏块动态范围Mdr由平坦度检测部件51提供给偏置计算部件M的宏块动态范围Mdr例如在偏置阈值TH_ldr (5)和TH_ldr (6)之间,则偏置计算部件 54将偏置Tf设置为-1,S卩,Tf = -1。如果作为宏块MB的宏块动态范围Mdr由平坦度检测部件51提供给偏置计算部件M的宏块动态范围Mdr例如在偏置阈值TH_ldr (7) and TH_ Idr (8)之间,则偏置计算部件M将偏置Tf设置为+1,S卩,Tf = +1。如果作为宏块MB的宏块动态范围Mdr由平坦度检测部件51提供给偏置计算部件 54的宏块动态范围Mdr例如小于偏置阈值TH_ldr (1),则偏置计算部件M将偏置Tf设置为_6,即,Tf = -6。如果作为宏块MB的宏块动态范围Mdr由平坦度检测部件51提供给偏置计算部件讨的宏块动态范围Mdr例如大于偏置阈值TH_ldr (9),则偏置计算部件M将偏置Tf设置为+3,S卩,Tf = +3。在该实施例中,从宏块动态范围MDR的最小值IdrMin开始的范围被如上所述地划分成(n+1)个子范围。然而,应当注意,不是将宏块动态范围MDR的最小值IdrMin划分成 (n+1)个子范围,从宏块动态范围MDR的平均值IdrAve开始并且在宏块动态范围MDR的最大值IdrMax处结束的范围也可以被划分成(n+1)个子范围。量化参数确定处理图10示出在以下对数据编码设备1所执行的量化参数确定处理的描述中所提及的说明性流程图。当一个屏幕的输入图像数据被数据编码设备1接收到时,数据编码设备1开始执行流程图的步骤Sl处的量化参数确定处理。在步骤Sl处,整屏幕特征量提取部件24计算整屏幕特征量并将整屏幕特征量提供给特征量提取部件26。更详细而言,整屏幕特征量提取部件24计算针对整个屏幕上的全部像素计算出的像素值的宏块动态范围MDR的最大值 ldrMax、宏块动态范围MDR的最小值IdrMin和宏块动态范围MDR的平均值ldrAve,将最大值ldrMax、最小值IdrMin和平均值IdrAve提供给特征量提取部件26。然后,在接下来的步骤S2处,量化位阶计算部件25取被整屏幕特征量提取部件24 生成整屏幕特征量的一帧的预定宏块MB作为观测宏块MB。观测宏块MB是从构成被整屏幕特征量提取部件24生成整屏幕特征量的该帧的宏块中选出的宏块。观测宏块MB是由重新布置部件12输出的宏块MB。然后,在接下来的步骤S3,量化位阶计算部件25根据等式(5)计算当前GOP中可以使用的代码量Rgop。Rgop = (ni+np+nb)X (bit_rate/picture_rate). . . (5)在上式中,参考符号ni表示I图像计数,I图像计数表示在当前GOP中的更左边的I图像的数目。同样,参考符号np表示P图像计数,P图像计数表示在当前GOP中的更左边的P图像的数目。以相同方式,参考符号nb表示B图像计数,B图像计数表示在当前 GOP中的更左边的B图像的数目。另外,标号bit_rate表示目标比特率,而标号picture_ rate表示图像率。然后,在接下来的步骤S4,量化位阶计算部件25根据以下等式(6)从编码结果计算I图像的图像复杂度Xi、P图像的图像复杂度Xp和B图像的图像复杂度Xb Xi = RiXQiXp = RpXQpXb = Rb X Qb. . . (6)
在上式中,标号Ri表示用于编码I图像的处理的结果。同样,标号Rp表示用于编码P图像的处理的结果。以同样的方式,标号Rb表示用于编码B图像的处理的结果。另外, 标号Qi表示I图像的全部宏块MB中的Q位阶的平均值。同样,标号Qp表示P图像的全部宏块MB中的Q位阶的平均值。以相同的方式,标号Qb表示B图像的全部宏块MB中的Q位阶的平均值。然后,在接下来的步骤S5,量化位阶计算部件25利用根据等式(5)和(6)执行的处理的结果,来根据以下等式(7)分别为I、P和B图像计算目标代码量Ti、Tp和Tb:Ti = max {(Rgop/ (1+ ((Np X Xp) / (Xi X Kp)) + ((Nb X Xb) / (Xi X Kb)))), (bit_rate/(8X picture))}Tp = max{(Rgop/(Np+ (NbXKpXXb)/(KbXXp))), (bit_rate/(8Xpicture))}Tb = max { (Rgop/(Nb+(Np X Kb X Xp) / (Kp X Xb) )),(bit_rate/ (8Xpicture))}· · . (7)在上式中,参考符号Np表示P图像计数,P图像计数表示在当前GOP中更左边的P 图像的数目。同样,参考符号Nb表示B图像计数,B图像计数表示在当前GOP中更左边的B 图像的数目。另外,参考符号Kp和Kb中的每一个都表示一个系数。例如,系数Kp和Kb分别具有以下典型值Kp = 1. 0并且Kb = 1. 4。然后,在接下来的步骤S6,3个虚拟缓冲器分别用于Ι、Ρ和B图像来管理根据等式 (7)计算出的目标代码量与实际生成的代码量之间的差。即,在每个虚拟缓冲器中积累的数据量被反馈并被用作量化位阶计算部件25为观测宏块MB设置Q位阶的参考值Qj以使得实际生成的代码量达到它们各自的目标代码量Ti、Tp和Tb的基础。 如果当前图像的类型指示当前图像例如是P图像,则根据以下等式⑶找到目标代码量Tp a和实际生成的代码量之间的差电」(其中,下标j是指派给P图像上的宏块MB 的数字)dp, j = dp,0+Bp, H ((Tp X (j-1)) /MB_cnt) · · · (8)在上式中,参考符号C^tl表示虚拟缓冲器的初始满度。参考符号Bp^表示当代码包括第(j-Ι)个宏块MB的代码时虚拟缓冲器中所积累的代码的总量。参考符号lMB_cnt 表示MB(宏块)计数,MB(宏块)计数表示图像中的宏块MB的数目。然后,在接下来的步骤S7,量化位阶计算部件25根据以下等式(9)来利用差ClpJ 找到用于观测宏块MB的Q位阶的参考值Qj Qj = (djX31)/r. . . (9)在上式中,符号r表示以下等式r = 2Xbit_rate/picture_rate。参考符号…表示差dy。在以下描述中,差C^j仅称为差…。然后,在接下来的步骤S8,特征量提取部件26执行偏置计算处理来计算观测宏块 MB的偏置OFFSET。特征量提取部件26将观测宏块MB的偏置OFFSET作为偏置计算处理的结果提供给量化位阶调节部件27。然后,在接下来的步骤S9,量化位阶调节部件27利用偏置OFFSET来操控观测公开MB的量化位阶的参考值Qj以调节观测宏块MB的量化参数。即,量化位阶调节部件27寻找Q/ ( = Qj+OFFSET),其中参考符号Qj表示观测宏块MB的量化位阶的参考值,而参考符号Q’ j表示观测宏块MB的量化位阶的调整后参考值。然后,量化位阶调节部件27向量化部件15提供观测宏块MB的量化位阶的调整后参考值Q/。随后,在接下来的步骤S10,量化位阶计算部件25产生关于被整屏幕特征量提取部件24生成整屏幕特征量的帧是否包括还未被用作观测宏块MB的宏块MB的判断结果。如果由量化位阶计算部件25在步骤SlO产生的判断结果指示被整屏幕特征量提取部件24生成整屏幕特征量的帧包括还未被用作观测宏块MB的宏块MB,则量化参数确定处理的流程返回步骤S2。在步骤S2,量化位阶计算部件25从被整屏幕特征量提取部件24 生成整屏幕特征量的帧的宏块MB中选择还未被用作观测宏块MB的另一宏块MB,并且将所选宏块MB用作观测宏块MB。然后,步骤S3到SlO的处理被重复。实际上,只要由量化位阶计算部件25在步骤SlO处产生的判断结果指示被整屏幕特征量提取部件M生成整屏幕特征量的帧包括还未被用作观测宏块MB的宏块MB,步骤S2到SlO的处理就被反复执行。另一方面,当由量化位阶计算部件25在步骤SlO处产生的判断结果指示被整屏幕特征量提取部件M生成整屏幕特征量的帧不再包括还未被用作观测宏块MB的宏块MB时, 量化参数确定处理终止。图11示出在以下对由特征量提取部件沈在图10中示出的流程图的步骤S8处执行来计算宏块MB的偏置OFFSET的偏置计算处理的描述中提及的说明性流程图。如图中所示,流程图从摆动宽度计算部件55计算将用于确定偏置Tf的η个偏置阈值(即,偏置阈值TH_ldr(l)到TH_ldr(n))的步骤S21开始。更详细而言,摆动宽度计算部件阳根据等式(1)和( 来确定减号侧摆动宽度DS1、减号侧阈值间隔SP1、加号侧摆动宽度此2和加号侧阈值间隔SP2。然后,摆动宽度计算部件55根据等式C3)和(4)基于减号侧摆动宽度DS1、减号侧阈值间隔SP1、加号侧摆动宽度和加号侧阈值间隔SP2来计算着η个偏置阈值(即,偏置阈值TH_ldr (1)到TH_ldr (η))。随后,在接下来的步骤S22处,平坦度检测部件51通过将由特征量提取部件沈设置的偏置OFFSET设置为0来初始化偏置OFFSET。然后,在接下来的步骤S23,平坦度检测部件51计算观测宏块MB的宏块动态范围 Mdr并将宏块动态范围Mdr提供给偏置计算部件M。更具体而言,平坦度检测部件51将观测宏块MB划分成4个子块SB,S卩,子块SB1 到SB4,并且在子块SB1到SB4的每一个中设置局部区域LB1到LB36。然后,平坦度检测部件 51分别针对局部区域LB1到LB^5计算局部区域动态范围Ldr1到Ldr36。随后,平坦度检测部件51将局部区域动态范围Ldr1到LdA6的最大值用作代表值Bdr,代表值Bdr是针对子块 SB计算出的局部区域动态范围Ldr1到Ldrsi的代表。即,块平坦度检测部件41找到用下式表示的代表值Bdr = max (Ldr1, Ldr2,…,Ldr36)最后,平坦度检测部件51检测针对观测宏块MB的4个子块(即,子块SB1到SB4) 计算出的代表值Bdr1到Bdr4的最大值,并且将该最大值用作观测宏块MB的宏块动态范围 Mdr。以与代表值Bdr相同的方式,宏块动态范围Mdr可以表示如下Mdr = max (Bdr1, Bdr2, Bdr3, Bdr4)然后,在接下来的步骤S24处,边缘检测部件52检测观测宏块MB中的边缘的存在 /不存在,并且将检测的结果提供给偏置计算部件M。更具体而言,边缘检测部件52如上所述将观测宏块MB划分成4个子块SB,即子块 SB1到SB4,并且在每个子块SB1到中设置局部区域LB1到LB36。然后,边缘检测部件52 分别针对局部区域LB1到LB^5计算局部区域动态范围Ldr1到Ldr36。随后,对于构成观测宏块MB的每个子块SB,边缘检测部件52找到局部区域计数en。局部区域计数en是满足下式的局部区域LB的数目Ldri > KaXBdr其中,标号Ldr表示局部区域LB的动态范围,标号Ka表示不大于1的系数,并且附加到标号Ldr的下标具有1-36的范围中的值。然后,边缘检测部件52将局部区域计数 en与预先确定的阈值th_en相比较以便判断局部区域计数en是否大于通常为6的阈值th_en。如果发现局部区域计数en大于阈值th_en,则边缘检测部件52判定子块SB具有边缘。 如果构成观测宏块SB的4个子块SB的至少一个子块具有边缘,则边缘检测部件52判定观测宏块MB具有边缘。边缘检测部件52向偏置计算部件M提供指示观测宏块MB是否具有边缘的判断结果。然后,在接下来的步骤S25,色彩检测部件53检测观测宏块MB中视觉上注意得到的色彩的存在/不存在,并且将检测结果提供给偏置计算部件54。更具体而言,色彩检测部件53计算每一个作为显示视觉上注意得到的色彩的像素被包括在观测宏块MB中的像素的数目。然后,色彩检测部件53将每一个作为显示视觉上注意得到的色彩的像素被包括在观测宏块MB中的像素的数目与预先确定的阈值th_c相比较,以便判断计算出的这样的像素的数目是否至少等于预定阈值th_c。如果发现这样的像素的数目至少等于阈值th_c,则色彩检测部件53判定观测宏块MB具有视觉上注意得到的色彩。应当注意,步骤S23到S25的处理还可以被同时执行。然后,在接下来的步骤S26,偏置计算部件M根据观测MB的宏块动态范围Mdr、检测观测宏块MB中的边缘的存在/不存在的结果和检测观测宏块MB中的视觉上注意得到的色彩的存在/不存在的结果,来找到观测宏块MB的偏置OFFSET。随后,偏置计算部件讨将观测宏块MB的偏置OFFSET提供给量化位阶调节部件27。更具体而言,偏置计算部件M根据这(n+1)个子范围中的哪一个子范围用作作为宏块MB的宏块动态范围Mdr从平坦度检测部件51接收的宏块动态范围Mdr所属于的子范围来确定偏置Tf。这(n+1)个子范围已经作为利用如上所述的η个偏置阈值(即,阈值TH_ Idr(I)到TH_ldr(n))来划分在最大值IdrMax和最小值IdrMin之间的跨度中的范围而获得。另外,偏置计算部件M根据检测观测宏块中的边缘的存在/不存在的结果来判断是否从所产生的偏置OFFSET中减去固定偏置Tc,以及根据观测宏块MB中视觉上注意得到的色彩的展示的结果来判断是否从所产生的偏置OFFSET中减去固定偏置Tm。然后,偏置计算部件M在从偏置Tf.中减去固定偏置Tc和/或在必要时减去固定偏置Tm来将偏置OFFSET 设置为偏置Tf。在步骤S26,偏置计算部件M向量化位阶调节部件27提供作为该步骤处执行的处理的结果获得的偏置OFFSET,终止作为图10中示出的流程图的步骤S8的处理执行的偏置计算处理。在偏置计算部件M终止由图11中示出的流程图表示的偏置计算处理时,由图 10中示出的流程图表示的量化参数确定处理的流程继续进行到步骤S9。根据上述量化参数确定处理的流程,大的代码量被分配给I图像。另外,大的代码量也被分配给作为容易注意到视觉劣化的部分被包括在图像的平坦部分。因此,可以以预先确定的比特率来执行抑制图像质量的劣化的代码量控制和量化控制。另外,根据量化参数确定处理,取代根据“背景技术”中所描述的日本专利申请 No. 2009-200871号被用作特征量的方差,宏块动态范围Mdr被用来提取宏块MB的高频分量。如前所述,宏块动态范围Mdr是各个代表值Bdr的最大值,每个代表值Bdr是每一个都是针对局部区域LB中的一个计算出的局部区域DR(动态范围)Ldr的最大值。因此,可以将用于调节量化参数的特征量中的每一个用作匹配人类的实际视觉感受的特征量。本发明的效果图12是在以下对本发明所提供的效果的描述中所提及的说明性示图。通过参考该附图,以下描述说明在方差被用作用于调节量化参数的特征量的现有情况和宏块动态范围Mdr被用作用于调节量化参数的特征量的情况之间的差异。如前所述,宏块动态范围Mdr 是代表值Bdr的最大值,每个代表值Bdr是局部区域DR(动态范围)Ldr的最大值,每一个局部区域DR(动态范围)Ldr是针对局部区域LB中的一个计算出的。图12中示出的图61A到61C的每一个是沿着在宏块MB的水平方向上延伸的一行布置的像素的像素值的输入波形。图61A是表示像素值的平滑变化的典型波形。图61B是示出沿水平方向延伸的行上某一位置处的像素值的单方向陡变的典型波形。图61C是示出在水平方向上延伸的行上的分段出的像素值的朝上和朝下的陡然摆动的典型波形图.图12中示出的图62A至62C表示分别针对利用方差作为分别由图61A到61C表示的波形的特征量的现有情况计算出的评估量。由于称为方差的特征量是表示边缘大小和边缘计数(即,边缘大小X边缘计数) 的乘积的特征量,所以黑色部分的面积表示评估量。因此,利用用作特征量的方差,针对由图61C表示的波形的评估量具有和由图12中示出的图62C描绘的一样的小值,尽管事实上包括陡边缘。因此,如果方差被用作用于调节量化参数的特征量,则评估量不一定表示视觉上注意得到的边缘的大小。事实上,在某些情况中,通过将方差用作用于调节量化参数获得的评估量令人不满地与视觉评估量相反。另一方面,图12中示出的图63A到63C表示评估量,每个评估量是在数据编码设备1利用宏块动态范围Mdr作为分别由图61A到61C表示的波形的特征量的情况计算出的。 如前所述,宏块动态范围Mdr是代表值Bdr的最大值,每一个代表值Bdr是局部区域DR(动态范围)Ldr的最大值,每一个局部区域DR(动态范围)Ldr是针对局部区域LB的一个计算出的。通过如上所述利用宏块动态范围Mdr作为特征量,其中宏块动态范围Mdr是每一个都是针对局部区域LB的一个计算出的局部区域DR(动态范围)Ldr的最大值,可以故意地消除由称为方差的特征量隐含和表示的乘积(边缘大小X边缘计数)的边缘-计数项。 即,可以将作为每一个都是针对局部区域LB的一个计算出的局部区域DR(动态范围)Ldr 的最大值的宏块动态范围Mdr用作仅表示边缘大小的特征量。结果,如图12中所示,对于由图61B和61C表示的波形,计算出的评估量是大的。 即,对于视觉上注意得到的边缘,评估量可以被最大化。因此,可以将用于调节量化参数的特征量的每一个用作匹配人类的实际视觉感受的特征量。局部动态范围DR的其他示例在上述实施例中,被设置在作为划分宏块MB的结果获得的子块SB中的可能位置之一处的局部区域LB大小为3X3像素。然而,局部区域LB大小并不限于3X3像素。例如,局部区域LB可以具有1 X 2像素或2 X 1像素的最小大小。在具有1 X 2像素或2 X 1像素的最小大小的局部区域LB的情况中,局部区域LB的局部区域动态范围LDR(或Ldr)是构成被设置在子块SB中可能的位置之一处的局部区域LB的两个相邻像素之间的像素值差。图13是示出每一个被设置在子块SB中可能的位置之一处的其他典型局部区域LB 的示图。更具体地,对应于图5的图示出每个具有1X2或2X1像素的最小大小的典型局部区域LB。被设置在具有1X2像素的最小大小的子块SB中可能的位置之一处的水平局部区域LB可以每次在垂直和水平方向上被偏移1个像素。因此,水平局部区域LB可以被设置在子块SB中56个可能的位置中的任一个处。每一个被设置在子块SB中56个可能的位置之一处的水平局部区域LB分别称为在图13的顶行上的LB1到LB56。同样,被设置在具有2X1的最小大小的子块SB中的可能的位置之一处的垂直局部区域LB可以每次在垂直和水平方向上被偏移一个像素。因此,垂直局部区域LB可以被设置在子块SB中的56个可能的位置中的任一位置处。每个可以被设置在子块SB中56个可能的位置之一处的垂直局部区域LB分别被称为图13的下面一行上示出的LB/到LB56'。如上所述,具有1 X 2像素或2 X 1像素的最小大小的局部区域LB的局部区域动态范围Ldr是构成局部区域LB的两个相邻像素之间的像素值差。子块SB中的局部区域LB1 到LBai和局部区域LB/到LB56'的局部动态范围LDR(或Ldr)的最大值称为子块SB中的动态范围的代表值BDR (或Bdr)。图14对应于图12。图14也是在以下对方差被用作用于调节量化参数的特征量的现有情况和宏块动态范围Mdr被用作用于调节量化参数的特征量的情况之间的差异的描述中提到的说明性示图。宏块动态范围Mdr是代表值Bdr,每一个代表值Bdr是每一个针对局部区域LB之一计算出的局部区域DR(动态范围)Ldr的最大值。如上所述,具有1 X 2像素或2X 1像素的最小大小的局部区域LB的局部区域动态范围Ldr是构成局部区域LB的两个相邻像素之间的像素值差。图14是针对具有1X2像素或2X 1像素的最小大小的局部区域LB提供的示图,而图12是针对具有3X3像素的大小的局部区域LB提供的示图。图14示出分别替换图12中示出的图63A到63C的图64A到64C。图64A到64C 表示评估量,每一个评估量是针对代表值Bdr也被定义为局部区域动态范围Ldr的最大值的情况计算出的。然而,在该情况中,每个局部动态范围Ldr表示仅构成局部区域LB的两个相邻像素之间的像素值差。图14中示出的其余图61A到61C和62A到62C与图12中示出的图61A到6IC禾口 62A到62C分别相同。从图14中的图64A到64C显而易见,对于用图6IB和6IC中任一个表示的波形,计算出的评估量也是大的。即,对于视觉上注意得到的边缘,评估量也可以被最大化。因此, 可以将用于调节量化参数的特征量作为匹配人类的实际视觉感受的特征量。如上所述,根据由数据编码设备1执行的量化参数确定处理,即使对于和方差被用作特征量的现有情况相同的生成代码量,也可以提高展示出容易注意到的视觉劣化的宏块MB的图像质量。另外,根据量化参数确定处理,数据编码设备1计算针对整个屏幕上的全部像素计算出的像素值的宏块动态范围MDR的最大值ldrMax、宏块动态范围MDR的最小值IdrMin 和宏块动态范围MDR的平均值ldrAve。然后,数据编码设备1通过利用最大值ldrMax、最小值IdrMin和平均值IdrAve来计算η个偏置阈值(即,阈值TH_ldr(l)到TH_ldr(n))。 这η个偏置阈值(即,阈值TH_ldr(l)到TH_ldr(n))被用于确定和表示宏块MB的平坦度的特征量对应的偏置Tf。因此,量化参数可以根据通过宏块MB的平坦度与整个屏幕的平坦度的比较确定的相对度(用作宏块MB的平坦度的相对程度)被自适应地改变。结果,可以降低图像依赖问题的效果。S卩,在过去,在图像具有许多遍布整个屏幕的高频分量的情况中,整个屏幕上的量化参数平均值不可避免地增大。因此,已经提出了这样的问题,即使通过利用诸如方差之类的特征量提取出展示出容易注意到的视觉劣化的平坦部分,但是仍然无法获得提高图像质量的足够有效的效果。然而,根据由数据编码设备1 执行的量化参数确定处理,可以降低该问题的影响。应当注意,可以从数据编码设备1取消整屏幕特征量提取部件M。在该情况中,特征量提取部件26中所采用的摆动宽度计算部件55也可以省略。没有了整屏幕特征量提取部件M和摆动宽度计算部件55,平坦度检测部件51基于常量阈值TH_ldr (1)到TH_ldr (η) 来确定偏置Tf。之前描述的处理序列可以通过硬件和/或软件的执行来执行。如果上述处理序列通过软件的执行来执行,则组成该软件的程序通常可以从连接到网络或可移除记录介质的程序提供商安装到计算机。通常,计算机是被嵌入在专用硬件中的计算机或通用个人计算机等。在该情况中,计算机或个人计算机用作上述数据编码设备1。通用个人计算机是这样的个人计算机,其通常能够通过在该个人计算机中安装各种程序来执行各种功能。图15是示出用于执行该程序以执行上述处理序列的计算机的典型硬件配置的框图。如在该图中所示,计算机采用用总线104互连的CPU(中央处理单元)101、R0M(只读存储器)102和RAM(随机存取存储器)103。总线104还连接到输入/输出接口 105。输入/输出接口 105还连接到输入部件 106、输出部件107、存储部件108、通信部件109和驱动器110。输入部件106包括键盘、鼠标和麦克风,而输出部件107包括显示单元和扬声器。 存储部件108包括硬盘和/或非易失性存储器。通信部件109用作和之前提到的网络的接口。驱动器110是其上安装可移除记录介质111以由驱动器110驱动的部件。可移除记录介质111可以是磁盘、光盘、磁光盘或半导体存储器。在具有上述配置的计算机中,例如,CPU 101将存储部件108中所存储的程序预先通过输入/输出接口 105和总线104从存储部件108装载到RAM 103中,执行该程序以执行上述处理序列。被预先存储在存储部件108中的程序是通常通过将该程序例如记录在可移除记录介质111上来提交给用户的程序,可移除记录介质111被用作用于将程序提交给用户的封装介质。作为替换,被预先存储在存储部件108中的程序是通过有线或无线电通信介质从程序提供商下载的程序。无线通信介质的典型示例是局域网或互联网,而无线电通信介质的典型示例是利用数字广播卫星的通信介质。然后,作为被记录在可移除记录介质111 上的程序提交给用户的程序或者从程序提供商下载的程序被如下安装到存储部件108中。当可移除记录介质111被安装到驱动器110中时,该程序通过输入/输出接口 105 从可移除记录介质111安装到存储部件108中。作为替换,通过无线或无线电通信介质将程序从程序提供商下载到通信部件109中并且之后通信部件109通过输入/输出接口 105 将该程序转移到存储部件108,该程序被从程序提供商安装到存储部件108中。作为另一替换,程序也可以被预先存储在ROM 102和/或存储部件108中。应当注意,由计算机执行的程序是被执行来按照该发明说明书中所说明的顺序沿时间轴执行处理的程序。作为替换,由计算机执行的程序是被执行来同时执行处理或以所要求的定时执行处理的程序。通常,用于以所要求的定时执行处理的程序在该程序被调用时被执行。
本发明的实现方式不限于上述实施例。即,该实施例可以被变为多种任意修改版本,只要修改版本在不偏离本发明的实质的范围以内即可。本申请包含与2010年2月22日于日本专利局提交的日本在先专利申请JP 2010-035825中所公开的内容有关的主题,该申请的全部内容通过引用结合于此。本领域技术人员应当理解,根据设计要求和其它因素可以进行各种修改、组合、子组合和更改,只要它们在权利要求及其等同物的范围内即可。
权利要求
1.一种数据编码设备,包括变换编码装置,用于将输入图像数据划分成多个块,并且对多个块中的每个块执行变换编码处理以便输出变换系数数据;量化位阶计算装置,用于基于目标代码量与实际生成代码量之间的差来计算所述块的量化位阶的参考值;特征量提取装置,用于计算特征量并且基于计算出的特征量来计算所述块的所述量化位阶的偏置,其中所述特征量表示所述块中的视觉劣化的可注意到程度;量化位阶调节装置,用于基于由所述特征量提取装置计算出来作为所述量化位阶的偏置的所述偏置,调节由所述量化位阶计算装置计算出来作为所述量化位阶的参考值的所述参考值;以及量化装置,用于根据由所述量化位阶调节装置调节出来作为所述量化位阶的参考值的所述参考值,针对所述块中的每个块量化由所述变换编码装置输出的所述变换系数数据。
2.根据权利要求1所述的数据编码设备,其中所述特征量提取装置利用每一个被设置在所述块中的可能位置之一处的局部区域的动态范围的最大值来作为所述特征量,其中所述特征量表示所述块中的视觉劣化的可注意到程度的特征量。
3.根据权利要求2所述的数据编码设备,所述数据编码设备还具有整屏幕特征量提取装置,所述整屏幕特征量提取装置用于利用被设置在组成所述输入图像数据的整个屏幕的所述块中的每个单独块中的可能位置之一处的所述局部区域的所述动态范围的最大值,来作为代表所述单独块的代表值; 以及计算所述代表值的最大值、所述代表值的最小值和所述代表值的平均值,其中每一个所述代表值代表组成所述整个屏幕的所述块中的一个块,其中所述特征量提取装置将由所述整屏幕特征量提取装置计算出来作为所述代表值的最小值的所述最小值和由所述整屏幕特征量提取装置计算出来作为所述代表值的最大值的所述最大值之间的范围划分成多个子范围,其中每一个所述代表值代表组成所述整个屏幕的所述块中的一个块;以及根据所述子范围中的哪一个子范围用作每一个被设置在所述单独块中的可能位置之一处的所述局部区域的所述动态范围的所述最大值所属于的子范围,来计算所述量化位阶的所述偏置。
4.根据权利要求2所述的数据编码设备,其中被设置在所述块中的可能位置之一处的所述局部区域是在所述垂直或水平方向上排列的两个相邻像素。
5.根据权利要求2所述的数据编码设备,其中所述特征量提取装置检测所述块中边缘的存在/不存在以便产生检测结果来作为表示所述块中的视觉劣化的可注意到程度的特征量;以及还基于指示所述块中是否存在边缘的所述检测结果来计算所述量化位阶的偏置。
6.一种由数据编码设备使用的数据编码方法,该数据编码设备被配置为编码输入图像数据,该方法包括以下步骤将输入图像数据划分成多个块,并且对多个块中的每个块执行变换编码处理以便输出变换系数数据;基于目标代码量与实际生成代码量之间的差来计算所述块的量化位阶的参考值; 计算特征量并且基于计算出的特征量来计算所述块的所述量化位阶的偏置,其中所述特征量表示所述块中的视觉劣化的可注意到程度;基于在所述特征量提取步骤计算出来作为所述量化位阶的偏置的所述偏置,调节在所述量化位阶计算步骤计算出来作为所述量化位阶的参考值的所述参考值;以及根据在所述量化位阶调节步骤调节出来作为所述量化位阶的参考值的所述参考值,针对所述块中的每个块量化在所述变换编码步骤输出的所述变换系数数据。
7.一种数据编码程序,该程序由计算机执行来执行以下处理,所述处理包括变换编码步骤,所述变换编码步骤用于将输入图像数据划分成多个块,并且对多个块中的每个块执行变换编码处理以便输出变换系数数据;量化位阶计算步骤,所述量化位阶计算步骤用于基于目标代码量与实际生成代码量之间的差来计算所述块的量化位阶的参考值;特征量提取步骤,所述特征量提取步骤用于计算特征量并且基于计算出的特征量来计算所述块的所述量化位阶的偏置,其中所述特征量表示所述块中的视觉劣化的可注意到程度;量化位阶调节步骤,所述量化位阶调节步骤用于基于在所述特征量提取步骤计算出来作为所述量化位阶的偏置的所述偏置,调节在所述量化位阶计算步骤计算出来作为所述量化位阶的参考值的所述参考值;以及量化步骤,所述量化步骤用于根据在所述量化位阶调节步骤调节出来作为所述量化位阶的参考值的所述参考值,针对所述块中的每个块量化在所述变换编码步骤输出的所述变换系数数据。
8.一种数据编码设备,包括变换编码装置,用于将输入图像数据划分成多个块,并且对多个块中的每个块执行变换编码处理以便输出变换系数数据;整屏幕特征量提取装置,用于计算整屏幕特征量,所述整屏幕特征量表示所述输入图像数据的整个屏幕的平坦度;量化位阶计算装置,用于基于目标代码量与实际生成代码量之间的差来计算所述块的量化位阶的参考值;特征量提取装置,用于计算表示所述块的平坦度的特征量,以及根据通过所述块的平坦度与所述整个屏幕的平坦度的比较确定的相对度来计算所述块的所述量化位阶的偏置, 所述相对度用作所述块的平坦度的相对程度;量化位阶调节装置,用于基于由所述特征量提取装置计算出来作为所述量化位阶的偏置的所述偏置,调节由所述量化位阶计算装置计算出来作为所述量化位阶的参考值的所述参考值;以及量化装置,用于根据由所述量化位阶调节装置调节出来作为所述量化位阶的参考值的所述参考值,针对所述块中的每个块量化由所述变换编码装置输出的所述变换系数数据。
9.根据权利要求8所述的数据编码设备,其中所述整屏幕特征量提取装置 利用被设置在组成所述输入图像数据的整个屏幕的所述块中的每个单独块中的可能位置之一处的局部区域的动态范围的最大值,来作为代表所述单独块的代表值;以及利用所述代表值的最大值、所述代表值的最小值和所述代表值的平均值来作为所述整屏幕特征量,其中每一个所述代表值代表组成所述整个屏幕的所述块中的一个块。
10.一种数据编码设备,包括变换编码部件,所述变换编码部件被配置来将输入图像数据划分成多个块,并且对多个块中的每个块执行变换编码处理以便输出变换系数数据;量化位阶计算部件,所述量化位阶计算部件被配置来基于目标代码量与实际生成代码量之间的差来计算所述块的量化位阶的参考值;特征量提取部件,所述特征量提取部件被配置来计算特征量并且基于计算出的特征量来计算所述块的所述量化位阶的偏置,其中所述特征量表示所述块中的视觉劣化的可注意到程度;量化位阶调节部件,所述量化位阶调节部件被配置来基于由所述特征量提取部件计算出来作为所述量化位阶的偏置的所述偏置,调节由所述量化位阶计算部件计算出来作为所述量化位阶的参考值的所述参考值;以及量化部件,所述量化部件被配置来根据由所述量化位阶调节部件调节出来作为所述量化位阶的参考值的所述参考值,针对所述块中的每个块量化由所述变换编码部件输出的所述变换系数数据。
11.一种数据编码设备,包括变换编码部件,所述变换编码部件被配置来将输入图像数据划分成多个块,并且对多个块中的每个块执行变换编码处理以便输出变换系数数据;整屏幕特征量提取部件,所述整屏幕特征量提取部件被配置来计算整屏幕特征量,所述整屏幕特征量表示所述输入图像数据的整个屏幕的平坦度;量化位阶计算部件,所述量化位阶计算部件被配置来基于目标代码量与实际生成代码量之间的差来计算所述块的量化位阶的参考值;特征量提取部件,所述特征量提取部件被配置来计算表示所述块的平坦度的特征量, 以及根据通过所述块的平坦度与所述整个屏幕的平坦度的比较确定的相对度来计算所述块的所述量化位阶的偏置,所述相对度用作所述块的平坦度的相对程度;量化位阶调节部件,所述量化位阶调节部件被配置来基于由所述特征量提取部件计算出来作为所述量化位阶的偏置的所述偏置,调节由所述量化位阶计算部件计算出来作为所述量化位阶的参考值的所述参考值;以及量化部件,所述量化部件被配置来根据由所述量化位阶调节部件调节出来作为所述量化位阶的参考值的所述参考值,针对所述块中的每个块量化由所述变换编码部件输出的所述变换系数数据。
全文摘要
本发明公开了编码设备、编码方法和编码程序。该数据编码设备包括变换编码部件、量化位阶计算部件、特征量提取部件、量化位阶调节部件和量化部件。
文档编号H04N7/50GK102164280SQ20111003944
公开日2011年8月24日 申请日期2011年2月15日 优先权日2010年2月22日
发明者大塚秀树, 奥村明弘 申请人:索尼公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1