(57)【特許請求の範囲】
【請求項１】
画像データを符号化する画像符号化装置であって、
画像データに対して可逆符号化処理を行なう可逆符号化処理手段と、
当該可逆符号化処理手段で１ページ分の画像データの可逆符号化処理が終了した後、可逆符号化対象外となった非符号化画像データについて非可逆符号化する非可逆符号化処理手段と、
前記可逆符号化処理手段及び前記非可逆符号化処理手段で得られた可逆符号化データ及び非可逆符号化データを出力する出力手段と
前記可逆符号化処理手段、前記非可逆符号化処理手段を制御する制御手段とを備え、
前記可逆符号化処理手段は、
符号化対象の画像データからタイル単位に入力し、可逆符号化する可逆符号化手段と、
該可逆符号化手段で符号化する対象となったタイルの画像データを非符号化画像データとして一時的に保持するタイルデータ保持手段と、
該タイルデータ保持手段に保持された非符号化データである画像データの画素数を、設定された比率に従って減らすことで解像度変換する第１の解像度変換手段と、
注目タイルの属性情報に基づき、前記可逆符号化手段で生成された可逆符号化データ、前記タイルデータ保持手段に記憶された非符号化画像データのいずれか一方を選択し、前記非可逆符号化処理手段に出力する選択手段とを備え、
前記非可逆符号化処理手段は、
前記選択手段より選択出力された非符号化画像データ、及び、可逆符号化データを蓄積記憶する記憶手段と、
設定要求に応じて、該記憶手段に記憶された非符号化画像データの画素数を予め設定された比率に従って減らすことで解像度を変換し、解像度変換前の非符号化画像データに代えて解像度変換後の非符号化画像データを前記記憶手段に格納する第２の解像度変換手段と、
前記非符号化画像データを非可逆符号化する非可逆符号化手段とを備え、
前記制御手段は、
前記可逆符号化処理手段による１ページの可逆符号化処理中に、前記選択手段が出力する非符号化画像データのタイル数を計数する計数手段と、
該計数手段で計数したタイル数が、互いに異なる複数の閾値の１つ越える度に、第２の解像度変換手段の解像度変換処理を実行させると共に、前記タイル数が前記複数の閾値を越えた回数に応じた比率を前記第１の解像度変換手段に設定し、実行させる解像度設定手段と
を備えることを特徴とする画像符号化装置。
【請求項２】
前記第２の解像度変換手段は前記記憶手段に記憶された非符号化画像データの水平垂直方向の画素数を１／２にし、
前記解像度設定手段は、前記タイル数が前記閾値を越える回数をｋとしたとき、前記第１の解像度変換には（１／２）kを解像度変換比率として設定することを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記可逆符号化手段を第１の可逆符号化手段、前記記憶手段を第１の記憶手段と定義したとき、
前記可逆符号化処理手段は、
符号化対象の画像データを、当該画像データの解像度よりも低い複数の解像度に変換し、出力する第３の解像度変換手段と、
前記第３の解像度変換手段で得られた複数の解像度の画像データそれぞれを、タイル単位に可逆符号化し、各解像度毎の可逆符号化データを生成する第２の可逆符号化手段とを更に備え、
前記非可逆符号化処理手段は、
前記第２の可逆符号化手段で生成された各解像度毎の可逆符号化データを記憶する第２の記憶手段と、
前記非可逆符号化手段で生成された非可逆符号化データを、設定されたパラメータに従って再度符号化し、非可逆符号化データを生成する再符号化手段とを備え、
前記制御手段は、
前記第１記憶手段に記憶された非符号化データの総データ量と、目標符号化データ量とに基づき、前記第１の記憶手段及び前記第２の記憶手段中のいずれの可逆符号化データを選択出力するかを判定する可逆符号化データ判定手段と、
該可逆符号化データ判定手段で判定された可逆符号化データのデータ量と前記目標符号化データ量に基づいて目標非可逆符号化データ量を決定し、前記非可逆符号化手段及び前記再符号化手段を制御し、前記目標非可逆符号化データ量以下の非可逆符号化データに生成させる非可逆符号化制御手段とを備える
ことを特徴とする請求項１又は２に記載の画像符号化装置。
【請求項４】
前記可逆符号化処理手段は、
注目タイルの属性に基づき、異なる２種類の解像度のうち高い方か、低い方かを判定する解像度判定手段と、
前記第１、第２の可逆符号化手段それぞれで生成される可逆符号化データを入力し、解像度差が最も小さい２つの可逆符号化データを入力し、前記解像度判定手段の判定結果に基づいて一方の可逆符号化データを選択する複数の可逆符号化選択手段を更に備え、
前記非可逆符号化処理手段は、
前記複数の可逆符号化選択手段で選択された各可逆符号化データそれぞれを記憶する第３の記憶手段を更に備え、
前記可逆符号化データ判定手段は、前記第３の記憶手段をも参照して、選択出力すべき可逆符号化データを判定することを特徴とする請求項３に記載の画像符号化装置。
【請求項５】
前記非可逆符号化処理手段が非可逆符号化処理を開始する際に、可逆符号化処理手段は次のページの画像データに対する可逆符号化処理を開始することを特徴とする請求項１乃至４のいずれか１項に記載の画像符号化装置。
【請求項６】
画像データを符号化する画像符号化装置の制御方法であって、
画像データに対して可逆符号化処理を行なう可逆符号化処理工程と、
当該可逆符号化処理工程で１ページ分の画像データの可逆符号化処理が終了した後、可逆符号化対象外となった非符号化画像データについて非可逆符号化する非可逆符号化処理工程と、
前記可逆符号化処理工程及び前記非可逆符号化処理工程で得られた可逆符号化データ及び非可逆符号化データを出力する出力工程と
前記可逆符号化処理工程、前記非可逆符号化処理工程を制御する制御工程とを備え、
前記可逆符号化処理工程は、
符号化対象の画像データからタイル単位に入力し、可逆符号化する可逆符号化工程と、
該可逆符号化工程で符号化する対象となったタイルの画像データを非符号化画像データとして一時的に保持するタイルデータ保持手段に格納する工程と、
該タイルデータ保持手段に保持された非符号化データである画像データの画素数を、設定された比率に従って減らすことで解像度変換する第１の解像度変換工程と、
注目タイルの属性情報に基づき、前記可逆符号化工程で生成された可逆符号化データ、前記タイルデータ保持手段に記憶された非符号化画像データのいずれか一方を選択し、前記非可逆符号化処理工程に出力する選択工程とを備え、
前記非可逆符号化処理工程は、
前記選択工程より選択出力された非符号化画像データ、及び、可逆符号化データを記憶手段に格納する工程と、
設定要求に応じて、該記憶手段に記憶された非符号化画像データの画素数を予め設定された比率に従って減らすことで解像度を変換し、解像度変換前の非符号化画像データに代えて解像度変換後の非符号化画像データを前記記憶手段に格納する第２の解像度変換工程と、
前記非符号化画像データを非可逆符号化する非可逆符号化工程とを備え、
前記制御工程は、
前記可逆符号化処理工程による１ページの可逆符号化処理中に、前記選択工程が出力する非符号化画像データのタイル数を計数する計数工程と、
該計数工程で計数したタイル数が、互いに異なる複数の閾値の１つ越える度に、第２の解像度変換工程の解像度変換処理を実行させると共に、前記タイル数が前記複数の閾値を越えた回数に応じた比率を前記第１の解像度変換工程に設定し、実行させる解像度設定工程と
を備えることを特徴とする画像符号化装置の制御方法。
【請求項７】
画像データを符号化する画像符号化装置であって、
画像データに対して可逆符号化処理を行なう可逆符号化処理手段と、
当該可逆符号化処理手段で１ページ分の画像データの可逆符号化処理が終了した後、可逆符号化対象外となった非符号化画像データについて非可逆符号化する非可逆符号化処理手段と、
前記可逆符号化処理手段及び前記非可逆符号化処理手段で得られた可逆符号化データ及び非可逆符号化データを出力する出力手段と
前記可逆符号化処理手段、前記非可逆符号化処理手段を制御する制御手段とを備え、
前記可逆符号化処理手段は、
符号化対象であって基準解像度の画像データからタイル画像データを入力し、可逆符号化する可逆符号化手段と、
前記基準解像度のタイル画像データの画素数を減らすことで、互いに異なる複数の解像度のタイル画像データを生成し、前記基準解像度のタイル画像データと共に非符号化画像データ群として出力する解像度変換手段と、
タイルの属性情報に基づき、前記可逆符号化手段で生成された可逆符号化データ、或いは、前記非符号化画像データ群のいずれか一方を選択し、前記非可逆符号化処理手段に出力する選択手段とを備え、
前記非可逆符号化処理手段は、
前記選択手段より選択出力された非符号化画像データ群、及び、可逆符号化データを蓄積記憶する記憶手段と、
前記制御手段より指定された解像度に対応するタイル画像データを非可逆符号化する非可逆符号化手段とを備え、
前記制御手段は、
前記可逆符号化処理手段による１ページの可逆符号化処理中に、前記選択手段より出力される各解像度毎の総タイル画像データ量を計数する計数手段と、
前記可逆符号化処理手段による１ページ分の処理が完了した場合、前記計数手段で計数された各解像度の総タイル画像データ量に基づき、前記可逆符号化処理手段に設定すべき解像度を判定する判定手段とを備え、
前記判定手段は、前記基準解像度を前記非可逆符号化手段に設定すべき初期候補解像度とし、前記計数手段で計数した各解像度の総タイル画像データ量が予め設定された閾値を越える度に、前記非可逆符号化手段に設定すべき候補解像度を段階的に下げていく
ことを特徴とする画像符号化装置。
【請求項８】
画像データを符号化する画像符号化装置の制御方法であって、
画像データに対して可逆符号化処理を行なう可逆符号化処理工程と、
当該可逆符号化処理工程で１ページ分の画像データの可逆符号化処理が終了した後、可逆符号化対象外となった非符号化画像データについて非可逆符号化する非可逆符号化処理工程と、
前記可逆符号化処理工程及び前記非可逆符号化処理工程で得られた可逆符号化データ及び非可逆符号化データを出力する出力工程と
前記可逆符号化処理工程、前記非可逆符号化処理工程を制御する制御工程とを備え、
前記可逆符号化処理工程は、
符号化対象であって基準解像度の画像データからタイル画像データを入力し、可逆符号化する可逆符号化工程と、
前記基準解像度のタイル画像データの画素数を減らすことで、互いに異なる複数の解像度のタイル画像データを生成し、前記基準解像度のタイル画像データと共に非符号化画像データ群として出力する解像度変換工程と、
タイルの属性情報に基づき、前記可逆符号化工程で生成された可逆符号化データ、或いは、前記非符号化画像データ群のいずれか一方を選択し、前記非可逆符号化処理工程に出力する選択工程とを備え、
前記非可逆符号化処理工程は、
前記選択工程より選択出力された非符号化画像データ群、及び、可逆符号化データを記憶手段に蓄積する工程と、
前記制御工程より指定された解像度に対応するタイル画像データを非可逆符号化する非可逆符号化工程とを備え、
前記制御工程は、
前記可逆符号化処理工程による１ページの可逆符号化処理中に、前記選択工程より出力される各解像度毎の総タイル画像データ量を計数する計数工程と、
前記可逆符号化処理工程による１ページ分の処理が完了した場合、前記計数工程で計数された各解像度の総タイル画像データ量に基づき、前記可逆符号化処理工程に設定すべき解像度を判定する判定工程とを備え、
前記判定工程は、前記基準解像度を前記非可逆符号化工程に設定すべき初期候補解像度とし、前記計数工程で計数した各解像度の総タイル画像データ量が予め設定された閾値を越える度に、前記非可逆符号化工程に設定すべき候補解像度を段階的に下げていく
ことを特徴とする画像符号化装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データをタイル単位で可逆符号化もしくは非可逆符号化する技術に関するものである。
【背景技術】
【０００２】
画像データを解像度と階調性と言う尺度で分類すると、解像度の高さが重視されるテキスト（文字）系、階調表現が重視される自然画系と、両者のバランスが重視されるグラフィックス系の画像とに大別される。
【０００３】
以下に述べるように、画像データの種類によって、それに適した符号化方法が異なる。
【０００４】
テキスト系の画像は、たとえ画像データが多値データとして入力したとしても、局所的に見ると２通りの画素で構成される場合が多い。このため、他の種類の画像に比べ可逆符号化するのに適している。
【０００５】
別の表現を用いると、画像のエントロピーが低いため、可逆符号化に適していると言える。但し、エントロピーが低いため、僅かな劣化が視覚上目立つことがある。それ故に、高品質のテキスト系画像は可逆符号化することが求められる。
【０００６】
これに対し、自然画系の画像は（被写体によって大きく異なるが）一般的にエントロピーが高い。そのため、可逆符号化してもあまり高い圧縮率は望めない。この種の画像は、視覚上目立ちにくい部分の劣化を許容する符号化により、高い圧縮率を実現することが可能である。このような符号化を前記可逆符号化に対し非可逆符号化と言う。
【０００７】
よって、テキスト系の画像データは可逆符号化、自然画系の画像データは非可逆符号化によって画像データを圧縮する手法が、高い画像品位を求められる機器で採用されてきている。
【０００８】
周波数軸上で見ると低周波域より高周波域の方が、劣化が目立ちにくい。そのため、非可逆符号化では、実空間上の画像データを周波数空間データに変換する処理を行うのが一般的である。その代表的な変換が離散コサイン変換（ＤＣＴ）である。そして、周波数空間へ変換したデータに対して、エントロピーを減らすための量子化処理を行う。その際に、低周波域の劣化をなるべく少なく抑え、高周波域の劣化が出やすいよう量子化テーブルに周波数に依存した特性を持たせる。最後に量子化した値をハフマン符号などを用いてエントロピー符号化する。
【０００９】
自然画像のデータは、撮像素子で光電変換した信号をＡ／Ｄ変換して生成する関係上、どうしてもランダムノイズが重畳してしまう。このランダムノイズが重畳したデータは可逆符号化にすこぶる不向きである。
【００１０】
それに対して、コンピュータグラフィックス系の画像（以下、ＣＧ画像という）は、基本的にランダムノイズの無い画像であり、この点では可逆符号化に向いていると言える。また、自然画には存在しないようなシャープなエッジが随所に存在し、上記ＤＣＴ変換をするのに不向きでもある。
【００１１】
ＣＧ画像の種類は千差万別で、階調数の少ない画像から階調数の多い画像まで何でもあり、自然画に近い画像も生成できるため、一概に可逆符号化に適しているとは言えない。従って、可逆符号化に適した画像もあれば、非可逆符号化に向く画像もあると言うことはできる。
【００１２】
先に示した離散コサイン変換は実数係数の乗算を伴う演算処理である上に、量子化した値はエントロピー符号化の前に、所定の順序に並び替えを行う必要がある等、単純な整数演算以外の処理が多い。このため、非可逆符号化器では、ハードウェア規模が大きくなる傾向がある。
【００１３】
それに対し、可逆符号化は実数演算を行う必要がなく、最後まで整数値のまま処理することができ、前述した周波数空間などへの変換を行わなければ、データの並び替えも必要なく、ハードウェア規模も簡略化しやすい。
【００１４】
近年、プリンタ等の出力装置のさらなる高画質化を図るために、出力装置の高解像度化が図られている。それに合せて画像データの高解像度化も進み、民生機器においても、これまで６００ｄｐｉであった画像の解像度が、１２００ｄｐｉさらには２４００ｄｐｉへと上がっていく傾向にある。
【００１５】
これは、画像データを符号化・復号するソフトウェアやハードウェアのへ求められる性能は４倍、１６倍に上がることを意味する。
【００１６】
画像データをブロックやタイルといった所定の単位で可逆または非可逆で符号化することが知られている（特許文献１）。
【００１７】
この技術の概要は、図４に示す構成で表すことができる。図４の構成では、イメージスキャナやページ記述言語レンダリングなどで生成された画像データ４０１をタイル単位に分割する。そして、１つのタイルに対し、可逆符号化部４０３と非可逆符号化部４０５とが並列して符号化処理を行なう。各々の符号化器で発生する符号量、並びに、各符号化処理の過程で得られる各種パラメータに基づいて、可逆で符号化すべきか非可逆で符号化すべきかを判定部４０７にて判定し、判定結果を選択部４０９に送る。
【００１８】
２つの符号化器から出力される２種類の符号化データの一方を、前記判定結果に基づいて選択部４０９にて選択し、メモリ４１１に格納すると、１つのタイルの符号化が完了する。１ページ画像の全タイルデータの符号化が終了したら、該ページ画像の符号化データをまとめてハードディスクドライブ４１３に転送し格納する。
【００１９】
メモリ４１１はいわゆる半導体メモリである。このメモリ４１１には数ページ〜数十ページ程度の符号化データしか保持できないが、現在では一般的な数百Ｇバイトの容量のハードディスクドライブなら、数万ページ以上の符号化データを保存することが可能である。
【００２０】
一方、図５のような構成も容易に考えられる。この構成では、可逆・非可逆の判定に必要なパラメータをタイルデータから直接生成する機能を、判定部４２１が持つ。そして、この判定部４２１が、いずれの符号化データを選択すべきかを、そのパラメータに基づいて判定を行う。判定結果は分配部４２３に送られ、可逆符号化部４０３と非可逆符号化部４０５のいずれか一方にタイルデータを供給し、符号化を行わせる。この結果、２つの符号化部のどちらか一方のみから符号化データが出力されるので、それをメモリ４１１に格納すれば、該タイルデータの符号化は完了する。
【００２１】
図４、図５のいずれの構成であっても、任意の画像データを所定時間（以下、「１ページ時間」という）以内で符号化するには、２つの符号化部それぞれは、全画像データを１ページ時間内に符号化する性能を持っていなければならない。
【００２２】
６００ｄｐｉの解像度の全画像データを１ページ時間内に符号化するために、１つの符号化器を８５％以上の稼働率で使用していたとすると、１２００ｄｐｉの解像度の画像データはデータ量が４倍になる。このため、前記符号化器を４つ並列に動作させて符号化する必要がある。さらに、２４００ｄｐｉの解像度になると、データ量が１６倍になるため、１４〜１６個の符号化器を並列に動作させなければ、１ページ時間内に符号化処理は終わらない。
【特許文献１】特開平０９−１４９２６０号公報
【発明の開示】
【発明が解決しようとする課題】
【００２３】
上記の通り、従来は、解像度の高い大量の画像データを符号化するには、多数の符号化器を並列に動作させて符号化を行う必要があり、符号化器の回路規模が膨大になる。それ故、その符号化装置を製造するのに高いコストが必要となる。
【００２４】
ハードウェア規模を削減するためには、並列に動作させる非可逆符号化器の並列度を下げることである。しかし、並列度を下げてしまうと、非可逆符号化部の性能が低下するため、所定時間内に非可逆符号化処理を終えることができないといった別の問題が発生する。本発明は、この問題を解決する技術を提供しようとするものである。
【課題を解決するための手段】
【００２５】
かかる課題を解決するため、例えば本発明の画像符号化装置は以下の構成を備える。すなわち、
画像データを符号化する画像符号化装置であって、
画像データに対して可逆符号化処理を行なう可逆符号化処理手段と、
当該可逆符号化処理手段で１ページ分の画像データの可逆符号化処理が終了した後、可逆符号化対象外となった非符号化画像データについて非可逆符号化する非可逆符号化処理手段と、
前記可逆符号化処理手段及び前記非可逆符号化処理手段で得られた可逆符号化データ及び非可逆符号化データを出力する出力手段と
前記可逆符号化処理手段、前記非可逆符号化処理手段を制御する制御手段とを備え、
前記可逆符号化処理手段は、
符号化対象の画像データからタイル単位に入力し、可逆符号化する可逆符号化手段と、
該可逆符号化手段で符号化する対象となったタイルの画像データを非符号化画像データとして一時的に保持するタイルデータ保持手段と、
該タイルデータ保持手段に保持された非符号化データである画像データの画素数を、設定された比率に従って減らすことで解像度変換する第１の解像度変換手段と、
注目タイルの属性情報に基づき、前記可逆符号化手段で生成された可逆符号化データ、前記タイルデータ保持手段に記憶された非符号化画像データのいずれか一方を選択し、前記非可逆符号化処理手段に出力する選択手段とを備え、
前記非可逆符号化処理手段は、
前記選択手段より選択出力された非符号化画像データ、及び、可逆符号化データを蓄積記憶する記憶手段と、
設定要求に応じて、該記憶手段に記憶された非符号化画像データの画素数を予め設定された比率に従って減らすことで解像度を変換し、解像度変換前の非符号化画像データに代えて解像度変換後の非符号化画像データを前記記憶手段に格納する第２の解像度変換手段と、
前記非符号化画像データを非可逆符号化する非可逆符号化手段とを備え、
前記制御手段は、
前記可逆符号化処理手段による１ページの可逆符号化処理中に、前記選択手段が出力する非符号化画像データのタイル数を計数する計数手段と、
該計数手段で計数したタイル数が、互いに異なる複数の閾値の１つ越える度に、第２の解像度変換手段の解像度変換処理を実行させると共に、前記タイル数が前記複数の閾値を越えた回数に応じた比率を前記第１の解像度変換手段に設定し、実行させる解像度設定手段とを備える。
【発明の効果】
【００２６】
本発明によれば、タイル数に関する閾値を適切に設定することで、非可逆符号化処理能力を最大限に利用しつつ、且つ、単位時間内に可逆／非可逆符号化データが混在した符号化データを生成することが可能になる。
【発明を実施するための最良の形態】
【００２７】
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。
【００２８】
＜第１の実施形態＞
先ず、実施形態における特徴的な符号化処理を行う為の、第１の基本構成を図１に示し、その動作を図６〜図１０を用いて説明する。
【００２９】
まず、図１の画像処理装置１００の構成を簡単に説明する。
【００３０】
図１における画像処理装置１００は、大きく分けて可逆符号化処理部１７０と、非可逆符号化処理部１８０とに分けられる。画像処理装置１００は、イメージスキャナやページ記述言語レンダリングなどで生成された画像データ４０１を入力し、可逆符号化部１０１は、入力された画像データの符号化を行う。画像データ４０１の解像度は２４００ｄｐｉとする。
【００３１】
なお、本実施形態では、可逆符号化の一例として公知となっている、ＪＰＥＧ−ＬＳ符号化方式を用いるものとする。この技術の詳細は、『「国際標準化文書」：ISO/IEC IS 14495-1, “Information technology - Lossless and near-lossless compression of continuous-tone still images: Baseline”』を参照されたい。
【００３２】
簡単に述べると、ＪＰＥＧ−ＬＳ符号化方式は、非線形適応フィルタとコンテキストベースエントロピー符号化を用いて、多値の画素をラスタースキャン順序で可逆符号化する方式である。
【００３３】
各符号化画素のコンテキストを求めるにあたり、該画素の周辺画素を参照し所定の演算を行う。この時に処理を若干追加することにより周辺画素の色数や変化の度合いや画素値のヒストグラムといった、画像属性情報を得ることができる。
【００３４】
制御部１５０は図１に示す各構成ユニットを制御するものであり、内部には後述する判定部１０３を備える。
【００３５】
画像データ４０１は、例えば３２×３２サイズのタイルに分割されて入力される。可逆符号化部１０１は、入力したタイルデータから可逆符号化データを生成し、選択部１０９に出力すると共に、上記の画像属性情報もタイル単位で求め、その画像属性情報を判定部１０３に出力する。判定部１０３では、この画像属性情報に基づき、最終的に該タイルデータを可逆符号化すべきか、非可逆符号化すべきかを判定する。
【００３６】
可逆符号化する対象のタイルデータは、バッファ１０５にも送られ、非符号化データ（非圧縮データ）として該バッファに格納される。バッファ１０５は非符号化データを、判定部１０５から判定結果が出力されるまで保持し続ける。
【００３７】
判定部１０５から出力される判定結果は選択部１０９に送られる。選択部１０９はこの判定結果が「可逆」を示す場合、可逆符号化部１０１から出力される符号化データを選択し、判定結果が「非可逆」の場合、バッファ１０５に保存されている非符号化データを選択し、メモリ１１１に格納する。このとき、選択部１０９は、メモリ１１１に格納しようとするデータの先頭に、可逆符号化データであるか非符号化データであるかを示す１ビットを付加する。
【００３８】
以上の処理を総称して＜可逆符号化処理＞と称する。実施形態では、この＜可逆符号化処理＞を１ページ時間内に終わらせる。そして、次の１ページ時間内に、後述する＜非可逆符号化処理＞を行う。この＜可逆符号化処理＞と＜非可逆符号化処理＞のタイミング関係を図６に示して説明する。なお、ここで言う１ページ時間は、入力する画像の総画素数に依存して決定される。原稿画像を読取る場合の総画素数は、原稿サイズと読み取り解像度によって決定される。
【００３９】
＜可逆符号化処理＞も＜非可逆符号化処理＞も、各々１ページ時間内に、１ページの画像データに対して必要な符号化を行うが、後述するように同時に同じページを符号化処理はしない。すなわち、＜可逆符号化処理＞が終わったページ画像に対して、次のページ時間で＜非可逆符号化処理＞を行うことを、図６は表している。＜非可逆符号化処理＞が終わった画像の符号化データは、最後にメモリ１１１からハードディスクドライブ等の記憶装置に転送する。
【００４０】
或る１ページの画像にだけ着目した場合、可逆及び非可逆符号化処理による要する時間は２ページ時間となる。しかし、複数ページの画像を符号化する場合のスループット（処理性能）は、図６に示すようにパイプライン的に行われるので、実質的に１ページの画像の符号化処理は１ページ時間内で完了させることができる。
【００４１】
＜非可逆符号化処理＞では、非可逆符号化部１１５にて、メモリ１１１中の非符号化データ（各データの先頭ビットから判断できる）を、１ページ時間内で非可逆符号化して、非可逆符号化データに変換する。
【００４２】
本実施形態では、非可逆符号化の例として公知のＪＰＥＧ符号化方式を用い、８×８画素単位に相当する画像データを直交変換し、変換係数を量子化した後、ハフマン符号化処理を行うものである。
【００４３】
本発明の目的は、非可逆符号化部１１５の回路規模を小さくしてコストを抑えることにあるため、この非可逆符号化部１１５は、１ページ時間内で１ページの全画像データを符号化できるだけの性能を必要としない。すなわち、１ページ時間に対し、非可逆符号化部１１５は全画像データのＮ％を符号化する性能しかないものとする。
【００４４】
この性能は、実施形態の画像処理装置の仕様と非可逆符号化部で使用する非可逆符号化器単体の処理性能と該符号化器の並列動作個数とによって決まるものであり、先に性能が決まるものではない。ただし、実施形態では、符号化対象の画像データの解像度と各ページの入力速度を考慮して、Ｎ＝（１／１６〜１／４）×１００％の範囲の性能を想定している。
【００４５】
判定部１０３が非可逆符号化と判定したタイル数が、画像データ１ページの全タイル数に対する比率（以下「非可逆符号化比率」と称す）がＮ％を超えたとする。この場合、メモリ１１１内の非符号化データの非可逆符号化処理は１ページ時間内ではできなくなる。
【００４６】
本実施形態の画像処理装置は、この問題を解決するために、非符号化データに対して再帰的に解像度変換を適用してデータ量の削減を図り、非可逆符号化の対象となるデータがＮ％以下になるようにしている。
【００４７】
解像度変換を行うかどうか、解像度変換を行う場合に何段階行うかを、非可逆符号化比率に基づいて制御する。以下では、非可逆符号化比率によって、解像度変換処理のフローがどのように変るかを説明する。
【００４８】
＜非可逆符号化比率≦Ｎ（％）の場合＞
判定部１０３は、選択部１０９に判定結果（選択信号とも言う）を出力する際に、「非可逆」と判定したタイル数をカウントしていく。１ページの画像の総タイル数は、入力される画像データの画素数に依存する。従って１ページ分の可逆符号化処理が完了した場合の非可逆符号化比率は、総タイル数に対する「非可逆」と判定したタイル数の比率で求めることができる。ここで説明する＜非可逆符号化比率≦Ｎ（％）の場合＞の処理は、１ページの画像に対する可逆符号化処理が完了するまでに、非可逆符号化比率がＮ％を越えなかった場合の処理でもある。
【００４９】
なお、誤解のないように敢えて説明するが、実施形態では非可逆符号化部１１５はＪＰＥＧ符号化を採用しているので、符号化の最小単位は８×８画素サイズとなる。１タイルは３２×３２画素としているので、１タイルに含まれる８×８画素のブロック数は１６個となる。従って、非可逆符号化部１１５の８×８画素ブロックで換算した場合、性能値Ｎの１６倍となる。
【００５０】
判定部１０３が非可逆符号化と判定したタイルの比率がＮ％以下であれば、それに対応する非符号化データの比率もＮ％以下になるため、解像度変換を行わなくても１ページ時間内で、非可逆符号化することが可能である。該比率がＮ％以下であれば、非可逆符号化すべき領域がページ内のどこにあってもよいことを図７と図８を用いて説明する。
【００５１】
図７（ａ）、（ｂ）に示した２つのページ画像の内、図７（ａ）のページ番号「１」の画像には、非可逆符号化と判定された領域が、そのページの右上の部分にＮ％存在する。この場合、図８の上段に示すように１ページ時間内の早い段階で、メモリ１１１に非符号化データが格納され始め、Ｎ％の割合の非符号化データが蓄積される。
【００５２】
この非符号化データは、次のページ時間をフルに使って、非可逆符号化部１１５にて非可逆符号化され、符号化データに変換される。図８の下段に、非符号化データの減り方と、符号化データの増え方を示している。
【００５３】
このように、２ページ時間経過後には、符号化対象ページの画像データは全て符号化され、非可逆符号化データもしくは、１ページ時間前に符号化済みの可逆符号化データへと変換される。
【００５４】
図７（ｂ）に示した２つ目の例であるページ番号「２」の画像は非可逆符号化と判定された領域がページの右下の部分にＮ％弱存在する。この場合、図８の上段に示すように１ページ時間内の遅い段階で、メモリ１１１に非符号化データが格納され始め、Ｎ％弱の割合の非符号化データが蓄積される。
【００５５】
非可逆符号化と判定された領域がページのどの位置にあっても、次のページ時間における非可逆符号化処理の開始時間は同じであり、違いが出るのは、非符号化データ量の割合によって、非可逆符号化処理の終了時間が変ることである。図８の下段に示した２つの例は、その違いを表わしている。ページ番号「２」の画像の例（右側）では、該割合がＮ％より若干少ないため、非可逆符号化処理もその分だけ早く終了し、非可逆符号化データもその時点から増加せず一定で推移する。これ以外は、ページ番号「１」の例と同じである。
【００５６】
＜Ｎ（％）＜非可逆符号化比率≦４×Ｎ（％）の場合＞
この処理は、１ページの画像の可逆符号化処理を行なっている最中、すなわち、１ページの画像の可逆符号化処理が完了する前に、非可逆符号化比率がＮ％を越えた場合の処理である。
【００５７】
非可逆符号化比率がＮ％を超えた場合（このとき、当然、非可逆符号化比率は４×Ｎ％以下である）は、非圧縮画像データの解像度を水平、垂直方向各々に対し半分に落とす解像度変換を１回適用する。この結果、非符号化データ量を１／４に削減することになる。すなわち、１ページ時間内に非可逆符号化処理ができるようになる。なお、解像度変換では、オリジナルの２×２画素から変換後の１画素を生成することになる。この一例としては、オリジナルの２×２画素の予め決まった位置の画素の値を変換後の１画素の値とする、或いは、オリジナルの２×２画素の平均値を変換後の画素の値として決める等で良いであろう。
【００５８】
以下では、図１に示す本画像処理装置のブロック図と、図９に示す各解像度のデータ量を示すグラフを用いて、解像度変換処理について説明する。
【００５９】
非可逆符号化比率がＮ％以下の間は、既に説明したとおりに動作する。ただし、図９（ａ）のタイミングＴ１で、非可逆符号化比率がＮ％を超えたことを検出したとき、メモリ１１１上の２４００ｄｐｉ解像度の非符号化データの水平、垂直方向各々の画素数を半分にする。すなわち、解像度１２００ｄｐｉに落とす。制御部１５０は、このための解像度変換部１１３に対して解像度変換処理の開始を要求する。
【００６０】
該解像度変換処理を開始すると、メモリ１１１上の解像度変換処理済み２４００ｄｐｉの非符号化データは不要になるため、これを廃棄していく。同時に、解像度変換後の非符号化データがメモリ１１１に格納されていく。つまり、解像度２４００ｄｐｉのデータ量は時間と共に減少していき、解像度１２００ｄｐｉのデータが時間と共に増加していく。
【００６１】
図９（ｂ）のタイミングＴ２は、解像度変換処理が終了したことを示している。すなわち、２４００ｄｐｉ解像度の非符号化データは全く無くなり、該データ量の１／４のデータ量の１２００ｄｐｉ非符号化データが、メモリ１１１に蓄積される。
【００６２】
タイミングＴ１の段階で、新たに入力される画像のタイルデータは、バッファ１０５を経由して、解像度変換部１０７にて水平、垂直各々を半分の解像度に落とされる。非可逆符号化と判定された場合には、選択部１０９からはバッファ１０５に格納された解像度変換後のデータが図９（ｃ）のようにメモリ１１１に格納される。これによって、メモリ１１１上の非符号化データは図９（ｄ）のように１２００ｄｐｉの解像度で蓄積され、１ページ時間内に非可逆符号化処理ができるデータ量に収まるようになる。
【００６３】
＜４Ｎ（％）＜非可逆符号化比率≦１６Ｎ（％）  の場合＞
この処理は、１ページの画像の可逆符号化処理を行なっている最中、すなわち、１ページの画像の可逆符号化処理が完了する前に、非可逆符号化比率が４×Ｎ％を越えた場合の処理である。
【００６４】
非可逆符号化比率が４×Ｎ％を超えた場合（当然、１６×Ｎ％以下の場合でもある）は、既に水平、垂直各々を半分の解像度に落とした非符号化データに、同じ解像度変換を再帰的に適用して、解像度を元の画像データの縦横各々１／４にまで落とす。一方、新たに入力される画像データは、バッファ１０５を経由して、解像度変換部１０７にて縦横各々を１／４の解像度（６００ｄｐｉ）に落とす。そして、非可逆符号化と判定されたタイルは、該解像度変換した６００ｄｐｉのデータをメモリ１１１に格納する。これにより非符号化データ量を１／１６に削減し、１ページ時間内に非可逆符号化処理ができるようにする。
【００６５】
図１０（ａ）は、メモリ１１１上の２４００ｄｐｉ非符号化データの増減を表しており、図１０（ｂ）は、該メモリ上の１２００ｄｐｉ非符号化データの増減を表している。１２００ｄｐｉデータが減少しはじめるのは、２回目の解像度変換処理が開始するタイミングである。図１０（ｃ）は、メモリ１１１に蓄積される６００ｄｐｉの非符号化データを表している。該非符号化データは、２回目の解像度変換処理や、入力画像データを解像度変換して生成される。
【００６６】
本実施形態では、Ｎ＝（１／１６〜１／４）×１００％の範囲を想定しているため、非可逆符号化比率が１６Ｎ％を超える例は示していない。しかし、可逆符号化比率が１６Ｎ％を超えたら３回目の解像度変換を、６４Ｎ％を超えたら４回目の解像度変換を行えばよいことは、容易に想像できる。
【００６７】
また、上記実施形態では、１回目の解像度変換で縦横各々を半分の解像度に落とし非符号化データ量を１／４まで削減しているが、１回目で縦横どちらか一方のみ解像度を１／２に落とし、２回目でもう一方の解像度を１／２に落とすことも可能である。その場合、１回の解像度変換によるデータ量の削減率が１／２になり、より細かく非符号化データ量を制御できるようになる。この場合、非可逆符号化比率がＮ，２Ｎ，４Ｎ，８Ｎ，１６Ｎを超えるタイミングを検出する必要がある。
【００６８】
以上であるが、上記実施形態における符号化処理は、図１９乃至図２２を用いて説明する。また、タイルのサイズは、所定の条件の元で、ユーザが任意に設定できるものとして、拡張して説明することとする。実施形態では、非可逆符号化部１１５の非可逆符号化としてＪＰＥＧ符号化を採用している。従って、タイルのサイズは８×８画素サイズの整数倍であるが、説明を簡単なものとするため、タイルサイズは水平、垂直方向とも８×２i画素数とする。また、以下の説明では、いくつかの変数が現れるが、その都度説明する。
【００６９】
先ず、ステップＳ１では、タイルサイズを決定する。タイルサイズは上記の通り、水平、垂直方向とも８×２i画素である。ユーザはこの変数ｉを、不図示の操作パネル等で設定することになる。因に、先に説明した例では、ｉ＝２の例であった。
【００７０】
次いで、ステップＳ２に進み、最初のページの符号化を開始するため、ページ番号を管理する変数Ｐに“１”を代入する。
【００７１】
次いで、ステップＳ３に進んで、符号化対象の画像データの水平、垂直方向の画素数と、決定されたタイルサイズに基づき、総タイル数Ｔmaxを決定する。原稿画像を読取る場合には、原稿サイズと読み取り解像度（実施形態では２４００ｄｐｉ）に基づき、画像データのサイズが決定できる。尚、原稿サイズを検出する構成は公知であるので、ここではその説明はしない。
【００７２】
次いで、ステップＳ４に進み、閾値Ｔｈ（）を決定する。タイルサイズを決定した際の変数ｉに依存して総タイル数Ｔmaxが決まり、この総タイル数に基づいて閾値が決まる。
Ｔｈ（０）←（Ｎ／１００）×Ｔmax
Ｔｈ（１）←（Ｎ／１００）×４×Ｔmax
Ｔｈ（２）←（Ｎ／１００）×１６×Ｔmax
：
ここで、Ｎは先に説明したように、非可逆符号化部１１５の全画像データに対する符号化性能値である。閾値Ｔｈ（）の個数が変数ｉよって制限されるのは、実施形態では非可逆符号化部１１５は最低でも８×８画素サイズを必要とするためである。
【００７３】
次いで、ステップＳ５に進んで、変数Ｔｃ、Ｃｈ、Ｒｒを初期化する。
【００７４】
変数Ｔｃは着目タイルの番号を管理する変数であり、初期値は“１”である。変数Ｃｈは判定部１０３が「非可逆」と判定したタイル数を管理する変数であり、初期値は“０”である。変数Ｒｒは解像度変換部１０７の目的解像度を管理する変数であり、初期値は“１”である。解像度変換部１０７は、バッファ１０５内のタイルサイズを水平、垂直とも１／Ｒｒにする処理を行なう。なお、もう１つの解像度変換部１１３は常に１／２に解像度変換するので、それを管理する変数は不要である。変数Ｋは、解像度変換を行なうのが何回目であるかを示す値を格納する。変数Ｋの初期値は“０”であり、後述する閾値Ｔｈ（）の１つを特定するための変数としても利用される。
【００７５】
以上が１ページの符号化のための初期化処理が完了することになり、ステップＳ６以降で符号化処理が行われることになる。
【００７６】
先ず、ステップＳ６では変数Ｐが２より大きいか否か、すなわち、これから可逆符号化を開始しようとしている画像が３ページ目以降か否かを判断している。
【００７７】
図６で説明したように、３ページ目以降の可逆符号化を開始する際には、非可逆符号化部１１５が２ページ前の画像に対して非可逆符号化処理を完了していなければならない。従って、２ページ前の非可逆符号化が完了していないと判断した場合には、ステップＳ８に進んでエラー処理を行なう。
【００７８】
ステップＳ６でＮｏ、或いは、ステップＳ７でＹｅｓと判断された場合、処理はステップＳ９に進むことになる。
【００７９】
このステップＳ９では、符号化対象の画像データ中のＴｃ番目のタイルデータを入力する。そして、ステップＳ１０において、入力したタイルデータをバッファメモリ１０５に格納する。
【００８０】
ステップＳ１１では、変数Ｒｒが“１”であるか否かを判断する。Ｒｒ＝１である場合には、解像度変換部１０７の変換処理が不要であるので、ステップＳ１３に処理を進める。また、変数Ｒｒが“１”以外である場合には、ステップＳ１２に進んで、解像度変換部１０７に１／Ｒｒをセットし、解像度変換を行なわせる。解像度変換部１０７による解像度変換結果は、バッファメモリ１０５に再格納される（上書きされる）。
【００８１】
ステップＳ１３、Ｓ１４では、可逆符号化部１０１に対し、注目タイルデータの可逆符号化処理を実行させるとともに、その注目タイルの属性情報の算出を行なわせる。
【００８２】
そして、ステップＳ１５では、算出された属性情報に基づき、注目タイルに対して、可逆符号化データを採用するか否かを判定する。
【００８３】
先の説明の通り、可逆符号化処理で注目画素を可逆符号化する際の、周辺画素を参照してその周辺画素の色数、変化の度合い、画素値のヒストグラム等から属性情報を算出する。
【００８４】
ここで属性情報の算出の具体的な例を以下に説明する。
【００８５】
先に説明したように、可逆符号化部１０１はＪＰＥＧ−ＬＳを採用し、非可逆符号化部１１５はＪＰＥＧを採用している。これらのいずれもが「ＪＰＥＧ」を冠するものであるが、その符号化アルゴリズムは全く異なる。これら符号化処理そのものは公知であるが、「ＪＰＥＧ」は自然画（特に風景や人物等）に適した符号化であり、ＪＰＥＧ−ＬＳは文字・線画に適した符号化である。この特徴を利用し、文字／線画については可逆符号化が選択され易くし、自然画については非可逆符号化が選択され易くするなるように、属性情報を算出すれば良い。
【００８６】
属性情報としては、
・タイル内に出現する色数
・タイル内の隣接する２画素間に着目し、その濃度（或いは輝度）差が所定閾値以上であると判定された回数
・タイル内の隣接する２画素間に着目し、その濃度（或いは輝度）差を水平軸としてヒストグラムを作成し、その中央値や分散値、
・生成された可逆符号化データ長
等で良いであろう。
【００８７】
そして、可逆符号化データを採用する条件を次の様にする。
１．タイル内に出現する色数が或る閾値以下、
２．タイル内の隣接する２画素間に着目し、その濃度（或いは輝度）差が所定閾値以上であると判定された回数が或る閾値以上、
３．タイル内の隣接する２画素間に着目し、その濃度（輝度）差のヒストグラムの中央値が或る閾値以上であり、分散値が或る閾値以下、
４．生成された可逆符号化データ長が或る閾値以下の場合、
（ここで、上記の各閾値はタイルサイズに依存して決めることが望ましい）。
【００８８】
ステップＳ３１５では、上記条件１乃至４が全て満たされる場合には、注目タイルに対しては「可逆」、いずれかが満たされない場合には「非可逆」と判断する。
【００８９】
なお、算出する属性の種類、及び、可逆／非可逆の判定条件は一例であって、これによって本願発明が限定されるものではない。例えば、条件１乃至４の少なくとも１つを満たせば、「可逆」と判定しても構わない。可逆符号化は、文言通り、完全にオリジナルのタイルを復元できるので、「可逆」であると判定される可能性を高くするのは、画質の面で望ましいし、且つ、非可逆符号化部１１５の負担を減らすことになるからである。
【００９０】
さて、ステップＳ１５において、「可逆」と判断した場合には、ステップＳ１６に進んで、可逆符号化部１０１で生成された可逆符号化データをメモリ１１１に出力する。このとき、符号化データの先頭には、「可逆符号化データ」であることを示す識別ビットを付加する。
【００９１】
一方、ステップＳ１５において、「非可逆」と判断した場合には、ステップＳ１７に進み、バッファメモリ１０５に格納されてうる非符号化データをメモリ１１１に出力する。このとき、「非可逆符号化することを示すビットを、そのデータの先頭に付加する。そして、ステップＳ１８において、変数Ｃｈを“１”だけ増加させる。
【００９２】
ステップＳ１９に処理が進んだ場合には、変数Ｃｈと閾値Ｔｈ（Ｋ）とを比較する。１ページの符号化の初期段階ではＫ＝０であるので、Ｔｈ（Ｋ）＝Ｔｈ（０）＝（Ｎ／１００）×Ｔmaxである。
【００９３】
つまり、このステップＳ１９は、非可逆符号化すると判定されたデータ量が、１ページ分の画像に対する非可逆符号化部１０５の符号化性能値Ｎ以下で符号化が可能であるか否かを判断していることに他ならない。
【００９４】
従って、Ｃｈ≦Ｔｈ（Ｋ）であると判断した場合には、ステップＳ２０乃至２２の処理は行なわず、ステップＳ２３に進む。
【００９５】
また、Ｃｈ＞Ｔｈ（Ｋ）であると判断した場合には、非可逆符号化部１０５の符号化性能値Ｎを上まわる非符号化データがメモリ１１１に格納されたことを意味する。そこで、ステップＳ２０に進んで、メモリ１１１に格納された非符号化データに対する解像度低減処理を開始すべく、解像度変換部１１３に処理の開始を指示する。
【００９６】
また、注目タイル以降に入力されるタイルについては、解像度変換部１０７で解像度変換する必要がある。そこで、ステップＳ２１に進んで、変数Ｒｒを２倍にする。更に、ステップＳ２２において、解像度変換が行われたことを受けて、変数Ｋを“１”だけ増加させる。
【００９７】
ステップＳ２３では、変数Ｔｃと総タイル数Ｔｍａｘとを比較する。すなわち、１ページに対する可逆符号化フェーズが完了したか否かを判断する。否の場合には、ステップＳ２４で変数Ｔｃを“１”だけ増加させ、ステップＳ９に戻る。
【００９８】
また、ステップＳ２３で１ページに対する可逆符号化フェーズが完了したと判断した場合には、ステップＳ２５に進み、非可逆符号化部１１５に対して、メモリ１１１に格納された非符号化データの非可逆符号化処理を開始させる（詳細後述）。なお、ここでは非可逆符号化処理が完了したかどうかは問わない。
【００９９】
この後、ステップＳ２６において、符号化すべき次ページがあるか否かを判断する。次ページがあると判断した場合には、ステップＳ２７で変数Ｐを“１”だけ増加させ、ステップＳ３以降の処理を開始する。また、ステップＳ２６で次ページがないと判断した場合には、一連の可逆符号化処理を終了する。
【０１００】
次に、上記のステップＳ２５で非可逆符号化部１１５の処理を図２２のフローチャートに従って説明する。
【０１０１】
先ず、ステップＳ３１において、非可逆符号化の開始指示を受けた際にメモリ１１１に格納されていた非符号化データ（識別ビットで判断できる）を全て非可逆符号化を行なう。すなわち、非可逆符号化データであることを示すビットを先頭にした非可逆符号化データをメモリ１１１に再格納する。また、その際には、そのオリジナルであった非符号化データをメモリ１１１から削除する処理も行なう。この結果、メモリ１１１には、変数Ｐで示されるページの符号化データ（可逆符号化データと非可逆符号化データが混在している）が出来上ることになる。
【０１０２】
処理はステップＳ３２に進み、メモリ１１１内の符号化データを所定のフォーマットにし、ＨＤＤ４１３にファイルとして格納する。なお、非可逆符号化データに対して解像度変換を何回行なったかを示すデータを、ファイルヘッダに書き込む。
【０１０３】
この後、変数Ｐで示される非可逆符号化＆ファイル保存処理（非可逆符号化フェーズ）が完了したことを示すフラグをオンにする。このフラグは、既に説明した、ステップＳ７で判断することになる。
【０１０４】
以上説明したように本実施形態によれば、図６に示したタイミングに従って符号化処理を行なうことが可能になる。特に、可逆符号化フェーズにて、非可逆符号化部１１５の性能値Ｎを越えたとしても、解像度変換によって非符号化データ量を可逆符号化部１１５の性能値Ｎ以下にまで少なくすることが可能になる。
【０１０５】
なお、上記実施形態では、ステップＳ７でＮｏと判断された場合にエラー処理（中断）を行なうものとした。しかしながら、本実施形態を例えば複写機に適用し、次の原稿の読み取りタイミングが遅れることが許容できるあれば、ステップＳ７でＹｅｓと判断されるまで待つようにしても良い。すなわち、ステップＳ７でＮｏと判断された場合には、再びステップＳ７に戻るようにしても構わない。
【０１０６】
＜第２の実施形態＞
次に本発明に係る第２の実施形態を説明する。本第２の実施形態における符号化処理の基本構成を図２に示す。また、その動作を図１１、図１２を用いて説明する。
【０１０７】
なお、図２において、図１と実質的に同じ機能を有する構成については、同一符号を付し、その説明は省略する。
【０１０８】
本第２の実施形態は、非可逆符号化部１１５の性能に基づき、符号化データ量が、あらかじめ定められた設定符号量に収まるようにしたものである。それを実現するために解像度の異なる可逆符号化データを生成する構成と、非可逆符号化データの圧縮率を変更するため再符号化部を設ける。これにより、符号量を細かく調整できるようにした。
【０１０９】
解像度の異なる可逆符号化データを生成するために、解像度変換部２０１にて、入力画像データに１／２、１／４の解像度変換度変換を適用し、１２００ｄｐｉと６００ｄｐｉの画像データを同時に生成する。
【０１１０】
そして、この２種類の解像度の画像データ各々を、可逆符号化部２０３および２０５にて可逆符号化データを生成し、それぞれの可逆符号化データを、メモリ２０７、２０９に格納する。図示では、メモリ１１１内には、メモリ領域１１１ａ、１１１ｂ、１１１ｃを設けることが示されているが、これら各メモリ領域はそれぞれ独立したメモリにしても構わない。
【０１１１】
なお、可逆符号化部１０１の符号化単位であるタイルのサイズは３２×３２画素であるのに対し、可逆符号化部２０３のそれは１６×１６画素、可逆符号化部２０５のそれは８×８画素である。これにより、可逆符号化部１０１、２０３、２０５が処理する１ページのタイル数は同じにできる。
【０１１２】
一方、新たに再符号化部２１１を設ける。この再符号化部２１１は、メモリ１１１内の非可逆符号化データを、圧縮符号化量を決めるパラメータに従って再符号処理する。この再符号化部２１１は、非可逆符号データを量子化値または逆量子化値のレベルまで復号し、前よりも粗い量子化ステップで量子化をやり直し、再びエントロピー符号化を行う。このように、量子化ステップを変更することにより、圧縮率を上げて符号量を減らす。
【０１１３】
以下、本第２の実施形態の処理内容を説明する。
【０１１４】
先ず、１ページ時間における可逆符号化フェーズは、第１の実施形態とほぼ同じである。異なる点は、可逆符号化部２０３の１６×１６画素を１タイルとした可逆符号化処理と、可逆符号化部２０５の８×８画素を１タイルとした可逆符号化処理が追加された点である。
【０１１５】
また、可逆符号化部１０１、２０３、３０５は、それぞれタイル単位の可逆符号化データ量を累積カウントするものとする。従って、第１ページ時間終了時点で、メモリ１１１領域１１１ａ、１１１ｂ、１１１ｃに格納された、どの解像度の可逆符号化データ量が設定符号量以下に収まっているかが分かる。
【０１１６】
ここで、メモリ領域１１１ａ内に非符号化データ（非可逆符号化しようとするデータ）が全く無いとする。この場合、設定符号量（目標符号量）以下に収まる最大解像度の可逆符号化データを選択しＨＤＤ４１３に出力すれば良い。図１１に示す例の場合、画像Ａは２４００ｄｐｉの解像度を、画像Ｂは１２００ｄｐｉの解像度を選択して、符号化データとする。
【０１１７】
次に、非可逆符号化すべき非符号化データがメモリ領域１１１ａに存在する場合の処理を説明する。
【０１１８】
実施形態では、非可逆符号化部１１５及び再符号化部２１１はＪＰＥＧ符号化を採用している。ＪＰＥＧ符号化処理で生成される符号量は、概ねＤＣＴ変換後の各係数を量子化する際に使用する量子化テーブルＱｉに依存する。そこで、非可逆符号化部１１５は、標準的な量子化テーブルＱ０、及び、それより大きな量子化係数を持つ量子化テーブルＱ１、Ｑ２…と、各量子化テーブルで符号化した場合の統計的に求めた符号量データとの関係をテーブルとして保持しているものとする。
【０１１９】
一般に、非可逆符号化する際に利用する量子化テーブル内の量子化ステップ値が小さい場合、復号した画像は高い画質になるものの、その符号量は多くなる。逆に、量子化ステップ値が大きい量子化テーブルを用いた場合には、符号量は少なくなるものの、画質が悪くなる。
【０１２０】
この点を考慮し、１ページ内の画像の非符号化データと判定されたタイル数に依存して、その非可逆符号化データ量を確保する。具体的には、次の通りである。
【０１２１】
先ず、設定符号量をＭｏとする。この設定符号量は、符号化しようとする画像データ４０１の総画素数（または、原稿サイズ）に依存して決定すれば良い。また、目標可逆符号量をＭｏｋ、目標非可逆符号量をＭｏｈとする。つまり、これらの関係は、Ｍｏ＝Ｍｏｋ＋Ｍｏｈになっている。
【０１２２】
１ページ時間による可逆符号化処理が完了した時のメモリ領域１１１ａに格納された符号化データ中の可逆符号化されたタイル数をＴｃｋ１とし、その符号量をＭ（Ｔｃｋ１）と表わす。また、メモリ１１１領域ａ内に格納された非符号化データのタイル数をＴｃｈ（勿論、Ｔｃｈ≦（Ｎ／１００）×Ｔmaxである）とする。また、１ページの総タイル数をＴｍａｘとする。
【０１２３】
また、メモリ領域１１１ｂ内の可逆符号化データ中、メモリ領域１１１ａ内に格納された非符号化データのタイル位置に対応する可逆符号化データを除いたタイル数をＴｃｋ２とし、その符号量をＭ２（Ｔｃｋ２）と表わす。タイル数は同じＴｃｋ１である。
【０１２４】
同様に、メモリ領域１１１ｃ内の可逆符号化データ中、メモリ領域１１１ａ内に格納された可逆符号化データのタイル位置に対応するさらなる低解像度データの可逆符号量をＭ３（Ｔｃｋ１）と表わす。
【０１２５】
さて、目標非可逆符号量Ｍｏｈは、予め設定された正の定数αを用いて次のようにして求める（このαはユーザが適宜設定可能にしても良い）。
Ｍｏｈ＝Ｍｏ×（Ｔｃｈ／Ｔｍａｘ）×α
つまり、総タイル数Ｔｍａｘに占める非符号化データのタイル数Ｔｃｈに依存して、目標非可逆符号量Ｍｏｈを決める。また、この結果、目標可逆符号化量Ｍｏｋは、Ｍｏｋ＝Ｍｏ−Ｍｏｈで求めることができる。
【０１２６】
そして、目標可逆符号化量Ｍｏｋを越えず、最大となる可逆符号化データ量を｛Ｍ１（Ｔｃｋ１）、Ｍ２（Ｔｃｋ１）、Ｍ３（Ｔｃｋ１）｝の中から決める。これは解像度を決めることと等価でもある。
【０１２７】
ここで、仮に、解像度２４００ｄｐｉが決定されたとする。この場合、１つのタイルの非可逆符号化データ量はＭｏｈ／Ｔｃｈで求めることができる。このＭｏｈ／Ｔｃｈを越え、且つ、一番近い符号量を生成するための量子化テーブルＱｉを決定する。そして、非可逆符号化部１１５により、メモリ領域１１１ａ内に格納された全非符号化データについて実際に非可逆符号化処理を行なう。
【０１２８】
実際の非可逆符号量は、符号化してみないと分からないが、最大値の何割かの量になり、前記可逆符号量を加えた値が設定符号量以下になる可能性が高い。図１２はそのような例を示している。
【０１２９】
さて、非可逆符号化部１１５で生成された非可逆符号化データ量がＭｏｈを越えてしまうことも有り得る。この場合には、量子化テーブルＱi+1を再符号化部２１１に設定し、再符号化処理を行なわせる。再符号化部２１１は、非可逆符号化データのエントロピー復号処理まで行なって量子化済みのデータまで復元する。すなわち、逆ＤＣＴ処理は行なわない。量子化済みのデータまで復元できたら、設定された量子化テーブルＱi+1（実際は比「Ｑi+1／Ｑi」）で再量子化し、エントロピー符号化を行ない、再度メモリ領域１１１ａに格納する処理を行なう。この処理を量子化テーブルＱｉで生成された全非可逆符号化データに対して行なう。そして、得られた非可逆符号化データ量がＭｏｈを越える度に、再符号化部２１１に量子化テーブルＱi+2、Ｑi+3…と設定していって、Ｍｏｈ以下の非可逆符号化データを得る。
【０１３０】
こうして、メモリ領域１１１ａ内の、可逆符号化データと、目標非可逆符号量Ｍｏｈ以下となった非可逆符号化データとタイルの順番に接続し、ファイルとしてＨＤＤ４１３に格納する。
【０１３１】
一方、決定された解像度１２００ｄｐｉであったとする。つまり、メモリ領域１１１ｂに格納された可逆符号化データを採用する場合である。この場合、メモリ領域１１１ｂに格納された可逆符号化データ中の、メモリ領域１１１ａに格納された非符号化データのタイルに対応する可逆符号化データを削除する。そして、メモリ領域１１１ｂ内に残った可逆符号化データと、目標非可逆符号量Ｍｏｈ以下となった非可逆符号化データとタイルの順番に接続し、ファイルとしてＨＤＤ４１３に格納する。
【０１３２】
また、決定された解像度６００ｄｐｉであった場合にも同様である。この場合、メモリ領域１１１ｃに格納された可逆符号化データ中の、メモリ領域１１１ａに格納された非符号化データのタイルに対応する可逆符号化データを削除する。そして、メモリ領域１１１ｃ内に残った可逆符号化データと、目標非可逆符号量Ｍｏｈ以下となった非可逆符号化データとタイルの順番に接続し、ファイルとしてＨＤＤ４１３に格納する。
【０１３３】
いずれの場合であっても、ＨＤＤ４１３に格納するファイルのヘッダには、非可逆／可逆の符号化データそれぞれ解像度に関する情報を格納する。また、非可逆符号化データを生成する際に利用した量子化マトリクステーブル又はそのテーブルを特定する情報もファイルヘッダに書き込む。
【０１３４】
以上のようにて、決定された解像度の可逆符号化データと、非可逆符号化データとで出力ファイルを生成し、ＨＤＤ４１３に格納する。なお、本第２の実施形態の場合、可逆／非可逆符号化それぞれの解像度は同じであるので、ファイルヘッダにはオリジナルの解像度に対し、どれだけ解像度を下げたかを示す情報（１、１／２、１／４…等）を書き込めば良い。
【０１３５】
以上であるが、本第２の実施形態では、非可逆符号化フェーズでは、非可逆符号化部１１５の処理に加え、再符号化部２１１の処理が加わる分だけ、必要とする時間が増える可能性がある。つまり、１ページ時間を越えてしまうことを否定できない。これに対応するためには、非可逆符号化部１１５の性能値Ｎを、第１の実施形態よりも小さなものとし、余裕を持たせれば良いであろう。
【０１３６】
また、本第２の実施形態に従えば、次のようなバリエーションが考えられる。
１．＜非可逆符号の再符号化部が無い構成＞
この構成では、非符号化データ量から見積った非可逆符号量に、可逆符号量を加えた値が設定符号量より小さくなるように可逆符号化データの解像度を決める。この場合、実際の符号量（非可逆符号化後の符号量）は、設定符号量よりかなり小さくなってしまう可能性がある。
２．＜非可逆符号の再符号化部が無いが、非可逆符号化部において圧縮率の異なる２種類の符号化データを生成する＞
この場合、圧縮率が高い方の非可逆符号化データは、再符号化後の非可逆符号化データと解釈することができ、圧縮率が低い方の非可逆符号化データで、設定符号量を超えてしまったら、圧縮率が高い方の非可逆符号化データに切換えればよい。
【０１３７】
＜第３の実施形態＞
第３の実施形態を以下に説明する。本第３の実施形態における基本構成を図３に示し、図１３を用いて説明する。
【０１３８】
本実施形態は、前記第２の実施形態に選択部３０３、選択部３０７、ならびに、各選択部から出力される符号化データを格納するメモリ領域１１１ｄ、１１１ｅを付加した構成であり、それ以外は同じである。
【０１３９】
前記第１および第２の実施形態では、可逆符号化するタイル画像をそれ以上に細かく分類しなかった。本実施形態では、可逆符号化するタイル画像を、例えば、その階調数の多さで分類し、異なる解像度で扱うことがある。
【０１４０】
２値テキスト画像のように、文字の輪郭がメインの情報となる画像では、解像度が極めて重要である。その一方、多くの階調を持つグラフィックス画像では、その階調も情報として重要な意味を持つため、相対的に輪郭情報の重みが下がり、２値テキスト画像ほど、解像度の重要性が高くない。
【０１４１】
よって、可逆符号化した画像データを解像度の重要性が高い画像（Ｈ画像）領域と低い画像（Ｌ画像）領域とに分けることができる。判定部１０３はタイル単位でこの分類判定を行う。この分類判定のために必要な階調数などの画像属性情報は、可逆符号化部１０１から受け取る。
【０１４２】
選択部３０３と３０７では、判定結果に基づきＨ画像領域では解像度の高い可逆符号化データを選択し、Ｌ画像領域では解像度の低い可逆符号化データを選択して、各々をメモリ領域１１１ｄと１１１ｅに格納する。ただし、各可逆符号化データのヘッダには、可逆であることを示すビットと、解像度情報を示すビットを付加する。
【０１４３】
この結果、メモリ領域１１１ｄには２４００ｄｐｉのＨ画像と１２００ｄｐｉのＬ画像の可逆符号化データが格納され、メモリ領域１１１ｅには１２００ｄｐｉのＨ画像と６００ｄｐｉのＬ画像の可逆符号化データが格納される。
【０１４４】
以上に説明した解像度の混在した可逆符号化データ量と、同一解像度の可逆符号化データ量とを一緒に表したグラフの一例を図１３に示す。非可逆符号化すべき非符号化データが全く無ければ、設定符号量以下に収まる最大解像度の可逆符号を選択し、符号化データとすればよい。図１３に示す例の場合、Ｈ画像の解像度が２４００ｄｐｉ、Ｌ画像の解像度が１２００ｄｐｉの符号化データを選択する。
【０１４５】
非可逆符号化すべき非符号化データがある場合には、第２の実施形態と同様に、その非符号化データの占める割合に応じて、いずれのメモリ領域の可逆符号化データを採用するかを決定すれば良い。ただし、第３の実施形態では、１つの出力ファイルには、解像度の異なる符号化データが含まれるので、それぞれのタイルのヘッダには、可逆／非可逆の識別ビット、及び、解像度を示すビットを付加する。その他の制御方法は、前記第２の実施形態と同様であるので省略する。
【０１４６】
＜第４の実施形態＞
以下、本発明に係る第４の実施形態を説明する。図１４は本第４の実施形態における装置の基本構成ブロック図である。
【０１４７】
本第４の実施形態では、メモリ１１１に非符号化データとして保存したデータの解像度変換を行わない。そのため、図１における解像度変換部１１３を必要としない。
【０１４８】
その替わりに、バッファ１０５に格納された２４００ｄｐｉのタイルデータから、解像度変換１２００ｄｐｉと６００ｄｐｉの解像度データを同時に生成する解像度変換部１４０１を持つ。解像度２４００ｄｐｉでは３２×３２画素サイズの画像データ、解像度１２００ｄｐｉでは１６×１６画素サイズの画像データ、６００ｄｐｉでは８×８画素サイズの画像データが選択部１０９に供給される。
【０１４９】
そして、判定部１０３の判定結果が非可逆である場合に、バッファ１０５から出力される２４００ｄｐｉのタイルデータと、解像度変換した１２００ｄｐｉと６００ｄｐｉの計３種類の解像度の非符号化データをメモリ１１１に格納する。
【０１５０】
１ページ時間内において、判定部１０３の判定結果が「非可逆」であり、それが継続する場合、メモリ１１１に３種類の解像度の非符号化データがどのように蓄えられて行くのかを表したのが図１５に示すグラフである。解像度の二乗に比例した比率、すなわち１６：４：１の割合で各解像度のデータが蓄積されていく。
【０１５１】
２４００ｄｐｉの非符号化データ量がＮに達すると、１２００ｄｐｉ、６００ｄｐｉの非符号化データ量は各々、Ｎ／４、Ｎ／１６になり、合計で（１＋５／１６）Ｎのデータ量になる。よって、非符号化データを格納するメモリ容量は、前記第１の実施形態に比べ５Ｎ／１６だけ多くの容量を必要とする。
【０１５２】
２４００ｄｐｉの非符号化データ量がＮを超えると、この解像度のデータを所定時間内に非可逆符号化することが出来なくなるため、このデータをメモリ１１１から廃棄（削除）する。図１５における時刻Ｔ１はそのタイミングを表し、この時、メモリに保存中の非符号化データ量が一気に（１＋５／１６）Ｎから５Ｎ／１６に減少する。もし、Ｔ１以前に１ページ時間が終了すれば、２４００ｄｐｉ解像度の非符号化データの非可逆符号化が可能である。
【０１５３】
Ｔ１で２４００ｄｐｉの非符号化データを廃棄すると、１２００ｄｐｉ、６００ｄｐｉ解像度の非符号化データが残る。その後、非可逆の判定結果がさらに継続すると、該２種類の解像度の非符号化データ量が４：１の割合で増加していく。
【０１５４】
ここで、もし１２００ｄｐｉの非符号化データ量がＮに達すると、６００ｄｐｉ解像度の非符号化データ量は各々、Ｎ／４になり、合計で（１＋１／４）Ｎ＝１．２５Ｎのデータ量になる。
【０１５５】
２４００ｄｐｉデータの場合と同様、１２００ｄｐｉの非符号化データ量がＮを超えると、この解像度のデータを所定時間内に非可逆符号化することが出来なくなるため、この１２００ｄｐｉの非符号化データをメモリ１１１から廃棄する。図１５における時刻Ｔ２はそのタイミングを表す。Ｔ２以後は、６００ｄｐｉ解像度の非符号化データのみを蓄積していく。
【０１５６】
このようにして、非可逆符号化対象の非符号化データ量がＮ以下となるように、解像度を２４００ｄｐｉから１２００ｄｐｉ、６００ｄｐｉへと切換えていき、不要になった解像度の非符号化データを廃棄していく。
【０１５７】
また、上記の説明からも容易に判るように、１ページ時間経過しても、メモリ１１１に複数の解像度の非符号化データが存在していた場合には、その中の最も高い解像度の非符号化データについて非可逆符号化部１１５が符号化処理を行なえば良い。
【０１５８】
本第４の実施形態では、メモリ１１１に非符号化データとして保存したデータの解像度変換を行わないので、該解像度変換に関する複雑な制御が不要となり、制御を単純化できるが、非符号化データを格納するメモリ量がやや増える。
【０１５９】
解像度を２４００ｄｐｉから１２００ｄｐｉへ切換える際の、２４００ｄｐｉの非符号化データ量をＮから２０Ｎ／２１へ若干減らすしたとする。この場合の非符号化データ量のピークは（１＋５／１６）Ｎ×２０／２１＝１．２５Ｎとなるので、時刻Ｔ２におけるピークと同じ値になる。よって、メモリ量の増加はＮ／４に抑えられる。
【０１６０】
以上、本発明にかかる符号化装置の各実施形態を説明した。
【０１６１】
以下では、上記各実施形態に対応する復号装置について説明する。
【０１６２】
＜第１実施形態に対応する復号装置＞
第１の実施形態の画像処理装置で生成される符号化データを、復号するための装置の構成を図１６に示す。図１８に示す復号処理のタイミングチャートを用いて図１６の説明を行う。
【０１６３】
符号化処理を行うのに２ページ時間を要したのと同様、復号処理を行うのに２ページ時間を要する。
【０１６４】
まず、ハードディスクドライブ４１３に保存してある符号化データをページ単位でメモリ１１１’に転送する。この符号化データは、タイル単位で可逆符号化もしくは非可逆符号化された符号化データである。また、ファイルヘッダには、非可逆符号化データを生成する際に、何回解像度変換を行なったかを示す情報も格納されている。
【０１６５】
第１ページ時間では、タイル単位で非可逆符号化されたデータを非可逆復号部１６０１にて復号処理して、再びメモリ１１１’に格納する。
【０１６６】
この非可逆復号部１６０１はＮ％以上の処理性能が必要であり、復号した非符号化データを格納するのに１ページ分の画像データ量のＮ％のメモリ容量が必要である。
【０１６７】
第２ページ時間では、タイル単位で可逆符号化された符号化データを可逆復号部１６０３にて復号処理して画像データ１６０９として出力する。
【０１６８】
また、非可逆復号済みのタイルデータについては、解像度変換回数分だけ、解像度を高くする変換が必要となる。例えば、ファイルヘッダに２回解像度変換を行なったことを示す情報が格納されていた場合には、解像度変換部１６０５は、非可逆復号部１６０１で得られた画像の画素数を水平垂直方向とも２2＝４倍に拡大する。拡大処理は、１復号画素を４×４画素数だけ繰り返すか、或いは隣接する復号画素を線形補間して画素数を増やしても良い。また、解像度変換回数が０の場合、すなわち、非可逆符号化データの解像度が２４００ｄｐｉの場合は、解像度変換部１６０５で何も処理せずに、入力データをそのまま出力する。
【０１６９】
以上で説明した復号処理により、前記第１の実施形態で生成した符号化データを、元のデータに戻すことができる。
【０１７０】
＜第２〜第４実施形態に対応する復号装置＞
前記第２〜第４の実施形態の画像処理装置で生成される符号化データを、復号するための装置の構成を図１７に示す。図１６の構成と同様、図１８に示すタイミングチャートに基づき復号処理を行う。
【０１７１】
図１６の構成の復号処理と基本は同じであり、以下の点が異なる。
（１）非可逆復号部１６０１で復号処理したデータを、そのままメモリ１１１’に格納するのではなく、可逆符号化部１７０１にて符号化した後、メモリ１１１’に格納する。
（２）すべてのデータは一旦、可逆符号化データに変換される。
（３）第２ページ時間で、すべての符号化データを可逆復号する。
（４）可逆復号後のデータに対し、その解像度に応じて解像度変換部１６０５にて解像度変換処理を行う。解像度変換後のデータは全て２４００ｄｐｉの画像データになる。
【０１７２】
以上の復号処理により、前記第２から第４の実施形態で生成した符号化データを、元のデータに戻すことができる。
【０１７３】
なお、上記実施形態では、可逆符号化としてＪＰＥＧ−ＬＳ、非可逆符号化としてＪＰＥＧを採用する例を説明したが、これによって本願発明が限定されるものではない。他の可逆、非可逆符号化技術を適用しても構わないからである。ただし、ＪＰＥＧ−ＬＳとＪＰＥＧの関係のように、一方が２値画像、一方が自然画に適し、互いに補う関係にある２つの符号化技術を採用することが望ましい。
【図面の簡単な説明】
【０１７４】
【図１】第１の実施形態における画像符号化装置のブロック構成図である。
【図２】第２の実施形態における画像符号化装置のブロック構成図である。
【図３】第３の実施形態における画像符号化装置のブロック構成図である。
【図４】従来の画像処理装置の構成の一例を表わす図である。
【図５】従来の画像処理装置の構成の一例を表わす図である。
【図６】実施形態における符号化処理のタイミングチャートを表わす図である。
【図７】非可逆符号化と判定した領域のレイアウトの一例を示す図である。
【図８】解像度変換が無い場合の非符号化データの増減と非可逆符号化データの増加の様子を表わす図である。
【図９】解像度変換（１回）による各解像度の非符号化データ量の増減を表わす図である。
【図１０】解像度変換（２回）による各解像度の非符号化データ量の増減を表わす図である。
【図１１】２種類の画像に対する複数解像度の可逆符号化データ量を表わす図である。
【図１２】可逆符号量に予測値あるいは実測値の非可逆符号量を加えた符号量を表す図である。
【図１３】第３の実施形態における複数解像度の可逆符号化データ量を表わす図である。
【図１４】第４の実施形態における画像符号化装置のブロック構成図である。
【図１５】メモリ上の各解像度の非符号化データ量の増加の推移を示す図である。
【図１６】第１の実施形態から得られる符号化データを復号する装置のブロック構成図である。
【図１７】第２乃至第４の実施形態で得られる符号化データを復号する装置のブロック構成図である。
【図１８】復号処理のタイミングチャートを表わす図である。
【図１９】第１の実施形態における可逆符号化フェーズの処理手順を説明するためのフローチャートである。
【図２０】第１の実施形態における可逆符号化フェーズの処理手順を説明するためのフローチャートである。
【図２１】第１の実施形態における可逆符号化フェーズの処理手順を説明するためのフローチャートである。
【図２２】第１の実施形態における非可逆符号化フェーズの処理手順を説明するためのフローチャートである。
【図１】
0004697967.tif 000002
【図２】
0004697967.tif 000003
【図３】
0004697967.tif 000004
【図４】
0004697967.tif 000005
【図５】
0004697967.tif 000006
【図６】
0004697967.tif 000007
【図７】
0004697967.tif 000008
【図８】
0004697967.tif 000009
【図９】
0004697967.tif 000010
【図１０】
0004697967.tif 000011
【図１１】
0004697967.tif 000012
【図１２】
0004697967.tif 000013
【図１３】
0004697967.tif 000014
【図１４】
0004697967.tif 000015
【図１５】
0004697967.tif 000016
【図１６】
0004697967.tif 000017
【図１７】
0004697967.tif 000018
【図１８】
0004697967.tif 000019
【図１９】
0004697967.tif 000020
【図２０】
0004697967.tif 000021
【図２１】
0004697967.tif 000022
【図２２】
0004697967.tif 000023