CN100498934C - 一种新型的快速固定码本搜索方法 - Google Patents
一种新型的快速固定码本搜索方法 Download PDFInfo
- Publication number
- CN100498934C CN100498934C CNB2005100867436A CN200510086743A CN100498934C CN 100498934 C CN100498934 C CN 100498934C CN B2005100867436 A CNB2005100867436 A CN B2005100867436A CN 200510086743 A CN200510086743 A CN 200510086743A CN 100498934 C CN100498934 C CN 100498934C
- Authority
- CN
- China
- Prior art keywords
- pulse
- code book
- veins
- arteries
- rail
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Abstract
本发明涉及移动通信领域。本发明公开的一种新型的快速固定码本搜索方法,包括:每一个脉轨里的单脉冲计算单脉冲对码本的贡献值,每个脉轨单独排序,每个脉轨进行分类,初始化码本位置;单脉冲贡献值及其位置判定:计算此时若干个脉冲组成的码本及其相应的脉冲对码本的贡献值,然后依次计算去掉脉冲向量后的单脉冲对码本的贡献值,比较得出最大的单脉冲对码本的贡献值及相应的脉冲位置;分级替换。
Description
技术领域
本发明涉及移动通信领域,具体涉及用于ACELP编解码器中的一种新型的快速固定码本搜索方法。
背景技术
近20年来,随着DSP技术日新月异的发展以及人们对通信要求的不断增高,怎样在保证语音质量的前提下降低传输速率正在吸引着世界越来越多的目光。而进行数字语音通信的一个关键技术就是话音压缩,例如ACELP。1995年11月,经过较长时间的研究,ITU(国际电联)批准了一个被称为G.729的新的话音压缩标准。G.729标准采用的算法,可以仅用8Kbps传输话音,话音质量与32Kbps的ADPCM(G.724)相同。G.729的算法被称作CS-ACELP(Conjugate Structured-AlgebraicCode Excited Linear Predictive,对生结构代数码激线性预测),它构成了G.729标准的基础。CS-ACELP在标准PCM或线性PCM(PulsedCode Modulation,脉冲编码调制)的话音采样基础上,每10ms生成一个10字节长的话音帧。这个算法具有高质量的合成语音、优良的抗噪声性能,且延时很小。G.729标准后来在1996年又得到了进一步的优化改进,即经过讨论最终可以从语音质量与G.729相差不多,运算复杂度降低等方面得到肯定的改进方案——G.729A。相对于G.729,G.729A做出的一个重大改进是采用了复杂度更低的深度优先固定码本搜索快速算法。
码本搜索的基本原理是根据某个码本矢量集合的相似性来评估输入矢量。与输入矢量具有最佳匹配的码本矢量被看作输入矢量的近似矢量,并且在通信网络中只传输码本矢量的索引号。传统的观点会自然而然地想到使用全搜索算法,然而由于码本本身的结构,全搜索将会引入过多的乘性复杂度,从而导致复杂度较大。以G.729为例,它的固定码本结构是由四个40维的单脉冲矢量及其符号构成,这些脉冲位置分布在五个脉轨里,每个脉轨都包含8个可选脉冲位置。其中前三个脉冲位置分布在前三个脉轨里,最后一个脉冲位置分布在后两个脉轨里。因此如果按照全搜索,由于码本的内部结构,参见表一,它的复杂度可以表示为8×8×8×16,意即DSP将按照算法搜索8192次,因此我们需要构造一种新型的快速搜索算法来降低算法复杂度同时可以获得与原算法相匹配的编码器性能。
在G.729标准里,一种基于聚焦搜索的算法被提出用于降低搜索复杂度。它的基本原理是在进入到最后的一轮循环之前,先比较由前三个脉冲所作的贡献值和一个预先计算的阈值,仅仅在这个阈值被超过时才进入最后一环。按照标准进入最后一环的个数不能超过90次,因此算法的复杂度降低为90×16=1440次。而随后推出的改进标准G.729A使用了复杂度更低的深度优先搜索算法,这种搜索算法进一步化乘性复杂度为加性复杂度,其复杂度只有320次,仅为聚焦搜索算法复杂度的22%。
以上搜索算法虽然用不同的方法降低了码本搜索的复杂度,但复杂度仍然较高,不能满足人们对通信不断提出的要求。
发明内容
(一)要解决的技术问题
本发明的目的是提供一种码本搜索复杂度低的新型的快速固定码本搜索方法。
(二)技术方案
为了达到上述目的,本发明采取以下步骤:
1)脉冲及码本预处理:首先针对每一个脉轨里的单脉冲计算单脉冲对码本的贡献值,然后对每个脉轨里的该贡献值进行从大到小的排序,把排序后的每个脉轨里的前若干个脉冲位置列为一个集合A,相应地把该脉轨里剩下的若干个脉冲位置列为另一个集合B,取前若干个脉轨里的单脉冲对码本贡献值最大值的位置分别初始化码本脉冲,然后取后面脉轨集合中贡献值最大值的位置来初始化剩下的一个脉冲位置;
2)单脉冲贡献值及其位置判定:计算此时的码本及其相应的搜索判定值,然后依次计算去掉单脉冲向量后的残差码本搜索判定值,比较得出残差码本搜索判定值最大值(即对应单脉冲贡献最小值)及相应的脉冲位置;
A)、如果有,用此位置刷新原来的脉冲位置,并跳至步骤2);
a)如果有,用此位置刷新原来的脉冲位置,并跳至步骤2);
b)如果没有,过程结束,该码本即为本发明所要求的码本。
其中,所述脉冲对码本的贡献值的数学表达式为: 其中,x代表新的目标信号,H是由加权合成滤波器的冲击响应构建的下三角托普列兹卷积矩阵,ck是指针为k的固定码本矢量,是指针为k的固定码本矢量的转置,T是脉轨。
(三)有益效果
1)与已有技术相比,由于采用以上方案,本发明在码本搜索的复杂度上得到大大地降低;2)由于本发明在码本搜索的复杂度上大幅降低,而又保证了搜索音质,因此,使得本发明便于和MODEM以及回声抑制等功能集中在一块DSP芯片上的设计初衷得以实现,这点对于设计一些小型终端装置是具有积极作用的。
附图说明
图1是本发明的流程图;
图2是本发明复杂度柱状比较示意图;
图3是本发明搜索时间示意图.
图中:ξk、脉冲对码本的贡献值;新码本所产生的脉冲对码本的贡献值;S.C、搜索复杂度;P.C、相对于G.729复杂度的百分比;HSPR(Hierarchal Single Pulse Replacement)、本发明搜索方法;searchtime delay、搜索时间;number of frames、语音帧数。
具体实施方式
以下实施例用于说明本发明,但不用来限制本发明的范围。
(一)本发明需要用到的数学模型
根据G.729标准,码本搜索的准则是找到一个使目标信号与合成语音之间的均方误差最小的码本,意即:
这里,代表期望得到的40维的固定码本矢量,Ek代表均方误差,x代表新的目标信号,它是通过减去自适应码本的贡献得到的,g是码本增益,H是由加权合成滤波器的冲击响应构建的下三角托普列兹(Toepliz)卷积矩阵。ck是指针为k的固定码本矢量,它是一个40维的包含四个非零脉冲的矢量,每一个脉冲的幅度只能为+1或-1,其脉冲位置按照表1中的规定。
对上式展开Ek有:
Ek=xTx-ξk (2)
故最小化Ek等同于最大化ξk,意即:
表一 码本c的内部结构
脉冲 | 符号 | 脉轨 | 位置 |
i<sub>0</sub> | s<sub>0</sub>:±1 | T<sub>1</sub> | m<sub>0</sub>:0,5,10,15,20,25,30,35 |
i<sub>1</sub> | s<sub>1</sub>:±1 | T<sub>2</sub> | m<sub>1</sub>:1,6,11,16,21,26,31,36 |
i<sub>2</sub> | s<sub>2</sub>:±1 | T<sub>3</sub> | m<sub>2</sub>:2,7,12,17,22,27,32,37 |
i<sub>3</sub> | s<sub>3</sub>:±1 | T<sub>4</sub>T<sub>5</sub> | m<sub>3</sub>:3,8,13,18,23,28,33,384,9,14,19,24,29,34,39 |
我们分别计算单脉冲对码本的贡献值如下:
我们定义在对一个码本进行单脉冲替换时,去掉某个单脉冲向量 j=0,1,2,3后所产生的值为该单脉冲向量对整体码本的贡献值,意即:
其中
这里 j=0,1,2,3。
(二)本发明具体实施方法
参见图1,由于在重新排序后的码本里,每个脉轨(Track)里的前四个脉冲的(i=0,1,2,3)值之和占据了整个脉轨里值总和的95%,故由上面的分析知,每个脉轨中满足这样条件的四个脉冲里很有可能包含码本ck的一个脉冲成员。我们定义这个组合为高概率成员组合HPMG(High Probability Member Group),而相应地每个脉轨中后面四个脉冲的组合可以定义为低概率成员组合SPMG(SmallProbability Member Group),分类参见表2(在某一特定输入数据下获得)。因此在进行单脉冲替换算法的时候,将优先考虑高概率成员组合对码本的贡献,如果根据算法本身在这个组合里找到了符合要求的脉冲位置时将不再考虑本脉轨内低概率组合对其的贡献;而只有在当没有一个高概率成员组合里的脉冲满足算法要求时才进行低概率成员组合里脉冲向量的测试。
具体方法流程分为三个大部分:脉冲及码本预处理、单脉冲贡献值及其位置判定和分级替换,其步骤描述如下:
1、脉冲及码本预处理:首先针对每一个脉轨里的单脉冲计算它们的然后对每个脉轨里的进行从大到小的排序,把排序后的每个脉轨里的前四个脉冲位置列为HPMG,相应地把该脉轨里剩下的四个脉冲位置列为SPMG。取前三个脉轨里的最大值位置分别初始化脉冲位置i0、i1、i2,然后取脉轨T4、T5组成的脉轨集合中的最大值位置来初始化脉冲位置i3;
2、单脉冲贡献值及其位置判定:计算此时四个脉冲组成的码本ck及其相应的ξk,然后依次计算去掉(j=0,1,2,3)脉冲向量后的(j=0,1,2,3),比较得出最大的(意即对贡献最小的脉冲)及相应的脉冲位置;
3、分级替换:依次用在该脉冲所属的脉轨的HPMG里剩下的脉冲位置来替换该脉冲位置,并计算此时新码本所产生的通过比较确定是否有大于替换前的ξk的值存在:
1)如果有,用此位置刷新原来的脉冲位置,并跳至步骤2;
2)如果没有,依次用在该脉冲所属脉轨的SPMG里剩下的脉冲位置来替换该脉冲位置,并计算此时新码本所产生的通过比较确定是否有大于替换前的ξk的值存在:
a)如果有,用此位置刷新原来的脉冲位置,并跳至步骤2;
b)如果没有,过程结束,该码本即算法所要求的码本。
表2 脉冲分类示意表
(三)下面结合附图对本发明的效果进行对比分析。
1、复杂度对比分析
参见图2,根据前面的分析,我们知道G.729的固定码本搜索复杂度为1440,而G.729A的复杂度为320,三步搜索算法TSS的复杂度为(其中 ),脉冲替换算法PR的复杂度为40+N×(4+16)(其中N是替换次数)。相比起来,本发明在计算复杂度时,该过程与PR算法的计算过程类似。在初始计算的时候,根据码本c的内部结构,需要计算40次。在第二步中,由于一个有效的码本是由4个位置组成,故在计算残差码本向量时将会计算4次。在随后进行的脉冲替换时,当找到了要替换的脉冲后,由于i3的可能位置有16个,故按照算法备选的脉冲位置有4个或8个或16个。按最坏的情况考虑,可能的备选脉冲将取值8或16。根据实验结果,期望脉冲出现在HPMG中的概率与它出现在SPMG中的概率之比是95%:5%。故按照最坏情况,每次参与脉冲替换的备选脉冲个数为(95%×8+5%×16)。故最后的总的搜索复杂度为40+N×[4+(95%×8+5%×16)],这里N是搜索次数。理论上讲,按照最坏的情况处理,本发明的复杂度将与PR的一样高。
图二显示了各个算法的复杂度及其百分比(相对于G.729标准的复杂度而言),这里TSS代表三步搜索算法,PR代表脉冲替换算法。其中对于PR和本发明HSPR的替换次数N值假设是4。
显然,本发明HSPR的方法复杂度只有89.6,是最低的。因此本发明的方法在搜索复杂度上优于其它算法。
2、仿真对比分析结果
参见图3,我们分别测试了在输入为2500、5000、7500、10000、12500、15000、17500和20000个语音帧的时候的码本搜索延迟。从该图上我们看出码本搜索时间根据输入语音帧的个数增多而线性增加。平均下来本发明HSPR搜索单个语音帧(由于子帧的特性搜索两次)的时间为大约0.29ms,而相比起来G.729搜索一个语音帧的时间为2.24ms。
表三显示的是在同样的八种输入下我们得到的HSPR搜索的准确度,这里是用本发明HSPR搜索到的结果与使用全搜索而搜索到的码本进行的比较。但是,在一些特定的应用环境,比如在一个延迟可以容忍的环境下,我们的算法可以作为G.729和G.729A的替代物。而本发明HSPR最大的好处就是算法复杂度低,这使得把一些功能比如语音编码、调制解调器和回声抑制集成在一块DSP芯片上实现成为可行。
表三 HSPR精确度示意表
帧数 | 2500 | 5000 | 7500 | 10000 |
精确度 | 84.92% | 87.96 | 89.92% | 86.87% |
帧数 | 12500 | 15000 | 17500 | 20000 |
精确度 | 86.60% | 83.58% | 85.56% | 86.26% |
下面对技术效果作具体说明。
在通信系统系统者设计编码器的时候,搜索算法的复杂度是一项重要参数,从他们的角度来看,高复杂度意味着高成本和高功耗。如果语声编码器在整个系统的功率和费用中分担的份额较小(10%左右),在给定比特率的情况下,选择音质最好的编码器(例如,基于G.729标准)比较有意义,这时功率消耗或成本方面的变化,不会使编码器在整个系统中所占的百分比大幅度增加。但是如果这个份额较大,尤其在涉及到一些小功率通信终端时,搜索复杂度是必须考虑的一项关键因素,这时原语音编码标准显得就不太适合。在这种情形下,复杂度上较低而在语音音质上相对可以替代原标准的搜索算法成为了首选。
在实际应用中,用户可根据作出选择,所述五种搜索算法——G.729、G.729A、TSS(Three-Step Search)、PR(Pulse Replacement),以及本发明提出的HSPR,都可以成为国际互联网或其他网络的主要语声载体。它们可以在个人电脑的主处理器上执行或作为调制解调器芯片的一部分加以实现。用户在使用时,根据自己的需要进行合成语声质量和传输带宽的互相折中,从而十分方便地选取最优的方案。这几种搜索算法中,本发明的复杂度最低,而在搜索音质上几乎可以媲美ITU-T语音编解码标准G.729。复杂度的大幅度降低,使得HSPR便于和MODEM以及回声抑制等功能集中在一块DSP芯片上的设计初衷得以实现,这点对于设计一些小型终端装置是非常有积极意义的。
Claims (2)
1、一种新型的快速固定码本搜索方法,其特征在于,包括以下步骤:
1)脉冲及码本预处理:首先针对每一个脉轨里的单脉冲计算单脉冲对码本的贡献值,然后对每个脉轨里的该贡献值进行从大到小的排序,把排序后的每个脉轨里的前若干个脉冲位置列为一个集合A,相应地把该脉轨里剩下的若干个脉冲位置列为另一个集合B,取前若干个脉轨里的单脉冲对码本贡献值最大值的位置分别初始化码本脉冲,然后取后面脉轨集合中贡献值最大值的位置来初始化剩下的一个脉冲位置;
2)单脉冲贡献值及其位置判定:计算此时的码本及其相应的搜索判定值,然后依次计算去掉单脉冲向量后的残差码本搜索判定值,比较得出残差码本搜索判定值最大值及相应的脉冲位置;
A)、如果有,用此位置刷新原来的脉冲位置,并跳至步骤2);
B)、如果没有,依次用在该脉冲所属脉轨集合B里剩下的脉冲位置来替换该脉冲位置,并计算此时新码本所产生的搜索判定值通过比较确定是否有大于替换前的搜索判定值(ξk)存在:
a)如果有,用此位置刷新原来的脉冲位置,并跳至步骤2);
b)如果没有,过程结束,该码本即为本发明所要求的码本。
2、如权利要求1所述的一种新型的快速固定码本搜索方法,其特征在于:所述脉冲对码本的贡献值(ξk)的数学表达式为: 其中,x代表新的目标信号,H是由加权合成滤波器的冲击响应构建的下三角托普列兹卷积矩阵,ck是指针为k的固定码本矢量,是指针为k的固定码本矢量的转置,T是脉轨。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100867436A CN100498934C (zh) | 2005-10-31 | 2005-10-31 | 一种新型的快速固定码本搜索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100867436A CN100498934C (zh) | 2005-10-31 | 2005-10-31 | 一种新型的快速固定码本搜索方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1766988A CN1766988A (zh) | 2006-05-03 |
CN100498934C true CN100498934C (zh) | 2009-06-10 |
Family
ID=36742834
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100867436A Expired - Fee Related CN100498934C (zh) | 2005-10-31 | 2005-10-31 | 一种新型的快速固定码本搜索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100498934C (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008044817A1 (en) * | 2006-10-13 | 2008-04-17 | Electronics And Telecommunications Research Institute | Fixed codebook search method through iteration-free global pulse replacement and speech coder using the same method |
KR100795727B1 (ko) | 2005-12-08 | 2008-01-21 | 한국전자통신연구원 | Celp기반의 음성 코더에서 고정 코드북 검색 장치 및방법 |
CN100530357C (zh) * | 2007-07-11 | 2009-08-19 | 华为技术有限公司 | 固定码书搜索方法及搜索器 |
CN101765880B (zh) * | 2007-07-27 | 2012-09-26 | 松下电器产业株式会社 | 语音编码装置和语音编码方法 |
CN100578619C (zh) * | 2007-11-05 | 2010-01-06 | 华为技术有限公司 | 编码方法和编码器 |
CN100578620C (zh) * | 2007-11-12 | 2010-01-06 | 华为技术有限公司 | 固定码书搜索方法及搜索器 |
-
2005
- 2005-10-31 CN CNB2005100867436A patent/CN100498934C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1766988A (zh) | 2006-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kankanahalli | End-to-end optimized speech coding with deep neural networks | |
CN100498934C (zh) | 一种新型的快速固定码本搜索方法 | |
KR101353847B1 (ko) | 반향 검출 방법 및 장치 | |
Liao et al. | Noise adaptive speech enhancement using domain adversarial training | |
JP3160852B2 (ja) | 会話の急速符号化のためのデプス第一代数コードブック | |
CN100578617C (zh) | 代码转换方法及代码转换装置 | |
CN101114450B (zh) | 一种语音编码选择性加密方法 | |
WO2016192410A1 (zh) | 一种音频信号增强方法和装置 | |
CN101006495A (zh) | 语音编码装置、语音解码装置、通信装置以及语音编码方法 | |
CN101894558A (zh) | 丢帧恢复方法、设备以及语音增强方法、设备和系统 | |
CN101460998A (zh) | 音频信号的线性预测编码 | |
JP6812504B2 (ja) | 音声符号化方法および関連装置 | |
Yang et al. | Source-aware neural speech coding for noisy speech compression | |
CN101572093B (zh) | 一种转码方法和装置 | |
CN112751820B (zh) | 使用深度学习实现数字语音丢包隐藏 | |
Li et al. | End-to-End Multi-Loss Training for Low Delay Packet Loss Concealment. | |
Rudovic et al. | Streaming on-device detection of device directed speech from voice and touch-based invocation | |
US7580834B2 (en) | Fixed sound source vector generation method and fixed sound source codebook | |
Tsai et al. | Efficient algebraic code-excited linear predictive codebook search | |
Zhen et al. | On psychoacoustically weighted cost functions towards resource-efficient deep neural networks for speech denoising | |
Huong et al. | A new vocoder based on AMR 7.4 kbit/s mode in speaker dependent coding system | |
JP2002073097A (ja) | Celp型音声符号化装置とcelp型音声復号化装置及び音声符号化方法と音声復号化方法 | |
Chen et al. | Complexity scalability for ACELP and MP-MLQ speech coders | |
JPH11259098A (ja) | 音声符号化/復号化方法 | |
JP3144194B2 (ja) | 音声符号化装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090610 Termination date: 20181031 |