(57)【特許請求の範囲】
【請求項１】
入力された画像に対し２値化処理を施し出力する画像処理装置であって、
その入力された画像のページサイズ、色モード、圧縮方式、入力速度または出力速度のうちいずれか１つ以上からプレーン毎にページ単位の圧縮コードサイズまたは圧縮率の閾値を決定する閾値決定手段と、
前記２値化された入力画像に対する圧縮処理により生成された圧縮コードサイズおよび前記閾値決定手段により決定された閾値に応じて圧縮処理を中止し、入力された非圧縮画像を記憶装置に記憶する圧縮手段
を具備し、
前記閾値決定手段は、上記圧縮手段による圧縮処理が中止せずに完了した場合は、その残処理時間に応じて同一ページの次のプレーンに対する閾値を決定する
ことを特徴とする画像処理装置。
【請求項２】
入力された画像に対し２値化処理を施し出力する画像処理装置であって、
その入力された画像のページサイズにもとづくバンドサイズ、色モード、圧縮方式、入力速度または出力速度のうちいずれか１つ以上からプレーン毎にバンド単位の圧縮コードサイズまたは圧縮率の閾値を決定する閾値決定手段と、
前記２値化された入力画像に対する圧縮処理により生成された圧縮コードサイズおよび前記閾値決定手段により決定された閾値に応じて圧縮処理を中止し、入力されたバンドサイズの非圧縮画像を記憶装置に記憶する圧縮手段
を具備し、
前記閾値決定手段は、上記圧縮手段による圧縮処理が中止せずに完了した場合は、その残処理時間に応じて同一プレーンの次のバンドに対する閾値を決定する
ことを特徴とする画像処理装置。
【請求項３】
画像処理装置に、入力された画像に対し２値化処理を施し出力させる画像処理プログラムであって、
前記画像処理装置に、
その入力された画像のページサイズ、色モード、圧縮方式、入力速度または出力速度のうちいずれか１つ以上からプレーン毎にページ単位の圧縮コードサイズまたは圧縮率の閾値を決定する閾値決定機能と、
前記２値化された入力画像に対する圧縮処理により生成された圧縮コードサイズおよび前記閾値決定機能により決定された閾値に応じて圧縮処理を中止し、入力された非圧縮画像を記憶装置に記憶する圧縮機能
を実現させ、
前記閾値決定機能は、上記圧縮機能による圧縮処理が中止せずに完了した場合は、その残処理時間に応じて同一ページの次のプレーンに対する閾値を決定する
ことを特徴とする画像処理プログラム。
【請求項４】
画像処理装置に、入力された画像に対し２値化処理を施し出力させる画像処理プログラムであって、
前記画像処理装置に、
その入力された画像のページサイズにもとづくバンドサイズ、色モード、圧縮方式、入力速度または出力速度のうちいずれか１つ以上からプレーン毎にバンド単位の圧縮コードサイズまたは圧縮率の閾値を決定する閾値決定機能と、
前記２値化された入力画像に対する圧縮処理により生成された圧縮コードサイズおよび前記閾値決定機能により決定された閾値に応じて圧縮処理を中止し、入力されたバンドサイズの非圧縮画像を記憶装置に記憶する圧縮機能
を実現させ、
前記閾値決定機能は、上記圧縮機能による圧縮処理が中止せずに完了した場合は、その残処理時間に応じて同一プレーンの次のバンドに対する閾値を決定する
ことを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力された画像に対し２値化処理を施し出力する画像処理装置、画像処理方法および画像処理装置に入力された画像に対し２値化処理を施し出力させる画像処理プログラムに関する。
【背景技術】
【０００２】
ＡＤＦ（Ａｕｔｏ  Ｄｏｃｕｍｅｎｔ  Ｆｅｅｄｅｒ、自動原稿搬送装置）を使用して複数ページのドキュメントをスキャンしてコピーする画像処理装置において、画像処理装置内に取り込まれた画像は一旦メモリにストアされるが、順次、次のページがＡＤＦによりスキャンされて画像処理装置内に取り込まれるため多くのメモリが必要となる。
しかし、メモリ量は有限であり、またシステムの性能を最大にするためには印字装置（出力機能）と同期を取る必要があるため、通常、各ページの画像は圧縮され、かつその圧縮コードサイズの上限値は規定されるが、圧縮コードサイズは圧縮処理が完了するまでわからないという問題がある。
そこで、事前に圧縮コードサイズを推定する発明がある。例えば特許文献１には、本スキャン画像データよりもデータ量の少ない予備スキャン画像データから、規定された圧縮値以下になるような圧縮値を推定する圧縮値推定部を持つ画像処理装置およびその方法が記載されている。
一方、ハードディスク装置の低価格化、高容量化及び高速化に伴い、メモリ上の画像データを圧縮してハードディスクにストアするという方式が採られるようになっている。例えば特許文献２には、入力された画像に対し圧縮の前処理（サブサンプリング処理）のみを実行して記憶部に記憶し、次のページの入力処理と平行して記憶部から画像を取り出し、圧縮の後処理（ＪＰＥＧ圧縮）を実行して記憶部に記憶することを特徴とする画像読取装置が記載されている。
また、ＪＰＥＧ２０００の１パスでのレート制御を利用した発明もある（例えば、特許文献３参照）。
ここで、上記３つの発明は、多値画像およびＪＰＥＧ／ＪＰＥＧ２０００の非可逆圧縮処理を想定したものであるが、２値画像、特に誤差拡散あるいはディザ処理された２値画像に対しては、可逆圧縮処理を行う必要があるが、一方で原画像のサイズより圧縮コードサイズの方が大きくなる場合がある。それに対しては、例えば特許文献４に記載されているように、１ライン毎の符号量に閾値を設け、符号化後に符号量が閾値を越えた場合には、そのラインは符号化を行わないことを特徴とするファクシミリ装置があり、また、例えば特許文献５に記載されているように、１ライン毎の符号量に閾値を設け、符号化の途中、あるいは入力された判定タイミングにおいて符号量が閾値を越えた場合には、そのラインは符号化を行わないことを特徴とするファクシミリ装置がある。
【特許文献１】特開２０００−３０７８７４号公報
【特許文献２】特開２００４−０３２６７２号公報
【特許文献３】特開２００５−１６７８４１号公報
【特許文献４】特開平６−１９７１８９号公報
【特許文献５】特開平１１−２７５３３１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、このような従来の技術では、以下のような問題点がある。
（１）特許文献１記載の画像処理装置およびその方法では、予備スキャンを行う必要があり、これによりＡＤＦの性能をフルに発揮できなくなり、システム全体の性能が低下する。
（２）特許文献２記載の画像読取装置と画像形成装置は、多値画像に対するＪＰＥＧ圧縮を想定したものであり、特に誤差拡散あるいはディザ処理された２値画像に対する圧縮方式として想定されるＭＨ／ＭＲ／ＭＭＲでは、ＪＰＥＧでのサブサンプリング処理のような前処理はない。
（３）特許文献３記載の画像処理装置、プログラム、および記憶媒体では、圧縮方式としてＪＰＥＧ２０００を想定しているが、ＪＰＥＧ２０００の場合には、ＪＰＥＧが多値（８ｂｉｔ）のみを対象とするのに対し、１〜３８ｂｉｔの画像を対象とするため、特に誤差拡散あるいはディザ処理された２値画像にも適用可能ではあるが、処理速度が遅く、かつ圧縮時間および伸長時間が予測できないという欠点がある。
（４）特許文献４記載のファクシミリ装置と特許文献５記載のファクシミリ装置では、１ライン毎の符号量に閾値を設けているため、圧縮時間および伸長時間が予測できないという欠点がある。
本発明は、このような従来の技術が有する問題点に着目してなされたもので、ＡＤＦを使用して連続入力された画像を誤差拡散あるいはディザ処理等された２値画像に変換して出力する画像処理装置、画像処理方法および画像処理プログラムにおいて、入出力性能を低下させることなく上記２値画像を圧縮／伸長処理可能な画像処理装置、画像処理方法および画像処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００４】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
［１］  入力された画像に対し２値化処理を施し出力する画像処理装置であって、
その入力された画像のページサイズ、色モード、圧縮方式、入力速度または出力速度のうちいずれか１つ以上からプレーン毎にページ単位の圧縮コードサイズまたは圧縮率の閾値を決定する閾値決定手段と、
前記２値化された入力画像に対する圧縮処理により生成された圧縮コードサイズおよび前記閾値決定手段により決定された閾値に応じて圧縮処理を中止し、入力された非圧縮画像を記憶装置に記憶する圧縮手段
を具備し、
前記閾値決定手段は、上記圧縮手段による圧縮処理が中止せずに完了した場合は、その残処理時間に応じて同一ページの次のプレーンに対する閾値を決定する
ことを特徴とする画像処理装置。
【０００６】
［２］  入力された画像に対し２値化処理を施し出力する画像処理装置であって、
その入力された画像のページサイズにもとづくバンドサイズ、色モード、圧縮方式、入力速度または出力速度のうちいずれか１つ以上からプレーン毎にバンド単位の圧縮コードサイズまたは圧縮率の閾値を決定する閾値決定手段と、
前記２値化された入力画像に対する圧縮処理により生成された圧縮コードサイズおよび前記閾値決定手段により決定された閾値に応じて圧縮処理を中止し、入力されたバンドサイズの非圧縮画像を記憶装置に記憶する圧縮手段
を具備し、
前記閾値決定手段は、上記圧縮手段による圧縮処理が中止せずに完了した場合は、その残処理時間に応じて同一プレーンの次のバンドに対する閾値を決定する
ことを特徴とする画像処理装置。
【００１０】
［３］  画像処理装置に、入力された画像に対し２値化処理を施し出力させる画像処理プログラムであって、
前記画像処理装置に、
その入力された画像のページサイズ、色モード、圧縮方式、入力速度または出力速度のうちいずれか１つ以上からプレーン毎にページ単位の圧縮コードサイズまたは圧縮率の閾値を決定する閾値決定機能と、
前記２値化された入力画像に対する圧縮処理により生成された圧縮コードサイズおよび前記閾値決定機能により決定された閾値に応じて圧縮処理を中止し、入力された非圧縮画像を記憶装置に記憶する圧縮機能
を実現させ、
前記閾値決定機能は、上記圧縮機能による圧縮処理が中止せずに完了した場合は、その残処理時間に応じて同一ページの次のプレーンに対する閾値を決定する
ことを特徴とする画像処理プログラム。
【００１１】
［４］  画像処理装置に、入力された画像に対し２値化処理を施し出力させる画像処理プログラムであって、
前記画像処理装置に、
その入力された画像のページサイズにもとづくバンドサイズ、色モード、圧縮方式、入力速度または出力速度のうちいずれか１つ以上からプレーン毎にバンド単位の圧縮コードサイズまたは圧縮率の閾値を決定する閾値決定機能と、
前記２値化された入力画像に対する圧縮処理により生成された圧縮コードサイズおよび前記閾値決定機能により決定された閾値に応じて圧縮処理を中止し、入力されたバンドサイズの非圧縮画像を記憶装置に記憶する圧縮機能
を実現させ、
前記閾値決定機能は、上記圧縮機能による圧縮処理が中止せずに完了した場合は、その残処理時間に応じて同一プレーンの次のバンドに対する閾値を決定する
ことを特徴とする画像処理プログラム。
【００１２】
前記本発明は次のように作用する。
本発明における画像処理装置、画像処理方法および画像処理プログラムは、入力された画像に対し２値化処理を施し出力する。
閾値決定手段は、入力された画像のページサイズ、色モード、圧縮方式、入力速度または出力速度のうちいずれか１つ以上からプレーン毎にページ単位の圧縮コードサイズの閾値を決定し、圧縮手段は、前記２値化された入力画像に対する圧縮処理により生成された圧縮コードサイズおよび前記閾値決定手段により決定された閾値に応じて圧縮処理を中止し、入力された非圧縮画像を記憶装置に記憶する。
また、閾値決定手段は、入力された画像のページサイズにもとづくバンドサイズ、色モード、圧縮方式、入力速度または出力速度のうちいずれか１つ以上からプレーン毎にバンド単位の圧縮コードサイズの閾値を決定し、圧縮手段は、前記２値化された入力画像に対する圧縮処理により生成された圧縮コードサイズおよび前記閾値決定手段により決定された閾値に応じて圧縮処理を中止し、入力されたバンドサイズの非圧縮画像を記憶装置に記憶する。
これらによって、入出力性能を低下させることなく誤差拡散あるいはディザ処理等された２値画像に対して圧縮／伸長処理が可能になる。
【発明の効果】
【００１３】
本発明にかかる画像処理装置、画像処理方法および画像処理プログラムによれば、入出力性能を低下させることなく２値画像に対する圧縮処理が可能になり、より多くの画像を記憶装置にストア可能となる。
【発明を実施するための最良の形態】
【００１４】
以下、図面に基づき本発明の好適な実施の形態を説明する。
図１は、本発明の実施の形態である画像処理装置１の概念的なブロック構成例を示した図である。
画像処理装置１は、画像を対象としたスキャン、コピーあるいはプリントに用いられるものであり、具体的にはスキャナー、複写機、プリンター、ファックス、複合機（スキャナー、ファックス、プリンター等の統合したもの）に実現される。
画像処理装置１を構成する各処理部は、入力制御部２、画像処理部３、閾値決定部４、圧縮処理部５、ハードディスク６、出力制御部７、伸長処理部８、メモリ９である。
図１に示すように、データの流れは実線の矢印で示し、コントロールの流れは点線の矢印で示している。点線の矢印の元側の処理部は、矢印の先側の処理部に対してコントロールすることを示している。矢印が両端にあるものは互いの処理部でデータをやり取りすること、またはコントロールし合うことを示している。
【００１５】
なお、処理部は、一般的に論理的に分離可能なハードウェア、ソフトウェア等の部品、モジュールを指す。したがって、本実施の形態における処理部はハードウェア構成における処理部のことだけでなく、プログラムにおける処理部も指す。したがって、本実施の形態は、装置、プログラムおよび方法の説明をも兼ねている。また、処理部は機能にほぼ一対一に対応しているが、実装においては、１処理部を１プログラムで構成してもよいし、複数処理部を１プログラムで構成してもよい、逆に１処理部を複数プログラムで構成してもよい。また、複数処理部は１つの装置によって実行されてもよいし、分散または並列環境における装置によって１処理部が複数装置で実行されてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続を含む。
また、装置とは、１つの装置によって実現される場合のほか、複数のハードウェア、装置等がネットワーク等で接続されて構成される場合も含まれる。
【００１６】
画像処理装置１の入力制御部２は、外部（スキャナー、通信媒体等）との制御情報のやりとりを行うことによって、多値画像であるイメージデータを入力する。入力制御部２はメモリ９に対してそのイメージデータを格納する。また、入力制御部２は画像処理部３、閾値決定部４、出力制御部７と接続されており、互いにコントロールを行う。
メモリ９に格納されたデータは、ハードディスク６に格納されたり、画像処理部３の画像処理の対象となったり、圧縮処理部５の圧縮処理の対象となったり、伸長処理部８の伸長処理の対象となったり、出力制御部７による出力の対象となる。また、メモリ９は、画像処理部３により画像処理された画像を受け取り格納し、圧縮処理部５により圧縮処理された圧縮コードを受け取り格納し、伸長処理部８により伸長処理された伸長画像を受け取り格納し、ハードディスク６よりデータを受け取り格納する。
より具体的には、メモリ９は、入力制御部２より多値画像であるイメージデータを受け取り、そのイメージデータ（多値）を画像処理部３へ渡し、２値画像に変換されたイメージデータを受け取る。そして、画像処理部３により２値画像となったイメージデータを圧縮処理部５へ渡し、圧縮処理部５により処理された２値画像であるイメージデータまたは圧縮コードを受け取る。次に、メモリ９に格納されているデータ、つまり画像処理部３により処理されたイメージデータ（２値）または圧縮処理部５により圧縮処理されたイメージデータ（２値）、圧縮コードを、ハードディスク６に格納する。逆に、メモリ９はハードディスク６からイメージデータ（２値）、圧縮コードを受け取る。そして、メモリ９に格納された圧縮コードを伸長処理部８へ渡し、伸長処理されたイメージデータ（２値）を受け取る。最後に、メモリ９に格納されたイメージデータ（２値）は、出力制御部７へ渡され、出力の対象となる。
【００１７】
画像処理部３は、入力制御部２、出力制御部７からのコントロールによってメモリ９に格納されているイメージデータ（多値）に対して画像処理（主に２値化処理（例えば、誤差拡散、ディザ処理等））を行い、その結果である２値画像のイメージデータをメモリ９に格納する。
出力制御部７は、メモリ９からイメージデータ（２値）を受け取り、外部（プリンター、通信媒体等）との制御情報のやりとりを行うことによって、外部に対してイメージデータを出力する。また、出力制御部７は入力制御部２、画像処理部３と接続されており、互いにコントロールを行う。
閾値決定部４は、入力制御部２、圧縮処理部５と接続されており、互いにコントロールする。また、閾値決定部４は、圧縮処理部５に対して圧縮処理の際の閾値を渡す。
圧縮処理部５は、閾値決定部４、メモリ９と接続されており、閾値決定部４と互いにコントロールする。また、圧縮処理部５は、閾値決定部４より圧縮処理の際の閾値を受け取り、メモリ９に格納されているイメージデータ（２値）に対する圧縮処理を行う。その圧縮処理の結果である圧縮コードまたはイメージデータ（２値）をメモリ９に格納する。
伸長処理部８は、出力制御部７、メモリ９と接続されており、メモリ９と互いにコントロールする。また、伸長処理部８は、メモリ９に格納されている圧縮コードを伸長し、元のイメージデータ（２値）に変換する。その伸長処理の結果であるイメージデータ（２値）をメモリ９に格納する。
【００１８】
図２は画像処理装置１において事前の実験により得られたＡ４  ６００ｄｐｉの入力画像に対してＭＨ圧縮（Ｍｏｄｉｆｉｅｄ  Ｈｕｆｆｍａｎ）を行った場合での各プレーン（Ｃ／Ｍ／Ｙ／Ｋ）における圧縮率と処理時間の依存性を示したグラフである。横軸に圧縮率（倍）、縦軸に圧縮／伸長処理時間（ｓｅｃ）をとり、圧縮率は０から５．０まで、圧縮／伸長処理時間は上にあるほど時間がかかることを示している。圧縮処理は、原画像を圧縮した場合に、その結果としての圧縮率における処理時間をプロットしており、圧縮率が高いほど短い処理時間で済む。なお、ここでの圧縮処理は可逆処理を対象としている。伸長処理は、その圧縮率で圧縮された圧縮コードを伸長した場合に、その伸長処理時間をプロットしたものである。圧縮処理と同様に、圧縮率が高いほど短い処理時間で済む。
この実験結果をもとに閾値決定部４は圧縮コードサイズの閾値を決定する。
ここで、このデータは、画像処理装置１がサポートする入力画像のページサイズ／バンドサイズに対する圧縮方式毎（例えば、ＭＨ／ＭＲ（Ｍｏｄｉｆｉｅｄ  ＲＥＡＤ）／ＭＭＲ（ｍｏｄｉｆｉｅｄ  ｍｏｄｉｆｉｅｄ  ＲＥＡＤ））に必要となる。また、色モード（白黒／カラー）、あるいは出力制御部７でのスクリーン制御用の属性情報のプレーンに対する上記圧縮率と処理時間依存性に違いが見られる場合には、それぞれの場合でのデータを用意する。
【００１９】
図３は圧縮処理時間の上限を、図４はＡＤＦによる連続入力処理を説明する図である。また、図６は伸長処理時間の上限を、図７は印字装置による連続出力処理を説明する図である。
図３の上端のバーは、スキャナー等による画像の取り込み時間とその取り込んだ画像を画像処理部３により２値化処理する時間との合計を表したものである。図３の下端のバーは、２値化されたイメージデータを圧縮処理部５により圧縮処理する時間と圧縮処理していない非圧縮データ（原イメージデータ）をハードディスク６に書き込む時間との合計を表したものである。図３の上端のバーが示す処理時間内に、図３の下端のバーが示す処理時間が収まっていると、ＡＤＦ付きのスキャナーの処理性能を落とすことなく画像入力ができることとなる。
同様に、図６の上端のバーは、画像の出力時間を表したものである。図６の下端のバーは、圧縮コードのハードディスク６からの読み出し時間と伸長処理部８による伸長処理の時間との合計を表したものである。図６の上端のバーが示す処理時間内に、図６の下端のバーが示す処理時間が収まっていると、印字装置の処理性能を落とすことなく画像出力ができることとなる。
【００２０】
より具体的に、図２〜図７を用いて説明する。
入出力性能を低下することなく誤差拡散あるいはディザ処理された２値画像に対し圧縮／伸長処理を可能とするためには、スキャナー等の入力装置で用いられるＡＤＦと出力である印字装置の性能を考慮する必要があるが、それぞれ図４と図７で示されるように連続で処理させることにより、入出力性能をフルに発揮可能となる。
【００２１】
まず、入力処理におけるＡＤＦの性能を考慮する。
本実施の形態では、ＡＤＦの処理内容としては画像の取り込みと画像処理部３が行う２値化処理である。画像処理装置１の入力制御部２により光学的に読み込まれたイメージデータ（多値画像）が順次、メモリ９にストアされる。また、出力制御部７でのスクリーン制御用の属性情報を生成する場合には、同様にメモリ９にその属性情報がストアされる。本実施の形態においては、属性情報はすでに２値化されているものとする。
そして、メモリ９にストアされたイメージデータ（多値画像、例えばＲＧＢ点順次の画像フォーマット）は、一定の処理単位で引き続き画像処理部３により拡大／縮小処理（入力画像サイズと出力画像サイズが異なる場合のみ）、ＣＭＹＫへの色変換処理、点面変換処理および２値化処理（誤差拡散あるいはディザ処理）が実行されメモリ９にストアされる。ここで、上記の処理シーケンスをより高速化するために、入力制御部２と上記の画像処理部３はＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）化した構成でも良い。
【００２２】
そして、１ページ分の入力画像の２値化が完了すると、ＡＤＦは引き続き次ページの画像の読み込みが可能であれば、停止することなく上記の処理を繰り返す。これは、入力制御部２と画像処理部３による処理と圧縮処理部５による処理とは並列に行うことができるためである。ＡＤＦの性能をフルに発揮するための条件は、ＡＤＦを止めることなく次のページの処理を開始することであり、これにより図３で示される圧縮処理時間の上限が規定されることになる。例えば、ＡＤＦの処理能力がＡ４  ６００ｄｐｉのカラー入力画像に対し６０ｐｐｍ（Ｐａｇｅ  Ｐａｒ  Ｍｉｎｉｔｓ）とした場合、１ページあたりのＡＤＦの処理時間は１ｓｅｃとなり、この時間内で、出力制御部７でのスクリーン制御用の属性情報を生成している場合には５プレーン、生成していない場合には４プレーンに対してそれぞれ指定された圧縮方式により可逆に圧縮処理を行う必要がある。
ここで、ＭＨのようなランレングス方式の可逆圧縮方式を指定した場合、原画像サイズより圧縮コードサイズが大きくなる場合がある。さらに、図２の各プレーン（Ｃ／Ｍ／Ｙ／Ｋ）における圧縮率と処理時間の依存性からも示されるように、圧縮率（原画像サイズ／圧縮コードサイズ）が低くなるに従い、急激に処理時間が増加することが示される。また、圧縮率１（圧縮コードサイズが原画像サイズと等しい）における圧縮処理時間は、３．２ｓｅｃであることが図２のグラフからわかる。
【００２３】
そのため、圧縮率が１になった時点で圧縮処理を止め、原画像をハードディスク６にストアする場合には（５プレーンの場合であって、非圧縮データのハードディスク６への書き込み時間を０．０５ｓｅｃとする）、
０．３２  ×  ５  ＋  ０．０５  ×  ５  ＝  １．８５  （ｓｅｃ）
となり、１ページあたりのＡＤＦの処理時間は１ｓｅｃを越えてしまい、画像処理装置１内のメモリ量にも依存するが、後続ページのいずれかにおいてＡＤＦの動作を止めなければならなくなる。
本実施の形態においては、事前に画像処理装置１がサポートする入力画像のページサイズ／バンドサイズに対する圧縮方式毎（例えば、ＭＨ／ＭＲ／ＭＭＲ）での各プレーン（Ｃ／Ｍ／Ｙ／Ｋ）における圧縮率と処理時間が分かっているため、上記の例では、
圧縮時間  ×  ５  ＋  ０．０５  ×  ５  ≦  １．００  （ｓｅｃ）
となるように、圧縮時間を求めると、
圧縮時間  ≦  ０．１５  （ｓｅｃ）
となる。一方、各プレーン（Ｃ／Ｍ／Ｙ／Ｋ）における図２の圧縮率と処理時間の関係から、処理時間が０．１５ｓｅｃとなる圧縮率は２．４である。したがって、圧縮率が２．４になった時点で圧縮処理を止めれば良いことになり、閾値を圧縮率で示す場合には２．４、圧縮コードサイズで示す場合には（原画像サイズ／２．４）となり、この閾値が閾値決定部４から圧縮処理部５に通知され、圧縮処理部５はプレーン毎にメモリ９の２値画像の圧縮を開始する。
つまり、圧縮処理部５は、圧縮処理している対象の現在の圧縮コードサイズを計算して、閾値決定部４から渡された閾値である圧縮コードサイズを越えた時点で圧縮処理を中止し、メモリ９内の入力された非圧縮画像をハードディスク６に記憶する。または、閾値決定部４から渡された閾値が圧縮率であれば、圧縮処理部５は、圧縮処理している対象の現在の圧縮コードサイズから圧縮率を計算して、その閾値を越えた時点で圧縮処理を中止し、メモリ９内の入力された非圧縮画像をハードディスク６に記憶する。
【００２４】
ここで、本実施の形態では、説明を簡単にするため、ＡＤＦの処理能力のみを考慮したが、上記で決定した閾値に対する伸長処理時間が印字装置の処理能力を満足しない場合もありうるので（図２に示すように、圧縮率の閾値が２．４の場合、伸長処理時間は０．０８と予想される）、ＡＤＦを用いた入力速度および印字装置の出力速度の両方を考慮して閾値を決定する。
図４の例では、１ページが１プレーンで構成されている画像に対する圧縮処理を示しており、１ページ目と３ページ目は圧縮処理が正常に完了して圧縮コードをハードディスク６に書き込み（図４のＡ、Ｃ）、２ページ目では閾値を越えてしまい原画像である非圧縮データをハードディスク６に書き込みを行っている（図４のＢ）。また、１ページが複数プレーンで構成されている画像の場合には、ページ単位で圧縮処理が完了したプレーンと圧縮できなかったプレーンが混在することになる。
【００２５】
ここで、圧縮処理が正常に完了した場合には、圧縮コードサイズは（原画像サイズ／２．４）より小さい値なので、想定したハードディスク６への書き込み時間より短い時間で済むことになり、また圧縮処理自体も短い時間で終わっている。
そこで、本実施の形態においては、処理中のページにおいて未処理のプレーンがある場合、次のプレーンの処理時間に処理済みのプレーンでの圧縮処理時間の余りを加算して閾値を算出することにより、圧縮できない場合の頻度を減少させることが可能となる。つまり、閾値決定部４は、圧縮処理部５による圧縮処理が中止せずに完了した場合は、その残処理時間に応じて同一ページの次のプレーンに対する閾値を決定することもできる。
これを図５に示す。図５は１ページが４プレーンで構成されている画像に対する圧縮処理を示している。まず、１ページ目の画像の取り込みと２値化処理が行われ、その後に各プレーン毎に圧縮処理部５による圧縮処理が行われる（図５のＡ）。その圧縮処理と平行して、次のページである２ページ目の画像の取り込みと２値化処理が行われている（図５のＢ）。ここで、１プレーン目から３プレーン目までは、圧縮処理が完了して、圧縮コードのハードディスク６への書き込みが行われ、非圧縮コードのハードディスク６への書き込みは行われなかったとする。つまり、１プレーン毎に圧縮処理の余り時間が発生していることになる。ここで、その余り時間を考慮せずに、１プレーン当たりの制限時間を均等割りした場合は、４プレーン目もその均等割り時間内に圧縮処理を行わなければならないという制限が課されることになる。しかし、その余り時間を足して４プレーン目の圧縮処理時間に割り当てると、単純に均等割りされたプレーン毎の圧縮処理時間よりも多い処理時間を割り当てることが可能となる。つまり、その時間を圧縮処理に使えるので、均等割り時間では圧縮不可能となったような場合であっても圧縮処理が可能となる場合がある。閾値決定部４は、圧縮処理部５による圧縮処理が中止せずに完了した場合は、その残処理時間に応じて同一ページの次のプレーンに対する閾値を決定する。これによって、入出力性能を十分に発揮させたままで、圧縮できない場合の頻度を減少させることが可能となる。
【００２６】
次に、出力である印字装置の性能を考慮する。ここで、本実施例においては、説明を簡単にするため、ＡＤＦと印字装置は独立に動作可能であり、かつ圧縮処理部５による圧縮処理と伸長処理部８による伸長処理は同時に動作可能（メモリ９、ハードディスク６への同時アクセスも可能）とする。
本実施の形態では、印字装置の処理内容としては画像の出力を例示しており、メモリ９に展開済みのＣ／Ｍ／Ｙ／Ｋの画像を順次出力する。ここで、スクリーン制御用の属性情報が生成されている場合には、出力制御部７はこの情報を参照してピクセル単位でスクリーンの切り替えを行いながら出力を行う。そして、１ページ分の画像の出力が完了すると、印字装置は引き続き次ページの画像の出力が可能であれば、停止することなく上記の処理を繰り返す。このため、印字装置の性能をフルに発揮するための条件は、印字装置を止めることなく次のページの処理を開始することであり、これにより図６で示される伸長処理時間の上限が規定されることになる。例えば、印字装置の処理能力がＡ４  ６００ｄｐｉのカラー出力画像に対し６０ｐｐｍとした場合、１ページあたりの印字装置の処理時間は１ｓｅｃとなり、この時間内で、出力制御部７でのスクリーン制御用の属性情報を生成している場合には５プレーン、生成していない場合には４プレーンに対して、圧縮されている場合にはハードディスク６から圧縮コードを読み出して伸長処理を行い、圧縮されていない場合にはハードディスク６から原画像である非圧縮データを読み出す。
ここで、上記２つの場合での処理時間の関係は、
圧縮コードの読み出し時間  ＋  伸長処理時間  ＞  非圧縮データの読み出し時間
であるので、
圧縮コードの読み出し時間  ＋  伸長処理時間  ≦  画像出力時間
でなければならない。つまり、図６で示されるように伸長処理時間の上限が規定される。
一般的に、伸長処理時間は圧縮処理時間より短く、図２における各プレーン（Ｃ／Ｍ／Ｙ／Ｋ）における圧縮率と処理時間の依存性からも示されている。本実施の形態においては、図２から閾値決定部４により決定された閾値から算出される伸長処理時間の最大値は０．０８ｓｅｃであるので（５プレーンの場合で、圧縮データのハードディスク６読み出し時間は無視できるものとする）、
０．０８  ×  ５  ＝  ０．４０  （ｓｅｃ）
となり、１ページあたりの印字装置の処理時間（１ｓｅｃ）よりも短くなり満足する。
【００２７】
図７を用いて印字装置による連続出力処理について説明する。１ページ目、３ページ目は圧縮されており、２ページ目は圧縮されておらず、非圧縮画像がそのままハードディスク６に格納されているとする。まず、１ページ目の圧縮コードをハードディスク６からメモリ９に転送し、伸長処理部８により伸長処理が行われる。その後、その伸長処理された画像を出力制御部７により画像出力する（図７のＡ）。この画像出力と並行して次の画像の準備をするのであるが、２ページ目は圧縮されていないので、非圧縮データをハードディスク６からメモリ９へ読み出す。そして、１ページ目の出力が完了するのを待って、２ページ目を出力制御部７により画像出力する（図７のＢ）。そして、この２ページ目の画像出力と並行して、３ページ目の圧縮コードをハードディスク６より読み出し、伸長処理が行われる。そして、３ページ目を出力制御部７により画像出力する（図７のＣ）。
以上の本実施の形態においては、カラーの入力画像の処理について説明を行ったが、属性情報を生成する場合にはプレーン数を５プレーンから２プレーンに、属性情報を生成しない場合にはプレーン数を２プレーンから１プレーンに置き換えることにより、白黒の入力画像に対して本発明の実現が可能となる。
また、以上の本実施の形態においては、ページ単位の処理について説明を行ったが、ページをバンドと置き換えることにより、より少ないメモリで本実施の形態の実現が可能となる。
【００２８】
次に作用・働き（動作）を説明する。
図８を用いて、本実施の形態におけるページ単位の入力処理アルゴリズムを説明する。
ステップＳ８０２では、閾値決定部４にパラメータが入力される。パラメータとしては、入力された画像のページサイズ（特に出力ページサイズ）、色モード（白黒またはカラー）、圧縮方式、入力速度（主に、ＡＤＦの速度）または出力速度（主に、印字装置の主力速度）がある。
ステップＳ８０３からステップＳ８１６まで、入力されるページ数だけ繰り返される。
ステップＳ８０４では、ＡＤＦにより紙文書を画像入力する。
ステップＳ８０５では、入力されたイメージデータがカラー画像であるか否かが判断される。カラー画像と判断された場合はステップＳ８０６へ、カラー画像でない（白黒画像）と判断された場合はステップＳ８０９へ進む。
ステップＳ８０６では、属性情報があるか否かを判断する。属性情報がある場合はステップＳ８０７へ、属性情報がない場合はステップＳ８０８へ進む。
ステップＳ８０７では、カラー画像かつ属性情報があるのでプレーン数（ｍ）を５と設定する。
ステップＳ８０８では、属性情報がないカラー画像であるのでプレーン数（ｍ）を４と設定する。
ステップＳ８０９では、属性情報があるか否かを判断する。属性情報がある場合はステップＳ８１０へ、属性情報がない場合はステップＳ８１１へ進む。
ステップＳ８１０では、カラー画像でなくかつ属性情報があるのでプレーン数（ｍ）を２と設定する。
ステップＳ８１１では、属性情報がなくカラー画像でもないのでプレーン数（ｍ）を１と設定する。
ステップＳ８１２からステップＳ８１５まで、プレーンの数だけ繰り返される。ここでプレーンの数は、ステップＳ８０７、ステップＳ８０８、ステップＳ８１０、ステップＳ８１１によって決定されている。
ステップＳ８１３では、閾値決定部４が、ステップＳ８０２で入力されたパラメータに従って、圧縮処理部５によって行われる対象とするプレーンの圧縮処理を途中で中止させる際の閾値を決定する。
ステップＳ８１４では、圧縮処理部５が、閾値決定部４によりステップＳ８１３で決定された閾値を用いて対象とするプレーンに対して圧縮処理を行う。図９のフローチャートに示す圧縮処理が行われる。圧縮処理が完了しその圧縮コードをハードディスク６に格納する場合と圧縮コードサイズが閾値を越えたために、圧縮処理は完了されずに非圧縮画像がそのままハードディスク６に格納される場合とがある。
【００２９】
図９は、本実施の形態における圧縮処理アルゴリズムを例示したフローチャートである（ＭＨの場合）。図８のステップＳ８１４または図１１のステップＳ１１１５の処理である。
ステップＳ９０２では、変数である圧縮コードサイズを０と設定する。
ステップＳ９０３からステップＳ９０７まで、ライン数だけ繰り返される。ここでライン数はプレーンにおけるライン数（図８のフローチャート）とバンドにおけるライン数（図１１のフローチャート）とがある。
ステップＳ９０４では、圧縮処理部５によりメモリ９にある画像に対してＭＨ圧縮処理を行い、その結果をメモリ９に格納する。対象となるメモリ９にある画像は、画像処理部３により２値化されたイメージデータである。
ステップＳ９０５では、総圧縮コードサイズを計算する。つまり、変数である総圧縮コードサイズにステップＳ９０４で圧縮処理された後の圧縮コードサイズを加算する。
ステップＳ９０６では、総圧縮コードサイズが閾値決定部４で決定された閾値を越えているか否かを判断する。越えている場合はステップＳ９０９へ進み、越えていない場合はステップＳ９０７へ進む。ここでの判断は、閾値が圧縮コードサイズであるが、閾値は圧縮率であってもよい。その場合は、現在の総圧縮コードサイズと原画像サイズより圧縮率を計算して、閾値（圧縮率）との比較による判断を行う。
ステップＳ９０７では、ステップＳ９０３へ戻る。
ステップＳ９０８では、圧縮コードをハードディスク６に格納する。圧縮処理が完了した場合である。
ステップＳ９０９では、非圧縮データをハードディスク６に格納する。圧縮処理が完了しないで途中で中止された場合である。
【００３０】
図１０を用いて、本実施の形態におけるページ単位の出力処理アルゴリズムを説明する。
ステップＳ１００２からステップＳ１０１４まで、出力するページ数だけ繰り返される。
ステップＳ１００３では、対象となっているページがカラー画像であるか否かが判断される。カラー画像と判断された場合はステップＳ１００４へ、カラー画像でない（白黒画像）と判断された場合はステップＳ１００７へ進む。
ステップＳ１００４では、属性情報があるか否かを判断する。属性情報がある場合はステップＳ１００５へ、属性情報がない場合はステップＳ１００６へ進む。
ステップＳ１００５では、カラー画像かつ属性情報があるのでプレーン数（ｍ）を５と設定する。
ステップＳ１００６では、属性情報がないカラー画像であるのでプレーン数（ｍ）を４と設定する。
ステップＳ１００７では、属性情報があるか否かを判断する。属性情報がある場合はステップＳ１００８へ、属性情報がない場合はステップＳ１００９へ進む。
ステップＳ１００８では、カラー画像でなくかつ属性情報があるのでプレーン数（ｍ）を２と設定する。
ステップＳ１００９では、属性情報がなくカラー画像でもないのでプレーン数（ｍ）を１と設定する。
ステップＳ１０１０からステップＳ１０１２まで、プレーンの数だけ繰り返される。ここでプレーンの数は、ステップＳ１００５、ステップＳ１００６、ステップＳ１００８、ステップＳ１００９によって決定されている。
ステップＳ１０１１では、対象となっているプレーン毎に伸長処理を行う。
ステップＳ１０１３では、１ページ分のイメージデータが伸長されたので印字装置によりプリントアウトされる。
【００３１】
図１１を用いて、本実施の形態におけるバンド単位の入力処理アルゴリズムを説明する。
ステップＳ１１０２では、閾値決定部４にパラメータが入力される。パラメータとしては、入力された画像のバンドサイズ（特に出力バンドサイズ）、色モード（白黒またはカラー）、圧縮方式、入力速度（主に、ＡＤＦの速度）または出力速度（主に、印字装置の主力速度）がある。
ステップＳ１１０３からステップＳ１１１８まで、入力されるページ数だけ繰り返される。
ステップＳ１１０４では、ＡＤＦにより紙文書を画像入力する。
ステップＳ１１０５では、入力されたイメージデータがカラー画像であるか否かが判断される。カラー画像と判断された場合はステップＳ１１０６へ、カラー画像でない（白黒画像）と判断された場合はステップＳ１１０９へ進む。
ステップＳ１１０６では、属性情報があるか否かを判断する。属性情報がある場合はステップＳ１１０７へ、属性情報がない場合はステップＳ１１０８へ進む。
ステップＳ１１０７では、カラー画像かつ属性情報があるのでプレーン数（ｍ）を５と設定する。
ステップＳ１１０８では、属性情報がないカラー画像であるのでプレーン数（ｍ）を４と設定する。
ステップＳ１１０９では、属性情報があるか否かを判断する。属性情報がある場合はステップＳ１１１０へ、属性情報がない場合はステップＳ１１１１へ進む。
ステップＳ１１１０では、カラー画像でなくかつ属性情報があるのでプレーン数（ｍ）を２と設定する。
ステップＳ１１１１では、属性情報がなくカラー画像でもないのでプレーン数（ｍ）を１と設定する。
ステップＳ１１１２からステップＳ１１１７まで、プレーンの数だけ繰り返される。ここでプレーンの数は、ステップＳ１１０７、ステップＳ１１０８、ステップＳ１１１０、ステップＳ１１１１によって決定されている。
ステップＳ１１１３からステップＳ１１１６まで、バンドの数だけ繰り返される。
ステップＳ１１１４では、閾値決定部４が、ステップＳ１１０２で入力されたパラメータに従って、圧縮処理部５によって行われる対象とするバンドの圧縮処理を途中で中止させる際の閾値を決定する。
ステップＳ１１１５では、圧縮処理部５が、閾値決定部４によりステップＳ１１１４で決定された閾値を用いて対象とするバンドに対して圧縮処理を行う。図９のフローチャートに示す圧縮処理が行われる。圧縮処理が完了しその圧縮コードをハードディスク６に格納する場合と圧縮コードサイズが閾値を越えたために、圧縮処理は完了されずに非圧縮画像がそのままハードディスク６に格納される場合とがある。
【００３２】
図１２を用いて、本実施の形態におけるバンド単位の出力処理アルゴリズムを説明する。
ステップＳ１２０２からステップＳ１２１６まで、出力するページ数だけ繰り返される。
ステップＳ１２０３では、対象となっているページがカラー画像であるか否かが判断される。カラー画像と判断された場合はステップＳ１２０４へ、カラー画像でない（白黒画像）と判断された場合はステップＳ１２０７へ進む。
ステップＳ１２０４では、属性情報があるか否かを判断する。属性情報がある場合はステップＳ１２０５へ、属性情報がない場合はステップＳ１２０６へ進む。
ステップＳ１２０５では、カラー画像かつ属性情報があるのでプレーン数（ｍ）を５と設定する。
ステップＳ１２０６では、属性情報がないカラー画像であるのでプレーン数（ｍ）を４と設定する。
ステップＳ１２０７では、属性情報があるか否かを判断する。属性情報がある場合はステップＳ１２０８へ、属性情報がない場合はステップＳ１２０９へ進む。
ステップＳ１２０８では、カラー画像でなくかつ属性情報があるのでプレーン数（ｍ）を２と設定する。
ステップＳ１２０９では、属性情報がなくカラー画像でもないのでプレーン数（ｍ）を１と設定する。
ステップＳ１２１０からステップＳ１２１４まで、プレーンの数だけ繰り返される。ここでプレーンの数は、ステップＳ１２０５、ステップＳ１２０６、ステップＳ１２０８、ステップＳ１２０９によって決定されている。
ステップＳ１２１１からステップＳ１２１３まで、バンドの数だけ繰り返される。
ステップＳ１２１２では、対象となっているバンド毎に伸長処理を行う。
ステップＳ１２１５では、１ページ分のイメージデータが伸長されたので印字装置によりプリントアウトされる。
【００３３】
本実施の形態によれば、ＡＤＦ付きのスキャナーおよびプリンターの性能を低下することなく誤差拡散あるいはディザ処理された２値画像に対する圧縮／伸長処理が可能になり、より多くの画像を記憶装置にストアすることが可能となる。
【００３４】
さらに、本実施例においては、記憶装置としてハードディスクを想定して説明を行ったが、メモリに置き換えることも可能であり、その場合には圧縮／非圧縮データの記憶装置への書き込み／読み出し時間を無視し、閾値決定部４が圧縮コードサイズまたは圧縮率の閾値を決定することになる。
【００３５】
なお、説明したプログラムについては、記録媒体に格納することも可能であり、その場合は、以下の発明としても把握することができる。
画像処理装置に、入力された画像に対し２値化処理を施し出力させる画像処理プログラムを記録した画像処理装置読み取り可能な記録媒体であって、
前記画像処理装置に、
その入力された画像のページサイズ、色モード、圧縮方式、入力速度または出力速度のうちいずれか１つ以上からプレーン毎にページ単位の圧縮コードサイズまたは圧縮率の閾値を決定する閾値決定機能と、
前記２値化された入力画像に対する圧縮処理により生成された圧縮コードサイズおよび前記閾値決定機能により決定された閾値に応じて圧縮処理を中止し、入力された非圧縮画像を記憶装置に記憶する圧縮機能
を実現させることを特徴とする画像処理プログラムを記録した画像処理装置読み取り可能な記録媒体。
【００３６】
画像処理装置に、入力された画像に対し２値化処理を施し出力させる画像処理プログラムを記録した画像処理装置読み取り可能な記録媒体であって、
前記画像処理装置に、
その入力された画像のページサイズにもとづくバンドサイズ、色モード、圧縮方式、入力速度または出力速度のうちいずれか１つ以上からプレーン毎にバンド単位の圧縮コードサイズの閾値を決定する閾値決定機能と、
前記２値化された入力画像に対する圧縮処理により生成された圧縮コードサイズおよび前記閾値決定機能により決定された閾値に応じて圧縮処理を中止し、入力されたバンドサイズの非圧縮画像を記憶装置に記憶する圧縮機能
を実現させることを特徴とする画像処理プログラムを記録した画像処理装置読み取り可能な記録媒体。
「プログラムを記録した画像処理装置読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録された画像処理装置で読み取り可能な記録媒体をいう。
【００３７】
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去および書換可能な読出し専用メモリ（ＥＥＰＲＯＭ）、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）等が含まれる。
そして、上記のプログラムまたはその一部は、上記記録媒体に記録して保存や流通等させることが可能である。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにはこれらの組合せ等の伝送媒体を用いて伝送することが可能であり、また、搬送波に乗せて搬送することも可能である。
さらに、上記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。
【図面の簡単な説明】
【００３８】
【図１】画像処理装置を例示した概略ブロック図である。
【図２】各プレーン（Ｃ／Ｍ／Ｙ／Ｋ）における圧縮率と処理時間との依存関係例を示したグラフである（ＭＨの場合）。
【図３】圧縮処理時間の上限を説明する模式図である。
【図４】ＡＤＦによる連続入力処理を説明する模式図である。
【図５】余り時間を考慮した圧縮処理時間の上限を説明する模式図である(４プレーンの場合)。
【図６】伸長処理時間の上限を説明する模式図である。
【図７】印字装置による連続入力処理を説明する模式図である。
【図８】本実施の形態におけるページ単位の入力処理アルゴリズムを例示したフローチャートである。
【図９】本実施の形態における圧縮処理アルゴリズムを例示したフローチャートである（ＭＨの場合）。
【図１０】本実施の形態におけるページ単位の出力処理アルゴリズムを例示したフローチャートである。
【図１１】本実施の形態におけるバンド単位の入力処理アルゴリズムを例示したフローチャートである。
【図１２】本実施の形態におけるバンド単位の出力処理アルゴリズムを例示したフローチャートである。
【符号の説明】
【００３９】
１…画像処理装置
２…入力制御部
３…画像処理部
４…閾値決定部
５…圧縮処理部
６…ハードディスク
７…出力制御部
８…伸長処理部
９…メモリ
【図１】
0004765655.tif 000002
【図２】
0004765655.tif 000003
【図３】
0004765655.tif 000004
【図４】
0004765655.tif 000005
【図５】
0004765655.tif 000006
【図６】
0004765655.tif 000007
【図７】
0004765655.tif 000008
【図８】
0004765655.tif 000009
【図９】
0004765655.tif 000010
【図１０】
0004765655.tif 000011
【図１１】
0004765655.tif 000012
【図１２】
0004765655.tif 000013