(57)【要約】  量子化対象ベクトルとの相関を有する特徴の種類によって１段目のベクトル量子化のコードブックを切り替えるベクトル量子化の量子化精度を向上することができるＬＳＰベクトル量子化装置。この装置において、分類器（１０１）は、複数の分類用コードベクトルの中から、量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択し、スイッチ（１０２）は、複数の第１コードブックの中から上記種類に対応する第１コードブックを選択し、誤差最小化部（１０５）は、選択された第１コードブックを構成する複数の第１コードベクトルの中から、量子化対象ベクトルに最も近い第１コードベクトルを選択し、行列決定部（１０６）は、複数の行列の中から上記種類に対応する行列を選択し、誤差最小化部（１０５）は、選択された行列を用いて複数の第２コードベクトルの中から、選択された第１コードベクトルと量子化対象ベクトルとの残差ベクトルに最も近いものを選択する。
2010092827.tif 000002
【特許請求の範囲】
【請求項１】
複数の分類用コードベクトルの中から、量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択する第１選択手段と、
複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択する第２選択手段と、
選択された前記第１コードブックを構成する複数の第１コードベクトルを用いて前記量子化対象ベクトルを量子化し、第１符号を得る第１量子化手段と、
複数の行列の中から、選択された前記分類用コードベクトルに対応する第１行列を選択する第３選択手段と、
複数の第２コードベクトルおよび選択された前記第１行列を用い、前記第１符号が示す前記第１コードベクトルと、前記量子化対象ベクトルとの差である第１残差ベクトルを量子化し、第２符号を得る第２量子化手段と、
を具備するベクトル量子化装置。
【請求項２】
前記第２量子化手段は、
前記複数の第２コードベクトルそれぞれに対して、選択された前記第１行列を用いた行列演算を行い、前記行列演算後の前記複数の第２コードベクトルを用いて前記第１残差ベクトルを量子化する、
請求項１記載のベクトル量子化装置。
【請求項３】
前記第２量子化手段は、
前記第１残差ベクトルに対して、選択された前記第１行列の逆行列を用いた行列演算を行い、前記複数の第２コードベクトルを用いて前記行列演算後の前記第１残差ベクトルを量子化する、
請求項１記載のベクトル量子化装置。
【請求項４】
前記第１行列は回転行列である、
請求項１記載のベクトル量子化装置。
【請求項５】
前記選択手段は、さらに、前記複数の行列の中から、選択された前記分類用コードベクトルに対応する第２行列を選択し、
複数の第３コードベクトルおよび選択された前記第２行列を用い、前記第２符号が示す前記第１残差ベクトルと、前記第２コードベクトルとの差である第２残差ベクトルを量子化し、第３符号を得る第３量子化手段、をさらに具備する、
請求項１記載のベクトル量子化装置。
【請求項６】
前記第２行列は回転行列である、
請求項５記載のベクトル量子化装置。
【請求項７】
ベクトル量子化装置において量子化対象ベクトルを量子化して得られた第１符号と、前記量子化の量子化誤差をさらに量子化して得られた第２符号と、を受信する受信手段と、
複数の分類用コードベクトルの中から、前記量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択する第１選択手段と、
複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択する第２選択手段と、
選択された前記第１コードブックを構成する複数の第１コードベクトルの中から、前記第１符号に対応する第１コードベクトルを指定する第１逆量子化手段と、
複数の行列の中から、選択された前記分類用コードベクトルに対応する行列を選択する第３選択手段と、
複数の第２コードベクトルの中から前記第２符号に対応する第２コードベクトルを指定し、指定された前記第２コードベクトルと、選択された前記行列と、指定された前記第１コードベクトルとを用い、量子化ベクトルを得る第２逆量子化手段と、
を具備するベクトル逆量子化装置。
【請求項８】
複数の分類用コードベクトルの中から、量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択するステップと、
複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択するステップと、
選択された前記第１コードブックを構成する複数の第１コードベクトルを用いて前記量子化対象ベクトルを量子化し、第１符号を得るステップと、
複数の行列の中から、選択された前記分類用コードベクトルに対応する第１行列を選択するステップと、
複数の第２コードベクトルおよび選択された前記第１行列を用い、前記第１符号が示す前記第１コードベクトルと、前記量子化対象ベクトルとの差である第１残差ベクトルを量子化し、第２符号を得るステップと、
を有するベクトル量子化方法。
【請求項９】
ベクトル量子化装置において量子化対象ベクトルを量子化して得られた第１符号と、前記量子化の量子化誤差をさらに量子化して得られた第２符号と、を受信するステップと、
複数の分類用コードベクトルの中から、前記量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択するステップと、
複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択するステップと、
選択された前記第１コードブックを構成する複数の第１コードベクトルの中から、前記第１符号に対応する第１コードベクトルを指定するステップと、
複数の行列の中から、選択された前記分類用コードベクトルに対応する行列を選択するステップと、
複数の第２コードベクトルの中から前記第２符号に対応する第２コードベクトルを指定し、指定された前記第２コードベクトルと、選択された前記行列と、指定された前記第１コードベクトルとを用い、量子化ベクトルを得るステップと、
を有するベクトル逆量子化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＳＰ（Line Spectral Pairs）パラメータのベクトル量子化を行うベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法に関し、特にインターネット通信に代表されるパケット通信システムや、移動通信システム等の分野で、音声信号の伝送を行う音声符号化・復号化装置に用いられるＬＳＰパラメータのベクトル量子化を行うベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法に関する。
【背景技術】
【０００２】
ディジタル無線通信や、インターネット通信に代表されるパケット通信、あるいは音声蓄積などの分野においては、電波などの伝送路容量や記憶媒体の有効利用を図るため、音声信号の符号化・復号技術が不可欠である。その中で特に、ＣＥＬＰ（Code Excited Linear Prediction）方式の音声符号化・復号技術が主流の技術となっている。【０００３】
ＣＥＬＰ方式の音声符号化装置は、予め記憶された音声モデルに基づいて入力音声を符号化する。具体的には、ＣＥＬＰ方式の音声符号化装置は、ディジタル化された音声信号を１０〜２０ｍｓ程度の一定時間間隔のフレームに区切り、各フレーム内の音声信号に対して線形予測分析を行い線形予測係数（ＬＰＣ：Linear Prediction Coefficient）と線形予測残差ベクトルを求め、線形予測係数と線形予測残差ベクトルとをそれぞれ個別に符号化する。線形予測係数を符号化する方法としては、線形予測係数をＬＳＰ（Line Spectral Pairs）パラメータに変換し、ＬＳＰパラメータを符号化することが一般的である。また、ＬＳＰパラメータを符号化する方法としては、ＬＳＰパラメータに対してベクトル量子化を行うことが多い。ベクトル量子化とは、代表的なベクトル（コードベクトル）を複数持つ符号帳（コードブック）の中から、量子化対象のベクトルに最も近いコードベクトルを選択し、選択されたコードベクトルに付与されているインデックス（符号）を量子化結果として出力する方法である。ベクトル量子化においては、使用できる情報量に応じてコードブックのサイズが決まる。例えば、８ビットの情報量でベクトル量子化を行う場合、コードブックは２５６（＝２８）種類のコードベクトルを用いて構成することができる。【０００４】
また、ベクトル量子化における情報量、計算量を低減するために、多段ベクトル量子化（ＭＳＶＱ：Multi-Stage Vector Quantization）、または分割ベクトル量子化（ＳＶＱ：Split Vector Quantization）などの様々な技術が用いられている（例えば、非特許文献１参照）。多段ベクトル量子化とは、ベクトルを一度ベクトル量子化した後に量子化誤差を更にベクトル量子化する方法であり、分割ベクトル量子化とは、ベクトルを複数に分割して得られた分割ベクトルをそれぞれ量子化する方法である。【０００５】
また、量子化対象となるＬＳＰとの相関を有する音声的特徴（例えば、音声の有声性、無声性、モード等の情報）に応じて、ベクトル量子化に用いるコードブックを適宜切り替えることにより、ＬＳＰの特徴に適したベクトル量子化を行い、ＬＳＰ符号化の性能をさらに高める技術として分類ベクトル量子化（分類ＶＱ）がある（例えば、非特許文献２参照）。例えば、スケーラブル符号化においては、広帯域ＬＳＰ（広帯域信号から求められるＬＳＰ）と狭帯域ＬＳＰ（狭帯域信号から求められるＬＳＰ）との相互関係を利用し、狭帯域ＬＳＰに対して特徴によって分類を行い、狭帯域ＬＳＰの特徴の種類（以下、狭帯域ＬＳＰの種類と略称する）に応じて多段ベクトル量子化の１段目のコードブックを切り替え、広帯域ＬＳＰをベクトル量子化する。【０００６】
また、多段ベクトル量子化と分類ベクトル量子化とを組み合わせてベクトル量子化を行うことが検討されている。この場合、多段ベクトル量子化の複数の段により構成されるコードブック群（１段目のコードブック、２段目のコードブック、…）を、狭帯域ＬＳＰの種類に応じて複数用意することにより量子化性能を向上させることができる一方、コードブック群を複数用意する必要があるため、より大きなメモリが必要となる。そこで、多段ベクトル量子化と分類ベクトル量子化とを組み合わせてベクトル量子化を行う場合、１段目のコードブックのみ狭帯域ＬＳＰの種類に応じて切り替え、２段目以降のコードブックは全ての狭帯域ＬＳＰの種類において共通とすることが検討されている（例えば、特許文献１参照）。これにより、多段ベクトル量子化において、分類ベクトル量子化による量子化性能向上の効果を得つつ、メモリの増加を抑えることができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】国際公開第２００６／０３０８６５号
【非特許文献】
【０００８】
【非特許文献１】Allen Gersho、Robert M. Gray著、古井、外３名訳、「ベクトル量子化と情報圧縮」、コロナ社、１９９８年１１月１０日、p.506、524-531
【非特許文献２】Allen Gersho、Robert M. Gray著、古井、外３名訳、「ベクトル量子化と情報圧縮」、コロナ社、１９９８年１１月１０日、p.491-493
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上記のような分類ベクトル量子化を利用する多段ベクトル量子化においては、狭帯域ＬＳＰの種類に対応するコードブックを用いて１段目のベクトル量子化が行われるため、１段目のベクトル量子化の量子化誤差の分布の偏りは狭帯域ＬＳＰの種類によって異なる。しかし、２段目以降のベクトル量子化では狭帯域ＬＳＰの種類にかかわらず共通の１つのコードブックを用いるため、２段目以降のベクトル量子化精度が不十分になってしまうという問題がある。【００１０】
図１は、上記の多段ベクトル量子化における問題点を説明するための図である。図１において、黒丸は２次元のベクトルを示し、破線の円はベクトル集合の分散の大きさを模式的に示し、円の中心は、ベクトル集合の平均を示す。また、図１において、ＣＢａ１、ＣＢａ２、…、ＣＢａｎは、狭帯域ＬＳＰの各種類に対応し、１段目のベクトル量子化に用いられる複数のコードブックそれぞれを示す。ＣＢｂは、２段目のベクトル量子化に用いられるコードブックを示す。【００１１】
図１に示すように、コードブックＣＢａ１、ＣＢａ２、…、ＣＢａｎそれぞれを用いて１段目のベクトル量子化を行った結果、複数サンプルによる量子化誤差ベクトルの分布（図１に示す黒丸の分布）の偏りはそれぞれ異なる。このような分布の偏りが異なる量子化誤差ベクトルに対し、共通の第２コードベクトルを用いて２段目のベクトル量子化を行うと、２段目の量子化精度が劣化してしまう。【００１２】
本発明の目的は、量子化対象ベクトルとの相関を有する特徴の種類に応じて１段目のコードブックが切り替わる多段ベクトル量子化において、２段目以降のベクトル量子化の量子化精度を向上することができるベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法を提供することである。
【課題を解決するための手段】
【００１３】
本発明のベクトル量子化装置は、複数の分類用コードベクトルの中から、量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択する第１選択手段と、複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択する第２選択手段と、選択された前記第１コードブックを構成する複数の第１コードベクトルを用いて前記量子化対象ベクトルを量子化し、第１符号を得る第１量子化手段と、複数の行列の中から、選択された前記分類用コードベクトルに対応する第１行列を選択する第３選択手段と、複数の第２コードベクトルおよび選択された前記第１行列を用い、前記第１符号が示す前記第１コードベクトルと、前記量子化対象ベクトルとの差である第１残差ベクトルを量子化し、第２符号を得る第２量子化手段と、を具備する構成を採る。【００１４】
本発明のベクトル逆量子化装置は、ベクトル量子化装置において量子化対象ベクトルを量子化して得られた第１符号と、前記量子化の量子化誤差をさらに量子化して得られた第２符号と、を受信する受信手段と、複数の分類用コードベクトルの中から、前記量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択する第１選択手段と、複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択する第２選択手段と、選択された前記第１コードブックを構成する複数の第１コードベクトルの中から、前記第１符号に対応する第１コードベクトルを指定する第１逆量子化手段と、複数の行列の中から、選択された前記分類用コードベクトルに対応する行列を選択する第３選択手段と、複数の第２コードベクトルの中から前記第２符号に対応する第２コードベクトルを指定し、指定された前記第２コードベクトルと、選択された前記行列と、指定された前記第１コードベクトルとを用い、量子化ベクトルを得る第２逆量子化手段と、を具備する構成を採る。【００１５】
本発明のベクトル量子化方法は、複数の分類用コードベクトルの中から、量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択するステップと、複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択するステップと、選択された前記第１コードブックを構成する複数の第１コードベクトルを用いて前記量子化対象ベクトルを量子化し、第１符号を得るステップと、複数の行列の中から、選択された前記分類用コードベクトルに対応する第１行列を選択するステップと、複数の第２コードベクトルおよび選択された前記第１行列を用い、前記第１符号が示す前記第１コードベクトルと、前記量子化対象ベクトルとの差である第１残差ベクトルを量子化し、第２符号を得るステップと、を有するようにした。【００１６】
本発明のベクトル逆量子化方法は、ベクトル量子化装置において量子化対象ベクトルを量子化して得られた第１符号と、前記量子化の量子化誤差をさらに量子化して得られた第２符号と、を受信するステップと、複数の分類用コードベクトルの中から、前記量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択するステップと、複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択するステップと、選択された前記第１コードブックを構成する複数の第１コードベクトルの中から、前記第１符号に対応する第１コードベクトルを指定するステップと、複数の行列の中から、選択された前記分類用コードベクトルに対応する行列を選択するステップと、複数の第２コードベクトルの中から前記第２符号に対応する第２コードベクトルを指定し、指定された前記第２コードベクトルと、選択された前記行列と、指定された前記第１コードベクトルとを用い、量子化ベクトルを得るステップと、を有するようにした。
【発明の効果】
【００１７】
本発明によれば、量子化対象ベクトルとの相関を有する特徴の種類に応じて１段目のコードブックを切り替える多段ベクトル量子化において、上記種類に対応する行列を用いて２段目以降のベクトル量子化を行うことにより、２段目以降のベクトル量子化の量子化精度を向上することができる。
【図面の簡単な説明】
【００１８】
【図１】従来技術の多段ベクトル量子化における問題点を説明するための図
【図２】本発明の一実施の形態に係るＬＳＰベクトル量子化装置の主要な構成を示すブロック図
【図３】本発明の一実施の形態に係るＬＳＰベクトル逆量子化装置の主要な構成を示すブロック図
【図４】本発明の一実施の形態に係るＬＳＰベクトル量子化の効果を概念的に説明するための図
【図５】本発明の一実施の形態に係るＬＳＰベクトル量子化装置を備えるＣＥＬＰ符号化装置の主要な構成を示すブロック図
【図６】本発明の一実施の形態に係るＬＳＰベクトル逆量子化装置を備えるＣＥＬＰ復号装置の主要な構成を示すブロック図
【発明を実施するための形態】
【００１９】
以下、本発明の実施の形態について、添付図面を参照して詳細に説明する。なお、本発明に係るベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法として、ＬＳＰベクトル量子化装置、ＬＳＰベクトル逆量子化装置、およびこれらの方法を例にとって説明する。
【００２０】
また、本発明の実施の形態では、スケーラブル符号化の広帯域ＬＳＰ量子化器において、広帯域ＬＳＰをベクトル量子化対象とし、ベクトル量子化対象との相関を有する狭帯域ＬＳＰの種類を用いて、１段目の量子化に用いるコードブックを切り替える場合を例にとって説明する。なお、狭帯域ＬＳＰの代わりに、量子化狭帯域ＬＳＰ（図示しない狭帯域ＬＳＰ量子化器によって予め量子化された狭帯域ＬＳＰ）を用いて１段目の量子化に用いるコードブックを切り替えてもよい。また、量子化狭帯域ＬＳＰを広帯域形態に変換し、変換後の量子化狭帯域ＬＳＰを用いて１段目の量子化に用いるコードブックを切り替えてもよい。
【００２１】
また、本発明の実施の形態において、コードブックを構成するコードベクトル全てに対して行列演算することにより、コードベクトルの分布の偏りを移動させるための行列のことを、マッピング行列と称することとする。なお、実際には、マッピング行列は、コードベクトルに対して行列演算するために用いられるよりも、本発明の実施の形態のように量子化対象であるベクトルに対して行列演算するために用いられることが多い。
【００２２】
図２は、本発明の実施の形態に係るＬＳＰベクトル量子化装置１００の主要な構成を示すブロック図である。ここでは、ＬＳＰベクトル量子化装置１００において、入力されるＬＳＰベクトルを３段階の多段ベクトル量子化により量子化する場合を例にとって説明する。
【００２３】
図２において、ＬＳＰベクトル量子化装置１００は、分類器１０１、スイッチ１０２、第１コードブック１０３、加算器１０４、誤差最小化部１０５、行列決定部１０６、行列演算部１０７、第２コードブック１０８、加算器１０９、行列演算部１１０、第３コードブック１１１および加算器１１２を備える。
【００２４】
分類器１０１は、狭帯域ＬＳＰベクトルの複数の種類それぞれを示す複数の分類情報からなる分類用コードブックを予め格納している。分類器１０１は、ベクトル量子化対象である広帯域ＬＳＰベクトルの種類を示す分類情報を分類用コードブックの中から選択し、スイッチ１０２、および行列決定部１０６に出力する。具体的には、分類器１０１は、狭帯域ＬＳＰベクトルの各種類に対応するコードベクトル（分類用コードベクトル）からなる分類用コードブックを内蔵している。分類器１０１は、分類用コードブックを探索することにより、入力される狭帯域ＬＳＰベクトルとの二乗誤差が最小となるコードベクトルを求める。分類器１０１は、探索により求めたコードベクトルのインデックスを、ＬＳＰベクトルの種類を示す分類情報とする。
【００２５】
スイッチ１０２は、分類器１０１から入力される分類情報に対応するサブコードブックを第１コードブック１０３の中から１つ選択し、そのサブコードブックの出力端子を加算器１０４に接続する。
【００２６】
第１コードブック１０３は、狭帯域ＬＳＰの各種類に対応したサブコードブック（ＣＢａ１〜ＣＢａｎ）を予め格納している。すなわち、例えば狭帯域ＬＳＰの種類の総数がｎである場合、第１コードブック１０３を構成するサブコードブックの数もｎとなる。第１コードブック１０３は、スイッチ１０２で選択されたサブコードブックを構成する複数の第１コードベクトルの中から、誤差最小化部１０５からの指示により指示された第１コードベクトルをスイッチ１０２に出力する。
【００２７】
加算器１０４は、ベクトル量子化対象として入力される広帯域ＬＳＰベクトルと、スイッチ１０２から入力される第１コードベクトルとの差を求め、この差を第１残差ベクトルとして誤差最小化部１０５に出力する。また、加算器１０４は、すべての第１コードベクトルそれぞれに対応する第１残差ベクトルのうち、誤差最小化部１０５の探索により最小となると分かった１つを行列演算部１０７に出力する。
【００２８】
誤差最小化部１０５は、加算器１０４から入力される第１残差ベクトルを二乗した結果を広帯域ＬＳＰベクトルと第１コードベクトルとの二乗誤差とし、第１コードブックを探索することによりこの二乗誤差が最小となる第１コードベクトルを求める。同様に、誤差最小化部１０５は、加算器１０９から入力される第２残差ベクトルを二乗した結果を第１残差ベクトルと第２コードベクトルとの二乗誤差とし、第２コードブックを探索することによりこの二乗誤差が最小となる第２コードベクトルを得る。同様に、誤差最小化部１０５は、加算器１１２から入力される第３残差ベクトルを二乗した結果を第２残差ベクトルと第３コードベクトルとの二乗誤差とし、第３コードブックを探索することによりこの二乗誤差が最小となる第３コードベクトルを得る。誤差最小化部１０５は、探索により得られた３つのコードベクトルに付与されているインデックスを纏めて符号化し、符号化データとして出力する。
【００２９】
行列決定部１０６は、狭帯域ＬＳＰベクトルの各種類に対応するマッピング行列からなるマッピング行列コードブックを予め格納している。ここでは、マッピング行列コードブックは、第１マッピング行列コードブックおよび第２マッピング行列コードブックの２種類のマッピング行列コードブックで構成される。また、第１マッピング行列コードブックは、第１コードベクトルに対して行列演算を行うために用いられる第１マッピング行列からなり、第２マッピング行列コードブックは、第２コードベクトルに対して行列演算を行うために用いられる第２マッピング行列からなる。行列決定部１０６は、分類器１０１から入力される分類情報に対応する第１マッピング行列および第２マッピング行列を、マッピング行列コードブックの中から選択する。そして、行列決定部１０６は、選択した第１マッピング行列の逆行列を行列演算部１０７に出力し、選択した第２マッピング行列の逆行列を行列演算部１１０に出力する。
【００３０】
行列演算部１０７は、加算器１０４から入力された第１残差ベクトルに対して、行列決定部１０６から入力される第１マッピング行列の逆行列を用いて行列演算を行い、行列演算後のベクトルを加算器１０９に出力する。
【００３１】
第２コードブック（ＣＢｂ）１０８は、複数の第２コードベクトルからなり、誤差最小化部１０５からの指示により指示された第２コードベクトルを加算器１０９に出力する。
【００３２】
加算器１０９は、行列演算部１０７から入力される、行列演算後のベクトルと、第２コードブック１０８から入力される第２コードベクトルとの差を求め、この差を第２残差ベクトルとして誤差最小化部１０５に出力する。また、加算器１０９は、すべての第２コードベクトルそれぞれに対応する第２残差ベクトルのうち、誤差最小化部１０５の探索により最小となると分かった１つを行列演算部１１０に出力する。
【００３３】
行列演算部１１０は、加算器１０９から入力された第２残差ベクトルに対して、行列決定部１０６から入力される第２マッピング行列の逆行列を用いて行列演算を行い、行列演算後のベクトルを加算器１１２に出力する。
【００３４】
第３コードブック１１１（ＣＢｃ）は、複数の第３コードベクトルからなり、誤差最小化部１０５からの指示により指示された第３コードベクトルを加算器１１２に出力する。
【００３５】
加算器１１２は、行列演算部１１０から入力される行列演算後のベクトルと、第３コードブック１１１から入力される第３コードベクトルとの差を求め、この差を第３残差ベクトルとして誤差最小化部１０５に出力する。
【００３６】
次に、量子化対象となる広帯域ＬＳＰベクトルの次数がＲ次である場合を例にとって、ＬＳＰベクトル量子化装置１００が行う動作について説明する。なお、以下の説明では、広帯域ＬＳＰベクトルをＬＳＰ（ｉ）（ｉ＝０，１，…，Ｒ−１）と記す。
【００３７】
分類器１０１は、狭帯域ＬＳＰベクトルのｎ個の種類それぞれに対応するｎ個のコードベクトル（分類用コードベクトル）からなる分類用コードブックを内蔵している。分類器１０１は、コードベクトルを探索することにより、入力される狭帯域ＬＳＰベクトルとの二乗誤差が最小となるｍ番目のコードベクトルを求める。分類器１０１は、ｍ（１≦ｍ≦ｎ）を分類情報としてスイッチ１０２、および行列決定部１０６に出力する。
【００３８】
スイッチ１０２は、分類情報ｍに対応するサブコードブックＣＢａｍを第１コードブック１０３の中から選択し、そのサブコードブックの出力端子を加算器１０４に接続する。
【００３９】
第１コードブック１０３は、ｎ個のサブコードブックＣＢａ１〜ＣＢａｎのうち、ＣＢａｍを構成する各第１コードベクトルＣＯＤＥ＿１（ｄ１）（ｉ）（ｄ１＝０，１，…，Ｄ１−１、ｉ＝０，１，…，Ｒ−１）の中から、誤差最小化部１０５からの指示ｄ１’により指示された第１コードベクトルＣＯＤＥ＿１（ｄ１’）（ｉ）（ｉ＝０，１，…，Ｒ−１）をスイッチ１０２に出力する。ここで、Ｄ１は第１コードブックのコードベクトルの総数であり、ｄ１は第１コードベクトルのインデックスである。ここで、第１コードブック１０３は、ｄ１’＝０からｄ１’＝Ｄ１−１までのｄ１’の値を順次誤差最小化部１０５から指示される。
【００４０】
加算器１０４は、ベクトル量子化対象として入力される広帯域ＬＳＰベクトルＬＳＰ（ｉ）（ｉ＝０，１，…，Ｒ−１）と、第１コードブック１０３から入力される第１コードベクトルＣＯＤＥ＿１（ｄ１’）（ｉ）（ｉ＝０，１，…，Ｒ−１）との差を下記の式（１）に従って求め、この差を第１残差ベクトルＥｒｒ＿１（ｄ１’）（ｉ）（ｉ＝０，１，…，Ｒ−１）として誤差最小化部１０５に出力する。また、加算器１０４は、ｄ１’＝０からｄ１’＝Ｄ１−１までのｄ１’それぞれに対応する第１残差ベクトルＥｒｒ＿１（ｄ１’）（ｉ）（ｉ＝０，１，…，Ｒ−１）のうち、誤差最小化部１０５の探索により最小となると分かった第１残差ベクトルＥｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）を行列演算部１０７に出力する。
【数１】
2010092827.tif 000003
【００４１】
誤差最小化部１０５は、ｄ１’＝０からｄ１’＝Ｄ１−１までのｄ１’の値を順次第１コードブック１０３に指示し、ｄ１’＝０からｄ１’＝Ｄ１−１までのｄ１’それぞれに対して、加算器１０４から入力される第１残差ベクトルＥｒｒ＿１（ｄ１’）（ｉ）（ｉ＝０，１，…，Ｒ−１）を下記の式（２）に従って二乗し、二乗誤差Ｅｒｒを求める。
【数２】
2010092827.tif 000004
【００４２】
誤差最小化部１０５は、二乗誤差Ｅｒｒが最小となる第１コードベクトルのインデックスｄ１’を第１インデックスｄ１＿ｍｉｎとして記憶する。
【００４３】
行列決定部１０６は、分類情報ｍに対応する第１マッピング行列の逆行列ＭＭ＿１−１（ｍ）を第１マッピング行列コードブックの中から選択し、行列演算部１０７に出力する。また、行列決定部１０６は、分類情報ｍに対応する第２マッピング行列の逆行列ＭＭ＿２−１（ｍ）を第２マッピング行列コードブックの中から選択し、行列演算部１１０に出力する。
【００４４】
行列演算部１０７は、下記の式（３）に従って、加算器１０４から入力される第１残差ベクトルＥｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）に対して、行列決定部１０６から入力される第１マッピング行列の逆行列ＭＭ＿１−１（ｍ）を用いて行列演算を行い、得られるＭａｐ＿Ｅｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）を加算器１０９に出力する。
【数３】
2010092827.tif 000005
【００４５】
第２コードブック１０８は、コードブックを構成する各第２コードベクトルＣＯＤＥ＿２（ｄ２）（ｉ）（ｄ２＝０，１，…，Ｄ２−１、ｉ＝０，１，…，Ｒ−１）の中から、誤差最小化部１０５からの指示ｄ２’により指示されたコードベクトルＣＯＤＥ＿２（ｄ２’）（ｉ）（ｉ＝０，１，…，Ｒ−１）を加算器１０９に出力する。ここで、Ｄ２は第２コードブックのコードベクトルの総数であり、ｄ２はコードベクトルのインデックスである。第２コードブック１０８は、ｄ２’＝０からｄ２’＝Ｄ２−１までのｄ２’の値を順次誤差最小化部１０５から指示される。
【００４６】
加算器１０９は、行列演算部１０７から入力される、行列演算後の第１残差ベクトルＭａｐ＿Ｅｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）と、第２コードブック１０８から入力される第２コードベクトルＣＯＤＥ＿２（ｄ２’）（ｉ）（ｉ＝０，１，…，Ｒ−１）との差を下記の式（４）に従って求め、この差を第２残差ベクトルＥｒｒ＿２（ｄ２’）（ｉ）（ｉ＝０，１，…，Ｒ−１）として誤差最小化部１０５に出力する。また、加算器１０９は、ｄ２’＝０からｄ２’＝Ｄ１−１までのｄ２’それぞれに対応する第２残差ベクトルＥｒｒ＿２（ｄ２’）（ｉ）（ｉ＝０，１，…，Ｒ−１）のうち、誤差最小化部１０５の探索により最小となると分かった第２残差ベクトルＥｒｒ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）を行列演算部１１０に出力する。
【数４】
2010092827.tif 000006
【００４７】
ここで、誤差最小化部１０５は、ｄ２’＝０からｄ２’＝Ｄ２−１までのｄ２’の値を順次第２コードブック１０８に指示し、ｄ２’＝０からｄ２’＝Ｄ２−１までのｄ２’それぞれに対して、加算器１０９から入力される第２残差ベクトルＥｒｒ＿２（ｄ２’）（ｉ）（ｉ＝０，１，…，Ｒ−１）を下記の式（５）に従って二乗し、二乗誤差Ｅｒｒを求める。
【数５】
2010092827.tif 000007
【００４８】
誤差最小化部１０５は、二乗誤差Ｅｒｒが最小となる第２コードベクトルのインデックスｄ２’を第２インデックスｄ２＿ｍｉｎとして記憶する。
【００４９】
行列演算部１１０は、下記の式（６）に従って、加算器１０９から入力される第２残差ベクトルＥｒｒ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）に対して、行列決定部１０６から入力される第２マッピング行列の逆行列ＭＭ＿２−１（ｍ）を用いて行列演算を行い、得られるＭａｐ＿Ｅｒｒ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）を加算器１１２に出力する。
【数６】
2010092827.tif 000008
【００５０】
第３コードブック１１１は、コードブックを構成する各第３コードベクトルＣＯＤＥ＿３（ｄ３）（ｉ）（ｄ３＝０，１，…，Ｄ３−１、ｉ＝０，１，…，Ｒ−１）の中から、誤差最小化部１０５からの指示ｄ３’により指示された第３コードベクトルＣＯＤＥ＿３（ｄ３’）（ｉ）（ｉ＝０，１，…，Ｒ−１）を加算器１１２に出力する。ここで、Ｄ３は第３コードブックのコードベクトルの総数であり、ｄ３はコードベクトルのインデックスである。第３コードブック１１１は、ｄ３’＝０からｄ３’＝Ｄ３−１までのｄ３’の値を順次誤差最小化部１０５から指示される。
【００５１】
加算器１１２は、行列演算部１１０から入力される、行列演算後の第２残差ベクトルＭａｐ＿Ｅｒｒ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）と、第３コードブック１１１から入力されるコードベクトルＣＯＤＥ＿３（ｄ３’）（ｉ）（ｉ＝０，１，…，Ｒ−１）との差を下記の式（７）に従って求め、この差を第３残差ベクトルＥｒｒ＿３（ｄ３’）（ｉ）（ｉ＝０，１，…，Ｒ−１）として誤差最小化部１０５に出力する。
【数７】
2010092827.tif 000009
【００５２】
ここで、誤差最小化部１０５は、ｄ３’＝０からｄ３’＝Ｄ３−１までのｄ３’の値を順次第３コードブック１１１に指示し、ｄ３’＝０からｄ３’＝Ｄ３−１までのｄ３’それぞれに対して、加算器１１２から入力される第３残差ベクトルＥｒｒ＿３（ｄ３’）（ｉ）（ｉ＝０，１，…，Ｒ−１）を下記の式（８）に従って二乗し、二乗誤差Ｅｒｒを求める。
【数８】
2010092827.tif 000010
【００５３】
次いで、誤差最小化部１０５は、二乗誤差Ｅｒｒが最小となる第３コードベクトルのインデックスｄ３’を第３インデックスｄ３＿ｍｉｎとして記憶する。そして、誤差最小化部１０５は、第１インデックスｄ１＿ｍｉｎ、第２インデックスｄ２＿ｍｉｎ、第３インデックスｄ３＿ｍｉｎを纏めて符号化し、符号化データとして出力する。
【００５４】
図３は、本実施の形態に係るＬＳＰベクトル逆量子化装置２００の主要な構成を示すブロック図である。ＬＳＰベクトル逆量子化装置２００は、ＬＳＰベクトル量子化装置１００において出力される符号化データを復号し、量子化ＬＳＰベクトルを生成する。
【００５５】
ＬＳＰベクトル逆量子化装置２００は、分類器２０１、符号分離部２０２、スイッチ２０３、第１コードブック２０４、行列決定部２０５、第２コードブック（ＣＢｂ）２０６、行列演算部２０７、加算器２０８、第３コードブック（ＣＢｃ）２０９、行列演算部２１０および加算器２１１を備える。なお、第１コードブック２０４は、第１コードブック１０３が備えるサブコードブック（ＣＢａ１〜ＣＢａｎ）と同一内容のサブコードブックを備え、行列決定部２０５は、行列決定部１０６が備えるマッピング行列コードブックと同一内容のマッピング行列コードブックを備える。また、第２コードブック２０６は、第２コードブック１０８が備えるコードブックと同一内容のコードブックを備え、第３コードブック２０９は、第３コードブック１１１が備えるコードブックと同一内容のコードブックを備える。
【００５６】
分類器２０１は、狭帯域ＬＳＰベクトルの複数の種類それぞれを示す複数の分類情報からなる分類用コードブックを予め格納している。分類器２０１は、ベクトル量子化対象である広帯域ＬＳＰベクトルの種類を示す分類情報を分類用コードブックの中から選択し、スイッチ２０３、および行列決定部２０５に出力する。具体的には、分類器２０１は、狭帯域ＬＳＰベクトルの各種類に対応するコードベクトル（分類用コードベクトル）からなる分類用コードブックを内蔵している。分類器２０１は、分類用コードブックを探索することにより、図示しない狭帯域ＬＳＰ量子化器から入力される量子化狭帯域ＬＳＰベクトルとの二乗誤差が最小となるコードベクトルを求める。分類器２０１は、探索により求めたコードベクトルのインデックスを、ＬＳＰベクトルの種類を示す分類情報とする。
【００５７】
符号分離部２０２は、ＬＳＰベクトル量子化装置１００から送信される符号化データを第１インデックス、第２インデックスおよび第３インデックスに分離する。符号分離部２０２は、第１インデックスを第１コードブック２０４に指示し、第２インデックスを第２コードブック２０６に指示し、第３インデックスを第３コードブック２０９に指示する。
【００５８】
スイッチ２０３は、分類器２０１から入力される分類情報に対応するサブコードブック（ＣＢａｍ）を第１コードブック２０４の中から１つ選び、そのサブコードブックの出力端子を加算器２０８に接続する。
【００５９】
第１コードブック２０４は、スイッチ２０３で選択された第１コードブック（サブコードブック）を構成する複数の第１コードベクトルの中から、符号分離部２０２により指示された第１インデックスに対応する１つの第１コードベクトルをスイッチ２０３に出力する。
【００６０】
行列決定部２０５は、分類器２０１から入力される分類情報に対応する第１マッピング行列を第１マッピング行列コードブックの中から選択し、選択した第１マッピング行列を行列演算部２０７および行列演算部２１０に出力する。また、行列決定部２０５は、分類器２０１から入力される分類情報に対応する第２マッピング行列を第２マッピング行列コードブックの中から選択し、選択した第２マッピング行列を行列演算部２１０に出力する。
【００６１】
第２コードブック２０６は、符号分離部２０２により指示された第２インデックスに対応する１つの第２コードベクトルを行列演算部２０７に出力する。
【００６２】
行列演算部２０７は、第２コードブック２０６から入力される第２コードベクトルに対して、行列決定部２０５から入力される第１マッピング行列を用いて行列演算を行い、行列演算結果を加算器２０８に出力する。
【００６３】
加算器２０８は、スイッチ２０３から入力される第１コードベクトルと、行列演算部２０７から入力される行列演算結果とを加算し、得られる加算結果を加算器２１１に出力する。
【００６４】
第３コードブック２０９は、符号分離部２０２により指示された第３インデックスに対応する１つの第３コードベクトルを行列演算部２１０に出力する。
【００６５】
行列演算部２１０は、第３コードブック２０９から入力される第３コードベクトルに対して、行列決定部２０５から入力される第２マッピング行列を用いて行列演算を行い、行列演算結果を加算器２１１に出力する。
【００６６】
加算器２１１は、加算器２０８から入力される加算結果と、行列演算部２１０から入力される行列演算結果とを加算し、得られる加算結果を量子化広帯域ＬＳＰベクトルとして出力する。
【００６７】
次に、ＬＳＰベクトル逆量子化装置２００の動作について説明する。
【００６８】
分類器２０１は、狭帯域ＬＳＰベクトルのｎ個の種類それぞれに対応するｎ個のコードベクトル（分類用コードベクトル）からなる分類用コードブックを内蔵している。分類器２０１は、コードベクトルを探索することにより、図示しない狭帯域ＬＳＰ量子化器から入力される量子化狭帯域ＬＳＰベクトルとの二乗誤差が最小となるｍ番目のコードベクトルを求める。分類器２０１は、ｍ（１≦ｍ≦ｎ）を分類情報としてスイッチ２０３および行列決定部２０５に出力する。
【００６９】
符号分離部２０２は、ＬＳＰベクトル量子化装置１００から送信される符号化データを第１インデックスｄ１＿ｍｉｎ、第２インデックスｄ２＿ｍｉｎおよび第３インデックスｄ３＿ｍｉｎに分離する。符号分離部２０２は、第１インデックスｄ１＿ｍｉｎを第１コードブック２０４に指示し、第２インデックスｄ２＿ｍｉｎを第２コードブック２０６に指示し、第３インデックスｄ３＿ｍｉｎを第３コードブック２０９に指示する。
【００７０】
スイッチ２０３は、分類器２０１から入力される分類情報ｍに対応するサブコードブックＣＢａｍを第１コードブック２０４の中から選び、そのサブコードブックの出力端子を加算器２０８に接続する。
【００７１】
第１コードブック２０４は、サブコードブックＣＢａｍを構成する各第１コードベクトルＣＯＤＥ＿１（ｄ１）（ｉ）（ｄ１＝０，１，…，Ｄ１−１、ｉ＝０，１，…，Ｒ−１）の中から、符号分離部２０２からの指示ｄ１＿ｍｉｎにより指示された第１コードベクトルＣＯＤＥ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）をスイッチ２０３に出力する。
【００７２】
行列決定部２０５は、分類器２０１から入力される分類情報ｍに対応する第１マッピング行列ＭＭ＿１（ｍ）を第１マッピング行列コードブックの中から選択し、行列演算部２０７および行列演算部２１０に出力する。また、行列決定部２０５は、分類器２０１から入力される分類情報ｍに対応する第２マッピング行列ＭＭ＿２（ｍ）を第２マッピング行列コードブックの中から選択し、行列演算部２１０に出力する。
【００７３】
第２コードブック２０６は、第２コードブックを構成する各第２コードベクトルＣＯＤＥ＿２（ｄ２）（ｉ）（ｄ２＝０，１，…，Ｄ２−１、ｉ＝０，１，…，Ｒ−１）の中から、符号分離部２０２からの指示ｄ２＿ｍｉｎにより指示された第２コードベクトルＣＯＤＥ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）を行列演算部２０７に出力する。
【００７４】
行列演算部２０７は、下記の式（９）に従って、第２コードブック２０６から入力される第２コードベクトルＣＯＤＥ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）に対して、行列決定部２０５から入力される第１マッピング行列ＭＭ＿１（ｍ）を用いて行列演算を行い、得られる行列演算結果ＴＭＰ＿１（ｉ）（ｉ＝０，１，…，Ｒ−１）を加算器２０８に出力する。
【数９】
2010092827.tif 000011
【００７５】
加算器２０８は、下記の式（１０）に従って、行列演算部２０７から入力される行列演算結果ＴＭＰ＿１（ｉ）と、スイッチ２０３から入力される第１コードベクトルＣＯＤＥ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）とを加算し、得られる加算結果ＴＭＰ＿２（ｉ）（ｉ＝０，１，…，Ｒ−１）を加算器２１１に出力する。
【数１０】
2010092827.tif 000012
【００７６】
第３コードブック２０９は、第３コードブックを構成する各第３コードベクトルＣＯＤＥ＿３（ｄ３）（ｉ）（ｄ３＝０，１，…，Ｄ３−１、ｉ＝０，１，…，Ｒ−１）の中から、符号分離部２０２からの指示ｄ３＿ｍｉｎにより指示された第３コードベクトルＣＯＤＥ＿３（ｄ３＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）を行列演算部２１０に出力する。
【００７７】
行列演算部２１０は、下記の式（１１）に従って、第３コードブック２０９から入力される第３コードベクトルＣＯＤＥ＿３（ｄ３＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）に対して、行列決定部２０５から入力される第１マッピング行列ＭＭ＿１（ｍ）を用いて行列演算を行い、行列演算結果ＴＭＰ＿３（ｉ）（ｉ＝０，１，…，Ｒ−１）を得る。そして、行列演算部２１０は、下記の式（１２）に従って、行列演算結果ＴＭＰ＿３（ｉ）（ｉ＝０，１，…，Ｒ−１）に対して、行列決定部２０５から入力される第２マッピング行列ＭＭ＿２（ｍ）を用いて行列演算を行い、得られる行列演算結果ＴＭＰ＿４（ｉ）（ｉ＝０，１，…，Ｒ−１）を加算器２１１に出力する。
【数１１】
2010092827.tif 000013
【数１２】
2010092827.tif 000014
【００７８】
加算器２１１は、下記の式（１３）に従って、加算器２０８から入力される加算結果ＴＭＰ＿２（ｉ）（ｉ＝０，１，…，Ｒ−１）と、行列演算部２１０から入力される行列演算結果ＴＭＰ＿４（ｉ）（ｉ＝０，１，…，Ｒ−１）とを加算し、加算結果となるベクトルＱ＿ＬＳＰ（ｉ）（ｉ＝０，１，…，Ｒ−１）を量子化広帯域ＬＳＰベクトルとして出力する。
【数１３】
2010092827.tif 000015
【００７９】
ＬＳＰベクトル量子化装置１００およびＬＳＰベクトル逆量子化装置２００で用いられる第１コードブック、マッピング行列コードブック、第２コードブックおよび第３コードブックは、予め学習により求めて作成されたものであり、これらのコードブックの学習方法について説明する。
【００８０】
第１コードブック１０３および第１コードブック２０４が備える第１コードブックを学習により求めるためには、まず多数の学習用の音声データから得られる多数の、例えばＶ個のＬＳＰベクトルを用意する。次いで、Ｖ個のＬＳＰベクトルを種類（ｎ種類）毎にグループ化し、各グループに属するＬＳＰベクトルを用いて、ＬＢＧ（Linde Buzo Gray）アルゴリズム等の学習アルゴリズムに従いＤ１個の第１コードベクトルＣＯＤＥ＿１（ｄ１）（ｉ）（ｄ１＝０，１，…，Ｄ１−１、ｉ＝０，１，…，Ｒ−１）を求め、各サブコードブックを生成する。
【００８１】
第２コードブック１０８および第２コードブック２０６が備える第２コードブックを学習により求めるためには、上記のＶ個のＬＳＰベクトルを用いて、上記方法で求めた第１コードブックによる１段目のベクトル量子化を行い、加算器１０４が出力する第１残差ベクトルＥｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）をＶ個求める。次いで、Ｖ個の第１残差ベクトルＥｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）を用いて、ＬＢＧ(Linde Buzo Gray)アルゴリズム等の学習アルゴリズムに従いＤ２個の第２コードベクトルＣＯＤＥ＿２（ｄ２）（ｉ）（ｄ２＝０，１，…，Ｄ１−１、ｉ＝０，１，…，Ｒ−１）を求め、第２コードブックを生成する。
【００８２】
行列決定部１０６および行列決定部２０５が備える第１マッピング行列コードブックを学習により求めるためには、上記のＶ個のＬＳＰベクトルを用いて、上記方法で求めた第１コードブックによる１段目のベクトル量子化を行い、加算器１０４が出力する第１残差ベクトルＥｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）をＶ個求める。次いで、求めたＶ個の第１残差ベクトルを種類（ｎ種類）毎にグループ化し、各グループに属する第１残差ベクトル集合のセントロイド（平均）Ｃ１を求める。
【００８３】
次いで、第１コードブックと同様にして、第２コードブックにおいても、すべての第２コードベクトルの平均を計算することによりセントロイドＤ１を求める。
【００８４】
このようにして各種類（ｎ種類）において、第１コードブックのセントロイドＣ１および第２コードブックのセントロイドＤ１を求める。そして、種類ｍに対応するセントロイドＤ１に対して行列演算を行い、セントロイドＣ１とセントロイドＤ１とが一致する行列を求め、求めた行列を種類ｍに対応する第１マッピング行列とする。各種類（ｎ種類）において第１マッピング行列を求め、各種類の第１マッピング行列に通し番号を付して格納することにより、第１マッピング行列コードブックを生成する。
【００８５】
例えば、ベクトルの次元数Ｒが２次元の場合、種類ｍにおける第１マッピング行列ＭＭ＿１（ｄ２）は下記の式（１４）の連立方程式を解くことにより求められる。
【数１４】
2010092827.tif 000016
【００８６】
また、ベクトルの次元数Ｒが３次元以上の場合、２次元単位でマッピング行列を求め、得られたマッピング行列の行列積を求めることにより、第１マッピング行列ＭＭ＿１（ｍ）を生成することができる。例えば、ベクトルの次元数Ｒが３次元の場合、下記の式（１５）の連立方程式を解くことにより、１，２次に相当するベクトル要素をマッピングできる行列ＴＭＰ＿１を求める。
【数１５】
2010092827.tif 000017
【００８７】
次いで、下記の式（１６）の連立方程式を解くことにより、２，３次に相当するベクトル要素をマッピングできる行列ＴＭＰ＿２を求める。
【数１６】
2010092827.tif 000018
【００８８】
そして、下記の式（１７）に従って行列ＴＭＰ＿１および行列ＴＭＰ＿２の行列積を求めることにより、第１マッピング行列ＭＭ＿１（ｍ）を生成する。
【数１７】
2010092827.tif 000019
【００８９】
このように、ベクトルの次元数Ｒが３次元以上の場合、２次元単位で行列を求め、最終的にすべての行列の行列積を求めることによりマッピング行列を求める。
【００９０】
第３コードブック１１１および第３コードブック２０９が備える第３コードブックを学習により求めるためには、上記のＶ個のＬＳＰベクトルを用いて、上記方法で求めた第１コードブックによる１段目のベクトル量子化を行う。次いで、上記方法で求めた第１マッピング行列コードブックを用いて、第１マッピング行列演算後の第１残差ベクトルＭａｐ＿Ｅｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）をＶ個求める。次いで、上記方法で求めた第２コードブックによる２段目のベクトル量子化を行い、加算器１０９が出力する第２残差ベクトルＥｒｒ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）をＶ個求める。次いで、Ｖ個の第２残差ベクトルＥｒｒ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）を用いて、ＬＢＧ(Linde Buzo Gray)アルゴリズム等の学習アルゴリズムに従いＤ３個の第３コードベクトルＣＯＤＥ＿３（ｄ３）（ｉ）（ｄ３＝０，１，…，Ｄ１−１、ｉ＝０，１，…，Ｒ−１）を求め、第３コードブックを生成する。
【００９１】
行列決定部１０６および行列決定部２０５が備える第２マッピング行列コードブックを学習により求めるためには、上記のＶ個のＬＳＰベクトルを用いて、上記方法で求めた第１コードブックによる１段目のベクトル量子化を行い、上記方法で求めた第１マッピング行列を用いて行列演算を行い、上記方法で求めた第２コードブックによる２段目のベクトル量子化を行い、加算器１０９が出力する第２残差ベクトルＥｒｒ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）をＶ個求める。次いで、求めたＶ個の第２残差ベクトルを種類（ｎ種類）毎にグループ化し、各グループに属する第２残差ベクトル集合のセントロイドＣ２を求める。
【００９２】
次いで、第３コードブックにおいても、すべての第３コードベクトルの平均を計算することによりセントロイドＤ２を求める。
【００９３】
各種類（ｎ種類）において、セントロイドＣ２および第３コードブックのセントロイドＤ２を求める。そして、種類ｍに対応するセントロイドＤ２に対して行列演算を行い、セントロイドＣ２とセントロイドＤ２とが一致する行列を求め、求めた行列を種類ｍに対応する第２マッピング行列とする。各種類（ｎ種類）において第２マッピング行列を求め、各種類の第２マッピング行列に通し番号を付して格納することにより、第２マッピング行列コードブックを生成する。
【００９４】
第２マッピング行列ＭＭ＿２（ｍ）は、上記の第１マッピング行列ＭＭ＿１（ｍ）を求める方法において、セントロイドＣ１をセントロイドＣ２に置き換え、セントロイドＤ１をセントロイドＤ２に置き換えた後に、同様の手順を行うことにより求めることができる。
【００９５】
これらの学習の方法は一例であって、上記の方法以外で各コードブックを生成しても良い。
【００９６】
このように、本実施の形態によれば、広帯域ＬＳＰベクトルとの相関を有する狭帯域ＬＳＰベクトルの種類により１段目のベクトル量子化のコードブックを切り換え、１段目のベクトル量子化誤差（第１残差ベクトル）の統計的な分布の偏りが種類毎に異なる多段ベクトル量子化において、狭帯域ＬＳＰベクトルの分類結果に対応する第１マッピング行列を用いて、第１残差ベクトルに対する行列演算を行う。これにより、２段目のコードベクトルの分布の偏りを１段目のベクトル量子化誤差の統計的な分布の偏りに適応させることができ、従って広帯域ＬＳＰベクトルの量子化精度を向上することができる。また、狭帯域ＬＳＰベクトルの分類結果に対応する第２マッピング行列を用いて、第２残差ベクトルに対する行列演算を行う。これにより、３段目のコードベクトルの分布の偏りを２段目のベクトル量子化誤差の分布の偏りに適応させることができ、従って、広帯域ＬＳＰベクトルの量子化精度を向上することができる。
【００９７】
図４は、本実施の形態に係るＬＳＰベクトル量子化の効果を概念的に説明するための図である。図４において、「回転」と書いてある矢印は、第２コードベクトルの集合に対してマッピング行列を用いて行列演算する処理を示す。図４に示すように、本実施の形態においては、狭帯域ＬＳＰの種類に対応する第１コードブックＣＢａｍ（ｍ＜＝ｎ）を用いてベクトル量子化を行って得られる量子化誤差ベクトルに対して、この種類に対応するマッピング行列を用いて行列演算する。これにより行列演算後の量子化誤差ベクトルの集合の分布の偏りを、２段目のベクトル量子化に用いる共通の第２コードブックＣＢｂを構成する第２コードベクトルの集合の分布の偏りに一致させることができる。従って、２段目のベクトル量子化の量子化精度を向上することができる。
【００９８】
なお、本実施の形態においては、１段目のベクトル量子化誤差の統計的な分布の偏りを２段目のコードベクトルの分布の偏りに応じて変更し、２段目のベクトル量子化誤差の統計的な分布の偏りを３段目のコードベクトルの分布の偏りに応じて変更する場合を例にとって説明した。ただし、本発明はこれに限定されず、２段目のベクトル量子化対象に用いるコードベクトルの分布の偏りを１段目のベクトル量子化誤差の統計的な分布の偏りに応じて変更し、３段目のベクトル量子化対象に用いるコードベクトルの分布の偏りを２段目のベクトル量子化誤差の統計的な分布の偏りに応じて変更してもよい。これによっても、本実施の形態と同様に、広帯域ＬＳＰベクトルの量子化精度を向上する効果が得られる。
【００９９】
また、本実施の形態では、行列決定部１０６および行列決定部２０５が備えるマッピング行列コードブックを構成するマッピング行列は狭帯域ＬＳＰベクトルの種類に対応している場合を例にとって説明した。ただし、本発明はこれに限定されず、行列決定部１０６および行列決定部２０５が備えるマッピング行列コードブックを構成するマッピング行列は、音声の特徴を分類した各種類に対応していてもよい。かかる場合、分類器１０１は、狭帯域ＬＳＰベクトルではなく音声の特徴を表すパラメータを音声特徴情報として入力し、入力された音声特徴情報に対応する音声特徴の種類を分類情報としてスイッチ１０２および行列決定部１０６に出力する。例えば、ＶＭＲ−ＷＢ(Variable-Rate Multimode Wideband Speech Codec)のように、音声の有声性、雑音性等の特徴でエンコーダのタイプを切り換えるというような符号化装置に本発明を適用する場合、エンコーダのタイプの情報をそのまま音声特徴量として用いてよい。
【０１００】
また、本実施の形態では、ＬＳＰベクトルに対して３段のベクトル量子化を行う場合を例にとって説明したが、本発明はこれに限定されず、２段のベクトル量子化、もしくは、４段以上のベクトル量子化を行う場合にも適用できる。
【０１０１】
また、本実施の形態では、ＬＳＰベクトルに対して３段の多段ベクトル量子化を行う場合を例にとって説明したが、本発明はこれに限定されず、分割ベクトル量子化と併用してベクトル量子化を行う場合にも適用できる。
【０１０２】
また、本実施の形態では、量子化対象として広帯域ＬＳＰベクトルを例にとって説明したが、量子化対象はこれに限定されず、広帯域ＬＳＰベクトル以外のベクトルであっても良い。
【０１０３】
また、本実施の形態では、マッピング行列を用いて行列演算することにより、コードベクトルの分布の偏りを移動させる場合を例にとって説明した。しかし、本発明はこれに限定されず、回転行列を用いて行列演算することにより、コードベクトルの分布の偏りを移動させてもよい。
【０１０４】
また、本実施の形態では、ＬＳＰベクトル逆量子化装置２００は、ＬＳＰベクトル量子化装置１００において出力される符号化データを復号するとした。ただし、本発明はこれに限定されず、ＬＳＰベクトル逆量子化装置２００で復号可能な形式の符号化データであれば、ＬＳＰベクトル逆量子化装置で受信して復号することが可能であることは言うまでもない。
【０１０５】
また、本実施の形態では、ＬＳＰベクトル量子化装置１００およびＬＳＰベクトル逆量子化装置２００が、Ｒ次元のベクトルに対してＲ×Ｒのマッピング行列を用いて行列演算する例を挙げて説明した。ただし、本発明はこれに限定されず、ＬＳＰベクトル量子化装置１００およびＬＳＰベクトル逆量子化装置２００は、例えば、２×２のマッピング行列を複数用意し、Ｒ次元のベクトルの２次毎ベクトル要素に対して複数の２×２のマッピング行列をそれぞれ用いて行列演算してもよい。この構成によれば、マッピング行列を格納するのに必要なメモリを削減することができ、さらに、行列演算に要する演算量を削減することができる。
【０１０６】
例えば、ベクトルが６次元であり、３つの２×２のマッピング行列（ＭＭＡ＿１（ｍ）、ＭＭＢ＿１（ｍ）およびＭＭＣ＿１（ｍ））を用いて行列演算する場合、上記の式（３）は下記の式（１８）に示すようになり、上記の式（８）は下記の式（１９）に示すようになる。
【数１８】
2010092827.tif 000020
【数１９】
2010092827.tif 000021
【０１０７】
ここで、マッピング行列（ＭＭＡ＿１（ｍ）、ＭＭＢ＿１（ｍ）およびＭＭＣ＿１（ｍ））を学習により求めるには、上述したベクトルの次元数Ｒが２次元である場合の学習方法（上記の式（１４））を、２次毎のベクトル要素に対して行えばよい。
【０１０８】
また、本実施の形態に係るベクトル量子化装置およびベクトル逆量子化装置は、音声信号や楽音信号等を符号化／復号するＣＥＬＰ符号化装置／ＣＥＬＰ復号装置に用いることが可能である。ＣＥＬＰ符号化装置においては、入力信号を線形予測分析して得られた線形予測係数から変換されたＬＳＰを入力して量子化処理を行い、量子化された量子化ＬＳＰを合成フィルタに出力する。例えば、本実施の形態に係るＬＳＰベクトル量子化装置１００をＣＥＬＰ型音声符号化装置に適用する場合は、量子化ＬＳＰを表す量子化ＬＳＰ符号を符号化データとして出力するＬＳＰ量子化部のところに、本実施の形態に係るＬＳＰベクトル量子化装置１００を配置する。これにより、ベクトル量子化精度を向上することが可能となるため、復号時の音声品質も向上する。一方、ＣＥＬＰ復号装置においては、受信した多重化符号データを分離して得られた量子化ＬＳＰ符号から量子化ＬＳＰを復号する。本発明に係るＬＳＰベクトル逆量子化装置２００をＣＥＬＰ型音声復号装置に適用する場合には、復号した量子化ＬＳＰを合成フィルタに出力するＬＳＰ逆量子化部のところに、本実施の形態に係るＬＳＰベクトル逆量子化装置２００を配置すればよく、上記と同様の作用効果が得られる。以下、図５および図６を用いて本実施の形態に係るＬＳＰベクトル量子化装置１００およびＬＳＰベクトル逆量子化装置２００を備えるＣＥＬＰ符号化装置４００およびＣＥＬＰ復号装置４５０について説明する。
【０１０９】
図５は、本実施の形態に係るＬＳＰベクトル量子化装置１００を備えるＣＥＬＰ符号化装置４００の主要な構成を示すブロック図である。ＣＥＬＰ符号化装置４００は、入力される音声・楽音信号を複数サンプルずつ区切り、複数サンプルを１フレームとしてフレーム毎に符号化を行う。
【０１１０】
前処理部４０１は、入力される音声信号または楽音信号に対して、ＤＣ成分を取り除くハイパスフィルタ処理を行い、また後続する符号化処理の性能改善のための波形整形処理もしくはプリエンファシス処理を行う。そして、前処理部４０１は、これらの処理により得られる信号ＸｉｎをＬＳＰ分析部４０２および加算器４０５に出力する。
【０１１１】
ＬＳＰ分析部４０２は、前処理部４０１から入力される信号Ｘｉｎを用いて線形予測分析を行い、得られるＬＰＣをＬＳＰベクトルに変換してＬＳＰベクトル量子化部４０３に出力する。
【０１１２】
ＬＳＰベクトル量子化部４０３は、ＬＳＰ分析部４０２から入力されるＬＳＰベクトルに対して量子化を行う。ＬＳＰベクトル量子化部４０３は、得られる量子化ＬＳＰベクトルをフィルタ係数として合成フィルタ４０４に出力し、量子化ＬＳＰ符号（Ｌ）を多重化部４１４に出力する。ここで、ＬＳＰベクトル量子化部４０３としては、本実施の形態に係るＬＳＰベクトル量子化装置１００を適用する。すなわち、ＬＳＰベクトル量子化部４０３の具体的な構成および動作は、ＬＳＰベクトル量子化装置１００と同様である。この場合、ＬＳＰベクトル量子化装置１００に入力される広帯域ＬＳＰベクトルと、ＬＳＰベクトル量子化部４０３に入力されるＬＳＰベクトルとは対応する。また、ＬＳＰベクトル量子化装置１００が出力する符号化データと、ＬＳＰベクトル量子化部４０３が出力する量子化ＬＳＰ符号（Ｌ）とは対応する。合成フィルタ４０４に入力されるフィルタ係数は、ＬＳＰベクトル量子化部４０３内において量子化ＬＳＰ符号（Ｌ）を用いて逆量子化して得られた量子化ＬＳＰベクトルである。なお、ＬＳＰベクトル量子化装置１００に入力される狭帯域ＬＳＰベクトルは、例えばＣＥＬＰ符号化装置４００の外部から入力される。例えば、広帯域ＣＥＬＰ符号化部（ＣＥＬＰ符号化装置４００に対応）と狭帯域ＣＥＬＰ符号化部とを有するスケーラブル符号化装置（図示せず）にこのＬＳＰベクトル量子化装置１００を適用する場合には、狭帯域ＣＥＬＰ符号化部から出力される狭帯域ＬＳＰベクトルがＬＳＰベクトル量子化装置１００に入力される。
【０１１３】
合成フィルタ４０４は、ＬＳＰベクトル量子化部４０３から入力される量子化ＬＳＰベクトルに基づくフィルタ係数を用いて、後述する加算器４１１から入力される駆動音源に対して合成処理を行い、生成される合成信号を加算器４０５に出力する。
【０１１４】
加算器４０５は、合成フィルタ４０４から入力される合成信号の極性を反転させ、前処理部４０１から入力される信号Ｘｉｎに加算することにより誤差信号を算出し、誤差信号を聴覚重み付け部４１２に出力する。
【０１１５】
適応音源符号帳４０６は、過去に加算器４１１から入力された駆動音源をバッファに記憶しており、パラメータ決定部４１３から入力される適応音源ラグ符号（Ａ）によって特定される切り出し位置から１フレーム分のサンプルをバッファより切り出し、適応音源ベクトルとして乗算器４０９に出力する。ここで、適応音源符号帳４０６は、加算器４１１から駆動音源が入力されるたびにバッファの内容を更新する。
【０１１６】
量子化利得生成部４０７は、パラメータ決定部４１３から入力される量子化音源利得符号（Ｇ）によって、量子化適応音源利得と量子化固定音源利得とを決定し、それぞれを乗算器４０９と乗算器４１０とに出力する。
【０１１７】
固定音源符号帳４０８は、パラメータ決定部４１３から入力される固定音源ベクトル符号（Ｆ）によって特定される形状を有するベクトルを固定音源ベクトルとして乗算器４１０に出力する。
【０１１８】
乗算器４０９は、量子化利得生成部４０７から入力される量子化適応音源利得を、適応音源符号帳４０６から入力される適応音源ベクトルに乗じて、加算器４１１に出力する。
【０１１９】
乗算器４１０は、量子化利得生成部４０７から入力される量子化固定音源利得を、固定音源符号帳４０８から入力される固定音源ベクトルに乗じて、加算器４１１に出力する。
【０１２０】
加算器４１１は、乗算器４０９から入力される利得乗算後の適応音源ベクトルと、乗算器４１０から入力される利得乗算後の固定音源ベクトルとを加算し、加算結果を駆動音源として合成フィルタ４０４および適応音源符号帳４０６に出力する。ここで、適応音源符号帳４０６に入力される駆動音源は、適応音源符号帳４０６のバッファに記憶される。
【０１２１】
聴覚重み付け部４１２は、加算器４０５から入力される誤差信号に対して聴覚的重み付け処理を行い、符号化歪みとしてパラメータ決定部４１３に出力する。
【０１２２】
パラメータ決定部４１３は、聴覚重み付け部４１２から入力される符号化歪みを最小とする適応音源ラグを適応音源符号帳４０６から選択し、選択結果を示す適応音源ラグ符号（Ａ）を適応音源符号帳４０６および多重化部４１４に出力する。ここで、適応音源ラグとは、適応音源ベクトルを切り出す位置を示すパラメータである。また、パラメータ決定部４１３は、聴覚重み付け部４１２から出力される符号化歪みを最小とする固定音源ベクトルを固定音源符号帳４０８から選択し、選択結果を示す固定音源ベクトル符号（Ｆ）を固定音源符号帳４０８および多重化部４１４に出力する。また、パラメータ決定部４１３は、聴覚重み付け部４１２から出力される符号化歪みを最小とする量子化適応音源利得と量子化固定音源利得とを量子化利得生成部４０７から選択し、選択結果を示す量子化音源利得符号（Ｇ）を量子化利得生成部４０７および多重化部４１４に出力する。
【０１２３】
多重化部４１４は、ＬＳＰベクトル量子化部４０３から入力される量子化ＬＳＰ符号（Ｌ）、パラメータ決定部４１３から入力される適応音源ラグ符号（Ａ）、固定音源ベクトル符号（Ｆ）、および量子化音源利得符号（Ｇ）を多重化して符号化情報を出力する。
【０１２４】
図６は、本実施の形態に係るＬＳＰベクトル逆量子化装置２００を備えるＣＥＬＰ復号装置４５０の主要な構成を示すブロック図である。
【０１２５】
図６において、分離部４５１は、ＣＥＬＰ符号化装置４００から伝送される符号化情報に対して分離処理を行い、量子化ＬＳＰ符号（Ｌ）、適応音源ラグ符号（Ａ）、量子化音源利得符号（Ｇ）、固定音源ベクトル符号（Ｆ）を得る。分離部４５１は、量子化ＬＳＰ符号（Ｌ）をＬＳＰベクトル逆量子化部４５２に出力し、適応音源ラグ符号（Ａ）を適応音源符号帳４５３に出力し、量子化音源利得符号（Ｇ）を量子化利得生成部４５４に出力し、固定音源ベクトル符号（Ｆ）を固定音源符号帳４５５に出力する。
【０１２６】
ＬＳＰベクトル逆量子化部４５２は、分離部４５１から入力される量子化ＬＳＰ符号（Ｌ）から量子化ＬＳＰベクトルを復号し、量子化ＬＳＰベクトルをフィルタ係数として合成フィルタ４５９に出力する。ここで、ＬＳＰベクトル逆量子化部４５２としては、本実施の形態に係るＬＳＰベクトル逆量子化装置２００を適用する。すなわち、ＬＳＰベクトル逆量子化部４５２の具体的な構成および動作は、ＬＳＰベクトル逆量子化装置２００と同様である。この場合、ＬＳＰベクトル逆量子化装置２００に入力される符号化データと、ＬＳＰベクトル逆量子化部４５２に入力される量子化ＬＳＰ符号（Ｌ）とは対応する。また、ＬＳＰベクトル逆量子化装置２００が出力する量子化広帯域ＬＳＰベクトルと、ＬＳＰベクトル逆量子化部４５２が出力する量子化ＬＳＰベクトルとは対応する。なお、ＬＳＰベクトル逆量子化装置２００に入力される狭帯域ＬＳＰベクトルは、例えばＣＥＬＰ復号装置４５０の外部から入力される。例えば、広帯域ＣＥＬＰ復号部（ＣＥＬＰ復号装置４５０に対応）と狭帯域ＣＥＬＰ復号部とを有するスケーラブル復号装置（図示せず）にこのＬＳＰベクトル逆量子化装置２００を適用する場合には、狭帯域ＣＥＬＰ復号部から出力される狭帯域ＬＳＰベクトルがＬＳＰベクトル逆量子化装置２００に入力される。
【０１２７】
適応音源符号帳４５３は、分離部４５１から入力される適応音源ラグ符号（Ａ）により特定される切り出し位置から１フレーム分のサンプルをバッファより切り出し、切り出したベクトルを適応音源ベクトルとして乗算器４５６に出力する。ここで、適応音源符号帳４５３は、加算器４５８から駆動音源が入力されるたびにバッファの内容を更新する。
【０１２８】
量子化利得生成部４５４は、分離部４５１から入力される量子化音源利得符号（Ｇ）が示す量子化適応音源利得と量子化固定音源利得とを復号し、量子化適応音源利得を乗算器４５６に出力し、量子化固定音源利得を乗算器４５７に出力する。
【０１２９】
固定音源符号帳４５５は、分離部４５１から入力される固定音源ベクトル符号（Ｆ）が示す固定音源ベクトルを生成し、乗算器４５７に出力する。
【０１３０】
乗算器４５６は、適応音源符号帳４５３から入力される適応音源ベクトルに、量子化利得生成部４５４から入力される量子化適応音源利得を乗じて加算器４５８に出力する。
【０１３１】
乗算器４５７は、固定音源符号帳４５５から入力される固定音源ベクトルに、量子化利得生成部４５４から入力される量子化固定音源利得を乗じて加算器４５８に出力する。
【０１３２】
加算器４５８は、乗算器４５６から入力される利得乗算後の適応音源ベクトルと、乗算器４５７から入力される利得乗算後の固定音源ベクトルとを加算して駆動音源を生成し、生成される駆動音源を合成フィルタ４５９および適応音源符号帳４５３に出力する。ここで、適応音源符号帳４５３に入力される駆動音源は、適応音源符号帳４５３のバッファに記憶される。
【０１３３】
合成フィルタ４５９は、加算器４５８から入力される駆動音源と、ＬＳＰベクトル逆量子化部４５２で復号されたフィルタ係数とを用いて合成処理を行い、生成される合成信号を後処理部４６０に出力する。
【０１３４】
後処理部４６０は、合成フィルタ４５９から入力される合成信号に対して、ホルマント強調やピッチ強調などの音声の主観的な品質を改善する処理、および定常雑音の主観的品質を改善する処理を施し、得られる音声信号または楽音信号を出力する。
【０１３５】
このように、本実施の形態に係るＣＥＬＰ符号化装置／ＣＥＬＰ復号装置によれば、本実施の形態によるベクトル量子化装置／ベクトル逆量子化装置を用いることにより、符号化時にベクトル量子化精度を向上させることが可能となるため、復号時の音声品質も向上させることができる。
【０１３６】
なお、本実施の形態では、ＣＥＬＰ復号装置４５０は、ＣＥＬＰ符号化装置４００において出力される符号化データを復号する場合について説明した。しかし、本発明はこれに限定されず、ＣＥＬＰ復号装置４５０で復号可能な形式の符号化データであれば、ＣＥＬＰ復号装置で受信して復号することが可能であることは言うまでもない。
【０１３７】
以上、本発明の各実施の形態について説明した。
【０１３８】
なお、本発明に係るベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法は、上記各実施の形態に限定されず、種々変更して実施することが可能である。
【０１３９】
たとえば、上記実施の形態では、ベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法において、音声信号または楽音信号を対象として説明したが、その他の可能な信号に適用しても良い。
【０１４０】
また、ＬＳＰは、ＬＳＦ(Line Spectral Frequency)と呼ばれることもあり、ＬＳＰをＬＳＦと読み替えてもよい。また、ＬＳＰの代わりにＩＳＰ(Immittance Spectrum Pairs)をスペクトルパラメータとして量子化する場合はＬＳＰをＩＳＰに読み替え、ＩＳＰ量子化／逆量子化装置として本実施の形態を利用することができる。ＬＳＰの代わりにＩＳＦ(Immittance Spectrum Frequency)をスペクトルパラメータとして量子化する場合はＬＳＰをＩＳＦに読み替え、ＩＳＦ量子化／逆量子化装置として本実施の形態を利用することができる。
【０１４１】
また、本発明に係るベクトル量子化装置およびベクトル逆量子化装置は、音声や楽音等の伝送を行う移動体通信システムにおける通信端末装置や基地局装置に搭載することが可能である。これにより上記と同様の作用効果を有する通信端末装置や基地局装置を提供することができる。
【０１４２】
また、ここでは、本発明をハードウェアで構成する場合を例にとって説明したが、本発明をソフトウェアで実現することも可能である。例えば、本発明に係るベクトル量子化方法およびベクトル逆量子化方法のアルゴリズムをプログラミング言語によって記述し、このプログラムをメモリに記憶しておいて情報処理手段によって実行させることにより、本発明に係るベクトル量子化装置およびベクトル逆量子化装置と同様の機能を実現することができる。
【０１４３】
また、上記各実施の形態の説明に用いた各機能ブロックは、典型的には集積回路であるＬＳＩとして実現される。これらは個別に１チップ化されても良いし、一部または全てを含むように１チップ化されてもよい。
【０１４４】
また、ここではＬＳＩとしたが、集積度の違いによって、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩ等と呼称されることもある。
【０１４５】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路または汎用プロセッサで実現しても良い。ＬＳＩ製造後に、プログラム化することが可能なＦＰＧＡ（Fｉeld Programmable Gate Array）や、ＬＳＩ内部の回路セルの接続もしくは設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【０１４６】
さらに、半導体技術の進歩または派生する別技術により、ＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適用等が可能性としてあり得る。
【０１４７】
２００９年２月１３日出願の特願２００９−０３１６５１の日本出願に含まれる明細書、図面および要約書の開示内容は、すべて本願に援用される。
【産業上の利用可能性】
【０１４８】
本発明に係るベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法は、音声符号化および音声復号等の用途に適用することができる。
【図１】
2010092827.tif 000022
【図２】
2010092827.tif 000023
【図３】
2010092827.tif 000024
【図４】
2010092827.tif 000025
【図５】
2010092827.tif 000026
【図６】
2010092827.tif 000027
【手続補正書】
【提出日】平成23年5月26日(2011.5.26)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＳＰ（Line Spectral Pairs）パラメータのベクトル量子化を行うベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法に関し、特にインターネット通信に代表されるパケット通信システムや、移動通信システム等の分野で、音声信号の伝送を行う音声符号化・復号化装置に用いられるＬＳＰパラメータのベクトル量子化を行うベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法に関する。
【背景技術】
【０００２】
ディジタル無線通信や、インターネット通信に代表されるパケット通信、あるいは音声蓄積などの分野においては、電波などの伝送路容量や記憶媒体の有効利用を図るため、音声信号の符号化・復号技術が不可欠である。その中で特に、ＣＥＬＰ（Code Excited Linear Prediction）方式の音声符号化・復号技術が主流の技術となっている。
【０００３】
ＣＥＬＰ方式の音声符号化装置は、予め記憶された音声モデルに基づいて入力音声を符号化する。具体的には、ＣＥＬＰ方式の音声符号化装置は、ディジタル化された音声信号を１０〜２０ｍｓ程度の一定時間間隔のフレームに区切り、各フレーム内の音声信号に対して線形予測分析を行い線形予測係数（ＬＰＣ：Linear Prediction Coefficient）と線形予測残差ベクトルを求め、線形予測係数と線形予測残差ベクトルとをそれぞれ個別に符号化する。線形予測係数を符号化する方法としては、線形予測係数をＬＳＰ（Line Spectral Pairs）パラメータに変換し、ＬＳＰパラメータを符号化することが一般的である。また、ＬＳＰパラメータを符号化する方法としては、ＬＳＰパラメータに対してベクトル量子化を行うことが多い。ベクトル量子化とは、代表的なベクトル（コードベクトル）を複数持つ符号帳（コードブック）の中から、量子化対象のベクトルに最も近いコードベクトルを選択し、選択されたコードベクトルに付与されているインデックス（符号）を量子化結果として出力する方法である。ベクトル量子化においては、使用できる情報量に応じてコードブックのサイズが決まる。例えば、８ビットの情報量でベクトル量子化を行う場合、コードブックは２５６（＝２８）種類のコードベクトルを用いて構成することができる。
【０００４】
また、ベクトル量子化における情報量、計算量を低減するために、多段ベクトル量子化（ＭＳＶＱ：Multi-Stage Vector Quantization）、または分割ベクトル量子化（ＳＶＱ：Split Vector Quantization）などの様々な技術が用いられている（例えば、非特許文献１参照）。多段ベクトル量子化とは、ベクトルを一度ベクトル量子化した後に量子化誤差を更にベクトル量子化する方法であり、分割ベクトル量子化とは、ベクトルを複数に分割して得られた分割ベクトルをそれぞれ量子化する方法である。
【０００５】
また、量子化対象となるＬＳＰとの相関を有する音声的特徴（例えば、音声の有声性、無声性、モード等の情報）に応じて、ベクトル量子化に用いるコードブックを適宜切り替えることにより、ＬＳＰの特徴に適したベクトル量子化を行い、ＬＳＰ符号化の性能をさらに高める技術として分類ベクトル量子化（分類ＶＱ）がある（例えば、非特許文献２参照）。例えば、スケーラブル符号化においては、広帯域ＬＳＰ（広帯域信号から求められるＬＳＰ）と狭帯域ＬＳＰ（狭帯域信号から求められるＬＳＰ）との相互関係を利用し、狭帯域ＬＳＰに対して特徴によって分類を行い、狭帯域ＬＳＰの特徴の種類（以下、狭帯域ＬＳＰの種類と略称する）に応じて多段ベクトル量子化の１段目のコードブックを切り替え、広帯域ＬＳＰをベクトル量子化する。
【０００６】
また、多段ベクトル量子化と分類ベクトル量子化とを組み合わせてベクトル量子化を行
うことが検討されている。この場合、多段ベクトル量子化の複数の段により構成されるコードブック群（１段目のコードブック、２段目のコードブック、…）を、狭帯域ＬＳＰの種類に応じて複数用意することにより量子化性能を向上させることができる一方、コードブック群を複数用意する必要があるため、より大きなメモリが必要となる。そこで、多段ベクトル量子化と分類ベクトル量子化とを組み合わせてベクトル量子化を行う場合、１段目のコードブックのみ狭帯域ＬＳＰの種類に応じて切り替え、２段目以降のコードブックは全ての狭帯域ＬＳＰの種類において共通とすることが検討されている（例えば、特許文献１参照）。これにより、多段ベクトル量子化において、分類ベクトル量子化による量子化性能向上の効果を得つつ、メモリの増加を抑えることができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】国際公開第２００６／０３０８６５号
【非特許文献】
【０００８】
【非特許文献１】Allen Gersho、Robert M. Gray著、古井、外３名訳、「ベクトル量子化と情報圧縮」、コロナ社、１９９８年１１月１０日、p.506、524-531
【非特許文献２】Allen Gersho、Robert M. Gray著、古井、外３名訳、「ベクトル量子化と情報圧縮」、コロナ社、１９９８年１１月１０日、p.491-493
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上記のような分類ベクトル量子化を利用する多段ベクトル量子化においては、狭帯域ＬＳＰの種類に対応するコードブックを用いて１段目のベクトル量子化が行われるため、１段目のベクトル量子化の量子化誤差の分布の偏りは狭帯域ＬＳＰの種類によって異なる。しかし、２段目以降のベクトル量子化では狭帯域ＬＳＰの種類にかかわらず共通の１つのコードブックを用いるため、２段目以降のベクトル量子化精度が不十分になってしまうという問題がある。
【００１０】
図１は、上記の多段ベクトル量子化における問題点を説明するための図である。図１において、黒丸は２次元のベクトルを示し、破線の円はベクトル集合の分散の大きさを模式的に示し、円の中心は、ベクトル集合の平均を示す。また、図１において、ＣＢａ１、ＣＢａ２、…、ＣＢａｎは、狭帯域ＬＳＰの各種類に対応し、１段目のベクトル量子化に用いられる複数のコードブックそれぞれを示す。ＣＢｂは、２段目のベクトル量子化に用いられるコードブックを示す。
【００１１】
図１に示すように、コードブックＣＢａ１、ＣＢａ２、…、ＣＢａｎそれぞれを用いて１段目のベクトル量子化を行った結果、複数サンプルによる量子化誤差ベクトルの分布（図１に示す黒丸の分布）の偏りはそれぞれ異なる。このような分布の偏りが異なる量子化誤差ベクトルに対し、共通の第２コードベクトルを用いて２段目のベクトル量子化を行うと、２段目の量子化精度が劣化してしまう。
【００１２】
本発明の目的は、量子化対象ベクトルとの相関を有する特徴の種類に応じて１段目のコードブックが切り替わる多段ベクトル量子化において、２段目以降のベクトル量子化の量子化精度を向上することができるベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法を提供することである。
【課題を解決するための手段】
【００１３】
本発明のベクトル量子化装置は、複数の分類用コードベクトルの中から、量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択する第１選択手段
と、複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択する第２選択手段と、選択された前記第１コードブックを構成する複数の第１コードベクトルを用いて前記量子化対象ベクトルを量子化し、第１符号を得る第１量子化手段と、複数の行列の中から、選択された前記分類用コードベクトルに対応する第１行列を選択する第３選択手段と、複数の第２コードベクトルおよび選択された前記第１行列を用い、前記第１符号が示す前記第１コードベクトルと、前記量子化対象ベクトルとの差である第１残差ベクトルを量子化し、第２符号を得る第２量子化手段と、を具備する構成を採る。
【００１４】
本発明のベクトル逆量子化装置は、ベクトル量子化装置において量子化対象ベクトルを量子化して得られた第１符号と、前記量子化の量子化誤差をさらに量子化して得られた第２符号と、を受信する受信手段と、複数の分類用コードベクトルの中から、前記量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択する第１選択手段と、複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択する第２選択手段と、選択された前記第１コードブックを構成する複数の第１コードベクトルの中から、前記第１符号に対応する第１コードベクトルを指定する第１逆量子化手段と、複数の行列の中から、選択された前記分類用コードベクトルに対応する行列を選択する第３選択手段と、複数の第２コードベクトルの中から前記第２符号に対応する第２コードベクトルを指定し、指定された前記第２コードベクトルと、選択された前記行列と、指定された前記第１コードベクトルとを用い、量子化ベクトルを得る第２逆量子化手段と、を具備する構成を採る。
【００１５】
本発明のベクトル量子化方法は、複数の分類用コードベクトルの中から、量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択するステップと、複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択するステップと、選択された前記第１コードブックを構成する複数の第１コードベクトルを用いて前記量子化対象ベクトルを量子化し、第１符号を得るステップと、複数の行列の中から、選択された前記分類用コードベクトルに対応する第１行列を選択するステップと、複数の第２コードベクトルおよび選択された前記第１行列を用い、前記第１符号が示す前記第１コードベクトルと、前記量子化対象ベクトルとの差である第１残差ベクトルを量子化し、第２符号を得るステップと、を有するようにした。
【００１６】
本発明のベクトル逆量子化方法は、ベクトル量子化装置において量子化対象ベクトルを量子化して得られた第１符号と、前記量子化の量子化誤差をさらに量子化して得られた第２符号と、を受信するステップと、複数の分類用コードベクトルの中から、前記量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択するステップと、複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択するステップと、選択された前記第１コードブックを構成する複数の第１コードベクトルの中から、前記第１符号に対応する第１コードベクトルを指定するステップと、複数の行列の中から、選択された前記分類用コードベクトルに対応する行列を選択するステップと、複数の第２コードベクトルの中から前記第２符号に対応する第２コードベクトルを指定し、指定された前記第２コードベクトルと、選択された前記行列と、指定された前記第１コードベクトルとを用い、量子化ベクトルを得るステップと、を有するようにした。
【発明の効果】
【００１７】
本発明によれば、量子化対象ベクトルとの相関を有する特徴の種類に応じて１段目のコードブックを切り替える多段ベクトル量子化において、上記種類に対応する行列を用いて２段目以降のベクトル量子化を行うことにより、２段目以降のベクトル量子化の量子化精度を向上することができる。
【図面の簡単な説明】
【００１８】
【図１】従来技術の多段ベクトル量子化における問題点を説明するための図
【図２】本発明の一実施の形態に係るＬＳＰベクトル量子化装置の主要な構成を示すブロック図
【図３】本発明の一実施の形態に係るＬＳＰベクトル逆量子化装置の主要な構成を示すブロック図
【図４】本発明の一実施の形態に係るＬＳＰベクトル量子化の効果を概念的に説明するための図
【図５】本発明の一実施の形態に係るＬＳＰベクトル量子化装置を備えるＣＥＬＰ符号化装置の主要な構成を示すブロック図
【図６】本発明の一実施の形態に係るＬＳＰベクトル逆量子化装置を備えるＣＥＬＰ復号装置の主要な構成を示すブロック図
【発明を実施するための形態】
【００１９】
以下、本発明の実施の形態について、添付図面を参照して詳細に説明する。なお、本発明に係るベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法として、ＬＳＰベクトル量子化装置、ＬＳＰベクトル逆量子化装置、およびこれらの方法を例にとって説明する。
【００２０】
また、本発明の実施の形態では、スケーラブル符号化の広帯域ＬＳＰ量子化器において、広帯域ＬＳＰをベクトル量子化対象とし、ベクトル量子化対象との相関を有する狭帯域ＬＳＰの種類を用いて、１段目の量子化に用いるコードブックを切り替える場合を例にとって説明する。なお、狭帯域ＬＳＰの代わりに、量子化狭帯域ＬＳＰ（図示しない狭帯域ＬＳＰ量子化器によって予め量子化された狭帯域ＬＳＰ）を用いて１段目の量子化に用いるコードブックを切り替えてもよい。また、量子化狭帯域ＬＳＰを広帯域形態に変換し、変換後の量子化狭帯域ＬＳＰを用いて１段目の量子化に用いるコードブックを切り替えてもよい。
【００２１】
また、本発明の実施の形態において、コードブックを構成するコードベクトル全てに対して行列演算することにより、コードベクトルの分布の偏りを移動させるための行列のことを、マッピング行列と称することとする。なお、実際には、マッピング行列は、コードベクトルに対して行列演算するために用いられるよりも、本発明の実施の形態のように量子化対象であるベクトルに対して行列演算するために用いられることが多い。
【００２２】
図２は、本発明の実施の形態に係るＬＳＰベクトル量子化装置１００の主要な構成を示すブロック図である。ここでは、ＬＳＰベクトル量子化装置１００において、入力されるＬＳＰベクトルを３段階の多段ベクトル量子化により量子化する場合を例にとって説明する。
【００２３】
図２において、ＬＳＰベクトル量子化装置１００は、分類器１０１、スイッチ１０２、第１コードブック１０３、加算器１０４、誤差最小化部１０５、行列決定部１０６、行列演算部１０７、第２コードブック１０８、加算器１０９、行列演算部１１０、第３コードブック１１１および加算器１１２を備える。
【００２４】
分類器１０１は、狭帯域ＬＳＰベクトルの複数の種類それぞれを示す複数の分類情報からなる分類用コードブックを予め格納している。分類器１０１は、ベクトル量子化対象である広帯域ＬＳＰベクトルの種類を示す分類情報を分類用コードブックの中から選択し、スイッチ１０２、および行列決定部１０６に出力する。具体的には、分類器１０１は、狭帯域ＬＳＰベクトルの各種類に対応するコードベクトル（分類用コードベクトル）からな
る分類用コードブックを内蔵している。分類器１０１は、分類用コードブックを探索することにより、入力される狭帯域ＬＳＰベクトルとの二乗誤差が最小となるコードベクトルを求める。分類器１０１は、探索により求めたコードベクトルのインデックスを、ＬＳＰベクトルの種類を示す分類情報とする。
【００２５】
スイッチ１０２は、分類器１０１から入力される分類情報に対応するサブコードブックを第１コードブック１０３の中から１つ選択し、そのサブコードブックの出力端子を加算器１０４に接続する。
【００２６】
第１コードブック１０３は、狭帯域ＬＳＰの各種類に対応したサブコードブック（ＣＢａ１〜ＣＢａｎ）を予め格納している。すなわち、例えば狭帯域ＬＳＰの種類の総数がｎである場合、第１コードブック１０３を構成するサブコードブックの数もｎとなる。第１コードブック１０３は、スイッチ１０２で選択されたサブコードブックを構成する複数の第１コードベクトルの中から、誤差最小化部１０５からの指示により指示された第１コードベクトルをスイッチ１０２に出力する。
【００２７】
加算器１０４は、ベクトル量子化対象として入力される広帯域ＬＳＰベクトルと、スイッチ１０２から入力される第１コードベクトルとの差を求め、この差を第１残差ベクトルとして誤差最小化部１０５に出力する。また、加算器１０４は、すべての第１コードベクトルそれぞれに対応する第１残差ベクトルのうち、誤差最小化部１０５の探索により最小となると分かった１つを行列演算部１０７に出力する。
【００２８】
誤差最小化部１０５は、加算器１０４から入力される第１残差ベクトルを二乗した結果を広帯域ＬＳＰベクトルと第１コードベクトルとの二乗誤差とし、第１コードブックを探索することによりこの二乗誤差が最小となる第１コードベクトルを求める。同様に、誤差最小化部１０５は、加算器１０９から入力される第２残差ベクトルを二乗した結果を第１残差ベクトルと第２コードベクトルとの二乗誤差とし、第２コードブックを探索することによりこの二乗誤差が最小となる第２コードベクトルを得る。同様に、誤差最小化部１０５は、加算器１１２から入力される第３残差ベクトルを二乗した結果を第２残差ベクトルと第３コードベクトルとの二乗誤差とし、第３コードブックを探索することによりこの二乗誤差が最小となる第３コードベクトルを得る。誤差最小化部１０５は、探索により得られた３つのコードベクトルに付与されているインデックスを纏めて符号化し、符号化データとして出力する。
【００２９】
行列決定部１０６は、狭帯域ＬＳＰベクトルの各種類に対応するマッピング行列からなるマッピング行列コードブックを予め格納している。ここでは、マッピング行列コードブックは、第１マッピング行列コードブックおよび第２マッピング行列コードブックの２種類のマッピング行列コードブックで構成される。また、第１マッピング行列コードブックは、第１コードベクトルに対して行列演算を行うために用いられる第１マッピング行列からなり、第２マッピング行列コードブックは、第２コードベクトルに対して行列演算を行うために用いられる第２マッピング行列からなる。行列決定部１０６は、分類器１０１から入力される分類情報に対応する第１マッピング行列および第２マッピング行列を、マッピング行列コードブックの中から選択する。そして、行列決定部１０６は、選択した第１マッピング行列の逆行列を行列演算部１０７に出力し、選択した第２マッピング行列の逆行列を行列演算部１１０に出力する。
【００３０】
行列演算部１０７は、加算器１０４から入力された第１残差ベクトルに対して、行列決定部１０６から入力される第１マッピング行列の逆行列を用いて行列演算を行い、行列演算後のベクトルを加算器１０９に出力する。
【００３１】
第２コードブック（ＣＢｂ）１０８は、複数の第２コードベクトルからなり、誤差最小化部１０５からの指示により指示された第２コードベクトルを加算器１０９に出力する。
【００３２】
加算器１０９は、行列演算部１０７から入力される、行列演算後のベクトルと、第２コードブック１０８から入力される第２コードベクトルとの差を求め、この差を第２残差ベクトルとして誤差最小化部１０５に出力する。また、加算器１０９は、すべての第２コードベクトルそれぞれに対応する第２残差ベクトルのうち、誤差最小化部１０５の探索により最小となると分かった１つを行列演算部１１０に出力する。
【００３３】
行列演算部１１０は、加算器１０９から入力された第２残差ベクトルに対して、行列決定部１０６から入力される第２マッピング行列の逆行列を用いて行列演算を行い、行列演算後のベクトルを加算器１１２に出力する。
【００３４】
第３コードブック１１１（ＣＢｃ）は、複数の第３コードベクトルからなり、誤差最小化部１０５からの指示により指示された第３コードベクトルを加算器１１２に出力する。
【００３５】
加算器１１２は、行列演算部１１０から入力される行列演算後のベクトルと、第３コードブック１１１から入力される第３コードベクトルとの差を求め、この差を第３残差ベクトルとして誤差最小化部１０５に出力する。
【００３６】
次に、量子化対象となる広帯域ＬＳＰベクトルの次数がＲ次である場合を例にとって、ＬＳＰベクトル量子化装置１００が行う動作について説明する。なお、以下の説明では、広帯域ＬＳＰベクトルをＬＳＰ（ｉ）（ｉ＝０，１，…，Ｒ−１）と記す。
【００３７】
分類器１０１は、狭帯域ＬＳＰベクトルのｎ個の種類それぞれに対応するｎ個のコードベクトル（分類用コードベクトル）からなる分類用コードブックを内蔵している。分類器１０１は、コードベクトルを探索することにより、入力される狭帯域ＬＳＰベクトルとの二乗誤差が最小となるｍ番目のコードベクトルを求める。分類器１０１は、ｍ（１≦ｍ≦ｎ）を分類情報としてスイッチ１０２、および行列決定部１０６に出力する。
【００３８】
スイッチ１０２は、分類情報ｍに対応するサブコードブックＣＢａｍを第１コードブック１０３の中から選択し、そのサブコードブックの出力端子を加算器１０４に接続する。
【００３９】
第１コードブック１０３は、ｎ個のサブコードブックＣＢａ１〜ＣＢａｎのうち、ＣＢａｍを構成する各第１コードベクトルＣＯＤＥ＿１（ｄ１）（ｉ）（ｄ１＝０，１，…，Ｄ１−１、ｉ＝０，１，…，Ｒ−１）の中から、誤差最小化部１０５からの指示ｄ１’により指示された第１コードベクトルＣＯＤＥ＿１（ｄ１’）（ｉ）（ｉ＝０，１，…，Ｒ−１）をスイッチ１０２に出力する。ここで、Ｄ１は第１コードブックのコードベクトルの総数であり、ｄ１は第１コードベクトルのインデックスである。ここで、第１コードブック１０３は、ｄ１’＝０からｄ１’＝Ｄ１−１までのｄ１’の値を順次誤差最小化部１０５から指示される。
【００４０】
加算器１０４は、ベクトル量子化対象として入力される広帯域ＬＳＰベクトルＬＳＰ（ｉ）（ｉ＝０，１，…，Ｒ−１）と、第１コードブック１０３から入力される第１コードベクトルＣＯＤＥ＿１（ｄ１’）（ｉ）（ｉ＝０，１，…，Ｒ−１）との差を下記の式（１）に従って求め、この差を第１残差ベクトルＥｒｒ＿１（ｄ１’）（ｉ）（ｉ＝０，１，…，Ｒ−１）として誤差最小化部１０５に出力する。また、加算器１０４は、ｄ１’＝０からｄ１’＝Ｄ１−１までのｄ１’それぞれに対応する第１残差ベクトルＥｒｒ＿１（ｄ１’）（ｉ）（ｉ＝０，１，…，Ｒ−１）のうち、誤差最小化部１０５の探索により最小となると分かった第１残差ベクトルＥｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，
…，Ｒ−１）を行列演算部１０７に出力する。
【数１】
2010092827.tif 000028
【００４１】
誤差最小化部１０５は、ｄ１’＝０からｄ１’＝Ｄ１−１までのｄ１’の値を順次第１コードブック１０３に指示し、ｄ１’＝０からｄ１’＝Ｄ１−１までのｄ１’それぞれに対して、加算器１０４から入力される第１残差ベクトルＥｒｒ＿１（ｄ１’）（ｉ）（ｉ＝０，１，…，Ｒ−１）を下記の式（２）に従って二乗し、二乗誤差Ｅｒｒを求める。
【数２】
2010092827.tif 000029
【００４２】
誤差最小化部１０５は、二乗誤差Ｅｒｒが最小となる第１コードベクトルのインデックスｄ１’を第１インデックスｄ１＿ｍｉｎとして記憶する。
【００４３】
行列決定部１０６は、分類情報ｍに対応する第１マッピング行列の逆行列ＭＭ＿１−１（ｍ）を第１マッピング行列コードブックの中から選択し、行列演算部１０７に出力する。また、行列決定部１０６は、分類情報ｍに対応する第２マッピング行列の逆行列ＭＭ＿２−１（ｍ）を第２マッピング行列コードブックの中から選択し、行列演算部１１０に出力する。
【００４４】
行列演算部１０７は、下記の式（３）に従って、加算器１０４から入力される第１残差ベクトルＥｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）に対して、行列決定部１０６から入力される第１マッピング行列の逆行列ＭＭ＿１−１（ｍ）を用いて行列演算を行い、得られるＭａｐ＿Ｅｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）を加算器１０９に出力する。
【数３】
2010092827.tif 000030
【００４５】
第２コードブック１０８は、コードブックを構成する各第２コードベクトルＣＯＤＥ＿２（ｄ２）（ｉ）（ｄ２＝０，１，…，Ｄ２−１、ｉ＝０，１，…，Ｒ−１）の中から、誤差最小化部１０５からの指示ｄ２’により指示されたコードベクトルＣＯＤＥ＿２（ｄ２’）（ｉ）（ｉ＝０，１，…，Ｒ−１）を加算器１０９に出力する。ここで、Ｄ２は第２コードブックのコードベクトルの総数であり、ｄ２はコードベクトルのインデックスである。第２コードブック１０８は、ｄ２’＝０からｄ２’＝Ｄ２−１までのｄ２’の値を順次誤差最小化部１０５から指示される。
【００４６】
加算器１０９は、行列演算部１０７から入力される、行列演算後の第１残差ベクトルＭ
ａｐ＿Ｅｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）と、第２コードブック１０８から入力される第２コードベクトルＣＯＤＥ＿２（ｄ２’）（ｉ）（ｉ＝０，１，…，Ｒ−１）との差を下記の式（４）に従って求め、この差を第２残差ベクトルＥｒｒ＿２（ｄ２’）（ｉ）（ｉ＝０，１，…，Ｒ−１）として誤差最小化部１０５に出力する。また、加算器１０９は、ｄ２’＝０からｄ２’＝Ｄ１−１までのｄ２’それぞれに対応する第２残差ベクトルＥｒｒ＿２（ｄ２’）（ｉ）（ｉ＝０，１，…，Ｒ−１）のうち、誤差最小化部１０５の探索により最小となると分かった第２残差ベクトルＥｒｒ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）を行列演算部１１０に出力する。
【数４】
2010092827.tif 000031
【００４７】
ここで、誤差最小化部１０５は、ｄ２’＝０からｄ２’＝Ｄ２−１までのｄ２’の値を順次第２コードブック１０８に指示し、ｄ２’＝０からｄ２’＝Ｄ２−１までのｄ２’それぞれに対して、加算器１０９から入力される第２残差ベクトルＥｒｒ＿２（ｄ２’）（ｉ）（ｉ＝０，１，…，Ｒ−１）を下記の式（５）に従って二乗し、二乗誤差Ｅｒｒを求める。
【数５】
2010092827.tif 000032
【００４８】
誤差最小化部１０５は、二乗誤差Ｅｒｒが最小となる第２コードベクトルのインデックスｄ２’を第２インデックスｄ２＿ｍｉｎとして記憶する。
【００４９】
行列演算部１１０は、下記の式（６）に従って、加算器１０９から入力される第２残差ベクトルＥｒｒ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）に対して、行列決定部１０６から入力される第２マッピング行列の逆行列ＭＭ＿２−１（ｍ）を用いて行列演算を行い、得られるＭａｐ＿Ｅｒｒ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）を加算器１１２に出力する。
【数６】
2010092827.tif 000033
【００５０】
第３コードブック１１１は、コードブックを構成する各第３コードベクトルＣＯＤＥ＿３（ｄ３）（ｉ）（ｄ３＝０，１，…，Ｄ３−１、ｉ＝０，１，…，Ｒ−１）の中から、誤差最小化部１０５からの指示ｄ３’により指示された第３コードベクトルＣＯＤＥ＿３（ｄ３’）（ｉ）（ｉ＝０，１，…，Ｒ−１）を加算器１１２に出力する。ここで、Ｄ３は第３コードブックのコードベクトルの総数であり、ｄ３はコードベクトルのインデックスである。第３コードブック１１１は、ｄ３’＝０からｄ３’＝Ｄ３−１までのｄ３’の値を順次誤差最小化部１０５から指示される。
【００５１】
加算器１１２は、行列演算部１１０から入力される、行列演算後の第２残差ベクトルＭａｐ＿Ｅｒｒ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）と、第３コードブック１１１から入力されるコードベクトルＣＯＤＥ＿３（ｄ３’）（ｉ）（ｉ＝０，１，…，Ｒ−１）との差を下記の式（７）に従って求め、この差を第３残差ベクトルＥｒｒ＿３（ｄ３’）（ｉ）（ｉ＝０，１，…，Ｒ−１）として誤差最小化部１０５に出力する。
【数７】
2010092827.tif 000034
【００５２】
ここで、誤差最小化部１０５は、ｄ３’＝０からｄ３’＝Ｄ３−１までのｄ３’の値を順次第３コードブック１１１に指示し、ｄ３’＝０からｄ３’＝Ｄ３−１までのｄ３’それぞれに対して、加算器１１２から入力される第３残差ベクトルＥｒｒ＿３（ｄ３’）（ｉ）（ｉ＝０，１，…，Ｒ−１）を下記の式（８）に従って二乗し、二乗誤差Ｅｒｒを求める。
【数８】
2010092827.tif 000035
【００５３】
次いで、誤差最小化部１０５は、二乗誤差Ｅｒｒが最小となる第３コードベクトルのインデックスｄ３’を第３インデックスｄ３＿ｍｉｎとして記憶する。そして、誤差最小化部１０５は、第１インデックスｄ１＿ｍｉｎ、第２インデックスｄ２＿ｍｉｎ、第３インデックスｄ３＿ｍｉｎを纏めて符号化し、符号化データとして出力する。
【００５４】
図３は、本実施の形態に係るＬＳＰベクトル逆量子化装置２００の主要な構成を示すブロック図である。ＬＳＰベクトル逆量子化装置２００は、ＬＳＰベクトル量子化装置１００において出力される符号化データを復号し、量子化ＬＳＰベクトルを生成する。
【００５５】
ＬＳＰベクトル逆量子化装置２００は、分類器２０１、符号分離部２０２、スイッチ２０３、第１コードブック２０４、行列決定部２０５、第２コードブック（ＣＢｂ）２０６、行列演算部２０７、加算器２０８、第３コードブック（ＣＢｃ）２０９、行列演算部２１０および加算器２１１を備える。なお、第１コードブック２０４は、第１コードブック１０３が備えるサブコードブック（ＣＢａ１〜ＣＢａｎ）と同一内容のサブコードブックを備え、行列決定部２０５は、行列決定部１０６が備えるマッピング行列コードブックと同一内容のマッピング行列コードブックを備える。また、第２コードブック２０６は、第２コードブック１０８が備えるコードブックと同一内容のコードブックを備え、第３コードブック２０９は、第３コードブック１１１が備えるコードブックと同一内容のコードブックを備える。
【００５６】
分類器２０１は、狭帯域ＬＳＰベクトルの複数の種類それぞれを示す複数の分類情報からなる分類用コードブックを予め格納している。分類器２０１は、ベクトル量子化対象である広帯域ＬＳＰベクトルの種類を示す分類情報を分類用コードブックの中から選択し、スイッチ２０３、および行列決定部２０５に出力する。具体的には、分類器２０１は、狭帯域ＬＳＰベクトルの各種類に対応するコードベクトル（分類用コードベクトル）からなる分類用コードブックを内蔵している。分類器２０１は、分類用コードブックを探索することにより、図示しない狭帯域ＬＳＰ量子化器から入力される量子化狭帯域ＬＳＰベクトルとの二乗誤差が最小となるコードベクトルを求める。分類器２０１は、探索により求め
たコードベクトルのインデックスを、ＬＳＰベクトルの種類を示す分類情報とする。
【００５７】
符号分離部２０２は、ＬＳＰベクトル量子化装置１００から送信される符号化データを第１インデックス、第２インデックスおよび第３インデックスに分離する。符号分離部２０２は、第１インデックスを第１コードブック２０４に指示し、第２インデックスを第２コードブック２０６に指示し、第３インデックスを第３コードブック２０９に指示する。
【００５８】
スイッチ２０３は、分類器２０１から入力される分類情報に対応するサブコードブック（ＣＢａｍ）を第１コードブック２０４の中から１つ選び、そのサブコードブックの出力端子を加算器２０８に接続する。
【００５９】
第１コードブック２０４は、スイッチ２０３で選択された第１コードブック（サブコードブック）を構成する複数の第１コードベクトルの中から、符号分離部２０２により指示された第１インデックスに対応する１つの第１コードベクトルをスイッチ２０３に出力する。
【００６０】
行列決定部２０５は、分類器２０１から入力される分類情報に対応する第１マッピング行列を第１マッピング行列コードブックの中から選択し、選択した第１マッピング行列を行列演算部２０７および行列演算部２１０に出力する。また、行列決定部２０５は、分類器２０１から入力される分類情報に対応する第２マッピング行列を第２マッピング行列コードブックの中から選択し、選択した第２マッピング行列を行列演算部２１０に出力する。
【００６１】
第２コードブック２０６は、符号分離部２０２により指示された第２インデックスに対応する１つの第２コードベクトルを行列演算部２０７に出力する。
【００６２】
行列演算部２０７は、第２コードブック２０６から入力される第２コードベクトルに対して、行列決定部２０５から入力される第１マッピング行列を用いて行列演算を行い、行列演算結果を加算器２０８に出力する。
【００６３】
加算器２０８は、スイッチ２０３から入力される第１コードベクトルと、行列演算部２０７から入力される行列演算結果とを加算し、得られる加算結果を加算器２１１に出力する。
【００６４】
第３コードブック２０９は、符号分離部２０２により指示された第３インデックスに対応する１つの第３コードベクトルを行列演算部２１０に出力する。
【００６５】
行列演算部２１０は、第３コードブック２０９から入力される第３コードベクトルに対して、行列決定部２０５から入力される第２マッピング行列を用いて行列演算を行い、行列演算結果を加算器２１１に出力する。
【００６６】
加算器２１１は、加算器２０８から入力される加算結果と、行列演算部２１０から入力される行列演算結果とを加算し、得られる加算結果を量子化広帯域ＬＳＰベクトルとして出力する。
【００６７】
次に、ＬＳＰベクトル逆量子化装置２００の動作について説明する。
【００６８】
分類器２０１は、狭帯域ＬＳＰベクトルのｎ個の種類それぞれに対応するｎ個のコードベクトル（分類用コードベクトル）からなる分類用コードブックを内蔵している。分類器２０１は、コードベクトルを探索することにより、図示しない狭帯域ＬＳＰ量子化器から
入力される量子化狭帯域ＬＳＰベクトルとの二乗誤差が最小となるｍ番目のコードベクトルを求める。分類器２０１は、ｍ（１≦ｍ≦ｎ）を分類情報としてスイッチ２０３および行列決定部２０５に出力する。
【００６９】
符号分離部２０２は、ＬＳＰベクトル量子化装置１００から送信される符号化データを第１インデックスｄ１＿ｍｉｎ、第２インデックスｄ２＿ｍｉｎおよび第３インデックスｄ３＿ｍｉｎに分離する。符号分離部２０２は、第１インデックスｄ１＿ｍｉｎを第１コードブック２０４に指示し、第２インデックスｄ２＿ｍｉｎを第２コードブック２０６に指示し、第３インデックスｄ３＿ｍｉｎを第３コードブック２０９に指示する。
【００７０】
スイッチ２０３は、分類器２０１から入力される分類情報ｍに対応するサブコードブックＣＢａｍを第１コードブック２０４の中から選び、そのサブコードブックの出力端子を加算器２０８に接続する。
【００７１】
第１コードブック２０４は、サブコードブックＣＢａｍを構成する各第１コードベクトルＣＯＤＥ＿１（ｄ１）（ｉ）（ｄ１＝０，１，…，Ｄ１−１、ｉ＝０，１，…，Ｒ−１）の中から、符号分離部２０２からの指示ｄ１＿ｍｉｎにより指示された第１コードベクトルＣＯＤＥ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）をスイッチ２０３に出力する。
【００７２】
行列決定部２０５は、分類器２０１から入力される分類情報ｍに対応する第１マッピング行列ＭＭ＿１（ｍ）を第１マッピング行列コードブックの中から選択し、行列演算部２０７および行列演算部２１０に出力する。また、行列決定部２０５は、分類器２０１から入力される分類情報ｍに対応する第２マッピング行列ＭＭ＿２（ｍ）を第２マッピング行列コードブックの中から選択し、行列演算部２１０に出力する。
【００７３】
第２コードブック２０６は、第２コードブックを構成する各第２コードベクトルＣＯＤＥ＿２（ｄ２）（ｉ）（ｄ２＝０，１，…，Ｄ２−１、ｉ＝０，１，…，Ｒ−１）の中から、符号分離部２０２からの指示ｄ２＿ｍｉｎにより指示された第２コードベクトルＣＯＤＥ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）を行列演算部２０７に出力する。
【００７４】
行列演算部２０７は、下記の式（９）に従って、第２コードブック２０６から入力される第２コードベクトルＣＯＤＥ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）に対して、行列決定部２０５から入力される第１マッピング行列ＭＭ＿１（ｍ）を用いて行列演算を行い、得られる行列演算結果ＴＭＰ＿１（ｉ）（ｉ＝０，１，…，Ｒ−１）を加算器２０８に出力する。
【数９】
2010092827.tif 000036
【００７５】
加算器２０８は、下記の式（１０）に従って、行列演算部２０７から入力される行列演算結果ＴＭＰ＿１（ｉ）と、スイッチ２０３から入力される第１コードベクトルＣＯＤＥ
＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）とを加算し、得られる加算結果ＴＭＰ＿２（ｉ）（ｉ＝０，１，…，Ｒ−１）を加算器２１１に出力する。
【数１０】
2010092827.tif 000037
【００７６】
第３コードブック２０９は、第３コードブックを構成する各第３コードベクトルＣＯＤＥ＿３（ｄ３）（ｉ）（ｄ３＝０，１，…，Ｄ３−１、ｉ＝０，１，…，Ｒ−１）の中から、符号分離部２０２からの指示ｄ３＿ｍｉｎにより指示された第３コードベクトルＣＯＤＥ＿３（ｄ３＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）を行列演算部２１０に出力する。
【００７７】
行列演算部２１０は、下記の式（１１）に従って、第３コードブック２０９から入力される第３コードベクトルＣＯＤＥ＿３（ｄ３＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）に対して、行列決定部２０５から入力される第１マッピング行列ＭＭ＿１（ｍ）を用いて行列演算を行い、行列演算結果ＴＭＰ＿３（ｉ）（ｉ＝０，１，…，Ｒ−１）を得る。そして、行列演算部２１０は、下記の式（１２）に従って、行列演算結果ＴＭＰ＿３（ｉ）（ｉ＝０，１，…，Ｒ−１）に対して、行列決定部２０５から入力される第２マッピング行列ＭＭ＿２（ｍ）を用いて行列演算を行い、得られる行列演算結果ＴＭＰ＿４（ｉ）（ｉ＝０，１，…，Ｒ−１）を加算器２１１に出力する。
【数１１】
2010092827.tif 000038
【数１２】
2010092827.tif 000039
【００７８】
加算器２１１は、下記の式（１３）に従って、加算器２０８から入力される加算結果ＴＭＰ＿２（ｉ）（ｉ＝０，１，…，Ｒ−１）と、行列演算部２１０から入力される行列演算結果ＴＭＰ＿４（ｉ）（ｉ＝０，１，…，Ｒ−１）とを加算し、加算結果となるベクトルＱ＿ＬＳＰ（ｉ）（ｉ＝０，１，…，Ｒ−１）を量子化広帯域ＬＳＰベクトルとして出力する。
【数１３】
2010092827.tif 000040
【００７９】
ＬＳＰベクトル量子化装置１００およびＬＳＰベクトル逆量子化装置２００で用いられる第１コードブック、マッピング行列コードブック、第２コードブックおよび第３コードブックは、予め学習により求めて作成されたものであり、これらのコードブックの学習方法について説明する。
【００８０】
第１コードブック１０３および第１コードブック２０４が備える第１コードブックを学習により求めるためには、まず多数の学習用の音声データから得られる多数の、例えばＶ個のＬＳＰベクトルを用意する。次いで、Ｖ個のＬＳＰベクトルを種類（ｎ種類）毎にグループ化し、各グループに属するＬＳＰベクトルを用いて、ＬＢＧ（Linde Buzo Gray）アルゴリズム等の学習アルゴリズムに従いＤ１個の第１コードベクトルＣＯＤＥ＿１（ｄ１）（ｉ）（ｄ１＝０，１，…，Ｄ１−１、ｉ＝０，１，…，Ｒ−１）を求め、各サブコードブックを生成する。
【００８１】
第２コードブック１０８および第２コードブック２０６が備える第２コードブックを学習により求めるためには、上記のＶ個のＬＳＰベクトルを用いて、上記方法で求めた第１コードブックによる１段目のベクトル量子化を行い、加算器１０４が出力する第１残差ベクトルＥｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）をＶ個求める。次いで、Ｖ個の第１残差ベクトルＥｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）を用いて、ＬＢＧ(Linde Buzo Gray)アルゴリズム等の学習アルゴリズムに従いＤ２個の第２コードベクトルＣＯＤＥ＿２（ｄ２）（ｉ）（ｄ２＝０，１，…，Ｄ１−１、ｉ＝０，１，…，Ｒ−１）を求め、第２コードブックを生成する。
【００８２】
行列決定部１０６および行列決定部２０５が備える第１マッピング行列コードブックを学習により求めるためには、上記のＶ個のＬＳＰベクトルを用いて、上記方法で求めた第１コードブックによる１段目のベクトル量子化を行い、加算器１０４が出力する第１残差ベクトルＥｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）をＶ個求める。次いで、求めたＶ個の第１残差ベクトルを種類（ｎ種類）毎にグループ化し、各グループに属する第１残差ベクトル集合のセントロイド（平均）Ｃ１を求める。
【００８３】
次いで、第１コードブックと同様にして、第２コードブックにおいても、すべての第２コードベクトルの平均を計算することによりセントロイドＤ１を求める。
【００８４】
このようにして各種類（ｎ種類）において、第１コードブックのセントロイドＣ１および第２コードブックのセントロイドＤ１を求める。そして、種類ｍに対応するセントロイドＤ１に対して行列演算を行い、セントロイドＣ１とセントロイドＤ１とが一致する行列を求め、求めた行列を種類ｍに対応する第１マッピング行列とする。各種類（ｎ種類）において第１マッピング行列を求め、各種類の第１マッピング行列に通し番号を付して格納することにより、第１マッピング行列コードブックを生成する。
【００８５】
例えば、ベクトルの次元数Ｒが２次元の場合、種類ｍにおける第１マッピング行列ＭＭ＿１（ｄ２）は下記の式（１４）の連立方程式を解くことにより求められる。
【数１４】
2010092827.tif 000041
【００８６】
また、ベクトルの次元数Ｒが３次元以上の場合、２次元単位でマッピング行列を求め、得られたマッピング行列の行列積を求めることにより、第１マッピング行列ＭＭ＿１（ｍ）を生成することができる。例えば、ベクトルの次元数Ｒが３次元の場合、下記の式（１５）の連立方程式を解くことにより、１，２次に相当するベクトル要素をマッピングできる行列ＴＭＰ＿１を求める。
【数１５】
2010092827.tif 000042
【００８７】
次いで、下記の式（１６）の連立方程式を解くことにより、２，３次に相当するベクトル要素をマッピングできる行列ＴＭＰ＿２を求める。
【数１６】
2010092827.tif 000043
【００８８】
そして、下記の式（１７）に従って行列ＴＭＰ＿１および行列ＴＭＰ＿２の行列積を求めることにより、第１マッピング行列ＭＭ＿１（ｍ）を生成する。
【数１７】
2010092827.tif 000044
【００８９】
このように、ベクトルの次元数Ｒが３次元以上の場合、２次元単位で行列を求め、最終的にすべての行列の行列積を求めることによりマッピング行列を求める。
【００９０】
第３コードブック１１１および第３コードブック２０９が備える第３コードブックを学習により求めるためには、上記のＶ個のＬＳＰベクトルを用いて、上記方法で求めた第１コードブックによる１段目のベクトル量子化を行う。次いで、上記方法で求めた第１マッピング行列コードブックを用いて、第１マッピング行列演算後の第１残差ベクトルＭａｐ＿Ｅｒｒ＿１（ｄ１＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）をＶ個求める。次いで、上記方法で求めた第２コードブックによる２段目のベクトル量子化を行い、加算器１０９が出力する第２残差ベクトルＥｒｒ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）をＶ個求める。次いで、Ｖ個の第２残差ベクトルＥｒｒ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）を用いて、ＬＢＧ(Linde Buzo Gray)アルゴリズム等の学習アルゴリズムに従いＤ３個の第３コードベクトルＣＯＤＥ＿３（ｄ３）（ｉ）（ｄ３＝０，１，…，Ｄ１−１、ｉ＝０，１，…，Ｒ−１）を求め、第３コードブックを生成する。
【００９１】
行列決定部１０６および行列決定部２０５が備える第２マッピング行列コードブックを学習により求めるためには、上記のＶ個のＬＳＰベクトルを用いて、上記方法で求めた第１コードブックによる１段目のベクトル量子化を行い、上記方法で求めた第１マッピング行列を用いて行列演算を行い、上記方法で求めた第２コードブックによる２段目のベクトル量子化を行い、加算器１０９が出力する第２残差ベクトルＥｒｒ＿２（ｄ２＿ｍｉｎ）（ｉ）（ｉ＝０，１，…，Ｒ−１）をＶ個求める。次いで、求めたＶ個の第２残差ベクトルを種類（ｎ種類）毎にグループ化し、各グループに属する第２残差ベクトル集合のセントロイドＣ２を求める。
【００９２】
次いで、第３コードブックにおいても、すべての第３コードベクトルの平均を計算することによりセントロイドＤ２を求める。
【００９３】
各種類（ｎ種類）において、セントロイドＣ２および第３コードブックのセントロイドＤ２を求める。そして、種類ｍに対応するセントロイドＤ２に対して行列演算を行い、セントロイドＣ２とセントロイドＤ２とが一致する行列を求め、求めた行列を種類ｍに対応する第２マッピング行列とする。各種類（ｎ種類）において第２マッピング行列を求め、各種類の第２マッピング行列に通し番号を付して格納することにより、第２マッピング行列コードブックを生成する。
【００９４】
第２マッピング行列ＭＭ＿２（ｍ）は、上記の第１マッピング行列ＭＭ＿１（ｍ）を求める方法において、セントロイドＣ１をセントロイドＣ２に置き換え、セントロイドＤ１をセントロイドＤ２に置き換えた後に、同様の手順を行うことにより求めることができる。
【００９５】
これらの学習の方法は一例であって、上記の方法以外で各コードブックを生成しても良い。
【００９６】
このように、本実施の形態によれば、広帯域ＬＳＰベクトルとの相関を有する狭帯域ＬＳＰベクトルの種類により１段目のベクトル量子化のコードブックを切り換え、１段目のベクトル量子化誤差（第１残差ベクトル）の統計的な分布の偏りが種類毎に異なる多段ベクトル量子化において、狭帯域ＬＳＰベクトルの分類結果に対応する第１マッピング行列を用いて、第１残差ベクトルに対する行列演算を行う。これにより、２段目のコードベクトルの分布の偏りを１段目のベクトル量子化誤差の統計的な分布の偏りに適応させることができ、従って広帯域ＬＳＰベクトルの量子化精度を向上することができる。また、狭帯域ＬＳＰベクトルの分類結果に対応する第２マッピング行列を用いて、第２残差ベクトルに対する行列演算を行う。これにより、３段目のコードベクトルの分布の偏りを２段目のベクトル量子化誤差の分布の偏りに適応させることができ、従って、広帯域ＬＳＰベクトルの量子化精度を向上することができる。
【００９７】
図４は、本実施の形態に係るＬＳＰベクトル量子化の効果を概念的に説明するための図である。図４において、「回転」と書いてある矢印は、第２コードベクトルの集合に対してマッピング行列を用いて行列演算する処理を示す。図４に示すように、本実施の形態においては、狭帯域ＬＳＰの種類に対応する第１コードブックＣＢａｍ（ｍ＜＝ｎ）を用いてベクトル量子化を行って得られる量子化誤差ベクトルに対して、この種類に対応するマッピング行列を用いて行列演算する。これにより行列演算後の量子化誤差ベクトルの集合の分布の偏りを、２段目のベクトル量子化に用いる共通の第２コードブックＣＢｂを構成する第２コードベクトルの集合の分布の偏りに一致させることができる。従って、２段目のベクトル量子化の量子化精度を向上することができる。
【００９８】
なお、本実施の形態においては、１段目のベクトル量子化誤差の統計的な分布の偏りを２段目のコードベクトルの分布の偏りに応じて変更し、２段目のベクトル量子化誤差の統計的な分布の偏りを３段目のコードベクトルの分布の偏りに応じて変更する場合を例にとって説明した。ただし、本発明はこれに限定されず、２段目のベクトル量子化対象に用いるコードベクトルの分布の偏りを１段目のベクトル量子化誤差の統計的な分布の偏りに応じて変更し、３段目のベクトル量子化対象に用いるコードベクトルの分布の偏りを２段目のベクトル量子化誤差の統計的な分布の偏りに応じて変更してもよい。これによっても、本実施の形態と同様に、広帯域ＬＳＰベクトルの量子化精度を向上する効果が得られる。
【００９９】
また、本実施の形態では、行列決定部１０６および行列決定部２０５が備えるマッピング行列コードブックを構成するマッピング行列は狭帯域ＬＳＰベクトルの種類に対応している場合を例にとって説明した。ただし、本発明はこれに限定されず、行列決定部１０６および行列決定部２０５が備えるマッピング行列コードブックを構成するマッピング行列は、音声の特徴を分類した各種類に対応していてもよい。かかる場合、分類器１０１は、狭帯域ＬＳＰベクトルではなく音声の特徴を表すパラメータを音声特徴情報として入力し、入力された音声特徴情報に対応する音声特徴の種類を分類情報としてスイッチ１０２および行列決定部１０６に出力する。例えば、ＶＭＲ−ＷＢ(Variable-Rate Multimode Wideband Speech Codec)のように、音声の有声性、雑音性等の特徴でエンコーダのタイプを切り換えるというような符号化装置に本発明を適用する場合、エンコーダのタイプの情報をそのまま音声特徴量として用いてよい。
【０１００】
また、本実施の形態では、ＬＳＰベクトルに対して３段のベクトル量子化を行う場合を例にとって説明したが、本発明はこれに限定されず、２段のベクトル量子化、もしくは、４段以上のベクトル量子化を行う場合にも適用できる。
【０１０１】
また、本実施の形態では、ＬＳＰベクトルに対して３段の多段ベクトル量子化を行う場合を例にとって説明したが、本発明はこれに限定されず、分割ベクトル量子化と併用してベクトル量子化を行う場合にも適用できる。
【０１０２】
また、本実施の形態では、量子化対象として広帯域ＬＳＰベクトルを例にとって説明したが、量子化対象はこれに限定されず、広帯域ＬＳＰベクトル以外のベクトルであっても良い。
【０１０３】
また、本実施の形態では、マッピング行列を用いて行列演算することにより、コードベクトルの分布の偏りを移動させる場合を例にとって説明した。しかし、本発明はこれに限定されず、回転行列を用いて行列演算することにより、コードベクトルの分布の偏りを移動させてもよい。
【０１０４】
また、本実施の形態では、ＬＳＰベクトル逆量子化装置２００は、ＬＳＰベクトル量子化装置１００において出力される符号化データを復号するとした。ただし、本発明はこれに限定されず、ＬＳＰベクトル逆量子化装置２００で復号可能な形式の符号化データであれば、ＬＳＰベクトル逆量子化装置で受信して復号することが可能であることは言うまでもない。
【０１０５】
また、本実施の形態では、ＬＳＰベクトル量子化装置１００およびＬＳＰベクトル逆量子化装置２００が、Ｒ次元のベクトルに対してＲ×Ｒのマッピング行列を用いて行列演算する例を挙げて説明した。ただし、本発明はこれに限定されず、ＬＳＰベクトル量子化装置１００およびＬＳＰベクトル逆量子化装置２００は、例えば、２×２のマッピング行列を複数用意し、Ｒ次元のベクトルの２次毎ベクトル要素に対して複数の２×２のマッピング行列をそれぞれ用いて行列演算してもよい。この構成によれば、マッピング行列を格納するのに必要なメモリを削減することができ、さらに、行列演算に要する演算量を削減することができる。
【０１０６】
例えば、ベクトルが６次元であり、３つの２×２のマッピング行列（ＭＭＡ＿１（ｍ）、ＭＭＢ＿１（ｍ）およびＭＭＣ＿１（ｍ））を用いて行列演算する場合、上記の式（３）は下記の式（１８）に示すようになり、上記の式（８）は下記の式（１９）に示すようになる。
【数１８】
2010092827.tif 000045
【数１９】
2010092827.tif 000046
【０１０７】
ここで、マッピング行列（ＭＭＡ＿１（ｍ）、ＭＭＢ＿１（ｍ）およびＭＭＣ＿１（ｍ））を学習により求めるには、上述したベクトルの次元数Ｒが２次元である場合の学習方法（上記の式（１４））を、２次毎のベクトル要素に対して行えばよい。
【０１０８】
また、本実施の形態に係るベクトル量子化装置およびベクトル逆量子化装置は、音声信号や楽音信号等を符号化／復号するＣＥＬＰ符号化装置／ＣＥＬＰ復号装置に用いることが可能である。ＣＥＬＰ符号化装置においては、入力信号を線形予測分析して得られた線形予測係数から変換されたＬＳＰを入力して量子化処理を行い、量子化された量子化ＬＳＰを合成フィルタに出力する。例えば、本実施の形態に係るＬＳＰベクトル量子化装置１００をＣＥＬＰ型音声符号化装置に適用する場合は、量子化ＬＳＰを表す量子化ＬＳＰ符号を符号化データとして出力するＬＳＰ量子化部のところに、本実施の形態に係るＬＳＰベクトル量子化装置１００を配置する。これにより、ベクトル量子化精度を向上することが可能となるため、復号時の音声品質も向上する。一方、ＣＥＬＰ復号装置においては、受信した多重化符号データを分離して得られた量子化ＬＳＰ符号から量子化ＬＳＰを復号する。本発明に係るＬＳＰベクトル逆量子化装置２００をＣＥＬＰ型音声復号装置に適用する場合には、復号した量子化ＬＳＰを合成フィルタに出力するＬＳＰ逆量子化部のとこ
ろに、本実施の形態に係るＬＳＰベクトル逆量子化装置２００を配置すればよく、上記と同様の作用効果が得られる。以下、図５および図６を用いて本実施の形態に係るＬＳＰベクトル量子化装置１００およびＬＳＰベクトル逆量子化装置２００を備えるＣＥＬＰ符号化装置４００およびＣＥＬＰ復号装置４５０について説明する。
【０１０９】
図５は、本実施の形態に係るＬＳＰベクトル量子化装置１００を備えるＣＥＬＰ符号化装置４００の主要な構成を示すブロック図である。ＣＥＬＰ符号化装置４００は、入力される音声・楽音信号を複数サンプルずつ区切り、複数サンプルを１フレームとしてフレーム毎に符号化を行う。
【０１１０】
前処理部４０１は、入力される音声信号または楽音信号に対して、ＤＣ成分を取り除くハイパスフィルタ処理を行い、また後続する符号化処理の性能改善のための波形整形処理もしくはプリエンファシス処理を行う。そして、前処理部４０１は、これらの処理により得られる信号ＸｉｎをＬＳＰ分析部４０２および加算器４０５に出力する。
【０１１１】
ＬＳＰ分析部４０２は、前処理部４０１から入力される信号Ｘｉｎを用いて線形予測分析を行い、得られるＬＰＣをＬＳＰベクトルに変換してＬＳＰベクトル量子化部４０３に出力する。
【０１１２】
ＬＳＰベクトル量子化部４０３は、ＬＳＰ分析部４０２から入力されるＬＳＰベクトルに対して量子化を行う。ＬＳＰベクトル量子化部４０３は、得られる量子化ＬＳＰベクトルをフィルタ係数として合成フィルタ４０４に出力し、量子化ＬＳＰ符号（Ｌ）を多重化部４１４に出力する。ここで、ＬＳＰベクトル量子化部４０３としては、本実施の形態に係るＬＳＰベクトル量子化装置１００を適用する。すなわち、ＬＳＰベクトル量子化部４０３の具体的な構成および動作は、ＬＳＰベクトル量子化装置１００と同様である。この場合、ＬＳＰベクトル量子化装置１００に入力される広帯域ＬＳＰベクトルと、ＬＳＰベクトル量子化部４０３に入力されるＬＳＰベクトルとは対応する。また、ＬＳＰベクトル量子化装置１００が出力する符号化データと、ＬＳＰベクトル量子化部４０３が出力する量子化ＬＳＰ符号（Ｌ）とは対応する。合成フィルタ４０４に入力されるフィルタ係数は、ＬＳＰベクトル量子化部４０３内において量子化ＬＳＰ符号（Ｌ）を用いて逆量子化して得られた量子化ＬＳＰベクトルである。なお、ＬＳＰベクトル量子化装置１００に入力される狭帯域ＬＳＰベクトルは、例えばＣＥＬＰ符号化装置４００の外部から入力される。例えば、広帯域ＣＥＬＰ符号化部（ＣＥＬＰ符号化装置４００に対応）と狭帯域ＣＥＬＰ符号化部とを有するスケーラブル符号化装置（図示せず）にこのＬＳＰベクトル量子化装置１００を適用する場合には、狭帯域ＣＥＬＰ符号化部から出力される狭帯域ＬＳＰベクトルがＬＳＰベクトル量子化装置１００に入力される。
【０１１３】
合成フィルタ４０４は、ＬＳＰベクトル量子化部４０３から入力される量子化ＬＳＰベクトルに基づくフィルタ係数を用いて、後述する加算器４１１から入力される駆動音源に対して合成処理を行い、生成される合成信号を加算器４０５に出力する。
【０１１４】
加算器４０５は、合成フィルタ４０４から入力される合成信号の極性を反転させ、前処理部４０１から入力される信号Ｘｉｎに加算することにより誤差信号を算出し、誤差信号を聴覚重み付け部４１２に出力する。
【０１１５】
適応音源符号帳４０６は、過去に加算器４１１から入力された駆動音源をバッファに記憶しており、パラメータ決定部４１３から入力される適応音源ラグ符号（Ａ）によって特定される切り出し位置から１フレーム分のサンプルをバッファより切り出し、適応音源ベクトルとして乗算器４０９に出力する。ここで、適応音源符号帳４０６は、加算器４１１から駆動音源が入力されるたびにバッファの内容を更新する。
【０１１６】
量子化利得生成部４０７は、パラメータ決定部４１３から入力される量子化音源利得符号（Ｇ）によって、量子化適応音源利得と量子化固定音源利得とを決定し、それぞれを乗算器４０９と乗算器４１０とに出力する。
【０１１７】
固定音源符号帳４０８は、パラメータ決定部４１３から入力される固定音源ベクトル符号（Ｆ）によって特定される形状を有するベクトルを固定音源ベクトルとして乗算器４１０に出力する。
【０１１８】
乗算器４０９は、量子化利得生成部４０７から入力される量子化適応音源利得を、適応音源符号帳４０６から入力される適応音源ベクトルに乗じて、加算器４１１に出力する。
【０１１９】
乗算器４１０は、量子化利得生成部４０７から入力される量子化固定音源利得を、固定音源符号帳４０８から入力される固定音源ベクトルに乗じて、加算器４１１に出力する。
【０１２０】
加算器４１１は、乗算器４０９から入力される利得乗算後の適応音源ベクトルと、乗算器４１０から入力される利得乗算後の固定音源ベクトルとを加算し、加算結果を駆動音源として合成フィルタ４０４および適応音源符号帳４０６に出力する。ここで、適応音源符号帳４０６に入力される駆動音源は、適応音源符号帳４０６のバッファに記憶される。
【０１２１】
聴覚重み付け部４１２は、加算器４０５から入力される誤差信号に対して聴覚的重み付け処理を行い、符号化歪みとしてパラメータ決定部４１３に出力する。
【０１２２】
パラメータ決定部４１３は、聴覚重み付け部４１２から入力される符号化歪みを最小とする適応音源ラグを適応音源符号帳４０６から選択し、選択結果を示す適応音源ラグ符号（Ａ）を適応音源符号帳４０６および多重化部４１４に出力する。ここで、適応音源ラグとは、適応音源ベクトルを切り出す位置を示すパラメータである。また、パラメータ決定部４１３は、聴覚重み付け部４１２から出力される符号化歪みを最小とする固定音源ベクトルを固定音源符号帳４０８から選択し、選択結果を示す固定音源ベクトル符号（Ｆ）を固定音源符号帳４０８および多重化部４１４に出力する。また、パラメータ決定部４１３は、聴覚重み付け部４１２から出力される符号化歪みを最小とする量子化適応音源利得と量子化固定音源利得とを量子化利得生成部４０７から選択し、選択結果を示す量子化音源利得符号（Ｇ）を量子化利得生成部４０７および多重化部４１４に出力する。
【０１２３】
多重化部４１４は、ＬＳＰベクトル量子化部４０３から入力される量子化ＬＳＰ符号（Ｌ）、パラメータ決定部４１３から入力される適応音源ラグ符号（Ａ）、固定音源ベクトル符号（Ｆ）、および量子化音源利得符号（Ｇ）を多重化して符号化情報を出力する。
【０１２４】
図６は、本実施の形態に係るＬＳＰベクトル逆量子化装置２００を備えるＣＥＬＰ復号装置４５０の主要な構成を示すブロック図である。
【０１２５】
図６において、分離部４５１は、ＣＥＬＰ符号化装置４００から伝送される符号化情報に対して分離処理を行い、量子化ＬＳＰ符号（Ｌ）、適応音源ラグ符号（Ａ）、量子化音源利得符号（Ｇ）、固定音源ベクトル符号（Ｆ）を得る。分離部４５１は、量子化ＬＳＰ符号（Ｌ）をＬＳＰベクトル逆量子化部４５２に出力し、適応音源ラグ符号（Ａ）を適応音源符号帳４５３に出力し、量子化音源利得符号（Ｇ）を量子化利得生成部４５４に出力し、固定音源ベクトル符号（Ｆ）を固定音源符号帳４５５に出力する。
【０１２６】
ＬＳＰベクトル逆量子化部４５２は、分離部４５１から入力される量子化ＬＳＰ符号（Ｌ）から量子化ＬＳＰベクトルを復号し、量子化ＬＳＰベクトルをフィルタ係数として合
成フィルタ４５９に出力する。ここで、ＬＳＰベクトル逆量子化部４５２としては、本実施の形態に係るＬＳＰベクトル逆量子化装置２００を適用する。すなわち、ＬＳＰベクトル逆量子化部４５２の具体的な構成および動作は、ＬＳＰベクトル逆量子化装置２００と同様である。この場合、ＬＳＰベクトル逆量子化装置２００に入力される符号化データと、ＬＳＰベクトル逆量子化部４５２に入力される量子化ＬＳＰ符号（Ｌ）とは対応する。また、ＬＳＰベクトル逆量子化装置２００が出力する量子化広帯域ＬＳＰベクトルと、ＬＳＰベクトル逆量子化部４５２が出力する量子化ＬＳＰベクトルとは対応する。なお、ＬＳＰベクトル逆量子化装置２００に入力される狭帯域ＬＳＰベクトルは、例えばＣＥＬＰ復号装置４５０の外部から入力される。例えば、広帯域ＣＥＬＰ復号部（ＣＥＬＰ復号装置４５０に対応）と狭帯域ＣＥＬＰ復号部とを有するスケーラブル復号装置（図示せず）にこのＬＳＰベクトル逆量子化装置２００を適用する場合には、狭帯域ＣＥＬＰ復号部から出力される狭帯域ＬＳＰベクトルがＬＳＰベクトル逆量子化装置２００に入力される。
【０１２７】
適応音源符号帳４５３は、分離部４５１から入力される適応音源ラグ符号（Ａ）により特定される切り出し位置から１フレーム分のサンプルをバッファより切り出し、切り出したベクトルを適応音源ベクトルとして乗算器４５６に出力する。ここで、適応音源符号帳４５３は、加算器４５８から駆動音源が入力されるたびにバッファの内容を更新する。
【０１２８】
量子化利得生成部４５４は、分離部４５１から入力される量子化音源利得符号（Ｇ）が示す量子化適応音源利得と量子化固定音源利得とを復号し、量子化適応音源利得を乗算器４５６に出力し、量子化固定音源利得を乗算器４５７に出力する。
【０１２９】
固定音源符号帳４５５は、分離部４５１から入力される固定音源ベクトル符号（Ｆ）が示す固定音源ベクトルを生成し、乗算器４５７に出力する。
【０１３０】
乗算器４５６は、適応音源符号帳４５３から入力される適応音源ベクトルに、量子化利得生成部４５４から入力される量子化適応音源利得を乗じて加算器４５８に出力する。
【０１３１】
乗算器４５７は、固定音源符号帳４５５から入力される固定音源ベクトルに、量子化利得生成部４５４から入力される量子化固定音源利得を乗じて加算器４５８に出力する。
【０１３２】
加算器４５８は、乗算器４５６から入力される利得乗算後の適応音源ベクトルと、乗算器４５７から入力される利得乗算後の固定音源ベクトルとを加算して駆動音源を生成し、生成される駆動音源を合成フィルタ４５９および適応音源符号帳４５３に出力する。ここで、適応音源符号帳４５３に入力される駆動音源は、適応音源符号帳４５３のバッファに記憶される。
【０１３３】
合成フィルタ４５９は、加算器４５８から入力される駆動音源と、ＬＳＰベクトル逆量子化部４５２で復号されたフィルタ係数とを用いて合成処理を行い、生成される合成信号を後処理部４６０に出力する。
【０１３４】
後処理部４６０は、合成フィルタ４５９から入力される合成信号に対して、ホルマント強調やピッチ強調などの音声の主観的な品質を改善する処理、および定常雑音の主観的品質を改善する処理を施し、得られる音声信号または楽音信号を出力する。
【０１３５】
このように、本実施の形態に係るＣＥＬＰ符号化装置／ＣＥＬＰ復号装置によれば、本実施の形態によるベクトル量子化装置／ベクトル逆量子化装置を用いることにより、符号化時にベクトル量子化精度を向上させることが可能となるため、復号時の音声品質も向上させることができる。
【０１３６】
なお、本実施の形態では、ＣＥＬＰ復号装置４５０は、ＣＥＬＰ符号化装置４００において出力される符号化データを復号する場合について説明した。しかし、本発明はこれに限定されず、ＣＥＬＰ復号装置４５０で復号可能な形式の符号化データであれば、ＣＥＬＰ復号装置で受信して復号することが可能であることは言うまでもない。
【０１３７】
以上、本発明の各実施の形態について説明した。
【０１３８】
なお、本発明に係るベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法は、上記各実施の形態に限定されず、種々変更して実施することが可能である。
【０１３９】
たとえば、上記実施の形態では、ベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法において、音声信号または楽音信号を対象として説明したが、その他の可能な信号に適用しても良い。
【０１４０】
また、ＬＳＰは、ＬＳＦ(Line Spectral Frequency)と呼ばれることもあり、ＬＳＰをＬＳＦと読み替えてもよい。また、ＬＳＰの代わりにＩＳＰ(Immittance Spectrum Pairs)をスペクトルパラメータとして量子化する場合はＬＳＰをＩＳＰに読み替え、ＩＳＰ量子化／逆量子化装置として本実施の形態を利用することができる。ＬＳＰの代わりにＩＳＦ(Immittance Spectrum Frequency)をスペクトルパラメータとして量子化する場合はＬＳＰをＩＳＦに読み替え、ＩＳＦ量子化／逆量子化装置として本実施の形態を利用することができる。
【０１４１】
また、本発明に係るベクトル量子化装置およびベクトル逆量子化装置は、音声や楽音等の伝送を行う移動体通信システムにおける通信端末装置や基地局装置に搭載することが可能である。これにより上記と同様の作用効果を有する通信端末装置や基地局装置を提供することができる。
【０１４２】
また、ここでは、本発明をハードウェアで構成する場合を例にとって説明したが、本発明をソフトウェアで実現することも可能である。例えば、本発明に係るベクトル量子化方法およびベクトル逆量子化方法のアルゴリズムをプログラミング言語によって記述し、このプログラムをメモリに記憶しておいて情報処理手段によって実行させることにより、本発明に係るベクトル量子化装置およびベクトル逆量子化装置と同様の機能を実現することができる。
【０１４３】
また、上記各実施の形態の説明に用いた各機能ブロックは、典型的には集積回路であるＬＳＩとして実現される。これらは個別に１チップ化されても良いし、一部または全てを含むように１チップ化されてもよい。
【０１４４】
また、ここではＬＳＩとしたが、集積度の違いによって、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩ等と呼称されることもある。
【０１４５】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路または汎用プロセッサで実現しても良い。ＬＳＩ製造後に、プログラム化することが可能なＦＰＧＡ（Fｉeld Programmable Gate Array）や、ＬＳＩ内部の回路セルの接続もしくは設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【０１４６】
さらに、半導体技術の進歩または派生する別技術により、ＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適用等が可能性としてあり得る。
【０１４７】
２００９年２月１３日出願の特願２００９−０３１６５１の日本出願に含まれる明細書、図面および要約書の開示内容は、すべて本願に援用される。
【産業上の利用可能性】
【０１４８】
本発明に係るベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法は、音声符号化および音声復号等の用途に適用することができる。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の分類用コードベクトルの中から、量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択する第１選択手段と、
複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択する第２選択手段と、
選択された前記第１コードブックを構成する複数の第１コードベクトルを用いて前記量子化対象ベクトルを量子化し、第１符号を得る第１量子化手段と、
複数の行列の中から、選択された前記分類用コードベクトルに対応する第１行列を選択する第３選択手段と、
複数の第２コードベクトルおよび選択された前記第１行列を用い、前記第１符号が示す前記第１コードベクトルと、前記量子化対象ベクトルとの差である第１残差ベクトルを量子化し、第２符号を得る第２量子化手段と、
を具備するベクトル量子化装置。
【請求項２】
前記第２量子化手段は、
前記複数の第２コードベクトルそれぞれに対して、選択された前記第１行列を用いた行列演算を行い、前記行列演算後の前記複数の第２コードベクトルを用いて前記第１残差ベクトルを量子化する、
請求項１記載のベクトル量子化装置。
【請求項３】
前記第２量子化手段は、
前記第１残差ベクトルに対して、選択された前記第１行列の逆行列を用いた行列演算を行い、前記複数の第２コードベクトルを用いて前記行列演算後の前記第１残差ベクトルを量子化する、
請求項１記載のベクトル量子化装置。
【請求項４】
前記第１行列は回転行列である、
請求項１記載のベクトル量子化装置。
【請求項５】
前記選択手段は、さらに、前記複数の行列の中から、選択された前記分類用コードベクトルに対応する第２行列を選択し、
複数の第３コードベクトルおよび選択された前記第２行列を用い、前記第２符号が示す前記第１残差ベクトルと、前記第２コードベクトルとの差である第２残差ベクトルを量子化し、第３符号を得る第３量子化手段、をさらに具備する、
請求項１記載のベクトル量子化装置。
【請求項６】
前記第２行列は回転行列である、
請求項５記載のベクトル量子化装置。
【請求項７】
ベクトル量子化装置において量子化対象ベクトルを量子化して得られた第１符号と、前記量子化の量子化誤差をさらに量子化して得られた第２符号と、を受信する受信手段と、
複数の分類用コードベクトルの中から、前記量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択する第１選択手段と、
複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択する第２選択手段と、
選択された前記第１コードブックを構成する複数の第１コードベクトルの中から、前記第１符号に対応する第１コードベクトルを指定する第１逆量子化手段と、
複数の行列の中から、選択された前記分類用コードベクトルに対応する行列を選択する第３選択手段と、
複数の第２コードベクトルの中から前記第２符号に対応する第２コードベクトルを指定し、指定された前記第２コードベクトルと、選択された前記行列と、指定された前記第１コードベクトルとを用い、量子化ベクトルを得る第２逆量子化手段と、
を具備するベクトル逆量子化装置。
【請求項８】
複数の分類用コードベクトルの中から、量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択するステップと、
複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択するステップと、
選択された前記第１コードブックを構成する複数の第１コードベクトルを用いて前記量子化対象ベクトルを量子化し、第１符号を得るステップと、
複数の行列の中から、選択された前記分類用コードベクトルに対応する第１行列を選択するステップと、
複数の第２コードベクトルおよび選択された前記第１行列を用い、前記第１符号が示す前記第１コードベクトルと、前記量子化対象ベクトルとの差である第１残差ベクトルを量子化し、第２符号を得るステップと、
を有するベクトル量子化方法。
【請求項９】
ベクトル量子化装置において量子化対象ベクトルを量子化して得られた第１符号と、前記量子化の量子化誤差をさらに量子化して得られた第２符号と、を受信するステップと、
複数の分類用コードベクトルの中から、前記量子化対象ベクトルとの相関を有する特徴の種類を示す分類用コードベクトルを選択するステップと、
複数の第１コードブックの中から、選択された前記分類用コードベクトルに対応する第１コードブックを選択するステップと、
選択された前記第１コードブックを構成する複数の第１コードベクトルの中から、前記第１符号に対応する第１コードベクトルを指定するステップと、
複数の行列の中から、選択された前記分類用コードベクトルに対応する行列を選択するステップと、
複数の第２コードベクトルの中から前記第２符号に対応する第２コードベクトルを指定し、指定された前記第２コードベクトルと、選択された前記行列と、指定された前記第１コードベクトルとを用い、量子化ベクトルを得るステップと、
を有するベクトル逆量子化方法。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2010092827.tif 000047
【図２】
2010092827.tif 000048
【図３】
2010092827.tif 000049
【図４】
2010092827.tif 000050
【図５】
2010092827.tif 000051
【図６】
2010092827.tif 000052
【国際調査報告】
2010092827.tif 000053
2010092827.tif 000054
2010092827.tif 000055
2010092827.tif 000056
2010092827.tif 000057
2010092827.tif 000058