JPS61294585A - Convertion coding system for picture signal - Google Patents
Convertion coding system for picture signalInfo
- Publication number
- JPS61294585A JPS61294585A JP60135600A JP13560085A JPS61294585A JP S61294585 A JPS61294585 A JP S61294585A JP 60135600 A JP60135600 A JP 60135600A JP 13560085 A JP13560085 A JP 13560085A JP S61294585 A JPS61294585 A JP S61294585A
- Authority
- JP
- Japan
- Prior art keywords
- conversion
- code
- circuit
- supplied
- adverse
- 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
Links
- 238000006243 chemical reaction Methods 0.000 claims abstract description 38
- 238000013139 quantization Methods 0.000 claims abstract description 6
- 238000004364 calculation method Methods 0.000 claims description 41
- 238000000034 method Methods 0.000 claims description 8
- 239000012141 concentrate Substances 0.000 claims 1
- 230000002411 adverse Effects 0.000 abstract 6
- 230000009466 transformation Effects 0.000 description 17
- 239000011159 matrix material Substances 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000007792 addition Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003595 spectral effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Landscapes
- Image Processing (AREA)
- Complex Calculations (AREA)
Abstract
Description
【発明の詳細な説明】 (産業上の利用分野) 本発明は画像信号の符号化に関する。[Detailed description of the invention] (Industrial application field) The present invention relates to encoding of image signals.
(従来の技術)
変換符号化、とくに直交変換を用いた符号化は画像信号
の冗長性を大巾に除去でき能率が高いことが知られてい
る。しかしながら、変換を行うための演算が膨大なため
、各種の高速演算法が提案されるほどである。フーリエ
変換の場合を例にとるとクーリーとチューキイ(Coo
ley and Tukey)による高速フーリエ変換
(FFT)やライノブラード(Winograd)によ
るFFTが良く知られている。画像信号の符号化におい
てはその実部を用いるコサイン変換が用いられることが
多いが、これに対しても高速演算法が考案されている。(Prior Art) Transform coding, particularly coding using orthogonal transform, is known to be highly efficient as it can largely remove redundancy in image signals. However, the amount of calculation required to perform the conversion is so large that various high-speed calculation methods have been proposed. Taking the case of Fourier transform as an example, Cooley and Tukey (Coo
Fast Fourier transform (FFT) by Ley and Tukey and FFT by Winograd are well known. In encoding image signals, cosine transformation using the real part of the image signal is often used, and high-speed calculation methods have been devised for this as well.
たとえば、ウェア・シラン・チェノ(Wen−Hsiu
ng Chen)他による論文「アファーストコンビュ
テイショナルアルゴリズム7ォーザディスクリートコサ
イントランスフォームJ (”A Fast Comp
utational Algorithm for t
heDiscrete Co51ne Transfo
rm”、 IEEE Transactions on
Communications、 vol、 C0M−
25,No、9. September1977 )に
高速離散コサイン変換の算法が述べられている。For example, Wen-Hsiu
ng Chen) et al., “A Fast Comp
utional Algorithm for t
heDiscrete Co51neTransfo
rm”, IEEE Transactions on
Communications, vol, C0M-
25, No, 9. September 1977) describes a fast discrete cosine transform algorithm.
(発明が解決しようする問題点)
これらの高速算法は、いずれにせよ全ての変換係数を求
めるための算法であるため、画像の低ビツトレート符号
化において頻繁に行われる微小な値をもつ変換係数の切
捨てにより特定の菫(通常はゼロ)となることが多い場
合には無駄な演算をしていることになる。また、高速演
算法を用いても所要演算法は依然として多く、これを2
1−ドウエアにて実現すると相当複雑でかつ大きなもの
となる。本発明は変換に要する演算を大幅に減らしハー
ドウェア化が容易な変換方式を提供することを目的とす
る。(Problem to be Solved by the Invention) These high-speed calculation methods are methods for calculating all transform coefficients, so they cannot be used to calculate transform coefficients with small values, which are frequently performed in low bit rate encoding of images. If truncation often results in a specific violet (usually zero), the calculation is wasted. In addition, even if a high-speed calculation method is used, the required calculation method is still large, and this is
If implemented as one-ware, it would be quite complex and large. An object of the present invention is to provide a conversion method that can significantly reduce the calculations required for conversion and can be easily implemented in hardware.
(発明の構成)
本発明によれば、画像信号を変換し、得られる変換係数
を量子化し符号化するに当り、量子化により特定の値に
集中することが多い変換係数を含むあらかじめ定められ
た変換係数については変換に際して実行される演算を省
略することを特徴とする画像信号の変換符号化方式が得
られる。(Structure of the Invention) According to the present invention, when converting an image signal and quantizing and encoding the obtained transform coefficients, predetermined transform coefficients containing transform coefficients that are often concentrated in specific values due to quantization are used. A transform encoding method for image signals is obtained, which is characterized by omitting calculations performed during transform for transform coefficients.
(発明の原理)
任意の2次元変換(C)を用いてNライン×N画素毎に
ブロック化された画像(X)を変換した結果をFとする
時、FとXの関係は一般に
F:c、x、c’r
で表わされる。Fは2次元の変換係数行列(以下変換係
数と略記する。)である。通常の符号化ではこのFは量
子化されて取り得る値に制限を受ける。また、この量子
化した結果を伝送する場合にはとくにゼロが多いと情報
量が少なくなり都合が良い。(Principle of the Invention) When F is the result of converting an image (X) divided into blocks of N lines x N pixels using an arbitrary two-dimensional transformation (C), the relationship between F and X is generally F: It is expressed as c, x, c'r. F is a two-dimensional transformation coefficient matrix (hereinafter abbreviated as transformation coefficient). In normal encoding, this F is quantized and is limited in its possible values. Furthermore, when transmitting this quantized result, it is especially convenient if there are many zeros, since the amount of information will be reduced.
変換係数Fは、画像自身のもつスペクトル特性を周波数
に対応付ける時、低周波領域にエネルギーが集中し、高
周波領域のエネルギーは小さいのが普通であり、この高
域成分を表わす変換係数の値は小さく量子化によりゼロ
となることが多い。この高域成分に対応する係数は、複
雑な柄をもつ画面を変換した場合にのみ大きくなること
がある。When the spectral characteristics of the image itself are mapped to frequencies, the transformation coefficient F is usually such that energy is concentrated in the low frequency region and energy in the high frequency region is small, so the value of the transformation coefficient representing this high frequency component is small. It often becomes zero due to quantization. The coefficient corresponding to this high-frequency component may become large only when converting a screen with a complicated pattern.
したがって、複雑な柄の画像が入力された時に高域成分
に対応する係数がゼロとなった時の、逆変換後の再生画
像の若干のボケを許容するとこの高域成分に対応する係
数を得るに必要な演算は省略することができる。たとえ
ば、第1図に例として示すように変換係数Fの左上隅(
DC成分に相当)を含むnXnの領域(斜線部)に含ま
れる低域成分のみ符号化すれば良いものとするとNライ
ン×N画素のブロックからなる画像(X)に対して変換
マトリックスCは斜線で示した部分以外は全てゼロとす
ることができる。CTはマトリックスCの転置である。Therefore, when an image with a complex pattern is input and the coefficient corresponding to the high frequency component becomes zero, by allowing a slight blur in the reproduced image after inverse transformation, the coefficient corresponding to this high frequency component can be obtained. The calculations required for this can be omitted. For example, as shown in FIG.
If we assume that it is only necessary to encode the low-frequency components included in the nXn area (hatched area) containing (corresponding to the DC component), then the transformation matrix C for the image (X) consisting of a block of N lines x N pixels is the shaded area. All parts other than those shown can be set to zero. CT is the transpose of matrix C.
すなわち、第1図に示すようにC,X−CTなる行列演
算を行った結果は左辺のFの斜線部以外はすべてゼロと
なる。この時のX、CTの演算数、たとえば乗算数はC
の斜線部に含まれたものだけで済むため、nXNxN回
である。したがってC,X−CTの演算に現われる乗算
数は2nXNXN回である。全ての係数を算出するもの
と仮定すると、C,X−CTの演算には2N3の乗算が
含まれることになる。That is, as shown in FIG. 1, the result of the matrix operation C,X-CT is zero except for the shaded part of F on the left side. At this time, the number of operations for X and CT, for example, the number of multiplications is C
Since only those included in the shaded area are required, the number of times is nXNxN. Therefore, the number of multiplications appearing in the calculation of C, X-CT is 2nXNXN times. Assuming that all coefficients are calculated, the calculation of C,X-CT will include 2N3 multiplications.
また、信号の変換を実行するに際してはたとえばフーリ
エ変換におけるFFTのように、高速演算が適用される
ことが多い。変換として16次の離散コサイン変換(D
CT)を用いた時の、チェノ(W、H,Chen。Furthermore, when converting signals, high-speed calculations, such as FFT in Fourier transform, are often applied. The 16th order discrete cosine transform (D
Cheno (W, H, Chen) when using CT).
V、S、Patent 4.385.363. May
24.1983)による高速DCT算法の例を第2図
に示す。Xo−A’15は一次元の入力信号で、Fo−
F1aは一次元のDCTにより得られる係数を表わす。V.S.Patent 4.385.363. May
24.1983) is shown in FIG. 2. Xo-A'15 is a one-dimensional input signal, Fo-
F1a represents a coefficient obtained by one-dimensional DCT.
第2図に示されている計算は、たとえば第1図における
変換マトリックスCを画像Xの中の任意の1行に対して
適用した場合を示す。したがってX−CTの演算におい
ては、第2図の例をN回にわたり順次具なる画像Xの行
に適用することになる。CTにおいて、左側のn列のみ
ゼロでない場合には第2図における演算結果F15から
Fnまでの変換結果は結果として全てゼロにされるため
計算する必要がない。The calculation shown in FIG. 2 shows the case where, for example, the transformation matrix C in FIG. 1 is applied to an arbitrary row in the image X. Therefore, in the X-CT calculation, the example shown in FIG. 2 is applied to rows of the image X sequentially N times. In CT, if only the n columns on the left side are not zero, the conversion results from calculation results F15 to Fn in FIG. 2 are all zero as a result, so there is no need to calculate them.
F1aからFnまでの演算にのみ用いられている乗算は
第2図によると、n=4として合計24回になり、F1
aからFoまでの全ての計算した時の乗算数(48)の
1/2となる。すなわち、チェノによる高速算法を用い
た時で画像Xの各行に対する計算ではn=4すなわちn
/N = 1/4の時に乗算数は1/2となる。高速算
法を用いずに直接計算すると2n X N2/2N3=
n/N = 1/4となる。以上はX、CTの演算に
ついて説明したが、C0X、CTについても同様に高速
算法を用いると1/2、直接計算すると1/4となる。According to Figure 2, the multiplications used only in the calculations from F1a to Fn are 24 times in total when n = 4, and F1
This is 1/2 of the number of multiplications (48) when all calculations from a to Fo are performed. That is, when using Cheno's high-speed algorithm, n = 4, that is, n
When /N = 1/4, the number of multiplications becomes 1/2. If you calculate directly without using high-speed arithmetic, 2n x N2/2N3=
n/N = 1/4. The calculations for X and CT have been explained above, but the calculations for C0X and CT are also 1/2 when using the high-speed algorithm, and 1/4 when directly calculated.
他の例として、n=8のときには高速算法では乗算数は
、16回だけ減少できるので(48−16)/48=2
/3となる。直接計算すると8116=112となる。As another example, when n=8, the number of multiplications can be reduced by 16 times using the fast algorithm, so (48-16)/48=2
/3. Direct calculation yields 8116=112.
この演算回数の減少は、変換回路を構成する場合には使
用する乗算器の数の減少に対応する。This reduction in the number of operations corresponds to a reduction in the number of multipliers used when constructing a conversion circuit.
(実施例)
以下図面を参照しながら実施例について詳しく説明する
。第3図に本発明に関る符号化・復号化装置の全体ブロ
ック図に示す。図において、画像信号は線1000を介
して走査変換回路10に入力され、ブロック化される。(Example) Examples will be described in detail below with reference to the drawings. FIG. 3 shows an overall block diagram of an encoding/decoding apparatus according to the present invention. In the figure, the image signal is input to the scan conversion circuit 10 via line 1000 and is divided into blocks.
ブロックの大きさは一般的にはNXNの正方形でかつN
は2のべき乗がよく用いられる。このブロック化された
画像信号は線2000を介して直交変換回路20へ供給
され、NXNの直交変換をうける。この時、第1図に示
したように左上隅のnXnの係数を得るに必要な計算の
み実行される。The size of the block is generally NXN square and N
is often a power of 2. This blocked image signal is supplied to the orthogonal transform circuit 20 via a line 2000 and undergoes NXN orthogonal transform. At this time, only the calculations necessary to obtain the nXn coefficients in the upper left corner are performed as shown in FIG.
この直交変換回路20については後に詳述する。直交変
換回路20の出力である変換係数は線3000を介して
、量子化器30へ供給され、量子化される。この時、左
上隅のnxnの変換係数以外は常にゼロとなっている。This orthogonal transform circuit 20 will be explained in detail later. The transform coefficients that are the output of the orthogonal transform circuit 20 are supplied to a quantizer 30 via a line 3000 and are quantized. At this time, all coefficients other than the nxn conversion coefficient at the upper left corner are always zero.
量子化された変換係数は線4000を介して符号変換回
路40に供給され、たとえばハフマン符号のような能率
の良い符号で表現される。符号変換回路40については
後に詳述する。符号変換された変換係数は線5000を
介して受信側の符号逆変換回路50に供給される。線5
000は、伝送システムにおいては伝送路であり、記録
・再生システムにおいては記録媒体である。この符号逆
変換回路50についても後に詳述する。符号逆変換され
た変換係数は線6000を介して直交逆変換回路60に
おいて直交逆変換され、時間領域の画像信号に復元され
る。この復元された画像信号は線7000を介し、走査
逆変換回路70に供給され、ここでブロック化されてい
る信号は元の時系列に従った画像信号に走査逆変換され
る。そして、受信側における復号された画像信号として
線8000を介して出力される。The quantized transform coefficients are supplied to the code conversion circuit 40 via line 4000 and are represented by an efficient code such as a Huffman code. The code conversion circuit 40 will be described in detail later. The code-converted transform coefficients are supplied via line 5000 to the code inverse conversion circuit 50 on the receiving side. line 5
000 is a transmission line in a transmission system, and is a recording medium in a recording/reproducing system. This code inversion circuit 50 will also be described in detail later. The transform coefficients subjected to sign inverse transformation are orthogonally inversely transformed in an orthogonal inverse transform circuit 60 via a line 6000, and restored to a time domain image signal. This restored image signal is supplied to a scanning and inverse conversion circuit 70 via a line 7000, where the blocked signal is scanned and inversely converted to an image signal according to the original time series. Then, it is output via line 8000 as a decoded image signal on the receiving side.
つぎに、第4図及び第5図を参照しながら、直交変換回
路20の構成について説明する。簡単のため、X−CT
の演算において第1,2行(各々X□4.x−する。た
だし1≦j≦Nとする。)とCT(j行、i列にある画
素をCjiと略記する)との演算について説明する。あ
る時刻においてシフトレジスタa(SRaと略記)21
0にXll〜XINなるXの第1行の画像信号が格納さ
れているものとする。ここで5Ra210は画像信号を
1サンプルづつ直列にシフトし、Nサンプルづつ並列に
出力可能な構成になっているものとする。このNサンプ
ルの画像信号は線2100を介して並列にスイッチ22
0に供給される。スイッチ220では、5Ra210か
らの画像信号が選択され、線2030を介して積和回路
230に供給される。積和回路230においては、係数
メモリ240から線4030を介して並列に供給される
第1列の係数と画像信号Xとの間で積和演算、たとえば
Xの第1行とCTの第1列の場合には
ΣX17 ’ CJl・
J虐l
を実行し、その結果を線3050を介してバッファメモ
リ250へ供給する。第4図の例では写、・5・c。Next, the configuration of the orthogonal transform circuit 20 will be explained with reference to FIGS. 4 and 5. For simplicity, X-CT
In the calculation, explain the calculation of the first and second rows (each X□4.x-, but 1≦j≦N) and CT (the pixel in row j, column i is abbreviated as Cji). do. At a certain time, shift register a (abbreviated as SRa) 21
It is assumed that the image signals of the first row of X, Xll to XIN, are stored in 0. Here, it is assumed that the 5Ra 210 has a configuration capable of serially shifting the image signal one sample at a time and outputting N samples in parallel. This N-sample image signal is sent to switch 22 in parallel via line 2100.
0. The switch 220 selects the image signal from the 5Ra 210 and supplies it to the product-sum circuit 230 via the line 2030. In the product-sum circuit 230, a product-sum operation is performed between the coefficients of the first column supplied in parallel from the coefficient memory 240 via the line 4030 and the image signal X, for example, the first row of X and the first column of CT. In this case, ΣX17' CJl·Jl is executed and the result is supplied to the buffer memory 250 via line 3050. In the example of Fig. 4, it is photo, ・5・c.
などのN個の積和計算(正確にはN個の積と(N−1)
個の和)が一度に並列に実行される場合を例にとってい
る。このXの第1行についてCTの第2列から第n列ま
での積和演算が続けて実行されるが、この間にXの第2
行の画像信号がシフトレジスタb(SRbと略記)21
1に線2000を介して供給され直列にシフトされた後
に線2110を介してNサンプル並列出力をする。そし
て、Xの第1行についての演算が終了すると、スイッチ
220は5Rb211の出力を選択し、Xの第1行に対
するのと同様の積和演算を行い演算結果を線3050を
介して出力する。こうして得られる画像信号XのX、C
Tによる変換結果は−たんバッファメモIJ 250に
格納され、つぎに行われるC・(X−CT)の演算時に
線5060を介して出力される。このバッファメモリ2
50は、X−CTの演算結果が、1−Nの順序の各列に
ついてまず行方向に実行されて得られるものであれば、
いわゆるfirst−in first−outメモリ
で実現できるが、もし反対に1〜Nの順序の各行につい
てまず列方向に実行されて得られる場合には入力データ
と出力データの関係が2次元マトリックスの転置関係に
なるようにして読みだされる。いわば、走査線を変換す
る機能をもったメモリで実現される。(To be exact, N products and (N-1)
We take as an example the case where the sum of the numbers is executed in parallel at once. The product-sum operation from the second column to the nth column of CT is continuously executed for the first row of
The image signal of the row is transferred to shift register b (abbreviated as SRb) 21
1 via line 2000 and serially shifted to output N samples in parallel via line 2110. When the calculation for the first row of X is completed, the switch 220 selects the output of 5Rb 211, performs the same product-sum calculation as for the first row of X, and outputs the calculation result via the line 3050. X, C of the image signal X obtained in this way
The conversion result by T is stored in the -tan buffer memory IJ 250 and output via line 5060 during the next calculation of C.(X-CT). This buffer memory 2
50, if the calculation result of X-CT is obtained by first performing it in the row direction for each column in the order of 1-N,
This can be realized using a so-called first-in first-out memory, but if the data is obtained by first executing each row in the order of 1 to N in the column direction, the relationship between input data and output data will be a transposed relationship of a two-dimensional matrix. It is read out as follows. In other words, it is realized by a memory that has the function of converting scanning lines.
このバッファメモリ250の出力は線5060を介して
シフトレジスタe(SRcと略記)260またはシフト
レジスタd(SRd)261のいずれかに供給され、直
列シフトがなされる。、5Rc260と5Rd261は
5Ra210と5Rb211の関係と同一の動作を行う
。すなわち5Rc260が入力および直列シフトで用い
られている時には5Rd261はNデータを線2160
を介して並列出力し、逆に5Rd261が入力直列シフ
トで用いられている時には5Rc260はNデータを線
2600を介して並列出力することになる。スイッチ2
70はこの2系統のNデータの並列出力を選択し、線7
080を介して積和回路280へ供給する。積和回路2
80の動作は先の積和回路230と同一で、X、CTの
演算結果と係数メモリ290より線9080を介して供
給される係数CijとのN個の積和演算を行う。こうし
て得られた変換係数Fは、線3000を介して量子化器
30へ供給される。The output of this buffer memory 250 is supplied via line 5060 to either shift register e (abbreviated as SRc) 260 or shift register d (SRd) 261 for serial shifting. , 5Rc260 and 5Rd261 perform the same operation as the relationship between 5Ra210 and 5Rb211. That is, when 5Rc 260 is used for input and serial shift, 5Rd 261 sends N data to line 2160.
Conversely, when 5Rd 261 is used for input serial shifting, 5Rc 260 will output N data in parallel via line 2600. switch 2
70 selects the parallel output of these two systems of N data, and connects the line 7
080 to the product-sum circuit 280. Product-sum circuit 2
The operation of 80 is the same as that of the product-sum circuit 230 described above, and performs N product-sum calculations between the calculation results of X and CT and the coefficient Cij supplied from the coefficient memory 290 via the line 9080. The transform coefficients F thus obtained are supplied to the quantizer 30 via line 3000.
次に第5図を用いて、係数メモリ240の構成と動作に
ついて説明する。簡単のために第1図におけるn=4と
して説明するが、4以外でも勿論以下の説明は当てはま
るメモリA242にはCjl(j=1〜N)がメモリB
243にはCj2、メモリC244にはCj3.メモリ
D245にはCj4、がそれぞれ格納されている。X−
CTの演算において、まず第1行、第1列目の演算を行
う時には、メモリA242がセレクタ241により選択
され、線4241および線4030を介してN個の係数
Cjl(i:1〜N)が出力され、x、j(j=1〜N
)と積和演算がなされる。Next, the configuration and operation of the coefficient memory 240 will be explained using FIG. For simplicity, the explanation will be made assuming that n=4 in FIG. 1, but of course the following explanation applies to cases other than 4 as well. Cjl (j=1 to N) is in memory B
243 has Cj2, and memory C244 has Cj3. Cj4 is stored in the memory D245. X-
In the CT calculation, when first performing the calculation in the first row and first column, the memory A242 is selected by the selector 241, and the N coefficients Cjl (i: 1 to N) are x, j (j=1~N
) and a product-sum operation is performed.
以下同様に、たとえば第1行、第2列目の演算を行う時
にはメモリB243が選択され線4341と4030を
介してN個の係数が出力される。この係数メモリA−D
においては、加算あるいは減算のみを実行する場合には
該当する係数を+1あるいは−1とすれば良いというこ
とは明らかである。Similarly, when performing calculations on the first row and second column, for example, memory B 243 is selected and N coefficients are output via lines 4341 and 4030. This coefficient memory A-D
It is clear that when performing only addition or subtraction, the corresponding coefficient may be set to +1 or -1.
つぎに、第6図及び7図を参照して前述のチェ2による
高速アルゴリズムに対して本発明を適用した場合の実施
例について説明する。Next, with reference to FIGS. 6 and 7, an embodiment will be described in which the present invention is applied to the high-speed algorithm based on Che 2 described above.
走査変換されてブロック化された画像信号は線2000
を介してまずバッファ810に供給される。このバッフ
ァ810は第4図中の5Ra210.5Rb211およ
びスイッチ220からなっており、Nデータを並列出力
し、次の演算器a820に供給する。演算器a820〜
演算器e824と演算器a’ 840〜演算器e’ 8
44の各演算器はすべて第7図に示す基本構成で実現す
ることができる。すなわち、入力信号(N並列)を分配
801により振り分けて出力し、これに対して係数器8
03より供給される係数(最大で2N並列)を乗算器8
02において乗じ、その結果は加算器804において加
算され、1段分の演算が終了する。これを、第2図を用
いて説明する。第1段においては、入力データX。〜X
1゜(N、=16とする)の並びかえを分配器801に
おいて行い、加算に対しては+1、減算に対しては−1
なる係数を与えて乗算および加算を行うことにより処理
が終了する。この分配器801はNデータの並列入力に
対し、並び換えた後に最大で2Nデータの並列出力が可
能であることが必要である。また乗算器802は最大で
2N並列の乗算が実行可能とする。同様に加算器804
も最大でN並列の加算が可能なものとする。第2図を実
現するための構成としては、第1゜2.4段については
分配器801の分配規則を変更するだけで、第7図の乗
算器がそれぞれ演算器a820、演算3b821、演算
器d823として使用できる。この時の係数は+1か−
1のみでよい。第3段については、第2図中に示すよう
に係数としては+1.−1. +C4゜−C4,+C8
,−C8,+84を係数器803に用意しておく。第5
段も同様である。とくに第5段においてn=4とする場
合には第8図に示すようにF4〜F15の出力は固定的
にゼロにされるため、これを計算するのに必要な積、和
は不要である。The scan-converted and blocked image signal is a line 2000.
The signal is first supplied to buffer 810 via . This buffer 810 consists of 5Ra210.5Rb211 and switch 220 in FIG. 4, and outputs N data in parallel and supplies it to the next arithmetic unit a820. Arithmetic unit a820~
Arithmetic unit e824 and arithmetic unit a' 840 to arithmetic unit e' 8
All of the 44 arithmetic units can be realized with the basic configuration shown in FIG. That is, the input signal (N parallel) is distributed and outputted by the distribution 801, and the coefficient multiplier 8
Multiplier 8 uses the coefficients supplied from 03 (maximum 2N parallel)
02, and the results are added in an adder 804, completing one stage of calculation. This will be explained using FIG. 2. In the first stage, input data X. ~X
1 degree (assuming N, = 16) is performed in the distributor 801, +1 for addition and -1 for subtraction.
The process ends by performing multiplication and addition by giving a coefficient. This distributor 801 is required to be able to output up to 2N data in parallel after rearranging the N data input in parallel. Furthermore, the multiplier 802 is capable of performing 2N parallel multiplications at maximum. Similarly adder 804
It is also assumed that N parallel additions can be performed at maximum. In order to realize the configuration shown in FIG. 2, the multipliers in FIG. Can be used as d823. The coefficient at this time is +1 or -
Only 1 is enough. Regarding the third stage, as shown in FIG. 2, the coefficient is +1. -1. +C4゜-C4, +C8
, -C8, +84 are prepared in the coefficient unit 803. Fifth
The same goes for the steps. In particular, when n=4 in the fifth stage, the outputs of F4 to F15 are fixedly set to zero as shown in Figure 8, so the products and sums necessary to calculate this are unnecessary. .
したがって、第6図と第8図とを対比させると演算器a
820〜演算器e824は第1〜5段目の各演算を実行
することになる。バッファ830はこうして得られるF
O〜F15(F4〜F15はゼロ)の計16(N=16
の場合)の係数を−たん記憶し、中間結果としてNデー
タ並列に演算器a’ 840に供給する。以下、演算器
a’ 840〜演算器e’ 844の動作は第8図に従
い、かつ演算器a820〜演算器e824と同一で、演
算器e’ 844より出力されるデータが2次元の直交
変換を行った時の最終的な変換結果である。この係数は
N並列で出力されるため、バッファ850においては並
列−直列変換を行い係数を1個づつ順に線3000を介
して出力し、量子化器30に供給する3、直交変換が省
略された変換係数に対しては特定の値たとえばゼロを出
力すればよい。Therefore, when comparing FIG. 6 and FIG. 8, arithmetic unit a
The arithmetic units 820 to e824 execute the first to fifth stage calculations. The buffer 830 is thus obtained
O to F15 (F4 to F15 are zero), total 16 (N=16
(in the case of ) is temporarily stored and supplied to the arithmetic unit a' 840 in N data in parallel as an intermediate result. Hereinafter, the operations of arithmetic units a' 840 to arithmetic units e' 844 are in accordance with FIG. 8, and are the same as those of arithmetic units a820 to e824. This is the final conversion result. Since these coefficients are output in N parallel, the buffer 850 performs parallel-to-serial conversion and outputs the coefficients one by one via the line 3000 and supplies them to the quantizer 30.3, orthogonal transformation is omitted. A specific value, such as zero, may be output for the conversion coefficient.
本発明の近似的な直交変換に対する直交逆変換としては
、近似していない逆変換と近似した逆変換のいずれも適
用可能である。近似していない逆変換は通常の場合と同
じである。近似した逆変換も、近似した直交変換を実行
する第4図あるいは第6図における係数を逆変換用に置
換するだけでよく、直交変換時に演算されない係数に対
応する逆変換マトリックス内の要素は特定の値たとえば
ゼロにしておいて、実効的に演算を省略できる。As the orthogonal inverse transform for the approximate orthogonal transform of the present invention, both non-approximate inverse transform and approximate inverse transform can be applied. The non-approximate inverse transformation is the same as the usual case. Approximate inverse transformation can also be performed by simply replacing the coefficients in Figures 4 or 6 that perform the approximate orthogonal transformation, and the elements in the inverse transformation matrix that correspond to the coefficients that are not calculated during orthogonal transformation must be specified. By setting the value of , for example, to zero, the calculation can be effectively omitted.
つぎに第9図及び10図を参照してこの不等長符号への
表現方法とその復号方法について説明する。Next, with reference to FIGS. 9 and 10, a method of representing this into an unequal length code and a method of decoding it will be explained.
第9図に、符号変換回路40の構成例を示す、1個づつ
直列に出力される変換係数(量子化後)は線4000を
介して係数符号器410とゼロ検出器420へ同時に供
給される。係数符号器410は、多数の画像信号に対し
て統計的に求めた係数の分布より得られるハフマン符号
などの高能率符号をゼロでない入力変換係数に対応付け
て出力する符号変換を行い、多重化器471に供給する
。ゼロ検出器420は入力変換係数がゼロであるか否か
を判定し、その結果を線4200を介してラン長計数器
430と多重化器470に供給する。ラン長計数430
は、線4200を介して供給される信号がゼロを検出し
ていることを示している時には、そのゼロの連続する数
を計数し、計数結果を線4344を介してラン長符号器
440に供給する。FIG. 9 shows an example of the configuration of the code conversion circuit 40. Transform coefficients (after quantization) that are serially output one by one are simultaneously supplied to a coefficient encoder 410 and a zero detector 420 via a line 4000. . The coefficient encoder 410 performs code conversion that outputs a high-efficiency code such as a Huffman code obtained from the distribution of coefficients statistically determined for a large number of image signals, in association with non-zero input conversion coefficients, and performs multiplexing. 471. Zero detector 420 determines whether the input transform coefficients are zero and provides the result to run length counter 430 and multiplexer 470 via line 4200. Run length count 430
counts the number of consecutive zeros when the signal provided on line 4200 indicates that it has detected a zero, and provides the result of the count to run length encoder 440 on line 4344. do.
制御回路450はこの符号変換の実行制御する機能を有
し、画像信号の水平・垂直同期信号の存在位置の指定お
よび、これの符号変換結果の選択を線4500を介して
同期信号符号器460と多重化器470に供給する。ラ
ン長符号器440は、線4344を介して供給するラン
長を符号に変換して多重化器470へと出力する。この
ラン長を表わす符号とゼロでない係数を表わす符号は互
いに区別できることが必要であることは言うまでもない
。同期信号符号器460は、同期信号が存在する時これ
を表わす符号を多重化器470に出力する。多重化器4
70は、供給する3種の符号を多重化して線5000を
介して出力するが、その選択は線4200と4500を
介してそれぞれ供給される、入力された係数がゼロか否
かを表わす信号、同期信号の存在を表わす信号に従う、
すなわち、同期信号が存在する時には同期信号を表わす
符号、係数がゼロでない時には係数の符号変換結果(係
数符号器410の出力)、そしてゼロの時にはラン長の
符号変換結果がそれぞれ選択され多重化される。The control circuit 450 has a function of controlling the execution of this code conversion, and specifies the position of the horizontal and vertical synchronization signals of the image signal and selects the code conversion result thereof with the synchronization signal encoder 460 via a line 4500. A multiplexer 470 is provided. Run length encoder 440 converts the run length supplied via line 4344 into a code and outputs the code to multiplexer 470 . It goes without saying that the code representing the run length and the code representing non-zero coefficients must be distinguishable from each other. The synchronization signal encoder 460 outputs a code representing the presence of the synchronization signal to the multiplexer 470. Multiplexer 4
70 multiplexes the three types of codes to be supplied and outputs them via line 5000, the selection of which is determined by a signal indicating whether the input coefficient is zero or not, which is supplied via lines 4200 and 4500, respectively; following a signal indicating the presence of a synchronization signal,
That is, when a synchronization signal exists, a code representing the synchronization signal, when the coefficient is not zero, the code conversion result of the coefficient (output of the coefficient encoder 410), and when it is zero, the code conversion result of the run length are selected and multiplexed. Ru.
なお、ゼロなる係数が多数連続し、その後に同期信号が
来る場合にはこの最後のラン長は符号化しなくても復号
時には正しく復号することが出来るので省略することが
可能である。この時には制御回路450より線4543
を介して同期信号の発生をラン長計数器430に知らせ
、その計数値をリセットする。また、多重化器470に
対してはさらに最後のラン長を表わす符号は無視するよ
うに線4500を介して指令する。Note that if a large number of consecutive zero coefficients are followed by a synchronization signal, this last run length can be omitted because it can be correctly decoded during decoding even if it is not encoded. At this time, the control circuit 450 twists the wire 4543
The run length counter 430 is notified of the occurrence of the synchronization signal via the run length counter 430, and its count value is reset. Multiplexer 470 is further instructed via line 4500 to ignore the code representing the last run length.
つぎに、符号逆変換回路50の構成について第10図を
参照して説明する。Next, the configuration of the sign inversion circuit 50 will be explained with reference to FIG. 10.
線5000を介して供給された符号変換された変換係数
は係数復号器510、ラン長復号器540、同期信号復
号器560に供給される。係数復号5510はゼロでな
い係数の符号逆変換を行い、その結果を線5157を介
してスイッチ570へ、また逆変換中であることを示す
信号を線5155を介して制御回路550へそれぞれ供
給する。ラン長復号器540はゼロなる変換係数が連続
する長さくラン長)を表わす符号を逆変換し、その長さ
に応じてゼロなる信号を発生し線5457を介してスイ
ッチ570に供給すると同時に、線5455を介してラ
ン長を復号している最中であることを示す信号を線54
55を介して、それぞれ供給する。同期信号復号器56
0は符号化された同期信号の存在を検出し、その結果を
制御回路550に伝える。The transcoded transform coefficients provided via line 5000 are provided to coefficient decoder 510, run length decoder 540, and synchronization signal decoder 560. Coefficient decoding 5510 performs sign inversion of non-zero coefficients and provides the result to switch 570 via line 5157 and a signal indicating that inversion is in progress to control circuit 550 via line 5155. The run length decoder 540 inversely transforms the code representing a run length (a run length in which zero transform coefficients are continuous), generates a zero signal according to the length, and supplies it to the switch 570 via a line 5457. A signal is sent to line 54 to indicate that the run length is being decoded via line 5455.
55, respectively. Synchronization signal decoder 56
0 detects the presence of the encoded synchronization signal and communicates the result to control circuit 550.
制御回路550は、これら同期信号を表わす信号、線5
155、5455をそれぞれ介して供給される信号を用
いてスイッチ570の選択を制御する。また同期信号の
直前にあるランが符号変換されなかった場合には、最後
のゼロでない係数のっぎから同期信号が発生する直前ま
での時間はスイッチ570がゼロを出力するように指令
するが、この指令およびスイッチ570での選択は線5
557を介して行われる。Control circuit 550 receives signals representing these synchronization signals, line 5.
155 and 5455, respectively, are used to control the selection of switch 570. In addition, if the run immediately before the synchronization signal is not code-converted, the switch 570 commands to output zero for the time from the last non-zero coefficient until just before the synchronization signal is generated. This command and selection with switch 570
557.
(発明の効果)
本発明を実用に供すると、符号化能率は高いがこれを実
現するのに複雑なハードウェア、あるいは多数の加算、
乗算が必要な直交変換が大巾に簡略化できるようになり
、その効果は非常に高い。(Effects of the Invention) When the present invention is put to practical use, although the encoding efficiency is high, it requires complicated hardware or a large number of additions to realize this.
Orthogonal transformations that require multiplication can now be greatly simplified, and the effect is very high.
第1図は本発明の詳細な説明する図、第2図は離散コサ
イン変換の高速算法の1例を示す図、第3図。
第4図、第5図、第6図、第7図、第9図、第10図は
本発明に関る実施例を示す図、第8図は本発明に関る離
散コサイン変換の高速算法の1例を示す図である。
図において、
lOは走査変換回路、20は直交変換回路、30は量子
化器、40は符号変換回路、50は符号逆変換回路、6
0は直交逆変換回路、70は走査逆変換回路、である。
”II C11
心
α〕
*
亭 q 図FIG. 1 is a diagram for explaining the present invention in detail, FIG. 2 is a diagram showing an example of a high-speed calculation method of discrete cosine transform, and FIG. 3 is a diagram for explaining the present invention in detail. Figures 4, 5, 6, 7, 9, and 10 are diagrams showing embodiments of the present invention, and Figure 8 is a high-speed calculation method for discrete cosine transform according to the present invention. It is a figure showing an example. In the figure, lO is a scan conversion circuit, 20 is an orthogonal conversion circuit, 30 is a quantizer, 40 is a code conversion circuit, 50 is a code inverse conversion circuit, and 6
0 is an orthogonal inverse transform circuit, and 70 is a scanning inverse transform circuit. "II C11 Heart α] * Tei q Diagram
Claims (1)
号化するに当り、量子化により特定の値に集中すること
が多い変換係数を含むあらかじめ定められた変換係数に
ついては変換に際して実行される演算を省略することを
特徴とする画像信号の変換符号化方式。 2、演算が省略された変換係数に対してあらかじめ定め
られた特定の値を付与することを特徴とする特許請求の
範囲第1項記載の画像信号の変換符号化方式。[Claims] 1. Regarding predetermined transform coefficients, including transform coefficients that often concentrate on specific values due to quantization, when converting an image signal and quantizing and encoding the resulting transform coefficients. is a conversion encoding method for image signals characterized by omitting calculations performed during conversion. 2. The image signal transform encoding method according to claim 1, wherein a predetermined specific value is assigned to the transform coefficient whose calculation is omitted.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60135600A JPS61294585A (en) | 1985-06-21 | 1985-06-21 | Convertion coding system for picture signal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60135600A JPS61294585A (en) | 1985-06-21 | 1985-06-21 | Convertion coding system for picture signal |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS61294585A true JPS61294585A (en) | 1986-12-25 |
Family
ID=15155605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60135600A Pending JPS61294585A (en) | 1985-06-21 | 1985-06-21 | Convertion coding system for picture signal |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS61294585A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020150339A (en) * | 2019-03-11 | 2020-09-17 | キヤノン株式会社 | Image decoder, image decoding method, and program |
JP2020150340A (en) * | 2019-03-11 | 2020-09-17 | キヤノン株式会社 | Image encoder, image encoding method, and program |
US11962806B2 (en) | 2019-03-11 | 2024-04-16 | Canon Kabushiki Kaisha | Image decoding apparatus, image decoding method, and storage medium |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59132291A (en) * | 1982-10-14 | 1984-07-30 | ブリティシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニ | Metod and device for digitally processing image |
-
1985
- 1985-06-21 JP JP60135600A patent/JPS61294585A/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59132291A (en) * | 1982-10-14 | 1984-07-30 | ブリティシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニ | Metod and device for digitally processing image |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020150339A (en) * | 2019-03-11 | 2020-09-17 | キヤノン株式会社 | Image decoder, image decoding method, and program |
JP2020150340A (en) * | 2019-03-11 | 2020-09-17 | キヤノン株式会社 | Image encoder, image encoding method, and program |
US11962806B2 (en) | 2019-03-11 | 2024-04-16 | Canon Kabushiki Kaisha | Image decoding apparatus, image decoding method, and storage medium |
US11985352B2 (en) | 2019-03-11 | 2024-05-14 | Canon Kabushiki Kaisha | Image coding apparatus, image coding method, and storage media |
US12075049B2 (en) | 2019-03-11 | 2024-08-27 | Canon Kabushiki Kaisha | Image decoding apparatus, image decoding method, and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100880305B1 (en) | Image decoding device | |
JP5507077B2 (en) | Apparatus and method for encoding and calculating a discrete cosine transform using a butterfly processor | |
JPH0491587A (en) | Orthogonal transformation encoder | |
JPH10503359A (en) | Method and apparatus for reducing image data compression noise | |
EP1051690A1 (en) | Compressing and decompressing images | |
JPS622721A (en) | Coding and decoding device for picture signal | |
EP0917070B1 (en) | Method and apparatus for performing discrete cosine transformation and its inverse | |
US6870885B2 (en) | Apparatus and method for decoding and computing a discrete cosine transform using a butterfly processor | |
US6181831B1 (en) | Spatial frequency-domain video signal processing | |
US6137916A (en) | Method and system for improved digital video data processing using 8-point discrete cosine transforms | |
US5555321A (en) | Image data binary coding method and apparatus | |
JPS61294585A (en) | Convertion coding system for picture signal | |
CN1947346B (en) | Computerized coding method and computerized system | |
JPS61294586A (en) | Conversion coding and decoding device for picture signal | |
JP4266512B2 (en) | Data processing device | |
US6215909B1 (en) | Method and system for improved digital video data processing using 4-point discrete cosine transforms | |
JPH02224489A (en) | Encoding and decoding device | |
JP2887843B2 (en) | Image data restoration method and apparatus | |
JP3907724B2 (en) | Image encoding device | |
US6327601B1 (en) | Linear transform system for decoding video data | |
JP2802158B2 (en) | Inverse orthogonal transform method and inverse orthogonal transform circuit | |
JP2809798B2 (en) | Matrix operation processing method of image data orthogonal transformation device | |
JPH0310486A (en) | Moving picture encoder | |
JPH0795415A (en) | Method and device for picture communication | |
JPH02154571A (en) | Still picture decoding system and its device |