(57)【要約】【課題】データの処理を行う際の処理時間を短くすることができ、そのための作業を簡素化することができるようにする。【解決手段】ハードウェア処理部と、ソフトウェア処理部と、データのデータサイズと閾（しきい）値とを比較するデータサイズ比較処理手段と、データサイズ比較処理手段による比較結果に基づいて、ハードウェア処理部及びソフトウェア処理部のうちの一方を選択する処理部選択処理手段とを有する。データサイズと閾値との比較結果に基づいて、ハードウェア処理部及びソフトウェア処理部のうちの一方が選択されるので、データの処理を行う際の処理時間を短くすることができる。【選択図】図１
2006007638.tif 000002
【特許請求の範囲】
【請求項１】
（ａ）ハードウェアを使用してデータを処理するハードウェア処理部と、
（ｂ）ソフトウェアを使用してデータを処理するソフトウェア処理部と、
（ｃ）処理するデータのデータサイズと、あらかじめハードウェア及びソフトウェアを使用して設定された所定の閾値とを比較するデータサイズ比較処理手段と、
（ｄ）該データサイズ比較処理手段による比較結果に基づいて、前記ハードウェア処理部及びソフトウェア処理部のうちの一方を選択する処理部選択処理手段とを有することを特徴とするデータ処理装置。
【請求項２】
前記データの処理は２値化処理である請求項１に記載のデータ処理装置。
【請求項３】
前記データの処理は圧縮処理である請求項１に記載のデータ処理装置。
【請求項４】
前記閾値は、装置の電源が投入されるごとに設定される請求項１に記載のデータ処理装置。
【請求項５】
前記閾値は、装置にオプションが装着されるごとに設定される請求項１に記載のデータ処理装置。
【請求項６】
前記閾値は、前記ハードウェア処理部及びソフトウェア処理部においてそれぞれサンプルデータを処理したときの処理時間に基づいて設定される請求項４又は５に記載のデータ処理装置。
【請求項７】
前記閾値は、複数のサンプルデータについて測定された処理時間に基づいて設定される請求項６に記載のデータ処理装置。
【請求項８】
前記閾値は、各サンプルデータについて測定された処理時間の平均値に基づいて設定される請求項７に記載のデータ処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理装置に関するものである。
【背景技術】
【０００２】
従来、プリンタ、例えば、ページプリンタにおいては、多値イメージデータを２値化したり、カラーマッチングを行ったり、多値イメージデータを実数倍に拡大したり、２値イメージデータを圧縮したりする等のデータの処理、例えば、画像処理を行うに当たり、処理速度を高くするためにハードウェアを使用するようにしている（例えば、特許文献１参照。）。
【特許文献１】特開平７−１３７３５３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、前記従来のページプリンタにおいては、画像処理を行うためのデータの単位、すなわち、データサイズがある程度大きい場合には、ハードウェアを使用する方が処理速度を高くすることができ、処理時間を短くすることができるが、データサイズが小さい場合には、ＣＰＵの能力、キャッシュの有無、データバスの速度等のハードウェアの能力によっては、処理速度が低くなり、処理時間が長くなってしまう。
【０００４】
本発明は、前記従来のページプリンタの問題点を解決して、データの処理を行う際の処理時間を短くすることができ、そのための作業を簡素化することができるデータ処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
そのために、本発明のデータ処理装置においては、ハードウェアを使用してデータを処理するハードウェア処理部と、ソフトウェアを使用してデータを処理するソフトウェア処理部と、処理するデータのデータサイズと、あらかじめハードウェア及びソフトウェアを使用して設定された所定の閾値とを比較するデータサイズ比較処理手段と、該データサイズ比較処理手段による比較結果に基づいて、前記ハードウェア処理部及びソフトウェア処理部のうちの一方を選択する処理部選択処理手段とを有する。
【発明の効果】
【０００６】
本発明によれば、データ処理装置においては、ハードウェアを使用してデータを処理するハードウェア処理部と、ソフトウェアを使用してデータを処理するソフトウェア処理部と、処理するデータのデータサイズと、あらかじめハードウェア及びソフトウェアを使用して設定された所定の閾値とを比較するデータサイズ比較処理手段と、該データサイズ比較処理手段による比較結果に基づいて、前記ハードウェア処理部及びソフトウェア処理部のうちの一方を選択する処理部選択処理手段とを有する。
【０００７】
この場合、処理するデータのデータサイズと、あらかじめハードウェア及びソフトウェアを使用して設定された所定の閾値とが比較され、比較結果に基づいて、前記ハードウェア処理部及びソフトウェア処理部のうちの一方が選択されるので、データの処理を行う際の処理時間を短くすることができ、そのための作業を簡素化することができる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施の形態について図面を参照しながら詳細に説明する。なお、この場合、データ処理装置として、プリンタ、特に、ページプリンタについて説明する。また、データの処理としての画像処理について説明する。
【０００９】
図１は本発明の第１の実施の形態におけるページプリンタのブロック図である。
【００１０】
図において、１１は上位装置、例えば、図示されないホストコンピュータから送信された多値イメージデータ、コマンド等を受信する受信部としてのコマンド受信部、１３はデータ処理部としてのイメージデータ処理部であり、該イメージデータ処理部１３は、ハードウェア処理部としてのハードウェア２値化処理部１６、ソフトウェア処理部としてのソフトウェア２値化処理部１７、記憶装置１８及び初期化処理部２１と接続される。前記記憶装置１８には、ディザパターンデータ領域１５が形成され、該ディザパターンデータ領域１５に、処理を必要とするデータ、本実施の形態においては、２値化される多値イメージデータ、及び多値イメージデータを２値化するために必要なディザパターンデータが記録される。
【００１１】
前記イメージデータ処理部１３は、前記コマンド受信部１１によって受信された多値イメージデータを２値化するために、受信された多値イメージデータを記憶装置１８の多値イメージデータ領域１４に記録する。
【００１２】
ところで、本実施の形態においては、ハードウェア２値化処理部１６とソフトウェア２値化処理部１７とを切り替えて処理を行うようにしている。この場合、ハードウェア及びソフトウェアの処理速度の差は、専らハードウェアの能力によって決まるので、ハードウェアとソフトウェアとの切替えのために所定の閾（しきい）値が設定される。そして、イメージデータ処理部１３は、多値イメージデータのデータサイズと、前記閾値とを比較することによって、ハードウェア２値化処理部１６及びソフトウェア２値化処理部１７のうちの一方を選択して使用する。
【００１３】
すなわち、前記イメージデータ処理部１３は、多値イメージデータのデータサイズが閾値より大きい場合、ハードウェア２値化処理部１６を選択してハードウェア２値化処理を行うように指示し、多値イメージデータのデータサイズが閾値以下である場合、ソフトウェア２値化処理部１７を選択してソフトウェア２値化処理を行うように指示する。
【００１４】
そして、前記ハードウェア２値化処理部１６及びソフトウェア２値化処理部１７は、ディザパターンデータ及び多値イメージデータを読み込み、多値イメージデータを２値化し、２値イメージデータを作成する。すなわち、前記ハードウェア２値化処理部１６はハードウェアを使用して多値イメージデータを２値化し、ソフトウェア２値化処理部１７はソフトウェアを使用して多値イメージデータを２値化する。そして、前記ハードウェア２値化処理部１６及びソフトウェア２値化処理部１７は、前記２値イメージデータを、展開部としての２値イメージデータ展開処理部１９に送る。該２値イメージデータ展開処理部１９は、前記２値イメージデータを印刷用ラスタデータとして展開し、印刷処理部２０に送る。また、該印刷処理部２０は、印刷用ラスタデータに従って画像を形成し、印刷を行う。
【００１５】
ところで、異なる機種のページプリンタが開発されるたびに前記閾値を設定する必要があるが、そのたびにハードウェア及びソフトウェアによる画像処理を行い、処理時間を測定して閾値を設定し、データサイズ比較処理部にセットするようにすると、作業が極めて煩わしい。そこで、本実施の形態においては、前記閾値を初期化処理部２１において設定するようにしている。
【００１６】
そのために、該初期化処理部２１は、イメージデータ処理部１３を介してハードウェア２値化処理部１６及びソフトウェア２値化処理部１７を選択的に呼び出す。そして、サンプルデータについて、前記ハードウェア２値化処理部１６は、ハードウェアを使用して多値イメージデータを２値化し、また、前記ソフトウェア２値化処理部１７は、ソフトウェアを使用して多値イメージデータを２値化し、このとき、前記初期化処理部２１は計時処理部としてのフリーランカウンタ２２によって各処理時間を測定する。そして、前記初期化処理部２１は、ハードウェア２値化処理部１６における処理時間、及びソフトウェア２値化処理部１７における処理時間に基づいて閾値を算出して設定する。
【００１７】
次に、前記構成のページプリンタの動作について説明する。
【００１８】
図２は本発明の第１の実施の形態におけるページプリンタの動作を示すメインフローチャート、図３は本発明の第１の実施の形態における初期化処理のサブルーチンを示す図、図４は本発明の第１の実施の形態における第１の時間測定処理のサブルーチンを示す図、図５は本発明の第１の実施の形態における第２の時間測定処理のサブルーチンを示す図、図６は本発明の第１の実施の形態における第３の時間測定処理のサブルーチンを示す図、図７は本発明の第１の実施の形態における第４の時間測定処理のサブルーチンを示す図、図８は本発明の第１の実施の形態におけるイメージデータ処理のサブルーチンを示す図、図９は本発明の第１の実施の形態における閾値の設定方法を示す図である。なお、図９において、横軸にデータサイズを、縦軸に処理時間を採ってある。
【００１９】
まず、装置、すなわち、ページプリンタの図示されない電源が投入されると、オンラインの状態が設定されるまでに、初期化処理部２１（図１）は、初期化処理を行い、閾値を算出する。
【００２０】
そのために、前記初期化処理部２１は、イメージデータ処理部１３を介してハードウェア２値化処理部１６及びソフトウェア２値化処理部１７を選択的に呼び出す。該ハードウェア２値化処理部１６及びソフトウェア２値化処理部１７は、サンプルデータである多値イメージデータを２値化し、前記初期化処理部２１はそのときの処理時間を測定する。この場合、測定は、ハードウェア２値化処理部１６及びソフトウェア２値化処理部１７において、それぞれ、多値イメージデータのデータサイズを異ならせて複数回、本実施の形態においては、２回行われ、各データサイズごとに処理時間が算出される。
【００２１】
そのために、前記初期化処理部２１の図示されない第１の時間測定処理手段は、第１の時間測定処理を行い、イメージデータ処理部１３を介してハードウェア２値化処理部１６を呼び出す。そして、前記第１の時間測定処理手段は、ハードウェア２値化処理部１６を呼び出す際に、フリーランカウンタ２２を参照し、処理時間の測定を開始した時点のカウント値を読み込み、記憶する。
【００２２】
続いて、前記第１の時間測定処理手段は、前記ハードウェア２値化処理部１６に指示を出し、該ハードウェア２値化処理部１６は、２値化処理を行い、ハードウェアを使用して第１のデータサイズの多値イメージデータを２値化する。そして、２値化処理が終了すると、前記第１の時間測定処理手段は、フリーランカウンタ２２を参照し、２値化処理が終了した時点のカウント値を読み込み、記憶する。続いて、前記第１の時間測定処理手段は、２値化処理が終了した時点のカウント値から測定を開始した時点のカウント値を減算することによって、処理時間ｔ１を算出し、記憶する。
【００２３】
また、同様に、前記初期化処理部２１の図示されない第２の時間測定処理手段は、第２の時間測定処理を行い、イメージデータ処理部１３を介してハードウェア２値化処理部１６を呼び出す。そして、前記第２の時間測定処理手段は、ハードウェア２値化処理部１６を呼び出す際に、フリーランカウンタ２２を参照し、処理時間の測定を開始した時点のカウント値を読み込み、記憶する。
【００２４】
続いて、前記第２の時間測定処理手段は、前記ハードウェア２値化処理部１６に指示を出し、該ハードウェア２値化処理部１６は、ハードウェア２値化処理を行い、ハードウェアを使用して第２のデータサイズの多値イメージデータを２値化する。そして、２値化処理が終了すると、前記第２の時間測定処理手段は、フリーランカウンタ２２を参照し、２値化処理が終了した時点のカウント値を読み込み、記憶する。続いて、前記第２の時間測定処理手段は、２値化処理が終了した時点のカウント値から測定を開始した時点のカウント値を減算することによって、処理時間ｔ２を算出し、記憶する。
【００２５】
次に、前記初期化処理部２１の図示されない第３の時間測定処理手段は、第３の時間測定処理を行い、イメージデータ処理部１３を介してソフトウェア２値化処理部１７を呼び出す。そして、前記第３の時間測定処理手段は、ソフトウェア２値化処理部１７を呼び出す際に、フリーランカウンタ２２を参照し、処理時間の測定を開始した時点のカウント値を読み込み、記憶する。
【００２６】
続いて、前記第３の時間測定処理手段は、前記ソフトウェア２値化処理部１７に指示を出し、該ソフトウェア２値化処理部１７は、２値化処理を行い、ソフトウェアを使用して前記第１のデータサイズの多値イメージデータを２値化する。そして、２値化処理が終了すると、前記第３の時間測定処理手段は、フリーランカウンタ２２を参照し、２値化処理が終了した時点のカウント値を読み込み、記憶する。続いて、前記第３の時間測定処理手段は、２値化処理が終了した時点のカウント値から測定を開始した時点のカウント値を減算することによって、処理時間ｔ３を算出し、記憶する。
【００２７】
また、同様に、前記初期化処理部２１の図示されない第４の時間測定処理手段は、第４の時間測定処理を行い、イメージデータ処理部１３を介してソフトウェア２値化処理部１７を呼び出す。そして、前記第４の時間測定処理手段は、ソフトウェア２値化処理部１７を呼び出す際に、フリーランカウンタ２２を参照し、処理時間の測定を開始した時点のカウント値を読み込み、記憶する。
【００２８】
続いて、前記第４の時間測定処理手段は、前記ソフトウェア２値化処理部１７に指示を出し、該ソフトウェア２値化処理部１７は、ソフトウェア２値化処理を行い、ソフトウェアを使用して前記第２のデータサイズの多値イメージデータを２値化する。そして、２値化処理が終了すると、前記第４の時間測定処理手段は、フリーランカウンタ２２を参照し、２値化処理が終了した時点のカウント値を読み込み、記憶する。続いて、前記第４の時間測定処理手段は、２値化処理が終了した時点のカウント値から測定を開始した時点のカウント値を減算することによって、処理時間ｔ４を算出し、記憶する。
【００２９】
続いて、前記初期化処理部２１の閾値算出処理手段は、閾値算出処理を行い、前記各処理時間ｔ１、ｔ２に基づいて、ハードウェア２値化処理部１６における処理時間ｔ１、ｔ２の変化率Δｔｈを、前記各処理時間ｔ３、ｔ４に基づいて、ソフトウェア２値化処理部１７における処理時間ｔ３、ｔ４の変化率Δｔｓを算出するとともに、第１、第２のデータサイズと処理時間ｔ１〜ｔ４の関係から、図９に示されるような、ハードウェア２値化処理部１６の特性を表すラインＬＨ及びソフトウェア２値化処理部１７の特性を表すラインＬＳを算出し、各ラインＬＨ、ＬＳの交点ｃｒ決定し、該交点ｃｒのデータサイズを、ハードウェア２値化処理部１６とソフトウェア２値化処理部１７との切替えのための閾値として記憶する。該閾値は、前記イメージデータ処理部１３において、ハードウェア２値化処理部１６及びソフトウェア２値化処理部１７のうちのいずれを選択するかを決定する際に使用される。なお、図９において、各ラインＬＨ、ＬＳは、処理時間ｔ１〜ｔ４の測定を４回行うことによって得られたものである。
【００３０】
このようにして、初期化処理が終了すると、前記コマンド受信部１１は、コマンド受信処理を行い、ホストコンピュータから送信された多値イメージデータ、コマンド等を受信し、ページ記述言語からイメージデータ印刷コマンドを読み取る。
【００３１】
そして、前記イメージデータ処理部１３は、イメージデータ処理を行い、多値イメージデータを２値化し、２値イメージデータを作成する。
【００３２】
そのために、前記イメージデータ処理部１３は、前記イメージデータ印刷コマンドを読み込み、イメージデータ印刷コマンドに従って動作指定が自動指定であるかどうかを判断する。そして、動作指定が自動指定でない場合、前記イメージデータ処理部１３は、前記イメージデータ印刷コマンドに従って動作指定がハードウェア指定であるかどうかを判断し、動作指定がハードウェア指定である場合は、ハードウェア２値化処理部１６にハードウェア２値化処理を行うように指示する。そして、前記ハードウェア２値化処理部１６は、ハードウェア２値化処理を行い、ハードウェアを使用して多値イメージデータを２値化する。また、動作指定がハードウェア指定でない場合、前記イメージデータ処理部１３は、ソフトウェア２値化処理部１７にソフトウェア２値化処理を行うように指示する。そして、前記ソフトウェア２値化処理部１７は、ソストウェア２値化処理を行い、ソフトウェアを使用して多値イメージデータを２値化する。
【００３３】
一方、動作指定が自動指定である場合、前記イメージデータ処理部１３の図示されないデータサイズ比較処理手段は、データサイズ比較処理を行い、多値イメージデータのデータサイズが閾値より大きいかどうかを判断する。データサイズが閾値より大きい場合、前記イメージデータ処理部１３の図示されない処理部選択処理手段は、処理部選択処理を行い、ハードウェア２値化処理部１６を選択し、ハードウェア２値化処理部１６にハードウェア２値化処理を行うように指示する。そして、前記ハードウェア２値化処理部１６は、ハードウェア２値化処理を行い、ハードウェアを使用して多値イメージデータを２値化する。また、データサイズが閾値以下である場合、前記処理部選択処理手段は、ソフトウェア２値化処理部１７を選択し、ソフトウェア２値化処理部１７にソフトウェア２値化処理を行うように指示する。そして、前記ソフトウェア２値化処理部１７は、ソストウェア２値化処理を行い、ソフトウェアを使用して多値イメージデータを２値化する。
【００３４】
次に、前記２値イメージデータ展開処理部１９は、２値イメージデータ展開処理を行い、２値イメージデータを、印刷用ラスタデータとして展開する。
【００３５】
そして、印刷処理部２０は、印刷処理を行い、展開された印刷用ラスタデータに従って印刷を行う。
【００３６】
このように、初期化処理において、ハードウェア２値化処理部１６及びソフトウェア２値化処理部１７による２値化処理を行うための処理時間ｔ１〜ｔ４が測定され、該処理時間ｔ１〜ｔ４に基づいて、ハードウェア２値化処理部１６及びソフトウェア２値化処理部１７のうちのいずれを選択するかを決定するための閾値が算出されるので、該閾値を設定するための作業を簡素化することができる。
【００３７】
また、前記閾値に基づいて、データサイズに対して最適な２値化処理を行うことができるので、画像処理を行う際の処理時間を短くすることができ、そのための作業を簡素化することができる。
【００３８】
しかも、前記閾値は、あらかじめプログラムに組み込まれているのではなく、処理時間ｔ１〜ｔ４の測定に基づいて設定されるので、ハードウェアの性能が変化しても、プログラムを書き換えることなく適正な閾値の設定を行うことができる。
【００３９】
そして、前記初期化処理は、ページプリンタの電源が投入されるのに伴って行われるので、ページプリンタを使用する時点のハードウェアの構成に対応させて閾値を設定することができる。したがって、ページプリンタに、オプションとして、メモリが追加されたり、ネットワークが挿入されたり、ソータが装着されたりしたときに、それに伴って、適宜閾値が変化させられるので、画像処理を行う際の処理時間を確実に短くすることができる。
【００４０】
なお、本実施の形態においては、前記初期化処理において、第１〜第４の時間測定処理は、ページプリンタの電源が投入されると、オンラインの状態が設定されるまでに、１回だけ行われるようになっているが、オンラインの状態でオプションを装着することが可能なページプリンタにおいては、オプションが装着されたことを認識するごとに、初期化処理を行い、第１〜第４の時間測定処理を行うこともできる。
【００４１】
次に、図２のフローチャートについて説明する。
ステップＳ１  初期化処理を行う。
ステップＳ２  コマンド受信処理を行う。
ステップＳ３  イメージデータ処理を行う。
ステップＳ４  ２値イメージデータ展開処理を行う。
ステップＳ５  印刷処理を行う。
ステップＳ６  電源がオフにされたかどうかを判断する。電源がオフにされた場合は処理を終了し、オフにされていない場合はステップＳ２に戻る。
【００４２】
次に、図３のフローチャートについて説明する。
ステップＳ１−１  第１の時間測定処理を行う。
ステップＳ１−２  第２の時間測定処理を行う。
ステップＳ１−３  第３の時間測定処理を行う。
ステップＳ１−４  第４の時間測定処理を行う。
ステップＳ１−５  閾値を算出し、リターンする。
【００４３】
次に、図４のフローチャートについて説明する。
ステップＳ１−１−１  フリーランカウンタ２２を参照する。
ステップＳ１−１−２  ハードウェアを使用して第１のデータサイズの多値イメージデータを２値化する。
ステップＳ１−１−３  フリーランカウンタ２２を参照し、リターンする。
【００４４】
次に、図５のフローチャートについて説明する。
ステップＳ１−２−１  フリーランカウンタ２２を参照する。
ステップＳ１−２−２  ハードウェアを使用して第２のデータサイズの多値イメージデータを２値化する。
ステップＳ１−２−３  フリーランカウンタ２２を参照し、リターンする。
【００４５】
次に、図６のフローチャートについて説明する。
ステップＳ１−３−１  フリーランカウンタ２２を参照する。
ステップＳ１−３−２  ソフトウェアを使用して第１のデータサイズの多値イメージデータを２値化する。
ステップＳ１−３−３  フリーランカウンタ２２を参照し、リターンする。
【００４６】
次に、図７のフローチャートについて説明する。
ステップＳ１−４−１  フリーランカウンタ２２を参照する。
ステップＳ１−４−２  ソフトウェアを使用して第２のデータサイズの多値イメージデータを２値化する。
ステップＳ１−４−３  フリーランカウンタ２２を参照し、リターンする。
【００４７】
次に、図８のフローチャートについて説明する。
ステップＳ３−１  動作指定が自動指定であるかどうかを判断する。動作指定が自動指定である場合はステップＳ３−５に、自動指定でない場合はステップＳ３−２に進む。
ステップＳ３−２  動作指定がハードウェア指定であるかどうかを判断する。動作指定がハードウェア指定である場合はステップＳ３−３に、ハードウェア指定でない場合はステップＳ３−４に進む。
ステップＳ３−３  ハードウェア２値化処理を行い、リターンする。
ステップＳ３−４  ソフトウェア２値化処理を行い、リターンする。
ステップＳ３−５  データサイズが閾値より大きいかどうかを判断する。データサイズが閾値より大きい場合はステップＳ３−６に、データサイズが閾値以下である場合はステップＳ３−７に進む。
ステップＳ３−６  ハードウェア２値化処理を行い、リターンする。
ステップＳ３−７  ソフトウェア２値化処理を行い、リターンする。
【００４８】
次に、本発明の第２の実施の形態について説明する。
【００４９】
図１０は本発明の第２の実施の形態におけるページプリンタのブロック図である。
【００５０】
図において、３１は２値イメージデータ等のイメージデータを圧縮するデータ処理部としてのイメージデータ圧縮処理部であり、該イメージデータ圧縮処理部３１は、ハードウェア処理部としてのハードウェア圧縮処理部３４、ソフトウェア処理部としてのソフトウェア圧縮処理部３５、記憶装置３８及び初期化処理部４１と接続されるほかに、第１の実施の形態におけるハードウェア処理部としてのハードウェア２値化処理部１６（図１）、ソフトウェア処理部としてのソフトウェア２値化処理部１７等と接続され、ハードウェア２値化処理部１６、ソフトウェア２値化処理部１７等から２値イメージデータを受ける。前記記憶装置３８の２値イメージデータ領域３３には、圧縮される２値イメージデータが記録される。
【００５１】
前記イメージデータ圧縮処理部３１は、前記２値イメージデータを圧縮するために、前記２値イメージデータ領域３３に記録された２値イメージデータのデータサイズと、あらかじめ設定された所定の閾値とを比較することによって、ハードウェア圧縮処理部３４及びソフトウェア圧縮処理部３５のうちの一方を選択して使用する。
【００５２】
すなわち、前記イメージデータ圧縮処理部３１は、２値イメージデータのデータサイズが閾値より大きい場合、ハードウェア圧縮処理部３４を選択してハードウェア圧縮処理を行うように指示し、２値イメージデータのデータサイズが閾値以下である場合、ソフトウェア圧縮処理部３５を選択してソフトウェア圧縮処理を行うように指示する。
【００５３】
そして、前記ハードウェア圧縮処理部３４及びソフトウェア圧縮処理部３５は、２値イメージデータを読み込み、２値イメージデータを圧縮し、圧縮イメージデータを作成する。すなわち、前記ハードウェア圧縮処理部３４はハードウェアを使用して２値イメージデータを圧縮し、ソフトウェア圧縮処理部３５はソフトウェアを使用して２値イメージデータを圧縮する。
【００５４】
ところで、前記閾値は初期化処理部４１において設定される。そのために、該初期化処理部４１は、イメージデータ圧縮処理部３１を介してハードウェア圧縮処理部３４及びソフトウェア圧縮処理部３５を選択的に呼び出す。そして、記憶装置３８にあらかじめ記憶されたサンプルデータについて、前記ハードウェア圧縮処理部３４は、ハードウェアを使用して２値イメージデータを圧縮し、また、前記ソフトウェア圧縮処理部３５は、ソフトウェアを使用して２値イメージデータを圧縮し、このとき、初期化処理部４１は計時処理部としてのフリーランカウンタ４２によって各処理時間を測定する。そして、初期化処理部４１は、ハードウェア圧縮処理部３４における処理時間、及びソフトウェア圧縮処理部３５における処理時間に基づいて閾値を算出して設定する。
【００５５】
次に、前記構成のページプリンタの動作について説明する。
【００５６】
図１１は本発明の第２の実施の形態におけるページプリンタの動作を示すメインフローチャート、図１２は本発明の第２の実施の形態における初期化処理のサブルーチンを示す図、図１３は本発明の第２の実施の形態における第１の時間測定処理のサブルーチンを示す図、図１４は本発明の第２の実施の形態における第２の時間測定処理のサブルーチンを示す図、図１５は本発明の第２の実施の形態における第３の時間測定処理のサブルーチンを示す図、図１６は本発明の第２の実施の形態における第４の時間測定処理のサブルーチンを示す図、図１７は本発明の第２の実施の形態におけるイメージデータ圧縮処理のサブルーチンを示す図である。
【００５７】
まず、ページプリンタの電源が投入されると、オンラインの状態が設定されるまでに、初期化処理部４１（図１０）は、初期化処理を行い、閾値を算出する。
【００５８】
そのために、前記初期化処理部４１は、イメージデータ圧縮処理部３１を介してハードウェア圧縮処理部３４及びソフトウェア圧縮処理部３５を選択的に呼び出す。該ハードウェア圧縮処理部３４及びソフトウェア圧縮処理部３５は、サンプルデータである２値イメージデータを圧縮し、初期化処理部４１はそのときの処理時間を測定する。この場合、測定は、ハードウェア圧縮処理部３４及びソフトウェア圧縮処理部３５において、それぞれ、２値イメージデータのデータサイズを異ならせて複数回、本実施の形態においては、２回行われ、各データサイズごとに処理時間が算出される。
【００５９】
そのために、前記初期化処理部４１の図示されない第１の時間測定処理手段は、第１の時間測定処理を行い、処理時間ｔ１１を算出し、記憶し、前記初期化処理部４１の図示されない第２の時間測定処理手段は、第２の時間測定処理を行い、処理時間ｔ１２を算出し、記憶し、前記初期化処理部４１の図示されない第３の時間測定処理手段は、第３の時間測定処理を行い、処理時間ｔ１３を算出し、記憶し、前記初期化処理部４１の図示されない第４の時間測定処理手段は、第４の時間測定処理を行い、処理時間ｔ１４を算出し、記憶する。
【００６０】
続いて、前記初期化処理部４１の閾値算出処理手段は、閾値算出処理を行い、前記各処理時間ｔ１１〜ｔ１４に基づいて変化率を算出し、該変化率に基づいて閾値を算出し、設定する。
【００６１】
このようにして、初期化処理が終了すると、前述されたような、コマンド受信処理及びイメージデータ処理が行われ、続いて、前記イメージデータ圧縮処理部３１は、イメージデータ圧縮処理を行い、２値イメージデータを圧縮する。
【００６２】
そのために、前記イメージデータ圧縮処理部３１は、イメージデータ圧縮コマンドを読み込み、イメージデータ圧縮コマンドに従って動作指定が自動指定であるかどうかを判断する。そして、動作指定が自動指定でない場合、前記イメージデータ圧縮処理部３１は、前記イメージデータ圧縮コマンドに従って動作指定がハードウェア指定であるかどうかを判断し、動作指定がハードウェア指定である場合は、ハードウェア圧縮処理部３４にハードウェア圧縮処理を行うように指示し、動作指定がハードウェア指定でない場合、前記イメージデータ圧縮処理部３１は、ソフトウェア圧縮処理部３５にソフトウェア圧縮処理を行うように指示する。
【００６３】
一方、動作指定が自動指定である場合、前記イメージデータ圧縮処理部３１の図示されないデータサイズ比較処理手段は、データサイズ比較処理を行い、２値イメージデータのデータサイズが閾値より大きいかどうかを判断し、データサイズが閾値より大きい場合、イメージデータ圧縮処理部３１の図示されない処理部選択処理手段は、処理部選択処理を行い、ハードウェア圧縮処理部３４にハードウェア圧縮処理を行うように指示し、データサイズが閾値以下である場合、前記処理部選択処理手段は、ソフトウェア圧縮処理部３５にソフトウェア圧縮処理を行うように指示する。
【００６４】
このように、前記閾値に基づいて、データサイズに対して最適な圧縮処理を行うことができるので、画像処理を行う際の処理時間を短くすることができ、そのための作業を簡素化することができる。
【００６５】
このようにしてイメージデータ圧縮処理が終了すると、前述されたように、２値イメージデータ展開処理が行われ、その後、印刷処理が行われる。
【００６６】
次に、図１１のフローチャートについて説明する。
ステップＳ１１  初期化処理を行う。
ステップＳ１２  コマンド受信処理を行う。
ステップＳ１３  イメージデータ処理を行う。
ステップＳ１４  イメージデータ圧縮処理を行う。
ステップＳ１５  ２値イメージデータ展開処理を行う。
ステップＳ１６  印刷処理を行う。
ステップＳ１７  電源がオフにされたかどうかを判断する。電源がオフにされた場合は処理を終了し、オフにされていない場合はステップＳ１２に戻る。
【００６７】
次に、図１２のフローチャートについて説明する。
ステップＳ１１−１  第１の時間測定処理を行う。
ステップＳ１１−２  第２の時間測定処理を行う。
ステップＳ１１−３  第３の時間測定処理を行う。
ステップＳ１１−４  第４の時間測定処理を行う。
ステップＳ１１−５  閾値を算出し、リターンする。
【００６８】
次に、図１３のフローチャートについて説明する。
ステップＳ１１−１−１  フリーランカウンタ４２を参照する。
ステップＳ１１−１−２  ハードウェアを使用して第１のデータサイズの２値イメージデータを圧縮する。
ステップＳ１１−１−３  フリーランカウンタ４２を参照し、リターンする。
【００６９】
次に、図１４のフローチャートについて説明する。
ステップＳ１１−２−１  フリーランカウンタ４２を参照する。
ステップＳ１１−２−２  ハードウェアを使用して第２のデータサイズの２値イメージデータを圧縮する。
ステップＳ１１−２−３  フリーランカウンタ４２を参照し、リターンする。
【００７０】
次に、図１５のフローチャートについて説明する。
ステップＳ１１−３−１  フリーランカウンタ４２を参照する。
ステップＳ１１−３−２  ソフトウェアを使用して第１のデータサイズの２値イメージデータを圧縮する。
ステップＳ１１−３−３  フリーランカウンタ４２を参照し、リターンする。
【００７１】
次に、図１６のフローチャートについて説明する。
ステップＳ１１−４−１  フリーランカウンタ４２を参照する。
ステップＳ１１−４−２  ソフトウェアを使用して第２のデータサイズの２値イメージデータを圧縮する。
ステップＳ１１−４−３  フリーランカウンタ４２を参照し、リターンする。
【００７２】
次に、図１７のフローチャートについて説明する。
ステップＳ１４−１  動作指定が自動指定であるかどうかを判断する。動作指定が自動指定である場合はステップＳ１４−５に、自動指定でない場合はステップＳ１４−２に進む。
ステップＳ１４−２  動作指定がハードウェア指定であるかどうかを判断する。動作指定がハードウェア指定である場合はステップＳ１４−３に、ハードウェア指定でない場合はステップＳ１４−４に進む。
ステップＳ１４−３  ハードウェア圧縮処理を行い、リターンする。
ステップＳ１４−４  ソフトウェア圧縮処理を行い、リターンする。
ステップＳ１４−５  データサイズが閾値より大きいかどうかを判断する。データサイズが閾値より大きい場合はステップＳ１４−６に、データサイズが閾値以下である場合はステップＳ１４−７に進む。
ステップＳ１４−６  ハードウェア圧縮処理を行い、リターンする。
ステップＳ１４−７  ソフトウェア圧縮処理を行い、リターンする。
【００７３】
前記各実施の形態においては、多値イメージデータの２値化処理、及び２値イメージデータの圧縮処理について説明しているが、カラーマッチング処理、拡大処理、縮小処理等のイメージデータに対する各種の画像処理に適用することができる。
【００７４】
また、各実施の形態においては、サンプルデータとしてデータサイズの異なる二つの多値イメージデータに基づいて初期化処理を行うようになっているが、各データサイズごとに、複数の多値イメージデータを使用し、処理時間の平均値を算出したり、閾値の平均値を算出したりすることができる。この場合、写真画像、テキスト、グラフィック等のデータの種類ごとに多値イメージデータを選択することができる。例えば、使用されるページプリンタが、主として写真画像を印刷するために使用される場合には、写真画像の多値イメージデータをサンプルデータとして使用することができる。
【００７５】
なお、本発明は前記実施の形態に限定されるものではなく、本発明の趣旨に基づいて種々変形させることが可能であり、それらを本発明の範囲から排除するものではない。
【図面の簡単な説明】
【００７６】
【図１】本発明の第１の実施の形態におけるページプリンタのブロック図である。
【図２】本発明の第１の実施の形態におけるページプリンタの動作を示すメインフローチャートである。
【図３】本発明の第１の実施の形態における初期化処理のサブルーチンを示す図である。
【図４】本発明の第１の実施の形態における第１の時間測定処理のサブルーチンを示す図である。
【図５】本発明の第１の実施の形態における第２の時間測定処理のサブルーチンを示す図である。
【図６】本発明の第１の実施の形態における第３の時間測定処理のサブルーチンを示す図である。
【図７】本発明の第１の実施の形態における第４の時間測定処理のサブルーチンを示す図である。
【図８】本発明の第１の実施の形態におけるイメージデータ処理のサブルーチンを示す図である。
【図９】本発明の第１の実施の形態における閾値の設定方法を示す図である。
【図１０】本発明の第２の実施の形態におけるページプリンタのブロック図である。
【図１１】本発明の第２の実施の形態におけるページプリンタの動作を示すメインフローチャートである。
【図１２】本発明の第２の実施の形態における初期化処理のサブルーチンを示す図である。
【図１３】本発明の第２の実施の形態における第１の時間測定処理のサブルーチンを示す図である。
【図１４】本発明の第２の実施の形態における第２の時間測定処理のサブルーチンを示す図である。
【図１５】本発明の第２の実施の形態における第３の時間測定処理のサブルーチンを示す図である。
【図１６】本発明の第２の実施の形態における第４の時間測定処理のサブルーチンを示す図である。
【図１７】本発明の第２の実施の形態におけるイメージデータ圧縮処理のサブルーチンを示す図である。
【符号の説明】
【００７７】
１３    イメージデータ処理部
１６    ハードウェア２値化処理部
１７    ソフトウェア２値化処理部
３１    イメージデータ圧縮処理部
３４    ハードウェア圧縮処理部
３５    ソフトウェア圧縮処理部
【図１】
2006007638.tif 000003
【図２】
2006007638.tif 000004
【図３】
2006007638.tif 000005
【図４】
2006007638.tif 000006
【図５】
2006007638.tif 000007
【図６】
2006007638.tif 000008
【図７】
2006007638.tif 000009
【図８】
2006007638.tif 000010
【図９】
2006007638.tif 000011
【図１０】
2006007638.tif 000012
【図１１】
2006007638.tif 000013
【図１２】
2006007638.tif 000014
【図１３】
2006007638.tif 000015
【図１４】
2006007638.tif 000016
【図１５】
2006007638.tif 000017
【図１６】
2006007638.tif 000018
【図１７】
2006007638.tif 000019