JP3408094B2 - 画像処理装置及びその方法 - Google Patents

画像処理装置及びその方法

Info

Publication number
JP3408094B2
JP3408094B2 JP02258897A JP2258897A JP3408094B2 JP 3408094 B2 JP3408094 B2 JP 3408094B2 JP 02258897 A JP02258897 A JP 02258897A JP 2258897 A JP2258897 A JP 2258897A JP 3408094 B2 JP3408094 B2 JP 3408094B2
Authority
JP
Japan
Prior art keywords
code length
area
encoding
code
continuous tone
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
JP02258897A
Other languages
English (en)
Other versions
JPH10224640A (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 JP02258897A priority Critical patent/JP3408094B2/ja
Priority to DE69823402T priority patent/DE69823402D1/de
Priority to EP98300782A priority patent/EP0858053B1/en
Priority to US09/017,732 priority patent/US6067382A/en
Publication of JPH10224640A publication Critical patent/JPH10224640A/ja
Application granted granted Critical
Publication of JP3408094B2 publication Critical patent/JP3408094B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/007Transform coding, e.g. discrete cosine transform

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、入力された画像デ
ータを符号化し出力する画像処理装置およびその方法に
関するものである。特に、例えば、符号化の結果、所望
する符号長を得ることができる画像処理装置およびその
方法に関するものである。
【0002】
【従来の技術】近年、カラープリンタの普及やDTPシ
ステムの機能の拡張によって、文書画像のカラー化や、
適当な濃度を持つ文字の挿入等が行われるようになっ
た。これにより、文書画像の一部分を強調したり、意識
的に目立たなくさせたりすることが可能となり、文書画
像により多くの情報を盛り込めることができるようにな
った。
【0003】一方で、文書画像を構成する、画像(連続
階調)、図形、文字等の構成要素と書式を定義し、文書
画像をその構成要素の集まりとして記述する技術である
領域分割技術が高まりつつある。従来の領域分割技術の
一つとしては、文書画像を量子化した後、領域分割を行
う方法がある。例えば、2値の文書画像を入力して領域
を判定する方法には、特願平6ー167748号に記載
されている方法や、特開平5−128306号に記載さ
れている「文書画像の属性判別方法」等がある。これら
の方法は、入力された文書画像を予め設定された閾値と
比較して2値化し、文書画像を画像(連続階調)、図
形、文字等の領域に分割し、領域毎にその内容を表わす
属性を付与することで文書画像を複数の領域に分割す
る。
【0004】そして、これらの領域分割技術によって複
数の領域に分割された文書画像の構成要素は、世界的な
通信網の整備とともに普及しつつあるインターネットに
代表されるネットワークで交換されるデータや、アメリ
カで標準化されたSGMLとして広がりつつある。その
ため、文書画像あるいは文書画像の各構成要素を好適に
符号化して伝送したり、記憶媒体に蓄積することが必要
とされている。
【0005】例えば、「複合カラー文書を対象とした構
造化カラーファクシミリ」(松木他:画像電子学会誌第
24巻第1号PP.26ー33)のように、入力された
文書画像の構成要素毎に符号化する符号化方式を切り換
えることで、文書画像の各構成要素を好適に符号化して
伝送したり、記憶媒体に蓄積している。また、特開平4
−356873号に記載されている「カラー文書画像の
適応符号化方式」のように、入力されたカラー文書画像
を2値/多値のいずれかに判定し、その判定結果に応じ
てカラー文書画像を符号化する符号化方式を切り換える
ことで、カラー文書画像を好適に符号化して伝送した
り、記憶媒体に蓄積している。
【0006】
【発明が解決しようとする課題】しかしながら、上記従
来の符号化方式の内、文書画像の構成要素毎に符号化す
る方式では、複数の符号化方式を併用しているため、ユ
ーザが所望する符号長の符号を得ることができないとい
う問題があった。また、入力されたカラー文書画像を2
値/多値のいずれかに判定し、その判定結果に応じてカ
ラー文書画像を符号化する方式では、文書画像を2値画
像あるいは多値画像のいずれかに対応した符号化を行う
ため、文書画像の品質が保たれないおそれが発生すると
いう問題があった。
【0007】本発明は上記の問題点に鑑みてなされたも
のであり、入力された画像を符号化するに際し、ユーザ
が所望する符号長からなる符号を効率的に得ることがで
き、かつ画像品質を良好に維持しながら符号化すること
ができる画像処理装置及びその方法を提供することを目
的とする。
【0008】
【課題を解決するための手段】上記の目的を達成するた
めの本発明による画像処理装置は以下の構成を備える。
即ち、所望の符号長である目標符号長を指定する指定手
段と、前記目標符号長となるように、入力された画像デ
ータ全体を、量子化を伴う非可逆符号化アルゴリズムに
より符号化する第1符号化手段と、前記入力された画像
データを、属性毎に複数の領域に分割する分割手段と、
前記目標符号長となるように、前記分割手段で分割され
た各領域をその属性に応じて可逆符号化アルゴリズム又
は前記非可逆符号化アルゴリズムの一方により符号化す
る第2符号化手段と、前記目標符号長となるように符号
化を実行した時の第1及び第2符号化手段における各非
可逆符号化アルゴリズムで適用された量子化係数の大小
関係を比較し、その比較の結果によって得られる量子化
係数が小さい方に相当する符号化手段からの符号化デー
タを選択出力する出力手段とを備える。
【0009】また、好ましくは、前記非可逆符号化アル
ゴリズムは、JPEG符号化アルゴリズムである。
【0010】また、好ましくは、前記可逆符号化アルゴ
リズムは、JBIG符号化アルゴリズムである。
【0011】上記の目的を達成するための本発明による
画像処理方法は以下の構成を備える。即ち、所望の符号
長である目標符号長を指定する指定工程と、前記目標符
号長となるように、入力された画像データ全体を、量子
化を伴う非可逆符号化アルゴリズムにより符号化する第
1符号化工程と、前記入力された画像データを、属性毎
に複数の領域に分割する分割工程と、前記目標符号長と
なるように、前記分割工程で分割された各領域をその属
性に応じて可逆符号化アルゴリズム又は前記非可逆符号
化アルゴリズムの一方により符号化する第2符号化工程
と、前記目標符号長となるように符号化を実行した時の
第1及び第2符号化工程における各非可逆符号化アルゴ
リズムで適用された量子化係数の大小関係を比較し、そ
の比較の結果によって得られる量子化係数が小さい方に
相当する符号化工程からの符号化データを選択出力する
出力工程とを備える。
【0012】
【0013】
【0014】
【0015】
【0016】
【0017】
【0018】
【0019】
【0020】
【0021】
【0022】
【0023】
【0024】
【0025】
【発明の実施の形態】以下、図面を参照して本発明の好
適な実施形態を詳細に説明する。まず、後述する実施形
態と共通の基本構成を有する参考例について、いくつか
説明する。参考例1> 図1は本発明に係る参考例1の画像処理装置の構成を示
すブロック図である。
【0026】図1において、100は画像を入力する画
像入力装置であり、スキャナ等で構成される。ここでは
入力画像をカラー多値画像とし、1画素あたりRGB各
8ビットの精度を持つものとして説明を行う。101は
フレームメモリであり、入力されたカラー多値画像デー
タを記憶する。102は領域分割部であり、カラー画像
データの領域分割を行う。参考例1では、説明を簡単に
するため上述の特願平6ー167748号に記載されて
いる領域分割を用いることとする。領域分割部102
は、分割された領域に関する領域情報として、数、位
置、大きさ、属性を出力するとともに、これらに適合し
た符号を出力する。103はセレクタであり、CPU1
11の指示によって出力先を選択する。104は限定色
領域符号化部であり、領域分割部102で分割された領
域の内、後述する限定色領域の符号化を行う。ここで
は、説明を簡単にするために、限定色領域の符号化とし
てJBIG符号化を例にとって説明を行う。105は符
号長指定部であり、ユーザ(不図示)が所望する符号長
(目標符号長)を入力する。
【0027】107は連続階調領域符号化部であり、領
域分割部102で分割された領域の内、後述する連続階
調領域の符号化を行う。ここでは、説明を簡単にするた
めに、連続階調領域の符号化としてJPEG符号化を例
にとって説明を行う。106は量子化係数決定部であ
り、連続階調領域符号化部107のJPEG符号化で用
いる量子化係数を決定する。108は符号バッファであ
り、連続階調領域符号化部107で得られた符号を格納
する。109はセレクタであり、CPU111の指示に
よって入力先を選択する。110は送信部であり、生成
された各符号を通信回線やLAN、記憶媒体に出力す
る。111はCPUであり、不図示の制御線を介して各
構成要素を制御する。112はプログラムメモリであ
り、画像処理装置の制御に必要なプログラムを格納す
る。113はメモリであり、プログラムメモリ112に
格納されるプログラムを動作させるのに必要なメモリ領
域を確保する。
【0028】次に参考例1の画像処理装置の各構成要素
の詳細とその動作について順番に説明していく。まず、
処理に先立ち、CPU111はフレームメモリ101の
内容を0にクリアする。続いて、ユーザ(不図示)は符
号長指定部105から目標符号長LTを入力する。更
に、ユーザの指示に従って画像入力装置100からカラ
ー多値画像を読み込み、フレームメモリ101に格納す
る。
【0029】1画面分のカラー多値画像データがフレー
ムメモリ101に格納されたら、CPU111はフレー
ムメモリ101からカラー多値画像データを読み出し、
領域分割部102に入力する。ここで、領域分割部10
2の詳細な構成について、図2を用いて説明する。図2
は本発明に係る参考例1の領域分割部の詳細な構成を示
すブロック図である。
【0030】図2において、120は輝度変換器であ
り、入力されたカラー多値画像データから輝度画像デー
タを生成する。121は2値化器であり、生成された輝
度画像データを閾値と比較し2値化する。122は領域
分割器であり、2値画像データを特願平6ー16774
8号に記載されている領域分割で領域に分割する。12
3はバッファであり、領域分割器122から出力された
領域分割結果を格納する。124は領域情報整形器であ
り、領域分割結果から得られた限定色領域と連続階調領
域に対し、まず、限定色領域に関する情報である領域情
報を出力し、続いて、連続階調領域に関する情報である
領域情報を出力するように動作する。125は領域情報
メモリであり、領域情報整形器124の出力を格納す
る。126は端子であり、フレームメモリ101からカ
ラー多値画像データの画素データ順に読み込む。127
は端子であり、領域情報を外部に出力する。
【0031】次に、領域分割部102の動作について説
明する。端子126を介して入力されたカラー多値画像
データは、輝度変換器120において、輝度色差信号で
あるNTSC方式のYIQ信号の輝度を表すY信号(輝
度画像データ)に変換される。変換式は入力されたカラ
ー多値画像データの各画素データの各色の値を(R,
G,B)とすると、 Y=0.30R+0.59B+0.11G …(1) で表される。変換された輝度画像データは2値化器12
1で閾値と比較され、閾値より大きな値の画素データに
は「0」を、閾値より小さな値の画素データには「1」
を出力し2値画像データを生成する。2値画像データの
生成が終了したら、領域分割器122によって領域に分
割する。
【0032】領域分割器122は、2値画像データから
特性の似通った矩形の領域を切り出し、それぞれに「文
字」、「セパレータ」、「線画」、「ハーフトーン」と
いった属性を付与する。領域分割器122からはこれら
の矩形の位置、サイズと属性が出力される。これらが上
述の領域情報である。出力された領域情報はバッファ1
23に格納される。すべての領域情報がバッファ123
に格納されたら、CPU111は領域情報整形器124
を動作させる。「文字」、「セパレータ」、「線画」、
「ハーフトーン」といった属性のうち、「ハーフトー
ン」(連続階調領域)とそれ以外(限定色領域)に分け
る。そして、まず、限定色領域の領域情報をバッファ1
23から読み出し、領域情報メモリ125の先頭アドレ
スから順に格納する。限定色領域の領域情報を格納し終
えたら、続いて、連続階調領域の領域情報をバッファ1
23から読み出し、領域情報メモリ125に続けて順に
格納する。
【0033】領域情報メモリ125にすべての領域情報
が格納されたら、CPU111は送信部110を動作さ
せ、通信に必要な手順を行い、データ転送に備える。続
いて、CPU111は領域情報メモリ125に格納され
た領域情報を端子127を介して読み出し、送信部11
0を介して送出する。次に、CPU111はセレクタ1
03、109の入出力に限定色領域符号化部104を選
択する。続いて、領域情報メモリ125に格納されてい
る領域情報を順に読み出す。そして、領域情報に従って
該当するカラー多値画像データをフレームメモリ101
から画素データ毎に読み出し、限定色領域符号化部10
4で処理を行う。
【0034】ここで、限定色領域符号化部104の詳細
な構成について、図3を用いて説明する。図3は本発明
に係る参考例1の限定色領域符号化部の詳細な構成を示
すブロック図である。図3において、140、141、
142は端子であり、フレームメモリ101から限定色
領域内のカラー多値画像データの画素データを画素クロ
ックに従って画素データ毎に読み込む。端子140は赤
色(R)の画素データを、端子141は緑色(G)の画
素データを、端子142は青色(B)の画素データを読
み込む。143は輝度変換器であり、図2の輝度変換器
120と同様に機能する。144は2値化器であり、図
2の2値化器121と同様に機能する。145、14
6、147はラッチであり、ラッチ145は赤色の画素
データを、ラッチ146は緑色の画素データを、ラッチ
147は青色の画素データをラッチする。また、ラッチ
145、146、147は2値化器144の出力が
「1」であるときのみ画素データを出力する。
【0035】148、149、150は加算器であり、
入力された2つの値を加算して出力する。151、15
2、153はラッチであり、加算器148、149、1
50の出力値をラッチする。154はカウンタであり、
2値化器144の出力をカウントする。155、15
6、157は除算器であり、入力値をカウンタ154の
値で割る。158、159、160は端子であり、除算
器155、156、157の結果をそれぞれ出力する。
161はJBIG符号化器であり、2値化器144の出
力をJBIG符号化する。162は符号バッファであ
り、JBIG符号化器161から出力された符号を格納
する。163は端子であり、符号バッファ162の内容
を出力する。
【0036】次に、限定色領域符号化部104の動作に
ついて説明する。CPU111は各限定色領域毎の処理
に先立って、ラッチ145〜147、ラッチ151〜1
53、カウンタ154の内容を0にリセットする。同時
にJBIG符号化器161、符号バッファ162を初期
状態にリセットする。続いて、各限定色領域の符号化を
行う。画素クロックによって端子140、141、14
2から入力された限定色領域のカラー多値画像データの
画素データは、各色に対応するラッチ145、146、
147に格納される。同時に、輝度変換器143にも入
力され、(1)式に従って輝度画像データに変換され
る。得られた輝度画像データは2値化器144で2値化
される。この2値画像データが「1」のとき、ラッチ1
45、146、147の画素データが加算器148、1
49、150に入力され、ラッチ151、152、15
3の内容と加算され、再度、ラッチ151、152、1
53に格納される。2値画像データはカウンタ154に
入力され、2値画像データが「1」であれば、その内容
を1インクリメントする。更に、2値画像データはJB
IG符号化器161で符号化され、符号化結果は符号バ
ッファ162に格納される。
【0037】処理する限定色領域内のすべての画素デー
タについて2値化器144での2値化、加算器148、
149、150での加算、カウンタ154でのカウン
ト、JBIG符号化器161でのJBIG符号化が終了
したら、CPU111は除算器155、156、157
で、ラッチ151、152、153の内容をカウンタ1
54の内容で除算する。そして、その結果を端子15
8、159、160から出力する。これらは文字や線画
の色を表す情報であり、量子化係数決定部106に入力
されると同時にセレクタ109を介して送信部110か
ら送信される。続いて、符号バッファ162の内容が端
子163から出力され、量子化係数決定部106に入力
されると同時にセレクタ109を介して送信部110か
ら送信される。符号バッファ162の内容をすべて送信
し終わったら、CPU111は次の限定色領域の処理を
行う。そして、上述の処理をすべての限定色領域に対し
行われるまで繰り返し行う。
【0038】次に、量子化係数決定部106の詳細な構
成について、図4を用いて説明する。図4は本発明に係
参考例1の量子化係数決定部の詳細な構成を示すブロ
ック図である。図4において、180は端子であり、符
号長指定部105から目標符号長LTを入力する。18
1は端子であり、領域分割部102の領域情報メモリ1
25から領域情報とこれ適合した符号の符号長を入力す
る。182は端子であり、限定領域符号化部104の符
号バッファ162に格納された符号の符号長と、端子1
58、159、160から出力された平均値を表す符号
の符号長を入力する。183は端子であり、符号バッフ
ァ108に格納された符号の符号長を入力する。184
は符号長カウンタであり、送信された符号の総符号長を
カウントする。また、符号長カウンタ184は、すべて
の処理が開始する前にCPU111の指示で0にリセッ
トされる。185は符号長算出器であり、連続階調領域
に割り当てられた符号長(連続階調領域目標符号長)を
算出する。186は量子化係数算出器であり、連続階調
領域目標符号長に適合するように量子化係数を算出す
る。187は端子であり、量子化係数算出器186で算
出された量子化係数を連続階調領域符号化部107に出
力する。
【0039】次に、量子化係数決定部106の動作につ
いて説明する。まず、符号長カウンタ184の内容をC
Tとする。領域情報メモリ125に格納された領域情報
を送信部110を介して送出する際に送出されたデータ
量を端子181を介して入力し、符号長カウンタ184
の内容CTに加算する。続いて、限定色領域のJBIG
符号化が行われる毎に、端子182を介して符号バッフ
ァ162に格納された符号の符号長と、端子158、1
59、160から出力された平均値を表す符号の符号長
を入力し、符号長カウンタ184の内容CTに加算す
る。
【0040】すべての限定色領域のJBIG符号化と、
それによって得られる符号の符号長の送出が終了した
ら、CPU111は符号長算出器185を動作させる。
符号長算出器185は最初に領域情報メモリ125に格
納されている領域情報を読み出し、その中から連続階調
領域の領域情報のサイズからすべての連続階調領域に含
まれる画素データ総数Pを求める。目標符号長LTと符
号長カウンタ184の内容CTから、(2)式で表され
る連続階調領域の画素データ当たりの符号長BRTを求
める。
【0041】 BRT=(LTーCT)/P …(2) 画素データ当たりの符号長BRTが求められたら、CP
U111はセレクタ103、109の入出力に連続階調
領域符号化部107、符号バッファ108を選択する。
続いて、領域情報メモリ125に格納されている領域情
報を順に読み出す。そして、領域情報に従って該当する
カラー多値画像データをフレームメモリ101から画素
データ毎に読み出し、連続階調領域符号化部107でJ
PEG符号化を行う。
【0042】以下、各連続階調領域の符号化を行う。各
連続階調領域のJPEG符号化に先立ち、CPU111
は連続階調領域符号化部107、符号バッファ108を
初期化する。量子化係数算出器186のスケール係数Q
としてデフォルト値をセットする。スケール係数Qと基
本の量子化マトリクスを乗算し、各係数の量子化係数を
決定する。決定された量子化係数は、端子187を介し
て連続階調領域符号化器107に入力される。同時に処
理する領域の画像サイズ(x,y)を読み込み、(3)
式に従って処理する領域に割り当てられる符号長Ctmを
求める。
【0043】Ctm=BRT×x×y …(3) 続いて、CPU111はフレームメモリ101から連続
階調領域に含まれる画素データの値を読み込み、入力さ
れた量子化係数に基づいて連続階調領域符号化部107
でJPEG符号化する。符号化結果は符号バッファ10
8に格納される。連続階調領域内のすべての画素データ
のJPEG符号化が終了したら、符号バッファ108に
格納された符号の符号長Cmを量子化決定部106の端
子183を介して量子化係数算出器186に入力する。
【0044】このとき、量子化係数算出器186は符号
長Cmが符号長Ctmよりも小さければ、スケール係数Q
を1小さく設定し、基本の量子化マトリクスに乗算し、
各係数の量子化係数を決定し、再度、連続階調領域符号
化部107に入力する。更に、符号バッファ108をク
リアする。そして、フレームメモリ101から連続階調
領域に含まれる画素データの値を読み込み、連続階調領
域符号化部107でJPEG符号化する。そして、符号
長Cmが符号長Ctmよりも大きくなるまで、スケール係
数Qを1小さく設定し、JPEG符号化を繰り返す。符
号長Cmが符号長Ctmよりも大きくなったときに、スケ
ール係数Qを1大きく設定し、再度、フレームメモリ1
01から連続階調領域に含まれる画素データの値を読み
込み、連続階調領域符号化部107でJPEG符号化す
る。そして、符号バッファ108に符号を格納し、その
内容である符号長Cmをセレクタ109を介して送信部
110から送出する。
【0045】一方、量子化係数算出器186は符号長C
mが符号長Ctmよりも大きければ、スケール係数Qを1
大きく設定し、基本の量子化マトリクスに乗算し、各係
数の量子化係数を決定し、再度、連続階調領域符号化部
107に入力する。更に、符号バッファ108をクリア
する。そして、フレームメモリ101から連続階調領域
に含まれる画素データの値を読み込み、連続階調領域符
号化部107でJPEG符号化する。そして、符号長C
mが符号長Ctmよりも小さくなるまで、スケール係数Q
を1大きく設定し、JPEG符号化を繰り返す。符号長
Cmが符号長Ctmよりも小さくなったときに、スケール
係数Qを1小さく設定し、再度、フレームメモリ101
から連続階調領域に含まれる画素データの値を読み込
み、連続階調領域符号化部107でJPEG符号化す
る。そして、符号バッファ108に符号を格納し、その
内容である符号長Cmをセレクタ109を介して送信部
110から送出する。
【0046】すべての連続階調領域についてJPEG符
号化が終了し、得られた符号を送信部110より送信し
終えたらすべての動作を終了する。次に、参考例1で実
行される処理の概要について、図5を用いて説明する。
図5は本発明に係る参考例1で実行される処理の処理フ
ローを示すフローチャートである。
【0047】まず、画像入力装置100でカラー多値画
像を読み取り、読み取られたカラー多値画像データをフ
レームメモリ101に格納する。また、符号長指定部1
05で所望の目標符号長LTを入力する(ステップS1
01)。フレームメモリ101に格納されたカラー画像
データを読み出し、領域分割部102で領域分割を行う
(ステップS102)。領域分割された領域の内、限定
色領域を限定色領域符号化部104でJBIG符号化す
る。また、JBIG符号化された符号はセレクタ109
を介して送信部110から送出される(ステップS10
3)。量子化係数決定部106において、符号長カウン
タ164から得られる符号長CTと目標符号長LTに基づ
いて、連続階調領域の画素データ当たりの符号長BRT
を算出する(ステップS104)。
【0048】連続階調領域に割り当てられる符号長Ctm
を算出する(ステップS105)。連続階調領域を連続
階調領域符号化部107でJPEG符号化する(ステッ
プS106)。連続階調領域を符号化して得られる符号
長Cmと符号長Ctmを比較する(ステップS107)。
符号長Cmが符号長Ctmより小さい場合、符号長Cmが符
号長Ctmより大きくなるまで、スケール係数Qを1ずつ
デクリメントしJPEG符号化を行う(ステップS10
8)。また、符号長Cmが符号長Ctmより大きい場合、
符号長Cmが符号長Ctmより小さくなるまで、スケール
係数Qを1ずつインクリメントしJPEG符号化を行う
(ステップS109)。符号長Cmと符号長Ctmが等し
くなったら、そのときの符号長Cmをセレクタ109を
介して送信部110から送出する(ステップS11
0)。
【0049】尚、参考例1では、画像入力装置100か
ら入力する画像をカラー多値画像として説明を行った
が、もちろんこれに限定されず、白黒多値画像であって
も構わない。また、画像データを符号化する符号化方式
もこれに限定されない。また、メモリ構成等もこれに限
定されず、複数ライン毎の処理であっても構わない。ま
た、JPEG符号化で符号長の調整のためにスケール係
数Qを1ずつ変化させたが、もちろんこれに限定され
ず、符号長とスケール変数Qから新たなスケール変数Q
を予測するような方法を用いても構わない。
【0050】以上説明したように、参考例1によれば、
カラー多値画像データに対して、連続階調領域の各画素
データが符号長算出器185で算出される連続階調領域
の画素データ当たりの符号長よりも常に小さい符号長で
符号化がなされるのでユーザが所望する目標符号長LT
となる符号を得ることができる。また、量子化係数決定
部106の構成をラッチやわずかな四則演算回路で実現
できるので、回路規模を小さくすることができる。
【0051】<参考例2> 図6は本発明に係る参考例2の画像処理装置の構成を示
すブロック図である。図6において、参考例1と同じ番
号を付与したものについては同じ機能を有するので説明
は省略する。また、限定色領域に用いられている色は黒
色であるとして説明を行う。200は画像を入力する画
像入力装置であり、スキャナ等で構成される。ここでは
入力画像を白黒多値画像とし、1画素あたり8ビットの
精度を持つものとして説明を行う。201は領域分割部
であり、参考例1の図2の領域分割器122、バッファ
123、領域情報整形器124、領域情報メモリ125
で構成され、上述の特願平6ー167748号に記載さ
れている領域分割を用いるとする。領域分割部201
は、領域を切り出し、画像データを領域に分割し、領域
ごとにその内容を表わす属性を検出し、限定色領域の領
域情報と連続階調領域の領域情報に分類して、内蔵する
領域情報メモリ125に領域の位置、サイズ、属性を格
納する。
【0052】202は2値化器であり、白黒多値画像デ
ータの画素データと閾値を比較し2値化する。203は
フレームメモリであり、2値化器202から出力される
2値画像データを格納する。204は限定色領域符号化
部であり、限定色領域の符号化を行う。ここでは、符号
化方式としてファクシミリ等で用いられるMMR符号化
を例にとって説明を行う。205は符号化選択部であ
り、連続階調領域の符号化方式を選択する。206は連
続階調領域符号化部であり、連続階調領域の符号化を行
う。ここでは、符号化方式としてベクトル符号化を例に
とって説明を行う。また、参考例2で用いるベクトル符
号化では、画像データを4×4のブロックに分割し、ブ
ロック単位で直交変換を施す。そして、各係数を量子化
した後に平均値を表す直流成分を除く残りの係数を15
次元のベクトルとし、予め決定されているコードブック
に格納されているベクトルと比較し、最も近いものを選
択する。また、直流成分はMビットに量子化され、直流
成分と選択されたベクトルの番号を符号として出力す
る。更に、ブロックあたりの符号長として、直流成分を
M=6ビットに量子化することとし、ベクトル量子化は
10ビット、9ビット、8ビット、7ビットが選択でき
ることとする。207はセレクタであり、領域分割部2
03の出力によって入力先を選択する。
【0053】次に、参考例2の画像処理装置の各構成要
素の詳細とその動作について順番に説明していく。ま
ず、処理に先立ち、CPU111はフレームメモリ20
3の内容を0にクリアする。更に、ユーザ(不図示)の
指示に従って画像入力装置200から白黒多値画像を読
み込む。読み込まれた白黒多値画像データは、領域分割
部201で領域分割される。また、読み込まれた白黒多
値画像データは、2値化器202で閾値と比較され2値
化される。そして、入力値が閾値よりも大きければ、即
ち、白に近ければ「0」を、閾値よりも小さければ、即
ち、黒に近ければ「1」を出力する。この2値化結果は
フレームメモリ203に格納される。
【0054】1画面分の2値画像データがフレームメモ
リ203に格納されたら、領域分割部201では、入力
された白黒多値画像データが領域分割器122に入力さ
れ、バッファ123にその結果が格納される。領域情報
整形器124は、バッファ123に格納された限定色領
域の領域情報と連続階調領域の領域情報に分類して、領
域情報メモリ125に先頭から限定色領域の領域情報
を、続けて連続階調領域の領域情報を格納する。
【0055】領域情報メモリ125にすべての領域情報
が格納されたら、CPU111を送信部110を動作さ
せ、通信に必要な手順を行い、データ転送に備える。続
いて、CPU111は領域情報メモリ125に格納され
た領域情報を順に読み出し、送信部110を介して送出
する。CPU111は、セレクタ207の入力に限定色
領域符号化部204を選択する。続いて、領域情報メモ
リ125に格納されている領域情報を順に読み出し、領
域情報に従って該当する2値画像データをフレームメモ
リ203から画素データ毎に読み出し、限定色領域符号
化部204で処理を行う。
【0056】ここで、限定色領域符号化部204の詳細
な構成について、図7を用いて説明する。図7は本発明
に係る参考例2の限定色領域符号化部の詳細な構成を示
すブロック図である。図7において、220は端子であ
り、領域情報メモリ125から連続階調領域のすべての
位置と大きさを読み込む。221は端子であり、フレー
ムメモリ203から2値画像データを画素クロックに従
って画素データ毎に読み込む。222はアドレス比較器
であり、読み込んだ画素データの位置と連続階調領域の
位置とを比較し出力画素データ値を決定する。223は
MMR符号化器であり、入力された2値画像データをM
MR符号化する。224は端子であり、得られた符号を
出力する。
【0057】次に、限定色領域符号化部204の動作に
ついて説明する。CPU111は処理に先立ち、アドレ
ス比較器222とMMR符号化器223を初期化する。
続いて、アドレス比較器222に端子220を介して、
領域情報メモリ125から連続階調領域のすべての位置
と大きさを、アドレス比較器222に読み込む。その
後、画素クロックに従ってフレームメモリ203から2
値画像データの画素データを順に読み込む。アドレス比
較器222は読み込んだ画素データが連続階調領域の外
であれば入力をそのまま出力する。読み込んだ画素デー
タが連続階調領域に含まれるものであれば「0」を出力
する。アドレス比較器222の出力はMMR符号化器2
23でMMR符号化された符号は、符号化選択部205
と、セレクタ207を介して送信部110に入力され
る。送信部110は得られた符号を送出する。
【0058】次に、符号化選択部205の詳細な構成に
ついて、図8を用いて説明する。図8は本発明に係る
考例2の符号化選択部の詳細な構成を示すブロック図で
ある。図8において、240は端子であり、符号長指定
部105から目標符号長LTを入力する。241は端子
であり、領域分割部201の領域情報メモリ125から
領域情報を入力する。242は端子であり、限定色領域
符号化部204から出力された符号を入力する。243
は符号長カウンタであり、送信された符号の総符号長を
カウントする。ここで、符号長カウンタ243の内容を
CTとする。244は符号長算出器であり、連続階調領
域目標符号長を算出する。245はコードブック選択器
であり、連続階調領域目標符号長に適合するようにベク
トル符号化のコードブックを切り換えるためのコードブ
ック選択符号を生成する。246は端子であり、コード
ブック選択器245で生成されたコードブック選択符号
を連続階調領域符号化部206に出力する。
【0059】次に、符号化選択部205の動作について
説明する。CPU111は領域情報メモリ125に格納
された領域情報を送信部110を介して送出する際に、
送出されたデータ量を端子241を介して符号長カウン
タ243に入力する。符号長カウンタ243はデータ量
をカウントし、その値をCTとして格納する。MMR符
号化が行われた後に、端子242を介して得られた符号
の符号長をカウントしCTに加算する。更に、コードブ
ック選択符号に要する符号長もCTに加算する。
【0060】コードブック選択符号に要する符号長がC
Tに加算されたら、CPU111は符号長算出器244
を動作させる。符号長算出器244は、最初に、領域情
報メモリ125に格納されている領域情報を読み出し、
その中から連続階調領域の領域情報のサイズから各連続
階調領域に含まれるブロック数を求め、その総和BTを
求める。端子240から入力される目標符号長LTと符
号長カウンタ243の内容CTから、連続階調領域のブ
ロック当たりの符号長BRTは(4)式で表される。
【0061】 BRT=(LT−CT)/BT …(4) このブロック当たりの符号長BRTに基づいて、コード
ブック選択器245はコードブック選択符号を生成し、
端子246から出力する。コードブック選択符号の決定
については後述する。コードブック選択符号が決定され
たら、CPU111はコードブック選択符号を送信部1
10を介して送出する。続いて、CPU111はセレク
タ207を連続階調符号化器206からの入力に切り換
える。その後、再度、画像入力装置200を動作させ、
白黒多値画像を読み込む。読み込まれた白黒多値画像デ
ータは連続階調領域符号化部206に入力される。
【0062】次に、連続階調領域符号化部206の詳細
な構成について、図9を用いて説明する。図9は本発明
に係る参考例2の連続階調領域符号化部の詳細な構成を
示すブロック図である。図9において、260は端子で
あり、図8の端子246を介してコードブック選択符号
を入力する。261は端子であり、白黒多値画像データ
を入力する。262はブロック生成器であり、白黒多値
画像データから4×4のブロックを生成する。263は
直交変換器であり、4×4ブロックに対して直交変換で
あるアダマール変換を施す。264は量子化器であり、
直交変換器263で得られた直交変換係数のそれぞれを
量子化する。265、266、267、268はコード
ブックメモリである。コードブックメモリ265には1
024個(10ビット)のベクトルが格納されている。
コードブックメモリ266には512個(9ビット)の
ベクトルが格納されている。コードブックメモリ267
には256個(8ビット)のベクトルが格納されてい
る。コードブックメモリ268には128個(7ビッ
ト)のベクトルが格納されている。
【0063】尚、コードブックは、一般的にLBG法を
用いて決定する。所望するベクトルの数Nの初期値を与
え、母集団で各初期値に近いベクトルを集め、N個の群
を集める。群の中で重心を求め、更に、重心を初期値と
して再度母集団からN個の群を求め直す。重心の計算と
N個の群を求め直す。重心の計算とN個の群を求める作
業を繰り返し、初期値と求めた重心との距離の平均値が
閾値以下になったとき、それぞれの重心を表すベクトル
が所望するベクトルである。これにより、同じ母集団か
ら異なる数のベクトルからなるコードブックを作成でき
る。
【0064】269はセレクタであり、コードブック選
択符号に従って入力を選択する。270はコードブック
比較器であり、量子化器264から入力された各量子化
結果からベクトルを生成し、セレクタ269から入力さ
れるコードブックのベクトルの中から最も類似したベク
トルを選択し、選択されたベクトルの番号を符号として
出力する。271は端子であり、コードブック比較器2
70の比較結果を出力する。
【0065】次に、連続階調領域符号化部206に動作
について説明する。まず、画像入力装置200が動作
し、白黒多値画像データを読み込む。読み込まれた白黒
多値画像データの画素データが連続階調領域に含まれる
場合、その画素データは連続階調領域符号化部206に
入力される。連続階調領域符号化部206に入力された
画素データはブロック生成器262に入力される。ブロ
ック生成器262は白黒多値画像データから画像上で隣
接する画素毎に、4×4のブロックを生成する。生成さ
れた4×4ブロックは順に直行変換器263に入力さ
れ、アダマール変換を施され4×4の直行変換係数を得
る。
【0066】図8のコードブック選択器245はブロッ
ク当たりの符号長BRTとMから(BRTーM)を求め
る。もし、(BRTーM)<7であれば、 M=BRT−7 …(5) と定義し直し、コードブック選択符号を3とする。この
ときのMが再定義されたことを示す符号とMの値を符号
としてセレクタ207を介して送信部110から送出す
る。コードブック選択器245は、10≦(BRTー
M)であれば、コードブック選択符号を0とする。9≦
(BRTーM)<10であれば、コードブック選択符号
を1とする。8≦(BRTーM)<9であれば、コード
ブック選択符号を2とする。(BRTーM)<8であれ
ば、コードブック選択符号を3とする。
【0067】セレクタ269は端子260から入力され
たコードブック選択符号が0であればコードブックメモ
リ265を、1であればコードブックメモリ266を、
2であればコードブックメモリ267を、3であればコ
ードブックメモリ268を選択してコードブック比較器
270に入力する。直交変換器263で得られた16個
の変換係数は量子化器264でそれぞれ量子化される。
得られた16個の量子化結果のうち、直流成分は上位ビ
ットからMビットを選択し、符号として端子271から
出力される。残りの15個の量子化結果はコードブック
比較器270に入力される。入力された15個の各量子
化結果からベクトルを生成し、セレクタ269から入力
されるコードブックのベクトルの中から最も類似したベ
クトルを選択し、選択されたベクトルの番号を符号とし
て端子271から出力する。
【0068】画像入力装置200での白黒多値画像の読
み込みと白黒多値画像データのすべての画素データの符
号化が終了し符号が送出されたら、すべての動作を終了
する。尚、参考例2では、図6の連続階調領域符号化部
206を図9のように構成したが、図10のような構成
でも構わない。図10で図9と同じ番号を付与したもの
については同じ機能を有するので説明は省略する。この
場合、280はベクトル符号変換器であり、コードブッ
ク変換器270から入力されたベクトル量子化結果の符
号を所望する符号長に縮退する。
【0069】コードブックメモリ265は1024個の
ベクトルを持ち、コードブック比較器270は量子化器
264から15個の量子化結果を入力し、これらとコー
ドブックのベクトルと比較し、10ビットの符号を生成
する。ベクトル符号変換器280は、コードブックメモ
リ265の1024個のベクトルのそれぞれが、コード
ブックメモリ266の512個のいずれかのベクトルに
最も近いかを求めておき、その対応表を作っておく。同
様に、コードブックメモリ267の256個のベクト
ル、コードブックメモリ268の128個のベクトルに
ついても同様な対応表を作っておく。ベクトル符号変換
器280は端子260から入力されたコードブック選択
符号が0であれば、入力された符号をそのまま出力す
る。コードブック選択符号が1であれば、1024個の
ベクトルのそれぞれが、コードブックメモリ266の5
12個のベクトルに関する対応表に従って、9ビットの
符号に置き換え出力する。コードブック選択符号が2で
あれば、コードブックメモリ267の256個のベクト
ルに関する対応表、3であれば、コードブックメモリ2
68の128個のベクトルに関する対応表を用いる。こ
のような構成にすることで、複数のコードブックメモリ
を持たなくても済み、少量のメモリ容量で実現できる。
【0070】次に、参考例2で実行される処理の概要に
ついて、図11を用いて説明する。図11は本発明に係
参考例2で実行される処理の処理フローを示すフロー
チャートである。まず、画像入力装置200で白黒画像
を読み取る。また、符号長指定部105で所望の目標符
号長LTを入力する(ステップS201)。入力された
白黒多値画像データを領域分割部201で領域分割を行
う。また、2値化器202で2値化し、その2値化結果
はフレームメモリ203に格納する(ステップS20
2)。領域分割された領域の内、限定色領域に該当する
フレームメモリ203に格納されている2値画像データ
を限定色領域符号化部204でMMR符号化する。ま
た、MMR符号化された符号はセレクタ109を介して
送信部110から送出される(ステップS203)。符
号化選択部205において、符号長カウンタ243から
得られる符号長CTと目標符号長LTに基づいて、連続階
調領域の画素当たりの符号長BRTを算出する(ステッ
プS204)。コードブック選択器245において、符
号長BRTに基づいてコードブック選択符号を算出する
(ステップS205)。
【0071】連続階調領域を連続階調領域符号化部20
6でベクトル符号化する(ステップS206)。ベクト
ル符号化で得られた16個の量子化結果のうち、直流成
分は上位ビットからMビットを選択し符号としてセレク
タ207を介して送信部110から出力する(ステップ
S207)。また、残りの15個の量子化結果に対して
は、それぞれベクトルを生成し、コードブック選択符号
に従うコードブックメモリから類似するベクトルを選択
し符号としてセレクタ207を介して送信部110から
送出する(ステップS208)。
【0072】尚、参考例2では、画像入力装置200か
ら入力する画像を白黒多値画像として説明を行ったが、
もちろんこれに限定されず、カラー多値画像であっても
構わない。また、画像データを符号化する符号化方式も
これに限定されない。また、メモリ構成等もこれに限定
されず、複数ライン毎の処理であっても構わない。以上
説明したように、参考例2によれば、白黒多値画像デー
タに対して、連続階調領域で符号長を調整して符号化が
なされるのでユーザが所望する符号長の符号を得ること
ができる。
【0073】<参考例3> 図12は本発明に係る参考例3の画像処理装置の構成を
示すブロック図である。図12において、400は画像
を入力する画像入力装置であり、カラースキャナで構成
され、各色8ビットのカラー多値画像を入力する。40
1はCPUであり、プログラムによって動作し各構成要
素の制御を行う。402はメモリであり、そのプログラ
ムを格納し動作に必要なメモリを確保する。403は端
末であり、ユーザが指示を入力する。404は記憶装置
であり、磁気ディスク等で構成され、大容量の記憶が可
能である。405は送信器であり、通信プロトコルに合
わせて符号化データを送信する。406はバスであり、
これらの各構成要素を接続し、画像データを初めとする
データや制御信号をやり取りする。
【0074】以下、ユーザが原稿を読み込み、領域分割
を行い、符号化して送信器405から送出する例を、図
13から図16のフローチャートに従って説明する。ま
た、説明を容易にするために、限定色領域を符号化する
符号化方式としてJBIG符号化を、連続階調領域を符
号化する符号化方式としてJPEG符号化を用いる。図
13〜図16は本発明に係る参考例3で実行される処理
の処理フローを示すフローチャートである。
【0075】ユーザは画像入力装置400に原稿を置
き、端末403から所望する総符号長LTを入力する
(ステップS01)。その後、CPU401は画像処理
装置を起動する。CPU401は画像入力装置400か
らカラー多値画像を読み込み、メモリ402に格納する
(ステップS02)。CPU401は、メモリ402に
格納されたカラー多値画像データを輝度信号に変換し、
その値を閾値と比較して2値画像データを生成し、メモ
リ402に格納する(ステップS03)。このとき、輝
度信号が閾値よりも小さければ、即ち、黒に近ければ
「1」を、輝度信号が閾値よりも大きければ、即ち、白
に近ければ「0」とする。生成された2値画像データ
を、上述の特願平6ー167748号に記載されている
領域分割を行う。これにより、領域を切り出し、画像デ
ータを領域に分割し、領域ごとにその内容を表わす属性
を検出し、限定色領域の領域情報と連続階調領域の領域
情報に分類して、メモリ402に領域の位置、サイズ、
属性を格納する(ステップS04)。このとき、抽出さ
れた限定色領域の数をNb、連続階調領域の数をNmとす
る。
【0076】続いて、CPU401に構成される不図示
の符号長カウンタCTを0にリセットする(ステップS
05)。続いて、領域分離結果を送信器405からメモ
リ402の領域情報を送信する(ステップS06)。こ
のとき、送信された領域情報のデータ量をCAとする。
そして、符号長カウンタCTにCAを代入する(ステップ
S07)。
【0077】以下、各限定色領域にJBIG符号化を行
う。最初に、CPU401に構成される不図示の領域カ
ウンタiに0をセットする(ステップS08)。続い
て、i番目の限定色領域で領域内の2値画像データとカ
ラー多値画像データを参照して、2値画像データの画素
値が「1」である全画素データのカラー多値画像データ
の平均値mbを求める(ステップS10)。i番目の限
定色領域の領域内の2値画像データをJBIG符号化
し、平均値mbと共に送信器405から送信する(ステ
ップS11)。このときの平均値mbのデータ量とJB
IG符号化の符号長の和をLaとする。そして、符号長
カウンタCTに符号長の和Laを加算する(ステップS1
2)。次に、領域カウンタiを1インクリメントする
(ステップS13)。
【0078】領域カウンタiがNbと等しくなければ、
ステップS10からステップS13を繰り返す(ステッ
プS09)。領域カウンタiがNbと等しくなり、すべ
ての限定色領域のJBIG符号化と送出を終えたら(ス
テップS09)、連続階調領域の目標符号長Lmtを
(6)式に従って算出する(ステップS14)。
【0079】Lmt=LT−CT …(6) 以下、各連続階調領域にJPEG符号化を行う。最初
に、領域カウンタiに0をセットする(ステップS1
5)。メモリ402に格納されている未だにJPEG符
号化されていない領域(i番目以降の連続階調領域)の
領域情報を読み出し、そのサイズからこれらの領域に含
まれる画素の数Pを算出する(ステップS17)。更
に、i番目の連続階調領域の目標ビットレートBRを
(7)式に従って算出する(ステップS18)。
【0080】BR=Lmt/P …(7) 続いて、スケール変数Qにデフォルト値をセットし、量
子化係数を求める(ステップS17)。続いて、求めた
量子化係数を用いてi番目の連続階調領域をJPEG符
号化し、その結果をメモリ402に格納する(ステップ
S20)。メモリ402に格納されたJPEG符号の符
号長Cmと領域内の画素数から、画素当たりの符号長を
求め、ビットレート変数br’を求める(ステップS2
1)。
【0081】もし、ビットレート変数br’が目標ビッ
トレートBRと等しければ(ステップS22)、メモリ
402に格納されたJPEG符号を送信器405から送
出し、メモリ402のJPEG符号領域をクリアする
(ステップS37)。その後、領域カウンタiを1イン
クリメントする(ステップS38)。更に、連続階調領
域の目標符号長Lmtを(8)式に従って更新し、次の連
続階調領域の処理を行う(ステップS39)。
【0082】Lmt=Lmt−Cm …(8) もし、ビットレート変数br’が目標ビットレートBR
より大きければ(ステップS23)、スケール変数Qを
1インクリメントする(ステップS33)。メモリ40
2のJPEG符号領域をクリアし、i番目の連続階調領
域を、再度スケール変数Qを用いてJPEG符号化し、
その結果をメモリ402に格納する(ステップS3
4)。
【0083】メモリ402に格納されたJPEG符号の
符号長Cmと連続階調領域内の画素数から、画素当たり
の符号長を求め、ビットレート変数brを求める(ステ
ップS35)。もし、ビットレート変数brが目標ビッ
トレートBR以下であれば(ステップS36)、メモリ
402に格納されたJPEG符号を送信器405から送
出し、メモリ402のJPEG符号領域をクリアする
(ステップS37)。その後、領域カウンタiを1イン
クリメントする(ステップS38)。更に、連続階調領
域の目標符号長Lmtを(8)式に従って更新し、次の連
続階調領域の処理を行う(ステップS39)。
【0084】一方、ビットレート変数brが目標ビット
レートBRより大きければ(ステップS36)、ステッ
プS23に進み、ステップS23で、更に、スケール変
数Qを1インクリメントして繰り返し処理をする。も
し、ビットレート変数br’が目標ビットレートBRよ
り小さければ(ステップS23)、スケール変数Qを1
デクリメントする(ステップS24)。メモリ402の
JPEG符号領域をクリアし、i番目の連続階調領域を
再度スケール変数Qを用いて量子化係数を求め、求めた
量子化係数でJPEG符号化し、その結果をメモリ40
2に格納する(ステップS25)。メモリ402に格納
されたJPEG符号の符号長Cmと連続階調領域内の画
素数から、画素当たりの符号長を求め、ビットレート変
数brを求める(ステップS26)。もし、ビットレー
ト変数brが目標ビットレートBRより大きければ(ス
テップS27)、メモリ402のJPEG符号領域をク
リアし、i番目の連続階調領域を再度、スケール変数
(Q+1)を用いてJPEG符号化し、その結果を送信
器405から送出する(ステップS28)。このときの
符号長をCmに代入する。その後、領域カウンタiを1
インクリメントする(ステップS29)。更に、連続階
調領域の目標符号長Lmtを(8)式に従って更新し、次
に連続階調領域の処理を行う(ステップS39)。
【0085】一方、ビットレート変数brが目標ビット
レートBRと等しければ(ステップS30)、メモリ4
02に格納されたJPEG符号を送信器405から送出
し、メモリ402のJPEG符号領域をクリアする(ス
テップS31)。その後、領域カウンタiを1インクリ
メントする(ステップS32)。更に、連続階調領域の
目標符号長Lmtを(8)式に従って更新し、次の連続階
調領域の処理を行う(ステップS39)。
【0086】ビットレート変数brが目標ビットレート
BRと等しくなければ(ステップS30)、ステップS
23に進み、ステップS24で、更に、スケール変数Q
を1デクリメントして繰り返し処理をする。以上のステ
ップS22〜ステップS39の処理を繰り返し、領域カ
ウンタkがNmとなったら(ステップS16)、JPE
G符号化の処理を終了する。
【0087】尚、参考例3では、画像入力装置400か
ら入力する画像をカラー多値画像として説明を行った
が、もちろんこれに限定されず、白黒多値画像であって
も構わない。また、画像データを符号化する符号化方式
もこれに限定されない。また、メモリ構成等もこれに限
定されず、複数ライン毎の処理であっても構わない。以
上説明したように、参考例3によれば、カラー多値画像
データに対して、特定のハードウェアを用意しなくても
コンピュータプログラムのようなソフトウェアでも、ユ
ーザが所望する符号長の符号を得ることができる。ま
た、連続階調領域の符号化において、符号化毎に連続階
調領域の目標符号長Lmtを更新するため、所望する符号
長に限りなく近づける効果がある。
【0088】また、得られた符号を送信器405から送
出したが、メモリ402に格納することもできる。この
とき、メモリ402には決まった画面数の画像データを
格納することができるので、光磁気ディスク等の交換で
きるメディアで画像を保管する場合に管理が容易になる
効果が得られる。 <実施形態> 図17は本発明に係る実施形態の画像処理装置の構成を
示すブロック図である。尚、参考例1〜3と同じ番号を
付与した構成要素については、同じ機能を有するので説
明は省略する。図17において、103はセレクタであ
り、CPU1115の指示によって出力先を選択する。
1105は符号バッファであり、限定色領域符号化部1
04で生成された符号を格納する。1106は符号長指
定部であり、ユーザ(不図示)が所望する符号長(目標
符号長)を入力する。
【0089】1108は連続階調領域符号化部であり、
連続階調領域の符号化を行う。ここでは、説明を簡単に
するために、連続階調領域の符号化としてJPEG符号
化を例にとって説明を行う。尚、JPEG符号化の符号
長の調整は、基本の量子化係数を予め設定し、これに調
整したスケール係数Qを掛けて符号長を調整する1。1
07は量子化係数決定部であり、連続階調領域符号化部
108のJPEG符号化で用いる量子化係数を決定す
る。1109、1110はバッファであり、連続階調領
域符号化部1108で得られた符号を格納する。111
1は標準スケール係数ラッチであり、入力されたカラー
多値画像データ全体をJPEG符号化するときのスケー
ル係数を格納する。
【0090】1112は符号化方式決定部であり、カラ
ー多値画像データ全体を連続階調領域符号化部1108
でJPEG符号化するか、あるいは領域分割部102で
分割された限定色領域を限定色領域符号化部104でJ
BIG符号化し、連続階調領域を連続階調領域符号化部
1108でJPEG符号化を行うか否かを決定する。1
113はセレクタであり、CPU115の指示によって
入力先を選択する。1114は送信部であり、生成され
た各符号を通信回線やLAN、記憶媒体に出力する。1
115はCPUであり、不図示の制御線を介して各構成
要素を制御する。1116はプログラムメモリであり、
画像処理装置の制御に必要なプログラムを格納する。1
117はメモリであり、プログラムメモリ1116に格
納されるプログラムを動作させるのに必要なメモリ領域
を確保する。
【0091】次に、本実施形態の画像処理装置の各構成
要素の詳細とその動作について順番に説明していく。ま
ず、処理に先立ち、CPU1115はフレームメモリ1
01の内容を0にクリアする。続いて、ユーザ(不図
示)は符号長指定部1106から目標符号長LTを入力
する。更に、ユーザの指示に従って画像入力装置100
からカラー多値画像を読み込み、フレームメモリ101
に格納する。
【0092】1画面分のカラー多値画像データがフレー
ムメモリ101に格納されたら、CPU1115は量子
化係数決定部1107を動作させる。ここで、量子化係
数決定部1107の詳細な構成について、図18を用い
て説明する。図18は本発明に係る実施形態の量子化係
数決定部の詳細な構成を示すブロック図である。
【0093】180は端子であり、符号長指定部110
6から目標符号長LTを入力する。181は端子であ
り、図2の領域分割部102の領域情報メモリ125か
ら領域情報とこれに適合した符号の符号長を入力する。
182は端子であり、符号バッファ1105に格納され
た符号の符号長を入力する。183は端子であり、符号
バッファ1109に格納された符号の符号長を入力す
る。1184は画素数カウンタであり、JPEG符号化
する入力されたカラー多値画像データまたは領域分割部
102で分割された領域の内の連続階調領域の画素数を
カウントする。また、画素数カウンタ1184は、すべ
ての処理が開始する前にCPU1115の指示で0にリ
セットされる。
【0094】1185はスケール係数初期値設定器であ
り、JPEG符号化で用いられる量子化テーブルに掛け
るスケール係数Qの初期値Qdを設定する。また、スケ
ール係数初期値設定器1185は、不揮発性のメモリで
構成されたテーブルとメモリの内容を更新する手段から
なる。1186は符号長カウンタであり、求められた符
号の総符号長をカウントする。また、符号長カウンタ1
186は、すべての処理が開始する前にCPU1115
の指示で0にリセットされる。1187は符号長算出器
であり、画素数カウンタ1184の内容と符号長カウン
タ1186の内容から符号化する画像データに割り当て
られる符号長Ctmを求める。1188は符号長比較器で
あり、符号長Ctmと端子183から入力される符号バッ
ファ1109に格納された符号の符号長Cmを比較す
る。1189は、スケール係数算出器であり、スケール
係数Qを更新する。1190は量子化係数算出器であ
り、スケール係数Qを基本の量子化マトリクスに乗算
し、各係数の量子化係数を決定する。
【0095】1191は端子であり、スケール係数算出
器1189で求められたスケール係数Qを標準スケール
係数ラッチ1111に出力する。1192は端子であ
り、量子化係数算出器1190で算出された量子化係数
を連続階調領域符号化部1108に出力する。1193
は端子であり、量子化係数算出器1190に外部からス
ケール変数を入力する。
【0096】次に、量子化係数決定部1107の動作に
ついて説明する。量子化係数決定部1107は最初にカ
ラー多値画像データ全体を符号化する時のスケール係数
Qsを算出する。まず、CPU1115は、処理に先立
ち、画素数カウンタ1184に読み込んだカラー多値画
像データの全画素データ数Pと、入力されたカラー多値
画像データ内に分割された領域が存在しないことを示す
符号の符号長を符号長カウンタ1186の内容CTに加
算する。続いて、符号長算出器1187を動作させる。
目標符号長LTと符号長カウンタ1186の内容CTから
カラー多値値画像データ全体をJPEG符号化したとき
の符号長Ctmは(9)式で表される。
【0097】Ctm=LT−CT …(9) 符号長Ctmが求められたら、CPU1115はスケール
係数初期値設定器1185を起動する。スケール係数初
期値設定器1185は、まず、画素数カウンタ1184
から画素データ数Pを、符号長算出器1187から符号
長Ctmを入力し、画素データ当たりの符号長BRTを
(10)式で求める。
【0098】BRT=Ctm/P …(10) 画素データ当たりの符号長BRTが求められたら、これ
と画素データ数Pを、不揮発性メモリで構成されるテー
ブルのアドレスとしてスケール係数の初期値Qdを読み
出す。次に、CPU1115はセレクタ103の出力と
して連続階調領域符号化部1108を選択し、フレーム
メモリ101からカラー多値画像データを読み出し、連
続階調領域符号化部1108に入力する。連続階調領域
符号化部1108でJPEG符号化を行う。符号化結果
は符号バッファ1109に格納される。このときの符号
長をCmと表わす。連続階調領域内の全画素データのJ
PEG符号化が終了したら、符号バッファ1109に格
納された符号の符号長Cmを量子化係数決定部1107
の端子183を介して符号長比較器1188に入力す
る。
【0099】このとき、符号長比較器1188は符号長
Cmが符号長Ctmよりも小さければ、スケール係数算出
器1189でスケール係数Qを1小さく設定し、量子化
係数算出器1190で基本の量子化マトリクスに乗算
し、各係数の量子化係数を決定する。そして、再度、連
続階調領域符号化部1108に入力し、符号バッファ1
109をクリアする。続いて、フレームメモリ101か
らカラー多値画像データの画素データの値を読み込み、
連続階調領域符号化部1108でJPEG符号化する。
以上、符号長Cmが符号長Ctmよりも大きくなるまで、
スケール係数Qを1小さく設定し、JPEG符号化を繰
り返す。そして、最初に、符号長Cmが符号長Ctmより
も大きくなったときに、スケール係数Qを1大きく設定
し、スケール係数Qを端子1191を介して標準スケー
ル係数ラッチ1111に格納する。
【0100】一方、符号長比較器1188で符号長Cm
が符号長Ctmよりも大きければ、スケール係数算出器1
189でスケール係数Qを1大きく設定し、量子化係数
算出器1190で基本の量子化マトリクスに乗算し、各
係数の量子化係数を決定する。そして、再度、フレーム
メモリ101から画像の画素の値を読み込み、連続階調
符号化部1108でJPEG符号化する。以上、符号長
Cmが符号長Ctmよりも小さくなるまで、スケール係数
算出器1189でスケール係数Qを1大きく設定し、J
PEG符号化を繰り返す。そして、最初に、符号長Cm
が符号長Ctmよりも小さくなったときに、スケール係数
Qを端子1191を介して標準スケール係数ラッチ11
11にQsとして格納する。
【0101】次に、フレームメモリ101からカラー多
値画像データを読み出し、領域分割部102に入力す
る。尚、本実施形態の領域分割部102は、参考例1の
図2の領域分割部102と同様のものを用いるとし、こ
こではその詳細な構成及びその動作の説明を省略する。
【0102】次に、CPU1115はセレクタ103、
1113の入出力に限定色領域符号化部104を選択す
る。続いて、領域情報メモリ125に格納されている領
域情報を端子127から順に読み出す。そして、領域情
報に従って該当するカラー多値画像データをフレームメ
モリ101から画素データ毎に読み出し、限定色領域符
号化部104で処理を行う。
【0103】尚、本実施形態の限定色領域符号化部10
4の詳細な構成は、参考例1の図3の限定色領域符号化
部104と同様のものを用いるとし、ここではその説明
を省略する。次に、限定色領域符号化部104の動作に
ついて説明する。CPU1115は各限定色領域毎の処
理に先立って、ラッチ145〜147、ラッチ151〜
153、カウンタ154の内容を0にリセットする。同
時にJBIG符号化器161、符号バッファ162を初
期状態にリセットする。
【0104】続いて、各限定色領域の符号化を行う。画
素クロックによって端子140、141、142から入
力された限定色領域のカラー多値画像データの画素デー
タは、各色に対応するラッチ145、146、147に
格納される。同時に、輝度変換器143にも入力され、
(1)式に従って輝度画像データに変換される。得られ
た輝度画像データは2値化器144で2値化される。こ
の2値画像データが「1」のとき、ラッチ145、14
6、147の画素データが加算器148、149、15
0に入力され、ラッチ151、152、153の内容と
加算され、再度、ラッチ151、152、153に格納
される。2値画像データはカウンタ154に入力され、
2値画像データが「1」であれば、その内容を1インク
リメントする。更に、2値画像データはJBIG符号化
器161でJBIG符号化され、符号化結果は符号バッ
ファ162に格納される。
【0105】処理する限定色領域内のすべての画素デー
タについて2値化器144での2値化、加算器148、
149、150での加算、カウンタ154でのカウン
ト、JBIG符号化器161でのJBIG符号化が終了
したら、CPU115は除算器155、156、157
で、ラッチ151、152、153の内容をカウンタ1
54の内容で除算する。そして、その結果を端子15
8、159、160から出力する。これらは文字や線画
の色を表す情報であり、処理した領域の符号とともに符
号バッファ162に格納される。そして、限定色領域の
符号化と符号長の加算が終了したら、CPU1115は
次の限定色領域の処理を行う。そして、上述の処理が、
すべての限定色領域に対し行われるまで繰り返し行う。
【0106】そして、すべての限定色領域のJBIG符
号化と符号長の加算が終了したら、CPU1115は連
続階調領域の処理とJPEG符号化を行う。連続階調領
域の符号化を始める前に、量子化係数決定部1107で
は、領域情報メモリ125に格納された領域情報のデー
タ量を端子181を介して入力し、符号長カウンタ11
86の内容CTに加算する。次に、すべての限定色領域
のJBIG符号化後に、各限定色の情報を端子158、
159、160を介して入力し、符号長家運他1186
の内容CTに加算する。更に、符号バッファ162に格
納された符号の符号長を端子182を介して入力し、符
号長カウンタ1186の内容CTに加算する。続いて、
画素数カウンタ184は、領域情報メモリ125に格納
されている領域情報を読み出し、その中から連続階調領
域の領域情報のサイズからすべての連続階調領域に含ま
れる画素データ数Pを求める。そして、CPU1115
は符号長算出器1187を動作させ、最初に目標符号長
LTと画素数カウンタ1184の画素データ数Pと符号
長カウンタ1186の内容CTから、(11)式で表さ
れる連続階調領域の画素データ当たりの符号長BRTを
求める。
【0107】 BRT=(LT−CT)/P …(11) 画素データ当たりの符号長BRTが求められたら、CP
U1115はセレクタ103、1113の入出力に連続
階調領域符号化部1108、符号バッファ1109を選
択する。続いて、領域情報メモリ125に格納されてい
る領域情報を順に読み出す。そして、領域情報に従って
該当するカラー多値画像データをフレームメモリ101
から画素データ毎に読み出し、連続階調領域符号化部1
108でJPEG符号化を行う。
【0108】以下、各連続階調領域のJPEG符号化を
行う。各連続階調領域のJPEG符号化に先立ち、CP
U1115は連続階調領域符号化部1108、符号バッ
ファ1109、符号バッファ1110を初期化する。続
いて、CPU115は画素数カウンタ184を起動す
る。画素数カウンタ1184は、JPEG符号化する全
ての連続階調領域の領域情報を領域情報メモリ125か
ら読み出し、そのサイズから連続階調領域内の画素デー
タ数Pを計数する。続いて、スケール係数初期値設定器
185を起動し、画素データ当たりの符号長BRTと画
素データ数Pを、不揮発性メモリで構成されるテーブル
のアドレスとしてスケール係数の初期値Qdを読み出
し、スケール係数算出器1189のスケール係数Qにセ
ットする。量子化係数算出器1190のスケール係数Q
と基本の量子化マトリクスを乗算し、各係数の量子化係
数を決定する。決定された量子化係数は、端子1192
を介して連続階調領域符号化器1108に入力される。
同時に処理する連続階調領域の画像サイズ(x,y)を
読み込み、(12)式に従って処理する連続階調領域に
割り当てられる符号長Ctmを求める。
【0109】Ctm=BRT×x×y …(12) 続いて、CPU1115はフレームメモリ101から連
続階調領域に含まれる画素データの値を読み込み、入力
された量子化係数に基づいて連続階調領域符号化部11
08でJPEG符号化する。符号化結果は符号バッファ
1109に格納される。連続階調領域内のすべての画素
データのJPEG符号化が終了したら、符号バッファ1
109に格納された符号の符号長Cmを量子化決定部1
107の端子183を介して符号長比較器1188に入
力する。
【0110】このとき、符号長比較器1188で符号長
Cmと符号長Ctmを比較し、符号長Cmが符号長Ctmより
も小さければ、スケール係数算出器1189でスケール
係数Qを1小さく設定し、量子化係数算出器1190で
基本の量子化マトリクスに乗算し、各係数の量子化係数
を決定する。そして、再度、連続階調領域符号化部11
08に入力する。更に、符号バッファ1109をクリア
する。続いて、フレームメモリ101から連続階調領域
に含まれる画素データの値を読み込み、連続階調領域符
号化部1108でJPEG符号化する。そして、符号長
比較器1188で符号長Cmと符号長Ctmを比較し、符
号長Cmが符号長Ctmよりも大きくなるまで、スケール
係数算出器1189でスケール係数Qを1小さく設定
し、JPEG符号化を繰り返す。そして、最初に、符号
長Cmが符号長Ctmよりも大きくなったときに、スケー
ル係数算出器1189でスケール係数Qに1を加算す
る。このスケール係数Qは、端子1193を介して、符
号化方式決定部1112に入力される。
【0111】符号化方式決定部1112では、このとき
のスケール係数Qと標準スケール係数ラッチ1111で
ラッチされているスケール係数Qsとを比較する。そし
て、もし、スケール係数Qが標準スケール係数ラッチ1
111のスケール係数Qsよりも大きければ、符号化方
式決定部1112は入力されたカラー多値画像データ全
体をJPEG符号化して出力することを決定する。
【0112】入力されたカラー多値画像データ全体をJ
PEG符号化することが決まった場合、符号化方式決定
部1112は領域分割部102に指示して、領域情報メ
モリ125の内容をクリアし分割された領域がないこと
とする。続いて、標準スケール係数ラッチ1111から
スケール係数Qsを読み出し、量子化係数決定部110
7の端子1193から量子化係数算出器1190に入力
する。量子化係数算出器1190では、スケール係数Q
sを基本の量子化マトリクスに乗算し、各係数の量子化
係数を決定する。そして、再度、連続階調領域符号化部
1108に入力する。更に、符号バッファ1109をク
リアする。
【0113】そして、フレームメモリ101からカラー
多値画像データの画素データの値を順に読み込み、連続
階調領域符号化部1108でJPEG符号化する。生成
された符号は符号バッファ1110に格納される。カラ
ー多値画像データ全体のJPEG符号化が終了したら、
CPU1115は送信部1114を動作させ、通信に必
要な手順を行い、データ転送に備える。続いて、カラー
多値画像データ全体をJPEG符号化したこと(符号化
方式決定部1112の出力)と、領域情報メモリ125
の内容と、符号バッファ1110の内容をセレクタ11
13を介して送信部1114から送出する。符号バッフ
ァ1110の内容のすべてを送出したら、CPU111
5は各構成要素をリセットして、処理を終了する。
【0114】一方、スケール係数Qと標準スケール係数
ラッチ1111にラッチされているスケール係数Qsと
を比較し、もし、スケール係数Qが標準スケール係数ラ
ッチ1111のスケール係数Qs以下であれば、符号化
方式決定部1112は連続階調領域毎のJPEG符号化
を続行する。そして、量子化係数算出器1190で、ス
ケール係数Qを基本の量子化マトリクスに乗算し、各係
数の量子化係数を決定する。そして、再度、連続階調領
域符号化部1108に入力する。そして、フレームメモ
リ101からカラー多値画像データの画素データの値を
順に読み込み、連続階調領域符号化部1108でJPE
G符号化し、符号化バッファ1110に符号を前の符号
に続けて格納する。
【0115】また、スケール係数QがQsのときに、符
号長比較器1188で符号長Cmと符号長Ctmを比較し
た結果、量子化係数算出器1190は符号長Cmが符号
長Ctmよりも大きければ、スケール係数算出器1189
はスケール係数Qを1大きく設定する。そして、量子化
係数算出器1190で基本の量子化マトリクスに乗算
し、各係数の量子化係数を決定する。そして、再度、フ
レームメモリ101から連続階調領域に含まれる画素デ
ータの値を読み込み、連続階調領域符号化部1108で
JPEG符号化する。そして、符号長Cmが符号長Ctm
よりも小さくなるまで、スケール係数算出器1189は
スケール係数Qを1大きく設定し、JPEG符号化と符
号化バッファ1108への符号の格納を繰り返す。そし
て、最初に、符号長Cmが符号長Ctmよりも小さくなっ
たときに、符号化バッファ1109の内容を格納し、そ
の内容を符号化バッファ1110に符号を前の符号に続
けて格納する。
【0116】すべての連続階調領域についてJPEG符
号化が終了したら、CPU1115は送信部1114を
動作させ、通信に必要な手順を行い、データ転送に備え
る。続いて、領域ごとに符号化を切り換えたこと(符号
化方式決定部1112の出力)と、領域情報メモリ12
5の内容を、セレクタ1113を介して送信部1114
から送出する。続いて、符号バッファ1105の内容を
セレクタ1113を介して送信部1114から送出す
る。最後に、符号バッファ1110の内容をセレクタ1
113を介して送信部1114から送出する。符号バッ
ファ1110の内容のすべてを送出したら、CPU11
15は各構成要素をリセットして、処理を終了する。
【0117】次に、本実施形態で実行される処理の概要
について、図19を用いて説明する。図19は本発明に
係る実施形態で実行される処理の処理フローを示すフロ
ーチャートである。まず、画像入力装置100でカラー
多値画像を読み取り、読み取られたカラー多値画像デー
タをフレームメモリ101に格納する。また、符号長指
定部1106で所望の目標符号長LTを入力する(ステ
ップS301)。フレームメモリ101に格納された画
像データを読み出し、連続階調領域符号化部1108で
カラー多値画像データ全体を目標符号長LTになるよう
に、量子化係数決定部1107のスケール係数Qを制御
しJPEG符号化する。そして、目標符号長LTとなる
ときのスケール係数QSを標準スケール係数ラッチでラ
ッチする(ステップS302)。フレームメモリ101
に格納されたカラー多値画像データを読み出し、領域分
割部102で領域分割を行う(ステップS303)。領
域分割された領域の内、限定色領域を限定色領域符号化
部104でJBIG符号化する(ステップS304)。
【0118】限定色領域をJBIG符号化して得られる
符号長に基づいて、連続階調領域を連続階調領域符号化
部1107でJPEG符号化し、そのときのスケール係
数Qをラッチする(ステップS305)。スケール係数
Qsとスケール係数Qを比較する(ステップS30
6)。スケール係数QsがスケールQより大きい場合、
カラー多値画像データ全体をJPEG符号化したときの
符号を選択する(ステップS307)。また、スケール
係数Qsがスケール係数Q以下である場合、限定色領域
をJBIG符号化したときの符号と連続階調領域をJP
EG符号化したときの符号を選択する(ステップS30
8)。選択された符号をセレクタ1113を介して送信
部1114から送出する(ステップS309)。
【0119】尚、本実施形態では、画像入力装置100
から入力する画像をカラー多値画像として説明を行った
が、もちろんこれに限定されず、白黒多値画像であって
も構わない。また、画像データを符号化する符号化方式
もこれに限定されない。また、メモリ構成等もこれに限
定されず、複数ライン毎の処理であっても構わない。ま
た、JPEG符号化で符号長の調整のためにスケール係
数Qを1ずつ変化させたが、もちろんこれに限定され
ず、符号長とスケール変数Qから新たなスケール変数Q
を予測するような方法を用いても構わない。
【0120】更に、JBIG符号化とJPEG符号化を
用いたが、これに限定されず、他の符号化方式を用いて
ももちろん構わない。また、符号長を調整するためにス
ケール係数を用いたがこれに限定されず、スケール係数
の調整方式もこれに限定されない。例えば、量子化係数
を個別に変更しても構わないし、スケール係数の予測
や、一定比率で更新するような方法でももちろん構わな
い。
【0121】また、更に、スケール係数初期値設定器1
185はサイズとビットレートをアドレスとして、初期
値を読み出すように説明したが、これに限定されず、サ
イズやビットレートを適当な量子化係数で量子化したも
のをアドレスとしても構わない。また、スケール係数初
期値設定器1185ではその内容の更新で内容に上書き
をしたが、これに限定されず、前の内容との平均をとっ
ても構わないし、それ以前のスケール係数の初期値の履
歴と比較しても構わない。
【0122】以上説明したように、本実施形態によれ
ば、カラー多値画像データに対して、連続階調領域の各
画素データが符号長算出器1185で算出される連続階
調領域の画素データ当たりの符号長よりも常に小さい符
号長で符号化がなされるのでユーザが所望する目標符号
長LTとなる符号を得ることができる。また、処理する
カラー多値画像データのサイズとビットレートからスケ
ール係数の初期値を決定することで、最適なスケール係
数を求めるまでの時間を短縮することができる。
【0123】<参考例4> 図20は本発明に係る参考例4の画像処理装置の構成を
示すブロック図である。図20において、参考例1〜
3、上記実施形態と同じ番号を付与したものについては
同じ機能を有するので説明は省略する。また、限定色領
域に用いられている色は黒色であるとして説明を行う。
【0124】204は領域分割部であり、参考例1の図
2の領域分割器122、バッファ123、領域情報整形
器124、領域情報メモリ125で構成され、上述の特
願平6ー167748号に記載されている領域分割を用
いるとする。領域分割部201は、領域を切り出し、画
像データを領域に分割し、領域ごとにその内容を表わす
属性を検出し、限定色領域の領域情報と連続階調領域の
領域情報に分類して、内蔵する領域情報メモリ125に
領域の位置、サイズ、属性を格納する。1205は限定
色領域符号化部であり、限定色領域の符号化を行う。こ
こでは、符号化方式としてファクシミリ等で用いられる
MMR符号化を例にとって説明を行う。1206は符号
化選択部であり、連続階調領域の符号化方式を選択す
る。
【0125】1207は連続階調領域符号化部であり、
連続階調領域の符号化を行う。ここでは、符号化方式と
してベクトル符号化を例にとって説明を行う。また、
考例4で用いるベクトル符号化では、白黒多値画像デー
タを4×4のブロックに分割し、ブロック単位で直交変
換を施す。そして、各係数を量子化した後に平均値を表
す直流成分を除く残りの係数を15次元のベクトルと
し、予め決定されているコードブックに格納されている
ベクトルと比較し、最も近いものを選択する。また、直
流成分はMビットに量子化され、直流成分と選択された
ベクトルの番号を符号として出力する。更に、ブロック
あたりの符号長として、直流成分をM=6ビットに量子
化することとし、ベクトル量子化は10ビット、9ビッ
ト、8ビット、7ビットが選択できることとする。尚、
参考例4のコードブックは参考例2で説明したLBG法
を用いて決定する。1208は符号バッファであり、限
定色領域符号化部1205の出力を格納する。1209
はセレクタであり、CPU1115の指示によって入力
先を選択する。
【0126】次に、参考例4の画像処理装置の各構成要
素の詳細とその動作について順番に説明していく。ま
ず、処理に先立ち、CPU1115はフレームメモリ2
03の内容を0にクリアする。更に、セレクタ201の
出力に2値化器202を選択する。続いて、ユーザ(不
図示)は符号長指定部1106から目標符号長LTを入
力する。更に、ユーザの指示に従って画像入力装置20
0から白黒多値画像をセレクタ201を介して2値化器
202に読み込む。読み込まれた白黒多値画像データ
は、2値化器202で閾値と比較され2値化される。そ
して、入力値が閾値よりも大きければ、即ち、白に近け
れば「0」を、閾値よりも小さければ、即ち、黒に近け
れば「1」を出力する。この2値化結果はフレームメモ
リ203に格納される。
【0127】1画面分の2値画像データがフレームメモ
リ203に格納されたら、CPU1115はフレームメ
モリ203から2値画像データを読み出し、領域分割部
204に入力する。領域分割部204では、読み出され
た2値画像データが領域分割器122に入力され、バッ
ファ123にその結果が格納される。領域情報整形器1
24は、バッファ123に格納された限定色領域の領域
情報と連続階調領域の領域情報に分類して、領域情報メ
モリ125に先頭から限定色領域の領域情報を、続けて
連続階調領域の領域情報を格納する。
【0128】次に、CPU1115はセレクタ1209
の入力に限定色領域符号化部1205を選択する。続い
て、領域情報メモリ125に格納されている領域情報を
順に読み出し、領域情報に従って該当する2値画像デー
タをフレームメモリ203から画素データ毎に読み出
し、限定色領域符号化部1205で処理を行う。尚、
考例4の限定色領域符号化部1205の詳細な構成は、
参考例2の図7の限定色領域符号化部204と同様のも
のを用いるとし、ここではその説明を省略する。
【0129】次に、限定色領域符号化部205の動作に
ついて説明する。CPU1115は処理に先立ち、アド
レス比較器222とMMR符号化器223を初期化す
る。また、符号バッファ1208もクリアしておく。続
いて、アドレス比較器222に端子220を介して、領
域情報メモリ125から連続階調領域のすべての位置と
大きさを、アドレス比較器222に読み込む。その後、
画素クロックに従ってフレームメモリ203から2値画
像データの画素データを順に読み込む。アドレス比較器
222は読み込んだ画素データが連続階調領域の外であ
れば入力をそのまま出力する。読み込んだ画素データが
連続階調領域に含まれるものであれば「0」を出力す
る。アドレス比較器222の出力はMMR符号化器22
3でMMR符号化され、端子224を介して出力され
る。出力された符号は符号バッファ1208に格納され
る。
【0130】続いて、CPU1115はセレクタ201
の出力先を連続階調領域符号化部1207にし、セレク
タ1209の入力先を符号バッファ1208にする。更
に、符号化選択部1206を動作させる。ここで、参考
例4の符号化選択部1206の詳細な構成について、図
21を用いて説明する。
【0131】図21は本発明に係る参考例4の符号化選
択部の詳細な構成を示すブロック図である。図21にお
いて、240は端子であり、符号長指定部1106から
目標符号長LTを入力する。241は端子であり、領域
分割部204の領域情報メモリ125から領域情報を入
力する。242は端子であり、限定色領域符号化部12
05から出力された符号を入力する。1243はブロッ
ク数カウンタであり、入力された領域情報からベクトル
符号化する画素ブロックの数を計数する。1244は最
小符号長算出器であり、領域毎に符号化を切り換える方
式で符号化した場合に、すべての連続階調領域を符号化
するのに最低限必要な最小の符号長(Lmin)を求め
る。1245は符号化方式決定器であり、目標符号長L
Tと最小符号長Lminから、入力された白黒多値画像デー
タ全面をベクトル符号化する全面符号化か、あるいは領
域分割された画像データの領域単位の符号化か(つま
り、限定色領域をMMR符号化し、連続階調領域をベク
トル符号化する)を決定する。
【0132】1246は符号長カウンタであり、得られ
た符号の総符号長をカウントする。符号長カウンタ12
46の内容をCTとする。1247は符号長算出器であ
り、連続階調領域目標符号長を算出する。1248はコ
ードブック選択器であり、連続階調領域目標符号長に適
合するようにベクトル符号化のコードブックを切り換え
るためのコードブック選択符号を生成する。1249は
端子であり、符号化方式選択器1245の出力を外部に
出力する。1250は端子であり、コードブック選択器
1245で生成されたコードブック選択符号を連続階調
領域符号化部1207に出力する。
【0133】次に、符号化選択部1206の動作につい
て説明する。CPU1115は領域情報メモリ125に
格納された領域情報のデータ量を端子241を介して符
号長カウンタ1246に入力し、その値をCTとして格
納する。MMR符号化が行われた後に、端子242を介
して符号バッファ1208に格納されている符号の符号
長をカウントしCTに加算する。更に、コードブック選
択符号に要する符号長もCTに加算する。
【0134】続いて、CPU1115はブロック数カウ
ンタ1243を動作させ、領域情報メモリ125に格納
されている領域情報を読み出し、その中から連続階調領
域の領域情報のサイズから各連続階調領域に含まれるブ
ロック数を求め、その総和BTを求める。その後、最小
符号長算出器1244を動作させる。連続階調領域符号
化部1207ではブロックあたりの最小の符号長をCmi
nとすると、平均値に6ビット、ベクトル量子化結果の
7ビットの計13ビットが最小符号長である。最小符号
長算出器1244はブロック数の総和BTとからブロッ
クあたりの最小符号長Cminから、最小符号長Lminを次
式で算出する。
【0135】 Lmin=Cmin×BT …(13) 符号化方式選択器1245は、最小符号長Lminと符号
長カウンタ1246の内容のCT及び目標符号長LTか
ら、全面符号化か領域単位の符号化かを決定する。(L
min+CT)がLTより大きければ全面符号化を、LT以下
であれば領域単位の符号化を選択する。
【0136】まず、符号化方式選択器1245が全面符
号化を選択した場合について述べる。 符号化方式選択
器1245の出力は端子1249を介してCPU111
5、領域分割部204に入力される。領域分割部204
は全面符号化の選択によって、領域情報メモリ125の
内容をクリアし、領域分割を行わなかったこととする。
CPU1115は送信部1114を動作させ、通信に必
要な手順を行い、データ転送に備える。続いて、全面符
号化を選択したこと(符号化選択部1206の出力)
と、領域情報メモリ125の内容を、セレクタ1209
を介して送信部1114から送出する。
【0137】続いて、CPU1115は符号化選択部1
206を起動する。まず、ブロック数カウンタ1243
を動作させ、白黒多値画像データのサイズからブロック
数BTを求める。符号長算出器1247は、目標符号長
LTとブロック数カウンタ1243のブロック数BTと符
号長カウンタ1246の内容CTから、(14)式で表
されるブロック当たりの符号長BRTを求める。
【0138】 BRT=(LT−CT)/BT …(14) ブロック当たりの符号長BRTが求められたら、コード
ブック選択器1248は(BRT−M)以下で、最も近
いビット数に符号化するコードブックを選択する信号コ
ードブック選択符号を生成する。コードブック選択器1
248は10≦(BRT−M)であれば、コードブック
選択符号を0とする。9≦(BRT−M)<10であれ
ば、コードブック選択符号を1とする。8≦(BRT−
M)<9であれば、コードブック選択符号を3とする。
そして、コードブック選択符号は端子1250から出力
される。
【0139】コードブック選択符号が決定されたら、C
PU1115はコードブック選択符号を送信部1114
を介して送出する。続いて、CPU1115はセレクタ
1209を連続階調符号化部1207からの入力に切り
換える。その後、再度、画像入力装置200を動作さ
せ、白黒多値画像を読み込む。読み込まれた白黒多値画
像データは連続階調領域符号化部1207に入力され
る。
【0140】尚、参考例4の連続階調領域符号化部12
07の詳細な構成は、参考例2の図9の連続階調領域符
号化部206と同様のものを用いるとし、ここではその
説明を省略する。次に、連続階調領域符号化部1207
の動作について説明する。まず、セレクタ269は端子
260から入力されたコードブック選択符号が0であれ
ばコードブックメモリ265を、1であればコードブッ
クメモリ266を、2であればコードブックメモリ26
7を、3であればコードブックメモリ268を選択して
コードブック比較器270に入力する。
【0141】連続階調領域符号化部1207に入力され
た画素データはブロック生成器262に入力される。ブ
ロック生成器262は白黒多値画像データで隣接する画
素データ毎に、4×4のブロックを生成する。生成され
た4×4ブロックは順に直交変換器263に入力され、
アダマール変換され4×4の直交変換係数を得る。直交
変換器243で得られた16個の変換係数は量子化器2
64でそれぞれ量子化される。得られた16個の量子化
結果のうち、直流成分は上位ビットからMビットを選択
し、符号として端子271から出力される。残りの15
個の量子化結果はコードブック比較器270に入力され
る。入力された15個の各量子化結果からベクトルを生
成し、セレクタ269から入力されるコードブックのベ
クトルの中から最も類似したベクトルを選択し、選択さ
れたベクトルの番号を符号として端子271から出力す
る。また、出力された直流成分の量子化結果とベクトル
番号はそれぞれ符号バッファ1208、セレクタ120
9を介して送信部1114から送出される。
【0142】画像入力装置200での白黒多値画像の読
み込みと白黒多値画像データのすべての画素データの符
号化が終了し符号が送出されたら、すべての動作を終了
する。一方、符号化方式選択器1245が領域単位の符
号化を選択した場合について述べる。
【0143】符号化方式選択器1245の出力は端子1
249を介してCPU1115に入力される。CPU1
115は送信部1114を動作させ、通信に必要な手順
を行い、データ転送に備える。続いて、領域ごとに符号
化を切り換えたこと(符号化選択部1206の出力)
と、領域情報メモリ125の内容を、セレクタ1209
を介して送信部1114から送出する。
【0144】続いて、CPU1115は符号化選択部1
206を起動する。まず、ブロック数カウンタ1243
を動作させ、領域分割部204の領域情報メモリ125
から各連続階調領域の位置とサイズから連続階調領域内
のブロック数BTを求める。符号長算出器1247は、
目標符号長LTとブロック数カウンタ1243のブロッ
ク数BTと符号長カウンタ1246の内容CTから、(1
4)式で表されるブロック当たりの符号長BRTを求め
る。ブロック当たりの符号長BRTが求められたら、全
面符号化のときと同様にコードブック選択器1248は
(BRT−M)以下で、最も近いビット数に符号化する
コードブックを選択する信号をコードブック選択符号を
生成する。生成されたコードブック選択符号は端子12
50から出力される。
【0145】コードブック選択符号が決定されたら、C
PU1115はコードブック選択符号を送信部1114
を介して送出する。その後、再度、画像入力装置200
を動作させ、白黒多値画像を読み込む。読み込まれた白
黒多値画像データは連続階調領域符号化部1207に入
力される。連続階調領域符号化部1207に入力された
画素データはブロック生成器262に入力される。ブロ
ック生成器262は該当する画素データが連続領域内の
画素データであれば、白黒多値画像データからで隣接す
る画素データ毎に、4×4のブロックを生成する。生成
された4×4ブロックは順に直交変換器263に入力さ
れ、アダマール変換を施され4×4の直交変換係数を得
る。
【0146】セレクタ269は端子260から入力され
たコードブック選択符号が0であればコードブックメモ
リ265を、1であればコードブックメモリ266を、
2であればコードブックメモリ267を、3であればコ
ードブックメモリ268を選択してコードブック比較器
270に入力する。直交変換器243で得られた16個
の変換係数は量子化器264でそれぞれ量子化される。
得られた16個の量子化結果のうち、直流成分は上位ビ
ットからMビットを選択し、符号として端子271から
出力される。残りの15個の量子化結果はコードブック
比較器270に入力される。入力された15個の各量子
化結果からベクトルを生成し、セレクタ269から入力
されるコードブックのベクトルの中から最も類似したベ
クトルを選択し、選択されたベクトルの番号を符号とし
て端子271から出力する。また、出力された直流成分
の量子化結果とベクトル番号はそれぞれ符号バッファ1
208、セレクタ1209を介して送信部1114から
送出される。
【0147】画像入力装置200での白黒多値画像の読
み込みと白黒多値画像データのすべて連続階調領域内す
べての画素データの符号化が終了し符号が送出された
ら、すべての動作を終了する。尚、参考例4では、図2
0の連続階調領域符号化部1207を参考例2の図9の
ように構成したが、参考例2の図10のような構成でも
構わない。このような構成にすることで、複数のコード
ブックメモリを持たなくても済み、少量のメモリ容量で
実現できる。
【0148】次に、参考例4で実行される処理の概要に
ついて、図22を用いて説明する。図22は本発明に係
参考例4で実行される処理の処理フローを示すフロー
チャートである。まず、画像入力装置200で白黒多値
画像を読み取る。また、符号長指定部106で所望の目
標符号長LTを入力する(ステップS401)。2値化
器202で2値化し、その2値化結果はフレームメモリ
203に格納する。続いて、フレームメモリ203に格
納された2値画像データを読み出し、領域分割部204
で領域分割を行う(ステップS402)。領域分割され
た領域の内、限定色領域に該当するフレームメモリ20
3に格納されている2値画像データを限定色領域符号化
部1205でMMR符号化を行う(ステップS40
3)。符号化選択部1206において、ブロック数カウ
ンタ1243から得られるブロック数の総和BTとブロ
ック当たりの最小符号長Cminに基づいて、連続階調領
域の最小符号長Lminを算出する(ステップS40
4)。
【0149】最小符号長Lminと符号長カウンタ124
6の内容CTの和と、目標符号長LTを比較する(ステッ
プS405)。Lmin+CTがLTより大きい場合、入力
された白黒多値画像データ全体に対し、連続階調領域符
号化部1207でベクトル符号化を行う(ステップS4
06)。一方、Lmin+CTがLT以下の場合、連続階調
領域を連続階調領域分割部1207でベクトル符号化を
行う(ステップS407)。得られた符号を送信部11
14から送出する(ステップS408)。
【0150】尚、参考例4では、画像入力装置200か
ら入力する画像を白黒多値画像として説明を行ったが、
もちろんこれに限定されず、カラー多値画像であっても
構わない。また、画像データを符号化する符号化方式も
これに限定されない。また、メモリ構成等もこれに限定
されず、複数ライン毎の処理であっても構わない。以上
説明したように、参考例4によれば、白黒多値画像デー
タに対して、連続階調領域で符号長を調整して符号化が
なされるのでユーザが所望する符号長の符号を得ること
ができる。また、連続領域内の最小符号長を求め、かつ
領域毎の符号化を行った場合の最小符号長を求め、目標
符号長と比較することで、所望する符号長を超えて符号
化することを防ぐことができる。
【0151】<参考例5参考例5 は、参考例3の図12で説明した画像処理装置
と同様の各構成要素を用いて、以下、説明する処理を実
行する。以下、ユーザが原稿を読み込み、領域分割を行
い、符号化して送信器405から送出する例を、図23
から図31のフローチャートに従って説明する。また、
説明を容易にするために、限定色領域を符号化する符号
化方式としてJBIG符号化を、連続階調領域を符号化
する符号化方式としてJPEG符号化を用いる。
【0152】図23〜図31は本発明に係る参考例5
実行される処理の処理フローを示すフローチャートであ
る。ユーザは画像入力装置400に原稿を置き、端末4
03から所望する総符号長LTを入力する(ステップS
01a)。その後、CPU401は画像処理装置を起動
する。CPU401は画像入力装置400からカラー多
値画像を読み込み、メモリ402に格納する(ステップ
S02a)。
【0153】CPU401は、メモリ402に格納され
たカラー多値画像データを輝度信号に変換し、その値を
閾値と比較して2値画像データを生成し、メモリ402
に格納する(ステップS03a)。このとき、輝度信号
が閾値よりも小さければ、即ち、黒に近ければ「1」
を、輝度信号が閾値よりも大きければ、即ち、白に近け
れば「0」とする。生成された2値画像データを、上述
の特願平6ー167748号に記載されている領域分割
を行う。これにより、領域を切り出し、画像データを領
域に分割し、領域ごとにその内容を表わす属性を検出
し、限定色領域の領域情報と連続階調領域の領域情報に
分類して、メモリ402に領域の位置、サイズ、属性を
格納する(ステップS04a)。このとき、抽出された
限定色領域の数をNb、連続階調領域の数をNmとする。
【0154】続いて、CPU401に構成される不図示
の符号長カウンタCTを0にリセットする(ステップS
05a)。続いて、領域分離結果を送信器405からメ
モリ402の領域情報を送信するのに必要な符号長CA
を算出する。(ステップS06a)。そして、符号長カ
ウンタCTにCAを代入する(ステップS07a)。以
下、各限定色領域のJBIG符号化を行う。最初に、C
PU401に構成される不図示の領域カウンタiに0を
セットする(ステップS08a)。続いて、i番目の限
定色領域で領域内の2値画像データとカラー多値画像デ
ータを参照して、2値画像データの画素値が「1」であ
る全画素データのカラー多値画像データの平均値mbiを
求める(ステップS10a)。i番目の限定色領域の領
域内の2値画像データをJBIG符号化し、平均値mbi
と共にメモリ402に格納する(ステップS11a)。
このときの平均値mbiのデータ量とJBIG符号化の符
号長の和をLbiとする。符号長カウンタCTに符号長の
和Lbiを加算する(ステップS12a)。領域カウンタ
iを1インクリメントする(ステップS13a)。
【0155】領域カウンタiがNbと等しくなければ、
ステップS10aから13aを繰り返す(ステップS0
9a)。領域カウンタiがNbと等しくなったら、各連
像階調領域で発生する最小の符号長を求める。最初に、
CPU401に構成される不図示の領域カウンタkを0
にセットする(ステップS14a)。また、CPU40
1に構成される不図示の符号長カウンタLminに0をセ
ットする(ステップS15a)。スケール係数Qにスケ
ール係数Qの最大値Qmaxをセットし、量子化係数を算
出する(ステップS16a)。続いて、k番目の連続階
調領域を、メモリ402から読み出し、求めた量子化係
数を用いてJPEG符号化し、その符号長Cmkを求め、
符号長カウンタLminに加算する(ステップS18
a)。領域カウンタkを1インクリメントし、次の連続
階調領域の符号長を算出する(ステップS19a)。
【0156】領域カウンタkの値が連続階調領域数Nm
と等しくなり、すべての連続階調領域の符号長Cmkの算
出と符号長カウンタLminへの加算が終了したら(ステ
ップS17a)、符号長カウンタCTと符号長カウンタ
Lminを加算した値、即ち、最小符号長Cmtを求める
(ステップS20a)。最小符号長Cmtと目標符号長L
Tとを比較し、最小符号長Cmtが目標符号長LTよりも大
きければ、全面符号化を選択し、そうでなければ領域単
位の符号化を選択する(ステップS21a)。
【0157】まず、ステップS21aで、領域単位の符
号化を選択した場合について説明する。まず、メモリ4
02に格納されている連続階調領域に関する領域情報か
ら全連続階調領域の総画素データ数Psを求める(ステ
ップS22a)。続いて、連続階調領域占有率Prと目
標ビットレートBRを求める(ステップS23a)。連
続階調領域占有率Prは総画素数Psとカラー多値画像デ
ータの画素データ総数Paから次式で求める。
【0158】Pr=Ps/Pa …(15) また、連続階調領域の目標符号長Lmtを(16)式に従
って算出する。 Lmt=LT−CT …(16) 更に、連続階調領域の目標ビットレートBRを(17)
式に従って求める。 BR=Lmt/Ps …(17) 連続階調領域占有率Prと目標ビットレートBRから
(18)式に従ってスケール係数の初期値Qdを決定す
る(ステップS24a)。
【0159】 Qd=Qa×αPr×βBR …(18) (ただし、Qa、α、βは固定値) 続いて、領域カウンタkに0をセットする(ステップS
25a)。以下、各連続階調領域のJPEG符号化を行
う。メモリ402に格納されている未だに符合符号化さ
れていない連続階調領域(k番目以降の連続階調領域)
の領域情報を読み出し、そのサイズからこれらの連続階
調領域に含まれる画素データの数Pを算出する(ステッ
プS27a)。更に、k番目の連続階調領域の目標ビッ
トレートBRを(19)式に従って求める(ステップS
28a)。
【0160】BR=Lmt/P …(19) 続いて、スケール変数Qに初期値Qdをセットし、量子
化係数を算出する(ステップS29a)。続いて、算出
した量子化係数を用いてk番目の連続階調領域をJPE
G符号化し、その結果をメモリ402に格納する(ステ
ップS30a)。メモリ402に格納されたJPEG符
号の符号長Cmkと連続階調領域内の画素データ数Pkか
ら、(20)式に従って、ビットレート変数br’を求
める(ステップS33a)。
【0161】br’=Cmk/Pk …(20) もし、ビットレート変数br’が目標ビットレートBR
と等しければ(ステップS32a)、領域カウンタkを
1インクリメントする(ステップS39a)。更に、連
続階調領域の目標符号長Lmtを(21)式に従って更新
する(ステップS40a)。
【0162】Lmt=Lmt−Cmk …(21) 更に、このとき使用したスケール係数Qを初期値Qdと
し、次の連続階調領域の処理を行う(ステップS41
a)。もし、ビットレート変数br’が目標ビットレー
トBRより大きければ(ステップS32a、ステップS
33a)、スケール変数Qを1インクリメントし、量子
化係数を算出する(ステップS34a)。メモリ402
のJPEG符号領域をクリアする(ステップS35
a)。そして、k番目の連続階調領域を、再度、求めた
量子化係数を用いてJPEG符号化し、その結果をメモ
リ402に格納する(ステップS36a)。メモリ40
2に格納されたJPEG符号の符号長Cmkと連続階調領
域内の画素データ数Pkから、(22)式に従って、画
素データ当たりの符号長としてビットレート変数brを
求める(ステップS37a)。
【0163】br=Cmk/Pk …(22) もし、ビットレート変数brが目標ビットレートBR以
下であれば(ステップS38a)、領域カウンタkを1
インクリメントする(ステップS39a)。更に、連続
階調領域の目標符号長Lmtを(21)式に従って更新す
る(ステップS40a)。
【0164】更に、このとき使用したスケール係数Qを
初期値Qdとし、次の連続階調領域の処理を行う(ステ
ップS41a)。ビットレート変数brが目標ビットレ
ートBRより大きければ(ステップS38a)、ステッ
プS34aに進み、ステップS34aでさらにスケール
変数Qを1インクリメントして量子化係数を求め直し、
繰り返し処理を行う。
【0165】もし、ビットレート変数br’が目標ビッ
トレートBRより小さければ(ステップS33a)、ス
ケール変数Qを1デクリメントし、量子化係数を算出す
る(ステップS42a)。メモリ402のJPEG符号
領域をクリアする(ステップS43a)。そして、k番
目の連続階調領域を再度、新たな量子化係数でJPEG
符号化し(このときの符号長Cmk)、その結果をメモリ
402に格納する(ステップS44a)。メモリ402
に格納されたJPEG符号の符号長Cmkと連続階調領域
内の画素データ数Pkから、(22)式に従って、ビッ
トレート変数brを求める(ステップS45a)。
【0166】もし、ビットレート変数brが目標ビット
レートBRより大きければ(ステップS46a)、メモ
リ402のJPEG符号領域をクリアし(ステップS4
8a)、k番目の連続階調領域を再度、スケール変数
(Q+1)を用いて量子化係数を算出する(ステップS
49)。そして、JPEG符号化し(このときの符号長
Cmk)、その結果をメモリ402に格納する(ステップ
S50a)。
【0167】その後、領域カウンタkを1インクリメン
トする(ステップS51a)。更に、連続階調領域の目
標符号長Lmtを(21)式に従って更新する(ステップ
S40a)。更に、このとき使用したスケール係数Qを
初期値Qdとし、次の連続階調領域の処理を行う(ステ
ップS41a)。
【0168】ビットレート変数brが目標ビットレート
BRと等しければ(ステップS47a)、領域カウンタ
kを1インクリメントする(ステップS39a)。更
に、連続階調領域の目標符号長Lmtを(21)式に従っ
て更新する(ステップS40a)。更に、このとき使用
したスケール係数Qを初期値Qdとし、次の連続階調領
域の処理を行う(ステップS41a)。
【0169】ビットレート変数brが目標ビットレート
BRと等しくなければ(ステップS47a)、ステップ
S42aに進み、ステップS42aで、更に、スケール
変数Qを1デクリメントして量子化係数を求め直し、繰
り返し処理を行う。もし、領域カウンタkがNmであれ
ば(ステップS26a)、送信器405からの送信を行
う。最初に、メモリ402から領域情報を読み出し、送
信器405から送出する(ステップS71a)。最小符
号長Cmtは目標符号長LT以下であるから(ステップS
72a)、各限定色領域の色の平均値mbiとJBIG符
号を送出する。まず、領域カウンタiに0をセットする
(ステップS73a)。メモリ402からi番目の限定
色領域の色の平均値mbiとJBIG符号(符号長Lbi)
を送信器405から送出する(ステップS75a)。そ
の後、領域カウンタiを1インクリメントする(ステッ
プS76a)。すべての限定色領域の符号が送出された
ら(ステップS75a)、各連続階調領域のJPEG符
号を送出する。先ず、領域カウンタkに0をセットする
(ステップS77a)。メモリ402からk番目の連続
階調領域のJPEG符号(符号長Cmk)を送信器405
から送出する(ステップS79a)。その後、領域カウ
ンタkを1インクリメントする(ステップS80a)。
すべての連続階調領域の符号が送出されたら(ステップ
S78a)、すべての処理を終了する。
【0170】次に、ステップS21aで、全面符号化を
選択した場合について説明する。まず、メモリ402に
格納されている領域情報をクリアし、領域分割の数を0
にセットする(ステップS52a)。このときの領域情
報に必要な符号長を符号長カウンタCTに代入する。更
に、カラー多値画像データ全体の目標ビットレートBR
を(23)式に従って求める。
【0171】 BR=(LT−CT)/Pa …(23) 目標ビットレートBRから(24)式に従ってスケール
係数の初期値Qdを算出する(ステップS53a)。 Qd=Qa×βBR …(24) メモリ402上の限定色領域と連続階調領域の符号領域
をクリアする(ステップS54a)。スケール変数Qに
初期値Qdをセットし、量子化係数を算出する(ステッ
プS55a)。算出した量子化係数を用いてカラー多値
画像データ全体をJPEG符号化し、その結果(符号長
Cm)をメモリ402に格納する(ステップS56
a)。
【0172】もし、メモリ402に格納されたJPEG
符号の符号長Cmと符号長カウンタCTとの和が目標符号
長LTと等しければ(ステップS57a)、最初に、メ
モリ402から領域情報を読み出し、送信器405から
送出する(ステップS71a)。最小符号長Cmtが目標
符号長LTより大きいから(ステップS72a)、カラ
ー多値画像データ全体のJPEG符号を送信器405か
ら送出する(ステップS81a)。カラー多値画像デー
タ全体のすべてのJPEG符号が送出されたら、すべて
の処理を終了する。
【0173】もし、符号長Cmと符号長カウンタCTとの
和が目標符号長LTより大きければ(ステップS58
a)、スケール変数Qを1インクリメントし、量子化係
数を算出する(ステップS59a)。メモリ402のJ
PEG符号領域をクリアする(ステップS60a)。そ
して、カラー多値画像データ全体を、再度、算出して量
子化係数を用いてJPEG符号化し、その結果(符号長
Cm’)をメモリ402に格納する(ステップS61
a)。
【0174】もし、メモリ402に格納されたJPEG
符号の符号長Cm’と符号長カウンタCTとの和が目標符
号長LTより以下であれば(ステップS62a)、最初
に、メモリ402から領域情報を読み出し、送信器40
5から送出する(ステップS71a)。最小符号長Cmt
が目標符号長LTより大きいから(ステップS72
a)、カラー多値画像データ全体のJPEG符号を送信
器405から送出する(ステップS81a)。カラー多
値画像データ全体のすべてのJPEG符号が送出された
ら、すべての処理を終了する。
【0175】また、メモリ402に格納されたJPEG
符号の符号長Cm’と符号長カウンタCTとの和が目標符
号長LTより大きければ(ステップS62a)、ステッ
プS59aに進み、ステップS59aでさらにスケール
変数Qを1インクリメントし、量子化係数を求め直して
繰り返し処理を行う。もし、符号長Cmと符号長カウン
タCTとの和が目標符号長LTより小さければ(ステップ
S58a)、スケール変数Qを1デクリメントし、量子
化係数を算出する(ステップS63a)。メモリ402
のJPEG符号領域をクリアする(ステップS64a)
そして、カラー多値画像データ全体を再度、新たな量子
化係数でJPEG符号化し(このときの符号長C
m’)、その結果をメモリ402に格納する(ステップ
S65a)。
【0176】もし、メモリ402に格納されたJPEG
符号の符号長Cm’と符号長カウンタCTとの和が目標符
号長LTより大きければ(ステップS66a)、メモリ
402のJPEG符号領域をクリアする(ステップS6
8a)。そして、カラー多値画像データ全体を再度、ス
ケール変数(Q+1)を用いて量子化係数を算出し(ス
テップS69a)、JPEG符号化し(このときの符号
長Cm)、その結果をメモリ402に格納する(ステッ
プS70a)。最初に、メモリ402から領域情報を読
み出し、送信器405から送出する(ステップS71
a)。最小符号長Cmtが目標符号長LTより大きいから
(ステップS72a)、カラー多値画像データ全体のJ
PEG符号を送信器405から送出する(ステップS8
1a)。カラー多値画像データ全体のすべてのJPEG
符号が送出されたら、すべての処理を終了する。
【0177】また、メモリ402に格納されたJPEG
符号の符号長Cm’と符号長カウンタCTとの和が目標符
号長LTと等しければ(ステップS67a)、最初に、
メモリ402から領域情報を読み出し、送信器405か
ら送出する(ステップS71a)。最小符号長Cmtが目
標符号長LTより大きいから(ステップS72a)、カ
ラー多値画像データ全体のJPEG符号を送信器405
から送出する(ステップS81a)。カラー多値画像デ
ータ全体のすべてのJPEG符号が送出されたら、すべ
ての処理を終了する。
【0178】メモリ402に格納されたJPEG符号の
符号長Cm’と符号長カウンタCTとの和が目標符号長L
Tより小さければ(ステップS67a)、ステップS6
3aに進み、ステップS63aでさらにスケール変数Q
を1デクリメントして繰り返し処理を行う。尚、参考例
では、画像入力装置400から入力する画像をカラー
多値画像として説明を行ったが、もちろんこれに限定さ
れず、白黒多値画像であっても構わない。また、画像デ
ータを符号化する符号化方式もこれに限定されない。ま
た、メモリ構成等もこれに限定されず、複数ライン毎の
処理であっても構わない。
【0179】また、JPEG符号化で符号長の調整のた
めにスケール係数Qを1ずつ変化させたが、もちろんこ
れに限定されず、符号長とスケール変数Qから新たなス
ケール変数Qを予測するような方法を用いても構わな
い。更に、JBIG符号化とJPEG符号化を用いた
が、これに限定されず、他の符号化方式を用いてももち
ろん構わない。
【0180】更に、また、符号長を調整するためにスケ
ール係数を用いたがこれに限定されず、また、スケール
係数の調整方式もこれに限定されない。例えば量子化係
数を個別に変更しても構わないし、スケール係数を予測
や、一定比率で更新するような方法でももちろん構わな
い。以上説明したように、参考例5によれば、カラー多
値画像データに対して、特定のハードウェアを用意しな
くてもコンピュータのプログラムのようなソフトウェア
で、ユーザが所望する符号長の符号を得ることかでき
る。また、連続階調領域の符号化において、符号化を行
う毎に連続階調領域の目標符号長Lmtを更新するため、
所望する符号長に限りなく近づける効果がある。更に、
処理する画像サイズとビットレートからスケール係数の
初期値を決定することで、最適なスケール係数を求める
までの時間を短縮できる。更に、また、連続階調領域内
の最小符号長を求め、領域毎の符号化を行った場合の最
小符号長を求め、目標符号長と比較することで、所望す
る符号長を超えて符号化することを防ぐことができる。
【0181】また、得られた符号を送信器403から送
出したが、記憶装置404に格納することもできる。こ
のとき、記憶装置404には決まった枚数の画像を格納
することができるので、光磁気ディスク等の交換できる
メディアで画像を保管する場合に管理が容易になる効果
が得られる。以上、上記実施形態と参考例1〜5におい
て、画像処理装置の構成はこれに限定されず、一部分を
ソフトウェア等で実現してももちろん構わない。メモリ
構成をフレームメモリとしたが、これに限定されず、ラ
インバッファ等で構成してももちろん構わない。さら
に、入力画像のビット数等はこれに限定されない。
【0182】また、カラー画像でRGBそのままを用い
たが勿論これに限定されず、CIE1976L*a*b*
でも良いし、YCbCrのようなものでもよい。さらに
入力ビット数もこれに限定されない。符号化の方式はこ
れに限定されず、限定色領域では可逆な符号化、連続階
調領域では非化逆な符号化であればなんでも構わない。
例えば、限定色領域ではレンペル・ジブ符号化や他のエ
ントロピー符号化を用いても構わない。連続階調領域で
はDPCM符号化や他の変換符号化を用いても構わな
い。
【0183】領域分割や量子化の手法はこれに限定され
ず、他の方法でも構わない。また、領域の形状を矩形と
して説明したが、これに限定されず、輪郭線の様な自由
形状であってももちろん構わない。説明のために領域分
割のための2値化処理を画像の性質を最も良く表わす輝
度について行ったが、色度についても同じようにしても
もちろん構わないし、RGBそれぞれに行っても構わな
い。
【0184】JPEG符号化の符号長調整でスケール係
数Qを用いたが、符号長の調整はこれに限定されず、各
量子化係数を個別に操作してももちろん構わない。ま
た、スケール変数Qによる調整でも1ずつ増減する方法
をとったがこれに限定されず、例えばスケール係数Qと
符号長から予測をして更新していく方法でももちろん構
わない。
【0185】また、上記実施形態において、スケール係
数Qの初期値を(18)式のように連続階調領域占有率
PrとビットレートBRに比例するように表わしたが、
二次関数やその他の関数で表わしてももちろん構わな
い。以上説明したように、上記実施形態によれば、画像
に対して、領域分割を行って符号化し、連続階調領域で
符号量を制御することで、画質や人間の視覚で大きな劣
化を招くことなく符号長を制御することができる効果が
ある。
【0186】また、上記実施形態によれば、符号長を調
整する変数の初期値を連続階調領域が画像全体に占める
割合によって決めることにより、所望する符号長を求め
る時間と短縮することができる。さらに、複数の領域を
可変長の符号化をする際に、直前に用いた符号量を制御
する変数の値を用いることにより、所望する符号長を求
める時間を短縮することができる。
【0187】領域の性質に合わせて符号化する方法にお
いて、符号に必要な最小の符号長と目標符号長を比較す
ることで、必ず、所望する符号長内に収めることができ
るようになった。尚、本発明は、複数の機器(例えば、
ホストコンピュータ、インタフェース機器、リーダ、プ
リンタ等)から構成されるシステムに適用しても、一つ
の機器からなる装置(例えば、複写機、ファクシミリ装
置等)に適用してもよい。
【0188】また、本発明の目的は、前述した実施形態
の機能を実現するソフトウェアのプログラムコードを記
録した記憶媒体を、システムあるいは装置に供給し、そ
のシステムあるいは装置のコンピュータ(またはCPU
やMPU)が記憶媒体に格納されたプログラムコードを
読出し実行することによっても、達成されることは言う
までもない。
【0189】この場合、記憶媒体から読出されたプログ
ラムコード自体が上述した実施の形態の機能を実現する
ことになり、そのプログラムコードを記憶した記憶媒体
は本発明を構成することになる。プログラムコードを供
給するための記憶媒体としては、例えば、フロッピディ
スク、ハードディスク、光ディスク、光磁気ディスク、
CD−ROM、CD−R、磁気テープ、不揮発性のメモ
リカード、ROMなどを用いることができる。
【0190】また、コンピュータが読出したプログラム
コードを実行することにより、前述した実施形態の機能
が実現されるだけでなく、そのプログラムコードの指示
に基づき、コンピュータ上で稼働しているOS(オペレ
ーティングシステム)などが実際の処理の一部または全
部を行い、その処理によって前述した実施の形態の機能
が実現される場合も含まれることは言うまでもない。
【0191】更に、記憶媒体から読出されたプログラム
コードが、コンピュータに挿入された機能拡張ボードや
コンピュータに接続された機能拡張ユニットに備わるメ
モリに書き込まれた後、そのプログラムコードの指示に
基づき、その機能拡張ボードや機能拡張ユニットに備わ
るCPUなどが実際の処理の一部または全部を行い、そ
の処理によって前述した実施形態の機能が実現される場
合も含まれることは言うまでもない。
【0192】本発明を上記記憶媒体に適用する場合、そ
の記憶媒体には、先に説明したフローチャートに対応す
るプログラムコードを格納することになるが、簡単に説
明すると、図32、33のメモリマップ例に示す各モジ
ュールを記憶媒体に格納することになる。すなわち、
考例1〜3では、図33に示すような、少なくとも「指
定モジュール」、「分割モジュール」、「第1符号化モ
ジュール」および「第2符号化モジュール」の各モジュ
ールのプログラムコードを記憶媒体に格納すればよい。
【0193】尚、「指定モジュール」は、所望の符号長
である目標符号長を指定する。「分割モジュール」は、
入力された画像データを属性毎に複数の領域に分割す
る。「第1符号化モジュール」は、分割された複数の領
域のうち、所定の属性を有する領域以外の領域を符号化
する。「第2符号化モジュール」は、第1符号化モジュ
ールで符号化された符号の符号長に基づいて、所定の属
性を有する領域を符号化する。
【0194】すなわち、上記実施形態では、図33に示
すような、少なくとも「指定モジュール」、「第1符号
化モジュール」、「分割モジュール」、「第2符号化モ
ジュール」および「出力モジュール」の各モジュールの
プログラムコードを記憶媒体に格納すればよい。尚、
「指定モジュール」は、所望の符号長である目標符号長
を指定する。「第1符号化モジュール」は、目標符号長
となるように、入力された画像データ全体を符号化す
る。「分割モジュール」は、入力された画像データを属
性毎に複数の領域に分割する。「第2符号化モジュー
ル」は、目標符号長となるように、分割された領域を属
性毎に符号化する。「出力モジュール」は、第1符号化
モジュールで符号化された符号の第1符号化単位と、第
2符号化モジュールで符号化された所定の属性を有する
領域の符号の第2符号化単位に基づいて、第1符号化モ
ジュールで符号化された符号あるいは第2符号化モジュ
ールで符号化された符号のいずれかを出力する。
【0195】すなわち、参考例4、5では、図33に示
すような、少なくとも「指定モジュール」、「第1符号
化モジュール」、「分割モジュール」、「第2符号化モ
ジュール」および「出力モジュール」の各モジュールの
プログラムコードを記憶媒体に格納すればよい。尚、
「指定モジュール」は、所望の符号長である目標符号長
を指定する。「第1符号化モジュール」は、目標符号長
となるように、入力された画像データ全体を符号化す
る。「分割モジュール」は、入力された画像データを属
性毎に複数の領域に分割する。「第2符号化モジュー
ル」は、分割された領域を属性毎に符号化する。「出力
モジュール」は、第2符号化モジュールで符号化された
符号の符号長に基づいて、第1符号化モジュールで符号
化された符号あるいは第2符号化モジュールで符号化さ
れた符号のいずれかを出力する。
【0196】
【発明の効果】以上説明したように、本発明によれば、
入力された画像を符号化するに際し、ユーザが所望する
符号長からなる符号を効率的に得ることができ、かつ画
像品質を良好に維持しながら符号化することができる画
像処理装置及びその方法を提供できる。
【図面の簡単な説明】
【図1】本発明に係る参考例1の画像処理装置の構成を
示すブロック図である。
【図2】本発明に係る参考例1の領域分割部の詳細な構
成を示すブロック図である。
【図3】本発明に係る参考例1の限定色領域符号化部の
詳細な構成を示すブロック図である。
【図4】本発明に係る参考例1の量子化係数決定部の詳
細な構成を示すブロック図である。
【図5】本発明に係る参考例1で実行される処理の処理
フローを示すフローチャートである。
【図6】本発明に係る参考例2の画像処理装置の構成を
示すブロック図である。
【図7】本発明に係る参考例2の限定色領域符号化部の
詳細な構成を示すブロック図である。
【図8】本発明に係る参考例2の符号化選択部の詳細な
構成を示すブロック図である。
【図9】本発明に係る参考例2の連続領域符号化部の詳
細な構成を示すブロック図である。
【図10】本発明に係る参考例2の他の構成からなる連
続領域符号化部の詳細な構成を示すブロック図である。
【図11】本発明に係る参考例2で実行される処理の処
理フローを示すフローチャートである。
【図12】本発明に係る参考例3の画像処理装置の構成
を示すブロック図である。
【図13】本発明に係る参考例3で実行される処理の処
理フローを示フローチャートである。
【図14】本発明に係る参考例3で実行される処理の処
理フローを示フローチャートである。
【図15】本発明に係る参考例3で実行される処理の処
理フローを示フローチャートである。
【図16】本発明に係る参考例3で実行される処理の処
理フローを示フローチャートである。
【図17】本発明に係る実施形態の画像処理装置の構成
を示すブロック図である。
【図18】本発明に係る実施形態の量子化係数決定部の
詳細な構成を示すブロック図である。
【図19】本発明に係る実施形態で実行される処理の処
理フローを示すフローチャートである。
【図20】本発明に係る参考例4の画像処理装置の構成
を示すブロック図である。
【図21】本発明に係る参考例4の符号化選択部の詳細
な構成を示すブロック図である。
【図22】本発明に係る参考例4で実行される処理の処
理フローを示すフローチャートである。
【図23】本発明に係る参考例5で実行される処理の処
理フローを示すフローチャートである。
【図24】本発明に係る参考例5で実行される処理の処
理フローを示すフローチャートである。
【図25】本発明に係る参考例5で実行される処理の処
理フローを示すフローチャートである。
【図26】本発明に係る参考例5で実行される処理の処
理フローを示すフローチャートである。
【図27】本発明に係る参考例5で実行される処理の処
理フローを示すフローチャートである。
【図28】本発明に係る参考例5で実行される処理の処
理フローを示すフローチャートである。
【図29】本発明に係る参考例5で実行される処理の処
理フローを示すフローチャートである。
【図30】本発明に係る参考例5で実行される処理の処
理フローを示すフローチャートである。
【図31】本発明に係る参考例5で実行される処理の処
理フローを示すフローチャートである。
【図32】本発明の実施形態を実現するプログラムコー
ドを格納した記憶媒体のメモリマップの構造を示す図で
ある。
【図33】本発明の実施形態を実現するプログラムコー
ドを格納した記憶媒体のメモリマップの構造を示す図で
ある。

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 所望の符号長である目標符号長を指定す
    る指定手段と、 前記目標符号長となるように、入力された画像データ全
    体を、量子化を伴う非可逆符号化アルゴリズムにより
    号化する第1符号化手段と、 前記入力された画像データを、属性毎に複数の領域に分
    割する分割手段と、 前記目標符号長となるように、前記分割手段で分割され
    た各領域をその属性に応じて可逆符号化アルゴリズム又
    は前記非可逆符号化アルゴリズムの一方により符号化す
    る第2符号化手段と、前記目標符号長となるように符号化を実行した時の第1
    及び第2符号化手段における各非可逆符号化アルゴリズ
    ムで適用された量子化係数の大小関係を比較し、その比
    較の結果によって得られる量子化係数が小さい方に相当
    する符号化手段からの符号化データを選択出力する 出力
    手段とを備えることを特徴とする画像処理装置。
  2. 【請求項2】 前記非可逆符号化アルゴリズムは、JP
    EG符号化アルゴリズムであることを特徴とする請求項
    1に記載の画像処理装置。
  3. 【請求項3】 前記可逆符号化アルゴリズムは、JBI
    G符号化アルゴリズムであることを特徴とする請求項1
    に記載の画像処理装置。
  4. 【請求項4】 所望の符号長である目標符号長を指定す
    る指定工程と、 前記目標符号長となるように、入力された画像データ全
    体を、量子化を伴う非可逆符号化アルゴリズムにより
    号化する第1符号化工程と、 前記入力された画像データを、属性毎に複数の領域に分
    割する分割工程と、 前記目標符号長となるように、前記分割工程で分割され
    た各領域をその属性に応じて可逆符号化アルゴリズム又
    は前記非可逆符号化アルゴリズムの一方により符号化す
    る第2符号化工程と、前記目標符号長となるように符号化を実行した時の第1
    及び第2符号化工程における各非可逆符号化アルゴリズ
    ムで適用された量子化係数の大小関係を比較し、その比
    較の結果によって得られる量子化係数が小さい方に相当
    する符号化工程 からの符号化データを選択出力する 出力
    工程とを備えることを特徴とする画像処理方法。
JP02258897A 1997-02-05 1997-02-05 画像処理装置及びその方法 Expired - Fee Related JP3408094B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP02258897A JP3408094B2 (ja) 1997-02-05 1997-02-05 画像処理装置及びその方法
DE69823402T DE69823402D1 (de) 1997-02-05 1998-02-03 Bildverarbeitungsvorrichtung und -verfahren
EP98300782A EP0858053B1 (en) 1997-02-05 1998-02-03 Image processing apparatus and method
US09/017,732 US6067382A (en) 1997-02-05 1998-02-03 Image coding based on the target code length

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP02258897A JP3408094B2 (ja) 1997-02-05 1997-02-05 画像処理装置及びその方法

Publications (2)

Publication Number Publication Date
JPH10224640A JPH10224640A (ja) 1998-08-21
JP3408094B2 true JP3408094B2 (ja) 2003-05-19

Family

ID=12087022

Family Applications (1)

Application Number Title Priority Date Filing Date
JP02258897A Expired - Fee Related JP3408094B2 (ja) 1997-02-05 1997-02-05 画像処理装置及びその方法

Country Status (4)

Country Link
US (1) US6067382A (ja)
EP (1) EP0858053B1 (ja)
JP (1) JP3408094B2 (ja)
DE (1) DE69823402D1 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1278385A (zh) * 1997-10-28 2000-12-27 西门子公司 数字化图象的处理方法和装置
US6414992B1 (en) * 1999-01-27 2002-07-02 Sun Microsystems, Inc. Optimal encoding of motion compensated video
DE19908085C1 (de) * 1999-02-25 2000-06-21 Huf Huelsbeck & Fuerst Gmbh Vorrichtung zur Aufnahme und Halterung eines Identifikationsgebers, wie eines elektronischen Schlüssels, insbesondere für einen Zündanlaßschalter und/oder eine Lenksäuleneverriegelung eines Motorfahrzeugs
AU2001245662A1 (en) * 2000-03-13 2001-09-24 Point Cloud, Inc. Two-dimensional image compression method
US6968088B2 (en) * 2000-03-28 2005-11-22 Canon Kabushiki Kaisha Modification of detected quantization step size from the encoded bitstream based on a region of interest (ROI) bitmask
US6864895B1 (en) * 2000-05-30 2005-03-08 Hewlett-Packard Development Company, L.P. Pseudo-linear frame buffer mapping system and method
JP2002354008A (ja) * 2001-05-23 2002-12-06 Mitsubishi Electric Corp 縮退コード自動生成回路
SE0103746D0 (sv) * 2001-11-13 2001-11-13 Svep Design Ct Ab Digital image system
JP2004159171A (ja) * 2002-11-07 2004-06-03 Fuji Photo Film Co Ltd 画像圧縮方法及び画像圧縮装置
JP4612797B2 (ja) * 2004-03-11 2011-01-12 キヤノン株式会社 符号化装置、符号化方法
JP2005295505A (ja) * 2004-03-12 2005-10-20 Canon Inc 動画像符号化装置及び動画像復号装置及びそれらの制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP4702928B2 (ja) * 2004-03-12 2011-06-15 キヤノン株式会社 動画像符号化装置及び復号装置及びその制御方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
JP4418762B2 (ja) 2004-05-07 2010-02-24 キヤノン株式会社 画像符号化装置及び画像復号装置及びそれらの制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
WO2005112428A1 (ja) * 2004-05-18 2005-11-24 Konica Minolta Photo Imaging, Inc. 画像処理方法、画像処理装置、画像記録装置及び画像処理プログラム
JP4533035B2 (ja) 2004-08-02 2010-08-25 キヤノン株式会社 画像符号化装置及び方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
JP4533043B2 (ja) 2004-08-25 2010-08-25 キヤノン株式会社 画像符号化装置及び方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP4440051B2 (ja) 2004-09-08 2010-03-24 キヤノン株式会社 画像符号化装置及び方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP4393319B2 (ja) 2004-09-08 2010-01-06 キヤノン株式会社 画像符号化装置及び方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
JP4693603B2 (ja) 2004-11-15 2011-06-01 キヤノン株式会社 画像符号化装置及びその制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
US20070139543A1 (en) * 2005-12-16 2007-06-21 General Instrument Corporation Auto-adaptive frame rate for improved light sensitivity in a video system
US20070165284A1 (en) * 2006-01-17 2007-07-19 International Business Machines Corporation System and method for content based color scanning optimized enhancement using a localized approach
JP5285682B2 (ja) * 2010-11-29 2013-09-11 シャープ株式会社 画像符号化装置、画像符号化方法
JP6056124B2 (ja) * 2011-09-05 2017-01-11 富士ゼロックス株式会社 画像処理装置及び画像処理プログラム
CN107836014A (zh) * 2015-07-17 2018-03-23 三菱电机株式会社 动画显示装置以及动画显示方法
CN111382736B (zh) * 2018-12-29 2023-05-23 浙江宇视科技有限公司 车牌图像的获取方法和装置
CN116074514B (zh) * 2023-04-06 2023-06-02 深圳市银河通信科技有限公司 一种多媒体数据的安全通信云广播系统

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6275773A (ja) * 1985-09-30 1987-04-07 Toshiba Corp 画像圧縮装置
US4974071A (en) * 1987-04-28 1990-11-27 Canon Kabushiki Kaisha Color image data encoding apparatus having improved resolution/efficiency characteristics
US5031053A (en) * 1989-06-01 1991-07-09 At&T Bell Laboratories Efficient encoding/decoding in the decomposition and recomposition of a high resolution image utilizing pixel clusters
JPH03276263A (ja) * 1990-03-26 1991-12-06 Fuji Photo Film Co Ltd 画像ファイリング装置
EP0500077B1 (en) * 1991-02-21 1997-09-24 Nec Corporation Motion image data compression coding apparatus
US5696842A (en) * 1991-07-04 1997-12-09 Ricoh Company, Ltd. Image processing system for adaptive coding of color document images
EP0577310B1 (en) * 1992-06-29 2001-11-21 Canon Kabushiki Kaisha Image processing device
EP0583107B1 (en) * 1992-07-31 2000-10-04 Canon Kabushiki Kaisha Image processing method and apparatus
JPH0698288A (ja) * 1992-09-10 1994-04-08 Nikon Corp 静止画記憶装置
FR2696028A1 (fr) * 1992-09-23 1994-03-25 Philips Electronique Lab Dispositif de codage d'images fixés et dispositif de décodage correspondant.
JPH0787327A (ja) * 1993-09-17 1995-03-31 Fuji Xerox Co Ltd 画像符号化装置
US5493514A (en) * 1993-11-24 1996-02-20 Intel Corporation Process, apparatus, and system for encoding and decoding video signals
JPH0830725A (ja) * 1994-07-20 1996-02-02 Canon Inc 画像処理装置及び方法
AU698055B2 (en) * 1994-07-14 1998-10-22 Johnson-Grace Company Method and apparatus for compressing images
US5786855A (en) * 1995-10-26 1998-07-28 Lucent Technologies Inc. Method and apparatus for coding segmented regions in video sequences for content-based scalability
US5956430A (en) * 1996-02-19 1999-09-21 Fuji Xerox Co., Ltd. Image information coding apparatus and method using code amount of a selected pixel block for changing coding parameter
US5798795A (en) * 1996-03-01 1998-08-25 Florida Atlantic University Method and apparatus for encoding and decoding video signals

Also Published As

Publication number Publication date
EP0858053B1 (en) 2004-04-28
EP0858053A3 (en) 1999-06-16
DE69823402D1 (de) 2004-06-03
EP0858053A2 (en) 1998-08-12
US6067382A (en) 2000-05-23
JPH10224640A (ja) 1998-08-21

Similar Documents

Publication Publication Date Title
JP3408094B2 (ja) 画像処理装置及びその方法
US5774634A (en) Image processing method and apparatus
US5682249A (en) Method of encoding an image at full resolution for storing in a reduced image buffer
EP0750428B1 (en) Image processing apparatus and method
US8144981B2 (en) Texture compression based on two hues with modified brightness
US5644406A (en) Method for selecting an optimum encoding process for a block of pixels from a plurality of predefined encoding processes
JP3237582B2 (ja) 画像処理装置及び画像処理方法
US5917947A (en) Image processing method and apparatus permitting use of PDL in compression memory
JP2000050268A (ja) 画像符号化装置
JP3915272B2 (ja) 量子化方法,および量子化プログラムを記録した記録媒体
JP3814637B2 (ja) 画像符号/復号方法及びそのプログラムを記録した記録媒体並びに装置
EP1309174A2 (en) Data compression
JP2001143066A (ja) 画像処理装置、画像処理システム及び記憶装置、画像処理方法、並びに記憶媒体
JPH0937246A (ja) 画像処理装置及び方法
US5594503A (en) Image information compressing method, compressed image information recording medium and compressed image information reproducing apparatus
US20100142840A1 (en) Image encoding apparatus and method of controlling the same
JP3971815B2 (ja) スクリーンされたマルチ・レベル画像圧縮方法
US6829385B2 (en) Apparatus and method for processing images, and a computer-readable medium
JP2000184183A (ja) 圧縮された画像デ―タの電子的ペ―スト方法、及びデジタル画像処理方法
JP2003046789A (ja) 画像符号化装置及び画像復号化装置
JP2008301379A (ja) 画像処理方法および画像処理装置
JPH0937262A (ja) 画像処理装置及び方法
JP2002354266A (ja) 画像処理装置、画像処理システム、画像処理方法、記録媒体およびプログラム
JP2003134532A (ja) 画像圧縮装置、画像圧縮方法、画像展開装置、プログラム
JP2003143414A (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: 20030221

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

Free format text: PAYMENT UNTIL: 20080314

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090314

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100314

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100314

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110314

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120314

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130314

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20140314

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees