JP2001230935A - Method and device for arithmetic encoding/decoding - Google Patents

Method and device for arithmetic encoding/decoding

Info

Publication number
JP2001230935A
JP2001230935A JP2000041693A JP2000041693A JP2001230935A JP 2001230935 A JP2001230935 A JP 2001230935A JP 2000041693 A JP2000041693 A JP 2000041693A JP 2000041693 A JP2000041693 A JP 2000041693A JP 2001230935 A JP2001230935 A JP 2001230935A
Authority
JP
Japan
Prior art keywords
value
decoding
arithmetic
context information
encoding
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.)
Granted
Application number
JP2000041693A
Other languages
Japanese (ja)
Other versions
JP3684128B2 (en
Inventor
Tadayoshi Nakayama
忠義 中山
Minoru Kobegawa
実 神戸川
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2000041693A priority Critical patent/JP3684128B2/en
Publication of JP2001230935A publication Critical patent/JP2001230935A/en
Application granted granted Critical
Publication of JP3684128B2 publication Critical patent/JP3684128B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To accelerate the decoding speed of an encoded multilevel image using hardware having simple configuration. SOLUTION: For the arithmetic encoding/decoding method for arithmetically encoding/decoding multilevel image information composed of plural bit planes while referring to context information, the encoding/decoding order is determined, so that the context information corresponding to an encoding/decoding object pixel can be determined while preceding for at least two cycles of the encoding/decoding object pixel.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、算術符号(Arithme
tic code)を用いて画像データを符号化する算術符号化
方法と、該方法で符号化された画像データを復号化する
算術復号化装置に関し、特に多値画像の算術符号化方法
と算術復号化装置に関する。
The present invention relates to an arithmetic code (Arithme
The present invention relates to an arithmetic coding method for coding image data using a tic code, and an arithmetic decoding device for decoding image data coded by the method, and particularly to an arithmetic coding method and arithmetic decoding for a multi-valued image. Related to the device.

【0002】[0002]

【従来の技術】算術符号は、[0,1)の数値直線上の
対応区間(2進小数で[0.0・・・0,0.1・・・
1])を各シンボルの生起確率に応じて不等長に分割し
ていき、符号化対象シンボル系列を対応する部分区間に
割り当て、再帰的に分割を繰り返していくことにより得
られた区間内に含まれる点の座標を少なくとも他の区間
と区別できる2進小数で表現して、そのまま符号とする
ものである。
2. Description of the Related Art Arithmetic codes are represented by a corresponding section (binary decimal [0.0... 0, 0.1...) On a numerical line of [0, 1).
1]) is divided into unequal lengths in accordance with the occurrence probabilities of the respective symbols, the symbol sequence to be encoded is allocated to the corresponding subsections, and the section obtained by recursively repeating the division is The coordinates of the included points are represented as binary decimal numbers that can be distinguished from at least other sections, and are directly used as codes.

【0003】算術符号の方法の代表的なものとして、I
TUの機関であるJBIG(Joint Bi−1ev
el Image Experts Group)で標
準化されたJBIG(QM−coder)方法、IBM
社が提案しているQ−coder等がある。
[0003] As a typical arithmetic code method, I
TU organization JBIG (Joint Bi-1ev)
el Image Experts Group), JBIG (QM-coder) method, IBM
There is Q-coder etc. proposed by the company.

【0004】各方法により使用されている用語が異なる
ため、ここでは標準方法であるJBIG方法に用いられ
ている用語を使用するが、これによりJBIG方法の算
術符号に限定されるものではない。
[0004] Since the terms used in each method are different, the terms used in the JBIG method, which is a standard method, are used here, but the present invention is not limited to the arithmetic code of the JBIG method.

【0005】算術符号化では、原理的には算術演算部で
乗算処理を必要とするが、乗算処理を行うと算術演算部
のハードウェア規模が大きくなったり、乗算処理にかか
る処理時間が長くなるといった問題があるため、該算術
演算を加減演算に置き換え簡略化した方法が主流になっ
ている。
[0005] In arithmetic coding, multiplication processing is required in principle in the arithmetic operation unit. However, when the multiplication processing is performed, the hardware scale of the arithmetic operation unit becomes large or the processing time required for the multiplication processing becomes long. Therefore, a simplified method in which the arithmetic operation is replaced with an addition / subtraction operation has become mainstream.

【0006】算術演算部内部には、符号化シンボル系列
に対応する領域幅(オージェント)を保持するAレジス
タと、コードを発生する基となる値を保持するコードレ
ジスタ(Cレジスタ)とがあり、符号化予測値に対する
符号化対象シンボルのはずれ確率を確率推定値LSZと
して入力し、前記シンボルが予測値に一致したかあるい
は不一致かという情報に基づいて、確率推定値LSZと
前記2つのレジスタの値から算術演算(加減算)を行な
い、該2つのレジスタの値を更新する。
In the arithmetic operation unit, there are an A register for holding an area width (orgent) corresponding to a coded symbol sequence, and a code register (C register) for holding a value from which a code is generated. , The loss probability of the symbol to be coded with respect to the coded prediction value is input as a probability estimation value LSZ, and based on information indicating whether the symbol matches the prediction value or not, the probability estimation value LSZ and the two registers An arithmetic operation (addition / subtraction) is performed from the value to update the values of the two registers.

【0007】確率推定値LSZは、符号化対象シンボル
の周辺シンボル情報を数値化したコンテキストごとに持
つindex(状態)値から所定の対応表を用いて変換
することによって得られる。コンテキストごとに持つ状
態値は、所定条件に基づいて更新することにより、符号
化シンボル系列固有のパターンを学習することができ、
符号化効率を上げることができる。
[0007] The probability estimation value LSZ is obtained by converting the peripheral symbol information of the symbol to be encoded from an index (state) value possessed for each digitized context using a predetermined correspondence table. By updating the state value possessed for each context based on a predetermined condition, it is possible to learn a pattern unique to the coded symbol sequence,
Encoding efficiency can be increased.

【0008】JBIG方法では、Aレジスタの値を10
000Hに初期化し、算術演算(符号化あるいは復号
化)の結果、Aレジスタの値が8000H未満になる
と、正規化処理と称して、Aレジスタの値が8000H
以上になるまで左シフトを行い、その際に現コンテキス
トの状態値を更新する。
In the JBIG method, the value of the A register is set to 10
If the value of the A register is less than 8000H as a result of the arithmetic operation (encoding or decoding), the normalization process is called and the value of the A register is 8000H.
Until the above, the left shift is performed, and at that time, the state value of the current context is updated.

【0009】また、Aレジスタの値を左シフトする時、
それと同時にCレジスタの値も左シフトする。この時、
Cレジスタの再上位からシフトアウトされるデータが符
号化データとなる。
When the value of the A register is shifted to the left,
At the same time, the value of the C register is also shifted left. At this time,
Data shifted out from the uppermost position of the C register becomes encoded data.

【0010】符号化対象のシンボルの値が0または1し
かとらない、2値の画素データである場合、上記算術符
号化処理を行なう符号化ブロックの構成は、図1に示す
ものとなる。
If the value of the symbol to be encoded is binary pixel data having a value of only 0 or 1, the configuration of the encoding block for performing the arithmetic encoding process is as shown in FIG.

【0011】<符号化ブロック>同図において、101
は符号化対象画素の2値データPIXを入力する端子、
102は2値データPIX信号、103は符号化対象画
素の周辺画素データからなるコンテキスト情報、105
はコンテキスト情報ごとに予測値とindex(状態)
値を保持する予測状態メモリ、106は予測状態メモリ
105から出力される予測値、107は予測状態メモリ
105から出力される状態値、109は出力された状態
値107を確率推定値LSZに変換する確率推定部、1
11は確率推定部109から出力される確率推定値LS
Z、113は排他的NORゲート、114は前記2値デ
ータPIXと予測値106との一致/不一致を表わす信
号、115は算術符号化演算部、117は算術符号化演
算部115から出力される符号化データ(コードデー
タ)、118は前記予測状態メモリ105の更新を要求
するための信号、119は現在の予測値106と状態値
107から更新後の予測値と状態値を求める予測状態更
新部、120は予測状態更新部119から出力される、
更新後の予測値・状態値信号および予測状態メモリ10
5に該信号を書き込む制御信号等である。
<Encoding block> In FIG.
Is a terminal for inputting binary data PIX of the pixel to be encoded,
Reference numeral 102 denotes a binary data PIX signal; 103, context information including peripheral pixel data of an encoding target pixel;
Is the predicted value and index (state) for each context information
A predicted state memory that holds a value, 106 is a predicted value output from the predicted state memory 105, 107 is a state value output from the predicted state memory 105, and 109 is a conversion of the output state value 107 into a probability estimation value LSZ. Probability estimator, 1
11 is a probability estimation value LS output from the probability estimation unit 109
Z and 113 are exclusive NOR gates, 114 is a signal representing the match / mismatch between the binary data PIX and the predicted value 106, 115 is an arithmetic coding operation unit, and 117 is a code output from the arithmetic coding operation unit 115. Coded data (code data) 118, a signal for requesting an update of the predicted state memory 105, 119 a predicted state update unit for obtaining an updated predicted value and a state value from the current predicted value 106 and the state value 107, 120 is output from the prediction state update unit 119;
Updated predicted value / state value signal and predicted state memory 10
5 is a control signal for writing the signal.

【0012】次に、図1に示す算術符号化処理ブロック
の動作説明を行なう。
Next, the operation of the arithmetic coding processing block shown in FIG. 1 will be described.

【0013】符号化対象画素の2値データPIXは端子
101から入力され、排他的NORゲート113に入力
する。一方、コンテキスト情報である103の符号化対
象画素の周辺画素データCXi(i=1,2,…,n)
が予測状態メモリ105に与えられる。
The binary data PIX of the pixel to be encoded is inputted from a terminal 101 and inputted to an exclusive NOR gate 113. On the other hand, the peripheral pixel data CXi (i = 1, 2,..., N) of the encoding target pixel 103 which is the context information
Is given to the prediction state memory 105.

【0014】予測状態メモリ105は周辺画素データか
らなるコンテキスト情報103をアドレスとして、符号
化対象画素に対する予測値106とindex(状態)
値107を出力する。なお、この状態値107はそれま
でに符号化処理して学習した内容に基づいて決まる。予
測値106は、0または1の2値であり、排他的NOR
ゲート113に入力される。
The prediction state memory 105 uses the context information 103 consisting of peripheral pixel data as an address and a prediction value 106 for an encoding target pixel and an index (state).
The value 107 is output. Note that this state value 107 is determined based on the contents learned by encoding processing up to that time. The predicted value 106 is a binary value of 0 or 1, and the exclusive NOR
Input to the gate 113.

【0015】一方、状態値107は確率推定部109に
送られ、ここで確率推定値111に変換される。確率推
定値111は、2値データPIXが予測値106と一致
しない確率を表わす。状態値107から確率推定値11
1への変換は、ROMテーブルあるいはデコーダを用い
て行なわれる。また、状態値107は予測状態更新部1
19にも入力される。
On the other hand, the state value 107 is sent to a probability estimating unit 109, where it is converted into a probability estimated value 111. The probability estimation value 111 represents the probability that the binary data PIX does not match the prediction value 106. Probability estimate 11 from state value 107
Conversion to 1 is performed using a ROM table or a decoder. The state value 107 is the predicted state update unit 1
19 is also input.

【0016】排他的NORゲート113では、2値デー
タPIXと予測値106との一致/不一致の関係を調
べ、一致していれば1を、不一致であれば0を算術符号
化演算部115へ送る。
The exclusive NOR gate 113 checks the match / mismatch relationship between the binary data PIX and the predicted value 106, and sends 1 to the arithmetic coding operation unit 115 if they match and 0 if they do not match. .

【0017】算術符号化演算部115では、一致/不一
致情報114と、確率推定部109から入力される確率
推定値111とに基づいて、後述する符号化処理のため
の算術演算を行ない、符号化データ117を出力する。
The arithmetic coding operation unit 115 performs an arithmetic operation for an encoding process to be described later based on the coincidence / mismatch information 114 and the probability estimation value 111 input from the probability estimation unit 109. The data 117 is output.

【0018】算術符号化演算部115における算術演算
の過程で上述の正規化処理が行なわれると、信号118
を出力し、予測状態更新部119に更新要求を行なう。
When the above-described normalization processing is performed in the course of the arithmetic operation in arithmetic coding operation section 115, signal 118 is output.
Is output, and an update request is sent to the predicted state update unit 119.

【0019】予測状態更新部119は、入力される状態
値107、予測値106及び一致/不一致情報114か
ら、更新後の状態値と予測値を求めて、更新データを予
測状態メモリ105に送る。更新データを受信した予測
状態メモリ105は、更新要求に基づいて保持内容を更
新する。なお、予測状態更新部119において入力状態
値106から更新後の状態値を求めるには、ROMテー
ブルあるいはデコーダ等を用いる。
The predicted state updating unit 119 obtains an updated state value and predicted value from the input state value 107, predicted value 106, and match / mismatch information 114, and sends updated data to the predicted state memory 105. The predicted state memory 105 that has received the update data updates the held content based on the update request. In order to obtain the updated state value from the input state value 106 in the predicted state updating unit 119, a ROM table, a decoder, or the like is used.

【0020】次に、図2に算術符号化演算部115の一
構成例を示し、その動作について述べる。
Next, FIG. 2 shows an example of the configuration of the arithmetic coding operation unit 115, and its operation will be described.

【0021】同図において、201は領域幅(オージェ
ント)を保持するAレジスタ、203はコードを発生す
る基となる値を保持するコードレジスタ(Cレジス
タ)、205はAレジスタ201の出力値から確率推定
値111を減算する減算器、207はCレジスタ203
の出力値に減算器205の出力を加算する加算器、20
9はAレジスタ201へ入力するデータを選択するセレ
クタ、211はCレジスタへ入力するデータを選択する
セレクタ、213はCレジスタからシフトアウトされる
コード情報を取り込むシフトレジスタ、215は出力レ
ジスタ、217はシフトレジスタ213に取り込んだビ
ット数をカウントするカウンタ、218はシフトクロッ
クを入力する端子、219はマスク回路、220はマス
ク回路219によりマスクされたシフトクロック、22
1は、Aレジスタ201の出力値が8000H(16
進)以上であることを検出する検出器である。
Referring to FIG. 1, reference numeral 201 denotes an A register for holding an area width (an agent); 203, a code register (C register) for holding a value from which a code is generated; A subtracter 207 for subtracting the probability estimation value 111;
Adder for adding the output of the subtractor 205 to the output value of
9 is a selector for selecting data to be input to the A register 201, 211 is a selector for selecting data to be input to the C register, 213 is a shift register for capturing code information shifted out from the C register, 215 is an output register, and 217 is an output register. A counter for counting the number of bits fetched into the shift register 213, a terminal 218 for inputting a shift clock, a mask circuit 219, a shift clock masked by the mask circuit 219, a shift clock 22
1 indicates that the output value of the A register 201 is 8000H (16
Hex) or more.

【0022】初期化後の状態では、Aレジスタ201の
値は10000H、Cレジスタ203の値は0Hであ
り、カウンタ217の値は0である。
In the state after the initialization, the value of the A register 201 is 10000H, the value of the C register 203 is 0H, and the value of the counter 217 is 0.

【0023】入力された一致/不一致情報114と確率
推定値111に基づいて所定の算術演算を行うことによ
り、1画素を符号化するごとにAレジスタ201とCレ
ジスタ203の値を更新する。そして、Aレジスタ20
1の正規化処理に伴いCレジスタ203の上位からシフ
トアウトされるデータをNビット単位にまとめて出力し
たものが符号化データ117となる。
A predetermined arithmetic operation is performed based on the input match / mismatch information 114 and the estimated probability value 111, thereby updating the values of the A register 201 and the C register 203 every time one pixel is encoded. And the A register 20
The data that is shifted out from the upper part of the C register 203 in the normalization process of 1 and output in N bits is the encoded data 117.

【0024】まず入力された確率推定値111は減算器
205とセレクタ209に入力する。
First, the input probability estimation value 111 is input to the subtractor 205 and the selector 209.

【0025】減算器205では、Aレジスタ201の出
力値から、確率推定値111を減算し、その結果をセレ
クタ209と加算器207へ送る。
The subtractor 205 subtracts the probability estimation value 111 from the output value of the A register 201, and sends the result to the selector 209 and the adder 207.

【0026】セレクタ209には確率推定値111も与
えられており、一致/不一致情報114が1の時は減算
結果を、0の時は確率推定値111を選択し出力する。
The selector 209 is also provided with an estimated probability value 111. When the match / mismatch information 114 is 1, the subtraction result is selected, and when the match / mismatch information 114 is 0, the estimated probability value 111 is selected and output.

【0027】加算器207では、減算器205から送ら
れてきた減算結果をCレジスタ203の出力値に加算
し、加算結果をセレクタ211に送る。セレクタ211
には、Cレジスタ203の出力値も直接与えられてお
り、前記一致/不一致情報114が1の時はCレジスタ
203の出力値を、0の時は加算結果を選択し出力す
る。
The adder 207 adds the subtraction result sent from the subtractor 205 to the output value of the C register 203, and sends the addition result to the selector 211. Selector 211
, The output value of the C register 203 is directly given. When the match / mismatch information 114 is 1, the output value of the C register 203 is selected, and when the match / mismatch information 114 is 0, the addition result is selected and output.

【0028】セレクタ209、211それぞれの出力
は、それぞれ次のサイクルで、Aレジスタ201、Cレ
ジスタ203に取り込まれる。
The outputs of the selectors 209 and 211 are taken into the A register 201 and the C register 203 in the next cycle, respectively.

【0029】Aレジスタ201の値が8000H未満の
時は、検出器221でそれを検出し、次の算術演算を行
う前に正規化処理を行う。それに対し、Aレジスタ20
1の値が8000H以上の時は、次の算術演算を行う。
If the value of the A register 201 is less than 8000H, the detector 221 detects it and performs a normalization process before performing the next arithmetic operation. In contrast, the A register 20
When the value of 1 is 8000H or more, the following arithmetic operation is performed.

【0030】正規化処理の1つの実現方法は、Aレジス
タ201とCレジスタ203のそれぞれにシフト機能を
有するレジスタを用い、該レジスタにシフト用のクロッ
ク220を与え、Aレジスタ201の値が8000Hに
なるまで、AレジスタとCレジスタを左シフトするもの
である。
One way of realizing the normalization processing is to use a register having a shift function for each of the A register 201 and the C register 203, apply a shift clock 220 to the register, and set the value of the A register 201 to 8000H. Until the A register and the C register are shifted to the left.

【0031】シフト用のクロック220は、検出器22
1の出力に基づいて、端子218から入力されるシフト
クロックをマスク回路219にてマスクすることにより
得られる。
The shift clock 220 is supplied to the detector 22
The shift clock input from the terminal 218 is masked by the mask circuit 219 on the basis of the output of 1 to obtain the shift clock.

【0032】Aレジスタ201の値が8000H未満の
あいだ、入力シフトクロックはマスク回路219を通過
し、Aレジスタ201、Cレジスタ203並びに、シフ
トレジスタ213、カウンタ217に送られる。このシ
フトクロックが入力する毎に、Aレジスタ201、Cレ
ジスタ203、シフトレジスタ213は1ビット左へシ
フトし、カウンタ217は1つカウントアップする。
While the value of the A register 201 is less than 8000H, the input shift clock passes through the mask circuit 219 and is sent to the A register 201, the C register 203, the shift register 213, and the counter 217. Each time the shift clock is input, the A register 201, the C register 203, and the shift register 213 shift one bit to the left, and the counter 217 counts up by one.

【0033】シフトレジスタ213へ入力するデータ
は、Cレジスタ203の最上位ビットであるため、シフ
トクロック220が各ブロックへ送られるたびに、Cレ
ジスタ203の上位ビットデータがシフトレジスタ21
3に移ることになる。
The data input to the shift register 213 is the most significant bit of the C register 203. Therefore, each time the shift clock 220 is sent to each block, the upper bit data of the C register 203 is transferred to the shift register 21.
It will move to 3.

【0034】シフトレジスタ213に移されたビット数
はシフトクロック220によりカウントアップするカウ
ンタ217でカウントされていることになり、該カウン
ト値が所定の値に達したところで、カウンタ217は出
力レジスタ215へデータ取り込みパルス222を送
る。
The number of bits transferred to the shift register 213 is counted by the counter 217 which counts up by the shift clock 220. When the count value reaches a predetermined value, the counter 217 sends the output register 215 to the output register 215. A data capture pulse 222 is sent.

【0035】出力レジスタ215はパルス222が入力
されるタイミングで、シフトレジスタ213から送られ
る所定ビット数のデータを一括して受け取り、次のデー
タ取り込みパルス222が入力されるまで、該データを
保持する。
The output register 215 collectively receives data of a predetermined number of bits sent from the shift register 213 at the timing when the pulse 222 is input, and holds the data until the next data input pulse 222 is input. .

【0036】なお、Aレジスタ201の値が8000H
未満であることを検出器221が検出したときに、不図
示の回路により予測状態更新部119へ更新を要求する
信号118が出力される。
The value of the A register 201 is 8000H
When the detector 221 detects that the difference is less than the predetermined value, a signal 118 requesting an update is output to the prediction state update unit 119 by a circuit (not shown).

【0037】以上説明したような算術演算及び正規化処
理により、端子101に入力された2値データPIXが
符号化され、符号化データ117が算術符号化演算部1
15より所定ビット単位で出力される。
The binary data PIX input to the terminal 101 is encoded by the arithmetic operation and the normalizing process as described above, and the encoded data
15 is output in predetermined bit units.

【0038】<復号化ブロック>次に、図1に示す符号
化ブロックに対応した復号化ブロックの構成を図3に示
し、その動作を説明する。
<Decoding Block> Next, the configuration of a decoding block corresponding to the coding block shown in FIG. 1 is shown in FIG. 3 and its operation will be described.

【0039】図3に示す復号化ブロックと、図1に示す
符号化ブロックとの大きな違いは、以下の2点である。
There are two major differences between the decoded block shown in FIG. 3 and the encoded block shown in FIG.

【0040】(1)算術符号化演算部115の替わり
に、算術復号化演算部301を用いる。(2)符号化デ
ータ306を入力して、着目画素データの値を求める。
その他の構成は基本的に同じであるため、上記違いにつ
いて簡単に説明する。
(1) An arithmetic decoding operation unit 301 is used in place of the arithmetic coding operation unit 115. (2) The coded data 306 is input, and the value of the pixel data of interest is obtained.
Since the other configurations are basically the same, the differences will be briefly described.

【0041】まず算術復号化演算部301内部の動作説
明から行なう。図4に、算術復号化演算部301の構成
を示す。
First, the operation of the arithmetic decoding unit 301 will be described. FIG. 4 shows the configuration of the arithmetic decoding operation unit 301.

【0042】同図において、減算器401は図2の算術
符号化演算部115における加算器207を、入力バッ
ファレジスタ403は図2の出力レジスタ215を、ま
た、シフトレジスタ405はシフトレジスタ213をそ
れぞれ置き換えたものである。
In the figure, a subtractor 401 corresponds to an adder 207 in the arithmetic coding operation unit 115 of FIG. 2, an input buffer register 403 corresponds to an output register 215 of FIG. 2, and a shift register 405 corresponds to a shift register 213. It has been replaced.

【0043】入力された確率推定値111は、減算器2
05とセレクタ209に入力される。減算器205では
Aレジスタ201の出力値から、入力された確率推定値
111を減算し、その減算結果をセレクタ209と減算
器401へ送る。
The input probability estimation value 111 is subtracted from the subtractor 2
05 and the selector 209. The subtractor 205 subtracts the input probability estimation value 111 from the output value of the A register 201, and sends the subtraction result to the selector 209 and the subtractor 401.

【0044】図1の算術符号化演算部115では、一致
/不一致情報114に基づいてセレクタ209が動作し
ていたが、算術復号化演算部301では、減算器401
における減算結果が正か負かによって、セレクタ209
の動作が決まる。
In the arithmetic coding operation unit 115 shown in FIG. 1, the selector 209 operates based on the match / mismatch information 114. In the arithmetic decoding operation unit 301, the subtractor 401
Selector 209 depending on whether the result of the subtraction is positive or negative.
Is determined.

【0045】減算器401では、Cレジスタ203の出
力値から減算器205の出力値を減算し、減算結果をセ
レクタ211に送り、更に減算結果が正か負かを表す信
号302を出力する。信号302は、減算結果が正の場
合0、負の場合1という値をとる。
The subtractor 401 subtracts the output value of the subtractor 205 from the output value of the C register 203, sends the subtraction result to the selector 211, and outputs a signal 302 indicating whether the subtraction result is positive or negative. The signal 302 has a value of 0 when the subtraction result is positive and 1 when the subtraction result is negative.

【0046】この信号302を制御信号として、減算結
果が正の場合、セレクタ209は確率推定値111を選
択し、減算結果が負の場合、減算器205の出力を選択
して出力する。
Using the signal 302 as a control signal, the selector 209 selects the estimated probability value 111 when the subtraction result is positive, and selects and outputs the output of the subtractor 205 when the subtraction result is negative.

【0047】セレクタ211もセレクタ209と同じ信
号302により制御される。セレクタ211には減算器
401の出力すなわち減算結果と、Cレジスタ203の
出力値が入力されている。そして、減算結果が正の場
合、減算器401の出力を選択し、減算結果が負の場
合、Cレジスタ203の出力を選択して出力する。
The selector 211 is also controlled by the same signal 302 as the selector 209. The selector 211 receives the output of the subtractor 401, that is, the subtraction result, and the output value of the C register 203. When the subtraction result is positive, the output of the subtractor 401 is selected, and when the subtraction result is negative, the output of the C register 203 is selected and output.

【0048】セレクタ209、211の出力は、それぞ
れ次のサイクルで、Aレジスタ201、Cレジスタ20
3に取り込まれ、算術符号化演算部115と同様に正規
化処理を行う。
The outputs of the selectors 209 and 211 output the A register 201 and the C register 20 in the next cycle, respectively.
3 and performs a normalization process in the same manner as the arithmetic coding operation unit 115.

【0049】算術符号化演算部115では、正規化処理
時に符号化データ117を出力したが、算術復号化演算
部301では、正規化処理にともない符号化データ30
6を取り込んでゆく。
The arithmetic coding operation unit 115 outputs the encoded data 117 at the time of the normalization processing, but the arithmetic decoding operation unit 301 outputs the encoded data 30 by the normalization processing.
Take in 6.

【0050】符号化データ306は、図1の算術符号化
演算部115から出力され、不図示の記憶ユニットに一
旦格納される。そしてしかるべきタイミングで読み出さ
れて、復号化ブロック内の算術復号化演算部301に与
えられる。あるいは、符号化データをそのまま遠隔地ま
で転送し、遠隔地にて復号化ブロックを用いて、元の2
値画像データに復元される。復元された2値画像データ
は、モニタやプリンタ等の画像表示機器に送られ、可視
画像に変換される。
The encoded data 306 is output from the arithmetic encoding unit 115 in FIG. 1 and is temporarily stored in a storage unit (not shown). Then, the data is read out at an appropriate timing and supplied to the arithmetic decoding operation unit 301 in the decoding block. Alternatively, the encoded data is directly transferred to a remote place, and the original 2
It is restored to value image data. The restored binary image data is sent to an image display device such as a monitor or a printer, and is converted into a visible image.

【0051】算術復号化演算部301に与えられた符号
化データ306は、入力バッファレジスタ403を経由
してシフトレジスタ405に取り込まれ、正規化処理に
よって、シフトレジスタ405の最上位ビットがCレジ
スタ203の最下位ビットにシフト入力される。正規化
処理の制御方法は算術符号化演算部115と同じである
ため、その説明は省略する。なお、この正規化処理が行
われるタイミングで、不図示の回路により予測状態更新
部119へ更新を要求する信号315が出力される。
The encoded data 306 given to the arithmetic decoding operation unit 301 is taken into the shift register 405 via the input buffer register 403, and the most significant bit of the shift register 405 is changed to the C register 203 by normalization processing. Is shifted into the least significant bit of The control method of the normalization process is the same as that of the arithmetic coding operation unit 115, and thus the description thereof is omitted. At the timing when the normalization process is performed, a signal 315 requesting an update to the prediction state update unit 119 is output by a circuit (not shown).

【0052】以上説明した算術復号化演算部301の演
算処理により、復号中の着目画素値が予測値に一致する
か否か(一致/不一致)という情報が信号302として
得られ、算術復号化演算部301から出力され、図3の
復号化ブロックにて使用される。この信号302は、復
号中の着目画素値が予測値に一致する場合1、一致しな
い場合0という値をとる。
By the arithmetic processing of the arithmetic decoding operation unit 301 described above, information indicating whether or not the pixel value of interest during decoding matches the predicted value (match / mismatch) is obtained as a signal 302, and the arithmetic decoding operation is performed. The output from the unit 301 is used in the decoding block of FIG. The signal 302 has a value of 1 when the pixel value of interest during decoding matches the predicted value, and has a value of 0 when not matching.

【0053】復号化ブロックでは、符号化ブロックと同
様に、予測状態メモリ105は周辺画素データのコンテ
キスト情報をアドレスとして、復号中の着目画素に対す
る予測値106を出力する。
In the decoding block, similarly to the coding block, the prediction state memory 105 outputs the prediction value 106 for the pixel of interest being decoded, using the context information of the peripheral pixel data as an address.

【0054】該予測値106は、算術復号化演算部30
1から出力される一致/不一致信号302との間で、排
他的NORゲート305にて論理演算される。この論理
演算の結果は復号化した着目画素の値であり、復号画素
値が信号304として得られる。
The predicted value 106 is calculated by the arithmetic decoding
The exclusive NOR gate 305 performs a logical operation on the match / mismatch signal 302 output from 1. The result of this logical operation is the value of the decoded pixel of interest, and the decoded pixel value is obtained as signal 304.

【0055】その他のブロックの動作は、図1の符号化
ブロックと同じなので、説明を省略する。
The operation of the other blocks is the same as that of the coding block shown in FIG.

【0056】次に、本発明人が提案している特開平11
−103257に記載の、確率推定値から更新後の確率
推定値を得る手段を有する算術復号化ブロックの構成を
図5に示す。図5において、501は、現在の確率推定
値から次(更新後)の確率推定値を求める予測確率更新
部、503は、予測値と確率推定値を格納する確率推定
値メモリであり、その他の要素は、図3で同一番号を付
した要素と同じ機能を有する。
Next, Japanese Patent Application Laid-Open No.
FIG. 5 shows the configuration of an arithmetic decoding block having means for obtaining an updated probability estimate from a probability estimate described in -103257. In FIG. 5, reference numeral 501 denotes a predicted probability update unit that obtains the next (updated) probability estimate from the current probability estimate, and 503 denotes a probability estimated value memory that stores the predicted value and the probability estimated value. The elements have the same function as the elements with the same numbers in FIG.

【0057】図5の構成図を図3の構成図と比較する
と、確率推定値メモリ503と算術復号化演算部301
との間に、確率推定部109が無いということが分か
る。
When comparing the block diagram of FIG. 5 with the block diagram of FIG. 3, the probability estimation value memory 503 and the arithmetic decoding operation unit 301
It can be seen that there is no probability estimating unit 109 between the two.

【0058】算術復号化演算部301の入出力信号は図
3に示す構成の場合と全く同じであるため、確率推定部
109が無くなった影響は、他の構成要素である予測状
態メモリ105や予測状態更新部119に現われる。
Since the input / output signals of the arithmetic decoding operation unit 301 are exactly the same as those in the configuration shown in FIG. 3, the effect of eliminating the probability estimating unit 109 is affected by the prediction state memory 105 and the prediction state memory 105 which are the other components. Appears in the state update unit 119.

【0059】算術復号化演算部301に必要な確率推定
値111は、新たに設けた予測確率推定値メモリ503
から読み出す。そのため、確率推定部109が不要にな
る。
The probability estimation value 111 required for the arithmetic decoding operation unit 301 is stored in a newly provided prediction probability estimation value memory 503.
Read from Therefore, the probability estimation unit 109 becomes unnecessary.

【0060】確率推定値メモリ503に確率推定値を格
納するには、初期化時に、初期状態値に対応した確率推
定値を確率推定値メモリ503に書き込み、該メモリ更
新時に、更新後の確率推定値を書き込む。
To store the probability estimation value in the probability estimation value memory 503, the probability estimation value corresponding to the initial state value is written into the probability estimation value memory 503 at initialization, and the updated probability estimation value is updated at the time of updating the memory. Write the value.

【0061】更新後の確率推定値は、予測確率更新部5
01で求める。予測確率更新部501は予測状態更新部
119の替わりに用いるもので、現在の確率推定値、予
測値等を入力して、更新後の確率推定値、予測値を求め
るものである。現在の確率推定値から更新後の確率推定
値への変換はROMテーブルあるいはデコーダ等を用い
て行なう。
The updated probability estimate is calculated by the prediction probability update unit 5
Determine with 01. The prediction probability update unit 501 is used instead of the prediction state update unit 119, and inputs a current probability estimated value, predicted value, and the like, and obtains an updated probability estimated value and predicted value. The conversion from the current probability estimation value to the updated probability estimation value is performed using a ROM table or a decoder.

【0062】よって、上記構成を有する復号化ブロック
においては、状態値107が物理的には存在しなくな
る。しかし、現在の確率推定値から更新後の確率推定値
への変換テーブル(ROMテーブルあるいはデコーダの
作成に必要となる)は、状態値の推移を確率推定値の推
移に置き換えて作成するため、変換テーブルに内包され
ることになる。
Therefore, in the decoded block having the above configuration, the state value 107 does not physically exist. However, since the conversion table from the current probability estimation value to the updated probability estimation value (necessary for creating a ROM table or a decoder) is created by replacing the transition of the state value with the transition of the probability estimation value, It will be included in the table.

【0063】状態値の番号には一意性がある。すなわ
ち、異なる状態には、必ず異なる状態値番号が割り当て
られる。しかし、確率推定値には一意性があるとは言え
ない。すなわち、異なる状態に対して同一の確率推定値
を割り当てることが原理的に可能である。しかし、JB
IG方法においては、異なる状態に対して異なる確率推
定値が割り当てられているので、JBIG方法に限れば
確率推定値に一意性があるといえる。
The number of the state value has uniqueness. That is, different state values are always assigned to different states. However, the probability estimates are not unique. That is, it is possible in principle to assign the same probability estimate to different states. But JB
Since different probability estimates are assigned to different states in the IG method, it can be said that the probability estimates have uniqueness only in the JBIG method.

【0064】確率推定値に一意性があれば、予測確率更
新部501で行う処理に何も問題はないが、一意性が無
い場合には問題が生じる。すなわち、入力確率推定値に
対して更新確率推定値が何種類も存在してしまうという
問題である。これを避けるには、同じ確率推定値を区別
するための識別信号が必要になる。同じ確率推定値をと
るものが2n個ある場合は、識別のためにnビットの識
別信号が必要となる。この識別信号は予測確率更新部5
01におけるROMテーブルあるいはデコーダ等に入力
され、何種類もある更新確率推定値のうちの一つを特定
する。さらに出力側の更新確率推定値が一意でない場合
には、この確率推定値を識別するnビットの信号が必要
となり、識別信号は確率推定値メモリ503にも格納さ
れる。
If there is uniqueness in the probability estimation value, there is no problem in the processing performed by the prediction probability updating unit 501, but if there is no uniqueness, a problem occurs. That is, there is a problem that there are many types of update probability estimates for the input probability estimates. To avoid this, an identification signal is needed to distinguish between the same probability estimates. If 2n pieces have the same probability estimation value, an n-bit identification signal is required for identification. This identification signal is sent to the prediction probability update unit 5
01, which is input to a ROM table, a decoder, or the like, and specifies one of many types of update probability estimation values. Further, when the update probability estimation value on the output side is not unique, an n-bit signal for identifying the probability estimation value is required, and the identification signal is also stored in the probability estimation value memory 503.

【0065】図1及び図3に示す構成を有する符号化/
復号化ブロックにおける、1画素を符号化/復号化する
のに要する主な処理は、以下の4ステップになる。
An encoding / coding system having the configuration shown in FIGS.
The main processing required to encode / decode one pixel in the decoding block includes the following four steps.

【0066】(1)予測値と状態値をメモリから読み出
す。 (2)状態値を確率推定値に変換する。 (3)確率推定値を用いて算術符号化/復号化演算を行
なう。 (4)予測値と状態値を更新し、メモリに書き込む(正
規化処理時のみ必要)。 上記(4)における予測値と状態値の更新処理は、
(3)における算術符号化演算と並列に行なうことがで
きるので、タイミング的に(4)で行なう処理はメモリ
への書き込み処理だけになる。
(1) The predicted value and the state value are read from the memory. (2) Convert state values to probability estimates. (3) Perform arithmetic coding / decoding operation using the estimated probability value. (4) Update the predicted value and the state value and write them to the memory (necessary only during normalization processing). The update processing of the predicted value and the state value in the above (4)
Since the arithmetic coding operation in (3) can be performed in parallel, the processing performed in (4) in terms of timing is only the write processing to the memory.

【0067】これに対して、図5に示す構成を有する復
号化ブロックでは、以下の3ステップになる。
On the other hand, the decoding block having the configuration shown in FIG. 5 has the following three steps.

【0068】(1)予測値と確率推定値をメモリから読
み出す。 (2)確率推定値を用いて算術復号化演算を行なう。 (3)予測値と確率推定値を更新し、メモリに書き込む
(正規化処理時のみ必要)。 従って、図1及び図3に示す構成に比べて、状態値を確
率推定値に変換する処理に相当する時間だけ、速く符号
化することができる。
(1) The predicted value and the estimated probability value are read from the memory. (2) Perform an arithmetic decoding operation using the probability estimation value. (3) Update the predicted value and the estimated probability value and write them to the memory (necessary only during normalization processing). Therefore, as compared with the configuration shown in FIGS. 1 and 3, encoding can be performed faster by a time corresponding to a process of converting a state value into a probability estimation value.

【0069】また、本発明人はさらに特開平11−10
3257により、図6に示すような構成を有する算術復
号化ブロックも提案している。
The present inventor further disclosed in Japanese Unexamined Patent Publication No.
3257 also proposes an arithmetic decoding block having a configuration as shown in FIG.

【0070】一般に、予測値を求める基になるコンテキ
スト情報としては、着目画素と相関の強い真上及び左隣
の画素を用いるため、復号化処理をラスター走査順序で
行なう場合、単純な逐次処理では、着目画素の復号化が
終了しなければ、右隣の画素を復号化処理するために必
要な予測値等を読み出すことができない。
In general, pixels immediately above and to the left of the pixel having a strong correlation with the pixel of interest are used as context information from which a prediction value is obtained. Therefore, when decoding processing is performed in a raster scanning order, simple sequential processing cannot be used. If the decoding of the pixel of interest is not completed, a prediction value or the like necessary for decoding the pixel on the right side cannot be read.

【0071】そこで、予測値等を格納したメモリを複数
のメモリ群に分割して、該メモリ群から複数の予測値等
を並列に読み出す。この複数の予測値は、復号化処理中
の着目画素値が0と1の場合のそれぞれに対応するもの
で、着目画素値が確定した時に、複数の予測値から一つ
の予測値を選択する、というものである。
Therefore, the memory storing the predicted values and the like is divided into a plurality of memory groups, and a plurality of predicted values and the like are read from the memory groups in parallel. The plurality of predicted values correspond to the case where the pixel value of interest during the decoding process is 0 and 1, and when the pixel value of interest is determined, one predicted value is selected from the plurality of predicted values. That is.

【0072】図6は、上記メモリ構成を有し、メモリに
確率推定値を格納する算術復号化ブロックを示す。
FIG. 6 shows an arithmetic decoding block having the above memory configuration and storing the probability estimation value in the memory.

【0073】同図において、601は第1の確率推定値
メモリ、602は第2の確率推定値メモリ、603は上
記2つのメモリから読み出した2組の予測値・確率推定
値の一方を選択するセレクタ、605はセレクタ603
の出力と予測確率更新部501の出力のいずれか一方を
選択するセレクタ、607はセレクタ605の出力をラ
ッチするDタイプフリップフロップ(D−F/F)、6
10はコンテキスト情報、609はコンテキスト情報6
10を1サイクル遅延させる遅延回路である。その他の
構成要素は、図5に示す復号化ブロックにおいて同一番
号で示すものと同じであるため、説明を省略する。
In the figure, reference numeral 601 denotes a first probability estimated value memory, 602 denotes a second probability estimated value memory, and 603 selects one of two sets of predicted values / probability estimated values read from the above two memories. A selector 605 is a selector 603
Selector 607 selects a D-type flip-flop (DF / F) that latches the output of the selector 605;
10 is context information, 609 is context information 6
10 is a delay circuit that delays one cycle. The other components are the same as those indicated by the same reference numerals in the decoding block shown in FIG.

【0074】図6の構成では、予測値と確率推定値を先
行してメモリから読み出すため、メモリ読み出し用のコ
ンテキスト情報と、メモリの更新時に使用するメモリ書
き込み用のコンテキスト情報が1サイクルずれ、別の信
号になる。そこで、2つのコンテキスト情報(アドレ
ス)を同時に入力できる2ポートメモリを用いるものと
する。
In the configuration of FIG. 6, since the predicted value and the estimated probability value are read from the memory in advance, the context information for reading the memory and the context information for writing the memory used when updating the memory are shifted by one cycle. Signal. Therefore, a two-port memory that can simultaneously input two pieces of context information (address) is used.

【0075】信号610は、復号化処理中の着目画素値
を除く他のコンテキスト情報であり、これまでに出てき
たコンテキスト情報103に較べ、1ビット情報が少な
い。コンテキスト情報610は、メモリ読み出し用のア
ドレス信号として、第1及び第2の確率推定値メモリ6
01,602に与えられる。一方、コンテキスト情報6
10は、遅延回路609にて1サイクル遅延されて、メ
モリ書き込み用のアドレス信号として、第1及び第2の
確率推定値メモリ601、602に与えられる。
The signal 610 is other context information except for the pixel value of interest during the decoding process, and has less 1-bit information than the context information 103 that has been output so far. The context information 610 includes the first and second probability estimation value memories 6 as address signals for memory reading.
01,602. On the other hand, context information 6
10 is delayed by one cycle in a delay circuit 609, and supplied to the first and second probability estimation value memories 601 and 602 as an address signal for writing into the memory.

【0076】第1の確率推定値メモリ601には、復号
化処理中の着目画素値が0の時に対応する予測値と確率
推定値を記憶しており、第2の確率推定値メモリ603
には、復号化処理中の着目画素値が1の時に対応する予
測値と確率推定値を記憶している。すなわち、2つのメ
モリ601、602で記憶する全情報は、図5に示す確
率推定値メモリ503で記憶する情報と同じである。
The first probability estimation value memory 601 stores the prediction value and the probability estimation value corresponding to the pixel value of interest during the decoding process being 0, and the second probability estimation value memory 603.
Stores a predicted value and a probability estimated value corresponding to a pixel value of interest during decoding processing of 1. That is, all information stored in the two memories 601 and 602 is the same as the information stored in the probability estimation value memory 503 shown in FIG.

【0077】第1及び第2の確率推定値メモリ601,
602から、コンテキスト情報610をアドレスとし
て、予測値と確率推定値を並列に読み出す。
The first and second probability estimation value memories 601,
From 602, the prediction value and the probability estimation value are read in parallel using the context information 610 as an address.

【0078】該メモリからの読み出しと並行して、着目
画素の復号化処理(算術復号化演算)を行ない、メモリ
読み出しデータが確定する頃に復号画素値が確定する。
この復号画素値に基づいて、セレクタ603にて2つの
メモリ出力の一方を選択する。
The decoding process (arithmetic decoding operation) for the pixel of interest is performed in parallel with the reading from the memory, and the decoded pixel value is determined when the memory read data is determined.
Based on the decoded pixel value, the selector 603 selects one of the two memory outputs.

【0079】セレクタ603の出力は、図5における確
率推定値メモリ503から読み出した内容と基本的には
等しいが、更新データを書き込む前に次の確率推定値を
先行して読み出すため、更新データがセレクタ603の
出力に反映されない場合がある。
The output of the selector 603 is basically the same as the content read from the probability estimation value memory 503 in FIG. 5, but the next probability estimation value is read before the update data is written. It may not be reflected in the output of the selector 603.

【0080】それは、予測値・確率推定値を読み出して
選択する元となった全コンテキスト情報と、メモリ更新
時に用いる全コンテキスト情報が完全に一致した場合で
ある。これは、(読み出しアドレス=書き込みアドレ
ス)かつ(現サイクルの復号画素値=1サイクル前の復
号画素値)かつ(メモリ更新時)という条件に言い替え
られる。
This is the case where all the context information from which the predicted value / probability estimation value is read and selected and all the context information used at the time of updating the memory completely match. This translates into the following conditions: (read address = write address), (decoded pixel value in current cycle = decoded pixel value one cycle before), and (when memory is updated).

【0081】上記条件が成り立つことを不図示の検出器
で検出する場合には、セレクタ605によりメモリ出力
を更新データに切り換える。セレクタ605の出力は、
D−F/F607でラッチして、算術復号化演算部30
1に与え、次の画素を復号化するための算術演算が行な
われる。
When a detector (not shown) detects that the above condition is satisfied, the selector 605 switches the memory output to updated data. The output of the selector 605 is
Latched by the DF / F 607, the arithmetic decoding operation unit 30
1 to perform an arithmetic operation to decode the next pixel.

【0082】該算術演算をしている間、復号化中の画素
値を含まない、1ビット少ないコンテキスト情報610
に基づき2つの確率推定値メモリ601,602から新
たな確率推定値を読み出す。
While the arithmetic operation is being performed, the context information 610, which does not include the pixel value being decoded, is one bit less.
, A new probability estimation value is read from the two probability estimation value memories 601 and 602.

【0083】上記構成では、上述したように復号化のた
めの算術演算と確率推定値メモリ601,602からの
読み出しを並行して行なうことができるので、さらに高
速な復号化処理が可能となる。
In the above configuration, as described above, the arithmetic operation for decoding and the reading from the probability estimation value memories 601 and 602 can be performed in parallel, so that a higher-speed decoding process can be performed.

【0084】以上は2値の画像データを符号化及び復号
化する例について説明したが、次に、複数のビットプレ
ーンで構成される多値画像を画素順序で符号化及び復号
化する場合について説明する。画素順序とはプレーン順
序と異なり、例えば2ビットプレーンでは図7(a)に
示すように、・・・,{i−1}[2],{i−1}
[1],{i}[2],{i}[1],{i+1}
[2],{i+1}[1],{i+2}[2],・・・
({ }[1]は上位ビットプレーン、{ }[2]は
下位ビットプレーンを表わす)のように、下位ビットと
上位ビットを交互に符号化し、画素を逐次符号化するも
のである。
In the above, an example of encoding and decoding binary image data has been described. Next, a case of encoding and decoding a multi-valued image composed of a plurality of bit planes in pixel order will be described. I do. The pixel order is different from the plane order. For example, in a 2-bit plane, as shown in FIG. 7A,..., {I−1} [2], {i−1}
[1], {i} [2], {i} [1], {i + 1}
[2], {i + 1} [1], {i + 2} [2], ...
({} [1] indicates an upper bit plane,}} [2] indicates a lower bit plane), and lower bits and upper bits are alternately encoded, and pixels are sequentially encoded.

【0085】この時に問題となるのは、各々のプレーン
において何を参照してコンテキスト情報とするかいうこ
とである。各々のプレーンを独立に符号化する場合に
は、上位ビットを符号化する時には上位ビットプレーン
だけを、下位ビットを符号化する時には下位ビットプレ
ーンだけを参照すればよい。
The problem at this time is what to refer to the context information in each plane. When encoding each plane independently, it is sufficient to refer only to the upper bit plane when encoding the upper bits and to refer only to the lower bit plane when encoding the lower bits.

【0086】ところが、下位ビットを符号化する時に上
位ビット、それも同一画素の上位ビットを参照したい場
合には、上位ビットを下位ビットよりも前に符号化する
必要がある。これに対しては、前記符号化順序を図7
(b)に示すように、・・・,{i−1}[1],{i
−1}[2],{i}[1],{i}[2],{i+
1}[1],{i+1}[2],{i+2}[1],・
・のように変更すればよい。該符号化順序の変更によっ
て、復号化が可能となる。
However, if it is desired to refer to the upper bits when encoding the lower bits, and also to refer to the upper bits of the same pixel, the upper bits must be encoded before the lower bits. On the other hand, the encoding order is changed as shown in FIG.
As shown in (b),..., {I-1} [1], {i
-1} [2], {i} [1], {i} [2], {i +
1 {[1], {i + 1} [2], {i + 2} [1],.
・ It can be changed as follows. By changing the encoding order, decoding becomes possible.

【0087】[0087]

【発明が解決しようとする課題】上記従来例による復号
化ブロックを用いて、多値画像の複数ビットプレーンを
算術復号化しようとすると、ある着目ビットを復号化す
る時、復号化処理に必要なすべてのコンテキスト情報が
確定するのは最悪、直前のビットを復号化してからであ
る。そのため、直前のビットを復号化してからでないと
学習メモリを読み出すことができないので、ハードウェ
アで復号化処理を行なう場合、復号化動作速度を高速化
する大きな妨げになっていた。
When arithmetic decoding is to be performed on a plurality of bit planes of a multi-valued image using the above-described decoding block according to the conventional example, when decoding a certain bit of interest, the decoding process is required. In the worst case, all context information is determined after decoding the immediately preceding bit. Therefore, since the learning memory cannot be read out without decoding the immediately preceding bit, when performing the decoding processing by hardware, it has been a great hindrance to increase the decoding operation speed.

【0088】本発明は上記問題点を鑑みてなされたもの
であり、単純な構成を有するハードウェアで、符号化さ
れた多値画像の復号化速度を高速化することを目的とす
る。
The present invention has been made in view of the above problems, and has as its object to increase the decoding speed of an encoded multi-valued image with hardware having a simple configuration.

【0089】[0089]

【課題を解決するための手段】上記目的を達成するため
に、複数のビットプレーンからなる多値画像情報をコン
テキスト情報を参照して算術符号化/復号化する本発明
の算術符号化/復号化方法では、符号化/復号化対象画
素に対するコンテキスト情報が前記符号化/復号化対象
画素の少なくとも2サイクル先行して確定するように、
符号化/復号化順序を定めた。
In order to achieve the above object, the arithmetic coding / decoding of the present invention for arithmetically coding / decoding multi-valued image information composed of a plurality of bit planes with reference to context information. The method wherein the context information for the pixel to be encoded / decoded is determined at least two cycles ahead of the pixel to be encoded / decoded,
The encoding / decoding order was determined.

【0090】好ましくは、前記符号化/復号化順序は、
ビットプレーンの数がmである場合に、画素の番号を
{ }、ビットプレーンを[ ]で表すとすると、
{i}[j]の次は、j≠mの場合{i−1}[j+
1]、j=mの場合{i+1}[1]である。
Preferably, the encoding / decoding order is:
If the number of bit planes is m, the pixel number is represented by {} and the bit plane is represented by [].
Next to {i} [j], if j ≠ m, then {i-1} [j +
1] and j = m, {i + 1} [1].

【0091】好適な一様態によれば、符号化/復号化す
る画素の数がnである場合、{i−1}≦0及び{i+
1}>nでは、所定値を符号化/復号化する。
According to a preferred embodiment, if the number of pixels to be encoded / decoded is n, {i−1} ≦ 0 and {i +
When 1}> n, a predetermined value is encoded / decoded.

【0092】また、好適な別の一様態によれば、符号化
/復号化する画素の数がnである場合、{i−1}≦0
及び{i+1}>nでは、符号化/復号化をスキップす
る。
According to another preferred embodiment, when the number of pixels to be encoded / decoded is n, {i-1} ≦ 0
And {i + 1}> n, the encoding / decoding is skipped.

【0093】また、上記目的を達成するために、本発明
の算術符号化装置は、上記算術符号化方法により算術符
号化を行う。また、本発明の算術復号化装置は、上記算
術復号化方法により算術復号化を行う。
In order to achieve the above object, the arithmetic coding device of the present invention performs arithmetic coding by the above-mentioned arithmetic coding method. Further, the arithmetic decoding device of the present invention performs arithmetic decoding by the above-described arithmetic decoding method.

【0094】更に、上記目的を達成するために、複数の
ビットプレーンからなる符号化された多値画像情報をコ
ンテキスト情報を参照して算術復号化する本発明の算術
復号化装置は、復号化対象画素に対するコンテキスト情
報が前記復号化対象画素の処理タイミングより少なくと
も2サイクル先行して確定する順番で復号化を行う。
Further, in order to achieve the above object, an arithmetic decoding apparatus according to the present invention for arithmetically decoding encoded multi-valued image information comprising a plurality of bit planes with reference to context information, comprises: Decoding is performed in an order in which the context information for the pixel is determined at least two cycles before the processing timing of the decoding target pixel.

【0095】好適な一様態によれば、予測値及び確率推
定値を保持する、各ビットプレーン毎に設けられた確率
推定値メモリと、前記確定したコンテキスト情報に基づ
いて予測値及び確率推定値を更新する予測推定更新手段
とを有し、前記確定したコンテキスト情報をアドレスと
して、前記確率推定値メモリから予測値及び確率推定値
を読み出す。
According to a preferred embodiment, a probability estimation value memory provided for each bit plane for holding the prediction value and the probability estimation value, and the prediction value and the probability estimation value are stored based on the determined context information. A prediction estimation updating unit that updates the prediction value and the probability estimation value from the probability estimation value memory using the determined context information as an address.

【0096】また、好適な別の一様態によれば、予測値
及び状態値を保持する、各ビットプレーン毎に設けられ
た予測状態メモリと、前記確定したコンテキスト情報に
基づいて予測値及び状態値を更新する予測状態更新手段
とを有し、前記確定したコンテキスト情報をアドレスと
して、前記予測状態メモリから予測値及び状態値を読み
出す。
According to another preferred embodiment, a prediction state memory provided for each bit plane, which holds a prediction value and a state value, and a prediction value and a state value based on the determined context information. And a predicted value and a state value are read from the predicted state memory using the determined context information as an address.

【0097】好ましくは、前記復号化順序は、ビットプ
レーンの数がmである場合に、画素の番号を{ }、ビ
ットプレーンを[ ]で表すとすると、{i}[j]の
次は、j≠mの場合{i−1}[j+1]、j=mの場
合{i+1}[1]である。
Preferably, the decoding order is such that, when the number of bit planes is m, if the pixel number is represented by {} and the bit plane is represented by [], the following of {i} [j] is as follows: When j ≠ m, {i−1} [j + 1], and when j = m, {i + 1} [1].

【0098】また、好適な一様態によれば、復号化する
画素の数がnである場合、{i−1}≦0及び{i+
1}>nでは、所定値を符号化/復号化する。
According to a preferred embodiment, when the number of pixels to be decoded is n, {i−1} ≦ 0 and {i +
When 1}> n, a predetermined value is encoded / decoded.

【0099】また、好適な別の一様態によれば、復号化
する画素の数がnである場合、{i−1}≦0及び{i
+1}>nでは、復号化をスキップする。
According to another preferred embodiment, when the number of pixels to be decoded is n, {i-1} ≦ 0 and {i
If +1}> n, the decoding is skipped.

【0100】[0100]

【発明の実施の形態】以下、添付図面を参照して本発明
の好適な実施の形態を詳細に説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Preferred embodiments of the present invention will be described below in detail with reference to the accompanying drawings.

【0101】なお上述の通り、算術符号化方法の種類に
より使用されている用語が異なるため、本発明の実施の
形態においても標準方法であるJBIG方法に用いられ
ている用語を使用するが、これによりJBIG方法の算
術符号に限定されるものではない。
As described above, since the terms used differ depending on the type of arithmetic coding method, the terms used in the JBIG method, which is the standard method, are also used in the embodiment of the present invention. Is not limited to the arithmetic code of the JBIG method.

【0102】[第1の実施形態]本第1の実施形態で
は、1画素が2ビットからなる多値画像の算術符号化方
法と該算術符号化方法に対応する算術復号化装置を示
す。
[First Embodiment] In the first embodiment, an arithmetic coding method for a multi-valued image in which one pixel is composed of 2 bits and an arithmetic decoding device corresponding to the arithmetic coding method will be described.

【0103】図8は、本第1の実施形態における符号化
/復号化の順序を表わす図である。同図における矢印の
示す順序で算術符号化/復号化をする。すなわち、・・
・,{i}[1],{i−1}[2],{i+1}
[1],{i}[2],{i+2}[1],{i+1}
[2],{i+3}[1],・・・の順序で符号化/復
号化する。ここで、{ }[1]は上位ビットプレーン
を、{ }[2]は下位ビットプレーンを表わす。
FIG. 8 is a diagram showing the order of encoding / decoding in the first embodiment. Arithmetic encoding / decoding is performed in the order indicated by the arrows in FIG. That is,
・, {I} [1], {i−1} [2], {i + 1}
[1], {i} [2], {i + 2} [1], {i + 1}
Encoding / decoding is performed in the order of [2], {i + 3} [1],. Here, {} [1] represents an upper bit plane, and {} [2] represents a lower bit plane.

【0104】1番目の画素の最上位ビット即ち{1}
[1]の次は{−1}[2]を符号化/復号化すること
となるが、これは存在しない画素の下位ビットにあた
る。また、画素数をnとしたとき最後から2番目の画素
の下位ビット即ち{n−1}[2]の次は{n+1}
[1]を符号化/復号化することとなり、これも存在し
ない画素である。これらのビットは本来符号化する必要
はないが、ダミービットとして例えば0を符号化してお
き、復号化時には復号化されたダミービットを捨てて元
画像を得てもよい。この方法によれば画像の先端及び終
端において例外的な動作を行なわなくても済むので装置
構成が簡単になるという利点がある。
The most significant bit of the first pixel, that is, {1}
After [1], {-1} [2] is encoded / decoded, which corresponds to the lower bits of non-existent pixels. When the number of pixels is n, the next lower bit of the second to last pixel, that is, {n-1} [2] is {n + 1}.
[1] is encoded / decoded, and this is also a nonexistent pixel. Although these bits do not need to be coded originally, for example, 0 may be coded as dummy bits, and at the time of decoding, the decoded dummy bits may be discarded to obtain the original image. According to this method, there is an advantage that the apparatus configuration can be simplified since an exceptional operation does not need to be performed at the leading end and the trailing end of the image.

【0105】上位ビットプレーンを符号化する時にはそ
れ以前に符号化した上位ビットのみを参照する。すなわ
ち、上位ビットプレーンを符号化する時のコンテキスト
情報はそれ以前に符号化した上位ビットのみを用いて構
成する。
When encoding the upper bit plane, only the upper bits encoded before that are referred to. That is, the context information when encoding the upper bit plane is configured using only the upper bits encoded earlier.

【0106】下位ビットプレーンを符号化する時にはそ
れ以前に符号化した下位ビットと、該下位ビット以前に
符号化した上位ビットとを参照する。具体的には上記順
序で符号化を行う場合、{i}[2]を符号化する時に
参照できる下位ビットは{i−1}[2]であり、また
上位ビットは、参照する下位ビット{i−1}[2]を
符号化する以前に符号化した上位ビット、すなわち
{i}[1]以前の上位ビットである。実際的には{i
−1}[2]以前の下位ビットの一部と、{i}[1]
とを参照する。
When the lower bit plane is encoded, the lower bits encoded before that and the upper bits encoded before the lower bits are referred to. Specifically, when encoding is performed in the above order, the lower bits that can be referenced when encoding {i} [2] are {i−1} [2], and the upper bits are the lower bits to be referenced. The upper bits encoded before encoding i−1} [2], that is, the upper bits before {i} [1]. Actually {i
-1} [2] A part of lower bits before [2] and {i} [1]
And reference.

【0107】従来は、復号対象となるビット情報を復号
化する1つ前のサイクルで必要なコンテキスト情報が確
定していたが、本第1の実施形態では、2つ前のサイク
ルで必要なコンテキスト情報が確定する。復号化順序は
符号化順序とまったく同じであるため、図8に示すよう
に・・・,{i}[1],{i−1}[2],{i+
1}[1],{i}[2],{i+2}[1],{i+
1}[2],{i+3}[1],・・・の順序で復号化
処理が行なわれる。
Conventionally, the necessary context information was determined in the previous cycle of decoding the bit information to be decoded. However, in the first embodiment, the necessary context information is determined in the second previous cycle. The information is confirmed. Since the decoding order is exactly the same as the encoding order, as shown in FIG. 8,..., {I} [1], {i−1} [2], and {i +
1} [1], {i} [2], {i + 2} [1], {i +
The decoding process is performed in the order of 1 {2}, {i + 3} [1],.

【0108】まず、上記復号化順序により、上位ビット
プレーンの符号化データを復号する場合について考え
る。上位ビットの復号化にはそれ以前に符号化した上位
ビットのみを参照するため、{i+1}[1]を復号化
するのに必要なコンテキスト情報は、{i}[1]及び
それ以前の上位ビット情報である。この場合、{i+
1}[1]を復号化するのに必要な一番最後の情報であ
る{i}[1]の復号化は、{i+1}{i}を処理す
るタイミングに対して2サイクル前に終了している。
First, a case where the encoded data of the upper bit plane is decoded according to the above decoding order will be described. Since the decoding of the upper bits refers only to the upper bits encoded before, the context information necessary to decode {i + 1} [1] is {i} [1] and the upper bits before that. Bit information. In this case, {i +
The decoding of {i} [1], which is the last information necessary for decoding 1 {[1], ends two cycles before the timing of processing {i + 1} i}. ing.

【0109】次に、下位ビットプレーンの符号化データ
を復号する場合について考える。{i}[2]を符号化
する時に参照する上位ビット{i}[1]の復号化は、
{i}[2]に対し3サイクル前に終了している。ま
た、下位ビットプレーン上の参照ビットの復号化は2サ
イクル前に終了している。従って、図8に示す復号化順
序では、着目ビットの復号化処理に必要なコンテキスト
情報は、いずれのプレーンにおいても2サイクル前には
確定していることが解る。
Next, consider the case of decoding the encoded data of the lower bit plane. Decoding of upper bits {i} [1] referred to when encoding {i} [2] is performed by:
It ends three cycles before {i} [2]. The decoding of the reference bits on the lower bit plane has been completed two cycles before. Therefore, in the decoding order shown in FIG. 8, it is understood that the context information necessary for the decoding process of the bit of interest is determined two cycles before in any plane.

【0110】上記のように参照ビット情報を用いてコン
テキストを生成し、符号化したデータをハードウェアで
復号化する方法においては、信号処理のタイミングが大
変重要である。この場合は特にコンテキスト情報が確定
するタイミングが重要となる。上記復号化順序で復号化
処理可能な復号化ブロックの構成について、図9を参照
して説明する。
In the method of generating a context using the reference bit information as described above and decoding the encoded data by hardware, the timing of signal processing is very important. In this case, the timing at which the context information is determined is particularly important. The configuration of a decoding block that can be decoded in the above decoding order will be described with reference to FIG.

【0111】同図において、801は上位ビットプレー
ンを復号化する時のコンテキスト情報、803は上記コ
ンテキスト情報801をラッチするD−F/F、805
は下位ビットプレーンを復号化する時のコンテキスト情
報、807はコンテキスト情報805をラッチするD−
F/F、809は上位ビットプレーンを復号化する時に
用いる確率推定値メモリ、811は下位ビットプレーン
を復号化する時に用いる確率推定値メモリ、813は上
記2つの確率推定値メモリの出力の一方を選択するセレ
クタ、815はセレクタ813の出力と更新した確率推
定値の一方を選択するセレクタ、817はセレクタ81
5から出力する確率推定値をラッチするD−F/F、8
19は予測・確率更新部から出力する更新された予測値
と確率推定値をラッチするD−F/Fである。なお、そ
の他の構成要素は図6において同一番号で示す要素と同
様の機能を有する。
In the figure, reference numeral 801 denotes context information for decoding the upper bit plane; 803, a DF / F for latching the context information 801;
Is context information when decoding the lower bit plane, and 807 is D- which latches context information 805.
F / F 809 is a probability estimation value memory used when decoding the upper bit plane, 811 is a probability estimation value memory used when decoding the lower bit plane, and 813 is one of the outputs of the two probability estimation value memories. The selector to be selected, 815 is a selector for selecting one of the output of the selector 813 and the updated probability estimation value, and 817 is the selector 81
DF / F latching the probability estimation value output from 5, 8
Reference numeral 19 denotes a DF / F that latches the updated predicted value output from the prediction / probability update unit and the estimated probability value. The other components have the same functions as the components denoted by the same reference numerals in FIG.

【0112】上記構成を有する復号化ブロックにおける
復号化処理のタイミングを、画素ビット{i+1}
[1]から画素ビット{i+3}[1]を処理する場合
について、図10を参照して説明する。
The timing of the decoding process in the decoding block having the above configuration is determined by the pixel bit {i + 1}.
The case of processing pixel bit {i + 3} [1] from [1] will be described with reference to FIG.

【0113】まず最初のサイクルで、{i+1}[1]
に対応する予測値及び確率推定値を確率推定値メモリ8
09から読み出す。セレクタ813は1サイクル毎に確
率推定値メモリ809及び811を交互に選択するよう
に制御されており、ここでは確率推定値メモリ809か
らの出力を選択する。また、セレクタ815は、図6の
セレクタ615と同様に、(読み出しアドレス=書き込
みアドレス)かつ(現サイクルの復号画素値=1サイク
ル前の復号画素値)かつ(メモリ更新時)の条件が成り
立つ場合にのみD−F/F819の出力を選択する。従
って、通常はスイッチ813の出力を選択している。読
み出された予測値及び確率推定値はD−F/F817に
一旦ラッチされる。
First, in the first cycle, {i + 1} [1]
The predicted value and the probability estimated value corresponding to
Read from 09. The selector 813 is controlled so as to alternately select the probability estimated value memories 809 and 811 every cycle, and selects the output from the probability estimated value memory 809 here. Also, the selector 815, when the conditions of (read address = write address), (decoded pixel value of the current cycle = decoded pixel value of one cycle before), and (at the time of memory update) are satisfied, similarly to the selector 615 of FIG. Only the output of the DF / F 819 is selected. Therefore, normally, the output of the switch 813 is selected. The read prediction value and probability estimation value are temporarily latched by the DF / F 817.

【0114】次のサイクル2でD−F/F817にラッ
チされた予測値及び確率推定値は算術復号化演算部30
1に入力し、{i+1}[1]の符号化データが算術復
号化される。この算術演算の結果、復号した画素値がコ
ンテキスト情報の一部として得られるが、サイクルの後
半に確定するので、このコンテキスト情報を安定した信
号として使用するために、一度D−F/F803にラッ
チする。これによりD−F/F803から出力されるコ
ンテキスト情報は1サイクル遅れた信号となるが、サイ
クルの先頭から安定した信号として使用することができ
る。
In the next cycle 2, the predicted value and the probability estimated value latched by the DF / F 817 are calculated by the arithmetic decoding operation unit 30.
1 and the encoded data of {i + 1} [1] is arithmetically decoded. As a result of this arithmetic operation, the decoded pixel value is obtained as a part of the context information. However, since the decoded pixel value is determined in the latter half of the cycle, it is once latched in the DF / F 803 to use this context information as a stable signal. I do. As a result, the context information output from the DF / F 803 is a signal delayed by one cycle, but can be used as a stable signal from the beginning of the cycle.

【0115】また、該確率推定値も同じくサイクルの後
半に確定するため、それを安定した信号として使用する
ためにD−F/F918でラッチする。
Since the probability estimation value is also determined in the second half of the cycle, it is latched by the DF / F 918 to use it as a stable signal.

【0116】また、サイクル2の間に、上記処理と平行
して{i}[2]に対応する予測値及び確率推定値を確
率推定値メモリ811から読み出し、D−F/F817
によりラッチする。
During the cycle 2, the predicted value and the estimated probability value corresponding to {i} [2] are read from the estimated probability value memory 811 in parallel with the above processing, and the DF / F 817 is read.
Latch.

【0117】次のサイクル3で、D−F/F819にラ
ッチされた{i+1}[1]に対する更新予測・確率推
定値が正規化処理に対応して確率推定値メモリ809に
書き込まれる。同時に、D−F/F817にラッチされ
た予測値及び確率推定値は算術復号化演算部301に入
力し、{i}[2]の符号化データが算術復号化され、
復号した画素値をコンテキスト情報の一部として、他の
情報と一緒にD−F/F807によりラッチする。
In the next cycle 3, the updated prediction / probability estimation value for {i + 1} [1] latched in the DF / F 819 is written to the probability estimation value memory 809 in accordance with the normalization processing. At the same time, the prediction value and the probability estimation value latched by the DF / F 817 are input to the arithmetic decoding operation unit 301, and the encoded data of {i} [2] is arithmetically decoded.
The decoded pixel value is latched by the DF / F 807 together with other information as a part of the context information.

【0118】また、サイクル3の間に、上記処理と平行
して{i+2}[1]に対応する予測値及び確率推定値
を確率推定値メモリ809から読み出し、D−F/F8
17によりラッチする。
During the cycle 3, the predicted value and the estimated probability value corresponding to {i + 2} [1] are read out from the estimated probability value memory 809 in parallel with the above processing, and the DF / F8
Latch by 17.

【0119】次のサイクル4では、D−F/F819に
ラッチされた{i}[2]に対する更新予測・確率推定
値が正規化処理に呼応して確率推定値メモリ811に書
き込まれる。同時に、D−F/F817にラッチされた
予測値及び確率推定値は算術復号化演算部301に入力
する。なお、図10に示すように、{i+2}[1]の
符号化データを復号化する際に用いられる予測値及び確
率推定値はサイクル2で確定した{i+1}[1]のコ
ンテキスト情報に基づく値である。この予測値及び確率
推定値を使用して{i+2}[1]は算術復号化され、
さらに、予測確率更新部501により得られる更新予測
・確率推定値をD−F/F819によりラッチする。
In the next cycle 4, the updated prediction / probability estimation value for {i} [2] latched in the DF / F 819 is written to the probability estimation value memory 811 in response to the normalization processing. At the same time, the prediction value and the probability estimation value latched by the DF / F 817 are input to the arithmetic decoding operation unit 301. As shown in FIG. 10, the prediction value and the probability estimation value used when decoding the encoded data of {i + 2} [1] are based on the context information of {i + 1} [1] determined in cycle 2. Value. {I + 2} [1] is arithmetically decoded using the predicted value and the probability estimate,
Further, the updated prediction / probability estimation value obtained by the prediction probability update unit 501 is latched by the DF / F 819.

【0120】また、サイクル4の間に、上記処理と平行
して{i+1}[2]に対応する予測値及び確率推定値
を確率推定値メモリ811から読み出し、D−F/F8
17によりラッチする。
During cycle 4, the predicted value and the estimated probability value corresponding to {i + 1} [2] are read out from the estimated probability value memory 811 in parallel with the above processing, and the DF / F8
Latch by 17.

【0121】次のサイクル5では、D−F/F819に
ラッチされた{i+2}[1]に対応する更新予測・確
率推定値が正規化処理に呼応して確率推定値メモリ80
9に書き込まれる。同時に、D−F/F817にラッチ
された予測値及び確率推定値は算術復号化演算部301
に入力する。なお、図10に示すように、{i+1}
[2]の符号化データを復号化する際に用いられる予測
値及び確率推定値は、サイクル2で確定した{i+1}
[1]のコンテキスト情報及びサイクル3で確定した
{i}[2]のコンテキスト情報に基づく値である。こ
の予測値及び確率推定値を使用して{i+1}[2]は
算術復号化され、さらに、予測確率更新部501により
得られる更新予測・確率推定値をD−F/F819によ
りラッチする。
In the next cycle 5, the update prediction / probability estimation value corresponding to {i + 2} [1] latched in the DF / F 819 is stored in the probability estimation value memory 80 in response to the normalization processing.
9 is written. At the same time, the prediction value and the probability estimation value latched by the DF / F 817 are output to the arithmetic decoding operation unit 301.
To enter. As shown in FIG. 10, {i + 1}
The prediction value and the probability estimation value used when decoding the encoded data of [2] are {i + 1} determined in cycle 2
This is a value based on the context information of [1] and the context information of {i} [2] determined in cycle 3. {I + 1} [2] is arithmetically decoded using the prediction value and the probability estimation value, and the updated prediction / probability estimation value obtained by the prediction probability updating unit 501 is latched by the DF / F 819.

【0122】また、サイクル5の間に、上記処理と平行
して{i+3}[1]に対応する予測値及び確率推定値
を確率推定値メモリ809から読み出し、D−F/F8
17によりラッチする。
During cycle 5, the predicted value and the estimated probability value corresponding to {i + 3} [1] are read out from the estimated probability value memory 809 in parallel with the above processing, and the DF / F8
Latch by 17.

【0123】上記手順による処理を、すべての画素ビッ
トについて繰り返し行う。
The processing according to the above procedure is repeated for all the pixel bits.

【0124】このように、2サイクル先行していたコン
テキスト情報としての復号画素値も、それを一度D−F
/F803でラッチし、メモリ読み出し後にもう一度D
−F/F817でラッチすることによって、2サイクル
の遅れが生じ、最終的には、算術復号化演算部301に
おける位相と一致する。
As described above, the decoded pixel value as the context information which has been two cycles ahead is also converted to the DF once.
/ F803, and after reading the memory,
Latching at -F / F817 causes a delay of two cycles, and finally matches the phase in arithmetic decoding operation unit 301.

【0125】上記の通り本発明の第1の実施形態によれ
ば、多値画像を構成する複数ビットプレーンをプレーン
間で数画素ずつずらして符号化する。すなわちあるビッ
トプレーンを符号化する時に、コンテキスト情報として
参照する別のビットプレーンを復号化対象画素ビットの
ビットプレーンより数画素先行して符号化し、復号化時
は符号化時と同じ順序で復号化処理を行なうため、ハー
ドウェアで復号化処理を行なう際に、復号化動作速度を
大幅に高速化することが可能になる。
As described above, according to the first embodiment of the present invention, a plurality of bit planes constituting a multi-valued image are coded by being shifted by several pixels between the planes. That is, when encoding a certain bit plane, another bit plane referred to as context information is encoded several pixels ahead of the bit plane of the pixel bit to be decoded, and the decoding is performed in the same order as the encoding. Since the processing is performed, the decoding operation speed can be significantly increased when the decoding processing is performed by hardware.

【0126】[第2の実施形態]本第2の実施形態で
は、1画素が4ビットからなる多値画像の算術符号化方
法と該算術符号化方法に対応する算術復号化装置を示
す。
[Second Embodiment] In the second embodiment, an arithmetic coding method for a multi-valued image in which one pixel is composed of 4 bits and an arithmetic decoding device corresponding to the arithmetic coding method will be described.

【0127】図11に本第2の実施形態における符号化
復号化順序を表わす図を示す。同図における矢印の示す
順序で算術符号化/復号化をする。すなわち、・・・,
{i}[1],{i−1}[2],{i−2}[3],
{i−3}[4],{i+1}[1],{i}[2],
{i−1}[3],{i−2}[4],{i+2}
[1],{i+1}[2],{i}[3],{i−1}
[4],{i+3}[1],・・・の順序で符号化/復
号化をする。ここで、{ }[1]は最上位ビットプレ
ーンを{ }[4]は最下位ビットプレーンを表わす。
FIG. 11 is a diagram showing the encoding / decoding order in the second embodiment. Arithmetic encoding / decoding is performed in the order indicated by the arrows in FIG. That is,
{I} [1], {i-1} [2], {i-2} [3],
{I-3} [4], {i + 1} [1], {i} [2],
{I-1} [3], {i-2} [4], {i + 2}
[1], {i + 1} [2], {i} [3], {i-1}
Encoding / decoding is performed in the order of [4], {i + 3} [1],. Here, {} [1] represents the most significant bit plane and {} [4] represents the least significant bit plane.

【0128】最上位ビットプレーンを符号化する時には
それ以前に符号化した最上位ビットのみを参照する。す
なわち、最上位ビットプレーンを符号化する時のコンテ
キスト情報はそれ以前に符号化した最上位ビットのみを
用いて構成する。
When encoding the most significant bit plane, only the most significant bit encoded before is referred to. That is, the context information for encoding the most significant bit plane is configured using only the most significant bit encoded before.

【0129】最上位以外のビットプレーンを符号化する
時にはそれ以前に符号化した同一プレーンのビットと該
ビット以前に符号化した上位のビットを参照する。上記
符号化順序の場合、{i}[2]を符号化する時に参照
できる同一プレーンのビットは{i−1}[2]であ
り、また上位ビットは、参照する前記ビット{i−1}
[2]を符号化する以前に符号化した上位ビット、すな
わち{i}[1]以前の上位ビットである。実際的には
{i−1}[2]以前の同一プレーンのビットの一部
と、{i}[1]とを参照する。
When encoding a bit plane other than the most significant bit plane, reference is made to bits of the same plane encoded earlier and higher-order bits encoded earlier than the bit. In the above coding order, the bits of the same plane that can be referenced when encoding {i} [2] are {i−1} [2], and the upper bits are the bits {i−1} to be referenced.
Upper bits encoded before encoding [2], that is, upper bits before {i} [1]. Actually, a part of the bits of the same plane before {i-1} [2] and {i} [1] are referred to.

【0130】ただし第1実施例と同様、画像の先端と終
端付近では存在しない画素のビットを処理するタイミン
グが発生する。すなわち画像の先端では、{1}
[1],{0}[2],{−1}[3],{−2}
[4],{2}[1],{1}[2],{0}[3],
{−1}[4],{3}[1],{2}[2],{1}
[3],{0}[4],{4}[1],{3}[2],
{2}[3],{1}[4],という順番で処理を行な
うとすると、2番目、3番目、4番目、7番目、8番
目、12番目に処理を行うビットは実際には存在しない
画素である。第1の実施形態と同様に0のダミービット
を符号化しても良いが、本第2の実施形態ではビット情
報がないところは符号化を行なわず、復号化時に於いて
は後述する図12に示す有効画素タイミング発生回路1
053とマスク回路1054によって確率推定値を0に
している。確率推定値が0であれば、算術復号化演算部
301内のAレジスタ201及びCレジスタ202の値
は変化しないので符号化処理を行なわないのと同じこと
になる。この構成はダミービットを符号化する方法に対
して余計な符号を発生させないので符号長を短くできる
という利点がある。
However, as in the first embodiment, there occurs a timing for processing a bit of a pixel that does not exist near the leading edge and the trailing edge of an image. That is, at the top of the image, {1}
[1], {0} [2], {-1} [3], {-2}
[4], {2} [1], {1} [2], {0} [3],
{-1} [4], {3} [1], {2} [2], {1}
[3], {0} [4], {4} [1], {3} [2],
If processing is performed in the order of {2} [3], {1} [4], the bits to be processed in the second, third, fourth, seventh, eighth, and twelfth bits actually exist. It is a pixel that does not. As in the first embodiment, a dummy bit of 0 may be encoded. However, in the second embodiment, where there is no bit information, the encoding is not performed. Effective pixel timing generation circuit 1 shown
053 and the mask circuit 1054 set the probability estimation value to 0. If the probability estimation value is 0, the values of the A register 201 and the C register 202 in the arithmetic decoding operation unit 301 do not change, which is the same as not performing the encoding process. This configuration has the advantage that the code length can be shortened because no extra code is generated compared to the method of coding the dummy bits.

【0131】上記第1の実施形態では、復号対象となる
ビット情報を復号化するのに必要なコンテキスト情報の
2つ前のサイクルで確定していたが、本第2の実施形態
では、必要なコンテキスト情報が4つ前のサイクルで確
定する。復号化順序は符号化順序とまったく同じである
ため、前記・・・,{i}[1],{i−1}[2],
{i−2}[3],{i−3}[4],{i+1}
[1],{i}[2],{i−1}[3],{i−2}
[4],{i+2}[1],{i+1}[2],{i}
[3],{i−1}[4],{i+3}[1],・・・
の順序で復号化処理が行なわれる。
In the first embodiment described above, the context information necessary for decoding the bit information to be decoded is determined two cycles before the context information. However, in the second embodiment, the necessary information is determined. The context information is determined four cycles before. Since the decoding order is exactly the same as the encoding order, the above-mentioned..., {I} [1], {i−1} [2],
{I-2} [3], {i-3} [4], {i + 1}
[1], {i} [2], {i-1} [3], {i-2}
[4], {i + 2} [1], {i + 1} [2], {i}
[3], {i-1} [4], {i + 3} [1], ...
Are performed in this order.

【0132】まず、最上位ビットプレーンに着目して考
える。最上位ビットの復号化にはそれ以前に符号化した
最上位ビットのみを参照するため、{i+1}[1]を
復号化するのに必要なコンテキスト情報は、{i}
[1]及びそれ以前の最上位ビット情報であり、一番間
近の情報である{i}[1]の復号化は{i+1}
[1]に対して4サイクル前に終了している。
First, consider the most significant bit plane. Since the decoding of the most significant bit refers only to the most significant bit coded before, the context information necessary to decode {i + 1} [1] is {i}
The decoding of {i} [1], which is the most significant bit information before [1] and before, is {i + 1}
It ends four cycles before [1].

【0133】次に、他のビットプレーンについて考え
る。{i}[j+1]を符号化する時に参照した上位ビ
ット{i}[j]の復号化は、{i}[j+1]に対し
5サイクル前に終了している。同一プレーン上の参照ビ
ットは4サイクル前に終了している。従って、着目ビッ
トの復号化処理に必要なコンテキスト情報は、いずれの
プレーンにおいても4サイクル前には確定していること
が解る。
Next, another bit plane will be considered. Decoding of the upper bits {i} [j] referred to when encoding {i} [j + 1] is completed 5 cycles before {i} [j + 1]. The reference bit on the same plane ends four cycles before. Therefore, it can be understood that the context information necessary for the decoding process of the bit of interest is determined four cycles before in any plane.

【0134】第2の実施形態が、ビットプレーンが2ビ
ットから4ビットへ拡張されたことの他に第1の実施形
態と異なる点は、メモリに保持する値としては状態値を
用いること、バイパスの経路がないこと、有効画素のみ
を符号化するための手段が加えられていることである。
The second embodiment is different from the first embodiment in that the bit plane is expanded from 2 bits to 4 bits. The second embodiment is different from the first embodiment in that a state value is used as a value held in a memory and a bypass is used. And a means for encoding only effective pixels is added.

【0135】上記のような参照ビット情報でコンテキス
トを生成し、符号化したデータをハードウェアで復号化
する復号化ブロックの構成について、図12を参照して
説明する。
The configuration of a decoding block for generating a context using the above-described reference bit information and decoding the encoded data by hardware will be described with reference to FIG.

【0136】同図において、1010は最上位ビットプ
レーンを復号化する時のコンテキスト情報、1011は
コンテキスト情報1010をラッチするD−F/F、1
020は2番目に上位のビットプレーンを復号化する時
のコンテキスト情報、1021はコンテキスト情報10
20をラッチするD−F/F、1030は3番目に上位
のビットプレーンを復号化する時のコンテキスト情報、
1031はコンテキスト情報1030をラッチするD−
F/F、1040は最下位ビットプレーンを復号化する
時のコンテキスト情報、1041はコンテキスト情報1
040をラッチするD−F/F、1012は最上位ビッ
トプレーンを復号化する時に用いる予測状態メモリ、1
022は2番目に上位のビットプレーンを復号化する時
に用いる予測状態メモリ、1032は3番目に上位のビ
ットプレーンを復号化する時に用いる予測状態メモリ、
1042は最下位ビットプレーンを復号化する時に用い
る予測状態メモリ、1050は上記4つの予測状態メモ
リ1012,1022,1032,1042の出力の一
つを選択するセレクタ、1051は上記セレクタから出
力する予測状態値をラッチするD−F/F、109は状
態値を確率推定値LSZに変換する確率推定部、105
3は、有効画素の確率推定値が変換されているとき1を
出力する有効画素タイミング発生回路、1054は、無
効画素に対応する確率推定値を強制的に0にマスクする
マスク回路、1055はマスク回路から出力された確率
推定値をラッチするD−F/F、1056は現在の確率
推定値から更新時の状態値を予測する予測状態更新部、
1057は予測状態の更新値をラッチするD−F/F、
1058は復号したビット情報をラッチするD−F/F
である。なお、その他の構成要素は、図6において同一
番号で示す要素と同様の機能を有する。
In the figure, reference numeral 1010 denotes context information for decoding the most significant bit plane, reference numeral 1011 denotes a DF / F for latching the context information 1010, 1
020 is context information for decoding the second most significant bit plane, and 1021 is context information 10
DF / F that latches 20 is the context information for decoding the third most significant bit plane,
1031 latches context information 1030 D-
F / F, 1040 is context information for decoding the least significant bit plane, 1041 is context information 1
DF / F latching 040, 1012 is a prediction state memory used when decoding the most significant bit plane, 1
022 is a prediction state memory used when decoding the second most significant bit plane; 1032 is a prediction state memory used when decoding the third most significant bit plane;
1042 is a prediction state memory used when decoding the least significant bit plane, 1050 is a selector for selecting one of the outputs of the four prediction state memories 1012, 1022, 1032 and 1042, and 1051 is a prediction state output from the selector DF / F 109 for latching a value, a probability estimator 109 for converting a state value into a probability estimate LSZ, 105
Reference numeral 3 denotes an effective pixel timing generation circuit that outputs 1 when the estimated value of the effective pixel is converted, 1054 denotes a mask circuit that forcibly masks the estimated value of the invalid pixel to 0, and 1055 denotes a mask. A DF / F 1056 for latching the probability estimation value output from the circuit, a prediction state updating unit 1056 for predicting an updated state value from the current probability estimation value,
1057, a DF / F that latches the update value of the prediction state;
Reference numeral 1058 denotes a DF / F for latching the decoded bit information.
It is. The other components have the same functions as the components denoted by the same reference numerals in FIG.

【0137】状態値をメモリへ保持する構成が可能なの
はコンテキストが4サイクル前に確定するので確率推定
値を生成するために必要な余計なディレイを許容できる
からである。例えば予測状態メモリ1012からある状
態値が出力されたとすると、2サイクル後に算術復号化
より復号ビット情報が排他的NORゲート305より出
力されるので、D−F/F1058によりさらに1サイ
クル遅延を加えて4サイクル後に次の画素のコンテキス
トの一部としてD−F/F1011にラッチさせる。状
態値は確率推定値よりビット幅が狭いので、メモリの容
量を少なくし回路規模を小さくするためには本構成の方
が好ましい。
The configuration in which the state value is stored in the memory is possible because the context is determined four cycles before, so that an extra delay necessary for generating the probability estimation value can be tolerated. For example, when a certain state value is output from the prediction state memory 1012, the decoded bit information is output from the exclusive NOR gate 305 by arithmetic decoding two cycles later, so that the DF / F 1058 adds one more cycle delay. After 4 cycles, the DF / F 1011 latches as part of the context of the next pixel. Since the state value has a smaller bit width than the probability estimation value, this configuration is preferable to reduce the memory capacity and the circuit scale.

【0138】メモリへの更新データをバイパスする必要
がないのは、各メモリからの読み出しが4サイクルおき
であるためである。例えば予測状態メモリ1012から
ある状態値が出力され、さらに状態値の更新が行なわれ
るとすれば、その更新値がD−F/F1057にセット
されるのは3サイクル後である。つまり3サイクル後に
メモリ1012へ更新値の書き込み処理を行なえば、次
のサイクルで仮に4サイクル前と同じコンテキストが発
生したとしても更新済みの状態値を読み出せる訳であ
る。
It is not necessary to bypass the update data to the memories because reading from each memory is performed every four cycles. For example, if a state value is output from the predicted state memory 1012 and the state value is further updated, the updated value is set to the DF / F 1057 three cycles later. That is, if the update value is written to the memory 1012 three cycles later, the updated state value can be read in the next cycle even if the same context as that generated four cycles ago occurs.

【0139】上記の処理タイミングを示したものが図1
3である。
The above processing timing is shown in FIG.
3.

【0140】上記の通り本第2の実施形態によれば、多
値画像を構成する複数ビットプレーンをプレーン間で数
画素ずつずらして符号化する。すなわちあるビットプレ
ーンを符号化する時に、コンテキスト情報として参照す
る別のビットプレーンを復号化対象画素ビットのビット
プレーンより数画素先行して符号化し、復号化時は符号
化時と同じ順序で復号化処理を行なうため、ハードウェ
アで復号化処理を行なう際に、復号化動作速度を大幅に
高速化することが可能になる。
As described above, according to the second embodiment, a plurality of bit planes constituting a multi-valued image are coded by being shifted by several pixels between the planes. That is, when encoding a certain bit plane, another bit plane referred to as context information is encoded several pixels ahead of the bit plane of the pixel bit to be decoded, and the decoding is performed in the same order as the encoding. Since the processing is performed, the decoding operation speed can be significantly increased when the decoding processing is performed by hardware.

【0141】なお、本発明は、複数の機器(例えばホス
トコンピュータ、インタフェイス機器、リーダ、プリン
タなど)から構成されるシステムに適用しても、一つの
機器からなる装置(例えば、複写機、ファクシミリ装置
など)に適用してもよい。
Even if the present invention is applied to a system composed of a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.), an apparatus (for example, a copying machine, a facsimile, etc.) Device).

【0142】[0142]

【発明の効果】以上説明したように本発明によれば、単
純な構成を有するハードウェアで、符号化された多値画
像の復号化速度を高速化することができる。
As described above, according to the present invention, the decoding speed of an encoded multi-level image can be increased with hardware having a simple configuration.

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

【図1】従来の算術符号化処理を行なう符号化ブロック
の構成を示すブロック図である。
FIG. 1 is a block diagram illustrating a configuration of an encoding block that performs a conventional arithmetic encoding process.

【図2】図1に示す算術符号化演算部の構成例を示すブ
ロック図である。
FIG. 2 is a block diagram illustrating a configuration example of an arithmetic coding operation unit illustrated in FIG. 1;

【図3】従来の算術復号化処理を行なう復号化ブロック
の構成を示すブロック図である。
FIG. 3 is a block diagram illustrating a configuration of a decoding block that performs a conventional arithmetic decoding process.

【図4】図3に示す算術復号化演算部の構成例を示すブ
ロック図である。
FIG. 4 is a block diagram illustrating a configuration example of an arithmetic decoding operation unit illustrated in FIG. 3;

【図5】従来の算術復号化処理を行なう復号化ブロック
の別の構成を示すブロック図である。
FIG. 5 is a block diagram illustrating another configuration of a decoding block that performs a conventional arithmetic decoding process.

【図6】従来の算術復号化処理を行なう復号化ブロック
の別の構成を示すブロック図である。
FIG. 6 is a block diagram showing another configuration of a decoding block that performs a conventional arithmetic decoding process.

【図7】従来の符号化/復号化の順序を表わす図であ
る。
FIG. 7 is a diagram illustrating a conventional encoding / decoding order.

【図8】本発明の第1の実施形態における符号化/復号
化の順序を表わす図である。
FIG. 8 is a diagram illustrating an encoding / decoding order in the first embodiment of the present invention.

【図9】本発明の第1の実施形態における算術復号化処
理を行なう復号化ブロックの構成を示すブロック図であ
る。
FIG. 9 is a block diagram illustrating a configuration of a decoding block that performs an arithmetic decoding process according to the first embodiment of the present invention.

【図10】図9に示す復号化ブロックにより復号化を行
う際の処理タイミングを示す図である。
10 is a diagram illustrating processing timing when decoding is performed by the decoding block illustrated in FIG. 9;

【図11】本発明の第2の実施形態における符号化/復
号化の順序を表わす図である。
FIG. 11 is a diagram illustrating an encoding / decoding order in the second embodiment of the present invention.

【図12】本発明の第2の実施形態における算術復号化
処理を行なう復号化ブロックの構成を示すブロック図で
ある。
FIG. 12 is a block diagram illustrating a configuration of a decoding block that performs an arithmetic decoding process according to the second embodiment of the present invention.

【図13】図12に示す復号化ブロックにより復号化を
行う際の処理タイミングを示す図である。
FIG. 13 is a diagram illustrating processing timing when decoding is performed by the decoding block illustrated in FIG. 12;

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

101 端子 102 2値データPIX信号 103 コンテキスト情報 105 予測状態メモリ 106 予測値 107 状態値 109 確率推定部 111 確率推定値LSZ 113 排他的NORゲート 114 一致/不一致信号 115 算術符号化演算部 117 符号化データ 118 信号 119 予測状態更新部 120 制御信号 201 Aレジスタ 203 コードレジスタ 205 減算器 207 加算器 209 セレクタ 211 セレクタ 213 シフトレジスタ 215 出力レジスタ 217 カウンタ 218 端子 219 マスク回路 220 シフトクロック 221 検出器 301 算術復号化演算部 302 信号 304 復号画素値信号 305 排他的NORゲート 306 符号化データ 401 減算器 403 入力バッファレジスタ 405 シフトレジスタ 501 予測確率更新部 503 確率推定値メモリ 601 第1の確率推定値メモリ 602 第2の確率推定値メモリ 603、605 セレクタ 607 D−F/F 609 遅延回路 610 コンテキスト情報 801、805 コンテキスト情報 803、807、817、819 D−F/F 809、811 確率推定値メモリ 813、815 セレクタ 1010、1020、1030、1040 コンテキス
ト情報 1011、1021、1031、1041 D−F/F 1012、1022、1032、1042 予測状態メ
モリ 1050 セレクタ 1051、1055、1057、1058 D−F/F 1053 有効画素タイミング発生回路 1054 マスク回路 1056 予測状態更新部
101 terminal 102 binary data PIX signal 103 context information 105 prediction state memory 106 prediction value 107 state value 109 probability estimation unit 111 probability estimation value LSZ 113 exclusive NOR gate 114 coincidence / mismatch signal 115 arithmetic coding operation unit 117 encoded data 118 signal 119 prediction state update unit 120 control signal 201 A register 203 code register 205 subtractor 207 adder 209 selector 211 selector 213 shift register 215 output register 217 counter 218 terminal 219 mask circuit 220 shift clock 221 detector 301 arithmetic decoding operation Section 302 signal 304 decoded pixel value signal 305 exclusive NOR gate 306 coded data 401 subtractor 403 input buffer register 405 shift register 501 Prediction probability update unit 503 Probability estimation value memory 601 First probability estimation value memory 602 Second probability estimation value memory 603, 605 Selector 607 DF / F 609 Delay circuit 610 Context information 801, 805 Context information 803, 807 , 817, 819 DF / F 809, 811 Probability estimated value memory 813, 815 Selector 1010, 1020, 1030, 1040 Context information 1011, 1021, 1031, 1041 DF / F 1012, 1022, 1032, 1042 Prediction state Memory 1050 Selector 1051, 1055, 1057, 1058 DF / F 1053 Effective pixel timing generation circuit 1054 Mask circuit 1056 Prediction state update unit

───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5C059 KK12 MA00 ME11 PP01 UA02 UA05 UA33 5C078 AA04 BA32 BA37 DA01 DA02 5J064 AA03 BB03 BC02 BC03 BC04 BC05 BC14 BC28 BD01 9A001 EE03 EE04 HH27  ──────────────────────────────────────────────────続 き Continued on the front page F term (reference) 5C059 KK12 MA00 ME11 PP01 UA02 UA05 UA33 5C078 AA04 BA32 BA37 DA01 DA02 5J064 AA03 BB03 BC02 BC03 BC04 BC05 BC14 BC28 BD01 9A001 EE03 EE04 HH27

Claims (15)

【特許請求の範囲】[Claims] 【請求項1】 複数のビットプレーンからなる多値画像
情報をコンテキスト情報を参照して算術符号化する算術
符号化方法であって、符号化対象画素に対するコンテキ
スト情報が前記符号化対象画素の少なくとも2サイクル
先行して確定するように、符号化順序を定めたことを特
徴とする算術符号化方法。
1. An arithmetic encoding method for arithmetically encoding multi-valued image information comprising a plurality of bit planes with reference to context information, wherein context information for an encoding target pixel is at least two of said encoding target pixel. An arithmetic coding method characterized in that a coding order is determined so as to be determined in advance of a cycle.
【請求項2】 前記符号化順序は、ビットプレーンの数
がmである場合に、画素の番号を{ }、ビットプレー
ンを[ ]で表すとすると、{i}[j]の次は、j≠
mの場合{i−1}[j+1]、j=mの場合{i+
1}[1]であることを特徴とする請求項1に記載の算
術符号化方法。
2. When the number of bit planes is m and the number of pixels is represented by {} and the bit plane is represented by [], the encoding order is j next to {i} [j]. ≠
{i-1} [j + 1] for m, {i + for j = m
The arithmetic coding method according to claim 1, wherein 1} [1].
【請求項3】 符号化する画素の数がnである場合、
{i−1}≦0及び{i+1}>nでは、所定値を符号
化することを特徴とする請求項2に記載の算術符号化方
法。
3. When the number of pixels to be encoded is n,
3. The arithmetic encoding method according to claim 2, wherein a predetermined value is encoded when {i-1} ≤0 and {i + 1}> n.
【請求項4】 符号化する画素の数がnである場合、
{i−1}≦0及び{i+1}>nでは、符号化をスキ
ップすることを特徴とする請求項2に記載の算術符号化
方法。
4. When the number of pixels to be encoded is n,
3. The arithmetic coding method according to claim 2, wherein coding is skipped when {i-1} ≤0 and {i + 1}> n.
【請求項5】 複数のビットプレーンからなる多値画像
情報をコンテキスト情報を参照して算術復号化する算術
復号化方法であって、復号化対象画素に対するコンテキ
スト情報が前記復号化対象画素の少なくとも2サイクル
先行して確定するように、復号化順序を定めたことを特
徴とする算術復号化方法。
5. An arithmetic decoding method for arithmetically decoding multi-valued image information composed of a plurality of bit planes with reference to context information, wherein context information for a decoding target pixel is at least two of said decoding target pixel. An arithmetic decoding method, wherein a decoding order is determined so as to be determined in advance of a cycle.
【請求項6】 前記復号化順序は、ビットプレーンの数
がmである場合に、画素の番号を{ }、ビットプレー
ンを[ ]で表すとすると、{i}[j]の次は、j≠
mの場合{i−1}[j+1]、j=mの場合{i+
1}[1]であることを特徴とする請求項5に記載の算
術復号化方法。
6. The decoding order is as follows: If the number of bit planes is m, and the pixel number is represented by {} and the bit plane is represented by [], the next of {i} [j] is j ≠
{i-1} [j + 1] for m, {i + for j = m
The arithmetic decoding method according to claim 5, wherein 1} [1].
【請求項7】 復号化する画素の数がnである場合、
{i−1}≦0及び{i+1}>nでは、所定値を復号
化することを特徴とする請求項6に記載の算術復号化方
法。
7. When the number of pixels to be decoded is n,
7. The arithmetic decoding method according to claim 6, wherein a predetermined value is decoded when {i-1} ≤0 and {i + 1}> n.
【請求項8】 復号化する画素の数がnである場合、
{i−1}≦0及び{i+1}>nでは、復号化をスキ
ップすることを特徴とする請求項6に記載の算術復号化
方法。
8. When the number of pixels to be decoded is n,
7. The arithmetic decoding method according to claim 6, wherein decoding is skipped when {i-1} ≤0 and {i + 1}> n.
【請求項9】 複数のビットプレーンからなる多値画像
情報をコンテキスト情報を参照して算術符号化する算術
符号化装置であって、符号化対象画素に対するコンテキ
スト情報が前記符号化対象画素の処理タイミングより少
なくとも2サイクル先行して確定する順番で復号化を行
うことを特徴とする算術符号化装置。
9. An arithmetic coding apparatus for arithmetically coding multi-valued image information consisting of a plurality of bit planes with reference to context information, wherein context information for the coding target pixel is a processing timing of the coding target pixel. An arithmetic coding device for performing decoding in an order determined at least two cycles earlier.
【請求項10】 複数のビットプレーンからなる符号化
された多値画像情報をコンテキスト情報を参照して算術
復号化する算術復号化装置であって、復号化対象画素に
対するコンテキスト情報が前記復号化対象画素の処理タ
イミングより少なくとも2サイクル先行して確定する順
番で復号化を行うことを特徴とする算術復号化装置。
10. An arithmetic decoding device for arithmetically decoding coded multi-valued image information comprising a plurality of bit planes with reference to context information, wherein the context information for a pixel to be decoded is An arithmetic decoding apparatus, wherein decoding is performed in an order determined at least two cycles earlier than a pixel processing timing.
【請求項11】 予測値及び確率推定値を保持する、各
ビットプレーン毎に設けられた確率推定値メモリと、 前記確定したコンテキスト情報に基づいて予測値及び確
率推定値を更新する予測推定更新手段とを有し、 前記確定したコンテキスト情報をアドレスとして、前記
確率推定値メモリから予測値及び確率推定値を読み出す
ことを特徴とする請求項10に記載の算術復号化装置。
11. A probability estimation value memory provided for each bit plane for holding a prediction value and a probability estimation value, and a prediction estimation updating unit for updating the prediction value and the probability estimation value based on the determined context information. The arithmetic decoding apparatus according to claim 10, further comprising: reading a predicted value and a probability estimation value from the probability estimation value memory using the determined context information as an address.
【請求項12】 予測値及び状態値を保持する、各ビッ
トプレーン毎に設けられた予測状態メモリと、 前記確定したコンテキスト情報に基づいて予測値及び状
態値を更新する予測状態更新手段とを有し、 前記確定したコンテキスト情報をアドレスとして、前記
予測状態メモリから予測値及び状態値を読み出すことを
特徴とする請求項10に記載の算術復号化装置。
12. A predictive state memory provided for each bit plane for storing a predictive value and a state value, and a predictive state update unit for updating the predictive value and the state value based on the determined context information. The arithmetic decoding apparatus according to claim 10, wherein the predicted value and the state value are read from the predicted state memory using the determined context information as an address.
【請求項13】 前記復号化順序は、ビットプレーンの
数がmである場合に、画素の番号を{ }、ビットプレ
ーンを[ ]で表すとすると、{i}[j]の次は、j
≠mの場合{i−1}[j+1]、j=mの場合{i+
1}[1]であることを特徴とする請求項10乃至12
のいずれかに記載の算術復号化装置。
13. When the number of bit planes is m and the number of pixels is represented by {} and the bit plane is represented by [], the decoding order is j next to {i} [j].
{I-1} [j + 1] for ≠ m, {i + for j = m
13. The method according to claim 10, wherein 1} [1].
The arithmetic decoding device according to any one of the above.
【請求項14】 復号化する画素の数がnである場合、
{i−1}≦0及び{i+1}>nでは、所定値を符号
化/復号化することを特徴とする請求項13に記載の算
術復号化装置。
14. When the number of pixels to be decoded is n,
14. The arithmetic decoding apparatus according to claim 13, wherein a predetermined value is encoded / decoded when {i-1} ≤0 and {i + 1}> n.
【請求項15】 復号化する画素の数がnである場合、
{i−1}≦0及び{i+1}>nでは、復号化をスキ
ップすることを特徴とする請求項13に記載の算術復号
化装置。
15. When the number of pixels to be decoded is n,
14. The arithmetic decoding apparatus according to claim 13, wherein decoding is skipped when {i-1} ≤0 and {i + 1}> n.
JP2000041693A 2000-02-18 2000-02-18 Arithmetic encoding / decoding method and arithmetic encoding / decoding device Expired - Fee Related JP3684128B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000041693A JP3684128B2 (en) 2000-02-18 2000-02-18 Arithmetic encoding / decoding method and arithmetic encoding / decoding device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000041693A JP3684128B2 (en) 2000-02-18 2000-02-18 Arithmetic encoding / decoding method and arithmetic encoding / decoding device

Publications (2)

Publication Number Publication Date
JP2001230935A true JP2001230935A (en) 2001-08-24
JP3684128B2 JP3684128B2 (en) 2005-08-17

Family

ID=18564889

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000041693A Expired - Fee Related JP3684128B2 (en) 2000-02-18 2000-02-18 Arithmetic encoding / decoding method and arithmetic encoding / decoding device

Country Status (1)

Country Link
JP (1) JP3684128B2 (en)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7301485B2 (en) 2003-10-29 2007-11-27 Nec Corporation Decoding device or encoding device having intermediate buffer interposed between an arithmetic code decoder or encoder and a reverse binarization device or binarization device
JP2009159366A (en) * 2007-12-27 2009-07-16 Akuseru:Kk Encoding system, encoding method, encoding program, decoding system, decoding method, and decoding program
KR100978152B1 (en) 2007-03-30 2010-08-25 후지쯔 가부시끼가이샤 Image processing method, encoder and decoder
JP2010537533A (en) * 2007-08-24 2010-12-02 フランス・テレコム Symbol plane coding / decoding by dynamic calculation of probability table
JP2010278567A (en) * 2009-05-26 2010-12-09 Yamaha Corp Decoding device
JP2011061878A (en) * 2010-12-27 2011-03-24 Sony Corp Encoding device, encoding method, decoding device, decoding method and recording medium
JP2011061877A (en) * 2010-12-27 2011-03-24 Sony Corp Encoding device and encoding method
JP2011087326A (en) * 2010-12-27 2011-04-28 Sony Corp Decoding apparatus and decoding method
JP2011101404A (en) * 2010-12-27 2011-05-19 Sony Corp Decoding apparatus and decoding method
JP2012178891A (en) * 2012-06-22 2012-09-13 Sony Corp Encoding device and encoding method
JP2012200012A (en) * 2012-06-22 2012-10-18 Sony Corp Decoding device and decoding method
JP2012200008A (en) * 2012-06-22 2012-10-18 Sony Corp Encoding device and encoding method
JP2012200010A (en) * 2012-06-22 2012-10-18 Sony Corp Decoding device and decoding method
JP2012200009A (en) * 2012-06-22 2012-10-18 Sony Corp Decoding device and decoding method
JP2012226375A (en) * 2004-02-27 2012-11-15 Samsung Electronics Co Ltd Lossless audio decoding method and lossless audio decoding apparatus
JP2012531086A (en) * 2009-06-19 2012-12-06 サムスン エレクトロニクス カンパニー リミテッド Context-based arithmetic coding apparatus and method, and arithmetic decoding apparatus and method
US8428139B2 (en) 2002-10-10 2013-04-23 Sony Corporation Video-information encoding method and video-information decoding method

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8494044B2 (en) 2002-10-10 2013-07-23 Sony Corporation Video-information encoding method and video-information decoding method
US8467454B2 (en) 2002-10-10 2013-06-18 Sony Corporation Video-information encoding method and video-information decoding method
US8428139B2 (en) 2002-10-10 2013-04-23 Sony Corporation Video-information encoding method and video-information decoding method
US8467446B2 (en) 2002-10-10 2013-06-18 Sony Corporation Video-information encoding method and video-information decoding method
US9979966B2 (en) 2002-10-10 2018-05-22 Sony Corporation Video-information encoding method and video-information decoding method
US8472518B2 (en) 2002-10-10 2013-06-25 Sony Corporation Video-information encoding method and video-information decoding method
US9204145B2 (en) 2002-10-10 2015-12-01 Sony Corporation Video-information encoding method and video-information decoding method
US8477837B2 (en) 2002-10-10 2013-07-02 Sony Corporation Video-information encoding method and video-information decoding method
US8494043B2 (en) 2002-10-10 2013-07-23 Sony Corporation Video-information encoding method and video-information decoding method
US7301485B2 (en) 2003-10-29 2007-11-27 Nec Corporation Decoding device or encoding device having intermediate buffer interposed between an arithmetic code decoder or encoder and a reverse binarization device or binarization device
JP2012226375A (en) * 2004-02-27 2012-11-15 Samsung Electronics Co Ltd Lossless audio decoding method and lossless audio decoding apparatus
KR100978152B1 (en) 2007-03-30 2010-08-25 후지쯔 가부시끼가이샤 Image processing method, encoder and decoder
JP2010537533A (en) * 2007-08-24 2010-12-02 フランス・テレコム Symbol plane coding / decoding by dynamic calculation of probability table
JP4524501B2 (en) * 2007-12-27 2010-08-18 株式会社アクセル Encoding system, encoding method, encoding program, decoding system, decoding method, and decoding program
JP2009159366A (en) * 2007-12-27 2009-07-16 Akuseru:Kk Encoding system, encoding method, encoding program, decoding system, decoding method, and decoding program
JP2010278567A (en) * 2009-05-26 2010-12-09 Yamaha Corp Decoding device
US9171550B2 (en) 2009-06-19 2015-10-27 Samsung Electronics Co., Ltd. Context-based arithmetic encoding apparatus and method and context-based arithmetic decoding apparatus and method
US9959879B2 (en) 2009-06-19 2018-05-01 Samsung Electronics Co., Ltd. Context-based arithmetic encoding apparatus and method and context-based arithmetic decoding apparatus and method
JP2012531086A (en) * 2009-06-19 2012-12-06 サムスン エレクトロニクス カンパニー リミテッド Context-based arithmetic coding apparatus and method, and arithmetic decoding apparatus and method
JP2011061877A (en) * 2010-12-27 2011-03-24 Sony Corp Encoding device and encoding method
JP2011101404A (en) * 2010-12-27 2011-05-19 Sony Corp Decoding apparatus and decoding method
JP2011087326A (en) * 2010-12-27 2011-04-28 Sony Corp Decoding apparatus and decoding method
JP2011061878A (en) * 2010-12-27 2011-03-24 Sony Corp Encoding device, encoding method, decoding device, decoding method and recording medium
JP2012200009A (en) * 2012-06-22 2012-10-18 Sony Corp Decoding device and decoding method
JP2012200010A (en) * 2012-06-22 2012-10-18 Sony Corp Decoding device and decoding method
JP2012200008A (en) * 2012-06-22 2012-10-18 Sony Corp Encoding device and encoding method
JP2012200012A (en) * 2012-06-22 2012-10-18 Sony Corp Decoding device and decoding method
JP2012178891A (en) * 2012-06-22 2012-09-13 Sony Corp Encoding device and encoding method

Also Published As

Publication number Publication date
JP3684128B2 (en) 2005-08-17

Similar Documents

Publication Publication Date Title
JP3684128B2 (en) Arithmetic encoding / decoding method and arithmetic encoding / decoding device
JP2549254B2 (en) Method and apparatus for predicting occurrence probability of arbitrary symbol in finite alphabet
JPH0969951A (en) Encoding method and decoding method
US6373408B1 (en) Encoding apparatus, decoding apparatus, encoding/decoding apparatus, encoding method and decoding method
JP2002033925A (en) Method arithmetic encoding and decoding, and apparatus for arithmetic encoding and decoding
JP3459759B2 (en) Arithmetic decoding device
JP3871995B2 (en) Encoding device and decoding device
JP2001189661A (en) Encoding device and decoding device
US6058216A (en) Apparatus for encoding image data
JP3119025B2 (en) Encoding device and decoding device
JP3384287B2 (en) Encoding device and decoding device
JP3146109B2 (en) Binary image coding device
JPH07249995A (en) Data encoding device
JP3225763B2 (en) Encoding device and decoding device
JP2729165B2 (en) Image processing apparatus and processing method thereof
JP3247052B2 (en) Image data conversion processing method and apparatus
JP3223118B2 (en) Image encoding device, image decoding device, and image encoding / decoding device
JP3235510B2 (en) Encoding method and encoding device, decoding method and decoding device
JP2000278538A (en) Device and method for arithmetic encoding/decoding
JP3084187B2 (en) Binary image encoding device and binary image decoding device
JP3141794B2 (en) Decryption device
JP3232533B2 (en) Image encoding device, image decoding device, and image encoding / decoding device
JP3336537B2 (en) Encoding device, decoding device, encoding / decoding device, and arithmetic encoding device
JP3093451B2 (en) Redundancy reduction coding device
JP3382492B2 (en) Image processing apparatus and method

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050214

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050414

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050516

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050527

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090603

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090603

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100603

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110603

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120603

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120603

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130603

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees