JP3319551B2 - Vector quantizer - Google Patents

Vector quantizer

Info

Publication number
JP3319551B2
JP3319551B2 JP06365995A JP6365995A JP3319551B2 JP 3319551 B2 JP3319551 B2 JP 3319551B2 JP 06365995 A JP06365995 A JP 06365995A JP 6365995 A JP6365995 A JP 6365995A JP 3319551 B2 JP3319551 B2 JP 3319551B2
Authority
JP
Japan
Prior art keywords
vector
polarity
index
base
representative
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP06365995A
Other languages
Japanese (ja)
Other versions
JPH08263100A (en
Inventor
公生 三関
皇 天田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba 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
Priority to JP06365995A priority Critical patent/JP3319551B2/en
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to US08/536,362 priority patent/US5774838A/en
Priority to EP95306952A priority patent/EP0704836B1/en
Priority to CA002159571A priority patent/CA2159571C/en
Priority to DE69526017T priority patent/DE69526017T2/en
Priority to CN95119970A priority patent/CN1097396C/en
Priority to KR1019950033430A priority patent/KR100194775B1/en
Publication of JPH08263100A publication Critical patent/JPH08263100A/en
Application granted granted Critical
Publication of JP3319551B2 publication Critical patent/JP3319551B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

PURPOSE: To provide a vector quantizing device capable of rapidly retrieving an index of a typical vector even when the number of bits of index is large. CONSTITUTION: This device is provided with a noise vector reproducing part generating the typical vector (u) including the product vn×sn (n=0 to N-1, |sn|=1) between respective elements of an N-dimensional basic vector (v) selected from a code book 100 based on a basic vector index Ic and an N-dimensional polarity vector (s) generated based on a polarity information index Ip as the element un by a polarity multiplication part 105.

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 device used for coding speech and images.

【0002】[0002]

【従来の技術】ベクトル量子化は、音声信号などをサン
プリングして得られたサンプルを複数個まとめたブロッ
クを多次元ベクトル空間の一点とみなし、これを一括し
て符号化する方式であり、インデックスで指定されるベ
クトルを用いて目標ベクトルを表現することが基本であ
る。このようなベクトル量子化方式の中でも、特にビッ
トレートが8kbit/秒程度の音声符号化に用いられ
るベクトル量子化方式として、VSELP(Vector sum
Excited Linear Predicion)方式が知られている。VS
ELP方式の詳細は、Ira A. Gerson 氏らの"VECTOR SU
M EXCITED LINEARPREDICTION (VSELP) SPEECH CODING A
T 8 KBPS," Proc. IEEE Int. Conf. on Acoustics, Spe
ech and Signal Processing, pp.461-464, April 1990
(文献1)に述べられている。
2. Description of the Related Art Vector quantization is a method in which a block obtained by collecting a plurality of samples obtained by sampling an audio signal or the like is regarded as one point in a multidimensional vector space, and this is collectively encoded. Basically, the target vector is expressed using the vector specified by. Among such vector quantization methods, VSELP (Vector sum) is used as a vector quantization method particularly used for speech encoding at a bit rate of about 8 kbit / sec.
Excited Linear Predicion) system is known. VS
For details on the ELP method, see "VECTOR SU" by Ira A. Gerson and others.
M EXCITED LINEARPREDICTION (VSELP) SPEECH CODING A
T 8 KBPS, "Proc. IEEE Int. Conf. On Acoustics, Spe
ech and Signal Processing, pp.461-464, April 1990
(Reference 1).

【0003】VSELP方式の一つの特徴は、ベクトル
量子化の出力符号であるインデックスのビット数がpの
とき、予め格納されているp本の基底ベクトルを用い、
これらp本の基底ベクトルの和または差の組み合わせで
p 本の代表ベクトルを表現する点にある。
One feature of the VSELP method is that when the number of bits of an index, which is an output code of vector quantization, is p, p base vectors stored in advance are used.
The point is that 2 p representative vectors are represented by a combination of the sum or difference of these p base vectors.

【0004】図12は、このようにp本の基底ベクトル
から2p 本の代表ベクトルを再生する原理を模式的に示
したものである。図12において、vm(n)は第m番目の
基底ベクトル、ui(n)はインデックスiの代表ベクトル
を表し、基底ベクトルに乗じる係数θimはiとmの値に
より+1または−1の値をとる。基底ベクトルに係数θ
imを乗じたものを加算することにより、代表ベクトルu
i(n)を得る。このようにすると、再帰式を用いて最適な
インデックスが探索できるため、インデックスのビット
数pが7から9の値であれば、ベクトル量子化に要する
計算量を実時間処理が可能な程度に抑えることができ
る。
FIG. 12 schematically shows the principle of reproducing 2 p representative vectors from p base vectors. In FIG. 12, vm (n) represents the m-th base vector, ui (n) represents the representative vector of the index i, and the coefficient θim by which the base vector is multiplied takes a value of +1 or −1 depending on the values of i and m. . Coefficient θ
The representative vector u is calculated by adding
get i (n). In this way, since the optimal index can be searched using the recursive formula, if the number of bits p of the index is a value of 7 to 9, the amount of calculation required for vector quantization is suppressed to such an extent that real-time processing is possible. be able to.

【0005】ところが、この従来のベクトル量子化方式
では、インデックス探索に要する計算量の削減効果がま
だ十分でなく、インデックスのビット数pを10以上に
大きくして実時間処理を実現することは困難である。
However, in this conventional vector quantization method, the effect of reducing the amount of calculation required for index search is not yet sufficient, and it is difficult to increase the number of bits p of the index to 10 or more to realize real-time processing. It is.

【0006】[0006]

【発明が解決しようとする課題】上述したように、従来
法のベクトル量子化装置では、インデックスのビット数
大きいときは、好適なインデックス探索に要する計算量
の増大が原因で、実時間処理の実現が困難になるという
問題点があった。本発明は、インデックスのビット数が
非常に大きな場合でも、高速に好適なインデックス探索
ができるベクトル量子化装置を提供することを目的とす
る。
As described above, in the conventional vector quantization apparatus, when the number of bits of an index is large, realization of real-time processing is realized due to an increase in the amount of calculation required for a suitable index search. There is a problem that it becomes difficult. SUMMARY OF THE INVENTION It is an object of the present invention to provide a vector quantization apparatus capable of performing a suitable index search at high speed even when the number of bits of the index is very large.

【0007】[0007]

【課題を解決するための手段】上述した目的を達成する
ため、本発明は目標ベクトルに対する代表ベクトルの歪
に基づいて所望の代表ベクトルに対応したインデックス
を探索し、探索したインデックスを出力するベクトル量
子化装置において、N次元の基底ベクトルの要素とに乗
じる極性を要素とするN次元の極性ベクトルの要素sn
との積を要素とする代表ベクトルを生成する代表ベクト
ル生成手段と、前記極性ベクトルの各要素の極性に対応
した極性情報インデックスを生成する極性情報インデッ
クス生成手段と、前記極性情報インデックスに基づいて
前記極性ベクトルを生成する極性ベクトル生成手段とを
有することを基本的な特徴とする。
In order to achieve the above object, the present invention searches for an index corresponding to a desired representative vector based on distortion of a representative vector with respect to a target vector, and outputs a vector index for outputting the searched index. In the conversion device, an element sn of an N-dimensional polarity vector having a polarity multiplied by an element of an N-dimensional base vector as an element
A representative vector generating unit that generates a representative vector having a product of the polarity vector and a polarity information index generating unit that generates a polarity information index corresponding to the polarity of each element of the polarity vector. And a polarity vector generating means for generating a polarity vector.

【0008】すなわち、代表ベクトル生成手段はN次元
の基底ベクトルの要素vn とN次元の極性ベクトルの対
応する要素sn との積vn ×sn (n=0〜N−1、|
sn|=1)を要素とする代表ベクトルを生成する。こ
こで、極性情報インデックス手段は、好ましくは極性情
報生成手段で生成される極性ベクトルの要素sn の極性
を指定する極性情報により指定される極性ベクトルの要
素sn の極性をsk (k=L(p,n)(k,pは0≦
k≦p−1、1≦p≦Nを満たす整数)とし、sk と該
極性情報の第kビット目の値bk を対応付けることによ
り、pビットの極性情報インデックスを生成する。
That is, the representative vector generating means calculates the product vn × sn (n = 0 to N−1, |) of the element vn of the N-dimensional base vector and the corresponding element sn of the N-dimensional polarity vector.
sn | = 1) is generated as a representative vector. Here, the polarity information index means preferably sets the polarity of the element sn of the polarity vector specified by the polarity information specifying the polarity of the element sn of the polarity vector generated by the polarity information generation means to sk (k = L (p , N) (k and p are 0 ≦
k ≦ p−1, an integer satisfying 1 ≦ p ≦ N), and by associating sk with the k-th bit value bk of the polarity information, a polarity information index of p bits is generated.

【0009】また、この場合において関数L(p,n)
は、nをpで割ったときの剰余、またはnp/Nを超え
ない最大の整数であることが望ましい。さらに、基底ベ
クトルのk=L(p,n)の条件を満たすn番目のベク
トル要素について、目標ベクトルと代表ベクトルとの部
分内積を求め、この部分内積の極性をsk とすることが
望ましい。
In this case, the function L (p, n)
Is preferably a remainder when n is divided by p, or a maximum integer not exceeding np / N. Further, for the n-th vector element satisfying the condition of k = L (p, n) of the base vector, it is desirable to obtain a partial inner product of the target vector and the representative vector, and set the polarity of this partial inner product to sk.

【0010】本発明の拡張されたベクトル量子化装置で
は、N次元の基底ベクトルを複数個格納した基底ベクト
ル格納手段と、この基底ベクトル格納手段に格納された
複数個の基底ベクトルの一つを選択するための基底ベク
トルインデックスを探索する基底ベクトルインデックス
探索手段が備えられる。この場合、代表ベクトル生成手
段では基底ベクトルインデックス探索手段により探索さ
れた基底ベクトルインデックスで選択されたN次元の基
底ベクトルの要素と該基底ベクトルの各要素に乗じる極
性を要素とするN次元の極性ベクトルの要素との積を要
素とする代表ベクトルを生成する。
In the extended vector quantization device of the present invention, a basis vector storage means for storing a plurality of N-dimensional basis vectors and one of the plurality of basis vectors stored in the basis vector storage means are selected. Vector index searching means for searching for a base vector index to perform the search. In this case, the representative vector generating means has an N-dimensional base vector selected by the base vector index searched by the base vector index searching means and an N-dimensional polarity vector having a polarity multiplied by each element of the base vector as an element. Generate a representative vector whose element is the product of the elements.

【0011】また、前記基底ベクトルインデックス探索
手段は、基底ベクトル格納手段に格納された基底ベクト
ルの個数をIとし、基底ベクトルをvi (iは基底ベク
トルインデックスであり、i=0〜I−1)としたと
き、該基底ベクトルVi 毎に該基底ベクトルのk=L
(p,n)(k,pは0≦k≦p−1、1≦p≦Nを満
たす整数)の条件を満たすn番目のベクトル要素につい
て前記目標ベクトルと前記代表ベクトルとの部分内積f
k から計算される を用いて基底ベクトルのインデックス候補数をJ個(0
<J<<I)に絞り込む手段を有することを特徴とす
る。
The base vector index search means sets the number of base vectors stored in the base vector storage means to I, and sets the base vector to vi (i is a base vector index, i = 0 to I-1). Where k = L of the basis vector for each basis vector Vi
(P, n) (k, p is an integer satisfying 0 ≦ k ≦ p−1, 1 ≦ p ≦ N) For the n-th vector element, the partial inner product f of the target vector and the representative vector f
calculated from k Is used to reduce the number of index candidates of the base vector to J (0
<J << I).

【0012】[0012]

【作用】本発明のベクトル量子化装置では、N次元の極
性ベクトルsの各要素sn の極性に対応した極性情報イ
ンデックスを生成し、この極性情報インデックスに基づ
いてN次元の極性ベクトルsを生成して、このN次元の
極性ベクトルの要素snをN次元の基底ベクトルvの要
素vn とを乗じてvn ×sn (n=0〜N−1、|sn
|=1)を要素とする代表ベクトルuを生成することに
より、1本の基底ベクトルvに対し極性情報インデック
スに応じて形状が変化する代表ベクトルuを非常に簡易
に生成することができる。
According to the vector quantization apparatus of the present invention, a polarity information index corresponding to the polarity of each element sn of the N-dimensional polarity vector s is generated, and an N-dimensional polarity vector s is generated based on the polarity information index. Then, the element sn of the N-dimensional polarity vector is multiplied by the element vn of the N-dimensional base vector v to obtain vn × sn (n = 0 to N−1, | sn
By generating a representative vector u having | = 1) as an element, a representative vector u whose shape changes with respect to one base vector v according to the polarity information index can be generated very easily.

【0013】この場合、極性ベクトルsの要素sn の極
性をsk (k=L(p、n)(0≦k≦p−1、1≦p
≦N))と同一にし、sk と極性情報の第kビット目の
値bk を対応付けてpビットの極性情報インデックスと
することにより、1本の基底ベクトルvから生成可能な
代表ベクトルuの形状を最大2p 通りに制限することが
できる。
In this case, the polarity of the element sn of the polarity vector s is represented by sk (k = L (p, n) (0 ≦ k ≦ p−1, 1 ≦ p
.Ltoreq.N)), and by associating sk with the k-th bit value bk of the polarity information to form a p-bit polarity information index, the shape of the representative vector u that can be generated from one base vector v Can be limited to a maximum of 2 p ways.

【0014】また、関数L(p,n)のpの値を変える
ことで、代表ベクトルuの取り得る形状の変化数を容易
に制御できるようになる。さらに、関数L(p,n)を L(p,n)=n mod p または L(p,n)=floor(np/N) (floor(x)はxを超えない最大の整数を表す)
とすることにより、同じ極性を用いて生成される代表ベ
クトルuの要素un の個数を均一化できる。一般に、上
記のような関数Lを用いることにより、極性情報を表す
各ビットbk の情報を有効的に代表ベクトルuの形状の
変化に反映させることができるようになる。
Further, by changing the value of p of the function L (p, n), the number of possible shape changes of the representative vector u can be easily controlled. Further, the function L (p, n) is expressed as L (p, n) = n mod p or L (p, n) = floor (np / N) (floor (x) represents the largest integer not exceeding x)
By doing so, the number of elements un of the representative vector u generated using the same polarity can be made uniform. Generally, by using the function L as described above, the information of each bit bk representing the polarity information can be effectively reflected on the change in the shape of the representative vector u.

【0015】また、目標ベクトルrとの形状歪が最小と
なる代表ベクトルuを生成できる極性ベクトルsは、k
=L(p,n)を満たすn番目のベクトル要素について
目標ベクトルrとベクトルvとの部分内積fk を計算
し、sk =sign(fk )(sign(x)はxの正
負の極性値)とすることにより決めることができる。こ
のようにすると、極性情報インデックスのビット数pの
大きさに依らずベクトルの次元数Nのオーダの少ない計
算量でsk とbk (k=0〜p−1)を決定できる。従
って、極性情報インデックスのビット数pを10以上に
設定しても、最適なpビットの極性情報{b0 ,b1 ,
…,bp-1 }(通常のベクトル量子化のインデックスに
相当する)の探索に要する計算量は増加しないので、本
発明のベクトル量子化装置は実時間処理のための計算量
の制約が厳しい符号化装置に特に適していることがわか
る。
The polarity vector s that can generate a representative vector u that minimizes the shape distortion with respect to the target vector r is k
= L (p, n), calculate the partial inner product fk of the target vector r and the vector v for the n-th vector element, and sk = sign (fk) (sign (x) is a positive or negative polarity value of x) and Can be determined. In this way, sk and bk (k = 0 to p-1) can be determined with a small amount of calculation on the order of the number of dimensions N of the vector regardless of the size of the bit number p of the polarity information index. Accordingly, even if the number of bits p of the polarity information index is set to 10 or more, the optimum p-bit polarity information {b0, b1,.
.., Bp-1} (corresponding to an index of ordinary vector quantization) does not increase. Therefore, the vector quantization apparatus of the present invention uses a code having a severe restriction on the calculation amount for real-time processing. It can be seen that it is particularly suitable for a gasifier.

【0016】さらに、本発明では基底ベクトルvが複数
本存在する、つまり基底ベクトルがvi (i=0〜I−
1)で表わされる構成に拡張することも有効な方法であ
る。すなわち、vi の中から最適な一つの基底ベクトル
vを選択するための基底ベクトルインデックスIc とそ
れに対応する最適な極性情報インデックスIp の2つの
情報で、代表ベクトルuを表すようにする。この場合、
基底ベクトルインデックスを選択する過程に以下の手段
を用いると、インデックス探索に要する計算量を大幅に
削減できる。すなわち、基底ベクトルインデックスの候
補数Iを少ない候補数Jに絞り込むために、基底ベクト
ルvi のk=L(p,n)(k,pは0≦k≦p−1、
1≦p≦Nを満たす整数)の条件を満たすn番目のベク
トル要素について目標ベクトルと代表ベクトルとの部分
内積fk から計算される を用いて、基底ベクトルインデックス候補数をJ(0<
J<<I)個に絞り込むようにする。これはcor(i)
が基底ベクトルvi から求められる最適の代表なベクト
ルui と目標ベクトルrの内積値になっているためであ
る。
Further, in the present invention, there are a plurality of basis vectors v, that is, the basis vectors vi (i = 0 to I−
It is also an effective method to extend the configuration represented by 1). That is, the representative vector u is represented by two pieces of information, that is, the basis vector index Ic for selecting one optimal basis vector v from vi and the corresponding optimal polarity information index Ip. in this case,
When the following means is used in the process of selecting the base vector index, the amount of calculation required for index search can be greatly reduced. That is, in order to narrow the number I of candidates of the base vector index to a small number J of the candidates, k = L (p, n) of the base vector vi (k and p are 0 ≦ k ≦ p−1,
Is calculated from the partial inner product fk of the target vector and the representative vector for the n-th vector element satisfying the condition of 1 ≦ p ≦ N). , The number of basis vector index candidates is set to J (0 <
J << I). This is cor (i)
Is the inner product value of the optimal representative vector ui obtained from the base vector vi and the target vector r.

【0017】このように本発明によるベクトル量子化装
置は、ベクトル量子化に用いるインデックスのビット数
pを10以上という非常に大きな値に設定しても、イン
デックス探索に要する処理量が非常に少なく、実時間処
理に適している。
As described above, even if the number of bits p of the index used for vector quantization is set to a very large value of 10 or more, the vector quantization apparatus according to the present invention requires a very small amount of processing for index search. Suitable for real-time processing.

【0018】また、本発明では基底ベクトルvi の本数
Iを従来法に比べ大幅に少なくしてもより多くの代表ベ
クトルをコードブックとして実現できるので、基底ベク
トルの格納に要するメモリ量を節約することができる。
Further, according to the present invention, even if the number I of the basis vectors vi is significantly reduced as compared with the conventional method, more representative vectors can be realized as a codebook, so that the amount of memory required for storing the basis vectors can be reduced. Can be.

【0019】さらに、本発明では極性情報が伝送媒体や
蓄積媒体の符号誤りで変質しても、劣化の少ない代表ベ
クトルを再生することができる効果がある。これは、も
ともと1ビットの極性情報が代表ベクトルの一部の要素
の極性にしか影響を与えない構造となっているためであ
り、結果的に極性情報1ビットの誤りは代表ベクトルの
形状劣化は全体には及ばず、一部分の形状の劣化にとど
まる。このため、本発明によるベクトル量子化装置は極
性情報に関して符号誤り耐性が強いという利点がある。
Further, according to the present invention, even if the polarity information is altered by a code error in the transmission medium or the storage medium, there is an effect that a representative vector with little deterioration can be reproduced. This is because 1-bit polarity information originally has a structure that only affects the polarity of some elements of the representative vector, and consequently, an error of 1-bit polarity information causes a deterioration in the shape of the representative vector. It does not reach the whole but only part of the shape is deteriorated. For this reason, the vector quantization apparatus according to the present invention has an advantage in that the polarity information is highly resistant to code errors.

【0020】[0020]

【実施例】以下、図面を参照して本発明の実施例を説明
する。図1は、本発明に係るベクトル量子化装置におけ
るベクトル再生部(雑音ベクトル生成部)の原理的構成
を示す図である。同図において、コードブック100は
この例では雑音コードブックであり、雑音ベクトルとし
てN次元の基底ベクトルvを複数(I)本格納してい
る。I本のN次元基底ベクトルをvi (i=0〜I−
1)で表わす。端子101には基底ベクトル選択用イン
デックスIc が入力され、このインデックスIc に従っ
て基底ベクトル選択スイッチ102でI本の基底ベクト
ルvi の中の1本vが選択される。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a diagram showing a basic configuration of a vector reproduction unit (noise vector generation unit) in the vector quantization device according to the present invention. In this figure, a codebook 100 is a noise codebook in this example, and stores a plurality (I) of N-dimensional base vectors v as noise vectors. Let the I N-dimensional basis vectors be vi (i = 0 to I−
Represented by 1). A base vector selection index Ic is input to the terminal 101, and one of the I base vectors vi is selected by the base vector selection switch 102 according to the index Ic.

【0021】一方、極性ベクトル生成部103は極性情
報インデックスIp からN次元の極性ベクトルsを生成
する。N個の乗算器104からなる極性乗算部105
は、スイッチ102で選択された基底ベクトルvのN個
の要素vn (n=0〜N−1)に、極性ベクトル生成部
103で生成された極性ベクトルsのN個の要素sn を
それぞれ乗じることにより、vn ×sn の積を要素un
とする代表ベクトルuを生成する。
On the other hand, the polarity vector generator 103 generates an N-dimensional polarity vector s from the polarity information index Ip. Polarity multiplier 105 consisting of N multipliers 104
Is to multiply N elements vn (n = 0 to N-1) of the base vector v selected by the switch 102 with N elements sn of the polarity vector s generated by the polarity vector generation unit 103, respectively. Gives the product of vn × sn as element un
Is generated.

【0022】このようなベクトル再生部をベクトル量子
化装置に用いると、代表ベクトルインデックスのビット
数が大きいときでも、少ない計算量で高速に最適な代表
ベクトルインデックスの探索ができ、実時間処理に適し
たものとなる。この効果を具体例を用いて説明する。
When such a vector reproducing unit is used in a vector quantization apparatus, even when the number of bits of the representative vector index is large, an optimal representative vector index can be searched at a high speed with a small amount of calculation and suitable for real-time processing. It will be. This effect will be described using a specific example.

【0023】例えば、20ビットの情報で220(=10
48576)本の代表ベクトル(80次元)を表現する
コードブックを用いて、8kHzサンプリングの音声デ
ータをベクトル量子化することを考える。
For example, with 20 bits of information, 2 20 (= 10
48576) Vector quantization of audio data of 8 kHz sampling is considered using a codebook expressing representative vectors (80 dimensions).

【0024】この場合、従来のVSELP方式では20
本の基底ベクトルの和または差の組み合わせで220本の
代表ベクトルを表現できるが、この中から好適な代表ベ
クトルを探索するためには、219回の歪量計算ループが
必要である。このような多数のループ回数の代表ベクト
ル探索には、約千MIPS程度の巨大な計算量が必要と
なる。
In this case, in the conventional VSELP method, 20
It can represent representative vectors of 2 20 present a combination of the sum or difference of basis vectors of the present, but in order to search a suitable representative vector from this, it is necessary 2 19 times the distortion amount calculation loop. Such a search for the representative vector with a large number of loops requires a huge calculation amount of about 1,000 MIPS.

【0025】これに対し、本発明の一つの態様では1本
の基底ベクトルの要素を20区間に分割し、それぞれの
区間毎のベクトル要素に+1または−1の極性を乗じる
ことにより、ベクトル和や差をとることなく、極性情報
の組み合わせだけで220本の代表ベクトルを表現でき
る。区間毎の極性は1ビットなので、20ビットの情報
でただ一つの代表ベクトルを再生できる。好適な代表ベ
クトルの極性は、1回の簡単なベクトルの内積計算(8
0回の積和)と、20回の極性判定だけで決めることが
できるので、計算量は1/10MIPS以下となる。
On the other hand, in one embodiment of the present invention, one base vector element is divided into 20 sections, and the vector element in each section is multiplied by +1 or -1 polarity to obtain a vector sum or a vector. without taking the difference, we only represent representative vectors 2 twenty combinations of polarity information. Since the polarity of each section is 1 bit, only one representative vector can be reproduced with 20 bits of information. The polarity of the preferred representative vector is determined by one simple vector dot product calculation (8
(0 sum of products) and 20 polarity determinations, so that the calculation amount is 1/10 MIPS or less.

【0026】本発明の他の態様では、4本の基底ベクト
ルの選択に2ビット、極性情報に18ビット使用する構
成で、220本の代表ベクトルを表現することができる。
この方法では、ベクトルの内積計算が4回、好適な基底
ベクトルの探索に4回の歪計算ループが必要となるが、
計算量は1MIPS程度となる。
In another aspect of the [0026] present invention, 2 bits to the selection of four basis vectors, a configuration that 18 bits used for polarity information, can be expressed representative vectors of 2 20 present.
In this method, the inner product of the vectors is calculated four times, and the search for a suitable basis vector requires four distortion calculation loops.
The calculation amount is about 1 MIPS.

【0027】また、以上の例からも分かるように、本発
明では基底ベクトルの本数を従来法に比べ大幅に少なく
しても、20ビットのコードブックを実現できるので、
基底ベクトルの格納に要するメモリ量を節約することが
できる効果がある。
As can be seen from the above example, the present invention can realize a 20-bit codebook even if the number of base vectors is significantly reduced as compared with the conventional method.
This has the effect of saving the amount of memory required for storing the basis vectors.

【0028】さらに、本発明では極性情報が伝送媒体や
蓄積媒体の符号誤りで変質しても、劣化の少ない代表ベ
クトルを再生することができる効果がある。これは、も
ともと1ビットの極性情報が代表ベクトルの一部の要素
の極性にしか影響を与えない構造となっているためであ
り、結果的に極性情報1ビットの誤りは代表ベクトルの
形状劣化は全体には及ばず、一部分の形状の劣化にとど
まる。このため、本発明によるベクトル量子化装置は極
性情報に関して符号誤り耐性が強いという利点がある。
Further, according to the present invention, even if the polarity information is altered by a code error in the transmission medium or the storage medium, there is an effect that a representative vector with little deterioration can be reproduced. This is because 1-bit polarity information originally has a structure that only affects the polarity of some elements of the representative vector, and consequently, an error of 1-bit polarity information causes a deterioration in the shape of the representative vector. It does not reach the whole but only part of the shape is deteriorated. For this reason, the vector quantization apparatus according to the present invention has an advantage in that the polarity information is highly resistant to code errors.

【0029】次に、本発明のベクトル量子化装置を音声
符号化装置に適用した実施例について説明する。図2
は、本発明の一実施例に係るベクトル量子化を音声符号
化の駆動信号の雑音成分符号化に適用したときの符号化
装置の構成例を示すブロック図である。
Next, an embodiment in which the vector quantization apparatus of the present invention is applied to a speech coding apparatus will be described. FIG.
1 is a block diagram illustrating a configuration example of an encoding device when vector quantization according to an embodiment of the present invention is applied to noise component encoding of a drive signal for speech encoding.

【0030】同図において、入力信号(音声信号)は端
子201より合成フィルタ符号化部202および重みフ
ィルタ部203に入力される。合成フィルタ符号化部2
02は、入力音声信号の分析により音声のスペクトル包
絡情報を表す合成フィルタの情報を抽出し、これを符号
化してその符号を多重化部208に出力すると共に、入
力音声信号の分析により重みフィルタ情報を重みフィル
タ部203に出力し、また重み付き合成フィルタ情報H
をピッチ成分符号化部204、雑音成分符号化部205
および局部復号化部207に出力する。
In FIG. 1, an input signal (speech signal) is input from a terminal 201 to a synthesis filter encoding unit 202 and a weight filter unit 203. Synthesis filter encoder 2
02 extracts information of a synthesis filter representing the spectrum envelope information of the voice by analyzing the input voice signal, encodes the information, outputs the code to the multiplexing unit 208, and analyzes the input voice signal to extract the weight filter information. Is output to the weight filter unit 203, and the weighted synthesis filter information H
To the pitch component encoding unit 204 and the noise component encoding unit 205
And output to local decoding section 207.

【0031】重みフィルタ部203は、重みフィルタ情
報と入力音声信号および局部復号化部207からの局部
復号信号を入力して、ブロック単位で処理可能なN次元
参照音声ベクトルxを出力する。
The weight filter unit 203 receives the weight filter information, the input audio signal, and the local decoded signal from the local decoding unit 207, and outputs an N-dimensional reference audio vector x that can be processed in block units.

【0032】ピッチ成分符号化部204は、参照音声ベ
クトルx、重み付き合成フィルタ情報H、局部復号化部
207からの過去の駆動信号を入力し、公知の方法であ
る適応コードブック探索により、過去の駆動信号波形か
ら現ブロックのピッチ成分の再生に用いるピッチベクト
ルy0 を抽出し、そのインデックスを多重化部208に
出力するとともに、合成されたピッチベクトルx0 を出
力する。
The pitch component coding unit 204 receives the reference speech vector x, the weighted synthesis filter information H, and the past drive signal from the local decoding unit 207, and performs past code search by an adaptive codebook search which is a known method. , A pitch vector y0 used for reproducing the pitch component of the current block is extracted from the drive signal waveform, and its index is output to the multiplexing unit 208, and the synthesized pitch vector x0 is output.

【0033】次に、本実施例の特徴をなす雑音成分符号
化部205について説明する。雑音成分符号化部205
は、雑音コードブック100、参照ベクトル修正部21
1、予備選択部212、本選択部213および雑音ベク
トル再生部215から構成される。
Next, a description will be given of the noise component encoding unit 205 which is a feature of this embodiment. Noise component coding section 205
Is the noise codebook 100, the reference vector correction unit 21
1, a preliminary selection unit 212, a main selection unit 213, and a noise vector reproduction unit 215.

【0034】参照ベクトル修正部211は、参照音声ベ
クトルxからピッチベクトルx0 の影響を除いた残差ベ
クトルに重み付き合成フィルタ情報Hで時間逆の重み付
けを行い、修正された参照ベクトルrを出力する。予備
選択部212は、参照ベクトルrと雑音コードブック1
00を用いてコードブックの多数のインデックス候補を
少数(J個とする)のインデックス候補に絞り込む。本
選択部213は、予備選択部212からのJ個のインデ
ックス候補をさらに精度良く絞り込み、最終的に1つの
インデックス候補をインデックスIc として選択する処
理を行う。
The reference vector correction unit 211 weights the residual vector obtained by removing the influence of the pitch vector x0 from the reference speech vector x in the time inverse manner with the weighted synthesis filter information H, and outputs a corrected reference vector r. . Preselection section 212 generates reference vector r and noise codebook 1
Using 00, the number of index candidates in the codebook is narrowed down to a small number (to be J). The main selection unit 213 performs a process of narrowing down the J index candidates from the preliminary selection unit 212 with higher accuracy, and finally selecting one index candidate as the index Ic.

【0035】雑音ベクトル再生部215は図1に示した
ように構成され、本選択部213からの基底ベクトルイ
ンデックスIc に対応する雑音コードブック100から
の基底ベクトルvと、本選択部213からの極性情報イ
ンデックスIp に対応する極性ベクトルsを用いた要素
毎の乗算により得られた代表ベクトルuを形状が最適化
された雑音ベクトルy1 として求める。さらに、雑音ベ
クトル再生部215は雑音ベクトルy1 と合成フィルタ
符号化部202からの重み付き合成フィルタ情報Hを用
いて、合成された雑音ベクトルx1 も出力する。
The noise vector reproducing section 215 is configured as shown in FIG. 1, and includes a basis vector v from the noise codebook 100 corresponding to the basis vector index Ic from the main selection section 213, and a polarity from the main selection section 213. A representative vector u obtained by element-by-element multiplication using the polarity vector s corresponding to the information index Ip is obtained as a noise vector y1 whose shape has been optimized. Further, the noise vector reproducing unit 215 outputs a synthesized noise vector x1 using the noise vector y1 and the weighted synthesis filter information H from the synthesis filter encoding unit 202.

【0036】以下、雑音成分符号化部205の各部につ
いて詳細に説明する。図3に、予備選択部212の詳細
な構成を雑音コードブック100とともに示す。ここで
は、表記を簡単にするため、ベクトルの次元数をN=
6、極性情報インデックスIp のビット数をp=2とし
ている。また、上述の関数LをL(p,n)=n mo
d p(nをpで割ったときの剰余)とする例で説明す
る。図3において、部分内積計算部301は雑音コード
ブック100から引き出されるインデックスiの代表ベ
クトルvi と修正された参照ベクトルrとの部分内積f
k(k=0〜p−1)を求めている。部分内積fk はベ
クトル要素位置n=0〜N−1に対し、k=n mod
pを満たす要素についてだけの内積値を求めたもので
ある。従ってp=2、N=6の例では、 f0 =r0 v0 +r2 v2 +r4 v4 f1 =r1 v1 +r3 v3 +r5 v5 と計算できる。絶対値加算部302では、この部分内積
fk の絶対値和 を求め、比較部303ではcor(i) が最大となるとき
の雑音インデックスをJ個探索し、これを予備選択出力
とする。
Hereinafter, each unit of the noise component coding unit 205 will be described in detail. FIG. 3 shows a detailed configuration of preliminary selection section 212 together with noise codebook 100. Here, in order to simplify the notation, the number of dimensions of the vector is N =
6. The number of bits of the polarity information index Ip is p = 2. Further, the above function L is represented by L (p, n) = n mo
An example will be described in which d p (the remainder when n is divided by p) is used. In FIG. 3, a partial inner product calculation unit 301 calculates a partial inner product f of a representative vector vi of an index i extracted from the noise codebook 100 and a corrected reference vector r.
k (k = 0 to p-1) is obtained. The partial inner product f k is k = n mod for vector element positions n = 0 to N−1.
The inner product value is obtained only for elements that satisfy p. Therefore, in the example of p = 2 and N = 6, it can be calculated as f0 = r0 v0 + r2 v2 + r4 v4 f1 = r1 v1 + r3 v3 + r5 v5. The absolute value adding section 302 calculates the sum of absolute values of the partial inner product fk. The comparison unit 303 searches for J noise indices when cor (i) is maximized, and uses this as a preliminary selection output.

【0037】部分内積の絶対値和cor(i) は、ベクト
ルvi に対し極性ベクトルsを最適に調整したときのu
i とrとの内積値と等しい。このため、形状が修正され
たベクトルui に対するインデックスの予備選択をco
r(i) の最大値探索で行うことができる。
The sum of the absolute values of the partial inner products, cor (i), is expressed by u when the polarity vector s is optimally adjusted with respect to the vector vi.
It is equal to the inner product of i and r. Therefore, the preliminary selection of the index for the shape-corrected vector ui is denoted by co.
This can be performed by searching for the maximum value of r (i).

【0038】予備選択部212の別の構成例として、雑
音コードブック100に格納される代表ベクトルvi の
ノルムが規格化されていない場合は、図3に示した構成
を例えば図4に示すように修正することができる。同図
において、雑音コードブック100はベクトルの要素の
ほかに、代表ベクトル毎の規格化重み係数wi を格納し
ている。予備選択部400では、規格化絶対値加算部4
02において部分内積fk と規格化重み係数wi より規
格化絶対値和 が最大となるときのインデックスをJ個探索し、これを
予備選択出力とする。なお、規格化重みwi の値として
はベクトルvi のノルムの逆数等を用いることができ
る。
As another configuration example of the preliminary selection unit 212, when the norm of the representative vector vi stored in the noise codebook 100 is not standardized, the configuration shown in FIG. Can be modified. In the figure, the noise codebook 100 stores normalized weighting coefficients wi for each representative vector in addition to the vector elements. In the preliminary selection unit 400, the normalized absolute value addition unit 4
02, the sum of normalized absolute values based on the partial inner product fk and the normalized weighting coefficient wi J is searched for the index at which is maximized, and this is used as a preliminary selection output. As the value of the normalization weight wi, the reciprocal of the norm of the vector vi can be used.

【0039】図5に、規格化重みを用いた予備選択の処
理手順を示す。まず、I,J,N,P,ベクトルrおよ
びコードブックをセットし(ステップS11)、i=0
としする(ステップS12)。インデックスiに関しベ
クトルrとベクトルvi の部分内積fk を計算した後、
全てのkに関してfk の絶対値和をとり、これに規格化
重みwi を乗じて規格化絶対値和cor(i) を計算する
処理をi=0〜I−1まで行う(ステップS13〜S1
6)。次に、規格化絶対値和corが最も大きくなるよ
うなインデックスをJ個選択し、これをi_opt(j)(j
=0〜J−1)として保存する(ステップS17)。最
後に、J個の選択されたインデックスを予備選択結果と
して出力する(ステップS18)。
FIG. 5 shows a processing procedure of the preliminary selection using the standardized weight. First, I, J, N, P, a vector r and a codebook are set (step S11), and i = 0
(Step S12). After calculating the partial inner product fk of the vector r and the vector vi with respect to the index i,
The sum of the absolute values of fk is calculated for all k, and the process of multiplying the sum by the normalization weight wi to calculate the normalized absolute value sum cor (i) is performed from i = 0 to I-1 (steps S13 to S1).
6). Next, J indices that maximize the normalized sum of absolute values cor are selected, and these are selected as i_opt (j) (j
= 0 to J-1) (step S17). Finally, J selected indices are output as preliminary selection results (step S18).

【0040】次に、本選択部213について説明する。
図6は、本選択部213の構成例を示すブロック図であ
る。この本選択部213は、部分内積計算部501、絶
対値加算部502、比較部503、極性乗算部504お
よび直交化パワ計算部505からなり、予備選択部21
2で選択されたJ個のインデックス候補をi_opt(j)
(j=0〜J−1)とし、このインデックスに対応する
代表ベクトルを雑音コードブック100から順次引き出
すように構成されており、図の例ではp=2,N=6と
している。部分内積計算部501は、雑音コードブック
100から取り込まれたインデックスに対応する代表ベ
クトルと参照ベクトルrとの部分内積fk(k=0〜p
−1)を求める他に、極性情報ビットbk 、極性sk を
求める。極性sk は、sk =sign(fk )(sig
n(x)はxの正負の極性値)により決めることができ
る。極性情報の第k番目のビットbk は、例えばbk =
(1−sk )/2とすることにより、極性sk と対応を
つけることができる。
Next, the main selection unit 213 will be described.
FIG. 6 is a block diagram illustrating a configuration example of the main selection unit 213. The main selection unit 213 includes a partial inner product calculation unit 501, an absolute value addition unit 502, a comparison unit 503, a polarity multiplication unit 504, and an orthogonalization power calculation unit 505.
I_opt (j)
(J = 0 to J-1), and a representative vector corresponding to the index is sequentially extracted from the noise codebook 100. In the example of the figure, p = 2 and N = 6. The partial inner product calculation unit 501 generates a partial inner product fk (k = 0 to p) between the representative vector corresponding to the index fetched from the noise codebook 100 and the reference vector r.
In addition to determining -1), the polarity information bit bk and the polarity sk are determined. The polarity sk is given by sk = sign (fk) (sig
n (x) can be determined by the positive and negative polar values of x). The k-th bit bk of the polarity information is, for example, bk =
By setting (1−sk) / 2, it is possible to associate with the polarity sk.

【0041】図7に、参照ベクトルrとvから極性sk
と極性情報ビットbk を求める手順を示す。同図に示す
ように、ステップS21でセットされたベクトルrとベ
クトルvを用いてステップS22で部分内積fk を計算
し、ステップS23で部分内積fk より極性sk とビッ
トbk を求めることにより、極性情報を決めることがで
きる。
FIG. 7 shows the polarity sk from the reference vectors r and v.
And a procedure for obtaining the polarity information bit bk. As shown in the drawing, the partial inner product fk is calculated in step S22 using the vector r and the vector v set in step S21, and the polarity sk and the bit bk are obtained from the partial inner product fk in step S23, thereby obtaining the polarity information. Can be determined.

【0042】極性乗算部504は、ベクトルvについて
計算された極性sk を用いて un =vn ×sk (n=0〜N−1,k=n mod p) により形状が最適化されたベクトルuを生成する。例え
ば、p=2,N=6でL(p,n)=n mod pの
ときは、u0 =v0 s0 ,u1 =v1 s1 ,u2=v2
s0 ,u3 =v3 s1 ,u4 =v4 s0 ,u5 =v5 s
1 となる。
The polarity multiplying unit 504 uses the polarity sk calculated for the vector v to calculate the vector u whose shape has been optimized by un = vn × sk (n = 0 to N-1, k = n mod p). Generate. For example, when p = 2, N = 6 and L (p, n) = n mod p, u0 = v0s0, u1 = v1s1, u2 = v2
s0, u3 = v3 s1, u4 = v4 s0, u5 = v5 s
It becomes 1.

【0043】直交化パワ計算部505は、ベクトルu、
合成されたピッチベクトルx0 および重み付き合成フィ
ルタ情報Hを用いて、直交化されたuの合成ベクトルの
パワpowを出力する。
The orthogonalization power calculator 505 calculates the vector u,
Using the synthesized pitch vector x0 and the weighted synthesis filter information H, the power pow of the orthogonalized u synthesized vector is output.

【0044】絶対値加算部502は、上述した方法で内
積値corを計算する。比較部503は、内積値cor
とパワpowを用いたインデックス毎の比較処理によ
り、最適なインデックスIc の選択を行い、それに対応
する極性情報インデックスIpと共にIc を出力する。
The absolute value adder 502 calculates the inner product value cor by the method described above. The comparison unit 503 calculates the inner product value cor
Then, an optimal index Ic is selected by a comparison process for each index using the power pow and the power pow, and Ic is output together with the corresponding polarity information index Ip.

【0045】図8に、本選択部213の処理手順を示
す。ステップS36でインデックス候補i_opt(j)に対
応するcorの2乗値をcor2として求め、ステップ
S39でインデックス候補i_opt(j)とi_opt(j-1)の
比較をcor2とpowを用いて行っている。
FIG. 8 shows a processing procedure of the main selection unit 213. In step S36, the square value of cor corresponding to the index candidate i_opt (j) is obtained as cor2, and in step S39, the comparison between the index candidates i_opt (j) and i_opt (j-1) is performed using cor2 and pow. .

【0046】こうして本選択部213から得られる雑音
インデックス(基底ベクトルインデックス)Ic と極性
情報インデックスIp は、雑音ベクトル再生部215に
入力され、雑音インデックスIc に対応する雑音コード
ブック100からのベクトルvと極性情報インデックス
Ip に対応する極性ベクトルsを用いた要素毎の乗算に
より、形状が最適化された雑音ベクトルuが求められ
る。
The noise index (base vector index) Ic and the polarity information index Ip thus obtained from the main selection unit 213 are input to the noise vector reproduction unit 215, and the vector v from the noise codebook 100 corresponding to the noise index Ic and the vector v A noise vector u having an optimized shape is obtained by element-wise multiplication using the polarity vector s corresponding to the polarity information index Ip.

【0047】図9に、雑音ベクトル再生部215の処理
手順を示す。まず、ステップS51でインデックスIc
に対応するベクトルvと極性情報インデックスIp を表
す各ビットbk をセットし、ステップS52でbk から
極性sk を求める。次に、ステップS53で極性sk
(k=0〜p−1)とベクトルvの要素毎の乗算によ
り、ベクトルuを求める。このベクトルuを雑音ベクト
ルy1 とし、雑音ベクトル再生部215ではさらに重み
付き合成フィルタ情報Hとy1 を用いて、合成された雑
音ベクトルx1 を求め、これを出力する。
FIG. 9 shows a processing procedure of the noise vector reproducing unit 215. First, in step S51, the index Ic
Is set and each bit bk representing the polarity information index Ip is set, and the polarity sk is obtained from bk in step S52. Next, in step S53, the polarity sk
A vector u is obtained by multiplying (k = 0 to p−1) and the vector v for each element. The vector u is set as a noise vector y1, and the noise vector reproducing unit 215 further obtains a synthesized noise vector x1 using the weighted synthesis filter information H and y1, and outputs this.

【0048】図2に説明を戻すと、ゲイン成分符号化部
206はピッチ成分と雑音成分にそれぞれ用いるゲイン
の符号化を行う。具体的には、ピッチ成分符号化部20
4と雑音成分符号化部205からそれぞれ合成されたピ
ッチベクトルx0 と、合成された雑音ベクトルx1 を入
力し、内蔵するゲインコードブックの探索により、参照
ベクトルxとベクトル(g0 x0 +g1 x1 )の歪が最
小となるようなゲインの組(g0 ,g1 )と、これに対
応するインデックスGを探索して出力する。
Returning to FIG. 2, the gain component coding section 206 codes gains used for the pitch component and the noise component, respectively. Specifically, pitch component encoding section 20
4 and the combined noise vector x1 from the noise component coding unit 205 are input, and the distortion of the reference vector x and the vector (g0 x0 + g1 x1) is obtained by searching for a built-in gain codebook. And the index G corresponding to the set of gains (g0, g1) that minimizes.

【0049】局部復号部207は、ゲインg0 ,g1 、
ピッチベクトルy0 および雑音ベクトルy1 を用いて現
ブロックに対応する駆動信号を作成し、これと重み付き
合成フィルタ情報Hを用いて局部復号信号を作成する。
The local decoding unit 207 includes gains g0, g1,
A drive signal corresponding to the current block is created using the pitch vector y0 and the noise vector y1, and a local decoded signal is created using this and the weighted synthesis filter information H.

【0050】多重化部208は、各符号化部204,2
05,206で求められた符号化パラメータ情報を入力
し、これらを多重化して出力端子209から伝送媒体ま
たは蓄積媒体へ出力する。
The multiplexing unit 208 includes the encoding units 204 and 2
The coding parameter information obtained in steps 05 and 206 is input, multiplexed, and output from an output terminal 209 to a transmission medium or a storage medium.

【0051】次に、この音声符号化装置からの伝送情報
を復号して再生音声を出力する音声復号化装置の実施例
について図10を用いて説明する。図10において、入
力端子601から入力された符号化パラメータ情報は、
分離部602において以下に説明する各復号化部で用い
る情報に分離される。ピッチ成分復号化部603は、図
2に示した音声符号化装置と同じように過去の駆動信号
を利用する適応コードブックを内蔵しており、これに用
いるインデックスを分離部602から入力してピッチベ
クトルy0 を再生する。
Next, an embodiment of a speech decoding apparatus for decoding transmission information from the speech encoding apparatus and outputting reproduced speech will be described with reference to FIG. In FIG. 10, coding parameter information input from an input terminal 601 is:
The separation unit 602 separates the information into information used in each decoding unit described below. The pitch component decoding unit 603 incorporates an adaptive codebook that uses a past drive signal in the same manner as the speech encoding device shown in FIG. Play the vector y0.

【0052】雑音成分復号化部604は、雑音コードブ
ック605と雑音ベクトル再生部606から構成され、
復号された雑音インデックスIc に対応するベクトルv
と極性情報インデックスIp を用いて、図2に示した音
声符号化装置の雑音ベクトル再生部215と同様の処理
により形状を最適化した雑音ベクトルuを再生し、これ
をベクトルy1 として出力する。
The noise component decoding unit 604 includes a noise codebook 605 and a noise vector reproducing unit 606.
A vector v corresponding to the decoded noise index Ic
Using the polarity information index Ip and the noise vector reproducing unit 215 of the speech coding apparatus shown in FIG. 2, a noise vector u whose shape is optimized is reproduced, and this is output as a vector y1.

【0053】ゲイン成分復号化部607は、音声符号化
装置と同じようにゲインコードブックを内蔵し、復号さ
れたインデックスGによりゲインg0 とg1 を再生す
る。次に、乗算部608,609と加算部610を用い
て駆動信号g0 y0 +g1 y1を再生する。合成フィル
タ611は、復号された合成フィルタ情報と駆動信号を
用いて復号音声信号を算出し、これを出力する。音声復
号化装置の最終段の処理としてポストフィルタ612を
用いる。ポストフィルタ612は、伝送されてきた符号
化パラメータ情報を基にフィルタの特性を決め、復号音
声信号の音質を調整したものを再生音声信号として端子
613より出力する。
The gain component decoding section 607 incorporates a gain codebook in the same manner as the speech coding apparatus, and reproduces the gains g0 and g1 based on the decoded index G. Next, the driving signals g0 y0 + g1 y1 are reproduced by using the multiplication units 608 and 609 and the addition unit 610. The synthesis filter 611 calculates a decoded audio signal using the decoded synthesis filter information and the drive signal, and outputs the signal. The post filter 612 is used as the last stage processing of the audio decoding device. The post-filter 612 determines the characteristics of the filter based on the transmitted encoding parameter information, and outputs a signal obtained by adjusting the sound quality of the decoded audio signal from the terminal 613 as a reproduced audio signal.

【0054】(第2の実施例)図11は、本発明の第2
の実施例に係る音声符号化装置のブロック図である。図
2に示した第1の実施例の音声符号化装置と同じ機能を
有する部分には同一符号を付してその説明を省略し、相
違点を中心に説明すると、本実施例では雑音成分符号化
部205で雑音コードブック100のインデックスと極
性情報インデックスを複数組選択し、これら複数組の候
補をゲイン成分符号化部206で最終的に1組のIc と
Ip に絞り込む構成としている点が第1の実施例と異な
る。
(Second Embodiment) FIG. 11 shows a second embodiment of the present invention.
FIG. 2 is a block diagram of a speech encoding device according to an embodiment of the present invention. The parts having the same functions as those of the speech coding apparatus according to the first embodiment shown in FIG. 2 are denoted by the same reference numerals, and the description thereof will be omitted. The difference will be mainly described. Is that the encoding unit 205 selects a plurality of sets of the index of the noise codebook 100 and the polarity information index, and the gain component encoding unit 206 finally narrows down the set of candidates to one set of Ic and Ip. This is different from the first embodiment.

【0055】図11において、雑音成分符号化部205
は参照ベクトル修正部211、雑音コードブック10
0、予備選択部212および雑音ベクトル再生部215
から構成される。予備選択部212は、修正された参照
ベクトルrと雑音コードブック100を用いてコードブ
ック内の多数のインデックス候補を少数(J個)のイン
デックス候補に絞り込む。そして、これらJ個のインデ
ックス候補と共に、それらに対応する極性情報インデッ
クスの候補を雑音ベクトル再生部215に出力する。雑
音ベクトル再生部215は、第1の実施例の雑音ベクト
ル再生部215と同様の機能を有し、コードブックのイ
ンデックスとこれに対応する極性情報インデックスのJ
組の候補と、これらに対応する雑音ベクトルと合成され
た雑音ベクトルのJ組をゲイン成分符号化部206に出
力する。ゲイン成分符号化部206は、入力されるJ組
の候補それぞれに対し、合成されたピッチベクトルx0
を用いて、第1の実施例のゲイン成分符号化部206と
同様の方法でゲインの符号化を行う。そして、最終的に
参照ベクトルxに対する歪が最も小さくなる候補をJ組
の中から選択し、そのときの雑音ベクトルをy1 、コー
ドブックのインデックスをIc 、極性情報インデックス
をIp として、ゲインg0 とg1 を局部復号化部207
へ、またIc ,Ip およびゲインコードブックのインデ
ックスGを多重化部208へ出力する。その他の点は、
第1の実施例と同様の構成であるので、説明を省略す
る。
In FIG. 11, noise component coding section 205
Is the reference vector correction unit 211, the noise codebook 10
0, preliminary selection unit 212 and noise vector reproduction unit 215
Consists of The preliminary selection unit 212 narrows down a large number of index candidates in the codebook to a small number (J) of index candidates using the corrected reference vector r and the noise codebook 100. Then, together with these J index candidates, the corresponding polarity information index candidates are output to the noise vector reproducing unit 215. The noise vector reproducing unit 215 has a function similar to that of the noise vector reproducing unit 215 of the first embodiment, and includes a codebook index and a polarity information index J corresponding thereto.
The combination candidates and the J vector of the noise vector combined with the corresponding noise vector are output to gain component coding section 206. The gain component coding unit 206 calculates a synthesized pitch vector x0 for each of the input J sets of candidates.
, The gain is encoded by the same method as that of the gain component encoding unit 206 of the first embodiment. Finally, a candidate having the smallest distortion with respect to the reference vector x is selected from the J sets, and the noise vector at that time is y1, the codebook index is Ic, the polarity information index is Ip, and the gains g0 and g1 are obtained. To local decoding section 207
, Ic, Ip and the index G of the gain codebook are output to the multiplexing unit 208. Other points are
Since the configuration is the same as that of the first embodiment, the description is omitted.

【0056】[0056]

【本発明の効果】以上説明したように、本発明のベクト
ル量子化装置はインデックスのビット数が大きくともイ
ンデックス探索に要する処理量が少なく高速にインデッ
クス探索ができ、またコードブックとして格納する基底
ベクトルの本数を少なくしても等価的に多くの代表ベク
トルをコードブックとして実現することができるので、
基底ベクトルの格納に有するメモリ量を削減できるとい
う効果を奏する。
As described above, the vector quantization apparatus according to the present invention requires only a small amount of processing for index search even if the number of index bits is large, enables high-speed index search, and base vectors stored as a codebook. Even if the number of is reduced, many representative vectors can be equivalently realized as a codebook.
This has the effect of reducing the amount of memory required to store base vectors.

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

【図1】本発明に係るベクトル量子化装置の原理的構成
を示すブロック図
FIG. 1 is a block diagram showing a basic configuration of a vector quantization apparatus according to the present invention.

【図2】本発明の一実施例に係る音声符号化装置の構成
を示すブロック図
FIG. 2 is a block diagram showing a configuration of a speech coding apparatus according to one embodiment of the present invention.

【図3】同実施例における予備選択部の構成例を示すブ
ロック図
FIG. 3 is a block diagram showing a configuration example of a preliminary selection unit in the embodiment.

【図4】同実施例における予備選択部の他の構成例を示
すブロック図
FIG. 4 is a block diagram showing another configuration example of the preliminary selection unit in the embodiment.

【図5】同実施例における予備選択部の処理手順の例を
示すフローチャート
FIG. 5 is a flowchart illustrating an example of a processing procedure of a preliminary selection unit according to the embodiment;

【図6】同実施例における本選択部の構成例を示すブロ
ック図
FIG. 6 is a block diagram showing a configuration example of a main selection unit in the embodiment.

【図7】同実施例における極性情報を求める処理手順の
例を示すフローチャート
FIG. 7 is a flowchart illustrating an example of a processing procedure for obtaining polarity information according to the embodiment;

【図8】同実施例における本選択部の処理手順の例を示
すフローチャート
FIG. 8 is a flowchart illustrating an example of a processing procedure of a main selection unit according to the embodiment.

【図9】同実施例における雑音ベクトル再生部の処理手
順の例を示すフローチャート
FIG. 9 is a flowchart illustrating an example of a processing procedure of a noise vector reproducing unit in the embodiment.

【図10】本発明の一実施例に係る音声復号化装置の構
成を示すブロック図
FIG. 10 is a block diagram showing a configuration of a speech decoding apparatus according to one embodiment of the present invention.

【図11】本発明の他の実施例に係る音声符号化装置の
構成を示すブロック図
FIG. 11 is a block diagram showing a configuration of a speech coding apparatus according to another embodiment of the present invention.

【図12】従来のベクトル量子化装置におけるベクトル
再生の原理を示す図
FIG. 12 is a diagram showing the principle of vector reproduction in a conventional vector quantization device.

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

100…雑音コードブック 101…基底ベクトルインデックス入力端子 102…基底ベクトル選択スイッチ 103…極性ベクトル生成部 104…乗算器 105…極性乗算部 201…音声信号入力端子 202…合成フィルタ符号化部 203…重みフィルタ部 204…ピッチ成分符号化部 205…雑音成分符号化部 206…ゲイン成分符号化部 207…局部復号部 208…多重化部 209…符号化パラメータ出力端子 211…参照ベクトル修正部 212…予備選択部 213…本選択部 215…雑音ベクトル再生部 401…部分内積計算部 402…規格化絶対値加算部 403…比較部 501…部分内積計算部 502…絶対値加算部 503…比較部 504…極性乗算部 505…直交化パワ計算部 601…入力端子 602…分離部 603…ピッチ成分復号化部 604…雑音成分復号化部 605…雑音コードブック 606…雑音ベクトル再生部 607…ゲイン成分復号化部 608,609…乗算部 610…加算部 611…合成フィルタ 612…ポストフィルタ 613…出力端子 Reference Signs List 100: noise codebook 101: base vector index input terminal 102: base vector selection switch 103: polarity vector generation unit 104: multiplier 105: polarity multiplication unit 201: audio signal input terminal 202: synthesis filter coding unit 203: weight filter Unit 204 Pitch component encoding unit 205 Noise component encoding unit 206 Gain component encoding unit 207 Local decoding unit 208 Multiplexing unit 209 Coding parameter output terminal 211 Reference vector correction unit 212 Preliminary selection unit 213: main selection unit 215 ... noise vector reproduction unit 401 ... partial inner product calculation unit 402 ... normalized absolute value addition unit 403 ... comparison unit 501 ... partial inner product calculation unit 502 ... absolute value addition unit 503 ... comparison unit 504 ... polarity multiplication unit 505: orthogonalization power calculation unit 601: input terminal 602: separation unit 03: Pitch component decoding unit 604 ... Noise component decoding unit 605 ... Noise codebook 606 ... Noise vector reproduction unit 607 ... Gain component decoding unit 608,609 ... Multiplication unit 610 ... Addition unit 611 ... Synthesis filter 612 ... Post filter 613 output terminal

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平7−253795(JP,A) 特開 平7−170192(JP,A) 特開 平6−209262(JP,A) 特開 平6−186998(JP,A) 特開 平6−222796(JP,A) 特表 平2−502135(JP,A) (58)調査した分野(Int.Cl.7,DB名) G10L 19/12 ────────────────────────────────────────────────── ─── Continuation of the front page (56) References JP-A-7-253795 (JP, A) JP-A-7-170192 (JP, A) JP-A-6-209262 (JP, A) JP-A-6-209262 186998 (JP, A) JP-A-6-222796 (JP, A) JP-A-2-502135 (JP, A) (58) Fields investigated (Int. Cl. 7 , DB name) G10L 19/12

Claims (6)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】目標ベクトルに対する代表ベクトルの歪に
基づいて所望の代表ベクトルに対応したインデックスを
探索し、探索したインデックスを出力するベクトル量子
化装置において、 N次元の基底ベクトルの要素と該基底ベクトルの各要素
に乗じる極性を要素とするN次元の極性ベクトルの要素
との積を要素とする代表ベクトルを生成する代表ベクト
ル生成手段と、 前記極性ベクトルの各要素の極性に対応した極性情報イ
ンデックスを生成する極性情報インデックス生成手段
と、 前記極性情報インデックスに基づいて前記極性ベクトル
を生成する極性ベクトル生成手段とを有することを特徴
とするベクトル量子化装置。
1. A vector quantization apparatus for searching for an index corresponding to a desired representative vector based on distortion of a representative vector with respect to a target vector and outputting the searched index, comprising: an element of an N-dimensional base vector; A representative vector generating means for generating a representative vector whose element is a product of an N-dimensional polar vector element having a polarity multiplied by each element of the element, and a polarity information index corresponding to the polarity of each element of the polarity vector. A vector quantization apparatus, comprising: a polarity information index generating unit that generates a polarity information index; and a polarity vector generating unit that generates the polarity vector based on the polarity information index.
【請求項2】目標ベクトルに対する代表ベクトルの誤差
に基づいて所望の代表ベクトルに対応したインデックス
を探索し、探索したインデックスを出力するベクトル量
子化装置において、 N次元の基底ベクトルの要素vn とN次元の極性ベクト
ルの対応する要素snとの積vn ×sn (n=0〜N−
1、|sn |=1)を要素とする代表ベクトルを生成す
る代表ベクトル生成手段と、 前記極性ベクトルの要素sn の極性を指定する極性情報
を得る極性情報生成手段と、 前記極性情報により指定される極性ベクトルの要素sn
の極性をsk (k=L(p,n)(k,pは0≦k≦p
−1、1≦p≦Nを満たす整数)とし、sk と該極性情
報の第kビット目の値bk を対応付けることにより、p
ビットの極性情報インデックスを生成する極性情報イン
デックス生成手段と、 前記極性情報インデックスに基づいて前記極性ベクトル
を生成する極性ベクトル生成手段とを有することを特徴
とするベクトル量子化装置。
2. A vector quantization apparatus for searching for an index corresponding to a desired representative vector based on an error of a representative vector with respect to a target vector and outputting the searched index, comprising: an element vn of an N-dimensional base vector; Vn × sn (n = 0 to N−
1, | sn | = 1); a representative vector generation unit that generates a representative vector having elements as elements; polarity information generation unit that obtains polarity information that specifies the polarity of the element sn of the polarity vector; Element of the polarity vector
Is sk (k = L (p, n) (k and p are 0 ≦ k ≦ p
−1, an integer satisfying 1 ≦ p ≦ N), and by associating sk with the value k k of the k-th bit of the polarity information, p
A vector quantization device, comprising: a polarity information index generation unit that generates a bit polarity information index; and a polarity vector generation unit that generates the polarity vector based on the polarity information index.
【請求項3】前記L(p,n)は、nをpで割ったとき
の剰余、またはnp/Nを超えない最大の整数であるこ
とを特徴とする請求項2に記載のベクトル量子化装置。
3. The vector quantization according to claim 2, wherein said L (p, n) is a remainder obtained by dividing n by p, or a maximum integer not exceeding np / N. apparatus.
【請求項4】前記基底ベクトルのk=L(p,n)の条
件を満たすn番目のベクトル要素について、前記目標ベ
クトルと前記代表ベクトルとの部分内積を求め、この部
分内積の極性を前記sk とすることを特徴とする請求項
2または3に記載のベクトル量子化装置。
4. A partial inner product of the target vector and the representative vector is obtained for an n-th vector element satisfying the condition of k = L (p, n) of the base vector, and the polarity of the partial inner product is determined by the sk. The vector quantization apparatus according to claim 2, wherein:
【請求項5】目標ベクトルに対する代表ベクトルの歪に
基づいて所望の代表ベクトルに対応したインデックスを
探索し、探索したインデックスを出力するベクトル量子
化装置において、 N次元の基底ベクトルを複数個格納した基底ベクトル格
納手段と、 この基底ベクトル格納手段に格納された複数個の基底ベ
クトルの一つを選択するための基底ベクトルインデック
スを探索する基底ベクトルインデックス探索手段と、 この手段により探索された基底ベクトルインデックスで
選択されたN次元の基底ベクトルの要素と該基底ベクト
ルの各要素に乗じる極性を要素とするN次元の極性ベク
トルの要素との積を要素とする代表ベクトルを生成する
代表ベクトル生成手段と、 前記極性ベクトルの各要素の極性に対応した極性情報イ
ンデックスを生成する極性情報インデックス生成手段
と、 前記極性情報インデックスに基づいて前記極性ベクトル
を生成する極性ベクトル生成手段とを有することを特徴
とするベクトル量子化装置。
5. A vector quantizer for searching for an index corresponding to a desired representative vector based on distortion of a representative vector with respect to a target vector and outputting the searched index, comprising: a base storing a plurality of N-dimensional base vectors; Vector storage means; base vector index search means for searching for a base vector index for selecting one of the plurality of base vectors stored in the base vector storage means; A representative vector generation unit configured to generate a representative vector whose element is a product of the selected N-dimensional base vector element and an N-dimensional polarity vector element whose polarity is a factor by which each element of the base vector is multiplied; Generate polarity information index corresponding to the polarity of each element of the polarity vector A polarity information index generating unit for generating the polarity vector, and a polarity vector generating unit for generating the polarity vector based on the polarity information index.
【請求項6】目標ベクトルに対する代表ベクトルの歪に
基づいて所望の代表ベクトルに対応したインデックスを
探索し、探索したインデックスを出力するベクトル量子
化装置において、 N次元の基底ベクトルをI個(Iは複数)格納した基底
ベクトル格納手段と、 この基底ベクトル格納手段に格納されたI個の基底ベク
トルの一つを選択するための基底ベクトルインデックス
を探索する基底ベクトルインデックス探索手段と、 この手段により探索された基底ベクトルインデックスで
選択されたN次元の基底ベクトルの要素と該基底ベクト
ルの各要素に乗じる極性を要素とするN次元の極性ベク
トルの要素との積を要素とする代表ベクトルを生成する
代表ベクトル生成手段と、 前記極性ベクトルの各要素の極性に対応した極性情報イ
ンデックスを生成する極性情報インデックス生成手段
と、 前記極性情報インデックスに基づいて前記極性ベクトル
を生成する極性ベクトル生成手段とを有し、 前記基底ベクトルインデックス探索手段は、前記基底ベ
クトルをvi (iは基底ベクトルインデックスであり、
i=0〜I−1)としたとき、該基底ベクトルVi 毎に
該基底ベクトルvi のk=L(p,n)(k,pは0≦
k≦p−1、1≦p≦Nを満たす整数)の条件を満たす
n番目のベクトル要素について前記目標ベクトルと前記
代表ベクトルとの部分内積fk から計算される を用いて基底ベクトルのインデックス候補数をJ個(0
<J<<I)に絞り込む手段を有することを特徴とする
ベクトル量子化装置。
6. A vector quantization apparatus for searching for an index corresponding to a desired representative vector based on distortion of a representative vector with respect to a target vector and outputting the searched index, comprising: I number of N-dimensional base vectors (I is A plurality of) stored base vector storage means; a base vector index search means for searching for a base vector index for selecting one of the I base vectors stored in the base vector storage means; A representative vector that generates a representative vector having as an element a product of an N-dimensional base vector element selected by the selected base vector index and an N-dimensional polarity vector element having a polarity multiplied by each element of the base vector Generating means, and a polarity information index corresponding to the polarity of each element of the polarity vector And a polarity vector generating means for generating the polarity vector based on the polarity information index. The base vector index searching means sets the base vector to vi (i A vector index,
When i = 0 to I-1), k = L (p, n) (k, p is 0 ≦) of the basis vector vi for each basis vector Vi.
k ≦ p−1, an integer satisfying 1 ≦ p ≦ N) is calculated from the partial inner product fk of the target vector and the representative vector for the n-th vector element. Is used to reduce the number of index candidates of the base vector to J (0
<J <<I> A vector quantization apparatus comprising means for narrowing down to (I).
JP06365995A 1994-09-30 1995-03-23 Vector quantizer Expired - Fee Related JP3319551B2 (en)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP06365995A JP3319551B2 (en) 1995-03-23 1995-03-23 Vector quantizer
EP95306952A EP0704836B1 (en) 1994-09-30 1995-09-29 Vector quantization apparatus
CA002159571A CA2159571C (en) 1994-09-30 1995-09-29 Vector quantization apparatus
DE69526017T DE69526017T2 (en) 1994-09-30 1995-09-29 Device for vector quantization
US08/536,362 US5774838A (en) 1994-09-30 1995-09-29 Speech coding system utilizing vector quantization capable of minimizing quality degradation caused by transmission code error
CN95119970A CN1097396C (en) 1994-09-30 1995-09-30 Vector quantization apparatus
KR1019950033430A KR100194775B1 (en) 1994-09-30 1995-09-30 Vector quantizer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP06365995A JP3319551B2 (en) 1995-03-23 1995-03-23 Vector quantizer

Publications (2)

Publication Number Publication Date
JPH08263100A JPH08263100A (en) 1996-10-11
JP3319551B2 true JP3319551B2 (en) 2002-09-03

Family

ID=13235702

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06365995A Expired - Fee Related JP3319551B2 (en) 1994-09-30 1995-03-23 Vector quantizer

Country Status (1)

Country Link
JP (1) JP3319551B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4694511B2 (en) * 2007-01-19 2011-06-08 日本電信電話株式会社 Encoding device, decoding device, encoding / decoding system, encoding / decoding method, encoding program, decoding program, encoding / decoding program, and recording medium
PL3364411T3 (en) * 2009-12-14 2022-10-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vector quantization device, speech coding device, vector quantization method, and speech coding method

Also Published As

Publication number Publication date
JPH08263100A (en) 1996-10-11

Similar Documents

Publication Publication Date Title
JP2746039B2 (en) Audio coding method
JP3346765B2 (en) Audio decoding method and audio decoding device
JP3707153B2 (en) Vector quantization method, speech coding method and apparatus
JP3680380B2 (en) Speech coding method and apparatus
JP3707154B2 (en) Speech coding method and apparatus
JP4005154B2 (en) Speech decoding method and apparatus
JP4005359B2 (en) Speech coding and speech decoding apparatus
CA2159571C (en) Vector quantization apparatus
JPH09127991A (en) Voice coding method, device therefor, voice decoding method, and device therefor
JPH1091194A (en) Method of voice decoding and device therefor
JP3319551B2 (en) Vector quantizer
JP3268750B2 (en) Speech synthesis method and system
JP3916934B2 (en) Acoustic parameter encoding, decoding method, apparatus and program, acoustic signal encoding, decoding method, apparatus and program, acoustic signal transmitting apparatus, acoustic signal receiving apparatus
JP3252285B2 (en) Audio band signal encoding method
JPH08234795A (en) Voice encoding device
JP3194930B2 (en) Audio coding device
JP3489748B2 (en) Audio encoding device and audio decoding device
JP2002073097A (en) Celp type voice coding device and celp type voice decoding device as well as voice encoding method and voice decoding method
JP3192999B2 (en) Voice coding method and voice coding method
JP3144194B2 (en) Audio coding device
JP3192051B2 (en) Audio coding device
JPH09179593A (en) Speech encoding device
JP2808841B2 (en) Audio coding method
JP3335650B2 (en) Audio coding method
JP3675054B2 (en) Vector quantization method, speech encoding method and apparatus, and speech decoding method

Legal Events

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

Free format text: PAYMENT UNTIL: 20090621

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100621

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100621

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110621

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20120621

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees