(57)【要約】  少ない計算量で符号化歪を小さくし、十分な符号化性能を得る量子化装置及び量子化方法を提供する。多段ベクトル量子化部（１０２）は、１段目のベクトル量子化部（２０１−１）では予め指定された候補数Ｎとし、２段目以降のベクトル量子化部（２０１−２〜２０１−Ｊ）では段が進む毎に候補数を１つずつ減らし、候補数が３以下になった場合には、その都度、量子化歪を評価して、量子化歪が所定の閾値よりも大きい場合は次の段の候補数を予め定められた数値Ｐ、量子化歪が所定の閾値以下の場合は次の段の候補数を予め定められたＰより小さな数値Ｑとする。
2012035781.tif 000002
【特許請求の範囲】
【請求項１】
木探索を用いて多段量子化を行う量子化装置であって、
符号化対象の１つ以上のターゲットのそれぞれと符号帳に格納されたコードベクトルとのマッチングを行い、量子化歪の最も小さい方から１つ以上の候補を、前段において決定された、もしくは予め設定された候補数だけ求める探索手段と、
前記候補について、前記ターゲットから前記コードベクトルを減算して量子化誤差ベクトルを算出する算出手段と、
前記前段において決定された候補数に基づいて次段で用いる候補数を決定する候補数決定手段と、
を具備する量子化装置。
【請求項２】
前記候補数決定手段は、前記前段において決定された候補数から１だけ減らした候補数を次段で用いることを決定する、請求項１記載の量子化装置。
【請求項３】
前記候補数決定手段は、前記前段において決定された候補数が予め指定された値Ｐ以下の場合、前記量子化歪が所定の閾値よりも大きい場合は候補数Ｐを次段で用いることを決定し、前記量子化歪が前記所定の閾値以下である場合は候補数として予め指定されたＰより小さい値Ｑを次段で用いることを決定する、請求項１に記載の量子化装置。
【請求項４】
前記探索手段は、１段目である場合、予め指定された候補数だけ量子化歪の最も小さい方から候補を求める、請求項１に記載の量子化装置。
【請求項５】
前記候補数決定手段は、現在の段数が所定の段数以上であるか、または候補数が所定の候補数Ｐ以下であって、
前記量子化歪が所定の閾値よりも大きく、かつ、所定の候補数Ｒより候補数が小さい場合、候補数Ｒを次段で用いることを決定し、
前記量子化歪が前記所定の閾値以下であり、かつ、前記候補数Ｒより小さい所定の候補数Ｑより候補数が小さい場合、候補数Ｑを次段で用いることを決定する、
請求項１に記載の量子化装置。
【請求項６】
木探索を用いて多段量子化を行う量子化方法であって、
符号化対象の１つ以上のターゲットのそれぞれと符号帳に格納されたコードベクトルとのマッチングを行い、量子化歪の最も小さい方から１つ以上の候補を、１段目では、予め指定された候補数だけ求め、２段目以降では、前段において決定された候補数だけ求め、
前記候補について、前記ターゲットから前記コードベクトルを減算して量子化誤差ベクトルを算出し、
前記前段において決定された候補数に基づいて次段で用いる候補数を決定する、
量子化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、木探索を用いて量子化を行う量子化装置及び量子化方法に関する。
【背景技術】
【０００２】
移動体通信においては、伝送帯域の有効利用のために音声及び画像のディジタル情報の圧縮符号化が必須である。その中でも携帯電話で広く利用された音声コーデック（符号化／復号化）技術に対する期待は大きく、圧縮率の高い従来の高効率符号化に対してよりよい音質の要求が強まっている。また、公衆で使用されるために標準化が必須であり、世界的に研究開発が盛んに行われている。【０００３】
近年では、音声も音楽も符号化できるコーデックの標準化がＩＴＵ−Ｔ（International Telecommunication Union Telecommunication Standardization Sector）及びＭＰＥＧ（Moving Picture Expert Group）で検討されており、より効率的で高品質の音声コーデックが求められている。【０００４】
２０年前に確立された、音声の発声機構をモデル化してベクトル量子化を巧みに応用した基本方式であるＣＥＬＰ（Code Excited Linear Prediction）によって、音声符号化技術は大きく性能を向上させた。国際規格では、ＩＴＵ−Ｔ標準Ｇ．７２９、Ｇ．７２２．２、ＥＴＳＩ標準ＡＭＲ、ＡＭＲ−ＷＢ、３ＧＰＰ２標準ＶＭＲ−ＷＢなど、多くの標準方式にＣＥＬＰが採用されている。【０００５】
上記ＣＥＬＰの主要な技術は、音声スペクトルの概形を低ビットレートで符号化することができるＬＰＣ（Linear Prediction Coding）分析と、ＬＰＣ分析によって得られたパラメータの量子化である。特に、近年の標準方式のほとんどに使用されているのは線スペクトルによる量子化である。その代表的なものはＬＳＰ（Line Spectral Pair）と、それを改良したＩＳＰ（Immittance Spectral Pair）とであり、両者とも補間性の良さからベクトル量子化（以下、「ＶＱ（Vector Quantization）」という）と親和性が高い。これらを符号化に用いることにより、低ビットレートでスペクトル情報を伝送することができる。これらにより、ＣＥＬＰを基本とするコーデックの性能は格段に向上した。【０００６】
最近では、高効率かつ高品質な音声コーデックが求められていることに対応するため、広帯域信号（１６ｋｂｐｓ）、超広帯域信号（３２ｋｂｐｓ）を符号化するコーデックが、ＩＴＵ−Ｔ、ＭＰＥＧ、３ＧＰＰなどにおいて標準化されつつある。広帯域、超広帯域のディジタル信号を符号化するためにＬＰＣ係数を用いる場合は、１６次以上の次数の多いＬＳＰまたはＩＳＰを多くのビット数で符号化する必要がある。そのため、符号化対象（ターゲットベクトル）を複数に分割し、それぞれをベクトル量子化するという「スプリットＶＱ」が一般に用いられているが、ベクトルの要素間の統計的相関を使うことができないので、符号化性能が落ちてしまう。【０００７】
そこで、より符号化性能が得られる方法として、多段量子化（Multiple stage quantization）が用いられる。これは、ターゲットベクトルを分割せずに、複数の小さなベクトル量子化を用いて誤差を段々小さくするように連続して量子化を行うものである。すなわち、前の段の量子化の誤差ベクトルを次の段で量子化するという方法である。前の段で最も誤差が小さいものだけを用いれば計算量は非常に小さくできる。ただし、誤差の最も小さい量子化結果だけを候補にして多段量子化を行うと、総合的な符号化歪が十分に小さくならず、量子化性能が悪くなる。【０００８】
そのため、誤差の小さい量子化結果の候補を上位からいくつか残す木探索（Tree search）を用いることが考えられている。これにより、ある程度少ない計算量で高い符号化性能を得ることができる。特に、割り当てビット数が多い場合は、計算量を少なく抑えるために段数を増やすことになるが、多くの段数の多段量子化では木探索を用いないと十分な量子化性能を得ることはできない。【０００９】
特許文献１には、ＣＥＬＰの音源ベクトルを多段で量子化する方法について記載されている。また、段数が多くなった場合には、木探索を用いることにより、効率の良い探索ができることがよく知られている。各段において残す候補（誤差の小さい量子化結果）の数をＮとして探索を行う方法は「Ｎベストサーチ（N best search）」と呼ばれており、効率の良い多段の探索方法として知られている。【００１０】
また、特許文献２には、ベクトル量子化は使用していないが、Ｎベストサーチによる探索の例が記載されている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００３−８４４６号公報
【特許文献２】特開２０００−２６１３２１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、上述したＮ＞１のＮベストサーチを用いた多段ベクトル量子化は、各段の候補を１つに絞る（Ｎ＝１）よりも最終的な符号化歪を小さくすることはできるが、計算量がＮ倍に増えてしまう。逆に、Ｎの数を少なく抑えると、今度は符号化歪が大きくなってしまう。【００１３】
このように、従来のＮベストサーチを用いた多段ベクトル量子化では、より少ない計算量で符号化歪を小さくする工夫がなされておらず、十分な符号化性能を得ることができない。【００１４】
本発明の目的は、少ない計算量で符号化歪を小さくし、十分な符号化性能を得る量子化装置及び量子化方法を提供することである。
【課題を解決するための手段】
【００１５】
本発明の量子化装置は、木探索を用いて多段量子化を行う量子化装置であって、符号化対象の１つ以上のターゲットのそれぞれと符号帳に格納されたコードベクトルとのマッチングを行い、量子化歪の最も小さい方から１つ以上の候補を、前段において決定された、もしくは予め設定された候補数だけ求める探索手段と、前記候補について、前記ターゲットから前記コードベクトルを減算して量子化誤差ベクトルを算出する算出手段と、前記前段において決定された候補数に基づいて次段で用いる候補数を決定する候補数決定手段と、を具備する構成を採る。【００１６】
本発明の量子化方法は、木探索を用いて多段量子化を行う量子化方法であって、符号化対象の１つ以上のターゲットのそれぞれと符号帳に格納されたコードベクトルとのマッチングを行い、量子化歪の最も小さい方から１つ以上の候補を、１段目では、予め指定された候補数だけ求め、２段目以降では、前段において決定された候補数だけ求め、前記候補について、前記ターゲットから前記コードベクトルを減算して量子化誤差ベクトルを算出し、前記前段において決定された候補数に基づいて次段で用いる候補数を決定するようにした。
【発明の効果】
【００１７】
本発明によれば、少ない計算量で符号化歪を小さくし、十分な符号化性能を得ることができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施の形態１に係るＣＥＬＰ符号化装置の構成を示すブロック図
【図２】図１に示した多段ベクトル量子化部の内部構成を示すブロック図
【図３】図２に示したベクトル量子化部の内部構成を示すブロック図
【図４】図３に示した候補数決定部における候補数決定手順を示すフロー図
【図５】本発明の実施の形態２に係る候補数決定部における候補数決定手順を示すフロー図
【発明を実施するための形態】
【００１９】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００２０】
（実施の形態１）
図１は、本発明の実施の形態１に係るＣＥＬＰ符号化装置１００の構成を示すブロック図である。このＣＥＬＰ符号化装置１００は、声道情報と音源情報とからなる音声信号Ｓ１１のうち、声道情報については、ＬＰＣパラメータ（線形予測係数）を求めることにより符号化する。また、ＣＥＬＰ符号化装置１００は、音源情報については、予め記憶されている音声モデルのいずれを用いるかを特定する符号データ、すなわち、適応符号帳１０３および固定符号帳１０４でどのような音源ベクトル（コードベクトル）を生成するかを特定する符号データを求めることにより、音源情報を符号化する。
【００２１】
具体的には、ＣＥＬＰ符号化装置１００の各部は以下の動作を行う。
【００２２】
ＬＰＣ分析部１０１は、音声信号Ｓ１１に対して線形予測分析を施し、スペクトル包絡情報であるＬＰＣパラメータを求め、多段ベクトル量子化部１０２及び聴感重み付け部１１１に出力する。
【００２３】
多段ベクトル量子化部１０２は、ＬＰＣ分析部１０１で得られるＬＰＣパラメータを多段ベクトル量子化し、得られる量子化ＬＰＣパラメータをＬＰＣ合成フィルタ１０９に、量子化ＬＰＣパラメータの符号データをＣＥＬＰ符号化装置１００の外部へ出力する。
【００２４】
一方、適応符号帳１０３は、ＬＰＣ合成フィルタ１０９で使用された過去の駆動音源を記憶しており、歪み最小化部１１２から指示された符号データに対応する適応符号帳ラグに従って、記憶している駆動音源から１サブフレーム分の音源ベクトルを生成する。この音源ベクトルは、適応符号帳ベクトルとして乗算器１０６に出力される。
【００２５】
固定符号帳１０４は、所定形状の音源ベクトルを複数個予め記憶しており、歪み最小化部１１２から指示された符号データに対応する音源ベクトルを、固定符号帳ベクトルとして乗算器１０７に出力する。ここで、固定符号帳１０４は代数的符号帳であり、２種類の本数のパルスによる代数的符号帳を用いた場合の構成について、重み付けが加算によりなされる場合について説明する。
【００２６】
代数的音源とは、多くの標準コーデックに採用されている音源であり、位置と極性（＋−）だけが情報の、大きさが１のインパルスを少数立てた音源である。例えば、ＡＲＩＢ規格書「ＲＣＲ ＳＴＤ−２７Ｋ」の５．３節の「ＣＳ−ＡＣＥＬＰ」での５．３．１．９章、５．４節の「ＡＣＥＬＰ」での５．４．３．７章等に記載されている。
【００２７】
なお、上記の適応符号帳１０３は、有声音のように周期性の強い成分を表現するために使われる。一方、固定符号帳１０４は、白色雑音のように周期性の弱い成分を表現するために使われる。
【００２８】
ゲイン符号帳１０５は、歪み最小化部１１２からの指示に従って、適応符号帳１０３から出力される適応符号帳ベクトル用のゲイン（適応符号帳ゲイン）、および固定符号帳１０４から出力される固定符号帳ベクトル用のゲイン（固定符号帳ゲイン）を生成し、それぞれ乗算器１０６、１０７に出力する。
【００２９】
乗算器１０６は、ゲイン符号帳１０５から出力された適応符号帳ゲインを、適応符号帳１０３から出力された適応符号帳ベクトルに乗じ、加算器１０８に出力する。
【００３０】
乗算器１０７は、ゲイン符号帳１０５から出力された固定符号帳ゲインを、固定符号帳１０４から出力された固定符号帳ベクトルに乗じ、加算器１０８に出力する。
【００３１】
加算器１０８は、乗算器１０６から出力された適応符号帳ベクトルと、乗算器１０７から出力された固定符号帳ベクトルとを加算し、加算後の音源ベクトルを駆動音源としてＬＰＣ合成フィルタ１０９に出力する。
【００３２】
ＬＰＣ合成フィルタ１０９は、多段ベクトル量子化部１０２から出力された量子化ＬＰＣパラメータをフィルタ係数とし、適応符号帳１０３及び固定符号帳１０４で生成される音源ベクトルを駆動音源としたフィルタ関数、すなわち、ＬＰＣ合成フィルタを用いて合成信号を生成する。この合成信号は、加算器１１０に出力される。
【００３３】
加算器１１０は、ＬＰＣ合成フィルタ１０９で生成された合成信号を音声信号Ｓ１１から減算することによって誤差信号を算出し、この誤差信号を聴感重み付け部１１１に出力する。なお、この誤差信号が符号化歪みに相当する。
【００３４】
聴感重み付け部１１１は、加算器１１０から出力された符号化歪みに対して聴感的な重み付けを施し、歪み最小化部１１２に出力する。
【００３５】
歪み最小化部１１２は、聴感重み付け部１１１から出力された符号化歪みが最小となるような、適応符号帳１０３、固定符号帳１０４及びゲイン符号帳１０５の各インデックスをサブフレームごとに求め、これらのインデックスを符号データとしてＣＥＬＰ符号化装置１００の外部に出力する。より詳細には、上記の適応符号帳１０３及び固定符号帳１０４に基づいて合成信号を生成し、この信号の符号化歪みを求める一連の処理は閉ループ制御（帰還制御）となっており、歪み最小化部１１２は、各符号帳に指示する符号データを１サブフレーム内において様々に変化させることによって各符号帳を探索し、最終的に得られる、符号化歪みを最小とする各符号帳の符号データを出力する。
【００３６】
なお、符号化歪みが最小となる際の駆動音源は、サブフレームごとに適応符号帳１０３へフィードバックされる。適応符号帳１０３は、このフィードバックにより、記憶されている駆動音源を更新する。
【００３７】
ここで、固定符号帳１０４の探索方法について説明する。まず、音源ベクトルの探索と符号データの導出は、以下の式（１）の符号化歪を最小化する音源ベクトルを探索することにより行われる。
【数１】
2012035781.tif 000003
Ｅ：符号化歪、ｘ：符号化ターゲット、ｐ：適応符号帳ベクトルのゲイン、Ｈ：聴感重み付け合成フィルタ、ａ：適応符号帳ベクトル、ｑ：固定符号帳ベクトルのゲイン、ｓ：固定符号帳ベクトル
【００３８】
一般的に、適応符号帳ベクトルと固定符号帳ベクトルとはオープンループで（別々のループで）探索されるので、固定符号帳１０４の符号の導出は、以下の式（２）の符号化歪を最小化する固定符号帳ベクトルを探索することにより行われる。
【数２】
2012035781.tif 000004
Ｅ：符号化歪、ｘ：符号化ターゲット（聴感重み付け音声信号）、ｐ：適応符号帳ベクトルの最適ゲイン、Ｈ：聴感重み付け合成フィルタ、ａ：適応符号帳ベクトル、ｑ：固定符号帳ベクトルのゲイン、ｓ：固定符号帳ベクトル、ｙ：固定符号帳探索のターゲットベクトル
【００３９】
ここで、ゲインｐ、ｑは音源の符号を探索した後で決定するので、ここでは最適ゲインで探索を進めることとする。すると、上式（２）は以下の式（３）と書ける。
【数３】
2012035781.tif 000005
【００４０】
そして、この歪の式を最小化することは、以下の式（４）の関数Ｃを最大化することと同値であることがわかる。
【数４】
2012035781.tif 000006
【００４１】
よって、代数的符号帳の音源のような少数パルスからなる音源の探索の場合は、ｙＨとＨＨを予め計算しておけば、少ない計算量で上記関数Ｃを算出できる。
【００４２】
図２は、図１に示した多段ベクトル量子化部１０２の内部構成を示すブロック図である。本実施の形態では、スペクトルパラメータ（ＬＰＣパラメータ）の量子化方法として多段ベクトル量子化（多段ＶＱ）を用いる。多段ＶＱとは、複数段のＶＱを連続的に行うものであり、前の段の量子化歪を次の段で量子化する方法である。ここでは、量子化ビット数が比較的多く、段数も比較的多い６〜１０段以上を想定して、多段ベクトル量子化部１０２の内部構成について説明する。
【００４３】
ベクトル量子化部２０１−１は、ＬＰＣ分析部１０１によって得られたＬＰＣパラメータ、すなわち、符号化対象（ターゲットベクトル）を量子化する。具体的には、符号帳に格納されたコードベクトルとの距離（量子化歪）を計算して、最も小さいものの番号を求めるというベクトル量子化を行う。木探索では、距離（量子化歪）が最も小さい方から数個の候補の番号を求めることになる。ベクトル量子化部２０１−１は、量子化歪として仮ターゲットベクトル、符号候補（木探索では番号の列（候補番号列）になる）及び候補数を求め、求めた仮ターゲットベクトル、符号候補及び候補数をベクトル量子化部２０１−２に出力し、符号候補を符号決定部２０２にも出力する。
【００４４】
ベクトル量子化部２０１−２は、ベクトル量子化部２０１−１から出力された仮ターゲットベクトル（木探索では複数存在することもある）に対して、ベクトル量子化部２０１−１と同様の量子化を行い、仮ターゲットベクトル、符号候補（候補番号列）及び候補数をベクトル量子化部２０１−３に出力し、符号候補を符号決定部２０２にも出力する。
【００４５】
ベクトル量子化部２０１−３〜２０１−Ｊは、それぞれベクトル量子化部２０１−１と同様の量子化を行い、ベクトル量子化部２０３−Ｊは仮ターゲットベクトル、符号候補（候補番号列）及び候補数を符号決定部２０２に出力する。
【００４６】
符号決定部２０２は、ベクトル量子化部２０１−１〜２０１−Ｊから出力された候補番号列のうち最も量子化歪が少ない候補番号列の番号を１つのデータ列に統合して、符号データとしてＣＥＬＰ符号化装置１００の外部へ送る。また、多段ベクトル量子化部１０２の入力であるターゲットベクトルから最終的な歪を減算すると、符号データを用いて復号化した結果得られる復号化ベクトルになる。この復号化ベクトルから、ＬＰＣ合成フィルタ１０９で使用する量子化ＬＰＣパラメータを求めて、ＬＰＣ合成フィルタ１０９へ送る。
【００４７】
図３は、図２に示したベクトル量子化部２０１−ｊ（１≦ｊ≦Ｊ）の内部構成を示すブロック図である。以下、ベクトル量子化部２０１−ｊ（１≦ｊ≦Ｊ）の内部構成について図３を用いて説明する。
【００４８】
ベクトル量子化部２０１−ｊには、３つの信号が入力される。一つは、候補数ｊであり、これは、量子化部２０１−ｊで候補として残して次の段のベクトル量子化部２０１−（ｊ＋１）に出力する、候補番号列及び仮ターゲットベクトルの数である。次に、ターゲットベクトル又は仮ターゲットベクトル（以下、これらをまとめて「仮ターゲットベクトル」ということがある）ｊであり、これは、最初の符号化対象（ターゲットベクトル）又は段の途中で前のベクトル量子化部２０１−（ｊ−１）で得られた符号化歪ベクトルとしての仮ターゲットベクトルである。最後に、候補番号列ｊであり、これは、ベクトル量子化部２０１−ｊまでで最も歪の少ない各ベクトル量子化部の番号列である。なお、ターゲットベクトルは１つであるが、仮ターゲットベクトルｊと候補番号列ｊは複数存在する場合がある。
【００４９】
ここで、候補数ｊをＫとおき、候補数ｊ−１をＭとおく。なお、ベクトル量子化部２０１−１では、ターゲットベクトルが１つなのでＭ＝１である。また、最後の段のベクトル量子化部２０１−Ｊでは、１つの候補番号列を求めればよいのでＫ＝１でよい。Ｍは入力されるターゲットベクトルと候補番号列ｊの数であり、Ｋは次の段のベクトル量子化部２０１−（ｊ＋１）に出力する候補数を意味することに注意されたい。
【００５０】
歪計算及び符号帳探索部３０１は、Ｍ個の仮ターゲットベクトルの全てと、符号帳３０２に格納された全てのコードベクトルとのマッチング（ユークリッド距離（ベクトルとして要素毎に差分を取って２乗和を求める）による距離計算が一般的である）を行い、距離（量子化歪）が最も小さい方からＫ個の候補を探索し、それらのコード番号を求める。その際、元になった番号列も決定される。そして、候補番号列ｊを参照して、元の番号列に候補のコード番号を接続してＫ個の候補番号列ｊ＋１を算出し、次の段のベクトル量子化部２０１−（ｊ＋１）に出力する。また、候補数ｊ、候補のコード番号のコードベクトル、量子化対象のターゲットベクトルを仮ターゲット算出部３０４に出力する。また、候補数ｊと符号化歪の中から１つの値を候補数決定部３０３に出力する。
【００５１】
なお、当該ベクトル量子化部２０１−ｊが最初の段のベクトル量子化部２０１−１である場合は、候補数ｊ及び候補番号列ｊはベクトル量子化部２０１−１の内部に予め設定されており、ターゲットベクトルのみが入力される。また、当該ベクトル量子化部２０１−ｊが最後の段のベクトル量子化部２０１−Ｊである場合は、候補数は１であり、最も距離（量子化歪）が小さくなった番号をターゲットベクトルに対応する候補番号列に接続して、候補番号列ｊ＋１として符号決定部２０２に出力するだけで、候補数決定部３０３及び仮ターゲット算出部３０４を機能させない。
【００５２】
歪計算及び符号帳探索部３０１の具体的な処理例を以下に示す。ｊ＝４，Ｍ＝４、Ｋ＝３、ベクトル長をＬとし、ターゲット（ここでは仮ターゲットベクトル）はｘｉ０，ｘｉ１，ｘｉ２，ｘｉ３、候補番号列は、ｊ＝４であることからこれまでにサイズ６４（６ビット）の符号帳を用いたベクトル量子化部が３段あったとして、（５，１２，３１）（５，１２，４８）（３１，１１，５７）（３１、３、１８）の４列とする。この４列の候補列のそれぞれが上記４つの仮ターゲットベクトルと１対１の関係にある。コードベクトルはＣｉｍとする。ｍはコードベクトルの番号とする。量子化歪Ｅｎ，ｍは、以下の式（５）で表される。
【数５】
2012035781.tif 000007
【００５３】
そして、この量子化歪Ｅｎ，ｍが最も小さくなる上位３つのコード番号を求める。求めた結果、上位３つだったのは、（１）仮ターゲットベクトルが０の時のコード番号３５、（２）仮ターゲットベクトルが０の時のコード番号８、（３）仮ターゲットベクトルが３の時のコード番号５２、であったとする。上記候補番号列を参照して最後に前記コード番号をつけると、候補番号列ｊ＋１として、次に送られる３つの番号列は、（５，１２，３１，３５）、（５，１２，３１，８）、（３１，３，１８，５２）となる。さらに、（ｘｉ０，Ｃｉ３５）、（ｘｉ０，Ｃｉ８）、（ｘｉ３，Ｃｉ５２）の３組の仮ターゲットベクトルとコードベクトルとを仮ターゲット算出部３０４に出力する。さらに、候補数３と上位３つの中から１つの距離（量子化歪）を候補数決定部３０３に出力する。なお、本実施の形態においては、３つの距離のいずれを出力してもよい。どれを出力しても性能に大きな差はないからである。
【００５４】
候補数決定部３０３は、歪計算及び符号帳探索部３０１から出力された候補数ｊと距離（量子化歪）を参照して、次の段のベクトル量子化部２０１−（ｊ＋１）で用いられる候補数ｊ＋１を決定してベクトル量子化部２０１−（ｊ＋１）に出力する。
【００５５】
仮ターゲット算出部３０４は、歪計算及び符号帳探索部３０１から出力されたターゲットとコードベクトルの組を参照して、ターゲットベクトルからコードベクトルを減算してＫ個の仮ターゲットベクトルｊ＋１を算出する。上記具体例では、（ｘｉ０−Ｃｉ３５）、（ｘｉ０−Ｃｉ８）、（ｘｉ３−Ｃｉ５２）の３つのベクトルが仮ターゲットベクトルｊ＋１となる。
【００５６】
次に、上述した候補数決定部３０３についてアルゴリズムの効果を含めて詳細に説明する。まず、木探索ＶＱで用いられるＮベストサーチにおいては、段数が多い場合、候補数Ｎに比例して計算量がＮ倍に増えてしまい、逆に、Ｎを小さくすると量子化性能が悪くなってしまう。そこで、本発明者は、木探索を用いた多段ＶＱのシミュレーション実験を繰り返し行い、木探索の性能分析を行い、以下の４つの傾向を抽出した。
【００５７】
すなわち、（１）Ｎベストサーチにおける候補数Ｎは段毎に増加又は不変としても計算量ほどの性能は得られない。候補を複数残すのが量子化性能に効果があるのは、多段量子化における最初の段においてである。（２）段が１つ進んだ際に、サーチの候補数を急激に下げると、量子化性能が大きく落ちる。（３）Ｎ＝２とＮ＝１は絶大な差があり、段数が多い場合はＮ＝２でほぼ十分な量子化性能が得られる。（４）段数が複数進んだ後で符号化歪が小さくならない場合には、最終的なアウトライア（量子化誤差がある値以上の割合）が悪化する可能性が増加する。
【００５８】
上記傾向に鑑み、本発明者は以下の３つのアルゴリズムを組み合わせることによる木探索を発案した。すなわち、以下の手順による。（手順１）１段目は予め指定された候補数Ｎだけ残して次の段に進む。（手順２）２段目からは段が進む毎に候補数をＮ−１、Ｎ−２と１つずつ減らしていく。（手順３）候補数が予め定められた値Ｐ以下になった場合、その都度、量子化歪を評価して、所定の閾値よりも大きい場合は次の段の候補数をＰ、閾値以下の場合は次の段の候補数を予め定められたＰより小さい値Ｑとする。以下の説明においては、ＰとＱとの例として、Ｐ＝３、Ｑ＝２として説明を行う。なお、この数値は、計算量に余裕のある場合は、もっと大きな数値でも良い。その場合にはより符号化歪を小さくすることが出来る。
【００５９】
このようなアルゴリズムを適用したのが候補数決定部３０３であり、この結果、最初は候補を多くして段が進む毎に１つずつ減らしていくこと（すなわち（手順２））により、最初の部分で的確な候補を選択することができ、また、量子化性能を悪化させることなく可能な限り早く最小限の候補数に辿り着くことができ、さらに、少ない計算量で十分な量子化性能を得ることができる。また、候補数が３（＝Ｐ）以下になった場合には、その都度、量子化歪を評価して、大きければ候補数を３（＝Ｐ）に増やし、十分小さければ候補数を２（＝Ｑ）に減らすこと（すなわち（手順３））により、十分小さい符号化歪に最低限の計算量で辿り着くように制御することができ、少ない計算量で十分な量子化性能を得ることができる。
【００６０】
次に、候補数決定部３０３における候補数決定手順について図４を用いて説明する。以下の説明では、候補数ｊ＋１をＫＫで表す。候補数決定部３０３に入力されるのは、歪計算及び符号帳探索部３０１から得られる、候補数ｊ（Ｋ）、距離（量子化歪）である。段数Ｊについては候補数決定部３０３で把握しているものとする。また、Ｋの初期値、距離の基準値は本量子化を始める前に予め定められていることとする。なお、図４においては距離の基準値として例えば５００００とするが、これは他の値が適当な場合もあり得る。ベクトルの次元または要素の値の大きさなどにより適切な値を決めておけばよい。
【００６１】
まず、ステップ（以下、「ＳＴ」と省略する）４０１では、段番号ｊ＝１、すなわち、ベクトル量子化部２０１−１であるか否かが判定され、段番号ｊ＝１である（ＹＥＳ）場合はＳＴ４０２に移行し、段番号ｊ＝１ではない（ＮＯ）場合はＳＴ４０５に移行する。
【００６２】
ＳＴ４０２では、候補数Ｋ（この場合、Ｋの初期値）を入力とし、総段数が７より大きいか否かを判定し、総段数が７より大きい場合はＳＴ４０３に移行し、総段数が７より大きくない場合はＳＴ４０４に移行する。なお、この「７」という数値はもちろん条件次第で他の値が適切な場合もあり得る。総段数または候補数の初期値などに応じて適切な値を予め決めておけばよい。
【００６３】
ＳＴ４０３では、ＫＫ＝Ｋ−１とし、また、ＳＴ４０４では、ＫＫ＝Ｋとする。
【００６４】
ＳＴ４０５では、ＳＴ４０１において段番号ｊ＝１ではない（ベクトル量子化部２０１−１ではない）と判定されたため、ＫＫ＝Ｋ−１とし、ＳＴ４０６では、段番号ｊ＝４以上であり、かつ、距離（量子化歪）が基準値を超えているか否かを判定し、この条件を満たす（ＹＥＳ）場合はＳＴ４０７に移行し、この条件を満たさない（ＮＯ）場合はＳＴ４０９に移行する。なお、ここでは、段番号ｊ＝４以上と設定しているがこれも他の値が適切な場合もあり得る。
【００６５】
ＳＴ４０７では、ＫＫが３（＝Ｐ）より小さいか否かを判定し、ＫＫが３（＝Ｐ）より小さい（ＹＥＳ）場合はＳＴ４０８に移行してＫＫ＝３とし、ＫＫが３（＝Ｐ）より小さくない（ＮＯ）場合はＳＴ４１１に移行する。
【００６６】
また、ＳＴ４０９では、ＫＫが２（＝Ｑ）より小さいか否かを判定し、ＫＫが２（＝Ｑ）より小さい（ＹＥＳ）場合はＳＴ４１０に移行してＫＫ＝２とし、ＫＫが２（＝Ｑ）より小さくない（ＮＯ）場合はＳＴ４１１に移行する。
【００６７】
このようにＳＴ４０６〜ＳＴ４１０では、ある程度量子化が進んだ段階で距離（量子化歪）が十分小さければ候補数を小さく設定し、距離がまだ大きい場合には候補数をより大きくして総合的量子化歪をより小さくするという効果が得られるようにしたものである。最低候補数の「２」（＝Ｑ）を確保しながら候補数「３」（＝Ｐ）を使ってより総合的量子化歪を小さくするアルゴリズムである。本発明者の量子化実験においては、この距離の判定によりアウトライア（量子化歪がある大きな値以上になる割合）を低減できることを確認している。
【００６８】
ＳＴ４１１では、段番号ｊ＝Ｊ、すなわち、最終段であるか否かを判定し、段番号ｊ＝Ｊである（ＹＥＳ）場合はＳＴ４１２に移行し、段番号ｊ＝Ｊではない（ＮＯ）場合はこの段における候補数決定手順を終了する。
【００６９】
ＳＴ４１２では、ＫＫ＝１に設定し、最終段における候補数決定処理を終了する。
【００７０】
ここで、本発明の有効性を示すために、ＣＥＬＰのＩＳＦ量子化に適用した量子化実験について示す。符号器はＣＥＬＰを基本としたもので、ビットレートは約２４ｋｂｐｓ、用いたデータは広帯域の周波数の日本語４０サンプルである。量子化したのはＩＳＦ（ImmittanceSpectral Frequency）の１６次元のベクトルである。ベースとなる多段ＶＱはＮベースの木探索であり６段以上の段数がある。本発明は同じＮを初期の候補数にしている。量子化実験結果を以下の表１に示す。
【表１】
2012035781.tif 000008
【００７１】
上記表１から、最大フレームの計算量を約１．７ｗＭＯＰＳ（weitghed Mega OparationPer Second）削減することができ、計算量を大きく削減できることが分かる。また、Ｓ／Ｎ比（Signal/Noise ratio）では殆ど変わらず、客観値では合成音は殆ど劣化しないことが分かる。ＩＳＦの歪をＳＤ（Spectral Distance）で比較しても０．０１ｄＢという微量の劣化であり、２ｄＢ以上の割合を見るアウトライアでは劣化は０．２％だけである。これは５００フレームに１回という割合であり、殆ど劣化がないことを示している。しかも、本発明による処理の増加は、候補数の決定だけであり、その計算量は軽微であることから、アルゴリズム全体に与える影響も小さい。
【００７２】
このように、実施の形態１によれば、木探索を用いた多段ＶＱにおいて、１段目は予め指定された候補数Ｎとし、２段目以降では段が進む毎に候補数を１つずつ減らし、候補数が３以下になった場合は、その都度、量子化歪を評価し、所定の閾値よりも大きい場合は次の段の候補数を３（＝Ｐ）、閾値以下の場合は次の段の候補数を２（＝Ｑ）とする。これにより、最初の部分で的確な候補を選択することができ、また、量子化性能を悪化させることなく可能な限り早く最小限の候補数に辿り着くことができ、さらに、少ない計算量で十分な量子化性能を得ることができる。また、最低限の計算量で十分小さい符号化歪に辿り着くように制御することができる。
【００７３】
（実施の形態２）
本発明の実施の形態２に係るＣＥＬＰ符号化装置の構成は、実施の形態１の図１に示した構成と同一であり、ベクトル量子化部２０１−ｊの候補数決定部３０３の機能が異なるのみなので、必要に応じて図１〜図３を援用して説明する。
【００７４】
図５は、本発明の実施の形態２に係る候補数決定部３０３における候補数決定手順を示すフロー図である。以下、候補数決定手順について図５を用いて説明する。ただし、図５において、図４と共通する部分には図４と同一の符号を付し、重複する説明は省略する。
【００７５】
また、以下の説明では、実施の形態１の図４と同じ条件とする。すなわち、候補数ｊ＋１をＫＫで表す。候補数決定部３０３に入力されるのは、歪計算及び符号帳探索部３０１から得られる、候補数ｊ（Ｋ）、距離（量子化歪）である。また、段数Ｊについては候補数決定部３０３で把握しているものとする。また、Ｋの初期値、距離の基準値は本量子化を始める前に予め定められていることとする。なお、図５においては距離の基準値として例えば５００００とするが、これは他の値が適当な場合もあり得る。ベクトルの次元または要素の値の大きさなどにより適切な値を決めておけばよい。
【００７６】
ＳＴ５０１では、段番号ｊ＝３以上であるか、またはＫＫ＝３以下であるか否かを判定し、この条件を満たす（ＹＥＳ）場合はＳＴ５０２に移行し、この条件を満たさない（ＮＯ）場合はＳＴ４１１に移行する。
【００７７】
ＳＴ５０２では、距離（量子化歪）が基準値を超えているか否かを判定し、超えている（ＹＥＳ）場合はＳＴ４０７に移行し、超えていない（ＮＯ）場合はＳＴ４０９に移行する。
【００７８】
このように、実施の形態２によれば、量子化歪を評価する前に候補数ＫＫが十分小さくなったことを確認することにより、候補数ＫＫが十分小さくなれば量子化歪を用いた候補数制御をすぐに行うことができ、できるだけ少ない計算量で十分な量子化性能を得ることができる。
【００７９】
なお、上記各実施の形態では、図３に示したように、候補数決定部３０３を歪計算及び符号帳探索部３０１の後段に設けているが、候補数決定部３０３を歪計算及び符号帳探索部３０１の前段に設けてもよい。この場合、候補数決定部３０３は、前の段のベクトル量子化部からの距離（量子化歪）及び候補数を使用でき、同様の効果が得られることは明らかである。
【００８０】
また、上記各実施の形態では、ＣＥＬＰにおける例を示したが、本発明はベクトル量子化に利用できる発明であるので、ＣＥＬＰに限らないことは明らかである。例えば、ＭＤＣＴ（Modified Discrete Cosine Transform）またはＱＭＦ（Quadrature Mirror Filter）を利用したスペクトルの量子化にでも利用できるし、帯域拡張技術における低周波数領域のスペクトルの中から似たスペクトル形状を探索するアルゴリズムにも応用できる。さらに、本発明はＬＰＣ分析を用いる符号化方式の全てに適用することができる。
【００８１】
また、上記各実施例の形態では、ＩＳＦを符号化する例を示したが、本発明はこれに限らず、ＩＳＰ（ImmittanceSpectrum Pairs）、ＬＳＰ（Lin Spectrum Pairs）、ＰＡＲＣＯＲ（PARtial autoCORrelation）などのパラメータを量子化する場合に適用することができる。実施の形態におけるＩＳＦ量子化の代わりに別の量子化法を用いれば良いからである。
【００８２】
また、上記各実施の形態では、ＣＥＬＰのスペクトルパラメータの木探索ＶＱに対して本発明を適用したが、別のパラメータベクトルの量子化でも本発明が有効であるのは明らかである。パラメータの性質が本発明に影響を与えないからである。
【００８３】
また、上記各実施の形態では、歪計算及び符号帳探索部３０１にユークリッド距離を用いたが、これは重み付きユークリッド距離あるいは市街地距離（絶対値の和）など、他の距離尺度でもよい。本発明は、候補数決定部３０３のアルゴリズムにあり、距離尺度は本発明に無関係だからである。
【００８４】
また、上記各実施の形態では、符号器に応用した場合を示したが、音声認識または画像認識などのパターンマッチングに用いられる木探索にも本発明は応用することができる。本発明は、木探索の候補数の決定に係り、アルゴリズム全体の目的に影響しないからである。
【００８５】
また、上記各実施の形態で説明した符号化装置は、通信端末装置あるいは基地局装置に搭載して用いることが可能である。
【００８６】
また、上記各実施の形態では、距離（量子化歪）と比較する基準値を予め決められた定数としているが、これは各段（段番号）によって異なる値でもよいことは明らかである。本発明は基準値を拘束するものではないからである。各段（段番号）において基準値を変えることによって、より効率的な探索を実現することができる。
【００８７】
また、上記各実施の形態では、候補数の制御に「３と２」という予め定められた数値を用いているが、これも「４と３」、「４と２」などの数値を用いてもよい。また、この数値を各段（段番号）で異ならせてもよい。これらの数値は、計算量に余裕がある場合または、より高い性能が必要な場合など、場合に応じて設定すればよい。
【００８８】
また、実施の形態２では、ｊとＫＫの判定にそれぞれ「３と３」という予め定められた数値（定数）を用いているが、これも「２と２」、「２と３」、「４と３」、「２と４」、「４と４」又は「５と４」などに変えてもよい。また各段（段番号）で異ならせてもよい。これらの数値は、計算量に余裕がある場合、より高い性能が必要な場合など、場合に応じて設定すればよい。
【００８９】
また、上記各実施の形態では、本発明をハードウェアで構成する場合を例にとって説明したが、本発明はハードウェアとの連携においてソフトウェアによって実現することも可能である。
【００９０】
また、上記各実施の形態の説明に用いた各機能ブロックは、典型的には集積回路であるＬＳＩとして実現される。これらは個別に１チップ化されてもよいし、一部又は全てを含むように１チップ化されてもよい。ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【００９１】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Field Programmable Gate Array）または、ＬＳＩ内部の回路セルの接続または設定を再構成可能なリコンフィギュラブルプロセッサを利用してもよい。
【００９２】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
【００９３】
２０１０年９月１７日出願の特願２０１０−２１０１１６及び２０１０年１０月１３日出願の特願２０１０−２３０５３７の日本出願に含まれる明細書、図面及び要約書の開示内容は、すべて本願に援用される。
【産業上の利用可能性】
【００９４】
本発明にかかる量子化装置及び量子化方法は、音声符号化装置等に適用できる。
【符号の説明】
【００９５】
１０１  ＬＰＣ分析部
１０２  多段ベクトル量子化部
１０３  適応符号帳
１０４  固定符号帳
１０５  ゲイン符号帳
１０６、１０７  乗算器
１０８、１１０  加算器
１０９  ＬＰＣ合成フィルタ
１１１  聴感重み付け部
１１２  歪み最小化部
２０１−１〜２０１−Ｊ  ベクトル量子化部
２０２  符号決定部
３０１  歪計算及び符号帳探索部
３０２  符号帳
３０３  候補数決定部
３０４  仮ターゲット算出部
【図１】
2012035781.tif 000009
【図２】
2012035781.tif 000010
【図３】
2012035781.tif 000011
【図４】
2012035781.tif 000012
【図５】
2012035781.tif 000013
【国際調査報告】
2012035781.tif 000014
2012035781.tif 000015
2012035781.tif 000016
2012035781.tif 000017