JP3412118B2 - Conjugate structure vector quantization method, apparatus therefor, and program recording medium - Google Patents

Conjugate structure vector quantization method, apparatus therefor, and program recording medium

Info

Publication number
JP3412118B2
JP3412118B2 JP35715997A JP35715997A JP3412118B2 JP 3412118 B2 JP3412118 B2 JP 3412118B2 JP 35715997 A JP35715997 A JP 35715997A JP 35715997 A JP35715997 A JP 35715997A JP 3412118 B2 JP3412118 B2 JP 3412118B2
Authority
JP
Japan
Prior art keywords
vector
code
codebook
quantization error
parallel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP35715997A
Other languages
Japanese (ja)
Other versions
JPH11191739A (en
Inventor
直樹 岩上
健弘 守谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP35715997A priority Critical patent/JP3412118B2/en
Publication of JPH11191739A publication Critical patent/JPH11191739A/en
Application granted granted Critical
Publication of JP3412118B2 publication Critical patent/JP3412118B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/008Vector quantisation

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】この発明は、音声・オーディ
オや画像などの高能率圧縮符号化の分野で広く利用さ
れ、互いに共役構造関係にある二つのコードブックのコ
ードベクトルを組合せて目標ベクトルをベクトル量子化
する方法、その装置及びプログラム記録媒体に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention is widely used in the field of high-efficiency compression coding of voice, audio, image, etc., and a target vector is obtained by combining code vectors of two codebooks having a conjugate structure relationship with each other. The present invention relates to a quantization method, an apparatus therefor, and a program recording medium.

【0002】[0002]

【従来の技術】ベクトル量子化は、信号の符号化におい
て、複数の入力サンプルをまとめて目標ベクトルとし、
あらかじめ用意したコードベクトル一覧であるコードブ
ックの中から、目標ベクトルにもっとも近いコードベク
トルを選び、複数の入力サンプルをそのコードベクトル
番号で表す符号化方法である。
2. Description of the Related Art In vector quantization, a plurality of input samples are collectively set as a target vector in signal coding.
This is a coding method in which a code vector closest to the target vector is selected from a code book that is a list of code vectors prepared in advance, and a plurality of input samples are represented by the code vector numbers.

【0003】この方法は、入力サンプルの分布に一定の
傾向がある場合、入力サンプルの分布傾向と同じ分布傾
向をもつコードブックを用意しておけば高い能率で符号
化ができる。またベクトル量子化においては、符号化に
用いることのできる情報量が等しい場合、ベクトル量子
化の量子化ビット数、つまりコードベクトルの数を大き
く、またコードベクトルのサンプル数、すなわちコード
ベクトル長を大きくした方が能率が良い。
In this method, when the distribution of input samples has a certain tendency, it is possible to perform coding with high efficiency by preparing a codebook having the same distribution tendency as the distribution tendency of input samples. In vector quantization, if the amount of information that can be used for encoding is the same, increase the number of quantization bits in vector quantization, that is, the number of code vectors, and increase the number of code vector samples, that is, the code vector length. It is better to do it.

【0004】しかし、コードブックの規模は、コードベ
クトル長に比例し、量子化ビット数の2乗に比例するた
め、量子化能率をあげようとすると、コードブックを記
憶しておくのに必要なメモリが大規模になりすぎてしま
うという欠点を持つ。この問題を解決するために、図4
Aのような共役構造ベクトル量子化方法が提案されてい
る。この方法では、小規模な二つのコードブック10,
11からの各コードベクトルを加算部13で加えあわ
せ、再生信号を得る、この再生信号と目標信号との距離
を距離計算部13で求め、その距離が最小となるように
最適コードベクトル検索部14でコードブック10,1
1の各コードベクトルを選択する。このようにすると、
あまりメモリ量を増やすことなくベクトル量子化の能率
を上げることができる。
However, the scale of the codebook is proportional to the length of the code vector and is proportional to the square of the number of quantization bits. Therefore, if the quantization efficiency is to be increased, it is necessary to store the codebook. It has the disadvantage that the memory becomes too large. In order to solve this problem, FIG.
A conjugated structure vector quantization method such as A has been proposed. This method uses two small codebooks 10,
Each code vector from 11 is added by an adder 13 to obtain a reproduced signal. The distance calculator 13 calculates the distance between the reproduced signal and a target signal, and the optimum code vector searcher 14 is used to minimize the distance. In the codebook 10,1
Each code vector of 1 is selected. This way,
It is possible to improve the efficiency of vector quantization without increasing the memory amount too much.

【0005】ベクトル量子化を大規模にすると生じるも
う一つの欠点は、最適なコードベクトルを検索するのに
大きな演算量がかかるということである。共役構造ベク
トル量子化では、演算量を削減するために、図5に示す
ようにコードブック10,11のコードベクトルを互い
に共役構造ベクトルとし、おのおののコードブック1
0,11をそれぞれ予備選択部15,16により独立に
検索し、もっともらしい候補ベクトルをいくつか予備選
択して小コードブック17,18を構成し、小コードブ
ック17,18の中から最適な組み合わせを検索する手
法が用いられる。
Another drawback of large-scale vector quantization is that searching for an optimum code vector requires a large amount of calculation. In the conjugate structure vector quantization, in order to reduce the calculation amount, the code vectors of the codebooks 10 and 11 are made to be conjugate structure vectors to each other as shown in FIG.
0 and 11 are independently searched by the preselection units 15 and 16, respectively, and some plausible candidate vectors are preselected to form the small codebooks 17 and 18, and the optimal combination is selected from the small codebooks 17 and 18. Is used.

【0006】この方法では、予備選択時の候補数が小さ
いほど高い演算量削減効果が得られるが、その反面、予
備選択では組み合わせる対向側の情報を用いないため、
予備選択の候補数が少ないほど量子化の能率が悪化する
という問題点をもつ。
In this method, the smaller the number of candidates at the time of preliminary selection is, the higher the effect of reducing the amount of calculation can be obtained. However, on the other hand, since the information on the opposite side to be combined is not used in the preliminary selection,
There is a problem that the efficiency of quantization deteriorates as the number of candidates for preliminary selection decreases.

【0007】[0007]

【発明が解決しようとする課題】この発明は、共役構造
ベクトル量子化において、高い量子化能率を保ったまま
少ない演算量で量子化する方法、その装置およびプログ
ラム記録媒体を提供する。
DISCLOSURE OF THE INVENTION The present invention provides a method for quantizing a conjugated structure vector with a small amount of calculation while maintaining a high quantization efficiency, an apparatus therefor, and a program recording medium.

【0008】[0008]

【課題を解決するための手段】この発明では、共役構造
ベクトル量子化の組み合わせ検索の際、一方のコードブ
ック中の各コードベクトルと、他方のコードブック中の
コードベクトルと有効な複数のものとの組み合わせのグ
ループを選び、その各グループにおける両コードブック
の各コードベクトルの組み合わせ合成と目標ベクトルと
の量子化誤差が最小になるようにする。
According to the present invention, each code vector in one codebook, the code vector in the other codebook, and a plurality of valid ones are searched for in the combination search of conjugate structure vector quantization. , And the quantization error between the target vector and the combination of the code vectors of both codebooks in each group is minimized.

【0009】前記一方のコードブックの各コードベクト
ルと、他方のコードブック中のコードベクトルとの有効
な複数のものとの組み合わせのグループを選ぶために
は、例えばコードベクトルを、目標ベクトルとの近さを
評価できる一次元の評価値に変換し、この値を用いて、
共役ベクトル(他方のコードブックのコードベクトル)
との有効な組み合わせを探し出す。一次元の評価値とし
て、コードベクトルの、目標ベクトルとの平行成分の大
きさを用いると効果が高い。作用 共役構造ベクトル量子化では、図Bに示すように、コ
ードブック10中のコードベクトルv0とコードブック
11中のコードベクトルv1との合成と、目標ベクトル
tとの距離Rを計算して、そのうちの最小値Rmin とな
る組み合わせを選択する。従来法では、考えられる全て
の組み合わせについて距離計算・最小値との比較を行う
が、この発明では、例えば図1に示すように、コードベ
クトルv0,v1の各目標ベクトルtとの平行成分C0
とC1の合成C0+C1と目標ベクトルtとの誤差Rp
が現在の最小誤差範囲Rp min におさまっている組み合
わせについてのみ距離計算を行う。このようにすると、
距離計算・最小値との比較を行う必要がない組み合わせ
についてはこれを省略することができ、演算量を軽減す
ることができる。一次元値は、昇順または降順の並べ替
えや、値の検索などの処理を少ない演算量で施すことが
できるので、距離計算の省略のための前処理の演算量は
少なく押さえることができる。
In order to select a group of combinations of each code vector of the one codebook and a plurality of valid code vectors in the other codebook, for example, the code vector is set close to the target vector. Is converted to a one-dimensional evaluation value that can be evaluated, and using this value,
Conjugate vector (code vector of the other codebook)
Find a valid combination with. It is highly effective to use the magnitude of the parallel component of the code vector as the one-dimensional evaluation value with the target vector. The action conjugated structure vector quantization, as shown in FIG. 4 B, and calculating the combination of the code vectors v1 in the code vectors v0 and codebook 11 in the codebook 10, the distance R between the target vector t, A combination having the minimum value R min is selected. In the conventional method, distance calculation and comparison with the minimum value are performed for all possible combinations, but in the present invention, as shown in FIG. 1, for example, the parallel component C0 of the code vectors v0 and v1 with each target vector t
Error R p with the C1 synthesis C0 + C1 and the target vector t of
The distance calculation is performed only for the combinations in which the current minimum error range R p min falls. This way,
This can be omitted for combinations that do not require distance calculation and comparison with the minimum value, and the amount of calculation can be reduced. Since the one-dimensional value can be sorted in ascending or descending order and the value search can be performed with a small amount of calculation, the amount of preprocessing for omitting the distance calculation can be reduced.

【0010】また、この発明方法においては、量子化誤
差が現在の最小値を必ず越える場合を除外するという手
法をとっているので、この方法を適用することによる量
子化能率の低下は全くない。
Further, in the method of the present invention, since the method of excluding the case where the quantization error always exceeds the present minimum value is taken, there is no reduction in the quantization efficiency by applying this method.

【0011】[0011]

【発明の実施の形態】実施例1 図2にこの発明の実施例1を示す。この実施例1ではコ
ードブック10の各コードベクトルに対するコードブッ
ク11中のコードベクトルの有効な組み合わせの選択の
ために、目標ベクトルとの近さをコードベクトルの、目
標ベクトルとの平行成分の大きさを用いて判定して行う
場合である。コードブック10、コードブック11を構
成するコードベクトルの数はどちらもNである。
Embodiment 1 FIG. 2 shows Embodiment 1 of the present invention. In the first embodiment, in order to select an effective combination of the code vectors in the code book 11 for each code vector in the code book 10, the closeness to the target vector is determined as the magnitude of the parallel component of the code vector to the target vector. This is a case where the determination is performed using. The number of code vectors forming the codebook 10 and the codebook 11 is N in both cases.

【0012】手順1では、コードブック10,11中の
各コードベクトルva (n)の、目標ベクトルtとの平
行成分の大きさCa (n)を(1)式のように計算す
る。 Ca (n)=va (n)・t/T T=‖t‖ (1) nはコードベクトルvのコードブック中のインデックス
番号、aは、コードブック10と11との識別番号を表
し、値は0または1である。つまりva (n)とtとの
内積をtの大きさ(振幅)で割算して平行成分の大きさ
を求める。これらは平行成分記憶部21a,21b(図
3A)に記憶される。また目標ベクトルの大きさ‖t‖
が記憶部22に記憶される。
In the procedure 1, the magnitude C a (n) of the parallel component of each code vector v a (n) in the code books 10 and 11 with the target vector t is calculated as in the equation (1). C a (n) = v a (n) · t / T T = ‖t‖ (1) n is the index number of the codebook code vectors v, a represents the identification number of the code book 10 and 11 , The value is 0 or 1. That is, the inner product of v a (n) and t is divided by the size (amplitude) of t to obtain the size of the parallel component. These are stored in the parallel component storage units 21a and 21b (FIG. 3A). Also, the size of the target vector ‖t‖
Is stored in the storage unit 22.

【0013】手順2では、N個からなる一方のコードブ
ック11を、平行成分の大きさC1が昇順になるように
並べ替える。この並べ替えを高速に行うアルゴリズム
は、様々なものが提案されており、一例としてヒープソ
ートが挙げられる。記憶部21bの内容がこの並べ替え
たものとされる。手順3では、目標ベクトルと現在まで
の最小量子化誤差をもとに、N個からなる他方のコード
ブック0中の各コードベクトルの平行成分の大きさC0
(n)ごとに、コードブック11中の組み合わせるべき
コードベクトルv1 (n)の範囲(グループ)を決定す
る。そのため現在の最小量子化誤差記憶部23が設けら
れる(3A)。
In procedure 2, one of the N codebooks 11 is rearranged so that the magnitude C 1 of the parallel component is in ascending order. Various algorithms have been proposed for performing this rearrangement at high speed, and heap sorting is an example. The contents of the storage unit 21b are arranged in this order. In procedure 3, the magnitude C 0 of the parallel component of each code vector in the other N codebooks 0 is based on the target vector and the minimum quantization error up to the present.
For each (n), the range (group) of code vectors v 1 (n) to be combined in the codebook 11 is determined. Therefore, the present minimum quantization error storage unit 23 is provided ( FIG. 3A).

【0014】まず最初に、コードブック10中の指定さ
れたコードベクトルv0 (n)の平行成分の大きさC0
(n)に対し、コードブック11中の組み合わせて有効
なコードベクトルの平行成分の範囲を決定する。 C1 min (n) =‖t‖−C0 (n)−√d2 min 1 max (n) =‖t‖−C0 (n)+√d2 min (2) ここで、C1 min は、コードブック11中のコードベク
トルの平行成分の、組み合わせて有効な下限の値、C1
max は、コードブック11中のコードベクトルの平行成
分の、組み合わせて有効な上限の値、d2 min は量子化
誤差の最小値である。つまり、目標ベクトルtの大きさ
‖t‖からコードブック10中のコードベクトルの平行
成分の大きさC0 (n)と量子化誤差の最小値d2 min
の平方根を引いた値がC1 min (n)以上であり、かつ
‖t‖からコードブック10のコードベクトルの平行成
分の大きさC0 (n)を引いた値に√d2 min を加算し
た値がC1 max (n)以下のものを、各コードベクトル
0 (n)ごとに、コードブック11中のコードベクト
ルを探せばよいことを示している。
First, the magnitude C 0 of the parallel component of the designated code vector v 0 (n) in the codebook 10
For (n), the range of the parallel component of the effective code vector in the codebook 11 is determined by the combination. C 1 min (n) = ‖t ‖-C 0 (n) -√d 2 min C 1 max (n) = ‖t ‖-C 0 (n) + √d 2 min (2) where C 1 min is the lower limit value of the parallel components of the code vector in the codebook 11, which is effective in combination, C 1
max is an effective upper limit of the parallel components of the code vector in the codebook 11, and d 2 min is the minimum value of the quantization error. That is, from the size ‖t‖ of the target vector t to the size C 0 (n) of the parallel component of the code vector in the codebook 10 and the minimum value d 2 min of the quantization error.
The value obtained by subtracting the square root of is not less than C 1 min (n), and √d 2 min is added to the value obtained by subtracting the magnitude C 0 (n) of the parallel component of the code vector of the codebook 10 from ‖t‖. It is shown that the code vector in the code book 11 should be searched for each code vector v 0 (n) for the value of C 1 max (n) or less .

【0015】そこで、C1 min (n)<C1 (m)<C
1 max (n)となるmの範囲を検索する。mは昇順に並
べられたC1 (n)の順番の番号を示す。コードブック
11は手順2において、C1 が昇順となるように並べ替
えられているので、C1 が、C1 min 以上の最小値m
min とC1 max 以下の最大値mmax となるmの値をそれ
ぞれ検索すれば、mの範囲(mmin (n)、m
max (n))を指定することができる。例えば図3Bに
示すように、あるC0 (n)についてC1 (n)が大き
い順にC1 1(n),C1 2(n),・・・C1 N (n)と
並んでおり、C1 2(n)>C1 max (n)でC1 3(n)
<C1 max (n)であれば、mmax =3であり、C 1 i
(n)>C1 min (n)でC1 i+1 (n)<C
1 min (m)であればmmin=iとなる。
Therefore, C1 min(N) <C1(M) <C
1 maxThe range of m that is (n) is searched. m is in ascending order
C given1The numbers in the order of (n) are shown. Code book
11 is C in step 21Sort in ascending order
Because it is obtained, C1But C1 minMinimum value m above
minAnd C1 maxMaximum value m belowmaxThe value of m
If you search each, the range of m (mmin(N), m
max(N)) can be specified. For example in Figure 3B
As shown, there is a C0About (n) C1(N) is large
C in order1 1(N), C1 2(N), ... C1 N(N) and
Lined up, C1 2(N)> C1 maxC in (n)1 3(N)
<C1 maxIf (n), then mmax= 3 and C 1 i
(N)> C1 minC in (n)1 i + 1(N) <C
1 minIf (m), then mmin= I.

【0016】この手順は、nの値ごとに行う。すなわ
ち、コードブック10のコードベクトルv0 (n)ごと
に行い、nの値は0から始まり、mmin (n)、mmax
(n)を決定してから、nを1ずつ加えて更新してゆく
が、更新する前に手順4に進む。手順4の後、プロセス
は手順5に進行するが、手順5が終了したのちにプロセ
スは手順3に戻る。手順3はコードブック10中の各コ
ードベクトルに対し、それぞれ、コードブック11中の
有効な組み合わせとなるコードベクトルの候補を選択し
ていることになる。
This procedure is performed for each value of n. That is, the process is performed for each code vector v 0 (n) of the codebook 10, the value of n starts from 0, and m min (n) and m max
After (n) is determined, n is added one by one and updating is performed, but the procedure proceeds to step 4 before updating. After step 4, the process proceeds to step 5, but after step 5 ends, the process returns to step 3. In the procedure 3, for each code vector in the codebook 10, the candidate of the code vector which is a valid combination in the codebook 11 is selected.

【0017】手順4では、手順3で求めた有効な組み合
わせの範囲内の各コードベクトルv 1 (m)と、コード
ベクトルv0 (n)の合成の、目標ベクトルtに対する
量子化誤差を計算する。 d2 (m,n)=‖t−{v0 (n)+v1 (m)}‖2 , mmin (n)max (n) (3) nは手順3で用いた値 手順5では、手順4で求めた量子化誤差d2 (m,n)
と、現在記録している量子化誤差の最小値d2 min とを
比較し、d2 (m,n)の方が小さければその値に記憶
部23のd2 min を更新し、また記憶部24のコードイ
ンデックスm,nの値を更新する(5a)。この更新手
順は、手順4で量子化誤差を計算する度に行う。手順4
・5で量子化誤差計算・比較が終了した後、nを+1し
(5b)、まだ処理を行うべきコードブック0のコード
インデックスnが残っているかを調べ(5c)、残って
いる場合には、手順3に進む。残っていない場合には、
現在記録しているコードインデックスを量子化インデッ
クスとして出力する(5d)。ここで、コードブック0
のインデックスnはそのまま出力するが、コードブック
1のインデックスmは、手順2での並べ替え前のインデ
ックスに直してから出力する。 実施例2 実施例2は、実施例1の拡張である。手順1の入力にコ
ードブック10とコードブック11を用いる代わりに、
おのおののコードブックを予備選択して得られた小コー
ドブック0と小コードブック1を用いる。この予備選択
は図5に示した従来法と同様に行えばよいが、従来より
予備選択の候補数を多くして量子化効率を下げないよう
にする。
In step 4, the effective combination obtained in step 3
Each code vector v within the range 1(M) and code
Vector v0For the target vector t of the composition of (n)
Calculate the quantization error.     d2(M, n) = | t− {v0(N) + v1(M)} ‖2,           mmin(N)<m<mmax(N) (3)         n is the value used in step 3 In step 5, the quantization error d found in step 42(M, n)
And the minimum value of the currently recorded quantization error d2 minAnd
Compare and d2If (m, n) is smaller, remember it
D of part 232 minIs updated and the code in the storage unit 24 is updated.
The values of the indexes m and n are updated (5a). This update hand
The procedure is performed every time the quantization error is calculated in the procedure 4. Step 4
・ After the quantization error calculation / comparison is completed in 5, increment n by 1.
(5b), codebook 0 code that should still be processed
Check if index n remains (5c), and leave
If so, go to step 3. If not,
Quantize index of currently recorded code index
(5d). Where codebook 0
The index n of is output as is, but the codebook
The index m of 1 is the index before the rearrangement in step 2.
Output after correcting it. Example 2 The second embodiment is an extension of the first embodiment. Enter in step 1
Instead of using codebook 10 and codebook 11,
Small code obtained by preselecting each codebook
Dobook 0 and small codebook 1 are used. This preliminary selection
Can be performed in the same manner as the conventional method shown in FIG.
Do not decrease the quantization efficiency by increasing the number of candidates for preselection
To

【0018】上述の説明から明らかなように、この発明
による量子化装置としてはコードブック10,11、目
標ベクトル振幅計算手段と、その計算結果‖t‖を記憶
する記憶部22、各コードベクトルの目標ベクトルと平
行な成分の大きさを計算する平行ベクトル振幅計算手段
と、それらの平行成分の大きさを記憶する記憶部21
a,21bと、記憶部21bの記憶内容を昇順に並べ替
える並べ替え手段と、コードブック10中の指定された
コードベクトルについて式(2)により有効下限値、有
効上限値を求める手段と、この有効下限値、有効上限値
に応じて有効な組み合わせとなるコードブック11中の
コードベクトル候補を求める手段と、これらコードベク
トル候補と、コードブック10中の指定されたコードベ
クトルとの量子化誤差を計算する手段と、その計算され
た量子化誤差と記憶部23の現在の最小量子化誤差と比
較する手段と、その比較で計算された量子化誤差の方が
小さい場合は、その量子化誤差で記憶部23の最小量子
化誤差を更新し、またその最小量子化誤差を生成する、
両コードベクトルのコードインデックスで記憶部24の
コードインデックスn,mを更新する手段と、コードブ
ック10の全てのコードベクトルに対する指定を行った
か否かを判定し、残ったコードベクトルがあれば、前記
有効上限値、有効下限値を求める手段、コードベクトル
候補を求める手段、量子化誤差を求める手段、比較手段
を行う繰返し手段と、コードブック10中の全てのコー
ドベクトルに対する指定が残っていなければ、その時の
記憶部24中のコードインデックスを量子化出力として
出力する手段と、上記各手段を制御し、処理を実行させ
る制御手段とを具備することは明らかであろう。
As is clear from the above description, as the quantizer according to the present invention, the codebooks 10 and 11, the target vector amplitude calculating means, the storage unit 22 for storing the calculation result ‖t‖, and the respective code vectors are stored. Parallel vector amplitude calculating means for calculating the magnitudes of the components parallel to the target vector and the storage unit 21 for storing the magnitudes of those parallel components.
a and 21b, a rearrangement means for rearranging the storage contents of the storage section 21b in ascending order, a means for obtaining the effective lower limit value and the effective upper limit value by the equation (2) for the specified code vector in the codebook 10, and A means for obtaining code vector candidates in the codebook 11 which are effective combinations according to the effective lower limit value and the effective upper limit value, and a quantization error between these code vector candidates and the designated code vector in the codebook 10 A means for calculating, a means for comparing the calculated quantization error with the current minimum quantization error in the storage unit 23, and if the quantization error calculated by the comparison is smaller, Updating the minimum quantization error in the storage unit 23 and generating the minimum quantization error;
A means for updating the code indexes n and m of the storage unit 24 with the code indexes of both code vectors and whether or not all the code vectors of the codebook 10 have been designated are determined. Unless there are remaining specifications for all code vectors in the codebook 10, a means for obtaining an effective upper limit value, a means for obtaining an effective lower limit value, a means for obtaining a code vector candidate, a means for obtaining a quantization error, a repeating means for performing a comparing means, and It will be apparent that the apparatus is provided with a means for outputting the code index in the storage unit 24 at that time as a quantized output, and a control means for controlling each of the above means and executing the processing.

【0019】またこの量子化装置の処理は一般にはプロ
グラムを解読実行して行われる。更に上述において、コ
ードベクトル11の平行成分の大きさを昇順に並べかえ
て処理したが、そのようなことをすることなく、要は指
定されたコードベクトルの平行成分の大きさと、目標ベ
クトルとの大きさと、現在の最小量子化誤差とから、指
定されたコードベクトルと、コードブック11のコード
ベクトル中の有効な組み合わせとなる候補を求めればよ
い。ードブック10中の各コードベクトルについて、
これと、コードブック11中のコードベクトルとの組み
合わせで有効なものを候補として選び出し、そのコード
ブック10中のコードベクトルと、これと対応する有効
な組み合わせの各候補との合成と、目標ベクトルとの量
子化誤差が最小となるコードベクトルの組み合わせのコ
ードインデックスを量子化出力とすればよい。
The processing of the quantizer is generally performed by decoding and executing a program. Further, in the above description, the magnitudes of the parallel components of the code vector 11 are rearranged in ascending order, but without doing so, the point is that the magnitude of the parallel components of the designated code vector and the magnitude of the target vector. And the current minimum quantization error, a candidate that is a valid combination of the designated code vector and the code vector of the codebook 11 may be obtained. For each code vector in co Dobukku 10,
A valid one is selected as a candidate in combination with this and a code vector in the codebook 11, the code vector in the codebook 10 is combined with each candidate of a valid combination corresponding to this, and a target vector is obtained. The code index of the combination of code vectors that minimizes the quantization error of is used as the quantized output.

【0020】[0020]

【発明の効果】以上述べたように、この発明を用いる
と、共役構造ベクトル量子化において、少ない演算量で
コードベクトル10とコードベクトル11の無駄な組み
合わせを予測することができる。コードブック中のコー
ドベクトルの数が64程度で、コードベクトルの長さが
20程度である場合、約10分の1の演算量削減が期待
される。
As described above, according to the present invention, useless combination of the code vector 10 and the code vector 11 can be predicted with a small amount of calculation in the conjugate structure vector quantization. When the number of code vectors in the codebook is about 64 and the length of the code vectors is about 20, it is expected that the amount of calculation will be reduced by about 1/10.

【図面の簡単な説明】[Brief description of drawings]

【図1】この発明の共役構造ベクトル量子化における目
標ベクトルの大きさと、これと平行な二つの共役構造ベ
クトルの成分とにより、有効な組み合わせとなり得るか
否かを説明するための図。
FIG. 1 is a diagram for explaining whether an effective combination can be obtained depending on the size of a target vector in the conjugate structure vector quantization of the present invention and the components of two conjugate structure vectors parallel to the target vector.

【図2】この発明の方法を適用した機能構成と手順の例
を示す図。
FIG. 2 is a diagram showing an example of a functional configuration and a procedure to which the method of the present invention is applied.

【図3】Aはこの発明装置に用いられる各記憶手段を示
す図、Bは有効下限値と有効上限値と、有効な組み合わ
せの候補範囲を説明するための図である。
3A is a diagram showing each storage unit used in the device of the present invention, and FIG. 3B is a diagram for explaining a valid lower limit value, a valid upper limit value, and a candidate range of valid combinations.

【図4】Aは従来の共役構造ベクトル量子化の機能構成
を示す図、Bは通常の共役構造ベクトル量子化の距離計
算の模式図である。
FIG. 4A is a diagram showing a functional configuration of conventional conjugate structure vector quantization, and B is a schematic diagram of distance calculation of ordinary conjugate structure vector quantization.

【図5】従来の共役構造ベクトル量子化の演算量削減を
行った機能構成を示す図。
FIG. 5 is a diagram showing a functional configuration in which a calculation amount of a conventional conjugate structure vector quantization is reduced.

フロントページの続き (56)参考文献 特開 平8−123493(JP,A) 特開 平6−282298(JP,A) 特開 平9−120299(JP,A) 特開 平10−154000(JP,A) (58)調査した分野(Int.Cl.7,DB名) H03M 7/30 Continuation of the front page (56) Reference JP-A-8-123493 (JP, A) JP-A-6-282298 (JP, A) JP-A-9-120299 (JP, A) JP-A-10-154000 (JP , A) (58) Fields investigated (Int.Cl. 7 , DB name) H03M 7/30

Claims (8)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 互いに共役構造のコードベクトルを格納
した第1、第2コードブックからそれぞれ取出した二つ
のコードベクトルの合成が目標ベクトルに対し量子化誤
差が最小のものを選択する共役構造ベクトル量子化方法
において、第1、第2コードブック中の各コードベクトルごとに、
目標ベクトルと平行な成分の大きさを求める段階と、 第1コードブックのコードベクトルごとに、その平行成
分と第2コードブックのコードベクトルの平行成分との
組み合せのうち、その組み合せの合成ベクトルと目標ベ
クトルとの誤差が所定の範囲内のものを有効な組み合わ
せとして選び出す段階と、 その 選び出されたコードベクトルの有効な組み合わせ同
士の合成と、目標ベクトルとの量子化誤差が最小な組み
合わせを示すコードインデックスを検索する段階とから
なることを特徴とする共役構造ベクトル量子化方法。
1. A conjugate structure vector quantum in which synthesis of two code vectors respectively extracted from first and second codebooks storing mutually conjugate structure code vectors has a minimum quantization error with respect to a target vector. In the coding method, for each code vector in the first and second codebooks,
The step of obtaining the magnitude of the component parallel to the target vector, and the parallel composition for each code vector of the first codebook.
Min and the parallel component of the code vector of the second codebook
Of the combinations, the combined vector of the combination and the target vector
A valid combination with an error within the specified range
A step of selecting as the cause, and the features and synthesis of valid combinations between the singled out code vector, the quantization error between the target vector composed of the stage you find the code index indicating the minimum combination Conjugate structure vector quantization method.
【請求項2】 上記コードインデックスを検索する段階
は、 コードベクトルの組み合せごとに現在の最小量子化誤差
を示すコードインデックスを求め、上記所定の範囲は上
記現在の最小量子化誤差であり、検索すべき第1コード
ブック中のコードベクトルが残っている限り上記第2コ
ードブック中のコードベクトルとの有効な組み合わせを
求める処理を継続し、残っていない場合現在の最小量子
化誤差を示すコードインデックスを出力コードインデッ
クスとすることを特徴とする請求項1記載の共役構造ベ
クトル量子化方法。
2. A step of searching the code index.
Obtains a code index indicating the current minimum quantization error for each combination of code vectors, the predetermined range is above
Serial is the current minimum quantization error, the second co long as there remains a code vector in the first codebook to be searched
Valid combinations with the code vectors in the
Obtaining process continues, remaining If no conjugate structure vector quantization method according to claim 1, wherein the output code index and to Turkey the code index indicating the current minimum quantization error.
【請求項3】 上記第1、第2コードブックは、それぞ
れ第1、第2コードブックよりそれぞれ多くのコードベ
クトルを有する第1、第2大コードブックから予備選択
したコードベクトルの集合からなる小コードブックであ
ることを特徴とする請求項1又は2記載の共役構造ベク
トル量子化方法。
3. The first and second codebooks each include a small vector consisting of a set of code vectors preselected from first and second large codebooks each having more code vectors than the first and second codebooks. 3. The conjugated structure vector quantization method according to claim 1, which is a codebook.
【請求項4】 互いに共役構造のコードベクトルを格納
した第1、第2コードブックからそれぞれ取り出した二
つのコードベクトルの合成が目標ベクトルに対し、量子
化誤差が最小な組合せをコードインデックスとするベク
トル量子化装置において、 上記目標ベクトルの大きさを計算する目標ベクトル振幅
計算手段と、 上記目標ベクトルの大きさを記憶する目標ベクトル大き
さ記憶手段と、 上記第1コードブック中の各コードベクトルの目標ベク
トルと平行な成分の大きさを第1平行成分として求める
第1平行ベクトル振幅計算手段と、 上記第2コードブック中の各コードベクトルの目標ベク
トルと平行な成分の大きさを第2平行成分として求める
第2平行ベクトル振幅計算手段と、 上記第1平行成分、上記第2平行成分をそれぞれ記憶す
る第1、第2平行成分記憶手段と、 現在の最小量子化誤差を記憶する誤差記憶手段と、 上記第1コードブックの各コードベクトルごとに、その
第1平行成分と、上記第2平行成分と上記現在の最小量
子化誤差と上記目標ベクトルの大きさとから第2コード
ブック中の有効な組合せとなるコードベクトル候補を求
める候補選択手段と、 上記第1コードブックのコードベクトルを、これと対応
する上記候補選択手段で選択された第2コードブックの
各コードベクトル候補との量子化誤差を計算する誤差計
算手段と、 誤差計算手段で計算された量子化誤差と上記現在の量子
化誤差とを比較する比較手段と、 上記現在の最小量子化誤差が得られたコードベクトルの
組合せインデックスを記憶するインデックス記憶手段
と、 上記比較結果が、計算された量子化誤差の方が小さけれ
ば、その計算された量子化誤差に上記現在の最小量子化
誤差を更新し、かつ上記インデックス記憶手段のインデ
ックスを更新する更新手段と、 上記候補選択手段、上記誤差計算手段、上記比較手段、
上記更新手段を、上記第1コードブックの全てのコード
ベクトルについて実行する繰返し手段と、 上記繰返し手段の実行が終了すると、上記インデックス
記憶手段のインデックスを量子化出力として出力する出
力手段とを具備することを特徴とする共役構造量子化装
置。
4. A vector in which the combination of two code vectors respectively taken out from the first and second codebooks that store code vectors having a conjugate structure to each other is a target vector and a combination having a minimum quantization error is used as a code index. In the quantizer, a target vector amplitude calculating means for calculating the magnitude of the target vector, a target vector magnitude storing means for storing the magnitude of the target vector, and a target of each code vector in the first codebook. First parallel vector amplitude calculating means for obtaining the magnitude of the component parallel to the vector as the first parallel component, and the magnitude of the component parallel to the target vector of each code vector in the second codebook as the second parallel component. Second parallel vector amplitude calculating means to be obtained, the first parallel component, and the second parallel component are stored respectively. First and second parallel component storage means, error storage means for storing the current minimum quantization error, the first parallel component and the second parallel component for each code vector of the first codebook. The candidate selecting means for obtaining a code vector candidate that is an effective combination in the second codebook from the current minimum quantization error and the magnitude of the target vector, and the code vector of the first codebook correspond to this. An error calculation means for calculating a quantization error with each code vector candidate of the second codebook selected by the candidate selection means, and a quantization error calculated by the error calculation means with the current quantization error. Comparing means, an index storage means for storing a combination index of the code vector for which the current minimum quantization error is obtained, and the comparison result is calculated. If the quantization error is smaller, updating means for updating the current minimum quantization error to the calculated quantization error and updating the index of the index storage means, the candidate selecting means, the error Calculation means, the comparison means,
The updating means includes an iterative means for executing all the code vectors of the first codebook, and an output means for outputting the index of the index storage means as a quantized output when the execution of the iterative means is completed. A conjugated structure quantizer characterized by the following.
【請求項5】 上記第2平行成分を、その大きさ順に並
べ替える並べ替え手段とを備え、 上記第2平行成分記憶手段は、上記並べ替えられたもの
を記憶する手段であり、 上記候補選択手段は、上記目標ベクトルの大きさから対
象第1平行成分差し引いた値に対し、現在の最小量子
化誤差の平方根を加減算して有効上限値、有効下限値を
演算する手段と、 上記第2平行成分記憶手段中の上記有効上限値より小さ
い第2平行成分中の最大のものの番号mmax (n)と、
上記有効下限値より大きい第2平行成分中の最小のもの
の番号mmin (n)とを求め、番号mmax (n)、番号
min (n)の範囲の各番号と対応する第2コードブッ
クのコードベクトルを上記コードベクトル候補とする候
補範囲決定手段とよりなることを特徴とする請求項4記
載の共役構造ベクトル量子化装置。
5. A rearrangement means for rearranging the second parallel components in order of size thereof, wherein the second parallel component storage means is a means for storing the rearranged ones, and the candidate selection. And a means for calculating an effective upper limit value and an effective lower limit value by adding and subtracting a square root of a current minimum quantization error to and from a value obtained by subtracting the target first parallel component from the size of the target vector, and the second The number m max (n) of the largest one of the second parallel components smaller than the effective upper limit value in the parallel component storage means,
The number m min (n) of the smallest one of the second parallel components larger than the above effective lower limit value is obtained, and the second codebook corresponding to each number in the range of number m max (n) and number mmin (n) 5. The conjugate structure vector quantization device according to claim 4, further comprising: candidate range determining means that uses the code vector of 1. as the code vector candidate.
【請求項6】 互いに共役構造のコードベクトルを格納
した第1、第2コードブックからそれぞれ取り出した二
つのコードベクトルの合成が目標ベクトルに対し、量子
化誤差が最小のものを選択するベクトル量子化装置の処
理を行うプログラムを記録した記録媒体であって、 上記プログラムは、 目標ベクトルの大きさを求める第1過程と、 上記第1、第2コードブック中の各コードベクトルの上
記目標ベクトルと平行な成分の大きさを求める第2過程
と、 第1コードブックのコードベクトルについて、その順次
指定されるコードベクトルごとに、その平行成分の大き
さと、上記目標ベクトルの大きさと、上記第2コードブ
ック中の各コードベクトルの上記平行成分の大きさと、
現在の最小量子化誤差をもとに、上記第2コードブック
中のコードベクトルから、上記指定されたコードベクト
ルとの有効な組み合わせの候補のコードベクトルを求め
る第3過程と、 上記指定されたコードベクトルと上記各候補のコードベ
クトルとの量子化誤差を計算する第4過程と、 その第4過程で求めた量子化誤差と上記現在の最小量子
化誤差とを比較する第5過程と、 第5過程の比較において第4過程で求めた量子化誤差の
方が小さければ、その量子化誤差に上記現在の最小量子
化誤差を更新し、かつ保持コードインデックスを上記第
4過程で求めた量子化誤差が得られた両コードベクトル
のコードインデックスに更新する第6過程と、 上記第3過程でのコードベクトルの指定が全て終ったか
を判定する第7過程と、 その第7過程で指定が終っていなければ上記第6過程の
後、又は上記第5過程の比較において第4過程で求めた
量子化誤差の方が大きければ、上記第3過程の上記指定
コードベクトルを変更して上記第3過程に戻る第8過程
と、 上記第7過程で、全てのコードベクトルに対する指定が
終ったと判定されると、上記保持しているコードインデ
ックスを量子化結果として出力する第9過程と、 を実行することを特徴とするコンピュータ読出し可能な
記録媒体。
6. Vector quantization in which the synthesis of two code vectors respectively taken out from the first and second codebooks that store code vectors having a conjugate structure to each other is selected with respect to a target vector and a quantization error is the smallest. A recording medium for recording a program for performing processing of an apparatus, the program comprising: a first step of obtaining a magnitude of a target vector; and a parallel process with the target vector of each code vector in the first and second codebooks. The second step of obtaining the magnitudes of different components, the magnitude of the parallel component, the magnitude of the target vector, and the second codebook for the code vectors of the first codebook that are sequentially designated. The magnitude of the parallel component of each code vector in
A third step of obtaining a candidate code vector of an effective combination with the specified code vector from the code vector in the second codebook based on the current minimum quantization error, and the specified code A fourth step of calculating a quantization error between the vector and each of the candidate code vectors, a fifth step of comparing the quantization error obtained in the fourth step with the current minimum quantization error, and a fifth step If the quantization error obtained in the fourth step is smaller in the process comparison, the current minimum quantization error is updated to that quantization error, and the holding code index is obtained in the fourth step. Is updated to the code indexes of both code vectors obtained, and a seventh step of determining whether all the code vectors have been specified in the third step, and a seventh step thereof If the designation has not ended, after the sixth step, or if the quantization error obtained in the fourth step in the comparison of the fifth step is larger, the designated code vector of the third step is changed to An eighth step of returning to the third step, and a ninth step of outputting the held code index as a quantization result when it is determined in the seventh step that the designation for all code vectors is completed, A computer-readable recording medium characterized by being executed.
【請求項7】 上記プログラムは上記第2過程で求めた
第2コードブックの上記各平行成分の大きさを昇順に並
べ替える第10過程を実行し、 上記第3過程は、上記目標ベクトルの大きさから、上記
指定されたコードベクトルの上記平行成分を差し引いた
値に対して、上記現在の最小量子化誤差の平方根を加減
算して有効上限値、有効下限値を計算する第11過程
と、 上記昇順に並べた平行成分の大きさから、上記有効上限
値より小さい平行成分中の最大のものの番号m
max (n)と、上記有効下限値より大きい平行成分中の
最小のものの番号mmin (n)を求める第12過程と、 上記番号mmax (n)、番号mmin (n)の範囲の各番
号と対応する第2コードブックのコードベクトルを上記
候補のコードベクトルとする第13過程とを含むことを
特徴とする請求項6記載の記録媒体。
7. The program executes a tenth step of rearranging the magnitudes of the parallel components of the second codebook obtained in the second step in ascending order, and the third step is the magnitude of the target vector. Therefore, the eleventh step of calculating the effective upper limit value and the effective lower limit value by adding and subtracting the square root of the current minimum quantization error to and from the value obtained by subtracting the parallel component of the designated code vector, From the size of the parallel components arranged in ascending order, the number m of the largest parallel components smaller than the above effective upper limit value
and max (n), a twelfth step of obtaining the smallest of the numbers m min in the effective lower limit is greater than the parallel component (n), each ranging from the number m max (n), the number m min (n) 7. The recording medium according to claim 6, further comprising a thirteenth step of setting the code vector of the second codebook corresponding to the number as the candidate code vector.
【請求項8】 上記プログラムは上記第1、第2コード
ブックよりそれぞれコードベクトルの数が多い第1、第
2大コードブックからそれぞれ予備選択して上記第1、
第2コードブックを得る第14過程を実行することを特
徴とする請求項6又は記載の記録媒体。
8. The first and second codebooks are preselected from the first and second large codebooks each having a larger number of code vectors than the first and second codebooks.
The recording medium according to claim 6 or 7, wherein the fourteenth step of obtaining the second codebook is executed.
JP35715997A 1997-12-25 1997-12-25 Conjugate structure vector quantization method, apparatus therefor, and program recording medium Expired - Lifetime JP3412118B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP35715997A JP3412118B2 (en) 1997-12-25 1997-12-25 Conjugate structure vector quantization method, apparatus therefor, and program recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP35715997A JP3412118B2 (en) 1997-12-25 1997-12-25 Conjugate structure vector quantization method, apparatus therefor, and program recording medium

Publications (2)

Publication Number Publication Date
JPH11191739A JPH11191739A (en) 1999-07-13
JP3412118B2 true JP3412118B2 (en) 2003-06-03

Family

ID=18452692

Family Applications (1)

Application Number Title Priority Date Filing Date
JP35715997A Expired - Lifetime JP3412118B2 (en) 1997-12-25 1997-12-25 Conjugate structure vector quantization method, apparatus therefor, and program recording medium

Country Status (1)

Country Link
JP (1) JP3412118B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7873514B2 (en) * 2006-08-11 2011-01-18 Ntt Docomo, Inc. Method for quantizing speech and audio through an efficient perceptually relevant search of multiple quantization patterns
JP4633774B2 (en) * 2007-10-05 2011-02-16 日本電信電話株式会社 Multiple vector quantization method, apparatus, program, and recording medium thereof
JP4616891B2 (en) * 2008-01-31 2011-01-19 日本電信電話株式会社 Multiple vector quantization method, apparatus, program, and recording medium thereof
WO2009096538A1 (en) * 2008-01-31 2009-08-06 Nippon Telegraph And Telephone Corporation Polarized multiple vector quantization method, device, program and recording medium therefor

Also Published As

Publication number Publication date
JPH11191739A (en) 1999-07-13

Similar Documents

Publication Publication Date Title
US6662154B2 (en) Method and system for information signal coding using combinatorial and huffman codes
AU666599B2 (en) Voice coder system
US20040108944A1 (en) Fast search method for nearest neighbor vector quantization
KR100190183B1 (en) Vector quantization apparatus and method
EP0361443A2 (en) Method and system for voice coding based on vector quantization
JPH05210400A (en) Dichotomizing search vector quantization data compression processor and method
JP2800618B2 (en) Voice parameter coding method
US8335260B2 (en) Method and device for vector quantization
JP3412118B2 (en) Conjugate structure vector quantization method, apparatus therefor, and program recording medium
JPH0744200A (en) Speech encoding system
US6714687B2 (en) Image encoding/decoding method, apparatus thereof and recording medium in which program therefor is recorded
JP3367931B2 (en) Conjugate structure vector quantization method
JP2626492B2 (en) Vector quantizer
JPH06118998A (en) Vector quantizing device
JPH06175695A (en) Coding and decoding method for voice parameters
JP3285072B2 (en) Weighted vector quantization method
JP3471889B2 (en) Audio encoding method and apparatus
JP4616891B2 (en) Multiple vector quantization method, apparatus, program, and recording medium thereof
JP2936757B2 (en) Quantizer
JP2684807B2 (en) Voice recognition device
JP3046871B2 (en) Vector quantization method and vector quantization apparatus
JP3261691B2 (en) Codebook preliminary selection device
JPH0666948B2 (en) Interframe vector quantization coding / decoding device
JPH07273660A (en) Gain shape vector quantization device
JP3267308B2 (en) Statistical excitation code vector optimization method, multi-stage code excitation linear prediction encoder, and multi-stage code excitation linear prediction decoder

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080328

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090328

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090328

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100328

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110328

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110328

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120328

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130328

Year of fee payment: 10

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term