JP2001189661A - Encoding device and decoding device - Google Patents
Encoding device and decoding deviceInfo
- Publication number
- JP2001189661A JP2001189661A JP37476099A JP37476099A JP2001189661A JP 2001189661 A JP2001189661 A JP 2001189661A JP 37476099 A JP37476099 A JP 37476099A JP 37476099 A JP37476099 A JP 37476099A JP 2001189661 A JP2001189661 A JP 2001189661A
- Authority
- JP
- Japan
- Prior art keywords
- symbol
- probability
- context
- decoding
- 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
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は符号化装置,復号化
装置に関し、特に、エントロピー予測符号化装置・復号
化装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an encoding device and a decoding device, and more particularly to an entropy prediction encoding device and a decoding device.
【0002】[0002]
【従来の技術】符号化シンボルを既に符号化済みの周辺
画素の状態によって予測し、予測結果をその状態毎に定
まる符号化シンボルの確率推定値をもとに算術符号化す
る方式が圧縮率の点から最も優れた特性を示すことが知
られている。JBIG(ITU勧告T.82)に採用されている符号
器であるQM-coderは、その一例である。2. Description of the Related Art A method of predicting a coded symbol based on the state of neighboring pixels that have already been coded and arithmetically coding a prediction result based on a probability estimation value of the coded symbol determined for each state is a method of compressing the compression ratio. It is known that they exhibit the most excellent characteristics from the point of view. QM-coder, which is an encoder adopted in JBIG (ITU recommendation T.82), is one example.
【0003】QM-coderは、図8に示すように、コンテク
スト生成部200と、コンテクストテーブル(コンテクス
トメモリ)210と、確率推定器220と、算術符号器230
と、を有する。As shown in FIG. 8, a QM-coder includes a context generation unit 200, a context table (context memory) 210, a probability estimator 220, and an arithmetic encoder 230.
And
【0004】コンテクスト生成部200は、符号化画素の
周辺10画素によって作られる1024個の状態を検出する。
図10にテンプレートの一例を示す。図中、”?”で示さ
れるのが符号化対象の画素であり、また、”×”で示さ
れる10個の画素が参照画素である。一つの画素の符号化
が終了すると、図10に点線で示されるように、テンプレ
ートを右側に一つずらし、次の画素の符号化を行なう。[0004] The context generation unit 200 detects 1024 states formed by 10 pixels around the coded pixel.
FIG. 10 shows an example of the template. In the figure, "?" Indicates a pixel to be encoded, and 10 pixels indicated by "x" are reference pixels. When the encoding of one pixel is completed, the template is shifted to the right by one as shown by the dotted line in FIG. 10, and the encoding of the next pixel is performed.
【0005】各状態をコンテクスト(以下Sと表す)と呼
び、コンテクスト毎に、優勢シンボルの予測値MPS(s)
(すなわち、着目する符号化シンボルについて、MPS
が”1”であると予測されれば、MPS(S)=1である)
と、確率推定器の状態番号とが、コンテクストメモリか
ら読み出され、確率推定器220に出力される。Each state is called a context (hereinafter, referred to as S), and a predicted value MPS (s) of a dominant symbol is defined for each context.
(That is, for the coded symbol of interest, the MPS
Is predicted to be "1", then MPS (S) = 1)
And the state number of the probability estimator are read from the context memory and output to the probability estimator 220.
【0006】確率推定器220は、これらの情報から劣勢
シンボルの領域幅Qe(s)を算術符号器230に出力する。こ
こでQeは、「LPSが生起される確率」であり、本明細書
では、これを「符号化シンボルの生起確率」とか、単に
「確率推定値」という場合もある。また、劣勢シンボル
の領域幅Qe(s)は、LPSの生起確率にオージェンドの幅
をかけて算出される、LPSの生起確率に対応する幅を意
味する。[0006] The probability estimator 220 outputs the region width Qe (s) of the inferior symbol to the arithmetic coder 230 from these pieces of information. Here, Qe is “probability of LPS occurring”, and in this specification, this may be referred to as “probability of occurrence of coded symbol” or simply “probability estimate”. The area width Qe (s) of the inferior symbol means a width corresponding to the occurrence probability of LPS, which is calculated by multiplying the occurrence probability of LPS by the width of the agenda.
【0007】算術符号器230は、符号化シンボル,優勢
シンボルの予測値MPS(s)および領域幅Qe(s)から算術符
号化演算を実行し、符号を出力する。[0007] Arithmetic encoder 230 executes an arithmetic coding operation from the coded symbol, the predicted value MPS (s) of the dominant symbol and the region width Qe (s), and outputs a code.
【0008】図9に示すように、算術符号化では、初期
値0〜1の数直線を優勢シンボル(MPS)の領域幅と劣
勢シンボル(LPS)の領域幅に分ける。符号化対象のシ
ンボル系列は、分割された領域内の代表点に対応させ
る。代表点は、部分区間内の一番下にとられる。As shown in FIG. 9, in arithmetic coding, a number line having an initial value of 0 to 1 is divided into an area width of a superior symbol (MPS) and an area width of an inferior symbol (LPS). The encoding target symbol sequence is made to correspond to a representative point in the divided area. The representative point is set at the bottom of the partial section.
【0009】符号化シンボルと予測値が同じときは、次
のシンボルの符号化にはMPS幅が選ばれ、そうでなけれ
ばLPS幅が選ばれる。上述のとおり、この領域幅の中に
代表点を設けて、その2進小数点が符号を表わす。When the coded symbol and the predicted value are the same, the MPS width is selected for encoding the next symbol, and otherwise the LPS width is selected. As described above, a representative point is provided in this area width, and the binary point indicates the sign.
【0010】算術符号化演算では、領域幅が所定値未満
になった時には、少数点の精度を防ぐために所定値(具
体的には初期値の1/2)以上になるまで2倍処理を繰
り返す。この処理を正規化処理という。In the arithmetic coding operation, when the area width becomes smaller than the predetermined value, the doubling process is repeated until the area width becomes equal to or more than the predetermined value (specifically, 1/2 of the initial value) in order to prevent the precision of the decimal point. . This processing is called normalization processing.
【0011】また、正規化処理は、LPSを符号化したと
きも行われる。すなわち、推定がはずれてLPS幅が選択
されると、そのLPS幅は、必ず、初期値の1/2より小
さいため、毎回、正規化がなされることになる。The normalization process is also performed when LPS is encoded. In other words, when the LPS width is selected with the estimation deviated, the LPS width is always smaller than 1/2 of the initial value, so that the normalization is performed every time.
【0012】正規化処理が行なわれる場合には、図8の
コンテクストテーブル210における、MPS値や状態番号
(ST)が更新される。状態番号の更新は、確率推定部22
0に書かれている「次の状態番号」が、コンテクストテ
ーブル210にオーバーライトされることにより実現され
る(図8では、このオーバーライトを矢印RXで示して
いる)。When the normalization processing is performed, the MPS value and the state number (ST) in the context table 210 of FIG. 8 are updated. The update of the state number is performed by the probability estimation unit 22.
The “next state number” written in “0” is realized by overwriting in the context table 210 (this overwriting is indicated by an arrow RX in FIG. 8).
【0013】このコンテクストテーブル210の更新によ
り、次もまた、前回と同じコンテクストであった(すな
わち、図10のテンプレートを右に一つずらしても、参照
画素の1と0の配置が前回と同じであった)としても、
発生するQe(S)の値が異なることになる。これによっ
て、より情報源の確率分布に適した値が選択されるよう
になる。つまり、符号化対象の画像への適応化がなされ
る。By updating the context table 210, the next context is the same as the previous context (that is, even if the template of FIG. 10 is shifted to the right by one, the arrangement of the reference pixels 1 and 0 is the same as the previous context. Was)
The value of Qe (S) generated will be different. As a result, a value more suitable for the probability distribution of the information source is selected. That is, the adaptation to the image to be encoded is performed.
【0014】図8に示される算術符号器の各部が、1ク
ロックで1つの処理をするようにすれば、算術符号処理
をパイプライン処理とすることができる。パイプライン
化することにより、無駄のない非常に高速な算術符号処
理が実現される。If each unit of the arithmetic encoder shown in FIG. 8 performs one process in one clock, the arithmetic code process can be a pipeline process. By using the pipeline, very high-speed arithmetic code processing without waste is realized.
【0015】[0015]
【発明が解決しようとする課題】算術符号処理をパイプ
ライン化した場合、途中で正規化処理が発生すると、パ
イプラインに乱れが生じて、無駄な待ち時間が増え、処
理効率が低下する場合がある。When arithmetic code processing is pipelined, if normalization processing occurs on the way, the pipeline may be disturbed, wasteful waiting time may increase, and processing efficiency may decrease. is there.
【0016】特に、正規化がかなりの頻度で発生し、か
つ、コンテクストに連続性がある画像パターンでパイプ
ラインの乱れが発生しやすいと考えられる。なお、復号
化の場合にも同様の問題が生じる。In particular, it is considered that normalization occurs at a considerable frequency and that the pipeline is likely to be disordered in an image pattern having continuity in context. A similar problem occurs in the case of decoding.
【0017】本発明は、このパイプラインの乱れを取り
除き、画像パターンや算術符号化の状態によらず、1サ
イクルで連続的にシンボルの符号化および復号化を実行
できる符号化・復号化装置を提供することを目的とす
る。According to the present invention, there is provided an encoding / decoding apparatus capable of removing the disturbance of the pipeline and continuously executing symbol encoding and decoding in one cycle irrespective of an image pattern or an arithmetic encoding state. The purpose is to provide.
【0018】[0018]
【課題を解決するための手段】本発明の一態様では、符
号器に、現在の確率推定値と、正規化が生じてテーブル
の更新がなされた後の確率推定値が同時に供給し、符号
器の状態に応じてそれらのうちの一つを選択する構成と
する。SUMMARY OF THE INVENTION In one aspect of the present invention, a current probability estimate and a probability estimate after normalization has occurred and a table has been updated are simultaneously supplied to the encoder. Is configured to select one of them according to the state of.
【0019】本発明の一つの態様では、確率推定器(Qe
ROM)の出力に、従来のQe値の他、正規化によって遷移
した後のQeも同時に出力するようにする。In one embodiment of the present invention, a probability estimator (Qe
In addition to the conventional Qe value, Qe after transition by normalization is output to the output of the ROM) at the same time.
【0020】正規化が生じてコンテクストテーブル(Qe
ROM)が更新されたならば出力されるであろう確率推定
値(Qe)も、現在の推定値とパラレルに出力されるた
め、正規化処理が生じ、かつコンテキストが連続した場
合でも、その更新後の確率推定値(Qe)をセレクタで選
んで符号器に供給するだけでよい。Normalization occurs and the context table (Qe
ROM), the probability estimate (Qe) that would be output if updated was also output in parallel with the current estimate, so that even if normalization occurs and the context is continuous, its update The subsequent probability estimate (Qe) only needs to be selected by the selector and supplied to the encoder.
【0021】したがって、正規化が発生した直後のシン
ボルが同一コンテクストであっても、Qe ROMの読み直し
が不要となり、パイプラインの乱れが生じない。Therefore, even if the symbols immediately after the occurrence of the normalization have the same context, it is not necessary to reread the Qe ROM, and the pipeline is not disturbed.
【0022】[0022]
【発明の実施の形態】本発明の一つの態様では、既に符
号化済みのシンボル系列の状態から符号化シンボルの生
起確率を推定し、その推定値(例えば、Qe)とシンボル
の予測値(例えば、MPSの値)を符号器に供給して符号
化する符号化装置であって、現在の確率推定値(Qe)
と、所定の状況が生じて更新がなされた後の確率推定値
(next Qe)とを並列に生成し、前記符号器の状態に応
じて、前記現在の確率推定値または更新後の確率推定値
のいずれかを選択して、パイプラインの乱れを防止す
る。DESCRIPTION OF THE PREFERRED EMBODIMENTS In one embodiment of the present invention, the occurrence probability of a coded symbol is estimated from the state of an already coded symbol sequence, and the estimated value (eg, Qe) and the predicted value of the symbol (eg, , MPS value) to an encoder for encoding the current probability estimation value (Qe).
And an updated probability estimate (next Qe) after the occurrence of a predetermined situation (next Qe), and according to the state of the encoder, the current probability estimate or the updated probability estimate Choose one to prevent pipeline disruption.
【0023】すなわち、エントロピー符号装置におい
て、精度維持や、入力画像への適応化のためにパラメー
タの更新が必要になったとき、そのパラメータが更新さ
れた後に出力されるであろう確率推定値(未来の確率推
定値)を、現在の推定値(通常の処理で出力される確率
推定値)と共に、並列に出力させておき、所定の状況が
発生した場合(例えば、パラメータの更新の必要が生
じ、かつ、コンテクストが連続するためにRAMの読み出
しと書き込みが競合するような場合)には、現在の推定
値ではなく、未来の推定値の方を符号器に供給する。こ
れにより、ループを回してパラメータを更新している
間、符号化を待つ必要がなくなり、パイプラインの乱れ
が防止される。That is, in the entropy coding apparatus, when it is necessary to update a parameter for maintaining accuracy or adapting to an input image, a probability estimation value that will be output after the parameter is updated ( The future probability estimation value) is output in parallel with the current estimation value (probability estimation value output in normal processing), and when a predetermined situation occurs (for example, the parameter needs to be updated). In the case where the reading and writing of the RAM conflict due to the continuous context), the future estimated value is supplied to the encoder instead of the current estimated value. This eliminates the need to wait for encoding while updating the parameters by turning the loop, and prevents disturbance of the pipeline.
【0024】本発明の特徴点の理解を容易とするため
に、まず、本発明を適用しない、パイプライン構成の算
術符号器(本発明の発明者が考えた比較例)の構成と動
作を、図16〜図20を用いて説明する。In order to facilitate understanding of the features of the present invention, first, the configuration and operation of an arithmetic encoder having a pipeline configuration to which the present invention is not applied (a comparative example considered by the inventor of the present invention) will be described. This will be described with reference to FIGS.
【0025】図16は、比較例の算術符号器の回路構成例
を示すブロック図である。FIG. 16 is a block diagram showing a circuit configuration example of the arithmetic encoder of the comparative example.
【0026】コンテクスト生成器400は、参照画素の状
態に応じてコンテクストインデックスS(信号409)をア
ドレス情報としてコンテクストRAM401に出力する。な
お、符号化シンボルと参照画素(x)の配置は図10に示
すとおりである。The context generator 400 outputs the context index S (signal 409) to the context RAM 401 as address information according to the state of the reference pixel. Note that the arrangement of the coded symbols and the reference pixels (x) is as shown in FIG.
【0027】コンテクストRAM401には、各コンテクスト
毎に符号化シンボルの予測値MPS(S)が1ビットと確率推
定器の状態番号7ビット,計1バイトが格納されてい
る。The context RAM 401 stores 1 bit of the predicted value MPS (S) of the coded symbol and 7 bits of the state number of the probability estimator for each context.
【0028】コンテクストRAM401は、コンテクストのリ
ードと、コンテクスト内容の更新が異なるコンテクスト
であれば同一サイクルで実行できるように、デュアルポ
ートRAM(2-port RAM)で構成されている。The context RAM 401 is composed of a dual-port RAM (2-port RAM) so that reading of a context and updating of the context content can be executed in the same cycle if the context is different.
【0029】確率推定器402は、状態遷移テーブルであ
り、書き換えの必要はないので通常はROMで構成されて
いる(以下、Qe ROMという)。もちろん、これはRAMで
構成してもよい。The probability estimator 402 is a state transition table and does not need to be rewritten. Therefore, the probability estimator 402 is usually constituted by a ROM (hereinafter referred to as a Qe ROM). Of course, this may be configured with RAM.
【0030】コンテクストRAM401からは確率推定器の状
態番号410が出力される。それをアドレスとしてQe ROM4
02にアクセスする。すると、コンテクスト(S)に応じ
た確率推定値Qe(S)416と,次の状態遷移先の状態番号44
1が出力される。The state number 410 of the probability estimator is output from the context RAM 401. Qe ROM4 as its address
Access 02. Then, the probability estimation value Qe (S) 416 according to the context (S) and the state number 44 of the next state transition destination
1 is output.
【0031】次の状態遷移先の状態番号441が2系統あ
るのは、LPSの符号化により正規化が発生する場合と、M
PSの符号化によってオージェンドが初期値の1/2を下
回ることになり、正規化が発生する場合とで、遷移先の
状態番号が異なるからである。セレクタ404は、正規化
が生じた状況に応じて、2つの状態番号のうちのいずれ
かを選択する。There are two systems of the state number 441 of the next state transition destination when normalization occurs due to LPS encoding and when M
This is because the state number of the transition destination differs between the case where normalization occurs and the case where the agende falls below 1/2 of the initial value due to the encoding of the PS. The selector 404 selects one of the two state numbers according to the situation where the normalization has occurred.
【0032】また、推定が連続して、はずれるような場
合には、Qe ROM402は、MPS値のスイッチ信号412をアク
ティブ(すなわち”1”)とする。この状態では、エク
スクルーシブオア回路405は、インバータとして機能す
る。When the estimation is continuously deviated, the Qe ROM 402 sets the MPS value switch signal 412 to active (ie, “1”). In this state, the exclusive OR circuit 405 functions as an inverter.
【0033】すなわち、エクスクルーシブオア回路405
には、タイミング調整回路406を介して現在のMPS値が入
力されるが、入力されるMPS値が”1”のときは、エク
スクルーシブオア回路405の出力414は”0”となり、MP
S値が”0”のときは、エクスクルーシブオア回路405の
出力414は”1”となり、MPS値が更新されることにな
る。That is, the exclusive OR circuit 405
, The current MPS value is input via the timing adjustment circuit 406. When the input MPS value is “1”, the output 414 of the exclusive OR circuit 405 becomes “0”, and the
When the S value is “0”, the output 414 of the exclusive OR circuit 405 becomes “1”, and the MPS value is updated.
【0034】更新された、次の状態番号やMPS値は、コ
ンテクストRAM401に書き込まれる。その書込みアドレス
は、正規化インデックス回路(タイミング調整回路)40
7により与えられる。すなわち、3クロック分だけ前の
コンテクストインデックスをアドレス変数として用い
て、コンテクストRAM401のオーバーライトが行われる。The updated next state number and MPS value are written to the context RAM 401. The write address is a normalized index circuit (timing adjustment circuit) 40
Given by 7. That is, the context RAM 401 is overwritten using the context index three clocks earlier as an address variable.
【0035】算術符号器403では、符号化シンボル、MPS
(S)およびQe(S)を使って符号化演算を実行する。In the arithmetic encoder 403, the encoded symbol, MPS
Perform encoding operation using (S) and Qe (S).
【0036】上述のとおり、符号化を実行して正規化が
発生すると、コンテクストRAM401の内容が更新される。
更新する内容は、上述のとおり、確率推定器の状態番号
(信号413)とシンボルの予測値MPS(S)(信号414)であ
る。As described above, when encoding is executed and normalization occurs, the contents of the context RAM 401 are updated.
As described above, the contents to be updated are the state number (signal 413) of the probability estimator and the predicted value MPS (S) of the symbol (signal 414).
【0037】そして、2種類の遷移先411がMPS正規化、L
PS正規化に応じてセレクタ404で選択され信号413とな
る。ここで、「MPS正規化」とは、推定が当たったが、
数直線の分割の結果、オージェンドが初期値の1/2を
下回ったために発生する正規化処理のことである。ま
た、「LPS正規化」とは、推定がはずれたために、必然
的に生じる正規化処理のことである。The two types of transition destinations 411 are MPS normalized, L
The signal 413 is selected by the selector 404 according to the PS normalization. Here, the "MPS normalization" was estimated,
This is a normalization process that occurs when the orgen falls below 1/2 of the initial value as a result of dividing the number line. The “LPS normalization” is a normalization process that occurs inevitably due to incorrect estimation.
【0038】新しい予測値(信号414)は、先に述べた
ように、今の予測値MPS(S)とswitchフラグ信号412(図中
switch-MPS)との排他的論理演算をとることで作られ
る。内容を更新するときのコンテクストRAMのアドレス
信号は、図中、参照符号415で示されている。As described above, the new predicted value (signal 414) is obtained by combining the current predicted value MPS (S) and the switch flag signal 412 (in the figure).
It is made by taking exclusive logical operation with switch-MPS). The address signal of the context RAM when updating the content is indicated by reference numeral 415 in the figure.
【0039】図16において、コンテクスト生成器400、
コンテクストRAM401、Qe ROM402、算術符号演算器403は
すべて1サイクルで所定の処理を実行できるように内部
が構成されている。In FIG. 16, a context generator 400,
The context RAM 401, the Qe ROM 402, and the arithmetic code arithmetic unit 403 are all internally configured so that predetermined processing can be executed in one cycle.
【0040】なお、図16中、参照符号406、407は、パイ
プラインのタイミングを調整するための遅延素子であ
る。1Dは1クロックの遅延、2Dは2クロックの遅延、3D
は3クロックの遅延を表わす。タイミング制御回路408
によって、各部に必要な制御信号が供給されるものとす
る。In FIG. 16, reference numerals 406 and 407 are delay elements for adjusting the timing of the pipeline. 1D is 1 clock delay, 2D is 2 clock delay, 3D
Represents a delay of 3 clocks. Timing control circuit 408
Thus, a necessary control signal is supplied to each unit.
【0041】図19は、確率推定器となる状態遷移テーブ
ルの構成例(一般的なもの)を示す。このテーブルは、
図示されるように、左側から状態番号(Qe-index)、確
率推定値(Qe)、次の遷移先番号、MPSの予測値を反転
するかどうかを示すフラグ(switch-MPS)から構成され
る。FIG. 19 shows an example (general) of a state transition table serving as a probability estimator. This table is
As shown in the figure, from the left side, a state number (Qe-index), a probability estimation value (Qe), a next transition destination number, and a flag (switch-MPS) indicating whether to invert the predicted value of the MPS are configured. .
【0042】次の遷移先は2種類あり、各々は、LPSまた
はMPSを符号化または復号化して更新処理(正規化処
理)が発生した時の遷移先を表している。There are two types of transition destinations, each of which represents a transition destination when an update process (normalization process) occurs by encoding or decoding LPS or MPS.
【0043】MPSを符号化して遷移するときは(MPS正規
化)、確率推定値Qeが小さくなるように遷移する。LPS
の場合は(LPS正規化)その逆である。このようにして
情報源に適応化していく。状態番号の更新は正規化のと
きに実行される。When a transition is made after encoding the MPS (MPS normalization), the transition is made so that the probability estimation value Qe becomes smaller. LPS
Is the opposite (LPS normalization). In this way, we adapt to the information source. Updating of the state number is performed at the time of normalization.
【0044】正規化処理は算術符号化の領域幅を表すレ
ジスタの値が初期値の1/2未満になったときに行われ、
そのレジスタ値が初期値の1/2以上になるまで2倍処理
が繰り返えされる。このときに確率推定値の更新も行わ
れる。確率推定テーブルの状態番号が更新されるという
ことは、コンテクストRAM401のそのコンテクストに対応
した内容が書きかえられることにあたる 。The normalization processing is performed when the value of the register indicating the area width of the arithmetic coding becomes less than 1/2 of the initial value.
The doubling process is repeated until the register value becomes 1/2 or more of the initial value. At this time, the probability estimation value is also updated. Updating the state number of the probability estimation table corresponds to rewriting the content corresponding to the context in the context RAM 401.
【0045】図20は、図19の遷移テーブルを搭載したQe
ROM402(図16)の構成例を示している。図示されるよ
うに、Qe ROM402は、アドレス(状態)が113で、ビット
幅が31ビットの構成となる。ビット0がswitchフラグで
あり、ビット1からビット14が次の遷移先であり、ビッ
ト15からビット30がQe(S)である。FIG. 20 shows a Qe having the transition table of FIG.
17 shows a configuration example of a ROM 402 (FIG. 16). As illustrated, the Qe ROM 402 has a configuration in which the address (state) is 113 and the bit width is 31 bits. Bit 0 is a switch flag, bits 1 to 14 are the next transition destination, and bits 15 to 30 are Qe (S).
【0046】図17は、図16の算術符号器の動作を説明す
るためのタイミング図である。但し、図17では、正規化
が発生しない場合のみを示している。FIG. 17 is a timing chart for explaining the operation of the arithmetic encoder of FIG. However, FIG. 17 shows only a case where normalization does not occur.
【0047】図示されるように、クロックに同期して、
コンテクストの生成(context det)、コンテクストRAMの
リード(context RAM RD)、Qe ROMのリード(Qe RD)、符
号化演算および正規化演算(coding/renorm)が、連続す
るシンボルに対してパイプライン処理されていく。正規
化が発生しなければ、1画素当り、1サイクルで連続し
て処理できることがわかる。As shown, in synchronization with the clock,
Context generation (context det), context RAM read (context RAM RD), Qe ROM read (Qe RD), encoding and normalization (coding / renorm) are pipelined for consecutive symbols Will be done. It can be seen that if normalization does not occur, processing can be performed continuously in one cycle per pixel.
【0048】次に、正規化処理が発生した場合について
説明する。図18は、第i番目のシンボルの符号化で正規
化が発生したときの様子を示す(処理601)。Next, a case where a normalization process has occurred will be described. FIG. 18 shows a state where normalization has occurred in the encoding of the i-th symbol (process 601).
【0049】i番目のシンボルのコンテクストをSiとす
る。次のシンボル、つまり、第i+1番目も同じコンテク
ストSiであったとする。そうすると正規化が発生したと
きには既にQe ROM402はリードしているのであるが、そ
の値Qe(Si)は使えないことになる。なぜならば、正規化
によってコンテクストSiの確率推定値は更新され、よっ
て、処理602で読んだ値は古い値になっているからであ
る。したがって、更新を待って、ROMを再度、読み直す
必要がある。これによって、パイプラインが乱れる。Let the context of the i-th symbol be Si. Assume that the next symbol, i.e., the (i + 1) -th symbol has the same context Si. Then, when the normalization occurs, the Qe ROM 402 has already read, but the value Qe (Si) cannot be used. This is because the probability estimate of the context Si is updated by the normalization, and the value read in the process 602 is an old value. Therefore, it is necessary to read the ROM again after waiting for the update. This disrupts the pipeline.
【0050】具体的に説明する。コンテクストRAM401の
更新は、処理604で実行される。第i+1シンボルに対し
て、無効サイクル603が入り、処理605で、更新されたQe
(Si)を読むことができる。第i+2シンボル以降も、この
影響で処理が遅延する。従って、図16の回路構成では、
正規化が発生し、かつ、その直後のシンボルも同一コン
テクストのときには、パイプラインが乱れ、1サイクル
余計に時間がかかることになる。A specific description will be given. The updating of the context RAM 401 is executed in a process 604. An invalid cycle 603 is entered for the (i + 1) th symbol, and in step 605, the updated Qe
(Si) can be read. The processing is delayed due to this effect even after the (i + 2) th symbol. Therefore, in the circuit configuration of FIG.
When normalization occurs and the symbol immediately after the normalization has the same context, the pipeline is disturbed, and it takes extra time for one cycle.
【0051】以上が、比較例の説明である、次に、本発
明の実施の形態について図面を用いて説明する。The above is the description of the comparative example. Next, embodiments of the present invention will be described with reference to the drawings.
【0052】(実施の形態1)図1は、本発明の実施の
形態1にかかる算術符号器の構成を示すブロック図であ
る。(First Embodiment) FIG. 1 is a block diagram showing a configuration of an arithmetic encoder according to a first embodiment of the present invention.
【0053】図示されるように、符号器は、コンテクス
ト生成器700と、コンテクストテーブル(コンテクストR
AM)701と、確率推定部(Qe ROM)702と、算術符号演算
器703とからなり、それぞれ1クロックで1つの処理を
実行する。すなわち、図1の算術符号器は、4段のパイ
プライン構造を有する。As shown, the encoder comprises a context generator 700 and a context table (context R).
AM) 701, a probability estimator (Qe ROM) 702, and an arithmetic code calculator 703, each of which executes one process in one clock. That is, the arithmetic encoder of FIG. 1 has a four-stage pipeline structure.
【0054】これらの構成要素の処理内容は、図8の一
般的な符号器(および図16の比較例)と同じである。本
実施の形態の特徴は、Qe ROMの構成と、その周辺部分の
回路構成にある。The processing contents of these components are the same as those of the general encoder of FIG. 8 (and the comparative example of FIG. 16). The feature of the present embodiment lies in the configuration of the Qe ROM and the circuit configuration of its peripheral part.
【0055】Qe ROM702に搭載されているテーブルの内
容は図2の通りである。図19の比較例のテーブルと比較
すると、図2の場合、ビット幅が63ビットに拡張され、
「next Qe(LPS)」および「next Qe(MPS)」の各デー
タが追加されていることがわかる。The contents of the table mounted on the Qe ROM 702 are as shown in FIG. As compared with the table of the comparative example of FIG. 19, in the case of FIG. 2, the bit width is expanded to 63 bits,
It can be seen that the data of “next Qe (LPS)” and “next Qe (MPS)” are added.
【0056】ここで、「next Qe(MPS)」とは、算術符
号器703でMPSの符号化を行なった結果、オージェンドが
初期値の1/2未満となって正規化処理が発生した場合
において、コンテクストROM701の遷移先の状態が更新さ
れ、かつ、次の符号化シンボルが前回と同じコンテクス
トであったために、コンテクストRAM701に対して前回と
同じ番地へのアクセスが発生し、その結果、Qe ROM702
の、更新された遷移先の状態に対応する番地にアクセス
がなされたならば、その結果として、Qe ROM702から出
力されるであろうLPSの幅(Qe)のことである。Here, “next Qe (MPS)” means that when the arithmetic encoder 703 encodes the MPS, the orgen becomes less than 初期 of the initial value and normalization processing occurs. Since the state of the transition destination of the context ROM 701 has been updated, and the next coded symbol has the same context as the previous time, an access to the same address as the previous time occurs in the context RAM 701, and as a result, the Qe ROM702
Is the width (Qe) of the LPS that will be output from the Qe ROM 702 if the address corresponding to the updated transition destination state is accessed.
【0057】同じく、「next Qe(LPS)」とは、算術符
号器703でLPSの符号化によって必然的に正規化処理が発
生し、これに対応してループを回してコンテクストテー
ブルを更新し、同じアドレスにアクセスしたならば、Qe
ROM702から出力されるであろうLPSの幅(Qe)のことで
ある。Similarly, “next Qe (LPS)” means that normalization processing is inevitably generated by the encoding of LPS in the arithmetic encoder 703, and the context table is updated by turning a loop in response to this. If you access the same address, Qe
This is the width (Qe) of the LPS that will be output from the ROM 702.
【0058】つまり、正規化処理が発生し、コンテクス
トRAM701内のテーブルを更新して、再度、全く同じ番地
にアクセスをしたならば発生するであろう、未来のQeの
値を、あらかじめ、Qe ROM702内のテーブルに、現在のQ
eの値と併記しておくことに本実施の形態の特徴があ
る。That is, a normalization process occurs, the table in the context RAM 701 is updated, and a future Qe value that would occur if the same address is accessed again is stored in advance in the Qe ROM 702. In the table in the current Q
There is a feature of the present embodiment in that it is described together with the value of e.
【0059】図1の制御回路709には、符号化シンボル
のコンテクストや算術符号器における正規化の発生の有
無等のあらゆる情報が入力される。よって、制御回路70
9がそれらの情報から、現在のQeを選ぶか、未来のQe(M
PS)あるいはQe(LPS)を選ぶかを、リアルタイムで選
択することができる。このような選択を可能とするため
に、セレクタ706が設けられている。The control circuit 709 of FIG. 1 receives all information such as the context of the encoded symbol and whether or not normalization has occurred in the arithmetic encoder. Therefore, the control circuit 70
9 selects the current Qe from those information, or selects the future Qe (M
PS) or Qe (LPS) can be selected in real time. To enable such selection, a selector 706 is provided.
【0060】これにより、仮に正規化処理が発生して
も、ループを回してテーブルを更新する間、処理を待つ
必要がなく、セレクタにより未来のQe(MPS)あるいはQ
e(LPS)を選ぶだけでよい。よって、パイプラインに乱
れが生じない。Thus, even if the normalization process occurs, it is not necessary to wait for the process while updating the table by turning the loop, and the selector can use the future Qe (MPS) or Q
Just select e (LPS). Therefore, no disturbance occurs in the pipeline.
【0061】なお、図1中のセレクタ707は、図16のセ
レクタ404に対応するものである。また、セレクタ704,
705は、正規化処理が発生した後、次も、また正規化処
理が発生する可能性があることを考慮し、前回使用した
MPS値や、遷移先の状態の番号を再利用できるようにす
るために設けられている。この点については後述する。The selector 707 in FIG. 1 corresponds to the selector 404 in FIG. In addition, selector 704,
705 was used last time after the normalization process occurred, considering that there is a possibility that the normalization process may also occur next.
It is provided so that the MPS value and the number of the state of the transition destination can be reused. This will be described later.
【0062】以下、具体的に説明する。Hereinafter, a specific description will be given.
【0063】Qe ROM702には、状態遷移テーブルの状態
番号がアドレスとして入力する。出力信号は現在の確率
推定値Qe(s)(信号713)、正規化により状態遷移が起き
た時の新しいQe(S)がLPS正規化とMPS正規化用に信号71
4、信号715として出力され、さらに、正規化による状態
遷移番号が、同様に2種類(信号716 、信号717)出力さ
れ、また、MPS(S)を反転させるか否かを示すフラグ(swi
tch-MPS 、信号718)が出力される。The state number of the state transition table is input to Qe ROM 702 as an address. The output signal is the current probability estimate Qe (s) (signal 713) and the new Qe (S) when the state transition occurs due to normalization is the signal 71 for LPS and MPS normalization.
4. It is output as a signal 715, and two kinds of state transition numbers by normalization (signal 716 and signal 717) are similarly output, and a flag (swi) indicating whether or not to invert MPS (S).
tch-MPS, signal 718) is output.
【0064】このフラグと現在の予測シンボルMPS(S)の
排他的論理和をEOR回路708でとることで、新しい予
測シンボルが作られる。この値とセレクタ707の出力
が、正規化対象となるインデックス724のメモリ内容と
なる。The exclusive OR of this flag and the current predicted symbol MPS (S) is obtained by the EOR circuit 708, whereby a new predicted symbol is created. This value and the output of the selector 707 become the memory contents of the index 724 to be normalized.
【0065】セレクタ704,705では、「正規化が発生し
た」直後の符号化シンボルが「同じコンテクスト」で符
号化されるときには、下側の信号が選択される。すなわ
ち、コンテクストRAM701にオーバーライトされる、更新
用のMPSと次の状態番号とが選ばれることになる。In the selectors 704 and 705, when the coded symbol immediately after “normalization has occurred” is coded in the “same context”, the lower signal is selected. That is, the MPS for update and the next state number that are overwritten in the context RAM 701 are selected.
【0066】このような場合には、次も確率推定がはず
れて、正規化処理が連続する可能性があることから、更
新用のMPSと次の状態番号とを、再度、利用するように
している。この場合、セレクタ705を介して出力される
状態番号をアドレス変数として、Qe ROM702がアクセス
され、前回と同じ値の、Qe713,next Qe714,715が並列
に出力され、符号化結果を待って、この中から一つが選
択されることになる。In such a case, since the probability estimation is also deviated next and the normalization processing may be continued, the MPS for updating and the next state number are used again. I have. In this case, the Qe ROM 702 is accessed using the state number output via the selector 705 as an address variable, and Qe713, next Qe714, and 715 having the same value as the previous time are output in parallel. One of them will be selected.
【0067】各セレクタの選択信号は、制御回路709に
よって必要な状態信号を見ながら、適宜、出力される。
図が煩雑となるので制御信号の詳細は省略している。The selection signal of each selector is appropriately output while the control circuit 709 checks a necessary state signal.
The details of the control signal are omitted because the figure becomes complicated.
【0068】上述したように、図2は、Qe ROMの構成例
を示している。比較例で説明したように、パイプライン
が乱れるのは、Qe ROMの読み直しが必要となることが原
因である。As described above, FIG. 2 shows a configuration example of the Qe ROM. As described in the comparative example, the reason why the pipeline is disrupted is that the Qe ROM needs to be read again.
【0069】本実施の形態では、このような場合に、Qe
ROMの読み直しが不要になるように、LPS正規化時の遷
移先のQeと MPS正規化時の遷移先のQeとを同一アドレス
に記憶している。ビット15からビット46がこの部分にあ
たる。In this embodiment, in such a case, Qe
The transition destination Qe at the time of LPS normalization and the transition destination Qe at the time of MPS normalization are stored at the same address so that it is not necessary to reread the ROM. Bits 15 to 46 correspond to this part.
【0070】先に説明した図19の状態遷移表によれば、
Qe-indexが0のときの、MPS正規化、LPS正規化の遷移先
(Qe-index)は1であることが分かる。また、Qe-indexが
1のときのQeは0x2586であることが分かる。従って、図
1のビット15からビット30には0x2586が記憶されてい
る。同様にビット31からビット46も0x2586が記憶されて
いる。その他の構成要素は、比較例と同じである。According to the state transition table of FIG. 19 described above,
Transition destination of MPS normalization and LPS normalization when Qe-index is 0
It can be seen that (Qe-index) is 1. Also, it can be seen that Qe when Qe-index is 1 is 0x2586. Therefore, 0x2586 is stored in bits 15 to 30 in FIG. Similarly, 0x2586 is stored in bits 31 to 46. Other components are the same as those of the comparative example.
【0071】こうすることによって、正規化発生直後
に、同一コンテクストの符号化を行う場合も、ROMの読
み直しは不要であり、既に読み出されているものから、
状況に応じて必要なものを選択するだけでよい。By doing so, even when encoding of the same context is performed immediately after the occurrence of normalization, it is not necessary to read the ROM again.
You only need to select what you need according to your situation.
【0072】次に、図3を参照しながら、図1の算術符
号器の動作の概要を説明する。Next, an outline of the operation of the arithmetic encoder of FIG. 1 will be described with reference to FIG.
【0073】第i番目のシンボルの符号化がクロックに
同期して、コンテクストの生成(context det)、コンテ
クストRAMのリード(context RAM RD)、Qe ROMのリード
(Qe RD)、符号化演算および正規化演算(coding/renorm)
の順に処理されていく。The encoding of the i-th symbol is synchronized with the clock to generate a context (context det), read a context RAM (context RAM RD), and read a Qe ROM.
(Qe RD), coding operation and normalization operation (coding / renorm)
Are processed in this order.
【0074】符号化シンボルとそのコンテクストは、コ
ンテクスト生成器700で検出する 。符号化シンボルはパ
イプラインのタイミング調整用の遅延回路710を通して
算術符号演算器703に送られる。The coded symbol and its context are detected by a context generator 700. The encoded symbol is sent to the arithmetic code calculator 703 through a delay circuit 710 for adjusting the timing of the pipeline.
【0075】コンテクストの識別番号であるコンテクス
トインデックスsは、コンテクストRAM701の入力信号と
なる。同時にそのコンテクストで正規化が発生する場合
に、RAMの内容を更新するためのアドレス情報として、
正規化インデックス712に入力される。正規化インデッ
クス712は、3クロック分の遅延を与える遅延回路であ
る。正規化インデックス712の出力信号724は、正規化処
理が発生した場合に、次の遷移先の状態やMPS値を更新
する際のアドレスを指定する信号(コンテクストインデ
ックス)となる。The context index s, which is the identification number of the context, becomes an input signal of the context RAM 701. At the same time, when normalization occurs in that context, as address information for updating the contents of RAM,
Input to the normalization index 712. The normalization index 712 is a delay circuit that delays three clocks. The output signal 724 of the normalization index 712 becomes a signal (context index) for specifying an address at the time of updating the next transition destination state or the MPS value when the normalization processing occurs.
【0076】コンテクストRAM701は、リードとライトを
並行して行なえるデュアルポートRAMで構成する。これ
により、正規化処理が生じてRAMの更新が必要となった
場合でも、次のコンテクスト(図10のテンプレートを右
側にずらした場合の参照画素における1と0の配置)が
前回と違っていれば、符号化用のコンテクスト情報の読
み出し(リード)と、正規化が生じた場合のコンテクス
ト情報の更新(ライト)とを、同じサイクルで、同時に
実行できるようになる。The context RAM 701 is constituted by a dual-port RAM capable of performing reading and writing in parallel. As a result, even when the RAM needs to be updated due to the normalization process, the next context (the arrangement of 1s and 0s in the reference pixels when the template in FIG. 10 is shifted to the right) is different from the previous context. For example, reading (reading) of context information for encoding and updating (write) of context information when normalization occurs can be performed simultaneously in the same cycle.
【0077】したがって、正規化処理が発生しても、次
のコンテクストが異なっているのであれば、ROMへのア
クセスの競合が生じないため、オーバーライトを待つ必
要がなく、パイプラインの乱れは生じない。Therefore, even if the normalization process occurs, if the next context is different, there is no contention for access to the ROM, so there is no need to wait for overwriting, and the disturbance of the pipeline occurs. Absent.
【0078】コンテクストRAMの出力信号は、符号化シ
ンボルの予測値MPS(S)と確率推定器の状態番号(図中st
ate No)である。予測値MPS(S)は、パイプラインの遅延
調整回路711を通って算術符号演算器703に送られる。The output signal of the context RAM includes the predicted value MPS (S) of the coded symbol and the state number (st in the figure) of the probability estimator.
ate No). The prediction value MPS (S) is sent to the arithmetic code calculator 703 through the delay adjustment circuit 711 in the pipeline.
【0079】これら2つの出力信号は、セレクタ704と7
05に入る。制御回路709は、正規化が発生しない時は、
上側の信号(つまり、コンテクストRAMから出力されるM
PS値と状態番号)が選ばれるように、セレクタ704,705
を制御する。These two output signals are supplied to selectors 704 and 7
Enter 05. The control circuit 709, when normalization does not occur,
The upper signal (that is, M output from the context RAM)
Selectors 704 and 705 so that the PS value and the state number are selected.
Control.
【0080】Qe ROM702は、セレクタ705を介して入力さ
れる状態番号をアドレス変数としてアクセスされる。図
2に示すように、一つのアドレスには3種類のQeが併記
されているため、Qe ROM702からは、確率推定値として3
種類の値が、常に出力される。そして、制御回路709
が、正規化の有無やコンテクストの連続の有無を判定し
て、状況に応じて、それらの中の一つをリアルタイムで
選択していく。The Qe ROM 702 is accessed using the state number input via the selector 705 as an address variable. As shown in FIG. 2, since three types of Qe are written together in one address, from the Qe ROM 702, 3
The type value is always output. Then, the control circuit 709
However, the presence or absence of normalization and the continuation of context are determined, and one of them is selected in real time according to the situation.
【0081】以下、図3を用いて、正規化処理が発生し
た場合の動作を説明する。The operation in the case where the normalization processing has occurred will be described below with reference to FIG.
【0082】図3における処理801では、Qe(Si)(信号7
13)が選択されたものとする。ここでは第i番目のコン
テクストをSiとした。In process 801 in FIG. 3, Qe (Si) (signal 7
Assume that 13) has been selected. Here, the i-th context is Si.
【0083】処理802で、第iシンボルの符号化演算と正
規化処理が行われる。ここでは、LPSを符号化して正規
化が発生したものとする。第i+1シンボルに対しては第i
シンボルの符号化演算と同一サイクルで、Qe ROM702の
読み出しが実行される(処理804)。In processing 802, encoding operation and normalization processing of the i-th symbol are performed. Here, it is assumed that LPS is encoded and normalization has occurred. The i-th symbol for the (i + 1) -th symbol
Reading of the Qe ROM 702 is executed in the same cycle as the symbol encoding operation (process 804).
【0084】第i+1シンボルのコンテクストも同じくSi
であったとする。そうすると、第iシンボルでLPS正規化
が起きたので、セレクタ706では、LPS正規化で遷移する
先のQe値714が選択される。The context of the (i + 1) th symbol is also Si
Assume that Then, since LPS normalization has occurred in the ith symbol, the selector 706 selects the Qe value 714 to which the transition is made by LPS normalization.
【0085】処理805では、この値を使った符号化演算
が実行される。このとき処理803ではコンテクストRAM70
1のコンテクストSiの内容が更新される。In the process 805, an encoding operation using this value is executed. At this time, in process 803, the context RAM 70
The content of the context Si of 1 is updated.
【0086】更新処理は以下のように行われる。すなわ
ち、セレクタ707では、LPS正規化時の次の状態番号716
が選択される。一方、EOR回路708では、switch-MPS(信
号718)と現在の予測値MPS(Si)(信号723)から新しい
予測値(信号721)を作る。The updating process is performed as follows. That is, in the selector 707, the next state number 716 at the time of LPS normalization
Is selected. On the other hand, the EOR circuit 708 generates a new predicted value (signal 721) from the switch-MPS (signal 718) and the current predicted value MPS (Si) (signal 723).
【0087】上述のとおり、信号718が“1”であればM
PS(Si)の値は反転する。これら2つの情報がコンテクス
トRAM701のアドレスSiに書かれる。As described above, if the signal 718 is “1”, M
The value of PS (Si) is inverted. These two pieces of information are written at the address Si of the context RAM 701.
【0088】このときアドレスSiは、遅延回路712から
信号724として出力されている。この更新処理のタイミ
ングで、第i+2シンボルに対しては、Qe ROM702を読む必
要がある。At this time, the address Si is output from the delay circuit 712 as a signal 724. At the timing of this update processing, it is necessary to read the Qe ROM 702 for the (i + 2) th symbol.
【0089】この時、第i+2シンボルも同じコンテクス
トSiであればセレクタ704、705は下側の信号が選ばれる
ように制御する。その理由は、上述のとおり、処理805
で正規化が再度発生するかもしれないからである。Siの
コンテクスト情報の更新が終了したら 、セレクタ704
、705の上側の信号が選ばれる。At this time, if the (i + 2) th symbol is also in the same context Si, the selectors 704 and 705 control so that the lower signal is selected. The reason is, as described above, the processing 805
Because normalization may occur again. When the updating of the Si context information is completed, the selector 704
, 705 are selected.
【0090】第i+3シンボルに対してはこのサイクルで
コンテクストRAMのリードを行う(処理808)。先に説明
したとおり、第i+3シンボルのコンテクストがSiと異な
りSjであれば、デュアルポートROM701に対するコンテク
ストのリードとコンテクストSiの更新は、同時に実行さ
れる。For the (i + 3) th symbol, the context RAM is read in this cycle (process 808). As described above, if the context of the (i + 3) th symbol is different from Si and is Sj, the context read to the dual port ROM 701 and the update of the context Si are performed simultaneously.
【0091】第i+3シンボルのコンテクストがSiであれ
ば処理803でその内容が更新される。この時、セレクタ7
04 、705では下側の信号が選択されている。If the context of the (i + 3) th symbol is Si, the content is updated in step 803. At this time, selector 7
In 04 and 705, the lower signal is selected.
【0092】このようにして正規化が発生したコンテク
ストで連続して符号化する場合も従来例のような無効サ
イクルは発生せず、パイプラインが乱れることはない。
したがって、いかなる画像パターンに対しても1シンボ
ルを1クロックで連続して符号化することができる。Even when encoding is performed continuously in the context where normalization has occurred in this way, an invalid cycle unlike the conventional example does not occur, and the pipeline is not disturbed.
Therefore, one symbol can be continuously encoded with one clock for any image pattern.
【0093】図7に、本発明の効果を裏付ける実験(コ
ンピュータシミュレーション)結果を示す。FIG. 7 shows the results of an experiment (computer simulation) supporting the effect of the present invention.
【0094】パイプラインの乱れが発生しやすいのは、
正規化の頻度もコンテクストの連続性も共に高い画像パ
ターンである。文書画像ではコンテクストが連続する場
合は多いが正規化はあまり発生しない。逆に黒率50%近
いランダム画像では正規化は頻繁に起こるがコンテクス
トの連続性はほとんどない。そうすると、中間点である
圧縮率0.5近辺の画像パターンで、パイプラインの乱れ
が発生しやすそうである。図7は、そのようなテスト画
像によるQM-coderの符号化シミュレーション結果であ
る。[0094] Pipeline disturbances are likely to occur
This is an image pattern in which both the frequency of normalization and the continuity of context are high. In a document image, the context is often continuous, but normalization does not occur much. Conversely, in a random image with a black ratio of about 50%, normalization occurs frequently, but there is little context continuity. Then, it seems that the disturbance of the pipeline is likely to occur in the image pattern near the compression ratio 0.5, which is the intermediate point. FIG. 7 shows an encoding simulation result of the QM-coder using such a test image.
【0095】図7では、1ライン毎に1シンボルが何サ
イクルで符号化できたかをプロットしている。上側の特
性線Aが従来例、下側の特性線Bが本発明によるデータ
を示している 。In FIG. 7, the number of cycles in which one symbol can be encoded for each line is plotted. The upper characteristic line A shows the conventional example, and the lower characteristic line B shows the data according to the present invention.
【0096】このシミュレーション結果から明らかなよ
うに、従来例では、1.1サイクル/シンボルを超えるこ
ともあることがわかる。これは、100MHzのクロックで動
かしても90Mシンボル/秒程度に処理能力が低下するこ
とを意味する。一方、本発明による符号器では、画像パ
ターンによらず、いかなる場合も100Mシンボル/秒の処
理能力が得られることが分かる。As is clear from the simulation results, it can be seen that the conventional example may exceed 1.1 cycles / symbol. This means that the processing capacity is reduced to about 90 M symbols / sec even when operated with a clock of 100 MHz. On the other hand, it can be seen that the encoder according to the present invention can obtain a processing capability of 100 M symbols / sec in any case regardless of the image pattern.
【0097】以上説明した本発明の符号化の主要な手順
をまとめると、図21に示すようになる。すなわち、現在
のQeと、MPS符号化で正規化処理が発生したならば出力
されるであろうQe(next Qe)と、LPS符号化で正規化処
理が発生したならば出力されるであろうQe(next Qe)
と、を並列に出力する(ステップ30)。FIG. 21 shows the main procedure of the encoding of the present invention described above. That is, the current Qe, the Qe (next Qe) that would be output if normalization processing occurred in MPS coding, and the output if normalization processing occurred in LPS coding Qe (next Qe)
And are output in parallel (step 30).
【0098】そして、正規化が発生し、かつ次のコンテ
クストも同じであるときには(ステップ31)、MPSの符
号化による正規化であるか、LPSの符号化による正規化
であるかに応じて、未来のQe(next Qe)のうちのいず
れかを選択する(ステップ32)。正規化が発生しない
場合には、現在のQeを選択する(ステップ33)。When normalization occurs and the next context is the same (step 31), depending on whether the normalization is based on MPS coding or LPS coding, One of the future Qe (next Qe) is selected (step 32). If normalization does not occur, the current Qe is selected (step 33).
【0099】(実施の形態2)次に、本発明の算術復号
器の実施例について、図4を参照して説明する。図4
は、本発明の算術復号器の一実施例の構成を示すブロッ
ク図である。(Embodiment 2) Next, an embodiment of the arithmetic decoder according to the present invention will be described with reference to FIG. FIG.
FIG. 2 is a block diagram showing a configuration of an embodiment of an arithmetic decoder according to the present invention.
【0100】復号器も1サイクルで1シンボルを連続的に
復号化する構成である。すなわち、符号器と同じく、コ
ンテクスト生成、コンテクストRAMの読み出し、Qe ROM
の読み出し、復号化演算処理の順に、4段のパイプライ
ン処理を実行する。The decoder also has a configuration in which one symbol is continuously decoded in one cycle. That is, like the encoder, context generation, context RAM read, Qe ROM
, And a four-stage pipeline process is executed in the order of decoding operation.
【0101】算術復号は、入力された符号が、分割され
た数直線上でMPSに属するかLPSに属するかを判定し、そ
のときのMPS,LPSが”1”,”0”のどちらかを知るこ
とにより、復元対象となるシンボル(復元シンボル)を
復元する。The arithmetic decoding determines whether the input code belongs to the MPS or the LPS on the divided number line, and determines whether the MPS or LPS at that time is “1” or “0”. By knowing this, the symbol to be restored (restored symbol) is restored.
【0102】そして、その復元されたシンボルは、次に
入力される符号を復号化するための参照画素として利用
される。通常、このような手法による1シンボルの復元
には、4クロック以上が必要であり、このままでは、パ
イプライン処理を実現できない。符号化の場合と異な
り、復号化の場合には、処理対象の画素の値は、実際に
復号が終了するまで不明であり、画素の復元を待って、
復元画素を参照画素として用いて符号化(Qeの生成)を
行なうしかないため、どうしてもステップ数が多くなる
のである。The restored symbol is used as a reference pixel for decoding a code to be input next. Usually, restoration of one symbol by such a method requires four clocks or more, and pipeline processing cannot be realized as it is. Unlike the case of encoding, in the case of decoding, the value of the pixel to be processed is unknown until the decoding is actually finished, and after the restoration of the pixel,
Since there is no choice but to perform encoding (generation of Qe) using the restored pixel as a reference pixel, the number of steps is inevitably increased.
【0103】そこで、本実施の形態では、まず、符号化
の場合と同様の考え方(未来を予測して先回りをして並
列出力する考え方)を復号化にも導入する。Therefore, in the present embodiment, first, the same idea as in the case of encoding (the idea of predicting the future and outputting in parallel ahead of time) is also introduced into decoding.
【0104】すなわち、2値算術符号の場合、復元シン
ボルは”1”または”0”しかないため、現在、復元し
ているシンボルが”1”である場合と”0”である場合
の双方を想定して、それぞれの場合について、次のシン
ボル(一つ先のシンボル)を復元するためのQeを、現在
のシンボルの復元中に、同時に出力してしまう。すなわ
ち、Qe ROMを2つ設けて、それぞれを同時に動作させ
る。そして、現在のシンボルについての復元結果に応じ
て、いずれかのQeを選択する。That is, in the case of a binary arithmetic code, since there are only "1" or "0" restored symbols, both the case where the currently restored symbol is "1" and the case where the symbol is "0" are determined. Assuming, in each case, Qe for restoring the next symbol (one symbol ahead) is output simultaneously while restoring the current symbol. That is, two Qe ROMs are provided and each is operated simultaneously. Then, one of Qe is selected according to the result of restoration of the current symbol.
【0105】同じく、次の次に復元するべきシンボル
(二つ先のシンボル)を復元するために必要な、コンテ
クストRAMからのリードも、現在のシンボルの復元中
に、同時に実行してしまう。Similarly, reading from the context RAM, which is necessary for restoring the next symbol to be restored next (symbol two ahead), is simultaneously executed during restoration of the current symbol.
【0106】このとき、現在復元中のシンボルが”0”
で次のシンボルが”1”の場合と、現在のシンボルが”
0”で次のシンボルが”0”の場合と、現在のシンボル
が”1”で次のシンボルが”1”の場合と、現在のシン
ボルが”1”で次のシンボルが”0”の場合の4つが想
定されるため、コンテキストRAM(デュアルポートメモ
リ)を4つ設けて、これらを同時に動作させる。At this time, the symbol currently being restored is "0".
When the next symbol is “1” and the current symbol is “
0, the next symbol is “0”, the current symbol is “1”, the next symbol is “1”, and the current symbol is “1” and the next symbol is “0”. Therefore, four context RAMs (dual-port memories) are provided and operated simultaneously.
【0107】また、次の次の次のシンボル(3つ先のシ
ンボル)を復元するために必要な4系統のコンテクスト
インデックス(S)のそれぞれを、4つのコンテキストR
AM(デュアルポートメモリ)の入力ポートに、同時に入
力してライトする。Also, each of the four context indices (S) necessary for restoring the next next symbol (three symbols ahead) is stored in four contexts R
Simultaneously input and write to the input port of AM (dual port memory).
【0108】この場合に想定される4つの状態は、一つ
先のシンボルが”0”で2つ先のシンボルが”1”の場
合と、一つ先のシンボルが”0”で二つ先のシンボル
が”0”の場合と、一つ先のシンボルが”1”で二つ先
のシンボルが”1”の場合と、一つ先のシンボルが”
1”で二つ先のシンボルが”0”の場合の4つに大別さ
れる。The four states assumed in this case are as follows: the first symbol is “0” and the second symbol is “1”; and the first symbol is “0” and the second symbol is “2”. Is “0”, the first symbol is “1” and the second symbol is “1”, and the first symbol is “1”.
The symbol is roughly divided into four when the symbol two ahead is "0" at "1".
【0109】このように、現在のシンボルを復元中に、
一つ先〜三つ先のシンボルの復元に必要な情報を先回り
して、並列に入出力しておき、復元結果が判明した時点
で、それに応じて、いずれかの出力を選択する、という
手法を採用することにより、算術復号処理もパイプライ
ン化することができる。As described above, while the current symbol is being restored,
A method in which information necessary for restoring symbols one to three ahead is proactively input and output in parallel, and when the restoration result is determined, one of the outputs is selected accordingly. , The arithmetic decoding process can be pipelined.
【0110】しかし、符号化と同様に正規化が発生し、
かつコンテクストが連続したときには、パイプラインが
乱れることになる。よって、符号化の場合と同様に、現
在のQeと更新後のQeとを並列に出力して、実際の復号結
果に応じていずれかを選択していく方式を採用する。However, normalization occurs as in the case of encoding, and
And when the context is continuous, the pipeline will be disrupted. Therefore, as in the case of encoding, a method is employed in which the current Qe and the updated Qe are output in parallel and one of them is selected according to the actual decoding result.
【0111】以下、具体的に説明する。Hereinafter, a specific description will be given.
【0112】上述のように、1サイクルで連続的に復号
化するには、i番目の画素が確定する以前に、次のi+1番
目の画素の復号化処理に入る必要がある。そのために
は、i番目の画素が“0”と“1”の場合に分けた並列処
理を行う必要がある。同様に、i+2番目の画素もi+1番目
の画素の値毎に並列処理が行われる。これら並列処理の
内容はパイプラインの構成によって決まる。As described above, in order to perform decoding continuously in one cycle, it is necessary to start decoding the next (i + 1) -th pixel before the i-th pixel is determined. For that purpose, it is necessary to perform parallel processing separately for the case where the i-th pixel is “0” and “1”. Similarly, the i + 2 pixel is subjected to parallel processing for each value of the i + 1 pixel. The contents of these parallel processes are determined by the configuration of the pipeline.
【0113】図4では、2つのQe ROM913,914を同時に
動作させ、また、4つのコンテクストRAM905,906,90
7,908を同時に動作させる。そして、算術復号演算器91
7の復元シンボルの値(1または0)を選択制御信号と
しても用いて、セレクタ909,910,911,912,915,916
を切り替えて、復元されたシンボルに対応する出力を、
適宜、選択する構成となっている。In FIG. 4, two Qe ROMs 913, 914 are operated simultaneously, and four context RAMs 905, 906, 90
7, 908 are operated simultaneously. Then, the arithmetic decoding unit 91
The selectors 909, 910, 911, 912, 915, 916 also use the value (1 or 0) of the restored symbol 7 as a selection control signal.
To output the output corresponding to the restored symbol,
The configuration is appropriately selected.
【0114】図5は、図4中の、Qe ROM913およびコン
テクストRAM905,906の周辺のみを抜き出して、より具
体的に示すブロック図である。図1と比較してみれば明
らかなように、回路の詳細な構成は、ほぼ同じである。
これは、復号化装置においても、符号化側と同様の符号
化動作を行なってMPS値とQeを生成し、それらを復号器
に供給していることからして、当然のことである。FIG. 5 is a block diagram showing more specifically only the periphery of the Qe ROM 913 and the context RAMs 905 and 906 in FIG. As is clear from comparison with FIG. 1, the detailed configuration of the circuit is almost the same.
This is a matter of course because the decoding apparatus also performs the same encoding operation as the encoding side to generate the MPS value and Qe and supplies them to the decoder.
【0115】図4の全体構成によれば、一応、復号器の
パイプライン化が可能となるが、正規化が発生し、かつ
コンテクストが連続するとパイプラインが乱れる。そこ
で、図5に示すように、現在のQeおよび更新後のQeの双
方を生成して出力し、実際の復号結果に応じて、いずれ
かのQeを選択するようにする。これにより、画像パター
ンや復号器の状態に関係なく、パイプラインの乱れが生
じない。According to the overall configuration of FIG. 4, it is possible to temporarily form a pipeline of the decoder. However, when normalization occurs and the context is continuous, the pipeline is disturbed. Therefore, as shown in FIG. 5, both the current Qe and the updated Qe are generated and output, and either Qe is selected according to the actual decoding result. As a result, regardless of the image pattern and the state of the decoder, the disturbance of the pipeline does not occur.
【0116】図5に示される、Qe ROM913の出力信号と
セレクタ1008,1009の機能は、先に説明した符号化の場
合のセレクタと同じである。また、Qe ROM913の入力側
のセレクタ1003 、1004の機能も符号化と同じく、正規
化によるコンテクストRAMの更新時に同一コンテクスト
で復号化を行う時、下側の信号を選択するためのもので
ある。The output signal of the Qe ROM 913 and the functions of the selectors 1008 and 1009 shown in FIG. 5 are the same as those of the selector in the case of the encoding described above. Also, the function of the selectors 1003 and 1004 on the input side of the Qe ROM 913 is for selecting the lower signal when decoding in the same context when updating the context RAM by normalization, as in the case of encoding.
【0117】遅延回路901は、タイミング調整用の遅延
回路であり、正規化対象となるコンテクストインデック
スを、コンテクストRAMのアドレスとして出力するため
のものである。The delay circuit 901 is a delay circuit for adjusting timing, and outputs a context index to be normalized as an address of a context RAM.
【0118】このように復号器を構成すると、正規化が
発生したコンテクストで連続して復号化する場合も、無
効サイクルは発生せずパイプラインが乱れることはない
。したがって、いかなる画像パターンに対しても1シン
ボルを1クロックで連続して復号化することができる
。When the decoder is configured in this manner, even when decoding is continuously performed in the context in which normalization has occurred, no invalid cycle occurs and the pipeline is not disturbed. Therefore, one symbol can be decoded continuously with one clock for any image pattern.
【0119】図4の算術復号器の基本的な動作を、図6
のタイミングチャートを用いて具体的に説明する。The basic operation of the arithmetic decoder shown in FIG.
This will be specifically described with reference to the timing chart of FIG.
【0120】第iシンボルの復号時(処理1100)、第i+1
シンボル(1つ先の復元シンボル)に対しては第iシン
ボルが“0”の場合と“1”の場合を想定し並行してQe R
OM913,914の読み出しを行う(処理1101,1102)。When decoding the ith symbol (process 1100), the (i + 1) th symbol
For the symbol (the next restored symbol), it is assumed that the i-th symbol is “0” and “1”, and Qe R
OM913 and 914 are read (processes 1101 and 1102).
【0121】また、同時に、第i+2シンボル(2つ先の
復元シンボル)に対しては、第iシンボルと第i+1シンボ
ルの組み合わせ4通りについて、コンテクストRAM905〜
908の読み出しを行う(処理1104〜1107)。At the same time, for the (i + 2) th symbol (the second restored symbol), the context RAMs 905 to
908 is read (processes 1104-1107).
【0122】また同時に、第i+3シンボルに対しては、
図10の参照画素の配置からまだ復元されていない第i+1
シンボルと第i+2シンボルの値を想定して4通りのコン
テクストインデックスを生成している 。At the same time, for the (i + 3) th symbol,
The (i + 1) th pixel which has not been restored yet from the arrangement of the reference pixels in FIG.
Assuming the value of the symbol and the (i + 2) th symbol, four types of context indexes are generated.
【0123】なお、参照画素の配置が図10と異なり、復
号化ライン上で左に伸びている場合には、算術復号演算
器のパイプラインステージからn段離れたパイプライン
ステージでは2のn乗個のデータの並列処理が行われ、
これらの並列データが第iシンボルの復号化によってシ
ンボルが確定すると、それらの中から一つが選択され、
次のパイプラインステージに送られるという構成となる
。When the arrangement of the reference pixels is different from that in FIG. 10 and extends to the left on the decoding line, at the pipeline stage n stages away from the pipeline stage of the arithmetic decoding unit, 2 @ n powers Data is processed in parallel,
When the symbols of these parallel data are determined by decoding the i-th symbol, one of them is selected,
It is sent to the next pipeline stage.
【0124】次に、図5に示される具体的な回路につい
ても、動作の説明を行なう。ここでは、算術復号演算器
917(図4)で第iシンボルの復号化処理を実行している
ものとして 、その時点を基準にして動作を説明する。Next, the operation of the specific circuit shown in FIG. 5 will be described. Here, the arithmetic decoding unit
Assuming that the decoding process of the i-th symbol is executed in 917 (FIG. 4), the operation will be described with reference to that time.
【0125】このタイミングでは、コンテクスト生成器
900は、第i+3画素の復号化用にコンテクストインデック
スSi+3を生成する。At this timing, the context generator
900 generates a context index Si + 3 for decoding the i + 3 pixel.
【0126】図5において、第iシンボルをDiとする
と、Si+3はDi+1、Di+2の組み合わせから4通りとなる。
それを例えばSi+3(Di+2=0/Di+1=0)のように表す。これ
はDi+2シンボルと第Di+1シンボルがともに“0”を想定
した第i+3シンボルのコンテクストインデックスを表
す。参照符号901〜904は、正規化対象となるコンテクス
トインデックスをコンテクストRAMに出力するための遅
延回路である。参照符号905〜908はコンテクストRAMで
ある。In FIG. 5, when the i-th symbol is Di, Si + 3 has four combinations of Di + 1 and Di + 2.
It is represented as, for example, Si + 3 (Di + 2 = 0 / Di + 1 = 0). This represents the context index of the (i + 3) th symbol assuming that both the Di + 2 symbol and the Di + 1th symbol are “0”. Reference numerals 901 to 904 are delay circuits for outputting a context index to be normalized to a context RAM. Reference numerals 905 to 908 denote context RAMs.
【0127】一つ一つは、符号化用と同じ構成である。
コンテクストRAM905,906の出力は第i+2シンボルの復号
化のためのQe ROMの状態番号である。ここで、記号Qe-i
ndexi+2(Di+1=0/Di=0)は第iシンボルと第i+1シンボルが
ともに“0”の場合を想定したQe-indexを示す。他も同
様である。MPSi+2は、第i+2シンボルの予測値である。
想定条件は、対応するQe-indexのそれと同じなので省略
している。Each has the same configuration as that for encoding.
The outputs of the context RAMs 905 and 906 are Qe ROM state numbers for decoding the (i + 2) th symbol. Where the symbol Qe-i
ndexi + 2 (Di + 1 = 0 / Di = 0) indicates a Qe-index assuming that both the i-th symbol and the i + 1-th symbol are “0”. Others are the same. MPSi + 2 is the predicted value of the (i + 2) th symbol.
The assumed conditions are omitted because they are the same as those of the corresponding Qe-index.
【0128】セレクタ909〜セレクタ912は、復元シンボ
ルDiの値によって入力信号を選択する。Diが復号化さ
れ、値が“0”であれば、セレクタの上側の信号が選択
される。その結果、例えば、セレクタ909の出力には、D
i+1復元用のQe-indexが選らばれる。同様に、セレクタ9
10の出力には、Di=0の場合のDi+1の予測値MPSi+1(Di=0)
が選らばれる 。The selectors 909 to 912 select an input signal according to the value of the restored symbol Di. If Di is decoded and the value is “0”, the signal above the selector is selected. As a result, for example, the output of the selector 909 includes D
Qe-index for i + 1 restoration is selected. Similarly, selector 9
For the output of 10, the predicted value of Di + 1 when Di = 0 MPSi + 1 (Di = 0)
Is chosen.
【0129】Qe ROM913の出力には、Di+1を復元するた
めのQe値が出力する。これをQei+1(Di=0)とする。この
信号は、符号化同様に3種類のQe値が含まれている。複
雑になるのでそれらをまとめて表現している。A Qe value for restoring Di + 1 is output to the output of the Qe ROM 913. This is Qei + 1 (Di = 0). This signal contains three types of Qe values as in the case of encoding. Since they become complicated, they are expressed together.
【0130】セレクタ915では、Qei+1(Di=0)とQei+1(Di
=1)がDiの値によって選択され、セレクタ916出力のMPS
iと合わせて算術復号演算器917に入力され、Diの復号化
後Di+1の復号化が実行される。セレクタの選択信号など
の制御信号は、制御回路918によって各部に供給されて
いる 。In the selector 915, Qei + 1 (Di = 0) and Qei + 1 (Di
= 1) is selected by the value of Di, and the MPS of the output of the selector 916 is selected.
The data is input to the arithmetic decoding arithmetic unit 917 together with i, and after decoding of Di, decoding of Di + 1 is executed. A control signal such as a selector selection signal is supplied to each unit by a control circuit 918.
【0131】以上説明した本発明の算術復号方法のパイ
プライン化の主要な手順をまとめると、図22に示すよう
になる。FIG. 22 shows a summary of the main steps in the pipeline of the arithmetic decoding method of the present invention described above.
【0132】すなわち、一つ先のシンボル,2つ先のシ
ンボル,3つ先のシンボルのそれぞれについて先行して
処理を行ない、実際に取り得る状態の各々に対応した情
報(確率推定値)を並列に出力する(ステップ40)。そ
して、実際の復号結果を用いて、セレクタを制御し、並
列に出力されている情報のうちの一つを選択する(ステ
ップ41)。That is, the first symbol, the second symbol, and the third symbol are processed in advance, and information (probability estimates) corresponding to each of the states that can be actually taken is parallelized. (Step 40). Then, using the actual decoding result, the selector is controlled to select one of the information output in parallel (step 41).
【0133】そして、正規化処理が生じ、かつコンテク
ストが同一の場合におけるパイプラインの乱れを防止す
るべく、各状態(コンテクスト)に対応した各確率推定
値の生成の際に、図21に示した、算術符号化の場合と同
様の手法を実行する。Then, in order to prevent the pipeline from being disturbed in the case where the normalization process occurs and the context is the same, the generation of each probability estimation value corresponding to each state (context) is shown in FIG. , The same method as in the arithmetic coding is executed.
【0134】なお、以上の説明では確率推定テーブルを
ROMで構成する例を述べたがRAMで構成してもよい。ま
た、QM-coderに限らず、コンテクスト毎に確率推定値を
適応的に更新しながら符号器に供給して動作する符号化
復号化装置には、本発明と同様の考えを適用することが
できる。In the above description, the probability estimation table is
Although the example of the configuration using the ROM has been described, the configuration using the RAM may be used. In addition to the QM-coder, the same idea as that of the present invention can be applied to an encoding / decoding device that operates by supplying an encoder while updating a probability estimation value adaptively for each context. .
【0135】本実施の形態では、画像の符号化を例に説
明したが、このような符号器、復号器は画像データ以外
のデータ圧縮全般に適用できる。また、確率推定ROMを1
個で構成する必要もなく、複数個で構成し、出力データ
が実施例のようになるようにしてもよい。また、Qe ROM
と同様の機能を、DSP等によるリアルタイム演算で実現
することも可能である。Although the present embodiment has been described with reference to the example of image encoding, such encoders and decoders can be applied to general data compression other than image data. In addition, the probability estimation ROM
There is no need to configure the output data, and a plurality of output data may be used as in the embodiment. Also, Qe ROM
The same function as that described above can be realized by real-time calculation using a DSP or the like.
【0136】また、上述の実施の形態では、パイプライ
ンの乱れを完全に防止する例について説明しているが、
多少の乱れは生じても、未来予測による複数の情報の並
列出力・選択の手法によって、パイプラインの乱れを低
減することも、当然ながら可能である。In the above-described embodiment, an example has been described in which the disturbance of the pipeline is completely prevented.
Even if some disturbance occurs, it is of course possible to reduce the disturbance in the pipeline by a method of parallel output / selection of a plurality of pieces of information by future prediction.
【0137】以上説明した本発明の算術符号・復号器
は、図11に示すような、複合機(スキャナー,ファクシ
ミリ装置,コピー機の機能を併せ持つ装置)に搭載する
のに適している。すなわち、画像を読み取って一時的に
メモリに蓄積するような用途、例えばスキャナやFAX,
複合機などにQM-coderを適用するには、スキャナやプリ
ンタの高速化に伴って高速処理が要求される。本発明を
適用すれば、どのような画像であっても、パイプライン
処理が乱れることがなく、非常に高速な符号・復号化を
行なうことができる。The arithmetic coding / decoding device of the present invention described above is suitable for being mounted on a multifunction device (a device having functions of a scanner, a facsimile machine, and a copier) as shown in FIG. In other words, applications that read images and temporarily store them in memory, such as scanners, faxes,
In order to apply QM-coder to multifunction devices, high-speed processing is required as scanners and printers increase in speed. By applying the present invention, it is possible to perform very high-speed encoding / decoding without disturbing the pipeline processing for any image.
【0138】図11の複合機は、ホストプロセッサ102
と、MH等の符号化回路103と、画像処理回路104と、QM
符号/符号化回路105と、画像ラインメモリ106と、符号
メモリ107と、モデムなどの通信インタフェース108と、
スキャナなどの画像入力装置111と、プリンタなどの画
像記録/表示装置112と、を有している。本発明の算術
符号・復号器は、QM符号/符号化回路105に搭載され
る。The multifunction peripheral shown in FIG.
, An encoding circuit 103 such as MH, an image processing circuit 104,
A coding / encoding circuit 105, an image line memory 106, a code memory 107, a communication interface 108 such as a modem,
An image input device 111 such as a scanner and an image recording / display device 112 such as a printer are provided. The arithmetic code / decoder of the present invention is mounted on the QM code / coding circuit 105.
【0139】(実施の形態3)本実施の形態では、本発
明の出願人が先に提案している、コンテクストが連続す
る場合に、1シンボル毎の符号化を止めて一括した符号
化を行なう方法と、実施の形態1,2で説明した、未来
予測によるパイプラインの乱れを防止する方法とを併用
する。(Embodiment 3) In the present embodiment, when the context is continuous, the encoding proposed by the applicant of the present invention is stopped and the encoding for each symbol is stopped and the collective encoding is performed. The method is used in combination with the method described in the first and second embodiments for preventing the disturbance of the pipeline due to future prediction.
【0140】図15に、画像の一例を示す。図示されるよ
うに、領域A,領域C等は文字領域であり、領域B,D
は白だけの領域(行間領域)である。そして、領域E,
Fの右側には、コンテキストの連続性が高く、それでい
て確率推定のむずかしい高精細な画像10,20が存在す
る。FIG. 15 shows an example of an image. As shown, areas A, C, etc. are character areas, and areas B, D
Is a white-only area (inter-line area). And the area E,
On the right side of F, there are high-definition images 10 and 20 in which the continuity of the context is high but the probability estimation is difficult.
【0141】文字領域では、確率推定が容易で正規化の
発生頻度が少ないため、パイプラインの乱れはそれほど
問題とならないと考えられる。また、高精細な画像10,
20についても、上述の本発明を用いることで、パイプラ
インの乱れを防止することができる。In the character area, since the probability estimation is easy and the frequency of normalization is low, the disturbance of the pipeline is not considered to be a serious problem. In addition, high-resolution images 10,
As for 20, even by using the above-described present invention, the disturbance of the pipeline can be prevented.
【0142】本発明では、未来予測に基づく情報を、現
在の情報と共に並列に出力して、事後的に選択する手法
を採るが、例えば、全白(あるいは全黒)の行間領域で
は、このような手法は必要がない。そこで、全白の領域
が現れると、一括して符号化(復号化)を行なうことに
より、無駄を省き、1枚の画像の符号化(復号化)を、
さらに高速で行なうことが可能となる。In the present invention, a method is employed in which information based on future prediction is output in parallel with the current information and is selected a posteriori. For example, in the all-white (or all-black) line spacing area, such a method is adopted. There is no need for a simple method. Therefore, when an all-white area appears, encoding (decoding) is performed collectively, thereby reducing waste and encoding (decoding) one image.
It is possible to perform the operation at a higher speed.
【0143】非白ラインでも、ある程度の一括符号化・
復号化を行なうことが可能であるが、全白ラインについ
ては、非白ラインの一括処理シンボル数よりも、より多
いシンボル数を、まとめて処理することができる。これ
により、処理速度の向上が図れる。Even for non-white lines, some collective encoding
Decoding can be performed, but with respect to all white lines, a larger number of symbols can be collectively processed than the number of collectively processed symbols of non-white lines. Thereby, the processing speed can be improved.
【0144】全白領域の一括符号化を行なうためには、
図12に示すように、コンテクスト生成器3200に入力され
るデータがラインメモリ2000にラッチされた状態で、シ
ーケンス制御部4000が白ラインを検出し、その識別信号
を複数シンボル処理判定器3300に送り、一括処理できる
最大シンボル数を決定する構成とする。なお、パイプラ
インの乱れを防止(低減)するための本発明の構成は、
コンテクスト生成器3200,コンテクストメモリ3400,確
率推定器3600においても、前掲の実施の形態と同様に採
用されている。In order to collectively encode all white areas,
As shown in FIG. 12, in a state where data input to the context generator 3200 is latched in the line memory 2000, the sequence control unit 4000 detects a white line and sends an identification signal thereof to the multi-symbol processing determination unit 3300. , The maximum number of symbols that can be collectively processed is determined. The configuration of the present invention for preventing (reducing) the turbulence of the pipeline is as follows:
The context generator 3200, the context memory 3400, and the probability estimator 3600 are also employed in the same manner as in the above-described embodiment.
【0145】白ラインの一括符号化(例えば、MPSの符
号化)は、図14に示すように、オージェンド(Areg)か
ら、初期値の1/2(0x8000)以下にならない範囲で複
数回分のQeを一括に減算することにより容易に実現され
る。正規化が生じてしまうと、処理が複雑化することが
懸念される。よって、一般的には、正規化が生じないこ
とを、連続シンボルの一括処理の条件とすることが望ま
しい。As shown in FIG. 14, batch encoding of white lines (for example, encoding of MPS) is performed for Qe for a plurality of times within a range from the original (Areg) to not less than 1/2 (0x8000) of the initial value. Can be easily realized by subtracting all at once. If normalization occurs, there is a concern that the processing will be complicated. Therefore, in general, it is desirable that no normalization occurs as a condition for batch processing of consecutive symbols.
【0146】一括符号化処理の手順を図13に示す。すな
わち、一括してQeを減算した場合に中央値以上となるか
を判定し(ステップ10)、コンテクストとMPSの連続を
判定し(ステップ20)、判定結果に応じて、一括符号化
処理または逐次符号化処理を選択する(ステップ30,4
0)。FIG. 13 shows the procedure of the batch encoding process. That is, it is determined whether or not the Qe is greater than or equal to the median when the Qe is subtracted in a lump (step 10), and the continuity of the context and the MPS is determined (step 20). Select the encoding process (steps 30, 4
0).
【0147】[0147]
【発明の効果】以上説明したように本発明によれば、パ
イプラインの乱れがなく、画像パターンによらず一定速
度で符号化や復号化を実行することができる。その結
果、従来よりも高速の符号化・復号化を行なえる高性能
な符号化・復号化装置を実現することができる。As described above, according to the present invention, encoding and decoding can be executed at a constant speed regardless of the image pattern without any disturbance of the pipeline. As a result, a high-performance encoding / decoding device that can perform encoding / decoding at a higher speed than before can be realized.
【図1】本発明の第1の実施の形態にかかる算術符号器
の構成を示すブロック図FIG. 1 is a block diagram showing a configuration of an arithmetic encoder according to a first embodiment of the present invention.
【図2】本発明における確率推定メモリの構成例を示す
図FIG. 2 is a diagram showing a configuration example of a probability estimation memory according to the present invention.
【図3】図1の算術符号器の動作(パイプライン動作)
を説明するためのタイミング図FIG. 3 shows the operation (pipeline operation) of the arithmetic encoder shown in FIG.
Timing diagram to explain
【図4】本発明の第2の実施の形態にかかる算術復号器
の構成を示すブロック図FIG. 4 is a block diagram showing a configuration of an arithmetic decoder according to a second embodiment of the present invention;
【図5】図4の算術符号器のQe ROMの周辺を詳細に示す
ブロック図FIG. 5 is a block diagram showing in detail the periphery of a Qe ROM of the arithmetic encoder of FIG. 4;
【図6】図4の算術復号器の動作(パイプライン動作)
を説明するためのタイミング図FIG. 6 shows the operation of the arithmetic decoder shown in FIG. 4 (pipeline operation);
Timing diagram to explain
【図7】本発明の算術符号器の効果を説明するための図FIG. 7 is a diagram for explaining the effect of the arithmetic encoder according to the present invention;
【図8】算術符号器の一般的な構成を示すブロック図FIG. 8 is a block diagram showing a general configuration of an arithmetic encoder.
【図9】算術符号の原理を示す図FIG. 9 is a diagram showing the principle of an arithmetic code.
【図10】算術符号化に用いられるテンプレートの一例
を示す図FIG. 10 is a diagram showing an example of a template used for arithmetic coding.
【図11】本発明の算術符号・復号器を搭載した複合機
の構成を示すブロック図FIG. 11 is a block diagram showing a configuration of a multifunction peripheral equipped with an arithmetic code / decoder of the present invention.
【図12】本発明の第3の実施の形態にかかる算術符号
器の構成を示すブロック図FIG. 12 is a block diagram showing a configuration of an arithmetic encoder according to a third embodiment of the present invention.
【図13】図12の算術符号器の主要な動作手順を示す
フロー図FIG. 13 is a flowchart showing a main operation procedure of the arithmetic encoder of FIG. 12;
【図14】一括符号化の原理を説明するための図FIG. 14 is a diagram for explaining the principle of collective encoding;
【図15】符号化対象となる画像の一例を示す図FIG. 15 is a diagram showing an example of an image to be encoded.
【図16】比較例の算術符号器の構成例を示すブロック
図FIG. 16 is a block diagram illustrating a configuration example of an arithmetic encoder according to a comparative example.
【図17】図16の回路における、正規化がない場合のパ
イプライン動作を示すタイミング図17 is a timing chart showing a pipeline operation when there is no normalization in the circuit of FIG. 16;
【図18】図16の回路における、正規化が発生した場合
におけるパイプライン動作を示すタイミング図FIG. 18 is a timing chart showing a pipeline operation when normalization occurs in the circuit of FIG. 16;
【図19】確率推定テーブルの内容を説明するための図FIG. 19 is a diagram for explaining the contents of a probability estimation table.
【図20】比較例における確率推定メモリの構成例を示
す図FIG. 20 is a diagram illustrating a configuration example of a probability estimation memory in a comparative example;
【図21】本発明の算術符号化方法(パイプラインの乱
れ防止)の主要な手順を示すフロー図FIG. 21 is a flowchart showing main steps of an arithmetic coding method (prevention of pipeline disturbance) according to the present invention;
【図22】本発明の算術復号化方法(パイプライン化)
の主要な手順を示すフロー図FIG. 22: Arithmetic decoding method of the present invention (pipelining)
Flow chart showing the main steps of
700 コンテクスト生成器 701 コンテクストRAM 702 Qe ROM 703 算術符号演算器 704,705,706,707 セレクタ 708 エクスクルーシブオア回路 709 制御回路 710,711 タイミング調整回路 712 正規化インデックス回路(更新アドレス発生回
路)700 Context generator 701 Context RAM 702 Qe ROM 703 Arithmetic code calculator 704, 705, 706, 707 Selector 708 Exclusive OR circuit 709 Control circuit 710, 711 Timing adjustment circuit 712 Normalized index circuit (update address generation circuit)
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5C059 KK14 MA00 ME11 UA02 UA05 UA31 UA34 UA38 5C078 BA21 CA32 DA01 DA02 DA11 5J064 AA02 AA03 BA09 BB03 BC01 BC02 BC03 BC17 BC25 BC28 BD02 9A001 BB02 BB03 BB04 EE04 GZ05 HH27 ──────────────────────────────────────────────────続 き Continued on the front page F-term (reference)
Claims (17)
ら符号化シンボルの生起確率を推定し、その推定値とシ
ンボルの予測値を符号器に供給して符号化する符号化装
置であって、現在の確率推定値と、所定の状況が生じて
更新がなされた後の確率推定値とを並列に生成し、前記
符号器の状態に応じて、前記現在の確率推定値または更
新後の確率推定値のいずれかを選択することを特徴とす
る符号化装置。1. An encoding apparatus for estimating an occurrence probability of an encoded symbol from a state of an already encoded symbol sequence, supplying the estimated value and a predicted value of the symbol to an encoder, and encoding the encoded symbol. A current probability estimate and a probability estimate after an update has occurred in a predetermined situation are generated in parallel, and depending on the state of the encoder, the current probability estimate or the updated probability estimate An encoding device for selecting one of the values.
ら符号化シンボルの生起確率を推定し、その推定値とシ
ンボルの予測値を符号器に供給して符号化する符号化装
置であって、確率推定値を記憶するメモリを有し、その
メモリの同一アドレスに、現在の確率推定値および所定
の状況が生じて更新がなされた後の確率推定値を記憶さ
せたことを特徴とする符号化装置。2. An encoding apparatus for estimating an occurrence probability of an encoded symbol from a state of an already encoded symbol sequence, and supplying the estimated value and a predicted value of the symbol to an encoder to perform encoding. Coding having a memory for storing a probability estimate, and storing, at the same address of the memory, a current probability estimate and a probability estimate after an update has been performed due to occurrence of a predetermined situation. apparatus.
(コンテクスト)を生成するコンテクスト生成器と、 コンテクスト毎に、シンボルの予測値(MPS)および状
態番号を記憶しているコンテクストメモリと、 現在の確率推定値(Qe),所定の状況が生じて更新がな
された後の確率推定値(next Qe)および、前記コンテ
クストメモリに記憶されている前記状態番号の更新が生
じた場合における更新後の状態番号を記憶しており、か
つ、前記現在の確率推定値,前記更新後の確率推定値,
および前記更新後の状態番号の各々を並列に出力する確
率推定メモリと、 この確率推定メモリから出力される前記現在の確率推定
値,前記更新後の確率推定値のうちのいずれかを選択す
る第1のセレクタと、 前記コンテキストメモリから出力される状態番号,ある
いは前記確率推定メモリから出力される前記更新後の状
態番号のいずれかを選択して、前記確率推定メモリに、
アドレス情報として供給する第2のセレクタと、 前記第1のセレクタにより選択された確率推定値と、前
記コンテキストメモリから出力される前記シンボルの予
測値(MPS)とを用いて算術符号演算を行なう算術符号
器と、を有することを特徴とする符号化装置。3. A context generator for generating a state (context) of an already coded symbol sequence, a context memory storing a predicted value (MPS) and a state number of a symbol for each context; A probability estimate (Qe), a probability estimate (next Qe) after a predetermined situation has occurred and updated, and an updated state when the state number stored in the context memory has been updated Number, and the current probability estimate, the updated probability estimate,
And a probability estimating memory that outputs each of the updated state numbers in parallel, and selecting one of the current probability estimating value and the updated probability estimating value output from the probability estimating memory. 1 and one of the state number output from the context memory and the updated state number output from the probability estimation memory, and the probability estimation memory
Arithmetic code arithmetic using a second selector supplied as address information, a probability estimation value selected by the first selector, and a predicted value (MPS) of the symbol output from the context memory An encoder comprising: an encoder.
リの読み出し処理,コンテクストメモリの読み出し処
理,および算術符号化演算を同じサイクルで実行してパ
イプライン化し、1サイクルで1画素の符号化を実行す
ることを特徴とする請求項3記載の符号化装置。4. The processing of generating a context, the processing of reading a probability estimation memory, the processing of reading a context memory, and the arithmetic encoding operation are executed and pipelined in the same cycle, and one pixel is encoded in one cycle. 4. The encoding device according to claim 3, wherein:
RAMで構成されていることを特徴とする請求項3または
請求項4記載の符号化装置。5. The method according to claim 5, wherein the context memory is a dual port.
5. The encoding device according to claim 3, wherein the encoding device is configured by a RAM.
ら復号化シンボルの生起確率を推定し、その推定値とシ
ンボルの予測値を復号器に供給して復号化する復号化装
置であって、将来の復元対象の画素の値を予測し、各予
測値に応じて定まる状態毎に確率推定値を並列に生成し
ておき、復号器による現実の復号結果に応じて、並列に
生成されている前記確率推定値のうちのいずれかを選択
することを特徴とする復号化装置。6. A decoding device for estimating a probability of occurrence of a decoded symbol from a state of a symbol sequence that has already been decoded, and supplying the estimated value and a predicted value of the symbol to a decoder for decoding. The values of the pixels to be restored in the future are predicted, and the probability estimation values are generated in parallel for each state determined according to each predicted value, and are generated in parallel according to the actual decoding result by the decoder. A decoding device for selecting any one of the probability estimation values.
(コンテクスト)から復号化シンボルの生起確率を推定
し、その推定値とシンボルの予測値を復号器に供給して
復号化する復号化装置であって、 コンテクスト生成器と、確率推定値を記憶している、複
数の確率推定メモリと、コンテクスト毎に予測シンボル
と前記確率推定メモリのアドレス情報を格納している、
複数のコンテクストメモリと、算術復号化演算器と、を
有し、 i番目(iは任意の自然数)のシンボルの算術復号化演
算を行なうサイクルと同一のサイクルにおいて、i+1番
目のシンボルを復号化するための、前記複数の確率推定
メモリの読み出し処理、およびi+2番目のシンボルを復
号化するための、前記複数のコンテクストメモリの読み
出し処理を並行して行うことを特徴とする復号化装置。7. A decoding apparatus for estimating the probability of occurrence of a decoded symbol from the state (context) of a symbol sequence already decoded and supplying the estimated value and the predicted value of the symbol to a decoder for decoding. A context generator, a plurality of probability estimation memories storing probability estimation values, and storing predicted symbol and address information of the probability estimation memory for each context.
A plurality of context memories and an arithmetic decoding operation unit, and decodes the (i + 1) th symbol in the same cycle as the arithmetic decoding operation of the ith (i is an arbitrary natural number) symbol Decoding processing of the plurality of probability estimation memories, and reading processing of the plurality of context memories for decoding the (i + 2) th symbol, in parallel. .
一アドレスに、現在の確率推定値および所定の状況が生
じて更新がなされた後の確率推定値を記憶していること
を特徴とする請求項7記載の復号化装置。8. Each of the plurality of probability estimation memories stores, at the same address, a current probability estimation value and a probability estimation value that has been updated after a predetermined situation has occurred. The decoding device according to claim 7.
ら復号化シンボルの生起確率を推定し、その推定値とシ
ンボルの予測値を復号器に供給して復号化する復号化装
置であって、現在の確率推定値と、所定の状況が生じて
更新がなされた後の確率推定値とを並列に生成してお
き、前記復号器の状態に応じて、前記現在の確率推定値
または更新後の確率推定値のいずれかを選択して前記復
号器に供給することを特徴とする復号化装置。9. A decoding apparatus for estimating a probability of occurrence of a decoded symbol from a state of a symbol series already decoded, and supplying the estimated value and a predicted value of the symbol to a decoder for decoding. A current probability estimate and a probability estimate after an update is performed in a predetermined situation are generated in parallel, and depending on the state of the decoder, the current probability estimate or the updated A decoding apparatus, wherein one of the probability estimation values is selected and supplied to the decoder.
から復号化シンボルの生起確率を推定し、その推定値と
シンボルの予測値を復号器に供給して復号化する復号化
装置であって、確率推定値を記憶するメモリを有し、そ
のメモリの同一アドレスに、現在の確率推定値および所
定の状況が生じて更新がなされた後の確率推定値を記憶
していることを特徴とする復号化装置。10. A decoding device for estimating a probability of occurrence of a decoded symbol from a state of a symbol sequence already decoded, and supplying the estimated value and a predicted value of the symbol to a decoder for decoding. Decoding having a memory for storing the probability estimation value, and storing at the same address of the memory the current probability estimation value and the probability estimation value after being updated due to the occurrence of a predetermined situation. Device.
(コンテクスト)から復号化シンボルの生起確率を推定
し、その推定値とシンボルの予測値を復号器に供給して
復号化する復号化装置において、 コンテクスト生成手段と、 現在の確率推定値,更新後の確率推定値,および更新後
の確率推定値が格納されている番地を示すアドレス情報
のそれぞれを、並列に出力する確率推定メモリと、 この確率推定メモリの並列に出力される、前記現在の確
率推定値,更新後の確率推定値のうちのいずれかを選択
する第1の選択手段と、 コンテクスト毎に予測シンボルおよび前記確率推定メモ
リのアドレス情報を格納しているコンテクストメモリ
と、 前記確率推定メモリのアドレスとして、前記コンテクス
トメモリの出力、または、前記確率推定メモリから出力
される、前記更新後の確率推定値が格納されている番地
を示すアドレス情報のいずれかを選択する第2の選択手
段と、 前記第1の選択手段によって選択された確率推定値と、
前記コンテキストメモリから出力される前記シンボルの
予測値(MPS)とを用いて算術復号演算を行なう算術復
号演算器と、を有することを特徴とする復号化装置。11. A decoding apparatus for estimating a probability of occurrence of a decoded symbol from a state (context) of a symbol sequence already decoded and supplying the estimated value and a predicted value of the symbol to a decoder for decoding. A context generating means, a probability estimating memory for outputting in parallel each of a current probability estimate, an updated probability estimate, and address information indicating an address at which the updated probability estimate is stored; First selecting means for selecting one of the current probability estimate and the updated probability estimate output in parallel to the probability estimation memory; a prediction symbol and an address of the probability estimation memory for each context; A context memory storing information; and an output of the context memory or the probability estimation memo as an address of the probability estimation memory. Output from the second selection means for selecting one of said address information indicating the address of probability estimation value updated is stored, the probability estimation value selected by the first selection means,
An arithmetic decoding unit that performs an arithmetic decoding operation using the predicted value (MPS) of the symbol output from the context memory.
モリの読み出し処理,コンテクストメモリの読み出し処
理,および算術復号化演算を同じサイクルで実行してパ
イプライン化することにより、1サイクルで1画素の復
号化を実行することを特徴とする請求項11記載の復号
化装置 。12. Executing context generation processing, probability estimation memory read processing, context memory read processing, and arithmetic decoding operation in the same cycle to form a pipeline, thereby decoding one pixel in one cycle. The decoding device according to claim 11, wherein:
と、優勢シンボル(MPS)の符号化で正規化処理が発生
したならば出力されるであろう第1の未来の劣勢シンボ
ル生起確率(next Qe1)と、劣勢シンボル(LPS)の符
号化で正規化処理が発生したならば出力されるであろ
う、未来の第2の劣勢シンボル生起確率(next Qe2)
とを並列に生成するステップと、 優勢シンボル(MPS)の符号化もしくは劣勢シンボル(L
PS)の符号化で正規化処理が発生し、かつ、次のコンテ
クストも同一の場合には、前記第1または第2の未来の
劣勢シンボル生起確率(next Qe1,next Qe2)を選択
して算術符号器に供給し、前記の場合に該当しないとき
は、前記現在の劣勢シンボル生起確率(Qe)を選択し
て、算術符号器に供給するステップと、を含むことを特
徴とする算術符号化方法。13. The current inferior symbol occurrence probability (Qe)
And the first future inferior symbol occurrence probability (next Qe1) that would be output if normalization processing occurred in encoding of the superior symbol (MPS), and the normality in encoding of the inferior symbol (LPS). Probability of the occurrence of the second inferior symbol in the future (next Qe2) that will be output if the conversion process occurs
In parallel with the encoding of the most significant symbol (MPS) or the least significant symbol (L
If the normalization process occurs in the coding of PS) and the next context is also the same, the first or second future lesser occurrence symbol (next Qe1, next Qe2) is selected and arithmetically performed. Supplying to an encoder and, if not applicable to the above case, selecting the current inferior symbol occurrence probability (Qe) and supplying the same to an arithmetic encoder. .
復号化対象の画素および3つ先の復号化対象の画素のそ
れぞれについて、先行して処理を行ない、実際に取り得
るコンテクストの各々に対応した、劣勢シンボル生起確
率(Qe)を並列に生成するステップと、 実際の復号結果に応じて、並列に生起した前記劣勢シン
ボル生起確率(Qe)の中から一つを選択して算術復号器
に供給するステップと、を有することを特徴とする算術
復号化方法。14. A process which is performed in advance for each of a first pixel to be decoded, a second pixel to be decoded, and a third pixel to be decoded, and a context that can be actually taken. Generating in parallel the inferior symbol occurrence probabilities (Qe) corresponding to each of the following; and selecting one of the inferior symbol occurrence probabilities (Qe) occurring in parallel according to the actual decoding result. Supplying the signal to an arithmetic decoder.
の、一つのコンテクストに対応する劣勢シンボル生起確
率(Qe)を生成する際、現在の劣勢シンボル生起確率
(Qe)の他に、所定の状況が生じて更新がなされた後の
劣勢シンボル生起確率(next Qe)を並列に生成してお
き、算術復号器の状態およびコンテクストに応じて、い
ずれか一つを選択することを特徴とする請求項14記載
の算術復号化方法。15. When generating the inferior symbol occurrence probability (Qe) corresponding to one context for the next pixel to be decoded, a predetermined symbol in addition to the current inferior symbol occurrence probability (Qe). The method according to claim 1, wherein the less probable symbol occurrence probabilities (next Qe) after the situation has been updated are generated in parallel, and one of them is selected according to the state and context of the arithmetic decoder. Item 15. The arithmetic decoding method according to Item 14.
よって符号化シンボルを予測し、その予測結果を符号化
する符号化方法において、符号化ラインと参照ラインが
共に白ラインであることが検出された場合には、非白ラ
インに対して一括した符号化を行なう場合のシンボル数
よりも大きなシンボル数にて、符号化ラインを一括して
符号化すると共に、 非白ラインについては、符号化シンボルの生起確率を推
定し、その推定された確率推定値と、所定の状況が生じ
て所定のパラメータの更新がなされたならば得られるで
あろう未来の確率推定値と、をそれぞれ並列に生成し、
実際の状態に応じて、前記現在の確率推定値または更新
後の確率推定値のいずれかを選択し、選択された確率推
定値を用いて符号化を行なうことを特徴とする符号化方
法。16. An encoding method for predicting an encoded symbol based on a value of a reference pixel around the encoded symbol and encoding the prediction result, detects that both the encoded line and the reference line are white lines. In this case, the coding lines are collectively encoded with a larger number of symbols than when collectively encoding non-white lines, and the non-white lines are encoded symbols. Of the probability of occurrence, and an estimated probability estimate and a future probability estimate that would be obtained if a predetermined situation occurred and a predetermined parameter was updated were generated in parallel, respectively. ,
An encoding method, wherein either the current probability estimate or the updated probability estimate is selected according to an actual state, and encoding is performed using the selected probability estimate.
の符号化装置、あるいは、請求項6〜請求項12のいず
れかに記載の復号化装置を搭載したファクシミリ装置。17. A facsimile device equipped with the encoding device according to any one of claims 1 to 5, or the decoding device according to any one of claims 6 to 12.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP37476099A JP3406550B2 (en) | 1999-12-28 | 1999-12-28 | Arithmetic encoding device and arithmetic decoding device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP37476099A JP3406550B2 (en) | 1999-12-28 | 1999-12-28 | Arithmetic encoding device and arithmetic decoding device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001189661A true JP2001189661A (en) | 2001-07-10 |
JP3406550B2 JP3406550B2 (en) | 2003-05-12 |
Family
ID=18504386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP37476099A Expired - Lifetime JP3406550B2 (en) | 1999-12-28 | 1999-12-28 | Arithmetic encoding device and arithmetic decoding device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3406550B2 (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1235353A2 (en) * | 2001-02-22 | 2002-08-28 | Matsushita Graphic Communication Systems, Inc. | Arithmetic coding apparatus and image processing apparatus |
JP2006054865A (en) * | 2004-08-02 | 2006-02-23 | Samsung Electronics Co Ltd | Binary arithmetic decoding apparatus and methods using pipelined structure |
US7088272B2 (en) | 2004-07-15 | 2006-08-08 | Kabushiki Kaisha Toshiba | Pipeline arithmetic code decoding method and apparatus using context index predictor |
JP2008141530A (en) * | 2006-12-01 | 2008-06-19 | Canon Inc | Image coder and image coding method |
US7418146B2 (en) | 2004-02-10 | 2008-08-26 | Sanyo Electric Co., Ltd. | Image decoding apparatus |
JP2009159366A (en) * | 2007-12-27 | 2009-07-16 | Akuseru:Kk | Encoding system, encoding method, encoding program, decoding system, decoding method, and decoding program |
US8018996B2 (en) | 2007-04-20 | 2011-09-13 | Panasonic Corporation | Arithmetic decoding apparatus and method |
JP7584579B2 (en) | 2023-06-28 | 2024-11-15 | 日立ヴァンタラ株式会社 | A device that processes received data |
-
1999
- 1999-12-28 JP JP37476099A patent/JP3406550B2/en not_active Expired - Lifetime
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1235353A2 (en) * | 2001-02-22 | 2002-08-28 | Matsushita Graphic Communication Systems, Inc. | Arithmetic coding apparatus and image processing apparatus |
US6677869B2 (en) | 2001-02-22 | 2004-01-13 | Panasonic Communications Co., Ltd. | Arithmetic coding apparatus and image processing apparatus |
EP1235353A3 (en) * | 2001-02-22 | 2004-07-14 | Panasonic Communications Co., Ltd. | Arithmetic coding apparatus and image processing apparatus |
US6864813B2 (en) | 2001-02-22 | 2005-03-08 | Panasonic Communications Co., Ltd. | Arithmetic decoding method and an arithmetic decoding apparatus |
US7418146B2 (en) | 2004-02-10 | 2008-08-26 | Sanyo Electric Co., Ltd. | Image decoding apparatus |
US7088272B2 (en) | 2004-07-15 | 2006-08-08 | Kabushiki Kaisha Toshiba | Pipeline arithmetic code decoding method and apparatus using context index predictor |
JP2006054865A (en) * | 2004-08-02 | 2006-02-23 | Samsung Electronics Co Ltd | Binary arithmetic decoding apparatus and methods using pipelined structure |
JP2008141530A (en) * | 2006-12-01 | 2008-06-19 | Canon Inc | Image coder and image coding method |
US8018996B2 (en) | 2007-04-20 | 2011-09-13 | Panasonic Corporation | Arithmetic decoding apparatus and method |
JP2009159366A (en) * | 2007-12-27 | 2009-07-16 | Akuseru:Kk | Encoding system, encoding method, encoding program, decoding system, decoding method, and decoding program |
JP4524501B2 (en) * | 2007-12-27 | 2010-08-18 | 株式会社アクセル | Encoding system, encoding method, encoding program, decoding system, decoding method, and decoding program |
JP7584579B2 (en) | 2023-06-28 | 2024-11-15 | 日立ヴァンタラ株式会社 | A device that processes received data |
Also Published As
Publication number | Publication date |
---|---|
JP3406550B2 (en) | 2003-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH09135358A (en) | Image encoding device using arithmetic code | |
US5245441A (en) | Document imaging processing method and apparatus | |
JP3457269B2 (en) | Arithmetic encoding / decoding method and arithmetic encoding / decoding device | |
JP3684128B2 (en) | Arithmetic encoding / decoding method and arithmetic encoding / decoding device | |
US5655032A (en) | Coding method and apparatus therefor | |
JPH08251586A (en) | Run length decoder | |
JPH09181921A (en) | Digital information encoding device, digital information decoding device, digital information encoding/decoding device, digital information encoding method and digital information decoding method | |
JP2001189661A (en) | Encoding device and decoding device | |
JP3459759B2 (en) | Arithmetic decoding device | |
JP3929312B2 (en) | Arithmetic coding apparatus and image processing apparatus | |
US7433522B2 (en) | JBIG coding apparatus and method with low cost, high-performance ping-pong buffer arrangement | |
JP2000217000A (en) | Image processor, image processing method and recording medium | |
US7142328B2 (en) | Image reduction method, image processing device and method of controlling image processing device | |
JP2000350043A (en) | Arithmetic coder and arithmetic decoder | |
JPS6360952B2 (en) | ||
JP3235510B2 (en) | Encoding method and encoding device, decoding method and decoding device | |
KR100269140B1 (en) | Context generating circuit for small picture and method the refor | |
JP2729165B2 (en) | Image processing apparatus and processing method thereof | |
JP3705771B2 (en) | JBIG decoding method | |
KR100276768B1 (en) | Changed Pixel Detector for Encoding Image Data | |
JP3224127B2 (en) | Image data conversion processor | |
KR100197075B1 (en) | Compression data recurrence apparatus | |
KR940003805B1 (en) | Adaptive threshold circuit to complement on two | |
JP3484900B2 (en) | Image data encoding device | |
JP3227237B2 (en) | Encoding device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080307 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090307 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100307 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110307 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110307 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120307 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130307 Year of fee payment: 10 |