(57)【特許請求の範囲】
【請求項１】
音声の線スペクトルペアー（ＬＳＰ）量子化器の高速探索方法であって、
前記音声の現在のフレームと前記現在のフレームの直前のフレームとに複数の窓（Ｗ１（Ｎ），Ｗ２（Ｎ））がそれぞれ適用されることによって得られた音声スペクトルがそれぞれ周波数の区分毎に区切られることによって前記音声のベクトルとしての目標ベクトル（ｒｍ，ｎ）がそれぞれ生成され、これら前記目標ベクトル（ｒｍ，ｎ）によって前記周波数の区分毎に副行列が構成され、
前記目標ベクトル（ｒｍ，ｎ）と比較するためのコードブックのベクトルを、コードベクトル（ｒ’ｍ，ｎ）と定義し、
ｍとｎとｌはそれぞれ、ゼロ以上の整数であるとすると、
前記高速探索方法は、
順序性質を有するように変換された前記目標ベクトル（ｒｍ，ｎ）である副行列目標ベクトル（Ｒｍ，ｎ）と、前記順序性質を有するように変換された前記コードベクトル（ｒ’ｍ，ｎ）である変換コードベクトル（Ｃｍ，ｎ）とを求める第１段階であって、ｍ番目の副行列のための線スペクトルペアー係数に変換した変換ベクトル（Ｌｍ，ｎ）から前記ｍ番目の副行列のための予測ベクトル（ｐｍ，ｎ）を引くことによって前記ｍ番目の副行列が有する前記副行列目標ベクトル（Ｒｍ，ｎ）を求め、且つ前記ｍ番目の副行列に対応する前記コードベクトル（ｒ’ｍ，ｎ）の要素値（ｒ’ｍ，ｌ（Ｌの小文字），ｎ）に、前記ｍ番目の副行列に対応する前記変換ベクトル（Ｌｍ，ｎ）のＤＣ成分の平均ベクトル（ＬＤＣ，ｍ，ｎ）を足すことによって前記ｍ番目の副行列に対応する前記変換コードベクトル（Ｃｍ，ｎ）の要素値（Ｃｍ，ｌ（Ｌの小文字），ｎ）を求めることと；
前記変換コードベクトル（Ｃｍ，ｎ）からなるように、前記順序性質を有する前記副行列ごとに変換コードブック（Ｃｍ）を構成する第２段階と；
前記変換コードブック（Ｃｍ）のうちのｎ番目の前記変換コードベクトル（Ｃｍ，ｎ）を選定することによって、選定されたｎ番目の前記変換コードベクトル（Ｃｍ，ｎ）が有する要素値（Ｃｍ，ｌ（Ｌの小文字），ｎ）を基準にして降順に前記変換コードベクトル（Ｃｍ，ｎ）を整列し、その結果、整列コードベクトル（Ｃｍ，ｎＳｏｒｔｅｄ）を生成する第３段階と；
前記副行列目標ベクトル（Ｒｍ，ｎ）に隣接する隣接副行列目標ベクトル（Ｒｍ＋１，
ｎ−１，Ｒｍ，ｎ＋１，Ｒｍ−１，ｎ＋１，Ｒｍ，ｎ−１）の要素値である隣接要素値と、前記整列コードベクトル（Ｃｍ，ｎＳｏｒｔｅｄ）の要素値である整列要素値（Ｃｍ，ｎ,lＳｏｒｔｅｄ）とを比較し、前記順序性質に違背した前記整列要素値（Ｃｍ，ｎ,lＳｏｒｔｅｄ）を探索対象から除外することによって、前記変換コードブック（Ｃｍ）の探索範囲を決定する第４段階と；
前記探索範囲内で前記副行列目標ベクトル（Ｒｍ，ｎ）と、前記整列コードベクトル（Ｃｍ，ｎＳｏｒｔｅｄ）とを比較することによってエラー基準値（Ｅｍ，ｌ（Ｌの小文字）、Ｅ（＋）ｍ，ｌ（Ｌの小文字））を求め、前記エラー基準値（Ｅｍ，ｌ（Ｌの小文字）、Ｅ（＋）ｍ，ｌ（Ｌの小文字））を最小化させるコードブックインデックス（ｌ（Ｌの小文字））を決定することによって前記整列要素値（Ｃｍ，ｎ,lＳｏｒｔｅｄ）を求める第５段階と
を有することを特徴とする、高速探索方法。
【請求項２】
ｍ番目の副行列のｎ番目の前記目標ベクトルを、ｒｍ，ｎと定義し、
ｍ番目の副行列のｎ番目の前記平均ベクトルを、ＬＤＣ，ｍ，ｎと定義し、
ｍ番目の副行列のｎ番目の前記コードベクトルを、ｒ’ｍ，ｎと定義し、
ｍ番目の副行列のｎ番目の前記変換ベクトルを、Ｌｍ，ｎと定義し、
ｍ番目の副行列のｎ番目の前記予測ベクトルを、ｐｍ，ｎと定義し、
前記ｒｍ，ｎと前記ｒ’ｍ，ｎの符号がそれぞれ同じ場合の前記エラー基準値を、Ｅｍ，ｌ（Ｌの小文字）と定義し、
前記ｒｍ，ｎと前記ｒ’ｍ，ｎの符号が互いに異なる場合の前記エラー基準値を、Ｅ（＋）ｍ，ｌ（Ｌの小文字）と定義し、
前記変換コードベクトルを、Ｃｍ，ｎと定義し、
前記Ｃｍ，ｎのｌ番目の要素値を、Ｃｍ，ｌ（Ｌの小文字），ｎと定義すると、
前記第５段階は、
下記の数式１と数式２に前記副行列目標ベクトル（Ｒｍ，ｎ）と前記変換コードベクトル（Ｃｍ，ｎ）を適用することによって、前記エラー基準値を求める段階からなる、
請求項１記載の高速探索方法。
【数１】
0004731654.tif 000044
【数２】
0004731654.tif 000045
【請求項３】
前記副行列の数は、５であり、
前記副行列がそれぞれ有する副行列目標ベクトル（Ｒｍ，ｎ）の数は、４であり、
前記第３段階は、
１番目の前記変換コードブック（Ｃｍ，ｍ＝１）では４番目の前記副行列目標ベクトル（Ｒ１，４）を選定し、且つ２〜４番目の前記変換コードブック（Ｃｍ，ｍ＝２〜４）では、それぞれ３番目の前記副行列目標ベクトル（Ｒ２〜４，３）を選定し、且つ５番目の前記変換コードブック（Ｃｍ，ｍ＝５）では４番目の前記副行列目標ベクトル（Ｒ５，４）を選定する第１小段階と；
１番目の前記変換コードブック（Ｃｍ，ｍ＝１）では４番目の前記変換コードベクトル（Ｃ１，４）を降順で整列し、
２〜４番目の前記変換コードブック（Ｃｍ，ｍ＝２〜４）では３番目の前記変換コードベクトル（Ｃ２〜４，３）を降順で整列し、
５番目の前記変換コードブック（Ｃｍ，ｍ＝５）では４番目の前記変換コードベクトル（Ｃ５，４）を降順で整列する第２小段階と
を有する、
請求項１記載の高速探索方法。
【請求項４】
前記順序性質によって降順で整列したｎ番目の前記変換コードベクトル（Ｃｍ，ｎ）を、前記整列コードベクトル（Ｃｍ，ｎＳｏｒｔｅｄ）と定義すると、
前記第４段階は、
前記整列コードベクトル（Ｃｍ，ｎＳｏｒｔｅｄ）の要素値（Ｃｍ，ｌ（Ｌの小文字），ｎＳｏｒｔｅｄ）を、ｎ＋１番目の前記副行列目標ベクトル（Ｒｍ，ｎ＋１）の要素値（Ｒｍ，ｌ（Ｌの小文字），ｎ＋１）と比較する順方向比較を通じて前記探索範囲の開始点を求める小段階と；
前記整列コードベクトル（Ｃｍ，ｎＳｏｒｔｅｄ）の要素値（Ｃｍ，ｌ（Ｌの小文字），ｎＳｏｒｔｅｄ）を、ｎ−１番目の前記副行列目標ベクトル（Ｒｍ，ｎ−１）の要素値（Ｒｍ，ｌ（Ｌの小文字），ｎ−１）と比較する逆方向比較を通じて前記探索範囲の終わり点を求める小段階と
からなる、
請求項１に記載の高速探索方法。
【請求項５】
前記副行列が有する前記副行列目標ベクトル（Ｒｍ，ｎ＋１）うちのｎ＋１番目を、Ｒｎ＋１と定義し、
前記Ｒｎ＋１のうちの最小の要素値を、Ｒｎ＋１ｍｉｎと定義し、
前記整列コードベクトルを、ＣｎＳｏｒｔｅｄと定義し、
前記Ｃｎのｌ（Ｌの小文字）番目の要素値を、Ｃｌ（Ｌの小文字），ｎＳｏｒｔｅｄと定義すると、
前記開始点を求める小段階は、Ｒｎ＋１ｍｉｎ＞Ｃｌ（Ｌの小文字），ｎＳｏｒｔｅｄの条件を満足する最小のｌ（Ｌの小文字）を求める小段階である、
請求項４記載の高速探索方法。
【請求項６】
前記開始点を求める小段階は、
変数ｉの初期値を０に設定した後、前記変数ｉを６４ずつ増加させながらＲｎ＋１ｍｉｎ＞Ｃｉ＋６４，ｎＳｏｒｔｅｄの条件を満足する前記変数ｉを探す第１小段階と；
前記変数ｉを変数ｊに代入し、その後、前記変数ｊを１６ずつ増加させながらＲｎ＋１ｍｉｎ＞Ｃｊ＋１６，ｎＳｏｒｔｅｄの条件を満足する前記変数ｊを探す第２小段階と；
前記変数ｊを変数ｋに代入し、その後、前記変数ｋを４ずつ増加させながらＲｎ＋１ｍｉｎ＞Ｃｋ＋４，ｎＳｏｒｔｅｄの条件を満足する前記変数ｋを探す第３小段階と；
前記変数ｋを変数ｑに代入し、その後、前記変数ｑを１ずつ増加させながらＲｎ＋１ｍｉｎ＞Ｃｑ＋１，ｎＳｏｒｔｅｄの条件を満足するｑ＋１を探す第４小段階と；
前記ｑ＋１を前記開始点に設定する第５小段階と
を有する、
請求項５記載の高速探索方法。
【請求項７】
前記副行列が有する前記副行列目標ベクトル（Ｒｍ，ｎ−１）のうちのｎ−１番目を、Ｒｎ−１と定義し、
前記Ｒｎ−１のうちの最大の要素値を、Ｒｎ−１ｍａｘと定義し、
前記整列コードベクトルを、ＣｎＳｏｒｔｅｄと定義し、
前記ＣｎＳｏｒｔｅｄのうちのｌ（Ｌの小文字）番目の要素値を、Ｃｌ（Ｌの小文字），ｎＳｏｒｔｅｄと定義すると、
前記終わり点を求める小段階は、Ｒｎ−１ｍａｘ＜Ｃ１（Ｌの小文字），ｎＳｏｒｔｅｄの条件を満足する最大のｌ（Ｌの小文字）を求める小段階である、
請求項４記載の高速探索方法。
【請求項８】
前記終わり点を求める小段階は、
各コードブックインデックスの数によって変数ｉの初期値を設定する第１小段階と；
前記変数ｉを６４ずつ減少させながらＲｎ−１ｍａｘ＜Ｃｉ−６４，ｎＳｏｒｔｅｄの条件を満足する前記変数ｉを探す第２小段階と；
前記変数ｉを変数ｊに代入し、その後、前記変数ｊを１６ずつ減少させながらＲｎ＋１ｍａｘ＜Ｃｊ−１６，ｎＳｏｒｔｅｄの条件を満足する前記変数ｊを探す第３小段階と；
前記変数ｊを変数ｋに代入し、その後、前記変数ｋを４ずつ減少させながらＲｎ−１ｍａｘ＜Ｃｋ−４，ｎＳｏｒｔｅｄの条件を満足する前記変数ｋを探す第４小段階と；
前記変数ｋを変数ｑに代入し、その後、前記変数ｑを１ずつ減少させながらＲｎ−１ｍａｘ＜Ｃｑ−１，ｎＳｏｒｔｅｄの条件を満足する前記変数ｑを探す第５小段階と；
前記最大のｌ（Ｌの小文字）を、ｑ−１に設定する第６小段階と
からなる、
請求項７記載の高速探索方法。
【請求項９】
１番目の前記副行列が有するｎ番目の前記整列コードベクトル（Ｃ１，ｎＳｏｒｔｅｄ）の終わり点を求める時、ｉの初期値を１２８に設定し、
２〜４番目の前記副行列が有するｎ番目の前記整列コードベクトル（Ｃ２〜４，ｎＳｏｒｔｅｄ）の終わり点を求める時、ｉの初期値を２５６に設定し、
５番目の前記副行列が有するｎ番目の前記整列コードベクトル（Ｃ５，ｎＳｏｒｔｅｄ）の終わり点を求める時、ｉの初期値を６４に設定する、
請求項８記載の高速探索方法。
【請求項１０】
３番目の前記副行列が有するｎ番目の前記整列コードベクトル（Ｃ３，ｎＳｏｒｔｅｄ）を、第３整列コードベクトル（Ｃ３，ｎＳｏｒｔｅｄ）と定義すると、
前記第３整列コードベクトル（Ｃ３，ｎＳｏｒｔｅｄ）は、符号を示す表示ビットを有し、
前記第４段階は、
前記第３整列コードベクトル（Ｃ３，ｎＳｏｒｔｅｄ）の表示ビットが１であれば、前記第３整列コードベクトル（Ｃ３，ｎＳｏｒｔｅｄ）から、３番目の前記副行列に対応する前記平均ベクトル（ＬＤＣ，３）を引いた後、−１を乗算し、次に３番目の前記副行列に対応する前記平均ベクトル（ＬＤＣ，３）を足すことによって昇順に整列する第１小段階と；
前記第３整列コードベクトル（Ｃ３，ｎＳｏｒｔｅｄ）のうちのｌ（Ｌの小文字）番目の要素値（Ｃ３，ｌ（Ｌの小文字），ｎＳｏｒｔｅｄ）を、ｎ−１番目の前記副行列目標ベクトル（Ｒ３，ｎ−１）の要素値（Ｒ３，ｌ（Ｌの小文字），ｎ−１）と比較する逆方
向比較を通じて前記探索範囲の開始点を求める第２小段階と；
前記第３整列コードベクトル（Ｃ３，ｎＳｏｒｔｅｄ）のｌ（Ｌの小文字）番目の要素値（Ｃ３，ｌ（Ｌの小文字），ｎＳｏｒｔｅｄ）を、ｎ＋１番目の前記副行列目標ベクトル（Ｒ３，ｎ＋１）の要素値（Ｒ３，ｌ（Ｌの小文字），ｎ＋１）を比較する順方向比較を通じ前記探索範囲の終わり点を求める第３小段階と
を有する、
請求項３記載の高速探索方法。
【請求項１１】
ｎ＋１番目の前記副行列目標ベクトル（Ｒｍ，ｎ＋１）を、Ｒｎ＋１と定義し、
前記Ｒｎ＋１のうちの最小の要素値（Ｒｍ，ｌ（Ｌの小文字），ｎ＋１）を、Ｒｎ＋１ｍｉｎと定義し、
前記変換コードブック（Ｃｍ）のｎ番目の前記整列コードベクトル（Ｃｍ，ｎSorted）を、ＣｎＳｏｒｔｅｄと定義し、
前記ＣｎＳｏｒｔｅｄのうちのｌ（Ｌの小文字）番目の要素値（Ｃｍ，ｌ（Ｌの小文字），ｎＳｏｒｔｅｄ）を、Ｃｌ（Ｌの小文字），ｎＳｏｒｔｅｄと定義すると、
前記開始点を求める小段階は、Ｒｎ＋１ｍｉｎ＞Ｃｌ（Ｌの小文字），ｎＳｏｒｔｅｄの条件を満足する最小のｌ（Ｌの小文字）を求める小段階である、
請求項１０記載の高速探索方法。
【請求項１２】
１番目（数字の一）の前記変換コードブック（Ｃ１）を探索する開始点を求める時、ｉの初期値を１２８に設定し、
２〜４番目の前記変換コードブック（Ｃ２，Ｃ３，Ｃ４）を探索する開始点を求める時、ｉの初期値を２５６に設定し、
５番目の前記変換コードブック（Ｃ５）を探索する開始点を求める時、ｉの初期値を６４に設定する、
請求項１０記載の高速探索方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、線形スペクトルペアー(LSP：Line Spectrum Pair)係数の予測分割行列量子化(PSMQ：Predictive Split Matrix Quantization)、また予測分割ベクトル量子化(PSVQ：Predictive Split Vector Quantization)方式を用いる音声符号化器に関するものであって、より詳細に説明すると、コードブック探索時に要求される計算量を減らすための予測分割ベクトル量子化及び予測分割行列量子化方式による線スペクトルペアー量子化器の高速探索方法[A fast search method for LSP Quantization]に関するものである。
【０００２】
【従来の技術】
現在用いられている音声符号化は分析/合成(Analysis-by-Synthesis)構造を有し、音声を直接電送する代わりに音声信号を代表するパラメーターを効率的に抽出して量子化した後、これを電送するところ、このような音声符号化方式によって帯域幅が提案された伝送環境下で電送するデータの量を減らすことができる。
【０００３】
低速音声符号化器で高音質の音声符号化をしようとするなら、音声信号の短区間相関図を示す線形予測コーディング(LPC：linear predictive coding)係数を効率的に量子化しなければならない。線形予測コーディング(LPC)フィルターで最適の線形予測コーディング係数値は、入力音声信号をフレーム単位に分けて、各フレーム別に予測誤差のエネルギーを最小化させる値を求める。一般的に線形予測コーディングフィルタ10次all-poleフィルターであり、この時用いられる10個の線形予測コーディング(LPC)係数の量子化のために多いビットが割り当てされる。例として、コード分割多重接続(CDMA)移動通信システムに用いられる音声符号化方式のIS-96AQCELPは、全体ビットの25%をLPC量子化に用いる。
【０００４】
いままでLPC係数の量子化のため、多くの方法が開発され、実際に音声圧縮器に使われている。このような方法中一つの方法としてLPCフィルターの係数を直接量子化する方法は、フィルターの特性が係数の量子化誤差に非常に敏感で量子化後のLPCフィルターの安定性が保障されない問題点があった。
【０００５】
したがって、LPC係数を量子化性質が良い他のパラメーターに変換して量子化すべきで、主に反射係数(reflection coefficient)また線形スペクトルペアー(LSP：Line Spectral Pairs)に変換して量子化する。特に線形スペクトルペアー(LSP）は音声の周波数特性と密接に関連になるため、最近開発された標準音声圧縮器は大部分線形スペクトルペアー(LSP)量子化方法を用いる。
【０００６】
また、線形スペクトルペアー係数のフレーム間の相関関係を利用すると、より効率的な量子化を実現できる。即ち、現在フレームのLSPを直接量子化せず、過去フレームのLSP情報から現在フレームのLSPを予測して予測された二つのフレーム間のLSP誤差を量子化するのである。このLSP値は音声信号の周波数特性と密接な関係があるため、時間的に予測が可能であるであるけでなく、相当な予測利得を得ることができる。
【０００７】
このLSP値の予測方法としては、AR(auto-regressive)フィルターを用いる方法とMA(moving average)フィルターを用いる方法がある。このARフィルターは予測性能が優秀であるが、受信側で係数伝達エラーの影響がフレームの進行によってずっと伝播される短所がある。これに反しMAフィルターは、ARフィルターに比べて予測性能は劣るが、伝達エラーの影響が時間的に制限される長所がある。したがって、無線通信のように伝達エラーが多く発生する環境に用いられる音声圧縮器(AMR、CS-ACELP、EVRC)にはMAフィルターを利用したLSP値の予測方法が利用される。
【０００８】
また、フレーム間LSP値の予測以外にフレーム内で接しているLSP要素値間の相関図を利用した量子化方法も開発された。LSP値は常に順序性質を満足するので、この方法を利用すると、量子化の効率を一層増大させることができる。
【０００９】
このように予測されたLSP係数の量子化方法は、大きくスカラー量子化とベクトル量子化の２種類に分けることができる。スカラー量子化方法を用いる音声圧縮器には8kbps QCELPがある。これはそれぞれのLSP要素値をスカラー量子化するため、性能に比べて多いビット(40ビット)を用いる短所がある。したがって、最近はより効率的な量子化のためにベクトル量子化がたくさん用いられて、これに関する多くの研究が進行中である。
【００１０】
ベクトル量子化方法で全体のベクトルを一度に量子化することは、ベクトルテーブルの大きさがあまりに大きくなり、検索時間がたくさん要るために不可能である。これを解決するために全体ベクトルをいくつかの副ベクトルに分けてそれぞれを独立的にベクトル量子化する方法が開発されたが、これを分割ベクトル量子化(SVQ：split vector quantization)という。例えば、20ビットを利用した10次ベクトル量子化方法で、一度に量子化する場合は、ベクトルテーブルの大きさが10x1020になるけれど、2個の5次副ベクトルに分けてそれぞれ10ビットずつ割り当てる分割ベクトル量子化方法を利用すると、ベクトルテーブルの大きさが単に5x1010x2となる。
【００１１】
この時、より多くの副ベクトルに分けると、ベクトルテーブルの大きさが減ってメモリを節約でき検索時間を減らすことはできるが、ベクトル値の相関関係を十分に活用できなくて性能が劣る。極端に10個の1次ベクトルに分ければスカラー量子化となる。
【００１２】
仮りに、分割ベクトル量子化方法を利用して20msecフレーム間のLSP予測なくLSPを直接量子化すると、24ビットが必要な量子化性能を得ることができる。しかし、分割ベクトル量子化方法は、各副ベクトルを独立的に量子化するために副ベクトル間の相関関係を十分に利用できなくて全体ベクトルに対する最適化を成すことができない短所がある。
【００１３】
この他にも、ベクトル量子化を多くの段階にわける方法(Multi-Stage)、二つのテーブルを利用して選択的に量子化する選択的ベクトル量子化方法、及び各副ベクトルの境界値を見て用いるテーブルを選択するリンク分割ベクトル量子化(linked split vector quantization)方法などが開発されることもあった。
【００１４】
【発明が解決しようとする課題】
したがって、本発明は上記のような従来技術の問題点を解決するために案出されたものであって、一般的な音声符号化器で線形スペクトルペアー(LSP)係数の予測分割行列量子化(PSMQ)、予測分割ベクトル量子化(PSVQ)方式の量子化時、計算量が多いベクトルコードブック探索過程で線形スペクトル周波数(LSF：line spectral frequencies)係数の順序性質を利用して探索対象コードブックの大きさを減らすことによって、スペクトル歪曲(SD：Spectrum Distortion)性能の減殺なしに全体的な計算量を減らすことができる高速探索方法と、これを通じて一層向上した性能を有するシステムを提供する。
【００１５】
【課題を解決するための手段】
前記の目的を達成するために、本発明による予測分割行列量子化方式による線スペクトルペアー量子化器の高速探索方法は、順序性質を有するように変換された目標ベクトルと対象コードベクトルを利用してエラー基準値を求める第1段階；前記対象コードベクトルにDC成分を足して5個の副行列に対する新しいコードブックを作る第2段階；順序性質を有するように再構成されたコードブックで探索範囲決定に用いられる特定列を選定して、選定された列の要素値を基準にして降順で並べ替えに整列する第3段階；順序性質を有する目標ベクトルと整列したコードベクトルとの順序性質を利用して探索範囲を決定する第4段階；及び前記決められた探索範囲内でのみ前記エラー特徴値を計算して最適の対象コードベクトルを探す第5段階を含んでいることを特徴とする。
【００１６】
好ましくは、前記第1段階は、m番目の副行列の線形スペクトルペアーベクトル平均値とm番目の副行列の予測値を利用して順序性質を有するm番目の副行列の目標ベクトルを求める第1小段階、m番目の副◎列の1番目のエラーコードブックと順序性質を有するm番目の副行列のl番目のDC成分を利用してm番目の副行列のl番目のコードベクトルを求める第2小段階、及び前記m番目の副行列の目標ベクトルと前記m番目の副行列のl番目のコードベクトルを利用してエラー基準値を求め、このエラー基準値を最小化させるコードブックインデックスを決定する第3小段階を含むことを特徴とする。
【００１７】
さらに好ましくは、前記m番目の副行列の目標ベクトルと前記m番目の副行列のl番目のコードベクトルを下記の数式３と数式４に適用してエラー基準値を求めることを特徴とする。
【００１８】
【数３】
0004731654.tif 000002
【００１９】
【数４】
0004731654.tif 000003
好ましくは、第2段階は、順序性質がないコードブックに順序性質を有する線形スペクトルペアーベクトル平均値を足して順序性質を有する新しいコードブックを構成して、前記新しいコードブックから前記順序性質を有するコードベクトルを求めることを特徴とする。
【００２０】
好ましくは、前記第3段階は、一番目のコードブックでは四番目の列を、二番目のと三番目のと四番目のコードブックでは三番目の列を、そして五番目のコードブックでは四番目の列を特定列に選定する第1小段階、及び前記選定された特定列を基準にして全体コードブックを降順で並べ替えに整列する第2小段階を含むことを特徴とする。
【００２１】
好ましくは、前記第4段階は、前記順序性質によって降順で並べ替えに整列したコードブックのn番目の列の要素値と目標ベクトルの(n+1)番目の列の要素値を比較する順方向比較を通じて前記探索範囲の開始点を求め、前記順序性質によって整列したコードブックのn番目の列の要素値と目標ベクトルの(n-1)番目の列の要素値を比較する逆方向比較を通じて前記探索範囲の終わり点を求めることを特徴とする。
【００２２】
さらに好ましくは、前記開始点を求める過程は、Rn+1>Cl,n(ここで、Rn+1は副行列のコードブック探索のためのn+1番目の目標ベクトルであり、Cl,nはl番目の副行列のn番目のコードベクトルである)の条件を満足する最も小さなl値を求めることを特徴とする。
【００２３】
より好ましくは、前記開始点を求める過程は、変数iを64ずつ増加させながらRn+1>Ci+64,nの条件を満足するiを探す第1小段階、変数j=iに設定して、変数jを16ずつ増加させながらRn+1>Cj+16,nの条件を満足するjを探す第2小段階、変数k=jに設定して、変数kを4ずつ増加させながらRn+1>Ck+4,nの条件を満足するkを探す第3小段階、変数m=kに設定して、変数mを1ずつ増加させながらRn+1>Cm+1,nの条件を満足するm+1を探す第4小段階、及び前記m+1を開始点に設定する第5小段階を含むことを特徴とする。
【００２４】
さらに好ましくは、前記終わり点を求める過程は、Rn-1<Cl,n(ここで、Rn-1は副ベクトルのコードブック探索のためのn-1番目の目標ベクトルであり、Cl,nはl番目の副ベクトルのn番目のコードベクトルである)の条件を満足する最も大きいl値を求めることを特徴とする。
【００２５】
より好ましくは、前記終わり点を求める過程は、各コードブックインデックスの数によって変数iの初期値を設定する第1小段階、変数iを64ずつ減少させながらRn-1<Ci-64,nの条件を満足するiを探す第2小段階、変数j=iに設定して、変数jを16ずつ減少させながらRn+1<Cj-16,nの条件を満足するjを探す第3小段階、変数k=jに設定して、変数kを4ずつ減少させながらRn-1<Ck-4,nの条件を満足するkを探す第4小段階、変数m=kに設定して、変数mを1ずつ減少させながらRn-1<Cm-1,nの条件を満足するmを探す第5小段階、及び前記終わり点lとしてm-1を設定する第6小段階を含むことを特徴とする。
【００２６】
さらに好ましくは、前記終わり点を求める過程で一番目のコードブック探索の終わり点設定の時iの初期値は128、二番目のと三番目のと四番目のコードブック探索の終わり点設定の時iの初期値は256、五番目のコードブック探索の終わり点設定の時iの初期値は64にそれぞれ設定する特徴とする。
【００２７】
好ましくは、前記第4段階は、前記順序性質によって降順で並べ替えに整列した三番目のコードブックの表示ビットが1であれば、前記三番目のコードブックを昇順で並べ替えに整列する第1小段階、前記順序性質によって整列した三番目のコードブックのn番目の列の要素値と目標ベクトルの(n-1)番目の列の要素値を比較する逆方向比較を通じて前記探索範囲の開始点を求める第2小段階、及び前記順序性質によって整列した三番目のコードブックのn番目の列の要素値と目標ベクトルの(n+1)番目の列の要素値を比較する順方向比較を通じて前記探索範囲の終わり点を求める第3小段階を含むことを特徴とする。
【００２８】
さらに好ましくは、前記第1小段階は、降順で並べ替えに整列した三番目のコードブックからDC成分を引いた後-1をかけて、またDC成分を足して昇順で並べ替えに整列することを特徴とする。
【００２９】
さらに好ましくは、前記第2小段階は、i=0に初期化して、変数iを64ずつ増加させながら
【００３０】
【数５】
0004731654.tif 000004
の条件を満足するiを探す段階と、前記Iを探したら、変数j=iに設定して、変数jを16ずつ増加させながら
【００３１】
【数６】
0004731654.tif 000005
の条件を満足するjを探す段階、前記jを探したら、変数k=jに設定して、変数kを4ずつ増加させながら
【００３２】
【数７】
0004731654.tif 000006
の条件を満足するkを探す段階、前記kを探したら、変数m=kに設定して、変数mを1ずつ増加させながら
【００３３】
【数８】
0004731654.tif 000007
の条件を満足するmを探す段階、及び前記mを探したら、m+1を開始点と設定する段階を含むことを特徴とする。
【００３４】
さらに好ましくは、前記第3小段階は、変数i=256に初期化して、変数iを64ずつ減少させながら
【００３５】
【数９】
0004731654.tif 000008
の条件を満足するiを探す段階と、前記iを探したら、変数j=iに設定して、変数jを16ずつ減少させながら
【００３６】
【数１０】
0004731654.tif 000009
の条件を満足するjを探す段階、前記jを探したら、変数k=jに設定して、変数kを4ずつ減少させながら
【００３７】
【数１１】
0004731654.tif 000010
の条件を満足するkを探す段階、前記kを探したら、変数m=kに設定して、変数mを1ずつ減少させながら
【００３８】
【数１２】
0004731654.tif 000011
の条件を満足するmを探す段階、及び前記mを探したら、m-1を終わり点と設定する段階を含むことを特徴とする。
【００３９】
また、本発明によると、前記の予測分割行列量子化方式による線スペクトルペアー量子化器の高速探索方法を実行させるためのプログラムを記録したコンピューターで読むことができる記録媒体が提供される。
【００４０】
また、本発明による予測分割ベクトル量子化方式による線スペクトルペアー量子化器の高速探索方法は、順序性質を有するように変換された目標ベクトル(Lm-Pm)とDC成分(LDC)が加えられた対象コードベクトル(e'l,m+LDC)とを利用してエラー基準値(El,m)を求める第1段階；前記DC成分が加えられた対象コードベクトルを3個の副ベクトルに対する新しいコードブックを作る第2段階；前記順序性質を有するように再構成されたコードブックで探索範囲決定に用いられる特定列を選定して、選定された列の要素値を基準にして降順で並べ替えに整列する第3段階；前記順序性質を有する目標ベクトルと降順で並べ替えに整列したコードベクトルとの順序性質を利用して探索範囲を決定する第4段階；及び前記決められた探索範囲内でのみ前記エラー基準値(El,m)を計算して最適の対象コードベクトルを探す第5段階を含んであることを特徴とする。
【００４１】
好ましくは、第1段階は、前記m番目の副ベクトルの目標ベクトル(Rm)と前記m番目の副ベクトルのl番目のコードベクトル(Cl,m)を下記の数式に適用してエラー基準値(El,m)を求めることを特徴とする。
【００４２】
【数１３】
0004731654.tif 000012
好ましくは、第2段階は、順序性質がないコードブックに順序性質を有する線形スペクトルペアーベクトル平均値を足して順序性質を有する新しいコードブックを構成して、前記新しいコードブックから前記順序性質を有するコードベクトルを求めることを特徴とする。
【００４３】
好ましくは、前記第3段階は、一番目のコードブックでは三番目の列を、二番目のコードブックでは二番目の列を、そして三番目のコードブックでは一番目の列を特定列に選定する第1小段階、及び前記選定された特定列を基準にして全体コードブックを降順で並べ替えに整列する第2小段階を含むことを特徴とする。
【００４４】
好ましくは、前記第4段階は、前記順序性質によって降順で並べ替えに整列したコードブックのn番目の列の要素値と目標ベクトルの(n+1)番目の列の要素値を比較する順方向比較を通じて前記探索範囲の開始点を求め、前記順序性質によって整列したコードブックのn番目の列の要素値と目標ベクトルの(n-1)番目の列の要素値とを比較する逆方向比較を通じて前記探索範囲の終わり点を求めることを特徴とする。
【００４５】
さらに好ましくは、前記開始点を求める過程は、Rn+1>Cl,n(ここで、Rn+1は副ベクトルのコードブック探索のためのn+1番目の目標ベクトルで、Rn+1はl番目の副ベクトルのn番目のコードベクトルである)の条件を満足する最も小さなl値を求めることを特徴とする。
【００４６】
より好ましくは、前記開始点を求める過程は、変数iを64ずつ増加させながらRn+1>Ci+64,nの条件を満足するiを探す第1小段階、変数j=iに設定して、変数jを16ずつ増加させながらRn+1>Cj+16,nの条件を満足するjを探す第2小段階、変数k=jに設定して、変数kを4ずつ増加させながらRn+1>Ck+4,nの条件を満足するkを探す第3小段階、変数m=kに設定して、変数mを1ずつ増加させながらRn+1>Cm+1,nの条件を満足するm+1を探す第4小段階、及び前記m+1を開始点に設定する第5小段階を含むことを特徴とする。
【００４７】
さらに好ましくは、前記終わり点を求める過程は、Rn-1<Cl,n(ここで、Rn-1は副ベクトルのコードブック探索のためのn-1番目の目標ベクトルで、Cl,nはl番目の副ベクトルのn番目のコードベクトルである)の条件を満足する最も大きいl値を求めることを特徴とする。
【００４８】
より好ましくは、前記終わり点を求める過程は、変数i=256に初期化して、変数iを64ずつ減少させながらRn-1<Ci-64,nの条件を満足するiを探す第1小段階、変数j=iに設定して、変数jを16ずつ減少させながらRn+1<Cj-16,nの条件を満足するjを探す第2小段階、変数k=jに設定して、変数kを4ずつ減少させながらRn-1<Ck-4,nの条件を満足するkを探す第3小段階、変数m=kに設定して、変数mを1ずつ減少させながらRn-1<Cm-1,nの条件を満足するmを探す第4小段階、及び前記m-1を終わり点と設定する第5小段階を含むことを特徴とする。
【００４９】
また、本発明によると、上述したとおりの予測分割ベクトル量子化方式による線スペクトルペアー量子化器の高速探索方法を実行させるためのプログラムを記録したコンピューターで読むことができる記録媒体が提供される。
【００５０】
【発明の実施の形態】
以下、添付の図面を参照しながら、本発明の一実施例による「予測分割ベクトル量子化及び予測分割行列量子化方式による線スペクトルペアー量子化器の高速探索方法」をより詳細に説明すると次の通りである。
【００５１】
一般的に、現在GSM(Global System for Mobile communications)と3GPP(3rd Generation Partner ship Project)IMT-2000(International Mobile Telecommunications)システムに適用される代表的な音声符号化器は適応多重ビット率(AMR：Adaptive Multirate)コーデック(Codec)である。ここには8個モードの音声符号化器が存在して最も最新の音声符号化技術が集約されていると言える。本発明では最も代表的で最新の音声符号化方式のAMR音声符号化器で採択しているLSP係数のPSMQ量子化及びPSVQ量子化を高速化する方法を提供する。
【００５２】
AMR音声符号化器はLSP係数を量子化する時、DC成分が除去されたLSP係数ベクトルとMA予測器で予測されたベクトル間の差であるエラー信号を量子化するために順序性質を利用することができない。
【００５３】
したがって、本発明ではMA予測器はそのまま使用しながら目標ベクトル(target vector)とエラーコードブックにDC成分を足して順序性質を有する目標ベクトルとエラーコードブックを構成する。その次に、順序性質を有するように再構成された各コードブックで探索範囲決定に用いられる一つの特定列を選定して、選定された特定列の要素値を根拠に全体コードブックを降順で並べ替えに整列する。そして、各コードブック内に整列した特定列の要素値と目標ベクトル内の該当列前後の要素値を比較して順序性質を満足するベクトルに対してであるけエラー基準値(criterion)Em,lを求める。この時、コードブックの探索範囲は順方向及び逆方向比較を通じて決める。このようにすることにより、本発明ではスペクトル歪曲なしにコードブック探索時、要求される計算量を減らすことができる。
【００５４】
適応多重ビット率(AMR)コーデックは8個のソース(source)コーデックから構成され、このうちの12.2kbpsモードはGSM EFR(Global System for Mobile Communications Enhancement Full Rate)標準方式に該当する。GSM EFRでは毎伝送フレーム(20msec)ごとに二つの互いに異なる非対称窓(window)を使用して、フレーム当り二回の線形予測(LP)分析を通じて二つのセットの線形予測コーディング(LPC)係数を伝送し、残りのソースコーデックはフレーム当り一回の線形予測(LP)分析を通じて1つのセットの線形予測コーディング(LPC)係数を伝送する。
【００５５】
線形予測コーディング(LPC)係数は、しばしば線形スペクトルペアー(LSP)係数に変換された後量子化になる。この線形スペクトルペアー(LSP)係数は、線形予測コーディング係数と数学的に等価であり、また量子化特性が良く、合成フィルターの安定度を検査しやすい。また、この線形スペクトルペアー(LSP）は、スペクトル安定度がほぼ均一であり、伝送速度においてスペクトル歪曲が少なく、線形補間に対してよい特性を有する。
【００５６】
この線形スペクトルペアー(LSP)係数のいくつかの重要な性質を察してみると次の通りである。
第一、LSP係数は次のような順序性質を満足させないと合成フィルターが不安定である。
【００５７】
0 < ω1 <ω2 < ……… < ωp < π
第二、LSP係数は、音声のフォルマント周波数(Formant Frequency)とフォルマント帯域幅(Formant bandwidth)を表す。これは音声を周波数領域に変換すると、特定周波数部分の大きさ値が優勢な(dominant)部分の中心領域が現れるが、これをフォルマント周波数といって、この優勢な区間をフォルマント帯域幅という。即ち、LSP係数が近く位置するほどより尖鋭なフォルマント帯域幅を表す。
【００５８】
第三、補間されたLSP係数も順序性質を満足する。
第四、LSP係数は、動的な範囲(dynamic range)が小さくて量子化に有利である。
【００５９】
上記述したとおりの性質を有する線形スペクトルペアー(LSP)係数を量子化するために12.2kbpsモードでは分割行列量子化(SMQ：split matrix quantization)方式を用いる。
【００６０】
即ち、この12.2kbpsモードでは二つの剰余(residual)線形スペクトル周波数(LSF：line spectral frequencies)ベクトルをともに量子化し、残りのモードでは分割ベクトル量子化(SVQ：split vector quantization)方式を使用して量子化する。
【００６１】
本発明では、予測(Predictive)SMQ方式と予測(Predictive)SVQ方式を用いた効率的なLSP係数量子化のための高速化アルゴリズムを提示する。
まず、予測分割行列量子化(Predictive SMQ)方式に適用された線形スペクトルペアー(LSP)コードブックの探索方法を察してみる。
【００６２】
図1は12.2kbpsモードの線形予測(LP)分析は互いに異なる二つの非対称窓(window)を使用してフレーム当り二回ずつ遂行される。一番目の窓、WI(n）は二番目の副フレーム(subframe2)に集中的に加重値を有し、別の大きさを有する二つの半分のハミング窓(Hamming window）の合計でなされる。即ち、一番目の窓、WI(n)は数式14のように与えられる。
【００６３】
【数１４】
0004731654.tif 000013
ここでL1(I)とL2(I)の値はそれぞれ160及び80を用いる。
また、二番目の窓、WII(n）は四番目の副フレーム(subframe 4)に加重値が集中しながら二つの部分で構成されるが一番目の部分はハミング窓(Hamming window）の半分であり、二番目の部分はcosine関数周期の1/4である。二番目の窓は数式15のように与えられる。
【００６４】
【数１５】
0004731654.tif 000014
ここで、L1(I)とL2(I)の値はそれぞれ232と8を用いる。
線形予測分析は同じ音声サンプルフレームに対して二回遂行され、解釈窓は過去音声フレームの80サンプルと現在音声フレームの160サンプル(SAMPLE)を足してなされて、未来フレームのサンプルは使用しない。12.2kbpsモードではフレーム当りLPフィルター係数の二つのセットが周波数領域で数式16のような数式を通じて量子化が成される。
【００６５】
【数１６】
0004731654.tif 000015
ここでfiは線形スペクトル周波数(LSF：line spectral frequencies)値として[0,4000]hz内の値を有し、fsはサンプリング周波数として8000の値を有する。1次MA(moving average)予測器が使われて、二つの剰余線形スペクトル周波数(residual LSF)ベクトルが分割行列量子化(SMQ：split matrix quantization)方式で量子化になる。
【００６６】
図2は12.2kbpsモードに用いられたSMQ構造を有する線形スペクトル周波数(LSF)剰余ベクトル(residual vector）の構成図である。二つの線形スペクトル周波数剰余ベクトルr(1)(n)とr(2)(n）は線形行列量子化方式を利用して共に量子化になって、剰余ベクトルr(1)(n)とr(2)(n）は5個の副行列に分割されるところ、一つの副行列は2x2要素からなる。5個の副行列はそれぞれ7ビット(BITS)、8ビット(BITS)、8+1ビット(BITS)、8ビット(BITS)、6ビット(BITS)を使用して量子化になる。特に、三番目の副行列のためのコードブックは符号を有する256個のコードベクトルからなり、最適コードベクトルに対するインデックス8ビット、符号値1ビットを使用することによって総9ビットを用いる。
【００６７】
図3は12.2kbpsモードに用いられた予測分割行列量子化(PSMQ)方式を実現するための構成図である。MA予測器(31)の次数は1次であり、L(1)は線形予測解釈のための一番目の窓WI(n)を通じ得た線形予測コーディング(LPC)係数を線形スペクトルペアー(LSP)係数に変換したベクトルであり、L(2)は線形予測解釈のための二番目の窓WII(n)を通じ得たLPC係数をLSP係数に変換したベクトルである。LSP係数値のDC成分の平均ベクトルLDCと、以前のフレームの量子化された二番目のエラーベクトルr'(2)に1次線形係数b(=0.65)を適用したMA予測器(31)を通じ得た予測ベクトルpを足してPDCを得る。L(1)とL(2)からPDCを引いて得たエラーベクトルr(1)とr(2)を5個の2x2副行列(rm=(r(1),r(2)))に分割させる。
【００６８】
これを数式で表現すれば数式17のようである。
【００６９】
【数１７】
0004731654.tif 000016
上記述のとおり、5個の副行列はそれぞれ7、8、9、8、6ビットを使用して量子化して、特に三番目の副行列は数式18に示されているような1つビットの符号ビットを有する。
【００７０】
【数１８】
0004731654.tif 000017
ここで、mは副行列の順序を表して、nは現在フレームを意味する。各副ベクトルに対する最適コードベクトル値は数式19と数式20のようなエラー基準値(Em,l)を最小化する値と選択する。
【００７１】
【数１９】
0004731654.tif 000018
【００７２】
【数２０】
0004731654.tif 000019
ここで、rmはm番目の副行列のコードブック探索のための目標ベクトルであり、r'm,lはm番目の副行列のl番目のコードベクトルである。ωmはm番目の副行列のための加重値(weighting)行列であり、量子化されていない線形スペクトルペアーベクトルLから求められる。そしてiは副行列内のi番目の要素値を表す。上記のような値を利用して各副行列ごとにエラー基準値(Em,l)を最小とするコードブックインデックスlを求めてチャンネルを通じて伝送する。
【００７３】
特に、三番目の副行列(m=2)に対するインデックスkは
【００７４】
【数２１】
0004731654.tif 000020
が最小値として選択されると、表示値(sign）は0であり、
【００７５】
【数２２】
0004731654.tif 000021
値と選択されると、表示値(sign）が1である特性を利用して数式２３を利用して求める。
【００７６】
【数２３】
0004731654.tif 000022
上記のように求められた線形スペクトルペアー(LSP)係数を量子化する時、要求される計算量の大部分が5個の副行列に対する最適コードベクトル探索の時用いられる。
【００７７】
したがって、本発明で提案した高速探索方法は、線形スペクトルペアー(LSP)係数の順序性質を利用して探索対象コードベクトルの範囲を減らすことによって探索計算量を減らす。このような本発明による高速探索方法の概略的の過程は次の通りである。
【００７８】
まず、5個の副行列に対してあらかじめ平均ベクトルLDCを足したコードブックを作る。次に、コードベクトル内に決められた列の要素値の大きさによってコードブックを降順で並べ替えに整列する。次に、5個の副行列でEm,lを最小化させる最適コードベクトル値は目標ベクトルにほとんど似た値を有するので、この値は順序性質を有すると仮定できる。このような仮定下で降順で並べ替えに整列したコードブック内の特定列の要素値を目標ベクトル内の隣接列の値と比較する。次に、順序性質を満足するコードベクトルに対してであるけEm,l値を計算して、そうでないコードベクトルはEm,l値の計算を省略する。
【００７９】
このように各コードブックを探索する時、線形スペクトルペアー(LSP)ベクトルの順序性質を利用して探索対象を減らすと、全体的に多い計算量の利得を得ることができる。
【００８０】
上記のような高速探索方法を12.2kbpsモードに適用した具体的な過程は次の通りである。まず、目標ベクトルrmと該当コードブックは平均ベクトル値(LDC)と予測値(pm)を引いたエラーベクトルに該当するので、順序性質を持たない。したがって、数式１９と数式２０を次の数式２４と数式２５のように変換して順序性質を有する目標ベクトル形態で構成する。
【００８１】
【数２４】
0004731654.tif 000023
【００８２】
【数２５】
0004731654.tif 000024
上記の式でEm,lは(Lm-pm)と(r'm,l+LDC)値を利用して求めることができるが、ここで(Lm-pm)をRmとすると、この値はLDC値を除去していない値であり、pmはエラー値から予測された値であるので変位が少ない。それでRmは順序性質を有するコードブック探索の目標ベクトルとなる。(r'm,l+LDC)をCm,lとすると、この値は既存のエラーコードブックr'm,lに順序性質を有するLDCを付加した結果であるので、Cm,lはまた順序性質を有するて、ここでr'm,lとLDCは皆決められた値であるので、あらかじめ計算されて既存コードブックにかえる。
【００８３】
このようにRmとCm,lを利用してEm,l値を求め、Em,lを最小化させるコードブックインデックスlを求めてチャンネルを通じ伝送する。
図5は順序性質を有するように修正された新しい予測分割行列量子化方式を実現するための構成図である。
【００８４】
即ち、上記の数式２４と数式２５の結果を利用できるように構成された構造であるところ、図3の構成図と根本的に同じ構造であるが、線形スペクトルペアー(LSP)係数値のDC成分のLDCを引く過程を省略して、各副フレームに対するコードブックはあらかじめLDC値を足した新しいコードブックに代える。このようにすると、目標ベクトルと該当コードブックは皆順序性質を有するようになる。
【００８５】
図7は分割行列量子化(SMQ)に対する探索コードベクトル選択の時、順方向及び逆方向の比較方式に対するブロック図である。即ち、2x2行列の5個のコードブックに対して、一番目のコードブックは四番目の列の要素値を基準にして、二番目と三番目及び四番目のコードブックは三番目の列の要素値を基準にして、そして五番目のコードブックは四番目の列の要素値を基準にしてコードベクトルを降順で並べ替えに整列する。整列したコードブックと目標ベクトルDC成分が含まれている値であるので、順序性質を保持している。各コードブック内の特定列の選定は実験的になされる。
【００８６】
コードブックの特定列の要素値と目標ベクトル内の該当列前後の要素値を比較して、順序性質に違背したコードベクトルを探索対象から除外する概念でコードブックの探索範囲を決定するが、これは数式２６乃至数式２７を利用する。
【００８７】
【数２６】
0004731654.tif 000025
【００８８】
【数２７】
0004731654.tif 000026
上記の数式２６のように順序性質の満足可否を決定するためにどんなコードブック内のn番目の列の要素値と目標ベクトルの(n+1)番目の列の要素値を比較することを順方向比較という。
【００８９】
また、数式２７のようにコードブック内のn番目の列の要素値と目標ベクトルの(n-1)番目の列の要素値を比較することを逆方向比較という。
図7は本発明の一実施例による高速探索方法を説明するために示した図面である。図面からf1、f2、f3、f4とb1、b2、b3、b4、b5は、それぞれ順方向及び逆方向の比較に用いられるコードブック内の要素値と目標ベクトル要素値を表す。ここで、各コードブックは副行列内の特定列を基準にして降順で並べ替えに整列しているので、順方向比較では順序性質を満足する探索範囲の開始点を求め、逆方向比較では順序性質を満足する探索範囲の終わり点を求めて、順序性質を満足する全体探索範囲を決定する。このように探索範囲が決められると、この範囲内のコードブックを探索してEm,l値を求める。
【００９０】
与えられた目標ベクトルに対して順序性質を満足するコードベクトル集合の具体的な開始点を求める過程は図９のフローチャートに図示されており、終わり点を求める過程は図１０、図１１及び図１２のフローチャートに図示されている。
【００９１】
この時、図９と、図１０、図１１及び図１２とはそれぞれ順方向比較と逆方向比較を表して、フローチャートで求められた開始点と終わり点とによりコードブック探索範囲が決められる。
【００９２】
本発明では副行列のコードブックを求めることにおいて、全体コードブックに対する検索を遂行しないで線形スペクトルペアーの順序性質によってコードブック探索の開始点と終わり点を求めて、その領域内でのみコードブック探索を遂行するようにする。図9は分割行列量子化構造で開始点を求める方法を示したフローチャートである。このコードブック探索の開始点はRn+1>Cl,nを満足する最も小さなl値に設定する。このようにl値が決められると、各副行列に該当するコードブック検索はこのl値以後から始めることができる。l値を設定するために、C1,nからClast,nまで順次にl値を1ずつ増加させながらRn+1>Cl,nの値を探すと非効率的であるため、l値を64、16、4、1単位に増加させながら開始点を探す。もちろん、l値の増加値は、必要に応じて別に設定できる。
【００９３】
図9を参照すれば、まず線形スペクトルペアーベクトルのDC成分のLを計算して(S901)、上述した方法を通じ目標ベクトルを計算する(S902)。コードベクトル集合の開始点を求めるための順方向比較の時、五番目のコードブックに対しては順方向比較をしないので、開始点は常に0である。したがって、変数i=0に設定する(S903)。
【００９４】
次に、段階S904ではRn+1>Ci+64,nであるかを判断して、結果が"いいえ”となると、段階S905では変数i値をi+64に再設定した後段階S904を繰り返す。しかし、段階S904の結果が"はい”となると、段階S905でi値を保存して、段階S907に進行する。
【００９５】
以後、変数j値をiに設定する(S907)。その後、段階S908ではRn+1>Cj+16,nであるかを判断して、その結果が"いいえ"となると、段階S909に進行して変数jをj+16に再設定した後段階S908を繰り返す。しかし、段階S908の結果が"はい”となると、段階910でj値を保存して、段階S911に進行する。
【００９６】
以後、変数k値をjに設定する(S911)。段階S912ではRn+1>Ck+4,nであるかを判断して、その結果が"いいえ”となると、段階S913に進行して変数k値をk+4に再設定した後段階S912を繰り返す。しかし、段階S912の結果が"はい”となると、段階S914でk値を保存して、段階S915に進行する。
【００９７】
以後、変数m値をjに設定する(S915)。段階916ではRn+1>Cm+1,nであるかを判断する。段階S916の判断結果が"いいえ”となると、段階S918に進行して変数m値をm+1に再設定した後段階S917を繰り返す。一方、段階S916の判断結果が"はい”となると、段階S919でm+1値を保存する。この保存されたm+1値を探索範囲の開始とに設定する(S920)。
【００９８】
次に、図１０乃至図１２は分割行列量子化方式が適用される12.2kbpsモードに対する探索範囲の終わり点を設定する方法を示したフローチャートである。即ち、探索範囲の終わり点は逆方向比較を通じRn-1<Cl,nを満足する最も大きいl値に設定する。ここで、一番目のコードブックに対してはn=1、二番目のコードブックはn=2、三番目のコードブックはn=3、四番目のコードブックはn=4、五番目のコードブックはn=5である。
【００９９】
開始点を求める場合と同様に、Clast,nからCl,nまで順次にさがせば非効率的であるため、64、16、4、1単位に変化させながらl値を探す。
まず、図１０を参照すれば、これは一番目のコードブックに対して探索範囲の終わり点を求める過程である。まず、線形スペクトルペアーベクトルのDC成分のLを計算して、上述した方法を通じ目標ベクトル(R)を計算する。コードベクトル集合の終わり点を求めるための逆方向比較の時、一番目のコードブックインデックスの数が127個であるので初期値i=128に設定する。
【０１００】
このように初期値が設定されたら、変数iを64ずつ減少させながらRn-1<Ci-64,nの条件を満足するiを探す。Iを探したら、変数j=iに設定して、変数jを16ずつ減少させながらRn-1<Cj-16,nの条件を満足するjを探す。jを探したら、変数k=jに設定して、変数kを4ずつ減少させながらRn-1<Ck-4,nの条件を満足するkを探す。kを探したら、変数m=kに設定して、変数mを1ずつ減少させながら
Rn-1<Cm-1,nの条件を満足するmを探す。このようにmを探したら、求めようとする終わり点lとしてm-1値を設定する。
【０１０１】
図１１は二番目の、三番目の、四番目のコードブックに対する探索範囲の終わり点を求める過程を示したフローチャートである。図１０と同様にまず線形スペクトルペアーベクトルのDC成分のLを計算して、上述した方法を通じ目標ベクトル(R)を計算する。
【０１０２】
この時、二番目のと三番目の、及び四番目のコードブックのインデックスの数は246個で、この246より大きくて64の倍数である最も小さな数は256であるので、初期値i=256に設定する。
【０１０３】
このように初期値が設定されたら、変数iを64ずつ減少させながらRn-1<Ci-64,nの条件を満足するiを探す。iを探したら、変数j=iに設定して、変数jを16ずつ減少させながらRn-1<Cj-16,nの条件を満足するjを探す。jを探したら、変数k=jに設定して、変数kを4ずつ減少させながらRn-1<Ck-4,nの条件を満足するkを探す。kを探したら、変数m=kに設定して、変数mを1ずつ減少させながら
Rn-1<Cm-1,nの条件を満足するmを探す。このようにmを探したら、求めようとする終わり点lとしてm-1値を設定する。
【０１０４】
図１２は五番目のコードブックに対する探索範囲の終わり点を求める過程を示したフローチャートである。
図１０と図１１と同様にまず線形スペクトルペアーベクトルのDC成分のLを計算して、上述した方法を通じ目標ベクトル(R)を計算する。この時、五番目のコードブックのインデックスの数は64個であるので初期値j=64に設定する。
【０１０５】
このように初期値が設定されたら、変数jを16ずつ減少させながらRn-1<Cj-16,nの条件を満足するjを探す。jを探したら、変数k=jに設定して、変数kを4ずつ減少させながらRn-1<Ck-4,nの条件を満足するkを探す。kを探したら、変数m=kに設定して、変数mを1ずつ減少させながらRn-1<Cm-1,nの条件を満足するmを探す。このようにmを探したら、求めようとする終わり点lとしてm-1値を設定する。
【０１０６】
また三番目のコードブックの場合、コードブックの大きさを増加させるために目標ベクトルにコードベクトルを引いて求めたEm,lと足して求めた
【０１０７】
【数２８】
0004731654.tif 000027
の中からより小さなことを選択するので、大きさが256のコードブックを512に用いる効果を有することができる。ここで、引く場合は表示値(sign)を0とし、足す場合は1とする。上記のように三番目の副行列は、表示ビットが0である場合と表示ビットが1である場合の２種類の場合が存在するが、表示ビットが0である場合は図9を利用して開始点を求め、図１１を利用して終わり点を求めることができる。しかし、表示ビットが1である場合は別の方法で開始点と終わり点を求める。
【０１０８】
図１４と図１５は表示ビットが1である場合、三番目のコードブックに対する開始点と終わり点を設定する方法をそれぞれ示したフローチャートである。
まず、図１４を参照すれば、まず線形スペクトルペアーベクトルのDC成分のLを計算して(S1201)、目標ベクトル(R)を計算する(S1202)。次に、DC成分が加えられたコードブックCm,lからDC成分を引いて(S1203)、その結果値に-1をかけた(S1204)後、またDC成分を足す(S1205)。このようにすることにより、降順で並べ替えに整列したコードブックが昇順で並べ替えに整列した。このように昇順で並べ替えに整列したコードブックの場合には逆方向比較を通じ開始点を求める。
【０１０９】
即ち、i=0に初期化して(S1206)、変数iを64ずつ増加させながら
【０１１０】
【数２９】
0004731654.tif 000028
の条件を満足するiを探す(S1207、S1208、S1209)。iを探したら、変数j=iに設定して(S1210)、変数jを16ずつ増加させながら
【０１１１】
【数３０】
0004731654.tif 000029
の条件を満足するjを探す(S1211、S1212、S1213)。jを探したら、変数k=jに設定して(S1214)、変数kを4ずつ増加させながら
【０１１２】
【数３１】
0004731654.tif 000030
の条件を満足するkを探す(S1215、S1216、S1217)。kを探したら、変数m=kに設定して(S1218)、変数mを1ずつ増加させながら
【０１１３】
【数３２】
0004731654.tif 000031
の条件を満足するmを探す(S1219、S1220、S1221)。このようにmを探したら、m+1を開始点と設定する(S1222)。
【０１１４】
次に、図１５を参照すれば、まず線形スペクトルペアーベクトルのDC成分のLを計算して(S1301)、目標ベクトル(R)を計算する(S1302)。次に、DC成分が加えられたコードブックCm,lからDC成分を引いて(S1303)、その結果値に-1をかけた(S1304)後、またDC成分を足す(S1305)。このようにすることにより、降順で並べ替えに整列したコードブックが昇順で並べ替えに整列する。このように昇順で並べ替えに整列したコードブックの場合には順方向比較を通じ終わり点を求める。
【０１１５】
まず、即ち、i=256に初期化して(S1306)、変数iを64ずつ減少させながら
【０１１６】
【数３３】
0004731654.tif 000032
の条件を満足するiを探す(S1307、S1308、S1309)。iを探したら、変数j=iに設定して(S1310)、変数jを16ずつ減少させながら
【０１１７】
【数３４】
0004731654.tif 000033
の条件を満足するjを探す(S1311、S1312、S1313)。jを探したら、変数k=jに設定して(S1314)、変数kを4ずつ減少させながら
【０１１８】
【数３５】
0004731654.tif 000034
の条件を満足するkを探す(S1315、S1316、S1317)。kを探したら、変数m=kに設定して(S1318)、変数mを1ずつ減少させながら
【０１１９】
【数３６】
0004731654.tif 000035
の条件を満足するmを探す(S1319、S1320、S1321)。このようにmを探したら、m-1を終わり点と設定する(S1322)。
【０１２０】
次に、予測分割ベクトル量子化(Predictive SMQ)方式に適用された線形スペクトルペアー(LSP)コードブックの探索方法を察してみる。
適応多重ビット率(AMR)コーデックで10.2kbpsと、7.95kbps、7.40kbps、6.70kbps、5.90kbps、5.15kbps、及び4.75kbpsモードは12.2kbpsモードとは違い予測分割ベクトル量子化(PSVQ：Predictive Split Vector Quantization)方式を利用して線形スペクトルペアー(LSP)係数を量子化する。
【０１２１】
上記で提示した7個モードで短区間予測(また線形予測)分析は30ms非対称窓を有する磁気相関近似法を使用して音声フレーム当り一度ずつ遂行され、磁気相関計算に40サンプル(5ms）の予測値(lookahead）が用いられる。解釈窓は12.2kbpsモードの二番目の解釈窓と同じであるが、L1(II)とL2(II)の
値をそれぞれ200と40を用いる点に差がある。フレーム単位に線形予測(LP)フィルター係数は線形スペクトルペアー(LSP)係数に変換された後量子化になる。図4に示すように1次MA予測器(41）が用いられて剰余線形スペクトル周波数(residual LSF)ベクトル分割ベクトル量子化(SVQ：split vector quantization)器(42)を使用して量子化する。予測と量子化は次の通り遂行される。
【０１２２】
まず、フレームnから平均を引いた線形スペクトル周波数ベクトルをZ(n)に表現すると、予測剰余線形スペクトル周波数ベクトルr(n）は数式３７のように与えられる。
【０１２３】
【数３７】
0004731654.tif 000036
ここで、p(n）はフレームnに対する予測線形スペクトル周波数ベクトルである。p(n）は1次MA予測器(41)を使用して過去フレームで量子化された剰余線形スペクトル周波数ベクトルr'(n-1)とj次線形スペクトル周波数に対する予測因子ajから数式３８のように得ることができる。
【０１２４】
【数３８】
0004731654.tif 000037
次に、剰余線形スペクトル周波数ベクトルr(n）は分割ベクトル量子化方式で量子化になる。ベクトルr(n）は3、3、4次元の3個の副ベクトルに分割されて、モードによって7〜9ビットを使用して3個の副ベクトルを量子化する。7個モードは副ベクトルに割り当てられたビットであるけ違うであるけ量子化過程は皆同一である。したがって7個モード中7.95kbpsモードの例を通じ全体的なモードに対する説明にかえる。
【０１２５】
図4は一般的な適応多重ビット率(AMR)コーデックの予測分割ベクトル量子化方式を実現するための構成図である。MA予測器(41）の次数は1次であり、以前のフレームの量子化されたエラーベクトルe'が入力されてこのエラーベクトルe'に1次予測線形係数bを適用して予測ベクトルPを出力する。LSP係数値のDC成分である平均ベクトルLDCと予測ベクトルPを足してPDCを求める。LSP係数ベクトルLからPDCを引いて得られたエラーベクトルeはそれぞれ3、3、4次元を有する3個の副ベクトルに分けられた、各副ベクトル9ビットにベクトル量子化になる。予測ベクトルPDCと線形スペクトルペアーエラーベクトルeは数式３９に適用して求める。
【０１２６】
【数３９】
0004731654.tif 000038
ここで、iは現在フレームを意味してnは係数の次数(n=1,……,10)を表す。各副ベクトルに対する最適コードベクトル値は数式４０のエラー基準値(criterion)El,mを最小化する値と選択する。
【０１２７】
【数４０】
0004731654.tif 000039
ここで、Wmはm番目の副ベクトルのための加重値行列であり、量子化されていない線形スペクトルペアーベクトルであるLから求められる。そして、量子化された線形スペクトルペアーベクトルL'l,mは数式４１のように表すことができる。
【０１２８】
【数４１】
0004731654.tif 000040
前記の数式４１を数式４０に代入すると、エラー基準値El,mは数式４２のように表すことができる。
【０１２９】
【数４２】
0004731654.tif 000041
前記の数式４２によってエラー基準値El,mはemとe'l,mに対する式で表現されるので、実際に512個のコードブックに対してEl,mを計算する時、計算量をたくさん減らすことができる。ここで、emはコードブック探索のための目標ベクトルであり、e'l,mはm番目の副ベクトルのl番目のエラーベクトルに該当する。したがって、この値を利用してEl,mを最小化するコードブックインデックスlをチャンネルを通じ伝送する。上記のように線形スペクトルペアー係数を量子化する時、要求される計算量の大部分が3個の副ベクトルに対する最適コードベクトル探索の時使われるので、探索対象コードベクトル範囲を減らすことができるならば計算量の減少利得をたくさん得ることができる。
【０１３０】
したがって、本発明ではLSP係数値の順序性質を利用して線形スペクトルペアー係数の量子化の時探索する対象コードベクトルの範囲を減らすことができる方法を提示する。既存方式では目標ベクトルemと該当コードブックがエラーベクトルに該当するので、順序性質を有しない。それで線形スペクトルペアー係数の順序性質を利用するために数式４２を数式４３のように変えて順序性質を有する目標ベクトル形態に構成する。
【０１３１】
【数４３】
0004731654.tif 000042
上記の式でEl,mは、(Lm-Pm)と(e'l,m+LDC)値を利用して求めることができるが、ここで(Lm-Pm)をrmとすると、LmはLDC値を除去せず、Pmはエラー値から予測された値であるので、変位が少ない。それでrmは順序性質を有し、コードブック探索の目標ベクトルとなる。(e'l,m+LDC)をCl,mとすると、この値は既存のエラーコードブックe'l,mに順序性質を有するLDCを加えた結果であるので、Cl,mは順序性質を有するようになって、ここでe'l,mとLDCは皆決められた値であるので、あらかじめ計算され既存コードブックにかえる。
【０１３２】
このようにrmとCl,mを利用してEl,m値を求め、El,mを最小化させるコードブックインデックスlをチャンネルを通じて伝送する。図6は上記の数式４３の結果を利用できるように構成された予測分割ベクトル量子化方式の構成図である。この図6の構成は図4の構成と根本的に同じ構造であるが、線形スペクトルペアーベクトルのLからLSP係数値のDC成分であるLDCを引く過程が省略されており、各副フレームに対するコードブックはあらかじめLDC値を足した新しいコードブックに代えたものである。そうすると目標ベクトルと該当コードブックが皆順序性質を有する。
【０１３３】
そして、図8に示すように3、3、4次元の3個の副ベクトルのための3個のコードブックに対して、一番目のコードブックは三番目の列の要素値を基準にして、二番目のコードブックは二番目の列の要素値を基準にして、そして三番目のコードブックは一番目の列の要素値を基準にしてコードベクトルを降順で並べ替えに整列する。整列したコードブックと目標ベクトルDC成分が含まれているので、順序性質を保持する。したがって、数式４４を利用してコードブックの特定列の要素値と目標ベクトル内の該当列前後の要素値を比較して順序性質に違背するコードベクトルを探索対象から除外する概念でコードブックの探索範囲を決定する。
【０１３４】
【数４４】
0004731654.tif 000043
数式４４で、上記の条件のように順序性質の満足可否を決定するためにどんなコードベクトルのn番目の列の要素値と目標ベクトルの(n+1)番目の列の要素値を比較することを順方向比較とし、下記の条件のようにコードベクトルのn番目の列の要素値と目標ベクトルの(n-1)番目の列の要素値を比較することを逆方向比較という。
【０１３５】
図8は本発明の一実施例による分割ベクトル量子化方式による高速探索方法を図示している。図面からf1、f2、f3とb1、b2、b3はそれぞれ順方向及び逆方向比較に用いられるコードベクトル要素値と目標ベクトル要素値を表したことである。ここで各コードブックは特定列を降順で並べ替えに整列したので、順方向比較では順序性質を満足する開始点のみ求めると、その点以後のコードベクトルは順方向の順序性質を満足するようになる。したがって、逆方向比較では順序性質を満足する終わり点を求める。
【０１３６】
上記のように順序性質を満足する開始点と終わり点が求められると、実際El,m値を求めるためのコードブック探索は開始点と終わり点の範囲でのみ実施する。与えられた目標ベクトルに対して順序性質を満足するコードベクトル集合の具体的な開始点と終わり点を求める過程を動作フローチャートに表せば図９と図１３の通りである。図９と図１３はそれぞれ順方向比較と逆方向比較を遂行するフローチャートであり、このようなフローチャートを通じて求められた開始点と終わり点によりコードブックの探索範囲が決められる。
【０１３７】
以上記のように本発明はLSP係数の順序性質を利用して探索対象コードベクトルの範囲を減らすことによって、LSP係数量子化時、多くの計算量を要求するコードブック探索計算量を減らすことができる効率的なLSF量子化器を設計した。
【０１３８】
【発明の効果】
以上記のように本発明によると、一般的な音声符号化器の線形スペクトルペアー(LSP)係数の線形分割行列量子化(PSMQ)及び線形分割ベクトル量子化(PSVQ)を遂行する時、目標ベクトルと対象コードベクトルを順序性質を有するように変換してコードブック探索時、順序性質を満足する対象コードベクトルであるけを探索して、全体的な計算量を減少させながらも追加的なメモリの要求及びSD性能の減殺がない効率的なLSF量子化器を設計できる。このような高速探索方法を音声符号化器のLSP係数量子化に適用することによって音声符号化器の性能減殺なしに計算量を減らすことができる効果がある。
【図面の簡単な説明】
【図１】  適応多重ビット率(AMR)音声符号化器の線形予測解釈窓(window）の構成図。
【図２】  12.2kbpsモードに用いられた分割行列量子化構造を有する剰余線形スペクトル周波数ベクトルの構成図。
【図３】  適応多重ビット率(AMR)音声符号化器の予測分割行列量子化(PSMQ)構造に対するブロック図。
【図４】  適応多重ビット率(AMR)音声符号化器の予測分割ベクトル量子化(PSVQ)構造に対するブロック図。
【図５】  本発明の一実施例による順序性質を有するように修正された新しい予測分割行列量子化(PSMQ)構造に対するブロック図。
【図６】  本発明の一実施例による順序性質を有するように修正された新しい予測分割ベクトル量子化(PSVQ)構造に対するブロック図。
【図７】  分割行列量子化(SMQ)に対する探索コードベクトル選択時の順方向及び逆方向比較方式に対するブロック図。
【図８】  分割ベクトル量子化(SVQ)に対する探索コードベクトル選択時の順方向及び逆方向比較方式に対するブロック図。
【図９】  コードブック探索の開始点を求めるための順方向比較方法を示した動作フローチャート。
【図１０】  分割行列量子化方式でコードブック探索の終わり点を求めるための逆方向比較方法を示した動作フローチャート。
【図１１】  分割行列量子化方式でコードブック探索の終わり点を求めるための逆方向比較方法を示した動作フローチャート。
【図１２】  分割行列量子化方式でコードブック探索の終わり点を求めるための逆方向比較方法を示した動作フローチャート。
【図１３】  分割ベクトル量子化方式でコードブック探索の終わり点を求めるための逆方向比較方法を示した動作フローチャート。
【図１４】  分割行列量子化(SMQ)に対する三番目のコードブック探索時のサイン(sign)の値が1である場合、開始点を探す方法を示した動作フローチャート。
【図１５】  分割行列量子化(SMQ)に対する三番目のコードブック探索時のサイン(sign)の値が1である場合、終わり点の検索方法を示した動作フローチャート。
【符号の説明】
３１、５１…ＭＡ予測器、３２、５２…分割行列量子化器、４１、６１…ＭＡ予測器、４２、６２…分割ベクトル量子化器。
【図１】
0004731654.tif 000046
【図２】
0004731654.tif 000047
【図３】
0004731654.tif 000048
【図４】
0004731654.tif 000049
【図５】
0004731654.tif 000050
【図６】
0004731654.tif 000051
【図７】
0004731654.tif 000052
【図８】
0004731654.tif 000053
【図９】
0004731654.tif 000054
【図１０】
0004731654.tif 000055
【図１１】
0004731654.tif 000056
【図１２】
0004731654.tif 000057
【図１３】
0004731654.tif 000058
【図１４】
0004731654.tif 000059
【図１５】
0004731654.tif 000060