CN101303859A - 固定码书搜索方法及搜索器 - Google Patents
固定码书搜索方法及搜索器 Download PDFInfo
- Publication number
- CN101303859A CN101303859A CNA200710124503XA CN200710124503A CN101303859A CN 101303859 A CN101303859 A CN 101303859A CN A200710124503X A CNA200710124503X A CN A200710124503XA CN 200710124503 A CN200710124503 A CN 200710124503A CN 101303859 A CN101303859 A CN 101303859A
- Authority
- CN
- China
- Prior art keywords
- search
- pulse
- code book
- counter
- value
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 230000004087 circulation Effects 0.000 claims description 44
- 238000004364 calculation method Methods 0.000 claims description 5
- 239000013598 vector Substances 0.000 description 8
- 230000008901 benefit Effects 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011002 quantification Methods 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 238000005086 pumping Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/10—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/10—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
- G10L19/107—Sparse pulse excitation, e.g. by using algebraic codebook
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- Human Computer Interaction (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Signal Processing (AREA)
- Mathematical Analysis (AREA)
- Theoretical Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- General Physics & Mathematics (AREA)
- Algebra (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明实施例提供了一种固定码书搜索方法及搜索器。一种固定码书搜索方法,其包括:初始化一个计数器;进行脉冲搜索,计算代价函数Qk的值;当Qk增加时,初始化所述计数器;当Qk未增加时,增加所述计数器的值;判断所述计数器的值是否大于门限值,否,继续进行搜索流程;是,结束整个搜索流程。所述固定码书搜索方法的搜索效率较高。
Description
技术领域
本发明涉及矢量编码技术,特别是一种固定码书搜索方法及搜索器。
背景技术
众所周知,在语音编码领域基于CELP(Code Excited Linear Prediction)模型的语音编码器应用最为广泛,与其他类型的语音编码器(如:波形编码器和参数编码器等)相比,它能够在极低码率情况下获得较好的语音质量,而在高码率情况下,表现依然优秀。它以码本作为激励源,具有,速率低、合成语音质量高、抗噪声性强及多次音频转接性能良好等优点。作为激励信号的自适应码书和固定码书在CELP编码器中起着非常重要的作用。其中,自适应滤波器的作用是去掉语音残差信号中的长时相关性,语音残差信号在去掉长时相关性之后,已经变得类白噪化,对其进行精确量化就显得非常困难。目前,对固定码书的目标信号进行有效量化一般有如下方法:1、随机码书法;2、规则脉冲法;3、自相关算法;4、变换域算法;5、代数码书等方法。这些方法都各有特点,都充分利用的固定码书的一些特征进行量化,在语音合成质量、占用比特数、运算复杂度等方面各有缺点。其中,目前用的比较广泛的还是代数码书,它具有很多其他方法所没有的优点。它关注的是固定码书目标信号的脉冲位置,而对脉冲的幅度则默认为1,这样做的好处是,将大量的乘法运算转换为加减法运算,大幅度降低了运算复杂度。同时,只需要量化脉冲的符号和位置,减少了量化所需的比特,同时,保证了良好的语音质量。但是,在寻找脉冲最佳位置时,全搜索的运算复杂度很大,一般在脉冲个数较多时无法达到实时实现。因此,就出现了需要次优的搜索算法。一个次优搜索算法的好坏直接关系到最终合成语音的质量,因此,搜索算法在码书计算的过程中,具有非常重要的作用。
现有技术中的固定码书搜索方法,其步骤主要包括:
(1)通过一种方法确定脉冲搜索的初始码书;(2)固定码书搜索器确定脉冲组(假设组内有n个脉冲),脉冲组至少包含1个初始码书脉冲;(3)从若干轨道中随机选取m个轨道,用这m个轨道中用其他位置替换上述选定的脉冲组中的脉冲,并计算代价函数Qk的值;(4)随机选取若干次,并取这若干次中使Qk增加最大的脉冲组位置替换初始码书中的相应脉冲的位置;(5)替换一组脉冲组的脉冲后,固定此脉冲组的脉冲位置并对其他轨道上的脉冲再重复上述(3)和(4)步骤替换初始码书中的剩余脉冲;(6)此过程可以重复进行。
下面就以一个轨道1个脉冲的情形对固定码书搜索方法进行介绍,脉冲轨道划分如表一所示。
Track(Tx) | Pluse | Positions |
1(T0) | P0 | 0,4,8,12,16,20,24,28,3236,40,44,48,52,56,60 |
2(T1) | P1 | 1,5,9,13,17,21,25,29,33,37,41,45,49,53,57,61 |
3(T2) | P2 | 2,6,10,14,18,22,26,30,34,38,42,46,50,54,58,62 |
4(T3) | P3 | 3,7,11,15,19,23,27,31,35,39,43,47,51,55,59,63 |
表一脉冲轨道划分表
请参阅图1,为现有技术中一种固定码书搜索方法的流程图,其步骤包括:
一、确定初始码书
初始码书选取的好坏对最终搜索结果的性能有一定的影响。初始码书的确定方法也有很多种。可以直接利用每个轨道上的脉冲位置似然估计信号绝对值最大值所在位置的组合作为初始码矢。也可以采用一种运算复杂度较低的搜索方法来确定初始码书。
这里介绍一种集中搜索(focused search method)的方法。
1、利用脉冲位置似然估计信号b(n),对每个位置上的脉冲符号进行判断,假定最终最佳脉冲的符号与b(n)在对应位置上的符号相同。即:
sign[dn(n)]=sign[b(n)]
Sign[dn(n)]表示位置n处dn(n)的符号,Sign[b(n)]表示位置n处b(n)的符号.且将每个轨道上的脉冲位置重新按照以b(n)的绝对值大小从大到小的顺序进行排序。假设经过排序后的bn(n)为pos_max[n].
2、从每个轨道重新排序后的脉冲位置pos_max[n]中取出前4个位置,然后在每个轨道的4个位置上进行全搜索。需要搜索4×4×4×4=256次。确定初始码书。
二、搜索脉冲
1、从4个轨道中随机选取2个轨道,不妨假设初始码书为(32,33,2,35),假设随机选取的2个轨道为track0,track1,则将track0和track1上的2个脉冲组成一个联合脉冲组,固定初始码书另外2个轨道上的脉冲,假设pos_max[n]为:
Pos_max[64]=
{0,36,32,4,40,28,16,8,20,52,44,48,12,56,24,60,
1,33,37,5,29,41,17,9,49,21,53,25,13,45,57,61,
34,2,38,30,6,18,42,50,26,14,10,22,54,46,58,62,
35,3,31,39,7,19,27,51,15,43,55,47,23,11,59,63}
2、假设将要被交换的联合脉冲组为(i0,i1),通过替换联合脉冲组的2个脉冲,初始码书变为:(0,1,2,35),(0,33,2,35),(0,37,2,35),...(36,1,2,35).......从中选择使初始脉冲代价函数Qk增加最大的码矢,不妨设为(32,17,2,35)。
3、重复1和2步骤若干次,选择这若干次中使初始脉冲代价函数Qk最大的码矢。
不妨设第二次循环选择的联合脉冲组在track1和track2。则,保证初始码书在track0和track3上的脉冲位置不变,而与track1和track2上的脉冲位置交换初始码书中的位置,则初始码书由(32,33,2,35)变为(32,33,34,35),(32,33,34,3),(32,33,34,31),...,(32,33,2,35)......。从中选择使初始脉冲代价函数Qk增加最大的码矢,不妨设为(32,33,6,35)。重复若干次,则输出若干组结果,在这若干组结果中选择一个使初始脉冲代价函数Qk增加最大的码矢,不妨设为(32,33,6,35)。
4、保证(32,33,6,35)中刚搜索到的(6,35)2个脉冲位置固定,对剩余的2个脉冲组成联合脉冲组进行替换。即码书(32,33,6,35)变为(0,1,6,35),(0,33,6,35),......,(36,1,6,35),...,从中选择使码书脉冲代价函数Qk增加最大的码矢,不妨设为(32,33,6,35)。则,最终的最佳码书即为(32,33,6,35)。这里也可以通过设定循环搜索次数,继续搜索最佳脉冲。
总共的搜索次数为:确定初始的4×4×4×4=256次,还有循环搜索次数:6×(4×12)+4×4=304次,总共256+304=560次。
这种搜索方法运算复杂度很低,也考虑到了各个脉冲之间的相互关联性,性能也不错,但是,其搜索的循环次数是固定的,只有当把所有的循环都完成搜索以后,才能够得出最终的最佳脉冲位置,使得搜索方法运算效率较低。
现有技术中另一种搜索固定码书的方法。它具有如下特点:1、能够在很少搜索次数下提供和标准方法相同的性能;2、适用于任何ACELP固定码书结构的编码器,对脉冲的位置和轨道结构没有特殊要求。其搜索方法的主要步骤有:a、计算脉冲位置似然估计函数的绝对值(用以提取有可能存在脉冲的位置信息);b、临时获得一个码本矢量(初始码书);c、替换初始码书中的一个脉冲,并计算代价函数Qk;d、判断经过替换后的码书的代价函数Qk是否增大;e、如果增大,则用新的脉冲替换以前的脉冲,得到新的码书;f、如果变小,则仍然使用前一个码书。具体搜索方法,如下:
为了便于理解,假设每个轨道上只有一个脉冲,分别为P0、P1、P2和P3。假设初始码书为:{i0,i1,i2,i3}={20,33,42,7},括号中的数字表示脉冲位置。具体码书结构如表二所示:
Track(Tx) | Pluse | Positions |
1(T0) | P0 | 0,4,8,12,16,20,24,28,3236,40,44,48,52,56,60 |
2(T1) | P1 | 1,5,9,13,17,21,25,29,33,37,41,45,49,53,57,61 |
3(T2) | P2 | 2,6,10,14,18,22,26,30,34,38,42,46,50,54,58,62 |
4(T3) | P3 | 3,7,11,15,19,23,27,31,35,39,43,47,51,55,59,63 |
表二码书结构
步骤一:保持初始码书中的i1,i2,i3位置保持不变,用轨道T0中的其他位置{0,4,8,12,16,24,28,3236,40,44,48,52,56,60}依次替换i0的初始值20,得到新码书({0,33,42,7}、{4,33,42,7}、...{60,33,42,7}),并计算新的码书的代价函数Qk。如果新的Qk比初始码书的Qk大,则用新的码书脉冲位置替换初始码书,并将新的码书作为初始码书,重复上述过程,直到轨道上的所有位置都完成了替换工作为止,最终会得到一个最大的Qk值和其对应的新码书。不妨设为{4,33,42,7}对应的Qk是上面替换过程中最大的Qk。保存此Qk值Y0和对应的新码书{4,33,42,7}。
步骤二:保持初始码书中的i0,i2,i3位置不变(注意,此处的初始码书还是原来的初始码书即为{20,33,42,7}),用T1轨道上的其他15个位置{1,5,9,13,17,21,25,29,37,41,45,49,53,57,61}一次替换i1的初始值33,得到新码书({20,1,42,7}、{20,5,42,7}、...{20,61,42,7}),并计算新码书的代价函数Qk。如果新的Qk比初始值大,则用新的码书脉冲位置替换初始码书,并将新的码书作为初始码书,重复上述过程,直到轨道上的所有位置都完成了替换工作为止,最终会得到一个最大的Qk值和其对应的新码书。不妨设为{20,21,42,7}对应的Qk是上面替换过程中最大的Qk。保存此Qk值Y1和对应的新码书{20,21,42,7}。
步骤三:重复类似步骤一和二的过程,对T2和T3轨道上的脉冲做类似的处理,不妨设最终的结果为,对于T2轨道,最终的最大Qk值为Y2,码书为{20,33,18,7};对于T3轨道,最终的最大Qk值为Y3,码书为{20,33,42,11};
步骤四:把从上述3个步骤中得到的4个Qk(Y0、Y1、Y2和Y3)中最大的一个Qk作为此次搜索的全局最优值,并将对应的码书作为此次搜索的最佳码书,不妨设Y2为四个中最大的,则最佳码书为:{20,21,42,7}。此时,初始码书已经从{20,33,42,7}变为{20,21,42,7}。
步骤五:将{20,21,42,7}作为新一轮搜索的初始码书,继续重复上述4个步骤,直到达到搜索次数的门限值或者循环次数的门限值位置。一般循环次数设为4次。
这种搜索方法搜索的循环次数也是固定的,只有当把所有的循环都完成搜索以后,才能够得出最终的最佳脉冲位置,使得搜索方法运算效率较低。
发明内容
本发明的目的在于提供一种运算效率较高的固定码书搜索方法和固定码书搜索器。
一种固定码书搜索方法,其包括:初始化一个计数器;进行脉冲搜索,计算代价函数Qk的值;当Qk增加时,初始化所述计数器;当Qk未增加时,增加所述计数器的值;判断所述计数器的值是否大于门限值,否,继续进行搜索流程;是,结束整个搜索流程。
一种固定码书搜索方法,其包括:初始化状态标识;进行脉冲搜索,计算Qk;当Qk增加时,修改所述状态标识为非初始状态;判断所述状态标识是否为初始状态;否,继续进行搜索流程;是,结束整个搜索流程。
一种固定码书搜索器,其包括:脉冲搜索单元,用于脉冲搜索;计数器,用于在Qk增加时初始化,在Qk未增加时,增加所述计数器的值;判断单元,用于在所述计数器的值大于门限值时,结束整个搜索流程。
一种固定码书搜索器,其包括:脉冲搜索单元,用于脉冲搜索;标识单元,用于标识初始状态及在Qk增加时标识为非初始状态;判断单元,用于判断所述标识单元是否为初始状态时,是,结束整个搜索流程。
上述方法或装置,通过计数器或标识单元来记录Qk未增加的搜索次数或Qk已增加,使得当符合预订条件时,跳出搜索循环,进而减少了搜索次数,提高了搜索效率。
附图说明
图1是现有技术中一种固定码书搜索方法的流程图;
图2是本发明实施例一固定码书搜索方法流程示意图;
图3是本发明实施例二固定码书搜索方法流程示意图;
图4是本发明实施例三固定码书搜索方法流程示意图;
图5是本发明实施例四固定码书搜索方法流程示意图;
图6是本发明实施例五固定码书搜索方法流程示意图;
图7是本发明实施例六固定码书搜索器结构示意图;
图8是本发明实施例七固定码书搜索器结构示意图。
具体实施方式
实施例一、一种固定码书搜索方法,如图2所示,包括:
A1、确定初始码书;设定外循环次数n;
为了便于理解,假设每个轨道上只有一个脉冲,分别为P0、P1、P2和P3。假设初始码书为:{i0,i1,i2,i3}={20,33,42,7},括号中的数字表示脉冲位置。具体码书结构如表三所示:
Track(Tx) | Pluse | Positions |
1(T0) | P0 | 0,4,8,12,16,20,24,28,3236,40,44,48,52,56,60 |
2(T1) | P1 | 1,5,9,13,17,21,25,29,33,37,41,45,49,53,57,61 |
3(T2) | P2 | 2,6,10,14,18,22,26,30,34,38,42,46,50,54,58,62 |
4(T3) | P3 | 3,7,11,15,19,23,27,31,35,39,43,47,51,55,59,63 |
表三码书结构
对于初始码书的确定方式,本实施例不作限定。例如可以通过“脉冲位置最大似然函数”方式获得。
A2、初始化计数器cnt;初始化具体可以为置零或-1,也可以为某一固定值;设置计数器的目的是为了计数连续未发生脉冲替换的搜索次数,所述脉冲替换具体为在Qk增加时,将原脉冲组合替换为使Qk增加的脉冲组合;
A3、脉冲搜索,计算Qk;具体为确定一个脉冲组合,替换相应轨道上的脉冲,计算Qk;对于脉冲搜索的方法,本实施例不作限定。例如可以通过如下方式:
以全局脉冲替换的方法为例:保持初始码书中的i1,i2,i3位置保持不变,用轨道T0中的其他位置{0,4,8,12,16,24,28,3236,40,44,48,52,56,60}依次替换i0的初始值20,得到新码书({0,33,42,7}、{4,33,42,7}、...{60,33,42,7}),并计算新的码书的代价函数Qk;上述这种在选定轨道上进行不同脉冲位置的脉冲搜索,即为内循环搜索;
A4、Qk判断;判断Qk的值是否增加;是,执行步骤A5;否,执行步骤A6;
A5、替换使Qk增加的脉冲,得到新的码书;计数器初始化;
如果新的Qk比初始码书的Qk大,则用新的码书脉冲位置替换初始码书,并将新的码书作为初始码书。不妨设为{4,33,42,7}对应的Qk是上面替换过程中最大的Qk。保存此Qk值Y0和对应的新码书{4,33,42,7};
A6、计数器cnt增加;具体可以为cnt加1;
A7、判断内循环是否结束;否,返回步骤A3;是,执行步骤A8;
A8、判断计数器cnt是否大于门限值;是,执行步骤A9;否,继续进行搜索流程;如判断外循环是否结束,返回步骤A2;进行下一个轨道的搜索,即,重复步骤A2、A3、A4、A5等步骤,直至T0-T3四个轨道全搜索完毕结束整个流程;上述这种选择不同轨道进行的搜索,即外循环搜索;上述门限值可以根据需要设置,如果一次内循环次数是a,门限值可以是的a倍数、a-1、a+1等值;
A9、结束整个搜索流程。
如果cnt超过门限值thr,则说明在超过门限值thr次数内并没有发生脉冲替换,也就是说没有找到更好的脉冲组合,则可以认为已经搜索到最佳脉冲,整个搜索过程结束。
实施例二、另一种固定码书搜索方法,如图3所示,该实施例与实施例一不同之处在于:该实施例的一次外循环中嵌套两个内循环,如内循环1和内循环2。当然也可以嵌套多个内循环。该实施例具体步骤如下:
B1、确定初始码书;设定外循环次数n;
B2、初始化计数器cnt;
B3、内循环1脉冲搜索,计算Qk;确定一个脉冲组合,替换相应轨道上的脉冲,计算Qk;
B4、Qk判断;判断Qk的值是否增加;是,执行步骤B5,否执行步骤B6;
B5、替换使Qk增加的脉冲,得到新的码书;计数器cnt初始化;
B6、计数器cnt增加;具体可以为cnt加1;
B7、判断内循环1是否结束;否,返回步骤B3;是,执行步骤B8;
B8、内循环2脉冲搜索,计算Qk;确定一个脉冲组合,替换相应轨道上的脉冲,计算Qk;
B9、Qk判断;判断Qk的值是否增加;是,执行步骤B10,否,执行步骤B11。
B10、替换使Qk增加的脉冲,得到新的码书;计数器初始化;
B11、计数器cnt增加;具体可以为cnt加1;
B12、判断内循环2是否结束;否,返回步骤B8;是,执行步骤B13;
B13、判断计数器cnt是否大于门限值;是,执行步骤B14;否,继续进行搜索流程;如判断外循环是否结束,返回步骤B2;
B14、结束整个搜索流程。
实施例三、又一种固定码书搜索方法,如图4所示,该实施例与实施例一不同之处在于:该实施例在的判断计数器cnt是否大于门限值后进行内循环是否结束的判断。
该实施例具体步骤如下:
C1、确定初始码书;设定外循环次数n;
C2、初始化计数器cnt;
C3、脉冲搜索,计算Qk;确定一个脉冲组合,替换相应轨道上的脉冲,计算Qk;
C4、Qk判断;判断Qk的值是否增加;是,执行步骤C5,否,执行步骤C6;
C5、替换使Qk增加的脉冲,得到新的码书;计数器初始化;
C6、计数器cnt增加;具体可以为cnt加1;
C7、判断计数器cnt是否大于门限值;是,执行步骤C9;否,执行步骤C8;
C8、判断内循环是否结束;否,返回步骤C3;是,执行步骤C9;
C9、判断外循环是否结束;否,返回步骤C2;是,执行步骤C10;
C10、结束整个搜索流程。
实施例四、还一种固定码书搜索方法,如图5所示,该实施例与实施例三不同之处在于:该实施例的一次外循环中嵌套两个内循环,即内循环1和内循环2;在每个内循环结束前判断计数器cnt是否大于门限值。当然也可以嵌套多个内循环。另外,作为可选方案,还可以在内循环结束后判断计数器cnt是否大于门限值。
该实施例具体步骤如下:
D1、确定初始码书;设定外循环次数n;
D2、初始化计数器cnt;
D3、内循环1脉冲搜索,计算Qk;确定一个脉冲组合,替换相应轨道上的脉冲,计算Qk;
D4、Qk判断;判断Qk的值是否增加;是,执行步骤D5,否执行步骤D6;
D5、替换使Qk增加的脉冲,得到新的码书;计数器cnt初始化;
D6、计数器cnt增加;具体可以为cnt加1;
D7、判断计数器cnt是否大于门限值;是,执行步骤D17;否,执行步骤D8;
D8、判断内循环1是否结束;否,返回步骤D3;是,执行步骤D9;
D9、内循环2脉冲搜索,计算Qk;确定一个脉冲组合,替换相应轨道上的脉冲,计算Qk;
D10、Qk判断;判断Qk的值是否增加;是,执行步骤D11,否执行步骤D12;
D11、替换使Qk增加的脉冲,得到新的码书;计数器cnt置零;
D12、计数器cnt增加;具体可以为cnt加1;
D13、判断计数器cnt是否大于门限值;是,执行步骤D13;否,执行步骤D14;
D14、判断内循环2是否结束;否,返回步骤D9;是,执行步骤D15;
D15、判断计数器cnt是否大于门限值;是,执行步骤D17;否,执行步骤D16;
D16、判断外循环是否结束;否,返回步骤D2;是,执行步骤D17;
D17、结束整个搜索流程。
实施例五、还一种固定码书搜索方法,如图6所示,该实施例通过设置一个标识flag,用以标识在一次循环中是否有更好的脉冲组合出现,如果有,则将标识flag设置为0,如果没有则此flag的值仍然为-1。在一次循环结束之前,判断flag是否为0,如果为0,则说明在一次循环替换过程中有更优的脉冲组合出现,则将flag重新置为-1,开始新一轮的循环替换,重复上述过程。
该实施例的具体步骤为:
E1、确定初始码书;设定外循环次数n;
E2、初始化状态标识;设置一个初始状态值,可以为-1、0、1等值;
E3、内循环脉冲搜索,计算Qk;确定一个脉冲组合,替换相应轨道上的脉冲,计算Qk;
E4、Qk判断;判断Qk的值是否增加;是,执行步骤E5;
E5、替换使Qk增加的脉冲,得到新的码书;修改所述状态标识为非初始状态,确保与初始状态值不同;
E6、判断内循环是否结束;否,返回步骤E3;是,执行步骤E7;
E7、判断状态标识是否为初始状态;否,执行E8;是,执行步骤E9;
E8、判断外循环是否结束;是,返回步骤E3;
E9、结束整个搜索流程。
实施例六、一种固定码书搜索器,如图7所示,该固定码书搜索器包括:脉冲搜索单元、计数器及判断单元,其中,所述脉冲搜索单元用于脉冲搜索;所述计数器用于在Qk增加时初始化,在Qk未增加时,增加所述计数器的值;所述判断单元用于在所述计数器的值大于门限值时,结束整个搜索流程。
实施例七、另一种固定码书搜索器,如图8所示,该固定码书搜索器包括:脉冲搜索单元、标识单元及判断单元,其中,所述脉冲搜索单元用于脉冲搜索;所述标识单元,用于标识初始状态及在Qk增加时标识为非初始状态;所述判断单元用于在所述标识单元为初始状态时,结束整个搜索流程。
上述方法或装置,通过计数器或标识单元来记录Qk未增加的搜索次数或Qk已增加,使得当符合预订条件时,跳出搜索循环,进而减少了搜索次数,提高了搜索效率。
以上对本发明所提供的固定码书搜索方法及固定码书搜索器进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (14)
1、一种固定码书搜索方法,其特征在于,包括:
初始化一个计数器;
进行脉冲搜索,计算代价函数Qk的值;
当Qk增加时,初始化所述计数器;当Qk未增加时,增加所述计数器的值;
判断所述计数器的值是否大于门限值,否,继续进行搜索流程;是,结束整个搜索流程。
2、根据权利要求1所述的方法,其特征在于:所述初始化为置零或-1。
3、根据权利要求1所述的方法,其特征在于:增加所述计数器的值具体为所述计数器加1。
4、根据权利要求1所述的方法,其特征在于:所述脉冲搜索为外循环的脉冲搜索。
5、根据权利要求4所述的方法,其特征在于:在每次外循环搜索开始时执行所述初始化一个计数器的步骤。
6、根据权利要求4所述的方法,其特征在于:其特征在于:执行所述初始化一个计数器的步骤后进行外循环的脉冲搜索。
7、根据权利要求1所述的方法,其特征在于:所述脉冲搜索包括至少一个内循环。
8、根据权利要求7所述的方法,其特征在于:在所述内循环每次脉冲搜索完毕后判断所述计数器的值是否大于门限值。
9、根据权利要求7所述的方法,其特征在于:在所述内循环结束后判断所述计数器的值是否大于门限值。
10、一种固定码书搜索方法,其特征在于,包括:
初始化状态标识;
进行脉冲搜索,计算Qk;
当Qk增加时,修改所述状态标识为非初始状态;
判断所述状态标识是否为初始状态;否,继续进行搜索流程;是,结束整个搜索流程。
11、根据权利要求10所述的方法,其特征在于:所述脉冲搜索包括至少一个内循环。
12、根据权利要求11所述的方法,其特征在于:在所述内循环结束后判断所述状态标识是否为初始状态;是,结束整个搜索流程。
13、一种固定码书搜索器,其特征在于,包括:
脉冲搜索单元,用于脉冲搜索;
计数器,用于在Qk增加时初始化,在Qk未增加时,增加所述计数器的值;
判断单元,用于在所述计数器的值大于门限值时,结束整个搜索流程。
14、一种固定码书搜索器,其特征在于,包括:
脉冲搜索单元,用于脉冲搜索;
标识单元,用于标识初始状态及在Qk增加时标识为非初始状态;
判断单元,用于判断所述标识单元是否为初始状态时,是,结束整个搜索流程。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710124503A CN100578620C (zh) | 2007-11-12 | 2007-11-12 | 固定码书搜索方法及搜索器 |
PCT/CN2008/072920 WO2009071018A1 (fr) | 2007-11-12 | 2008-11-04 | Dispositif et procédé de recherche dans un répertoire codé de séquences fixes |
EP08857528.7A EP2214166B1 (en) | 2007-11-12 | 2008-11-04 | Fixed code book searching method and searcher |
US12/777,875 US7941314B2 (en) | 2007-11-12 | 2010-05-11 | Fixed codebook search method and searcher |
US12/838,229 US7908136B2 (en) | 2007-11-12 | 2010-07-16 | Fixed codebook search method and searcher |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710124503A CN100578620C (zh) | 2007-11-12 | 2007-11-12 | 固定码书搜索方法及搜索器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101303859A true CN101303859A (zh) | 2008-11-12 |
CN100578620C CN100578620C (zh) | 2010-01-06 |
Family
ID=40113737
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200710124503A Active CN100578620C (zh) | 2007-11-12 | 2007-11-12 | 固定码书搜索方法及搜索器 |
Country Status (4)
Country | Link |
---|---|
US (2) | US7941314B2 (zh) |
EP (1) | EP2214166B1 (zh) |
CN (1) | CN100578620C (zh) |
WO (1) | WO2009071018A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101795181A (zh) * | 2010-03-17 | 2010-08-04 | 北京邮电大学 | 用于无线通信系统中的码书的选择方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101931414B (zh) * | 2009-06-19 | 2013-04-24 | 华为技术有限公司 | 脉冲编码方法及装置、脉冲解码方法及装置 |
JP5981909B2 (ja) * | 2011-06-15 | 2016-08-31 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | パルス位置探索装置、符号帳探索装置、及びこれらの方法 |
FR3013496A1 (fr) * | 2013-11-15 | 2015-05-22 | Orange | Transition d'un codage/decodage par transformee vers un codage/decodage predictif |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9512284D0 (en) * | 1995-06-16 | 1995-08-16 | Nokia Mobile Phones Ltd | Speech Synthesiser |
KR100341398B1 (ko) | 2000-01-27 | 2002-06-22 | 오길록 | 씨이엘피형 보코더의 코드북 검색 방법 |
US7206739B2 (en) * | 2001-05-23 | 2007-04-17 | Samsung Electronics Co., Ltd. | Excitation codebook search method in a speech coding system |
JP2002366199A (ja) | 2001-06-11 | 2002-12-20 | Matsushita Electric Ind Co Ltd | Celp型音声符号化装置 |
CN1245028C (zh) | 2003-03-03 | 2006-03-08 | 清华大学 | 非均匀多层次六边形格点整象素运动搜索方法 |
KR100556831B1 (ko) | 2003-03-25 | 2006-03-10 | 한국전자통신연구원 | 전역 펄스 교체를 통한 고정 코드북 검색 방법 |
US20050256702A1 (en) * | 2004-05-13 | 2005-11-17 | Ittiam Systems (P) Ltd. | Algebraic codebook search implementation on processors with multiple data paths |
US7860710B2 (en) * | 2004-09-22 | 2010-12-28 | Texas Instruments Incorporated | Methods, devices and systems for improved codebook search for voice codecs |
SG123639A1 (en) * | 2004-12-31 | 2006-07-26 | St Microelectronics Asia | A system and method for supporting dual speech codecs |
CN100412948C (zh) | 2005-01-27 | 2008-08-20 | 广达电脑股份有限公司 | 语音编码器中搜寻语音讯号的编码向量的搜寻系统及方法 |
KR100813260B1 (ko) * | 2005-07-13 | 2008-03-13 | 삼성전자주식회사 | 코드북 탐색 방법 및 장치 |
US7571094B2 (en) * | 2005-09-21 | 2009-08-04 | Texas Instruments Incorporated | Circuits, processes, devices and systems for codebook search reduction in speech coders |
CN100416652C (zh) * | 2005-10-31 | 2008-09-03 | 连展科技(天津)有限公司 | 增强的amr编码器快速固定码本搜索方法 |
CN100498934C (zh) * | 2005-10-31 | 2009-06-10 | 连展科技(天津)有限公司 | 一种新型的快速固定码本搜索方法 |
KR100795727B1 (ko) | 2005-12-08 | 2008-01-21 | 한국전자통신연구원 | Celp기반의 음성 코더에서 고정 코드북 검색 장치 및방법 |
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 |
JPWO2007129726A1 (ja) * | 2006-05-10 | 2009-09-17 | パナソニック株式会社 | 音声符号化装置及び音声符号化方法 |
JPWO2008001866A1 (ja) * | 2006-06-29 | 2009-11-26 | パナソニック株式会社 | 音声符号化装置及び音声符号化方法 |
CN100530357C (zh) | 2007-07-11 | 2009-08-19 | 华为技术有限公司 | 固定码书搜索方法及搜索器 |
-
2007
- 2007-11-12 CN CN200710124503A patent/CN100578620C/zh active Active
-
2008
- 2008-11-04 WO PCT/CN2008/072920 patent/WO2009071018A1/zh active Application Filing
- 2008-11-04 EP EP08857528.7A patent/EP2214166B1/en active Active
-
2010
- 2010-05-11 US US12/777,875 patent/US7941314B2/en active Active
- 2010-07-16 US US12/838,229 patent/US7908136B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101795181A (zh) * | 2010-03-17 | 2010-08-04 | 北京邮电大学 | 用于无线通信系统中的码书的选择方法 |
CN101795181B (zh) * | 2010-03-17 | 2012-08-29 | 北京邮电大学 | 用于无线通信系统中的码书的选择方法 |
Also Published As
Publication number | Publication date |
---|---|
EP2214166A1 (en) | 2010-08-04 |
EP2214166A4 (en) | 2011-03-02 |
US20100235173A1 (en) | 2010-09-16 |
CN100578620C (zh) | 2010-01-06 |
WO2009071018A1 (fr) | 2009-06-11 |
US20100274559A1 (en) | 2010-10-28 |
US7908136B2 (en) | 2011-03-15 |
EP2214166B1 (en) | 2015-09-30 |
US7941314B2 (en) | 2011-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100578619C (zh) | 编码方法和编码器 | |
Liu et al. | Non-autoregressive predictive coding for learning speech representations from local dependencies | |
JP5188990B2 (ja) | Celp技術における、デジタルオーディオ信号の改善された符号化/復号化 | |
CN100578620C (zh) | 固定码书搜索方法及搜索器 | |
CN101145345B (zh) | 音频分类方法 | |
KR100556831B1 (ko) | 전역 펄스 교체를 통한 고정 코드북 검색 방법 | |
RU2014140195A (ru) | Система и способ возбуждения смешанной кодовой книги для кодирования речи | |
Torres-Reyes et al. | Audio enhancement and synthesis using generative adversarial networks: A survey | |
Giacobello et al. | Enhancing sparsity in linear prediction of speech by iteratively reweighted 1-norm minimization | |
CN110164412A (zh) | 一种基于lstm的音乐自动合成方法及系统 | |
CN101937680B (zh) | 码书分类重排矢量量化方法及其矢量量化器 | |
Liu et al. | Jointly encoding word confusion network and dialogue context with bert for spoken language understanding | |
Guo et al. | Audio Deepfake Detection With Self-Supervised Wavlm And Multi-Fusion Attentive Classifier | |
CN114860914A (zh) | 一种基于知识库增强的端到端多领域任务型对话生成方法 | |
Prabhavalkar et al. | Extreme encoder output frame rate reduction: Improving computational latencies of large end-to-end models | |
JP2002140099A (ja) | 音声復号化装置 | |
CN112182481A (zh) | 一种基于改进型差分进化算法的地震波形反演方法及系统 | |
CN115171710A (zh) | 基于多角度判别的生成对抗网络的语音增强方法及系统 | |
KR100813260B1 (ko) | 코드북 탐색 방법 및 장치 | |
Li et al. | SANet: A Compressed Speech Encoder and Steganography Algorithm Independent Steganalysis Deep Neural Network | |
Spera | Uniphore's submission to Fearless Steps Challenge Phase-2 | |
CN101866650A (zh) | 一种用于语音编码的固定码本搜索方法 | |
Kumar | High computational performance in code exited linear prediction speech model using faster codebook search techniques | |
CN118313456A (zh) | 一种基于大模型高速缓存的投机推理加速方法 | |
Kim et al. | Accuracy enhancement method for speech emotion recognition from spectrogram using temporal frequency correlation and positional information learning through knowledge transfer |
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 |