(57)【特許請求の範囲】
【請求項１】
ＣＥＬＰ型音声符号化装置あるいはＣＥＬＰ型音声復号化装置において必要となる固定音源ベクトルを、パルス音源ベクトルに拡散ベクトルを畳み込むことにより生成する固定音源ベクトルの生成方法であって、
複数の拡散ベクトルを用意し、前記パルス音源ベクトルの形状に応じて最適な拡散ベクトルの形状を選択し、選択された拡散ベクトルを前記パルス音源ベクトルに畳み込むことにより固定音源ベクトルを生成し、
前記パルス音源ベクトルに対して共通に使用される基本拡散ベクトルと予め定められた形状を有する前記パルス音源ベクトルに使用される追加拡散ベクトルを用意しておき、前記基本拡散ベクトルあるいは前記追加拡散ベクトルを用いて、固定音源ベクトルを生成する固定音源ベクトルの生成方法。
【請求項２】
パルス音源ベクトルに拡散ベクトルを畳み込むことにより固定音源ベクトルを生成する固定音源符号帳であって、
複数の拡散ベクトルの中から前記パルス音源ベクトルの形状に応じて最適な拡散ベクトルの形状を選択する手段と、選択された拡散ベクトルを前記パルス音源ベクトルに畳み込む手段とを具備し、
前記パルス音源ベクトルに対して共通に使用される基本拡散ベクトルとともに予め定められた形状を有する前記パルス音源ベクトルに使用される追加拡散ベクトルとを格納する拡散ベクトル格納器を設け、
前記基本拡散ベクトルあるいは前記追加拡散ベクトルを用いて、固定音源ベクトルを生成する固定音源符号帳。
【請求項３】
請求項２において、
パルス音源ベクトルの形状判定器が設けられ、この形状判定器によって、前記パルス音源ベクトルが前記あらかじめ定められた形状を有していると判定された場合にのみ、前記追加拡散ベクトルを用いて固定音源ベクトルを生成する固定音源符号帳。
【請求項４】
複数の拡散ベクトルの中から音源ベクトルの形状に応じて最適な拡散ベクトルの形状を選択する手段と、選択された拡散ベクトルを音源ベクトルに畳み込むことにより固定音源ベクトルを生成する手段とを具備する固定音源符号帳を有するＣＥＬＰ型音声符号化装置から送信された音源利得符号、適応音源ベクトル符号及び固定音源ベクトル符号を受信して音声を復号するＣＥＬＰ型音声復号化装置であって、
前記音源利得符号で指定される適応音源ベクトル利得と固定音源ベクトル利得を復号する量子化利得生成手段と、前記適応音源ベクトル符号で指定される過去の駆動音源信号サンプルから１フレーム分のサンプルを適応音源ベクトルとして取り出す適応音源符号帳と、前記固定音源ベクトル符号で指定される固定音源ベクトルを生成する固定音源符号帳と、前記適応音源ベクトルに前記適応音源ベクトル利得を乗算したベクトルと前記固定音源ベクトルに前記固定音源ベクトル利得を乗算したベクトルとを加算して駆動音源ベクトルを生成する駆動音源ベクトル生成手段と、前記駆動音源ベクトルに対して高域強調処理を行う高域強調手段と、前記高域強調手段から出力された駆動音源ベクトルに対してフィルタ係数を用いてフィルタ合成を行う合成フィルタを具備し、
前記高域強調手段は、前記駆動音源ベクトルの高域成分を通過させるハイパスフィルタと、このハイパスフィルタ通過後の駆動音源ベクトルの対数パワを算出する第１対数パワ計算器と、前記ハイパスフィルタ通過後の駆動音源ベクトルを前記ハイパスフィルタ通過前の駆動音源ベクトルから減じる処理を行う加算器と、前記加算器によって算出された高域成分除去後の駆動音源ベクトルの対数パワを算出する第２対数パワ計算器と、前記２つの対数パワ計算器によって計算された対数パワの比を計算するパワ比計算器と、前記パワ比が一定の値になるようにハイパスフィルタ通過後の駆動音源ベクトルに乗ずる係数の値を算出する係数算出器とを具備し、
前記ハイパスフィルタを通過した信号成分に前記係数算出器で算出された係数を乗算し、その結果を前記駆動音源ベクトルに加算することにより高域強調処理を行うＣＥＬＰ型音声復号化装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＣＥＬＰ型音声符号化装置あるいはＣＥＬＰ型音声復号化装置に用いられる固定音源ベクトルの生成方法及び固定音源符号帳に関する。
【０００２】
【従来の技術】
ディジタル移動通信や、インターネット通信に代表されるパケット通信、あるいは音声蓄積などの分野においては、電波などの伝送路容量や記憶媒体の有効利用のために音声情報を圧縮し、高能率で符号化するための音声符号化装置が用いられている。
【０００３】
中でもＣＥＬＰ（Code Excited Linear Prediction）方式をベースにした方式が中・低ビットレートにおいて広く実用化されている。パルス音源を駆動音源信号として用いるＣＥＬＰの技術については、非特許文献１に示されている。
【０００４】
ＣＥＬＰ型音声符号化方式は、ディジタル化された音声信号を一定のフレーム長（5ms〜50ms程度）に区切り、フレーム毎に音声の線形予測を行い、フレーム毎の線形予測による予測残差（励振信号）を、既知の波形からなる適応符号帳と雑音（固定）符号帳とを用いて符号化するものである。
【０００５】
適応符号帳は、過去に生成した駆動音源信号を格納しており、音声信号の周期成分を表現するために用いられる。固定符号帳は予め用意された定められた数の定められた形状を有するベクトルを格納しており、適応符号帳では表現できない非周期的成分を主として表現するために用いられる。
【０００６】
固定符号帳に格納されるベクトルとしては、ランダムな雑音系列から成るベクトルや、何本かのパルスの組み合わせによって表現されるベクトルなどが用いられる。
【０００７】
数本のパルスの組み合わせによってベクトルを表現する固定符号帳の代表的なものの一つに代数的固定符号帳がある。代数的固定符号帳については「ITU-T勧告G.729」などに具体的内容が示されている。代数的固定符号帳は、少ない演算量で固定音源符号帳を探索でき、また、音源ベクトルを格納しておくROMの容量を減らすことができるといったメリットがある。しかし、その一方で、雑音成分の忠実な符号表現が困難であるという問題点もある。
【０００８】
この代数的固定符号帳の問題点を解決する方法の一つとして、パルス拡散符号帳を用いる技術がある。パルス拡散については、「ITU-T勧告G.729 Annex-D」等に開示されている。このパルス拡散は、音源ベクトルに、拡散パタン（固定波形）を畳み込んで固定音源ベクトルを生成する方法である。
【０００９】
図１は、従来のパルス拡散構造を有する固定音源符号帳の構成の一例を示すブロック図である。パルス拡散符号帳１０は、パルス音源符号帳１１と、拡散ベクトル畳込み処理器１２と、拡散ベクトル格納器１３とを具備する。
【００１０】
パルス音源符号帳１１からパルス音源ベクトルが出力され、このパルス音源ベクトルに対して、拡散ベクトル格納器１３から取り出された拡散ベクトルが拡散ベクトル畳込み処理器１２において畳み込まれ、これにより、固定音源ベクトル(雑音音源ベクトル)が生成される。
【００１１】
従来のパルス拡散によって、例えば4kbit/s以下のような低ビットレートにおけるパルス音源符号帳の性能を改善することが可能である。
【非特許文献１】
M.R. Schroeder and B.S. Atal:”Code-Excited Linear Prediction(ＣＥＬＰ): High-quality Speech at Very Low Bit Rates”, Proc. ICASSP-85, 25.1.1, pp.937-940, 1985”
【００１２】
【発明が解決しようとする課題】
しかし、例えば、次世代の携帯電話システムでは、さらに大きな品質改善（すなわち、復元音声の品質をさらに向上させること）が求められており、既存の技術では、この要求を満足させることが困難である。
【００１３】
例えば、拡散ベクトルのパターンを単純に増大させても、その分だけ復元音声の品質が改善されるというものではないし、また、拡散ベクトルのパターンの増大は、メモリ容量の増大や信号処理の煩雑化を招く恐れがある。
【００１４】
本発明の目的は、音声の符号化側または復号化側において音声品質の改善を図って復元音声の品質をさらに向上させ、ユーザーにとってより自然で聞きやすい音声を復元することができる技術を提供することである。
【００１５】
【課題を解決するための手段】
本発明の目的は、音声の符号化側または復号化側において音声品質の改善を図って復元音声の品質をさらに向上させ、ユーザーにとってより自然で聞きやすい音声を復元することができる技術を提供することである。
【００１６】
この目的は、音声符号化側において、固定音源ベクトルの生成に関して、多数のパルス音源ベクトルの中から、例えば、使用頻度が高い特定の形状を有するパルス音源ベクトルを予め選び、選んだパルス音源ベクトルに対応する専用の拡散ベクトルを用意することにより達成される。
【００１７】
また、音声復号化側において、合成フィルタ（人間の声道を模した機能をもつ）に入力される前の、音源信号（人間の声帯で発せられる音声を模した信号）について、例えば、従来にない工夫された特性の高域強調処理を施すことにより達成される。
【００１８】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を用いて説明する。
【００１９】
まず、本発明における音声信号送信装置および音声信号受信装置の全体構成の概略を、図２を用いて説明する。
【００２０】
図２において、音声信号１０１は入力装置１０２によって電気的信号に変換されＡ／Ｄ変換装置１０３に出力される。Ａ／Ｄ変換装置１０３は入力装置１０２から出力された（アナログ）信号をディジタル信号に変換し音声符号化装置１０４へ出力する。音声符号化装置１０４はＡ／Ｄ変換装置１０３から出力されたディジタル音声信号を後述する音声符号化方法を用いて符号化し符号化情報をＲＦ変調装置１０５へ出力する。ＲＦ変調装置１０５は音声符号化装置１０４から出力された音声符号化情報を電波等の伝播媒体に載せて送出するための信号に変換し送信アンテナ１０６へ出力する。送信アンテナ１０６はＲＦ変調装置１０５から出力された出力信号を電波（ＲＦ信号）として送出する。なお、図中のＲＦ信号１０７は送信アンテナ１０６から送出された電波（ＲＦ信号）を表す。以上が音声信号送信装置の構成および動作である。
【００２１】
ＲＦ信号１０８は受信アンテナ１０９によって受信されＲＦ復調装置１１０へ出力される。なお、図中のＲＦ信号１０８は受信アンテナ１０９に受信された電波を表し、伝播路において信号の減衰や雑音の重畳がなければＲＦ信号１０７と全く同じ物となる。
【００２２】
ＲＦ復調装置１１０は受信アンテナ１０９から出力されたＲＦ信号から音声符号化情報を復調し音声復号化装置１１１へ出力する。音声復号化装置１１１はＲＦ復調装置１１０から出力された音声符号化情報から後述する音声復号化方法を用いて音声信号を復号しＤ／Ａ変換装置１１２へ出力する。Ｄ／Ａ変換装置１１２は音声復号化装置１１１から出力されたディジタル音声信号をアナログの電気的信号に変換し出力装置１１３へ出力する。
【００２３】
出力装置１１３は電気的信号を空気の振動に変換し音波として人間の耳に聴こえるように出力する。なお、図中、参照符号１１４は出力された音波を表す。以上が音声信号受信装置の構成および動作である。
【００２４】
上記のような音声信号送信装置および受信装置の少なくとも一方を備えることにより、移動通信システムにおける基地局装置および移動端末装置を構成することができる。
【００２５】
以下、音声符号化側における、拡散ベクトルを用いた固定音源ベクトルの生成の改善（実施の形態１）と、音声復号化側における高域強調処理（実施の形態２）について、順次、図面を参照して具体的に説明する。
【００２６】
（実施の形態１）
実施の形態１では、固定音源符号帳において、予め定められた形状のパルス音源ベクトルに使用される専用の拡散ベクトル（以下、「追加拡散ベクトル」という）を用意し、パルス音源ベクトルの形状に応じて最適な拡散ベクトルを適用する場合について説明する。
【００２７】
図３は、図２の音声信号送信装置に搭載されている音声符号化装置１０４の構成を示すブロック図である。
【００２８】
音声符号化装置１０４の入力信号は、Ａ／Ｄ変換装置１０３から出力される信号であり、前処理部２００に入力される。前処理部２００は、ＤＣ成分を取り除くハイパスフィルタ処理や後続する符号化処理の性能改善につながるような波形整形処理やプリエンファシス処理を行い、これらの処理後の信号（Xin）をＬＰＣ分析部２０１および加算器２０４に出力する。
【００２９】
ＬＰＣ分析部２０１は、Xinを用いて線形予測分析を行い、分析結果（線形予測係数）をＬＰＣ量子化部２０２へ出力する。ＬＰＣ量子化部２０２は、ＬＰＣ分析部２０１から出力された線形予測係数（ＬＰＣ）の量子化処理を行い、量子化ＬＰＣを合成フィルタ２０３へ出力するとともに量子化ＬＰＣを表す符号Lを多重化部２１３へ出力する。
【００３０】
合成フィルタ２０３は、量子化ＬＰＣに基づくフィルタ係数により、後述する加算器２１０から出力される駆動音源に対してフィルタ合成を行うことにより合成信号を生成し、合成信号を加算器２０４へ出力する。
【００３１】
加算器２０４は前記Xinと前記合成信号との誤差信号を算出し、聴覚重み付け部２１１へ出力する。聴覚重み付け部２１１は、加算器２０４から出力された誤差信号に対して聴覚的な重み付けをおこない、聴覚重み付け領域での前記Xinと前記合成信号との歪みを算出し、パラメータ決定部２１２へ出力する。
【００３２】
パラメータ決定部２１２は、聴覚重み付け部２１１から出力された前記符号化歪みを最小とする適応音源ベクトル、固定音源ベクトル及び量子化利得を、各々適応音源符号帳２０５、固定音源符号帳２０７及び量子化利得生成部２０６から選択し、選択結果を示す適応音源ベクトル符号（Ａ）、音源利得符号（Ｇ）及び固定音源ベクトル符号（Ｆ）を多重化部２１３に出力する。また、パラメータ決定部２１２は、固定音源符号帳２０７で選択されたパルス音源ベクトルの形状が予め設定された特定の形状のものである場合、当該ベクトル専用に用意された追加拡散ベクトルのセットの中から基本拡散ベクトルよりも量子化誤差を小さくする拡散ベクトルがあるかを調べ、最も量子化誤差を小さくする拡散ベクトルを基本拡散ベクトルと追加拡散ベクトルの中から選択し、選択結果を示す制御信号を固定音源符号帳２０７に出力する。
【００３３】
適応音源符号帳２０５は、過去に加算器２１０によって出力された駆動音源信号をバッファリングしており、パラメータ決定部２１２から出力された信号によって特定される過去の駆動音源信号サンプルから１フレーム分のサンプルを適応音源ベクトルとして切り出して乗算器２０８へ出力する。
【００３４】
量子化利得生成部２０６は、パラメータ決定部２１２から出力された信号によって特定される適応音源利得と固定音源利得とをそれぞれ乗算器２０８と２０９へ出力する。
【００３５】
固定音源符号帳２０７は、パラメータ決定部２１２から出力された信号によって特定される形状を有するパルス音源ベクトルに拡散ベクトルを乗算して得られた固定音源ベクトルを乗算器２０９へ出力する。この固定音源符号帳２０７の構成が本実施の形態の特徴的な部分であり、この特徴部分については、後に、具体的に説明する。
【００３６】
乗算器２０８は、量子化利得生成部２０６から出力された量子化適応音源利得を、適応音源符号帳２０５から出力された適応音源ベクトルに乗じて、加算器２１０へ出力する。
【００３７】
乗算器２０９は、量子化利得生成部２０６から出力された量子化固定音源利得を、固定音源符号帳２０７から出力された固定音源ベクトルに乗じて、加算器２１０へ出力する。
【００３８】
加算器２１０は、利得乗算後の適応音源ベクトルと固定音源ベクトルとをそれぞれ乗算器２０８と２０９から入力し、これらをベクトル加算し、加算結果である駆動音源を合成フィルタ２０３および適応音源符号帳２０５へ出力する。
【００３９】
多重化部２１３は、ＬＰＣ量子化部２０２から量子化ＬＰＣを表す符号（Ｌ）を、パラメータ決定部２１２から適応音源ベクトルを表す符号（Ａ）、固定音源ベクトルを表す符号（Ｆ）および量子化利得を表す符号（Ｇ）を、それぞれ入力し、これらの情報を多重化して符号化情報として伝送路へ出力する。
【００４０】
以上が音声符号化装置１０４の各構成部分の説明である。
【００４１】
次に、固定音源符号帳２０７の具体的構成及び特徴について図面を用いて説明する。
【００４２】
図４は、図３の固定音源符号帳２０７の構成を示すブロック図である。
【００４３】
図４において、パルス音源符号帳３０１はパルス音源ベクトルをパルス音源ベクトル形状判定器３０２および拡散ベクトル畳込み処理器３０３にそれぞれ出力する。
【００４４】
パルス音源ベクトル形状判定器３０２は、予め定められたベクトル形状をこのベクトル形状を特定するパラメータと関連付けてメモリに記憶する。ここで、パルス音源ベクトルが数本のパルスのみから構成される場合、これらの形状は、パルス間距離（何サンプル離れているか）とパルスの極性関係（異極性か同極性か）によって特定される。この場合、パルス間距離とパルスの極性関係がパラメータとなる。
【００４５】
そして、パルス音源ベクトル形状判定器３０２は、ベクトル形状パルス音源符号帳３０１から出力されたパルス音源ベクトルのパラメータと、記憶する各ベクトル形状のパラメータとを比較し、例えば、全てのパラメータが一致した場合、それらのベクトルは同一形状であると判定する。パルス音源ベクトルが数本のパルスのみから構成される場合、パルス音源ベクトル形状判定器３０２は、各パルス間の相対的な位置および極性の関係が同じであれば、それらのベクトルは同一形状であると判定する。なお、同じパルス間隔で同じパルス極性を有したベクトルを時間軸方向にシフトしたものやベクトルの大きさ（パルスの振幅）を定数倍したものなども同一形状のベクトルと判定する。
【００４６】
パルス音源ベクトル形状判定器３０２は、同一形状のベクトルが存在した場合、その形状のパルス音源ベクトル専用に設計した追加拡散ベクトルを出力するように拡散ベクトル格納器３０４へ制御信号を出力する。一方、パルス音源ベクトル形状判定器３０２は、同一形状のベクトルが存在しなかった場合、基本拡散ベクトルを出力するように拡散ベクトル格納器３０４へ制御信号を出力する。
【００４７】
拡散ベクトル格納器３０４は、すべてのパルス音源ベクトルに対して共通に使用される基本拡散ベクトルの他に、予め定められた形状のパルス音源ベクトルに使用される追加拡散ベクトルをメモリに記憶し、パラメータ決定部２１２からの制御信号及びパルス音源ベクトル形状判定器３０２からの制御信号によって、拡散ベクトル畳込み処理器３０３へ出力する拡散ベクトルを切り替える。すなわち、拡散ベクトル格納器３０４は、固定音源ベクトル形状判定器３０２によって判定されたパルス音源ベクトル形状に対応する拡散ベクトルを選択し、拡散ベクトル畳込み処理器３０３へ出力する。
【００４８】
拡散ベクトル畳込み処理器３０３は、パルス音源符号帳３０１から出力されたパルス音源ベクトルに対して、拡散ベクトル格納器３０４から取り出された拡散ベクトルを畳み込む。これにより、固定音源ベクトル(雑音音源ベクトル)が生成される。
【００４９】
このように、音源ベクトルの形状に応じて最適な拡散ベクトルの形状を選択し、これを畳み込むことにより、所定の拡散ベクトル（１種類もしくは複数種類の基本拡散ベクトル）を全てのパルス音源ベクトルに適用する場合に比べて符号化性能を改善することができる。
【００５０】
ここで、パルス音源ベクトル形状判定器３０２のメモリに記憶させるベクトル形状は何種類であっても良いが、使用頻度の高い特定形状の音源ベクトルについてのみ追加拡散ベクトルを用意することにより、追加拡散ベクトルの数を絞込み、追加拡散ベクトルを導入することにより生じるＲＯＭ容量の増加を抑えることができる。
【００５１】
以下、パルス音源ベクトル形状判定器３０２のメモリに先験的に記憶させる使用頻度の高い特定形状の音源ベクトルの選定方法、及び、これに適用する追加拡散ベクトルの選定方法について具体的に説明する。
【００５２】
図５Ａ、図５Ｂは、パルス音源符号帳３０１から出力されるパルス音源ベクトル（２本のパルスの場合）についての、各パルス間の距離と各パルスの極性をパラメータとした場合の使用頻度の分布を示す図であり、数時間の音声データを実際に符号化して集計したものである。図５Ｂは、図５Ａを横軸方向に拡大した図であり、図５Ａ、図５Ｂの横軸はパルス間距離（サンプル）を、縦軸はそのパルス間距離を有する音源ベクトルが使用された正規化使用頻度をそれぞれ示す。また、図５Ａ、図５Ｂにおいて、原点は２パルスが重なり、１パルスの音源ベクトルであることを示し、原点の左側は異極性のパルスの組み合わせであることを、右側は同極性の組み合わせであることを、それぞれ表す。
【００５３】
なお、正規化使用頻度とは、各間隔のパルス音源ベクトルが使用された回数を各間隔のパルスの組み合わせ数で割った値であり、例えば、間隔が１サンプルの場合、第１パルスが１サンプルで第２パルスが２サンプル、同２サンプルと同３サンプル、など複数の組み合わせが存在する場合はパルス音源符号帳が生成しうる全ての組み合わせ数で正規化した頻度をいう。
【００５４】
図５Ａ、図５Ｂから明らかように、使用頻度は、極性の組み合わせによらず、２パルス間の距離が２サンプル以内である音源ベクトルに集中する。
【００５５】
そこで、２パルス間の距離が２サンプル以内の音源ベクトル５種類（パルス間距離０、パルス間距離１で同極性パルス、パルス間距離１で異極性パルス、パルス間距離２で同極性パルス、パルス間距離２で異極性パルス）をパルス音源ベクトル形状判定器３０２のメモリに記憶させるものとして選定する。
【００５６】
次に、選定した各音源ベクトルについて、それぞれ専用の追加拡散ベクトルを学習によって設計する。
【００５７】
なお、拡散ベクトルの学習は、例えばK.Yasunaga et al, “Dispersed-pulse codebook and its application to a 4kb/s speech coder,” Proc. ICASSP2000, pp.1503-1506, 2000の3.1節に示されているように、一般化Lloydアルゴリズムに基づいて行い、学習データに対する符号化歪の総和を最小化する拡散ベクトルを決定する。
【００５８】
図６〜図１０は、設計された追加拡散ベクトルの一例を示す図で、各音源ベクトルに対して４種類ずつ追加拡散ベクトルを設計した例である。
【００５９】
図６は、パルス間距離が２サンプルでパルス極性が同極性である音源ベクトルについて、専用の拡散ベクトル４種類（Ａ１〜Ａ４）を割り当てていることを示している。同様に、図７は、パルス間距離が１サンプルで、パルス極性が同極性の音源ベクトルについて、４種類（Ｂ１〜Ｂ４）の追加拡散ベクトルが設けられていることを示す。以下同様に、図８、図９、図１０は、それぞれ、パルス間距離０サンプルで同極性、パルス間距離１サンプルで異極性、パルス間距離２サンプルで異極性の音源ベクトルについて、４種類ずつの追加拡散ベクトルが設けられていることを示す。図６〜図１０より明らかなように、５種類のパルス音源ベクトルに対して得られた追加拡散ベクトルの形状は互いに異なる特徴を有する。
【００６０】
なお、全ての音源ベクトルに対して共通の拡散ベクトルを用いて学習を行うと、これら異なる特徴を有する拡散ベクトルの平均的な形状を有するベクトルが得られてしまうので、性能改善にも限界がある。基本拡散ベクトルの一例を図１１に示す。
【００６１】
また、図６〜図１０では、各音源ベクトルについて、４種類の追加拡散ベクトルを割り当てることを前提として説明しているが、本発明はこれに限定されるものではない。例えば、図６〜図１０に示される追加拡散ベクトルの数（種類）は１種類であっても良い。
【００６２】
また、図には示さないが、パルスが３本の場合でも、使用頻度が高い特定形状の音源ベクトル毎に別々の追加拡散ベクトルを設ける。
【００６３】
図１２は、追加拡散ベクトルが図６〜図１０に示したものである場合の拡散ベクトル格納器３０４の選択処理の内容を具体的に説明するための図である。
【００６４】
拡散ベクトル格納器３０４は、図１２に示すように、複数の拡散ベクトルサブセット４００〜４０５を備える。
【００６５】
拡散ベクトルサブセット４００は、基本拡散ベクトルを出力する端子Ｘ０を備え、スイッチ４０６を介して基本拡散ベクトルを拡散ベクトル畳込み処理器３０３に出力する。
【００６６】
拡散ベクトルサブセット４０１は、図６に示した４つの追加拡散ベクトルを出力する端子Ａ１〜Ａ４と基本拡散ベクトルを出力する端子Ａ０とを備え、５種類の拡散ベクトルＡ０〜Ａ４の中からパラメータ決定部２１２によって決定された拡散ベクトルをスイッチ４０７で１つ選び、スイッチ４０６を介して拡散ベクトル畳込み処理器３０３に出力する。
【００６７】
同様に、拡散ベクトルサブセット４０２〜４０５は、それぞれ、図７〜図１０に示した４つの追加拡散ベクトルを出力する端子Ｂ１〜Ｂ４、Ｃ１〜Ｃ４、Ｄ１〜Ｄ４、Ｅ１〜Ｅ４と基本拡散ベクトルを出力する端子Ｂ０、Ｃ０、Ｄ０、Ｅ０とを備え、パラメータ決定部２１２によって決定された拡散ベクトルをスイッチ４０８、４０９、４１０、４１１で１つ選び、スイッチ４０６を介して拡散ベクトル畳込み処理器３０３に出力する。
【００６８】
なお、図１２において、端子Ｘ０、Ａ０、Ｂ０、Ｃ０、Ｄ０、Ｅ０から出力される基本ベクトルは同一のものである。
【００６９】
拡散ベクトルサブセット４００〜４０５の切替えを行うスイッチ４０６は、パルス音源符号帳３０１から出力されてくるパルス音源ベクトルの形状によって、パルス音源ベクトル形状判定器３０２の制御に基づいて切り替わる。即ち使用頻度の高い特定の形状のパルス音源ベクトルがパルス音源符号帳３０１からパルス音源ベクトル形状判定器３０２へ入力されると、その形状のパルス音源ベクトルに対応する拡散ベクトルサブセット４０１〜４０５の出力端子にスイッチ４０６が接続される。なお、特定の形状ではないパルス音源ベクトルがパルス音源符号帳３０１からパルス音源ベクトル形状判定器３０２へ入力されると、拡散ベクトルサブセット４００の出力端子にスイッチ４０６が接続される。
【００７０】
スイッチ４０７〜４１１は、各拡散ベクトルサブセット４０１〜４０５に具備された５種類の拡散ベクトルの中からパラメータ決定部２１２によって決定された拡散ベクトルを出力する端子に接続する。
【００７１】
以上の構成により、パルス音源ベクトル形状判定器３０２に記憶されたものと同一の音源ベクトルが固定音源符号帳３０１から出力された場合は、４種類の追加拡散ベクトルと基本拡散ベクトルの５種類の中から最適なものが１つ選ばれる。
【００７２】
なお、図１２では、追加拡散ベクトルを備えた拡散ベクトルサブセットは５つであるが、本発明では拡散ベクトルサブセットの数に制限はなく、使用頻度の高いパルス音源ベクトルのパターン数に応じて適宜増減させることができる。また、各拡散ベクトルサブセットに備えられている追加拡散ベクトルは４種類であるが、本発明では追加拡散ベクトルの数に制限はない。
【００７３】
以上説明した処理の重要な部分の手順を図１３に示す。図１３は、図４に示した固定音源符号帳探索の処理フローを示すフローチャートである。
【００７４】
まず、ＳＴ５０１で基本拡散ベクトルを用いたパルス音源探索が行われる。基本拡散ベクトルにインパルス（即ち拡散なし）を用いても良い。具体的な探索方法は、例えば、特開平１０−６３３００号公報（第１７段落（従来技術）および第５１〜５４段落）、K.Yasunaga et al, “Dispersed-pulse codebook and its application to a 4kb/s speech coder,” Proc. ICASSP2000, pp.1503-1506, 2000の2.2節に開示されている。
【００７５】
次に、ＳＴ５０２においてＳＴ５０１にて選択されたパルス音源ベクトルが予め定められた特定の形状のパラメータ（パルス位置、極性の組み合わせ）を有しているかどうかをチェックする。
【００７６】
これらの特定の形状とは、パルス音源符号帳から生成されるパルス音源ベクトルのうち、固定音源ベクトルとして使用される（探索の結果選択される）頻度が高いベクトルの形状のことを指す。
【００７７】
すなわち、より具体的には、例えば２パルス音源では、パルス間距離が１サンプル（例えば１１サンプル目と１２サンプル目に音源パルスが立てられている）でパルス極性が異符号である形状や、パルス間距離が２サンプル（例えば２０サンプル目と２２サンプル目に音源パルスが立てられている）でパルス極性が同符号である形状等が使用頻度の高いベクトルである。
【００７８】
このような特定の形状を有する音源ベクトルではない場合はＳＴ５０１で選択されたパルス音源ベクトルに基本拡散ベクトルを畳み込んだものを固定音源ベクトルとして使用する。
【００７９】
即ち図１２のスイッチ４０６は拡散ベクトルサブセット４００の端子Ｘ０に接続される。もし、ＳＴ５０１で選択されたパルス音源ベクトルが、特定の形状を有するベクトルである場合は、ＳＴ５０３へ進む。
【００８０】
ＳＴ５０３では、特定の形状を有するベクトル専用に用意された拡散ベクトルサブセット（図１２の拡散ベクトルサブセット４０１〜４０５）の追加拡散ベクトルの中から基本拡散ベクトルよりも量子化誤差を小さくする拡散ベクトルがあるかを調べ、最も量子化誤差を小さくする拡散ベクトルを基本拡散ベクトルと追加拡散ベクトルの中から選択する。なお、どの追加拡散ベクトルを含む拡散ベクトルサブセットを用いるかはパルス音源ベクトル形状判定器３０２によって決められる。
【００８１】
そして、ＳＴ５０１で選択されたパルス音源ベクトルにＳＴ５０２あるいはＳＴ５０３で選択された拡散ベクトルを畳み込んだものを固定音源符号ベクトルとして選択する。
【００８２】
このように、ある使用頻度の高い特定の形状を有するパルス音源ベクトルに対してのみ複数の追加拡散ベクトルを専用に用意する構成は、情報量の増加が少なくて済み、パルス音源符号帳によっては（使用されていないコードが存在するようなパルス音源符号帳では）ビット数の増加なしに実現できる場合もあり、実現が容易である。
【００８３】
ここで、上記の方法で生成される固定音源符号帳の符号化及び復号化について具体例を用いて説明する。例として、８０サンプルに２パルス立てる場合を考える。なお、２本のパルスをパルス１およびパルス２とし、双方とも８０サンプル中の任意の１サンプルに立てることができるものとし、パルス１とパルス２を同じ１サンプルに重ねて立てることも許容する。この場合、パルス振幅はパルス１とパルス２の振幅を加算したものとなり、両パルスの振幅が１であれば振幅２の１本のパルスとなる。２本のパルスが異なるサンプルに立てられる場合、その組み合わせは80Ｃ2＝３１６０通りである。２本のパルスの極性関係は同極性と異極性の２通りあるので、パルス音源ベクトルの形状は３１６０×２＝６３２０通りとなる。これに２本のパルスが重なって１本になる場合が８０通り加わり、パルス音源ベクトルの形状は合計６４００種類存在する。最後にパルス音源ベクトル全体の極性が２通りあるため、符号化されるパルス音源ベクトルは６４００×２＝１２８００通り（＜１４ビット）となる。
【００８４】
そして、パルス１よりパルス２が後ろにある場合には２本のパルスは異極性、パルス１とパルス２が同じ位置かパルス２の方が前にある場合には２本のパルスは同極性として、パルス１の極性を１ビットで表現することにより12800通りのベクトルを14ビットで表現することができる。
【００８５】
以下、１４ビットのコードで前記固定符号帳を表す方法を説明する。なお、このような符号化方法は、例えば3GPP標準規格のAMR符号化（3GPP TS 26.090、同26.073、同26.104）等に開示されている。
【００８６】
まず、パルス音源探索を行い、パルス１とパルス２の位置および極性を決定する。次に、パルス１とパルス２の位置関係を調べる。ここで、パルス１よりもパルス２が後方にある場合は、パルス１とパルス２の極性関係が異極性であるかどうか調べ、異極性でない場合はパルス１とパルス２の位置を入れ替える。逆に、パルス１とパルス２が同じ位置かパルス２の方が前にある場合は、パルス１とパルス２の極性関係が同極性であるかどうかを調べ、同極性でない場合はパルス１とパルス２の位置を入れ替える。
【００８７】
このようにして決定されたパルス１とパルス２を以下の様にして符号化する。14ビットをビット0〜13（ビット０が最下位ビット）とする。最上位ビットのビット１３（＝Ｓ）をパルス１の極性を表す１ビットとし、正の場合は１、負の場合は０とする。
【００８８】
次に、２本のパルスの位置の組み合わせがコード化される。例えば、パルス１の位置をp1、パルス２の位置をp2とすれば、コードCFは、CF＝p1×80＋p2としてコード化される。このようにして得られたCFは0〜6399である。これをビット0〜12の13ビット（0〜8191）で表現する。この結果、残りの6400〜8191に追加拡散ベクトルを適用した固定符号ベクトルを割り当てることができる。
【００８９】
追加拡散ベクトルは、
(1)パルス１とパルス２の距離が２サンプルで同極性（78通り）
(2)パルス１とパルス２の距離が１サンプルで同極性（79通り）
(3)パルス１とパルス２の距離が０サンプルで同極性（80通り）
(4)パルス１とパルス２の距離が１サンプルで異極性（79通り）
(5)パルス１とパルス２の距離が２サンプルで異極性（78通り）
の５種類の形状のパルス音源ベクトルそれぞれに追加拡散ベクトルを４種類ずつ割り当てられるとすれば、(1)には78×4＝312なので6400〜6711、(2)には79×4＝316なので6712〜7027、(3)には80×4＝320なので7028〜7347、(4)には79×4＝316なので7348〜7663、(5)には78×4＝312なので7664〜7975、のコードをそれぞれ割り当てることが可能である。具体的には、探索処理によって選択された追加拡散ベクトルの番号をdv（＝0〜3）とすると、
パルス音源ベクトル形状判定器で
(1)と判定された場合は
CF＝6400＋78×dv＋(p1-2),  （2≦p1≦79）、
(2)と判定された場合は
CF＝6712＋79×dv＋(p1-1),  （1≦p1≦79）、
(3)と判定された場合は
CF＝7028＋80×dv＋(p1),    （0≦p1≦79）、
(4)と判定された場合は
CF＝7348＋79×dv＋(p1),    （0≦p1≦78)、
(5)と判定された場合は
CF＝7664＋78×dv＋(p1),    （0≦p1≦77)、
というようにしてコードCFを生成する。
【００９０】
最後に極性ビットを最上位につけて、送信コードFを生成する（F＝S×8192＋CF）。
【００９１】
以上の様にしてパルス１の位置p1と極性s1、パルス２の位置p2と極性s2、そして、適用する拡散ベクトル情報を符号化する。
【００９２】
次に、送信コードFを受信した復号器の復号化について説明する。復号器においては、以下のような手順で２本のパルス位置（p1、p2）と極性（s1、s2）を復号する。
【００９３】
まず、受信コードFから極性情報Sを復号する。
S＝((F>>13)&1)×2-1    （Sは-1または+1となる）
【００９４】
次に、パルス位置情報コードCFを復号する。
CF＝F&0x1FFF
【００９５】
次に、CFの値により、以下のように処理を切替える。
(1)CFが6400未満の場合
p2＝CF%80、p1＝(CF-p2)÷80
s1＝S、s2＝ -S(p2＞p1の場合),  ＝ +S(p2≦p1の場合)
拡散ベクトルは基本拡散ベクトルを用いる。
(2)CFが6400以上6712未満の場合
p1＝(CF-6400)%78+2、p2＝p1−2、s1＝s2＝S
サブセット１（図６）のdv番目の追加拡散ベクトルを用いる。
dv＝((CF-6400)-(p1-2))÷78
(3)CFが6712以上7028未満の場合
p1＝(CF-6712)%79+1、p2＝p1−1、s1＝s2＝S
サブセット２（図７）のdv番目の追加拡散ベクトルを用いる。
dv＝((CF-6712)-(p1-1))÷79
(4)CFが7028以上7348未満の場合
p1＝(CF-7028)%80、p2＝p1、s1＝s2＝S
サブセット３（図８）のdv番目の追加拡散ベクトルを用いる。
dv＝((CF-7028)-p1)÷80
(5)CFが7348以上7664未満の場合
p1＝(CF-7348)%79、p2＝p1＋1、s1＝S、s2＝-S
サブセット４（図９）のdv番目の追加拡散ベクトルを用いる。
dv＝((CF-7348)-p1)÷79
(6)CFが7664以上7975未満の場合
p1＝(CF-7664)%78、p2＝p1＋2、s1＝S、s2＝-S
サブセット５（図10）のdv番目の追加拡散ベクトルを用いる。
dv＝((CF-7664)-p1)÷78
【００９６】
以上の様にしてパルス１の位置p1と極性s1、パルス２の位置p2と極性s2、そして、適用する拡散ベクトル情報を復号する。
【００９７】
図１４は、固定音源符号帳の他の構成を示すブロック図である。
【００９８】
図１４の固定音源符号帳２０７は、２つの固定音源符号帳のサブセット６０８、６０９を有する。第１の固定音源符号帳のサブセット６０８は、第１のパルス音源符号帳６０１、拡散ベクトル格納器６０２及び拡散ベクトル畳込み処理器６０３の３つのブロックから構成される。第１のパルス音源符号帳６０１は所定のパルス音源ベクトル（例えば２本のパルスから成るベクトル）を生成する音源符号帳である。拡散ベクトル格納器６０２はパルス音源符号帳６０１専用に設計した拡散ベクトルを格納する格納器である。拡散ベクトル畳込み処理器６０３は、第１のパルス音源符号帳６０１から出力されたパルス音源ベクトルに拡散ベクトル格納器６０２から出力された拡散ベクトルを畳み込む畳込み処理器である。
【００９９】
同様に、第２の固定音源符号帳サブセット６０９が第２のパルス音源符号帳６０４（例えば第２のパルス音源符号帳６０４は第１のパルス音源符号帳６０１と異なり、３本や５本のパルスから成るパルス音源ベクトルを生成する）、拡散ベクトル格納器６０５及び拡散ベクトル畳込み処理器６０６の３つのブロックから構成される。
【０１００】
ここで、各固定音源符号帳サブセット内の拡散ベクトル格納器はそれぞれのサブセットのパルス音源符号帳専用に設計されておりサブセット間で異なる拡散ベクトルを格納している。
【０１０１】
なお、本実施の形態においては、固定音源符号帳のサブセット数は２としたが、本発明ではその数に制限はなく、３以上でも同様の効果が得られる。
【０１０２】
また、各サブセット内のパルス音源符号帳は、音源ベクトルに含まれる音源パルス数が異なっても良いし、音源パルスのパターン（例えばある音源パルス符号帳は互いに接近した音源パルスの組み合わせのみを生成し、別の音源パルス符号帳は互いに離れた音源パルスの組み合わせのみを生成するようにするなど）が異なっていても良い。
【０１０３】
いずれにしても、サブセット毎に異なる特性・特徴を有する音源ベクトルが生成されるようになっていると性能改善度が高い。切替スイッチ６０７は、拡散ベクトル畳込み処理器６０３あるいは拡散ベクトル畳込み処理器６０６から出力される固定音源ベクトルのうち、いずれか一方を選択するためのスイッチである。
【０１０４】
この固定音源符号帳は、パラメータ決定部２１２から入力される信号（Ｆ）で特定される固定音源ベクトルを、第１の固定音源符号帳サブセット６０８または第２の固定音源符号帳サブセット６０９により生成し、スイッチ６０７を介して固定音源ベクトルとして出力する。
【０１０５】
図１５は、図１４の固定音源符号帳を探索する場合の処理手順を示すフローチャートである。
【０１０６】
まず、ＳＴ７０１において第１の固定音源符号帳サブセット探索が行われ、量子化誤差を最小とする固定音源ベクトルが選択される。
【０１０７】
次に、ＳＴ７０２において第２の固定音源符号帳サブセット探索が行われ、ＳＴ７０１において選択された固定音源ベクトルよりもさらに量子化誤差を小さくする固定音源ベクトルがあればそれを最終的な固定音源ベクトルとして選択する。
【０１０８】
なお、ＳＴ７０１とＳＴ７０２は、異なる固定音源符号帳に対して異なる拡散ベクトルが適用されている点が異なるのみで、具体的探索方法は前述した従来技術と同一である。前記異なる固定音源符号帳は、互いに生成される音源符号ベクトルの特徴が異なる（例えば音源パルス数が異なる）ように用意される。
【０１０９】
例えば、第１の固定音源符号帳サブセットは音源パルス２本から構成される音源ベクトルを生成し、第２の固定音源符号帳サブセットは音源パルス５本から生成される固定音源ベクトルを生成する、というように音源パルス本数が異なる固定音源符号帳サブセットを用意する。あるいは、第１の固定音源符号帳サブセットは音源パルス同士が接近した組み合わせの固定音源ベクトルを生成し、第２の固定音源符号帳サブセットは複数の音源パルスがベクトル全体に分散して配置されているような固定音源ベクトルを生成する（例えば、第１の固定音源符号帳サブセットも第２の固定音源符号帳サブセットも同じパルス数から成る音源ベクトルを生成するが、第１の固定音源符号帳サブセットは所定のサンプル数Ｍ（例えば、２〜１０サンプル）の範囲内に全てのパルスが配置された固定音源符号帳ベクトルを生成し、第２の固定音源符号帳サブセットは、全ての音源パルス間隔が所定のサンプル数Ｍ’（例えば、１０サンプル）以上である固定音源ベクトルを生成する）ように音源パルスの組み合わせ方が異なるような固定音源符号帳サブセットを用意する。
【０１１０】
このように、使用頻度が高い特定の形状の音源ベクトルに対して、専用の拡散ベクトルを適用することで、効率的に復元音声の品質を改善することができる。あるいは、パルス音源ベクトルの特徴に応じて異なる拡散ベクトルを適用することで、効率的に復元音声の品質を改善することができる。
【０１１１】
なお、使用頻度が高い特定形状のパルス音源ベクトルに対してのみ、複数の専用の拡散ベクトルを用意する構成であれば、拡散ベクトルのパターン数の増加はほとんど問題とならないし、拡散ベクトルのパターン設計の手間もほとんど問題とならない。
【０１１２】
その一方、きわめて効果的（効率的）に、復元音声の品質を向上できる。すなわち、実際の音質の向上に役立たない拡散ベクトルを多数用意することは無駄な処理であり、本発明では、少量の専用の拡散パターン（追加拡散ベクトル）を付加することで、効率的に音質向上という効果を得ることができる。
【０１１３】
以上説明した固定音源符号帳は、ハードウエアで実現できることはもちろんのこと、必要なベクトルデータをデータベースに蓄積しておき、そのデータを用いて適宜、ソフトウエアにより、固定音源ベクトルの波形データを生成することによっても実現することができる。
【０１１４】
（実施の形態２）
高域強調機能をもつディジタルフィルタは、従来から、合成フィルタより後の信号処理を行う部分に設けられていたが、このフィルタは、一般に、一次のディジタルフィルタによって表現されるハイパスフィルタであり、例えばJ-H. Chen and A. Gersho,”Adaptive Postfiltering for Quality Enhancement of Coded Speech”,IEEE Trans. Speech&Audio Processing,Vol.3,No.1,Jan.1995に示されている。
【０１１５】
これに対し、本実施の形態の特徴は、音声復号化側において、合成フィルタを経る前の信号に対して独自の高域強調処理を行うことである。
【０１１６】
図１６は、図２の音声復号化装置１１１の構成を示すブロック図である。
【０１１７】
図１６において、ＲＦ復調装置１１０から出力された符号化情報は、多重化分離部８０１によって多重化されている符号化情報を個々の符号情報に分離される。分離されたＬＰＣ符号（Ｌ）はＬＰＣ復号化部８０２に出力され、分離された適応音源ベクトル符号（Ａ）は適応音源符号帳８０５に出力され、分離された音源利得符号（Ｇ）は量子化利得生成部８０６に出力され、分離された固定音源ベクトル符号（Ｆ）は固定音源符号帳８０７へ出力される。
【０１１８】
ＬＰＣ復号化部８０２は多重化分離部８０１から出力された符号（Ｌ）からＬＰＣを復号し、合成フィルタ８０３に出力する。適応音源符号帳８０５は、多重化分離部８０１から出力された符号（Ａ）で指定される過去の駆動音源信号サンプルから１フレーム分のサンプルを適応音源ベクトルとして取り出して乗算器８０８へ出力する。
【０１１９】
量子化利得生成部８０６は、多重化分離部８０１から出力された音源利得符号（Ｇ）で指定される適応音源ベクトル利得と固定音源ベクトル利得を復号し乗算器８０８、８０９へ出力する。
【０１２０】
固定音源符号帳８０７は、多重化分離部８０１から出力された符号（Ｆ）で指定される固定音源ベクトルを生成し、乗算器８０９へ出力する。
【０１２１】
乗算器８０８は、適応音源ベクトルに前記適応音源ベクトル利得を乗算して、加算器８１０へ出力する。乗算器８０９は、固定音源ベクトルに固定音源ベクトル利得を乗算して、加算器８１０へ出力する。
【０１２２】
加算器８１０は、乗算器８０８、８０９から出力された利得乗算後の適応音源ベクトルと固定音源ベクトルの加算を行い、駆動音源ベクトルを生成し、高域強調部８１１へ出力する。
【０１２３】
高域強調部（高域強調ポストフィルタ）８１１は、駆動音源ベクトルに対して独自の高域強調処理を行い（例えば、周波数が高い成分ほど振幅強調の度合いが高くなるような高域強調処理を行い）、高域強調後の信号を合成フィルタ８０３に出力する。なお、高域強調部８１１の詳細については後述する。
【０１２４】
合成フィルタ８０３は、高域強調部８１１から出力された音源ベクトルを駆動信号として、ＬＰＣ復号化部８０２によって復号されたフィルタ係数を用いて、フィルタ合成を行い、合成した信号を後処理部８０４へ出力する。
【０１２５】
後処理部８０４は、ホルマント強調やピッチ強調といったような音声の主観的な品質を改善する処理や、定常雑音の主観的品質を改善する処理などを施した上で、最終的な復号音声信号としてＤ／Ａ変換装置１１２へ出力する。
【０１２６】
次に、高域強調処理について、図１７を用いて具体的に説明する。
【０１２７】
一般に、ＣＥＬＰ符号化においては復号信号の高周波成分が減衰する傾向がある。特に、低ビットレートではその傾向が大きくなるため、復号信号の高域成分を強調することにより、ある程度の主観的品質を改善することが可能である。
【０１２８】
図１７の高域強調部（高域強調ポストフィルタ）８１１において、音源ベクトルはハイパスフィルタ（ＨＰＦ）９０１、加算器９０２及び加算器９０３に入力される。
【０１２９】
ハイパスフィルタ９０１は、強調したい帯域成分を抽出する役目を果たす。駆動音源ベクトルの、ハイパスフィルタ９０１のカットオフ周波数より高域の成分は加算器９０３、対数パワ計算器９０４及び乗算器９０６に出力される。
【０１３０】
加算器９０３は音源ベクトルから音源ベクトルの高域成分の減算を行い、対数パワ計算器９０５へ出力する。
【０１３１】
対数パワ計算器９０４は、音源ベクトルの高域成分の対数パワを算出してパワ比計算器９０７へ出力する。対数パワ計算器９０５は、音源ベクトルから高域成分を取り除いた信号の対数パワを算出してパワ比計算器９０７へ出力する。
【０１３２】
パワ比計算器９０７は音源ベクトルの高域成分とその他成分との対数パワ比を計算し、強調係数計算器９０８へ出力する。
【０１３３】
強調計算器９０８は前記対数パワ比が原則一定となるように、音源ベクトルの高域成分に乗じるべき係数（強調係数Rr）を算出する。
【０１３４】
具体的には、対数パワ計算器９０４から出力された信号をEh[i]、対数パワ計算器９０５から出力された信号をEl[i]とすると、パワ比計算器９０７から出力される対数パワ比Ｒは、Ｌをサブフレーム長とすると以下の式（１）で表される。
Ｒ＝log10(ΣEl[i])−log10(ΣEh[i])  （ｉ＝0,1,・・・L-1）  ・・・(１)
【０１３５】
そこで、強調計算器９０８は、この対数パワ比Ｒを一定値Cr（例えば0.42）にするためにCrとＲとの比（対数パワ比）として係数Rrを以下の式（２）で求める。
Rr＝Ｒ−Cr                          ・・・(２)
【０１３６】
リミッタ９０９は、係数Rrの上限値（例えば0）と下限値（例えば0.3）を設定し、強調計算器９０８にて算出された係数Rrの値が上限値より大きい場合には係数Rrを上限値とし、下限値より小さい場合には係数Rrを下限値とする。
【０１３７】
平滑化回路９１０は、サブフレーム間やサンプル間でスムーズに強調係数Rrの値が変化するように、強調係数Rrの値を時間的に（サンプル間あるいは／及びサブフレーム間で）平滑化する。
【０１３８】
具体的には、まず、以下の式（３）に示すように対数パワ比を線形領域に戻して１を減じる。これは、高域成分を減じていないもとの音源信号（加算器８１０より）に加算するため、1.0を超える部分のみを加えたいためである。
Rrl＝pow(10., Rr)-1                  ・・・（３）
【０１３９】
そして、Rrlが（サブ）フレーム間で滑らかに変化するように以下の式（４）のように平滑化する。なお、平滑化係数αはそれほど強い平滑化にならない程度に設定する（例えばα＝0.3）。
Rrl'＝α×Rrl'＋(1-α)×Rrl            ・・・（４）
【０１４０】
さらに、この平滑化後の強調係数Rrl'をハイパスフィルタ９０１の出力信号exh[i]に乗じ、音源ベクトルex[i]に加算する際、以下の式（５）により、Rrl'を１サンプル毎に平滑化しRrl''とする。なお、この平滑化処理は強いものとする（例えばβ＝0.9）。
for(i=0;i<L;i++){
Rrl''＝β×Rrl''＋(1-β)×Rrl';
exn[i]＝ex[i]+Rrl''×exh[i];
}
【０１４１】
乗算器９０６は、ハイパスフィルタ９０１からの出力である音源ベクトルの高域成分exh[i]に平滑化回路９１０で平滑化された強調係数Rrl''を乗算する。
【０１４２】
加算器９０２は、音源ベクトルexn[i]に、平滑化された係数を乗じた音源ベクトルの高域成分信号Rrl''×exh[i]を加算して、合成フィルタ８０３へと出力する。
【０１４３】
なお、上記exn[i]はそのまま合成フィルタ８０３へ出力しても良いが、もとの音源ベクトルex[i]と同じエネルギーを有するようにスケーリング処理を行うことの方が一般的である。このようなスケーリング処理は加算器９０２の後に行っても良いし、スケーリング処理を考慮して上記Rrl''を算出するようにしても良い。後者の場合、平滑化回路９１０へハイパスフィルタ９０１から入力線が必要になる。前者の場合、加算器９０２と合成フィルタ８０３の間にスケーリング処理部が入り、スケーリング処理部には、音源ベクトル（加算器８１０より）と高域強調後の音源ベクトル（加算器９０２より）が入力されることになる。
【０１４４】
具体的な処理は以下の様になる。
（加算器９０２の後で行う場合）
Ene_ex ＝Σ(ex[i]×ex[i])  （ｉ＝0,1,・・・L-1）
Ene_exn＝Σ(exn[i]×exn[i])
Scl＝√(Ene_ex/Ene_exn)
for(i=0;i<L;i++){
Scl'=β×Scl'＋(1-β)×Scl;
exn[i]=exn[i]×Scl';
}
（Rrl''にスケーリング処理を含めてしまう場合）
Ene_ex ＝Σ(ex[i]×ex[i])、  （ｉ＝0,1,・・・L-1）
Ene_exn＝Σ((Rrl'×exh[i]＋ex[i])×(Rrl'×exh[i]＋ex[i]))
Scl＝√(Ene_ex/Ene_exn)
for(i=0;i<L;i++){
Rrl''＝β×Rrl''＋(1-β)×Scl;
exn[i]＝Rrl''×(Rrl'×exh[i]＋ex[i]);
}
【０１４５】
ハイパスフィルタ９０１の特性は、復号音声信号の主観的品質が最も良くなるように調整する。具体的には、サンプリング周波数が８kHzの場合、カットオフ周波数が３kHz前後となるような2次のＩＩＲフィルタとするのが好適である。なお、本発明の実施の形態では、前記カットオフ周波数は符号化装置の音源信号符号化特性に応じて自由に設計することが可能である。また、前記ハイパスフィルタの次数も、必要とされるフィルタ特性や許容される演算量に応じて自由に設計することが可能である。
【０１４６】
このように、独自の伝達関数をもつディジタルフィルタによる高域強調処理を行うことにより、励信信号の高周波数域におけるゲイン低下を補償してフラットな特性を実現することができるので、聴感向上に効果的な独自のフィルタ特性を実現することができ、効果的に復元音声の品質の改善を図ることができる。例えば、高域強調を行うことによって、復元音声がこもった感じの主観品質となることを防ぐことができる。
【０１４７】
また、合成フィルタの前に、本高域強調ポストフィルタを設けることは簡単にでき、本発明を実際の製品に適用することも容易である。
【０１４８】
以上説明したように、本発明によれば、最小限度のハードウエア等の追加により、効率的に復元音声の品質の向上を図ることができる。また，本発明によれば、パルス拡散構造を有する固定音源符号帳の性能改善が可能である。また、ＣＥＬＰ符号化における音源ベクトルの高域減衰を効果的に補償し、主観品質を改善することができる。
【０１４９】
なお、本願発明の固定ベクトルの生成方法、ＣＥＬＰ型音声符号化方法あるいはＣＥＬＰ型音声復号化方法は、プログラムを通信回線もしくはＣＤその他の記憶媒体からインストールしてＣＰＵ等の制御手段で実行することにより各々実現することができる。
【０１５０】
本明細書は、２００２年２月２０日出願の特願２００２−０４３８７８に基づくものである。この内容をここに含めておく。
【０１５１】
本発明は、ＣＥＬＰ型音声符号化装置あるいはＣＥＬＰ型音声復号化装置に用いるに好適である。
【０１５２】
【発明の効果】
本発明によれば、最小限度のハードウエア等の追加により、効率的に復元音声の品質の向上を図ることができる。また，本発明によれば、パルス拡散構造を有する固定音源符号帳の性能改善が可能である。また、CELP符号化における音源ベクトルの高域減衰を効果的に補償し、主観品質を改善することができる。
【図面の簡単な説明】
【図１】  従来のパルス拡散構造を有する固定音源符号帳の構成の一例を示すブロック図
【図２】  本発明における音声信号送信装置および音声信号受信装置の全体構成の概略を示す図
【図３】  本発明の実施の形態１に係る音声符号化装置の構成を示すブロック図
【図４】  本発明の実施の形態１に係る固定音源符号帳の構成を示すブロック図
【図５Ａ】  本発明の実施の形態１に係るパルス音源ベクトルの使用頻度の分布を示す図
【図５Ｂ】  本発明の実施の形態１に係るパルス音源ベクトルの使用頻度の分布を示す図
【図６】  本発明の実施の形態１に係る追加拡散ベクトルの一例を示す図
【図７】  本発明の実施の形態１に係る追加拡散ベクトルの一例を示す図
【図８】  本発明の実施の形態１に係る追加拡散ベクトルの一例を示す図
【図９】  本発明の実施の形態１に係る追加拡散ベクトルの一例を示す図
【図１０】  本発明の実施の形態１に係る追加拡散ベクトルの一例を示す図
【図１１】  本発明の実施の形態１に係る基本拡散ベクトルの一例を示す図
【図１２】  本発明の実施の形態１に係る拡散ベクトル格納器の選択処理の内容を具体的に説明するための図
【図１３】  本発明の実施の形態１に係る固定音源符号帳の処理手順を示すフローチャート
【図１４】  本発明の実施の形態１に係る固定音源符号帳の他の構成を示すブロック図
【図１５】  本発明の実施の形態１に係る固定音源符号帳を探索する場合の処理手順を示すフローチャート
【図１６】  本発明の実施の形態２に係る音声復号化装置の構成を示すブロック図
【図１７】  本発明の実施の形態２に係る高域強調部の構成を示すブロック図
【図１】
0004299676.tif 000002
【図２】
0004299676.tif 000003
【図３】
0004299676.tif 000004
【図４】
0004299676.tif 000005
【図５Ａ】
0004299676.tif 000006
【図５Ｂ】
0004299676.tif 000007
【図６】
0004299676.tif 000008
【図７】
0004299676.tif 000009
【図８】
0004299676.tif 000010
【図９】
0004299676.tif 000011
【図１０】
0004299676.tif 000012
【図１１】
0004299676.tif 000013
【図１２】
0004299676.tif 000014
【図１３】
0004299676.tif 000015
【図１４】
0004299676.tif 000016
【図１５】
0004299676.tif 000017
【図１６】
0004299676.tif 000018
【図１７】
0004299676.tif 000019