信息字的平均信息量编码设备和方法,平均信息量编码信息字的解码设备和方法

文档序号:7504909阅读:194来源:国知局
专利名称:信息字的平均信息量编码设备和方法,平均信息量编码信息字的解码设备和方法
技术领域
本发明涉及平均信息量编码理论和相应的平均信息量编码信息字的解码理论。具体地说,本发明涉及音频信号的错误防范(error-safe)平均信息量编码和相应的解码。
分别按照例如标准MPEG层3工作的现代音频编码和解码方法能够把音频信号的数据速率压缩到原量的例如十二分之一,而不会显著地降低音频信号的质量。为了获得这样高的数据简化,对音频信号采样,从而得到时间离散的一系列采样值。本领域中已知,借助适当的窗口函数,对该系列时间离散的采样值进行窗口截取,从而得到多组窗口截取时间采样值。随后,借助改进的离散余弦变换(MDCT)或另一适当装置,一组时间窗口截取采样值被变换为频域,以便获得在该频域中整个代表音频信号,即由该组时间离散采样值确定的时间窗口的频谱值。通常,借助MDCT,重叠50%的时间组被产生并被变换为频域,从而,由于MDCT的特殊性质的缘故,例如1024个时间离散采样值总是导致1024个频谱值。
已知人耳的感受性依赖于音频信号自身的瞬时频谱。在所谓的心理声学模型中提到了这种依赖性,对于非常多的时间,借助该模型已能够根据瞬时频谱计算屏蔽门限值。屏蔽意味着例如,如果相邻的频谱区具有相当高的能量,则特定的声音或频谱分量被隐蔽。屏蔽事实被用于尽可能粗略地量化变换后存在的频谱值。于是,一方面需要尽力避免再次解码的音频信号中听得见的干扰,另一方面,需要尽可能地利用尽量少的二进制位对音频信号编码,或者说在量化音频信号的情况下,需要尽可能地利用尽量少的二进制位。量化引入的干扰,即量化噪声应低于屏蔽门限值,从而应是不可听见的。根据已知方法,把谱值分类为所谓的比例因子带,比例因子带被假定为对应于人耳的频率组。把一个谱值组内的谱值乘以一个比例因子,以便整体地按比例缩放一个比例因子带的谱值。随后量化乘以该比例因子的比例因子带,从而形成量化谱值。当然,分成比例因子带并不是决定性的。但是,在标准MPEG层3和标准MPEG-2 AAC(AAC=先进音频编码)中采用了它。
数据简化的一个非常基本的方面在于量化后进行的量化谱值的平均信息量编码。对于平均信息量编码,通常采用霍夫曼编码。霍夫曼编码被认为是一种可变长度编码,即,用于要被编码值的代码字的长度取决于其出现概率。逻辑上,最可能的符号具有分配给它的最短代码,即,最短的代码字,从而借助霍夫曼编码,可实现很好的冗余缩减。众所周知的通用长度的编码技术的一个例子是Morse代码。
在音频编码中,霍夫曼代码被用于对量化谱值编码。按照,例如标准MPEG-2 AAC工作的一种现代音频编码器按照特定的标准,把以分段方式分配给频谱的各个霍夫曼代码表用于对量化的谱值进行编码。在一个代码字中,通常总是存在2或4个谱值。
根据MPEG-2 ACC的方法与根据MPEG层3的方法的差别在于不同的比例因子带,即不同的谱值被分成任意数目的频谱段。在AAC情况下,频谱段包括至少四个谱值,但是最好多于四个谱值。这样谱值的整个频率范围被分成相邻的区段,一个区段代表一个频带,从而所有区段一起构成由变换后的谱值覆盖的整个频率范围。
为了得到最大的冗余缩减,如同MPEG层3方法中一样,把多个所谓的霍夫曼表中的一个霍夫曼表分配给一个区段。在通常具有1024个谱值的AAC方法的位流中,现在存在按频率升序排列的用于谱值的霍夫曼代码字。在辅助信息中传送关于每个频率区段中使用的霍夫曼表的信息。
除了谱值外,就标准MPEG-2-AAC(ISO/IEC JTC1/SC29/WG11 IS13818.7)而论,还对比例因子进行霍夫曼编码,以便进一步降低要传送的二进制位的数量。为了进一步提高效率,对帧内的多个比例因子,即具有相关的变换为频域的窗口截取采样值块的帧内的比例因子进行差分编码。从起始值开始,通常无条件地从给定帧的第一个比例因子开始,确定差值。由于一个比例因子与下一比例因子之间的微小改变非常相似,因此对于压缩来说,这是特别有效的。
使用的霍夫曼代码中的缺陷是它实质上不具有冗余。虽然出于节约二进制位及数据压缩的原因,这是绝对需要的,但是其结果是不存在任何可用冗余,通过这种可用冗余,可获得错误防范性。
如果经过遭受错误的频道传送霍夫曼编码信号,则在发生错误之后,在解码器几乎不可能仍然“存有”可能的有效值。下面将借助霍夫曼编码比例因子,对此进行简要说明。如同已经提到的一样,霍夫曼代码是可变长度代码。这是霍夫曼代码的要点,意思是频繁产生的值具有分配给其的最短代码字,而产生频率较低的值具有分配给其的较长或很长代码字。按照所涉及的音频编码器的位流语法,霍夫曼代码字被连续写入帧的位流中。只有当正确地识别,即正确地译解相应的前代码时,也可确定比例因子的代码字的起点。
这意味着,例如在一帧内存在40~100个比例因子,取决于已产生了多少比例因子带。这也意味着每个比例因子带,约40~100个比例因子经受霍夫曼编码。单个比例因子的代码按升序被连续写入位流中。如果经过遭受错误的频道,例如无线电频道的位流传送导致改变分配给头一个比例因子的代码字的长度的位错误,则由于解码器不可能确定第二个比例因子的代码字的起点,因此不可能以无错误的方式译解整帧的比例因子。这样,虽然除了位于起点处的比例因子之外,所有其它比例因子均被正确传送(在例子中,位于起点处的比例因子受到了干扰),编码器也不可能译解正确传送的比例因子。
美国专利No.5488616A涉及一种提供可逆的可变长度代码的系统。为此,由仅仅临时产生的不可逆的可变长度代码产生非对称的可逆代码。不可逆的可变长度代码进一步被转换为对称的可逆代码。选择装置或者选择非对称的可逆代码作为输出信号,或者选择对称的可逆代码作为输出信号。对称的可逆代码用完整的代码树表示,在该代码树中,所有的分支或者由对称代码字终止,或者由分支点终止,这些分支点又被对称代码字终止,或者产生更多的分支点。这样,代码树排他地含有有效的,即对称的代码字。
Goran Bang和Goran Roth为1996年7月的ISO/IEC JTC1/SC29/WG11提出的技术性出版物“用于产生误比特回复VLC表的工具”涉及利用可变长度代码(VLC)对视频信息和音频信息编码和解码的构思,它适于和对错误敏感的信道一起使用。如果沿接收位流的正向方向检测到位错误,则沿相反方向进行解码。如果在相反方向解码过程中也检测到位错误,则终止沿相反方向的解码。采用的代码是非对称的固定长度代码,其中混合有对称的可变长度代码,以致特定数目二进制位的固定长度代码字之后跟随一个二进制位的对称的可变长度代码字。对称的可变长度代码字仅仅用于提供错误防范性,并不携带有用信息。在接收器机,首先抽取对称的可变长度代码字,并且就传输错误,分析该对称的可变长度代码字。
这种混合代码的缺陷在于由于只检查对称的可变长度代码字,因此不能确定在固定长度代码字中产生的错误。另一方面,如果相关的可变长度代码字含有干扰,则无干扰的固定长度代码字可被确定为遭受错误的代码字。
本发明的目的是实现信息字的平均信息量编码及对平均信息量编码信息字的解码的构思,在经过遭受错误的信道传送平均信息量编码信息字的情况下,它可改进错误识别。
该发明目的是通过根据权利要求1或36所述的平均信息量编码设备,根据权利要求10所述的平均信息量编码信息字的解码设备,根据权利要求24所述的平均信息量编码方法,以及根据权利要求33所述的解码方法实现的。
本发明以下述发现为基础,即,只有借助可逆的,例如对称代码字编码的那些信息字才可以有效地防范错误的方式被传输。只有可逆代码字才使与一系列信息字明确相关的一系列代码字的正向编码和反向编码成为可能。和具有不对称代码字,但是出于数据压缩的原因,几乎是最佳的霍夫曼代码相反,对称代码具有更高的冗余。该冗余可用于错误识别。但是,为了不因获得错误防范性而损失太多的压缩增益,根据本发明并不借助对称代码字对所有的信息字编码,而只是利用对称代码字对位于特定的信息字区域内的那些信息字编码。并不借助对称代码对位于该区域外的信息字编码,但是,根据本发明的一个优选实施例,可对这些信息字进行霍夫曼编码。这样,在错误防范性和数据压缩之间实现一种折衷。
借助对称代码字编码的信息字的区域大小的另一重要方面在于对于错误定位来说,短代码,即小的代码表是最理想的。该区域的大小隐含地确定了最长代码字的长度,因为随着表中代码字的数目的增大,有效代码字的长度也将增大。
根据本发明,错误定位是这样进行的,解码器识别无效的,即不可逆的代码字,并据此断定这里存在一个传输错误,因为在编码器中并不产生这种代码。当只存在少量的代码字时,干扰导致无效代码字的概率最高。如果存在大量的代码字,则由于无效代码字的长度逐渐变长,因此干扰导致无效代码字的概率逐渐变小。
在要编码的信息字基本位于一个区域内,并且信息字位于该区域外的概率很小的情况下,根据本发明的方法特别有利。该区域越小,必需的对称代码字越少,并且错误检测越好,可通过添加人造无效代码字增大它。这样,在有效的错误定位的意义上,设法选择尽可能小的由对称代码字编码的信息字区域,但是尽管如此,选择的该区域仍要足够大,以便信息字以极大的概率位于该区域内,从而提供整体的足够的错误防范性。
本发明的一种优选应用在于变换编码音频信号的比例因子的平均信息量编码,因为借助这种应用,产生的98%的比例因子值位于可利用长度不太长的对称代码字编码的可获取(graspable)区域内。如果要对位于该区域外的信息字进行平均信息量编码,则传输称为“换码(escape)”的一个附加值。最好对该换码值进行霍夫曼编码,并且独立于音频位流中的对称编码比例因子,传送该换码值。
这样,根据本发明的平均信息量编码的意义在于即使是较小的RVLC表,也能够覆盖较大的代码字区域,同时具有良好的错误识别性能。由于很少产生换码编码值,在提及的优选应用中,编码效率几乎不受影响。
由于如同已知的一样,比例因子以乘法方式加权几条谱线,因此在由非理想信道引起的比例因子方面的较小干扰导致可听见的强干扰的情况下,本发明应用于变换编码的音频信号的比例因子特别有利。此外,由于和编码谱值相比,比例因子仅构成整个二进制位数量的相当小的一部分,冗余代码对比例因子的保护不会导致相当大的二进制位额外消耗。根据比例因子的错误保护,这种轻微的额外消耗被证明是很合理的,和其二进制位数量相比,比例因子可能把很大的干扰引入音频信号中。
但是,本发明并不局限于比例因子的平均信息量编码和解码,还可用于要被编码的信息字以较高的概率位于一个区域中,从而可利用相当短的对称代码字进行编码,而不会极大的降低效率,并且可借助换码序列对位于所述区域外的值编码的所有情况。
下面将参考附图,说明本发明的优选实施例,其中

图1表示了根据本发明的编码器的示意方框图;图2表示了根据本发明的解码器的示意方框图;图3表示了图2中所示的解码器处理的代码字流的示意图;图4A-4C表示了现有技术的对称代码;图5表示了根据本发明的可逆代码。
但是,在详细说明附图之前,应指出平均信息量编码的一些一般特征。特别地,应讨论对差分编码值进行编码的特殊方面,借助对称代码字和换码值,它可和编码结合在一起。
根据本发明的代码代表平均信息量代码,类似于通常采用的霍夫曼代码,平均信息量代码把短代码字分配给频繁出现的值,并把长代码字分配给很少出现的值。但是,根据本发明的代码在下述方面不同于霍夫曼代码和霍夫曼编码相反,采用的编码技术允许首先从两侧(正向和反向)解码。在技术术语上,这也称为“可逆的可变长度编码(RVLC)”。如果采用可逆的,例如对称的代码字,即如果采用具有可逆代码字的代码簿或代码表,则反向解码是可能的。
此外,使用RVL代码使得代码表,即可用代码字的数量不会构成“完全树”。这样,存在产生无效代码字,即产生非对称代码字的代码符号序列。
树中出现的间隙可用于检测传输错误,因为它们指出接收的代码字从未被发射器产生过。
由于就信息理论而言,霍夫曼编码是最佳的,当唯一的目的在于使数据压缩达到最大时,使用不同的代码是没有意义的。但是,如果目的在于在以尽可能小的压缩效率损失的情况下,降低错误灵敏性,则霍夫曼代码不是有利的。通过利用可变长度代码字进行编码,错误可从被干扰代码扩散到所有后续代码字。这样,一个位错误使代码字的长度失真,其结果是再也不能译解代码字序列中的所有后续代码字,因为解码器不知道相应的代码字从何处开始。
如果不是诸如霍夫曼代码之类的可变长度代码,而是采用可逆的可变长度代码,则由于存在无效的代码字,因此通常能够很迅速地诊断改变代码字长度的错误。如果显示出无效代码字,则解码被停止。就霍夫曼编码来说,这是不可能的,因为所有的代码字都是有效的,不存在无效的代码字。此外,RVLC允许进行反向编码,从而能够改进错误的定位。对此,下面将举例说明。例如,根据本发明的代码表可表示如下信息字 代码字3110011211011111100-1 101-2 1001
-3 10001这样,借助对称代码字,可单独利用那些代码表编码的信息字的区域为-2-+2。位于这些极限之外的值,即数值大于2的值被分别提供除-3和+3的对称代码字之外的一个换码值。
不可能在所示代码表中出现的代码字是下述一些代码字100001100011001011010下面将参考图5,讨论根据本发明的代码的详细表示。
下面,将把一系列数字1,-3,1,2,-1看作虚构的例子,将通过曹受错误的信道传输该系列数字表2信息字序列 1, -3,1, 2,-1代码字序列 111 10001 111,11011 101考虑到信道产生的错误引发12个二进制位的干扰,下述位序列形成受干扰的代码字序列111,10001,111,01011,101五个值的正向解码得到11,10001,111,0,101,即1,-3,1,0,-1。
但是,后向解码得到下述序列101,11010,即,只有-1和一个无效的代码字。从这个简单的例子可看出,通过反向解码,无效代码字01011被很快识别出。此外,通过在无效代码字之后停止解码操作,可很快地定位和识别错误。这样,反向解码报告从后数起,最后一个二进制位到第八个二进制位的区域中的一个错误。
该数字序列的两个解码序列如下所示。下表中的粗体字表明这些数值可能含有错误
正向1 -3 1 0 -1反向x x x x -1这里,错误定位的可能程度取决于错误的类型和所执行的错误隐蔽技术。已知的错误隐蔽技术包括用邻近错误值的完好值替换该错误值。另一方面,如果已知邻近错误的两个完好值,则从左手边或右手边的加权平均值可用于人工替代,即隐蔽该错误值。另一些错误隐蔽技术通过利用其间存在错误的两个相邻值,采用插值方法。另外还可使用从前面或从后面开始的单向推算,以便用“可能的相对完好的”值替代错误值。
图1表示了根据本发明的一个优选实施例的平均信息量编码器。要编码的信息字被输入判定装置10。在前面的表中,出于简单的目的,信息字仅仅由整数组成。在音频编码器中,要进行平均信息量编码的信息字,例如比例因子,将以8位二进制值的形式存在。从而术语“信息字”被假定为包括任意类型的表示法,其中可表现要编码的信息。
在所述判定装置10中,判断信息字是在信息字区域内还是在该信息字区域外。该区域由编码器中实现的代码表确定。如果在所述判定装置中判定要编码的信息字在该区域内,则所述信息字被传送给分配一组对称代码字,即代码表中的一个对称代码字的装置12,从而把一个对称代码字分配给该信息字。但是,如果判定装置10判定该信息字在代码表确定的区域之外,则判定装置10把该信息字传送给产生附加值的装置14,从而在本发明的一个优选实施例中,装置14确定换码值。根据原则,装置14具有两个输出,即用于把换码值写入位流的换码区的输出,及与位流格式化器16相连的输出,位流格式化器产生与输送给判定装置10的输入端的信息字序列相关的代码字流或一系列代码字。
为了更详细地说明图1中以附图标记14表示的用于产生附加值或换码值的装置的操作方式,请参考附图3。图3表示了“潜在的”对称代码字的连续流30,术语“潜在的”被假定为指出已通过非理想的信道,即无线电通路传送该代码字流,从而可能已发生位干扰。该代码字流包括单个的对称代码字30a,30b,30c等,这些代码字都在由包括对称代码字的代码表确定的区域内。但是,潜在的对称代码字流还包括代表位于该区域边缘的信息字的对称代码字31,32。代码字30a-30c由分配装置12产生,并被输送给位流格式化器16。在本发明的一个优选实施例中,考虑到该区域边缘处的信息字而存在的代码字由装置14产生,并从装置14被输送给位流格式化器16,位流格式化器16形成图3中描绘的流30。代码字30a-30c及31和32表示从-7-+7的信息字,即具有分配给其的对称代码字的信息字。如果要编码的信息字的值例如为+12,则对称代码字31和换码值之和得到值12。
遇到代码字31的解码器将立即识别出该代码字是位于区域边缘的代码字,于是译解信息字的解码器通过链路A“转到”换码区,以便发现在其中存在为5(本例中)的换码值。根据本发明的一个优选实施例,产生装置14实现两个功能。一方面,它把相对于区域边缘的代码字传送给对称代码字流30。另一方面,它形成要编码的信息字和位于区域边缘的代码字之间的差值,并产生代表该差值的换码值。当然,可利用根据本发明的编码方法,再次对该换码值进行平均信息量编码。但是,出于数据压缩的原因,最好利用霍夫曼代码对换码值编码。此外,从图3可看出,换码值不被写入对称代码字流,而是被写入位流中的一个不同位置。
如果要对值-12编码,则判定装置10将确定该值在具有对称代码字的代码表确定的区域之外。这样,产生附加值的装置14一方面将把值-7的代码字输出给位流格式化器16,另一方面,将把差值,即5写入换码区。随后借助箭头B所示的链路,结合值-7,例如在图3中为代码字32和换码值34,得到值-12。
在本发明的优选实施例中,值+7将被编码为关于+7的代码字,即编码为代码字31,和换码区中的0,即换码值33。
不同于上面描述的实施例,产生附加值的装置14确定要编码的信息字和位于区域边缘的信息字之间的差值,并且一方面把对称代码字写入对称代码字流30,另一方面把该差值写入换码区中,这并不是恰到好处的。作为一种比较方案,也可把整个信息字写入换码区,对称代码字流只具有由装置14或由位流格式化器16插入其中的虚设的或特定的位组合等等,以便发信号通知下游的解码器,在位流中的该位置,它必须切换到换码区。但是,所示方法的优点在于借助对称代码字,至少位于被对称代码字覆盖的区域中的该部分信息字被编码,从而只有借助,例如霍夫曼代码编码的差值的保护或错误防范程度稍低。与之相反,比较方法的优点在于不必添加或形成差值,对于区域外的信息字来说,使用的冗余代码较少。但是,其缺陷是不能对位于区域外的信息字进行反向解码。但是能够利用本领域中已知的方法或者根据本发明的方法,保护换码区,从而也产生安全状态。
图2表示了根据本发明的解码器的一个优选实施例。一系列代码字或“潜在的对称代码字”流30被输入存储器20,存储器20可被分析存储器20中存储的序列的分析器21访问。分析器21包括从代码字序列30中检测出对称代码字的装置,以及检测代码字序列30中的预定代码的装置。如果分析器21检测到一个完好的对称代码字,它将把该代码字传送给装置22,装置22根据必须对应于编码器(图1)中使用的代码表的已知代码表,把特定的信息字分配给该代码字。但是,如果分析器21检测到预定的代码,在本例中,预定代码是关于区域边缘的信息字的代码字,则分析器21将把该代码字传给装置23,装置23确定位于该区域外的附加信息字。在优选实施例中,当在流30中出现代码字31时,装置23将访问换码区,并从换码区取回相应的换码值,并使对应于代码字31的信息值与该换码值相加或相减。
可以不同的方式把预定的代码(在实施例中,是关于区域边缘的信息字的代码字)分配给换码区中的代码字。一种最简单的可能方法是在使换码区和流30同步的情况下,使用连续指针。在本发明的对比例因子进行平均信息量编码的优选实施例中,这种同步是这样建立的,即始终处理一组或一帧音频信号。对于每帧音频信号,初始化换码区和对称代码字流30,从而连续指针的使用产生正确的结果。
根据本发明的编码器还包括倒转由分析器21启动的解码器序列的装置24。如果分析器21在流30中找到一个非对称代码字,则它将启动倒转解码器序列的所述装置24,因为非对称代码字不可能出现在潜在的对称代码字流30中。随后分配装置22和确定装置23按照相反顺序从代码字序列的另一端开始工作,以便通过反向解码确定错误的位置,从而将只有尽可能少的值才需借助错误隐蔽来替代。
事实上,由于干扰并不导致无效的代码字,因此平均信息量解码器可能不能立即识别出错误的代码字。这样,将越过该错误(beyond theerror)进行解码,直到由于一个后续错误的缘故,解码器遇到一个无效代码字并且随后停止编码时为止。随后反向解码器从另一端解码,可能也将越过该错误的代码字,并在某一时刻,停止于一个无效代码字。从而产生一个重叠区域,平均信息量正向解码器和平均信息量反向解码器均把输出值输入该区域中。这样,错误被定位于该重叠区域,并可确定位于重叠区域之外的解码值是正确的。
如果在编码器中进行了差分编码,则相应的解码器还包括差分解码器25,差分解码器25消除编码器中产生的差分编码。根据本发明,差分解码器25也由序列倒转装置24启动,以执行反向差分解码,从而根据由装置22和23传送给装置25的差分编码信息字产生完全反向解码的信息字。要指出的是反向差分解码器和正向差分解码器可以是独立的装置,或者在正向差分解码中执行加法,而在反向差分解码中进行减法的情况下,可由单个装置实现。
差分编码与根据本发明的编码方法的结合是特别有利的,因为只有利用适当选择的差分构成的起始值的差分编码导致绝对信息字将被,例如与零对称的区域“移位”。
但是,为了允许从信息字序列的另一端反向进行差分解码,必须在编码器中,在该信息字序列的末端添加一个附加值,从而差分解码器知道反向差分编码将从哪里开始。如果在差分编码中使用了固定的起始值,则可根据位于该差分编码信息字序列的末端的附加差分值,产生附加值,该附加值指示出最后的信息字与固定或预定的起始值的差值。当然,该差值也被进行平均信息量编码,并且最好借助对称信息字,对其进行平均信息量编码,从而该值得到很好的保护,以便允许反向解码。如果在编码器中,信息字序列的第一个信息字被用作差分编码的起始值,则把最后一个信息字的绝对值作为附加值添加在该序列的末端将是有利的。该最后一个数值将肯定不在利用对称代码字编码的信息字的区域内。
如同已经指出的一样,本发明的优选应用在于对比例因子编码,迄今为止,这些比例因子首先进行差分编码,随后进行霍夫曼编码。现有技术利用具有121个代码字的霍夫曼表,以便能够对-60-+60区域内的值进行编码。由于与谱值数目相比,要编码的比例因子的数目很小,该值通常为40,绝对需要相当“快速”的错误检测,从而仅仅在译解几个数值之后,解码器就停止解码,从而可提供相当好的错误定位。这就是采用“小”代码表的原因,这意味着对称RVLC代码字的数目应较小。
代码表或代码簿越小,越可能较早识别错误。于是对称编码的信息字的区域从-7延伸到+7。为从7-60区域中的值传送换码值。最好对换码值进行霍夫曼编码。这样“换码”表由关于0-53之间的数值的54个条目组成。这样,接收器每次译解-7或+7时,它必须译解相关的换码值,并分别执行加法和减法。
从统计观点来看,-7-+7的距离覆盖了产生的98%的比例因子值,从而并不是经常产生换码值。如果应更频繁地产生换码值,或者甚至更注意防范错误,则可采用各种已知方法及根据本发明的方法提供具有更高错误防范性的换码值。
为了说明根据本发明的可逆的可变长度代码,首先将涉及图4A,图4A表示了例如在最初提及的Goran Bang和Goran Roth的技术出版物中公开的已知对称代码。该代码由具有根40和分支点42的代码树确定。由于涉及二进制代码,根具有加于其上的两个分支43,44,分支43使树40与确定有效代码字“1”的端点相连。分支44使根40与分支点42相连,分支点42具有从其延伸出的两个分支45,46。分支46与确定该代码的第二个有效代码字“00”的端点相连,而分支45确定该代码的无效代码字,即“01”。代码字“01”是无效的,因为它是非对称的。就进一步的表示法而言,图4A和4B及图5中的无效代码字均包括在方框中。这样,图4A中所示的代码只包括两个有效代码字,即“1”和“00”,并且只包括一个无效代码字,即“01”,它和第二个有效代码字“00”具有相同的长度。
图4B中图解说明了一个稍长的代码。和图4A相反,图4B中的代码含有附加的有效代码字“010”及一个无效代码字,该无效代码字和附加的有效代码字一样,长度也是3个二进制位,其值为“011”。不同于图4A,分支45不与端点相连,而是与附加的分支点47相连,分支点47具有从其延伸出的两个分支,其第一个分支延伸到附加的有效代码字“010”,另一分支延伸到唯一的无效代码字“011”。
图4C是图4A和4B的逻辑延续,因为现在分支点47与附加的分支点48相连,从分支点再次延伸出两个分支,一个分支确定附加的对称代码字“0110”,而另一分支的端点确定唯一的无效代码字“0111”,该无效代码字的长度和代码树,即代码表的最长代码字的长度相同(4位)。
另外,图4C表示了不存在相同长度的有效代码字。这也适用于图4A和4B中的代码。
图4A-4C图解说明的Goran Bang和Goran Roth的技术出版物中的代码仅被用作安全模式,并不被用作对信息编码的代码,因为根据图中所示的代码的逻辑延续易于认识到,在相当大量的代码字的情况下,这样的代码变得很长。此外,相对较长代码的错误防范性很低,因为始终只存在一个无效代码字,此外,该无效代码字的长度和最长的有效代码字相同。这样,如果将对恰当区域的信息值编码,由于代码字变得很长,并且由于始终只存在一个代码字,该代码字也很长,因此利用已知的代码对信息编码是不可取的。这样,在遇到无效的代码字并停止解码之前,解码器不能快速识别出错误,并提交大量的后续错误。于是,对错误的定位很差。
图5中所示的根据本发明的代码表克服了这些缺点,因为该代码树至少具有一个这样的分支点,从该分支点散发出两个分支,这两个分支均与一个分支点相连,而不是与端点相连。在如图5中所示的关于可逆的可变长度代码的优选实施例中,存在分支点50a,50b,50c和50d。图5中的代码树还包括从其延伸出两个分支53和54的根52,分支53与确定第一个并且是最短的代码字0的端点相连,在该优选实施例中,该代码字具有分配给它的信息值“0”。代码字0具有最短的长度,从而对平均信息量编码来说,最频繁地与出现的信息值相联系。在根据本发明的对信息值进行差分编码的优选实施例中,已证明在比例因子的差分编码中,值0的出现概率最高。
根据本发明,从根52散出的另一分支,即分支54并不终止于长度为2位的代码字,而是通向分支点50a,分支点50a又经过两个分支55,56与附加的连接点57,58相连。连接点57和58再经过相应的分支59,60与确定有效代码字101和111的端点相连。和现有技术相反,这里可看出,通过省去长度为2位的一个代码字,可得到长度(即图5中的3个二进制位)相同的两个代码字。它们是代码字101和111。在图5中所示的代码表中,这两个代码字被分配给信息值“-1”和“1”。了解平均信息量编码的一个特征,即还为几乎以相同的频率出现的两个信息值提供长度相同的代码字是有利的。
从图5中可看出,连接点50c具有始于其的两个分支62,63,分支63与连接点64相连,连接点64经过分支与有效代码字110011相连,并与无效代码字110010相连。例如,如果随后解码器遇到无效代码字110010,则解码器将停止编码操作,因为这样的代码字是不可逆的,并且在编码器中从未产生过这种代码字。
从图5中可看出附加代码字的产生,及把附加代码字分配给信息值的情况。不过,下面将提到一个特殊特征。如图5中所示的根据本发明的代码的优选应用在于连同换码值一起的可逆代码的应用。如同已经指出的一样,将借助位于区域“-7”-“+7”边缘的相应信息值的代码字对位于该区域外的信息值编码,并将在换码表中对该区域外的差值编码。这样,在编码位流中,很可能必须分别对位于该区域边缘的值,即“-7”和“+7”编码。此外,“-7”或“+7”出现的概率同样较高。根据本发明的一个优选实施例,分别用长度相同的代码字,即1000001和1100011对信息字“-7”和“+7”编码,同时在同一时刻,这些代码字的长度比出现的最长的代码字(在本例中为“-6”和“+6”的代码字)的长度短,以便提供在平均信息量方面尽可能好的代码表。
此外,从图5中可看出存在8个无效的代码字66a-66h,而根据现有技术的可逆代码在任意时刻只具有或只可具有一个代码字。大量的无效代码字,尤其是较短的无效代码字,例如代码字66e,66f提供高的错误防范性,以致在错误信息字之后,解码器尽可能快地停止解码,从而可把错误限制在尽可能窄的范围内。
最后,应总结的是图5中所示的可逆的可变长度代码特别适于信息字的防范错误的平均信息量编码,因为一方面存在相当多的短的无效代码字,并且另一方面,在损失一个较短的代码字(本例中为代码字“11”)的情况下,得到了两个代码字(本例中为101和111),这两个代码字虽然较长,但是具有相同的概率。虽然对于平均信息量编码来说,实现上应避免省去一个有效短代码,不过根据本发明,这为其中要进行防范错误的平均信息量编码,并且另外要出现具有相当高的概率,尤其是几乎具有相同概率的两个信息值的应用提供了一种较好的解决方案。就呈树状的代码表表示法而论,所述省去是通过存在从其散发出两个分支的特殊分支点,而散发出的两个分支不是与一个端点相连,而是都与附加的分支点相连来实现的。
权利要求
1.一种信息字的平均信息量编码设备,包括从一组可逆代码字中把一个可逆代码字分配给位于信息字区域中的一个信息字的装置(12),该组可逆代码字被设计成对于该区域中的每个信息字,都提供了一个特定的可逆代码字;及为位于信息字区域外的信息字产生附加值(33,34)的装置(14)。
2.按照权利要求1所述的设备,其中可逆的代码字是对称代码字。
3.按照权利要求1或2所述的设备,其中产生装置(14)被安排成它还为位于所述信息字区域边界的信息字产生一个附加值。
4.按照任一前述权利要求所述的设备,该设备被设计成使出现概率较高的信息字位于所述区域内。
5.按照任一前述权利要求所述的设备,其中分配装置被安排成根据要编码的信息字,确定所述区域的大小,从而具有较高概率的代码字的干扰具有这样的效果,即由于所述干扰的缘故,该代码字变成不可逆的代码字。
6.按照任一前述权利要求所述的设备,其中产生附加值的装置(14)被安排成作为附加值形成信息字与位于所述区域的最近边界的信息字之间的差值。
7.按照任一前述权利要求所述的设备,还包括从一组附加的代码字中把一个代码字分配给所述附加值(33,34)的装置。
8.按照权利要求7所述的设备,该设备被这样安排,对于位于所述区域边界的信息字或者位于所述区域外的信息字的平均信息量编码来说,分配装置(12)把对应于位于所述区域的最近边界的信息字的代码字分配给该信息字;及产生装置(14)产生要编码的信息字和位于所述区域边界的信息字之间的差值,差值的符号由该位于所述区域边界的信息字的符号确定,从而要编码的信息字由位于所述区域边界的信息字的可逆代码字和表现为附加值(33,34)的无符号差值表示。
9.按照任一前述权利要求所述的设备,还包括把可逆代码字写入位流的第一区域,并把附加值写入位流的第二区域(33,34)的位流格式化装置(16)。
10.按照任一前述权利要求所述的设备,还包括对信息进行差分编码的装置,该装置根据起始值,产生差分编码信息字,连续的差分编码信息字代表差分值序列。
11.按照权利要求10所述的设备,其中差分编码装置还包括把附加元素添加到差分值序列的末端的装置,附加元素被确定成使得能够执行差分值序列的反向解码。
12.一种对利用可逆代码字进行平均信息量编码的信息字解码的设备,一定区域内的信息字具有分配给其的可逆代码字,而位于所述区域外的信息字由附加值表示,该设备包括从代码字序列(30)中检测可逆代码字(30a,30b,30c)的装置(21);根据代码表,把特定的信息字分配给检测到的代码字的装置(22);在代码字序列(30)中检测预定代码(31,32)的装置(21);及根据预定代码(31,32),确定所述区域外的附加信息字(33,34)的装置(23)。
13.按照权利要求12所述的设备,其中可逆代码字是对称代码字。
14.按照权利要求12或13所述的设备,该设备被安排成使附加元素(33,34)是非对称的代码字。
15.按照权利要求14所述的设备,其中非对称代码字是霍夫曼代码字。
16.按照权利要求13-15任一所述的设备,其中检测可逆代码字的装置(21)被安排成使得能够确定代码字序列(30)中的不可逆代码字。
17.按照权利要求16所述的设备,还包括倒转装置(24),所述倒转装置(24)响应于被确定的不可逆代码字,倒转所述检测装置(21)处理代码字序列(30)的顺序。
18.按照权利要求13-17任一所述的设备,其中信息字被差分编码,并且该设备还包括对差分编码的信息字进行差分解码的装置(25)。
19.按照权利要求17或18所述的设备,其中起始于起始值的信息字序列被差分编码,该序列在其另一端还具有一个附加值,该附加值被选择成使得能够从所述另一端进行反向差分解码,所述差分解码装置(25)被安排成响应所述倒转顺序装置,从所述另一端进行差分解码。
20.按照权利要求13-19任一所述的设备,其中预定代码(31,32)是分配给位于信息字区域边界的信息字的代码字。
21.按照权利要求13-20任一所述的设备,其中预定代码(31,32)是可逆代码。
22.按照权利要求20或21所述的设备,其中确定装置(23)被安排成产生位于所述区域边界的信息字和位于所述区域外的附加信息字的和数,从而得到位于所述区域外的信息字。
23.按照任一前述权利要求所述的设备,其中信息字是变换编码的音频信号的比例因子。
24.一种对信息字进行平均信息量编码的方法,它包括下述步骤从一组可逆代码字中把一个可逆代码字分配给位于信息字区域中的一个信息字的步骤(12),该组可逆代码字被设计成对于该区域中的每个信息字,都提供了一个特定的可逆代码字;及为位于信息字区域外的信息字产生附加值(33,34)的步骤(14)
25.按照权利要求24所述的方法,其中可逆代码字是对称代码字。
26.按照权利要求24或25所述的方法,其中该区域包括出现概率较高的信息字。
27.按照权利要求24-26任一所述的方法,其中产生附加值的步骤(14)包括下述步骤作为附加值形成信息字与位于所述区域最近边界的信息字之间的差值的步骤。
28.按照权利要求24-27任一所述的方法,还包括下述步骤从一组附加的代码字中把一个代码字分配给所述附加值(33,34)的步骤。
29.按照权利要求28所述的方法,其中分配步骤包括下述步骤对位于所述区域边界或所述区域外的信息字进行平均信息量编码,把对应于位于所述区域最近边界的信息字的代码字分配给该信息字;其中产生步骤包括下述步骤产生要编码的信息字和位于所述区域边界的信息字之间的差值的步骤(14),差值的符号由该位于所述区域边界的信息字的符号确定,从而要编码的信息字由位于所述区域边界的信息字的可逆代码字和表现为附加值(33,34)的无符号差值表示。
30.按照权利要求24-29任一所述的方法,还包括下述步骤把可逆代码字写入位流的第一区域(30),并把附加值写入位流的第二区域(33,34)的步骤。
31.按照权利要求24-30任一所述的方法,还包括下述步骤对信息进行差分编码的步骤,从而从起始值开始,产生差分编码信息字,同时连续的差分编码信息字代表差分值序列。
32.按照权利要求31所述的方法,还包括下述步骤把附加元素添加到差分值序列的末端的步骤,附加元素被确定成使得能够执行差分值序列的反向解码。
33.一种对利用可逆代码字进行平均信息量编码的信息字解码的方法,一定区域内的信息字具有分配给其的可逆代码字,而位于所述区域外的信息字由附加值表示,该方法包括下述步骤从代码字序列(30)中检测可逆代码字(30a,30b,30c)的步骤(21);根据代码表,把特定的信息字分配给检测到的代码字的步骤(22);在代码字序列(30)中检测预定代码(31,32)的步骤(21);及根据预定代码(31,32),确定位于所述区域外的附加信息字(33,34)的步骤(23)。
34.按照权利要求33所述的方法,还包括下述步骤作为对不可逆代码字的反应,倒转所述检测装置(21)处理代码字序列的顺序的步骤(24)。
35.按照权利要求24-35任一所述的方法,其中信息字是变换编码的音频信号的比例因子。
36.一种对信息值进行平均信息量编码的设备,包括从具有多个互不相同的可逆的可变长度代码字的代码表中,把一个代码字分配给信息值的装置,代码表的代码字由代码树(图5)确定,该代码树具有根(52);许多分支(53,54,55,56,59,60,62,63);许多分支点(50a-50d,57,58),分支延伸到每个分支点,并且从每个分支点发出两个分支;许多的确定有效代码字或无效代码字的分支端点(66a-66h),有效代码字是可逆的,无效代码字是不可逆的,同时两个分支(53,54)从根(52)发散出,两个分支(55,56)从代码树的至少一个分支点(50a,50d)发散出,这两个分支都与分支点(57,58)相连,而不是与一个分支端点相连。
37.按照权利要求36所述的设备,其中与根(52)相连的分支同时与一个一级端点相连,一级端点确定最短的有效代码,该有效代码被分配给概率最大的信息值。
38.按照权利要求37所述的设备,其中与起始于所述根(52)的另一分支(54)相连的分支点(50a)与两个附加分支点(57,58)相连。
39.按照权利要求38所述的设备,其中分别与另两个分支点(57,58)相连的两个分支(59,60)均与一个二级端点相连,从而确定长度相同的两个有效代码字,这两个有效代码字的长度为最短的代码字的长度的三倍,并且被分别分配给出现概率第二高的信息字及具有近似相同概率的信息字。
40.按照权利要求36-39任一所述的设备,其中至少存在一个长度比最长的有效代码字短的无效代码字(66e,66f)。
41.按照权利要求36-40任一所述的设备,其中有效代码字是对称的。
42.按照权利要求36-41任一所述的设备,其中代码字是二进制字,最短的代码字的长度为一位,还有两个长度为3位的次短代码字。
43.按照权利要求36-42任一所述的设备,其中存在一个以上的无效代码字(66a-66h)。
44.按照权利要求36-43任一所述的设备,其中代码表被定义为如下所示信息字 代码字0 0-1 101-2 1001-3 10001-4 100001-5 10000001-6 100000001-7 1000001+1 111+2 11011+3 110011+4 1101011+5 11000011+6 110101011+7 1100011
45.按照权利要求36-44任一所述的设备,其中代码表把一定区域中的信息字分配给代码字,被分配给位于所述区域边界的信息字的代码字的长度小于代码表中的其它代码字的长度。
46.按照权利要求45所述的设备,其中利用位于所述区域边界的代码字并利用附加的换码值,对所述区域外的信息字进行平均信息量编码。
全文摘要
进行平均信息量编码和相关解码的方法和设备利用一方面由具有可逆代码字的代码表(12)构成的,另一方面包括位于由所述代码表确定的区域(14)外的要编码信息字的换码区的代码。可以这样一种方式选择所述区域,以便根据代码表,用对称代码字对绝大部分信息字编码。一方面,除了正向解码外,还可进行反向解码(24),另一方面,可逆代码字的使用使得能够快速识别通过不理想的信道传送的代码字流中的错误。
文档编号H03M7/40GK1322405SQ99811774
公开日2001年11月14日 申请日期1999年8月12日 优先权日1998年9月7日
发明者马丁·迪耶茨, 阿里·诺巴克特-伊拉尼, 拉尔夫·斯帕施内德尔, 奥利弗·昆茨 申请人:弗兰霍菲尔运输应用研究公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1