CN1265355C - 音源矢量生成装置及语音编码/解码装置 - Google Patents

音源矢量生成装置及语音编码/解码装置 Download PDF

Info

Publication number
CN1265355C
CN1265355C CNB008002665A CN00800266A CN1265355C CN 1265355 C CN1265355 C CN 1265355C CN B008002665 A CNB008002665 A CN B008002665A CN 00800266 A CN00800266 A CN 00800266A CN 1265355 C CN1265355 C CN 1265355C
Authority
CN
China
Prior art keywords
pulse
code book
noise
vector
sound
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
Application number
CNB008002665A
Other languages
English (en)
Other versions
CN1296608A (zh
Inventor
江原宏幸
森井利幸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
III Holdings 12 LLC
Original Assignee
Individual
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Publication of CN1296608A publication Critical patent/CN1296608A/zh
Application granted granted Critical
Publication of CN1265355C publication Critical patent/CN1265355C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • G10L19/107Sparse pulse excitation, e.g. by using algebraic codebook
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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
    • G10L2019/0001Codebooks
    • G10L2019/0007Codebook element generation
    • G10L2019/0008Algebraic codebooks

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)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)

Abstract

通过对根据代数码本生成的噪声码矢量施加限制来削减代数码本的总项数,向削减部分分配脉冲数多的随机码本的项。还根据模式来自适应地切换上述削减部分的项数。

Description

音源矢量生成装置及语音编码/解码装置
技术领域
本发明涉及对语音信号进行编码来传输的移动通信***等中的低比特率语音编码装置,特别涉及将语音信号分离为声道信息和音源信息来表现的CELP(Code Excited Linear Prediction,码激励线性预测)型语音编码装置等。
背景技术
在数字移动通信或语音存储领域中,为了有效利用电波或存储媒体,使用语音编码装置,用于压缩语音信息,并高效率进行编码。尤其是以CELP(Code Excited Linear Prediction,码激励线性预测编码)方式为基础的方式在中、低比特率中被广泛实用化。CELP技术示于M.R.Schroeder和B.S.Atal:“Code-Excited Linear Prediction(CELP):High-quality Speech at Very Low BitRates(码激励线性预测(CELP):甚低比特率的高质量语音)”,Proc.ICASSP-85,25.1.1,pp.937-940,1985”中。
CELP型语音编码方式是将语音划分为某个一定的帧长(5ms~50ms左右),对每个帧进行语音的线性预测,用已知的波形构成的自适应码矢量和噪声码矢量对每帧的通过线性预测所得的预测残差(激励信号)进行编码。自适应码矢量是从存储过去生成的驱动音源矢量的自适应码本中选择使用的,而噪声码矢量则是从存储具有预先准备的确定数目的确定形状的矢量的噪声码本中选择使用的。噪声码本中存储的噪声码矢量使用随机的噪声序列的矢量或通过将几个脉冲配置在不同的位置上而生成的矢量等。
将几个脉冲配置在不同位置上类型的噪声码本的代表性的一个有代数码本。代数码本的具体内容示于“ITU-T推荐G.729”等中。
以下参照图1来具体说明使用代数码本的噪声码矢量生成器的现有例。
图1是使用代数码本的噪声码矢量生成器的基本方框图。在图中,用加法器3将第1脉冲产生器、第2脉冲产生器2产生的脉冲相加,通过将2个脉冲放置在不同的位置上来生成噪声码矢量。代数码本的具体例示于图2及图3。图2示出在80个样本中放置2个脉冲的一例,图3示出在80个样本中放置3个脉冲的一例。在图2及图3中,表的下部记载的数是脉冲位置的组合数。
然而,在上述现有的使用代数码本的噪声码矢量生成器中,各音源脉冲的搜索位置是独立的,不利用某个音源脉冲和其他音源脉冲之间的相对位置关系。因此,有下述问题:虽然能够生成各种形状的噪声码矢量,但是为了表现足够的脉冲位置需要很多的比特数,在要生成的噪声码矢量的形状出现偏斜的情况下,未必是有效的码本。此外,为了减少代数码本所需的比特数,可考虑减少音源脉冲数的手法,但是在此情况下有下述问题:由于音源脉冲少,所以清音部或平稳噪声部的主观品质大大恶化。此外,有下述问题:为了改善清音部或平稳噪声部的主观品质,有极性音源的模式切换这一手法,但是有时产生模式判定错误。
发明内容
本发明的目的在于提供一种音源矢量生成装置及语音编码/解码装置,能够削减噪声码本的尺寸(サイズ),能够改善清音部或平稳噪声部的品质,而且能够抑制模式判定错误时的品质恶化,并改善对清音语音或背景噪声的编码性能。
本发明提供一种语音编码解码装置,包括:部分代数码本,生成由至少1对音源脉冲间隔比较窄的2个或3个音源脉冲构成的音源矢量;限制部件,进行限制,使得生成在上述音源矢量中至少1对音源脉冲间隔比较窄的音源矢量;和随机码本,按照上述部分代数码本的尺寸来自适应地使用。
本发明的主题是:通过用部分代数码本来生成噪声码矢量,即通过在根据代数码本而生成的多个音源脉冲中,使用只生成至少2个接近的组合的噪声码矢量,来有效地削减代数码本尺寸。
此外,本发明的主题是:通过将与清音语音或平稳噪声信号对应的随机码本与部分代数码本并用,即通过存储对清音部或平稳噪声部有效的音源矢量,来改善清音部或平稳噪声部的主观品质。
再者,本发明的主题是:根据模式判定结果,通过切换部分代数码本尺寸、和并用的随机码本的尺寸之间的比率,来抑制模式判定错误时的品质恶化,并改善对清音语音或背景噪声的编码性能,改善主观品质。
这里,接近的脉冲是指离某个脉冲的距离在1.25ms以下、即在8kHz采样的数字信号中在10个样本左右以下的脉冲。
附图的简单说明
图1是现有的语音编码装置的结构方框图;
图2是现有的二通道(チヤネル)代数码本的示例图;
图3是现有的三通道代数码本的示例图;
图4是本发明实施例的语音信号发送装置及语音信号接收装置的结构方框图;
图5是本发明实施例1的语音编码装置的结构方框图;
图6是本发明实施例1的语音解码装置的结构方框图;
图7是本发明实施例1的噪声码矢量生成装置的结构方框图;
图8是本发明实施例1的部分代数码本的示例图;
图9是本发明实施例1的噪声码矢量编码处理流程的前段的流程图;
图10是本发明实施例1的噪声码矢量编码处理流程的中段的流程图;
图11是本发明实施例1的噪声码矢量编码处理流程的后段的流程图;
图12是本发明实施例1的噪声码矢量解码处理流程的流程图;
图13是本发明实施例1的噪声码矢量生成装置的另一结构方框图;
图14是本发明实施例1的部分代数码本的另一示例图;
图15是本发明实施例2的语音编码装置的结构方框图;
图16是本发明实施例2的语音解码装置的结构方框图;
图17是本发明实施例2的噪声码矢量生成装置的结构方框图;
图18是本发明实施例2的噪声码矢量编码处理流程的流程图;
图19是本发明实施例2的噪声码矢量解码处理流程的流程图;
图20是本发明实施例3的语音编码装置的结构方框图;
图21是本发明实施例3的语音解码装置的结构方框图;
图22是本发明实施例3的噪声码矢量生成装置的结构方框图;
图23是本发明实施例3的噪声码矢量编码处理流程的流程图;
图24是本发明实施例3的噪声码矢量解码处理流程的流程图;
图25A是本发明实施例3的噪声码矢量和角标(インデックス)对应表的示例图;
图25B是本发明实施例3的噪声码矢量和角标对应表的示例图;
图26A是本发明实施例3的噪声码矢量和角标对应表的另一示例图;
图26B是本发明实施例3的噪声码矢量和角标对应表的另一示例图;
图27是本发明实施例4的语音编码装置的结构方框图;
图28是本发明实施例4的语音解码装置的结构方框图;
图29是本发明实施例5中使用的三脉冲音源矢量的示意图;
图30A是图29所示的三脉冲音源矢量的形态的说明图;
图30B是图29所示的三脉冲音源矢量的形态的说明图;
图30C是图29所示的三脉冲音源矢量的形态的说明图;
图31是实施例5中的2ch随机码矢量的示意图;
图32是随机码本的制作中设定各脉冲的配置范围的处理的说明流程图;
图33是随机码本的制作中设定各脉冲的配置范围的处理的说明流程图;
图34是随机码本的制作中决定脉冲位置及极性的处理的说明流程图;
图35A是随机码本中的样本间隔及脉冲位置的示意图;
图35B是随机码本中的样本间隔及脉冲位置的示意图;
图36是并用部分代数码本和随机码本的情况的形态的示意图;
图37A是部分代数码本的块化的说明图;
图37B是部分代数码本的块化的说明图;
图38是随机码本的分级增加的说明图;
图39是本发明实施例6的语音编码装置的结构方框图;
图40是本发明实施例6的语音解码装置的结构方框图;
图41是实施例6的语音编码装置及语音解码装置中使用的扩展脉冲生成器的说明图;以及
图42是实施例6的语音编码装置及语音解码装置中使用的扩展脉冲生成器的说明图。
实施发明的最好形式
本发明的音源矢量生成装置采用下述结构,包括控制器,控制脉冲位置决定器,使得脉冲位置决定器决定的脉冲位置不在传输帧外。
根据该结构,能够在脉冲位置决定器决定的脉冲位置不在传输帧外的脉冲位置范围内进行搜索,生成噪声码矢量。
本发明的音源矢量生成装置采用下述结构,包括:随机码本,存储包含相互不接近的多个脉冲的第2噪声码矢量;噪声码矢量生成器,根据第1及第2噪声码矢量来生成噪声码矢量。
根据该结构,通过将与清音语音或平稳噪声信号对应的随机码本与部分代数码本并用来改善清音部或平稳噪声部的主观品质。
本发明的音源矢量生成装置采用下述结构,包括:模式判定器,判定语音模式;和候选脉冲位置数控制器,按照判定的语音模式来增减规定的候选脉冲位置的数目。
根据该结构,通过根据模式判定来变化代数码本和随机码本的利用比例,能够抑制模式判定差错时的品质恶化,并且改善清音语音或背景噪声的编码性能。
本发明的音源矢量生成装置采用下述结构,包括:功率计算器,计算音源信号的功率;平均功率计算器,在判定的话音模式是噪声模式的情况下,计算音源信号的平均功率;上述候选脉冲位置数控制器根据平均功率来增减规定的候选脉冲位置的数目。
根据该结构,能够效率更高地抑制模式判定差错时的品质恶化,并且改善清音语音或背景噪声的编码性能。
本发明的语音编码装置采用下述结构,包括:激励矢量生成器,根据从存储激励矢量的自适应码本输出的自适应码矢量、和从存储通过上述音源矢量生成装置得到的噪声码矢量的部分代数码本输出的噪声码矢量来生成新的激励矢量;激励矢量更新器,将自适应码本中存储的激励矢量更新为上述新的激励矢量;和语音合成信号生成器,用上述新的激励矢量及输入信号的量化过的线性预测分析结果来生成语音合成信号。
根据该结构,通过生成具有相互接近的至少2个脉冲的噪声码矢量,能够有效地削减代数码本尺寸,能够实现比特率及运算量小的语音编码装置。
本发明的语音解码装置采用下述结构,包括:音源参数解码器,对包含自适应码矢量的位置信息及指定噪声码矢量的角标信息的音源参数进行解码;激励矢量生成器,用根据自适应码矢量的位置信息得到的自适应码矢量及根据角标信息得到的具有相互接近的至少2个脉冲的噪声码矢量来生成激励矢量;激励矢量更新器,将自适应码本中存储的激励矢量更新为上述激励矢量;以及语音合成信号生成器,用上述激励矢量及从编码端送来的量化线性预测分析结果的解码结果来生成语音合成信号。
根据该结构,使用具有相互接近的至少2个脉冲的噪声码矢量,所以能够有效地削减代数码本尺寸,能够实现比特率小的语音解码装置。
本发明的语音编码解码装置采用下述结构,包括:部分代数码本,生成由3个音源脉冲构成的音源矢量,存储该音源矢量;限制器,进行限制,使得生成在上述音源矢量中至少1组音源脉冲间隔比较窄的音源矢量;和随机码本,按照部分代数码本的尺寸来自适应地使用。
根据该结构,将音源脉冲设定为3个脉冲来构成部分代数码本,所以能够实现基本性能高的语音解码装置。
本发明的语音编码解码装置采用下述结构,限制器根据音源脉冲的位置(角标)对语音的浊音/非浊音进行分类。
根据该结构,能够进行规则的音源脉冲位置搜索,所以能够将搜索所需的运算量抑制到最小必要限度。
本发明的语音编码解码装置采用下述结构,随机码本的比例增大的量等于部分代数码本的尺寸削减的量。
根据该结构,即使随模式信息等来变化随机码本尺寸,也能够共用共同部分的角标,能够抑制模式信息等的差错的影响。
本发明的语音编码解码装置采用下述结构,随机码本由多个通道构成,限制上述音源脉冲的位置,使得防止在通道间音源脉冲重叠。
根据该结构,在音源区域中能够保证由各通道生成的矢量间的正交性,所以能够构成高效率的随机码本。
本发明的语音编码解码装置采用下述结构,包括:代数码本,存储音源矢量;扩展图案生成器,按照语音数据中的噪声区间的功率来生成扩展图案;和图案扩展器,按照上述扩展图案来扩展从上述代数码本输出的音源矢量的图案。
根据该结构,能够按照噪声功率来控制扩展图案的噪声性,所以能够实现对噪声电平顽健(ロバスト)的语音编码解码装置。
本发明的语音编码解码装置采用下述结构,其中,在平均噪声功率大的情况下,扩展图案生成器生成噪声性高的扩展图案,而在平均噪声功率小的情况下,生成噪声性低的扩展图案。
根据该结构,能够在噪声电平高的情况下表现更类似噪声的信号,而在噪声电平低的情况下表现更清晰(クリ一ン)的信号。
本发明的语音编码解码装置采用下述结构,扩展图案生成器按照语音数据的模式来生成扩展图案。
根据该结构,还能够按照模式在语音区间(浊音区间)使扩展图案的噪声性为中等以下,能够改善噪声中的语音品质。
以下,参照附图来详细说明本发明的实施例。
(实施例1)
图4是包括本发明的语音编码及/或解码装置的语音信号发送机及/或接收机的方框图。
在图4所示的语音信号发送机中,语音信号101由语音输入装置102变换为电模拟信号,输出到A/D变换器103。模拟语音信号由A/D变换器103变换为数字语音信号,输出到语音编码装置104。语音编码装置104进行语音编码处理,将编码过的信息输出到RF调制装置105。在RF调制装置105中,对编码过的语音信号进行调制、放大、代码扩展等用于作为电波发送的处理,将编码过的语音信号输出到发送天线1106。最后,从发送天线106送出电波(RF信号)。
另一方面,在接收机中,用接收天线107接收电波(RF信号)。接收信号被送至RF解调装置108。RF解调装置108进行代码解扩、解调等用于将电波信号变换为编码信息的处理,将编码信息输出到语音解码装置109。语音解码装置109进行编码信息的解码处理,将数字解码语音信号输出到D/A变换器110。D/A变换器110将从语音解码装置109输出的数字解码语音信号变换为模拟解码语音信号,输出到语音输出装置111。最后,语音输出装置将电模拟语音信号变换为解码语音并输出。
接着,说明具有上述结构的语音信号发送机及/或接收机中的噪声码矢量生成器。图5是实施例1的包括噪声码矢量生成器的语音编码装置的方框图。该图所示的语音编码装置包括:预处理器201、LPC分析器202、LPC量化器203、自适应码本204、乘法器205、部分代数码本206、乘法器207、加法器208、LPC合成滤波器209、加法器210、听觉加权器211、误差最小化器212。
在该噪声码矢量生成器中,输入语音数据是对语音信号进行A/D变换所得的数字信号,按处理单位时间(帧)输入到预处理器201。预处理器201对输入语音数据进行主观高品质化或用于变换为适合编码状态的信号的处理,例如进行用于切去直流分量的高通滤波处理或增强语音信号特征的预加重处理等。
预处理后的信号被输出到LPC-分析器202和加法器210。LPC分析器202用从预处理器201输入的信号进行LPC分析(线性预测分析),将所得的LPC(线性预测系数)输出到LPC量化器203。LPC量化器203对从LPC分析器202输入的LPC进行量化,将量化LPC输出到LPC合成滤波器209,将量化LPC的编码数据通过传输线路输出到编码器端。
自适应码本204是过去生成的激励矢量(从加法器208输出的矢量)的缓冲器,从误差最小化器212指定的位置取出自适应码矢量,输出到乘法器205。乘法器205将从自适应码本204输出的自适应码矢量乘以自适应码矢量增益,输出到加法器208。自适应码矢量增益由误差最小化器指定。部分代数码本206是具有后述图7、图13或与此类似结构的码本,将至少2个脉冲的位置接近的多个脉冲构成的噪声码矢量输出到乘法器207。
乘法器207将从部分代数码本206输出的噪声码矢量乘以噪声码矢量增益,输出到加法器208。加法器208通过进行从乘法器205输出的乘以自适应码矢量增益后的噪声码矢量和从乘法器207输出的乘以噪声码矢量增益后的噪声码矢量的矢量加法来生成激励矢量,输出到自适应码本204和LPC合成滤波器209。
输出到自适应码本204的激励矢量被用于更新自适应码本204的情况,而输出到LPC合成滤波器209的激励矢量被用于生成合成语音。LPC合成滤波器209是用从LPC量化器203输出的量化LPC构成的线性预测滤波器,用从加法器208输出的激励矢量来驱动LPC合成滤波器,将合成信号输出到加法器210。
加法器210计算从预处理器201输出的预处理后的输入语音信号和从LPC合成滤波器209输出的合成信号之间的差分(误差)信号,输出到听觉加权器211。听觉加权器211将从加法器210输出的差分信号作为输入,进行听觉加权,输出到误差最小化器212。误差最小化器212将从听觉加权器211输出的听觉加权后的差分信号作为输入,例如调整从噪声码本204中取出自适应码矢量的位置、根据部分代数码本206生成的噪声码矢量、用乘法器205所乘的自适应码矢量增益、和用乘法器207所乘的噪声码矢量增益的值,使其平方和最小,对它们进行编码,作为音源参数编码数据通过传输线路输出到解码器端。
图6是实施例1的包括噪声码矢量生成器的语音解码装置的方框图。该图所示的语音解码装置包括:LPC解码器301、音源参数解码器302、自适应码本303、乘法器304、部分代数码本305、乘法器306、加法器307、LPC合成滤波器308、后处理器309。
通过传输线路将LPC编码数据和音源参数编码数据以帧为单位分别输入到LPC解码器301和音源参数解码器302。LPC解码器301对量化LPC进行解码,输出到LPC合成滤波器308。在后处理器309使用量化LPC的情况下,也同时输出到后处理器309。音源参数解码器302将取出自适应码矢量的位置信息、自适应码矢量增益、指定噪声码矢量的角标信息、以及噪声码矢量增益分别输出到自适应码本303、乘法器304、部分代数码本305、和乘法器306。
自适应码本303是过去生成的激励矢量(从加法器307输出的矢量)的缓冲器,从由音源参数解码器302输入的取出位置取出自适应码矢量,输出到乘法器304。乘法器304将从自适应码本303输出的自适应码矢量乘以从音源参数解码器302输入的自适应码矢量增益,输出到加法器307。
部分代数码本305是具有后述图7、图13或与此类似结构的与图5的206所示相同的部分代数码本,将从音源参数解码器302输入的角标指定的至少2个脉冲的位置接近的几个脉冲构成的噪声码矢量输出到乘法器306。
乘法器306将从部分代数码本输出的噪声码矢量乘以从音源参数解码器302输入的噪声码矢量增益,输出到加法器307。加法器307通过进行从乘法器304输出的乘以自适应码矢量增益后的自适应码矢量、和从乘法器306输出的乘以噪声码矢量增益后的噪声码矢量的矢量加法来生成激励矢量,输出到自适应码本303和LPC合成滤波器308。
输出到自适应码本303的激励矢量被用于更新自适应码本303的情况,而输出到LPC合成滤波器308的激励矢量被用于生成合成语音。LPC合成滤波器308是用从LPC量化器301输出的量化LPC(从编码端发送的量化LPC的解码结果)构成的线性预测滤波器,用从加法器307输出的激励矢量来驱动LPC合成滤波器,将合成信号输出到后处理器309。
后处理器309对从LPC合成滤波器308输出的合成语音进行共振峰增强处理、音调增强处理、频谱倾斜校正处理等构成的后滤波处理或用于使平稳背景噪声更易听的处理等用于改善主观品质的处理,作为解码语音数据来输出。
接着,详细说明本发明的噪声码矢量生成器。图7是本发明实施例1的噪声码矢量生成装置的结构方框图。
第1脉冲产生器401在例如图8的图案(a)的脉冲号1的栏中所示的预定候选位置之一上放置第1脉冲,输出到加法器404。同时,第1脉冲产生器401将放置第1脉冲的位置信息(选择出的脉冲位置)输出到脉冲位置限定器402。脉冲位置限定器402从第1脉冲产生器401输入第1脉冲位置,以该位置为基准来决定第2脉冲的候选位置(选择第2脉冲位置)。
第2脉冲的候选位置例如如图8的图案(a)的脉冲号2的栏中所示用相对于第1脉冲位置(=P1)的相对表现来表示。脉冲位置限定器402将第2脉冲的候选位置输出到第2脉冲产生器403。第2脉冲产生器403在从脉冲位置限定器402输入的第2脉冲的候选位置之一上放置第2脉冲,输出到加法器404。
加法器404输入从第1脉冲产生器401输出的第1脉冲和从第2脉冲产生器403输出的第2脉冲,将2个脉冲构成的第1噪声码矢量输出到切换开关409。
另一方面,第2脉冲产生器407在例如图案(b)的脉冲号2的栏中所示的预定候选位置之一上放置第2脉冲,输出到加法器408。同时,第2脉冲产生器407将放置第2脉冲的位置信息输出到脉冲位置限定器406。脉冲位置限定器406从第2脉冲产生器407输入第2脉冲位置,以该位置为基准来决定第1脉冲的候选位置。
第1脉冲的候选位置例如如图案(b)的脉冲号1的栏中所示用相对于第2脉冲位置(=P1)的相对表现来表示。脉冲位置限定器406将第1脉冲的候选位置输出到第1脉冲产生器405。第1脉冲产生器405在从脉冲位置限定器406输入的第1脉冲的候选位置之一上放置第1脉冲,输出到加法器408。
加法器408输入从第1脉冲产生器405输出的第1脉冲和从第2脉冲产生器407输出的第2脉冲,将2个脉冲构成的第2噪声码矢量输出到切换开关409。
切换开关409选择从加法器404输出的第1噪声码矢量、和从加法器408输出的第2噪声码矢量中的某一个,作为最终的噪声码矢量410来输出。该选择由来自外部的控制来指定。
在2个脉冲中将一个如上所述用绝对位置来表示、将另一个如上所述用相对位置来表现的情况下,在用绝对位置表示的脉冲位于帧末尾附近的情况下,有时用相对位置来表现的脉冲超出帧外。因此,在实际的搜索算法中,考虑只将产生超出的组合的部分作为不同图案,如图8所示分为3种搜索位置图案(a~c)进行搜索。图8示出设帧长为80个样本(0~79)、在1帧中放置2个脉冲的情况的一例。根据图8所示的码本,能够只生成根据图1所示的代数码本能够生成的噪声码矢量的总项数的一部分。在此意义上,将图8所示的本发明的代数码本称为部分代数码本。
以下参照图9~图11来说明使用图8的码本的上述实施例中噪声码矢量生成方法(编码方法、噪声码本搜索方法)的处理流程。在图9中具体示出假定脉冲的极性(+、-)被另外编码、只对脉冲位置进行编码的情况。
首先,在步骤(以下简称为ST)601中,进行循环变量i、误差函数最大值Max、角标idx、输出角标index、第1脉冲位置position1、第2脉冲位置position2的初始化。
这里,循环变量i被用作用绝对位置来表现的脉冲的循环变量,初始值是0。误差函数最大值Max被初始化为能够表现的最小值(例如“-10^32”),用于进行搜索循环中计算的误差评价函数的最大化。角标idx是赋予通过本噪声码矢量生成方法生成的各个码矢量的角标,初始值是0,每当将脉冲位置改变一个时被增量。index是最终输出的噪声码矢量的角标,position1是最终决定的第1脉冲的位置,position2是最终决定的第2脉冲的位置。
接着,在ST602中,将第1脉冲位置(p1)设置到pos1a[j]。pos1a[]是图8的图案(a)的脉冲号1的栏中所示的位置(0、2、..、72)。这里,第1脉冲是用绝对位置来表现的脉冲。
接着,在ST603中进行循环变量j的初始化。循环变量j是用相对位置来表现的脉冲的循环变量,初始值是0。这里,第2脉冲用相对位置来表现。
接着,在ST604中,将第2脉冲位置(p2)设置到p1+pos2a[j]。p1是已经在ST602中设置的第1脉冲位置,pos2a[4]={1、3、5、7}。通过减少pos2a[]的元素数,能够减少部分代数码本的尺寸(噪声码矢量的总项数)。在此情况下,需要按照减少的数目来变更图8的图案(c)的内容。此外,增加的情况也同样。
接着,在ST605中,进行在设置的2个脉冲位置上放置脉冲的情况下的误差评价函数E的计算。误差评价函数用于评价目标矢量和由噪声码矢量合成的矢量之间的误差,例如使用下述式(1)。像CELP编码器中一般常用的那样,在将噪声码矢量相对于自适应码矢量正交化的情况下,使用将式(1)变形所得的式子。在式(1)的值达到最大时目标矢量和用噪声码矢量驱动合成滤波器所得的合成矢量之间的误差达到最小。
式(1)
( x ′ Hci ) ci ′ H ′ Hci 2
x:目标矢量
H:合成滤波器的冲击卷积矩阵
c:噪声码矢量(i是角标号)
接着,在ST606中,进行误差评价函数E的值是否超过误差评价函数最大值Max的判定。如果E值超过最大值Max,则进至ST607,而如果未超过,则跳过ST607而进至ST608。
在ST607中,进行index、Max、position1和position2的更新。即,将误差评价函数最大值Max更新为在ST605中算出的误差评价函数E,将index更新为idx,将position1更新为第1脉冲的位置p1,将position2更新为第2脉冲的位置p2。
接着,在ST608中,将循环变量j和角标号idx分别增量。通过将循环变量j增量来移动第2脉冲的位置,评价下一个角标号的噪声码矢量。
接着,在ST609中,进行循环变量j是否不足第2脉冲的候选位置的总数NUM2a的检查。在图8所示的部分代数码本中,NUM2a=4。在循环变量j不足NUM2a的情况下,为了重复j的循环而返回到ST604。如果循环变量j达到NUM2a,则j的循环结束,进至ST610。
在ST610中,进行循环变量i的增量。通过将循环变量i增量来移动第1脉冲的位置,评价下一个角标号的噪声码矢量。
接着,在ST611中,进行循环变量i是否不足第1脉冲的候选位置的总数NUM1a的检查。在图8所示的部分代数码本中,NUM1a=37。在循环变量i不足NUM1a的情况下,为了重复i的循环而返回到ST602。如果循环变量i达到NUM1a,则i的循环结束,进至图10的ST701。在进至ST612的时刻,图8的图案(a)的搜索结束,开始图案(b)的搜索循环。
接着,在ST701中,循环变量i被清除,成为0。在ST702中,将第2脉冲位置(p2)设置到pos2b[i]。pos2b[]是图案(b)的脉冲号2的栏中所示的位置(1、3、..、61)。这里,第2脉冲是用绝对位置来表现的脉冲。
接着,在ST703中进行循环变量j的初始化。循环变量j是用相对位置来表现的脉冲的循环变量,初始值是0。这里,第1脉冲用相对位置来表现。
接着,在ST704中,将第1脉冲位置(p1)设置到p2+pos1b[j]。p2是已经在ST702中设置的第2脉冲位置,pos1b[4]={1、3、5、7}。通过减少pos1b[]的元素数,能够减少部分代数码本的尺寸(噪声码矢量的总项数)。在此情况下,需要按照减少的数目来变更图8的图案(c)的内容。此外,增加pos1b[]的元素数的情况也同样。
接着,在ST705中,进行在设置的2个脉冲位置上放置脉冲的情况下的误差评价函数E的计算。误差评价函数用于评价目标矢量和由噪声码矢量合成的矢量之间的误差,例如使用式(1)。像CELP编码器中一般常用的那样,在将噪声码矢量相对于自适应码矢量正交化的情况下,使用将式(1)变形所得的式子。在式(1)的值达到最大时目标矢量和用噪声码矢量驱动合成滤波器所得的合成矢量之间的误差达到最小。
接着,在ST706中,进行误差评价函数E的值是否超过误差评价函数最大值Max的判定。如果E值超过最大值Max,则进至ST707,而如果未超过,则跳过ST707而进至ST708。
在ST707中,进行index、Max、position1和position2的更新。即,将误差评价函数最大值Max更新为在ST705中算出的误差评价函数E,将index更新为idx,将position1更新为第1脉冲的位置p1,将position2更新为第2脉冲的位置p2。
接着,在ST708中,将循环变量j和角标号idx分别增量。通过将循环变量j增量来移动第1脉冲的位置,评价下一个角标号的噪声码矢量。
接着,在ST709中,进行循环变量j是否不足第1脉冲的候选位置的总数NUM1b的检查。在图8所示的部分代数码本中,NUM1b=4。在循环变量j不足NUM1b的情况下,为了重复j的循环而返回到ST704。如果循环变量j达到NUM1b,则j的循环结束,进至ST710。
在ST710中,进行循环变量i的增量。通过将循环变量i增量来移动第2脉冲的位置,评价下一个角标号的噪声码矢量。
接着,在ST711中,进行循环变量i是否不足第2脉冲的候选位置的总数NUM2b的检查。在图8所示的部分代数码本中,NUM2b=36。在循环变量i不足NUM2b的情况下,为了重复i的循环而返回到ST702。如果循环变量i达到NUM2b,则i的循环结束,进至图11的ST801。在进至ST801的时刻,图案(b)的搜索结束,开始图案(c)的搜索循环。
在ST801中,循环变量i被清除,成为0。在ST802中,将第1脉冲位置(p1)设置到pos1c[i]。pos1c[]是图案(c)的脉冲号1的栏中所示的位置(74、76、78)。这里,第1、第2两个脉冲都用绝对位置来表现。
接着,在ST803中进行循环变量j的初始化。循环变量j是第2脉冲的循环变量,初始值是0。
接着,在ST804中,将第2脉冲位置(p2)设置到pos2c[j]。pos2c[]是图5(c)的脉冲号2的栏中所示的位置{73、75、77、79}。
接着,在ST805中,进行在设置的2个脉冲位置上放置脉冲的情况下的误差函数E的计算。误差函数用于评价目标矢量和由噪声码矢量合成的矢量之间的误差,例如使用式(1)所示的式子。像CELP编码器中一般常用的那样,在将噪声码矢量相对于自适应码矢量正交化的情况下,使用将式(1)变形所得的式子。在式(1)的值达到最大时目标矢量和用噪声码矢量驱动合成滤波器所得的合成矢量之间的误差达到最小。
接着,在ST806中,进行误差评价函数E的值是否超过误差评价函数最大值Max的判定。如果E值超过最大值Max,则进至ST807,而如果未超过,则跳过ST807而进至ST808。在ST807中,进行index、Max、position1和position2的更新。即,将误差评价函数最大值Max更新为在ST805中算出的误差评价函数E,将index更新为idx,将position1更新为第1脉冲的位置p1,将position2更新为第2脉冲的位置p2。
接着,在ST808中,将循环变量j和角标号idx分别增量。通过将循环变量j增量来移动第2脉冲的位置,评价下一个角标号的噪声码矢量。
接着,在ST809中,进行循环变量j是否不足第1脉冲的候选位置的总数NUM2c的检查。在图8所示的部分代数码本中,NUM2c=4。在循环变量j不足NUM2c的情况下,为了重复j的循环而返回到ST804。如果循环变量j达到NUM2c,则j的循环结束,进至ST810。
在ST810中,进行循环变量i的增量。通过将循环变量i增量来移动第1脉冲的位置,评价下一个角标号的噪声码矢量。
接着,在ST811中,进行循环变量i是否不足第1脉冲的候选位置的总数NUM1c的检查。在图8所示的部分代数码本中,NUM1c=3。在循环变量i不足NUM1c的情况下,为了重复i的循环而返回到ST802。如果循环变量i达到NUM1c,则i的循环结束,进至ST812。在进至ST812的时刻,图案(c)的搜索结束,全部搜索结束。
最后,在ST812中,输出作为搜索结果的index。与index对应的2个脉冲位置position1和position2没有必要输出,但是可以用于局部解码。各脉冲的极性(+或-)可以通过与式(1)中的矢量xH一致(通过只考虑式(1)中的xH和c的相关为正时)来预先决定,所以在上述实施例中省略了。
以下参照图12来说明使用图8码本的上述实施例中的噪声码矢量生成方法(解码方法)的处理流程。在图12中具体示出假定脉冲的极性(+、-)被另外编码、只对脉冲位置进行编码的情况。
首先,在ST901中,检查从编码器接受的噪声码矢量的角标index是否不足IDX1。IDX1是图8的码本中图案(a)的部分的码本尺寸,是图9的ST601时刻的idx的值。更具体地说,IDX1=32×4=128。如果index不足IDX1,则由于2个脉冲位置是用图案(a)来表现的部分,所以进至ST602。在index在IDX1以上的情况下,由于为图案(b)或(c)的部分,所以为了再次进行检查,而进至ST905。
在ST902中,求将index除以Num2a所得的商idx1。idx1为第1脉冲的角标号。在ST902中,int()是求()内的整数部分的函数。
接着,在ST903中,求将index除以Num2a所得的余数idx2。idx2是第2脉冲的角标号。
接着,在ST904中,分别用图案(a)的码本来决定使用ST902求出的idx1的第1脉冲的位置position1、使用ST903求出的idx2的第2脉冲的位置position2。决定的position1和position2被用于ST914。
在ST901中index在IDX1以上的情况下,进至ST905。在ST905中,检查index是否不足IDX2。IDX2是将图8的码本中的图案(a)的部分和图案(b)的部分合起来的码本尺寸,是图9的ST801时刻的idx的值。更具体地说,IDX2=32×4+31×4=252。如果index不足IDX2,则由于2个脉冲位置是用图案(b)来表现的部分,所以进至ST906。在index在IDX2以上的情况下,由于是用图案(c)来表现的部分,所以进至ST910。
在ST906中,从index中减去IDX1,进至ST907。在ST907中,求将减去IDX1后的index除以Num1b所得的商idx2。该idx2是第2脉冲的角标号。在ST907中,int()是求()内的整数部分的函数。
接着,在ST908中,求将减去IDX1后的index除以Num1b所得的余数idx1。idx1是第1脉冲的角标号。
接着,在ST909中,分别用图案(b)的码本来决定使用ST907求出的idx2的第2脉冲的位置position2、使用ST908求出的idx1的第1脉冲的位置position1。决定的position1和position2被用于ST914。
在ST905中index在IDX2以上的情况下,进至ST910。在ST910中,从index中减去IDX2,进至ST911。在ST911中,求将减去IDX2后的index除以Num2c所得的商idx1。该idx1是第1脉冲的角标号。在ST911中,int()是求()内的整数部分的函数。
接着,在ST912中,求将减去IDX2后的index除以Num2c所得的余数idx2。idx2是第2脉冲的角标号。
接着,在ST913中,分别用图案(c)的码本来决定使用ST911求出的idx1的第1脉冲的位置position1、使用ST912求出的idx2的第2脉冲的位置position2。决定的position1和position2被用于ST914。
在ST914中,用第1脉冲的位置position1和第2脉冲的位置position2来生成噪声码矢量code[]。即,生成code[position1]和code[position2]以外是0的矢量。code[position1]和code[position2]通过另外解码的极性sign1和sign2而成为+1或1(sign1及sign2取+01或1的值)。code[]是被解码的噪声码矢量。
接着,脉冲数是3个的部分代数码本的结构例示于图13。
图13中的结构例采用下述结构:限定脉冲搜索位置,使得在3个中至少2个被配置在接近的位置上。与该结构对应的码本示于图14。
以下用图13加以说明。第1脉冲产生器1001例如在图14的图案(a)的脉冲号1的栏中所示的预定候选位置之一上放置第1脉冲,输出到加法器1005。同时,第1脉冲产生器1001将放置第1脉冲的位置信息输出到脉冲位置限定器1002。脉冲位置限定器1002从第1脉冲产生器1001输入第1脉冲的位置信息,以该位置为基准来泱定第2脉冲的候选位置。第2脉冲的候选位置例如如图案(a)的脉冲号2的栏中所示用相对于第1脉冲的位置(=P1)的相对表现来表示。
脉冲位置限定器1002将第2脉冲的候选位置输出到第2脉冲产生器1003。第2脉冲产生器1003在从脉冲位置限定器1002输入的第2脉冲的候选位置之一上放置第2脉冲,输出到加法器1005。第3脉冲产生器1004例如在图案(a)的脉冲号3的栏中所示的预定候选位置之一上放置第3脉冲,输出到加法器1005。加法器1005进行从1001、1003、1004各脉冲产生器输出的合计3个冲击矢量的矢量加法,将3个脉冲构成的噪声码矢量输出到切换开关1031。
第1脉冲产生器1006例如在图案(d)的脉冲号1的栏中所示的预定候选位置之一上放置第1脉冲,输出到加法器1010。同时,第1脉冲产生器1006将放置第1脉冲的位置信息输出到脉冲位置限定器1007。脉冲位置限定器1007从第1脉冲产生器1006输入第1脉冲的位置信息,以该位置为基准来决定第3脉冲的候选位置。第3脉冲的候选位置例如如图案(d)的脉冲号3的栏中所示用相对于第1脉冲的位置(=P1)的相对表现来表示。
脉冲位置限定器1007将第3脉冲的候选位置输出到第3脉冲产生器1008。第3脉冲产生器1008在从脉冲位置限定器1007输入的第3脉冲的候选位置之一上放置第3脉冲,输出到加法器1010。第2脉冲产生器1009例如在图案(d)的脉冲号2的栏中所示的预定候选位置之一上放置第2脉冲,输出到加法器1010。加法器1010进行从1006、1008、1009各脉冲产生器输出的合计3个冲击矢量的矢量加法,将3个脉冲构成的噪声码矢量输出到切换开关1031。
第3脉冲产生器1011例如在图案(b)的脉冲号3的栏中所示的预定候选位置之一上放置第3脉冲,输出到加法器1015。第2脉冲产生器1012例如在图案(b)的脉冲号2的栏中所示的预定候选位置之一上放置第2脉冲,输出到加法器1015。同时,第2脉冲产生器1012将放置第2脉冲的位置输出到脉冲位置限定器1013。脉冲位置限定器1013从第2脉冲产生器1012输入第2脉冲的位置,以该位置为基准来决定第1脉冲的候选位置。第1脉冲的候选位置例如如图案(b)的脉冲号1的栏中所示用相对于第2脉冲的位置(=P2)的相对表现来表示。
脉冲位置限定器1013将第1脉冲的候选位置输出到第1脉冲产生器1014。第1脉冲产生器1014在从脉冲位置限定器1013输入的第1脉冲的候选位置之一上放置第1脉冲,输出到加法器1015。加法器1015进行从1011、1012、1014各脉冲产生器输出的合计3个冲击矢量的矢量加法,将3个脉冲构成的噪声码矢量输出到切换开关1031。
第1脉冲产生器1016例如在图案(g)的脉冲号1的栏中所示的预定候选位置之一上放置第1脉冲,输出到加法器1020。第2脉冲产生器1017例如在图案(g)的脉冲号2的栏中所示的预定候选位置之一上放置第2脉冲,输出到加法器1020。同时,第2脉冲产生器1017将放置第2脉冲的位置输出到脉冲位置限定器1018。脉冲位置限定器1018从第2脉冲产生器1017输入第2脉冲的位置,以该位置为基准来决定第3脉冲的候选位置。第3脉冲的候选位置例如如图案(g)的脉冲号3的栏中所示用相对于第2脉冲的位置(=P2)的相对表现来表示。
脉冲位置限定器1018将第3脉冲的候选位置输出到第3脉冲产生器1019。第3脉冲产生器1019在从脉冲位置限定器1018输入的第3脉冲的候选位置之一上放置第3脉冲,输出到加法器1020。加法器1020进行从1016、1017、1019各脉冲产生器输出的合计3个冲击矢量的矢量加法,将3个脉冲构成的噪声码矢量输出到切换开关1031。
第2脉冲产生器1021例如在图案(e)的脉冲号2的栏中所示的预定候选位置之一上放置第2脉冲,输出列加法器1025。第3脉冲产生器1024例如在图案(e)的脉冲号3的栏中所示的预定候选位置之一上放置第3脉冲,输出到加法器1025。同时,第3脉冲产生器1024将放置第3脉冲的位置输出到脉冲位置限定器1023。脉冲位置限定器1023从第3脉冲产生器1024输入第3脉冲的位置,以该位置为基准来决定第1脉冲的候选位置。第1脉冲的候选位置例如如图案(e)的脉冲号1的栏中所示用相对于第3脉冲的位置(=P3)的相对表现来表示。
脉冲位置限定器1023将第1脉冲的候选位置输出到第1脉冲产生器1022。第1脉冲产生器1022在从脉冲位置限定器1023输入的第1脉冲的候选位置之一上放置第1脉冲,输出到加法器1025。加法器1025进行从1021、1022、1024各脉冲产生器输出的合计3个冲击矢量的矢量加法,将3个脉冲构成的噪声码矢量输出到切换开关1031。
第1脉冲产生器1026例如在图案(h)的脉冲号1的栏中所示的预定候选位置之一上放置第1脉冲,输出到加法器1030。第3脉冲产生器1029例如在图案(h)的脉冲号3的栏中所示的预定候选位置之一上放置第3脉冲,输出到加法器1030。同时,第3脉冲产生器1029将放置第3脉冲的位置输出到脉冲位置限定器1028。脉冲位置限定器1028从第3脉冲产生器1029输入第3脉冲的位置,以该位置为基准来决定第2脉冲的候选位置。第2脉冲的候选位置例如如图案(h)的脉冲号2的栏中所示用相对于第3脉冲的位置(=P3)的相对表现来表示。
脉冲位置限定器1028将第2脉冲的候选位置输出到第2脉冲产生器1027。第2脉冲产生器1027在从脉冲位置限定器1028输入的第2脉冲的候选位置之一上放置第2脉冲,输出到加法器1030。加法器1030进行从1026、1027、1029各脉冲产生器输出的合计3个冲击矢量的矢量加法,将3个脉冲构成的噪声码矢量输出到切换开关1031。
切换开关1031从1005、1010、1015、1020、1025、1030各加法器输入的、合计6种噪声码矢量中选择1个,输出噪声码矢量1032。该选择由来自外部的控制来指定。
在图8及图14中,假定用相对位置来表现的脉冲超出帧外的情况,设有图8的图案(c)和图14的图案(c)、(f)、(i),但是由于用绝对位置来表现的脉冲的候选位置的范围偏向帧的前方,所以在用相对位置来表现的脉冲不会超出帧外的情况下,可以省略这些部分(图8的图案(c)等)。
(实施例2)
图15是实施例2的包括噪声码矢量生成器的语音编码装置的结构方框图。该图所示的语音编码装置包括:预处理器1201、LPC分析器1202、LPC量化器1203、自适应码本1204、乘法器1205、部分代数码本和随机码本构成的噪声码本1206、乘法器1207、加法器1208、LPC合成滤波器1209、加法器1210、听觉加权器1211、误差最小化器1212。
在该语音编码装置中,输入语音数据是对语音信号进行A/D变换所得的数字信号,按处理单位时间(帧)输入到预处理器1201。预处理器1201对输入语音数据进行主观高品质化或用于变换为适合编码状态的信号的处理,例如进行用于切去直流分量的高通滤波处理或增强语音信号特征的预加重处理等。
预处理后的信号被输出到LPC分析器1202和加法器1210。LPC分析器1202用从预处理器1201输入的信号进行LPC分析(线性预测分析),将所得的LPC(线性预测系数)输出到LPC量化器1203。LPC量化器1203对从LPC分析器1202输入的LPC进行量化,将量化LPC输出到LPC合成滤波器1209,将量化LPC的编码数据通过传输线路输出到编码器端。
自适应码本1204是过去生成的激励矢量(从加法器1208输出的矢量)的缓冲器,从误差最小化器1212指定的位置取出自适应码矢量,输出到乘法器1205。乘法器1205将从自适应码本1204输出的自适应码矢量乘以自适应码矢量增益,输出到加法器1208。自适应码矢量增益由误差最小化器指定。
部分代数码本和随机码本构成的噪声码本1206是具有后述图17所示结构的码本,将至少2个脉冲的位置接近的多个脉冲构成的噪声码矢量或稀疏率(スパ一ス率)(振幅为零的样本数占整个帧的样本数的比例)在90%左右以下的噪声码矢量中的某个输出到乘法器1207。
乘法器1207将从部分代数码本和随机码本构成的噪声码本1206输出的噪声码矢量乘以噪声码矢量增益,输出到加法器1208。加法器1208通过进行从乘法器1205输出的乘以自适应码矢量增益后的噪声码矢量和从乘法器1207输出的乘以噪声码矢量增益后的噪声码矢量的矢量加法来生成激励矢量,输出到自适应码本1204和LPC合成滤波器1209。
输出到自适应码本1204的激励矢量被用于更新自适应码本1204,而输出到LPC合成滤波器1209的激励矢量被用于生成合成语音。LPC合成滤波器1209是用从LPC量化器1203输出的量化LPC构成的线性预测滤波器,用从加法器1208输出的激励矢量来驱动LPC合成滤波器,将合成信号输出到加法器1210。加法器1210计算从预处理器1201输出的预处理后的输入语音信号和从LPC合成滤波器1209输出的合成信号之间的差分(误差)信号,输出到听觉加权器1211。
听觉加权器1211将从加法器1210输出的差分信号作为输入,进行听觉加权,输出到误差最小化器1212。误差最小化器1212将从听觉加权器1211输出的听觉加权后的差分信号作为输入,例如调整从自适应码本1204中取出自适应码矢量的位置、根据部分代数码本和随机码本构成的噪声码本1206生成的噪声码矢量、用乘法器1205所乘的自适应码矢量增益、和用乘法器1207所乘的噪声码矢量增益的值,使其平方和最小,对它们进行编码,作为音源参数编码数据1214通过传输线路输出到解码器端。
图16是实施例2的包括噪声码矢量生成器的语音解码装置的方框图。该图所示的语音解码装置包括:LPC解码器1301、音源参数解码器1302、自适应码本1303、乘法器1304、部分代数码本和随机码本构成的噪声码本1305、乘法器1306、加法器1307、LPC合成滤波器1308、后处理器1309。
在该语音解码装置中,通过传输线路将LPC编码数据和音源参数编码数据以帧为单位分别输入到LPC解码器1301和音源参数解码器1302。LPC解码器1301对量化LPC进行解码,输出到LPC合成滤波器1308。在后处理器1309使用量化LPC的情况下,量化LPC也同时从LPC解码器1301输出到后处理器1309。音源参数解码器1302将取出自适应码矢量的位置信息、自适应码矢量增益、指定噪声码矢量的角标信息、以及噪声码矢量增益分别输出到自适应码本1303、乘法器1304、部分代数码本和随机码本构成的噪声码本1305、和乘法器1306。
自适应码本1303是过去生成的激励矢量(从加法器1307输出的矢量)的缓冲器,从由音源参数解码器1302输入的取出位置取出自适应码矢量,输出到乘法器1304。乘法器1304将从自适应码本1303输出的自适应码矢量乘以从音源参数解码器1302输入的自适应码矢量增益,输出到加法器1307。
部分代数码本和随机码本构成的噪声码本1305是具有图17所示结构的噪声码本,是与图15的1206所示的相同的噪声码本,将从音源参数解码器1302输入的角标指定的至少2个脉冲的位置接近的几个脉冲构成的噪声码矢量或稀疏率在90%左右以下的噪声码矢量中的某个输出到乘法器1306。
乘法器1306将从部分代数码本输出的噪声码矢量乘以从音源参数解码器1302输入的噪声码矢量增益,输出到加法器1307。加法器1307通过进行从乘法器1304输出的乘以自适应码矢量增益后的自适应码矢量、和从乘法器1306输出的乘以噪声码矢量增益后的噪声码矢量的矢量加法来生成激励矢量,输出到自适应码本1303和LPC合成滤波器1308。
输出到自适应码本1303的激励矢量被用于更新自适应码本1303的情况,而输出到LPC合成滤波器1308的激励矢量被用于生成合成语音。LPC合成滤波器1308是用从LPC量化器1301输出的量化LPC构成的线性预测滤波器,用从加法器1307输出的激励矢量来驱动LPC合成滤波器,将合成信号输出到后处理器1309。
后处理器1309对从LPC合成滤波器1308输出的合成语音进行共振峰增强处理、音调增强处理、频谱倾斜校正处理等构成的后滤波处理或用于使平稳背景噪声更易听的处理等用于改善主观品质的处理,作为解码语音数据来输出。
图17示出本发明实施例2的噪声码矢量生成装置的结构。该图所示的噪声码矢量生成装置包括实施例所示的部分代数码本1401和随机码本1402。
部分代数码本1401生成2个以上单位脉冲构成的至少2个脉冲接近的噪声码矢量,输出到切换开关1403。部分代数码本1401的噪声码矢量的生成方法具体示于实施例1。
随机码本1402存储比根据部分代数码本1401生成的噪声码矢量更多脉冲个数构成的噪声码矢量,从存储的噪声码矢量中选一个矢量,输出到切换开关1403。
随机码本1402由多个通道构成比使用单独的码本在运算量、存储量方面更有利。此外,2个脉冲接近的噪声码矢量可以由部分代数码本1401来生成,所以通过将所有脉冲都不接近、脉冲均等地放置在整个帧上的噪声码矢量存储到随机码本1402中,能够改善清音辅音或平稳噪声的性能。
此外,在帧长为80个样本的情况下,为了减少运算量,随机码本1401存储的噪声码矢量的脉冲个数最好为8~16个左右。在此情况下,如果使随机码本1401为2通道结构,则存储各通道4~8个左右的脉冲构成的矢量即可。此外,在这种稀疏矢量中,通过使各脉冲的振幅为+1或-1,能够进一步节约运算量、存储量。
切换开关1403根据来自外部的控制(例如在将本噪声码矢量用于编码器的情况下,受进行与目标之间的误差最小化的模块控制,而在用于解码器的情况下则由解码过的噪声码矢量的角标控制)来选择从部分代数码本1401输出的噪声码矢量和从随机码本1402输出的噪声码矢量中的某个,作为噪声码矢量生成器的输出噪声码矢量1404来输出。
这里,从部分代数码本1402输出的噪声码矢量和从随机码本1401输出的噪声码矢量的比例(随机∶代数)最好是1∶1~2∶1,即随机50~66%、代数34~50%。
以下参照图18来说明上述实施例中噪声码矢量生成方法(编码方法、噪声码本搜索方法)的处理流程。首先,在ST1501中进行部分代数码本的搜索。具体的搜索方法的细节如实施例1所示,通过进行式(1)的最大化来实现。部分代数码本的尺寸是IDXa,在本步骤中,决定来自部分代数码本中的最佳候选的角标index(0≤index<IDXa)。
接着,在ST1502中进行随机码本的搜索。随机码本的搜索采用在CELP编码器中一般采用的方法来进行。具体地说,对随机码本中存储的所有噪声码矢量,计算式(1)所示的评价式,决定与达到最大的矢量对应的角标index。只是,由于已经在ST1501中进行了式(1)的最大化,所以只在超过ST1501中泱定的式(1)的最大值的噪声码矢量存在的情况下,将ST1501中决定的index更新为新的角标index(IDXa≤index<(IDXa+IDXr))。在超过ST1501中决定的式(1)的最大值的噪声码矢量未被存储在随机码本中的情况下,将ST1501中泱定的编码数据(角标index)作为噪声码矢量的编码信息来输出。
以下参照图19来说明上述实施例中的噪声码矢量生成方法(解码方法)的处理流程。
首先在ST1601中,判定从编码器传输、解码过的噪声码矢量的编码信息index是否不足IDXa。IDXa是部分噪声码本的尺寸。本噪声码矢量生成器根据尺寸为IDXa的部分代数码本和尺寸为IDXr的随机码本构成的噪声码本来生成噪声码矢量,本噪声码本在角标0~(IDXa-1)上包括部分代数码本,在IDXa~(IDXa+IDXr-1)上包括随机码本。因此,因此,如果接受到的index不足IDXa,则根据部分代数码本来生成噪声码矢量,而如果在IDXa以上(不足(IDXa+IDXr)),则根据随机码本来生成噪声码矢量。在本步骤中,如果index不足IDXa,则进至ST1602,而如果在IDXa以上,则进至ST1604。
在ST1602中,进行部分代数码本参数的解码。具体的解码方法示于实施例1。例如在脉冲为2个的情况下,根据角标index对第1脉冲的位置position1和第2脉冲的位置position2进行解码。此外,在脉冲的极性信息也包含在index中的情况下,对第1脉冲的极性sign1和第2脉冲的极性sign2也一并进行解码。这里,sign1及sign2是+1或-1。
接着在ST1603中,根据解码过的部分代数码本参数来生成噪声码矢量。具体地说,例如在脉冲为2个的情况下,将下述矢量code[0~Num-1]作为噪声码矢量来输出:在position1的位置上放置极性为sign1、振幅为1的脉冲,在position2的位置上放置极性为sign2、振幅为1的脉冲,其他点全部为0。这里,Num是帧长或噪声码矢量长(样本)。
另一方面,在ST1601中,在index在IDXa以上的情况下,进至ST1604。在ST1604中,从index中减去IDXa。这只是为了将index变换到0~IDXr-1的范围。这里,IDXr是随机码本的尺寸。
接着在ST1605中,进行随机码本参数的解码。具体地说,例如在2通道结构的随机码本的情况下,根据index对第1通道的随机码本角标indexR1和第2通道的随机码本角标indexR2进行解码。此外,在index中包含各通道的极性信息的情况下,对第1通道的极性sign1和第2通道的极性sign2也一并进行解码。sign1及sign2是+1或1。
接着在ST1606中,根据解码过的随机码本参数来生成噪声码矢量。具体地说,例如在随机码本是2通道结构的情况下,从第1通道RCB1中取出RCB1[indexR1][0~Num-1],从第2通道RCB2中取出RCB2[indexR2][0~Num-1],将2个矢量相加之和作为噪声码矢量code[0~Num-1]来输出。这里,Num是帧长或噪声码矢量长(样本)。
(实施例3)
图20是实施例3的包括噪声码矢量生成器的语音编码装置的结构方框图。该图所示的语音编码装置包括:预处理器1701、LPC分析器1702、LPC量化器1703、自适应码本1704、乘法器1705、部分代数码本和随机码本构成的噪声码本1706、乘法器1707、加法器1708、LPC合成滤波器1709、加法器1710、听觉加权器1711、误差最小化器1712、模式判定器713。
在该语音编码装置中,输入语音数据是对语音信号进行A/D变换所得的数字信号,按处理单位时间(帧)输入到预处理器1701。预处理器1701对输入语音数据进行主观高品质化或用于变换为适合编码状态的信号的处理,例如进行用于切去直流分量的高通滤波处理或增强语音信号特征的预加重处理等。
预处理后的信号被输出到LPC分析器1702和加法器1710。LPC分析器1702用从预处理器1701输入的信号进行LPC分析(线性预测分析),将所得的LPC(线性预测系数)输出到LPC量化器1703。LPC量化器1703对从LPC分析器1702输入的LPC进行量化,将量化LPC输出到LPC合成滤波器1709及模式判定器1713,将量化LPC的编码数据通过传输线路输出到编码器端。
模式判定器1713利用输入的量化LPC的动态及静态特征等来进行语音区间和非语音区间或浊音区间和清音区间的划分(模式判定),将判定结果输出到部分代数码本和随机码本构成的噪声码本1716。更具体地说,通过使用量化LPC的动态特征来进行语音区间/非语音区间的划分,通过使用量化LPC的静态特征来进行浊音区间/清音区间的划分。作为量化LPC的动态特征,可以使用帧间的变动量或过去判定为非语音区间的区间中的平均量化LPC和当前帧中的量化LPC之间的距离(差)等。此外,作为量化LPC的静态特征,可以使用1次反射系数等。
量化LPC通过变换为LSP、反射系数、LPC预测残差功率等其他域的参数,可以更有效地利用。此外,在能够传输模式信息的情况下,也可以不仅根据量化LPC来进行模式判定,而且利用分析输入语音数据所得的各种参数来进行更正确更细致的模式判定。在此情况下,模式信息被编码,与LPC编码数据1714及音源参数编码数据1715一起通过传输线路输出到解码器端。
自适应码本1704是过去生成的激励矢量(从加法器1708输出的矢量)的缓冲器,从误差最小化器1712指定的位置取出自适应码矢量,输出到乘法器1705。乘法器1705将从自适应码本1704输出的自适应码矢量乘以自适应码矢量增益,输出到加法器1708。
自适应码矢量增益由误差最小化器指定。部分代数码本和随机码本构成的噪声码本1706是根据从模式判定器1713输入的模式信息来切换部分代数码本和随机码本的比率的噪声码本,如图12所示,具有根据模式信息来自适应地控制(切换)部分代数码本的项数和随机码本的项数的结构,将至少2个脉冲的位置接近的多个脉冲构成的噪声码矢量或稀疏率(振幅为零的样本数占整个帧的样本数的比例)在90%左右以下的噪声码矢量中的某个输出到乘法器1707。
乘法器1707将从部分代数码本和随机码本构成的噪声码本1706输出的噪声码矢量乘以噪声码矢量增益,输出到加法器1708。加法器1708通过进行从乘法器1705输出的乘以自适应码矢量增益后的噪声码矢量和从乘法器1707输出的乘以噪声码矢量增益后的噪声码矢量的矢量加法来生成激励矢量,输出到自适应码本1704和LPC合成滤波器1709。
输出到自适应码本1704的激励矢量被用于更新自适应码本1704,而输出到LPC合成滤波器1709的激励矢量被用于生成合成语音。LPC合成滤波器1709是用从LPC量化器1703输出的量化LPC构成的线性预测滤波器,用从加法器1708输出的激励矢量来驱动LPC合成滤波器,将合成信号输出到加法器1710。
加法器1710计算从预处理器1701输出的预处理后的输入语音信号和从LPC合成滤波器1709输出的合成信号之间的差分(误差)信号,输出到听觉加权器1711。听觉加权器1711将从加法器1710输出的差分信号作为输入,进行听觉加权,输出到误差最小化器1712。
误差最小化器1712将从听觉加权器1711输出的听觉加权后的差分信号作为输入,例如调整从噪声码本1704中取出自适应码矢量的位置、根据部分代数码本和随机码本构成的噪声码本1706生成的噪声码矢量、用乘法器1705所乘的自适应码矢量增益、和用乘法器1707所乘的噪声码矢量增益的值,使其平方和最小,对它们进行编码,作为音源参数编码数据通过传输线路输出到解码器端。
图21示出实施例3的包括噪声码矢量生成器的语音解码装置。该图所示的语音解码装置包括:LPC解码器1801、音源参数解码器1802、自适应码本1803、乘法器1804、部分代数码本和随机码本构成的噪声码本1805、乘法器1806、加法器1807、LPC合成滤波器1808、后处理器1809、模式判定器1810。
在该语音解码装置中,通过传输线路将LPC编码数据和音源参数编码数据以帧为单位分别输入到LPC解码器1801和音源参数解码器1802。LPC解码器1801对量化LPC进行解码,输出到LPC合成滤波器1808及模式判定器1810。在后处理器1809使用量化LPC的情况下,量化LPC也同时从LPC解码器输出到后处理器1809。模式判定器1810与图20的模式判定器1713结构相同,利用输入的量化LPC的动态及静态特征等来进行语音区间和非语音区间或浊音区间和清音区间的划分(模式判定),将判定结果输出到部分代数码本和随机码本构成的噪声码本1805及后处理器1809。
更具体地说,通过使用量化LPC的动态特征来进行语音区间/非语音区间的划分,通过使用量化LPC的静态特征来进行浊音区间/清音区间的划分。作为量化LPC的动态特征,可以使用帧间的变动量或过去判定为非语音区间的区间中的平均量化LPC和当前帧中的量化LPC之间的距离(差)等。此外,作为量化LPC的静态特征,可以使用1次反射系数等。
量化LPC通过变换为LSP、反射系数、LPC预测残差功率等其他域的参数,可以更有效地利用。此外,在能够将模式信息作为分别的信息传输的情况下,对另外传输的模式信息进行解码,将解码模式信息输出到噪声码本1805及后处理器1809。
音源参数解码器1802将取出自适应码矢量的位置信息、自适应码矢量增益、指定噪声码矢量的角标信息、以及噪声码矢量增益分别输出到自适应码本1803、乘法器1804、部分代数码本和随机码本构成的噪声码本1805、和乘法器1806。
自适应码本1803是过去生成的激励矢量(从加法器1807输出的矢量)的缓冲器,从由音源参数解码器1802输入的取出位置取出自适应码矢量,输出到乘法器1804。乘法器1804将从自适应码本1803输出的自适应码矢量乘以从音源参数解码器1802输入的自适应码矢量增益,输出到加法器1807。
部分代数码本和随机码本构成的噪声码本1805是具有图12所示结构的噪声码本,与图20的1706所示的是同一噪声码本,将从音源参数解码器1802输入的角标指定的至少2个脉冲的位置接近的几个脉冲构成的噪声码矢量或稀疏率在90%左右以下的噪声码矢量中的某个输出到乘法器1806。
乘法器1806将从部分代数码本输出的噪声码矢量乘以从音源参数解码器1802输入的噪声码矢量增益,输出到加法器1807。加法器1807通过进行从乘法器1804输出的乘以自适应码矢量增益后的自适应码矢量、和从乘法器1806输出的乘以噪声码矢量增益后的噪声码矢量的矢量加法来生成激励矢量,输出到自适应码本1803和LPC合成滤波器1808。
输出到自适应码本1803的激励矢量被用于更新自适应码本1803,而输出到LPC合成滤波器1808的激励矢量被用于生成合成语音。LPC合成滤波器1808是用从LPC量化器1801输出的量化LPC(从编码端发送的量化LPC的解码结果)构成的线性预测滤波器,用从加法器1807输出的激励矢量来驱动LPC合成滤波器,将合成信号输出到后处理器1809。
后处理器1809对从LPC合成滤波器1808输出的合成语音进行共振峰增强处理、音调增强处理、频谱倾斜校正处理等构成的后滤波处理或用于使平稳背景噪声更易听的处理等用于改善主观品质的处理,作为解码语音数据1810来输出。这些后处理用从模式判定器1808输入的模式信息来自适应地进行。即,切换应用适合每个模式的后处理,自适应地变化后处理的强弱。
图22是本发明实施例3的噪声码矢量生成装置的结构方框图。该图所示的噪声码矢量生成器包括:脉冲位置限定器控制器1901、部分代数码本1902、随机码本项数控制器1903、随机码本1904。
脉冲位置限定器控制器1901按照从外部输入的模式信息将脉冲位置限定器的控制信号输出到部分代数码本1902。该控制是为了(按照模式来)增减部分代数码本的尺寸而进行的,例如在模式是清音/平稳噪声模式的情况下,通过加强限定(减少候选脉冲位置数)来减少部分代数码本的尺寸(相应地用随机码本项数控制器1903进行控制,使得随机码本1904的尺寸增大)。
由此,能够改善使用清音部或平稳噪声部等几个脉冲构成的噪声码矢量则主观品质恶化的信号的性能。脉冲位置限定器被包括在部分代数码本1902中,其具体操作示于实施例1。
部分代数码本1902是根据从脉冲位置限定器控制器1901输入的控制信号来控制内部包括的脉冲位置限定器的操作的部分代数码本,根据脉冲位置限定器对候选脉冲位置的限定程度来增减码本尺寸。部分代数码本的具体操作示于实施例1。根据本码本生成的噪声码矢量被输出到切换开关1905。
随机码本项数控制器1903进行控制,使得按照从外部输入的模式信息来增减随机码本1904的尺寸。本控制与脉冲位置限定器控制器1901的控制联动进行。即进行控制,使得在由脉冲位置限定器控制器1901增加部分代数码本1902的尺寸的情况下,随机码本项数控制器1903减少随机码本1904的尺寸,而在由脉冲位置限定器控制器1901减少部分代数码本1902的尺寸的情况下,随机码本项数控制器1903增加随机码本1904的尺寸。部分代数码本1902和随机码本1904合起来的总项数(本噪声码矢量生成器中的全部码本尺寸)始终被保持在一定值。
随机码本1904输入来自随机码本项数控制器1903的控制信号,用指定尺寸的随机码本来生成噪声码矢量,输出到切换开关1905。这里,随机码本1904也可以由多个尺寸不同的随机码本构成,但是通过由共用的1种某个确定尺寸的随机码本构成并分别使用它来用作多个尺寸的随机码本,在存储量方面更有效。
此外,随机码本1904也可以是单通道的码本,但是使用2个以上的多个通道构成的码本,在运算量和存储量方面更有利。
切换开关1905在根据来自外部的控制(在将本噪声码矢量生成器用于编码器的情况下,是来自使与目标矢量之间的误差最小化的模块的控制信号,而在用于解码器的情况下,是解码过的噪声码本的参数信息等)来选择从部分代数码本1902或随机码本1904输出的噪声码矢量中的某个,作为本噪声码矢量生成器的输出噪声码矢量1906来输出。
这里,从随机码本1904输出的噪声码矢量、和从部分代数码本1902输出的噪声码矢量的比例(随机∶代数)在浊音模式中最好是0∶1~1∶2,即随机0~34%、代数66~100%。此外,上述比例(随机∶代数)在非浊音模式中最好是2∶1~4∶1,即随机66~80%、代数20~34%。
以下参照图23来说明上述实施例中噪声码矢量生成方法(编码方法)的处理流程。
首先,在ST2001中,根据另外输入的模式信息来进行部分代数码本和随机码本的尺寸的设定。此时,部分代数码本的尺寸的设定通过增减实施例1所示的相对位置表现的脉冲的候选位置数来进行。
该相对位置表现的脉冲的增减可以机械地进行,通过削减相对位置偏离的部分来减少。更具体地说,在相对位置是{1、3、5、7}的情况下,将候选位置数减少为{1、3、5}、{1、3}、{1}。相反,在增加的情况下,将{1}增加为{1、3}、{1、3、5}。
此外,进行部分代数码本和随机码本的尺寸的设定,使得部分代数码本和随机码本的尺寸的总和为一定值。更具体地说,进行两个码本的尺寸的设定,使得在与浊音(平稳)部对应的模式中,部分代数码本的尺寸(比率)大,而在与清音部或噪声部对应的模式中,随机码本的尺寸(比率)大。
在本模块中,mode是输入的模式信息,IDXa是部分代数码本的尺寸(噪声码矢量项数),IDXr是随机码本尺寸(噪声码矢量项数),IDXa+IDXr=一定值。此外,随机码本的项数的设定例如可以通过设定参照的随机码本的范围来实现。例如,在将2通道的随机码本的尺寸在128×128=16384和64×64=4096之间切换来使用的控制中,可以如下简单地实现:分别包括各通道存储128种矢量(角标0~127)的随机码本,在0~127和0~63这2种之间切换搜索的角标的范围。
在此情况下,最好使角标为0~127的矢量存在的矢量空间和角标为0~63的矢量存在的矢量空间尽量一致,如果完全不能用角标0~63的矢量来表现角标为64~127的矢量,即角标为0~63的矢量空间和角标为64~127的矢量空间完全不同,则上述随机码本尺寸的变更有时使随机码本的编码性能大大恶化,需要考虑此来形成随机码本。
在使部分代数码本和随机码本的项数总和保持一定的情况下,两个码本的尺寸设定的方法(组合)必然被限定为几种,所以尺寸设定的控制等价于切换这几种设定。在本ST中,根据输入的模式信息mode来设定部分代数码本尺寸IDXa和随机码本尺寸IDXr。
接着,在ST2002中,从部分代数码本(尺寸为IDXa)和随机码本(IDXr)中选择使与目标矢量之间的误差最小的噪声码矢量,求其角标。例如确定为:如果从部分代数码本中选择噪声码本,则角标index为0~(IDXa-1)的范围,而如果从随机码本中选择,则为(IDXa-1)~(IDXa+IDXr-1)的范围。
接着,在ST2003中,将求出的角标index作为编码数据来输出。index再按照需要被编码为输出到传输线路的形式。
以下参照图24来说明上述实施例中噪声码矢量生成方法(解码方法)的处理流程。
首先,在ST2101中,根据另外解码过的模式信息mode来进行部分代数码本和随机码本的尺寸的设定。具体的设定方法如前面参照图24所述。根据模式信息mode来设定部分代数码本的尺寸IDXa及随机码本的尺寸IDXr。
接着,在ST2102中,用部分代数码本或随机码本对噪声码矢量进行解码。用哪个码本来解码,取决于另外解码过的噪声码矢量的角标index的值,在0≤index<IDXa的情况下,根据部分代数码本,而在IDXa≤index<(IDXa+IDXr)的情况下,根据随机码本来进行解码。具体地说,例如如实施例3中参照图19说明的那样来进行解码。
如果进行上述的角标的赋予,则对在不同模式下共有的噪声码矢量的项赋予不同的角标(即,即使具有完全相同形状的噪声码矢量,如果模式不同,则为不同的角标),容易受产生传输线路差错时的影响,所以如果为了回避此而对在不同模式下共有的噪声码矢量的项赋予相同角标,则能够实现具有差错抵抗力的上述噪声码矢量生成装置。其一例示于图25及图26。
图25是噪声码本尺寸为32、(子)帧长为11个样本以上、脉冲数为2的部分代数码本和2通道随机CB组合的例子,是在(子)帧末尾不考虑脉冲接近的矢量的类型。
另一方面,图26是噪声码本尺寸为16、(子)帧长为8个样本、脉冲数为2的部分代数码本和2通道随机CB组合的例子,是在(子)帧末尾考虑脉冲接近的矢量的类型。
在图25及图26两图中,第1列一栏示出第1脉冲或随机码本的第1通道,第2列一栏示出第2脉冲或随机码本的第2通道,第3列一栏示出与各个组合对应的噪声码本角标。
此外,图25A、图26A两图示出随机码本的比率低(项数少)、部分代数码本的比率高(项数多)的情况,图25B、图26B示出随机码本的比率高(项数多)、部分代数码本的比率低(项数少)的情况,只有与画有斜线的角标对应的噪声码矢量在图25A、图26A和图25B、图26B中不同。
在图25及图26中,表中的数字(除了角标)表示部分代数码本中的脉冲位置,P1、P2表示第1及第2脉冲位置,Ra、Rb表示随机码本的第1及第2通道,Ra、Rb所附的数字表示两个通道中存储的随机码矢量号。如果对应于图8的部分代数码本,则图26的角标0~5及图25的角标0~7对应于图8的图案(a),图26的角标6~9及图26的角标8~15对应于图8的图案(b),图26的角标10~11对应于图8的图案(c)(在图25中,没有与图8的图案(c)对应的部分)。
在图25及图26两图中,画有斜线的角标在被限定的范围内规则排列,所以例如在进行解码的情况下,在图26A的角标11以下,如用图12说明的那样,进行解码(IDX1=6,IDX2=10),在图26B中,只在角标在11以下、而且是偶数的情况下,进行与图26A的情况相同的解码,而在奇数的情况下,将角标除以2所得的商看作与随机码本对应的角标,能够对随机码本的各通道的矢量号进行解码。
图25也同样,在确定的角标的范围内能够规则地使角标和随机码本的矢量号相对应。此外,在编码的情况下也可以同样地考虑,能够只特别处理随机码本和部分代数码本随模式变化而切换的角标的部分并进行编码。
由此,能够只使与一部分角标对应的噪声码矢量受模式切换的影响,所以能够将因传输线路差错而引起模式差错的情况的影响抑制到最小限度。这种情况与参照上述流图(图9、12、18、19、23、24)说明的情况相比,角标index的添加方法变了,但是基本的码本搜索方法相同。
这样,通过根据模式判定来变化代数码本和随机码本的利用比例,能够抑制模式判定差错时的品质恶化,并且能够改善对清音语音或背景噪声的编码性能。
(实施例4)
在本实施例中,说明下述情况:计算音源信号的功率,在语音模式是噪声模式的情况下,根据音源信号的功率来计算平均功率,根据该平均功率来增减规定的候选脉冲位置。
图27是本发明实施例4的语音编码装置的结构方框图。图27所示的语音编码装置具有与图20所示的语音编码装置大致相同的结构。在图27所示的结构中,包括:当前功率计算器2402,根据音源信号来计算当前功率;和噪声区间平均功率计算器2401,根据来自模式判定器1713的模式判定信息及来自当前功率计算器2402的当前功率,在语音模式是噪声模式的情况下,根据音源信号的功率来计算平均功率。
模式判定器1713如实施例3所述,利用输入的量化LPC的动态及静态特征等来进行语音区间和非语音区间或浊音区间和清音区间的划分(模式判定),将判定结果输出到部分代数码本和随机码本构成的噪声码本1716。此外,来自模式判定器1713的模式信息被送至噪声区间平均功率计算器2401。
另一方面,在当前功率计算器2402中,计算音源信号的功率。这样来监视音源信号的功率。该当前功率计算结果被送至噪声区间平均功率计算器2401。
在噪声区间平均功率计算器2401中,根据来自当前功率计算器2402的计算结果和模式判定结果来计算噪声区间的平均功率。从当前功率计算器2402向噪声区间平均功率计算器2401逐次输入当前功率的计算结果。然后,在噪声区间平均功率计算器2401中,在从模式判定器1713输入表示是噪声区间的信息时,用输入的当前功率的计算结果来计算噪声区间的平均功率。
该平均功率的计算结果被送至可变型部分代数码本/随机码本1706。在可变型部分代数码本/随机码本1706中,根据平均功率的计算结果来控制代数码本和随机码本的利用比率。该控制方法与实施例3相同。
在噪声区间平均功率计算器2401中,进行算出的噪声区间平均功率和逐次输入的当前功率之间的比较。然后,在噪声区间的平均功率比当前功率大的情况下,认为平均功率值有问题,所以将噪声区间的平均功率更新为当前功率。由此,能够更精确地控制代数码本和随机码本的利用比率。
此外,图28是本发明实施例4的语音解码装置的结构方框图。图28所示的语音解码装置具有与图21所示的语音解码装置大致相同的结构。在图28所示的结构中,包括:当前功率计算器2502,根据音源信号来计算当前功率;和噪声区间平均功率计算器2501,根据来自模式判定器1810的模式判定信息及来自当前功率计算器2502的当前功率,在语音模式是噪声模式的情况下,根据音源信号的功率来计算平均功率。
模式判定器1810如实施例3所述,利用输入的量化LPC的动态及静态特征等来进行语音区间和非语音区间或浊音区间和清音区间的划分(模式判定),将判定结果输出到部分代数码本和随机码本构成的噪声码本1805及后处理器1809。此外,来自模式判定器1810的模式信息被送至噪声区间平均功率计算器2501。
另一方面,在当前功率计算器2502中,计算音源信号的功率。这样来监视音源信号的功率。该当前功率计算结果被送至噪声区间平均功率计算器2501。
在噪声区间平均功率计算器2501中,根据来自当前功率计算器2502的计算结果和模式判定结果来计算噪声区间的平均功率。从当前功率计算器2502向噪声区间平均功率计算器2501逐次输入当前功率的计算结果。然后,在噪声区问平均功率计算器2501中,在从模式判定器1810输入表示是噪声区间的信息时,用输入的当前功率的计算结果来计算噪声区间的平均功率。
该平均功率的计算结果被送至可变型部分代数码本/随机码本1805。在可变型部分代数码本/随机码本1805中,根据平均功率的计算结果来控制代数码本和随机码本的利用比率。该控制方法与实施例3相同。
在噪声区间平均功率计算器2501中,进行算出的噪声区间平均功率和逐次输入的当前功率之间的比较。然后,在噪声区间的平均功率比当前功率大的情况下,认为平均功率值有问题,所以将噪声区间的平均功率更新为当前功率。由此,能够更精确地控制代数码本和随机码本的利用比率。
这里,在噪声区间的电平大的情况下,在浊音模式中,从随机码本输出的噪声码矢量、和从部分代数码本输出的噪声码矢量的比例(随机∶代数)最好是2∶1,即随机约66%、代数约34%。此外,在非浊音模式中,上述比例(随机∶代数)最好是随机约98%、代数约2%。
这样,通过监视噪声区间、根据模式判定来变化代数码本和随机码本的利用比例,能够抑制模式判定差错时的品质恶化,并且能够改善对清音语音或背景噪声的编码性能。
在图27及图28中,就根据音源信号来计算当前功率的情况进行了说明,但是在本发明中,也可以用LPC合成后的合成信号的功率来计算平均功率。
上述语音编码装置及/或语音解码装置可以应用于移动电话等移动通信设备的移动机等通信终端装置或基站装置。传输信息的媒体不限于本实施例所示的电波,也可以利用光信号等,还可以使用有线传输线路。
上述实施例所示的语音编码/解码装置也可以作为软件记录在磁盘、光磁盘、盒式ROM(ROMカ一トリツジ)等记录媒体上来实现。通过使用该记录媒体,能够通过使用这种记录媒体的个人计算机等来实现语音编码装置/解码装置及发送装置/接收装置。
(实施例5)
在本实施例中,说明将音源脉冲是3个的代数码本用作噪声码本的情况。这里,说明在噪声码本中每个子帧分配16比特的情况。在本实施例中,并用将代数码本和音源脉冲均一地配置在整个子帧上的随机码本。
在此情况下,为了不改变整个噪声码本的比特数来并用随机码本,需要削减代数码本的尺寸。如果单纯地削减代数码本尺寸,则必须减少各脉冲的候选搜索位置,难以进行大范围的搜索。因此,维持音源脉冲的搜索范围不变,削减代数码本尺寸。
具体地说,着眼于根据代数码本生成的音源矢量的形状,施加限制,使得具有使用频度低的形状的音源矢量不根据代数码本来生成,从而削减代数码本的尺寸。作为表示音源矢量形状的特征量,使用各音源脉冲的相对位置关系。即,如图29所示,使用由3个音源脉冲2601~2603构成的音源矢量的首端脉冲2601和第2个脉冲2602的间隔A、以及第2个脉冲2602和第3个脉冲2603的间隔B。根据这种特征量来决定使用频度低的矢量,削减代数码本的尺寸,并用随机码本。这样削减了尺寸的代数码本部分地使用代数码本,所以称为部分代数码本。
为了讨论部分代数码本的构成法,用图29所示的间隔A及间隔B来调查使用频度低的矢量形状。由于具有间隔A和间隔B的音源矢量存在多个,所以用根据部分代数码本生成的组合的数目来归一化。此外,考虑到在浊音部和非浊音部中倾向不同,所以利用1次反射系数等对浊音部和非浊音部进行分类,分别调查其使用频度分布。
调查的结果,知道在语音部中间隔A或间隔B的至少一个中窄矢量的使用频度高,而在非浊音部中,与浊音部相比,整体为均一的频度分布。根据该调查结果,通过施加限制,使得只生成至少1组音源脉冲间隔窄的矢量,来构成部分代数码本。
作为只生成至少1组音源脉冲间隔窄的矢量的方法,可以举出以下2种方法。
(方法1)
在部分代数码本中,进行全部搜索,在搜索循环中判定当前搜索中的音源脉冲间隔是否比规定的距离窄,只以窄的作为搜索对象。
(方法2)
在部分代数码本中,只搜索各音源脉冲的角标之差在规定的范围内(K)的组合。具体地说,分类为图30A~图30C所示的3种图案(图30A:3个脉冲都接近的情况,图30B:前2个脉冲接近的情况,图30C:后2个脉冲接近的情况)来进行部分代数码本的搜索。只是,在图30A~图30C中,只示出按脉冲2601~2603的顺序排列的情况,实际上应考虑这3个脉冲排列的顺序能够想到的全部组合。
在使用方法1的情况下,可以严密地通过脉冲间隔的距离进行限制,但是在搜索循环内每次都需要进行条件分支。另一方面,在方法2中,在不均一的候选搜索位置的情况下,可以不通过严密的脉冲间隔距离进行限制,而是只规则地搜索代数码本的必要部分,无需搜索循环内的条件分支。
通过这样将音源脉冲设定为3个脉冲来构成部分代数码本,能够实现基本性能高的部分代数码本。
接着,说明与上述部分代数码本并用的随机码本。该随机码本如下构成:为了改善功率分散在整个子帧上的矢量的表现性,尽量将音源脉冲均等地配置在整个子帧上。在该随机码本中,脉冲振幅为±1,限制脉冲位置,使得在各通道(ch)间音源脉冲不重叠。此外,音源脉冲的位置和振幅(极性)根据随机数来生成。图31示出音源脉冲数合计8个、2ch结构的随机码本。
该随机码本如下形成:进行通道数及脉冲数的设定,进行各脉冲的配置范围的设定,进行各脉冲的位置/极性的决定。在该随机码本的形成方法中,首先,在进行通道数及脉冲数的设定后,进行各脉冲的配置范围的设定。即,设定配置各脉冲的范围长度(N_Range[i][j])。该设定如图32所示来进行。
首先,将子帧长度用脉冲数(1个通道)来分割,求N_Range0,剩余作为N_rest来保存(ST2901),接着,将N_Range0用通道数来分割,设定N_Range[i][j](ST2902)。这里,i表示通道号,j表示脉冲号。此时,在N_Range0用通道数(N_ch)除不尽的情况下,将其余数从通道号小的一方起依次分割(ST2902)。
接着,将N_Rest从子帧最后尾部上配置的脉冲的N_Range[N_ch-1][N_Pulse-1]起依次分配(ST2903)。由此,结束N_Range[i][j]的设定。
在各脉冲的配置范围的设定中,进行N_Range[i][j]的开始点(S_Range[i][j])的设定。即,在将N_Range[i][j]从子帧首端起依次配置的情况下,求各个首端位置。该开始点的设定如图33所示来进行。首先,设定各通道的首端脉冲的S_Range[i][0]。在此情况下,从脉冲号小的一方起依次进行(ST3001)。接着,同样决定其余的S_Range[i][0](ST3002)。这样结束S_Range[i][j]的设定。
在如上所述进行各脉冲的配置范围的设定后,进行各脉冲的位置/极性的决定。该各脉冲的位置/极性如图34所示来进行。首先,对通道的循环计数器进行复位(ST3101)。接着,判断循环计数器i是否比N_ch小(ST3102)。如果循环计数器i比N_ch小,则对计数器和阈值进行复位(ST3103)。即,对决定的随机码矢量的数目(counter)、重复随机码矢量的生成的数目(counter_r)、及容许位置不同的脉冲数(thresh)进行复位。另一方面,如果循环计数器i不比N_ch小,则结束随机码本的形成。
接着,判断重复随机码矢量的生成的数目(counter_r)是否是最大值MAX_r(ST3104)。如果counter_r不是MAX_r,则进行码矢量的生成或根据随机数进行的脉冲位置及极性的生成(ST3106),而如果counter_r是MAX_r,则将阈值(thresh)增量,对重复计数器(counter_r)进行复位(ST3105)。然后,进行码矢量的生成或根据随机数进行的脉冲位置及极性的生成(ST3106)。在根据随机数进行的脉冲位置及极性的生成中,rand()表示整数随机数生成函数。
接着,在生成脉冲位置及极性后,检查码矢量(ST3107)。这里,比较生成的码矢量和已经在随机码本中登录的所***矢量,检查是否存在脉冲位置重叠的码矢量。然后,对每个码矢量,对位置重叠的脉冲数进行计数。
接着,判断在随机码本内是否有位置重叠的脉冲数超过阈值的码矢量(ST3108)。如果有位置重叠的脉冲数超过阈值的码矢量,则将重复计数器(counter_r)增量(ST3109),然后,进至ST3104。另一方面,如果没有位置重叠的脉冲数超过阈值的码矢量,则将该码矢量登录到随机码本(ST3110)。即,将根据随机数生成的码矢量存储到随机码本,将计数器(counter)增量。
接着,判断计数器(counter)是否在随机码本的尺寸以上(ST3111)。如果计数器(counter)在形成的随机码本的尺寸以上,则将通道的循环计数器增量(ST3112),进至ST3102。而如果计数器(counter)在随机码本的尺寸以上,则进至ST3104。
在该随机码本的形成中,根据随机数来决定码矢量的脉冲位置及极性,进行检查,使得和已经决定的脉冲的位置不重叠。这样,开始生成全部位置不重叠者,依次增加位置重叠的脉冲数。
此外,在随机码本的形成中,均等地分割整个子帧,在不能完全均等分割的情况下,从ch2扩大ch1的范围,此外,从子帧末尾一方起扩大范围。例如,用图35来进行说明。在图35中,数字表示各脉冲(脉冲号j)的配置范围(N_Range[i][j])和开始点(S_Range[i][j]),从上向下向子帧的末尾记载。在图35A中,是4个脉冲,所以能够均等地分割整个子帧的80个样本。在图35B中,是6个脉冲,所以能够均等地分割整个子帧的80个样本。在此情况下,使ch1(7)比ch2(6)宽,而且将子帧末尾(ch1∶8、ch2∶7)加宽。使ch1的范围比ch2宽,是因为假定使ch1的码矢量数(码本尺寸)比ch2的码矢量数多。也可以考虑使ch1和ch2的N_Range[i][j]的值相等,零头部分在子帧后半均等地分配给各通道。
通过这样形成随机码本,能够有效地形成音源脉冲分布在整个子帧上的随机码本。此外,由于越是码本的后半,重叠的音源脉冲越多,所以在减小码本尺寸的情况下,通过从后半部减小削减,能够形成希望的码本。
接着,说明在部分代数码本和随机码本的并用中应用模式切换的情况。在此情况下,将部分代数码本按照音源脉冲形状来分块,对应于该块分级进行削减,然后分级地(自适应地)增加随机码本。
图36是将部分代数码本分块的状态图。分块与音源脉冲的形状对应来进行。该块由图37A所示的音源脉冲的脉冲间的间隔(更准确地说是角标之差)A、B来泱定。即,块X~Z对应于图37B所示的区域。
通过这样分块来削减部分代数码本的尺寸,能够容易地进行尺寸的控制。具体地说,只需将相应的块的搜索循环关闭即可。
在这样将部分代数码本分割为块的同时,将随机码本分级。这里,如图38的图案(a)所示,在ch1、ch2中分级为3级。具体地说,第1级为a、b,第2级为c、d,第3级为e、f。利用它们以块为单位来削减部分代数码本,按其量来分级增加随机码本,增大随机码本的比例。对应于部分代数码本的削减及随机码本的增加来决定模式。具体地说,决定图36(a)~(c)所示的模式。该模式数是例示,在比图36更粗地进行模式设定的情况下,可以用2个模式,而在比图36更细地进行模式设定的情况下,可以用4个以上的模式。
用图36及图38来说明每个该模式使用中的随机码本。设随机码本尺寸最小的模式为(a),最大的模式为(c),中间的模式为(b)。在模式按(a)→(b)→(c)变化的情况下,在图35中,ch1的随机码本按a→(a+c)→(a+c+e),ch2的随机码本按b→(b+d)→(b+d+f)来增加尺寸。此时,为了对各模式共用的码矢量赋予在哪个模式中都相同的角标,使用下述角标分配方法。
首先,分配通过a×b生成的矢量的角标。接着,分配通过c×b及(a+c)×d生成的矢量的角标。最后,分配通过(a+c+e)×f及e×(b+d)生成的矢量的角标。该分配法的一例示于图36。
因此,在并用部分代数码本和随机码本的情况下,在部分代数码本由块X、Y、Z构成的情况下,随机码本如图36(a)所示,为随机码本的图38的图案(b)所示的部分。此外,在部分代数码本由块X、Y构成的情况下,随机码本如图36(b)所示,为随机码本的图38的图案(b)~(d)所示的部分。此外,在部分代数码本由块X构成的情况下,随机码本如图36(c)所示,为随机码本的图38的图案(b)~(f)所示的部分。
该模式切换按照来自模式判定器的控制信号即模式信息来进行。该模式信息可以对从编码器端发送来的各种信息(LPC参数、增益参数等)进行解码、按照该信息来生成,也可以使用从编码器端发送的模式信息。
这样,通过以块为单位来削减部分代数码本,分级增加随机码本,能够容易地控制部分代数码本和随机码本的尺寸。再者,由于即使在不同模式中也能够使共***矢量角标相同,所以能够抑制模式差错的影响。
这里,以模式由浊音/清音/平稳噪声3种模式构成的情况为例,示出各个模式中部分代数码本和随机码本的构成比的具体例。该最佳比率可随比特分配而变化,但是在16比特的随机码本的例子中,最好比率为:在浊音模式中(部分代数码本∶随机码本=约50%∶约50%),在清音模式中(部分代数码本∶随机码本=约10%∶约90%),在平稳噪声模式中(部分代数码本∶随机码本=约10%∶约90%,如果模式差错极小,则也可以将随机码本的比率提高到部分代数码本∶随机码本=约0%∶约100%)。在编码器端施加提高平稳噪声信号的主观品质的后处理的情况下,有时无需特别提高平稳噪声模式中随机码本的比率。
(实施例6)
在本实施例中,说明下述情况:根据噪声功率(过去的噪声模式区间中的平均功率)的高低,来切换扩展图案的噪声性,或者根据噪声功率的高低,来操作扩展图案的第1个样本的样本值。
图39是本发明实施例6的语音编码装置的结构方框图,图40是本发明实施例6的语音解码装置的结构方框图。在图39中,对与图27相同的部分附以与图27相同的标号,并且省略其详细说明。此外,在图40中,对与图28相同的部分附以与图28相同的标号,并且省略其详细说明。
在图39所示的语音编码装置中,具有可变型部分代数码本/随机码本3601,包括脉冲扩展器3602,扩展从该可变型部分代数码本/随机码本3601输出的音源矢量的脉冲。该音源矢量的脉冲的扩展在扩展图案生成器3603中按照生成的扩展图案来进行。该扩展图案由噪声区间平均功率计算器2401求出的噪声区间平均功率的高低、或来自模式判定器1713的模式信息来泱定。
在图40所示的语音解码装置中,对应于图39所示的语音编码装置,具有可变型部分代数码本/随机码本3701,包括脉冲扩展器3702,扩展从该可变型部分代数码本/随机码本3701输出的音源矢量的脉冲。该音源矢量的脉冲的扩展在扩展图案生成器3703中按照生成的扩展图案来进行。该扩展图案由噪声区间平均功率计算器2501求出的噪声区间平均功率的高低、或来自模式判定器1810的模式信息来决定。
在图39所示的语音编码装置及图40所示的语音解码装置中的扩展图案生成器3603、3703中,如图41及图42所示,生成扩展图案。
首先,在语音编码装置中,由噪声区间平均功率计算器2401用过去判定为噪声区间的(子)帧的功率来计算噪声区间平均功率。过去的噪声区间功率被用当前功率计算器2402输出的功率逐次更新。这里算出的噪声区间的平均功率被输出到扩展图案生成器3603。在扩展图案生成器3603中,根据噪声区间的平均功率来切换扩展图案的噪声性。即,如图41所示,在扩展图案生成器3603中,对应于噪声区间的平均功率的高低,设有多个噪声性,按照平均功率的高低来选择噪声性。具体地说,在噪声区间的平均功率大的情况下,选择扩展图案的噪声性高(强)者,而在噪声区间的平均功率小的情况下,选择扩展图案的噪声性低(弱)者。
此外,也可以在噪声区间和语音区间之间切换扩展图案的噪声性。语音区间也可以进一步分为浊音区间和清音区间。在此情况下,切换如下进行,使得在噪声区间中扩展图案的噪声性高,而在语音区间中扩展图案的噪声性低。在将语音区间分为浊音区间和清音区间的情况下如下进行,使得在浊音区间中扩展图案的噪声性低,而在清音区间中扩展图案的噪声性高。噪声区间、语音区间(浊音区间、清音区间)的分类另外由模式判定器1713等进行,扩展图案的选择由扩展图案生成器3603根据从模式判定器1713输出的模式信息进行。
即,模式判定器1713判定的模式作为模式信息被输出到扩展图案生成器3603,在扩展图案生成器3603中,根据模式信息来切换扩展图案的噪声性。在此情况下,如图41所示,在扩展图案生成器3603中,对应于模式,设有多个噪声性,按照模式来选择噪声性的强弱。具体地说,在噪声模式的情况下,选择扩展图案的噪声性强者,而在语音(浊音)模式的情况下,选择扩展图案的噪声性弱者。
此外,在另一结构的扩展图案生成器3603中,对应于噪声区间的平均功率的高低,通过改变扩展图案的第1个样本的振幅值,来连续进行相当于上述切换的操作。具体地说,如图42所示,在噪声区间的平均功率大的情况下,乘以减小第1个样本的振幅值的系数,而在噪声区间的平均功率小的情况下,乘以增大第1个样本的振幅值的系数。预先制定变换函数或变换规则,使得这些系数能够用噪声区间的平均功率的值来决定。改变振幅值的样本不限于1个样本。此外,乘以系数后的扩展图案被归一化,使得与乘以系数前的图案为相同的矢量功率。
接着,在语音解码装置中,由噪声区间平均功率计算器2501用过去判定为噪声区间的(子)帧的功率来计算噪声区间平均功率。过去的噪声区间功率被用当前功率计算器2502输出的功率逐次更新。这里算出的噪声区间的平均功率被输出到扩展图案生成器3703。在扩展图案生成器3703中,根据噪声区间的平均功率来切换扩展图案的噪声性。即,如图41所示,在扩展图案生成器3703中,对应于噪声区间的平均功率的高低,设有多个噪声电平,按照平均功率的高低来选择噪声性。具体地说,在噪声区间的平均功率大的情况下,选择扩展图案的噪声性高(强)者,而在噪声区间的平均功率小的情况下,选择扩展图案的噪声性低(弱)者。
此外,在此情况下,也可以在噪声区间和语音区间之间切换扩展图案的噪声性。语音区间也可以进一步分为浊音区间和清音区间。在此情况下,切换如下进行,使得在噪声区间中扩展图案的噪声性高,而在语音区间中扩展图案的噪声性低。在将语音区间分为浊音区间和清音区间的情况下如下进行,使得在浊音区间中扩展图案的噪声性低,而在清音区间中扩展图案的噪声性高。噪声区间、语音区间(浊音区间、清音区间)的分类另外由模式判定器1810等进行,扩展图案的选择由扩展图案生成器3703根据从模式判定器1810输出的模式信息进行。
即,模式判定器1810判定的模式作为模式信息被输出到扩展图案生成器3703,在扩展图案生成器3703中,根据模式信息来切换扩展图案的噪声性。在此情况下,如图41所示,在扩展图案生成器3703中,对应于模式,设有多个噪声性,按照模式来选择噪声性的强弱。具体地说,在噪声模式的情况下,选择扩展图案的噪声性强者,而在话音(浊音)模式的情况下,选择扩展图案的噪声性弱者。
此外,在另一结构的扩展图案生成器3703中,对应于噪声区间的平均功率的高低,通过改变扩展图案的第1个样本的振幅值,来连续变化扩展图案的噪声性。具体地说,如图42所示,在噪声区间的平均功率大的情况下,乘以减小第1个样本的振幅值的系数,而在噪声区间的平均功率小的情况下,乘以增大第1个样本的振幅值的系数。在该系数和噪声区间的平均功率之间,存在预定的变换函数或变换规则,能够根据平均功率的信息来求振幅变换系数。改变振幅值的样本不限于1个样本。此外,振幅值改变了的扩展图案被归一化,使得与改变振幅值前的扩展图案为相同的矢量功率。
对于根据噪声区间的平均功率进行的扩展图案的噪声性的切换,如果例如根据模式信息准备多种,组合模式信息和平均噪声功率信息两者来进行扩展图案的切换,则即使在噪声功率大的情况下,也能够在语音区间(浊音区间)中使扩展图案的噪声性为中等以下,能够改善噪声中的语音品质。
在本实施例中,也可以与噪声区间的功率高低无关,在噪声区间和语音区间之间切换扩展图案的噪声性。在此情况下,切换与上述同样进行,使得在噪声区间中扩展图案的噪声性高,而在语音区间中扩展图案的噪声性低。在将语音区间进一步分为浊音区间和清音区间的情况下,切换如下进行,使得在浊音区间中降低扩展图案的噪声性,而在清音区间中提高扩展图案的噪声性。
在上述实施例6中,说明了使用可变型部分代数码本/随机码本的情况,但是本发明也可以应用于使用一般代数码本的情况。
本发明不限于上述实施例,而是可以进行各种变更来实施。也可以将上述实施例的装置作为软件来构成。例如,也可以将上述音源矢量生成程序存储在ROM中,按照该程序根据CPU的指示来操作。此外,也可以将音源矢量生成程序存储在计算机可读的存储媒体中,将该记录媒体的音源矢量生成程序记录到计算机的RAM中,按照程序来操作。在这种情况下,也呈现与上述实施例同样的作用、效果。
如上所述,根据本发明,能够通过只生成在根据代数码本生成的多个音源脉冲中至少2个接近的组合来削减噪声码本的尺寸。特别是,能够提供一种语音编码装置及语音解码装置,通过在削减的尺寸的部分上存储对清音部或平稳噪声部有效的音源矢量,能够改善清音部或平稳噪声部的品质。
此外,能够提供一种语音编码装置及语音解码装置,在划分为与清音部或平稳噪声部对应的模式和与其他部分(例如浊音部)对应的模式的***中,通过自适应地切换上述削减的尺寸,能够进一步提高对清音部或平稳噪声部的品质的改善度。
本说明书基于1999年3月5日申请的特愿平11-059520号及1999年11月4日申请的特愿平11-314271号。其内容全部包含于此。
产业上的可利用性
本发明可以应用于数字无线通信***中的基站装置或通信终端装置。

Claims (4)

1、一种语音编码解码装置,包括:部分代数码本,生成由至少1对音源脉冲间隔比较窄的2个或3个音源脉冲构成的音源矢量;限制部件,进行限制,使得生成在上述音源矢量中至少1对音源脉冲间隔比较窄的音源矢量;和随机码本,按照上述部分代数码本的尺寸来自适应地使用。
2、如权利要求1所述的语音编码解码装置,其中,限制部件用各音源脉冲位置的候选号的相对关系来控制音源脉冲间隔,并在浊音和非浊音之间切换限制的强度。
3、如权利要求1所述的语音编码解码装置,其中,随机码本的尺寸在部分代数码本减少的尺寸的范围内自适应地增加。
4、如权利要求1所述的语音编码解码装置,其中,随机码本由多个通道构成,限制上述音源脉冲的位置,使得在通道间音源脉冲不重叠。
CNB008002665A 1999-03-05 2000-03-02 音源矢量生成装置及语音编码/解码装置 Expired - Fee Related CN1265355C (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP59520/99 1999-03-05
JP5952099 1999-03-05
JP59520/1999 1999-03-05
JP314271/99 1999-11-04
JP31427199A JP4173940B2 (ja) 1999-03-05 1999-11-04 音声符号化装置及び音声符号化方法
JP314271/1999 1999-11-04

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN2006100850590A Division CN1873779B (zh) 1999-03-05 2000-03-02 语音编码解码装置及方法

Publications (2)

Publication Number Publication Date
CN1296608A CN1296608A (zh) 2001-05-23
CN1265355C true CN1265355C (zh) 2006-07-19

Family

ID=26400568

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB008002665A Expired - Fee Related CN1265355C (zh) 1999-03-05 2000-03-02 音源矢量生成装置及语音编码/解码装置

Country Status (6)

Country Link
US (1) US6928406B1 (zh)
EP (3) EP1083547A4 (zh)
JP (1) JP4173940B2 (zh)
CN (1) CN1265355C (zh)
AU (1) AU2825200A (zh)
WO (1) WO2000054258A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104380377A (zh) * 2012-06-14 2015-02-25 瑞典爱立信有限公司 用于可缩放低复杂度编码/解码的方法和装置

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6556966B1 (en) * 1998-08-24 2003-04-29 Conexant Systems, Inc. Codebook structure for changeable pulse multimode speech coding
US6980948B2 (en) 2000-09-15 2005-12-27 Mindspeed Technologies, Inc. System of dynamic pulse position tracks for pulse-like excitation in speech coding
US7606703B2 (en) * 2000-11-15 2009-10-20 Texas Instruments Incorporated Layered celp system and method with varying perceptual filter or short-term postfilter strengths
US7752052B2 (en) * 2002-04-26 2010-07-06 Panasonic Corporation Scalable coder and decoder performing amplitude flattening for error spectrum estimation
US7233896B2 (en) * 2002-07-30 2007-06-19 Motorola Inc. Regular-pulse excitation speech coder
JP3881943B2 (ja) * 2002-09-06 2007-02-14 松下電器産業株式会社 音響符号化装置及び音響符号化方法
JP2004157381A (ja) * 2002-11-07 2004-06-03 Hitachi Kokusai Electric Inc 音声符号化装置及び方法
JP3887598B2 (ja) * 2002-11-14 2007-02-28 松下電器産業株式会社 確率的符号帳の音源の符号化方法及び復号化方法
JP4675692B2 (ja) * 2005-06-22 2011-04-27 富士通株式会社 話速変換装置
US8271274B2 (en) * 2006-02-22 2012-09-18 France Telecom Coding/decoding of a digital audio signal, in CELP technique
WO2008001866A1 (fr) * 2006-06-29 2008-01-03 Panasonic Corporation dispositif de codage vocal et procédé de codage vocal
CN101286321B (zh) * 2006-12-26 2013-01-09 华为技术有限公司 双脉冲激励的线性测编码
US8175870B2 (en) * 2006-12-26 2012-05-08 Huawei Technologies Co., Ltd. Dual-pulse excited linear prediction for speech coding
US8688437B2 (en) 2006-12-26 2014-04-01 Huawei Technologies Co., Ltd. Packet loss concealment for speech coding
JP5596341B2 (ja) * 2007-03-02 2014-09-24 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 音声符号化装置および音声符号化方法
MY146431A (en) * 2007-06-11 2012-08-15 Fraunhofer Ges Forschung Audio encoder for encoding an audio signal having an impulse-like portion and stationary portion, encoding methods, decoder, decoding method, and encoded audio signal
JP5088050B2 (ja) * 2007-08-29 2012-12-05 ヤマハ株式会社 音声処理装置およびプログラム
CN100578619C (zh) * 2007-11-05 2010-01-06 华为技术有限公司 编码方法和编码器
CN102623012B (zh) 2011-01-26 2014-08-20 华为技术有限公司 矢量联合编解码方法及编解码器
JP4764956B1 (ja) * 2011-02-08 2011-09-07 パナソニック株式会社 音声符号化装置及び音声符号化方法
BR112016019838B1 (pt) * 2014-03-31 2023-02-23 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Codificador de áudio, decodificador de áudio, método de codificação, método de decodificação e mídia de registro legível por computador não transitória
US11462358B2 (en) 2017-08-18 2022-10-04 Northeastern University Method of tetratenite production and system therefor

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1334177A (en) * 1971-06-10 1973-10-17 Standard Telephones Cables Ltd Vocoder excitation system
NL8500843A (nl) * 1985-03-22 1986-10-16 Koninkl Philips Electronics Nv Multipuls-excitatie lineair-predictieve spraakcoder.
JPH02294700A (ja) 1989-05-09 1990-12-05 Nec Corp 音声分析合成装置
CA2010830C (en) * 1990-02-23 1996-06-25 Jean-Pierre Adoul Dynamic codebook for efficient speech coding based on algebraic codes
US5754976A (en) * 1990-02-23 1998-05-19 Universite De Sherbrooke Algebraic codebook with signal-selected pulse amplitude/position combinations for fast coding of speech
FI98104C (fi) * 1991-05-20 1997-04-10 Nokia Mobile Phones Ltd Menetelmä herätevektorin generoimiseksi ja digitaalinen puhekooderi
JPH0612098A (ja) 1992-03-16 1994-01-21 Sanyo Electric Co Ltd 音声符号化装置
US5377302A (en) * 1992-09-01 1994-12-27 Monowave Corporation L.P. System for recognizing speech
JPH07295596A (ja) 1994-04-26 1995-11-10 Matsushita Electric Ind Co Ltd 音声符号化方法
JPH08123493A (ja) 1994-10-27 1996-05-17 Nippon Telegr & Teleph Corp <Ntt> 符号励振線形予測音声符号化装置
JP3285185B2 (ja) 1995-06-16 2002-05-27 日本電信電話株式会社 音響信号符号化方法
JP3137176B2 (ja) * 1995-12-06 2001-02-19 日本電気株式会社 音声符号化装置
US5970444A (en) * 1997-03-13 1999-10-19 Nippon Telegraph And Telephone Corporation Speech coding method
WO1999021174A1 (en) * 1997-10-22 1999-04-29 Matsushita Electric Industrial Co., Ltd. Sound encoder and sound decoder

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104380377A (zh) * 2012-06-14 2015-02-25 瑞典爱立信有限公司 用于可缩放低复杂度编码/解码的方法和装置
CN104380377B (zh) * 2012-06-14 2017-06-06 瑞典爱立信有限公司 用于可缩放低复杂度编码/解码的方法和装置

Also Published As

Publication number Publication date
EP2239730A3 (en) 2010-12-22
EP1083547A1 (en) 2001-03-14
JP2000322097A (ja) 2000-11-24
EP2237268A2 (en) 2010-10-06
EP1083547A4 (en) 2005-08-03
CN1296608A (zh) 2001-05-23
JP4173940B2 (ja) 2008-10-29
EP2239730A2 (en) 2010-10-13
US6928406B1 (en) 2005-08-09
EP2237268A3 (en) 2010-12-22
WO2000054258A1 (fr) 2000-09-14
AU2825200A (en) 2000-09-28

Similar Documents

Publication Publication Date Title
CN1265355C (zh) 音源矢量生成装置及语音编码/解码装置
CN1296888C (zh) 音频编码装置以及音频编码方法
CN1163870C (zh) 声音编码装置和方法,声音译码装置,以及声音译码方法
CN1145142C (zh) 矢量量化方法和语音编码方法及其装置
CN1229775C (zh) 宽带语音和音频信号解码器中的增益平滑
CN1131507C (zh) 音频信号编码装置、解码装置及音频信号编码·解码装置
CN1338096A (zh) 用于分析-合成celp型语音编码的自适应窗
CN1160703C (zh) 语音编码方法和装置以及声音信号编码方法和装置
CN1240049C (zh) 语音编码***
CN1187735C (zh) 多模式话音编码装置和解码装置
CN1156822C (zh) 音频信号编码方法、解码方法,及音频信号编码装置、解码装置
CN1178204C (zh) 声源矢量生成装置以及声音编码装置和声音解码装置
CN1205603C (zh) 在用于宽带信号编码的代数码本中索引脉冲位置和符号的方法和设备
CN1632864A (zh) 扩散矢量生成方法及扩散矢量生成装置
CN1245706C (zh) 多模式语音编码器
CN1842702A (zh) 声音合成装置和声音合成方法
CN1248195C (zh) 语音编码转换方法和装置
CN1156303A (zh) 语音编码方法和装置以及语音解码方法和装置
CN101048649A (zh) 可扩展解码装置及可扩展编码装置
CN101061534A (zh) 音频信号编码装置及方法
CN101059957A (zh) 一种语音编码选择性加密方法
CN1898723A (zh) 信号解码装置以及信号解码方法
CN1122256C (zh) 用前向和反向线性预测编码分析编码音频信号的方法和装置
CN1226039A (zh) 指数计算装置和解码装置
CN1898724A (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20170524

Address after: Delaware

Patentee after: III Holdings 12 Limited liability company

Address before: Osaka Japan

Patentee before: Matsushita Electric Industrial Co., Ltd.

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: 20060719

Termination date: 20180302