JP3010638B2 - Signal processing device and signal processing method - Google Patents
Signal processing device and signal processing methodInfo
- Publication number
- JP3010638B2 JP3010638B2 JP1197595A JP19759589A JP3010638B2 JP 3010638 B2 JP3010638 B2 JP 3010638B2 JP 1197595 A JP1197595 A JP 1197595A JP 19759589 A JP19759589 A JP 19759589A JP 3010638 B2 JP3010638 B2 JP 3010638B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- output
- code
- quantization
- index
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、入力データをデータ圧縮して量子化する信
号処理装置及び信号処理方法に関する。Description: TECHNICAL FIELD The present invention relates to a signal processing device and a signal processing method for compressing and quantizing input data.
本発明は、入力データをベクトル量子化したベクトル
量子化出力を可変長符号化し、ベクトル量子化出力を入
力データの所定単位毎に監視して、その出力におけるビ
ット量に応じてベクトル量子化のためのパラメータを制
御することにより、入力データを効率良く量子化するこ
とのできる信号処理装置及び信号処理方法を提供するも
のである。The present invention performs variable-length encoding on a vector-quantized output obtained by vector-quantizing input data, monitors the vector-quantized output for each predetermined unit of the input data, and performs vector quantization according to the bit amount in the output. The present invention provides a signal processing device and a signal processing method capable of efficiently quantizing input data by controlling the parameters (1) and (2).
例えば音声信号等の量子化を行う際の手法として、サ
ンプル値の系列(複数ワードのつながり)を適当な大き
さに区切って1つのブロックにまとめ、この1ブロック
を1つのベクトルとして量子化するベクトル量子化の手
法がある。このベクトル量子化においては、入力ベクト
ルと最も類似している(例えば距離の最も近い)コード
ベクトルと対応したインデックスを得るものであるた
め、ビット数を低減できる。また、入力データの各ワー
ド間の相関を除去できるので量子化効率が高いものであ
る。For example, as a method for quantizing an audio signal or the like, a vector (a series of sample words) divided into an appropriate size is collected into one block, and the one block is quantized as one vector. There is a quantization method. In this vector quantization, an index corresponding to a code vector most similar to the input vector (for example, closest to the distance) is obtained, so that the number of bits can be reduced. Further, since the correlation between each word of the input data can be removed, the quantization efficiency is high.
ところで、上記ベクトル量子化においては、インデッ
クスの発生確率が一定ではなく、確率分布が偏っている
ため、量子化の高効率化の上での欠点となっている。こ
の場合、ベクトルの次元を高める(すなわち区切られる
ブロック内のワード数を多くする)ことで、インデック
ス発生確率の偏在を少なくすることができる。しかし、
ベクトルの次元を上げると演算量が増大し、かつ構成も
複雑化するため、実際には、入力ベクトルの次元を充分
には上げられないのが実情である。By the way, in the above-described vector quantization, the occurrence probability of the index is not constant and the probability distribution is biased, which is a disadvantage in improving the efficiency of the quantization. In this case, the uneven distribution of the index occurrence probability can be reduced by increasing the dimension of the vector (that is, increasing the number of words in the divided block). But,
Increasing the dimension of the vector increases the amount of calculation and complicates the configuration. Therefore, in practice, the dimension of the input vector cannot be sufficiently increased.
そこで、本発明は、上述のような実情に鑑みて提案さ
れたものであり、低次元のベクトル量子化のためインデ
ックスの発生確率の偏りが生じていても効率の高い量子
化を行え、さらにベクトル量子化出力のビット量を所定
量以内に収めることをも可能とする信号処理装置及び信
号処理方法を提供することを目的とするものである。Therefore, the present invention has been proposed in view of the above-described situation, and can perform highly efficient quantization even when the occurrence probability of an index is biased due to low-dimensional vector quantization. It is an object of the present invention to provide a signal processing device and a signal processing method capable of keeping the bit amount of a quantized output within a predetermined amount.
本発明の信号処理装置は、上述の目的を達成するため
に提案されたものであり、入力データをベクトル量子化
するベクトル量子化手段と、ベクトル量子化手段からの
出力を可変長符号化する可変長符号化手段と、ベクトル
量子化手段の出力を入力データの所定単位毎に監視し
て、その出力におけるビット量に応じてベクトル量子化
手段の量子化のためのパラメータを制御する制御手段と
を具備するものである。A signal processing apparatus according to the present invention has been proposed to achieve the above-described object. Long encoding means and control means for monitoring the output of the vector quantization means for each predetermined unit of the input data and controlling a parameter for quantization of the vector quantization means according to the bit amount at the output. It is provided.
また、本発明の信号処理方法は、上述の目的を達成す
るために提案されたものであり、入力データをベクトル
量子化し、ベクトル量子化出力を可変長符号化し、ベク
トル量子化出力を入力データの所定単位毎に監視して、
その出力におけるビット量に応じて上記ベクトル量子化
のためのパラメータを制御するものである。The signal processing method of the present invention has been proposed in order to achieve the above-mentioned object, and performs vector quantization of input data, variable-length encoding of vector quantization output, and vector quantization output of input data. Monitor every predetermined unit,
The parameter for vector quantization is controlled according to the bit amount in the output.
ここで、上記ベクトル量子化出力の監視としては、例
えばn個の入力ベクトル(nブロック)を1つの大ブロ
ックとした出力を例えば出力バッファに蓄えることで、
この大ブロックあたりのビット数が所定のビット数範囲
となっているか否かの監視が行われている。Here, as the monitoring of the vector quantization output, for example, an output in which n input vectors (n blocks) are made into one large block is stored in, for example, an output buffer.
It is monitored whether or not the number of bits per large block is within a predetermined bit number range.
本発明によれば、ベクトル量子化手段のベクトル単位
の出力(インデックス、識別コード)を可変長符号化し
ているため、ベクトル量子化手段からのインデックスの
発生確率の偏りを除去して符号化の効率を上げることが
でき、また、所定単位毎のビット量に応じてベクトル量
子化のためのパラメータを制御することにより、可変長
符号化の際にオーバーフロウが発生することを防止でき
る。According to the present invention, since the output (index, identification code) of the vector unit of the vector quantization means is variable-length coded, the bias of the probability of occurrence of the index from the vector quantization means is eliminated to improve the coding efficiency. In addition, by controlling a parameter for vector quantization in accordance with the bit amount of each predetermined unit, it is possible to prevent occurrence of overflow in variable-length encoding.
以下、本発明を適用した実施例について図面を参照し
ながら説明する。Hereinafter, embodiments of the present invention will be described with reference to the drawings.
第1図に本実施例のベクトル量子化器の概略構成例を
示す。FIG. 1 shows a schematic configuration example of the vector quantizer of the present embodiment.
この第1図において、入力端子1を介した例えば音声
信号等の入力データは、複数ワード(複数サンプル)を
1ブロックとした入力ベクトルとされてベクトル量子化
器11でベクトル量子化される。すなわち、該ベクトル量
子化器11には、インデックス(識別コード)に対応付け
られたコードベクトル(代表ベクトル)が記録されてい
るメモリのコードブックがあり、上記入力ベクトルと上
記コードブックにメモリされているコードベクトルとが
例えば距離計算等により比較され、一番距離の近い(一
番類似している)コードベクトルが見出され、そのコー
ドベクトルと対応するインデックスが読み出される。こ
のように入力データのベクトルをベクトル量子化してい
るため、ビット数を低減でき、かつ、入力データの各ワ
ード間の相関が除去されて効率よく量子化できることに
なる。In FIG. 1, input data such as an audio signal via an input terminal 1 is converted into an input vector having a plurality of words (a plurality of samples) as one block, and is vector-quantized by a vector quantizer 11. That is, the vector quantizer 11 has a code book in a memory in which a code vector (representative vector) associated with an index (identification code) is recorded, and is stored in the input vector and the code book. The code vector that is present is compared, for example, by distance calculation or the like, the code vector that is closest (similar) is found, and the index corresponding to the code vector is read. As described above, since the vector of the input data is vector-quantized, the number of bits can be reduced, and the correlation between each word of the input data is removed so that the quantization can be performed efficiently.
更に、本実施例においては、上記ベクトル量子化器11
からのインデックスが、上記可変長符号化手段であるエ
ントロピ符号化器12に供給されていわゆる可変長符号化
がなされることで、あるコードベクトが他のコードベク
トルよりも頻繁に使用されることにより生ずる上記イン
デックスの発生確率の偏りが除かれ、よりいっそう量子
化効率を高めることができる。Further, in the present embodiment, the vector quantizer 11
Is supplied to the entropy encoder 12, which is the variable-length encoding means, and so-called variable-length encoding is performed, whereby a certain code vector is used more frequently than other code vectors. The resulting bias in the occurrence probability of the index is eliminated, and the quantization efficiency can be further increased.
ところで、上述のようなエントロピ符号化の場合は、
後述するように、符号化するデータのオーバーフローが
発生する虞れがある。そのため、本実施例においては、
上記エントロピ符号化器12内の出力バッファ12aに蓄え
られた上記ベクトル量子化器11の出力を監視して、その
出力に応じて上記ベクトル量子化器12の分解能又は量子
化ステップサイズを制御することで、オーバーフローを
無くしている。すなわち、上記エントロピ符号化器12が
監視する上記ベクトル量子化器11の出力とは、後述する
ように、例えばn個の入力ベクトル(nブロック)を1
つの大ブロックとした出力であり、この大ブロックが上
記出力バッファ12aに蓄えられることで、この大ブロッ
クあたりのビット数が所定のビット数範囲となっている
か否かの監視が行われる。この時、オーバーフローとな
った場合すなわち所定ビット数を越えたような場合に、
上記ベクトル量子化器11の分解能又は量子化ステップサ
イズが制御されるようになっている。このようにして符
号化されたデータは出力端子2から出力されている。By the way, in the case of entropy coding as described above,
As described later, there is a possibility that data to be encoded may overflow. Therefore, in this embodiment,
Monitoring the output of the vector quantizer 11 stored in the output buffer 12a in the entropy encoder 12, and controlling the resolution or the quantization step size of the vector quantizer 12 according to the output. And eliminates the overflow. That is, the output of the vector quantizer 11 monitored by the entropy encoder 12 is, for example, n input vectors (n blocks), as described later.
The output is one large block. By storing the large block in the output buffer 12a, it is monitored whether the number of bits per large block is within a predetermined bit number range. At this time, when overflow occurs, that is, when the number of bits exceeds a predetermined number,
The resolution or the quantization step size of the vector quantizer 11 is controlled. The data encoded in this manner is output from the output terminal 2.
ここで、上述のオーバーフローの発生原因及びその対
策としての上記分解能又は量子化ステップサイズの制御
についてエントロピ符号化の説明を交えて以下に述べ
る。Here, the cause of occurrence of the above-mentioned overflow and the control of the resolution or the quantization step size as a countermeasure thereof will be described below together with the description of entropy coding.
上記エントロピ符号化器12で行われる可変長符号化に
おいては、一般に、例えば音声信号等のように、振幅分
布等の符号の発生確率に偏りがある場合、すなわち本実
施例のようにベクトル量子化器11からのインデックスの
発生確率に偏りがある場合、量子化結果の出現頻度に応
じて各ビット長を変えて符号化を施すことで信号のビッ
ト数を減らしている。すなわち、出現頻度の高い符号に
は短い符号を、頻度の低い符号には長い符号を用いれ
ば、平均符号長を短くすることができる。このとき統計
的には、エントロピに応じてビット長を決めるのがよ
く、この符号はエントロピ符号と呼ばれる。当該エント
ロピ符号の具体的アルゴリズムにはいわゆるシャノン−
ファノ符号,ハフマン符号等があり、これらエントロピ
符号は一様量子化と組み合わせると効果が大きく、最も
高いS/Nが得られる。ところで、本実施例において、上
記ベクトル量子化器11のベクトル単位の出力として、例
えば、n個の入力ベクトル(nブロック)を1つの大ブ
ロックとし、各大ブロック毎の伝送レートは一定とす
る。ここで、上記エントロピ符号化器12からの出力は不
等長であるため可変レートとなるが、この時もしもコー
ドエラーが発生してしまったような場合、各大ブロック
毎の伝送レートを一定として、各大ブロック同士の同期
を取らなければ永久にエラー伝播を起こす虞れがある。
そのため、大ブロック毎にリセットが行われる。しか
し、ある大ブロックの信号のエントロピが大きいと、該
大ブロックでのオーバーフローが発生する虞れがある。
すなわち、所定のレートでインデックスを符号化しきれ
なくなる。In the variable-length encoding performed by the entropy encoder 12, generally, when there is a bias in the occurrence probability of a code such as an amplitude distribution such as an audio signal, that is, vector quantization is performed as in the present embodiment. When there is a bias in the probability of occurrence of the index from the unit 11, encoding is performed by changing each bit length according to the frequency of appearance of the quantization result, thereby reducing the number of bits of the signal. That is, if a short code is used for a code with a high appearance frequency and a long code is used for a code with a low frequency, the average code length can be shortened. At this time, statistically, the bit length is preferably determined according to the entropy, and this code is called an entropy code. A specific algorithm of the entropy code is a so-called Shannon-
There are Fano codes, Huffman codes, and the like. These entropy codes have a large effect when combined with uniform quantization, and the highest S / N can be obtained. By the way, in the present embodiment, as the vector unit output of the vector quantizer 11, for example, n input vectors (n blocks) are one large block, and the transmission rate for each large block is constant. Here, the output from the entropy encoder 12 has a variable rate because it has an unequal length, but if a code error occurs at this time, the transmission rate for each large block is made constant. If there is no synchronization between the large blocks, error propagation may occur forever.
Therefore, reset is performed for each large block. However, if the entropy of a signal of a certain large block is large, there is a possibility that an overflow occurs in the large block.
That is, the index cannot be encoded at a predetermined rate.
このようなことから、本発明実施例装置では、前述し
たように、上記エントロピ符号化器12内の出力バッファ
12aとベクトル量子化器11との間で帰還ループを形成
し、このエントロピ符号化器12内の出力バッファ12aで
ベクトル量子化器11のベクトル単位の出力の大ブロック
を監視して、その出力に応じて上記ベクトル量子化器11
の分解能又は量子化ステップサイズを制御することでオ
ーバーフローを防止している。すなわち、当該ベクトル
量子化器11の出力(大ブロック)に、もしもオーバーフ
ローが発生したならば、その大ブロックにおける当該ベ
クトル量子化器11での分解能(ビット/ベクトル)を下
げる。または量子化ステップサイズを上げるようにす
る。この時の上記ベクトル量子化器11の分解能又は量子
化のステップサイズは、1つの大ブロックでは一定と
し、また、この分解能又はステップサイズの変化量は、
オーバーフローの量に比例させることで素早く収束させ
ることができる。なお、アンダフロウが発生するような
場合は、逆に分解能を上げるか、又は、ステップサイズ
を下げることで対応できる。For this reason, in the apparatus according to the present invention, as described above, the output buffer in the entropy encoder 12 is used.
A feedback loop is formed between 12a and the vector quantizer 11, and the output buffer 12a in the entropy encoder 12 monitors a large block of vector unit output of the vector quantizer 11 and outputs the result. According to the above vector quantizer 11
The overflow is prevented by controlling the resolution or the quantization step size. That is, if an overflow occurs in the output (large block) of the vector quantizer 11, the resolution (bit / vector) of the vector quantizer 11 in the large block is reduced. Alternatively, increase the quantization step size. At this time, the resolution of the vector quantizer 11 or the step size of the quantization is fixed in one large block, and the amount of change in the resolution or the step size is:
By making it proportional to the amount of overflow, it is possible to quickly converge. When underflow occurs, the resolution can be increased or the step size can be reduced.
次に、上記ベクトル量子化器11の分解能を可変にする
ための構造について説明する。この場合、当該ベクトル
量子化器11のコードブックを、例えば、2値木構造すな
わちツリー構造とすることで容易に分解能を可変にする
ことができる。Next, a structure for making the resolution of the vector quantizer 11 variable will be described. In this case, the code book of the vector quantizer 11 has, for example, a binary tree structure, that is, a tree structure, so that the resolution can be easily changed.
このツリー構造コードブックを用いたベクトル量子化
においては、コードブックのインデックスを予め2値木
構造化して蓄えておき、その2値木をたどることによっ
て、上記コードベクトルのインデックスが求められる。
例えば、2値木のコードブックの大きさがN=2kr(N,
k,rは0以上の整数)のとき、log2N=kr回の2値決定、
すなわち、N次元空間の逐次分割がなされ、最後の決定
段階で初めて入力ベクトルが2つのコードベクトルと比
較されるものである。ここで、例えば、第2図に示すよ
うな各段の各節点t,t0,〜t111を有する4層の2値木の
場合、入力ベクトルは例えばこの2値木の最初の段の節
点tにおいて、第2段目の節点t0,t1のコードベクトル
と比較(例えば距離計算)される。この時、この入力ベ
クトルと最も類似したコードベクトル(距離の近いコー
ドベクトル)を有する節点が選ばれる。なお、第2図の
例で、上記第2段目のコードベクトルに対応するインデ
ックスは、1ビット/ベクトルで表現されている。この
時例えば接点t0のコードベクトルが選ばれたとすると、
次に、第3段目の節点t00,t01で上記入力ベクトルとこ
れら第3段目の接点t00,t01のコードベクトルが比較さ
れる。なお、第2図の例で、上記第3段目のコードベク
トルに対応するインデックスは、2ビット/ベクトルで
表現されている。同様に、例えば、節点t01が選ばれた
とすると、今度は最終段の第4段目の節点t010,t011の
コードベクトルと入力ベクトルが比較され、最も類似し
た(距離の近い)コードベクトルが選ばれ、そのインデ
ックスが得られる。なお、第2図の例で、上記最終段の
コードベクトルに対応するインデックスは、3ビット/
ベクトルで表現されている。In the vector quantization using the tree structure codebook, the index of the code vector is obtained by storing the index of the codebook in a binary tree structure in advance and tracing the binary tree.
For example, if the size of the codebook of the binary tree is N = 2 kr (N,
When k and r are integers of 0 or more), log 2 N = kr binary decisions,
That is, the N-dimensional space is sequentially divided, and the input vector is compared with the two code vectors only at the final decision stage. Here, for example, in the case of a four-level binary tree having nodes t, t 0 , to t 111 at each stage as shown in FIG. 2, the input vector is, for example, a node at the first stage of the binary tree. At t, it is compared with the code vectors of the nodes t 0 and t 1 in the second stage (for example, distance calculation). At this time, a node having a code vector most similar to the input vector (a code vector with a short distance) is selected. In the example of FIG. 2, the index corresponding to the code vector in the second stage is represented by 1 bit / vector. At this time, for example, if the code vector of the contact point t 0 is selected,
Next, at the third-stage nodes t 00 and t 01 , the input vector is compared with the code vectors of these third-stage nodes t 00 and t 01 . In the example of FIG. 2, the index corresponding to the third-stage code vector is represented by 2 bits / vector. Similarly, for example, when a node t 01 was chosen, this time node t 010, t code vector and the input vector 011 of the fourth stage of the last stage are compared, (close in distance) the most similar code vector Is selected, and its index is obtained. In the example of FIG. 2, the index corresponding to the last-stage code vector is 3 bits /
It is represented by a vector.
すなわち、この2値木符号化の最終段で、入力ベクト
ルに対して3ビット(3ビット/ベクトル)のインデッ
クスが得られ、このインデックスがエントロピ符号化さ
れて各ブロック毎の出力ビイット数は可変となる。That is, at the final stage of the binary tree coding, an index of 3 bits (3 bits / vector) is obtained for the input vector, and this index is entropy-coded and the number of output bits for each block is variable. Become.
このようなエントロピ符号化の出力については、上述
したように、所定数例えばn個のブロックから成る大ブ
ロックのビット数は一定となるようにすることが必要と
されるわけであるが、この所定数のビット数を越えるよ
うな上記大ブロックでのオーバーフローが発生したとす
る。このような時には、インデックスの最下位ビットを
カットして2ビット/ベクトルとし、この2ビット/ベ
クトルに表現されたインデックスをエントロピ符号化す
る。この時、上述のようにインデックスの最下位ビット
をカットして2ビット/ベクトルとしても、ツリー構造
でコードブックが定義されているので、セントロイド
(代表点)の類似関係とインデックスの類似関係を一致
させられる。また、インデックスのデータ長(2ビット
/ベクトル又は3ビット/ベクトル等)によってエント
ロピ符号化器のマッピングを変えても変えなくてもよ
い。例えば、エントロピ符号化器のマッピングを変える
場合は、各々のピットレート(ピット/ベクトル)に応
じてエントロピ符号化器を設計し用意しておく必要があ
る。エントロピ符号化器を変えない時は、例えば2ビッ
ト/ベクトルに丸めたデータの最下位ビット又は最上位
ビットを0づめとし、3ビット/ベクトルのデータであ
るように見せて、エントロピ符号化を行う。この場合
は、3ビット/ベクトルから2ビット/ベクトルへのイ
ンデックスの丸めによって、より発生確率の高いデータ
側へシフトする必要がある。すなわち、このようにしな
いと、エントロピ符号化の結果が短くならないことにな
る。すなわち例えば、3ビットのインデックス“001"を
2ビットに丸めて“00"とした場合、この2ビットのイ
ンデックス“00"によってインデックス“000"のコード
ベクトルが対応付けられるわけであるが、このインデッ
クス“000"の発生確率はインデックス“001"よりも高い
ものとなることが必要とされる。As for the output of such entropy coding, as described above, it is necessary that the number of bits of a large number of blocks, for example, n blocks, be constant. It is assumed that an overflow occurs in the large block exceeding the number of bits. In such a case, the least significant bit of the index is cut into 2 bits / vector, and the index represented by the 2 bits / vector is entropy-encoded. At this time, even if the least significant bit of the index is cut to 2 bits / vector as described above, since the codebook is defined in a tree structure, the similarity between the centroid (representative point) and the index is similar. Matched. The mapping of the entropy encoder may or may not be changed depending on the data length of the index (2 bits / vector or 3 bits / vector, etc.). For example, when changing the mapping of the entropy encoder, it is necessary to design and prepare the entropy encoder according to each pit rate (pit / vector). When the entropy encoder is not changed, for example, the least significant bit or the most significant bit of the data rounded to 2 bits / vector is set to 0, and the data is made to appear as 3 bits / vector data, and entropy encoding is performed. . In this case, it is necessary to shift to a data side with a higher probability of occurrence by rounding the index from 3 bits / vector to 2 bits / vector. That is, otherwise, the result of entropy encoding will not be shortened. That is, for example, when the 3-bit index “001” is rounded to 2 bits to be “00”, the code vector of the index “000” is associated with the 2-bit index “00”. The occurrence probability of “000” is required to be higher than the index “001”.
また、上記ベクトル量子化器11の量子化のステップサ
イズを可変にするための構造について例を挙げる。すな
わち上記可変ステップサイズとする構成は第3図のよう
にすることで実現できる。第3図は、前述の第1図のベ
クトル量子化器11の前にゲイン可変手段10を設けたもの
であり、エントロピ符号化器12内の出力バッフィ12aか
らの出力を当該ゲイン可変手段10にフィードバックする
ことでステップサイズを制御するようにしたものであ
り、他の構成及び動作は第1図と同じであるため第1図
と対応する箇所に同じ指示符号を付して説明を省略す
る。Further, an example of a structure for making the quantization step size of the vector quantizer 11 variable will be described. That is, the configuration with the variable step size can be realized as shown in FIG. FIG. 3 shows that the gain variable means 10 is provided in front of the vector quantizer 11 of FIG. 1 described above, and the output from the output buffer 12a in the entropy encoder 12 is sent to the gain variable means 10. The feedback is used to control the step size. Since other configurations and operations are the same as those in FIG. 1, parts corresponding to those in FIG.
この第3図においては、ベクトル量子化器11の分解能
(ビット/ベクトル)を一定としたまま、ステップサイ
ズを可変とすることでオーバーフローを防止している。
ここで、オーバーフローが発生した場合は、ステップサ
イズが大きくなる方向すなわちゲインが小となる方向へ
上記ゲイン可変手段10が制御される。このようにゲンイ
ンを小さくすることにより、より発生確率の高いすなわ
ち符号長の短いコードが上記エントロピ符号化器12で割
り当てられ、小さいノルムのコードベクトルが頻繁に選
択される。また、アンダフローが発生した場合は、逆に
ステップサイズが小すなわちゲインが大となる方向に該
ゲイン可変手段10が制御される。このように、ゲインを
大きくすると発生確率の低いすなわち符号長の長いコー
ドが割り当てられることになる。なお、ゲインの大きさ
を示すインデックスは別途伝送される。In FIG. 3, an overflow is prevented by changing the step size while keeping the resolution (bit / vector) of the vector quantizer 11 constant.
Here, when an overflow occurs, the gain varying means 10 is controlled in a direction in which the step size increases, that is, in a direction in which the gain decreases. By reducing the gain as described above, a code having a higher occurrence probability, that is, a code having a shorter code length is assigned by the entropy encoder 12, and a code vector having a smaller norm is frequently selected. On the other hand, when an underflow occurs, the gain varying means 10 is controlled in the direction in which the step size is small, that is, the gain is large. As described above, when the gain is increased, a code having a low occurrence probability, that is, a code having a long code length is assigned. The index indicating the magnitude of the gain is transmitted separately.
また、エントロピ符号化には前述したようにハフマン
符号化等が使用できる。As described above, Huffman coding or the like can be used for entropy coding.
上記ハフマン符号化について簡単に説明する。例えば
レベルが8個あり、それぞれの出現確率がわかっている
とすると、先ず、確率の高い順にレベル番号を振り、合
計7つのステップで符号化する。すなわち、確率の最も
低い2つのレベルに番号(0,1)を振り、両者の確率を
合計し、合計した確率を1つのレベルとみなしてもう一
度確率の高い順に並べおなし、最後に(ステップ8)に
各レベルを結ぶ線を逆にたどり、番号(0,1)を拾って
いくことで符号化が行える。The Huffman coding will be briefly described. For example, assuming that there are eight levels and their appearance probabilities are known, first, level numbers are assigned in descending order of probability, and encoding is performed in a total of seven steps. That is, numbers (0, 1) are assigned to the two levels with the lowest probabilities, the probabilities of the two are summed, the summed probabilities are regarded as one level, and they are rearranged again in descending order of the probabilities. The coding can be performed by following the line connecting each level in reverse) and picking up the number (0,1).
このようなハフマン符号化を上述したエントロピ符号
化器12に適用すれば、前述同様の効果を得ることができ
る。If such Huffman coding is applied to the above-described entropy encoder 12, the same effect as described above can be obtained.
本発明においては、ベクトル量子化手段の出力を可変
長符号化手段になり可変長符号化しており、ベクトル量
子化手段のベクトル単位の出力を可変長符号化している
ため、ベクトル量子化手段からのインデックスの発生確
率分布の偏在を除くことができ、したがって、入力デー
タを効率良く量子化することができる。また、ベクトル
量子化出力を入力データの所定単位毎に監視して、その
出力におけるビット量に応じてベクトル量子化のための
パラメータを制御しているため、可変長符号化の際にオ
ーバーフローが発生する虞れがない。In the present invention, the output of the vector quantization means is changed to a variable length coding means and is subjected to variable length coding, and the output of the vector quantization means in variable units is subjected to variable length coding. The uneven distribution of the index occurrence probability distribution can be eliminated, and therefore, the input data can be efficiently quantized. In addition, since the vector quantization output is monitored for each predetermined unit of input data, and a parameter for vector quantization is controlled according to the bit amount in the output, an overflow occurs during variable-length encoding. There is no danger.
第1図は本発明実施例装置の概略構成を示すブロック回
路図、第2図は2値木符号化を説明するための概念図、
第3図はステップサイズ可変の場合の実施例装置の概略
構成を示すブロック回路図である。 10……ゲイン可変手段 11……ベクトル量子化器 12……エントロピ符号化器 12a……出力バッファFIG. 1 is a block circuit diagram showing a schematic configuration of an apparatus according to an embodiment of the present invention, FIG. 2 is a conceptual diagram for explaining binary tree coding,
FIG. 3 is a block circuit diagram showing a schematic configuration of the apparatus of the embodiment when the step size is variable. 10 Gain variable means 11 Vector quantizer 12 Entropy encoder 12a Output buffer
フロントページの続き (72)発明者 藤原 義仁 東京都品川区北品川6丁目7番35号 ソ ニー株式会社内 (72)発明者 阿久根 誠 東京都品川区北品川6丁目7番35号 ソ ニー株式会社内 (56)参考文献 特開 昭64−29121(JP,A) (58)調査した分野(Int.Cl.7,DB名) H03M 7/30 Continued on the front page (72) Inventor Yoshihito Fujiwara 6-7-35 Kita-Shinagawa, Shinagawa-ku, Tokyo Inside Sony Corporation (72) Inventor Makoto Akune 6-35-35 Kita-Shinagawa, Shinagawa-ku, Tokyo Sony Stock In-house (56) References JP-A-64-29121 (JP, A) (58) Fields investigated (Int. Cl. 7 , DB name) H03M 7/30
Claims (2)
量子化手段と、 上記ベクトル量子化手段からの出力を可変長符号化する
可変長符号化手段と、 上記ベクトル量子化手段の出力を上記入力データの所定
単位毎に監視して、その出力におけるビット量に応じて
上記ベクトル量子化手段の量子化のためのパラメータを
制御する制御手段とを具備する ことを特徴とする信号処理装置。1. Vector quantization means for vector-quantizing input data, variable-length coding means for performing variable-length coding on the output from the vector quantization means, and output from the vector quantization means as input data. And a control unit for monitoring a parameter for quantization of the vector quantization unit according to a bit amount in an output of the signal processing unit.
に監視して、その出力におけるビット量に応じて上記ベ
クトル量子化のためのパラメータを制御する ことを特徴とする信号処理方法。2. Vector quantization of input data, variable length coding of the vector quantization output, monitoring of the vector quantization output for each predetermined unit of the input data, and A signal processing method comprising controlling parameters for vector quantization.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1197595A JP3010638B2 (en) | 1989-07-29 | 1989-07-29 | Signal processing device and signal processing method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1197595A JP3010638B2 (en) | 1989-07-29 | 1989-07-29 | Signal processing device and signal processing method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0360531A JPH0360531A (en) | 1991-03-15 |
| JP3010638B2 true JP3010638B2 (en) | 2000-02-21 |
Family
ID=16377101
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1197595A Expired - Lifetime JP3010638B2 (en) | 1989-07-29 | 1989-07-29 | Signal processing device and signal processing method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3010638B2 (en) |
-
1989
- 1989-07-29 JP JP1197595A patent/JP3010638B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0360531A (en) | 1991-03-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5063608A (en) | Adaptive zonal coder | |
| US5510785A (en) | Method of coding a digital signal, method of generating a coding table, coding apparatus and coding method | |
| US6345123B1 (en) | Image encoding/decoding method, image encoder/decoder and image encoding/decoding program recording medium | |
| US5528628A (en) | Apparatus for variable-length coding and variable-length-decoding using a plurality of Huffman coding tables | |
| US5463699A (en) | Data compression | |
| JPH07504546A (en) | Method for encoding image data | |
| KR930024507A (en) | Variable length encoding / decoding method of video data | |
| US5594435A (en) | Permutation-based data compression | |
| EP0715414B1 (en) | Variable-length encoder and decoding system | |
| US6529551B1 (en) | Data efficient quantization table for a digital video signal processor | |
| US20030018647A1 (en) | System and method for data compression using a hybrid coding scheme | |
| JPH02503259A (en) | Apparatus for implementing variable length encoding method and variable length decoding method | |
| CN104156990B (en) | A kind of lossless compression-encoding method and system for supporting super-huge data window | |
| JP7617153B2 (en) | Apparatus for encoding and decoding a sequence of integer values, method for encoding and decoding a sequence of integer values, and computer program for implementing these methods - Patents.com | |
| Gupta et al. | A review on different types of lossless data compression techniques | |
| US6055273A (en) | Data encoding and decoding method and device of a multiple-valued information source | |
| EP2962396A1 (en) | Entropy modifier and method | |
| JP3010638B2 (en) | Signal processing device and signal processing method | |
| Sayood et al. | A differential lossless image compression scheme | |
| Martinez et al. | Marlin: A high throughput variable-to-fixed codec using plurally parsable dictionaries | |
| KR100462789B1 (en) | method and apparatus for multi-symbol data compression using a binary arithmetic coder | |
| JPH06343168A (en) | Digital signal coding method, coding table generation method, coding device, and coding method | |
| US6794999B1 (en) | Resilient parameterized prefix codes for adaptive coding | |
| JP3009993B2 (en) | Huffman decoding device | |
| Lee et al. | Dynamic finite state VQ of colour images using stochastic learning |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071210 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081210 Year of fee payment: 9 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091210 Year of fee payment: 10 |
|
| EXPY | Cancellation because of completion of term | ||
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091210 Year of fee payment: 10 |