JPH0352712B2 - - Google Patents

Info

Publication number
JPH0352712B2
JPH0352712B2 JP57170748A JP17074882A JPH0352712B2 JP H0352712 B2 JPH0352712 B2 JP H0352712B2 JP 57170748 A JP57170748 A JP 57170748A JP 17074882 A JP17074882 A JP 17074882A JP H0352712 B2 JPH0352712 B2 JP H0352712B2
Authority
JP
Japan
Prior art keywords
quantization
sequence
buffer memory
input
bit length
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP57170748A
Other languages
Japanese (ja)
Other versions
JPS5961279A (en
Inventor
Sumio Mori
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.)
Fujifilm Holdings Corp
Original Assignee
Fuji Photo Film Co Ltd
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 Fuji Photo Film Co Ltd filed Critical Fuji Photo Film Co Ltd
Priority to JP57170748A priority Critical patent/JPS5961279A/en
Publication of JPS5961279A publication Critical patent/JPS5961279A/en
Publication of JPH0352712B2 publication Critical patent/JPH0352712B2/ja
Granted legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/40Picture signal circuits

Description

【発明の詳細な説明】[Detailed description of the invention]

この発明は、画像の狭帯域伝送又は蓄積を目的
とした符号化において、特に高能率な符号化を行
なうための可変長符号を採用する際に生じる圧縮
率の変動を量子化によつて安定化する量子化方式
に関する。 画像信号が持つている統計的性質から、冗長信
号を除くことによつて伝送容量を節約すること、
つまり帯域圧縮が可能であることは良く知られて
いる。そして、画像信号は隣接する画素間で空間
的送関が強いことを利用して、何らかの変換を施
すことにより画像に偏りを持たせることができる
ならば、高能率な符号化が可能となる。ここに、
画像に偏りを持たせる変換方式としては、線形予
測変換方式及び直交変換方式が広く知られてい
る。線形予測変換方式は、いわゆるDPCM
(Differential Pulse Code Modulation)と称さ
れるもので画素を予測し、その予測誤差が統計的
な偏りを持つことを利用しており、直交変換方式
は、画像を空間周波数領域へ変換したとき、その
出力である各周波数成分のスペクトラムに偏りが
あることを利用したものである。 一方、高能率な符号化を行なうためには、一般
的にこれら変換成分に対して視覚的に許容される
範囲で歪を与えるようにしているが、更にこれら
変換成分の確率分布に偏りがある場合、エントロ
ピーを小さくすることができることを利用し、可
変長符号を与えることが有効であることが知られ
ている。しかしながら、この統計的偏りは画像に
よつてかなり異なるものであり、滑らかな画像は
偏りが大きく、複雑な画像はバラツキが大きいと
いう性質があり、画像の入力速度及び出力速度が
一定の場合、これに可変長符号を与えると時間軸
に変動が生じてしまう問題がある。この時間軸の
変動を補正するために、従来は大きなバツフアメ
モリを必要としていた。この発明は上述の如き点
に鑑み、量子化特性を制御して圧縮率の変動を安
定化させ、バツフアメモリの容量を小さくする量
子化方式を提供することを目的とするものであ
る。 以下にこの発明を説明する。 この発明は画像信号の量子化方式に関するもの
であり、入力画像を画素群m(1、2)×n(≧2)
で成る互いに隣接したブロツク群に分割し、各ブ
ロツク内の画素群をアダマール変換によつて周波
数領域のシーケンスに変換して後に複数の量子化
特性のうち現在選択されている量子化特性を用い
て量子化し、このシーケンス量子化値のうちの少
なくとも直流成分を線形予測して予測誤差成分の
量子化値に変換すると共に、シーケンス量子化値
を互いに比較することによりその組合せを複数個
形成し、これら各組合せに対応して各シーケンス
量子化値を可変長符号化してバツフアメモリに記
憶し、メモリから一定ビツトレートで読出して出
力すると共に、メモリ内の符号量に応じて次ブロ
ツクラインに対する量子化特性を選択するように
したものである。 まず、この発明方式を適用することができる画
像信号の符号化方法を説明する。 第1図は画像を2×2のブロツクBij(i=1、
2、…、j=1、2、…)に分割した場合の様子
を示すものであり、画素1は走査ラインh、h+
1…で順次走査されるようになつている。なお、
i、(i+1)、…をブロツクラインとする。そし
て、ブロツクBijの画素1に対する画素信号(濃
度信号)を図示の如くx1,x2,x3,x4とすれば、
正規化されたアダマール変換は2次又は4次のア
ダマール行列を用いて次の(1)式のように表わすこ
とができる。 1/21 1 1−1x1 x2 x3 x41 1 1−1 =1/21 1 1 1 1−1 1−1 1 1−1−1 1−1−1 1x1 x2 x3 x4=H0 H1 H2 H3 ……(1) ここにおいて、シーケンスH0、H1、H2、H3
はそれぞれアダマール変換によつて周波数領域へ
変換された4次の周波数成分に対応し、H0は直
流成分を、H1は垂直成分を、H2は水平成分を、
H3は傾斜成分をそれぞれ示している。 ところで、一般的な画像では隣接する画素間の
相関が強いため、低次成分のエネルギーが高く、
高次成分のエネルギーが低く観測される。そし
て、各成分はそのエネルギーの大きさに応じた量
子化レベルのビツト数の配分を受けることになる
が、直流成分のエネルギーは他の成分(垂直、水
平、傾斜)に比べて特に大きいので、直流成分の
エネルギーを低くするような変換手法を採用する
ことによつて、高能率な符号化を実現する必要が
ある。このような変換手法として、アダマール変
換によつて得られた各シーケンスを線形予測する
方式が知られている。 次に、この線形予測方式を説明する。 線形予測方式はブロツクサイズが1×n又は2
×nのときに可能なものであり、今、ブロツクサ
イズが第2図に示すように2×nの例として、先
ず水平方向に各ブロツク毎にアダマール変換を施
し、その後に垂直方向に各ブロツク毎に線形予測
する場合を考える。そして、アダマール変換によ
つて得られた各シーケンスをHl0、Hl1とし、便
宜上第2図のように配置する。ただしl=0、
1、…、(n−1)である。 そして、ブロツクBi-1、jにおけるシーケンス
Hl0′からブロツクBijにおけるシーケンスHl0を、
次の(2)式に従つて予測する。 Hl^0=Hl0′−Hl1′−Hl1 ……(2) このときの予測誤差成分 ΔHl0を ΔHl0=Hl0−Hl^0 =Hl0−Hl0′+Hl1′+Hl1 ……(3) とすれば、この予測誤差成分ΔHl0はブロツク間
の各画素の距離を最も短かくするものである。な
お、シーケンスHl1は予測することなくそのまま
伝送する。 ここで、アダマール変換によつて得た各シーケ
ンスを線形予測した場合の効果を示すために、伝
送すべき画像の総エネルギーと比較しながら説明
する。 メモリーレスガウス分布に従う画像xの分散を
σ2x、各シーケンスyの分散をσ2y、ブロツクサ
イズをN、一部のシーケンスに線形予測を用いた
場合の分散をσ2Δyとすれば、Rate Distortion
Theoryに基づき伝送エネルギーの絶対値は平均
値Paとして、それぞれ次のように与えられる。 Pa=10/N・N-1y=0 log10σ2y ……(4) 又は Pa=10/N・N-1 〓 〓y=0log10σ2Δy ……(5) そして、伝送エネルギーの相対値Prは Pr=10log10σ2−Pa ……(6) となる。上記(4)〜(6)式の計算から標準的な画像に
おいて第3図に示すような結果を得た。 この第3図において、特性は1次元のアダマ
ール変換のブロツクサイズに対応する伝送すべき
絶対パワーの変化を示すものであり、特性は2
次元のアダマール変換のブロツクサイズに対応す
る伝送すべき絶体パワーの変化を示すものであ
り、及びはそれぞれ特性及びを水平方向
にアダマール変換すると共に、垂直方向に線形予
測した場合の特性を示している。なお、原画像の
総エネルギーは35.2dB(rms)となつている。こ
れから明らかなように特性及びはいずれもブ
ロツクサイズを大きくするに従つて伝送エネルギ
ーが小さくなつているのに対し、特性及びは
ブロツクサイズにほとんど関係なく一定の伝送エ
ネルギー(約15dB)となつている。このことは、
伝送エネルギーの点から見れば、ブロツクサイズ
4×1又は2×2を選び、線形予測を行なうのが
効率的であることを示している。 このように水平方向にアダマール変換を行な
い、垂直方向に線形予測を行なうと効率的である
ことが分つた。この場合、前のブロツクラインに
おける全シーケンスを記憶するためのバツフアメ
モリが必要になるが、このバツフアメモリの容量
を節約するために、ブロツクサイズ2×2を用い
て水平方向にアダマール変換を行ない、同様に水
平方向に線形予測を行なうことが考えられ得る。
この場合、バツフアメモリは4次のシーケンスを
記憶する容量があれば良く、第1図のブロツク
Bi,j-1及びBijのように、同一ブロツクラインに
おける前ブロツクBi,j-1の各シーケンスH0′、
H1′、H2′、H3′から現ブロツクBijのシーケンス
H0、H1を予測することとなり、結局伝送すべき
シーケンスは、直流予測誤差成分ΔH0、垂直予
測誤差成分ΔH1、 ΔH0=H0−H0^=H0−H0′+H2′+H2 ……(7) ΔH1=H1−H1^=H1−H1′+H3′+H3 ……(8) 及び水平成分H2、傾斜成分H3となる。ここ
に、垂直成分H1は既にブロツクBij内の和と差で
構成されており、伝送エネルギーも直流成分H0
に比べ非常に小さいため、線形予測してもその効
果は少ない。つまり、垂直成分H1とその予測誤
差成分ΔH1では伝送エネルギーの大きさにほと
んど差がなく、直流成分H0だけについて線形予
測を行ない、伝送すべきシーケンスをΔH0、H1
H2及びH3とすれば良い。 次に示す表1は、標準的な画像を7ビツト/画
素でサンプリングし、ブロツクサイズ2×2を用
いて水平方向にアダマール変換を行ない、得られ
たシーケンスH0a、H1a、H2a、H3aそれぞれに
適した量子化レベルを与え、シーケンス量子化値
としている。この量子化は、画像の空間パワース
ペクトラムの中で視覚的に劣化を生じない範囲で
各周波数成分yに歪Dを許容することであり、こ
のときの伝送に必要な情報量RはRate
Distortion Theory から R[ビツト/画素] =1/2NN-1y=0 Max{0、log2σ2y/D} ……(9) で与えられる。
This invention uses quantization to stabilize fluctuations in compression ratio that occur when variable length codes are used for highly efficient encoding in encoding for the purpose of narrowband transmission or storage of images. Regarding the quantization method. To save transmission capacity by removing redundant signals due to the statistical properties of image signals;
In other words, it is well known that band compression is possible. If image signals can be biased by performing some kind of transformation by taking advantage of the strong spatial correlation between adjacent pixels, highly efficient encoding becomes possible. Here,
As transformation methods for imparting bias to images, linear predictive transformation methods and orthogonal transformation methods are widely known. The linear predictive conversion method is called DPCM
(Differential Pulse Code Modulation) uses the fact that the prediction error has statistical bias. This takes advantage of the fact that the spectrum of each frequency component that is the output is biased. On the other hand, in order to perform highly efficient encoding, distortion is generally applied to these transformed components within a visually permissible range, but the probability distribution of these transformed components is also biased. In this case, it is known that it is effective to provide a variable length code by taking advantage of the fact that entropy can be reduced. However, this statistical bias varies considerably depending on the image, with smooth images having a large bias and complex images having a large variation. If a variable length code is given to , there is a problem in that fluctuations occur on the time axis. Conventionally, a large buffer memory was required to correct this variation in the time axis. SUMMARY OF THE INVENTION In view of the above-mentioned points, it is an object of the present invention to provide a quantization method that stabilizes fluctuations in compression ratio by controlling quantization characteristics and reduces the capacity of a buffer memory. This invention will be explained below. This invention relates to a quantization method for image signals, in which an input image is divided into pixel groups m (1, 2) x n (≧2).
The pixel group in each block is converted into a frequency domain sequence by Hadamard transform, and then the currently selected quantization characteristic among the plurality of quantization characteristics is used. quantize, linearly predict at least the DC component of this sequence quantized value and convert it into a quantized value of a prediction error component, and form a plurality of combinations by comparing the sequence quantized values with each other. Corresponding to each combination, each sequence quantization value is variable-length encoded and stored in the buffer memory, read out from the memory at a constant bit rate and output, and the quantization characteristic for the next block line is selected according to the amount of code in the memory. It was designed to do so. First, an image signal encoding method to which the present invention method can be applied will be explained. Figure 1 shows an image divided into 2×2 blocks Bij (i=1,
2, ..., j = 1, 2, ...), pixel 1 is divided into scanning lines h, h+
1... are scanned sequentially. In addition,
Let i, (i+1), . . . be block lines. If the pixel signals (density signals) for pixel 1 of block Bij are x 1 , x 2 , x 3 , x 4 as shown in the figure, then
The normalized Hadamard transform can be expressed as the following equation (1) using a quadratic or quartic Hadamard matrix. 1/21 1 1-1x 1 x 2 x 3 x 4 1 1 1-1 = 1/21 1 1 1 1-1 1-1 1 1-1-1 1-1-1 1x 1 x 2 x 3 x 4 = H 0 H 1 H 2 H 3 ...(1) Here, the sequence H 0 , H 1 , H 2 , H 3
correspond to the fourth-order frequency components transformed into the frequency domain by Hadamard transform, H 0 is the DC component, H 1 is the vertical component, H 2 is the horizontal component,
H3 indicates the slope component, respectively. By the way, in general images, the correlation between adjacent pixels is strong, so the energy of low-order components is high,
The energy of higher order components is observed to be low. Each component is then distributed with the number of bits of the quantization level according to the magnitude of its energy, but since the energy of the DC component is particularly large compared to other components (vertical, horizontal, and inclined), It is necessary to realize highly efficient encoding by adopting a conversion method that lowers the energy of the DC component. As such a conversion method, a method of linearly predicting each sequence obtained by Hadamard transform is known. Next, this linear prediction method will be explained. In the linear prediction method, the block size is 1×n or 2
This is possible when the block size is 2 x n as shown in Figure 2. First, Hadamard transform is applied to each block in the horizontal direction, and then the Hadamard transform is applied to each block in the vertical direction. Consider the case where linear prediction is performed at each time. Then, each sequence obtained by Hadamard transformation is designated as Hl 0 and Hl 1 and arranged as shown in FIG. 2 for convenience. However, l=0,
1,..., (n-1). And the sequence in block Bi -1 ,j
From Hl 0 ′, the sequence Hl 0 in block Bij is
Prediction is made according to the following equation (2). Hl^ 0 = Hl 0 ′−Hl 1 ′−Hl 1 ...(2) The prediction error component ΔHl 0 at this time is ΔHl 0 = Hl 0 −Hl^ 0 = Hl 0 −Hl 0 ′+Hl 1 ′+Hl 1 ... ...(3), then this prediction error component ΔHl 0 is the one that minimizes the distance between each pixel between blocks. Note that the sequence Hl 1 is transmitted as is without any prediction. Here, in order to show the effect of linearly predicting each sequence obtained by Hadamard transform, a comparison will be made with the total energy of the image to be transmitted. If the variance of the image x according to the memoryless Gaussian distribution is σ 2 x, the variance of each sequence y is σ 2 y, the block size is N, and the variance when linear prediction is used for some sequences is σ 2 Δy, then Rate Distortion
Based on Theory, the absolute value of the transmitted energy is given as the average value Pa as follows. Pa=10/N・N-1y=0 log 10 σ 2 y ……(4) or Pa=10/N・N-1 〓 〓 y=0 log 10 σ 2 Δy ……(5) And, The relative value Pr of the transmission energy is Pr=10log 10 σ 2 −Pa (6). From calculations using equations (4) to (6) above, results as shown in FIG. 3 were obtained for a standard image. In Fig. 3, the characteristic shows the change in the absolute power to be transmitted corresponding to the block size of the one-dimensional Hadamard transform, and the characteristic is 2
shows the change in the absolute power to be transmitted corresponding to the block size of the dimensional Hadamard transform. There is. Note that the total energy of the original image is 35.2 dB (rms). As is clear from this, the transmission energy of both the characteristics and the transmission energy decreases as the block size increases, whereas the transmission energy of the characteristics and the transmission energy remains constant (approximately 15 dB) almost regardless of the block size. . This means that
From the viewpoint of transmission energy, it is shown that it is efficient to select a block size of 4×1 or 2×2 and perform linear prediction. It has been found that it is efficient to perform Hadamard transform in the horizontal direction and perform linear prediction in the vertical direction. In this case, a buffer memory is required to store the entire sequence in the previous block line, but in order to save the capacity of this buffer memory, Hadamard transform is performed in the horizontal direction using a block size of 2 × 2, and similarly It may be considered to perform linear prediction in the horizontal direction.
In this case, the buffer memory only needs to have a capacity to store the fourth-order sequence, and the buffer memory shown in Figure 1 is
Each sequence H 0 ′ of the previous block Bi, j -1 in the same block line, such as Bi, j -1 and Bij,
Sequence of current block Bij from H 1 ′, H 2 ′, H 3
H 0 and H 1 are predicted, and the sequence to be transmitted is DC prediction error component ΔH 0 , vertical prediction error component ΔH 1 , ΔH 0 =H 0 −H 0 ^=H 0 −H 0 ′+H 2 ′+H 2 ...(7) ΔH 1 =H 1 −H 1 ^=H 1 −H 1 ′+H 3 ′+H 3 ...(8), horizontal component H 2 , and tilt component H 3 . Here, the vertical component H 1 is already composed of the sum and difference within the block Bij, and the transmitted energy is also the DC component H 0
Since it is very small compared to , linear prediction has little effect. In other words, there is almost no difference in the magnitude of transmission energy between the vertical component H 1 and its prediction error component ΔH 1 , and linear prediction is performed only for the DC component H 0 , and the sequence to be transmitted is determined by ΔH 0 , H 1 ,
H 2 and H 3 may be used. Table 1 below shows the sequence H 0 a, H 1 a, H 2 obtained by sampling a standard image at 7 bits/pixel and performing a Hadamard transform horizontally using a block size of 2 ×2. A suitable quantization level is given to each of a and H 3 a, and these are used as sequence quantization values. This quantization allows distortion D to each frequency component y within a range that does not cause visual deterioration in the spatial power spectrum of the image, and the amount of information R required for transmission at this time is Rate
From Distortion Theory, R [bit/pixel] = 1/2N N-1y=0 Max {0, log 2 σ 2 y/D} ...(9) is given.

【表】 画素信号x1〜x4が7ビツト/画素で入力され、
ブロツクサイズ2×2を用いた場合の正規化され
たアダマール変換の出力シーケンスH0a〜H3a
は、最大8ビツト必要となる。しかしながら、視
覚的に許容される歪レベルとして、シーケンス
H0a、H1a、H2a及びH3aに対してたとえばそれ
ぞれ1ビツト、2ビツト、2ビツト及び3ビツト
相当のホワイトノイズを与えるようにしても良
く、ここではシーケンスH0a〜H3aのそれぞれの
最下位ビツト(LSB)側へ1ビツト、2ビツト、
2ビツト、3ビツト相当シフトすることによりビ
ツト圧縮し、量子化を行なうようにしている。こ
のビツト圧縮量を量子化特性値とする。この後、
直流成分H0および水平成分H2に対して前記量子
化圧縮値を伸張して線形予測を行ない、予測誤差
成分ΔH0を得てからシーケンス量子化値ΔH0
H1、H2及びH3の組合せに基づき、組合せ番号C0
〜C3を形成する。 表1において、たとえば組合せ番号C1は、直
流予測誤差成分の量子化値ΔH0だけが「1」又
は「−1」の値をとり、他のシーケンス量子化値
H1〜H3が全て「0」の値をとることを示してお
り、この組合せの発生確率が23.9%であることを
意味している。また、±hはシーケンス量子化値
が任意の値をとり得ることを示しており、ブロツ
クコードはブロツク内の区切りを示すコードであ
り、各組合せの発生確率に差が少ないので全ての
ブロツクに2ビツト割当てている。さらに、デー
タコードは組合せ番号C0に関しては何らデータ
を伝送せず、組合せ番号C1に関してはシーケン
ス量子化値ΔH0の正負符号Sのみを伝送し、組
合せ番号C2に関してはシーケンス量子化値ΔH0
の正負符号Sの後ろに6ビツトのデータを送るこ
とを示しており、組合せ番号C3に関してはシー
ケンス量子化値H3、H2、H1、ΔH0にそれぞれ正
負符号Sと共に3ビツト、5ビツト、5ビツト、
7ビツトを割当てて、シーケンス量子化値ΔH0
〜H3の組合せに応じた可変長符号データを伝送
することを示している。したがつて、伝送する符
号長は、組合せ番号C0の場合は2ビツト、組合
せ番号C1の場合は3ビツト、組合せ番号C2の場
合は9ビツト、組合せ番号C3の場合は22ビツト
である。なお、組合せ発生確率は、ポートレート
等の空間周波数の低い画像、風景写真のような空
間周波数の高い画像等を種々テストし、平均的に
求めたものである。 以上のように、画像の空間スペクトラムの中で
量子化時に与えた歪レベル以下のデータは伝送せ
ずに捨て、表1の例ではシーケンス量子化値H3
H2、H1、ΔH0に対してそれぞれ3ビツト、5ビ
ツト、5ビツト、7ビツトに圧縮して伝送するよ
うにしており、平均伝送情報量が2.1ビツト/画
素となり、極めて効率的な符号化方式であること
が分る。 上述のように可変長符号を用いることは、入力
される画素毎に圧縮率が変化することであり、こ
の符号化ビツトレートと伝送ビツトレートとの違
いを吸収するためにバツフアメモリを用いる。こ
のバツフアメモリは、入出力ビツトレートの変化
を十分に吸収するだけの容量を持たなければなら
ず、この発明はこのバツフアメモリの容量を節約
して小容量で済むようにしている。 第4図はこの発明の一実施例を示すブロツク構
成図であり、ブロツク毎の画素信号x1〜x4はアダ
マール変換器10に入力され、周波数領域のシー
ケンスに変換された後に量子化器20に入力さ
れ、量子化特性値QCに従つてシーケンス量子化
値H0〜H3に量子化される。そして、直流成分の
シーケンス量子化値H0は、線形予測器30で垂
直成分のシーケンス量子化値H1を用いて線形予
測され、その予測誤差成分ΔH0と垂直成分のシ
ーケンス量子化値H1と、水平成分のシーケンス
量子化値H2と、傾斜成分のシーケンス量子化値
H3とはそれぞれ後述するような符号化器40に
入力され、各シーケンス量子化値ΔH3〜H3の組
合せに応じた可変長符号VCを形成する。符号化
器40で形成された可変長符号VCは一時バツフ
アメモリ50に記憶された後、一定ビツトレート
で画像信号PDとして出力されると共に、メモリ
コントローラ60がバツフアメモリ50の符号量
を逐次計数しその計数結果に基づく制御信号CN
を量子化特性選択器70に入力する。そして、量
子化特性番号ZFを後述する処理フローに従つて
求め符号化器40に入力すると共に、量子化特性
値出力用のROM80に入力し、このROM80
から量子化特性番号ZFに対応する量子化特性値
QCを読出して出力し、その量子化特性値QCで量
子化器20における量子化を行なう。なお、
ROM80及び符号化器40内のROMの内容は
次頁の表2のようになつている。
[Table] Pixel signals x 1 to x 4 are input at 7 bits/pixel,
Output sequence of normalized Hadamard transform using block size 2×2 H 0 a to H 3 a
requires a maximum of 8 bits. However, as a visually acceptable distortion level, the sequence
For example, white noise equivalent to 1 bit, 2 bits, 2 bits, and 3 bits may be applied to H 0 a, H 1 a, H 2 a, and H 3 a, respectively. 1 bit, 2 bits, to each least significant bit (LSB) side of H 3 a
By shifting the data by two or three bits, bit compression is performed and quantization is performed. This amount of bit compression is defined as the quantization characteristic value. After this,
Linear prediction is performed by expanding the quantized compressed values for the DC component H 0 and the horizontal component H 2 to obtain the prediction error component ΔH 0 , and then the sequence quantized value ΔH 0 ,
Based on the combination of H 1 , H 2 and H 3 , combination number C 0
~ Form C3 . In Table 1, for example, in combination number C 1 , only the quantized value ΔH 0 of the DC prediction error component takes a value of "1" or "-1", and the other sequence quantized values
It shows that H 1 to H 3 all take the value of "0", which means that the probability of occurrence of this combination is 23.9%. In addition, ±h indicates that the sequence quantization value can take any value, and the block code is a code that indicates a break within a block, and since there is little difference in the probability of occurrence of each combination, there are two Bits are allocated. Furthermore, the data code does not transmit any data for the combination number C 0 , only the sign S of the sequence quantization value ΔH 0 for the combination number C 1 , and the sequence quantization value ΔH for the combination number C 2 . 0
This shows that 6 bits of data are sent after the plus/minus sign S, and for the combination number C3 , 3 bits , 5 bit, 5 bit,
Allocating 7 bits, sequence quantization value ΔH 0
This indicates that variable length code data corresponding to the combination of ~ H3 is transmitted. Therefore, the code length to be transmitted is 2 bits for combination number C0 , 3 bits for combination number C1 , 9 bits for combination number C2 , and 22 bits for combination number C3. be. Note that the combination occurrence probability is determined as an average by testing various images with low spatial frequency such as portraits, images with high spatial frequency such as landscape photographs, etc. As described above, data below the distortion level given during quantization in the spatial spectrum of the image is discarded without being transmitted, and in the example of Table 1, the sequence quantization value H 3 ,
H 2 , H 1 , and ΔH 0 are compressed to 3 bits, 5 bits, 5 bits, and 7 bits, respectively, and then transmitted, resulting in an average amount of transmitted information of 2.1 bits/pixel, making it an extremely efficient code. It can be seen that it is a method of conversion. As mentioned above, using a variable length code means that the compression rate changes for each input pixel, and a buffer memory is used to absorb this difference between the encoding bit rate and the transmission bit rate. This buffer memory must have a capacity sufficient to absorb changes in the input/output bit rate, and the present invention saves the capacity of this buffer memory so that only a small capacity is required. FIG. 4 is a block configuration diagram showing an embodiment of the present invention, in which pixel signals x 1 to x 4 for each block are input to a Hadamard transformer 10, converted to a frequency domain sequence, and then sent to a quantizer 20. and is quantized into sequence quantization values H 0 to H 3 according to the quantization characteristic value QC. Then, the sequence quantization value H 0 of the DC component is linearly predicted by the linear predictor 30 using the sequence quantization value H 1 of the vertical component, and the prediction error component ΔH 0 and the sequence quantization value H 1 of the vertical component are predicted. , the sequence quantization value H 2 of the horizontal component, and the sequence quantization value H 2 of the slope component
Each of H 3 is input to an encoder 40 as described later, and a variable length code VC corresponding to the combination of each sequence quantized value ΔH 3 to H 3 is formed. The variable length code VC formed by the encoder 40 is temporarily stored in the buffer memory 50 and then output as an image signal PD at a constant bit rate, and the memory controller 60 sequentially counts the amount of codes in the buffer memory 50 and stores the counting result. Control signal CN based on
is input to the quantization characteristic selector 70. Then, the quantization characteristic number ZF is determined according to the processing flow described later and inputted to the encoder 40, and also inputted to the ROM 80 for outputting the quantization characteristic value.
Quantization characteristic value corresponding to quantization characteristic number ZF from
The QC is read out and output, and quantization is performed in the quantizer 20 using the quantization characteristic value QC. In addition,
The contents of the ROM 80 and the ROM in the encoder 40 are as shown in Table 2 on the next page.

【表】 すなわち、ROM80は求められた量子化特性
番号ZF(0〜3)に対応して所定の量子化特性値
QC(H0〜H3)を出力し、符号化器40内のROM
は量子化特性番号ZF(0〜3)におけるシーケン
ス量子化値H3〜ΔH0から求められた組合せ番号
C0〜C3に応じて、所定の可変長符号VCを出力す
る。たとえば、量子化特性選択器70で求められ
た量子化特性番号ZFが“2”の場合、ROM80
から出力される量子化特性値QCは、シーケンス
H0、H1、H2、H3に対してそれぞれ“2”、
“3”、“3”、“4”となり、符号化器40内の
ROMからは表1で上述した如く組合せ番号C0
C3に応じて、符号長2ビツト、3ビツト、8ビ
ツト、18ビツトのデータVCが出力されることに
なる。 このように、この発明ではブロツクライン毎に
圧縮率を変えるようにしているが、これは量子化
器20の量子化特性値QCを変えることによつて
可能である。視覚的に許容される圧縮率(出力ビ
ツトレート)を規定し、先ず現ブロツクラインの
符号長から次に入つてくるブロツクラインの符号
長を量子化特性選択器70で後述する第6図に従
つて予測しているが、これは画像は空間的に相関
が強いので予測しやすいのである。次に、この予
測値が入り得るだけバツフアメモリ50に空エリ
アがあるか否かを検出し、もし空エリアがなけれ
ば次のブロツクラインに対しては量子化を粗くす
るような量子化特性を用いるようにする。量子化
特性を粗くすることはSN比を悪くする方向に作
用するが、出力ビツトレートに比べて符号化ビツ
トレートが高いことから、そのブロツクラインの
画像構成が複雑であつたことを意味しており、こ
のとき量子化を粗くしても視覚的には劣化がそれ
程目立たない。一方、出力ビツトレートに比べて
符号化ビツトレートが低いことは、そのブロツク
ラインは滑らかな画像構成であつたことを意味し
ており、この場合視覚的に劣化が目立ちやすく、
且つバツフアメモリもアンダーフローになる危険
があるので量子化を細かくする必要がある。 なお、バツフアメモリ50はたとえば256バイ
ト程度のRAM(Random Access Memory)で
構成することができ、符号化器40から出力され
る可変長符号VCはビツト単位で一旦レジスタへ
入力された後、たとえば8ビツト単位で並列にバ
ツフアメモリ50に入力される。バツフアメモリ
50からは一定速度で読出され、たとえばDMA
(Direct Memory Access)を通して磁気記録装
置等にデータとして記憶される。また、伝送路に
シリアルに出力しなければならない場合は、バツ
フアメモリ50はシリアル−入力/シリアル−出
力のレジスタで置き換えることができる。結局原
画素の入力及びバツフアメモリ50からの出力が
一定ビツトレートであるのに対し、バツフアメモ
リ50への入力は可変ビツトレートになつてお
り、この過不足を吸収するためにバツフアメモリ
50が設けられている。メモリコントローラ60
は1ブロツクライン毎にバツフアメモリ50を管
理し、今画像の1ブロツクの画素群が入力される
間に、バツフアメモリ50の符号量を計数し、次
ブロツクラインに対する量子化特性を指定するよ
うになつている。 以上のようにして出力ビツトレート、つまり入
力画素当りの平均出力ビツト長に対応して、視覚
特性を利用しながら量子化特性を変化させること
によつて小容量のバツフアメモリでも過不足な
く、一定の出力ビツトレートで伝送することが可
能となる。なお、次のブロツクラインで使用すべ
き量子化特性番号ZFは、ブロツクライン同期信
号BLの次に符号化して伝送するようにすれば良
く、そのフオーマツト例は第5図のようになる。 ここで、量子化特性番号ZFを決定するメモリ
コントローラ60及び量子化特性選択器70の様
子を、第6図のフローチヤートを参照して説明す
る。 1ブロツクラインにおけるバツフアメモリ50
への入力ビツト長をIL、出力ビツト長をOL、バ
ツフアメモリ50の容量をV、バツフアメモリ5
0の空エリアをEPとし、次のブロツクラインに
対する入力ビツト長の予測値をILとする。そし
て、前ブロツクラインの終了後にバツフアメモリ
50内に残つているビツト長をPKi-1とすれば、
現ブロツクライン終了後におけるバツフアメモリ
50の残ビツト長PKiは PKi=PKi-1+IL−OL ……(10) であり、この時点のバツフアメモリ50の空エリ
アEPは EP=V−PKi ……(11) である。メモリコントローラ60はブロツクライ
ン終了毎に上記演算を行ない、次のブロツクライ
ンでバツフアメモリ50に入力されるビツト長
ILを予測し、IL、PK、EP、OL、ILの関係から
次のブロツクラインに対して使用すべき量子化特
性番号ZFを決定するのである。 すなわち、量子化特性番号ZFを決定するため
の処理ルーチンがスタートすると(ステツプ
S1)、ブロツクラインBLが“1”であるか否か
の判断を行ない(ステツプS2)、ブロツクライン
BLが“1”の場合には残ビツト長PKを入力ビツ
ト長ILとし(ステツプS4)、ブロツクラインBL
が“1”でない場合には、前ブロツクにおける残
ビツト長PKに入力ビツト長ILを加算して、出力
ビツト長OLを減算した値を新たな残ビツト長PK
とし(ステツプS3)、次にバツフアメモリ50の
容量Vから上述の如くして求められた残ビツト長
PKを減算して空エリアEPを求める(ステツプ
S5)。そして、残ビツト長PKが出力ビツト長OL
以下であるか否かの判断を行ない(ステツプ
S6)、残ビツト長PKが出力ビツト長OLよりも大
きい場合には、入力ビツト長ILとブロツク間の
ビツト長のバラツキαとの加算値を入力ビツト長
の予測値ILとし(ステツプS7)、空エリアEPが
この入力ビツト長の予測値IL以下であるか否か
の判断を行なう(ステツプS8)。空エリアEPが入
力ビツト長の予測値IL以下である場合には、「+
1」した値を量子化特性番号ZFとし(ステツプ
S9)、入力ビツト長ILの1/2を入力ビツト長の新
たな予測値ILとし(ステツプS10)、空エリアEP
が入力ビツト長の予測値ILよりも小さいか否か
の判断を行なう(ステツプS11)。空エリアEPが
予測値ILよりも小さい場合には更に「+1」の
演算を行ない(ステツプS12)、その後に、また、
空エリアEPが予測値IL以上である場合にも入力
ビツト長INの1/4を新たな予測値ILとする(ステ
ツプS13)。そして、更に空エリアEPがこの予測
値ILよりも小さいか否かの判断を行ない(ステ
ツプS14)、小さい場合には「+1」の演算を行
なつて(ステツプS15)リターン処理とし、空エ
リアEPが予測値IL以上の場合にはそのままリタ
ーン処理とする。なお、上記処理ステツプS8に
おいて、空エリアEPが予測値ILよりも大きい場
合にもリターンとなる。 一方、上記処理ステツプS6において、残ビツ
ト長PKが出力ビツト長OL以下である場合には、
残ビツト長PKにブロツク間のビツト長のバラツ
キαを加算した値を入力ビツト長の予測値ILと
し(ステツプS20)、この予測値ILが出力ビツト
長OLよりも大きいか否かを判断する(ステツプ
S21)。そして、予測値ILが出力ビツト長OLより
も大きい場合にはリターン処理となり、予測値
ILが出力ビツト長OL以下の場合には現在の量子
化特性番号ZFから「−1」した値を新たな量子
化特性番号ZFとし(ステツプS22)、次に入力ビ
ツト長ILと残ビツト長PKとの加算値を入力ビツ
ト長の予測値ILとし(ステツプS23)、この予測
値ILが出力ビツト長OLよりも小さいか否かの判
断を行なう(ステツプS24)。予測値ILが出力ビ
ツト長OL以上である場合には、入力ビツト長IL
を2倍して残ビツト長PKを加算した値を新たな
予測値ILとする(ステツプS26)。また、処理ス
テツプS24において、予測値ILが出力ビツト長
OLよりも小さい場合には、現在の量子化特性番
号ZFから「−1」の演算を行なつて(ステツプ
S25)から上記ステツプS26に進む。そして、更
にこの予測値ILが出力ビツト長OLよりも小さい
か否かの判断を行ない(ステツプS27)、予測値
ILが出力ビツト長OL以上である場合にはリター
ン処理となり、予測値ILが出力ビツト長OLより
も小さい場合には、現在の量子化特性番号「−
1」した値を新たな量子化特性番号ZFとして
(ステツプS28)リターン処理に移る。 次に、アダマール変換器10、量子化器20、
予測器30及び符号化器40の具体的な回路例を
第7図及び第8図に示して説明すると、走査ライ
ンによつて読出された画素信号x1〜x4はアダマー
ル変換器10に入力され、周波数領域に変換され
たシーケンスH0a〜H3aが量子化部20に入力さ
れ、量子化部20を構成する量子化器22で量子
化された水平成分のシーケンス量子化値H2、量
子化器23で量子化された垂直成分のシーケンス
量子化値H1、量子化器23で量子化された傾斜
成分のシーケンス量子化値H3はそれぞれ後段の
可変長符号変換回路40に入力される。また、量
子化器21の出力である直流成分のシーケンス量
子化値H0はシーケンス量子化値H2と共に第8図
に示すような予測器30に入力され、予測器30
で予測された予測誤差成分ΔH0が可変長符号化
器40に入力される。なお、量子化器21〜24
はそれぞれパラレルシフタ又はシフトレジスタで
構成されており、アダマール変換器10で変換さ
れたシーケンスH0a〜H3aに対して、ROM80
から伝送されて来る量子化特性値QCに従つたビ
ツト数だけ下位ビツト側に同時にシフトされるよ
うになつている。たとえば量子化特性選択器70
によつて量子化特性番号ZFが“1”とされた場
合、ROM80からは表2に従つて量子化特性値
QCが、シーケンスH0〜H3に対して“1”、“2”、
“2”、“3”が出力され、直流成分H0aに対して
は1ビツト、垂直成分H1aに対しては2ビツト、
水平成分H2aに対しては2ビツト、傾斜成分H3a
に対しては3ビツトだけそれぞれ下位ビツト側に
シフトするようになつている。また、予測器30
の伸張器31はたとえばパラレルシフタで構成さ
れており、入力される直流成分のシーケンス量子
化値H0と水平成分のシーケンス量子化値H2との
レベルが異なるために、水平成分H2のレベルを
変えて両者のレベルを一致させるようにしてお
り、遅延回路32及び33はそれぞれ1ブロツク
分だけ時間的に遅延させるためのものである。 一方、符号化器40はPLA(Programmable
Logic Array)で構成された比較器41を有して
おり、この比較器41で判別された組合せ番号
C0〜C3がROM(Read Only Memory)42にア
ドレス信号として入力される。そして、量子化特
性選択器70から伝送されて来る量子化特性番号
ZFに従つて、ROM42から読出された符号長
CLがカウンタ43にセツトされ、ブロツクコー
ドBCがシフトレジスタ45にセツトされる。カ
ウンタ43に符号長CLがセツトされると信号P
がセツト状態になり、クロツクパルスCPによつ
てダウンカウントを開始し、カウンタ43が0に
なつた時信号Pはリセツト状態になる。信号Pが
セツト状態にあるとき、クロツクパルスCPおよ
び信号PはANDゲート46を介してシフト信号
SSをシフトレジスタ44へ送る。ここで、シフ
トレジスタ44,45はパラレル−イン/シリア
ル−アウト型のシフトレジスタである。また、量
子化部20からの水平成分H2、垂直成分H1、傾
斜成分H3および予測器30からの予測誤差成分
ΔH0がシフトレジスタ44へ入力されるように
なつており、シフトレジスタ44からシフト出力
されるシフトデータはブロツクコードBCを記憶
しているシフトレジスタ45に入力され、シフト
レジスタ45の出力はシリアル−イン/パラレル
−アウト型のレジスタ48に入力される。レジス
タ48は一定長のビツト数が入力されると全体が
並列に読出され、バツフアメモリ50に一旦記憶
された後、画像信号PDとして他の装置へ伝送さ
れたり、蓄積される。 このような構成において、2走査ラインの同時
読出し、または1走査ラインの読出しと1走査線
分の遅延とで読出された画素信号x1〜x4がアダマ
ール変換器10に入力されると、これら画素信号
x1〜x4が周波数領域のシーケンスH0a〜H3aに変
換されて量子化部20に入力される。そして、量
子化特性番号ZFがたとえば“3”となつている
場合は、表2から量子化部20の量子化器21は
直流成分H0aを3ビツトだけ下位側にシフトし、
量子化器22は水平成分H2aを4ビツトだけ下位
側にシフトし、同様に量子化器23は垂直成分
H1aを4ビツトだけ下位側にシフトし、量子化器
23は傾斜成分H3aを5ビツトだけ、下位側にシ
フトする。ここで、いずれも上位ビツト側からは
正・負の符号がシフトされてくる。このようにし
て得られたシーケンス量子化値H0〜H3のうち、
H1〜H3を可変長符号化器40の比較器41に入
力すると共に、シフトレジスタ44に入力する。
そして、直流成分H0は予測器30に入力され、
この予測器30で水平成分H2と共に直流成分H0
の予測誤差成分ΔH0を形成し、この予測誤差成
分ΔH0を比較器41に入力すると共に、シフト
レジスタ44に入力する。ここに、比較器41は
PLAでプログラミング構成されており、入力さ
れるシーケンス量子化値ΔH0、H1、H2、H3の値
に基づいて前述の表1に従つた組合せ番号C0
C3を判別し、組合せ番号C0〜C3のいずれか1つ
を2値信号たとえば“1”とする。たとえば予測
誤差成分ΔH0が「1」で、他のシーケンスH1
H3がいずれも「0」の場合には、組合せ番号C1
のみが“1”となり、他の組合せ番号C0及びC2
C3はいずれも“0”となつている。 こうして、比較器41で判別された組合せ番号
C0〜C3がROM42に入力されると、ROM42
はこの組合せ番号C0〜C3の“1”をアドレス信
号として、量子化特性番号ZFに対応して該当ア
ドレスに記憶されている符号長データCLおよび
ブロツクコードBCを読出し、この符号長データ
CLをカウンタ43にセツトすると共に、ブロツ
クコードBCをシフトレジスタ45にセツトする。
したがつて、たとえば量子化特性番号ZFが“2”
で組合そ番号C2が判別されてROM42に入力さ
れると、ROM42から符号長「9」がカウンタ
43にセツトされ、かつシフトレジスタ45に
「10」がセツトされ、カウンタ43のカウントダ
ウンに対応してシフトレジスタ44および45の
内容をシフト出する。したがつて、シフトレジス
タ48には「10」以下9ビツトが入力されること
になる。また、比較器41が組合せ番号C0と判
別した場合には、カウンタ43には符号長「2」
がセツトされ、かつシフトレジスタ45に「00」
がセツトされることになり、シフトレジスタ48
には「00」だけが入力される。このようにしてシ
フトレジスタ48に直列に入力されたデータは、
並列に変換されてたとえば8ビツト単位でバツフ
アメモリ50に記憶され、時間軸の補正を行なつ
た後に画像信号PDとして出力される。 以上の如く、例えば低ビツトレートデジタル
VTRを想定して、原画像の入力速度を5.6M画
素/秒伝送路又は記録装置への転送速度を14Mビ
ツト/秒の実時間処理をするためには、バツフア
メモリ50からは帯域圧縮された信号が2.5ビツ
ト/画素のビツトレートで出力することになる
が、画素による圧縮率の変動でバツフアメモリ5
0への入力が2.5ビツト/画素以下あるいは以上
になると、バツフアメモリ50のアンダーフロー
あるいはオーバーフローが生じる可能性がある。
これを避けるため、従来は大容量のバツフアメモ
リを必要としていたが、上述した如きこの発明方
式を用いれば小容量のバツフアメモリでも過不足
なく一定ビツトレートで出力することが可能とな
る。 なお、第7図の実施例では、アダマール変換器
10内の出力部に説明上割算器11〜14を挿入
して「1/2」するようにしているが、量子化部2
0で、「1/2」の演算を行なうようにするのが一般
的である。
[Table] In other words, the ROM 80 stores a predetermined quantization characteristic value corresponding to the obtained quantization characteristic number ZF (0 to 3).
QC (H 0 to H 3 ) is output and the ROM in the encoder 40 is
is the combination number obtained from the sequence quantization values H 3 to ΔH 0 in the quantization characteristic number ZF (0 to 3)
A predetermined variable length code VC is output according to C0 to C3 . For example, if the quantization characteristic number ZF determined by the quantization characteristic selector 70 is “2”, the ROM 80
The quantized characteristic value QC output from is the sequence
“2” for each of H 0 , H 1 , H 2 , and H 3 ,
“3”, “3”, “4”, and the code in the encoder 40 is
From the ROM, the combination number C 0 ~ as mentioned above in Table 1
Data VC with a code length of 2 bits, 3 bits, 8 bits, or 18 bits is output depending on C3 . In this way, in the present invention, the compression ratio is changed for each block line, and this can be done by changing the quantization characteristic value QC of the quantizer 20. A visually permissible compression ratio (output bit rate) is defined, and the quantization characteristic selector 70 first selects the code length of the next block line from the code length of the current block line according to FIG. 6, which will be described later. This is easy to predict because the images have strong spatial correlation. Next, it is detected whether or not there is an empty area in the buffer memory 50 that can accommodate this predicted value, and if there is no empty area, a quantization characteristic that coarsens the quantization is used for the next block line. Do it like this. Roughening the quantization characteristics has the effect of worsening the SN ratio, but since the encoding bit rate is higher than the output bit rate, this means that the image configuration of that block line is complex. At this time, even if the quantization is coarsened, the deterioration is not visually noticeable. On the other hand, if the encoding bit rate is lower than the output bit rate, it means that the block line had a smooth image structure, and in this case, the deterioration is easily noticeable visually.
In addition, there is a risk that the buffer memory will underflow, so it is necessary to perform fine quantization. The buffer memory 50 can be configured with a RAM (Random Access Memory) of about 256 bytes, for example, and the variable length code VC output from the encoder 40 is once input into a register in bit units, and then is converted into, for example, 8 bits. The signals are input to the buffer memory 50 in parallel in units. The buffer memory 50 is read out at a constant speed, for example, DMA
(Direct Memory Access) is stored as data in a magnetic recording device or the like. Further, if it is necessary to serially output data to a transmission line, the buffer memory 50 can be replaced with a serial-input/serial-output register. After all, while the input of the original pixel and the output from the buffer memory 50 have a constant bit rate, the input to the buffer memory 50 has a variable bit rate, and the buffer memory 50 is provided to absorb this excess or deficiency. memory controller 60
manages the buffer memory 50 for each block line, counts the amount of codes in the buffer memory 50 while the pixels of one block of the current image are input, and specifies the quantization characteristics for the next block line. There is. As described above, by changing the quantization characteristics while utilizing the visual characteristics in accordance with the output bit rate, that is, the average output bit length per input pixel, it is possible to maintain a constant output even with a small capacity buffer memory. It becomes possible to transmit at bit rate. The quantization characteristic number ZF to be used in the next block line may be encoded and transmitted next to the block line synchronization signal BL, and an example of its format is shown in FIG. Here, the state of the memory controller 60 and the quantization characteristic selector 70 that determine the quantization characteristic number ZF will be explained with reference to the flowchart of FIG. 6. Buffer memory 50 in 1 block line
The input bit length to is IL, the output bit length is OL, the capacity of buffer memory 50 is V, and buffer memory 5 is
Let the empty area of 0 be EP, and let the predicted value of the input bit length for the next block line be IL. If the bit length remaining in the buffer memory 50 after the end of the previous block line is PKi -1 , then
The remaining bit length PKi of the buffer memory 50 after the end of the current block line is PKi = PKi -1 + IL - OL ... (10), and the empty area EP of the buffer memory 50 at this point is EP = V - PKi ... (11) It is. The memory controller 60 performs the above calculation every time a block line ends, and calculates the bit length input to the buffer memory 50 in the next block line.
IL is predicted, and the quantization characteristic number ZF to be used for the next block line is determined from the relationship between IL, PK, EP, OL, and IL. In other words, when the processing routine for determining the quantization characteristic number ZF starts (step
S1), it is determined whether the block line BL is "1" (step S2), and the block line BL is
If BL is "1", the remaining bit length PK is set as the input bit length IL (step S4), and the block line BL is set as the input bit length IL (step S4).
is not "1", the input bit length IL is added to the remaining bit length PK in the previous block, and the output bit length OL is subtracted, and the value is set as the new remaining bit length PK.
(step S3), and then the remaining bit length obtained as described above from the capacity V of the buffer memory 50.
Find empty area EP by subtracting PK (step
S5). Then, the remaining bit length PK is the output bit length OL
Determine whether the following is true (step
S6), if the remaining bit length PK is larger than the output bit length OL, the predicted value IL of the input bit length is set as the sum of the input bit length IL and the bit length variation α between blocks (step S7); It is determined whether the empty area EP is less than or equal to the predicted value IL of this input bit length (step S8). If the empty area EP is less than the predicted value IL of the input bit length, "+
1” is set as the quantization characteristic number ZF (step
S9), set 1/2 of the input bit length IL as the new predicted value IL of the input bit length (step S10), and set the empty area EP
It is determined whether or not is smaller than the predicted value IL of the input bit length (step S11). If the empty area EP is smaller than the predicted value IL, a further calculation of "+1" is performed (step S12), and then,
Even when the empty area EP is greater than or equal to the predicted value IL, 1/4 of the input bit length IN is set as the new predicted value IL (step S13). Then, it is further determined whether or not the empty area EP is smaller than this predicted value IL (step S14), and if it is smaller, it is calculated by "+1" (step S15), and return processing is performed. If is greater than or equal to the predicted value IL, return processing is performed as is. In addition, in the above processing step S8, if the empty area EP is larger than the predicted value IL, the process also returns. On the other hand, in the above processing step S6, if the remaining bit length PK is less than the output bit length OL,
The value obtained by adding the bit length variation α between blocks to the remaining bit length PK is set as the predicted value IL of the input bit length (step S20), and it is determined whether this predicted value IL is larger than the output bit length OL ( step
S21). If the predicted value IL is larger than the output bit length OL, return processing is performed and the predicted value
If IL is less than or equal to the output bit length OL, the value obtained by subtracting "-1" from the current quantization characteristic number ZF is set as the new quantization characteristic number ZF (step S22), and then the input bit length IL and the remaining bit length PK are set as the new quantization characteristic number ZF. The added value is set as the predicted value IL of the input bit length (step S23), and it is determined whether this predicted value IL is smaller than the output bit length OL (step S24). If the predicted value IL is greater than or equal to the output bit length OL, the input bit length IL
The value obtained by doubling the value and adding the remaining bit length PK is set as a new predicted value IL (step S26). In addition, in processing step S24, the predicted value IL is equal to the output bit length.
If it is smaller than OL, calculate "-1" from the current quantization characteristic number ZF (step
S25) and proceeds to step S26 above. Then, it is further determined whether or not this predicted value IL is smaller than the output bit length OL (step S27), and the predicted value
If IL is greater than or equal to the output bit length OL, return processing is performed, and if the predicted value IL is smaller than the output bit length OL, the current quantization characteristic number "-"
The value obtained by "1" is set as a new quantization characteristic number ZF (step S28) and the process moves to return processing. Next, Hadamard transformer 10, quantizer 20,
Specific circuit examples of the predictor 30 and the encoder 40 are shown in FIG. 7 and FIG . The sequence H 0 a to H 3 a converted into the frequency domain is input to the quantization unit 20, and the sequence quantized value H 2 of the horizontal component is quantized by the quantizer 22 constituting the quantization unit 20. , the sequence quantized value H 1 of the vertical component quantized by the quantizer 23, and the sequence quantized value H 3 of the slope component quantized by the quantizer 23 are input to the subsequent variable length code conversion circuit 40, respectively. be done. Further, the sequence quantized value H 0 of the DC component, which is the output of the quantizer 21, is inputted together with the sequence quantized value H 2 to a predictor 30 as shown in FIG.
The prediction error component ΔH 0 predicted by ΔH 0 is input to the variable length encoder 40 . Note that the quantizers 21 to 24
are each composed of a parallel shifter or a shift register, and for the sequence H 0 a to H 3 a converted by the Hadamard converter 10, the ROM 80
The bits are simultaneously shifted to the lower bit side by the number of bits according to the quantization characteristic value QC transmitted from the quantization characteristic value QC. For example, the quantization characteristic selector 70
When the quantization characteristic number ZF is set to “1” by
QC is “1”, “2” for sequence H 0 to H 3 ,
“2” and “3” are output, 1 bit for DC component H 0 a, 2 bits for vertical component H 1 a,
2 bits for horizontal component H 2 a, slope component H 3 a
For each, three bits are shifted to the lower bit side. Also, the predictor 30
The expander 31 is composed of, for example, a parallel shifter, and since the input sequence quantization value H 0 of the DC component and the sequence quantization value H 2 of the horizontal component are different in level, the level of the horizontal component H 2 is different. The delay circuits 32 and 33 each serve to delay the time by one block. On the other hand, the encoder 40 is a PLA (Programmable
Logic Array), and the combination number determined by this comparator 41
C 0 to C 3 are input to a ROM (Read Only Memory) 42 as address signals. Then, the quantization characteristic number transmitted from the quantization characteristic selector 70
Code length read from ROM42 according to ZF
CL is set in counter 43, and block code BC is set in shift register 45. When the code length CL is set in the counter 43, the signal P
goes into the set state, starts counting down by the clock pulse CP, and when the counter 43 reaches 0, the signal P goes into the reset state. When signal P is in the set state, clock pulse CP and signal P are connected to the shift signal via AND gate 46.
Send SS to shift register 44. Here, the shift registers 44 and 45 are parallel-in/serial-out type shift registers. Further, the horizontal component H 2 , vertical component H 1 , slope component H 3 from the quantization unit 20 and the prediction error component ΔH 0 from the predictor 30 are input to the shift register 44 . The shift data shifted out from the block code BC is input to a shift register 45 storing a block code BC, and the output of the shift register 45 is input to a serial-in/parallel-out type register 48. When a fixed number of bits are input to the register 48, the entire data is read out in parallel, and after being temporarily stored in the buffer memory 50, it is transmitted to another device or stored as an image signal PD. In such a configuration, when pixel signals x 1 to x 4 read out by simultaneous reading of two scanning lines or reading of one scanning line and a delay of one scanning line are input to the Hadamard transformer 10, these pixel signal
x 1 to x 4 are converted into frequency domain sequences H 0 a to H 3 a and input to the quantization unit 20 . When the quantization characteristic number ZF is, for example, "3", from Table 2, the quantizer 21 of the quantizer 20 shifts the DC component H 0 a by 3 bits to the lower side,
The quantizer 22 shifts the horizontal component H 2 a to the lower side by 4 bits, and similarly the quantizer 23 shifts the horizontal component H 2 a to the lower side.
H 1 a is shifted to the lower side by 4 bits, and the quantizer 23 shifts the slope component H 3 a to the lower side by 5 bits. Here, positive and negative signs are shifted from the upper bit side. Among the sequence quantized values H 0 to H 3 obtained in this way,
H 1 to H 3 are input to the comparator 41 of the variable length encoder 40 and are also input to the shift register 44 .
Then, the DC component H 0 is input to the predictor 30,
In this predictor 30, the DC component H 0 along with the horizontal component H 2
A prediction error component ΔH 0 is formed, and this prediction error component ΔH 0 is input to the comparator 41 and also to the shift register 44 . Here, the comparator 41 is
Programming is configured in PLA, and combination numbers C 0 to C 0 according to Table 1 described above are based on the input sequence quantization values ΔH 0 , H 1 , H 2 , and H 3 .
C3 is determined, and one of the combination numbers C0 to C3 is set as a binary signal, for example, "1". For example, if the prediction error component ΔH 0 is "1", other sequences H 1 ~
If H 3 is all “0”, combination number C 1
only becomes “1”, and other combination numbers C 0 and C 2 ,
C3 is all "0". In this way, the combination number determined by the comparator 41
When C 0 to C 3 are input to the ROM42, the ROM42
uses “1” of the combination numbers C 0 to C 3 as an address signal, reads the code length data CL and block code BC stored at the corresponding address corresponding to the quantization characteristic number ZF, and reads out the code length data CL and block code BC.
CL is set in the counter 43 and block code BC is set in the shift register 45.
Therefore, for example, if the quantization characteristic number ZF is "2"
When the combination number C2 is determined and input to the ROM 42, the code length "9" is set from the ROM 42 in the counter 43, and "10" is set in the shift register 45, corresponding to the countdown of the counter 43. The contents of shift registers 44 and 45 are shifted out. Therefore, 9 bits below "10" are input to the shift register 48. Further, when the comparator 41 determines that the combination number C is 0 , the counter 43 contains the code length "2".
is set, and “00” is stored in the shift register 45.
is set, and the shift register 48
only "00" is entered. The data serially input to the shift register 48 in this way is
The signals are converted in parallel and stored in the buffer memory 50 in units of, for example, 8 bits, and after time axis correction is output as an image signal PD. As mentioned above, for example, low bit rate digital
Assuming a VTR, in order to perform real-time processing at an input speed of the original image of 5.6M pixels/second and a transfer speed of 14M bits/second to the transmission path or recording device, the buffer memory 50 outputs a band-compressed signal. will be output at a bit rate of 2.5 bits/pixel, but due to variations in the compression ratio depending on the pixel, the buffer memory 5
If the input to 0 becomes less than or more than 2.5 bits/pixel, underflow or overflow of buffer memory 50 may occur.
In order to avoid this, a large capacity buffer memory was conventionally required, but by using the method of the present invention as described above, it is possible to output at a constant bit rate without excess or deficiency even with a small capacity buffer memory. In the embodiment shown in FIG. 7, dividers 11 to 14 are inserted into the output section of the Hadamard transformer 10 for ``1/2'', but the quantization section 2
0, it is common to perform the calculation of "1/2".

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

第1図はこの発明の原理を説明するための図、
第2図はこの発明に用いる線形予測方式を説明す
るための図、第3図はブロツクサイズとアダマー
ル変換の関係を説明するための図、第4図はこの
発明の一実施例を示すブロツク構成図、第5図は
データ伝送のフオーマツト図、第6図はこの発明
における量子化特性値の選択の動作例を示すフロ
ーチヤート、第7図及び第8図は第4図の詳細を
示すブロツク構成図である。 1……画素、10……アダマール変換器、21
〜24……量子化器、30……予測器、31……
伸張器、32,33……遅延回路、40……可変
長符号化回路、41……比較器、42,80……
ROM、43……カウンタ、44,45,48…
…シフトレジスタ、50……バツフアメモリ、6
0……メモリコントローラ、70……量子化特性
選択器。
FIG. 1 is a diagram for explaining the principle of this invention.
Fig. 2 is a diagram for explaining the linear prediction method used in this invention, Fig. 3 is a diagram for explaining the relationship between block size and Hadamard transform, and Fig. 4 is a block configuration showing an embodiment of this invention. 5 is a data transmission format diagram, FIG. 6 is a flowchart showing an example of the operation of selecting a quantization characteristic value in this invention, and FIGS. 7 and 8 are block configurations showing details of FIG. 4. It is a diagram. 1... Pixel, 10... Hadamard transformer, 21
~24...quantizer, 30...predictor, 31...
Expander, 32, 33... Delay circuit, 40... Variable length encoding circuit, 41... Comparator, 42, 80...
ROM, 43... Counter, 44, 45, 48...
...Shift register, 50...Buffer memory, 6
0...Memory controller, 70...Quantization characteristic selector.

Claims (1)

【特許請求の範囲】 1 入力画像を画素群m(1、2)×n(≧2)で
成る互いに隣接したブロツク群に分割し、前記各
ブロツク内の画素群をアダマール変換によつて周
波数領域のシーケンスに変換して後に複数の量子
化特性のうち現在選択されている量子化特性を用
いて量子化し、このシーケンス量子化値のうちの
少なくとも直流成分を線形予測して予測誤差成分
の量子化値に変換すると共に、前記シーケンス量
子化値を互いに比較することによりその組合せを
複数個形成し、これら各組合せに対応して前記各
シーケンス量子化値を可変長符号化してバツフア
メモリに記憶し、前記メモリから一定ビツトレー
トで読出して出力すると共に、前記メモリ内の符
号量に応じて次ブロツクラインに対する前記量子
化特性を選択するようにしたことを特徴とする画
像信号の適応形量子化方式。 2 入力画像を画素群2×2で成る互いに隣接し
たブロツク群に分割し、前記各ブロツク内の画素
群をアダマール変換によつて周波数領域の直流成
分、垂直成分、水平成分及び傾斜成分に変換して
後、複数の量子化特性のうち現在選択されている
量子化特性を用いて量子化し、当該シーケンス量
子化値のうち少なくとも直流成分は線形予測して
直流予測誤差成分の量子化値に変換すると共に、
1ブロツク内の前記各シーケンス量子化値を互い
に比較することによりその組合せを複数個形成
し、これら各組合せに対して予め定められた可変
長符号を与えてバツフアメモリに記憶し、前記メ
モリから一定ビツトレートで読出して出力すると
共に、前記1ブロツクラインにおける前記バツフ
アメモリへの入力ビツト長をIL、前記バツフア
メモリからの出力ビツト長をOL、前記バツフア
メモリの容量及び空エリアをV及びEP、次ブロ
ツクラインに対する前記入力ビツト長ILの予測
値をILとし、 V−EP≦OL、IL^≦OL の第1条件を満すときに量子化を細かくするよう
な量子化特性を選択し、 EP≦IL^ の第2条件を満すときに量子化を粗くするような
量子化特性を選択し、前記第1条件及び第2条件
以外のときには、現ブロツクラインの量子化に使
用した量子化特性を次ブロツクラインの量子化に
対してもそのまま用いるようにしたことを特徴と
する画像信号の適応形量子化方式。
[Scope of Claims] 1. An input image is divided into a group of adjacent blocks consisting of a pixel group m(1, 2)×n (≧2), and the pixel groups in each block are transformed into a frequency domain by Hadamard transform. After converting into a sequence of and converting the sequence quantization values into values, forming a plurality of combinations thereof by comparing the sequence quantization values with each other, variable-length encoding the sequence quantization values corresponding to each of these combinations, and storing the sequence quantization values in a buffer memory; An adaptive quantization method for an image signal, characterized in that the image signal is read out from the memory at a constant bit rate and outputted, and the quantization characteristic for the next block line is selected depending on the amount of code in the memory. 2 Divide the input image into adjacent blocks of 2×2 pixels, and transform the pixels in each block into DC components, vertical components, horizontal components, and tilt components in the frequency domain by Hadamard transform. After that, quantization is performed using the currently selected quantization characteristic among the plurality of quantization characteristics, and at least the DC component of the sequence quantized value is linearly predicted and converted into a quantized value of the DC prediction error component. With,
A plurality of combinations are formed by comparing the sequence quantization values in one block, and each combination is given a predetermined variable length code and stored in a buffer memory. At the same time, the input bit length to the buffer memory in the first block line is IL, the output bit length from the buffer memory is OL, the capacity and empty area of the buffer memory are V and EP, and the input to the next block line is Let IL be the predicted value of the bit length IL, select a quantization characteristic that finely quantizes when the first condition of V-EP≦OL, IL^≦OL, and select the second condition of EP≦IL^. When the conditions are met, a quantization characteristic that coarsens the quantization is selected, and when conditions other than the first and second conditions are met, the quantization characteristic used for quantization of the current block line is used as the quantization characteristic of the next block line. An adaptive quantization method for image signals, which is characterized in that it can be used as is for quantization.
JP57170748A 1982-09-29 1982-09-29 Adaptive type quantizing method of picture signal Granted JPS5961279A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57170748A JPS5961279A (en) 1982-09-29 1982-09-29 Adaptive type quantizing method of picture signal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57170748A JPS5961279A (en) 1982-09-29 1982-09-29 Adaptive type quantizing method of picture signal

Publications (2)

Publication Number Publication Date
JPS5961279A JPS5961279A (en) 1984-04-07
JPH0352712B2 true JPH0352712B2 (en) 1991-08-12

Family

ID=15910653

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57170748A Granted JPS5961279A (en) 1982-09-29 1982-09-29 Adaptive type quantizing method of picture signal

Country Status (1)

Country Link
JP (1) JPS5961279A (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4920426A (en) * 1986-11-10 1990-04-24 Kokusai Denshin Denwa Co., Ltd. Image coding system coding digital image signals by forming a histogram of a coefficient signal sequence to estimate an amount of information
JPS63280576A (en) * 1987-05-12 1988-11-17 Nec Corp Compression coding method
FR2707070B1 (en) * 1993-06-22 1995-09-08 Centre Nat Etd Spatiales
JP4551997B2 (en) * 1999-10-25 2010-09-29 独立行政法人情報通信研究機構 Image encoding and decoding method and apparatus
KR100718130B1 (en) * 2005-06-04 2007-05-14 삼성전자주식회사 Display driving apparatus and method
WO2008126139A1 (en) * 2007-03-30 2008-10-23 Fujitsu Limited Image data compressor and decoder

Also Published As

Publication number Publication date
JPS5961279A (en) 1984-04-07

Similar Documents

Publication Publication Date Title
US4454546A (en) Band compression device for shaded image
EP0385654B1 (en) Highly efficient coding apparatus
EP0677969B1 (en) Moving picture coding method and an apparatus therefor
US4580162A (en) Adaptive picture image compression system
CN1078428C (en) Image coding method and apparatus therefor
EP0495490A2 (en) Video signal encoding apparatus
JPS59200592A (en) Adaptive compression system of color image
KR100238066B1 (en) Method for controlling bit quantity and apparatus for encoding image using quantized activities
EP0535960A2 (en) Coding signal processor
JPH0818459A (en) High efficiency encoder and high efficiency decoder
JPH0810935B2 (en) Image signal compression encoding device and decompression reproducing device
EP0825779B1 (en) Moving picture coding apparatus/method with output buffer memory control
US6668021B2 (en) Encoding apparatus
JPWO2009157580A1 (en) Image processing apparatus and image processing method
JPH08116447A (en) Coder for image signal
JPWO2009157581A1 (en) Image processing apparatus and image processing method
JPH10322223A (en) Variable length coding circuit
JPH0352712B2 (en)
JP2824222B2 (en) Video data compensation method and compensation device
US5561422A (en) Method and apparatus for variable length coding with reduced memory requirement
JPH0412077B2 (en)
JPS61123280A (en) Image data compressing device
JPS5921185A (en) Coding system of picture signal
JP2856974B2 (en) Image coding device
JP2785209B2 (en) Data transmission equipment