JP2003209699A - 算術符号化装置および画像処理装置 - Google Patents

算術符号化装置および画像処理装置

Info

Publication number
JP2003209699A
JP2003209699A JP2002002818A JP2002002818A JP2003209699A JP 2003209699 A JP2003209699 A JP 2003209699A JP 2002002818 A JP2002002818 A JP 2002002818A JP 2002002818 A JP2002002818 A JP 2002002818A JP 2003209699 A JP2003209699 A JP 2003209699A
Authority
JP
Japan
Prior art keywords
code
arithmetic
context
image
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
JP2002002818A
Other languages
English (en)
Other versions
JP3929312B2 (ja
Inventor
Hitoshi Horie
等 堀江
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.)
Panasonic System Solutions Japan Co Ltd
Original Assignee
Panasonic Communications Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Communications Co Ltd filed Critical Panasonic Communications Co Ltd
Priority to JP2002002818A priority Critical patent/JP3929312B2/ja
Priority to US10/046,764 priority patent/US6677869B2/en
Priority to EP02001349A priority patent/EP1235353A3/en
Publication of JP2003209699A publication Critical patent/JP2003209699A/ja
Priority to US10/680,152 priority patent/US6864813B2/en
Application granted granted Critical
Publication of JP3929312B2 publication Critical patent/JP3929312B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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

(57)【要約】 【課題】 2値データ・多値データを問わず、超高
速かつ高圧縮率の算術符号化・復号化を実現し、併せ
て、ブロック毎の算術符号量を一定値に揃えて、その後
の処理を簡単化すること。 【解決手段】 像域判定・階層化処理回路12にて、入画
画像を分析して正確に画像情報を読み取り、超高速に算
術符号化する。正規化処理の発生に伴うパイプラインの
乱れは、未来予測型並列出力Qeメモリ18を採用するこ
とで解決する。また、コンテクスト生成器16において、
多値画像符号化の際、DCT係数のAC成分とDC成分を区別
することなく共通のコンテクストを発生させる。また、
可変長符号である算術符号を、固定長化して出力するた
めの固定長化処理回路22を設け、復元画像の編集を容易
化する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、算術符号化装置お
よび画像処理装置に関する。
【0002】
【従来の技術】符号化シンボルを既に符号化済みの周辺
画素の状態によって予測し、予測結果をその状態毎に定
まる符号化シンボルの確率推定値に基づき算術符号化す
る方式は、圧縮率の点から最も優れた特性を示すことが
知られている。
【0003】JBIG(ITU勧告T.82)に採用されている符号
器であるQM-coderは、算術符号化を行う装置の代表例で
ある。
【0004】以下、2値画像の算術符号器であるQM-code
rの、一般的な構成と動作について説明する。
【0005】QM-coderは、図18に示すように、コンテク
スト生成部200と、コンテクストテーブル(コンテクス
トメモリ)210と、確率推定部220と、算術符号器230
と、をもつ。
【0006】コンテクスト生成部200は、符号化画素の
周辺10画素によって作られる1024個の状態を検出する。
図20にテンプレートの一例を示す。
【0007】図中、“?”で示されるのが符号化対象の
画素であり、また、“×”で示される10個の画素が参照
画素である。一つの画素の符号化が終了すると、図20に
点線で示されるように、テンプレートを右側に一つずら
し、次の画素の符号化を行なう。
【0008】10個の画素の値により決定される1024個の
状態の各々は、コンテクスト(以下“S”と表す)と呼ば
れる。コンテクスト毎に、優勢シンボルの予測値MPS(s)
(すなわち、着目する符号化シンボルについて、MPSが
“1”であると予測されれば、MPS(S)=1である)
と、確率推定器の状態番号とが、コンテクストメモリか
ら読み出され、確率推定部220に出力される。
【0009】確率推定器220は、これらの情報から劣勢
シンボルの領域幅Qe(s)を算術符号器230に出力する。こ
こで“Qe"は、LPSが生起される確率であり、本明細書で
は、これを符号化シンボルの生起確率とか、単に、確率
推定値という場合もある。
【0010】また、劣勢シンボルの領域幅Qe(s)は、L
PSの生起確率にオージェンドの幅をかけて算出される、
LPSの生起確率に対応する幅を意味する。オージェンド
とは、図19に示されるような、数直線(各選択区間)の
全体の幅をいう。
【0011】算術符号器230は、符号化シンボル、優勢
シンボルの予測値MPS(s)および領域幅Qe(s)から算術符
号化演算を実行し、符号を出力する。
【0012】図19に示すように、算術符号化では、初期
値0〜1の数直線を優勢シンボル(MPS)の領域幅と劣勢
シンボル(LPS)の領域幅に分ける。符号化対象のシン
ボル系列は、分割された領域内の代表点に対応させる。
代表点は、部分区間内の一番下にとられる。
【0013】符号化シンボルと予測値が同じときは、次
のシンボルの符号化にはMPS幅が選ばれ、そうでなけれ
ばLPS幅が選ばれる。
【0014】上述のとおり、この領域幅の中に代表点を
設けて、その代表点の2進小数点が符号を表わす。
【0015】算術符号化演算では、領域幅が所定値未満
になった時には、少数点の精度を防ぐために所定値(具
体的には初期値の1/2)以上になるまで2倍処理を繰り返
す。この処理を正規化処理という。
【0016】また、正規化処理は、LPSを符号化したと
きも行われる。すなわち、推定がはずれてLPS幅が選択
されると、そのLPS幅は、必ず、初期値の1/2より小さい
ため、毎回、正規化がなされることになる。
【0017】正規化処理が行なわれる場合には、図18の
コンテクストテーブル210における、MPS値や状態番号
(ST)が更新される。状態番号の更新は、確率推定部22
0に書かれている“次の状態番号”が、コンテクストテ
ーブル210にオーバーライトされることにより実現され
る。図18では、このオーバーライトを矢印RXで示して
いる。
【0018】このコンテクストテーブル210の更新によ
り、次もまた、前回と同じコンテクストであった(すな
わち、図20のテンプレートを右に一つずらしても、参照
画素の1と0の配置が前回と同じであった)としても、
発生するQe(S)の値が異なることになる。
【0019】これによって、より情報源の確率分布に適
した値が選択されるようになる。つまり、符号化対象の
画像への適応化がなされる。
【0020】なお、符号化対象は、2値データに限られ
るものではない。中間調画像のデータのような多値デー
タも、QM-coderで符号化することができる。但し、使用
するコンテクストは、符号化対象に適合しているものを
使わなければならない。
【0021】例えば、離散コサイン変換係数(DCT係
数)には、DC成分とAC成分が含まれる。各成分は信号の
性質が異なる。よって、それらに適したコンテクストモ
デルを構築することが、符号化効率を向上させる点では
重要である。
【0022】現状の技術では、DC成分とAC成分の各々に
対して、別々にコンテクストが生成されている。
【0023】
【発明が解決しようとする課題】従来の算術符号化処理
では、以下のような課題がある。
【0024】(課題1)本来、算術符号化は、圧縮率に
は優れているが、1シンボル毎にコンテクストの生成
と、シンボルの生起確率情報の推定と、算術符号演算を
繰り返す必要があることから、処理時間が長いという弱
点がある。処理スピードの低下は、高画質かつ高速性が
要求される、デジタルコピー機のような分野では、かな
り大きな問題となる。
【0025】また、算術符号処理をパイプライン化した
場合、途中で正規化処理が発生すると、パイプラインに
乱れが生じ、その結果として無駄な待ち時間が増える。
よって処理効率が低下する場合がある。特に、正規化が
かなりの頻度で発生し、かつ、コンテクストに連続性が
ある画像パターンでパイプラインの乱れが発生しやすい
と考えられる。なお、復号化の場合にも同様の問題が生
じる。
【0026】よって、パイプライン化したとしても、そ
の精度は高いとはいえず、算術符号・復号処理の高速化
は、あまり望めない。
【0027】(課題2)2値データの符号化のみなら
ず、多値データ(例えば、JPEG圧縮により得られる直交
変換係数などの数値データ)を符号化、復号化する場合
にも、高精度なパイプライン処理を行うようにするのが
望ましい。
【0028】しかし、直交変換係数などの数値を高速に
算術符号化、復号化することに関して次の課題がある。
【0029】つまり、パイプライン処理を有効に働かせ
るには、一定速度で次のパイプラインステージに必要な
データを連続的に供給しなければならない。
【0030】例えば、復号化処理を高速に実行するため
には、コンテクストインデックスは、復元される可能性
のある複数シンボルに対して同時に供給する必要があ
る。このコンテクストインデックスのセットを、“コン
テクストインデックスベクトル”と呼ぶことにする。
【0031】このようなベクトル形式のコンテクストデ
ータを一定速度で供給するのは、実際には困難である。
上述のとおり、直交変換係数にはDC成分とAC成分とが含
まれる。そして、DC成分とAC成分とは統計的性質が異な
るので、現在の技術では、各成分毎に別々のコンテクス
トを設けている。
【0032】異なるコンテクストを連続して供給するの
は困難である。よって、符号化するべき複数のシンボル
の中に、DC成分とAC成分が混在する場合、コンテクスト
インデックスベクトルを一定速度で供給することは困難
である。
【0033】したがって、多値データの高速な算術符号
化は、2値データの場合以上に、困難である。
【0034】(課題3)入力画像を所定サイズのブロッ
ク毎に分け、各ブロック単位で独立に算術符号化を行
い、各ブロック単位で自由に復号することができると便
利である。
【0035】しかし、算術符号は可変長符号であるた
め、1ブロックに対応する符号の符号長は一定ではな
い。よって、算術符号化された画像データを復元する際
に、一部のブロックのみについて画像の向きを変える処
理を行う場合などには、対象となるブロックの先頭の画
素のデータを探し出すのが困難である。
【0036】本発明は、このような現状を考慮し、2値
データ・多値データを問わず、超高速かつ高圧縮率の算
術符号化・復号化を実現し、併せて、ブロック毎の算術
符号量を一定値に揃えて、その後の処理を簡単化するこ
とを目的とする。
【0037】
【課題を解決するための手段】(1)本発明の算術符号
化装置では、符号化パラメータの更新が必要になった場
合に、そのパラメータが更新された後に出力されるであ
ろう確率推定値(未来の確率推定値)を、現在の推定値
(通常の処理で出力される確率推定値)と共に、並列に
出力する。そして、所定の状況が発生した場合(例え
ば、パラメータの更新の必要が生じ、かつ、コンテクス
トが連続するためにRAMの読み出しと書き込みが競合す
るような場合)には、現在の推定値ではなく、未来の推
定値の方を符号器に供給する。これにより、ループを回
してパラメータを更新している間、符号化を待つ必要が
なくなり、パイプラインの乱れが防止される。
【0038】(2)また、本発明では、圧縮率を絶対的
に重要視する従来の固定的な考えを捨てて、処理スピー
ドを最も重視する新規な考え方を導入する。この考え方
に立脚して、DC成分用のコンテクストおよびAC成分用の
コンテクストを積極的に共通にする。そして、コンテク
ストインデックスの生成を符号化も復号化も状態遷移テ
ーブルで実現できるようにする。
【0039】復号時のコンテクストインデックスベクト
ルの生成も容易となり、パイプライン処理に適した符号
器や復号器が実現できる。符号化コンテクストを簡略化
したぶん、圧縮性能が多少は低下する。しかし、本発明
では、像域判定や階層化処理などにより、入力画像の情
報を正確に分析し、高精度な圧縮を行うため、問題はま
ったく生じない。また、現実には、画質よりも処理速度
が優先される場合も多く、実用上の問題は何もない。
【0040】本発明によれば、2値画像および多値画像
の双方について、柔軟に、しかも、ほとんど算術符号化
アルゴリズムで決まる限界の速度でもって算術符号化・
算術復号化することができる。
【0041】しかも、2値画像と多値画像を区別するこ
となく、共通のコンテクストを用いて符号・復号化がで
きるため、符号・復号器の構成もきわめて簡素化され
る。
【0042】(3)また、算術符号を一旦、メモリにス
トアし、そのメモリから、常に所定のバイトのデータを
読み出すことにより、1ブロックの符号を固定長化する
ことができる。
【0043】これにより、ブロックを単位として画像を
部分的に復元する等の処理を、簡単に行うことができる
ようになる。
【0044】
【発明の実施の形態】以下、本発明の実施の形態につい
て、図面を参照して説明する。
【0045】本発明の算術符号化装置の一例の全体構成
の概要を図1に示す。
【0046】図示されるように、本発明の算術符号化装
置は、画像信号をA/D変換器10によりディジタルデータ
に変換した後、まず、像域判定・階層化処理回路12に
て、像域判定ならびに階層化処理を行う。
【0047】像域判定は、例えば、タイル(マクロブロ
ック:例えば、32画素×32画素)を単位として行われ
る。
【0048】階層化処理は、例えば、一つのタイルに含
まれる全画素を、前景(FG)と背景(BG)に分類する処
理である。このような処理により、入力された画像がも
つ情報を正確に取得することができる。
【0049】取得された画像情報は、完全にパイプライ
ン化された算術符号化装置14にて、算術符号化される。
【0050】算術符号装置では、予測値が実際の値と異
なっていた場合に、そのペナルティーとして符号が出力
され、コンテクストRAMの書き換えが行われる。したが
って、そのコンテクストRAMの書き換えが行われるとき
には、必ず、パイプラインが乱れてしまう。
【0051】本発明では、この問題点を、未来予測値の
並列出力方式を採用すること、ならびに、DCT係数のAC
成分/DC成分を区別せずに共通のコンテクストを使用す
ることにより、克服する。
【0052】これにより、ハザードレス・完全パイプラ
イン処理が実現される。これにより、1クロックに同期
して、1画素分の符号を連続的に生成することができ
る。
【0053】算術符号化装置14は、コンテクスト生成器
16(コンテクストRAMも含むものとする)と、未来予測
型並列出力Qeメモリ18と、算術符号演算器20とを含
む。
【0054】コンテクスト生成器16は、多値データ用コ
ンテクスト生成において、AC成分/DC成分を区別せず
に、統一されたツリー構造に従って共通のコンテクスト
を生成することに特徴がある。
【0055】算術符号演算器から出力される符号は、固
定長化処理回路22により、一つのブロック(例えば、DC
T変換の単位となるブロック)の符号量が、所定のサイ
ズに強制的に揃えられる。
【0056】各ブロックの符号長が固定化されているこ
とにより、ブロックを単位とした復元画像の編集が容易
となる。
【0057】一般的にいえば、符号を固定長化すると情
報の欠損が生じて、復元画像の質はやや低下する。
【0058】しかし、本発明では、画像データの情報を
高精度に取得し、算術符号器で高い精度で圧縮している
ため、本来的な情報の品質が高い。
【0059】よって、固定長化処理による復元画像の品
質低下を心配する必要がない。
【0060】以上説明した、本発明の算術符号化装置の
主な特徴点を図2に示す。
【0061】像域判定・階層化処理では、画像をタイル
(マクロブロック)T1〜T9に分割し、各タイルに含まれ
る画素を背景(BG)と前景(FG)に分類する。
【0062】タイルは、例えば、32画素×32画素のサイ
ズであり、DCT変換の基本となるブロック(ミクロブロ
ック:8画素×8画素)BEが16個、集まって構成される
(処理1)。
【0063】次に、完全パイプライン型算術符号化装置
による符号化を行う(処理2)。算術符号化は、一つの
ブロック(BE)毎に行う。
【0064】つまり、一つのブロック(BE)の符号化が
終了すると、最後に符号化終了を示すEOBを付加し、算
術符号器を初期化して、次のブロックの符号化を行う。
【0065】次に、固定長化処理(処理3)を行う。こ
れにより、一つのブロックの符号の符号長が一定の長さ
に揃えられる。
【0066】符号は、符号メモリ4に一時的に蓄積され
る(処理4)。その後、復号化処理を経て、画像が復元
される(処理5)。
【0067】このとき、ブロックを単位として、部分的
に画像の向きを変える等の処理を行う場合がある。1つ
のブロックの符号の符号長は一定であるため、目的とす
る画像ブロックの先頭画素の位置を容易に探し出すこと
ができる。このように、復元画像の編集を容易に行うこ
とができる。
【0068】図3は、本発明の算術符号化装置の、より
具体的な構成の一例を示すブロック図である。
【0069】画像データは、階層分離/近似/直交変換
・量子化を行う部分(階層分離/近似処理部)100に送
られる。
【0070】階層分離/近似処理部100は、タイルメモ
リ2000と、像域分離部2001と、特徴抽出器2002と、階層
分離部2003と、BG(バックグランド)メモリ2004と、FG
(フォアグランド)メモリ2005と、ビットマップメモリ
2006と、直交変換器(DCT)2007と、BG近似処理器2008
と、FG近似処理器2009と、量子化器2011と、をもつ。
【0071】近似あるいは量子化された画像データと、
タイルの像域判定結果を示すフラグ情報と、タイル内の
各画素が背景(BG)/前景(FG)のどちらに属するかを
示すビットマップデータと、近似処理が可能であったか
否かを示すフラグ情報は、算術符号器(可変長符号器)
200で、符号化される。
【0072】算術符号器200におけるメモリ1006は、タ
イルの像域判定結果を示すフラグ情報および近似処理が
可能であったか否かを示すフラグ情報を、一時的に蓄積
するためのメモリである。
【0073】また、算術符号器200の動作は、制御部100
7により、統括的に制御される。
【0074】算術符号演算器1004から出力される符号
は、固定長化処理部300内に設けられている符号バッフ
ァ3002に一時的に蓄積される。この符号バッファは、1
つのブロックの符号化に先立ち、オールゼロにクリアさ
れる。
【0075】符号読出し部3003は、所定バイト数の符号
(1つのブロックの符号)が蓄積される度に、符号バッ
ファ3002からデータを読出す。
【0076】符号長が所定バイトに達しない場合には、
その符号の末尾に、符号バッファ3002の初期値であるゼ
ロが付加されたデータが自動的に読み出されることにな
る。
【0077】よって、ゼロを意図的に挿入して、符号を
固定長化するという面倒な処理は不要となる。
【0078】符号長カウンタは、符号長を積算し、その
積算値が所定バイト数に達したかを検出して、算術符号
演算器1004に符号化の終了を指示する。
【0079】以上が、本発明の算術符号化装置の概要で
ある。
【0080】以下、本発明の装置の各部の具体的な構成
や特徴について、図面を参照しつつ、順番に説明してい
く。
【0081】まず、図4〜図7を参照して、2値データの
パイプライン算術符号化について説明する。
【0082】(2値データの算術符号化処理)図4は、本
発明の実施の形態1にかかる算術符号器の構成を示すブ
ロック図である。
【0083】図示されるように、符号器は、コンテクス
ト生成器700と、コンテクストテーブル(コンテクストR
AM)701と、確率推定部(Qe ROM)702と、算術符号演算
器703とからなり、それぞれ1クロックで1つの処理を
実行する。すなわち、図4の算術符号器は、4段のパイ
プライン構造を有する。
【0084】これらの構成要素の基本的な処理内容は、
従来と同じである。
【0085】本実施の形態の特徴は、Qe ROMの構成と、
その周辺部分の回路構成にある。
【0086】Qe ROM702に搭載されているテーブルの内
容は図5の通りである。図5のテーブルの特徴は、従来の
テーブルのデータに、さらに、“next Qe(LPS)”およ
び“next Qe(MPS)”の各データが追加されていること
である。
【0087】これにより、図5のテーブルは、63ビット
の幅を有し、従来のテーブルよりビット数が拡張されて
いる。
【0088】ここで、“next Qe(MPS)”とは、算術符
号演算器703でMPSの符号化を行なった結果、オージェン
ドが初期値の1/2未満となって正規化処理が発生した場
合において、コンテクストRAM701の遷移先の状態が更新
され、かつ、次の符号化シンボルが前回と同じコンテク
ストであったために、コンテクストRAM701に対して前回
と同じ番地へのアクセスが発生し、その結果、Qe ROM70
2の、更新された遷移先の状態に対応する番地にアクセ
スがなされたならば、その結果として、Qe ROM702から
出力されるであろうLPSの幅(Qe)のことである。
【0089】同じく、“next Qe(LPS)”とは、算術符
号演算器703でLPSの符号化によって必然的に正規化処理
が発生し、これに対応してループを回してコンテクスト
テーブルを更新し、同じアドレスにアクセスしたなら
ば、Qe ROM702から出力されるであろうLPSの幅(Qe)の
ことである。
【0090】つまり、正規化処理が発生し、コンテクス
トRAM701内のテーブルを更新して、再度、全く同じ番地
にアクセスをしたならば発生するであろう、未来のQeの
値を、あらかじめ、Qe ROM702内のテーブルに、現在のQ
eの値と併記しておくことに本実施例の特徴がある。
【0091】図4の制御回路709には、符号化シンボルの
コンテクストや算術符号演算器における正規化の発生の
有無等のあらゆる情報が入力される。
【0092】よって、制御回路709がそれらの情報か
ら、現在のQeを選ぶか、未来のQe(MPS)あるいはQe(L
PS)を選ぶかを、リアルタイムで選択することができ
る。このような選択を可能とするために、セレクタ706
が設けられている。
【0093】これにより、仮に正規化処理が発生して
も、ループを回してテーブルを更新する間、処理を待つ
必要がなく、セレクタにより未来のQe(MPS)あるいはQ
e(LPS)を選ぶだけでよい。よって、パイプラインに乱
れが生じない。
【0094】セレクタ704、705は、正規化処理が発生し
た後、次も、また正規化処理が発生する可能性があるこ
とを考慮し、前回使用したMPS値や、遷移先の状態の番
号を再利用できるようにするために設けられている。
【0095】以下、具体的に説明する。
【0096】Qe ROM702には、状態遷移テーブルの状態
番号がアドレスとして入力する。出力信号は現在の確率
推定値Qe(s)(信号713)、正規化により状態遷移が起き
た時の新しいQe(S)がLPS正規化とMPS正規化用に信号71
4、信号715として出力され、さらに、正規化による状態
遷移番号が、同様に2種類(信号716 、信号717)出力さ
れ、また、MPS(S)を反転させるか否かを示すフラグ(swi
tch-MPS 、信号718)が出力される。
【0097】このフラグと現在の予測シンボルMPS(S)の
排他的論理和をEOR回路708でとることで、新しい予
測シンボルが作られる。この値とセレクタ707の出力
が、正規化対象となるインデックス724となる。
【0098】セレクタ704、705では、正規化が発生した
直後の符号化シンボルが、同じコンテクストで符号化さ
れるときには、下側の信号が選択される。すなわち、コ
ンテクストRAM701にオーバーライトされる、更新用のMP
Sおよび次の状態番号が選ばれることになる。
【0099】このような場合には、次も確率推定がはず
れて、正規化処理が連続する可能性があることから、更
新用のMPSと次の状態番号とを、再度、利用するように
している。
【0100】この場合、セレクタ705を介して出力され
る状態番号をアドレス変数として、Qe ROM702がアクセ
スされ、前回と同じ値の、Qe713、next Qe714、715が並
列に出力され、符号化結果を待って、この中から一つが
選択されることになる。
【0101】各セレクタの選択信号は、制御回路709に
よって必要な状態信号を見ながら、適宜、出力される。
図が煩雑となるので制御信号の詳細は省略している。
【0102】図5は、Qe ROMの構成例を示している。
【0103】上述のとおり、パイプラインが乱れるの
は、Qe ROMの再読み出しが必要となることが原因であ
る。
【0104】本実施例では、このような場合に、Qe ROM
の読み直しが不要になるように、LPS正規化時の遷移先
のQeと MPS正規化時の遷移先のQeとを同一アドレスに記
憶している。ビット15からビット46がこの部分にあた
る。
【0105】状態遷移表によれば、Qe-indexが0のとき
の、MPS正規化 、LPS正規化の遷移先(Qe-index)は1で
あることが分かる。また、Qe-indexが1のときのQeは0x
2586であることが分かる。
【0106】こうすることによって、正規化発生直後
に、同一コンテクストの符号化を行う場合も、ROMの再
読み出しは不要であり、既に読み出されている複数のデ
ータから、状況に応じて必要なものを選択するだけでよ
い。
【0107】次に、図6を参照しながら、図4の算術符号
器の動作の概要を説明する。
【0108】第i番目のシンボルの符号化がクロックに
同期して、コンテクストの生成(context det 。)、コン
テクストRAMのリード(context RAM RD)、Qe ROMのリー
ド(QeRD) 、符号化演算および正規化演算(coding/renor
m)の順に処理されていく。
【0109】符号化シンボルとそのコンテクストは、コ
ンテクスト生成器700で検出する 。符号化シンボルはパ
イプラインのタイミング調整用の遅延回路710を通して
算術符号演算器703に送られる。
【0110】コンテクストの識別番号であるコンテクス
トインデックス”s”は、コンテクストRAM701の入力信
号となる。同時にそのコンテクストで正規化が発生する
場合に、RAMの内容を更新するためのアドレス情報とし
て、正規化インデックス712に入力される。
【0111】正規化インデックス712は、3クロック分
の遅延を与える遅延回路である。
【0112】正規化インデックス712の出力信号724は、
正規化処理が発生した場合に、次の遷移先の状態やMPS
値を更新する際のアドレスを指定する信号(コンテクス
トインデックス)となる。
【0113】コンテクストRAM701は、リードとライトを
並行して行なえるデュアルポートRAMで構成する。
【0114】これにより、正規化処理が生じてRAMの更
新が必要となった場合でも、次のコンテクスト(図20の
テンプレートを右側にずらした場合の参照画素における
1と0の配置)が前回と違っていれば、符号化用のコン
テクスト情報の読み出し(リード)と、正規化が生じた
場合のコンテクスト情報の更新(ライト)とを、同じサ
イクルで、同時に実行できるようになる。
【0115】したがって、正規化処理が発生しても、次
のコンテクストが異なっているのであれば、ROMへのア
クセスの競合が生じないため、オーバーライトを待つ必
要がなく、パイプラインの乱れは生じない。
【0116】コンテクストRAMの出力信号は、符号化シ
ンボルの予測値MPS(S)と確率推定器の状態番号(図中st
ate No)である。予測値MPS(S)は、パイプラインの遅延
調整回路711を通って算術符号演算器703に送られる。
【0117】これら2つの出力信号は、セレクタ704と70
5に入る。制御回路709は、正規化が発生しない時は、上
側の信号(つまり、コンテクストRAMから出力されるMPS
値と状態番号)が選ばれるように、セレクタ704、705を
制御する。
【0118】Qe ROM702は、セレクタ705を介して入力さ
れる状態番号をアドレス変数としてアクセスされる。
【0119】図5に示すように、QeROM702の一つ
のアドレスには3種類のQeが併記されているため、Qe R
OM702からは、確率推定値として3種類の値が、常に出力
される。そして、制御回路709が、正規化の有無やコン
テクストの連続の有無を判定して、状況に応じて、それ
らの中の一つをリアルタイムで選択していく。
【0120】以下、図6を用いて、正規化処理が発生し
た場合の動作を説明する。
【0121】図6における処理801では、Qe(Si)(信号71
3)が選択されたものとする。ここでは第i番目のコンテ
クストをSiとした。
【0122】処理802で、第iシンボルの符号化演算と正
規化処理が行われる。ここでは、LPSを符号化して正規
化が発生したものとする。
【0123】第i+1シンボルに対しては第iシンボルの符
号化演算と同一サイクルで、Qe ROM702の読み出しが実
行される(処理804)。
【0124】第i+1シンボルのコンテクストも同じくSi
であったとする。そうすると、第iシンボルでLPS正規化
が起きたので、セレクタ706では、LPS正規化で遷移する
先のQe値714が選択される。
【0125】処理805では、この値を使った符号化演算
が実行される。このとき処理803ではコンテクストRAM70
1のコンテクストSiの内容が更新される。
【0126】更新処理は以下のように行われる。すなわ
ち、セレクタ707では、LPS正規化時の次の状態番号716
が選択される。一方、EOR回路708では、switch-MPS(信
号718)と現在の予測値MPS(Si)(信号723)から新しい
予測値(信号721)を作る。
【0127】上述のとおり、信号718が“1”であればM
PS(Si)の値は反転する。これら2つの情報がコンテクス
トRAM701のアドレスSiに書かれる。
【0128】このときアドレスSiは、遅延回路712から
信号724として出力されている。この更新処理のタイミ
ングで、第i+2シンボルに対しては、Qe ROM702を読む必
要がある。
【0129】この時、第i+2シンボルも同じコンテクス
トSiであればセレクタ704、705は下側の信号が選ばれる
ように制御する。その理由は、上述のとおり、処理805
で正規化が再度発生するかもしれないからである。Siの
コンテクスト情報の更新が終了したら 、セレクタ704
、705の上側の信号が選ばれる。
【0130】第i+3シンボルに対してはこのサイクルで
コンテクストRAMのリードを行う(処理808)。先に説明
したとおり、第i+3シンボルのコンテクストがSiと異な
りSjであれば、デュアルポートROM701に対するコンテク
ストのリードとコンテクストSiの更新は、同時に実行さ
れる。
【0131】第i+3シンボルのコンテクストがSiであれ
ば処理803でその内容が更新される。この時、セレクタ7
04 、705では下側の信号が選択されている。
【0132】このようにして正規化が発生したコンテク
ストで連続して符号化する場合も従来例のような無効サ
イクルは発生せず、パイプラインが乱れることはない。
したがって、いかなる画像パターンに対しても1シンボ
ルを1クロックで連続して符号化することができる。
【0133】以上説明した本発明の符号化の主要な手順
をまとめると、図7に示すようになる。
【0134】すなわち、現在のQeと、MPS符号化で正規
化処理が発生したならば出力されるであろうQe(next Q
e)と、LPS符号化で正規化処理が発生したならば出力さ
れるであろうQe(next Qe)と、を並列に出力する(ス
テップ30)。
【0135】そして、正規化が発生し、かつ次のコンテ
クストも同じであるときには(ステップ31)、MPSの符
号化による正規化であるか、LPSの符号化による正規化
であるかに応じて、未来のQe(next Qe)のうちのいず
れかを選択する(ステップ32)。正規化が発生しない場
合には、現在のQeを選択する(ステップ33)。
【0136】なお、復号化も同様に、現在のシンボルを
復元中に、一つ先ないし三つ先のシンボルの復元に必要
な情報を先回りして並列に入力あるいは出力しておき、
復元結果が判明した時点で、それに応じて、いずれかの
出力を選択する、という手法を採用することにより、算
術復号処理もパイプライン化することができる。
【0137】しかし、符号化と同様に正規化が発生し、
かつコンテクストが連続したときには、パイプラインが
乱れることになる。
【0138】よって、符号化の場合と同様に、現在のQe
と更新後のQeとを並列に出力して、実際の復号結果に応
じていずれかを選択していく方式を採用する。
【0139】以上説明した本発明の算術符号・復号器
は、図21に示すような、複合機(スキャナー、ファクシ
ミリ装置、コピー機の機能を併せ持つ装置)に搭載する
のに適している。
【0140】すなわち、画像を読み取って一時的にメモ
リに蓄積するような用途、例えばスキャナやFAX、複合
機などにQM-coderを適用するには、スキャナやプリンタ
の高速化に伴って高速処理が要求される。
【0141】本発明を適用すれば、どのような画像であ
っても、パイプライン処理が乱れることがなく、非常に
高速な符号・復号化を行なうことができる。
【0142】図21の複合機は、ホストプロセッサ102
と、MH等の復号化回路103と、画像処理回路104と、QM符
号/復号化回路105と、画像ラインメモリ106と、符号メ
モリ107と、モデムなどの通信インタフェース108と、ス
キャナなどの画像入力装置111と、プリンタなどの画像
記録/表示装置112と、をもつ。
【0143】本発明の算術符号・復号器は、QM符号/復
号化回路105に搭載される。 (多値画像の算術符号化処理)多値画像については、図
10に示すような統一化された手順で、多値画像情報を2
値情報に分解し、この2値情報を算術符号化する。
【0144】2値分解処理の基本は、あらかじめ順番が
決まっている質問(判断事項)を複数、用意しておき、
データが入力されると、その順番に従って質問をなし、
“yes"か“no"で分岐させ、その分岐を“1”,“0”
で表現することである。
【0145】これにより、算術符号化対象の2値シンボ
ルが生成されることになる。復号側が、どのような順番
で、どのような質問(判断)がなされるかを予め知って
いれば、その符号の復号化が可能である。
【0146】ここで問題なのは、2値分解により得られ
た符号化シンボルを算術符号化する場合の、コンテクス
トをどのようにするかである。
【0147】つまり、多値データ符号化用のコンテクス
トを、どのように生成するかが問題となる。
【0148】DCT変換係数には、DC成分とAC成分とがあ
り、それぞれが性質が異なるので、従来は、DC成分用の
コンテクストと、AC成分用のコンテクストと独立に設定
しなければならない、と考えられていた。
【0149】つまり、図9(a)に示すように、コンテクス
トを切り替えるためには、DC成分(あるいはAC成分)の
2進表現データと、次のDC成分(AC成分データ)の2進表
現データとの境界を判定する必要がある。
【0150】そして、図9(b)のように、コンテクストを
生成する際に、DCコンテクストのツリーからACコンテク
ストのツリーへの遷移が必要となる。
【0151】したがって、データの復元の際、1つのシ
ンボルを復元する毎に、DC成分/AC成分の終わりを判定
する処理が必要となり、1シンボル当り、最低でも2サ
イクルかかることになり、これで1クロックで処理を完
了させるという、完全なパイプライン処理は不可能とな
ってしまう。
【0152】また、コンテクストモデルが複数あると、
DC成分とAC成分の境目でパイプラインは初期状態から開
始するような回路構成にならざるを得ない。
【0153】このような復号器では高速処理は期待でき
ない。また、このようにDCコンテクストとACコンテクス
トを持つ回路構成では、回路規模は大きく、コンテクス
トの異なる成分間における制御は煩雑になる。
【0154】そこで、本発明では、敢えて、DC成分とAC
成分とを区別せず、双方の成分データに対し、共通のコ
ンテクストを割り当てる。
【0155】このようにすれば、図8(b)に示すよう
に、コンテクストのツリーは、一つのツリーに統一化さ
れる。この場合、圧縮率はやや劣化するものの、図9(a)
に示すような、DC成分/AC成分の終わりを判定する処理
はまったく不要となる。
【0156】つまり、図9(a)のようにDC成分/AC成分の
境界を判定する必要がなくなり、図8(a)に示すように、
コンテクストを連続して生成できるようになる。
【0157】このように、コンテクストを共通化して
も、本発明では画像情報を階層化して高精度に取得し、
また、極めて高精度な圧縮をしているので、復元画像の
画質が問題となることはない。
【0158】図10を用いて、多値画像情報の2値分解処
理の具体例について説明する。
【0159】まず、差分データΔV(隣接するDCT係数
の差分値)が、EOB(DCおよびAC成分を含む周波数成分
ブロックの全データがゼロであることを意味する)であ
るかどうかを調べる(ステップ601)。その結果を符号
化する。
【0160】もし、yesなら、“1”を“EOB"というイ
ンデックスで表現されるコンテクストで符号化して、符
号化が終了する。“1”を“EOB"というインデックスで
表現されるコンテクストで符号化することを、図中、1
(EOB)と記す。
【0161】一方、ステップ601でEOBでなければ、“0"
を“EOB"というインデックスで表現されるコンテクスト
で符号化する。このことを、図中、0(EOB)と記す。この
表記は、以下、同様である。
【0162】このように、各ステップで判断を行い、出
力が2つあるときは、右側がyesの判定、下側がnoの判定
の符号化を表す。
【0163】従って、上述のとおり、ステップ601にお
いて、EOBであれば、1をEOBというコンテクストで符号
化し符号化終了となる。そうでなければ、0をコンテク
ストEOBで符号化する。
【0164】次に、ステップ602において、差分データ
がΔV(V)がゼロであるかどうかを判定する。その判定結
果を、コンテクスト“S0"で符号化する。ΔV(V)がゼロ
であれば、この時点で符号化は終了し次の数値の符号化
が行われる。ΔV(V)がゼロでなければ、ステップ603に
移行し、正負(+または-)の符号を符号化する。このと
きのコンテクストは“S1"である。
【0165】次に、ステップ604またはステップ605に移
行する。
【0166】このステップ604では、差分データΔVの
絶対値が“1"より大きいか否かを判定する。つまり、Sz
>0であるかを判定し、その結果をコンテクストS2で符号
化する。
【0167】もしΔVが“1”でなければ、ステップ60
6において、ΔVの絶対値が“2"より大きいか否かを判
定する。
【0168】つまり、Sz>1であるかを判定し、その結
果を、X1というコンテクストで符号化する。
【0169】もし、Sz>1(ΔVの絶対値が“2”)でな
ければ、ステップ607において、ΔVの絶対値が3または
4であるか、あるいは、4より大きいかを判定する。
【0170】つまり、Sz>3であるか否かを判定し、その
結果を、コンテクストX2で符号化する。
【0171】ここで、Sz=2のときは、ステップ608にお
いて、2の2進表記“10"の下位ビットの“0"をコンテク
ストM2で符号化する。
【0172】また、Sz=3のときは、同じくステップ608
において、2の2進表記“11"の下位ビットの“1"をコン
テクストM2で符号化する。
【0173】ステップ609では、Sz>7であるかを判定
し、その結果をコンテストX3で符号化する。
【0174】ここで、Szが4〜7のとき、4,5,6,7のそ
れぞれの2進表記“100",“101",“110",“111"の下
位2ビット“00",“01",“10",“11"を、コンテクス
トM3で符号化する(ステップ610,611)。
【0175】ステップ612では、Sz>15であるかを判定
し、その結果をコンテクストX4で符号化する。
【0176】このとき、Sz=8〜15のときは、それぞれの
数値を2進表記して、下位3ビットをコンテクストM4で
符号化する。
【0177】入力された差分データΔVの値が大きい場
合には、以下、同様の処理を繰り返し実行する。
【0178】ステップ616では、Sz>32768であるかを判
定し、その結果をコンテキストX15で符号化し、Szが327
68以下ならば、各数値を2進表記し、下位の数ビットを
コンテクストM15で符号化する。
【0179】以上の説明の中で、X1〜X15は、Szのmagni
tude categoryを示すデータを符号化するコンテクスト
であり、M2〜M15は、Szのmagnitude bitを符号化するた
めのコンテクストである。
【0180】以上のような順序で、多値画像情報の2値
化が行われ、分解された2値データが、算術符号化の対
象シンボルとなる。
【0181】多値データの算術符号化の全体の手順をま
とめると、図11(a)に示すようになる。
【0182】すなわち、まず、フォーマット変換.EO
Bの検出を行う(ステップ810)。次に、2値分解処理を
行い(ステップ811)、AC成分/DC成分を区別すること
なくコンテクストを生成する(ステップ812)。そし
て、算術符号化処理を行う(ステップ813)。
【0183】周波数成分の算術符号化は、図11(b)に示
すような手順で行われる。ここでkはジグザグスキャン
のインデックスを表す。
【0184】まず、k=0とする(ステップ801)。次
に、k=0の数値がEOBシンボルを表しているかどうかを
判定する(ステップ802)。
【0185】ここで、k=0時点でEOBであるということ
は、DC成分もAC成分もすべてゼロであるということを意
味している。
【0186】この判定でEOBであれば、ステップ804で、
1を符号化(code-1)して、そのブロックは符号化終了
となる。
【0187】もしEOBでなければステップ803で0を符号
化し、次に、ステップ805でΔV(V)の符号化を行う。
【0188】ステップ806の判断で1ブロック終了してい
なければ、ステップ807でインデックスを更新し、同様
の処理を繰り返す。
【0189】このようにして1ブロックの符号化が終了
する。ここには示していないが、周波数成分以外にDC成
分として符号化する情報があれば、まず、それらを符号
化する。
【0190】本実施の形態では、DC成分、AC成分の順に
符号化する。
【0191】以上、算術符号化の具体例について説明し
た。次に、符号を固定長化する処理について説明する。
【0192】(符号の固定長化処理の内容)以下、図12
〜図16を参照して、一つのブロックの符号量を一定のサ
イズに揃える処理について説明する。
【0193】図12(a)は、一つのブロックの符号量を一
定のサイズに揃えるための回路の構成を示すブロック図
である(図3に示される回路と同じ構成である)。
【0194】算術符号器200から出力される符号は、固
定長化処理部300内に設けられている符号バッファ3002
に一時的に蓄積される。この符号バッファ3002は、1つ
のブロックの符号化に先立ち、オールゼロにクリアされ
る。
【0195】符号読出し部3003は、所定バイト数の符号
(1つのブロックの符号)が蓄積される度に、符号バッ
ファ3002からデータを読出す。
【0196】符号長が所定バイトに達しない場合には、
その符号の末尾に、符号バッファ3002の初期値であるゼ
ロが付加されたデータが自動的に読み出されることにな
る。
【0197】よって、ゼロを意図的に挿入して、符号を
固定長化するという面倒な処理は不要となる。
【0198】符号長カウンタ3001は、符号長を積算し、
その積算値が所定バイト数に達したかを検出して、算術
符号演算器1004に符号化の終了を指示する。
【0199】図12(b),図12(c)は、一つのブロックに
関するDCT係数を符号化した場合の符号量の一例を示し
ている。
【0200】図12(b)に示されるように、符号化の途中
で、積算の符号長が所定のバイト数が超えた場合には、
EOBを付加して符号化処理を打ち切り、所定のサイズの
データを読み出す。最後のDCT変換係数に対応する符号
ciの、はみ出てた部分(F:図中、斜線で示される)
を破棄する。
【0201】一方、図12(c)のように、積算の符号長が
所定バイト数に収まる場合には、末尾に、自動的にゼロ
がパディングされて(符号バッファ3002の初期データで
あるゼロが挿入されたことになる)、所定バイトの符号
が読みだされる。
【0202】次に、図13を参照して、符号量を一定にす
る処理を含む、算術符号化の手順を説明する。
【0203】まず、ブロックの符号化に先立って符号バ
ッファ3002をクリアする(ステップ501)。
【0204】次に、ステップ502によって、コンテクス
トメモリ(図4の参照符号7001)や算術符号演算器(図4
の参照符号703)のレジスタをクリアする。
【0205】コンテクストメモリは、算術符号器内部の
確率推定器の学習効果を早めるために、クリアせずに、
トレーニングデータによる初期値を設定するようにして
もよい。
【0206】次に、EOBであるか否かを判定する(ステ
ップ503)。
【0207】次に、符号化バイト数が所定値を超えたか
どうか判定する(ステップ504)。所定値に満たなけれ
ば、係数の符号化を行う(ステップ505)。この際に符
号化バイト数を計数する。これらの処理を1ブロック64
個のDCT係数の符号化が終わるまで、または終了条件
が満たされるまで(ステップ506)、繰り返す。
【0208】符号化終了時には、EOBシンボルを符号化
し(ステップ507)、算術符号器の符号レジスタの記憶デ
ータを吐き出して(ステップ508)、1ブロックの符号化
が終了する。
【0209】なお、図13のステップ504において、所定
条件が満たされたとき、EOBを符号化して符号化を終了
するのは、符号化を高速化するためである。これらの符
号は、符号バッファ3002に蓄積される。符号読出し部30
03は、符号バッファ3002から、所定バイト数の符号をバ
ッファ先頭から読み出す。
【0210】例えば、所定バイト数が8バイトとする
と、簡単な画像ブロックでは、B0;B1;B2;0;0;0;0;0のよ
うに符号バイトB0,...,B2の後にゼロが連なる。簡単ブ
ロックでは符号は2バイト程度である。
【0211】一方、複雑なブロックでは、B0;B1;B2;B3;
B4;B5;B6;B7のように、符号バイトが連続する。最後のB
7は符号の途中で打ち切られる(図12(b),図12(c))。
【0212】簡単な画像では、図12(c)のように、EOB情
報も含めて所定バイト内に収まり、その後にゼロがパデ
ィングされる。
【0213】複雑な画像ブロックでは,DCT係数Ciの途
中の情報は、符号として復号器に送られることはなく捨
てられる(図12(a))。このようにして、算術符号を使
ったブロック固定サイズの符号化が行われる。
【0214】次に、復号化動作を図14〜図15を用いて説
明する。
【0215】図14は、固定長化処理がなされた符号を受
信して、復号する算術復号器の構成を示すブロック図で
ある。
【0216】以下、算術復号器の周辺を中心に説明す
る。
【0217】符号データは符号入力部310によって、外
部にある符号メモリから符号バッファ309に所定バイト
数の符号を入力する。1ブロックの復号化は、この符号
バッファに入力された符号のみを使う。セレクタ307は
符号データを入力するか、ゼロを入力するかを選択す
る。
【0218】符号長カウンタ308は算術復号器306が読み
込んだ符号バイト数を計数し、それが所定バイト数311
を超えたら、セレクタ307でゼロ313を算術復号器306に
入力するように選択信号を出す。
【0219】算術復号化は符号化同様に2つのレジスタ
を使う。一つは符号レジスタであるCレジスタ、もう一
つは数直線の幅を表すAレジスタである。本実施例では
どちらも16ビットとしている。これら2つのレジスタの
大小比較によってシンボルの復号を行うことができる。
【0220】図16は、復号化の手順を示すフロー図であ
る。ステップ701では、係数メモリ305をクリアする。ス
テップ702では、符号バッファ309に所定バイト数の符号
を入力する。
【0221】ステップ703では、符号化同様にコンテク
ストメモリ304と、算術復号化に使う2つのレジスタ(C
レジスタとAレジスタ)をクリアする。
【0222】ステップ704では、シンボルを復元し、ス
テップ705では、復元シンボルがEOBかどうかを判定す
る。そうでなければステップ706で数値の復号化を行
う。
【0223】シンボル復号化の際には入力した符号バイ
ト数を計数する。ステップ706が終了すると、1つの係
数が復元できる。ステップ707では、復号化した符号バ
イト数が所定値に達したかどうかを判断し、そうであれ
ばセレクタの入力信号を切り替え、それ以降は、ゼロが
算術復号器に入るようにする(ステップ708)。
【0224】ステップ709は、Cレジスタに読み込んだ符
号バイト数が所定値よりも3バイト多くなったかどうか
判断する。もしそうであれば、所定バイト数の復号化を
終了とする。
【0225】最後に復号した係数は符号データが完結し
ていないので、ステップ710で、最終係数をゼロとして1
ブロックの復号を終える。
【0226】図15は、復号化の様子を示す図である。
【0227】Cレジスタは16ビットであるが、符号の入
力バッファを1バイト持つ構成とする。ブロックの復号
化の開始時点では、3バイトの符号が符号バッファを含
むCレジスタに読み込まれているものとする。
【0228】シンボルの復号化に伴って、Cレジスタは
左にシフトされ、符号バッファが空になると新しい符号
バイトを読み込む。
【0229】係数Ci-1を復号し終わった時点では全ての
符号の復号が終わっておらず、次の係数Ciを復号する。
【0230】係数Ciの復号化が終わると、符号バッファ
には、所定バイト数プラス3バイトの符号が読み込まれ
ており、所定バイト数の復号化が終わったことが分か
る。
【0231】最後の係数Ciの符号は途中で分断されてい
るので正しく復号できない。したがって、最後に復号し
た係数をゼロとする。
【0232】(カラー画像における処理)図17は、本発
明の固定長化処理を行う機能をもつ符号器を搭載した、
カラー複合機の要部の構成を示すブロック図である。
【0233】カラー画像は、ブロック(8×8画素)を単
位として分割され、各ブロックは、カラーブロックメモ
リ901に蓄積される。
【0234】色変換器902はRGBのカラー画像を輝度と色
差成分に分離する。
【0235】ここではYCbCrの色空間とする。分解され
たカラー成分はそれぞれのメモリ903〜905に格納され
る。
【0236】通常、色差成分は緩やかな信号で輝度成分
よりも情報量は少ない。そこで、輝度成分と色差成分は
異なる符号長に圧縮するものとする。
【0237】レジスタ909〜911は輝度成分と色差成分の
所定バイト数を設定するレジスタである。これらの値は
制御部912によって設定される。参照符号907は、本発明
のブロック固定長処理機能付きの算術符号器である。
【0238】セレクタ906とセレクタ908はカラー成分と
その符号化バイト数を符号器907に供給する。セレクタ
の選択信号は制御部912から出力される。
【0239】このように構成すると、例えば(Y,Cb,C
r)=(8,4,4)バイトや(Y,Cb,Cr)=(12,2,
2)バイトなど符号バイト数の組み合わせを自由に選択
できる。
【0240】ブロック毎に固定サイズなので、部分復号
化が容易である。また、1ページ復元しなくても符号デ
ータのままで回転処理を行うことができるなど、画像編
集が容易となる。
【0241】また、メモリコストを削減できる。また、
符号長の選択によって画質調整も容易となる。
【0242】以上の実施の形態では、画像ブロックを8
×8画素とし、これはDCTの変換サイズと同じにしてある
が、画像ブロックを例えば32×32画素のように大きくと
ってもよい。この方が、学習機能を持つ算術符号では圧
縮性能が高まるので画質が高くとれる。
【0243】このように、符号長を所定サイズに揃える
機能ブロックをもつことにより、予め定めた大きさの画
像ブロック毎に、一定サイズの符号を出力することが可
能となる。
【0244】ここで、画像ブロックを圧縮する符号は効
率の高い可変長符号であり、従来よりも高い画質を実現
できる。
【0245】また、ブロックの符号長を可変にできるの
で画質調整も容易である。ディジタル複合機の画像処理
に連携して、少ないメモリで画像編集ができる。
【0246】
【発明の効果】以上説明したように本発明によれば、2
値画像および多値画像の双方について、柔軟に、しか
も、ほとんど算術符号化アルゴリズムで決まる限界の速
度でもって算術符号化・算術復号化することができる。
【0247】しかも、2値画像と多値画像を区別するこ
となく、共通のコンテクストを用いて符号・復号化がで
きるため、符号・復号器の構成もきわめて簡素化され
る。
【0248】また、一つのブロック(処理単位)の符号
長を所定の長さに揃えることにより、ブロックを単位と
した復元画像の編集も容易に行える。
【図面の簡単な説明】
【図1】本発明の算術符号化装置の一例の全体構成を示
す図
【図2】図1の算術符号化装置の特徴を説明するための
【図3】本発明の算術符号化装置の具体的な構成の一例
を示すブロック図
【図4】本発明のハザードレスパイプライン算術符号器
の全体構成を示すブロック図
【図5】本発明における確率推定メモリの構成例を示す
【図6】図4の算術符号器のパイプライン動作を説明す
るためのタイミング図
【図7】図4の算術符号器の特徴的な動作を説明するた
めのフロー図
【図8】(a)本発明における、DC成分用コンテクスト
とAC成分用コンテクストの切り替えを説明するための図 (b)本発明における、統一されたコンテクストのツリ
ーを示す図
【図9】(a)従来例における、DC成分用コンテクスト
とAC成分用コンテクストの切り替えを説明するための図 (b)従来例における、DC成分用コンテクストのツリー
からAC成分用コンテクストのツリーへの遷移を示す図
【図10】本発明において、多値画像データを2値分解
して符号化シンボルを生成する処理の手順を示す図
【図11】(a)多値データの符号化処理の手順を示す
フロー図 (b)周波数成分の符号化処理の手順を示すフロー図
【図12】(a)1ブロックの符号量を所定のサイズに
揃える回路の構成を示すブロック図 (b)複雑な多値画像を符号化した場合における、符号
量の増大の様子を示す図 (c)単純な多値画像を符号化した場合における、符号
量の増大の様子を示す図
【図13】1ブロックの符号化(固定長化処理を含む)
の手順を示すフロー図
【図14】固定長化処理を経た符号を復元する算術復号
器の構成を示すブロック図
【図15】図14の算術復号器の復号動作を説明するた
めの図
【図16】図14の算術復号器の復号動作の手順を示す
フロー図
【図17】本発明の固定長化処理機能付きの算術符号器
を搭載した、カラー画像の処理装置の構成を示すブロッ
ク図
【図18】一般的な算術符号器の基本構成を示す図
【図19】算術符号化の原理を説明するための図
【図20】JBIGにおける算術符号用テンプレートを示す
【図21】本発明の算術符号化装置を搭載した画像処理
装置の構成を示すブロック図
【符号の説明】
10 A/D変換器 12 像域判定・階層化処理回路 14 算術符号化装置 16 コンテクスト生成器 18 未来予測型並列出力Qeメモリ 20 算術符号演算器 22 固定長化処理回路
フロントページの続き Fターム(参考) 5C059 KK14 LA10 MA23 MC11 MC24 MC32 MC34 MC38 ME11 PP20 PP29 5C078 AA04 BA35 BA57 CA26 CA31 DA01 DA21 5J064 AA03 BA10 BA16 BB06 BC01 BC03 BC16 BC17 BC25 BC28 BD06 BD07

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 既に符号化済みのシンボル系列の状態
    (コンテクスト)から符号化シンボルの生成確率を推定
    し、その確率推定値および前記シンボルの予測値を符号
    器に供給して符号化を行う算術符号化装置であって、 中間調画像データに対して、所定サイズのブロックを単
    位として離散コサイン変換(DCT)を行い、DCT係
    数を得るDCT変換部と、 DC成分のDCT係数とAC成分のDCT係数とを区別
    せずにコンテクストを生成するコンテクスト生成器と、 一つのコンテクスト毎に、前記シンボルの推定値および
    その推定値に対応する状態番号を記憶しているコンテク
    ストメモリと、 現在の確率推定値と、所定の状況が生じて更新がなされ
    た後の確率推定値とを並列に出力する確率推定メモリ
    と、 算術符号化演算を行う算術符号演算器と、 前記算術符号演算器の状態に応じて、前記現在の確率推
    定値、または、前記所定の状況が生じて更新がなされた
    後の確率推定値のいずれかを選択して前記算術符号演算
    器に供給するセレクタと、 前記算術符号演算器から出力される、前記ブロック毎の
    符号長を、強制的に所定のサイズに揃える固定長化部
    と、 を有することを特徴とする算術符号化装置。
  2. 【請求項2】 請求項1において、 前記コンテクスト生成器におけるコンテクストの生成処
    理、前記確率推定メモリの読み出し処理、前記コンテク
    ストメモリの読み出し処理、および前記算術符号演算器
    における算術符号化演算の各々の処理を、同じサイクル
    で実行してパイプライン化し、1サイクルで1画素の符
    号を出力することを特徴とする算術符号化装置。
  3. 【請求項3】 請求項1において、 前記固定長化部は、 前記ブロックの各々の符号化に先立ってゼロクリアされ
    る、前記算術符号演算器から出力される符号を一時的に
    蓄積する符号メモリと、 前記算術符号演算器から出力される符号の積算量が、所
    定のサイズと一致しているかを検出し、積算量が符号の
    サイズに達したときに、前記算術符号演算器に、一つの
    ブロックについての算術符号化の終了を通知する符号長
    カウンタと、 前記符号メモリから、前記所定サイズ分の符号を読み出
    す符号読出し部と、 を有することを特徴とする算術符号化装置。
  4. 【請求項4】 請求項1において、 さらに、 符号化対象の画像データについて、タイルを単位として
    画像の種類を判定し、所定の種類のタイルに含まれる全
    画素を1画素毎に複数の階層に分類し、その階層の分類
    に応じて、その画素のデータを前記DCT変換部に供給
    するか、あるいは、その画素に対して所定の信号処理を
    施し、その処理後のデータを前記コンテクスト生成器に
    供給する画像階層化部、を有することを特徴とする算術
    符号化装置。
  5. 【請求項5】 請求項1記載の算術符号化装置を具備す
    ることを特徴とする画像処理装置。
  6. 【請求項6】 連続階調画像について、予め定めた大き
    さのブロック毎に画像情報を抽出する画像情報抽出部
    と、 抽出された画像情報を算術符号化する算術符号器と、 前記算術符号器から出力される符号を一時記憶するメモ
    リと、 前記メモリから予め定めた量の符号を読み出すことで、
    前記ブロック毎の符号量を一定にする読出し部と、 を具備することを特徴とする算術符号化装置。
  7. 【請求項7】 請求項6において、 前記算術符号器は、一つのブロックの符号量が所定を超
    えたときに一つのブロックの終りを示すシンボルを符号
    化して、符号化処理を終了とすることを特徴とする算術
    符号化装置。
  8. 【請求項8】所定の数の符号を一時的に記憶するメモリ
    と、 算術復号器と、 前記算術復号器へ入力される符号の数を計数する計数回
    路と、 前記算術復号器に、前記符号またはゼロ信号のいずれを
    与えるかを選択するためのセレクタと、を有し、 前記算術復号器への入力符号数が予め定めた所定の数を
    超えたならば、前記セレクタの出力を、符号からゼロ信
    号に切り替えることを特徴とする算術復号化装置。
  9. 【請求項9】 カラー画像を予め定めたブロックに分割
    する分割部と、 色空間の変換部と、 色成分ごとに、前記ブロックの符号バイト数を設定す
    る、符号バイト数設定部と、 前記ブロックを、一定符号長で符号化する算術符号器
    と、 を有することを特徴とするカラー画像処理装置。
JP2002002818A 2001-02-22 2002-01-09 算術符号化装置および画像処理装置 Expired - Fee Related JP3929312B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2002002818A JP3929312B2 (ja) 2002-01-09 2002-01-09 算術符号化装置および画像処理装置
US10/046,764 US6677869B2 (en) 2001-02-22 2002-01-17 Arithmetic coding apparatus and image processing apparatus
EP02001349A EP1235353A3 (en) 2001-02-22 2002-01-18 Arithmetic coding apparatus and image processing apparatus
US10/680,152 US6864813B2 (en) 2001-02-22 2003-10-08 Arithmetic decoding method and an arithmetic decoding apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002002818A JP3929312B2 (ja) 2002-01-09 2002-01-09 算術符号化装置および画像処理装置

Publications (2)

Publication Number Publication Date
JP2003209699A true JP2003209699A (ja) 2003-07-25
JP3929312B2 JP3929312B2 (ja) 2007-06-13

Family

ID=27642571

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002002818A Expired - Fee Related JP3929312B2 (ja) 2001-02-22 2002-01-09 算術符号化装置および画像処理装置

Country Status (1)

Country Link
JP (1) JP3929312B2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006166144A (ja) * 2004-12-08 2006-06-22 Sony Corp 画像処理装置及び方法、並びにプログラム及び記録媒体
KR100624432B1 (ko) 2004-08-05 2006-09-19 삼성전자주식회사 내용 기반 적응적 이진 산술 복호화 방법 및 장치
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
JP2008141530A (ja) * 2006-12-01 2008-06-19 Canon Inc 画像符号化装置及び画像符号化方法
US7411529B2 (en) 2005-11-18 2008-08-12 Samsung Electronics Co., Ltd. Method of decoding bin values using pipeline architecture and decoding device therefor
JP2010011386A (ja) * 2008-06-30 2010-01-14 Nec Electronics Corp 画像処理回路、及びそれを搭載する表示パネルドライバ並びに表示装置
CN111049527A (zh) * 2019-12-23 2020-04-21 云南大学 一种图像编码解码方法
CN113347422A (zh) * 2021-05-13 2021-09-03 北京大学 一种粗粒度上下文熵编码方法

Cited By (13)

* 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
KR100624432B1 (ko) 2004-08-05 2006-09-19 삼성전자주식회사 내용 기반 적응적 이진 산술 복호화 방법 및 장치
JP2006166144A (ja) * 2004-12-08 2006-06-22 Sony Corp 画像処理装置及び方法、並びにプログラム及び記録媒体
US7411529B2 (en) 2005-11-18 2008-08-12 Samsung Electronics Co., Ltd. Method of decoding bin values using pipeline architecture and decoding device therefor
JP2008141530A (ja) * 2006-12-01 2008-06-19 Canon Inc 画像符号化装置及び画像符号化方法
JP4507265B2 (ja) * 2008-06-30 2010-07-21 ルネサスエレクトロニクス株式会社 画像処理回路、及びそれを搭載する表示パネルドライバ並びに表示装置
JP2010011386A (ja) * 2008-06-30 2010-01-14 Nec Electronics Corp 画像処理回路、及びそれを搭載する表示パネルドライバ並びに表示装置
US7912304B2 (en) 2008-06-30 2011-03-22 Renesas Electronics Corporation Image processing circuit, and display panel driver and display device mounting the circuit
US8111933B2 (en) 2008-06-30 2012-02-07 Renesas Electronics Corporation Image processing circuit, and display panel driver and display device mounting the circuit
US8385668B2 (en) 2008-06-30 2013-02-26 Renesas Electronics Corporation Image processing circuit, and display panel driver and display device mounting the circuit
US8923636B2 (en) 2008-06-30 2014-12-30 Renesas Sp Drivers Inc. Image processing circuit, and display panel driver and display device mounting the circuit
CN111049527A (zh) * 2019-12-23 2020-04-21 云南大学 一种图像编码解码方法
CN113347422A (zh) * 2021-05-13 2021-09-03 北京大学 一种粗粒度上下文熵编码方法

Also Published As

Publication number Publication date
JP3929312B2 (ja) 2007-06-13

Similar Documents

Publication Publication Date Title
US6677869B2 (en) Arithmetic coding apparatus and image processing apparatus
US6567562B1 (en) Encoding apparatus and method
US5297220A (en) Image processing system for image compression and decompression
KR100624432B1 (ko) 내용 기반 적응적 이진 산술 복호화 방법 및 장치
US6711295B2 (en) Encoding apparatus and method, and storage medium
JP4717780B2 (ja) 符号化装置及びその制御方法
US20060262982A1 (en) Image encoding apparatus and method, computer program, and computer-readable storage medium
US20160249068A1 (en) Method for Producing Video Coding and Programme-Product
JP2000069292A (ja) 画像処理装置及び方法及び記憶媒体
JP3457269B2 (ja) 算術符号化・復号化方法および算術符号化・復号化装置
US5859604A (en) Merged VLSI implementation of hardware optimized Q-Coder and software optimized QM-Coder
EP0858210A1 (en) Image processing apparatus
JP3684128B2 (ja) 算術符号化/復号化方法ならびに算術符号化/復号化装置
JP2003209699A (ja) 算術符号化装置および画像処理装置
CN110049333B (zh) 一种jpeg_ls图像压缩输出编码码流拼接系统及方法
JP2002262102A (ja) 画像符号化装置、画像符号化方法、及びその記憶媒体
JP3359215B2 (ja) 多値画像符号化装置
JP3406550B2 (ja) 算術符号化装置および算術復号化装置
Ahmadvand et al. A new pipelined architecture for JPEG2000 MQ-coder
JP3359214B2 (ja) 多値画像符号化装置
JPH11289461A (ja) 画像符号化方法および画像符号化装置
JP2872334B2 (ja) カラー画像の符号化装置
JP3847891B2 (ja) 符号化装置及び方法及び方法を記憶した記憶媒体
JP2891818B2 (ja) 符号化装置
JP2697897B2 (ja) カラー画像符号化方法及び装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040924

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061205

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070202

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: 20070227

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070306

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: 20110316

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110316

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees