数据的解码.pdf

上传人:g**** 文档编号:1045114 上传时间:2018-03-28 格式:PDF 页数:12 大小:639.06KB
返回 下载 相关 举报
摘要
申请专利号:

CN01804216.3

申请日:

2001.09.14

公开号:

CN1397140A

公开日:

2003.02.12

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回|||实质审查的生效|||公开

IPC分类号:

H04N7/50; H04N7/30; G06F17/14

主分类号:

H04N7/50; H04N7/30; G06F17/14

申请人:

皇家菲利浦电子有限公司;

发明人:

J·戈贝特

地址:

荷兰艾恩德霍芬

优先权:

2000.09.27 EP 00402674.6

专利代理机构:

中国专利代理(香港)有限公司

代理人:

程天正;傅康

PDF下载: PDF下载
内容摘要

在例如对编码数据和变换数据进行解码等的数据变换期间,前端处理(FE)产生一个用于随后的后端处理(TR)的数据块,这个前端处理可能包括游程长度解码(RLD)。在前端处理期间还产生了表示数据块(MB)结构的辅助数据(AUX)。典型的辅助数据表示数据块中零系数的位置。后端处理(TR)的实现基于辅助数据(AUX)的内容而适应于数据块(MB)的结构,由此使得实现更为有效。例如,辅助数据的内容可以确定:在实现反离散余弦变换期间可以使用哪个捷径。在前端处理(FE)期间产生辅助数据没有在反变换之前才研究数据块结构那么麻烦,因为前者仅涉及对非零系数的处理,而后者涉及对块中所有系数的检查。

权利要求书

1: 一种数据处理的方法,包括: -前端处理步骤,其中处理输入数据以便获得含一组系数的数据块, -后端处理步骤,其中处理该数据块; 其特征在于: -前端处理步骤在处理输入数据的同时产生辅助数据,该辅助数据表 示了取多数值的系数和/或取少数值的系数在数据块中的位置;以及 -后端处理步骤的实现基于该辅助数据而进行适应。
2: 如权利要求1的方法,其中后端处理步骤包括反离散余弦变换 (IDCT)。
3: 如权利要求1或2的方法,其中前端处理步骤包含游程长度解码 过程。
4: 如权利要求1、2或3的方法,其中所接收的数据块是多维数据 块,而且该辅助数据包含表示取多数值的系数和/或取少数值的系数对于 数据块子空间的位置的数据。
5: 如权利要求4的方法,其中辅助数据包含表示取多数值的系数和 /或取少数值的系数对于一维数据块的位置的数据。
6: 如权利要求5的方法,其中辅助数据包含表示取多数值的系数和 /或取少数值的系数对于数据块行的位置的数据。
7: 如权利要求5或6的方法,其中辅助数据包含表示取多数值的系 数和/或取少数值的系数对于数据块列的位置的数据。
8: 如前面任一权利要求的方法,其中后端处理包括含在各个不同方 向上的第一和第二趟变换的可分变换,而且提供了基于该辅助数据选择 可分变换的第一趟实现的方向的步骤。
9: 如前面任一权利要求的方法,其中辅助数据包含表示零系数在数 据块中位置的数据。
10: 如前面任一权利要求的方法,其中所接收的数据块是一个有r 行和c列的二维数据块,其中r和c是整数,该辅助数据包含了表示哪 些行仅包含零系数的数据,后端处理包括一个二维IDCT并适应于实施水 平IDCT,以便跳过由辅助信息标识为仅包含零系数的行的变换。
11: 如权利要求10的方法,如果辅助信息表示最后的r-n行仅包含 零系数,则适应步骤还包括通过应用简化的IDCT算法(IDCTn)来实现 垂直IDCT,该简化的IDCT算法由n确定。
12: 如权利要求1~9中任意一个的方法,其中所接收的数据块是一 个有r行和c列的二维数据块,其中r和c是整数,辅助数据包含了表 示哪些列仅包含零系数的数据,后端处理包括一个二维IDCT并适应于垂 直IDCT的实现,以便跳过由辅助信息标识为仅包含零系数的列的变换。
13: 如权利要求12的方法,如果辅助信息表示最后c-m列仅包含零 系数,则适应步骤还包括通过应用简化的IDCT算法(IDCTm)来实现水 平IDCT,该简化的IDCT算法由m确定。
14: 一种数据处理装置包括: -一个前端处理器,适应于处理输入数据以便获得含一组系数的数据 块;以及 -一个后端处理器,适应于处理该数据块; 其特征在于: -该前端处理器被安排成在处理该输入数据的同时产生辅助数据,该 辅助数据表示了取多数值的系数和/或取少数值的系数在数据块中的位 置;以及 -该后端处理器被安排成基于该辅助数据来适应该数据块的处理。
15: 一种用于数据处理装置的计算机程序产品包括: -一个前端处理器,适应于处理输入数据以便获得含一组系数的数据 块;以及 -一个后端处理器,适应于处理数据块; 该计算机程序产品包含一组指令,在装载入数据处理装置时使得: -该前端处理器在处理输入数据的同时产生辅助数据,该辅助数据表 示取多数值的系数和/或取少数值的系数在该数据块中的位置;以及 -该后端处理器基于该辅助数据来适应该数据块的处理。

说明书


数据的解码

    本发明涉及在前端和后端处理期间数据的变换,典型地是在对诸如游程长度编码DCT数据等的编码和变换数据的解码期间数据的变换。例如,编码和变换的数据可能是已根据活动图象专家组(MPEG)标准进行编码的视频信息。

    为了减少表示给定数据流所需的比特数量,数据压缩技术对数据流进行处理通常使用离散余弦变换(DCT),随后对所产生的系数值进行游程长度编码。游程长度编码过程把每个非零系数后的零序列转换为一个码字,此序列的游程长度以及系数值可以称为“游程值对”。美国专利4901075描述了这类编码方法和装置。在解码器中,重建原始数据会涉及对游程长度编码数据的解码、以及反离散余弦变换(IDCT)地应用。WO99/35749描述了一种适于接收并解码游程长度编码数据的方法。已知许多方法可用于IDCT。

    在编码过程中,通常会有附加的中间步骤,例如在游程长度编码之前进行DCT系数的量化、预测性的去除某些量化的系数值,而游程长度编码通常利用一个或多个可变长代码来表示游程长度编码实体。此外在DCT之前还有附加步骤,例如允许运动补偿。文档ISO/IEC 13818-2描述了在对视频信息和相关音频信息进行编码中所涉及的这类附加过程。而在解码期间将会涉及相应的反向过程。但是,本发明并不着重于这些附加过程的细节。

    本文中措辞“前端处理”用于表示产生系数所涉及的所有解码步骤,这些系数随后进行后端处理,例如包括IDCT的处理。

    像根据MPEG标准进行数据编码所用技术等的视频压缩技术通常把DCT应用到二维象素块,于是需要在解码器端应用二维IDCT。这是解码器必须完成的最耗时的任务之一。实现二维IDCT通常要通过执行一系列一维IDCT过程。例如,一个应用到8×8象素块的IDCT可以用两趟实现:第一趟把一维IDCT应用到块中每行8个点上(即总共8个水平的一维IDCT),并把所产生的8行数据存储到一个中间结果块中;第二趟把一维IDCT应用到中间结果块中每列8个点上(即总共8个垂直的一维IDCT),并把所产生的8列数据存储到一个最终结果块中。执行垂直和水平IDCT的顺序可以交换,但不影响结果。

    现在,如果某些到一维IDCT的输入是空(即取值为零),则可以简化一维IDCT。这种IDCT的简化实现被称为“捷径”。例如,如果到一个一维IDCT的所有输入均为空,则输出是全零。于是,在此情况下不必实际执行IDCT,只需检测输入中的“全零”配置并把所有零写到输出就足够了。这个捷径可以表示为“IDCT0”。与此类似,如果只有到一维IDCT的第一输入是非零的,而所有剩余的都为空,则所有的输出等于该非零输入的被缩放值。相应的捷径可以表示为“IDCT1”。一般而言,当到一维IDCT的输入系数中除前n个系数外其余都是零时,我们把一个可用的捷径表示为“IDCTn”。

    在许多应用中,大部分IDCT的输入取值为空。典型的是在视频压缩系统中,一个到解码器中IDCT过程的64输入的块仅包含5~10个非零值。因此建议使用捷径来加速视频解码器中IDCT的实施。但是,使用捷径所得到的时间节省却由于需要检测到IDCT的数据输入的“结构”或“配置”(非零值的数量和位置)而有所削减。

    本发明的目的是通过对要经过后端处理的数据结构的了解来更为有效的实现涉及数据前端和后端处理的变换,而同时避免通常在检测输入数据配置方面的开销。

    本发明考虑了下述几个方面。在数据变换涉及的前端处理中,有关少数系数(典型的是非零系数)和/或多数系数在数据流中的定位的信息变得可用。于是在前端处理中可能产生表示这些少数和/或多数系数定位的辅助数据,并随着基本数据向实现后端处理的处理设备提供这些辅助数据。于是,后端处理设备可以基于该辅助数据的内容来使后端处理的实现方式适应于数据的结构。

    例如,如果在后端处理包括诸如IDCT等反变换、而前端处理包括游程长度解码过程以产生表示零系数(多数系数)的游程长度和非零系数(少数系数)值的数据,则辅助数据使它能确定可应用哪个捷径(如果有的话)来加速IDCT的实现。

    本发明和可以选择地用来实现本发明的特征,从附图中将清楚看出,且此后会参照附图对其进行描述。

    图1是表示了一种实现采用本发明方法的解码器的主要组件的框图;

    图2是说明根据本发明的实施方案产生数据块和辅助数据的电路框图;

    图3表示了根据本发明的一个实施方案的数据块和相关辅助数据的示例。

    首先简要说明参考符号的使用。在全部附图中用相同的字母代码表示类似的实体。许多类似实体可能出现在一个附图中。在此情况下,为了使类似实体相互区别而给字母代码加数字。如果类似实体的数目是游动参数,则把数字放在括号中。在说明书和权利要求中可以在合适的情况下忽略参考符号中的任何数字。

    图1说明了一个使用本发明总体原则改进IDCT效率的解码器。一个变换电路TR实现了对连续二维数据块MB的反离散余弦变换。块MB中每个数据项是一个取值为零或非零的系数C。各数据块MB由前端处理电路FE实现,该电路中包括实现游程解码过程的设备RLD。

    设备RLD所解码的每个游程值对包括与游程中零的数量有关的数据(RL=游程长度)和与随后(或在某些情况下为先前)的非零系数值有关的数据(CV=系数值)。解码的非零系数在前端处理所输出的二维块MB中的定位取决于原来所使用的编码方案。在MPEG编码技术中,之字形扫描方法通常用于二维DCT数据和将要被游程长度编码的串行数据之间的转换。在解码器中使用匹配过程来实现游程长度解码数据和二维数据块之间的转换。但是也可能使用其他方案。无论使用哪种方案,这在解码器设备中都是已知的。因此,在解码器的前端处理设备FE中,可能为每个块MB产生表示非零系数在块中定位的辅助数据。变换电路TR可以使用这个辅助信息,以便使IDCT过程的实现适应于该块数据的结构。

    例如如图1所示,辅助数据可能表示只包含零系数的行(示例块中下面三行)在该块中的位置。在此例中,由于当变换电路TR通过连续的系列水平(一维)IDCT和垂直(一维)IDCT来实现此5×5块MB的二维IDCT时,零序列的一维IDCT产生了一个零序列,故可以跳过图1所示块中下面三行的水平变换。而且,如果变换电路“在原地”工作,也就是把其中间和最终结果重写到输入块所用的相同存储位置,则“所跳过行”的数据简单地留在存储器中的原地。于是,辅助数据使IDCT能够有效实现而变换电路没有任何对研究块数据结构的需要。

    通过前端处理电路产生辅助数据在时间或电路方面并不浪费,因为前端处理电路仅需要相对非零系数采取行动,而每个数据块都具有相对较少的非零系数。与此相对,传统技术中由变换电路研究数据块结构,所以必须检查所有值来看其取值为零还是非零。

    下面会参考图2和图3并通过非限制的示例更详细的描述一种方法和装置,用于产生并使用表示只包含零系数的行(或列)在数据块中位置的辅助数据。

    图2说明了一个产生块和辅助数据来输入解码器中变换电路TR的电路示例。在此例中,游程长度解码器RLD的输出被提供给一个存储器MM和一个控制数据被写入存储器的地址的读/写控制器RWC。存储器MM包括用于存储块数据和辅助数据的各个部分(BDP、ADP)。一旦整个数据块都已被解码,则读/写控制器还要发出一个读触发信号,以便触发向变换电路TR(未表示在图2中)提供存储器MM中块数据和辅助数据部分的内容。

    当要开始对一个块进行解码时,存储器中块数据和辅助数据部分的内容都被重置为零。游程长度解码器RLD对每个码字进行解码,来产生一个游程长度值对(RL、CV)。系数值CV被写入存储器MM中块数据部分BDP,而游程长度RL被提供给读/写控制器RWC。读/写控制器RWC基于预定信息(如逆之字形扫描信息)来产生表示非零系数CV在相关数据块中行(i)和列(j)位置的地址信息(i,j)。该系数值在相应的地址处写入该存储器MM的块数据部分BDP。

    读/写控制器RWC所产生的地址信息也用于产生表示块中包含非零系数的行的辅助信息。图3表示了一个数据块结构以及可用于表示此结构的辅助数据的示例。

    一般而言,每个数据块可以有r行c列。在图3所示例子中,数据块具有8行8列,而且所表示的块仅在前三行具有非零系数。这里,辅助信息采用行向量R0的形式,此向量的i比特仅在数据块i行所有系数取值为零时才为零值。否则,如果在数据块i行有任何非零系数,则向量R0的i比特取值为1。

    可以基于读/写控制器RWC所产生的地址数据非常简单地产生向量R0。在对给定块解码期间,如果读/写控制器RWC为相关的游程长度值对产生了包括行值i=1,2和3的地址信号来表示在数据块前三行中的非零系数,则存储在存储器MM的辅助数据部分中的辅助数据向量R0的第1、2和3比特将会置为值1,而行向量R0的所有其他比特仍然置为零。

    当变换电路TR收到图3所示的块数据和相关辅助数据(这里是行向量R0)时,辅助数据的检查表明:如果通过连续的水平和垂直一维IDCT组来实现二维IDCT,则对于后五行数据块可以跳过水平IDCT。而且,从辅助数据(R0)可以知道仅有每列的前三比特可以包含非零值。于是,当实现8个垂直IDCT时,可以应用8个捷径IDCT3。于是,变换电路TR可以使IDCT的实现适应于数据块的结构,而它自己不必分析该结构是什么。

    上述示例描述了辅助数据仅由一个行向量R0组成来表示包含全零的行在数据块中位置的情况。应当理解的是,辅助数据可以采用其他的形式。例如,可以产生相应的列向量C0以取代或附加于该行向量R0。列向量C0的j比特仅在数据块的j列中所有系数全为零时取值为零,否则取值为1。

    同样可以定义其他的行向量Rn,其中n的取值是从1到c-1:行向量Rn的第i比特表示i行的最后c-n个系数是否全部取值为零。具体而言,行向量Rn的i比特仅在i行的最后c-n个系数全为零时才取值为零。作为补充或可替代地,可以定义其他的列向量Cm,其中m的取值是从1到r-1。列向量Cm的j比特表示j列的最后r-m个系数是否取值为零。具体而言,行向量Cm的第j比特仅在j列的最后r-m个系数全零时取值为零。

    对于一个具有r行和c列的二维数据块,可以通过下面提出的方法产生一个行和列向量的全部集合。但是,应当理解的是并不强制产生向量R0、R1、...、Rc-1、C0、C1、...、Cr-1全部集合;而是如果期望,则可以限制产生的向量集合为例如R0、R1、C0、C1的集合。

    对于一个具有r行和c列的块,首先重置向量,以便包含所有零。也就是:

    对于所有u,0≤u≤c-1,Ru所有比特=0

    对于所有v,0≤v≤r-1,Cv所有比特=0

    其次,在前端处理期间,对于所取回的、位于数据块的i行和j列的每个非空系数,更新向量值如下:

    对于所有u,0≤u≤j,设置Ru的i比特=1

    对于所有v,0≤v≤i,设置Cv的j比特=1

    如上所述,实现一维IDCT的捷径IDCTn(IDCTm)的存在使得在一行(或列)的最后c-n(或r-m)个系数全为零时能够简化IDCT的实现。因此,通过在辅助数据中包含上述其他的行向量(和/或列向量),变换电路可以从辅助数据的检查中确定这些其他捷径IDCTn中的一些是否可以用于IDCT的有效实现。

    如果辅助数据包括几个行向量R0、R1等,则变换电路不必检查所有行向量的所有比特。首先,检查行向量R0的所有比特。这确定可以一起跳过哪些行(对应可跳过行的比特被认为已经通过了对R0的测试)。其次,在行向量R1,变换电路仅检查那些对应“未跳过”行的比特,也就是那些没有通过R0测试的比特。这确定了可以使用捷径IDCT1处理哪些行。一般而言,在行向量Rn中,变换电路仅检查那些还未“通过”对先前所检查的行向量的测试的比特;这确定了可以使用捷径IDCTn处理哪些行。一旦所有比特(行)都通过了测试,则变换电路可以停止行向量的研究。

    当辅助数据包含几个列向量C0、C1等时也相应成立。

    在某些情况下,数据块中非零系数的位置可能意味着在特定方向上(水平或垂直)第一趟实现IDCT会导致使用整体上更大数目的捷径和因此导致整体上更有效的变换。因此,如果辅助数据包含表示非零系数在数据块的行和列中位置的信息,则在该变换电路适应于比较这些辅助行和列数据以便选择第一趟IDCT的方向的情况下是有利的。

    于是,一个检测器检测频率系数的矩阵是否包含的零行多于零列、或者是否包含的零列多于零行。如果零行多于零列,则第一步是行的一维变换。如果零列多于零行,则第一步是列的一维变换。因此在节省计算方面,最优的对于每个要变换的矩阵来利用零行或零列的存在。这减少了能量损耗并允许用更慢和更便宜的电子器件执行变换。

    此前的附图及其描述说明了本发明,但并未限制它。可以明显看出,有多种可选方案都在所附权利要求的范围之中。就这方面作出下面的结束语。

    尽管上述的具体实施方案着重于游程长度解码过程产生有关零游程和非零系数值的游程值对的情况,但本发明并不局限于此。相反,它还可以应用到这种情况:数据包含取某些其他值的系数(这些系数被称为“多数系数”),之后是取一些另外值的系数(称为“少数系数”)的游程。这样,辅助数据通常会表示少数系数在数据块中的位置,而可以通过对这些少数系数位置的了解使得反变换更有效地实现。

    换句话说,尽管上述实施方案涉及IDCT的有效实现,但本发明也可以应用到其他反变换中,它们可以通过对(有关多数系数和少数系数)数据结构的了解而得到更有效的实现。

    与此类似,前端处理中所处理的数据也不必是游程长度编码的数据。如果此数据用一些其他方式表示多数和/或少数系数的分布(例如,最初的数据可能用数据块中系数的坐标表示少数系数的位置),则也可以应用本发明。

    此外,上面的描述着重于二维数据块的反变换。但是,本发明通常还可以应用到一维数据块或多维数据块的情况。

    而且,编码和变换的数据可以是差分数据,即数据表示在某些基本数据和例如预测值之间的差值。

    在所附权利要求中提及的数据处理装置可以是MPEG2解码器,但不局限于此。

    权利要求中的任何参考符号都不应被认为限制了本发明。

数据的解码.pdf_第1页
第1页 / 共12页
数据的解码.pdf_第2页
第2页 / 共12页
数据的解码.pdf_第3页
第3页 / 共12页
点击查看更多>>
资源描述

《数据的解码.pdf》由会员分享,可在线阅读,更多相关《数据的解码.pdf(12页珍藏版)》请在专利查询网上搜索。

在例如对编码数据和变换数据进行解码等的数据变换期间,前端处理(FE)产生一个用于随后的后端处理(TR)的数据块,这个前端处理可能包括游程长度解码(RLD)。在前端处理期间还产生了表示数据块(MB)结构的辅助数据(AUX)。典型的辅助数据表示数据块中零系数的位置。后端处理(TR)的实现基于辅助数据(AUX)的内容而适应于数据块(MB)的结构,由此使得实现更为有效。例如,辅助数据的内容可以确定:在实现。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1