经量化数据的失真估计的制作方法

文档序号:7515305阅读:247来源:国知局
专利名称:经量化数据的失真估计的制作方法
技术领域
本发明大体上涉及数据处理,且更特定来说,涉及用于估计归因于数据量化的失真的技术。

背景技术
编码系统广泛用于在传输或存储之前处理数据。编码系统可量化输入数据以获得经量化数据且可进一步处理经量化数据以产生用于传输或存储的输出数据。经量化数据可以一组离散值来表示,且在连续离散值之间的步长可为可选择参数。较大的量化步长可导致更粗略表示的经量化数据,所述情况可导致输入数据与经量化数据之间的较大误差或较多失真。然而,较大的量化步长可允许以较少位表示经量化数据和/或可导致含有更多零的经量化数据,两种情况均可允许以较低速率发送和/或以较少存储器存储输出数据。相反,较小的量化步长可导致更精细表示的经量化数据,所述情况可导致输入数据与经量化数据之间的较小误差或较少失真。然而,较小的量化步长也可导致以更多位表示和/或含有较少零的经量化数据,两种情况均可导致以较高速率发送和/或以较多存储器存储输出数据。
通常在经量化数据的速率与失真之间存在折衷。可能需要有效地估计失真以使得可以速率失真折衷选择适当的量化步长。


发明内容
本文中描述用于有效地估计归因于数据量化的失真的技术。在一方面中,可针对待量化的一组系数而获得具有多个频段的直方图,所述组系数可对应于宏块、帧等。直方图的频段的数目可基于可用于量化一组系数的量化步长的数目来确定。直方图频段的开始值和结束值可基于量化步长来确定,其可对应于H.264等中的不同量化参数(QP)值。
可基于直方图和多个频段的平均失真来估计归因于一组系数的量化的失真。在一种设计中,每一频段中的系数的数目可乘以那个频段的平均失真以获得每频段失真。每一频段的平均失真可指示从量化频段中的系数所获得的量化系数误差的平均能量。所有频段的每频段失真可经累加以获得经累加失真。可直接将经累加失真提供为所述组系数的所估计失真。经累加失真也可用校正因子缩放以获得所估计失真,其中校正因子可基于量化步长来确定。
在另一方面中,基于速率失真分析而为一组译码元素选择一组量化步长。译码元素可对应于宏块、帧等。可(例如)在可用于量化的量化步长中的每一者下针对每一译码元素估计归因于所述组译码元素的量化的失真。也可(例如)在可用量化步长中的每一者下针对每一译码元素估计用于所述组译码元素的速率。可基于所述组译码元素在可用量化步长下的所估计失真和所估计速率而为一组译码元素选择一组量化步长,例如以使得在给定总速率下使所述组译码元素的总失真最小化。
以下更详细地描述本发明的各种方面和特征。



图1展示编码系统的框图。
图2展示用于编码系统的一组量化步长。
图3A展示用于待量化的一组系数的直方图表。
图3B展示平均失真对直方图频段的失真表。
图4A和图4B展示三种类别的宏块的所估计失真。
图5展示校正因子对QP值的曲线。
图6展示在应用校正因子之后所估计失真的百分比误差对QP值的曲线。
图7展示用于估计归因于量化的失真的过程。
图8展示用于选择量化步长的过程。
图9展示无线通信装置的框图。

具体实施例方式 本文所述的失真估计技术可用于能够量化数据的各种编码系统。所述技术也可用于各种类型的数据,例如视频数据、音频数据等。所述技术可进一步用于各种编码标准,例如JPEG、MPEG-1、MPEG-2、MPEG-4(部分2)、H.261、H.263、H.264等。为清晰起见,以下针对题为“用于普通视听服务的高级译码(Advanced video coding for genericaudiovisual services)”的H.264描述技术的某些方面,H.264通常还被称为MPEG-4第10部分。
图1展示可用于H.264和可能其它标准的编码系统100的框图。编码系统100接收待编码的当前帧Fn且产生所述帧的编码数据。一般来说,帧可具有任何高度和宽度尺寸且可被划分为多个宏块。对于H.264,每一宏块可含有16×16个图元(像素)且可进一步被划分为十六个4×4块。宏块可包括用于亮度(Y)的16×16个像素、用于红色色度(Cr)的2×8个像素和用于蓝色色度(Cb)的2×8个像素。
编码系统100可在逐宏块的基础上处理当前帧。系统100也可以帧间模式或帧内模式来编码每一宏块。可以两种模式评估当前帧中的宏块或当前宏块,且可选择具有较佳结果的模式。对于帧间模式,运动估计单元110接收当前宏块、识别一个或一个以上参考帧Fn-1′中的紧密匹配当前宏块的宏块,且将所识别的宏块提供为当前宏块的预测宏块。所述参考帧可包含已被编码并重建的一个或两个过去或未来的帧。对于帧内模式,帧内预测单元112基于当前帧中的已被编码并重建的样本形成当前宏块的预测宏块。模式选择器114依据选定模式而将单元110或112的输出提供为当前宏块的预测宏块Pn。
加法器116从当前宏块减去预测宏块且提供残余或差异宏块Dn。变换单元118在逐块的基础上以整数变换来变换残余宏块且提供经变换的系数宏块。量化器120量化经变换宏块中的系数且提供经量化系数的宏块Xn。经量化系数由编码器122重新排序且进行熵编码以获得经编码数据。
在重建路径中,反量化器130以与由量化器120进行的量化互补的方式重新缩放宏块Xn中的经量化系数。反变换单元132在逐块的基础上对经重新缩放的系数执行反变换且提供经重建的差异宏块D′n。由量化器120进行的量化引入误差或失真。因此,宏块D′n通常不等同于差异宏块Dn,但替代地为宏块Dn的失真版本。加法器134对预测宏块Pn与经重建差异宏块D′n求和且提供未经滤波的经重建宏块uFn′。滤波器136对当前帧的未经滤波的经重建宏块进行滤波以减小块化效应和失真,且提供经重建帧Fn′,其可用于编码其它帧。
编码系统100可用于H.264和可能其它编码标准和方案。整个编码过程对于许多编码标准和方案可为类似的,但编码系统内的各个单元的细节对于不同编码标准和方案可为不同。
在H.264中,量化器120可基于为那个宏块选择的量化参数(QP)值而量化每一系数宏块。存在从0变化到51的52个可能的QP值。每一QP值与不同除数相关联,其对应于那个QP值的量化步长。在QP值与量化步长之间存在一对一的映射,且两个项可互换使用。
可根据特定QP值通过用相关联除数除宏块中的每一系数来量化系数宏块。对于每一系数,可将结果的商或整数部分提供为经量化系数,且可丢弃结果的余数或分数部分。
余数表示归因于量化的误差或失真。
可将宏块的给定集合的总失真表示为 等式(1) 其中Di为宏块i的失真,M为一组宏块中的宏块的数目,且D为一组宏块的总失真。可(例如)通过对宏块i中的所有经量化系数的余数的平方求和来计算Di。
图2展示在H.264中的0到11的QP值下量化步长的曲线。在H.264中,量化步长经界定以使得对于QP值每递增一,量化步长增加约12%,且对于QP值每递增六,量化步长变为双倍。对于每一QP值,系数在其值小于那个QP值的量化步长的情况下可被量化为零。因此,在每一QP值下的平均或预期失真与相关联的量化步长有关,且失真对于逐渐变大的QP值逐渐变大。
可通过使用与较小量化步长相关联的较小QP值来减小宏块的总失真。然而,较小QP值可导致更多的经编码数据,其可需要用于传输的更高速率和/或用于存储的更多存储器。
可将宏块的给定集合的速率表示为 等式(2) 其中Ri为宏块i的速率,R为一组宏块的速率且Rb为速率预算。速率预算可为经分配以用于通信系统的速率、用于编码的目标速率等。一组宏块的速率应等于或小于速率预算。
需要在等式(2)中的速率约束下使等式(1)中的总失真最小化。此可等效于使以下等式最小化 等式(3) 其中QPi为宏块i的QP值且λ为加权因子。
在等式(3)中,可为一组宏块中的每一宏块选择不同QP值,使得QPi∈{0,…,51}。等式(3)中的速率失真函数为一组宏块中的每一宏块选择适当QP值,使得一组宏块的总失真加上一组宏块的缩放速率尽可能小。对于速率失真分析,需要尽可能准确且有效地估计在不同可能QP值下的速率以及失真。
可如下基于ρ域模型有效地估计速率 Ri(QPq)=A·ρ(QPq)+B,等式(4) 其中ρ(QPq)为在用QP值QPq进行量化后非零系数的数目, A和B为ρ域模型的两个常数,且 Ri(QPq)为在QP值为QPq情况下宏块i的速率。
等式(4)指示当以QPq的QP值量化时可通过在量化后对非零系数的数目进行计数来估计宏块i的速率。常数A和B可虑及例如在量化器后的熵编码器等各种因素且可针对给定编码系统经预先确定。可以有效方式产生ρ(QPq)值对QP值的表,而实际上并不以各个QP值来量化数据且对零的数目计数。ρ(QPq)表接着可用于基于等式(4)估计在不同QP值下的速率。
等式(4)展示一组宏块的速率失真分析。一般来说,可对具有任何大小的一组译码元素(例如,一组宏块、一组帧等)执行速率失真分析。因此,索引i可为宏块、帧等的索引。
在一方面中,可通过获得待量化一组系数的直方图且将平均失真应用于直方图的每一频段来有效地估计归因于量化的失真。所述组系数可用于宏块、多个宏块、帧等。不同直方图频段的平均失真可经预先计算且存储于数据结构(例如,查找表)中。为清晰起见,以下描述失真估计的特定设计。
待量化的一组系数的直方图可经界为具有L个频段,其中可基于量化步长或QP值的数目来选择L。此外,可基于量化步长来选择L个频段中每一者的开始和结束。在一种设计中,53个频段用于直方图以覆盖H.264中的52个QP值。表1列出52个QP值和用于每一QP值的量化步长。表1还列出直方图的53个频段和每一频段的开始和结束。在表1中所示的设计中,频段b的开始等于用于QP值b-1的量化步长的一半,且频段b的结束等于用于QP值b的量化步长的一半。其它低值和高值也可用于每一频段。
表1 可在如下执行量化时使用表1中的频段参数
等式(5) 其中Cin为待量化的系数,CQ为经量化的系数,Qstep为用于量化的量化步长,且

为取下限(floor)运算子。
等式(5)中的Qstep/2的和实现舍入(而非舍位)。举例来说,如果Qstep=100且下一更高量化步长为110,则在950≤Cin<1050的情况下CQ等于10,在1050≤Cin<1150的情况下CQ等于11,在1150≤Cin<1250的情况下CQ等于12等等。如果使用110的下一更高量化步长,则可由将刚好变为零的未经量化的值来界定对应于Qstep的频段。频段的开始和结束随后可分别等于50和55。因此,当如等式(5)中所示以舍入执行量化时,频段的开始应等于那个频段的量化步长的一半且频段的结束应等于下一更高量化步长的一半。对于以其它方式所执行的量化,可以其它方式界定每一频段的开始和结束。
可基于表1中给出的频段参数来产生待量化的一组系数的直方图。在一种设计中,通过将所述组中的每一系数频段化为53个频段中的一者来产生直方图。具有值x的系数可在x处于0与0.3125之间的情况下置放于频段0中,在x处于0.3125与0.3438之间的情况下置放于频段1中;在x处于0.3438与0.4063之间的情况下置放于频段2中等;在x处于104与112之间的情况下置放于频段51中,且在x大于112的情况下置放于频段52中。所述组中的每一系数可基于其值和直方图的每一频段的低值和高值而置放于53个频段中的一者中。在已频段化所述组中的所有系数后,每一频段b(b=0,…,52)含有具有在那个频段的低值与高值之间的值的系数的数目的计数。
在另一种设计中,通过确定用于集合中的系数的阈值QP值来产生直方图。用于给定系数的阈值QP值QPt为导致非零经量化系数的最大QP值。对于所述组中的每一系数,可针对那个系数确定阈值QP值,且对应于那个QP值的频段可递增一。可通过对将QP值0作为其阈值QP值的系数数目、将QP值1作为其阈值QP值的系数数目等进行计数来获得阈值QP表。阈值QP表可用作一组系数的直方图。可产生阈值QP表以用于速率估计且阈值QP表也可用作用于失真估计的直方图而不引起任何额外处理以获得直方图。
图3A展示一组系数的直方图表。将频段0中的系数的数目表示为T0,将频段1中的系数的数目表示为T1等,且将频段52中的系数的数目表示为T52。
对于直方图的53个频段中的每一者,可针对52个QP值的每一者计算平均失真且将其存储于查找表中。平均失真也可被称为预期失真、平均误差等。对于给定频段b和QP值QPq,可在用QP值QPq量化频段b中的所有可能值的情况下计算平均失真。对于频段b中的每一可能值,用QP值QPq对此值的量化导致可经提供为经量化系数的商和可用于计算平均失真的余数。平均失真可为频段b中的所有可能值的余数的平均能量且可表达为 等式(6) 其中

为在用QP值QPq进行量化后频段b中的第k个值的余数; K为频段b中的值的数目;且

为QP值为QPq情况下频段b的平均失真。
如等式(6)中所示,可通过计算频段b中的每一可能值的余数的平方、累加频段b中的所有可能值的余数的平方且通过频段b中的可能值的数目除经累加结果来获得平均失真。也可以其它方式来确定平均失真。
对于频段0,可针对频段0中的所有可能值(其在0与0.3125之间)在用QP值0(或量化步长0.625)量化这些值的情况下计算平均失真。也可在用QP值1量化这些值、接着用QP值2量化这些值等,且接着在用QP值51量化这些值的情况下计算平均失真。对于每一剩余频段,可针对52个QP值中的每一者为那个频段中的所有可能值计算平均失真。
图3B展示在H.264中的52个QP值下的经预先计算的平均失真对直方图频段的失真表的设计。失真表包括用于53个直方图频段的53行,每频段一行;以及用于52个QP值的52列,每QP值一列。用于频段b(对于b=0,…,52)的行含有用QP值0、1、2、…、51量化频段b中的值的情况下的平均失真。
对于频段0,此频段中的值从0到0.3125不等且用QP值0的量化步长0.625被量化为零。对于较大QP值,频段0中的所有值也被量化为零。可基于频段0中的值来计算频段0的平均失真且表示为D0,0。
对于频段1,此频段中的值从0.3125到0.3438不等,且用QP值0的量化步长0.625被量化为一,且用QP值1的量化步长0.6875被量化为零。当频段1的值用QP值0被量化为一时,可计算频段1的平均失真且表示为D1,0。当频段1的值用QP值1被量化为零时,可计算频段1的平均失真且表示为D1,1。由于频段1中的值也用大于1的QP值被量化为零,因此,对于剩余QP值中的每一者,D1,1可用作平均失真。
对于频段2,此频段中的值从0.3438到0.4063不等,用QP值0的量化步长0.625被量化为二、用QP值1的量化步长0.6875被量化为一、且用QP值2的量化步长0.8125被量化为零。当频段2的值用QP值0被量化为二时,可计算频段2的平均失真且表示为D2,0。当频段2的值用QP值1被量化为一时,可计算频段2的平均失真且表示为D2,1。当频段2的值用QP值2被量化为零时,可计算频段2的平均失真且表示为D2,2。由于频段2中的值也用大于2的QP值被量化为零,因此,对于剩余QP值中的每一者,D2,2可用作平均失真。
通常,对于频段b,此频段中的值在QP值为0到b-1下被量化为非零值且在QP值为b到51下被量化为零。可针对QP值0到b中的每一者为频段b中的值计算平均失真。QP值b的平均失真也可用于QP值b+1到51。当用QP值QPq量化频段b中的值时频段b中的值的平均失真表示为

其中b=0,…,52且QPq=0,…,51。如果量化步长增加超过频段b中的值,则失真受频段b中的值的能量限制。因此,对于QPq>b, 对于表1中给出的频段参数,针对频段0到52且针对每一频段b的QP值0到b,可计算总共1430个平均失真。这1430个平均失真可存储于图3B所示的失真表中。失真表中的对于大于频段索引的QP值(或QPq>b)的剩余1326个条目可为重复值。
可针对每一可能QP值基于直方图和失真表估计一组系数的失真。在每一QP值下的所估计失真可表达为 等式(7) 其中Tb为频段b中的系数的数目; E(QPq)为QP值QPq的校正因子;且 D(QPq)为当用QP值QPq量化时一组系数的所估计失真(或失真估计)。
在等式(7)中,通过以下操作获得所估计失真(a)使每一频段中的系数数目Tb乘以那个频段的平均失真

以获得每频段失真;(b)对所有53个频段的每频段失真求和;以及(c)应用校正因子E(QPq)。校正因子可虑及在不同QP值下的所估计失真中的系统误差或偏差,如下所述。
可基于等式(7)针对52个可能的QP值的每一者确定所估计失真。在所有52个QP值下的所估计失真D(QP0)到D(QP51)可用于例如速率失真分析等各种目的。
图4A展示三种类别的宏块的实际和所估计失真。每一类别包括基于SAD而选择的宏块的数目,SAD为当前宏块与所预测宏块之间的绝对差的和。可在运动估计期间对每一宏块计算SAD值。较大的SAD值指示宏块与其所预测宏块之间的较大误差,其可导致更多非零系数。所述三种类别包括在三个不同SAD值范围中的宏块。每一宏块以52个QP值中的每一者被量化。对于每一QP值,计算实际失真且还如等式(7)中所示计算所估计失真。每一类别中的所有宏块的实际失真针对每一QP值被平均化且绘制在图4A中。类似地,每一类别中的所有宏块的所估计失真针对每一QP值被平均化且绘制在图4A中。图4A中的曲线表明对于所有三种类别且在所有QP值上,所估计失真与实际失真紧密匹配。
图4B展示三种类别的宏块在1到10的低QP值下的实际和所估计失真。图4B为图4A的左下角的接近或放大。图4B指示在低QP值下所估计失真的曲线偏离实际失真的曲线。在低QP值下的所估计失真具有比在高QP值下的所估计失真大的误差(按百分比)。
对于低QP值,系数值相对于量化步长来说是大的小量化步长假设通常有效。因此,失真较大程度上为量化步长的函数且在同样程度上不是数据分布的函数。对于大QP值,小量化步长假设并不有效。因此,失真为数据分布以及量化步长的函数。
在等式(7)中,校正因子E(QPq)可用于虑及在低QP值下的实际失真与所估计失真之间的系统误差或偏差。系统误差可归因于经引入以减少反量化的定点实施误差的量化除数中的改变。校正因子可基于数据来估计、按经验计算、经由计算机仿真确定等。举例来说,可基于实际数据或测试数据针对不同QP值来确定实际失真,也可基于相同数据针对不同QP值来确定所估计失真,且可基于在不同QP值下的实际失真和所估计失真针对这些QP值来确定校正因子。
图5展示在不同QP值下的校正因子E(QPq)的实例曲线。通过基于数据针对不同QP值来计算实际失真和所估计失真且计算在每一QP值下的实际失真与所估计失真之间的百分比差异来获得曲线。如图4B和图5中所示,对于小于5的QP值,高估失真,且对于5与20之间的QP值,低估失真。所估计失真中的误差在大于15的QP值下小于10%且在大于20的QP值下小于5%。
所估计失真的误差在低QP值下可相对较高(按百分比)。然而,误差较小程度上取决于数据且更大程度上取决于QP值。因此,可通过应用校正因子相对容易且准确地校正误差。
一般来说,可如下界定校正因子 E(QPq)=1.0暗示所估计失真中无系统误差, E(QPq)>1.0暗示失真的系统性低估,且 E(QPq)<1.0暗示失真的系统性高估。
图6展示在使用图5中所示的校正因子的情况下在不同QP值下的所估计失真与实际失真之间的百分比误差的实例曲线。如图6中所示,在对独立组的数据应用校正因子后,可实质上减少所估计失真中的误差。在此实例中,最大误差小于4%且平均误差近似为0.5%。本文中所述的技术因此可能够提供归因于量化的失真的相对准确的估计。
本文中所述的技术可用于能够以多个量化步长来量化数据的编码系统,例如,H.264。所述技术也可用于以单一固定量化步长来量化数据的编码系统。
所述技术也可用于各种目的。在一种设计中,技术可用于恒定速率位分配。可针对不同QP值为一组译码元素估计失真。也可针对不同QP值为一组译码元素估计速率。举例来说,可针对52个QP值中的每一者为每一译码元素估计失真和速率。一组译码元素在不同QP值下的所估计失真和所估计速率可用于速率失真分析以选择用于一组译码元素的一组QP值,一个QP值用于每一译码元素,其导致在给定总速率下一组译码元素的最小总失真。
在另一种设计中,所述技术可用于恒定峰值信噪比(PSNR)位分配。可基于一组译码元素在不同QP值下的所估计失真而针对这些QP值预测一组译码元素的PSNR。举例来说,可基于那个译码元素在52个QP值中的每一者下的所估计失真而针对那个QP值预测每一译码元素的PSNR。一组QP值接着可经选择以实现所述组中的所有译码元素上(例如,整个帧、片段等上)的恒定PSNR。可变速率可用于实现特定恒定PSNR。或者,对于一组译码元素的给定总速率,可实现最高可能的恒定PSNR。
在又一设计中,所述技术可用于恒定感知质量位分配。可以各种方式估计感知失真或质量。在被称为感知加权的一种设计中,可在组合译码元素中的不同系数的贡献度之前向这些系数给予不同权数以获得译码元素的所估计失真。举例来说,可向表示较不重要的频率分量的系数给予较小权数。在另一设计中,译码元素的总纹理和照明特征可用于估计所感觉失真。举例来说,可将具有极低频率分量(平坦)的译码元素中的小失真感觉为高度失真。方差可用作译码元素中的高频率分量的量度。可以(Var_t/Var_i)对译码元素的失真进行加权以获得感知失真,其中Var_t为一组译码元素的总方差且Var_i为译码元素的方差。可基于影响所感觉质量(例如空间活动性和时间活动性)的权数或因子针对不同QP值为每一译码元素获得感知质量量度值。这些量度值可用于选择可导致恒定感知质量的用于一组译码元素的一组QP值。可变速率可用于实现特定恒定感知质量。或者,对于一组译码元素的给定总速率,可实现最佳可能的感知质量。也可以其它方式使用所估计失真和/或用于其它目的。
图7展示用于估计归因于量化的失真的过程700。可针对待量化的一组系数获得具有多个频段的直方图(方框710)。一组系数可对应于宏块、帧等。可基于可用于量化一组系数的量化步长的数目来确定直方图的频段的数目。可基于量化步长来确定直方图频段的开始值和结束值。可基于系数值和每一频段的开始值和结束值通过将所述组中的每一系数映射到频段中的一者来获得直方图。也可通过为每一系数确定对应于导致非零经量化系数的最大量化步长的阈值QP值来获得直方图。接着可基于所述组中的所有系数的阈值QP值来获得直方图。
可基于直方图和多个频段的平均失真来估计归因于一组系数的量化的失真(方框720)。对于方框720,每一频段中的系数的数目可乘以频段的平均失真以获得每频段失真。所有频段的每频段失真可经累加以获得经累加失真。可将经累加失真直接提供为一组系数的所估计失真。也可用校正因子缩放经累加失真以获得所估计失真,其中可基于量化步长来确定校正因子。
可基于直方图和多个频段在每一量化步长下的平均失真来估计归因于在多个量化步长中的每一者下的量化的失真。可进一步基于校正因子来估计在每一量化步长下的失真,校正因子可为量化步长的函数。多个量化步长可对应于H.264中的52个QP值或用于一些其它编码系统或标准的一些其它组量化步长。
图8展示用于选择量化步长的过程800。可(例如)基于一组译码元素的至少一个直方图和在多个量化步长下的平均失真对直方图频段的表来估计归因于一组译码元素在多个量化步长下的量化的失真(方框810)。可针对一个或多个译码元素而获得直方图。举例来说,可针对每一译码元素而获得直方图,且可基于每一译码元素的直方图针对每一量化步长为每一译码元素估计失真。也可(例如)基于以上所述的ρ(QPq)表针对多个量化步长来估计一组译码元素的速率(方框820)。举例来说,可针对每一量化步长为每一译码元素估计速率。可基于一组译码元素在多个量化步长下的所估计失真和所估计速率来选择一组量化步长以用于量化一组译码元素(方框830)。举例来说,一个量化步长可经选择以用于每一译码元素,使得总失真(或所述组中的个别译码元素的所估计失真的和)在给定总速率下最小。也可基于例如恒定PSNR、恒定感知质量等其它标准来选择一组量化步长。
本文中所述的技术可用于通信、计算、联网、个人电子装置等。举例来说,所述技术可用于无线通信装置、手持式装置、游戏装置、计算装置、消费者电子装置、计算机等。以下描述用于无线通信装置的技术的实例使用。
图9展示无线通信系统中的无线通信装置900的设计的框图。无线装置900可为蜂窝式电话、终端、手持机、个人数字助理(PDA)、无线调制解调器等。无线通信系统可为码分多址(CDMA)系统、全球移动通信(GSM)系统等。
无线装置900能够经由接收路径和发射路径提供双向通信。在接收路径上,由天线912接收由基站发射的信号且将其提供到接收器(RCVR)914。接收器914调节并数字化所接收的信号且将样本提供到数字区920以供进一步处理。在发射路径上,发射器(TMTR)916接收将要从数字区920发射的数据、处理并调节数据且产生经调制信号,其经由天线912发射到基站。
数字区920包括各种处理、接口和存储器单元,例如,调制解调器处理器922、精简指令集计算机/数字信号处理器(RISC/DSP)924、控制器/处理器926、内部存储器928、图形处理单元(GPU)932、视频/相机处理器934、显示处理器936和外部总线接口(EBI)938。调制解调器处理器922可执行用于数据发射和接收的处理(例如,编码、调制、解调和解码)。RISC/DSP 924可执行用于无线装置900的通用和专用处理。控制器/处理器926可引导数字区920内的各种处理和接口单元的操作。内部存储器928可存储用于数字区920内的各种单元的数据和/或指令。
GPU 932可对2维和/或3维图形执行图形处理。视频/相机处理器934可从相机944接收图像数据且可对用于静止图像、移动视频、移动文本等数据执行处理以用于例如摄像机、视频重放、视频会议等相机和视频应用。显示处理器936可执行处理以促进视频、图形、图像和文本在显示单元946上的显示。EBI 938可促进数据在数字区920与主存储器948之间的传递。可通过GPU 932对图形图像、视频/相机处理器934对俘获图像、显示处理器936对输出图像等实施本文中所述的技术。
可用一个或一个以上处理器、DSP、微处理器、RISC等实施数字区920。也可在一个或一个以上专用集成电路(ASIC)和/或一些其它类型的集成电路(IC)上制造数字区920。
可由各种手段实施本文中所述的失真估计技术。举例来说,可以硬件、固件、软件或其组合来实施这些技术。对于硬件实施方案,用于所述技术的处理单元可实施在一个或一个以上ASIC、DSP、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、电子装置、经设计以执行本文中所述功能的其它电子单元、计算机或其组合内。
对于固件和/或软件实施方案,可用执行本文中所述功能的模块(例如,程序、函数等)来实施失真估计技术。固件和/或软件代码可存储于存储器(例如,图9中的存储器928和/或948)中且由处理器(例如,处理器924、926、932、934和/或936)执行。存储器可实施在处理器内或在处理器外部。
实施本文中所述技术的设备可为独立单元或可为装置的部分。所述装置可为(i)独立集成电路(IC);(ii)一个或一个以上IC的集合,其可包括用于存储数据和/或指令的存储器IC;(iii)例如移动台调制解调器(MSM)等ASIC;(iv)可嵌入其它装置内的模块;(v)蜂窝式电话、无线装置、手持机或移动单元;(vi)等等。
提供本发明的先前描述以使得所属领域的技术人员能够制造或使用本发明。所属领域的技术人员将容易明白对本发明的各种修改,且在不脱离本发明的精神或范围的情况下本文中所界定的一般原理可应用于其它变化形式。因此,不希望本发明限于本文中所述的实例,而是将赋予其与本文中所揭示的原理和新颖特征一致的最广泛范围。
权利要求
1.一种设备,其包含
处理器,其经配置以针对待量化的一组系数而获得具有多个频段的直方图,且基于所述直方图和所述多个频段的平均失真来估计归因于所述组系数的量化的失真;以及
存储器,其耦合到所述处理器。
2.根据权利要求1所述的设备,其中所述处理器经配置以使所述直方图的每一频段中的系数的数目乘以所述频段的平均失真以获得每频段失真,累加所述多个频段的每频段失真以获得经累加失真,且基于所述经累加失真来导出所述组系数的所估计失真。
3.根据权利要求2所述的设备,其中所述处理器经配置以用校正因子缩放所述经累加失真以获得所述组系数的所述所估计失真。
4.根据权利要求3所述的设备,其中所述处理器经配置以基于用于量化所述组系数的量化步长来确定所述校正因子。
5.根据权利要求1所述的设备,其中针对多个量化步长中的每一者,所述处理器经配置以基于所述直方图和所述多个频段在所述量化步长下的平均失真用所述量化步长来估计归因于所述组系数的量化的失真。
6.根据权利要求5所述的设备,其中所述处理器经配置以基于作为量化步长的函数的校正因子来估计所述多个量化步长中的每一者下的失真。
7.根据权利要求5所述的设备,其中所述多个量化步长对应于H.264中的多个量化参数(QP)值。
8.根据权利要求1所述的设备,其中所述直方图的频段的数目是基于可用于量化所述组系数的量化步长的数目来确定。
9.根据权利要求1所述的设备,其中所述多个频段的开始值和结束值是基于可用于量化所述组系数的多个量化步长来确定。
10.根据权利要求1所述的设备,其中为获得所述直方图,所述处理器经配置以基于所述组中的每一系数的值以及每一频段的开始值和结束值将所述系数映射到所述多个频段中的一者。
11.根据权利要求1所述的设备,其中所述处理器经配置以为所述组中的每一系数确定对应于导致非零经量化系数的最大量化步长的阈值量化参数(QP)值,且基于所述组中的所述系数的阈值QP值来获得所述直方图。
12.根据权利要求1所述的设备,其中所述存储器经配置以存储在可用于量化所述组系数的多个量化步长下的平均失真对频段的表。
13.根据权利要求1所述的设备,其中所述直方图的每一频段在特定量化步长下的平均失真指示从用所述特定量化步长量化所述频段中的系数中获得的经量化系数的误差的平均能量。
14.根据权利要求1所述的设备,其中所述组系数对应于系数的宏块或帧。
15.一种方法,其包含
针对待量化的一组系数而获得具有多个频段的直方图;以及
基于所述直方图和所述多个频段的平均失真来估计归因于所述组系数的量化的失真。
16.根据权利要求15所述的方法,其中所述估计归因于量化的失真包含
使所述直方图的每一频段中的系数的数目乘以所述频段的平均失真以获得每频段失真,
累加所述多个频段的每频段失真以获得经累加失真,以及
基于所述经累加失真导出所述组系数的所估计失真。
17.根据权利要求16所述的方法,其中所述导出所述所估计失真包含
用校正因子缩放所述经累加失真以获得所述组系数的所述所估计失真。
18.根据权利要求15所述的方法,其中所述估计归因于量化的失真包含针对多个量化步长中的每一者,
基于所述直方图和所述多个频段在所述量化步长下的所述平均失真来估计归因于所述组系数在所述量化步长下的量化的失真。
19.一种设备,其包含
用于针对待量化的一组系数而获得具有多个频段的直方图的装置;以及
用于基于所述直方图和所述多个频段的平均失真来估计归因于所述组系数的量化的失真的装置。
20.根据权利要求19所述的设备,其中所述用于估计归因于量化的失真的装置包含
用于使所述直方图的每一频段中的系数的数目乘以所述频段的平均失真以获得每频段失真的装置,
用于累加所述多个频段的每频段失真以获得经累加失真的装置,以及
用于基于所述经累加失真导出所述组系数的所估计失真的装置。
21.根据权利要求20所述的设备,其中所述用于导出所述所估计失真的装置包含
用于用校正因子缩放所述经累加失真以获得所述组系数的所述所估计失真的装置。
22.根据权利要求19所述的设备,其中所述用于估计归因于量化的失真的装置包含
针对多个量化步长中的每一者,
用于基于所述直方图和所述多个频段在所述量化步长下的平均失真用所述量化步长来估计归因于所述组系数的量化的失真的装置。
23.一种用于存储指令的处理器可读媒体,所述指令可操作以
针对待量化的一组系数而获得具有多个频段的直方图;以及
基于所述直方图和所述多个频段的平均失真来估计归因于所述组系数的量化的失真。
24.根据权利要求23所述的处理器可读媒体,且其进一步用于存储可操作以执行以下操作的指令
使所述直方图的每一频段中的系数的数目乘以所述频段的平均失真以获得每频段失真,
累加所述多个频段的每频段失真以获得经累加失真,以及
基于所述经累加失真来导出所述组系数的所估计失真。
25.根据权利要求24所述的处理器可读媒体,且其进一步用于存储可操作以执行以下操作的指令
用校正因子缩放所述经累加失真以获得所述组系数的所述所估计失真。
26.一种设备,其包含
处理器,其经配置以基于一组译码元素的至少一个直方图以及平均失真对直方图频段的表来估计归因于所述组译码元素在多个量化步长下的量化的失真,来估计所述组译码元素在所述多个量化步长下的速率,且基于所述组译码元素在所述多个量化步长下的所述所估计失真和所述所估计速率来选择用于量化所述组译码元素的一组量化步长;以及
存储器,其耦合到所述处理器。
27.根据权利要求26所述的设备,其中所述处理器经配置以针对所述组译码元素中的每一译码元素而获得直方图,且基于所述译码元素的所述直方图来估计每一译码元素在所述多个量化步长中的每一者下的失真和速率。
28.根据权利要求26所述的设备,其中所述处理器经配置以基于具有所述多个量化步长中的每一者下的非零经量化系数的数目的表来估计在所述多个量化步长下的所述速率。
29.根据权利要求26所述的设备,其中所述处理器经配置以选择用于所述组译码元素的所述组量化步长以在特定总速率下实现所述组译码元素的最低总失真,其中一个量化步长用于每一译码元素。
30.根据权利要求26所述的设备,其中所述处理器经配置以基于所述所估计失真来估计所述组译码元素在所述多个量化步长下的信噪比(SNR),且选择用于所述组译码元素的所述组量化步长以实现所述组译码元素的近似恒定的SNR,其中一个量化步长用于每一译码元素。
31.根据权利要求26所述的设备,其中所述处理器经配置以基于所述所估计失真来估计所述组译码元素在所述多个量化步长下的感知质量,且选择用于所述组译码元素的所述组量化步长以实现所述组译码元素的近似恒定的感知质量,其中一个量化步长用于每一译码元素。
32.一种方法,其包含
基于一组译码元素的至少一个直方图以及平均失真对直方图频段的表来估计归因于所述组译码元素在多个量化步长下的量化的失真;
估计所述组译码元素在所述多个量化步长下的速率;以及
基于所述组译码元素在所述多个量化步长下的所述所估计失真和所述所估计速率来选择用于量化所述组译码元素的一组量化步长。
33.根据权利要求32所述的方法,其中所述选择所述组量化步长包含
选择用于所述组译码元素的所述组量化步长以在特定总速率下实现所述组译码元素的最低总失真,其中一个量化步长用于每一译码元素。
全文摘要
本发明描述用于估计归因于数据量化的失真的技术。可针对待量化的一组系数而获得具有多个频段的直方图。可基于所述直方图和所述直方图频段的平均失真来估计归因于所述组系数的量化的失真。可使每一频段中的系数的数目乘以所述频段的平均失真以获得每频段失真。所有所述频段的所述每频段失真可经累加且用校正因子缩放以获得所述所估计失真。所述技术可用于估计一组译码元素的失真。可针对多个量化步长中的每一者为每一译码元素估计失真和速率。可基于所述组译码元素在不同量化步长下的所述所估计失真和所述所估计速率而为所述组译码元素选择一组量化步长。
文档编号H03M7/30GK101606320SQ200880004325
公开日2009年12月16日 申请日期2008年2月7日 优先权日2007年2月8日
发明者纳伦德拉纳特·马拉亚特, 沙拉特·曼朱纳特 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1