JPH05249999A - 学習型音声符号化装置 - Google Patents
学習型音声符号化装置Info
- Publication number
- JPH05249999A JPH05249999A JP4278301A JP27830192A JPH05249999A JP H05249999 A JPH05249999 A JP H05249999A JP 4278301 A JP4278301 A JP 4278301A JP 27830192 A JP27830192 A JP 27830192A JP H05249999 A JPH05249999 A JP H05249999A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- drive signal
- learning
- codebook
- signal vector
- 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
Links
Abstract
(57)【要約】
【目的】 8kbps 程度以下というような限られたビッ
トレートでより高品質の音声を合成できる学習型音声符
号化装置を提供することを目的とする。 【構成】 駆動信号ベクトルを格納した適応コードブッ
ク110と、入力音声信号を参照して適応コードブック
110から最適な駆動信号ベクトルを探索する最小歪探
索回路115と、探索された最適な駆動信号ベクトルを
用いて音声信号を合成する合成フィルタ112と、探索
された最適な駆動信号ベクトルの情報を蓄積するバッフ
ァ131と、蓄積された駆動信号ベクトルの情報を所定
長切り出してトレーニングベクトルを作成するトレーニ
ングベクトル作成部132と、このトレーニングベクト
ルを用いてコードブック内の駆動信号ベクトルを学習的
に逐次修正する学習部133を有する学習型音声合成装
置。
トレートでより高品質の音声を合成できる学習型音声符
号化装置を提供することを目的とする。 【構成】 駆動信号ベクトルを格納した適応コードブッ
ク110と、入力音声信号を参照して適応コードブック
110から最適な駆動信号ベクトルを探索する最小歪探
索回路115と、探索された最適な駆動信号ベクトルを
用いて音声信号を合成する合成フィルタ112と、探索
された最適な駆動信号ベクトルの情報を蓄積するバッフ
ァ131と、蓄積された駆動信号ベクトルの情報を所定
長切り出してトレーニングベクトルを作成するトレーニ
ングベクトル作成部132と、このトレーニングベクト
ルを用いてコードブック内の駆動信号ベクトルを学習的
に逐次修正する学習部133を有する学習型音声合成装
置。
Description
【0001】
【産業上の利用分野】本発明は音声符号化装置に係り、
特に音声信号を8kbps 程度以下の低ビットレートで符
号化するのに適した学習型音声符号化装置に関する。
特に音声信号を8kbps 程度以下の低ビットレートで符
号化するのに適した学習型音声符号化装置に関する。
【0002】
【従来の技術】音声信号を低ビットレートで高能率に符
号化する技術は、自動車電話などの移動体通信や、企業
内通信において、電波の有効利用や通信コスト削減のた
めの重要な技術である。8kbps 以下のビットレートで
品質の優れた音声符号化方式として、CELP(Code Ex
cited Linear Prediction)方式が知られている。
号化する技術は、自動車電話などの移動体通信や、企業
内通信において、電波の有効利用や通信コスト削減のた
めの重要な技術である。8kbps 以下のビットレートで
品質の優れた音声符号化方式として、CELP(Code Ex
cited Linear Prediction)方式が知られている。
【0003】このCELP方式は、AT&Tベル研のM.
R.Schroeder 氏とB.S.Atal氏により“Code-Excited Lin
ear Prediction(CELP)“High-Quality Speech at Very
LowBit Rates ”Proc.ICASSP;1985,pp.937-939 (文献
1)で発表されて以来、商品質の音声が合成できる方式
として注目され、品質の改善や、計算量の削減など、種
々の検討がなされて来た。CELP方式の特徴は、LP
C(Liner PredictiveCoding:線形予測符号化)合成フ
ィルタの駆動信号を駆動信号ベクトルとしてコードブッ
クに格納し、合成音声信号と入力音声信号の誤差を評価
しながら、最適な駆動信号ベクトルをコードブックから
探索する点にある。
R.Schroeder 氏とB.S.Atal氏により“Code-Excited Lin
ear Prediction(CELP)“High-Quality Speech at Very
LowBit Rates ”Proc.ICASSP;1985,pp.937-939 (文献
1)で発表されて以来、商品質の音声が合成できる方式
として注目され、品質の改善や、計算量の削減など、種
々の検討がなされて来た。CELP方式の特徴は、LP
C(Liner PredictiveCoding:線形予測符号化)合成フ
ィルタの駆動信号を駆動信号ベクトルとしてコードブッ
クに格納し、合成音声信号と入力音声信号の誤差を評価
しながら、最適な駆動信号ベクトルをコードブックから
探索する点にある。
【0004】図9は、最新のCELP方式による音声符
号化装置のブロック図である。同図において、入力信号
であるサンプリングされた音声信号系列は入力端子60
0からフレーム単位で入力される。フレームはL個の信
号サンプルからなり、サンプリング周波数が8kHzの
場合、一般にL=160が用いられる。図9には示され
ていないが、駆動信号ベクトルの探索に先立ち、入力さ
れたLサンプルの音声信号系列に対してLPC分析が行
われ、LPC予測パラメータ{α1 ,i=1,2,…
p}が抽出される。このLPC予測パラメータα1 は、
LPC合成フィルタ630に供給される。なお、pは予
測次数であり、一般にp=10が用いられる。LPC合
成フィルタ630の伝達関数H(z) は、[数1]で与え
られる。
号化装置のブロック図である。同図において、入力信号
であるサンプリングされた音声信号系列は入力端子60
0からフレーム単位で入力される。フレームはL個の信
号サンプルからなり、サンプリング周波数が8kHzの
場合、一般にL=160が用いられる。図9には示され
ていないが、駆動信号ベクトルの探索に先立ち、入力さ
れたLサンプルの音声信号系列に対してLPC分析が行
われ、LPC予測パラメータ{α1 ,i=1,2,…
p}が抽出される。このLPC予測パラメータα1 は、
LPC合成フィルタ630に供給される。なお、pは予
測次数であり、一般にp=10が用いられる。LPC合
成フィルタ630の伝達関数H(z) は、[数1]で与え
られる。
【0005】
【数1】
【0006】次に、音声信号を合成しながら最適な駆動
信号ベクトルを探索する過程について説明する。まず、
入力端子600に入力された1フレームの音声信号か
ら、減算器610で前フレームでの合成フィルタ630
の内部状態が現フレームに与える影響が減算される。減
算器610から得られた信号系列は4個のサブフレーム
に分割され、各サブフレームの目標信号ベクトルとな
る。
信号ベクトルを探索する過程について説明する。まず、
入力端子600に入力された1フレームの音声信号か
ら、減算器610で前フレームでの合成フィルタ630
の内部状態が現フレームに与える影響が減算される。減
算器610から得られた信号系列は4個のサブフレーム
に分割され、各サブフレームの目標信号ベクトルとな
る。
【0007】LPC合成フィルタ630の入力信号であ
る駆動信号ベクトルは、適応コードブック640から選
択された駆動信号ベクトルに乗算器650で所定のゲイ
ンを乗算したものと、白色雑音コードブック710から
選択された雑音ベクトルに乗算器720で所定のゲイン
を乗算したものとを加算器660で加算することで得ら
れる。
る駆動信号ベクトルは、適応コードブック640から選
択された駆動信号ベクトルに乗算器650で所定のゲイ
ンを乗算したものと、白色雑音コードブック710から
選択された雑音ベクトルに乗算器720で所定のゲイン
を乗算したものとを加算器660で加算することで得ら
れる。
【0008】ここで、適応コードブック640は文献1
に記載されているピッチ予測分析を閉ループ動作または
合成による分析(Analysis by Synthesis) によって行う
ものであり、詳細はW.B.Kleijin D.J.Krasinski and R.
H.Ketchum,"Improved SpeechQuality and Efficient Ve
ctor Quantization in CELP",Proc.ICASSP,1988,pp.155
-158 (文献2)に述べられている。この文献2による
と、LPC合成フィルタ630の駆動信号をピッチ探索
範囲a〜b(a,bは駆動信号のサンプル番号であり、
通常a=20,b=147)にわたって遅延回路670
で1サンプルづつ遅延させることにより、a〜bサンプ
ルのピッチ周期に対する駆動信号ベクトルを作成し、こ
れがコードワードとして適応コードブックに格納され
る。
に記載されているピッチ予測分析を閉ループ動作または
合成による分析(Analysis by Synthesis) によって行う
ものであり、詳細はW.B.Kleijin D.J.Krasinski and R.
H.Ketchum,"Improved SpeechQuality and Efficient Ve
ctor Quantization in CELP",Proc.ICASSP,1988,pp.155
-158 (文献2)に述べられている。この文献2による
と、LPC合成フィルタ630の駆動信号をピッチ探索
範囲a〜b(a,bは駆動信号のサンプル番号であり、
通常a=20,b=147)にわたって遅延回路670
で1サンプルづつ遅延させることにより、a〜bサンプ
ルのピッチ周期に対する駆動信号ベクトルを作成し、こ
れがコードワードとして適応コードブックに格納され
る。
【0009】最適な駆動信号ベクトルの探索を行う場
合、適応コードブック640から各ピッチ周期に対応す
る駆動信号ベクトルのコードワードが1個ずつ読み出さ
れ、乗算器650で所定のゲインと乗算される。そし
て、LPC合成フィルタ630によりフィルタ演算が行
われ、合成音声信号ベクトルが生成される。生成された
合成音声信号ベクトルは、減算器620で目標信号ベク
トルと減算される。この減算器620の出力は聴感重み
付けフィルタ680を経て誤算計算回路690に入力さ
れ、平均2乗誤差が求められる。平均2乗誤差の情報は
更に最小歪探索回路700に入力され、その最小値が検
出される。
合、適応コードブック640から各ピッチ周期に対応す
る駆動信号ベクトルのコードワードが1個ずつ読み出さ
れ、乗算器650で所定のゲインと乗算される。そし
て、LPC合成フィルタ630によりフィルタ演算が行
われ、合成音声信号ベクトルが生成される。生成された
合成音声信号ベクトルは、減算器620で目標信号ベク
トルと減算される。この減算器620の出力は聴感重み
付けフィルタ680を経て誤算計算回路690に入力さ
れ、平均2乗誤差が求められる。平均2乗誤差の情報は
更に最小歪探索回路700に入力され、その最小値が検
出される。
【0010】以上の過程は、適応コードブック640中
の全ての駆動信号ベクトルのコードワードについて行わ
れ、最小歪探索回路700において平均2乗誤差の最小
値を与えるコードワードの番号が求められる。また、乗
算器650で乗じられるゲインも平均2乗誤差が最小に
なるよう決定される。
の全ての駆動信号ベクトルのコードワードについて行わ
れ、最小歪探索回路700において平均2乗誤差の最小
値を与えるコードワードの番号が求められる。また、乗
算器650で乗じられるゲインも平均2乗誤差が最小に
なるよう決定される。
【0011】次に、同様の方法で最適な白色雑音ベクト
ルの探索が行われる。すなわち、白色雑音コードブック
710から雑音ベクトルのコードワードが1個ずつ読み
出され、乗算器720でのゲインとの乗算、LPC合成
フィルタ630でのフィルタ演算を経て、合成音声信号
ベクトルの生成、目標ベクトルとの平均2乗誤差の計算
が全ての雑音ベクトルについて行われる。そして、平均
2乗誤差の最小値を与える雑音ベクトルの番号及びゲイ
ンが求められる。なお、聴感重み付けフィルタ680は
減算器620から出力される誤差信号のスペクトルを整
形して、人間に知党される歪を低減するために用いられ
る。
ルの探索が行われる。すなわち、白色雑音コードブック
710から雑音ベクトルのコードワードが1個ずつ読み
出され、乗算器720でのゲインとの乗算、LPC合成
フィルタ630でのフィルタ演算を経て、合成音声信号
ベクトルの生成、目標ベクトルとの平均2乗誤差の計算
が全ての雑音ベクトルについて行われる。そして、平均
2乗誤差の最小値を与える雑音ベクトルの番号及びゲイ
ンが求められる。なお、聴感重み付けフィルタ680は
減算器620から出力される誤差信号のスペクトルを整
形して、人間に知党される歪を低減するために用いられ
る。
【0012】このようにCELP方式は、合成音声信号
と入力音声信号との誤差が最小になるような最適の駆動
信号ベクトルを求めているので、8kbps 程度の低ビッ
トレートでも高品質の音声を合成することができる。し
かし、8kbps 以下のビットレートでは、駆動信号の符
号化に割り当てられるビット数が十分でなくなるため
に、品質の劣化が知覚されてしまうことが確認されてい
る。
と入力音声信号との誤差が最小になるような最適の駆動
信号ベクトルを求めているので、8kbps 程度の低ビッ
トレートでも高品質の音声を合成することができる。し
かし、8kbps 以下のビットレートでは、駆動信号の符
号化に割り当てられるビット数が十分でなくなるため
に、品質の劣化が知覚されてしまうことが確認されてい
る。
【0013】
【発明が解決しようとする課題】上述したように、従来
のCELP方式は8kbps 程度以上のビットレートでは
高品質の音声を合成することができるが、これ以下のビ
ットレートでは駆動信号の符号化に割り当てられるビッ
ト数が不足して品質の劣化が知覚されてしまい、実用上
不十分であるという問題があった。
のCELP方式は8kbps 程度以上のビットレートでは
高品質の音声を合成することができるが、これ以下のビ
ットレートでは駆動信号の符号化に割り当てられるビッ
ト数が不足して品質の劣化が知覚されてしまい、実用上
不十分であるという問題があった。
【0014】本発明は上記の問題点に鑑みてなされたも
ので、8kbps 程度以下というような限られたビットレ
ートでより高品質の音声を合成できる学習型音声符号化
装置を提供することを目的とする。
ので、8kbps 程度以下というような限られたビットレ
ートでより高品質の音声を合成できる学習型音声符号化
装置を提供することを目的とする。
【0015】
【課題を解決するための手段】本発明は上記の課題を解
決するために、駆動信号ベクトルをコードワードとして
格納したコードブック(適応コードブック)と、入力音
声信号を参照して適応コードブックから最適な駆動信号
ベクトルを探索する探索手段と、この探索手段により探
索された最適な駆動信号ベクトルを用いて音声信号を合
成する合成フィルタと、前記最適な駆動信号ベクトルを
用いてトレーニングベクトルを作成するトレーニングベ
クトル作成手段と、この手段により作成されたトレーニ
ングベクトルを用いてコードブック内の駆動信号ベクト
ルを逐次修正する学習手段とを具備することを特徴とす
る。
決するために、駆動信号ベクトルをコードワードとして
格納したコードブック(適応コードブック)と、入力音
声信号を参照して適応コードブックから最適な駆動信号
ベクトルを探索する探索手段と、この探索手段により探
索された最適な駆動信号ベクトルを用いて音声信号を合
成する合成フィルタと、前記最適な駆動信号ベクトルを
用いてトレーニングベクトルを作成するトレーニングベ
クトル作成手段と、この手段により作成されたトレーニ
ングベクトルを用いてコードブック内の駆動信号ベクト
ルを逐次修正する学習手段とを具備することを特徴とす
る。
【0016】
【作用】本発明では適応コードブックから探索された最
適な駆動信号ベクトル、つまり合成フィルタを駆動して
実際に符号化に使用された駆動信号ベクトルを用い、こ
れをトレーニングベクトルとして、適応コードブック内
の駆動信号ベクトル、具体的には駆動信号ベクトルのう
ち所定の基準で選定した代表ベクトルが逐次修正され
る。この処理は符号化と並行して、新たな駆動信号ベク
トルが探索される毎に行われる。
適な駆動信号ベクトル、つまり合成フィルタを駆動して
実際に符号化に使用された駆動信号ベクトルを用い、こ
れをトレーニングベクトルとして、適応コードブック内
の駆動信号ベクトル、具体的には駆動信号ベクトルのう
ち所定の基準で選定した代表ベクトルが逐次修正され
る。この処理は符号化と並行して、新たな駆動信号ベク
トルが探索される毎に行われる。
【0017】このように駆動信号ベクトルが逐次修正さ
れる学習処理によって、適応コードブック内の駆動信号
ベクトルは話者の音声をより正確に合成可能なベクトル
に逐次変化してゆく。この結果、例えば8kbps 程度以
下の低いビットレートでも、高品質の音声合成が可能と
なる。
れる学習処理によって、適応コードブック内の駆動信号
ベクトルは話者の音声をより正確に合成可能なベクトル
に逐次変化してゆく。この結果、例えば8kbps 程度以
下の低いビットレートでも、高品質の音声合成が可能と
なる。
【0018】
【実施例】以下、図面を参照しながら本発明の実施例を
説明する。図1は、本発明の一実施例に係る学習型音声
符号化装置のブロック図である。
説明する。図1は、本発明の一実施例に係る学習型音声
符号化装置のブロック図である。
【0019】図1において、入力端子100には所定の
サンプリング周波数(例えば8kHz)でサンプリング
された音声信号がフレーム単位で入力される。この入力
音声信号は、まずフレームバッファ101に入力され
る。フレームバッファ101では、入力音声信号系列を
L個(例えばL=160)のサンプル単位で切出し、1
フレームの信号として記憶する。フレームバッファ10
1からの1フレームの入力音声信号は、LPC分析回路
102および重み付けフィルタ106へ供給される。
サンプリング周波数(例えば8kHz)でサンプリング
された音声信号がフレーム単位で入力される。この入力
音声信号は、まずフレームバッファ101に入力され
る。フレームバッファ101では、入力音声信号系列を
L個(例えばL=160)のサンプル単位で切出し、1
フレームの信号として記憶する。フレームバッファ10
1からの1フレームの入力音声信号は、LPC分析回路
102および重み付けフィルタ106へ供給される。
【0020】LPC分析回路102は、例えば自己相関
法を用いて入力音声信号に対してLPC(Linear Predi
ctive Coding:線形予測符号化)分析を行い、P個のL
PC予測係数{α1 、i=1,2,…p、}、または反
射係数{k1 、i=1,2,…,p}を抽出する。抽出
された予測係数または反射係数は、符号化回路103に
おいて所定のビット数で符号化された後、重み付けフィ
ルタ106および重み付け合成フィルタ107,11
2,122で利用される。
法を用いて入力音声信号に対してLPC(Linear Predi
ctive Coding:線形予測符号化)分析を行い、P個のL
PC予測係数{α1 、i=1,2,…p、}、または反
射係数{k1 、i=1,2,…,p}を抽出する。抽出
された予測係数または反射係数は、符号化回路103に
おいて所定のビット数で符号化された後、重み付けフィ
ルタ106および重み付け合成フィルタ107,11
2,122で利用される。
【0021】重み付けフィルタ106は、適応コードブ
ック110および雑音コードブック120から合成フィ
ルタの駆動信号ベクトルを探索する際に、入力音声信号
系列に重み付けを行うものである。重み付け合成フィル
タ107,112,122内の合成フィルタの伝達関数
H(z) は、[数1]で記述される。この時、重み付けフ
ィルタ106の伝達関数W(z) は[数2]で表される。
ック110および雑音コードブック120から合成フィ
ルタの駆動信号ベクトルを探索する際に、入力音声信号
系列に重み付けを行うものである。重み付け合成フィル
タ107,112,122内の合成フィルタの伝達関数
H(z) は、[数1]で記述される。この時、重み付けフ
ィルタ106の伝達関数W(z) は[数2]で表される。
【0022】
【数2】 但し、γは重み付けの強さを制御するパラメータである
(0≦γ≦1)。
(0≦γ≦1)。
【0023】重み付け合成フィルタ107,112,1
22は、[数1]に示したH(z) なる伝達関数の合成フ
ィルタと、W(z) なる伝達関数の重み付けフィルタを縦
続接続したフィルタであり、その伝達関数Hw (z) は
[数3]で記述される。
22は、[数1]に示したH(z) なる伝達関数の合成フ
ィルタと、W(z) なる伝達関数の重み付けフィルタを縦
続接続したフィルタであり、その伝達関数Hw (z) は
[数3]で記述される。
【0024】
【数3】
【0025】本実施例のように重み付けフィルタ106
を用いると、聴感上の符号化歪を低減することが可能に
なる。また、本実施例では重み付けフィルタ106を駆
動信号ベクトルの探索ループの外に設けた構成になって
おり、この結果、探索に要する計算量が大幅に削除され
る。
を用いると、聴感上の符号化歪を低減することが可能に
なる。また、本実施例では重み付けフィルタ106を駆
動信号ベクトルの探索ループの外に設けた構成になって
おり、この結果、探索に要する計算量が大幅に削除され
る。
【0026】さらに、重み付け合成フィルタ112,1
22が駆動信号ベクトルの探索に影響を与えないよう
に、初期メモリを持った重み付け合成フィルタ107が
設けられている。この重み付け合成フィルタ107は、
前フレームの最後に重み付け合成フィルタ112,12
2が保持していた内部状態を初期状態として持つ。
22が駆動信号ベクトルの探索に影響を与えないよう
に、初期メモリを持った重み付け合成フィルタ107が
設けられている。この重み付け合成フィルタ107は、
前フレームの最後に重み付け合成フィルタ112,12
2が保持していた内部状態を初期状態として持つ。
【0027】そして、重み付け合成フィルタ107の零
入力応答ベクトルを作成し、減算器108において重み
付けフィルタ106の出力から上記零入力応答ベクトル
を減算する。これにより、重み付け合成フィルタ11
2,122の初期状態を零とすることができ、前フレー
ムの影響を考慮せずに駆動信号ベクトルの探索を行うこ
とができる。以上の処理は、全てフレーム単位で行われ
る。次に、フレームをM個(通常、M=4)のサブフレ
ームに分割し、サブフレーム単位で行う駆動信号ベクト
ル探索の処理について説明する。
入力応答ベクトルを作成し、減算器108において重み
付けフィルタ106の出力から上記零入力応答ベクトル
を減算する。これにより、重み付け合成フィルタ11
2,122の初期状態を零とすることができ、前フレー
ムの影響を考慮せずに駆動信号ベクトルの探索を行うこ
とができる。以上の処理は、全てフレーム単位で行われ
る。次に、フレームをM個(通常、M=4)のサブフレ
ームに分割し、サブフレーム単位で行う駆動信号ベクト
ル探索の処理について説明する。
【0028】最適な駆動信号ベクトルの探索は適応コー
ドブック110、雑音コードブック120の順に行われ
る。適応コードブック110には、K次元(K=L/
M)の駆動信号ベクトルが20サンプルから147サン
プルのピッチ周期に対応できるように128個格納され
ている。駆動信号ベクトルの探索に際しては、まず適応
コードブック110から、後述するインデックスjで指
定される駆動信号ベクトルXj を順次読み出し、乗算器
111でXj に所定のゲインβを乗じた後、重み付け合
成フィルタ112に供給する。重み付け合成フィルタ1
12では、ゲインβが乗じられた駆動信号ベクトルにフ
ィルタリング演算を施して合成音声ベクトルを作成す
る。
ドブック110、雑音コードブック120の順に行われ
る。適応コードブック110には、K次元(K=L/
M)の駆動信号ベクトルが20サンプルから147サン
プルのピッチ周期に対応できるように128個格納され
ている。駆動信号ベクトルの探索に際しては、まず適応
コードブック110から、後述するインデックスjで指
定される駆動信号ベクトルXj を順次読み出し、乗算器
111でXj に所定のゲインβを乗じた後、重み付け合
成フィルタ112に供給する。重み付け合成フィルタ1
12では、ゲインβが乗じられた駆動信号ベクトルにフ
ィルタリング演算を施して合成音声ベクトルを作成す
る。
【0029】一方、フレームバッファ101から読み出
された入力音声信号は、重み付けフィルタ106によっ
て重み付けがなされた後、減算器108で前フレームの
影響が差し引かれる。この減算器108から出力される
音声信号ベクトルYを目標ベクトルとして、減算器11
3で重み付け合成フィルタ112からの合成音声ベクト
ルとの誤差ベクトルEj が計算される。そして、2乗誤
差計算回路114で誤差の2乗和‖Ej ‖が計算され、
この‖Ej ‖の最小値および最小値を与えるインデック
スjが最小歪探索回路115で検出される。このインデ
ックスjが適応コードブック110とマルチプレクサ1
42に与えられる。
された入力音声信号は、重み付けフィルタ106によっ
て重み付けがなされた後、減算器108で前フレームの
影響が差し引かれる。この減算器108から出力される
音声信号ベクトルYを目標ベクトルとして、減算器11
3で重み付け合成フィルタ112からの合成音声ベクト
ルとの誤差ベクトルEj が計算される。そして、2乗誤
差計算回路114で誤差の2乗和‖Ej ‖が計算され、
この‖Ej ‖の最小値および最小値を与えるインデック
スjが最小歪探索回路115で検出される。このインデ
ックスjが適応コードブック110とマルチプレクサ1
42に与えられる。
【0030】具体的には、誤差ベクトルEj は例えば
[数4]で表わされる。この誤差ベクトル‖Ej ‖をβ
で偏微分して零と置くことによって、βを最適化した場
合の‖Ej ‖の最小値が[数5]で表される。但し、β
は乗算器111で与えられるゲインである。
[数4]で表わされる。この誤差ベクトル‖Ej ‖をβ
で偏微分して零と置くことによって、βを最適化した場
合の‖Ej ‖の最小値が[数5]で表される。但し、β
は乗算器111で与えられるゲインである。
【0031】
【数4】
【0032】
【数5】
【0033】ここで、‖X‖は2乗ノルム、(X,Y)
は内積をそれぞれ表し、Hは[数6]で与えられる重み
付け合成フィルタ(伝達関数:Hw (z) )のインパルス
応答行列である。
は内積をそれぞれ表し、Hは[数6]で与えられる重み
付け合成フィルタ(伝達関数:Hw (z) )のインパルス
応答行列である。
【0034】
【数6】
【0035】[数5]から明らかなように、適応コード
ブック110からの駆動信号ベクトルの探索は、全ての
コードワードXj に対し[数5]の右辺第2項を計算
し、それが最大になるインデックスjを検出することに
よって行う。
ブック110からの駆動信号ベクトルの探索は、全ての
コードワードXj に対し[数5]の右辺第2項を計算
し、それが最大になるインデックスjを検出することに
よって行う。
【0036】このようにして適応コードブック110か
ら最適な駆動信号ベクトルXopt が探索されると、減算
器113で目標ベクトルYからXopt に対応する重み付
け合成フィルタ112の出力が差し引かれ、この減算器
113の出力が雑音コードブック120からの雑音ベク
トル探索の目標ベクトルとされる。雑音コードブック1
20からの雑音ベクトルの探索も、適応コードブック1
10からの駆動信号ベクトルの探索と全く同様に行うこ
とができる。この雑音ベクトル120からの探索で得ら
れたコードベクトルをNopt とすると、合成フィルタの
駆動信号ベクトルXは
ら最適な駆動信号ベクトルXopt が探索されると、減算
器113で目標ベクトルYからXopt に対応する重み付
け合成フィルタ112の出力が差し引かれ、この減算器
113の出力が雑音コードブック120からの雑音ベク
トル探索の目標ベクトルとされる。雑音コードブック1
20からの雑音ベクトルの探索も、適応コードブック1
10からの駆動信号ベクトルの探索と全く同様に行うこ
とができる。この雑音ベクトル120からの探索で得ら
れたコードベクトルをNopt とすると、合成フィルタの
駆動信号ベクトルXは
【0037】
【数7】 と表される。但し、β,gはそれぞれ減算器111、1
21において適応コードブック110および雑音コード
ブック120から探索された駆動信号ベクトルおよび雑
音ベクトルに与えられるゲインである。
21において適応コードブック110および雑音コード
ブック120から探索された駆動信号ベクトルおよび雑
音ベクトルに与えられるゲインである。
【0038】このように求められた駆動信号ベクトル
は、過去のサブフレームで求められた駆動信号ベクトル
と結合された後、20〜147サンプルに渡って遅延回
路150で1サンプルずつ遅延され、Kサンプル単位で
適応コードブック110に格納される。次に本発明の要
旨である雑音コードブック120内の駆動信号ベクトル
を学習により逐次修正する構成について説明する。図1
においては、この学習のためにトレーニングベクトル作
成部162および学習部163が設けられている。
は、過去のサブフレームで求められた駆動信号ベクトル
と結合された後、20〜147サンプルに渡って遅延回
路150で1サンプルずつ遅延され、Kサンプル単位で
適応コードブック110に格納される。次に本発明の要
旨である雑音コードブック120内の駆動信号ベクトル
を学習により逐次修正する構成について説明する。図1
においては、この学習のためにトレーニングベクトル作
成部162および学習部163が設けられている。
【0039】雑音コードブック120からの駆動信号ベ
クトルの探索があるサブフレームで終了すると、最適な
駆動信号ベクトルNopt が雑音コードブック120から
出力される。トレーニングベクトル作成部162はこの
駆動信号ベクトルをトレーニングベクトルVt に設定す
る。学習部163では、トレーニング作成部162から
のトレーニングベクトルを用いて雑音コードブック12
0に格納されている駆動信号ベクトルを学習により逐次
修正する。この修正は符号化の処理と並行して行う。
クトルの探索があるサブフレームで終了すると、最適な
駆動信号ベクトルNopt が雑音コードブック120から
出力される。トレーニングベクトル作成部162はこの
駆動信号ベクトルをトレーニングベクトルVt に設定す
る。学習部163では、トレーニング作成部162から
のトレーニングベクトルを用いて雑音コードブック12
0に格納されている駆動信号ベクトルを学習により逐次
修正する。この修正は符号化の処理と並行して行う。
【0040】図2に、この学習の手順を示す。まず、ト
レーニングベクトル作成部162からのトレーニングベ
クトルVt を入力する(S1)。次に雑音コードブック
120内に格納されている複数個の駆動信号ベクトルの
うち、修正(更新)するベクトルを設定する(更新領域
設定S2)。更新領域の設定法としては、トレーニング
ベクトルVt から一定のユークリッド距離内に存在する
代表ベクトルを、更新領域に設定する方法を用いる。こ
こで雑音コードブック内の駆動信号ベクトルを代表ベク
トルと言い換えている。また更新領域の大きさは時間と
共に小さくなるものとする。時刻iにおける更新領域を
NE(i) とおくと、NE(i) は次の性質を有するものと
する。
レーニングベクトル作成部162からのトレーニングベ
クトルVt を入力する(S1)。次に雑音コードブック
120内に格納されている複数個の駆動信号ベクトルの
うち、修正(更新)するベクトルを設定する(更新領域
設定S2)。更新領域の設定法としては、トレーニング
ベクトルVt から一定のユークリッド距離内に存在する
代表ベクトルを、更新領域に設定する方法を用いる。こ
こで雑音コードブック内の駆動信号ベクトルを代表ベク
トルと言い換えている。また更新領域の大きさは時間と
共に小さくなるものとする。時刻iにおける更新領域を
NE(i) とおくと、NE(i) は次の性質を有するものと
する。
【0041】
【数8】
【0042】次に、更新領域内の代表ベクトルをトレー
ニングベクトルVt を用いて、更新(修正)する。時刻
iにおける更新領域に含まれる代表ベクトルVj (i)
は、次式に従って更新される。
ニングベクトルVt を用いて、更新(修正)する。時刻
iにおける更新領域に含まれる代表ベクトルVj (i)
は、次式に従って更新される。
【0043】
【数9】 ここで、α(i) は修正の大きさを制御する変数であり、
次の性質をもつ。
次の性質をもつ。
【0044】
【数10】
【0045】そして、以上の更新は、更新が収束したか
否かが判定され(S4)、収束するまで続けられる。収
束の判定は、次式を満足するかによって行われ、満たす
場合に収束したと判定する。
否かが判定され(S4)、収束するまで続けられる。収
束の判定は、次式を満足するかによって行われ、満たす
場合に収束したと判定する。
【0046】
【数11】
【0047】この学習法は、Kohonenのアルゴリ
ズムとして知られるニューラルネットワークの学習法の
一つである。このKohonenのアルゴリズムについ
ては、例えばT.Kohonen 氏によるSelf-Organization an
d Associative Memory,Springer-Verlag(1984)(文献
3)に記載されているので、詳細な説明は省略する。な
お、学習法はこれに限られるものではなく、他の学習法
を用いてもよい。
ズムとして知られるニューラルネットワークの学習法の
一つである。このKohonenのアルゴリズムについ
ては、例えばT.Kohonen 氏によるSelf-Organization an
d Associative Memory,Springer-Verlag(1984)(文献
3)に記載されているので、詳細な説明は省略する。な
お、学習法はこれに限られるものではなく、他の学習法
を用いてもよい。
【0048】このような学習によって、雑音コードブッ
ク120内の駆動信号ベクトルは、トレーニングベクト
ルとして用いられる駆動信号ベクトルと統計的に類似し
た性質を持つようになる。前述したように、合成フィル
タの駆動信号は符号化対象である入力音声信号と合成信
号との誤差が最小となるように作成される。従って、こ
の駆動信号を用いて学習を行い、雑音コードブック12
0内の駆動信号ベクトルを修正することによって、入力
音声との差が少ない、つまり歪の少ない合成音声を生成
するのに適した雑音コードブックが作成されることにな
る。
ク120内の駆動信号ベクトルは、トレーニングベクト
ルとして用いられる駆動信号ベクトルと統計的に類似し
た性質を持つようになる。前述したように、合成フィル
タの駆動信号は符号化対象である入力音声信号と合成信
号との誤差が最小となるように作成される。従って、こ
の駆動信号を用いて学習を行い、雑音コードブック12
0内の駆動信号ベクトルを修正することによって、入力
音声との差が少ない、つまり歪の少ない合成音声を生成
するのに適した雑音コードブックが作成されることにな
る。
【0049】しかも、学習は音声符号化の処理と並行し
て行われるので、入力音声信号の性質の変化に対応して
雑音コードブック120内の駆動信号ベクトルの性質も
変化する。この結果、符号化レートが8kbps 以下とい
うような低ビットレートで、駆動信号に割り当てられる
ビット数が少ない場合でも、高品質の音声を合成するこ
とが可能となる。
て行われるので、入力音声信号の性質の変化に対応して
雑音コードブック120内の駆動信号ベクトルの性質も
変化する。この結果、符号化レートが8kbps 以下とい
うような低ビットレートで、駆動信号に割り当てられる
ビット数が少ない場合でも、高品質の音声を合成するこ
とが可能となる。
【0050】換言すれば、従来のCELP方式では入力
音声信号の性質が変化するのに関らず、常に同一の雑音
コードブックを用いて音声信号を再生している。これに
対して、本実施例では上述のような学習動作によって、
入力音声信号に対する合成信号の誤差がより小さくなる
ように、雑音コードブック内の駆動信号ベクトルが変化
していく。これにより、駆動信号に割り当てられるビッ
ト数が同じであれば、より高品質の合成音声が得られ
る。
音声信号の性質が変化するのに関らず、常に同一の雑音
コードブックを用いて音声信号を再生している。これに
対して、本実施例では上述のような学習動作によって、
入力音声信号に対する合成信号の誤差がより小さくなる
ように、雑音コードブック内の駆動信号ベクトルが変化
していく。これにより、駆動信号に割り当てられるビッ
ト数が同じであれば、より高品質の合成音声が得られ
る。
【0051】以上の処理の過程で求められた符号化パラ
メータは、アルチプレクサ142で多重化され、出力端
子143から伝送路へ符号化出力として送出される。す
なわち、マルチプレクサ142ではLPC分析回路10
2で求められたLPC予測係数の情報を符号化回路10
3で符号化したコードと、最小歪探索回路115で求め
られた適応コードブック110のインデックスのコード
と、乗算器111で乗じられるゲインの情報をゲイン符
号化回路140で符号化したコードと、最小歪探索回路
125で求められた雑音コードブック120のインデッ
クスのコード、および乗算器121で乗じられるゲイン
の情報をゲイン符号化回路141で符号化したコードが
多重化される。次に、図1の音声符号化装置に対応した
音声復号化装置の構成を図3により説明する。
メータは、アルチプレクサ142で多重化され、出力端
子143から伝送路へ符号化出力として送出される。す
なわち、マルチプレクサ142ではLPC分析回路10
2で求められたLPC予測係数の情報を符号化回路10
3で符号化したコードと、最小歪探索回路115で求め
られた適応コードブック110のインデックスのコード
と、乗算器111で乗じられるゲインの情報をゲイン符
号化回路140で符号化したコードと、最小歪探索回路
125で求められた雑音コードブック120のインデッ
クスのコード、および乗算器121で乗じられるゲイン
の情報をゲイン符号化回路141で符号化したコードが
多重化される。次に、図1の音声符号化装置に対応した
音声復号化装置の構成を図3により説明する。
【0052】図3において、入力された符号化パラメー
タは、まずデマルチプレクサ201で個々のパラメータ
に分解された後、復号化器202,203,204でそ
れぞれ復号化される。そして、復号化された適応コード
ブックのインデックス及びゲイン、雑音コードブックの
インデックルおよびゲインに基づいて駆動信号が作成さ
れる。この駆動信号が合成フィルタ215でフィルタリ
ングされることによって、合成音声信号が作成される。
この合成音声信号は、ポストフィルタ216でスペクト
ルの整形が行われ、聴覚的な歪が抑圧された後、出力端
子217より出力される。
タは、まずデマルチプレクサ201で個々のパラメータ
に分解された後、復号化器202,203,204でそ
れぞれ復号化される。そして、復号化された適応コード
ブックのインデックス及びゲイン、雑音コードブックの
インデックルおよびゲインに基づいて駆動信号が作成さ
れる。この駆動信号が合成フィルタ215でフィルタリ
ングされることによって、合成音声信号が作成される。
この合成音声信号は、ポストフィルタ216でスペクト
ルの整形が行われ、聴覚的な歪が抑圧された後、出力端
子217より出力される。
【0053】なお、図3においては雑音コードブック2
12内の駆動信号ベクトルの学習のためにトレーニング
ベクトル作成部262および学習部263が設けられて
いる。これらは、それぞれ図1に示した音声符号化装置
におけるトレーニングベクトル作成部162および学習
部163と同一機能を有するものであり、その動作も同
じであるから、詳細な説明は省略する。
12内の駆動信号ベクトルの学習のためにトレーニング
ベクトル作成部262および学習部263が設けられて
いる。これらは、それぞれ図1に示した音声符号化装置
におけるトレーニングベクトル作成部162および学習
部163と同一機能を有するものであり、その動作も同
じであるから、詳細な説明は省略する。
【0054】本実施例から明らかなように本発明では、
トレーニングに用いる信号を符号化,復号化の双方で得
られる信号に設定している。この結果コードブックの学
習のため、何ら補助情報を伝送する必要はなくビットレ
ートの増加はない。次に、図4に本発明の第2の実施例
に係る学習型音声符号化装置のブロック図を示す。
トレーニングに用いる信号を符号化,復号化の双方で得
られる信号に設定している。この結果コードブックの学
習のため、何ら補助情報を伝送する必要はなくビットレ
ートの増加はない。次に、図4に本発明の第2の実施例
に係る学習型音声符号化装置のブロック図を示す。
【0055】第1の実施例では雑音コードブックの内容
を学習によって更新する構成となっていたが、適応コー
ドブックの内容を更新する構成とすることもできる。本
実施例は適応コードブックの学習を行う一構成例であ
る。図4においてはこの学習のためにバッファ131,
トレーニングベクトル作成部132,学習部133,メ
モリ134,および遅延回路135が設けられている。
を学習によって更新する構成となっていたが、適応コー
ドブックの内容を更新する構成とすることもできる。本
実施例は適応コードブックの学習を行う一構成例であ
る。図4においてはこの学習のためにバッファ131,
トレーニングベクトル作成部132,学習部133,メ
モリ134,および遅延回路135が設けられている。
【0056】適応コードブック110からの駆動信号ベ
クトルと雑音コードブック120からのベクトルの探索
があるサブフレームで終了すると、加算器130から新
たな合成フィルタの駆動信号ベクトルが出力される。バ
ッファ131は、この新たな駆動信号ベクトルを過去の
サブフレームの駆動信号ベクトルに加えて蓄積する。具
体的には、バッファ131は図5に示すように蓄積デー
タ長がMB サンプル分のシフトレジスタにより構成さ
れ、新たに加算器130から出力された駆動信号ベクト
ルを含めて、合計MB サンプル分の駆動信号ベクトルの
情報を蓄積する。バッファ131内の駆動信号ベクトル
の情報は、トレーニングベクトル作成部132に読み出
される。トレーニングベクトル作成部132は、図5に
示すようにバッファ131内から駆動信号ベクトルの情
報をベクトルの次元数Kの長さを1単位として、順次m
サンプルずつシフトしながら切り出し、これをトレーニ
ングベクトルとして学習部133へ送る。図5ではm=
1となっているが、m=2,3といった値でもよい。ま
た、図5ではMB =2Kとしている。例えばm=1、M
B =2Kの場合、トレーニングベクトルとしてはK−1
個のベクトルが作成されることになる。
クトルと雑音コードブック120からのベクトルの探索
があるサブフレームで終了すると、加算器130から新
たな合成フィルタの駆動信号ベクトルが出力される。バ
ッファ131は、この新たな駆動信号ベクトルを過去の
サブフレームの駆動信号ベクトルに加えて蓄積する。具
体的には、バッファ131は図5に示すように蓄積デー
タ長がMB サンプル分のシフトレジスタにより構成さ
れ、新たに加算器130から出力された駆動信号ベクト
ルを含めて、合計MB サンプル分の駆動信号ベクトルの
情報を蓄積する。バッファ131内の駆動信号ベクトル
の情報は、トレーニングベクトル作成部132に読み出
される。トレーニングベクトル作成部132は、図5に
示すようにバッファ131内から駆動信号ベクトルの情
報をベクトルの次元数Kの長さを1単位として、順次m
サンプルずつシフトしながら切り出し、これをトレーニ
ングベクトルとして学習部133へ送る。図5ではm=
1となっているが、m=2,3といった値でもよい。ま
た、図5ではMB =2Kとしている。例えばm=1、M
B =2Kの場合、トレーニングベクトルとしてはK−1
個のベクトルが作成されることになる。
【0057】学習部133では、トレーニングベクトル
作成部132からのトレーニングベクトルを用いて、適
応コードブック110に格納されている駆動信号ベクト
ルを学習により逐次修正する。この修正は符号化の処理
と並行して行う。
作成部132からのトレーニングベクトルを用いて、適
応コードブック110に格納されている駆動信号ベクト
ルを学習により逐次修正する。この修正は符号化の処理
と並行して行う。
【0058】図6に、この学習の手順を示す。まず、ト
レーニングベクトル作成部132からトレーニングベク
トルを入力する(S1)。次に、メモリ134に格納さ
れている複数個の駆動信号ベクトルの内、入力されたト
レーニングベクトルとの類似度が最大のベクトルをサー
チする(S2)。なお、類似度としてはユークリッド距
離の逆数を用いることができる。またメモリ134内の
駆動信号ベクトルは図7に示すように長さがNの信号系
列としてシフトレジスタに格納されている。駆動信号ベ
クトルは、ベクトルの次元数Kの長さを1単位としてシ
フトレジスタの右端から左へ1サンプルずつシフトしな
がら切り出すことで生成される。適応コードブック内の
駆動信号ベクトルの総数をnとすると
レーニングベクトル作成部132からトレーニングベク
トルを入力する(S1)。次に、メモリ134に格納さ
れている複数個の駆動信号ベクトルの内、入力されたト
レーニングベクトルとの類似度が最大のベクトルをサー
チする(S2)。なお、類似度としてはユークリッド距
離の逆数を用いることができる。またメモリ134内の
駆動信号ベクトルは図7に示すように長さがNの信号系
列としてシフトレジスタに格納されている。駆動信号ベ
クトルは、ベクトルの次元数Kの長さを1単位としてシ
フトレジスタの右端から左へ1サンプルずつシフトしな
がら切り出すことで生成される。適応コードブック内の
駆動信号ベクトルの総数をnとすると
【0059】
【数12】 の関係がある。次に、S2のステップで得られた類似ベ
クトルCj をトレーニングベクトルVt を用いて、以下
のように更新する(S3)。
クトルCj をトレーニングベクトルVt を用いて、以下
のように更新する(S3)。
【0060】
【数13】
【0061】ここで、αはCj とVt の加重平均の重み
を制御する係数であり、予め定めた定数又は前述の類似
度によって適応的に変化する値を取ることができる。メ
モリ134の駆動信号ベクトルの更新は、上式によって
行われるが、実際には駆動信号ベクトルCj が切り出さ
れたシフトレジスタ中の信号系列の一部が更新される。
以上の処理をS4でトレーニングベクトルがなくなった
と判定されるまで繰り返し行うことにより、メモリ13
4内の駆動信号ベクトルの学習が行われる。この学習が
終了するとメモリ134のシフトレジスタに格納されて
いる信号系列を、駆動信号ベクトルの次元数Kの長さを
1単位として遅延回路135で1サンプルずつシフトし
ながら切り出し適応コードブック110に格納する。こ
れにより適応コードブックの学習が終了する。なお適応
コードブックは実際に用意する必要はなくメモリ134
を仮想的に適応コードブックとすることができる。
を制御する係数であり、予め定めた定数又は前述の類似
度によって適応的に変化する値を取ることができる。メ
モリ134の駆動信号ベクトルの更新は、上式によって
行われるが、実際には駆動信号ベクトルCj が切り出さ
れたシフトレジスタ中の信号系列の一部が更新される。
以上の処理をS4でトレーニングベクトルがなくなった
と判定されるまで繰り返し行うことにより、メモリ13
4内の駆動信号ベクトルの学習が行われる。この学習が
終了するとメモリ134のシフトレジスタに格納されて
いる信号系列を、駆動信号ベクトルの次元数Kの長さを
1単位として遅延回路135で1サンプルずつシフトし
ながら切り出し適応コードブック110に格納する。こ
れにより適応コードブックの学習が終了する。なお適応
コードブックは実際に用意する必要はなくメモリ134
を仮想的に適応コードブックとすることができる。
【0062】このような学習によって、適応コードブッ
ク110内の駆動信号ベクトルは、トレーニングベクト
ルとして用いられる駆動信号ベクトルと統計的に類似し
た性質を持つようになる。しかも、学習は音声符号化の
処理と並行して行われるので、入力音声信号の性質の変
化に対応して適応コードブック110内の駆動信号ベク
トルの性質も変化する。この結果、符号化レートが8k
bps 以下というような低ビットレートで駆動信号の符号
化に割り当てられるビット数が少ない場合でも、高品質
の音声を合成することが可能となる。
ク110内の駆動信号ベクトルは、トレーニングベクト
ルとして用いられる駆動信号ベクトルと統計的に類似し
た性質を持つようになる。しかも、学習は音声符号化の
処理と並行して行われるので、入力音声信号の性質の変
化に対応して適応コードブック110内の駆動信号ベク
トルの性質も変化する。この結果、符号化レートが8k
bps 以下というような低ビットレートで駆動信号の符号
化に割り当てられるビット数が少ない場合でも、高品質
の音声を合成することが可能となる。
【0063】また、従来のCELP方式では、無声音か
ら有声音へと入力音声信号の性質が急に変化した場合、
適応コードブックの内容が無声音区間の駆動信号ベクト
ルだけになるので有声音を合成するために必要な周期的
な駆動信号を生成することが直ちにはできず、入力音声
信号の変化への追従が遅くなる。この結果、合成音声の
明瞭性が悪くなる問題があった。これに対して、本実施
例では、入力音声信号が無声音から有声音へ急に変化し
た場合でも、上述の学習動作によって過去の有声音区間
の駆動信号ベクトルが適応コードブック内に保存される
ので、この駆動信号ベクトルを用いて有声音を合成する
ことができ、明瞭な合成音声を得ることが可能になる。
さらに、本実施例における駆動信号ベクトルは図7から
明らかなように互いにオーバラップする関係にあり、適
応コードブックから最適な駆動信号ベクトルを探索する
のに要する演算量を削減することができる。従来の適応
コードブックも文献2で記述されているように各ベクト
ルがオーバラップする構造となっており、最適な駆動信
号ベクトルの探索が効率良く行われる。本実施例では学
習動作によって適応コードブックの内容がランダムに更
新されても、オーバラップの構造が崩れないようになっ
ており、効率的な駆動信号ベクトルの探索が可能とな
る。オーバラップ構造を利用した効率的な探索法につい
ては、文献2に記述されているので、ここでは省略す
る。以上の処理の過程で求められた符号化パラメータ
は、マルチプレクサ142で多重化され、出力端子14
3から伝送路へ符号化出力として送出される。
ら有声音へと入力音声信号の性質が急に変化した場合、
適応コードブックの内容が無声音区間の駆動信号ベクト
ルだけになるので有声音を合成するために必要な周期的
な駆動信号を生成することが直ちにはできず、入力音声
信号の変化への追従が遅くなる。この結果、合成音声の
明瞭性が悪くなる問題があった。これに対して、本実施
例では、入力音声信号が無声音から有声音へ急に変化し
た場合でも、上述の学習動作によって過去の有声音区間
の駆動信号ベクトルが適応コードブック内に保存される
ので、この駆動信号ベクトルを用いて有声音を合成する
ことができ、明瞭な合成音声を得ることが可能になる。
さらに、本実施例における駆動信号ベクトルは図7から
明らかなように互いにオーバラップする関係にあり、適
応コードブックから最適な駆動信号ベクトルを探索する
のに要する演算量を削減することができる。従来の適応
コードブックも文献2で記述されているように各ベクト
ルがオーバラップする構造となっており、最適な駆動信
号ベクトルの探索が効率良く行われる。本実施例では学
習動作によって適応コードブックの内容がランダムに更
新されても、オーバラップの構造が崩れないようになっ
ており、効率的な駆動信号ベクトルの探索が可能とな
る。オーバラップ構造を利用した効率的な探索法につい
ては、文献2に記述されているので、ここでは省略す
る。以上の処理の過程で求められた符号化パラメータ
は、マルチプレクサ142で多重化され、出力端子14
3から伝送路へ符号化出力として送出される。
【0064】図4の音声符号化装置に対応した音声復号
化装置の構成は図8のようになる。図8においては適応
コードブック210内の駆動信号ベクトルの学習のため
にメモリ224,遅延回路225が設けられている。こ
れらは、それぞれ図4に示した音声符号化装置における
メモリ134,遅延回路135と同一機能を有するもの
であり、その動作も同じであるから、詳細な説明は省略
する。
化装置の構成は図8のようになる。図8においては適応
コードブック210内の駆動信号ベクトルの学習のため
にメモリ224,遅延回路225が設けられている。こ
れらは、それぞれ図4に示した音声符号化装置における
メモリ134,遅延回路135と同一機能を有するもの
であり、その動作も同じであるから、詳細な説明は省略
する。
【0065】
【発明の効果】以上説明したように、本発明によれば適
応コードブック及び雑音コードブック内の駆動信号ベク
トルはトレーニングベクトルとして用いられる駆動信号
と統計的に同じ性質を持つようになる。一方、合成フィ
ルタの駆動信号は符号化対象である入力音声信号を参照
して、適応コードブック及び雑音コードブックから最適
な駆動信号ベクトル、すなわち入力音声信号と合成フィ
ルタによる合成音声信号との誤差が最小となるような駆
動信号ベクトルが探索されることで作成される。従っ
て、この最適な駆動信号ベクトルを用いて学習的に適応
コードブック及び雑音コードブック内の駆動信号ベクト
ルを逐次修正することによって、入力音声信号に対する
歪がより小さくなるような合成音声を作成するのに適し
た適応コードブック及び雑音コードブックを作成するこ
とができる。また、学習の処理自体は符号化の処理と並
行して進めることができるので、入力音声信号の性質の
変化に対応して適応コードブック及び雑音コードブック
の性質も変化することになる。
応コードブック及び雑音コードブック内の駆動信号ベク
トルはトレーニングベクトルとして用いられる駆動信号
と統計的に同じ性質を持つようになる。一方、合成フィ
ルタの駆動信号は符号化対象である入力音声信号を参照
して、適応コードブック及び雑音コードブックから最適
な駆動信号ベクトル、すなわち入力音声信号と合成フィ
ルタによる合成音声信号との誤差が最小となるような駆
動信号ベクトルが探索されることで作成される。従っ
て、この最適な駆動信号ベクトルを用いて学習的に適応
コードブック及び雑音コードブック内の駆動信号ベクト
ルを逐次修正することによって、入力音声信号に対する
歪がより小さくなるような合成音声を作成するのに適し
た適応コードブック及び雑音コードブックを作成するこ
とができる。また、学習の処理自体は符号化の処理と並
行して進めることができるので、入力音声信号の性質の
変化に対応して適応コードブック及び雑音コードブック
の性質も変化することになる。
【0066】この結果、上記のような学習を行わない従
来の方式では駆動信号に割り当てるビット数の制限から
品質を確保することが困難であった8kbps 程度以下の
低ビットレートにおいても、本発明によれば品質の高い
音声を合成することが可能となる。しかも、学習のトレ
ーニング信号を符号化,復号化の双方の処理で得ること
のできる駆動信号ベクトルに設定しているので、学習の
ため何ら補助情報を伝送する必要はなく、ビットレート
の増加もない。
来の方式では駆動信号に割り当てるビット数の制限から
品質を確保することが困難であった8kbps 程度以下の
低ビットレートにおいても、本発明によれば品質の高い
音声を合成することが可能となる。しかも、学習のトレ
ーニング信号を符号化,復号化の双方の処理で得ること
のできる駆動信号ベクトルに設定しているので、学習の
ため何ら補助情報を伝送する必要はなく、ビットレート
の増加もない。
【図1】 本発明の第1の実施例に係る学習型音声符号
化装置のブロック図。
化装置のブロック図。
【図2】 同実施例における駆動信号ベクトルの学習の
手順を説明するための図。
手順を説明するための図。
【図3】 同実施例における音声復号化装置のブロック
図。
図。
【図4】 本発明の第2の実施例に係る学習型音声符号
化装置のブロック図。
化装置のブロック図。
【図5】 同実施例におけるトレーニングベクトルの作
成法を説明するための図。
成法を説明するための図。
【図6】 同実施例における駆動信号ベクトルの学習の
手順を説明するための図。
手順を説明するための図。
【図7】 同実施例に係るメモリ内において、駆動信号
ベクトルが格納されている様子を示す図。
ベクトルが格納されている様子を示す図。
【図8】 同実施例における音声復号化装置のブロック
図。
図。
【図9】 従来の音声符号化装置における駆動信号ベク
トル探索に係る構成を示すブロック図。
トル探索に係る構成を示すブロック図。
100…音声信号入力端子 102…LPC
分析回路 103…符号化回路 106…重み付
けフィルタ 107…重み付け合成フィルタ 110…適応コ
ードブック 112…重み付け合成フィルタ 114…2乗誤
差計算回路 115…最小歪探索回路 120…雑音コ
ードブック 122…重み付け合成フィルタ 124…2乗誤
差計算回路 125…最小歪探索回路 131…バッフ
ァ 132…トレーニングベクトル作成部 133…学習部 134…メモリ 135…遅延回
路 140…ゲイン符号化回路 141…ゲイン
符号化回路 142…マルチプレクサ 143…出力端
子 150…遅延回路 162…トレー
ニングベクトル作成部 163…学習部
分析回路 103…符号化回路 106…重み付
けフィルタ 107…重み付け合成フィルタ 110…適応コ
ードブック 112…重み付け合成フィルタ 114…2乗誤
差計算回路 115…最小歪探索回路 120…雑音コ
ードブック 122…重み付け合成フィルタ 124…2乗誤
差計算回路 125…最小歪探索回路 131…バッフ
ァ 132…トレーニングベクトル作成部 133…学習部 134…メモリ 135…遅延回
路 140…ゲイン符号化回路 141…ゲイン
符号化回路 142…マルチプレクサ 143…出力端
子 150…遅延回路 162…トレー
ニングベクトル作成部 163…学習部
Claims (3)
- 【請求項1】駆動信号ベクトルをコードワードとして格
納したコードブックと、 入力音声信号を参照して前記コードブックから最適な駆
動信号ベクトルを探索する探索手段と、 この探索手段により探索された最適な駆動信号ベクトル
を用いて音声信号を合成する合成フィルタと、 前記最適な駆動信号ベクトルを用いてトレーニングベク
トルを作成するトレーニングベクトル作成手段と、 この手段により作成されたトレーニングベクトルを用い
て前記コードブック内の駆動信号ベクトルを逐次修正す
る学習手段とを具備することを特徴とする学習型音声符
号化装置。 - 【請求項2】駆動信号ベクトルをコードワードとして格
納した複数のコードブックと、 入力音声信号を参照して前記複数のコードブックから最
適なコードワードを夫々探索する探索手段と、 この探索手段により探索された最適なコードワードを駆
動信号ベクトルとして用いて音声信号を合成する合成フ
ィルタと、 前記最適なコードワードを用いてトレーニングベクトル
を作成するトレーニングベクトル作成手段と、 この手段により作成されたトレーニングベクトルを用い
て該当する少なくとも1つの前記コードブック内のコー
ドワードを逐次修正する学習手段とを具備することを特
徴とする学習型音声符号化装置。 - 【請求項3】駆動信号ベクトルをコードワードとして格
納した複数のコードブックと、 入力音声信号を参照して前記複数のコードブックから最
適なコードブックを夫々探索する探索手段と、 この探索手段により探索された最適なコードワードを駆
動信号ベクトルとして用いて音声信号を合成する合成フ
ィルタと、 前記最適なコードワードより得られた駆動信号ベクトル
を用いてトレーニングベクトルを作成するトレーニング
ベクトル作成手段と、 この手段により作成されたトレーニングベクトルを用い
て該当する少なくとも1つの前記コードブック内のコー
ドワードを逐次修正する学習手段とを具備することを特
徴とする学習型音声符号化装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/007,710 US5671327A (en) | 1991-10-21 | 1993-01-22 | Speech encoding apparatus utilizing stored code data |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3-272940 | 1991-10-21 | ||
JP27294091 | 1991-10-21 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05249999A true JPH05249999A (ja) | 1993-09-28 |
Family
ID=17520890
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4278301A Pending JPH05249999A (ja) | 1991-10-21 | 1992-10-16 | 学習型音声符号化装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05249999A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004097796A1 (ja) * | 2003-04-30 | 2004-11-11 | Matsushita Electric Industrial Co., Ltd. | 音声符号化装置、音声復号化装置及びこれらの方法 |
-
1992
- 1992-10-16 JP JP4278301A patent/JPH05249999A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004097796A1 (ja) * | 2003-04-30 | 2004-11-11 | Matsushita Electric Industrial Co., Ltd. | 音声符号化装置、音声復号化装置及びこれらの方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0409239B1 (en) | Speech coding/decoding method | |
JP2964344B2 (ja) | 符号化/復号化装置 | |
US7016831B2 (en) | Voice code conversion apparatus | |
US5819213A (en) | Speech encoding and decoding with pitch filter range unrestricted by codebook range and preselecting, then increasing, search candidates from linear overlap codebooks | |
KR100304682B1 (ko) | 음성 코더용 고속 여기 코딩 | |
US7978771B2 (en) | Encoder, decoder, and their methods | |
EP1768105A1 (en) | Audio encoding device, audio decoding device, and method thereof | |
CA2567788A1 (en) | Audio/music decoding device and audio/music decoding method | |
US5659659A (en) | Speech compressor using trellis encoding and linear prediction | |
JP3357795B2 (ja) | 音声符号化方法および装置 | |
US5826221A (en) | Vocal tract prediction coefficient coding and decoding circuitry capable of adaptively selecting quantized values and interpolation values | |
JP3628268B2 (ja) | 音響信号符号化方法、復号化方法及び装置並びにプログラム及び記録媒体 | |
JPH05249999A (ja) | 学習型音声符号化装置 | |
JP3490325B2 (ja) | 音声信号符号化方法、復号方法およびその符号化器、復号器 | |
CA2542137C (en) | Harmonic noise weighting in digital speech coders | |
JP3232701B2 (ja) | 音声符号化方法 | |
JPH06131000A (ja) | 基本周期符号化装置 | |
JP3153075B2 (ja) | 音声符号化装置 | |
JP3754819B2 (ja) | 音声通信方法及び音声通信装置 | |
JP3212123B2 (ja) | 音声符号化装置 | |
JP3824706B2 (ja) | 音声符号化/復号化装置 | |
JP3089967B2 (ja) | 音声符号化装置 | |
JPH05273998A (ja) | 音声符号化装置 | |
JP3270146B2 (ja) | 音声符号化装置 | |
JP3350340B2 (ja) | 音声符号化方法および音声復号化方法 |