(57)【特許請求の範囲】
【請求項１】
ＬＳＰ係数と、ピッチ成分ベクトルと、雑音成分ベクトルと、上記ピッチ成分ベクトルと雑音成分ベクトルに対する利得ベクトルとをそれぞれＬＳＰ符号帳、適応符号帳、雑音符号帳、及び利得符号帳を使用してフレーム毎に入力音声波形ベクトルに対する歪が最小となるよう符号化するACELP による音声符号化方法であり、
上記雑音成分ベクトルを符号化するステップは各フレームを構成する２つのサブフレームに対し雑音符号帳を構成する各雑音成分ベクトルをサブフレーム毎に３つ以下の単位振幅のパルスで構成し、それらの位置を各サブフレーム内で予め決めた取り得る複数の位置から歪が最小となるように決め、
上記雑音符号帳での上記雑音成分ベクトルの探索は、最適なピッチ利得の値が予め決めた値を越えた場合に、上記雑音成分ベクトルをピッチ成分ベクトルに対し直交化して探索を行い、上記ピッチ利得が上記予め決めた値を越えない場合は直交化を行わないで探索を行う。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＩＴＵ国際標準８ｋｂｉｔ／ｓ音声符号化方式ＣＳ−ＡＣＲＥＬＰ（Ｇ．７２９）と同じ構成を有し、更に低いビットレートの音声符号化を行うための符号化方法に関するものである。
【０００２】
【従来の技術】
ディジタル移動通信等の分野では、電波の有効利用等を図るため、種々高能率符号化方法が用いられている。８ｋｂｉｔ／ｓ程度の情報量で符号化する方法としては、ＣＥＬＰ（符号駆動型線形予測）、ＶＳＥＬＰ（ベクトル加算駆動型線形予測）、ＣＳ−ＡＣＥＬＰ等が知られている。
【０００３】
それぞれの技術については、Ｍ．Ｒ．Ｓｃｈｒｏｅｄｅｒ  ａｎｄ  Ｂ．Ｓ．  Ａｔａｌ  ”Ｃｏｄｅ−Ｅｘｃｉｔｅｄ  Ｌｉｎｅａｒ  Ｐｒｅｄｉｃｔｉｏｎ（ＣＥＬＰ）：Ｈｉｇｈ  ｑｕａｌｉｔｙ  Ｓｐｅｅｃｈ  ａｔ  Ｖｅｒｙ  Ｌｏｗ  Ｒａｔｅｓ”  Ｐｒｏｃ．  ＩＣＡＳＳＰ’８５，  ２５．１．１，  ｐｐ．９３７−９４０，  １９８５（文献１）、  Ｉ．Ａ．Ｇｅｒｓｏｎ  ａｎｄ  Ｍ．Ａ．Ｊａｓｉｕｋ：”Ｖｅｃｔｏｒ  Ｓｕｍ  Ｅｘｃｉｔｅｄ  Ｌｉｎｅａｒ  Ｐｒｅｄｉｃｔｉｏｎ  （ＶＳＥＬＰ）  Ｓｐｅｅｃｈ  Ｃｏｄｉｎｇ  ａｔ  ８ｋｐｓ”  Ｐｒｏｃ  ＩＣＡＳＳＰ’９０，  Ｓ９，３，  ｐｐ．４６１−４６４，  １９９０（文献２）、  Ａ．Ｋａｔａｏｋａ  ｅｔ  ａｌ  ”ＩＴＵ−Ｔ８ｋｂｉｔ／ｓ  Ｓｔａｎｄａｒｄ  Ｓｐｅｅｃｈ  Ｃｏｄｅｃ  ｆｏｒ  Ｐｅｒｓｏｎａｌ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｓｅｒｖｉｃｅｓ”  Ｉｎｔ．  Ｃｏｎｆ．  ｏｎ  Ｕｎｉｖｅｒｓａｌ  Ｐｅｒｓｏｎａｌ  ｃｏｍｍｕｎｉｃａｔｉｏｎ，  ｐｐ．８１８−８２２，  １９９５（文献３）等に述べられている。特に、８ｋｂｉｔ／ｓ国際標準Ｇ．７２９（ＣＳ−ＡＣＥＬＰ）については、ＩＴＵ−Ｔ  Ｒｅｃｏｍｍｅｎｄａｔｉｏｎ：  Ｇ．７２９  Ｃｏｄｉｎｇ  ｏｆ  ｓｐｅｅｃｈ  ａｔ  ８ｋｂｉｔ／ｓ  ｕｓｉｎｇ  ｃｏｎｊｕｇａｔｅ−ｓｔｒｕｃｔｕｒｅ  ａｌｇｅｂｒａｉｃ  ｃｏｄｅ  ｅｘｃｉｔｅｄ  ｌｉｎｅａｒ  ｐｒｅｄｉｃｔｉｏｎ  （ＣＳ−ＡＣＥＬＰ），  ＣＯＭ１５−１５２−Ｅ，  Ｊｕｌｙ，１９９５（文献４）に詳細に述べられている。
【０００４】
図１はこれらの方式で用いる符号化器の一例を示すもので、図中、１１は入力端子、１２は加算器、１３は減算器、１４はフィルタ係数決定部、１５はフィルタ係数量子化部、１６は合成フィルタ、１７は聴覚重み付けフィルタ、１８は歪みパワー計算部、１９は符号出力部、２１は適応符号帳、２２は雑音符号帳、２３は予測利得部、２４は利得部、２５は利得予測部、２６は符号帳探索部、２７は利得符号帳、２８はＬＳＰ符号帳である。
【０００５】
図１において、入力端子１１に与えられた入力音声信号波形のサンプル列から１０ｍｓのフレーム毎に取り込んだ所定数のサンプル（以下音声波形ベクトルと呼ぶ）によりフィルタ係数決定部１４で線形予測係数（ＬＰＣ係数と呼ぶ）を計算し、フィルタ係数量子化部１５でＬＰＣ係数をＬＳＰ係数に変換してからＬＳＰ符号帳２８を参照して量子化し、量子化ＬＳＰ係数の量子化符号Ｉｓｐ  を出力すると共に、その量子化ＬＳＰ係数をＬＰＣ係数に変換し、フィルタ係数として合成フィルタ１６に設定する。
【０００６】
適応符号帳２１には過去の複数のフレームの励振ベクトルを適応的に変化するピッチ成分ベクトルとして保持しており、これら複数のピッチ成分ベクトルから選択したピッチ成分ベクトル候補Ｐと、雑音符号帳２２の複数の固定的な雑音成分ベクトル（乱数ベクトル）から選択した雑音成分ベクトル候補Ｃとに利得符号帳２７から選択した利得ベクトル候補ｇ＝（ｇＰ，  ｇＮ）を構成する利得ｇＰ，ｇＮを利得部２４の乗算器２４Ｐ，２４Ｎでそれぞれ乗算した後、加算器１２で加算して合成フィルタ１６に励振ベクトルとして供給し、音声を合成する。利得予測部２５は過去の雑音成分ベクトルよりおおよその利得を予測して、予測利得部２３にセットする。
【０００７】
合成音声は減算器１３で入力音声波形ベクトルＸから減算され、得られた誤差ベクトルは聴覚重み付けフィルタ１７により聴覚重み付けされ、歪パワー計算部１８に与えられる。歪パワー計算部１８は聴覚重み付き誤差（歪）のパワーを計算し、符号帳探索部２６で、歪パワーが最も小さくなるように適応符号帳２１、雑音符号帳２２、利得符号帳２７のそれぞれの候補ベクトルを選択し、符号出力部１９は選択したベクトルを表すそれぞれのインデックスＩＰ，ＩＮ，ＩＧを量子化ＬＳＰ係数を表す符号ＩＳＰ  と共に符号化結果として出力する。
【０００８】
図２は図１の符号化器に対応する復号器の一例を示すもので、図中、３１は入力端子、３２は加算器、３３はフィルタ係数復号化部、３４は合成フィルタ、３５は適応符号帳、３６は雑音符号帳、３７は予測利得部、３８は利得部、３９は利得予測部、４１は利得符号帳である。図２において、受信した符号ＩＳＰ  からフィルタ係数復号部３３でＬＳＰ係数を復号し、それをＬＰＣ係数に変換して合成フィルタ３４にフィルタ係数として設定する。受信した符号ＩＧは利得符号帳４１で利得ベクトル（ｇＰ，  ｇＮ）に復号され、利得部３８の乗算部３８Ｐ，３８Ｎに利得ｇＰ，ｇＮとして設定される。
【０００９】
一方、受信した符号ＩＰ，ＩＮに対応してそれぞれ適応符号帳３５、雑音符号帳３６からピッチ成分ベクトルＰ、雑音成分ベクトルＣが読み出される。ピッチ成分ベクトルＰは利得部３８で利得ｇＰ  が乗算され、雑音成分ベクトルＣは利得予測部３９で予測された利得で予測利得部３７により適応的に利得調整され、更に利得部３８で利得ｇＮ  が乗算される。利得部３８からのこれら利得制御されたピッチ成分ベクトルと雑音成分ベクトルは加算部３２で合成され、励振ベクトルとして合成フィルタ３４に与えられ、復号音声が出力される。
【００１０】
図３はＧ．７２９  におけるそれぞれのパラメータに対する符号化のためのビット分配を示す。Ｇ．７２９  ではフレーム長は１０ｍｓであり、フレーム当たり８０ビットが使用される。そのうちＬＳＰ係数の符号化には１８ビットが割り当てられる。ＬＳＰ係数の符号化は図４に示すように、２段のベクトル量子化により量子化される。１段目のベクトル量子化では、１２８候補（７ビット）を有する第１段目のＬＳＰ符号帳を使った１０次元ベクトル量子化を行う。２段目では、１０ビットのベクトル量子化を行うものであり、それぞれ３２候補（５ビット）を有する高次側と低次側の２つのＬＳＰ符号帳を用い、それぞれ５次元ベクトル量子化を行う。予測係数の選択には１ビットが割り当てられている。
【００１１】
適応符号帳２１を使ったピッチ成分ベクトルの符号化には、フレームを５ｍｓ  の第１サブフレームと５ｍｓ  の第２サブフレームに分け、第１サブフレームには８ビットとパリティ１ビットが割り当てられ、第２サブフレームには５ビットが割り当てられる。雑音符号帳２２を使った雑音成分ベクトルの符号化には各サブフレームに４つのパルスの極性に対する４ビットを含む１７ビットが割り当てられている。
【００１２】
図５はＧ．７２９  における雑音符号帳を使った雑音成分ベクトルの符号化に使用されている雑音励振パルス構造を各サブフレームに４つのパルスで実現する場合の、４つのパルスの取り得る予め決めた位置を示す。即ち、４０ｍｓのサブフレーム内で例えば１ｍｓ  間隔で０〜３９番までの位置を規定し、これら４０個の位置をパルス＃０〜＃３に対し、Ｇ．７２９  による図５の表で示すように分配している。この表から明らかなように、パルス＃０，＃１，＃２に対してはトラック０、１、２でそれぞれ８つの取り得る位置が割り当てられているので、それぞれ３ビットで位置を表すことができ、パルス＃３に対しては２つのトラック３、４で１６個の取り得る位置が割り当てられているので、４ビットでその位置を表すことができる。従って、各サブフレームの４つのパルスの位置情報は１３ビットで表される。１３ビットのこれら位置情報に加え、４つのパルスのそれぞれのサイン（極性）をそれぞれ１ビットで表しているので、各サブフレーム全体では１７ビットが使われている。
【００１３】
上述した図１の符号化器において、利得符号帳２７を使った利得ベクトルの符号化には、図３で示すように各サブフレームで７ビットずつ、計１４ビットが割り当てられている。
【００１４】
【発明が解決しようとする課題】
ところで、このような  ＩＴＵ国際標準Ｇ．７２９  を用いたコーデックによる通信を行う際、伝送路の状態によって伝送容量が十分確保できないことがあり、通信不能になってしまうという問題があった。また、この場合、より伝送容量の少ない符号化方法によって通信を行うことも考えられるが、その場合には全く別の符号化器及び復号器が必要になるという問題があった。従って、国際標準Ｇ．７２９  と同様の符号構成を使い、音声品質をそれほど低下させずに信号のビットレートを低減することが望まれるが、音声品質を低下させずに符号構成のどの部分に対するビット割当を有効に削減することが可能なのか知られていなかった。
【００１５】
この発明の目的は、国際標準Ｇ．７２９  に従った音声符号化において、音声品質をそれほど劣化させることなくビットレートを低減できる音声符号化方法を提供することである。
【００１６】
【課題を解決するための手段】
この発明によれば、ＬＳＰ係数と、ピッチ成分ベクトルと、雑音成分ベクトルと、上記ピッチ成分ベクトルと雑音成分ベクトルに対する利得ベクトルとをそれぞれＬＳＰ符号帳、適応符号帳、雑音符号帳、及び利得符号帳を使用してフレーム毎に入力音声波形ベクトルに対する歪が最小となるよう符号化するACELP による音声符号化方法であり、
上記雑音成分ベクトルを符号化するステップは各フレームを構成する２つのサブフレームに対し雑音符号帳を構成する各雑音成分ベクトルをサブフレーム毎に３つ以下の単位振幅のパルスで構成し、それらの位置を各サブフレーム内で予め決めた取り得る複数の位置から合成音声の歪が最小となるように決め、
上記雑音符号帳での上記雑音成分ベクトルの探索は、最適なピッチ利得の値が予め決めた値を越えた場合に、上記雑音成分ベクトルをピッチ成分ベクトルに対し直交化して探索を行い、上記ピッチ利得が上記予め決めた値を越えない場合は直交化を行わないで探索を行う。
【００１７】
【発明の実施の形態】
この発明の音声符号化方法もＧ．７２９  で使われている図１に示した符号化器の使用を前提にしている。国際標準Ｇ．７２９  は図１の符号化システムにおいてフレームが１０ｍｓでフレーム当たり８０ビットの符号化を用いているが、必要に応じてこれを例えば同じフレームサイズで６．４ｋｂｉｔ／ｓ  の符号化を実現するためには符号化に使用するビット数をフレーム当たり６４ビットに削減しなければならない。即ち、フレーム当たり１６ビット削減しなければならない。そこで、Ｇ．７２９  で使用される図３に示した各フレームの符号構成において、どのパラメータに対するビット割当を削減すれば音声品質の劣化を感知できない範囲で有効に削減でき、６．４ｋｂｉｔ／ｓ  で最適な符号構成を実現することができるかを検討する必要がある。ただ、６．４ｋｂｉｔ／ｓ  符号化は８ｋｂｉｔ／ｓ  符号化（Ｇ．７２９）の拡張として動作するため、両者の切り換えがスムーズに行わなければならない。つまり、６．４ｋｂｉｔ／ｓでも良い品質であり、８ｋｂｉｔ／ｓとの切り換え時に明らかな異音が感知されないようにする必要があり、そのような構成を実現する必要がある。
【００１８】
（例１）ピッチ成分ベクトルの符号化におけるビット削減
ピッチ成分ベクトルは復号音声品質に大きな影響を及ぼすので、６．４ｋｂｉｔ／ｓ  符号化で高品質を実現するため１３ビットのピッチ情報に付いてはビット削減を行わない。Ｇ．７２９  では第１サブフレームの８ビットピッチ情報の上位６ビットを１ビットのパリティで保護している。つまり、伝送された来たビットが伝送路の途中で誤ったときにはパリティによってその誤りを検出し、前回のサブフレームのピッチ周期を現サブフレームのピッチ周期として用いる。このパリティビットは誤りがないときには無駄になるので、このパリティビットを削除する。
【００１９】
（例２）ＬＳＰ係数の符号化におけるビット削減
Ｇ．７２９  は１８ビットのＬＳＰ量子化器を用いている。ＬＳＰ量子化器は４次のフレーム間予測を用いた２ステージのＬＳＰ符号帳によって構成されている（文献４）。第ｎフレームの量子化されたＬＳＰ係数Ωｎ  は次式
【００２０】
【数１】
0003582693.tif 000002
で与えられる。ここで、Ｆｉ  はフレーム間予測のための予測係数の対角行列、Ｉは単位行列、Ｓｎ  は第ｎフレーム（現フレーム）におけるＬＳＰ符号帳を使った第２段目ベクトル量子化出力である。
【００２１】
ＬＳＰ符号帳の出力量子化ベクトルＳｎ  は、
0003582693.tif 000003
のように２つの符号帳の和で表される。ここで、Ｓ１ｊは第１段目のＬＳＰ符号帳の出力（７ビット）であり、Ｓ２ｊＬ  は図３の表で説明した第２段目の低次の出力（５ビット）、Ｓ２ｊＨ  は第２段目の高次の出力（５ビット）である。
【００２２】
入力ＬＳＰ係数Ωｉｎに対し、
ｄｓｐ＝（Ωｉｎ−Ωｎ）ＴＷｎ（Ωｉｎ−Ωｎ）                                  （３）
の歪みが最小となる組み合わせを探索する。Ｗｎ  は入力ＬＳＰ係数から得られる重み係数である。これらのビットのうち、第１段目のＬＳＰ符号帳Ｓｉｊと予測係数Ｆｉ  は性能を大きく左右する。また、ＬＳＰ係数は低次の係数ほど音声品質に重要である。
【００２３】
６．４ｋｂｉｔ／ｓ  符号化のために、比較的性能への寄与が少ないと思われる第２段目のＬＳＰ符号帳よりビットを削減する。第２段目のＬＳＰ符号帳は入力ＬＳＰから第１段目のＬＳＰ符号帳の出力を引いた残り成分を量子化するため、第２段目のＬＳＰ符号帳はランダムな値である。ＬＳＰ係数は０〜πの範囲の値を取る。ケース（１）：  第２段目の高次のＬＳＰ符号帳Ｓ２ｊＨ  のビットを５ビットから１ビット削減して４ビットとし、インデックス番号０〜１５の１６個の符号により形成する。この４ビットのＬＳＰ符号帳として８ｋｂｉｔ／ｓ  用の５ビットのＬＳＰ符号帳から、６．４ｋｂｉｔ／ｓ  用の４ビットのＬＳＰ符号帳として用いるのにふさわしいコードを選んで用いてもよい。あるいは５ビットＬＳＰ符号帳のインデックス０〜３１の符号から、単に順番にインデックス番号０〜１５の符号を用いてもよい。
【００２４】
８ｋｂｉｔ／ｓ  符号化（Ｇ．７２９）  では第２段目のＬＳＰ符号帳を５ビットで最適になるように設計してある。そこで、第２段目のＬＳＰ符号帳を４ビットによって最適になるように再学習してもよい。その場合、８ｋｂｉｔ／ｓ  用の第２段目高次のＬＳＰ符号帳以外に６．４ｋｂｉｔ／ｓ  用の第２段目高次のＬＳＰ符号帳が必要になる。新しい符号帳に必要なメモリの増加は８０ワードである（５次元ベクトル×１６＝８０）。
【００２５】
ケース（２）：  同様に第２段目の高次のＬＳＰ符号帳のビットを２ビット削減する（５ビット符号帳を３ビット符号帳にする）。上記と同様に、元のＬＳＰ符号帳の一部を用いることも可能であり、再学習によって第２段目の高次のＬＳＰ符号帳を３ビットで最適なものを作成、用いることもできる。
ケース（３）：  第２段目の高次のＬＳＰ符号帳Ｓ２ｊＨ  ビットを１ビット削減し、低次のＬＳＰ符号帳Ｓ２ｊＬ  のビットを１ビット削減する（それぞれ５ビット符号帳を４ビット符号帳にする）。
【００２６】
上記ケース（２）  と同様に、元のＬＳＰ符号帳の一部を用いることも可能であり、再学習によって第２段目の高次のＬＳＰ符号帳と低次のＬＳＰ符号帳をそれぞれ４ビットで最適なものを作成し、用いることもできる。また、それらを組み合わせることも可能である。例えば、低次符号帳は再学習を行い、高次符号帳は元の符号帳の一部を用いる。
【００２７】
（例３）雑音符号帳からビットを削減する場合
Ｇ．７２９  では図５の表に示したように、各サブフレームの雑音成分ベクトルを４つのパルスで表し、それら４パルス＃０〜＃３の取り得る位置がそれぞれ８、８、８、１６個規定されている。これらの位置を表すのに１３ビット、各パルスの極性に各１ビットを用いている。この発明では復号音声品質の劣化を感知できない程度に抑えて有効にビット削減を達成できる最も効果的なビット削減の方法として、雑音成分ベクトルの符号化に割り当てるビットの削減を以下のいくつかのケースに示すように行う。
【００２８】
ケース（１）：  図６の表に示すように、雑音成分ベクトルを各サブフレーム毎に２つのパルス＃０、＃１で表し、パルス＃０は４ビットにより１６個の取り得る位置を与え、パルス＃１には５ビットにより３２個の取り得る位置を与える。これらパルス＃０、＃１に対しそれぞれ１ビットの極性ビットを与える。従って、各サブフレームに４＋５＋２＝１１ビットが割り当てられる。これにより、１フレームで雑音成分ベクトルの符号化に割り当てるビット数はＧ．７２９  の３４ビットから２２ビットに削減される。
【００２９】
図６に示すパルス構成による雑音成分ベクトルの符号帳は２１１  個のベクトルを有し、パルス位置の探索は、雑音成分ベクトルＣを励振ベクトルとして合成フィルタ１６で合成した音声の、入力音声波形ベクトル（ターゲットベクトル）Ｘに対する歪ｄｒ  が最小となるように行われる。この歪ｄｒ  は合成フィルタ１６のインパルス応答行列をＨとすると、次式
【００３０】
【数２】
0003582693.tif 000004
で与えられる。ここで、ｄはＸＴ  とＨの間の相関ベクトルｄ＝ＨＴＸ  であり、ΦはＨの相関行列Φ＝ＨＴＨ  である。ｄとΦは予め計算しておき、各ベクトル候補Ｃｋ  に付いてｄｒ＝（ｄＴＣｋ）２／ＣｋＴΦＣｋを計算し、最も小さくなる励振ベクトル（雑音成分ベクトル）Ｃｋ  を雑音符号帳２２から選択する。励振ベクトルＣｋ  は振幅が０、±１のパルスからなるため、式（４）  の計算は極性の掛け算と足し算のみでできることは文献（４）  のＧ．７２９  の場合と同様である。この様な励振ベクトルの形状符号帳をａｌｇｅｂｒａｉｃ  符号帳と呼ぶ。
【００３１】
パルス位置の探索において、トラック０とトラック１、２の全ての組み合わせに付いてｄＴＣｋを計算すれば、最適解が発見できるが、演算量を更に削減するため、トラック０のみの位置を先に決定するなどの、簡略化も可能である。
ケース（２）：  図７に示す９ビットの雑音符号帳を用いる。その励振パルス構造は図７に示すように、各サブフレームに互いに極性が逆の２つのパルスを設け、各パルスは１６個の取り得る位置が与えられている。また、取ることのできない位置が８個規定されている。従って、２つのパルスの位置はそれぞれ４ビットで表され、それら２つのパルスの極性を同時に反転するビットが１ビット設けられている。これにより、各サブフレームには９ビットが割り当てられるので、９ビットの雑音符号帳を用いることにより、ビットをサブフレーム当たり８ビット、フレーム当たり１６ビット削減できる。９ビットの雑音符号帳としては、８ビットの形状符号帳と１ビットの極性ビットの構成を用いる。その時、形状符号帳の励振ベクトルとして、ランダム信号をそのまま用いるものや学習によって励振ベクトルを生成することもできる。
【００３２】
また、雑音符号帳を２つのサブ符号帳に分割して、励振ベクトルを２つのサブベクトルの和で表現する共役構造の符号帳を用いることもできる。例えば、３ビット形状符号帳と１ビット符号、４ビット形状符号帳と１ビット符号の構成を用いる。また、Ｇ．７２９と同様に励振ベクトルを振幅１のパルスで表現することも可能である。
【００３３】
ケース（３）：  図８に示す１０ビットの雑音符号帳を用いる。
図８に示す１０ビットの雑音符号帳も図７の場合と同様に各サブフレームが２つのパルスにより成る雑音成分ベクトルで構成されているが、図８の場合、２つのパルスの極性は互いに独立に選択できるよう各パルスに対し１ビットの極性ビットが設けられている。この雑音符号帳を用いることにより、ビットをサブフレーム当たり７ビット、フレーム当たり１４ビット削減できる。１０ビットの雑音符号帳としては、９ビットの形状符号帳と各パルスに１ビットの極性ビットの構成を用いる。その時、形状符号帳の励振ベクトルとして、ランダム信号をそのまま用いるものや学習によって励振ベクトルを得ることもできる。
【００３４】
また、雑音符号帳を２つのサブ符号帳に分割して、励振ベクトルを２つのサブベクトルの和で表現する供役構造の符号帳を用いることもできる。例えば、４ビット第１形状サブ符号帳と１ビット符号、４ビット第２形状サブ符号帳と１ビット符号の構成を用いる。また、Ｇ．７２９  と同様に励振ベクトルを振幅１のパルスで表現することも可能である。
【００３５】
ケース（４）：  図９に示す１１ビットの雑音符号帳を用いる。
図９の例ではサブフレームを３つのパルスで構成し、パルス＃０と＃１にはそれぞれ８つの取り得る位置を与え、パルス＃２には１６個の取り得る位置を与えている。従って、これら３つのパルスの位置に３＋３＋４＝１０ビットが割り当てられている。３つのパルスの相対極性は予め決められており、例えばパルスｉ０、ｉ１が正、パルスｉ２が負であり、これら３つのパルスの極性を同時に反転制御するビットが１ビット設けられている。この１１ビットの雑音符号帳を用いることにより、ビットをサブフレーム当たり６ビット、フレーム当たり１２ビット削減できる。１１ビットの雑音符号帳としては、１０ビットの形状符号帳と１ビットの符号ビットの構成を用いる。その時、形状符号帳の励振ベクトルとして、ランダム信号をそのまま用いるものや学習によって励振ベクトルを得ることもできる。
【００３６】
また、雑音符号帳を２つのサブ符号帳に分割して、励振ベクトルを２つのサブベクトルの和で表現する供役構造の符号帳を用いることもできる。例えば、５ビット形状符号帳と１ビット符号、４ビット形状符号帳と１ビット符号の構成を用いる。また、Ｇ．７２９  と同様に励振ベクトルを振幅１のパルスで表現することも可能である。
【００３７】
また、図９を常に３パルスとして用いるのではなく、２パルス或いは３パルス用としても用いることもできる。図１０にその場合の配置の例を示す。つまり、ポジション３８にはパルスは設定せず、ｉ２が３８を示すときにはｉ０とｉ１のみを用いることを意味する。また、ｉ１が３７の時には、ｉ０とｉ２のみを用いることを意味する。この時、ｉ２は３８には設定しない。さらに、ｉ０が３５の時には、ｉ１とｉ２のみを用いることを意味する。但し、この時、ｉ１は３７には設定しない。このような規則に従って探索を行うことにより、２パルス或いは３パルスの組み合わせの中から最適なものを探す。
【００３８】
（例４）雑音符号帳の探索の例
６．４ｋｂｉｔ／ｓ  符号化の品質を向上させるため、雑音励振ベクトルの探索に条件付き直交化を導入する。ＣＥＬＰ符号化では雑音符号帳の探索を行う時、前述のように雑音符号帳２２の第ｋ番目の雑音成分ベクトルＣｋ  を励振ベクトルとして合成フィルタ１６に与え（即ち利得ｇＰ＝０，ｇＮ＝１に設定する）、その出力合成音声ＨＣｋ  の、入力音声ベクトル（ターゲットベクトル）Ｘに対する前述の式（４）  で与えられる歪が最も少なくなる励振ベクトル（雑音成分ベクトル）Ｃｋ  を選択する。
【００３９】
雑音成分ベクトルをピッチ成分ベクトルと合成して使用し、入力音声を符号化する場合、ピッチ成分ベクトルを決定した後にそれを考慮して最適な雑音成分ベクトルを雑音符号帳から探索するため、合成フィルタ１６の出力において雑音成分ベクトル中に含まれているピッチ成分ベクトルと平行な成分を除去する（直交化する）ことにより合成音声の品質を高めることができることが知られている。
【００４０】
ピッチ成分ベクトルＰに対して直交化された雑音励振ベクトルＨ＾Ｃｋ  は次式で与えられる。
【００４１】
【数３】
0003582693.tif 000005
励振ベクトルの利得に最適なものが与えられた時、ターゲットベクトルＸと合成音声の間の歪ｄｒ  は
【００４２】
【数４】
0003582693.tif 000006
で表される。従って、歪を最小にするには式（６）  の右辺の第２項
【００４３】
【数５】
0003582693.tif 000007
が最大となる雑音成分ベクトルＣｋ  を探索する。
式（６）  の分子は
【００４４】
【数６】
0003582693.tif 000008
のように変形できる。つまり、ターゲットベクトルＸをピッチ成分ベクトルＰによる励振出力ＨＰに対して直交化したものと等価である。この変形によって式（４）の分子と同等の演算となる。
【００４５】
一方、式（７）の分母は次式のようになる。
【００４６】
【数７】
0003582693.tif 000009
１／‖ＨＣｋ‖２（＝Ａ）は定数であり、（ＨＰ）ＴＨ＝Ｅ  とおくことによって式（６）  は
【００４７】
【数８】
0003582693.tif 000010
となる。ＥＴＣｋはＥからパルスの位置に該当する点の値をパルスの数だけ足せば求めることができる。以上、直交化することによる演算量の増加はＡ（ＥＴＣｋ）２  の成分だけであり、わずかである。
【００４８】
雑音励振ベクトルの自由度が高い時は、直交化によって音声品質は向上する。しかし、例えば、図６乃至１０のようなａｌｇｅｂｒａｉｃ  （形状）符号帳を雑音符号帳として用いた場合には、探索の演算量が少ない代わりに、雑音励振ベクトルのパルス位置の制約が大きいので、必ずしも品質が向上するとは限らない。そのため、直交化による探索が望ましい場合のみ式（７）による探索を行い、それ以外は式（４）による探索を行うこととする。その切り換えの条件として、ピッチの最適利得ｇＰ ｏｐｔ  を用いる。最適ピッチ利得は
で与えられる。
【００４９】
【数９】
0003582693.tif 000011
ピッチ利得が大きいときには、ピッチ成分の寄与が大きいので、ピッチ成分ベクトルに対する直交化は有効である。そのため、
ｇＰ ｏｐｔ≧ｇｔｈ                                      （１２）
の条件を満たす時にのみ直交化探索を行う。閾値ｇｔｈの値としては、例えば０．５を用いる。また、切り換えの条件として、
Ｐｒ  ＝  ２０  ｌｏｇ｛‖Ｘ‖２／‖Ｘ−ＨＰ‖２｝                  （１３）
で表されるピッチの予測利得を用いても良い。ここで、Ｘは入力音声波形ベクトル、ＨＰはピッチ波形ベクトルである。上記と同様にピッチの予測利得が大きい時のみ直交化探索を行う。
【００５０】
（例５）利得符号帳からのビットを削減
Ｇ．７２９  ではサブフレーム当たり、７ビットの利得符号帳を用いてピッチ利得と雑音励振ベクトルの利得を量子化している。それぞれの利得ｇＰ，ｇＮは２つのサブ符号帳の和によって表現されている。また、この符号帳を作成する際には、伝送路誤りを考慮して学習を行っている。誤りを考慮した学習を行うことによって、ゲインを表す符号のビットが伝送路の途中で誤っても、その影響は少なくてすむ。その代償として、伝送路誤りのない条件での性能が、伝送路誤りを考慮しないで作成した符号帳を使用した場合に比べて劣化する。
【００５１】
この発明においては、ゲイン符号帳からビットを削除して、６ビットのゲイン符号帳を作成する。その場合、符号帳のビットが削減されるため、再生音声により品質劣化が生じるので、この実施例ではＧ．７２９  のゲイン符号帳の作成に用いた誤り率ｅｒｒ（＝０．５％）より小さい誤り率を用いてゲイン符号帳を作成することによって、７ビット符号帳の場合に比べて、品質の劣化を少なく押さえることができる。また、この新しい符号帳は６ビット一括のベクトル量子化を行う１つの符号帳として構成してもよいし、Ｇ．７２９  と同様に、３ビットずつの２つの符号帳に分割して構成してもよい。２つの符号帳を用いる場合には、新しいゲイン符号帳によりメモリ量の増加はわずか３２ワードである（８＊２＊２＝３２）。
【００５２】
（例６）６．４ｋｂｉｔ／ｓ  の符号化器の例
上記の検討の結果、以下の符号化器を設計した。
ケース（１）：  雑音符号帳のみからビットを削減する。
雑音符号帳のみからビットを削減して９ビットの雑音符号帳を用いる。図１１のＣｏｄｅｒ  Ａ  に、雑音符号帳に９ビット（形状に８ビット、極性に１ビット）のシングル雑音符号帳を用いた場合のそれぞれのパラメータの符号化に対するビット割当の例を示す。図１２のＣｏｄｅｒ  Ｄ  に、雑音符号帳に９ビット（形状に４＋３ビット、極性に１＋１ビット）の供役構造の雑音符号帳を用いた場合のそれぞれのパラメータの符号化に対するビット割当の例を示す。図１３のＣｏｄｅｒ  Ｇ  に、雑音符号帳に９ビット（２パルス、各パルス位置に４ビット、２本のパルスに対する極性に１ビット）の雑音符号帳を用いた場合のビット割当の例を示す。
【００５３】
ケース（２）：  パリティビットを削減し、ＬＳＰ符号帳の第２段目の高次のビットを１ビット削減して４ビットとし、１０ビットの雑音符号帳を用いる。
図１１のＣｏｄｅｒ  Ｂ  に、雑音符号帳に１０ビット（形状に９ビット、極性に１ビット）のシングル雑音符号帳を用いた場合のビット割当の例を示す。図１２のＣｏｄｅｒ  Ｅ  に、雑音符号帳に１０ビット（形状に４＋４ビット、極性に１＋１ビット）の供役構造の雑音符号帳を用いた例を示す。図１３のＣｏｄｅｒ  Ｈ  に、雑音符号帳に１０ビット（２パルス、各パルス位置に４ビット、各パルスに対する極性に各１ビット）の雑音符号帳を用いた場合のビット割当の例を示す。
【００５４】
ケース（３）：  パリティビットを削減し、ＬＳＰ符号帳の第２段目の高次のビットを１ビット削減して４ビットとし、ゲイン符号帳を１ビット削減して６ビットとし、１１ビットの雑音符号帳を用いる。
図１１のＣｏｄｅｒ  Ｃ  に、雑音符号帳に１１ビット（形状に１０ビット、極性に１ビット）のシングル雑音符号帳を用いた場合のビット割当の例を示す。図１２のＣｏｄｅｒ  Ｆ  に、雑音符号帳に１１ビット（形状に４＋５ビット、極性に１＋１ビット）の供役構造の雑音符号帳を用いた場合のビット割当の例を示す。図１３のＣｏｄｅｒ  Ｉ  に、雑音符号帳に１１ビット（３パルス、各パルス位置に３＋３＋４ビット、３本のパルスに対する極性に１ビット）の雑音符号帳を用いた場合のビット割当の例を示す。この時、１１ビットの雑音符号帳として、図１０の２、３パルス型を用いることもできる。また、利得符号帳は６ビット一括の符号帳と３＋３の供役構造の符号帳のいずれも用いることができる。
【００５５】
ケース（４）：  上記ケース（２），（３）  において、パリティビットを削減する代わりにＬＳＰ符号帳の第２段目の高次のビットをさらに１ビット、計２ビット削減する構成も可能である（図１４のｃｏｄｅｒ  Ｊ，  Ｋ）。
ケース（５）：  上記ケース（２），（３）  において、パリティビットを削減する代わりにＬＳＰ符号帳の第２段目の低次ビットを１ビット削減し４ビットとする構成も可能である（図１５のＣｏｄｅｒ  Ｌ，  Ｍ）。
【００５６】
ケース（６）：  上記ケース（１）〜（５）において、従来の雑音励振ベクトルの探索［式（４）  による探索］を行うこともでき、あるいはピッチ波形に対する直交化探索［式（７）  による探索］を行うこともでき、或いは条件によって両者を切り換えて行うこともできる。
評価実験
上記のケース（３）  のＣｏｄｅｒ  Ｉ  のビット配分において、１１ビットの雑音符号帳に２、３パルス型を用い、ピッチの最適ゲインによる探索の切り換えを行う符号化法について主観評価でその性能を評価した。評価は１〜５の５段階評価で、被験者は２４名である。
【００５７】
比較のために、他の符号化方法として、２４ｋｂｉｔ／ｓのＡＤＰＣＭ，  ８ｋｂｉｔ／ｓのＧ．７２９  及び６．３ｋｂｉｔ／ｓ  のＧ．７２３．１  を用いた。Ｇ．７２３．１  はフレーム長が３０ｍｓと長く、先読み７．５ｍｓ  による符号化である。今回の６．４ｋｂｉｔ／ｓ  符号化法はフレーム長が１０ｍｓ、先読み５ｍｓ  である。結果を図１６に示す。
基準の入力音声レベル（−２６ｄＢ）  に対して、本発明による方法は雑音成分ベクトルを表すパルス数を３以下に減らし、符号化のビット割当を大きく削減してもＧ．７２３．１  と同等の品質を実現していることがわかる。また、レベルが変動した場合（−１６ｄＢ，−３６ｄＢ）  でも同等の品質を実現している。また、ランダムビット誤り０．１％の結果より、ピッチパリティを用いなくても大きな劣化が見られない。さらに、１０ｍｓ毎に６．４ｋｂｉｔ／ｓと８ｋｂｉｔ／ｓを切り換えたときの結果より、切り換えによる劣化が少ないことがわかる。
【００５８】
【発明の効果】
以上説明したように、本発明によれば、雑音符号帳を構成する各雑音成分ベクトルの第１及び第２サブベクトルを表すパルスの数を３以下に減らすことにより、音声品質を大きく劣化させずに符号化割当ビット数を減らすことができる。これをG.729(8kbit/s)の他のパラメータに対する符号化のモジュールとテーブルの変更による割当ビットの削減と組み合わせることにより、6.4kbit/s 符号化を実現でき、回線の容量や用途に応じてどちらかのビットレートを選択することができる。これにより、伝送容量が十分確保できない時でも通信を可能にし、また、G.729 と共通のモジュールを用いて符号化を実現することによって、メモリ等の増加を少なく抑えながら、必要に応じてビットレートを選択可能とする。
ピッチ利得が大きいときに、雑音成分ベクトルをピッチ成分ベクトルに対し正規化しているので、音声品質は向上している。
【図面の簡単な説明】
【図１】この発明の前提となる国際標準Ｇ．７２９  によるＣＥＬＰ符号化器のブロック図。
【図２】図１の符号化器に対応した復号器のブロック図。
【図３】Ｇ．７２９  による各フレームにおけるパラメータの符号化に対するビット割当を示す表。
【図４】図３の表におけるＬＳＰ係数の符号化に対するビット割当の詳細を示す表。
【図５】図３の表における雑音符号帳の構成例を示す表。
【図６】この発明による１１ビットの雑音符号帳の構成例を示す表。
【図７】９ビットの雑音符号帳の構成例を示す表。
【図８】１０ビットの雑音符号帳の構成例を示す表。
【図９】１１ビットの雑音符号帳の他の構成例を示す表。
【図１０】１１ビットの雑音符号帳の更に他の構成例を示す表。
【図１１】雑音符号帳にシングル雑音符号帳を用いた場合のそれぞれのパラメータに対する符号化のビット割当を示す表。
【図１２】雑音符号帳に共役構造の雑音符号帳を用いた場合のそれぞれのパラメータに対する符号化のビット割当を示す表。
【図１３】９ビットの雑音符号帳を使用する場合のそれぞれのパラメータに対する符号化のビット割当を示す表。
【図１４】ＬＳＰ符号帳の第２段目の高次のビットを更に削減した場合のそれぞれのパラメータに対する符号化のビット割当を示す表。
【図１５】ＬＳＰ符号帳の第２段目の低次のビットを更に削減した場合のそれぞれのパラメータに対する符号化のビット割当を示す表。
【図１６】この発明による音声符号化方法と他の符号化方法に付いて主観評価による性能比較結果を示す表。
【図１】
0003582693.tif 000012
【図２】
0003582693.tif 000013
【図３】
0003582693.tif 000014
【図４】
0003582693.tif 000015
【図５】
0003582693.tif 000016
【図６】
0003582693.tif 000017
【図７】
0003582693.tif 000018
【図８】
0003582693.tif 000019
【図９】
0003582693.tif 000020
【図１０】
0003582693.tif 000021
【図１１】
0003582693.tif 000022
【図１２】
0003582693.tif 000023
【図１３】
0003582693.tif 000024
【図１４】
0003582693.tif 000025
【図１５】
0003582693.tif 000026
【図１６】
0003582693.tif 000027