JP3089152B2 - 画像符号化装置およびその方法 - Google Patents

画像符号化装置およびその方法

Info

Publication number
JP3089152B2
JP3089152B2 JP05301654A JP30165493A JP3089152B2 JP 3089152 B2 JP3089152 B2 JP 3089152B2 JP 05301654 A JP05301654 A JP 05301654A JP 30165493 A JP30165493 A JP 30165493A JP 3089152 B2 JP3089152 B2 JP 3089152B2
Authority
JP
Japan
Prior art keywords
image
stored
hierarchical
image data
bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP05301654A
Other languages
English (en)
Other versions
JPH07154608A (ja
Inventor
充 前田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP05301654A priority Critical patent/JP3089152B2/ja
Publication of JPH07154608A publication Critical patent/JPH07154608A/ja
Priority to US08/781,063 priority patent/US5745607A/en
Application granted granted Critical
Publication of JP3089152B2 publication Critical patent/JP3089152B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/64Systems for the transmission or the storage of the colour picture signal; Details therefor, e.g. coding or decoding means therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Image Processing (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は画像符号化装置およびそ
の方法に関し、例えば、画像を階層符号化する画像符号
化装置に関するものである。
【0002】
【従来の技術】画像電子学会誌第20巻第1号の技術解説
「2値画像階層符号化方式−JBIGアルゴリズム−」に
は、二値画像を対象にする階層符号化方式が記載されて
いる。以下、その概要を図1を参照して説明する。ま
ず、送信側では、原画像51aを縮小器52で繰返し縦
横1/2に縮小して、最小サイズが縦横二のn乗分の一に縮
小されたn枚(図1では三枚)の縮小画像を生成する。
そして、符号器53によって最小サイズの画像51dを
単独で符号化した後、送信する。なお、この符号化は、
符号化注目画素の周囲画素を参照する算術符号化により
可変長符号を得るものである。
【0003】次に、符号器53によって画像51cを符
号化した後、送信する。なお、この符号化は、画像51
dを参照する算術符号化により可変長符号を得るもので
ある。以下同様に、画像51bを符号化して送信し、最
後に原画像51aを符号化して送信する。ここで、原画
像51aを第0階層画像と呼び、n回の縮小を行った画
像を第n階層画像と呼ぶ。
【0004】これに対して、受信側では、復号器(Decod
er)54によって、まず最小サイズの画像51dを復号
し、復号した画像51dを参照して画像51cを復号す
る。以下同様に、画像51bを復号し、原画像51aを
復号する。さらに、JBIGアルゴリズムでは、符号化の単
位として副走査方向に画像を分割して得られるストライ
プを定義し、これによってシーケンシャルな伝送を実現
しようとしている。その概念図を図2に示す。同図にお
いて、原画像51aはストライプS0,0からS7,0に分割
され、同様に、画像51bはストライプS0,1からS7,1
に、画像51cはストライプS0,2からS7,2に、それぞ
れ分割されている。
【0005】そして、JBIGアルゴリズムでは、多値画像
やカラー画像への拡張としてビットプレーン法が示され
ている。その概念図を図3に示す。同図は4ビット/画
素の画像を階層符号化する例で、最上位ビットのビット
プレーンP1,0を縮小して第1階層画像P1,1を、さらに
P1,1を縮小して第2階層画像P1,2を生成する。同様
に、各ビットに対応するビットプレーンP2,0,P3,0お
よびP4,0 (P4,0は最下位ビットのビットプレーンに
なる)を縮小して、第1階層画像P2,1,P3,1およびP
4,1を、第2階層画像P2,2,P3,2およびP4,2をそれぞ
れ生成する。そして、各ビットプレーン毎に符号化す
る。つまり、ビットプレーンP1,2は単独で、ビットプ
レーンP1,1はビットプレーンP1,2を参照して、ビット
プレーンP1,0はビットプレーンP1,1を参照して、それ
ぞれ符号化する。他のビットプレーンも同様である。
【0006】図4はこのような階層符号化を実現する装
置の構成を示すブロック図である。同図において、50
1はスキャナで、原稿画像を読取って例えば8ビットの
ディジタル画像データを出力する。502はフレームメ
モリで、スキャナ501から出力された画像データを記
憶する。504はビットプレーンメモリで、フレームメ
モリ502から読出したビットプレーンデータを記憶す
る。505もビットプレーンメモリで、階層符号化時に
生成される縮小画像を記憶する。506は符号器で、ビ
ットプレーンメモリ504と505を使用して階層画像
を生成し、生成した階層画像を階層符号化する。507
はコードバッファで、生成された符号を蓄積する。50
8は記憶装置で、生成された符号を格納する。509は
CPUで、バス503を介して上記の各部を制御する。な
お、バス503は画像データ,符号,制御信号の伝送に
使用される。
【0007】このような構成において、スキャナ501
から出力された画像データは、CPU509の制御によっ
て、順次フレームメモリ502に記憶される。すべての
画像データがフレームメモリ502に記憶されると、CP
U509は記憶装置508上に領域を確保して、符号の
ヘッダを生成し該領域の先頭部へ格納する。ヘッダには
画像サイズ,符号化階層数,ビットプレーン数などの情
報が含まれる。
【0008】続いて、CPU509は、フレームメモリ5
02から最上位ビットプレーンの画像を読出して、ビッ
トプレーンメモリ504へ格納する。また、コードバッ
ファ507をクリアし、符号器506を初期化して符号
化を開始させる。符号器506は、ビットプレーンメモ
リ504に格納された画像を縮小して、縮小した画像
(第1階層画像)をビットプレーンメモリ505へ格納
する。さらに、ビットプレーンメモリ505に格納され
た第1階層画像を縮小して、第2階層画像をビットプレ
ーンメモリ504へ格納する。このようにして最小サイ
ズの第n階層画像を生成して、これを符号化してコード
バッファ507へ格納した後、CPU509へ第n階層画像
の符号化が完了したことを通知する。通知を受けたCPU
509は、コードバッファ507から第n階層画像の符
号を読出して、先に生成した記憶装置508のヘッダに
続けて格納する。
【0009】以下同様にして、ビットプレーン毎にその
第n階層画像を生成し符号化して、順次、記憶装置50
8へ続けて格納する。次に、CPU509は、上記と同様
の手順によって第n-1および第n階層画像を生成し、第n
階層画像を参照して第n-1階層画像を符号化しコードバ
ッファ507へ格納した後、CPU509へ第n-1階層画像
の符号化が完了したことを通知する。通知を受けたCPU
509は、コードバッファ507から第n-1階層画像の
符号を読出して、先に記憶装置508に格納した第n階
層画像の符号に続けて格納する。
【0010】以下同様にして、ビットプレーン毎にその
第n-1階層画像を生成し符号化して、順次、記憶装置5
08へ続けて格納する。このようにして、すべてのビッ
トプレーンの第1階層画像の符号化が終了した後、CPU
509は、上記と同様の手順によって第1階層画像を生
成し、第1階層画像を参照して第0階層画像を符号化し
コードバッファ507へ格納した後、CPU509へ第0
階層画像の符号化が完了したことを通知する。通知を受
けたCPU509は、コードバッファ507から第0階層
画像の符号を読出して、先に記憶装置508に格納した
第1階層画像の符号に続けて格納する。
【0011】以下同様にして、ビットプレーン毎にその
第0階層画像を符号化して、順次、記憶装置508へ続
けて格納する。このようにして、ヘッダ,ビットプレー
ン毎の第n階層画像の符号,ビットプレーン毎の第n-1階
層画像の符号,…,ビットプレーン毎の第1階層画像の
符号,ビットプレーン毎の第0階層画像の符号の順で、
記憶装置508へ格納され符号化画像ファイルが形成さ
れる。この格納が終了すると、CPU509は、記憶装置
508のファイルを閉じて符号化を終了する。
【0012】また、スキャナ501が二値カラー画像デ
ータを出力する場合は、各色毎に符号化を行って、符号
化画像ファイルを形成する。
【0013】
【発明が解決しようとする課題】しかし、上記従来例に
おいては、次のような問題点があった。すなわち、上記
従来例においては、ビットプレーンや色毎にその階層画
像を生成して符号化する必要があり、符号器やフレーム
メモリの制御が繁雑になり、生成された符号の管理も複
雑である。さらに、各ビットプレーン毎に符号器を初期
化する必要があり、動的な算術符号化では符号化効率を
低下させることになる。また、受信側では、ビットプレ
ーンがカラー画像を形成するのか、モノクロ多値画像を
形成するのかを判断できず、正しい画像が再生できない
ことがあった。
【0014】本発明は、上述の問題を解決するためのも
のであり、ビットプレーンごとの処理を不要にすること
を目的にする。また、画像を階層符号化する際の符号器
の制御を容易にし、原画像の属性に合った画像を再生さ
せることを他の目的にする。
【0015】
【課題を解決するための手段】本発明は、前記の目的を
達成する一手段として、以下の構成を備える。本発明に
かかる画像符号化装置は、少なくとも2ビット/画素の画
像データを符号化する画像符号化装置であって、前記画
像データの各ビットを分割して複数のビットプレーンを
生成する生成手段と、前記生成手段によって生成された
複数のビットプレーンを連続させて一つの画像データを
構成する構成手段と、前記構成手段によって構成された
一つの画像データから低解像度の画像データを生成する
縮小手段と、前記構成手段によって構成された一つの画
像データおよび前記縮小手段によって生成された低解像
度の画像データをそれぞれ符号化する符号化手段とを有
することを特徴とする。
【0016】好ましくは、さらに、前記符号化手段から
出力された符号に前記画像データの属性情報を付加する
付加手段を有することを特徴とする。
【0017】本発明にかかる画像符号化方法は、少なく
とも2ビット/画素の画像データを符号化する画像符号化
方法であって、前記画像データの各ビットを分割して複
数のビットプレーンを生成し、生成された複数のビット
プレーンを連続させて一つの画像データを構成し、構成
された一つの画像データから低解像度の画像データを生
成し、前記一つの画像データおよび前記低解像度の画像
データをそれぞれ符号化することを特徴とする。
【0018】
【実施例】以下、本発明にかかる一実施例の画像符号化
装置を図面を参照して詳細に説明する。
【0019】
【第1実施例】図5は第1実施例の画像符号化装置の構
成例を示すブロック図である。同図において、17は例
えばワンチップマイクロプロセッサなどのCPUで、バス
3を介して、内蔵するROMなどに格納されたプログラム
に従って、以下の各構成を制御する。なお、バス3は画
像データ,符号,制御信号などの伝送に使用される。
【0020】1はカラースキャナで、原稿画像を読取っ
て、点順次で例えば二値カラー画像データを出力する。
なお、各色の値が‘0’の画素は白である。2はバッフ
ァで、カラースキャナ1から出力された画像データを蓄
積する、例えば3ビット/画素のバッファである。4〜
6もバッファで、バッファ2に蓄積された画像データを
色別に分割したビットプレーンを蓄積する、例えば1ビ
ット/画素のバッファで、例えば、バッファ4は赤に、
バッファ5は青に、バッファ6は緑にそれぞれ対応す
る。
【0021】7はセレクタで、CPU17の指示に応じ
て、バッファ4〜6から入力されたデータの何れかを選
択し出力する。8はループカウンタで、バッファ4〜6
を制御する。10はフレームメモリで、セレクタ7から
出力された符号化する画像をバイト単位で格納する。9
はアドレスカウンタで、フレームメモリ10のアドレス
を管理する。
【0022】11と13もそれぞれフレームメモリで、
階層符号化時に生成される縮小画像をバイト単位で格納
する。12は符号器で、フレームメモリ11と13を使
用して階層画像を生成し、生成した階層画像を階層符号
化する。14はコードバッファで、生成された符号を蓄
積する。15は記憶装置で、生成された符号を格納す
る。16はヘッダ処理部で、符号の先頭に付加するヘッ
ダを生成する。
【0023】以下においては、JBIG方式の二値画像階層
符号化を例にして説明する。なお、最小サイズを第2階
層にし、第0階層のストライプ数を128にするが、本実
施例はこれに限定されるものではない。図6から図9は
本実施例の階層符号化手順の一例を示すフローチャート
で、CPU17によって実行される。
【0024】ステップS001で、符号化する画像の画像
サイズ,ビット深さ,ストライプ幅および階層数を決定
する。なお、以下の説明では、主走査方向の画像サイズ
をx、副走査方向の画像サイズをy、ビット深さをn、ス
トライプ幅をs、階層数をdとする。また、説明を簡単に
するためにxは8の倍数であるとし、x=3,072,y=4,09
0,n=3,s=128,d=3にする。
【0025】続いて、ステップS002で、アドレスカウ
ンタ9と、バッファ2,4〜6,14と、フレームメモリ
10,11,13とを初期化する。つまり、アドレスカウ
ンタ9のカウント値cを零にし、バッファおよびフレー
ムメモリをクリアする。続いて、ステップS003で、ル
ープカウンタ8のループ変数iを零にして、副走査方向
の修正画像サイズy'とオフセット値ofsを次式によって
求める。ただし、除算結果に余りがあるときは切捨て
る。なお、本実施例ではofsは1,572,864になる。
【0026】 y'=(y+s-1)/s×s …(1) ofs=y'×x/8 …(2) 続いて、ステップS004を経てステップS006で、カラー
スキャナ1を起動し原稿画像を読取って、3ビット/画
素の画素データを順次バッファ2へ格納し、ステップS
007で、バッファ2に格納した画像データを色別に分割
して読出し、バッファ4〜6へ格納する。つまり、画素
データの赤のビットは、ループカウンタ8のループ変数
iに応じて、バッファ4の第iビットに格納される。同様
に、青のビットはバッファ5の第iビットに、緑のビッ
トはバッファ6の第iビットにそれぞれ格納される。
【0027】続いて、ステップS008でループ変数iをイ
ンクリメントし、ステップS009でループ変数iを判定し
て、ループ変数iが8になるまでステップS004からS00
8の一連の手順を繰返す。ループ変数iが8になると、バ
ッファ4〜6には1バイト分のビットプレーンデータが
生成されたことになり、バッファ4〜6に格納されたデ
ータを読出して、フレームメモリ10へ格納する。ま
ず、ステップS010で、セレクタ7にバッファ4を選択
させて、赤の1バイトをフレームメモリ10のc番地に
格納し、ステップS011で、セレクタ7にバッファ5を
選択させて、青の1バイトをフレームメモリ10のc+of
s番地に格納し、ステップS012で、セレクタ7にバッフ
ァ6を選択させて、緑の1バイトをフレームメモリ10
のc+2ofs番地に格納する。
【0028】続いて、ステップS013で、アドレスカウ
ンタ9のカウント値cをインクリメントし、ループカウ
ンタ8のループ変数iを零にした後、ステップS004へ戻
り、すべての画素の読込みを終了するまで、ステップS
004からS013の一連の手順を繰返す。すべての画素デー
タがフレームメモリ10に格納されると、ステップS00
5で、原画像の画像サイズを次式によって求めたX,Yに修
正する。
【0029】 X=x …(3) Y=y'×n …(4) 続いて、ステップS014でフレームメモリ10に格納さ
れた画像サイズ(X,Y)の画像データをフレームメモリ1
1に複写し、ステップS015で符号器12を起動して第
1階層画像を生成してフレームメモリ13へ格納し、ス
テップS016で符号器12によって第1階層画像から第
2階層画像を生成してフレームメモリ11へ格納する。
【0030】続いて、ステップS017で、符号器12に
よって、フレームメモリ11に格納された第2階層画像
のすべての画素データを符号化し、コードバッファ14
の先頭から順に生成された符号を格納する。続いて、ス
テップS018で第2階層画像の符号化終了通報を受信す
ると、ステップS019で、符号器12により、フレーム
メモリ11の第2階層画像を参照して、フレームメモリ
13の第1階層画像のすべての画素データを符号化し、
コードバッファ14に格納した第2階層画像の符号に続
いて生成された符号を格納する。
【0031】続いて、ステップS020で第1階層画像の
符号化終了通報を受信すると、ステップS021でフレー
ムメモリ11をクリアし、ステップS022でフレームメ
モリ10に格納された画像サイズ(X,Y)の画像データを
フレームメモリ11に再び複写し、ステップS023で、
符号器12により、フレームメモリ13の第1階層画像
を参照して、フレームメモリ11の第0階層画像のすべ
ての画素データを符号化し、コードバッファ14に格納
した第1階層画像の符号に続いて生成された符号を格納
する。
【0032】続いて、ステップS024で第0階層画像の
符号化終了通報を受信すると、ステップS025で、ヘッ
ダ処理部16を起動して、前述したX,Y,s,dおよび符号
化データ順(LOTOHI: 低解像度のデータが先頭)などか
らヘッダを生成して、生成したヘッダを記憶装置15の
所定領域へ格納し、ステップS026で、ヘッダ処理部1
6により、記憶装置15に格納したヘッダに続いて、画
像属性情報として原画像のビット深さnを表す1バイト
データを格納し、ステップS027で、記憶装置15に格
納した画像属性情報に続いて、コードバッファ14に格
納されたすべての符号を格納して、階層符号化を終了す
る。
【0033】以上説明したように、本実施例によれば、
ビットプレーン画像を生成し、このビットプレーン画像
を複数連続させた一枚の画像にして、階層画像を生成し
符号化する。従って、ビットプレーン毎にその階層画像
を生成して符号化する従来の欠点を改善して、符号器や
フレームメモリの制御を容易にし、生成された符号の管
理も容易である。さらに、各ビットプレーン毎に符号器
を初期化する必要もなく、動的な算術符号化では符号化
効率を低下させることがない。
【0034】
【第2実施例】以下、本発明にかかる第2実施例の画像
符号化装置を説明する。なお、第2実施例において、第
1実施例と略同様の構成については、同一符号を付し
て、その詳細説明を省略する。図10は第2実施例の画
像符号化装置の構成例を示すブロック図である。
【0035】同図において、103は白黒スキャナで、
原稿画像を読取って、例えば四階調の画像データを出力
する。104はバッファで、白黒スキャナ103から出
力された画像データを蓄積する、例えば2ビット/画素
のバッファである。105はセレクタで、CPU17の指
示に応じて、バッファ2または104から出力された画
像データを選択しバッファ4〜6へ送る。
【0036】本実施例においては、バッファ4は赤また
は白黒スキャナ103から出力された上位1ビットを、
バッファ5は青または白黒スキャナ103から出力され
た下位1ビットを、バッファ6は緑をそれぞれ格納す
る。以下においては、JBIG方式の二値画像階層符号化を
例にして説明する。なお、最小サイズを第2階層にし、
第0階層のストライプ数を64にするが、本実施例はこれ
に限定されるものではない。
【0037】図11から図15は本実施例の階層符号化
手順の一例を示すフローチャートで、CPU17によって
実行される。カラースキャナ1または白黒スキャナ10
3から画像の読込要求があると、ステップS101で、符
号化する画像の画像サイズ,ビット深さ,ストライプ幅
および階層数を決定する。なお、以下の説明では、主走
査方向の画像サイズをx、副走査方向の画像サイズをy、
ビット深さをn、ストライプ幅をs、階層数をdとする。
また、説明を簡単にするためにxは8の倍数であると
し、x=2,048,y=3,069,s=64,d=3にする。なお、ビッ
ト深さnは、カラースキャナ1の場合は3、白黒スキャ
ナ103の場合は2になる。
【0038】続いて、ステップS102で、アドレスカウ
ンタ9と、バッファ2,4〜6,14,104と、フレー
ムメモリ10,11,13とを初期化する。つまり、アド
レスカウンタ9のカウント値cを零にし、バッファおよ
びフレームメモリをクリアする。続いて、ステップS10
3で、ループカウンタ8のループ変数iを零にして、副走
査方向の修正画像サイズy'を(1)式により、オフセット
値ofsを(2)式によって求める。ただし、除算結果に余り
があるときは切捨てる。なお、本実施例ではofsは786,4
32になる。
【0039】続いて、ステップS104で画像の読込要求
を発行したスキャナによって処理が分岐するが、まず、
白黒スキャナ103で白黒画像を読込む場合について説
明する。ステップS105でセレクタ105にバッファ1
04を選択させ、ステップS106を経てステップS107
で、白黒スキャナ103を起動し原稿画像を読取って、
2ビット/画素の画素データを順次バッファ104へ格
納し、ステップS108で、バッファ104に格納した画
像データをビット別に分割して読出し、バッファ4と5
へ格納する。つまり、画素データの上位ビットは、ルー
プカウンタ8のループ変数iに応じて、バッファ4の第i
ビットに格納される。同様に、下位ビットはバッファ5
の第iビットに格納される。
【0040】続いて、ステップS109でループ変数iをイ
ンクリメントし、ステップS110でループ変数iを判定し
て、ループ変数iが8になるまでステップS106からS10
9の一連の手順を繰返す。ループ変数iが8になると、バ
ッファ4と5には1バイト分のビットプレーンデータが
生成されたことになり、バッファ4と5に格納されたデ
ータを読出して、フレームメモリ10へ格納する。ま
ず、ステップS111で、セレクタ7にバッファ4を選択
させて、上位1バイトをフレームメモリ10のc番地に
格納し、ステップS112で、セレクタ7にバッファ5を
選択させて、下位1バイトをフレームメモリ10のc+of
s番地に格納する。
【0041】続いて、ステップS113で、アドレスカウ
ンタ9のカウント値cをインクリメントし、ループカウ
ンタ8のループ変数iを零にした後、ステップS106へ戻
り、すべての画素の読込みを終了するまで、ステップS
106からS113の一連の手順を繰返す。すべての画素デー
タがフレームメモリ10に格納されると、ステップS12
4で原画像の画像サイズを(3),(4)式によって求めたX,Y
に修正し、ステップS125でフレームメモリ10に格納
された画像サイズ(X,Y)の画像データをフレームメモリ
11に複写し、ステップS126で符号器12を起動して
第1階層画像を生成してフレームメモリ13へ格納し、
ステップS127で符号器12によって第1階層画像から
第2階層画像を生成してフレームメモリ11へ格納す
る。
【0042】続いて、ステップS128で、符号器12に
よって、フレームメモリ11に格納された第2階層画像
のすべての画素データを符号化し、コードバッファ14
の先頭から順に生成された符号を格納する。続いて、ス
テップS129で第2階層画像の符号化終了通報を受信す
ると、ステップS130で、符号器12により、フレーム
メモリ11の第2階層画像を参照して、フレームメモリ
13の第1階層画像のすべての画素データを符号化し、
コードバッファ14に格納した第2階層画像の符号に続
いて生成された符号を格納する。
【0043】続いて、ステップS131で第1階層画像の
符号化終了通報を受信すると、ステップS132でフレー
ムメモリ11をクリアし、ステップS133でフレームメ
モリ10に格納された画像サイズ(X,Y)の画像データを
フレームメモリ11に再び複写し、ステップS134で、
符号器12により、フレームメモリ13の第1階層画像
を参照して、フレームメモリ11の第0階層画像のすべ
ての画素データを符号化し、コードバッファ14に格納
した第1階層画像の符号に続いて生成された符号を格納
する。
【0044】続いて、ステップS135で第0階層画像の
符号化終了通報を受信すると、ステップS136で、ヘッ
ダ処理部16を起動して、前述したX,Y,s,dおよび符号
化データ順(LOTOHI: 低解像度のデータが先頭)などか
らヘッダを生成して、生成したヘッダを記憶装置15の
所定領域へ格納し、ステップS137で、ヘッダ処理部1
6により、記憶装置15に格納したヘッダに続いて、画
像属性情報として原画像のビット深さnと種類(この場
合は多値白黒)を表すデータを格納し、ステップS138
で、記憶装置15に格納した画像属性情報に続いて、コ
ードバッファ14に格納されたすべての符号を格納し
て、階層符号化を終了する。
【0045】図16は画像属性情報のフォーマット例を
示す図で、画像属性情報は例えば4ビットであり、その
最上位ビットは白黒/カラーの区別を‘0’/‘1’で表
し、下位3ビットはビット深さを表す。一方、カラース
キャナ1でカラー画像を読込む場合は、ステップS104
からステップS114へ分岐して、セレクタ105にバッ
ファ2を選択させ、ステップS115を経てステップS116
で、カラースキャナ1を起動し原稿画像を読取って、3
ビット/画素の画素データを順次バッファ2へ格納し、
ステップS117で、バッファ2に格納した画像データを
色別に分割して読出し、バッファ4〜6へ格納する。つ
まり、画素データの赤のビットは、ループカウンタ8の
ループ変数iに応じて、バッファ4の第iビットに格納さ
れる。同様に、青のビットはバッファ5の第iビット
に、緑のビットはバッファ6の第iビットにそれぞれ格
納される。
【0046】続いて、ステップS118でループ変数iをイ
ンクリメントし、ステップS119でループ変数iを判定し
て、ループ変数iが8になるまでステップS115からS11
8の一連の手順を繰返す。ループ変数iが8になると、バ
ッファ4〜6には1バイト分のビットプレーンデータが
生成されたことになり、バッファ4〜6に格納されたデ
ータを読出して、フレームメモリ10へ格納する。ま
ず、ステップS120で、セレクタ7にバッファ4を選択
させて、赤の1バイトをフレームメモリ10のc番地に
格納し、ステップS121で、セレクタ7にバッファ5を
選択させて、青の1バイトをフレームメモリ10のc+of
s番地に格納し、ステップS122で、セレクタ7にバッフ
ァ6を選択させて、緑の1バイトをフレームメモリ10
のc+2ofs番地に格納する。
【0047】続いて、ステップS123で、アドレスカウ
ンタ9のカウント値cをインクリメントし、ループカウ
ンタ8のループ変数iを零にした後、ステップS115へ戻
り、すべての画素の読込みを終了するまで、ステップS
115からS123の一連の手順を繰返す。すべての画素デー
タがフレームメモリ10に格納されるとステップS124
へ進んで、以降、前述した白黒スキャナ103で画像を
読込んだ場合と同じ手順を実行することになる。
【0048】以上説明したように、本実施例によれば、
第1実施例と同様の効果が期待できるほか、画像属性情
報によって画像種(例えば多値白黒/カラー画像)を判
断できるので、受信側などで正しい画像を再生すること
ができる。
【0049】
【第3実施例】以下、本発明にかかる第3実施例の画像
符号化装置を説明する。なお、第3実施例において、第
1実施例と略同様の構成については、同一符号を付し
て、その詳細説明を省略する。図17は第3実施例の画
像符号化装置の構成例を示すブロック図である。
【0050】同図において、209はストライプメモリ
で、符号化する原画像を分割して得られるストライプを
ビット単位で格納する。211もストライプメモリで、
階層符号化時に生成される縮小画像のストライプをビッ
ト単位で格納する。以下においては、JBIG方式の二値画
像階層符号化を例にして説明する。なお、最小サイズを
第2階層にし、第0階層のストライプ数を128にする
が、本実施例はこれに限定されるものではない。
【0051】図18から図22は本実施例の階層符号化
手順の一例を示すフローチャートで、CPU17によって
実行される。ステップS201で、符号化する画像の画像
サイズ(x,y),ビット深さn,ストライプ幅sおよび階層
数dを決定して、カラースキャナ1へ知らせる。また、
以下の説明では第1実施例と同様に、x=3,072,y=4,09
0,n=3,s=128,d=3にする。
【0052】続いて、ステップS202で、アドレスカウ
ンタ9と、バッファ2,4〜6,14と、ストライプメモ
リ209,211とを初期化する。つまり、アドレスカ
ウンタ9のカウント値cを零にし、バッファおよびスト
ライプメモリをクリアする。続いて、ステップS203と
S204を経てステップS205で、カラースキャナ1を起動
し原稿画像を読取って、3ビット/画素の画素データを
順次バッファ2へ格納し、ステップS206で、バッファ
2に格納した画像データを色別に分割して読出し、バッ
ファ4〜6へ格納する。つまり、画素データの赤のビッ
トはバッファ4の先頭から順に格納される。同様に、青
のビットはバッファ5の先頭から順に、緑のビットはバ
ッファ6の先頭から順にそれぞれ格納される。そして、
ステップS203ですべての画素の読込みが終了したか否
か、ステップS204で1ストライプの読込みが終了した
か否かを判定し、何れかが終了するまでステップS203
からS206を繰返す。
【0053】ステップS207で1ストライプの読込終了
通知を受信すると、ステップS208でカラースキャナ1
を一時停止し、ステップS209でオフセット値ofsを次式
によって求める。なお、本実施例におけるofsは393,216
になる。 ofs=s×x …(5) 続いて、ステップS210で、セレクタ7にバッファ4を
選択させて、赤のデータをストライプメモリ209の先
頭番地から格納し、ステップS211で、セレクタ7にバ
ッファ5を選択させて、青のデータをストライプメモリ
209のofs1番地から格納し、ステップS212で、セレ
クタ7にバッファ6を選択させて、緑のデータをフレー
ムメモリ209の2ofs1番地から格納する。
【0054】続いて、ステップS213で階層ループ変数p
を零にし、ステップS214で、階層ループ変数pと階層数
dとを比較して、p<(d-1)であればステップS215へ進
み、p=(d-1)であればステップS221へ進む。p<(d-1)の
場合ステップS215で、階層ループ変数pが奇数か否かを
判定する。階層ループ変数pの初期値は零であるからス
テップS216へ進んで、符号器12によって、ストライ
プメモリ209に格納された画像から第1階層画像を生
成してストライプメモリ211へ格納し、ステップS21
7で、符号器12によって、ストライプメモリ211の
第1階層画像を参照して、ストライプメモリ209に格
納された第0階層画像を符号化し、コードバッファ14
の先頭から順に生成された符号を格納する。
【0055】続いて、ステップS220で階層ループ変数p
をインクリメントした後、ステップS214へ戻る。従っ
て、階層ループ変数pは1でありステップS218へ進ん
で、符号器12によって、ストライプメモリ211に格
納された第1階層画像から第2階層画像を生成してスト
ライプメモリ209へ格納し、ステップS219で、符号
器12によって、ストライプメモリ209の第2階層画
像を参照して、ストライプメモリ211に格納された第
1階層画像を符号化し、コードバッファ14に格納した
第0階層画像の符号に続いて生成された符号を格納す
る。
【0056】続いて、ステップS220で階層ループ変数p
をインクリメントした後、ステップS214へ戻る。従っ
て、階層ループ変数pは2でありステップS218とS221
を経てステップS222へ進んで、符号器12によって、
ストライプメモリ209に格納された第2階層画像を符
号化し、コードバッファ14に格納した第1階層画像の
符号に続いて生成された符号を格納する。なお、ステッ
プS221で階層ループ変数pが奇数であった場合は、ステ
ップS223で、符号器12によって、ストライプメモリ
211に格納された第n階層画像を符号化し、コードバ
ッファ14に格納した第nー1階層画像の符号に続いて生
成された符号を格納することになる。
【0057】続いて、ステップS224で、すべての画素
の符号化が終了したか否かを判定して、未了であればス
テップS225へ進んで、符号化終了通知を受信すると、
ステップS226でカラースキャナ1による画像読込を再
開した後、ステップS203へ戻り、ステップS203からS
206の一連の手順によって次のストライプの読込みを行
う。
【0058】ステップS203ですべての画素の読込みが
終了すると、ステップS209でオフセット値ofsを次式に
よって求める。なお、本実施例ではofsは374,784にな
る。 ofs=(y%s)×x …(6) ただし、「%」は剰余を求める演算を表す。このように
して、ステップS224ですべての画素の符号化が終了す
るとステップS227へ進んで、原画像の画像サイズを
(7),(8)式によって求めたX,Yに修正する。なお、本実施
例ではX=3,072,Y=12,270になる。
【0059】 X=x (7) Y=y×n (8) 続いて、ステップS228で、ヘッダ処理部16を起動し
て、前述したX,Y,s,dおよび符号化データ順(HITOLO:
高解像度のデータが先頭)などからヘッダを生成して、
生成したヘッダを記憶装置15の所定領域へ格納し、ス
テップS229で、ヘッダ処理部16により、記憶装置1
5に格納したヘッダに続いて、画像属性情報として原画
像のビット深さnと種類(この場合はカラー画像)を表
すデータを格納し、ステップS230で、記憶装置15に
格納した画像属性情報に続いて、コードバッファ14に
格納されたすべての符号を格納して、階層符号化を終了
する。
【0060】図23は画像属性情報のフォーマット例を
示す図で、画像属性情報は例えば8ビットであり、その
最上位2ビットは画像データ種を表し、次ぎの3ビット
はデータの並び方を表し、下位3ビットはビット深さを
表す。以上説明したように、本実施例によれば、第1実
施例,第2実施例と同様の効果が期待できる。
【0061】なお、上述の各実施例においては、符号化
方式としてJBIGを例に説明したが、本実施例はこれに限
定されるものではなく、階層画像を生成して符号化する
他の方式、例えば、サブサンプリングによる階層画像の
生成と、MMR方式による符号化やブロック符号化の組合
せであってもよい。また、入力画像も上述に限定される
ものではなく、例えば、24ビットフルカラー画像や白黒
画像上に赤文字があるような二色画像であってもよい。
同様に、符号順,階層数,画像サイズ,符号化のための
メモリ構成なども上述に限定されるものではない。
【0062】さらに、画像属性情報の形態も上述に限定
されるものではなく、例えば、カラー画像と白黒画像に
ついて、記憶装置や領域を分離し管理することにより識
別してもよい。また、生成された符号の利用は、記憶装
置に格納するだけに限られるものではなく、例えば、通
信インタフェイスを介した画像通信に利用することがで
きる。
【0063】なお、本発明は、複数の機器から構成され
るシステムに適用しても、一つの機器からなる装置に適
用していもよい。また、本発明は、システムあるいは装
置にプログラムを供給することによって達成される場合
にも適用することができる。上述した実施例によれば、
画像データの各ビットを分割してビットプレーンを生成
し、生成されたビットプレーンを連続させて一つの画像
データを構成し、構成された画像データを階層符号化す
ることができる。つまり、ビットプレーンや色ごとにそ
の階層画像を生成して符号化する必要をなくして、符号
器やフレームメモリの制御を容易にし、生成された符号
の管理も容易にできる。さらに、各ビットプレーンごと
に符号器を初期化する必要がなく、動的な算術符号化で
符号化効率を低下させることがない。また、受信側で
は、ビットプレーンがカラー画像を形成するのか、モノ
クロ多値画像を形成するのかを正しく判断でき、正しい
画像を再生することができる。
【0064】
【発明の効果】以上説明したように、本発明によれば、
ビットプレーンごとに低解像度の画像データを生成した
り、ビットプレーンごとの画像データおよび低解像度の
画像データを符号化するような、ビットプレーンごとの
処理を不要とすることができる。従って、少なくとも2
ビット/画素の画像データを効率よく符号化することが
できる。さらに、画像を階層符号化する際の符号器の制
御を容易にし、原画像の属性に合った画像を再生させる
ことができる。
【図面の簡単な説明】
【図1】二値画像を対象にする階層符号化方式の概要を
説明する図である。
【図2】JBIGアルゴリズムによって定義されたストライ
プの概念を説明する図である。
【図3】JBIGアルゴリズムを多値画像やカラー画像への
拡張する方法の概念を説明する図である。
【図4】図1の階層符号化を実現する装置の構成を示す
ブロック図である。
【図5】本発明にかかる一実施例の画像符号化装置の構
成例を示すブロック図である。
【図6】本実施例の階層符号化手順の一例を示すフロー
チャートである。
【図7】本実施例の階層符号化手順の一例を示すフロー
チャートである。
【図8】本実施例の階層符号化手順の一例を示すフロー
チャートである。
【図9】本実施例の階層符号化手順の一例を示すフロー
チャートである。
【図10】本発明にかかる第2実施例の画像符号化装置
の構成例を示すブロック図である。
【図11】第2実施例の階層符号化手順の一例を示すフ
ローチャートである。
【図12】第2実施例の階層符号化手順の一例を示すフ
ローチャートである。
【図13】第2実施例の階層符号化手順の一例を示すフ
ローチャートである。
【図14】第2実施例の階層符号化手順の一例を示すフ
ローチャートである。
【図15】第2実施例の階層符号化手順の一例を示すフ
ローチャートである。
【図16】第2実施例の画像属性情報のフォーマット例
を示す図である。
【図17】本発明にかかる第3実施例の画像符号化装置
の構成例を示すブロック図である。
【図18】第3実施例の階層符号化手順の一例を示すフ
ローチャートである。
【図19】第3実施例の階層符号化手順の一例を示すフ
ローチャートである。
【図20】第3実施例の階層符号化手順の一例を示すフ
ローチャートである。
【図21】第3実施例の階層符号化手順の一例を示すフ
ローチャートである。
【図22】第3実施例の階層符号化手順の一例を示すフ
ローチャートである。
【図23】第3実施例の画像属性情報のフォーマット例
を示す図である。
【符号の説明】
1 カラースキャナ 2 バッファ 4〜6 バッファ 7 セレクタ 8 ループカウンタ 9 アドレスカウンタ 10,11,13 フレームメモリ 12 符号器 14 コードバッファ 15 記憶装置 16 ヘッダ処理部 17 CPU
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H04N 1/41 - 1/419 H04N 7/24 - 7/68 G06T 9/00

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 少なくとも2ビット/画素の画像データを
    符号化する画像符号化装置であって、 前記画像データの各ビットを分割して複数のビットプレ
    ーンを生成する生成手段と、 前記生成手段によって生成された複数のビットプレーン
    を連続させて一つの画像データを構成する構成手段と、 前記構成手段によって構成された一つの画像データから
    低解像度の画像データを生成する縮小手段と、 前記構成手段によって構成された一つの画像データおよ
    び前記縮小手段によって生成された低解像度の画像デー
    タをそれぞれ 符号化する符号化手段とを有することを特
    徴とする画像符号化装置。
  2. 【請求項2】 さらに、前記符号化手段から出力された
    符号に前記画像データの属性情報を付加する付加手段を
    有することを特徴とする請求項1に記載された画像符号
    化装置。
  3. 【請求項3】 少なくとも2ビット/画素の画像データを
    符号化する画像符号化方法であって、 前記画像データの各ビットを分割して複数のビットプレ
    ーンを生成し、 生成された複数のビットプレーンを連続させて一つの画
    像データを構成し、 構成された一つの画像データから低解像度の画像データ
    を生成し、 前記一つの画像データおよび前記低解像度の画像データ
    をそれぞれ 符号化することを特徴とする画像符号化方
    法。
JP05301654A 1993-12-01 1993-12-01 画像符号化装置およびその方法 Expired - Fee Related JP3089152B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP05301654A JP3089152B2 (ja) 1993-12-01 1993-12-01 画像符号化装置およびその方法
US08/781,063 US5745607A (en) 1993-12-01 1997-01-09 Image encoding apparatus and method for generating and encoding reduced image data by bit planes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP05301654A JP3089152B2 (ja) 1993-12-01 1993-12-01 画像符号化装置およびその方法

Publications (2)

Publication Number Publication Date
JPH07154608A JPH07154608A (ja) 1995-06-16
JP3089152B2 true JP3089152B2 (ja) 2000-09-18

Family

ID=17899542

Family Applications (1)

Application Number Title Priority Date Filing Date
JP05301654A Expired - Fee Related JP3089152B2 (ja) 1993-12-01 1993-12-01 画像符号化装置およびその方法

Country Status (2)

Country Link
US (1) US5745607A (ja)
JP (1) JP3089152B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE507410C2 (sv) * 1995-11-08 1998-05-25 Ericsson Telefon Ab L M Förfarande och anordning för rörelseestimering
US5949911A (en) * 1997-05-16 1999-09-07 Teralogic, Inc. System and method for scalable coding of sparse data sets
JP4251675B2 (ja) * 1997-07-30 2009-04-08 ソニー株式会社 記憶装置およびアクセス方法
JP4236713B2 (ja) * 1997-07-30 2009-03-11 ソニー株式会社 記憶装置およびアクセス方法
US6546052B1 (en) 1998-05-29 2003-04-08 Canon Kabushiki Kaisha Image processing apparatus and method, and computer-readable memory
US6407830B1 (en) 1999-02-05 2002-06-18 Hewlett-Packard Co. Sensor assemblies for color optical image scanners optical scanner and methods of scanning color images
JP4214501B2 (ja) * 2000-12-18 2009-01-28 日本圧着端子製造株式会社 電気コネクタ
KR100647956B1 (ko) * 2004-12-14 2006-11-23 엘지전자 주식회사 휴대폰용 정지 영상 압축 및 복원 방법
JP5469127B2 (ja) * 2011-05-30 2014-04-09 富士フイルム株式会社 画像データ符号化装置ならびにその動作制御方法およびそのプログラム
JP6234083B2 (ja) 2013-06-28 2017-11-22 キヤノン株式会社 端末装置、制御方法、およびプログラム
JP6497014B2 (ja) * 2014-09-24 2019-04-10 富士ゼロックス株式会社 画像処理装置及び画像処理プログラム
JP2017134702A (ja) 2016-01-29 2017-08-03 キヤノン株式会社 サーバシステム、サーバシステムの制御方法、およびプログラム
JP2018041415A (ja) * 2016-09-09 2018-03-15 株式会社リコー 情報処理装置、情報処理方法および情報処理プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5185813A (en) * 1988-01-19 1993-02-09 Kabushiki Kaisha Toshiba Document image processing apparatus
EP0395394B1 (en) * 1989-04-26 1995-06-28 Canon Kabushiki Kaisha Image encoding method
DE69118939T2 (de) * 1990-02-06 1996-11-14 Canon Kk Bildverarbeitungsgerät
US5521717A (en) * 1992-02-03 1996-05-28 Canon Kabushiki Kaisha Image processing apparatus and method therefor
US5335088A (en) * 1992-04-01 1994-08-02 Xerox Corporation Apparatus and method for encoding halftone images

Also Published As

Publication number Publication date
JPH07154608A (ja) 1995-06-16
US5745607A (en) 1998-04-28

Similar Documents

Publication Publication Date Title
JP3089152B2 (ja) 画像符号化装置およびその方法
US5065447A (en) Method and apparatus for processing digital data
US4319267A (en) Picture coding and/or decoding equipment
JP3978478B2 (ja) 推定画素値により固定速度のブロック単位の画像圧縮を行うための装置及び方法
JP3260910B2 (ja) 符号化方法
JP2000115783A (ja) 復号化装置及び方法
JP4522199B2 (ja) 画像符号化装置及び画像処理装置及びそれらの制御方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
JP2007143082A (ja) 画像データの圧縮方法および装置
US5335088A (en) Apparatus and method for encoding halftone images
US20070013953A1 (en) Method and device for compressing image data
JPH0937262A (ja) 画像処理装置及び方法
JP3496220B2 (ja) イメージを表すデータの有損失の圧縮及び伸張方法
JP3563838B2 (ja) 画像符号化・復号化装置
EP0911760B1 (en) Iterated image transformation and decoding apparatus and methods
JP3736107B2 (ja) 画像処理装置
JPH0261832B2 (ja)
JPH1070730A (ja) 画像符号化・復号化装置、及びその制御プログラムを記録した記録媒体
KR910008524B1 (ko) 팩시밀리의 의사중간조 화상데이터 압축을 위한 블럭패턴 반복 부호화방법
JPS6026347B2 (ja) 冗長度抑圧符号化方式
JP2936042B2 (ja) 2値画像伝送装置
JPH089167A (ja) 画像符号化復号化方法および画像符号化復号化装置
JP3066278B2 (ja) 画像符号化装置及び画像復号化装置
JP2598410B2 (ja) 符号化装置
JPS63132573A (ja) 中間調画像符号化回路
JPH07112243B2 (ja) ブロック分割順次再生符号化方式

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20000609

LAPS Cancellation because of no payment of annual fees