跟踪准周期性信号的相位的方法和设备的制作方法

文档序号:2829598阅读:312来源:国知局
专利名称:跟踪准周期性信号的相位的方法和设备的制作方法
背景技术
发明领域本发明一般与语音处理领域有关,尤其,与用于跟踪准周期性信号的相位的方法和设备有关。
背景通过数字技术的语音传输已经变得普及,特别是在远距离和数字无线电话应用中。而这又使得人们对确定可以通过信道发送最小信息量而同时保持再现语音的察觉质量方面产生兴趣。如果通过简单的采样和数字化发送语音,则需要大约为每秒64千比特(kbps)的数据速率,才能达到传统模拟电话的语音质量。然而,通过使用语音分析,接着通过合适的编码、发送和在接收机处再合成,可以使数据速率大大地降低。
把使用通过析取与人类语音生成的模型有关的参数来压缩语音的技术的装置称为语音编码器。语音编码器把来话语音信号分成时间块或分析帧。语音编码器一般包括编码器和解码器。编码器分析来话语音帧,以析取某些有关参数,然后把参数量化成二进制表示,即,位组或二进制数据分组。通过通信信道把数据分组发送到接收机和解码器。解码器处理数据分组,使它们去量化以产生参数,并使用经去量化的参数重新合成语音帧。
语音编码器的功能是通过除去在语音中固有的所有自然冗余把数字化语音信号压缩成低位速率信号。通过用一组参数来表示输入语音帧,以及使用量化,以一组位来表示参数来实现数字压缩。如果输入语音帧具有位数Ni,而语音编码器产生的数据分组具有位数No,则通过语音编码器得到的压缩率是Cr=Ni/No。而富有挑战性的是在保持经解码语音的高话音质量的情况下同时实现目标压缩率。语音编码器的性能取决于(1)语音模型、或上述分析和合成处理结合执行得好坏,以及(2)在每帧No位的目标位速率处,参数量化处理执行得好坏。因此,语音模型的目标是针对每帧用较小的参数组来捕获语音信号或目标话音质量的要素。
语音编码器可以作为时域编码器实现,所述时域编码器试图使用高时间分辨率处理来捕获时域语音波形,以每次对语音小段(一般是5毫秒(ms)的子帧)进行编码。对于每个子帧,借助在技术领域中众知的各种搜索算法,从代码簿空间可找到高精确度表示。另一方面,语音编码器可以作为频域编码器实现,频域编码器试图用一组参数捕获输入语音帧的短期语音频谱(分析),并使用相应的合成处理从频谱参数重新创建语音波形。根据A.Gersho和R.M.Gray的“矢量量化和信号压缩(1992)”中描述的已知量化技术,参数量化器通过用存储的码矢量表示来表示参数,从而保留了参数。
众知的时域语音编码器是代码激励的线性预测(CELP)编码器,在L.B.Rabiner和R.W.Schafer的“语音信号的数字处理”396-453(1978)中描述所述代码激励的线性预测编码器,在此全部引用作为参考。在CELP编码器中,通过线性预测(LP)分析除去语音信号中的短期相关,或冗余,所述线性预测分析发现短期共振峰滤波系数。把短期预测滤波施加到来话语音帧产生一个LP残余信号,用长期预测滤波参数和后续随机代码簿进一步使该剩余信号模型化和量化。这样,CELP编码使编码时域语音波形的任务分成对LP短期滤波系数编码和对LP剩余编码的单独编码任务。可以按固定速率(即,对于每个帧使用相同的位数No)执行时域编码,或按可变速率(其中,对于不同类型的帧内容使用不同的位速率)执行时域编码。可变速率编码器试图只使用需要的位数量,使对编码器的参数编码达到足够得到目标质量的水平。在美国专利第5,414,796号中描述一种示例可变速率CELP编码器,该专利已转让给本发明的受让人,并在此全部引用作为参考。
诸如CELP编码器之类的时域编码器一般依赖于每帧的较高的位数No以保持时域语音波形的精确度。如果每帧的位数No相对较大,(例如,8kpbs或以上),则这种编码器一般传送优良的话音质量。然而,在低位速率处(4kpbs或以下),由于有限的可用位数,时域编码器就不能保持高质量和稳固的性能。在低位速率处,有限的代码簿空间限制传统时域编码器的波形匹配能力,而在较高速率的商业应用中就能成功使用。
当前,对于开发在中到低位速率(即,在2.4到4kpbs和以下的范围中)工作的高质量语音编码器存在强烈研究兴趣以及商业需求。应用范围包括无线电话、卫星通信、互联网电话、各种多媒体以及语音流应用、语音邮件以及其它语音存储系统。其驱动力是在数据分组丢失情况下对高性能需求和对稳固性的要求。各种近来语音编码标准化努力是推进低速率语音编码算法的研究和开发的另一个直接驱动力。低速率语音编码器能在每个允许应用的带宽上创建更多信道或用户,并且与合适信道编码的附加层耦合的低速率语音编码器可以适合于编码器规格的总位预算,以及在信道差错情况下传送稳固性能。
对于按较低位速率的编码,已经开发了各种频谱或频域语音编码的方法,其中,将语音信号作为频谱的时间—变化演变来分析。例如,见R.J.McAulay和T.F.Quatieri的在“语音编码和合成中的正弦编码”,第4章(W.B.Kleijn和K.K.Paliwal编辑,1995)。在频谱编码器中,目标是用一组频谱参数来模仿或预测每个语音输入帧的短期语音频谱,而不是精确地模拟时间—变化语音波形。然后,对频谱参数编码,并用经解码的参数建立语音的输出帧。所产生的合成语音与原始输入语音波形不匹配,但是提供了相似的察觉质量。本技术领域中众知的频域编码器的例子包括多频带激励编码器(MBE)、正弦变换编码器(STC)以及谐波编码器(HC)。这种频域编码器提供具有简洁参数组的高质量参数模型,可以用在低位速率处用较少的可用位数进行精确地量化。
但是,低位速率编码对有限编码分辨率或有限代码簿空间强加了苛刻的限制,这就限制了单个编码机构的有效性,使得编码器在各种背景条件下不能用同等精度来表示各种类型的语音分段。例如,传统低位速率频域编码器不发送语音帧的相位信息。而是,通过使用随机的、人工产生的初始相位值和线性内插技术来重构相位信息。例如,见H.Yang等人在29 Electrontic Letters 856-57(1993年5月)中的“在MBE模型中用于有声语音合成的二次相位内插法”。因为人工地产生相位信息,所以即使量化—去除量化处理完善地保留正弦波的振幅,但是频域编码器所产生的输出语音也不能与原始输入语音对准(即,主要脉冲不同步)。因此证明了在频域编码器中采用任何闭环性能测量法(例如,诸如信噪比(SNR)或感知SNR)是困难的。
已经使用多模式编码技术结合开环模式判定处理来执行低位速率语音编码。在Amitava Das等人的Multimode and Variable-Rate Coding of Speech,in SpeechCoding and Synthesis ch.7(W.B.Kleijn和K.K.Paliwal编辑,1995)中描述了一种这样的多模式编码技术。传统的多模式编码器把不同的模式,或编码—解码算法,应用于不同类型的输入语音帧。定制每种模式或编码—解码处理以最有效的方式表示某种类型的语音段,例如,有声语音、无声语音或背景噪声(非语音)。外部的开环模式判定机构检查输入语音帧,并作出有关把哪个模式施加到该帧的判定。一般,通过从输入帧析取许多参数,按照某些临时的和频谱的特征对参数进行估计,以及根据估计以一种模式判定为基础来执行开环模式判定。因此在事先不知道输出语音的确切情况(即,在语音质量或其它性能测量方面,输出语音将和输入语音接近到什么程度)时作出模式判定。
根据上述,希望提供一种能更精确地估计相位信息的低位速率频域编码器。进一步最好是提供一种多模式、混合域编码器,根据帧的语音内容,对某些语音帧进行时域编码,而对其它语音帧进行频域编码。可以进一步希望提供一种混合域编码器,它可以根据闭环编码模式判定机构,对某些语音帧进行时域编码,而对其它语音帧进行频域编码。再又最好是提供一种闭环、多模式、混合域语音编码器,保证编码器产生的输出语音和输入到编码器的原始语音之间的时间同步。在此提出的有关申请中描述了这种语音编码器,所述申请题为“闭环多模式混合域线性预测(MDLP)语音编码器”,其已转让给本发明的受让人,并在此全部引用作为参考。
还希望提供一种方法,确保编码器产生的输出语音和输入到编码器的原始语音之间的时间同步。因此需要一种精确地跟踪准周期性信号的相位的方法。

发明内容
本发明针对一种精确地跟踪准周期性信号的相位的方法。因此,在本发明的一个方面,用于跟踪信号(所述信号在某些帧期间是周期性的,而在其它一些帧期间是非周期性的)的相位的一种装置最好包括逻辑电路,配置用于对在信号是周期性期间的帧,估计信号的相位;逻辑电路,配置用于通过闭环性能测量来监测估计的相位的性能;以及逻辑电路,所述逻辑配置成对在信号是周期性且所估计相位的性能落在预定阈电平以下期间的帧,测量信号的相位。
在本发明的另一个方面,用于跟踪信号(所述信号在某些帧期间是周期性的,而在其它一些帧期间是非周期性的)的相位的一种方法最好包括下列步骤对于在信号是周期性期间的帧,估计信号的相位;用闭环性能测量来监测所估计相位的性能;以及对于在信号是周期性期间的帧,测量信号的相位,以及测量落在预定阈电平以下的所估计相位的性能。
在本发明的又一个方面,一种用于跟踪信号(所述信号在某些帧期间是周期性的,而在其它一些帧期间是非周期性的)的相位的装置最好包括一种装置,用于对在信号是周期性期间的帧,估计信号的相位;一种装置,用于用闭环性能测量来监测估计相位的性能;以及一种装置,用于对在信号是周期性期间的帧,测量信号的相位,以及测量落在预定阈电平以下的所估计相位的性能。


图1是在每个终端处通过语音编码器终止的通信信道的方框图。
图2是可以在多模式、混合域线性预测(MDLP)语音编码器中使用的编码器的方框图。
图3是可以在多模式、混合域线性预测(MDLP)语音编码器中使用的解码器的方框图。
图4是流程图,示出可以在图2的编码器中使用的MDLP编码器所执行的MDLP编码步骤。
图5是流程图,示出语音编码判定过程。
图6是闭环多模式MDLP语音编码器。
图7是可以在图6的编码器或图2的编码器中使用的频谱编码器的方框图。
图8是振幅对频率的曲线图,示出在谐波编码器中的正弦波的振幅。
图9是流程图,示出在多模式MDLP语音编码器中的模式判定处理。
图10A是语音信号振幅对时间的图例,而图10B是线性预测(LP)残余振幅对时间的图例。
图11A是在闭环编码判定中的速率/模式对帧索引的曲线图;图11B是在闭环编码判定中的感知信噪比(PSNR)对帧索引的曲线图;以及图11C是不存在闭环编码判定时的速率/模式和PSNR两者对帧索引的曲线图。
图12是用于跟踪准周期性信号的相位的一种装置的方框图。
具体实施例方式
在图1中,第一编码器10接收数字化语音采样s(n),并对采样s(n)进行编码,用于在发送媒体12或通信信道12上发送到第一解码器14。解码器14对经编码语音采样进行解码,并合成输出语音信号sSYNTH(n)。对于在相反方向的发送,第二编码器16对数字化语音采样s(n)进行编码,该采样是在通信信道18上发送。第二解码器接收经编码语音采样,并对它进行解码,产生合成输出语音信号sSYNTH(n)。
语音采样s(n)表示已经根据本技术领域中众知的各种方法(例如,包括脉冲编码调制(PCM)、压缩扩展μ—律或A—律)中的任何一种进行数字化和量化的语音信号。如在本技术领域中众知,把语音采样s(n)组织成输入数据帧,其中,每个帧包括预定数目的数字语音采样s(n)。在示例实施例中,使用8kHz的采样率,每个20ms帧包括160个采样。在下面描述的实施例中,可以有利地以逐帧为基础改变数据传输率,从8kpbs(全速率)到4kpbs(半速率)到2kpbs(四分之一速率)到1kpbs(八分之一速率)。另一方面,可以使用其它数据速率。如这里所使用,术语“全速”或“高速”一般是指大于或等于8kpbs的数据速率,而术语“半速率”或“低速率”一般是指小于或等于4kpbs的数据速率。改变数据传输率是有利的,因为对于包括相对较少语音信息的帧,可以有选择地使用较低位速率。熟悉本技术领域的人员会理解,可以使用其它采样率、帧大小以及数据传输率。
第一编码器10和第二解码器20一起构成第一语音编码器或语音编码器。相似地,第二编码器16和第一解码器14一起构成第二语音编码器。熟悉本技术领域的人员会理解,可以用数字信号处理器(DSP)、专用集成电路(ASIC)、分立门逻辑、固件或任何传统的可编程软件模块以及微处理器来实现语音编码器。软件模块可驻留在RAM存储器、闪存储器、寄存器或在本技术领域中众知的任何其它形式的可写入媒体中。另一方面,任何传统的处理器、控制器或状态机可以取代微处理器。在美国专利第5,727,123号中(该专利已转让给本发明的受让人,并在此全部引用作为参考),以及在1994年2月16日提出的题为“声码器ASIC”的美国专利申请第08/197,417号中(该专利已转让给本发明的受让人,并在此全部引用作为参考)描述特别为语音编码而设计的示例ASIC。
如在图2中描绘,根据一个实施例,可以在语音编码器中使用的多模式混合域线性预测(MDLP)编码器100包括模式判定模块102、间距估计模块104、线性预测(LP)分析模块106、LP分析滤波器108、LP量化模块110以及MDLP剩余编码器112。把输入语音帧s(n)提供给模式判定模块102、间距估计模块104、LP分析模块106、以及LP分析滤波器108。模式判定模块102根据每个输入语音帧s(n)的周期性和诸如能量、频谱倾角、过零速率等其它析取参数产生模式索引IM和模式M。在1997年3月11日提出的,题为“用于执行降低速率的可变速率语音编码的方法和设备”的美国申请序列号08/815,354中描述根据周期性对语音帧进行分类的各种方法,该申请已转让给本发明的受让人,并在此全部引用作为参考。这些方法包括在电信工业协会临时标准TIA/EIA IS-127和TIA/EIA IS-733中。
间距估计模块104根据每个输入语音帧s(n)产生间距索引IP和滞后值Po。LP分析模块106在每个输入语音帧s(n)上执行线性预测分析,以产生LP参数a。把LP参数a提供给LP量化模块110。LP量化模块110还接收模式M,从而以与模式有关的方式执行量化处理。LP量化模块110产生LP索引ILP和量化的LP参数。LP分析滤波器108除了接收输入语音帧s(n)之外还接收量化的LP参数。LP分析滤波器108产生LP剩余信号R[n],它表示输入语音帧s(n)和根据量化的线性预测LP参数重构的语音之间的误差。把LP剩余信号R[n]、模式M、以及量化的LP参数提供给MDLP剩余编码器112。根据下面参考图4的流程图描述的步骤,MDLP剩余编码器112依据这些值产生剩余索引IR和量化的剩余信号 在图3中,在语音编码器中使用的解码器200包括LP参数解码模块202、剩余解码模块204、模式解码模块206以及LP合成滤波器208。模式解码模块206对模式索引IM进行接收和解码,从其产生模式M。LP参数解码模块202接收模式M以及LP索引ILP。LP参数解码模块202对所接收的值进行解码,以产生量化的LP参数。剩余解码模块204接收剩余索引IR、间距索引IP和模式索引IM。剩余解码模块204对所接收的值进行解码,以产生量化的剩余信号 。把量化的剩余信号 和LP参数提供给LP合成滤波器208,它从中合成经解码的输出语音信号[n]。
除了MDLP剩余编码器112之外,在本技术领域中众知图2的编码器100和图3的解码器200的各种模块的操作和实施,并在上述美国专利第5,414,796号和L.B.Rabiner和R.W.Schafer的“语音信号的数字处理”396-453(1978)中有描述。
根据一个实施例,MDLP编码器(未示出)执行在图4的流程图中示出的步骤。MDLP编码器可以是图2的MDLP剩余编码器112。在步骤300中,MDLP编码器检查模式M是全速率(FR)、还是四分之一速率(QR)或八分之一速率(ER)。如果模式M是FR、QR或ER,则MDLP编码器转到步骤302。在步骤302中,MDLP编码器把相应的速率(FR、QR或ER——根据M的值)施加于剩余索引IR。把对于FR模式是高精度、高速率编码,并且可能有利地是CELP编码的时域编码施加于LP剩余帧,或另一方面施加于语音帧。然后发送帧(在包括数-模转换和调制的进一步信号处理之后)。在一个实施例中,帧是表示预测误差的LP剩余帧。在另一个实施例中,帧是表示语音采样的语音帧。
另一方面,如果在步骤300中,模式M不是FR、QR或ER,(即,如果模式M是半速率(HR)),则MDLP编码器转到步骤304。在步骤304中,把频谱编码(较有利的是谐波编码)以半速率施加于LP剩余,或施加于语音信号。然后MDLP编码器转到步骤306。在步骤306中,通过对经编码语音进行解码并将其与原始输入帧进行比较来得到失真测量值D。然后MDLP编码器转到步骤308。在步骤308中,失真测量值D与预定阈值T进行比较。如果失真测量值D大于阈值T,则把半速率的、频谱编码的帧的相应量化参数进行调制并发送。另一方面,如果失真测量值D不大于阈值T,则MDLP编码器转到步骤310。在步骤310中,在时域中以全速率对经解码的帧进行重新编码。可以使用任何传统高速率高精度编码算法,诸如,最好使用CELP编码。然后调制和发送与该帧相关联的FR模式量化的参数。
如在图5的流程图中示出,根据一个实施例,闭环多模式MDLP语音编码器在处理用于发送的语音采样中遵循一组步骤。在步骤400中,语音编码器接收在连续帧中的语音信号的数字采样。语音编码器根据所接收的给定帧而转到步骤402。在步骤402中,语音编码器检测帧的能量。该能量是帧的语音活动的量度。通过对数字语音采样的振幅平方求和并把结果能量值与阈值进行比较来执行语音检测。在一个实施例中,阈值根据背景噪声的变化电平进行自适应。在上述美国专利第5,414,796号中描述一种示范可变阈值语音活动检测器。某些无声语音声音可以是极低能量的采样,这就可能会将其错误地作为背景噪声进行编码。为了防止这种情况发生,可以使用低能量采样的频谱倾角,以从背景噪声中区分无声语音,如在上述美国专利第5,414,796号中描述。
在检测帧的能量之后,语音编码器转到步骤404。在步骤404中,语音编码器判定所检测的帧能量是否足以把帧分类作为包含语音信息。如果所检测的帧能量降低到预定阈电平之下,则语音编码器转到步骤406。在步骤406中,语音编码器将帧作为背景噪声(即,无声或静音)编码。在一个实施例中,以1/8速率,或1kpbs对背景噪声进行时域编码。如果在步骤404中,所检测的帧能量符合或超过预定阈电平,则把帧分类为语音帧,并且语音编码器转到步骤408。
在步骤408中,语音编码器确定该帧是否为周期性的。周期性判定的各种已知方法包括,例如,使用过零点和使用归一化的自相关函数(NACF)。尤其,在1997年3月11日提出的,题为“用于执行降低速率的可变速率话音编码的方法和设备”的美国专利申请第08/815,354号中描述使用过零点和NACF来检测周期性,该申请已转让给本发明的受让人,并在此全部引用作为参考。此外,把用于区分有声语音和无声语音的上述方法包括在电信工业协会工业临时标准TIA/EIA IS-127和TIA/EIA IS-733中。如果在步骤408中没有判定帧是周期性的,则语音编码器转到步骤410。在步骤410中,语音编码器把帧作为无声语音编码。在一个实施例中,以1/4速率,或2kpbs,对无声语音帧进行时域编码。如果在步骤408中确定该帧是周期性的,则语音编码器转到步骤412。
在步骤412中,语音编码器使用本技术领域中众知的周期性检测方法(如在上述美国申请序列号08/815,354中所描述)来确定帧是否有足够的周期性。如果没有判定该帧有足够的周期性,则语音编码器转到步骤414。在步骤414中,将帧作为过渡语音(即,从无声语音到有声语音的过渡)进行时域编码。在一个实施例中,以全速率,或8kpbs,对过渡语音帧进行时域编码。
如果在步骤412中,语音编码器确定帧有足够的周期性,则语音编码器转到步骤416。在步骤416中,语音编码器把帧作为有声语音编码。在一个实施例中,以半速率,或4kpbs,对有声语音帧进行频谱编码。较有利地,用谐波编码器对有声语音帧进行频谱编码,如下参考图7所述。另一方面,可以使用其它频谱编码器,例如,正弦变换编码器或多频带激励编码器,如在本技术领域中所众知。然后,语音编码器转到步骤418。在步骤418中,语音编码器对经编码的有声语音帧进行解码。然后,语音编码器转到步骤420。在步骤420中,把经解码的有声语音帧与对应于该帧的输入语音采样进行比较,以得到合成语音失真的测量值,并判定半速率有声语音频谱编码模型是否在可接受的限度范围内工作。然后,语音编码器转到步骤422。
在步骤422中,语音编码器判定经解码的有声语音帧和对应于该帧的输入语音采样之间的误差是否降低到预定阈值之下。根据一个实施例,以下面参考图6描述的方式来作出这个判定。如果编码失真降低到预定阈值之下,则语音编码器转到步骤426。在步骤426中,语音编码器使用步骤416的参数将该帧作为有声语音发送。如果在步骤422中,编码失真符合或超过预定阈值,则语音编码器转到步骤414,对在步骤400中接收到的数字语音采样的帧作为过渡语音以全速率进行时域编码。
应该指出,步骤400-410包括开环编码判定模式。另一方面,步骤412-426包括闭环编码判定模式。
在图6中示出的一个实施例中,一种闭环多模式MDLP语音编码器包括耦合到帧缓冲器502的模-数转换器(A/D)500,而帧缓冲器502依次耦合到控制处理器504。把能量计算器506、有声语音检测器508、背景噪声编码器510、高速率时域编码器512和低速率频谱编码器514耦合到控制处理器504。把频谱解码器516耦合到频谱编码器514,并把误差计算器518耦合到频谱解码器516和控制处理器504。把阈值比较器520耦合到误差计算器518和控制处理器504。把缓冲器522耦合到频谱编码器514、频谱解码器516以及阈值比较器520。
在图6的实施例中,语音编码器部件最好作为在语音编码器中的固件或其它软件驱动模块实现,语音编码器本身有利地驻留在DSP或ASIC中。熟悉本技术领域的人员会理解,可以等效地以许多其它已知方法较好地实施语音编码器部件。控制处理器504可以有利地是微处理器,但是另外可以用控制器、状态机或离散逻辑电路实现。
在图6的多模式编码器中,把语音信号提供给A/D 500。A/D 500把模拟信号转换成数字语音采样的帧,S(n)。把数字语音采样提供给帧缓冲器502。控制处理器504从帧缓冲器502取得数字语音采样,并把它们提供给能量计算器506。能量计算器506根据下列公式计算语音采样的能量EE=Σn=0159S2(n)]]>其中,这些帧为20ms长,而采样率是8kHz。把计算的能量E发送回控制处理器504。
控制处理器504对计算的语音能量和语音活动阈值进行比较。如果计算的能量低于语音活动阈值,则控制处理器504把数字语音采样从帧缓冲器502传送到背景噪声编码器510。背景噪声编码器510使用保留背景噪声估计所需的最小位数来编码该帧。
如果计算的能量大于或等于语音活动阈值,则控制处理器504把数字语音采样从帧缓冲器502传送到有声语音检测器508。有声语音检测器508判定语音帧的周期性是否允许使用低位速率频谱编码进行有效编码。判定语音帧中的周期性水平的方法为本技术领域中所众知,并且包括,例如,使用归一自相关函数(NACF)和过零点。在上述美国申请序列号08/815,354中描述过这些方法以及其它方法。
有声语音检测器508把信号提供给控制处理器504,该信号指示了该语音帧是否包括足够周期性的语音,以通过频谱编码器514有效地编码。如果有声语音检测器508判定语音帧缺少足够的周期性,则控制处理器504把数字语音采样传送到高速率编码器512,它以预定的最大数据速率对语音进行时域编码。在一个实施例中,预定的最大速率是8kpbs,并且高速率编码器512是CELP编码器。
如果有声语音检测器508起初判定语音信号具有足够周期性以通过频谱编码器514有效地编码,则控制处理器504把数字语音采样从帧缓冲器502传送到频谱编码器514。下面参考图7详细描述一种示例频谱编码器。
频谱编码器514析取所估计的间距频率F0、间距频率的谐波的振幅AI以及语音信息VC。频谱编码器514把这些参数提供给缓冲器522和频谱解码器516。频谱解码器516可以有利地模拟成传统CELP编码器中的编码器的解码器。频谱解码器516根据频谱解码格式(下面将参考图7描述)产生合成语音采样, 并把合成语音采样提供给误差计算器518。控制处理器504把语音采样S(n)发送到误差计算器518。
误差计算器518根据下列公式计算每个语音采样S(n)和每个相应的合成语音采样 之间的均方误差(MSE)MSE=Σn=0159(S(n)-S^(n))2]]>把计算的MSE提供给阈值比较器520,它判定失真电平是否在可接受的范围内,即,失真电平是否降低到预定阈值之下。
如果计算的MSE在可接受的范围内,则阈值比较器520把信号提供给缓冲器502,并使频谱编码的数据从语音编码器输出。另一方面,如果MSE不在可接受的范围内,则阈值比较器520把信号提供给控制处理器504,控制处理器504依次把数字采样从帧缓冲器502传送到高速率时域编码器512。时域编码器512以预定最大速率对帧进行编码,并丢弃缓冲器522的内容。
在图6的实施例中,所使用的频谱编码的类型是谐波编码,如下面参考图7所描述,但是另一方面,可以是任何类型的频谱编码,例如,正弦波变换编码或多频带激励编码。例如,使用在美国专利第5,195,166中描述的多频带激励编码,以及使用例如在美国专利第4,865,068中描述的正弦波变换编码。
对于相位失真阈值等于或低于周期性参数的过渡帧和有声帧,借助高速率时域编码器512,图6的多模式编码器有利地以全速率或8kpbs使用CELP编码。另一方面,对于这种帧,可以使用任何其它已知形式的高速率时域编码。因此,就以高精度对过渡帧(以及周期性不足够的有声帧)进行编码,以便通过较好地保留相位信息,使输入端和输出端处的波形较好地匹配。在一个实施例中,在处理完阈值超过周期测量值的预定数目的连续有声帧之后,多模式编码器对于一个帧不管阈值比较器520的判定如何,都从半速率频谱编码切换到全速率CELP编码。
应该指出,能量计算器506和有声语音检测器508连同控制处理器504构成开环编码判定。与此相比,频谱编码器514、频谱解码器516、误差计算器518、阈值比较器520、和缓冲器522连同控制处理器504构成闭环编码判定。
在参考图7描述的一个实施例中,使用频谱编码且最好使用谐波编码,以低位速率对足够周期性的有声帧进行编码。一般定义频谱编码器为算法,所述算法试图通过对每个语音帧在频域中进行模拟和编码以可感知有意义的方法来保留语音频谱特征的时间演变。这些算法的重要部分是(1)频谱分析或参数估计;(2)参数量化;以及(3)分析具有经解码参数的输出语音波形。因此,其目标是用一组频谱参数保留短期语音频谱的重要特征,对参数编码,然后使用经解码频谱参数合成输出语音。一般,合成输出语音作为正弦波的加权和。正弦波的振幅、频率和相位是分析期间所估计的频谱参数。
在CELP编码技术中“综合分析”是一种众知的技术,而在频谱编码中没有利用该技术。综合分析不应用于频谱编码器的主要原因是由于初始相位信息的丢失,即使从可察觉的观点来看语音模型在功能上很适合,但是合成语音的均方能量(MSE)可能很高。因此,正确地产生初始相位的另一个优点是可得到一种能力,直接对语音采样和重构语音进行比较以允许判定语音模型是否精确编码语音帧。
在频谱编码中,如下合成输出语音帧S[n]=Sv[n]+Suv[n], n=1,2,…,N,其中,N是每帧的采样数,而Sv和Suv分别是有声和无声分量。正弦波求和合成处理如下创建了有声分量S[n]=Σk=1LA(k,n)·cos(2πnfk+θ(k,n))]]>其中,L是正弦波的总数,fk是在短期频谱中关心的频率,A(k,n)是正弦波的振幅,以及θ(k,n)是正弦波的相位。通过频谱分析处理从输入帧的短期频谱估计振幅、频率和相位参数。无声分量可以在单独的正弦波求和合成中与有声部分一同创建,或可以通过专用无声合成处理分开计算,然后加回到Sv中。
在图7的实施例中,使用称之为谐波编码器的特定类型频谱编码器,以低位速率对足够周期性的有声帧进行频谱编码。谐波编码器将一帧表征为正弦波的和,分析帧的小段。在正弦波总和中的每个正弦波具有的频率是该帧的间距F0的整数倍。在另外的实施例中,其中,所使用的特定类型的频谱编码器不是谐波编码器,从在0和2π之间的一组实数取得每个帧的正弦波频率。在图7的实施例中,有利地选择在总和中的每个正弦波的振幅和相位,以便总和将与一个周期上的信号最佳地匹配,如图8的图例所示。一般,谐波编码器使用外部分类,对每个输入语音帧标识为有声或无声。对于有声帧,把正弦波的频率限制于估计间距(F0)的谐波,即,fk=kF0。对于无声语音,使用短期频谱的峰值来确定正弦波。内插振幅和相位以如下模仿在帧上它们的演变,如A(k,n)=C1(k)*n+C2(k)θ(k,n)=B1(k)*n2+B2(k)*n+B3(k)其中,在取窗口的输入语音帧的短期傅里叶变换(STFT)之外的特定频率位置fk(=kf0)处,从振幅、频率和相位的瞬时值估计系数[Ci(k),Bi(k)]。每个正弦波待发送的参数是振幅和频率。不发送相位,但是根据数种已知技术中的任何一种对其模拟作为替代,例如,所述已知技术包括二次相位模型,或任何传统的相位多项式表达式。
如在图7中所示,谐波编码器包括耦合到窗口逻辑602和离散傅里叶变换(DFT)和谐波分析逻辑604的间距析取器600。还把接收语音采样S(n)作为输入的间距析取器600耦合到DFT和谐波分析逻辑604。把DFT和谐波分析逻辑604耦合到剩余编码器606。把间距析取器600、DFT和谐波分析逻辑604以及剩余编码器606的每一个都耦合到参数量化器608。把参数量化器608耦合到信道编码器610,依次,把信道编码器610耦合到发射机612。通过标准射频(RF)接口(例如,诸如码分多址(CDMA)空中接口)把发射机612耦合到接收机614。把接收机614耦合到信道解码器616,依次,把信道解码器616耦合到去量化器618。把去量化器618耦合到正弦波求和语音合成器620。还把正弦波求和语音合成器620耦合到相位估计器622,它接收先前帧信息作为输入。配置正弦波求和语音合成器620以产生合成语音输出SSYNTH(n)。
可以用熟悉本技术领域的人员众知的各种不同方法(例如,包括固件或软件模块)来实现间距析取器600、窗口逻辑602、DFT和谐波分析逻辑604、剩余编码器606、参数量化器608、信道编码器610、信道解码器616、去量化器618、正弦波求和语音合成器620以及相位估计器622。可以用熟悉本技术领域的人员众知的任何等效标准RF部件来实现发射机612和接收机614。
在图7的谐波编码器中,间距析取器600接收输入采样S(n),析取间距频率信息F0。然后通过窗口逻辑602使采样乘以合适的窗口函数,以允许对语音帧的小段进行分析。DFT和谐波分析逻辑604使用间距析取器600提供的间距信息计算采样的DFT,以产生复数频谱点,从所述复数频谱点析取了谐波振幅AI,如图8的图例所示,其中,L表示谐波的总数。把DFT提供给剩余编码器606,剩余编码器606析取有声信息VC。
应该指出,如在图8中所示,Vc参数表示在频率轴上的一个点,在该点以上,频谱是无声语音信号特征,并且不再是谐波。与此相比,在点Vc以下,频谱是谐波,并且是有声语音特征。
把AI、F0和Vc分量提供给参数量化器608,它对信息进行量化。把经量化信息以分组形式提供给信道编码器610,信道编码器610以低位速率(例如,诸如半速率,或4kpbs)对分组进行量化。把分组提供给发射机612,发射机612对分组进行调制,并把所产生信号在空中发送到接收机614。接收机614接收和解调信号,把经编码分组传递到信道解码器616。信道解码器616对分组进行解码,并把经解码分组提供给去量化器618。去除量化器618使信息去除量化。把信息提供给正弦波求和语音合成器620。
配置正弦波求和语音合成器620,使之根据上述S[n]的公式对模拟短期语音频谱的多个正弦波进行合成。正弦波的频率fk是基本频率F0的倍数或谐波,所述基本频率F0是准周期性(即,过渡)有声语音段的间距周期性频率。
正弦波求和语音合成器620还接收来自相位估计器622的相位信息。相位估计器622接收先前帧信息,即,紧靠的先前帧的AI、F0和Vc参数。相位估计器622还接收先前帧的重构的N个采样,其中,N是帧长度(即,N是每帧的采样数)。相位估计器622根据先前帧的信息判定帧的初始相位。把初始相位判定提供给正弦波求和语音合成器620。根据当前帧的信息以及初始相位计算(相位估计器622根据过去帧信息执行所述初始相位计算),正弦波求和语音合成器620产生合成语音帧。如上所述。
如上所述,谐波编码器通过使用先前帧信息和预测相位从帧到帧线性地变化来合成或重构语音帧。在通常称之为二次相位模型的上述合成模型中,系数B3(k)表示正在合成的当前有声帧的初始相位。在判定相位中,传统谐波编码器把初始相位设置成零,或者随机地或用某些伪随机产生方法产生初始相位值。为了更精确地预测相位,根据判定紧靠的先前帧是有声语音帧(即,足够周期性的帧)还是过渡语音帧,相位估计器622使用判定初始相位的两种可能方法中之一。如果先前帧是有声语音帧,则使用该帧的最后估计相位值作为当前帧的初始相位值。另一方面,如果先前帧的分类为过渡帧,则从先前帧的频谱得到当前帧的初始相位值,这是通过执行先前帧的解码器输出的DFT而得到的。因此,相位估计器622利用了已经可得到的精确相位信息(因为作为过渡帧的先前帧是以全速率处理的)。
在一个实施例中,一种闭环多模式MDLP语音编码器遵循在图9的流程图中描绘的语音处理步骤。语音编码器通过选择最合适的编码模式对每个输入语音帧的LP剩余进行编码。某些模式在时域中对LP剩余或语音剩余进行编码,而其它模式在频域中表示LP剩余或语音剩余。模式的组有用于过渡帧的全速率时域(T模式);用于语音帧的半速率频域(V模式);用于无声帧的四分之一速率时域(U模式);以及用于噪声帧的八分之一速率时域(N模式)。
熟悉本技术领域的人员会理解,可以遵循在图9中示出的步骤对语音信号或相应的LP剩余进行编码。噪声、无声、过渡以及有声语音的波形特征可以看作是在图10A的图例中的时间函数。噪声、无声、过渡以及有声LP剩余的波形特征可以看作是在图10B的图例中的时间函数。
在步骤700中,对有关把四种模式(T、V、U或N)中的哪一种施加于输入语音剩余S(n)作开环模式判定。如果施加T模式,则在步骤702中,在T模式下,即在时域中以全速率处理语音剩余。如果施加U模式,则在步骤704中,在U模式下,即在时域中以四分之一速率处理语音剩余。如果施加N模式,则在步骤706中,在N模式下,即在时域中以八分之一速率处理语音剩余。如果施加V模式,则在步骤708中,在V模式下,即在频域中以半速率处理语音剩余。
在步骤710中,对在步骤708中编码的语音进行解码,并与输入语音剩余S(n)进行比较,并计算性能测量值D。在步骤712中,把性能测量值D与预定阈值T进行比较。如果性能测量值D大于或等于阈值T,则在步骤714中,步骤708的经频谱编码的语音剩余允许发送。另一方面,如果性能测量值D小于阈值T,则在步骤716中,在T模式下处理输入语音剩余S(n)。在另外的实施例中,不计算性能测量值,并且不定义阈值。而是在V模式下已经处理预定数目的语音剩余帧之后,在T模式下处理下一帧。
有利地,在图9中示出的判定步骤允许仅当需要时才使用高位速率T模式,通过较低位速率V模式利用了有声语音分段的周期性,同时当V模式的执行不合适时通过切换到全速率而防止了任何质量下降。因此,可以以明显低于全速率的平均速率产生接近全速率的话音质量的极高话音质量。此外,可以通过所选择的性能测量值和所选择的阈值来控制目标话音质量。
通过保持模型相位轨迹接近于输入语音的相位轨迹,“升级”到T模式也能改进后续V模式应用的性能。当在V模式中的性能不合适时,步骤710和712的闭环性能检查切换到T模式,从而通过“刷新”初始相位值来改进后续V模式处理的性能,这允许模式相位轨迹再次变成接近原始输入语音相位轨迹。通过如在图11A-C的图例中所示例子,从开始处的第五帧不合适在V模式中执行,如通过所使用的PSNR失真测量值明显看到。结果,没有闭环判定和升级的情况下,模拟的相位轨迹明显偏离原始输入语音相位轨迹,导致PSNR的严重降低,如在图11C中所示。此外,在V模式下处理的后续帧的性能降低。然而,如在图11A中所示,在闭环判定下,把第五帧切换到T模式处理。通过升级使第五帧的性能大大提高,如在图11B中示出的PSNR的提高可以明显地看到。此外,还改善了在V模式下处理的后续帧的性能。
通过提供极精确的初始相位估计值,保证所产生的V模式合成的语音剩余信号与原始输入语音剩余S(n)在时间上精确地对齐,在图9中示出的判定步骤改进了V模式表示的质量。以下述方式,从紧接的先前经解码帧得到第一V模式处理的语音剩余段的初始相位。对于每个谐波,如果先前帧是在V模式下处理的,则把初始相位设置成等于先前帧的最后估计相位。对于每个谐波,如果先前帧是在T模式下处理的,则把初始相位设置成等于先前帧的实际谐波相位。通过使用完整的先前帧采取过去解码剩余的DFT,可以得到先前帧的实际谐波相位。另一方面,通过处理先前帧的各种间距周期,以间距-同步方式,采取过去解码帧的DFT,可以得到先前帧的实际谐波相位。
在参考图12描述的一个实施例中,把准周期性信号S的连续帧输入到分析逻辑800中。例如,准周期性信号S可以是例如语音信号。该信号的某些帧是周期性的,而其它帧不是周期性的或非周期性的。分析逻辑800测量信号的振幅,并输出经测量的振幅A。分析逻辑800还测量信号的相位,并输出经测量相位P。把振幅A提供给合成逻辑802。还把相位值POUT提供给合成逻辑802。相位值POUT可以是经测量相位值P,或者相位值POUT可以是估计的相位值PEST,如下所述。合成逻辑802合成信号,并输出经合成的信号SSYNTH。
还把准周期性信号S提供给分类逻辑804,它把信号分类成非周期性或周期性。对于信号的非周期性帧,把提供给合成逻辑802的相位POUT设置成等于测量相位P。把信号的周期性帧提供给闭环相位估计逻辑806。还把准周期性信号S提供给闭环相位估计逻辑806。闭环相位估计逻辑806估计相位,并输出估计相位PEST。估计相位是根据初始相位值PINIT的,把它输入到闭环相位估计逻辑806。如果分类逻辑804把提供的先前帧分类成周期性帧,则初始相位值是该信号先前帧的最后估计相位值。如果分类逻辑804把先前帧分类成非周期性帧,则初始相位值是先前帧的测量相位值P。
把估计相位PEST提供给误差计算逻辑808。把准周期性信号S也提供给误差计算逻辑808。还把测量相位P提供给误差计算逻辑808。此外,误差计算逻辑808接收已经通过合成逻辑802合成的经合成信号SSYNTH’。经合成信号SSYNTH’是当输入到合成逻辑802的相位POUT等于估计相位PEST时已经通过合成逻辑802合成的经合成信号SSYNTH。误差计算逻辑808通过比较测量相位值和估计相位值来计算失真测量值,或误差测量值E。在另外的实施例中,误差计算逻辑808通过比较准周期性信号的输入帧和准周期性信号的经合成帧来计算失真测量值,或误差测量值E。
把失真测量值E提供给比较逻辑810。比较逻辑810对失真测量值E和预定阈值T进行比较。如果失真测量值E大于预定阈值T,则把测量相位P设置成等于提供给合成逻辑802的相位值POUT。另一方面,如果失真测量值E不大于预定阈值T,则把估计相位PEST设置成等于提供给合成逻辑802的相位值POUT。
因此,已经描述了一种用于跟踪准周期性信号的相位的新颖方法和设备。熟悉本技术领域的人员会理解,可以用数字信号处理器(DSP)、专用集成电路(ASIC)、分立门或晶体管逻辑、诸如寄存器和FIFO之类的分立硬件部件、执行一组固件指令的处理器或任何传统可编程软件模块以及处理器来实现或执行这里结合所揭示的实施例描述的各种示例逻辑块和算法步骤。有利地,处理器可以是微处理器,但是另一方面,处理器可以是任何传统处理器、控制器、微控制器、或状态机。软件模块可以驻留在RAM存储器、快闪存储器、寄存器或本技术领域中众知的任何其它形式的可写入存储媒体中。熟悉本技术领域的人员会理解,有利地通过电压、电流、电磁波、磁场或粒子、光学场或粒子、或它们的任何组合来表示上面整个说明书中所指的数据、指令、命令、信息、信号、位、码元、以及码片。
因此,已经示出和描述本发明的较佳实施例。然而,熟悉本技术领域的人员会明了,可以对这里揭示的实施例作出许多改变而不偏离本发明的精神和范围。因此,除根据下列权利要求书外,本发明不受限制。
权利要求
1.跟踪信号相位的一种方法,所述信号在某些帧期间是周期性的,而在其它帧期间是非周期性的,其特征在于,所述方法包括下列步骤对于在信号是周期性期间的帧,估计信号的相位;用闭环性能测量监测所估计相位的性能;以及对于在信号是周期性且所估计相位性能落在预定阈电平以下期间的帧,测量信号的相位。
2.如权利要求1所述的方法,其特征在于,进一步包括对于在信号是非周期性期间的帧,测量信号的相位的步骤。
3.如权利要求1所述的方法,其特征在于,进一步包括对于给定帧用开环周期性判定来判定该信号是周期性还是非周期性的步骤。
4.如权利要求1所述的方法,其特征在于,所述估计步骤包括根据谐波模型构成相位的多项表达式的步骤。
5.如权利要求1所述的方法,其特征在于,所述估计步骤包括如果先前帧是周期性的,则设置初始相位值等于先前帧所估计的最后相位值的步骤。
6.如权利要求1所述的方法,其特征在于,所述估计步骤包括如果先前帧是非周期性的,则设置初始相位值等于先前帧的测量相位值的步骤。
7.如权利要求6所述的方法,其特征在于,从先前帧的离散傅里叶变换(DFT)得到测量相位值。
8.如权利要求1所述的方法,其特征在于,所述估计步骤包括如果先前帧是周期性的,并且先前帧的估计相位的性能落在预定阈电平之下,则设置初始相位值等于先前帧的测量相位值的步骤。
9.如权利要求8所述的方法,其特征在于,从先前帧的离散傅里叶变换(DFT)得到测量相位值。
10.跟踪信号的相位的一种装置,所述信号在某些帧期间是周期性的,而在其它帧期间是非周期性的,其特征在于,所述装置包括一种装置,用于对在信号是周期性期间的帧,估计信号的相位;一种装置,用于用闭环性能测量来监测估计的相位性能;以及一种装置,用于对在信号是周期性且所估计的相位性能落在预定阈电平以下期间的帧,测量信号的相位。
11.如权利要求10所述的装置,其特征在于,进一步包括一种装置,用于对在信号是非周期性期间的帧,测量信号的相位。
12.如权利要求10所述的装置,其特征在于,进一步包括一种装置,用于对于给定帧用开环周期性判定来判定该信号是周期性还是非周期性的。
13.如权利要求10所述的装置,其特征在于,所述用于估计的装置包括根据谐波模型构成相位的多项表达式的装置。
14.如权利要求10所述的装置,其特征在于,所述用于估计的装置包括如果先前帧是周期性的,则设置初始相位值等于先前帧的估计的最后相位值的装置。
15.如权利要求10所述的装置,其特征在于,所述用于估计的装置包括如果先前帧是非周期性的,则设置初始相位值等于先前帧的测量相位值的装置。
16.如权利要求15所述的装置,其特征在于,从先前帧的离散傅里叶变换(DFT)得到测量的相位值。
17.如权利要求10所述的装置,其特征在于,所述用于估计的装置包括如果先前帧是周期性的,并且先前帧所估计的相位性能落在预定阈电平之下,则设置初始相位值等于先前帧的测量相位值的装置。
18.如权利要求17所述的装置,其特征在于,从先前帧的离散傅里叶变换(DFT)得到测量相位值。
19.跟踪信号的相位的一种装置,所述信号在某些帧期间是周期性的,而在其它帧期间是非周期性的,其特征在于,所述装置包括逻辑电路,所述逻辑配置成对在信号是周期性期间的帧,估计信号的相位;逻辑电路,所述逻辑配置成用闭环性能测量监测所估计相位的性能;以及逻辑电路,所述逻辑配置成对在信号是周期性且所估计的相位性能落在预定阈电平以下期间的帧,测量信号的相位。
20.如权利要求19所述的装置,其特征在于,进一步包括逻辑电路,配置成对在信号是非周期性期间的帧,测量信号的相位。
21.如权利要求19所述的装置,其特征在于,进一步包括逻辑电路,配置成对于给定帧用开环周期性判定来判定该信号是周期性还是非周期性的。
22.如权利要求19所述的装置,其特征在于,所述配置成对在信号是周期性期间的帧估计信号的相位的逻辑电路包括配置成根据谐波模型构成相位的多项表达式的逻辑电路。
23.如权利要求19所述的装置,其特征在于,所述配置成对在信号是周期性期间的帧估计信号的相位的逻辑电路包括配置成如果先前帧是周期性的,设置初始相位值等于先前帧的估计的最后相位值的逻辑电路。
24.如权利要求19所述的装置,其特征在于,所述配置成对于在信号是周期性期间的帧估计信号的相位的逻辑电路包括配置成如果先前帧是非周期性的,设置初始相位值等于先前帧的测量相位值的逻辑电路。
25.如权利要求24所述的装置,其特征在于,从先前帧的离散傅里叶变换(DFT)得到测量相位值。
26.如权利要求19所述的装置,其特征在于,所述配置成对在信号是周期性期间的帧估计信号的相位的逻辑电路包括配置成如果先前帧是周期性的,且先前帧所估计的相位性能落在预定阈电平以下,则设置初始相位值等于先前帧的测量相位值的逻辑电路。
27.如权利要求26所述的装置,其特征在于,从先前帧的离散傅里叶变换(DFT)得到测量相位值。
全文摘要
用于跟踪准周期性信号的相位的一种方法包括下述步骤对于在信号是周期性期间的帧,估计信号的相位,用闭环性能测量值监测所估计的相位性能,并对于在信号是周期性且估计相位的性能落在预定阈电平之下期间的帧,测量信号的相位。在估计相位中,如果先前帧是周期性的,则设置初始相位值等于先前帧的估计的最后相位值。如果先前帧是非周期性的,或如果先前帧是周期性的且先前帧的估计相位的性能落在预定阈电平之下,则设置初始相位值等于先前帧的测量相位值。对于在信号是非周期性期间的帧,测量信号的相位。可以使用开环周期性判定来判定对于给定帧的信号是否为周期性的。
文档编号G10L25/48GK1437746SQ00819200
公开日2003年8月20日 申请日期2000年2月29日 优先权日2000年2月29日
发明者A·达斯 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1