CN100412948C - 语音编码器中搜寻语音讯号的编码向量的搜寻系统及方法 - Google Patents
语音编码器中搜寻语音讯号的编码向量的搜寻系统及方法 Download PDFInfo
- Publication number
- CN100412948C CN100412948C CNB2005100058287A CN200510005828A CN100412948C CN 100412948 C CN100412948 C CN 100412948C CN B2005100058287 A CNB2005100058287 A CN B2005100058287A CN 200510005828 A CN200510005828 A CN 200510005828A CN 100412948 C CN100412948 C CN 100412948C
- Authority
- CN
- China
- Prior art keywords
- pulse
- combined
- coding vector
- preliminary election
- function
- 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
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明提供一种搜寻方法,用以于一语音编码器中,搜寻一语音讯号的一标的编码向量。标的编码向量定义出多个脉冲位置并且包含多个脉冲,每一脉冲可分配在位于该编码向量的所述脉冲位置内。所述脉冲位置分布于多个轨道上。搜寻方法包含下列步骤:计算每一脉冲位置的一命中函数;决定每一轨道中的多组脉冲组合;计算每一脉冲组合的一组合命中函数;选择每一轨道中具有最大组合命中函数的脉冲组合,以形成一预选编码向量;形成一候选编码向量;根据候选编码向量以及预选编码向量,进行一编码向量更新程序,以决定出标的编码向量。
Description
技术领域
本发明涉及一种编码向量(Code-vector)的搜寻系统及其方法,特别是涉及一种于一语音编码器(Speech encoder)中搜寻一语音讯号(Speechsignal)的一标的编码向量的搜寻系统及其方法。
背景技术
已知自适应性多重速率(Adaptive multi-rate,AMR)数字语音编码标准是由第三代移动通讯伙伴合作计划(Third generation partnershipproject,3GPP)所订定。根据AMR标准规格3GPP TS 26.090,总共有八种低位语音编码模式,分别为12.2kbps、10.2kbps、7.95kbps、7.40kbps、6.70kbps、5.90kbps、5.15kbps、以及4.75kbps。AMR标准采用的核心技术为代数激式线性预测(Algebraic code-excited linear-prediction,ACELP)。
请参阅图1,图1为已知ACELP语音编码器10的示意图。ACELP语音编码器10包含一前置处理器(Pre-processor)12、一线性预估分析器(Linear predict analyzer)14、一自适应性码本搜寻器(Adaptive codebooksearch)16以及一代数码本搜寻器(Algebraic codebook search)18。前置处理器12包含一高频滤波器20。首先,一语音讯号s(n)输入前置处理器12,并藉由前置处理器12中的高频滤波器20来滤掉语音讯号s(n)的直流成份。之后,语音讯号s(n)再经过线性预估分析器14,产生一激发讯号(Excitation signal)x(n)。激发讯号x(n)可经由一周期性激发讯号以及一代数码激发讯号合成产生。激发讯号x(n)先经过自适应性码本搜寻器16,得到周期性激发讯号,并且经由代数码本搜寻器18,产生代数码激发讯号。
在ACELP语音编码器10中,代数码本搜寻器18用以寻找一较佳的编码向量ck以及其增益值gc,使得合成的语音讯号与标的讯号(Target signal)x2的均方误差εk为最小。均方误差εk可经由下列公式一计算得出:
公式一:
其中,公式一中的ck代表位于代数码本中第k个编码向量。根据AMR标准规格3GPP TS 26.090,较佳的编码向量可产生较大的决策分数(Decisionscore)Ak。决策分数(Decision score)Ak可经由下列公式二计算得出:
公式二:
其中,d=ht*x2为标的讯号x2与线性预估滤波器脉冲响应h(n)的相关函数(Correlation function),且Φ=ht*h为脉冲响应h(n)的自相关函数(Auto-correlation function)。
由于代数码本搜寻器18占了整个ACELP语音编码器10大部分的计算量,所以许多文献皆提出有效率的编码向量搜寻方法,致力于简化代数码本搜寻的计算复杂度(Comput ing complexity),并且提升语音质量(Speechquality),例如:美国专利5,701,392、美国专利6,714,907、Hochong Park,“Efficient Codebook Search Method for EVRC Speech Codec”,IEEESignel Processing Letters,vol.7,no.1,2000、Hochong Park,Younchang Choi and Doyoon Lee,“Efficient Codebook Search Methodfor ACELP Speech Codecs”,IEEE,2002、...等。评估代数码本搜寻的效能指针(Performance measurement)包含计算复杂度与语音质量。在计算复杂度方面,可依据处理器计算ACELP语音编码器10所需的时间来评估。在语音质量方面,可依据语音质量听觉评价(Perceptual evaluation ofspeech quality,PESQ)值来评估。PESQ是由国际通讯协会(ITU-T)于规格ITU-T P.862中所订定。PESQ使用客观性评量的听觉模型估计主观性评量的MOS(Mean opinion score)值。PESQ值的范围介于-0.5至4.5之间,PESQ值越高,表示语音质量越好。
3GPP所订定的AMR标准,其采用的代数码本搜寻方法为最深树状搜寻法(Depth-first tree search)。该方法详细描述于AMR标准规格3GPP TS26.090与美国专利公5,701,392中。
请参阅图2,图2为根据AMR标准的12.2kbps模式中,一编码向量的脉冲位置分布图。代数码本中每一个编码向量分别定义40个脉冲位置(Pulse position)并且包含10个脉冲(Pulse),其中脉冲位置以n表示,n=0,1,...,39,脉冲以Pi表示,i=0,1,...,9。如图2所示,10个脉冲平均分布于5个轨道(Tt,t=0,1,...,4)的40个位置中。因此,每一个脉冲可能出现在其相对应轨道的8个位置上。以脉冲P0为例,P0可能出现在轨道T0的n=0,5,10,15,20,25,30,35等8个位置上。代数码本搜寻方法即由40个位置中搜寻出10个脉冲,以构成较佳的编码向量ck,使得决策分数Ak较大,亦即合成语音讯号与标的讯号的均方误差εk较小。
请参阅图3,图3为已知技术根据AMR标准的最深树状搜寻法的流程图。以12.2kbps模式为例,根据AMR标准,最深树状搜寻法包含下列步骤:
步骤S100:开始搜寻。
步骤S102:经由下列公式三,计算每个脉冲位置的命中函数(Hitfunction)b(n);
公式三:
其中,resLTP(n)为脉冲位置n的长时预测剩余(Long-term predictionresidual)讯号,d(n)为脉冲位置n的标的讯号x2(n)与线性预估滤波器脉冲响应h(n)的相关函数;
步骤S104:设定脉冲P0的脉冲位置于最大b(n)值的脉冲位置;
步骤S106:设定脉冲P1的脉冲位置于脉冲P0所在轨道以外的其它四个轨道中,具有最大b(n)值的脉冲位置;
步骤S108:于脉冲P1的次一轨道与次二轨道,依据决策分数Ak,搜寻脉冲P2与P3的脉冲位置,举例来说,若P1在轨道T4,则次一轨道即为轨道T0且次二轨道即为轨道T1,以下步骤依此类推;
步骤S110:于脉冲P3的次一轨道与次二轨道,依据决策分数Ak,搜寻脉冲P4与P5;
步骤S112:于脉冲P5的次一轨道与次二轨道,依据决策分数Ak,搜寻脉冲P6与P7;
步骤S114:于脉冲P7的次一轨道与次二轨道,依据决策分数Ak,搜寻脉冲P8与P9;
步骤S116:检查是否已达到一预定搜寻次数,若是,则进行步骤S118,若否,则回到步骤S106;
步骤S118:依据所搜寻的每一组脉冲(P0,...,P9)所构成的编码向量的决策分数,选择最佳的10个脉冲位置以决定一标的编码向量;
步骤S120:结束搜寻。
如上所述,若预定搜寻次数定为四次,则AMR最深树状搜寻法共需搜寻4*(8*8+8*8+8*8+8*8)=1024次,以决定编码向量。
请参阅图4,图4为已知技术的脉冲取代搜寻法(Pulse replacementsearch)的流程图。脉冲取代搜寻法配合最深树状搜寻法可以改善编码音质。脉冲取代搜寻法包含下列步骤:
步骤S200:开始搜寻。
步骤S202:经由上述最深树状搜寻法取得一预选编码向量,并计算预选编码向量的决策分数;
步骤S204:计算预选编码向量中每一个脉冲位置的贡献分数(Contribution score);
步骤S206:选取预选编码向量中,贡献分数最低的脉冲位置以及其轨道;
步骤S208:由该轨道其它脉冲位置中,选择一候选脉冲位置以暂代最低贡献分数的脉冲位置,该候选脉冲位置所构成的一候选编码向量相较于该轨道其它脉冲位置具有较高决策分数;
步骤S210:确认是否该候选编码向量的决策分数低于预选编码向量,若是,则以目前预选编码向量为标的编码向量,并进行步骤S216,若否,则进行步骤S212;
步骤S212:以该候选脉冲位置取代最低贡献分数的脉冲位置,更新候选编码向量为预选编码向量;
步骤S214:检查脉冲位置的取代次数是否达到一预定取代次数,若是则进行步骤S216,若否,则回到步骤S204;
步骤S216:结束搜寻。
请参阅图5,图5为已知技术的次代数码本搜寻法(Sub-codebook search)的流程图。根据美国专利6,714,907,次代数码本搜寻法包含下列步骤:
步骤S300:开始搜寻。
步骤S302:经由最深树状搜寻法取得第一个次代数码本的最佳预选编码向量,并计算预选编码向量的决策分数;
步骤S304:经由最深树状搜寻法取得下一个次代数码本的最佳候选编码向量,并计算候选编码向量的决策分数;
步骤S306:比较预选编码向量的决策分数与候选编码向量的决策分数,并选出最佳的决策分数以及编码向量;
步骤S308:确认是否为最后的次代数编码,若是,则进行步骤S310,若否,则回到步骤S304;
步骤S310:对最佳码本的编码向量进行上述的脉冲置换法搜寻,以决定最后的编码向量;
步骤S312:结束搜寻。
如上所述,由于代数码本搜寻占了整个ACELP语音编码器大部分的计算量。以AMR 12.2kbps模式为例,代数码本搜寻器使用最深树状搜寻法占ACELP语音编码器整体语音编码约40%的计算量,总共使用了1024次搜寻以确保编码语音质量。因此,最深树状搜寻法为确保语音质量而使用多次的搜寻,造成过高的计算量。然而,其它已知技术,如脉冲取代搜寻法与次代数码本搜寻法,都是基于最深树状搜寻法,虽可得到较佳编码语音质量,却必须付出更高计算复杂度的代价。
发明内容
因此本发明的主要目的在于提供一种于一语音编码器中搜寻一语音讯号的编码向量的搜寻系统及其方法,以解决上述问题。
本发明的一目的在于提供一种搜寻系统及其方法,用来于一语音编码器(Speech encoder)中搜寻一语音讯号(Speech signal)的一标的编码向量(Target code-vector),以降低计算复杂度并确保语音质量。
本发明的搜寻方法用以于一语音编码器中,搜寻一语音讯号的一标的编码向量。该语音讯号包含多个编码向量,所述编码向量分别定义出多个脉冲位置(Pulse position)并且包含多个脉冲(Pulse),每一脉冲可分配在位于该编码向量的所述脉冲位置内,所述脉冲位置分布于多个轨道(Track)上。本发明的搜寻方法包含下列步骤:
(a)计算每一脉冲位置的一相对应命中函数(Hit function);
(b)根据每一轨道中的脉冲位置个数与脉冲个数,决定每一轨道中的多组脉冲组合(Pulse combination);
(c)根据每一脉冲位置的相对应命中函数,计算每一脉冲组合的一相对应组合命中函数(Combination hit function);
(d)根据每一脉冲组合的相对应组合命中函数大小,依序排列每一轨道中的脉冲组合,选择每一轨道中具有最大组合命中函数的脉冲组合,以作为一相对应预选脉冲组合(Default pulse combination),并将其它脉冲组合依大小次序排列成一次序串行;
(e)根据每一轨道中的预选脉冲组合,形成一预选编码向量(Defaultcode-vector),并计算预选编码向量的一决策分数(Decision score);
(f)根据次序串行的顺序,选择次一脉冲组合为一候选脉冲组合(Candidate pulse combination),以暂时替代候选脉冲组合相对应轨道的预选脉冲组合,而形成一候选编码向量(Candidate code-vector),并计算候选编码向量的一决策分数;以及
(g)根据候选编码向量以及预选编码向量的决策分数,进行一编码向量更新程序,以决定出标的编码向量。
因此,根据本发明的编码向量搜寻方法,不仅可减少搜寻较佳编码向量的次数,进而降低计算复杂度,并且可产生较大的决策分数以缩小原始语音讯号与编码语音讯号的误差,进而确保语音质量。
关于本发明的优点与精神可以藉由以下结合附图对本发明的详述得到进一步的了解。
附图说明
图1为已知ACELP语音编码器的示意图。
图2为根据AMR标准的12.2kbps模式中,一编码向量的脉冲位置分布图。
图3为已知技术根据AMR标准的最深树状搜寻法的流程图。
图4为已知技术的脉冲取代搜寻法的流程图。
图5为已知技术的次代数码本搜寻法的流程图。
图6为根据最深树状搜寻法,于各轨道中,依各脉冲位置的命中函数值大小排列的脉冲出现机率分布图。
图7为本发明的编码向量的搜寻系统示意图。
图8为图7中的第七装置示意图。
图9为各脉冲位置的命中函数示意图。
图10为根据本发明的第一实施例,所有脉冲组合及其组合命中函数的示意图。
图11(A)为根据本发明的第一实施例所决定的预选脉冲组合示意图。
图11(B)为根据本发明的第一实施例所决定的次序串行示意图。
图12为根据本发明的第二实施例,所有脉冲组合及其组合命中函数的示意图。
图13(A)为根据本发明的第二实施例所决定的预选脉冲组合示意图。
图13(B)为根据本发明的第二实施例所决定的次序串行示意图。
图14为本发明的编码向量的搜寻方法流程图。
图15为比较本发明的第一实施例、第二实施例与AMR标准的代数码本搜寻方法的比较表。
附图符号说明
10:ACELP语音编码器 12:前置处理器
14:线性预估分析器 16:自适应性码本搜寻器
18:代数码本搜寻器 20:高频滤波器
s(n):语音讯号 x(n):激发讯号
30:搜寻系统 32:第一装置
34:第二装置 36:第三装置
38:第四装置 40:第五装置
42:第六装置 44:第七装置
46:第一模块 48:第二模块
50:第三模块
具体实施方式
请参阅图6,图6为根据最深树状搜寻法,在各轨道中,依各脉冲位置的命中函数值大小排列的脉冲出现机率分布图。在图6中,实验语音的长度共616个语音帧(Speech frame),亦即12.32秒,且每个轨道各出现4928个脉冲。如图6所示,在各轨道中当脉冲位置的命中函数值越大,脉冲出现在此脉冲位置的机率也越大。以轨道T0为例,脉冲位置的命中函数值最大时,脉冲出现的机率也最大(41.6%)。其次,随脉冲位置的命中函数值减少,脉冲出现的机率也递减。因此,本发明是根据各脉冲位置的命中函数,来决定各脉冲位置组合的组合命中函数,预测较佳的脉冲组合序列,以降低搜寻时的计算复杂度。
请参阅图7,图7为本发明的编码向量的搜寻系统30示意图。本发明的搜寻系统30用以于一语音编码器(Speech encoder)(图7中未显示)中,搜寻一语音讯号(Speech signal)的一标的编码向量(Targetcode-vector)。该语音讯号包含多个编码向量,所述编码向量分别定义出多个脉冲位置(Pulse position)并且包含多个脉冲(Pulse),每一脉冲可分配在位于该编码向量的所述脉冲位置内,所述脉冲位置分布于多个轨道(Track)上。搜寻系统30包含一第一装置(Device)32、一第二装置34、一第三装置36、一第四装置38、一第五装置40、一第六装置42以及一第七装置44。
第一装置32可以是一处理器(Processor)或一计算器(Calculator),主要是设计为用以计算每一脉冲位置的一相对应命中函数(Hit function)。第二装置34可以是一处理器或一控制器(Controller),主要是设计为根据每一轨道中的脉冲位置个数与脉冲个数,用以决定每一轨道中的多组脉冲组合(Pulse combination)。第三装置36可以是一处理器或一计算器,主要是设计为根据每一脉冲位置的相对应命中函数,用以计算每一脉冲组合的一相对应组合命中函数(Combination hit function)。第四装置38可以是一处理器或一控制器,主要是设计为根据每一所述脉冲组合的该相对应组合命中函数大小,用以依序排列每一所述轨道中的所述脉冲组合,选择每一所述轨道中具有最大组合命中函数的脉冲组合,以作为一相对应预选脉冲组合(Default pulse combination),并将其它脉冲组合依大小次序排列成一次序串行。第五装置40可以是一处理器或一计算器,主要是设计为根据每一轨道中的预选脉冲组合,用以形成一预选编码向量(Defaultcode-vector),并计算预选编码向量的一决策分数(Decision score)。第六装置42可以是一处理器或一计算器,主要是设计为选择次一脉冲组合为一候选脉冲组合(Candidate pulse combination),以暂时替代候选脉冲组合相对应轨道的预选脉冲组合,而形成一候选编码向量(Candidatecode-vector),并计算候选编码向量的一决策分数。第七装置44可以是一处理器或一控制器,主要是设计为根据候选编码向量以及预选编码向量的决策分数,用以决定出标的编码向量。
请参阅图8,图8为图7中的第七装置44示意图。第七装置44进一步包含一第一模块(Module)46、一第二模块48以及一第三模块50。第一模块46可以是一处理器或一控制器,主要是设计为用以判断候选编码向量的决策分数是否低于预选编码向量的决策分数。第二模块48可以是一处理器或一控制器,主要是设计为用以更新候选编码向量为预选编码向量。第三模块50可以是一处理器或一控制器,主要是设计为用以检查目前搜寻结果是否符合一预定搜寻条件。当目前搜寻结果符合预定搜寻条件时,搜寻系统30即以目前的预选编码向量为标的编码向量,并完成搜寻。
请参阅图9、图10、图11(A)以及图11(B),图9为各脉冲位置的命中函数示意图。图10为根据本发明的第一实施例,所有脉冲组合及其组合命中函数的示意图。图11(A)为根据本发明的第一实施例所决定的预选脉冲组合示意图。图11(B)为根据本发明的第一实施例所决定的次序串行示意图。于本发明的第一实施例中,组合命中函数系相对应的脉冲组合中,每一脉冲位置的相对应命中函数的总和。
根据本发明的第一实施例,以AMR 12.2kbps模式为例,脉冲位置分布系如图2所示。根据上述本发明的编码向量搜寻系统30,当语音编码器接收一语音讯号时,搜寻系统30会开始搜寻该语音讯号的编码向量。以下将以一个标的编码向量的搜寻过程配合图7以及图8做说明。
第一装置32先计算该编码向量中每个脉冲位置的命中函数b(n),如图9所示。第二装置34根据各轨道的脉冲位置与脉冲个数,决定所有轨道的脉冲组合。于AMR 12.2Kbps模式下,每个轨道皆具有两个脉冲在八个可能脉冲位置上(可重复),因此每个轨道的脉冲位置组合共有 种可能。例如,在轨道T0上,脉冲组合可能为脉冲位置组合(0,0)、(0,5)、(0,10)、(0,15)、(0,20)、(0,25)、...、(35,35)。第三装置36根据每一脉冲位置的相对应命中函数,计算每一脉冲组合的一相对应组合命中函数。举例来说,脉冲组合(n1,n2)的组合命中函数值定义为其两个位置的命中函数值相加,即b(n1)+b(n2)。如图10所示,各脉冲组合的命中函数值标示于各脉冲组合的下方。以脉冲组合(0,0)为例,其组合命中函数值为b(0)+b(0)=8476。接着,当第四装置38根据各脉冲组合的组合命中函数,依序排列每一轨道中的脉冲组合时,各轨道中最大组合命中函数的脉冲组合分别为轨道T0的(25,25)、轨道T1的(1,1)、轨道T2的(7,7)、轨道T3的(33,33)以及轨道T4的(19,19)。上述五个脉冲组合即为预选脉冲组合,如图11(A)所示。在此实施例中,其它脉冲组合依组合命中函数大小,排成一次序串行,该次序串行依序为(1,16)、(25,30)、(16,16)、...、(18,28)、(18,18),如图11(B)所示。第五装置40以预选脉冲组合构成预选编码向量(1,1,7,7,19,19,25,25,33,33),并计算预选编码向量的决策分数AD。根据上述的次序串行,第六装置42会选择下一组脉冲组合(1,16)为候选脉冲组合,以暂代其对应轨道T1的预选脉冲组合(1,1),而构成候选编码向量(1,7,7,16,19,19,25,25,33,33),并计算候选编码向量的决策分数AC。接着,第七装置44中的第一模块46会确认候选编码向量的决策分数AC是否低于预选编码向量的决策分数AD,若是,表示候选脉冲组合(1,16)无法取代预选脉冲组合(1,1)以改善语音音质;若候选编码向量的决策分数AC不低于预选编码向量的决策分数AD,则第七装置44中的第二模块48会以候选脉冲组合(1,16)取代预选脉冲组合(1,1),更新预选编码向量为(1,7,7,16,19,19,25,25,33,33)及更新决策分数AD为AC。最后,第七装置44中的第三模块50会检查目前搜寻结果是否符合一预定搜寻条件,若是,则以目前的预选编码向量为标的编码向量,并完成搜寻。
在此实施例中,如图11(B)所示,若搜寻至最后一组脉冲组合(18,18),则停止搜寻,并取得较佳决策分数的编码向量。值得注意的是,虽然本实施例的预定搜寻条件为搜寻至次序串行中的最后一个脉冲组合为止,但为了降低搜寻时间,可减少搜寻部分脉冲组合。由图6的实验结果可以看出,当一脉冲位置的命中函数值太低时,脉冲出现于该脉冲位置的机率也很低。因此,在排序次序串行时,可只包含组合命中函数值较高的脉冲组合,以节省搜寻时间。换句话说,本发明可进一步设定一阈值(Threshold),若一脉冲组合的组合命中函数低于该阈值,则将该脉冲组合排除于次序串行。本发明亦可设定次序串行包含一预定数量的脉冲组合。例如,脉冲组合的组合命中函数低于阈值=5000,则不参与排序。又例如,次序串行仅包含35个脉冲组合,组合命中函数值较低的脉冲组合就不会列入次序串行。此外,预定搜寻条件可为一预定搜寻次数或一预定搜寻时间。
请参阅图12、图13(A)以及图13(B),图12为根据本发明的第二实施例,所有脉冲组合及其组合命中函数的示意图。图13(A)为根据本发明的第二实施例所决定的预选脉冲组合示意图。图13(B)为根据本发明的第二实施例所决定的次序串行示意图。在本发明的第二实施例中,组合命中函数是相对应的脉冲组合中,根据每一脉冲位置的相对应命中函数大小所决定的次序组合。
根据本发明的第二实施例,以AMR 12.2kbps模式为例,脉冲位置分布系如图2所示。第二实施例与第一实施例的主要差异在于组合命中函数的定义不同。在第一实施例中,脉冲组合的组合命中函数定义为其两个位置的命中函数值相加。在此实施例中,脉冲组合的组合命中函数则为其两个位置的命中函数值在该轨道中,所有命中函数值的次序组合。亦即,脉冲组合(n1,n2)的组合命中函数为8*0(b(n1))+0(b(n2)),其中0(b(n1))为表示脉冲位置n1于该轨道命中函数值的次序,b(n1)>=b(n2)。在此实施例中,命中函数值b(n1)或b(n2)越大,组合命中函数值越小,次序越先。如图12所示,在轨道T0上,脉冲组合依序为(25,25)、(25,30)、(0,25)、...、(5,5)等,其中脉冲组合(25,25)的组合命中函数值为0、脉冲组合(25,30)的组合命中函数值为1,依此类推。因此,当第四装置38根据各脉冲组合的组合命中函数,依序排列每一轨道中的脉冲组合时,各轨道中最先位置命中函数的脉冲组合分别为轨道T0的(25,25)、轨道T1的(1,1)、轨道T2的(7,7)、轨道T3的(33,33)、以及轨道T4的(19,19)。上述五个脉冲组合即为预选脉冲组合,如图13(A)所示。在此实施例中,其它脉冲组合依轨道位置依序排成一次序串行,如图13(B)所示,该次序串行依序为(25,30)、(1,16)、(7,22)、(33,23)、(19,24)、(25,0)、(1,31)、(7,2)、...、(1,10)、(7,27)、(33,18)、(19,14)。值得注意的是,其它脉冲组合因命中函数值太低而不列入次序串行,以降低搜寻时间。相较于第一实施例,第二实施例因脉冲组合的组合命中函数定义不同,而有不同的次序串行。
请参阅图14,图14为本发明的编码向量的搜寻方法流程图。本发明亦提供一种搜寻方法,用以于一语音编码器(Speech encoder)中,搜寻一语音讯号(Speech signal)的一标的编码向量(Target code-vector)。该语音讯号包含多个编码向量,所述编码向量分别定义出多个脉冲位置(Pulseposition)并且包含多个脉冲(Pulse),每一脉冲可分配在位于该编码向量的所述脉冲位置内,所述脉冲位置分布于多个轨道(Track)上。本发明的搜寻方法包含下列步骤:
步骤S400:计算每一脉冲位置的一相对应命中函数(Hit function);
步骤S402:根据每一轨道中的脉冲位置个数与脉冲个数,决定每一轨道中的多组脉冲组合(Pulse combination);
步骤S404:根据每一脉冲位置的相对应命中函数,计算每一脉冲组合的一相对应组合命中函数(Combination hit function);
步骤S406:根据每一脉冲组合的相对应组合命中函数大小,依序排列每一轨道中的脉冲组合,选择每一轨道中具有最大组合命中函数的脉冲组合,以作为一相对应预选脉冲组合(Default pulse combination),并将其它脉冲组合依大小次序排列成一次序串行;
步骤S408:根据每一轨道中的预选脉冲组合,形成一预选编码向量(Default code-vector),并计算预选编码向量的一决策分数(Decisionscore);
步骤S410:根据次序串行的顺序,选择次一脉冲组合为一候选脉冲组合(Candidate pulse combinat ion),以暂时替代候选脉冲组合相对应轨道的预选脉冲组合,而形成一候选编码向量(Candidate code-vector),并计算候选编码向量的一决策分数;以及
步骤S412:判断候选编码向量的决策分数是否低于预选编码向量的决策分数,若是,则进行步骤S416,若否,则进行步骤S414;
步骤S414:以候选脉冲组合取代候选脉冲组合相对应轨道的预选脉冲组合,更新候选编码向量为预选编码向量;
步骤S416:检查目前搜寻结果是否符合一预定搜寻条件,若是,则进行步骤S418,若否,则回到步骤S410;
步骤S418:以目前的预选编码向量为标的编码向量,并完成搜寻。
请参阅图15,图15为比较本发明的第一实施例、第二实施例与AMR标准的代数码本搜寻方法的比较表。AMR标准搜寻1024次,第一实施例与第二实施例各搜寻脉冲组合35次。由实验结果得知,原测试语音长度为12.32秒,AMR标准使用5.55秒编码时间,本发明的第一实施例使用4.57秒编码时间,本发明的第二实施例使用4.35秒编码时间,因此本发明的第一实施例与第二实施例较AMR标准降低17.1%与22.7%的语音编码执行时间。而语音质量PESQ值仅略为下降0.091与0.089,人耳并不易区分出差异。因此,本发明使用脉冲组合取代技术,在兼顾语音质量的前提下,有效地降低计算复杂度。
相较于已知技术,根据上述的实验结果,本发明不仅可减少搜寻较佳编码向量的次数,进而降低计算复杂度,并且可产生较大的决策分数以缩小原始语音讯号与编码语音讯号的误差,进而确保语音质量。
藉由以上较佳具体实施例的详述,是希望能更加清楚描述本发明的特征与精神,而并非以上述所披露的较佳具体实施例来对本发明的范畴加以限制。相反地,其目的是希望能涵盖各种改变及相等性的安排于本发明的权利要求的范畴内。
Claims (16)
1. 一种搜寻方法,用来于一语音编码器中搜寻一语音讯号的一标的编码向量,该语音讯号包含多个编码向量,所述编码向量分别定义出多个脉冲位置并且包含多个脉冲,每一所述脉冲可分配在位于该编码向量的所述脉冲位置内,所述脉冲位置分布于多个轨道上,该搜寻方法包含下列步骤:
(a)计算每一所述脉冲位置的一相对应命中函数;
(b)根据每一所述轨道中的脉冲位置个数与脉冲个数,决定每一所述轨道中的多组脉冲组合;
(c)根据每一所述脉冲位置的该相对应命中函数,计算每一所述脉冲组合的一相对应组合命中函数;
(d)根据每一所述脉冲组合的该相对应组合命中函数大小,依序排列每一所述轨道中的所述脉冲组合,选择每一所述轨道中具有最大组合命中函数的脉冲组合,以作为一相对应预选脉冲组合,并将其它脉冲组合依大小次序排列成一次序串行;
(e)根据每一所述轨道中的该预选脉冲组合,形成一预选编码向量,并计算该预选编码向量的一决策分数;
(f)根据该次序串行的顺序,选择次一脉冲组合为一候选脉冲组合,以暂时替代该候选脉冲组合相对应轨道的该预选脉冲组合,而形成一候选编码向量,并计算该候选编码向量的一决策分数;以及
(g)根据该候选编码向量以及该预选编码向量的决策分数,进行一编码向量更新程序,以决定出该标的编码向量。
2. 如权利要求1所述的搜寻方法,其中该编码向量更新程序进一步包含下列步骤:
(g1)判断该候选编码向量的该决策分数是否低于该预选编码向量的该决策分数,若是,则进行步骤(g3),若否,则进行步骤(g2);
(g2)以该候选脉冲组合取代该候选脉冲组合相对应轨道的该预选脉冲组合,更新该候选编码向量为该预选编码向量;以及
(g3)检查目前搜寻结果是否符合一预定搜寻条件,若是,则以目前的该预选编码向量为该标的编码向量,并完成搜寻。
3. 如权利要求1所述的搜寻方法,其中该组合命中函数是相对应的该脉冲组合中,每一所述脉冲位置的该相对应命中函数的总和。
4. 如权利要求1所述的搜寻方法,其中该组合命中函数是相对应的该脉冲组合中,根据每一所述脉冲位置的该相对应命中函数大小所决定的次序组合。
5. 如权利要求1所述的搜寻方法,其中该方法进一步设定一阈值,若一脉冲组合的该组合命中函数低于该阈值,则将该脉冲组合排除于该次序串行。
6. 如权利要求1所述的搜寻方法,其中该次序串行包含一预定数量的脉冲组合。
7. 如权利要求2所述的搜寻方法,其中该预定搜寻条件是一预定搜寻次数。
8. 如权利要求2所述的搜寻方法,其中该预定搜寻条件是一预定搜寻时间。
9. 一种搜寻系统,用来在一语音编码器中搜寻一语音讯号的一标的编码向量,该语音讯号包含多个编码向量,所述编码向量分别定义出多个脉冲位置并且包含多个脉冲,每一所述脉冲可分配在位于该编码向量的所述脉冲位置内,所述脉冲位置分布于多个轨道上,该搜寻系统包含:
一第一装置,该第一装置用以计算每一所述脉冲位置的一相对应命中函数;
一第二装置,该第二装置根据每一所述轨道中的脉冲位置个数与脉冲个数,用以决定每一所述轨道中的多组脉冲组合;
一第三装置,该第三装置根据每一所述脉冲位置的该相对应命中函数,用以计算每一所述脉冲组合的一相对应组合命中函数;
一第四装置,该第四装置根据每一所述脉冲组合的该相对应组合命中函数大小,用以依序排列每一所述轨道中的所述脉冲组合,选择每一所述轨道中具有最大组合命中函数的脉冲组合,以作为一相对应预选脉冲组合,并将其它脉冲组合依大小次序排列成一次序串行;
一第五装置,该第五装置根据每一所述轨道中的该预选脉冲组合,用以形成一预选编码向量,并计算该预选编码向量的一决策分数;
一第六装置,该第六装置根据该次序串行的顺序,用以选择次一脉冲组合为一候选脉冲组合,以暂时替代该候选脉冲组合相对应轨道的该预选脉冲组合,而形成一候选编码向量,并计算该候选编码向量的一决策分数;以及
一第七装置,该第七装置根据该候选编码向量以及该预选编码向量的决策分数,用以决定出该标的编码向量。
10. 如权利要求9所述的搜寻系统,其中该第七装置进一步包含:
一第一模块,该第一模块用以判断该候选编码向量的该决策分数是否低于该预选编码向量的该决策分数;
一第二模块,该第二模块用以更新该候选编码向量为该预选编码向量;以及
一第三模块,该第三模块用以检查目前搜寻结果是否符合一预定搜寻条件;
其中,当目前搜寻结果符合该预定搜寻条件时,该搜寻系统即以目前的该预选编码向量为该标的编码向量,并完成搜寻。
11. 如权利要求9所述的搜寻系统,其中该组合命中函数是相对应的该脉冲组合中,每一所述脉冲位置的该相对应命中函数的总和。
12. 如权利要求9所述的搜寻系统,其中该组合命中函数是相对应的该脉冲组合中,根据每一所述脉冲位置的该相对应命中函数大小所决定的次序组合。
13. 如权利要求9所述的搜寻系统,其中于该系统中设定有一阈值,若一脉冲组合的该组合命中函数低于该阈值,则将该脉冲组合排除于该次序串行。
14. 如权利要求9所述的搜寻系统,其中该次序串行包含一预定数量的脉冲组合。
15. 如权利要求10所述的搜寻系统,其中该预定搜寻条件是一预定搜寻次数。
16. 如权利要求10所述的搜寻系统,其中该预定搜寻条件是一预定搜寻时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100058287A CN100412948C (zh) | 2005-01-27 | 2005-01-27 | 语音编码器中搜寻语音讯号的编码向量的搜寻系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100058287A CN100412948C (zh) | 2005-01-27 | 2005-01-27 | 语音编码器中搜寻语音讯号的编码向量的搜寻系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1811917A CN1811917A (zh) | 2006-08-02 |
CN100412948C true CN100412948C (zh) | 2008-08-20 |
Family
ID=36844801
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100058287A Expired - Fee Related CN100412948C (zh) | 2005-01-27 | 2005-01-27 | 语音编码器中搜寻语音讯号的编码向量的搜寻系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100412948C (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DK2827327T3 (da) * | 2007-04-29 | 2020-10-12 | Huawei Tech Co Ltd | Fremgangsmåde til excitationsimpulskodning |
CN101295506B (zh) * | 2007-04-29 | 2011-11-16 | 华为技术有限公司 | 脉冲编解码方法及脉冲编解码器 |
CN100578620C (zh) | 2007-11-12 | 2010-01-06 | 华为技术有限公司 | 固定码书搜索方法及搜索器 |
CN102299760B (zh) | 2010-06-24 | 2014-03-12 | 华为技术有限公司 | 脉冲编解码方法及脉冲编解码器 |
JP5981909B2 (ja) | 2011-06-15 | 2016-08-31 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | パルス位置探索装置、符号帳探索装置、及びこれらの方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6714907B2 (en) * | 1998-08-24 | 2004-03-30 | Mindspeed Technologies, Inc. | Codebook structure and search for speech coding |
-
2005
- 2005-01-27 CN CNB2005100058287A patent/CN100412948C/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6714907B2 (en) * | 1998-08-24 | 2004-03-30 | Mindspeed Technologies, Inc. | Codebook structure and search for speech coding |
Also Published As
Publication number | Publication date |
---|---|
CN1811917A (zh) | 2006-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Tagliamonte et al. | Models, forests, and trees of York English: Was/were variation as a case study for statistical practice | |
CN100412948C (zh) | 语音编码器中搜寻语音讯号的编码向量的搜寻系统及方法 | |
CN100578619C (zh) | 编码方法和编码器 | |
CN101826263A (zh) | 基于客观标准的自动化口语评估系统 | |
CN1143270C (zh) | 代码激励线性预测编/译码方法及设备 | |
CN1953052B (zh) | 训练时长预测模型、时长预测和语音合成的方法及装置 | |
CN101131817A (zh) | 强壮语音分类方法和装置 | |
CN102067212A (zh) | 用于低位速率应用的对过渡语音帧的译码 | |
CN109190839B (zh) | 一种融合风向的铁路沿线风速智能滚动预测方法 | |
CN101145787A (zh) | 一种矢量量化方法及矢量量化器 | |
CN104699614B (zh) | 一种软件缺陷组件预测的方法 | |
CN104115220A (zh) | 非常短的基音周期检测和编码 | |
CN109979486A (zh) | 一种语音质量评估方法及装置 | |
CN1173939A (zh) | 综合分析的语音编码方法 | |
US7596493B2 (en) | System and method for supporting multiple speech codecs | |
KR100713566B1 (ko) | 씨이엘피 스피치 부호화를 위한 성형 고정 코드북 탐색 방법 | |
CN102231276B (zh) | 一种语音合成单元时长的预测方法及装置 | |
CN110516861A (zh) | 一种基于拓扑扩张网络模型的学生贫困程度预测方法 | |
Nerbonne et al. | Dialectology for computational linguists | |
Fall et al. | Stepwise calibration of the activated sludge model No. 1 at a partially denitrifying large wastewater treatment plant | |
CN110705318A (zh) | 一种机器翻译引擎测评优选方法及系统 | |
CN113240161B (zh) | 净现值预测模型建立方法、装置、存储介质及电子设备 | |
JP4775119B2 (ja) | コーパス設計装置 | |
CN110503291A (zh) | 基本公共文化服务均等化综合评估系统及评估方法 | |
CN109187772A (zh) | 基于语音信号特征提取应用于冲击弹性波分析的方法 |
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: 20080820 Termination date: 20170127 |