(57)【特許請求の範囲】
【請求項１】
量子化された所定のコードから復号される線形予測係数と残差信号を、音声合成フィルタに与えることによって得られる合成音から、その音質を向上させた高音質の音声の予測値を予測するための予測タップを抽出し、前記予測タップと所定のタップ係数を用いて、所定の予測演算を行うことにより、前記高音質の音声の予測値を求める音声処理装置であって、
量子化された前記所定のコードを分離、復号して前記線形予測係数と前記残差信号とを生成する復号手段と、
前記復号手段により復号された前記線形予測係数をタップ係数とする前記音声合成フィルタを用いて、前記残差信号をフィルタリングし、前記合成音を生成する合成音生成手段と、
前記予測値を求めようとしている前記高音質の音声を注目音声として、前記注目音声を予測するのに用いる前記予測タップを、前記合成音生成手段により生成された前記合成音から抽出する予測タップ抽出手段と、
前記注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、前記所定のコードから抽出するクラスタップ抽出手段と、
前記クラスタップに基づいて、前記注目音声の前記クラスを求めるクラス分類を行うクラス分類手段と、
学習を行うことにより求められた、前記クラスごとの前記所定のタップ係数のうち、前記注目音声の前記クラスに対応する前記所定のタップ係数と、前記予測タップ抽出手段により抽出された前記予測タップとを用いて、前記注目音声の前記予測値を求める予測手段と
を備えることを特徴とする音声処理装置。
【請求項２】
前記予測手段は、前記予測タップおよび前記所定のタップ係数を用いて線形１次予測演算を行うことにより、前記注目音声の前記予測値を求める
ことを特徴とする請求項１に記載の音声処理装置。
【請求項３】
前記予測手段は、前記クラスごとの前記所定のタップ係数を記憶している記憶手段から、前記注目音声に対応する前記クラスの前記所定のタップ係数を取得する
ことを特徴とする請求項１に記載の音声処理装置。
【請求項４】
前記クラスタップ抽出手段は、前記クラスタップを、前記所定のコードと、前記所定のコードを復号することにより得られる前記線形予測係数または前記残差信号の中から抽出する
ことを特徴とする請求項１に記載の音声処理装置。
【請求項５】
前記所定のタップ係数は、前記予測タップおよび前記所定のタップ係数を用いて所定の予測演算を行うことにより得られる前記高音質の音声の前記予測値の予測誤差が、統計的に最小になるように、学習を行うことにより得られたものである
ことを特徴とする請求項１に記載の音声処理装置。
【請求項６】
前記所定のコードは、音声を、ＣＥＬＰ(Code Excited Liner Prediction coding)方式によって符号化することにより得られたものである
ことを特徴とする請求項１に記載の音声処理装置。
【請求項７】
量子化された所定のコードから復号される線形予測係数と残差信号を、音声合成フィルタに与えることによって得られる合成音から、その音質を向上させた高音質の音声の予測値を予測するための予測タップを抽出し、前記予測タップと所定のタップ係数を用いて、所定の予測演算を行うことにより、前記高音質の音声の予測値を求める音声処理方法であって、
量子化された前記所定のコードを分離、復号して前記線形予測係数と前記残差信号とを生成する復号ステップと、
前記復号ステップの処理により復号された前記線形予測係数をタップ係数とする前記音声合成フィルタを用いて、前記残差信号をフィルタリングし、前記合成音を生成する合成音生成ステップと、
前記予測値を求めようとしている前記高音質の音声を注目音声として、前記注目音声を予測するのに用いる前記予測タップを、前記合成音生成ステップの処理により生成された前記合成音から抽出する予測タップ抽出ステップと、
前記注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、前記所定のコードから抽出するクラスタップ抽出ステップと、
前記クラスタップに基づいて、前記注目音声の前記クラスを求めるクラス分類を行うクラス分類ステップと、
学習を行うことにより求められた、前記クラスごとの前記所定のタップ係数のうち、前記注目音声の前記クラスに対応する前記所定のタップ係数と、前記予測タップ抽出ステップの処理により抽出された前記予測タップとを用いて、前記注目音声の前記予測値を求める予測ステップと
を含むことを特徴とする音声処理方法。
【請求項８】
量子化された所定のコードから復号される線形予測係数と残差信号を、音声合成フィルタに与えることによって得られる合成音から、その音質を向上させた高音質の音声の予測値を予測するための予測タップを抽出し、前記予測タップと所定のタップ係数を用いて、所定の予測演算を行うことにより、前記高音質の音声の予測値を求める音声処理を、コンピュータに行わせるプログラムであって、
量子化された前記所定のコードを分離、復号して前記線形予測係数と前記残差信号とを生成する復号ステップと、
前記復号ステップの処理により復号された前記線形予測係数をタップ係数とする前記音声合成フィルタを用いて、前記残差信号をフィルタリングし、前記合成音を生成する合成音生成ステップと、
前記予測値を求めようとしている前記高音質の音声を注目音声として、前記注目音声を予測するのに用いる前記予測タップを、前記合成音生成ステップの処理により生成された前記合成音から抽出する予測タップ抽出ステップと、
前記注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、前記所定のコードから抽出するクラスタップ抽出ステップと、
前記クラスタップに基づいて、前記注目音声の前記クラスを求めるクラス分類を行うクラス分類ステップと、
学習を行うことにより求められた、前記クラスごとの前記所定のタップ係数のうち、前記注目音声の前記クラスに対応する前記所定のタップ係数と、前記予測タップ抽出ステップの処理により抽出された前記予測タップとを用いて、前記注目音声の前記予測値を求める予測ステップと
を含むことを特徴とするプログラム。
【請求項９】
量子化された所定のコードから復号される線形予測係数と残差信号を、音声合成フィルタに与えることによって得られる合成音から、その音質を向上させた高音質の音声の予測値を予測するための予測タップを抽出し、前記予測タップと所定のタップ係数を用いて、所定の予測演算を行うことにより、前記高音質の音声の予測値を求める音声処理を、コンピュータに行わせるプログラムが記録されている記録媒体であって、
量子化された前記所定のコードを分離、復号して前記線形予測係数と前記残差信号とを生成する復号ステップと、
前記復号ステップの処理により復号された前記線形予測係数をタップ係数とする前記音声合成フィルタを用いて、前記残差信号をフィルタリングし、前記合成音を生成する合成音生成ステップと、
前記予測値を求めようとしている前記高音質の音声を注目音声として、前記注目音声を予測するのに用いる前記予測タップを、前記合成音生成ステップの処理により生成された前記合成音から抽出する予測タップ抽出ステップと、
前記注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、前記所定のコードから抽出するクラスタップ抽出ステップと、
前記クラスタップに基づいて、前記注目音声の前記クラスを求めるクラス分類を行うクラス分類ステップと、
学習を行うことにより求められた、前記クラスごとの前記所定のタップ係数のうち、前記注目音声の前記クラスに対応する前記所定のタップ係数と、前記予測タップ抽出ステップの処理により抽出された前記予測タップとを用いて、前記注目音声の前記予測値を求める予測ステップと
を実行するプログラムが記録されていることを特徴とする記録媒体。
【請求項１０】
量子化された所定のコードから復号される第１の線形予測係数と第１の残差信号を、音声合成フィルタに与えることによって得られる合成音から、その音質を向上させた高音質の音声の予測値を、所定の予測演算によって求めるのに用いる所定のタップ係数を学習する学習装置であって、
学習用音声信号から第２の線形予測係数を求める線形予測係数算出手段と、
前記学習用音声信号と前記第２の線形予測係数から第２の残差信号を求める残差信号算出手段と、
前記第２の線形予測係数を要素とするコードベクトルとコードとを対応付けた第１のコードブックに基づいて、前記第２の線形予測係数で構成される特徴ベクトルをベクトル量子化し、第１のコードを生成する第１の量子化手段と、
前記第１のコードを復号し、前記第１の線形予測係数を生成する第１の復号手段と、
前記第２の残差信号を要素とするコードベクトルとコードとを対応付けた第２のコードブックに基づいて、前記第２の残差信号のサンプル値で構成される残差ベクトルをベクトル量子化し、第２のコードを生成する第２の量子化手段と、
前記第２のコードを復号し、前記第１の残差信号を生成する第２の復号手段と、
前記第１の線形予測係数をタップ係数とする前記音声合成フィルタを用いて、前記第１の残差信号をフィルタリングし、前記合成音を生成する合成音生成手段と、
前記予測値を求めようとしている前記高音質の音声を注目音声として、前記注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、前記第１のコードおよび前記第２のコードから抽出するクラスタップ抽出手段と、
前記クラスタップに基づいて、前記注目音声のクラスを求めるクラス分類を行うクラス分類手段と、
前記所定のタップ係数および前記合成音を用いて予測演算を行うことにより得られる前記高音質の音声の前記予測値の予測誤差が統計的に最小になるように、学習を行い、前記クラスごとの前記所定のタップ係数を求める学習手段と
を備えることを特徴とする学習装置。
【請求項１１】
前記学習手段は、前記所定のタップ係数および前記合成音を用いて線形１次予測演算を行うことにより得られる前記高音質の音声の予測値の予測誤差が、統計的に最小になるように学習を行う
ことを特徴とする請求項１０に記載の学習装置。
【請求項１２】
前記クラスタップ抽出手段は、前記クラスタップを、前記第１のコードおよび前記第２のコードと、前記第１のコードまたは前記第２のコードを復号することにより得られる前記第１の線形予測係数または前記第２の残差信号の中から抽出する
ことを特徴とする請求項１０に記載の学習装置。
【請求項１３】
前記第１のコードおよび前記第２のコードは、音声を、ＣＥＬＰ(Code Excited Liner Prediction coding)方式によって符号化することにより得られたものである
ことを特徴とする請求項１０に記載の学習装置。
【請求項１４】
量子化された所定のコードから復号される第１の線形予測係数と第１の残差信号を、音声合成フィルタに与えることによって得られる合成音から、その音質を向上させた高音質の音声の予測値を、所定の予測演算によって求めるのに用いる所定のタップ係数を学習する学習方法であって、
学習用音声信号から第２の線形予測係数を求める線形予測係数算出ステップと、
前記学習用音声信号と前記第２の線形予測係数から第２の残差信号を求める残差信号算出ステップと、
前記第２の線形予測係数を要素とするコードベクトルとコードとを対応付けた第１のコードブックに基づいて、前記第２の線形予測係数で構成される特徴ベクトルをベクトル量子化し、第１のコードを生成する第１の量子化ステップと、
前記第１のコードを復号し、前記第１の線形予測係数を生成する第１の復号ステップと、
前記第２の残差信号を要素とするコードベクトルとコードとを対応付けた第２のコードブックに基づいて、前記第２の残差信号のサンプル値で構成される残差ベクトルをベクトル量子化し、第２のコードを生成する第２の量子化ステップと、
前記第２のコードを復号し、前記第１の残差信号を生成する第２の復号ステップと、
前記第１の線形予測係数をタップ係数とする前記音声合成フィルタを用いて、前記第１の残差信号をフィルタリングし、前記合成音を生成する合成音生成ステップと、
前記予測値を求めようとしている前記高音質の音声を注目音声として、前記注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、前記第１のコードおよび前記第２のコードから抽出するクラスタップ抽出ステップと、
前記クラスタップに基づいて、前記注目音声のクラスを求めるクラス分類を行うクラス分類ステップと、
前記所定のタップ係数および前記合成音を用いて予測演算を行うことにより得られる前記高音質の音声の前記予測値の予測誤差が統計的に最小になるように、学習を行い、前記クラスごとの前記所定のタップ係数を求める学習ステップと
を含むことを特徴とする学習方法。
【請求項１５】
量子化された所定のコードから復号される第１の線形予測係数と第１の残差信号を、音声合成フィルタに与えることによって得られる合成音から、その音質を向上させた高音質の音声の予測値を、所定の予測演算によって求めるのに用いる所定のタップ係数を学習する学習処理を、コンピュータに行わせるプログラムであって、
学習用音声信号から第２の線形予測係数を求める線形予測係数算出ステップと、
前記学習用音声信号と前記第２の線形予測係数から第２の残差信号を求める残差信号算出ステップと、
前記第２の線形予測係数を要素とするコードベクトルとコードとを対応付けた第１のコードブックに基づいて、前記第２の線形予測係数で構成される特徴ベクトルをベクトル量子化し、第１のコードを生成する第１の量子化ステップと、
前記第１のコードを復号し、前記第１の線形予測係数を生成する第１の復号ステップと、
前記第２の残差信号を要素とするコードベクトルとコードとを対応付けた第２のコードブックに基づいて、前記第２の残差信号のサンプル値で構成される残差ベクトルをベクトル量子化し、第２のコードを生成する第２の量子化ステップと、
前記第２のコードを復号し、前記第１の残差信号を生成する第２の復号ステップと、
前記第１の線形予測係数をタップ係数とする前記音声合成フィルタを用いて、前記第１の残差信号をフィルタリングし、前記合成音を生成する合成音生成ステップと、
前記予測値を求めようとしている前記高音質の音声を注目音声として、前記注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、前記第１のコードおよび前記第２のコードから抽出するクラスタップ抽出ステップと、
前記クラスタップに基づいて、前記注目音声のクラスを求めるクラス分類を行うクラス分類ステップと、
前記所定のタップ係数および前記合成音を用いて予測演算を行うことにより得られる前記高音質の音声の前記予測値の予測誤差が統計的に最小になるように、学習を行い、前記クラスごとの前記所定のタップ係数を求める学習ステップと
を含むことを特徴とするプログラム。
【請求項１６】
量子化された所定のコードから復号される第１の線形予測係数と第１の残差信号を、音声合成フィルタに与えることによって得られる合成音から、その音質を向上させた高音質の音声の予測値を、所定の予測演算によって求めるのに用いる所定のタップ係数を学習する学習処理を、コンピュータに行わせるプログラムが記録されている記録媒体であって、
学習用音声信号から第２の線形予測係数を求める線形予測係数算出ステップと、
前記学習用音声信号と前記第２の線形予測係数から第２の残差信号を求める残差信号算出ステップと、
前記第２の線形予測係数を要素とするコードベクトルとコードとを対応付けた第１のコードブックに基づいて、前記第２の線形予測係数で構成される特徴ベクトルをベクトル量子化し、第１のコードを生成する第１の量子化ステップと、
前記第１のコードを復号し、前記第１の線形予測係数を生成する第１の復号ステップと、
前記第２の残差信号を要素とするコードベクトルとコードとを対応付けた第２のコードブックに基づいて、前記第２の残差信号のサンプル値で構成される残差ベクトルをベクトル量子化し、第２のコードを生成する第２の量子化ステップと、
前記第２のコードを復号し、前記第１の残差信号を生成する第２の復号ステップと、
前記第１の線形予測係数をタップ係数とする前記音声合成フィルタを用いて、前記第１の残差信号をフィルタリングし、前記合成音を生成する合成音生成ステップと、
前記予測値を求めようとしている前記高音質の音声を注目音声として、前記注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、前記第１のコードおよび前記第２のコードから抽出するクラスタップ抽出ステップと、
前記クラスタップに基づいて、前記注目音声のクラスを求めるクラス分類を行うクラス分類ステップと、
前記所定のタップ係数および前記合成音を用いて予測演算を行うことにより得られる前記高音質の音声の前記予測値の予測誤差が統計的に最小になるように、学習を行い、前記クラスごとの前記所定のタップ係数を求める学習ステップと
を実行するプログラムが記録されていることを特徴とする記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ処理装置およびデータ処理方法、学習装置および学習方法、並びにプログラムおよび記録媒体に関し、特に、例えば、ＣＥＬＰ(Code Excited Liner Prediction coding)方式で符号化された音声を、高音質の音声に復号することができるようにするデータ処理装置およびデータ処理方法、学習装置および学習方法、並びにプログラムおよび記録媒体に関する。
【０００２】
【従来の技術】
図１および図２は、従来の携帯電話機の一例の構成を示している。
【０００３】
この携帯電話機では、音声を、ＣＥＬＰ方式により所定のコードに符号化して送信する送信処理と、他の携帯電話機から送信されてくるコードを受信して、音声に復号する受信処理とが行われるようになっており、図１は、送信処理を行う送信部を、図２は、受信処理を行う受信部を、それぞれ示している。
【０００４】
図１に示した送信部では、ユーザが発話した音声が、マイク（マイクロフォン）１に入力され、そこで、電気信号としての音声信号に変換され、Ａ／Ｄ(Analog/Digital)変換部２に供給される。Ａ／Ｄ変換部２は、マイク１からのアナログの音声信号を、例えば、８ｋＨｚ等のサンプリング周波数でサンプリングすることにより、ディジタルの音声信号にＡ／Ｄ変換し、さらに、所定のビット数で量子化を行って、演算器３とＬＰＣ(Liner Prediction Coefficient)分析部４に供給する。
【０００５】
ＬＰＣ分析部４は、Ａ／Ｄ変換部２からの音声信号を、例えば、１６０サンプル分の長さのフレームごとにＬＰＣ分析し、Ｐ次の線形予測係数α1，α2，・・・，αPを求める。そして、ＬＰＣ分析部４は、このＰ次の線形予測係数αp（ｐ＝１，２，・・・，Ｐ）を要素とするベクトルを、音声の特徴ベクトルとして、ベクトル量子化部５に供給する。
【０００６】
ベクトル量子化部５は、線形予測係数を要素とするコードベクトルとコードとを対応付けたコードブックを記憶しており、そのコードブックに基づいて、ＬＰＣ分析部４からの特徴ベクトルαをベクトル量子化し、そのベクトル量子化の結果得られるコード（以下、適宜、Ａコード(A_code)という）を、コード決定部１５に供給する。
【０００７】
さらに、ベクトル量子化部５は、Ａコードに対応するコードベクトルα’を構成する要素となっている線形予測係数α1’，α2’，・・・，αP’を、音声合成フィルタ６に供給する。
【０００８】
音声合成フィルタ６は、例えば、ＩＩＲ(Infinite Impulse Response)型のディジタルフィルタで、ベクトル量子化部５からの線形予測係数αp’（ｐ＝１，２，・・・，Ｐ）をＩＩＲフィルタのタップ係数とするとともに、演算器１４から供給される残差信号ｅを入力信号として、音声合成を行う。
【０００９】
即ち、ＬＰＣ分析部４で行われるＬＰＣ分析は、現在時刻ｎの音声信号（のサンプル値）ｓn、およびこれに隣接する過去のＰ個のサンプル値ｓn-1，ｓn-2，・・・，ｓn-Pに、式
ｓn＋α1ｓn-1＋α2ｓn-2＋・・・＋αPｓn-P＝en・・・（１）
で示す線形１次結合が成立すると仮定し、現在時刻ｎのサンプル値ｓnの予測値（線形予測値）ｓn’を、過去のＰ個の標本値ｓn-1，ｓn-2，・・・，ｓn-Pを用いて、式
ｓn’＝−（α1ｓn-1＋α2ｓn-2＋・・・＋αPｓn-P） ・・・（２）
によって線形予測したときに、実際のサンプル値ｓnと線形予測値ｓn’との間の自乗誤差を最小にする線形予測係数αpを求めるものである。
【００１０】
ここで、式（１）において、｛en｝（・・・，en-1，en，en+1，・・・）は、平均値が０で、分散が所定値σ2の互いに無相関な確率変数である。
【００１１】
式（１）から、サンプル値ｓnは、式
ｓn＝en−（α1ｓn-1＋α2ｓn-2＋・・・＋αPｓn-P）・・・（３）
で表すことができ、これを、Ｚ変換すると、次式が成立する。
【００１２】
Ｓ＝Ｅ／（１＋α1ｚ-1＋α2ｚ-2＋・・・＋αPｚ-P）・・・（４）
但し、式（４）において、ＳとＥは、式（３）におけるｓnとｅnのＺ変換を、それぞれ表す。
【００１３】
ここで、式（１）および（２）から、ｅnは、式
ｅn＝ｓn−ｓn’・・・（５）
で表すことができ、実際のサンプル値ｓnと線形予測値ｓn’との間の残差信号と呼ばれる。
【００１４】
従って、式（４）から、線形予測係数αpをＩＩＲフィルタのタップ係数とするとともに、残差信号ｅnをＩＩＲフィルタの入力信号とすることにより、音声信号ｓnを求めることができる。
【００１５】
そこで、音声合成フィルタ６は、上述したように、ベクトル量子化部５からの線形予測係数αp’をタップ係数とするとともに、演算器１４から供給される残差信号ｅを入力信号として、式（４）を演算し、音声信号（合成音信号）ｓｓを求める。
【００１６】
なお、音声合成フィルタ６では、ＬＰＣ分析部４によるＬＰＣ分析の結果得られる線形予測係数αpではなく、そのベクトル量子化の結果得られるコードに対応するコードベクトルとしての線形予測係数αp’が用いられるため、音声合成フィルタ６が出力する合成音信号は、Ａ／Ｄ変換部２が出力する音声信号とは、基本的に同一にはならない。
【００１７】
音声合成フィルタ６が出力する合成音信号ｓｓは、演算器３に供給される。演算器３は、音声合成フィルタ６からの合成音信号ｓｓから、Ａ／Ｄ変換部２が出力する音声信号ｓを減算し、その減算値を、自乗誤差演算部７に供給する。自乗誤差演算部７は、演算器３からの減算値の自乗和（第ｋフレームのサンプル値についての自乗和）を演算し、その結果得られる自乗誤差を、自乗誤差最小判定部８に供給する。
【００１８】
自乗誤差最小判定部８は、自乗誤差演算部７が出力する自乗誤差に対応付けて、ラグを表すコードとしてのＬコード(L_code)、ゲインを表すコードとしてのＧコード(G_code)、および符号語を表すコードとしてのＩコード(I_code)を記憶しており、自乗誤差演算部７が出力する自乗誤差に対応するＬコード、Ｇコード、およびＬコードを出力する。Ｌコードは、適応コードブック記憶部９に、Ｇコードは、ゲイン復号器１０に、Ｉコードは、励起コードブック記憶部１１に、それぞれ供給される。さらに、Ｌコード、Ｇコード、およびＩコードは、コード決定部１５にも供給される。
【００１９】
適応コードブック記憶部９は、例えば７ビットのＬコードと、所定の遅延時間（ラグ）とを対応付けた適応コードブックを記憶しており、演算器１４から供給される残差信号ｅを、自乗誤差最小判定部８から供給されるＬコードに対応付けられた遅延時間だけ遅延して、演算器１２に出力する。
【００２０】
ここで、適応コードブック記憶部９は、残差信号ｅを、Ｌコードに対応する時間だけ遅延して出力することから、その出力信号は、その遅延時間を周期とする周期信号に近い信号となる。この信号は、線形予測係数を用いた音声合成において、主として、有声音の合成音を生成するための駆動信号となる。
【００２１】
ゲイン復号器１０は、Ｇコードと、所定のゲインβおよびγとを対応付けたテーブルを記憶しており、自乗誤差最小判定部８から供給されるＧコードに対応付けられたゲインβおよびγを出力する。ゲインβとγは、演算器１２と１３に、それぞれ供給される。
【００２２】
励起コードブック記憶部１１は、例えば９ビットのＩコードと、所定の励起信号とを対応付けた励起コードブックを記憶しており、自乗誤差最小判定部８から供給されるＩコードに対応付けられた励起信号を、演算器１３に出力する。
【００２３】
ここで、励起コードブックに記憶されている励起信号は、例えば、ホワイトノイズ等に近い信号であり、線形予測係数を用いた音声合成において、主として、無声音の合成音を生成するための駆動信号となる。
【００２４】
演算器１２は、適応コードブック記憶部９の出力信号と、ゲイン復号器１０が出力するゲインβとを乗算し、その乗算値ｌを、演算器１４に供給する。演算器１３は、励起コードブック記憶部１１の出力信号と、ゲイン復号器１０が出力するゲインγとを乗算し、その乗算値ｎを、演算器１４に供給する。演算器１４は、演算器１２からの乗算値ｌと、演算器１３からの乗算値ｎとを加算し、その加算値を、残差信号ｅとして、音声合成フィルタ６に供給する。
【００２５】
音声合成フィルタ６では、以上のようにして、演算器１４から供給される残差信号ｅを入力信号が、ベクトル量子化部５から供給される線形予測係数αp’をタップ係数とするＩＩＲフィルタでフィルタリングされ、その結果得られる合成音信号が、演算器３に供給される。そして、演算器３および自乗誤差演算部７において、上述の場合と同様の処理が行われ、その結果得られる自乗誤差が、自乗誤差最小判定部８に供給される。
【００２６】
自乗誤差最小判定部８は、自乗誤差演算部７からの自乗誤差が最小（極小）になったかどうかを判定する。そして、自乗誤差最小判定部８は、自乗誤差が最小になっていないと判定した場合、上述のように、その自乗誤差に対応するＬコード、Ｇコード、およびＩコードを出力し、以下、同様の処理が繰り返される。
【００２７】
一方、自乗誤差最小判定部８は、自乗誤差が最小になったと判定した場合、確定信号を、コード決定部１５に出力する。コード決定部１５は、ベクトル量子化部５から供給されるＡコードをラッチするとともに、自乗誤差最小判定部８から供給されるＬコード、Ｇコード、およびＩコードを順次ラッチするようになっており、自乗誤差最小判定部８から確定信号を受信すると、そのときラッチしているＡコード、Ｌコード、Ｇコード、およびＩコードを、チャネルエンコーダ１６に供給する。チャネルエンコーダ１６は、コード決定部１５からのＡコード、Ｌコード、Ｇコード、およびＩコードを多重化し、コードデータとして出力する。このコードデータは、伝送路を介して送信される。
【００２８】
なお、以下では、説明を簡単にするため、Ａコード、Ｌコード、Ｇコード、およびＩコードは、フレームごとに求められるものとする。但し、例えば、１フレームを、４つのサブフレームに分割し、Ｌコード、Ｇコード、およびＩコードは、サブフレームごとに求めるようにすること等が可能である。
【００２９】
ここで、図１（後述する図２、図１１、および図１２においても同様）では、各変数に、[k]が付され、配列変数とされている。このkは、フレーム数を表すが、明細書中では、その記述は、適宜省略する。
【００３０】
次に、以上のようにして、他の携帯電話機の送信部から送信されてくるコードデータは、図２に示した受信部のチャネルデコーダ２１で受信される。チャネルデコーダ２１は、コードデータから、Ｌコード、Ｇコード、Ｉコード、Ａコードを分離し、それぞれを、適応コードブック記憶部２２、ゲイン復号器２３、励起コードブック記憶部２４、フィルタ係数復号器２５に供給する。
【００３１】
適応コードブック記憶部２２、ゲイン復号器２３、励起コードブック記憶部２４、演算器２６乃至２８は、図１の適応コードブック記憶部９、ゲイン復号器１０、励起コードブック記憶部１１、演算器１２乃至１４とそれぞれ同様に構成されるもので、図１で説明した場合と同様の処理が行われることにより、Ｌコード、Ｇコード、およびＩコードが、残差信号ｅに復号される。この残差信号ｅは、音声合成フィルタ２９に対して、入力信号として与えられる。
【００３２】
フィルタ係数復号器２５は、図１のベクトル量子化部５が記憶しているのと同一のコードブックを記憶しており、Ａコードを、線形予測係数αp’に復号し、音声合成フィルタ２９に供給する。
【００３３】
音声合成フィルタ２９は、図１の音声合成フィルタ６と同様に構成されており、フィルタ係数復号器２５からの線形予測係数αp’をタップ係数とするとともに、演算器２８から供給される残差信号ｅを入力信号として、式（４）を演算し、これにより、図１の自乗誤差最小判定部８において自乗誤差が最小と判定されたときの合成音信号を生成する。この合成音信号は、Ｄ／Ａ(Digital/Analog)変換部３０に供給される。Ｄ／Ａ変換部３０は、音声合成フィルタ２９からの合成音信号を、ディジタル信号からアナログ信号にＤ／Ａ変換し、スピーカ３１に供給して出力させる。
【００３４】
【発明が解決しようとする課題】
以上のように、携帯電話機の送信部では、受信部の音声合成フィルタ２９に与えられるフィルタデータとしての残差信号と線形予測係数がコード化されて送信されてくるため、受信部では、そのコードが、残差信号と線形予測係数に復号される。しかしながら、この復号された残差信号や線形予測係数（以下、適宜、それぞれを、復号残差信号または復号線形予測係数という）には、量子化誤差等の誤差が含まれるため、音声をＬＰＣ分析して得られる残差信号と線形予測係数には一致しない。
【００３５】
このため、受信部の音声合成フィルタ２９が出力する合成音信号は、歪みを有する、音質の劣化したものとなる。
【００３６】
本発明は、このような状況に鑑みてなされたものであり、高音質の合成音が得られるようにするものである。
【００３７】
【課題を解決するための手段】
本発明の音声処理装置は、量子化された所定のコードを分離、復号して線形予測係数と残差信号とを生成する復号手段と、復号手段により復号された線形予測係数をタップ係数とする音声合成フィルタを用いて、残差信号をフィルタリングし、合成音を生成する合成音生成手段と、予測値を求めようとしている高音質の音声を注目音声として、その注目音声を予測するのに用いる予測タップを、合成音生成手段により生成された合成音から抽出する予測タップ抽出手段と、注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、所定のコードから抽出するクラスタップ抽出手段と、クラスタップに基づいて、注目音声のクラスを求めるクラス分類を行うクラス分類手段と、学習を行うことにより求められた、クラスごとの所定のタップ係数のうち、注目音声のクラスに対応する所定のタップ係数と、予測タップ抽出手段により抽出された予測タップとを用いて、注目音声の予測値を求める予測手段とを備えることを特徴とする。
【００３８】
本発明の音声処理方法は、量子化された所定のコードを分離、復号して線形予測係数と残差信号とを生成する復号ステップと、復号ステップの処理により復号された線形予測係数をタップ係数とする音声合成フィルタを用いて、残差信号をフィルタリングし、合成音を生成する合成音生成ステップと、予測値を求めようとしている高音質の音声を注目音声として、その注目音声を予測するのに用いる予測タップを、合成音生成ステップの処理により生成された合成音から抽出する予測タップ抽出ステップと、注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、所定のコードから抽出するクラスタップ抽出ステップと、クラスタップに基づいて、注目音声のクラスを求めるクラス分類を行うクラス分類ステップと、学習を行うことにより求められた、クラスごとの所定のタップ係数のうち、注目音声のクラスに対応する所定のタップ係数と、予測タップ抽出ステップの処理により抽出された予測タップとを用いて、注目音声の予測値を求める予測ステップとを含むことを特徴とする。
【００３９】
本発明の第１のプログラムは、量子化された所定のコードを分離、復号して線形予測係数と残差信号とを生成する復号ステップと、復号ステップの処理により復号された線形予測係数をタップ係数とする音声合成フィルタを用いて、残差信号をフィルタリングし、合成音を生成する合成音生成ステップと、予測値を求めようとしている高音質の音声を注目音声として、その注目音声を予測するのに用いる予測タップを、合成音生成ステップの処理により生成された合成音から抽出する予測タップ抽出ステップと、注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、所定のコードから抽出するクラスタップ抽出ステップと、クラスタップに基づいて、注目音声のクラスを求めるクラス分類を行うクラス分類ステップと、学習を行うことにより求められた、クラスごとの所定のタップ係数のうち、注目音声のクラスに対応する所定のタップ係数と、予測タップ抽出ステップの処理により抽出された予測タップとを用いて、注目音声の予測値を求める予測ステップとを含むことを特徴とする。
【００４０】
本発明の第１の記録媒体は、量子化された所定のコードを分離、復号して線形予測係数と残差信号とを生成する復号ステップと、復号ステップの処理により復号された線形予測係数をタップ係数とする音声合成フィルタを用いて、残差信号をフィルタリングし、合成音を生成する合成音生成ステップと、予測値を求めようとしている高音質の音声を注目音声として、その注目音声を予測するのに用いる予測タップを、合成音生成ステップの処理により生成された合成音から抽出する予測タップ抽出ステップと、注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、所定のコードから抽出するクラスタップ抽出ステップと、クラスタップに基づいて、注目音声のクラスを求めるクラス分類を行うクラス分類ステップと、学習を行うことにより求められた、クラスごとの所定のタップ係数のうち、注目音声のクラスに対応する所定のタップ係数と、予測タップ抽出ステップの処理により抽出された予測タップとを用いて、注目音声の予測値を求める予測ステップとを実行するプログラムが記録されていることを特徴とする。
【００４１】
本発明の学習装置は、学習用音声信号から第２の線形予測係数を求める線形予測係数算出手段と、学習用音声信号と第２の線形予測係数から第２の残差信号を求める残差信号算出手段と、第２の線形予測係数を要素とするコードベクトルとコードとを対応付けた第１のコードブックに基づいて、第２の線形予測係数で構成される特徴ベクトルをベクトル量子化し、第１のコードを生成する第１の量子化手段と、第１のコードを復号し、第１の線形予測係数を生成する第１の復号手段と、第２の残差信号を要素とするコードベクトルとコードとを対応付けた第２のコードブックに基づいて、第２の残差信号のサンプル値で構成される残差ベクトルをベクトル量子化し、第２のコードを生成する第２の量子化手段と、第２のコードを復号し、第１の残差信号を生成する第２の復号手段と、第１の線形予測係数をタップ係数とする音声合成フィルタを用いて、第１の残差信号をフィルタリングし、合成音を生成する合成音生成手段と、予測値を求めようとしている高音質の音声を注目音声として、その注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、第１のコードおよび第２のコードから抽出するクラスタップ抽出手段と、クラスタップに基づいて、注目音声のクラスを求めるクラス分類を行うクラス分類手段と、所定のタップ係数および合成音を用いて予測演算を行うことにより得られる高音質の音声の予測値の予測誤差が統計的に最小になるように、学習を行い、クラスごとの所定のタップ係数を求める学習手段とを備えることを特徴とする。
【００４２】
本発明の学習方法は、学習用音声信号から第２の線形予測係数を求める線形予測係数算出ステップと、学習用音声信号と第２の線形予測係数から第２の残差信号を求める残差信号算出ステップと、第２の線形予測係数を要素とするコードベクトルとコードとを対応付けた第１のコードブックに基づいて、第２の線形予測係数で構成される特徴ベクトルをベクトル量子化し、第１のコードを生成する第１の量子化ステップと、第１のコードを復号し、第１の線形予測係数を生成する第１の復号ステップと、第２の残差信号を要素とするコードベクトルとコードとを対応付けた第２のコードブックに基づいて、第２の残差信号のサンプル値で構成される残差ベクトルをベクトル量子化し、第２のコードを生成する第２の量子化ステップと、第２のコードを復号し、第１の残差信号を生成する第２の復号ステップと、第１の線形予測係数をタップ係数とする音声合成フィルタを用いて、第１の残差信号をフィルタリングし、合成音を生成する合成音生成ステップと、予測値を求めようとしている高音質の音声を注目音声として、その注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、第１のコードおよび第２のコードから抽出するクラスタップ抽出ステップと、クラスタップに基づいて、注目音声のクラスを求めるクラス分類を行うクラス分類ステップと、所定のタップ係数および合成音を用いて予測演算を行うことにより得られる高音質の音声の予測値の予測誤差が統計的に最小になるように、学習を行い、クラスごとの所定のタップ係数を求める学習ステップとを含むことを特徴とする。
【００４３】
本発明の第２のプログラムは、学習用音声信号から第２の線形予測係数を求める線形予測係数算出ステップと、学習用音声信号と第２の線形予測係数から第２の残差信号を求める残差信号算出ステップと、第２の線形予測係数を要素とするコードベクトルとコードとを対応付けた第１のコードブックに基づいて、第２の線形予測係数で構成される特徴ベクトルをベクトル量子化し、第１のコードを生成する第１の量子化ステップと、第１のコードを復号し、第１の線形予測係数を生成する第１の復号ステップと、第２の残差信号を要素とするコードベクトルとコードとを対応付けた第２のコードブックに基づいて、第２の残差信号のサンプル値で構成される残差ベクトルをベクトル量子化し、第２のコードを生成する第２の量子化ステップと、第２のコードを復号し、第１の残差信号を生成する第２の復号ステップと、第１の線形予測係数をタップ係数とする音声合成フィルタを用いて、第１の残差信号をフィルタリングし、合成音を生成する合成音生成ステップと、予測値を求めようとしている高音質の音声を注目音声として、その注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、第１のコードおよび第２のコードから抽出するクラスタップ抽出ステップと、クラスタップに基づいて、注目音声のクラスを求めるクラス分類を行うクラス分類ステップと、所定のタップ係数および合成音を用いて予測演算を行うことにより得られる高音質の音声の予測値の予測誤差が統計的に最小になるように、学習を行い、クラスごとの所定のタップ係数を求める学習ステップとを含むことを特徴とする。
【００４４】
本発明の第２の記録媒体は、学習用音声信号から第２の線形予測係数を求める線形予測係数算出ステップと、学習用音声信号と第２の線形予測係数から第２の残差信号を求める残差信号算出ステップと、第２の線形予測係数を要素とするコードベクトルとコードとを対応付けた第１のコードブックに基づいて、第２の線形予測係数で構成される特徴ベクトルをベクトル量子化し、第１のコードを生成する第１の量子化ステップと、第１のコードを復号し、第１の線形予測係数を生成する第１の復号ステップと、第２の残差信号を要素とするコードベクトルとコードとを対応付けた第２のコードブックに基づいて、第２の残差信号のサンプル値で構成される残差ベクトルをベクトル量子化し、第２のコードを生成する第２の量子化ステップと、第２のコードを復号し、第１の残差信号を生成する第２の復号ステップと、第１の線形予測係数をタップ係数とする音声合成フィルタを用いて、第１の残差信号をフィルタリングし、合成音を生成する合成音生成ステップと、予測値を求めようとしている高音質の音声を注目音声として、その注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップを、第１のコードおよび第２のコードから抽出するクラスタップ抽出ステップと、クラスタップに基づいて、注目音声のクラスを求めるクラス分類を行うクラス分類ステップと、所定のタップ係数および合成音を用いて予測演算を行うことにより得られる高音質の音声の予測値の予測誤差が統計的に最小になるように、学習を行い、クラスごとの所定のタップ係数を求める学習ステップとを事項するプログラムが記録されていることを特徴とする。
【００４５】
本発明の音声処理装置および音声処理方法、並びに第１のプログラムおよび第１の記録媒体においては、量子化された所定のコードが分離、復号されて線形予測係数と残差信号とが生成され、復号された線形予測係数をタップ係数とする音声合成フィルタを用いて、残差信号がフィルタリングされ、合成音が生成される。予測値を求めようとしている高音質の音声を注目音声として、その注目音声を予測するのに用いる予測タップが、生成された合成音から抽出されるとともに、注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップが、所定のコードから抽出される。そして、クラスタップに基づいて、注目音声のクラスを求めるクラス分類が行われ、予測タップと、注目音声のクラスに対応する所定のタップ係数を用いて、注目音声の予測値が求められる。
【００４６】
本発明の学習装置および学習方法、並びに第２のプログラムおよび第２の記録媒体においては、学習用音声信号から第２の線形予測係数が求められ、学習用音声信号と第２の線形予測係数から第２の残差信号が求められる。第２の線形予測係数を要素とするコードベクトルとコードとを対応付けた第１のコードブックに基づいて、第２の線形予測係数で構成される特徴ベクトルがベクトル量子化され、第１のコードが生成され、第１のコードが復号され、第１の線形予測係数が生成される。また、第２の残差信号を要素とするコードベクトルとコードとを対応付けた第２のコードブックに基づいて、第２の残差信号のサンプル値で構成される残差ベクトルがベクトル量子化され、第２のコードが生成され、第２のコードが復号され、第１の残差信号が生成される。そして、第１の線形予測係数をタップ係数とする音声合成フィルタを用いて、第１の残差信号をフィルタリングし、合成音が生成される。予測値を求めようとしている高音質の音声を注目音声として、その注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップが、第１のコードおよび第２のコードから抽出され、そのクラスタップに基づいて、注目音声のクラスを求めるクラス分類が行われる。そして、所定のタップ係数および合成音を用いて予測演算を行うことにより得られる高音質の音声の予測値の予測誤差が統計的に最小になるように、学習が行われ、クラスごとの所定のタップ係数が求められる。
【００４７】
【発明の実施の形態】
図３は、本発明を適用した音声合成装置の一実施の形態の構成例を示している。
【００４８】
この音声合成装置には、音声合成フィルタ４４に与える残差信号と線形予測係数を、それぞれベクトル量子化等によってコード化した残差コードとＡコードが多重化されたコードデータが供給されるようになっており、その残差コードとＡコードから、それぞれ残差信号と線形予測係数を復号し、音声合成フィルタ４４に与えることで、合成音が生成されるようになっている。さらに、この音声合成装置では、音声合成フィルタ４４で生成された合成音と、学習により求めたタップ係数を用いた予測演算を行うことにより、その合成音の音質を向上させた高音質の音声（合成音）を求めて出力するようになっている。
【００４９】
即ち、図３の音声合成装置では、例えば、クラス分類適応処理を利用して、合成音が、真の高音質の音声（の予測値）に復号される。
【００５０】
クラス分類適応処理は、クラス分類処理と適応処理とからなり、クラス分類処理によって、データを、その性質に基づいてクラス分けし、各クラスごとに適応処理を施すものであり、適応処理は、以下のような手法のものである。
【００５１】
即ち、適応処理では、例えば、合成音と、所定のタップ係数との線形結合により、真の高音質の音声の予測値が求められる。
【００５２】
具体的には、例えば、いま、真の高音質の音声（のサンプル値）を教師データとするとともに、その真の高音質の音声を、ＣＥＬＰ方式によって、Ｌコード、Ｇコード、Ｉコード、およびＡコードに符号化し、それらのコードを、図２に示した受信部で復号することにより得られる合成音を生徒データとして、教師データである高音質の音声ｙの予測値Ｅ［ｙ］を、幾つかの合成音（のサンプル値）ｘ1，ｘ2，・・・の集合と、所定のタップ係数ｗ1，ｗ2，・・・の線形結合により規定される線形１次結合モデルにより求めることを考える。この場合、予測値Ｅ［ｙ］は、次式で表すことができる。
【００５３】
0004736266.tif 000002
【００５４】
式（６）を一般化するために、タップ係数ｗjの集合でなる行列Ｗ、生徒データｘijの集合でなる行列Ｘ、および予測値Ｅ［ｙj］の集合でなる行列Ｙ’を、
【数１】
0004736266.tif 000003
で定義すると、次のような観測方程式が成立する。
【００５５】
ＸＷ＝Ｙ’・・・（７）
ここで、行列Ｘの成分ｘijは、ｉ件目の生徒データの集合（ｉ件目の教師データｙiの予測に用いる生徒データの集合）の中のｊ番目の生徒データを意味し、行列Ｗの成分ｗjは、生徒データの集合の中のｊ番目の生徒データとの積が演算されるタップ係数を表す。また、ｙiは、ｉ件目の教師データを表し、従って、Ｅ［ｙi］は、ｉ件目の教師データの予測値を表す。なお、式（６）の左辺におけるｙは、行列Ｙの成分ｙiのサフィックスｉを省略したものであり、また、式（６）の右辺におけるｘ1，ｘ2，・・・も、行列Ｘの成分ｘijのサフィックスｉを省略したものである。
【００５６】
そして、この観測方程式に最小自乗法を適用して、真の高音質の音声ｙに近い予測値Ｅ［ｙ］を求めることを考える。この場合、教師データとなる真の高音質の音声ｙの集合でなる行列Ｙ、および高音質の音声ｙに対する予測値Ｅ［ｙ］の残差ｅの集合でなる行列Ｅを、
【数２】
0004736266.tif 000004
で定義すると、式（７）から、次のような残差方程式が成立する。
【００５７】
ＸＷ＝Ｙ＋Ｅ・・・（８）
【００５８】
この場合、真の高音質の音声ｙに近い予測値Ｅ［ｙ］を求めるためのタップ係数ｗjは、自乗誤差
【数３】
0004736266.tif 000005
を最小にすることで求めることができる。
【００５９】
従って、上述の自乗誤差をタップ係数ｗjで微分したものが０になる場合、即ち、次式を満たすタップ係数ｗjが、真の高音質の音声ｙに近い予測値Ｅ［ｙ］を求めるため最適値ということになる。
【００６０】
【数４】
0004736266.tif 000006
・・・（９）
【００６１】
そこで、まず、式（８）を、タップ係数ｗjで微分することにより、次式が成立する。
【００６２】
【数５】
0004736266.tif 000007
・・・（１０）
【００６３】
式（９）および（１０）より、式（１１）が得られる。
【００６４】
【数６】
0004736266.tif 000008
・・・（１１）
【００６５】
さらに、式（８）の残差方程式における生徒データｘij、タップ係数ｗj、教師データｙi、および誤差ｅiの関係を考慮すると、式（１１）から、次のような正規方程式を得ることができる。
【００６６】
【数７】
0004736266.tif 000009
・・・（１２）
【００６７】
なお、式（１２）に示した正規方程式は、行列（共分散行列）Ａおよびベクトルｖを、
【数８】
0004736266.tif 000010
で定義するとともに、ベクトルＷを、数１で示したように定義すると、式
ＡＷ＝ｖ・・・（１３）
で表すことができる。
【００６８】
式（１２）における各正規方程式は、生徒データｘijおよび教師データｙiのセットを、ある程度の数だけ用意することで、求めるべきタップ係数ｗjの数Ｊと同じ数だけたてることができ、従って、式（１３）を、ベクトルＷについて解くことで（但し、式（１３）を解くには、式（１３）における行列Ａが正則である必要がある）、最適なタップ係数（ここでは、自乗誤差を最小にするタップ係数）ｗjを求めることができる。なお、式（１３）を解くにあたっては、例えば、掃き出し法（Gauss-Jordanの消去法）などを用いることが可能である。
【００６９】
以上のようにして、最適なタップ係数ｗjを求めておき、さらに、そのタップ係数ｗjを用い、式（６）により、真の高音質の音声ｙに近い予測値Ｅ［ｙ］を求めるのが適応処理である。
【００７０】
なお、例えば、教師データとして、高いサンプリング周波数でサンプリングした音声信号、または多ビットを割り当てた音声信号を用いるとともに、生徒データとして、その教師データとしての音声信号を間引いたり、低ビットで再量子化した音声信号をＣＥＬＰ方式により符号化し、その符号化結果を復号して得られる合成音を用いた場合、タップ係数としては、高いサンプリング周波数でサンプリングした音声信号、または多ビットを割り当てた音声信号を生成するのに、予測誤差が、統計的に最小となる高音質の音声が得られることになる。従って、この場合、より高音質の合成音を得ることが可能となる。
【００７１】
図３の音声合成装置では、以上のようなクラス分類適応処理により、Ａコードと残差コードでなるコードデータを、高音質の音声に復号するようになっている。
【００７２】
即ち、デマルチプレクサ（ＤＥＭＵＸ）４１には、コードデータが供給されるようになっており、デマルチプレクサ４１は、そこに供給されるコードデータから、フレームごとのＡコードと残差コードを分離する。そして、デマルチプレクサは、Ａコードを、フィルタ係数復号器４２およびタップ生成部４６に供給し、残差コードを、残差コードブック記憶部４３およびタップ生成部４６に供給する。
【００７３】
ここで、図３におけるコードデータに含まれるＡコードと残差コードは、音声をＬＰＣ分析して得られる線形予測係数と残差信号を、所定のコードブックを用いて、それぞれベクトル量子化することにより得られるコードとなっている。
【００７４】
フィルタ係数復号器４２は、デマルチプレクサ４１から供給されるフレームごとのＡコードを、そのＡコードを得るときに用いられたのと同一のコードブックに基づいて、線形予測係数に復号し、音声合成フィルタ４４に供給する。
【００７５】
残差コードブック記憶部４３は、デマルチプレクサ４１から供給されるフレームごとの残差コードを、その残差コードを得るときに用いられたのと同一のコードブックに基づいて、残差信号に復号し、音声合成フィルタ４４に供給する。
【００７６】
音声合成フィルタ４４は、例えば、図１の音声合成フィルタ２９と同様に、ＩＩＲ型のディジタルフィルタで、フィルタ係数復号器４２からの線形予測係数をＩＩＲフィルタのタップ係数とするとともに、残差コードブック記憶部４３からの残差信号を入力信号として、その入力信号のフィルタリングを行うことにより、合成音を生成し、タップ生成部４５に供給する。
【００７７】
タップ生成部４５は、音声合成フィルタ４４から供給される合成音（のサンプル値）から、後述する予測部４９における予測演算に用いられる予測タップとなるものを抽出する。即ち、タップ生成部４５は、例えば、高音質の音声の予測値を求めようとしているフレームである注目フレームの合成音のサンプル値すべてを、予測タップとする。そして、タップ生成部４５は、予測タップを、予測部４９に供給する。
【００７８】
タップ生成部４６は、デマルチプレクサ４１から供給されるフレーム（またはサブフレーム）ごとのＡコードおよび残差コードから、クラスタップとなるものを抽出する。即ち、タップ生成部４６は、例えば、注目フレームのＡコードおよび残差コードすべてを、クラスタップとする。そして、タップ生成部４６は、クラスタップを、クラス分類部４７に供給する。
【００７９】
ここで、予測タップやクラスタップの構成パターンは、上述したパターンのものに限定されるものではない。
【００８０】
なお、タップ生成部４６では、Ａコードや残差コードの他、フィルタ係数復号器４２が出力する線形予測係数や、残差コードブック記憶部４３が出力する残差信号、さらには、音声合成フィルタ４４が出力する合成音等の中からも、クラスタップを抽出するようにすることができる。
【００８１】
クラス分類部４７は、タップ生成部４６からのクラスタップに基づき、注目している注目フレームの音声（のサンプル値）をクラス分類し、その結果得られるクラスに対応するクラスコードを、係数メモリ４８に出力する。
【００８２】
ここで、クラス分類部４７には、例えば、クラスタップとしての注目フレームのＡコードおよび残差コードを構成するビットの系列そのものを、クラスコードとして出力させることが可能である。
【００８３】
係数メモリ４８は、後述する図６の学習装置において学習処理が行われることにより得られる、クラスごとのタップ係数を記憶しており、クラス分類部４７が出力するクラスコードに対応するアドレスに記憶されているタップ係数を、予測部４９に出力する。
【００８４】
ここで、各フレームについて、Ｎサンプルの高音質の音声が求められるとすると、注目フレームについて、Ｎサンプルの音声を、式（６）の予測演算によって求めるには、Ｎセットのタップ係数が必要である。従って、この場合は、係数メモリ４８には、１つのクラスコードに対応するアドレスに対して、Ｎセットのタップ係数が記憶されている。
【００８５】
予測部４９は、タップ生成部４５が出力する予測タップと、係数メモリ４８が出力するタップ係数とを取得し、その予測タップとタップ係数とを用いて、式（６）に示した線形予測演算（積和演算）を行い、注目フレームの高音質の音声（の予測値）を求めて、Ｄ／Ａ変換部５０に出力する。
【００８６】
ここで、係数メモリ４８は、上述したように、注目フレームの音声のＮサンプルそれぞれを求めるためのＮセットのタップ係数を出力するが、予測部４９は、各サンプル値について、予測タップと、そのサンプル値に対応するタップ係数のセットとを用い、式（６）の積和演算を行う。
【００８７】
Ｄ／Ａ変換部５０は、予測部４９からの音声（の予測値）を、ディジタル信号からアナログ信号にＤ／Ａ変換し、スピーカ５１に供給して出力させる。
【００８８】
次に、図４は、図３の音声合成フィルタ４４の構成例を示している。
【００８９】
図４において、音声合成フィルタ４４は、Ｐ次の線形予測係数を用いるものとなっており、従って、１つの加算器６１、Ｐ個の遅延回路（Ｄ）６２1乃至６２P、およびＰ個の乗算器６３1乃至６３Pから構成されている。
【００９０】
乗算器６３1乃至６３Pには、それぞれ、フィルタ係数復号器４２から供給されるＰ次の線形予測係数α1，α2，・・・，αPがセットされ、これにより、音声合成フィルタ４４では、式（４）にしたがって演算が行われ、合成音が生成される。
【００９１】
即ち、残差コードブック記憶部４３が出力する残差信号ｅは、加算器６１を介して、遅延回路６２１に供給され、遅延回路６２pは、そこへの入力信号を、残差信号の１サンプル分だけ遅延して、後段の遅延回路６２p+1に出力するとともに、演算器６３pに出力する。乗算器６３pは、遅延回路６２pの出力と、そこにセットされた線形予測係数αpとを乗算し、その乗算値を、加算器６１に出力する。
【００９２】
加算器６１は、乗算器６３1乃至６３Pの出力すべてと、残差信号ｅとを加算し、その加算結果を、遅延回路６２１に供給する他、音声合成結果（合成音）として出力する。
【００９３】
次に、図５のフローチャートを参照して、図３の音声合成装置の処理（音声合成処理）について説明する。
【００９４】
デマルチプレクサ４１は、そこに供給されるコードデータから、フレームごとのＡコードと残差コードを順次分離し、それぞれを、フィルタ係数復号器４２と残差コードブック記憶部４３に供給する。さらに、デマルチプレクサ４１は、Ａコードおよび残差コードを、タップ生成部４６に供給する。
【００９５】
フィルタ係数復号器４２は、デマルチプレクサ４１から供給されるフレームごとのＡコードを、線形予測係数に順次復号し、音声合成フィルタ４４に供給する。また、残差コードブック記憶部４３は、デマルチプレクサ４１から供給されるフレームごとの残差コードを、残差信号に順次復号し、音声合成フィルタ４４に供給する。
【００９６】
音声合成フィルタ４４では、そこに供給される残差信号および線形予測係数を用いて、式（４）の演算が行われることにより、注目フレームの合成音が生成される。この合成音は、タップ生成部４５に供給される。
【００９７】
タップ生成部４５は、そこに供給される合成音のフレームを、順次、注目フレームとし、ステップＳ１において、音声合成フィルタ４４から供給される合成音（のサンプル値）から、予測タップを生成し、予測部４９に出力する。さらに、ステップＳ１では、タップ生成部４６が、デマルチプレクサ４１から供給されるＡコードおよび残差コードから、クラスタップを生成し、クラス分類部４７に出力する。
【００９８】
そして、ステップＳ２に進み、クラス分類部４７は、タップ生成部４６から供給されるクラスタップに基づいて、クラス分類を行い、その結果得られるクラスコードを、係数メモリ４８に供給して、ステップＳ３に進む。
【００９９】
ステップＳ３では、係数メモリ４８は、クラス分類部４７から供給されるクラスコードに対応するアドレスから、タップ係数を読み出し、予測部４９に供給する。
【０１００】
そして、ステップＳ４に進み、予測部４９は、係数メモリ４８が出力するタップ係数を取得し、そのタップ係数と、タップ生成部４５からの予測タップとを用いて、式（６）に示した積和演算を行い、注目フレームの高音質の音声（の予測値）を得る。この高音質の音声は、予測部４９からＤ／Ａ変換部５０を介して、スピーカ５１に供給されて出力される。
【０１０１】
予測部４９において、注目フレームの高音質の音声が得られた後は、ステップＳ５に進み、まだ、注目フレームとして処理すべきフレームがあるかどうかが判定される。ステップＳ５において、まだ、注目フレームとして処理すべきフレームがあると判定された場合、ステップＳ１に戻り、次に注目フレームとすべきフレームを、新たに注目フレームとして、以下、同様の処理を繰り返す。また、ステップＳ５において、注目フレームとして処理すべきフレームがないと判定された場合、音声合成処理を終了する。
【０１０２】
次に、図６は、図３の係数メモリ４８に記憶させるタップ係数の学習処理を行う学習装置の一実施の形態の構成例を示している。
【０１０３】
学習装置には、学習用のディジタル音声信号が、所定のフレーム単位で供給されるようになっており、この学習用のディジタル音声信号は、ＬＰＣ分析部７１および予測フィルタ７４に供給される。さらに、学習用のディジタル音声信号は、教師データとして、正規方程式加算回路８１にも供給される。
【０１０４】
ＬＰＣ分析部７１は、そこに供給される音声信号のフレームを、順次、注目フレームとし、その注目フレームの音声信号をＬＰＣ分析することで、Ｐ次の線形予測係数を求め、ベクトル量子化部７２および予測フィルタ７４に供給する。
【０１０５】
ベクトル量子化部７２は、線形予測係数を要素とするコードベクトルとコードとを対応付けたコードブックを記憶しており、そのコードブックに基づいて、ＬＰＣ分析部７１からの注目フレームの線形予測係数で構成される特徴ベクトルをベクトル量子化し、そのベクトル量子化の結果得られるＡコードを、フィルタ係数復号器７３およびタップ生成部７９に供給する。
【０１０６】
フィルタ係数復号器７３は、ベクトル量子化部７２が記憶しているのと同一のコードブックを記憶しており、そのコードブックに基づいて、ベクトル量子化部７２からのＡコードを、線形予測係数に復号し、音声合成フィルタ７７に供給する。ここで、図３のフィルタ係数復号器４２は、図６のフィルタ係数復号器７３と同様に構成されている。
【０１０７】
予測フィルタ７４は、そこに供給される注目フレームの音声信号と、LPC分析部７１からの線形予測係数を用いて、例えば、式（１）にしたがった演算を行うことにより、注目フレームの残差信号を求め、ベクトル量子化部７５に供給する。
【０１０８】
即ち、式（１）におけるｓnとｅnのＺ変換を、ＳとＥとそれぞれ表すと、式（１）は、次式のように表すことができる。
【０１０９】
Ｅ＝（１＋α1ｚ-1＋α2ｚ-2＋・・・＋αPｚ-P）Ｓ・・・（１４）
【０１１０】
式（１４）から、残差信号ｅを求める予測フィルタ７４は、ＦＩＲ(Finite Impulse Response)型のディジタルフィルタで構成することができる。
【０１１１】
即ち、図７は、予測フィルタ７４の構成例を示している。
【０１１２】
予測フィルタ７４には、ＬＰＣ分析部７１から、Ｐ次の線形予測係数が供給されるようになっており、従って、予測フィルタ７４は、Ｐ個の遅延回路（Ｄ）９１1乃至９１P、Ｐ個の乗算器９２1乃至９２P、および１つの加算器９３から構成されている。
【０１１３】
乗算器９２1乃至９２Pには、それぞれ、ＬＰＣ分析部７１から供給されるＰ次の線形予測係数α1，α2，・・・，αPがセットされる。
【０１１４】
一方、注目フレームの音声信号ｓは、遅延回路９１1と加算器９３に供給される。遅延回路９１pは、そこへの入力信号を、残差信号の１サンプル分だけ遅延して、後段の遅延回路９１p+1に出力するとともに、演算器９２pに出力する。乗算器９２pは、遅延回路９１pの出力と、そこにセットされた線形予測係数αpとを乗算し、その乗算値を、加算器９３に出力する。
【０１１５】
加算器９３は、乗算器９２1乃至９２Pの出力すべてと、音声信号ｓとを加算し、その加算結果を、残差信号ｅとして出力する。
【０１１６】
図６に戻り、ベクトル量子化部７５は、残差信号のサンプル値を要素とするコードベクトルとコードとを対応付けたコードブックを記憶しており、そのコードブックに基づいて、予測フィルタ７４からの注目フレームの残差信号のサンプル値で構成される残差ベクトルをベクトル量子化し、そのベクトル量子化の結果得られる残差コードを、残差コードブック記憶部７６およびタップ生成部７９に供給する。
【０１１７】
残差コードブック記憶部７６は、ベクトル量子化部７５が記憶しているのと同一のコードブックを記憶しており、そのコードブックに基づいて、ベクトル量子化部７５からの残差コードを、残差信号に復号し、音声合成フィルタ７７に供給する。ここで、図３の残差コードブック記憶部４３は、図６の残差コードブック記憶部７６と同様に構成されている。
【０１１８】
音声合成フィルタ７７は、図３の音声合成フィルタ４４と同様に構成されるＩＩＲフィルタで、フィルタ係数復号器７３からの線形予測係数をＩＩＲフィルタのタップ係数とするとともに、残差コードブック記憶部７５からの残差信号を入力信号として、その入力信号のフィルタリングを行うことにより、合成音を生成し、タップ生成部７８に供給する。
【０１１９】
タップ生成部７８は、図３のタップ生成部４５における場合と同様に、音声合成フィルタ７７から供給される合成音から、予測タップを構成し、正規方程式加算回路８１に供給する。タップ生成部７９は、図３のタップ生成部４６における場合と同様に、ベクトル量子化部７２と７５からそれぞれ供給されるＡコードと残差コードから、クラスタップを構成し、クラス分類部８０に供給する。
【０１２０】
クラス分類部８０は、図３のクラス分類部４７における場合と同様に、そこに供給されるクラスタップに基づいて、クラス分類を行い、その結果得られるクラスコードを、正規方程式加算回路８１に供給する。
【０１２１】
正規方程式加算回路８１は、教師データとしての注目フレームの高音質の音声である学習用の音声と、タップ生成部７８からの生徒データとしての予測タップ（を構成する音声合成フィルタ７７の合成音出力）を対象とした足し込みを行う。
【０１２２】
即ち、正規方程式加算回路８１は、クラス分類部８０から供給されるクラスコードに対応するクラスごとに、予測タップ（生徒データ）を用い、式（１３）の行列Ａにおける各コンポーネントとなっている、生徒データどうしの乗算（ｘinｘim）と、サメーション（Σ）に相当する演算を行う。
【０１２３】
さらに、正規方程式加算回路８１は、やはり、クラス分類部８０から供給されるクラスコードに対応するクラスごとに、生徒データ（予測タップを構成する、音声合成フィルタ７７から出力される合成音のサンプル値）および教師データ（注目フレームの高音質の音声のサンプル値）を用い、式（１３）のベクトルｖにおける各コンポーネントとなっている、生徒データと教師データの乗算（ｘinｙi）と、サメーション（Σ）に相当する演算を行う。
【０１２４】
正規方程式加算回路８１は、以上の足し込みを、そこに供給される学習用の音声のフレームすべてを注目フレームとして行い、これにより、各クラスについて、式（１３）に示した正規方程式をたてる。
【０１２５】
タップ係数決定回路８２は、正規方程式加算回路８１においてクラスごとに生成された正規方程式を解くことにより、クラスごとに、タップ係数を求め、係数メモリ８３の、各クラスに対応するアドレスに供給する。
【０１２６】
なお、学習用の音声信号として用意した音声信号によっては、正規方程式加算回路８１において、タップ係数を求めるのに必要な数の正規方程式が得られないクラスが生じる場合があり得るが、タップ係数決定回路８２は、そのようなクラスについては、例えば、デフォルトのタップ係数を出力する。
【０１２７】
係数メモリ８３は、タップ係数決定回路８２から供給されるクラスごとのタップ係数を、そのクラスに対応するアドレスに記憶する。
【０１２８】
次に、図８のフローチャートを参照して、図６の学習装置の処理（学習処理）について説明する。
【０１２９】
学習装置には、学習用の音声信号が供給され、この学習用の音声信号は、ＬＰＣ分析部７１および予測フィルタ７４に供給されるとともに、教師データとして、正規方程式加算回路８１に供給される。そして、ステップＳ１１において、学習用の音声信号から、生徒データが生成される。
【０１３０】
即ち、ＬＰＣ分析部７１は、学習用の音声信号のフレームを、順次、注目フレームとし、その注目フレームの音声信号をＬＰＣ分析することで、Ｐ次の線形予測係数を求め、ベクトル量子化部７２に供給する。ベクトル量子化部７２は、ＬＰＣ分析部７１からの注目フレームの線形予測係数で構成される特徴ベクトルをベクトル量子化し、そのベクトル量子化の結果得られるＡコードを、フィルタ係数復号器７３およびタップ生成部７９に供給する。フィルタ係数復号器７３は、ベクトル量子化部７２からのＡコードを、線形予測係数に復号し、その線形予測係数を、音声合成フィルタ７７に供給する。
【０１３１】
一方、ＬＰＣ分析部７１から注目フレームの線形予測係数を受信した予測フィルタ７４は、その線形予測係数と、注目フレームの学習用の音声信号とを用いて、式（１）にしたがった演算を行うことにより、注目フレームの残差信号を求め、ベクトル量子化部７５に供給する。ベクトル量子化部７５は、予測フィルタ７４からの注目フレームの残差信号のサンプル値で構成される残差ベクトルをベクトル量子化し、そのベクトル量子化の結果得られる残差コードを、残差コードブック記憶部７６およびタップ生成部７９に供給する。残差コードブック記憶部７６は、ベクトル量子化部７５からの残差コードを、残差信号に復号し、音声合成フィルタ７７に供給する。
【０１３２】
以上のようにして、音声合成フィルタ７７は、線形予測係数と残差信号を受信すると、その線形予測係数と残差信号を用いて音声合成を行い、その結果得られる合成音を、生徒データとして、タップ生成部７８に出力する。
【０１３３】
そして、ステップＳ１２に進み、タップ生成部７８が、音声合成フィルタ７７から供給される合成音から、予測タップを生成するとともに、タップ生成部７９が、ベクトル量子化部７２からのＡコードと、ベクトル量子化部７５からの残差コードから、クラスタップを生成する。予測タップは、正規方程式加算回路８１に供給され、クラスタップは、クラス分類部８０に供給される。
【０１３４】
その後、ステップＳ１３において、クラス分類部８０が、タップ生成部７９からのクラスタップに基づいて、クラス分類を行い、その結果得られるクラスコードを、正規方程式加算回路８１に供給する。
【０１３５】
そして、ステップＳ１４に進み、正規方程式加算回路８１は、クラス分類部８０から供給されるクラスについて、そこに供給される教師データとしての注目フレームの高音質の音声のサンプル値、およびタップ生成部７８からの生徒データとしての予測タップ（を構成する合成音のサンプル値）を対象とした、式（１３）の行列Ａとベクトルｖの、上述したような足し込みを行い、ステップＳ１５に進む。
【０１３６】
ステップＳ１５では、まだ、注目フレームとして処理すべきフレームの学習用の音声信号があるかどうかが判定される。ステップＳ１５において、まだ、注目フレームとして処理すべきフレームの学習用の音声信号があると判定された場合、ステップＳ１１に戻り、次のフレームを新たに注目フレームとして、以下、同様の処理が繰り返される。
【０１３７】
また、ステップＳ１５において、注目フレームとして処理すべきフレームの学習用の音声信号がないと判定された場合、即ち、正規方程式加算回路８１において、各クラスについて、正規方程式が得られた場合、ステップＳ１６に進み、タップ係数決定回路８２は、各クラスごとに生成された正規方程式を解くことにより、各クラスごとに、タップ係数を求め、係数メモリ８３の、各クラスに対応するアドレスに供給して記憶させ、処理を終了する。
【０１３８】
以上のようにして、係数メモリ８３に記憶された各クラスごとのタップ係数が、図３の係数メモリ４８に記憶されている。
【０１３９】
従って、図３の係数メモリ４８に記憶されたタップ係数は、線形予測演算を行うことにより得られる高音質の音声の予測値の予測誤差（ここでは、自乗誤差）が、統計的に最小になるように学習を行うことにより求められたものであるから、図３の予測部４９が出力する音声は、音声合成フィルタ４４で生成された合成音の歪みが低減（解消）された、高音質のものとなる。
【０１４０】
なお、図３の音声合成装置において、上述したように、例えば、タップ生成部４６に、線形予測係数や残差信号等の中からも、クラスタップを抽出させるようにする場合には、図６のタップ生成部７９にも、フィルタ係数復号器７３が出力する線形予測係数や、残差コードブック記憶部７６が出力する残差信号の中から、同様のクラスタップを抽出させるようにする必要がある。但し、線形予測係数等からも、クラスタップを抽出する場合には、タップ数が多くなることから、クラス分類は、例えば、クラスタップをベクトル量子化等によって圧縮することにより行うのが望ましい。なお、残差コードおよびＡコードだけからクラス分類を行う場合には、残差コードとＡコードのビット列の並びを、そのままクラスコードとすることができることから、クラス分類処理に要する負担を軽減することができる。
【０１４１】
次に、図９は、本発明を適用した伝送システム（システムとは、複数の装置が論理的に集合した物をいい、各構成の装置が同一筐体中にあるか否かは問わない）の一実施の形態の構成を示している。
【０１４２】
この伝送システムでは、携帯電話機１０１1と１０１2が、基地局１０２1と１０２2それぞれとの間で、無線による送受信を行うとともに、基地局１０２1と１０２2それぞれが、交換局１０３との間で送受信を行うことにより、最終的には、携帯電話機１０１1と１０１2との間において、基地局１０２1および１０２2、並びに交換局１０３を介して、音声の送受信を行うことができるようになっている。なお、基地局１０２1と１０２2は、同一の基地局であっても良いし、異なる基地局であっても良い。
【０１４３】
ここで、以下、特に区別する必要がない限り、携帯電話機１０１1と１０１2を、携帯電話機１０１と記述する。
【０１４４】
図１０は、図９の携帯電話機１０１の構成例を示している。
【０１４５】
アンテナ１１１は、基地局１０２1または１０２2からの電波を受信し、その受信信号を、変復調部１１２に供給するとともに、変復調部１１２からの信号を、電波で、基地局１０２1または１０２2に送信する。変復調部１１２は、アンテナ１１１からの信号を復調し、その結果得られる、図１で説明したようなコードデータを、受信部１１４に供給する。また、変復調部１１２は、送信部１１３から供給される、図１で説明したようなコードデータを変調し、その結果得られる変調信号を、アンテナ１１１に供給する。送信部１１３は、図１に示した送信部と同様に構成され、そこに入力されるユーザの音声を、コードデータに符号化して、変復調部１１２に供給する。受信部１１４は、変復調部１１２からのコードデータを受信し、そのコードデータから、図３の音声合成装置における場合と同様の高音質の音声を復号して出力する。
【０１４６】
即ち、図１１は、図１０の受信部１１４の構成例を示している。なお、図中、図２における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
【０１４７】
タップ生成部１２１には、音声合成フィルタ２９が出力する合成音が供給されるようになっており、タップ生成部１２１は、その合成音から、予測タップとするもの（サンプル値）を抽出し、予測部１２５に供給する。
【０１４８】
タップ生成部１２２には、チャネルデコーダ２１が出力する、フレーム（またはサブフレーム）ごとのＬコード、Ｇコード、Ｉコード、およびＡコードが供給されるようになっている。さらに、タップ生成部１２２には、演算器２８から残差信号が供給されるとともに、フィルタ係数復号器２５から線形予測係数が供給されるようになっている。タップ生成部１２２は、そこに供給されるＬコード、Ｇコード、Ｉコード、およびＡコード、さらには、残差信号および線形予測係数から、クラスタップとするものを抽出し、クラス分類部１２３に供給する。
【０１４９】
クラス分類部１２３は、タップ生成部１２２から供給されるクラスタップに基づいて、クラス分類を行い、そのクラス分類結果としてのクラスコードを、係数メモリ１２４に供給する。
【０１５０】
ここで、Ｌコード、Ｇコード、Ｉコード、およびＡコード、並びに残差信号および線形予測係数から、クラスタップを構成し、このクラスタップに基づいてクラス分類を行うと、そのクラス分類の結果得られるクラス数が膨大な数になることがある。そこで、クラス分類部１２３では、例えば、Ｌコード、Ｇコード、Ｉコード、およびＡコード、並びに残差信号および線形予測係数を要素とするベクトルをベクトル量子化して得られるコードを、クラス分類結果として出力するようにすることができる。
【０１５１】
係数メモリ１２４は、後述する図１２の学習装置において学習処理が行われることにより得られる、クラスごとのタップ係数を記憶しており、クラス分類部１２３が出力するクラスコードに対応するアドレスに記憶されているタップ係数を、予測部１２５に供給する。
【０１５２】
予測部１２５は、図３の予測部４９と同様に、タップ生成部１２１が出力する予測タップと、係数メモリ１２４が出力するタップ係数とを取得し、その予測タップとタップ係数とを用いて、式（６）に示した線形予測演算を行う。これにより、予測部１２５は、注目フレームの高音質の音声（の予測値）を求めて、Ｄ／Ａ変換部３０に供給する。
【０１５３】
以上のように構成される受信部１１４では、基本的には、図５に示したフローチャートにしたがった処理と同様の処理が行われることで、高音質の合成音が、音声の復号結果として出力される。
【０１５４】
即ち、チャネルデコーダ２１は、そこに供給されるコードデータから、Ｌコード、Ｇコード、Ｉコード、Ａコードを分離し、それぞれを、適応コードブック記憶部２２、ゲイン復号器２３、励起コードブック記憶部２４、フィルタ係数復号器２５に供給する。さらに、Ｌコード、Ｇコード、Ｉコード、およびＡコードは、タップ生成部１２２にも供給される。
【０１５５】
そして、適応コードブック記憶部２２、ゲイン復号器２３、励起コードブック記憶部２４、演算器２６乃至２８では、図１の適応コードブック記憶部９、ゲイン復号器１０、励起コードブック記憶部１１、演算器１２乃至１４における場合と同様の処理が行われ、これにより、Ｌコード、Ｇコード、およびＩコードが、残差信号ｅに復号される。この残差信号は、音声合成フィルタ２９およびタップ生成部１２２に供給される。
【０１５６】
さらに、フィルタ係数復号器２５は、図１で説明したように、そこに供給されるＡコードを、線形予測係数に復号し、音声合成フィルタ２９およびタップ生成部１２２に供給する。音声合成フィルタ２９は、演算器２８からの残差信号と、フィルタ係数復号器２５からの線形予測係数を用いて音声合成を行い、その結果得られる合成音を、タップ生成部１２１に供給する。
【０１５７】
タップ生成部１２１は、音声合成フィルタ２９が出力する合成音のフレームを注目フレームとし、ステップＳ１において、その注目フレームの合成音から、予測タップを生成し、予測部１２５に供給する。さらに、ステップＳ１では、タップ生成部１２２は、そこに供給されるＬコード、Ｇコード、Ｉコード、およびＡコード、並びに残差信号および線形予測係数から、クラスタップを生成し、クラス分類部１２３に供給する。
【０１５８】
そして、ステップＳ２に進み、クラス分類部１２３は、タップ生成部１２２から供給されるクラスタップに基づいて、クラス分類を行い、その結果得られるクラスコードを、係数メモリ１２４に供給して、ステップＳ３に進む。
【０１５９】
ステップＳ３では、係数メモリ１２４は、クラス分類部１２３から供給されるクラスコードに対応するアドレスから、タップ係数を読み出し、予測部１２５に供給する。
【０１６０】
そして、ステップＳ４に進み、予測部１２５は、係数メモリ１２４が出力するタップ係数を取得し、そのタップ係数と、タップ生成部１２１からの予測タップとを用いて、式（６）に示した積和演算を行い、注目フレームの高音質の音声（の予測値）を得る。
【０１６１】
以上のようにして得られた高音質の音声は、予測部１２５から、Ｄ／Ａ変換部３０を介して、スピーカ３１に供給され、これにより、スピーカ３１からは、高音質の音声が出力される。
【０１６２】
ステップＳ４の処理後は、ステップＳ５に進み、まだ、注目フレームとして処理すべきフレームがあるかどうかが判定され、あると判定された場合、ステップＳ１に戻り、次に注目フレームとすべきフレームを、新たに注目フレームとして、以下、同様の処理を繰り返す。また、ステップＳ５において、注目フレームとして処理すべきフレームがないと判定された場合、処理を終了する。
【０１６３】
次に、図１２は、図１１の係数メモリ１２４に記憶させるタップ係数の学習処理を行う学習装置の一実施の形態の構成例を示している。
【０１６４】
マイク２０１乃至コード決定部２１５は、図１のマイク１乃至コード決定部１５とそれぞれ同様に構成される。マイク１には、学習用の音声信号が入力されるようになっており、従って、マイク２０１乃至コード決定部２１５では、その学習用の音声信号に対して、図１における場合と同様の処理が施される。
【０１６５】
そして、タップ生成部１３１には、自乗誤差最小判定部２０８において自乗誤差が最小になったと判定されたときの音声合成フィルタ２０６が出力する合成音が供給される。また、タップ生成部１３２には、コード決定部２１５が、自乗誤差最小判定部２０８から確定信号を受信したときに出力するＬコード、Ｇコード、Ｉコード、およびＡコードが供給される。さらに、タップ生成部１３２には、ベクトル量子化部２０５が出力する、ＬＰＣ分析部２０４で得られた線形予測係数のベクトル量子化結果としてのＡコードに対応するコードベクトル（セントロイドベクトル）の要素となっている線形予測係数と、自乗誤差最小判定部２０８において自乗誤差が最小になったと判定されたときの演算器２１４が出力する残差信号も供給される。また、正規方程式加算回路１３４には、Ａ／Ｄ変換部２０２が出力する音声が、教師データとして供給される。
【０１６６】
タップ生成部１３１は、音声合成フィルタ２０６が出力する合成音から、図１１のタップ生成部１２１と同一の予測タップを構成し、生徒データとして、正規方程式加算回路１３４に供給する。
【０１６７】
タップ生成部１３２は、コード決定部２１５から供給されるＬコード、Ｇコード、Ｉコード、およびＡコード、並びに、ベクトル量子化部２０５から供給される線形予測係数、および演算器２１４から供給される残差信号から、図１１のタップ生成部１２２と同一のクラスタップを構成し、クラス分類部１３３に供給する。
【０１６８】
クラス分類部１３３は、タップ生成部１３２からのクラスタップに基づいて、図１１のクラス分類部１２３における場合と同様のクラス分類を行い、その結果得られるクラスコードを、正規方程式加算回路１３４に供給する。
【０１６９】
正規方程式加算回路１３４は、Ａ／Ｄ変換部２０２からの音声を、教師データとして受信するとともに、タップ生成部１３１からの予測タップを、生徒データとして受信し、その教師データおよび生徒データを対象として、クラス分類部１３３からのクラスコードごとに、図６の正規方程式加算回路８１における場合と同様の足し込みを行うことにより、各クラスについて、式（１３）に示した正規方程式をたてる。
【０１７０】
タップ係数決定回路１３５は、正規方程式加算回路１３４においてクラスごとに生成された正規方程式を解くことにより、クラスごとに、タップ係数を求め、係数メモリ１３６の、各クラスに対応するアドレスに供給する。
【０１７１】
なお、学習用の音声信号として用意する音声信号によっては、正規方程式加算回路１３４において、タップ係数を求めるのに必要な数の正規方程式が得られないクラスが生じる場合があり得るが、タップ係数決定回路１３５は、そのようなクラスについては、例えば、デフォルトのタップ係数を出力する。
【０１７２】
係数メモリ１３６は、タップ係数決定回路１３５から供給されるクラスごとの線形予測係数と残差信号についてのタップ係数を記憶する。
【０１７３】
以上のように構成される学習装置では、基本的には、図８に示したフローチャートにしたがった処理と同様の処理が行われることで、高音質の合成音を得るためのタップ係数が求められる。
【０１７４】
学習装置には、学習用の音声信号が供給され、ステップＳ１１では、その学習用の音声信号から、教師データと生徒データが生成される。
【０１７５】
即ち、学習用の音声信号は、マイク２０１に入力され、マイク２０１乃至コード決定部２１５は、図１のマイク１乃至コード決定部１５における場合とそれぞれ同様の処理を行う。
【０１７６】
その結果、Ａ／Ｄ変換部２０２で得られるディジタル信号の音声は、教師データとして、正規方程式加算回路１３４に供給される。また、自乗誤差最小判定部２０８において自乗誤差が最小になったと判定されたときに、音声合成フィルタ２０６が出力する合成音は、生徒データとして、タップ生成部１３１に供給される。
【０１７７】
さらに、ベクトル量子化部２０５が出力する線形予測係数、自乗誤差最小判定部２０８において自乗誤差が最小になったと判定されたときに、コード決定部２１５が出力するＬコード、Ｇコード、Ｉコード、およびＡコード、並びに演算器２１４が出力する残差信号は、タップ生成部１３２に供給される。
【０１７８】
その後、ステップＳ１２に進み、タップ生成部１３１は、音声合成フィルタ２０６から生徒データとして供給される合成音のフレームを注目フレームとして、その注目フレームの合成音から、予測タップを生成し、正規方程式加算回路１３４に供給する。さらに、ステップＳ１２では、タップ生成部１３２が、そこに供給されるＬコード、Ｇコード、Ｉコード、Ａコード、線形予測係数、および残差信号から、クラスタップを生成し、クラス分類部１３３に供給する。
【０１７９】
ステップＳ１２の処理後は、ステップＳ１３に進み、クラス分類部１３３が、タップ生成部１３２からのクラスタップに基づいて、クラス分類を行い、その結果得られるクラスコードを、正規方程式加算回路１３４に供給する。
【０１８０】
そして、ステップＳ１４に進み、正規方程式加算回路１３４は、Ａ／Ｄ変換器２０２からの教師データとしての注目フレームの高音質の音声である学習用の音声、およびタップ生成部１３２からの生徒データとしての予測タップを対象として、式（１３）の行列Ａとベクトルｖの、上述したような足し込みを、クラス分類部１３３からのクラスコードごとに行い、ステップＳ１５に進む。
【０１８１】
ステップＳ１５では、まだ、注目フレームとして処理すべきフレームがあるかどうかが判定される。ステップＳ１５において、まだ、注目フレームとして処理すべきフレームがあると判定された場合、ステップＳ１１に戻り、次のフレームを新たに注目フレームとして、以下、同様の処理が繰り返される。
【０１８２】
また、ステップＳ１５において、注目フレームとして処理すべきフレームがないと判定された場合、即ち、正規方程式加算回路１３４において、各クラスについて、正規方程式が得られた場合、ステップＳ１６に進み、タップ係数決定回路１３５は、各クラスごとに生成された正規方程式を解くことにより、各クラスごとに、タップ係数を求め、係数メモリ１３６の、各クラスに対応するアドレスに供給して記憶させ、処理を終了する。
【０１８３】
以上のようにして、係数メモリ１３６に記憶された各クラスごとのタップ係数が、図１１の係数メモリ１２４に記憶されている。
【０１８４】
従って、図１１の係数メモリ１２４に記憶されたタップ係数は、線形予測演算を行うことにより得られる高音質の音声予測値の予測誤差（自乗誤差）が、統計的に最小になるように学習を行うことにより求められたものであるから、図１１の予測部１２５が出力する音声は、高音質のものとなる。
【０１８５】
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
【０１８６】
そこで、図１３は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
【０１８７】
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク３０５やＲＯＭ３０３に予め記録しておくことができる。
【０１８８】
あるいはまた、プログラムは、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)，MO(Magneto optical)ディスク，DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体３１１に、一時的あるいは永続的に格納（記録）しておくことができる。このようなリムーバブル記録媒体３１１は、いわゆるパッケージソフトウエアとして提供することができる。
【０１８９】
なお、プログラムは、上述したようなリムーバブル記録媒体３１１からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部３０８で受信し、内蔵するハードディスク３０５にインストールすることができる。
【０１９０】
コンピュータは、CPU(Central Processing Unit)３０２を内蔵している。CPU３０２には、バス３０１を介して、入出力インタフェース３１０が接続されており、CPU３０２は、入出力インタフェース３１０を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部３０７が操作等されることにより指令が入力されると、それにしたがって、ROM(Read Only Memory)３０３に格納されているプログラムを実行する。あるいは、また、CPU３０２は、ハードディスク３０５に格納されているプログラム、衛星若しくはネットワークから転送され、通信部３０８で受信されてハードディスク３０５にインストールされたプログラム、またはドライブ３０９に装着されたリムーバブル記録媒体３１１から読み出されてハードディスク３０５にインストールされたプログラムを、RAM(Random Access Memory)３０４にロードして実行する。これにより、CPU３０２は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU３０２は、その処理結果を、必要に応じて、例えば、入出力インタフェース３１０を介して、LCD(Liquid Crystal Display)やスピーカ等で構成される出力部３０６から出力、あるいは、通信部３０８から送信、さらには、ハードディスク３０５に記録等させる。
【０１９１】
ここで、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理（例えば、並列処理あるいはオブジェクトによる処理）も含むものである。
【０１９２】
また、プログラムは、１のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
【０１９３】
なお、本実施の形態においては、学習用の音声信号として、どのようなものを用いるかについては、特に言及しなかったが、学習用の音声信号としては、人が発話した音声の他、例えば、曲（音楽）等を採用することが可能である。そして、上述したような学習処理によれば、学習用の音声信号として、人の発話を用いた場合には、そのような人の発話の音声の音質を向上させるようなタップ係数が得られ、曲を用いた場合には、曲の音質を向上させるようなタップ係数が得られることになる。
【０１９４】
また、図１１の実施の形態では、係数メモリ１２４には、タップ係数をあらかじめ記憶させておくようにしたが、係数メモリ１２４に記憶させるタップ係数は、携帯電話機１０１において、図９の基地局１０２（あるいは交換局１０３）や、図示しないＷＷＷ(World Wide Web)サーバ等からダウンロードするようにすることができる。即ち、上述したように、タップ係数は、人の発話用や曲用等のように、ある種類の音声信号に適したものを、学習によって得ることができる。さらに、学習に用いる教師データおよび生徒データによっては、合成音の音質に差が生じるタップ係数を得ることができる。従って、そのような各種のタップ係数を、基地局１０２等に記憶させておき、ユーザには、自身の所望するタップ係数をダウンロードさせるようにすることができる。そして、このようなタップ係数のダウンロードサービスは、無料で行うこともできるし、有料で行うこともできる。さらに、タップ係数のダウンロードサービスを有料で行う場合には、タップ係数のダウンロードに対する対価としての代金は、例えば、携帯電話機１０１の通話料等とともに請求するようにすることが可能である。
【０１９５】
また、係数メモリ１２４は、携帯電話機１０１に対して着脱可能なメモリカード等で構成することができる。この場合、上述したような各種のタップ係数それぞれを記憶させた、異なるメモリカードを提供するようにすれば、ユーザは、場合に応じて、所望のタップ係数が記憶されたメモリカードを、携帯電話機１０１に装着して使用することが可能となる。
【０１９６】
さらに、本発明は、例えば、ＶＳＥＬＰ(Vector Sum Excited Liner Prediction)，ＰＳＩ−ＣＥＬＰ(Pitch Synchronous Innovation CELP)，ＣＳ−ＡＣＥＬＰ(Conjugate Structure Algebraic CELP)等のＣＥＬＰ方式による符号化の結果得られるコードから合成音を生成する場合に、広く適用可能である。
【０１９７】
また、本発明は、ＣＥＬＰ方式による符号化の結果得られるコードから合成音を生成する場合に限らず、あるコードから、残差信号と線形予測係数を得て、合成音を生成する場合に、広く適用可能である。
【０１９８】
さらに、本実施の形態では、タップ係数を用いた線形１次予測演算によって、残差信号や線形予測係数の予測値を求めるようにしたが、この予測値は、その他、２次以上の高次の予測演算によって求めることも可能である。
【０１９９】
また、例えば、図１１および図１２の実施の形態では、クラスタップを、Ｌコード、Ｇコード、Ｉコード、およびＡコードの他、Ａコードから得られた線形予測係数や、Ｌコード、Ｇコード、およびＩコードから得られた残差信号に基づいて生成するようにしたが、クラスタップは、その他、例えば、Ｌコード、Ｇコード、Ｉコード、およびＡコードだけから生成することも可能である。また、クラスタップは、４種類のＬコード、Ｇコード、Ｉコード、およびＡコードのうちの１つだけ（または複数）、即ち、例えば、Ｉコードだけから生成することも可能である。例えば、クラスタップを、Ｉコードだけから構成する場合においては、Ｉコードそのものを、クラスコードとすることができる。ここで、ＶＳＥＬＰ方式では、Ｉコードには、９ビットが割り当てられており、従って、Ｉコードを、そのままクラスコードとする場合、クラス数は、５１２（＝２9）となる。なお、ＶＳＥＬＰ方式においては、９ビットのＩコードの各ビットは、１または−１という２種類の符号極性を有するため、このようなＩコードを、クラスコードとする場合には、例えば、−１となっているビットを０とみなすようにすれば良い。
【０２００】
さらに、ＣＥＬＰ方式では、コードデータに、リスト補間ビットやフレームエネルギが含められる場合があるが、この場合、クラスタップは、ソフト補間ビットやフレームエネルギを用いて構成することが可能である。
【０２０１】
なお、例えば、特開平８−２０２３９９号公報には、合成音を、高域強調フィルタに通すことによって、その音質を改善する方法が開示されているが、本発明は、タップ係数が学習により得られる点および用いるタップ係数が、コードによるクラス分類結果によって決まる点等において、特開平８−２０２３３９号公報に記載の発明と異なる。
【０２０２】
【発明の効果】
本発明の音声処理装置および音声処理方法、並びに第１のプログラムおよび第１の記録媒体によれば、量子化された所定のコードが分離、復号されて線形予測係数と残差信号とが生成され、復号された線形予測係数をタップ係数とする音声合成フィルタを用いて、残差信号がフィルタリングされ、合成音が生成される。予測値を求めようとしている高音質の音声を注目音声として、その注目音声を予測するのに用いる予測タップが、生成された合成音から抽出されるとともに、注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップが、所定のコードから抽出される。そして、クラスタップに基づいて、注目音声のクラスを求めるクラス分類が行われ、予測タップと、注目音声のクラスに対応する所定のタップ係数を用いて、注目音声の予測値が求められる。従って、高音質の合成音を生成することが可能となる。
【０２０３】
本発明の学習装置および学習方法、並びに第２のプログラムおよび第２の記録媒体においては、学習用音声信号から第２の線形予測係数が求められ、学習用音声信号と第２の線形予測係数から第２の残差信号が求められる。第２の線形予測係数を要素とするコードベクトルとコードとを対応付けた第１のコードブックに基づいて、第２の線形予測係数で構成される特徴ベクトルがベクトル量子化され、第１のコードが生成され、第１のコードが復号され、第１の線形予測係数が生成される。また、第２の残差信号を要素とするコードベクトルとコードとを対応付けた第２のコードブックに基づいて、第２の残差信号のサンプル値で構成される残差ベクトルがベクトル量子化され、第２のコードが生成され、第２のコードが復号され、第１の残差信号が生成される。そして、第１の線形予測係数をタップ係数とする音声合成フィルタを用いて、第１の残差信号をフィルタリングし、合成音が生成される。予測値を求めようとしている高音質の音声を注目音声として、その注目音声を、幾つかのクラスのうちのいずれかにクラス分類するのに用いるクラスタップが、第１のコードおよび第２のコードから抽出され、そのクラスタップに基づいて、注目音声のクラスを求めるクラス分類が行われる。そして、所定のタップ係数および合成音を用いて予測演算を行うことにより得られる高音質の音声の予測値の予測誤差が統計的に最小になるように、学習が行われ、クラスごとの所定のタップ係数が求められる。従って、そのタップ係数によって、高音質の合成音を生成することが可能となる。
【図面の簡単な説明】
【図１】従来の携帯電話機の送信部の一例の構成を示すブロック図である。
【図２】従来の携帯電話機の受信部の一例の構成を示すブロック図である。
【図３】本発明を適用した音声合成装置の一実施の形態の構成例を示すブロック図である。
【図４】音声合成フィルタ４４の構成例を示すブロック図である。
【図５】図３の音声合成装置の処理を説明するフローチャートである。
【図６】本発明を適用した学習装置の一実施の形態の構成例を示すブロック図である。
【図７】予測フィルタ７４の構成例を示すブロック図である。
【図８】図６の学習装置の処理を説明するフローチャートである。
【図９】本発明を適用した伝送システムの一実施の形態の構成例を示す図である。
【図１０】携帯電話機１０１の構成例を示すブロック図である。
【図１１】受信部１１４の構成例を示すブロック図である。
【図１２】本発明を適用した学習装置の他の実施の形態の構成例を示すブロック図である。
【図１３】本発明を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
【符号の説明】
２１  チャンネルデコーダ，  ２２  適応コードブック記憶部，  ２３  ゲイン復号器，  ２４  励起コードブック記憶部，  ２５  フィルタ係数復号器，  ２６乃至２８  演算器，  ２９  音声合成フィルタ，  ３０  Ｄ／Ａ変換部，  ３１  スピーカ，  ４１  デマルチプレクサ，  ４２  フィルタ係数復号器，  ４３  残差コードブック記憶部，  ４４  音声合成フィルタ，  ４５，４６  タップ生成部，  ４７  クラス分類部，  ４８  係数メモリ，  ４９  予測部，  ５０  Ｄ／Ａ変換部，  ５１  スピーカ，  ６１  加算器，  ６２1乃至６２P  遅延回路，  ６３1乃至６３P  乗算器，  ７１  ＬＰＣ分析部，  ７２  ベクトル量子化部，  ７３  フィルタ係数復号器,  ７４  予測フィルタ，  ７５  ベクトル量子化部，  ７６  残差コードブック記憶部，  ７７  音声合成フィルタ，  ７８，７９  タップ生成部，  ８０  クラス分類部，  ８１  正規方程式加算回路，  ８２  タップ係数決定回路，  ８３  係数メモリ，  ９１1乃至９１P遅延回路，  ９２1乃至７２P  乗算器，  ９３  加算器，  １０１1，１０１2携帯電話機，  １０２1，１０２2  基地局，  １０３  交換局，  １１１  アンテナ，  １１２  変復調部，  １１３  送信部，  １１４  受信部，  １２１，１２２  タップ生成部，  １２３  クラス分類部，  １２４  係数メモリ，  １２５  予測部，  １３１，１３２  タップ生成部，  １３３  クラス分類部，１３４  正規方程式加算回路，  １３５  タップ係数決定回路，  １３６  係数メモリ，  ２０１  マイク，  ２０２  Ａ／Ｄ変換部，  ２０３  演算器，  ２０４  ＬＰＣ分析部，  ２０５  ベクトル量子化部，  ２０６  音声合成フィルタ，  ２０７  自乗誤差演算部，  ２０８  自乗誤差最小判定部，  ２０９  適応コードブック記憶部，  ２１０  ゲイン復号器，  ２１１  励起コードブック記憶部，  ２１２  乃至２１４  演算器，  ２１５  コード決定部，  ３０１バス，  ３０２  CPU，  ３０３  ROM，  ３０４  RAM，  ３０５  ハードディスク，  ３０６  出力部，  ３０７  入力部，  ３０８  通信部，  ３０９  ドライブ，  ３１０  入出力インタフェース，  ３１１  リムーバブル記録媒体
【図１】
0004736266.tif 000011
【図２】
0004736266.tif 000012
【図３】
0004736266.tif 000013
【図４】
0004736266.tif 000014
【図５】
0004736266.tif 000015
【図６】
0004736266.tif 000016
【図７】
0004736266.tif 000017
【図８】
0004736266.tif 000018
【図９】
0004736266.tif 000019
【図１０】
0004736266.tif 000020
【図１１】
0004736266.tif 000021
【図１２】
0004736266.tif 000022
【図１３】
0004736266.tif 000023