JPH06138896A - 音声フレームを符号化するための装置および方法 - Google Patents

音声フレームを符号化するための装置および方法

Info

Publication number
JPH06138896A
JPH06138896A JP4160233A JP16023392A JPH06138896A JP H06138896 A JPH06138896 A JP H06138896A JP 4160233 A JP4160233 A JP 4160233A JP 16023392 A JP16023392 A JP 16023392A JP H06138896 A JPH06138896 A JP H06138896A
Authority
JP
Japan
Prior art keywords
vector
speech
codebook
value
output
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.)
Pending
Application number
JP4160233A
Other languages
English (en)
Inventor
William C Yip
イップ ウィリアム・シー
David L Barron
バロン デビッド・エル
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.)
Motorola Solutions Inc
Original Assignee
Motorola Inc
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
Priority claimed from US07/708,609 external-priority patent/US5173941A/en
Priority claimed from US07/708,947 external-priority patent/US5265190A/en
Priority claimed from US07/714,409 external-priority patent/US5179594A/en
Priority claimed from US07/722,572 external-priority patent/US5187745A/en
Application filed by Motorola Inc filed Critical Motorola Inc
Publication of JPH06138896A publication Critical patent/JPH06138896A/ja
Pending legal-status Critical Current

Links

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/12Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
    • 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/0013Codebook search algorithms
    • G10L2019/0014Selection criteria for distances
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/06Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being correlation coefficients
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/18Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being spectral information of each sub-band

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】 【目的】 CELP符号化のための計算機的な負担およ
び時間を適応コードブックのベクトルをサーチするため
の再帰ループを再構成することにより低減する。 【構成】 ショートターム知覚的重み付けフィルタのイ
ンパルス関数をまず知覚的重み付けされた目標音声とコ
ンボルブし、その結果が各コードブックベクトルと相互
相関されて最適の適応コードブックベクトルを識別する
ためのエラー関数を生成する。自己相関は最初は各コー
ドブックベクトルの少数の自己相関係数のみにつき行わ
れ、検出値は入力音声により整合するものを検出するた
めにすべてのベクトルを走査するため使用される。すべ
てのベクトル値を使用する自己相関が次にこのサブセッ
トのベクトルに対し行われ音声フレームを表す最善のベ
クトルを識別する。エンドコレクション手順が音声フレ
ーム長より短いベクトルに対して使用されコピーアップ
エラーを避ける。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、音声または他のアナロ
グ信号のデジタル符号化のための改良された手段および
方法に関し、より詳細には、コード励起またはコード駆
動線形予測符号化(code excited lin
ear predictive coding)に関す
る。
【0002】
【従来の技術】コード励起線形予測(CELP)符号化
はよく知られた音声通信のための確率的または推計的な
(stochastic)符号化技術である。CELP
符号化においては、短時間スペクトルおよび長時間ピッ
チが1組の時間変化する線形フィルタによりモデル化さ
れる。典型的な音声コーダをベースとした通信システム
においては、音声は送信されることが望まれる最も高い
周波数のほぼ2倍でA/D変換器によってサンプルさ
れ、たとえば、4KHzの音声帯域幅に対しては典型的
には8KHzのサンプリング周波数が使用される。CE
LP符号化は線形予測(LPC)フィルタを励起または
駆動するためにエンコードされた励起情報を使用して音
声を合成する。フィルタへの入力として使用される、励
起または駆動(excitation)はホワイトガウ
ス信号のコードブックによりモデル化される。最適の励
起は候補の(candidate)励起ベクトルのコー
ドブックをフレームごとのベースでサーチすることによ
り検出される。
【0003】LPC分析がLPCパラメータを決定する
ために入力音声フレームに対して行われる。次にLPC
フィルタがテーブル、すなわち、コードブックからの種
々の候補ベクトルによって励起される時に、LPCフィ
ルタの出力をデジタル化された入力音声と比較すること
により分析が進められる。最善の候補ベクトルが候補励
起ベクトルを使用して合成された音声がどれだけよく入
力音声に整合するかに基づき選択される。これは通常音
声のいくつかのサブフレームに対して行われる。
【0004】最善の整合が検出された後、最善のコード
ブック入力(エントリ:entry)を特定する情報、
LPCフィルタの係数およびゲイン係数がシンセサイザ
に送信される。シンセサイザはコードブックの同じコピ
ーを有し、かつそのコードブックにおける適切なエント
リにアクセスし、それを同じLPCフィルタを励起する
ために使用する。
【0005】コードブックはそれらの構成要素が連続し
た励起サンプルであるベクトルからなる。各ベクトルは
サブフレームまたはフレームにおいて音声サンプルがあ
るのと同じ数の励起サンプルを含む。励起サンプルは数
多くの異なる発生源(sources)からくることが
できる。ロングタームのピッチの符号化は適応コードブ
ックからのコードベクトルの適切な選択によって決定さ
れる。適応コードブックは1組の異なるピッチ周期のあ
らかじめ合成された音声励起波形である。
【0006】コードベクトルの最適の選択は、推計的ま
たは適応的コードブックのいずれからでも、知覚的に重
み付けられたエラー関数を最小化することに依存する。
このエラー関数は典型的にはコードブックの各ベクトル
に対し合成された音声と目標音声との比較から得られ
る。これらの徹底的な比較手順は多量の計算を必要とし
かつ通常単一のデジタル信号プロセッサ(DSP)がリ
アルタイムで実行するには実用的ではない。音声品質を
犠牲にすることなく計算の複雑さを低減することが可能
なことがデジタル通信環境においては重要である。
【0007】
【発明が解決しようとする課題】エラー関数、コードブ
ックベクトルサーチ、計算は励起情報のベクトルおよび
マトリクス操作およびLPCフィルタを用いて行われ
る。問題は、多数の計算、たとえば、4.8Kbpsの
ボコーダに対して毎秒約5×10の乗算−加算演算を
行わなければならないことである。従来技術の構成は行
わなければならない計算の数を低減する上で完全には成
功していなかった。従って、音声品質を犠牲にすること
なく計算機的な負担を低減する改良されたCELP符号
化手段および方法の必要性が存在し続ける。
【0008】従来技術の4.8kビット/秒のCELP
符号化システムが合衆国政府のGeneral Ser
vices Administrationによって発
行されたFederal Standard FED−
STD−1016に述べられている。従来技術のCEL
Pボコーダシステムはたとえば、Ketchum他への
米国特許第4,899,385号および第4,910,
781号、Atalへの第4,220,819号、Li
nへの第4,797,925号、およびGersonへ
の第4,817,157号に述べられており、これらは
ここに参照のため導入される。
【0009】典型的な従来技術のCELPボコーダシス
テムは8KHzのサンプリングレートおよび4つの7.
5ミリセカンドのサブフレームに分割された30ミリセ
カンドのフレーム期間を使用する。従来技術のCELP
符号化は3つの基本的な機能からなる。すなわち、
(1)短時間遅延「スペクトル」予測、(2)長時間遅
延「ピッチ」サーチ、および(3)残留(residu
al)「コードブック」サーチである。
【0010】本発明は人間の音声を表わすアナログ信号
の場合につき説明されるが、これは単に説明の便宜のた
めのものに過ぎず、かつ、ここで使用されている、「音
声(speech)」なる用語はシステムのサンプリン
グ能力内での帯域幅の任意の形式のアナログ信号を含む
ことを意図している。
【0011】
【課題を解決するための手段および作用】本発明は適応
的および推計的コードブックに基づくCELP音声符号
化の計算機的な負担を実質的に低減する改良された手段
および方法を提供する。
【0012】第1の実施例においては、再帰計算ループ
がそこから最適の励起ベクルを選択するために適応コー
ドブックのベクトルの票決をするために使用される。好
ましい実施例においては、ショートタームの知覚的に重
み付けられたフィルタのインパルス関数が適応コードブ
ックにおいて各ベクトルと相関された知覚的に重み付け
られた目標音声および結果とコンボルブされかつ自己相
関されたコードブックベクトルおよび自己相関されたイ
ンパルス関数と組合わされてエラー関数を生成する。最
小のエラー関数を有する適応コードブックベクトルが選
択されて調べられている特定の音声フレーム(またはサ
ブフレーム)を表わす。
【0013】別の実施例はさらに適応コードブックのた
めの再帰ループを、その各々がNのエントリを有する適
応コードブックのKのベクトルに対し行わなければなら
ない自己相関演算の数を低減することにより簡略化す
る。自己相関は最初は各コードブックベクトルにおける
Nの自己相関係数に対しP<<Nの小さな数Pについて
のみ行われ、かつ検出された値はすべてのKのコードブ
ックベクトルを通して操作するために使用され入力音声
に対し最善の整合を与えるKのコードブックベクトル
(S<<K)の内のSを探す。Sのベクトルに対する自
己相関関数は次にRの自己相関係数(P<R≦N)に対
し再計算されかつSのコードブックベクトルはSの適応
コードブックベクトルの内のどれが入力音声に対し最善
の整合を与えるかを決定するために再評価される。
【0014】さらに別の実施例は、フレーム長Lより短
い長さMのコードブックベトクルが評価されている時に
自己相関係数を決定するために実行されなければならな
い計算の数をさらに低減する。長さM<Lの第1のベク
トルC(n)の自己相関係数U(m)が計算され、
ここでk=1かつmは自己相関遅れ指数(lag in
dex)でありまたnはコードブックベクトルにおける
連続するサンプルの指数(index)であり、さらに
Lは次式による分析フレーム長である。 (m)=(L/M)U′(m) (2) なおm=0〜T<mである。残りのコードブックベクト
ルの自己相関係数U(m)は次式に従って増分的に計
算され、ここでk≧2である。 U′(m)=[U′k−1(m)+C(M+k−1) ・C(M+k−1+m)] (3) U(m)={L/(M+k−1)}U′(m) (4)
【0015】ただし、m=0〜T<M、かつプロセスは
(M+k−1)=Lまで反復される。T=M−1である
ことが好ましい。得られた値U′(m)およびU
(m)は示されたスケーリングファクタによってスケー
リングされ、たとえば、k=1に対し(L/M)、k=
2に対しL/(M+1)、そして同様に(M+k−1)
=Lまで行われる。得られた自己相関係数はコードブッ
クベクトルC(n)の内のどれが入力音声と比較した
時最小のエラーを生成するかを決定する上で使用され
る。
【0016】さらに別の実施例においては、目標音声を
模写するための最適の推計的コードブックベクトルを識
別するためにCELP符号化プロセスによって発生され
る他のベクトルとともに推計的コードブックのベクトル
の相関係数をより迅速かつ容易に決定するための手段お
よび方法が提供される。より詳細には、n=1からNま
でに至る指数nによって識別される値を有する第1のベ
クトルV(n)、および1組の第2のベクトルS
(n)であって該第2のベクトルの各々は指数kによ
って識別されかつ該第2のベクトルの各々はゼロ(ze
ro)または非ゼロ(non−zero)であってかつ
n=1からNに至る指数nによって識別されるNまでの
値を有するもの、がS(n)が非ゼロとし異なるk
に対しS(n)の指数nk,iを識別し、指数n
k,iに対応するV(n)の値を加算して和Q(k)を
形成し、最も大きな値Q(k=j)に対応する値k=j
を識別し、かつSk=j(n)を使用して音声を合成す
ることにより組合わされる。
【0017】好ましい実施例においては、前記組の第2
のベクトルの連続するベクトルはオーバラップ量Δk,
Δnに従って先行する第2のベクトルのオーバラップに
より決定され、かつ前記識別および加算ステップは、S
(n)が非ゼロであるとしS(n)の指数n
1,iをk=1に対して識別する段階、n1,iからス
タートしかつ前記オーバラップ量Δk,Δnを使用する
段階、S(ni′)が非ゼロであるとしk>1に対し
指数nk,i′をさらに決定する段階、およびそのよう
な指数に対するV(n)の値およびさらに他の指数を加
算して和Q(k)を形成する段階を具備する。
【0018】さらに別の実施例においては、n=1〜N
の出力、n=1〜Nの第1の入力、第2の入力、および
n=1〜Nの選択手段を有するN×Nのマルチプレクサ
がコードブックベクトルを組合わせるために使用され
る。n番目の選択手段に提供される第1の論理レベルは
n番目の出力をn番目の第1の入力に結合しかつn番目
の選択手段に提供される第2の論理レベルはn番目の出
力を前記第2の入力に結合する。前記第2の入力は便宜
的には所定の論理レベルである。前記第1のベクトルの
n=1〜Nの値はマルチプレクサのn=1〜Nの第1の
入力に供給されかつ指数k=1の第2のベクトルのn=
1〜Nの値がマルチプレクサのn=1〜Nの選択手段に
供給される。前記第2のベクトルはn=1〜Nの選択手
段においてnのある値に対し第1の論理レベルを提供し
かつnの他の値に対し第2の論理レベルを提供する。マ
ルチプレクサ出力に現われる第1のベクトルの値はアキ
ュムレータにおいて加算され和(sum)を提供する。
前記提供および加算段階はkのさらに他の値に対して繰
返され、かつどの第2のベクトルが目標音声に最も近い
整合を与える和を有するかに基づき音声が合成される。
【0019】好ましい実施例においては、各々の第2の
ベクトルは2つの部分に分割され、すなわち、第2のベ
クトルの0,+1の値のロケーションに対応する値0,
1を有する第1の部分、および第2のベクトルの値0,
−1のロケーションに対応する値0,1を有する第2の
部分に分割される。各部分は望ましくはROMに記憶さ
れる。各部分に関連して上に述べられかつ同様にして動
作するもののようなマルチプレクサが設けられ、各マル
チプレクサは前記第2のベクトルのその関連する部分の
0,1の値に基づく累算された出力和を提供する。前記
提供および加算段階は上に述べたkの各値に対し各々の
ROM−マルチプレクサの組合わせに対して反復され、
かつ各々から生ずる和はさらに他の加算器(または減算
器)において組合わされてどのベクトルが目標音声に対
し最も近い整合を与えるかを選択する上で使用するため
の組合わされた出力を提供する。
【0020】
【実施例】図1は、単純化されたブロック図形式で、C
ELP符号化を利用したボコーダ送信システムを示す。
CELPコーダ100は入力音声102を受信しかつC
ELP符号化出力信号104を生成する。CELP符号
化信号104は送信経路またはチャネル106を介して
CELPデコーダ300に送信され、そこで元の音声信
号102の模写(facsimile)302が合成に
より再構成される。送信チャネル106は任意の形式と
することができるが、典型的には制限された帯域幅の有
線または無線通信リンクである。CELPコーダ100
はしばしば「アナライザ」と称されるが、それはその機
能が元の音声102を最もよく表すCELPコードパラ
メータ104(たとえば、コードブックベクトル、ゲイ
ン情報、LPCフィルタのパラメータ、その他)を決定
することであるためである。CELPデコーダ300は
しばしばシンセサイザと称されるが、それはその機能が
入力CELP符号化信号104に基づき出力合成音声3
02を再生することであるためである。CELPデコー
ダ300は伝統的なものでありかつ本発明の一部ではな
く、従ってこれ以上の詳細は説明しない。
【0021】図2の(a)および(b)は、CELPコ
ーダ100を非常に詳細にかつ本発明の好ましい実施例
に従って示す。入力アナログ音声信号102はまずフィ
ルタ110によって帯域ろ波されて(band−pas
sed)エイリアシング(aliasing)を防止す
る。帯域ろ波されたアナログ音声信号111は次にアナ
ログ−デジタル(A/D)コンバータ112によってサ
ンプルされる。サンプリングは通常ナイキストレート、
たとえば、4KHzのCELPボコーダに対して8KH
zで行われる。他のサンプリングレートも使用すること
ができる。任意の適切なA/Dコンバータを使用でき
る。A/Dコンバータ112からのデジタル化された信
号113はひとつながりのサンプル、たとえば、その振
幅が音声波形のエンベロープに対応するひとつながりの
狭いパルスからなる。
【0022】テジタル化音声信号113は次にフレーム
またはブロックに分割され、すなわち、所定の数のデジ
タル化された音声サンプル、たとえば、フレームごとに
60,180または240サンプル、を含む連続する時
間ブラケットに分割される。これはCELP処理におい
ては習慣的に「フレームレート」と称されている。他の
フレームレートも使用できる。これはフレーマ114に
おいて行われる。これを達成するための手段は技術上よ
く知られている。連続する音声フレーム115はフレー
ムメモリ116に記憶される。フレームメモリ116の
出力117はデジタル化音声115のフレーム117を
その機能につき以下に説明するブロック122,14
2,162および235に送る。
【0023】当業者はデジタル化音声のフレームはさら
にサブフレームに分割でき、かつ音声分析および合成は
サブフレームを使用して行うことができることを理解す
るであろう。ここで用いられている用語「フレーム」
は、単数または複数であっても、デジタル音声のフレー
ムおよびサブフレームの双方に言及することを考えてい
る。
【0024】CELPコーダ100は2つのコードブッ
ク、すなわち、適応コードブック155および推計的
(stochastic)コードブック180を使用す
る(図2の(b)を参照)。各音声フレーム115に対
し、コーダ100は声道(vocal tract)の
フォルマント特性を表すLPC係数123を計算する。
コーダ100はまた推計的コードブック180および適
応的コードブック155の双方からの入力(ベクトル)
および関連するスケーリング(ゲイン)ファクタをサー
チし、これらは、LPC係数123を有するフィルタを
励起または駆動するために使用された時、最もよく入力
音声フレーム117を近似するものがサーチされる。L
PCケース、コードブックベクトルおよびスケーリング
(ゲイン係数)情報は処理されかつチャネルコーダ21
0に送られ、そこでこれらは組合わされて符号化CEL
P信号104を形成し、該信号104は経路106によ
ってCELPデコーダ300に送信される。以上のこと
が行われる処理につきより詳細に説明する。
【0025】次に、ブロック122,125,130お
よび135を含むデータパス121を参照すると、LP
Cアナライザ122は入力音声フレーム117に応答し
てよく知られた技術を用いてLPC係数123を決定す
る。LPC係数123はラインスペクトル対(LSP)
またはラインスペクトル周波数(LSF)の形式になっ
ており、これらの用語は技術上よく理解されている。L
SP123はコーダ125によって量子化され、かつ量
子化されたLPC出力信号126はチャネルコーダ21
0に送信され、そこでその信号は送信チャネル106を
介してデコーダ300に送信されるCELP信号104
の一部(すなわち、LPCフィルタ係数)を形成する。
【0026】量子化されたLPC係数126はデコーダ
130によってデコードされ、かつデコードされたLS
Pは出力信号131,132を介してそれぞれ、データ
パス141および161に関連して説明する、スペクト
ルインバースフィルタ(spectrum inver
se filters)145および170に送信さ
れ、かつ出力信号133を介して帯域幅拡張重み付け発
生器135に送信される。信号131,132および1
33はデコードされた量子化LPC係数に関する情報を
含む。コーダ125およびデコーダ130を実現する手
段は技術上よく知られている。
【0027】帯域幅拡張重み付け発生器135はスケー
リングファクタ(典型的には=0.8)を提供しかつフ
ォルマントの帯域幅拡張の機能を達成し、帯域幅拡張さ
れたLPCフィルタ係数に関する情報を含む出力信号1
36,137を生成する。信号136,137はそれぞ
れ、それらの機能については以下に説明するカスケード
重み付けフィルタ150および175に送信される。
【0028】次に、ブロック142,145および15
0を含むデータパス141を参照すると、スペクトル予
測器メモリ減算器142は117を介してフレームメモ
リ116から到達する入力サンプル音声115からショ
ートタームスペクトル予測器フィルタ195(図2の
(b)を参照)における前の状態196(すなわち、直
前のフレームにより残されたもの)を減算する。減算器
142は音声残留信号143を提供し該信号143はデ
ジタル化入力音声115から技術上フィルタリンギング
信号またはフィルタリングダウンと称されるものを減算
したものである。フィルタリンギング信号は与えられた
音声フレームに関連するフィルタ(たとえば、図2の
(b)のLPCフィルタ195)を駆動するために使用
されるインパルスがそのフレームの終りまでに完全に消
散せず、後続のフレームに広がるフィルタ駆動または励
起(すなわち、「リンギング」)を引き起こし得るため
に生ずる。
【0029】このリンギング信号は後続のフレームにお
いてひずみとして現れるが、その理由はこのリンギング
信号がそのフレームの音声内容と無関係であるためであ
る。もし該リンギング信号が除去されなければ、それは
コードパラメータの選択に影響を与えかつデコーダ30
0によって合成される音声の品質を劣化させる。
【0030】音声115からフィルタリンギング信号1
96をマイナス(減算)したものに関する情報を含む音
声残留または残差信号143はデコーダ130から信号
131とともにスペクトルインバースフィルタ145に
供給される。フィルタ145は典型的にはゼロフィルタ
として実施できるが(すなわち、A(z)=A+A
1z −1+…+A−nであり、ここで各AはLPC
フィルタの係数でありかつzは該フィルタの「Z変換」
である)、しかし技術上よく知られた他の手段も使用で
きる。信号131および143はフィルタ145におい
てLPCインバースろ波された音声を生成するためにコ
ンボリューションによって組合わされる。フィルタ14
5の出力信号146はカスケード重み付けフィルタ15
0に送られる。フィルタ150は典型的には極(pol
e)フィルタとして実施されるが(すなわち、1/A
(z/r)、ただしA(z/r)=A+Arz−1
+…+A−nであり、かつ各AはLPCフィル
タ係数であり、またrは拡張ファクタでありかつzは該
フィルタの「Z変換」である)、しかし技術上よく知ら
れた他の手段を用いることもできる。
【0031】ブロック150からの出力信号152はブ
ロック135から到達する帯域幅拡張されたLPC係数
信号136によるインパルス関数(たとえば、1,0,
0,…,0)のコンボリューションから得られる知覚的
に重み付けられたLPCインパルス関数H(n)であ
る。信号136はまたブロック150においてコンボリ
ューションによって信号146と組合わされ出力151
においてパス141から得られる知覚的に重み付けられ
た短時間遅延目標音声信号X(n)を生成する。
【0032】重み付けフィルタ150の出力151およ
び152は適応コードブックサーチャ220に供給され
る。目標音声信号151(すなわち、X(n))および
知覚的に重み付けされたインパルス関数信号152(す
なわち、H(n))はサーチャ220および適応コード
ブック155によって使用されてピッチ周期(すなわ
ち、フィルタ195のための駆動ベクトル)およびそれ
に対するゲインであって、デジタル化入力音声フレーム
117に最も近く対応するものを決定する。これが達成
される方法は図3および図4に関連してより詳細に説明
する。
【0033】次に、ブロック162,165,170お
よび175を含むデータパス161を参照すると、ピッ
チ予測器メモリ減算器162が長時間遅延ピッチ予測器
フィルタ190における前のフィルタ状態192を11
7を介してメモリ116から受信されたデジタル化入力
サンプル音声115から減算してサンプルされた音声マ
イナス長時間遅延ピッチ予測器フィルタ190のリンギ
ングからなる出力信号163を与える。出力信号163
はスペクトル予測器メモリ減算器165に供給される。
【0034】スペクトルメモリ減算器165はブロック
142に関して述べたのと同様の機能を達成し、かつ短
時間遅延スペクトル予測器(「スペクトルの」)フィル
タのリンギングまたはリングダウン信号196をピッチ
減算器162を介して送信されたデジタル化入力音声フ
レーム117から減算する。これは、現在のフレームの
サンプルされた音声117から前のフレームから残され
た長時間遅延(「ピッチ」)フィルタ190および短時
間遅延(「スペクトル」)フィルタ195のリンギング
を減算したものからなる剰余出力信号166を生成す
る。剰余信号166はブロック145と類似したスペク
トルインバースフィルタ170に供給される。
【0035】インバースフィルタ170は剰余信号16
6およびデコーダ130の出力132を受信する。信号
132はデコードされた量子化LPC係数に関する情報
を含む。フィルタ170はコンボリューションによって
信号166および132を組合わせLPCインバースろ
波音声を備えた出力信号171を生成する。出力信号1
71はブロック150に類似したカスケード重み付けフ
ィルタ175に送られる。
【0036】重み付けフィルタ175はフィルタ170
からの信号171および帯域幅拡張重み付け発生器13
5からの信号137を受信する。信号137は帯域幅拡
張LPC係数に関する情報を含む。カスケード重み付け
フィルタ175は出力信号176,177を発生する。
フィルタ175は典型的には極フィルタ(すなわち、複
素面に極のみ)として実施されるが、技術上よく知られ
た他の手段も使用できる。
【0037】信号137,171はフィルタ175にお
いてコンボリューションによって組合わされ出力177
においてパス121から得られた知覚的に重み付けられ
たLPCインパルス関数H(n)を生成し、かつ出力1
76においてパス161から得られた知覚的に重み付け
られた長時間遅延および短時間遅延目標音声信号Y
(n)を生成する。出力信号176,177は推計的ま
たは確率的(stochastic)サーチャ225に
送られる。確率的サーチャ225は確率的コードブック
180を使用して最適のホワイトノイズベクトルおよび
最適のスケーリング(ゲイン)ファクタを選択し、これ
らは、所定の係数のピッチおよびLPCフィルタに印加
された時、入力デジタル音声フレーム117に対し最善
の整合を与える。確率的サーチャ225は技術上よく知
られた動作を行いかつ一般に図3および図4に関連して
より詳細に説明する適応サーチャ220によって達成さ
れるものと類似の動作を行う。
【0038】要約すると、チェイン141においては、
スペクトルインバースフィルタ145はLSP131お
よび剰余143を受信しかつその出力146をカスケー
ド重み付けフィルタ150に送信して出力152に知覚
的に重み付けされたLPCインパルス関数応答H(n)
を発生しかつ出力151に知覚的に重み付けされた短時
間遅延目標音声信号X(n)を発生する。チェイン16
1においては、スペクトルインバースフィルタ170は
LSP132と短時間遅延および長時間遅延音声残差
(residual)166を受信し、かつその出力1
71を重み付けフィルタ175に送り出力177に知覚
的に重み付けられたLPCインパルス関数H(n)を発
生しかつ出力176に知覚的に重み付けられたショート
タームおよびロングターム遅延目標音声信号Y(n)を
発生する。
【0039】集合的に230とラベル付けられたブロッ
ク135,150,175は知覚的重み付け機能を提供
する。チェイン121からのデコードされたLSPはブ
ロック135において出力136,137に帯域幅拡張
重み付けファクタを発生するために使用される。重み付
けファクタ136,137はカスケード重み付けフィル
タ150および175において知覚的に重み付けられた
LPCインパルス関数H(n)を発生するために使用さ
れる。知覚的重み付けブロック230の各要素はLPC
係数に応答して重要な音声内容を有することが知られて
いる音声の部分を強調するマトリクスの形式のスペクト
ル重み付け情報を計算する。このスペクトル重み付け情
報1/A(z/r)はカスケード重み付けフィルタ15
0および175の有限インパル応答H(n)に基づく。
有限インパルス応答関数H(n)の利用はコードブック
サーチャ220および225が達成しなければならない
計算の数を大幅に低減する。スペクトル重み付け情報は
サーチャによってコードブック155および180から
の駆動情報に対する最善の候補を決定するために利用さ
れる。
【0040】図2の(a)および(b)を引き続き参照
すると、適応コードブックサーチャ220はチャネルコ
ーダ210に送られるべき最適の適応コードブックベク
トル指数221および関連するゲイン222を発生す
る。確率的コードブックサーチャ225はチャネルコー
ダ210に送信されるべき最適の確率的コードブックベ
クトル指数226、および関連するゲイン227を発生
する。これらの信号はチャネルコーダ210によってエ
ンコードされる。
【0041】チャネルコーダ210は5つの信号を受信
する。すなわち、コーダ125からの量子化LSP12
6、最適確率的コードブックベクトル指数226および
そのためのゲイン設定227、および適応コードブック
ベクトル指数221とそのためのゲイン設定222であ
る。チャネルコーダ210の出力はエンコードされたパ
ラメータの直列的なビットストリーム104である。ビ
ットストリーム104はチャネル106を介してCEL
Pデコーダ300(図1を参照)に送られ、そこで、デ
コードの後、回復されたLSP、コードブックーベクト
ルおよびゲイン設定は同じフィルタおよびコードブック
に印加されて合成された音声302を生成する。
【0042】すでに説明したように、CELPコーダ1
00は分析、合成および比較のプロセスによりデコーダ
300に送信されるべき最適のCELPパラメータを決
定する。試験的なCELPパラメータを使用した結果は
入力音声とフレームごとに比較され最適のCELPパラ
メータが選択できるようにしなければならない。ブロッ
ク190,195,197,200,205および23
5はこれを達成するためにすでに図2の(a)および
(b)において説明したブロックと組合わせて使用され
る。選択されたCELPパラメータ(LSP係数、コー
ドブックベクトルおよびゲイン、その他)は出力211
を介してデコーダ182に受け渡されそこでそれらのパ
ラメータはブロック190,195,197,200,
205および235に分配されかつ次にすでに述べたブ
ロック142,145,150,162,165,17
0および175に戻る。
【0043】ブロック182は信号126,221,2
22,226,227を回復するためにコーダ210か
らの信号211をデコードする機能を有する「チャネル
デコーダ」として識別される。しかしながら、当業者は
ブロック210−182によって示されるコード−デコ
ード動作は省略できかつ信号126,221,222,
226,227は符号化されない形式でブロック182
に供給されブロック182は単に該信号をブロック19
0,195,197,200,205および235に分
配するためのバッファとして作用するようにできること
を理解するであろう。いずれの構成も満足すべきもので
あり、かつ用語「チャネルコーダ182」、「コーダ1
82」または「ブロック182」はそのような情報を受
け渡すための構成または任意の他の手段を示すことを意
図している。
【0044】デコーダ182の出力信号は、ブロック1
95に送られる量子化LSP信号126、ブロック19
0に送られる適応コードブック指数信号221、ブロッ
ク190に送られる適応コードブックベクトルゲイン指
数信号222、ブロック180に送られる確率的コード
ブック指数信号226、およびブロック197に送られ
る確率的コードブックベクトルゲイン指数信号227で
ある。これらの信号はフィルタ190を駆動し、それに
より適応コードブック155およびフィルタ195に供
給される出力191を生成する。出力191はコーダ1
82の出力126と組合わせてさらにフィルタ195を
駆動し合成された音声196を生成する。
【0045】シンセサイザ228はゲイン乗算器19
7、長時間遅延ピッチ予測器190、および短時間遅延
スペクトル予測器195、減算器235、スペクトルイ
ンバースフィルタ220およびカスケード重み付けフィ
ルタ205を具備する。デコードされたパラメータ12
6,221,222,226および227を使用して、
確率的コードベクトル179が選択されかつゲインパラ
メータ226によっスケーリングされるべきゲイン乗算
器197に送られる。ゲイン乗算器197の出力198
は長時間遅延ピッチ予測器190によって使用され音声
残差191を発生する。フィルタ状態出力情報192、
これはまた技術上予測器フィルタ190の音声残差(s
peech residual)とも称されるが、フィ
ルタメモリの更新のためにピッチメモリ減算器162に
送られる。そのパラメータが入力LPCパラメータ信号
126によってセットされるLPCフィルタである、短
時間遅延スペクトル予測器195が音声残差191によ
って駆動され合成デジタル音声出力196を生成する。
同じ音声残差信号191は適応コードブック155の更
新のために使用される。
【0046】合成音声196は減算器235によってデ
ジタル化入力音声197から減算されデジタル音声剰余
出力信号236を生成する。音声剰余236はスペクト
ルインバースフィルタ200に供給され残留誤差信号2
02を発生する。出力信号202はカスケード重み付け
フィルタ205に供給され、かつ出力フィルタ状態情報
206,207は信号パス141および161と組合わ
せて前に述べたようにカスケード重み付けフィルタ15
0および175を更新するために使用される。スペクト
ルインバースフィルタ200のフィルタ状態情報であ
る、出力信号201,203はブロック145,170
に関して前に述べたようにスペクトルインバースフィル
タ145および170を更新するために使用される。
【0047】図3および図4は適応コードブックサーチ
ャ220の単純化したブロック図である。図3は適応コ
ードブックサーチャ220の適切な構成を示しかつ図4
はさらに改良された構成を示す。図4の構成が好まし
い。
【0048】次に図3および図4を概略的に参照する
と、適応コードブック155の情報は前のフレームから
の励起または駆動情報である。各々のフレームに対し、
前記駆動情報はサンプルされた元の音声と同じ数のサン
プルからなる。コードブック155は便宜的には巡回的
なリストとして編成され、それにより新しい組のサンプ
ルが単にコードブック155にシフト入力されて該コー
ドブックに現在ある前のサンプルに置き変わるようにさ
れる。新しい駆動サンプルは長時間遅延ピッチ予測器1
90の出力191によって提供される。
【0049】コードブック155からの駆動情報を使用
する場合、サーチャ220は組(sets)で、すなわ
ち、サブフレームで処理しかつ該ベクトルをばらばらに
なったサンプルとして取扱わない。サーチャ220はコ
ードブック155におけるサンプルをリニアアレイとし
て取扱う。たとえば、60サンプルのフレームに対し、
サーチャ220はコードブック155からのサンプル1
〜サンプル60を使用して第1の候補の組の情報を形成
し、サンプル2〜サンプル61を使用して第2の組の候
補の情報を形成し、以下同様である。このタイプのコー
ドブックサーチはしばしばオーバラッピング・コードブ
ックサーチと称される。本発明はコードブック155の
構造および機能に関するものではなく、最適のコードブ
ックベクトルを識別するためにどのようにしてコードブ
ック155がサーチされるかに関するものである。
【0050】適応コードブックサーチャ220は図2の
(b)における出力191からすでに適応コードブック
155に格納された前に合成されたピッチ情報156を
アクセスし、かつ各々のそのような組の情報156を利
用してブロック150から受信された目標駆動151お
よびコードブック155からアクセスされた駆動156
の間のエラー基準を最小化する。スケーリングファクタ
またはゲイン指数222もまた各々のアクセスされた組
の情報156から計算されるが、それは適応コードブッ
ク155に記憶された情報は人間の声または他の入力信
号のダイナミックレンジの変化を考慮に入れないからで
ある。
【0051】使用される好ましいエラー基準は最小2乗
予測エラー(MPSE)であり、これはフレームメモリ
出力117からの元の音声フレーム115と図2の
(b)のブロック195の出力において生成される合成
音声196の間の誤差の2乗である。合成音声196は
コードブック155から得られた試行的駆動情報156
に関して計算される。エラー基準はコードブック155
から得られた各々の候補ベクトルまたは組の駆動情報1
56に対して評価され、かつ最も低いエラー値を与える
特定の組の駆動情報156′が現在のフレーム(または
サブフレーム)のために使用される組の情報である。
【0052】サーチャ220が対応する最善の整合のス
ケーリングファクタまたはゲイン222とともに使用さ
れるべき最善の組の駆動情報156′を決定した後、最
善の整合の指数156′に対応するベクトル指数出力信
号221および最善の整合のスケーリングファクタ22
2′に対応するスケーリングファクタ222はチャネル
エンコーダ210に送信される。
【0053】図3は第1の実施例による適応サーチャ2
20のブロック図を示し、かつ図4はさらに改良されか
つ好ましい実施例による適応サーチャ220′を示す。
適応サーチャ220,220′は適応コードブック15
5を介してベクトル指数C(n)…C(n)の順次
的なサーチを行う。順次的(sequential)サ
ーチ動作の間、サーチャ220,220′はコードブッ
ク155から各々の候補励起または駆動ベクトルC
(n)をアクセスし、ここでkはコードブックにおけ
る特定のベクトルを識別する1からKに至る指数であ
り、かつnはn=1からn=Nに至る別の指数であり、
Nは与えられたフレーム内のサンプルの数である。典型
的なCELPのアプリケーションにおいては、K=25
6または512または1024であり、かつN=60ま
たは120または240であるが、KおよびNの他の値
も使用することができる。
【0054】適応コードブック155は前に合成された
音声波形から決定されるセットの異なるピッチ期間また
は周期を含む。第1のサンプルベクトルは合成音声波形
(N)のN番目のサンプルからスタートし、これは
現在の最後のサンプルの合成された音声波形からNサン
プル戻った所に位置する。人間の声では、ピッチ周波数
は一般に40Hz〜500Hzの付近である。これは約
200〜16サンプルに変換される。もし分数的な(f
ractional)ピッチが計算に含まれておれば、
Kはピッチ範囲を表すために256または512となり
得る。従って、適応コードブックは1組のKのベクトル
(n)を含み、これらは基本的に特定の周波数の1
つまたはそれ以上のピッチ期間のサンプルである。
【0055】次に図3を参照すると、適応コードブック
サーチャ220のコンボリューション発生器510は各
々のコードブックベクトルC(n)、すなわち、信号
156、を知覚的に重み付けられたLPCインパルス応
答関数H(n)、すなわち、カスケード重み付けフィル
タ150からの信号152でコンボルブする。コンボリ
ューション発生器510の出力512は次に相互相関器
(cross−correlator)520において
目標音声残差信号X(n)(すなわち、図2の(a)お
よび(b)の信号151)と相互相関される。コンボリ
ューションおよび相関は各々のコードブックベクトルC
(n)に対して行われ、ここでn=1,…,Nであ
る。コンボリューション発生器510によって行われる
動作は数学的に次の式(1)によって表される。 相互相関発生器520によって行われる動作は数学的に
以下の式(2)によって表される。
【0056】コンボリューション発生器510の出力5
12はまたエネルギ計算機535に供給され、該エネル
ギ計算機535は2乗器552およびアキュムレータ5
53(アキュムレータ553は2乗器552によって決
定される2乗の和を提供する)を具備する。出力554
は除算器(divider)530に伝達され、該除算
器530は信号551および555の比率を計算する。
相互相関器520の出力521は2乗器525に供給さ
れ、該2乗器525の出力はまた除算器530に供給さ
れる。除算器530の出力531はピーク選択回路57
0に供給され、該ピーク選択回路570の機能はC
(n)のどの値C(m)が最善の整合を生成する
か、すなわち、最大の相互相関を決定することである。
これは数学的には式(3a)および(3b)によって表
される。式(3a)はエラーEを表す。 エラーEを最小にすることは以下の式(3b)により表
される相互相関を最大にすることであり、ここでG
式(4)で規定される。
【0057】最適のベクトル指数C(m)の識別子
(指数)は出力221に伝達される。ピーク選択器57
0の出力571は最善の整合のピッチベクトルC
(m)に関連するゲインスケーリング情報をゲイン指
数出力222を提供するゲイン計算機580に伝達す
る。ゲイン計算機580によって行われる演算は数学的
に以下の式(4)により表される。
【0058】出力221および222はチャネルコーダ
210に送られる。コンボリューション発生器510、
相互相関発生器520、2乗器525および552(こ
れらは異なる入力に対し同様の機能を達成する)、アキ
ュムレータ553、除算器530、ピーク選択器570
およびゲイン計算機580を提供するための手段はそれ
ぞれ技術上よく知られている。
【0059】図3の構成は満足すべき結果を与えるが、
各々のコードブックベクトルに対し必要なコンボリュー
ションを行いかつ相関を行うために必要以上の計算を必
要とする。これはコンボリューション510および相関
520が共に各々の音声フレーム117に対するコード
ブック155におけるすべての候補ベクトルに対し行わ
なければならないためである。図3の構成におけるこの
制限は図4の構成により克服される。
【0060】図4の適応コードブックサーチャ220′
はコンボリューション信号W(n)を発生するためにコ
ンボリューション発生器510′におけるショートター
ムLPCフィルタのインパルス知覚的重み付け応答関数
H(n)(すなわち、図2のブロック150の出力15
2)とコンボルブするために知覚的に重み付けされた目
標音声X(n)のフレーム(すなわち、図2の(a)お
よび(b)の信号151)を使用する。これは入力音声
のフレーム117ごとに1度だけ行われる。これはコー
ドブックにおける候補ベクトルの数にほぼ等しい大きな
ファクタで計算機的な負荷を直ちに低減する。これは非
常に大きな計算機的な節約になる。コンボリューション
発生器510によって行われる動作は以下の式(5)に
より数学的に表現される。
【0061】コンボリューション発生器510′の出力
512′は次に相互相関発生器520′により適応コー
ドブック155における各ベクトルC(n)と相関さ
れる。相互相関発生器520′により行われる演算は数
学的に次の式(6)によって表される。
【0062】出力551′は2乗器525′により2乗
され候補ベクトルC(n)のエネルギにより正規化さ
れた各ベクトルC(n)の相関の2乗である出力52
1′を生成する。これは自己相関発生器560′に各々
の候補ベクトルC(n)(出力156)を提供するこ
とにより、かつその出力が引き続き操作されかつ組合わ
される自己相関発生器550′に対しフィルタのインパ
ルス応答H(n)(出力152からの)を提供すること
により達成される。自己相関発生器550′の出力55
2′は後にその機能を説明するルックアップテーブル5
50′に供給される。テーブル555′の出力556′
は乗算器543に供給され、そこで自己相関器560′
の出力561と組合わされる。
【0063】乗算器543′の出力545′はアキュム
レータ540′に供給され、該アキュムレータ540′
はnの引き続く値に対する積を加算しかつその和54
1′を除算器530に送り、そこで相互相関発生器52
0′の出力521′と組合わされる。自己相関器56
0′により行われる操作は数学的に以下の式(7)によ
って記述され、かつ自己相関器550′により行われる
演算は数学的に次の式(8)により記述される。 この場合、C(n)はk番目の適応コードブックベク
トルであり、各ベクトルは1からKに至る指数kにより
識別され、H(n)は知覚的に重み付けされたLPCイ
ンパルス応答であり、Nは分析フレームにおけるテジタ
ル化されたサンプルの数であり、そしてmはダミー整数
指数であり、nは音声フレーム内のNのサンプルの内ど
れが考慮されているかを示す整数指数である。
【0064】上記サーチ操作は各々の候補ベクトルC
(n)をMSPEサーチ基準を使用して目標音声残差X
(n)と比較する。コードブック155の出力156か
ら受信された各々の候補ベクトルC(n)は自己相関
発生器560′に送られ、該自己相関発生器560′は
候補ベクトルのすべての自己相関係数を発生して自己相
関出力信号561′を生成し、該信号561′はブロッ
ク543′および540′を具備するエネルギ計算機5
35′に供給される。
【0065】自己相関発生器550′はH(n)関数の
すべての自己相関係数を発生して自己相関出力信号55
2′を生成し、該信号552′はテーブル555′およ
び出力556′を介してエネルギ計算機535′に供給
される。
【0066】エネルギ計算機535′は入力信号55
6′および561′を候補ベクトルC(n)のすべて
の自己相関係数およびカスケード重み付けフィルタ15
0により発生される知覚的に重み付けされたインパルス
関数H(n)のすべての積の項を加算することにより組
合わせる。エルネギ計算機535′はC(n)の自己
相関係数をH(n)の自己相関係数の同じ遅延項(信号
561′および552′)と乗算するための乗算器54
3′、および乗算器543′の出力を加算して除算器5
30に送られる候補ベクトルのエネルギに関する情報を
含む出力541′を生成するアキュムレータ540′を
具備する。除算器530′はゲインをセットするために
使用されるエネルギ正規化を行う。候補ベクトルC
(n)のエルネギは候補ベクトルC(n)のすべて
の自己相関係数および知覚的に重み付けされたショート
タームフィルタ150の知覚的に重み付けされたインパ
ルス関数H(n)のすべての積の項を加算することによ
り非常に効率的に計算される。ループゲインGを決定
するための上に述べた演算は数学的に以下の式(9)に
よって記述される。 この場合、C(n)、X(m)、H(n)、Φ
(n)、U(n)およびNは前に規定されており、
かつGはk番目のコードベクトルのループゲインであ
る。
【0067】テーブル555′は計算機的な負担をさら
に低減できるようにする。これはインパルス関数H
(n)の自己相関係数552′が入力音声のフレーム1
17ごとに1度だけ計算されればよいからである。これ
はコードブックサーチの前に1行うことができかつその
結果はテーブル555′に記憶することができる。コー
ドブックサーチの前にテーブル555′に記憶された自
己相関係数552′は次に後に適応コードブック155
から各候補ベクトルに対するエネルギを計算するために
使用される。これは計算をさらに大幅に節約できるよう
にする。
【0068】コードブック155における各ベクトルの
正規化された相関の結果はピークセレクタ570′にお
いて比較されかつ最大の相互相関値を有するベクトルC
(m)はピークセレクタ570′により最適のピッチ
周期ベクトルとして識別される。最大の相互相関は数学
的に以下の式(10)によって表すことができる。 この場合、Gは式(9)において規定されており、か
つmはダミー整数指数である。
【0069】ピッチ周期のロケーション、すなわち、コ
ードベクトルC(m)の指数はチャネルコーダ210
への送信のために出力221′に提供される。
【0070】ピッチゲインはゲイン計算機580′によ
り選択されたピッチ周期の候補ベクトルC(m)を使
用して計算されゲイン指数222′を発生する。ここに
述べた手段および方法は、実質的に音声品質の喪失を生
ずることなく計算機的な複雑さを低減する。計算機的な
複雑さが低減されるから、この構成を用いたボコーダは
単一のデジタル信号プロセッサ(DSP)によってより
都合よく実施することができる。本発明の手段および方
法はまた、最小2乗予測エラー(MPSE)サーチ基準
を使用する、音声認識および音声識別のような他の領域
に適用することができる。
【0071】本発明が、ここに述べた方法および装置に
よって生成される、時には目標音声残差(target
speech residual)と称される、知覚
的に重み付けされた目標音声信号X(n)に関して述べ
られたが、本発明の方法は知覚的に重み付けされた目標
音声X(n)を得るためにここで使用された特定の手段
および方法に限定されるものではなく、他の手段および
方法によって得られる目標音声と共にかつ知覚的重み付
けまたはフィルタのリンギングの除去を用いあるいは用
いずに使用するこができる。
【0072】「音声(speech)」または「目標音
声(target speech)」に適用される「残
差(residual)」なる用語はフィルタのリンギ
ング信号が音声または目標音声から減算されている状況
を含むことを考えている。ここで用いられているよう
に、用語「音声残差」または「目標音声」または「目標
音声残差」および省略表現“X(n)”はそのような変
形を含むものである。同じことはまた、有限または無限
インパルス応答関数とすることができ、かつ知覚的重み
付けを用いあるいは用いない、インパルス応答関数H
(n)についても当てはまる。ここで用いられているよ
うに、用語「知覚的に重み付けされたインパルス応答関
数(perceptually weighted i
mpulseresponse function)」
または「フィルタインパルス応答(filter im
pulse response)」および“H(n)”
なる表記は、そのような変形を含むことを意図してい
る。同様に、ワード「ゲイン指数(gain inde
x)」または「ゲインスケーリングファクタ(gain
scaling factor)」およびその表記G
は、そのような「ゲイン」または「エネルギ」正規化信
号が音声のCELP符号化に関連して取り入れる多くの
形式を含むものである。
【0073】図4に示された実施例によって提供される
有利性をもってしても、かなりの計算機的な負担が依然
として残っている。たとえば、図4のブロック560′
における自己相関係数の評価(前記式(7)を参照)
は、コードブック155におけるKのベクトルに対する
エネルギ正規化(ゲイン)係数を計算するために(K)
・(N!)の乗算を必要とする。Kは典型的には512
または1024のオーダでありかつNは典型的には60
または120または240のオーダであるから、(K)
・(N!)=(K)・(N)・(N−1)・(N−2)
…(2)は通常非常に大きな数となる。これらの計算
は、ブロック510′,520′,550′の動作に必
要とされるものおよび特定の適応コードブックベクトル
k=j(n)およびGk=jの対応する値と共に、最
も適合する確率的コードブックベクトルおよび、入力音
声に対し目標音声X(n)の最善の適合(最小のエラ
ー)を与える、対応するゲインファクタを再帰的に決定
するのに必要な他のものの他に必要である。これは必要
な計算を合理的な時間内に行うためにかなりの量の計算
機的な能力を必要とする。
【0074】ベクトル当たりNのエントリのKのベクト
ルを有するコードブックに対して行われることが必要な
自己相関演算の数は音声品質に大きな悪影響を与えるこ
となくかなり低減できることが分かった。これは、Nの
エントリの内の第1のP(P<<N)に対するコードブ
ックベクトルを自己相関してそれに対する第1の自己相
関値を決定する段階、Kのコードブックベクトルおよび
前記第1の自己相関値を使用して合成音声を生成しかつ
その結果を入力音声と比較することによってKのコード
ブックベクトルを評価する段階、Kのコードブックベク
トルの内のどのS(S<<K)が評価されたK−Sの残
りのベクトルよりも入力音声と比較してより少ないエラ
ーを有する合成音声を提供するかを決定する段階、各コ
ードブックベクトルにおけるRのエントリに対するKの
ベクトルの内のこれらのSに対するコードブックベクト
ル(P<R≦N)を自己相関してそれに対する第2の自
己相関値を提供する段階、前記第2の自己相関値を使用
してKのベクトルの内の前記Sを再評価しSのコードブ
ックベクトルの内のどれが入力音声と比較して最少のエ
ラーを提供するかを識別する段階、そして最少のエラー
を提供するコードブックベクトルの識別を使用して音声
フレームに対するCELPコードを形成する段階、を具
備する方法によって達成される。ここに述べられた大き
さのKおよびNに対しては、5≦P≦10かつ1≦S≦
7の範囲のPおよびSが適切である。R=NまたはN−
1であることが望ましい。
【0075】上に述べた動作はまたここに与えられた式
および図に関して説明することができる。たとえば、m
=0〜N−1に対する、n=1〜Nに対する、かつk=
1〜k=Kの各々の値に対し、式(7)を再帰的に評価
する代わりに、以下の手順が用いられる。 (1)m=0〜m=P、ここでP<<N、に対し、式
(7)に従ってブロック550′においてコードブック
ベクトルC(n)の自己相関を行い、(2)それによ
って検出されたU(P)のPの値を使用し、すべての
KのベクトルC(n)を再帰的に評価しかつKのベク
トルC(n)の内のSの、S<<K、入力音声に対し
最も近い整合を提供するものを選択し、次に(3)上の
ステップ(2)において選択されたKのベクトルの内の
Sを最初に選択されたPの値より多く、好ましくはすべ
てm=0〜m=N−1の値、を使用して再帰的に再評価
し、式(7)におけるU(m)を決定し入力音声に対
する最善の適合を与えるj番目の値Ck=j(n)およ
び対応するゲイン指数またはファクタGk=jを決定
し、そして(4)前と同様に、Ck=j(n)およびG
k=jをチャネルコーダ210に送る。
【0076】ここで使用されているように、「再帰的
(recursively)」は反復的な合成による分
析(analysis−by−synthesis)コ
ードブックサーチおよび図2の(a)および(b)と図
4に関して説明したエラー最少化手順を言及している。
【0077】出力音声品質はPが約P=10まで増大す
るに応じて改善され、P>10に対してはそれ以上の少
しの改善があることが分かっている。良好な音声品質は
5≦P≦10に対して得られる。音声品質はP<5に対
し急速に劣化する。Nは通常60またはそれ以上のオー
ダであるから、かなりの計算機的な節約が得られる。
【0078】有用な音声品質はSの値をS=1にまで小
さくし、かつ音声品質はSが増大するにつれて増大する
ことが分かっている。約S=7を超えると、音声品質の
それ以上の改善は検出するのが困難になる。従って、1
≦S≦7が有用な動作範囲であり、これは最適のコード
ブックベクトルおよび対応するゲイン指数またはファク
タに対する再帰的サーチの間に達成されなければならな
い計算の数を大幅に低減する。これは単一のデジタル信
号プロセッサを使用して所望のボコーダ機能を達成する
のをさらに容易にする。
【0079】どのようにしてコードブックエントリが構
築されかつ自己相関が行われるかに関しさらに別の問題
が存在する。これはショートピッチ期間の識別に供する
ために従来技術においてしばしば使用されている「コピ
ーアップ(copy−up)」と称される手順の結果と
して生ずる(たとえば、前述のケッチャム他の米国特許
を参照)。これは次のように説明される。
【0080】最適のピッチ周期に対する適応コードブッ
クサーチにおけるエラー関数のエネルギ項は2つの関数
の自己相関係数のリニアな組合わせに低減することがで
きる。これら2つの関数は知覚的に重み付けされたショ
ートターム・リニアフィルタのインパルス応答関数H
(n)および適応コードブックのコードブックベクトル
(n)である。適応コードブックについては計算機
的な複雑さが確率的コードブックより大きくなるが、そ
れは適応コードブックベクトルに対する自己相関係数が
予め計算しかつ記憶しておくことができないからであ
る。
【0081】各々の適応コードブックベクトルは、サン
プルまたは値とも称される、Nのエントリのリニアアレ
イである。各エントリは1〜Nに至るあるいはN〜1に
至る指数nにより識別される。コードブックにおける隣
接ベクトルは互いに1つのエントリだけ異なる、すなわ
ち、各引き続くベクトルは該ベクトルの終りに加えられ
た1つの新しいエントリを有しかつ該ベクトルの他の端
からドロップされる1つの古いエントリを有し介在する
エントリは同じままである。従って、該ベクトルの端部
を除き、隣接ベクトルは1つの指数だけずれた同じエン
トリを有する。もし隣接するベクトルが並んで配置され
れば、それらは1つのエントリまたはサンプルだけずれ
ておれば釣り合うことになる。これは0から9の間の任
意的なエントリ値および指数n=1−60を有する仮想
的な隣接ベクトルk,k′に対し以下に概略的に説明す
る。この変位(displacement)はコードブ
ック「オーバラップ」と称される。
【0082】 実例I−ベクトルオーバラップの例示 k(n): 1,2,3,4,5,6,7,……,55,56,57,58,59,60 (指数) 4,6,9,3,5,1,8,……, 0, 4, 6, 8, 2, 3 (値) k ′(n): 1,2,3,4,5,6,7,…… ,55,56,57,58,59,60 (指数) 6,9,3,5,1,8,5,…… , 4, 6, 8, 2, 3, 7 (値) ベクトルk′は1つの指数によって変位した隣接ベクト
ルkと同じエントリを有し、かつ古いエントリはベクト
ルの一端からドロップされ(たとえば、値4は左端をド
ロップされ)かつ新しいエントリがパターンに加えられ
る(たとえば、値7が右端に加えられる)。
【0083】自己相関関数U(m)は方程式(7)で
与えられ、この場合m=0〜N−1は積C(n)*C
(n+m)における「遅れ(lag)」値であり、か
つn=1〜Nはベクトルエントリの指数(index)
である。今までは、ベクトル長N(すなわち、コードブ
ックベクトルごとのエントリの数)およびフレーム長L
(すなわち、分析フレームごとの音声サンプルの数)は
同じであると仮定してきた。しかしこれは常にそうであ
る訳ではない。NおよびLが同じであるかあるいは異な
るかに応じて自己相関係数を決定するために異なる作戦
が使用される。
【0084】ベクトル長Nがフレーム長Lに等しいかま
たは大きい場合には、自己相関係数は加算−削除(ad
d−delete)エンドコレクションと呼ばれるプロ
セスによって計算できる。たとえば、引き続く適応コー
ドブックベクトルC,C′C″などのゼロオーダ
またはゼロ遅延(遅れm=0)自己相関係数は最初のベ
クトルに対し(C(n))の和を計算しかつエンド
コレクションによって他のベクトルを検出することによ
り決定できる。エンドコレクションは新しく加算された
ベクトル値の2乗を加算しかつたった今削除されたベク
トル値の2乗を減算することを必要とする。この同じ手
順が(いくつかの変化を伴って)m=1,2,3などに
対し続けられ、その結果計算機的な負担が各々のベクト
ルに対し別個に式(7)により各自己相関係数を計算す
る場合に比較して低減される。自己相関係数を決定する
ためのこの加算−削除エンドコレクション処理は技術上
よく知られている。
【0085】ベクトルにおけるサンプルの数がフレーム
長Lより小さい場合には、フレームを満たすために該ベ
クトルを「コピーアップ(copy−up)」すること
が普通である(たとえば、前述のケッチャム他の米国特
許を参照)。たとえば、もしフレーム長が60でありか
つ20のエントリのみが分析において使用されておれ
ば、これら20のエントリは3回繰り返されて60のベ
クトル長を得る。これは以下にベクトル値の指数に関し
て説明する。
【0086】 実例II−コピーアップ ベクトル 1,2,................................59,60 コピーアップベクトル 1,2,...,19,20,1,2,...,19,20,1,2,...,19,20.
【0087】この複製または「コピーアップ」はもし自
己相関係数を計算するための前に述べた加算−削除エン
ドコレクション方法を用いようとするとエラーを生ず
る。これらのエラーは合成された音声の品質を劣化させ
る。
【0088】エンドコレクションのエラーはmのより大
きな値、すなわち、自己相関関数における高い次数の
(より大きな「遅れ」の項)に対し増大する。前に述べ
た単純な加算−削除エンドコレクション手順はコピーア
ップされたベクトルに対してはもはや満足に動作しな
い。従ってより小さな計算機的な負担(例えば、容易な
エンドコレクション)をもつためにより貧弱な音声品質
を受け入れるか、あるいはより高い音声品質および大き
な計算機的な負担(例えば、各ベクトルを別個に計算す
る)をもつかの望まない選択が残されることになる。ベ
クトルにおけるサンプルの数がフレーム長より小さい状
況に対して自己相関係数を得る計算機的な負担は以下に
述べる改良された計算機的手順および装置によって合成
された音声品質の喪失なく低減できることが分った。
【0089】分析フレームが長さL(例えば、60)お
よびNのサンプルまたは値(例えば、60)を有するコ
ードブックが目標音声に対し最善の整合を生成する適応
コードブックベクトルを決定するために図2から図4ま
での装置および手順に関して使用されるものと仮定す
る。さらに、短時間ピッチ周期を迅速に検出するために
ベクトル値のより小さなサブセットM<N(例えば、M
〜20)が初めに分析のために使用されるものと仮定す
る。過去において、Mのサンプルまたは値が長さLのフ
レームを満たすためにコピーアップされかつ分析はコピ
ーアップされたフレームに基づいていた。本発明の方法
によれば、Mの値のサブフレームをコピーアップする必
要はない。
【0090】この実施例に関連して与えられる説明は特
に適応コードブックベクトルの自己相関係数を効率的に
決定することに向けられており、かつより小さなエラー
および目標音声に対する最善の整合を有するコードブッ
クベクトルを選択するために使用される分析プロセスの
他の部分の説明については図2から図4までの説明を参
照すべきである。
【0091】また、式(7)を参照すべきであり、この
場合は積[C(n)*C(n+m)]のn=1〜N
かつm=0〜N−1にわたる和U(n)はk番目のベ
クトルの自己相関係数である。指数mは通常0からN−
1におよびかつ自己相関係数を計算するために使用され
る「遅れ」を識別する。1〜Kの範囲の指数kはコード
ブックベクトルを識別しかつ指数nは該ベクトル内の個
々のサンプルまたは値を示す。分析において使用される
サンプルの数は検出されるピッチ周期に依存する。例え
ば、人間の声に関連する最も短いピッチ周期については
約20のサンプルが必要とされかつ最も長いピッチ周期
に対しては約147のサンプルが必要とされる。
【0092】0次の自己相関係数はm=0に対応し、1
次の係数はm=1に対応し、かつ以下同様である。「ピ
ッチ遅れ」M<Nは分析のために使用されるべきベクト
ルにおける値の数として規定される。従って、短時間ピ
ッチ周期の音声成分に対する自己相関係数を決定する上
で、mはゼロからMまで変化する。「フレームサイズ」
Lはフレームにおける音声のサンプル数として定義され
る。通常、L=Nである。Lに対する典型的な値は60
でありかつMに対する典型的な値は20であるが、L<
Mであればこれら双方に対し他の値を使用することもで
きる。説明の便宜のため、以下の説明ではL=60およ
びM=20の値が仮定されている。しかしながら、当業
者はここに記述した説明に基づきこれらの値が制限的な
ものでないことおよびMおよびLの他の値も使用できる
ことを理解するであろう。
【0093】本発明は自己相関係数を決定する場合の計
算機的な負担を低減しかつコピーアップのエラーを避け
るための手段および方法を提供する。それはコピーアッ
プが前に使用された、すなわち、最も短いピッチ周期を
迅速に識別するために限られた数のコードブックサンプ
ル(例えば、20)が必要であるが、その限られた数の
サンプルはエネルギの正規化問題を避けるために分析フ
レーム長(例えば、60)に拡張されなければならな
い、再起的な合成による分析手順の部分にあてはまる。
いったん第1のM+k−1のベクトルが分析されかつベ
クトルの拡張が完了しそれによりN=Lになれば、自己
相関係数は前に述べた加算−削除エンドコレクション処
理によって計算される。
【0094】好ましい実施例においては、本発明の方法
は、(1)m=0〜T<Mおよびn=1〜Mに対し式
(7)を評価することにより最初のベクトルkに対し自
己相関係数Uを決定しかつ結果をL/Mによって乗算
する。この場合、L,M,P,nおよびmは上に述べた
意味を有する。L=60およびM=20に対しては、L
/M=3である。パラメータTは自己相関遅れmのどれ
だけ多くの値が使用されるか、すなわち、どれだけ多く
の自己相関係数が計算されるかを決定する。典型的に
は、T=M−1であるが、Tの他のより小さな値も使用
できる。Tのより小さな値を使用することはコードブッ
クベクトルの支配的な値が計算されて支配的な自己相関
係数がmの小さな値に対するものである場合に有利であ
る。(2)ステップ(1)において前に得られたmの各
々の値に対し式(7)における積の和を求めかつ
(C′(n=M+1))をm=0の項に加算し、C
′(n=M+1)*C′(n=M+2)をm=1の
項に加算し、C′(n=M+1)*C′(n=M+
3)をm=2の項に加算し、かつ以下同様にT番目の項
まで行なうことによって第2のベクトルk′に対する自
己相関係数Uを決定し、かつその結果をL/(M+
1)により乗算し、(3)前記ステップ(2)において
前に得られたmの各値に対し前記積の和を行ないかつ
(C′(n=M+2))をm=0の項に加算し、C
″(n=M+2)*C″(n=M+3)をm=1の
項に加算し、C″(n=M+2)*C″(n=M+
4)をm=2の項に加算し、かつ以下同様にT番目の項
まで行なうことによって第3のベクトルk″に対する自
己相関係数Uを決定し、その結果をL/(M+2)に
よって乗算し、そして(4)前記ステップ(1)〜
(3)を残りのベクトルに対し、L/(M+k−1)=
1になるまで各々の付加的なベクトルに対し前記値を1
だけ増分して残りの自己相関係数を決定する。その後、
自己相関係数が前に述べた伝統的な従来技術の加算−削
除手順によって計算される。
【0095】別の方法では、コードブックベクトルの自
己相関係数は以下の式(11a)〜(11b)を使用し
てm=0〜T<Mに対し第1のベクトルk=1の係数U
(m)を計算することにより決定される。 (m)=(L/M)U′(m) (11b)
【0096】上記コードブックベクトルの自己相関係数
の決定は、次に以下の式(12a)〜(12b)を使用
してm=0〜T<Mおよび(M+k−1)≦Lに対し残
りのコードブックベクトルの自己相関係数U(m)を
計算することにより決定される。 U′(m)=[U′k−1(m) +C(M+k−1)C(M+k−1+m)] (12a) U(m)={L/(M+k−1)}U′(m) (12b)
【0097】合成による分析が増大する長さのベクトル
(およびそれらの対応する自己相関係数)を使用し、長
さMのベクトルでスタートしかつベクトル長がフレーム
長に等しくなるまで、すなわち、(M+k−1)=Lに
なるまで各々の引続くベクトルの長さを1サンプルだけ
増大しながら、行なわれる。フレーム長に整合するため
のショートピッチのサンプルの拡張が次に完了する。引
続くベクトルはフレーム長と同じ長さを有しかつオーバ
ラップするコードブックの各々の引続くベクトルはベク
トルの一端から古いサンプルを削除しかつ該ベクトルの
他端において新しいサンプルを加えることに対応する。
従来技術の加算−削除エンドコレクション方法が次に使
用されて分析される残りのベクトルの自己相関係数を決
定する。
【0098】式(11a)における積の和は第1のベク
トルに対し一度だけ評価される必要がありかつ次に(M
+k−1)までの他のベクトルは前記第1のベクトルの
項から含まれる付加的な値またはサンプルに対するC
*Cの積の寄与分を加算することにより計算できる。
何らのコピーアップ手順も必要とされずかつコピーアッ
プによって生成される自己相関係数のエラーは生じな
い。これは実質的に図2から図4に関して説明した合成
による分析手順における計算機的な負担を低減する。
【0099】従来技術のコピーアップ手順と本発明の手
順との間の差異がベクトル指数に関し以下に概略的に説
明される。自己相関係数の計算は遅れm、すなわち、ベ
クトルの相対変位の種々の量に対しそれ自身とのベクト
ルの積を加算することを含む。以下の例はコピーアップ
手法および本発明の手法に対する遅れ(lag)mの種
々の量に対しどの値が一緒に乗算されるかを示す。この
例における数字はベクトル値またはエントリの指数であ
り、値そのものではなく、かつベクトルに沿った各エン
トリの位置の尺度として考えることができる。
【0100】実例III−コピーアップ自己相関 コピーアップに対しては、項ごとに乗算しかつ、各nお
よびmに対し、加算を行なう。例えば、 (k=1,m=0)に対しては、1,2,3,...,19,20,1,2,
3,...,19,20,1,2,3,...,19,20 を1,2,3,...,19,20,1,2,
3,...,19,20,1,2,3,...,19,20;により乗算し、 (k=2,m=0)に対しては、1,2,...,19,20,21,1,
2,...,19,20,21,1,2,...,17,18 を1,2,...,19,20,21,1,
2,...,19,20,21,1,2,...,17,18;により乗算し、 (k=3,m=0)に対しては、1,2,...,19,20,21,22,
1,2,...,20,21,22,1,2,...,15,16を1,2,...,19,20,21,2
2,1,2,...,20,21,22,1,2,...,15,16; により乗算し、 以下同様にすべてのk,mおよびnに対して行なう。
【0101】実例IV−改良された自己相関(m=0) 本発明の構成に対しては、m=0〜M−1に対し第1の
(例えば、20)エントリを乗算しかつ加算し、そして
次にn=M+1,n=M+2,などのエントリの積を加
算する。例えば、 (k=1,m=0)に対しては、1,2,3,...,19,20 ×1,
2,3,...,19,20 を計算し、かつL/Mにより乗算し、 (k=2,m=0)に対しては、1,2,3,...,19,20,21
×1,2,3,...,19,20,21をk=1に対して前に計算したも
のに21・21を加算することにより得、かつL/M+
1により乗算し、 (k=3,m=0)に対しては、1,2,3,...,19,20,21,2
2 ×1,2,3,...,19,20,21,22 をk=2に対して前に計
算したものに22・22を加算することにより得、かつ
L/M+2により乗算し、そしてベクトル長がフレーム
長に等しくなりかつ最後の項60・60が加算されるま
ですべてのmに対し継続し、次に従来技術と同様に処理
する。
【0102】従来技術の手法および本発明の手法に対す
る自己相関処理の上の例においては0次の項のみが示さ
れたが、当業者は本明細書の記載に基づきm=1,m=
2,その他に対する積の項を表わすためにどのようにし
てベクトルをシフトするかを理解するであろう。その処
理の助けとして、k=1,k=2およびm=1に対し本
発明のために以下の例が示される。 実例V−改良された自己相関(m=1) (k=1,m=1)に対しては、1,2,3,...,..19,20 ×
1,2,3,...,18,19 を計算し、かつL/M+1により乗算
し、 (k=2,m=1)に対しては、1,2,3,...,19,20,21
×1,2,3,....,19,20をk=1に対して前に計算されたも
のに20・21を加算することにより得、そしてL/M
+2により乗算し、 (k=3,m=1)に対しては、1,2,3,...,19,20,21,2
2 ×1,2,3,... ,19,20,21 をk=2に対して前に計算
したものに21・22を加算することにより得、そして
L/M+3により乗算し、そして評価されるすべてのk
およびmに対しL/(M+k−1)=1まで続ける。
【0103】本発明の好ましい実施例に係わる上に述べ
たようにして自己相関係数を決定するのに適した装置が
図5に示されている。本発明に対応する自己相関装置6
00はベクトルサンプルC(n)が図4の適応コード
ブック155から受信される信号入力602を具備す
る。ベクトルサンプルまたは値C(n)は2つのパス
604,606に従う。パス606はスイッチ608を
介して初期ベクトル(すなわち、k=1)自己相関器6
10に至る。初期ベクトル自己相関器610は前記式
(11a)により示された機能を達成し、すなわち、そ
れはk=1,m=1,2,3,…,T−1,Tに対応す
る自己相関係数U(m)を計算する。これらの自己相
関係数はスイッチ620を介してエンドコレクション係
数計算機622に伝達される。
【0104】第1のベクトルの自己相関係数計算機61
0はレジスタ612および614を具備し、これらのレ
ジスタにはコードブックにおける最初のM(例えば、2
0)のサンプルがロードされる。レジスタ612,61
4は便宜的にはよく知られた直列入力/並列出力レジス
タであるが、技術上よく知られた他の構成も使用するこ
とができる。
【0105】前記サンプル値は自己相関器616に転送
され、該自己相関器616はm=0に対する積U
(m)=SUM[C(n)C(n+m)](すな
わち、U(0))の和を決定しかつこの係数をスイッ
チ620を介してブロック622にクロック入力する。
自己相関器616は次にレジスタ614におけるサンプ
ルをm=1に対応して、ブロック618を介し、1サン
プルだけシフトしかつU1(1)を計算し、これは次に
ブロック622にクロック出力される。この手順が初期
ベクトルC(n)に対するすべての自己相関係数が決
定されかつブロック622にロードされるまで続けられ
る。スイッチ608および620は次に自己相関発生器
610をクロック622から切離す。
【0106】ブロック622は前記式(11b)および
(12a)から(12b)までによって記述される機能
を達成する。これは便宜的にはレジスタ624、乗算器
626、加算器628、レジスタ−アキュムレータ63
0、乗算器632および出力バッファ634の組合わせ
によって発生される。レジスタ624,630およびバ
ッファ634は便宜的には(例えば図5に示される)レ
ジスタ612,614と同じ長さを有するが、どれだけ
多くの自己相関係数が評価され引続くベクトルに対し更
新されることが望まれるかに応じてより長くあるいはよ
り短くすることができる。例えば、レジスタ624,6
30およびバッファ634はフレーム長と同じくらいの
大きさとすることができる。
【0107】レジスタの要素630はそれに対し後続の
ベクトルに対する自己相関係数を決定するためにエンド
コレクションが加えられるべき前に計算された自己相関
係数を含む。エンドコレクションは乗算器626と組合
わされたレジスタ624によって与えられる。乗算器6
26からのエンドコレクションは加算器628において
レジスタ630からの前に計算された係数と加算され、
かつループ629を介してレジスタ630を更新するた
めフィードバックされる。レジスタ630から、自己相
関係数が乗算器632に転送され、そこでこれらは適切
なL/(M+k−1)のファクタによってスケーリング
されかつ出力バッファ634に送られ、該出力バッファ
においてそれらは、例えば、図4の出力561′を形成
し、この場合自己相関発生器600がエレメント56
0′を(M+k−1)≦Lに対しより詳細に記述する。
【0108】ブロック622の動作をさらに詳細に説明
すると、レジスタ624はベクトル値によってレジスタ
612,614と同時にロードされる。レジスタ630
は自己相関器610がブロック622から切離される前
に第1のベクトルの自己相関係数発生器610の出力U
(m)によりロードされる。これらの初期自己相関係
数は乗算器632にコピーされ、そこでこれらはL/M
によって乗算されかつバッファ634に送られ、該バッ
ファ634からそれらは図2から図4に関して説明した
合成による分析手順の間に抽出される。
【0109】レジスタ630が最初のTの自己相関係数
値によってロードされた後、付加的なベクトル値がレジ
スタ624にクロック入力されかつレジスタ624の各
段のベクトル値が矢印625で示されるようにクロック
出力される。初期ベクトルがMの値を有するものと仮定
すると、今レジスタ624に存在する最も最近の値はn
=M+1である。これはベクトルk=2に対応するが、
それは各ベクトルは前のベクトルとn=(M+k−1)
=Lまで1つのエントリの加算分だけ異なるからであ
る。
【0110】新しい値n=M+1は乗算器6261にお
いてそれ自身により乗算されその結果は加算器6281
に伝達されそこでそれは既にレジスタ要素6301に記
憶されている0次のU(m=0)係数と組合わされ
る。レジスタ要素6301は次に矢印6291で示され
るように更新され、それによりU(0)+C(M+
1)C(M+1)の和がいまやレジスタ要素6301
に存在しかつ乗算器632に転送されそこでL/(M+
1)により乗算されかつ、632において同じファクタ
により乗算されたレジスタ630の他の要素からの他の
更新された係数値とともに、バッファ634にロードさ
れる。カウンタ640が設けられてレジスタ624にロ
ードされたコードブックベクトルのエントリの数を追跡
しかつ乗算器632における乗算ファクタを調整し、そ
れによりそれがk=1に対してはL/(M)に対応し、
k=2に対してはL/(M+1)に対応し、かつ以下同
様に(M+k−1)=Lまで対応するようにする。
【0111】レジスタ624からのサンプルC(M)
は乗算器6262においてC(M+1)によって乗算
されかつ加算器6282においてレジスタ要素6302
からのU(1)と加算され、この和は接続6292を
介してレジスタ要素6302を更新する。更新された値
は乗算器632に送られ、そこでL/(M+1)により
乗算されかつバッファ634に送られる。レジスタ62
4における残りのサンプルは同様にして処理されかつ次
に他のサンプル、例えば、n=M+2、がレジスタ62
4にクロック入力されかつその処理が反復される。この
ようにして、自己相関係数が前のベクトルに対しもう1
つのサンプルを加算することにより形成された各々の新
しいベクトルに対しバッファ634において得られこれ
は実例IV−Vにおける単純化された形式で示されたも
のと同様にして行なわれる。
【0112】一時的記憶要素612,614,624,
630および634はレジスタまたはバッファとして記
述されているが、当業者は本明細書の開示に基づきこれ
は単に例示の便宜のためのものでありかつ、例えばこれ
に限定されるものではないが、ランダムアクセス可能な
メモリ、内容アドレス可能なメモリ、その他のような他
の形式のデータ記憶装置も使用できることを理解するで
あろう。さらに、そのようなメモリは広範囲の物理的構
成、例えば、フリップフロップ、レジスタ、コアおよび
半導体メモリ素子とすることができる。ここで使用され
ている用語「レジスタ」および「バッファ」は、単数で
あれ複数であれ、どのような種類のものであれあるいは
構成であれ任意の修正可能な情報記憶を含むことを意図
している。同様に、例えば、自己相関器616、インデ
クス装置(indexer)618、スイッチ608,
620、加算器628、乗算器626および/またはカ
ウンタ640として示される他のブロックは別個の素子
または素子の組合わせであれ、標準のまたはアプリケー
ション特定集積回路であれ、所望の機能を達成可能なプ
ログラムされた汎用プロセッサであれ、あるいはこれら
を別個にまたは組合わせた任意の形式の等価な機能を含
むことを意図している。
【0113】本発明は、標準フレーム長に小さな数のコ
ードブックサンプルを拡張する上で生ずる従来のコピー
アップエラーを導入することなく短時間ピッチ周期を検
出するために必要なより短いセットのコードブックベク
トルサンプル(例えば、20)に基づき標準分析フレー
ム長(例えば、60)に対する自己相関係数を決定する
迅速かつ簡単な方法を提供する。音声品質の犠牲なしに
計算機的な負担が低減されるが、それは従来技術のコピ
ーアップ構成に関連するエンド自己相関加算−削除エラ
ーが避けられるからである。コピーアップは完全に避け
られる。
【0114】自己相関係数を発生するための本発明の方
法がハードウェアレジスタ、自己相関器、乗算器、加算
器、スイッチなどに関連して上に述べられたが、当業者
はこれらはソフトウェアによって実現でき、それにより
前記装置についてここに説明したのと同じ機能を達成し
かつ本明細書に記載された実施例の詳細な説明に基づき
本発明の方法を実施するためにコンピュータを構成する
ことができ、かつそのような変形は本発明の範囲内であ
ることを理解するであろう。
【0115】上に述べた改良は目標音声を複製するため
の最適のコードブックベクトルを決定することに関連す
る計算機的な負担を大幅に低減するが、さらなる改良が
望まれる。特に、確率的コードブックの最適のベクトル
が識別される様式において改良が望まれる。
【0116】米国特許第4,797,925号、リン
(Lin)はオーバラップする確率的ベクトルの使用に
より確率的コードブックにおけるすべてのベクトルを考
慮する計算機的な負担を低減する手順を述べている。リ
ンの構成によれば、コードブックにおける各々の引続く
ベクトルは古い値が該ベクトルの一端からドロップされ
かつ新しい値が該ベクトルの他端に加えられることによ
り先行するベクトルと異なっている。この構成によれ
ば、各々60の値を有する1024のベクトルからなる
コードブックにおける独自的な値の数は1024×60
=61,440から60+1023=1,083に低減
される。これでもなお、分析を実行するために多数の計
算が依然として必要でありかつそのステップはそれらが
引続く乗算および加算を含むため時間を浪費するもので
ある。
【0117】確率的コードブック180(図2の(b)
を参照)は長さNのKのベクトルS(n)を含み、こ
の場合k=1〜Kかつn=1〜N、そしてKは便宜的に
は512,1024,2048,などであり、典型的に
は1024であり、かつNは便宜的には20,40,6
0,120などであり、典型的には60である。確率的
コードブックベクトルS(n)に対する指数kおよび
nは適応コードブックベクトルC(n)に対するもの
と同じ意味を持ち、すなわち、kはどのベクトルが考慮
されているかを識別しかつnはベクトルk内で考慮され
ている値を識別する。確率的コードブック180のベク
トルに対する指数限界KおよびNは適応コードブック1
55のベクトルに対する指数限界KおよびNと同じ大き
さを有することが都合がよいが、これは必須のものでは
ない。単に説明の便宜のためかつ限定的なものではなし
に、KおよびNは両方のコードブックに対し同じ値を持
つようにすることができ、例えば、K=1024かつN
=60とすることができる。
【0118】確率的コードブック180におけるベクト
ルは便宜的には擬似ランダムな0および1または0、1
および−1のリニアアレイである。すなわち、各ベクト
ルS(n)はNの値のつながりであり、各々の値は指
数nによって識別される。図6は、コードブック180
に類似しているがK=8かつN=20の例示的な3進の
(例えば、0,1,−1)確率的コードブック180′
を示す。当業者は本明細書の記載に基づき図6のコード
ブックの特徴的機能がどのようにしてKおよびNのより
大きな値に適用されるかを理解するであろう。さらに、
図6は3進の(例えば、0,1,−1)コードブックを
示しているが、2進の(例えば、0,1または0,−
1)あるいは他の形式のコードブックも使用できる。3
進コードブックが好ましい。
【0119】kの各々の引続く値に対する図6のベクト
ルS(n)はN−2だけオーバラップする。例えば、
ベクトルSk=2(n)はベクトルSk=1(n)から
ベクトルS(n)の左端から2つの古い値をドロップ
させかつベクトルS(n)の右端において2つの新し
い値を加えることにより異なっている。従って、ベクト
ルS(n)の値はベクトルS(n)に比較して左に
2つの場所だけシフトしておりかつ右端に2つの新しい
値がある。各々の連続するベクトルは前のベクトルと同
様に異なっている。オーバラップ量、例えば、図6のN
−2、の選択は便宜的なものであるが、必須のものでは
ない。任意の値のオーバラップ、例えば、1〜N−1を
使用することができる。また、前記ベクトルは右側に新
しい値を付加することにより左にシフトされるものとし
て説明されたが、逆の方法も使用することができ、すな
わち、右にシフトしかつ左側に新しい値を加算すること
もできる。
【0120】最適の確率的コードブックベクトルを識別
するめたの分析手順は実質的に適応コードブックベクト
ルに対するものと同じであるが、C(n)の代わりに
(n)が使用され、すなわち、コードブック155
の代りにコードブック180が使用され、かつ知覚的に
重み付けされた短時間遅延目標音声信号X(n)(図2
の(a)から(b)までの151を参照)の代りに知覚
的に重み付けされた短時間および長時間遅延目標音声信
号Y(n)(図2の(a)および(b)の176を参
照)が使用されている。以下の式(1′),(2′),
(5′)および(6′)はそれぞれ前に与えられた式
(1),(2),(5),(6)と類似しているが、適
応コードブックに対し前に述べたものの代わりに確率的
コードブックのための適切な変数が使用されている。
【0121】確率的コードブックと適応コードブックと
の間の重要な差異は確率的コードブック180を構成す
るベクトルはコードブック155において生ずるように
合成による分析のプロセスの結果として変化せず、固定
されている。従って、式(1′)から(6′)までによ
って表わされる計算の多くはフレームごとに一回行なう
ことができかつ結果は記憶されかつ再使用される。例え
ば、確率的コードブックベクトルの自己相関は一度だけ
行なえばよいが、それはその結果が不変であるからであ
る。自己相関係数は便宜的にルックアップテーブルに記
憶されかつ再び計算する必要はない。これは計算機的な
負担を大幅に簡素化する。
【0122】確率的コードブックベクトルのどれが目標
音声を最もよく表わすかを決定する上で必要なプロセス
は確率的コードブックベクトルS(n)の値の式
(1′),(2′),(5′),(6′)により名目上
必要とされる他の信号による乗算を除去することにより
実質的に単純化できかつより高速にすることができるこ
とが発見された。本発明の手段および方法は確率的コー
ドブックベクトルを含む相互相関操作に最も有用に適用
できるが、それはまた確率的コードブックベクトルを含
むコンボリューション操作にも適用できる。説明の便宜
のため、本発明の構成は相関操作または演算について説
明するが、当業者は本明細書の記述に基づきそれがどの
ようにしてコンボリューション操作に適用できるかを理
解するであろう。
【0123】相互相関は第1の実施例においてマルチプ
レクサ−アキュムレータの組合わせにより達成され、該
マルチプレクサの選択ラインは前記コードブックまたは
1つまたはそれ以上の前記コードブックの複製により駆
動される。これは図7から図10を参照してより詳細に
説明する。
【0124】図7は本発明による確率的コードブック相
互相関器700の単純化されたブロック図である。相関
器700は3進(例えば、0,1,−1)コードブック
の場合について示されている。当業者は本明細書の記載
に基づいて本発明は2進および他の形式のコードブック
にも同様に適用できることを理解するであろう。以下に
説明する手順はまたコードブックベクトルを他の信号に
よりコンボルブするために使用できる。
【0125】相関器700は入力701を有し、そこで
コードブックベクトルと相互相関されるべき信号(単数
または複数)702、制限的な意味ではなく例えば、式
(5′)からの信号W′(n)、あるいはコードブック
ベクトルS(n)と相関されるべき他の信号、を受信
する。入力701において受信された信号702は一般
にある指数、例えばnまたはmであって1からNに及ぶ
もの、によって識別されるNの値を有するベクトルであ
る。例えば、式(6′)が評価または概算される場合
は、W′(n)が入力701に現われる。もし式
(1′)が見積られる場合には、H(n−m+1)が入
力701に現われる。本発明の構成は特に音声ボコーダ
(VOCODERS)に関して有用であるが、それはま
た任意の信号または同様の形式の信号ストリングに関し
て使用できる。
【0126】説明の便宜のため、本発明の手段および方
法は式(6′)の評価(evaluation)に関し
て説明されるが、当業者は本明細書の記載に基づきそれ
は一方のベクトルまたはベクトルアレイが、例えば制限
的なものでないが1,0または−1,0または−1,
0,1のような、固定値を有し、他方が可変である2つ
のベクトルまたはベクトルアレイの積の任意の他の和に
適用できることを理解するであろう。式(6′)の評価
は指数kの各々の値に対し単一の相互相関値Q(k)を
生成し、すなわち を発生する。
【0127】入力701に供給されるベクトル信号70
2(例えば、W′(n))はマルチプレクサ704,7
05に転送される。マルチプレクサ704は図8により
詳細に図示されておりかつマルチプレクサ705は実質
的にこれと同じである。マルチプレクサ704にはメモ
リ706、例えば、コードブック180における“1”
に対応する非ゼロエントリを有するROMまたはEPR
OMが接続されている。図9はメモリ706に類似した
メモリ706′の内容を示しているが、K=9かつN=
20であり、かつ図6のコードブック180′の内容に
対応している。指数kおよびnはメモリ706(かつメ
モリ707)に関してコードブック180における場合
と同じ機能を有し、すなわち、kはベクトルまたはベク
トルに対応する他のデータストリングを識別し、かつn
は該ベクトルまたはストリング内の値を識別する。メモ
リ706,706′はコードブック180,180′に
1が表われるところを除きいずれにもゼロを有する(図
6と図9とを比較されたい)。メモリ706の出力はマ
ルチプレクサ704の選択ライン708に接続され、そ
れにより各々の値k,nが入力701に与えられている
ベクトルの値に対して作用する特定の選択ラインnを制
御する。
【0128】マルチプレクサ705にはメモリ706と
類似しているがコードブック180における−1に対応
する非ゼロエントリを有するメモリ707が接続されて
いる。図10はメモリ707に類似しているがK=8か
つN=20であり、かつ図6のコードブック180′に
対応するメモリ707′の内容を示す。メモリ707,
707′はコードブック180,180′に−1が表わ
れるすべてのところに1を有しかつそれ以外はゼロを有
する(図6および図10を比較されたい)。メモリ70
7の出力はマルチプレクサ705の選択ライン709に
接続され、それにより各々の値k,nが入力701に与
えられたベクトルの値に作用する特定の選択ラインnを
制御する。
【0129】メモリ706,707はアドレスシーケン
サ714によって制御される。第1の(すなわち、k=
1)コードブックベクトルと相関されるために信号ベク
トル702が入力701に与えられると、シーケンサ7
14はメモリ706,707のk=1のデータセットを
アクセスし、かつk=1に対する値n=1〜n=Nを選
択ライン708,709上の対応するマルチプレクサ7
04,705に転送する。選択ライン708,709に
表われる値はマルチプレクサ704,705を入力ベク
トル702の適切な値がアキュムレータ712,713
に渡るようにし、該アキュムレータ712,713にお
いてそれらの値が加算されて出力716,717を発生
する。出力716,717はコンバイナ720において
組合わされ第1の相互相関、すなわち、Q(1)を出力
721に提供する。
【0130】シーケンサ714は次にメモリ706,7
07におけるk=2の値を選択し、かつk=2に対する
その中のn=1〜Nの値をマルチプレクサ704,70
5の選択ライン708,709に転送し、以下同様に第
2の相互相関、すなわち、Q(2)を出力721に発生
する。このプロセスはある音声フレームに対する入力ベ
クトル信号702がメモリ706,707におけるエン
トリによって表わされるコードブックベクトルと相関さ
れ相互相関値Q(1),…,Q(K)を得るまで繰返さ
れる。Q(k=j)の大きな値を有する指数k=jの確
率的なベクトルは通常Q(k=i)のより小さな値を有
する他のベクトルk=iよりも良好な音声表現を与え
る。
【0131】3進のコードブックに対しては2つのメモ
リ706,707を使用することが都合がよいが、コー
ドブック180において使用されるコーディングの形式
に従ってより多くまたはより少ないメモリを使用するこ
とができる。例えば、2進コードブックに対しては1つ
のメモリのみを使用する必要があり、かつコードブック
それ自体はもしそれがn=1〜Nに対応する0,1の値
を各指数kに対してマルチプレクサの選択ラインに伝達
できればメモリとして十分である。従って、2進コード
ブックあるいはその等価物の場合は、別個のメモリは必
要でなくかつコードブックそれ自体がマルチプレクサの
選択ラインに信号を供給するために使用できる。
【0132】次に図8を参照して、マルチプレクサ70
4の動作を説明する。マルチプレクサ705の構成およ
び動作は同じである。マルチプレクサ704は一般に、
G1,…,GNによって示される、Nのゲート715を
有するN×Nのマルチプレクサである。各ゲート715
の1つの入力は入力信号ベクトル702の特定の値(指
数nによって識別される)を受信するために入力701
に接続され、他の入力703はシステムの論理0の基準
レベル、たとえば、グランドに接続されている。ゲート
715は出力710を、選択ライン708上に存在する
論理信号によって決定されるように、入力701(すな
わち、信号702)または入力703(すなわち、
「0」)に接続する。図示された構成に対しては、たと
えば、選択ライン708のラインn=iの1の値は入力
ベクトル702のn=iの値(入力701のn=iライ
ンに現われる)を出力710のn=iのラインに転送さ
れるようにし、そうでなければ0の値が転送される。類
似の結果を有する任意の等価な論理構成も使用できる。
【0133】マルチプレクサ704は入力701におけ
るNの入力信号値702および選択ライン708上のN
の選択値を受信しかつメモリ706によって駆動される
選択ライン708が0または1にセットされているか否
かに従って入力信号702からのNまでの値を出力71
0に転送することが可能である。マルチプレクサ705
の動作は、入力702、メモリ707によって駆動され
る選択ライン709および出力711に関して同様であ
るが、例外としてマルチプレクサ705は入力701に
おける入力ベクトル信号702の値をコードブックベク
トル値が−1である場合に指数k,nに対し出力711
に転送し、一方マルチプレクサ704は入力ベクトル値
702をコードブックベクトル値が+1である場合に指
数k,nに対し出力710に受け渡す。
【0134】出力710および711は、それぞれ、ア
キュムレータ712,713に接続され、マルチプレク
サ704,705を介して転送される入力ベクトル信号
値702は一緒に加算されて、それぞれ、Q(k)お
よびQ(k)相関値に対応する出力716,717を
生成する。出力716,717はコンバイナ720で組
合わされて721に相関出力値Q(k)を生成する。こ
の例のように、コードブック180が3進コードブック
である場合は、コンバイナ720はアキュムレータ71
2,713からの出力716,717の差を取り出力7
21、すなわち、Q(k)=Q(k)−Q(k)を
発生する。これはマルチプレクサ705、メモリ707
およびアキュムレータ713によって行われる演算はコ
ードブック180、たとえば、図10を参照、の−1の
値に対応することを考慮に入れている。コンバイナ72
0はこの特定の実施例においては、減算を行うが、当業
者は本明細書の記載に基づき同じ結果を多くの他の手段
によって得ることが可能なことを理解するであろう。た
とえば、これは限定的な意図ではないが、同じ出力72
1はマルチプレクサ705またはアキュムレータ713
の出力を反転しかつコンバイナ720を加算器とするこ
とによって得ることができる。
【0135】図7の相関発生器700は、たとえば、図
3および図4の相関発生器520または520′に対応
し、かつ相関発生器700の出力721は図3の出力5
21または図4の出力551′に対応するが、どのよう
な特定の入力信号ベクトルが処理されるかに応じて、適
応コードブックベクトルC(n)よりはむしろ確率的
コードブックベクトルS(n)に対するものでありか
つX(n)よりもむしろ目標音声信号Y(n)に対する
ものである。
【0136】本発明のさらに別の実施例を前記式
(6″)および図6、図9、図10を参照して説明す
る。式(6″)を図6のコードブック180′に適用す
ることにより以下の表Iに示されるように、n=1〜2
0とし、W′(n)の値に対し相関値Q(1)からQ
(8)が得られる。 表I Q(1)=+W ′(04)-W′(05)-W′(09)+W′(14)-W′(18)+W′(19) Q(2)=+W ′(02)-W′(03)-W′(07)+W′(12)-W′(16)+W′(17) Q(3)=-W ′(01)-W′(05)+W′(10)-W′(14)+W′(15)+W′(20) Q(4)=-W ′(03)+W′(08)-W′(12)+W′(13)+W′(18)-W′(19) Q(5)=-W ′(01)+W′(06)-W′(10)+W′(11)+W′(16)-W′(17) Q(6)=+W ′(04)-W′(08)+W′(09)+W′(14)-W′(15)-W′(19) Q(7)=+W ′(02)-W′(06)+W′(07)+W′(12)-W′(13)-W′(17) Q(8)=-W ′(04)+W′(05)+W′(10)-W′(11)-W′(15)+W′(20) 表Iのアレイは再配列して、以下の表IIに示されるよ
うにQ(k)=[Q(k)]−[Q(k)]として
相関値を表すように+1のコードブック値に対応する項
と−1のコードブック値に対応する項をグループ分けす
ることができる。
【0137】 表II Q(1)=[W ′(04)+W′(14)+W′(19)]-[W′(05)+W′(09)+W′(18)] Q(2)=[W ′(02)+W′(12)+W′(17)]-[W′(03)+W′(07)+W′(16)] Q(3)=[W ′(10)+W′(15)+W′(20)]-[W′(01)+W′(05)+W′(14)] Q(4)=[W ′(08)+W′(13)+W′(18)]-[W′(03)+W′(12)+W′(19)] Q(5)=[W ′(06)+W′(11)+W′(16)]-[W′(01)+W′(10)+W′(17)] Q(6)=[W ′(04)+W′(09)+W′(14)]-[W′(08)+W′(15)+W′(19)] Q(7)=[W ′(02)+W′(07)+W′(12)]-[W′(06)+W′(13)+W′(17)] Q(8)=[W ′(05)+W′(10)+W′(20)]-[W′(04)+W′(11)+W′(15)] 表IIの最も左の括弧内に示された値はアキュムレータ
712への入力に対応し、かつ表IIの最も右側の括弧
内の値はアキュムレータ713への入力に対応する。
【0138】図6のコートブック180′を参照する
と、該コードブックがまばらに満たされている、すなわ
ち、大部分のエントリが0であることが明らかである。
さらに、表IおよびIIを参照すると、連続するベクト
ルのオーバラップ特性は相関値Q(k)を得るために加
算されるW′(n)の値の指数において反映されている
ことが明らかである。従って、本コードブックの構造は
表IおよびIIに示された和を発生するより経済的な方
法に適している。これらについては以下に説明する。
【0139】すべてのコードブック値を記憶するよりも
むしろ、kの各々の値に対する非ゼロエントリの指数
(すなわち、nの値)のみを記憶することができる。こ
れはQ (k)およびQ(k)の値に対し別個に行う
と都合がよいが、しかしこれは必須のことではない。k
の各々の値に対する相関値Q(k)およびQ(k)
は単にkの各値に対しnの記憶された値に対応するW′
(n)を加算することにより、すなわち、表IまたはI
Iに示される和を実行することによって得られる。
【0140】計算機的なおよび/またはアドレス記憶の
要求はコードブックエントリのオーバラップ特性を考慮
に入れる再帰的計算方法を用いることによってさらに低
減できかつより迅速な動作が得られる。好ましい、この
手法により、k=1に対するコードブックエントリの指
数値nを記憶しかつベクトルk=2,k=3,その他に
対する指数nをコードブックのオーバラップに基づきk
=1の指数値から計算する。各ベクトルの端部に加えら
れるいずれかの新しいコードブックのエントリの指数も
また考慮される。
【0141】たとえば、図9の+1のエントリおよび表
IIのQ(k)部分(すなわち、最も左の括弧内の
量)の場合には、n=4,14,19およびコードブッ
クのオーバラップを記憶し、この場合N−2であり(す
なわち、Δk=+1,Δn=−2)かつ以下のように対
応するW′(n)の値から生ずるQ(k)への寄与分を
計算する。すなわち、k=1,n=4の指数が最初に評
価されかつ以下の項のQ1(1)およびQ(2)の
値に寄与する。 表III Q(1)=W′(04) Q(2)=W′(02) 指数k=2,n=2に対するQ(2)項W′(02)は
コードブックのオーバラップ(Δk=+1,Δn=−
2)を第1の指数k=1,n=4に適用することにより
決定される。
【0142】次にk=1,n=14の指数が評価されか
つ付加的な項W′(14),W′(12),W′(1
0),W′(08),W′(06),W′(04),
W′(04)およびW′(02)を与える。W′(1
4)を除くすべての項はコードブックのオーバラップを
開始指数k=1,n=14に適用することにより決定さ
れる。この結果次のようになる。 表IV Q(1)=W′(04)+W′(14) Q(2)=W′(02)+W′(12) Q(3)=W′(10) Q(4)=W′(08) Q(5)=W′(06) Q(6)=W′(04) Q(7)=W′(02)
【0143】次にk=1,n=19の指数が評価されか
つ付加的な項W′(19),W′(17),W′(1
5),W′(13),W′(11),W′(09),
W′(07),W′(05),W′(03)およびW′
(01)を与える。W′(19)を除くすべての項はコ
ードブックのオーバラップを開始指数k=1,n=19
に適用することにより検出される。この結果は次のよう
になるが、ここで高いベクトル番号に対しどのように寄
与が続くかを示すためにシーケンスがk>8のベクトル
に対し拡張されている。 表V Q(1) =W′(04)+W′(14)+W′(19) Q(2) =W′(02)+W′(12)+W′(17) Q(3) =W′(10)+W′(15) Q(4) =W′(08)+W′(13) Q(5) =W′(06)+W′(11) Q(6) =W′(04)+W′(09) Q(7) =W′(02)+W′(07) Q(8) =W′(05) Q(9) =W′(03) Q(10)=W′(01) これはk=1に対する指数およびコードブックのオーバ
ラップに基づきそこから決定できるすべての値を使い尽
くす。ベクトルk=1,k=2の終りには何らの付加的
な非ゼロ値も現れず、従って相関値Q(1),Q
(2)は今や完全である。
【0144】含めるべき次の指数はk=3,n=20で
ありかつ付加的な項W′(20),W′(18),W′
(16),W′(14),W′(12),W′(1
0),W′(08),W′(06),W′(04)およ
びW′(02)を与える。再び、W′(20)を除く項
はコードブックのオーバラップを開始指数k=3,n=
20に適用することによって識別される。結果は以下の
ようになり、ここでより高いベクトル番号に対しどのよ
うに前記寄与が続くかを示すためにk>10のベクトル
に対しシーケンスが拡張されている。 表VI Q(1) =W′(04)+W′(14)+W′(19) Q(2) =W′(02)+W′(12)+W′(17) Q(3) =W′(10)+W′(15)+W′(20) Q(4) =W′(08)+W′(13)+W′(18) Q(5) =W′(06)+W′(11)+W′(16) Q(6) =W′(04)+W′(09)+W′(14) Q(7) =W′(02)+W′(07)+W′(12) Q(8) =W′(05)+W′(10) Q(9) =W′(03)+W′(08) Q(10)=W′(01)+W′(06) Q(12)=W′(04) Q(13)=W′(02) これはk=0からk=7までに対する指数およびコード
ブックのオーバラップに基づきそこから決定できるすべ
ての値を使い尽くす。ベクトルk=1からk=7の端部
には何らの付加的な非ゼロ値も現れておらず、従って相
関値Q(1)からQ(7)は今や完全である。
【0145】上に述べたプロセスがコードブックにおけ
る非ゼロのエントリが使い尽くされかつすべてのQ
(k)相関値が決定されるまで継続する。Q(k)
の値のために使用されるプロセスは実質的に同じであ
る。3進コードブックをQ(k)およびQ(k)を
計算するために別個の部分に分けることはコードブック
のオーバラップを活用してQ(k)の相関値を計算する
ための上述のプロセスの間に個々のエントリの符号を考
慮に入れる必要性を避けることができるが、それは妨げ
られない。Q(k)は差分Q(k)=Q(k)−Q
(k)によって検出される。最大の相関値Q(j)を有
する指数k=jのベクトルは技術上よく知られた手段を
用いて、k=1からk=Kに対し(または、少なくとも
そのサブセットのいくつかに対し)Q(k)の値を比較
することにより識別される。上のようにして決定された
計算値は最適の確率的コードブックベクトル、すなわ
ち、音声を合成するために使用された場合、入力目標音
声と比較して最小のエラーを与える確率的コードブック
ベクトル、を識別するために前に述べた合成による分析
プロセスにおいて他の情報と共に使用される。コードブ
ック180からのこの最適の確率的コードブックベクト
ルは次に最終的に受信機において入力音声を再び再生す
るために使用される送信されるボコード(VOCOD
E)を構築するために使用される。
【0146】より一般的に説明すると、n=1〜Nにお
よぶ指数nによって識別される値を有する第1のベクト
ルV(n)、および第2のベクトルS(n)のセット
であって該第2のベクトルの各々は指数kによって識別
されかつ該第2のベクトルの各々はゼロまたは非ゼロで
ありかつn=1〜Nに至る指数nによって識別されるN
までの値を有する前記第2のベクトルS(n)のセッ
トとの組合わせを使用する上に述べた音声を符号化する
プロセスは、S(n)が非ゼロであるとし異なるk
に対するS(n)の指数nk,iを識別する段階、指
数nk,iに対応するV(n)の値を加算して和Q
(k)を形成する段階、最大の値Q(k=j)に対応す
る値k=jを識別する段階、そしてSk=j(n)を使
用して音声を合成する段階、を具備する。
【0147】さらに、第2のベクトルの前記セットはオ
ーバラップ量Δk,Δnに従って先行する第2のベクト
ルをオーバラップすることにより決定されることが望ま
しく、この場合前記識別および加算段階は、n1,i
らスタートしかつオーバラップ量Δk,Δnを使用して
(n)が非ゼロであるとし、k=1に対しS
(n)の指数n1,iを識別する段階、S
(ni′)が非ゼロであるとしk>1に対しさらに指
数nk,i′を決定する段階、そしてそのような指数お
よびさらに他の指数に対し前記V(n)の値を加算し和
Q(k)を形成する段階を具備する。さらに、k≧2に
対しS(ni″)が非ゼロであるとし前に識別されて
いない第1の指数nk,i″を識別し、かつ次に、指数
k,i″からスタートしてS(ni″′)が非ゼロ
であるとしオーバラップ量を使用してk≧3に対するさ
らに他の指数nk,i″′を決定し、かつそのようなさ
らに他の指数に対しV(n)の値を加算してさらに和Q
(k)を形成すると好都合である。
【0148】以上述べた方法は汎用目的のコンピュータ
によって実施できるが、その場合は該コンピュータは、
(n)が非ゼロであるとし異なるkに対しS
(n)の指数nk,iを識別するための手段、指数n
k,iに対応するV(n)の値を加算して和Q(k)を
形成するための手段、最大の値Q(k=j)に対応する
値k=jを識別するための手段、そしてSk=j(n)
を使用して音声を合成するための手段、を提供するよう
プログラムされるべきである。当業者はどのようにして
これを行うかを理解するであろう。
【0149】さらに、前記コンピュータはS(n
が非ゼロであるとしS(n)の指数n1,iをk=1
に対し識別するための手段、S(ni′)が非ゼロで
あるとし、n1,iからスタートしかつオーバラップ量
Δk,Δnを使用してk>1に対するさらに他の指数n
k,i′を決定するための手段、そしてそのような指数
およびさらに他の指数に対しV(n)の値を加算して和
Q(k)を形成するための手段、を提供するようプログ
ラムされることが望ましい。さらに、前記識別し、決定
しかつ加算するための手段は、S(ni″)が非ゼロ
であるとし前に識別されなかった第1の指数nk,i″
をk≧2に対し識別するための手段、S(ni″′
が非ゼロであるとし指数nk,i″からスタートしかつ
オーバラップ量を使用してk≧3に対するさらに他の指
数nk,i″′を決定するための手段、そしてそのよう
なさらに他の指数に対しV(n)の値を加算してさらに
和Q(k)を形成するための手段、を具備することが望
ましい。
【0150】
【発明の効果】上述の、n=1〜Nの値を有する第1の
ベクトルとn=1〜Nの値を有するk=1〜Kの第2の
ベクトルのセットとの積の和の等価物をコードブックの
まばらな非ゼロ値および該コードブックベクトルのオー
バラッピング特性を活用することによって提供する手段
および方法は、従来技術に比較して計算機的な負担を実
質的に低減しかつより迅速に達成することができ、さら
に従来技術によって必要とされるものよりかなり少ない
計算機的な資源によって達成できるようにする。上に述
べたプロセスは、本明細書に記載しかつ表I−VIに図
示した手順を実行するようプログラムされた、汎用目的
のコンピュータまたは特別の目的のコンピュータによっ
て達成されている。当業者は本明細書の記載に基づきか
つ技術上よく知られた手段を使用して上述のステップを
達成するためにどのようにコンピュータをプログラムす
るかを理解するであろう。
【0151】当業者には本明細書の記載に基づき上に述
べた手段および方法が、確率的コードブックベクトルの
どれが目標音声との最善の整合を提供するかを決定する
ことに関連する相互相関プロセスのために通常必要とさ
れる乗算ステップと同じ効果を生ずることは明らかであ
る。乗算操作を消去することにより、相関操作がより高
速になりかつベクトル値の必要な操作の数が低減され
る。これらの利点は極めて好都合なものである。
【0152】最後に、本発明の上に述べた実施例は例示
のためのみのものであると考えている。数多くの別の実
施例も本発明の精神および範囲から離れることなく考案
できる。
【図面の簡単な説明】
【図1】CELPボコーダシステムを一般的な形式で示
す単純化されたブロック図である。
【図2】本発明の好ましい実施例によるCELPコーダ
を示す単純化されたブロック図である。
【図3】第1の実施例による、図2の(b)のコーダの
1部を詳細に示すブロック図である。
【図4】本発明の好ましい実施例による、図2の(b)
のコーダの1部を非常に詳細に示すブロック図である。
【図5】本発明の好ましい実施例による適応コードブッ
クベクトルの自己相関係数を提供するための装置を示す
ブロック図である。
【図6】CELPコーディングのために使用される形式
の小さな確率的コードブックの内容を示す説明図であ
る。
【図7】本発明に係わる相互相関機能を説明する単純化
されたブロック図である。
【図8】図7において使用されているマルチプレクサの
さらに詳細を示すブロック回路図である。
【図9】そのエントリが図6のコードブックの非ゼロエ
ントリに対応する第1のメモリ手段の内容を示す説明図
である。
【図10】そのエントリが図6のコードブックの非ゼロ
エントリに対応する第2のメモリ手段の内容を示す説明
図である。
【符号の説明】
100 CELPコーダ 106 送信経路または送信パス 300 CELPデコーダ 110 バンドパスフィルタ 112 A/D変換器 114 フレーマ 116 フレームメモリ 122 LPCアナライザ 125 コーダ 130 帯域幅拡張重み付け発生器 142,165 スペクトルメモリ減算器 145,170 スペクトルインバースフィルタA
(z) 150,175 カスケード重み付けフィルタ1/A
(z/r) 162 ピッチメモリ減算器 155 適応コードブック 180 確率的コードブック 182 チャネルデコーダ 190 長時間遅延ピッチ予測器 195 短時間遅延ベクトル予測器1/A(z) 197 ゲイン乗算器 200 スペクトルインバースフィルタA(z) 205 キャッシュ重み付けフィルタ1/A(z/r) 210 チャネルコーダ 220 適応コードブックサーチャ 225 確率的コードブックサーチャ
【手続補正書】
【提出日】平成5年10月22日
【手続補正1】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正内容】
【図1】
【図3】
【図2】
【図4】
【図6】
【図9】
【図10】
【図5】
【図7】
【図8】
───────────────────────────────────────────────────── フロントページの続き (31)優先権主張番号 722,572 (32)優先日 1991年6月27日 (33)優先権主張国 米国(US) (72)発明者 デビッド・エル バロン アメリカ合衆国アリゾナ州85251、スコッ ツデイル、イースト・トーマス 8449

Claims (19)

    【特許請求の範囲】
  1. 【請求項1】 入力アナログ音声のNの連続するサンプ
    ルn=1〜n=Nを具備する音声フレームを符号化して
    前記音声フレームを最もよく合成する最適のコードブッ
    クベクトルCk=j(n)を決定するための装置(22
    0,220′)であって、 Kの可能な知覚的に重み付けされた駆動ベクトルC
    (n)を含む適応コードブック(155)であって、
    この場合kは前記ベクトルを識別するために1からKま
    でにおよぶ整数の指数であり、かつn=1〜n=Nは前
    記音声フレーム内の連続する音声サンプルを識別する整
    数の指数であるもの、 前記コードブックベクトルC(n)によって駆動され
    た時前記音声フレームの試行的な複製を合成するための
    1つまたはそれ以上のLPCフィルタ(190,19
    5,200,205,170,145,175,15
    0)であって、該LPCフィルタ(190,195,2
    00,205,170,145,175,150)はイ
    ンパルス応答H(n)を有するもの、 前記音声フレームを最もよく合成する最適のコードブッ
    クベクトルCk=j(n)を決定するためにコードブッ
    クベクトルC(n)により1つまたはそれ以上のLP
    Cフィルタ(190,195,200,205,17
    0,145,175,150)を駆動する結果と比較す
    るために知覚的に重み付けされた目標音声の残余X
    (n)を発生するための手段(150)、 フレームごとに1度nの各々の値に対しH(n)によっ
    てX(n)をコンボルブし相互相関器(520′)への
    伝達のためにコンボルブされた出力(512′)を生成
    するための手段(510′)、 nおよびkの各々の値に対しC(n)によるコンボル
    ブされた出力(512′)を相互相関しその出力(52
    1′)が除算手段(530′)に接続された2乗器(5
    25′)への伝達のために相互相関された出力(55
    1′)を生成するための手段(520′)、 nおよびkの各々の値に対しC(n)を自己相関して
    乗算器手段(543′)への伝達のために第1の自己相
    関出力(561′)を提供するための手段(56
    0′)、 H(n)を自己相関して前記乗算器手段(543′)へ
    の伝達のために第2の自己相関された出力(552′,
    556′)を生成するための手段(550′)、 前記第1(561′)および第2(552′)の自己相
    関出力を乗算して加算器(540′)への伝達のための
    出力積(545′)を生成するための手段(54
    3′)、 kの各々の値に対し前記積を加算して除算器(53
    0′)への伝達のために加算された出力(541′)を
    生成するための手段(540′)、 2乗された相互相関出力(521′)および前記加算器
    の加算された出力(541′)の比率を検出してセレク
    タ手段(570′)に伝達するための除算手段(53
    0′)、そしてチャネルコーダ(210)への伝達のた
    めに、前記除算手段(530′)から最大の振幅の出力
    を生成するC(n)の値Ck=j(n)を選択するた
    めの手段(570′)、 を具備することを特徴とする音声フレームを符号化する
    ための装置。
  2. 【請求項2】 入力アナログ音声のNの連続するサンプ
    ルを具備する音声フレームを符号化しかつ、kを1から
    Kに至る整数の指数としかつnは前記音声フレーム内の
    連続する音声サンプルn=1,…,n=Nを識別する他
    の整数指数であるとして、Kの目標の知覚的に重み付け
    された駆動ベクトルC(n)を含む適応コードブック
    (155)を使用して前記音声フレームを最もよく合成
    する最適のコードブックベクトルCk=j(n)を決定
    するための方法であって、 前記コードブックC(n)ベクトルによって駆動され
    た時前記音声フレームの試行的な複製を合成するための
    1つまたはそれ以上のLPCフィルタ(190,19
    5,200,205,170,145,175,15
    0)を提供する段階であって、前記1つまたはそれ以上
    のLPCフィルタ(190,195,200,205,
    170,145,175,150)はインパルス応答H
    (n)を有するもの、 コードブックベクトルC(n)によって1つまたはそ
    れ以上のLPCフィルタ(190,195,200,2
    05,170,145,175,150)を駆動した結
    果と比較するために知覚的に重み付けされた目標音声残
    余X(n)を提供する段階、 フレームごとに1度nの各々の値に対しH(n)によっ
    てX(n)をコンボルブし相互相関器(520′)への
    伝達のためにコンボルブされた出力W(n)を生成する
    段階、 nおよびkの各々の値に対しC(n)によってコンボ
    ルブされた出力W(n)を相互相関しその出力が除算器
    (530′)に結合された2乗器(525′)への伝達
    のために相互相関された出力を生成する段階、 nおよびkの各々の値に対しC(n)を自己相関して
    乗算器(543′)への伝達のために第1の自己相関出
    力U(m)を提供する段階であって、この場合mはm
    =0からm=N−1に至るダミー指数であるもの、 H(n)を自己相関して前記乗算器(543′)への伝
    達のために第2の自己相関された出力Φ(m)を生成す
    る段階であって、この場合mはm=0からm=N−1に
    至るダミー指数であるもの、 前記乗算器(543′)において前記第1および第2の
    自己相関出力を乗算して加算器(540′)への伝達の
    ために出力積(545′)を生成する段階、 kの各々の値に対し前記積を加算して除算器(53
    0′)への伝達のために加算出力(541′)を生成す
    る段階、 ピークセレクタ(570′)への伝達のために前記2乗
    された相互相関出力(521′)および前記加算器の加
    算出力(541′)の比率を得るために除算を行う段
    階、そしてチャネルコーダ(210)への伝達のため
    に、前記除算器(530′)から最大の大きさの出力を
    生成するC(n)の値Ck=j(n)を前記ピークセ
    レクタにおいて選択する段階、 を具備することを特徴とする音声フレームを符号化する
    方法。
  3. 【請求項3】 各々Nのエントリを有するKのベクトル
    を含むコードブック(155)の使用に基づきデジタル
    化入力音声フレームのためのCELP符号化を提供する
    方法であって、 Nのエントリの内の最初のP(P<<N)に対するコー
    ドブックベクトルを自己相関してそれに対する第1の自
    己相関値(561′)を決定する段階、 Kのコードブックベクトルおよび前記第1の自己相関値
    を使用して合成音声を生成しかつその結果を入力音声と
    比較することによりKのコードブックベクトルを評価す
    る段階、 Kのコードブックベトクルの内のどのS(S<<K)が
    入力音声と比較して評価されたK−Sの残りのベクトル
    よりもより小さなエラーを有する合成音声を提供するか
    を決定する段階、 各々のコードブックベクトルにおけるRのエントリに対
    するKのベクトルの内のS(P<R≦N)に対するコー
    ドブックベトクルを自己相関してそれに対する第2の自
    己相関値を提供する段階、 前記第2の自己相関値を使用してKのベクトルの内の前
    記Sを再評価し前記入力音声と比較してSのコードブッ
    クベクトルの内のどれが最小のエラーを提供するかを識
    別する段階、そして前記最小のエラーを与えるコードブ
    ックベクトルの識別子を使用して前記音声フレームに対
    するCELPコードを形成する段階、 を具備することを特徴とするCELP符号化を提供する
    方法。
  4. 【請求項4】 前記P,SおよびRは、5≦P≦10、
    1≦S≦7、かつR=NまたはN−1である請求項3に
    記載の方法。
  5. 【請求項5】 X(n)で示されるデジタル化入力音声
    の前記フレームは入力アナログ音声のn=1〜n=Nの
    連続するサンプルを具備し、かつ前記コードブックはK
    の目標の知覚的に重み付けされた駆動ベクトルC
    (n)を含み、この場合kは1〜Kに至る整数の指数
    であり、かつnは音声フレーム内の連続する音声サンプ
    ルn=1〜n=Nを識別する他の整数の指数であり、か
    つCk=j(n)は前記目標音声フレームX(n)を最
    もよく合成する最適のコードブックベクトルを表し、か
    つ前記第1の自己相関段階は、 以下の式、 に従ってコードブックベクトルC(n)をP<<Nと
    してm=0〜m=Pに対し自己相関する段階、 を具備し、かつ前記評価段階はコードブックサーチャに
    おいて、前記式から検出されたU(P)のPの値を使
    用してすべてのKのベクトルC(n)を再帰的に評価
    し平均2乗エラー確率を決定する段階を具備し、かつ前
    記決定段階は、S<<Kとし、目標音声X(n)に対し
    最も近い整合を提供するKのベクトルC(n)の内の
    Sを選択する段階を具備し、かつ前記第2の自己相関お
    よび再評価段階は、コードブックサーチャにおいて前記
    式におけるU(m)を決定するためにすべてのm=0
    〜m=N−1を使用して上で選ばれたKのベクトルの内
    のSを再帰的に再評価し、それによりj番目の値C
    k=j(n)および目標音声X(n)に対し最善の適合
    を与える対応するゲイン指数Gk=jを選択する段階を
    具備し、かつ前記形成段階は、CELP合成器に送信す
    るためにCk=j(n)およびGk=jをチャネルコー
    ダに送信する段階を具備する、 請求項3に記載の方法。
  6. 【請求項6】 適応コードブック(155)のベクトル
    の自己相関係数を使用した音声のCELP符号化のため
    の装置(100,220,220′,600)であっ
    て、分析は初めに長さL>Mの音声分析フレームに関連
    してサンプルMのサブセットを利用し、前記装置は、 k=1かつmは自己相関遅れ指数でありかつnは前記コ
    ードブックベクトルにおける連続するサンプルの指数で
    あるとし、長さMの第1のベクトルC(n)の自己相
    関係数Uk′(m)を、m=0〜T<Mに対し、第1の
    式、 に従って決定するための手段(610)、 k≧2とし、残りのコードブックベクトルの自己相関係
    数U(m)を増分的に、m=0〜T<Mに対し(M+
    k−1)=Lまで、第2の式、 U′(m)=[U′k−1(m)+C(M+k−
    1)C(M+k−1+m)] に従って決定するための手段(624,626,62
    8,630)、 前記第1の方程式の結果を次の式、 U(m)=(L/M)U′(m) に従ってスケーリングし、かつ前記第2の方程式の結果
    を以下の式、 U(m)={L/(M+k−1)}U′(m) に従ってスケーリングし、これらのスケーリングはm=
    0〜T<Mに対して行われ、各々のmおよび各々のkに
    対し結果を生成するための手段(632)、そして前記
    結果を使用してどのコードブックベクトルが入力音声と
    比較して最小のエラーを提供するかを評価するための手
    段(220,220′)、 を具備することを特徴とする音声のCELP符号化のた
    めの装置。
  7. 【請求項7】 ベクトル長Nの適応コードブック(15
    5)のベクトルの自己相関係数を使用した音声のCEL
    P符号化のための方法であって、分析は最初は長さLの
    音声分析フレームを有するM<Nのサンプルのサブセッ
    トを使用し、前記方法は、 k=1かつmは自己相関遅延指数でありかつnは前記コ
    ードブックベクトルにおける連続するサンプルの指数で
    あるとし、m=0〜T<Mに対し、以下の式、 (m)=(L/M)U′(m) に従って、長さMの第1のベクトルC(n)の自己相
    関係数U(m)を計算する段階、 k≧2とし、m=0〜T<Mに対し、以下の式、 U′(m)=[U′k−1(m)+C(M+k−
    1)C(M+k−1+m)] U(m)={L/(M+k−1)}U′(m) に従って残りのコードブックベクトルの自己相関係数U
    (m)を計算する段階、 前記第2の計算を(M+k−1)=Lまで反復する段
    階、そして上述のようにして決定された自己相関係数を
    使用して前記コードブックベクトルC(n)の内のど
    れが入力音声と比較した時最小のエラーを生成するかを
    決定する段階、 を具備することを特徴とする音声のCELP符号化のた
    めの方法。
  8. 【請求項8】 前記TおよびMはT=M−1の関係を有
    する請求項6または請求項7に記載の方法。
  9. 【請求項9】 指数kによって識別される適応コードブ
    ック(155)のベクトルの自己相関係数を使用した音
    声のCELP符号化のための方法であって、合成による
    分析は最初にM<Lのコードブック値を使用し、この場
    合Lは音声分析フレームの長さでありかつmは自己相関
    遅れを記述する0からM−1に至る指数であり、前記方
    法は、 nは前記コードブックベクトル値の指数であるとし、n
    =1〜Mの値をその中に有する第1のコードブックベク
    トルkのm=0〜M−1の自己相関係数を計算する段
    階、 一時記憶装置(630)にm=0〜M−1の計算された
    自己相関係数を記憶させる段階、 前記一時記憶装置における前記係数を乗算ファクタL/
    Mによりスケーリングしかつその結果を出力(634)
    に転送する段階、 j=1としn=M+jに対しコードブック値をn=M+
    jからn=1に下がるコードブック値によって乗算しか
    つその積を前記一時記憶装置(630)からの、それぞ
    れ、m=0〜M−1の自己相関係数に加算して結果を生
    成する段階、 前記結果により前記一時記憶装置(630)における自
    己相関係数を置き換える段階、 前記一時記憶装置(630)における前記係数を乗算フ
    ァクタL/(M+j)によりスケーリングしかつその結
    果を出力(634)に転送する段階、 k=(L+1−M)としj=2〜j=k−1に対し前記
    乗算、置き換え、スケーリングおよび転送段階を反復す
    る段階、そして前記出力に転送された自己相関係数を使
    用してどのコードブックベクトルがより良好な音声のC
    ELP符号化を提供するかを決定する段階、 を具備することを特徴とする音声のCELP符号化のた
    めの方法。
  10. 【請求項10】 第1のベクトルを指数kによって識別
    される第2のベクトルのセットと組合わせることによっ
    て音声のCELP符号化を行うための装置(100,7
    00)であって、前記第1および第2のベクトルはn=
    1〜Nに至る指数nによって識別される値を有し、前記
    装置は、 n=1〜Nの出力、n=1〜Nの第1の入力、第2の入
    力、およびn=1〜Nの選択手段を有する第1のN×N
    のマルチプレクサ(704)であって、n番目の選択手
    段に提供される第1の論理レベルは前記n番目の出力を
    前記n番目の第1の入力に結合し、かつ前記n番目の選
    択手段に提供される第2の論理レベルは前記n番目の出
    力を前記第2の入力に結合するもの、 前記第1のベクトルのn=1〜Nの値を前記第1のマル
    チプレクサ(704)のn=1〜Nの第1の入力(70
    1)に供給するための第1の手段、 指数k=1の前記第2のベクトルのn=1〜Nの値を前
    記第1のマルチプレクサ(704)のn=1〜Nの選択
    手段(708)に提供するための手段(706)であっ
    て、前記第2のベクトルは前記n=1〜Nの選択手段に
    おいてnの幾つかの値に対し前記第1の論理レベルを提
    供しかつnの他の値に対し第2の論理レベルを提供する
    もの、 前記第1のマルチプレクサの出力(710)に結合され
    前記第1のマルチプレクサ(704)の出力(710)
    に転送される前記第1のベクトルの値を一緒に加算して
    第1の和(716)を提供するための第1のアキュムレ
    ータ手段(712)、 kをk=1〜k=Kまでインデクシングするための手段
    (714)、そしてどの和が目標音声に対し最も近い整
    合を与える第2のベクトルを識別するかに基づき音声を
    合成するための手段(228)、 を具備することを特徴とする音声のCELP符号化のた
    めの装置。
  11. 【請求項11】 前記第2のベクトルは値0,+1,−
    1を有し、かつ前記第2のベクトルのn=1〜Nの値を
    提供するための前記手段は2つの部分、すなわち、前記
    第2のベクトルの0,+1の値のロケーションに対応す
    るエントリ0,1を有する第1の部分(706)および
    前記第2のベクトルの値0,−1のロケーションに対応
    する値0,1を有する第2の部分(707)、を備え、
    かつ前記提供手段はその第1の部分を前記第1のマルチ
    プレクサ(704)の前記選択手段(708)に提供
    し、かつ前記装置はさらに、 n=1〜Nの出力、n=1〜Nの第1の入力、第2の入
    力、およびn=1〜Nの選択手段を有する第2のN×N
    のマルチプレクサ(705)であって、n番目の選択手
    段に提供される第1の論理レベルは前記n番目の出力を
    前記n番目の第1の入力に結合し、かつ前記n番目の選
    択手段に提供される第2の論理レベルは前記n番目の出
    力を前記第2の入力に結合し、かつ前記提供手段の第2
    の部分は前記第2のマルチプレクサの前記選択手段に結
    合されているもの、 前記第1のベクトルのn=1〜Nの値を前記第2のマル
    チプレクサのn=1〜Nの第1の入力に供給するための
    第2の手段(701)、 前記第2のマルチプレクサの出力に結合され前記第2の
    マルチプレクサの出力に転送される第1のベクトルの値
    を一緒に加算して第2の和(717)を提供するための
    第2のアキュムレータ手段(713)、そして前記第1
    (716)および第2(717)の和を組合わせてどの
    入力ベクトル(702)が目標音声に最も近い整合を与
    えるかを決定するために使用される結果(721)を生
    成するための手段(720)、 を具備する請求項10に記載の装置。
  12. 【請求項12】 n=1〜Nに至る指数nによって識別
    される値を有する第1のベクトルV(n)、および第2
    のベクトルS(n)のセットの組合わせを用いた音声
    のCELP符号化のための装置であって、前記第2のベ
    クトルの各々は指数kによって識別されかつ前記第2の
    ベクトルの各々はゼロまたは非ゼロでありかつn=1〜
    Nに至る指数nによって識別されるNまでの値を有し、
    前記装置は、 異なるkに対するS(n)の指数nk,iを識別する
    ための手段(704,706)であって、前記S(n
    )は非ゼロであるもの、 指数nk,iに対応する前記V(n)の値を加算して和
    Q(k)を形成するための手段(712,721)、 最大の値Q(k=j)に対応する値k=jを識別するた
    めの手段(714)、そしてSk=j(n)を使用して
    音声を合成するための手段(228)、 を具備することを特徴とする音声のCELP符号化のた
    めの装置。
  13. 【請求項13】 前記第2のベクトルの前記セットの連
    続するベクトルはオーバラップ量Δk,Δnに従って先
    行する第2のベクトルのオーバラップによって決定さ
    れ、前記識別のための手段および加算のための手段は、 k=1に対しS(n)の指数n1,iを識別する手段
    (705,707)であって、前記S(n)は非ゼ
    ロであるもの、 S(ni′)が非ゼロであるとし、k>1に対し、n
    1,iからスタートしかつ前記オーバラップ量Δk,Δ
    nを使用して、さらに他の指数nk,i′を決定するた
    めの手段(705,707)、そしてそのような指数お
    よびさらに他の指数に対するV(n)の値を加算して和
    Q(k)を形成するための手段(713,721)、 を具備する請求項12に記載の装置。
  14. 【請求項14】 前記識別のための手段、決定のための
    手段および加算のための手段は、S(ni″)が非ゼ
    ロであるとし、k≧2に対し前に識別されなかった第1
    の指数nk,i″を識別するための手段、S(n
    i″′)が非ゼロとし、k≧3に対しさらに他の指数n
    ki″′を指数nk,i″からスタートしかつ前記オー
    バラップ量を使用して決定するための手段、そしてその
    ようなさらに他の指数に対するV(n)の値を加算して
    さらに和Q(k)を形成するための手段を具備する請求
    項13に記載の装置。
  15. 【請求項15】 第1のベクトル(701)を指数kに
    よって識別される第2のベクトルのセットと組合わせる
    ことにより音声のCELP符号化を行うための方法であ
    って、前記第1および第2のベクトルはn=1〜Nに至
    る指数nによって識別される値を有し、前記方法は、 n=1〜Nの出力、n=1〜Nの第1の入力、第2の入
    力、およびn=1〜Nの選択手段を有するN×Nの第1
    のマルチプレクサ(704)を提供する段階であって、
    n番目の選択手段に提供される第1の論理レベルは前記
    n番目の出力をn番目の第1の入力に結合し、かつn番
    目の選択手段に提供される第2の論理レベルは前記n番
    目の出力を前記第2の入力に結合するもの、 前記第1のベクトル(701)のn=1〜Nの値を前記
    第1のマルチプレクサのn=1〜Nの第1の入力に供給
    する段階、 指数k=1の前記第2のベクトル(702)のn=1〜
    Nの値を前記第1のマルチプレクサ(704)のn=1
    〜Nの選択手段に提供する段階であって、前記第2のベ
    クトルは前記n=1〜Nの選択手段においてnの幾つか
    の値に対して前記第1の論理レベルを提供しかつnの他
    の値に対し前記第2の論理レベルを提供するもの、 前記第1のマルチプレクサの出力に結合された第1のベ
    クトルの値を一緒に加算して和を提供する段階、 kのさらに他の値に対し前記提供段階および加算段階を
    反復する段階、そしてどの和が目標音声に対し最も近い
    整合を与える第2のベクトルを識別するかに基づき音声
    を合成する段階、 を具備することを特徴とする音声のCELP符号化のた
    めの方法。
  16. 【請求項16】 前記第2のベクトルは値0,+1,−
    1を有し、かつ前記第2のベクトルのn=1〜Nの値を
    提供する段階は、前記第2のベクトルの0,+1の値の
    ロケーションに対応するエントリ0,1を有する第1の
    部分を第1のマルチプレクサに提供する段階、および前
    記第2のベクトルの値0,−1のロケーションに対応す
    る値0,1を有する第2の部分を前記第1のマルチプレ
    クサと同様のかつ、前記第1のマルプレクサと同様にし
    て、その入力における前記第1の入力ベクトルおよびそ
    の選択手段における前記第2のベクトルの前記第2の部
    分に応答する第2のマルチプレクサに提供する段階、 前記第1のマルチプレクサの出力に結合された第1のベ
    クトルの値を一緒に加算して第1の和を提供し、かつ前
    記第2のマルチプレクサの出力に結合された前記第1の
    ベクトルの値を一緒に加算して第2の和を提供する段
    階、 前記第1および第2の和を組合わせてどの入力ベクトル
    が目標音声に対し最も近い整合を与えるかを決定するの
    に有用な出力を提供する段階、 を具備する請求項15に記載の方法。
  17. 【請求項17】 n=1〜Nとし、指数nによって識別
    される値を有する第1のベクトルV(n)および第2の
    ベクトルS(n)のセットの組合わせを用いた音声の
    CELP符号化のための方法であって、前記第2のベク
    トルの各々は指数kによって識別されかつ前記第2のベ
    クトルの各々はゼロまたは非ゼロでありかつn=1〜N
    である指数nによって識別されるNまでの値を有し、前
    記方法は、 S(n)が非ゼロであるとし異なるkに対しS
    (n)の指数nk,iを識別する段階、 指数nk,iに対応するV(n)の値を加算して和Q
    (k)を形成する段階、 最大の値Q(k=j)に対応する値k=jを識別する段
    階、そしてSk=j(n)を使用して音声を合成する段
    階、 を具備することを特徴とする音声のCELP符号化のた
    めの方法。
  18. 【請求項18】 前記第2のベクトルの前記セットの連
    続するベクトルはオーバラップ量Δk,Δnに従って先
    行する第2のベクトルのオーバラップによって決定さ
    れ、前記識別段階および加算段階は、 S(n)が非ゼロであるとし、S(n)の指数n
    1,iをk=1に対して識別する段階、 n1,iからスタートしかつオーバラップ量Δk,Δn
    を使用して、S(ni′)が非ゼロであるとし、k>
    1に対して、さらに他の指数nk,i′を決定する段
    階、そしてそのような指数およびさらに他の指数に対し
    てV(n)の値を加算して和Q(k)を形成する段階、 を具備する請求項17に記載の方法。
  19. 【請求項19】 S(ni″)が非ゼロであるとし、
    k≧2に対し、前に識別されなかった第1の指数n
    k,i″を識別し、かつ次に、指数nk,i″からスタ
    ートし前記オーバラップ量を使用してS(ni″′
    が非ゼロであるとしk≧3に対して、さらに他の指数n
    k,i″′を決定する段階、そしてそのようなさらに他
    の指数に対するV(n)の値を加算してさらに和Q
    (k)を形成する段階をさらに具備する請求項18に記
    載の方法。
JP4160233A 1991-05-31 1992-05-27 音声フレームを符号化するための装置および方法 Pending JPH06138896A (ja)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US722,572 1976-09-13
US07/708,609 US5173941A (en) 1991-05-31 1991-05-31 Reduced codebook search arrangement for CELP vocoders
US07/708,947 US5265190A (en) 1991-05-31 1991-05-31 CELP vocoder with efficient adaptive codebook search
US07/714,409 US5179594A (en) 1991-06-12 1991-06-12 Efficient calculation of autocorrelation coefficients for CELP vocoder adaptive codebook
US07/722,572 US5187745A (en) 1991-06-27 1991-06-27 Efficient codebook search for CELP vocoders
US714,409 1991-06-27
US708,609 1991-06-27
US708,947 1991-06-27

Publications (1)

Publication Number Publication Date
JPH06138896A true JPH06138896A (ja) 1994-05-20

Family

ID=27505511

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4160233A Pending JPH06138896A (ja) 1991-05-31 1992-05-27 音声フレームを符号化するための装置および方法

Country Status (2)

Country Link
EP (1) EP0516439A3 (ja)
JP (1) JPH06138896A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08137496A (ja) * 1994-11-08 1996-05-31 Nec Corp 音声符号化装置
WO2008018464A1 (en) * 2006-08-08 2008-02-14 Panasonic Corporation Audio encoding device and audio encoding method
USRE43099E1 (en) 1996-12-19 2012-01-10 Alcatel Lucent Speech coder methods and systems
WO2012095924A1 (ja) * 2011-01-14 2012-07-19 パナソニック株式会社 符号化装置、通信処理装置および符号化方法

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06186998A (ja) * 1992-12-15 1994-07-08 Nec Corp 音声符号化装置のコードブック探索方式
US5434947A (en) * 1993-02-23 1995-07-18 Motorola Method for generating a spectral noise weighting filter for use in a speech coder
US5504834A (en) * 1993-05-28 1996-04-02 Motrola, Inc. Pitch epoch synchronous linear predictive coding vocoder and method
EP0657874B1 (en) * 1993-12-10 2001-03-14 Nec Corporation Voice coder and a method for searching codebooks
IT1271182B (it) * 1994-06-20 1997-05-27 Alcatel Italia Metodo per migliorare le prestazioni dei codificatori vocali
JP3303580B2 (ja) * 1995-02-23 2002-07-22 日本電気株式会社 音声符号化装置
JPH08263099A (ja) * 1995-03-23 1996-10-11 Toshiba Corp 符号化装置
JP3680380B2 (ja) * 1995-10-26 2005-08-10 ソニー株式会社 音声符号化方法及び装置
JP3593839B2 (ja) 1997-03-28 2004-11-24 ソニー株式会社 ベクトルサーチ方法
US6714907B2 (en) 1998-08-24 2004-03-30 Mindspeed Technologies, Inc. Codebook structure and search for speech coding
US6556966B1 (en) 1998-08-24 2003-04-29 Conexant Systems, Inc. Codebook structure for changeable pulse multimode speech coding
US6173257B1 (en) * 1998-08-24 2001-01-09 Conexant Systems, Inc Completed fixed codebook for speech encoder

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4944013A (en) * 1985-04-03 1990-07-24 British Telecommunications Public Limited Company Multi-pulse speech coder
US4969192A (en) * 1987-04-06 1990-11-06 Voicecraft, Inc. Vector adaptive predictive coder for speech and audio
US4899385A (en) * 1987-06-26 1990-02-06 American Telephone And Telegraph Company Code excited linear predictive vocoder

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08137496A (ja) * 1994-11-08 1996-05-31 Nec Corp 音声符号化装置
USRE43099E1 (en) 1996-12-19 2012-01-10 Alcatel Lucent Speech coder methods and systems
WO2008018464A1 (en) * 2006-08-08 2008-02-14 Panasonic Corporation Audio encoding device and audio encoding method
US8112271B2 (en) 2006-08-08 2012-02-07 Panasonic Corporation Audio encoding device and audio encoding method
WO2012095924A1 (ja) * 2011-01-14 2012-07-19 パナソニック株式会社 符号化装置、通信処理装置および符号化方法
JP5722916B2 (ja) * 2011-01-14 2015-05-27 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 符号化装置および符号化方法
US9324331B2 (en) 2011-01-14 2016-04-26 Panasonic Intellectual Property Corporation Of America Coding device, communication processing device, and coding method

Also Published As

Publication number Publication date
EP0516439A3 (en) 1993-06-16
EP0516439A2 (en) 1992-12-02

Similar Documents

Publication Publication Date Title
US5187745A (en) Efficient codebook search for CELP vocoders
US5179594A (en) Efficient calculation of autocorrelation coefficients for CELP vocoder adaptive codebook
US5265190A (en) CELP vocoder with efficient adaptive codebook search
US5371853A (en) Method and system for CELP speech coding and codebook for use therewith
EP0296763B1 (en) Code excited linear predictive vocoder and method of operation
EP0422232B1 (en) Voice encoder
US4910781A (en) Code excited linear predictive vocoder using virtual searching
EP0515138B1 (en) Digital speech coder
KR100415356B1 (ko) 다중 채널 신호 인코딩 및 디코딩 방법 및 장치
JP2820107B2 (ja) 改良されたベクトル励起源を有するデジタル音声コーダ
KR100306814B1 (ko) Celp 음성 부호화 또는 복호화 장치 및 방법
CA2061803C (en) Speech coding method and system
EP0704836B1 (en) Vector quantization apparatus
EP0516439A2 (en) Efficient CELP vocoder and method
JP2954588B2 (ja) 音声の符号化装置、復号装置及び符号化・復号システム
US5173941A (en) Reduced codebook search arrangement for CELP vocoders
CA2142391C (en) Computational complexity reduction during frame erasure or packet loss
JPH04270398A (ja) 音声符号化方式
US5924063A (en) Celp-type speech encoder having an improved long-term predictor
US5105464A (en) Means for improving the speech quality in multi-pulse excited linear predictive coding
JPH10242867A (ja) 音響信号符号化方法
JP3249144B2 (ja) 音声符号化装置
Gouvianakis et al. Advances in analysis by synthesis LPC speech coders
JP3252285B2 (ja) 音声帯域信号符号化方法
JPH06186998A (ja) 音声符号化装置のコードブック探索方式