JPH0472960A - Picture coding system - Google Patents

Picture coding system

Info

Publication number
JPH0472960A
JPH0472960A JP2184214A JP18421490A JPH0472960A JP H0472960 A JPH0472960 A JP H0472960A JP 2184214 A JP2184214 A JP 2184214A JP 18421490 A JP18421490 A JP 18421490A JP H0472960 A JPH0472960 A JP H0472960A
Authority
JP
Japan
Prior art keywords
circuit
block
memory
transformation
quantization
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.)
Pending
Application number
JP2184214A
Other languages
Japanese (ja)
Inventor
Yuriko Tsukahara
由利子 塚原
Kazuo Ozeki
和夫 大関
Masami Akamine
政巳 赤嶺
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
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2184214A priority Critical patent/JPH0472960A/en
Publication of JPH0472960A publication Critical patent/JPH0472960A/en
Pending legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Dc Digital Transmission (AREA)

Abstract

PURPOSE:To obtain a reproduced picture with high picture quality by discriminating totally a code quantity and picture quality so as to select optimum conversion thereby reducing the code quantity more than that of the adaptive KL conversion coding system employing a variable length code in a conventional system. CONSTITUTION:An input picture is divided into NXN rectangles by a block division circuit 101, a conversion matrix T1 is called by a conversion matrix memory 106, an orthogonal transformation circuit 102 applies orthogonal transformation to the block and a quantization circuit 103 applies quantization to the result. A transformation coefficient quantized is coded by using a coding table 108 at a coding circuit 104, subject to inverse quantity by an inverse quantization circuit 107 and an error calculation circuit 109 calculates a quantization error. The quantization error and the code quantity are fed to an evaluation calculation circuit 110, in which an evaluation value R1 is calculated, Then a matrix T2 is called from the conversion matrix memory 106 to apply similar processing and to calculate the evaluation value R2. In the case of R1>R2, the code and the index stored in the memory 105 and the index memory 112 are replaced into those by the T2.

Description

【発明の詳細な説明】 〔発明の目的〕 (産業上の利用分野) この発明は画像符号化方式に関し、特に適応直交変換お
よび可変長符号化を行なう場合の符号化技術の改良に関
する。
DETAILED DESCRIPTION OF THE INVENTION [Object of the Invention] (Industrial Application Field) The present invention relates to an image encoding system, and particularly to improvements in encoding technology when performing adaptive orthogonal transformation and variable length encoding.

(従来の技術) 一般に、画像を圧縮符号化して伝送する方式において、
入力信号をいくつかの小単位(ブロックという)に分け
た後直交変換を行ない、その変換係数を符号化する方式
を直交変換符号化という。
(Prior art) Generally, in a method for compressing and encoding an image and transmitting it,
The method of dividing an input signal into several small units (called blocks), performing orthogonal transformation, and encoding the transform coefficients is called orthogonal transform encoding.

特に直交変換が入力ソースに適応したものであるときK
L変換(Karhunen−Loevetransfo
rm)と呼ばれる。KL変換の原理を以下に説明する。
In particular, when the orthogonal transformation is one adapted to the input source, K
Karhunen-Loevetransform
rm). The principle of KL conversion will be explained below.

ある入力ブロックのソースから生成される自己相関行列
をRXXと書くとき、これは対称行列であるから、次の
ように正規直交行列と対角行列で表すことができる。
When the autocorrelation matrix generated from the source of a certain input block is written as RXX, this is a symmetric matrix, so it can be expressed as an orthonormal matrix and a diagonal matrix as follows.

ここにTはRXXの固有値に対応する固有ベクトルから
成る正規直交行列であり、e□、・・・e8はRXXの
固有値であってその平均は入力ブロックソースの分散値
に等しい。 ここでe1≧e2≧・・・≧e5とする(
Sはブロックの要素数とする)。Tをこの入力ソースに
対応するKL変換と定義する。
Here, T is an orthonormal matrix consisting of eigenvectors corresponding to eigenvalues of RXX, and e□, . . . e8 are eigenvalues of RXX, the average of which is equal to the variance of the input block source. Here, e1≧e2≧...≧e5 (
S is the number of elements in the block). Define T as the KL transformation corresponding to this input source.

KL変換は原理的に最も効率よい変換方式とされている
が入力ソース毎に求めることは演算景が膨大であり実用
」二難しいため、予め複数個の変換を用意し入力ブロッ
クに応じてこれを切り替える、という方法が一般的であ
る。これは適応KL変換と呼ばれている。第7図にその
適応KL変換の例を示す。これはピクチャーコーティン
グシンポジウムジャパン88(PC8J88.主催;電
子情報通信学会画像工学研究専門委員会、共催;画像電
子学会・テレビジョン学会・画像通信システム研究会、
1988年9月30日〜10月2日開催)「適応KL変
換適応符号化方式J (7−11)に記載されているの
で、入力画像はブロック分割回路74において水平8垂
直8の2次元ブロックに分割され75において各変換T
1.・・・、Tにを用いて量子化・可変長符号化を行っ
た場合の符号量をそれぞれ計算し、その符号量が最小と
なる変換のインデックスiを選ぶ。
KL transformation is said to be the most efficient transformation method in principle, but calculating it for each input source requires a huge amount of calculations and is difficult to implement, so it is necessary to prepare multiple transformations in advance and apply them according to the input block. A common method is to switch. This is called adaptive KL transformation. FIG. 7 shows an example of the adaptive KL transformation. This was organized by the Picture Coating Symposium Japan 88 (PC8J88); co-sponsored by the Image Engineering Research Committee of the Institute of Electronics, Information and Communication Engineers;
As described in ``Adaptive KL Transform Adaptive Coding Method J (7-11) (held from September 30, 1988 to October 2, 1988), the input image is divided into horizontal 8 vertical 8 two-dimensional blocks by the block division circuit 74. is divided into 75 for each transformation T
1. . . , calculate the amount of code when performing quantization and variable length coding using T, and select the index i of the transformation that minimizes the amount of code.

このインデックスiに従い76よりKL変換T工を呼び
出し、直交変換回路77においてTiを用いて直交変換
を行なう。変換されたブロックは全て同一手法で量子化
(78) L、ハフマン符号化(79)を行ない伝送す
る。
According to this index i, the KL transform T process is called from 76, and orthogonal transform circuit 77 performs orthogonal transform using Ti. All the transformed blocks are quantized (78) and Huffman encoded (79) using the same method and then transmitted.

このように入カブロック個々に対する最適な変換を選ぶ
手法には、上記のような符号量を最小とするものの他に
、ブロックの自己相関行列と変換のもとになった自己相
関行列とのユークリッド距離を最小とするもの(例えば
特願昭63−223015号公報)や、復号時の量子化
誤差を最小とするもの(例えは特願昭63−22301
5号公報)等がある。
In this way, methods for selecting the optimal transformation for each input block include, in addition to the method that minimizes the amount of code as described above, the Euclidean method of selecting the autocorrelation matrix of the block and the autocorrelation matrix that is the source of the transformation. Those that minimize the distance (for example, Japanese Patent Application No. 63-223015) and those that minimize the quantization error during decoding (for example, Japanese Patent Application No. 63-22301)
Publication No. 5) etc.

しかしながら、これらの手法では、符号化時の重要な要
件である符号量と量子化誤差の両方を考慮できないため
に、両者のいずれかに対して最適でないKL変換を選択
してしまいその結果として復号画像の品質劣化をまねく
という問題点があった。
However, these methods cannot take into account both the code amount and quantization error, which are important requirements during encoding, and therefore select a KL transform that is not optimal for either of the two, resulting in poor decoding. There was a problem in that the quality of the image deteriorated.

(発明が解決しようとする課題) このように、可変長符号化を用いる適応KL変換符号化
方式において従来は、符号量と画質の両方を考慮した選
択方法でなかったために、最適でない変換を選択する可
能性がありその結果として符号量の増長又は復号画像の
劣化をまねくという問題点があった。
(Problem to be Solved by the Invention) As described above, in the adaptive KL transform coding method using variable length coding, the conventional selection method did not consider both the amount of code and the image quality, so a suboptimal transform was selected. There is a problem that this may result in an increase in the amount of code or deterioration of the decoded image.

本発明は前記問題点を改良すべくなされたもので、入力
ブロックそれぞれについて符号量と量子化誤差の両方を
調べ、ある重みで両者に対する性能を比較し、同じ位の
符号量ならば量子化誤差の少い変換を、また量子化誤差
に差がなければ符号量の少い変換を選択できるようにす
ることにより、符号量と画質の両面について最適化をは
かる符号化方式である。
The present invention was made to improve the above problem, and examines both the code amount and quantization error for each input block, compares the performance for both with a certain weight, and if the code amount is the same, the quantization error This is an encoding method that optimizes both the amount of code and image quality by making it possible to select a conversion with a small amount of code, and a conversion with a small amount of code if there is no difference in quantization error.

〔発明の構成〕[Structure of the invention]

(課題を解決するための手段) 本発明は、符号化時においてブロック毎に適用する直交
変換に用いる複数の直交行列式を選択する際、各直交行
列式を用いた場合の該ブロックの画質を決定する量子化
誤差及びその変換を用いて符号化した場合の該ブロック
の符号量を調べる回路を付加している。これによって直
交行列式を用いた場合の符号量に対する効果と画質に対
する効果を調べ、両者を総合的に評価し直交行列式を選
択する。
(Means for Solving the Problem) When selecting a plurality of orthogonal determinants to be used in orthogonal transformation applied to each block during encoding, the present invention evaluates the image quality of the block when each orthogonal determinant is used. A circuit is added to check the code amount of the block when it is encoded using the determined quantization error and its transformation. Through this, the effect on the amount of code and the effect on image quality when using the orthogonal determinant is investigated, and the orthogonal determinant is selected by comprehensively evaluating both.

(作用) 本発明に係る画像符号化方式では、まず画面を例えば8
 X 8 、16X16等のブロックに分割し、次に各
ブロックを予め用意された直交行列式のそれぞれを用い
て変換する。変換したブロックを量子化し、変換のそれ
ぞれについて量子化誤差を計算する。また量子化したブ
ロックを符号化し、符号量を計算する。量子化誤差と符
号量をある重みで足し合わせ、この値の最も少い変換を
選び、これで符号化したブロックを伝送する。また変換
の番号(インデクス)も別途符号化し伝送する。
(Operation) In the image encoding method according to the present invention, first, the screen is
It is divided into blocks of X 8 , 16X16, etc., and then each block is transformed using each of orthogonal determinants prepared in advance. Quantize the transformed blocks and calculate the quantization error for each transform. It also encodes the quantized block and calculates the amount of code. The quantization error and code amount are added together with a certain weight, the transform with the smallest value is selected, and the block encoded with this is transmitted. The conversion number (index) is also separately encoded and transmitted.

このように符号量と量子化誤差の両面から判断し直交行
列式を選択することによって、従来の選択方法による符
号化方式よりも画質・符号量が総合的に良好な再生画像
を得ることができる。
By selecting an orthogonal determinant based on both the code amount and quantization error, it is possible to obtain a reproduced image with better overall image quality and code amount than the encoding method using the conventional selection method. .

(実施例) 以下、図面を参照して本発明の詳細な説明する。(Example) Hereinafter, the present invention will be described in detail with reference to the drawings.

第1図は本発明の符号化方式が適用された第1の実施例
を示すブロック図である。
FIG. 1 is a block diagram showing a first embodiment to which the encoding method of the present invention is applied.

変換行列Tkk=□l−1に、符号化テーブル、インチ
フス用符号化テーブルは予め作成し変換行列メモリ10
6.符号化テーブルメモリ108.符号化テーブルメモ
リ111に備えておく。 ここでKは変換の数で、例え
ばK = 256とする。第2図は変換行列。
In the transformation matrix Tkk=□l-1, an encoding table and an encoding table for input files are created in advance and stored in the transformation matrix memory 10.
6. Encoding table memory 108. It is prepared in the encoding table memory 111. Here, K is the number of conversions, for example, K = 256. Figure 2 shows the transformation matrix.

符号化テーブル、インデクス用符号化テーブルの一作成
法の概略を示すフローチャートである。または既存の変
換又はテーブルを用いてもよい。なおインデクス用符号
化テーブルは、入力画像の各変換使用頻度より作成する
ことも可能である。この場合は作成したテーブルを受信
側へ伝送する。
3 is a flowchart outlining a method for creating an encoding table and an index encoding table. Alternatively, existing conversions or tables may be used. Note that the index encoding table can also be created based on the frequency of use of each conversion of the input image. In this case, the created table is transmitted to the receiving side.

符号化手順を以下に説明する。入力画像はブロック分割
回路101においてNXNの矩形に分割される。Nは例
えば8とする。次に変換行列メモリ106より変換行列
T1を呼び出し、直交変換回路102において、該ブロ
ックを直交変換し、量子化回路103において量子化を
行なう。量子化は、例えばステップサイズ16の線型量
子化とする。量子化された変換係数は符号化回路104
において符号化テーブル108を用いて符号化するとと
もに、逆量子化回路107において逆量子化し、誤差計
算回路109において量子化誤差を計算する。量子化誤
差と符号量は評価値計算回路110に送られ、ここで次
式を用いた値R1が計算される。
The encoding procedure will be explained below. The input image is divided into NXN rectangles by the block division circuit 101. For example, N is 8. Next, the transformation matrix T1 is called from the transformation matrix memory 106, orthogonal transformation is performed on the block in the orthogonal transformation circuit 102, and quantization is performed in the quantization circuit 103. The quantization is linear quantization with a step size of 16, for example. The quantized transform coefficients are sent to the encoding circuit 104.
, the data is encoded using the encoding table 108 , inverse quantization is performed in the inverse quantization circuit 107 , and a quantization error is calculated in the error calculation circuit 109 . The quantization error and code amount are sent to the evaluation value calculation circuit 110, where a value R1 is calculated using the following equation.

ここでλは重み係数である。例えばλ=0.7とする。Here, λ is a weighting coefficient. For example, let λ=0.7.

ここで量子化誤差≠を羊柑哄書キは一例であって、再生
時の画質を評価できる尺度であれば何でもよい。例えば
視覚特性を考慮して計算した誤差等でもよい。″符号量
”も、伝送時の効率を示すものであれば、例えばエント
ロピー等でも構わない。
Here, quantization error≠ is just an example, and any measure that can evaluate the image quality during playback may be used. For example, it may be an error calculated in consideration of visual characteristics. The "code amount" may also be, for example, entropy, as long as it indicates efficiency during transmission.

符号化されたブロックはメモリ105に、変換のインデ
クス1はインデクスメモリ112に貯える。さらに変換
行列メモリ106よりT2を呼び出して同様な処理を行
ない、R2を計算する。 R□≦R2ならば次なる変換
T3に移り、R1)R2ならばメモリ105とインデク
スメモリ112に貯えられた符号とインデクスをT2に
よるものに書き換え、R1の値をR2の値に換え、次な
る変換T3に移る。以下これを繰り返し、Tにまで行な
った後、メモリ105に貯えられた符号を伝送し、また
インデクスメモリ112に貯えられたインデクスを符号
化テーブル111を用いて符号化、伝送し、次ブロック
の処理に移る。あるいはインデクス用符号化テーブルを
入力画像に合わせて設計する場合は、インデクスの符号
化伝送は入力画像を符号化し終った後になる。
The encoded block is stored in the memory 105 and the index 1 of the transformation is stored in the index memory 112. Further, T2 is called from the transformation matrix memory 106 and similar processing is performed to calculate R2. If R□≦R2, move on to the next conversion T3, and if R1) R2, rewrite the code and index stored in the memory 105 and index memory 112 to those according to T2, change the value of R1 to the value of R2, and perform the next conversion. Moving on to conversion T3. After repeating this process up to T, the code stored in the memory 105 is transmitted, the index stored in the index memory 112 is encoded and transmitted using the encoding table 111, and the next block is processed. Move to. Alternatively, if the index encoding table is designed according to the input image, the index is encoded and transmitted after the input image has been encoded.

復号化手順を以下に説明する。受信した符号は、復号化
回路114において符号化テーブル118を用いて復号
化される。符号化テーブル118は符号化テーブル10
8と同一である。さらに逆量子化回路115において逆
量子化し、逆変換回路116において、別途受信したイ
ンデクスの符号■を符号化テーブル119を用いて復号
化回路121において復号化した値iを用いて変換行列
メモリ120より変換T1を呼び出して逆変換を行ない
、 ブロック合成回路117において画像に復元し出力
する。ここに符号化テーブル119は符号化テーブル1
11と同一である。変換行列メモリ120は変換行列メ
モリ106と同一である。
The decoding procedure will be explained below. The received code is decoded in decoding circuit 114 using encoding table 118 . The encoding table 118 is the encoding table 10
Same as 8. Furthermore, the inverse quantization circuit 115 dequantizes the code, and the inverse transformation circuit 116 converts the separately received index code ■ into the transformation matrix memory 120 using the value i decoded in the decoding circuit 121 using the encoding table 119. The transformation T1 is called to perform inverse transformation, and the block composition circuit 117 restores the image to an output. Here, the encoding table 119 is encoding table 1.
It is the same as 11. Transformation matrix memory 120 is identical to transformation matrix memory 106.

なおKL変換作成の理論、ハフマン符号作成の理論につ
いては、例えば「画像のディジタル信号処理」吹抜敬彦
著9日刊工業新聞社刊に記載されているように周知であ
る。
The theory of creating KL transformations and the theory of creating Huffman codes are well known, for example, as described in "Digital Signal Processing of Images" by Takahiko Fukinuki, published by Nikkan Kogyo Shinbunsha.

量子器のステップサイズは、入力画像の性質を調べ、情
報量の多少により変えることもできる。
The step size of the quantum machine can be changed depending on the amount of information by examining the properties of the input image.

この場合はステップサイズを受信側へ付加情報として伝
送する必要がある。量子化器は線型量子化でなくてもよ
く、また全ての変換係数について同じステップサイズを
用いる必要もなく、例えば低域の係数のステップサイズ
は16よりも小さく、高域は16よりも大きく設定する
こともできる。
In this case, it is necessary to transmit the step size to the receiving side as additional information. The quantizer does not have to be a linear quantizer, nor does it need to use the same step size for all transform coefficients; for example, the step size for low-frequency coefficients can be set smaller than 16, and the step size for high-frequency coefficients can be set larger than 16. You can also.

第3図は本発明の符号化方式が適用された第2の実施例
を示すブロック図である。
FIG. 3 is a block diagram showing a second embodiment to which the encoding method of the present invention is applied.

第3図において301〜321は第1図の101〜12
1と同じ機能である。量子化器Qi(j=1.・・・、
L)は複数、例えば4個設定し量子化器メモリ322に
予め備えておく。
In Figure 3, 301 to 321 are 101 to 12 in Figure 1.
It has the same function as 1. Quantizer Qi (j=1...,
L) is set in plurality, for example, four, and is stored in the quantizer memory 322 in advance.

符号化手順を以下に説明する。入力画像はブロック分割
回路301 においてNXNの矩形に分割される。Nは
例えば8とする。次に量子化器選択回路323において
、ブロックの情報量の多少を表す量、例えばブロック内
分散値が計算され、この値によって該ブロックを量子化
する量子化器が選ばれる。例えば量子化器Q□、・・・
l Q 4として、量子化ステップサイズ8 、16.
32.64の線型量子化器を備えている場合、該ブロッ
クの分散値がO〜1000ならばQ、、1.001〜2
000ならばQ2.2001〜3000ならばQ3.3
001以上ならばQ4を選ぶ。選ばれた量子化器のイン
デクスJは、2 bitで伝送する。さらにインデクス
に従い量子化器メモリ322より量子化器を呼び出し、
これを量子化器303における量子化の際使用する。量
子化器を選択した後、変換行列メモリ306より変換を
順次呼び出し、最適な変換を選び符号化伝送する。この
手順は第1の実施例と同じであるので説明を省略する。
The encoding procedure will be explained below. The input image is divided into NXN rectangles by a block division circuit 301. For example, N is 8. Next, in the quantizer selection circuit 323, a quantity representing the amount of information of the block, for example, an intra-block variance value, is calculated, and a quantizer for quantizing the block is selected based on this value. For example, quantizer Q□,...
l Q 4, quantization step size 8, 16 .
32.64 linear quantizer, if the variance value of the block is O~1000, then Q,,1.001~2
If it is 000 then Q2. If it is 2001~3000 then Q3.3
If it is 001 or more, select Q4. The index J of the selected quantizer is transmitted in 2 bits. Further, a quantizer is called from the quantizer memory 322 according to the index,
This is used during quantization in the quantizer 303. After selecting a quantizer, the transforms are sequentially retrieved from the transform matrix memory 306, and the optimal transform is selected and encoded and transmitted. This procedure is the same as the first embodiment, so the explanation will be omitted.

復号化の手順を以下に説明する。量子化器メモリ324
は322と同一である。受信した量子化器インデクスの
値Jは量子化器メモリ324へ送られ、量子化器Q、y
を呼び出し、QJを逆量子化回路315における逆量子
化の際使用する。その他の復号化手順については第1の
実施例と同じであるので説明を省略する。
The decoding procedure will be explained below. Quantizer memory 324
is the same as 322. The received quantizer index value J is sent to the quantizer memory 324, and the quantizer Q, y
is called, and QJ is used during inverse quantization in the inverse quantization circuit 315. The rest of the decoding procedure is the same as in the first embodiment, so a description thereof will be omitted.

このように量子化器選択回路を加えることにより、ブロ
ックの情報量に応じた量子化を行なうことが可能である
By adding a quantizer selection circuit in this manner, it is possible to perform quantization according to the information amount of the block.

なお、量子化器は変換係数すべてに対し同一のステップ
サイズである必要はなく、低域の係数には小さいステッ
プサイズ、高域には大きいステップサイズというように
変化させてもよい。また非線型量子化器を用いることも
可能である。
Note that the quantizer does not need to use the same step size for all transform coefficients, and may vary, such as using a small step size for low-frequency coefficients and a large step size for high-frequency coefficients. It is also possible to use a nonlinear quantizer.

第4図は本発明の符号化方式が適用された第3の実施例
を示すブロック図である。
FIG. 4 is a block diagram showing a third embodiment to which the encoding method of the present invention is applied.

第4図において401〜421は第1図の101〜12
1と同じ機能である。量子化器Qj je□+−+Lは
例えば3個(L=3)設定し量子化器メモリ422に予
め備えておく。
In Figure 4, 401 to 421 are 101 to 12 in Figure 1.
It has the same function as 1. For example, three quantizers Qj je□+-+L (L=3) are set and stored in the quantizer memory 422 in advance.

符号化手順を以下に説明する。入力画像はブロック分割
回路401においてNXNの矩形に分割されるNは例え
ば8とする。次に第1の実施例と同様に、変換行列メモ
リ406より変換を順次呼び出し、直交変換回路402
において直交変換を行なう。
The encoding procedure will be explained below. The input image is divided into N×N rectangles by the block dividing circuit 401.N is, for example, 8. Next, similarly to the first embodiment, the transformations are sequentially recalled from the transformation matrix memory 406, and the orthogonal transformation circuit 402
Perform orthogonal transformation at .

ここで、現変換T工のインデクスiを量子化器選択回路
423へ送る。ここにはまた、前ブロックの量子化され
た係数が記憶されており、現変換のインデクスと前ブロ
ックの係数をもとに、該ブロックの現変換での量子化器
が選択される。例えば、量子化器Q、、Q2.Q3とし
て量子化ステップサイX8.16.32の線型量子化器
を備えている場合、■現変換のインデクスが1の場合Q
1 ■現変換のインデクスが1でなく、前ブロックの非ゼロ
係数が2個以下の場合Q2 ■現変換のインデクスが1でなく、前ブロックの非ゼロ
係数が3個以上の場合Q3 のように量子化器を選ぶ。選ばれた量子化器は量子化器
メモリ422より呼び出され量子化器463における量
子化の際使用される。その他の符号化手順は第1の実施
例と同じであるので説明を省略する。
Here, the index i of the current transformation T is sent to the quantizer selection circuit 423. The quantized coefficients of the previous block are also stored here, and the quantizer for the current transformation of the block is selected based on the index of the current transformation and the coefficients of the previous block. For example, quantizers Q, , Q2 . If Q3 is equipped with a linear quantizer with a quantization step size of X8.16.32, ■ If the index of the current transformation is 1, Q
1 ■ If the index of the current transformation is not 1 and the number of non-zero coefficients in the previous block is 2 or less Q2 ■ If the index of the current transformation is not 1 and the number of non-zero coefficients in the previous block is 3 or more Q3 Choose a quantizer. The selected quantizer is called from the quantizer memory 422 and used during quantization in the quantizer 463. The rest of the encoding procedure is the same as in the first embodiment, so a description thereof will be omitted.

復号化手順を以下に説明する。量子化器選択回路425
は423と同一であって、前ブロックの量子化された係
数値を記憶している。これに復号化された変換のインデ
クスを加え、符号化時と同様に量子化器を選択する。量
子化器メモリ424は422と同一であって、選択され
た量子化器はここから呼び出され逆量子化回路415に
おける逆量子化の際使用される。その他の復号化手順は
第1の実施例と同じであるので説明を省略する。
The decoding procedure will be explained below. Quantizer selection circuit 425
is the same as 423 and stores the quantized coefficient value of the previous block. The index of the decoded transformation is added to this, and a quantizer is selected in the same way as during encoding. The quantizer memory 424 is identical to 422, from which the selected quantizer is called and used during dequantization in the dequantization circuit 415. The rest of the decoding procedure is the same as in the first embodiment, so a description thereof will be omitted.

このように量子化器を選択することにより、使用する変
換に応じであるいは前符号化結果を参考にして、量子化
を変えることができる。量子化器選択の際必要な情報は
、現変換のインデクスのみでもよいし、前ブロックに限
らず過去のブロックの符号化結果を使用してもよい。こ
れらの情報を使用することにより、付加情報を増やすこ
となく量子化手法を変えることができる。
By selecting a quantizer in this manner, quantization can be changed depending on the transform used or with reference to the pre-encoding result. The information required when selecting a quantizer may be only the index of the current transform, or may use the encoding results of not only the previous block but also past blocks. By using this information, the quantization method can be changed without increasing additional information.

第5図は本発明の符号化方式が適用された第4の実施例
を示すブロック図である。
FIG. 5 is a block diagram showing a fourth embodiment to which the encoding method of the present invention is applied.

第5図において501〜521は第1図の101〜12
1と同じ機能である。量子化器Q J+ j =□1−
ILは例えば3個(L=3)設定し量子化器メモリ52
2に予め備えておく。
In Figure 5, 501 to 521 are 101 to 12 in Figure 1.
It has the same function as 1. Quantizer Q J+ j =□1−
For example, three ILs (L=3) are set and the quantizer memory 52
Prepare in advance for step 2.

符号化手順を以下に説明する。入力画像は第1の実施例
と同様にブロック分割され、変換行列メモリ506より
変換を順次呼び出し直交変換を行なう。ここで、現変換
T工のインデクスiを量子化器選択回路523へ送る。
The encoding procedure will be explained below. The input image is divided into blocks as in the first embodiment, and orthogonal transformation is performed by sequentially recalling transformations from the transformation matrix memory 506. Here, the index i of the current transformation T is sent to the quantizer selection circuit 523.

523にはまた、前ブロック即ち、既に符号化された左
隣りや直上のブロックにおいて選択された変換のインデ
クスが記憶されており、現変換のインデクスと前ブロッ
クのインデクスをもとに、該ブロックの現変換での量子
化器が選択される。例えば、量子化器Q1.Q2.Q3
として量子化ステップサイズ8 、16.32の線型量
子化器を備えている場合、 ■現変換のインデクスが1の場合Q1 ■現変換のインデクスが1でなく、前ブロックのインデ
クスのいずれかが1の場合Q2■現変換のインデクスが
1でなく、前ブロックのインデクスのいずれも1でない
場合Q3のように量子化器を選ぶ。その他の符号化手順
は第3の実施例と同じであるので説明を省略する。
523 also stores the index of the transformation selected in the previous block, that is, the block to the left or immediately above that has already been encoded, and based on the index of the current transformation and the index of the previous block, the index of the transformation of the block is stored. The quantizer for the current transform is selected. For example, quantizer Q1. Q2. Q3
If a linear quantizer with a quantization step size of 8 and 16.32 is provided, ■If the index of the current transform is 1, then Q1. ■If the index of the current transform is not 1 and any of the indices of the previous block is 1. In the case of Q2 ■ If the index of the current transformation is not 1 and none of the indices of the previous block is 1, select a quantizer as in Q3. The rest of the encoding procedure is the same as in the third embodiment, so a description thereof will be omitted.

復号化手順を以下に説明する。量子化器選択回路525
は523と同一であって、前ブロックの変換インデクス
を記憶している。これに復号化された該ブロックのイン
デクスを加え、符号化時と同様に量子化器を選択する。
The decoding procedure will be explained below. Quantizer selection circuit 525
is the same as 523 and stores the conversion index of the previous block. The index of the decoded block is added to this, and a quantizer is selected in the same way as during encoding.

その他の復号化手順は第3の実施例と同じである。Other decoding procedures are the same as in the third embodiment.

第6図は本発明の符号化方式が適用された第5の実施例
を示すブロック図である。
FIG. 6 is a block diagram showing a fifth embodiment to which the encoding method of the present invention is applied.

変換行列T k k=1+−+に、符号化テーブル、イ
ンデクス符号化テーブルは予め作成し変換行列メモリ6
10 、符号化テーブルメモリ604.符号化テーブル
メモリ615に備えておく。ここでKは変換の数で例え
ばに=256とする。変換行列、符号化テーブル、イン
デクス用符号化テーブルは第1の実施例と同様に準備で
きる。
For the transformation matrix T k k=1+-+, an encoding table and an index encoding table are created in advance and stored in the transformation matrix memory 6.
10, encoding table memory 604. The encoding table memory 615 is prepared. Here, K is the number of conversions, for example, =256. The transformation matrix, encoding table, and index encoding table can be prepared in the same manner as in the first embodiment.

符号化手順を以下に説明する。入力画像はブロック分割
回路601においてNXNの矩形に分割される。N=8
とする。ブロックは順次フレームメモリ605に貯えら
れるとともに、情報量計算回路602において、該ブロ
ックのもつ情報量を表す量、例えばブロック内分散値が
計算される。このようにして全てのブロックについて情
報量が計算された後、各ブロックに対する予定ビット配
分量が決定される。これは例えば、ブロックの総数をM
The encoding procedure will be explained below. The input image is divided into NXN rectangles by a block division circuit 601. N=8
shall be. The blocks are sequentially stored in the frame memory 605, and the information amount calculation circuit 602 calculates a quantity representing the amount of information of the block, for example, an intra-block variance value. After the amount of information has been calculated for all blocks in this way, the planned bit allocation amount for each block is determined. This means, for example, that the total number of blocks is M
.

情報量をσJ k=1+−++4+予定総符号量をX、
予定ビット配分量をXJJ=□r−+ Mとするとき、
のように定める。ここにX’/M は予め配分しておく
量で、どのブロックにも必ず必要な(1,1)成分のた
めの符号やE OB (end of block)符
号のために一定量を与える。 X’/Mは例えば、10
bitとする。
The information amount is σJ k=1+-++4+planned total code amount is X,
When the planned bit allocation amount is XJJ=□r−+M,
Define as follows. Here, X'/M is an amount allocated in advance, and a fixed amount is given for the code for the (1, 1) component and the E OB (end of block) code that are absolutely necessary for every block. For example, X'/M is 10
Bit.

このように定められた各ブロックの予定ビット配分量は
、ピッ1ル配分量メモリ603に貯えられる。
The planned bit allocation amount for each block determined in this way is stored in the pill allocation amount memory 603.

予定ビット配分が定まった後、フレームメモリブロック
を順次呼び出し、変換行列メモリ610よりまず変換T
1を呼び出し、直交変換回路606において直交変換を
行なう。次に量子化回路607において量子化を行なう
。量子化器は例えば、量子化ステップサイズ16の線型
量子化とする。なおこの量子化器は、第2乃至4の実施
例のようにして複数の中から切り替えることも可能であ
る。量子化された変換係数は、符号化回路608におい
て符号化デープル604を参照し、符号化される。この
とき該ブロックの符号量が、ビット配分量メモリ603
より呼び出された該ブロックの予定ビット配分量に前記
符号化時の余剰ビット量を足したものを超える場合には
、量子化された変換係数は有意係数削減回路611へ送
られ、ここで有意係数即ち非ゼロの係数が1個、ゼロに
変えられる。非ゼロ係数は例えば最も高周波の非ゼロ係
数、又は最も絶対値の小さい非ゼロ係数を選べばよい。
After the planned bit allocation is determined, the frame memory blocks are sequentially called and the transformation T is first read from the transformation matrix memory 610.
1 and performs orthogonal transformation in orthogonal transformation circuit 606. Next, quantization is performed in a quantization circuit 607. The quantizer is, for example, linear quantizer with a quantization step size of 16. Note that this quantizer can also be switched from among a plurality of quantizers as in the second to fourth embodiments. The quantized transform coefficients are encoded in the encoding circuit 608 with reference to the encoded daple 604 . At this time, the code amount of the block is determined by the bit allocation amount memory 603.
If it exceeds the planned bit allocation amount of the block called out by adding the surplus bit amount at the time of encoding, the quantized transform coefficient is sent to the significant coefficient reduction circuit 611, where the significant coefficient That is, one non-zero coefficient is changed to zero. For example, the non-zero coefficient with the highest frequency or the non-zero coefficient with the smallest absolute value may be selected as the non-zero coefficient.

このように有意係数を削減した後、再び符号化回路60
8において符号化し符号量が予定ビット配分量に前記符
号化時の余剰ビット量を足した量以下となるまで削減を
繰り返す。符号量が予定ビット配分量以下となった場合
には、逆量子化回路612において変換係数の逆量子化
を行ない、誤差計算回路614において該ブロックの量
子化誤差を計算する。
After reducing the significant coefficients in this way, the encoding circuit 60
8, the reduction is repeated until the code amount becomes equal to or less than the sum of the planned bit allocation amount and the surplus bit amount at the time of encoding. When the code amount is less than the planned bit allocation amount, the dequantization circuit 612 performs dequantization of the transform coefficient, and the error calculation circuit 614 calculates the quantization error of the block.

量子化誤差は評価値計算回路613に送られ、符号量と
ともに(1)式を用いてR1がR1算される。
The quantization error is sent to the evaluation value calculation circuit 613, and R1 is calculated using equation (1) together with the code amount.

なお符号量と予定ビット配分量に前符号化時の余剰ビッ
ト量を足した量との差は、余剰ビット量として符号化回
路608内に保存される。
Note that the difference between the code amount and the amount obtained by adding the surplus bit amount at the time of previous encoding to the planned bit allocation amount is stored in the encoding circuit 608 as the surplus bit amount.

符号化されたブロックはメモリ609に、変換のインデ
クス1はインデクスメモリ616に貯える。
The encoded block is stored in the memory 609 and the index 1 of the transformation is stored in the index memory 616.

次に変換行列メモリ610よりT2を呼び出して同様な
処理を行ない、R2を得る。以下の処理は第1の実施例
と同じであるので説明を省略する。
Next, T2 is called from the transformation matrix memory 610 and similar processing is performed to obtain R2. The following processing is the same as that in the first embodiment, so the explanation will be omitted.

復号化手順は第1の実施例と同じであるので説明を省略
する。
The decoding procedure is the same as in the first embodiment, so its explanation will be omitted.

このように予め各ブロックに割りあてるビット配分量を
定めることにより、予定総符号量を超えることのない固
定レート符号化ができる。
By determining the bit allocation amount to be allocated to each block in advance in this way, fixed rate encoding can be performed without exceeding the planned total code amount.

なお以上の実施例において、変換係数の符号化回路は変
換のインデクスに依存しない形で書かれているが、これ
を変換のインデクスに応じ切り替えることもできる。ま
た変換のインデクス以外の情報により切り替えることも
可能である。この場合は符号化方法の付加情報が必要で
ある。
In the above embodiments, the transform coefficient encoding circuit is written in a manner that does not depend on the transform index, but it can also be switched depending on the transform index. It is also possible to switch based on information other than the conversion index. In this case, additional information about the encoding method is required.

〔発明の効果〕〔Effect of the invention〕

以上説明してきたように、この発明による画像符号化方
式であれば、符号量と画質とを総合的に判断し最適な変
換を選ぶことができるので、従来の可変長符号を用いる
適応KL変換符号化方式よりも符号量を削減できまた高
画質の再生画像を得ることができる。
As explained above, with the image encoding method according to the present invention, it is possible to comprehensively judge the code amount and image quality and select the optimal transformation. It is possible to reduce the amount of code compared to the encoding method, and to obtain high-quality reproduced images.

化方式に係る第1.2,3,4.5の実施例を示すブロ
ック図、第2図は第1の実施例における変換行列、符号
化テーブル、インデクス用符号化テーブルを作成する例
を示したフローチャート、第7図は従来の画像符号化方
式を説明するためのブロック図である。
FIG. 2 is a block diagram showing embodiments 1.2, 3, and 4.5 related to the encoding method, and FIG. 2 shows an example of creating a transformation matrix, encoding table, and index encoding table in the first embodiment. FIG. 7 is a block diagram for explaining the conventional image encoding method.

代理人 弁理士 則 近 憲 佑Agent: Patent Attorney Noriyuki Chika

Claims (1)

【特許請求の範囲】[Claims] (1)画像をブロックに分割して直交変換を行なった後
可変符号化する画像符号化方式において、前記直交変換
に用いる直交行列式を予め複数用意し、各直交行列式を
用いて直行変換及び符号化を行なう際の符号量と画質を
調べる手段を有し、この手段による符号量及び画質にも
とづいて前記直行行列式を選択することを特徴とする画
像符号化方式。
(1) In an image encoding method in which an image is divided into blocks and subjected to orthogonal transformation and then variable encoded, a plurality of orthogonal determinants used in the orthogonal transformation are prepared in advance, and each orthogonal determinant is used to perform orthogonal transformation and An image encoding system characterized in that it has means for checking the code amount and image quality during encoding, and selects the orthogonal determinant based on the code amount and image quality determined by the means.
JP2184214A 1990-07-13 1990-07-13 Picture coding system Pending JPH0472960A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2184214A JPH0472960A (en) 1990-07-13 1990-07-13 Picture coding system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2184214A JPH0472960A (en) 1990-07-13 1990-07-13 Picture coding system

Publications (1)

Publication Number Publication Date
JPH0472960A true JPH0472960A (en) 1992-03-06

Family

ID=16149365

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2184214A Pending JPH0472960A (en) 1990-07-13 1990-07-13 Picture coding system

Country Status (1)

Country Link
JP (1) JPH0472960A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002084886A1 (en) * 2001-04-09 2002-10-24 Ntt Docomo, Inc. Signal encoding method and apparatus and decoding method and apparatus
JP2005176361A (en) * 2003-12-05 2005-06-30 Samsung Electronics Co Ltd Color transformation method and apparatus

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002084886A1 (en) * 2001-04-09 2002-10-24 Ntt Docomo, Inc. Signal encoding method and apparatus and decoding method and apparatus
US7242814B2 (en) 2001-04-09 2007-07-10 Ntt Docomo, Inc. Signal encoding method and apparatus and decoding method and apparatus
US8098940B2 (en) 2001-04-09 2012-01-17 Ntt Docomo, Inc. Method of and apparatus for encoding signals, and method of and apparatus for decoding the encoded signals
JP2005176361A (en) * 2003-12-05 2005-06-30 Samsung Electronics Co Ltd Color transformation method and apparatus
US7738697B2 (en) 2003-12-05 2010-06-15 Samsung Electronics Co., Ltd. Color transformation method and apparatus with minimized transformation errors

Similar Documents

Publication Publication Date Title
US10045034B2 (en) System and method for using pattern vectors for video and image coding and decoding
US6556624B1 (en) Method and apparatus for accomplishing multiple description coding for video
KR100788220B1 (en) Quality based image compression
JP3868014B2 (en) Video signal encoding method and apparatus
In et al. On RD optimized progressive image coding using JPEG
JPH0472960A (en) Picture coding system
Jafarkhani et al. Adaptive image coding using spectral classification
Bellifemine et al. Video signal coding with DCT and vector quantization
JP2762712B2 (en) Encoding device and decoding device
Oehler et al. Unbalanced tree-growing algorithms for practical image compression
JPH07255054A (en) Image encoding device
Liang et al. Comparison between adaptive search and bit allocation algorithms for image compression using vector quantization
JP3216741B2 (en) Image coding method
KR970009387A (en) Image Coding System Using Adaptive Vector Quantization
KR100923029B1 (en) Recompression method for video frame
JPS63103583A (en) System and equipment for coding and decoding picture signal
Al-Asmari Video compression using a semi-hexagonal shaped absolute moment block truncation coding
Ebtesam Interframe compression using Adaptive Discrete Cosine Transform (ADCT)
JPS63274280A (en) System and device for encoding and decoding picture signal
JPS63246089A (en) Coding and decoding system for picture signal and its device
JPH01146483A (en) Converted vector quantizer for picture signal
JPH0767108A (en) Encoder and decoder