用于低速率编码和解码的方法和设备 本发明涉及通信系统,具体涉及用于编码/解码通信信号的方法和设备。
在现代通信中广泛地使用了源编码,以便以更有效的方式提供信号的传送。一种通用型的源编码器是声码器,其中声音信号被编码,以便传输。声码器的一个例子是线性预测编码器(LPC)。在LPC声码器中,每个输入的语音矢量被变换为LPC参数,又被变换为有限码簿的最适合的码字。这种码字的一个例子是1,在滤波解码时,与原始的输入语音相比较,它产生最小的剩余能量。一旦码字被确定,该码字的下标号就被确定并代替原始的语音信号被发送。在接收单元,使用这个下标号从码簿中查找该码字并经适当的滤波产生该信号。
虽然声码器在语音通信中允许更高的效率方面已获得成功,但这种效率是以复制信号地语音质量的某种劣化降级为代价而获得的。在低速率例如基于CDMA(码分多址)蜂窝系统的临时性标准(IS)-95中所建议的1/8速率时的声码器中,这种降级特别显著。当工作在全速率方式和半速率方式时,对于每20毫秒语音帧,IS-95系统分别分配171和80比特。相反,对于1/8速率传输,每个语音帧只分配16比特。据此,典型的嵌入方案例如IS-95系统,遭受大的量化失真,这是因为在1/8速率帧传输期间原始比特仅有一小部分是可用的缘故。
对于这个问题的方法至今为止还没有提出满意的解决方案。例如,在所建议的IS-96语音编码中,业已提出一种差分编码方案,该方案为每10个LPC参数分配一个比特。在提供较好的分辨率的条件下,这个方法的缺点是帧消除可导致过量的量化差错累积,这可产生频漂和/或不稳定的合成滤波器系数。帧能量的严重降低可用于掩蔽在1/8速率期间潜在的频漂效应,但是当在经受高背景噪声电平的情况下,这就产生一个“泵入”(pumping)人工制品的附加问题。业已提出另一个解决办法是,当1/8速率主要用于编码背景或“舒适”噪声时,通过频谱滤波器注入随机码矢量之后为由此产生的信号能量定标度。但是,如果没有较好的分辨率则该合成的背景噪声按照这个办法仍然是不连续地发声。据此,仍然需要有一种用以在保持低的复杂性和低的坚固性的信道差错时以低速率编码信号的改进方法。
图1示出根据本发明优选实施例使用的码簿的逻辑结构示意图;
图2示出根据本发明用于低速率编码的一种优选方法的流程图;
图3示出根据本发明第一实施例设备的方框图。
这些问题和其它的问题是利用根据本发明的一种改进的方法和设备解决的。本发明目前最佳实施例是一种方法,在这个方法中执行预量化器检索以确定最好的预量化器(“P”)码字(即具有最小的预量化器剩余分量),和执行限制的量化器搜索以确定最好的量化器(“Q”)码字(即具有最小量化器剩余分量)。然后比较剩余分量,确定那一个是最小的,并且格式化产生最小剩余的码字的相应下标号,用于进行传输,同时方式指示符指示的哪个类型的下标号(量化器或预量化器)在被发送。在接收单元,编码的信号被馈送到一个声码器,它首先确定那一种方式指示符被发送。如果接收一个量化器(“V”)方式指示符(例如“O”比特),然后声码器使用相应于接收的V的下标号的“V”码字,与前面确定的P码字形成复制的原始信号。如果预量化器(“P”)方式指示符被接收;那么该声码器使用P码字,该码字相应于接收的P的下标号,以形成信号的复制品。因此这种方法仅要求降低比特数(如例在下面描述的实施例中为12比特),以便以较低速率有效地编码信号信息。
参照图1,该图示例如本发明可使用的码簿结构。可以看出,矢量量化器100是两电平的、树结构矢量量化器。这个结构表示在典型的预定矢量量化器中使用的预量化器和量化器系列。量化器级110包括1至N个预量化器码字,例如码字P1111,每个P码字相应于预定矢量量化器的多个预量化器(“P”)标号之一。较低量化器级120包括多个组的多个量化器(“V”)码字121-123,131-133,一组的每个量化器(“V”)码字相应于多个量化器(“V”)下标号的单个下标号。每组V码字与一个P码字相关。例如,在图1中第一组V码字121-123与P码字111相关,其中P码字111形成(典型地较高分辨率)V码字矢量121-123的一个形心(centroid)(典型地较低分辨率)。
正如本领域技术人员所了解的那样,在LPC声码器中使用具有多树结构的码簿是普通的。在这样的声码器中,图1的树结构代表每一个矢量段,在确定反射系数矢量估计中使用这些矢量段。例如,在三矢量段矢量量化器中,使用10元素反射系数矢量估计,这种反射系数矢量估计典型地可分段如下:
r^1-10=r^1-3+r^4-6+r^7-10 式1在这样的矢量量化器中,如下的比特分配代表在相应的三矢量段的每段中全或半速率子帧中期望的值:
表1:全/半速率LPC比特分配
段 P比特 V比特
总数
1 6 5 11
2 5 4 9
3 4 4 8
总数 15 13 28因此,在段1的树中,将有26=64个可能P码字,和在每个P码字下每个相关的组25=32个可能的V码字。而且,P码字代表码簿的预量化器的单元而且被用于编码近似的频谱信息,而V码字用于编码好的或详细的频谱信息。
但是,保持高质量信号不需要所有28比特信息。例如,如果被编码的信号是相对地稳定的,那么每个相应段的预量化器的下标号(P下标号)典型地是高度地相关前面确定预量化器的下标号。在低的,例如1/8速率帧内,仅需要发送详细的频谱信息(即V下标号),并且在接收机的合成器或解码器中把这个信息与前面确定的P码字(即每段相应于前面使用的P下标号的码字)相连接起来。另一方面,如果在被编码的信号改变频谱特性,仅需要发送在1/8速率帧内的P下标号并且在解码器更新预量化器状态。相应于发送的P下标号的P码字将用在当前帧的解码滤波器中、用好的频谱信息(V码字)连接起连续的帧。这就允许通过降低如下表所示的比特数用于信号的适当再现:
表2 1/8速率LPC比特分配
段 P比特 V比特
(方式=0) (方式=1)
1 5 5
2 4 4
3 3 3
总数 12 12
对于由声码器使用的所有可变速率,可使用相同数目的比特用于每段的P码字和V码字,表2示出了用于进一步降低以较低速率传输需要的比特数。在这种情况下,假设相同的码字用于所有速率,对于某些P和V码字的最低有效位在传输之前被取出(drop)。因此,例如,段1的1/8速率P码字将仅包括存储的P码字的5个最高有效位,如表1所示,它是6比特长。同时,一些其它码字将作为一个整体发送(例如段1的V码字)。本领域的技术人员懂得有许多方式,在码簿内的P和V码字可被规定,而且以不同的速率发送比特结构。应当懂得的是通过这个替代的方式,实现进一步降低用于传输的码字下标号(或一些下标号)的大小。这样例如对于1/8速率帧只允许16比特结构,仅需要12比特的矢量量化器信息,余下的一比特用于方式指示符,而3比特用于编码不同的能量。当仅发送V下标号时,方式指示比特将用作量化器方式指示(V方式指示),而且当发送P下标号时,为预量化器方式指示(P方式指示,例如1比特)。
现转到图2,图中示出说明根据本发明的编码过程的优选实施例的流程图。这个过程在声码器是1/8速率方式(步骤210)的初始确定开始。然后根据输入信号执行预量化器搜索(步骤212)。通过把码簿的每个P码字与该信号进行比较和确定具有最小预量化器剩余分量(例如能量)的P码字来执行这种搜索。在矢量量化器是一个多矢量段矢量量化器(例如三段)的情况下,根据具有最小预量化器剩余能量的P码字进行确定每个矢量段的最好P码字,然后每个最好P码字矢量相加形成预量化器矢量总和,并使用这个矢量总和确定最小预量化器剩余分量。本领域的技术人员懂得,可使用其它方法确定最小预量化器剩余分量。而且,预量化器搜索可仅被限制于相应于能被发送的P下标号的那些P码字,而在传输中仅限制的比特数(例如如表2所示)可被使用。因此,在表2的例子中,在编码过程中可搜索仅具有相同最低有效位,例如O比特的那些P码字;同时,该接收机单元将配置加一个O比特作为最低有效位给在查找码簿中的码字之前接收的相应下标号。
在步骤214,执行限制量化器搜索。再次比较该输入信号,但是这时与一组的每个量化器码字(或V码字,每一个相应于码簿的多个量化器下标号之一)比较,或者如果使用多矢量段,每段一组。这一组由前面确定的P码字确定,形成V码字组的预量化器(或形心)。在对初始的1/8速率帧进行确定的情况下,前面确定的P码字可能是预定初始化P码字(对于表2段1组来说,为方便起见可简化为具有下标号000000的P码字)。否则使用发送的最后的P码字(发送和接收声码器二者,因而处理P码字)。然后确定具有最小化器剩余分量组的V码字,而且在存储器中存储其相应的V下标号。在预量化器搜索的情况下,如果有多个段,通过矢量相加最好的V码字每个码字形成的量化器矢量和以及从此确定的最小量化剩余分量,对每个矢量段确定V码字预定组的最好的V码字。另一方面;对于每段的每个V码字可确定最小量化剩余分量,或更简单地,仅是第一段的;在步骤220可使用这些值,本领域技术人员懂得,在用于比较和确定使用哪一个下标号在形成的剩余度量中也可使用其它的技术方案。
接着,在步骤220,把最小的量化剩余分量和最小的预量化剩余分量进行比较,确定哪一个是小一点的。可替代地,在分段码簿的情况下,可使用多个剩余量或与最低次系数(即段1)有关的剩余。当最小的预量化器剩余分量是两个中较小的一个时,预量化方式指示符(P方式指示符)与相应于产生最小预量化剩余分量的P码字下标号一起输出(步骤222)。另一方面,如果最小量化剩余量二者中较小的一个,量化方式指示符CV方式指示符与相应于产生该最小分量的V码字的V下标符一起输出(步骤224)。
在优选实施例中,在输出确定的方式指示符和下标号之前,进一步进行确定是否需要编码的较高速率用于更好的分辨率。因此,在步骤230,两个剩余分量与预定的门限值进行比较,确定是否出现太多的剩余能量。这是一个指示,当解码时,将出现不可接受的信号质量。本领域的技术人员知道如何根据所涉及的应用的这样系数,用户优选等因素设计适当的门限值。如果超过门限值,声码器不得不工作在较高速率(步骤232)。如果不超过门限值,确定的下标号和方式指示符与其它希望信号的参数(例如某些声码器的量化剩余能量),然后形成编码的信号并发送(步骤234)。然后对下一个信号重复该过程(步骤236)。
最后,图3表示通信系统的一个实施例,在该系统中使用根据本发明使用低速率编码。当输入信号301,例如话音信号由可变速率声码器310接收时,该信号被馈送到预量化器搜索器312和量化器搜索器314二者。两个搜索器分别根据图2的步骤212和214执行比较(使用P和V的下标号分别从码簿311检索P和V码字)。确定的P下标号和剩余分量(信号313)和V下标号和剩余分量(信号315)被馈送到编码器316,用于确定使用哪一个低速率方式(如果二者中的任何一个)。然后使用适当的下标号和方式指示符以及其它适当(常规的)参数形成信号的编码方案。这个编码的信号(信号317)在调制器320中调制放大,并经设备300的发送机325发送。
接收通信设备330经接收机335和解调器340接收和解调发送的信号,输出原始信号的编码版本。解码器(例如声码器350)输入信号341的编码版本到方式控制器352和信号发生器354。控制器352确定编码的信号是否包括V或P方式指示符,而且如果不包括,可应用更高解码速率。当接收一个P方式指示符时,控制器352控制信号发生器354从码簿351中检索相应于接收的P下标号的P码字,并使用该P码字与其它接收的信号参数(例如剩余能量)一起产生原始信号的复制品。当接收一个V方式指示符时,该信号发生器354被控制使用二者前面接收的P码字(即在前帧使用的P码字)和相应于接收的V下标号与其它信号参数一起产生信号的复制品。最后,输出信号的复制品作为输出356,用于进一步处理,例如转换为可闻信号。
因此,本领域的技术人员懂得,根据本发明提供的方法和设备用于低速率编码/解码信号,完全满足上面提出的目的,目标和优点。
虽然在结合具体实施例描述了本发明,显然,根据前面描述许多替换、修改和变化本领域的技术人员将是明显的。例如,虽然根据具体的逻辑/功能电路关系描述了图3的低速率声码设备,本领域的技术人员明白,这样可能由各种各样的方式,例如适当的配置和编码处理器,ASIC(专用集成电路)和DSP(数字信号处理器)实施。而且,本发明不限于仅用于蜂窝通信系统的声码器,而且可应用于通信系统其它类型的其它源编码器。因此,本发明期望包括在所附权利要求的精神和范围之内的所有这样的替换,修改和变化。
权利要求书
按照条约第19条的修改
1.一种用于低速率声音编码和传送第一信号的方法,其特征在于,包括以下步骤:
(a)把预定矢量量化器的每个预量化器(“P”)的码字与第一信号相比较,每个P码字相应于多个预量化器(“P”)下标号之一,并以具有最小预量化器剩余分量的相应的第一P下标号确定第一P码字;
(b)把第一组预定的矢量量化器的每个量化器码字(“V码字”)与第一信号相比较,每个V码字对应于多个量化器下标号(“V下标号”)之一和与先前确定的P码字相关联的第一组,并以具有最小量化剩余分量相对应的第一V下标号而不是该第一P下标号来确定第一V码字;和
(c)当最小的预量化器剩余分量大于最小的量化器剩余分量时,发送包括第一V下标号和量化器方式指示符(“V方式指示符”)的编码信号。
2.根据权利要求1的方法,其特征在于,在步骤(c)中,当量小预量化器剩余分量小于最小量化器剩余分量时,该编码信号包括第一P下标号和预量化器(“P”)方式指示符。
3.根据权利要求2的方法,其特征在于,该预定矢量量化器是一个多矢量段矢量量化器,和:
步骤(a)进一步包括确定具有最小预量化器剩余分量的预定矢量量化器的每个矢量段的最好的P码字,矢量加每个最好的P码字形成预量化器矢量和,并使用预量化器矢量和确定最小预量化器剩余分量;
步骤(b)还包括确定每个矢量段的预定组的V码字的最好的V码字,其中对于每个矢量段1,根据所述每个矢量段的相关的预定的P码字确定的V码定预定组,矢量加每个最好的V码定形成量化器矢量和,并使用量化器矢量和确定最小量化器剩余分量;和
步骤(c)还包括当最小预量化器剩余分量小于最小量化器剩余分量时,发送相应于每个最好的P码字和预量化器方式指示符的多个P下标号的每个P下标号,并且当最小预量化器剩余分量大于最小量化器剩余分量时,发送相应于每个最好V码字的多个V下标号的每个和量化器方式指示符。
4.一种用于低速率编码和传送第一信号的系统,其特征在于,包括:
(a)预量化器搜索装置, 用于把预定矢量量化器的每个预量化器(“P”)码字与第一信号相比较,每个P码字对应于多个预量化器(“P”)下标号之一,并且用具有最小预量化器剩余分量的相应的第一P下标号确定第一P码字;
(b)量化器搜索装置,用于把第一组预定矢量量化器的每个量化器码字(“V码字”)和与先前确定的P码字相关联的第一组与第一信号相比较,每个V码字对应于多个量化器下标号(“V下标号”)之一,并且用具有最小量化器剩余分量相应的第一V下标号确定第一V码字;和
(c)编码装置,当最小预量化器剩余分量大于最小量化器剩余分量时,发送编码信号,该编码信号包括第一V下标号但不是第P下标号,和量化器方式指示符(“V方式指示符”)。
5.根据权利要求4的系统,其特征在于,还包括:
(d)接收装置,当编码的信号包括V方式指示符时,用于接收编码信号,和
(e)解码装置,响应V方式指示符,根据先前确定的P码字和对应于发送的第一V下标号的第一V码字,以第一方式对编码信号解码为第一信号的复制品。
6.一种可变速率声码器,用于编码第一信号,以便传输,其特征在于:包括:
一个码簿,包括多个预量化器(“P”)码字,多个P码字的每个对应于多个预量化器(“P”)下标符之一;和多组的多个量化器码字(“V码字”),多个V码字的每个对应于多个量化器下标号(“V下标号”)之一和与多个P码字之一相关联的多组的每组;
一个预量化器搜索器,可运行用于把多个P码字的每个与第一信号相比较,并用最小预量化器剩余分量相对应的第一个P下标号来确定第一P码字;
一个量化器搜索器,可运行用于把第一组的每个V码字与第一信号相比较,该第一组与多个P码字的先前确定的P码字相关联,并且用具有最小量化器剩余分量相对应的第一V下标号来确定第一V码字;和
一个编码器,可操作用于当最小预量化器剩余分量大于最小量化器剩余分量时形成编码型式的信号,该信号包括第一V下标号和量化器方式指示符(“V方式指示符”)但不是第一P下标号。
7.一种通信单元,包括用于解码编码型式的信号的低速率声码器,其特征在于,包括:
一个接收器,用于接收编码型式的信号;
一个解码器,耦连到该接收器,该接收器包括:
一个码簿,包括多个预量化器(“P”)码字,多个P码字的每个对应于多个预量化器(“P”)指示符之一;和多组的多个量化器码字(“V码字”),多个V码字的每个对应于多个量化器指示符(“V指示符”)之一和多组的每组与多个P码字之一相关联;
一个方式控制器,可运行用以从接收器接收编码型式的信号,并确定该编码型式的信号是否包括量化器方式指示符(“V方式指示符”)和预量化器(“P”)方式指示符之一,其中当编码型式的信号包括V方式指示符时,编码型式的信号还包括第一V指示符但不是P指示符;和当编码型式的信号包括P方式指示符时,编码型式的信号还包括第一P指示符而不是V指示符;
信号发生器,耦连到该接收器和方式控制器,可运行用以解码该编码型式的信号:(a)按照第一方式,当编码型式的信号包括V方式指示符时,根据先前接收的P码字和相应于第一V指示符的多个V码字的第一V码字,解码成为该信号的复制品,和(b)按照第二方式,当该编码型式的信号包括P方式指示符时,根据相应于第一P指示符的多个P码字的第一P码字,解码成为第一信号的复制品。
8.一种利用码矢量下标号处理低速率声码信号的方法,其特征在于,该方法包括以下步骤:
确定由输入信号导得的输入矢量;
在第一时段,从多个预量化器下标号中选择一个原始的预量化器下标号(P1);
在该第一时段以后的第二时段:
从对应于该原始的预量化器下标号(P1)的多个矢量下标号中选择一个矢量下标号(V);
根据在该输入矢量与该选定矢量下标号(V)相关联的一个码字之间所作的比较,确定第一失真指示符;
根据在该输入矢量与第二预量化器下标号(P2)相关联的一个码字之间所作的比较,从多个预量化器下标号中确定出第二失真指示符;
将该第一失真指示符与该第二失真指示符相比较;
根据上述比较的结果,选择一个方式指示符;及
发送该方式指示符和该矢量下标号(V)与该预量化器下标号P2其中之一。
9.根据权利要求8所述的方法,其特征在于:
第二预量化器下标号P2是一个复数量化码字的下标号的一部分;
矢量下标号V是一个复数量化码字下标号的一部分;
第一失真指示符包括一个最小量化器剩余分量;
一个码字下标号含有P1和V。
10.一种利用码矢量下标号处理低速率的声码信号的方法,其特征在于,该方法包括以下步骤:
确定出由输入信号导得的输入矢量;
在第一时段,从第一多个指示符中选择出一个第一下标号;
在第二时段;
从第二个矢量指示符中选择出一个第一下标号,该第二个指示符对应于该第一下标号;
根据在该输入矢量与该第一下标号相关联的码字之间所作的比较,从该第二多个矢量指示符中确定出一个第一失真指示符;
根据在该输入矢量与第二下标号相关联的码字之间所作的比较,从该第一多个指示符中确定出一个第二失真指示符;
将该第一失真指示符与该第二失真指示符相比较;
根据上述比较的结果,选择一个方式指示符;及
发送该方式指示符和该第一与第二下标号之中唯一的一个。