改进时域编码与频域编码之间的分类的制作方法

文档序号:11161290阅读:428来源:国知局
本申请要求2014年10月10日递交的发明名称为“改进时域编码与频域编码之间的分类(ImprovingClassificationBetweenTime-DomainCodingandFrequencyDomainCoding)”的第14/511,943号美国非临时专利申请案的在先申请优先权,该在先申请要求2014年7月26日递交的发明名称为“针对高比特率改进时域编码与频域编码之间的分类(ImprovingClassificationBetweenTime-DomainCodingandFrequencyDomainCodingforHighBitRates)”的第62/029,437号美国临时专利申请案的在先申请优先权,这两个在先申请的内容以引入的方式并入本文本中。
技术领域
:本发明大体上涉及信号编码领域。具体而言,本发明涉及改进时域编码与频域编码之间的分类的领域。
背景技术
::语音编码是指一种降低语音文件的比特率的过程。语音编码是一种对包含语音的数字音频信号进行数据压缩的应用。语音编码通过使用音频信号处理技术使用特定语音参数估计来建模语音信号,结合通用数据压缩算法以小型比特流表示所得的建模参数。语音编码的目的是:通过减少每个样本的比特数来实现所需内存存储空间、传输带宽和传输功率的节省,使得在感知上难以区分已解码(已压缩)语音和原始语音。然而,语音编码器是有损编码器,即,已解码信号不同于原始信号。因此,语音编码中的其中一个目标是:在给定比特率下使失真(或可感知的损失)最小化,或者使比特率最小化以达到给定的失真。语音编码与音频编码的不同之处在于语音比多数其它音频信号简单地多,而且关于语音属性的统计信息更多。因此,与音频编码相关的一些听觉信息在语音编码上下文中可以是不必要的。在语音编码中,最重要的标准是语音的可懂度和“愉悦度”,该语音具有限量的传输数据。语音的可懂度除了包括实际文字内容,还包括说话者标识、情绪、语调、音色,所有这些对于完美可懂度都很重要。恶化语音的愉悦度这个较抽象概念是一个不同于可懂度的属性,因为恶化语音有可能是完全可懂的,但是主观上却不能愉悦听众。传统上,所有参数语音编码方法利用语音信号内在的冗余度来减少必须发送的信息量以及在短的间隔内估计信号的语音样本的参数。这种冗余主要来自语音波形以准周期性速率重复,以及语音信号的缓慢变化的频谱包络。可以参考若干不同类型的语音信号,例如浊音和清音信号,来考虑语音波形的冗余。浊音,例如‘a’、‘b’基本上是由于声带的振动,而且是振荡的。因此,在短时间内,它们通过正弦等周期性信号的和来很好地建模。换言之,浊音语音信号基本上是周期性的。然而,这种周期性在语音片段的持续时间内可能是变化的,而且周期性波的形状通常逐片段变化。这种周期性研究可大大有利于低比特率语音编码。这种周期性研究可大大有利于时域语音编码。浊音周期还被称为基音,基音预测通常被称为长期预测(Long-TermPrediction,LTP)。相比之下,‘s’、‘sh’等清音更似噪声。这是因为清音语音信号更像一种随机噪声,并且可预测性较小。在任一情况下,参数编码可以用于通过将语音信号的激励分量与以较低速率发生变化的频谱包络分量分离来减少语音片段的冗余,。缓慢变化的频谱包络可以通过线性预测编码(LinearPredictionCoding,LPC),也称为短期预测(Short-TermPrediction,STP)来表示。这种短期预测研究也可大大有利于低比特率语音编码。编码优点来自于参数变化时的低速率。然而,这些参数在几毫秒内保持的值明显不同是很少见的。在最新的著名标准,例如G.723.1、G.729、G.718、增强型全速率(EnhancedFullRate,EFR)、可选择模式声码器(SelectableModeVocoder,SMV)、自适应多速率(AdaptiveMulti-Rate,AMR)、可变速率多模式宽带(Variable-RateMultimodeWideband,VMR-WB)或自适应多速率宽带(AdaptiveMulti-RateWideband,AMR-WB)中,已经采用了码激励线性预测技术(CodeExcitedLinearPredictionTechnique,“CELP”)。CELP通常被理解为编码激励、长期预测和短期预测的技术组合。CELP主要用于通过受益于具体人类声音特性或人类嗓音发声模型对语音信号进行编码。CELP语音编码在语音压缩领域是一种非常流行的算法原理,但是,不同编码器下的CELP细节可能会大大不同。由于其普遍性,CELP算法已经应用于各种ITU-T、MPEG、3GPP和3GPP2标准中。CELP的变体包括代数CELP、松散CELP、低时延CELP以及矢量和激励线性预测,以及其它。CELP是一类算法的通用术语,而不是针对特定的编解码器。CELP算法基于四个主要观点。第一,使用通过线性预测(linearprediction,LP)的语音产生的源滤波器模型。语音产生的源滤波器将语音建模为声源,例如声带,和线性声滤波器,即声道(和辐射特征)的组合。在语音产生的源滤波器模型的实施方式中,对于浊音语音,声源或激励信号通常被建模为周期性脉冲序列;或对于清音语音,声源或激励信号通常被建模为白噪声。第二,将自适应和固定码本用作LP模型的输入(激励)。第三,在“感知上加权的域”的闭环中执行搜索。第四,应用矢量量化(vectorquantization,VQ)。技术实现要素:根据本发明一实施例,一种用于在对包括音频数据的数字信号进行编码之前处理语音信号的方法包括:基于将用于对所述数字信号进行编码的编码比特率和所述数字信号的短基音周期检测来选择频域编码或时域编码。根据本发明一替代性实施例,一种用于在对包括音频数据的数字信号进行编码之前处理语音信号的方法包括:当编码比特率高于比特率上限时,选择频域编码来对所述数字信号进行编码。或者,当所述编码比特率低于比特率下限时,所述方法选择时域编码来对所述数字信号进行编码。所述数字信号包括基音周期短于基音周期限度的短基音信号。根据本发明一替代性实施例,一种用于在编码之前处理语音信号的方法包括:当数字信号不包括短基音信号并且所述数字信号被归类为清音语音或正常语音时,选择时域编码来对包括音频数据的所述数字信号进行编码。所述方法还包括:当编码比特率处于比特率下限与比特率上限中间时,选择频域编码来对所述数字信号进行编码。所述数字信号包括短基音信号,且浊音周期较低。所述方法还包括:当编码比特率处于中间、所述数字信号包括短基音信号且浊音周期非常强时,选择时域编码来对所述数字信号进行编码。根据本发明一替代性实施例,一种用于在对包括音频数据的数字信号进行编码之前处理语音信号的装置包括:编码选择器,用于基于将用于对所述数字信号进行编码的编码比特率和所述数字信号的短基音周期检测来选择频域编码或时域编码。附图说明为了更完整地理解本发明及其优点,现在参考下文结合附图进行的描述,其中:图1示出了在使用传统CELP编码器对原始语音进行编码期间执行的操作;图2示出了在使用CELP解码器对原始语音进行解码期间执行的操作;图3示出了传统CELP编码器;图4示出了对应于图3中的编码器的基本CELP解码器;图5和图6示出了示意性语音信号以及其与时域中的帧大小和子帧大小的关系的示例;图7示出了原始浊音宽带频谱的示例;图8示出了图7所示的原始浊音宽带频谱的使用双重基音周期编码的编码浊音宽带频谱;图9A和9B示出了典型频域感知编解码器的示意图,其中图9A示出了频域编码器而图9B示出了频域解码器;图10示出了根据本发明实施例的在对包括音频数据的语音信号进行编码之前在编码器处执行的操作的示意图;图11示出了根据本发明实施例的通信系统10;图12示出了可以用于实施本文公开的设备和方法的处理系统的框图;图13示出了用于在对一个数字信号进行编码前进行语音信号处理的装置的框图;图14示出了用于在对一个数字信号进行编码前进行语音信号处理的另一装置的框图。具体实施方式在现代音频/语音数字信号通信系统中,数字信号在编码器处压缩,而且压缩的信息或比特流可以打包并且通过通信信道逐帧向解码器发送。解码器接收和解码已压缩的信息以获取音频/语音数字信号。在现代音频/语音数字信号通信系统中,数字信号在编码器处压缩,而且压缩的信息或比特流可以打包并且通过通信信道逐帧向解码器发送。编码器和解码器在一起的系统被称为编解码器。语音/音频压缩可以用来减少表示语音/音频信号的比特数,从而降低传输所需的带宽和/或比特率。一般而言,较高的比特率将带来较高的音频质量,而较低的比特率将导致较低的音频质量。图1示出了在使用传统CELP编码器对原始语音进行编码期间执行的操作。图1示出了传统初始CELP编码器,其中通常通过使用合成分析方法使合成语音102和原始语音101之间的加权误差109最小化,这意味着通过在感知上优化闭环中的已解码(合成)信号执行编码(分析)。所有语音编码器利用的基本原理是语音信号是高度相关的波形这一事实。作为说明,可以使用如下等式(1)所示的自回归(autoregressive,AR)模型表示语音。在等式(11)中,每个样本被表示为前P个样本加白噪声的线性组合。加权系数a1、a2……aP被称为线性预测系数(LinearPredictionCoefficient,LPC)。对于每个帧,选择加权系数a1,a2,...aP,使得使用上述模型生成的频谱{X1,X2,...,XN}最匹配输入语音帧的频谱。或者,语音信号还可以通过谐波模型和噪声模型的组合表示。模型的谐波部分实际上是信号的周期性分量的傅里叶级数表示。一般而言,对于浊音信号,语音的谐波加噪声模型由谐波和噪声的混合物组成。浊音语音中的谐波和噪声的比例取决于多个因素,包括说话者特征(例如,说话者的声音在哪个程度上是正常的或者呼吸声);语音片段特征(例如,语音片段在哪个程度上是周期性的)以及频率。浊音语音的频率越高,噪声型分量的比例越高。线性预测模型和谐波噪声模型是用于对语音信号进行建模和编码的两种主要方法。线性预测模型尤其擅长对语音的频谱包络进行建模,而谐波噪声模型擅长对语音的精细结构进行建模。可以结合这两种方法以利用它们的相对优势。如先前所指示,在进行CELP编码之前,例如以每秒8000个样本的速率,对到达手机麦克风的输入信号进行滤波和采样。随后,例如利用每个样本13个比特对每个样本进行量化。将采样的语音分段成20ms的片段或帧(例如,在这种情况为160个样本)。分析语音信号,并且提取它的LP模型、激励信号和基音。LP模型表示语音的频谱包络。它被转换为一组线谱频率(linespectralfrequency,LSF)系数,其是线性预测参数的替代性表示,因为LSF系数具有良好的量化特性。可以对LSF系数进行标量量化,或者更高效地,可以使用先前训练的LSF矢量码本对它们进行矢量量化。码激励包括含有码矢量的码本,这些码矢量具有全部独立选择的分量,使得每个码矢量可以具有近似‘白’频谱。对于输入语音的每个子帧而言,通过短期线性预测滤波器103和长期预测滤波器105对每个码矢量进行滤波,并且将输出与语音样本进行比较。在每个子帧处,选择输出与输入语音最匹配(误差最小)的码矢量来表示该子帧。编码激励108通常包括脉冲型信号或噪声型信号,这些在数学上构建或保存在码本中。该码本可用于编码器和接收解码器。编码激励108,其可以是随机或固定码本,可以是(隐式或显式地)硬编码到编解码器的矢量量化字典。此种固定码本可以是代数码激励的线性预测或可以显示地存储。通过适当的增益来调整码本中的码矢量以使能量等于输入语音的能量。相应地,编码激励108的输出在进入线性滤波器之间通过增益Gc107调整。短期线性预测滤波器103形成码矢量的‘白’频谱以类似于输入语音的频谱。同样,在时域中,短期线性预测滤波器103将短期相关性(与先前样本的相关性)并入白序列中。对激励进行整形的滤波器具有形式为1/A(z)的全极点模型(短期线性预测滤波器103),其中A(z)被称为预测滤波器并且可通过线性预测(例如,莱文森—德宾算法)获得。在一项或多项实施例中,可以使用全极点滤波器,因为它是人类声道的很好表现而且很容易计算。短期线性预测滤波器103通过分析原始信号101获得并且通过一组系数表示:如先前所述,浊音语音的区域显示长期周期。这种周期,称为基音,被基音滤波器1/(B(z))引入到合成频谱中。长期预测滤波器105的输出取决于基音和基音增益。在一项或多项实施例中,可以从原始信号、残差信号或加权原始信号中估计该基音。在一项实施例中,可以使用如下等式(3)表示长期预测函数(B(z))。B(z)=1-Gp·z-Pitch(3)加权滤波器110与上述短期预测滤波器有关。可以如等式(4)所述表示其中一个典型的加权滤波器。其中β<α,0<β<1,0<α≤1。在另一项实施例中,加权滤波器W(z)在如下等式(5)中可以使用一项实施例所示的带宽扩展从LPC滤波器推导出。在等式(5)中,γ1>γ2,它们是极点用来向原点移动的因子。相应地,对于语音的每个帧,计算LPC和基音,并且更新滤波器。对于语音的每个子帧,选择产生‘最佳’滤波的输出的码矢量来表示子帧。增益的对应量化值必须向解码器传输以便进行适当的解码。LPC和基音值还必须进行量化并且在每帧中发送以便重构解码器处的滤波器。相应地,向解码器传输编码激励索引、量化增益索引、量化长期预测参数索引和量化短期预测参数索引。图2示出了在使用CELP解码器对原始语音进行解码期间执行的操作。通过使接收到的码矢量通过对应的滤波器来在解码器处重构语音信号。因此,除了后处理之外的每个块具有如图1的编码器所述的相同定义。在接收设备处接收和解封装80已编码CELP比特流。对于每个接收到的子帧,使用接收到的编码激励索引、量化增益索引、量化长期预测参数索引和量化短期预测参数索引通过对应的解码器,例如,增益解码器81、长期预测解码器82和短期预测解码器83求出对应的参数。例如,可以从接收到的编码激励索引确定激励脉冲的位置和幅度信号以及码激励402的代数码矢量。参考图2,解码器是若干块的组合,该解码器包括编码激励201、长期预测203、短期预测205。初始解码器还包括合成语音206之后的后处理块207。后处理还可包括短期后处理和长期后处理。图3示出了传统CELP编码器。图3示出了使用额外的自适应码本来改进长期线性预测的基本CELP编码器。通过将自适应码本307和码激励308的贡献相加产生激励,码激励308可以是如先前所述的随机或固定码本。自适应码本中的条目包括激励的时延版本。这使得它有可能有效率地对周期性信号,例如浊音,进行编码。参考图3,自适应码本307包括过去合成激励304或在基音周期内重复过去激励基音循环。当基音延迟很大或很长时,可以将它编码为整数值。当基音延迟很小或很短时,通常将它编码为更准确的分数值。使用基音的周期性信息以生成激励的自适应分量。随后通过增益Gp305(还称为基音增益)来调整这种激励分量。长期预测对于浊音语音编码非常重要,因为浊音语音具有强周期。浊音语音的相邻基音循环彼此相似,这意味着在数学上,以下激励表达式中的基音增益Gp很高或接近于1。所得的激励可以在等式(6)中表示为各个激励的组合。e(n)=Gp·ep(n)+Gc·ec(n)(6)其中,ep(n)是索引为n的样本序列的一个子帧,来自于自适应码本307,其包括经过反馈回路的过去激励304(图3)。ep(n)可以自适应地低通滤波为低频区域,该低频区域的周期和谐波通常比高频区域的多。ec(n)来自编码激励码本308(还称为固定码本),其是当前激励贡献。此外,还可以例如通过使用高通滤波增强、基音增强、色散增强、共振峰增强和其它来增强ec(n)。对于浊音语音,自适应码本307中ep(n)的贡献可能是主导的,而且基音增益Gp305的值约为1。通常更新每个子帧的激励。典型的帧大小是20毫秒,典型的子帧大小是5毫秒。如图1所述,固定编码激励308在进入线性滤波器之前通过增益Gc306调整。在通过短期线性预测滤波器303进行滤波之前,将固定码本激励108和自适应码本307中的两个调整的激励分量相加在一起。量化这两个增益(Gp和Gc)并向解码器传输。相应地,向接收音频设备传输编码激励索引、自适应码本索引、量化增益索引和量化短期预测参数索引。在接收设备处接收使用图3所示的设备编码的CELP比特率。图4示出了接收设备的对应解码器。图4示出了对应于图3中的编码器的基本CELP解码器。图4包括接收来自主解码器的合成语音407的后处理块408。该解码器类似于图3,除了自适应码本307。对于接收到的每个子帧,使用接收到的编码激励索引、量化编码激励增益索引、量化基音索引、量化自适应码本增益索引和量化短期预测参数索引来通过对应的解码器,例如,增益解码器81、基音解码器84、自适应码本增益解码器85和短期预测解码器83,求出对应的参数。在各种实施例中,CELP解码器是若干块的组合并且包括编码激励402、自适应码本401、短期预测406和后处理408。除了后处理,每个块还具有如图3的编码器所述的相同定义。后处理还可包括短期后处理和长期后处理。码激励块(参考图3中的标号308和图4中的402)示出了用于进行一般CELP编码的固定码本(FixedCodebook,FCB)的位置。从FCB中选择的码矢量通过通常示为Gc306的增益调整。图5和图6示出了示意性语音信号以及其与时域中的帧大小和子帧大小的关系的示例。图5和图6示出了包括多个子帧的帧。输入语音的每个样本被划分为样本块,每个样本块被称为帧,例如,80至240个样本或帧。每个帧被划分为更小的样本块,每个更小的样本块被称为子帧。以8kHz、12.8kHz或16kHz的采样速率,语音编码算法是这样的:标称帧时长在十到三十毫秒的范围内,通常是二十毫秒。在所示的图5中,帧具有帧大小1和子帧大小2,其中每个帧被划分为4个子帧。参考图5和图6的下部或底部部分,语音中的浊音区域在时域表示中像近周期信号。说话者声带的周期性开合引起浊音语音信号中的谐波结构。因此,在短时间内,对于所有实际分析和处理,可将浊音语音分段视为周期性的。与这类分段相关的周期性在时域中被定义为“基音周期”,或简单地,为“基音”;在频域中,被定义为“基音频率或基础频率f0”。基音周期的反面是语音的基础频率。语音的基音和基础频率这两个术语经常交换使用。对于大多数浊音语音,一个帧包括两个以上基音循环。图5还示出了基音周期3小于子帧大小2的示例。相反,图6示出了基音周期4大于子帧大小2且小于半个帧大小的示例。为了更高效地对语音信号进行编码,可以将语音信号划分为不同的类别,并且以不同的方式对每个类别进行编码。例如,在G.718、VMR-WB或AMR-WB等一些标准中,将语音信号分类为UNVOICED、TRANSITION、GENERIC、VOICED和NOISE。对于每个类别,经常使用LPC或STP滤波器来表示频谱包络。然而,对LPC滤波器的激励可能是不同的。UNVOICED和NOISE类别可使用噪声激励和某一激励增强来进行编码。TRANSITION类别可在不使用自适应码本或LTP的情况下使用脉冲激励和某一激励增强来进行编码。GENERIC可使用传统CELP方法来进行编码,例如,在G.729或AMR-WB中使用的代数CELP,其中一个20毫秒的帧包括四个5毫秒的子帧。自适应码本激励分量和固定码本激励分量两者都使用每个子帧的某一激励增强来产生。第一和第三子帧中的自适应码本的基音周期在从最小基音限制PIT_MIN到最大基音限制PIT_MAX的全范围中进行编码。第二和第四子帧中的自适应码本的基音周期与先前编码的基音周期有区别地进行编码。VOICED类别可通过与GENERIC类别略有不同的方式进行编码。例如,第一子帧中的基音周期可在从最小基音限制PIT_MIN到最大基音限制PIT_MAX的全范围中进行编码。其它子帧中的基音周期可与先前编码的基音周期有区别地进行编码。作为说明,假如激励采样速率是12.8kHz,那么示例PIT_MIN值可以是34,示例PIT_MAX值可以是231。现将描述本发明的改进时域编码与频域编码之间的分类的实施例。一般来说,最好对语音信号使用时域编码且对音乐信号使用频域编码,以便以相当高的比特率(例如,24kbps≤比特率≤64kbps)实现最佳质量。然而,对于某一特定语音信号,例如短基音信号、振鸣语音信号或非常嘈杂的语音信号,最好使用频域编码。对于某一特定音乐信号,例如非常周期性的信号,最好通过从非常高的LTP增益获益来使用时域编码。比特率是用于分类的重要参数。通常,时域编码支持低比特率,频域编码支持高比特率。还考虑到比特率范围和编码算法的特性,时域编码与频域编码之间的最佳分类或选择需要谨慎决定。在接下来的部分中将描述正常语音和段基音信号的检测。正常语音是除振鸣语音信号、短基音语音信号或语音/音乐混合信号之外的语音信号。正常语音还可以是快速变化的语音信号,其频谱和/或能量的变化快于大部分音乐信号。通常,对于对正常语音信号进行编码,时域编码算法优于频域编码算法。以下是检测正常语音信号的示例算法。对于基音候选P,通常以如等式(8)中的数学形式定义归一化基音相关系数。在等式(8)中,sw(n)是加权语音信号,分子是相关系数,分母是能量归一化因子。假设Voicing指示当前语音帧中的四个子帧的平均归一化基音相关系数值,Voicing可按以下等式(9)计算。Voicing=[R1(P1)+R2(P2)+R3(P3)+R4(P4)]/4(9)R1(P1)、R2(P2)、R3(P3)和R4(P4)是针对各个子帧计算的四个归一化基音相关系数;各个子帧的P1,、P2、P3和P4是在从P=PIT_MIN到P=PIT_MAX的基音范围中找到的最佳基音候选。从前一帧到当前帧的平滑后的基音相关系数可以如等式(10)计算。在等式(10)中,VAD是语音活动检测(VoiceActivityDetection),VAD=1指存在语音信号。假设Fs是采样速率,非常低的频率范围[0,FMIN=Fs/PIT_MIN](Hz)中的最大能量是Energy0(dB),低频范围[FMIN,900](Hz)中的最大能量是Energy1(dB),高频范围[5000,5800](Hz)中的最大能量是Energy3(dB),频谱倾斜参数Tilt如下定义。Tilt=energy3-max{energy0,energy1}(11)平滑后的频谱倾斜参数如等式(12)指示。当前帧与前一帧的差分频谱倾斜可如等式(13)给出。Diff_tilt=|tilt-old_tilt|(13)平滑后的差分频谱倾斜如等式(14)给出。当前帧与前一帧的差分低频能量为Diff_energy1=|energy1-old_energy1|(15)平滑后的差分能量通过等式(16)给出。此外,在浊音区域中通过考虑由Energy变化得到的Diff_energy1_sm、由Voicing变化得到Voicing_sm和由Diff_tilt变化Diff_tilt_sm来确定和改变一个由Speech_flag表示的正常语音标记,如公式(17)所示。将描述本发明的检测短基音信号的实施例。对于正常语音信号,大多数CELP编解码器效果良好。然而,对于音乐信号和/或振鸣语音信号,低比特率CELP编解码经常失败。如果基音编码范围是从PIT_MIN到PIT_MAX且实际基音周期小于PIT_MIN,则CELP编码性能可能由于双重基音或三重基音而感知不佳。例如,采样频率Fs=12.8kHz时,PIT_MIN=34到PIT_MAX=231的基音范围适合大多数人类声音。然而,规律性音乐或振鸣浊音信号的实际基音周期可能比上述示例CELP算法中定义的最小限制PIT_MIN=34短得多。当实际基音周期为P时,对应的归一化基本频率(或第一谐波)为f0=Fs/P,其中,Fs是采样频率,f0是频谱中第一谐振峰的位置。因此,对于给定的采样频率,最小基音限制PIT_MIN实际上定义了CELP算法的最大基本谐波频率限制FM=Fs/PIT_MIN。图7示出了原始浊音宽带频谱的示例。图8示出了图7所示的原始浊音宽带频谱的使用双重基音周期编码的编码浊音宽带频谱。换言之,图7示出了编码之前的频谱,图8示出了编码之后的频谱。在图7所示的示例中,频谱由谐振峰701和频谱包络702形成。实际基本谐波频率(第一谐振峰的位置)已超过最大基本谐波频率限制FM,因此针对CELP算法的已传输基音周期无法等于实际基音周期,其会是实际基音周期的双倍或更多倍。传输的多倍于实际基音周期的错误基音周期会导致明显的质量下降。换言之,当谐波音乐信号或振鸣语音信号的实际基音周期小于CELP算法中定义的最小基因周期限制PIT_MIN时,传输的基音周期会是实际基音周期的双倍、三倍或更多倍。因此,具有已传输基音周期的编码信号的频谱可以如图8所示。如图8所示,除了包括谐振峰8011和频谱包络802,还可以看到实际谐振峰之间的多余小峰803,而正确的频谱应像图7中的频谱。图8中的这些小频谱峰会导致不舒服的感知失真。根据本发明的实施例,在CELP对于某些特定信号失败时,解决该问题的一个方案是使用频域编码而非时域编码。通常,音乐谐波信号或振鸣语音信号比正常语音信号更平稳。正常语音信号的基音周期(或基本频率)一直在变化。然而,音乐信号或振鸣语音信号的基音周期(或基本频率)在相当长的时间内经常保持相对较慢的变化。从PIT_MIN0到PIT_MIN定义一个非常短的基音范围。在采样频率Fs=12.8kHz时,非常短的基音范围的示例定义可以是从PIT_MIN0≤17到PIT_MIN=34。因为基音候选如此短,所以从0Hz到FMIN=Fs/PIT_MINHz的能量一定要相对足够低。在检测短基音信号的存在时,可以增加其它条件,例如语音活动监测和浊音分类。以下两个参数有助于检测非常短的基音信号的可能存在。一个的特征是“缺少非常低的频率能量”,另一个的特征是“频谱锐度”。如上文已经提及的,假设频域[0,FMIN](Hz)中的最大能量是Energy0(dB),频域[FMIN,900](Hz)中的最大能量是Energy1(dB),Energy0与Energy1之间的相对能量比在以下等式(18)中提供。Ratio=Energy1-Energy0(18)该能量比可以通过乘以平均归一化基音相关系数值浊音度来加权,其在以下等式(19)中示出。使用Voicing因子在等式(19)中进行加权的原因在于,对于浊音语音或谐波音乐,短基音检测是有意义的,对于清音语音或非谐波音乐,短基音检测是无意义的。在使用Ratio参数检测低频能量的缺少之前,最好将其平滑以便降低如等式(20)中的不确定性。如果LF_lack_flag=1是指检测到缺少低频能量(否则LF_lack_flag=0),则可以通过以下流程确定LF_lack_flag。通过以下方式确定频谱锐度相关的参数。假设Energy1(dB)是低频区域[FMIN,900](Hz)中的最大能量,i_peak是频率区域[FMIN,900](Hz)中的最大能量谐振峰位置,Energy2(dB)是频域区域[i_peak,i_peak+400](Hz)中的平均能量。一个频谱锐度参数如等式(21)定义。SpecSharp=max{Energy1-Energy2,0}(21)平滑后的频谱锐度参数如下给定。if(VAD=1){SpecSharp_sm=(7·SpecSharp_sm+SpecSharp)/8}指示短基音信号的可能存在的一个频谱锐度标记通过以下流程求值。如果以上条件都不满足,则SpecSharp_flag保持不变。在各种实施例中,可以使用以上估算的参数来改进时域编码与频域编码的分类或选择。假设Sp_Aud_Deci=1表示选择了频域编码,Sp_Aud_Deci=0表示选择了时域编码。以下流程给出了针对不同编码比特率改进时域编码与频域编码的分类的示例算法。本发明的实施例可用于改进针对高比特率信号的编码,例如,编码比特率大于或等于46200bps。当编码比特率非常高且可能存在短基音信号时,选择频域编码,因为频域编码能够交付稳健且可靠的质量,而时域编码存在受到错误基音检测的负面影响的风险。相反,当不存在短基音信号且信号是清音语音或正常语音时,选择时域编码,因为对于正常语音信号,时域编码能够比频域编码交付更好的质量。本发明的实施例可用于改进针对中等比特率信号的编码,例如,当比特率在24.4kbps与46200bps之间时。当可能存在短基音信号且浊音周期较低时,选择频域编码,因为频域编码能够交付稳健且可靠的质量,而时域编码存在受到低浊音周期的负面影响的风险。当不存在短基音信号且信号是清音语音或正常语音时,选择时域编码,因为对于正常语音信号,时域编码能够比频域编码交付更好的质量。当浊音周期非常强时,选择时域编码,因为时域编码能够通过非常强的浊音周期从高LTP增益受益良多。本发明的实施例还可用于改进针对高比特率信号的编码,例如,编码比特率小于24.4kbps。当存在短基音信号、浊音周期不低且短基音周期检测正确时,不选择频域编码,因为频域编码在低速率时无法交付稳健且可靠的质量,而时域编码能够很好地从LTP函数受益。以下算法示出了以上实施例的特定实施例作为说明。所有参数均可如先前在一项或多项实施例中描述的来计算。在各种实施例中,可使用时域编码与频域编码的分类或选择来显著提高某些特定语音信号或音乐信号的感知质量。基于滤波器组技术的音频编码在频域编码中广泛使用。在信号处理中,滤波器组是一组将输入信号分离成多个分量的带通滤波器,每个分量携带原始输入信号的单个频率子带。由滤波器组执行的分解过程称为分析,滤波器组分析的输出被称为子带信号,其中子带信号具有与滤波器组中的滤波器一样多的子带。重构过程被称为滤波器组合成。在数字信号处理中,术语滤波器组通常还应用到一组接收器中,接收器还可将子带下变频为能够以降低的速率重新采样的低中心频率。有时可以通过对带通子带进行下采样获得相同的合成结果。滤波器组分析的输出可采用复系数形式。每个复系数具有分别表示滤波器组中每个子带的余弦项和正弦项的实元素和虚元素。滤波器组分析和滤波器组合成是一种变换对,其将时域信号变换为频域系数,并将频域系数逆变换为时域信号。其它流行的变换对,例如(FFT和iFFT)、(DFT和iDFT)以及(MDCT和iMDCT),也可在语音/音频编码中使用。在应用滤波器组进行信号压缩时,一些频率在感知上比其它频率更重要。在分解之后,可以使用高分辨率对感知上重要的频率进行编码,因为使用会保留这些差异的编码方案会保证在感知上会注意到这些频率的微小差异。另一方面,少数感知上重要的频率不被尽可能精确地重复。因此,可以使用更粗略的编码方案,即使一些更精细的细节在编码时将会丢失。典型的更粗略编码方案可基于带宽扩展(BandwidthExtension,BWE),还称为高频带扩展(HighBandExtension,HBE)这个概念。最近流行的一种特定BWE或HBE方法称为子带复制(SubBandReplica,SBR)或频段复制(SpectralBandReplication,SBR)。这些技术是类似的,因为他们利用小比特率预算,甚至是零比特率预算,对一些子频带(通常是高频带)进行编码和解码,从而产生明显低于正常编码/解码方法的比特率。通过SBR技术,可以从低频带中复制高频带中的频谱精细结构,而且可以增加随机噪声。然后,通过使用从编码器向解码器传输的边信息形成高频带的频谱包络。对音频压缩的设计使用心理声学原则或感知掩蔽效应是合理的。音频/语音设备或通信旨在通过它们的所有能力和感知限制与人类交互。传统音频设备尝试再现最接近原始信号的信号。更合适地定向的且经常更有效的目标是实现人类可感知的保真度。这是感知编码器的目标。虽然数字音频感知编码器的一个主要目标是数据归约,但是感知编码还可用于通过高级比特分配来改进数字音频的表示。感知编码器的一个示例可以是多频带系统,其通过模仿心理声学的临界频带的方式来划分频谱。通过对人类感知进行建模,感知编码器可以像人类一样处理信号,并利用掩蔽等现象。虽然这是它们的目标,但是过程依靠精确算法。由于很难具有覆盖覆盖普通人类听觉行为的非常精确的感知模型的事实,感知模型的任何数学表示的精确度都仍然是有限的。然而,通过有限的精确度,感知概念已在音频编解码器的设计中提供了帮助。很多MPEG音频编码方案已从感知掩蔽效应研究中受益。若干ITU标准编解码器也使用感知概念。例如,ITUG.729.1基于感知掩蔽概念执行所谓的动态比特分配。基于感知重要性的动态比特分配概念还在最近的3GPPEVS编解码器中使用。图9A和9B示出了典型频域感知编解码器的示意图。图9A示出了频域编码器而图9B示出了频域解码器。首先将原始信号901变换为频域以获得未量化的频域系数902。在量化系数之前,掩蔽功能(感知重要性)将频谱划分为许多子带(为简单起见,常等距划分)。每个子带动态分配所需比特数,同时保持分配给所有子带的总比特数不超过上限。如果判断为在掩蔽阈值之下,则一些子带可能会分到0比特。一旦确定什么可以被丢弃,剩余的就会分到可用比特数。因为比特没有浪费在掩蔽频谱上,所以能够将数量更多的比特分配给剩余信号。根据所分配的比特,量化系数并将比特流703发送给解码器。虽然感知掩蔽概念在编解码器设计中有很大帮助,但是由于各种原因和限制,其仍然是不完美的。参考图9B,解码器侧后处理能够进一步提高通过有限比特流产生的解码信号的感知质量。解码器首先使用接收的比特904来重构量化系数905。然后,合理设计的模块906对它们进行后处理以获得增强系数907。对增强系数执行逆变换以得到最终时域输出908。图10示出了根据本发明实施例的在对包括音频数据的语音信号进行编码之前在编码器处执行的操作的示意图。参考图10,方法包括基于将用于对数字信号进行编码的编码比特率和数字信号的基音周期来选择频域编码或时域编码(方框1000)。频域编码或时域编码的选择包括确定数字信号是否包括短基音信号的步骤,其中该短基音信号的基音周期短于基音周期限度(方框1010)。此外,确定编码比特率是否高于比特率上限(方框1020)。如果数字信号包括短基音信号且编码比特率高于比特率上限,则选择频域编码来对数字信号进行编码。否则,确定编码比特率是否低于比特率下限(方框1030)。如果数字信号包括短基音信号且编码比特率低于比特率下限,则选择时域编码来对数字信号进行编码。否则,确定编码比特率是否在比特率上限与比特率下限中间(方框1040)。然后确定浊音周期(方框1050)。如果数字信号包括短基音信号、编码比特率处于中间且浊音周期较低,则选择频域编码来对数字信号进行编码。或者,如果数字信号包括短基音信号、编码比特率处于中间且浊音周期非常强,则选择时域编码来对数字信号进行编码。或者,参考方框1010,数字信号不包括基音周期短于基音周期限度的短基音信号。确定数字信号是否被归类为清音语音或正常语音(方框1070)。如果数字信号不包括短基音信号且如果数字信号被归类为清音语音或正常语音,则选择时域编码来对数字信号进行编码。因此,在各种实施例中,一种用于在对包括音频数据的数字信号进行编码之前处理语音信号的方法包括:基于将用于对数字信号进行编码的编码比特率和数字信号的短基音周期检测来选择频域编码或时域编码。数字信号包括基音周期短于基音周期限度的短基音信号。在各种实施例中,选择频域编码或时域编码的方法包括:当编码比特率高于比特率上限时,选择频域编码来对数字信号进行编码;当编码比特率低于比特率下限时,选择时域编码来对数字信号进行编码。当编码比特率大于或等于46200bps时,编码比特率高于比特率上限。当编码比特率小于24.4kbps时,编码比特率低于比特率下限。类似地,在另一实施例中,一种用于在对包括音频数据的数字信号进行编码之前处理语音信号的方法包括:当编码比特率高于比特率上限时,选择频域编码来对数字信号进行编码。或者,当编码比特率低于比特率下限时,该方法选择时域编码来对数字信号进行编码。数字信号包括基音周期短于基音周期限度的短基音信号。当编码比特率大于或等于46200bps时,编码比特率高于比特率上限。当编码比特率小于24.4kbps时,编码比特率低于比特率下限。类似地,在另一实施例中,一种用于在编码之前处理语音信号的方法包括:当数字信号不包括短基音信号并且数字信号被归类为清音语音或正常语音时,选择时域编码来对包括音频数据的数字信号进行编码。该方法还包括:当编码比特率处于比特率下限与比特率上限中间时,选择频域编码来对数字信号进行编码。数字信号包括短基音信号,且浊音周期较低。该方法还包括:当编码比特率处于中间、数字信号包括短基音信号且浊音周期非常强时,选择时域编码来对数字信号进行编码。比特率下限为24.4kbps,比特率上限为46.2kbps。图11示出了根据本发明实施例的通信系统10。通信系统10具有经由通信链路38和40耦合到网络36的音频接入设备7和8。在一项实施例中,音频接入设备7和8是基于IP的语音传输(voiceoverinternetprotocol,VOIP)设备,网络36是广域网(wideareanetwork,WAN)、公共交换电话网络(publicswitchedtelephonenetwork,PSTB)和/或互联网。在另一项实施例中,通信链路38和40是有线和/或无线宽带连接。在另一替代性实施例中,音频接入设备7和8是蜂窝或移动电话,链路38和40是无线移动电话信道,网络36表示移动电话网络。音频接入设备7使用麦克风12将声音,例如音乐或人的声音,转换成模拟音频输入信号28。麦克风接口16将模拟音频输入信号28转换成数字音频信号33以输入到编解码器20的编码器22中。根据本发明实施例,编码器22产生已编码音频信号TX以便经由网络接口26向网络26传输。编解码器20内的解码器24经由网络接口26接收来自网络36的已编码音频信号RX,并且将已编码音频信号RX转换成数字音频信号34。扬声器接口18将数字音频信号34转换成适用于驱动扬声器14的音频信号30。在本发明实施例中,当音频接入设备7为VOIP设备时,音频接入设备7内的一些或所有组件在手机内实施。然而,在一些实施例中,麦克风12和扬声器14为单独的单元,麦克风接口16、扬声器接口18、编解码器20和网络接口26在个人计算机内实施。编解码器20可以在运行在计算机或专用处理器上的软件中实施或通过专用集成电路(applicationspecificintegratedcircuit,ASIC)等上的专用硬件实施。麦克风接口16通过模数(analog-to-digital,A/D)转换器以及位于手机和/或计算机内的其它接口电路来实施。同样地,扬声器接口18通过数模转换器和位于手机和/或计算机内的其它接口电路来实施。在其它实施例中,音频接入设备7可以通过本领域已知的其它方式来实施和划分。在本发明实施例中,当音频接入设备7为蜂窝或移动电话时,音频接入设备7内的元件在蜂窝手机内实施。编解码器20通过运行在手机内的处理器上的软件或通过专用硬件来实施。在本发明的其它实施例中,音频接入设备可以在诸如端到端有线和无线数字通信系统,例如对讲机和无线手机,之类的其它设备中实施。在客户音频设备等应用中,音频接入设备可包括数字麦克风系统或音乐播放设备中的只具有例如编码器22或解码器24的编解码器。在本发明的其它实施例中,编解码器20可以在没有麦克风12和扬声器14的情况下在接入PSTN的蜂窝基站中使用。本发明各种实施例中描述的用于改进清音/浊音分类的语音处理可以在编码器22或解码器24等中实施。用于改进清音/浊音分类的语音处理可以在各种实施例中的硬件或软件中实施。例如,编码器22或解码器24可以是数字信号处理(digitalsignalprocessing,DSP)芯片的一部分。图12示出了可以用于实施本文公开的设备和方法的处理系统的方框图。特定设备可利用所有示出的组件或仅组件子集,且设备之间的集成程度可能不同。此外,设备可以包括组件的多个实例,例如多个处理单元、处理器、存储器、发射器、接收器等。处理系统可包括配备一个或多个输入/输出设备,例如扬声器、麦克风、鼠标、触摸屏、按键、键盘、打印机、显示器等的处理单元。处理单元可包括中央处理器(centralprocessingunit,CPU)、存储器、大容量存储器设备、视频适配器以及连接至总线的I/O接口。总线可以是任意类型的若干总线架构中的一个或多个,包括存储总线或存储控制器、外设总线、视频总线等等。CPU可包括任意类型的电子数据处理器。存储器可包括任意类型的系统存储器,例如静态随机存取存储器(staticrandomaccessmemory,SRAM)、动态随机存取存储器(dynamicrandomaccessmemory,DRAM)、同步DRAM(synchronousDRAM,SDRAM)、只读存储器(read-onlymemory,ROM)或它们的组合,等等。在实施例中,存储器可包括在开机时使用的ROM以及执行程序时使用的程序和数据存储器的DRAM。大容量存储器设备可包括任意类型的存储器设备,其用于存储数据、程序和其它信息,并使这些数据、程序和其它信息可通过总线访问。大容量存储器设备可包括如下项中的一项或多项:固态磁盘、硬盘驱动器、磁盘驱动器、光盘驱动器等等。视频适配器和I/O接口提供接口来将外部输入和输出设备耦合到处理单元。如所图示,输入和输出设备的示例包括耦合到视频适配器的显示器以及耦合到I/O接口的鼠标/键盘/打印机。其它设备可耦合到处理单元,并且可利用额外的或较少的接口卡。例如,通用串行总线(UniversalSerialBus,UBS)(未示出)等串行接口可用于为打印机提供接口。处理单元还包括一个或多个网络接口,网络接口可包括以太网电缆等有线链路,和/或用以接入节点或不同网络的无线链路。网络接口允许处理单元通过网络与远程单元通信。例如,网络接口可以通过一个或多个发射器/发射天线以及一个或多个接收器/接收天线来提供无线通信。在实施例中,处理单元耦合到局域网或广域网上以用于数据处理以及与远程设备通信,远程设备可为其它处理单元、互联网、远程存储设施,等等。虽然已参考说明性实施例描述了本发明,但此描述并不旨在限制本发明。所属领域技术人员在参考该描述后将会明白说明性实施例的各种修改和组合以及本发明的其它实施例。例如,上述各种实施例可以彼此组合。参考图13,描述了用于在对数字信号进行编码之前处理语音信号的装置130的实施例。该装置包括:编码选择器131,用于基于将用于对数字信号进行编码的编码比特率和数字信号的短基音周期检测来选择频域编码或时域编码。其中,当数字信号包括基音周期短于基音周期限度的短基音信号时,编码选择器用于:当编码比特率高于比特率上限时,选择频域编码来对数字信号进行编码,以及当编码比特率低于比特率下限时,选择时域编码来对数字信号进行编码。其中,当数字信号包括基音周期短于基音周期限度的短基音信号时,编码选择器用于:当编码比特率处于比特率下限与比特率上限中间且其中浊音周期较低时,选择频域编码来对数字信号进行编码。其中,当数字信号不包括基音周期短于基音周期限度的短基音信号时,编码选择器用于:当数字信号被归类为清音语音或正常语音时,选择时域编码来对数字信号进行编码。其中,当数字信号包括基音周期短于基音周期限度的短基音信号时,编码选择器用于:当编码比特率处于比特率下限与比特率上限中间且浊音周期非常强时,选择时域编码来对数字信号进行编码。该装置还包括编码单元132,该编码单元用于使用选择器131选择的频域编码或选择器131选择的时域编码来对数字信号进行编码。编码选择器和编码单元可以通过CPU或通过FPGA、ASIC等一些硬件电路来实施。参考图14,描述了用于在对数字信号进行编码之前处理语音信号的装置140的实施例。该装置包括:编码选择单元141,该编码选择单元用于:当数字信号不包括短基音信号且数字信号被归类为清音语音或正常语音时,选择时域编码来对包括音频数据的数字信号进行编码;当编码比特率处于比特率下限与比特率上限中间、数字信号包括短基音信号且浊音周期较低时,选择频域编码来对数字信号进行编码;以及当编码比特率处于中间、数字信号包括短基音信号且浊音周期非常强时,选择时域编码来对数字信号进行编码。该装置还包括第二编码单元142,第二编码单元用于使用编码选择单元141选择的频域编码或编码选择单元141选择的时域编码来对数字信号进行编码。编码选择单元和编码单元可以通过CPU或通过FPGA、ASIC等一些硬件电路来实施。虽然已详细地描述了本发明及其优点,但是应理解,可以在不脱离如所附权利要求书所界定的本发明的精神和范围的情况下对本发明做出各种改变、替代和更改。例如,上文所论述的许多特征和功能可以由软件、硬件、固件或其组合来实施。此外,本发明的范围并不局限于说明书中所述的过程、机器、制造、物质组分、构件、方法和步骤的具体实施例。所属领域的一般技术人员可从本发明中轻易地了解,可根据本发明使用现有的或即将开发出的,具有与本文所描述的相应实施例实质相同的功能,或能够取得与所述实施例实质相同的结果的过程、机器、制造、物质组分、构件、方法或步骤。相应地,所附权利要求范围包括这些流程、机器、制造、物质组分、构件、方法及步骤。当前第1页1 2 3 当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1