(57)【要約】  ビットを有効に利用した固定符号帳により音声符号化を行う音声符号化装置。この音声符号化装置では、探索ループ（２０４）内の位置・極性算出部（２０５）は、ｙＨとＨＨの値を用いて、パルスの位置及び極性を算出する。また、相関値・音源パワ算出部（２０６）は、ｙＨとＨＨから位置・極性算出部（２０５）によって算出されたパルス位置の値を取り出し、相関値、音源パワを算出する。探索ループ（２０７）は、位置・極性算出部（２０５）によって算出されたパルス位置及び極性と、相関値・音源パワ算出部（２０６）によって算出された相関値及び音源パワとを用いて、他のパルスの位置、極性、相関値、音源パワを順次算出する。大小判定部（２０８）は、探索ループ（２０７）によって算出された相関値及び音源パワを用いて求まる関数Ｃの値の大小を比較し、探索ループ（２０４）全体で最も大きくなるパルスの位置の組合せを探索する。
2008001866.tif 000002
【特許請求の範囲】
【請求項１】
複数のチャネルに分けた音源を固定符号帳によって符号化する音声符号化装置であって、
第１チャネルの音源候補を探索する第１探索手段と、
探索された第１チャネルの音源候補の位置情報と極性情報とを用いて、第２チャネルの音源候補を探索する第２探索手段と、
を具備する音声符号化装置。
【請求項２】
前記第２探索手段は、第３チャネル以降の音源候補を、上位チャネルの音源候補の位置情報と極性情報とを用いて探索する請求項１に記載の音声符号化装置。
【請求項３】
前記第２探索手段は、ループ処理を行う第１探索手段の内側ループ処理を行う請求項１に記載の音声符号化装置。
【請求項４】
複数のチャネルに分けた音源を固定符号帳によって符号化する音声符号化方法であって、
第１チャネルの音源候補を探索する第１探索工程と、
探索された第１チャネルの音源候補の位置情報と極性情報とを用いて、第２チャネルの音源候補を探索する第２探索工程と、
を具備する音声符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、固定符号帳探索を行う音声符号化装置及び音声符号化方法に関する。
【背景技術】
【０００２】
移動体通信においては、伝送帯域の有効利用のために音声や画像のディジタル情報の圧縮符号化が必須である。その中でも携帯電話で広く利用された音声コーデック（符号化／復号化）技術に対する期待は大きく、圧縮率の高い従来の高効率符号化に対してさらなる音質の要求が強まっている。【０００３】
近年、多層構造を有するスケーラブルコーデックの標準化がＩＴＵ−Ｔ、ＭＰＥＧ等で検討されており、より効率的で高品質な音声コーデックが求められている。【０００４】
音声の発声機構をモデル化してベクトル量子化を巧みに応用した基本方式「ＣＥＬＰ」（Code Excited Linear Prediction）によって大きく性能を向上させた音声符号化技術は、非特許文献１に記載の代数的符号帳（Algebraic Codebook）のような少数パルスによる固定符号帳の技術により、一段とその性能を向上させた。一方、雑音性や有声／無声に適応した符号化により、さらに高品質を目指す技術も出てきている。【０００５】
ところが、非特許文献１に記載の代数的符号帳のような少数パルスによる固定符号帳を用いた符号化では、ビットレートを下げるために、割り当てられるビット数を少なくする必要がある。割り当てられるビット数が少なくなると、各チャネルに割り当てられるビットも限られるので、パルスが全く立たない位置が存在してしまい、音質劣化を招いていた。【０００６】
この問題の対策として、特許文献１には、複数のチャネルに分かれている固定音源（確率的音源）の音源波形候補を他のチャネルの音源波形候補と関連付け、所定のアルゴリズムにより探索された音源波形の符号を固定符号帳の音源の符号とする技術が開示されている。これにより、固定符号帳のパルスを符号化する際のビット数の削減を図りながら、パルスが全く立たない位置が存在しないようにすることができる。【０００７】
また、外側の探索ループの音源波形候補に応じて、内側の探索ループの音源波形候補を変化させる方法、及び、パルス位置を剰余演算結果によって導く旨の方法も特許文献１に開示されている。
【特許文献１】特開２００４−１６３７３７号公報
【非特許文献１】Salami, Laflamme, Adoul,”8kbit/s ACELP Coding of Speech with 10ms Speech-Frame:a Candidate for CCITT Standardization”,IEEE Proc. ICASSP94,pp.II-97n
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述した特許文献１に記載の技術では、剰余と位置情報の利用方法が開示されているだけで、更にビット数が少なくなった場合の符号帳の設計方法についてまでは考慮されていない。また、最近、標準化が検討されているスケーラブルコーデック（ＩＴＵ−Ｔ、ＭＰＥＧ）などではグラニュラリティ（ビットレートの刻み）を確保するために、各々の拡張部に許されるビットレートが少ないことから、ビット数が少なくなった場合の符号帳の設計方法について考慮する必要性が高まっている。【０００９】
このような前提を考慮した場合、固定符号帳による符号化に配分できるビット数が非常に少なくても十分なパルス本数が必要であったり、サブフレーム内の所定の位置全てにパルスが立つことを保証する必要があったりするため、ビットを有効に利用した固定符号帳を構成することは、音声コーデックにおいて大きな課題となっている。【００１０】
本発明の目的は、ビットを有効に利用した固定符号帳により音声符号化を行う音声符号化装置及び音声符号化方法を提供することである。
【課題を解決するための手段】
【００１１】
本発明の音声符号化装置は、複数のチャネルに分けた音源を固定符号帳によって符号化する音声符号化装置であって、第１チャネルの音源候補を探索する第１探索手段と、探索された第１チャネルの音源候補の位置情報と極性情報とを用いて、第２チャネルの音源候補を探索する第２探索手段と、を具備する構成を採る。【００１２】
本発明の音声符号化方法は、複数のチャネルに分けた音源を固定符号帳によって符号化する音声符号化方法であって、第１チャネルの音源候補を探索する第１探索工程と、探索された第１チャネルの音源候補の位置情報と極性情報とを用いて、第２チャネルの音源候補を探索する第２探索工程と、を具備するようにした。
【発明の効果】
【００１３】
本発明によれば、ビットを有効に利用した固定符号帳により音声符号化を行うことができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施の形態に係るＣＥＬＰ符号化装置の構成を示すブロック図
【図２】図１に示した歪み最小化部の内部構成を示すブロック図
【図３】図２に示した探索ループの内部構成を示すブロック図
【図４】位置と極性との対応関係を示す図
【図５】固定符号帳探索処理の手順を示すフロー図
【図６】固定符号帳探索処理の手順を示すフロー図
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。【００１６】
（実施の形態）
図１は、本発明の実施の形態に係るＣＥＬＰ符号化装置１００の構成を示すブロック図である。音声信号Ｓ１１は、声道情報と音源情報とからなる。ＣＥＬＰ符号化装置１００は、音声信号Ｓ１１の声道情報を、ＬＰＣパラメータ（線形予測係数）を求めることにより符号化する。また、ＣＥＬＰ符号化装置１００は、音声信号Ｓ１１の音源情報を、予め記憶されている音声モデルのいずれを用いるかを特定するインデックス、すなわち、適応符号帳１０３及び固定符号帳１０４でどのような音源ベクトル（コードベクトル）を生成するかを特定するインデックスを求めることにより符号化する。【００１７】
具体的には、ＣＥＬＰ符号化装置１００の各部は以下の動作を行う。【００１８】
ＬＰＣ分析部１０１は、音声信号Ｓ１１に対して線形予測分析を施し、スペクトル包絡情報であるＬＰＣパラメータを求め、求めたＬＰＣパラメータをＬＰＣ量子化部１０２及び聴感重み付け部１１１に出力する。【００１９】
ＬＰＣ量子化部１０２は、ＬＰＣ分析部１０１から出力されたＬＰＣパラメータを量子化し、得られた量子化ＬＰＣパラメータをＬＰＣ合成フィルタ１０９に出力し、量子化ＬＰＣパラメータのインデックスをＣＥＬＰ符号化装置１００の外部へ出力する。【００２０】
適応符号帳１０３は、ＬＰＣ合成フィルタ１０９で使用された過去の駆動音源を記憶する。そして、適応符号帳１０３は、後述する歪み最小化部１１２から指示されたインデックスに対応する適応符号帳ラグに従って、記憶している駆動音源から１サブフレーム分の音源ベクトルを生成する。この音源ベクトルは、適応符号帳ベクトルとして乗算器１０６に出力される。【００２１】
固定符号帳１０４は、所定形状の音源ベクトルを複数個予め記憶する。そして、固定符号帳１０４は、歪み最小化部１１２から指示されたインデックスに対応する音源ベクトルを、固定符号帳ベクトルとして乗算器１０７に出力する。ここで、固定符号帳１０４は代数的音源であり、代数的符号帳を用いた場合について説明する。【００２２】
代数的音源とは、多くの標準コーデックに採用されている音源であり、位置と極性（＋−）にだけ情報があり、大きさが１のインパルスを少数立てた音源である。例えば、ＡＲＩＢ規格書「ＲＣＲ ＳＴＤ−２７Ｋ」の５．３節の「ＣＳ−ＡＣＥＬＰ」における５．３．１．９章、及び、５．４節の「ＡＣＥＬＰ」での５．４．３．７章等に記載されている。【００２３】
なお、上記の適応符号帳１０３は、有声音のように周期性の強い成分を表現するために使われ、一方、固定符号帳１０４は、白色雑音のように周期性の弱い成分を表現するために使われる。【００２４】
ゲイン符号帳１０５は、歪み最小化部１１２からの指示に従って、適応符号帳１０３から出力される適応符号帳ベクトル用のゲイン（適応符号帳ゲイン）、及び固定符号帳１０４から出力される固定符号帳ベクトル用のゲイン（固定符号帳ゲイン）を生成し、それぞれ乗算器１０６、１０７に出力する。【００２５】
乗算器１０６は、ゲイン符号帳１０５から出力された適応符号帳ゲインを、適応符号帳１０３から出力された適応符号帳ベクトルに乗じ、加算器１０８に出力する。【００２６】
乗算器１０７は、ゲイン符号帳１０５から出力された固定符号帳ゲインを、固定符号帳１０４から出力された固定符号帳ベクトルに乗じ、加算器１０８に出力する。【００２７】
加算器１０８は、乗算器１０６から出力された適応符号帳ベクトルと、乗算器１０７から出力された固定符号帳ベクトルとを加算し、加算後の音源ベクトルを駆動音源としてＬＰＣ合成フィルタ１０９に出力する。【００２８】
ＬＰＣ合成フィルタ１０９は、ＬＰＣ量子化部１０２から出力された量子化ＬＰＣパラメータをフィルタ係数とし、適応符号帳１０３及び固定符号帳１０４で生成される音源ベクトルを駆動音源としたフィルタ関数、すなわち、ＬＰＣ合成フィルタを用いて合成信号を生成する。この合成信号は、加算器１１０に出力される。【００２９】
加算器１１０は、ＬＰＣ合成フィルタ１０９で生成された合成信号を音声信号Ｓ１１から減算することによって誤差信号を算出し、この誤差信号を聴感重み付け部１１１に出力する。なお、この誤差信号が符号化歪みに相当する。【００３０】
聴感重み付け部１１１は、加算器１１０から出力された符号化歪みに対して聴感的な重み付けを施し、歪み最小化部１１２に出力する。【００３１】
歪み最小化部１１２は、聴感重み付け部１１１から出力された符号化歪みが最小となるような、適応符号帳１０３、固定符号帳１０４及びゲイン符号帳１０５の各インデックスをサブフレームごとに求め、これらのインデックスを符号化情報としてＣＥＬＰ符号化装置１００の外部に出力する。より詳細には、歪み最小化部１１２は、上記の適応符号帳１０３及び固定符号帳１０４に基づいて合成信号を生成する。この信号の符号化歪みを求める一連の処理は閉ループ制御（帰還制御）となっている。歪み最小化部１１２は、各符号帳に指示するインデックスを１サブフレーム内において様々に変化させることによって各符号帳を探索し、最終的に得られる、符号化歪みを最小とする各符号帳のインデックスを出力する。【００３２】
なお、符号化歪みが最小となる際の駆動音源は、サブフレームごとに適応符号帳１０３へフィードバックされる。適応符号帳１０３は、このフィードバックにより、記憶されている駆動音源を更新する。【００３３】
ここで、固定符号帳１０４の探索方法について説明する。まず、音源ベクトルの探索と符号の導出は以下の式（１）の符号化歪を最小化する音源ベクトルを探索することにより行われる。
【数１】
2008001866.tif 000003
Ｅ：符号化歪、ｘ：符号化ターゲット、ｐ：適応符号帳ベクトルのゲイン、Ｈ：聴感重み付け合成フィルタ、ａ：適応符号帳ベクトル、ｑ：固定符号帳ベクトルのゲイン、ｓ：固定符号帳ベクトル【００３４】
一般的に、適応符号帳ベクトルと固定符号帳ベクトルとはオープンループで（別々のループで）探索されるので、固定符号帳１０４の符号の導出は以下の式（２）の符号化歪を最小化する固定符号帳ベクトルを探索することにより行われる。
【数２】
2008001866.tif 000004
Ｅ：符号化歪、ｘ：符号化ターゲット（聴感重み付け音声信号）、ｐ：適応符号帳ベクトルの最適ゲイン、Ｈ：聴感重み付け合成フィルタ、ａ：適応符号帳ベクトル、ｑ：固定符号帳ベクトルのゲイン、ｓ：固定符号帳ベクトル、ｙ：固定符号帳探索のターゲットベクトル【００３５】
ここで、ゲインｐ、ｑは音源の符号を探索した後で決定するので、ここでは最適ゲインで探索を進めることとする。すると、上式（２）は以下の式（３）と書ける。
【数３】
2008001866.tif 000005
【００３６】
そして、この歪の式を最小化することは、以下の式（４）の関数Ｃを最大化することと同値であることがわかる。
【数４】
2008001866.tif 000006
【００３７】
よって、代数的符号帳の音源のような少数パルスからなる音源の探索の場合は、ｙＨとＨＨを予め計算しておけば、少ない計算量で上記関数Ｃを算出できる。【００３８】
図２は、図１に示した歪み最小化部１１２の内部構成を示すブロック図である。この図では、パルス数５本、固定符号帳の探索ループが２重ループの場合について示している。【００３９】
図２において、適応符号帳探索部２０１は、聴感重み付け部１１１において聴感的な重み付けが施された符号化歪みを用いて、適応符号帳１０３の探索を行う。探索の結果、適応符号帳ベクトルの符号を適応符号帳１０３及び固定符号帳探索部２０２の前処理部２０３に出力する。【００４０】
固定符号帳探索部２０２の前処理部２０３は、聴感重み付け部１１１における合成フィルタの係数Ｈを用いて、ベクトルｙＨ及びマトリクスＨＨを算出する。ｙＨはターゲットベクトルｙを逆順にしてマトリクスＨを畳み込み、更にその結果を逆順にすることにより求める。ＨＨはマトリクス同士の掛け算により求める。【００４１】
さらに、前処理部２０３は、ベクトルｙＨの要素の極性（＋−）から、事前にパルスの極性を決める。具体的には、各位置に立つパルスの極性をｙＨのその位置の値の極性に合わせることとし、ｙＨの値の極性を別の配列に格納しておく。各位置の極性を別の配列に格納した後、ｙＨの値は全て絶対値をとり正の値に変換しておく。また、格納した各位置の極性に合わせてＨＨの値も極性を乗ずることによって変換しておく。求めたｙＨ及びＨＨを探索ループ２０４内の位置・極性算出部２０５、相関値・音源パワ算出部２０６及び探索ループ２０７に出力する。【００４２】
探索ループ２０４は、位置・極性算出部２０５、相関値・音源パワ算出部２０６、探索ループ２０７及び大小判定部２０８を備えている。【００４３】
位置・極性算出部２０５は、前処理部２０３から出力されたｙＨとＨＨの値を用いて、パルスの位置を算出し、算出したパルスの位置に基づいて、このパルスの極性を算出する。算出されたパルス位置と極性は相関値・音源パワ算出部２０６及び探索ループ２０７に出力される。【００４４】
相関値・音源パワ算出部２０６は、前処理部２０３から出力されたｙＨとＨＨから位置・極性算出部２０５によって算出されたパルス位置の値を取り出し、相関値ｓｙ０、音源パワｓｈ０を算出する。算出した相関値ｓｙ０及び音源パワｓｈ０は探索ループ２０７に出力される。【００４５】
探索ループ２０７は、探索ループ２０４内の探索ループであり、位置・極性算出部２０５から出力されたパルス位置及びそのパルスの極性と、相関値・音源パワ算出部２０６から出力された相関値ｓｙ０及び音源パワｓｈ０とを用いて、他のパルスの位置、極性、相関値、音源パワを順次算出する。具体的には、位置・極性算出部２０５及び相関値・音源パワ算出部２０６では、チャネル０のパルスについて算出され、探索ループ２０７では、チャネル０のパルスの算出結果を用いて、チャネル１のパルスについて位置、極性、相関値、音源パワが算出され、チャネル１のパルスの算出結果を用いて、チャネル２のパルスについて同様に算出される。このように、チャネル数が上位のパルスの算出結果を用いて、下位のパルスについて位置、極性、相関値、音源パワを順次算出していく。ただし、本実施の形態では、３パルス目から位置の符号はなく、３パルス目以降のパルスの位置は上位の位置・極性情報から算出されることになる。最終的に求めた相関値と音源パワとを用いて関数Ｃを求め、求めた関数Ｃを大小判定部２０８に出力する。なお、探索ループ２０７の詳細については後述する。【００４６】
大小判定部２０８は、探索ループ２０７から出力された関数Ｃの値の大小を比較し、より大きい関数値を示す場合の関数Ｃの分子分母を上書き格納する。そして、探索ループ２０４全体で最も大きくなるパルスの位置の組合せを探索する。大小判定部２０８は、各パルスの位置の符号と極性の符号を合わせて固定符号帳ベクトルの符号とし、この符号を固定符号帳１０４及びゲイン符号帳探索部２０９に出力する。【００４７】
ゲイン符号帳探索部２０９は、大小判定部２０８から出力された各パルスの位置の符号と極性の符号を合わせた固定符号帳ベクトルの符号に基づいて、ゲイン符号帳を探索し、探索結果をゲイン符号帳１０５に出力する。【００４８】
図３は、図２に示した探索ループ２０７の内部構成を示すブロック図である。この図において、位置・極性算出部３０１は、位置・極性算出部２０５から出力されたパルスの位置及び極性と、相関値・音源パワ算出部２０６から出力された相関値ｓｙ０及び音源パワｓｈ０とに基づいて、２パルス目の位置及び極性を算出する。算出された２パルス目のパルス位置と極性は相関値・音源パワ算出部３０２、位置・極性算出部３０３、３０５、３０７に出力される。【００４９】
相関値・音源パワ算出部３０２は、前処理部２０３から出力されたｙＨとＨＨから位置・極性算出部３０１によって算出されたパルス位置の値を取り出し、相関値ｓｙ１、音源パワｓｈ１を算出する。算出した相関値ｓｙ１及び音源パワｓｈ１は位置・極性算出部３０３に出力される。【００５０】
位置・極性算出部３０３、相関値・音源パワ算出部３０４は、上記同様の処理により、３パルス目の位置及び極性と、相関値ｓｙ２及び音源パワｓｈ２とを算出する。また、位置・極性算出部３０５、相関値・音源パワ算出部３０６は、上記同様の処理により、４パルス目の位置及び極性と、相関値ｓｙ３及び音源パワｓｈ３とを算出する。さらに、位置・極性算出部３０７、相関値・音源パワ算出部３０８は、上記同様の処理により、５パルス目の位置及び極性と、相関値ｓｙ４及び音源パワｓｈ４とを算出する。【００５１】
ここで、図２に示した固定符号帳探索部２０２における一連の処理の手順を図５及び図６に詳細に示す。ここでは、代数的符号帳の条件を以下に示す。【００５２】
（１）ビット数：９ビット
（２）処理単位（サブフレーム長）：４０
（３）パルス本数：５本
この条件のもと、サブフレームの所定の位置全てに１本のパルスを立てることを保証する例として以下のような代数的符号帳が設計できる。（符号帳（パルス数５本）の候補位置）ｉｃｉ０［８］＝｛０，５，１０，１５，２０，２５，３０，３５｝ｉｃｉ１［８］＝｛１，６，１１，１６，２１，２６，３１，３６｝ｉｃｉ２［８］＝｛２，７，１２，１７，２２，２７，３２，３７｝ｉｃｉ３［８］＝｛３，８，１３，１８，２３，２８，３３，３８｝ｉｃｉ４［８］＝｛４，９，１４，１９，２４，２９，３４，３９｝
ただし、各チャネル（チャネル０〜４）の位置情報、位置、極性情報、極性は図４に示すものとする。このとき、位置情報（j1〜j4）の算出例を以下に示す。【００５３】
ｊ１＝i１×４＋ｐ０×２＋i０％２
ｊ２＝ｐ１×４＋i１×２＋ｐ０
ｊ３＝ｐ２×４＋ｐ１×２＋i１
ｊ４＝ｐ３×４＋ｐ２×２＋ｐ１
なお、上記の算出例における「％」はi０を２で除した際の剰余を求める演算を示す。【００５４】
図５及び図６において、ＳＴ３０１では、符号帳の候補位置を設定し、ＳＴ３０２で初期化を行い、ＳＴ３０３では、ｉ０が８未満であることを確認する。ｉ０が８未満である場合、位置情報を算出し、算出した位置情報の極性情報を求めて、符号帳から１つ目のパルスの位置を出力してｙＨ及びＨＨから値を取り出して、それぞれ相関値ｓｙ０、音源パワｓｈ０とする（ＳＴ３０４）。この計算をｉ０が８（パルス位置候補数）になるまで行う（ＳＴ３０３〜ＳＴ３０６）。【００５５】
一方、ｉ０が８未満において、ｉ１も２未満である場合には、ＳＴ３０５〜ＳＴ３１３の処理が繰り返し行われる。この処理では、１つのｉ０における計算において、位置情報を算出し、算出した位置情報の極性情報を求めて、符号帳から２つ目のパルスの位置を出力してｙＨ及びＨＨから値を取り出して相関値ｓｙ０、音源パワｓｈ０にそれぞれ加算し、相関値ｓｙ１、音源パワｓｈ１とする（ＳＴ３０７）。【００５６】
さらに、チャネル数が上位のパルスについて求められた位置情報と極性情報とから、下位のチャネル数のパルスについて位置情報と極性情報とを算出し、符号帳から３〜５つ目のパルスの位置を出力してｙＨ及びＨＨから値を取り出して、相関値ｓｙ２〜４、音源パワｓｈ２〜４を求める（ＳＴ３０８〜ＳＴ３１０）。【００５７】
ＳＴ３１０において求めた相関値ｓｙ４及び音源パワｓｈ４を用いて、関数Ｃの大小比較を行い（ＳＴ３１１）、より大きい関数値を示す関数Ｃの分子、分母を記憶する（ＳＴ３１２）。この計算をｉ１が２（パルス位置候補数）になるまで行う（ＳＴ３０５〜ＳＴ３１３）。【００５８】
ｉ０が８、ｉ１が２以上となった場合、ＳＴ３１４に移行し、探索処理を終了する。【００５９】
このように、一般的な５本のパルスの代数的符号帳では、位置３ビット×５、極性１ビット×５で計２０ビットが必要であるが、これを半分以下の９ビットで表すことができる。【００６０】
また、チャネル１のパルス候補の位置情報は、チャネル０のパルスの位置情報に加え、極性情報をも演算に使用することによって、情報量は１ビットでありながら８通りの位置から１つを決定することができる。よって、限られた情報を最大限に使用して符号化することができる。【００６１】
また、チャネル２〜４のパルス候補の位置情報は、チャネル数が上位のパルス位置情報、極性情報から一意に決定しており、極性情報のみによってパルス位置を決めている。よって、所定のチャネルの音源候補を他のチャネルの音源候補の情報から導くことができ、ビット数０で音源の情報を決めることができるので、ビット数未満の多数チャネルの音源を決定することができる。【００６２】
また、以上のように、内側のループ（探索ループ２０７）を探索する時には外側のループ（探索ループ２０４）の極性が決定されているので、それによる関連付け及び決定により、内側の音源の候補数を増やすことができる。本実施の形態では、９ビットで５本のパルス、４０箇所の位置全てにパルスを立てることが可能になっている。【００６３】
なお、上述した位置情報の算出例にあるように、この位置情報の算出方法を、算出の結果コードベクトルのベクトル空間上に偏りがない（ランダム性がある）ように設定すれば良好な性能が得られる。おおまかには、以下の３つの考え方に基づいて行えば良好な性能が得られることが分かっている。【００６４】
第１に、同じ情報を使用する場合は、位置情報に与える効果を異なるものにする。具体的には、乗ずる重み（上記算出例における、「×２」や「×４」）として必ず異なるものを使用する（同じ情報を使用する場合に位置情報に与える効果が同じだと、異なるパルスが同じ方向に同じように動いてしまう）。【００６５】
第２に、ランダム性を確保するのに最低限の個数の情報を使用する。このことは、１つの情報の影響範囲を制限するのと、計算量の節約、ビット誤り時の影響の低減、といった性能に関係する。【００６６】
第３に、使用する情報がなるべく平等に使用されるようにする。これは１つの情報に多くの位置情報が依存しないようにするためである。【００６７】
このように本実施の形態によれば、チャネル数が上位のパルスの算出結果を用いて、下位のチャネルのパルスについて位置、極性、相関値、音源パワを順次算出することにより、少ないビット数から十分な本数のパルスを有する音源ベクトルを構成することができ、より低レートで高品質な合成音を得ることができる。【００６８】
なお、本実施の形態では、位置情報を演算によって算出する方法を示したが、極性情報を同様に算出することも可能である。これは、位置情報と同様の演算を極性が抽出できるように適用すればよいからである。極性を上位のパルスの情報の演算で求めれば、理論的には不特定多数のパルスを立てることができる。ただし、パルスの極性をも一意に決めてしまうということは、実際の音源としてのクオリティを低下させることになる可能性もあるので注意が必要である。配列ｐｏｌ〔＊〕の極性と合わなくなればなるほど、その低下度合いが増加することになる。【００６９】
また、本実施の形態では、ビット数９ビット、処理単位（サブフレーム長）４０サンプルの場合を示したが、他の数値であってもよいことは言うまでもない。本発明がそれらの情報に全く依存していないからである。【００７０】
また、本実施の形態では、固定符号帳ベクトルのパルスの本数として５本を用いたが、これは本数が何本の組み合わせでもよいことは言うまでもない。本発明がパルスの本数に依存していないからである。【００７１】
また、本実施の形態では、パルスの位置情報の算出等を剰余及び加算によって算出する方法について示したが、これは、コードベクトルのランダム性が得られるなら他の算出方法でもよい。例えば、ビット演算（ＡＮＤ（論理乗）、ＯＲ（論理和）、ＥＸＯＲ（排他的論理和）等）、相互の乗算、割り算、乱数を出す関数、それらの組み合わせが挙げられる。【００７２】
また、本実施の形態では、固定符号帳の例として代数的符号帳を用いたが、本発明はマルチパルス符号帳にも適用できる。マルチパルスの位置情報、極性情報を本発明に同様に用いることができるからである。【００７３】
なお、本実施の形態では、ＣＥＬＰに対して用いたが、本数の分かる音源ベクトルが格納されている符号帳を用いる符号化／復号化方法に本発明を適用することができる。これは、本発明の所在は固定符号帳ベクトルの探索内のみであり、適応符号帳の有無や、スペクトル包絡の分析方法がＬＰＣ、ＦＦＴ、フィルタバンクといったことに依存しないからである。【００７４】
なお、本実施の形態では、本発明をハードウェアで構成する場合を例にとって説明したが、本発明はソフトウェアで実現することも可能である。【００７５】
また、本実施の形態の説明に用いた各機能ブロックは、典型的には集積回路であるＬＳＩとして実現される。これらは個別に１チップ化されてもよいし、一部または全てを含むように１チップ化されてもよい。ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。【００７６】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路または汎用プロセッサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Field Programmable Gate Array）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用してもよい。【００７７】
さらには、半導体技術の進歩または派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。【００７８】
また、本実施の形態の説明に用いた適応符号帳は、適応音源符号帳と呼ばれることもある。また、固定符号帳は、固定音源符号帳と呼ばれることもある。【００７９】
２００６年６月２９日出願の特願２００６−１８０１４３の日本出願に含まれる明細書、図面および要約書の開示内容は、すべて本願に援用される。
【産業上の利用可能性】
【００８０】
本発明にかかる音声符号化装置及び音声符号化方法は、ビットを有効に利用した固定符号帳により音声符号化を行うことができ、例えば、移動体通信システムにおける携帯電話等に適用できる。
【図１】
2008001866.tif 000007
【図２】
2008001866.tif 000008
【図３】
2008001866.tif 000009
【図４】
2008001866.tif 000010
【図５】
2008001866.tif 000011
【図６】
2008001866.tif 000012
【手続補正書】
【提出日】平成20年11月10日(2008.11.10)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のチャネルに分けた音源を固定符号帳によって符号化する音声符号化装置であって、
第１チャネルの音源候補を探索する第１探索手段と、
探索された第１チャネルの音源候補の位置情報と極性情報とを用いて、第２チャネルの音源候補を探索する第２探索手段と、
を具備する音声符号化装置。
【請求項２】
前記第２探索手段は、第３チャネル以降の音源候補を、上位チャネルの音源候補の位置情報と極性情報とを用いて探索する請求項１に記載の音声符号化装置。
【請求項３】
前記第２探索手段は、ループ処理を行う第１探索手段の内側ループ処理を行う請求項１に記載の音声符号化装置。
【請求項４】
複数のチャネルに分けた音源を固定符号帳によって符号化する音声符号化方法であって、
第１チャネルの音源候補を探索する第１探索工程と、
探索された第１チャネルの音源候補の位置情報と極性情報とを用いて、第２チャネルの音源候補を探索する第２探索工程と、
を具備する音声符号化方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、固定符号帳探索を行う音声符号化装置及び音声符号化方法に関する。
【背景技術】
【０００２】
移動体通信においては、伝送帯域の有効利用のために音声や画像のディジタル情報の圧縮符号化が必須である。その中でも携帯電話で広く利用された音声コーデック（符号化／復号化）技術に対する期待は大きく、圧縮率の高い従来の高効率符号化に対してさらなる音質の要求が強まっている。
【０００３】
近年、多層構造を有するスケーラブルコーデックの標準化がＩＴＵ−Ｔ、ＭＰＥＧ等で検討されており、より効率的で高品質な音声コーデックが求められている。
【０００４】
音声の発声機構をモデル化してベクトル量子化を巧みに応用した基本方式「ＣＥＬＰ」（Code Excited Linear Prediction）によって大きく性能を向上させた音声符号化技術は、非特許文献１に記載の代数的符号帳（Algebraic Codebook）のような少数パルスによる固定符号帳の技術により、一段とその性能を向上させた。一方、雑音性や有声／無声に適応した符号化により、さらに高品質を目指す技術も出てきている。
【０００５】
ところが、非特許文献１に記載の代数的符号帳のような少数パルスによる固定符号帳を用いた符号化では、ビットレートを下げるために、割り当てられるビット数を少なくする必要がある。割り当てられるビット数が少なくなると、各チャネルに割り当てられるビットも限られるので、パルスが全く立たない位置が存在してしまい、音質劣化を招いていた。
【０００６】
この問題の対策として、特許文献１には、複数のチャネルに分かれている固定音源（確率的音源）の音源波形候補を他のチャネルの音源波形候補と関連付け、所定のアルゴリズムにより探索された音源波形の符号を固定符号帳の音源の符号とする技術が開示されている。これにより、固定符号帳のパルスを符号化する際のビット数の削減を図りながら、パルスが全く立たない位置が存在しないようにすることができる。
【０００７】
また、外側の探索ループの音源波形候補に応じて、内側の探索ループの音源波形候補を変化させる方法、及び、パルス位置を剰余演算結果によって導く旨の方法も特許文献１に開示されている。
【特許文献１】特開２００４−１６３７３７号公報
【非特許文献１】Salami, Laflamme, Adoul,”8kbit/s ACELP Coding of Speech with 10ms Speech-Frame:a Candidate for CCITT Standardization”,IEEE Proc. ICASSP94,pp.II-97n
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述した特許文献１に記載の技術では、剰余と位置情報の利用方法が開示されているだけで、更にビット数が少なくなった場合の符号帳の設計方法についてまでは考慮されていない。また、最近、標準化が検討されているスケーラブルコーデック（ＩＴＵ−Ｔ、ＭＰＥＧ）などではグラニュラリティ（ビットレートの刻み）を確保するために、各々の拡張部に許されるビットレートが少ないことから、ビット数が少なくなった場合の符号帳の設計方法について考慮する必要性が高まっている。
【０００９】
このような前提を考慮した場合、固定符号帳による符号化に配分できるビット数が非常に少なくても十分なパルス本数が必要であったり、サブフレーム内の所定の位置全てにパルスが立つことを保証する必要があったりするため、ビットを有効に利用した固定符号帳を構成することは、音声コーデックにおいて大きな課題となっている。
【００１０】
本発明の目的は、ビットを有効に利用した固定符号帳により音声符号化を行う音声符号化装置及び音声符号化方法を提供することである。
【課題を解決するための手段】
【００１１】
本発明の音声符号化装置は、複数のチャネルに分けた音源を固定符号帳によって符号化する音声符号化装置であって、第１チャネルの音源候補を探索する第１探索手段と、探索された第１チャネルの音源候補の位置情報と極性情報とを用いて、第２チャネルの音源候補を探索する第２探索手段と、を具備する構成を採る。
【００１２】
本発明の音声符号化方法は、複数のチャネルに分けた音源を固定符号帳によって符号化する音声符号化方法であって、第１チャネルの音源候補を探索する第１探索工程と、探索された第１チャネルの音源候補の位置情報と極性情報とを用いて、第２チャネルの音源候補を探索する第２探索工程と、を具備するようにした。
【発明の効果】
【００１３】
本発明によれば、ビットを有効に利用した固定符号帳により音声符号化を行うことができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００１５】
（実施の形態）
図１は、本発明の実施の形態に係るＣＥＬＰ符号化装置１００の構成を示すブロック図である。音声信号Ｓ１１は、声道情報と音源情報とからなる。ＣＥＬＰ符号化装置１００は、音声信号Ｓ１１の声道情報を、ＬＰＣパラメータ（線形予測係数）を求めることにより符号化する。また、ＣＥＬＰ符号化装置１００は、音声信号Ｓ１１の音源情報を、予め記憶されている音声モデルのいずれを用いるかを特定するインデックス、すなわち、適応符号帳１０３及び固定符号帳１０４でどのような音源ベクトル（コードベクトル）を生成するかを特定するインデックスを求めることにより符号化する。
【００１６】
具体的には、ＣＥＬＰ符号化装置１００の各部は以下の動作を行う。
【００１７】
ＬＰＣ分析部１０１は、音声信号Ｓ１１に対して線形予測分析を施し、スペクトル包絡情報であるＬＰＣパラメータを求め、求めたＬＰＣパラメータをＬＰＣ量子化部１０２及び聴感重み付け部１１１に出力する。
【００１８】
ＬＰＣ量子化部１０２は、ＬＰＣ分析部１０１から出力されたＬＰＣパラメータを量子
化し、得られた量子化ＬＰＣパラメータをＬＰＣ合成フィルタ１０９に出力し、量子化ＬＰＣパラメータのインデックスをＣＥＬＰ符号化装置１００の外部へ出力する。
【００１９】
適応符号帳１０３は、ＬＰＣ合成フィルタ１０９で使用された過去の駆動音源を記憶する。そして、適応符号帳１０３は、後述する歪み最小化部１１２から指示されたインデックスに対応する適応符号帳ラグに従って、記憶している駆動音源から１サブフレーム分の音源ベクトルを生成する。この音源ベクトルは、適応符号帳ベクトルとして乗算器１０６に出力される。
【００２０】
固定符号帳１０４は、所定形状の音源ベクトルを複数個予め記憶する。そして、固定符号帳１０４は、歪み最小化部１１２から指示されたインデックスに対応する音源ベクトルを、固定符号帳ベクトルとして乗算器１０７に出力する。ここで、固定符号帳１０４は代数的音源であり、代数的符号帳を用いた場合について説明する。
【００２１】
代数的音源とは、多くの標準コーデックに採用されている音源であり、位置と極性（＋−）にだけ情報があり、大きさが１のインパルスを少数立てた音源である。例えば、ＡＲＩＢ規格書「ＲＣＲ ＳＴＤ−２７Ｋ」の５．３節の「ＣＳ−ＡＣＥＬＰ」における５．３．１．９章、及び、５．４節の「ＡＣＥＬＰ」での５．４．３．７章等に記載されている。
【００２２】
なお、上記の適応符号帳１０３は、有声音のように周期性の強い成分を表現するために使われ、一方、固定符号帳１０４は、白色雑音のように周期性の弱い成分を表現するために使われる。
【００２３】
ゲイン符号帳１０５は、歪み最小化部１１２からの指示に従って、適応符号帳１０３から出力される適応符号帳ベクトル用のゲイン（適応符号帳ゲイン）、及び固定符号帳１０４から出力される固定符号帳ベクトル用のゲイン（固定符号帳ゲイン）を生成し、それぞれ乗算器１０６、１０７に出力する。
【００２４】
乗算器１０６は、ゲイン符号帳１０５から出力された適応符号帳ゲインを、適応符号帳１０３から出力された適応符号帳ベクトルに乗じ、加算器１０８に出力する。
【００２５】
乗算器１０７は、ゲイン符号帳１０５から出力された固定符号帳ゲインを、固定符号帳１０４から出力された固定符号帳ベクトルに乗じ、加算器１０８に出力する。
【００２６】
加算器１０８は、乗算器１０６から出力された適応符号帳ベクトルと、乗算器１０７から出力された固定符号帳ベクトルとを加算し、加算後の音源ベクトルを駆動音源としてＬＰＣ合成フィルタ１０９に出力する。
【００２７】
ＬＰＣ合成フィルタ１０９は、ＬＰＣ量子化部１０２から出力された量子化ＬＰＣパラメータをフィルタ係数とし、適応符号帳１０３及び固定符号帳１０４で生成される音源ベクトルを駆動音源としたフィルタ関数、すなわち、ＬＰＣ合成フィルタを用いて合成信号を生成する。この合成信号は、加算器１１０に出力される。
【００２８】
加算器１１０は、ＬＰＣ合成フィルタ１０９で生成された合成信号を音声信号Ｓ１１から減算することによって誤差信号を算出し、この誤差信号を聴感重み付け部１１１に出力する。なお、この誤差信号が符号化歪みに相当する。
【００２９】
聴感重み付け部１１１は、加算器１１０から出力された符号化歪みに対して聴感的な重み付けを施し、歪み最小化部１１２に出力する。
【００３０】
歪み最小化部１１２は、聴感重み付け部１１１から出力された符号化歪みが最小となるような、適応符号帳１０３、固定符号帳１０４及びゲイン符号帳１０５の各インデックスをサブフレームごとに求め、これらのインデックスを符号化情報としてＣＥＬＰ符号化装置１００の外部に出力する。より詳細には、歪み最小化部１１２は、上記の適応符号帳１０３及び固定符号帳１０４に基づいて合成信号を生成する。この信号の符号化歪みを求める一連の処理は閉ループ制御（帰還制御）となっている。歪み最小化部１１２は、各符号帳に指示するインデックスを１サブフレーム内において様々に変化させることによって各符号帳を探索し、最終的に得られる、符号化歪みを最小とする各符号帳のインデックスを出力する。
【００３１】
なお、符号化歪みが最小となる際の駆動音源は、サブフレームごとに適応符号帳１０３へフィードバックされる。適応符号帳１０３は、このフィードバックにより、記憶されている駆動音源を更新する。
【００３２】
ここで、固定符号帳１０４の探索方法について説明する。まず、音源ベクトルの探索と符号の導出は以下の式（１）の符号化歪を最小化する音源ベクトルを探索することにより行われる。
【数１】
2008001866.tif 000013
Ｅ：符号化歪、ｘ：符号化ターゲット、ｐ：適応符号帳ベクトルのゲイン、Ｈ：聴感重み付け合成フィルタ、ａ：適応符号帳ベクトル、ｑ：固定符号帳ベクトルのゲイン、ｓ：固定符号帳ベクトル
【００３３】
一般的に、適応符号帳ベクトルと固定符号帳ベクトルとはオープンループで（別々のループで）探索されるので、固定符号帳１０４の符号の導出は以下の式（２）の符号化歪を最小化する固定符号帳ベクトルを探索することにより行われる。
【数２】
2008001866.tif 000014
Ｅ：符号化歪、ｘ：符号化ターゲット（聴感重み付け音声信号）、ｐ：適応符号帳ベクトルの最適ゲイン、Ｈ：聴感重み付け合成フィルタ、ａ：適応符号帳ベクトル、ｑ：固定符号帳ベクトルのゲイン、ｓ：固定符号帳ベクトル、ｙ：固定符号帳探索のターゲットベクトル
【００３４】
ここで、ゲインｐ、ｑは音源の符号を探索した後で決定するので、ここでは最適ゲインで探索を進めることとする。すると、上式（２）は以下の式（３）と書ける。
【数３】
2008001866.tif 000015
【００３５】
そして、この歪の式を最小化することは、以下の式（４）の関数Ｃを最大化することと同値であることがわかる。
【数４】
2008001866.tif 000016
【００３６】
よって、代数的符号帳の音源のような少数パルスからなる音源の探索の場合は、ｙＨとＨＨを予め計算しておけば、少ない計算量で上記関数Ｃを算出できる。
【００３７】
図２は、図１に示した歪み最小化部１１２の内部構成を示すブロック図である。この図では、パルス数５本、固定符号帳の探索ループが２重ループの場合について示している。
【００３８】
図２において、適応符号帳探索部２０１は、聴感重み付け部１１１において聴感的な重み付けが施された符号化歪みを用いて、適応符号帳１０３の探索を行う。探索の結果、適応符号帳ベクトルの符号を適応符号帳１０３及び固定符号帳探索部２０２の前処理部２０３に出力する。
【００３９】
固定符号帳探索部２０２の前処理部２０３は、聴感重み付け部１１１における合成フィルタの係数Ｈを用いて、ベクトルｙＨ及びマトリクスＨＨを算出する。ｙＨはターゲットベクトルｙを逆順にしてマトリクスＨを畳み込み、更にその結果を逆順にすることにより求める。ＨＨはマトリクス同士の掛け算により求める。
【００４０】
さらに、前処理部２０３は、ベクトルｙＨの要素の極性（＋−）から、事前にパルスの極性を決める。具体的には、各位置に立つパルスの極性をｙＨのその位置の値の極性に合わせることとし、ｙＨの値の極性を別の配列に格納しておく。各位置の極性を別の配列に格納した後、ｙＨの値は全て絶対値をとり正の値に変換しておく。また、格納した各位置の極性に合わせてＨＨの値も極性を乗ずることによって変換しておく。求めたｙＨ及びＨＨを探索ループ２０４内の位置・極性算出部２０５、相関値・音源パワ算出部２０６及び探索ループ２０７に出力する。
【００４１】
探索ループ２０４は、位置・極性算出部２０５、相関値・音源パワ算出部２０６、探索ループ２０７及び大小判定部２０８を備えている。
【００４２】
位置・極性算出部２０５は、前処理部２０３から出力されたｙＨとＨＨの値を用いて、パルスの位置を算出し、算出したパルスの位置に基づいて、このパルスの極性を算出する。算出されたパルス位置と極性は相関値・音源パワ算出部２０６及び探索ループ２０７に出力される。
【００４３】
相関値・音源パワ算出部２０６は、前処理部２０３から出力されたｙＨとＨＨから位置・極性算出部２０５によって算出されたパルス位置の値を取り出し、相関値ｓｙ０、音源パワｓｈ０を算出する。算出した相関値ｓｙ０及び音源パワｓｈ０は探索ループ２０７に出力される。
【００４４】
探索ループ２０７は、探索ループ２０４内の探索ループであり、位置・極性算出部２０５から出力されたパルス位置及びそのパルスの極性と、相関値・音源パワ算出部２０６から出力された相関値ｓｙ０及び音源パワｓｈ０とを用いて、他のパルスの位置、極性、相関値、音源パワを順次算出する。具体的には、位置・極性算出部２０５及び相関値・音源パワ算出部２０６では、チャネル０のパルスについて算出され、探索ループ２０７では、チャネル０のパルスの算出結果を用いて、チャネル１のパルスについて位置、極性、相関
値、音源パワが算出され、チャネル１のパルスの算出結果を用いて、チャネル２のパルスについて同様に算出される。このように、チャネル数が上位のパルスの算出結果を用いて、下位のパルスについて位置、極性、相関値、音源パワを順次算出していく。ただし、本実施の形態では、３パルス目から位置の符号はなく、３パルス目以降のパルスの位置は上位の位置・極性情報から算出されることになる。最終的に求めた相関値と音源パワとを用いて関数Ｃを求め、求めた関数Ｃを大小判定部２０８に出力する。なお、探索ループ２０７の詳細については後述する。
【００４５】
大小判定部２０８は、探索ループ２０７から出力された関数Ｃの値の大小を比較し、より大きい関数値を示す場合の関数Ｃの分子分母を上書き格納する。そして、探索ループ２０４全体で最も大きくなるパルスの位置の組合せを探索する。大小判定部２０８は、各パルスの位置の符号と極性の符号を合わせて固定符号帳ベクトルの符号とし、この符号を固定符号帳１０４及びゲイン符号帳探索部２０９に出力する。
【００４６】
ゲイン符号帳探索部２０９は、大小判定部２０８から出力された各パルスの位置の符号と極性の符号を合わせた固定符号帳ベクトルの符号に基づいて、ゲイン符号帳を探索し、探索結果をゲイン符号帳１０５に出力する。
【００４７】
図３は、図２に示した探索ループ２０７の内部構成を示すブロック図である。この図において、位置・極性算出部３０１は、位置・極性算出部２０５から出力されたパルスの位置及び極性と、相関値・音源パワ算出部２０６から出力された相関値ｓｙ０及び音源パワｓｈ０とに基づいて、２パルス目の位置及び極性を算出する。算出された２パルス目のパルス位置と極性は相関値・音源パワ算出部３０２、位置・極性算出部３０３、３０５、３０７に出力される。
【００４８】
相関値・音源パワ算出部３０２は、前処理部２０３から出力されたｙＨとＨＨから位置・極性算出部３０１によって算出されたパルス位置の値を取り出し、相関値ｓｙ１、音源パワｓｈ１を算出する。算出した相関値ｓｙ１及び音源パワｓｈ１は位置・極性算出部３０３に出力される。
【００４９】
位置・極性算出部３０３、相関値・音源パワ算出部３０４は、上記同様の処理により、３パルス目の位置及び極性と、相関値ｓｙ２及び音源パワｓｈ２とを算出する。また、位置・極性算出部３０５、相関値・音源パワ算出部３０６は、上記同様の処理により、４パルス目の位置及び極性と、相関値ｓｙ３及び音源パワｓｈ３とを算出する。さらに、位置・極性算出部３０７、相関値・音源パワ算出部３０８は、上記同様の処理により、５パルス目の位置及び極性と、相関値ｓｙ４及び音源パワｓｈ４とを算出する。
【００５０】
ここで、図２に示した固定符号帳探索部２０２における一連の処理の手順を図５及び図６に詳細に示す。ここでは、代数的符号帳の条件を以下に示す。
【００５１】
（１）ビット数：９ビット
（２）処理単位（サブフレーム長）：４０
（３）パルス本数：５本
この条件のもと、サブフレームの所定の位置全てに１本のパルスを立てることを保証する例として以下のような代数的符号帳が設計できる。
（符号帳（パルス数５本）の候補位置）
ｉｃｉ０［８］＝｛０，５，１０，１５，２０，２５，３０，３５｝
ｉｃｉ１［８］＝｛１，６，１１，１６，２１，２６，３１，３６｝
ｉｃｉ２［８］＝｛２，７，１２，１７，２２，２７，３２，３７｝
ｉｃｉ３［８］＝｛３，８，１３，１８，２３，２８，３３，３８｝
ｉｃｉ４［８］＝｛４，９，１４，１９，２４，２９，３４，３９｝
ただし、各チャネル（チャネル０〜４）の位置情報、位置、極性情報、極性は図４に示すものとする。このとき、位置情報（j1〜j4）の算出例を以下に示す。
【００５２】
ｊ１＝i１×４＋ｐ０×２＋i０％２
ｊ２＝ｐ１×４＋i１×２＋ｐ０
ｊ３＝ｐ２×４＋ｐ１×２＋i１
ｊ４＝ｐ３×４＋ｐ２×２＋ｐ１
なお、上記の算出例における「％」はi０を２で除した際の剰余を求める演算を示す。
【００５３】
図５及び図６において、ＳＴ３０１では、符号帳の候補位置を設定し、ＳＴ３０２で初期化を行い、ＳＴ３０３では、ｉ０が８未満であることを確認する。ｉ０が８未満である場合、位置情報を算出し、算出した位置情報の極性情報を求めて、符号帳から１つ目のパルスの位置を出力してｙＨ及びＨＨから値を取り出して、それぞれ相関値ｓｙ０、音源パワｓｈ０とする（ＳＴ３０４）。この計算をｉ０が８（パルス位置候補数）になるまで行う（ＳＴ３０３〜ＳＴ３０６）。
【００５４】
一方、ｉ０が８未満において、ｉ１も２未満である場合には、ＳＴ３０５〜ＳＴ３１３の処理が繰り返し行われる。この処理では、１つのｉ０における計算において、位置情報を算出し、算出した位置情報の極性情報を求めて、符号帳から２つ目のパルスの位置を出力してｙＨ及びＨＨから値を取り出して相関値ｓｙ０、音源パワｓｈ０にそれぞれ加算し、相関値ｓｙ１、音源パワｓｈ１とする（ＳＴ３０７）。
【００５５】
さらに、チャネル数が上位のパルスについて求められた位置情報と極性情報とから、下位のチャネル数のパルスについて位置情報と極性情報とを算出し、符号帳から３〜５つ目のパルスの位置を出力してｙＨ及びＨＨから値を取り出して、相関値ｓｙ２〜４、音源パワｓｈ２〜４を求める（ＳＴ３０８〜ＳＴ３１０）。
【００５６】
ＳＴ３１０において求めた相関値ｓｙ４及び音源パワｓｈ４を用いて、関数Ｃの大小比較を行い（ＳＴ３１１）、より大きい関数値を示す関数Ｃの分子、分母を記憶する（ＳＴ３１２）。この計算をｉ１が２（パルス位置候補数）になるまで行う（ＳＴ３０５〜ＳＴ３１３）。
【００５７】
ｉ０が８、ｉ１が２以上となった場合、ＳＴ３１４に移行し、探索処理を終了する。
【００５８】
このように、一般的な５本のパルスの代数的符号帳では、位置３ビット×５、極性１ビット×５で計２０ビットが必要であるが、これを半分以下の９ビットで表すことができる。
【００５９】
また、チャネル１のパルス候補の位置情報は、チャネル０のパルスの位置情報に加え、極性情報をも演算に使用することによって、情報量は１ビットでありながら８通りの位置から１つを決定することができる。よって、限られた情報を最大限に使用して符号化することができる。
【００６０】
また、チャネル２〜４のパルス候補の位置情報は、チャネル数が上位のパルス位置情報、極性情報から一意に決定しており、極性情報のみによってパルス位置を決めている。よって、所定のチャネルの音源候補を他のチャネルの音源候補の情報から導くことができ、ビット数０で音源の情報を決めることができるので、ビット数未満の多数チャネルの音源を決定することができる。
【００６１】
また、以上のように、内側のループ（探索ループ２０７）を探索する時には外側のループ（探索ループ２０４）の極性が決定されているので、それによる関連付け及び決定により、内側の音源の候補数を増やすことができる。本実施の形態では、９ビットで５本のパルス、４０箇所の位置全てにパルスを立てることが可能になっている。
【００６２】
なお、上述した位置情報の算出例にあるように、この位置情報の算出方法を、算出の結果コードベクトルのベクトル空間上に偏りがない（ランダム性がある）ように設定すれば良好な性能が得られる。おおまかには、以下の３つの考え方に基づいて行えば良好な性能が得られることが分かっている。
【００６３】
第１に、同じ情報を使用する場合は、位置情報に与える効果を異なるものにする。具体的には、乗ずる重み（上記算出例における、「×２」や「×４」）として必ず異なるものを使用する（同じ情報を使用する場合に位置情報に与える効果が同じだと、異なるパルスが同じ方向に同じように動いてしまう）。
【００６４】
第２に、ランダム性を確保するのに最低限の個数の情報を使用する。このことは、１つの情報の影響範囲を制限するのと、計算量の節約、ビット誤り時の影響の低減、といった性能に関係する。
【００６５】
第３に、使用する情報がなるべく平等に使用されるようにする。これは１つの情報に多くの位置情報が依存しないようにするためである。
【００６６】
このように本実施の形態によれば、チャネル数が上位のパルスの算出結果を用いて、下位のチャネルのパルスについて位置、極性、相関値、音源パワを順次算出することにより、少ないビット数から十分な本数のパルスを有する音源ベクトルを構成することができ、より低レートで高品質な合成音を得ることができる。
【００６７】
なお、本実施の形態では、位置情報を演算によって算出する方法を示したが、極性情報を同様に算出することも可能である。これは、位置情報と同様の演算を極性が抽出できるように適用すればよいからである。極性を上位のパルスの情報の演算で求めれば、理論的には不特定多数のパルスを立てることができる。ただし、パルスの極性をも一意に決めてしまうということは、実際の音源としてのクオリティを低下させることになる可能性もあるので注意が必要である。配列ｐｏｌ〔＊〕の極性と合わなくなればなるほど、その低下度合いが増加することになる。
【００６８】
また、本実施の形態では、ビット数９ビット、処理単位（サブフレーム長）４０サンプルの場合を示したが、他の数値であってもよいことは言うまでもない。本発明がそれらの情報に全く依存していないからである。
【００６９】
また、本実施の形態では、固定符号帳ベクトルのパルスの本数として５本を用いたが、これは本数が何本の組み合わせでもよいことは言うまでもない。本発明がパルスの本数に依存していないからである。
【００７０】
また、本実施の形態では、パルスの位置情報の算出等を剰余及び加算によって算出する方法について示したが、これは、コードベクトルのランダム性が得られるなら他の算出方法でもよい。例えば、ビット演算（ＡＮＤ（論理乗）、ＯＲ（論理和）、ＥＸＯＲ（排他的論理和）等）、相互の乗算、割り算、乱数を出す関数、それらの組み合わせが挙げられる。
【００７１】
また、本実施の形態では、固定符号帳の例として代数的符号帳を用いたが、本発明はマ
ルチパルス符号帳にも適用できる。マルチパルスの位置情報、極性情報を本発明に同様に用いることができるからである。
【００７２】
なお、本実施の形態では、ＣＥＬＰに対して用いたが、本数の分かる音源ベクトルが格納されている符号帳を用いる符号化／復号化方法に本発明を適用することができる。これは、本発明の所在は固定符号帳ベクトルの探索内のみであり、適応符号帳の有無や、スペクトル包絡の分析方法がＬＰＣ、ＦＦＴ、フィルタバンクといったことに依存しないからである。
【００７３】
なお、本実施の形態では、本発明をハードウェアで構成する場合を例にとって説明したが、本発明はソフトウェアで実現することも可能である。
【００７４】
また、本実施の形態の説明に用いた各機能ブロックは、典型的には集積回路であるＬＳＩとして実現される。これらは個別に１チップ化されてもよいし、一部または全てを含むように１チップ化されてもよい。ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【００７５】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路または汎用プロセッサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Field Programmable Gate Array）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用してもよい。
【００７６】
さらには、半導体技術の進歩または派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
【００７７】
また、本実施の形態の説明に用いた適応符号帳は、適応音源符号帳と呼ばれることもある。また、固定符号帳は、固定音源符号帳と呼ばれることもある。
【００７８】
２００６年６月２９日出願の特願２００６−１８０１４３の日本出願に含まれる明細書、図面および要約書の開示内容は、すべて本願に援用される。
【産業上の利用可能性】
【００７９】
本発明にかかる音声符号化装置及び音声符号化方法は、ビットを有効に利用した固定符号帳により音声符号化を行うことができ、例えば、移動体通信システムにおける携帯電話等に適用できる。
【図面の簡単な説明】
【００８０】
【図１】本発明の実施の形態に係るＣＥＬＰ符号化装置の構成を示すブロック図
【図２】図１に示した歪み最小化部の内部構成を示すブロック図
【図３】図２に示した探索ループの内部構成を示すブロック図
【図４】位置と極性との対応関係を示す図
【図５】固定符号帳探索処理の手順を示すフロー図
【図６】固定符号帳探索処理の手順を示すフロー図
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2008001866.tif 000017
【図２】
2008001866.tif 000018
【図３】
2008001866.tif 000019
【図４】
2008001866.tif 000020
【図５】
2008001866.tif 000021
【図６】
2008001866.tif 000022
【国際調査報告】
2008001866.tif 000023
2008001866.tif 000024
2008001866.tif 000025
2008001866.tif 000026