专利名称:对模拟信号编码的方法和系统的利记博彩app
技术领域:
本发明涉及对电信中所用的低位率语言编码器具有特别的但非唯一的应用的模拟信号编码方法和系统。本发明还涉及用于再合成原本已编码模拟信号的感性上精确的复制的相应方法和系统。
为便于说明,将参照语言编码译码器来描述本发明,而本发明也可应用于其它类型模拟信号例如图象信号的编码和再合成。由于数种原因,如显著地有适应性、成本和抗噪性,语音编码的数字技术越来越普及。一种这样的技术称之为编码激励线性预测(CELP),该技术对输入语音信号进行取样、划分为帧,并用包括将它与从已知编码簿取得的序列进行比较的过程进行编码。存储为输入语音信号的每帧提供最佳匹配的编码簿序列的指数并将之与某些增益及滤波器参数一起发送。这种类型的编码器属于用合成编码器分析的类别,如此指定是由于它们对大量的待编码信号的可能匹配予以合成,然后用比较技术分析输入信号。对应的译码器或再合成器一般包含与编码器类似的合成段。
在ICASSP文集1987年第1957-1960页上J-P.Adoul,P.Mabilleau,M.Delprat和S.Morissette的题为“基于字母编码的快速CELP编码”的文章中公开了一种简单的CELP语言编码系统,在此对其概略地进行描述。
将原始语言信号源的输出馈送给取样划分装置,该装置以适当的取样速率(例如8KHz)量化语音信号,并将它划分为长度例如为5ms的帧。该划分装置的输出含有已取样、划分的语音信号,将其馈送到加法器的非反相输入端,并馈送到线性预测编码器(LPC)。该LPC导出一组与输入语音信号中的短期冗余码相关的滤波器系数。
二维编码簿包含已取样的白高斯噪声的K个各长为N个样本的随机序列。来自划分装置的已取样语音的帧也具有N样本的长度。该编码簿序列称之为ck(n),其中k是编码簿指数,n是给定序列数k内的特定取样数。将选出的输出序列ck(n)馈送给增益为G的增益级,对每个已取样的语音块和每个编码簿序列数学上导出该增益。用一长期滤波器和一短期滤波器顺序地滤波该增益级的输出。长期滤波器通常仅有一个接头和一相当长的延迟,该延迟通常大于已取样语音帧的长度。长期滤波器的目的是对编码簿序列施加某些长期命令,由于该长期命令的频率通常是被合成语音的音调,该滤波器也称之为音调预测器。长期滤波器的传输函数为1/B(z),可由自适应回路或输入语音信号的分析导出滤波器系数。短期滤波器具有比长期滤波器短得多的延迟但数目大得多的接头(一般10到20)。短期滤波器的目的是对编码簿序列施加某些短期命令,该编码簿序列是在实际语言中从说话者的声域导出的,因此该滤波器常常称为声域滤波器。该滤波器的传输函数为1/A(z)并由LPC将滤波器系数提供给滤波器。短期滤波器的输出是合成语音信号,将其馈送给加法器的反相输入端。加法器的输出是由输入语音段和当前正测试的经滤波编码簿序列之间差值形成的误差信号。将该误差信号馈送给感知加权滤波器,以相对于人耳感知语音信号的方法加权该误差信号,从而使在人的听觉过程较敏感的频谱部分中的误差被编码器去加重。感知加权滤波器的输出馈送给均方差(MSE)计算装置以产生MSE输出信号。MSE装置将语音的帧内的每个样本的感知加权误差平方并将一帧长度上的平方误差相加。将来自编码簿的所有k序列滤波并与输入语音的帧进行比较,MSE装置保持编码簿序列的记录以及产生每输入语音完整帧的最小平均方差的相应增益参量。最优编码簿序列ck(n)的指数、增益级的增益及滤波器系数表示能够用相应再合成系统重构的合成语音信号。当准备传输这些参量时,短期滤波器系数常常作为记录区比率(LAR)或线谱频率(LSF)进行编码,以使它们对由频道中的噪声或干扰引起的位误差不太敏感。
在相应译码器或再合成系统中,从编码簿选出最优编码簿序列ck(n)并馈送到也提供有增益参量的增益级。该增益级的输出馈送到也提供有适当系数的长期反向滤波器。长期反向滤波器的输出加到也提供有适当系数的短期反向滤波器。该短期滤波器的输出加到可用来降低量化噪声影响的可选后置滤波器。该后置滤波器的输出馈送给扬声器或场声器和放大器组合以产生合成语音。
上述CELP编码系统的一个缺点是编码簿中所有序列的穷举搜索和误差比较之前每序列的双重滤波计算强度极大。一个典型编码簿包含各个长度为40个样本的1024个序列,因此实时实现上述基本CELP方案经济上不可行。
降低CELP编码系统的计算负载的一种提仪公开在题为“语音编码系统和语音编码的方法”的英国专利说明书2 235 354A(PHB33579)中。
利用包含一个长随机序列一维主编码簿,从该编码簿将序列馈送给短期滤波器以产生二维滤波的编码簿。来自主编码簿的序列重叠一固定量,因此每序列所需要的某些滤波与以前和以后序列所需要的相重叠。这可显著降低编码簿序列滤波的复杂性。对于一个样本以外所有的主编码簿中连续序列之间的最大重叠来讲,将需要长度为(K+N-1)的主编码簿,其中K是序列数,N是序列的长度。两个样本以外所有的连续序列之间的重叠给出更好的结果,并需要长度为(2K+N-2)的编码簿。
尽管存在以下事实,即,利用一维编码簿使得CELP模拟信号编码系统所需滤波的复杂性降低,但在已滤波的输入语音信号与已滤波的编码簿序列之间所作的比较数仍是相当大的。
本发明的一个目的是减少在合成模拟信号编码系统的分析中每输入模拟信号块所需要的计算。
按照本发明的一个方面,提供一模拟信号编码系统,该系统含有用于获得取样模拟信号的取样装置,包含多个序列的主编码簿,用于从主编码簿导出已滤波序列的滤波装置,用于将取样模拟信号或滤波后的序列垂直地分解为正交分量的分解装置,用于在正交分量从已滤波序列导出时将正交分量与取样模拟信号比较或在正交分量是从取样模拟信号导出时将正交分量与已滤波序列比较的比较装置,以及用于由比较装置的输出信号判定那一个滤波序列按照预定标准是最合格的。
通过在比较之前正交地分解输入信号或滤波后的编码簿信号,可获得比较而言显著的节省。这是由于可使正交比较彼此独立。因此如果正交地分解滤波后的编码簿序列,可先用第一组序列然后用与第一组序列正交的第二组序列比较该模拟信号。被比较序列的总有效数是各垂直组中序列数的乘积。这实质上缩短了编码簿搜索。
另一可能性是在将输入模拟信号与一组已滤波序列进行比较之前对该输入模拟信号进行正交化处理(或分解为正交分量)。如果将输入信号分解为两个正交分量,则需要两次比较,如果将它们分解为四个分量则需要四次比较等。
可配置单个比较装置来实现每次比较,或者可多路控制较小数量的比较装置来实现多次比较。将编码簿序列的整个长度与正交化的输入信号进行比较并非总是必要的。可比较较短长度的序列,然后依靠信号的再合成形成完整的序列。
可在比较之前存储来自主编码簿的已滤波序列。如果在存储以前将它们已正交化,则存储两组或更多组已滤波序列。这些序列可以用如上所述的一个或多个比较装置与取样输入信号加以比较。
第三个可能性是在比较之前将输入信号及已滤波编码簿序列均正交化,由于正交化信号的冗余度这通常将使在已滤波编码簿序列与输入序列之间所作的比较次数降低。
按照本发明的第二个方面,提供有一种对模拟信号编码的方法,该方法包含步骤对模拟信号取样,对来自主编码簿的多个序列进行滤波,至少正交分解已取样信号或已滤波序列,将已滤波序列与已取样的模拟信号垂直进行比较,以及判定哪一个已滤波的序列按照预定标准是最合格的。
可用多种技术实现编码模拟信号的方法和系统所需的正交分解。划分为偶和奇频率分量是可能的,因为是时域分解,因此如果第一序列中的特定取样为非零,则在垂直序列中它的相对部分为零,反之亦然。另一可能性是频域分解,例如第一组序列可含有低频分量,第二组序列可含有高频分量。
正交比较的概念可推广为超出一对的比较,进一步的正交分解也是可能的。例如可用一帧上的偶和奇对称实现给出两组序列的第一次正交化,用半帧上的偶和奇对称实现给出四组序列的第二次分解。还可利用时域或频域分解实现后续分解。
在执行了任何必要的滤波过程之后编码簿序列应是正交的。滤波装置可耦合于滤波器系数确定装置,使滤波装置按照输入信号的特性将主编码簿序列加以滤波。滤波系数确定装置可包含线性预测器。
用于确定滤波系数的装置还可包括用于确定模拟信号中长期冗余的长期预测装置,该装置可含有包括延迟的自适应回路。
主编码簿可以是如英国专利说明书2 235 354A中所公开的一维代码簿。这一般将降低滤波的计算复杂性。
比较装置可配合均方差装置分析输入信号与已滤波编码簿序列之间的差值。在馈送给比较装置之前可将已滤波编码簿序列分别加到增益级,这些增益级例如可具有独立变化的增益或者也可具有幅度相等但极性变化的增益。
输入信号可在馈送到比较装置之前馈送给滤波装置,从而以下述方式加权这些信号,即强调这些信号再合成时感性上具有更大垂直性的那些方面。
可独立地对来自己滤波编码簿序列的最合适的两个或多个序列作出选择,这样各选择对其它选择无任何影响,即没有会降低编码信号的数据速率的相互依赖性。
按照本发明的第三个方面,提供有一种用于获得模拟信号的译码系统,它含有包含多个序列的主编码簿,用于从主编码簿导出已滤波序列的滤波装置,用于垂直地将已滤波序列分解为正交分量组的分解装置,以及根据输入编码信号组合来自各正交分量组的序列以提供前面已编码模拟信号的合成复制的装置。
按照本发明的第四方面,提供有一种再合成模拟信号的方法,包含从单个合成序列至少形成两个正交的合成序列以及至少组合两个合成序列,其中有待再合成的模拟信号已用按照本发明第二方面的方法编码。
按照本发明第一和第二方面的模拟信号编码系统和对模拟信号编码的方法是基于用合成技术的分析,该合成技术涉及合成对输入信号的许多可能的匹配以及选择靠近的一个匹配。结果,按照本发明第三和第四方面的模拟信号再合成系统和再合成模拟信号的方法与它们的编码系统及编码方法相对部分具有许多共同之处。例如,实现模拟信号再合成的典型系统含有类似于用于对原始模拟信号编码的编码系统的那些支路的合成信号支路,其后跟有一后置滤波器以减少量化噪声的明显影响。
下面借助实例、参照
和描述本发明,附图中图1是利用一维编码簿、正交化装置、二维正交滤波的编码簿及误差测量装置的模拟信号编码系统方块原理图,图2是适于供图1所示编码系统使用的模拟信号译码系统的方块原理图,图3是仅对输入语音信号进行垂直分解的模拟信号编码系统的方块原理图,图4是适于供图3所示编码系统使用的模拟信号译码系统的方块原理图,图5是利用一维编码簿和四个二维正交编码簿的模拟信号编码系统的方块原理图,图6是辅助描述图5的系统的操作的一组序列,图7是适于用在图5编码系统中的模拟信号译码系统的方块原理图,图8是辅助描述图7系统的操作的一组序列,图9示出5个方程,标号(1)到(5),相对于具有独立编码簿增益的图1所示编码系统的操作,以及图10示出另外6个方程,标号为(6),(7),(7a),(7b),(8)和(9),相对于编码簿增益相等的图1所示编码系统的操作。
在这些图中,用相同标号指定相应特征。
图1示出利用一维主编码簿以及一对正交滤波的编码簿的实际模拟信号编码系统。此处示出为麦克风20的原始模拟信号源的一个输出端耦合到成帧和量化装置22,该装置将模拟信号数字化并将它划分为5ms的帧和20ms的块。每块数字化的模拟信号加于导出一组短期滤波系数ai的线性预测编码器(LPC)24,并由该编码器进行分析。这些滤波系数根据编码系统的应用进行存储或传输,因为要求它们利用相应的再合成器再生原始模拟信号的复制。已取样的模拟信号还从成帧装置22馈送到具有传输函数A(z)的短期滤波器34,该滤波器的输出施加于传输函数为1/A(z/γ)的短期反向滤波36。一维编码簿40的输出馈送到传输函数为1/A(z/γ)的反向滤波器42的一个输入端。滤波器42的第二输入端提供有由线性预测分析确定的短期滤波系数ai。γ是感性加权系数,选择为0.65左右,它是由于如前面引述的参考文献中由J-P Adoul等人所描述的移动该编码系统输出端的感性加权滤波器而出现在该传输函数中。滤波器42的输出馈送到正交化装置68,由其将各个滤波后的编码簿序列分解为奇偶序列。这是通过采用N个样本的编码簿序列并立即逆转该序列而达到的。奇序列等于编码簿序列的一半减去逆转序列的一半,偶序列等于编码簿序列的一半加上逆转序列的一半。如果序列X(n)含有N个分量,Xe(n)和Xo(n)分别是由正交化产生的偶和奇序列X(n)=Xe(n)+Xo(n)偶序列为Xe(n)= ([X(n)+X(N-n+1)])/2奇序列为Xo(n)= ([X(n)-X(N-n+1)])/2已滤波的奇序列存储在二维编码簿70中,已滤波的偶序列存储在另一个二维编码簿72中。在该实例中,编码簿70和72各包含32个序列,尽管该数目可发生变化以适应实际应用。奇编码簿70的所选输出序列ci(n)馈接到增益为Go的增益级74,增益级74的输出加到加法器78的反相输入端。偶编码簿72的选择输出序列ci(n)馈接到增益为Ge的增益级76,增益级76的输出加到加法器80的反相输入端。
已滤波的输入语音信号从滤波器36的输出端馈送到加法器38非反相输入端,该加法器的输出是误差信号E1(n)。误差信号E1(n)还被馈送到正交化装置66,将它分解为上述偶e(n)和奇o(n)分量序列。装置66的奇输出o(n)馈送到加法器78的非反相输入端。装置66的偶输出e(n)馈送给加法器80的非反相输入端。然后将加法器78的输出馈送给MSE分析装置79,该装置79的输出含有奇编码簿误差信号Eo。加法器80的输出馈送给MSE分析装置81,该装置81的输出含有偶编码簿误差信号Ee。装置79,81的输出Eo、Ee馈送给选择装置83。
用加法器82将增益级74和76的输出相加,再将该加法器的输出馈送到加法器46的非反相输入端。加法器46的输出馈接到分接延迟线48,其延迟由参量(或音调预器指数)d定义。分接延迟线的输出馈接到具有增益(或音调预测器增益)b的增益级50。增益级50的输出馈接到加法器46的非反相输入端以及加法器38的反相输入端。虽然分开描述,加法器46和82可用至少具有三个非反相输入端的单个加法器代替。
操作时,编码系统利用LPC 24确定短期滤波系数ai,一维编码簿序列用加权的短期反向滤波器42加以滤波。然后通过利用正交化装置68进行分解产生两个分开的已滤波编码簿,在此作为二维编码簿70、72示出。用装置66将误差信号序列E1(n)正交化,然后与奇和偶合成序列进行比较。图9中的方程(1)表示整个误差比较,其中E=Eo+Ee,N是编码簿序列的长度。用正交化装置66将E1(n)分为o(n)和e(n),并独立地进行奇和偶序列的比较。在加法器78中实现奇比较,所得结果在装置79中进行均方差分析。图9中方程(2)表示出这两个操作过程。注意MSE装置执行的求和范围已经减半。这种处理过程上的节省是由于被比较序列的对称性。奇或偶序列的第一(或第二)半可从该序列的第二(或第一)半确定。由于编码簿序列和模拟信号序列均已正交化为奇和偶序列,故仅每序列的一半需要彼此进行比较。
为了得出最优奇序列增益Go,将方程(2)中的表达式进行偏微分以给出δEo/δGo,图9的方程(3)中示出设定(δEo/δGo)=0的结果。通过将方程(3)代入方程(2)依照奇的已滤波序列o(n)和编码簿序列定义Eo的最小值,并在图9中以方程(4)示出。在加法器80中实现偶比较,所得结果在装置81中进行均方差分析。借助于与应用到奇比较的那些步骤相类似的一系列步骤,可导出Ee的最小值,并在图9中以方程(5)示出。独立地搜索两个编码簿70、72,编码簿输出序列ci(n)、cj(n)和增益Go、Ge由装置83选择,从而Eo和Ee各具有它们相应的最小值。
分别在方程(4)和(5)中最小化的Eo和Ee的值要求使这些方程的负号之后的商项的值最大。通过计算并存储第一编码簿的输入的商值并用由后续编码簿序列计算的任何较大值代替存储的值可实现这种最大。这产生大量的比较,以确定以下类型的不等式是否成立,(W2)/(X) > (Y2)/(Z)其中Y2/Z表示至此在搜索中已找到的方程的最大商项,W/X表示对应于当前正在考虑的编码簿入口的商项。由于一般最好是进行乘法计算而不是除法,可将该比较再整理为
W2·Z>X·Y2但是,由于W项和Y项需要平方,对每次比较该不等式的每边必须执行两次乘法。为简化该比较,存在两种可能方法用于从该比较中消除商项的分母。第一种是假定该商项的分母是恒定的,不管正在考虑的序列数目。则该比较可简化为W2>Y2,由于W和Y总不为负,故W>Y。尽管这种假定不是在所有情况下有效,对人语音的主要测试已证明在随后再生的语音音质上无明显的变坏。
第二种从该比较中消除分母的方法是在于编码簿中改变序列的数值比例,从而使每序列长度上数值的平方和(即商项的分母所表示的)是相等的。例如计算来自每个第一子编码簿和第二子编码簿的一序列的样本的平方和,第二子编码簿中样本的比例因子等于由第一平方和除以第二平方和而组成的商的平方根。
返回图1,还将两个增益级74、76的输出相加,合成信号用来为音调预测器提供输入,音调预测器含有加法器46、分接延迟线48、增益级50、加法器38和选择分接延迟线参数d和音调增益b使误差信号E1(n)最小的装置(未示出)。在该编码系统中,当各编码簿仅包含
个序列时一对正交的编码簿提供K个随机序列的总和。因此利用两个正交的编码簿使得用因子
/2搜索的编码簿的计算复杂性降低。例如,如果等效非正交编码簿为1024序列长,每个正交的已滤波编码簿则为32个序列长,并且需要仅仅64个序列的搜索。
将已滤波模拟信号与之比较的编码簿序列的有效数可通过也将反向的编码簿序列与已滤波模拟信号比较而加倍。这样对于同样的编码簿序列相异性,编码簿的大小可减半。
可以省去正交化装置66而将误差信号E1(n)直接加于加法器78和80。由于与奇和偶序列的比较自动地抑制信号E1(n)中分别为偶和奇的那些分量,所以不需要对信号E1(n)正交化。如果去掉装置66,代码簿与模拟信号序列之间的比较应在整个序列长度上进行,则所描述的半长序列比较是不充分的。
有可能去掉子编码簿70、72,而在完成编码簿序列的正交化之后马上将已滤波的编码簿序列与经过滤波的输入信号比较。
图2示图示用于再合成已用图1所示系统编码的语音信号的系统,该系统的元件与图1所示相同的以相同的标号表示。一维编码簿40的输出和系数ai馈入传输函数为1/A(z/γ)的加权短期反向滤波器42,滤波器42的输出馈入正交化装置68,在该装置中将已滤波的编码簿序列分解为编码簿序列长度上的奇和偶序列。将奇序列存储在滤波后的编码簿70中,偶序列存储在滤波后的编码簿72中。从编码簿70选择出输出序列ci(n),并馈入增益为Go的增益级74。从编码簿72选出输出序列ci(n),并馈入增益为Ge的增益级76。增益级74和76的输出均馈入加法器64的非反相输入端,加法器64的输出馈入加法器46的非反相输入端。加法器46的输出提供给其延迟由参量d定义的分解延迟线48。延迟线的输出馈入增益为b的增益级50。该增益级的输出馈送到加法器46的非反相输入端。除了被馈送到分解延迟线48,加法器46的输出与系数ai一起馈送到具有传输函数A(z/γ)的加权短期滤波器36。滤波器36的输出与系数ai一起馈入传输函数为1/A(z)的短期反向滤波器37。滤波器37的输出馈入可选后置滤波器30,然后到扬声器32或到放大器与扬声器的组合。
再合成系统提供有编码簿序列数i、j,增益Go、Ge,短期滤波系数ai以及来自诸如图1所示的编码系统的音调预测器参量d、b。将来自各增益级的放大的编码簿序列相加,然后连续地馈入长期和短期滤波器。含有加法器46、分接延迟线48以及增益级50的长期滤波器加上长期或音调冗余,两个短期滤波器36、37加上由编码系统从模拟信号除去的短期冗余。可以包含有后置滤波器30以便减少量化噪声的感知影响。
图1所示的模拟信号编码系统包含分别用于正交化经滤波的输入信号和经滤波的编码簿序列的两个正交化装置66、68。当借助装置66将滤波后的输入模拟信号正交化为奇和偶函数时,仅需比较一半长度的输入和编码簿序列。可由任意一半长度的编码簿序列构造完整长度的序列,而且奇和偶全长序列均可从任何半长序列构造成。因此没必要通过正交化由全长编码簿序列导出半长编码簿序列。这样同样的半长序列组可与奇的以及偶的半长已滤波输入信号序列进行比较。取半长序列表示如下c(n),n=1到n=N/2奇和偶全序列分别给定如下ci(n)=c(n),n=1到n=N/2ci(n)=-c(N-n+1),n=[(N/2)+1]到n=N以及cj(n)=c(n),n=1到n=N/2cj(n)=c(N-n+1),n=[(N/2)+1]到n=N这些全长序列按再合成的模拟信号构造。
另一方面可将不同的半长编码簿序列组用于奇和偶比较,可认为该序列组是上述方法中的变化cj(n),因此
cj(n)=c′(n),n=1到n=N/2cj(n)=c′(N-(n+1),n=[(N/2)+1]到n=N其中c′表示与c不同的编码簿或相同编码簿中的不同部分。
不管是利用相同组的半长序列还是不同组的半长序列,编码簿序列不再需要正交化,这样可除去正交化装置68。如果二个子编码簿均包含相同的半长序列组,则不需复制子编码簿并在方程(4)和(5)中误差项计算上存在简化的可能。
在图3中示出利用含有半长序列的单个子编码簿的模拟信号编码系统。除了下列例外该布局与图1中示出的相同。滤波器42的输出馈送到示出为二维编码簿71的单个子编码簿。存储在编码簿71中的序列为半长序列并如前所述已按照输入模拟信号滤波。子编码簿71中的第i个序列馈入增益为Go的增益级74。增益级74的输出馈入加法器78的反相输入端以及全长序列发生器75。发生器75从增益级74输出端的半长序列导出一全长奇序列。发生器75的输出馈入加法器82的非反相输入端。子编码簿71中第j个序列传送到增益为Ge的增益级76。增益级76的输出传送到加法器80的反相输入端以及全长序列发生器77。发生器77从增益级76输出端的半长序列导出全长偶序列。发生器77的输出馈入加法器82的非反相输入端。要求发生器75、77确保长期预测器的正确操作,它们的操作随后参照图4进行描述。该系统的剩余部分与图1中相同。
操作时,由正交化装置66对每个输入模拟信号帧导出的奇序列的一半和偶序列的一半在装置78、80中与存储在子编码簿71中的变比半长序列进行比较。当为适当匹配的半长序列搜索子编码簿71时,i和j可以是彼此相等的,并且各从1增加到编码簿的长度。
另一方面可将装置76、80和81去掉,利用一个增益级、比较器和在正交化的输入信号之间多路复用的均方差装置为奇和偶已滤波输入序列二者确定最优半长序列。装置66的正交输出也可提供给单个比较器78,因此装置66的奇和偶输出二者与子编码簿的各半长序列进行比较。至于图1所示实施例,则导出两个单独的编码簿指数i,j。
可从主编码簿获得任何长度的已滤波序列。例如,如果获得了全长序列,可选择彼此不相同的两个半长序列并用于与输入信号进行比较,尽管还未发现这样做的优点。当一个半长序列被用于二种比较时,可通过仅对来自主编码簿的半长序列滤波导出它。不需从已滤波的全长序列导出或选择半长序列。
除了不需要正交化编码簿序列以外,对奇和偶序列比较二者均使用相等的半长序列使图9中方程(4)和(5)所示的Eo和Ee的判定作进一步简化。由于
确定方程(4)和(5)中分母数值的计算数减半。这也可认为是确定后面将描述的图10中方程(8)的分母项所需的计算数的一半。
图4示出对应于图3编码系统的再合成系统。除了用正交序列发生器90代替正交化装置68之外该系统与图2中所示相同。如同前面所描述的实施例,将增益值Go、Ge、短期滤波参数ai,长期滤波参数d、b及编码簿指数i、j提供给该系统。主编码簿40的内容传送到短期滤波器42,该滤波器的输出馈入正交序列发生器90。该发生器工作将已滤波的编码簿半长序列c(n)(从n=1到n=N/2)转换为奇和偶的全长序列
ci(n)=c(n) (n=1,…,N/2)ci(n)=-c(N-n+1) (n=[(N/2)+1],…,N)以及cj(n)=c(n) (n=1,…,N/2)cj(n)=c(N-n+1) (n=[(N/2)+1],…,N)这些序列分别存储在子编码簿70、72中。发生器75、77(图3)以与发生器90相同的方式操作。选择输入语音各帧的有关全长序列并馈入增益级74、76,将这些增益级的输出相加,并如前面一样通过长和短期滤波器滤波,以将该系统的输出提供给例如扬声器32。
来自主编码簿的每个已滤波序列的奇和偶全长序列二者的结构并不是严格需要的,可象图3所示编码系统一样使用含有半长序列的单个编码簿。准备传送到增益级74、76的全长序列可在从从属编码簿选出有关半长序列之后按照以上方程来构造。
图1和3所示的模拟信号编码系统对每个输入信号帧需要两个增益参数,在传输或存储位率严格的情况下这是不能接受的。表示增益参数所需的位数相对于仅有单个编码簿和增益级的编码系统可显著地增加。由于这两个增益参数表示有关的信号,它们之间将存在某些程度的相关性,因此相对于另一增益来表示一个增益是有可能的,并可在所需位数上略有节省。
不需额外的位即可用前面所示的系统来表示第二编码簿增益,只要求两个增益相等(即,Go=Ge),或更好的是它们的幅度相等而它们的符号可为正或负。后一种情况在单个编码簿编码系统上仅承担一位的代价。将增益值作为各所选编码簿序列的符号和应用于两个编码簿序列的的单一幅度进行传输。
这可至少以三种方法达到(1)计算每个可能的编码簿序列对的总均方差(Eo+Ee),假定约束条件为|Go|=|Ge|,以及MSE最小。这得出最优编码簿指数(i,j),增益幅度(G=|Go|=|Ge|)和Go和Ge的符号,Si=Go/|Go|=±1,Sj=Ge/|Ge|=±1。首先计算如图10方程所示的组合误差E2。利用图10的方程(7)计算增益Ge和Go的幅度G。在方程(7)中,必须选择Si,这样它与整个帧长(或对称序列情况下的半帧长上的o(n)和ci(n)的乘积之和为相同符号。类似地必须选择Sj,使其与e(n)和cj(n)的乘积之和具有相同符号。对Si和Sj的数值的这些约束是为了防止Go和Ge之值为负,并分别归纳在图10的不等式(7a)和(7b)中。
组合方程(6)和(7)得出方程8,选择i和j的数值使得图10的方程(8)中的误差E2为最小。
可将两个编码簿序列组合,从而利用图10的方程(9)形成组合编码簿入口c(n),该方程中的G数值由方程(7)计算。然后将该组合编码簿入口输送到加法器82(图3)。
(2)单独为分别给出Eo和Ee最小值的序列搜索各编码簿,不需对Go和Ge的数值施加约束。那么,利用该编码簿序列对计算G的幅度,这样G=|Go|=|Go|,与Go和Ge的符号一起使等于(Eo+Ee)的总MSE最小。
第一步是找出为产生方程(2)中Eo最小值的i值的编码簿入口以及为给出方程(2)的垂直等效量中Ee最小值的j值的编码簿入口。由方程(3)给出增益Go,由方程(3)的垂直等效量给出增益Ge。然后如以前一样可由不等式(7a)、(7b)确定增益Go和Ge的符号Si和Sj,而由方程式(7)确定两个增益的幅度G。最后如前利用方程(9)确定合成编码簿入口c(n)。这第二种方程给出编码簿指数(i,j)的次最优值,增益幅度(G=|Go|/|Ge|)以及Go和Ge的符号(分别为Si=Go/|Go|,Sj=|Ge|/|Ge|),但比第一种方法具有更为小的计算复杂性。在用于对人的语音编码的实际编码系统中两种方法之间实质上不存在可感知的差别。
(3)可修改方法(2)以给出更好的结果如下。利用方程(4)、(5)选出产生误差信号最低值的来自各编码簿的至少两个序列,以给出例如两对编码簿指数(i,i),(j,j)。然后通过将各情况下Ee和Eo值相加而计算,由这些序列的四种可能组合(i,j)、(i,j)、(i,j)、(i,j)中的每个组合产生的总误差,并选出产生最低误差的序列对。然后如上所述由增益Go和Ge计算继续该方法。该过程还可包括在搜索之内增益值的量化,而不明显增加计算的复杂性。该量化要求将增益Go和Ge的值设置为可能输出值之一,这是编码系统在计算误差信号Eo和Ee之前所允许的,并当例如原始计算的增益值之一与可获得的量化值之一相差特别远时应产生更好的结果。可从每个编码簿选出多于两个的序列并可使用多于两个的编码簿。
这些变化对图2和4所示的功能如前所述的译码器或再合成器无影响。
图5示出由图1所示系统导出但利用四个正交编码簿的编码系统。如同图一所示编码系统一样设置原始语音信号源20、成帧和量化装置22、线性预测系数(LPC)发生器24、短期滤波器34及短期反向滤波器36,并以相同方式作用。滤波器36的输出传送到加法器38的非反相输入端。该加法器的输出包含误差信号E1(n)。一维编码簿40的输出馈送到传输函数为1/A(z/γ)的短期反向滤波器42。对该滤波器提供有LPC装置24导出的短期滤波系数a。滤波器42的输出传送到正交化装置68,该装置68具有四个可认作为两对输出并均馈给单独的二维编码簿70a、70b、70c、70d的输出端。来自编码簿70a的序列数i馈送到增益级74a,增益级74a的输出馈入加法器82的非反相输入端和加法器78a的反相输入端。加法器78a的输出馈入MSE装置28a,装置28a的输出是误差信号Ea。来自编码簿70b的序列数P馈入增益级74b,增益级74b的输出馈入加法器82的非反相输入端和加法器78b的反相输入端。加法器78b的输出传送到其输出为误差信号Eb的MSE装置28b。来自编码簿70c的序列数j馈送到增益级74c,增益级74c的输出馈入加法器82的非反相输入端和加法器78c的反相输入端。加法器78c的输出馈送到其输出为误差信号Ec的MSE装置28c。来自编码簿70d的序列数q馈送到增益级74,增益级74的输出提供给加法器82的非反相输入端和加法器78d的反相输入端。加法器78d的输出馈送到输出为误差信号Ed的MSE装置28d。四个MSE装置28a、28b、28c、28d的输出信号Ea、Eb、Ec、Ed馈送到选择装置83。
加法器38的输出传送到第二正交化装置66,其有四个输出端并以与正交化装置68类似的方式工作。装置66的四个输出各馈入相应加法器78a、78b、78c或78d的非反相输入端。加法器82的输出馈送到加法器46的非反相输入端。加法器46的输出提供给分接延迟线48,分接延迟线48的输出以延迟d提供给增益为b的增益级50。增益级50的输出传送到加法器38的反相输入端和加法器46的非反相输入端。
正交化装置66、68可以多种方式实现将单个序列正交化为四个相互垂直的序列。如果对该序列实现第一次正交化形成奇和偶序列,则这些序列中的每一个可在时域或频域中被进行正交化处理。时域正交化包含形成具有多个零和非零项的第一序列,以及含有多个零和非零项的第二序列。当第一序列的一个项为非零时,第二序列的相应项必须为零,反之亦然。这样即服从于正交序列必须相乘为零的规则。频域正交化包含形成含来自独立频带的信号的一对序列,例如含低频分量的第一序列和含高频分量的第二序列。
装置66、68还可在整个序列长度上实现奇和偶正交化,接着在一半序列长度上实现奇和偶正交化。这参考图6(a)到6(h)会更好地得以理解,其中为易于理解将20项的序列的正交化仅以符号形式加以描述。首先取原始序列(a)并形成时间上相反的形式(b)。通过将(b)加到(a)上形成偶序列(c),对该实例的应用场合忽略被两个相加的序列相除。通过从(a)减去(b)形成奇序列(d),并也忽略被两序列之和相除。然后取偶序列(c)的第一半并形成时间上相反的形式。序列(c)的第一半与它的时间相反形式相加形成序列(e)的第一半。将序列(c)的第二半类似地加到其时间相反的形式上,以获得序列(e)的第二半。序列(e)表示跟随有偶正交化的偶正交化。序列(c)的第一半的时间相反形式与序列(c)的第一半相减得到序列(f)的第一半。序列(f)的第二半以相同的方式从序列(c)的第二半导出。序列(f)表示跟随有奇正交化的偶正交化。如同从序列(c)导出序列(e)和(f),从序列(d)导出序列(g)和(h)。序列(g)表示跟随有偶正交化的奇正交化,序列(h)表示后随奇正交化的奇正交化。所有的序列(e)、(f)、(g)和(h)是相互正交的,也就是说任何一个与任何另一个在其全长上的乘积为零。这种相互正交性允许图5编码系统所示的四个比较彼此独立。在实际系统中将增益级74a、74b、74c、74d的增益幅度限制为相等,这里均示出为等于G。
可对图5所示的编码系统加以修改,通过仅将来自主编码簿的已滤波四分之一长度序列与奇和偶正交化的已滤波模拟信号进行比较而去掉编码簿序列的正交化。对每次正交比较而言已滤波的编码簿四分之一长序列可以是不同的,或者它也可以是相同的。为四个正交比较中的每一个选择序列,传输或存储指数i、p、j、q。如果四分之一长度的序列是相同的,可如上所述实现确定从编码簿选择的序列数的简化。
图7示出为图5编码器所用的相应译码器或再合成系统。一维编码簿40的输出馈入传输函数为1/A(z/γ)的短期反向滤波器42。滤波器42的输出传送到正交化装置68,该装置68具有四个各馈送到四个二维编码簿70a、70b、70c及70d之一的独立输出。来自编码簿70a的序列数i、来自编码簿70b的序列数P、来自编码簿70c的序列数j和来自编码簿70d的序列数q均馈接到加法器86的非反相输入端。加法器86的输出加至增益级12,增益级12还提供有增益参数G。增益级12的输出馈入加法器46的非反相输入端。加法器46的输出提供给分接延迟线48,延迟线48还提供有延迟参数d。分接延迟线48的输出传送到还提供有增益参数b的增益级50。增益级50的输出传送到加法器46的非反相输入端。加法器46的输出还馈送到具有传输函数A(z/γ)的短期滤波器36。短期滤波器36的输出提供给具有传输函数1/A(z)的短期反向滤波器37。滤波器37的输出提供给扬声器32或一放大器与扬声器的组合。三个短期滤波器42、36和37都提供有原本由LPC装置24(图5)导出的短期滤波参数ai。
操作时,图7所示译码器提供有编码簿指数i、p、j、q,增益参数G,音调预测器参数d、b和短期滤波参数a。将四个正交编码簿序列加在一起,并在放大和滤波之后馈送到输出装置(在这种情况下为扬声器)。
当已对图5系统加以修改仅将一个四分之一长已滤波编码簿序列与每个正交化的模拟信号进行比较时,为了使图7系统与图5系统相兼容,可在图7系统中用一正交序列发生器90(图4)代替正交化装置68。正交序列发生器按下述方式作用,以从单个四分之一长序列产生四个正交的全长序列。
正交序列发生器首先产生半长的奇和偶序列,然后利用这两个序列中的每个产生奇和偶的全长序列。图8示出对应具有5个项的四个之一长序列(a)的该过程,为简化起见仅以符号形式示出。通过产生四分之一长序列(a)的时间上相反的形式并将该形式加在序列(a)的末尾产生半长偶序列(b)。通过产生序列(b)的时间上相反的形式并将其加于序列(b)的末尾产生全长序列(c)。序列(c)与已经过正交化以得出全长偶序列然后正交化以在每半个序列长度上得到偶序列的全长序列等效。时间上相反的序列(b)的反转型式加在序列(b)的尾部,以形成全长序列(d)。序列(d)与已正交化以得出全长奇序列接着正交化以得到各半长序列上的偶序列的全长序列等效。
时间上相反的序列(a)的反向变型加到序列(a)的末尾,从而得到半长序列(e)。通过将时间上相反的序列(e)之变型加到该序列的尾端而产生全长序列(f)。序列(f)与已正交化得到全长偶序列并接着正交化给出半长序列上的奇序列的全长序列等效。通过将时间上相反的序列(e)的反向变型加到该序列的末尾而产生全长序列(g)。序列(g)与已正交化得到全长奇序列并随后正交化得到半序列长度上的奇序列的全长序列等效。
然后将这四个已滤波的序列(c)、(d)、(f)、(g)提供给从属编码簿70a、70b、70c、70d(图7),接着再合成器按如上所述方式操作。
可以多种不同方式来构造全面实现编码簿搜索长度减小所需的正交编码簿,只要满足以下方程,∑(CB1×CB2)=0其中CB1是第一编码簿中的任何序列,CB2是第二编码簿中的任何序列。对上述奇和偶函数分解的可能方法是时域分解或频域分解。例如,利用时域分解,CB1可包含编码簿第一半的随机取样,即各序列中的前N/2样本和其后的零样本,CB2可包含编码簿前一半的零样本,即前N/2样本和其后的随机样本。例如,可通过使用低通和高通滤波器产生低频编码簿和高频编码簿实现频域分解。
模拟信号编码系统还有可能具有奇数个正交编码簿。例如首先将编码簿序列分解为高和低频分量,接着可在较高频段进一步分解为奇和偶频率分量。
为了任何编码和再合成系统的正确作用,这两个系统中的编码簿必须含有相同序列。
通过阅读本说明书,对本领域技术人员来说显然可作出其它的修改。这种修改可包括在模拟信号编码系统及其组成部分的设计、制造和使用中已知的其它特征,这些特征可用于代替或附加于本文中已描述的特征。虽然该申请已形成对特定特征组合的权利要求书,但应理解本发明公开的范围还包括任何新特征或本文明确或稳含地公开的特征的任何新的组合或其任何归纳,不管它是否涉及任何权项中目前所要求保护的相同发明,也不管它是否如本发明般减轻任何或所有相同的技术问题。由此本申请人提请注意可能会对本申请提出过程中的这些特征和(或)这些特征的组合或对由此得出的任何进一步的申请形成新的权利要求。
权利要求
1.一种模拟信号编码系统,该系统含有用于获得取样模拟信号的取样装置,包含多个序列的主编码簿,用于从主编码簿导出已滤波序列的滤波装置,用于将取样模拟信号或滤波后的序列垂直地分解为正交分量的分解装置,用于在正交分量从已滤波序列导出时将正交分量与取样模拟信号比较或在正交分量是从取样模拟信号导出时将正交分量与已滤波序列比较的比较装置,以及用于按照预定标准由比较装置的输出信号判定哪一个已滤波序列是最合格的装置。
2.如权利要求1所述的系统,其特征在于还含有用于存储已滤波序列的存储装置。
3.如权利要求1或2所述的系统,其特征在于还含有用于在从已滤波序列导出来自第一分解装置的正交分量时将已取样的模拟信号分解为正交分量、或用于在从已取样模拟信号导出来自第一分解装置的正交分量时将已滤波序列分解为正交分量的另一分解装置。
4.一种模拟信号编码系统,该系统含有用于获得取样模拟信号的取样装置,包含多个序列的主编码簿,用于导出来自主编码簿的已滤波序列的滤波装置,用于将已滤波序列垂直分解为至少两个各包含多个序列的从属编码簿的分解装置,至少两个各用于将已取样模拟信号与来自相应的一个从属编码簿的序列加以比较的比较装置,以及用于按照预定标准由比较装置的输出信号判定哪一个来自从属编码簿的已滤波序列是最合格的装置。
5.一种对模拟信号编码的方法,包含以下步骤对模拟信号取样,对来自主编码簿的多个序列进行滤波,至少正交分解已取样信号或已滤波序列,将已滤波序列与已取样的模拟信号垂直进行比较,以及按照预定标准判定哪一个已滤波的序列是最合格的。
6.如权利要求5所述的方法,其特征在于将一半长度的已滤波序列与一半长度的取样模拟信号段进行比较。
7.如权利要求5或6所述的方法,其特征在于将已滤波的序列正交化并分开存储彼此正交的序列组。
8.一种用对模拟信号编码的合成方法的分析,包含以下步骤从单个编码簿序列组导出至少两组正交的合成编码簿,将需要编码的模拟信号段与至少两组合成编码簿序列进行比较,以及判定来自合成序列组的那些序列哪一个提供输入模拟信号段的最优匹配。
9.一种用于获得模拟信号的译码系统,它含有包含多个序列的主编码簿,用于从主编码簿导出已滤波序列的滤波装置,用于垂直地将已滤波序列分解为正交分量组的分解装置,以及根据输入编码信号组合来自各正交分量组的序列以提供前面已编码模拟信号的合成复制的装置。
10.一种再合成模拟信号的方法,包含步骤从单个合成序列至少形成两个正交的合成序列以及至少组合两个合成序列,其中有待再合成的模拟信号已用按照权利要求5、6、7或8中的任意一项所述的方法编码。
全文摘要
在-CELP模拟信号编码系统中,来自主编码簿的序列经滤波然后存储在从属编码簿中。将输入模拟信号加以滤波并与来自从属编码簿的序列比较选出最优序列对。由于该比较是正交的,可从编码簿选出序列并与已滤波的输入模拟信号完全独立地进行比较。由于正交化的信号包含某些冗余,可将来自主编码簿的减小长度序列与正交化的模拟信号加以比较。在某些情况下不需将主编码簿正交化。包括分为奇和偶序列的序列正交化的各种措施是可能的。进一步正交化例如给出四个比较也是可能的。
文档编号G10L19/16GK1060378SQ9110939
公开日1992年4月15日 申请日期1991年9月25日 优先权日1990年9月28日
发明者P·W·埃利奥特, T·J·莫尔斯利 申请人:菲利浦光灯制造公司