(57)【要約】【解決手段】  本発明の実施形態は、ベクトル量子化方法を開示する。この方法は、Ｎ（Ｎは１以上の正の整数）個の基礎コードブック・ベクトルおよび各基礎コードブック・ベクトルの調整ベクトルを用いて量子化対象ベクトルに対して量子化処理を行ない、量子化対象ベクトルの基礎コードブック・ベクトルおよび調整ベクトルを取得する、ことを含んでいる。本発明の実施形態は、さらに、上記の方法に基づいて、ベクトル量子化装置を開示する。本発明の実施形態が提供する技術的策は、基礎コードブック・ベクトルの調整ベクトルを用いて、入力ベクトルに対して量子化を行なう。したがって、基礎コードブック・ベクトルのメモリ量が有効に減少し、演算量はＮ個のコードブックを網羅するのに必要な計算量だけである。よって、ベクトル量子化の複雑度を有効に低下できる。【選択図】      図５
2010509647.tif 000002
【特許請求の範囲】
【請求項１】
Ｎ（Ｎは１以上の正の整数）個の基礎コードブック・ベクトルおよび各基礎コードブックの調整ベクトルを用いて量子化対象ベクトルに対して量子化処理を行ない、
量子化対象ベクトルの基礎コードブック・ベクトルおよび調整ベクトルの量子化を得る、
ことを具備する、ベクトル量子化方法。
【請求項２】
前記Ｎ個の基礎コードブック・ベクトルおよび各基礎コードブック・ベクトルの調整ベクトルを用いて量子化対象ベクトルに対して量子化処理を行なう前に前記調整ベクトルを生成することが、
前記Ｎ個の基礎コードブック・ベクトルの平均ベクトルを計算し、
前記各基礎コードブック・ベクトルから前記平均ベクトルまでの距離を計算し、
前記各基礎コードブック・ベクトルから前記平均ベクトルまでの距離に基づいて、各基礎コードブック・ベクトルの調整ベクトルを生成する、
ことを具備する、請求項１の方法。
【請求項３】
前記各基礎コードブック・ベクトルの調整ベクトルを生成することが、前記各基礎コードブック・ベクトルの各次元の要素の調整量を生成することを具備する、請求項２の方法。
【請求項４】
前記各基礎コードブック・ベクトルの各次元の要素の調整量を生成することが、
前記各基礎コードブック・ベクトルの各次元の要素の調整量に対応する１つ以上の倍率を設定し、
該基礎コードブック・ベクトルから前記平均ベクトルまでの距離に該次元の要素の調整量に対応する各倍率をそれぞれ乗じて該基礎コードブック・ベクトルの該次元の要素に対応する各積を得、前記各積を該基礎コードブック・ベクトルの該次元の要素に対応する各調整量とする、
ことを具備する、請求項３の方法。
【請求項５】
前記各調整量の索引番号を生成することをさらに具備する、請求項２の方法。
【請求項６】
前記各調整量の索引番号を生成することが、
前記基礎コードブック・ベクトルの前記次元の要素に対応する各積を並べ、
前記各積の通し番号を該積に対応する前記調整量の索引番号とする、
ことを具備する、請求項５の方法。
【請求項７】
前記平均ベクトルの次元数はａ（ａは１以上の正の整数）であり、前記Ｎ個の基礎コードブック・ベクトルの平均ベクトルを計算することが、
ｊ番目の基礎コードブック・ベクトルのｉ次元の要素をＹｊ（ｉ）とし、前記平均ベクトルのｉ次元の要素をＡＶ（ｉ）として、
【数１】
2010509647.tif 000015
ただし、ｉ＝１，２，…，ａ、
であって、
前記平均ベクトルＡＶ（ａ）＝｛ＡＶ（ｉ）｝である、
請求項２乃至６のいずれか１項の方法。
【請求項８】
前記各基礎コードブック・ベクトルから前記平均ベクトルまでの距離の計算が、
【数２】
2010509647.tif 000016
ただし、ｊ＝１，２，…，Ｎ、
であって、
ＡＶＳ（ｊ）は、ｊ番目の基礎コードブック・ベクトルから前記平均ベクトルまでの距離である、
請求項７の方法。
【請求項９】
前記Ｎ個の基礎コードブック・ベクトルおよび各基礎コードブック・ベクトルの調整ベクトルを用いて量子化対象ベクトルに対して量子化処理を行う前に、
前記量子化対象ベクトルと前記Ｎ個の基礎コードブック・ベクトルのうちの各基礎コードブック・ベクトルおよび該基礎コードブック・ベクトルの調整ベクトルとの差分ベクトルを計算することをさらに具備する、
請求項１の方法。
【請求項１０】
前記量子化対象ベクトルとＮ個の基礎コードブック・ベクトルのうちの各基礎コードブック・ベクトルおよび該基礎コードブック・ベクトルの調整ベクトルとの間の差分ベクトルを計算することが、
前記量子化対象ベクトルと前記Ｎ個の基礎コードブック・ベクトルのうちの各基礎コードブック・ベクトルとの間の残差ベクトルを計算することを具備する、
請求項９の方法。
【請求項１１】
前記Ｎ個の基礎コードブック・ベクトルおよび各基礎コードブック・ベクトルの調整量を用いて量子化対象ベクトルに対して量子化処理を行うことが、
前記各コードブックの調整量を用いて前記量子化対象ベクトルと該コードブックとの間の残差ベクトルに対して量子化処理を行なう、ことを具備する、
請求項１０の方法。
【請求項１２】
前記各コードブックの各次元の要素に対応する調整量が１つ以上であって、前記各コードブックの調整量を用いて前記量子化対象ベクトルと該コードブックとの間の残差ベクトルに対して量子化処理を行なうことが、
該残差ベクトルの各次元の要素と前記コードブックの同次元の要素に対応する各調整量との間の差分絶対値を計算し、
該残差ベクトルの各次元の要素に対応する各最小差分絶対値および前記最小差分絶対値に対応する調整量を得る、
ことを具備する、
請求項１１の方法。
【請求項１３】
前記残差ベクトルの各次元の要素に対応する各最小差分絶対値を得た後に、該残差ベクトルと最小差分絶対値に対応する調整量との間の歪み度を算出し、
前記残差ベクトルと最小差分絶対値に対応する調整量との間の歪み度を算出することが、
前記残差ベクトルの各次元の要素に対応する最小差分絶対値の平方値を求め、
前記各次元の要素に対応する最小差分絶対値の平方値を合計し、
得られた合計結果を該残差ベクトルと最小差分絶対値に対応する調整量との間の歪み度とする、
ことを具備する、請求項１２の方法。
【請求項１４】
前記残差ベクトルの各次元の要素に対応する最小差分絶対値の平方値を求めた後に、該平方値を対応する重み付け係数と乗ずることをさらに具備し、
前記重み付け係数は実数である、
請求項１３の方法。
【請求項１５】
残差ベクトルと歪み度とが１対１で対応し、前記歪み度がＮ個であって、
前記方法が、
Ｎ個の歪み度の中から最小歪み度を選出し、
前記最小歪み度に対応する前記コードブックおよび前記調整量を前記量子化対象ベクトルの前記コードブックおよび前記調整量とする、
ことをさらに具備する、
請求項１３の方法。
【請求項１６】
前記最小歪み度に対応する前記コードブックの索引番号および前記最小歪み度に対応する前記調整量の索引番号を出力することをさらに具備する、
請求項１５の方法。
【請求項１７】
Ｎ（Ｎは１以上の正の整数）個のコードブック・ベクトルの平均ベクトルを計算し、
前記各コードブックから前記平均ベクトルまでの距離を計算し、
前記各コードブック・ベクトルから前記平均ベクトルまでの距離に基づいて、各コードブック・ベクトルの調整量を生成する、
ことを具備する、コードブックの調整量を生成する方法。
【請求項１８】
前記各コードブックの調整量を生成することが、前記各コードブックの各次元の要素の調整量を生成することを具備する、請求項１７の方法。
【請求項１９】
前記各調整量の索引番号を生成することをさらに具備する、請求項１８の方法。
【請求項２０】
前記各調整量の索引番号を生成することが、
得られた前記コードブックの前記次元の要素に対応する各積を並べ、
前記各積の通し番号を該積に対応する前記調整量の索引番号とする、
ことを具備する、請求項１９の方法。
【請求項２１】
コードブック供給ユニットと、
調整量供給ユニットと、
量子化ユニットと、
を具備し、
前記コードブック供給ユニットは、量子化対象ベクトルに対応するＮ（Ｎは１以上の正の整数）個のコードブックを前記量子化ユニットに転送するためのものであり、
前記調整量供給ユニットは、前記各コードブックの調整量を前記量子化ユニットに転送するためのものであり、
前記量子化ユニットは、前記調整量供給ユニットからの前記各コードブックの前記調整量を受け取り、前記コードブック供給ユニットから受け取り、前記Ｎ個のコードブックおよび前記各コードブックの調整量を用いて前記量子化対象ベクトルに対して量子化処理を行ない、前記量子化対象ベクトルの前記コードブックおよび前記調整量の量子化を得るためのものである、
ベクトル量子化装置。
【請求項２２】
調整量生成ユニットをさらに具備し、
前記調整量ユニットは、
Ｎ（Ｎは１以上の正の整数）個のコードブックの平均ベクトルを計算し、
前記各コードブックから前記平均ベクトルまでの距離を計算し、
前記各コードブックから前記平均ベクトルまでの距離に基づいて、前記各コードブックの１つ以上の調整量を生成し、生成した前記各コードブックの調整量を前記調整量供給ユニットに転送する、
ためのものである、請求項２１の装置。
【請求項２３】
残差ベクトル計算ユニットをさらに具備し、
前記残差ベクトル計算ユニットは、前記量子化対象ベクトルと前記Ｎ個のコードブックのうちの前記各コードブックとの間の残差ベクトルを計算し、前記各コードブックの間の残差ベクトルを前記量子化ユニットに供給するためのものである、
請求項２１または２２の装置。
【請求項２４】
前記量子化ユニットが、量子化サブユニットと、計算サブユニットと、選択サブユニットと、を具備し、
前記量子化サブユニットは、前記調整量供給ユニットからの前記各コードブックの調整量を受け取り、前記残差ベクトル計算ユニットからの残差ベクトルを受け取り、前記各残差ベクトルの前記各次元の要素と対応する前記コードブックの同次元の要素の前記各調整量との間の差分絶対値を計算し、前記残差ベクトルに対応する各次元の要素に対応する最小差分絶対値を選出し、前記残差ベクトルの各次元の要素に対応する最小差分絶対値の計算結果を前記計算サブユニットに転送するためのものであり、
前記計算サブユニットは、前記量子化サブユニットからの前記各残差ベクトルの各次元の要素に対応する最小差分絶対値の計算結果を受け取り、該残差ベクトルの各次元に対応する最小差分絶対値の平方を計算し、前記各次元の要素に対応する最小差分絶対値の平方を合計し、得られた合計結果を該残差ベクトルと調整量との間の歪み度とし、前記Ｎ個の残差ベクトルのＮ個の歪み度を算出し、前記Ｎ個の歪み度を前記選択サブユニットに転送するためのものであり、
前記選択サブユニットは、前記計算サブユニットからの前記Ｎ個の歪み度を受け取り、最小歪み度および前記最小歪み度に対応する前記コードブックおよび前記調整量を選出し、前記最小歪み度に対応する前記コードブックおよび前記調整量を出力するためのものである、
請求項２３の装置。
【請求項２５】
出力ユニットをさらに具備し、
前記出力ユニットは、前記選択サブユニットからの前記最小歪み度に対応する前記コードブックおよび前記調整量を受け取り、前記最小歪み度に対応する前記コードブックの索引番号および前記最小歪み度に対応する前記調整量の索引番号を出力するためのものである、
請求項２４の方法。
【請求項２６】
量子化対象ベクトルを取得し、
基礎コードブック・ベクトルを取得することであって、前記基礎コードブック・ベクトルは１つ以上の基礎サブベクトルから構成され、前記１つ以上の基礎サブベクトルには少なくとも１つの２次元以上の前記基礎サブベクトルに対応する１つの調整量ベクトル集合があり、前記調整ベクトル集合は前記基礎サブベクトルと同次元のＮ個の調整ベクトルを含んでおり、少なくとも１つの前記調整ベクトル集合は、Ｎの値が該集合内の各次元の異なる調整量の組合せからなる調整ベクトルの全ての組合せの個数より小さいことを満足することと、
前記基礎サブベクトルに対応する調整ベクトルを取得し、
前記基礎コードブック・ベクトルと異なる前記基礎サブベクトルに対応する１つ以上の前記調整ベクトルとの組合せを連合コードブック・ベクトルとして見て、前記連合コードブック・ベクトルと前記量子化対象ベクトルとの偏差に基づいて、可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択し、
選択された連合コードブック・ベクトルに対応する前記基礎コードブック・ベクトルの索引および前記調整ベクトルの索引を取得する、
ことを具備する、ベクトル量子化方法。
【請求項２７】
現在の基礎コードブック・ベクトルに対応する倍率を取得することをさらに具備する、
請求項２６のベクトル量子化方法。
【請求項２８】
前記可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択する工程が、
前記量子化対象ベクトルと前記現在の基礎コードブック・ベクトルとの差分ベクトルを計算することであって、前記差分ベクトルは１つ以上の差分サブベクトルから構成され、前記差分サブベクトルへの分割方法と基礎サブベクトルへの分割方法とは同じであることと、
対応する調整ベクトル集合を有する基礎サブベクトルについて、該調整ベクトル集合内の調整ベクトルと対応する差分サブベクトルとの偏差に基づいて、現在の基礎サブベクトルの最良の調整ベクトルを選択し、
前記各最良の調整ベクトルの偏差、および未対応の調整ベクトル集合の前記基礎サブベクトルと前記量子化対象ベクトルの相応部分との偏差を累積し、前記現在の基礎コードブック・ベクトルに対応する最良の連合コードブック・ベクトルの偏差とし、
前記各基礎コードブック・ベクトルに対応する最良の連合コードブック・ベクトルの偏差を比較して、量子化に用いる連合コードブックを選択する、
ことを具備する、請求項２６のベクトル量子化方法。
【請求項２９】
前記可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択する工程が、
前記現在の基礎コードブック・ベクトルおよび選択可能な調整ベクトルを重畳し、連合コードブック・ベクトルを生成し、
現在の連合コードブック・ベクトルと前記量子化対象ベクトルとの偏差を計算し、
異なる前記連合コードブック・ベクトルと前記量子化対象ベクトルとの偏差を比較して、量子化に用いる連合コードブック・ベクトルを選択する、
ことを具備する請求項２６のベクトル量子化方法。
【請求項３０】
前記基礎サブベクトルに対応する調整ベクトルを取得するステップが、
前記基礎サブベクトルに対応する関係ベクトル集合を捜索することであって、前記関係ベクトル集合は前記調整ベクトル集合であるか前記調整ベクトル集合と関数対応関係を有し、
前記関係ベクトル集合の中から取得した関係ベクトルに基づいて相応する前記調整ベクトルを得る、
ことを具備し、
前記調整ベクトルの索引を該調整ベクトルに対応する前記関係ベクトルの関係ベクトル集合における通し番号とする、
請求項２６乃至２９のいずれか１項のベクトル量子化方法。
【請求項３１】
前記基礎サブベクトルに対応する関係ベクトル集合を捜索するステップが、
関係ベクトル集合の１つ以上の部分集合を探索することであって、各部分集合が含んでいる関係ベクトルの個数は、該部分集合内の全ての関係ベクトルの各次元の異なる値の全ての可能な組合せの個数と同じであり、
前記各部分集合において、対応する前記関係ベクトルの各次元の異なる値を検索し、
前記調整ベクトルの索引を該調整ベクトルに対応する関係ベクトルが所属する前記関係ベクトル部分集合の番号および該関係ベクトル部分集合における通し番号とする、
ことを具備する、請求項３０のベクトル量子化方法。
【請求項３２】
前記基礎サブベクトルに対応する調整ベクトルを取得するステップが、
前記基礎サブベクトルに対応する関係ベクトルの各次元の異なる値を検索し、
現在取得している各次元の値の組合せが選択可能な有効な前記関係ベクトルであるか否かを判断し、そうである場合に前記現在取得している有効な関係ベクトルに基づいて前記調整ベクトルを取得し、そうでない場合に検索の完了まで検索を継続する、
ことを具備し、
前記調整ベクトル集合は全てが有効な前記関係ベクトルの集合であるか、全てが有効な前記関係ベクトルの集合と関数対応関係を有しており、前記調整ベクトルの索引は該調整ベクトルに対応する前記有効な関係ベクトルの前記全てが有効な関係ベクトルにおける通し番号である、
請求項２６乃至２９のいずれか１項のベクトル量子化方法。
【請求項３３】
前記現在取得している各次元の値の組合せが選択可能な有効な関係ベクトルであるか否かを判断するステップが、
前記現在取得している各次元の値の組合せの全ての組合せにおける通し番号を計算し、
前記通し番号に基づいて前記値の組合せが選択可能な有効な関係ベクトルであるかを判断する、
ことを具備する、請求項３２のベクトル量子化方法。
【請求項３４】
量子化対象ベクトルを取得するためのベクトル入力ユニットと、
基礎コードブック・ベクトルを提供するための基礎コードブック・ユニットであって、前記基礎コードブック・ベクトルは１つ以上の基礎サブベクトルから構成され、前記１つ以上の基礎サブベクトルには少なくとも１つの２次元以上の前記基礎サブベクトルに対応する１つの調整量ベクトル集合があり、前記調整ベクトル集合は前記基礎サブベクトルと同次元のＮ個の調整ベクトルを含んでおり、少なくとも１つの前記調整ベクトル集合は、Ｎの値が該集合内の各次元の異なる調整量の組合せからなる調整ベクトルの全ての組合せ数より小さいことを満足することと、
前記基礎コードブック・ベクトルに対応する調整ベクトルを提供するための調整ベクトル・ユニットと、
前記基礎コードブック・ユニットおよび前記調整ベクトル・ユニットから前記基礎コードブック・ベクトルおよび前記調整量を取得し、前記基礎コードブック・ベクトルと異なる前記基礎サブベクトルに対応する１つ以上の前記調整ベクトルとの組合せを連合コードブック・ベクトルとして見て、前記連合コードブック・ベクトルと前記量子化対象ベクトルとの偏差に基づいて、可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択するための量子化ユニットと、
前記量子化ユニットが選択した前記連合コードブック・ベクトルに対応する前記基礎コードブック・ベクトルの索引および前記調整ベクトルの索引を取得するための量子化出力ユニットと、
を具備する量子化器。
【請求項３５】
前記基礎コードブック・ユニットが現在提供している前記基礎コードブック・ベクトルに対応する倍率を提供するための倍率ユニットをさらに具備する、
請求項３４のベクトル量子化器。
【請求項３６】
前記量子化ユニットが、
前記量子化対象ベクトルと前記基礎コードブック・ユニットから取得した現在の基礎コードブック・ベクトルとの差分ベクトルを計算するための残差計算ユニットであって、前記差分ベクトルは１つ以上の差分サブベクトルから構成され、前記差分サブベクトルへの分割方法と基礎サブベクトルへの分割方法とは同じであることと、
対応する調整ベクトル集合を有する前記基礎サブベクトルについて、前記調整ベクトル・ユニットが提供する該調整ベクトル集合内の前記調整ベクトルと対応する前記差分サブベクトルとの偏差に基づいて、現在の基礎サブベクトルの最良の調整ベクトルを選択するための残差量子化ユニットと、
前記各基礎コードブック・ベクトルに対応する最良の連合コードブック・ベクトルの偏差を比較し、量子化に用いる連合コードブックを選択するための量子化選択ユニットと、
を具備する、
請求項３４のベクトル量子化器。
【請求項３７】
前記量子化ユニットが、
前記基礎コードブック・ユニットから取得した現在の基礎コードブック・ベクトルおよび前記調整ベクトル・ユニットから取得した前記調整ベクトルを重畳し、連合コードブック・ベクトルを生成するための連合ベクトル・ユニットと、
前記連合ベクトル・ユニットが現在生成している連合コードブック・ベクトルと前記量子化対象ベクトルとの偏差を計算するための偏差計算ユニットと、
異なる前記連合コードブック・ベクトルと前記量子化対象ベクトルとの偏差を比較し、量子化に用いる連合コードブック・ベクトルを選択するための比較選択ユニットと、
を具備する、
請求項３４のベクトル量子化器。
【請求項３８】
前記調整ベクトル・ユニットが、
前記基礎サブベクトルに対応する関係ベクトル集合を提供するための集合供給ユニットであって、前記関係ベクトル集合は前記調整ベクトル集合であるか前記調整ベクトル集合と関数対応関係を有することと、
前記集合供給ユニットが提供した前記関係ベクトル集合を捜索し、該関係ベクトル集合の中から取得した関係ベクトルに基づいて相応する前記調整ベクトルを得るための調整生成ユニットと、
を具備し、
前記量子化出力ユニットが取得した前記調整ベクトルの索引を該調整ベクトルに対応する前記関係ベクトルの関係ベクトル集合における通し番号とする、
請求項３４乃至３７のいずれか１項のベクトル量子化器。
【請求項３９】
前記調整ベクトル・ユニットが、
前記基礎サブベクトルに対応する前記関係ベクトルの各次元の異なる値を検索するための超過量検索ユニットと、
前記超過量検索ユニットが現在取得している各次元の値の組合せが選択可能な有効な前記関係ベクトルであるか否かを判断し、そうである場合に前記現在取得している有効な関係ベクトルに基づいて前記調整ベクトルを取得し、そうでない場合に前記超過量検索ユニットが検索の完了まで検索を継続するように制御するためのベクトル選択ユニットと、
を具備し、
前記量子化出力ユニットが取得した前記調整ベクトルの索引を該調整ベクトルに対応する有効な関係ベクトルの全ての有効な関係ベクトルにおける通し番号とする、
請求項３４乃至３７のいずれか１項のベクトル量子化器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、信号処理技術に関し、より具体的には、ベクトル量子化方法および装置に関する。
【背景技術】
【０００２】
音声信号または映像信号のディジタル圧縮符号化処理において、所定のベクトル符号化コードブックに従って、多数の入力信号サンプル値からなるベクトルに対して量子化を行なって、符号化の質を保証しながら符号化レートを下げることができる。
【０００３】
ベクトル量子化は、効率的なデータ圧縮技術である。この技術によって、まず、入力信号が、Ｋ個の連続するサンプル値を各々が有する１つ以上のグループへと分けられる。この組のサンプル値のグループはＫ（Ｋ＝１，２，３…）次元のユークリッド空間内の１つのベクトルを構成している。次いで、このような各ベクトルに対して符号化処理を行なう。ベクトル量子化が複雑であることは、主に、２つの点に起因する。計算量とメモリ量である。ベクトル量子化の複雑度は、ベクトルの次元数の増加とともに指数関数的に増加する。さらに、損失の多い圧縮技術であるので、ベクトル量子化は、量子化の歪みの問題のほかに、符号化レートの問題を含み、ベクトルの次元数は符号化レートに反比例する。ネットワーク条件が劣悪な環境では、一般に、符号化レートを下げることによってネットワーク転送の際のパケット紛失を回避し、一定の符号化品質を保障する。しかしながら、このことによって、ベクトル量子化がより複雑になる。
【０００４】
従来の音声信号の符号化圧縮工程を例に取り、従来の音声符号化工程で採用されているベクトル量子化技術について、以下に説明する。
【０００５】
従来のイミタンス・スペクトル周波数（Immittance Spectral Frequency, ISF）係数からなるベクトルを量子化する技術において、通常、広帯域適応型マルチレート（Wideband Adaptive Multi Rate, AMR-WB+)音声コーデックを用いてＩＳＦベクトルを量子化する。ＩＳＦ係数は、音声信号の線形予測係数（Linear Prediction Coefficient, LPC）からの変換によって得ることができる。ＡＭＲ−ＷＢ＋は、連合分割ベクトル量子化（Split Vector Quantization, SVQ）および複数次ベクトル量子化（Multi Stage Vector quantization, MSVQ）を組合せて用いて、ＩＳＦベクトルを量子化する。このベクトル量子化工程は、主に、以下の通りである。まず１次移動平均（Moving Average, MA）予測法を用いて第ｎ（ｎ＝１，２，３…）フレームの現在のＩＳＦ予測残差ベクトルｒ（ｎ）を求め、次いで複数次コードブックを用いてｒ（ｎ）を量子化する。表１は、従来のＩＳＦベクトル量子化工程のビット割り当ておよびコードブック使用の表である。
【表１】
2010509647.tif 000003
【０００６】
表１に示されているように、ＡＭＲ−ＷＢ＋によるＩＳＦベクトル量子化工程は、以下の通りである。
【０００７】
ＩＳＦベクトルが１６次元のベクトルであり、ｒ（ｎ）も１６次元のベクトルであるとする。ベクトル量子化におけるコードブックのメモリ量を低減するために、r=[r1, r2, …, r16］とし、ＡＭＲ−ＢＷ＋は、ベクトルrに対して分割複数次ベクトル量子化（Split Multi Stage Vector Quantization, S-MSVQ）を実行する。
【０００８】
まず、１６次元ベクトルrを１次分割し、２つのベクトルを得る。すなわち、９次元ベクトルｒ１（１）と７次元ベクトルｒ２（１）である。ｒ１（１）およびｒ２（１）は８ビットを用いて量子化され、ｒ１（１）およびｒ２（１）を量子化するためのコードブックの個数は２５６である。
【０００９】
次に、ｒ１（１）およびｒ２（１）をそれぞれ２次分割し、計５つのベクトルを得る。
【００１０】
９次元のｒ１（１）は３つのサブベクトルへと分割される。すなわち６ビットで量子化された３次元のｒ１１（２）（対応するコードブックのベクトルの個数は６４）と、７ビットで量子化された３次元のｒ１２（２）（ｒ１１（１）およびｒ１２（１）を量子化するためのコードブックの個数は１２８）と、７ビットで量子化された３次元のｒ１３（２）（ｒ１３（２）を量子化するためのコードブックの個数は１２８）と、である。
【００１１】
７次元のｒ２（１）は２つのサブベクトルへと分割される。すなわち５ビットで量子化された３次元のｒ２１（２）（ｒ２１（２）を量子化するためのコードブックの個数は３２）と、５ビットで量子化された３次元のｒ２２（２）（ｒ２２（２）を量子化するためのコードブックの個数は３２）と、である。
【００１２】
上記の分割工程によって、計７つのサブベクトルが得られ、４６ビットがベクトルの量子化に割り当てられている。
【数１】
2010509647.tif 000004
【００１３】
Ｅをベクトル量子化の歪み度として用いて、このサブベクトルに対応するコードブック・ベクトルの中からＥを最小にするコードワードに対応するｙを選択し、ｙをこのコードワードの索引番号とし符号化した後、復号器に送信する。復号器は、復号された索引番号に基づいて対応するコードワードを見つけ、関連する情報を復号する。
【００１４】
従来のＡＭＲ−ＷＢ＋のベクトル量子化技術は、複数次コードブック・ベクトル量子化を採用しており、高い符号化品質を実現できるが、ベクトル量子化の複雑度が増す。ベクトル量子化の複雑度は、メモリ量および計算量に起因している。従来技術におけるコードブックのメモリ量は大きく、このため、計算量が増加し、計算の際に全てのコードブック・ベクトルを網羅する必要がある。このため、従来技術のベクトル量子化の複雑度を低減することにおいてさらなる改善が求められている。
【発明の概要】
【００１５】
本発明が解決する技術的問題は、複雑度が低下したベクトル量子化方法およびベクトル量子化装置を提供することである。
【００１６】
ベクトル量子化方法は、
量子化対象ベクトルを取得し；  基礎コードブック・ベクトルを取得することであって、前記基礎コードブック・ベクトルは１つ以上の基礎サブベクトルから構成され、前記１つ以上の基礎サブベクトルには少なくとも１つの２次元以上の前記基礎サブベクトルに対応する１つの調整量ベクトル集合があり、前記調整ベクトル集合は前記基礎サブベクトルと同次元のＮ個の調整ベクトルを含んでおり、少なくとも１つの前記調整ベクトル集合は、Ｎが該調整ベクトル集合内の全ての調整ベクトルの各次元の異なる値の全ての可能な組合せの個数より小さいことを満足することと；  前記基礎サブベクトルに対応する調整ベクトルを取得し；  前記基礎コードブック・ベクトルと異なる前記基礎サブベクトルに対応する１つ以上の前記調整ベクトルとの組合せを連合コードブック・ベクトルとして見て、前記連合コードブック・ベクトルと前記量子化対象ベクトルとの偏差に基づいて、可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択し；  選択された連合コードブック・ベクトルに対応する前記基礎コードブック・ベクトルの索引および前記調整ベクトルの索引を取得する、ことを具備する。
【００１７】
量子化装置は、量子化対象ベクトルを取得するためのベクトル入力ユニットと；  基礎コードブック・ベクトルを提供するための基礎コードブック・ユニットであって、前記基礎コードブック・ベクトルは１つ以上の基礎サブベクトルから構成され、前記１つ以上の基礎サブベクトルには少なくとも１つの２次元以上の前記基礎サブベクトルに対応する１つの調整量ベクトル集合があり、前記調整ベクトル集合は前記基礎サブベクトルと同次元のＮ個の調整ベクトルを含んでおり、少なくとも１つの前記調整ベクトル集合は、Ｎが該調整ベクトル集合内の全ての調整ベクトルの各次元の異なる値の全ての可能な組合せの個数より小さいことを満足することと；  前記基礎コードブック・ベクトルに対応する調整ベクトルを提供するための調整ベクトル・ユニットと；  前記基礎コードブック・ユニットおよび前記調整ベクトル・ユニットから前記基礎コードブック・ベクトルおよび前記調整量を取得し、前記基礎コードブック・ベクトルと異なる前記基礎サブベクトルに対応する１つ以上の前記調整ベクトルとの組合せを連合コードブック・ベクトルとして見て、前記連合コードブック・ベクトルと前記量子化対象ベクトルとの偏差に基づいて、可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択するための量子化ユニットと；  前記量子化ユニットが選択した前記連合コードブック・ベクトルに対応する前記基礎コードブック・ベクトルの索引および前記調整ベクトルの索引を取得するための量子化出力ユニットと、を具備する。
【００１８】
上記のベクトル量子化方法において、基礎コードブック・ベクトルとそのサブベクトルの調整ベクトルとの組合せからなる連合コードブック・ベクトルを用いて、量子化対象のベクトルを量子化する方法を用いている。調整ベクトルを用いて基礎コードブック・ベクトルを調整するので、次元間の関連性を十分に利用することができ、より個数が少ない調整ベクトルでより大きな動的調整範囲を実現し、量子化計算量が有利に減少し、演算の複雑度が低下する。
【００１９】
本発明は、より簡単なベクトル量子化方法を提供する。
【００２０】
本発明は、また、コードブックの調整量の生成方法を提供する。
【００２１】
本発明は、さらに、より簡単なベクトル量子化装置を提供する。
【００２２】
ベクトル量子化方法は、Ｎ（Ｎは１以上の正の整数）個のコードブック・ベクトルおよび各コードブックの調整量を用いて入力ベクトルに対して量子化処理を行ない、入力ベクトルのコードブックおよび調整量の量子化を得る、ことを具備する。
【００２３】
コードブックの調整量を生成する方法は、Ｎ（Ｎは１以上の正の整数）個のコードブック・ベクトルの平均ベクトルを計算し；  前記各コードブックから前記平均ベクトルまでの距離を計算し；  前記各コードブック・ベクトルから前記平均ベクトルまでの距離に基づいて、各コードブック・ベクトルの調整量を生成する、ことを具備する。
【００２４】
ベクトル量子化装置は、コードブック供給ユニットと；  調整量供給ユニットと；  量子化ユニットと、を具備し；  前記コードブック供給ユニットは、量子化対象ベクトルに対応するＮ（Ｎは１以上の正の整数）個のコードブックを前記量子化ユニットに転送するためのものであり；  前記調整量供給ユニットは、前記各コードブックの調整量を前記量子化ユニットに転送するためのものであり；  前記量子化ユニットは、前記調整量供給ユニットからの前記各コードブックの前記調整量を受け取り、前記コードブック供給ユニットから受け取り、前記Ｎ個のコードブックおよび前記各コードブックの調整量を用いて入力ベクトルに対して量子化処理を行ない、前記入力ベクトルの前記コードブックおよび前記調整量の量子化を得るためのものである。
【００２５】
上記のベクトル量子化方法は、Ｎ個のコードブックおよび各コードブックの調整量を用いることを通じて入力ベクトルに対して量子化処理を行なう。すなわち、本発明が提供するコードブックの調整量を入力ベクトルの量子化に関与させる。したがって、コードブックのメモリ量が有効に減少し、演算量はＮ個のコードブックを網羅するのに必要な計算量だけである。よって、上記のベクトル量子化方法を用いて、ベクトル量子化の複雑度を有効に低下できる。
【００２６】
上記のベクトル量子化装置において、量子化ユニットは、コードブック供給ユニットおよび調整量供給ユニットから転送されるＮ個のコードブックおよび各コードブックの調整量を用いて入力ベクトルに対して量子化処理を行なう。このため、用いられるコードブックはより少なく、演算量はＮ個のコードブックを網羅するのに必要な計算量だけである。よって、上記のベクトル量子化装置を用いて、ベクトル量子化の複雑度を有効に低下できる。
【図面の簡単な説明】
【００２７】
【図１】本発明の第１実施形態のベクトル量子化のフローチャート。
【図２】本発明の第２実施形態のベクトル量子化のフローチャート。
【図３】本発明の第３実施形態のベクトル量子化のフローチャート。
【図４】本発明の第４実施形態のベクトル量子化のフローチャート。
【図５】本発明の実施形態が提供する、ベクトル量子化方法の全体のフローチャート。
【図６】本発明の実施形態が提供する、コードブックの調整量を生成する方法のフローチャート。
【図７】本発明の実施形態においてＩＳＦ残差コードブックおよびその調整量を生成する方法のフローチャート。
【図８】本発明の実施形態のベクトル量子化方法を用いたＩＳＦ残差の量子化のフローチャート。
【図９】本発明の第５実施形態のベクトル量子化器の論理構造を示す図。
【図１０】本発明の第５実施形態における量子化ユニットの論理構造を示す図。
【図１１】本発明の第５実施形態における量子化ユニットの別の論理構造を示す図。
【図１２】本発明の第６実施形態のベクトル量子化器の論理構造を示す図。
【図１３】本発明の第７実施形態のベクトル量子化器の論理構造を示す図。
【図１４】本発明の第８実施形態のベクトル量子化器の論理構造を示す図。
【図１５】本発明のベクトル量子化装置の好ましい実施形態の構造を示す図。
【図１６】本発明のベクトル量子化装置の別の好ましい実施形態の構造を示す図。
【図１７】本発明のベクトル量子化装置のさらなる好ましい実施形態の構造を示す図。
【図１８】図７の量子化処理ユニットの好ましい実施形態の構造を示す図。
【図１９】本発明のベクトル量子化装置のさらなる好ましい実施形態の構造を示す図。
【発明を実施するための形態】
【００２８】
以下に、添付の図面を参照して、本発明の実施形態の技術的策をさらに詳細に説明する。
【００２９】
本発明の実施形態によって、ベクトル量子化策が提供される。本発明の実施形態において、量子化対象ベクトルの参照ベクトルに基づき、さらに参照ベクトルを調整することを用いて、参照ベクトルを量子化対象ベクトルの調整ベクトルに近づけて、量子化対象ベクトルを量子化する。したがって、一側面において、各次において分割されたサブベクトルを量子化するためのベクトル量子化の大量のコードブック・ベクトルを保存する必要がなく、コードブック・ベクトルが占めるメモリ空間が減少する。別の側面においては、適切な参照ベクトルおよび対応する調整ベクトルを選択することによって、高い符号化品質を保証する。本明細書において、参照ベクトルは、基礎コードブック・ベクトルとも称される。
【００３０】
以下に、本発明の実施形態の技術的策を詳細に説明する。
【００３１】
（第１実施形態）
図１を参照すると、図１は、本発明の実施形態におけるベクトル量子化方法のフローチャートである。このフローチャートは、以下のステップを含んでいる。
【００３２】
Ａ１：量子化対象ベクトルを取得する。
【００３３】
本実施形態における量子化対象ベクトルは、ベクトル量子化工程において最初に入力された当初のベクトルであり、当初ベクトルを分割すると１つ以上のサブベクトルが得られ、当初ベクトルはあるベクトルの残差ベクトル等に相対する。
【００３４】
例えば、Ｌ次元ベクトルＶ（Ｌは、１以上の正の整数）について、Ｖ＝｛ｖ１，ｖ２，…，ｖＬ｝である。
【００３５】
ＶをＫ個のサブベクトルに分解すると、
Ｖ＝｛Ｖ１，Ｖ２，…，ＶＫ｝である。
【００３６】
分解された各サブベクトルＶｉ（ｉ＝１，…，Ｋ）は、相互に同じまたは異なる次元数を有している。各Ｖｉは、以下の通りである。
【００３７】
Ｖ１＝｛ｖ１，ｖ２，…，ｖｘ１｝；
Ｖ２＝｛ｖｘ１＋１，ｖｘ１＋２，…，ｖｘ２｝；
…
ＶＫ＝｛ｖｘ（Ｋ−１）＋１，ｖｘ（Ｋ−１）＋２，…，ｖｘＫ｝、ｘＫ＝Ｌ。
【００３８】
Ｖｉの次元数はＩであり、したがって、
Ｖｉ＝｛ｖｘ（ｉ−１）＋１（１），ｖｘ（ｉ−１）＋２（２），…，ｖｘｉ（Ｉ）｝である。
【００３９】
Ｖｉのｍ次元の量は、ｖｘ（ｉ−１）＋ｍ（ｍ）である（ｍ＝１，…，Ｉ）。
【００４０】
量子化対象ベクトルは、１つまたは複数のサブベクトルＶｉであるか、またはＶである。本発明の実施形態において、量子化される対象はＶである。
【００４１】
Ａ２：基礎コードブック・ベクトルを取得する。
【００４２】
１つの量子化対象ベクトルに対して、参照可能な基礎コードブック・ベクトルはＡ（Ａは１以上）個である。基礎コードブック・ベクトルの次元数は、量子化対象ベクトルの次元数と同じである。例えば、
Ｕａ＝｛ｕａ１，ｕａ２，…，ｕａＬ｝、ａ＝１，…，Ａとすると、ＵａはＫ個の基礎サブベクトルに分解され得、Ｕａ＝｛Ｕａ１，Ｕａ２，…，ＵａＫ｝となる。
【００４３】
各基礎サブベクトルＵａｊ（ｊ＝１，…，Ｋ）は対応するＶｉを有する。Ｕａｊは以下の通りである。
【００４４】
Ｕａ１＝｛ｕａ１，ｕａ２，…，ｕａ（ｘ１）｝；
Ｕａ２＝｛ｕａ（ｘ１＋１），ｕａ（ｘ１＋２），…，ｕａ（ｘ２）｝；
…
ＵａＫ＝｛ｕａ（ｘ（Ｋ−１）＋１），ｕａ（ｘ（Ｋ−１）＋２），…，ｕａ（ｘＫ）｝。
【００４５】
基礎コードブック・ベクトルは、各種のコードブック・ベクトル・トレーニングモードを通じて直接取得したコードブック・ベクトルとすることができ、また、より大きな範囲のコードブック・ベクトル内で見つけた優先コードブック・ベクトルとすることもでき、さらに、次元数がより大きいコードブック・ベクトルのうちの一部の次元数から構成されるサブ・コードブック・ベクトルとすることもでき、これによって本実施形態は限定されない。
【００４６】
本発明の実施形態において、各Ｕａｊに基づいてＶを量子化する。このため、各基礎サブベクトルの次元数および対応するＶｉの次元数は同じである。例えば、
Ｕａｊ＝｛ｕｘ（ｊ−１）＋１（１），ｕｘ（ｊ−１）＋２（２），…，ｕｘｊ（Ｉ）｝
である。Ｕｊの第ｍ次元の量は、ｕｘ（ｊ−１）＋ｍ（ｍ）である。
【００４７】
Ａ３：基礎コードブック・ベクトルに対応する調整ベクトルを取得する。
【００４８】
１つの基礎コードブック・ベクトルＵａに対して、対応する調整ベクトルは、Ｕａの次元数と同じ１つまたは複数のベクトルとすることができる。次元数がより大きい量子化対象ベクトルについては、量子化工程は、分解によって得られた各サブベクトルに基づいて行なうのが好ましく、このため、基礎コードブック・ベクトルに対応する調整ベクトルはこれに応じて分解され得る。さらに、基礎コードブック・ベクトルが複数の基礎サブベクトルに分解されたことに基づいて、基礎コードブック・ベクトルに対応する調整ベクトルは、各基礎サブベクトルに対応する調整ベクトルと等価とすることができるが、この対応する調整ベクトルは１つまたは複数個である。例えば、基礎サブベクトルＵａｊに対応する調整ベクトルがＮ（Ｎは正の整数）個であり、これらの調整ベクトルおよびＵａｊの次元数は同じである。Ｕａｊに対応する調整ベクトルは、ＡＤＪａｆであり（ｆ＝１，…，Ｎ）、
ＡＤＪａ１＝｛ａｄｊａ１１，ａｄｊａ１２，…，ａｄｊａ１Ｉ｝；
ＡＤＪａ２＝｛ａｄｊａ２１，ａｄｊａ２２，…，ａｄｊａ２Ｉ｝；
…
ＡＤＪａＮ＝｛ａｄｊａＮ１，ａｄｊａＮ２，…，ａｄｊａＮＩ｝である。
【００４９】
ＡＤＪａｆは１つの調整ベクトル集合ＡＤＪを構成し、この集合は１つまたは複数の調整ベクトルを含み得る。各基礎サブベクトルは、対応する調整ベクトル集合を有し得、量子化対象ベクトルを量子化する際に、基礎サブベクトルを修正する。さらに、次元数が同じ基礎サブベクトルについては、調整ベクトル集合を共用することが可能である。トレーニングによって得られた基礎コードブック・ベクトルは、通常、正確に量子化対象ベクトルを量子化するのに用いるのが難しい。このため、少なくとも調整ベクトル集合を設定して関連する基礎サブベクトルを修正する。異なる調整ベクトル内の調整ベクトルの個数は同じであっても異なっていてもよい。
【００５０】
調整ベクトル集合内の調整ベクトルが多次元ベクトルであるとすると、各調整ベクトル内の各次元要素は調整量と称される。そして、この調整ベクトル集合において、Ｎの値がこの集合内の各次元における調整量が異なる組合せからなる調整ベクトルの全ての組合せの個数（組合せ数）より小さい場合、この調整ベクトル集合は、最適調整ベクトル集合である。一方、Ｎの値がこの組合せ数と等しい場合、この調整ベクトル集合は非最適調整ベクトル集合である。非最適調整ベクトル集合については、各次元における調整量における変化は別の次元上の調整ベクトルと無関係である。このため、この作用は、各次元の調整量に対して別々に実行できる。
【００５１】
例えば、最適調整ベクトル集合が３つの２次元調整ベクトル｛｛−１，−１｝，｛０，０｝，｛１，１｝｝を含んでいると、この集合における全部の調整ベクトルの１次元および２次元において３つの異なる値｛−１，０，１｝がある。このため、２つの次元の異なる値によって要素が形成され、２次元ベクトルの組合せ方は、３×３＝９種類である。この９種類の組合せは、｛｛−１，−１｝，｛−１，０｝，｛−１，１｝，｛０，−１｝，｛０，０｝，｛０，１｝，｛１，−１｝，｛１，０｝，｛１，１｝｝を含んでいる。上記の最適調整ベクトル集合｛｛−１，−１｝，｛０，０｝，｛１，１｝には、全ての組み合わせ方が含まれてはいないので、最適調整ベクトル集合である。最適調整ベクトル集合に基づけば、量子化対象ベクトルを量子化する際に、必要なビットの消費量がより少なく、より良好な符号化効果を得られる。
【００５２】
Ｕａに対してＵａｊ分割を行なうことは、量子化対象ベクトルＶの統計分析に基づいて行なうことができる。例えば、ＶおよびＵａの差分ベクトル統計は同時に変化する特性を示すものとし、同時に増加または減少する次元を１つのＵａｊへと分割する。こうすることによって、このＵａｊに対応する最適調整ベクトルの組み合わせを設計する際、各次元が同時に増加または減少する状況をさらに多く考慮に入れることができる。次元の間の関連を無視する調整方法に比べて、同様のダイナミック・レンジにおいて各次元の調整量の異なる値の範囲が相応し、調整の組合せの可能な個数が減少する。また、調整の組合せの可能な個数が同じであれば、調整のダイナミック・レンジを有効に拡大できる。
【００５３】
基礎コードブック・ベクトルおよび基礎サブベクトルの調整ベクトルを組み合わせて連合コードブック・ベクトルとすることができる。すなわち、基礎コードブック・ベクトル内の少なくとも１つの次元の要素が調整量によって修正される。
【００５４】
Ｕａｊを修正するための調整ベクトルＡＤＪａｆは、関連を用いて得ることができる。例えば、複数の関係ベクトルｇａｆを含んでいる関係ベクトル集合内で適当なｇａｆを見つけることができる。ｇａｆは、ＡＤＪａｆであるか、またはＡＤＪａｆと間に確定した関数関係が存在する。この関数関係は以下の通りである。
【００５５】
（１）積関係：例えば、ＡＤＪａｆは、ｇａｆとある実数との積により表示可能
（２）加減関係：例えばＡＤＪａｆは、ｇａｆおよび参照ベクトルの和または差により表示可能
参照ベクトルは、同じ連合コードブック・ベクトルのその他のＡＤＪａｆの「ｆ」の値が具体的に確定しているベクトルとすることができる。この場合、この参照ベクトルは、「参照コードブック・ベクトル」と称され、その他の調整ベクトルがある値のときに、その後に選択される調整ベクトルに行なう必要があるさらなる適合的な調整を示している。
【００５６】
（３）混合関係：例えばＡＤＪａｆは、ｇａｆとある実数との積、および参照コードブック・ベクトルの差により表示可能
ｇａｆ自体を得る方法には、様々な種類があり、例えば、関係ベクトル集合を保存し、含まれている各ｇａｆを直接巡っていくことが可能であり、または確定している計算方法によってＵａｊに対応するｇａｆを得ることが可能である。後続の実施形態において、典型的な方式について説明する。
【００５７】
Ａ４：基礎コードブック・ベクトルと異なる基礎サブベクトルに対応する１つ以上の調整ベクトルとの組合せを連合コードブック・ベクトルとして見て、連合コードブック・ベクトルと量子化対象ベクトルとの偏差に基づいて、可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択する。
【００５８】
本実施形態は、基礎コードブック・ベクトルＵａおよびその各Ｕａｊに対応するＡＤＪａｆの連合検索を用いて、量子化対象ベクトルＶの量子化を行なう。
【００５９】
基礎コードブック・ベクトルＵａのＫ個のＵａｊが、対応する調整ベクトル集合を有するとし、かつＫ個のＵａｊに対応するＡＤＪａｆの個数がそれぞれＮ１，Ｎ２，…，ＮＫであるとすると、基礎コードブック・ベクトルＵａと調整ベクトルＡＤＪａｆとの組合せからなる可能な連合ベクトルの個数は、
Ｔｏｔａｌ＝Ａ×Ｎ１×Ｎ２×…×ＮＫである。
【００６０】
連合コードブック・ベクトルと量子化対象ベクトルＶとの偏差に基づいて、最終的に量子化に用いる連合コードブック・ベクトルを選択する。当然ながら、この選択は、連合コードブック・ベクトルとＶとの偏差以外のものに基づいていてもよく、さらに、連合コードブック・ベクトルおよび参照ベクトルの偏差を補助的に用いて選択してもよい。
【００６１】
連合コードブック・ベクトルと量子化対象ベクトルＶとの偏差を計算する工程において、各種の方法を用いて連合コードブック・ベクトルを検索することが可能であり、以下の２つが含まれる（しかし、これらに限定されない）。
【００６２】
（１）個別計算：すなわち、各Ｕａｊに対して、各Ｕａｊに結びつく最良の調整ベクトルを計算し、次に、結び付けられた最良の調整ベクトルのＵａｊを比較する。具体的には、以下のステップを含んでいる。
【００６３】
１．量子化対象ベクトルと現在の基礎コードブック・ベクトルとの差分ベクトルを計算する（差分ベクトルは１つ以上の差分サブベクトルからなり、差分サブベクトルへの分割方法と基礎サブベクトルへの分割方法とは同じである）。
【００６４】
ＶはＬ次元ベクトルであり、よって、ＶとＵａとの差分ベクトルＲａもＬ次元ベクトルである。Ｒａは、Ｕａの分割方法によって、Ｋ個の差分サブベクトルに分割される。
【００６５】
Ｒａ＝｛Ｒａ１，Ｒａ２，…，ＲａＫ｝；
Ｒａｊ＝｛ｒａｊ（１），ｒａｊ（２），…，ｒａｊ（Ｉ）｝である。
【００６６】
２．対応する調整ベクトル集合を有する基礎サブベクトルについて、この調整ベクトル集合内の調整ベクトルと対応する差分サブベクトルとの偏差に基づいて、現在の基礎サブベクトルの最良の調整ベクトルを選択する。
【００６７】
現在のＵａの各Ｕａｊに対して最良の調整ベクトルを選択する。当然ながら、Ｕａｊが対応する調整ベクトルを有していない場合、調整は行なわない。最良の調整ベクトルを選択する際、偏差の判断に多様な方式を用いることができ、本実施形態はこの点に関して限定を行なわない。例えば、同次元の異なる差分の絶対値を累積すること、差分の平方値を累積すること、差分の重み付け平方値を累積することを用いることができる。
【００６８】
Ｉ次元のＵａｊに対応して、Ｎｊ個のＡＤＪｊｆの最適調整ベクトル集合があるとすると、Ｕａｊの最良の調整ベクトルを選択する際に用いることができる偏差の表示方法は、以下の通りである。
【数２】
2010509647.tif 000005
【００６９】
ここで、ｗｊ（ｉ）およびＡＤＪｊｆのｉ次元の要素は差分の重みである。ステップＡ３によって、ＡＤＪｊｆが発見され、Δαｊと比較され、Ｕａｊの最良の調整ベクトルＡＤＪｊｆ０が選出される。Ｕａｊに対応するＡＤＪｊｆ０の「ｆ０」の値を「ｆ０ｊ」（１≦ｆ０ｊ≦Ｎｊ）と記し、対応する偏差をΔαｊ０と記す。非最適調整ベクトル集合については、各次元の要素に対してそれぞれ最良の調整量を算出し、各次元の最良の調整量からなる調整ベクトルが最良の調整ベクトルとなる。
【００７０】
３．各最良の調整ベクトルの偏差、および未対応の調整ベクトル集合の基礎サブベクトルと量子化対象ベクトルの相応部分との偏差を累積し、現在の基礎コードブック・ベクトルに対応する最良の連合コードブック・ベクトルの偏差とする。
【００７１】
ＵａのＫ個のＵａｊのうち、幾つかは対応する調整ベクトル集合を有しており、幾つかは調整されないとする。調整されない基礎サブベクトルに対して、このサブベクトルと量子化対象ベクトルｖの相応部分との偏差が偏差の総和に加えられる。簡略化のため、調整されないＵａｊとＶの相応部分との偏差をやはりΔαｊ０と記すとすると、Ｕａに対応する最良の連合コードブック・ベクトルの偏差は以下のように表され得る。
【数３】
2010509647.tif 000006
【００７２】
４．各基礎コードブック・ベクトルに対応する最良の連合コードブック・ベクトルの偏差を比較し、量子化に用いる連合コードブック・ベクトルを選択する。
【００７３】
Ａ（Ａ＝１，２，３…）個のＵａのＡ個のΔａをそれぞれ計算および比較し、最終的に量子化に用いる連合コードブック・ベクトルを選出する。対応する偏差は、Δａ０と記す（１≦ａ０≦Ａ）。
【００７４】
（２）全体計算：すなわち、まず、連合コードブック・ベクトルを生成し、次いで、異なる連合コードブック・ベクトルとＶとの偏差を直接比較する。具体的なステップは、以下を含んでいる。
【００７５】
１．現在の基礎コードブック・ベクトルおよび選択可能な調整ベクトル重畳し、連合コードブック・ベクトルを生成する。
【００７６】
ＵａのＫ個のＵａｊが対応する調整ベクトルの組合せを有しているとすると、生成され得る連合コードブックは、以下のように表わされる。
【数４】
2010509647.tif 000007
【００７７】
ここで、ｎ１，…，ｎＫはＵａｊに対応するＡＤＪｊｆの「ｆ」値である。各調整ベクトルの組合せの中のＡＤＪｊｆの個数が｛Ｎ１，Ｎ２，…，ＮＫ｝であるとすると、各Ｕａの全てに対してＮ１×Ｎ２×…×ＮＫ個の連合コードブック・ベクトルが生成され、全部でＡ個のＵａがＴｏｔａｌ＝Ａ×Ｎ１×Ｎ２×…×ＮＫ個の連合コードブック・ベクトルを生成し得る。
【００７８】
２．現在の連合コードブック・ベクトルと量子化対象ベクトルとの偏差を計算する。
【００７９】
偏差の計算方法は、個別計算におけるＡＤＪｊｆとｒｊとの偏差の計算方法と類似している。ただし、計算の範囲は、Ｖの全ての次元まで拡大されている。連合コードブック・ベクトルとＶとの偏差は、Δ（ａ，ｎ１，…，ｎＫ）と記される。
【００８０】
３．異なる連合コードブック・ベクトルと量子化対象ベクトルとの偏差を比較し、量子化に用いる連合コードブック・ベクトルを選択する。
【００８１】
ある順序に従って規則的に連合コードブック・ベクトルを生成する場合、全Ｔｏｔａｌ個の連合コードブック・ベクトルを生成する必要はない。例えば、まず｛ａ，ｎ１，…，ｎＫ｝を固定し、ステップＡ３によって、Ｕａｊに対応するＡＤＪｊｆを見つけ出し、連合コードブック・ベクトルを生成し、比較によって最良のΔａｊ０を含んでいる連合コードブック・ベクトルを見つけた後、｛ａ，ｎ１，…，ｎＫ｝が変化したときにｎをその他の値とした連合コードブック・ベクトルを生成することなしにｎを「ｎ０」に固定することができる。この方法によって、生成する必要のある連合コードブック・ベクトルの最大個数は（各調整ベクトル集合が全て網羅される状況で、調整ベクトル集合内の１つ以上の調整量が一定の範囲内で独立して変化し得るなら、全てのあり得る状況を網羅する必要なしにまず独立して変化する調整量を検索を通じて確定することができる。この最大の個数はさらに小さくてもよい）、Ｔｏｔａｌ＝Ａ×［Ｎ１＋（Ｎ２−１）＋…＋（ＮＫ−１）］＝Ａ×（Ｎ１＋Ｎ２＋…＋ＮＫ−Ｋ＋１）である。その中から選出した最終的に量子化を行なうために用いる連合コードブック・ベクトルを選択する。対応する偏差は、Δ（ａ０，ｎ０１，…，ｎ０Ｋ）とする（１≦ａ０≦Ａ、１≦ｎ０Ｋ≦ＮＫ）。
【００８２】
Ａ５：選択された連合コードブック・ベクトルに対応する基礎コードブック・ベクトルの索引および調整ベクトルの索引を取得する。
【００８３】
基礎コードブック・ベクトルおよび調整ベクトルの索引は、様々な方法を用いて並べることができ、本実施形態を制限しない。例えば、同様の集合内で並べられたベクトルの通し番号をこのベクトルの索引とすることができる。
【００８４】
ステップＡ４内で用いる方法（１）で選出する連合コードブック・ベクトルについて、最終的に選択した偏差Δａ０に基づいて、基礎コードブック・ベクトルの索引をａ０と確定することができる。その後、Δａ０に対応する各ΔａＫ０に基づいて、Ｋ個の調整ベクトルの索引を｛ｎ０１，ｎ０２，…，ｎ０Ｋ｝と確定することができる。これによって取得した全ての量子化索引の集合は、｛ａ０，ｎ０１，ｎ０２，…，ｎ０Ｋ｝である。
【００８５】
ステップＡ４で用いる方法（２）で選出する連合コードブック・ベクトルについて、最終的に選択した偏差Δ（ａ０，ｎ０１，…，ｎ０Ｋ）に直接基づいて、全ての量子化索引の集合を｛ａ０，ｎ０１，ｎ０２，…，ｎ０Ｋ｝と確定する。
【００８６】
復号器において量子化索引集合｛ａ０，ｎ０１，ｎ０２，…，ｎ０Ｋ｝を復号した後、ａ０に基づいて、対応する基礎コードブック・ベクトルＵａを見つけることができる。その後、各Ｕａｊに対応する各調整ベクトル集合において、ｎ０１，ｎ０２，…，ｎ０Ｋから対応する調整ベクトルＡＤＪｊｆ（１≦ｊ≦Ｋ）を見つける。その後、ＵａをＫ個のＡＤＪｊｆと組合せて元々のベクトルＶの近似値を復号する。
【００８７】
本実施形態は、基礎コードブック・ベクトルとそのサブベクトルの調整ベクトルとの組合せからなる連合コードブック・ベクトルを用いて、量子化対象のベクトルを量子化する方法である。調整ベクトルを用いて基礎コードブック・ベクトルを調整するので、基礎コードブック・ベクトルのダイナミック・レンジが有効に拡大し、歪み度が減少し、単次の量子化の実行で複数次の量子化と同じかそれ以上の効果を得られる。また、コードブックのメモリ量および量子化計算量が有効に低下する。また、基礎コードブック・ベクトルの調整は、調整ベクトルの形式で行なわれ、量子化対象ベクトルから基礎コードブック・ベクトルを減じた後に次元間で依然存在する関連性を十分に利用して調整ベクトルを設計する。このため、より個数が少ない調整ベクトルでより大きな動的調整範囲を実現する目的を達成し、同時に次元間の関連性を利用して調整ベクトルの個数を減じ、量子化計算量が減少する。
【００８８】
（第２実施形態）
ベクトル量子化方法の１つであり、本実施形態および第２実施形態の違いは、基礎コードブック・ベクトルに関連する倍率を用いて調整ベクトルのダイナミック・レンジを拡大していることである。フローは、図２に示す通りであり、以下のステップを含んでいる。
【００８９】
Ｂ１、Ｂ２：第１実施形態のステップＡ１、Ａ２を参照して実行することができる。
【００９０】
Ｂ３：現在の基礎コードブック・ベクトルに対応する倍率を取得する。
【００９１】
現在の基礎コードブック・ベクトルをＵａ（１≦ａ≦Ａ）とすると、その対応する倍率はＳａと記すことができる。Ｓａを取得する方法は、対応するＵａを予め定められたメモリから取得することであり、統計データまたは経験による値に基づいてＳａを設定することができ、またはＵａに基づいて算出することもできる。
【００９２】
例示のために、以下に、Ｕａに基づいてＳａを算出する方法を示す。具体的には、以下のステップを含んでいる。
【００９３】
（ｉ）全Ａ個のＵａの平均ベクトルを算出する。
【数５】
2010509647.tif 000008
【００９４】
Ｂ４：倍率に基づいて基礎サブベクトルに対応する調整ベクトルを取得する。
【００９５】
本実施形態における、Ｕａに対応する基礎サブベクトルＵａｊの調整ベクトルＡＤＪｊｆは、複数の関係ベクトルｇｊｆを含んでいる関係ベクトル集合を用いて提供する。ここで、ｇｊｆおよびＡＤＪｊｆは、以下の関数対応関係を有する。
【００９６】
ＡＤＪｊｆ＝Ｓａ×ｇｊｆ
本明細書において、ＡＤＪｊｆと上記の関数対応関係を有する関係ベクトルは、調整係数ベクトルと称され、その集合は調整係数ベクトル集合と称される。よって、上記の関数対応関係は、基礎コードブック・ベクトルの基礎サブベクトルに対応する調整ベクトル集合をこの基礎サブベクトルに対応する調整係数ベクトル集合と相応する倍率の積として表現したものとして表わされる。
【００９７】
例えば、基礎コードブック・ベクトルＵが４次元であるとすると、最初の２次元は、第１サブベクトルｕ１であり、後の２次元は第２サブベクトルｕ２である。ここで、第１サブベクトルは、対応する調整ベクトル集合を有している。計２つの基礎コードブック・ベクトルｕ１およびｕ２が存在し、基礎コードブック・ベクトルｕ１に対応する倍率はｓ１であり、基礎コードブック・ベクトルｕ２に対応する倍率はｓ２であり、第１サブベクトルｕ１に対応する調整係数ベクトル集合は２個の調整係数ベクトル｛｛−１，−１｝，｛１，１｝｝を有しているとする。すると、ｕ１の第１サブベクトルｕ１１に対応する調整ベクトル集合は、ｓ１×｛｛−１，−１｝，｛１，１｝｝＝｛｛−ｓ１，−ｓ１｝，｛ｓ１，ｓ１｝｝であり、ｕ２の第１サブベクトルｕ２１に対応する調整ベクトル集合はｓ２×｛｛−１，−１｝，｛１，１｝｝＝｛｛−ｓ２，−ｓ２｝，｛ｓ２，ｓ２｝｝である。倍率と各基礎コードブック・ベクトルとが対応するので、この場合の調整ベクトルの索引は、対応する調整係数ベクトルの索引として表現することができ、復号器は、調整係数ベクトルの索引および基礎コードブック・ベクトルの索引に基づいて対応する調整ベクトルを復号することができる。
【００９８】
Ｂ５：基礎コードブック・ベクトルと異なる基礎サブベクトルに対応する１つ以上の調整ベクトルとの組合せを連合コードブック・ベクトルとして見て、連合コードブック・ベクトルと量子化対象ベクトルとの偏差に基づいて、可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択する。
【００９９】
Ｂ６：選択された連合コードブック・ベクトルに対応する基礎コードブック・ベクトルの索引および調整ベクトルの索引を取得する。
【０１００】
上記のステップＢ５、Ｂ６は、第１実施形態のステップＡ４、Ａ５を参照して実行することができる。ステップＢ６において、倍率と各基礎コードブック・ベクトルとが対応するので、さらなる符号化ビットを増加する必要がなく、この場合の調整ベクトルの索引は対応する調整係数ベクトルの索引として表現可能で、復号器が調整係数ベクトルの索引および基礎コードブック・ベクトルの索引に基づいて対応する調整ベクトルを復号することができることを理解されたい。
【０１０１】
本実施形態は、倍率と調整係数ベクトルとの積を用いて調整ベクトルを取得する方法である。調整ベクトルが取る値および具体的なＵａは関連しているので、異なるＵａが同じ調整係数ベクトル集合から異なる調整ベクトル集合を得ることができ、調整の効果がさらに理想的になり、調整ベクトルのダイナミック・レンジが有効に拡大する。
【０１０２】
（第３実施形態）
ベクトル量子化方法の１つであり、本実施形態は第１、第２実施形態を基礎としており、調整ベクトルを取得する具体的な方法が提供される。フローは、図３に示す通りであり、以下のステップを含んでいる。
【０１０３】
Ｃ１：量子化対象ベクトルを取得する。
【０１０４】
Ｃ２：基礎コードブック・ベクトルを取得する。基礎コードブック・ベクトルは、１つ以上の基礎サブベクトルから構成されている。この１つ以上の基礎サブベクトルには、少なくとも１つの２次元以上の基礎サブベクトルに対応する１つの調整ベクトル集合がある。少なくとも１つの調整ベクトル集合は、基礎サブベクトルと同次元のＮ個の調整ベクトルを含んでいる。少なくとも１つの調整ベクトル集合は、Ｎがこの調整ベクトル集合内の全ての調整ベクトルの各次元の異なる値の全ての可能な組合せの個数より小さいことを満足する。
【０１０５】
上記のステップＣ１、Ｃ２は、第１実施形態のステップＡ１、Ａ２を参照して実行することができる。
【０１０６】
Ｃ３：基礎サブベクトルに対応する調整ベクトルを取得する。具体的には、以下を含んでいる。
【０１０７】
Ｃ３１：基礎サブベクトルに対応する関係ベクトル集合を捜索する。この関係ベクトル集合は、調整ベクトル集合であるか、この調整ベクトル集合と関数対応関係を有している。関係ベクトルは、第２実施形態の調整係数ベクトルとすることができる。この場合、基礎コードブック・ベクトルＵａを取得した後、対応する倍率Ｓａを取得する必要がある。
【０１０８】
関係ベクトル集合を捜索するには、具体的には、以下の方法を取ることができる。
【０１０９】
（ｉ）関係ベクトル集合の１つ以上の部分集合を捜索する。各部分集合が含んでいる関係ベクトルの個数は、この部分集合内の全ての関係ベクトルの各次元の異なる値の全ての組合せの個数と同じである。
【０１１０】
（ｉｉ）各部分集合において、対応する関係ベクトルの各次元の異なる値を検索する。
【０１１１】
各部分集合において各次元の値同士は関係性を有さないので、ここで採用される検索方法は、非最適調整ベクトル集合における検索と類似している。すなわち、独立して、各次元の値を検索する。
【０１１２】
Ｕａｊに対応する関係ベクトル集合がＮ個の関係ベクトル｛ｇｊ，１，ｇｊ，２，…，ｇｊ，Ｎ｝を含んでいるとすると、これらの関係ベクトルの各次元の要素の値の間の関係に基づいて、関係ベクトル集合は、１つ以上の部分集合から構成されていると見ることができる。各部分集合において、関係ベクトルの各次元の要素の値は、やはり相互に関係性を有さず、このため、独立して変化するものとみなせる。極端な状況の１つは、各関係ベクトルが単独で１つの部分集合を構成することである。
【０１１３】
例えば、２次元関係ベクトルから構成される１つの関係ベクトル集合｛｛３０，３０｝，｛３０，２０｝，｛２０，３０｝，｛２０，２０｝，｛０，５｝，｛−３０，−２０｝，｛−３０，−３０｝｝を想定すると、３つの部分集合「過大」、「中間」、「過小」へと分割可能である。内訳は、以下の通りである。
【０１１４】
「過大」：｛｛３０，３０｝，｛３０，２０｝，｛２０，３０｝，｛２０，２０｝｝
「中間」：｛｛０，５｝｝
「過小」：｛｛−３０，−２０｝，｛−３０，−３０｝，｛−２０，−３０｝，｛−２０，−２０｝｝
「過大」部分集合において、値２０、３０内でそれぞれ独立して関係ベクトルの１次元、２次元を検索し、「中間」部分集合において、唯一の関係ベクトルが見つかり、「過大」部分集合において、−２０、−３０内で関係ベクトルの１次元、２次元を検索する。
【０１１５】
関係ベクトルの各部分集合に別々に番号を付し、部分集合内で各種の組合せを並べて各種の組合せの通し番号を取得することができる。こうすることによって、１つの関係ベクトルは、その所属する部分集合の番号および部分集合内の通し番号によって確定可能である。当然ながら、このことは、関係ベクトル集合全体の中の関係ベクトルの順序による番号付けと実質的に一致する。
【０１１６】
Ｃ３２：関係ベクトル集合の中から取得した関係ベクトルに基づいて相応する調整ベクトルを取得する。
【０１１７】
取得した関係ベクトルは、調整ベクトルそのものである場合もあるし、第２実施形態のように倍率で乗ずる計算によって得られる調整ベクトルとすることが必要な場合もある。
【０１１８】
Ｃ４：基礎コードブック・ベクトルと異なる基礎サブベクトルに対応する１つ以上の調整ベクトルとの組合せを連合コードブック・ベクトルとして見て、連合コードブック・ベクトルと量子化対象ベクトルとの偏差に基づいて、可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択する。
【０１１９】
Ｃ５：選択された連合コードブック・ベクトルに対応する基礎コードブック・ベクトルの索引および調整ベクトルの索引を取得する。
【０１２０】
上記のステップＣ４、Ｃ５は、第１実施形態のステップＡ４、Ａ５を参照して実行することができる。ステップＣ５において、取得した調整ベクトルの索引は、この調整ベクトルに対応する関係ベクトルの関係ベクトル集合における通し番号であることを理解されたい。関係ベクトル集合が部分集合へと分割される場合、通し番号は、関係ベクトルが所属する関係ベクトル部分集合の番号および関係ベクトル部分集合における通し番号とすることができる。
【０１２１】
復号器における関係ベクトルの通し番号の復号後、対応する関係ベクトル集合内でこの関係ベクトルを見つけることができる。例えば、部分集合の番号を用いて関係ベクトルが所属する部分集合を見つけ、次いで部分集合内の通し番号を用いて関係ベクトルを確定し、続いて関係ベクトルと調整ベクトルとの間の関係に基づいて調整ベクトルを取得することができる。
【０１２２】
本実施形態は、関係ベクトル集合を捜索する方法を用いて調整ベクトルを取得する。取得方法は、直接的で、費やされる計算量はより少ない。さらに、部分集合へと分割する方法を用いて関係ベクトル集合を捜索すれば、関係ベクトルは各部分集合へと分けて保存可能である。各次元の全ての値の組合せが提供されるので、各次元の異なる値を保存可能であって、組合せ方を保存する必要はなく、メモリ量を減じることができる。
【０１２３】
（第４実施形態）
ベクトル量子化方法の１つであり、本実施形態と第３実施形態を比べると、違いは、調整ベクトルを取得する別の具体的な方法を提供していることである。フローは、図４に示す通りであり、以下のステップを含んでいる。
【０１２４】
ステップＤ１、Ｄ２は、第１実施形態のステップＡ１、Ａ２を参照して実行することができる。
【０１２５】
Ｄ３：基礎サブベクトルに対応する調整ベクトルを取得する。具体的には、以下を含んでいる。
【０１２６】
Ｄ３１：基礎サブベクトルに対応する関係ベクトルの各次元の異なる値を検索する。具体的な捜索方式には、以下の２種類がある。
【０１２７】
方式１：偏差を判断することなく異なる値の組合せを検索するだけの方式である。この場合、検索結果は、各次元の１つの組合せである。
【０１２８】
方式２：各次元を捜索する際（基礎コードブック・ベクトルは変えずに）、その異なる値が生成する調整ベクトルに基づいて連合コードブック・ベクトルのこの次元の偏差の影響を判断し、この次元の最良の値を確定する。この場合、検索結果は各次元の最良の値である。
【０１２９】
Ｄ３２：現在取得している各次元の値の組合せが、選択可能な有効な関係ベクトルであるか否かを判断する。そうであればステップＤ３３を実行し、そうでなければ検索が完了するまでステップＤ３１の実行を継続する。
【０１３０】
現在取得している各次元の値の組合せが、選択可能な有効な関係ベクトルであるか否かを判断する際、具体的には、次の方法を採用できる。現在取得している各次元の値の組み合わせにおける全ての可能な組合せの通し番号を計算し、この番号に基づいてこの値の組合せが選択可能な有効な関係ベクトルであるか否かを判断する。
【０１３１】
例えば、関係ベクトルが４次元であり、各次元が５個の可能な異なる値を有するとすると、計６２５個の可能な関係ベクトルが存在する。その中の対応する調整ベクトルの有効な関係ベクトルは計２５６個である。６２５個の固定された項目を有する２つの組を設定する。
【０１３２】
Ｇａ［ｉｄ´］＝Ｄ、ｉｄ´＝｛１，…，６２５｝、Ｄ＝１または０、
Ｇｂ［ｉｄ´］＝ｎ、ｉｄ´＝｛１，…，６２５｝、１≦ｎ≦２５６である。
【０１３３】
Ｇａ［ｉｄ´］における計２５６個のｉｄ´値に対応するＤ値は１であり、２５６個の有効な関係ベクトルを表わしている。この２５６個のｉｄ´値を単に「有効ｉｄ´値」と称する。Ｇｂ［ｉｄ´］において有効ｉｄ´値に対応するｎ値は、１乃至２５６のうちのいずれかを取り、この２５６個の有効ｉｄ´値の通し番号とする。Ｇｂ［ｉｄ´］のｎ値は、有効なｉｄ´値を順番に並べ、１乃至２５６のうちの対応する１つのｎ値を設定することによって、設定することができる。Ｇｂ［ｉｄ´］内のその他のｉｄ´値に対応するｎ値は、任意の方法で設定可能である。
【０１３４】
可能な関係ベクトル｛ｉｄ１，ｉｄ２，ｉｄ３，ｉｄ４（ｉｄ１乃至ｉｄ４は、各次元の要素の値の通し番号である）｝を見つけた際、関係ベクトルの元々の通し番号は、
ｉｄ´＝ｉｄ１×１２５＋ｉｄ２×２５＋ｉｄ３×５＋ｉｄ４
として算出される。
【０１３５】
Ｇａ［ｉｄ´］を検索し、Ｇａ［ｉｄ´］＝１の場合、この関係ベクトルが有効な関係ベクトルであると判断し、対応する調整ベクトルの取得を継続することができる。相応するＧａ［ｉｄ´］に対応するｎ値は、調整ベクトルの索引である。
【０１３６】
Ｇａ［ｉｄ´］＝０の場合、この関係ベクトルは調整ベクトルに対応しないものと判断し、検索を継続する。
【０１３７】
Ｄ３１での検索方式１に関して：
１．現在取得している各次元の値の組合せが選択可能な有効な関係ベクトルではなく検索の継続が必要と判断した場合、現在の組合せを飛ばして、順次検索を継続可能である；
２．全ての値の組合せを巡ったことを確定して検索は終了するか、全ての有効な関係ベクトルを検索したことを確定して検索が終了することが可能である；
３．この場合、各有効な関係ベクトルに対応する調整ベクトルは、全て、対応する基礎サブベクトルに提供される。
【０１３８】
Ｄ３１での検索方式２に関して：
１．現在取得している各次元の値の組合せが選択可能な有効な関係ベクトルではなく検索の継続が必要と判断した場合、以下の各種の方法を用いることができる；
（ｉ）暫定的な、数の組を生成し、これを用いて全ての有効な関係ベクトルの値の組合せを保存し、次いでこの暫定的な数の組の中で検索を実行する：
（ｉｉ）１つまたは１つ以上の次元の値を調整してみる。例えば、次元について大きな値から小さな値へと調整し、調整が有効になるまで続ける：
（ｉｉｉ）（ｉｉ）に類似しており、１つ以上の次元の調整を行なわない：
２．有効な関係ベクトルが見つかったと確定した場合、検索が完了したと判定することができる；
３．この場合、基礎コードブック・ベクトルＵａの各Ｕａｊについて、有効な関係ベクトルを１回のみ提供したことに相当する。この有効な関係ベクトルはＵａｊの最良の調整ベクトルに対応する。
【０１３９】
Ｄ３３：現在取得している有効な関係ベクトルに基づいて調整ベクトルを取得する。
【０１４０】
この場合、調整ベクトル集合は、全てが有効な関係ベクトルの集合か、全てが有効な関係ベクトルの集合と関数対応関係を有している。また、調整ベクトルの索引は、全てが有効な関係ベクトルにおけるこの調整ベクトルに対応する有効な関係ベクトルの通し番号として表現可能である。
【０１４１】
Ｄ４：基礎コードブック・ベクトルと異なる基礎サブベクトルに対応する１つ以上の調整ベクトルとの組合せを連合コードブック・ベクトルとして見て、連合コードブック・ベクトルと量子化対象ベクトルとの偏差に基づいて、可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択する。
【０１４２】
Ｄ５：選択された連合コードブック・ベクトルに対応する基礎コードブック・ベクトルの索引および調整ベクトルの索引を取得する。
【０１４３】
上記のステップＤ４、Ｄ５は、第１実施形態のステップＡ４、Ａ５を参照して実行することができる。ステップＤ５において、取得した調整ベクトルの索引は、全てが有効な関係ベクトルにおけるこの調整ベクトルに対応する有効な関係ベクトルの通し番号であることを理解されたい。
【０１４４】
復号器における関係ベクトルの通し番号ｎの復号後、データおよびＧｂ［ｉｄ´］に対応して設定された２５６個の固定された数の組を捜索することができる。
【０１４５】
Ｇｃ［ｎ］＝ｉｄ´、ｎ＝｛１，…，２５６｝、１≦ｉｄ´≦６２５である。
【０１４６】
この関係ベクトルの元々の番号ｉｄ´を復号するために、以下のようにする。
【０１４７】
ｉｄ４＝ｉｄ´％５；  ｉｄ４´＝Ｉｎｔ［ｉｄ´／５］；
ｉｄ３＝ｉｄ４´％５；  ｉｄ３´＝Ｉｎｔ［ｉｄ４´／５］；
ｉｄ２＝ｉｄ３´％５；  ｉｄ２´＝Ｉｎｔ［ｉｄ３´／５］；
ｉｄ１＝ｉｄ２´％５；
ここで、「％」の表示は剰余数を示し、「Ｉｎｔ」の表示は整数を示しており、各次元の要素の値の通し番号を取得し、これによって、対応する関係ベクトルを取得する。
【０１４８】
本実施形態は、超過量検索（すなわち、検索される組合せの個数が最終的な索引の符号化の有効な組合せの個数より少ない方式）を用いて関係ベクトルを取得する。組合せに対する有効性の判断を通じて対応する調整ベクトルを取得する。実際の有効な関係ベクトルの組合せ関係を保存する必要がないので、メモリ量を減少できる。
【０１４９】
本発明の上記の実施形態が提供するベクトルの量子化方法は、各種の類型のベクトル量子化工程を用いるために、単独でまたはその他のベクトル量子化方法と組み合わせて使用でき、また、本方法を用いてベクトルに単次量子化を行うことができ、また、本方法に基づいて単次量子化を行なった後の量子化残差または残差の一部に対して本方法に基づいて２次量子化を行なうことも可能である。本発明のベクトル量子化方法のソフトウェアは、コンピュータ読み取り可能媒体に保存することができることが理解されるべきである。このソフトウェアは、実行時、以下のステップを含んでいる。量子化対象ベクトルを取得する；  １つ以上の基礎サブベクトルから構成される基礎コードブック・ベクトルを取得する；  この１つ以上の基礎サブベクトルには少なくとも１つの２次元以上の基礎サブベクトルに対応する１つの調整ベクトル集合があり、この調整ベクトル集合はこの基礎サブベクトルと同次元のＮ個の調整ベクトルを含んでおり、少なくとも１つの調整ベクトル集合は、Ｎがこの調整ベクトル集合内の全ての調整ベクトルの各次元の異なる値の全ての可能な組合せの個数より小さいことを満足している；  基礎サブベクトルに対応する調整ベクトルを取得する；  基礎コードブック・ベクトルと異なる基礎サブベクトルに対応する１つ以上の調整ベクトルとの組合せを連合コードブック・ベクトルとして見て、連合コードブック・ベクトルと量子化対象ベクトルとの偏差に基づいて、可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択する；  選択された連合コードブック・ベクトルに対応する基礎コードブック・ベクトルの索引および調整ベクトルの索引を取得する。この読み取り可能媒体は、例えば、ＲＯＭ／ＲＡＭ、ディスク、ＣＤなどである。
【０１５０】
以下に、具体的な実施形態とともに、本発明の実施形態が提供する技術的策をさらに説明する。図５は、本発明の実施形態が提供するベクトル量子化方法の全体のフロー図であり、このフローは以下のステップを含んでいる。
【０１５１】
ステップ５０１：Ｎ個の基礎コードブック・ベクトルおよび各基礎コードブック・ベクトルの調整ベクトルを用いて量子化対象ベクトルに対して量子化処理を行なう。
【０１５２】
ステップ５０２：量子化対象ベクトルの基礎コードブック・ベクトルおよび調整ベクトルの量子化を得る。
【０１５３】
ここで、Ｎは１以上の正の整数である。基礎コードブック・ベクトルの調整ベクトルは、基礎コードブック・ベクトルを調整するためのものであり、これを用いて量子化対象ベクトルの量子化結果をこの量子化対象ベクトルに近づける。
【０１５４】
以下に、図５が示す本発明の実施形態が提供するベクトル量子化方法を詳しく説明する。
【０１５５】
具体的な実施形態において、Ｎ個の基礎コードブック・ベクトルおよび各コードブック・ベクトルの調整ベクトルを利用した量子化対象ベクトルの量子化処理の前に、Ｎ個の基礎コードブック・ベクトルの調整ベクトルを生成する必要がある。
【０１５６】
図６は、本発明の実施形態が提供するコードブック・ベクトルの調整ベクトルを生成する方法の１つのフローチャートである。この図において、量子化対象ベクトルの次元数をａ次元とする。本フローは、以下のステップを含んでいる。
【０１５７】
ステップ６０１：Ｎ個の基礎コードブック・ベクトルの平均ベクトルを計算する。
【０１５８】
このステップにおいて、基礎コードブック・ベクトルの平均ベクトルもａ次元ベクトルである。本実施形態において、Ｎ個の基礎コードブック・ベクトルの平均ベクトルを計算する方法は、以下のようにすることができる。すなわち、全Ｎ個の基礎コードブック・ベクトルの同次元の要素を全て加えて、その後Ｎで除することによって、平均ベクトルのこの次元の要素を取得する。ｊ番目の基礎コードブック・ベクトルのｉ次元の要素をＹｊ（ｉ）とし、平均ベクトルのｉ次元の要素をＡＶ（ｉ）とすると、ＡＶ（ｉ）の計算式は、
【数６】
2010509647.tif 000009
【０１５９】
である（ｉ＝１，２，…，ａ）。
【０１６０】
よって、平均ベクトルＡＶ（ａ）は、これらＡＶ（ｉ）要素から構成されるａ次元ベクトルであり、ＡＶ（ａ）＝｛ＡＶ（ｉ），ｉ＝１，２，…，ａ｝である。
【０１６１】
ステップ６０２：各基礎コードブック・ベクトルから平均ベクトルまでの距離を計算する。
【０１６２】
本実施形態において、この計算の工程は、具体的には、以下の通りである。すなわち、ｊ番目の基礎コードブック・ベクトルの各次元の要素と平均ベクトルの同次元の要素との間の差分を計算してａ個の要素の差分を得、このａ個の要素の差分の平方和を求め、この平方和をａで除して、この除算の結果の平方根を求め、ｊ番目の基礎コードブック・ベクトルから平均ベクトルまでの距離ＡＶＳ（ｊ）
【数７】
2010509647.tif 000010
【０１６３】
が得られる（ｊ＝１，２，…，Ｎ）。このＡＶＳ（ｊ）は、倍率である。
【０１６４】
ステップ６０３：各基礎コードブック・ベクトルから平均ベクトルまでの距離に基づいて、各基礎コードブック・ベクトルの調整ベクトルを生成する。
【０１６５】
本実施形態では、各基礎コードブック・ベクトルの各次元の要素の調整ベクトルを生成することによって、この基礎コードブック・ベクトルの調整ベクトルを生成する。具体的な方法は以下の通りである。この基礎コードブック・ベクトルの各次元の要素の調整量に対応する１つ以上の関係ベクトルを設定する  ；この基礎コードブック・ベクトルの各次元の要素の調整量を生成する際にこのコードブック・ベクトルから平均ベクトルまでの距離をこの次元の要素の調整ベクトルに対応する各関係ベクトルとそれぞれ乗じ、得られた積の各々をこのコードブック・ベクトルのこの次元の要素に対応する調整量とする  ；このコードブック・ベクトルのこの次元の要素に対応する各積を順に並べ、各積についての得られた通し番号をこの積に対応する調整量の索引番号とする。
【０１６６】
ｊ番目の基礎コードブック・ベクトルを例に取り、このｊ番目のコードブック・ベクトルのｉ次元の要素の調整量を生成する工程を詳細に説明する。ＡＶＳ（ｊ）をｊ番目のコードブック・ベクトルの調整量の基礎値とし、ｊ番目のコードブック・ベクトルの調整量の基礎値を調整するための倍率を設定する。ｊ番目のコードブック・ベクトルのｉ次元の要素Ｙｊ（ｉ）に対して関係ベクトル集合｛０，Ａ１，−Ａ１，Ａ２，−Ａ２｝を設定すると、Ｙｊ（ｉ）の調整量は、集合｛０，ＡＶＳ（ｊ）×Ａ１，−ＡＶＳ（ｊ）×Ａ１，ＡＶＳ（ｊ）×Ａ２，−ＡＶＳ（ｊ）×Ａ２｝内の要素である；Ａ１＝Ａ２＝０．３であるなら、Ｙｊ（ｉ）の調整量は、集合｛０，ＡＶＳ（ｊ）×０．３，−ＡＶＳ（ｊ）×０．３｝内の要素である。同時に、集合内の各要素の通し番号も調整量の索引番号に対応する。
【０１６７】
図６が示す実施形態によって、コードブック・ベクトルの調整量を生成する方法が提供された。実際の応用の際、その他の方法によってコードブック・ベクトルの調整量を生成することが可能である。例えば、最も簡単な方法は、各コードブック・ベクトルの調整量を無作為に生成することである。ただし、この方法で得られる調整量を用いる場合、コードブック・ベクトルと量子化対象ベクトルとの間の残差ベクトルに対して量子化処理を行なって得られる符号化効果は、明らかに、図６が示す実施形態において生成する調整量がもたらす符号化効果ほど安定していない。
【０１６８】
以下に、ＩＳＦ係数が構成するＩＳＦベクトルに対する量子化を例に取り、本発明の実施形態が提供する図１が示すベクトルの量子化方法を詳細に説明する。また、本発明の実施形態のベクトル量子化方法とＡＭＲ−ＷＢ＋のベクトル量子化方法との符号化効果および符号化の複雑度の比較を容易にするために、本発明の実施形態において、やはり４６ビットを用いて符号化を行ない、さらに、ＩＳＦベクトルを１６次元ベクトルとする。この１６次元ベクトルが対応するＩＳＦ残差をトレーニングすることによって得られるコードブック・ベクトルは２５６個である。
【０１６９】
図６によるコードブック・ベクトルの調整量を生成する方法に基づき、図７は、本発明の実施形態におけるＩＳＦ残差コードブック・ベクトルおよび各コードブック・ベクトルの調整量を生成するフロー図である。このフローは、以下のステップを含んでいる。
【０１７０】
ステップ７０１：フレーム間予測を用いてＩＳＦベクトルのＩＳＦ残差を計算する。
【０１７１】
このステップは、従来のＩＳＦベクトルの量子化に用いられており、ＩＳＦ残差と同じ方法で計算し、ＩＳＦ残差を算出する。この計算工程を、以下に簡単に説明する。
【０１７２】
Ｚｎを平均値ｍｅａｎ＿ｉｓｆを減じた後の第ｎフレームＩＳＦベクトルｉｓｆｎと定義すると、予測されるＩＳＦ残差はＲｎであり、
Ｚｎ＝ｉｓｆｎ−ｍｅａｎ＿ｉｓｆ
Ｒｎ＝Ｚｎ−Ｐｎ
で表現される。
【０１７３】
ここで、Ｐｎは、第ｎフレームの予測ＩＳＦベクトルである。
【数８】
2010509647.tif 000011
【０１７４】
ステップ７０２：トレーニングによって、１６次元のＩＳＦ残差の２５６個のコードブック・ベクトルを得る。
【０１７５】
このステップにおいて、量子化対象ベクトルを既知の量として、ＬＢＧアルゴリズムを用いたトレーニングによって量子化対象ベクトルに対応するＮ個のコードブック・ベクトルを得る。ここで、ＬＢＧアルゴリズムは、公知の技術であり、コードブック・ベクトルをトレーニングするためのアルゴリズムであり、このアルゴリズムを用いてコードブック・ベクトルをトレーニングする詳細な工程については関連する文献資料を参照することができる。実際の応用の際、その他のアルゴリズムを通じてコードブック・ベクトルをトレーニングしてもよい。
【０１７６】
トレーニングによって得られる各コードブック・ベクトルもａ（ａは１以上の正の整数）次元ベクトルである。
【０１７７】
ステップ７０３：２５６個のコードブック・ベクトルの平均ベクトルを計算する。
【０１７８】
このステップの説明については、Ｎ＝２５６、ａ＝１６として上記のステップ５０２の説明を参照することができる。
【０１７９】
ステップ７０４：２５６個のコードブック・ベクトルのうちの各コードブック・ベクトルから平均ベクトルまでの距離を計算する。
【０１８０】
このステップの説明については、上記のステップ５０３の説明を参照することができる。これによりｊ番目のコードブック・ベクトルから平均ベクトルまでの距離ＡＶＳ（ｊ）
【数９】
2010509647.tif 000012
【０１８１】
が得られる（ｊ＝１，２，…，２５６）。
【０１８２】
本実施形態において、１つのコードブック・ベクトルが１つの距離値ＡＶＳ（ｊ）に対応する。この距離値は、コードブック・ベクトルの調整量の基礎値とされ、実際の応用の際、１つのコードブック・ベクトルの複数の基礎値を算出してもよい。ただし、量子化処理の計算量は増加する。
【０１８３】
ステップ７０５：生成した２５６個のコードブック・ベクトルのうちの各コードブック・ベクトルの各次元の要素の調整量を生成する。
【０１８４】
本実施形態において、各コードブック・ベクトルの１乃至６次元の要素に対して７つの調整量を設定している。対応する倍率は、０、Ａ１、−Ａ１、Ｂ１、−Ｂ１、Ｃ１、−Ｃ１である。７乃至１３次元の要素に対しては、５つの調整量を設定している。対応する倍率は、０、Ａ２、−Ａ２、Ｂ２、−Ｂ２である。１４乃至１６次元の要素に対しては、３つの調整量を設定している。対応する倍率は、０、Ａ３、−Ａ３である。こうして、ｊ番目のコードブック・ベクトルを例とすると、ステップ７０５において得たＡＶＳ（ｊ）をｊ番目のコードブック・ベクトルの各次元の要素の調整量の基礎値とする。得られるｊ番目のコードブック・ベクトルの各次元の要素の調整量Ｖ（ｋ）の組合せの集合は以下の通りである。
【０１８５】
１乃至６次元の要素については、ｋ＝１，２，…，７、ｉ＝１，２，…，６で、
Ｖ（ｉ，ｋ）＝{０，ＡＶＳ（ｊ）×Ａ１，−ＡＶＳ（ｊ）×Ａ１，ＡＶＳ（ｊ）×Ｂ１，−ＡＶＳ（ｊ）×Ｂ１，ＡＶＳ（ｊ）×Ｃ１，−ＡＶＳ（ｊ）×Ｃ１｝である。
【０１８６】
ここで、ｋは、Ｖ（ｉ，ｋ）集合における各要素の通し番号を表わしており、また、１乃至６次元の要素が対応する調整量の索引番号である。
【０１８７】
７乃至１３次元の要素については、ｋ´＝１，２，…，５、ｉ＝７，…，１３で、
Ｖ（ｉ，ｋ´）＝{０，ＡＶＳ（ｊ）×Ａ２，−ＡＶＳ（ｊ）×Ａ２，ＡＶＳ（ｊ）×Ｂ２，−ＡＶＳ（ｊ）×Ｂ２｝である。
【０１８８】
ここで、ｋは、Ｖ（ｉ，ｋ´）集合における各要素の通し番号を表わしており、また、７乃至１３次元の要素が対応する調整量の索引番号である。
【０１８９】
１４乃至１６次元の要素については、ｋ´´＝１，２，３、ｉ＝１４，…，１６で、
Ｖ（ｉ，ｋ´´）＝｛０，ＡＶＳ（ｊ）×Ａ３，−ＡＶＳ（ｊ）×Ａ３｝である。
【０１９０】
ここで、ｋは、Ｖ（ｉ，ｋ´´）集合における各要素の通し番号を表わしており、また、１４乃至１６次元の要素が対応する調整量の索引番号である。
【０１９１】
さらに、本実施形態において、全ての倍率が１である場合、得られるコードブック・ベクトルの各次元の調整量は、Ｖ（ｉ，ｋ）={０，ＡＶＳ（ｊ），−ＡＶＳ（ｊ）｝である（ｋ＝１，２，３、ｉ＝１，…，１６）。
【０１９２】
こうして、２５６個のコードブック・ベクトルおよびその調整量が得られ、この後、これらのコードブック・ベクトルおよび対応する調整ベクトルを利用して、ＩＳＦ残差を量子化する。
【０１９３】
図７による生成されるＩＳＦ残差コードブック・ベクトルおよび各コードブック・ベクトルの調整量に基づき、図８は、本発明の実施形態のベクトル量子化方法を用いてＩＳＦ残差を量子化するフローチャートである。図８において、Ｎ個のコードブック・ベクトルおよび各コードブック・ベクトルの調整量を用いて量子化対象ベクトルに対して量子化処理を行なって、量子化対象ベクトルのコードブック・ベクトルおよび調整量の量子化を得るフローは、以下のステップを含んでいる。
【０１９４】
ステップ８０１：量子化対象ベクトルと２５６個のコードブック・ベクトルのうちの各コードブック・ベクトルおよびこのコードブック・ベクトルの調整量との間の差分ベクトル、を算出する。
【０１９５】
本実施形態において、量子化対象ベクトルはＩＳＦ残差であり、量子化対象ベクトルと２５６個のコードブック・ベクトルのうちの各コードブック・ベクトルおよびこのコードブック・ベクトルの調整量との間の差分ベクトルを計算することは、ＩＳＦ残差と２５６個のコードブック・ベクトルのうちの各コードブック・ベクトルとの間の残差ベクトルを計算することに相当する。
【０１９６】
このステップにおいて得られる残差ベクトルも１６次元ベクトルであり、このような残差ベクトルは２５６個であり、残差ベクトルはｒｅｓｊ，ｉと表記される（ｊ＝１，２，…，２５６、ｉ＝１，２，…１６）。
【０１９７】
ステップ８０２：コードブック・ベクトルの調整量を設定するモードに従って、１６次元の残差ベクトルを３つのサブベクトルへと分割する。
【０１９８】
この実施形態において、ステップ７０５で説明した、コードブック・ベクトルの１乃至６次元の要素に対応する調整量、７乃至１３次元の要素に対応する調整量、１４乃至１６次元の要素に対応する調整量に従って、ｊ番目のコードブック・ベクトルに対応する１６次元の残差ベクトルを３つのサブベクトルへと分割する。３つのサブベクトルは、
ｒｅｓｊ，ｉ（ｉ＝１，２，…，６）；  ｒｅｓｊ，ｉ（ｉ＝７，…，１３）；  ｒｅｓｊ，ｉ（ｉ＝１４，…，１６）
である。
【０１９９】
ステップ８０３：各コードブック・ベクトルの調整量を用いて、残差ベクトルに対して量子化処理を行なう。
【０２００】
本実施形態では、Ｎ個のコードブック・ベクトルおよび各コードブック・ベクトルの調整量を用いて量子化対象ベクトルに対して量子化処理を行なうことは、以下を含んでいる。すなわち、各コードブック・ベクトルの調整量を用いて量子化対象ベクトルとこのコードブック・ベクトルとの間の残差ベクトルに対して量子化処理を行なう。残差ベクトルに対する量子化工程は、残差ベクトルの各次元の要素と対応するコードブック・ベクトルの同次元の要素の各調整量との間の差分の絶対値を算出することである；  残差ベクトルの各次元の要素に対応する最小の差分絶対値および対応する調整量の索引番号を選出する。ｒｅｓｊ，ｉ（ｉ＝１，２，…，６）を例に取ると、この量子化工程は、具体的には、以下の通りである。
【０２０１】
ｒｅｓｊ，ｉの１次元要素とＶ（ｉ，ｋ）中のｉ＝１、ｋ＝１，２，…，７の集合内の各要素との間の差分絶対値は、
Ｅ１，ｋ＝｜ｒｅｓｊ，ｉ−Ｖ（ｉ，ｋ）｜
Ｖ（ｉ，ｋ）＝{０，ＡＶＳ（ｊ）×Ａ１，−ＡＶＳ（ｊ）×Ａ１，ＡＶＳ（ｊ）×Ｂ１，−ＡＶＳ（ｊ）×Ｂ１，ＡＶＳ（ｊ）×Ｃ１，−ＡＶＳ（ｊ）×Ｃ１｝である。
【０２０２】
である。７個の差分絶対値Ｅ１，ｋが得られる。その中の最小の差分絶対値ｍｉｎＥ１，ｋを選出し、対応するｋ値を記録しておく。
【０２０３】
上記の量子化工程に従って、ｒｅｓｊ，ｉの中から、１乃至６次元の最小差分絶対値ｍｉｎＥ１，ｋ（ｉ＝１，２，…，６）、７乃至１３次元の最小差分絶対値ｍｉｎＥ１，ｋ´（ｉ＝７，…，１３）、１４乃至１６次元の最小差分絶対値ｍｉｎＥ１，ｋ´´（ｉ＝１４，…，１６）を求める。
【０２０４】
ステップ８０４：各残差ベクトルと最小差分絶対値に対応する調整量との間の歪み度を算出し、Ｎ個の歪み度を得る。
【０２０５】
本実施形態では、各残差ベクトルと最小差分絶対値に対応する調整量との間の歪み度を計算する工程は、２５６個の残差ベクトルのうちの各残差ベクトルに対して、まずこの残差ベクトルの各次元の要素に対応する最小差分絶対値の平方値を求め、各次元の要素に対応する最小差分絶対値の平方値を合計し、得られた合計結果を同じコードブック・ベクトルに対応する残差ベクトルと調整量との間の歪み度とする（残差ベクトルと歪み度とは１対１で対応する）。得られる歪み度はＮ個である。ｒｅｓｊ，ｉ（ｉ＝１，２，…，１６）と調整量との間の歪み度Ｅｊの計算を例に取ると、この計算の式は、
【数１０】
2010509647.tif 000013
【０２０６】
である（ｊ＝１，２，…，２５６）。得られる歪み度は２５６個である。
【数１１】
2010509647.tif 000014
【０２０７】
重み付け後の歪み度は、
Ｅｊ＝Ｅ１＋Ｅ２／α＋Ｅ３／β
である。ここで、αおよびβは重み付け係数であり、実数である。
【０２０８】
ステップ８０５：２５６個の歪み度の中から最小の歪み度を選出し、この最小歪み度に対応するコードブック・ベクトルおよび調整量を量子化対象ベクトルのコードブック・ベクトルおよび調整量とする。
【０２０９】
本実施形態では、Ｅｊ＝Ｅ１＋Ｅ２／α＋Ｅ３／βが最小歪み度であるとすると、ｊ番目のコードブック・ベクトルが量子化対象ベクトルのコードブック・ベクトルであり、最良のコードブック・ベクトルである。Ｅ１内の１番目のｍｉｎＥ１，ｋに対応するｋが２であるとすると、残差ベクトルの１次元の量子化調整量はＡＶＳ（ｊ）×Ａ１であり、この残差ベクトルの１次元の最良の調整量である。類推によって、Ｅ１に基づいて、残差ベクトルの１乃至６次元の最良の調整量が得られる。Ｅ２に基づいて、残差ベクトルの７乃至１３次元要素の最良の調整量が得られる。Ｅ３に基づいて、残差ベクトルの１４乃至１６次元の最良の調整量が得られ、得られたＥ２及びＥ３に基づいてその中の残差ベクトルの１乃至６次元要素に対応する最良の調整量および対応するｋ値が得られ、量子化調整量および対応するｋ´値が得られ、１４乃至１６次元の量子化調整量および対応するｋ´´が得られる。
【０２１０】
ステップ８０６：この最良歪み度に対応する調整量の索引番号およびコードブック・ベクトル索引番号を出力する。
【０２１１】
この実施形態において、Ｅｊを得た後、これに相応して、Ｅｊに対応するｊ番目のコードブック・ベクトルが最良のコードブック・ベクトルであり、その索引番号はｊである。ステップ８０５の説明において述べたように、残差ベクトルの１次元の量子化調整量の索引番号は、Ｅ１に基づいて得られた１番目のｍｉｎＥ１，ｋが対応するｋ＝２である。類推によって、得られた残差ベクトルの各次元の要素の最良の調整量に対応する索引番号が得られる。
【０２１２】
ここにおいて、本発明のベクトル量子化方法を用いてＩＳＦ残差を量子化する工程が終了する。この後、最終的に得られた索引番号は符号化結果とされ、復号器に転送される。符号化・複号プロトコルによって、復号器は、索引番号に基づいて量子化対象ベクトルに対応する量子化ベクトルを見つけ、復元された音声信号を得る。
【０２１３】
ステップ８０１を具体的に実行する際、各コードブック・ベクトルの各次元の要素およびこの要素に対応する各調整量の総和を別々に先に求め、次いで量子化対象ベクトルの同次元の要素と各和との間の差分絶対値を算出することが可能である。こうすることによって、ステップ８０３の説明における差分絶対値を直接得ることができ、ステップ８０３以降の操作を継続することが可能である。
【０２１４】
画像／映像信号を符号化する際に信号を標本化して信号シーケンスを得てからこのシーケンスに基づいてベクトルを生成することができるので、本発明の実施形態が提供する上記のベクトル量子化方法は、画像／映像信号の符号化プロセスに対しても適用できる。
【０２１５】
以下に、本発明の実施形態に対するベクトル量子化器について詳細に説明する。
【０２１６】
量子化器１０は、図９に示すように、以下を含んでいる：
量子化対象ベクトルを取得するためのベクトル入力ユニット１１；
１つ以上の基礎サブベクトルから構成された基礎コードブック・ベクトルを提供するための基礎コードブック・ユニット１２。この１つ以上の基礎サブベクトルには、少なくとも１つの２次元以上の基礎サブベクトルに対応する１つの調整ベクトル集合があり、この調整ベクトル集合はこの基礎サブベクトルと同次元のＮ個の調整ベクトルを含んでおり、少なくとも１つの調整ベクトル集合はＮがこの調整ベクトル集合内の全ての調整ベクトルの各次元の異なる値の全ての可能な組合せ数より小さいことを満足している；
基礎コードブック・ベクトル１２が提供する基礎コードブック・ベクトル内の基礎サブベクトルに対応する調整ベクトルを提供するための調整ベクトル・ユニット１３；
基礎コードブック・ユニット１２および調整ベクトル・ユニット１３から基礎コードブック・ベクトルおよび調整ベクトルを取得し、基礎コードブック・ベクトルと異なる基礎サブベクトルに対応する１つ以上の調整ベクトルとの組合せを連合コードブック・ベクトルとして見て、連合コードブック・ベクトルとベクトル入力ユニット１１が取得した量子化対象ベクトルとの偏差に基づいて、可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択するための量子化ユニット１４；
量子化ユニット１４が選択した連合コードブック・ベクトルに対応する基礎コードブック・ベクトルの索引および調整ベクトルの索引を取得するための量子化出力ユニット１５。
【０２１７】
第１実施形態における連合コードブック・ベクトルを検索する方法（１）に対応して、本実施形態における量子化ユニットは、具体的には、図１０に示す構造を用いており、以下を含んでいる：
量子化対象ベクトルと基礎コードブック・ユニットから取得した現在の基礎コードブック・ベクトルとの差分ベクトルを計算するための残差計算ユニット１４１１。この差分ベクトルは、１つ以上の差分サブベクトルから構成されており、差分サブベクトルへの分割方法と基礎サブベクトルへの分割方法とは同じである；
対応する調整ベクトルを有する基礎サブベクトルについて、調整ベクトル・ユニットが提供する調整ベクトル集合のうちのこの調整ベクトルに対応する残差計算ユニット１４１１が得た差分サブベクトルとの偏差に基づいて、現在の基礎サブベクトルの最良の調整ベクトルを選択するための残差量子化ユニット１４１２；
残差量子化ユニット１４１２が得た各最良の調整ベクトルの偏差および未対応の調整ベクトル集合の基礎サブベクトルと量子化対象ベクトルの相応部分との偏差を累積し、現在の基礎コードブック・ベクトルに対応する最良の連合コードブック・ベクトルの偏差とするための偏差累積ユニット１４１３；
偏差累積ユニット１４１３が得た各基礎コードブック・ベクトルに対応する最良の連合コードブック・ベクトルの偏差を比較し、量子化に用いる連合コードブック・ベクトルを選択するための量子化選択ユニット１４１４。
【０２１８】
第１実施形態における連合コードブック・ベクトルを検索する方法（２）に対応して、本実施形態における量子化ユニットは、具体的には、図１１に示す構造を用いており、以下を含んでいる：
基礎コードブック・ユニットから取得した現在の基礎コードブック・ベクトルおよび調整ベクトル・ユニットから取得した調整ベクトルを重畳し、連合コードブック・ベクトルを生成するための連合ベクトル・ユニット１４２１；
連合ベクトル・ユニット１４２１が現在生成している連合コードブック・ベクトルと量子化対象ベクトルとの偏差を計算するための偏差計算ユニット１４２２；
偏差計算ユニット１４２２が得た異なる連合コードブック・ベクトルと量子化対象ベクトルとの偏差を比較し、量子化に用いる連合コードブック・ベクトルを選択するための比較選択ユニット１４２３。
【０２１９】
本実施形態のベクトル量子化器は、第１実施形態で説明したベクトル量子化方法を実行するのに用いることができる。
【０２２０】
（第６実施形態）
量子化器２０は、図１２に示すように、以下を含んでいる：
量子化対象ベクトルを取得するためのベクトル入力ユニット２１；
１つ以上の基礎サブベクトルから構成された基礎コードブック・ベクトルを提供するための基礎コードブック・ユニット２２。この１つ以上の基礎サブベクトルには、少なくとも１つの２次元以上の基礎サブベクトルに対応する１つの調整ベクトル集合があり、この調整ベクトル集合はこの基礎サブベクトルと同次元のＮ個の調整ベクトルを含んでおり、少なくとも１つの調整ベクトル集合はＮがこの調整ベクトル集合内の全ての調整ベクトルの各次元の異なる値の全ての可能な組合せ数より小さいことを満足している；
基礎コードブック・ユニット２２が現在提供している基礎コードブック・ベクトルに対応する倍率を提供するための倍率ユニット２３；
基礎コードブック・ユニット２２が提供する基礎コードブック・ベクトル内の基礎サブベクトルに対応する調整ベクトルを提供するための調整ベクトル・ユニット２４。この調整ベクトルは基礎サブベクトルに対応する調整係数ベクトルと倍率ユニットが提供する倍率の積である；
基礎コードブック・ユニット２２および調整ベクトル・ユニット２４から基礎コードブック・ベクトルおよび調整ベクトルを取得し、基礎コードブック・ベクトルと異なる基礎サブベクトルに対応する１つ以上の調整ベクトルとの組合せを連合コードブック・ベクトルとして見て、連合コードブック・ベクトルと量子化対象ベクトルとの偏差に基づいて、可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択するための量子化ユニット２５；
量子化ユニット２４が選択した連合コードブック・ベクトルに対応する基礎コードブック・ベクトルの索引および調整ベクトルの索引を取得するための量子化出力ユニット２５。
【０２２１】
本実施形態のベクトル量子化器は、第２実施形態で説明したベクトル量子化方法を実行するのに用いることができる。
【０２２２】
（第７実施形態）
量子化器３０は、図１３に示すように、以下を含んでいる：
量子化対象ベクトルを取得するためのベクトル入力ユニット３１；
１つ以上の基礎サブベクトルから構成された基礎コードブック・ベクトルを提供するための基礎コードブック・ユニット３２。この１つ以上の基礎サブベクトルには、少なくとも１つの２次元以上の基礎サブベクトルに対応する１つの調整ベクトル集合があり、この調整ベクトル集合はこの基礎サブベクトルと同次元のＮ個の調整ベクトルを含んでおり、少なくとも１つの調整ベクトル集合はＮがこの調整ベクトル集合内の全ての調整ベクトルの各次元の異なる値の全ての可能な組合せ数より小さいことを満足している；
調整ベクトル・ユニット３３。調整ベクトル・ユニット３３は、以下を含んでいる：
基礎コードブック・ユニット３２が提供する基礎サブベクトルに対応する関係ベクトル集合（この関係ベクトル集合は、この調整ベクトル集合であるかこの調整ベクトル集合と関数対応関係を有している）を提供するための集合供給ユニット３３１、
集合供給ユニット３３１が提供した関係ベクトル集合を捜索し、この関係ベクトル集合の中から取得した関係ベクトルに基づいて相応する調整ベクトルを得るための調整生成ユニット３３２；
基礎コードブック・ユニット３２および調整ベクトル・ユニット３３から基礎コードブック・ベクトルおよび調整ベクトルを取得し、基礎コードブック・ベクトルと異なる基礎サブベクトルに対応する１つ以上の調整ベクトルとの組合せを連合コードブック・ベクトルとして見て、連合コードブック・ベクトルと量子化対象ベクトルとの偏差に基づいて、可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択するための量子化ユニット３４；
量子化ユニット３４が選択した連合コードブック・ベクトルに対応する基礎コードブック・ベクトルの索引および調整ベクトルの索引を取得するための量子化出力ユニット３５。この索引はこの調整ベクトルに対応する関係ベクトルの関係ベクトル集合における通し番号である。
【０２２３】
本実施形態のベクトル量子化器は、第３実施形態で説明したベクトル量子化方法を実行するのに用いることができる。
【０２２４】
（第８実施形態）
量子化器４０は、図１４に示すように、以下を含んでいる：
量子化対象ベクトルを取得するためのベクトル入力ユニット４１；
１つ以上の基礎サブベクトルから構成された基礎コードブック・ベクトルを提供するための基礎コードブック・ユニット４２。この１つ以上の基礎サブベクトルには、少なくとも１つの２次元以上の基礎サブベクトルに対応する１つの調整ベクトル集合があり、この調整ベクトル集合はこの基礎サブベクトルと同次元のＮ個の調整ベクトルを含んでおり、少なくとも１つの調整ベクトル集合はＮがこの調整ベクトル集合内の全ての調整ベクトルの各次元の異なる値の全ての可能な組合せ数より小さいことを満足している；
調整ベクトル・ユニット４３。調整ベクトル・ユニット４３は、以下を含んでいる：
基礎コードブック・ユニット４２が提供する基礎サブベクトルに対応する関係ベクトルの各次元の異なる値の全ての可能な組合せを検索するための超過量検索ユニット４３１、
超過量検索ユニット４３２が現在取得している各次元の値の組合せが選択可能な有効な関係ベクトルであるか否かを判断し、そうである場合に現在取得している有効な関係ベクトルに基づいて調整ベクトルを取得し、そうでない場合に超過量検索ユニット４３１が検索の完了まで検索を継続するように制御するベクトル選択ユニット４３２；
基礎コードブック・ユニット４２および調整ベクトル・ユニット４３から基礎コードブック・ベクトルおよび調整ベクトルを取得し、基礎コードブック・ベクトルと異なる基礎サブベクトルに対応する１つ以上の調整ベクトルとの組合せを連合コードブック・ベクトルとして見て、連合コードブック・ベクトルと量子化対象ベクトルとの偏差に基づいて、可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択するための量子化ユニット４４；
量子化ユニット４４が選択した連合コードブック・ベクトルに対応する基礎コードブック・ベクトルの索引および調整ベクトルの索引を取得するための量子化出力ユニット４５。この索引はこの調整ベクトルに対応する有効な関係ベクトルの全ての有効な関係ベクトルにおける通し番号である。
【０２２５】
本実施形態のベクトル量子化器は、第４実施形態で説明したベクトル量子化方法を実行するのに用いることができる。
【０２２６】
上記の第７実施形態および第８実施形態における調整ベクトル・ユニットの具体的な構造は、第５実施形態および第６実施形態に適用してもよい。
【０２２７】
上記の実施形態から以下のことが分かる。すなわち、本発明の実施形態は、基礎コードブック・ベクトルとそのサブベクトルの調整ベクトルとの組合せからなる連合コードブック・ベクトルを用いて、量子化対象のベクトルを量子化する方法である。調整ベクトルを用いて基礎コードブック・ベクトルを調整するので、基礎コードブック・ベクトルのダイナミック・レンジが有効に拡大し、歪み度が減少し、単次の量子化の実行で複数次の量子化と同じかそれ以上の効果を得られる。また、コードブックのメモリ量および量子化計算量が有効に低下する。また、基礎コードブック・ベクトルの調整は、調整ベクトルの形式で行なわれ、量子化対象ベクトルから基礎コードブック・ベクトルを減じた後に次元間で依然存在する関連性を十分に利用して調整ベクトルを設計する。このため、より個数が少ない調整ベクトルでより大きな動的調整範囲を実現する目的を達成し、同時に次元間の関連性を利用して調整ベクトルの個数を減じ、量子化計算量が減少する。さらに、倍率と調整係数ベクトルとの積によって調整ベクトルを取得する方法を用いる場合、調整ベクトルが取る値および具体的なＵａは関連しているので、異なるＵａが同じ調整係数ベクトル集合から異なる調整ベクトル集合を得ることができ、調整の効果がさらに理想的になり、調整ベクトルのダイナミック・レンジが有効に拡大する。さらに、関係ベクトル集合を捜索する方法を用いて調整ベクトルを取得する場合、取得方法は、直接的で、費やされる計算量はより少ない。さらに、部分集合へと分割する方法を用いて関係ベクトル集合を捜索すれば、関係ベクトルは各部分集合へと分けて保存可能である。各次元の全ての値の組合せが提供されるので、各次元の異なる値を保存可能であって、組合せ方を保存する必要はなく、メモリ量を減じることができる。さらに、超過量検索を用いて関係ベクトルを取得する場合、組合せに対する有効性の判断を通じて対応する調整ベクトルを取得する。実際の有効な関係ベクトルの組合せ関係を保存する必要がないので、メモリ量を減少できる。
【０２２８】
本発明の実施形態の利点を具体的に説明するために、以下に、広帯域非音声信号（Unvoiced）の１６次元のＩＳＦベクトルを量子化する際の、本方法とＩＴＵ−Ｔ  Ｇ．ＶＢＲベースライン符号化器の方法の各種の性能パラメータを比較する（ＩＴＵ−Ｔ  Ｇ．ＶＢＲベースライン符号化器が広帯域非音声信号に対して採用しているベクトル量子化方法は、ＡＭＲ−ＷＢ＋におけるＭＳＶＱに類似している。ただし、複数次の量子化工程においてベクトル分割は行なわない。）。その中の「量子化効果」項目は、非音声の計４０５３３６フレームのＩＳＦ係数を量子化し、ＮＴＴが提供する２５種の音声および２１１２個の音声素材に対して包括的統計を行なった結果である。
【０２２９】
（１）ＩＴＵ−Ｔ  Ｇ．ＶＢＲベースライン符号化器の方法
基本設定
１．８次量子化を行なう。  
２．１次量子化において、重み付け平均平方誤差に基づいて、６４個の１６次元の１次コードブックを用いて、１次コードブックの中から５個の好ましいコードブックを選択する。  
３．好ましいコードブックの各々に対して、２乃至８次コードブック・ベクトルを用いてより高次の量子化の残差を量子化し、最後に、５組の結果の中から最終的な量子化結果を選択する。２乃至８次で用いる１６次元コードブックの個数は、３２、１６、６４、６４、３２、３２、８である。
【０２３０】
パフォーマンス・パラメータ：
１．符号化ビット数：６＋５＋４＋６＋６＋５＋５＋３＝４０ビット。  
２．メモリ量：１６×（６４＋３２＋１６＋６４＋６４＋３２＋３２＋８）＝４９９２個の浮動小数点。  
３．計算量：約２１０００回の加減算、約４２０００回の乗算。  
４．量子化効果：平均スペクトル歪みは０．９７５ｄＢ、２．０乃至４．０ｄＢが全体の０．９１９％を占め、４．０ｄＢを超えるものが０．００７１５％を占める。
【０２３１】
（２）本発明の実施形態の方法
基本設定
１．計５７個の１６次元の基礎コードブック・ベクトル（５個の基礎サブベクトルに分割されている）を用いる。  
２．各基礎コードブック・ベクトルは、１つの倍率に対応する。  
３．１つ目の基礎サブベクトルは、１乃至２次元を含み、各次元は７個の独立に変化する調整量を有する。  
４．２つ目乃至５つ目の基礎サブベクトルは、それぞれ、３乃至５次元、６乃至８次元、９乃至１２次元、１３乃至１６次元を含んでおり、２つ目乃至５つ目の基礎サブベクトルは、各々、１つの調整ベクトル集合と対応している。各調整ベクトル集合は、３つの部分集合に分割され、各部分集合において各次元の３つの独立に変化する調整量がある。  
性能パラメータ
１．符号化ビット数：４０ビットである。計５７×７×７×（３×３×３×３）×（３×３×３×３）×（３×３×３×３×３）×（３×３×３×３×３）＝１０８２０６５４２５７７７種の組合せを用い、４０ビットでは２＾４０＝１０９９５１１６２７７７６種の組合せが得られるので、４０ビットを用いて符号化を実行することができる。  
２．メモリ量：１６×５７＋５７＋７×２＋１４×３×３＝１１０９個の浮動小数点。  
３．計算量：約２５０００回の加減算、約７５００回の乗算。  
４．量子化効果：：平均スペクトル歪みは０．９４３ｄＢ、２．０乃至４．０ｄＢが全体の１．０３１％を占め、４．０ｄＢを超えるものが０．００５４％を占める。
【０２３２】
２つの方法の性能パラメータを比較すると、同じ符号化ビット数の下で、本方法は、保存量、計算の複雑度は言うまでもなく、量子化効果もＩＴＵ−Ｔ  Ｇ．ＶＢＲベースライン符号化器の方法より優れている。
【０２３３】
本発明の実施形態は、さらに、上記の本発明の実施形態が提供する１つのベクトル量子化方法に基づいて、ベクトル量子化装置も提供する。図１５は、このような装置の好ましい実施形態の構造を示す図である。この装置は、コードブック供給ユニット、調整量供給ユニット、量子化ユニットを含んでいる。
【０２３４】
コードブック供給ユニットは、量子化対象ベクトルに対応するＮ（Ｎは１以上の正の整数）個のコードブック・ベクトルを量子化ユニットに転送するためのものである。
【０２３５】
調整量供給ユニットは、各コードブック・ベクトルの調整量を量子化ユニットに転送するためのものである。
【０２３６】
量子化ユニットは、調整量供給ユニットからの各コードブック・ベクトルの調整量を受け取り、またコードブック供給ユニットから受け取り、Ｎ個のコードブック・ベクトルおよび各コードブック・ベクトルの調整量を用いて量子化対象ベクトルに対して量子化処理を行ない、量子化対象ベクトルのコードブック・ベクトルおよび調整量の量子化を得る。
【０２３７】
Ｎ個のコードブック・ベクトルおよび各コードブック・ベクトルの調整量は、ベクトル量子化の前に生成することができるので、ベクトル量子化を行う際、コードブック・ベクトル供給ユニット５０１および調整量供給ユニット５０２を通じて、ベクトル量子化に必要なコードブック・ベクトルおよび調整量は、量子化ユニット５０３に転送することが可能である。
【０２３８】
図１６は、本発明のベクトル量子化装置の別の好ましい実施形態である。この装置は、さらに、調整量生成ユニットを含んでいる。調整量生成ユニットは、Ｎ（Ｎは１以上の正の整数）個のコードブック・ベクトルの平均ベクトルを計算し、各コードブック・ベクトルから平均ベクトルまでの距離を計算し、各コードブック・ベクトルから平均ベクトルまでの距離に基づいて各コードブック・ベクトルの１つ以上の調整量を生成し、生成した各コードブック・ベクトルの調整量を調整量供給ユニットに転送するためのものである。
【０２３９】
図１７は、本発明のベクトル量子化装置のさらに別の好ましい実施形態の構造を示す図である。この装置は、図１６の装置からさらに、残差ベクトル計算ユニットを含んでいる。残差ベクトル計算ユニットは、量子化対象ベクトルとＮ個のコードブック・ベクトルのうちの各コードブック・ベクトルとの間の残差ベクトルを計算し、各コードブック・ベクトルの間の残差ベクトルを量子化ユニットに転送するためのものである。
【０２４０】
図１８は、図１７の量子化ユニットの好ましい実施形態であり、量子化ユニットは、量子化サブユニット、計算サブユニット、選択サブユニットを含んでいる。
【０２４１】
量子化サブユニットは、調整量供給ユニットからの各コードブック・ベクトルの調整量を受け取り、また、残差ベクトル計算ユニットからの残差ベクトルを受け取り、各残差ベクトルの各次元の要素と対応するコードブック・ベクトルの同次元の要素の各調整量との間の差分絶対値を計算し、残差ベクトルの各次元の要素に対応する最小の差分絶対値を選出し、残差ベクトルの各次元の要素に対応する最小差分絶対値の計算結果を計算サブユニットに転送するためのものである。
【０２４２】
計算サブユニットは、量子化ユニットからの各残差ベクトルの各次元の要素に対応する最小差分絶対値の計算結果を受け取り、この残差ベクトルの各次元の要素に対応する最小差分絶対値の平方値を計算し、さらに各次元の要素に対応する最小差分絶対値の平方値を合計し、得られた合計結果をこの残差ベクトルと調整量との間の歪み度とし、Ｎ個の残差ベクトルのＮ個の歪み度を算出し、Ｎ個の歪み度を選択サブユニットに転送するためのものである。
【０２４３】
選択サブユニットは、計算サブユニットからのＮ個の歪み度を受け取り、最小の歪み度および最小歪み度に対応するコードブック・ベクトルおよび調整量を選出し、最小歪み度に対応するコードブック・ベクトルおよび調整量を出力するためのものである。
【０２４４】
図１９は、ベクトル量子化装置のさらに別の好ましい実施形態の構造を示す図である。この装置は、図１７からさらに、出力ユニットを含んでいる。出力ユニットは、選択サブユニットからの最小歪み度に対応するコードブック・ベクトルおよび調整量を受け取り、最小歪み度に対応するコードブック・ベクトルの索引番号および最小歪み度に対応する調整量の索引番号を出力するためのものである。
【０２４５】
本発明の実施形態による図５に示すベクトル量子化方法の性能をさらに検査するために、ＡＭＲ−ＷＢ＋および本発明の方法に対して音声品質の客観評価を行なった。評価ソフトウェアは、国際電気通信連合・電気通信標準化部門（ＩＴＵ−Ｔ）のＰ．６８２客観評価基準の広帯の音声品質の知覚的評価（WideBand Perceptual Evaluation of Speech Quality, WB-PESQ）であり、さらに平均スペクトル歪みもある。検査シーケンスは、第３世代パートナーシップ・プロジェクト（３ＧＰＰ）が提供するＡＭＲ−ＷＢ＋のシーケンスおよび高度映像符号化規格（Advanced Video Coding Standard, AVS）が提供する検査シーケンスであり、７１個の検査シーケンスから構成される。それらには、音声、音楽、音声をバックグラウンドに持つ音楽、音楽を背景に持つ音声等が含まれる。検査結果は、次の通りである。
【０２４６】
１．音声品質の知覚的評価（ＰＥＳＱ）の平均点数は、ＡＭＲ−ＷＢ＋Ｂは３．８０１で、本発明は３．８７４であった。７１個の検査シーケンスの中に２個の符号化レート（１０．４ｋｂｐｓおよび２４ｋｂｐｓ）があって計１４２個の検査項目のうち、ＡＭＲ−ＷＢ＋Ｂが獲得した最高の（ＰＥＳＱ平均得点が最高であった）項目は４７項目であり、本方法の最高項目は９５項目であった。  
２．平均スペクトル歪みは、ＡＭＲ−ＷＢ＋Ｂの平均スペクトル歪みが０．９６０１５６であった。そのうち、２乃至４ｄＢが３．８４％を占め、４ｄＢを超えるものが０．０９５％を占めていた。本発明の平均スペクトル歪みは、０．８７８９０２であり、そのうち、２乃至４ｄＢが０．９６３％を占め、４ｄＢを超えるものが０．００１５８％を占めていた。
【０２４７】
表１に示すように、ＡＭＲ−ＷＢ＋Ｂのベクトル量子化方法の１次量子化は、２５６、２５６個のコードブック・ベクトルを用い、メモリ量は２５６×（９＋７）＝４０９６個の浮動小数点である。２次量子化は、６４、１２８、１２８、３２、３２個のコードブック・ベクトルを用い、メモリ量は６４×３＋１２８×３＋１２８×３＋３２×３＋３２×４＝１１８４個の浮動小数点であり、総保存量は４０９６＋１１８４＝５２８０個の浮動小数点である。対応する乗算計算量は、１次量子化は２５６個のコードブック・ベクトルを捜索し、その中から４個の最良の１次コードブック・ベクトルを見つけ出し、次いで２次コードブック・ベクトルを検索する。２次コードブック・ベクトルを検索する工程においては４個の最良の１次コードブック・ベクトルおよび２次量子化の６４、１２８、１２８、３２、３２個のコードブック・ベクトルを巡る必要がある。
【０２４８】
ＡＭＲ−ＷＢ＋Ｂのベクトル量子化方法と比べると、本発明のベクトル量子化方法を用いてＩＳＦ残差を量子化する際、２５６個のコードブック・ベクトルに対して８ビットを用いて符号化を行ない、コードブック・ベクトルの調整量に対して３８ビットを用いて符号化を行なう。メモリ量の面においては、本発明の実施形態において、必要なメモリ量は、２５６個のコードブック・ベクトルのメモリ量であり、従って計２５６×１６＝４３５２個の浮動小数点であり、さらに２５６個の調整量基準値を加えて、メモリ量は計４０９６＋２５６＝４３５２個の浮動小数点である。計算は、乗法計算であり、２５６個のコードブック・ベクトルを巡るのに必要な計算量である。
【０２４９】
理解されるように、本発明の実施形態が提供する技術的策は、符号化品質およびベクトル量子化複雑度が明らかに優れている。
【０２５０】
まとめると、本発明の実施形態が提供する上記の技術的策は、量子化対象ベクトルに対応するコードブック・ベクトルおよびこれらのコードブック・ベクトルの調整量を用いて、量子化対象ベクトルに対して量子化処理を行ない、連合計算を用いて、最良の調整量を見つけると同時にこの最良の調整量に対応する最良のコードブック・ベクトルを見つけ、量子化工程全体の歪み度を最小にし、より高い符号化品質を保証する。その中で、最良の調整量は最小歪み度に対応する調整量であり、最良のコードブック・ベクトルはこの調整量に対応するコードブック・ベクトルである。同時に、本発明の実施形態が提供する技術的策は、コードブック・ベクトルの調整量を用いてコードブック・ベクトルと量子化対象ベクトルとの間の残差ベクトルに対して量子化処理を行ない、従来技術の多数次のコードブック・ベクトルを用いて残差ベクトルを量子化する方法と異なる。このため、コードブック・ベクトルのメモリ量を減少でき、計算量は、Ｎ個のコードブック・ベクトルを巡るのに必要な計算量だけである。従来技術のＮ個の１次コードブック・ベクトルを巡った後にさらに複数の２次コードブック・ベクトルを巡ることと比べると、計算量が減少する。このため、本発明の実施形態が提供する技術的策は、より高い符号化品質を保証すると同時に、ベクトル量子化の複雑度を低下させる。
【０２５１】
以上、本発明の実施形態が提供するベクトル量子化方法およびベクトル量子化器について詳細に説明した。本文において、１つ以上の具体例を用いて本発明の原理および実施方法を説明したが、上記の実施形態の説明は、本発明の方法およびその核心的な思想の理解を助けるためのものに過ぎず、同時に、当業者にとって、本発明の思想に基づいて、具体的な実施方法および応用範囲に対して変更を行なうことができる。また、本明細書の内容は、本発明を制限するものとして理解されるべきではない。
【図１】
2010509647.tif 000017
【図２】
2010509647.tif 000018
【図３】
2010509647.tif 000019
【図４】
2010509647.tif 000020
【図５】
2010509647.tif 000021
【図６】
2010509647.tif 000022
【図７】
2010509647.tif 000023
【図８】
2010509647.tif 000024
【図９】
2010509647.tif 000025
【図１０】
2010509647.tif 000026
【図１１】
2010509647.tif 000027
【図１２】
2010509647.tif 000028
【図１３】
2010509647.tif 000029
【図１４】
2010509647.tif 000030
【図１５】
2010509647.tif 000031
【図１６】
2010509647.tif 000032
【図１７】
2010509647.tif 000033
【図１８】
2010509647.tif 000034
【図１９】
2010509647.tif 000035
【手続補正書】
【提出日】平成21年5月15日(2009.5.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コードブック供給ユニットと、
調整量供給ユニットと、
量子化ユニットと、
を具備し、
前記コードブック供給ユニットは、量子化対象ベクトルに対応するＮ（Ｎは１以上の正の整数）個のコードブックを前記量子化ユニットに転送するためのものであり、
前記調整量供給ユニットは、前記各コードブックの調整量を前記量子化ユニットに転送するためのものであり、
前記量子化ユニットは、前記調整量供給ユニットからの前記各コードブックの前記調整量を受け取り、前記コードブック供給ユニットから受け取り、前記Ｎ個のコードブックおよび前記各コードブックの調整量を用いて前記量子化対象ベクトルに対して量子化処理を行ない、前記量子化対象ベクトルの前記コードブックおよび前記調整量の量子化を得るためのものである、
ベクトル量子化装置。
【請求項２】
調整量生成ユニットをさらに具備し、
前記調整量ユニットは、
Ｎ（Ｎは１以上の正の整数）個のコードブックの平均ベクトルを計算し、
前記各コードブックから前記平均ベクトルまでの距離を計算し、
前記各コードブックから前記平均ベクトルまでの距離に基づいて、前記各コードブックの１つ以上の調整量を生成し、生成した前記各コードブックの調整量を前記調整量供給ユニットに転送する、
ためのものである、請求項１の装置。
【請求項３】
残差ベクトル計算ユニットをさらに具備し、
前記残差ベクトル計算ユニットは、前記量子化対象ベクトルと前記Ｎ個のコードブックのうちの前記各コードブックとの間の残差ベクトルを計算し、前記各コードブックの間の残差ベクトルを前記量子化ユニットに供給するためのものである、
請求項１または２の装置。
【請求項４】
前記量子化ユニットが、量子化サブユニットと、計算サブユニットと、選択サブユニットと、を具備し、
前記量子化サブユニットは、前記調整量供給ユニットからの前記各コードブックの調整量を受け取り、前記残差ベクトル計算ユニットからの残差ベクトルを受け取り、前記各残差ベクトルの前記各次元の要素と対応する前記コードブックの同次元の要素の前記各調整量との間の差分絶対値を計算し、前記残差ベクトルに対応する各次元の要素に対応する最小差分絶対値を選出し、前記残差ベクトルの各次元の要素に対応する最小差分絶対値の計算結果を前記計算サブユニットに転送するためのものであり、
前記計算サブユニットは、前記量子化サブユニットからの前記各残差ベクトルの各次元の要素に対応する最小差分絶対値の計算結果を受け取り、該残差ベクトルの各次元に対応する最小差分絶対値の平方を計算し、前記各次元の要素に対応する最小差分絶対値の平方を合計し、得られた合計結果を該残差ベクトルと調整量との間の歪み度とし、前記Ｎ個の残差ベクトルのＮ個の歪み度を算出し、前記Ｎ個の歪み度を前記選択サブユニットに転送するためのものであり、
前記選択サブユニットは、前記計算サブユニットからの前記Ｎ個の歪み度を受け取り、最小歪み度および前記最小歪み度に対応する前記コードブックおよび前記調整量を選出し、前記最小歪み度に対応する前記コードブックおよび前記調整量を出力するためのものである、
請求項３の装置。
【請求項５】
出力ユニットをさらに具備し、
前記出力ユニットは、前記選択サブユニットからの前記最小歪み度に対応する前記コードブックおよび前記調整量を受け取り、前記最小歪み度に対応する前記コードブックの索引番号および前記最小歪み度に対応する前記調整量の索引番号を出力するためのものである、
請求項４の方法。
【請求項６】
量子化対象ベクトルを取得するためのベクトル入力ユニットと、
基礎コードブック・ベクトルを提供するための基礎コードブック・ユニットであって、前記基礎コードブック・ベクトルは１つ以上の基礎サブベクトルから構成され、前記１つ以上の基礎サブベクトルには少なくとも１つの２次元以上の前記基礎サブベクトルに対応する１つの調整量ベクトル集合があり、前記調整ベクトル集合は前記基礎サブベクトルと同次元のＮ個の調整ベクトルを含んでおり、少なくとも１つの前記調整ベクトル集合は、Ｎの値が該集合内の各次元の異なる調整量の組合せからなる調整ベクトルの全ての組合せ数より小さいことを満足することと、
前記基礎コードブック・ベクトルに対応する調整ベクトルを提供するための調整ベクトル・ユニットと、
前記基礎コードブック・ユニットおよび前記調整ベクトル・ユニットから前記基礎コードブック・ベクトルおよび前記調整量を取得し、前記基礎コードブック・ベクトルと異なる前記基礎サブベクトルに対応する１つ以上の前記調整ベクトルとの組合せを連合コードブック・ベクトルとして見て、前記連合コードブック・ベクトルと前記量子化対象ベクトルとの偏差に基づいて、可能な連合コードブック・ベクトルの中から量子化に用いる連合コードブック・ベクトルを選択するための量子化ユニットと、
前記量子化ユニットが選択した前記連合コードブック・ベクトルに対応する前記基礎コードブック・ベクトルの索引および前記調整ベクトルの索引を取得するための量子化出力ユニットと、
を具備する量子化器。
【請求項７】
前記基礎コードブック・ユニットが現在提供している前記基礎コードブック・ベクトルに対応する倍率を提供するための倍率ユニットをさらに具備する、
請求項６のベクトル量子化器。
【請求項８】
前記量子化ユニットが、
前記量子化対象ベクトルと前記基礎コードブック・ユニットから取得した現在の基礎コードブック・ベクトルとの差分ベクトルを計算するための残差計算ユニットであって、前記差分ベクトルは１つ以上の差分サブベクトルから構成され、前記差分サブベクトルへの分割方法と基礎サブベクトルへの分割方法とは同じであることと、
対応する調整ベクトル集合を有する前記基礎サブベクトルについて、前記調整ベクトル・ユニットが提供する該調整ベクトル集合内の前記調整ベクトルと対応する前記差分サブベクトルとの偏差に基づいて、現在の基礎サブベクトルの最良の調整ベクトルを選択するための残差量子化ユニットと、
前記各基礎コードブック・ベクトルに対応する最良の連合コードブック・ベクトルの偏差を比較し、量子化に用いる連合コードブックを選択するための量子化選択ユニットと、
を具備する、
請求項６のベクトル量子化器。
【請求項９】
前記量子化ユニットが、
前記基礎コードブック・ユニットから取得した現在の基礎コードブック・ベクトルおよび前記調整ベクトル・ユニットから取得した前記調整ベクトルを重畳し、連合コードブック・ベクトルを生成するための連合ベクトル・ユニットと、
前記連合ベクトル・ユニットが現在生成している連合コードブック・ベクトルと前記量子化対象ベクトルとの偏差を計算するための偏差計算ユニットと、
異なる前記連合コードブック・ベクトルと前記量子化対象ベクトルとの偏差を比較し、量子化に用いる連合コードブック・ベクトルを選択するための比較選択ユニットと、
を具備する、
請求項６のベクトル量子化器。
【請求項１０】
前記調整ベクトル・ユニットが、
前記基礎サブベクトルに対応する関係ベクトル集合を提供するための集合供給ユニットであって、前記関係ベクトル集合は前記調整ベクトル集合であるか前記調整ベクトル集合と関数対応関係を有することと、
前記集合供給ユニットが提供した前記関係ベクトル集合を捜索し、該関係ベクトル集合の中から取得した関係ベクトルに基づいて相応する前記調整ベクトルを得るための調整生成ユニットと、
を具備し、
前記量子化出力ユニットが取得した前記調整ベクトルの索引を該調整ベクトルに対応する前記関係ベクトルの関係ベクトル集合における通し番号とする、
請求項６乃至９のいずれか１項のベクトル量子化器。
【請求項１１】
前記調整ベクトル・ユニットが、
前記基礎サブベクトルに対応する前記関係ベクトルの各次元の異なる値を検索するための超過量検索ユニットと、
前記超過量検索ユニットが現在取得している各次元の値の組合せが選択可能な有効な前記関係ベクトルであるか否かを判断し、そうである場合に前記現在取得している有効な関係ベクトルに基づいて前記調整ベクトルを取得し、そうでない場合に前記超過量検索ユニットが検索の完了まで検索を継続するように制御するためのベクトル選択ユニットと、
を具備し、
前記量子化出力ユニットが取得した前記調整ベクトルの索引を該調整ベクトルに対応する有効な関係ベクトルの全ての有効な関係ベクトルにおける通し番号とする、
請求項６乃至９のいずれか１項のベクトル量子化器。
【国際調査報告】
2010509647.tif 000036
2010509647.tif 000037
2010509647.tif 000038
2010509647.tif 000039
2010509647.tif 000040
2010509647.tif 000041