JP2002232296A - Method and device for generating code book for vector quantization - Google Patents

Method and device for generating code book for vector quantization

Info

Publication number
JP2002232296A
JP2002232296A JP2001030265A JP2001030265A JP2002232296A JP 2002232296 A JP2002232296 A JP 2002232296A JP 2001030265 A JP2001030265 A JP 2001030265A JP 2001030265 A JP2001030265 A JP 2001030265A JP 2002232296 A JP2002232296 A JP 2002232296A
Authority
JP
Japan
Prior art keywords
vector
calculating
representative
representative vector
sorting
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.)
Granted
Application number
JP2001030265A
Other languages
Japanese (ja)
Other versions
JP4590747B2 (en
Inventor
Yukihiko Mogi
幸彦 茂木
Kazuhiko Nishibori
一彦 西堀
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2001030265A priority Critical patent/JP4590747B2/en
Publication of JP2002232296A publication Critical patent/JP2002232296A/en
Application granted granted Critical
Publication of JP4590747B2 publication Critical patent/JP4590747B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

PROBLEM TO BE SOLVED: To select the same representative vector as full search at high speed only by searching for the representative vectors of one part. SOLUTION: By repeatedly executing a sorting step (F102) for sorting representative vectors on the basis of the values of representative vectors, first arithmetic steps (F105 and F108) for calculating the distortions of input vector and representative vector and calculating the address of the representative vector to be next searched, decision steps (F106 and F109) for comparing two distortions provided by the first arithmetic steps and deciding the candidates of the representative vector to be encoded and second arithmetic step (F111) for calculating centroid/average distortion of representative vectors on the basis of the result decided by the decision step, the code book of vector quantization is generated.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は,ベクトル量子化技
術に関わり,特にパターン認識・計算幾何学・画像信号
・音声信号におけるベクトル量子化のコードブック生成
装置及び方法に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a vector quantization technique, and more particularly to an apparatus and a method for generating a codebook for vector quantization in pattern recognition, computational geometry, image signals, and audio signals.

【0002】[0002]

【従来の技術】ベクトル量子化は、入力空間を有限個の
代表ベクトルで符号化する手法である。ベクトル量子化
の応用例として、パターン認識の特徴抽出,計算幾何学
のポスト配置問題,情報の圧縮,画像や音声などの量子
化などが挙げられる。
2. Description of the Related Art Vector quantization is a technique for encoding an input space with a finite number of representative vectors. Examples of application of vector quantization include feature extraction of pattern recognition, post-placement problem of computational geometry, information compression, quantization of images and sounds, and the like.

【0003】図34にベクトル量子化の概念図を示す。FIG. 34 shows a conceptual diagram of vector quantization.

【0004】ベクトル量子化には (1)入力ベクトルの符号化 (2)コードブックの生成 という2つの側面がある。[0004] Vector quantization has two aspects: (1) encoding an input vector and (2) generating a codebook.

【0005】ベクトル量子化の(1)入力ベクトルの符
号化の手続では、入力ベクトルx(1050)に対して
N個の代表ベクトル(コードベクトルと呼ばれることも
ある)からなるコードブックW={w∈R:i=
0,・・・,N−1}(1040)の中から最も近い代
表ベクトルwminを選びだし(1060)、その代表
ベクトルのインデックスmin、又は、その代表ベクト
ルの値を出力する(1070)。
In the procedure of (1) encoding an input vector in vector quantization, a codebook W = Ww composed of N representative vectors (sometimes called a code vector) for an input vector x (1050). i ∈R K : i =
The closest representative vector w min is selected from 0,..., N−1} (1040) (1060), and the index min of the representative vector or the value of the representative vector is output (1070).

【0006】その際、最も近い代表ベクトルを選ぶとき
の測度として、非負のひずみ測度d(x,w)を利用
する。すなわち、代表ベクトルの番号を出力したいとき
の式は、次の(1)式にて表すことができる。
[0006] At that time, as a measure of when choosing the closest representative vectors, non-negative strain measure d (x, w i) to use. That is, the expression for outputting the number of the representative vector can be expressed by the following expression (1).

【0007】[0007]

【数1】 (Equation 1)

【0008】また、代表ベクトルの値を出力したいとき
の式は、次の(2)式にて表すことができる。
An expression for outputting the value of the representative vector can be expressed by the following expression (2).

【0009】[0009]

【数2】 (Equation 2)

【0010】また、ベクトル量子化の(2)コードブッ
クの生成では、初期コードブック(1010)を設定
し、コードブック生成用の入力ベクトル集合X=(x
(t):t=0,・・・,T−1)(1030)を与え
て、入力ベクトル集合に合うように代表ベクトルの値を
修正することを繰り返して最適化し(1020)、最終
的に最適なコードブック(1040)を得る。コードブ
ック生成用の入力ベクトルは、(1)入力ベクトルの符
号化で入力される入力ベクトルと異なっていてもかまわ
ない。
Further, in (2) codebook generation of vector quantization, an initial codebook (1010) is set, and an input vector set X = (x
(T) : t = 0,..., T−1) (1030), and iteratively optimizes (1020) by repeatedly modifying the value of the representative vector so as to match the input vector set (1020). Obtain the optimal codebook (1040). The input vector for codebook generation may be different from the input vector input in (1) encoding of the input vector.

【0011】コードブックの評価には、与えられた入力
ベクトル集合を対応する代表ベクトルで符号化したとき
に生じるひずみの期待値(平均ひずみ)を用いて行われ
る。この平均ひずみは非凸な関数であり、多くの局所的
最小値を持つ。最適なコードブックとは、平均ひずみを
最小にするコードブックである。すなわち、最適なコー
ドブックを持つベクトル量子化器は、最もひずみの少な
い符号化を行うことができる。平均ひずみは、次の
(3)式にて定義される。
The evaluation of the codebook is performed using an expected value (average distortion) of distortion generated when a given set of input vectors is encoded with a corresponding representative vector. This average distortion is a non-convex function and has many local minima. The optimal codebook is the codebook that minimizes the average distortion. That is, a vector quantizer having an optimal codebook can perform encoding with the least distortion. The average strain is defined by the following equation (3).

【0012】[0012]

【数3】 (Equation 3)

【0013】ただし、δtiはクロネッカーのデルタで
あり、入力ベクトルxが代表ベクトルwに符号化さ
れたとき1であり、それ以外は0である。
Where δ ti is the Kronecker delta, which is 1 when the input vector x t is encoded into the representative vector w i , and 0 otherwise.

【0014】コードブックを生成するアルゴリズムとし
て、適応修正型の競合学習アルゴリズムや一括修正型の
LBGアルゴリズム[Linde,Y., Buzo, A., & Gray, R.
M..“An algorithm for vector quantizer design."IEE
E Transactions on Communications,28,pp.84-95, 198
0.]がよく知られている。
As an algorithm for generating a codebook, an adaptive correction type competitive learning algorithm and a batch correction type LBG algorithm [Linde, Y., Buzo, A., & Gray, R.
M .. “An algorithm for vector quantizer design.” IEE
E Transactions on Communications, 28, pp. 84-95, 198
0.] is well known.

【0015】文献[Ueda, N., & Nakano, R..“A new co
mpetitive learning approach based on an equidistor
tion principle for designing optimal vector quanti
zers." Neural Networks,7, pp.1211-1227, 1994.]によ
れば,競合学習アルゴリズムはLBGアルゴリズムの適
応型になっている。ここでは、LBGアルゴリズムによ
るコードブック生成法だけを取り上げるが、適応型の競
合学習アルゴリズムにも適用可能である。
[Ueda, N., & Nakano, R .. "A new co
mpetitive learning approach based on an equidistor
tion principle for designing optimal vector quanti
According to zers. "Neural Networks, 7, pp.1211-1227, 1994.], the competitive learning algorithm is an adaptation of the LBG algorithm. Here, only the codebook generation method by the LBG algorithm is taken up. It is also applicable to adaptive competitive learning algorithms.

【0016】LBGアルゴリズムは、収束条件を満足す
るまで、次のステップ(a),(b)を反復するアルゴ
リズムである。
The LBG algorithm is an algorithm that repeats the following steps (a) and (b) until a convergence condition is satisfied.

【0017】(a)T個のコードブック生成用の入力ベ
クトル集合に対して、現在のコードブックの中から各入
力ベクトルx(t)に最も近い代表ベクトルwmin
探索し、符号化される代表ベクトルの番号minを保存
しておく。
[0017] (a) for the input vector set of the T code book for generating, searching the closest representative vectors w min in each input vector x (t) from the current codebook is encoded The representative vector number min is stored.

【0018】(b)入力ベクトル集合と各入力ベクトル
が符号化される代表ベクトルの番号を用いて、代表ベク
トルの重心を計算しコードブックを更新する。
(B) Using the set of input vectors and the number of the representative vector into which each input vector is encoded, calculate the center of gravity of the representative vector and update the codebook.

【0019】コードブック生成方法であるLBGアルゴ
リズムのステップ(a)は、各入力ベクトルに対して最
もひずみが小さい代表ベクトルを探索し、符号化するス
テップである。この符号化のステップは、全ての代表ベ
クトルとのひずみを計算し、最も近い代表ベクトルを選
択する全探索が基本であるため、非常に時間がかかる。
この操作を全ての入力ベクトルに対して行う必要がある
ので時間は膨大にかかる。
Step (a) of the LBG algorithm, which is a codebook generation method, is a step of searching for a representative vector having the smallest distortion for each input vector and encoding the representative vector. This encoding step is very time-consuming because it is based on a full search that calculates the distortion with all the representative vectors and selects the closest representative vector.
Since this operation needs to be performed for all input vectors, it takes an enormous amount of time.

【0020】この問題を解決する手法の一つとして、特
開平6−45946号公報に開示されたベクトル量子化
方法及びベクトル量子化装置がある。このベクトル量子
化技術は、文献[中野恵一,笠原博徳:“ソートされた
コードブックを用いた高速ベクトル量子化(Fast Vecto
r Quantization Using Sorted Codebook:VQ-SC)”電
子情報通信学会論文誌D-II Vol.J77-D-II No.10 pp.198
4-1992,1994]に関連するものであって、VQ−SC
は、大雑把に述べると以下のようなアルゴリズムであ
る。
As one of the techniques for solving this problem, there is a vector quantization method and a vector quantization apparatus disclosed in Japanese Patent Application Laid-Open No. 6-45946. This vector quantization technique is described in the literature [Keiichi Nakano, Hironori Kasahara: "Fast Vector Quantization Using Sorted Codebooks (Fast Vecto
r Quantization Using Sorted Codebook: VQ-SC) ”Transactions of the Institute of Electronics, Information and Communication Engineers D-II Vol.J77-D-II No.10 pp.198
4-1992, 1994] and the VQ-SC
Is roughly the following algorithm:

【0021】(1)代表ベクトルを各次元ごとにソート
し,その順番を記憶しておく。
(1) The representative vectors are sorted for each dimension, and the order is stored.

【0022】(2)探索が済んだ代表ベクトルかどうか
をしめすフラグをクリアする。
(2) A flag indicating whether or not the searched representative vector has been cleared is cleared.

【0023】(3)ひずみの下限値となるひずみを計算
する。
(3) Calculate the strain that is the lower limit of the strain.

【0024】(4)分枝限定法の原理に基づいて、ひず
みの上限値を利用することで解の精度を向上する可能性
のない代表ベクトルの探索を省略する。探索が済んだ代
表ベクトルはフラグをたてる。ひずみの下限値に使われ
ている代表ベクトルの探索が省略された場合には、ひず
みの下限値を更新する。ひずみの上限値とひずみの下限
値が一致するまで探索を続ける。次の探索する代表ベク
トルの決め方は、ヒューリスティックである。
(4) On the basis of the principle of the branch and bound method, the search for a representative vector that does not improve the accuracy of the solution by using the upper limit of the distortion is omitted. The searched representative vector sets a flag. When the search for the representative vector used for the lower limit of the distortion is omitted, the lower limit of the distortion is updated. The search is continued until the upper limit of the strain and the lower limit of the strain match. The method of determining the next representative vector to be searched is heuristic.

【0025】ひずみの上限値とひずみの下限値を利用す
ることにより、コードブックの一部を調べれば全探索し
た場合と同じ代表ベクトルが高速に探索できる。
By using the upper limit value of strain and the lower limit value of strain, if a part of the codebook is examined, the same representative vector as in the case of full search can be searched at high speed.

【0026】[0026]

【発明が解決しようとする課題】しかし、上記の方法に
は次のような問題点がある。
However, the above method has the following problems.

【0027】(1)各次元ごとに代表ベクトルをソート
する必要があり、次元が高くなるとソートにかかる時間
が大きくなる。
(1) It is necessary to sort the representative vectors for each dimension. The higher the dimension, the longer the time required for sorting.

【0028】(2)各次元ごとにソートされた代表ベク
トルの順番を記憶しておく必要があり、記憶しておくメ
モリ容量が膨大になる。
(2) It is necessary to store the order of the representative vectors sorted for each dimension, and the memory capacity to store becomes enormous.

【0029】(3)各入力ベクトルごとにどの代表ベク
トルの探索が済んだかどうかを示すフラグをクリアする
必要があり、入力ベクトルが多いと、クリアする時間が
膨大になる。また、代表ベクトルの数分、フラグのため
のメモリ容量が必要である。
(3) It is necessary to clear a flag indicating which representative vector has been searched for each input vector, and if there are many input vectors, the time for clearing will be enormous. Also, a memory capacity for flags is required for the number of representative vectors.

【0030】(4)次の探索する代表ベクトルをヒュー
リスティックに決めてよいため、効率の良い決定方法を
考える必要がある。
(4) Since the next representative vector to be searched may be determined heuristically, it is necessary to consider an efficient determination method.

【0031】そこで、本発明の目的は、上記の問題点を
解決することができるようにしたベクトル量子化のコー
ドブック生成方法及びコードブック生成装置を提供する
ことにある。
Accordingly, it is an object of the present invention to provide a codebook generating method and a codebook generating apparatus for vector quantization, which can solve the above-mentioned problems.

【0032】[0032]

【課題を解決するための手段】ここで、K次元の入力ベ
クトルxに対して、最小のひずみをもつ代表ベクトルw
minを探索するときに、ある次元kに対して、次の
(4)式となるような代表ベクトルwを探索する必要
はない。
Here, for a K-dimensional input vector x, a representative vector w having the minimum distortion is set.
When searching for a min, for a dimension k, it is not necessary to search for the representative vector w i such that the following equation (4).

【0033】[0033]

【数4】 (Equation 4)

【0034】しかし、(4)式は、符号化されるw
minが求まっているときの条件であり、(4)式を計
算することができない。また、k次元に対する代表ベク
トルの値は、規則正しく並んでいるわけではなく、順番
がランダムな状態になっているので、探索終了条件を決
めることができない。
However, equation (4) shows that the encoded w
This is a condition when min is obtained, and the equation (4) cannot be calculated. In addition, the values of the representative vectors for the k-dimension are not arranged regularly, and the order is in a random state, so that it is not possible to determine the search termination condition.

【0035】そこで、本発明では、次のような方法を採
用する。
Therefore, the present invention employs the following method.

【0036】(1)いままでの探索で見つかった最小の
代表ベクトルをwcur minとする。すなわち、探索
が終了すれば最終的に得られた代表ベクトルwcur
minが最小のひずみdmin =dcur minをも
つ代表ベクトルwmin =w cur minとなる。
(1) The smallest value found in the search so far
Let the representative vector be wcur minAnd That is, search
Is completed, the representative vector w finally obtainedcur
minIs the minimum strain dmin = Dcur minAlso
One representative vector wmin = W cur minBecomes

【0037】(2)探索を始める前に、k次元の値に応
じて代表ベクトルを小さい順(又は大きい順)にソート
しておく。(4)式を満足する代表ベクトルが存在した
ら、ソートしてあるのでそれ以上先の代表ベクトルは最
小のひずみを持つ代表ベクトルになる可能性は全くな
い。すなわち、代表ベクトルをソートをしておくこと
で、探索の効率を大幅に上げることができる。
(2) Before starting the search, the representative vectors are sorted in ascending order (or descending order) according to the k-dimensional value. If there is a representative vector that satisfies the expression (4), it is sorted, so that there is no possibility that the further representative vector will become the representative vector having the minimum distortion. That is, by sorting the representative vectors, the search efficiency can be greatly increased.

【0038】(4)式のひずみの計算を考察すると、一
般に各次元の代表ベクトルの値のとりうる範囲(レン
ジ)は異なるはずである。したがって、レンジが最も広
いものを選ぶと探索回数は減るはずである。画像の階調
変換では、R,G,Bはどの次元でも0〜255の値を
とるので、どの次元を選択しても同じような回数になる
と思われる。
Considering the calculation of the distortion in equation (4), the range in which the value of the representative vector in each dimension can be generally different. Therefore, choosing the one with the widest range should reduce the number of searches. In the gradation conversion of an image, R, G, and B take values of 0 to 255 in any dimension. Therefore, it is expected that the same number of times will be obtained even if any dimension is selected.

【0039】ソートしておくことで探索の打切り方法が
決まるが、最低限の回数で探索を打ち切ることが望まし
い。そのためには、一番最初に設定する最小の代表ベク
トルwcur minの決め方が重要である。この初期の
代表ベクトルの決め方次第で、探索効率が大幅に変わる
ことが予想される。
The method of terminating the search is determined by sorting, but it is desirable to terminate the search with a minimum number of times. For that purpose, it is important to determine the minimum representative vector w cur min set first. It is expected that the search efficiency will greatly change depending on how to determine the initial representative vector.

【0040】2つの場合に分けて、探索する初期の代表
ベクトルの決め方は、以下のように設定する方法が効率
的な選択であると考えられる。
For the method of determining the initial representative vector to be searched for in two cases, it is considered that a method of setting as follows is an efficient choice.

【0041】LPGアルゴリズムなどの設計アルゴリズ
ムを用いてベクトル量子化器を設計するときは、同じ入
力データ集合を用いるので、収束間際のサイクルほど前
サイクルと同じ代表ベクトルに符号化される可能性が高
い。そのため、前サイクルで符号化された代表ベクトル
を初期値とする。
When designing a vector quantizer using a design algorithm such as the LPG algorithm, since the same set of input data is used, the cycle immediately before convergence is more likely to be encoded into the same representative vector as the previous cycle. . Therefore, the representative vector encoded in the previous cycle is set as an initial value.

【0042】あらかじめ決められている代表ベクトルに
入力ベクトルを符号化するとき、一般的には、隣の入力
データが符号化された代表ベクトルを初期値とする。
When an input vector is encoded into a predetermined representative vector, a representative vector obtained by encoding adjacent input data is generally used as an initial value.

【0043】すなわち、本発明に係るベクトル量子化の
コードブック生成方法は、代表ベクトルの値に基づいて
代表ベクトルをソートするソーティングステップと、入
力ベクトルと代表ベクトルのひずみを計算し、次に探索
する代表ベクトルのアドレスを計算する第1の演算ステ
ップと、上記第1の演算ステップにより得られる2つの
ひずみを比較して符号化される代表ベクトルの候補を決
める判定ステップと、上記判定ステップによる判定結果
に基づいて代表ベクトルの重心の計算・平均ひずみの計
算を行う第2の演算ステップとを有し、上記各ステップ
を繰り返し行うことを特徴とする。
That is, in the method of generating a codebook for vector quantization according to the present invention, a sorting step of sorting the representative vectors based on the values of the representative vectors, a distortion of the input vector and the representative vector are calculated, and then a search is performed. A first operation step of calculating an address of a representative vector, a determination step of comparing two distortions obtained in the first operation step to determine a candidate of a representative vector to be encoded, and a determination result by the determination step And a second calculation step of calculating the center of gravity of the representative vector and calculating the average distortion based on the above.

【0044】また、本発明に係るベクトル量子化のコー
ドブック生成方法は、代表ベクトルの値に基づいて代表
ベクトルをソートするソーティングステップと、入力ベ
クトルと複数の代表ベクトルとのひずみを並列に計算
し,次に探索する代表ベクトルのアドレスを計算する第
1の演算ステップと、上記第1の演算ステップによる得
られる複数のひずみを比較して符号化される代表ベクト
ルの候補を決める判定ステップと、上記判定ステップに
よる判定結果に基づいて代表ベクトルの重心の計算・平
均ひずみの計算を行う第2の演算ステップとを有し、上
記各ステップを繰り返し行うことを特徴とする。
Further, in the method of generating a codebook for vector quantization according to the present invention, a sorting step of sorting the representative vectors based on the values of the representative vectors, and calculating a distortion between the input vector and the plurality of representative vectors in parallel. A first calculating step of calculating an address of a next representative vector to be searched, a determining step of comparing a plurality of distortions obtained by the first calculating step to determine a candidate of a representative vector to be encoded, A second calculation step of calculating the center of gravity of the representative vector and calculating the average distortion based on the determination result of the determination step, wherein the above steps are repeated.

【0045】また、本発明に係るベクトル量子化のコー
ドブック生成方法は、代表ベクトルの値に基づいて代表
ベクトルをソートするソーティングステップと、入力ベ
クトルと代表ベクトルのひずみを計算し、次に探索する
代表ベクトルのアドレスを計算する第1の演算ステップ
と、上記第1の演算ステップにより得られる2つのひず
みを比較して符号化される代表ベクトルの候補を決める
判定ステップと、上記判定ステップによる判定結果に基
づいて重心計算・平均ひずみ計算・部分ひずみ計算を行
う第2の演算ステップと、上記第2の演算ステップによ
り得られる部分ひずみを基準としてソートする部分ひず
みソーティングステップと、上記部分ひずみソーティン
グステップによりソートされた2つの部分ひずみの格差
を比較する比較ステップと、上記比較ステップにおける
比較結果に基づいて、部分ひずみの小さい代表ベクトル
を部分ひずみの大きい代表ベクトルの近傍に移動させる
代表ベクトル移動ステップとを有し、上記各ステップを
繰り返し行うことを特徴とする。
In the method of generating a codebook for vector quantization according to the present invention, a sorting step for sorting representative vectors based on the values of the representative vectors, a distortion of the input vectors and the representative vectors are calculated, and then a search is performed. A first operation step of calculating an address of a representative vector, a determination step of comparing two distortions obtained in the first operation step to determine a candidate of a representative vector to be encoded, and a determination result by the determination step A second calculation step of performing a center of gravity calculation, an average strain calculation, and a partial strain calculation based on the above, a partial strain sorting step of sorting on the basis of the partial strain obtained in the second calculation step, and a partial strain sorting step. A comparison method for comparing the difference between two sorted partial strains And a representative vector moving step of moving a representative vector having a small partial distortion to a vicinity of a representative vector having a large partial distortion based on the comparison result in the comparing step, and repeatedly performing each of the above steps. And

【0046】また、本発明に係るベクトル量子化のコー
ドブック生成方法は、代表ベクトルの値に基づいて代表
ベクトルをソートするソーティングステップと、入力ベ
クトルと複数の代表ベクトルとのひずみを並列に計算
し、次に探索する代表ベクトルのアドレスを計算する第
1の演算ステップと、上記第1の演算ステップにより得
られる複数のひずみを比較して符号化される代表ベクト
ルの候補を決める判定ステップと、上記判定ステップに
よる判定結果に基づいて重心計算・平均ひずみ計算・部
分ひずみ計算を行う第2の演算ステップと、上記第2の
演算ステップにより得られる部分ひずみを基準としてソ
ートする部分ひずみソーティングステップと、上記部分
ひずみソーティングステップによりソートされた2つの
部分ひずみの格差を比較する比較ステップと、上記比較
ステップにおける比較結果に基づいて、部分ひずみの小
さい代表ベクトルを部分ひずみの大きい代表ベクトルの
近傍に移動させる代表ベクトル移動ステップとを有し、
上記各ステップを繰り返し行うことを特徴とする。
Further, in the method for generating a codebook for vector quantization according to the present invention, a sorting step for sorting representative vectors based on the values of representative vectors, and a distortion between an input vector and a plurality of representative vectors are calculated in parallel. A first operation step of calculating an address of a next representative vector to be searched, a determining step of comparing a plurality of distortions obtained in the first operation step to determine a candidate of a representative vector to be encoded, A second operation step of performing center-of-gravity calculation / average strain calculation / partial strain calculation based on a result of the determination step; a partial strain sorting step of sorting based on the partial strain obtained by the second operation step; The difference between the two partial strains sorted by the partial strain sorting step A comparing step of compare, on the basis of the comparison result of the comparing step, and a representative vector moving step of moving a small representative vectors of partial distortion in the vicinity of large representative vector strain portion,
Each of the above steps is repeatedly performed.

【0047】また、本発明に係るベクトル量子化のコー
ドブック生成方法は、代表ベクトルの値に基づいて代表
ベクトルをソートするソーティングステップと、入力ベ
クトルと代表ベクトルのひずみを計算し、次に探索する
代表ベクトルのアドレスを計算する第1の演算ステップ
と、上記第1の演算ステップにより得られる2つのひず
みを比較して符号化される代表ベクトルの候補を決める
判定ステップと、上記判定ステップによる判定結果に基
づいて重心計算・平均ひずみ計算・部分ひずみ計算を行
う第2の演算ステップと、上記第2の演算ステップによ
り得られる部分ひずみを基準としてソートする部分ひず
みソーティングステップと、上記部分ひずみソーティン
グステップによりソートされた複数個の部分ひずみの格
差を比較する比較ステップと、上記比較ステップにおけ
る比較結果に基づいて、複数の部分ひずみの小さい代表
ベクトルを部分ひずみの大きい代表ベクトルの近傍に移
動させる代表ベクトル移動ステップとを有し、上記各ス
テップを繰り返し行うことを特徴とする。
Further, in the method of generating a codebook for vector quantization according to the present invention, a sorting step of sorting representative vectors based on the values of representative vectors, a distortion of input vectors and representative vectors are calculated, and then a search is performed. A first operation step of calculating an address of a representative vector, a determination step of comparing two distortions obtained in the first operation step to determine a candidate of a representative vector to be encoded, and a determination result by the determination step A second calculation step of performing a center of gravity calculation, an average strain calculation, and a partial strain calculation based on the above, a partial strain sorting step of sorting on the basis of the partial strain obtained in the second calculation step, and a partial strain sorting step. Comparison comparing the disparity of sorted partial strains And a representative vector moving step of moving a plurality of representative vectors having small partial distortions to a vicinity of the representative vector having large partial distortion based on the comparison result in the comparing step, and repeatedly performing each of the above steps. Features.

【0048】また、本発明に係るベクトル量子化のコー
ドブック生成方法は、代表ベクトルの値に基づいて代表
ベクトルをソートするソーティングステップと、入力ベ
クトルと複数の代表ベクトルとのひずみを並列に計算
し,次に探索する代表ベクトルのアドレスを計算する第
1の演算ステップと、上記第1の演算ステップにより得
られる複数のひずみを比較して符号化される代表ベクト
ルの候補を決める判定ステップと、上記判定ステップに
よる判定結果に基づいて重心計算・平均ひずみ計算・部
分ひずみ計算を行う第2の演算ステップと、上記第2の
演算ステップにより得られる部分ひずみを基準としてソ
ートする部分ひずみソーティングステップと、上記部分
ひずみソーティングステップによりソートされた複数個
の部分ひずみの格差を比較する比較ステップと、上記比
較ステップにおける比較結果に基づいて、複数の部分ひ
ずみの小さい代表ベクトルを部分ひずみの大きい代表ベ
クトルの近傍に移動させる代表ベクトル移動ステップと
を有し、上記各ステップを繰り返し行うことを特徴とす
る。
Further, in the codebook generating method for vector quantization according to the present invention, a sorting step of sorting the representative vectors based on the values of the representative vectors, and calculating a distortion between the input vector and the plurality of representative vectors in parallel. A first operation step of calculating an address of a next representative vector to be searched, a determining step of comparing a plurality of distortions obtained in the first operation step to determine a candidate of a representative vector to be encoded, A second operation step of performing center-of-gravity calculation / average strain calculation / partial strain calculation based on a result of the determination step; a partial strain sorting step of sorting based on the partial strain obtained by the second operation step; Disparity of multiple partial strains sorted by partial strain sorting step A comparing step of comparing, and a representative vector moving step of moving a plurality of representative vectors having a small partial distortion to a vicinity of a representative vector having a large partial distortion based on the comparison result in the comparing step. It is characterized by performing.

【0049】また、本発明に係るベクトル量子化のコー
ドブック生成方法は、代表ベクトルの値に基づいて代表
ベクトルをソートするソーティングステップと、入力ベ
クトルとコードブックの代表ベクトルのひずみを計算
し、次に探索する代表ベクトルのアドレスを計算する第
1の演算ステップと、上記第1の演算ステップにより得
られた2つのひずみを比較して符号化される代表ベクト
ルの候補を決める判定ステップと、上記判定ステップに
よる判定結果に基づいて、適応的な代表ベクトルの計算
・平均ひずみの計算を行う第2の演算ステップとを有
し、上記各ステップを繰り返し行うことを特徴とする。
Further, in the codebook generating method for vector quantization according to the present invention, a sorting step of sorting the representative vectors based on the values of the representative vectors, a distortion of the input vectors and the representative vectors of the codebook are calculated. A first calculating step of calculating an address of a representative vector to be searched for; a determining step of comparing two distortions obtained in the first calculating step to determine a candidate of a representative vector to be encoded; And a second operation step of adaptively calculating a representative vector and calculating an average distortion based on the determination result of the step, wherein the above steps are repeatedly performed.

【0050】また、本発明に係るベクトル量子化のコー
ドブック生成方法は、代表ベクトルの値に基づいて代表
ベクトルをソートするソーティングステップと、入力ベ
クトルとコードブックの複数の代表ベクトルとのひずみ
を並列に計算し、次に探索する代表ベクトルのアドレス
を計算する第1の演算ステップと、上記第1の演算ステ
ップにより得られた複数のひずみを比較して符号化され
る代表ベクトルの候補を決める判定ステップと、上記判
定ステップによる判定結果に基づいて、適応的な代表ベ
クトルの計算・平均ひずみの計算を行う第2の演算ステ
ップとを有し、上記各ステップを繰り返し行うことを特
徴とする。
Further, in the codebook generating method for vector quantization according to the present invention, the sorting step of sorting the representative vectors based on the values of the representative vectors and the distortion of the input vector and the plurality of representative vectors of the codebook are performed in parallel. A first operation step of calculating the address of a representative vector to be searched next, and a plurality of distortions obtained in the first operation step are compared to determine a candidate of a representative vector to be encoded. And a second operation step of adaptively calculating a representative vector and calculating an average distortion based on a result of the determination in the determination step, wherein the steps are repeatedly performed.

【0051】また、本発明に係るベクトル量子化のコー
ドブック生成方法は、代表ベクトルの値に基づいて代表
ベクトルをソートするソーティングステップと、入力ベ
クトルとコードブックの代表ベクトルのひずみを計算
し、次に探索する代表ベクトルのアドレスを計算する第
1の演算ステップと、上記第1の演算ステップにより得
られた2つのひずみを比較して符号化される代表ベクト
ルの候補を決める判定ステップと、上記判定ステップに
よる判定結果に基づいて、適応的な代表ベクトルの計算
・平均ひずみの計算・部分ひずみ計算を行う第2の演算
ステップと、上記第2の演算ステップにより得られた部
分ひずみを基準としてソートする部分ひずみソーティン
グステップと、上記部分ひずみソーティングステップに
よりソートされた2つの部分ひずみの格差を比較する比
較ステップと、上記比較ステップにおける比較結果に基
づいて,部分ひずみの小さい代表ベクトルを部分ひずみ
の大きい代表ベクトルの近傍に移動させる代表ベクトル
移動ステップとを有し、上記各ステップを繰り返し行う
ことを特徴とする。
Further, in the codebook generating method for vector quantization according to the present invention, a sorting step of sorting the representative vectors based on the values of the representative vectors, a distortion between the input vectors and the representative vectors of the codebook are calculated. A first calculating step of calculating an address of a representative vector to be searched for; a determining step of comparing two distortions obtained in the first calculating step to determine a candidate of a representative vector to be encoded; A second operation step of performing adaptive representative vector calculation / average distortion calculation / partial distortion calculation based on the determination result of the step; and sorting based on the partial distortion obtained in the second operation step. A partial strain sorting step, and 2 sorted by the partial strain sorting step. And a representative vector moving step of moving a representative vector having a small partial strain to a vicinity of a representative vector having a large partial strain based on the comparison result in the comparing step. Each step is repeatedly performed.

【0052】また、本発明に係るベクトル量子化のコー
ドブック生成方法は、代表ベクトルの値に基づいて代表
ベクトルをソートするソーティングステップと、入力ベ
クトルとコードブックの複数の代表ベクトルとのひずみ
を並列に計算し、次に探索する代表ベクトルのアドレス
を計算する第1の演算ステップと、上記第1の演算ステ
ップにより得られた複数のひずみを比較して符号化され
る代表ベクトルの候補を決める判定ステップと、上記判
定ステップによる判定結果に基づいて、適応的な代表ベ
クトルの計算・平均ひずみの計算・部分ひずみ計算を行
う第2の演算ステップと、上記第2の演算ステップによ
り得られた部分ひずみを基準としてソートする部分ひず
みソーティングステップと、上記部分ひずみソーティン
グステップによりソートされた2つの部分ひずみの格差
を比較する比較ステップと、上記比較ステップにおける
比較結果に基づいて、部分ひずみの小さい代表ベクトル
を部分ひずみの大きい代表ベクトルの近傍に移動させる
代表ベクトル移動ステップとを有し、上記各ステップを
繰り返し行うことを特徴とする。
Further, in the method of generating a codebook for vector quantization according to the present invention, a sorting step of sorting representative vectors based on the values of representative vectors, and a distortion between an input vector and a plurality of representative vectors of the codebook are performed in parallel. A first operation step of calculating the address of a representative vector to be searched next, and a plurality of distortions obtained in the first operation step are compared to determine a candidate of a representative vector to be encoded. A second operation step of performing adaptive representative vector calculation / average distortion calculation / partial distortion calculation based on a result of the determination in the above determination step; and a partial distortion obtained in the second operation step. By the partial strain sorting step of sorting on the basis of A comparing step of comparing the difference between the two divided partial strains, and a representative vector moving step of moving a representative vector having a small partial strain to a vicinity of a representative vector having a large partial strain based on the comparison result in the comparing step. And the above steps are repeatedly performed.

【0053】また、本発明に係るベクトル量子化のコー
ドブック生成方法は、代表ベクトルの値に基づいて代表
ベクトルをソートするソーティングステップと、入力ベ
クトルとコードブックの代表ベクトルのひずみを計算
し、次に探索する代表ベクトルのアドレスを計算する第
1の演算ステップと、上記第1の演算ステップにより得
られた2つのひずみを比較して符号化される代表ベクト
ルの候補を決める判定ステップと、上記判定ステップに
よる判定結果に基づいて、適応的な代表ベクトルの計算
・平均ひずみの計算・部分ひずみ計算を行う第2の演算
ステップと、上記第2の演算ステップにより得られた部
分ひずみを基準としてソートする部分ひずみソーティン
グステップと、上記部分ひずみソーティングステップに
よりソートされた複数個の部分ひずみの格差を比較する
比較ステップと、上記比較ステップにおける比較結果に
基づいて、複数の部分ひずみの小さい代表ベクトルを部
分ひずみの大きい代表ベクトルの近傍に移動させる代表
ベクトル移動ステップとを有し、上記各ステップを繰り
返し行うことを特徴とする。
Further, in the method of generating a codebook for vector quantization according to the present invention, a sorting step for sorting the representative vectors based on the values of the representative vectors, a distortion between the input vectors and the representative vectors of the codebook are calculated. A first calculating step of calculating an address of a representative vector to be searched for; a determining step of comparing two distortions obtained in the first calculating step to determine a candidate of a representative vector to be encoded; A second operation step of performing adaptive representative vector calculation / average distortion calculation / partial distortion calculation based on the determination result of the step; and sorting based on the partial distortion obtained in the second operation step. A partial strain sorting step, and a compound sorted by the partial strain sorting step. And a representative vector moving step of moving a plurality of representative vectors having a small partial strain to a vicinity of a representative vector having a large partial strain based on the comparison result in the comparing step. Then, each of the above steps is repeatedly performed.

【0054】さらに、本発明に係るベクトル量子化のコ
ードブック生成方法は、代表ベクトルの値に基づいて代
表ベクトルをソートするソーティングステップと、入力
ベクトルとコードブックの複数の代表ベクトルとのひず
みを並列に計算し、次に探索する代表ベクトルのアドレ
スを計算する第1の演算ステップと、上記第1の演算ス
テップにより得られた複数のひずみを比較して符号化さ
れる代表ベクトルの候補を決める判定ステップと、上記
判定ステップによる判定結果に基づいて、適応的な代表
ベクトルの計算・平均ひずみの計算・部分ひずみ計算を
行う第2の演算ステップと、上記第2の演算ステップに
より得られた部分ひずみを基準としてソートする部分ひ
ずみソーティングステップと、上記部分ひずみソーティ
ングステップによりソートされた複数個の部分ひずみの
格差を比較する比較ステップと、上記比較ステップにお
ける比較結果に基づいて、複数の部分ひずみの小さい代
表ベクトルを部分ひずみの大きい代表ベクトルの近傍に
移動させる代表ベクトル移動ステップとを有し、上記各
ステップを繰り返し行うことを特徴とする。
Further, in the codebook generating method for vector quantization according to the present invention, the sorting step of sorting the representative vectors based on the values of the representative vectors and the distortion of the input vector and the plurality of representative vectors of the codebook are performed in parallel. A first operation step of calculating the address of a representative vector to be searched next, and a plurality of distortions obtained in the first operation step are compared to determine a candidate of a representative vector to be encoded. A second operation step of performing adaptive representative vector calculation / average distortion calculation / partial distortion calculation based on a result of the determination in the above determination step; and a partial distortion obtained in the second operation step. A partial strain sorting step of sorting based on A comparing step of comparing the disparities of the plurality of sorted partial strains, and a representative vector movement for moving the plurality of representative vectors having a small partial strain to the vicinity of the representative vector having a large partial strain based on the comparison result in the comparing step And repeating the above steps.

【0055】本発明に係るベクトル量子化のコードブッ
ク生成装置は、入力ベクトル集合を格納する入力ベクト
ル集合記憶手段と、コードブックを格納するコードブッ
ク記憶手段と、コードブックを並び替えるソーティング
手段と、入力ベクトルと代表ベクトルのひずみを計算
し、次に探索する代表ベクトルのアドレスを計算する第
1の演算手段と、上記第1の演算手段による得られる2
つのひずみを比較して符号化される代表ベクトルの候補
を決める判定手段と、上記判定手段による判定結果に基
づいて代表ベクトルの重心の計算・平均ひずみの計算を
行う第2の演算手段と、上記ソーティング手段、第1の
演算手段、判定手段及び第2の演算手段の処理フローを
制御する制御手段とから構成されることを特徴とする。
The vector quantization codebook generating apparatus according to the present invention comprises: an input vector set storage means for storing an input vector set; a codebook storage means for storing a codebook; a sorting means for rearranging the codebook; A first calculating means for calculating the distortion of the input vector and the representative vector and calculating an address of a representative vector to be searched next;
Determining means for comparing the two distortions to determine a candidate for a representative vector to be encoded; second calculating means for calculating the center of gravity of the representative vector and calculating the average distortion based on the determination result by the determining means; It is characterized by comprising a sorting means, a first calculating means, a judging means and a control means for controlling a processing flow of the second calculating means.

【0056】また、本発明に係るベクトル量子化のコー
ドブック生成装置は、入力ベクトル集合を格納する入力
ベクトル集合記憶手段と、コードブックを格納するコー
ドブック記憶手段と、コードブックを並び替えるソーテ
ィング手段と、入力ベクトルと複数の代表ベクトルとの
ひずみを並列に計算し,次に探索する代表ベクトルのア
ドレスを計算する第1の演算手段と、上記第1の演算手
段による得られる複数のひずみを比較して符号化される
代表ベクトルの候補を決める判定手段と、上記判定手段
による判定結果に基づいて代表ベクトルの重心の計算・
平均ひずみの計算を行う第2の演算手段と、上記ソーテ
ィング手段、第1の演算手段、判定手段及び第2の演算
手段の処理フローを制御する制御手段とから構成される
ことを特徴とする。
The codebook generating apparatus for vector quantization according to the present invention comprises an input vector set storing means for storing an input vector set, a codebook storing means for storing a codebook, and a sorting means for rearranging the codebook. Comparing the distortion of the input vector with the plurality of representative vectors in parallel and calculating the addresses of the representative vectors to be searched next, and the plurality of distortions obtained by the first computing means. Determining means for determining a candidate for a representative vector to be encoded as a result of the calculation, and calculating and calculating the center of gravity of the representative vector based on the determination result by the determining means.
It is characterized by comprising a second calculating means for calculating the average strain, and a control means for controlling the processing flow of the sorting means, the first calculating means, the judging means and the second calculating means.

【0057】また、本発明に係るベクトル量子化のコー
ドブック生成装置は、入力ベクトル集合を格納する入力
ベクトル集合記憶手段と、コードブックを格納するコー
ドブック記憶手段と、コードブックを並び替えるソーテ
ィング手段と、入力ベクトルと代表ベクトルのひずみを
計算し、次に探索する代表ベクトルのアドレスを計算す
る第1の演算手段と、上記第1の演算手段により得られ
る2つのひずみを比較して符号化される代表ベクトルの
候補を決める判定手段と、上記判定手段による判定結果
に基づいて重心計算・平均ひずみ計算・部分ひずみ計算
を行う第2の演算手段と、上記第2の演算手段により得
られる部分ひずみを基準としてソートする部分ひずみソ
ーティング手段と、上記部分ひずみソーティング手段に
よりソートされた2つの部分ひずみの格差を比較する比
較手段と、上記比較手段による比較結果に基づいて、部
分ひずみの小さい代表ベクトルを部分ひずみの大きい代
表ベクトルの近傍に移動させる代表ベクトル移動手段
と、上記ソーティング手段、第1の演算手段、判定手
段、第2の演算手段、部分ひずみソーティング手段、部
分ひずみ比較手段及び代表ベクトル移動手段の処理フロ
ーを制御する制御手段とから構成されることを特徴とす
る。
The codebook generating apparatus for vector quantization according to the present invention comprises an input vector set storing means for storing an input vector set, a codebook storing means for storing a codebook, and a sorting means for rearranging the codebook. And a first calculating means for calculating the distortion of the input vector and the representative vector and calculating the address of the next representative vector to be searched next, and comparing the two distortions obtained by the first calculating means with each other. Determining means for determining a representative vector candidate, second calculating means for calculating a center of gravity, average strain calculation, and partial strain calculation based on the determination result by the determining means, and partial distortion obtained by the second calculating means. The partial strain sorting means for sorting on the basis of Comparing means for comparing the difference between two partial strains, based on a comparison result by the comparing means, a representative vector moving means for moving a representative vector having a small partial strain to a vicinity of a representative vector having a large partial strain, and the sorting means, It is characterized by comprising a first calculating means, a determining means, a second calculating means, a partial strain sorting means, a partial strain comparing means, and a control means for controlling a processing flow of the representative vector moving means.

【0058】また、本発明に係るベクトル量子化のコー
ドブック生成装置は、入力ベクトル集合を格納する入力
ベクトル集合記憶手段と、コードブックを格納するコー
ドブック記憶手段と、コードブックを並び替えるソーテ
ィング手段と、入力ベクトルと複数の代表ベクトルとの
ひずみを並列に計算し、次に探索する代表ベクトルのア
ドレスを計算する第1の演算手段と、上記第1の演算手
段により得られる複数のひずみを比較して符号化される
代表ベクトルの候補を決める判定手段と、上記判定手段
による判定結果に基づいて重心計算・平均ひずみ計算・
部分ひずみ計算を行う第2の演算手段と、上記第2の演
算手段により得られる部分ひずみを基準としてソートす
る部分ひずみソーティング手段と、上記部分ひずみソー
ティング手段によりソートされた2つの部分ひずみの格
差を比較する比較手段と、上記比較手段による比較結果
に基づいて、部分ひずみの小さい代表ベクトルを部分ひ
ずみの大きい代表ベクトルの近傍に移動させる代表ベク
トル移動手段と、上記ソーティング手段、第1の演算手
段、判定手段、第2の演算手段、部分ひずみソーティン
グ手段、部分ひずみ比較手段及び代表ベクトル移動手段
の処理フローを制御する制御手段とから構成されること
を特徴とする。
Further, the codebook generating apparatus for vector quantization according to the present invention includes an input vector set storing means for storing an input vector set, a codebook storing means for storing a codebook, and a sorting means for rearranging the codebook. And a first calculating means for calculating a distortion between an input vector and a plurality of representative vectors in parallel and calculating an address of a representative vector to be searched next, and a plurality of distortions obtained by the first calculating means. Determining means for determining a candidate of a representative vector to be encoded as a result, and calculating a center of gravity, calculating an average distortion,
A second calculating means for performing a partial strain calculation, a partial strain sorting means for sorting based on the partial strain obtained by the second calculating means, and a difference between the two partial strains sorted by the partial strain sorting means. A comparing means for comparing, a representative vector moving means for moving a representative vector having a small partial distortion to a vicinity of a representative vector having a large partial distortion based on a comparison result by the comparing means, the sorting means, the first calculating means, It is characterized by comprising a determining means, a second calculating means, a partial strain sorting means, a partial strain comparing means, and a control means for controlling the processing flow of the representative vector moving means.

【0059】また、本発明に係るベクトル量子化のコー
ドブック生成装置は、入力ベクトル集合を格納する入力
ベクトル集合記憶手段と、コードブックを格納するコー
ドブック記憶手段と、コードブックを並び替えるソーテ
ィング手段と、入力ベクトルと代表ベクトルのひずみを
計算し、次に探索する代表ベクトルのアドレスを計算す
る第1の演算手段と、上記第1の演算手段により得られ
る2つのひずみを比較して符号化される代表ベクトルの
候補を決める判定手段と、上記判定手段による判定結果
に基づいて重心計算・平均ひずみ計算・部分ひずみ計算
を行う第2の演算手段と、上記第2の演算手段により得
られる部分ひずみを基準としてソートする部分ひずみソ
ーティング手段と、上記部分ひずみソーティング手段に
よりソートされた複数個の部分ひずみの格差を比較する
比較手段と、上記比較手段による比較結果に基づいて、
複数の部分ひずみの小さい代表ベクトルを部分ひずみの
大きい代表ベクトルの近傍に移動させる代表ベクトル移
動手段と、上記ソーティング手段、第1の演算手段、判
定手段、第2の演算手段、部分ひずみソーティング手
段、部分ひずみ比較手段及び代表ベクトル移動手段の処
理フローを制御する制御手段とから構成されることを特
徴とする。
The codebook generating apparatus for vector quantization according to the present invention comprises an input vector set storing means for storing an input vector set, a codebook storing means for storing a codebook, and a sorting means for rearranging the codebook. And a first calculating means for calculating the distortion of the input vector and the representative vector and calculating the address of the next representative vector to be searched next, and comparing the two distortions obtained by the first calculating means with each other. Determining means for determining a representative vector candidate, second calculating means for calculating a center of gravity, average strain calculation, and partial strain calculation based on the determination result by the determining means, and partial distortion obtained by the second calculating means. The partial strain sorting means for sorting on the basis of Comparing means for comparing the difference of several partial distortion, based on the comparison result by the comparison means,
A representative vector moving means for moving a plurality of representative vectors having a small partial strain to a vicinity of a representative vector having a large partial strain; and the sorting means, the first calculating means, the determining means, the second calculating means, the partial strain sorting means, It is characterized by comprising a control means for controlling the processing flow of the partial distortion comparing means and the representative vector moving means.

【0060】また、本発明に係るベクトル量子化のコー
ドブック生成装置は、入力ベクトル集合を格納する入力
ベクトル集合記憶手段と、コードブックを格納するコー
ドブック記憶手段と、コードブックを並び替えるソーテ
ィング手段と、入力ベクトルと複数の代表ベクトルとの
ひずみを並列に計算し,次に探索する代表ベクトルのア
ドレスを計算する第1の演算手段と、上記第1の演算手
段により得られる複数のひずみを比較して符号化される
代表ベクトルの候補を決める判定手段と、上記判定手段
による判定結果に基づいて重心計算・平均ひずみ計算・
部分ひずみ計算を行う第2の演算手段と、上記第2の演
算手段により得られる部分ひずみを基準としてソートす
る部分ひずみソーティング手段と、上記部分ひずみソー
ティング手段によりソートされた複数個の部分ひずみの
格差を比較する比較手段と、上記比較手段による結果に
基づいて、複数の部分ひずみの小さい代表ベクトルを部
分ひずみの大きい代表ベクトルの近傍に移動させる代表
ベクトル移動手段と、上記ソーティング手段、第1の演
算手段、判定手段、第2の計算・部分ひずみの計算を行
う第2の演算手段、部分ひずみソーティング手段、部分
ひずみ比較手段及び代表ベクトル移動手段の処理フロー
を制御する制御手段とから構成されることを特徴とす
る。
Further, the codebook generating apparatus for vector quantization according to the present invention comprises an input vector set storing means for storing an input vector set, a codebook storing means for storing a codebook, and a sorting means for rearranging the codebook. Comparing the distortion of the input vector with the plurality of representative vectors in parallel, and calculating the distortion of the representative vector to be searched next, and the plurality of distortions obtained by the first computing means. Determining means for determining a candidate of a representative vector to be encoded as a result, and calculating a center of gravity, calculating an average distortion,
A second calculating means for performing a partial strain calculation, a partial strain sorting means for sorting based on the partial strain obtained by the second calculating means, and a difference between a plurality of partial strains sorted by the partial strain sorting means A representative vector moving means for moving a plurality of representative vectors having a small partial distortion to a vicinity of a representative vector having a large partial distortion based on the result of the comparing means; Means, determination means, second calculation means for performing second calculation and partial strain calculation, partial strain sorting means, partial strain comparison means, and control means for controlling the processing flow of the representative vector moving means. It is characterized by.

【0061】また、本発明に係るベクトル量子化のコー
ドブック生成装置は、入力ベクトルが入力される入力端
子と、コードブックを並び替えるソーティング手段と、
ソートされたコードブックを格納するコードブック記憶
手段と、上記入力端子を介して入力された入力ベクトル
と上記コードブック記憶手段に格納されたコードブック
の代表ベクトルのひずみを計算し、次に探索する代表ベ
クトルのアドレスを計算する第1の演算手段と、上記第
1の演算手段により得られた2つのひずみを比較して符
号化される代表ベクトルの候補を決める判定手段と、上
記判定手段による判定結果に基づいて、適応的な代表ベ
クトルの計算・平均ひずみの計算を行う第2の演算手段
と、上記ソーティング手段、第1の演算手段、判定手
段、第2の演算手段の処理フローを制御する制御手段と
から構成されることを特徴とする。
Further, the codebook generating apparatus for vector quantization according to the present invention comprises: an input terminal to which an input vector is input; sorting means for rearranging the codebook;
Codebook storage means for storing the sorted codebooks, and the input vector input through the input terminal and the distortion of the representative vector of the codebook stored in the codebook storage means are calculated and then searched. First calculating means for calculating the address of the representative vector, determining means for comparing the two distortions obtained by the first calculating means to determine a representative vector candidate to be encoded, and determining by the determining means Based on the result, the second arithmetic means for adaptively calculating the representative vector and calculating the average distortion, and the processing flow of the sorting means, the first arithmetic means, the determination means, and the second arithmetic means are controlled. And control means.

【0062】また、本発明に係るベクトル量子化のコー
ドブック生成装置は、入力ベクトルが入力される入力端
子と、コードブックを並び替えるソーティング手段と、
ソートされたコードブックを格納するコードブック記憶
手段と、上記入力端子を介して入力された入力ベクトル
と上記コードブック記憶手段に格納されたコードブック
の複数の代表ベクトルとのひずみを並列に計算し、次に
探索する代表ベクトルのアドレスを計算する第1の演算
手段と、上記第1の演算手段により得られた複数のひず
みを比較して符号化される代表ベクトルの候補を決める
判定手段と、上記判定手段による判定結果に基づいて、
適応的な代表ベクトルの計算・平均ひずみの計算を行う
第2の演算手段と、上記ソーティング手段、第1の演算
手段、判定手段、第2の演算手段の処理フローを制御す
る制御手段とから構成されることを特徴とする。
Further, the codebook generating apparatus for vector quantization according to the present invention comprises: an input terminal to which an input vector is input; sorting means for rearranging the codebook;
Codebook storage means for storing the sorted codebooks, and calculating in parallel the distortion between the input vector input via the input terminal and a plurality of representative vectors of the codebook stored in the codebook storage means. A first calculating means for calculating an address of a representative vector to be searched next; a determining means for comparing a plurality of distortions obtained by the first calculating means to determine a candidate of a representative vector to be encoded; Based on the determination result by the determination means,
A second arithmetic means for adaptively calculating the representative vector and calculating the average distortion, and a control means for controlling the processing flow of the sorting means, the first arithmetic means, the judging means and the second arithmetic means. It is characterized by being performed.

【0063】また、本発明に係るベクトル量子化のコー
ドブック生成装置は、入力ベクトルが入力される入力端
子と、コードブックを並び替えるソーティング手段と、
ソートされたコードブックを格納するコードブック記憶
手段と、上記入力端子を介して入力された入力ベクトル
と上記コードブック記憶手段に格納されたコードブック
の代表ベクトルのひずみを計算し、次に探索する代表ベ
クトルのアドレスを計算する第1の演算手段と、上記第
1の演算手段により得られた2つのひずみを比較して符
号化される代表ベクトルの候補を決める判定手段と、上
記判定手段による判定結果に基づいて、適応的な代表ベ
クトルの計算・平均ひずみの計算・部分ひずみ計算を行
う第2の演算手段と、上記第2の演算手段により得られ
た部分ひずみを基準としてソートする部分ひずみソーテ
ィング手段と、上記部分ひずみソーティング手段により
ソートされた2つの部分ひずみの格差を比較する比較手
段と、上記比較手段による比較結果に基づいて,部分ひ
ずみの小さい代表ベクトルを部分ひずみの大きい代表ベ
クトルの近傍に移動させる代表ベクトル移動手段と、上
記ソーティング手段、第1の演算手段、判定手段、第2
の演算手段、部分ひずみソーティング手段、部分ひずみ
比較手段及び代表ベクトル移動手段の処理フローを制御
する制御手段とから構成されることを特徴とする。
In addition, the codebook generating apparatus for vector quantization according to the present invention comprises: an input terminal to which an input vector is input; sorting means for rearranging the codebook;
Codebook storage means for storing the sorted codebooks, and the input vector input through the input terminal and the distortion of the representative vector of the codebook stored in the codebook storage means are calculated and then searched. First calculating means for calculating the address of the representative vector, determining means for comparing the two distortions obtained by the first calculating means to determine a representative vector candidate to be encoded, and determining by the determining means Second calculating means for performing adaptive representative vector calculation, average strain calculation, and partial strain calculation based on the result, and partial strain sorting for sorting based on the partial strain obtained by the second calculating means Means for comparing the difference between two partial strains sorted by the partial strain sorting means; Based on the comparison result of the partial representative vector moving means for moving in the vicinity of large representative vector strain portions small representative vector strained, said sorting means, first calculating means, judging means, second
And control means for controlling the processing flow of the partial strain sorting means, the partial strain comparing means, and the representative vector moving means.

【0064】また、本発明に係るベクトル量子化のコー
ドブック生成装置は、入力ベクトルが入力される入力端
子と、コードブックを並び替えるソーティング手段と、
ソートされたコードブックを格納するコードブック記憶
手段と、上記入力端子を介して入力された入力ベクトル
と上記コードブック記憶手段に格納されたコードブック
の複数の代表ベクトルとのひずみを並列に計算し、次に
探索する代表ベクトルのアドレスを計算する第1の演算
手段と、上記第1の演算手段により得られた複数のひず
みを比較して符号化される代表ベクトルの候補を決める
判定手段と、上記判定手段による判定結果に基づいて、
適応的な代表ベクトルの計算・平均ひずみの計算・部分
ひずみ計算を行う第2の演算手段と、上記第2の演算手
段により得られた部分ひずみを基準としてソートする部
分ひずみソーティング手段と、上記部分ひずみソーティ
ング手段によりソートされた2つの部分ひずみの格差を
比較する比較手段と、上記比較手段による比較結果に基
づいて、部分ひずみの小さい代表ベクトルを部分ひずみ
の大きい代表ベクトルの近傍に移動させる代表ベクトル
移動手段と、上記ソーティング手段、第1の演算手段、
判定手段、第2の演算手段、部分ひずみソーティング手
段、部分ひずみ比較手段及び代表ベクトル移動手段の処
理フローを制御する制御手段とから構成されることを特
徴とする。
Also, the codebook generating apparatus for vector quantization according to the present invention comprises: an input terminal to which an input vector is inputted; sorting means for rearranging the codebook;
Codebook storage means for storing the sorted codebooks, and calculating in parallel the distortion between the input vector input via the input terminal and a plurality of representative vectors of the codebook stored in the codebook storage means. A first calculating means for calculating an address of a representative vector to be searched next; a determining means for comparing a plurality of distortions obtained by the first calculating means to determine a candidate of a representative vector to be encoded; Based on the determination result by the determination means,
Second arithmetic means for performing adaptive representative vector calculation / average strain calculation / partial strain calculation; partial strain sorting means for sorting on the basis of the partial strain obtained by the second arithmetic means; Comparing means for comparing the difference between the two partial strains sorted by the strain sorting means, and a representative vector for moving a representative vector having a small partial strain to a vicinity of a representative vector having a large partial strain based on a comparison result by the comparing means. Moving means, the sorting means, the first computing means,
It is characterized by comprising a determining means, a second calculating means, a partial strain sorting means, a partial strain comparing means, and a control means for controlling the processing flow of the representative vector moving means.

【0065】また、本発明に係るベクトル量子化のコー
ドブック生成装置は、入力ベクトルが入力される入力端
子と、コードブックを並び替えるソーティング手段と、
ソートされたコードブックを格納するコードブック記憶
手段と、上記入力端子を介して入力された入力ベクトル
と上記コードブック記憶手段に格納されたコードブック
の代表ベクトルのひずみを計算し、次に探索する代表ベ
クトルのアドレスを計算する第1の演算手段と、上記第
1の演算手段により得られた2つのひずみを比較して符
号化される代表ベクトルの候補を決める判定手段と、上
記判定手段による判定結果に基づいて、適応的な代表ベ
クトルの計算・平均ひずみの計算・部分ひずみ計算を行
う第2の演算手段と、上記第2の演算手段により得られ
た部分ひずみを基準としてソートする部分ひずみソーテ
ィング手段と、上記部分ひずみソーティング手段により
ソートされた複数個の部分ひずみの格差を比較する比較
手段と、上記比較手段による比較結果に基づいて、複数
の部分ひずみの小さい代表ベクトルを部分ひずみの大き
い代表ベクトルの近傍に移動させる代表ベクトル移動手
段と、上記ソーティング手段、第1の演算手段、判定手
段、第2の演算手段、部分ひずみソーティング手段、部
分ひずみ比較手段及び代表ベクトル移動手段の処理フロ
ーを制御する制御手段とから構成されることを特徴とす
る。
Further, the codebook generating apparatus for vector quantization according to the present invention comprises: an input terminal to which an input vector is inputted; sorting means for rearranging the codebook;
Codebook storage means for storing the sorted codebooks, and the input vector input through the input terminal and the distortion of the representative vector of the codebook stored in the codebook storage means are calculated and then searched. First calculating means for calculating the address of the representative vector, determining means for comparing the two distortions obtained by the first calculating means to determine a representative vector candidate to be encoded, and determining by the determining means Second calculating means for performing adaptive representative vector calculation, average strain calculation, and partial strain calculation based on the result, and partial strain sorting for sorting based on the partial strain obtained by the second calculating means Means for comparing the difference between a plurality of partial strains sorted by the partial strain sorting means; and A representative vector moving means for moving a plurality of representative vectors having a small partial distortion to a vicinity of a representative vector having a large partial distortion based on the comparison result by the step; the sorting means, the first calculating means, the judging means, and the second It is characterized by comprising a calculating means, a partial strain sorting means, a partial strain comparing means, and a control means for controlling the processing flow of the representative vector moving means.

【0066】さらに、本発明に係るベクトル量子化のコ
ードブック生成装置は、入力ベクトルが入力される入力
端子と、コードブックを並び替えるソーティング手段
と、ソートされたコードブックを格納するコードブック
記憶手段と、上記入力端子を介して入力された入力ベク
トルと上記コードブック記憶手段に格納されたコードブ
ックの複数の代表ベクトルとのひずみを並列に計算し、
次に探索する代表ベクトルのアドレスを計算する第1の
演算手段と、上記第1の演算手段により得られた複数の
ひずみを比較して符号化される代表ベクトルの候補を決
める判定手段と、上記判定手段による判定結果に基づい
て、適応的な代表ベクトルの計算・平均ひずみの計算・
部分ひずみ計算を行う第2の演算手段と、上記第2の演
算手段により得られた部分ひずみを基準としてソートす
る部分ひずみソーティング手段と、上記部分ひずみソー
ティング手段によりソートされた複数個の部分ひずみの
格差を比較する比較手段と、上記比較手段による比較結
果に基づいて、複数の部分ひずみの小さい代表ベクトル
を部分ひずみの大きい代表ベクトルの近傍に移動させる
代表ベクトル移動手段と、上記ソーティング手段、第1
の演算手段、判定手段、第2の演算手段、部分ひずみソ
ーティング手段、部分ひずみ比較手段及び代表ベクトル
移動手段の処理フローを制御する制御手段とから構成さ
れることを特徴とする。
Further, in the codebook generating apparatus for vector quantization according to the present invention, an input terminal to which an input vector is input, a sorting means for rearranging the codebook, and a codebook storage means for storing the sorted codebook. And, in parallel, calculate the distortion between the input vector input via the input terminal and a plurality of representative vectors of the codebook stored in the codebook storage means,
First calculating means for calculating an address of a representative vector to be searched next; determining means for comparing a plurality of distortions obtained by the first calculating means to determine candidates for a representative vector to be encoded; Based on the determination result by the determination means, adaptive representative vector calculation, average distortion calculation,
A second calculating means for performing a partial strain calculation, a partial strain sorting means for sorting based on the partial strain obtained by the second calculating means, and a plurality of partial strains sorted by the partial strain sorting means. Comparing means for comparing disparities; representative vector moving means for moving a plurality of representative vectors having a small partial strain to a vicinity of a representative vector having a large partial strain based on a comparison result by the comparing means;
, A control means for controlling the processing flow of the partial distortion sorting means, the partial distortion comparing means, and the representative vector moving means.

【0067】[0067]

【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照しながら詳細に説明する。
Embodiments of the present invention will be described below in detail with reference to the drawings.

【0068】本発明は、例えば図1に示すような構成の
ベクトル量子化器のコードブック生成装置100に適用
される。
The present invention is applied to, for example, a codebook generating apparatus 100 for a vector quantizer having a configuration as shown in FIG.

【0069】このコードブック生成装置100は、入力
ベクトル集合メモリ110、ソーティング装置120、
コードブックメモリ130、第1の演算装置140、判
定装置150、第2の演算装置160及び制御装置17
0から構成される。
The codebook generating device 100 includes an input vector set memory 110, a sorting device 120,
Codebook memory 130, first computing device 140, determining device 150, second computing device 160, and control device 17
It consists of 0.

【0070】このコードブック生成装置100におい
て、入力ベクトル集合メモリ110は、入力ベクトル集
合X=(x(t)∈R:t=0,・・・,T−1)を
記憶しておくメモリであり、第1の演算装置140から
アドレスの指定をうけ、対応する入力ベクトルx(t)
と初期代表ベクトルの番号を第1の演算装置140に渡
す。また、入力ベクトル集合メモリ110は、判定装置
150から、入力ベクトルx(t)の初期代表ベクトル
の番号minを受け取り、格納する。
[0070] In this codebook generator 100, the input vector set memory 110, an input vector set X =: Memory (x (t) ∈R K t = 0, ···, T-1) stores the , The address is specified by the first arithmetic unit 140, and the corresponding input vector x (t)
And the number of the initial representative vector are passed to the first arithmetic unit 140. Further, the input vector set memory 110 receives the number min of the initial representative vector of the input vector x (t) from the determination device 150 and stores it.

【0071】ソーティング装置120は、制御装置17
0からのソートの指示とどの次元kを基準としてソート
するかの指示を受け、コードブックメモリ130からコ
ードブックを読み出し、指定された次元を基準としてコ
ードブックをソートする。また、ソーティング装置12
0は、ソートしたコードブックをコードブックメモリ1
30の指定したアドレスに書き込む。
The sorting device 120 includes the control device 17
Upon receiving a sorting instruction from 0 and an instruction on which dimension k is to be sorted, the code book is read from the code book memory 130 and the code book is sorted based on the specified dimension. Also, the sorting device 12
0 is a codebook memory 1 for storing sorted codebooks.
Write to the specified 30 addresses.

【0072】コードブックメモリ130は、コードブッ
クW(p)={w (p)∈R:i=0,・・・,N
−1}を記憶しておくメモリであり、ひずみ計算・アド
レス計算を行う第1の演算装置140からアドレスを受
け取り、対応する代表ベクトルのデータ(代表ベクトル
の値w (p),番号i)を第1の演算装置140に渡
す。また、コードブックメモリ130は、重心計算・平
均ひずみ計算を行う第2の演算装置160から、データ
(更新されたコードブックW(p+1))及び書き込む
アドレスを受け取り、対応するアドレスにコードブック
が書き込まれる。また、コードブックメモリ130は、
コードブックをソーティング装置120に渡す。さら
に、コードブックメモリ130は、ソーティング装置1
20によりソートされたコードブックと書き込むアドレ
スを受け取り、指定されたアドレスにコードブックを格
納する。
[0072] codebook memory 130, the codebook W (p) = {w i (p) ∈R K: i = 0, ···, N
-1} is a memory that receives an address from the first arithmetic unit 140 that performs distortion calculation and address calculation, and corresponding representative vector data (representative vector value w i (p) , number i) To the first arithmetic unit 140. Further, the codebook memory 130 receives data (updated codebook W (p + 1) ) and an address to be written from the second arithmetic unit 160 that performs the calculation of the center of gravity and the average strain, and writes the codebook to the corresponding address. It is. Also, the codebook memory 130
The code book is passed to the sorting device 120. Further, the codebook memory 130 stores the sorting device 1
Receiving the code book sorted by 20 and the address to be written, and storing the code book at the specified address.

【0073】第1の演算装置140は、入力ベクトル集
合メモリ110にアドレスを指定して、対応する入力ベ
クトルx(t)と初期代表ベクトルの番号を受け取る。
また、第1の演算装置140は、制御装置170からひ
ずみ・アドレスの計算の指示を受け、コードブックメモ
リ130に読み込みたい代表ベクトルのアドレスを指定
して、対応するデータ(代表ベクトルの値w (p)
番号iなど)を読み込む。また、第1の演算装置140
は、入力ベクトルと代表ベクトルとのひずみd(x
(t),w (p))を計算する。そして、第1の演算
装置140は、ひずみd(x(t),w (p))とデ
ータ(代表ベクトルの番号と値)を判定装置150に渡
す。また、第1の演算装置140は、制御装置170か
らソートの基準となった次元kの指示を受け、k次元だ
けのひずみd(x (t),wik p))も判定装置
150に渡す。さらに、第1の演算装置140は、判定
装置150から、判定結果により探索する代表ベクトル
の方向を示すup/downの情報を受け、次の探索す
る代表ベクトルのアドレスを計算する。なお、第1の演
算装置140は、探索終了を示す情報finishを受けた場
合は、次の入力ベクトルx(t+1)の符号化に取りか
かる。
The first arithmetic unit 140 designates an address in the input vector set memory 110 and receives the corresponding input vector x (t) and the number of the initial representative vector.
Further, the first arithmetic unit 140 receives an instruction for calculating a distortion / address from the control unit 170, specifies the address of a representative vector to be read into the codebook memory 130, and specifies the corresponding data (representative vector value w i). (P) ,
Number i). Also, the first arithmetic unit 140
Is the distortion d (x
(T), to calculate the w i (p)). The first computing device 140, passes the strain d (x (t), w i (p)) and data (number of the representative vector value) of the determination device 150. In addition, the first arithmetic unit 140 receives an instruction on the dimension k serving as a sorting criterion from the control device 170, and determines the distortion d (x k (t) , w ik ( p) ) of only k dimensions in the determination device 150. Pass to. Further, the first arithmetic unit 140 receives, from the determination unit 150, up / down information indicating the direction of the representative vector to be searched based on the determination result, and calculates the address of the next representative vector to be searched. Note that, when receiving the information “finish” indicating the end of the search, the first arithmetic device 140 starts encoding the next input vector x (t + 1) .

【0074】判定装置150は、現在の最小のひずみd
cur minとその代表ベクトルの番号minを保持し
ており、現在の最小のひずみdcur minをもつmi
n番の代表ベクトルと第1の演算装置140により計算
されたi番の代表ベクトルについてひずみd
(x(t),w (p))を比較し、ひずみが小さい方
を新しいmin番、現在の最小のひずみdcur min
とする。また、判定装置150は、制御装置170から
判定の指示を受け、k次元だけのひずみd
(x (t),wik (p))と現在の最小のひずみd
cur minを比較し、d(x (t)
ik (p))の方が大きければ、次に探索する代表ベ
クトルの方向を示すup/downの情報を変更し、ま
た、up/down両方向とも調べ終わった場合には探
索終了を示す情報finish を演算装置140に渡し、d
(x (t),wik (p))の方が小さければ、同方
向の次の代表ベクトルを調べる情報を第1の演算装置1
40に渡す。また、判定装置150は、up/down
両方向とも調べ終わり探索終了finishになったとき、第
2の演算装置160に入力ベクトルx(t)、現在の最
小のひずみを持つ初期代表ベクトルの番号min及び最
小のひずみdcur minを出力する。さらに、判定装
置150は、探索終了finishになったとき、現在の最小
のひずみを持つ初期代表ベクトルの番号minを入力ベ
クトルx(t)の初期代表ベクトルとして入力ベクトル
集合メモリ110に格納する。
The judgment device 150 calculates the current minimum distortion d.
cur min and the number min of the representative vector are held, and mi having the current minimum distortion d cur min
For the n-th representative vector and the i-th representative vector calculated by the first arithmetic unit 140, the distortion d
Compares the (x (t), w i (p)), the strain is the smaller of the new min number, the current minimum distortion d cur min
And Further, the determination device 150 receives a determination instruction from the control device 170 and receives a k-dimensional distortion d.
(X k (t) , w ik (p) ) and the current minimum strain d
cur min , d (x k (t) ,
If w ik (p) is larger, the information of up / down indicating the direction of the next representative vector to be searched is changed, and if both the up and down directions have been checked, the information finish indicating search has been completed To the arithmetic unit 140, and d
If (x k (t) , w ik (p) ) is smaller, information for examining the next representative vector in the same direction is sent to the first arithmetic unit 1.
Pass to 40. Further, the determination device 150 determines that the up / down
When the search ends in both directions and the search ends, the input vector x (t) , the number min of the initial representative vector having the current minimum distortion, and the minimum distortion d cur min are output to the second arithmetic unit 160. Further, when the search is finished, the determination device 150 stores the number min of the initial representative vector having the current minimum distortion in the input vector set memory 110 as the initial representative vector of the input vector x (t) .

【0075】第2の演算装置160は、判定装置150
から、入力ベクトルx(t)と符号化された代表ベクト
ルの番号minと入力ベクトルを符号化したときのひず
みd cur minを受け取る。そして、この第2の演算
装置160は、代表ベクトル番号minに対応するデー
タ(分子wminnumと分母wminden、さらに
平均ひずみDsum)の計算を次の(5)式、(6)及
び(7)式にしたがって行う。
The second arithmetic unit 160 includes a judgment unit 150
From the input vector x(T)The representative vector encoded with
When the input number min and the input number min are encoded
D cur minReceive. And this second operation
The device 160 stores the data corresponding to the representative vector number min.
T (molecule wminnumAnd denominator wminden,further
Average strain Dsum) Is calculated by the following equation (5), (6) and
And (7).

【0076】 wminnum+=x(t) (5) wminden+=1 (6) Dsum+=dcur min (7) また、この第2の演算装置160は、T個の入力ベクト
ルに対して、符号化が終了し、上記途中計算が終了した
と制御装置170から指示を受けたら、代表ベクトル重
心w (p+1)、平均ひずみDの計算を次の(8)式
及び(9)式にしたがって行う。
W minnum + = x (t) (5) w minden + = 1 (6) D sum + = d cur min (7) Further, the second arithmetic unit 160 operates on T input vectors. When the controller 170 receives an instruction that the encoding has been completed and the above-described intermediate calculation has been completed, the calculation of the representative vector centroid w i (p + 1) and the average distortion D are performed by the following equations (8) and (9). Perform according to.

【0077】[0077]

【数5】 (Equation 5)

【0078】また、この第2の演算装置160は、制御
装置170からの指示により、全てのデータ(分子w
inumと分母widen、さらに平均ひずみ
sum,∀i)をクリアする。
The second arithmetic unit 160 receives all data (numerator w) according to an instruction from the control unit 170.
Inum , denominator w iden , and average strain D sum , ∀i) are cleared.

【0079】また、この第2の演算装置160は、デー
タ(更新されたコードブックW(p +1))及び書き込
むアドレスを渡し、対応するアドレスに更新されたコー
ドブックを書き込む。
The second arithmetic unit 160 passes the data (the updated codebook W (p + 1) ) and the address to be written, and writes the updated codebook to the corresponding address.

【0080】この第2の演算装置160は、制御装置1
70からの指示により、任意の初期コードブックをコー
ドブックメモリ130に設定する。
The second arithmetic unit 160 includes the control unit 1
According to the instruction from 70, an arbitrary initial codebook is set in the codebook memory 130.

【0081】制御装置170は、ソーティング装置12
0、第1の演算装置140、判定装置150及び第2の
演算装置160の処理フローを制御する。また、制御装
置170は、ソーティング装置120にソートの基準と
なる次元を指定する。また、制御装置170は、第1の
演算装置140に初期代表ベクトルのアドレス(又は番
号)を指定し、また、ソートの基準となった次元を指示
する。さらに、制御装置170は、第2の演算装置16
0に任意の初期コードブックの設定を指示する。
The control device 170 controls the sorting device 12
0, the processing flow of the first arithmetic device 140, the determination device 150, and the second arithmetic device 160 is controlled. In addition, the control device 170 specifies a dimension serving as a sorting reference to the sorting device 120. In addition, the control device 170 specifies the address (or number) of the initial representative vector to the first arithmetic device 140, and indicates the dimension used as the reference for sorting. Further, the control device 170 controls the second arithmetic device 16
Instruct 0 to set an arbitrary initial codebook.

【0082】このような構成のコードブック生成装置1
00において、本発明では、図2のフローチャートに示
すコードブック生成アルゴリズムにしたがってソートさ
れた代表ベクトルを用いた高速ベクトル量子化(Vector
Quantization by Searchingin Sirted Codebook:VQ
−SSC)を利用したコードブック生成を行う。
The code book generating apparatus 1 having such a configuration
00, in the present invention, fast vector quantization (Vector) using the representative vectors sorted according to the codebook generation algorithm shown in the flowchart of FIG.
Quantization by Searching in Sirted Codebook: VQ
-SSC) is generated.

【0083】すなわち、このコードブック生成装置10
0では、先ず、ステップ(F101)において、代表ベ
クトル初期配置を設定する。また、代表ベクトルをソー
トするための基準の次元kを指定する。
That is, the code book generating apparatus 10
In the case of 0, first, in step (F101), a representative vector initial arrangement is set. Also, a reference dimension k for sorting the representative vectors is specified.

【0084】次のステップ(F102)では、次元kの
代表ベクトルの値に基づいて代表ベクトルをソートす
る。ソートされた順番の情報については,以下の2通り
のやり方が考えられる。
In the next step (F102), the representative vectors are sorted based on the value of the representative vector of dimension k. The information in the sorted order can be considered in the following two ways.

【0085】(1)直接代表ベクトルの順番を入れ替え
てしまう。代表ベクトルの番号を変更したくないとき
は、代表ベクトルの番号の情報を持つ構造体にして入れ
替える。直接ならべ変えているので、自分より下位の代
表ベクトルの番号lowerは、自分の配列の番号−1
とした配列の番号となる。また、自分より上位の代表
ベクトルの番号upperは、自分の配列の番号+1と
した配列の番号となる。
(1) The order of the representative vectors is directly changed. If it is not desired to change the number of the representative vector, the structure is replaced with a structure having information on the number of the representative vector. Since the numbers are directly changed, the number lower of the representative vector lower than the own is the number-1 of the own array.
And the sequence number. Also, the number upper of the representative vector higher than the own is the array number obtained by adding +1 to the array number of the own.

【0086】(2)ソートしたときの順番を示す配列を
用意する場合、各代表ベクトルが保持すべき情報は、自
分より下位の代表ベクトルの番号lowerと、自分よ
り上位の代表ベクトルの番号upperである。
(2) When preparing an array indicating the order of sorting, the information to be held by each representative vector is represented by the lower number of the representative vector lower than the own and the upper number of the representative vector higher than the own. is there.

【0087】次のステップ(F103)では、入力ベク
トルx(t)と初期の代表ベクトルw (p)とのひず
みの計算を行い、このひずみd(x(t)
(p))を現在の最小のひずみdcur min
し、番号iを符号化の候補として保存しておく。
In the next step (F103), the distortion between the input vector x (t) and the initial representative vector w i (p) is calculated, and the distortion d (x (t) ,
and w i (p)) of the current minimum distortion d cur min, keep the number i as a candidate for coding.

【0088】 dcur min=d(x(t),w (p)) (10) min=i (11) 次のステップ(F104)では、初期の代表ベクトルw
(p) の両隣の代表ベクトルの番号、すなわち、 lower=下位方向の隣の代表ベクトルの番号 upper=上位方向の隣の代表ベクトルの番号 を保存する。
[0088] d cur min = d (x ( t), w i (p)) (10) min = i (11) In the next step (F104), the initial representative vector w
The number of the representative vector on both sides of i (p) , that is, lower = the number of the next representative vector in the lower direction upper = the number of the next representative vector in the upper direction

【0089】次のステップ(F105)では、入力ベク
トルx(t)と代表ベクトルwlo wer (p)とのひ
ずみd(x(t),wlower (p))の計算を行
い、計算途中のd(x (t)
lowerk (p))を保存しておく。そして、この
ステップ(F105)では、計算したひずみd(x
(t),wlowerk (p))が現在の最小のひずみ
cur minより小さいか否か、すなわち、 d(x(t),wlower (p))<dcur min (12) が成り立つか否かを判定し、この(12)式が成り立つ
ならば、 dcur min=d(x(t),wlower (p)) (13) min=lower (14) とする。
In the next step (F105), the input vector
Torr x(T)And representative vector wlo wer (P)Tonohi
Z d (x(T), Wlower (P)) Calculation
D (xk (T),
wlowerk (P)) Is saved. And this
In step (F105), the calculated strain d (xk
(T), Wlowerk (P)) Is the current minimum strain
dcur minIs smaller than, that is, d (x(T), Wlower (P)) <Dcur min It is determined whether or not (12) holds, and the equation (12) holds.
Then dcur min= D (x(T), Wlower (P)(13) It is assumed that min = lower (14).

【0090】次のステップ(F106)では、下位方向
の探索を続けるかどうか判断する。このステップ(F1
06)において、もし、 d(x (t),wlowerk (p))>dcur min (15) を満足するなら、下位方向の探索は終了で、ステップ
(F108)へ移り、さもなければ、次のステップ(F
107)へ進む。
In the next step (F106), it is determined whether to continue the search in the lower direction. This step (F1
At 06), if d (x k (t) , w lowerk (p) )> d cur min (15) is satisfied, the search in the lower direction is completed, and the process proceeds to step (F108). , Next step (F
Go to 107).

【0091】ステップ(F107)は、代表ベクトルの
番号lowerの更新ステップであり、現在のlowe
r番の代表ベクトルの下位方向の隣の代表ベクトルの番
号を新しいlowerとして、ステップ(F105)へ
戻る。
Step (F107) is a step of updating the representative vector number lower, and the current lower
The number of the representative vector next to the r-th representative vector in the lower direction is set as a new lower, and the process returns to step (F105).

【0092】ステップ(F108)では、入力ベクトル
(t)とupper番の代表ベクトルwupper
(p) とのひずみd(x(t)
upper (p))の計算を行い、計算途中のd(x
(t),wupperk (p))を保存しておく。こ
のステップ(F108)では、計算したひずみd(x
(t),wupper (p))が現在の最小のひずみd
cur minより小さいか否か、すなわち、 d(x(t),wupper (p))<dcur min (16) が成り立つか否かを判定して、この(16)式が成り立
つならば、 dcur min=d(x(t),wupper (p)) (17) min=upper (18) とする。
In step (F108), the input vector
x(T)And the representative vector w of the upper numberupper
(P) And the strain d (x(T),
wupper (P)) Is calculated, and d (x
k (T), Wupperk (P)) Is saved. This
In step (F108), the calculated strain d (x
(T), Wupper (P)) Is the current minimum strain d
cur minIs smaller than, that is, d (x(T), Wupper (P)) <Dcur min It is determined whether or not (16) holds, and this (16) equation holds.
If dcur min= D (x(T), Wupper (P)(17) min = upper (18)

【0093】次のステップ(F109)では、上位方向
の探索を続けるかどうか判断する。このステップ(F1
09)では、もし、 d(x (t),wupperk (p))>dcur min (19) を満足するなら、上位方向の探索は終了で、ステップ
(F111)へ移り、さもなければ、次のステップ(F
110)へ進む。
In the next step (F109), it is determined whether to continue the search in the upper direction. This step (F1
In 09), if d (x k (t) , w upperk (p) )> d cur min (19) is satisfied, the search in the upper direction is completed, and the process proceeds to step (F111). , Next step (F
Proceed to 110).

【0094】ステップ(F110)は、代表ベクトル番
号upperの更新ステップであり、現在のupper
番の代表ベクトルの上位方向の隣の代表ベクトルの番号
を新しいupperとして、ステップ(F108)へ戻
る。
Step (F110) is a step of updating the representative vector number upper, and the current upper
The process returns to step (F108) with the number of the representative vector next to the numbered representative vector in the upper direction as a new upper.

【0095】次のステップ(F111)では、入力ベク
トルの符号化と代表ベクトルの重心計算・平均ひずみの
準備を行う。
In the next step (F111), the input vector is encoded, the center of gravity of the representative vector is calculated, and the average distortion is prepared.

【0096】このステップ(F111)において、入力
ベクトルx(t)は、最小のひずみdcur minを持
つ番号minの代表ベクトルwmin (p)に符号化さ
れる。
In this step (F111), the input vector x (t) is encoded into a representative vector w min (p) of the number min having the minimum distortion d cur min .

【0097】このステップ(F111)では、符号化さ
れた代表ベクトルminの位置を更新するステップ(F
114)において用いる分子wminnum、分母w
min den及び平均ひずみDsumの計算を次の(2
0)式、(21)及び(22)式にしたがって行ってお
く。
In this step (F111), the step of updating the position of the encoded representative vector min (F111)
114), the numerator w minnum and the denominator w
The calculation of min den and the average strain D sum is as follows (2
This is performed according to equations (0), (21) and (22).

【0098】 wminnum+=x(t) (20) wminden+=1 (21) Dsum+=dcur min (22) 次のステップ(F112)では、すべての入力ベクトル
の符号化が終了したか否かを判定する。このステップ
(F112)では、もし、t=T−1が成り立つなら
ば、ステップ(F114)へ移り、さもなければ、次の
ステップ(F113)へ進む。
W minnum + = x (t) (20) w minden + = 1 (21) D sum + = d cur min (22) In the next step (F112), encoding of all input vectors is completed. It is determined whether or not. In this step (F112), if t = T−1 holds, the process proceeds to a step (F114); otherwise, the process proceeds to the next step (F113).

【0099】ステップ(F113)では、t=t+1と
して、ステップ(F103)に戻り、次の入力ベクトル
の探索をする。
In step (F113), t = t + 1 is set, and the process returns to step (F103) to search for the next input vector.

【0100】ステップ(F114)では、代表ベクトル
の重心の計算と平均ひずみの計算を行う。このステップ
(F114)は、LBGアルゴリズムにおける代表ベク
トルの重心の更新を行うステップであり、次の(23)
式で表すことができる。
In step (F114), the center of gravity of the representative vector is calculated and the average distortion is calculated. This step (F114) is a step of updating the center of gravity of the representative vector in the LBG algorithm.
It can be represented by an equation.

【0101】[0101]

【数6】 (Equation 6)

【0102】しかし,(23)式の分子・分母の計算は
先のステップ(F111)で済んでいるので、次の(2
4)式の計算を行えばよい。
However, since the calculation of the numerator and denominator in equation (23) has been completed in the previous step (F111), the following (2)
4) The equation may be calculated.

【0103】[0103]

【数7】 (Equation 7)

【0104】また、平均ひずみDは、次の(25)式に
より計算する。
The average strain D is calculated by the following equation (25).

【0105】[0105]

【数8】 (Equation 8)

【0106】次のステップ(F115)では、収束判定
を行う。このステップ(F115)における収束判定条
件を満たさないときは、ステップ(F102)へ戻り、
収束判定条件を満たすときは、処理を終了する。
In the next step (F115), convergence determination is performed. If the convergence determination condition is not satisfied in step (F115), the process returns to step (F102),
If the convergence determination condition is satisfied, the process ends.

【0107】ここで、このステップ(F115)におけ
る収束判定条件には、次のようなものが考えられる。そ
の他のものでも構わない。
Here, the convergence determination conditions in this step (F115) may be as follows. Others may be used.

【0108】(1)代表ベクトルの更新がなくなったら
終了する。
(1) The process ends when the representative vector is no longer updated.

【0109】(2)所望の平均ひずみ以下になったら終
了する。
(2) When the average strain becomes equal to or less than the desired average strain, the process is terminated.

【0110】(3)反復回数で打ち切る。(3) Terminate at the number of repetitions.

【0111】ここで、このコードブック生成装置におけ
るベクトル量子化の符号化アルゴリズム(VQ−SS
C)の動作について、例題を用いて説明する。
Here, the coding algorithm (VQ-SS) for vector quantization in this codebook generating apparatus is used.
The operation of C) will be described using an example.

【0112】この例題では、ひずみ測度として二乗誤差
ひずみ測度を用いている。
In this example, a square error distortion measure is used as the distortion measure.

【0113】 d(x,w)=(x−w) (26) 当然、このほかのひずみ測度を用いた場合も、本発明は
有効である。また、次元ごとに違うひずみ測度を用いた
ときも、本発明は有効である。
D (x, w) = (x−w) 2 (26) Naturally, the present invention is also effective when other strain measures are used. The present invention is also effective when a different strain measure is used for each dimension.

【0114】3次元の入力ベクトルx=(12,16,
13)に対して、従来どおりすべての代表ベクトルに対
してひずみを計算し、ベクトル量子化(符号化)される
代表ベクトルを求めた例を図3に示す。この場合、12
個の代表ベクトルに対してひずみを計算しないと、符号
化される代表ベクトルが決まらない。今回の例題では、
最小ひずみ8を持つ9番の代表ベクトルw=(14,
18,3)に符号化される。
A three-dimensional input vector x = (12,16,
FIG. 3 shows an example in which the distortion is calculated for all the representative vectors as in the conventional method, and the representative vectors to be subjected to vector quantization (encoding) are obtained. In this case, 12
If distortion is not calculated for the representative vectors, the representative vector to be encoded cannot be determined. In this example,
The 9th representative vector w 9 = (14,
18, 3).

【0115】これに対して、このコードブック生成装置
におけるベクトル量子化の符号化アルゴリズムでは、k
=1に対して代表ベクトルをソートしてある。わかりや
すいようにソートした順に代表ベクトルの番号をつけた
状態にしてある。実際は、わざわざ代表ベクトルの番号
をつけ直す必要ななく、自分の代表ベクトルの両隣(上
位方向・下位方向)の代表ベクトルの番号を保存するよ
うにプログラムすればよい。
On the other hand, in the coding algorithm of vector quantization in this codebook generating apparatus, k
The representative vectors are sorted for = 1. The representative vectors are numbered in the sorted order for easy understanding. Actually, it is not necessary to renumber the representative vectors, and the program may be programmed to save the numbers of the representative vectors on both sides (upper direction / lower direction) of the own representative vector.

【0116】もし、符号化される代表ベクトルが事前に
わかっているならば、最小ひずみが8なので、√8以下
の最大整数である2以下の範囲を探索すればよい。図3
から、1次元で12±2となる代表ベクトルは、
(7),(8),(9)番の3個の代表ベクトルだけを
調べればよい。
If the representative vector to be encoded is known in advance, since the minimum distortion is 8, a range of 2 or less, which is the maximum integer of √8 or less, may be searched. FIG.
From this, the representative vector that becomes 12 ± 2 in one dimension is
Only the three representative vectors (7), (8) and (9) need to be examined.

【0117】しかし、事前に符号化される代表ベクトル
がわかるはずがないので、次のようなアルゴリズム(探
索0〜探索6)を用いて探索をすることになる。
However, since the representative vector to be encoded cannot be known in advance, the search is performed using the following algorithm (search 0 to search 6).

【0118】すなわち、探索0では、図4に示すよう
に、初期の代表ベクトルを(7)番の代表ベクトルと
し、ひずみd(x,w)を計算する。
That is, in search 0, as shown in FIG. 4, the initial representative vector is set to the (7) th representative vector, and the distortion d (x, w 7 ) is calculated.

【0119】d(x,w)=17 lower=6 upper=8 そして、最小のひずみdcur min=17とその代表
ベクトルの番号min=7を保存保存する。
D (x, w 7 ) = 17 lower = 6 upper = 8 Further, the minimum distortion d cur min = 17 and the number min = 7 of its representative vector are stored and stored.

【0120】探索1では、図5に示すように、lowe
r(6)番の代表ベクトルのひずみd(x,w
lower)を計算する。
In search 1, as shown in FIG.
The distortion d (x, w) of the representative vector of r (6)
lower ).

【0121】d(x,wlower1)=9 d(x,wlower)=189 そして、d(x,wlower)と現在の最小のひずみ
cur minとを比較すると、d(x,
lower)はdcur minよりも大きいので、最
小のひずみdcur minはそのままの値すなわち dcur min=17 min=7 を保持する。また、d(x ,wlower1)は現
在の最小のひずみdcu minよりも小さいので、次
のlower=5の探索2に移る。
D (x 1 , w lower 1 ) = 9 d (x, w lower ) = 189 Then, when d (x, w lower ) is compared with the current minimum distortion d cur min , d (x, w lower )
Since w lower ) is greater than d cur min , the minimum distortion d cur min retains its value, that is, d cur min = 17 min = 7. Also, d (x 1, w lower1 ) because the current minimum of less than the strain d cu r min, moves to explore 2 of the next lower = 5.

【0122】次の探索2では、図6に示すように、lo
wer(5)番の代表ベクトルのひずみd(x,w
lower)を計算する。
In the next search 2, as shown in FIG.
The distortion d (x, w) of the representative vector of the wer (5)
lower ).

【0123】d(x,wlower1)=9 d(x,wlower)=14 そして、d(x,wlower)と現在の最小のひずみ
cur minとを比較すると、d(x,
lower)はdcur minよりも小さいので、最
小のひずみdcur minを更新して dcur min=14 min=5 とする。また、d(x,wlower1)はdcur
min=14よりも小さいので、次のlower=4の
探索3に移る。
D (x 1 , w lower1 ) = 9 d (x, w lower ) = 14 Then, when d (x, w lower ) is compared with the current minimum distortion d cur min , d (x, w lower 1 )
Since w lower ) is smaller than d cur min , the minimum distortion d cur min is updated to d cur min = 14 min = 5. D (x 1 , w lower1 ) is d cur
Since it is smaller than min = 14, the process moves to the next search 3 of lower = 4.

【0124】探索3では、図7に示すように、lowe
r(4)番の代表ベクトルのひずみを計算を行う。
In search 3, as shown in FIG.
The distortion of the representative vector of r (4) is calculated.

【0125】d(x,wlower1)=16 d(x,wlower)=186 そして、d(x,wlower)と現在の最小のひずみ
cur minとを比較すると、d(x,
lower)はdcur minよりも大きいので、最
小のひずみdcur minはそのままの値すなわち dcur min=14 min=5 を保持する。また、d(x,wlower1)はd
cur min=14よりも大きいので、下位方向の探索
は終了し、次にupper=8の上位方向の探索4に移
る。
D (x 1 , w lower1 ) = 16 d (x, w lower ) = 186 Then, when d (x, w lower ) is compared with the current minimum distortion d cur min , d (x, w lower 1 )
Since w lower ) is greater than d cur min , the minimum distortion d cur min retains its value, that is, d cur min = 14 min = 5. D (x 1 , w lower1 ) is d
Since it is larger than cur min = 14, the search in the lower direction ends, and the process then proceeds to search 4 in the upper direction with upper = 8.

【0126】探索4では、図8に示すように、uppe
r(8)番の代表ベクトルのひずみを計算する。
In search 4, as shown in FIG.
The distortion of the representative vector of r (8) is calculated.

【0127】d(x,wupper1)=1 d(x,wupper)=46 そして、d(x,wupper)と現在の最小のひずみ
cur minとを比較すると、d(x,
lower)はdcur minよりも大きいので、最
小のひずみdcur minはそのままの値すなわち dcur min=14 min=5 を保持する。また、d(x,wupper1)はd
cur min=14よりも小さいので、次のupper
=9の探索5に移る。
[0127] d (x 1, w upper1) = 1 d (x, w upper) and = 46, d (x, w upper) if the comparing the current minimum distortion d cur min, d (x,
Since w lower ) is greater than d cur min , the minimum distortion d cur min retains its value, that is, d cur min = 14 min = 5. D (x 1 , w upper1 ) is d
Since cur min = 14, the next upper
Move to search 5 where = 9.

【0128】探索5では、図9に示すように、uppe
r(9)番の代表ベクトルのひずみを計算する。
In search 5, as shown in FIG.
The distortion of the r (9) -th representative vector is calculated.

【0129】d(x,wupper1)=4 d(x,wupper)=8 そして、d(x,wupper)と現在の最小のひずみ
cur minとを比較すると、d(x,
lower)はdcur minよりも小さいので、最
小のひずみdcur minを更新して、 dcur min=8 min=9 とする。また、d(x,wupper1)はdcur
min=9よりも小さいので、次のuppe0の探索6
に移る。
D (x 1 , w upper 1 ) = 4 d (x, w upper ) = 8 Then, when d (x, w upper ) is compared with the current minimum distortion d cur min , d (x, w upper )
Since w lower ) is smaller than d cur min , the minimum distortion d cur min is updated so that d cur min = 8 min = 9. D (x 1 , w upper1 ) is d cur
Since min = 9, the search 6 for the next up0
Move on to

【0130】探索6では、図10に示すように、upp
er(10)番の代表ベクトルのひずみを計算する。
In search 6, as shown in FIG.
The distortion of the representative vector of er (10) is calculated.

【0131】d(x,wupper1)=9 d(x,wupper)=41 そして、d(x,wupper)と現在の最小のひずみ
cur minとを比較すると、d(x,
lower)はdcur minよりも大きいので、最
小のひずみdcur minはそのままの値すなわち dcur min=8 min=9 を保持する。また、d(x,wupper1)はd
cur min=9よりも大きいので、上位方向の探索終
了する。
D (x 1 , w upper 1 ) = 9 d (x, w upper ) = 41 Then, when d (x, w upper ) is compared with the current minimum distortion d cur min , d (x, w upper )
Since w lower ) is greater than d cur min , the minimum distortion d cur min retains its value, that is, d cur min = 8 min = 9. D (x 1 , w upper1 ) is d
Since it is larger than cur min = 9, the search in the upper direction ends.

【0132】このようにして下位方向、上位方向、両方
とも探索を終了し、最終的に得られた最小のひずみd
cur min=8をもつmin=9番の代表ベクトルが
入力ベクトルx=(12,16,13)に対する符号化
される代表ベクトルである。
The search in both the lower direction and the upper direction is completed in this way, and the finally obtained minimum distortion d
The min = 9 representative vector with cur min = 8 is the representative vector to be encoded for the input vector x = (12,16,13).

【0133】ここで、図11より、あらかじめ符号化さ
れる代表ベクトルがわかっている場合は3個の代表ベク
トルを探索すれば十分であるが、一般には無理なので初
期代表ベクトルを決めて探索する必要がある。今回の場
合、最小ひずみを更新しながら探索したので、7個の代
表ベクトルを探索することで最小のひずみを持つ代表ベ
クトルを得ることができた。これが階調変換では,代表
ベクトルの数が256個あるので、探索範囲を大幅に制
限することが期待できる。
Here, from FIG. 11, if the representative vector to be coded is known in advance, it is sufficient to search for three representative vectors. However, since it is generally impossible, it is necessary to determine and search for an initial representative vector. There is. In this case, since the search was performed while updating the minimum distortion, a representative vector having the minimum distortion could be obtained by searching for seven representative vectors. In the gradation conversion, since the number of representative vectors is 256, it can be expected that the search range is greatly limited.

【0134】また、本発明は、ひずみの部分和を用いた
高速化手法を組み合わせるとより一層の効果がある。ひ
ずみの部分和を用いた高速化手法は、次の(27)式で
示されるひずみの部分和が現在の最小のひずみdcur
minと比較して大きいときは、次の代表ベクトルを探
索する。すなわち、ひずみを最後まで求めるのではな
く、計算途中のひずみと現在の最小のひずみを比較する
ことで探索の効率をあげる手法である。
Further, the present invention is more effective when a high-speed technique using a partial sum of distortions is combined. In the high-speed technique using the partial sum of the distortion, the partial sum of the distortion represented by the following expression (27) is equal to the current minimum distortion d cur.
If it is larger than min , the next representative vector is searched. In other words, it is a method of increasing the efficiency of the search by comparing the strain in the middle of calculation with the current minimum strain, instead of finding the strain to the end.

【0135】[0135]

【数9】 (Equation 9)

【0136】このひずみの部分和を用いた高速化手法
は、文献[Bei C-D. & Gray, R. M..“An improvement
of minimum distortion encoding algorithm for vecto
r quantization.” IEEE Transactions on Communicati
ons, COM-33, pp.1132-1133,1985.]に詳述されてい
る。
A high-speed technique using the partial sum of distortions is described in the literature [Bei CD. & Gray, RM.
of minimum distortion encoding algorithm for vecto
r quantization. ”IEEE Transactions on Communicati
ons, COM-33, pp. 1132-1133, 1985].

【0137】ここでは、上述の図1に示したコードブッ
ク生成装置の変形例として、図12を参照して差分のみ
を説明する。
Here, only a difference will be described with reference to FIG. 12 as a modification of the above-described codebook generating apparatus shown in FIG.

【0138】図12に示すコードブック生成装置’にお
いて、コードブックメモリ130は、コードブックとア
ドレスをソーティング装置120に渡す。
In the code book generating apparatus shown in FIG. 12, the code book memory 130 passes the code book and the address to the sorting apparatus 120.

【0139】ソーティング装置120は、制御装置17
0からのソートの指示とどの次元kを基準としてソート
するかの指示を受け、コードブックメモリ130からコ
ードブックのアドレスとコードブックを読み出し、指定
された次元を基準としてコードブックをソートする。そ
して、そのソートされた代表ベクトルの順番通りに、各
代表ベクトルのアドレスを並び替え、ソート順に並んだ
アドレスをコードブックソート表180に書き込む。
[0139] Sorting device 120 is controlled by control device 17.
Upon receiving a sort instruction from 0 and an instruction on which dimension k is to be sorted, the code book address and the code book are read from the code book memory 130, and the code book is sorted based on the designated dimension. Then, the addresses of the representative vectors are rearranged in the order of the sorted representative vectors, and the addresses arranged in the sorted order are written in the codebook sort table 180.

【0140】第1の演算装置140は、判定装置150
から、判定結果により探索する代表ベクトルの方向を示
すup/downの情報を受け、次の探索する代表ベク
トルのアドレスをコードブックソート表180に参照し
に行き、アドレスを受け取る。そして、コードブックメ
モリ130に、そのアドレスを指定して、対応するデー
タ(代表ベクトルの番号iと値w (p)など)を読み
込む。
The first arithmetic unit 140 includes a judging device 150
, Receives up / down information indicating the direction of the representative vector to be searched based on the determination result, refers to the codebook sort table 180 for the address of the next representative vector to be searched, and receives the address. Then, the address is designated and the corresponding data (representative vector number i and value w i (p), etc.) is read into the code book memory 130.

【0141】そして、コードブックソート表180は、
ソーティング装置120から受け取ったアドレスを格納
する。また、コードブックソート表180は第1の、演
算装置140からの次の探索する代表ベクトルの参照の
指示に従って、その代表ベクトルのアドレスを第1の演
算装置140に渡す。
The codebook sort table 180 is
The address received from the sorting device 120 is stored. Further, the codebook sort table 180 passes the address of the representative vector to the first arithmetic unit 140 in accordance with the first instruction from the arithmetic unit 140 to refer to the next representative vector to be searched.

【0142】ここで、次の文献には、[Gersho,A..“Asy
mptotically optimal block quantization."IEEE Trans
actions on Information Theory,25,pp.373-380,197
9.]、[Yamada, Y., Tazaki, S. & Gray, R. M..“Asymp
totic performance of block quantizers with differe
nce distortion measures." IEEE Transactions on Inf
ormation Theory},26, pp.6-14, 1980.]、[Ueda, N., &
Nakano, R..“A new competitive learning approach
based on an equidistortion principle for designing
optimal vector quantizers." Neural Networks,7, p
p.1211-1227, 1994.]等には、ベクトル量子化の理論的
な研究から、ひずみ測度に次の式28で示されるユーク
リッド(l)ノルムのr乗を用いた場合の大域的最適
解の必要条件である等ひずみ原理が示されている。
Here, [Gersho, A .. “Asy”
mptotically optimal block quantization. "IEEE Trans
actions on Information Theory, 25, pp. 373-380, 197
9.], [Yamada, Y., Tazaki, S. & Gray, RM.
totic performance of block quantizers with differe
nce distortion measures. "IEEE Transactions on Inf
ormation Theory}, 26, pp. 6-14, 1980.], [Ueda, N., &
Nakano, R .. “A new competitive learning approach
based on an equidistortion principle for designing
optimal vector quantizers. "Neural Networks, 7, p
p.1211-1227, 1994.], etc., from a theoretical study of vector quantization, the global optimum when the Euclidean (l 2 ) norm represented by the following equation 28 is used as the r-th power is used for the distortion measure. The equal strain principle, which is a necessary condition of the solution, is shown.

【0143】[0143]

【数10】 (Equation 10)

【0144】多数の代表ベクトルに対して、入力空間の
確率分布が多数の互いに素のクラスタから構成されてい
るとき、最小の平均ひずみとなるベクトル量子化器にお
ける代表ベクトルの配置は、各代表ベクトルの部分ひず
みが互いに等しくなるように配置された状態になる。
When the probability distribution of the input space is composed of a large number of disjoint clusters with respect to a large number of representative vectors, the arrangement of the representative vectors in the vector quantizer which has the minimum average distortion is as follows. Are arranged so that their partial strains are equal to each other.

【0145】i番目の代表ベクトルの部分ひずみD
は,次の(29)式を用いて計算する。
The partial distortion D i of the i-th representative vector
Is calculated using the following equation (29).

【0146】[0146]

【数11】 [Equation 11]

【0147】ただし、δitはクロネッカーのデルタで
あり、代表ベクトルiが最も小さいひずみを持つとき1
となる。
Here, δ it is Kronecker's delta, and is 1 when the representative vector i has the smallest distortion.
Becomes

【0148】等ひずみ原理の簡単な例を図13に示す。
黒丸は代表ベクトルであり、点線はボロノイ領域であ
る。入力ベクトルが二つの正方形のクラスタから一様に
生起する問題に対する代表ベクトルの最適な配置であ
る。そのとき,各代表ベクトルの部分ひずみは等しい状
態になっている。
FIG. 13 shows a simple example of the principle of equal distortion.
Black circles are representative vectors, and dotted lines are Voronoi regions. This is the optimal arrangement of representative vectors for a problem where the input vector arises uniformly from two square clusters. At that time, the partial distortion of each representative vector is in the same state.

【0149】上述の如くLBGアルゴリズムや競合学習
は降下法であるため、コードブックが大域的最小値の近
くに配置されたとき大域的最小値を見つけることができ
る。そこで、本発明では、代表ベクトルの配置を等ひず
み原理で示される配置の近傍に設定することで最適な配
置が得られる可能性が高まることに着目し、あらかじ
め、代表ベクトルを部分ひずみが等しいような配置の近
傍に配置することは困難であるので、更新中に部分ひず
みが等しくなるように代表ベクトルを移動させる。
As described above, since the LBG algorithm and the competitive learning are descent methods, the global minimum can be found when the codebook is arranged near the global minimum. In view of this, the present invention focuses on increasing the possibility that an optimal arrangement can be obtained by setting the arrangement of the representative vectors near the arrangement indicated by the equal distortion principle. Since it is difficult to place the representative vector in the vicinity of the optimal layout, the representative vector is moved so that the partial distortions become equal during updating.

【0150】そこで、本発明では、等ひずみ原理に基づ
いたMin-Max Order Compare(MMOC)操作を加えたLBG
アルゴリズムを提案する。MMOC操作は、更新中に部
分ひずみを計算し、部分ひずみのばらつきを減少させる
ように代表ベクトルを再配置する。MMOC操作により
各代表ベクトルの部分ひずみを互いに等しい状態に近づ
けることができる。
Therefore, in the present invention, an LBG having a Min-Max Order Compare (MMOC) operation based on the equal distortion principle is added.
We propose an algorithm. The MMOC operation calculates the partial distortion during the update and rearranges the representative vectors to reduce the variation of the partial distortion. By the MMOC operation, it is possible to make the partial distortions of the representative vectors close to each other.

【0151】例えば図14に示すような構成のコードブ
ック生成装置200により、VQ−SSCによる符号化
を利用したMMOC操作を加えたLBGアルゴリズムを
実行することができる。
For example, the codebook generating apparatus 200 having a configuration as shown in FIG. 14 can execute an LBG algorithm to which an MMOC operation using VQ-SSC encoding is added.

【0152】図14に示すコードブック生成装置200
は、入力ベクトル集合メモリ210、ソーティング装置
220、コードブックメモリ230、第1の演算装置2
40、判定装置250、第2の演算装置260、部分ひ
ずみソーティング装置262、部分ひずみ比較装置26
4、代表ベクトル移動装置266及び制御装置270か
ら構成される。
A code book generating apparatus 200 shown in FIG.
Are the input vector set memory 210, the sorting device 220, the codebook memory 230, the first arithmetic device 2
40, determination device 250, second arithmetic device 260, partial strain sorting device 262, partial strain comparison device 26
4. It comprises a representative vector moving device 266 and a control device 270.

【0153】このコードブック生成装置200におい
て、入力ベクトル集合メモリ210は、入力ベクトル集
合X=(x(t)∈R:t=0,・・・,T−1)を
記憶しておくメモリであり、第1の演算装置240から
アドレスの指定をうけ、対応する入力ベクトルx(t)
と初期代表ベクトルの番号を第1の演算装置240に渡
す。また、入力ベクトル集合メモリ210は、判定装置
250から、入力ベクトルx(t)の初期代表ベクトル
の番号minを受け取り、格納する。
[0153] In this codebook generator 200, the input vector set memory 210, an input vector set X =: Memory (x (t) ∈R K t = 0, ···, T-1) stores the , The address is specified by the first arithmetic unit 240, and the corresponding input vector x (t)
And the number of the initial representative vector are passed to the first arithmetic unit 240. Further, the input vector set memory 210 receives the number min of the initial representative vector of the input vector x (t) from the determination device 250 and stores it.

【0154】ソーティング装置220は、制御装置27
0からのソートの指示とどの次元kを基準としてソート
するかの指示を受け、コードブックメモリ230からコ
ードブックを読み出し、指定された次元を基準としてコ
ードブックをソートする。また、ソーティング装置22
0は、ソートしたコードブックをコードブックメモリ2
30の指定したアドレスに書き込む。
The sorting device 220 includes the control device 27
Upon receiving a sorting instruction from 0 and an instruction on which dimension k is to be sorted, the code book is read from the code book memory 230, and the code book is sorted based on the specified dimension. Also, the sorting device 22
0 indicates the sorted code book is stored in the code book memory 2
Write to the specified 30 addresses.

【0155】コードブックメモリ230は、コードブッ
クW(p)={w (p)∈R:i=0,・・・,N
−1}を記憶しておくメモリであり、ひずみ計算・アド
レス計算を行う第1の演算装置240からアドレスを受
け取り、対応する代表ベクトルのデータ(代表ベクトル
の値w (p),番号i)を第1の演算装置240に渡
す。また、このコードブックメモリ230は、代表ベク
トル移動装置266から、データ(更新されたコードブ
ックW(p+1)と書き込むアドレス)を受け取り、対
応するアドレスに更新されたコードブックが書き込まれ
る。また、コードブックメモリ230は、コードブック
をソーティング装置220に渡す。さらに、コードブッ
クメモリ230は、ソーティング装置220によりソー
トされたコードブックと書き込むアドレスを受け取り、
指定されたアドレスにコードブックを格納する。
[0155] codebook memory 230, the codebook W (p) = {w i (p) ∈R K: i = 0, ···, N
-1} is a memory that receives an address from the first arithmetic unit 240 that performs distortion calculation and address calculation, and corresponding representative vector data (representative vector value w i (p) , number i) To the first arithmetic unit 240. In addition, the codebook memory 230 receives data (an address to be written with the updated codebook W (p + 1)) from the representative vector moving device 266, and writes the updated codebook to the corresponding address. Further, the codebook memory 230 transfers the codebook to the sorting device 220. Further, the code book memory 230 receives the code book sorted by the sorting device 220 and the address to be written,
Store the codebook at the specified address.

【0156】第1の演算装置240は、入力ベクトル集
合メモリ210にアドレスを指定して、対応する入力ベ
クトルx(t)と初期代表ベクトルの番号を受け取る。
また、第1の演算装置240は、制御装置270からひ
ずみ・アドレスの計算の指示を受け、コードブックメモ
リ230に読み込みたい代表ベクトルのアドレスを指定
して、対応するデータ(代表ベクトルの値w (p)
番号iなど)を読み込む。また、第1の演算装置240
は、入力ベクトルと代表ベクトルとのひずみd(x
(t),w (p))を計算する。そして、第1の演算
装置240は、ひずみd(x(t),w (p))とデ
ータ(代表ベクトルの番号と値)を判定装置250に渡
す。また、第1の演算装置240は、制御装置270か
らソートの基準となった次元kの指示を受け、k次元だ
けのひずみd(x (t) ,wik (p))も判定装
置250に渡す。さらに、第1の演算装置240は、判
定装置250から、判定結果により探索する代表ベクト
ルの方向を示すup/downの情報を受け、次の探索
する代表ベクトルのアドレスを計算する。なお、第1の
演算装置240は、探索終了を示す情報finishを受けた
場合は、次の入力ベクトルx(t+1)の符号化に取り
かかる。
The first arithmetic unit 240 has a set of input vectors.
Designate an address in the integration memory 210, and
Kutor x(T)And the number of the initial representative vector.
Further, the first arithmetic unit 240 receives a signal from the control unit 270.
Receiving instructions for calculating addresses and addresses, codebook memo
Specify the address of the representative vector you want to read into the library 230
And the corresponding data (representative vector value wi (P),
Number i). Also, the first arithmetic unit 240
Is the distortion d (x
(T), Wi (P)) Is calculated. And the first operation
The device 240 has a strain d (x(T), Wi (P)) And de
Data (representative vector number and value) to the determination device 250
You. Also, the first arithmetic unit 240
Received the instruction of dimension k, which was the reference for sorting, and k dimensions
Injury strain d (xk (T) , Wik (P)) Also judge
Hand over to device 250. Further, the first arithmetic unit 240
Representative vector to be searched from the determination device 250 based on the determination result.
The next search is received upon receiving up / down information indicating the direction of the file.
The address of the representative vector to be calculated is calculated. Note that the first
Arithmetic unit 240 receives information finish indicating the end of the search
Then the next input vector x(T + 1)Encoding
Take it.

【0157】判定装置250は、現在の最小のひずみd
cur minとその代表ベクトルの番号minを保持し
ており、現在の最小のひずみdcur minをもつmi
n番の代表ベクトルと第1の演算装置240により計算
されたi番の代表ベクトルについてひずみd
(x(t),w (p))を比較し、ひずみが小さい方
を新しいmin番、現在の最小のひずみdcur min
とする。また、判定装置250は、制御装置270から
判定の指示を受け、k次元だけのひずみd
(x (t),wik (p))と現在の最小のひずみd
cur minを比較し、d(x (t ,wik
(p))の方が大きければ、次に探索する代表ベクトル
の方向を示すup/downの情報を変更し、また、u
p/down両方向とも調べ終わった場合には探索終了
を示す情報finishを第1の演算装置240に渡し、d
(x (t) ,wik (p))の方が小さければ、同
方向の次の代表ベクトルを調べる情報を第1の演算装置
240に渡す。また、判定装置250は、up/dow
n両方向とも調べ終わり探索終了finishになったとき、
第2の演算装置260に入力ベクトルx(t)、現在の
最小のひずみを持つ初期代表ベクトルの番号min及び
最小のひずみdcur minを出力する。さらに、判定
装置250は、探索終了finishになったとき、現在の最
小のひずみを持つ初期代表ベクトルの番号minを入力
ベクトルx(t)の初期代表ベクトルとして入力ベクト
ル集合メモリ210に格納する。
The determination device 250 determines the current minimum distortion d.
cur minAnd the representative vector number min
And the current minimum strain dcur minMi with
Calculated by the n-th representative vector and the first arithmetic unit 240
Distortion d for the i-th representative vector
(X(T), Wi (P)), The smaller the strain
Is the new min number, the current minimum strain dcur min
And Also, the determination device 250
In response to the instruction of the judgment, distortion d of only k dimensions
(Xk (T), Wik (P)) And the current minimum strain d
cur minAnd d (xk (T ) , Wik
(P)) Is larger, the next representative vector to search
Of up / down indicating the direction of
When both p / down directions have been checked, search ends
Is passed to the first computing device 240, and d
(Xk (T) , Wik (P)) Is smaller if
Information for examining the next representative vector in the direction is stored in a first arithmetic unit
Pass it to 240. Further, the determination device 250 determines whether the up / down
n When both directions are checked and the search is finished,
Input vector x to second arithmetic unit 260(T), Current
The initial representative vector numbers min and
Minimum strain dcur minIs output. Furthermore, judgment
The device 250, when the search end finish is reached,
Enter the number min of the initial representative vector with small distortion
Vector x(T)Input vector as the initial representative vector of
Stored in the file set memory 210.

【0158】第2の演算装置260は、判定装置250
から、入力ベクトルx(t) と符号化された代表ベク
トルの番号minと入力ベクトルを符号化したときのひ
ずみdcur minを受け取る。そして、この第2の演
算装置260は、代表ベクトル番号minに対応するデ
ータ(分子wminnumと分母wminden、さら
に部分ひずみDsum)の計算を次の(30)式、(3
1)及び(32)式にしたがって行う。
The second arithmetic unit 260 is provided with a judgment unit 250
Receives the input vector x (t) , the encoded representative vector number min, and the distortion d cur min when the input vector is encoded. Then, the second arithmetic unit 260 calculates the data (numerator w minnum and denominator w minden , and partial strain D sum ) corresponding to the representative vector number min by using the following equation (30):
This is performed according to equations (1) and (32).

【0159】 wminnum+=x(t) (30) wminden+=1 (31) Dminsum+=dcur min (32) また、この第2の演算装置260は、T個の入力ベクト
ルに対して、符号化が終了し、上記途中計算が終了した
と制御装置270から指示を受けたら、符号化が終了
し、上記途中計算が終了したと制御装置270から指示
を受けたら、代表ベクトル重心w (p+1)、部分ひ
ずみD及び平均ひずみDの計算を次の(33)式、
(34)及び(35)式にしたがって行う。
W minnum + = x (t) (30) w minden + = 1 (31) D minsum + = d cur min (32) In addition, the second arithmetic unit 260 operates on T input vectors. Then, when the controller 270 receives an instruction that the encoding has been completed and the intermediate calculation has been completed, the encoding has been completed and the instruction has been received from the controller 270 that the intermediate calculation has been completed. i (p + 1) , the partial strain D i and the average strain D are calculated by the following equation (33):
This is performed according to the equations (34) and (35).

【0160】[0160]

【数12】 (Equation 12)

【0161】さらに、この第2の演算装置260は、制
御装置270により、全てのデータ(分子winum
分母widen、さらに部分ひずみDisum,∀i)
をクリアする。
[0161] Further, the second arithmetic unit 260, the control unit 270, all the data (molecular w inum and denominator w iden, further partial distortion D isum, ∀i)
Clear

【0162】部分ひずみソーティング装置262は、第
2の演算装置260からデータ(更新されたコードブッ
クと部分ひずみ)をもらう。この部分ひずみソーティン
グ装置262は、部分ひずみの大きさを基準にして、コ
ードブックと部分ひずみをソートする。また、この部分
ひずみソーティング装置262は、部分ひずみ比較装置
264に、データ(ソートされたコードブックと部分ひ
ずみ)を渡す。
The partial distortion sorting device 262 receives data (updated codebook and partial distortion) from the second arithmetic unit 260. The partial strain sorting device 262 sorts the codebook and the partial strain based on the magnitude of the partial strain. Further, the partial strain sorting device 262 passes the data (the sorted codebook and the partial strain) to the partial strain comparison device 264.

【0163】部分ひずみ比較装置264は、部分ひずみ
ソーティング装置262から、データ(ソートされたコ
ードブックと部分ひずみ)をもらう。この部分ひずみ比
較装置264は、大きい部分ひずみと小さい部分ひずみ
を比較する。格差が大きい場合は、代表ベクトル移動装
置266に小さい部分ひずみを持つ代表ベクトルを大き
い部分ひずみを持つ代表ベクトルの近傍に移動させる情
報を渡す。さらに、データ(上記移動情報とコードブッ
ク)を代表ベクトル移動装置266に渡す。
The partial distortion comparing device 264 receives data (sorted codebook and partial distortion) from the partial distortion sorting device 262. This partial strain comparison device 264 compares a large partial strain with a small partial strain. When the disparity is large, information for moving the representative vector having the small partial distortion to the vicinity of the representative vector having the large partial distortion is passed to the representative vector moving device 266. Further, the data (the above-mentioned movement information and codebook) is passed to the representative vector moving device 266.

【0164】代表ベクトル移動装置266は、部分ひず
み比較装置264から、小さい部分ひずみを持つ代表ベ
クトルを大きい部分ひずみを持つ代表ベクトルの近傍に
移動させる情報とコードブックを受け取る。この代表ベ
クトル移動装置266は、上記移動情報に基づいて、小
さい部分ひずみを持つ代表ベクトルを大きい部分ひずみ
を持つ代表ベクトルの近傍に移動させる。そして、この
代表ベクトル移動装置266は、コードブックメモリ2
30にデータ(更新されたコードブックW(p +1)
と書き込むアドレスを渡し、対応するアドレスに更新さ
れたコードブックを書き込む。さらに、この代表ベクト
ル移動装置266は、制御装置270からの指示で、任
意の初期コードブックをコードブックメモリ230に設
定する。
The representative vector moving device 266 receives, from the partial distortion comparing device 264, information and a codebook for moving the representative vector having the small partial distortion to the vicinity of the representative vector having the large partial distortion. The representative vector moving device 266 moves the representative vector having the small partial distortion to the vicinity of the representative vector having the large partial distortion based on the movement information. The representative vector moving device 266 stores the codebook memory 2
Data in 30 (updated codebook W (p + 1) )
And write the updated codebook to the corresponding address. Further, the representative vector moving device 266 sets an arbitrary initial codebook in the codebook memory 230 according to an instruction from the control device 270.

【0165】制御装置270は、ソーティング装置22
0、第1の演算装置240、判定装置250、第2の演
算装置260、部分ひずみソーティング装置262、部
分ひずみ比較装置264及び代表ベクトル移動装置26
6の処理フローを制御する。また、制御装置270は、
ソーティング装置220にソートの基準となる次元を指
定する。また、制御装置270は、第1の演算装置24
0に初期代表ベクトルのアドレス(又は番号)を指定
し、また、ソートの基準となった次元を指示する。さら
に、制御装置270は、第2の演算装置260に任意の
初期コードブックの設定を指示する。
The control device 270 includes the sorting device 22
0, first computing device 240, determining device 250, second computing device 260, partial strain sorting device 262, partial strain comparing device 264, and representative vector moving device 26
6 is controlled. Also, the control device 270
A dimension serving as a reference for sorting is designated to the sorting device 220. Further, the control device 270 controls the first arithmetic device 24
The address (or number) of the initial representative vector is designated as 0, and the dimension used as the reference for sorting is designated. Further, control device 270 instructs second arithmetic device 260 to set an arbitrary initial codebook.

【0166】このような構成のコードブック生成装置2
00において、本発明では、等ひずみ原理に基づいたMi
n-Max Order Compare(MMOC) 操作を加えたLBGアルゴ
リズムにより図15に示すフローチャートにしたがって
コードブック生成を行う。
The code book generating apparatus 2 having such a configuration
In the present invention, in the present invention, Mi
A codebook is generated according to a flowchart shown in FIG. 15 by an LBG algorithm to which an n-Max Order Compare (MMOC) operation is added.

【0167】すなわち、このベクトル量子化器200で
は、先ず、ステップ(F201)において、代表ベクト
ル初期配置を設定する。また、代表ベクトルをソートす
るための基準の次元kを指定する。さらに、MMOC操
作のパラメータR,mを設定する。
That is, in the vector quantizer 200, first, in step (F201), a representative vector initial arrangement is set. Also, a reference dimension k for sorting the representative vectors is specified. Further, parameters R and m of the MMOC operation are set.

【0168】次のステップ(F202)では、次元kの
代表ベクトルの値に基づいて代表ベクトルをソートす
る。ソートされた順番の情報については,以下の2通り
のやり方が考えられる。
In the next step (F202), the representative vectors are sorted based on the value of the representative vector of dimension k. The information in the sorted order can be considered in the following two ways.

【0169】(1)直接代表ベクトルの順番を入れ替え
てしまう。代表ベクトルの番号を変更したくないとき
は、代表ベクトルの番号の情報を持つ構造体にして入れ
替える。直接ならべ変えているので、自分より下位の代
表ベクトルの番号lowerは、自分の配列の番号−1
とした配列の番号となる。また、自分より上位の代表
ベクトルの番号upperは、自分の配列の番号+1と
した配列の番号となる。
(1) The order of the representative vectors is directly changed. If it is not desired to change the number of the representative vector, the structure is replaced with a structure having information on the number of the representative vector. Since the numbers are directly changed, the number lower of the representative vector lower than the own is the number-1 of the own array.
And the sequence number. Also, the number upper of the representative vector higher than the own is the array number obtained by adding +1 to the array number of the own.

【0170】(2)ソートしたときの順番を示す配列を
用意する場合、各代表ベクトルが保持すべき情報は、自
分より下位の代表ベクトルの番号lowerと、自分よ
り上位の代表ベクトルの番号upperである。
(2) When an array indicating the order of sorting is prepared, the information to be held by each representative vector is represented by the lower number of the representative vector lower than the own and the upper number of the representative vector higher than the own. is there.

【0171】次のステップ(F203)では、入力ベク
トルx(t)と初期の代表ベクトルw (p)とのひず
みの計算を行い、このひずみd(x(t)
(p))を現在の最小のひずみdcur min
し、番号iを符号化の候補として保存しておく。
In the next step (F203), the distortion between the input vector x (t) and the initial representative vector w i (p) is calculated, and the distortion d (x (t) ,
and w i (p)) of the current minimum distortion d cur min, keep the number i as a candidate for coding.

【0172】 dcur min=d(x(t),w (p)) (36) min=i (37) 次のステップ(F204)では、初期の代表ベクトルw
(p) の両隣の代表ベクトルの番号、すなわち、 lower=下位方向の隣の代表ベクトルの番号 upper=上位方向の隣の代表ベクトルの番号 を保存する。
[0172] d cur min = d (x ( t), w i (p)) (36) min = i (37) In the next step (F 204), the initial representative vectors w
The number of the representative vector on both sides of i (p) , that is, lower = the number of the next representative vector in the lower direction upper = the number of the next representative vector in the upper direction

【0173】次のステップ(F205)では、入力ベク
トルx(t)と代表ベクトルwlo wer (p)とのひ
ずみd(x(t),wlower (p))の計算を行
い、計算途中のd(x (t)
lowerk (p))を保存しておく。そして、この
ステップ(F205)では、計算したひずみd(x
(t),wlowerk (p))が現在の最小のひずみ
cur minより小さいか否か、すなわち、 d(x(t),wlower (p))<dcur min (38) が成り立つか否かを判定し、この(38)式が成り立つ
ならば、 dcur min=d(x(t),wlower (p)) (39) min=lower (40) とする。
In the next step (F205), the input vector
Torr x(T)And representative vector wlo wer (P)Tonohi
Z d (x(T), Wlower (P)) Calculation
D (xk (T),
wlowerk (P)) Is saved. And this
In step (F205), the calculated strain d (xk
(T), Wlowerk (P)) Is the current minimum strain
dcur minIs smaller than, that is, d (x(T), Wlower (P)) <Dcur min It is determined whether or not (38) holds, and the equation (38) holds.
Then dcur min= D (x(T), Wlower (P)(39) Let min = lower (40).

【0174】次のステップ(F206)では、下位方向
の探索を続けるかどうか判断する。このステップ(F2
06)において、もし、 d(x (t),wlowerk (p))>dcur min (41) を満足するなら、下位方向の探索は終了で、ステップ
(F208)へ移り、さもなければ、次のステップ(F
207)へ進む。
In the next step (F206), it is determined whether to continue the search in the lower direction. This step (F2
At 06), if d (x k (t) , w lowerk (p) )> d cur min (41) is satisfied, the search in the lower direction is completed, and the process proceeds to step (F208). , Next step (F
207).

【0175】ステップ(F207)は、代表ベクトルの
番号lowerの更新ステップであり、現在のlowe
r番の代表ベクトルの下位方向の隣の代表ベクトルの番
号を新しいlowerとして、ステップ(F205)へ
戻る。
The step (F207) is a step of updating the number “lower” of the representative vector.
The number of the representative vector next to the r-th representative vector in the lower direction is set as a new lower, and the process returns to step (F205).

【0176】ステップ(F208)では、入力ベクトル
(t)とupper番の代表ベクトルwupper
(p)とのひずみd(x(t),wupper (p)
の計算を行い、計算途中のd(x (t),w
upperk (p))を保存しておく。このステップ
(F208)では、計算したひずみd(x(t),w
upper p))が現在の最小のひずみdcur
minより小さいか否か、すなわち、 d(x(t),wupper (p))<dcur min (42) が成り立つか否かを判定して、この(42)式が成り立
つならば、 dcur min=d(x(t),wupper (p)) (43) min=upper (44) とする。
In step (F208), the input vector x (t) and the representative vector w upper of the upper number are input.
(P) and the strain of d (x (t), w upper (p))
Is calculated, and d (x k (t) , w
Save upperk (p) ). In this step (F208), the calculated strain d (x (t) , w
upper ( p) is the current minimum distortion d cur
min , that is, whether d (x (t) , w upper (p) ) <d cur min (42) holds, and if this equation (42) holds, then d cur min = d (x (t) , w upper (p) ) (43) Let min = upper (44).

【0177】次のステップ(F209)では、上位方向
の探索を続けるかどうか判断する。このステップ(F2
09)では、もし、 d(x (t),wupperk (p))>dcur min (45) を満足するなら、上位方向の探索は終了で、ステップ
(F211)へ移り、さもなければ、次のステップ(F
210)へ進む。
In the next step (F209), it is determined whether to continue the search in the upper direction. This step (F2
09), if d (x k (t) , w upperk (p) )> d cur min (45) is satisfied, the search in the upper direction is completed, and the process proceeds to step (F211). , Next step (F
Proceed to 210).

【0178】ステップ(F210)は、代表ベクトル番
号upperの更新ステップであり、現在のupper
番の代表ベクトルの上位方向の隣の代表ベクトルの番号
を新しいupperとして、ステップ(F208)へ戻
る。
Step (F210) is a step of updating the representative vector number upper, and the current upper
The process returns to step (F208) with the number of the representative vector next to the numbered representative vector in the upper direction as a new upper.

【0179】次のステップ(F211)では、入力ベク
トルの符号化と代表ベクトルの重心計算・平均ひずみの
準備を行う。
In the next step (F211), encoding of the input vector, calculation of the center of gravity of the representative vector, and preparation of the average distortion are performed.

【0180】このステップ(F211)において、入力
ベクトルx(t)は、最小のひずみdcur minを持
つ番号minの代表ベクトルwmin (p)に符号化さ
れる。
In this step (F211), the input vector x (t) is encoded into the representative vector w min (p) of the number min having the minimum distortion d cur min .

【0181】このステップ(F211)では、符号化さ
れた代表ベクトルminの位置を更新するステップ(F
214)において用いる分子wminnum、分母w
min den及び部分ひずみDminsumの計算を次
の(46)式、(47)及び(48)式にしたがって行
っておく。
In this step (F211), the step of updating the position of the encoded representative vector min (F2)
214), the numerator w minnum and the denominator w
The calculation of min den and the partial strain D minsum is performed according to the following equations (46), (47) and (48).

【0182】 wminnum+=x(t) (46) wminden+=1 (47) Dminsum+=dcur min (48) 次のステップ(F212)では、すべての入力ベクトル
の符号化が終了したか否かを判定する。このステップ
(F212)では、もし、t=T−1が成り立つなら
ば、ステップ(F214)へ移り、さもなければ、次の
ステップ(F213)へ進む。
W minnum + = x (t) (46) w minden + = 1 (47) D minsum + = d cur min (48) In the next step (F212), encoding of all input vectors is completed. It is determined whether or not. In this step (F212), if t = T−1 holds, the process proceeds to step (F214), otherwise, the process proceeds to the next step (F213).

【0183】ステップ(F213)では、t=t+1と
して、ステップ(F203)に戻り、次の入力ベクトル
の探索をする。
In step (F213), t = t + 1, and the flow returns to step (F203) to search for the next input vector.

【0184】ステップ(F214)では、代表ベクトル
の重心の計算と平均ひずみ及び部分ひずみの計算を行
う。このステップ(F214)は、LBGアルゴリズム
における代表ベクトルの重心の更新を行うステップであ
り、次の(49)式で表すことができる。
In step (F214), the calculation of the center of gravity of the representative vector and the calculation of the average distortion and the partial distortion are performed. This step (F214) is a step of updating the center of gravity of the representative vector in the LBG algorithm, and can be represented by the following equation (49).

【0185】[0185]

【数13】 (Equation 13)

【0186】しかし,(49)式の分子・分母の計算は
先のステップ(F211)で済んでいるので、次の(5
0)式の計算を行えばよい。
However, since the calculation of the numerator and denominator in equation (49) has been completed in the previous step (F211), the following (511)
Equation (0) may be calculated.

【0187】[0187]

【数14】 [Equation 14]

【0188】また、部分ひずみDは、次の(51)式
により計算する。
[0188] The partial distortion D i is calculated by the following (51) below.

【0189】[0189]

【数15】 (Equation 15)

【0190】そして、平均ひずみDは次の(52)式に
より計算する。
Then, the average strain D is calculated by the following equation (52).

【0191】[0191]

【数16】 (Equation 16)

【0192】次のステップ(F215)では、収束判定
を行う。このステップ(F215)における収束判定条
件を満たさないときは、ステップ(F216)へ移り、
収束判定条件を満たすときは、処理を終了する。
In the next step (F215), convergence determination is performed. When the convergence determination condition in this step (F215) is not satisfied, the process proceeds to step (F216),
If the convergence determination condition is satisfied, the process ends.

【0193】ここで、このステップ(F215)におけ
る収束判定条件には、次のようなものが考えられる。そ
の他のものでも構わない。
Here, the convergence determination conditions in this step (F215) may be as follows. Others may be used.

【0194】(1)代表ベクトルの更新がなくなったら
終了する。
(1) The process ends when the representative vector is no longer updated.

【0195】(2)所望の平均ひずみ以下になったら終
了する。
(2) When the average strain becomes equal to or less than the desired average strain, the process ends.

【0196】(3)反復回数で打ち切る。(3) Terminate at the number of repetitions.

【0197】次のステップ(F216)では、部分ひず
みに応じて、代表ベクトルと部分ひずみをソートする。
In the next step (F216), the representative vectors and the partial distortions are sorted according to the partial distortions.

【0198】そして、次のステップ(F217)及びス
テップ(F218)において、MMOC操作を実行す
る。
Then, in the next step (F217) and step (F218), the MMOC operation is executed.

【0199】すなわち、ステップ(F217)では、図
16に示すように、大きい順にR個の部分ひずみD
max[r]と小さい順にR個の部分ひずみD
min[r]を比較する。
That is, in the step (F217), as shown in FIG.
R partial strains D in ascending order of max [r]
Compare min [r].

【0200】そして、このステップ(F217)におけ
る比較の結果、次の(53)式が成り立ないときは、ス
テップ(F202)へ移り、(53)式が成り立つとき
はステップ(F218)へ進む。
As a result of the comparison in step (F217), if the following equation (53) does not hold, the process proceeds to step (F202). If the following equation (53) holds, the process proceeds to step (F218).

【0201】 Dmax[r]>m×Dmin[r],(r=0,・・・,R−1) (53) さらに、ステップ(F218)では、次の(54)式に
示すように、小さい順の部分ひずみDmin[r]を持
つ代表ベクトルwmin (p+1)[r]を大きい順の
部分ひずみDmax[r]を持つ代表ベクトルwmax
(p+1)[r]の近傍に再配置して、ステップ(F2
02)へ戻る。
D max [r]> m × D min [r], (r = 0,..., R−1) (53) Further, in step (F218), the following equation (54) is used. In addition, the representative vector w min (p + 1) [r] having a small partial strain D min [r] is replaced with the representative vector w max having a large partial strain D max [r].
(P + 1) Rearranged in the vicinity of [r], and step (F2)
Return to 02).

【0202】 wmin (p+1)[r]←wmax (p+1)[r]+ε (54) ただし、ε(≪1)は摂動項である。一回の反復で最大
R個の移動が可能となる。
W min (p + 1) [r] ← w max (p + 1) [r] + ε (54) where ε (≪1) is a perturbation term. Up to R movements are possible in one iteration.

【0203】MMOC操作において、現在の反復でMM
OC操作により移動が行われる個数は前回の反復でMM
OC操作により移動が行われた個数R’よりも増えるこ
とはほとんど起きない。そこで、MMOC操作は常にR
個をMMOC操作にかけるのではなく、前回の反復での
個数R’個をMMOC操作にかけた方が効率的である。
最終的にR’は零になってしまうので、R’=0のとき
は最低限1個のMMOC操作を行うようにする。
In the MMOC operation, the MM in the current iteration is
The number of movements by the OC operation is MM in the previous iteration.
It hardly occurs that the number of movements R 'is increased by the OC operation. Therefore, the MMOC operation is always R
It is more efficient to apply the number R ′ in the previous iteration to the MMOC operation instead of applying the number to the MMOC operation.
Since R ′ eventually becomes zero, at least one MMOC operation is performed when R ′ = 0.

【0204】最も単純なR=1とした場合のMMOC操
作を加えたLBGアルゴリズムの動作の概念図を図17
に示す。また、実際の動作を図18に示す。
FIG. 17 is a conceptual diagram showing the operation of the LBG algorithm to which the MMOC operation is added in the simplest case where R = 1.
Shown in FIG. 18 shows the actual operation.

【0205】ここで、図17を用いてMMC操作を加え
たLBGアルゴリズムの動作を説明する。
Here, the operation of the LBG algorithm to which the MMC operation is added will be described with reference to FIG.

【0206】1反復目では、2番の代表ベクトルが符号
化に全く使われていない、すなわち部分ひずみD
0である。それに対して、4番の代表ベクトルが符号化
に大変よく使われており、部分ひずみD が最も大き
い。そこで、2番の代表ベクトルの部分ひずみD
2minと4番の代表ベクトルの部分ひずみD4max
を比較した場合、次の(55)式 D4max>m・D2min (55) が成り立つので、2番の代表ベクトルを4番の代表ベク
トルの近傍に移動する。この移動により、部分ひずみの
格差が減少する。
In the first iteration, the second representative vector is not used for encoding at all, that is, the partial distortion D 2 =
0. In contrast, it has been used very well to the encoding, the largest part distortion D 4 representative vectors fourth. Therefore, the partial distortion D of the second representative vector
Portion of the representative vector of 2min and fourth strain D 4Max
When comparing, since the following equation (55) D 4max> m · D 2min ( 55) holds and moves the representative vector number 2 in the vicinity of the representative vector of the fourth. This movement reduces the difference in partial strain.

【0207】そして、LBGアルゴリズムを用いて代表
ベクトルの配置を修正する。
Then, the arrangement of the representative vectors is corrected using the LBG algorithm.

【0208】2反復目では、1反復目と同様に1番の代
表ベクトルの部分ひずみDが最も小さく、4番の代表
ベクトルの部分ひずみDが最も大きい。そこで、1番
の代表ベクトルの部分ひずみD1minと4番の代表ベ
クトルの部分ひずみD4ma を比較した場合、次の
(56)式 D4max>m・D1min (56) が成り立つとすると、1番の代表ベクトルを4番の代表
ベクトルの近傍に移動する。この移動により、部分ひず
みの格差がさらに減少する。
In the second iteration, the partial distortion D 1 of the first representative vector is the smallest and the partial distortion D 4 of the fourth representative vector is the largest, as in the first iteration. Therefore, when comparing the partial distortion D 4 ma x of the representative vector of the partial distortion D 1min and No.4 No.1 representative vectors, when the next (56) Formula D 4max> m · D 1min ( 56) is satisfied, The first representative vector is moved to the vicinity of the fourth representative vector. This movement further reduces the difference in partial strain.

【0209】そして、LBGアルゴリズムを用いて代表
ベクトルの配置を修正する。
Then, the arrangement of the representative vectors is corrected using the LBG algorithm.

【0210】3反復目では、1番の代表ベクトルの部分
ひずみDが最も小さく、5番の代表ベクトルの部分ひ
ずみDが最も大きい。しかし、1番の代表ベクトルの
部分ひずみD1minと5番の代表ベクトルの部分ひず
みD4maxを比較した場合、ほとんど部分ひずみの格
差がないため D4max>m・D1min (57) が成り立たない。この代表ベクトルの配置は等ひずみ原
理で示した大域的最適解の近傍の配置になっている。
In the third iteration, the partial distortion D1 of the first representative vector is the smallest, and the partial distortion D5 of the fifth representative vector is the largest. However, when the partial distortion D 1min of the first representative vector is compared with the partial distortion D 4max of the fifth representative vector, D 4max > m · D 1min (57) does not hold because there is almost no difference in partial distortion. The arrangement of the representative vectors is an arrangement in the vicinity of the global optimal solution shown by the equal distortion principle.

【0211】したがってLBGアルゴリズムを数回繰り
返すことで、代表ベクトルの最適な配置を得ることがで
きる。
Therefore, by repeating the LBG algorithm several times, an optimal arrangement of the representative vectors can be obtained.

【0212】また、本発明は、上述の(27)式で示さ
れるひずみの部分和が現在の最小のひずみdcur
minと比較して大きいときは、次の代表ベクトルを探
索するひずみの部分和を用いた高速化手法を組み合わせ
るとより一層の効果がある。
Further, according to the present invention, the partial sum of the distortion represented by the above-mentioned equation (27) is equal to the current minimum distortion d cur.
When min is larger than min , a further effect is obtained by combining a high-speed technique using a partial sum of distortions for searching for the next representative vector.

【0213】ここでは、上述の図14に示したベクトル
量子化器200の変形例として、図19を参照して差分
のみを説明する。
Here, only a difference will be described with reference to FIG. 19 as a modification of the vector quantizer 200 shown in FIG.

【0214】図19に示すベクトル量子化器200’に
おいて、コードブックメモリ230は、コードブックと
アドレスをソーティング装置220に渡す。
In the vector quantizer 200 'shown in FIG. 19, the codebook memory 230 passes the codebook and the address to the sorting device 220.

【0215】ソーティング装置220は、制御装置27
0からのソートの指示とどの次元kを基準としてソート
するかの指示を受け、コードブックメモリ230からコ
ードブックのアドレスとコードブックを読み出し、指定
された次元を基準としてコードブックをソートする。そ
して、そのソートされた代表ベクトルの順番通りに、各
代表ベクトルのアドレスを並び替え、ソート順に並んだ
アドレスをコードブックソート表280に書き込む。
The sorting device 220 includes the control device 27
Upon receiving a sorting instruction from 0 and an instruction on which dimension k is to be sorted, the code book address and code book are read from the code book memory 230, and the code book is sorted based on the specified dimension. Then, the addresses of the representative vectors are rearranged in the order of the sorted representative vectors, and the addresses arranged in the sorted order are written in the codebook sort table 280.

【0216】第1の演算装置240は、判定装置250
から、判定結果により探索する代表ベクトルの方向を示
すup/downの情報を受け、次の探索する代表ベク
トルのアドレスをコードブックソート表280に参照し
に行き、アドレスを受け取る。そして、コードブックメ
モリ230に、そのアドレスを指定して、対応するデー
タ(代表ベクトルの番号iと値w (P)など)を読み
込む。
The first arithmetic unit 240 includes a judgment unit 250
, Receives up / down information indicating the direction of the representative vector to be searched based on the determination result, goes to the codebook sort table 280 for the address of the next representative vector to be searched, and receives the address. Then, the corresponding data (representative vector number i and value w i (P), etc.) is read into the codebook memory 230 by designating the address.

【0217】そして、コードブックソート表280は、
ソーティング装置220から受け取ったアドレスを格納
する。また、コードブックソート表280は、第1の演
算装置240からの次の探索する代表ベクトルの参照の
指示に従って、その代表ベクトルのアドレスを第1の演
算装置240に渡す。
Then, the code book sort table 280 is
The address received from the sorting device 220 is stored. Further, the codebook sort table 280 passes the address of the representative vector to the first arithmetic device 240 in accordance with the instruction from the first arithmetic device 240 to refer to the next representative vector to be searched.

【0218】次に、上記ベクトル量子化器200による
静止画像の符号化のシミュレーション結果について説明
する。
Next, a description will be given of a simulation result of encoding of a still image by the vector quantizer 200.

【0219】テスト画像として、Kodak PHOTOCDに入っ
ている図20、図21、図22及び図23に示す24枚
のBMPファイルに対して階調変換を行った。
As test images, tone conversion was performed on the 24 BMP files shown in FIGS. 20, 21, 22 and 23 included in Kodak PHOTOCD.

【0220】MM0C操作(R=1)を加えたLBGア
ルゴリズムによる全探索とVQ−SSCによる各BMP
ファイルに対する階調変換のシミュレーションを行った
ところ、図24に示す結果が得られた。このシミュレー
ション結果について、図25の(a)には各BMPファ
イルに対する全探索による階調変換の実行時間(◆)と
VQ−SSCによる階調変換の実行時間(●)を比較し
て示してあり、また、図25の(b)には実行時間の改
善量として、操作(全探索)の実行時間を操作(VQ−
SSC)の実行時間で規格化したときの数値を示してあ
る。
Full search by LBG algorithm with MM0C operation (R = 1) and each BMP by VQ-SSC
When the gradation conversion simulation was performed on the file, the result shown in FIG. 24 was obtained. FIG. 25A shows the results of this simulation, comparing the execution time (◆) of gradation conversion by full search and the execution time (●) of gradation conversion by VQ-SSC for each BMP file. FIG. 25 (b) shows the execution time of the operation (full search) as an improvement amount of the execution time (VQ-
Numerical values when normalized by the execution time of (SSC) are shown.

【0221】この図24及び図25に示す階調変換のシ
ミュレーション結果では、LBGアルゴリズム(全探
索)では平均で197回の反復,約2000秒で収束し
ているのに対して、VQ−SSCで符号化を行えば、平
均で約200秒で収束している。この実行時間は、VQ
−SSCなしの場合と比較して平均で1/10.1に短
縮されている。
According to the simulation results of the gradation conversion shown in FIGS. 24 and 25, the LBG algorithm (full search) converges in 197 repetitions on average and about 2000 seconds, whereas the VQ-SSC If the encoding is performed, it converges in about 200 seconds on average. This execution time is VQ
-It is reduced to an average of 1 / 10.1 compared to the case without SSC.

【0222】また、MMOC操作(R=30)を加えた
LBGアルゴリズムによる全探索とVQ−SSCによる
各BMPファイルに対する階調変換のシミュレーション
を行ったところ、図26に示す結果が得られた。このシ
ミュレーション結果について、図27の(a)には各B
MPファイルに対する全探索による階調変換の実行時間
(◆)とVQ−SSCによる階調変換の実行時間(●)
を比較して示してあり、また、図27の(b)には実行
時間の改善量として、操作(全探索)の実行時間を操作
(VQ−SSC)の実行時間で規格化したときの数値を
示してある。
A full search by the LBG algorithm to which the MMOC operation (R = 30) was added and a simulation of gradation conversion for each BMP file by VQ-SSC were performed, and the results shown in FIG. 26 were obtained. Regarding the simulation result, FIG.
Execution time of gradation conversion by full search for MP file (◆) and execution time of gradation conversion by VQ-SSC (●)
In addition, FIG. 27B shows a numerical value obtained by normalizing the execution time of the operation (full search) with the execution time of the operation (VQ-SSC) as the improvement amount of the execution time. Is shown.

【0223】この図26及び図27に示す階調変換のシ
ミュレーション結果では、MMOC操作(R=30)を
加えたLBGアルゴリズム(全探索)では平均で24回
の反復,約250秒で収束しているのに対して、VQ−
SSCで符号化を行えば、平均で約33.3秒で収束し
ている。この実行時間は、VQ−SSCなしの場合と比
較して平均で1/7.6に短縮されている。
According to the simulation results of the gradation conversion shown in FIGS. 26 and 27, the LBG algorithm (full search) to which the MMOC operation (R = 30) is applied converges in about 250 repetitions on average and about 250 seconds. VQ-
If encoding is performed by SSC, the average value converges in about 33.3 seconds. This execution time is reduced to an average of 1 / 7.6 as compared with the case without VQ-SSC.

【0224】また、本発明は、例えば図28に示すよう
な構成のコードブック生成装置300により実施され
る。
Further, the present invention is implemented by a codebook generating apparatus 300 having a configuration as shown in FIG. 28, for example.

【0225】このコードブック生成装置300は、入力
端子310、ソーティング装置320、コードブックメ
モリ330、第1の演算装置340、判定装置350、
第2の演算装置360及び制御装置370から構成され
る。
The code book generating device 300 includes an input terminal 310, a sorting device 320, a code book memory 330, a first arithmetic device 340, a determining device 350,
It comprises a second arithmetic unit 360 and a control unit 370.

【0226】このコードブック生成装置300は、VQ
−SSCによる符号化を利用した競合学習を行うもので
あって、入力端子310を介して入力ベクトルx(t)
∈R が第1の演算装置340に入力される。
This codebook generating apparatus 300 is a VQ
-Performs competitive learning using SSC encoding.
And input vector x via input terminal 310(T)
∈R KIs input to the first arithmetic unit 340.

【0227】ソーティング装置320は、制御装置37
0からのソートの指示とどの次元kを基準としてソート
するかの指示を受け、コードブックメモリ330からコ
ードブックを読み出し、指定された次元を基準としてコ
ードブックをソートする。また、ソーティング装置32
0は、ソートしたコードブックをコードブックメモリ3
30の指定したアドレスに書き込む。
The sorting device 320 includes the control device 37
Upon receiving a sort instruction from 0 and an instruction on which dimension k is to be sorted, the code book is read from the code book memory 330, and the code book is sorted based on the specified dimension. Also, the sorting device 32
0 indicates that the sorted code book is stored in the code book memory 3.
Write to the specified 30 addresses.

【0228】コードブックメモリ330は、コードブッ
クW(t)={w (t)∈R:i=0,・・・,N
−1}を記憶しておくメモリであり、ひずみ計算・アド
レス計算を行う第1の演算装置340からアドレスを受
け取り、対応する代表ベクトルのデータ(代表ベクトル
の値w (t),番号i)を第1の演算装置340に渡
す。また、コードブックメモリ330は、重心計算・平
均ひずみ計算を行う第2の演算装置360から、データ
(更新された代表ベクトルの値wmin (t+ 1))及
び書き込むアドレスを受け取り、対応するアドレスにコ
ードブックが書き込まれる。また、コードブックメモリ
330は、コードブックをソーティング装置320に渡
す。さらに、コードブックメモリ330は、ソーティン
グ装置320によりソートされたコードブックと書き込
むアドレスを受け取り、指定されたアドレスにコードブ
ックを格納する。
[0228] codebook memory 330, the codebook W (t) = {w i (t) ∈R K: i = 0, ···, N
-1} is a memory that receives an address from the first arithmetic unit 340 that performs distortion calculation and address calculation, and corresponding representative vector data (representative vector value w i (t) , number i) To the first arithmetic unit 340. Further, the codebook memory 330 receives the data (the updated representative vector value w min (t + 1) ) and the write address from the second arithmetic unit 360 that performs the center of gravity calculation and the average strain calculation, and stores the corresponding address in the corresponding address. Codebook is written. Further, the codebook memory 330 transfers the codebook to the sorting device 320. Further, the code book memory 330 receives the code book sorted by the sorting device 320 and the address to be written, and stores the code book at the specified address.

【0229】第1の演算装置340は、入力端子310
を介して入力ベクトルx(t)を受け取る。この第1の
演算装置340は、制御装置370からひずみ・アドレ
スの計算の指示を受け、コードブックメモリ330に読
み込みたい代表ベクトルのアドレスを指定して、対応す
るデータ(代表ベクトルの値w (t),番号iなど)
を読み込む。また、第1の演算装置340は、入力ベク
トルと代表ベクトルとのひずみd(x(t),w
(t))を計算する。そして、第1の演算装置340
は、ひずみd(x(t),w (t))とデータ(代表
ベクトルの番号と値)を判定装置350に渡す。また、
第1の演算装置340は、制御装置370からソートの
基準となった次元kの指示を受け、k次元だけのひずみ
d(x (t),wik (t))も判定装置350に渡
す。さらに、第1の演算装置340は、判定装置350
から、判定結果により探索する代表ベクトルの方向を示
すup/downの情報を受け、次の探索する代表ベク
トルのアドレスを計算する。なお、第1の演算装置34
0は、探索終了を示す情報finishを受けた場合は、次の
入力ベクトルx(t+1)の符号化に取りかかる。
The first arithmetic unit 340 has an input terminal 310
Via the input vector x (t) . The first arithmetic unit 340 receives the instruction of calculating the distortion / address from the control unit 370, specifies the address of the representative vector to be read into the codebook memory 330, and specifies the corresponding data (representative vector value w i ( t) , number i, etc.)
Read. Further, the first arithmetic unit 340 calculates the distortion d (x (t) , w i between the input vector and the representative vector.
(T) ) is calculated. Then, the first arithmetic unit 340
The strain d (x (t), w i (t)) and data pass (number and value of the representative vector) to the determination unit 350. Also,
The first arithmetic unit 340 receives an instruction of the dimension k serving as a sorting criterion from the control unit 370, and also transfers the k-dimensional distortion d (x k (t) , w ik (t) ) to the determination unit 350. . Further, the first arithmetic unit 340 includes a determination unit 350
, Receives up / down information indicating the direction of the representative vector to be searched based on the determination result, and calculates the address of the next representative vector to be searched. Note that the first arithmetic unit 34
When the information “finish” indicating the end of the search is received, the encoding of the next input vector x (t + 1) is started.

【0230】判定装置350は、現在の最小のひずみd
cur minとその代表ベクトルの番号minを保持し
ており、現在の最小のひずみdcur minをもつmi
n番の代表ベクトルと第1の演算装置340により計算
されたi番の代表ベクトルについてひずみd
(x(t),w (t))を比較し、ひずみが小さい方
を新しいmin番、現在の最小のひずみdcur min
とする。また、判定装置350は、制御装置370から
判定の指示を受け、k次元だけのひずみd
(x (t),wik (t))と現在の最小のひずみd
cur minを比較し、d(x (t)
ik (t))の方が大きければ、次に探索する代表ベ
クトルの方向を示すup/downの情報を変更し、ま
た、up/down両方向とも調べ終わった場合には探
索終了を示す情報finishを第1の演算装置340に渡
し、d(x (t ,wik (t))の方が小さけれ
ば、同方向の次の代表ベクトルを調べる情報を第1の演
算装置340に渡す。また、判定装置350は、up/
down両方向とも調べ終わり探索終了finishになった
とき、第2の演算装置360に入力ベクトルx(t)
現在の最小のひずみを持つ代表ベクトルのデータ(番号
min及び値wmin (t))及び最小のひずみd
cur minを出力する。さらに、判定装置350は、
探索終了finishになったとき、現在の最小のひずみを持
つ代表ベクトルの番号minを次入力ベクトルx
(t+1)の初期代表ベクトルとして第2の演算装置3
60に渡す。
The judgment device 350 calculates the current minimum distortion d.
cur min and the number min of the representative vector are held, and mi having the current minimum distortion d cur min
The distortion d for the n-th representative vector and the i-th representative vector calculated by the first arithmetic unit 340
Compares the (x (t), w i (t)), the strain is the smaller of the new min number, the current minimum distortion d cur min
And Further, the determination device 350 receives a determination instruction from the control device 370 and receives a k-dimensional distortion d.
(X k (t) , w ik (t) ) and the current minimum strain d
cur min , d (x k (t) ,
If w ik (t) is larger, the information of up / down indicating the direction of the next representative vector to be searched is changed, and if both up / down directions have been checked, information indicating the end of search Is passed to the first arithmetic unit 340, and if d (x k (t ) , w ik (t) ) is smaller, information for examining the next representative vector in the same direction is passed to the first arithmetic unit 340. Further, the determination device 350 determines that the up /
When the search is completed in both the down and search directions, the input vector x (t) is input to the second arithmetic unit 360.
Data of the representative vector having the current minimum distortion (number min and value w min (t) ) and minimum distortion d
Output cur min . Further, the determination device 350
When the search is finished, the number min of the representative vector having the current minimum distortion is set to the next input vector x
The second arithmetic unit 3 as an initial representative vector of (t + 1)
Pass to 60.

【0231】第2の演算装置360は、判定装置350
から、入力ベクトルx(t) と現在の最小のひずみを
持つ代表ベクトルのデータ(番号min及び値wmin
(t )と最小のひずみdcur minを受け取る。そ
して、この第2の演算装置360は、平均ひずみD
sumの計算を次の(58)式にしたがって行う。
[0231] The second arithmetic unit 360 includes a judging device 350.
From the input vector x (t) and the data of the representative vector having the current minimum distortion (number min and value w min
(T ) ) and the minimum distortion d cur min . The second computing device 360 calculates the average distortion D
The calculation of sum is performed according to the following equation (58).

【0232】 Dsum+=dcur min (58) また、この第2の演算装置360は、代表ベクトルの値
を次の(59)式にしたがって更新する。
D sum + = d cur min (58) Further, the second arithmetic unit 360 updates the value of the representative vector according to the following equation (59).

【0233】 wmin (t+1)=wmin (t)+η(t)[x(t)−wmin (t ] (59) また、この第2の演算装置360は、コードブックメモ
リ330の代表ベクトル番号minのアドレスに更新さ
れた代表ベクトルの値wmin (t+1)を書き込む。
W min (t + 1) = w min (t) + η (t) [x (t) −w min (t ) ] (59) The second arithmetic unit 360 is a representative of the codebook memory 330. The updated representative vector value w min (t + 1) is written to the address of the vector number min.

【0234】また、この演算装置360は、T個の入力
ベクトルに対して、符号化が終了し、上記途中計算が終
了したと制御装置370から指示を受けたら、平均ひず
みDの計算を次の(60)式にしたがって行う。
[0234] When the arithmetic unit 360 receives an instruction from the control unit 370 that the encoding has been completed for the T input vectors and the intermediate calculation has been completed, the arithmetic unit 360 calculates the average distortion D as follows. This is performed according to equation (60).

【0235】[0235]

【数17】 [Equation 17]

【0236】また、この第2の演算装置360は、制御
装置370からの指示により、データ(平均ひずみD
sum)をクリアする。
The second arithmetic unit 360 receives data (average distortion D) according to an instruction from control unit 370.
sum ) is cleared.

【0237】さらに、この第2の演算装置360は、制
御装置370からの指示により、任意の初期コードブッ
クをコードブックメモリ330に設定する。
Further, the second arithmetic unit 360 sets an arbitrary initial code book in the code book memory 330 according to an instruction from the control unit 370.

【0238】制御装置370は、ソーティング装置32
0、第1の演算装置340、判定装置350及び第2の
演算装置360の処理フローを制御する。また、制御装
置370は、ソーティング装置320にソートの基準と
なる次元を指定する。また、制御装置370は、第1の
演算装置340に初期代表ベクトルのアドレス(又は番
号)を指定し、また、ソートの基準となった次元を指示
する。さらに、制御装置370は、第2の演算装置36
0に任意の初期コードブックの設定を指示する。
The control device 370 controls the sorting device 32
0, the processing flow of the first arithmetic unit 340, the determination unit 350, and the second arithmetic unit 360 is controlled. Further, the control device 370 specifies a dimension serving as a sorting reference to the sorting device 320. Further, the control device 370 specifies the address (or number) of the initial representative vector to the first arithmetic device 340, and indicates the dimension used as the reference for sorting. Further, the control device 370 controls the second arithmetic device 36
Instruct 0 to set an arbitrary initial codebook.

【0239】このような構成のコードブック生成装置3
00において、本発明では、図29のフローチャートに
示す符号化アルゴリズムにしたがってコードブック生成
を行う。
The code book generating apparatus 3 having such a configuration
At 00, the present invention generates a codebook according to the encoding algorithm shown in the flowchart of FIG.

【0240】すなわち、このコードブック生成装置30
0では、先ず、ステップ(F301)において、代表ベ
クトル初期配置を設定する。また、代表ベクトルをソー
トするための基準の次元kを指定する。
That is, the code book generating device 30
In the case of 0, first, in step (F301), a representative vector initial arrangement is set. Also, a reference dimension k for sorting the representative vectors is specified.

【0241】次のステップ(F302)では、次元kの
代表ベクトルの値に基づいて代表ベクトルをソートす
る。2回目以降は、更新された代表ベクトルw
(t+1)だけ、対応する場所に入るように修正する。
ソートされた順番の情報については、以下の2通りのや
り方が考えられる。
In the next step (F302), the representative vectors are sorted based on the value of the representative vector of dimension k. From the second time on, the updated representative vector w
Only (t + 1) is corrected to enter the corresponding location.
Regarding the information of the sorted order, the following two methods can be considered.

【0242】(1)直接代表ベクトルの順番を入れ替え
てしまう。代表ベクトルの番号を変更したくないとき
は、代表ベクトルの番号の情報を持つ構造体にして入れ
替える。直接ならべ変えているので、自分より下位の代
表ベクトルの番号lowerは、自分の配列の番号−1
とした配列の番号となる。また、自分より上位の代表ベ
クトルの番号upperは、自分の配列の番号+1とし
た配列の番号となる。
(1) The order of the representative vectors is directly changed. If it is not desired to change the number of the representative vector, the structure is replaced with a structure having information on the number of the representative vector. Since the numbers are directly changed, the number lower of the representative vector lower than the own is the number-1 of the own array.
And the sequence number. Also, the number upper of the representative vector higher than the own is the array number obtained by adding +1 to the array number of the own.

【0243】(2)ソートしたときの順番を示す配列を
用意する場合、各代表ベクトルが保持すべき情報は、自
分より下位の代表ベクトルの番号lowerと、自分よ
り上位の代表ベクトルの番号upperである。
(2) In the case of preparing an array indicating the order of sorting, the information to be held by each representative vector is represented by the lower number of the representative vector lower than the own and the upper number of the representative vector higher than the own. is there.

【0244】次のステップ(F303)では、入力ベク
トルx(t)と初期の代表ベクトルw (t)とのひず
みの計算を行い、このひずみd(x(t)
(t))を現在の最小のひずみdcur min
し、番号iを符号化の候補として保存しておく。
In the next step (F303), the distortion between the input vector x (t) and the initial representative vector w i (t) is calculated, and the distortion d (x (t) ,
and w i (t)) of the current minimum distortion d cur min, keep the number i as a candidate for coding.

【0245】 dcur min=d(x(t),w (t)) (61) min=i (62) 次のステップ(F304)では、初期の代表ベクトルw
(t) の両隣の代表ベクトルの番号、すなわち、 lower=下位方向の隣の代表ベクトルの番号 upper=上位方向の隣の代表ベクトルの番号 を保存する。
[0245] d cur min = d (x ( t), w i (t)) (61) min = i (62) In the next step (F304), the initial representative vector w
The number of the representative vector on both sides of i (t) , that is, lower = the number of the next representative vector in the lower direction, and upper = the number of the next representative vector in the upper direction.

【0246】次のステップ(F305)では、入力ベク
トルx(t)と代表ベクトルwlo wer (t)とのひ
ずみd(x(t),wlower (t))の計算を行
い、計算途中のd(x (t)
lowerk (t))を保存しておく。そして、この
ステップ(F305)では、計算したひずみd(x
(t),wlowerk (t))が現在の最小のひずみ
cur minより小さいか否か、すなわち、 d(x(t),wlower (t))<dcur min (63) が成り立つか否かを判定し、この(63)式が成り立つ
ならば、 dcur min=d(x(t),wlower (t)) (64) min=lower (65) とする。
At the next step (F305), the input vector
Torr x(T)And representative vector wlo wer (T)Tonohi
Z d (x(T), Wlower (T)) Calculation
D (xk (T),
wlowerk (T)) Is saved. And this
In step (F305), the calculated strain d (xk
(T), Wlowerk (T)) Is the current minimum strain
dcur minIs smaller than, that is, d (x(T), Wlower (T)) <Dcur min It is determined whether or not (63) holds, and the equation (63) holds.
Then dcur min= D (x(T), Wlower (T)) (64) min = lower (65)

【0247】次のステップ(F306)では、下位方向
の探索を続けるかどうか判断する。このステップ(F3
06)において、もし、 d(x (t),wlowerk (t))>dcur min (66) を満足するなら、下位方向の探索は終了で、ステップ
(F308)へ移り、さもなければ、次のステップ(F
307)へ進む。
In the next step (F306), it is determined whether to continue the search in the lower direction. This step (F3
At 06), if d (x k (t) , w lowerk (t) )> d cur min (66) is satisfied, the search in the lower direction is completed, and the process proceeds to step (F308). , Next step (F
Proceed to 307).

【0248】ステップ(F307)は、代表ベクトルの
番号lowerの更新ステップであり、現在のlowe
r番の代表ベクトルの下位方向の隣の代表ベクトルの番
号を新しいlowerとして、ステップ(F305)へ
戻る。
The step (F307) is a step of updating the number “lower” of the representative vector.
The number of the representative vector next to the r-th representative vector in the lower direction is set as a new lower, and the process returns to step (F305).

【0249】ステップ(F308)では、入力ベクトル
(t)とupper番の代表ベクトルwupper
(t)とのひずみd(x(t),wupper (t)
の計算を行い、計算途中のd(x (t),w
upperk (t))を保存しておく。このステップ
(F308)では、計算したひずみd(x(t),w
upper t))が現在の最小のひずみdcur
minより小さいか否か、すなわち、 d(x(t),wupper (t))<dcur min (67) が成り立つか否かを判定して、この(67)式が成り立
つならば、 dcur min=d(x(t),wupper (t)) (68) min=upper (69) とする。
In the step (F308), the input vector x (t) and the representative vector w upper of the upper number are determined.
(T) and the strain of d (x (t), w upper (t))
Is calculated, and d (x k (t) , w
upperk (t) ) is saved. In this step (F308), the calculated strain d (x (t) , w
upper ( t) ) is the current minimum distortion d cur
It is determined whether or not d (x (t) , w upper (t) ) <d cur min (67). If this equation (67) holds, then d cur min = d (x (t) , w upper (t) ) (68) min = upper (69)

【0250】次のステップ(F309)では、上位方向
の探索を続けるかどうか判断する。このステップ(F3
09)では、もし、 d(x (t),wupperk (t))>dcur min (70) を満足するなら、上位方向の探索は終了で、ステップ
(F311)へ移り、さもなければ、次のステップ(F
310)へ進む。
In the next step (F309), it is determined whether to continue the search in the upper direction. This step (F3
In 09), if d (x k (t) , w upperk (t) )> d cur min (70) is satisfied, the search in the upper direction is completed, and the process proceeds to step (F311). , Next step (F
Proceed to 310).

【0251】ステップ(F310)は、代表ベクトル番
号upperの更新ステップであり、現在のupper
番の代表ベクトルの上位方向の隣の代表ベクトルの番号
を新しいupperとして、ステップ(F308)へ戻
る。
Step (F310) is a step of updating the representative vector number upper, and the current upper
The number of the representative vector next to the numbered representative vector in the upper direction is set as a new upper, and the process returns to step (F308).

【0252】次のステップ(F311)では、入力ベク
トルの符号化と代表ベクトルの重心計算・平均ひずみの
準備を行う。このステップ(F311)において、入力
ベクトルx(t)は、最小のひずみdcur minを持
つ番号minの代表ベクトルwmin (t)に符号化さ
れる。このステップ(F311)では、符号化された代
表ベクトルの値を次の(71)式にしたがって更新す
る。
In the next step (F311), the input vector is encoded, the center of gravity of the representative vector is calculated, and the average distortion is prepared. In this step (F311), the input vector x (t) is encoded into the representative vector w min (t) of the number min having the minimum distortion d cur min . In this step (F311), the value of the encoded representative vector is updated according to the following equation (71).

【0253】 wmin (t+1)=wmin (t)+η(t)[x(t)−wmin (t ] (71) また、このステップ(F311)では、平均ひずみD
sumの計算を次の(72)式にしたがって行う。
W min (t + 1) = w min (t) + η (t) [x (t) −w min (t ) ] (71) In this step (F311), the average strain D
The calculation of sum is performed according to the following equation (72).

【0254】 Dsum+=dcur min (72) そして、t=T−1が成り立つとき、平均ひずみDの計
算を次の(73)式にしたがって行う。
D sum + = d cur min (72) When t = T−1, the average strain D is calculated according to the following equation (73).

【0255】[0255]

【数18】 (Equation 18)

【0256】次のステップ(F312)では、すべての
入力ベクトルの符号化が終了したか否かを判定する。こ
のステップ(F312)では、もし、データが終わりな
らば処理を終了し、さもなければ、次のステップ(F3
13)へ進む。
In the next step (F312), it is determined whether or not encoding of all input vectors has been completed. In this step (F312), if the data is completed, the processing is terminated; otherwise, the next step (F312)
Proceed to 13).

【0257】ステップ(F313)では、t=t+1と
して、ステップ(F302)に戻り、次の入力ベクトル
の探索をする。
In step (F313), t = t + 1 is set, and the process returns to step (F302) to search for the next input vector.

【0258】また、本発明は、上述の(27)式で示さ
れるひずみの部分和が現在の最小のひずみdcur
minと比較して大きいときは、次の代表ベクトルを探
索するひずみの部分和を用いた高速化手法を組み合わせ
るとより一層の効果がある。
Further, according to the present invention, the partial sum of the distortion represented by the above-mentioned equation (27) is equal to the current minimum distortion d cur.
When the value is larger than min , a further effect is obtained by combining a high-speed method using a partial sum of distortions for searching for the next representative vector.

【0259】ここでは、上述の図28に示したコードブ
ック生成装置300の変形例として、図30を参照して
差分のみを説明する。
Here, only a difference will be described with reference to FIG. 30 as a modification of the codebook generating apparatus 300 shown in FIG. 28 described above.

【0260】図30に示すコードブック生成装置30
0’において、コードブックメモリ330は、コードブ
ックとアドレスをソーティング装置320に渡す。
The code book generating device 30 shown in FIG.
At 0 ', codebook memory 330 passes the codebook and address to sorting device 320.

【0261】ソーティング装置320は、制御装置37
0からのソートの指示とどの次元kを基準としてソート
するかの指示を受け、コードブックメモリ330からコ
ードブックのアドレスとコードブックを読み出し、指定
された次元を基準としてコードブックをソートする。そ
して、そのソートされた代表ベクトルの順番通りに、各
代表ベクトルのアドレスを並び替え、ソート順に並んだ
アドレスをコードブックソート表380に書き込む。
The sorting device 320 includes the control device 37
Upon receiving a sort instruction from 0 and an instruction on which dimension k to sort on, the code book address and code book are read from the code book memory 330, and the code book is sorted based on the specified dimension. Then, the addresses of the representative vectors are rearranged in the order of the sorted representative vectors, and the addresses arranged in the sorted order are written in the codebook sort table 380.

【0262】第1の演算装置340は、判定装置350
から、判定結果により探索する代表ベクトルの方向を示
すup/downの情報を受け、次の探索する代表ベク
トルのアドレスをコードブックソート表380に参照し
に行き、アドレスを受け取る。そして、コードブックメ
モリ330に、そのアドレスを指定して、対応するデー
タ(代表ベクトルの番号iと値w (t)など)を読み
込む。
The first arithmetic unit 340 includes a judging device 350
, Receives up / down information indicating the direction of the representative vector to be searched based on the determination result, refers to the codebook sort table 380 for the address of the next representative vector to be searched, and receives the address. Then, the address is specified and the corresponding data (representative vector number i and value w i (t), etc.) is read into the code book memory 330.

【0263】そして、コードブックソート表380は、
ソーティング装置320から受け取ったアドレスを格納
する。また、コードブックソート表380は、第1の演
算装置340からの次の探索する代表ベクトルの参照の
指示に従って、その代表ベクトルのアドレスを第1の演
算装置340に渡す。
The code book sort table 380 is
The address received from the sorting device 320 is stored. Further, the codebook sort table 380 passes the address of the representative vector to the first arithmetic device 340 in accordance with the instruction from the first arithmetic device 340 to refer to the next representative vector to be searched.

【0264】また、本発明は、例えば図31に示すよう
な構成のコードブック生成装置400により実施され
る。
Further, the present invention is implemented by a codebook generating apparatus 400 having a configuration as shown in FIG. 31, for example.

【0265】このコードブック生成装置400は、入力
端子410、ソーティング装置420、コードブックメ
モリ430、第1の演算装置440、判定装置450、
第2の演算装置460、部分ひずみソーティング装置4
62、部分ひずみ比較装置464、代表ベクトル移動装
置466、制御装置470から構成される。
The code book generation device 400 includes an input terminal 410, a sorting device 420, a code book memory 430, a first arithmetic device 440, a determination device 450,
Second computing device 460, partial strain sorting device 4
62, a partial distortion comparing device 464, a representative vector moving device 466, and a control device 470.

【0266】このコードブック生成装置400は、VQ
−SSCによる符号化を利用したMMOC操作を加えた
競合学習を行うものであって、入力端子410を介して
入力ベクトルx(t)∈Rが第1の演算装置440に
入力される。
This codebook generating apparatus 400 is a VQ
A performs a competitive learning plus MMOC operation using the encoding by -SSC, the input vector x (t) ∈R K through the input terminal 410 is input to the first arithmetic unit 440.

【0267】ソーティング装置420は、制御装置47
0からのソートの指示とどの次元kを基準としてソート
するかの指示を受け、コードブックメモリ430からコ
ードブックを読み出し、指定された次元を基準としてコ
ードブックをソートする。また、ソーティング装置42
0は、ソートしたコードブックをコードブックメモリ4
30の指定したアドレスに書き込む。
The sorting device 420 includes the control device 47
Upon receiving a sorting instruction from 0 and an instruction on which dimension k is to be sorted, the code book is read from the code book memory 430 and the code book is sorted based on the designated dimension. Also, the sorting device 42
0 indicates that the sorted code book is stored in the code book memory 4.
Write to the specified 30 addresses.

【0268】コードブックメモリ430は、コードブッ
クW(t)={w (t)∈R:i=0,・・・,N
−1}を記憶しておくメモリであり、ひずみ計算・アド
レス計算を行う第1の演算装置440からアドレスを受
け取り、対応する代表ベクトルのデータ(代表ベクトル
の値w (t),番号i)を第1の演算装置440に渡
す。また、コードブックメモリ430は、代表ベクトル
移動装置466からデータ(更新された、コードブック
(T))及び書き込むアドレスを受け取り、対応する
アドレスにコードブックが書き込まれる。また、コード
ブックメモリ430は、代表ベクトル計算・平均ひずみ
計算・部分ひずみ計算を行う第2の演算装置460か
ら、データ(更新された代表ベクトルの値wmin
(t+1))及び書き込むアドレスを受け取り、対応す
るアドレスにコードブックが書き込まれる。また、コー
ドブックメモリ430は、コードブックをソーティング
装置420に渡す。さらに、コードブックメモリ430
は、ソーティング装置420によりソートされたコード
ブックと書き込むアドレスを受け取り、指定されたアド
レスにコードブックを格納する。
[0268] codebook memory 430, the codebook W (t) = {w i (t) ∈R K: i = 0, ···, N
-1} is a memory that receives an address from the first arithmetic unit 440 that performs distortion calculation and address calculation, and corresponding representative vector data (representative vector value w i (t) , number i) To the first arithmetic unit 440. Further, the codebook memory 430 receives the data (updated codebook W (T) ) and the write address from the representative vector moving device 466, and writes the codebook to the corresponding address. In addition, the codebook memory 430 receives data (updated representative vector value w min) from the second arithmetic unit 460 that performs representative vector calculation, average strain calculation, and partial strain calculation.
(T + 1) ) and the write address are received, and the codebook is written to the corresponding address. Also, the codebook memory 430 transfers the codebook to the sorting device 420. Further, the codebook memory 430
Receives the code book sorted by the sorting device 420 and the address to be written, and stores the code book at the specified address.

【0269】第1の演算装置440は、入力端子410
を介して入力ベクトルx(t)を受け取る。この第1の
演算装置440は、制御装置470からひずみ・アドレ
スの計算の指示を受け、コードブックメモリ430に読
み込みたい代表ベクトルのアドレスを指定して、対応す
るデータ(代表ベクトルの値w (t),番号iなど)
を読み込む。また、第1の演算装置440は、入力ベク
トルと代表ベクトルとのひずみd(x(t),w
(t))を計算する。そして、第1の演算装置440
は、ひずみd(x(t),w (t))とデータ(代表
ベクトルの番号と値)を判定装置450に渡す。また、
第1の演算装置440は、制御装置470からソートの
基準となった次元kの指示を受け、k次元だけのひずみ
d(x (t),wik (t))も判定装置450に渡
す。さらに、第1の演算装置440は、判定装置450
から、判定結果により探索する代表ベクトルの方向を示
すup/downの情報を受け、次の探索する代表ベク
トルのアドレスを計算する。なお、第1の演算装置44
0は、探索終了を示す情報finishを受けた場合は、次の
入力ベクトルx(t+1)の符号化に取りかかる。
The first arithmetic unit 440 has an input terminal 410
Via the input vector x (t) . The first arithmetic unit 440 receives an instruction for calculating a distortion / address from the control unit 470, specifies the address of a representative vector to be read into the codebook memory 430, and specifies the corresponding data (representative vector value w i ( t) , number i, etc.)
Read. The first arithmetic unit 440, distortion d between the input vector the representative vector (x (t), w i
(T) ) is calculated. Then, the first arithmetic unit 440
The strain d (x (t), w i (t)) and data pass (number and value of the representative vector) to the determination unit 450. Also,
The first arithmetic unit 440 receives an instruction of the dimension k serving as a sorting criterion from the control unit 470, and also passes the distortion d (x k (t) , w ik (t) ) of only k dimensions to the determination unit 450. . Further, the first arithmetic unit 440 includes a determination unit 450
, Receives up / down information indicating the direction of the representative vector to be searched based on the determination result, and calculates the address of the next representative vector to be searched. Note that the first arithmetic unit 44
When the information “finish” indicating the end of the search is received, the encoding of the next input vector x (t + 1) is started.

【0270】判定装置450は、現在の最小のひずみd
cur minとその代表ベクトルの番号minを保持し
ており、現在の最小のひずみdcur minをもつmi
n番の代表ベクトルと第1の演算装置440により計算
されたi番の代表ベクトルについてひずみd
(x(t),w (t))を比較し、ひずみが小さい方
を新しいmin番、現在の最小のひずみdcur min
とする。また、判定装置450は、制御装置470から
判定の指示を受け、k次元だけのひずみd
(x (t),wik (t))と現在の最小のひずみd
cur minを比較し、d(x (t)
ik (t))の方が大きければ、次に探索する代表ベ
クトルの方向を示すup/downの情報を変更し、ま
た、up/down両方向とも調べ終わった場合には探
索終了を示す情報finishを第1の演算装置440に渡
し、d(x (t ,wik (t))の方が小さけれ
ば、同方向の次の代表ベクトルを調べる情報を第1の演
算装置440に渡す。また、判定装置450は、up/
down両方向とも調べ終わり探索終了finishになった
とき、第2の演算装置460に入力ベクトルx(t)
現在の最小のひずみを持つ代表ベクトルのデータ(番号
min及び値wmin (t))及び最小のひずみd
cur minを出力する。さらに、判定装置450は、
探索終了finishになったとき、現在の最小のひずみを持
つ代表ベクトルの番号minを次入力ベクトルx
(t+1)の初期代表ベクトルとして第2の演算装置4
60に渡す。
The judgment device 450 determines the current minimum distortion d.
cur min and the number min of the representative vector are held, and mi having the current minimum distortion d cur min
The distortion d for the n-th representative vector and the i-th representative vector calculated by the first arithmetic unit 440
Compares the (x (t), w i (t)), the strain is the smaller of the new min number, the current minimum distortion d cur min
And Further, the determination device 450 receives a determination instruction from the control device 470 and receives a k-dimensional distortion d.
(X k (t) , w ik (t) ) and the current minimum strain d
cur min , d (x k (t) ,
If w ik (t) is larger, the information of up / down indicating the direction of the next representative vector to be searched is changed, and if both up / down directions have been checked, information indicating the end of search Is passed to the first arithmetic unit 440, and if d (x k (t ) , w ik (t) ) is smaller, information for examining the next representative vector in the same direction is passed to the first arithmetic unit 440. Further, the determination device 450 determines whether the up /
When the search is finished in both the down and search directions, the input vector x (t) ,
Data of the representative vector having the current minimum distortion (number min and value w min (t) ) and minimum distortion d
Output cur min . Further, the determination device 450
When the search is finished, the number min of the representative vector having the current minimum distortion is set to the next input vector x
The second arithmetic unit 4 as an initial representative vector of (t + 1)
Pass to 60.

【0271】第2の演算装置460は、判定装置450
から、入力ベクトルx(t) と現在の最小のひずみを
持つ代表ベクトルのデータ(番号min及び値wmin
(t )と最小のひずみdcur minを受け取る。そ
して、この第2の演算装置460は、代表ベクトル番号
minに対応するデータ(部分ひずみDminsum
の計算を次の(74)式にしたがって行う。
The second arithmetic unit 460 includes a judgment unit 450
From the input vector x (t) and the data of the representative vector having the current minimum distortion (number min and value w min
(T ) ) and the minimum distortion d cur min . Then, the second arithmetic unit 460 generates data (partial distortion D minsum ) corresponding to the representative vector number min.
Is calculated according to the following equation (74).

【0272】 Dminsum+=dcur min (74) また、この第2の演算装置460は、代表ベクトルの値
を次の(75)式にしたがって更新する。
D minsum + = d cur min (74) The second arithmetic unit 460 updates the value of the representative vector according to the following equation (75).

【0273】 wmin (t+1)=wmin (t)+η(t)[x(t)−wmin (t ] (75) また、この第2の演算装置460は、コードブックメモ
リ330の代表ベクトル番号minのアドレスに更新さ
れた代表ベクトルの値wmin (t+1)を書き込む。
W min (t + 1) = w min (t) + η (t) [x (t) −w min (t ) ] (75) The second arithmetic unit 460 is a representative of the codebook memory 330. The updated representative vector value w min (t + 1) is written to the address of the vector number min.

【0274】また、この演算装置460は、T個の入力
ベクトルに対して、符号化が終了し、上記途中計算が終
了したと制御装置470から指示を受けたら、次の(7
6)式及び(77)式にしたがって、部分ひずみD
び平均ひずみDを計算する。
When the arithmetic unit 460 receives an instruction from the control unit 470 that the encoding has been completed for the T input vectors and the intermediate calculation has been completed, the following (7)
6) Calculate the partial strain D i and the average strain D according to the equations (77) and (77).

【0275】[0275]

【数19】 [Equation 19]

【0276】さらに、この第2の演算装置460は、制
御装置470により、全てのデータ(部分ひずみD
isum,∀i)をクリアする。
Further, the second arithmetic unit 460 controls all data (partial distortion D
clear isum , ∀i).

【0277】部分ひずみソーティング装置462は、第
2の演算装置460からデータ(更新されたコードブッ
クと部分ひずみ)をもらう。また、この部分ひずみソー
ティング装置462は、コードブックメモリ430から
アドレスを指定して対応するデータ(コードブックW
(T))をもらう。この部分ひずみソーティング装置4
62は、部分ひずみの大きさを基準にして、コードブッ
クと部分ひずみをソートする。また、この部分ひずみソ
ーティング装置462は、部分ひずみ比較装置464
に、データ(ソートされたコードブックと部分ひずみ)
を渡す。
The partial distortion sorting device 462 receives data (updated codebook and partial distortion) from the second arithmetic unit 460. Further, the partial strain sorting device 462 specifies an address from the codebook memory 430 and stores the corresponding data (codebook W).
(T) ). This partial strain sorting device 4
62 sorts the codebook and the partial distortion based on the magnitude of the partial distortion. Further, the partial strain sorting device 462 includes a partial strain comparison device 464.
To the data (sorted codebook and partial distortion)
give.

【0278】部分ひずみ比較装置464は、部分ひずみ
ソーティング装置462から、データ(ソートされたコ
ードブックと部分ひずみ)をもらう。この部分ひずみ比
較装置464は、大きい部分ひずみと小さい部分ひずみ
を比較する。格差が大きい場合は、代表ベクトル移動装
置466に小さい部分ひずみを持つ代表ベクトルを大き
い部分ひずみを持つ代表ベクトルの近傍に移動させる情
報を渡す。さらに、データ(上記移動情報とコードブッ
クW(T))を代表ベクトル移動装置466に渡す。
The partial distortion comparing device 464 receives data (sorted codebook and partial distortion) from the partial distortion sorting device 462. This partial strain comparison device 464 compares a large partial strain with a small partial strain. When the disparity is large, information for moving a representative vector having a small partial strain to a representative vector having a large partial strain is passed to the representative vector moving device 466. Further, the data (the movement information and the codebook W (T) ) are passed to the representative vector movement device 466.

【0279】代表ベクトル移動装置466は、部分ひず
み比較装置464から、小さい部分ひずみを持つ代表ベ
クトルを大きい部分ひずみを持つ代表ベクトルの近傍に
移動させる情報とコードブックW(T)を受け取る。こ
の代表ベクトル移動装置466は、上記移動情報に基づ
いて、小さい部分ひずみを持つ代表ベクトルを大きい部
分ひずみを持つ代表ベクトルの近傍に移動させる。そし
て、この代表ベクトル移動装置466は、コードブック
メモリ430にデータ(更新されたコードブックW
(T))と書き込むアドレスを渡し、対応するアドレス
に更新されたコードブックを書き込む。さらに、この代
表ベクトル移動装置466は、制御装置470からの指
示で、任意の初期コードブックをコードブックメモリ4
30に設定する。
The representative vector moving unit 466 receives, from the partial distortion comparing unit 464, information for moving the representative vector having the small partial distortion to the vicinity of the representative vector having the large partial distortion and the codebook W (T) . The representative vector moving device 466 moves the representative vector having the small partial distortion to the vicinity of the representative vector having the large partial distortion based on the movement information. Then, the representative vector moving device 466 stores the data (the updated codebook W) in the codebook memory 430.
(T) ), and the updated codebook is written to the corresponding address. Further, the representative vector moving device 466 stores an arbitrary initial codebook in the codebook memory 4 according to an instruction from the control device 470.
Set to 30.

【0280】制御装置470は、ソーティング装置42
0、第1の演算装置440、判定装置450、第2の演
算装置460、部分ひずみソーティング装置462、部
分ひずみ比較装置464及び代表ベクトル移動装置46
6の処理フローを制御する。また、制御装置470は、
代表ベクトル移動装置466に任意の初期コードブック
の設定を指示する。また、制御装置470は、ソーティ
ング装置420にソートの基準となる次元を指定する。
さらに、制御装置470は、第1の演算装置440に初
期代表ベクトルのアドレス(又は番号)を指定し、ま
た、ソートの基準となった次元を指示する。
The control device 470 controls the sorting device 42
0, first computing device 440, determining device 450, second computing device 460, partial strain sorting device 462, partial strain comparing device 464, and representative vector moving device 46
6 is controlled. Also, the control device 470
Instruct the representative vector moving device 466 to set an arbitrary initial codebook. In addition, control device 470 designates sorting device 420 as a dimension serving as a reference for sorting.
Further, the control device 470 specifies the address (or number) of the initial representative vector to the first arithmetic device 440, and indicates the dimension used as the reference for sorting.

【0281】このような構成のコードブック生成装置4
00において、本発明では、等ひずみ原理に基づいたMi
n-Max Order Compare(MMOC) 操作を加えた競合学習によ
り図32に示すフローチャートにしたがってコードブッ
ク生成を行う。
The code book generating apparatus 4 having such a configuration is described.
In the present invention, in the present invention, Mi
A codebook is generated according to the flowchart shown in FIG. 32 by competitive learning with an n-Max Order Compare (MMOC) operation.

【0282】すなわち、このコードブック生成装置40
0では、先ず、ステップ(F401)において、代表ベ
クトル初期配置を設定する。また、代表ベクトルをソー
トするための基準の次元kを指定する。さらに、MMO
C操作のパラメータR,mを設定する。
That is, the code book generating device 40
In the case of 0, first, in step (F401), a representative vector initial arrangement is set. Also, a reference dimension k for sorting the representative vectors is specified. In addition, MMO
The parameters R and m of the C operation are set.

【0283】次のステップ(F402)では、次元kの
代表ベクトルの値に基づいて代表ベクトルをソートす
る。2回目以降は、更新された代表ベクトルw
(t+1)だけ、対応する場所に入るように修正する。
ソートされた順番の情報については、以下の2通りのや
り方が考えられる。
In the next step (F402), the representative vectors are sorted based on the value of the representative vector of dimension k. From the second time on, the updated representative vector w
Only (t + 1) is corrected to enter the corresponding location.
Regarding the information of the sorted order, the following two methods can be considered.

【0284】(1)直接代表ベクトルの順番を入れ替え
てしまう。代表ベクトルの番号を変更したくないとき
は、代表ベクトルの番号の情報を持つ構造体にして入れ
替える。直接ならべ変えているので、自分より下位の代
表ベクトルの番号lowerは、自分の配列の番号−1
とした配列の番号となる。また、自分より上位の代表ベ
クトルの番号upperは、自分の配列の番号+1とし
た配列の番号となる。
(1) The order of the representative vectors is directly changed. If it is not desired to change the number of the representative vector, the structure is replaced with a structure having information on the number of the representative vector. Since the numbers are directly changed, the number lower of the representative vector lower than the own is the number-1 of the own array.
And the sequence number. Also, the number upper of the representative vector higher than the own is the array number obtained by adding +1 to the array number of the own.

【0285】(2)ソートしたときの順番を示す配列を
用意する場合、各代表ベクトルが保持すべき情報は、自
分より下位の代表ベクトルの番号lowerと、自分よ
り上位の代表ベクトルの番号upperである。
(2) In the case of preparing an array indicating the order of sorting, the information to be held by each representative vector is represented by the lower number of the representative vector lower than the own and the upper number of the representative vector higher than the own. is there.

【0286】次のステップ(F403)では、入力ベク
トルx(t)と初期の代表ベクトルw (t)とのひず
みの計算を行い、このひずみd(x(t)
(t))を現在の最小のひずみdcur min
し、番号iを符号化の候補として保存しておく。
In the next step (F403), the distortion between the input vector x (t) and the initial representative vector w i (t) is calculated, and the distortion d (x (t) ,
and w i (t)) of the current minimum distortion d cur min, keep the number i as a candidate for coding.

【0287】 dcur min=d(x(t),w (t)) (78) min=i (79) 次のステップ(F404)では、初期の代表ベクトルw
(t) の両隣の代表ベクトルの番号、すなわち、 lower=下位方向の隣の代表ベクトルの番号 upper=上位方向の隣の代表ベクトルの番号 を保存する。
[0287] d cur min = d (x ( t), w i (t)) (78) min = i (79) In the next step (F404), the initial representative vector w
The number of the representative vector on both sides of i (t) , that is, lower = the number of the next representative vector in the lower direction, and upper = the number of the next representative vector in the upper direction.

【0288】次のステップ(F405)では、入力ベク
トルx(t)と代表ベクトルwlo wer (t)とのひ
ずみd(x(t),wlower (t))の計算を行
い、計算途中のd(x (t)
lowerk (t))を保存しておく。そして、この
ステップ(F405)では、計算したひずみd(x
(t),wlowerk (t))が現在の最小のひずみ
cur minより小さいか否か、すなわち、 d(x(t),wlower (t))<dcur min (80) が成り立つか否かを判定し、この(80)式が成り立つ
ならば、 dcur min=d(x(t),wlower (t)) (81) min=lower (82) とする。
In the next step (F405), the input vector
Torr x(T)And representative vector wlo wer (T)Tonohi
Z d (x(T), Wlower (T)) Calculation
D (xk (T),
wlowerk (T)) Is saved. And this
In step (F405), the calculated strain d (xk
(T), Wlowerk (T)) Is the current minimum strain
dcur minIs smaller than, that is, d (x(T), Wlower (T)) <Dcur min It is determined whether or not (80) holds, and this (80) equation holds.
Then dcur min= D (x(T), Wlower (T)) (81) min = lower (82)

【0289】次のステップ(F406)では、下位方向
の探索を続けるかどうか判断する。このステップ(F4
06)において、もし、 d(x (t),wlowerk (t))>dcur min (83) を満足するなら、下位方向の探索は終了で、ステップ
(F408)へ移り、さもなければ、次のステップ(F
407)へ進む。
In the next step (F406), it is determined whether to continue the search in the lower direction. This step (F4
At 06), if d (x k (t) , w lowerk (t) )> d cur min (83) is satisfied, the search in the lower direction is completed, and the process proceeds to step (F408). , Next step (F
Go to 407).

【0290】ステップ(F407)は、代表ベクトルの
番号lowerの更新ステップであり、現在のlowe
r番の代表ベクトルの下位方向の隣の代表ベクトルの番
号を新しいlowerとして、ステップ(F405)へ
戻る。
The step (F407) is a step of updating the lower number of the representative vector, and the current lower
The number of the representative vector next to the r-th representative vector in the lower direction is set as a new lower, and the process returns to step (F405).

【0291】ステップ(F408)では、入力ベクトル
(t)とupper番の代表ベクトルwupper
(t)とのひずみd(x(t),wupper (t)
の計算を行い、計算途中のd(x (t),w
upperk (t))を保存しておく。このステップ
(F408)では、計算したひずみd(x(t),w
upper t))が現在の最小のひずみdcur
minより小さいか否か、すなわち、 d(x(t),wupper (t))<dcur min (84) が成り立つか否かを判定して、この(84)式が成り立
つならば、 dcur min=d(x(t),wupper (t)) (85) min=upper (86) とする。
In the step (F408), the input vector x (t) and the representative vector w upper of the upper number are determined.
(T) and the strain of d (x (t), w upper (t))
Is calculated, and d (x k (t) , w
upperk (t) ) is saved. In this step (F408), the calculated strain d (x (t) , w
upper ( t) ) is the current minimum distortion d cur
It is determined whether or not d (x (t) , w upper (t) ) <d cur min (84) holds. If this equation (84) holds, then d cur min = d (x (t) , w upper (t) ) (85) min = upper (86)

【0292】次のステップ(F409)では、上位方向
の探索を続けるかどうか判断する。このステップ(F4
09)では、もし、 d(x (t),wupperk (t))>dcur min (87) を満足するなら、上位方向の探索は終了で、ステップ
(F411)へ移り、さもなければ、次のステップ(F
410)へ進む。
In the next step (F409), it is determined whether to continue the search in the upper direction. This step (F4
In 09), if d (x k (t) , w upperk (t) )> d cur min (87) is satisfied, the search in the upper direction is completed, and the process proceeds to step (F411). , Next step (F
Go to 410).

【0293】ステップ(F410)は、代表ベクトル番
号upperの更新ステップであり、現在のupper
番の代表ベクトルの上位方向の隣の代表ベクトルの番号
を新しいupperとして、ステップ(F408)へ戻
る。
Step (F410) is a step of updating the representative vector number upper, and the current upper
The number of the representative vector next to the numbered representative vector in the upper direction is set as a new upper, and the process returns to step (F408).

【0294】次のステップ(F411)では、入力ベク
トルの符号化と代表ベクトルの更新・平均ひずみの準備
を行う。 このステップ(F411)において、入力ベ
クトルx(t)は、最小のひずみdcur minを持つ
番号minの代表ベクトルw min (t)に符号化され
る。このステップ(F411)では、符号化された代表
ベクトルの値を次の(88)式にしたがって更新する。
At the next step (F411), the input vector
Encoding and updating representative vectors and preparing mean distortion
I do. In this step (F411), the input
Kutor x(T)Is the minimum strain dcur minhave
Representative vector w of number min min (T)Encoded into
You. In this step (F411), the encoded representative
The value of the vector is updated according to the following equation (88).

【0295】 wmin (t+1)=wmin (t)+η(t)[x(t)−wmin (t ] (88) また、このステップ(F411)では、部分ひずみD
minsumの計算を次の(89)式にしたがって行
う。
W min (t + 1) = w min (t) + η (t) [x (t) −w min (t ) ] (88) In this step (F411), the partial distortion D
The calculation of minsum is performed according to the following equation (89).

【0296】 Dminsum+=dcur min (89) そして、t=T−1が成り立つとき、部分ひずみD
び平均ひずみDの計算を行う。また、部分ひずみD
は、次の(90)式により計算する。
[0296] D minsum + = d cur min ( 89) Then, when t = T-1 is satisfied, the calculation of partial strain D i and the average strain D. Also, the partial strain D
i is calculated by the following equation (90).

【0297】[0297]

【数20】 (Equation 20)

【0298】そして、平均ひずみDは次の(91)式に
より計算する。
The average strain D is calculated by the following equation (91).

【0299】[0299]

【数21】 (Equation 21)

【0300】次のステップ(F412)では、すべての
入力ベクトルの符号化が終了したか否かを判定する。こ
のステップ(F412)では、もし、データが終わりな
らば処理を終了し、さもなければ、次のステップ(F4
13)へ進む。
In the next step (F412), it is determined whether or not encoding of all input vectors has been completed. In this step (F412), if the data is completed, the processing is terminated; otherwise, the next step (F4)
Proceed to 13).

【0301】ステップ(F413)は、MMOCモード
に入るか否かを判定するステップであり、t=T−1が
成り立たないときには、ステップ(F414)に進み、
t=T−1が成り立つときには、ステップ(F415)
に進む。
Step (F413) is a step for determining whether or not to enter the MMOC mode. If t = T-1 does not hold, the flow advances to step (F414).
When t = T−1 holds, step (F415)
Proceed to.

【0302】ステップ(F414)では、t=t+1と
して、ステップ(F402)に戻り、次の入力ベクトル
の探索をする。
In step (F414), t = t + 1, and the flow returns to step (F402) to search for the next input vector.

【0303】また、ステップ(F415)では、部分ひ
ずみに応じて、代表ベクトルと部分ひずみをソートす
る。
At step (F415), the representative vectors and the partial distortions are sorted according to the partial distortions.

【0304】そして、次のステップ(F416)及びス
テップ(F417)において、MMOC操作を実行す
る。
Then, in the next step (F416) and step (F417), the MMOC operation is executed.

【0305】すなわち、ステップ(F416)では、図
16に示すように、大きい順にR個の部分ひずみD
max[r]と小さい順にR個の部分ひずみD
min[r]を比較する。
That is, in the step (F416), as shown in FIG.
R partial strains D in ascending order of max [r]
Compare min [r].

【0306】そして、このステップ(F306)におけ
る比較の結果、次の(92)式が成り立ないときは、ス
テップ(F402)へ戻り、(92)式が成り立つとき
はステップ(F417)へ進む。
As a result of the comparison in step (F306), when the following equation (92) does not hold, the procedure returns to step (F402), and when the equation (92) holds, the procedure proceeds to step (F417).

【0307】 Dmax[r]>m×Dmin[r],(r=0,・・・,R−1) (92) さらに、ステップ(F417)では、次の(93)式に
示すように、小さい順の部分ひずみDmin[r]を持
つ代表ベクトルwmin (T)[r]を大きい順の部分
ひずみDmax[r]を持つ代表ベクトルwmax
(T)[r]の近傍に再配置して、ステップ(F40
2)へ戻る。
D max [r]> mxD min [r], (r = 0,..., R−1) (92) Further, in step (F417), as shown in the following equation (93): In addition, the representative vector w min (T) [r] having the partial distortion D min [r] in the smaller order is replaced with the representative vector w max having the partial distortion D max [r] in the larger order.
(T) Rearranged near [r], and step (F40)
Return to 2).

【0308】 wmin (T)[r]←wmax (T)[r]+ε (93) ただし、ε(≪1)は摂動項である。一回の反復で最大
R個の移動が可能となる。
W min (T) [r] ← w max (T) [r] + ε (93) where ε (≪1) is a perturbation term. Up to R movements are possible in one iteration.

【0309】また、本発明は、上述の(27)式で示さ
れるひずみの部分和が現在の最小のひずみdcur
minと比較して大きいときは、次の代表ベクトルを探
索するひずみの部分和を用いた高速化手法を組み合わせ
るとより一層の効果がある。
Also, according to the present invention, the partial sum of the distortion represented by the above equation (27) is equal to the current minimum distortion d cur.
When min is larger than min , a further effect is obtained by combining a high-speed technique using a partial sum of distortions for searching for the next representative vector.

【0310】ここでは、上述の図31に示したコードブ
ック生成装置400の変形例として、図33を参照して
差分のみを説明する。
Here, only a difference will be described with reference to FIG. 33 as a modified example of the code book generating apparatus 400 shown in FIG.

【0311】図33に示すコードブック生成装置40
0’において、コードブックメモリ430は、コードブ
ックとアドレスをソーティング装置420に渡す。
The code book generating device 40 shown in FIG.
At 0 ', codebook memory 430 passes the codebook and address to sorting device 420.

【0312】ソーティング装置420は、制御装置47
0からのソートの指示とどの次元kを基準としてソート
するかの指示を受け、コードブックメモリ430からコ
ードブックのアドレスとコードブックを読み出し、指定
された次元を基準としてコードブックをソートする。そ
して、そのソートされた代表ベクトルの順番通りに、各
代表ベクトルのアドレスを並び替え、ソート順に並んだ
アドレスをコードブックソート表480に書き込む。
[0312] The sorting device 420 includes the control device 47.
Upon receiving a sort instruction from 0 and an instruction on which dimension k is to be sorted, the code book address and code book are read from the code book memory 430, and the code book is sorted based on the specified dimension. Then, the addresses of the representative vectors are rearranged in the order of the sorted representative vectors, and the addresses arranged in the sorted order are written in the codebook sort table 480.

【0313】第1の演算装置440は、判定装置450
から、判定結果により探索する代表ベクトルの方向を示
すup/downの情報を受け、次の探索する代表ベク
トルのアドレスをコードブックソート表480に参照し
に行き、アドレスを受け取る。そして、コードブックメ
モリ430に、そのアドレスを渡し、対応するデータ
(代表ベクトルの番号iと値w (t)など)を読み込
む。
[0313] The first arithmetic unit 440 includes a judging unit 450.
, Receives up / down information indicating the direction of the representative vector to be searched based on the determination result, goes to the codebook sort table 480 for the address of the next representative vector to be searched, and receives the address. Then, the address is passed to the codebook memory 430, and the corresponding data (representative vector number i and value w i (t), etc.) is read.

【0314】そして、コードブックソート表480は、
ソーティング装置420から受け取ったアドレスを格納
する。また、コードブックソート表480は、第1の演
算装置440からの次の探索する代表ベクトルの参照の
指示に従って、その代表ベクトルのアドレスを第1の演
算装置440に渡す。
The codebook sort table 480 is
The address received from sorting device 420 is stored. In addition, the codebook sort table 480 passes the address of the representative vector to the first arithmetic device 440 according to the instruction from the first arithmetic device 440 to refer to the next representative vector to be searched.

【0315】[0315]

【発明の効果】以上説明したように、本発明によれば、
一部分の代表ベクトルを探索するだけで全探索と同じ代
表ベクトルを高速に選択することができる。また、本発
明によれば、従来方法と比較して、記憶するメモリが少
なくて済む。また、本発明によれば、従来方法と比較し
て、ソートはいずれかの一次元についてのみ行えばよい
ので、時間が短縮できる。また、本発明によれば、従来
方法と比較して、ソートされた代表ベクトルの順番を記
憶しておくメモリが必要ない。また、本発明によれば、
従来方法と比較して、代表ベクトルの探索が済んだかど
うかを示すフラグのメモリが必要なく、入力ベクトルご
とにフラグをクリアする時間も必要ない。さらに、本発
明によれば、次の探索する代表ベクトルの決め方は、一
意に決まる。
As described above, according to the present invention,
By searching only a part of the representative vectors, the same representative vector as in the full search can be selected at high speed. Further, according to the present invention, the number of memories to be stored can be reduced as compared with the conventional method. Further, according to the present invention, as compared with the conventional method, since the sorting only needs to be performed for any one dimension, the time can be reduced. Further, according to the present invention, as compared with the conventional method, there is no need for a memory for storing the order of the sorted representative vectors. According to the present invention,
Compared with the conventional method, a memory for a flag indicating whether or not the search for the representative vector has been completed is not required, and no time is required to clear the flag for each input vector. Further, according to the present invention, the method of determining the next representative vector to be searched is uniquely determined.

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

【図1】本発明を適用したコードブック生成装置の構成
を示すブロック図である。
FIG. 1 is a block diagram illustrating a configuration of a codebook generation device to which the present invention has been applied.

【図2】上記コードブック生成装置において実行される
けるVQ−SSCを用いたLBGアルゴリズム処理を示
すフローチャートである。
FIG. 2 is a flowchart showing an LBG algorithm process using VQ-SSC, which is executed in the codebook generation device.

【図3】全探索による代表ベクトルの探索の例を示す図
である。
FIG. 3 is a diagram showing an example of a search for a representative vector by a full search.

【図4】上記符号化アルゴリズム(VQ−SSC)によ
る代表ベクトルの探索例(探索0)を示す図である。
FIG. 4 is a diagram illustrating a search example (search 0) of a representative vector by the encoding algorithm (VQ-SSC).

【図5】同じく代表ベクトルの探索例(探索1)を示す
図である。
FIG. 5 is a diagram showing an example of searching for a representative vector (search 1).

【図6】同じく代表ベクトルの探索例(探索2)を示す
図である。
FIG. 6 is a diagram showing a search example (search 2) of a representative vector.

【図7】同じく代表ベクトルの探索例(探索3)を示す
図である。
FIG. 7 is a diagram showing an example of searching for a representative vector (search 3).

【図8】同じく代表ベクトルの探索例(探索4)を示す
図である。
FIG. 8 is a diagram showing an example of searching for a representative vector (search 4).

【図9】同じく代表ベクトルの探索例(探索5)を示す
図である。
FIG. 9 is a diagram showing an example of searching for a representative vector (search 5).

【図10】同じく代表ベクトルの探索例(探索6)を示
す図である。
FIG. 10 is a diagram showing an example of searching for a representative vector (search 6).

【図11】上記符号化アルゴリズム(VQ−SSC)の
探索範囲を示す図である。
FIG. 11 is a diagram showing a search range of the encoding algorithm (VQ-SSC).

【図12】図1に示したコードブック生成装置の変形例
の構成を示すブロック図である。
FIG. 12 is a block diagram showing a configuration of a modified example of the codebook generation device shown in FIG.

【図13】等ひずみ原理を例示する図である。FIG. 13 is a diagram illustrating the equal distortion principle.

【図14】本発明を適用したコードブック生成装置の構
成を示すブロック図である。
FIG. 14 is a block diagram illustrating a configuration of a codebook generation device to which the present invention has been applied.

【図15】上記コードブック生成装置おいてVQ−SS
Cを用いた等ひずみ原理に基づいたMin-Max Order Comp
are(MMOC) 操作を加えたLBGアルゴリズムを示すフロ
ーチャートである。
FIG. 15 shows a VQ-SS in the codebook generating apparatus.
Min-Max Order Comp based on equal strain principle using C
It is a flowchart which shows the LBG algorithm which added the are (MMOC) operation.

【図16】上記LBGアルゴリズムにいて、ソートされ
た昇順の部分ひずみと降順の部分ひずみの比較処理を模
式的に示す図である。
FIG. 16 is a diagram schematically illustrating a comparison process of sorted partial distortion in ascending order and partial distortion in descending order in the LBG algorithm.

【図17】R=1とした場合のMMOC操作を加えたL
BGアルゴリズムの動作の概念図である。
FIG. 17 is a diagram showing L obtained by adding an MMOC operation when R = 1.
It is a conceptual diagram of operation | movement of a BG algorithm.

【図18】R=1とした場合のMMOC操作を加えたL
BGアルゴリズムの実際の動作を模式的に示す図であ
る。
FIG. 18 is a view showing L obtained by adding an MMOC operation when R = 1;
It is a figure which shows the actual operation | movement of a BG algorithm typically.

【図19】図14に示したベクトル量子化器の変形例の
構成を示すブロック図である。
FIG. 19 is a block diagram showing a configuration of a modification of the vector quantizer shown in FIG.

【図20】Kodak PHOTOCD(24枚)の6枚を示す図で
ある。
FIG. 20 is a diagram showing six Kodak PHOTOCDs (24).

【図21】Kodak PHOTOCD(24枚)の6枚を示す図で
ある。
FIG. 21 is a diagram showing six Kodak PHOTOCDs (24).

【図22】Kodak PHOTOCD(24枚)の6枚を示す図で
ある。
FIG. 22 is a diagram showing six Kodak PHOTOCDs (24).

【図23】Kodak PHOTOCD(24枚)の6枚を示す図で
ある。
FIG. 23 is a diagram showing six Kodak PHOTOCDs (24).

【図24】MMOC操作(R=1)を加えたLBGアル
ゴリズムによる全探索とVQ−SSCによるKodak PHOT
OCDに対する階調変換のシミュレーション結果を示す図
である。
FIG. 24: Full search by LBG algorithm with MMOC operation (R = 1) and Kodak PHOT by VQ-SSC
FIG. 14 is a diagram illustrating a simulation result of gradation conversion for OCD.

【図25】上記シミュレーション結果について、全探索
による階調変換の実行時間(◆)とVQ−SSCによる
階調変換の実行時間(●)の比較及び実行時間の改善量
を示す図である。
FIG. 25 is a diagram showing a comparison between the execution time (◆) of gradation conversion by full search and the execution time (●) of gradation conversion by VQ-SSC and the amount of improvement in execution time for the simulation results.

【図26】MMOC操作(R=30)を加えたLBGア
ルゴリズムによる全探索とVQ−SSCによるKodak PH
OTOCDに対する階調変換のシミュレーション結果を示す
図である。
FIG. 26: Full search by LBG algorithm with MMOC operation (R = 30) and Kodak PH by VQ-SSC
FIG. 14 is a diagram illustrating a simulation result of gradation conversion for OTOCD.

【図27】上記シミュレーション結果について、全探索
による階調変換の実行時間(◆)とVQ−SSCによる
階調変換の実行時間(●)の比較及び実行時間の改善量
を示す図である。
FIG. 27 is a diagram showing, for the simulation results, a comparison between the execution time (◆) of gradation conversion by full search and the execution time (●) of gradation conversion by VQ-SSC and the amount of improvement in execution time.

【図28】本発明を適用したコードブック生成装置を示
すブロック図である。
FIG. 28 is a block diagram illustrating a codebook generation device to which the present invention has been applied.

【図29】上記コードブック生成装置において実行され
るVQ−SSCを用いた競合学習処理を示すフローチャ
ートである。
FIG. 29 is a flowchart showing a competitive learning process using VQ-SSC executed in the codebook generation device.

【図30】図29に示したコードブック生成装置の変形
例の構成を示すブロック図である。
FIG. 30 is a block diagram showing a configuration of a modification of the codebook generation device shown in FIG. 29.

【図31】本発明を適用したコードブック生成装置を示
すブロック図である。
FIG. 31 is a block diagram showing a codebook generation device to which the present invention is applied.

【図32】上記コードブック生成装置において実行され
るVQ−SSCを用いた競合学習処理を示すフローチャ
ートである。
FIG. 32 is a flowchart showing a competitive learning process using VQ-SSC executed in the codebook generating device.

【図33】図31に示したコードブック生成装置の変形
例の構成を示すブロック図である。
FIG. 33 is a block diagram showing a configuration of a modified example of the codebook generation device shown in FIG. 31.

【図34】ベクトル量子化の概念図である。FIG. 34 is a conceptual diagram of vector quantization.

【符号の説明】[Explanation of symbols]

100,100’,200,200’ コードブック生
成装置、110,210 入力ベクトル集合メモリ、1
20,220 ソーティング装置、130,230 コ
ードブックメモリ、140,240 第1の演算装置、
150,250判定装置、160,260 第2の演算
装置、170,270 制御装置、180,280 コ
ードブックソート表、262 部分ひずみソーティング
装置、264 部分ひずみ比較装置、266 代表ベク
トル移動装置、300,300’,400,400’
コードブック生成装置、110,210 入力ベクトル
集合メモリ、120,220 ソーティング装置、31
0,410 入力端子、320,420 ソーティング
装置、330,430 コードブックメモリ、340,
440 第1の演算装置、350,450 判定装置、
360,460第2の演算装置、370,470 制御
装置、380,480 コードブックソート表、462
部分ひずみソーティング装置、464 部分ひずみ比
較装置、466 代表ベクトル移動装置
100, 100 ', 200, 200' Codebook generation device, 110, 210 Input vector set memory, 1
20, 220 sorting device, 130, 230 codebook memory, 140, 240 first computing device,
150, 250 determining device, 160, 260 second computing device, 170, 270 control device, 180, 280 codebook sort table, 262 partial strain sorting device, 264 partial strain comparing device, 266 representative vector moving device, 300, 300 ', 400,400'
Codebook generation device, 110, 210 Input vector set memory, 120, 220 Sorting device, 31
0,410 input terminal, 320,420 sorting device, 330,430 codebook memory, 340,
440 first arithmetic unit, 350, 450 determination unit,
360, 460 second arithmetic unit, 370, 470 control unit, 380, 480 codebook sort table, 462
Partial strain sorting device, 464 Partial strain comparison device, 466 Representative vector moving device

───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5D015 GG00 5D045 DA11 5J064 AA03 BA13 BB14 BC01 BC14 BC21 BD01  ──────────────────────────────────────────────────続 き Continued on the front page F term (reference) 5D015 GG00 5D045 DA11 5J064 AA03 BA13 BB14 BC01 BC14 BC21 BD01

Claims (32)

【特許請求の範囲】[Claims] 【請求項1】 代表ベクトルの値に基づいて代表ベクト
ルをソートするソーティングステップと、 入力ベクトルと代表ベクトルのひずみを計算し、次に探
索する代表ベクトルのアドレスを計算する第1の演算ス
テップと、 上記第1の演算ステップにより得られる2つのひずみを
比較して符号化される代表ベクトルの候補を決める判定
ステップと、 上記判定ステップによる判定結果に基づいて代表ベクト
ルの重心の計算・平均ひずみの計算を行う第2の演算ス
テップとを有し、 上記各ステップを繰り返し行うことを特徴とするベクト
ル量子化のコードブック生成方法。
A sorting step of sorting the representative vectors based on the values of the representative vectors; a first calculating step of calculating a distortion of the input vector and the representative vector, and calculating an address of a representative vector to be searched next; A determining step of comparing two distortions obtained in the first operation step to determine a candidate for a representative vector to be encoded; and calculating a center of gravity of the representative vector and calculating an average distortion based on the determination result in the determining step And a second calculation step of performing the above-mentioned steps, and repeatedly performing the above steps.
【請求項2】 上記判定ステップでは、上記第1の演算
ステップによる得られる2つのひずみを比較して符号化
される代表ベクトルの候補を決めるとともに、ひずみの
部分和の比較を行うことを特徴とする請求項1に記載の
ベクトル量子化のコードブック生成方法。
2. The method according to claim 1, wherein in the determining step, a candidate of a representative vector to be encoded is determined by comparing two distortions obtained in the first operation step, and a partial sum of the distortions is compared. The method of generating a codebook for vector quantization according to claim 1.
【請求項3】 上記ソーティングステップにおいてソー
トしたコードブックの並び順を格納する記憶ステップを
さらに有することを特徴とする請求項1又は請求項2に
記載のベクトル量子化のコードブック生成方法。
3. The method according to claim 1, further comprising a storage step of storing an arrangement order of the codebooks sorted in the sorting step.
【請求項4】 初期の代表ベクトルに前の入力ベクトル
が符号化された代表ベクトルを指定することを特徴とす
る請求項1乃至請求項3のいずれか1項に記載のベクト
ル量子化のコードブック生成方法。
4. The codebook for vector quantization according to claim 1, wherein a representative vector in which a previous input vector is encoded is designated as an initial representative vector. Generation method.
【請求項5】 初期の代表ベクトルに前回の反復のとき
に符号化された代表ベクトルを指定することを特徴とす
る請求項1乃至請求項4のいずれか1項に記載のベクト
ル量子化のコードブック生成方法。
5. The vector quantization code according to claim 1, wherein a representative vector coded at the time of the previous iteration is designated as the initial representative vector. Book generation method.
【請求項6】 代表ベクトルの値に基づいて代表ベクト
ルをソートするソーティングステップと、 入力ベクトルと複数の代表ベクトルとのひずみを並列に
計算し,次に探索する代表ベクトルのアドレスを計算す
る第1の演算ステップと、 上記第1の演算ステップによる得られる複数のひずみを
比較して符号化される代表ベクトルの候補を決める判定
ステップと、 上記判定ステップによる判定結果に基づいて代表ベクト
ルの重心の計算・平均ひずみの計算を行う第2の演算ス
テップとを有し、 上記各ステップを繰り返し行うことを特徴とするベクト
ル量子化のコードブック生成方法。
6. A sorting step for sorting the representative vectors based on the values of the representative vectors, calculating a distortion between the input vector and the plurality of representative vectors in parallel, and calculating an address of a representative vector to be searched next. And a determining step of comparing a plurality of distortions obtained in the first calculating step to determine a candidate for a representative vector to be encoded; and calculating a center of gravity of the representative vector based on the determination result in the determining step. A second calculation step for calculating an average distortion; and a codebook generation method for vector quantization, wherein the above steps are repeatedly performed.
【請求項7】 代表ベクトルの値に基づいて代表ベクト
ルをソートするソーティングステップと、 入力ベクトルと代表ベクトルのひずみを計算し、次に探
索する代表ベクトルのアドレスを計算する第1の演算ス
テップと、 上記第1の演算ステップにより得られる2つのひずみを
比較して符号化される代表ベクトルの候補を決める判定
ステップと、 上記判定ステップによる判定結果に基づいて重心計算・
平均ひずみ計算・部分ひずみ計算を行う第2の演算ステ
ップと、 上記第2の演算ステップにより得られる部分ひずみを基
準としてソートする部分ひずみソーティングステップ
と、 上記部分ひずみソーティングステップによりソートされ
た2つの部分ひずみの格差を比較する比較ステップと、 上記比較ステップにおける比較結果に基づいて、部分ひ
ずみの小さい代表ベクトルを部分ひずみの大きい代表ベ
クトルの近傍に移動させる代表ベクトル移動ステップと
を有し、 上記各ステップを繰り返し行うことを特徴とするベクト
ル量子化のコードブック生成方法。
7. A sorting step of sorting the representative vectors based on the values of the representative vectors, a first operation step of calculating a distortion of the input vector and the representative vector, and calculating an address of a representative vector to be searched next; A determination step of comparing two distortions obtained in the first operation step to determine a candidate of a representative vector to be encoded; and calculating a center of gravity based on a determination result in the determination step.
A second operation step of performing average strain calculation / partial strain calculation, a partial strain sorting step of sorting based on the partial strain obtained by the second operation step, and two parts sorted by the partial strain sorting step A comparison step of comparing the disparity of distortion; and a representative vector moving step of moving a representative vector having a small partial strain to a vicinity of a representative vector having a large partial distortion based on a comparison result in the comparing step. , And a codebook generation method for vector quantization.
【請求項8】 代表ベクトルの値に基づいて代表ベクト
ルをソートするソーティングステップと、 入力ベクトルと複数の代表ベクトルとのひずみを並列に
計算し、次に探索する代表ベクトルのアドレスを計算す
る第1の演算ステップと、 上記第1の演算ステップにより得られる複数のひずみを
比較して符号化される代表ベクトルの候補を決める判定
ステップと、 上記判定ステップによる判定結果に基づいて重心計算・
平均ひずみ計算・部分ひずみ計算を行う第2の演算ステ
ップと、 上記第2の演算ステップにより得られる部分ひずみを基
準としてソートする部分ひずみソーティングステップ
と、 上記部分ひずみソーティングステップによりソートされ
た2つの部分ひずみの格差を比較する比較ステップと、 上記比較ステップにおける比較結果に基づいて、部分ひ
ずみの小さい代表ベクトルを部分ひずみの大きい代表ベ
クトルの近傍に移動させる代表ベクトル移動ステップと
を有し、 上記各ステップを繰り返し行うことを特徴とするベクト
ル量子化のコードブック生成方法。
8. A sorting step for sorting the representative vectors based on the values of the representative vectors, calculating a distortion between the input vector and the plurality of representative vectors in parallel, and calculating an address of a representative vector to be searched next. A determination step of comparing a plurality of distortions obtained in the first calculation step to determine a candidate for a representative vector to be encoded; and calculating a center of gravity based on a determination result of the determination step.
A second operation step of performing average strain calculation / partial strain calculation, a partial strain sorting step of sorting based on the partial strain obtained by the second operation step, and two parts sorted by the partial strain sorting step A comparison step of comparing the disparity of distortion; and a representative vector moving step of moving a representative vector having a small partial strain to a vicinity of a representative vector having a large partial distortion based on a comparison result in the comparing step. , And a codebook generation method for vector quantization.
【請求項9】 代表ベクトルの値に基づいて代表ベクト
ルをソートするソーティングステップと、 入力ベクトルと代表ベクトルのひずみを計算し、次に探
索する代表ベクトルのアドレスを計算する第1の演算ス
テップと、 上記第1の演算ステップにより得られる2つのひずみを
比較して符号化される代表ベクトルの候補を決める判定
ステップと、 上記判定ステップによる判定結果に基づいて重心計算・
平均ひずみ計算・部分ひずみ計算を行う第2の演算ステ
ップと、 上記第2の演算ステップにより得られる部分ひずみを基
準としてソートする部分ひずみソーティングステップ
と、 上記部分ひずみソーティングステップによりソートされ
た複数個の部分ひずみの格差を比較する比較ステップ
と、 上記比較ステップにおける比較結果に基づいて、複数の
部分ひずみの小さい代表ベクトルを部分ひずみの大きい
代表ベクトルの近傍に移動させる代表ベクトル移動ステ
ップとを有し、 上記各ステップを繰り返し行うことを特徴とするベクト
ル量子化のコードブック生成方法。
9. A sorting step for sorting the representative vectors based on the values of the representative vectors, a first operation step for calculating a distortion of the input vector and the representative vector, and calculating an address of the representative vector to be searched next; A determination step of comparing two distortions obtained in the first operation step to determine a candidate of a representative vector to be encoded; and calculating a center of gravity based on a determination result in the determination step.
A second operation step of performing average strain calculation / partial strain calculation, a partial strain sorting step of sorting on the basis of the partial strain obtained in the second operation step, and a plurality of pieces sorted by the partial strain sorting step A comparison step of comparing differences in partial strains, and a representative vector moving step of moving a plurality of representative vectors having small partial strains to a vicinity of a representative vector having large partial strains based on a comparison result in the comparison step, A method of generating a codebook for vector quantization, comprising repeating the above steps.
【請求項10】 代表ベクトルの値に基づいて代表ベク
トルをソートするソーティングステップと、 入力ベクトルと複数の代表ベクトルとのひずみを並列に
計算し,次に探索する代表ベクトルのアドレスを計算す
る第1の演算ステップと、 上記第1の演算ステップにより得られる複数のひずみを
比較して符号化される代表ベクトルの候補を決める判定
ステップと、 上記判定ステップによる判定結果に基づいて重心計算・
平均ひずみ計算・部分ひずみ計算を行う第2の演算ステ
ップと、 上記第2の演算ステップにより得られる部分ひずみを基
準としてソートする部分ひずみソーティングステップ
と、 上記部分ひずみソーティングステップによりソートされ
た複数個の部分ひずみの格差を比較する比較ステップ
と、 上記比較ステップにおける比較結果に基づいて、複数の
部分ひずみの小さい代表ベクトルを部分ひずみの大きい
代表ベクトルの近傍に移動させる代表ベクトル移動ステ
ップとを有し、 上記各ステップを繰り返し行うことを特徴とするベクト
ル量子化のコードブック生成方法。
10. A sorting step for sorting a representative vector based on a value of a representative vector, calculating a distortion between an input vector and a plurality of representative vectors in parallel, and calculating an address of a representative vector to be searched next. A determination step of comparing a plurality of distortions obtained in the first calculation step to determine a candidate for a representative vector to be encoded; and calculating a center of gravity based on a determination result of the determination step.
A second operation step of performing average strain calculation / partial strain calculation, a partial strain sorting step of sorting on the basis of the partial strain obtained in the second operation step, and a plurality of pieces sorted by the partial strain sorting step A comparison step of comparing differences in partial strains, and a representative vector moving step of moving a plurality of representative vectors having small partial strains to a vicinity of a representative vector having large partial strains based on a comparison result in the comparison step, A method of generating a codebook for vector quantization, comprising repeating the above steps.
【請求項11】 代表ベクトルの値に基づいて代表ベク
トルをソートするソーティングステップと、 入力ベクトルとコードブックの代表ベクトルのひずみを
計算し、次に探索する代表ベクトルのアドレスを計算す
る第1の演算ステップと、 上記第1の演算ステップにより得られた2つのひずみを
比較して符号化される代表ベクトルの候補を決める判定
ステップと、 上記判定ステップによる判定結果に基づいて、適応的な
代表ベクトルの計算・平均ひずみの計算を行う第2の演
算ステップとを有し、 上記各ステップを繰り返し行うことを特徴とするベクト
ル量子化のコードブック生成方法。
11. A sorting step for sorting the representative vectors based on the values of the representative vectors, and a first operation for calculating the distortion of the input vector and the representative vector of the codebook and calculating the address of the representative vector to be searched next. A step of comparing the two distortions obtained in the first operation step to determine a candidate for a representative vector to be encoded; and an adaptive representative vector A second calculation step of calculating and calculating average distortion, wherein the above steps are repeatedly performed, and a codebook generation method for vector quantization is provided.
【請求項12】 代表ベクトルの値に基づいて代表ベク
トルをソートするソーティングステップと、 入力ベクトルとコードブックの複数の代表ベクトルとの
ひずみを並列に計算し、次に探索する代表ベクトルのア
ドレスを計算する第1の演算ステップと、 上記第1の演算ステップにより得られた複数のひずみを
比較して符号化される代表ベクトルの候補を決める判定
ステップと、 上記判定ステップによる判定結果に基づいて、適応的な
代表ベクトルの計算・平均ひずみの計算を行う第2の演
算ステップとを有し、 上記各ステップを繰り返し行うことを特徴とするベクト
ル量子化のコードブック生成方法。
12. A sorting step of sorting the representative vectors based on the values of the representative vectors, calculating a distortion between the input vector and a plurality of representative vectors of the codebook in parallel, and calculating an address of a representative vector to be searched next. A first operation step of performing a determination, a plurality of distortions obtained in the first operation step are compared to determine a candidate of a representative vector to be encoded, and a determination is made based on a result of the determination step. A second operation step of calculating a typical representative vector and calculating an average distortion, and repeatedly performing each of the above steps.
【請求項13】 代表ベクトルの値に基づいて代表ベク
トルをソートするソーティングステップと、 入力ベクトルとコードブックの代表ベクトルのひずみを
計算し、次に探索する代表ベクトルのアドレスを計算す
る第1の演算ステップと、 上記第1の演算ステップにより得られた2つのひずみを
比較して符号化される代表ベクトルの候補を決める判定
ステップと、 上記判定ステップによる判定結果に基づいて、適応的な
代表ベクトルの計算・平均ひずみの計算・部分ひずみ計
算を行う第2の演算ステップと、 上記第2の演算ステップにより得られた部分ひずみを基
準としてソートする部分ひずみソーティングステップ
と、 上記部分ひずみソーティングステップによりソートされ
た2つの部分ひずみの格差を比較する比較ステップと、 上記比較ステップにおける比較結果に基づいて,部分ひ
ずみの小さい代表ベクトルを部分ひずみの大きい代表ベ
クトルの近傍に移動させる代表ベクトル移動ステップと
を有し、 上記各ステップを繰り返し行うことを特徴とするベクト
ル量子化のコードブック生成方法。
13. A sorting step for sorting the representative vectors based on the values of the representative vectors, a first operation for calculating a distortion of the input vector and the representative vector of the codebook, and calculating an address of a representative vector to be searched next. A step of comparing the two distortions obtained in the first operation step to determine a candidate for a representative vector to be encoded; and an adaptive representative vector A second operation step of performing calculation / average strain calculation / partial strain calculation; a partial strain sorting step of sorting on the basis of the partial strain obtained by the second operation step; Comparing the difference between the two partial strains, A representative vector moving step of moving a representative vector having a small partial distortion to a vicinity of a representative vector having a large partial distortion based on a comparison result in the comparing step, wherein the above steps are repeatedly performed. Codebook generation method.
【請求項14】 代表ベクトルの値に基づいて代表ベク
トルをソートするソーティングステップと、 入力ベクトルとコードブックの複数の代表ベクトルとの
ひずみを並列に計算し、次に探索する代表ベクトルのア
ドレスを計算する第1の演算ステップと、 上記第1の演算ステップにより得られた複数のひずみを
比較して符号化される代表ベクトルの候補を決める判定
ステップと、 上記判定ステップによる判定結果に基づいて、適応的な
代表ベクトルの計算・平均ひずみの計算・部分ひずみ計
算を行う第2の演算ステップと、 上記第2の演算ステップにより得られた部分ひずみを基
準としてソートする部分ひずみソーティングステップ
と、 上記部分ひずみソーティングステップによりソートされ
た2つの部分ひずみの格差を比較する比較ステップと、 上記比較ステップにおける比較結果に基づいて、部分ひ
ずみの小さい代表ベクトルを部分ひずみの大きい代表ベ
クトルの近傍に移動させる代表ベクトル移動ステップと
を有し、 上記各ステップを繰り返し行うことを特徴とするベクト
ル量子化のコードブック生成方法。
14. A sorting step for sorting the representative vectors based on the values of the representative vectors, calculating a distortion between the input vector and a plurality of representative vectors of the codebook in parallel, and calculating an address of a representative vector to be searched next. A first operation step of performing a determination, a plurality of distortions obtained in the first operation step are compared to determine a candidate of a representative vector to be encoded, and a determination is made based on a result of the determination step. A second calculation step of calculating a typical representative vector, calculating an average strain, and calculating a partial strain; a partial strain sorting step of sorting on the basis of the partial strain obtained in the second calculation step; A comparison step for comparing the difference between two partial strains sorted by the sorting step; And a representative vector moving step of moving a representative vector having a small partial distortion to a vicinity of a representative vector having a large partial distortion based on a comparison result in the comparing step, wherein the steps are repeatedly performed. To generate a codebook for vector quantization.
【請求項15】 代表ベクトルの値に基づいて代表ベク
トルをソートするソーティングステップと、 入力ベクトルとコードブックの代表ベクトルのひずみを
計算し、次に探索する代表ベクトルのアドレスを計算す
る第1の演算ステップと、 上記第1の演算ステップにより得られた2つのひずみを
比較して符号化される代表ベクトルの候補を決める判定
ステップと、 上記判定ステップによる判定結果に基づいて、適応的な
代表ベクトルの計算・平均ひずみの計算・部分ひずみ計
算を行う第2の演算ステップと、 上記第2の演算ステップにより得られた部分ひずみを基
準としてソートする部分ひずみソーティングステップ
と、 上記部分ひずみソーティングステップによりソートされ
た複数個の部分ひずみの格差を比較する比較ステップ
と、 上記比較ステップにおける比較結果に基づいて、複数の
部分ひずみの小さい代表ベクトルを部分ひずみの大きい
代表ベクトルの近傍に移動させる代表ベクトル移動ステ
ップとを有し、 上記各ステップを繰り返し行うことを特徴とするベクト
ル量子化のコードブック生成方法。
15. A sorting step for sorting the representative vectors based on the values of the representative vectors, a first operation for calculating a distortion of the input vector and the representative vector of the codebook, and calculating an address of a representative vector to be searched next. A step of comparing the two distortions obtained in the first operation step to determine a candidate for a representative vector to be encoded; and an adaptive representative vector A second operation step of performing calculation, calculation of average strain, and partial strain calculation; a partial strain sorting step of sorting based on the partial strain obtained in the second operation step; Comparing the disparity of the plurality of partial strains, A representative vector moving step of moving a plurality of representative vectors having a small partial distortion to the vicinity of the representative vector having a large partial distortion based on the comparison result in the comparing step, wherein the above steps are repeatedly performed. Codebook generation method for quantization.
【請求項16】 代表ベクトルの値に基づいて代表ベク
トルをソートするソーティングステップと、 入力ベクトルとコードブックの複数の代表ベクトルとの
ひずみを並列に計算し、次に探索する代表ベクトルのア
ドレスを計算する第1の演算ステップと、 上記第1の演算ステップにより得られた複数のひずみを
比較して符号化される代表ベクトルの候補を決める判定
ステップと、 上記判定ステップによる判定結果に基づいて、適応的な
代表ベクトルの計算・平均ひずみの計算・部分ひずみ計
算を行う第2の演算ステップと、 上記第2の演算ステップにより得られた部分ひずみを基
準としてソートする部分ひずみソーティングステップ
と、 上記部分ひずみソーティングステップによりソートされ
た複数個の部分ひずみの格差を比較する比較ステップ
と、 上記比較ステップにおける比較結果に基づいて、複数の
部分ひずみの小さい代表ベクトルを部分ひずみの大きい
代表ベクトルの近傍に移動させる代表ベクトル移動ステ
ップとを有し、 上記各ステップを繰り返し行うことを特徴とするベクト
ル量子化のコードブック生成方法。
16. A sorting step for sorting the representative vectors based on the values of the representative vectors, calculating a distortion between the input vector and a plurality of representative vectors of the codebook in parallel, and calculating an address of a representative vector to be searched next. A first operation step of performing a determination, a plurality of distortions obtained in the first operation step are compared to determine a candidate of a representative vector to be encoded, and a determination is made based on a result of the determination step. A second calculation step of calculating a typical representative vector, calculating an average strain, and calculating a partial strain; a partial strain sorting step of sorting on the basis of the partial strain obtained in the second calculation step; A comparison step for comparing the disparities of a plurality of partial strains sorted by the sorting step. And a representative vector moving step of moving a plurality of representative vectors having a small partial distortion to a vicinity of a representative vector having a large partial distortion based on the comparison result in the comparing step. A codebook generation method for vector quantization characterized by the following.
【請求項17】 入力ベクトル集合を格納する入力ベク
トル集合記憶手段と、 コードブックを格納するコードブック記憶手段と、 コードブックを並び替えるソーティング手段と、 入力ベクトルと代表ベクトルのひずみを計算し、次に探
索する代表ベクトルのアドレスを計算する第1の演算手
段と、 上記第1の演算手段による得られる2つのひずみを比較
して符号化される代表ベクトルの候補を決める判定手段
と、 上記判定手段による判定結果に基づいて代表ベクトルの
重心の計算・平均ひずみの計算を行う第2の演算手段
と、 上記ソーティング手段、第1の演算手段、判定手段及び
第2の演算手段の処理フローを制御する制御手段とから
構成されるベクトル量子化のコードブック生成装置。
17. An input vector set storing means for storing an input vector set, a code book storing means for storing a code book, a sorting means for rearranging a code book, and calculating a distortion of an input vector and a representative vector. First calculating means for calculating an address of a representative vector to be searched for; determining means for comparing two distortions obtained by the first calculating means to determine a candidate for a representative vector to be encoded; A second calculating means for calculating the center of gravity of the representative vector and calculating the average distortion based on the determination result by the above, and controlling the processing flow of the sorting means, the first calculating means, the determining means and the second calculating means. A vector quantization codebook generating apparatus including a control unit.
【請求項18】 上記判定手段は、上記第1の演算手段
による得られる2つのひずみを比較して符号化される代
表ベクトルの候補を決めるとともに、ひずみの部分和の
比較を行うことを特徴とする請求項17に記載のベクト
ル量子化のコードブック生成装置。
18. The method according to claim 18, wherein the determination unit compares two distortions obtained by the first operation unit to determine a candidate of a representative vector to be encoded, and compares partial sums of the distortions. The codebook generation apparatus for vector quantization according to claim 17.
【請求項19】 上記ソーティング手段によりソートし
たコードブックの並び順を格納する記憶手段をさらに備
えることを特徴とする請求項17又は請求項18に記載
のベクトル量子化のコードブック生成装置。
19. The codebook generation apparatus according to claim 17, further comprising a storage unit configured to store an arrangement order of the codebooks sorted by the sorting unit.
【請求項20】 初期の代表ベクトルに前の入力ベクト
ルが符号化された代表ベクトルを指定することを特徴と
する請求項17乃至請求項19のいずれか1項に記載の
ベクトル量子化のコードブック生成装置。
20. The codebook for vector quantization according to claim 17, wherein a representative vector in which a previous input vector is encoded is designated as an initial representative vector. Generator.
【請求項21】 初期の代表ベクトルに前回の反復のと
きに符号化された代表ベクトルを指定することを特徴と
する請求項17乃至請求項20のいずれか1項に記載の
ベクトル量子化のコードブック生成装置。
21. The vector quantization code according to claim 17, wherein a representative vector coded in a previous iteration is designated as an initial representative vector. Book generation device.
【請求項22】 入力ベクトル集合を格納する入力ベク
トル集合記憶手段と、 コードブックを格納するコードブック記憶手段と、 コードブックを並び替えるソーティング手段と、 入力ベクトルと複数の代表ベクトルとのひずみを並列に
計算し,次に探索する代表ベクトルのアドレスを計算す
る第1の演算手段と、 上記第1の演算手段による得られる複数のひずみを比較
して符号化される代表ベクトルの候補を決める判定手段
と、 上記判定手段による判定結果に基づいて代表ベクトルの
重心の計算・平均ひずみの計算を行う第2の演算手段
と、 上記ソーティング手段、第1の演算手段、判定手段及び
第2の演算手段の処理フローを制御する制御手段とから
構成されるベクトル量子化のコードブック生成装置。
22. An input vector set storage means for storing an input vector set, a codebook storage means for storing a codebook, a sorting means for rearranging a codebook, and a method for parallelizing distortion between an input vector and a plurality of representative vectors. Calculating means for calculating the address of a representative vector to be searched next, and determining means for comparing a plurality of distortions obtained by the first calculating means to determine a candidate for a representative vector to be encoded. And a second calculating means for calculating the center of gravity of the representative vector and calculating the average distortion based on the result of the determination by the determining means; and the sorting means, the first calculating means, the determining means, and the second calculating means. A vector quantization codebook generating apparatus, comprising: a control unit that controls a processing flow.
【請求項23】 入力ベクトル集合を格納する入力ベク
トル集合記憶手段と、 コードブックを格納するコードブック記憶手段と、 コードブックを並び替えるソーティング手段と、 入力ベクトルと代表ベクトルのひずみを計算し、次に探
索する代表ベクトルのアドレスを計算する第1の演算手
段と、 上記第1の演算手段により得られる2つのひずみを比較
して符号化される代表ベクトルの候補を決める判定手段
と、 上記判定手段による判定結果に基づいて重心計算・平均
ひずみ計算・部分ひずみ計算を行う第2の演算手段と、 上記第2の演算手段により得られる部分ひずみを基準と
してソートする部分ひずみソーティング手段と、 上記部分ひずみソーティング手段によりソートされた2
つの部分ひずみの格差を比較する比較手段と、 上記比較手段による比較結果に基づいて、部分ひずみの
小さい代表ベクトルを部分ひずみの大きい代表ベクトル
の近傍に移動させる代表ベクトル移動手段と、 上記ソーティング手段、第1の演算手段、判定手段、第
2の演算手段、部分ひずみソーティング手段、部分ひず
み比較手段及び代表ベクトル移動手段の処理フローを制
御する制御手段とから構成されるベクトル量子化のコー
ドブック生成装置。
23. An input vector set storage means for storing an input vector set, a codebook storage means for storing a codebook, a sorting means for rearranging a codebook, and calculating a distortion of an input vector and a representative vector. First calculating means for calculating an address of a representative vector to be searched for; determining means for comparing two distortions obtained by the first calculating means to determine a candidate for a representative vector to be encoded; A second calculating means for performing a center of gravity calculation, an average strain calculation, and a partial strain calculation based on the determination result according to the above, a partial strain sorting means for sorting based on the partial strain obtained by the second calculating means, 2 sorted by sorting means
Comparing means for comparing a difference between two partial strains; a representative vector moving means for moving a representative vector having a small partial strain to a vicinity of a representative vector having a large partial strain based on a comparison result by the comparing means; A vector quantization codebook generating apparatus comprising: a first calculating means, a determining means, a second calculating means, a partial strain sorting means, a partial strain comparing means, and a control means for controlling a processing flow of a representative vector moving means. .
【請求項24】 入力ベクトル集合を格納する入力ベク
トル集合記憶手段と、 コードブックを格納するコードブック記憶手段と、 コードブックを並び替えるソーティング手段と、 入力ベクトルと複数の代表ベクトルとのひずみを並列に
計算し、次に探索する代表ベクトルのアドレスを計算す
る第1の演算手段と、 上記第1の演算手段により得られる複数のひずみを比較
して符号化される代表ベクトルの候補を決める判定手段
と、 上記判定手段による判定結果に基づいて重心計算・平均
ひずみ計算・部分ひずみ計算を行う第2の演算手段と、 上記第2の演算手段により得られる部分ひずみを基準と
してソートする部分ひずみソーティング手段と、 上記部分ひずみソーティング手段によりソートされた2
つの部分ひずみの格差を比較する比較手段と、 上記比較手段による比較結果に基づいて、部分ひずみの
小さい代表ベクトルを部分ひずみの大きい代表ベクトル
の近傍に移動させる代表ベクトル移動手段と、 上記ソーティング手段、第1の演算手段、判定手段、第
2の演算手段、部分ひずみソーティング手段、部分ひず
み比較手段及び代表ベクトル移動手段の処理フローを制
御する制御手段とから構成されるベクトル量子化のコー
ドブック生成装置。
24. An input vector set storage means for storing an input vector set, a codebook storage means for storing a codebook, a sorting means for rearranging a codebook, and a method for parallelizing distortion between an input vector and a plurality of representative vectors. Calculating means for calculating the address of a representative vector to be searched next, and determining means for comparing a plurality of distortions obtained by the first calculating means to determine candidates for a representative vector to be encoded. And second calculating means for calculating the center of gravity, average strain calculation, and partial strain calculation based on the determination result by the determining means, and partial strain sorting means for sorting based on the partial strain obtained by the second calculating means. And 2 sorted by the partial strain sorting means.
Comparing means for comparing a difference between two partial strains; a representative vector moving means for moving a representative vector having a small partial strain to a vicinity of a representative vector having a large partial strain based on a comparison result by the comparing means; A vector quantization codebook generating apparatus comprising: a first calculating means, a determining means, a second calculating means, a partial strain sorting means, a partial strain comparing means, and a control means for controlling a processing flow of a representative vector moving means. .
【請求項25】 入力ベクトル集合を格納する入力ベク
トル集合記憶手段と、 コードブックを格納するコードブック記憶手段と、 コードブックを並び替えるソーティング手段と、 入力ベクトルと代表ベクトルのひずみを計算し、次に探
索する代表ベクトルのアドレスを計算する第1の演算手
段と、 上記第1の演算手段により得られる2つのひずみを比較
して符号化される代表ベクトルの候補を決める判定手段
と、 上記判定手段による判定結果に基づいて重心計算・平均
ひずみ計算・部分ひずみ計算を行う第2の演算手段と、 上記第2の演算手段により得られる部分ひずみを基準と
してソートする部分ひずみソーティング手段と、 上記部分ひずみソーティング手段によりソートされた複
数個の部分ひずみの格差を比較する比較手段と、 上記比較手段による比較結果に基づいて、複数の部分ひ
ずみの小さい代表ベクトルを部分ひずみの大きい代表ベ
クトルの近傍に移動させる代表ベクトル移動手段と、 上記ソーティング手段、第1の演算手段、判定手段、第
2の演算手段、部分ひずみソーティング手段、部分ひず
み比較手段及び代表ベクトル移動手段の処理フローを制
御する制御手段とから構成されるベクトル量子化のコー
ドブック生成装置。
25. An input vector set storing means for storing an input vector set, a code book storing means for storing a code book, a sorting means for rearranging a code book, and calculating a distortion of an input vector and a representative vector. First calculating means for calculating an address of a representative vector to be searched for; determining means for comparing two distortions obtained by the first calculating means to determine a candidate for a representative vector to be encoded; A second calculating means for performing a center of gravity calculation, an average strain calculation, and a partial strain calculation based on the determination result according to the above, a partial strain sorting means for sorting based on the partial strain obtained by the second calculating means, Comparing means for comparing a difference between a plurality of partial strains sorted by sorting means, A representative vector moving means for moving a plurality of representative vectors having a small partial distortion to a vicinity of a representative vector having a large partial distortion, based on a comparison result by the comparing means, the sorting means, the first calculating means, the determining means, the second And a control means for controlling the processing flow of the partial distortion sorting means, the partial distortion comparison means, and the representative vector moving means.
【請求項26】 入力ベクトル集合を格納する入力ベク
トル集合記憶手段と、 コードブックを格納するコードブック記憶手段と、 コードブックを並び替えるソーティング手段と、 入力ベクトルと複数の代表ベクトルとのひずみを並列に
計算し,次に探索する代表ベクトルのアドレスを計算す
る第1の演算手段と、 上記第1の演算手段により得られる複数のひずみを比較
して符号化される代表ベクトルの候補を決める判定手段
と、 上記判定手段による判定結果に基づいて重心計算・平均
ひずみ計算・部分ひずみ計算を行う第2の演算手段と、 上記第2の演算手段により得られる部分ひずみを基準と
してソートする部分ひずみソーティング手段と、 上記部分ひずみソーティング手段によりソートされた複
数個の部分ひずみの格差を比較する比較手段と、 上記比較手段による結果に基づいて、複数の部分ひずみ
の小さい代表ベクトルを部分ひずみの大きい代表ベクト
ルの近傍に移動させる代表ベクトル移動手段と、 上記ソーティング手段、第1の演算手段、判定手段、第
2の計算・部分ひずみの計算を行う第2の演算手段、部
分ひずみソーティング手段、部分ひずみ比較手段及び代
表ベクトル移動手段の処理フローを制御する制御手段と
から構成されるベクトル量子化のコードブック生成装
置。
26. An input vector set storage means for storing an input vector set, a codebook storage means for storing a codebook, a sorting means for rearranging a codebook, and a method for parallelizing distortion between an input vector and a plurality of representative vectors. Calculating means for calculating the address of a representative vector to be searched next, and determining means for comparing a plurality of distortions obtained by the first calculating means to determine a candidate for a representative vector to be encoded. And second calculating means for calculating the center of gravity, average strain calculation, and partial strain calculation based on the determination result by the determining means, and partial strain sorting means for sorting based on the partial strain obtained by the second calculating means. And a ratio comparing the disparities of a plurality of partial strains sorted by the partial strain sorting means. Means, a representative vector moving means for moving a plurality of representative vectors having a small partial strain to a vicinity of a representative vector having a large partial strain based on the result of the comparing means, the sorting means, the first calculating means, and the judging means. , A second calculation means for performing a second calculation / partial distortion calculation, a partial distortion sorting means, a partial distortion comparing means, and a control means for controlling a processing flow of the representative vector moving means, a vector quantization code. Book generation device.
【請求項27】 入力ベクトルが入力される入力端子
と、 コードブックを並び替えるソーティング手段と、 ソートされたコードブックを格納するコードブック記憶
手段と、 上記入力端子を介して入力された入力ベクトルと上記コ
ードブック記憶手段に格納されたコードブックの代表ベ
クトルのひずみを計算し、次に探索する代表ベクトルの
アドレスを計算する第1の演算手段と、 上記第1の演算手段により得られた2つのひずみを比較
して符号化される代表ベクトルの候補を決める判定手段
と、 上記判定手段による判定結果に基づいて、適応的な代表
ベクトルの計算・平均ひずみの計算を行う第2の演算手
段と、 上記ソーティング手段、第1の演算手段、判定手段、第
2の演算手段の処理フローを制御する制御手段とから構
成されるベクトル量子化のコードブック生成装置。
27. An input terminal to which an input vector is input, sorting means for rearranging codebooks, codebook storage means for storing sorted codebooks, and an input vector input via the input terminal. A first calculating means for calculating the distortion of the representative vector of the codebook stored in the codebook storing means and calculating an address of a representative vector to be searched next; Determining means for comparing the distortion to determine a candidate of a representative vector to be encoded; second calculating means for performing adaptive representative vector calculation / average distortion calculation based on the determination result by the determining means; A vector comprising a sorting unit, a first computing unit, a determining unit, and a control unit for controlling a processing flow of the second computing unit. Codebook generator for quantization.
【請求項28】 入力ベクトルが入力される入力端子
と、 コードブックを並び替えるソーティング手段と、 ソートされたコードブックを格納するコードブック記憶
手段と、 上記入力端子を介して入力された入力ベクトルと上記コ
ードブック記憶手段に格納されたコードブックの複数の
代表ベクトルとのひずみを並列に計算し、次に探索する
代表ベクトルのアドレスを計算する第1の演算手段と、 上記第1の演算手段により得られた複数のひずみを比較
して符号化される代表ベクトルの候補を決める判定手段
と、 上記判定手段による判定結果に基づいて、適応的な代表
ベクトルの計算・平均ひずみの計算を行う第2の演算手
段と、 上記ソーティング手段、第1の演算手段、判定手段、第
2の演算手段の処理フローを制御する制御手段とから構
成されるベクトル量子化のコードブック生成装置。
28. An input terminal to which an input vector is input, sorting means for rearranging a codebook, codebook storage means for storing a sorted codebook, and an input vector input via the input terminal. A first calculating means for calculating a distortion with a plurality of representative vectors of the codebook stored in the codebook storing means in parallel and calculating an address of a representative vector to be searched next; A determining means for comparing the obtained plurality of distortions to determine a candidate of a representative vector to be encoded; and a second calculating means for adaptively calculating a representative vector and calculating an average distortion based on the determination result by the determining means. And a control means for controlling the processing flow of the sorting means, the first calculation means, the determination means, and the second calculation means. A codebook generator for vector quantization to be generated.
【請求項29】 入力ベクトルが入力される入力端子
と、 コードブックを並び替えるソーティング手段と、 ソートされたコードブックを格納するコードブック記憶
手段と、 上記入力端子を介して入力された入力ベクトルと上記コ
ードブック記憶手段に格納されたコードブックの代表ベ
クトルのひずみを計算し、次に探索する代表ベクトルの
アドレスを計算する第1の演算手段と、 上記第1の演算手段により得られた2つのひずみを比較
して符号化される代表ベクトルの候補を決める判定手段
と、 上記判定手段による判定結果に基づいて、適応的な代表
ベクトルの計算・平均ひずみの計算・部分ひずみ計算を
行う第2の演算手段と、 上記第2の演算手段により得られた部分ひずみを基準と
してソートする部分ひずみソーティング手段と、 上記部分ひずみソーティング手段によりソートされた2
つの部分ひずみの格差を比較する比較手段と、 上記比較手段による比較結果に基づいて,部分ひずみの
小さい代表ベクトルを部分ひずみの大きい代表ベクトル
の近傍に移動させる代表ベクトル移動手段と、 上記ソーティング手段、第1の演算手段、判定手段、第
2の演算手段、部分ひずみソーティング手段、部分ひず
み比較手段及び代表ベクトル移動手段の処理フローを制
御する制御手段とから構成されるベクトル量子化のコー
ドブック生成装置。
29. An input terminal for inputting an input vector, sorting means for rearranging a codebook, codebook storage means for storing a sorted codebook, and an input vector input via the input terminal. A first calculating means for calculating the distortion of the representative vector of the codebook stored in the codebook storing means and calculating an address of a representative vector to be searched next; A determining means for comparing the distortion to determine a candidate for a representative vector to be encoded; and a second means for adaptively calculating a representative vector, calculating an average distortion, and calculating a partial distortion based on the determination result by the determining means. Calculating means; partial strain sorting means for sorting based on the partial strain obtained by the second calculating means; Sorted by partial strain sorting means 2
Comparing means for comparing the difference between two partial strains; representative vector moving means for moving a representative vector having a small partial strain to a vicinity of a representative vector having a large partial strain based on a comparison result by the comparing means; A vector quantization codebook generating apparatus comprising: a first calculating means, a determining means, a second calculating means, a partial strain sorting means, a partial strain comparing means, and a control means for controlling a processing flow of a representative vector moving means. .
【請求項30】 入力ベクトルが入力される入力端子
と、 コードブックを並び替えるソーティング手段と、 ソートされたコードブックを格納するコードブック記憶
手段と、 上記入力端子を介して入力された入力ベクトルと上記コ
ードブック記憶手段に格納されたコードブックの複数の
代表ベクトルとのひずみを並列に計算し、次に探索する
代表ベクトルのアドレスを計算する第1の演算手段と、 上記第1の演算手段により得られた複数のひずみを比較
して符号化される代表ベクトルの候補を決める判定手段
と、 上記判定手段による判定結果に基づいて、適応的な代表
ベクトルの計算・平均ひずみの計算・部分ひずみ計算を
行う第2の演算手段と、 上記第2の演算手段により得られた部分ひずみを基準と
してソートする部分ひずみソーティング手段と、 上記部分ひずみソーティング手段によりソートされた2
つの部分ひずみの格差を比較する比較手段と、 上記比較手段による比較結果に基づいて、部分ひずみの
小さい代表ベクトルを部分ひずみの大きい代表ベクトル
の近傍に移動させる代表ベクトル移動手段と、 上記ソーティング手段、第1の演算手段、判定手段、第
2の演算手段、部分ひずみソーティング手段、部分ひず
み比較手段及び代表ベクトル移動手段の処理フローを制
御する制御手段とから構成されるベクトル量子化のコー
ドブック生成装置。
30. An input terminal to which an input vector is input, sorting means for rearranging a codebook, codebook storage means for storing a sorted codebook, and an input vector input via the input terminal. A first calculating means for calculating in parallel a distortion with a plurality of representative vectors of the codebook stored in the codebook storing means and calculating an address of a representative vector to be searched next; Determining means for determining a candidate for a representative vector to be encoded by comparing a plurality of obtained distortions; adaptive representative vector calculation / average distortion calculation / partial distortion calculation based on the determination result by the determining means And a partial strain sorter that sorts on the basis of the partial strain obtained by the second arithmetic means. 2 sorted by the partial strain sorting means
Comparing means for comparing a difference between two partial strains; a representative vector moving means for moving a representative vector having a small partial strain to a vicinity of a representative vector having a large partial strain based on a comparison result by the comparing means; A vector quantization codebook generating apparatus comprising: a first calculating means, a determining means, a second calculating means, a partial strain sorting means, a partial strain comparing means, and a control means for controlling a processing flow of a representative vector moving means. .
【請求項31】 入力ベクトルが入力される入力端子
と、 コードブックを並び替えるソーティング手段と、 ソートされたコードブックを格納するコードブック記憶
手段と、 上記入力端子を介して入力された入力ベクトルと上記コ
ードブック記憶手段に格納されたコードブックの代表ベ
クトルのひずみを計算し、次に探索する代表ベクトルの
アドレスを計算する第1の演算手段と、 上記第1の演算手段により得られた2つのひずみを比較
して符号化される代表ベクトルの候補を決める判定手段
と、 上記判定手段による判定結果に基づいて、適応的な代表
ベクトルの計算・平均ひずみの計算・部分ひずみ計算を
行う第2の演算手段と、 上記第2の演算手段により得られた部分ひずみを基準と
してソートする部分ひずみソーティング手段と、 上記部分ひずみソーティング手段によりソートされた複
数個の部分ひずみの格差を比較する比較手段と、 上記比較手段による比較結果に基づいて、複数の部分ひ
ずみの小さい代表ベクトルを部分ひずみの大きい代表ベ
クトルの近傍に移動させる代表ベクトル移動手段と、 上記ソーティング手段、第1の演算手段、判定手段、第
2の演算手段、部分ひずみソーティング手段、部分ひず
み比較手段及び代表ベクトル移動手段の処理フローを制
御する制御手段とから構成されるベクトル量子化のコー
ドブック生成装置。
31. An input terminal to which an input vector is input, sorting means for rearranging a codebook, codebook storage means for storing a sorted codebook, and an input vector input via the input terminal. A first calculating means for calculating the distortion of the representative vector of the codebook stored in the codebook storing means and calculating an address of a representative vector to be searched next; A determining means for comparing the distortion to determine a candidate for a representative vector to be encoded; and a second means for adaptively calculating a representative vector, calculating an average distortion, and calculating a partial distortion based on the determination result by the determining means. Calculating means; partial strain sorting means for sorting based on the partial strain obtained by the second calculating means; Comparing means for comparing a difference between a plurality of partial strains sorted by the partial strain sorting means, and a plurality of representative vectors having small partial strains in the vicinity of a representative vector having large partial strains based on a comparison result by the comparing means. A representative vector moving means to be moved; and a control means for controlling a processing flow of the sorting means, the first calculating means, the determining means, the second calculating means, the partial strain sorting means, the partial strain comparing means, and the representative vector moving means. A vector quantization codebook generating apparatus comprising:
【請求項32】 入力ベクトルが入力される入力端子
と、 コードブックを並び替えるソーティング手段と、 ソートされたコードブックを格納するコードブック記憶
手段と、 上記入力端子を介して入力された入力ベクトルと上記コ
ードブック記憶手段に格納されたコードブックの複数の
代表ベクトルとのひずみを並列に計算し、次に探索する
代表ベクトルのアドレスを計算する第1の演算手段と、 上記第1の演算手段により得られた複数のひずみを比較
して符号化される代表ベクトルの候補を決める判定手段
と、 上記判定手段による判定結果に基づいて、適応的な代表
ベクトルの計算・平均ひずみの計算・部分ひずみ計算を
行う第2の演算手段と、 上記第2の演算手段により得られた部分ひずみを基準と
してソートする部分ひずみソーティング手段と、 上記部分ひずみソーティング手段によりソートされた複
数個の部分ひずみの格差を比較する比較手段と、 上記比較手段による比較結果に基づいて、複数の部分ひ
ずみの小さい代表ベクトルを部分ひずみの大きい代表ベ
クトルの近傍に移動させる代表ベクトル移動手段と、 上記ソーティング手段、第1の演算手段、判定手段、第
2の演算手段、部分ひずみソーティング手段、部分ひず
み比較手段及び代表ベクトル移動手段の処理フローを制
御する制御手段とから構成されるベクトル量子化のコー
ドブック生成装置。
32. An input terminal to which an input vector is input, sorting means for rearranging a codebook, codebook storage means for storing a sorted codebook, and an input vector input via the input terminal. A first calculating means for calculating a distortion with a plurality of representative vectors of the codebook stored in the codebook storing means in parallel and calculating an address of a representative vector to be searched next; Determining means for comparing the obtained plurality of distortions to determine a candidate for a representative vector to be encoded; and adaptively calculating representative vectors, calculating average distortion, calculating partial distortion based on the determination result by the determining means. And a partial strain sorter that sorts on the basis of the partial strain obtained by the second arithmetic means. A comparing means for comparing a difference between a plurality of partial strains sorted by the partial strain sorting means; and a representative vector having a small partial strain having a large partial strain based on a comparison result by the comparing means. The representative vector moving means for moving to the vicinity of the representative vector, and the processing flow of the sorting means, the first calculating means, the determining means, the second calculating means, the partial strain sorting means, the partial strain comparing means, and the representative vector moving means. A vector quantization codebook generating apparatus, comprising: a control unit for controlling the codebook.
JP2001030265A 2001-02-06 2001-02-06 Vector quantization codebook generation method and codebook generation apparatus Expired - Fee Related JP4590747B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001030265A JP4590747B2 (en) 2001-02-06 2001-02-06 Vector quantization codebook generation method and codebook generation apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001030265A JP4590747B2 (en) 2001-02-06 2001-02-06 Vector quantization codebook generation method and codebook generation apparatus

Publications (2)

Publication Number Publication Date
JP2002232296A true JP2002232296A (en) 2002-08-16
JP4590747B2 JP4590747B2 (en) 2010-12-01

Family

ID=18894504

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001030265A Expired - Fee Related JP4590747B2 (en) 2001-02-06 2001-02-06 Vector quantization codebook generation method and codebook generation apparatus

Country Status (1)

Country Link
JP (1) JP4590747B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100383812C (en) * 2005-01-07 2008-04-23 索尼株式会社 Information processing apparatus and method, and program
JP2009021873A (en) * 2007-07-12 2009-01-29 Sony Corp Vector quantizing apparatus, and vector quantizing method
JP2011522497A (en) * 2008-06-02 2011-07-28 サントル ナシオナル ドゥ ラ ルシェルシェサイアンティフィク(セエヌエールエス) How to count vectors in a regular point network
JP2011525728A (en) * 2008-06-02 2011-09-22 サントル ナシオナル ドゥ ラ ルシェルシェサイアンティフィク(セエヌエールエス) How to process numeric data

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02186836A (en) * 1989-01-13 1990-07-23 Mitsubishi Electric Corp Vector quantizer
JPH04156181A (en) * 1990-10-19 1992-05-28 Olympus Optical Co Ltd Vector quantization method and vector quantizer
JPH05304478A (en) * 1992-04-27 1993-11-16 Olympus Optical Co Ltd Device for generating vector quantization code book
JPH0645946A (en) * 1992-07-27 1994-02-18 Olympus Optical Co Ltd Formation of vector quantizing code book and searching device
JPH06237179A (en) * 1992-12-01 1994-08-23 Nippon Telegr & Teleph Corp <Ntt> Design method for vector quantizer and vector quantizer
JPH08279757A (en) * 1995-04-06 1996-10-22 Casio Comput Co Ltd Hierarchical vector quantizer
JPH08305856A (en) * 1995-05-01 1996-11-22 Nippon Telegr & Teleph Corp <Ntt> Method and device for systematic classification of image
JPH10200890A (en) * 1997-01-09 1998-07-31 Matsushita Electric Ind Co Ltd Image encoding method

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02186836A (en) * 1989-01-13 1990-07-23 Mitsubishi Electric Corp Vector quantizer
JPH04156181A (en) * 1990-10-19 1992-05-28 Olympus Optical Co Ltd Vector quantization method and vector quantizer
JPH05304478A (en) * 1992-04-27 1993-11-16 Olympus Optical Co Ltd Device for generating vector quantization code book
JPH0645946A (en) * 1992-07-27 1994-02-18 Olympus Optical Co Ltd Formation of vector quantizing code book and searching device
JPH06237179A (en) * 1992-12-01 1994-08-23 Nippon Telegr & Teleph Corp <Ntt> Design method for vector quantizer and vector quantizer
JPH08279757A (en) * 1995-04-06 1996-10-22 Casio Comput Co Ltd Hierarchical vector quantizer
JPH08305856A (en) * 1995-05-01 1996-11-22 Nippon Telegr & Teleph Corp <Ntt> Method and device for systematic classification of image
JPH10200890A (en) * 1997-01-09 1998-07-31 Matsushita Electric Ind Co Ltd Image encoding method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100383812C (en) * 2005-01-07 2008-04-23 索尼株式会社 Information processing apparatus and method, and program
JP2009021873A (en) * 2007-07-12 2009-01-29 Sony Corp Vector quantizing apparatus, and vector quantizing method
JP2011522497A (en) * 2008-06-02 2011-07-28 サントル ナシオナル ドゥ ラ ルシェルシェサイアンティフィク(セエヌエールエス) How to count vectors in a regular point network
JP2011525728A (en) * 2008-06-02 2011-09-22 サントル ナシオナル ドゥ ラ ルシェルシェサイアンティフィク(セエヌエールエス) How to process numeric data

Also Published As

Publication number Publication date
JP4590747B2 (en) 2010-12-01

Similar Documents

Publication Publication Date Title
Duda et al. Pattern classification, chapter nonparametric techniques
Ng et al. A comparative study of the practical characteristics of neural network and conventional pattern classifiers
Maute et al. Adaptive topology optimization of shell structures
US5621861A (en) Method of reducing amount of data required to achieve neural network learning
CN114511708B (en) Graph data similarity method based on node level embedded feature three-dimensional relation reconstruction
Guo et al. Scheme for automatic differentiation of complex loss functions with applications in quantum physics
Warren Binary subdivision schemes for functions over irregular knot sequences
JP2002232296A (en) Method and device for generating code book for vector quantization
JPH10247204A (en) Method and device for multidimensional retrieval
Wu Optimal hole shape for minimum stress concentration using parameterized geometry models
Chen et al. On balancing neighborhood and global replacement strategies in MOEA/D
CN108428021B (en) Micro-grid short-term load prediction model based on HSA-RRNN
CN113642216B (en) Random signal identification method based on multilayer neural network and support vector machine
JP4631178B2 (en) Vector quantization method and vector quantization apparatus
Jin et al. Adaptive diversity maintenance and convergence guarantee in multiobjective evolutionary algorithms
CN114818369A (en) Method, system, device and medium for designing continuous transonic wind tunnel section
CN114565736A (en) Controllable nano composite polycrystal modeling method based on weighted Thiessen polygon
JP4479105B2 (en) Vector quantization codebook generation method and codebook generation apparatus
Hart A generalized stationary point convergence theory for evolutionary algorithms
Chng et al. Orthogonal least-squares learning algorithm with local adaptation process for the radial basis function networks
JP2009021873A (en) Vector quantizing apparatus, and vector quantizing method
Csendes et al. Constructing large feasible suboptimal intervals for constrained nonlinear optimization
Grippo et al. Derivative-Free Methods for Unconstrained Optimization
Petalas et al. Evolutionary methods for the approximation of the stability domain and frequency optimization of conservative maps
Zhu et al. An FPGA implementation of Kak's instantaneously-trained, Fast-Classification neural networks

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100601

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100722

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100817

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100830

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

Free format text: PAYMENT UNTIL: 20130924

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130924

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees