一种用于语音编码的固定码本快速搜索方法技术

技术编号:3046589 阅读:189 留言:0更新日期:2012-04-11 18:40
一种用于语音编码的固定码本快速搜索算法,该固定码本是由55个分量的码字矢量的一个集合所组成;其特征在于:在全速率情况下,进行四次迭代循环搜索,每次迭代循环搜索后得到一个候选最佳码字矢量,再由该四个候选最佳码字矢量分别进一步得到四个合成语音,最后判断该四个合成语音和原始输入语音之间的加权均方误差为最小的候选最佳码字矢量为最佳码字矢量。(*该技术在2023年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及一种用于语音编码的固定码本快速搜索算法,属于电话通信中的语音编解码

技术介绍
在移动通信中,语音编解码器被称为声码器,一般采用数字信号处理器(DSP,digital signal processor)来实现。由于在移动通信系统中对声码器的需求较大(比如基站系统),提高语音编码算法的执行效率,从而降低系统成本和体积尤为重要。TIA/EIA/IS-127标准是第三代移动通信系统CDMA2000 1X系统采用的语音编码标准。它采用的增强可变速率语音编解码器(EVRC,Enhanced VariableRate Codec)具有可变速率和话音质量高的特点。它采用的语音帧时间长度为20ms,根据每帧的噪声情况不同分别采用三种不同的速率进行编码输出全速率、1/2速率和1/8速率。该增强可变速率语音编解码器是由滤波、噪声去除、模型参数估计、编码速率判决、参数编码(包含了线谱对加权矢量量化模块)以及解码六个模块构成。EVRC算法的复杂度约为30MIPS(million instructionper second),即每秒3千万条指令,比较复杂。EVRC算法基本原理是用自适应码本中的码字矢量来逼近语音的基音,用固定码本中的码字矢量来逼近语音的经过短时、长时预测后的余量信号。再从这两个码本中搜索出来的最佳码字矢量,分别乘以各自的最佳增益后相加,其和就是激励信号源,激励信号源通过合成滤波器得到合成语音。最佳合成激励信号源用分析合成方法来确定,使得原始语音和合成语音之间的均方加权误差最小。EVRC算法对输入的语音帧首先进行高通滤波,去掉直流和过低频率的信号。对高通滤波后的语音帧需要去除噪声,改善语音信号质量。再对去除噪声的语音信号计算10个线性预测系数(LPC,Linear predictive coefficient),以及将该LPC系数转换为10个线谱对(LSP,line spectrum pairs)参数。然后对线谱对LSP参数进行加权矢量量化。最后进行参数编码。有三种编码速率全速率、1/2速率、1/8速率。在参数编码模块中,全速率时,对模型参数估计模块得到的频谱过渡指示标志、基音延迟及其差分延迟分别进行编码,而在1/2速率时,仅对基音延迟编码。在1/8速率时仅需将线谱对量化索引和语音帧能量的增益编码。对于全速率和1/2速率的情况,还需要进一步将语音帧划分为3个子帧,对每一子帧进行如下处理从EVRC的自适应码本和固定码本中各自搜索得到每一子帧的最佳码字矢量,并进一步得到各自的最佳增益,将每一子帧的自适应码本增益和固定码本增益以及对应的最佳码字矢量的索引编码。目前,在EVRC算法中规定的全速率下固定码本的最佳码字矢量搜索算法如下固定码本矢量包含55个分量,被划分为5个轨道,每个轨道有11个分量,在该5个轨道上,仅有8个分量是非零单位脉冲(每个脉冲包括位置和正负符号),其余分量为零。这8个非零脉冲的位置和符号的不同排列构成不同的码字矢量,进而可以得到合成语音,通过判断合成语音和原始输入语音之间的加权均方误差是否最小的判断准则,可以判断采用上述方法所得到的码字矢量是否最佳。在该5个轨道中,有3个轨道各自分别包含2个非零脉冲,即这3个轨道中的每个轨道要搜索2次;其余两个轨道各自分别包含1个非零脉冲,即这两个轨道中的每个轨道搜索1次。包含单脉冲的两个轨道可能是第4、5轨道、或第5、1轨道、或第1、2轨道、或第2、3轨道。为了搜索最佳码字矢量,需要对8个脉冲的所有可能的位置和符号的组合都进行搜索,但是这样做的运算量非常庞大。为了减少了搜索运算量,EVRC算法采用了局部搜索算法。该局部搜索算法采用四次迭代循环,每次迭代循环又包含四个子迭代循环;每次迭代循环搜索可以得到一个候选最佳码字矢量,然后比较这些候选最佳码字矢量,并从其中得到最佳码字矢量。例如在第一次迭代循环中假设包含单脉冲的轨道是第4、5轨道,再分别假设包含单脉冲的轨道是第5、1轨道、或第1、2轨道、或第2、3轨道,重复进行3次迭代;且每次迭代循环时,将8个脉冲分成4对,每个子迭代循环只顺序确定其中一对脉冲的位置。从数学分析的角度来看,EVRC算法是将在8个待搜索脉冲构成的8维空间内的搜索分解为在4个二维空间内的搜索。在EVRC算法中规定的最佳码字矢量搜索的具体过程如下(1)首先假设包含单脉冲的轨道是在第4、5轨道,其余轨道各自存在两个脉冲。(2)在第1和第2轨道上分别确定第1、2个脉冲位置。由于EVRC算法事先采用了预测算法,确定第1个脉冲可能的位置减少到6种,而第2个脉冲仍旧有11种可能的位置。因此确定第1、2个脉冲位置采用一个迭代的循环,此时搜索的码字矢量次数是6×11=66。(3)在第3和第4轨道上分别确定第3、4个脉冲位置。此时搜索的码字矢量次数同上,仍为66。(4)在第5和第1轨道上分别确定第5、6个脉冲位置。此时搜索的码字矢量次数同上,仍为66。(5)在第2和第3轨道上分别确定第7、8个脉冲位置。此时搜索的码字矢量次数同上,仍为66。(6)通过上述步骤(2)到(5),确定8个脉冲位置,得到假设单脉冲轨道在当前轨道时的候选最佳码书矢量。(7)假设包含单脉冲的轨道分别是第5、1轨道,类似地重复步骤(2)-(6),码字矢量的搜索次数仍旧同上。(8)假设包含单脉冲的轨道分别是第1、2轨道,类似地重复步骤(2)-(6),码字矢量的搜索次数仍旧同上。(9)假设包含单脉冲的轨道分别是第2、3轨道,类似地重复步骤(2)-(6),码字矢量的搜索次数仍旧同上。(10)以上述步骤得到的四种候选最佳码字矢量进一步可以得到合成语音,再通过判断四个合成语音和原始输入语音之间的加权均方误差是否最小来确定最佳码字矢量。(11)至此,每一子帧的固定码本的最佳码字矢量搜索次数为4×4×66=1056个。每一帧的固定码本的最佳码字矢量搜索次数为3×1056=3168个。在1/2速率,固定码本搜索情况也如同上述,但是全速率下固定码本的搜索最费时间,极需优化,已经成为业内人士相当关注的一个课题。
技术实现思路
本专利技术的目的是提供一种用于语音编码的固定码本快速搜索算法,该方法是在全速率情况下针对固定码本的搜索问题提出的一种快速搜索算法,能够降低EVRC算法的复杂度,在全速率时理论上可以使搜索时间减少到原来的25.8%,大大提高效率;并且优化后的音质基本不变,符合相应的TIA/EIA/IS-718测试标准,从而降低硬件系统的实现成本和体积。本专利技术的目的是这样实现的一种用于语音编码的固定码本快速搜索算法,该固定码本是由55个分量的码字矢量的一个集合所组成;其特征在于在全速率情况下,进行四次迭代循环搜索,每次迭代循环搜索后得到一个候选最佳码字矢量,再由该四个候选最佳码字矢量分别进一步得到四个合成语音,最后判断该四个合成语音和原始输入语音之间的加权均方误差为最小的候选最佳码字矢量为最佳码字矢量。所述每次迭代循环搜索得到一个候选最佳码字矢量的具体步骤是每次迭代循环搜索时,顺序地在每个轨道中分别逐个确定8个脉冲中的每个脉冲的位置;即每次顺序地在一个轨道中确定一个脉冲位置,确定每个脉冲位置时不采用迭代循环。所述四次迭代循环搜索中的第一次迭代循环中假设包含单脉冲的轨道是第4、5轨道,其余本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于语音编码的固定码本快速搜索算法,该固定码本是由55个分量的码字矢量的一个集合所组成;其特征在于在全速率情况下,进行四次迭代循环搜索,每次迭代循环搜索后得到一个候选最佳码字矢量,再由该四个候选最佳码字矢量分别进一步得到四个合成语音,最后判断该四个合成语音和原始输入语音之间的加权均方误差为最小的候选最佳码字矢量为最佳码字矢量。2.根据权利要求1所述的固定码本快速搜索算法,其特征在于所述每次迭代循环搜索得到一个候选最佳码字矢量的具体步骤是每次迭代循环搜索时,顺序地在每个轨道中分别逐个确定8个脉冲中的每个脉冲的位置;即每次顺序地在一个轨道中确定一个脉冲位置,确定每个脉冲位置时不采用迭代循环。3.根据权利要求1所述的固定码本快速搜索算法,其特征在于所述四次迭代循环搜索中的第一次迭代循环中假设包含单脉冲的轨道是第4、5轨道,其余轨道各自存在两个脉冲;其余三次迭代循环搜索中,分别假设包含单脉冲的轨道是第5、1轨道、第1、2轨道和第2、3轨道。4.根据权利要求1或3所述的固定码本快速搜索算法,其特征在于该方法的具体操作步骤如下(A)先假设包含单脉冲的轨道分别在第4、5轨道,其余轨道各自存在两个脉冲的情况下,进行第一次迭代循环搜索,得到假设单脉冲轨道在4、5轨道时的候选最佳码字矢量,其搜索次数为4×(6+11)=68;(B)假设包含单脉冲的轨道分别在第5、1轨道,其余轨道各自存在两个脉冲的情况下,进行第二次迭代循环搜索,得到假设单脉冲轨道在5、1轨道时的候选最佳码字矢量,其搜索次数为4×(6+11)=68;(C)假设包含单脉冲的轨道分别在第1、2轨道,其余轨道各自存在两个脉冲的情况下,进行第三次迭代循环搜索,得到假设单脉冲轨道在1、2轨道时的候选最佳码字矢量,其搜索次数为4×(6+11)=68;(D)假设包含单脉冲的轨道分别在第2、3轨道,其余轨道各自存在两个脉冲的情况下,进行第四次迭代循环搜索,得到假设单脉冲轨道是在2、3轨道时的候选最佳码字矢量,其搜索次数为4×(6+11)=68;(E)由上述四个候选最佳码...

【专利技术属性】
技术研发人员:王波涛翟文军段世平傅宇玲隋进国
申请(专利权)人:北京首信股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1