(57)【特許請求の範囲】
【請求項１】
装置によって遂行される方法であって、前記方法は、
第１の量子化段階を用いて入力ベクトルを量子化し、残差ベクトル表現を得ること、但し前記第１の量子化段階は複数のコードベクトルを有するコードブックを有し、量子化された前記入力ベクトルは、コードベクトル添字によって表現されることと；
前記残差ベクトル表現の複数のベクトル成分を、ベクトル成分の少なくとも２つのグループにグループ分けすることと；
前記少なくとも２つのグループの各々が規則を満たすまで、前記少なくとも２つのグループのうちの第１のグループのベクトル成分を前記少なくとも２つのグループのうちの第２のグループのベクトル成分と入れ換えることと； 
前記少なくとも２つのグループのうちの少なくとも１つを、第２の量子化段階によって量子化すること、但し第２の量子化段階は複数のコードブックを有し、該複数のコードブックのうち前記量子化に用いるコードブックは、前記第１の量子化段階から得られる前記コードベクトル添字に基づいて選択されることと； 
を含む方法。
【請求項２】
前記規則が、
前記ベクトル成分に関連付けられたエネルギー値に基づく規則、
前記ベクトル成分に関連付けられた既定のノルムに基づく規則、
のうちの１つである、請求項１に記載の方法。
【請求項３】
前記規則が、ベクトル成分の前記少なくとも２つのグループの各々の前記ベクトル成分群は、既定のエネルギー特性を満たさなければならないことを指定する、請求項２に記載の方法。
【請求項４】
前記規則が、ベクトル成分の前記少なくとも２つのグループのうちの第１のグループの各ベクトル成分のそれぞれのベクトル成分に関連付けられたエネルギー値は、ベクトル成分の前記少なくとも２つのグループのうちの残りのグループの各グループの各ベクトル成分のそれぞれのベクトル成分に関連付けられたエネルギー値よりも高いことを指定する、請求項３に記載の方法。
【請求項５】
ベクトル成分の前記少なくとも２つのグループが、x∈｛1, 2, ...n｝、n≧2とする、ベクトル成分のn個のグループgxを表現し、ベクトル成分の前記少なくとも２つのグループのうちのx番目のグループgxが前記入力ベクトルの前記第１の量子化表現の前記複数のベクトル係数のうちのlx個のベクトル係数を含み、前記規則が、x番目のグループgxの前記lx個のベクトル係数は、前記複数のベクトル係数のうちの
0006475273.tif 000022
番目から
0006475273.tif 000023
にエネルギーの高い（またはエネルギーの低い）ベクトル係数を表現することを指定する、請求項１から４のいずれか一項に記載の方法。
【請求項６】
ベクトル成分の前記少なくとも２つのグループに基づいて前記複数のベクトル成分を含む前記入力ベクトルを決定するように構成される情報を決定することを含む、請求項１から５のいずれか一項に記載の方法。
【請求項７】
処理手段及び記憶手段を備える装置であって、前記記憶手段はプログラム命令を格納し、前記プログラム命令は、前記処理手段に実行されると、前記装置に、請求項１から６の何れかに記載の方法を遂行させるように構成される、装置。
【請求項８】
装置の処理手段に実行されると、前記装置に、請求項１から６の何れかに記載の方法を遂行させるように構成されるプログラム命令を備える、コンピュータプログラム。
【発明の詳細な説明】
【分野】
【０００１】
本発明の諸実施形態は符号化に関し、特に、音声およびオーディオ符号化に関する。
【背景】
【０００２】
音声およびオーディオ符号化のための低複雑性アルゴリズムは、例えば、モバイル端末ベースの通信のために、非常に重要な利点をもたらす。
【０００３】
符号化効率を維持しつつ、記憶量が少なく、複雑性が低いため、例えば、第3世代パートナーシッププロジェクト（Third Generation Partnership Project、3GPP）内で標準化される予定のエンハンストボイスサービス（Enhanced Voice Service、EVS）コーデックのような、いくつかの最新の音声およびオーディオコーデックにおいては、構造化されたコードブックが好ましい場合がある。
【０００４】
これらの音声およびオーディオコーデック内で用いられるコードブックは、例えば、参照文献、A. Vasilache、B. DumitrescuおよびI. Tabus著、「多スケールリーダ格子VQ、およびLSF量子化へのその適用（Multiple-scale leader-lattice VQ with application to LSF quantization）」、Signal Processing、2002、vol. 82、563−586ページ、Elsevierに記載されているように、格子構造に基づいてもよい。同文献はその全体が本明細書において参照により援用されている。
【０００５】
格子コードブックは、リーダベクトルによって各々特徴付けられる、リーダクラスの集合として定義することが可能である。リーダベクトルは、（例えば正の）成分が（例えば降順に）順序付けられた、n次元ベクトルである（nは整数を表す）。このとき、リーダベクトルに対応するリーダクラスは、リーダベクトル、および（いくらかの可能な制約を伴う）リーダベクトルの全ての符号付き置換を通じて得られる全てのベクトルから成る。1つ、いくつか、または全てのリーダクラスはそれぞれ1つ以上のスケールに関連付けられることも可能であり、このとき、格子コードブックは、スケーリングされたリーダクラスおよび／またはスケーリングされていないリーダクラスの集合として形成される。
【０００６】
入力ベクトルは、例えば、（例えば量子化において、）コードブック内の最も近い隣接コードベクトル、すなわち、入力ベクトルに対して最小距離を有するコードベクトルを見つけることによって、エンコードされてもよい。その後は、このコードベクトルの識別子（例えばこのコードベクトルに付与された添字）が、入力ベクトルのエンコードされた表現の役割を果たしてもよい。
【０００７】
例えば、音声またはオーディオ符号化は各種の符号化モードに適用されてもよい。一例として、量子化は、信号の有声部分、無声部分、一般部分、移行部分またはコンフォートノイズ生成（comfort noise generation、CNG）部分に適用されてもよい。CNG部分が使用する部分は一般的に少ないため、その結果、量子化のために使うビットは少ない。しかし、ビットレートがより低い場合には、格子ベースのコードブックはあまり効率的でなくなる。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】A. Vasilache、B. DumitrescuおよびI. Tabus著、「多スケールリーダ格子VQ、およびLSF量子化へのその適用（Multiple-scale leader-lattice VQ with application to LSF quantization）」、Signal Processing、2002年、vol. 82、563−586ページ、Elsevier
【発明のいくつかの実施形態のまとめ】
【０００９】
構造化されたコードブックの利用によって、入力ベクトルのエンコードに必要なメモリ量および計算量はすでに低減されているが、例えば、特に、有声部分、無声部分、一般部分、移行部分またはCNG部分を含むオーディオ信号のための、各種の符号化モードに関しては、所要メモリ量および／または計算の複雑性のさらなる低減ならびに／あるいは量子化品質の向上が望まれる。
【００１０】
本発明の第1の態様の第1の例示的実施形態によれば、方法であって、前記方法は入力ベクトルの第1の量子化表現を決定することと、第1の量子化表現によって決まるコードブックに基づいて入力ベクトルの第2の量子化表現を決定することと、を含む、方法が開示される。
【００１１】
本発明の第1の態様の第2の例示的実施形態によれば、本発明の第1の態様に係る方法を遂行するように構成される装置、または入力ベクトルの第1の量子化表現を決定するための手段と、第1の量子化表現によって決まるコードブックに基づいて入力ベクトルの第2の量子化表現を決定するための手段と、を備える装置が開示される。
【００１２】
本発明の第1の態様の第3の例示的実施形態によれば、少なくとも1つのプロセッサと、コンピュータプログラムコードを含む少なくとも1つのメモリと、を備える装置であって、少なくとも1つのメモリおよびコンピュータプログラムコードは、少なくとも1つのプロセッサを用いて、装置に、本発明の第1の態様に係る方法を少なくとも遂行させるように構成される、装置が開示される。メモリ内に含まれるコンピュータプログラムコードは、例えば、プロセッサのためのソフトウェアおよび／またはファームウェアを少なくとも部分的に表現してもよい。メモリの非限定例は、プロセッサによってアクセス可能であるランダムアクセスメモリ（Random−Access Memory、RAM）またはリードオンリーメモリ（Read−Only Memory、ROM）である。
【００１３】
本発明の第1の態様の第4の例示的実施形態によれば、コンピュータプログラムがプロセッサ上で実行されると、本発明の第1の態様に係る方法を遂行するためのプログラムコードを含む、コンピュータプログラムが開示される。コンピュータプログラムは、例えば、例としてインターネット等の、ネットワークを介して配付可能であってもよい。コンピュータプログラムは、例えば、コンピュータ可読媒体内に記憶可能またはエンコード可能であってもよい。コンピュータプログラムは、例えば、プロセッサのソフトウェアおよび／またはファームウェアを少なくとも部分的に表現してもよい。
【００１４】
本発明の第1の態様の第5の例示的実施形態によれば、コンピュータ可読媒体であって、その上に本発明の第1の態様に係るコンピュータプログラムが記憶された、コンピュータ可読媒体が開示される。コンピュータ可読媒体は、例えば、電気的、磁気的、電磁的、光学的またはその他の記憶媒体として具体化されてもよく、取り外し可能な媒体、または装置もしくはデバイス内に固定的に搭載される媒体のいずれかであってよい。このようなコンピュータ可読媒体の非限定例はRAMまたはROMである。コンピュータ可読媒体は、例えば、有形媒体、例として、有形記憶媒体であってもよい。コンピュータ可読媒体は、例えば、プロセッサ等の、コンピュータによって可読であると理解される。
【００１５】
以下において、本発明のこれらの上述の態様の全てに関する特徴および実施形態が簡潔に要約される。
【００１６】
非限定例として、入力ベクトルは、入力信号の線スペクトル周波数（Line Spectral Frequencies、LSF）を含むベクトルを表現してもよい。この入力信号は、部分オーディオ信号、例えば、音声信号の部分または非音声信号の部分、を少なくとも表現してもよく、このオーディオ信号は、有声部分および／または無声部分および／または一般部分および／または移行部分および／またはCNG部分を含んでもよい。例えば、量子化される入力信号は、エンコードされるオーディオ信号の残差データを表現してもよい。
【００１７】
一例として、第1の量子化表現は、複数のコードベクトルに基づいて遂行される第1の量子化段階を用いて決定されてもよい。第1の量子化段階のこの複数のコードベクトルは第1段階コードブックを表現してもよい。
【００１８】
例えば、第1の量子化表現は、入力ベクトルを量子化するための複数のコードベクトルから選択されたコードベクトルを表現してもよい。別の例として、第1の量子化表現は、選択されたコードベクトルの識別子を表現してもよく、この識別子はコードベクトル添字を表現してもよい。そのため、例えば、第1の量子化表現がnビットを含み得る場合には、第1段階コードブックは最大で2n個のコードベクトルを含み得る。
【００１９】
次に、第1の量子化表現によって決まるコードブックに基づいて入力ベクトルの第2の量子化表現が決定される。
【００２０】
例えば、この第2の量子化表現は第2の量子化段階を用いて遂行されると仮定されてもよい。この第2の量子化段階は複数のコードブックに基づいて量子化を遂行してもよい。この複数のコードブックは各々、少なくとも1つのコードベクトルを含む。
【００２１】
第2段階における入力ベクトルの量子化のために用いられるコードブックは第1の量子化表現によって決まる。そのため、一例として、第2段階において用いられるコードブックは、入力ベクトルの第1の量子化表現に基づいて第2段階の複数のコードブックから選択されてもよい。
【００２２】
例えば、第1段階の複数のコードベクトルのうちのコードベクトルと第2段階の複数のコードブックのうちのコードブックとの間の対応付けが定義されて存在してもよい。したがって、このような対応付けが、第1段階の複数のコードベクトルの各コードベクトルと第2段階の複数のコードブックのうちのそれぞれのコードブックのために定義されてもよい。そのため、第1段階において選択されたコードベクトルを表現してもよい、または第1段階において選択されたコードベクトルの標識を表現してもよい、入力ベクトルの第1の量子化表現に基づいて、第2段階の複数のコードブックから、第2段階における量子化を遂行するためのコードブックが選択されてもよい。
【００２３】
例えば、第2段階のコードブックは格子コードブックを表現してもよい。
【００２４】
一例として、入力ベクトルの第1の量子化表現は、第1段階において選択されたコードベクトルを指示するコードベクトル添字を表現してもよい。次に、例えば、第1の量子化表現のコードベクトル添字に関連付けられた、複数のコードブックのうちのコードブックが選択される。例えば、第1段階の各コードベクトル添字は、第2段階の複数のコードブックのうちの対応するコードブックに関連付けられてもよい。
【００２５】
次に、選択されたコードブックに基づき、選択されたコードブックのコードベクトルが、例えば、歪みメトリックに基づいて、決定されてもよい。例えば、選択されたコードブックのコードベクトルは、入力ベクトルに対して最小の歪みを有する入力ベクトルの量子化のために決定されてもよい。ここで、歪みは歪みメトリックに基づいて求められる。一例として、歪みメトリックはコードベクトルと入力ベクトルとの間の距離を表現してもよい。例えば、ハミング距離もしくはユークリッド距離または任意のその他の距離が用いられてもよい。
【００２６】
そのため、適用された歪みメトリックに基づいて複数のコードベクトルのうちのコードベクトルが決定されてもよい。この決定は、例えば、複数のコードベクトルのうちの少なくとも1つのコードベクトルについて歪みを算出することを含んでもよく、決定された歪みメトリックに従い最小の歪みを有する、少なくとも1つのコードベクトルのうちのコードベクトルが量子化のために選択される。例えば、前記少なくとも1つのコードベクトルは、選択されたコードブックの複数のコードベクトルのうちの全てのコードベクトル、または選択されたコードブックの複数のコードベクトルのうちのコードベクトルのサブセットを表現してもよい。
【００２７】
本発明の第1のものの例示的実施形態によれば、入力ベクトルの第2の量子化表現を前記決定することは、第1の量子化表現に基づいて複数のコードブックのうちのコードブックを選択することを含む。
【００２８】
これは、第1段階において遂行された量子化に各々適合された特定のコードブック群が第2段階のために定義されてもよいという利点を示してよい。そのため、第2段階の複数のコードブックのうちの少なくとも1つのコードブックは、エンコードされるこのコードブックに関連付けられた特定の残差データに応じて調整された特定のコードブックを表現してもよく、これにより、符号化効率を向上させることができる。
【００２９】
本発明の第1のものの例示的実施形態によれば、入力ベクトルの第2の量子化表現を決定する前に、入力ベクトルは第1の量子化表現に基づいて正規化される。
【００３０】
例えば、前記正規化は、入力ベクトルの正規化された表現を得るために、入力ベクトルのベクトル成分に、入力ベクトルの第1の量子化表現によって決まる正規化係数を乗算することを含んでもよい。
【００３１】
正規化は第1の量子化表現に基づいて遂行される。例えば、正規化係数の複数のセットが定義されて存在してもよく、正規化係数の各セットは、入力ベクトルを正規化するために用いられる少なくとも1つの正規化係数を含み、入力ベクトルの第1の量子化表現に基づいて正規化係数の複数のセットから正規化係数の1つのセットが選択される。
【００３２】
例えば、第1段階の複数のコードベクトルのうちのコードベクトルと正規化係数の複数のセットのうちの正規化係数のセットとの間の対応付けが定義されて存在してもよい。したがって、このような対応付けが、第1段階の複数のコードベクトルのうちの各コードベクトルと複数の正規化係数のうちの正規化係数のそれぞれのセットのために定義されてもよい。そのため、第1段階において選択されたコードベクトルを表現してもよい、または第1段階において選択されたコードベクトルの標識を表現してもよい、入力ベクトルの第1の量子化表現に基づいて、正規化係数の複数のセットから、入力ベクトルの正規化を遂行するための正規化係数のセットが選択されてもよい。
【００３３】
一例として、入力ベクトルがn個のベクトル係数を含む場合には、正規化係数のセットはn個の正規化係数を含んでもよい。このとき、入力ベクトルの正規化は、入力ベクトルの複数のベクトル成分のうちのベクトル成分に、正規化係数の選択されたセットの関連正規化係数を乗算することによって遂行されてもよい。これは入力ベクトルの各ベクトル成分について遂行されてもよく、入力ベクトルの正規化された表現を得るために、それぞれのベクトル成分に正規化係数のセットのそれぞれの正規化係数が乗算される。
【００３４】
一例として、入力ベクトルの第1の量子化表現は、第1段階において選択されたコードベクトルを指示するコードベクトル添字を表現してもよい。次に、ステップ310では、第1の量子化表現のコードベクトル添字に関連付けられた、正規化係数の複数のセットのうちの正規化係数のセットが選択される。例えば、第1段階の各コードベクトル添字は、正規化係数の複数のセットのうちの正規化係数の対応するセットに関連付けられてもよい。
【００３５】
本発明の第1のものの例示的実施形態によれば、前記入力ベクトルは複数のベクトル成分を含み、前記正規化は、入力ベクトルの少なくとも1つのベクトル成分に、第1の量子化表現によって決まるそれぞれの正規化係数を乗算することを含む。
【００３６】
本発明の第1のものの例示的実施形態によれば、第1の量子化表現に基づいて正規化係数の複数のセットのうちの正規化係数のセットが選択され、入力ベクトルの少なくとも1つのベクトル成分のうちの1つに乗算されるそれぞれの正規化係数は、正規化係数の選択されたセットからのものとされる。
【００３７】
本発明の第1のものの例示的実施形態によれば、基底コードベクトルの関連付けられたセット、および関連付けられた少なくとも1つのスケール表象によってコードブックが定義され、関連付けられた少なくとも1つのスケール表象のうちのスケール表象によってスケーリングされた、基底コードベクトルの関連付けられたセットの基底コードベクトルによってコードブックのコードベクトルが定義される。
【００３８】
複数のコードブックの各コードブックは、基底コードベクトルの関連付けられたセット、および関連付けられた少なくとも1つのスケール表象によって定義される。
【００３９】
基底コードベクトルの各セットは少なくとも1つの基底コードベクトルを含む。基底コードベクトルの各セットは複数のスケール表象のうちの少なくとも1つのスケール表象に関連付けられるため、コードベクトルは、潜在基底コードベクトルのセットのうちの基底コードベクトル、および潜在基底コードベクトルのセットに関連付けられた少なくとも1つのスケール表象のうちのスケール表象に基づいて決定することができる。すなわち、コードベクトルは、それぞれのスケール表象によってスケーリングされた基底コードベクトルに基づいて表現されてもよい。例えば、スケール表象はスケール値を表現してもよく、コードベクトルは基底コードベクトルおよびそれぞれのスケール値の乗算に基づいて決定されてもよい。
【００４０】
例えば、基底コードベクトルの少なくとも1つのセットは少なくとも2つのスケール表象に関連付けられる。さらに、一例として、ただ1つのスケール表象がただ1つの基底コードベクトルのセットに関連付けられてもよい。
【００４１】
したがって、一例として、コードブックは、基底コードベクトルの複数のセットに基づき、かつ複数の基底コードベクトルのうちの基底コードベクトルのそれぞれのセットに関連付けられたそれぞれの少なくとも1つのスケール値に基づくコードベクトル群を含むコードベクトルのセットを含んでもよい。コードベクトルのこのセットは、基底コードベクトルの各セットの各基底コードベクトルにつき、および基底コードベクトルのそれぞれのセットに関連付けられた少なくとも1つのスケール表象の各々につき、それぞれのスケール表象によってスケーリングされたそれぞれの基底コードベクトルに基づくコードベクトルを含んでもよい。
【００４２】
例えば、基底コードベクトルの前記セット群はリーダクラス群を表現してもよく、各リーダクラスは、異なるリーダベクトル、および前記リーダベクトルの置換群を含む。そのため、前記リーダベクトル、および前記リーダベクトルの置換群は、基底コードベクトルのそれぞれのセットの基底コードベクトル群を表現してもよい。
【００４３】
基底コードベクトルの複数のセットは基底コードベクトルの第2の複数のセットのサブセットを表現してもよい。例えば、基底コードベクトルの各セットはリーダクラスを表現するとの仮定の下では、複数のリーダクラスは第2の複数のリーダクラスのサブセットを表現してもよい。そのため、複数のリーダクラスは、第2の複数のリーダクラスに対して、短縮された複数のリーダクラスと考えられてもよい。
【００４４】
例えば、基底コードベクトルの複数のセットが提供されて存在してもよい。ここで、x∈｛0, 1, ...X−1｝とする、各bxは、基底コードベクトルの複数のセットのうちの基底コードベクトルのセットを表現する。ここで、Xは基底コードベクトルの複数のセットのセットの数を表現する。基底コードベクトルの各セットは少なくとも1つの基底コードベクトルbx, yに関連付けられるかまたはそれを含む。ここで、Bxは基底コードベクトルのそれぞれのセットbxの基底コードベクトルの数を表現する。すなわち、y∈｛0, 1, ...Bx−1｝が成り立つ。例えば、基底コードベクトルのセットの基底コードベクトルの数Bxは基底コードベクトルのセットによって異なってもよく、および／またはそれは基底コードベクトルの少なくとも2つのセットについて同じであってもよい。
【００４５】
一例として、コードベクトルcx, z, yは、基底コードベクトルbx, yに基づき、かつスケール表象szに基づいて決定されてもよい。ここで、添字zは複数のスケール表象s0...sS−1のそれぞれのスケール表象の添字を表現する。すなわち、z∈｛0, 1, ...S−1｝が成り立つ。
【００４６】
例えば、t∈｛0, 1, ...n−1｝が成り立ち、nはそれぞれの基底コードベクトルbx, yの長さを表すとして、基底コードベクトルbx, y＝[bx, y, 0, bx, y, 1, ...、bx, y, n−1]の値bx, y, tが絶対値を表現する場合において、絶対値化された入力ベクトルが、基底コードベクトルのそれぞれのセットの潜在コードベクトルを決定するために用いられる場合には、図4cに例示的に示されるように、基底コードベクトルbx, yに基づき、かつスケール表象szに基づくコードベクトルcx, z, yの決定が遂行される前に、入力ベクトルiの（t＋1）番目の位置におけるそれぞれの値itの符号に基づいて、決定された最近傍の基底コードベクトルbx, yの（t＋1）番目の位置における各値bx, y, tの符号が付与されてもよい。一例として、i＝[i0, i1, ..., in−1]が入力ベクトルを表現する場合には、絶対値化された入力ベクトルは[|i0|, |i1|, ..., |in−1|]によって表現されてもよい。
【００４７】
例えば、決定された最近傍の基底コードベクトルbx, yの（t＋1）番目の位置における各値bx, y, tの符号は、入力ベクトルの（t＋1）番目の位置におけるそれぞれの値itの符号をそれぞれ付与されてもよく、これは、基底コードベクトルのセットbxの基底コードベクトルbx, yのパリティが0である場合に、成立し得る。別の例として、基底コードベクトルのセットbxの基底コードベクトルbx, yのパリティが−1である場合には、潜在基底コードベクトルの値bx, y, tの符号は、ベクトル内の同じ位置における入力ベクトルの値の符号に対応してそれぞれ付与されてもよく、負の成分が奇数個存在しない場合には、最小の非ヌル絶対値を有する潜在基底コードベクトル内の値bx, y, tはその符号を変更してもよい。あるいは、別の例として、基底コードベクトルのセットbxの基底コードベクトルbx, yのパリティが＋1である場合には、潜在基底コードベクトルの値bx, y, tの符号は、ベクトル内の同じ位置における入力ベクトルの値の符号に対応してそれぞれ付与されてもよく、負の成分が偶数個存在しない場合には、最小の非ヌル絶対値を有する潜在基底コードベクトル内の値bx, y, tはその符号を変更してもよい。
【００４８】
非限定例として、コードベクトルcx, z, yは、基底コードベクトルに基づきbxによって、かつスケール表象szに基づきcx, z, y＝[bx, y, 0・sz, bx, y, 1・sz, ..., bx, y, n−1・sz]によって決定されてもよい。
【００４９】
z∈｛0, 1, ...S−1｝が成り立つとして、スケール表象szの各々は基底コードベクトルの少なくとも1つのセットに関連付けられる。例えば、非限定例として、基底コードベクトルのこのそれぞれの少なくとも1つのセットは基底コードベクトルのセットbxによって表現されてもよい。ただし、x∈｛0, 1, ...nz−1｝であり、nzは、それぞれのスケール表象szに関連付けられた基底コードベクトルのセットの数を表現してもよい。ただし、0＜nz＜Xが成り立つ。それぞれのスケール表象szと、x∈｛0, 1, ...nz−1｝とする、基底コードベクトルの関連付けられた少なくとも1つのセットbxとの間のこの連係に基づいて、x∈｛0, 1, ...nz−1｝およびy∈｛0, 1, ...Bx−1｝およびz∈｛0, 1, ...S−1｝とする、コードベクトルの関連付けられた少なくとも1つのセットcx, z, yを決定することができる。
【００５０】
そのため、一例として、上述のコードブックのコードブック構造は、複数のスケール表象sz、基底コードベクトルの複数のセットbx、および各スケール表象と、基底コードベクトルの関連付けられた少なくとも1つのセットとの間の連係によって定義されてもよい。
【００５１】
基底コードベクトルの少なくとも1つのセット、例えば、少なくとも基底コードベクトルのセットb0、は少なくとも2つのスケール表象に関連付けられるため、基底コードベクトルの同じセットを、第1のスケール表象に関連付けられたコードベクトルの少なくとも1つのセットのコードベクトル群を構築するために用い、少なくとも1つのさらなるスケール表象に関連付けられたコードベクトルの少なくとも1つのセットのコードベクトル群を構築するために用いることができる。
【００５２】
本発明の第1のものの例示的実施形態によれば、前記入力ベクトルは、ビデオ信号、画像信号、オーディオ信号および音声信号のうちの少なくとも1つを少なくとも部分的に表現する。
【００５３】
そのため、前記リーダベクトル、および前記リーダベクトルの置換群は、基底コードベクトルのそれぞれのセットの基底コードベクトル群を表現してもよい。
【００５４】
本発明の第2の態様の第1の例示的実施形態によれば、方法であって、前記方法は、ベクトルの第1の量子化表現に基づいて複数のコードブックのうちのコードブックを選択することと、選択されたコードブックに基づいてベクトルの第2の量子化表現を逆量子化することと、を含む、方法が開示される。
【００５５】
本発明の第2の態様の第2の例示的実施形態によれば、本発明の第2の態様に係る方法を遂行するように構成される装置、またはベクトルの第1の量子化表現に基づいて複数のコードブックのうちのコードブックを選択するための手段と、選択されたコードブックに基づいてベクトルの第2の量子化表現を逆量子化するための手段と、を備える装置が開示される。
【００５６】
本発明の第2の態様の第3の例示的実施形態によれば、少なくとも1つのプロセッサと、コンピュータプログラムコードを含む少なくとも1つのメモリとを備える装置であって、少なくとも1つのメモリおよびコンピュータプログラムコードは、少なくとも1つのプロセッサを用いて、装置に、本発明の第2の態様に係る方法を少なくとも遂行させるように構成される、装置が開示される。メモリ内に含まれるコンピュータプログラムコードは、例えば、プロセッサのためのソフトウェアおよび／またはファームウェアを少なくとも部分的に表現してもよい。メモリの非限定例は、プロセッサによってアクセス可能であるランダムアクセスメモリ（RAM）またはリードオンリーメモリ（ROM）である。
【００５７】
本発明の第2の態様の第4の例示的実施形態によれば、コンピュータプログラムがプロセッサ上で実行されると、本発明の第2の態様に係る方法を遂行するためのプログラムコードを含む、コンピュータプログラムが開示される。コンピュータプログラムは、例えば、例としてインターネット等の、ネットワークを介して配付可能であってもよい。コンピュータプログラムは、例えば、コンピュータ可読媒体内に記憶可能またはエンコード可能であってもよい。コンピュータプログラムは、例えば、プロセッサのソフトウェアおよび／またはファームウェアを少なくとも部分的に表現してもよい。
【００５８】
本発明の第2の態様の第5の例示的実施形態によれば、コンピュータ可読媒体であって、その上に本発明の第2の態様に係るコンピュータプログラムが記憶された、コンピュータ可読媒体が開示される。コンピュータ可読媒体は、例えば、電気的、磁気的、電磁的、光学的またはその他の記憶媒体として具体化されてもよく、取り外し可能な媒体、または装置もしくはデバイス内に固定的に搭載される媒体のいずれかであってよい。このようなコンピュータ可読媒体の非限定例はRAMまたはROMである。コンピュータ可読媒体は、例えば、有形媒体、例として、有形記憶媒体であってもよい。コンピュータ可読媒体は、例えば、プロセッサ等の、コンピュータによって可読であると理解される。
【００５９】
例えば、本発明の第2の態様に係るこの方法は、本発明の第1の態様の諸実施形態のいずれかによって量子化された入力ベクトルを逆量子化するために用いられてもよい。
【００６０】
ベクトルの第1の量子化表現に基づいて複数のコードブックのうちのコードブックが選択される。この第1の量子化表現は、本発明の第1の態様に関して説明されている入力ベクトルの第1の量子化表現のいずれかを表現してもよい。コードブックのこの選択は、本発明の第1の態様に関して説明されているように遂行されてもよい。
【００６１】
例えば、複数のコードブックは、本発明の第1の態様において用いられる複数のコードブックを表現し、第1の量子化表現は、本発明の第1の態様における第2段階量子化のために用いられるコードブックを指示する。
【００６２】
次に、選択されたコードブックに基づいてベクトルの第2の量子化表現が逆量子化される。この第2の量子化表現は、本発明の第1の態様に関して説明されている入力ベクトルの第2の量子化表現のいずれかを表現してもよい。
【００６３】
そのため、選択されたコードブックに従って、本発明の第1の態様の第2段階量子化の逆の量子化を遂行することができる。したがって、本発明の第1の態様における第2段階量子化に関して与えられている説明は全て本発明の第2の態様の逆量子化にも適用できる。
【００６４】
逆量子化されたベクトルの第2の量子化表現は、このとき、本発明の第1の態様の入力ベクトルに対応してもよい。
【００６５】
本発明の第2の態様の例示的実施形態によれば、ベクトルの第1の量子化表現に基づく正規化表現が決定され（または選択され）、正規化表現に基づくベクトルの正規化が元に戻される。
【００６６】
本発明の第1の態様において入力ベクトルの正規化が遂行された場合には、第2の態様は、第1の量子化表現に基づく選択された正規化表現によるこの正規化を元に戻すことを含んでもよい。
【００６７】
例えば、前記入力ベクトルは複数のベクトル成分を含んでもよく、前記逆正規化は、逆量子化された入力ベクトルの少なくとも1つのベクトル成分を、第1の量子化表現によって決まるそれぞれの正規化係数で除算することを含んでもよい。
【００６８】
一例として、本発明の第1の態様に関して説明されているように、第1の量子化表現に基づいて正規化係数の複数のセットから正規化係数のセットが選択されてもよく、逆量子化された入力ベクトルの少なくとも1つのベクトル成分のうちの1つに対して除算されるそれぞれの正規化係数は、正規化係数の選択されたセットからのものとされる。
【００６９】
例えば、本発明の第1の態様に関して提示されているあらゆる説明は本発明の第2の態様にも適用できてよい。
【００７０】
本発明の第3の態様の第1の例示的実施形態によれば、方法であって、前記方法は、ベクトル成分に基づく規則に従って入力ベクトルの複数のベクトル成分をベクトル成分の少なくとも2つのグループにグループ分けすること、ただし、ベクトル成分の少なくとも2つのグループの各グループは複数のベクトル成分のうちの少なくとも1つのベクトル成分を含む、グループ分けすることと、ベクトル成分の少なくとも2つのグループのうちの少なくとも1つについて、ベクトル成分のグループに関連付けられたコードブックに基づいてベクトル成分のそれぞれのグループの量子化表現を決定することと、を含む、方法が開示される。
【００７１】
本発明の第3の態様の第2の例示的実施形態によれば、本発明の第3の態様に係る方法を遂行するように構成される装置、またはベクトル成分に基づく規則に従って入力ベクトルの複数のベクトル成分をベクトル成分の少なくとも2つのグループにグループ分けするための手段、ただし、ベクトル成分の少なくとも2つのグループの各グループは複数のベクトル成分のうちの少なくとも1つのベクトル成分を含む、グループ分けするための手段と、ベクトル成分の少なくとも2つのグループのうちの少なくとも1つについて、ベクトル成分のグループに関連付けられたコードブックに基づいてベクトル成分のそれぞれのグループの量子化表現を決定するための手段と、を含む装置が開示される。
【００７２】
本発明の第3の態様の第3の例示的実施形態によれば、少なくとも1つのプロセッサと、コンピュータプログラムコードを含む少なくとも1つのメモリとを備える装置であって、少なくとも1つのメモリおよびコンピュータプログラムコードは、少なくとも1つのプロセッサを用いて、装置に、本発明の第3の態様に係る方法を少なくとも遂行させるように構成される、装置が開示される。メモリ内に含まれるコンピュータプログラムコードは、例えば、プロセッサのためのソフトウェアおよび／またはファームウェアを少なくとも部分的に表現してもよい。メモリの非限定例は、プロセッサによってアクセス可能であるランダムアクセスメモリ（RAM）またはリードオンリーメモリ（ROM）である。
【００７３】
本発明の第3の態様の第4の例示的実施形態によれば、コンピュータプログラムがプロセッサ上で実行されると、本発明の第3の態様に係る方法を遂行するためのプログラムコードを含む、コンピュータプログラムが開示される。コンピュータプログラムは、例えば、例としてインターネット等の、ネットワークを介して配付可能であってもよい。コンピュータプログラムは、例えば、コンピュータ可読媒体内に記憶可能またはエンコード可能であってもよい。コンピュータプログラムは、例えば、プロセッサのソフトウェアおよび／またはファームウェアを少なくとも部分的に表現してもよい。
【００７４】
本発明の第3の態様の第5の例示的実施形態によれば、コンピュータ可読媒体であって、その上に本発明の第3の態様に係るコンピュータプログラムが記憶された、コンピュータ可読媒体が開示される。コンピュータ可読媒体は、例えば、電気的、磁気的、電磁的、光学的またはその他の記憶媒体として具体化されてもよく、取り外し可能な媒体、または装置もしくはデバイス内に固定的に搭載される媒体のいずれかであってよい。このようなコンピュータ可読媒体の非限定例はRAMまたはROMである。コンピュータ可読媒体は、例えば、有形媒体、例として、有形記憶媒体であってもよい。コンピュータ可読媒体は、例えば、プロセッサ等の、コンピュータによって可読であると理解される。
【００７５】
入力ベクトルは複数のベクトル成分を含む。
【００７６】
非限定例として、入力ベクトルは、入力信号の線スペクトル周波数（LSF）を含むベクトルを表現してもよい。この入力信号は、部分オーディオ信号、例えば、音声信号の部分または非音声信号の部分、を少なくとも表現してもよく、このオーディオ信号は、有声部分および／または無声部分および／または一般部分および／または移行部分および／またはCNG部分を含んでもよい。例えば、量子化される入力信号は、エンコードされるオーディオ信号の残差データ、例えば、線スペクトル周波数（LSF）ベクトルの残差を表現してもよい。
【００７７】
一例として、入力ベクトルは、x∈｛0, 1, ...k−1｝とするk個のベクトル成分ixを含むベクトルi＝[i0, i1, ..., ik]として定義されてもよい。その他の表現も同様に用いられてよいことを理解されたい。
【００７８】
次に、入力ベクトルの前記複数のベクトル成分は、ベクトル成分に基づく規則に従ってベクトル成分の少なくとも2つのグループにグループ分けされる。
【００７９】
一例として、ベクトル成分の少なくとも2つのグループの各グループは既定数のベクトル成分を含むと定義されてもよい。例えば、複数のベクトル成分の各ベクトル成分は、ベクトル成分の少なくとも2つのグループのそれぞれのグループに関連付けられてもよい。すなわち、ベクトル成分の少なくとも2つのグループのベクトル成分群は複数のベクトル成分を表現するか、または、別の例として、ベクトル成分の少なくとも2つのグループのベクトル成分群は複数のベクトル成分のうちのベクトル成分のサブセットを表現してもよい。
【００８０】
一例として、前記規則は、ベクトル成分に関連付けられたエネルギー値に基づく規則を表現してもよい。例えば、前記規則は、ベクトル成分の少なくとも2つのグループの各々のベクトル成分は既定のエネルギー特性を満たさなければならないことを指定してもよい。一例として、この規則は、ベクトル成分の少なくとも2つのグループのうちのグループのベクトル成分群は同様のエネルギー値を有してもよいと定義してもよく、および／または、例えば、前記規則は、ベクトル成分の少なくとも2つのグループのうちの第1のグループであって、この第1のグループはl1＜k個のベクトル成分を含む、第1のグループは、複数のベクトル成分のうちのl1個の最もエネルギーが高いベクトル成分またはよりエネルギーが低いベクトル成分を含み、それに対して、複数のベクトル成分のうちの残りのk−l1個のベクトル成分は、ベクトル成分の第1のグループを表現しないベクトル成分の少なくとも2つのグループのうちの残りの少なくとも1つのグループに関連付けられることを指定してもよい。
【００８１】
一例として、それぞれのベクトル成分に関連付けられたエネルギー値は、例えば、それぞれのベクトル成分のエネルギー値、またはそれぞれのベクトル成分のエネルギー値に比例する値、またはこのベクトル成分に関連付けられた重み係数で加重されたそれぞれのベクトル成分のエネルギー値を表現するエネルギー値、またはこのベクトル成分に関連付けられた重み係数で加重されたそれぞれのベクトル成分のエネルギー値を表現するエネルギー値に比例する値、または複数のベクトル成分のうちの残りのベクトル成分のエネルギーランク（rank）に対するそれぞれのベクトル成分のエネルギーランクを表現してもよい。例えば、複数のベクトル成分の最低エネルギー値に関連付けられるベクトル成分は最低エネルギーランク、例えばrank＝1またはrank＝k、に関連付けられてもよく、複数のベクトル成分の最高エネルギー値に関連付けられるベクトル成分は最高エネルギーランク、例えばrank＝kまたはrank＝1、に関連付けられてもよい。そのため、ベクトル成分のエネルギーランクは、複数のベクトル成分のうちの全ての他の残りのベクトル成分のエネルギーと比較した、それぞれのベクトル成分のそのエネルギーに関する位置を指示してもよい。
【００８２】
x∈｛0, 1, ...k−1｝とするベクトル成分ixのエネルギー値exは、例えば、
ex＝ix＾2
に基づくか、またはエネルギー値の任意のその他の適切な定義に基づいて算出されてもよい。
【００８３】
x∈｛0, 1, ...k−1｝とするベクトル成分ixが、対応する重み係数wxで加重される場合には、このとき、対応する重み係数で加重されたエネルギー値は、例えば、次式に基づいて算出されてもよいであろう。
ex＝wxix＾2
【００８４】
例えば、前記複数のベクトル成分をベクトル成分の少なくとも2つのグループにグループ分けすることは、ベクトル成分の前記少なくとも2つのグループの初期定義による初期化を含んでもよく、ベクトル成分の前記少なくとも2つのグループのうちのグループの各々は、入力ベクトルの複数のベクトル成分のうちのベクトル成分群の、ベクトル成分の少なくとも2つのグループへの初期対応付けに従って、複数のベクトル成分のうちの少なくとも1つのベクトル成分を含み、ベクトル成分の少なくとも2つのグループのうちの異なるグループのベクトル成分群は、ベクトル成分群に関連付けられたエネルギー値に基づく規則が満たされるまで、すなわち、ベクトル成分の少なくとも2つのグループの各グループのベクトル成分群がこの規則を満たすまでずっと、異なるグループの間で入れ換えられる。例えば、前記初期対応付けは複数の入力ベクトルについて同じ仕方で遂行されてもよく、そのため、初期対応付けは複数の入力ベクトルについて同じであってもよい。一例として、初期対応付け方式は訓練例内のベクトル成分群の平均エネルギーに基づいて決定されてもよく、その後、この初期対応付け方式は、複数の入力ベクトルについての、入力ベクトルの複数のベクトル成分のうちのベクトル成分群の、ベクトル成分の少なくとも2つのグループへの上述の初期対応付けのために用いられる。
【００８５】
あるいは、別の例として、入力ベクトルの複数のベクトル成分のうちのベクトル成分群の、ベクトル成分の少なくとも2つのグループへの前記初期対応付けは、ベクトル成分群に関連付けられたエネルギー値に基づく規則に従ってベクトル成分群がベクトル成分の少なくとも2つのグループに対応付けられる仕方で遂行されてもよい。そのため、対応付けアルゴリズムは、複数のベクトル成分のうちのベクトル成分群をベクトル成分の少なくとも2つのグループに対応付ける際に、規則を考慮してもよい。
【００８６】
グループ分けが遂行された後には、ベクトル成分群の少なくとも2つのグループの各グループのベクトル成分群は、複数のベクトル成分のうちのベクトル成分群に関連付けられたエネルギー値に基づく規則を満たす。
【００８７】
次に、ベクトル成分の少なくとも2つのグループのうちの少なくとも1つのグループの各グループについて、ベクトル成分のそれぞれのグループに関連付けられたコードブックに基づいてベクトル成分のそれぞれのグループの量子化表現が決定される。その結果、ベクトル成分の少なくとも1つのグループの少なくとも1つの量子化表現が決定され、ベクトル成分の少なくとも1つのグループの少なくとも1つの量子化表現の各々は、ベクトル成分の少なくとも1つのグループのうちのベクトル成分の対応するグループに関連付けられる。例えば、ベクトル成分の少なくとも2つのグループの各グループが量子化されてもよい。
【００８８】
例えば、ベクトル成分の少なくとも1つのグループの各々を量子化するために、同じコードブックが用いられてもよい。
【００８９】
あるいは、別の例として、量子化されるベクトル成分の少なくとも1つのグループのうちのベクトル成分のグループを量子化するために用いられるコードブックは、ベクトル成分のそれぞれのグループのコードベクトルに依存して複数のコードブックから選ばれてもよい。そのため、例えば、より低い／低いエネルギー値に関連付けられたベクトル成分群を含むベクトル成分のグループは、低エネルギーベクトル成分群のために最適化されたコードブックに基づいて量子化されてもよく、それに対して、より高い／高いエネルギー値（例えば、より低い／低いエネルギー値に関連付けられたベクトル成分を含むベクトル成分のグループのようにより高いエネルギー値）に関連付けられたベクトル成分を含むベクトル成分のグループは、高エネルギーベクトル成分群のために最適化されたコードブックに基づいて量子化されてもよい。その結果、例えば、量子化されるベクトル成分の少なくとも1つのグループのうちのそれぞれのグループを量子化するために適切なコードブックが選択されてもよい。そのため、一例として、ベクトル成分の少なくとも2つのグループのベクトル成分群に関連付けられたエネルギー値に基づく規則が満たされた結果、ベクトル成分のそれぞれのグループの特定のエネルギー特性が、複数のコードブックのうちの選択されるそれぞれのコードブックのために用いられてもよい。ここで、複数のコードブックのうちのコードブック群は、ベクトル成分の異なるエネルギー特性に応じて最適化されていてもよい。
【００９０】
例えば、エンコードされる少なくとも2つのグループのうちの少なくとも1つのグループの各々は、本発明の第1の態様に係る2段階量子化を適用することによってエンコードされてもよい。
【００９１】
得られたコードベクトルの少なくとも2つのグループのうちのコードベクトルの少なくとも1つのグループの少なくとも1つの量子化表現は、本発明の第1の態様に係る入力ベクトルの第2の量子化表現と考えられてもよい。
【００９２】
本発明の第3の態様の例示的実施形態によれば、前記規則は、ベクトル成分に関連付けられたエネルギー値に基づく規則、およびベクトル成分に関連付けられた既定のノルムに基づく規則のうちの1つである。
【００９３】
例えば、規則が、ベクトル成分群に関連付けられた既定のノルムに基づく規則を表現する場合には、この規則は、ベクトル成分の少なくとも2つのグループのうちのグループのベクトル成分群は特定のノルムを満たしてもよいか、または特定のノルムに基づく既定の範囲内にあると定義してもよく、このノルムは、例えば、p≧1が成り立つとして、対応するLp空間のそれぞれのLpノルム、または任意のその他の適切なノルムを表現してもよい。
【００９４】
例えば、規則は、ベクトル成分の少なくとも2つのグループのうちの第1のグループのベクトル成分群に適用される特定のノルムは第1の既定の範囲内にある、ベクトル係数の少なくとも2つのグループのうちの第2のグループのベクトル成分に適用される特定のノルムは第2の既定の範囲内にある、および以下同様である、ただし、第1および第2の既定の範囲は互いに異なる、と定義してもよい。
【００９５】
一例として、ベクトル成分の少なくとも2つのグループは、x∈｛1, 2, ...n｝、n≧2とする、ベクトル成分のn個のグループgxを表現し、ベクトル成分の少なくとも2つのグループのうちのx番目のグループgxは入力ベクトルの複数のベクトル係数のうちのlx個のベクトル係数を含み、前記規則は、x番目のグループgxのlx個のベクトル係数の特定のノルムは、このx番目のグループgxに関連付けられた既定の範囲rx内にあることを指定する。そのため、複数のxの範囲lxが定義されてもよく、それぞれのx番目のグループgxに関連付けられた各範囲rxは、異なる範囲を表現してもよい。
【００９６】
例えば、特定のノルムがlpノルムを表現し、x番目のグループgxのlx個のベクトル係数がgx, 0, gx, 1, ..., gx, lx−1と表されてもよい場合には、このノルムは、x番目のグループgxのlx個のベクトル係数について以下のように算出されてもよい：
【００９７】
【数１】
0006475273.tif 000002
【００９８】
例えば、l1ノルム（すなわち、p＝1）が用いられてもよく、またはl2ノルム（すなわち、p＝2）が用いられてもよく、または任意のその他の適切なノルムが用いられてもよい。
【００９９】
本発明の第3の態様の例示的実施形態によれば、前記規則は、ベクトル成分の少なくとも2つのグループの各々のベクトル成分群は既定のエネルギー特性を満たさなければならないことを指定する。
【０１００】
一例として、この規則は、ベクトル成分の少なくとも2つのグループのうちのグループのベクトル成分群は同様のエネルギー値を有してもよいと定義してもよく、および／または、例えば、前記規則は、ベクトル成分の少なくとも2つのグループのうちの第1のグループであって、この第1のグループはl1＜k個のベクトル成分を含む、第1のグループは、複数のベクトル成分のうちのl1個の最もエネルギーが高いベクトル成分またはよりエネルギーが低いベクトル成分を含み、それに対して、複数のベクトル成分のうちの残りのk−l1個のベクトル成分は、ベクトル成分の第1のグループを表現しないベクトル成分の少なくとも2つのグループのうちの残りの少なくとも1つのグループに関連付けられることを指定してもよい。
【０１０１】
そのため、ベクトル成分のエネルギー値によって決まる任意の適切な既定のエネルギー特性が用いられてもよい。例えば、この規則によれば、エネルギー値の少なくとも2つのグループの各グループの係数は特定のエネルギー特性を満たし、ベクトル成分の少なくとも2つのグループの各グループは複数の（例えば異なる）エネルギー特性のうちのそれぞれのエネルギー特性に関連付けられてもよい。
【０１０２】
例えば、少なくとも2つのグループのそれぞれのグループ内のベクトル係数の順序は、適用された規則にとって無意味であってもよい。
【０１０３】
本発明の第3の態様の例示的実施形態によれば、前記規則は、ベクトル成分の少なくとも2つのグループのうちの第1のグループの各ベクトル成分のそれぞれのベクトル成分に関連付けられたエネルギー値は、ベクトル成分の少なくとも2つのグループのうちの残りのグループの各グループの各ベクトル成分のそれぞれのベクトル成分に関連付けられたエネルギー値よりも高いことを指定する。
【０１０４】
例えば、前記規則は、ベクトル成分の少なくとも2つのグループのうちの第1のグループは、複数のベクトル成分のうちのl1個の最もエネルギーの高いベクトル成分（またはl1個のよりエネルギーの低いベクトル成分）を含み、それに対して、複数のベクトル成分のうちの残りのk−l1個のベクトル成分は、ベクトル成分の第1のグループを表現しないベクトル成分の少なくとも2つのグループのうちの残りの少なくとも1つのグループに関連付けられることを指定してもよいと仮定されてもよい。さらに、一例として、この規則によれば、ベクトル成分の少なくとも2つのグループのうちの第2のグループは、複数のベクトル成分のうちの残りのk−l1個のベクトル成分のうちのl2個の最もエネルギーの高いベクトル成分（またはl2個のよりエネルギーの低いベクトル成分）を含んでもよい。
【０１０５】
本発明の第3の態様の例示的実施形態によれば、ベクトル成分の少なくとも2つのグループは、x∈｛1, 2, ...n｝、n≧2とする、ベクトル成分のn個のグループを表現し、ベクトル成分の少なくとも2つのグループのうちのx番目のグループgxは入力ベクトルの複数のベクトル係数のうちのlx個のベクトル係数を含み、前記規則は、x番目のグループgxのlx個のベクトル係数は、複数のベクトル係数のうちの
【０１０６】
【数２】
0006475273.tif 000003
【０１０７】
番目から
【０１０８】
【数３】
0006475273.tif 000004
【０１０９】
にエネルギーの高い（またはエネルギーの低い）ベクトル係数を表現することを指定する。
【０１１０】
本発明の第3の態様の例示的実施形態によれば、入力ベクトルの前記複数のベクトル成分をベクトル成分の少なくとも2つのグループに前記グループ分けすることは、入力ベクトルをベクトル成分の前記少なくとも2つのグループに分割することと、ベクトル係数の少なくとも2つのグループの各グループが規則を満たすまで、ベクトル成分の少なくとも2つのグループのうちの第1のグループのベクトル成分をベクトル成分の少なくとも2つのグループのうちの第2のグループのベクトル成分と入れ換えることと、を含む。
【０１１１】
例えば、以下のように限定されるわけではないが、入力ベクトルは、k個のベクトル成分を含むベクトルを表現すると仮定されてもよく、このベクトルはベクトル成分の2つのグループg1およびg2に分割される：
【０１１２】
【数４】
0006475273.tif 000005
【０１１３】
次に、ベクトル成分の少なくとも2つのグループの各グループは規則を満たすかどうかがチェックされてもよい。
【０１１４】
少なくとも2つのグループの各々が規則を満たす場合には、このとき、ベクトル係数の少なくとも2つのグループのうちの2つの異なるグループの間でベクトル係数を再配列する必要はなく、分割によって得られた少なくとも2つのグループは、ベクトル成分の少なくとも2つのグループのうちの少なくとも1つのグループの前記量子化表現を決定するために用いることができる。
【０１１５】
例えば、少なくとも1つのグループのうちの少なくとも1つのグループは規則を満たさないと判定される場合もあり、それは、少なくとも2つのグループのうちの第1のグループのベクトル成分と、ベクトル成分の少なくとも2つのグループのうちの第2のグループのベクトル成分との入れ換えへ進められてもよい。
【０１１６】
例えば、この入れ換えは、第1のグループ、および入れ換えられる第1のグループのそれぞれのベクトル係数、ならびに対応する第2のグループ、および入れ換えられる第2のグループのそれぞれのベクトル係数は、規則に基づいて、入れ換え後に規則が満たされるように選ばれるか、あるいは、規則を満たすためには1対を超える係数を入れ換えなければならない場合には、選択された第1のグループの選択されたベクトル係数および選択された第2のグループの選択されたベクトル係数は、規則を満たすために入れ換えられる1対を超える係数のうちの1対の係数を表現するように、選ばれる仕方で遂行されてもよい。
【０１１７】
一例として、ベクトル係数の第1のグループg1のil1−1をベクトル係数の第2のグループのil1と入れ換えることが必要となる場合があり、この入れ換えによって、以下のようにベクトル係数の再配列されたグループができてもよい：
【０１１８】
【数５】
0006475273.tif 000006
【０１１９】
そのため、一例として、ベクトル係数の前記少なくとも2つのグループの各グループは、入力ベクトルのベクトルiの定位置に関連付けられてもよく、前記入れ換えは、ベクトルi内の入れ換えられるベクトル係数の位置を交換することによって遂行されてもよく、ベクトルi'は入れ換え後の入力ベクトルのベクトルを表現してもよい。
【０１２０】
次に、ベクトル係数の少なくとも2つのグループの各グループは規則を満たすかどうかがチェックされてもよい。いいえである場合には、このとき、本方法は、満たされるべき規則に従って異なるグループの2つのベクトル係数を互いに入れ換えることへ再度進んでもよい。その結果、前記入れ換えは、規則が満たされるまで遂行されてもよい。
【０１２１】
本発明の第3の態様の例示的実施形態によれば、第1のサブベクトルのベクトル成分を第2のサブベクトルのベクトル成分と前記入れ換えることは、ベクトル成分の第1のグループの第1のベクトル成分を決定すること、ただし、この第1のベクトル成分は規則を満たさない、決定することと、ベクトル成分の第2のグループの第2のベクトル成分を決定すること、ただし、ベクトル成分の第1のグループの第1のベクトル成分がこのベクトル成分の第2のグループの第2のベクトル成分と入れ換えられると、ベクトル成分の第1のグループは規則を満たすであろう、決定することと、第1のサブベクトルの第1のベクトル成分を第2のサブベクトルの第2のベクトル成分と入れ換えることと、を含む。
【０１２２】
本発明の第3の態様の例示的実施形態によれば、ベクトル成分の少なくとも2つのグループに基づいて複数のベクトル成分を含む入力ベクトルを決定するように構成される情報が決定される。
【０１２３】
例えば、前記情報は、ベクトル成分の少なくとも2つのグループのうちの異なるグループのベクトル成分の間で遂行された任意選択的な入れ換えに関する情報を含んでもよい。その結果、一例として、受信機では、ベクトル成分の少なくとも2つのグループの初期の2つのグループを得るために、前記入れ換えが逆順序で行われてもよい。初期の2つのグループは規則を満たさなくてもよいが、入力ベクトルを再構築するために用いることができる。例えば、複数のベクトル成分に基づいてベクトル成分の前記初期の少なくとも2つのグループを定義することは、受信機に知られていてもよい既定の様式で遂行されてもよい。
【０１２４】
ベクトル成分の少なくとも2つのグループに基づいて複数のベクトル成分を含む入力ベクトルを決定するように構成されるこの情報は、入力ベクトルの前記第2の量子化表現内に追加情報として含まれてもよい。
【０１２５】
あるいは、別の例として、第3の態様における、入力ベクトルの複数のベクトル成分のうちのベクトル成分群の、ベクトル成分の少なくとも2つのグループへの初期対応付けが、ベクトル成分群が、ベクトル成分群に関連付けられたエネルギー値に基づく規則に従ってベクトル成分の少なくとも2つのグループに対応付けられる（すなわち、前記入れ換えを行わない）仕方で遂行された場合には、ベクトル成分の少なくとも2つの逆量子化されたグループに基づいて複数のベクトル成分を含む入力ベクトルを決定するように構成される情報は、この対応付けを指示してもよい。
【０１２６】
例えば、先行入力ベクトルの、ベクトル成分の少なくとも2つのグループへのグループ分けに関する情報は、入力ベクトルをベクトル成分の少なくとも2つのグループにグループ分けするために考慮されなくてもよいため、上述のグループ分けは、先行入力ベクトルのグループ分けを用いないグループ分けと考えられてもよい。
【０１２７】
本発明の第3の態様の例示的実施形態によれば、入力ベクトルの複数のベクトル成分を前記グループ分けすることは、先行入力ベクトルの複数のベクトル成分のグループ分けに基づいて遂行される。
【０１２８】
例えば、現在の入力ベクトルがn番目の入力ベクトルを表現する場合には、前記先行入力ベクトルはn−1の入力ベクトルを表現してもよい。先行入力ベクトルの複数のベクトル成分のグループ分けは本発明の第3の態様に従って遂行されたと仮定される。
【０１２９】
一例として、現在の入力ベクトルの前記グループ分けは、先行入力ベクトルに対して遂行されたグループ分けと同じ仕方で初期に遂行されてもよい。次に、規則が満たされるかどうかがチェックされてもよい。
【０１３０】
規則が満たされる場合には、現在の入力ベクトルのこのグループ分けは、先行入力ベクトルの場合と同じ仕方で遂行される。すなわち、初期グループ分けに対する変更は遂行されなくてもよい。そのため、受信機は現在の入力ベクトルのために先行入力ベクトルの場合と同じグループ分け解除を用いることができるため、例えば、このグループ分けに関する追加情報、例えば、ベクトル成分の少なくとも2つのグループに基づいて複数のベクトル成分を含む入力ベクトルを決定するように構成される前記上述の情報は送信される必要はない。例えば、このグループ分けに関する追加情報の送信の前記不在は、送信された前記情報は、現在の入力ベクトルを決定するように構成されることを含んでもよく、この情報は、入れ換えの変更は遂行されないことを指示してもよい。
【０１３１】
規則が満たされない場合には、例えば、初期に遂行された、ベクトル成分の前記少なくとも2つのグループへのグループ分けに基づいて、規則が満たされるまで、ベクトル成分の前記初期にグループ分けされた少なくとも2つのグループのうちのベクトル成分の2つの異なるグループの間のベクトル成分群が互いに入れ換えられる。このとき、一例として、ベクトル成分の前記初期にグループ分けされた少なくとも2つのグループのベクトル成分群に対して遂行されたこの入れ換えに関する情報のみが、ベクトル成分の少なくとも2つのグループに基づいて複数のベクトル成分を含む入力ベクトルを決定するように構成される前記上述の情報として送信されてもよい。これは、受信機は、前記先行入力ベクトルの初期グループ分けを用いることができ、次に、現在の入力ベクトルを決定するように構成される情報に基づいて前記さらなるグループ分けを遂行することができるためである。
【０１３２】
そのため、現在の入力ベクトルを決定するように構成される前記情報は、先行入力ベクトルのベクトル成分の少なくとも2つのグループのグループ分けに対する、現在の入力ベクトルのベクトル成分の少なくとも2つのグループのグループ分けにおける変更を指示する差分グループ分け情報と考えられてもよい。
【０１３３】
例えば、先行入力ベクトルのベクトル成分の少なくとも2つのグループの前記グループ分けが、ベクトル成分の2つの異なるグループの間の1対のベクトル成分の間の少なくとも1回の入れ換えを含む場合には、このとき、現在の入力ベクトルのベクトル成分の少なくとも2つのグループを初期にグループ分けするために、前記少なくとも1回の入れ換えが遂行されてもよい。規則が満たされない場合には、現在の入力ベクトルのベクトル成分の少なくとも2つのグループについて、前記少なくとも1回の入れ換えは元に入れ換え直されてもよく、元に入れ換え直されたベクトル成分の少なくとも2つの異なるグループのベクトル成分群の間の少なくとも1回の新たな入れ換えが、規則に従うために決定されてもよい。ここで、少なくとも1回の新たな入れ換えの各入れ換えは、ベクトル成分の第1のグループのベクトル成分をベクトル成分の第2のグループのベクトル成分と入れ換えることができる。
【０１３４】
さらに、先行入力ベクトルのベクトル成分の少なくとも2つのグループのグループ分けに対する、現在の入力ベクトルのベクトル成分の少なくとも2つのグループのグループ分けにおける変更を指示する差分グループ分け情報を送信する方が優れているのか、それとも先行ベクトルのグループ分けに依存しない決定される、ベクトル成分の少なくとも2つのグループに基づいて複数のベクトル成分を含む入力ベクトルを決定するように構成される、完全グループ分け情報として表されてもよい情報を送信する方が優れているのかがチェックされてもよい。
【０１３５】
例えば、差分グループ分け情報の符号化のために必要なビットが、完全グループ分け情報を符号化するために必要なビットと比較されてもよく、複数のベクトル成分を含む入力ベクトルを決定するように構成される情報として符号化するために必要なビットが少ない方が選択される。さらに、例えば、グループ分けの種類、すなわち、差分グループ分けまたは完全グループ分けに関するサイド情報が送信されてもよいであろう。
【０１３６】
本発明の第3の態様の例示的実施形態によれば、先行入力ベクトルに対して遂行されたグループ分けに基づく、入力ベクトルの、ベクトル成分の少なくとも2つのグループへの前記グループ分けは、ベクトル成分の少なくとも2つの第1のグループを生じさせる第1のグループ分けとして遂行されてもよく、先行入力ベクトルのグループ分けを用いない、入力ベクトルの、ベクトル成分の少なくとも2つのグループへの前記グループ分けは、ベクトル成分の少なくとも2つの第2のグループを生じさせる第2のグループ分けとして遂行されてもよい。
【０１３７】
すなわち、ベクトル成分の少なくとも2つの第1のグループおよびベクトル成分の少なくとも2つの第2のグループはどちらも規則を満たすが、異なるグループ分けがベクトル成分に適用されているために、互いに異なり得る。次に、一例として、上述されたように、ベクトル成分の少なくとも2つの第1のグループの各々について第1の量子化表現が決定されてもよく、上述されたように、ベクトル成分の少なくとも2つの第2のグループの各々について第2の量子化表現が決定されてもよく、次に、第1の量子化表現の方が第2の量子化表現よりも入力ベクトルに対して与える歪みは小さいかどうかがチェックされてもよい。はいである場合には、第1のグループ分けが選択され、ベクトル成分の少なくとも2つの第1のグループの第1の量子化表現がベクトル成分のグループの量子化表現として選択される。いいえである場合には、第2のグループ分けが選択され、ベクトル成分の少なくとも2つの第2のグループの第2の量子化表現がベクトル成分のグループの量子化表現として選択される。
【０１３８】
さらに、例えば、現在の入力ベクトルを決定するように構成される前記情報は、諸実施形態のいずれかに関して上述されたように、受信機へ提供および／または送信されてもよく、この情報は、選択されたグループ分けに対応する情報を表現するように構成される。
【０１３９】
本発明の第3の態様の例示的実施形態によれば、ベクトル成分の少なくとも2つのグループのうちの少なくとも1つについて、ベクトル成分のグループに関連付けられたコードブックに基づいてベクトル成分のそれぞれのグループの量子化表現を前記決定することは、本発明の第1の態様に従ってベクトル成分の少なくとも2つのグループのうちの少なくとも1つの各々について遂行される。本発明の第1の態様の入力ベクトルは、量子化されるベクトル成分の少なくとも2つのグループのうちの少なくとも1つのベクトル成分のそれぞれのグループを表現する。
【０１４０】
本発明の第3の態様の例示的実施形態によれば、前記態様は、第3世代パートナーシッププロジェクト音声および／またはオーディオコーデック、特に、エンハンストボイスサービスコーデックの一部を形成する。
【０１４１】
本発明の第3の態様の例示的実施形態によれば、入力ベクトルは第1の入力ベクトルを表現し、前記少なくとも1つのメモリおよび前記コンピュータプログラムコードは、前記少なくとも1つのプロセッサを用いて、前記装置に、第1の入力ベクトルの複数のベクトル成分に対して遂行されたグループ分けに従って第2の入力ベクトルの複数のベクトル成分をベクトル成分の少なくとも2つのグループにグループ分けすることと、第2の入力ベクトルに関連付けられたベクトル成分の少なくとも2つのグループのうちの少なくとも1つについて、ベクトル成分のグループに関連付けられたコードブックに基づいてベクトル成分のそれぞれのグループの量子化表現を決定することと、をさらに遂行させるように構成される。
【０１４２】
その結果、第2の入力ベクトルのベクトル成分群は、第1の入力ベクトルのベクトル成分群の、第1の入力ベクトルに関連付けられたベクトル成分の少なくとも2つのグループ上のベクトル成分群上へのグループ分けと同じ仕方で、第2の入力ベクトルに関連付けられたベクトル成分の少なくとも2つのグループ上にグループ分けされる。すなわち、第1の入力ベクトルのベクトル成分群の、第1の入力ベクトルに関連付けられたベクトル成分の少なくとも2つのグループ上のベクトル成分群上への対応付けが、第2の入力ベクトルのベクトル成分群を、第2の入力ベクトルに関連付けられたベクトル成分の少なくとも2つのグループのベクトル成分群上に対応付けるために用いられる。
【０１４３】
例えば、この対応付けは、ベクトル成分群が、ベクトル成分群に関連付けられたエネルギー値に基づく規則に従ってベクトル成分の少なくとも2つのグループに対応付けられる仕方で遂行される、第1の入力ベクトルの複数のベクトル成分のうちのベクトル成分群の、第1の入力ベクトルに関連付けられたベクトル成分の少なくとも2つのグループへの前記初期対応付けを表現してもよい。すなわち、この初期対応付けアルゴリズムは、複数のベクトル成分のうちのベクトル成分群をベクトル成分の少なくとも2つのグループに対応付ける際に、規則を考慮してもよい。
【０１４４】
あるいは、例えば、前記対応付けは、前記初期対応付けと、ベクトル成分の少なくとも2つのグループのうちの第1のグループのベクトル成分とベクトル成分の少なくとも2つのグループのうちの第2のグループのベクトル成分との間の前記少なくとも1回の入れ換えが遂行される場合には、その入れ換えとを表現してもよい。
【０１４５】
そのため、第1の入力ベクトルに関連付けられたベクトル成分の少なくとも2つのグループに基づいて複数のベクトル成分を含む第1の入力ベクトルを決定するように構成される情報は、第2の入力ベクトルに関連付けられたベクトル成分の少なくとも2つのグループに基づいて複数のベクトル成分を含む第2の入力ベクトルを決定するために用いられてもよい。さらに、グループ分けは第1の入力ベクトルに対して不変のままであり、受信機は第1の入力ベクトルのグループ分けを用いることができるため、第2の入力ベクトルに関するこの情報を送信する必要はなくてもよい。
【０１４６】
その後、ベクトル成分の少なくとも2つのさらなるグループは、第1の入力ベクトルに関連付けられたベクトル成分の少なくとも2つのグループに関して説明されているように、量子化される。
【０１４７】
例えば、第2の入力ベクトルは、第1の入力ベクトルの直後に続く入力ベクトルを表現してもよい。一例として、第1の入力ベクトルに適用されたグループ分け方式は記憶されてもよく、少なくとも1つの後続入力ベクトルのために、この少なくとも1つの後続入力ベクトルの各々をベクトル成分のそれぞれの少なくとも2つのさらなるグループ上にグループ分けするべく適用されてもよい。ベクトル成分の前記少なくとも2つのさらなるグループは、第1の入力ベクトルに関連付けられたベクトル成分の少なくとも2つのグループに関して説明されているように、量子化される。例えば、これは、後続入力ベクトルの間に相関が存在する場合に遂行されてもよい。
【０１４８】
本発明の第4の態様の第1の例示的実施形態によれば、方法であって、前記方法は、ベクトル成分の少なくとも2つのグループのうちのベクトル成分のグループの各量子化表現を逆量子化すること、ただし、ベクトル成分のそれぞれの量子化されたグループについての逆量子化は、ベクトル成分のそれぞれの量子化されたグループに関連付けられたコードブックに基づいて遂行される、逆量子化することと、ベクトル成分の少なくとも2つの逆量子化されたグループに基づき、およびベクトル成分の少なくとも2つの逆量子化されたグループに基づいて複数のベクトル成分を含むベクトルを決定するように構成される情報に基づいて、複数のベクトル成分を含むベクトルを決定することと、を含む、方法が開示される。
【０１４９】
本発明の第4の態様の第2の例示的実施形態によれば、本発明の第4の態様に係る方法を遂行するように構成される装置、あるいはベクトル成分の少なくとも2つのグループのうちのベクトル成分のグループの各量子化表現を逆量子化するための手段、ただし、ベクトル成分のそれぞれの量子化されたグループについての逆量子化は、ベクトル成分のそれぞれの量子化されたグループに関連付けられたコードブックに基づいて遂行される、逆量子化するための手段と、ベクトル成分の少なくとも2つの逆量子化されたグループに基づき、およびベクトル成分の少なくとも2つの逆量子化されたグループに基づいて複数のベクトル成分を含むベクトルを決定するように構成される情報に基づいて、複数のベクトル成分を含むベクトルを決定するための手段と、を含む装置が開示される。
【０１５０】
本発明の第4の態様の第3の例示的実施形態によれば、少なくとも1つのプロセッサと、コンピュータプログラムコードを含む少なくとも1つのメモリとを備える装置であって、少なくとも1つのメモリおよびコンピュータプログラムコードは、少なくとも1つのプロセッサを用いて、装置に、本発明の第4の態様に係る方法を少なくとも遂行させるように構成される、装置が開示される。メモリ内に含まれるコンピュータプログラムコードは、例えば、プロセッサのためのソフトウェアおよび／またはファームウェアを少なくとも部分的に表現してもよい。メモリの非限定例は、プロセッサによってアクセス可能であるランダムアクセスメモリ（RAM）またはリードオンリーメモリ（ROM）である。
【０１５１】
本発明の第4の態様の第4の例示的実施形態によれば、コンピュータプログラムがプロセッサ上で実行されると、本発明の第4の態様に係る方法を遂行するためのプログラムコードを含む、コンピュータプログラムが開示される。コンピュータプログラムは、例えば、例としてインターネット等の、ネットワークを介して配付可能であってもよい。コンピュータプログラムは、例えば、コンピュータ可読媒体内に記憶可能またはエンコード可能であってもよい。コンピュータプログラムは、例えば、プロセッサのソフトウェアおよび／またはファームウェアを少なくとも部分的に表現してもよい。
【０１５２】
本発明の第4の態様の第5の例示的実施形態によれば、コンピュータ可読媒体であって、その上に本発明の第4の態様に係るコンピュータプログラムが記憶された、コンピュータ可読媒体が開示される。コンピュータ可読媒体は、例えば、電気的、磁気的、電磁的、光学的またはその他の記憶媒体として具体化されてもよく、取り外し可能な媒体、または装置もしくはデバイス内に固定的に搭載される媒体のいずれかであってよい。このようなコンピュータ可読媒体の非限定例はRAMまたはROMである。コンピュータ可読媒体は、例えば、有形媒体、例として、有形記憶媒体であってもよい。コンピュータ可読媒体は、例えば、プロセッサ等の、コンピュータによって可読であると理解される。
【０１５３】
例えば、本発明のこの第4の態様は、本発明の第3の態様の諸実施形態のいずれかによって得られたベクトル成分のグループの量子化表現を逆量子化するために用いられてもよい。
【０１５４】
ベクトル成分の少なくとも2つのグループのうちのベクトル成分のグループの各量子化表現が逆量子化される。ベクトル成分のこれらの量子化された少なくとも2つのグループは、本発明の第3の態様の諸実施形態のいずれかによって得られたベクトル成分の少なくとも2つの量子化されたグループを表現してもよい。
【０１５５】
そのため、前記逆量子化は、本発明の第3の態様の対応する量子化を取り消すために遂行され、ベクトル成分の各量子化されたグループは、ベクトル成分のそれぞれの逆量子化されたグループを決定するために逆量子化される。一例として、この逆量子化は本発明の第3の態様に従って遂行されてもよい。
【０１５６】
次に、ベクトル成分の少なくとも2つの逆量子化されたグループに基づいて複数のベクトル成分を含むベクトルを決定するように構成される情報に基づき、ベクトル成分の少なくとも2つの逆量子化されたグループに基づいて、複数のベクトル成分を含むベクトルが決定される。ベクトル成分の少なくとも2つの逆量子化されたグループに基づいて複数のベクトル成分を含むベクトルを決定するように構成されるこの情報は、本発明の第3の態様において説明されているベクトル成分の少なくとも2つの逆量子化されたグループに基づいて複数のベクトル成分を含む入力ベクトルを決定するように構成される情報を表現してもよく、例えば、ベクトル成分の少なくとも2つの逆量子化されたグループとともに受信機において受信されてもよい。
【０１５７】
例えば、第3の態様における、入力ベクトルの複数のベクトル成分のうちのベクトル成分群の、ベクトル成分の少なくとも2つのグループへの初期対応付けが、ベクトル成分群が、ベクトル成分群に関連付けられたエネルギー値に基づく規則に従ってベクトル成分の少なくとも2つのグループに対応付けられる仕方で遂行された場合には、ベクトル成分の少なくとも2つの逆量子化されたグループに基づいて複数のベクトル成分を含む（入力）ベクトルを決定するように構成される情報は、この対応付けを指示してもよく、本発明の第4の態様によれば、ベクトルは、ベクトル係数の少なくとも2つの逆量子化されたグループのベクトル係数群の、ベクトルへの対応する逆の対応付けを遂行することによって、得られる。
【０１５８】
例えば、本発明の第3の態様に関して提示されているあらゆる説明は本発明の第4の態様にも適用できてよい。
【０１５９】
本発明の第4の態様の例示的実施形態によれば、ベクトル成分の少なくとも2つの逆量子化されたグループに基づいて複数のベクトル成分を含むベクトルを決定するように構成される前記情報は、ベクトル成分の少なくとも2つのグループのうちの異なるグループのベクトル成分群の間で遂行された入れ換えに関する情報を含み、本方法は、情報に従って、ベクトル成分の少なくとも2つの逆量子化されたグループのうちの異なるグループのベクトル成分群の再入れ換えを遂行することを含む。
【０１６０】
例えば、本発明の第4の態様は、ベクトル成分の少なくとも2つの逆量子化されたグループのうちの異なるグループの間のベクトル成分群の再入れ換えを含んでもよい。一例として、情報は、ベクトル成分の少なくとも2つのグループのうちの異なるグループのベクトル成分群の間で遂行された入れ換えに関する情報を含んでもよく、例えば、この情報は、本発明の第3の態様の諸実施形態のうちの1つによって遂行された、ベクトル成分の少なくとも2つのグループのうちの第1のグループのベクトル成分の、ベクトル成分の少なくとも2つのグループのうちの第2のグループのベクトル成分とのものを定義する入れ換えに関する情報を含んでもよい。そのため、一例として、ベクトル成分の少なくとも2つのグループのうちの異なるグループのベクトル成分群の間で遂行された入れ換えに関する情報を含む情報に基づいて、本発明の第3の態様によって遂行された入れ換えは、ベクトル係数の少なくとも2つの逆量子化されたグループが、入れ換えが遂行される前の本発明の第3の態様のベクトル成分の初期の少なくとも2つのグループに対応するまで、ベクトル成分の少なくとも2つの逆量子化されたグループに対して取り消されてもよい。次に、ベクトル係数のこれらの少なくとも2つの逆量子化されたグループに基づいて、例えば、本発明の第3の態様において遂行された入力ベクトルの複数のベクトル成分の分割を取り消すために、ベクトル係数の少なくとも2つの逆量子化されたグループを一つに結合することによって、入力ベクトルの第1の表現を得ることができる。
【０１６１】
例えば、本発明の第3の態様において入れ換えが必要でなかった場合には、このとき、これは、例えば、ベクトル成分の少なくとも2つの逆量子化されたグループに基づいて複数のベクトル成分を含むベクトルを決定するように構成される情報によって指示されてもよく、ベクトル係数の少なくとも2つの逆量子化されたグループは、本発明の第3の態様の入力ベクトルを得るために、例えば、入れ換えを全く行うことなく一つに結合されてもよい。
【０１６２】
本発明の第4の態様の例示的実施形態によれば、ベクトル成分の少なくとも2つのグループのうちのベクトル成分のグループの各量子化表現を前記逆量子化することは、本発明の第2の態様の諸実施形態のうちの1つに従って、ベクトル成分の少なくとも2つのグループのうちのベクトル成分のグループの各量子化表現について遂行される。ベクトル成分のグループのそれぞれの量子化表現は、ベクトル成分のそれぞれのグループの第1の量子化表現およびベクトル成分のそれぞれのグループの第2の量子化表現を含む。
【０１６３】
本発明の第3の態様の例示的実施形態によれば、ベクトル成分の少なくとも2つの量子化されたグループに基づいて複数のベクトル成分を含むベクトルを決定するように構成される情報に基づき、ベクトル成分の少なくとも2つの逆量子化されたグループに基づいてベクトルの表現を前記決定することは、先行ベクトルのベクトル成分の少なくとも2つの量子化されたグループに基づいて複数のベクトル成分を含む先行ベクトルを決定するように構成される情報に基づいて遂行される。
【０１６４】
例えば、前記ベクトルは現在のベクトルを表現すると考えられてもよく、（現在の）ベクトルを決定するように構成される情報は、先行入力ベクトルのベクトル成分の少なくとも2つのグループのグループ分けに対する、現在の入力ベクトルのベクトル成分の少なくとも2つのグループのグループ分けにおける変更を指示する上述の差分グループ分け情報を表現してもよい。
【０１６５】
一例として、現在の入力ベクトルのベクトル成分の少なくとも2つの逆量子化されたグループに対する同じ再入れ換えが遂行されてもよい、先行入力ベクトルのベクトル成分の少なくとも2つの逆量子化されたグループの再入れ換えのためのものとして遂行される。その結果、先行ベクトルのベクトル成分の少なくとも2つの量子化されたグループに基づいて複数のベクトル成分を含む先行ベクトルを決定するように構成される情報は、現在のベクトルに対する前記再入れ換えを遂行するために用いられる。この再入れ換えは初期の再入れ換えにおいて表現してもよい。
【０１６６】
さらに、ベクトル成分の少なくとも2つの量子化されたグループに基づいて複数のベクトル成分を含む現在のベクトルを決定するように構成される情報が、現在の入力ベクトルのベクトル成分の前記少なくとも2つの初期に再入れ換えされたグループの少なくとも2つのベクトル成分の間のグループ分けのさらなる変更（例えば、少なくとも1回の入れ換え）が遂行されるべきであることを指示する場合には、現在のベクトルの表現に従ってベクトル成分の少なくとも2つの逆量子化されたグループを得るために前記さらなるグループ分けが遂行される。
【０１６７】
本発明の第4の態様の例示的実施形態によれば、ベクトルは第1のベクトルを表現し、ベクトル成分の少なくとも2つのさらなるグループのうちのベクトル成分のグループの各量子化表現は逆量子化される。ただし、ベクトル成分のそれぞれの量子化されたグループについての逆量子化は、ベクトル成分のそれぞれのさらなる量子化されたグループに関連付けられたコードブックに基づいて遂行される。ベクトル成分の少なくとも2つの逆量子化されたグループに基づいて複数のベクトル成分を含む第1のベクトルを決定するように構成される情報に基づき、ベクトル成分の少なくとも2つのさらなる逆量子化されたグループに基づいて第2のベクトルの表現が決定される。
【０１６８】
ベクトル成分の前記少なくとも2つのさらなるグループのうちのベクトル成分のそれぞれの量子化されたグループについての前記逆量子化は、第1のベクトルに関連付けられたベクトル成分のグループの逆量子化に関して説明されているように遂行される。
【０１６９】
第2の（入力）ベクトルの複数のベクトル成分を、第2の（入力）ベクトルに関連付けられたベクトル成分の少なくとも2つのグループにグループ分けすることは、第1の（入力）ベクトルの複数のベクトル成分に対して遂行されたグループ分けに従って遂行されたことが前提とされるため、ベクトル成分の少なくとも2つのさらなる逆量子化されたグループに基づいて第2のベクトルの表現を決定する際には、第1のベクトルのためのものと同じ情報を用いることができる。
【０１７０】
そのため、一例として、複数のベクトル成分を含む第1のベクトルを決定するように構成される情報は、ベクトル成分の少なくとも2つのさらなるグループに基づいて第2のベクトルを決定するために同じ様式で用いることができるので、第2のベクトルのベクトル係数群の、ベクトル係数の少なくとも2つのさらなるグループ上へのグループ分けに関する追加情報は必要ない。
【０１７１】
本発明の諸態様のその他の特徴は、以下において添付の図面に関連して提示される本発明の諸実施形態の詳細な説明から明白であり、それを参照して明らかにされるであろう。ただし、図面は単に例示の目的のために作成されているだけであり、本発明の限定の定義として作成されてはいないことを理解されたい。本発明の限定の定義については、添付の請求項を参照するべきである。図面は原寸に比例して描かれていないこと、ならびにそれらは単に、それらの中に記載されている構造および手続きを概念的に示すことを意図されているだけであることをさらに理解されたい。特に、図面に存在する特徴だからといって、これらの特徴は本発明に必須のものであると考えてはならない。
【０１７２】
図面では以下のものを示す。
【図面の簡単な説明】
【０１７３】
【図１ａ】本発明の一態様に係る装置の例示的な一実施形態の略図である。
【図１ｂ】本発明の一実施形態に係る有形記憶媒体の図である。
【図２】本発明の第1の態様に係る方法の第1の実施形態例のフローチャートである。
【図３】本発明の第1の態様に係る方法の第2の実施形態例のフローチャートである。
【図４ａ】本発明の第1の態様に係る方法の第3の実施形態例のフローチャートである。
【図４ｂ】基底コードベクトルの複数のセットの一例の図である。
【図４ｃ】コードベクトルを決定するプロセスの一例の図である。
【図４ｄ】本発明の第2の態様に係る方法の第1の実施形態例のフローチャートである。
【図５】本発明の第3の態様に係る方法の第1の実施形態例のフローチャートである。
【図６】本発明の第3の態様に係る方法の第2の実施形態例のフローチャートである。
【図７】本発明の第4の態様に係る方法の第1の実施形態例のフローチャートである。
【発明の諸実施形態の詳細説明】
【０１７４】
図1aは、本発明の一実施形態に係る装置1の構成要素を概略的に示す。装置1は、例えば、例として、音声、オーディオおよびビデオ信号のうちの少なくとも1つをエンコードする能力を有する電子デバイス、あるいはこのようなデバイスの構成要素であってもよい。例えば、装置1は端末であってもよく、または端末の一部を形成してもよい。
【０１７５】
本発明の第1の態様によれば、装置1は、例えば、入力ベクトルの第1の量子化表現を決定し、第1の量子化表現によって決まるコードブックに基づいて入力ベクトルの第2の量子化表現を決定するように構成されてもよい。
【０１７６】
代替的に、または、追加的に、装置1は、例えば、入力ベクトルの第1の量子化表現であって、この第1の量子化表現は複数のベクトル成分を含む、第1の量子化表現を決定することと、ベクトル成分に関連付けられたエネルギー値に基づく規則に従って前記複数のベクトル成分をベクトル成分の少なくとも2つのグループにグループ分けすることであって、ただし、ベクトル成分の少なくとも2つのグループの各グループは複数のベクトル成分のうちの少なくとも1つのベクトル成分を含む、グループ分けすることと、ベクトル成分の少なくとも2つのグループのうちの少なくとも1つについて、本発明の第3の態様に従ってコードブックに基づいてベクトル成分のそれぞれのグループの量子化表現を決定することと、をするように構成されてもよい。
【０１７７】
装置1は例えばモジュールとして具体化されてもよい。装置1の非限定例は、携帯電話、パーソナルデジタルアシスタント、ポータブルマルチメディア（オーディオおよび／またはビデオ）プレーヤ、ならびにコンピュータ（例えば、ラップトップまたはデスクトップコンピュータ）である。
【０１７８】
装置1はプロセッサ10を含む。プロセッサ10は、例えば、ほんのいくつかの非限定例を挙げると、マイクロプロセッサ、デジタル信号プロセッサ（Digital Signal Processor、DSP）または特定用途向け集積回路（Application Specific Integrated Circuit、ASIC）として具体化されてもよい。プロセッサ10は、プログラムメモリ11内に記憶されたプログラムコードを実行し、例えば、中間結果を少なくとも一時的に記憶するため、さらに、それだけでなく、例えば、事前に定義されたデータベースおよび／または事前に計算されたデータベースを記憶するために、主メモリ12を作業メモリとして用いる。メモリ11および12の一部または全てはプロセッサ10内に含まれてもよい。メモリ11および／または12は、ほんのいくつかの非限定例を挙げると、例えば、リードオンリーメモリ（ROM）、ランダムアクセスメモリ（RAM）として具体化されてもよい。メモリ11および12の一方または両方は、プロセッサ10に固定的に接続されるか、またはメモリカードまたはスティックの形態で、プロセッサ10から取り外し可能であってよい。
【０１７９】
プロセッサ10は入力／出力（input／output、I／O）インタフェース13をさらに制御し、それを介してプロセッサは他の機能ユニットから情報を受信するか、またはそれを提供する。
【０１８０】
以下において説明するように、プロセッサ10は、少なくとも、本発明の第1の態様および／または第2の態様および／または第3の態様および／または第4の態様を提供するためのプログラムコードを実行する能力を有する。しかし、プロセッサ10は当然さらなる能力を有してもよい。例えば、プロセッサ10は、例えば、サンプリングされた入力値に基づく、音声、オーディオおよびビデオエンコーディングのうちの少なくとも1つの能力を有してもよい。プロセッサ10は、追加的に、または代替的に、ポータブル通信および／またはマルチメディアデバイスの動作を制御する能力を有してもよい。
【０１８１】
図1aの装置1は、例えば、装置1のユーザがプロセッサ10とやり取りすることを可能にするための、ユーザインタフェース、または装置1が無線通信を遂行することを可能にするための関連する無線周波数（radio frequency、RF）回路機構を有するアンテナ等の、構成要素をさらに備えてもよい。
【０１８２】
装置1の構成要素によって形成される回路機構は、本明細書の最後においてさらに説明されるように、ハードウェアだけの形で実装されてもよく、部分的にハードウェアの形およびソフトウェアの形で実装されてもよく、あるいはソフトウェアのみの形で実装されてもよい。
【０１８３】
図1bは、本発明に係る有形記憶媒体30の一実施形態の略図である。この有形記憶媒体30は、特に非一時的記憶媒体であってもよく、プログラム31を含む。プログラム31は、今度は、プログラムコード32（例えば命令のセット）を含む。有形記憶媒体30の具体例は、例えば、図1aのプログラムメモリ12であってもよい。したがって、プログラムコード32は、例えば、後述される本発明の第1、第2、第3および第4の態様のうちの1つの態様に関連付けられる図2、3、4a、4d、5、6および7のフローチャートを実施してもよい。
【０１８４】
図2aは、本発明の第1の態様の第1の実施形態に係る方法のフローチャート200を示す。このフローチャート200のステップは、例えば、図1bに示されるように、有形記憶媒体30上に記憶されるコンピュータプログラム31のそれぞれのプログラムコード32によって定義されてもよい。有形記憶媒体30は、例えば、図1aのプログラムメモリ11を具体化してもよく、このとき、コンピュータプログラム31は図1aのプロセッサ10によって実行されてもよい。
【０１８５】
ステップ210では、入力ベクトルの第1の量子化表現が決定される。例えば、前記第1の量子化表現は、入力ベクトルの量子化されたベクトルを表現してもよい。一例として、この量子化されたベクトルは複数のビットを含んでもよいが、入力ベクトルの任意の他の適切な量子化表現が第1の量子化表現のために用いられてもよい。
【０１８６】
非限定例として、入力ベクトルは、入力信号の線スペクトル周波数（LSF）を含むベクトルを表現してもよい。この入力信号は、部分オーディオ信号、例えば、音声信号の部分または非音声信号の部分、を少なくとも表現してもよく、このオーディオ信号は、有声部分および／または無声部分および／または一般部分および／または移行部分および／またはCNG部分を含んでもよい。例えば、量子化される入力信号は、エンコードされるオーディオ信号の残差データ、例えば、線スペクトル周波数（LSF）ベクトルの残差を表現してもよい。
【０１８７】
一例として、第1の量子化表現は、複数のコードベクトルに基づいて遂行される第1の量子化段階を用いて決定されてもよい。第1の量子化段階のこの複数のコードベクトルは第1段階コードブックを表現してもよい。
【０１８８】
例えば、第1の量子化表現は、入力ベクトルを量子化するための複数のコードベクトルから選択されたコードベクトルを表現してもよい。別の例として、第1の量子化表現は、選択されたコードベクトルの識別子を表現してもよく、この識別子はコードベクトル添字を表現してもよい。そのため、例えば、第1の量子化表現がnビットを含み得る場合には、第1段階コードブックは最大で2n個のコードベクトルを含み得る。
【０１８９】
ステップ220では、第1の量子化表現によって決まるコードブックに基づいて入力ベクトルの第2の量子化表現が決定される。
【０１９０】
例えば、この第2の量子化表現は第2の量子化段階を用いて遂行されると仮定されてもよい。この第2の量子化段階は複数のコードブックに基づいて量子化を遂行してもよい。この複数のコードブックは各々、少なくとも1つのコードベクトルを含む。
【０１９１】
第2段階における入力ベクトルの量子化のために用いられるコードブックは第1の量子化表現によって決まる。そのため、一例として、第2段階において用いられるコードブックは、入力ベクトルの第1の量子化表現に基づいて第2段階の複数のコードブックから選択されてもよい。
【０１９２】
例えば、第1段階の複数のコードベクトルのうちのコードベクトルと第2段階の複数のコードブックのうちのコードブックとの間の対応付けが定義されて存在してもよい。したがって、このような対応付けが、第1段階の複数のコードベクトルの各コードベクトルと第2段階の複数のコードブックのうちのそれぞれのコードブックのために定義されてもよい。そのため、第1段階において選択されたコードベクトルを表現してもよい、または第1段階において選択されたコードベクトルの標識を表現してもよい、入力ベクトルの第1の量子化表現に基づいて、第2段階の複数のコードブックから、第2段階における量子化を遂行するためのコードブックが選択されてもよい。
【０１９３】
これは、第1段階において遂行された量子化に各々適合された特定のコードブック群が第2段階のために定義されてもよいという利点を示してよい。そのため、第2段階の複数のコードブックのうちの少なくとも1つのコードブックは、エンコードされるこのコードブックに関連付けられた特定の残差データに応じて調整された特定のコードブックを表現してもよく、これにより、符号化効率を向上させることができる。
【０１９４】
例えば、第2段階のコードブックは格子コードブックを表現してもよい。
【０１９５】
一例として、入力ベクトルの第1の量子化表現は、第1段階において選択されたコードベクトルを指示するコードベクトル添字を表現してもよい。次に、ステップ220では、第1の量子化表現のコードベクトル添字に関連付けられた、複数のコードブックのうちのコードブックが選択される。例えば、第1段階の各コードベクトル添字は、第2段階の複数のコードブックのうちの対応するコードブックに関連付けられてもよい。
【０１９６】
次に、ステップ220では、選択されたコードブックに基づき、選択されたコードブックのコードベクトルが、例えば、歪みメトリックに基づいて、決定されてもよい。例えば、選択されたコードブックのコードベクトルは、入力ベクトルに対して最小の歪みを有する入力ベクトルの量子化のために決定されてもよい。ここで、歪みは歪みメトリックに基づいて求められる。一例として、歪みメトリックはコードベクトルと入力ベクトルとの間の距離を表現してもよい。例えば、ハミング距離もしくはユークリッド距離または任意のその他の距離が用いられてもよい。
【０１９７】
図3は、本発明の第1の態様に係る方法300の第2の実施形態例のフローチャート300を示す。このフローチャート300のステップは、例えば、図1bに示されるように、有形記憶媒体30上に記憶されるコンピュータプログラム31のそれぞれのプログラムコード32によって定義されてもよい。有形記憶媒体30は、例えば、図1aのプログラムメモリ11を具体化してもよく、このとき、コンピュータプログラム31は図1aのプロセッサ10によって実行されてもよい。
【０１９８】
例えば、この方法300は、図2に示される方法200のステップ220において入力ベクトルの第2の量子化表現を決定するために用いられてもよい。
【０１９９】
ステップ310では、入力ベクトルが第1の量子化表現に基づいて正規化される。例えば、前記正規化は、入力ベクトルの正規化された表現を得るために、入力ベクトルのベクトル成分に、入力ベクトルの第1の量子化表現によって決まる正規化係数を乗算することを含んでもよい。
【０２００】
正規化は第1の量子化表現に基づいて遂行される。例えば、正規化係数の複数のセットが定義されて存在してもよく、正規化係数の各セットは、入力ベクトルを正規化するために用いられる少なくとも1つの正規化係数を含み、入力ベクトルの第1の量子化表現に基づいて正規化係数の複数のセットから正規化係数の1つのセットが選択される。
【０２０１】
例えば、第1段階の複数のコードベクトルのうちのコードベクトルと正規化係数の複数のセットのうちの正規化係数のセットとの間の対応付けが定義されて存在してもよい。したがって、このような対応付けが、第1段階の複数のコードベクトルのうちの各コードベクトルと複数の正規化係数のうちの正規化係数のそれぞれのセットのために定義されてもよい。そのため、第1段階において選択されたコードベクトルを表現してもよい、または第1段階において選択されたコードベクトルの標識を表現してもよい、入力ベクトルの第1の量子化に基づいて、正規化係数の複数のセットから、ステップ310において入力ベクトルの正規化を遂行するための正規化係数のセットが選択されてもよい。
【０２０２】
一例として、入力ベクトルがn個のベクトル係数を含む場合には、正規化係数のセットはn個の正規化係数を含んでもよい。このとき、入力ベクトルの正規化は、入力ベクトルの複数のベクトル成分のうちのベクトル成分に、正規化係数の選択されたセットの関連正規化係数を乗算することによって遂行されてもよい。これは入力ベクトルの各ベクトル成分について遂行されてもよく、入力ベクトルの正規化された表現を得るために、それぞれのベクトル成分に正規化係数のセットのそれぞれの正規化係数が乗算される。
【０２０３】
一例として、入力ベクトルの第1の量子化表現は、第1段階において選択されたコードベクトルを指示するコードベクトル添字を表現してもよい。次に、ステップ310では、第1の量子化表現のコードベクトル添字に関連付けられた、正規化係数の複数のセットのうちの正規化係数のセットが選択される。例えば、第1段階の各コードベクトル添字は、正規化係数の複数のセットのうちの正規化係数の対応するセットに関連付けられてもよい。
【０２０４】
次に、ステップ320では、第1の量子化表現に依存して、正規化された入力ベクトルの第2の量子化表現が決定される。ステップ320において第2の量子化表現を決定することは、図2におけるステップ220に関して説明されているように遂行されてもよく、ステップ220において用いられる入力ベクトルは、ステップ310において得られた正規化された入力ベクトルと置き換えられる。
【０２０５】
図4aは、本発明の第1の態様に係る方法400の第3の実施形態例のフローチャート400を示す。このフローチャート400のステップは、例えば、図1bに示されるように、有形記憶媒体30上に記憶されるコンピュータプログラム31のそれぞれのプログラムコード32によって定義されてもよい。有形記憶媒体30は、例えば、図1aのプログラムメモリ11を具体化してもよく、このとき、コンピュータプログラム31は図1aのプロセッサ10によって実行されてもよい。
【０２０６】
例えば、この方法400は、図2に示される方法200のステップ220において入力ベクトルの第2の量子化表現を決定するため、または図3におけるステップ320において、正規化された入力ベクトルの第2の量子化表現を決定するために用いられてもよい。
【０２０７】
ステップ410では、第1の量子化表現に基づいて複数のコードブックのうちからコードブックが選択される。例えば、この選択は、方法200の第1の実施形態例に関して説明されているように遂行されてもよい。
【０２０８】
複数のコードブックの各コードブックは、基底コードベクトルの関連付けられたセット、および関連付けられた少なくとも1つのスケール表象によって定義される。
【０２０９】
基底コードベクトルの各セットは少なくとも1つの基底コードベクトルを含む。基底コードベクトルの各セットは複数のスケール表象のうちの少なくとも1つのスケール表象に関連付けられるため、コードベクトルは、潜在基底コードベクトルのセットのうちの基底コードベクトル、および潜在基底コードベクトルのセットに関連付けられた少なくとも1つのスケール表象のうちのスケール表象に基づいて決定することができる。すなわち、コードベクトルは、それぞれのスケール表象によってスケーリングされた基底コードベクトルに基づいて表現されてもよい。例えば、スケール表象はスケール値を表現してもよく、コードベクトルは基底コードベクトルおよびそれぞれのスケール値の乗算に基づいて決定されてもよい。
【０２１０】
例えば、基底コードベクトルの少なくとも1つのセットは少なくとも2つのスケール表象に関連付けられる。
【０２１１】
したがって、一例として、コードブックは、基底コードベクトルの複数のセットに基づき、かつ複数の基底コードベクトルのうちの基底コードベクトルのそれぞれのセットに関連付けられたそれぞれの少なくとも1つのスケール値に基づくコードベクトル群を含むコードベクトルのセットを含んでもよい。コードベクトルのこのセットは、基底コードベクトルの各セットの各基底コードベクトルにつき、および基底コードベクトルのそれぞれのセットに関連付けられた少なくとも1つのスケール表象の各々につき、それぞれのスケール表象によってスケーリングされたそれぞれの基底コードベクトルに基づくコードベクトルを含んでもよい。
【０２１２】
例えば、基底コードベクトルの前記セット群はリーダクラス群を表現してもよく、各リーダクラスは、異なるリーダベクトル、および前記リーダベクトルの置換群を含む。そのため、前記リーダベクトル、および前記リーダベクトルの置換群は、基底コードベクトルのそれぞれのセットの基底コードベクトル群を表現してもよい。
【０２１３】
基底コードベクトルの複数のセットは基底コードベクトルの第2の複数のセットのサブセットを表現してもよい。例えば、基底コードベクトルの各セットはリーダクラスを表現するとの仮定の下では、複数のリーダクラスは第2の複数のリーダクラスのサブセットを表現してもよい。そのため、複数のリーダクラスは、第2の複数のリーダクラスに対して、短縮された複数のリーダクラスと考えられてもよい。
【０２１４】
図4bは基底コードベクトルの複数のセットを示す。ここで、x∈｛0, 1, ...X−1｝とする、各bxは、基底コードベクトルの複数のセットのうちの基底コードベクトルのセットを表現する。ここで、Xは基底コードベクトルの複数のセットのセットの数を表現する。基底コードベクトルの各セットは少なくとも1つの基底コードベクトルbx, yに関連付けられるかまたはそれを含む。ここで、Bxは基底コードベクトルのそれぞれのセットbxの基底コードベクトルの数を表現する。すなわち、y∈｛0, 1, ...Bx−1｝が成り立つ。例えば、基底コードベクトルのセットの基底コードベクトルの数Bxは基底コードベクトルのセットによって異なってもよく、および／またはそれは基底コードベクトルの少なくとも2つのセットについて同じであってもよい。
【０２１５】
図4cは、基底コードベクトルbx, yに基づき、かつスケール表象zに基づいてコードベクトルcx, z, yを決定するプロセス例を示す。ここで、添字zは複数のスケール表象s0...sS−1のそれぞれのスケール表象の添字を表現する。すなわち、z∈｛0, 1, ...S−1｝が成り立つ。
【０２１６】
例えば、t∈｛0, 1, ...n−1｝が成り立ち、nはそれぞれの基底コードベクトルbx, yの長さを表すとして、基底コードベクトルbx, y＝[bx, y, 0, bx, y, 1, ..., bx, y, n−1]の値bx, y, tが絶対値を表現する場合において、絶対値化された入力ベクトルが、基底コードベクトルのそれぞれのセットの潜在コードベクトルを決定するために用いられる場合には、図4cに例示的に示されるように、基底コードベクトルbx, yに基づき、かつスケール表象szに基づくコードベクトルcx, z, yの決定が遂行される前に、入力ベクトルiの（t＋1）番目の位置におけるそれぞれの値itの符号に基づいて、決定された最近傍の基底コードベクトルbx, yの（t＋1）番目の位置における各値bx, y, tの符号が付与されてもよい。一例として、i＝[i0, i1, ..., in−1]が入力ベクトルを表現する場合には、絶対値化された入力ベクトルは[|i0|, |i1|, ..., |in−1|]によって表現されてもよい。
【０２１７】
例えば、決定された最近傍の基底コードベクトルbx, yの（t＋1）番目の位置における各値bx, y, tの符号は、入力ベクトルの（t＋1）番目の位置におけるそれぞれの値itの符号をそれぞれ付与されてもよく、これは、基底コードベクトルのセットbxの基底コードベクトルbx, yのパリティが0である場合に、成立し得る。別の例として、基底コードベクトルのセットbxの基底コードベクトルbx, yのパリティが−1である場合には、潜在基底コードベクトルの値bx, y, tの符号は、ベクトル内の同じ位置における入力ベクトルの値の符号に対応してそれぞれ付与されてもよく、負の成分が奇数個存在しない場合には、最小の非ヌル絶対値を有する潜在基底コードベクトル内の値bx, y, tはその符号を変更してもよい。あるいは、別の例として、基底コードベクトルのセットbxの基底コードベクトルbx, yのパリティが＋1である場合には、潜在基底コードベクトルの値bx, y, tの符号は、ベクトル内の同じ位置における入力ベクトルの値の符号に対応してそれぞれ付与されてもよく、負の成分が偶数個存在しない場合には、最小の非ヌル絶対値を有する潜在基底コードベクトル内の値bx, y, tはその符号を変更してもよい。
【０２１８】
非限定例として、コードベクトルcx, z, yは、基底コードベクトルに基づきbxによって、かつスケール表象szに基づきcx, z, y＝[bx, y, 0・sz, bx, y, 1・sz, ..., bx, y, n−1・sz]によって決定されてもよい。
【０２１９】
z∈｛0, 1, ...S−1｝が成り立つとして、スケール表象szの各々は基底コードベクトルの少なくとも1つのセットに関連付けられる。例えば、非限定例として、基底コードベクトルのこのそれぞれの少なくとも1つのセットは基底コードベクトルのセットbxによって表現されてもよい。ただし、x∈｛0, 1, ...nz−1｝であり、nzは、それぞれのスケール表象szに関連付けられた基底コードベクトルのセットの数を表現してもよい。ただし、0＜nz＜Xが成り立つ。それぞれのスケール表象szと、x∈｛0, 1, ...nz−1｝とする基底コードベクトルの関連付けられた少なくとも1つのセットbxとの間のこの連係に基づいて、x∈｛0, 1, ...nz−1｝およびy∈｛0, 1, ...Bx−1｝およびz∈｛0, 1, ...S−1｝とする、コードベクトルの関連付けられた少なくとも1つのセットcx, z, yを決定することができる。
【０２２０】
そのため、一例として、上述のコードブックのコードブック構造は、複数のスケール表象sz、基底コードベクトルの複数のセットbx、および各スケール表象と、基底コードベクトルの関連付けられた少なくとも1つのセットとの間の連係によって定義されてもよい。
【０２２１】
基底コードベクトルの少なくとも1つのセット、例えば、少なくとも基底コードベクトルのセットb0、は少なくとも2つのスケール表象に関連付けられるため、基底コードベクトルの同じセットを、第1のスケール表象に関連付けられたコードベクトルの少なくとも1つのセットのコードベクトル群を構築するために用い、少なくとも1つのさらなるスケール表象に関連付けられたコードベクトルの少なくとも1つのセットのコードベクトル群を構築するために用いることができる。
【０２２２】
例えば、ステップ410の複数のコードブックのうちのコードブック群は上述の第2の複数のリーダクラスに基づいて定義されてもよい。ここで、第2の複数のリーダクラスの各リーダクラスは異なるリーダベクトルに関連付けられ、それぞれのリーダクラスに関連付けられた基底コードベクトルのセットは、それぞれのリーダベクトル、およびこのリーダベクトルの置換群によって表現されてもよい。このとき、一例として、複数のコードブックの各コードブックは、それぞれのコードブックに関連付けられた少なくとも1つの短縮によって定義されてもよい。それぞれのコードブックに関連付けられた少なくとも1つの短縮の各短縮は、第2の複数のリーダクラスのうちの少なくとも1つのリーダクラスに関連付けられ、かつそれぞれのスケール表象に関連付けられ、それにより、それぞれのスケール表象によってスケーリングされたそれぞれのリーダクラスのリーダクラスベクトル、およびこのスケーリングされたリーダクラスベクトルの置換群は、それぞれのコードブックの少なくとも1つの短縮のそれぞれの短縮のコードベクトルを表現する。
【０２２３】
非限定例として、16個の典型的なリーダクラスの一例は次式によって定義されてもよい：
【０２２４】
【数６】
0006475273.tif 000007
【０２２５】
例えば、これらの16個のリーダクラスは、基底コードベクトルの上述の第2の複数のセットを定義してもよく、コードブック構造は、基底コードベクトルの前記第2の複数のセットのサブセットを表現する基底コードベクトルの複数のセットによって定義されてもよい。
【０２２６】
一例として、16個の例示的コードブック構造の一例は以下のように定義されてもよい。
【０２２７】
【数７】
0006475273.tif 000008
【０２２８】
ここで、各ベクトルno_lead[][l]（ただし、l∈｛0, 1, ...16｝が成り立つ）は、複数の短縮を含むそれぞれのコードブック構造を定義する。例えば、l＝2の場合、ベクトルno_lead[][2]＝（10, 9, 3, 2, 2, 0）は、第1の短縮、すなわち、リーダクラスの第1の集合、は最初の8つのリーダクラスで構成されてよい、第2のものは最初の9つのリーダクラスによって構成されてよい、第3のものは最初の3つのリーダクラスによって構成されてよい、および以下同様であることを意味する、それぞれのコードブック構造を定義する。
【０２２９】
それぞれのコードブック構造の各短縮に対して、例えば以下のように、それぞれのスケール表現が（例えば訓練を通じて）付与されてもよい：
【０２３０】
【数８】
0006475273.tif 000009
【０２３１】
そのため、一例として、複数のコードブックのうちのl番目のコードブックは、それぞれのベクトルno_lead[][l]およびスケール表現のそれぞれのベクトルscales[][l]によって定義される複数の短縮によって定義されてもよく、各短縮k no_lead[k][l]は、この短縮に関連付けられたそれぞれのスケール表現scales[k][l]を用いてスケーリングされる。そのため、l番目のコードブックの複数のコードベクトルのうちのコードベクトルの第1のセットは、それぞれの第1のスケール表現によってスケーリングされた第1の短縮によって定義される。すなわち、l＝2の仮定の下では、上述の例では、第1のスケール表現は0.887になるであろう。l番目のコードブックの複数のコードベクトルのうちのコードベクトルの第2のセットは、それぞれの第2のスケール表現によってスケーリングされた第2の短縮によって定義される。すなわち、l＝2の仮定の下では、上述の例では、第2のスケール表現は1.635になるであろう。以下同様である。
【０２３２】
例えば、複数のコードブックのコードブックの数は、第1段階のコードベクトルの数に対応してもよく、第1段階の各コードベクトルは第2段階のそれぞれのコードブックに関連付けられる。一例として、入力ベクトルの第1の量子化表現は、第1段階において選択されたコードベクトルを指示するコードベクトル添字を表現してもよい。次に、ステップ410では、コードベクトル添字に基づいて、複数のコードブックのうちの対応するコードブックが選択される。例えば、第1段階の各コードベクトル添字は、第2段階の対応するコードブックに関連付けられてもよい。
【０２３３】
非限定例として、コードベクトル添字はlと示されてもよく、対応するコードブックは、それぞれのリーダベクトルno_lead[][l]、およびスケール表現のそれぞれのベクトルscales[][l]によって定義されてもよい。
【０２３４】
次に、ステップ420では、選択されたコードブックに基づいて入力ベクトルの第2の量子化表現が決定される。
【０２３５】
この入力ベクトルは、正規化された入力ベクトル、または正規化されていない入力ベクトルを表現してもよいことを理解されたい。
【０２３６】
例えば、入力ベクトルの第2の量子化表現を前記決定することは、選択されたコードブックの複数のコードベクトルのうちの、入力ベクトルに比べてわずかな歪みまたは最小の歪みを有するコードベクトルを決定することを含んでもよい。
【０２３７】
一例として、歪みメトリックが、コードベクトルおよび入力ベクトルの歪みを求めるために用いられてもよい。例えば、前記歪みメトリックは、コードベクトルと入力ベクトルとの間の任意の種類の好適な距離に基づいてもよい。一例として、ハミング距離もしくはユークリッド距離または任意のその他の距離が用いられてもよい。一例として、歪みメトリックが算出されるコードベクトルは必ずしも決定されなければならないわけではなく、歪みメトリックは、選択されたスケール表現に関連付けられたそれぞれのコードベクトル、およびこの選択されたスケール表現に関連付けられた基底コードベクトルのセットを固有に考慮することによって算出されてもよい。
【０２３８】
例えば、cx, z, y＝[cx, z, y, 0, cx, z, 1, ..., cx, z, n−1]がコードベクトルを表現し、i＝[i0, i1, ..., in−1]が入力ベクトルを表現する場合には、距離dは次式に基づいて算出されてもよい。
【０２３９】
【数９】
0006475273.tif 000010
【０２４０】
一例として、それぞれのコードベクトルは、コードベクトル値c0...n−1を含むn次元ベクトルを表現し、入力ベクトルは、入力ベクトル値i0...in−1を含むn次元ベクトルを表現し、それぞれの距離dを決定することは、d'を算出することに基づいて遂行される。
【０２４１】
【数１０】
0006475273.tif 000011
【０２４２】
この歪みメトリック（2）は、質の低下を全く伴うことなくメトリック（1）の簡単化したメトリックを表現すると考えられてもよい。
【０２４３】
さらに、一例として、歪みメトリックは重み関数に基づいて決定されてもよい。
【０２４４】
例えば、それぞれのコードベクトルは、コードベクトル値c0...n−1を含むn次元ベクトルを表現し、入力ベクトルは、入力ベクトル値i0...in−1を含むn次元ベクトルを表現し、それぞれの距離dw'を決定することは、次式を算出することに基づいて遂行される。
【０２４５】
【数１１】
0006475273.tif 000012
【０２４６】
ここで、wkは重み関数の重み係数を表現する。
【０２４７】
したがって、ステップ420では、適用された歪みメトリックに基づいて複数のコードベクトルのうちのコードベクトルが決定されてもよい。この決定は、例えば、複数のコードベクトルのうちの少なくとも1つのコードベクトルについての歪みを算出することを含んでもよく、決定された歪みメトリックに従い最小の歪みを有する、少なくとも1つのコードベクトルのうちのコードベクトルがステップ420における量子化のために選択される。例えば、前記少なくとも1つのコードベクトルは、選択されたコードブックの複数のコードベクトルのうちの全てのコードベクトル、または選択されたコードブックの複数のコードベクトルのうちのコードベクトルのサブセットを表現してもよい。
【０２４８】
図4dは、本発明の第2の態様に係る方法の第1の実施形態例のフローチャート400'である。このフローチャート400'のステップは、例えば、図1bに示されるように、有形記憶媒体30上に記憶されるコンピュータプログラム31のそれぞれのプログラムコード32によって定義されてもよい。有形記憶媒体30は、例えば、図1aのプログラムメモリ11を具体化してもよく、このとき、コンピュータプログラム31は図1aのプロセッサ10によって実行されてもよい。
【０２４９】
例えば、この方法400'は、本発明の第1の態様の方法のいずれかによって量子化された入力ベクトルを逆量子化するために用いられてもよい。
【０２５０】
ステップ430では、ベクトルの第1の量子化表現に基づいて複数のコードブックのうちのコードブックが選択される。この第1の量子化表現は、本発明の第1の態様に関して説明されている入力ベクトルの第1の量子化表現のいずれかを表現してもよい。コードブックのこの選択は、本発明の第1の態様に関して説明されているように遂行されてもよい。
【０２５１】
例えば、複数のコードブックは、図2に示されるステップ220において、または図4に示されるステップ410において用いられる複数のコードブックを表現し、第1の量子化表現は、本発明の第1の態様における第2段階量子化のために用いられるコードブックを指示する。
【０２５２】
ステップ440では、選択されたコードブックに基づいてベクトルの第2の量子化表現が逆量子化される。この第2の量子化表現は、本発明の第1の態様に関して説明されている入力ベクトルの第2の量子化表現のいずれかを表現してもよい。
【０２５３】
そのため、ステップ440は、選択されたコードブックに従って、本発明の第1の態様の第2段階量子化の逆の量子化を遂行する。したがって、本発明の第1の態様における第2段階量子化に関して与えられている説明は全て、ステップ440において遂行される逆量子化にも適用できる。
【０２５４】
逆量子化されたベクトルの第2の量子化表現は, このとき、本発明の第1の態様の入力ベクトルに対応してもよい。
【０２５５】
本発明の第1の態様において入力ベクトルの正規化が遂行された場合には、方法400'は、第1の量子化表現に基づく選択された正規化表現によるこの正規化を元に戻すことを含んでもよい。
【０２５６】
例えば、前記入力ベクトルは複数のベクトル成分を含んでもよく、前記逆正規化は、逆量子化された入力ベクトルの少なくとも1つのベクトル成分を、第1の量子化表現によって決まるそれぞれの正規化係数で除算することを含んでもよい。
【０２５７】
一例として、本発明の第1の態様に関して説明されているように、第1の量子化表現に基づいて正規化係数の複数のセットから正規化係数のセットが選択されてもよく、逆量子化された入力ベクトルの少なくとも1つのベクトル成分のうちの1つに対して除算されるそれぞれの正規化係数は、正規化係数の選択されたセットからのものとされる。
【０２５８】
例えば、本発明の第1の態様に関して提示されているあらゆる説明は本発明の第2の態様にも適用できてよい。
【０２５９】
図5は、本発明の第3の態様の第1の実施形態に係る方法のフローチャート500を示す。このフローチャート500のステップは、例えば、図1bに示されるように、有形記憶媒体30上に記憶されるコンピュータプログラム31のそれぞれのプログラムコード32によって定義されてもよい。有形記憶媒体30は、例えば、図1aのプログラムメモリ11を具体化してもよく、このとき、コンピュータプログラム31は図1aのプロセッサ10によって実行されてもよい。
【０２６０】
例えば、複数のベクトル係数を含む入力ベクトルが提供されてもよい。この入力ベクトルは、残差ベクトル表現を生じさせるベクトル量子化を表現してもよく、残差ベクトル表現が入力ベクトルを表現してもよい。非限定例として、入力ベクトルは、入力信号の線スペクトル周波数（LSF）を含むベクトルを表現してもよい。この入力信号は、部分オーディオ信号、例えば、音声信号の部分または非音声信号の部分、を少なくとも表現してもよく、このオーディオ信号は、有声部分および／または無声部分および／または一般部分および／または移行部分および／またはCNG部分を含んでもよい。例えば、量子化される入力信号は、エンコードされるオーディオ信号の残差データを表現してもよい。
【０２６１】
一例として、入力ベクトルは、x∈｛0, 1, ...k−1｝とするk個のベクトル成分ixを含むベクトルi＝[i0, i1, ..., ik]として定義されてもよい。その他の表現も同様に用いられてよいことを理解されたい。
【０２６２】
ステップ520では、前記複数のベクトル成分は、ベクトル成分に基づく規則に従ってベクトル成分の少なくとも2つのグループにグループ分けされる。
【０２６３】
一例として、ベクトル成分の少なくとも2つのグループの各グループは既定数のベクトル成分を含むと定義されてもよい。例えば、複数のベクトル成分の各ベクトル成分は、ベクトル成分の少なくとも2つのグループのそれぞれのグループに関連付けられてもよい。すなわち、ベクトル成分の少なくとも2つのグループのベクトル成分群は複数のベクトル成分を表現するか、または、別の例として、ベクトル成分の少なくとも2つのグループのベクトル成分群は複数のベクトル成分のうちのベクトル成分のサブセットを表現してもよい。
【０２６４】
例えば、前記規則は、ベクトル成分の少なくとも2つのグループの各々のベクトル成分は既定のエネルギー特性を満たさなければならないことを指定してもよい。一例として、この規則は、ベクトル成分の少なくとも2つのグループのうちのグループのベクトル成分群は同様のエネルギー値を有してもよいと定義してもよく、および／または、例えば、前記規則は、ベクトル成分の少なくとも2つのグループのうちの第1のグループであって、この第1のグループはl1＜k個のベクトル成分を含む、第1のグループは、複数のベクトル成分のうちのl1個の最もエネルギーが高いベクトル成分またはよりエネルギーが低いベクトル成分を含み、それに対して、複数のベクトル成分のうちの残りのk−l1個のベクトル成分は、ベクトル成分の第1のグループを表現しないベクトル成分の少なくとも2つのグループのうちの残りの少なくとも1つのグループに関連付けられることを指定してもよい。
【０２６５】
例えば、前記規則は、ベクトル成分に関連付けられたエネルギー値に基づく規則を表現してもよい。一例として、それぞれのベクトル成分に関連付けられたエネルギー値は、例えば、それぞれのベクトル成分のエネルギー値、またはそれぞれのベクトル成分のエネルギー値に比例する値、またはこのベクトル成分に関連付けられた重み係数で加重されたそれぞれのベクトル成分のエネルギー値を表現するエネルギー値、またはこのベクトル成分に関連付けられた重み係数で加重されたそれぞれのベクトル成分のエネルギー値を表現するエネルギー値に比例する値、または複数のベクトル成分のうちの残りのベクトル成分のエネルギーランク（rank）に対するそれぞれのベクトル成分のエネルギーランクを表現してもよい。例えば、複数のベクトル成分の最低エネルギー値に関連付けられるベクトル成分は最低エネルギーランク、例えばrank＝1またはrank＝k、に関連付けられてもよく、複数のベクトル成分の最高エネルギー値に関連付けられるベクトル成分は最高エネルギーランク、例えばrank＝kまたはrank＝1、に関連付けられてもよい。そのため、ベクトル成分のエネルギーランクは、複数のベクトル成分のうちの全ての他の残りのベクトル成分のエネルギーと比較した、それぞれのベクトル成分のそのエネルギーに関する位置を指示してもよい。
【０２６６】
x∈｛0, 1, ...k−1｝とするベクトル成分ixのエネルギー値exは、例えば、
ex＝ix＾2
に基づくか、またはエネルギー値の任意のその他の適切な定義に基づいて算出されてもよい。
【０２６７】
x∈｛0, 1, ...k−1｝とするベクトル成分ixが、対応する重み係数wxで加重される場合には、このとき、対応する重み係数で加重されたエネルギー値は、例えば、次式に基づいて算出されてもよいであろう。
ex＝wxix＾2
【０２６８】
さらに、別の例として、前記規則は、ベクトル成分に関連付けられた既定のノルムに基づく規則であってもよい。この規則は、ベクトル成分の少なくとも2つのグループのうちのグループのベクトル成分群は特定のノルムを満たしてもよいか、または特定のノルムに基づく既定の範囲内にあると定義してもよく、このノルムは、例えば、p≧1が成り立つとして、対応するLp空間のそれぞれのLpノルム、または任意のその他の適切なノルムを表現してもよい。
【０２６９】
例えば、規則は、ベクトル成分の少なくとも2つのグループのうちの第1のグループのベクトル成分群に適用される特定のノルムは第1の既定の範囲内にある、ベクトル係数の少なくとも2つのグループのうちの第2のグループのベクトル成分に適用される特定のノルムは第2の既定の範囲内にある、および以下同様である、ただし、第1および第2の既定の範囲は互いに異なる、と定義してもよい。
【０２７０】
一例として、ベクトル成分の少なくとも2つのグループは、x∈｛1, 2, ...n｝、n≧2とする、ベクトル成分のn個のグループgxを表現し、ベクトル成分の少なくとも2つのグループのうちのx番目のグループgxは入力ベクトルの複数のベクトル係数のうちのlx個のベクトル係数を含み、前記規則は、x番目のグループgxのlx個のベクトル係数の特定のノルムは、このx番目のグループgxに関連付けられた既定の範囲rx内にあることを指定する。そのため、複数のxの範囲lxが定義されてもよく、それぞれのx番目のグループgxに関連付けられた各範囲rxは、異なる範囲を表現してもよい。
【０２７１】
例えば、特定のノルムがlpノルムを表現し、x番目のグループgxのlx個のベクトル係数がgx, 0, gx, 1, ...、gx, lx−1, と表されてもよい場合には、このノルムは、x番目のグループgxのlx個のベクトル係数について以下のように算出されてもよい：
【０２７２】
【数１２】
0006475273.tif 000013
【０２７３】
例えば、l1ノルム（すなわち、p＝1）が用いられてもよく、またはl2ノルム（すなわち、p＝2）が用いられてもよく、または任意のその他の適切なノルムが用いられてもよい。
【０２７４】
例えば、ステップ520における前記複数のベクトル成分をベクトル成分の少なくとも2つのグループにグループ分けすることは、ベクトル成分の前記少なくとも2つのグループの初期定義による初期化を含んでもよく、ベクトル成分の前記少なくとも2つのグループのうちのグループの各々は、入力ベクトルの複数のベクトル成分のうちのベクトル成分群の、ベクトル成分の少なくとも2つのグループへの初期対応付けに従って、複数のベクトル成分のうちの少なくとも1つのベクトル成分を含み、ベクトル成分の少なくとも2つのグループのうちの異なるグループのベクトル成分群は、ベクトル成分群に関連付けられたエネルギー値に基づく規則が満たされるまで、すなわち、ベクトル成分の少なくとも2つのグループの各グループのベクトル成分群がこの規則を満たすまでずっと、異なるグループの間で入れ換えられる。
【０２７５】
あるいは、別の例として、第1の量子化表現の複数のベクトル成分のうちのベクトル成分群の、ベクトル成分の少なくとも2つのグループへの前記初期対応付けは、ベクトル成分群に関連付けられたエネルギー値に基づく規則に従ってベクトル成分群がベクトル成分の少なくとも2つのグループに対応付けられる仕方で遂行されてもよい。そのため、対応付けアルゴリズムは、複数のベクトル成分のうちのベクトル成分群をベクトル成分の少なくとも2つのグループに対応付ける際に、規則を考慮してもよい。
【０２７６】
その結果、ステップ520におけるグループ分けが遂行された後には、ベクトル成分群の少なくとも2つのグループの各グループのベクトル成分群は、複数のベクトル成分のうちのベクトル成分群に関連付けられたエネルギー値に基づく規則を満たす。
【０２７７】
ステップ530では、ベクトル成分の少なくとも2つのグループのうちの少なくとも1つのグループの各グループについて、ベクトル成分のそれぞれのグループに関連付けられたコードブックに基づいてベクトル成分のそれぞれのグループの量子化表現が決定される。その結果、ステップ530では、ベクトル成分の少なくとも1つのグループの少なくとも1つの量子化表現が決定され、ベクトル成分の少なくとも1つのグループの少なくとも1つの量子化表現の各々は、ベクトル成分の少なくとも1つのグループのうちのベクトル成分の対応するグループに関連付けられる。例えば、ステップ530では、ベクトル成分の少なくとも2つのグループの各グループが量子化されてもよい。
【０２７８】
例えば、ステップ530では、ベクトル成分の少なくとも1つのグループの各々を量子化するために、同じコードブックが用いられてもよい。
【０２７９】
あるいは、別の例として、ステップ530において量子化されるベクトル成分の少なくとも1つのグループのうちのベクトル成分のグループを量子化するために用いられるコードブックは、ベクトル成分のそれぞれのグループのコードベクトルに依存して複数のコードブックから選ばれてもよい。そのため、例えば、より低い／低いエネルギー値に関連付けられたベクトル成分群を含むベクトル成分のグループは、低エネルギーベクトル成分群のために最適化されたコードブックに基づいて量子化されてもよく、それに対して、より高い／高いエネルギー値（例えば、より低い／低いエネルギー値に関連付けられたベクトル成分を含むベクトル成分のグループのようにより高いエネルギー値）に関連付けられたベクトル成分を含むベクトル成分のグループは、高エネルギーベクトル成分群のために最適化されたコードブックに基づいて量子化されてもよい。その結果、ステップ530では、例えば、量子化されるベクトル成分の少なくとも1つのグループのうちのそれぞれのグループを量子化するために適切なコードブックが選択されてもよい。そのため、一例として、ベクトル成分の少なくとも2つのグループのベクトル成分群に関連付けられたエネルギー値に基づく規則が満たされた結果、ベクトル成分のそれぞれのグループの特定のエネルギー特性が、複数のコードブックのうちの選択されるそれぞれのコードブックのために用いられてもよい。ここで、複数のコードブックのうちのコードブック群は、ベクトル成分の異なるエネルギー特性に応じて最適化されていてもよい。
【０２８０】
例えば、ステップ530においてエンコードされる少なくとも2つのグループのうちの少なくとも1つのグループの各々は、本発明の第1の態様に係る2段階量子化を適用することによってエンコードされてもよい。すなわち、一例として、ステップ530は、ベクトル成分の少なくとも1つのグループの各々について、本発明のための第1の態様の方法200、300および400のいずれかを遂行することを含む。すなわち、ステップ530においてエンコードされるベクトル成分の少なくとも1つのグループのベクトル成分のそれぞれのグループは、本発明の第1の態様に係るそれぞれの入力ベクトルを表現する。
【０２８１】
ステップ530において得られたコードベクトルの少なくとも2つのグループのうちのコードベクトルの少なくとも1つのグループの少なくとも1つの量子化表現は、本発明の第1の態様に係る入力ベクトルの第2の量子化表現と考えられてもよい。
【０２８２】
さらに、一例として、方法500は、ベクトル成分の少なくとも2つのグループに基づいて複数のベクトル成分を含む（入力）ベクトルを決定するように構成される情報を決定することを含んでもよい。例えば、前記情報は、ベクトル成分の少なくとも2つのグループのうちの異なるグループのベクトル成分の間で遂行された入れ換えに関する情報を含んでもよい。その結果、一例として、受信機では、ベクトル成分の少なくとも2つのグループの初期の2つのグループを得るために、前記入れ換えが逆順序で行われてもよい。初期の2つのグループは規則を満たさなくてもよいが、入力ベクトルを再構築するために用いることができる。例えば、複数のベクトル成分に基づいてベクトル成分の前記初期の少なくとも2つのグループを定義することは、受信機に知られていてもよい既定の様式で遂行されてもよい。
【０２８３】
ベクトル成分の少なくとも2つのグループに基づいて複数のベクトル成分を含む入力ベクトルを決定するように構成されるこの情報は、入力ベクトルの前記第2の量子化表現内に追加情報として含まれてもよい。
【０２８４】
図6は、本発明の第3の態様の第2の実施形態に係る方法の任意選択的なフローチャート600を示す。この方法600は、例えば、本発明の第3の態様の第1の実施形態に係る方法500のステップ520において前記複数のベクトル成分をベクトル成分の少なくとも2つのグループにグループ分けするために用いられてもよい。このフローチャート600のステップは、例えば、図1bに示されるように、有形記憶媒体30上に記憶されるコンピュータプログラム31のそれぞれのプログラムコード32によって定義されてもよい。有形記憶媒体30は、例えば、図1aのプログラムメモリ11を具体化してもよく、このとき、コンピュータプログラム31は図1aのプロセッサ10によって実行されてもよい。
【０２８５】
ステップ610では、入力ベクトルの複数のベクトル成分がベクトル成分の少なくとも2つのグループに分割される。例えば、前記分割は、規則を満たさなくてもよい、ベクトル成分の初期の少なくとも2つのグループを得るための複数のベクトル成分のベクトル成分群の上述の初期グループ分けの一例を表してもよい。
【０２８６】
入力ベクトルは、x∈｛0, 1, ...k−1｝とする、k個のベクトル成分ixを含むベクトルi＝[i0, i1, ..., ik]として定義されてもよいとの仮定の下で、前記k個のベクトル成分i0, i1, ..., ikは、ステップ610において既定の様式に従ってベクトル成分の少なくとも2つのグループの少なくとも2つのグループに分割される。例えば、ベクトル成分の少なくとも2つのグループのうちの第1の初期グループはl1個のベクトル成分を含んでもよく、このl1個のベクトル成分は入力ベクトル表現の最初のl1個のベクトル成分、すなわち、i0, ..., il1−1を表現してもよい。ベクトル成分の第2のグループはl2個のベクトル成分を含んでもよく、このl2個のベクトル成分は、第2のグループの先行グループ、すなわち、ベクトル成分の第1のグループのベクトル成分の後に直接続く複数のベクトル成分のうちのl2個のベクトル成分を表現してもよく、このl2個のベクトル成分はil1, ..., il1＋l2−1を表現してもよい。ベクトル成分の少なくとも2つのグループがベクトル成分の2つを超えるグループを表現する場合には、このとき、ベクトル成分のさらなるグループは各々、複数のベクトル係数をベクトル係数の前記少なくとも2つのグループに分割することを通じて得られる、複数のベクトル成分のうちの多数の隣り合うベクトル成分を含む。例えば、少なくとも2つのグループの各グループは同数のベクトル係数を含んでもよく、または、別の例として、ベクトル係数の数はベクトル係数の少なくとも2つのグループのうちのグループによって異なってもよい。
【０２８７】
結局、例えば、以下のように限定されるわけではないが、入力ベクトルは、k個のベクトル成分を含むベクトルを表現すると仮定されてもよく、このベクトルはベクトル成分の2つのグループg1およびg2に分割される：
【０２８８】
【数１３】
0006475273.tif 000014
【０２８９】
ステップ620では、ベクトル成分の少なくとも2つのグループの各グループは規則を満たすかどうかがチェックされる。
【０２９０】
少なくとも2つのグループの各々が規則を満たす場合には、このとき、ベクトル係数の少なくとも2つのグループのうちの2つの異なるグループの間でベクトル係数を再配列する必要はなく、方法600は参照符号640に進んでもよく、そこで、それは、図5に示される方法500の530へジャンプしてもよい。
【０２９１】
ステップ620において、少なくとも1つのグループのうちの少なくとも1つのグループは規則を満たさないと判定された場合には、方法600は、ステップ630における、少なくとも2つのグループのうちの第1のグループのベクトル成分の、ベクトル成分の少なくとも2つのグループのうちの第2のグループのベクトル成分との入れ換えへ進む。この入れ換えは、第1のグループ、および入れ換えられる第1のグループのそれぞれのベクトル係数、ならびに対応する第2のグループ、および入れ換えられる第2のグループのそれぞれのベクトル係数は、規則に基づいて、入れ換え後に規則が満たされるように選ばれるか、あるいは、規則を満たすためには1対を超える係数が入れ換えられなければならない場合には、選択された第1のグループの選択されたベクトル係数および選択された第2のグループの選択されたベクトル係数は、規則を満たすために入れ換えられる1対を超える係数のうちの1対の係数を表現するように、選ばれる仕方で遂行される。
【０２９２】
一例として、ベクトル係数の第1のグループg1のil1−1をベクトル係数の第2のグループのil1と入れ換えることが必要となる場合があり、この入れ換えによって、以下のようにベクトル係数の再配列されたグループができてもよい：
【０２９３】
【数１４】
0006475273.tif 000015
【０２９４】
そのため、一例として、ベクトル係数の前記少なくとも2つのグループの各グループは、入力ベクトルのベクトルiの定位置に関連付けられてもよく、前記入れ換えは、ベクトルi内の入れ換えられるベクトル係数の位置を交換することによって遂行されてもよく、ベクトルi'は入れ換え後の入力ベクトルを表現してもよい。
【０２９５】
次に、ステップ620において、ベクトル係数の少なくとも2つのグループの各グループは規則を満たすかどうかがチェックされてもよい。いいえである場合には、このとき、本方法は、異なるグループの2つのベクトル係数を互いに入れ換えることへ再度進む。その結果、図6においてステップ620および630によって定義されるループは、ステップ620において規則が満たされるまで遂行されてもよい。
【０２９６】
例えば、前記規則は、ベクトル成分の少なくとも2つのグループのうちの第1のグループは、複数のベクトル成分のうちのl1個の最もエネルギーの高いベクトル成分（またはl1個のよりエネルギーの低いベクトル成分）を含み、それに対して、複数のベクトル成分のうちの残りのk−l1個のベクトル成分は、ベクトル成分の第1のグループを表現しないベクトル成分の少なくとも2つのグループのうちの残りの少なくとも1つのグループに関連付けられることを指定してもよいと仮定されてもよい。さらに、一例として、この規則によれば、ベクトル成分の少なくとも2つのグループのうちの第2のグループは、複数のベクトル成分のうちの残りのk−l1個のベクトル成分のうちのl2個の最もエネルギーの高いベクトル成分（またはl2個のよりエネルギーの低いベクトル成分）を含んでもよい。
【０２９７】
そのため、例えば、x∈｛1, 2, ...n｝とする、ベクトル係数のn個のグループgxが用いられ、x番目のグループgxは入力ベクトルの複数のベクトル係数のうちのlx個のベクトル係数を含む（またはそれらに関連付けられる）との仮定の下では、規則によれば、x番目のグループgxのlx個のベクトル係数は、複数のベクトル係数のうちの
【０２９８】
【数１５】
0006475273.tif 000016
【０２９９】
番目から
【０３００】
【数１６】
0006475273.tif 000017
【０３０１】
にエネルギーの高い（またはエネルギーの低い）ベクトル係数を表現しなければならない。
【０３０２】
あるいは、別の例として、ベクトル成分に関連付けられた既定のノルムに基づく上述の規則が適用されてもよい。
【０３０３】
例えば、少なくとも2つのグループのそれぞれのグループ内のベクトル係数の順序は、適用された規則にとって無意味であってもよい。
【０３０４】
別の例として、入力ベクトルは16個のベクトル係数を含んでもよく、ベクトル成分の少なくとも2つのグループはベクトル成分のちょうど2つのグループであり、2つのグループは各々8つのベクトル成分を含み、初期に、第1のグループは、例えばステップ610によって得られた、複数のベクトル係数のうちの最初の8つのベクトル成分i0, ..., i7を含んでもよく、第2のグループは残りの8つのベクトル成分i8, ..., i15を含んでもよい：
【０３０５】
【数１７】
0006475273.tif 000018
【０３０６】
ここで、成分のエネルギー値の順序は、一例では、（ベクトルi内のそれぞれの位置に対応する）各成分のランクが以下の通りであるようになっていてもよい：
1 4 5 6 2 9 3 7 11 12 10 8 13 14 15 16。
【０３０７】
ここで、1は、それぞれのベクトル成分i0は、全てのベクトル成分のうち、エネルギー値に関して最も高いランクを有することを指示し、以下同様に続く。すなわち、16は、ベクトル成分i15はエネルギー値に関して16番目に高いランクを有することを指示する。
【０３０８】
次に、例えば、ステップ620では、規則は満たされているどうか、またはベクトル係数の2つのグループg1およびg2の各々がチェックされる。例えば、規則は、x番目のグループgxのlx個のベクトル係数は、複数のベクトル係数のうちの
【０３０９】
【数１８】
0006475273.tif 000019
【０３１０】
番目から
【０３１１】
【数１９】
0006475273.tif 000020
【０３１２】
にエネルギーの高いベクトル係数を表現しなければならないという上述の規則を表現してもよい。
【０３１３】
その結果、ステップ620では、第1のグループおよび第2のグループはこの規則を満たさないことが検出される。これは、ベクトル成分の第1のグループのベクトル係数i7は9番目にエネルギーの高いベクトル係数を表現するがゆえに、第1のグループg1は1番目から8番目にエネルギーの高いベクトル係数を含まないため、およびベクトル係数の第2のグループのベクトル係数i11は8番目にエネルギーの高いベクトル係数を表現するがゆえに、第2のグループg2は9番目から16番目にエネルギーの高いベクトル係数を含まないためである。
【０３１４】
そのため、ステップ620では、適用された規則に従わないベクトル係数が特定されてもよく、すなわち、これらのベクトル係数は、規則が満たされるまで入れ換えられる。
【０３１５】
その結果、本例では、ベクトル係数の第1のグループおよび第2のグループを再配列するために、ベクトル成分の第1のグループのベクトル係数i7はベクトル係数の第2のグループのベクトル係数i11と入れ換えられ、ベクトル係数の再配列されたグループは以下のように表されてもよい：
【０３１６】
【数２０】
0006475273.tif 000021
【０３１７】
そのため、再配列されたベクトルi'の（またはベクトル係数の再配列されたグループの）エネルギー値の順序は以下のようになる：
1 4 5 6 2 8 3 7 11 12 10 9 13 14 15 16。
【０３１８】
次に、ステップ620では、第1のグループg1は1番目から8番目にエネルギーの高いベクトル係数をまさに含むこと、および第2のグループg2は9番目から16番目にエネルギーの高いベクトル係数をまさに含むことが検出され、それゆえ、規則は2つのベクトルグループの各グループについて満たされる。
【０３１９】
このとき、方法600は次に参照符号640へ進んでもよく、方法500のステップ530へジャンプしてもよい。
【０３２０】
図7は、本発明の第4の態様に係る方法の第1の実施形態例のフローチャート700である。
【０３２１】
このフローチャート700のステップは、例えば、図1bに示されるように、有形記憶媒体30上に記憶されるコンピュータプログラム31のそれぞれのプログラムコード32によって定義されてもよい。有形記憶媒体30は、例えば、図1aのプログラムメモリ11を具体化してもよく、このとき、コンピュータプログラム31は図1aのプロセッサ10によって実行されてもよい。
【０３２２】
例えば、この方法700は、本発明の第3の態様の方法のいずれかによって得られた、例えば、図5のステップ530によって得られた、ベクトル成分のグループの量子化表現を逆量子化するために用いられてもよい。
【０３２３】
ステップ710では、ベクトル成分の少なくとも2つのグループのうちのベクトル成分のグループの各量子化表現が逆量子化される。ベクトル成分のこれらの量子化された少なくとも2つのグループは、本発明の第3の態様の方法のいずれかによって、例えば、図5ステップの530を用いて得られたベクトル成分の少なくとも2つの量子化されたグループを表現してもよい。
【０３２４】
そのため、ステップ710の前記逆量子化は図5のステップ530に対して逆の順序で遂行されてもよく、ベクトル成分の各量子化されたグループは、ステップ710において、ベクトル成分のそれぞれの逆量子化されたグループを決定するために、逆量子化される。一例として、この逆量子化は本発明の第3の態様に従って遂行されてもよい。
【０３２５】
ステップ720では、次に、ベクトル成分の少なくとも2つの逆量子化されたグループに基づいて複数のベクトル成分を含むベクトルを決定するように構成される情報に基づき、ベクトル成分の少なくとも2つの逆量子化されたグループに基づいて、複数のベクトル成分を含むベクトルが決定される。ベクトル成分の少なくとも2つの逆量子化されたグループに基づいて複数のベクトル成分を含むベクトルを決定するように構成されるこの情報は、本発明の第3の態様において説明されているベクトル成分の少なくとも2つの逆量子化されたグループに基づいて複数のベクトル成分を含む入力ベクトルを決定するように構成される情報を表現してもよく、例えば、ベクトル成分の少なくとも2つの逆量子化されたグループとともに受信機において受信されてもよい。
【０３２６】
例えば、ステップ720は、ベクトル成分の少なくとも2つの逆量子化されたグループのうちの異なるグループの間のベクトル成分群の再入れ換えを含んでもよい。一例として、情報は、ベクトル成分の少なくとも2つのグループのうちの異なるグループのベクトル成分群の間で遂行された入れ換えに関する情報を含んでもよく、例えば、この情報は、ステップ630において遂行された、ベクトル成分の少なくとも2つのグループのうちの第1のグループのベクトル成分の、ベクトル成分の少なくとも2つのグループのうちの第2のグループのベクトル成分とのものを定義する入れ換えに関する情報を含んでもよい。そのため、一例として、ベクトル成分の少なくとも2つのグループのうちの異なるグループのベクトル成分群の間で遂行された入れ換えに関する情報を含む情報に基づいて、方法600によって遂行された入れ換えは、ベクトル係数の少なくとも2つの逆量子化されたグループが、入れ換えが遂行される前の本発明の第3の態様のベクトル成分の初期の少なくとも2つのグループに対応するまで、ベクトル成分の少なくとも2つの逆量子化されたグループに対して取り消されてもよい。次に、ベクトル係数のこれらの少なくとも2つの逆量子化されたグループに基づいて、例えば、本発明の第3の態様において遂行された入力ベクトルの複数の成分の分割を取り消すために、ベクトル係数の少なくとも2つの逆量子化されたグループを一つに結合することによって、入力ベクトルの第1の表現を得ることができる。例えば、方法600において入れ換えが必要でなかった場合には、このとき、これは情報によって指示されてもよく、ベクトル係数の少なくとも2つの逆量子化されたグループは、例えば、入力ベクトルを得るために入れ換えを全く行うことなく一つに結合されてもよい。
【０３２７】
あるいは、別の例として、第3の態様における、入力ベクトルの複数のベクトル成分のうちのベクトル成分群の、ベクトル成分の少なくとも2つのグループへの初期対応付けが、ベクトル成分群が、ベクトル成分群に関連付けられたエネルギー値に基づく規則に従ってベクトル成分の少なくとも2つのグループに対応付けられる仕方で遂行された場合には、ベクトル成分の少なくとも2つの逆量子化されたグループに基づいて複数のベクトル成分を含むベクトルを決定するように構成される情報は、この対応付けを指示し、ステップ720では、第1の量子化表現は、ベクトル係数の少なくとも2つの逆量子化されたグループのベクトル係数群の、（入力）ベクトルの複数のベクトル成分への対応する逆の対応付けを遂行することによって、得られる。
【０３２８】
例えば、本発明の第3の態様に関して提示されているあらゆる説明は本発明の第4の態様にも適用できてよい。
【０３２９】
これらの擬似コード例内のループは限定的なものではなく、単一のコードベクトル添字から少なくとも2つのコードベクトル添字を抽出するために、異なる仕方で配列されてもよいことを理解されたい。
【０３３０】
本出願において使用されるとき、用語'回路機構'は以下のものの全てを指す：
（a）ハードウェアのみの回路実装形態（アナログおよび／またはデジタル回路機構のみの形の実装形態等）ならびに
（b）（場合に応じて）以下のもの等の、回路およびソフトウェア（および／またはファームウェア）の組み合わせ：
（i）プロセッサ（単数または複数）の組み合わせ、または
（ii）協働して携帯電話または測位デバイス等の装置に種々の機能を遂行させるプロセッサ（単数または複数）／ソフトウェア（デジタル信号プロセッサ（単数または複数）を含む）の部分、ソフトウェアの部分、およびメモリ（単数または複数）の部分、ならびに
（c）たとえ、ソフトウェアまたはファームウェアは物理的に存在しなくても、動作のためにはソフトウェアまたはファームウェアを必要とする、マイクロプロセッサ（単数または複数）、またはマイクロプロセッサ（単数または複数）の部分等の、回路。
【０３３１】
'回路機構'のこの定義は、全ての請求項を含めて、本出願におけるこの用語の全ての使用に適用される。さらなる例として、本出願において使用されるとき、用語「回路機構」は、単なるプロセッサ（もしくは複数のプロセッサ）、またはプロセッサの部分、ならびにその（もしくはそれらの）付随のソフトウェアおよび／またはファームウェアの実装形態も同様に対象範囲に含むであろう。用語「回路機構」は、例えば、特定のクレーム要素に適用可能な場合には、携帯電話または測位デバイスのためのベースバンド集積回路またはアプリケーションプロセッサ集積回路も同様に対象範囲に含む。
【０３３２】
本出願に説明されている本発明の諸態様およびそれらの諸実施形態に関して、あらゆる動作またはステップの開示は、対応する装置の対応する（機能）構成（例えば、対応する装置のコンピュータプログラムコードおよび／またはプロセッサおよび／または何らかの他の手段の構成）、実行されるとこうした動作またはステップを生じさせるように定義された対応するコンピュータプログラムコード、ならびに／あるいはシステム（またはその一部）の対応する（機能）構成の開示として理解されるべきであることを理解されたい。
【０３３３】
本出願に提示されている本発明の諸態様およびそれらの諸実施形態、ならびに同様にそれらの一つ一つの特徴は、全ての可能な相互の組み合わせで開示されることも理解されたい。以上に提示されているフローチャートにおける方法ステップの順序は必須ではなく、代替の順序も同様に可能であってよいことも理解されたい。
【０３３４】
本発明は以上において非限定例によって説明されている。特に、当業者に明白であり、添付の請求項の範囲および趣旨から逸脱することなく実施可能な代替的な方法および変更が存在することに留意されたい。
【図１ａ】
0006475273.tif 000024
【図１ｂ】
0006475273.tif 000025
【図２】
0006475273.tif 000026
【図３】
0006475273.tif 000027
【図４ａ】
0006475273.tif 000028
【図４ｂ】
0006475273.tif 000029
【図４ｃ】
0006475273.tif 000030
【図４ｄ】
0006475273.tif 000031
【図５】
0006475273.tif 000032
【図６】
0006475273.tif 000033
【図７】
0006475273.tif 000034